diff --git a/Android.mk b/Android.mk
index 2017404..1cde699 100644
--- a/Android.mk
+++ b/Android.mk
@@ -151,6 +151,7 @@
 	core/java/android/content/pm/IPackageStatsObserver.aidl \
 	core/java/android/content/pm/IOnPermissionsChangeListener.aidl \
 	core/java/android/content/pm/IShortcutService.aidl \
+	core/java/android/content/pm/permission/IRuntimePermissionPresenter.aidl \
 	core/java/android/database/IContentObserver.aidl \
 	../av/camera/aidl/android/hardware/ICameraService.aidl \
 	../av/camera/aidl/android/hardware/ICameraServiceListener.aidl \
@@ -331,7 +332,7 @@
 	core/java/com/android/internal/textservice/ISpellCheckerSessionListener.aidl \
 	core/java/com/android/internal/textservice/ITextServicesManager.aidl \
 	core/java/com/android/internal/textservice/ITextServicesSessionListener.aidl \
-	core/java/com/android/internal/view/IDropPermissions.aidl \
+	core/java/com/android/internal/view/IDragAndDropPermissions.aidl \
 	core/java/com/android/internal/view/IInputContext.aidl \
 	core/java/com/android/internal/view/IInputContextCallback.aidl \
 	core/java/com/android/internal/view/IInputMethod.aidl \
@@ -401,6 +402,8 @@
 	media/java/android/media/tv/ITvInputServiceCallback.aidl \
 	media/java/android/media/tv/ITvInputSession.aidl \
 	media/java/android/media/tv/ITvInputSessionCallback.aidl \
+	media/java/android/media/tv/ITvRemoteProvider.aidl \
+	media/java/android/media/tv/ITvRemoteServiceInput.aidl \
 	media/java/android/service/media/IMediaBrowserService.aidl \
 	media/java/android/service/media/IMediaBrowserServiceCallbacks.aidl \
 	telecomm/java/com/android/internal/telecom/ICallScreeningAdapter.aidl \
@@ -472,7 +475,8 @@
 
 LOCAL_AIDL_INCLUDES += \
 	frameworks/av/camera/aidl \
-	frameworks/native/aidl/gui
+	frameworks/native/aidl/gui \
+	system/netd/server/binder
 
 LOCAL_INTERMEDIATE_SOURCES := \
 			$(framework_res_source_path)/android/R.java \
@@ -688,6 +692,7 @@
 	frameworks/base/core/java/android/database/CursorWindow.aidl \
 	frameworks/base/core/java/android/service/quicksettings/Tile.aidl \
 	frameworks/native/aidl/binder/android/os/PersistableBundle.aidl \
+	system/netd/server/binder/android/net/UidRange.aidl \
 
 gen := $(TARGET_OUT_COMMON_INTERMEDIATES)/framework.aidl
 $(gen): PRIVATE_SRC_FILES := $(aidl_files)
diff --git a/api/current.txt b/api/current.txt
index f924b5b..9834c8c 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -71,7 +71,6 @@
     field public static final java.lang.String GET_ACCOUNTS = "android.permission.GET_ACCOUNTS";
     field public static final java.lang.String GET_ACCOUNTS_PRIVILEGED = "android.permission.GET_ACCOUNTS_PRIVILEGED";
     field public static final java.lang.String GET_PACKAGE_SIZE = "android.permission.GET_PACKAGE_SIZE";
-    field public static final java.lang.String GET_PASSWORD_PRIVILEGED = "android.permission.GET_PASSWORD_PRIVILEGED";
     field public static final deprecated java.lang.String GET_TASKS = "android.permission.GET_TASKS";
     field public static final java.lang.String GLOBAL_SEARCH = "android.permission.GLOBAL_SEARCH";
     field public static final java.lang.String INSTALL_LOCATION_PROVIDER = "android.permission.INSTALL_LOCATION_PROVIDER";
@@ -3424,6 +3423,7 @@
     method public void closeOptionsMenu();
     method public android.app.PendingIntent createPendingResult(int, android.content.Intent, int);
     method public final deprecated void dismissDialog(int);
+    method public final void dismissKeyboardShortcutsHelper();
     method public boolean dispatchGenericMotionEvent(android.view.MotionEvent);
     method public boolean dispatchKeyEvent(android.view.KeyEvent);
     method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent);
@@ -3580,7 +3580,7 @@
     method public boolean releaseInstance();
     method public final deprecated void removeDialog(int);
     method public void reportFullyDrawn();
-    method public android.view.DropPermissions requestDropPermissions(android.view.DragEvent);
+    method public android.view.DragAndDropPermissions requestDragAndDropPermissions(android.view.DragEvent);
     method public final void requestKeyboardShortcutsHelper();
     method public final void requestPermissions(java.lang.String[], int);
     method public boolean requestVisibleBehind(boolean);
@@ -4359,6 +4359,8 @@
     method public android.app.DownloadManager.Request setDestinationUri(android.net.Uri);
     method public android.app.DownloadManager.Request setMimeType(java.lang.String);
     method public android.app.DownloadManager.Request setNotificationVisibility(int);
+    method public android.app.DownloadManager.Request setRequiresCharging(boolean);
+    method public android.app.DownloadManager.Request setRequiresDeviceIdle(boolean);
     method public deprecated android.app.DownloadManager.Request setShowRunningNotification(boolean);
     method public android.app.DownloadManager.Request setTitle(java.lang.CharSequence);
     method public android.app.DownloadManager.Request setVisibleInDownloadsUi(boolean);
@@ -4926,6 +4928,7 @@
     field public static final java.lang.String EXTRA_BIG_TEXT = "android.bigText";
     field public static final java.lang.String EXTRA_CHRONOMETER_COUNTS_DOWN = "android.chronometerCountsDown";
     field public static final java.lang.String EXTRA_COMPACT_ACTIONS = "android.compactActions";
+    field public static final java.lang.String EXTRA_CONVERSATION_TITLE = "android.conversationTitle";
     field public static final java.lang.String EXTRA_INFO_TEXT = "android.infoText";
     field public static final java.lang.String EXTRA_LARGE_ICON = "android.largeIcon";
     field public static final java.lang.String EXTRA_LARGE_ICON_BIG = "android.largeIcon.big";
@@ -4946,7 +4949,6 @@
     field public static final java.lang.String EXTRA_TEMPLATE = "android.template";
     field public static final java.lang.String EXTRA_TEXT = "android.text";
     field public static final java.lang.String EXTRA_TEXT_LINES = "android.textLines";
-    field public static final java.lang.String EXTRA_THREAD_TITLE = "android.threadTitle";
     field public static final java.lang.String EXTRA_TITLE = "android.title";
     field public static final java.lang.String EXTRA_TITLE_BIG = "android.title.big";
     field public static final int FLAG_AUTO_CANCEL = 16; // 0x10
@@ -5199,17 +5201,14 @@
     field public static final int MAXIMUM_RETAINED_MESSAGES = 25; // 0x19
   }
 
-  public static final class Notification.MessagingStyle.Message implements android.os.Parcelable {
+  public static final class Notification.MessagingStyle.Message {
     ctor public Notification.MessagingStyle.Message(java.lang.CharSequence, long, java.lang.CharSequence);
-    method public int describeContents();
     method public java.lang.String getDataMimeType();
     method public android.net.Uri getDataUri();
     method public java.lang.CharSequence getSender();
     method public java.lang.CharSequence getText();
     method public long getTimestamp();
     method public android.app.Notification.MessagingStyle.Message setData(java.lang.String, android.net.Uri);
-    method public void writeToParcel(android.os.Parcel, int);
-    field public static final android.os.Parcelable.Creator<android.app.Notification.MessagingStyle.Message> CREATOR;
   }
 
   public static abstract class Notification.Style {
@@ -5244,6 +5243,7 @@
     method public int getCustomSizePreset();
     method public android.app.PendingIntent getDisplayIntent();
     method public int getGravity();
+    method public boolean getHintAmbientBigPicture();
     method public boolean getHintAvoidBackgroundClipping();
     method public boolean getHintContentIntentLaunchesActivity();
     method public boolean getHintHideIcon();
@@ -5260,6 +5260,7 @@
     method public android.app.Notification.WearableExtender setCustomSizePreset(int);
     method public android.app.Notification.WearableExtender setDisplayIntent(android.app.PendingIntent);
     method public android.app.Notification.WearableExtender setGravity(int);
+    method public android.app.Notification.WearableExtender setHintAmbientBigPicture(boolean);
     method public android.app.Notification.WearableExtender setHintAvoidBackgroundClipping(boolean);
     method public android.app.Notification.WearableExtender setHintContentIntentLaunchesActivity(boolean);
     method public android.app.Notification.WearableExtender setHintHideIcon(boolean);
@@ -5554,6 +5555,7 @@
     method public boolean onUnbind(android.content.Intent);
     method public final void startForeground(int, android.app.Notification);
     method public final void stopForeground(boolean);
+    method public final void stopForeground(int);
     method public final void stopSelf();
     method public final void stopSelf(int);
     method public final boolean stopSelfResult(int);
@@ -5564,6 +5566,8 @@
     field public static final int START_REDELIVER_INTENT = 3; // 0x3
     field public static final int START_STICKY = 1; // 0x1
     field public static final int START_STICKY_COMPATIBILITY = 0; // 0x0
+    field public static final int STOP_FOREGROUND_DETACH = 2; // 0x2
+    field public static final int STOP_FOREGROUND_REMOVE = 1; // 0x1
   }
 
   public abstract class SharedElementCallback {
@@ -6333,6 +6337,7 @@
     field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L
     field public static final int NETWORK_TYPE_ANY = 1; // 0x1
     field public static final int NETWORK_TYPE_NONE = 0; // 0x0
+    field public static final int NETWORK_TYPE_NOT_ROAMING = 3; // 0x3
     field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2
   }
 
@@ -6380,6 +6385,7 @@
     method public abstract void cancel(int);
     method public abstract void cancelAll();
     method public abstract java.util.List<android.app.job.JobInfo> getAllPendingJobs();
+    method public abstract android.app.job.JobInfo getPendingJob(int);
     method public abstract int schedule(android.app.job.JobInfo);
     field public static final int RESULT_FAILURE = 0; // 0x0
     field public static final int RESULT_SUCCESS = 1; // 0x1
@@ -10050,7 +10056,7 @@
   public final class ShortcutInfo implements android.os.Parcelable {
     method public int describeContents();
     method public android.content.ComponentName getActivityComponent();
-    method public java.util.List<java.lang.String> getCategories();
+    method public java.util.Set<java.lang.String> getCategories();
     method public android.os.PersistableBundle getExtras();
     method public int getIconResourceId();
     method public java.lang.String getId();
@@ -10083,7 +10089,7 @@
     ctor public ShortcutInfo.Builder(android.content.Context);
     method public android.content.pm.ShortcutInfo build();
     method public android.content.pm.ShortcutInfo.Builder setActivityComponent(android.content.ComponentName);
-    method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.List<java.lang.String>);
+    method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>);
     method public android.content.pm.ShortcutInfo.Builder setExtras(android.os.PersistableBundle);
     method public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon);
     method public android.content.pm.ShortcutInfo.Builder setId(java.lang.String);
@@ -20260,9 +20266,9 @@
     field public static final java.lang.String TAG_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange";
     field public static final java.lang.String TAG_SUBJECT_LOCATION = "SubjectLocation";
     field public static final java.lang.String TAG_SUBSEC_TIME = "SubSecTime";
-    field public static final java.lang.String TAG_SUBSEC_TIME_DIG = "SubSecTimeDigitized";
+    field public static final deprecated java.lang.String TAG_SUBSEC_TIME_DIG = "SubSecTimeDigitized";
     field public static final java.lang.String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized";
-    field public static final java.lang.String TAG_SUBSEC_TIME_ORIG = "SubSecTimeOriginal";
+    field public static final deprecated java.lang.String TAG_SUBSEC_TIME_ORIG = "SubSecTimeOriginal";
     field public static final java.lang.String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal";
     field public static final java.lang.String TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength";
     field public static final java.lang.String TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth";
@@ -23021,6 +23027,7 @@
     method public boolean isRatingBlocked(android.media.tv.TvContentRating);
     method public void registerCallback(android.media.tv.TvInputManager.TvInputCallback, android.os.Handler);
     method public void unregisterCallback(android.media.tv.TvInputManager.TvInputCallback);
+    method public void updateTvInputInfo(android.media.tv.TvInputInfo);
     field public static final java.lang.String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED";
     field public static final java.lang.String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED";
     field public static final java.lang.String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS";
@@ -23058,7 +23065,6 @@
     method public final android.os.IBinder onBind(android.content.Intent);
     method public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(java.lang.String);
     method public abstract android.media.tv.TvInputService.Session onCreateSession(java.lang.String);
-    method public static final void updateTvInputInfo(android.content.Context, android.media.tv.TvInputInfo);
     field public static final java.lang.String SERVICE_INTERFACE = "android.media.tv.TvInputService";
     field public static final java.lang.String SERVICE_META_DATA = "android.media.tv.input";
   }
@@ -23240,24 +23246,6 @@
     ctor public MtpConstants();
     method public static boolean isAbstractObject(int);
     field public static final int ASSOCIATION_TYPE_GENERIC_FOLDER = 1; // 0x1
-    field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001
-    field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d
-    field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008
-    field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006
-    field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b
-    field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002
-    field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007
-    field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801
-    field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802
-    field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803
-    field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003
-    field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009
-    field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c
-    field public static final int EVENT_STORE_ADDED = 16388; // 0x4004
-    field public static final int EVENT_STORE_FULL = 16394; // 0x400a
-    field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005
-    field public static final int EVENT_UNDEFINED = 16384; // 0x4000
-    field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e
     field public static final int FORMAT_3GP_CONTAINER = 47492; // 0xb984
     field public static final int FORMAT_AAC = 47363; // 0xb903
     field public static final int FORMAT_ABSTRACT_AUDIO_ALBUM = 47619; // 0xba03
@@ -23378,7 +23366,7 @@
     method public boolean importFile(int, java.lang.String);
     method public boolean importFile(int, android.os.ParcelFileDescriptor);
     method public boolean open(android.hardware.usb.UsbDeviceConnection);
-    method public android.mtp.MtpEvent readEvent(android.os.CancellationSignal);
+    method public android.mtp.MtpEvent readEvent(android.os.CancellationSignal) throws java.io.IOException;
     method public boolean sendObject(int, long, android.os.ParcelFileDescriptor);
     method public android.mtp.MtpObjectInfo sendObjectInfo(android.mtp.MtpObjectInfo);
   }
@@ -23390,10 +23378,11 @@
     method public final int[] getOperationsSupported();
     method public final java.lang.String getSerialNumber();
     method public final java.lang.String getVersion();
+    method public boolean isEventSupported(int);
+    method public boolean isOperationSupported(int);
   }
 
   public class MtpEvent {
-    ctor public MtpEvent();
     method public int getDevicePropCode();
     method public int getEventCode();
     method public int getObjectFormatCode();
@@ -23404,6 +23393,24 @@
     method public int getParameter3();
     method public int getStorageId();
     method public int getTransactionId();
+    field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001
+    field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d
+    field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008
+    field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006
+    field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b
+    field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002
+    field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007
+    field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801
+    field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802
+    field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803
+    field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003
+    field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009
+    field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c
+    field public static final int EVENT_STORE_ADDED = 16388; // 0x4004
+    field public static final int EVENT_STORE_FULL = 16394; // 0x400a
+    field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005
+    field public static final int EVENT_UNDEFINED = 16384; // 0x4000
+    field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e
   }
 
   public final class MtpObjectInfo {
@@ -23754,8 +23761,10 @@
     method public boolean isConnected();
     method public boolean isConnectedOrConnecting();
     method public boolean isFailover();
+    method public boolean isMetered();
     method public boolean isRoaming();
     method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.NetworkInfo> CREATOR;
   }
 
   public static final class NetworkInfo.DetailedState extends java.lang.Enum {
@@ -29143,7 +29152,6 @@
     field public static final int RELEASE_FLAG_WAIT_FOR_NO_PROXIMITY = 1; // 0x1
     field public static final deprecated int SCREEN_BRIGHT_WAKE_LOCK = 10; // 0xa
     field public static final deprecated int SCREEN_DIM_WAKE_LOCK = 6; // 0x6
-    field public static final int SUSTAINED_PERFORMANCE_WAKE_LOCK = 256; // 0x100
   }
 
   public final class PowerManager.WakeLock {
@@ -29377,6 +29385,7 @@
     method public deprecated void setUserRestriction(java.lang.String, boolean);
     method public deprecated void setUserRestrictions(android.os.Bundle);
     method public deprecated void setUserRestrictions(android.os.Bundle, android.os.UserHandle);
+    method public static boolean supportsMultipleUsers();
     field public static final java.lang.String ALLOW_PARENT_PROFILE_APP_LINKING = "allow_parent_profile_app_linking";
     field public static final java.lang.String DISALLOW_ADD_USER = "no_add_user";
     field public static final java.lang.String DISALLOW_ADJUST_VOLUME = "no_adjust_volume";
@@ -29523,7 +29532,7 @@
     field public static final int MEASUREMENT_BLUETOOTH_TX_MS = 10022; // 0x2726
     field public static final int MEASUREMENT_BLUETOOTH_TX_PACKETS = 10059; // 0x274b
     field public static final int MEASUREMENT_BUTTON_USER_ACTIVITY_COUNT = 10046; // 0x273e
-    field public static final int MEASUREMENT_CPU_POWER_MAUS = 10064; // 0x2750
+    field public static final int MEASUREMENT_CPU_POWER_MAMS = 10064; // 0x2750
     field public static final int MEASUREMENT_MOBILE_IDLE_MS = 10024; // 0x2728
     field public static final int MEASUREMENT_MOBILE_POWER_MAMS = 10027; // 0x272b
     field public static final int MEASUREMENT_MOBILE_RX_BYTES = 10048; // 0x2740
@@ -29535,11 +29544,11 @@
     field public static final int MEASUREMENT_OTHER_USER_ACTIVITY_COUNT = 10045; // 0x273d
     field public static final int MEASUREMENT_REALTIME_BATTERY_MS = 10001; // 0x2711
     field public static final int MEASUREMENT_REALTIME_SCREEN_OFF_BATTERY_MS = 10003; // 0x2713
-    field public static final int MEASUREMENT_SYSTEM_CPU_TIME_US = 10063; // 0x274f
+    field public static final int MEASUREMENT_SYSTEM_CPU_TIME_MS = 10063; // 0x274f
     field public static final int MEASUREMENT_TOUCH_USER_ACTIVITY_COUNT = 10047; // 0x273f
     field public static final int MEASUREMENT_UPTIME_BATTERY_MS = 10002; // 0x2712
     field public static final int MEASUREMENT_UPTIME_SCREEN_OFF_BATTERY_MS = 10004; // 0x2714
-    field public static final int MEASUREMENT_USER_CPU_TIME_US = 10062; // 0x274e
+    field public static final int MEASUREMENT_USER_CPU_TIME_MS = 10062; // 0x274e
     field public static final int MEASUREMENT_WIFI_FULL_LOCK_MS = 10029; // 0x272d
     field public static final int MEASUREMENT_WIFI_IDLE_MS = 10016; // 0x2720
     field public static final int MEASUREMENT_WIFI_MULTICAST_MS = 10031; // 0x272f
@@ -30327,7 +30336,7 @@
 
 package android.printservice {
 
-  public class CustomPrinterIconCallback {
+  public final class CustomPrinterIconCallback {
     method public boolean onCustomPrinterIconLoaded(android.graphics.drawable.Icon);
   }
 
@@ -30747,7 +30756,6 @@
   public static class CallLog.Calls implements android.provider.BaseColumns {
     ctor public CallLog.Calls();
     method public static java.lang.String getLastOutgoingCall(android.content.Context);
-    field public static final int ANSWERED_EXTERNALLY_TYPE = 7; // 0x7
     field public static final int BLOCKED_TYPE = 6; // 0x6
     field public static final java.lang.String CACHED_FORMATTED_NUMBER = "formatted_number";
     field public static final java.lang.String CACHED_LOOKUP_URI = "lookup_uri";
@@ -30770,7 +30778,6 @@
     field public static final java.lang.String DURATION = "duration";
     field public static final java.lang.String EXTRA_CALL_TYPE_FILTER = "android.provider.extra.CALL_TYPE_FILTER";
     field public static final java.lang.String FEATURES = "features";
-    field public static final int FEATURES_PULLED_EXTERNALLY = 2; // 0x2
     field public static final int FEATURES_VIDEO = 1; // 0x1
     field public static final java.lang.String GEOCODED_LOCATION = "geocoded_location";
     field public static final int INCOMING_TYPE = 1; // 0x1
@@ -34650,6 +34657,7 @@
   public abstract class MediaBrowserService extends android.app.Service {
     ctor public MediaBrowserService();
     method public void dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
+    method public final android.os.Bundle getBrowserRootHints();
     method public android.media.session.MediaSession.Token getSessionToken();
     method public void notifyChildrenChanged(java.lang.String);
     method public void notifyChildrenChanged(java.lang.String, android.os.Bundle);
@@ -36054,13 +36062,9 @@
     method public void phoneAccountSelected(android.telecom.PhoneAccountHandle, boolean);
     method public void playDtmfTone(char);
     method public void postDialContinue(boolean);
-    method public void pullExternalCall();
-    method public final void putExtras(android.os.Bundle);
     method public void registerCallback(android.telecom.Call.Callback);
     method public void registerCallback(android.telecom.Call.Callback, android.os.Handler);
     method public void reject(boolean, java.lang.String);
-    method public final void removeExtras(java.util.List<java.lang.String>);
-    method public void sendCallEvent(java.lang.String, android.os.Bundle);
     method public void splitFromConference();
     method public void stopDtmfTone();
     method public void swapConference();
@@ -36074,7 +36078,6 @@
     field public static final int STATE_DISCONNECTING = 10; // 0xa
     field public static final int STATE_HOLDING = 3; // 0x3
     field public static final int STATE_NEW = 0; // 0x0
-    field public static final int STATE_PULLING_CALL = 11; // 0xb
     field public static final int STATE_RINGING = 2; // 0x2
     field public static final int STATE_SELECT_PHONE_ACCOUNT = 8; // 0x8
   }
@@ -36085,7 +36088,6 @@
     method public void onCannedTextResponsesLoaded(android.telecom.Call, java.util.List<java.lang.String>);
     method public void onChildrenChanged(android.telecom.Call, java.util.List<android.telecom.Call>);
     method public void onConferenceableCallsChanged(android.telecom.Call, java.util.List<android.telecom.Call>);
-    method public void onConnectionEvent(android.telecom.Call, java.lang.String, android.os.Bundle);
     method public void onDetailsChanged(android.telecom.Call, android.telecom.Call.Details);
     method public void onParentChanged(android.telecom.Call, android.telecom.Call);
     method public void onPostDialWait(android.telecom.Call, java.lang.String);
@@ -36116,7 +36118,6 @@
     method public static java.lang.String propertiesToString(int);
     field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 4194304; // 0x400000
     field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000
-    field public static final int CAPABILITY_CAN_PULL_CALL = 8388608; // 0x800000
     field public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 8192; // 0x2000
     field public static final int CAPABILITY_HOLD = 1; // 0x1
     field public static final int CAPABILITY_MANAGE_CONFERENCE = 128; // 0x80
@@ -36136,7 +36137,6 @@
     field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 4; // 0x4
     field public static final int PROPERTY_GENERIC_CONFERENCE = 2; // 0x2
     field public static final int PROPERTY_HIGH_DEF_AUDIO = 16; // 0x10
-    field public static final int PROPERTY_IS_EXTERNAL_CALL = 64; // 0x40
     field public static final int PROPERTY_WIFI = 8; // 0x8
     field public static final int PROPERTY_WORK_CALL = 32; // 0x20
   }
@@ -36188,7 +36188,6 @@
     method public final android.telecom.CallAudioState getCallAudioState();
     method public final java.util.List<android.telecom.Connection> getConferenceableConnections();
     method public final int getConnectionCapabilities();
-    method public final int getConnectionProperties();
     method public final long getConnectionTime();
     method public final java.util.List<android.telecom.Connection> getConnections();
     method public final android.telecom.DisconnectCause getDisconnectCause();
@@ -36201,7 +36200,6 @@
     method public void onCallAudioStateChanged(android.telecom.CallAudioState);
     method public void onConnectionAdded(android.telecom.Connection);
     method public void onDisconnect();
-    method public void onExtrasChanged(android.os.Bundle);
     method public void onHold();
     method public void onMerge(android.telecom.Connection);
     method public void onMerge();
@@ -36210,17 +36208,14 @@
     method public void onStopDtmfTone();
     method public void onSwap();
     method public void onUnhold();
-    method public final void putExtras(android.os.Bundle);
     method public final void removeConnection(android.telecom.Connection);
-    method public final void removeExtras(java.util.List<java.lang.String>);
     method public final void setActive();
     method public final void setConferenceableConnections(java.util.List<android.telecom.Connection>);
     method public final void setConnectionCapabilities(int);
-    method public final void setConnectionProperties(int);
     method public final void setConnectionTime(long);
     method public final void setDialing();
     method public final void setDisconnected(android.telecom.DisconnectCause);
-    method public final deprecated void setExtras(android.os.Bundle);
+    method public final void setExtras(android.os.Bundle);
     method public final void setOnHold();
     method public final void setStatusHints(android.telecom.StatusHints);
     method public final void setVideoProvider(android.telecom.Connection, android.telecom.Connection.VideoProvider);
@@ -36246,7 +36241,6 @@
     method public final android.telecom.Conference getConference();
     method public final java.util.List<android.telecom.Conferenceable> getConferenceables();
     method public final int getConnectionCapabilities();
-    method public final int getConnectionProperties();
     method public final android.telecom.DisconnectCause getDisconnectCause();
     method public final android.os.Bundle getExtras();
     method public final int getState();
@@ -36257,23 +36251,16 @@
     method public void onAnswer(int);
     method public void onAnswer();
     method public void onCallAudioStateChanged(android.telecom.CallAudioState);
-    method public void onCallEvent(java.lang.String, android.os.Bundle);
     method public void onDisconnect();
-    method public void onExtrasChanged(android.os.Bundle);
     method public void onHold();
     method public void onPlayDtmfTone(char);
     method public void onPostDialContinue(boolean);
-    method public void onPullExternalCall();
     method public void onReject();
     method public void onReject(java.lang.String);
     method public void onSeparate();
     method public void onStateChanged(int);
     method public void onStopDtmfTone();
     method public void onUnhold();
-    method public static java.lang.String propertiesToString(int);
-    method public final void putExtras(android.os.Bundle);
-    method public final void removeExtras(java.util.List<java.lang.String>);
-    method public void sendConnectionEvent(java.lang.String, android.os.Bundle);
     method public final void setActive();
     method public final void setAddress(android.net.Uri, int);
     method public final void setAudioModeIsVoip(boolean);
@@ -36281,10 +36268,9 @@
     method public final void setConferenceableConnections(java.util.List<android.telecom.Connection>);
     method public final void setConferenceables(java.util.List<android.telecom.Conferenceable>);
     method public final void setConnectionCapabilities(int);
-    method public final void setConnectionProperties(int);
     method public final void setDialing();
     method public final void setDisconnected(android.telecom.DisconnectCause);
-    method public final deprecated void setExtras(android.os.Bundle);
+    method public final void setExtras(android.os.Bundle);
     method public final void setInitialized();
     method public final void setInitializing();
     method public final void setNextPostDialChar(char);
@@ -36298,7 +36284,6 @@
     method public static java.lang.String stateToString(int);
     field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 8388608; // 0x800000
     field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000
-    field public static final int CAPABILITY_CAN_PULL_CALL = 16777216; // 0x1000000
     field public static final int CAPABILITY_CAN_SEND_RESPONSE_VIA_CONNECTION = 4194304; // 0x400000
     field public static final int CAPABILITY_CAN_UPGRADE_TO_VIDEO = 524288; // 0x80000
     field public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 8192; // 0x2000
@@ -36316,18 +36301,15 @@
     field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_TX = 2048; // 0x800
     field public static final int CAPABILITY_SUPPORT_HOLD = 2; // 0x2
     field public static final int CAPABILITY_SWAP_CONFERENCE = 8; // 0x8
-    field public static final java.lang.String EVENT_CALL_PULL_FAILED = "android.telecom.event.CALL_PULL_FAILED";
     field public static final java.lang.String EXTRA_CALL_SUBJECT = "android.telecom.extra.CALL_SUBJECT";
     field public static final java.lang.String EXTRA_CHILD_ADDRESS = "android.telecom.extra.CHILD_ADDRESS";
     field public static final java.lang.String EXTRA_LAST_FORWARDED_NUMBER = "android.telecom.extra.LAST_FORWARDED_NUMBER";
-    field public static final int PROPERTY_IS_EXTERNAL_CALL = 16; // 0x10
     field public static final int STATE_ACTIVE = 4; // 0x4
     field public static final int STATE_DIALING = 3; // 0x3
     field public static final int STATE_DISCONNECTED = 6; // 0x6
     field public static final int STATE_HOLDING = 5; // 0x5
     field public static final int STATE_INITIALIZING = 0; // 0x0
     field public static final int STATE_NEW = 1; // 0x1
-    field public static final int STATE_PULLING_CALL = 7; // 0x7
     field public static final int STATE_RINGING = 2; // 0x2
   }
 
@@ -36405,9 +36387,7 @@
     method public java.lang.String getReason();
     method public int getTone();
     method public void writeToParcel(android.os.Parcel, int);
-    field public static final int ANSWERED_ELSEWHERE = 11; // 0xb
     field public static final int BUSY = 7; // 0x7
-    field public static final int CALL_PULLED = 12; // 0xc
     field public static final int CANCELED = 4; // 0x4
     field public static final int CONNECTION_MANAGER_NOT_SUPPORTED = 10; // 0xa
     field public static final android.os.Parcelable.Creator<android.telecom.DisconnectCause> CREATOR;
@@ -36443,7 +36423,6 @@
     method public void onCallAudioStateChanged(android.telecom.CallAudioState);
     method public void onCallRemoved(android.telecom.Call);
     method public void onCanAddCallChanged(boolean);
-    method public void onConnectionEvent(android.telecom.Call, java.lang.String, android.os.Bundle);
     method public void onSilenceRinger();
     method public final void setAudioRoute(int);
     method public final void setMuted(boolean);
@@ -36566,7 +36545,6 @@
     method public void onConferenceableConnectionsChanged(android.telecom.RemoteConference, java.util.List<android.telecom.RemoteConnection>);
     method public void onConnectionAdded(android.telecom.RemoteConference, android.telecom.RemoteConnection);
     method public void onConnectionCapabilitiesChanged(android.telecom.RemoteConference, int);
-    method public void onConnectionPropertiesChanged(android.telecom.RemoteConference, int);
     method public void onConnectionRemoved(android.telecom.RemoteConference, android.telecom.RemoteConnection);
     method public void onDestroyed(android.telecom.RemoteConference);
     method public void onDisconnected(android.telecom.RemoteConference, android.telecom.DisconnectCause);
@@ -36585,7 +36563,6 @@
     method public android.telecom.RemoteConference getConference();
     method public java.util.List<android.telecom.RemoteConnection> getConferenceableConnections();
     method public int getConnectionCapabilities();
-    method public int getConnectionProperties();
     method public android.telecom.DisconnectCause getDisconnectCause();
     method public final android.os.Bundle getExtras();
     method public int getState();
@@ -36597,7 +36574,6 @@
     method public boolean isVoipAudioMode();
     method public void playDtmfTone(char);
     method public void postDialContinue(boolean);
-    method public void pullExternalCall();
     method public void registerCallback(android.telecom.RemoteConnection.Callback);
     method public void registerCallback(android.telecom.RemoteConnection.Callback, android.os.Handler);
     method public void reject();
@@ -36614,8 +36590,6 @@
     method public void onConferenceChanged(android.telecom.RemoteConnection, android.telecom.RemoteConference);
     method public void onConferenceableConnectionsChanged(android.telecom.RemoteConnection, java.util.List<android.telecom.RemoteConnection>);
     method public void onConnectionCapabilitiesChanged(android.telecom.RemoteConnection, int);
-    method public void onConnectionEvent(android.telecom.RemoteConnection, java.lang.String, android.os.Bundle);
-    method public void onConnectionPropertiesChanged(android.telecom.RemoteConnection, int);
     method public void onDestroyed(android.telecom.RemoteConnection);
     method public void onDisconnected(android.telecom.RemoteConnection, android.telecom.DisconnectCause);
     method public void onExtrasChanged(android.telecom.RemoteConnection, android.os.Bundle);
@@ -36712,7 +36686,6 @@
     field public static final java.lang.String EXTRA_START_CALL_WITH_VIDEO_STATE = "android.telecom.extra.START_CALL_WITH_VIDEO_STATE";
     field public static final java.lang.String GATEWAY_ORIGINAL_ADDRESS = "android.telecom.extra.GATEWAY_ORIGINAL_ADDRESS";
     field public static final java.lang.String GATEWAY_PROVIDER_PACKAGE = "android.telecom.extra.GATEWAY_PROVIDER_PACKAGE";
-    field public static final java.lang.String METADATA_INCLUDE_EXTERNAL_CALLS = "android.telecom.INCLUDE_EXTERNAL_CALLS";
     field public static final java.lang.String METADATA_IN_CALL_SERVICE_RINGING = "android.telecom.IN_CALL_SERVICE_RINGING";
     field public static final java.lang.String METADATA_IN_CALL_SERVICE_UI = "android.telecom.IN_CALL_SERVICE_UI";
     field public static final int PRESENTATION_ALLOWED = 1; // 0x1
@@ -36866,10 +36839,10 @@
     field public static final java.lang.String KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL = "voicemail_notification_persistent_bool";
     field public static final java.lang.String KEY_VOICE_PRIVACY_DISABLE_UI_BOOL = "voice_privacy_disable_ui_bool";
     field public static final java.lang.String KEY_VOLTE_REPLACEMENT_RAT_INT = "volte_replacement_rat_int";
-    field public static final java.lang.String KEY_VVM_CELLULAR_DATA_REQUIRED_BOOLEAN = "vvm_cellular_data_required";
+    field public static final java.lang.String KEY_VVM_CELLULAR_DATA_REQUIRED_BOOL = "vvm_cellular_data_required";
     field public static final java.lang.String KEY_VVM_DESTINATION_NUMBER_STRING = "vvm_destination_number_string";
     field public static final java.lang.String KEY_VVM_PORT_NUMBER_INT = "vvm_port_number_int";
-    field public static final java.lang.String KEY_VVM_PREFETCH_BOOLEAN = "vvm_prefetch";
+    field public static final java.lang.String KEY_VVM_PREFETCH_BOOL = "vvm_prefetch";
     field public static final java.lang.String KEY_VVM_TYPE_STRING = "vvm_type_string";
     field public static final java.lang.String KEY_WORLD_PHONE_BOOL = "world_phone_bool";
   }
@@ -40858,6 +40831,7 @@
   public abstract class AbsSavedState implements android.os.Parcelable {
     ctor protected AbsSavedState(android.os.Parcelable);
     ctor protected AbsSavedState(android.os.Parcel);
+    ctor protected AbsSavedState(android.os.Parcel, java.lang.ClassLoader);
     method public int describeContents();
     method public final android.os.Parcelable getSuperState();
     method public void writeToParcel(android.os.Parcel, int);
@@ -41006,6 +40980,10 @@
     field public static final android.os.Parcelable.Creator<android.view.Display.Mode> CREATOR;
   }
 
+  public final class DragAndDropPermissions {
+    method public void release();
+  }
+
   public class DragEvent implements android.os.Parcelable {
     method public int describeContents();
     method public int getAction();
@@ -41025,10 +41003,6 @@
     field public static final android.os.Parcelable.Creator<android.view.DragEvent> CREATOR;
   }
 
-  public final class DropPermissions {
-    method public void release();
-  }
-
   public class FocusFinder {
     method public android.view.View findNearestTouchable(android.view.ViewGroup, int, int, int, int[]);
     method public final android.view.View findNextFocus(android.view.ViewGroup, android.view.View, int);
@@ -42974,6 +42948,7 @@
 
   public static class View.BaseSavedState extends android.view.AbsSavedState {
     ctor public View.BaseSavedState(android.os.Parcel);
+    ctor public View.BaseSavedState(android.os.Parcel, java.lang.ClassLoader);
     ctor public View.BaseSavedState(android.os.Parcelable);
     field public static final android.os.Parcelable.Creator<android.view.View.BaseSavedState> CREATOR;
   }
@@ -43562,7 +43537,7 @@
     ctor public Window(android.content.Context);
     method public abstract void addContentView(android.view.View, android.view.ViewGroup.LayoutParams);
     method public void addFlags(int);
-    method public final void addFrameMetricsListener(android.view.Window.FrameMetricsListener, android.os.Handler);
+    method public final void addOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener, android.os.Handler);
     method public void clearFlags(int);
     method public abstract void closeAllPanels();
     method public abstract void closePanel(int);
@@ -43614,7 +43589,7 @@
     method public abstract boolean performContextMenuIdentifierAction(int, int);
     method public abstract boolean performPanelIdentifierAction(int, int, int);
     method public abstract boolean performPanelShortcut(int, int, android.view.KeyEvent, int);
-    method public final void removeFrameMetricsListener(android.view.Window.FrameMetricsListener);
+    method public final void removeOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener);
     method public boolean requestFeature(int);
     method public abstract void restoreHierarchyState(android.os.Bundle);
     method public abstract android.os.Bundle saveHierarchyState();
@@ -43662,6 +43637,7 @@
     method public void setSharedElementsUseOverlay(boolean);
     method public void setSoftInputMode(int);
     method public abstract void setStatusBarColor(int);
+    method public void setSustainedPerformanceMode(boolean);
     method public abstract void setTitle(java.lang.CharSequence);
     method public abstract deprecated void setTitleColor(int);
     method public void setTransitionBackgroundFadeDuration(long);
@@ -43740,8 +43716,8 @@
     method public abstract android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int);
   }
 
-  public static abstract interface Window.FrameMetricsListener {
-    method public abstract void onMetricsAvailable(android.view.Window, android.view.FrameMetrics, int);
+  public static abstract interface Window.OnFrameMetricsAvailableListener {
+    method public abstract void onFrameMetricsAvailable(android.view.Window, android.view.FrameMetrics, int);
   }
 
   public static abstract interface Window.OnRestrictedCaptionAreaChangedListener {
@@ -46700,6 +46676,7 @@
     ctor public FrameLayout.LayoutParams(android.view.ViewGroup.LayoutParams);
     ctor public FrameLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams);
     ctor public FrameLayout.LayoutParams(android.widget.FrameLayout.LayoutParams);
+    field public static final int UNSPECIFIED_GRAVITY = -1; // 0xffffffff
     field public int gravity;
   }
 
@@ -47494,7 +47471,7 @@
     method public void setChar(int, java.lang.String, char);
     method public void setCharSequence(int, java.lang.String, java.lang.CharSequence);
     method public void setChronometer(int, long, java.lang.String, boolean);
-    method public void setChronometerCountsDown(int, boolean);
+    method public void setChronometerCountDown(int, boolean);
     method public void setContentDescription(int, java.lang.CharSequence);
     method public void setDisplayedChild(int, int);
     method public void setDouble(int, java.lang.String, double);
@@ -50126,6 +50103,8 @@
 
   public abstract interface CharSequence {
     method public abstract char charAt(int);
+    method public default java.util.stream.IntStream chars();
+    method public default java.util.stream.IntStream codePoints();
     method public abstract int length();
     method public abstract java.lang.CharSequence subSequence(int, int);
     method public abstract java.lang.String toString();
@@ -50618,16 +50597,13 @@
     method public static java.lang.Class<?> forName(java.lang.String, boolean, java.lang.ClassLoader) throws java.lang.ClassNotFoundException;
     method public A getAnnotation(java.lang.Class<A>);
     method public java.lang.annotation.Annotation[] getAnnotations();
-    method public T[] getAnnotationsByType(java.lang.Class<T>);
     method public java.lang.String getCanonicalName();
     method public java.lang.ClassLoader getClassLoader();
     method public java.lang.Class<?>[] getClasses();
     method public java.lang.Class<?> getComponentType();
     method public java.lang.reflect.Constructor<T> getConstructor(java.lang.Class<?>...) throws java.lang.NoSuchMethodException, java.lang.SecurityException;
     method public java.lang.reflect.Constructor<?>[] getConstructors() throws java.lang.SecurityException;
-    method public T getDeclaredAnnotation(java.lang.Class<T>);
     method public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
     method public java.lang.Class<?>[] getDeclaredClasses();
     method public java.lang.reflect.Constructor<T> getDeclaredConstructor(java.lang.Class<?>...) throws java.lang.NoSuchMethodException, java.lang.SecurityException;
     method public java.lang.reflect.Constructor<?>[] getDeclaredConstructors() throws java.lang.SecurityException;
@@ -50658,7 +50634,6 @@
     method public java.lang.Class<? super T> getSuperclass();
     method public synchronized java.lang.reflect.TypeVariable<java.lang.Class<T>>[] getTypeParameters();
     method public boolean isAnnotation();
-    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public boolean isAnonymousClass();
     method public boolean isArray();
     method public boolean isAssignableFrom(java.lang.Class<?>);
@@ -51201,10 +51176,10 @@
   public class Package implements java.lang.reflect.AnnotatedElement {
     method public A getAnnotation(java.lang.Class<A>);
     method public java.lang.annotation.Annotation[] getAnnotations();
-    method public T[] getAnnotationsByType(java.lang.Class<T>);
-    method public java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
+    method public A[] getAnnotationsByType(java.lang.Class<A>);
+    method public A getDeclaredAnnotation(java.lang.Class<A>);
     method public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
+    method public A[] getDeclaredAnnotationsByType(java.lang.Class<A>);
     method public java.lang.String getImplementationTitle();
     method public java.lang.String getImplementationVendor();
     method public java.lang.String getImplementationVersion();
@@ -51214,7 +51189,6 @@
     method public java.lang.String getSpecificationTitle();
     method public java.lang.String getSpecificationVendor();
     method public java.lang.String getSpecificationVersion();
-    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public boolean isCompatibleWith(java.lang.String) throws java.lang.NumberFormatException;
     method public boolean isSealed();
     method public boolean isSealed(java.net.URL);
@@ -51883,12 +51857,8 @@
     ctor protected AccessibleObject();
     method public T getAnnotation(java.lang.Class<T>);
     method public java.lang.annotation.Annotation[] getAnnotations();
-    method public T[] getAnnotationsByType(java.lang.Class<T>);
-    method public java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
     method public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
     method public boolean isAccessible();
-    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public static void setAccessible(java.lang.reflect.AccessibleObject[], boolean) throws java.lang.SecurityException;
     method public void setAccessible(boolean) throws java.lang.SecurityException;
   }
@@ -51896,11 +51866,11 @@
   public abstract interface AnnotatedElement {
     method public abstract T getAnnotation(java.lang.Class<T>);
     method public abstract java.lang.annotation.Annotation[] getAnnotations();
-    method public abstract T[] getAnnotationsByType(java.lang.Class<T>);
-    method public abstract java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
+    method public default T[] getAnnotationsByType(java.lang.Class<T>);
+    method public default java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
     method public abstract java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public abstract T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
-    method public abstract boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
+    method public default T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
+    method public default boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
   }
 
   public final class Array {
@@ -51963,6 +51933,7 @@
     method public java.lang.String getName();
     method public short getShort(java.lang.Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
     method public java.lang.Class<?> getType();
+    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public boolean isEnumConstant();
     method public boolean isSynthetic();
     method public void set(java.lang.Object, java.lang.Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
@@ -53230,6 +53201,7 @@
     method public final int arrayOffset();
     method public abstract java.nio.CharBuffer asReadOnlyBuffer();
     method public final char charAt(int);
+    method public java.util.stream.IntStream chars();
     method public abstract java.nio.CharBuffer compact();
     method public int compareTo(java.nio.CharBuffer);
     method public abstract java.nio.CharBuffer duplicate();
@@ -58122,6 +58094,7 @@
     method public java.lang.Object clone();
     method public java.util.Set<java.util.Map.Entry<K, V>> entrySet();
     method public void forEach(java.util.function.BiConsumer<? super K, ? super V>);
+    method public void replaceAll(java.util.function.BiFunction<? super K, ? super V, ? extends V>);
   }
 
   public class IllegalFormatCodePointException extends java.util.IllegalFormatException {
@@ -59104,6 +59077,8 @@
     method public java.util.NavigableSet<K> navigableKeySet();
     method public java.util.Map.Entry<K, V> pollFirstEntry();
     method public java.util.Map.Entry<K, V> pollLastEntry();
+    method public boolean replace(K, V, V);
+    method public V replace(K, V);
     method public void replaceAll(java.util.function.BiFunction<? super K, ? super V, ? extends V>);
     method public java.util.NavigableMap<K, V> subMap(K, boolean, K, boolean);
     method public java.util.SortedMap<K, V> subMap(K, K);
diff --git a/api/removed.txt b/api/removed.txt
index 8c6abdc..de8a724 100644
--- a/api/removed.txt
+++ b/api/removed.txt
@@ -165,6 +165,31 @@
 
 }
 
+package android.mtp {
+
+  public final class MtpConstants {
+    field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001
+    field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d
+    field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008
+    field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006
+    field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b
+    field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002
+    field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007
+    field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801
+    field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802
+    field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803
+    field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003
+    field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009
+    field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c
+    field public static final int EVENT_STORE_ADDED = 16388; // 0x4004
+    field public static final int EVENT_STORE_FULL = 16394; // 0x400a
+    field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005
+    field public static final int EVENT_UNDEFINED = 16384; // 0x4000
+    field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e
+  }
+
+}
+
 package android.net {
 
   public class SSLCertificateSocketFactory extends javax.net.ssl.SSLSocketFactory {
diff --git a/api/system-current.txt b/api/system-current.txt
index 915ceb2..2755bc8 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -46,11 +46,13 @@
     field public static final java.lang.String BIND_PRINT_SERVICE = "android.permission.BIND_PRINT_SERVICE";
     field public static final java.lang.String BIND_QUICK_SETTINGS_TILE = "android.permission.BIND_QUICK_SETTINGS_TILE";
     field public static final java.lang.String BIND_REMOTEVIEWS = "android.permission.BIND_REMOTEVIEWS";
+    field public static final java.lang.String BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE = "android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE";
     field public static final java.lang.String BIND_SCREENING_SERVICE = "android.permission.BIND_SCREENING_SERVICE";
     field public static final java.lang.String BIND_TELECOM_CONNECTION_SERVICE = "android.permission.BIND_TELECOM_CONNECTION_SERVICE";
     field public static final java.lang.String BIND_TEXT_SERVICE = "android.permission.BIND_TEXT_SERVICE";
     field public static final java.lang.String BIND_TRUST_AGENT = "android.permission.BIND_TRUST_AGENT";
     field public static final java.lang.String BIND_TV_INPUT = "android.permission.BIND_TV_INPUT";
+    field public static final java.lang.String BIND_TV_REMOTE_SERVICE = "android.permission.BIND_TV_REMOTE_SERVICE";
     field public static final java.lang.String BIND_VOICE_INTERACTION = "android.permission.BIND_VOICE_INTERACTION";
     field public static final java.lang.String BIND_VPN_SERVICE = "android.permission.BIND_VPN_SERVICE";
     field public static final java.lang.String BIND_VR_LISTENER_SERVICE = "android.permission.BIND_VR_LISTENER_SERVICE";
@@ -103,11 +105,11 @@
     field public static final java.lang.String GET_APP_OPS_STATS = "android.permission.GET_APP_OPS_STATS";
     field public static final java.lang.String GET_PACKAGE_IMPORTANCE = "android.permission.GET_PACKAGE_IMPORTANCE";
     field public static final java.lang.String GET_PACKAGE_SIZE = "android.permission.GET_PACKAGE_SIZE";
-    field public static final java.lang.String GET_PASSWORD_PRIVILEGED = "android.permission.GET_PASSWORD_PRIVILEGED";
     field public static final java.lang.String GET_PROCESS_STATE_AND_OOM_SCORE = "android.permission.GET_PROCESS_STATE_AND_OOM_SCORE";
     field public static final deprecated java.lang.String GET_TASKS = "android.permission.GET_TASKS";
     field public static final java.lang.String GET_TOP_ACTIVITY_INFO = "android.permission.GET_TOP_ACTIVITY_INFO";
     field public static final java.lang.String GLOBAL_SEARCH = "android.permission.GLOBAL_SEARCH";
+    field public static final java.lang.String GRANT_RUNTIME_PERMISSIONS = "android.permission.GRANT_RUNTIME_PERMISSIONS";
     field public static final java.lang.String HARDWARE_TEST = "android.permission.HARDWARE_TEST";
     field public static final java.lang.String HDMI_CEC = "android.permission.HDMI_CEC";
     field public static final java.lang.String INJECT_EVENTS = "android.permission.INJECT_EVENTS";
@@ -117,14 +119,17 @@
     field public static final java.lang.String INSTALL_SHORTCUT = "com.android.launcher.permission.INSTALL_SHORTCUT";
     field public static final java.lang.String INTENT_FILTER_VERIFICATION_AGENT = "android.permission.INTENT_FILTER_VERIFICATION_AGENT";
     field public static final java.lang.String INTERACT_ACROSS_USERS = "android.permission.INTERACT_ACROSS_USERS";
+    field public static final java.lang.String INTERACT_ACROSS_USERS_FULL = "android.permission.INTERACT_ACROSS_USERS_FULL";
     field public static final java.lang.String INTERNAL_SYSTEM_WINDOW = "android.permission.INTERNAL_SYSTEM_WINDOW";
     field public static final java.lang.String INTERNET = "android.permission.INTERNET";
     field public static final java.lang.String INVOKE_CARRIER_SETUP = "android.permission.INVOKE_CARRIER_SETUP";
     field public static final java.lang.String KILL_BACKGROUND_PROCESSES = "android.permission.KILL_BACKGROUND_PROCESSES";
+    field public static final java.lang.String KILL_UID = "android.permission.KILL_UID";
     field public static final java.lang.String LOCAL_MAC_ADDRESS = "android.permission.LOCAL_MAC_ADDRESS";
     field public static final java.lang.String LOCATION_HARDWARE = "android.permission.LOCATION_HARDWARE";
     field public static final java.lang.String LOOP_RADIO = "android.permission.LOOP_RADIO";
     field public static final java.lang.String MANAGE_ACTIVITY_STACKS = "android.permission.MANAGE_ACTIVITY_STACKS";
+    field public static final java.lang.String MANAGE_APP_OPS_RESTRICTIONS = "android.permission.MANAGE_APP_OPS_RESTRICTIONS";
     field public static final java.lang.String MANAGE_APP_TOKENS = "android.permission.MANAGE_APP_TOKENS";
     field public static final java.lang.String MANAGE_CA_CERTIFICATES = "android.permission.MANAGE_CA_CERTIFICATES";
     field public static final java.lang.String MANAGE_DEVICE_ADMINS = "android.permission.MANAGE_DEVICE_ADMINS";
@@ -222,6 +227,7 @@
     field public static final java.lang.String TETHER_PRIVILEGED = "android.permission.TETHER_PRIVILEGED";
     field public static final java.lang.String TRANSMIT_IR = "android.permission.TRANSMIT_IR";
     field public static final java.lang.String TV_INPUT_HARDWARE = "android.permission.TV_INPUT_HARDWARE";
+    field public static final java.lang.String TV_VIRTUAL_REMOTE_CONTROLLER = "android.permission.TV_VIRTUAL_REMOTE_CONTROLLER";
     field public static final java.lang.String UNINSTALL_SHORTCUT = "com.android.launcher.permission.UNINSTALL_SHORTCUT";
     field public static final java.lang.String UPDATE_APP_OPS_STATS = "android.permission.UPDATE_APP_OPS_STATS";
     field public static final java.lang.String UPDATE_DEVICE_STATS = "android.permission.UPDATE_DEVICE_STATS";
@@ -3541,6 +3547,7 @@
     method public boolean convertToTranslucent(android.app.Activity.TranslucentConversionListener, android.app.ActivityOptions);
     method public android.app.PendingIntent createPendingResult(int, android.content.Intent, int);
     method public final deprecated void dismissDialog(int);
+    method public final void dismissKeyboardShortcutsHelper();
     method public boolean dispatchGenericMotionEvent(android.view.MotionEvent);
     method public boolean dispatchKeyEvent(android.view.KeyEvent);
     method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent);
@@ -3699,7 +3706,7 @@
     method public boolean releaseInstance();
     method public final deprecated void removeDialog(int);
     method public void reportFullyDrawn();
-    method public android.view.DropPermissions requestDropPermissions(android.view.DragEvent);
+    method public android.view.DragAndDropPermissions requestDragAndDropPermissions(android.view.DragEvent);
     method public final void requestKeyboardShortcutsHelper();
     method public final void requestPermissions(java.lang.String[], int);
     method public boolean requestVisibleBehind(boolean);
@@ -3821,6 +3828,7 @@
     method public static boolean isRunningInTestHarness();
     method public static boolean isUserAMonkey();
     method public void killBackgroundProcesses(java.lang.String);
+    method public void killUid(int, java.lang.String);
     method public void moveTaskToFront(int, int);
     method public void moveTaskToFront(int, int, android.os.Bundle);
     method public deprecated void restartPackage(java.lang.String);
@@ -4127,6 +4135,7 @@
     method public int noteProxyOp(java.lang.String, java.lang.String);
     method public int noteProxyOpNoThrow(java.lang.String, java.lang.String);
     method public static java.lang.String permissionToOp(java.lang.String);
+    method public void setUidMode(java.lang.String, int, int);
     method public int startOp(java.lang.String, int, java.lang.String);
     method public int startOpNoThrow(java.lang.String, int, java.lang.String);
     method public void startWatchingMode(java.lang.String, java.lang.String, android.app.AppOpsManager.OnOpChangedListener);
@@ -4493,6 +4502,8 @@
     method public android.app.DownloadManager.Request setDestinationUri(android.net.Uri);
     method public android.app.DownloadManager.Request setMimeType(java.lang.String);
     method public android.app.DownloadManager.Request setNotificationVisibility(int);
+    method public android.app.DownloadManager.Request setRequiresCharging(boolean);
+    method public android.app.DownloadManager.Request setRequiresDeviceIdle(boolean);
     method public deprecated android.app.DownloadManager.Request setShowRunningNotification(boolean);
     method public android.app.DownloadManager.Request setTitle(java.lang.CharSequence);
     method public android.app.DownloadManager.Request setVisibleInDownloadsUi(boolean);
@@ -5060,6 +5071,7 @@
     field public static final java.lang.String EXTRA_BIG_TEXT = "android.bigText";
     field public static final java.lang.String EXTRA_CHRONOMETER_COUNTS_DOWN = "android.chronometerCountsDown";
     field public static final java.lang.String EXTRA_COMPACT_ACTIONS = "android.compactActions";
+    field public static final java.lang.String EXTRA_CONVERSATION_TITLE = "android.conversationTitle";
     field public static final java.lang.String EXTRA_INFO_TEXT = "android.infoText";
     field public static final java.lang.String EXTRA_LARGE_ICON = "android.largeIcon";
     field public static final java.lang.String EXTRA_LARGE_ICON_BIG = "android.largeIcon.big";
@@ -5075,12 +5087,12 @@
     field public static final java.lang.String EXTRA_SHOW_CHRONOMETER = "android.showChronometer";
     field public static final java.lang.String EXTRA_SHOW_WHEN = "android.showWhen";
     field public static final java.lang.String EXTRA_SMALL_ICON = "android.icon";
+    field public static final java.lang.String EXTRA_SUBSTITUTE_APP_NAME = "android.substName";
     field public static final java.lang.String EXTRA_SUB_TEXT = "android.subText";
     field public static final java.lang.String EXTRA_SUMMARY_TEXT = "android.summaryText";
     field public static final java.lang.String EXTRA_TEMPLATE = "android.template";
     field public static final java.lang.String EXTRA_TEXT = "android.text";
     field public static final java.lang.String EXTRA_TEXT_LINES = "android.textLines";
-    field public static final java.lang.String EXTRA_THREAD_TITLE = "android.threadTitle";
     field public static final java.lang.String EXTRA_TITLE = "android.title";
     field public static final java.lang.String EXTRA_TITLE_BIG = "android.title.big";
     field public static final int FLAG_AUTOGROUP_SUMMARY = 1024; // 0x400
@@ -5334,17 +5346,14 @@
     field public static final int MAXIMUM_RETAINED_MESSAGES = 25; // 0x19
   }
 
-  public static final class Notification.MessagingStyle.Message implements android.os.Parcelable {
+  public static final class Notification.MessagingStyle.Message {
     ctor public Notification.MessagingStyle.Message(java.lang.CharSequence, long, java.lang.CharSequence);
-    method public int describeContents();
     method public java.lang.String getDataMimeType();
     method public android.net.Uri getDataUri();
     method public java.lang.CharSequence getSender();
     method public java.lang.CharSequence getText();
     method public long getTimestamp();
     method public android.app.Notification.MessagingStyle.Message setData(java.lang.String, android.net.Uri);
-    method public void writeToParcel(android.os.Parcel, int);
-    field public static final android.os.Parcelable.Creator<android.app.Notification.MessagingStyle.Message> CREATOR;
   }
 
   public static abstract class Notification.Style {
@@ -5379,6 +5388,7 @@
     method public int getCustomSizePreset();
     method public android.app.PendingIntent getDisplayIntent();
     method public int getGravity();
+    method public boolean getHintAmbientBigPicture();
     method public boolean getHintAvoidBackgroundClipping();
     method public boolean getHintContentIntentLaunchesActivity();
     method public boolean getHintHideIcon();
@@ -5395,6 +5405,7 @@
     method public android.app.Notification.WearableExtender setCustomSizePreset(int);
     method public android.app.Notification.WearableExtender setDisplayIntent(android.app.PendingIntent);
     method public android.app.Notification.WearableExtender setGravity(int);
+    method public android.app.Notification.WearableExtender setHintAmbientBigPicture(boolean);
     method public android.app.Notification.WearableExtender setHintAvoidBackgroundClipping(boolean);
     method public android.app.Notification.WearableExtender setHintContentIntentLaunchesActivity(boolean);
     method public android.app.Notification.WearableExtender setHintHideIcon(boolean);
@@ -5689,6 +5700,7 @@
     method public boolean onUnbind(android.content.Intent);
     method public final void startForeground(int, android.app.Notification);
     method public final void stopForeground(boolean);
+    method public final void stopForeground(int);
     method public final void stopSelf();
     method public final void stopSelf(int);
     method public final boolean stopSelfResult(int);
@@ -5699,6 +5711,8 @@
     field public static final int START_REDELIVER_INTENT = 3; // 0x3
     field public static final int START_STICKY = 1; // 0x1
     field public static final int START_STICKY_COMPATIBILITY = 0; // 0x0
+    field public static final int STOP_FOREGROUND_DETACH = 2; // 0x2
+    field public static final int STOP_FOREGROUND_REMOVE = 1; // 0x1
   }
 
   public abstract class SharedElementCallback {
@@ -6602,6 +6616,7 @@
     field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L
     field public static final int NETWORK_TYPE_ANY = 1; // 0x1
     field public static final int NETWORK_TYPE_NONE = 0; // 0x0
+    field public static final int NETWORK_TYPE_NOT_ROAMING = 3; // 0x3
     field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2
   }
 
@@ -6649,6 +6664,7 @@
     method public abstract void cancel(int);
     method public abstract void cancelAll();
     method public abstract java.util.List<android.app.job.JobInfo> getAllPendingJobs();
+    method public abstract android.app.job.JobInfo getPendingJob(int);
     method public abstract int schedule(android.app.job.JobInfo);
     field public static final int RESULT_FAILURE = 0; // 0x0
     field public static final int RESULT_SUCCESS = 1; // 0x1
@@ -8890,8 +8906,11 @@
     field public static final java.lang.String ACTION_MANAGED_PROFILE_REMOVED = "android.intent.action.MANAGED_PROFILE_REMOVED";
     field public static final java.lang.String ACTION_MANAGED_PROFILE_UNAVAILABLE = "android.intent.action.MANAGED_PROFILE_UNAVAILABLE";
     field public static final java.lang.String ACTION_MANAGED_PROFILE_UNLOCKED = "android.intent.action.MANAGED_PROFILE_UNLOCKED";
+    field public static final java.lang.String ACTION_MANAGE_APP_PERMISSIONS = "android.intent.action.MANAGE_APP_PERMISSIONS";
     field public static final java.lang.String ACTION_MANAGE_NETWORK_USAGE = "android.intent.action.MANAGE_NETWORK_USAGE";
     field public static final java.lang.String ACTION_MANAGE_PACKAGE_STORAGE = "android.intent.action.MANAGE_PACKAGE_STORAGE";
+    field public static final java.lang.String ACTION_MANAGE_PERMISSIONS = "android.intent.action.MANAGE_PERMISSIONS";
+    field public static final java.lang.String ACTION_MANAGE_PERMISSION_APPS = "android.intent.action.MANAGE_PERMISSION_APPS";
     field public static final java.lang.String ACTION_MEDIA_BAD_REMOVAL = "android.intent.action.MEDIA_BAD_REMOVAL";
     field public static final java.lang.String ACTION_MEDIA_BUTTON = "android.intent.action.MEDIA_BUTTON";
     field public static final java.lang.String ACTION_MEDIA_CHECKING = "android.intent.action.MEDIA_CHECKING";
@@ -8935,6 +8954,7 @@
     field public static final java.lang.String ACTION_QUICK_VIEW = "android.intent.action.QUICK_VIEW";
     field public static final java.lang.String ACTION_REBOOT = "android.intent.action.REBOOT";
     field public static final java.lang.String ACTION_RESOLVE_EPHEMERAL_PACKAGE = "android.intent.action.RESOLVE_EPHEMERAL_PACKAGE";
+    field public static final java.lang.String ACTION_REVIEW_PERMISSIONS = "android.intent.action.REVIEW_PERMISSIONS";
     field public static final java.lang.String ACTION_RUN = "android.intent.action.RUN";
     field public static final java.lang.String ACTION_SCREEN_OFF = "android.intent.action.SCREEN_OFF";
     field public static final java.lang.String ACTION_SCREEN_ON = "android.intent.action.SCREEN_ON";
@@ -9041,6 +9061,7 @@
     field public static final java.lang.String EXTRA_LOCAL_ONLY = "android.intent.extra.LOCAL_ONLY";
     field public static final java.lang.String EXTRA_MIME_TYPES = "android.intent.extra.MIME_TYPES";
     field public static final java.lang.String EXTRA_NOT_UNKNOWN_SOURCE = "android.intent.extra.NOT_UNKNOWN_SOURCE";
+    field public static final java.lang.String EXTRA_ORIGINATING_UID = "android.intent.extra.ORIGINATING_UID";
     field public static final java.lang.String EXTRA_ORIGINATING_URI = "android.intent.extra.ORIGINATING_URI";
     field public static final java.lang.String EXTRA_PACKAGES = "android.intent.extra.PACKAGES";
     field public static final java.lang.String EXTRA_PACKAGE_NAME = "android.intent.extra.PACKAGE_NAME";
@@ -9051,12 +9072,14 @@
     field public static final java.lang.String EXTRA_QUIET_MODE = "android.intent.extra.QUIET_MODE";
     field public static final java.lang.String EXTRA_REFERRER = "android.intent.extra.REFERRER";
     field public static final java.lang.String EXTRA_REFERRER_NAME = "android.intent.extra.REFERRER_NAME";
+    field public static final java.lang.String EXTRA_REMOTE_CALLBACK = "android.intent.extra.REMOTE_CALLBACK";
     field public static final java.lang.String EXTRA_REMOTE_INTENT_TOKEN = "android.intent.extra.remote_intent_token";
     field public static final java.lang.String EXTRA_REPLACEMENT_EXTRAS = "android.intent.extra.REPLACEMENT_EXTRAS";
     field public static final java.lang.String EXTRA_REPLACING = "android.intent.extra.REPLACING";
     field public static final java.lang.String EXTRA_RESTRICTIONS_BUNDLE = "android.intent.extra.restrictions_bundle";
     field public static final java.lang.String EXTRA_RESTRICTIONS_INTENT = "android.intent.extra.restrictions_intent";
     field public static final java.lang.String EXTRA_RESTRICTIONS_LIST = "android.intent.extra.restrictions_list";
+    field public static final java.lang.String EXTRA_RESULT_NEEDED = "android.intent.extra.RESULT_NEEDED";
     field public static final java.lang.String EXTRA_RESULT_RECEIVER = "android.intent.extra.RESULT_RECEIVER";
     field public static final java.lang.String EXTRA_RETURN_RESULT = "android.intent.extra.RETURN_RESULT";
     field public static final java.lang.String EXTRA_SHORTCUT_ICON = "android.intent.extra.shortcut.ICON";
@@ -10074,6 +10097,7 @@
     method public abstract android.graphics.drawable.Drawable getDrawable(java.lang.String, int, android.content.pm.ApplicationInfo);
     method public abstract java.util.List<android.content.pm.ApplicationInfo> getInstalledApplications(int);
     method public abstract java.util.List<android.content.pm.PackageInfo> getInstalledPackages(int);
+    method public abstract java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int);
     method public abstract java.lang.String getInstallerPackageName(java.lang.String);
     method public abstract android.content.pm.InstrumentationInfo getInstrumentationInfo(android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException;
     method public abstract android.content.Intent getLaunchIntentForPackage(java.lang.String);
@@ -10225,6 +10249,13 @@
     field public static final java.lang.String FEATURE_WEBVIEW = "android.software.webview";
     field public static final java.lang.String FEATURE_WIFI = "android.hardware.wifi";
     field public static final java.lang.String FEATURE_WIFI_DIRECT = "android.hardware.wifi.direct";
+    field public static final int FLAG_PERMISSION_GRANTED_BY_DEFAULT = 32; // 0x20
+    field public static final int FLAG_PERMISSION_POLICY_FIXED = 4; // 0x4
+    field public static final int FLAG_PERMISSION_REVIEW_REQUIRED = 64; // 0x40
+    field public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8
+    field public static final int FLAG_PERMISSION_SYSTEM_FIXED = 16; // 0x10
+    field public static final int FLAG_PERMISSION_USER_FIXED = 2; // 0x2
+    field public static final int FLAG_PERMISSION_USER_SET = 1; // 0x1
     field public static final int GET_ACTIVITIES = 1; // 0x1
     field public static final int GET_CONFIGURATIONS = 16384; // 0x4000
     field public static final deprecated int GET_DISABLED_COMPONENTS = 512; // 0x200
@@ -10450,7 +10481,7 @@
   public final class ShortcutInfo implements android.os.Parcelable {
     method public int describeContents();
     method public android.content.ComponentName getActivityComponent();
-    method public java.util.List<java.lang.String> getCategories();
+    method public java.util.Set<java.lang.String> getCategories();
     method public android.os.PersistableBundle getExtras();
     method public int getIconResourceId();
     method public java.lang.String getId();
@@ -10483,7 +10514,7 @@
     ctor public ShortcutInfo.Builder(android.content.Context);
     method public android.content.pm.ShortcutInfo build();
     method public android.content.pm.ShortcutInfo.Builder setActivityComponent(android.content.ComponentName);
-    method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.List<java.lang.String>);
+    method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>);
     method public android.content.pm.ShortcutInfo.Builder setExtras(android.os.PersistableBundle);
     method public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon);
     method public android.content.pm.ShortcutInfo.Builder setId(java.lang.String);
@@ -10521,6 +10552,20 @@
 
 }
 
+package android.content.pm.permission {
+
+  public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
+    ctor public RuntimePermissionPresentationInfo(java.lang.CharSequence, boolean, boolean);
+    method public int describeContents();
+    method public java.lang.CharSequence getLabel();
+    method public boolean isGranted();
+    method public boolean isStandard();
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.content.pm.permission.RuntimePermissionPresentationInfo> CREATOR;
+  }
+
+}
+
 package android.content.res {
 
   public class AssetFileDescriptor implements java.io.Closeable android.os.Parcelable {
@@ -21741,9 +21786,9 @@
     field public static final java.lang.String TAG_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange";
     field public static final java.lang.String TAG_SUBJECT_LOCATION = "SubjectLocation";
     field public static final java.lang.String TAG_SUBSEC_TIME = "SubSecTime";
-    field public static final java.lang.String TAG_SUBSEC_TIME_DIG = "SubSecTimeDigitized";
+    field public static final deprecated java.lang.String TAG_SUBSEC_TIME_DIG = "SubSecTimeDigitized";
     field public static final java.lang.String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized";
-    field public static final java.lang.String TAG_SUBSEC_TIME_ORIG = "SubSecTimeOriginal";
+    field public static final deprecated java.lang.String TAG_SUBSEC_TIME_ORIG = "SubSecTimeOriginal";
     field public static final java.lang.String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal";
     field public static final java.lang.String TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength";
     field public static final java.lang.String TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth";
@@ -24707,6 +24752,7 @@
     method public void removeBlockedRating(android.media.tv.TvContentRating);
     method public void setParentalControlsEnabled(boolean);
     method public void unregisterCallback(android.media.tv.TvInputManager.TvInputCallback);
+    method public void updateTvInputInfo(android.media.tv.TvInputInfo);
     field public static final java.lang.String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED";
     field public static final java.lang.String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED";
     field public static final java.lang.String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS";
@@ -24761,7 +24807,6 @@
     method public java.lang.String onHardwareRemoved(android.media.tv.TvInputHardwareInfo);
     method public android.media.tv.TvInputInfo onHdmiDeviceAdded(android.hardware.hdmi.HdmiDeviceInfo);
     method public java.lang.String onHdmiDeviceRemoved(android.hardware.hdmi.HdmiDeviceInfo);
-    method public static final void updateTvInputInfo(android.content.Context, android.media.tv.TvInputInfo);
     field public static final java.lang.String SERVICE_INTERFACE = "android.media.tv.TvInputService";
     field public static final java.lang.String SERVICE_META_DATA = "android.media.tv.input";
   }
@@ -24976,24 +25021,6 @@
     ctor public MtpConstants();
     method public static boolean isAbstractObject(int);
     field public static final int ASSOCIATION_TYPE_GENERIC_FOLDER = 1; // 0x1
-    field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001
-    field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d
-    field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008
-    field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006
-    field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b
-    field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002
-    field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007
-    field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801
-    field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802
-    field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803
-    field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003
-    field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009
-    field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c
-    field public static final int EVENT_STORE_ADDED = 16388; // 0x4004
-    field public static final int EVENT_STORE_FULL = 16394; // 0x400a
-    field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005
-    field public static final int EVENT_UNDEFINED = 16384; // 0x4000
-    field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e
     field public static final int FORMAT_3GP_CONTAINER = 47492; // 0xb984
     field public static final int FORMAT_AAC = 47363; // 0xb903
     field public static final int FORMAT_ABSTRACT_AUDIO_ALBUM = 47619; // 0xba03
@@ -25114,7 +25141,7 @@
     method public boolean importFile(int, java.lang.String);
     method public boolean importFile(int, android.os.ParcelFileDescriptor);
     method public boolean open(android.hardware.usb.UsbDeviceConnection);
-    method public android.mtp.MtpEvent readEvent(android.os.CancellationSignal);
+    method public android.mtp.MtpEvent readEvent(android.os.CancellationSignal) throws java.io.IOException;
     method public boolean sendObject(int, long, android.os.ParcelFileDescriptor);
     method public android.mtp.MtpObjectInfo sendObjectInfo(android.mtp.MtpObjectInfo);
   }
@@ -25126,10 +25153,11 @@
     method public final int[] getOperationsSupported();
     method public final java.lang.String getSerialNumber();
     method public final java.lang.String getVersion();
+    method public boolean isEventSupported(int);
+    method public boolean isOperationSupported(int);
   }
 
   public class MtpEvent {
-    ctor public MtpEvent();
     method public int getDevicePropCode();
     method public int getEventCode();
     method public int getObjectFormatCode();
@@ -25140,6 +25168,24 @@
     method public int getParameter3();
     method public int getStorageId();
     method public int getTransactionId();
+    field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001
+    field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d
+    field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008
+    field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006
+    field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b
+    field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002
+    field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007
+    field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801
+    field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802
+    field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803
+    field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003
+    field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009
+    field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c
+    field public static final int EVENT_STORE_ADDED = 16388; // 0x4004
+    field public static final int EVENT_STORE_FULL = 16394; // 0x400a
+    field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005
+    field public static final int EVENT_UNDEFINED = 16384; // 0x4000
+    field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e
   }
 
   public final class MtpObjectInfo {
@@ -25315,6 +25361,44 @@
     method public void onTetheringStarted();
   }
 
+  public final class ConnectivityMetricsEvent implements android.os.Parcelable {
+    ctor public ConnectivityMetricsEvent(long, int, int, android.os.Parcelable);
+    method public int describeContents();
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.ConnectivityMetricsEvent> CREATOR;
+    field public final int componentTag;
+    field public final android.os.Parcelable data;
+    field public final int eventTag;
+    field public final long timestamp;
+  }
+
+  public static final class ConnectivityMetricsEvent.Reference implements android.os.Parcelable {
+    ctor public ConnectivityMetricsEvent.Reference(long);
+    method public int describeContents();
+    method public long getValue();
+    method public void readFromParcel(android.os.Parcel);
+    method public void setValue(long);
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.ConnectivityMetricsEvent.Reference> CREATOR;
+  }
+
+  public class ConnectivityMetricsLogger {
+    ctor public ConnectivityMetricsLogger();
+    method public android.net.ConnectivityMetricsEvent[] getEvents(android.net.ConnectivityMetricsEvent.Reference);
+    method public void logEvent(long, int, int, android.os.Parcelable);
+    method public boolean register(android.app.PendingIntent);
+    method public boolean unregister(android.app.PendingIntent);
+    field public static final int COMPONENT_TAG_BLUETOOTH = 1; // 0x1
+    field public static final int COMPONENT_TAG_CONNECTIVITY = 0; // 0x0
+    field public static final int COMPONENT_TAG_TELECOM = 3; // 0x3
+    field public static final int COMPONENT_TAG_TELEPHONY = 4; // 0x4
+    field public static final int COMPONENT_TAG_WIFI = 2; // 0x2
+    field public static final java.lang.String CONNECTIVITY_METRICS_LOGGER_SERVICE = "connectivity_metrics_logger";
+    field public static final java.lang.String DATA_KEY_EVENTS_COUNT = "count";
+    field public static final int NUMBER_OF_COMPONENTS = 5; // 0x5
+    field public static final int TAG_SKIPPED_EVENTS = -1; // 0xffffffff
+  }
+
   public class Credentials {
     ctor public Credentials(int, int, int);
     method public int getGid();
@@ -25504,8 +25588,10 @@
     method public boolean isConnected();
     method public boolean isConnectedOrConnecting();
     method public boolean isFailover();
+    method public boolean isMetered();
     method public boolean isRoaming();
     method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.NetworkInfo> CREATOR;
   }
 
   public static final class NetworkInfo.DetailedState extends java.lang.Enum {
@@ -25968,6 +26054,155 @@
 
 }
 
+package android.net.metrics {
+
+  public final class DefaultNetworkEvent extends android.net.metrics.IpConnectivityEvent implements android.os.Parcelable {
+    method public int describeContents();
+    method public static void logEvent(int, int[], int, boolean, boolean);
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.metrics.DefaultNetworkEvent> CREATOR;
+    field public final int netId;
+    field public final boolean prevIPv4;
+    field public final boolean prevIPv6;
+    field public final int prevNetId;
+    field public final int[] transportTypes;
+  }
+
+  public final class DhcpClientEvent extends android.net.metrics.IpConnectivityEvent implements android.os.Parcelable {
+    method public int describeContents();
+    method public static void logStateEvent(java.lang.String, java.lang.String);
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.metrics.DhcpClientEvent> CREATOR;
+    field public final java.lang.String ifName;
+    field public final java.lang.String msg;
+  }
+
+  public final class DhcpErrorEvent extends android.net.metrics.IpConnectivityEvent implements android.os.Parcelable {
+    method public int describeContents();
+    method public static int errorCodeWithOption(int, int);
+    method public static void logParseError(java.lang.String, int);
+    method public static void logReceiveError(java.lang.String);
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final int BOOTP_TOO_SHORT;
+    field public static final int BUFFER_UNDERFLOW;
+    field public static final android.os.Parcelable.Creator<android.net.metrics.DhcpErrorEvent> CREATOR;
+    field public static final int DHCP_BAD_MAGIC_COOKIE;
+    field public static final int DHCP_ERROR = 4; // 0x4
+    field public static final int DHCP_INVALID_OPTION_LENGTH;
+    field public static final int DHCP_NO_MSG_TYPE;
+    field public static final int DHCP_UNKNOWN_MSG_TYPE;
+    field public static final int L2_ERROR = 1; // 0x1
+    field public static final int L2_TOO_SHORT;
+    field public static final int L2_WRONG_ETH_TYPE;
+    field public static final int L3_ERROR = 2; // 0x2
+    field public static final int L3_INVALID_IP;
+    field public static final int L3_NOT_IPV4;
+    field public static final int L3_TOO_SHORT;
+    field public static final int L4_ERROR = 3; // 0x3
+    field public static final int L4_NOT_UDP;
+    field public static final int L4_WRONG_PORT;
+    field public static final int MISC_ERROR = 5; // 0x5
+    field public static final int RECEIVE_ERROR;
+    field public final int errorCode;
+    field public final java.lang.String ifName;
+  }
+
+  public final class DnsEvent extends android.net.metrics.IpConnectivityEvent implements android.os.Parcelable {
+    method public int describeContents();
+    method public static void logEvent(int, byte[], byte[], int[]);
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.metrics.DnsEvent> CREATOR;
+    field public final byte[] eventTypes;
+    field public final int[] latenciesMs;
+    field public final int netId;
+    field public final byte[] returnCodes;
+  }
+
+  public abstract class IpConnectivityEvent {
+    ctor public IpConnectivityEvent();
+    method public static void logEvent(int, T);
+    field public static final int IPCE_CONSRV_BASE = 3072; // 0xc00
+    field public static final int IPCE_CONSRV_DEFAULT_NET_CHANGE = 3072; // 0xc00
+    field public static final int IPCE_DHCP_BASE = 1024; // 0x400
+    field public static final int IPCE_DHCP_PARSE_ERROR = 1025; // 0x401
+    field public static final int IPCE_DHCP_RECV_ERROR = 1024; // 0x400
+    field public static final int IPCE_DHCP_STATE_CHANGE = 1026; // 0x402
+    field public static final int IPCE_DNS_BASE = 5120; // 0x1400
+    field public static final int IPCE_DNS_LOOKUPS = 5120; // 0x1400
+    field public static final int IPCE_IPMGR_BASE = 4096; // 0x1000
+    field public static final int IPCE_IPMGR_COMPLETE_LIFECYCLE = 4098; // 0x1002
+    field public static final int IPCE_IPMGR_PROVISIONING_FAIL = 4097; // 0x1001
+    field public static final int IPCE_IPMGR_PROVISIONING_OK = 4096; // 0x1000
+    field public static final int IPCE_IPRM_BASE = 0; // 0x0
+    field public static final int IPCE_IPRM_NUD_FAILED = 2; // 0x2
+    field public static final int IPCE_IPRM_PROBE_FAILURE = 1; // 0x1
+    field public static final int IPCE_IPRM_PROBE_STARTED = 0; // 0x0
+    field public static final int IPCE_IPRM_PROVISIONING_LOST = 3; // 0x3
+    field public static final int IPCE_NETMON_BASE = 2048; // 0x800
+    field public static final int IPCE_NETMON_CAPPORT_FOUND = 2052; // 0x804
+    field public static final int IPCE_NETMON_CHECK_RESULT = 2049; // 0x801
+    field public static final int IPCE_NETMON_PORTAL_PROBE = 2051; // 0x803
+    field public static final int IPCE_NETMON_STATE_CHANGE = 2048; // 0x800
+    field public static final int IPCE_NETMON_VALIDATED = 2050; // 0x802
+  }
+
+  public final class IpManagerEvent extends android.net.metrics.IpConnectivityEvent implements android.os.Parcelable {
+    method public int describeContents();
+    method public static void logEvent(int, java.lang.String, long);
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.metrics.IpManagerEvent> CREATOR;
+    field public final long durationMs;
+    field public final java.lang.String ifName;
+  }
+
+  public final class IpReachabilityEvent extends android.net.metrics.IpConnectivityEvent implements android.os.Parcelable {
+    method public int describeContents();
+    method public static void logNudFailed(java.lang.String);
+    method public static void logProbeEvent(java.lang.String, int);
+    method public static void logProvisioningLost(java.lang.String);
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.metrics.IpReachabilityEvent> CREATOR;
+    field public static final int NUD_FAILED = 512; // 0x200
+    field public static final int PROBE = 256; // 0x100
+    field public static final int PROVISIONING_LOST = 768; // 0x300
+    field public final int eventType;
+    field public final java.lang.String ifName;
+  }
+
+  public final class NetworkEvent extends android.net.metrics.IpConnectivityEvent implements android.os.Parcelable {
+    method public int describeContents();
+    method public static void logCaptivePortalFound(int, long);
+    method public static void logEvent(int, int);
+    method public static void logValidated(int, long);
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.metrics.NetworkEvent> CREATOR;
+    field public static final int NETWORK_CAPTIVE_PORTAL_FOUND = 4; // 0x4
+    field public static final int NETWORK_CONNECTED = 1; // 0x1
+    field public static final int NETWORK_DISCONNECTED = 7; // 0x7
+    field public static final int NETWORK_LINGER = 5; // 0x5
+    field public static final int NETWORK_UNLINGER = 6; // 0x6
+    field public static final int NETWORK_VALIDATED = 2; // 0x2
+    field public static final int NETWORK_VALIDATION_FAILED = 3; // 0x3
+    field public final long durationMs;
+    field public final int eventType;
+    field public final int netId;
+  }
+
+  public final class ValidationProbeEvent extends android.net.metrics.IpConnectivityEvent implements android.os.Parcelable {
+    method public int describeContents();
+    method public static void logEvent(int, long, int, int);
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.metrics.ValidationProbeEvent> CREATOR;
+    field public static final int PROBE_HTTP = 0; // 0x0
+    field public static final int PROBE_HTTPS = 1; // 0x1
+    field public final long durationMs;
+    field public final int netId;
+    field public final int probeType;
+    field public final int returnCode;
+  }
+
+}
+
 package android.net.nsd {
 
   public final class NsdManager {
@@ -26387,9 +26622,11 @@
     field public int bwSupported;
     field public boolean lciSupported;
     field public boolean lcrSupported;
+    field public int mcVersion;
     field public boolean oneSidedRttSupported;
     field public int preambleSupported;
     field public boolean responderSupported;
+    field public boolean secureRttSupported;
     field public deprecated boolean supportedPeerType;
     field public deprecated boolean supportedType;
     field public boolean twoSided11McRttSupported;
@@ -26540,6 +26777,7 @@
     field public java.lang.String providerFriendlyName;
     field public long[] roamingConsortiumIds;
     field public int status;
+    field public boolean useExternalScores;
     field public java.lang.String[] wepKeys;
     field public int wepTxKeyIndex;
   }
@@ -30574,6 +30812,7 @@
     field public static final java.lang.String ID;
     field public static final java.lang.String MANUFACTURER;
     field public static final java.lang.String MODEL;
+    field public static final boolean PERMISSIONS_REVIEW_REQUIRED;
     field public static final java.lang.String PRODUCT;
     field public static final deprecated java.lang.String RADIO;
     field public static final java.lang.String SERIAL;
@@ -31380,7 +31619,6 @@
     field public static final int RELEASE_FLAG_WAIT_FOR_NO_PROXIMITY = 1; // 0x1
     field public static final deprecated int SCREEN_BRIGHT_WAKE_LOCK = 10; // 0xa
     field public static final deprecated int SCREEN_DIM_WAKE_LOCK = 6; // 0x6
-    field public static final int SUSTAINED_PERFORMANCE_WAKE_LOCK = 256; // 0x100
     field public static final int USER_ACTIVITY_EVENT_ACCESSIBILITY = 3; // 0x3
     field public static final int USER_ACTIVITY_EVENT_BUTTON = 1; // 0x1
     field public static final int USER_ACTIVITY_EVENT_OTHER = 0; // 0x0
@@ -31454,6 +31692,19 @@
     method public abstract void onProgress(int);
   }
 
+  public final class RemoteCallback implements android.os.Parcelable {
+    ctor public RemoteCallback(android.os.RemoteCallback.OnResultListener);
+    ctor public RemoteCallback(android.os.RemoteCallback.OnResultListener, android.os.Handler);
+    method public int describeContents();
+    method public void sendResult(android.os.Bundle);
+    method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.os.RemoteCallback> CREATOR;
+  }
+
+  public static abstract interface RemoteCallback.OnResultListener {
+    method public abstract void onResult(android.os.Bundle);
+  }
+
   public class RemoteCallbackList {
     ctor public RemoteCallbackList();
     method public int beginBroadcast();
@@ -31683,6 +31934,7 @@
     method public deprecated void setUserRestriction(java.lang.String, boolean);
     method public deprecated void setUserRestrictions(android.os.Bundle);
     method public deprecated void setUserRestrictions(android.os.Bundle, android.os.UserHandle);
+    method public static boolean supportsMultipleUsers();
     field public static final java.lang.String ALLOW_PARENT_PROFILE_APP_LINKING = "allow_parent_profile_app_linking";
     field public static final java.lang.String DISALLOW_ADD_USER = "no_add_user";
     field public static final java.lang.String DISALLOW_ADJUST_VOLUME = "no_adjust_volume";
@@ -31829,7 +32081,7 @@
     field public static final int MEASUREMENT_BLUETOOTH_TX_MS = 10022; // 0x2726
     field public static final int MEASUREMENT_BLUETOOTH_TX_PACKETS = 10059; // 0x274b
     field public static final int MEASUREMENT_BUTTON_USER_ACTIVITY_COUNT = 10046; // 0x273e
-    field public static final int MEASUREMENT_CPU_POWER_MAUS = 10064; // 0x2750
+    field public static final int MEASUREMENT_CPU_POWER_MAMS = 10064; // 0x2750
     field public static final int MEASUREMENT_MOBILE_IDLE_MS = 10024; // 0x2728
     field public static final int MEASUREMENT_MOBILE_POWER_MAMS = 10027; // 0x272b
     field public static final int MEASUREMENT_MOBILE_RX_BYTES = 10048; // 0x2740
@@ -31841,11 +32093,11 @@
     field public static final int MEASUREMENT_OTHER_USER_ACTIVITY_COUNT = 10045; // 0x273d
     field public static final int MEASUREMENT_REALTIME_BATTERY_MS = 10001; // 0x2711
     field public static final int MEASUREMENT_REALTIME_SCREEN_OFF_BATTERY_MS = 10003; // 0x2713
-    field public static final int MEASUREMENT_SYSTEM_CPU_TIME_US = 10063; // 0x274f
+    field public static final int MEASUREMENT_SYSTEM_CPU_TIME_MS = 10063; // 0x274f
     field public static final int MEASUREMENT_TOUCH_USER_ACTIVITY_COUNT = 10047; // 0x273f
     field public static final int MEASUREMENT_UPTIME_BATTERY_MS = 10002; // 0x2712
     field public static final int MEASUREMENT_UPTIME_SCREEN_OFF_BATTERY_MS = 10004; // 0x2714
-    field public static final int MEASUREMENT_USER_CPU_TIME_US = 10062; // 0x274e
+    field public static final int MEASUREMENT_USER_CPU_TIME_MS = 10062; // 0x274e
     field public static final int MEASUREMENT_WIFI_FULL_LOCK_MS = 10029; // 0x272d
     field public static final int MEASUREMENT_WIFI_IDLE_MS = 10016; // 0x2720
     field public static final int MEASUREMENT_WIFI_MULTICAST_MS = 10031; // 0x272f
@@ -31929,6 +32181,19 @@
 
 }
 
+package android.permissionpresenterservice {
+
+  public abstract class RuntimePermissionPresenterService extends android.app.Service {
+    ctor public RuntimePermissionPresenterService();
+    method public final void attachBaseContext(android.content.Context);
+    method public final android.os.IBinder onBind(android.content.Intent);
+    method public abstract java.util.List<android.content.pm.permission.RuntimePermissionPresentationInfo> onGetAppPermissions(java.lang.String);
+    method public abstract java.util.List<android.content.pm.ApplicationInfo> onGetAppsUsingPermissions(boolean);
+    field public static final java.lang.String SERVICE_INTERFACE = "android.permissionpresenterservice.RuntimePermissionPresenterService";
+  }
+
+}
+
 package android.preference {
 
   public class CheckBoxPreference extends android.preference.TwoStatePreference {
@@ -32635,7 +32900,7 @@
 
 package android.printservice {
 
-  public class CustomPrinterIconCallback {
+  public final class CustomPrinterIconCallback {
     method public boolean onCustomPrinterIconLoaded(android.graphics.drawable.Icon);
   }
 
@@ -32725,6 +32990,7 @@
     method public abstract void onConnected();
     method public abstract void onDisconnected();
     method public final void updateRecommendations(java.util.List<android.printservice.recommendation.RecommendationInfo>);
+    field public static final java.lang.String SERVICE_INTERFACE = "android.printservice.recommendation.RecommendationService";
   }
 
 }
@@ -33078,7 +33344,6 @@
   public static class CallLog.Calls implements android.provider.BaseColumns {
     ctor public CallLog.Calls();
     method public static java.lang.String getLastOutgoingCall(android.content.Context);
-    field public static final int ANSWERED_EXTERNALLY_TYPE = 7; // 0x7
     field public static final int BLOCKED_TYPE = 6; // 0x6
     field public static final java.lang.String CACHED_FORMATTED_NUMBER = "formatted_number";
     field public static final java.lang.String CACHED_LOOKUP_URI = "lookup_uri";
@@ -33101,7 +33366,6 @@
     field public static final java.lang.String DURATION = "duration";
     field public static final java.lang.String EXTRA_CALL_TYPE_FILTER = "android.provider.extra.CALL_TYPE_FILTER";
     field public static final java.lang.String FEATURES = "features";
-    field public static final int FEATURES_PULLED_EXTERNALLY = 2; // 0x2
     field public static final int FEATURES_VIDEO = 1; // 0x1
     field public static final java.lang.String GEOCODED_LOCATION = "geocoded_location";
     field public static final int INCOMING_TYPE = 1; // 0x1
@@ -37116,6 +37380,7 @@
   public abstract class MediaBrowserService extends android.app.Service {
     ctor public MediaBrowserService();
     method public void dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
+    method public final android.os.Bundle getBrowserRootHints();
     method public android.media.session.MediaSession.Token getSessionToken();
     method public void notifyChildrenChanged(java.lang.String);
     method public void notifyChildrenChanged(java.lang.String, android.os.Bundle);
@@ -38647,14 +38912,10 @@
     method public void phoneAccountSelected(android.telecom.PhoneAccountHandle, boolean);
     method public void playDtmfTone(char);
     method public void postDialContinue(boolean);
-    method public void pullExternalCall();
-    method public final void putExtras(android.os.Bundle);
     method public void registerCallback(android.telecom.Call.Callback);
     method public void registerCallback(android.telecom.Call.Callback, android.os.Handler);
     method public void reject(boolean, java.lang.String);
-    method public final void removeExtras(java.util.List<java.lang.String>);
     method public deprecated void removeListener(android.telecom.Call.Listener);
-    method public void sendCallEvent(java.lang.String, android.os.Bundle);
     method public void splitFromConference();
     method public void stopDtmfTone();
     method public void swapConference();
@@ -38669,7 +38930,6 @@
     field public static final int STATE_HOLDING = 3; // 0x3
     field public static final int STATE_NEW = 0; // 0x0
     field public static final deprecated int STATE_PRE_DIAL_WAIT = 8; // 0x8
-    field public static final int STATE_PULLING_CALL = 11; // 0xb
     field public static final int STATE_RINGING = 2; // 0x2
     field public static final int STATE_SELECT_PHONE_ACCOUNT = 8; // 0x8
   }
@@ -38680,7 +38940,6 @@
     method public void onCannedTextResponsesLoaded(android.telecom.Call, java.util.List<java.lang.String>);
     method public void onChildrenChanged(android.telecom.Call, java.util.List<android.telecom.Call>);
     method public void onConferenceableCallsChanged(android.telecom.Call, java.util.List<android.telecom.Call>);
-    method public void onConnectionEvent(android.telecom.Call, java.lang.String, android.os.Bundle);
     method public void onDetailsChanged(android.telecom.Call, android.telecom.Call.Details);
     method public void onParentChanged(android.telecom.Call, android.telecom.Call);
     method public void onPostDialWait(android.telecom.Call, java.lang.String);
@@ -38711,7 +38970,6 @@
     method public static java.lang.String propertiesToString(int);
     field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 4194304; // 0x400000
     field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000
-    field public static final int CAPABILITY_CAN_PULL_CALL = 8388608; // 0x800000
     field public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 8192; // 0x2000
     field public static final int CAPABILITY_HOLD = 1; // 0x1
     field public static final int CAPABILITY_MANAGE_CONFERENCE = 128; // 0x80
@@ -38731,7 +38989,6 @@
     field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 4; // 0x4
     field public static final int PROPERTY_GENERIC_CONFERENCE = 2; // 0x2
     field public static final int PROPERTY_HIGH_DEF_AUDIO = 16; // 0x10
-    field public static final int PROPERTY_IS_EXTERNAL_CALL = 64; // 0x40
     field public static final int PROPERTY_WIFI = 8; // 0x8
     field public static final int PROPERTY_WORK_CALL = 32; // 0x20
   }
@@ -38789,7 +39046,6 @@
     method public final java.util.List<android.telecom.Connection> getConferenceableConnections();
     method public final deprecated long getConnectTimeMillis();
     method public final int getConnectionCapabilities();
-    method public final int getConnectionProperties();
     method public final long getConnectionTime();
     method public final java.util.List<android.telecom.Connection> getConnections();
     method public final android.telecom.DisconnectCause getDisconnectCause();
@@ -38804,7 +39060,6 @@
     method public void onCallAudioStateChanged(android.telecom.CallAudioState);
     method public void onConnectionAdded(android.telecom.Connection);
     method public void onDisconnect();
-    method public void onExtrasChanged(android.os.Bundle);
     method public void onHold();
     method public void onMerge(android.telecom.Connection);
     method public void onMerge();
@@ -38813,18 +39068,15 @@
     method public void onStopDtmfTone();
     method public void onSwap();
     method public void onUnhold();
-    method public final void putExtras(android.os.Bundle);
     method public final void removeConnection(android.telecom.Connection);
-    method public final void removeExtras(java.util.List<java.lang.String>);
     method public final void setActive();
     method public final void setConferenceableConnections(java.util.List<android.telecom.Connection>);
     method public final deprecated void setConnectTimeMillis(long);
     method public final void setConnectionCapabilities(int);
-    method public final void setConnectionProperties(int);
     method public final void setConnectionTime(long);
     method public final void setDialing();
     method public final void setDisconnected(android.telecom.DisconnectCause);
-    method public final deprecated void setExtras(android.os.Bundle);
+    method public final void setExtras(android.os.Bundle);
     method public final void setOnHold();
     method public final void setStatusHints(android.telecom.StatusHints);
     method public final void setVideoProvider(android.telecom.Connection, android.telecom.Connection.VideoProvider);
@@ -38851,7 +39103,6 @@
     method public final android.telecom.Conference getConference();
     method public final java.util.List<android.telecom.Conferenceable> getConferenceables();
     method public final int getConnectionCapabilities();
-    method public final int getConnectionProperties();
     method public final android.telecom.DisconnectCause getDisconnectCause();
     method public final android.os.Bundle getExtras();
     method public final int getState();
@@ -38863,23 +39114,16 @@
     method public void onAnswer();
     method public deprecated void onAudioStateChanged(android.telecom.AudioState);
     method public void onCallAudioStateChanged(android.telecom.CallAudioState);
-    method public void onCallEvent(java.lang.String, android.os.Bundle);
     method public void onDisconnect();
-    method public void onExtrasChanged(android.os.Bundle);
     method public void onHold();
     method public void onPlayDtmfTone(char);
     method public void onPostDialContinue(boolean);
-    method public void onPullExternalCall();
     method public void onReject();
     method public void onReject(java.lang.String);
     method public void onSeparate();
     method public void onStateChanged(int);
     method public void onStopDtmfTone();
     method public void onUnhold();
-    method public static java.lang.String propertiesToString(int);
-    method public final void putExtras(android.os.Bundle);
-    method public final void removeExtras(java.util.List<java.lang.String>);
-    method public void sendConnectionEvent(java.lang.String, android.os.Bundle);
     method public final void setActive();
     method public final void setAddress(android.net.Uri, int);
     method public final void setAudioModeIsVoip(boolean);
@@ -38887,10 +39131,9 @@
     method public final void setConferenceableConnections(java.util.List<android.telecom.Connection>);
     method public final void setConferenceables(java.util.List<android.telecom.Conferenceable>);
     method public final void setConnectionCapabilities(int);
-    method public final void setConnectionProperties(int);
     method public final void setDialing();
     method public final void setDisconnected(android.telecom.DisconnectCause);
-    method public final deprecated void setExtras(android.os.Bundle);
+    method public final void setExtras(android.os.Bundle);
     method public final void setInitialized();
     method public final void setInitializing();
     method public final void setNextPostDialChar(char);
@@ -38904,7 +39147,6 @@
     method public static java.lang.String stateToString(int);
     field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 8388608; // 0x800000
     field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000
-    field public static final int CAPABILITY_CAN_PULL_CALL = 16777216; // 0x1000000
     field public static final int CAPABILITY_CAN_SEND_RESPONSE_VIA_CONNECTION = 4194304; // 0x400000
     field public static final int CAPABILITY_CAN_UPGRADE_TO_VIDEO = 524288; // 0x80000
     field public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 8192; // 0x2000
@@ -38922,18 +39164,15 @@
     field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_TX = 2048; // 0x800
     field public static final int CAPABILITY_SUPPORT_HOLD = 2; // 0x2
     field public static final int CAPABILITY_SWAP_CONFERENCE = 8; // 0x8
-    field public static final java.lang.String EVENT_CALL_PULL_FAILED = "android.telecom.event.CALL_PULL_FAILED";
     field public static final java.lang.String EXTRA_CALL_SUBJECT = "android.telecom.extra.CALL_SUBJECT";
     field public static final java.lang.String EXTRA_CHILD_ADDRESS = "android.telecom.extra.CHILD_ADDRESS";
     field public static final java.lang.String EXTRA_LAST_FORWARDED_NUMBER = "android.telecom.extra.LAST_FORWARDED_NUMBER";
-    field public static final int PROPERTY_IS_EXTERNAL_CALL = 16; // 0x10
     field public static final int STATE_ACTIVE = 4; // 0x4
     field public static final int STATE_DIALING = 3; // 0x3
     field public static final int STATE_DISCONNECTED = 6; // 0x6
     field public static final int STATE_HOLDING = 5; // 0x5
     field public static final int STATE_INITIALIZING = 0; // 0x0
     field public static final int STATE_NEW = 1; // 0x1
-    field public static final int STATE_PULLING_CALL = 7; // 0x7
     field public static final int STATE_RINGING = 2; // 0x2
   }
 
@@ -39011,9 +39250,7 @@
     method public java.lang.String getReason();
     method public int getTone();
     method public void writeToParcel(android.os.Parcel, int);
-    field public static final int ANSWERED_ELSEWHERE = 11; // 0xb
     field public static final int BUSY = 7; // 0x7
-    field public static final int CALL_PULLED = 12; // 0xc
     field public static final int CANCELED = 4; // 0x4
     field public static final int CONNECTION_MANAGER_NOT_SUPPORTED = 10; // 0xa
     field public static final android.os.Parcelable.Creator<android.telecom.DisconnectCause> CREATOR;
@@ -39050,7 +39287,6 @@
     method public void onCallAudioStateChanged(android.telecom.CallAudioState);
     method public void onCallRemoved(android.telecom.Call);
     method public void onCanAddCallChanged(boolean);
-    method public void onConnectionEvent(android.telecom.Call, java.lang.String, android.os.Bundle);
     method public deprecated void onPhoneCreated(android.telecom.Phone);
     method public deprecated void onPhoneDestroyed(android.telecom.Phone);
     method public void onSilenceRinger();
@@ -39228,7 +39464,6 @@
     method public void onConferenceableConnectionsChanged(android.telecom.RemoteConference, java.util.List<android.telecom.RemoteConnection>);
     method public void onConnectionAdded(android.telecom.RemoteConference, android.telecom.RemoteConnection);
     method public void onConnectionCapabilitiesChanged(android.telecom.RemoteConference, int);
-    method public void onConnectionPropertiesChanged(android.telecom.RemoteConference, int);
     method public void onConnectionRemoved(android.telecom.RemoteConference, android.telecom.RemoteConnection);
     method public void onDestroyed(android.telecom.RemoteConference);
     method public void onDisconnected(android.telecom.RemoteConference, android.telecom.DisconnectCause);
@@ -39247,7 +39482,6 @@
     method public android.telecom.RemoteConference getConference();
     method public java.util.List<android.telecom.RemoteConnection> getConferenceableConnections();
     method public int getConnectionCapabilities();
-    method public int getConnectionProperties();
     method public android.telecom.DisconnectCause getDisconnectCause();
     method public final android.os.Bundle getExtras();
     method public int getState();
@@ -39259,7 +39493,6 @@
     method public boolean isVoipAudioMode();
     method public void playDtmfTone(char);
     method public void postDialContinue(boolean);
-    method public void pullExternalCall();
     method public void registerCallback(android.telecom.RemoteConnection.Callback);
     method public void registerCallback(android.telecom.RemoteConnection.Callback, android.os.Handler);
     method public void reject();
@@ -39277,8 +39510,6 @@
     method public void onConferenceChanged(android.telecom.RemoteConnection, android.telecom.RemoteConference);
     method public void onConferenceableConnectionsChanged(android.telecom.RemoteConnection, java.util.List<android.telecom.RemoteConnection>);
     method public void onConnectionCapabilitiesChanged(android.telecom.RemoteConnection, int);
-    method public void onConnectionEvent(android.telecom.RemoteConnection, java.lang.String, android.os.Bundle);
-    method public void onConnectionPropertiesChanged(android.telecom.RemoteConnection, int);
     method public void onDestroyed(android.telecom.RemoteConnection);
     method public void onDisconnected(android.telecom.RemoteConnection, android.telecom.DisconnectCause);
     method public void onExtrasChanged(android.telecom.RemoteConnection, android.os.Bundle);
@@ -39402,7 +39633,6 @@
     field public static final java.lang.String EXTRA_START_CALL_WITH_VIDEO_STATE = "android.telecom.extra.START_CALL_WITH_VIDEO_STATE";
     field public static final java.lang.String GATEWAY_ORIGINAL_ADDRESS = "android.telecom.extra.GATEWAY_ORIGINAL_ADDRESS";
     field public static final java.lang.String GATEWAY_PROVIDER_PACKAGE = "android.telecom.extra.GATEWAY_PROVIDER_PACKAGE";
-    field public static final java.lang.String METADATA_INCLUDE_EXTERNAL_CALLS = "android.telecom.INCLUDE_EXTERNAL_CALLS";
     field public static final java.lang.String METADATA_IN_CALL_SERVICE_RINGING = "android.telecom.IN_CALL_SERVICE_RINGING";
     field public static final java.lang.String METADATA_IN_CALL_SERVICE_UI = "android.telecom.IN_CALL_SERVICE_UI";
     field public static final int PRESENTATION_ALLOWED = 1; // 0x1
@@ -39558,10 +39788,10 @@
     field public static final java.lang.String KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL = "voicemail_notification_persistent_bool";
     field public static final java.lang.String KEY_VOICE_PRIVACY_DISABLE_UI_BOOL = "voice_privacy_disable_ui_bool";
     field public static final java.lang.String KEY_VOLTE_REPLACEMENT_RAT_INT = "volte_replacement_rat_int";
-    field public static final java.lang.String KEY_VVM_CELLULAR_DATA_REQUIRED_BOOLEAN = "vvm_cellular_data_required";
+    field public static final java.lang.String KEY_VVM_CELLULAR_DATA_REQUIRED_BOOL = "vvm_cellular_data_required";
     field public static final java.lang.String KEY_VVM_DESTINATION_NUMBER_STRING = "vvm_destination_number_string";
     field public static final java.lang.String KEY_VVM_PORT_NUMBER_INT = "vvm_port_number_int";
-    field public static final java.lang.String KEY_VVM_PREFETCH_BOOLEAN = "vvm_prefetch";
+    field public static final java.lang.String KEY_VVM_PREFETCH_BOOL = "vvm_prefetch";
     field public static final java.lang.String KEY_VVM_TYPE_STRING = "vvm_type_string";
     field public static final java.lang.String KEY_WORLD_PHONE_BOOL = "world_phone_bool";
   }
@@ -40873,6 +41103,7 @@
     method public android.graphics.drawable.Drawable getDrawable(java.lang.String, int, android.content.pm.ApplicationInfo);
     method public java.util.List<android.content.pm.ApplicationInfo> getInstalledApplications(int);
     method public java.util.List<android.content.pm.PackageInfo> getInstalledPackages(int);
+    method public java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int);
     method public java.lang.String getInstallerPackageName(java.lang.String);
     method public android.content.pm.InstrumentationInfo getInstrumentationInfo(android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException;
     method public android.content.Intent getLaunchIntentForPackage(java.lang.String);
@@ -43614,6 +43845,7 @@
   public abstract class AbsSavedState implements android.os.Parcelable {
     ctor protected AbsSavedState(android.os.Parcelable);
     ctor protected AbsSavedState(android.os.Parcel);
+    ctor protected AbsSavedState(android.os.Parcel, java.lang.ClassLoader);
     method public int describeContents();
     method public final android.os.Parcelable getSuperState();
     method public void writeToParcel(android.os.Parcel, int);
@@ -43762,6 +43994,10 @@
     field public static final android.os.Parcelable.Creator<android.view.Display.Mode> CREATOR;
   }
 
+  public final class DragAndDropPermissions {
+    method public void release();
+  }
+
   public class DragEvent implements android.os.Parcelable {
     method public int describeContents();
     method public int getAction();
@@ -43781,10 +44017,6 @@
     field public static final android.os.Parcelable.Creator<android.view.DragEvent> CREATOR;
   }
 
-  public final class DropPermissions {
-    method public void release();
-  }
-
   public class FocusFinder {
     method public android.view.View findNearestTouchable(android.view.ViewGroup, int, int, int, int[]);
     method public final android.view.View findNextFocus(android.view.ViewGroup, android.view.View, int);
@@ -45730,6 +45962,7 @@
 
   public static class View.BaseSavedState extends android.view.AbsSavedState {
     ctor public View.BaseSavedState(android.os.Parcel);
+    ctor public View.BaseSavedState(android.os.Parcel, java.lang.ClassLoader);
     ctor public View.BaseSavedState(android.os.Parcelable);
     field public static final android.os.Parcelable.Creator<android.view.View.BaseSavedState> CREATOR;
   }
@@ -46318,7 +46551,7 @@
     ctor public Window(android.content.Context);
     method public abstract void addContentView(android.view.View, android.view.ViewGroup.LayoutParams);
     method public void addFlags(int);
-    method public final void addFrameMetricsListener(android.view.Window.FrameMetricsListener, android.os.Handler);
+    method public final void addOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener, android.os.Handler);
     method public void clearFlags(int);
     method public abstract void closeAllPanels();
     method public abstract void closePanel(int);
@@ -46370,7 +46603,7 @@
     method public abstract boolean performContextMenuIdentifierAction(int, int);
     method public abstract boolean performPanelIdentifierAction(int, int, int);
     method public abstract boolean performPanelShortcut(int, int, android.view.KeyEvent, int);
-    method public final void removeFrameMetricsListener(android.view.Window.FrameMetricsListener);
+    method public final void removeOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener);
     method public boolean requestFeature(int);
     method public abstract void restoreHierarchyState(android.os.Bundle);
     method public abstract android.os.Bundle saveHierarchyState();
@@ -46419,6 +46652,7 @@
     method public void setSharedElementsUseOverlay(boolean);
     method public void setSoftInputMode(int);
     method public abstract void setStatusBarColor(int);
+    method public void setSustainedPerformanceMode(boolean);
     method public abstract void setTitle(java.lang.CharSequence);
     method public abstract deprecated void setTitleColor(int);
     method public void setTransitionBackgroundFadeDuration(long);
@@ -46497,8 +46731,8 @@
     method public abstract android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int);
   }
 
-  public static abstract interface Window.FrameMetricsListener {
-    method public abstract void onMetricsAvailable(android.view.Window, android.view.FrameMetrics, int);
+  public static abstract interface Window.OnFrameMetricsAvailableListener {
+    method public abstract void onFrameMetricsAvailable(android.view.Window, android.view.FrameMetrics, int);
   }
 
   public static abstract interface Window.OnRestrictedCaptionAreaChangedListener {
@@ -48727,6 +48961,7 @@
   public final class WebViewDelegate {
     method public void addWebViewAssetPath(android.content.Context);
     method public void callDrawGlFunction(android.graphics.Canvas, long);
+    method public void callDrawGlFunction(android.graphics.Canvas, long, java.lang.Runnable);
     method public boolean canInvokeDrawGlFunctor(android.view.View);
     method public void detachDrawGlFunctor(android.view.View, long);
     method public android.app.Application getApplication();
@@ -49813,6 +50048,7 @@
     ctor public FrameLayout.LayoutParams(android.view.ViewGroup.LayoutParams);
     ctor public FrameLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams);
     ctor public FrameLayout.LayoutParams(android.widget.FrameLayout.LayoutParams);
+    field public static final int UNSPECIFIED_GRAVITY = -1; // 0xffffffff
     field public int gravity;
   }
 
@@ -50607,7 +50843,7 @@
     method public void setChar(int, java.lang.String, char);
     method public void setCharSequence(int, java.lang.String, java.lang.CharSequence);
     method public void setChronometer(int, long, java.lang.String, boolean);
-    method public void setChronometerCountsDown(int, boolean);
+    method public void setChronometerCountDown(int, boolean);
     method public void setContentDescription(int, java.lang.CharSequence);
     method public void setDisplayedChild(int, int);
     method public void setDouble(int, java.lang.String, double);
@@ -53239,6 +53475,8 @@
 
   public abstract interface CharSequence {
     method public abstract char charAt(int);
+    method public default java.util.stream.IntStream chars();
+    method public default java.util.stream.IntStream codePoints();
     method public abstract int length();
     method public abstract java.lang.CharSequence subSequence(int, int);
     method public abstract java.lang.String toString();
@@ -53731,16 +53969,13 @@
     method public static java.lang.Class<?> forName(java.lang.String, boolean, java.lang.ClassLoader) throws java.lang.ClassNotFoundException;
     method public A getAnnotation(java.lang.Class<A>);
     method public java.lang.annotation.Annotation[] getAnnotations();
-    method public T[] getAnnotationsByType(java.lang.Class<T>);
     method public java.lang.String getCanonicalName();
     method public java.lang.ClassLoader getClassLoader();
     method public java.lang.Class<?>[] getClasses();
     method public java.lang.Class<?> getComponentType();
     method public java.lang.reflect.Constructor<T> getConstructor(java.lang.Class<?>...) throws java.lang.NoSuchMethodException, java.lang.SecurityException;
     method public java.lang.reflect.Constructor<?>[] getConstructors() throws java.lang.SecurityException;
-    method public T getDeclaredAnnotation(java.lang.Class<T>);
     method public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
     method public java.lang.Class<?>[] getDeclaredClasses();
     method public java.lang.reflect.Constructor<T> getDeclaredConstructor(java.lang.Class<?>...) throws java.lang.NoSuchMethodException, java.lang.SecurityException;
     method public java.lang.reflect.Constructor<?>[] getDeclaredConstructors() throws java.lang.SecurityException;
@@ -53771,7 +54006,6 @@
     method public java.lang.Class<? super T> getSuperclass();
     method public synchronized java.lang.reflect.TypeVariable<java.lang.Class<T>>[] getTypeParameters();
     method public boolean isAnnotation();
-    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public boolean isAnonymousClass();
     method public boolean isArray();
     method public boolean isAssignableFrom(java.lang.Class<?>);
@@ -54314,10 +54548,10 @@
   public class Package implements java.lang.reflect.AnnotatedElement {
     method public A getAnnotation(java.lang.Class<A>);
     method public java.lang.annotation.Annotation[] getAnnotations();
-    method public T[] getAnnotationsByType(java.lang.Class<T>);
-    method public java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
+    method public A[] getAnnotationsByType(java.lang.Class<A>);
+    method public A getDeclaredAnnotation(java.lang.Class<A>);
     method public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
+    method public A[] getDeclaredAnnotationsByType(java.lang.Class<A>);
     method public java.lang.String getImplementationTitle();
     method public java.lang.String getImplementationVendor();
     method public java.lang.String getImplementationVersion();
@@ -54327,7 +54561,6 @@
     method public java.lang.String getSpecificationTitle();
     method public java.lang.String getSpecificationVendor();
     method public java.lang.String getSpecificationVersion();
-    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public boolean isCompatibleWith(java.lang.String) throws java.lang.NumberFormatException;
     method public boolean isSealed();
     method public boolean isSealed(java.net.URL);
@@ -54996,12 +55229,8 @@
     ctor protected AccessibleObject();
     method public T getAnnotation(java.lang.Class<T>);
     method public java.lang.annotation.Annotation[] getAnnotations();
-    method public T[] getAnnotationsByType(java.lang.Class<T>);
-    method public java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
     method public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
     method public boolean isAccessible();
-    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public static void setAccessible(java.lang.reflect.AccessibleObject[], boolean) throws java.lang.SecurityException;
     method public void setAccessible(boolean) throws java.lang.SecurityException;
   }
@@ -55009,11 +55238,11 @@
   public abstract interface AnnotatedElement {
     method public abstract T getAnnotation(java.lang.Class<T>);
     method public abstract java.lang.annotation.Annotation[] getAnnotations();
-    method public abstract T[] getAnnotationsByType(java.lang.Class<T>);
-    method public abstract java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
+    method public default T[] getAnnotationsByType(java.lang.Class<T>);
+    method public default java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
     method public abstract java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public abstract T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
-    method public abstract boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
+    method public default T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
+    method public default boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
   }
 
   public final class Array {
@@ -55076,6 +55305,7 @@
     method public java.lang.String getName();
     method public short getShort(java.lang.Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
     method public java.lang.Class<?> getType();
+    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public boolean isEnumConstant();
     method public boolean isSynthetic();
     method public void set(java.lang.Object, java.lang.Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
@@ -56343,6 +56573,7 @@
     method public final int arrayOffset();
     method public abstract java.nio.CharBuffer asReadOnlyBuffer();
     method public final char charAt(int);
+    method public java.util.stream.IntStream chars();
     method public abstract java.nio.CharBuffer compact();
     method public int compareTo(java.nio.CharBuffer);
     method public abstract java.nio.CharBuffer duplicate();
@@ -61235,6 +61466,7 @@
     method public java.lang.Object clone();
     method public java.util.Set<java.util.Map.Entry<K, V>> entrySet();
     method public void forEach(java.util.function.BiConsumer<? super K, ? super V>);
+    method public void replaceAll(java.util.function.BiFunction<? super K, ? super V, ? extends V>);
   }
 
   public class IllegalFormatCodePointException extends java.util.IllegalFormatException {
@@ -62217,6 +62449,8 @@
     method public java.util.NavigableSet<K> navigableKeySet();
     method public java.util.Map.Entry<K, V> pollFirstEntry();
     method public java.util.Map.Entry<K, V> pollLastEntry();
+    method public boolean replace(K, V, V);
+    method public V replace(K, V);
     method public void replaceAll(java.util.function.BiFunction<? super K, ? super V, ? extends V>);
     method public java.util.NavigableMap<K, V> subMap(K, boolean, K, boolean);
     method public java.util.SortedMap<K, V> subMap(K, K);
diff --git a/api/system-removed.txt b/api/system-removed.txt
index 95734c1..844604c 100644
--- a/api/system-removed.txt
+++ b/api/system-removed.txt
@@ -163,6 +163,31 @@
 
 }
 
+package android.mtp {
+
+  public final class MtpConstants {
+    field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001
+    field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d
+    field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008
+    field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006
+    field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b
+    field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002
+    field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007
+    field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801
+    field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802
+    field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803
+    field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003
+    field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009
+    field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c
+    field public static final int EVENT_STORE_ADDED = 16388; // 0x4004
+    field public static final int EVENT_STORE_FULL = 16394; // 0x400a
+    field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005
+    field public static final int EVENT_UNDEFINED = 16384; // 0x4000
+    field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e
+  }
+
+}
+
 package android.net {
 
   public class SSLCertificateSocketFactory extends javax.net.ssl.SSLSocketFactory {
diff --git a/api/test-current.txt b/api/test-current.txt
index 0c86fd1..5dc6d51 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -71,7 +71,6 @@
     field public static final java.lang.String GET_ACCOUNTS = "android.permission.GET_ACCOUNTS";
     field public static final java.lang.String GET_ACCOUNTS_PRIVILEGED = "android.permission.GET_ACCOUNTS_PRIVILEGED";
     field public static final java.lang.String GET_PACKAGE_SIZE = "android.permission.GET_PACKAGE_SIZE";
-    field public static final java.lang.String GET_PASSWORD_PRIVILEGED = "android.permission.GET_PASSWORD_PRIVILEGED";
     field public static final deprecated java.lang.String GET_TASKS = "android.permission.GET_TASKS";
     field public static final java.lang.String GLOBAL_SEARCH = "android.permission.GLOBAL_SEARCH";
     field public static final java.lang.String INSTALL_LOCATION_PROVIDER = "android.permission.INSTALL_LOCATION_PROVIDER";
@@ -3424,6 +3423,7 @@
     method public void closeOptionsMenu();
     method public android.app.PendingIntent createPendingResult(int, android.content.Intent, int);
     method public final deprecated void dismissDialog(int);
+    method public final void dismissKeyboardShortcutsHelper();
     method public boolean dispatchGenericMotionEvent(android.view.MotionEvent);
     method public boolean dispatchKeyEvent(android.view.KeyEvent);
     method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent);
@@ -3580,7 +3580,7 @@
     method public boolean releaseInstance();
     method public final deprecated void removeDialog(int);
     method public void reportFullyDrawn();
-    method public android.view.DropPermissions requestDropPermissions(android.view.DragEvent);
+    method public android.view.DragAndDropPermissions requestDragAndDropPermissions(android.view.DragEvent);
     method public final void requestKeyboardShortcutsHelper();
     method public final void requestPermissions(java.lang.String[], int);
     method public boolean requestVisibleBehind(boolean);
@@ -4359,6 +4359,8 @@
     method public android.app.DownloadManager.Request setDestinationUri(android.net.Uri);
     method public android.app.DownloadManager.Request setMimeType(java.lang.String);
     method public android.app.DownloadManager.Request setNotificationVisibility(int);
+    method public android.app.DownloadManager.Request setRequiresCharging(boolean);
+    method public android.app.DownloadManager.Request setRequiresDeviceIdle(boolean);
     method public deprecated android.app.DownloadManager.Request setShowRunningNotification(boolean);
     method public android.app.DownloadManager.Request setTitle(java.lang.CharSequence);
     method public android.app.DownloadManager.Request setVisibleInDownloadsUi(boolean);
@@ -4926,6 +4928,7 @@
     field public static final java.lang.String EXTRA_BIG_TEXT = "android.bigText";
     field public static final java.lang.String EXTRA_CHRONOMETER_COUNTS_DOWN = "android.chronometerCountsDown";
     field public static final java.lang.String EXTRA_COMPACT_ACTIONS = "android.compactActions";
+    field public static final java.lang.String EXTRA_CONVERSATION_TITLE = "android.conversationTitle";
     field public static final java.lang.String EXTRA_INFO_TEXT = "android.infoText";
     field public static final java.lang.String EXTRA_LARGE_ICON = "android.largeIcon";
     field public static final java.lang.String EXTRA_LARGE_ICON_BIG = "android.largeIcon.big";
@@ -4946,7 +4949,6 @@
     field public static final java.lang.String EXTRA_TEMPLATE = "android.template";
     field public static final java.lang.String EXTRA_TEXT = "android.text";
     field public static final java.lang.String EXTRA_TEXT_LINES = "android.textLines";
-    field public static final java.lang.String EXTRA_THREAD_TITLE = "android.threadTitle";
     field public static final java.lang.String EXTRA_TITLE = "android.title";
     field public static final java.lang.String EXTRA_TITLE_BIG = "android.title.big";
     field public static final int FLAG_AUTO_CANCEL = 16; // 0x10
@@ -5199,17 +5201,14 @@
     field public static final int MAXIMUM_RETAINED_MESSAGES = 25; // 0x19
   }
 
-  public static final class Notification.MessagingStyle.Message implements android.os.Parcelable {
+  public static final class Notification.MessagingStyle.Message {
     ctor public Notification.MessagingStyle.Message(java.lang.CharSequence, long, java.lang.CharSequence);
-    method public int describeContents();
     method public java.lang.String getDataMimeType();
     method public android.net.Uri getDataUri();
     method public java.lang.CharSequence getSender();
     method public java.lang.CharSequence getText();
     method public long getTimestamp();
     method public android.app.Notification.MessagingStyle.Message setData(java.lang.String, android.net.Uri);
-    method public void writeToParcel(android.os.Parcel, int);
-    field public static final android.os.Parcelable.Creator<android.app.Notification.MessagingStyle.Message> CREATOR;
   }
 
   public static abstract class Notification.Style {
@@ -5244,6 +5243,7 @@
     method public int getCustomSizePreset();
     method public android.app.PendingIntent getDisplayIntent();
     method public int getGravity();
+    method public boolean getHintAmbientBigPicture();
     method public boolean getHintAvoidBackgroundClipping();
     method public boolean getHintContentIntentLaunchesActivity();
     method public boolean getHintHideIcon();
@@ -5260,6 +5260,7 @@
     method public android.app.Notification.WearableExtender setCustomSizePreset(int);
     method public android.app.Notification.WearableExtender setDisplayIntent(android.app.PendingIntent);
     method public android.app.Notification.WearableExtender setGravity(int);
+    method public android.app.Notification.WearableExtender setHintAmbientBigPicture(boolean);
     method public android.app.Notification.WearableExtender setHintAvoidBackgroundClipping(boolean);
     method public android.app.Notification.WearableExtender setHintContentIntentLaunchesActivity(boolean);
     method public android.app.Notification.WearableExtender setHintHideIcon(boolean);
@@ -5554,6 +5555,7 @@
     method public boolean onUnbind(android.content.Intent);
     method public final void startForeground(int, android.app.Notification);
     method public final void stopForeground(boolean);
+    method public final void stopForeground(int);
     method public final void stopSelf();
     method public final void stopSelf(int);
     method public final boolean stopSelfResult(int);
@@ -5564,6 +5566,8 @@
     field public static final int START_REDELIVER_INTENT = 3; // 0x3
     field public static final int START_STICKY = 1; // 0x1
     field public static final int START_STICKY_COMPATIBILITY = 0; // 0x0
+    field public static final int STOP_FOREGROUND_DETACH = 2; // 0x2
+    field public static final int STOP_FOREGROUND_REMOVE = 1; // 0x1
   }
 
   public abstract class SharedElementCallback {
@@ -6337,6 +6341,7 @@
     field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L
     field public static final int NETWORK_TYPE_ANY = 1; // 0x1
     field public static final int NETWORK_TYPE_NONE = 0; // 0x0
+    field public static final int NETWORK_TYPE_NOT_ROAMING = 3; // 0x3
     field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2
   }
 
@@ -6384,6 +6389,7 @@
     method public abstract void cancel(int);
     method public abstract void cancelAll();
     method public abstract java.util.List<android.app.job.JobInfo> getAllPendingJobs();
+    method public abstract android.app.job.JobInfo getPendingJob(int);
     method public abstract int schedule(android.app.job.JobInfo);
     field public static final int RESULT_FAILURE = 0; // 0x0
     field public static final int RESULT_SUCCESS = 1; // 0x1
@@ -10061,7 +10067,7 @@
   public final class ShortcutInfo implements android.os.Parcelable {
     method public int describeContents();
     method public android.content.ComponentName getActivityComponent();
-    method public java.util.List<java.lang.String> getCategories();
+    method public java.util.Set<java.lang.String> getCategories();
     method public android.os.PersistableBundle getExtras();
     method public int getIconResourceId();
     method public java.lang.String getId();
@@ -10094,7 +10100,7 @@
     ctor public ShortcutInfo.Builder(android.content.Context);
     method public android.content.pm.ShortcutInfo build();
     method public android.content.pm.ShortcutInfo.Builder setActivityComponent(android.content.ComponentName);
-    method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.List<java.lang.String>);
+    method public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>);
     method public android.content.pm.ShortcutInfo.Builder setExtras(android.os.PersistableBundle);
     method public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon);
     method public android.content.pm.ShortcutInfo.Builder setId(java.lang.String);
@@ -20328,9 +20334,9 @@
     field public static final java.lang.String TAG_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange";
     field public static final java.lang.String TAG_SUBJECT_LOCATION = "SubjectLocation";
     field public static final java.lang.String TAG_SUBSEC_TIME = "SubSecTime";
-    field public static final java.lang.String TAG_SUBSEC_TIME_DIG = "SubSecTimeDigitized";
+    field public static final deprecated java.lang.String TAG_SUBSEC_TIME_DIG = "SubSecTimeDigitized";
     field public static final java.lang.String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized";
-    field public static final java.lang.String TAG_SUBSEC_TIME_ORIG = "SubSecTimeOriginal";
+    field public static final deprecated java.lang.String TAG_SUBSEC_TIME_ORIG = "SubSecTimeOriginal";
     field public static final java.lang.String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal";
     field public static final java.lang.String TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength";
     field public static final java.lang.String TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth";
@@ -23089,6 +23095,7 @@
     method public boolean isRatingBlocked(android.media.tv.TvContentRating);
     method public void registerCallback(android.media.tv.TvInputManager.TvInputCallback, android.os.Handler);
     method public void unregisterCallback(android.media.tv.TvInputManager.TvInputCallback);
+    method public void updateTvInputInfo(android.media.tv.TvInputInfo);
     field public static final java.lang.String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED";
     field public static final java.lang.String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED";
     field public static final java.lang.String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS";
@@ -23126,7 +23133,6 @@
     method public final android.os.IBinder onBind(android.content.Intent);
     method public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(java.lang.String);
     method public abstract android.media.tv.TvInputService.Session onCreateSession(java.lang.String);
-    method public static final void updateTvInputInfo(android.content.Context, android.media.tv.TvInputInfo);
     field public static final java.lang.String SERVICE_INTERFACE = "android.media.tv.TvInputService";
     field public static final java.lang.String SERVICE_META_DATA = "android.media.tv.input";
   }
@@ -23308,24 +23314,6 @@
     ctor public MtpConstants();
     method public static boolean isAbstractObject(int);
     field public static final int ASSOCIATION_TYPE_GENERIC_FOLDER = 1; // 0x1
-    field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001
-    field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d
-    field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008
-    field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006
-    field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b
-    field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002
-    field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007
-    field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801
-    field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802
-    field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803
-    field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003
-    field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009
-    field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c
-    field public static final int EVENT_STORE_ADDED = 16388; // 0x4004
-    field public static final int EVENT_STORE_FULL = 16394; // 0x400a
-    field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005
-    field public static final int EVENT_UNDEFINED = 16384; // 0x4000
-    field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e
     field public static final int FORMAT_3GP_CONTAINER = 47492; // 0xb984
     field public static final int FORMAT_AAC = 47363; // 0xb903
     field public static final int FORMAT_ABSTRACT_AUDIO_ALBUM = 47619; // 0xba03
@@ -23446,7 +23434,7 @@
     method public boolean importFile(int, java.lang.String);
     method public boolean importFile(int, android.os.ParcelFileDescriptor);
     method public boolean open(android.hardware.usb.UsbDeviceConnection);
-    method public android.mtp.MtpEvent readEvent(android.os.CancellationSignal);
+    method public android.mtp.MtpEvent readEvent(android.os.CancellationSignal) throws java.io.IOException;
     method public boolean sendObject(int, long, android.os.ParcelFileDescriptor);
     method public android.mtp.MtpObjectInfo sendObjectInfo(android.mtp.MtpObjectInfo);
   }
@@ -23458,10 +23446,11 @@
     method public final int[] getOperationsSupported();
     method public final java.lang.String getSerialNumber();
     method public final java.lang.String getVersion();
+    method public boolean isEventSupported(int);
+    method public boolean isOperationSupported(int);
   }
 
   public class MtpEvent {
-    ctor public MtpEvent();
     method public int getDevicePropCode();
     method public int getEventCode();
     method public int getObjectFormatCode();
@@ -23472,6 +23461,24 @@
     method public int getParameter3();
     method public int getStorageId();
     method public int getTransactionId();
+    field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001
+    field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d
+    field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008
+    field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006
+    field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b
+    field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002
+    field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007
+    field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801
+    field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802
+    field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803
+    field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003
+    field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009
+    field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c
+    field public static final int EVENT_STORE_ADDED = 16388; // 0x4004
+    field public static final int EVENT_STORE_FULL = 16394; // 0x400a
+    field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005
+    field public static final int EVENT_UNDEFINED = 16384; // 0x4000
+    field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e
   }
 
   public final class MtpObjectInfo {
@@ -23822,8 +23829,10 @@
     method public boolean isConnected();
     method public boolean isConnectedOrConnecting();
     method public boolean isFailover();
+    method public boolean isMetered();
     method public boolean isRoaming();
     method public void writeToParcel(android.os.Parcel, int);
+    field public static final android.os.Parcelable.Creator<android.net.NetworkInfo> CREATOR;
   }
 
   public static final class NetworkInfo.DetailedState extends java.lang.Enum {
@@ -29211,7 +29220,6 @@
     field public static final int RELEASE_FLAG_WAIT_FOR_NO_PROXIMITY = 1; // 0x1
     field public static final deprecated int SCREEN_BRIGHT_WAKE_LOCK = 10; // 0xa
     field public static final deprecated int SCREEN_DIM_WAKE_LOCK = 6; // 0x6
-    field public static final int SUSTAINED_PERFORMANCE_WAKE_LOCK = 256; // 0x100
   }
 
   public final class PowerManager.WakeLock {
@@ -29446,6 +29454,7 @@
     method public deprecated void setUserRestriction(java.lang.String, boolean);
     method public deprecated void setUserRestrictions(android.os.Bundle);
     method public deprecated void setUserRestrictions(android.os.Bundle, android.os.UserHandle);
+    method public static boolean supportsMultipleUsers();
     field public static final java.lang.String ALLOW_PARENT_PROFILE_APP_LINKING = "allow_parent_profile_app_linking";
     field public static final java.lang.String DISALLOW_ADD_USER = "no_add_user";
     field public static final java.lang.String DISALLOW_ADJUST_VOLUME = "no_adjust_volume";
@@ -29592,7 +29601,7 @@
     field public static final int MEASUREMENT_BLUETOOTH_TX_MS = 10022; // 0x2726
     field public static final int MEASUREMENT_BLUETOOTH_TX_PACKETS = 10059; // 0x274b
     field public static final int MEASUREMENT_BUTTON_USER_ACTIVITY_COUNT = 10046; // 0x273e
-    field public static final int MEASUREMENT_CPU_POWER_MAUS = 10064; // 0x2750
+    field public static final int MEASUREMENT_CPU_POWER_MAMS = 10064; // 0x2750
     field public static final int MEASUREMENT_MOBILE_IDLE_MS = 10024; // 0x2728
     field public static final int MEASUREMENT_MOBILE_POWER_MAMS = 10027; // 0x272b
     field public static final int MEASUREMENT_MOBILE_RX_BYTES = 10048; // 0x2740
@@ -29604,11 +29613,11 @@
     field public static final int MEASUREMENT_OTHER_USER_ACTIVITY_COUNT = 10045; // 0x273d
     field public static final int MEASUREMENT_REALTIME_BATTERY_MS = 10001; // 0x2711
     field public static final int MEASUREMENT_REALTIME_SCREEN_OFF_BATTERY_MS = 10003; // 0x2713
-    field public static final int MEASUREMENT_SYSTEM_CPU_TIME_US = 10063; // 0x274f
+    field public static final int MEASUREMENT_SYSTEM_CPU_TIME_MS = 10063; // 0x274f
     field public static final int MEASUREMENT_TOUCH_USER_ACTIVITY_COUNT = 10047; // 0x273f
     field public static final int MEASUREMENT_UPTIME_BATTERY_MS = 10002; // 0x2712
     field public static final int MEASUREMENT_UPTIME_SCREEN_OFF_BATTERY_MS = 10004; // 0x2714
-    field public static final int MEASUREMENT_USER_CPU_TIME_US = 10062; // 0x274e
+    field public static final int MEASUREMENT_USER_CPU_TIME_MS = 10062; // 0x274e
     field public static final int MEASUREMENT_WIFI_FULL_LOCK_MS = 10029; // 0x272d
     field public static final int MEASUREMENT_WIFI_IDLE_MS = 10016; // 0x2720
     field public static final int MEASUREMENT_WIFI_MULTICAST_MS = 10031; // 0x272f
@@ -30399,7 +30408,7 @@
 
 package android.printservice {
 
-  public class CustomPrinterIconCallback {
+  public final class CustomPrinterIconCallback {
     method public boolean onCustomPrinterIconLoaded(android.graphics.drawable.Icon);
   }
 
@@ -30819,7 +30828,6 @@
   public static class CallLog.Calls implements android.provider.BaseColumns {
     ctor public CallLog.Calls();
     method public static java.lang.String getLastOutgoingCall(android.content.Context);
-    field public static final int ANSWERED_EXTERNALLY_TYPE = 7; // 0x7
     field public static final int BLOCKED_TYPE = 6; // 0x6
     field public static final java.lang.String CACHED_FORMATTED_NUMBER = "formatted_number";
     field public static final java.lang.String CACHED_LOOKUP_URI = "lookup_uri";
@@ -30842,7 +30850,6 @@
     field public static final java.lang.String DURATION = "duration";
     field public static final java.lang.String EXTRA_CALL_TYPE_FILTER = "android.provider.extra.CALL_TYPE_FILTER";
     field public static final java.lang.String FEATURES = "features";
-    field public static final int FEATURES_PULLED_EXTERNALLY = 2; // 0x2
     field public static final int FEATURES_VIDEO = 1; // 0x1
     field public static final java.lang.String GEOCODED_LOCATION = "geocoded_location";
     field public static final int INCOMING_TYPE = 1; // 0x1
@@ -34725,6 +34732,7 @@
   public abstract class MediaBrowserService extends android.app.Service {
     ctor public MediaBrowserService();
     method public void dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
+    method public final android.os.Bundle getBrowserRootHints();
     method public android.media.session.MediaSession.Token getSessionToken();
     method public void notifyChildrenChanged(java.lang.String);
     method public void notifyChildrenChanged(java.lang.String, android.os.Bundle);
@@ -36129,13 +36137,9 @@
     method public void phoneAccountSelected(android.telecom.PhoneAccountHandle, boolean);
     method public void playDtmfTone(char);
     method public void postDialContinue(boolean);
-    method public void pullExternalCall();
-    method public final void putExtras(android.os.Bundle);
     method public void registerCallback(android.telecom.Call.Callback);
     method public void registerCallback(android.telecom.Call.Callback, android.os.Handler);
     method public void reject(boolean, java.lang.String);
-    method public final void removeExtras(java.util.List<java.lang.String>);
-    method public void sendCallEvent(java.lang.String, android.os.Bundle);
     method public void splitFromConference();
     method public void stopDtmfTone();
     method public void swapConference();
@@ -36149,7 +36153,6 @@
     field public static final int STATE_DISCONNECTING = 10; // 0xa
     field public static final int STATE_HOLDING = 3; // 0x3
     field public static final int STATE_NEW = 0; // 0x0
-    field public static final int STATE_PULLING_CALL = 11; // 0xb
     field public static final int STATE_RINGING = 2; // 0x2
     field public static final int STATE_SELECT_PHONE_ACCOUNT = 8; // 0x8
   }
@@ -36160,7 +36163,6 @@
     method public void onCannedTextResponsesLoaded(android.telecom.Call, java.util.List<java.lang.String>);
     method public void onChildrenChanged(android.telecom.Call, java.util.List<android.telecom.Call>);
     method public void onConferenceableCallsChanged(android.telecom.Call, java.util.List<android.telecom.Call>);
-    method public void onConnectionEvent(android.telecom.Call, java.lang.String, android.os.Bundle);
     method public void onDetailsChanged(android.telecom.Call, android.telecom.Call.Details);
     method public void onParentChanged(android.telecom.Call, android.telecom.Call);
     method public void onPostDialWait(android.telecom.Call, java.lang.String);
@@ -36191,7 +36193,6 @@
     method public static java.lang.String propertiesToString(int);
     field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 4194304; // 0x400000
     field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000
-    field public static final int CAPABILITY_CAN_PULL_CALL = 8388608; // 0x800000
     field public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 8192; // 0x2000
     field public static final int CAPABILITY_HOLD = 1; // 0x1
     field public static final int CAPABILITY_MANAGE_CONFERENCE = 128; // 0x80
@@ -36211,7 +36212,6 @@
     field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 4; // 0x4
     field public static final int PROPERTY_GENERIC_CONFERENCE = 2; // 0x2
     field public static final int PROPERTY_HIGH_DEF_AUDIO = 16; // 0x10
-    field public static final int PROPERTY_IS_EXTERNAL_CALL = 64; // 0x40
     field public static final int PROPERTY_WIFI = 8; // 0x8
     field public static final int PROPERTY_WORK_CALL = 32; // 0x20
   }
@@ -36263,7 +36263,6 @@
     method public final android.telecom.CallAudioState getCallAudioState();
     method public final java.util.List<android.telecom.Connection> getConferenceableConnections();
     method public final int getConnectionCapabilities();
-    method public final int getConnectionProperties();
     method public final long getConnectionTime();
     method public final java.util.List<android.telecom.Connection> getConnections();
     method public final android.telecom.DisconnectCause getDisconnectCause();
@@ -36276,7 +36275,6 @@
     method public void onCallAudioStateChanged(android.telecom.CallAudioState);
     method public void onConnectionAdded(android.telecom.Connection);
     method public void onDisconnect();
-    method public void onExtrasChanged(android.os.Bundle);
     method public void onHold();
     method public void onMerge(android.telecom.Connection);
     method public void onMerge();
@@ -36285,17 +36283,14 @@
     method public void onStopDtmfTone();
     method public void onSwap();
     method public void onUnhold();
-    method public final void putExtras(android.os.Bundle);
     method public final void removeConnection(android.telecom.Connection);
-    method public final void removeExtras(java.util.List<java.lang.String>);
     method public final void setActive();
     method public final void setConferenceableConnections(java.util.List<android.telecom.Connection>);
     method public final void setConnectionCapabilities(int);
-    method public final void setConnectionProperties(int);
     method public final void setConnectionTime(long);
     method public final void setDialing();
     method public final void setDisconnected(android.telecom.DisconnectCause);
-    method public final deprecated void setExtras(android.os.Bundle);
+    method public final void setExtras(android.os.Bundle);
     method public final void setOnHold();
     method public final void setStatusHints(android.telecom.StatusHints);
     method public final void setVideoProvider(android.telecom.Connection, android.telecom.Connection.VideoProvider);
@@ -36321,7 +36316,6 @@
     method public final android.telecom.Conference getConference();
     method public final java.util.List<android.telecom.Conferenceable> getConferenceables();
     method public final int getConnectionCapabilities();
-    method public final int getConnectionProperties();
     method public final android.telecom.DisconnectCause getDisconnectCause();
     method public final android.os.Bundle getExtras();
     method public final int getState();
@@ -36332,23 +36326,16 @@
     method public void onAnswer(int);
     method public void onAnswer();
     method public void onCallAudioStateChanged(android.telecom.CallAudioState);
-    method public void onCallEvent(java.lang.String, android.os.Bundle);
     method public void onDisconnect();
-    method public void onExtrasChanged(android.os.Bundle);
     method public void onHold();
     method public void onPlayDtmfTone(char);
     method public void onPostDialContinue(boolean);
-    method public void onPullExternalCall();
     method public void onReject();
     method public void onReject(java.lang.String);
     method public void onSeparate();
     method public void onStateChanged(int);
     method public void onStopDtmfTone();
     method public void onUnhold();
-    method public static java.lang.String propertiesToString(int);
-    method public final void putExtras(android.os.Bundle);
-    method public final void removeExtras(java.util.List<java.lang.String>);
-    method public void sendConnectionEvent(java.lang.String, android.os.Bundle);
     method public final void setActive();
     method public final void setAddress(android.net.Uri, int);
     method public final void setAudioModeIsVoip(boolean);
@@ -36356,10 +36343,9 @@
     method public final void setConferenceableConnections(java.util.List<android.telecom.Connection>);
     method public final void setConferenceables(java.util.List<android.telecom.Conferenceable>);
     method public final void setConnectionCapabilities(int);
-    method public final void setConnectionProperties(int);
     method public final void setDialing();
     method public final void setDisconnected(android.telecom.DisconnectCause);
-    method public final deprecated void setExtras(android.os.Bundle);
+    method public final void setExtras(android.os.Bundle);
     method public final void setInitialized();
     method public final void setInitializing();
     method public final void setNextPostDialChar(char);
@@ -36373,7 +36359,6 @@
     method public static java.lang.String stateToString(int);
     field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 8388608; // 0x800000
     field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000
-    field public static final int CAPABILITY_CAN_PULL_CALL = 16777216; // 0x1000000
     field public static final int CAPABILITY_CAN_SEND_RESPONSE_VIA_CONNECTION = 4194304; // 0x400000
     field public static final int CAPABILITY_CAN_UPGRADE_TO_VIDEO = 524288; // 0x80000
     field public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 8192; // 0x2000
@@ -36391,18 +36376,15 @@
     field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_TX = 2048; // 0x800
     field public static final int CAPABILITY_SUPPORT_HOLD = 2; // 0x2
     field public static final int CAPABILITY_SWAP_CONFERENCE = 8; // 0x8
-    field public static final java.lang.String EVENT_CALL_PULL_FAILED = "android.telecom.event.CALL_PULL_FAILED";
     field public static final java.lang.String EXTRA_CALL_SUBJECT = "android.telecom.extra.CALL_SUBJECT";
     field public static final java.lang.String EXTRA_CHILD_ADDRESS = "android.telecom.extra.CHILD_ADDRESS";
     field public static final java.lang.String EXTRA_LAST_FORWARDED_NUMBER = "android.telecom.extra.LAST_FORWARDED_NUMBER";
-    field public static final int PROPERTY_IS_EXTERNAL_CALL = 16; // 0x10
     field public static final int STATE_ACTIVE = 4; // 0x4
     field public static final int STATE_DIALING = 3; // 0x3
     field public static final int STATE_DISCONNECTED = 6; // 0x6
     field public static final int STATE_HOLDING = 5; // 0x5
     field public static final int STATE_INITIALIZING = 0; // 0x0
     field public static final int STATE_NEW = 1; // 0x1
-    field public static final int STATE_PULLING_CALL = 7; // 0x7
     field public static final int STATE_RINGING = 2; // 0x2
   }
 
@@ -36480,9 +36462,7 @@
     method public java.lang.String getReason();
     method public int getTone();
     method public void writeToParcel(android.os.Parcel, int);
-    field public static final int ANSWERED_ELSEWHERE = 11; // 0xb
     field public static final int BUSY = 7; // 0x7
-    field public static final int CALL_PULLED = 12; // 0xc
     field public static final int CANCELED = 4; // 0x4
     field public static final int CONNECTION_MANAGER_NOT_SUPPORTED = 10; // 0xa
     field public static final android.os.Parcelable.Creator<android.telecom.DisconnectCause> CREATOR;
@@ -36518,7 +36498,6 @@
     method public void onCallAudioStateChanged(android.telecom.CallAudioState);
     method public void onCallRemoved(android.telecom.Call);
     method public void onCanAddCallChanged(boolean);
-    method public void onConnectionEvent(android.telecom.Call, java.lang.String, android.os.Bundle);
     method public void onSilenceRinger();
     method public final void setAudioRoute(int);
     method public final void setMuted(boolean);
@@ -36641,7 +36620,6 @@
     method public void onConferenceableConnectionsChanged(android.telecom.RemoteConference, java.util.List<android.telecom.RemoteConnection>);
     method public void onConnectionAdded(android.telecom.RemoteConference, android.telecom.RemoteConnection);
     method public void onConnectionCapabilitiesChanged(android.telecom.RemoteConference, int);
-    method public void onConnectionPropertiesChanged(android.telecom.RemoteConference, int);
     method public void onConnectionRemoved(android.telecom.RemoteConference, android.telecom.RemoteConnection);
     method public void onDestroyed(android.telecom.RemoteConference);
     method public void onDisconnected(android.telecom.RemoteConference, android.telecom.DisconnectCause);
@@ -36660,7 +36638,6 @@
     method public android.telecom.RemoteConference getConference();
     method public java.util.List<android.telecom.RemoteConnection> getConferenceableConnections();
     method public int getConnectionCapabilities();
-    method public int getConnectionProperties();
     method public android.telecom.DisconnectCause getDisconnectCause();
     method public final android.os.Bundle getExtras();
     method public int getState();
@@ -36672,7 +36649,6 @@
     method public boolean isVoipAudioMode();
     method public void playDtmfTone(char);
     method public void postDialContinue(boolean);
-    method public void pullExternalCall();
     method public void registerCallback(android.telecom.RemoteConnection.Callback);
     method public void registerCallback(android.telecom.RemoteConnection.Callback, android.os.Handler);
     method public void reject();
@@ -36689,8 +36665,6 @@
     method public void onConferenceChanged(android.telecom.RemoteConnection, android.telecom.RemoteConference);
     method public void onConferenceableConnectionsChanged(android.telecom.RemoteConnection, java.util.List<android.telecom.RemoteConnection>);
     method public void onConnectionCapabilitiesChanged(android.telecom.RemoteConnection, int);
-    method public void onConnectionEvent(android.telecom.RemoteConnection, java.lang.String, android.os.Bundle);
-    method public void onConnectionPropertiesChanged(android.telecom.RemoteConnection, int);
     method public void onDestroyed(android.telecom.RemoteConnection);
     method public void onDisconnected(android.telecom.RemoteConnection, android.telecom.DisconnectCause);
     method public void onExtrasChanged(android.telecom.RemoteConnection, android.os.Bundle);
@@ -36787,7 +36761,6 @@
     field public static final java.lang.String EXTRA_START_CALL_WITH_VIDEO_STATE = "android.telecom.extra.START_CALL_WITH_VIDEO_STATE";
     field public static final java.lang.String GATEWAY_ORIGINAL_ADDRESS = "android.telecom.extra.GATEWAY_ORIGINAL_ADDRESS";
     field public static final java.lang.String GATEWAY_PROVIDER_PACKAGE = "android.telecom.extra.GATEWAY_PROVIDER_PACKAGE";
-    field public static final java.lang.String METADATA_INCLUDE_EXTERNAL_CALLS = "android.telecom.INCLUDE_EXTERNAL_CALLS";
     field public static final java.lang.String METADATA_IN_CALL_SERVICE_RINGING = "android.telecom.IN_CALL_SERVICE_RINGING";
     field public static final java.lang.String METADATA_IN_CALL_SERVICE_UI = "android.telecom.IN_CALL_SERVICE_UI";
     field public static final int PRESENTATION_ALLOWED = 1; // 0x1
@@ -36941,10 +36914,10 @@
     field public static final java.lang.String KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL = "voicemail_notification_persistent_bool";
     field public static final java.lang.String KEY_VOICE_PRIVACY_DISABLE_UI_BOOL = "voice_privacy_disable_ui_bool";
     field public static final java.lang.String KEY_VOLTE_REPLACEMENT_RAT_INT = "volte_replacement_rat_int";
-    field public static final java.lang.String KEY_VVM_CELLULAR_DATA_REQUIRED_BOOLEAN = "vvm_cellular_data_required";
+    field public static final java.lang.String KEY_VVM_CELLULAR_DATA_REQUIRED_BOOL = "vvm_cellular_data_required";
     field public static final java.lang.String KEY_VVM_DESTINATION_NUMBER_STRING = "vvm_destination_number_string";
     field public static final java.lang.String KEY_VVM_PORT_NUMBER_INT = "vvm_port_number_int";
-    field public static final java.lang.String KEY_VVM_PREFETCH_BOOLEAN = "vvm_prefetch";
+    field public static final java.lang.String KEY_VVM_PREFETCH_BOOL = "vvm_prefetch";
     field public static final java.lang.String KEY_VVM_TYPE_STRING = "vvm_type_string";
     field public static final java.lang.String KEY_WORLD_PHONE_BOOL = "world_phone_bool";
   }
@@ -40935,6 +40908,7 @@
   public abstract class AbsSavedState implements android.os.Parcelable {
     ctor protected AbsSavedState(android.os.Parcelable);
     ctor protected AbsSavedState(android.os.Parcel);
+    ctor protected AbsSavedState(android.os.Parcel, java.lang.ClassLoader);
     method public int describeContents();
     method public final android.os.Parcelable getSuperState();
     method public void writeToParcel(android.os.Parcel, int);
@@ -41083,6 +41057,10 @@
     field public static final android.os.Parcelable.Creator<android.view.Display.Mode> CREATOR;
   }
 
+  public final class DragAndDropPermissions {
+    method public void release();
+  }
+
   public class DragEvent implements android.os.Parcelable {
     method public int describeContents();
     method public int getAction();
@@ -41102,10 +41080,6 @@
     field public static final android.os.Parcelable.Creator<android.view.DragEvent> CREATOR;
   }
 
-  public final class DropPermissions {
-    method public void release();
-  }
-
   public class FocusFinder {
     method public android.view.View findNearestTouchable(android.view.ViewGroup, int, int, int, int[]);
     method public final android.view.View findNextFocus(android.view.ViewGroup, android.view.View, int);
@@ -43051,6 +43025,7 @@
 
   public static class View.BaseSavedState extends android.view.AbsSavedState {
     ctor public View.BaseSavedState(android.os.Parcel);
+    ctor public View.BaseSavedState(android.os.Parcel, java.lang.ClassLoader);
     ctor public View.BaseSavedState(android.os.Parcelable);
     field public static final android.os.Parcelable.Creator<android.view.View.BaseSavedState> CREATOR;
   }
@@ -43639,7 +43614,7 @@
     ctor public Window(android.content.Context);
     method public abstract void addContentView(android.view.View, android.view.ViewGroup.LayoutParams);
     method public void addFlags(int);
-    method public final void addFrameMetricsListener(android.view.Window.FrameMetricsListener, android.os.Handler);
+    method public final void addOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener, android.os.Handler);
     method public void clearFlags(int);
     method public abstract void closeAllPanels();
     method public abstract void closePanel(int);
@@ -43691,7 +43666,7 @@
     method public abstract boolean performContextMenuIdentifierAction(int, int);
     method public abstract boolean performPanelIdentifierAction(int, int, int);
     method public abstract boolean performPanelShortcut(int, int, android.view.KeyEvent, int);
-    method public final void removeFrameMetricsListener(android.view.Window.FrameMetricsListener);
+    method public final void removeOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener);
     method public boolean requestFeature(int);
     method public abstract void restoreHierarchyState(android.os.Bundle);
     method public abstract android.os.Bundle saveHierarchyState();
@@ -43739,6 +43714,7 @@
     method public void setSharedElementsUseOverlay(boolean);
     method public void setSoftInputMode(int);
     method public abstract void setStatusBarColor(int);
+    method public void setSustainedPerformanceMode(boolean);
     method public abstract void setTitle(java.lang.CharSequence);
     method public abstract deprecated void setTitleColor(int);
     method public void setTransitionBackgroundFadeDuration(long);
@@ -43817,8 +43793,8 @@
     method public abstract android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int);
   }
 
-  public static abstract interface Window.FrameMetricsListener {
-    method public abstract void onMetricsAvailable(android.view.Window, android.view.FrameMetrics, int);
+  public static abstract interface Window.OnFrameMetricsAvailableListener {
+    method public abstract void onFrameMetricsAvailable(android.view.Window, android.view.FrameMetrics, int);
   }
 
   public static abstract interface Window.OnRestrictedCaptionAreaChangedListener {
@@ -46777,6 +46753,7 @@
     ctor public FrameLayout.LayoutParams(android.view.ViewGroup.LayoutParams);
     ctor public FrameLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams);
     ctor public FrameLayout.LayoutParams(android.widget.FrameLayout.LayoutParams);
+    field public static final int UNSPECIFIED_GRAVITY = -1; // 0xffffffff
     field public int gravity;
   }
 
@@ -47571,7 +47548,7 @@
     method public void setChar(int, java.lang.String, char);
     method public void setCharSequence(int, java.lang.String, java.lang.CharSequence);
     method public void setChronometer(int, long, java.lang.String, boolean);
-    method public void setChronometerCountsDown(int, boolean);
+    method public void setChronometerCountDown(int, boolean);
     method public void setContentDescription(int, java.lang.CharSequence);
     method public void setDisplayedChild(int, int);
     method public void setDouble(int, java.lang.String, double);
@@ -50204,6 +50181,8 @@
 
   public abstract interface CharSequence {
     method public abstract char charAt(int);
+    method public default java.util.stream.IntStream chars();
+    method public default java.util.stream.IntStream codePoints();
     method public abstract int length();
     method public abstract java.lang.CharSequence subSequence(int, int);
     method public abstract java.lang.String toString();
@@ -50696,16 +50675,13 @@
     method public static java.lang.Class<?> forName(java.lang.String, boolean, java.lang.ClassLoader) throws java.lang.ClassNotFoundException;
     method public A getAnnotation(java.lang.Class<A>);
     method public java.lang.annotation.Annotation[] getAnnotations();
-    method public T[] getAnnotationsByType(java.lang.Class<T>);
     method public java.lang.String getCanonicalName();
     method public java.lang.ClassLoader getClassLoader();
     method public java.lang.Class<?>[] getClasses();
     method public java.lang.Class<?> getComponentType();
     method public java.lang.reflect.Constructor<T> getConstructor(java.lang.Class<?>...) throws java.lang.NoSuchMethodException, java.lang.SecurityException;
     method public java.lang.reflect.Constructor<?>[] getConstructors() throws java.lang.SecurityException;
-    method public T getDeclaredAnnotation(java.lang.Class<T>);
     method public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
     method public java.lang.Class<?>[] getDeclaredClasses();
     method public java.lang.reflect.Constructor<T> getDeclaredConstructor(java.lang.Class<?>...) throws java.lang.NoSuchMethodException, java.lang.SecurityException;
     method public java.lang.reflect.Constructor<?>[] getDeclaredConstructors() throws java.lang.SecurityException;
@@ -50736,7 +50712,6 @@
     method public java.lang.Class<? super T> getSuperclass();
     method public synchronized java.lang.reflect.TypeVariable<java.lang.Class<T>>[] getTypeParameters();
     method public boolean isAnnotation();
-    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public boolean isAnonymousClass();
     method public boolean isArray();
     method public boolean isAssignableFrom(java.lang.Class<?>);
@@ -51279,10 +51254,10 @@
   public class Package implements java.lang.reflect.AnnotatedElement {
     method public A getAnnotation(java.lang.Class<A>);
     method public java.lang.annotation.Annotation[] getAnnotations();
-    method public T[] getAnnotationsByType(java.lang.Class<T>);
-    method public java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
+    method public A[] getAnnotationsByType(java.lang.Class<A>);
+    method public A getDeclaredAnnotation(java.lang.Class<A>);
     method public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
+    method public A[] getDeclaredAnnotationsByType(java.lang.Class<A>);
     method public java.lang.String getImplementationTitle();
     method public java.lang.String getImplementationVendor();
     method public java.lang.String getImplementationVersion();
@@ -51292,7 +51267,6 @@
     method public java.lang.String getSpecificationTitle();
     method public java.lang.String getSpecificationVendor();
     method public java.lang.String getSpecificationVersion();
-    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public boolean isCompatibleWith(java.lang.String) throws java.lang.NumberFormatException;
     method public boolean isSealed();
     method public boolean isSealed(java.net.URL);
@@ -51961,12 +51935,8 @@
     ctor protected AccessibleObject();
     method public T getAnnotation(java.lang.Class<T>);
     method public java.lang.annotation.Annotation[] getAnnotations();
-    method public T[] getAnnotationsByType(java.lang.Class<T>);
-    method public java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
     method public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
     method public boolean isAccessible();
-    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public static void setAccessible(java.lang.reflect.AccessibleObject[], boolean) throws java.lang.SecurityException;
     method public void setAccessible(boolean) throws java.lang.SecurityException;
   }
@@ -51974,11 +51944,11 @@
   public abstract interface AnnotatedElement {
     method public abstract T getAnnotation(java.lang.Class<T>);
     method public abstract java.lang.annotation.Annotation[] getAnnotations();
-    method public abstract T[] getAnnotationsByType(java.lang.Class<T>);
-    method public abstract java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
+    method public default T[] getAnnotationsByType(java.lang.Class<T>);
+    method public default java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class<T>);
     method public abstract java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    method public abstract T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
-    method public abstract boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
+    method public default T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
+    method public default boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
   }
 
   public final class Array {
@@ -52041,6 +52011,7 @@
     method public java.lang.String getName();
     method public short getShort(java.lang.Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
     method public java.lang.Class<?> getType();
+    method public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation>);
     method public boolean isEnumConstant();
     method public boolean isSynthetic();
     method public void set(java.lang.Object, java.lang.Object) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException;
@@ -53308,6 +53279,7 @@
     method public final int arrayOffset();
     method public abstract java.nio.CharBuffer asReadOnlyBuffer();
     method public final char charAt(int);
+    method public java.util.stream.IntStream chars();
     method public abstract java.nio.CharBuffer compact();
     method public int compareTo(java.nio.CharBuffer);
     method public abstract java.nio.CharBuffer duplicate();
@@ -58200,6 +58172,7 @@
     method public java.lang.Object clone();
     method public java.util.Set<java.util.Map.Entry<K, V>> entrySet();
     method public void forEach(java.util.function.BiConsumer<? super K, ? super V>);
+    method public void replaceAll(java.util.function.BiFunction<? super K, ? super V, ? extends V>);
   }
 
   public class IllegalFormatCodePointException extends java.util.IllegalFormatException {
@@ -59182,6 +59155,8 @@
     method public java.util.NavigableSet<K> navigableKeySet();
     method public java.util.Map.Entry<K, V> pollFirstEntry();
     method public java.util.Map.Entry<K, V> pollLastEntry();
+    method public boolean replace(K, V, V);
+    method public V replace(K, V);
     method public void replaceAll(java.util.function.BiFunction<? super K, ? super V, ? extends V>);
     method public java.util.NavigableMap<K, V> subMap(K, boolean, K, boolean);
     method public java.util.SortedMap<K, V> subMap(K, K);
diff --git a/api/test-removed.txt b/api/test-removed.txt
index 8c6abdc..de8a724 100644
--- a/api/test-removed.txt
+++ b/api/test-removed.txt
@@ -165,6 +165,31 @@
 
 }
 
+package android.mtp {
+
+  public final class MtpConstants {
+    field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001
+    field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d
+    field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008
+    field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006
+    field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b
+    field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002
+    field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007
+    field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801
+    field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802
+    field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803
+    field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003
+    field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009
+    field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c
+    field public static final int EVENT_STORE_ADDED = 16388; // 0x4004
+    field public static final int EVENT_STORE_FULL = 16394; // 0x400a
+    field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005
+    field public static final int EVENT_UNDEFINED = 16384; // 0x4000
+    field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e
+  }
+
+}
+
 package android.net {
 
   public class SSLCertificateSocketFactory extends javax.net.ssl.SSLSocketFactory {
diff --git a/cmds/am/src/com/android/commands/am/Am.java b/cmds/am/src/com/android/commands/am/Am.java
index 456be02..7d084dc 100644
--- a/cmds/am/src/com/android/commands/am/Am.java
+++ b/cmds/am/src/com/android/commands/am/Am.java
@@ -1790,7 +1790,7 @@
 
     private void runStackStart() throws Exception {
         String displayIdStr = nextArgRequired();
-        int displayId = Integer.valueOf(displayIdStr);
+        int displayId = Integer.parseInt(displayIdStr);
         Intent intent = makeIntent(UserHandle.USER_CURRENT);
 
         try {
@@ -1804,9 +1804,9 @@
 
     private void runStackMoveTask() throws Exception {
         String taskIdStr = nextArgRequired();
-        int taskId = Integer.valueOf(taskIdStr);
+        int taskId = Integer.parseInt(taskIdStr);
         String stackIdStr = nextArgRequired();
-        int stackId = Integer.valueOf(stackIdStr);
+        int stackId = Integer.parseInt(stackIdStr);
         String toTopStr = nextArgRequired();
         final boolean toTop;
         if ("true".equals(toTopStr)) {
@@ -1826,7 +1826,7 @@
 
     private void runStackResize() throws Exception {
         String stackIdStr = nextArgRequired();
-        int stackId = Integer.valueOf(stackIdStr);
+        int stackId = Integer.parseInt(stackIdStr);
         final Rect bounds = getBounds();
         if (bounds == null) {
             System.err.println("Error: invalid input bounds");
@@ -1837,7 +1837,7 @@
 
     private void runStackResizeAnimated() throws Exception {
         String stackIdStr = nextArgRequired();
-        int stackId = Integer.valueOf(stackIdStr);
+        int stackId = Integer.parseInt(stackIdStr);
         final Rect bounds;
         if ("null".equals(mArgs.peekNextArg())) {
             bounds = null;
@@ -1886,11 +1886,11 @@
 
     private void runStackPositionTask() throws Exception {
         String taskIdStr = nextArgRequired();
-        int taskId = Integer.valueOf(taskIdStr);
+        int taskId = Integer.parseInt(taskIdStr);
         String stackIdStr = nextArgRequired();
-        int stackId = Integer.valueOf(stackIdStr);
+        int stackId = Integer.parseInt(stackIdStr);
         String positionStr = nextArgRequired();
-        int position = Integer.valueOf(positionStr);
+        int position = Integer.parseInt(positionStr);
 
         try {
             mAm.positionTaskInStack(taskId, stackId, position);
@@ -1911,7 +1911,7 @@
     private void runStackInfo() throws Exception {
         try {
             String stackIdStr = nextArgRequired();
-            int stackId = Integer.valueOf(stackIdStr);
+            int stackId = Integer.parseInt(stackIdStr);
             StackInfo info = mAm.getStackInfo(stackId);
             System.out.println(info);
         } catch (RemoteException e) {
@@ -1920,12 +1920,12 @@
 
     private void runStackRemove() throws Exception {
         String stackIdStr = nextArgRequired();
-        int stackId = Integer.valueOf(stackIdStr);
+        int stackId = Integer.parseInt(stackIdStr);
         mAm.removeStack(stackId);
     }
 
     private void runMoveTopActivityToPinnedStack() throws Exception {
-        int stackId = Integer.valueOf(nextArgRequired());
+        int stackId = Integer.parseInt(nextArgRequired());
         final Rect bounds = getBounds();
         if (bounds == null) {
             System.err.println("Error: invalid input bounds");
@@ -1943,10 +1943,10 @@
     }
 
     private void runStackSizeDockedStackTest() throws Exception {
-        final int stepSize = Integer.valueOf(nextArgRequired());
+        final int stepSize = Integer.parseInt(nextArgRequired());
         final String side = nextArgRequired();
         final String delayStr = nextArg();
-        final int delayMs = (delayStr != null) ? Integer.valueOf(delayStr) : 0;
+        final int delayMs = (delayStr != null) ? Integer.parseInt(delayStr) : 0;
 
         Rect bounds;
         try {
@@ -2060,7 +2060,7 @@
             if (taskIdStr.equals("stop")) {
                 mAm.stopLockTaskMode();
             } else {
-                int taskId = Integer.valueOf(taskIdStr);
+                int taskId = Integer.parseInt(taskIdStr);
                 mAm.startLockTaskMode(taskId);
             }
             System.err.println("Activity manager is " + (mAm.isInLockTaskMode() ? "" : "not ") +
@@ -2071,9 +2071,9 @@
 
     private void runTaskResizeable() throws Exception {
         final String taskIdStr = nextArgRequired();
-        final int taskId = Integer.valueOf(taskIdStr);
+        final int taskId = Integer.parseInt(taskIdStr);
         final String resizeableStr = nextArgRequired();
-        final int resizeableMode = Integer.valueOf(resizeableStr);
+        final int resizeableMode = Integer.parseInt(resizeableStr);
 
         try {
             mAm.setTaskResizeable(taskId, resizeableMode);
@@ -2083,7 +2083,7 @@
 
     private void runTaskResize() throws Exception {
         final String taskIdStr = nextArgRequired();
-        final int taskId = Integer.valueOf(taskIdStr);
+        final int taskId = Integer.parseInt(taskIdStr);
         final Rect bounds = getBounds();
         if (bounds == null) {
             System.err.println("Error: invalid input bounds");
@@ -2104,10 +2104,10 @@
     }
 
     private void runTaskDragTaskTest() {
-        final int taskId = Integer.valueOf(nextArgRequired());
-        final int stepSize = Integer.valueOf(nextArgRequired());
+        final int taskId = Integer.parseInt(nextArgRequired());
+        final int stepSize = Integer.parseInt(nextArgRequired());
         final String delayStr = nextArg();
-        final int delay_ms = (delayStr != null) ? Integer.valueOf(delayStr) : 0;
+        final int delay_ms = (delayStr != null) ? Integer.parseInt(delayStr) : 0;
         final StackInfo stackInfo;
         Rect taskBounds;
         try {
@@ -2203,10 +2203,10 @@
     }
 
     private void runTaskSizeTaskTest() {
-        final int taskId = Integer.valueOf(nextArgRequired());
-        final int stepSize = Integer.valueOf(nextArgRequired());
+        final int taskId = Integer.parseInt(nextArgRequired());
+        final int stepSize = Integer.parseInt(nextArgRequired());
         final String delayStr = nextArg();
-        final int delay_ms = (delayStr != null) ? Integer.valueOf(delayStr) : 0;
+        final int delay_ms = (delayStr != null) ? Integer.parseInt(delayStr) : 0;
         final StackInfo stackInfo;
         final Rect initialTaskBounds;
         try {
@@ -2550,13 +2550,13 @@
 
     private Rect getBounds() {
         String leftStr = nextArgRequired();
-        int left = Integer.valueOf(leftStr);
+        int left = Integer.parseInt(leftStr);
         String topStr = nextArgRequired();
-        int top = Integer.valueOf(topStr);
+        int top = Integer.parseInt(topStr);
         String rightStr = nextArgRequired();
-        int right = Integer.valueOf(rightStr);
+        int right = Integer.parseInt(rightStr);
         String bottomStr = nextArgRequired();
-        int bottom = Integer.valueOf(bottomStr);
+        int bottom = Integer.parseInt(bottomStr);
         if (left < 0) {
             System.err.println("Error: bad left arg: " + leftStr);
             return null;
diff --git a/cmds/dpm/src/com/android/commands/dpm/Dpm.java b/cmds/dpm/src/com/android/commands/dpm/Dpm.java
index b83484d..31c7421 100644
--- a/cmds/dpm/src/com/android/commands/dpm/Dpm.java
+++ b/cmds/dpm/src/com/android/commands/dpm/Dpm.java
@@ -44,6 +44,7 @@
     private static final String COMMAND_SET_ACTIVE_ADMIN = "set-active-admin";
     private static final String COMMAND_SET_DEVICE_OWNER = "set-device-owner";
     private static final String COMMAND_SET_PROFILE_OWNER = "set-profile-owner";
+    private static final String COMMAND_REMOVE_ACTIVE_ADMIN = "remove-active-admin";
 
     private IDevicePolicyManager mDevicePolicyManager;
     private int mUserId = UserHandle.USER_SYSTEM;
@@ -60,6 +61,8 @@
                 "[ --name <NAME> ] <COMPONENT>\n" +
                 "usage: dpm set-profile-owner [ --user <USER_ID> | current ] [ --name <NAME> ] " +
                 "<COMPONENT>\n" +
+                "usage: dpm remove-active-admin [ --user <USER_ID> | current ] [ --name <NAME> ] " +
+                "<COMPONENT>\n" +
                 "\n" +
                 "dpm set-active-admin: Sets the given component as active admin" +
                 " for an existing user.\n" +
@@ -68,7 +71,11 @@
                 " package as device owner.\n" +
                 "\n" +
                 "dpm set-profile-owner: Sets the given component as active admin and profile" +
-                " owner for an existing user.\n");
+                " owner for an existing user.\n" +
+                "\n" +
+                "dpm remove-active-admin: Disables an active admin, the admin must have declared" +
+                " android:testOnly in the application in its manifest. This will also remove" +
+                " device and profile owners\n");
     }
 
     @Override
@@ -91,6 +98,9 @@
             case COMMAND_SET_PROFILE_OWNER:
                 runSetProfileOwner();
                 break;
+            case COMMAND_REMOVE_ACTIVE_ADMIN:
+                runRemoveActiveAdmin();
+                break;
             default:
                 throw new IllegalArgumentException ("unknown command '" + command + "'");
         }
@@ -152,6 +162,12 @@
         System.out.println("Active admin set to component " + mComponent.toShortString());
     }
 
+    private void runRemoveActiveAdmin() throws RemoteException {
+        parseArgs(/*canHaveName=*/ false);
+        mDevicePolicyManager.forceRemoveActiveAdmin(mComponent, mUserId);
+        System.out.println("Success: Admin removed " + mComponent);
+    }
+
     private void runSetProfileOwner() throws RemoteException {
         parseArgs(/*canHaveName=*/ true);
         mDevicePolicyManager.setActiveAdmin(mComponent, true /*refreshing*/, mUserId);
diff --git a/core/java/android/animation/AnimatorSet.java b/core/java/android/animation/AnimatorSet.java
index e788d27..8ff38bb 100644
--- a/core/java/android/animation/AnimatorSet.java
+++ b/core/java/android/animation/AnimatorSet.java
@@ -559,7 +559,8 @@
         boolean previouslyPaused = mPaused;
         super.pause();
         if (!previouslyPaused && mPaused) {
-            if (mDelayAnim != null) {
+            if (mDelayAnim.isStarted()) {
+                // If delay hasn't passed, pause the start delay animator.
                 mDelayAnim.pause();
             } else {
                 int size = mNodes.size();
@@ -578,7 +579,8 @@
         boolean previouslyPaused = mPaused;
         super.resume();
         if (previouslyPaused && !mPaused) {
-            if (mDelayAnim != null) {
+            if (mDelayAnim.isStarted()) {
+                // If start delay hasn't passed, resume the previously paused start delay animator
                 mDelayAnim.resume();
             } else {
                 int size = mNodes.size();
diff --git a/core/java/android/app/Activity.java b/core/java/android/app/Activity.java
index f7884a7..0149952 100644
--- a/core/java/android/app/Activity.java
+++ b/core/java/android/app/Activity.java
@@ -85,8 +85,8 @@
 import android.view.ContextMenu;
 import android.view.ContextMenu.ContextMenuInfo;
 import android.view.ContextThemeWrapper;
+import android.view.DragAndDropPermissions;
 import android.view.DragEvent;
-import android.view.DropPermissions;
 import android.view.InputDevice;
 import android.view.KeyCharacterMap;
 import android.view.KeyEvent;
@@ -200,7 +200,7 @@
  *
  * <p>An activity has essentially four states:</p>
  * <ul>
- *     <li> If an activity in the foreground of the screen (at the top of
+ *     <li> If an activity is in the foreground of the screen (at the top of
  *         the stack),
  *         it is <em>active</em> or  <em>running</em>. </li>
  *     <li>If an activity has lost focus but is still visible (that is, a new non-full-sized
@@ -674,7 +674,7 @@
  * independently of the activity lifecycle itself.  An example may be a camera
  * application that allows you to upload a picture to a web site.  The upload
  * may take a long time, and the application should allow the user to leave
- * the application will it is executing.  To accomplish this, your Activity
+ * the application while it is executing.  To accomplish this, your Activity
  * should start a {@link Service} in which the upload takes place.  This allows
  * the system to properly prioritize your process (considering it to be more
  * important than other non-visible applications) for the duration of the
@@ -721,6 +721,10 @@
 
     private static final String REQUEST_PERMISSIONS_WHO_PREFIX = "@android:requestPermissions:";
 
+    private static final String KEYBOARD_SHORTCUTS_RECEIVER_PKG_NAME = "com.android.systemui";
+    private static final String KEYBOARD_SHORTCUTS_RECEIVER_CLASS_NAME =
+            "com.android.systemui.statusbar.KeyboardShortcutsReceiver";
+
     private static class ManagedDialog {
         Dialog mDialog;
         Bundle mArgs;
@@ -1682,8 +1686,18 @@
      */
     public final void requestKeyboardShortcutsHelper() {
         Intent intent = new Intent(Intent.ACTION_SHOW_KEYBOARD_SHORTCUTS);
-        intent.setComponent(new ComponentName("com.android.systemui",
-                "com.android.systemui.statusbar.KeyboardShortcutsReceiver"));
+        intent.setComponent(new ComponentName(KEYBOARD_SHORTCUTS_RECEIVER_PKG_NAME,
+                KEYBOARD_SHORTCUTS_RECEIVER_CLASS_NAME));
+        sendBroadcast(intent);
+    }
+
+    /**
+     * Dismiss the Keyboard Shortcuts screen.
+     */
+    public final void dismissKeyboardShortcutsHelper() {
+        Intent intent = new Intent(Intent.ACTION_DISMISS_KEYBOARD_SHORTCUTS);
+        intent.setComponent(new ComponentName(KEYBOARD_SHORTCUTS_RECEIVER_PKG_NAME,
+                KEYBOARD_SHORTCUTS_RECEIVER_CLASS_NAME));
         sendBroadcast(intent);
     }
 
@@ -1693,11 +1707,6 @@
         if (menu == null) {
           return;
         }
-        final InputDevice inputDevice = InputManager.getInstance().getInputDevice(deviceId);
-        if (inputDevice == null) {
-            return;
-        }
-        final KeyCharacterMap keyCharacterMap = inputDevice.getKeyCharacterMap();
         KeyboardShortcutGroup group = null;
         int menuSize = menu.size();
         for (int i = 0; i < menuSize; ++i) {
@@ -2098,7 +2107,15 @@
         Object activity = onRetainNonConfigurationInstance();
         HashMap<String, Object> children = onRetainNonConfigurationChildInstances();
         FragmentManagerNonConfig fragments = mFragments.retainNestedNonConfig();
+
+        // We're already stopped but we've been asked to retain.
+        // Our fragments are taken care of but we need to mark the loaders for retention.
+        // In order to do this correctly we need to restart the loaders first before
+        // handing them off to the next activity.
+        mFragments.doLoaderStart();
+        mFragments.doLoaderStop(true);
         ArrayMap<String, LoaderManager> loaders = mFragments.retainLoaderNonConfig();
+
         if (activity == null && children == null && fragments == null && loaders == null
                 && mVoiceInteractor == null) {
             return null;
@@ -4069,28 +4086,10 @@
      * result callbacks including {@link #onRequestPermissionsResult(int, String[], int[])}.
      * </p>
      * <p>
-     * A sample permissions request looks like this:
+     * The <a href="http://developer.android.com/samples/RuntimePermissions/index.html">
+     * RuntimePermissions</a> sample app demonstrates how to use this method to
+     * request permissions at run time.
      * </p>
-     * <code><pre><p>
-     * private void showContacts() {
-     *     if (checkSelfPermission(Manifest.permission.READ_CONTACTS)
-     *             != PackageManager.PERMISSION_GRANTED) {
-     *         requestPermissions(new String[]{Manifest.permission.READ_CONTACTS},
-     *                 PERMISSIONS_REQUEST_READ_CONTACTS);
-     *     } else {
-     *         doShowContacts();
-     *     }
-     * }
-     *
-     * {@literal @}Override
-     * public void onRequestPermissionsResult(int requestCode, String[] permissions,
-     *         int[] grantResults) {
-     *     if (requestCode == PERMISSIONS_REQUEST_READ_CONTACTS
-     *             && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
-     *         showContacts();
-     *     }
-     * }
-     * </code></pre></p>
      *
      * @param permissions The requested permissions. Must me non-null and not empty.
      * @param requestCode Application specific request code to match with a result
@@ -6515,16 +6514,16 @@
     }
 
     /**
-     * Create {@link DropPermissions} object bound to this activity and controlling the access
-     * permissions for content URIs associated with the {@link DragEvent}.
+     * Create {@link DragAndDropPermissions} object bound to this activity and controlling the
+     * access permissions for content URIs associated with the {@link DragEvent}.
      * @param event Drag event
-     * @return The DropPermissions object used to control access to the content URIs. Null if
-     * no content URIs are associated with the event or if permissions could not be granted.
+     * @return The {@link DragAndDropPermissions} object used to control access to the content URIs.
+     * Null if no content URIs are associated with the event or if permissions could not be granted.
      */
-    public DropPermissions requestDropPermissions(DragEvent event) {
-        DropPermissions dropPermissions = DropPermissions.obtain(event);
-        if (dropPermissions != null && dropPermissions.take(getActivityToken())) {
-            return dropPermissions;
+    public DragAndDropPermissions requestDragAndDropPermissions(DragEvent event) {
+        DragAndDropPermissions dragAndDropPermissions = DragAndDropPermissions.obtain(event);
+        if (dragAndDropPermissions != null && dragAndDropPermissions.take(getActivityToken())) {
+            return dragAndDropPermissions;
         }
         return null;
     }
diff --git a/core/java/android/app/ActivityManager.java b/core/java/android/app/ActivityManager.java
index 631a129..d440017 100644
--- a/core/java/android/app/ActivityManager.java
+++ b/core/java/android/app/ActivityManager.java
@@ -31,7 +31,6 @@
 import android.os.IBinder;
 import android.os.ParcelFileDescriptor;
 
-import android.util.Log;
 import com.android.internal.app.procstats.ProcessStats;
 import com.android.internal.os.TransferPipe;
 import com.android.internal.util.FastPrintWriter;
@@ -63,7 +62,6 @@
 import android.text.TextUtils;
 import android.util.DisplayMetrics;
 import android.util.Size;
-import android.util.Slog;
 
 import org.xmlpull.v1.XmlSerializer;
 
@@ -126,6 +124,19 @@
     public static final String META_HOME_ALTERNATE = "android.app.home.alternate";
 
     /**
+     * Result for IActivityManager.startVoiceActivity: active session is currently hidden.
+     * @hide
+     */
+    public static final int START_VOICE_HIDDEN_SESSION = -10;
+
+    /**
+     * Result for IActivityManager.startVoiceActivity: active session does not match
+     * the requesting token.
+     * @hide
+     */
+    public static final int START_VOICE_NOT_ACTIVE_SESSION = -9;
+
+    /**
      * Result for IActivityManager.startActivity: trying to start a background user
      * activity that shouldn't be displayed for all users.
      * @hide
@@ -675,6 +686,22 @@
             return isStaticStack(stackId) || stackId == PINNED_STACK_ID
                     || stackId == FREEFORM_WORKSPACE_STACK_ID || stackId == DOCKED_STACK_ID;
         }
+
+        /**
+         * Returns true if activities contained in this stack can request visible behind by
+         * calling {@link Activity#requestVisibleBehind}.
+         */
+        public static boolean activitiesCanRequestVisibleBehind(int stackId) {
+            return stackId == FULLSCREEN_WORKSPACE_STACK_ID;
+        }
+
+        /**
+         * Returns true if this stack may be scaled without resizing,
+         * and windows within may need to be configured as such.
+         */
+        public static boolean windowsAreScaleable(int stackId) {
+            return stackId == PINNED_STACK_ID;
+        }
     }
 
     /**
@@ -2339,8 +2366,10 @@
         public String[] taskNames;
         public Rect[] taskBounds;
         public int[] taskUserIds;
+        public ComponentName topActivity;
         public int displayId;
         public int userId;
+        public boolean visible;
 
         @Override
         public int describeContents() {
@@ -2367,6 +2396,13 @@
             dest.writeIntArray(taskUserIds);
             dest.writeInt(displayId);
             dest.writeInt(userId);
+            dest.writeInt(visible ? 1 : 0);
+            if (topActivity != null) {
+                dest.writeInt(1);
+                topActivity.writeToParcel(dest, 0);
+            } else {
+                dest.writeInt(0);
+            }
         }
 
         public void readFromParcel(Parcel source) {
@@ -2389,6 +2425,10 @@
             taskUserIds = source.createIntArray();
             displayId = source.readInt();
             userId = source.readInt();
+            visible = source.readInt() > 0;
+            if (source.readInt() > 0) {
+                topActivity = ComponentName.readFromParcel(source);
+            }
         }
 
         public static final Creator<StackInfo> CREATOR = new Creator<StackInfo>() {
@@ -2424,6 +2464,10 @@
                             sb.append(" bounds="); sb.append(taskBounds[i].toShortString());
                         }
                         sb.append(" userId=").append(taskUserIds[i]);
+                        sb.append(" visible=").append(visible);
+                        if (topActivity != null) {
+                            sb.append(" topActivity=").append(topActivity);
+                        }
                         sb.append("\n");
             }
             return sb.toString();
@@ -3066,6 +3110,7 @@
      *
      * @hide
      */
+    @SystemApi
     @RequiresPermission(Manifest.permission.KILL_UID)
     public void killUid(int uid, String reason) {
         try {
diff --git a/core/java/android/app/ActivityManagerInternal.java b/core/java/android/app/ActivityManagerInternal.java
index 374c4f6..4b8d9ee 100644
--- a/core/java/android/app/ActivityManagerInternal.java
+++ b/core/java/android/app/ActivityManagerInternal.java
@@ -133,4 +133,15 @@
      * the focused activity.
      */
     public abstract List<IBinder> getTopVisibleActivities();
+
+    /**
+     * Callback for window manager to let activity manager know that docked stack changes its
+     * minimized state.
+     */
+    public abstract void notifyDockedStackMinimizedChanged(boolean minimized);
+
+    /**
+     * Kill foreground apps from the specified user.
+     */
+    public abstract void killForegroundAppsForUser(int userHandle);
 }
diff --git a/core/java/android/app/ActivityManagerNative.java b/core/java/android/app/ActivityManagerNative.java
index 7bf03de..a3f3b2b3 100644
--- a/core/java/android/app/ActivityManagerNative.java
+++ b/core/java/android/app/ActivityManagerNative.java
@@ -1111,8 +1111,8 @@
             if (data.readInt() != 0) {
                 notification = Notification.CREATOR.createFromParcel(data);
             }
-            boolean removeNotification = data.readInt() != 0;
-            setServiceForeground(className, token, id, notification, removeNotification);
+            int sflags = data.readInt();
+            setServiceForeground(className, token, id, notification, sflags);
             reply.writeNoException();
             return true;
         }
@@ -2578,9 +2578,10 @@
             return true;
         }
 
-        case START_LOCK_TASK_BY_CURRENT_TRANSACTION: {
+        case START_SYSTEM_LOCK_TASK_TRANSACTION: {
             data.enforceInterface(IActivityManager.descriptor);
-            startLockTaskModeOnCurrent();
+            int taskId = data.readInt();
+            startSystemLockTaskMode(taskId);
             reply.writeNoException();
             return true;
         }
@@ -2592,9 +2593,9 @@
             return true;
         }
 
-        case STOP_LOCK_TASK_BY_CURRENT_TRANSACTION: {
+        case STOP_SYSTEM_LOCK_TASK_TRANSACTION: {
             data.enforceInterface(IActivityManager.descriptor);
-            stopLockTaskModeOnCurrent();
+            stopSystemLockTaskMode();
             reply.writeNoException();
             return true;
         }
@@ -2958,6 +2959,13 @@
             reply.writeNoException();
             return true;
         }
+        case START_CONFIRM_DEVICE_CREDENTIAL_INTENT: {
+            data.enforceInterface(IActivityManager.descriptor);
+            final Intent intent = Intent.CREATOR.createFromParcel(data);
+            startConfirmDeviceCredentialIntent(intent);
+            reply.writeNoException();
+            return true;
+        }
         }
 
         return super.onTransact(code, data, reply, flags);
@@ -4299,7 +4307,7 @@
         return res;
     }
     public void setServiceForeground(ComponentName className, IBinder token,
-            int id, Notification notification, boolean removeNotification) throws RemoteException {
+            int id, Notification notification, int flags) throws RemoteException {
         Parcel data = Parcel.obtain();
         Parcel reply = Parcel.obtain();
         data.writeInterfaceToken(IActivityManager.descriptor);
@@ -4312,7 +4320,7 @@
         } else {
             data.writeInt(0);
         }
-        data.writeInt(removeNotification ? 1 : 0);
+        data.writeInt(flags);
         mRemote.transact(SET_SERVICE_FOREGROUND_TRANSACTION, data, reply, 0);
         reply.readException();
         data.recycle();
@@ -6386,11 +6394,12 @@
     }
 
     @Override
-    public void startLockTaskModeOnCurrent() throws RemoteException {
+    public void startSystemLockTaskMode(int taskId) throws RemoteException {
         Parcel data = Parcel.obtain();
         Parcel reply = Parcel.obtain();
         data.writeInterfaceToken(IActivityManager.descriptor);
-        mRemote.transact(START_LOCK_TASK_BY_CURRENT_TRANSACTION, data, reply, 0);
+        data.writeInt(taskId);
+        mRemote.transact(START_SYSTEM_LOCK_TASK_TRANSACTION, data, reply, 0);
         reply.readException();
         data.recycle();
         reply.recycle();
@@ -6408,11 +6417,11 @@
     }
 
     @Override
-    public void stopLockTaskModeOnCurrent() throws RemoteException {
+    public void stopSystemLockTaskMode() throws RemoteException {
         Parcel data = Parcel.obtain();
         Parcel reply = Parcel.obtain();
         data.writeInterfaceToken(IActivityManager.descriptor);
-        mRemote.transact(STOP_LOCK_TASK_BY_CURRENT_TRANSACTION, data, reply, 0);
+        mRemote.transact(STOP_SYSTEM_LOCK_TASK_TRANSACTION, data, reply, 0);
         reply.readException();
         data.recycle();
         reply.recycle();
@@ -6929,5 +6938,16 @@
         reply.recycle();
     }
 
+    public void startConfirmDeviceCredentialIntent(Intent intent) throws RemoteException {
+        Parcel data = Parcel.obtain();
+        Parcel reply = Parcel.obtain();
+        data.writeInterfaceToken(IActivityManager.descriptor);
+        intent.writeToParcel(data, 0);
+        mRemote.transact(START_CONFIRM_DEVICE_CREDENTIAL_INTENT, data, reply, 0);
+        reply.readException();
+        data.recycle();
+        reply.recycle();
+    }
+
     private IBinder mRemote;
 }
diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java
index 36e962e..1da21b0 100644
--- a/core/java/android/app/ActivityThread.java
+++ b/core/java/android/app/ActivityThread.java
@@ -2545,6 +2545,9 @@
                 Context appContext = createBaseContextForActivity(r, activity);
                 CharSequence title = r.activityInfo.loadLabel(appContext.getPackageManager());
                 Configuration config = new Configuration(mCompatConfiguration);
+                if (r.overrideConfig != null) {
+                    config.updateFrom(r.overrideConfig);
+                }
                 if (DEBUG_CONFIGURATION) Slog.v(TAG, "Launching activity "
                         + r.activityInfo.name + " with config " + config);
                 Window window = null;
@@ -4970,70 +4973,6 @@
         }
     }
 
-    // Keep in sync with installd (frameworks/native/cmds/installd/commands.cpp).
-    private static File getPrimaryProfileFile(String packageName) {
-        File profileDir = Environment.getDataProfilesDePackageDirectory(
-                UserHandle.myUserId(), packageName);
-        return new File(profileDir, "primary.prof");
-    }
-
-    private static void setupJitProfileSupport(LoadedApk loadedApk, File cacheDir) {
-        if (!SystemProperties.getBoolean("dalvik.vm.usejitprofiles", false)) {
-            return;
-        }
-        final ApplicationInfo appInfo = loadedApk.getApplicationInfo();
-        final List<String> codePaths = new ArrayList<>();
-        if ((appInfo.flags & ApplicationInfo.FLAG_HAS_CODE) != 0) {
-            codePaths.add(appInfo.sourceDir);
-        }
-        if (appInfo.splitSourceDirs != null) {
-            Collections.addAll(codePaths, appInfo.splitSourceDirs);
-        }
-
-        if (codePaths.isEmpty()) {
-            // If there are no code paths there's no need to setup a profile file and register with
-            // the runtime,
-            return;
-        }
-
-        final File profileFile = getPrimaryProfileFile(loadedApk.mPackageName);
-        if (!profileFile.exists()) {
-            FileDescriptor fd = null;
-            try {
-                final int permissions = 0600;  // read-write for user.
-                fd = Os.open(profileFile.getAbsolutePath(), OsConstants.O_CREAT, permissions);
-                Os.fchmod(fd, permissions);
-                Os.fchown(fd, appInfo.uid, appInfo.uid);
-            } catch (ErrnoException e) {
-                Log.v(TAG, "Unable to create jit profile file "
-                        + profileFile + ": " + e.getMessage());
-                try {
-                    Os.unlink(profileFile.getAbsolutePath());
-                } catch (ErrnoException unlinkErr) {
-                    if (unlinkErr.errno != OsConstants.ENOENT) {
-                        Log.v(TAG, "Unable to unlink jit profile file "
-                                + profileFile + ": " + unlinkErr.getMessage());
-                    }
-                }
-                return;
-            } finally {
-                IoUtils.closeQuietly(fd);
-            }
-        }
-
-        final File foreignDexProfilesFile =
-                Environment.getDataProfilesDeForeignDexDirectory(UserHandle.myUserId());
-        String foreignDexProfilesPath = null;
-        if (!foreignDexProfilesFile.exists()) {
-            Log.v(TAG, "ForeignDexProfilesPath does not exists:" +
-                    foreignDexProfilesFile.getPath());
-        } else {
-            foreignDexProfilesPath = foreignDexProfilesFile.getAbsolutePath();
-        }
-        VMRuntime.registerAppInfo(profileFile.getAbsolutePath(), appInfo.dataDir,
-                codePaths.toArray(new String[codePaths.size()]), foreignDexProfilesPath);
-    }
-
     private void updateDefaultDensity() {
         final int densityDpi = mCurDefaultDisplayDpi;
         if (!mDensityCompatMode
@@ -5045,6 +4984,8 @@
     }
 
     private void handleBindApplication(AppBindData data) {
+        // Register the UI Thread as a sensitive thread to the runtime.
+        VMRuntime.registerSensitiveThread();
         if (data.trackAllocation) {
             DdmVmInternal.enableRecentAllocations(true);
         }
@@ -5257,18 +5198,13 @@
                         + "due to missing cache directory");
             }
 
-            // Setup a location to store generated/compiled graphics code and
-            // JIT profiling data. Note that this data is stored in a
-            // device-protected storage area, so these caches must never contain
-            // user sensitive user data.
+            // Setup a location to store generated/compiled graphics code.
             final Context deviceContext = appContext.createDeviceProtectedStorageContext();
             final File codeCacheDir = deviceContext.getCodeCacheDir();
             if (codeCacheDir != null) {
                 setupGraphicsSupport(data.info, codeCacheDir);
-                setupJitProfileSupport(data.info, codeCacheDir);
             } else {
-                Log.e(TAG, "Unable to setupGraphicsSupport and setupJitProfileSupport " +
-                        "due to missing code-cache directory");
+                Log.e(TAG, "Unable to setupGraphicsSupport due to missing code-cache directory");
             }
 
             // Add the lib dir path to hardware renderer so that vulkan layers
diff --git a/core/java/android/app/AlarmManager.java b/core/java/android/app/AlarmManager.java
index e4fff9d..02dcc5c 100644
--- a/core/java/android/app/AlarmManager.java
+++ b/core/java/android/app/AlarmManager.java
@@ -33,7 +33,6 @@
 import libcore.util.ZoneInfoDB;
 
 import java.io.IOException;
-import java.lang.ref.WeakReference;
 import java.util.WeakHashMap;
 
 /**
@@ -245,12 +244,7 @@
 
     // Tracking of the OnAlarmListener -> wrapper mapping, for cancel() support.
     // Access is synchronized on the AlarmManager class object.
-    //
-    // These are weak references so that we don't leak listener references if, for
-    // example, the pending-alarm messages are posted to a HandlerThread that is
-    // disposed of prior to alarm delivery.  The underlying messages will be GC'd
-    // but this static reference would still persist, orphaned, never deallocated.
-    private static WeakHashMap<OnAlarmListener, WeakReference<ListenerWrapper>> sWrappers;
+    private static WeakHashMap<OnAlarmListener, ListenerWrapper> sWrappers;
 
     /**
      * package private on purpose
@@ -637,16 +631,14 @@
         if (listener != null) {
             synchronized (AlarmManager.class) {
                 if (sWrappers == null) {
-                    sWrappers = new WeakHashMap<OnAlarmListener, WeakReference<ListenerWrapper>>();
+                    sWrappers = new WeakHashMap<OnAlarmListener, ListenerWrapper>();
                 }
 
-                WeakReference<ListenerWrapper> wrapperRef = sWrappers.get(listener);
-                // no existing wrapper *or* we've lost our weak ref to it => build a new one
-                if (wrapperRef == null ||
-                        (recipientWrapper = wrapperRef.get()) == null) {
+                recipientWrapper = sWrappers.get(listener);
+                // no existing wrapper => build a new one
+                if (recipientWrapper == null) {
                     recipientWrapper = new ListenerWrapper(listener);
-                    wrapperRef = new WeakReference<ListenerWrapper>(recipientWrapper);
-                    sWrappers.put(listener, wrapperRef);
+                    sWrappers.put(listener, recipientWrapper);
                 }
             }
 
@@ -906,11 +898,7 @@
         ListenerWrapper wrapper = null;
         synchronized (AlarmManager.class) {
             if (sWrappers != null) {
-                final WeakReference<ListenerWrapper> wrapperRef;
-                wrapperRef = sWrappers.get(listener);
-                if (wrapperRef != null) {
-                    wrapper = wrapperRef.get();
-                }
+                wrapper = sWrappers.get(listener);
             }
         }
 
diff --git a/core/java/android/app/AppOpsManager.java b/core/java/android/app/AppOpsManager.java
index 64586a6..783c37d 100644
--- a/core/java/android/app/AppOpsManager.java
+++ b/core/java/android/app/AppOpsManager.java
@@ -1256,7 +1256,16 @@
         }
     }
 
-    /** @hide */
+    /**
+     * Sets given app op in the specified mode for app ops in the UID.
+     * This applies to all apps currently in the UID or installed in
+     * this UID in the future.
+     *
+     * @param code The app op.
+     * @param uid The UID for which to set the app.
+     * @param mode The app op mode to set.
+     * @hide
+     */
     public void setUidMode(int code, int uid, int mode) {
         try {
             mService.setUidMode(code, uid, mode);
@@ -1265,6 +1274,25 @@
         }
     }
 
+    /**
+     * Sets given app op in the specified mode for app ops in the UID.
+     * This applies to all apps currently in the UID or installed in
+     * this UID in the future.
+     *
+     * @param appOp The app op.
+     * @param uid The UID for which to set the app.
+     * @param mode The app op mode to set.
+     * @hide
+     */
+    @SystemApi
+    public void setUidMode(String appOp, int uid, int mode) {
+        try {
+            mService.setUidMode(AppOpsManager.strOpToOp(appOp), uid, mode);
+        } catch (RemoteException e) {
+            throw e.rethrowFromSystemServer();
+        }
+    }
+
     /** @hide */
     public void setUserRestriction(int code, boolean restricted, IBinder token) {
         setUserRestriction(code, restricted, token, /*exceptionPackages*/null);
diff --git a/core/java/android/app/ApplicationPackageManager.java b/core/java/android/app/ApplicationPackageManager.java
index bf56f25..87511ee 100644
--- a/core/java/android/app/ApplicationPackageManager.java
+++ b/core/java/android/app/ApplicationPackageManager.java
@@ -441,7 +441,7 @@
 
     /** @hide */
     @Override
-    public @Nullable String getServicesSystemSharedLibraryPackageName() {
+    public @NonNull String getServicesSystemSharedLibraryPackageName() {
         try {
             return mPM.getServicesSystemSharedLibraryPackageName();
         } catch (RemoteException e) {
@@ -449,6 +449,17 @@
         }
     }
 
+    /**
+     * @hide
+     */
+    public @NonNull String getSharedSystemSharedLibraryPackageName() {
+        try {
+            return mPM.getSharedSystemSharedLibraryPackageName();
+        } catch (RemoteException e) {
+            throw e.rethrowFromSystemServer();
+        }
+    }
+
     @Override
     @SuppressWarnings("unchecked")
     public FeatureInfo[] getSystemAvailableFeatures() {
diff --git a/core/java/android/app/DialogFragment.java b/core/java/android/app/DialogFragment.java
index 9caf752..3198c7c 100644
--- a/core/java/android/app/DialogFragment.java
+++ b/core/java/android/app/DialogFragment.java
@@ -361,8 +361,8 @@
     }
 
     @Override
-    public void onAttach(Activity activity) {
-        super.onAttach(activity);
+    public void onAttach(Context context) {
+        super.onAttach(context);
         if (!mShownByMe) {
             // If not explicitly shown through our API, take this as an
             // indication that the dialog is no longer dismissed.
@@ -394,7 +394,6 @@
             mShowsDialog = savedInstanceState.getBoolean(SAVED_SHOWS_DIALOG, mShowsDialog);
             mBackStackId = savedInstanceState.getInt(SAVED_BACK_STACK_ID, -1);
         }
-        
     }
 
     /** @hide */
@@ -473,11 +472,15 @@
         View view = getView();
         if (view != null) {
             if (view.getParent() != null) {
-                throw new IllegalStateException("DialogFragment can not be attached to a container view");
+                throw new IllegalStateException(
+                        "DialogFragment can not be attached to a container view");
             }
             mDialog.setContentView(view);
         }
-        mDialog.setOwnerActivity(getActivity());
+        final Activity activity = getActivity();
+        if (activity != null) {
+            mDialog.setOwnerActivity(activity);
+        }
         mDialog.setCancelable(mCancelable);
         if (!mDialog.takeCancelAndDismissListeners("DialogFragment", this, this)) {
             throw new IllegalStateException(
diff --git a/core/java/android/app/DownloadManager.java b/core/java/android/app/DownloadManager.java
index e681d47..29bc4d8 100644
--- a/core/java/android/app/DownloadManager.java
+++ b/core/java/android/app/DownloadManager.java
@@ -370,6 +370,7 @@
          * {@link ConnectivityManager#TYPE_BLUETOOTH}.
          * @hide
          */
+        @Deprecated
         public static final int NETWORK_BLUETOOTH = 1 << 2;
 
         private Uri mUri;
@@ -381,6 +382,7 @@
         private int mAllowedNetworkTypes = ~0; // default to all network types allowed
         private boolean mRoamingAllowed = true;
         private boolean mMeteredAllowed = true;
+        private int mFlags = 0;
         private boolean mIsVisibleInDownloadsUi = true;
         private boolean mScannable = false;
         private boolean mUseSystemCache = false;
@@ -669,6 +671,10 @@
          * By default, all network types are allowed. Consider using
          * {@link #setAllowedOverMetered(boolean)} instead, since it's more
          * flexible.
+         * <p>
+         * As of {@link android.os.Build.VERSION_CODES#N}, setting only the
+         * {@link #NETWORK_WIFI} flag here is equivalent to calling
+         * {@link #setAllowedOverMetered(boolean)} with {@code false}.
          *
          * @param flags any combination of the NETWORK_* bit flags.
          * @return this object
@@ -701,6 +707,42 @@
         }
 
         /**
+         * Specify that to run this download, the device needs to be plugged in.
+         * This defaults to false.
+         *
+         * @param requiresCharging Whether or not the device is plugged in.
+         * @see android.app.job.JobInfo.Builder#setRequiresCharging(boolean)
+         */
+        public Request setRequiresCharging(boolean requiresCharging) {
+            if (requiresCharging) {
+                mFlags |= Downloads.Impl.FLAG_REQUIRES_CHARGING;
+            } else {
+                mFlags &= ~Downloads.Impl.FLAG_REQUIRES_CHARGING;
+            }
+            return this;
+        }
+
+        /**
+         * Specify that to run, the download needs the device to be in idle
+         * mode. This defaults to false.
+         * <p>
+         * Idle mode is a loose definition provided by the system, which means
+         * that the device is not in use, and has not been in use for some time.
+         *
+         * @param requiresDeviceIdle Whether or not the device need be within an
+         *            idle maintenance window.
+         * @see android.app.job.JobInfo.Builder#setRequiresDeviceIdle(boolean)
+         */
+        public Request setRequiresDeviceIdle(boolean requiresDeviceIdle) {
+            if (requiresDeviceIdle) {
+                mFlags |= Downloads.Impl.FLAG_REQUIRES_DEVICE_IDLE;
+            } else {
+                mFlags &= ~Downloads.Impl.FLAG_REQUIRES_DEVICE_IDLE;
+            }
+            return this;
+        }
+
+        /**
          * Set whether this download should be displayed in the system's Downloads UI. True by
          * default.
          * @param isVisible whether to display this download in the Downloads UI
@@ -746,6 +788,7 @@
             values.put(Downloads.Impl.COLUMN_ALLOWED_NETWORK_TYPES, mAllowedNetworkTypes);
             values.put(Downloads.Impl.COLUMN_ALLOW_ROAMING, mRoamingAllowed);
             values.put(Downloads.Impl.COLUMN_ALLOW_METERED, mMeteredAllowed);
+            values.put(Downloads.Impl.COLUMN_FLAGS, mFlags);
             values.put(Downloads.Impl.COLUMN_IS_VISIBLE_IN_DOWNLOADS_UI, mIsVisibleInDownloadsUi);
 
             return values;
@@ -983,16 +1026,7 @@
             // called with nothing to remove!
             throw new IllegalArgumentException("input param 'ids' can't be null");
         }
-        ContentValues values = new ContentValues();
-        values.put(Downloads.Impl.COLUMN_DELETED, 1);
-        // if only one id is passed in, then include it in the uri itself.
-        // this will eliminate a full database scan in the download service.
-        if (ids.length == 1) {
-            return mResolver.update(ContentUris.withAppendedId(mBaseUri, ids[0]), values,
-                    null, null);
-        } 
-        return mResolver.update(mBaseUri, values, getWhereClauseForIds(ids),
-                getWhereArgsForIds(ids));
+        return mResolver.delete(mBaseUri, getWhereClauseForIds(ids), getWhereArgsForIds(ids));
     }
 
     /**
@@ -1121,6 +1155,20 @@
     }
 
     /**
+     * Force the given downloads to proceed even if their size is larger than
+     * {@link #getMaxBytesOverMobile(Context)}.
+     *
+     * @hide
+     */
+    public void forceDownload(long... ids) {
+        ContentValues values = new ContentValues();
+        values.put(Downloads.Impl.COLUMN_STATUS, Downloads.Impl.STATUS_PENDING);
+        values.put(Downloads.Impl.COLUMN_CONTROL, Downloads.Impl.CONTROL_RUN);
+        values.put(Downloads.Impl.COLUMN_BYPASS_RECOMMENDED_SIZE_LIMIT, 1);
+        mResolver.update(mBaseUri, values, getWhereClauseForIds(ids), getWhereArgsForIds(ids));
+    }
+
+    /**
      * Returns maximum size, in bytes, of downloads that may go over a mobile connection; or null if
      * there's no limit
      *
diff --git a/core/java/android/app/Fragment.java b/core/java/android/app/Fragment.java
index 29f594f..f4fe1eb 100644
--- a/core/java/android/app/Fragment.java
+++ b/core/java/android/app/Fragment.java
@@ -17,6 +17,7 @@
 package android.app;
 
 import android.animation.Animator;
+import android.annotation.CallSuper;
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.annotation.StringRes;
@@ -28,6 +29,7 @@
 import android.content.res.Resources;
 import android.content.res.TypedArray;
 import android.os.Build;
+import android.os.Build.VERSION_CODES;
 import android.os.Bundle;
 import android.os.Parcel;
 import android.os.Parcelable;
@@ -1030,14 +1032,46 @@
      * This may be used by the system to prioritize operations such as fragment lifecycle updates
      * or loader ordering behavior.</p>
      *
+     * <p><strong>Note:</strong> Prior to Android N there was a platform bug that could cause
+     * <code>setUserVisibleHint</code> to bring a fragment up to the started state before its
+     * <code>FragmentTransaction</code> had been committed. As some apps relied on this behavior,
+     * it is preserved for apps that declare a <code>targetSdkVersion</code> of 23 or lower.</p>
+     *
      * @param isVisibleToUser true if this fragment's UI is currently visible to the user (default),
      *                        false if it is not.
      */
     public void setUserVisibleHint(boolean isVisibleToUser) {
-        if (!mUserVisibleHint && isVisibleToUser && mState < STARTED
-                && mFragmentManager != null && isAdded()) {
+        // Prior to Android N we were simply checking if this fragment had a FragmentManager
+        // set before we would trigger a deferred start. Unfortunately this also gets set before
+        // a fragment transaction is committed, so if setUserVisibleHint was called before a
+        // transaction commit, we would start the fragment way too early. FragmentPagerAdapter
+        // triggers this situation.
+        // Unfortunately some apps relied on this timing in overrides of setUserVisibleHint
+        // on their own fragments, and expected, however erroneously, that after a call to
+        // super.setUserVisibleHint their onStart methods had been run.
+        // We preserve this behavior for apps targeting old platform versions below.
+        boolean useBrokenAddedCheck = false;
+        Context context = getContext();
+        if (mFragmentManager != null && mFragmentManager.mHost != null) {
+            context = mFragmentManager.mHost.getContext();
+        }
+        if (context != null) {
+            useBrokenAddedCheck = context.getApplicationInfo().targetSdkVersion <= VERSION_CODES.M;
+        }
+
+        final boolean performDeferredStart;
+        if (useBrokenAddedCheck) {
+            performDeferredStart = !mUserVisibleHint && isVisibleToUser && mState < STARTED
+                    && mFragmentManager != null;
+        } else {
+            performDeferredStart = !mUserVisibleHint && isVisibleToUser && mState < STARTED
+                    && mFragmentManager != null && isAdded();
+        }
+
+        if (performDeferredStart) {
             mFragmentManager.performPendingDeferredStart(this);
         }
+
         mUserVisibleHint = isVisibleToUser;
         mDeferStart = mState < STARTED && !isVisibleToUser;
     }
@@ -1302,6 +1336,7 @@
      * @deprecated Use {@link #onInflate(Context, AttributeSet, Bundle)} instead.
      */
     @Deprecated
+    @CallSuper
     public void onInflate(AttributeSet attrs, Bundle savedInstanceState) {
         mCalled = true;
     }
@@ -1348,6 +1383,7 @@
      * @param savedInstanceState If the fragment is being re-created from
      * a previous saved state, this is the state.
      */
+    @CallSuper
     public void onInflate(Context context, AttributeSet attrs, Bundle savedInstanceState) {
         onInflate(attrs, savedInstanceState);
         mCalled = true;
@@ -1388,6 +1424,7 @@
      * @deprecated Use {@link #onInflate(Context, AttributeSet, Bundle)} instead.
      */
     @Deprecated
+    @CallSuper
     public void onInflate(Activity activity, AttributeSet attrs, Bundle savedInstanceState) {
         mCalled = true;
     }
@@ -1396,6 +1433,7 @@
      * Called when a fragment is first attached to its context.
      * {@link #onCreate(Bundle)} will be called after this.
      */
+    @CallSuper
     public void onAttach(Context context) {
         mCalled = true;
         final Activity hostActivity = mHost == null ? null : mHost.getActivity();
@@ -1409,6 +1447,7 @@
      * @deprecated Use {@link #onAttach(Context)} instead.
      */
     @Deprecated
+    @CallSuper
     public void onAttach(Activity activity) {
         mCalled = true;
     }
@@ -1440,6 +1479,7 @@
      * @param savedInstanceState If the fragment is being re-created from
      * a previous saved state, this is the state.
      */
+    @CallSuper
     public void onCreate(@Nullable Bundle savedInstanceState) {
         mCalled = true;
         final Context context = getContext();
@@ -1525,6 +1565,7 @@
      * @param savedInstanceState If the fragment is being re-created from
      * a previous saved state, this is the state.
      */
+    @CallSuper
     public void onActivityCreated(@Nullable Bundle savedInstanceState) {
         mCalled = true;
     }
@@ -1540,6 +1581,7 @@
      * @param savedInstanceState If the fragment is being re-created from
      * a previous saved state, this is the state.
      */
+    @CallSuper
     public void onViewStateRestored(Bundle savedInstanceState) {
         mCalled = true;
     }
@@ -1549,6 +1591,7 @@
      * tied to {@link Activity#onStart() Activity.onStart} of the containing
      * Activity's lifecycle.
      */
+    @CallSuper
     public void onStart() {
         mCalled = true;
 
@@ -1570,6 +1613,7 @@
      * tied to {@link Activity#onResume() Activity.onResume} of the containing
      * Activity's lifecycle.
      */
+    @CallSuper
     public void onResume() {
         mCalled = true;
     }
@@ -1615,6 +1659,7 @@
     public void onPictureInPictureModeChanged(boolean isInPictureInPictureMode) {
     }
 
+    @CallSuper
     public void onConfigurationChanged(Configuration newConfig) {
         mCalled = true;
     }
@@ -1624,6 +1669,7 @@
      * tied to {@link Activity#onPause() Activity.onPause} of the containing
      * Activity's lifecycle.
      */
+    @CallSuper
     public void onPause() {
         mCalled = true;
     }
@@ -1633,14 +1679,17 @@
      * tied to {@link Activity#onStop() Activity.onStop} of the containing
      * Activity's lifecycle.
      */
+    @CallSuper
     public void onStop() {
         mCalled = true;
     }
 
+    @CallSuper
     public void onLowMemory() {
         mCalled = true;
     }
 
+    @CallSuper
     public void onTrimMemory(int level) {
         mCalled = true;
     }
@@ -1654,6 +1703,7 @@
      * non-null view.  Internally it is called after the view's state has
      * been saved but before it has been removed from its parent.
      */
+    @CallSuper
     public void onDestroyView() {
         mCalled = true;
     }
@@ -1662,6 +1712,7 @@
      * Called when the fragment is no longer in use.  This is called
      * after {@link #onStop()} and before {@link #onDetach()}.
      */
+    @CallSuper
     public void onDestroy() {
         mCalled = true;
         //Log.v("foo", "onDestroy: mCheckedForLoaderManager=" + mCheckedForLoaderManager
@@ -1710,20 +1761,9 @@
      * Activity re-creation (see {@link #setRetainInstance(boolean)}), in which case it is called
      * after {@link #onStop()}.
      */
+    @CallSuper
     public void onDetach() {
         mCalled = true;
-
-        // Destroy the child FragmentManager if we still have it here.
-        // We won't unless we're retaining our instance and if we do,
-        // our child FragmentManager instance state will have already been saved.
-        if (mChildFragmentManager != null) {
-            if (!mRetaining) {
-                throw new IllegalStateException("Child FragmentManager of " + this + " was not "
-                        + " destroyed and this fragment is not retaining instance");
-            }
-            mChildFragmentManager.dispatchDestroy();
-            mChildFragmentManager = null;
-        }
     }
 
     /**
@@ -2535,6 +2575,27 @@
         mChildFragmentManager = null;
     }
 
+    void performDetach() {
+        mCalled = false;
+        onDetach();
+        if (!mCalled) {
+            throw new SuperNotCalledException("Fragment " + this
+                    + " did not call through to super.onDetach()");
+        }
+
+        // Destroy the child FragmentManager if we still have it here.
+        // We won't unless we're retaining our instance and if we do,
+        // our child FragmentManager instance state will have already been saved.
+        if (mChildFragmentManager != null) {
+            if (!mRetaining) {
+                throw new IllegalStateException("Child FragmentManager of " + this + " was not "
+                        + " destroyed and this fragment is not retaining instance");
+            }
+            mChildFragmentManager.dispatchDestroy();
+            mChildFragmentManager = null;
+        }
+    }
+
     private static Transition loadTransition(Context context, TypedArray typedArray,
             Transition currentValue, Transition defaultValue, int id) {
         if (currentValue != defaultValue) {
diff --git a/core/java/android/app/FragmentHostCallback.java b/core/java/android/app/FragmentHostCallback.java
index cf6b114..e1d7136 100644
--- a/core/java/android/app/FragmentHostCallback.java
+++ b/core/java/android/app/FragmentHostCallback.java
@@ -308,15 +308,22 @@
     ArrayMap<String, LoaderManager> retainLoaderNonConfig() {
         boolean retainLoaders = false;
         if (mAllLoaderManagers != null) {
-            // prune out any loader managers that were already stopped and so
-            // have nothing useful to retain.
+            // Restart any loader managers that were already stopped so that they
+            // will be ready to retain
             final int N = mAllLoaderManagers.size();
             LoaderManagerImpl loaders[] = new LoaderManagerImpl[N];
             for (int i=N-1; i>=0; i--) {
                 loaders[i] = (LoaderManagerImpl) mAllLoaderManagers.valueAt(i);
             }
+            final boolean doRetainLoaders = getRetainLoaders();
             for (int i=0; i<N; i++) {
                 LoaderManagerImpl lm = loaders[i];
+                if (!lm.mRetaining && doRetainLoaders) {
+                    if (!lm.mStarted) {
+                        lm.doStart();
+                    }
+                    lm.doRetain();
+                }
                 if (lm.mRetaining) {
                     retainLoaders = true;
                 } else {
diff --git a/core/java/android/app/FragmentManager.java b/core/java/android/app/FragmentManager.java
index 8369f17..d795385 100644
--- a/core/java/android/app/FragmentManager.java
+++ b/core/java/android/app/FragmentManager.java
@@ -1114,15 +1114,10 @@
                             if (!f.mRetaining) {
                                 f.performDestroy();
                             } else {
-                                f.mState = Fragment.CREATED;
+                                f.mState = Fragment.INITIALIZING;
                             }
 
-                            f.mCalled = false;
-                            f.onDetach();
-                            if (!f.mCalled) {
-                                throw new SuperNotCalledException("Fragment " + f
-                                        + " did not call through to super.onDetach()");
-                            }
+                            f.performDetach();
                             if (!keepActive) {
                                 if (!f.mRetaining) {
                                     makeInactive(f);
diff --git a/core/java/android/app/IActivityManager.java b/core/java/android/app/IActivityManager.java
index 6975116..66b4fcf 100644
--- a/core/java/android/app/IActivityManager.java
+++ b/core/java/android/app/IActivityManager.java
@@ -235,7 +235,7 @@
     public boolean stopServiceToken(ComponentName className, IBinder token,
             int startId) throws RemoteException;
     public void setServiceForeground(ComponentName className, IBinder token,
-            int id, Notification notification, boolean keepNotification) throws RemoteException;
+            int id, Notification notification, int flags) throws RemoteException;
     public int bindService(IApplicationThread caller, IBinder token, Intent service,
             String resolvedType, IServiceConnection connection, int flags,
             String callingPackage, int userId) throws RemoteException;
@@ -555,7 +555,7 @@
 
     public int getActivityDisplayId(IBinder activityToken) throws RemoteException;
 
-    public void startLockTaskModeOnCurrent() throws RemoteException;
+    public void startSystemLockTaskMode(int taskId) throws RemoteException;
 
     public void startLockTaskMode(int taskId) throws RemoteException;
 
@@ -563,7 +563,7 @@
 
     public void stopLockTaskMode() throws RemoteException;
 
-    public void stopLockTaskModeOnCurrent() throws RemoteException;
+    public void stopSystemLockTaskMode() throws RemoteException;
 
     public boolean isInLockTaskMode() throws RemoteException;
 
@@ -649,6 +649,8 @@
 
     public void notifyLockedProfile(@UserIdInt int userId) throws RemoteException;
 
+    public void startConfirmDeviceCredentialIntent(Intent intent) throws RemoteException;
+
     /*
      * Private non-Binder interfaces
      */
@@ -949,8 +951,8 @@
     int START_VOICE_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+218;
     int GET_ACTIVITY_OPTIONS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+219;
     int GET_APP_TASKS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+220;
-    int START_LOCK_TASK_BY_CURRENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+221;
-    int STOP_LOCK_TASK_BY_CURRENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+222;
+    int START_SYSTEM_LOCK_TASK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+221;
+    int STOP_SYSTEM_LOCK_TASK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+222;
     int FINISH_VOICE_TASK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+223;
     int IS_TOP_OF_TASK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+224;
     int REQUEST_VISIBLE_BEHIND_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+225;
@@ -1032,4 +1034,5 @@
     int IS_VR_PACKAGE_ENABLED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION + 371;
     int SWAP_DOCKED_AND_FULLSCREEN_STACK = IBinder.FIRST_CALL_TRANSACTION + 372;
     int NOTIFY_LOCKED_PROFILE = IBinder.FIRST_CALL_TRANSACTION + 373;
+    int START_CONFIRM_DEVICE_CREDENTIAL_INTENT = IBinder.FIRST_CALL_TRANSACTION + 374;
 }
diff --git a/core/java/android/app/IWallpaperManager.aidl b/core/java/android/app/IWallpaperManager.aidl
index 2fc6533..a42aed6 100644
--- a/core/java/android/app/IWallpaperManager.aidl
+++ b/core/java/android/app/IWallpaperManager.aidl
@@ -43,7 +43,8 @@
      * new wallpaper content is ready to display.
      */
     ParcelFileDescriptor setWallpaper(String name, in String callingPackage,
-            in Rect cropHint, out Bundle extras, int which, IWallpaperManagerCallback completion);
+            in Rect cropHint, boolean allowBackup, out Bundle extras, int which,
+            IWallpaperManagerCallback completion);
 
     /**
      * Set the live wallpaper. This only affects the system wallpaper.
@@ -125,6 +126,11 @@
     boolean isWallpaperSettingAllowed(in String callingPackage);
 
     /*
+     * Backup: is the current system wallpaper image eligible for off-device backup?
+     */
+    boolean isWallpaperBackupEligible(int userId);
+
+    /*
      * Keyguard: register a callback for being notified that lock-state relevant
      * wallpaper content has changed.
      */
diff --git a/core/java/android/app/Instrumentation.java b/core/java/android/app/Instrumentation.java
index 4fca69a..95ea2a5 100644
--- a/core/java/android/app/Instrumentation.java
+++ b/core/java/android/app/Instrumentation.java
@@ -1797,7 +1797,7 @@
         if (res >= ActivityManager.START_SUCCESS) {
             return;
         }
-        
+
         switch (res) {
             case ActivityManager.START_INTENT_NOT_RESOLVED:
             case ActivityManager.START_CLASS_NOT_FOUND:
@@ -1820,6 +1820,15 @@
             case ActivityManager.START_NOT_VOICE_COMPATIBLE:
                 throw new SecurityException(
                         "Starting under voice control not allowed for: " + intent);
+            case ActivityManager.START_VOICE_NOT_ACTIVE_SESSION:
+                throw new IllegalStateException(
+                        "Session calling startVoiceActivity does not match active session");
+            case ActivityManager.START_VOICE_HIDDEN_SESSION:
+                throw new IllegalStateException(
+                        "Cannot start voice activity on a hidden session");
+            case ActivityManager.START_CANCELED:
+                throw new AndroidRuntimeException("Activity could not be started for "
+                        + intent);
             default:
                 throw new AndroidRuntimeException("Unknown error code "
                         + res + " when starting " + intent);
diff --git a/core/java/android/app/JobSchedulerImpl.java b/core/java/android/app/JobSchedulerImpl.java
index b3a486f..e30b96f 100644
--- a/core/java/android/app/JobSchedulerImpl.java
+++ b/core/java/android/app/JobSchedulerImpl.java
@@ -78,4 +78,13 @@
             return null;
         }
     }
+
+    @Override
+    public JobInfo getPendingJob(int jobId) {
+        try {
+            return mBinder.getPendingJob(jobId);
+        } catch (RemoteException e) {
+            return null;
+        }
+    }
 }
diff --git a/core/java/android/app/ListFragment.java b/core/java/android/app/ListFragment.java
index dc8420e..0b96d84 100644
--- a/core/java/android/app/ListFragment.java
+++ b/core/java/android/app/ListFragment.java
@@ -274,7 +274,7 @@
     }
 
     /**
-     * Get the activity's list view widget.
+     * Get the fragment's list view widget.
      */
     public ListView getListView() {
         ensureList();
@@ -346,9 +346,9 @@
         if (shown) {
             if (animate) {
                 mProgressContainer.startAnimation(AnimationUtils.loadAnimation(
-                        getActivity(), android.R.anim.fade_out));
+                        getContext(), android.R.anim.fade_out));
                 mListContainer.startAnimation(AnimationUtils.loadAnimation(
-                        getActivity(), android.R.anim.fade_in));
+                        getContext(), android.R.anim.fade_in));
             } else {
                 mProgressContainer.clearAnimation();
                 mListContainer.clearAnimation();
@@ -358,9 +358,9 @@
         } else {
             if (animate) {
                 mProgressContainer.startAnimation(AnimationUtils.loadAnimation(
-                        getActivity(), android.R.anim.fade_in));
+                        getContext(), android.R.anim.fade_in));
                 mListContainer.startAnimation(AnimationUtils.loadAnimation(
-                        getActivity(), android.R.anim.fade_out));
+                        getContext(), android.R.anim.fade_out));
             } else {
                 mProgressContainer.clearAnimation();
                 mListContainer.clearAnimation();
@@ -371,7 +371,7 @@
     }
     
     /**
-     * Get the ListAdapter associated with this activity's ListView.
+     * Get the ListAdapter associated with this fragment's ListView.
      */
     public ListAdapter getListAdapter() {
         return mAdapter;
diff --git a/core/java/android/app/LoadedApk.java b/core/java/android/app/LoadedApk.java
index e090aa4..fb70c71 100644
--- a/core/java/android/app/LoadedApk.java
+++ b/core/java/android/app/LoadedApk.java
@@ -29,6 +29,7 @@
 import android.content.res.CompatibilityInfo;
 import android.content.res.Resources;
 import android.os.Bundle;
+import android.os.Environment;
 import android.os.FileUtils;
 import android.os.Handler;
 import android.os.IBinder;
@@ -38,6 +39,9 @@
 import android.os.SystemProperties;
 import android.os.Trace;
 import android.os.UserHandle;
+import android.system.Os;
+import android.system.OsConstants;
+import android.system.ErrnoException;
 import android.text.TextUtils;
 import android.util.AndroidRuntimeException;
 import android.util.ArrayMap;
@@ -50,6 +54,7 @@
 import dalvik.system.VMRuntime;
 
 import java.io.File;
+import java.io.FileDescriptor;
 import java.io.IOException;
 import java.io.InputStream;
 import java.lang.ref.WeakReference;
@@ -62,6 +67,8 @@
 import java.util.List;
 import java.util.Objects;
 
+import libcore.io.IoUtils;
+
 final class IntentReceiverLeaked extends AndroidRuntimeException {
     public IntentReceiverLeaked(String msg) {
         super(msg);
@@ -405,6 +412,8 @@
 
     private void createOrUpdateClassLoaderLocked(List<String> addedPaths) {
         if (mPackageName.equals("android")) {
+            // Note: This branch is taken for system server and we don't need to setup
+            // jit profiling support.
             if (mClassLoader != null) {
                 // nothing to update
                 return;
@@ -425,7 +434,8 @@
         if (!Objects.equals(mPackageName, ActivityThread.currentPackageName())) {
             VMRuntime.getRuntime().vmInstructionSet();
             try {
-                ActivityThread.getPackageManager().notifyPackageUse(mPackageName);
+                ActivityThread.getPackageManager().notifyPackageUse(mPackageName,
+                        PackageManager.NOTIFY_PACKAGE_USE_CROSS_PACKAGE);
             } catch (RemoteException re) {
                 throw re.rethrowFromSystemServer();
             }
@@ -472,6 +482,7 @@
             Slog.v(ActivityThread.TAG, "Class path: " + zip +
                     ", JNI path: " + librarySearchPath);
 
+        boolean needToSetupJitProfiles = false;
         if (mClassLoader == null) {
             // Temporarily disable logging of disk reads on the Looper thread
             // as this is early and necessary.
@@ -482,11 +493,29 @@
                     libraryPermittedPath, mBaseClassLoader);
 
             StrictMode.setThreadPolicy(oldPolicy);
+            // Setup the class loader paths for profiling.
+            needToSetupJitProfiles = true;
         }
 
         if (addedPaths != null && addedPaths.size() > 0) {
             final String add = TextUtils.join(File.pathSeparator, addedPaths);
             ApplicationLoaders.getDefault().addPath(mClassLoader, add);
+            // Setup the new code paths for profiling.
+            needToSetupJitProfiles = true;
+        }
+
+        // Setup jit profile support.
+        // It is ok to call this multiple times if the application gets updated with new splits.
+        // The runtime only keeps track of unique code paths and can handle re-registration of
+        // the same code path. There's no need to pass `addedPaths` since any new code paths
+        // are already in `mApplicationInfo`.
+        if (needToSetupJitProfiles) {
+            // Temporarily disable logging of disk reads/writes on the Looper thread
+            // as this is early and necessary. Write is only needed to create the
+            // profile file if it's not already there.
+            StrictMode.ThreadPolicy oldPolicy = StrictMode.allowThreadDiskWrites();
+            setupJitProfileSupport();
+            StrictMode.setThreadPolicy(oldPolicy);
         }
     }
 
@@ -499,6 +528,83 @@
         }
     }
 
+    // Keep in sync with installd (frameworks/native/cmds/installd/commands.cpp).
+    private static File getPrimaryProfileFile(String packageName) {
+        File profileDir = Environment.getDataProfilesDePackageDirectory(
+                UserHandle.myUserId(), packageName);
+        return new File(profileDir, "primary.prof");
+    }
+
+    private void setupJitProfileSupport() {
+        if (!SystemProperties.getBoolean("dalvik.vm.usejitprofiles", false)) {
+            return;
+        }
+        final List<String> codePaths = new ArrayList<>();
+        if ((mApplicationInfo.flags & ApplicationInfo.FLAG_HAS_CODE) != 0) {
+            codePaths.add(mApplicationInfo.sourceDir);
+        }
+        if (mApplicationInfo.splitSourceDirs != null) {
+            Collections.addAll(codePaths, mApplicationInfo.splitSourceDirs);
+        }
+
+        if (codePaths.isEmpty()) {
+            // If there are no code paths there's no need to setup a profile file and register with
+            // the runtime,
+            return;
+        }
+
+        final File profileFile = getPrimaryProfileFile(mPackageName);
+        if (profileFile.exists()) {
+            if (!profileFile.canRead() || !profileFile.canWrite()) {
+                // The apk might be loaded in a context where we don't have permissions
+                // to track the profile (e.g. when loaded by another app via
+                // createApplicationContext)
+                return;
+            }
+        } else {
+            // Profile does not exist. Create it.
+            FileDescriptor fd = null;
+            try {
+                final int permissions = 0600;  // read-write for user.
+                fd = Os.open(profileFile.getAbsolutePath(), OsConstants.O_CREAT, permissions);
+                Os.fchmod(fd, permissions);
+                Os.fchown(fd, mApplicationInfo.uid, mApplicationInfo.uid);
+            } catch (ErrnoException e) {
+                if (e.errno == OsConstants.EACCES) {
+                    // It can happen that the profile file does not exist but the apk is loaded in a
+                    // context where we don't have permissions (e.g. when loaded by another app via
+                    // createApplicationContext)
+                    return;
+                }
+                Log.v(TAG, "Unable to create jit profile file "
+                        + profileFile + ": " + e.getMessage());
+                try {
+                    Os.unlink(profileFile.getAbsolutePath());
+                } catch (ErrnoException unlinkErr) {
+                    if (unlinkErr.errno != OsConstants.ENOENT) {
+                        Log.v(TAG, "Unable to unlink jit profile file "
+                                + profileFile + ": " + unlinkErr.getMessage());
+                    }
+                }
+                return;
+            } finally {
+                IoUtils.closeQuietly(fd);
+            }
+        }
+
+        final File foreignDexProfilesFile =
+                Environment.getDataProfilesDeForeignDexDirectory(UserHandle.myUserId());
+        String foreignDexProfilesPath = null;
+        if (!foreignDexProfilesFile.exists()) {
+            Log.v(TAG, "ForeignDexProfilesPath does not exists:" +
+                    foreignDexProfilesFile.getPath());
+        } else {
+            foreignDexProfilesPath = foreignDexProfilesFile.getAbsolutePath();
+        }
+        VMRuntime.registerAppInfo(profileFile.getAbsolutePath(), mApplicationInfo.dataDir,
+                codePaths.toArray(new String[codePaths.size()]), foreignDexProfilesPath);
+    }
+
     /**
      * Setup value for Thread.getContextClassLoader(). If the
      * package will not run in in a VM with other packages, we set
diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java
index 400a313..d7705b9 100644
--- a/core/java/android/app/Notification.java
+++ b/core/java/android/app/Notification.java
@@ -25,7 +25,6 @@
 import android.content.Context;
 import android.content.Intent;
 import android.content.pm.ApplicationInfo;
-import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
 import android.content.pm.PackageManager.NameNotFoundException;
 import android.content.res.ColorStateList;
@@ -186,6 +185,11 @@
     public long when;
 
     /**
+     * The creation time of the notification
+     */
+    private long creationTime;
+
+    /**
      * The resource id of a drawable to use as the icon in the status bar.
      *
      * @deprecated Use {@link Builder#setSmallIcon(Icon)} instead.
@@ -943,10 +947,10 @@
     public static final String EXTRA_ALLOW_GENERATED_REPLIES = "android.allowGeneratedReplies";
 
     /**
-     * {@link #extras} key: a {@link String} to be displayed as the title to a thread represented by
-     * a {@link android.app.Notification.MessagingStyle}
+     * {@link #extras} key: a {@link String} to be displayed as the title to a conversation
+     * represented by a {@link android.app.Notification.MessagingStyle}
      */
-    public static final String EXTRA_THREAD_TITLE = "android.threadTitle";
+    public static final String EXTRA_CONVERSATION_TITLE = "android.conversationTitle";
 
     /**
      * {@link #extras} key: an array of {@link android.app.Notification.MessagingStyle.Message}
@@ -972,10 +976,8 @@
      */
     public static final String EXTRA_CONTAINS_CUSTOM_VIEW = "android.contains.customView";
 
-    /**
-     * @SystemApi
-     * @hide
-     */
+    /** @hide */
+    @SystemApi
     public static final String EXTRA_SUBSTITUTE_APP_NAME = "android.substName";
 
     private Icon mSmallIcon;
@@ -1480,6 +1482,7 @@
     public Notification()
     {
         this.when = System.currentTimeMillis();
+        this.creationTime = System.currentTimeMillis();
         this.priority = PRIORITY_DEFAULT;
     }
 
@@ -1517,6 +1520,7 @@
         this.icon = icon;
         this.tickerText = tickerText;
         this.when = when;
+        this.creationTime = System.currentTimeMillis();
     }
 
     /**
@@ -1527,6 +1531,7 @@
         int version = parcel.readInt();
 
         when = parcel.readLong();
+        creationTime = parcel.readLong();
         if (parcel.readInt() != 0) {
             mSmallIcon = Icon.CREATOR.createFromParcel(parcel);
             if (mSmallIcon.getType() == Icon.TYPE_RESOURCE) {
@@ -1615,6 +1620,7 @@
      */
     public void cloneInto(Notification that, boolean heavy) {
         that.when = this.when;
+        that.creationTime = this.creationTime;
         that.mSmallIcon = this.mSmallIcon;
         that.number = this.number;
 
@@ -1795,6 +1801,7 @@
         parcel.writeInt(1);
 
         parcel.writeLong(when);
+        parcel.writeLong(creationTime);
         if (mSmallIcon == null && icon != 0) {
             // you snuck an icon in here without using the builder; let's try to keep it
             mSmallIcon = Icon.createWithResource("", icon);
@@ -3130,6 +3137,7 @@
             contentView.setViewVisibility(R.id.header_text, View.GONE);
             contentView.setViewVisibility(R.id.header_text_divider, View.GONE);
             contentView.setViewVisibility(R.id.time_divider, View.GONE);
+            contentView.setViewVisibility(R.id.time, View.GONE);
             contentView.setImageViewIcon(R.id.profile_badge, null);
             contentView.setViewVisibility(R.id.profile_badge, View.GONE);
         }
@@ -3260,11 +3268,15 @@
                             mN.when + (SystemClock.elapsedRealtime() - System.currentTimeMillis()));
                     contentView.setBoolean(R.id.chronometer, "setStarted", true);
                     boolean countsDown = mN.extras.getBoolean(EXTRA_CHRONOMETER_COUNTS_DOWN);
-                    contentView.setChronometerCountsDown(R.id.chronometer, countsDown);
+                    contentView.setChronometerCountDown(R.id.chronometer, countsDown);
                 } else {
                     contentView.setViewVisibility(R.id.time, View.VISIBLE);
                     contentView.setLong(R.id.time, "setTime", mN.when);
                 }
+            } else {
+                // We still want a time to be set but gone, such that we can show and hide it
+                // on demand in case it's a child notification without anything in the header
+                contentView.setLong(R.id.time, "setTime", mN.when != 0 ? mN.when : mN.creationTime);
             }
         }
 
@@ -3287,7 +3299,10 @@
             }
         }
 
-        private String loadHeaderAppName() {
+        /**
+         * @hide
+         */
+        public String loadHeaderAppName() {
             CharSequence name = null;
             final PackageManager pm = mContext.getPackageManager();
             if (mN.extras.containsKey(EXTRA_SUBSTITUTE_APP_NAME)) {
@@ -3332,7 +3347,7 @@
          *         otherwise
          */
         private boolean showsTimeOrChronometer() {
-            return mN.when != 0 && mN.extras.getBoolean(EXTRA_SHOW_WHEN);
+            return mN.showsTimeOrChronometer();
         }
 
         private void resetStandardTemplateWithActions(RemoteViews big) {
@@ -3694,6 +3709,8 @@
                 mN.extras = getAllExtras();
             }
 
+            mN.creationTime = System.currentTimeMillis();
+
             // lazy stuff from mContext; see comment in Builder(Context, Notification)
             Notification.addFieldsFromContext(mContext, mN);
 
@@ -3827,6 +3844,15 @@
     }
 
     /**
+     * @return true if the notification will show the time or the chronometer; false
+     *         otherwise
+     * @hide
+     */
+    public boolean showsTimeOrChronometer() {
+        return when != 0 && extras.getBoolean(EXTRA_SHOW_WHEN);
+    }
+
+    /**
      * An object that can apply a rich notification style to a {@link Notification.Builder}
      * object.
      */
@@ -4301,7 +4327,7 @@
         CharSequence mUserDisplayName;
         CharSequence mConversationTitle;
         boolean mAllowGeneratedReplies = true;
-        ArrayList<Message> mMessages = new ArrayList<>();
+        List<Message> mMessages = new ArrayList<>();
 
         MessagingStyle() {
         }
@@ -4414,11 +4440,11 @@
                 extras.putCharSequence(EXTRA_SELF_DISPLAY_NAME, mUserDisplayName);
             }
             if (mConversationTitle != null) {
-                extras.putCharSequence(EXTRA_THREAD_TITLE, mConversationTitle);
+                extras.putCharSequence(EXTRA_CONVERSATION_TITLE, mConversationTitle);
             }
             extras.putBoolean(EXTRA_ALLOW_GENERATED_REPLIES, mAllowGeneratedReplies);
-            if (!mMessages.isEmpty()) {
-                extras.putParcelableArrayList(EXTRA_MESSAGES, mMessages);
+            if (!mMessages.isEmpty()) { extras.putParcelableArray(EXTRA_MESSAGES,
+                    Message.getBundleArrayForMessages(mMessages));
             }
         }
 
@@ -4431,12 +4457,12 @@
 
             mMessages.clear();
             mUserDisplayName = extras.getString(EXTRA_SELF_DISPLAY_NAME);
-            mConversationTitle = extras.getString(EXTRA_THREAD_TITLE);
+            mConversationTitle = extras.getString(EXTRA_CONVERSATION_TITLE);
             mAllowGeneratedReplies = extras.getBoolean(EXTRA_ALLOW_GENERATED_REPLIES,
                     mAllowGeneratedReplies);
-            List<Message> messages = extras.getParcelableArrayList(EXTRA_MESSAGES);
-            if (messages != null) {
-                mMessages.addAll(messages);
+            Parcelable[] parcelables = extras.getParcelableArray(EXTRA_MESSAGES);
+            if (parcelables != null && parcelables instanceof Bundle[]) {
+                mMessages = Message.getMessagesFromBundleArray((Bundle[]) parcelables);
             }
         }
 
@@ -4537,7 +4563,13 @@
                     ColorStateList.valueOf(color), null);
         }
 
-        public static final class Message implements Parcelable {
+        public static final class Message {
+
+            static final String KEY_TEXT = "text";
+            static final String KEY_TIMESTAMP = "time";
+            static final String KEY_SENDER = "sender";
+            static final String KEY_DATA_MIME_TYPE = "type";
+            static final String KEY_DATA_URI= "uri";
 
             private final CharSequence mText;
             private final long mTimestamp;
@@ -4595,26 +4627,6 @@
                 return this;
             }
 
-            private Message(Parcel in) {
-                if (in.readInt() != 0) {
-                    mText = TextUtils.CHAR_SEQUENCE_CREATOR.createFromParcel(in);
-                } else {
-                    mText = null;
-                }
-                mTimestamp = in.readLong();
-                if (in.readInt() != 0) {
-                    mSender = TextUtils.CHAR_SEQUENCE_CREATOR.createFromParcel(in);
-                } else {
-                    mSender = null;
-                }
-                if (in.readInt() != 0) {
-                    mDataMimeType = in.readString();
-                }
-                if (in.readInt() != 0) {
-                    mDataUri = in.readParcelable(Uri.class.getClassLoader());
-                }
-            }
-
             /**
              * Get the text to be used for this message, or the fallback text if a type and content
              * Uri have been set
@@ -4652,49 +4664,64 @@
                 return mDataUri;
             }
 
-            @Override
-            public int describeContents() {
-                return 0;
-            }
-
-            @Override
-            public void writeToParcel(Parcel out, int flags) {
+            private Bundle toBundle() {
+                Bundle bundle = new Bundle();
                 if (mText != null) {
-                    out.writeInt(1);
-                    TextUtils.writeToParcel(mText, out, flags);
-                } else {
-                    out.writeInt(0);
+                    bundle.putCharSequence(KEY_TEXT, mText);
                 }
-                out.writeLong(mTimestamp);
+                bundle.putLong(KEY_TIMESTAMP, mTimestamp);
                 if (mSender != null) {
-                    out.writeInt(1);
-                    TextUtils.writeToParcel(mSender, out, flags);
-                } else {
-                    out.writeInt(0);
+                    bundle.putCharSequence(KEY_SENDER, mSender);
                 }
                 if (mDataMimeType != null) {
-                    out.writeInt(1);
-                    out.writeString(mDataMimeType);
-                } else {
-                    out.writeInt(0);
+                    bundle.putString(KEY_DATA_MIME_TYPE, mDataMimeType);
                 }
                 if (mDataUri != null) {
-                    out.writeInt(1);
-                    out.writeParcelable(mDataUri, flags);
-                } else {
-                    out.writeInt(0);
+                    bundle.putParcelable(KEY_DATA_URI, mDataUri);
                 }
+                return bundle;
             }
 
-            public static final Parcelable.Creator<Message> CREATOR =
-                    new Parcelable.Creator<Message>() {
-                        public Message createFromParcel(Parcel in) {
-                            return new Message(in);
+            static Bundle[] getBundleArrayForMessages(List<Message> messages) {
+                Bundle[] bundles = new Bundle[messages.size()];
+                final int N = messages.size();
+                for (int i = 0; i < N; i++) {
+                    bundles[i] = messages.get(i).toBundle();
+                }
+                return bundles;
+            }
+
+            static List<Message> getMessagesFromBundleArray(Bundle[] bundles) {
+                List<Message> messages = new ArrayList<>(bundles.length);
+                for (int i = 0; i < bundles.length; i++) {
+                    Message message = getMessageFromBundle(bundles[i]);
+                    if (message != null) {
+                        messages.add(message);
+                    }
+                }
+                return messages;
+            }
+
+            static Message getMessageFromBundle(Bundle bundle) {
+                try {
+                    if (!bundle.containsKey(KEY_TEXT) || !bundle.containsKey(KEY_TIMESTAMP) ||
+                            !bundle.containsKey(KEY_SENDER)) {
+                        return null;
+                    } else {
+                        Message message = new Message(bundle.getCharSequence(KEY_TEXT),
+                                bundle.getLong(KEY_TIMESTAMP), bundle.getCharSequence(KEY_SENDER));
+                        if (bundle.containsKey(KEY_DATA_MIME_TYPE) &&
+                                bundle.containsKey(KEY_DATA_URI)) {
+
+                            message.setData(bundle.getString(KEY_DATA_MIME_TYPE),
+                                    (Uri) bundle.getParcelable(KEY_DATA_URI));
                         }
-                        public Message[] newArray(int size) {
-                            return new Message[size];
-                        }
-                    };
+                        return message;
+                    }
+                } catch (ClassCastException e) {
+                    return null;
+                }
+            }
         }
     }
 
@@ -4797,33 +4824,37 @@
                 contentView.setViewVisibility(rowId, View.GONE);
             }
 
-            final boolean largeText =
-                    mBuilder.mContext.getResources().getConfiguration().fontScale > 1f;
-            final float subTextSize = mBuilder.mContext.getResources().getDimensionPixelSize(
-                    R.dimen.notification_subtext_size);
             int i=0;
-            final float density = mBuilder.mContext.getResources().getDisplayMetrics().density;
-            int topPadding = (int) (5 * density);
-            int bottomPadding = mBuilder.mContext.getResources().getDimensionPixelSize(
-                    com.android.internal.R.dimen.notification_content_margin_bottom);
+            int topPadding = mBuilder.mContext.getResources().getDimensionPixelSize(
+                    R.dimen.notification_inbox_item_top_padding);
             boolean first = true;
-            while (i < mTexts.size() && i < rowIds.length) {
+            int onlyViewId = 0;
+            int maxRows = rowIds.length;
+            if (mBuilder.mActions.size() > 0) {
+                maxRows--;
+            }
+            while (i < mTexts.size() && i < maxRows) {
                 CharSequence str = mTexts.get(i);
-                if (str != null && !str.equals("")) {
+                if (!TextUtils.isEmpty(str)) {
                     contentView.setViewVisibility(rowIds[i], View.VISIBLE);
                     contentView.setTextViewText(rowIds[i], mBuilder.processLegacyText(str));
-                    if (largeText) {
-                        contentView.setTextViewTextSize(rowIds[i], TypedValue.COMPLEX_UNIT_PX,
-                                subTextSize);
-                    }
-                    contentView.setViewPadding(rowIds[i], 0, topPadding, 0,
-                            i == rowIds.length - 1 || i == mTexts.size() - 1 ? bottomPadding : 0);
+                    contentView.setViewPadding(rowIds[i], 0, topPadding, 0, 0);
                     handleInboxImageMargin(contentView, rowIds[i], first);
+                    if (first) {
+                        onlyViewId = rowIds[i];
+                    } else {
+                        onlyViewId = 0;
+                    }
                     first = false;
                 }
                 i++;
             }
-
+            if (onlyViewId != 0) {
+                // We only have 1 entry, lets make it look like the normal Text of a Bigtext
+                topPadding = mBuilder.mContext.getResources().getDimensionPixelSize(
+                        R.dimen.notification_text_margin_top);
+                contentView.setViewPadding(onlyViewId, 0, topPadding, 0, 0);
+            }
 
             return contentView;
         }
@@ -5436,6 +5467,7 @@
         private static final int FLAG_HINT_SHOW_BACKGROUND_ONLY = 1 << 2;
         private static final int FLAG_START_SCROLL_BOTTOM = 1 << 3;
         private static final int FLAG_HINT_AVOID_BACKGROUND_CLIPPING = 1 << 4;
+        private static final int FLAG_BIG_PICTURE_AMBIENT = 1 << 5;
         private static final int FLAG_HINT_CONTENT_INTENT_LAUNCHES_ACTIVITY = 1 << 6;
 
         // Default value for flags integer
@@ -6004,6 +6036,29 @@
         }
 
         /**
+         * Set a hint that this notification's {@link BigPictureStyle} (if present) should be
+         * converted to low-bit and displayed in ambient mode, especially useful for barcodes and
+         * qr codes, as well as other simple black-and-white tickets.
+         * @param hintAmbientBigPicture {@code true} to enable converstion and ambient.
+         * @return this object for method chaining
+         */
+        public WearableExtender setHintAmbientBigPicture(boolean hintAmbientBigPicture) {
+            setFlag(FLAG_BIG_PICTURE_AMBIENT, hintAmbientBigPicture);
+            return this;
+        }
+
+        /**
+         * Get a hint that this notification's {@link BigPictureStyle} (if present) should be
+         * converted to low-bit and displayed in ambient mode, especially useful for barcodes and
+         * qr codes, as well as other simple black-and-white tickets.
+         * @return {@code true} if it should be displayed in ambient, false otherwise
+         * otherwise. The default value is {@code false} if this was never set.
+         */
+        public boolean getHintAmbientBigPicture() {
+            return (mFlags & FLAG_BIG_PICTURE_AMBIENT) != 0;
+        }
+
+        /**
          * Set a hint that this notification's content intent will launch an {@link Activity}
          * directly, telling the platform that it can generate the appropriate transitions.
          * @param hintContentIntentLaunchesActivity {@code true} if the content intent will launch
diff --git a/core/java/android/app/ResourcesManager.java b/core/java/android/app/ResourcesManager.java
index aef92cf..d8a3d4f 100644
--- a/core/java/android/app/ResourcesManager.java
+++ b/core/java/android/app/ResourcesManager.java
@@ -224,7 +224,7 @@
      * @return a new AssetManager.
     */
     @VisibleForTesting
-    protected AssetManager createAssetManager(@NonNull final ResourcesKey key) {
+    protected @NonNull AssetManager createAssetManager(@NonNull final ResourcesKey key) {
         AssetManager assets = new AssetManager();
 
         // resDir can be null if the 'android' package is creating a new Resources object.
@@ -232,14 +232,15 @@
         // already.
         if (key.mResDir != null) {
             if (assets.addAssetPath(key.mResDir) == 0) {
-                return null;
+                throw new IllegalArgumentException("failed to add asset path " + key.mResDir);
             }
         }
 
         if (key.mSplitResDirs != null) {
             for (final String splitResDir : key.mSplitResDirs) {
                 if (assets.addAssetPath(splitResDir) == 0) {
-                    return null;
+                    throw new IllegalArgumentException(
+                            "failed to add split asset path " + splitResDir);
                 }
             }
         }
diff --git a/core/java/android/app/Service.java b/core/java/android/app/Service.java
index 21a3543..4fe4f98 100644
--- a/core/java/android/app/Service.java
+++ b/core/java/android/app/Service.java
@@ -16,6 +16,7 @@
 
 package android.app;
 
+import android.annotation.IntDef;
 import android.annotation.Nullable;
 import android.content.ComponentCallbacks2;
 import android.content.ComponentName;
@@ -30,6 +31,8 @@
 
 import java.io.FileDescriptor;
 import java.io.PrintWriter;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
 
 /**
  * A Service is an application component representing either an application's desire
@@ -300,6 +303,32 @@
 public abstract class Service extends ContextWrapper implements ComponentCallbacks2 {
     private static final String TAG = "Service";
 
+    /**
+     * Flag for {@link #stopForeground(int)}: if set, the notification previously provided
+     * to {@link #startForeground} will be removed.  Otherwise it will remain
+     * until a later call (to {@link #startForeground(int, Notification)} or
+     * {@link #stopForeground(int)} removes it, or the service is destroyed.
+     */
+    public static final int STOP_FOREGROUND_REMOVE = 1<<0;
+
+    /**
+     * Flag for {@link #stopForeground(int)}: if set, the notification previously provided
+     * to {@link #startForeground} will be detached from the service.  Only makes sense
+     * when {@link #STOP_FOREGROUND_REMOVE} is <b>not</b> set -- in this case, the notification
+     * will remain shown, but be completely detached from the service and so no longer changed
+     * except through direct calls to the notification manager.
+     */
+    public static final int STOP_FOREGROUND_DETACH = 1<<1;
+
+    /** @hide */
+    @IntDef(flag = true,
+            value = {
+                STOP_FOREGROUND_REMOVE,
+                STOP_FOREGROUND_DETACH
+            })
+    @Retention(RetentionPolicy.SOURCE)
+    public @interface StopForegroundFlags {}
+
     public Service() {
         super(null);
     }
@@ -377,7 +406,7 @@
      * alarm goes off.
      */
     public static final int START_NOT_STICKY = 2;
-    
+
     /**
      * Constant to return from {@link #onStartCommand}: if this service's
      * process is killed while it is started (after returning from
@@ -392,7 +421,18 @@
      * pending events will be delivered at the point of restart).
      */
     public static final int START_REDELIVER_INTENT = 3;
-    
+
+    /** @hide */
+    @IntDef(flag = false,
+            value = {
+                START_STICKY_COMPATIBILITY,
+                START_STICKY,
+                START_NOT_STICKY,
+                START_REDELIVER_INTENT,
+            })
+    @Retention(RetentionPolicy.SOURCE)
+    public @interface StartResult {}
+
     /**
      * Special constant for reporting that we are done processing
      * {@link #onTaskRemoved(Intent)}.
@@ -414,7 +454,17 @@
      * {@link #onStartCommand(Intent, int, int)}.
      */
     public static final int START_FLAG_RETRY = 0x0002;
-    
+
+    /** @hide */
+    @IntDef(flag = true,
+            value = {
+                START_FLAG_REDELIVERY,
+                START_FLAG_RETRY,
+            })
+    @Retention(RetentionPolicy.SOURCE)
+    public @interface StartArgFlags {}
+
+
     /**
      * Called by the system every time a client explicitly starts the service by calling 
      * {@link android.content.Context#startService}, providing the arguments it supplied and a 
@@ -455,7 +505,7 @@
      * 
      * @see #stopSelfResult(int)
      */
-    public int onStartCommand(Intent intent, int flags, int startId) {
+    public @StartResult int onStartCommand(Intent intent, @StartArgFlags int flags, int startId) {
         onStart(intent, startId);
         return mStartCompatibility ? START_STICKY_COMPATIBILITY : START_STICKY;
     }
@@ -652,28 +702,37 @@
         try {
             mActivityManager.setServiceForeground(
                     new ComponentName(this, mClassName), mToken, id,
-                    notification, true);
+                    notification, 0);
         } catch (RemoteException ex) {
         }
     }
     
     /**
-     * Remove this service from foreground state, allowing it to be killed if
-     * more memory is needed.
-     * @param removeNotification If true, the notification previously provided
-     * to {@link #startForeground} will be removed.  Otherwise it will remain
-     * until a later call removes it (or the service is destroyed).
+     * Synonym for {@link #stopForeground(int)}.
+     * @param removeNotification If true, the {@link #STOP_FOREGROUND_REMOVE} flag
+     * will be supplied.
+     * @see #stopForeground(int)
      * @see #startForeground(int, Notification)
      */
     public final void stopForeground(boolean removeNotification) {
+        stopForeground(removeNotification ? STOP_FOREGROUND_REMOVE : 0);
+    }
+
+    /**
+     * Remove this service from foreground state, allowing it to be killed if
+     * more memory is needed.
+     * @param flags Additional behavior options: {@link #STOP_FOREGROUND_REMOVE},
+     * {@link #STOP_FOREGROUND_DETACH}.
+     * @see #startForeground(int, Notification)
+     */
+    public final void stopForeground(@StopForegroundFlags int flags) {
         try {
             mActivityManager.setServiceForeground(
-                    new ComponentName(this, mClassName), mToken, 0, null,
-                    removeNotification);
+                    new ComponentName(this, mClassName), mToken, 0, null, flags);
         } catch (RemoteException ex) {
         }
     }
-    
+
     /**
      * Print the Service's state into the given stream.  This gets invoked if
      * you run "adb shell dumpsys activity service &lt;yourservicename&gt;"
diff --git a/core/java/android/app/SystemServiceRegistry.java b/core/java/android/app/SystemServiceRegistry.java
index cd6e572..7cd13ea 100644
--- a/core/java/android/app/SystemServiceRegistry.java
+++ b/core/java/android/app/SystemServiceRegistry.java
@@ -542,7 +542,8 @@
             public RttManager createService(ContextImpl ctx) {
                 IBinder b = ServiceManager.getService(Context.WIFI_RTT_SERVICE);
                 IRttManager service = IRttManager.Stub.asInterface(b);
-                return new RttManager(ctx.getOuterContext(), service);
+                return new RttManager(ctx.getOuterContext(), service,
+                        ConnectivityThread.getInstanceLooper());
             }});
 
         registerService(Context.ETHERNET_SERVICE, EthernetManager.class,
diff --git a/core/java/android/app/WallpaperManager.java b/core/java/android/app/WallpaperManager.java
index 72b9318..18a5593 100644
--- a/core/java/android/app/WallpaperManager.java
+++ b/core/java/android/app/WallpaperManager.java
@@ -1,5 +1,5 @@
 /*
-h * Copyright (C) 2009 The Android Open Source Project
+ * Copyright (C) 2009 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -875,7 +875,7 @@
             /* Set the wallpaper to the default values */
             ParcelFileDescriptor fd = sGlobals.mService.setWallpaper(
                     "res:" + resources.getResourceName(resid),
-                    mContext.getOpPackageName(), null, result, which, completion);
+                    mContext.getOpPackageName(), null, false, result, which, completion);
             if (fd != null) {
                 FileOutputStream fos = null;
                 boolean ok = false;
@@ -985,7 +985,8 @@
         final WallpaperSetCompletion completion = new WallpaperSetCompletion();
         try {
             ParcelFileDescriptor fd = sGlobals.mService.setWallpaper(null,
-                    mContext.getOpPackageName(), visibleCropHint, result, which, completion);
+                    mContext.getOpPackageName(), visibleCropHint, allowBackup,
+                    result, which, completion);
             if (fd != null) {
                 FileOutputStream fos = null;
                 try {
@@ -1102,7 +1103,8 @@
         final WallpaperSetCompletion completion = new WallpaperSetCompletion();
         try {
             ParcelFileDescriptor fd = sGlobals.mService.setWallpaper(null,
-                    mContext.getOpPackageName(), visibleCropHint, result, which, completion);
+                    mContext.getOpPackageName(), visibleCropHint, allowBackup,
+                    result, which, completion);
             if (fd != null) {
                 FileOutputStream fos = null;
                 try {
@@ -1565,6 +1567,25 @@
         }
     }
 
+    /**
+     * Is the current system wallpaper eligible for backup?
+     *
+     * Only the OS itself may use this method.
+     * @hide
+     */
+    public boolean isWallpaperBackupEligible() {
+        if (sGlobals.mService == null) {
+            Log.w(TAG, "WallpaperService not running");
+            return false;
+        }
+        try {
+            return sGlobals.mService.isWallpaperBackupEligible(mContext.getUserId());
+        } catch (RemoteException e) {
+            Log.e(TAG, "Exception querying wallpaper backup eligibility: " + e.getMessage());
+        }
+        return false;
+    }
+
     // Private completion callback for setWallpaper() synchronization
     private class WallpaperSetCompletion extends IWallpaperManagerCallback.Stub {
         final CountDownLatch mLatch;
diff --git a/core/java/android/app/admin/DevicePolicyManager.java b/core/java/android/app/admin/DevicePolicyManager.java
index 269089e..0ca2e14 100644
--- a/core/java/android/app/admin/DevicePolicyManager.java
+++ b/core/java/android/app/admin/DevicePolicyManager.java
@@ -1093,6 +1093,7 @@
      * returned.
      */
     public List<ComponentName> getActiveAdmins() {
+        throwIfParentInstance("getActiveAdmins");
         return getActiveAdminsAsUser(myUserId());
     }
 
@@ -1149,6 +1150,7 @@
      * @throws SecurityException if the caller is not in the owner application of {@code admin}.
      */
     public void removeActiveAdmin(@NonNull ComponentName admin) {
+        throwIfParentInstance("removeActiveAdmin");
         if (mService != null) {
             try {
                 mService.removeActiveAdmin(admin, myUserId());
@@ -1169,6 +1171,7 @@
      * @throws SecurityException if {@code admin} is not an active administrator.
      */
     public boolean hasGrantedPolicy(@NonNull ComponentName admin, int usesPolicy) {
+        throwIfParentInstance("hasGrantedPolicy");
         if (mService != null) {
             try {
                 return mService.hasGrantedPolicy(admin, usesPolicy, myUserId());
@@ -2216,9 +2219,7 @@
      *             that uses {@link DeviceAdminInfo#USES_POLICY_RESET_PASSWORD}
      */
     public boolean resetPassword(String password, int flags) {
-        if (mParentInstance) {
-            throw new SecurityException("Reset password does not work across profiles.");
-        }
+        throwIfParentInstance("resetPassword");
         if (mService != null) {
             try {
                 return mService.resetPassword(password, flags);
@@ -2355,6 +2356,7 @@
      *             that uses {@link DeviceAdminInfo#USES_POLICY_WIPE_DATA}
      */
     public void wipeData(int flags) {
+        throwIfParentInstance("wipeData");
         if (mService != null) {
             try {
                 mService.wipeData(flags);
@@ -2388,6 +2390,7 @@
      */
     public ComponentName setGlobalProxy(@NonNull ComponentName admin, Proxy proxySpec,
             List<String> exclusionList ) {
+        throwIfParentInstance("setGlobalProxy");
         if (proxySpec == null) {
             throw new NullPointerException();
         }
@@ -2453,6 +2456,7 @@
      */
     public void setRecommendedGlobalProxy(@NonNull ComponentName admin, @Nullable ProxyInfo
             proxyInfo) {
+        throwIfParentInstance("setRecommendedGlobalProxy");
         if (mService != null) {
             try {
                 mService.setRecommendedGlobalProxy(admin, proxyInfo);
@@ -2603,6 +2607,7 @@
      *             {@link DeviceAdminInfo#USES_ENCRYPTED_STORAGE}
      */
     public int setStorageEncryption(@NonNull ComponentName admin, boolean encrypt) {
+        throwIfParentInstance("setStorageEncryption");
         if (mService != null) {
             try {
                 return mService.setStorageEncryption(admin, encrypt);
@@ -2623,6 +2628,7 @@
      * @return true if the admin(s) are requesting encryption, false if not.
      */
     public boolean getStorageEncryption(@Nullable ComponentName admin) {
+        throwIfParentInstance("getStorageEncryption");
         if (mService != null) {
             try {
                 return mService.getStorageEncryption(admin, myUserId());
@@ -2653,6 +2659,7 @@
      * or {@link #ENCRYPTION_STATUS_ACTIVE}.
      */
     public int getStorageEncryptionStatus() {
+        throwIfParentInstance("getStorageEncryptionStatus");
         return getStorageEncryptionStatus(myUserId());
     }
 
@@ -2718,6 +2725,7 @@
      *         owner.
      */
     public boolean installCaCert(@Nullable ComponentName admin, byte[] certBuffer) {
+        throwIfParentInstance("installCaCert");
         if (mService != null) {
             try {
                 return mService.installCaCert(admin, certBuffer);
@@ -2738,6 +2746,7 @@
      *         owner.
      */
     public void uninstallCaCert(@Nullable ComponentName admin, byte[] certBuffer) {
+        throwIfParentInstance("uninstallCaCert");
         if (mService != null) {
             try {
                 final String alias = getCaCertAlias(certBuffer);
@@ -2763,6 +2772,7 @@
      */
     public List<byte[]> getInstalledCaCerts(@Nullable ComponentName admin) {
         List<byte[]> certs = new ArrayList<byte[]>();
+        throwIfParentInstance("getInstalledCaCerts");
         if (mService != null) {
             try {
                 mService.enforceCanManageCaCerts(admin);
@@ -2791,6 +2801,7 @@
      *         owner.
      */
     public void uninstallAllUserCaCerts(@Nullable ComponentName admin) {
+        throwIfParentInstance("uninstallAllUserCaCerts");
         if (mService != null) {
             try {
                 mService.uninstallCaCerts(admin, new TrustedCertificateStore().userAliases()
@@ -2811,6 +2822,7 @@
      *         owner.
      */
     public boolean hasCaCertInstalled(@Nullable ComponentName admin, byte[] certBuffer) {
+        throwIfParentInstance("hasCaCertInstalled");
         if (mService != null) {
             try {
                 mService.enforceCanManageCaCerts(admin);
@@ -2879,6 +2891,7 @@
      */
     public boolean installKeyPair(@Nullable ComponentName admin, @NonNull PrivateKey privKey,
             @NonNull Certificate[] certs, @NonNull String alias, boolean requestAccess) {
+        throwIfParentInstance("installKeyPair");
         try {
             final byte[] pemCert = Credentials.convertToPem(certs[0]);
             byte[] pemChain = null;
@@ -2911,6 +2924,7 @@
      *         owner.
      */
     public boolean removeKeyPair(@Nullable ComponentName admin, @NonNull String alias) {
+        throwIfParentInstance("removeKeyPair");
         try {
             return mService.removeKeyPair(admin, alias);
         } catch (RemoteException e) {
@@ -2951,6 +2965,7 @@
      */
     public void setCertInstallerPackage(@NonNull ComponentName admin, @Nullable String
             installerPackage) throws SecurityException {
+        throwIfParentInstance("setCertInstallerPackage");
         if (mService != null) {
             try {
                 mService.setCertInstallerPackage(admin, installerPackage);
@@ -2970,6 +2985,7 @@
      * @throws SecurityException if {@code admin} is not a device or a profile owner.
      */
     public String getCertInstallerPackage(@NonNull ComponentName admin) throws SecurityException {
+        throwIfParentInstance("getCertInstallerPackage");
         if (mService != null) {
             try {
                 return mService.getCertInstallerPackage(admin);
@@ -3000,6 +3016,7 @@
      */
     public void setAlwaysOnVpnPackage(@NonNull ComponentName admin, @Nullable String vpnPackage)
             throws NameNotFoundException, UnsupportedOperationException {
+        throwIfParentInstance("setAlwaysOnVpnPackage");
         if (mService != null) {
             try {
                 if (!mService.setAlwaysOnVpnPackage(admin, vpnPackage)) {
@@ -3021,6 +3038,7 @@
      * @throws SecurityException if {@code admin} is not a device or a profile owner.
      */
     public String getAlwaysOnVpnPackage(@NonNull ComponentName admin) {
+        throwIfParentInstance("getAlwaysOnVpnPackage");
         if (mService != null) {
             try {
                 return mService.getAlwaysOnVpnPackage(admin);
@@ -3048,6 +3066,7 @@
      *             {@link DeviceAdminInfo#USES_POLICY_DISABLE_CAMERA}.
      */
     public void setCameraDisabled(@NonNull ComponentName admin, boolean disabled) {
+        throwIfParentInstance("setCameraDisabled");
         if (mService != null) {
             try {
                 mService.setCameraDisabled(admin, disabled);
@@ -3064,6 +3083,7 @@
      * have disabled the camera
      */
     public boolean getCameraDisabled(@Nullable ComponentName admin) {
+        throwIfParentInstance("getCameraDisabled");
         return getCameraDisabled(admin, myUserId());
     }
 
@@ -3093,6 +3113,7 @@
      *             than the one managed by the device owner.
      */
     public boolean requestBugreport(@NonNull ComponentName admin) {
+        throwIfParentInstance("requestBugreport");
         if (mService != null) {
             try {
                 return mService.requestBugreport(admin);
@@ -3131,6 +3152,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void setScreenCaptureDisabled(@NonNull ComponentName admin, boolean disabled) {
+        throwIfParentInstance("setScreenCaptureDisabled");
         if (mService != null) {
             try {
                 mService.setScreenCaptureDisabled(admin, disabled);
@@ -3147,6 +3169,7 @@
      * have disabled screen capture.
      */
     public boolean getScreenCaptureDisabled(@Nullable ComponentName admin) {
+        throwIfParentInstance("getScreenCaptureDisabled");
         return getScreenCaptureDisabled(admin, myUserId());
     }
 
@@ -3176,6 +3199,7 @@
      * @throws SecurityException if {@code admin} is not a device owner.
      */
     public void setAutoTimeRequired(@NonNull ComponentName admin, boolean required) {
+        throwIfParentInstance("setAutoTimeRequired");
         if (mService != null) {
             try {
                 mService.setAutoTimeRequired(admin, required);
@@ -3189,6 +3213,7 @@
      * @return true if auto time is required.
      */
     public boolean getAutoTimeRequired() {
+        throwIfParentInstance("getAutoTimeRequired");
         if (mService != null) {
             try {
                 return mService.getAutoTimeRequired();
@@ -3215,6 +3240,7 @@
      */
     public void setForceEphemeralUsers(
             @NonNull ComponentName admin, boolean forceEphemeralUsers) {
+        throwIfParentInstance("setForceEphemeralUsers");
         if (mService != null) {
             try {
                 mService.setForceEphemeralUsers(admin, forceEphemeralUsers);
@@ -3230,6 +3256,7 @@
      * @hide
      */
     public boolean getForceEphemeralUsers(@NonNull ComponentName admin) {
+        throwIfParentInstance("getForceEphemeralUsers");
         if (mService != null) {
             try {
                 return mService.getForceEphemeralUsers(admin);
@@ -3517,6 +3544,7 @@
      * @return whether or not the package is registered as the device owner app.
      */
     public boolean isDeviceOwnerApp(String packageName) {
+        throwIfParentInstance("isDeviceOwnerApp");
         return isDeviceOwnerAppOnCallingUser(packageName);
     }
 
@@ -3614,6 +3642,7 @@
      *             does not own the current device owner component.
      */
     public void clearDeviceOwnerApp(String packageName) {
+        throwIfParentInstance("clearDeviceOwnerApp");
         if (mService != null) {
             try {
                 mService.clearDeviceOwner(packageName);
@@ -3632,6 +3661,7 @@
      */
     @SystemApi
     public String getDeviceOwner() {
+        throwIfParentInstance("getDeviceOwner");
         final ComponentName name = getDeviceOwnerComponentOnCallingUser();
         return name != null ? name.getPackageName() : null;
     }
@@ -3657,6 +3687,7 @@
      */
     @SystemApi
     public String getDeviceOwnerNameOnAnyUser() {
+        throwIfParentInstance("getDeviceOwnerNameOnAnyUser");
         if (mService != null) {
             try {
                 return mService.getDeviceOwnerName();
@@ -3708,6 +3739,7 @@
     @SystemApi
     public boolean setActiveProfileOwner(@NonNull ComponentName admin, @Deprecated String ownerName)
             throws IllegalArgumentException {
+        throwIfParentInstance("setActiveProfileOwner");
         if (mService != null) {
             try {
                 final int myUserId = myUserId();
@@ -3731,6 +3763,7 @@
      * @throws SecurityException if {@code admin} is not an active profile owner.
      */
     public void clearProfileOwner(@NonNull ComponentName admin) {
+        throwIfParentInstance("clearProfileOwner");
         if (mService != null) {
             try {
                 mService.clearProfileOwner(admin);
@@ -3804,6 +3837,7 @@
      * @throws SecurityException if {@code admin} is not a device owner.
      */
     public void setDeviceOwnerLockScreenInfo(@NonNull ComponentName admin, CharSequence info) {
+        throwIfParentInstance("setDeviceOwnerLockScreenInfo");
         if (mService != null) {
             try {
                 mService.setDeviceOwnerLockScreenInfo(admin, info);
@@ -3817,6 +3851,7 @@
      * @return The device owner information. If it is not set returns {@code null}.
      */
     public CharSequence getDeviceOwnerLockScreenInfo() {
+        throwIfParentInstance("getDeviceOwnerLockScreenInfo");
         if (mService != null) {
             try {
                 return mService.getDeviceOwnerLockScreenInfo();
@@ -3848,6 +3883,7 @@
      */
     public String[] setPackagesSuspended(@NonNull ComponentName admin, String[] packageNames,
             boolean suspended) {
+        throwIfParentInstance("setPackagesSuspended");
         if (mService != null) {
             try {
                 return mService.setPackagesSuspended(admin, packageNames, suspended);
@@ -3870,6 +3906,7 @@
      */
     public boolean isPackageSuspended(@NonNull ComponentName admin, String packageName)
             throws NameNotFoundException {
+        throwIfParentInstance("isPackageSuspended");
         if (mService != null) {
             try {
                 return mService.isPackageSuspended(admin, packageName);
@@ -3891,6 +3928,7 @@
      * @throws SecurityException if {@code admin} is not a profile owner.
      */
     public void setProfileEnabled(@NonNull ComponentName admin) {
+        throwIfParentInstance("setProfileEnabled");
         if (mService != null) {
             try {
                 mService.setProfileEnabled(admin);
@@ -3912,6 +3950,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void setProfileName(@NonNull ComponentName admin, String profileName) {
+        throwIfParentInstance("setProfileName");
         if (mService != null) {
             try {
                 mService.setProfileName(admin, profileName);
@@ -3930,6 +3969,7 @@
      * @return Whether or not the package is registered as the profile owner.
      */
     public boolean isProfileOwnerApp(String packageName) {
+        throwIfParentInstance("isProfileOwnerApp");
         if (mService != null) {
             try {
                 ComponentName profileOwner = mService.getProfileOwner(myUserId());
@@ -3950,6 +3990,7 @@
      */
     @SystemApi
     public ComponentName getProfileOwner() throws IllegalArgumentException {
+        throwIfParentInstance("getProfileOwner");
         return getProfileOwnerAsUser(Process.myUserHandle().getIdentifier());
     }
 
@@ -3994,6 +4035,7 @@
      */
     @SystemApi
     public String getProfileOwnerNameAsUser(int userId) throws IllegalArgumentException {
+        throwIfParentInstance("getProfileOwnerNameAsUser");
         if (mService != null) {
             try {
                 return mService.getProfileOwnerName(userId);
@@ -4024,6 +4066,7 @@
      */
     public void addPersistentPreferredActivity(@NonNull ComponentName admin, IntentFilter filter,
             @NonNull ComponentName activity) {
+        throwIfParentInstance("addPersistentPreferredActivity");
         if (mService != null) {
             try {
                 mService.addPersistentPreferredActivity(admin, filter, activity);
@@ -4046,6 +4089,7 @@
      */
     public void clearPackagePersistentPreferredActivities(@NonNull ComponentName admin,
             String packageName) {
+        throwIfParentInstance("clearPackagePersistentPreferredActivities");
         if (mService != null) {
             try {
                 mService.clearPackagePersistentPreferredActivities(admin, packageName);
@@ -4074,6 +4118,7 @@
      */
     public void setApplicationRestrictionsManagingPackage(@NonNull ComponentName admin,
             @Nullable String packageName) throws NameNotFoundException {
+        throwIfParentInstance("setApplicationRestrictionsManagingPackage");
         if (mService != null) {
             try {
                 if (!mService.setApplicationRestrictionsManagingPackage(admin, packageName)) {
@@ -4095,6 +4140,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public String getApplicationRestrictionsManagingPackage(@NonNull ComponentName admin) {
+        throwIfParentInstance("getApplicationRestrictionsManagingPackage");
         if (mService != null) {
             try {
                 return mService.getApplicationRestrictionsManagingPackage(admin);
@@ -4114,6 +4160,7 @@
      * that method.
      */
     public boolean isCallerApplicationRestrictionsManagingPackage() {
+        throwIfParentInstance("isCallerApplicationRestrictionsManagingPackage");
         if (mService != null) {
             try {
                 return mService.isCallerApplicationRestrictionsManagingPackage();
@@ -4159,6 +4206,7 @@
      */
     public void setApplicationRestrictions(@Nullable ComponentName admin, String packageName,
             Bundle settings) {
+        throwIfParentInstance("setApplicationRestrictions");
         if (mService != null) {
             try {
                 mService.setApplicationRestrictions(admin, packageName, settings);
@@ -4257,6 +4305,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void setCrossProfileCallerIdDisabled(@NonNull ComponentName admin, boolean disabled) {
+        throwIfParentInstance("setCrossProfileCallerIdDisabled");
         if (mService != null) {
             try {
                 mService.setCrossProfileCallerIdDisabled(admin, disabled);
@@ -4277,6 +4326,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public boolean getCrossProfileCallerIdDisabled(@NonNull ComponentName admin) {
+        throwIfParentInstance("getCrossProfileCallerIdDisabled");
         if (mService != null) {
             try {
                 return mService.getCrossProfileCallerIdDisabled(admin);
@@ -4317,6 +4367,7 @@
      */
     public void setCrossProfileContactsSearchDisabled(@NonNull ComponentName admin,
             boolean disabled) {
+        throwIfParentInstance("setCrossProfileContactsSearchDisabled");
         if (mService != null) {
             try {
                 mService.setCrossProfileContactsSearchDisabled(admin, disabled);
@@ -4337,6 +4388,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public boolean getCrossProfileContactsSearchDisabled(@NonNull ComponentName admin) {
+        throwIfParentInstance("getCrossProfileContactsSearchDisabled");
         if (mService != null) {
             try {
                 return mService.getCrossProfileContactsSearchDisabled(admin);
@@ -4407,6 +4459,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void setBluetoothContactSharingDisabled(@NonNull ComponentName admin, boolean disabled) {
+        throwIfParentInstance("setBluetoothContactSharingDisabled");
         if (mService != null) {
             try {
                 mService.setBluetoothContactSharingDisabled(admin, disabled);
@@ -4429,6 +4482,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public boolean getBluetoothContactSharingDisabled(@NonNull ComponentName admin) {
+        throwIfParentInstance("getBluetoothContactSharingDisabled");
         if (mService != null) {
             try {
                 return mService.getBluetoothContactSharingDisabled(admin);
@@ -4472,6 +4526,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void addCrossProfileIntentFilter(@NonNull ComponentName admin, IntentFilter filter, int flags) {
+        throwIfParentInstance("addCrossProfileIntentFilter");
         if (mService != null) {
             try {
                 mService.addCrossProfileIntentFilter(admin, filter, flags);
@@ -4490,6 +4545,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void clearCrossProfileIntentFilters(@NonNull ComponentName admin) {
+        throwIfParentInstance("clearCrossProfileIntentFilters");
         if (mService != null) {
             try {
                 mService.clearCrossProfileIntentFilters(admin);
@@ -4519,6 +4575,7 @@
      */
     public boolean setPermittedAccessibilityServices(@NonNull ComponentName admin,
             List<String> packageNames) {
+        throwIfParentInstance("setPermittedAccessibilityServices");
         if (mService != null) {
             try {
                 return mService.setPermittedAccessibilityServices(admin, packageNames);
@@ -4540,6 +4597,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public List<String> getPermittedAccessibilityServices(@NonNull ComponentName admin) {
+        throwIfParentInstance("getPermittedAccessibilityServices");
         if (mService != null) {
             try {
                 return mService.getPermittedAccessibilityServices(admin);
@@ -4587,6 +4645,7 @@
      */
      @SystemApi
      public List<String> getPermittedAccessibilityServices(int userId) {
+        throwIfParentInstance("getPermittedAccessibilityServices");
         if (mService != null) {
             try {
                 return mService.getPermittedAccessibilityServicesForUser(userId);
@@ -4617,6 +4676,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public boolean setPermittedInputMethods(@NonNull ComponentName admin, List<String> packageNames) {
+        throwIfParentInstance("setPermittedInputMethods");
         if (mService != null) {
             try {
                 return mService.setPermittedInputMethods(admin, packageNames);
@@ -4639,6 +4699,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public List<String> getPermittedInputMethods(@NonNull ComponentName admin) {
+        throwIfParentInstance("getPermittedInputMethods");
         if (mService != null) {
             try {
                 return mService.getPermittedInputMethods(admin);
@@ -4684,6 +4745,7 @@
      */
     @SystemApi
     public List<String> getPermittedInputMethodsForCurrentUser() {
+        throwIfParentInstance("getPermittedInputMethodsForCurrentUser");
         if (mService != null) {
             try {
                 return mService.getPermittedInputMethodsForCurrentUser();
@@ -4704,6 +4766,7 @@
      * @hide
      */
     public List<String> getKeepUninstalledPackages(@NonNull ComponentName admin) {
+        throwIfParentInstance("getKeepUninstalledPackages");
         if (mService != null) {
             try {
                 return mService.getKeepUninstalledPackages(admin);
@@ -4728,6 +4791,7 @@
      */
     public void setKeepUninstalledPackages(@NonNull ComponentName admin,
             @NonNull List<String> packageNames) {
+        throwIfParentInstance("setKeepUninstalledPackages");
         if (mService != null) {
             try {
                 mService.setKeepUninstalledPackages(admin, packageNames);
@@ -4834,6 +4898,7 @@
     public UserHandle createAndManageUser(@NonNull ComponentName admin, @NonNull String name,
             @NonNull ComponentName profileOwner, @Nullable PersistableBundle adminExtras,
             int flags) {
+        throwIfParentInstance("createAndManageUser");
         try {
             return mService.createAndManageUser(admin, name, profileOwner, adminExtras, flags);
         } catch (RemoteException re) {
@@ -4851,6 +4916,7 @@
      * @throws SecurityException if {@code admin} is not a device owner.
      */
     public boolean removeUser(@NonNull ComponentName admin, UserHandle userHandle) {
+        throwIfParentInstance("removeUser");
         try {
             return mService.removeUser(admin, userHandle);
         } catch (RemoteException re) {
@@ -4868,6 +4934,7 @@
      * @see Intent#ACTION_USER_FOREGROUND
      */
     public boolean switchUser(@NonNull ComponentName admin, @Nullable UserHandle userHandle) {
+        throwIfParentInstance("switchUser");
         try {
             return mService.switchUser(admin, userHandle);
         } catch (RemoteException re) {
@@ -4893,6 +4960,7 @@
      * @see {@link #setApplicationRestrictionsManagingPackage}
      */
     public Bundle getApplicationRestrictions(@Nullable ComponentName admin, String packageName) {
+        throwIfParentInstance("getApplicationRestrictions");
         if (mService != null) {
             try {
                 return mService.getApplicationRestrictions(admin, packageName);
@@ -4915,6 +4983,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void addUserRestriction(@NonNull ComponentName admin, String key) {
+        throwIfParentInstance("addUserRestriction");
         if (mService != null) {
             try {
                 mService.setUserRestriction(admin, key, true);
@@ -4936,6 +5005,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void clearUserRestriction(@NonNull ComponentName admin, String key) {
+        throwIfParentInstance("clearUserRestriction");
         if (mService != null) {
             try {
                 mService.setUserRestriction(admin, key, false);
@@ -4957,6 +5027,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public Bundle getUserRestrictions(@NonNull ComponentName admin) {
+        throwIfParentInstance("getUserRestrictions");
         Bundle ret = null;
         if (mService != null) {
             try {
@@ -5001,6 +5072,7 @@
      */
     public boolean setApplicationHidden(@NonNull ComponentName admin, String packageName,
             boolean hidden) {
+        throwIfParentInstance("setApplicationHidden");
         if (mService != null) {
             try {
                 return mService.setApplicationHidden(admin, packageName, hidden);
@@ -5020,6 +5092,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public boolean isApplicationHidden(@NonNull ComponentName admin, String packageName) {
+        throwIfParentInstance("isApplicationHidden");
         if (mService != null) {
             try {
                 return mService.isApplicationHidden(admin, packageName);
@@ -5039,6 +5112,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void enableSystemApp(@NonNull ComponentName admin, String packageName) {
+        throwIfParentInstance("enableSystemApp");
         if (mService != null) {
             try {
                 mService.enableSystemApp(admin, packageName);
@@ -5059,6 +5133,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public int enableSystemApp(@NonNull ComponentName admin, Intent intent) {
+        throwIfParentInstance("enableSystemApp");
         if (mService != null) {
             try {
                 return mService.enableSystemAppWithIntent(admin, intent);
@@ -5091,6 +5166,7 @@
      */
     public void setAccountManagementDisabled(@NonNull ComponentName admin, String accountType,
             boolean disabled) {
+        throwIfParentInstance("setAccountManagementDisabled");
         if (mService != null) {
             try {
                 mService.setAccountManagementDisabled(admin, accountType, disabled);
@@ -5111,6 +5187,7 @@
      * @see #setAccountManagementDisabled
      */
     public String[] getAccountTypesWithManagementDisabled() {
+        throwIfParentInstance("getAccountTypesWithManagementDisabled");
         return getAccountTypesWithManagementDisabledAsUser(myUserId());
     }
 
@@ -5148,6 +5225,7 @@
      */
     public void setLockTaskPackages(@NonNull ComponentName admin, String[] packages)
             throws SecurityException {
+        throwIfParentInstance("setLockTaskPackages");
         if (mService != null) {
             try {
                 mService.setLockTaskPackages(admin, packages);
@@ -5164,6 +5242,7 @@
      * @hide
      */
     public String[] getLockTaskPackages(@NonNull ComponentName admin) {
+        throwIfParentInstance("getLockTaskPackages");
         if (mService != null) {
             try {
                 return mService.getLockTaskPackages(admin);
@@ -5180,6 +5259,7 @@
      * @param pkg The package to check
      */
     public boolean isLockTaskPermitted(String pkg) {
+        throwIfParentInstance("isLockTaskPermitted");
         if (mService != null) {
             try {
                 return mService.isLockTaskPermitted(pkg);
@@ -5228,6 +5308,7 @@
      * @throws SecurityException if {@code admin} is not a device owner.
      */
     public void setGlobalSetting(@NonNull ComponentName admin, String setting, String value) {
+        throwIfParentInstance("setGlobalSetting");
         if (mService != null) {
             try {
                 mService.setGlobalSetting(admin, setting, value);
@@ -5260,6 +5341,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void setSecureSetting(@NonNull ComponentName admin, String setting, String value) {
+        throwIfParentInstance("setSecureSetting");
         if (mService != null) {
             try {
                 mService.setSecureSetting(admin, setting, value);
@@ -5283,6 +5365,7 @@
      */
     public void setRestrictionsProvider(@NonNull ComponentName admin,
             @Nullable ComponentName provider) {
+        throwIfParentInstance("setRestrictionsProvider");
         if (mService != null) {
             try {
                 mService.setRestrictionsProvider(admin, provider);
@@ -5300,6 +5383,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void setMasterVolumeMuted(@NonNull ComponentName admin, boolean on) {
+        throwIfParentInstance("setMasterVolumeMuted");
         if (mService != null) {
             try {
                 mService.setMasterVolumeMuted(admin, on);
@@ -5317,6 +5401,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public boolean isMasterVolumeMuted(@NonNull ComponentName admin) {
+        throwIfParentInstance("isMasterVolumeMuted");
         if (mService != null) {
             try {
                 return mService.isMasterVolumeMuted(admin);
@@ -5337,6 +5422,7 @@
      */
     public void setUninstallBlocked(@NonNull ComponentName admin, String packageName,
             boolean uninstallBlocked) {
+        throwIfParentInstance("setUninstallBlocked");
         if (mService != null) {
             try {
                 mService.setUninstallBlocked(admin, packageName, uninstallBlocked);
@@ -5362,6 +5448,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public boolean isUninstallBlocked(@Nullable ComponentName admin, String packageName) {
+        throwIfParentInstance("isUninstallBlocked");
         if (mService != null) {
             try {
                 return mService.isUninstallBlocked(admin, packageName);
@@ -5389,6 +5476,7 @@
      * @see #getCrossProfileWidgetProviders(android.content.ComponentName)
      */
     public boolean addCrossProfileWidgetProvider(@NonNull ComponentName admin, String packageName) {
+        throwIfParentInstance("addCrossProfileWidgetProvider");
         if (mService != null) {
             try {
                 return mService.addCrossProfileWidgetProvider(admin, packageName);
@@ -5416,6 +5504,7 @@
      */
     public boolean removeCrossProfileWidgetProvider(
             @NonNull ComponentName admin, String packageName) {
+        throwIfParentInstance("removeCrossProfileWidgetProvider");
         if (mService != null) {
             try {
                 return mService.removeCrossProfileWidgetProvider(admin, packageName);
@@ -5437,6 +5526,7 @@
      * @throws SecurityException if {@code admin} is not a profile owner.
      */
     public List<String> getCrossProfileWidgetProviders(@NonNull ComponentName admin) {
+        throwIfParentInstance("getCrossProfileWidgetProviders");
         if (mService != null) {
             try {
                 List<String> providers = mService.getCrossProfileWidgetProviders(admin);
@@ -5458,6 +5548,7 @@
      * @throws SecurityException if {@code admin} is not a device or profile owner.
      */
     public void setUserIcon(@NonNull ComponentName admin, Bitmap icon) {
+        throwIfParentInstance("setUserIcon");
         try {
             mService.setUserIcon(admin, icon);
         } catch (RemoteException re) {
@@ -5477,6 +5568,7 @@
      * @see SystemUpdatePolicy
      */
     public void setSystemUpdatePolicy(@NonNull ComponentName admin, SystemUpdatePolicy policy) {
+        throwIfParentInstance("setSystemUpdatePolicy");
         if (mService != null) {
             try {
                 mService.setSystemUpdatePolicy(admin, policy);
@@ -5492,6 +5584,7 @@
      * @return The current policy object, or {@code null} if no policy is set.
      */
     public SystemUpdatePolicy getSystemUpdatePolicy() {
+        throwIfParentInstance("getSystemUpdatePolicy");
         if (mService != null) {
             try {
                 return mService.getSystemUpdatePolicy();
@@ -5517,6 +5610,7 @@
      * @throws SecurityException if {@code admin} is not a device owner.
      */
     public boolean setKeyguardDisabled(@NonNull ComponentName admin, boolean disabled) {
+        throwIfParentInstance("setKeyguardDisabled");
         try {
             return mService.setKeyguardDisabled(admin, disabled);
         } catch (RemoteException re) {
@@ -5535,6 +5629,7 @@
      * @throws SecurityException if {@code admin} is not a device owner.
      */
     public boolean setStatusBarDisabled(@NonNull ComponentName admin, boolean disabled) {
+        throwIfParentInstance("setStatusBarDisabled");
         try {
             return mService.setStatusBarDisabled(admin, disabled);
         } catch (RemoteException re) {
@@ -5553,6 +5648,7 @@
      */
     @SystemApi
     public void notifyPendingSystemUpdate(long updateReceivedTime) {
+        throwIfParentInstance("notifyPendingSystemUpdate");
         if (mService != null) {
             try {
                 mService.notifyPendingSystemUpdate(updateReceivedTime);
@@ -5580,6 +5676,7 @@
      * @see #setPermissionGrantState
      */
     public void setPermissionPolicy(@NonNull ComponentName admin, int policy) {
+        throwIfParentInstance("setPermissionPolicy");
         try {
             mService.setPermissionPolicy(admin, policy);
         } catch (RemoteException re) {
@@ -5594,6 +5691,7 @@
      * @return the current policy for future permission requests.
      */
     public int getPermissionPolicy(ComponentName admin) {
+        throwIfParentInstance("getPermissionPolicy");
         try {
             return mService.getPermissionPolicy(admin);
         } catch (RemoteException re) {
@@ -5630,6 +5728,7 @@
      */
     public boolean setPermissionGrantState(@NonNull ComponentName admin, String packageName,
             String permission, int grantState) {
+        throwIfParentInstance("setPermissionGrantState");
         try {
             return mService.setPermissionGrantState(admin, packageName, permission, grantState);
         } catch (RemoteException re) {
@@ -5658,6 +5757,7 @@
      */
     public int getPermissionGrantState(@NonNull ComponentName admin, String packageName,
             String permission) {
+        throwIfParentInstance("getPermissionGrantState");
         try {
             return mService.getPermissionGrantState(admin, packageName, permission);
         } catch (RemoteException re) {
@@ -5673,6 +5773,7 @@
      * @throws IllegalArgumentException if the supplied action is not valid.
      */
     public boolean isProvisioningAllowed(String action) {
+        throwIfParentInstance("isProvisioningAllowed");
         try {
             return mService.isProvisioningAllowed(action);
         } catch (RemoteException re) {
@@ -5688,6 +5789,7 @@
      * @return if this user is a managed profile of another user.
      */
     public boolean isManagedProfile(@NonNull ComponentName admin) {
+        throwIfParentInstance("isManagedProfile");
         try {
             return mService.isManagedProfile(admin);
         } catch (RemoteException re) {
@@ -5721,6 +5823,7 @@
      * @throws SecurityException if {@code admin} is not a device owner.
      */
     public String getWifiMacAddress(@NonNull ComponentName admin) {
+        throwIfParentInstance("getWifiMacAddress");
         try {
             return mService.getWifiMacAddress(admin);
         } catch (RemoteException re) {
@@ -5737,6 +5840,7 @@
      * @see TelephonyManager#CALL_STATE_IDLE
      */
     public void reboot(@NonNull ComponentName admin) {
+        throwIfParentInstance("reboot");
         try {
             mService.reboot(admin);
         } catch (RemoteException re) {
@@ -5763,6 +5867,7 @@
      */
     public void setShortSupportMessage(@NonNull ComponentName admin,
             @Nullable CharSequence message) {
+        throwIfParentInstance("setShortSupportMessage");
         if (mService != null) {
             try {
                 mService.setShortSupportMessage(admin, message);
@@ -5781,6 +5886,7 @@
      * @throws SecurityException if {@code admin} is not an active administrator.
      */
     public CharSequence getShortSupportMessage(@NonNull ComponentName admin) {
+        throwIfParentInstance("getShortSupportMessage");
         if (mService != null) {
             try {
                 return mService.getShortSupportMessage(admin);
@@ -5807,6 +5913,7 @@
      */
     public void setLongSupportMessage(@NonNull ComponentName admin,
             @Nullable CharSequence message) {
+        throwIfParentInstance("setLongSupportMessage");
         if (mService != null) {
             try {
                 mService.setLongSupportMessage(admin, message);
@@ -5825,6 +5932,7 @@
      * @throws SecurityException if {@code admin} is not an active administrator.
      */
     public CharSequence getLongSupportMessage(@NonNull ComponentName admin) {
+        throwIfParentInstance("getLongSupportMessage");
         if (mService != null) {
             try {
                 return mService.getLongSupportMessage(admin);
@@ -5922,6 +6030,7 @@
      * @throws SecurityException if {@code admin} is not a profile owner.
      */
     public DevicePolicyManager getParentProfileInstance(@NonNull ComponentName admin) {
+        throwIfParentInstance("getParentProfileInstance");
         try {
             if (!mService.isManagedProfile(admin)) {
                 throw new SecurityException("The current user does not have a parent profile.");
@@ -5948,6 +6057,7 @@
      * @see #retrieveSecurityLogs
      */
     public void setSecurityLoggingEnabled(@NonNull ComponentName admin, boolean enabled) {
+        throwIfParentInstance("setSecurityLoggingEnabled");
         try {
             mService.setSecurityLoggingEnabled(admin, enabled);
         } catch (RemoteException re) {
@@ -5966,6 +6076,7 @@
      * @throws SecurityException if {@code admin} is not a device owner.
      */
     public boolean isSecurityLoggingEnabled(@NonNull ComponentName admin) {
+        throwIfParentInstance("isSecurityLoggingEnabled");
         try {
             return mService.isSecurityLoggingEnabled(admin);
         } catch (RemoteException re) {
@@ -5989,6 +6100,7 @@
      * @throws SecurityException if {@code admin} is not a device owner.
      */
     public List<SecurityEvent> retrieveSecurityLogs(@NonNull ComponentName admin) {
+        throwIfParentInstance("retrieveSecurityLogs");
         try {
             ParceledListSlice<SecurityEvent> list = mService.retrieveSecurityLogs(admin);
             if (list != null) {
@@ -6034,6 +6146,7 @@
      * @throws SecurityException if {@code admin} is not a device owner.
      */
     public List<SecurityEvent> retrievePreRebootSecurityLogs(@NonNull ComponentName admin) {
+        throwIfParentInstance("retrievePreRebootSecurityLogs");
         try {
             ParceledListSlice<SecurityEvent> list = mService.retrievePreRebootSecurityLogs(admin);
             return list.getList();
@@ -6055,6 +6168,7 @@
      * @throws SecurityException if {@code admin} is not a profile owner.
      */
     public void setOrganizationColor(@NonNull ComponentName admin, int color) {
+        throwIfParentInstance("setOrganizationColor");
         try {
             // always enforce alpha channel to have 100% opacity
             color |= 0xFF000000;
@@ -6094,6 +6208,7 @@
      * @throws SecurityException if {@code admin} is not a profile owner.
      */
     public @ColorInt int getOrganizationColor(@NonNull ComponentName admin) {
+        throwIfParentInstance("getOrganizationColor");
         try {
             return mService.getOrganizationColor(admin);
         } catch (RemoteException re) {
@@ -6129,6 +6244,7 @@
      * @throws SecurityException if {@code admin} is not a profile owner.
      */
     public void setOrganizationName(@NonNull ComponentName admin, @Nullable CharSequence title) {
+        throwIfParentInstance("setOrganizationName");
         try {
             mService.setOrganizationName(admin, title);
         } catch (RemoteException re) {
@@ -6145,6 +6261,7 @@
      * @throws SecurityException if {@code admin} is not a profile owner.
      */
     public CharSequence getOrganizationName(@NonNull ComponentName admin) {
+        throwIfParentInstance("getOrganizationName");
         try {
             return mService.getOrganizationName(admin);
         } catch (RemoteException re) {
@@ -6176,6 +6293,7 @@
     @SystemApi
     @UserProvisioningState
     public int getUserProvisioningState() {
+        throwIfParentInstance("getUserProvisioningState");
         if (mService != null) {
             try {
                 return mService.getUserProvisioningState();
@@ -6222,6 +6340,7 @@
      * @param ids A set of opaque affiliation ids.
      */
     public void setAffiliationIds(@NonNull ComponentName admin, Set<String> ids) {
+        throwIfParentInstance("setAffiliationIds");
         try {
             mService.setAffiliationIds(admin, new ArrayList<String>(ids));
         } catch (RemoteException e) {
@@ -6237,6 +6356,7 @@
      * @return whether this user/profile is affiliated with the device.
      */
     public boolean isAffiliatedUser() {
+        throwIfParentInstance("isAffiliatedUser");
         try {
             return mService != null && mService.isAffiliatedUser();
         } catch (RemoteException e) {
@@ -6270,4 +6390,28 @@
             throw re.rethrowFromSystemServer();
         }
     }
+
+    /**
+     * @hide
+     * Remove a test admin synchronously without sending it a broadcast about being removed.
+     * If the admin is a profile owner or device owner it will still be removed.
+     *
+     * @param userHandle user id to remove the admin for.
+     * @param admin The administration compononent to remove.
+     * @throws SecurityException if the caller is not shell / root or the admin package
+     *         isn't a test application see {@link ApplicationInfo#FLAG_TEST_APP}.
+     */
+    public void forceRemoveActiveAdmin(ComponentName adminReceiver, int userHandle) {
+        try {
+            mService.forceRemoveActiveAdmin(adminReceiver, userHandle);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    private void throwIfParentInstance(String functionName) {
+        if (mParentInstance) {
+            throw new SecurityException(functionName + " cannot be called on the parent instance");
+        }
+    }
 }
diff --git a/core/java/android/app/admin/IDevicePolicyManager.aidl b/core/java/android/app/admin/IDevicePolicyManager.aidl
index cba64c2..989e613 100644
--- a/core/java/android/app/admin/IDevicePolicyManager.aidl
+++ b/core/java/android/app/admin/IDevicePolicyManager.aidl
@@ -111,6 +111,7 @@
     boolean packageHasActiveAdmins(String packageName, int userHandle);
     void getRemoveWarning(in ComponentName policyReceiver, in RemoteCallback result, int userHandle);
     void removeActiveAdmin(in ComponentName policyReceiver, int userHandle);
+    void forceRemoveActiveAdmin(in ComponentName policyReceiver, int userHandle);
     boolean hasGrantedPolicy(in ComponentName policyReceiver, int usesPolicy, int userHandle);
 
     void setActivePasswordState(int quality, int length, int letters, int uppercase, int lowercase,
diff --git a/core/java/android/app/job/IJobScheduler.aidl b/core/java/android/app/job/IJobScheduler.aidl
index 3379f2e..b6eec27 100644
--- a/core/java/android/app/job/IJobScheduler.aidl
+++ b/core/java/android/app/job/IJobScheduler.aidl
@@ -28,4 +28,5 @@
     void cancel(int jobId);
     void cancelAll();
     List<JobInfo> getAllPendingJobs();
+    JobInfo getPendingJob(int jobId);
 }
diff --git a/core/java/android/app/job/JobInfo.java b/core/java/android/app/job/JobInfo.java
index c84a0dc..ecfc527 100644
--- a/core/java/android/app/job/JobInfo.java
+++ b/core/java/android/app/job/JobInfo.java
@@ -24,7 +24,7 @@
 import android.os.Parcelable;
 import android.os.PersistableBundle;
 import android.util.Log;
-import static android.util.TimeUtils.formatForLogging;
+import static android.util.TimeUtils.formatDuration;
 
 import java.util.ArrayList;
 
@@ -44,6 +44,8 @@
     public static final int NETWORK_TYPE_ANY = 1;
     /** This job requires network connectivity that is unmetered. */
     public static final int NETWORK_TYPE_UNMETERED = 2;
+    /** This job requires network connectivity that is not roaming. */
+    public static final int NETWORK_TYPE_NOT_ROAMING = 3;
 
     /**
      * Amount of backoff a job has initially by default, in milliseconds.
@@ -240,8 +242,9 @@
 
     /**
      * One of {@link android.app.job.JobInfo#NETWORK_TYPE_ANY},
-     * {@link android.app.job.JobInfo#NETWORK_TYPE_NONE}, or
-     * {@link android.app.job.JobInfo#NETWORK_TYPE_UNMETERED}.
+     * {@link android.app.job.JobInfo#NETWORK_TYPE_NONE},
+     * {@link android.app.job.JobInfo#NETWORK_TYPE_UNMETERED}, or
+     * {@link android.app.job.JobInfo#NETWORK_TYPE_NOT_ROAMING}.
      */
     public int getNetworkType() {
         return networkType;
@@ -760,15 +763,27 @@
                         " setRequiresDeviceIdle is an error.");
             }
             JobInfo job = new JobInfo(this);
-            if (job.intervalMillis != job.getIntervalMillis()) {
-                Log.w(TAG, "Specified interval for " + mJobService.getPackageName() + " is "
-                        + formatForLogging(mIntervalMillis) + ". Clamped to " +
-                        formatForLogging(job.getIntervalMillis()));
-            }
-            if (job.flexMillis != job.getFlexMillis()) {
-                Log.w(TAG, "Specified interval for " + mJobService.getPackageName() + " is "
-                        + formatForLogging(mFlexMillis) + ". Clamped to " +
-                        formatForLogging(job.getFlexMillis()));
+            if (job.isPeriodic()) {
+                if (job.intervalMillis != job.getIntervalMillis()) {
+                    StringBuilder builder = new StringBuilder();
+                    builder.append("Specified interval for ")
+                            .append(String.valueOf(mJobId))
+                            .append(" is ");
+                    formatDuration(mIntervalMillis, builder);
+                    builder.append(". Clamped to ");
+                    formatDuration(job.getIntervalMillis(), builder);
+                    Log.w(TAG, builder.toString());
+                }
+                if (job.flexMillis != job.getFlexMillis()) {
+                    StringBuilder builder = new StringBuilder();
+                    builder.append("Specified flex for ")
+                            .append(String.valueOf(mJobId))
+                            .append(" is ");
+                    formatDuration(mFlexMillis, builder);
+                    builder.append(". Clamped to ");
+                    formatDuration(job.getFlexMillis(), builder);
+                    Log.w(TAG, builder.toString());
+                }
             }
             return job;
         }
diff --git a/core/java/android/app/job/JobScheduler.java b/core/java/android/app/job/JobScheduler.java
index d1e563f..9618cd10 100644
--- a/core/java/android/app/job/JobScheduler.java
+++ b/core/java/android/app/job/JobScheduler.java
@@ -16,6 +16,9 @@
 
 package android.app.job;
 
+import android.annotation.NonNull;
+import android.annotation.Nullable;
+
 import java.util.List;
 
 /**
@@ -78,7 +81,6 @@
      * Cancel a job that is pending in the JobScheduler.
      * @param jobId unique identifier for this job. Obtain this value from the jobs returned by
      * {@link #getAllPendingJobs()}.
-     * @return
      */
     public abstract void cancel(int jobId);
 
@@ -88,8 +90,18 @@
     public abstract void cancelAll();
 
     /**
-     * @return a list of all the jobs registered by this package that have not yet been executed.
+     * Retrieve all jobs for this package that are pending in the JobScheduler.
+     *
+     * @return a list of all the jobs registered by this package that have not
+     *         yet been executed.
      */
-    public abstract List<JobInfo> getAllPendingJobs();
+    public abstract @NonNull List<JobInfo> getAllPendingJobs();
 
+    /**
+     * Retrieve a specific job for this package that is pending in the
+     * JobScheduler.
+     *
+     * @return job registered by this package that has not yet been executed.
+     */
+    public abstract @Nullable JobInfo getPendingJob(int jobId);
 }
diff --git a/core/java/android/appwidget/package.html b/core/java/android/appwidget/package.html
index d4c0db0..29f2e2b 100644
--- a/core/java/android/appwidget/package.html
+++ b/core/java/android/appwidget/package.html
@@ -16,7 +16,7 @@
 android.appwidget.AppWidgetManager#ACTION_APPWIDGET_UPDATE} intent
 and provide some metadata about the app widget.  Android provides the
 {@link android.appwidget.AppWidgetProvider} class, which extends {@link
-android.content.BroadcastReceiver}, as a convenience class to define the app widget behavrio and aid
+android.content.BroadcastReceiver}, as a convenience class to define the app widget behavior and aid
 in handling the broadcasts.</p>
 
 <p>App widget hosts are the containers in which widgets can be placed.  Most of the look and feel
diff --git a/core/java/android/bluetooth/BluetoothActivityEnergyInfo.java b/core/java/android/bluetooth/BluetoothActivityEnergyInfo.java
index e32a470..84f6060 100644
--- a/core/java/android/bluetooth/BluetoothActivityEnergyInfo.java
+++ b/core/java/android/bluetooth/BluetoothActivityEnergyInfo.java
@@ -156,8 +156,8 @@
      * @return if the record is valid
      */
     public boolean isValid() {
-        return ((mControllerTxTimeMs !=0) ||
-                (mControllerRxTimeMs !=0) ||
-                (mControllerIdleTimeMs !=0));
+        return ((mControllerTxTimeMs >=0) &&
+                (mControllerRxTimeMs >=0) &&
+                (mControllerIdleTimeMs >=0));
     }
 }
diff --git a/core/java/android/bluetooth/BluetoothAdapter.java b/core/java/android/bluetooth/BluetoothAdapter.java
index 2a7eff8..e748477 100644
--- a/core/java/android/bluetooth/BluetoothAdapter.java
+++ b/core/java/android/bluetooth/BluetoothAdapter.java
@@ -31,11 +31,14 @@
 import android.bluetooth.le.ScanResult;
 import android.bluetooth.le.ScanSettings;
 import android.content.Context;
+import android.os.BatteryStats;
 import android.os.Binder;
 import android.os.IBinder;
 import android.os.ParcelUuid;
 import android.os.RemoteException;
+import android.os.ResultReceiver;
 import android.os.ServiceManager;
+import android.os.SynchronousResultReceiver;
 import android.os.SystemProperties;
 import android.util.Log;
 import android.util.Pair;
@@ -53,6 +56,7 @@
 import java.util.Map;
 import java.util.Set;
 import java.util.UUID;
+import java.util.concurrent.TimeoutException;
 
 /**
  * Represents the local device Bluetooth adapter. The {@link BluetoothAdapter}
@@ -1369,33 +1373,62 @@
      *
      * @return a record with {@link BluetoothActivityEnergyInfo} or null if
      * report is unavailable or unsupported
+     * @deprecated use the asynchronous
+     * {@link #requestControllerActivityEnergyInfo(int, ResultReceiver)} instead.
      * @hide
      */
+    @Deprecated
     public BluetoothActivityEnergyInfo getControllerActivityEnergyInfo(int updateType) {
-        if (getState() != STATE_ON) return null;
+        SynchronousResultReceiver receiver = new SynchronousResultReceiver();
+        requestControllerActivityEnergyInfo(updateType, receiver);
         try {
-            BluetoothActivityEnergyInfo record;
+            SynchronousResultReceiver.Result result = receiver.awaitResult(1000);
+            if (result.bundle != null) {
+                return result.bundle.getParcelable(BatteryStats.RESULT_RECEIVER_CONTROLLER_KEY);
+            }
+        } catch (TimeoutException e) {
+            Log.e(TAG, "getControllerActivityEnergyInfo timed out");
+        }
+        return null;
+    }
+
+    /**
+     * Request the record of {@link BluetoothActivityEnergyInfo} object that
+     * has the activity and energy info. This can be used to ascertain what
+     * the controller has been up to, since the last sample.
+     *
+     * A null value for the activity info object may be sent if the bluetooth service is
+     * unreachable or the device does not support reporting such information.
+     *
+     * @param updateType Type of info, cached vs refreshed.
+     * @param result The callback to which to send the activity info.
+     * @hide
+     */
+    public void requestControllerActivityEnergyInfo(int updateType, ResultReceiver result) {
+        if (getState() != STATE_ON) {
+            result.send(0, null);
+            return;
+        }
+
+        try {
             if (!mService.isActivityAndEnergyReportingSupported()) {
-                return null;
+                result.send(0, null);
+                return;
             }
             synchronized(this) {
                 if (updateType == ACTIVITY_ENERGY_INFO_REFRESHED) {
                     mService.getActivityEnergyInfoFromController();
                     wait(CONTROLLER_ENERGY_UPDATE_TIMEOUT_MILLIS);
                 }
-                record = mService.reportActivityInfo();
-                if (record.isValid()) {
-                    return record;
-                } else {
-                    return null;
-                }
+                mService.requestActivityInfo(result);
             }
         } catch (InterruptedException e) {
             Log.e(TAG, "getControllerActivityEnergyInfoCallback wait interrupted: " + e);
+            result.send(0, null);
         } catch (RemoteException e) {
             Log.e(TAG, "getControllerActivityEnergyInfoCallback: " + e);
+            result.send(0, null);
         }
-        return null;
     }
 
     /**
diff --git a/core/java/android/bluetooth/IBluetooth.aidl b/core/java/android/bluetooth/IBluetooth.aidl
index 9cd7d05..45d86415 100644
--- a/core/java/android/bluetooth/IBluetooth.aidl
+++ b/core/java/android/bluetooth/IBluetooth.aidl
@@ -23,6 +23,7 @@
 import android.bluetooth.OobData;
 import android.os.ParcelUuid;
 import android.os.ParcelFileDescriptor;
+import android.os.ResultReceiver;
 
 /**
  * System private API for talking with the Bluetooth service.
@@ -104,6 +105,15 @@
     void getActivityEnergyInfoFromController();
     BluetoothActivityEnergyInfo reportActivityInfo();
 
+    /**
+     * Requests the controller activity info asynchronously.
+     * The implementor is expected to reply with the
+     * {@link android.bluetooth.BluetoothActivityEnergyInfo} object placed into the Bundle with the
+     * key {@link android.os.BatteryStats#RESULT_RECEIVER_CONTROLLER_KEY}.
+     * The result code is ignored.
+     */
+    oneway void requestActivityInfo(in ResultReceiver result);
+
     void onLeServiceUp();
     void onBrEdrDown();
 }
diff --git a/core/java/android/bluetooth/OobData.java b/core/java/android/bluetooth/OobData.java
index 70d47ee..8e659e0 100644
--- a/core/java/android/bluetooth/OobData.java
+++ b/core/java/android/bluetooth/OobData.java
@@ -22,7 +22,11 @@
 import android.util.Log;
 
 /**
- * Out Of Band Data for Bluetooth device.
+ * Out Of Band Data for Bluetooth device pairing.
+ *
+ * <p>This object represents optional data obtained from a remote device through
+ * an out-of-band channel (eg. NFC).
+ *
  * @hide
  */
 public class OobData implements Parcelable {
@@ -32,6 +36,11 @@
         return securityManagerTk;
     }
 
+    /**
+     * Sets the Temporary Key value to be used by the LE Security Manager during
+     * LE pairing. The value shall be 16 bytes. Please see Bluetooth CSSv6,
+     * Part A 1.8 for a detailed description.
+     */
     public void setSecurityManagerTk(byte[] securityManagerTk) {
         this.securityManagerTk = securityManagerTk;
     }
diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java
index 15cc17d..8349d3d 100644
--- a/core/java/android/content/Context.java
+++ b/core/java/android/content/Context.java
@@ -2446,6 +2446,15 @@
      * <p>This function will throw {@link SecurityException} if you do not
      * have permission to start the given service.
      *
+     * <p class="note"><strong>Note:</strong> Each call to startService()
+     * results in significant work done by the system to manage service
+     * lifecycle surrounding the processing of the intent, which can take
+     * multiple milliseconds of CPU time. Due to this cost, startService()
+     * should not be used for frequent intent delivery to a service, and only
+     * for scheduling significant work. Use {@link #bindService bound services}
+     * for high frequency calls.
+     * </p>
+     *
      * @param service Identifies the service to be started.  The Intent must be either
      *      fully explicit (supplying a component name) or specify a specific package
      *      name it is targetted to.  Additional values
diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java
index 831de4a..47abd2b 100644
--- a/core/java/android/content/Intent.java
+++ b/core/java/android/content/Intent.java
@@ -115,7 +115,7 @@
  *   </li>
  *   <li> <p><b>{@link #ACTION_VIEW} <i>tel:123</i></b> -- Display
  *     the phone dialer with the given number filled in.  Note how the
- *     VIEW action does what what is considered the most reasonable thing for
+ *     VIEW action does what is considered the most reasonable thing for
  *     a particular URI.</p>
  *   </li>
  *   <li> <p><b>{@link #ACTION_DIAL} <i>tel:123</i></b> -- Display
@@ -186,7 +186,7 @@
  *
  * <p>There are a variety of standard Intent action and category constants
  * defined in the Intent class, but applications can also define their own.
- * These strings use java style scoping, to ensure they are unique -- for
+ * These strings use Java-style scoping, to ensure they are unique -- for
  * example, the standard {@link #ACTION_VIEW} is called
  * "android.intent.action.VIEW".</p>
  *
@@ -339,7 +339,7 @@
  *     &lt;action android:name="{@link #ACTION_EDIT android.intent.action.EDIT}" /&gt;
  *     &lt;action android:name="{@link #ACTION_PICK android.intent.action.PICK}" /&gt;
  *     &lt;category android:name="{@link #CATEGORY_DEFAULT android.intent.category.DEFAULT}" /&gt;
- *     &lt;data mimeType:name="vnd.android.cursor.dir/<i>vnd.google.note</i>" /&gt;
+ *     &lt;data android:mimeType="vnd.android.cursor.dir/<i>vnd.google.note</i>" /&gt;
  * &lt;/intent-filter&gt;</pre>
  * <p>This declares the things that the activity can do on a directory of
  * notes.  The type being supported is given with the &lt;type&gt; tag, where
@@ -358,7 +358,7 @@
  *     &lt;category android:name="{@link #CATEGORY_DEFAULT android.intent.category.DEFAULT}" /&gt;
  *     &lt;data android:mimeType="vnd.android.cursor.item/<i>vnd.google.note</i>" /&gt;
  * &lt;/intent-filter&gt;</pre>
- * <p>This filter describes the ability return to the caller a note selected by
+ * <p>This filter describes the ability to return to the caller a note selected by
  * the user without needing to know where it came from.  The data type
  * <code>vnd.android.cursor.item/vnd.google.note</code> is a URI from which
  * a Cursor of exactly one (<code>vnd.android.cursor.item</code>) item can
@@ -1324,14 +1324,14 @@
             "android.intent.extra.ASSIST_INPUT_DEVICE_ID";
 
     /**
-     * Activity Action: List all available applications
+     * Activity Action: List all available applications.
      * <p>Input: Nothing.
      * <p>Output: nothing.
      */
     @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION)
     public static final String ACTION_ALL_APPS = "android.intent.action.ALL_APPS";
     /**
-     * Activity Action: Show settings for choosing wallpaper
+     * Activity Action: Show settings for choosing wallpaper.
      * <p>Input: Nothing.
      * <p>Output: Nothing.
      */
@@ -1427,6 +1427,16 @@
             "android.intent.action.SHOW_KEYBOARD_SHORTCUTS";
 
     /**
+     * Activity Action: Dismiss the Keyboard Shortcuts Helper screen.
+     * <p>Input: Nothing.
+     * <p>Output: Nothing.
+     * @hide
+     */
+    @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION)
+    public static final String ACTION_DISMISS_KEYBOARD_SHORTCUTS =
+            "android.intent.action.DISMISS_KEYBOARD_SHORTCUTS";
+
+    /**
      * Activity Action: Show settings for managing network data usage of a
      * specific application. Applications should define an activity that offers
      * options to control data usage.
@@ -1551,6 +1561,7 @@
      * {@link} #ACTION_VIEW} to indicate the uid of the package that initiated the install
      * @hide
      */
+    @SystemApi
     public static final String EXTRA_ORIGINATING_UID
             = "android.intent.extra.ORIGINATING_UID";
 
@@ -1624,6 +1635,7 @@
      *
      * @hide
      */
+    @SystemApi
     @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION)
     public static final String ACTION_MANAGE_APP_PERMISSIONS =
             "android.intent.action.MANAGE_APP_PERMISSIONS";
@@ -1639,6 +1651,7 @@
      *
      * @hide
      */
+    @SystemApi
     @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION)
     public static final String ACTION_MANAGE_PERMISSIONS =
             "android.intent.action.MANAGE_PERMISSIONS";
@@ -1676,6 +1689,7 @@
      *
      * @hide
      */
+    @SystemApi
     @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION)
     public static final String ACTION_REVIEW_PERMISSIONS =
             "android.intent.action.REVIEW_PERMISSIONS";
@@ -1688,6 +1702,7 @@
      *
      * @hide
      */
+    @SystemApi
     public static final String EXTRA_REMOTE_CALLBACK = "android.intent.extra.REMOTE_CALLBACK";
 
     /**
@@ -1707,102 +1722,10 @@
      *
      * @hide
      */
+    @SystemApi
     public static final String EXTRA_RESULT_NEEDED = "android.intent.extra.RESULT_NEEDED";
 
     /**
-     * Broadcast action that requests current permission granted information.  It will respond
-     * to the request by sending a broadcast with action defined by
-     * {@link #EXTRA_GET_PERMISSIONS_RESPONSE_INTENT}. The response will contain
-     * {@link #EXTRA_GET_PERMISSIONS_COUNT_RESULT}, as well as
-     * {@link #EXTRA_GET_PERMISSIONS_GROUP_LIST_RESULT}, with contents described below or
-     * a null upon failure.
-     *
-     * <p>If {@link #EXTRA_PACKAGE_NAME} is included then the number of permissions granted, the
-     * number of permissions requested and the number of granted additional permissions
-     * by that package will be calculated and included as the first
-     * and second elements respectively of an int[] in the response as
-     * {@link #EXTRA_GET_PERMISSIONS_COUNT_RESULT}.  The response will also deliver the list
-     * of localized permission group names that are granted in
-     * {@link #EXTRA_GET_PERMISSIONS_GROUP_LIST_RESULT}.
-     *
-     * <p>If {@link #EXTRA_PACKAGE_NAME} is not included then the number of apps granted any runtime
-     * permissions and the total number of apps requesting runtime permissions will be the first
-     * and second elements respectively of an int[] in the response as
-     * {@link #EXTRA_GET_PERMISSIONS_COUNT_RESULT}.
-     *
-     * @hide
-     */
-    public static final String ACTION_GET_PERMISSIONS_COUNT
-            = "android.intent.action.GET_PERMISSIONS_COUNT";
-
-    /**
-     * Broadcast action that requests list of all apps that have runtime permissions.  It will
-     * respond to the request by sending a broadcast with action defined by
-     * {@link #EXTRA_GET_PERMISSIONS_PACKAGES_RESPONSE_INTENT}. The response will contain
-     * {@link #EXTRA_GET_PERMISSIONS_APP_LIST_RESULT}, as well as
-     * {@link #EXTRA_GET_PERMISSIONS_APP_LABEL_LIST_RESULT}, with contents described below or
-     * a null upon failure.
-     *
-     * <p>{@link #EXTRA_GET_PERMISSIONS_APP_LIST_RESULT} will contain a list of package names of
-     * apps that have runtime permissions. {@link #EXTRA_GET_PERMISSIONS_APP_LABEL_LIST_RESULT}
-     * will contain the list of app labels corresponding ot the apps in the first list.
-     *
-     * @hide
-     */
-    public static final String ACTION_GET_PERMISSIONS_PACKAGES
-            = "android.intent.action.GET_PERMISSIONS_PACKAGES";
-
-    /**
-     * Extra included in response to {@link #ACTION_GET_PERMISSIONS_COUNT}.
-     * @hide
-     */
-    public static final String EXTRA_GET_PERMISSIONS_COUNT_RESULT
-            = "android.intent.extra.GET_PERMISSIONS_COUNT_RESULT";
-
-    /**
-     * List of CharSequence of localized permission group labels.
-     * @hide
-     */
-    public static final String EXTRA_GET_PERMISSIONS_GROUP_LIST_RESULT
-            = "android.intent.extra.GET_PERMISSIONS_GROUP_LIST_RESULT";
-
-    /**
-     * String list of apps that have one or more runtime permissions.
-     * @hide
-     */
-    public static final String EXTRA_GET_PERMISSIONS_APP_LIST_RESULT
-            = "android.intent.extra.GET_PERMISSIONS_APP_LIST_RESULT";
-
-    /**
-     * String list of app labels for apps that have one or more runtime permissions.
-     * @hide
-     */
-    public static final String EXTRA_GET_PERMISSIONS_APP_LABEL_LIST_RESULT
-            = "android.intent.extra.GET_PERMISSIONS_APP_LABEL_LIST_RESULT";
-
-    /**
-     * Boolean list describing if the app is a system app for apps that have one or more runtime
-     * permissions.
-     * @hide
-     */
-    public static final String EXTRA_GET_PERMISSIONS_IS_SYSTEM_APP_LIST_RESULT
-            = "android.intent.extra.GET_PERMISSIONS_IS_SYSTEM_APP_LIST_RESULT";
-
-    /**
-     * Required extra to be sent with {@link #ACTION_GET_PERMISSIONS_COUNT} broadcasts.
-     * @hide
-     */
-    public static final String EXTRA_GET_PERMISSIONS_RESPONSE_INTENT
-            = "android.intent.extra.GET_PERMISSIONS_RESONSE_INTENT";
-
-    /**
-     * Required extra to be sent with {@link #ACTION_GET_PERMISSIONS_PACKAGES} broadcasts.
-     * @hide
-     */
-    public static final String EXTRA_GET_PERMISSIONS_PACKAGES_RESPONSE_INTENT
-            = "android.intent.extra.GET_PERMISSIONS_PACKAGES_RESONSE_INTENT";
-
-    /**
      * Activity action: Launch UI to manage which apps have a given permission.
      * <p>
      * Input: {@link #EXTRA_PERMISSION_NAME} specifies the permission access
@@ -1816,6 +1739,7 @@
      *
      * @hide
      */
+    @SystemApi
     @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION)
     public static final String ACTION_MANAGE_PERMISSION_APPS =
             "android.intent.action.MANAGE_PERMISSION_APPS";
@@ -2070,7 +1994,7 @@
     /**
      * Broadcast Action: An existing application package has been removed from
      * the device.  The data contains the name of the package.  The package
-     * that is being installed does <em>not</em> receive this Intent.
+     * that is being removed does <em>not</em> receive this Intent.
      * <ul>
      * <li> {@link #EXTRA_UID} containing the integer uid previously assigned
      * to the package.
@@ -2104,9 +2028,9 @@
     public static final String ACTION_PACKAGE_FULLY_REMOVED
             = "android.intent.action.PACKAGE_FULLY_REMOVED";
     /**
-     * Broadcast Action: An existing application package has been changed (e.g.
-     * a component has been enabled or disabled).  The data contains the name of
-     * the package.
+     * Broadcast Action: An existing application package has been changed (for
+     * example, a component has been enabled or disabled).  The data contains
+     * the name of the package.
      * <ul>
      * <li> {@link #EXTRA_UID} containing the integer uid assigned to the package.
      * <li> {@link #EXTRA_CHANGED_COMPONENT_NAME_LIST} containing the class name
@@ -2202,9 +2126,9 @@
     public static final String ACTION_UID_REMOVED = "android.intent.action.UID_REMOVED";
 
     /**
-     * Broadcast Action: Sent to the installer package of an application
-     * when that application is first launched (that is the first time it
-     * is moved out of the stopped state).  The data contains the name of the package.
+     * Broadcast Action: Sent to the installer package of an application when
+     * that application is first launched (that is the first time it is moved
+     * out of the stopped state).  The data contains the name of the package.
      *
      * <p class="note">This is a protected intent that can only be sent
      * by the system.
@@ -2232,8 +2156,9 @@
     public static final String ACTION_PACKAGE_VERIFIED = "android.intent.action.PACKAGE_VERIFIED";
 
     /**
-     * Broadcast Action: Sent to the system intent filter verifier when an intent filter
-     * needs to be verified. The data contains the filter data hosts to be verified against.
+     * Broadcast Action: Sent to the system intent filter verifier when an
+     * intent filter needs to be verified. The data contains the filter data
+     * hosts to be verified against.
      * <p class="note">
      * This is a protected intent that can only be sent by the system.
      * </p>
@@ -3077,10 +3002,6 @@
     public static final String ACTION_MANAGED_PROFILE_UNLOCKED =
             "android.intent.action.MANAGED_PROFILE_UNLOCKED";
 
-    /** @hide */
-    public static final String ACTION_MANAGED_PROFILE_AVAILABILITY_CHANGED =
-            "android.intent.action.MANAGED_PROFILE_AVAILABILITY_CHANGED";
-
     /**
      * Broadcast sent to the primary user when an associated managed profile has become available.
      * Currently this includes when the user disables quiet mode for the profile. Carries an extra
@@ -8905,7 +8826,7 @@
             } else if (ATTR_COMPONENT.equals(attrName)) {
                 intent.setComponent(ComponentName.unflattenFromString(attrValue));
             } else if (ATTR_FLAGS.equals(attrName)) {
-                intent.setFlags(Integer.valueOf(attrValue, 16));
+                intent.setFlags(Integer.parseInt(attrValue, 16));
             } else {
                 Log.e("Intent", "restoreFromXml: unknown attribute=" + attrName);
             }
diff --git a/core/java/android/content/pm/IPackageManager.aidl b/core/java/android/content/pm/IPackageManager.aidl
index 0526815..0c79312 100644
--- a/core/java/android/content/pm/IPackageManager.aidl
+++ b/core/java/android/content/pm/IPackageManager.aidl
@@ -451,9 +451,11 @@
     void updatePackagesIfNeeded();
 
     /**
-     * Notify the package manager that a package is going to be used.
+     * Notify the package manager that a package is going to be used and why.
+     *
+     * See PackageManager.NOTIFY_PACKAGE_USE_* for reasons.
      */
-    void notifyPackageUse(String packageName);
+    void notifyPackageUse(String packageName, int reason);
 
     /**
      * Ask the package manager to perform dex-opt (if needed) on the given
@@ -565,6 +567,7 @@
     boolean setRequiredForSystemUser(String packageName, boolean systemUserApp);
 
     String getServicesSystemSharedLibraryPackageName();
+    String getSharedSystemSharedLibraryPackageName();
 
     boolean isPackageDeviceAdminOnAnyUser(String packageName);
 
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index ade2248..b04cbc5 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -1736,7 +1736,7 @@
 
     /**
      * Feature for {@link #getSystemAvailableFeatures} and
-     * {@link #hasSystemFeature}: The heart rate sensor on this device is an Electrocargiogram.
+     * {@link #hasSystemFeature}: The heart rate sensor on this device is an Electrocardiogram.
      */
     @SdkConstant(SdkConstantType.FEATURE)
     public static final String FEATURE_SENSOR_HEART_RATE_ECG =
@@ -2181,7 +2181,7 @@
 
     /**
      * Feature for {@link #getSystemAvailableFeatures} and {@link #hasSystemFeature}:
-     * The device implements {@link #FEATURE_VR_MODE} but additionally meets all CTS requirements
+     * The device implements {@link #FEATURE_VR_MODE} but additionally meets all CDD requirements
      * to be certified as a "VR Ready" device, which guarantees that the device is capable of
      * delivering consistent performance at a high framerate over an extended period of time for
      * typical VR application CPU/GPU workloads with a minimal number of frame drops, implements
@@ -2367,6 +2367,7 @@
     *
     * @hide
     */
+    @SystemApi
     public static final int FLAG_PERMISSION_USER_SET = 1 << 0;
 
     /**
@@ -2376,6 +2377,7 @@
      *
      * @hide
      */
+    @SystemApi
     public static final int FLAG_PERMISSION_USER_FIXED =  1 << 1;
 
     /**
@@ -2385,6 +2387,7 @@
      *
      * @hide
      */
+    @SystemApi
     public static final int FLAG_PERMISSION_POLICY_FIXED =  1 << 2;
 
     /**
@@ -2397,6 +2400,7 @@
      *
      * @hide
      */
+    @SystemApi
     public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE =  1 << 3;
 
     /**
@@ -2405,6 +2409,7 @@
      *
      * @hide
      */
+    @SystemApi
     public static final int FLAG_PERMISSION_SYSTEM_FIXED =  1 << 4;
 
     /**
@@ -2415,6 +2420,7 @@
      *
      * @hide
      */
+    @SystemApi
     public static final int FLAG_PERMISSION_GRANTED_BY_DEFAULT =  1 << 5;
 
     /**
@@ -2423,6 +2429,7 @@
      *
      * @hide
      */
+    @SystemApi
     public static final int FLAG_PERMISSION_REVIEW_REQUIRED =  1 << 6;
 
     /**
@@ -2456,6 +2463,69 @@
     public static final String SYSTEM_SHARED_LIBRARY_SHARED = "android.ext.shared";
 
     /**
+     * Used when starting a process for an Activity.
+     *
+     * @hide
+     */
+    public static final int NOTIFY_PACKAGE_USE_ACTIVITY = 0;
+
+    /**
+     * Used when starting a process for a Service.
+     *
+     * @hide
+     */
+    public static final int NOTIFY_PACKAGE_USE_SERVICE = 1;
+
+    /**
+     * Used when moving a Service to the foreground.
+     *
+     * @hide
+     */
+    public static final int NOTIFY_PACKAGE_USE_FOREGROUND_SERVICE = 2;
+
+    /**
+     * Used when starting a process for a BroadcastReceiver.
+     *
+     * @hide
+     */
+    public static final int NOTIFY_PACKAGE_USE_BROADCAST_RECEIVER = 3;
+
+    /**
+     * Used when starting a process for a ContentProvider.
+     *
+     * @hide
+     */
+    public static final int NOTIFY_PACKAGE_USE_CONTENT_PROVIDER = 4;
+
+    /**
+     * Used when starting a process for a BroadcastReceiver.
+     *
+     * @hide
+     */
+    public static final int NOTIFY_PACKAGE_USE_BACKUP = 5;
+
+    /**
+     * Used with Context.getClassLoader() across Android packages.
+     *
+     * @hide
+     */
+    public static final int NOTIFY_PACKAGE_USE_CROSS_PACKAGE = 6;
+
+    /**
+     * Used when starting a package within a process for Instrumentation.
+     *
+     * @hide
+     */
+    public static final int NOTIFY_PACKAGE_USE_INSTRUMENTATION = 7;
+
+    /**
+     * Total number of usage reasons.
+     *
+     * @hide
+     */
+    public static final int NOTIFY_PACKAGE_USE_REASONS_COUNT = 8;
+
+    /**
      * Retrieve overall information about an application package that is
      * installed on the system.
      *
@@ -3061,6 +3131,7 @@
      *
      * @hide
      */
+    @SystemApi
     public abstract List<PackageInfo> getInstalledPackagesAsUser(@PackageInfoFlags int flags,
             @UserIdInt int userId);
 
@@ -3510,7 +3581,16 @@
      *
      * @hide
      */
-    public abstract @Nullable String getServicesSystemSharedLibraryPackageName();
+    public abstract @NonNull String getServicesSystemSharedLibraryPackageName();
+
+    /**
+     * Get the name of the package hosting the shared components shared library.
+     *
+     * @return The library host package.
+     *
+     * @hide
+     */
+    public abstract @NonNull String getSharedSystemSharedLibraryPackageName();
 
     /**
      * Get a list of features that are available on the
diff --git a/core/java/android/content/pm/PackageParser.java b/core/java/android/content/pm/PackageParser.java
index aa1e372..f42a340 100644
--- a/core/java/android/content/pm/PackageParser.java
+++ b/core/java/android/content/pm/PackageParser.java
@@ -85,6 +85,7 @@
 import static android.content.pm.ActivityInfo.RESIZE_MODE_RESIZEABLE_AND_PIPABLE;
 import static android.content.pm.ActivityInfo.RESIZE_MODE_UNRESIZEABLE;
 import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED;
+import static android.content.pm.ApplicationInfo.FLAG_SUSPENDED;
 import static android.content.pm.ApplicationInfo.PRIVATE_FLAG_RESIZEABLE_ACTIVITIES;
 import static android.content.pm.PackageManager.INSTALL_PARSE_FAILED_BAD_MANIFEST;
 import static android.content.pm.PackageManager.INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME;
@@ -131,12 +132,6 @@
     /** File name in an APK for the Android manifest. */
     private static final String ANDROID_MANIFEST_FILENAME = "AndroidManifest.xml";
 
-    /**
-     * File name in an APK for bytecode.  There may be additional bytecode files
-     * but this one is always required for an APK that has code.
-     */
-    private static final String BYTECODE_FILENAME = "classes.dex";
-
     /** Path prefix for apps on expanded storage */
     private static final String MNT_EXPAND = "/mnt/expand/";
 
@@ -1137,13 +1132,11 @@
 
         Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "collectCertificates");
         try {
-            collectCertificates(
-                    pkg, new File(pkg.baseCodePath), pkg.applicationInfo.flags, parseFlags);
+            collectCertificates(pkg, new File(pkg.baseCodePath), parseFlags);
 
             if (!ArrayUtils.isEmpty(pkg.splitCodePaths)) {
                 for (int i = 0; i < pkg.splitCodePaths.length; i++) {
-                    collectCertificates(
-                            pkg, new File(pkg.splitCodePaths[i]), pkg.splitFlags[i], parseFlags);
+                    collectCertificates(pkg, new File(pkg.splitCodePaths[i]), parseFlags);
                 }
             }
         } finally {
@@ -1151,10 +1144,8 @@
         }
     }
 
-    private static void collectCertificates(Package pkg, File apkFile, int apkFlags, int parseFlags)
+    private static void collectCertificates(Package pkg, File apkFile, int parseFlags)
             throws PackageParserException {
-        final boolean hasCode = (apkFlags & ApplicationInfo.FLAG_HAS_CODE) != 0;
-        final boolean requireCode = ((parseFlags & PARSE_ENFORCE_CODE) != 0) && hasCode;
         final String apkPath = apkFile.getAbsolutePath();
 
         // Try to verify the APK using APK Signature Scheme v2.
@@ -1202,7 +1193,6 @@
             }
         }
 
-        boolean codeFound = false;
         StrictJarFile jarFile = null;
         try {
             Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "strictJarFileCtor");
@@ -1210,7 +1200,7 @@
             // For those APKs we only care about extracting signer certificates, and don't care
             // about verifying integrity.
             boolean signatureSchemeRollbackProtectionsEnforced =
-                    (parseFlags & PARSE_IS_SYSTEM) == 0;
+                    (parseFlags & PARSE_IS_SYSTEM_DIR) == 0;
             jarFile = new StrictJarFile(
                     apkPath,
                     !verified, // whether to verify JAR signature
@@ -1226,10 +1216,6 @@
 
             // Optimization: early termination when APK already verified
             if (verified) {
-                if ((requireCode) && (jarFile.findEntry(BYTECODE_FILENAME) == null)) {
-                    throw new PackageParserException(INSTALL_PARSE_FAILED_MANIFEST_MALFORMED,
-                            "Package " + apkPath + " code is missing");
-                }
                 return;
             }
 
@@ -1239,7 +1225,7 @@
             toVerify.add(manifestEntry);
 
             // If we're parsing an untrusted package, verify all contents
-            if ((parseFlags & PARSE_IS_SYSTEM) == 0) {
+            if ((parseFlags & PARSE_IS_SYSTEM_DIR) == 0) {
                 final Iterator<ZipEntry> i = jarFile.iterator();
                 while (i.hasNext()) {
                     final ZipEntry entry = i.next();
@@ -1249,19 +1235,11 @@
                     final String entryName = entry.getName();
                     if (entryName.startsWith("META-INF/")) continue;
                     if (entryName.equals(ANDROID_MANIFEST_FILENAME)) continue;
-                    if (entryName.equals(BYTECODE_FILENAME)) {
-                        codeFound = true;
-                    }
 
                     toVerify.add(entry);
                 }
             }
 
-            if (!codeFound && requireCode) {
-                throw new PackageParserException(INSTALL_PARSE_FAILED_MANIFEST_MALFORMED,
-                        "Package " + apkPath + " code is missing");
-            }
-
             // Verify that entries are signed consistently with the first entry
             // we encountered. Note that for splits, certificates may have
             // already been populated during an earlier parse of a base APK.
@@ -1349,7 +1327,7 @@
                 final Package tempPkg = new Package(null);
                 Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "collectCertificates");
                 try {
-                    collectCertificates(tempPkg, apkFile, 0 /*apkFlags*/, 0 /*flags*/);
+                    collectCertificates(tempPkg, apkFile, 0 /*parseFlags*/);
                 } finally {
                     Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER);
                 }
@@ -1679,7 +1657,6 @@
     private Package parseBaseApkCommon(Package pkg, Set<String> acceptedTags, Resources res,
             XmlResourceParser parser, int flags, String[] outError) throws XmlPullParserException,
             IOException {
-        final boolean trustedOverlay = (flags & PARSE_TRUSTED_OVERLAY) != 0;
         mParseInstrumentationArgs = null;
         mParseActivityArgs = null;
         mParseServiceArgs = null;
@@ -1769,8 +1746,6 @@
                     return null;
                 }
             } else if (tagName.equals(TAG_OVERLAY)) {
-                pkg.mTrustedOverlay = trustedOverlay;
-
                 sa = res.obtainAttributes(parser,
                         com.android.internal.R.styleable.AndroidManifestResourceOverlay);
                 pkg.mOverlayTarget = sa.getString(
@@ -2924,12 +2899,14 @@
             ai.flags |= ApplicationInfo.FLAG_EXTRACT_NATIVE_LIBS;
         }
 
-        if (sa.getBoolean(R.styleable.AndroidManifestApplication_defaultToDeviceProtectedStorage,
-                false) && (flags & PARSE_IS_SYSTEM) != 0) {
+        if (sa.getBoolean(
+                R.styleable.AndroidManifestApplication_defaultToDeviceProtectedStorage,
+                false)) {
             ai.privateFlags |= ApplicationInfo.PRIVATE_FLAG_DEFAULT_TO_DEVICE_PROTECTED_STORAGE;
         }
-        if (sa.getBoolean(R.styleable.AndroidManifestApplication_directBootAware, false)
-                && (flags & PARSE_IS_SYSTEM) != 0) {
+        if (sa.getBoolean(
+                R.styleable.AndroidManifestApplication_directBootAware,
+                false)) {
             ai.privateFlags |= ApplicationInfo.PRIVATE_FLAG_DIRECT_BOOT_AWARE;
         }
 
@@ -3554,7 +3531,7 @@
 
             a.info.encryptionAware = a.info.directBootAware = sa.getBoolean(
                     R.styleable.AndroidManifestActivity_directBootAware,
-                    owner.applicationInfo.isDirectBootAware());
+                    false);
         } else {
             a.info.launchMode = ActivityInfo.LAUNCH_MULTIPLE;
             a.info.configChanges = 0;
@@ -3572,7 +3549,7 @@
 
             a.info.encryptionAware = a.info.directBootAware = sa.getBoolean(
                     R.styleable.AndroidManifestActivity_directBootAware,
-                    owner.applicationInfo.isDirectBootAware());
+                    false);
         }
 
         if (a.info.directBootAware) {
@@ -3985,7 +3962,7 @@
 
         p.info.encryptionAware = p.info.directBootAware = sa.getBoolean(
                 R.styleable.AndroidManifestProvider_directBootAware,
-                owner.applicationInfo.isDirectBootAware());
+                false);
         if (p.info.directBootAware) {
             owner.applicationInfo.privateFlags |=
                     ApplicationInfo.PRIVATE_FLAG_PARTIALLY_DIRECT_BOOT_AWARE;
@@ -4277,7 +4254,7 @@
 
         s.info.encryptionAware = s.info.directBootAware = sa.getBoolean(
                 R.styleable.AndroidManifestService_directBootAware,
-                owner.applicationInfo.isDirectBootAware());
+                false);
         if (s.info.directBootAware) {
             owner.applicationInfo.privateFlags |=
                     ApplicationInfo.PRIVATE_FLAG_PARTIALLY_DIRECT_BOOT_AWARE;
@@ -4780,7 +4757,8 @@
         public int mPreferredOrder = 0;
 
         // For use by package manager to keep track of when a package was last used.
-        public long mLastPackageUsageTimeInMills;
+        public long[] mLastPackageUsageTimeInMills =
+                new long[PackageManager.NOTIFY_PACKAGE_USE_REASONS_COUNT];
 
         // // User set enabled state.
         // public int mSetEnabled = PackageManager.COMPONENT_ENABLED_STATE_DEFAULT;
@@ -5110,6 +5088,14 @@
             return true;
         }
 
+        public long getLatestPackageUseTimeInMills() {
+            long latestUse = 0L;
+            for (long use : mLastPackageUsageTimeInMills) {
+                latestUse = Math.max(latestUse, use);
+            }
+            return latestUse;
+        }
+
         public String toString() {
             return "Package{"
                 + Integer.toHexString(System.identityHashCode(this))
@@ -5303,6 +5289,10 @@
                 return true;
             }
         }
+        boolean suspended = (p.applicationInfo.flags & FLAG_SUSPENDED) != 0;
+        if (state.suspended != suspended) {
+            return true;
+        }
         if (!state.installed || state.hidden) {
             return true;
         }
diff --git a/core/java/android/content/pm/ShortcutInfo.java b/core/java/android/content/pm/ShortcutInfo.java
index a900015..9b1d0f7 100644
--- a/core/java/android/content/pm/ShortcutInfo.java
+++ b/core/java/android/content/pm/ShortcutInfo.java
@@ -29,6 +29,7 @@
 import android.os.Parcelable;
 import android.os.PersistableBundle;
 import android.os.UserHandle;
+import android.util.ArraySet;
 
 import com.android.internal.util.Preconditions;
 
@@ -36,6 +37,7 @@
 import java.lang.annotation.RetentionPolicy;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Set;
 
 // TODO Enhance javadoc
 /**
@@ -132,7 +134,7 @@
     private String mText;
 
     @NonNull
-    private List<String> mCategories;
+    private ArraySet<String> mCategories;
 
     /**
      * Intent *with extras removed*.
@@ -192,8 +194,8 @@
         updateTimestamp();
     }
 
-    private <T> ArrayList<T> clone(List<T> source) {
-        return (source == null) ? null : new ArrayList<>(source);
+    private <T> ArraySet<T> clone(Set<T> source) {
+        return (source == null) ? null : new ArraySet<>(source);
     }
 
     /**
@@ -346,7 +348,7 @@
 
         private String mText;
 
-        private List<String> mCategories;
+        private Set<String> mCategories;
 
         private Intent mIntent;
 
@@ -433,7 +435,7 @@
          * @see #SHORTCUT_CATEGORY_CONVERSATION
          */
         @NonNull
-        public Builder setCategories(List<String> categories) {
+        public Builder setCategories(Set<String> categories) {
             mCategories = categories;
             return this;
         }
@@ -539,7 +541,7 @@
      * Return the categories.
      */
     @Nullable
-    public List<String> getCategories() {
+    public Set<String> getCategories() {
         return mCategories;
     }
 
@@ -733,8 +735,6 @@
         mIcon = source.readParcelable(cl);
         mTitle = source.readString();
         mText = source.readString();
-        mCategories = new ArrayList<>();
-        source.readStringList(mCategories);
         mIntent = source.readParcelable(cl);
         mIntentPersistableExtras = source.readParcelable(cl);
         mWeight = source.readInt();
@@ -743,6 +743,16 @@
         mFlags = source.readInt();
         mIconResourceId = source.readInt();
         mBitmapPath = source.readString();
+
+        int N = source.readInt();
+        if (N == 0) {
+            mCategories = null;
+        } else {
+            mCategories = new ArraySet<>(N);
+            for (int i = 0; i < N; i++) {
+                mCategories.add(source.readString().intern());
+            }
+        }
     }
 
     @Override
@@ -754,7 +764,7 @@
         dest.writeParcelable(mIcon, flags);
         dest.writeString(mTitle);
         dest.writeString(mText);
-        dest.writeStringList(mCategories);
+
         dest.writeParcelable(mIntent, flags);
         dest.writeParcelable(mIntentPersistableExtras, flags);
         dest.writeInt(mWeight);
@@ -763,6 +773,16 @@
         dest.writeInt(mFlags);
         dest.writeInt(mIconResourceId);
         dest.writeString(mBitmapPath);
+
+        if (mCategories != null) {
+            final int N = mCategories.size();
+            dest.writeInt(N);
+            for (int i = 0; i < N; i++) {
+                dest.writeString(mCategories.valueAt(i));
+            }
+        } else {
+            dest.writeInt(0);
+        }
     }
 
     public static final Creator<ShortcutInfo> CREATOR =
@@ -859,7 +879,7 @@
     /** @hide */
     public ShortcutInfo(
             @UserIdInt int userId, String id, String packageName, ComponentName activityComponent,
-            Icon icon, String title, String text, List<String> categories, Intent intent,
+            Icon icon, String title, String text, Set<String> categories, Intent intent,
             PersistableBundle intentPersistableExtras,
             int weight, PersistableBundle extras, long lastChangedTimestamp,
             int flags, int iconResId, String bitmapPath) {
diff --git a/core/java/android/content/pm/permission/IRuntimePermissionPresenter.aidl b/core/java/android/content/pm/permission/IRuntimePermissionPresenter.aidl
new file mode 100644
index 0000000..8766508
--- /dev/null
+++ b/core/java/android/content/pm/permission/IRuntimePermissionPresenter.aidl
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.content.pm.permission;
+
+import android.os.RemoteCallback;
+
+/**
+ * Interface for communication with the permission presenter service.
+ *
+ * @hide
+ */
+oneway interface IRuntimePermissionPresenter {
+    void getAppPermissions(String packageName, in RemoteCallback callback);
+    void getAppsUsingPermissions(boolean system, in RemoteCallback callback);
+}
\ No newline at end of file
diff --git a/core/java/android/content/pm/permission/RuntimePermissionPresentationInfo.aidl b/core/java/android/content/pm/permission/RuntimePermissionPresentationInfo.aidl
new file mode 100644
index 0000000..f96a32f
--- /dev/null
+++ b/core/java/android/content/pm/permission/RuntimePermissionPresentationInfo.aidl
@@ -0,0 +1,19 @@
+/**
+ * Copyright (c) 2016, The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.content.pm.permission;
+
+parcelable RuntimePermissionPresentationInfo;
diff --git a/core/java/android/content/pm/permission/RuntimePermissionPresentationInfo.java b/core/java/android/content/pm/permission/RuntimePermissionPresentationInfo.java
new file mode 100644
index 0000000..352e8ad
--- /dev/null
+++ b/core/java/android/content/pm/permission/RuntimePermissionPresentationInfo.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.content.pm.permission;
+
+import android.annotation.NonNull;
+import android.annotation.SystemApi;
+import android.os.Parcel;
+import android.os.Parcelable;
+
+/**
+ * This class contains information about how a runtime permission
+ * is to be presented in the UI. A single runtime permission
+ * presented to the user may correspond to multiple platform defined
+ * permissions, e.g. the location permission may control both the
+ * coarse and fine platform permissions.
+ *
+ * @hide
+ */
+@SystemApi
+public final class RuntimePermissionPresentationInfo implements Parcelable {
+    private static final int FLAG_GRANTED = 1 << 0;
+    private static final int FLAG_STANDARD = 1 << 1;
+
+    private final CharSequence mLabel;
+    private final int mFlags;
+
+    /**
+     * Creates a new instance.
+     *
+     * @param label The permission label.
+     * @param granted Whether the permission is granted.
+     * @param standard Whether this is a platform-defined permission.
+     */
+    public RuntimePermissionPresentationInfo(CharSequence label,
+            boolean granted, boolean standard) {
+        mLabel = label;
+        int flags = 0;
+        if (granted) {
+            flags |= FLAG_GRANTED;
+        }
+        if (standard) {
+            flags |= FLAG_STANDARD;
+        }
+        mFlags = flags;
+    }
+
+    private RuntimePermissionPresentationInfo(Parcel parcel) {
+        mLabel = parcel.readCharSequence();
+        mFlags = parcel.readInt();
+    }
+
+    /**
+     * @return Whether the permission is granted.
+     */
+    public boolean isGranted() {
+        return (mFlags & FLAG_GRANTED) != 0;
+    }
+
+    /**
+     * @return Whether the permission is platform-defined.
+     */
+    public boolean isStandard() {
+        return (mFlags & FLAG_STANDARD) != 0;
+    }
+
+    /**
+     * Gets the permission label.
+     *
+     * @return The label.
+     */
+    public @NonNull CharSequence getLabel() {
+        return mLabel;
+    }
+
+    @Override
+    public int describeContents() {
+        return 0;
+    }
+
+    @Override
+    public void writeToParcel(Parcel parcel, int flags) {
+        parcel.writeCharSequence(mLabel);
+        parcel.writeInt(mFlags);
+    }
+
+    public static final Creator<RuntimePermissionPresentationInfo> CREATOR =
+            new Creator<RuntimePermissionPresentationInfo>() {
+        public RuntimePermissionPresentationInfo createFromParcel(Parcel source) {
+            return new RuntimePermissionPresentationInfo(source);
+        }
+
+        public RuntimePermissionPresentationInfo[] newArray(int size) {
+            return new RuntimePermissionPresentationInfo[size];
+        }
+    };
+}
diff --git a/core/java/android/content/pm/permission/RuntimePermissionPresenter.java b/core/java/android/content/pm/permission/RuntimePermissionPresenter.java
new file mode 100644
index 0000000..2e39926
--- /dev/null
+++ b/core/java/android/content/pm/permission/RuntimePermissionPresenter.java
@@ -0,0 +1,330 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.content.pm.permission;
+
+import android.annotation.NonNull;
+import android.annotation.Nullable;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.ServiceConnection;
+import android.content.pm.ApplicationInfo;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.IBinder;
+import android.os.Message;
+import android.os.RemoteCallback;
+import android.os.RemoteException;
+import android.permissionpresenterservice.RuntimePermissionPresenterService;
+import android.util.Log;
+import com.android.internal.annotations.GuardedBy;
+import com.android.internal.os.SomeArgs;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * This class provides information about runtime permissions for a specific
+ * app or all apps. This information is dedicated for presentation purposes
+ * and does not necessarily reflect the individual permissions requested/
+ * granted to an app as the platform may be grouping permissions to improve
+ * presentation and help the user make an informed choice. For example, all
+ * runtime permissions in the same permission group may be presented as a
+ * single permission in the UI.
+ *
+ * @hide
+ */
+public final class RuntimePermissionPresenter {
+    private static final String TAG = "RuntimePermPresenter";
+
+    /**
+     * The key for retrieving the result from the returned bundle.
+     *
+     * @hide
+     */
+    public static final String KEY_RESULT =
+            "android.content.pm.permission.RuntimePermissionPresenter.key.result";
+
+    /**
+     * Listener for delivering a result.
+     */
+    public static abstract class OnResultCallback {
+        /**
+         * The result for {@link #getAppPermissions(String, OnResultCallback, Handler)}.
+         * @param permissions The permissions list.
+         */
+        public void onGetAppPermissions(@NonNull
+                List<RuntimePermissionPresentationInfo> permissions) {
+            /* do nothing - stub */
+        }
+
+        /**
+         * The result for {@link #getAppsUsingPermissions(boolean, List)}.
+         * @param system Whether to return only the system apps or only the non-system ones.
+         * @param apps The apps using runtime permissions.
+         */
+        public void getAppsUsingPermissions(boolean system, @NonNull List<ApplicationInfo> apps) {
+            /* do nothing - stub */
+        }
+    }
+
+    private static final Object sLock = new Object();
+
+    @GuardedBy("sLock")
+    private static RuntimePermissionPresenter sInstance;
+
+    private final RemoteService mRemoteService;
+
+    /**
+     * Gets the singleton runtime permission presenter.
+     *
+     * @param context Context for accessing resources.
+     * @return The singleton instance.
+     */
+    public static RuntimePermissionPresenter getInstance(@NonNull Context context) {
+        synchronized (sLock) {
+            if (sInstance == null) {
+                sInstance = new RuntimePermissionPresenter(context.getApplicationContext());
+            }
+            return sInstance;
+        }
+    }
+
+    private RuntimePermissionPresenter(Context context) {
+        mRemoteService = new RemoteService(context);
+    }
+
+    /**
+     * Gets the runtime permissions for an app.
+     *
+     * @param packageName The package for which to query.
+     * @param callback Callback to receive the result.
+     * @param handler Handler on which to invoke the callback.
+     */
+    public void getAppPermissions(@NonNull String packageName,
+            @NonNull OnResultCallback callback, @Nullable Handler handler) {
+        SomeArgs args = SomeArgs.obtain();
+        args.arg1 = packageName;
+        args.arg2 = callback;
+        args.arg3 = handler;
+        Message message = mRemoteService.obtainMessage(
+                RemoteService.MSG_GET_APP_PERMISSIONS, args);
+        mRemoteService.processMessage(message);
+    }
+
+    /**
+     * Gets the system apps that use runtime permissions. System apps are ones
+     * that are considered system for presentation purposes instead of ones
+     * that are preinstalled on the system image. System apps are ones that
+     * are on the system image, haven't been updated (a.k.a factory apps)
+     * that do not have a launcher icon.
+     *
+     * @param system If true only system apps are returned otherwise only
+     *        non-system ones are returned.
+     * @param callback Callback to receive the result.
+     * @param handler Handler on which to invoke the callback.
+     */
+    public void getAppsUsingPermissions(boolean system, @NonNull OnResultCallback callback,
+            @Nullable Handler handler) {
+        SomeArgs args = SomeArgs.obtain();
+        args.arg1 = callback;
+        args.arg2 = handler;
+        args.argi1 = system ? 1 : 0;
+        Message message = mRemoteService.obtainMessage(
+                RemoteService.MSG_GET_APPS_USING_PERMISSIONS, args);
+        mRemoteService.processMessage(message);
+    }
+
+    private static final class RemoteService
+            extends Handler implements ServiceConnection {
+        private static final long UNBIND_TIMEOUT_MILLIS = 10000;
+
+        public static final int MSG_GET_APP_PERMISSIONS = 1;
+        public static final int MSG_GET_APPS_USING_PERMISSIONS = 2;
+        public static final int MSG_UNBIND = 3;
+
+        private final Object mLock = new Object();
+
+        private final Context mContext;
+
+        @GuardedBy("mLock")
+        private final List<Message> mPendingWork = new ArrayList<>();
+
+        @GuardedBy("mLock")
+        private IRuntimePermissionPresenter mRemoteInstance;
+
+        @GuardedBy("mLock")
+        private boolean mBound;
+
+        public RemoteService(Context context) {
+            super(context.getMainLooper(), null, false);
+            mContext = context;
+        }
+
+        public void processMessage(Message message) {
+            synchronized (mLock) {
+                if (!mBound) {
+                    Intent intent = new Intent(
+                            RuntimePermissionPresenterService.SERVICE_INTERFACE);
+                    intent.setPackage(mContext.getPackageManager()
+                            .getPermissionControllerPackageName());
+                    mBound = mContext.bindService(intent, this,
+                            Context.BIND_AUTO_CREATE);
+                }
+                mPendingWork.add(message);
+                scheduleNextMessageIfNeededLocked();
+            }
+        }
+
+        @Override
+        public void onServiceConnected(ComponentName name, IBinder service) {
+            synchronized (mLock) {
+                mRemoteInstance = IRuntimePermissionPresenter.Stub.asInterface(service);
+                scheduleNextMessageIfNeededLocked();
+            }
+        }
+
+        @Override
+        public void onServiceDisconnected(ComponentName name) {
+            synchronized (mLock) {
+                mRemoteInstance = null;
+            }
+        }
+
+        @Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_GET_APP_PERMISSIONS: {
+                    SomeArgs args = (SomeArgs) msg.obj;
+                    final String packageName = (String) args.arg1;
+                    final OnResultCallback callback = (OnResultCallback) args.arg2;
+                    final Handler handler = (Handler) args.arg3;
+                    args.recycle();
+                    final IRuntimePermissionPresenter remoteInstance;
+                    synchronized (mLock) {
+                        remoteInstance = mRemoteInstance;
+                    }
+                    if (remoteInstance == null) {
+                        return;
+                    }
+                    try {
+                        remoteInstance.getAppPermissions(packageName,
+                                new RemoteCallback(new RemoteCallback.OnResultListener() {
+                            @Override
+                            public void onResult(Bundle result) {
+                                final List<RuntimePermissionPresentationInfo> reportedPermissions;
+                                List<RuntimePermissionPresentationInfo> permissions = null;
+                                if (result != null) {
+                                    permissions = result.getParcelableArrayList(KEY_RESULT);
+                                }
+                                if (permissions == null) {
+                                    permissions = Collections.emptyList();
+                                }
+                                reportedPermissions = permissions;
+                                if (handler != null) {
+                                    handler.post(new Runnable() {
+                                        @Override
+                                        public void run() {
+                                            callback.onGetAppPermissions(reportedPermissions);
+                                        }
+                                    });
+                                } else {
+                                    callback.onGetAppPermissions(reportedPermissions);
+                                }
+                            }
+                        }, this));
+                    } catch (RemoteException re) {
+                        Log.e(TAG, "Error getting app permissions", re);
+                    }
+                    scheduleUnbind();
+                } break;
+
+                case MSG_GET_APPS_USING_PERMISSIONS: {
+                    SomeArgs args = (SomeArgs) msg.obj;
+                    final OnResultCallback callback = (OnResultCallback) args.arg1;
+                    final Handler handler = (Handler) args.arg2;
+                    final boolean system = args.argi1 == 1;
+                    args.recycle();
+                    final IRuntimePermissionPresenter remoteInstance;
+                    synchronized (mLock) {
+                        remoteInstance = mRemoteInstance;
+                    }
+                    if (remoteInstance == null) {
+                        return;
+                    }
+                    try {
+                        remoteInstance.getAppsUsingPermissions(system, new RemoteCallback(
+                                new RemoteCallback.OnResultListener() {
+                            @Override
+                            public void onResult(Bundle result) {
+                                final List<ApplicationInfo> reportedApps;
+                                List<ApplicationInfo> apps = null;
+                                if (result != null) {
+                                    apps = result.getParcelableArrayList(KEY_RESULT);
+                                }
+                                if (apps == null) {
+                                    apps = Collections.emptyList();
+                                }
+                                reportedApps = apps;
+                                if (handler != null) {
+                                    handler.post(new Runnable() {
+                                        @Override
+                                        public void run() {
+                                            callback.getAppsUsingPermissions(system, reportedApps);
+                                        }
+                                    });
+                                } else {
+                                    callback.getAppsUsingPermissions(system, reportedApps);
+                                }
+                            }
+                        }, this));
+                    } catch (RemoteException re) {
+                        Log.e(TAG, "Error getting apps using permissions", re);
+                    }
+                    scheduleUnbind();
+                } break;
+
+                case MSG_UNBIND: {
+                    synchronized (mLock) {
+                        if (mBound) {
+                            mContext.unbindService(this);
+                            mBound = false;
+                        }
+                        mRemoteInstance = null;
+                    }
+                } break;
+            }
+
+            synchronized (mLock) {
+                scheduleNextMessageIfNeededLocked();
+            }
+        }
+
+        private void scheduleNextMessageIfNeededLocked() {
+            if (mBound && mRemoteInstance != null && !mPendingWork.isEmpty()) {
+                Message nextMessage = mPendingWork.remove(0);
+                sendMessage(nextMessage);
+            }
+        }
+
+        private void scheduleUnbind() {
+            removeMessages(MSG_UNBIND);
+            sendEmptyMessageDelayed(MSG_UNBIND, UNBIND_TIMEOUT_MILLIS);
+        }
+    }
+}
diff --git a/core/java/android/hardware/camera2/CameraManager.java b/core/java/android/hardware/camera2/CameraManager.java
index ffd9d89..3917bfa 100644
--- a/core/java/android/hardware/camera2/CameraManager.java
+++ b/core/java/android/hardware/camera2/CameraManager.java
@@ -223,7 +223,7 @@
                         " currently connected camera device", cameraId));
             }
 
-            int id = Integer.valueOf(cameraId);
+            int id = Integer.parseInt(cameraId);
 
             /*
              * Get the camera characteristics from the camera service directly if it supports it,
diff --git a/core/java/android/hardware/camera2/impl/CameraCaptureSessionImpl.java b/core/java/android/hardware/camera2/impl/CameraCaptureSessionImpl.java
index 5573896..6736d34 100644
--- a/core/java/android/hardware/camera2/impl/CameraCaptureSessionImpl.java
+++ b/core/java/android/hardware/camera2/impl/CameraCaptureSessionImpl.java
@@ -628,7 +628,12 @@
      * close the camera further by unconfiguring and then firing {@code onClosed}.</p>
      */
     private void finishPendingSequence(int sequenceId) {
-        mSequenceDrainer.taskFinished(sequenceId);
+        try {
+            mSequenceDrainer.taskFinished(sequenceId);
+        } catch (IllegalStateException e) {
+            // Workaround for b/27870771
+            Log.w(TAG, e.getMessage());
+        }
     }
 
     private class SequenceDrainListener implements TaskDrainer.DrainListener {
diff --git a/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java b/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
index b542339..5743b4d 100644
--- a/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
+++ b/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
@@ -921,7 +921,16 @@
                 int requestId = mRepeatingRequestId;
                 mRepeatingRequestId = REQUEST_ID_NONE;
 
-                long lastFrameNumber = mRemoteDevice.cancelRequest(requestId);
+                long lastFrameNumber;
+                try {
+                    lastFrameNumber = mRemoteDevice.cancelRequest(requestId);
+                } catch (IllegalArgumentException e) {
+                    if (DEBUG) {
+                        Log.v(TAG, "Repeating request was already stopped for request " + requestId);
+                    }
+                    // Repeating request was already stopped. Nothing more to do.
+                    return;
+                }
 
                 checkEarlyTriggerSequenceComplete(requestId, lastFrameNumber);
             }
@@ -1686,6 +1695,24 @@
         }
 
         @Override
+        public void onRepeatingRequestError(long lastFrameNumber) {
+            if (DEBUG) {
+                Log.d(TAG, "Repeating request error received. Last frame number is " +
+                        lastFrameNumber);
+            }
+
+            synchronized(mInterfaceLock) {
+                // Camera is already closed or no repeating request is present.
+                if (mRemoteDevice == null || mRepeatingRequestId == REQUEST_ID_NONE) {
+                    return; // Camera already closed
+                }
+
+                checkEarlyTriggerSequenceComplete(mRepeatingRequestId, lastFrameNumber);
+                mRepeatingRequestId = REQUEST_ID_NONE;
+            }
+        }
+
+        @Override
         public void onDeviceIdle() {
             if (DEBUG) {
                 Log.d(TAG, "Camera now idle");
diff --git a/core/java/android/hardware/camera2/legacy/CameraDeviceState.java b/core/java/android/hardware/camera2/legacy/CameraDeviceState.java
index b0b94e3..e48bce1 100644
--- a/core/java/android/hardware/camera2/legacy/CameraDeviceState.java
+++ b/core/java/android/hardware/camera2/legacy/CameraDeviceState.java
@@ -76,6 +76,7 @@
         void onBusy();
         void onCaptureStarted(RequestHolder holder, long timestamp);
         void onCaptureResult(CameraMetadataNative result, RequestHolder holder);
+        void onRepeatingRequestError(long lastFrameNumber);
     }
 
     /**
@@ -201,6 +202,22 @@
     }
 
     /**
+     * Set repeating request error.
+     *
+     * <p>Repeating request has been stopped due to an error such as abandoned output surfaces.</p>
+     *
+     * @param lastFrameNumber Frame number of the last repeating request before it is stopped.
+     */
+    public synchronized void setRepeatingRequestError(final long lastFrameNumber) {
+        mCurrentHandler.post(new Runnable() {
+            @Override
+            public void run() {
+                mCurrentListener.onRepeatingRequestError(lastFrameNumber);
+            }
+        });
+    }
+
+    /**
      * Set the listener for state transition callbacks.
      *
      * @param handler handler on which to call the callbacks.
diff --git a/core/java/android/hardware/camera2/legacy/CameraDeviceUserShim.java b/core/java/android/hardware/camera2/legacy/CameraDeviceUserShim.java
index f99928a..acbf214 100644
--- a/core/java/android/hardware/camera2/legacy/CameraDeviceUserShim.java
+++ b/core/java/android/hardware/camera2/legacy/CameraDeviceUserShim.java
@@ -205,6 +205,7 @@
         private static final int CAPTURE_STARTED = 2;
         private static final int RESULT_RECEIVED = 3;
         private static final int PREPARED = 4;
+        private static final int REPEATING_REQUEST_ERROR = 5;
 
         private final HandlerThread mHandlerThread;
         private Handler mHandler;
@@ -261,6 +262,15 @@
             getHandler().sendMessage(msg);
         }
 
+
+        @Override
+        public void onRepeatingRequestError(long lastFrameNumber) {
+            Message msg = getHandler().obtainMessage(REPEATING_REQUEST_ERROR,
+                    /*arg1*/ (int) (lastFrameNumber & 0xFFFFFFFFL),
+                    /*arg2*/ (int) ( (lastFrameNumber >> 32) & 0xFFFFFFFFL));
+            getHandler().sendMessage(msg);
+        }
+
         @Override
         public IBinder asBinder() {
             // This is solely intended to be used for in-process binding.
@@ -311,6 +321,12 @@
                             mCallbacks.onPrepared(streamId);
                             break;
                         }
+                        case REPEATING_REQUEST_ERROR: {
+                            long lastFrameNumber = msg.arg2 & 0xFFFFFFFFL;
+                            lastFrameNumber = (lastFrameNumber << 32) | (msg.arg1 & 0xFFFFFFFFL);
+                            mCallbacks.onRepeatingRequestError(lastFrameNumber);
+                            break;
+                        }
                         default:
                             throw new IllegalArgumentException(
                                 "Unknown callback message " + msg.what);
diff --git a/core/java/android/hardware/camera2/legacy/LegacyCameraDevice.java b/core/java/android/hardware/camera2/legacy/LegacyCameraDevice.java
index 6c95869..3e79118 100644
--- a/core/java/android/hardware/camera2/legacy/LegacyCameraDevice.java
+++ b/core/java/android/hardware/camera2/legacy/LegacyCameraDevice.java
@@ -242,6 +242,25 @@
                 }
             });
         }
+
+        @Override
+        public void onRepeatingRequestError(final long lastFrameNumber) {
+            mResultHandler.post(new Runnable() {
+                @Override
+                public void run() {
+                    if (DEBUG) {
+                        Log.d(TAG, "doing onRepeatingRequestError callback.");
+                    }
+                    try {
+                        mDeviceCallbacks.onRepeatingRequestError(lastFrameNumber);
+                    } catch (RemoteException e) {
+                        throw new IllegalStateException(
+                                "Received remote exception during onRepeatingRequestError " +
+                                "callback: ", e);
+                    }
+                }
+            });
+        }
     };
 
     private final RequestThreadManager mRequestThreadManager;
@@ -397,8 +416,15 @@
                     "submitRequestList - Empty/null requests are not allowed");
         }
 
-        List<Long> surfaceIds = (mConfiguredSurfaces == null) ? new ArrayList<Long>() :
-                getSurfaceIds(mConfiguredSurfaces);
+        List<Long> surfaceIds;
+
+        try {
+            surfaceIds = (mConfiguredSurfaces == null) ? new ArrayList<Long>() :
+                    getSurfaceIds(mConfiguredSurfaces);
+        } catch (BufferQueueAbandonedException e) {
+            throw new ServiceSpecificException(BAD_VALUE,
+                    "submitRequestList - configured surface is abandoned.");
+        }
 
         // Make sure that there all requests have at least 1 surface; all surfaces are non-null
         for (CaptureRequest request : requestList) {
@@ -674,12 +700,17 @@
         LegacyExceptionUtils.throwOnError(nativeSetSurfaceDimens(surface, width, height));
     }
 
-    static long getSurfaceId(Surface surface) {
+    static long getSurfaceId(Surface surface) throws BufferQueueAbandonedException {
         checkNotNull(surface);
-        return nativeGetSurfaceId(surface);
+        try {
+            return nativeGetSurfaceId(surface);
+        } catch (IllegalArgumentException e) {
+            throw new BufferQueueAbandonedException();
+        }
     }
 
-    static List<Long> getSurfaceIds(SparseArray<Surface> surfaces) {
+    static List<Long> getSurfaceIds(SparseArray<Surface> surfaces)
+            throws BufferQueueAbandonedException {
         if (surfaces == null) {
             throw new NullPointerException("Null argument surfaces");
         }
@@ -696,7 +727,8 @@
         return surfaceIds;
     }
 
-    static List<Long> getSurfaceIds(Collection<Surface> surfaces) {
+    static List<Long> getSurfaceIds(Collection<Surface> surfaces)
+            throws BufferQueueAbandonedException {
         if (surfaces == null) {
             throw new NullPointerException("Null argument surfaces");
         }
@@ -713,7 +745,13 @@
     }
 
     static boolean containsSurfaceId(Surface s, Collection<Long> ids) {
-        long id = getSurfaceId(s);
+        long id = 0;
+        try {
+            id = getSurfaceId(s);
+        } catch (BufferQueueAbandonedException e) {
+            // If surface is abandoned, return false.
+            return false;
+        }
         return ids.contains(id);
     }
 
diff --git a/core/java/android/hardware/camera2/legacy/RequestHolder.java b/core/java/android/hardware/camera2/legacy/RequestHolder.java
index 476c3de..98b761b 100644
--- a/core/java/android/hardware/camera2/legacy/RequestHolder.java
+++ b/core/java/android/hardware/camera2/legacy/RequestHolder.java
@@ -40,6 +40,7 @@
     private final int mNumJpegTargets;
     private final int mNumPreviewTargets;
     private volatile boolean mFailed = false;
+    private boolean mOutputAbandoned = false;
 
     private final Collection<Long> mJpegSurfaceIds;
 
@@ -266,4 +267,17 @@
         return mFailed;
     }
 
+    /**
+     * Mark at least one of this request's output surfaces is abandoned.
+     */
+    public void setOutputAbandoned() {
+        mOutputAbandoned = true;
+    }
+
+    /**
+     * Return if any of this request's output surface is abandoned.
+     */
+    public boolean isOutputAbandoned() {
+        return mOutputAbandoned;
+    }
 }
diff --git a/core/java/android/hardware/camera2/legacy/RequestThreadManager.java b/core/java/android/hardware/camera2/legacy/RequestThreadManager.java
index a3fdd56..da62f54 100644
--- a/core/java/android/hardware/camera2/legacy/RequestThreadManager.java
+++ b/core/java/android/hardware/camera2/legacy/RequestThreadManager.java
@@ -710,6 +710,7 @@
                     break;
                 case MSG_SUBMIT_CAPTURE_REQUEST:
                     Handler handler = RequestThreadManager.this.mRequestThread.getHandler();
+                    boolean anyRequestOutputAbandoned = false;
 
                     // Get the next burst from the request queue.
                     Pair<BurstHolder, Long> nextBurst = mRequestQueue.getNext();
@@ -910,7 +911,22 @@
                         if (!holder.requestFailed()) {
                             mDeviceState.setCaptureResult(holder, result);
                         }
+
+                        if (holder.isOutputAbandoned()) {
+                            anyRequestOutputAbandoned = true;
+                        }
                     }
+
+                    // Stop the repeating request if any of its output surfaces is abandoned.
+                    if (anyRequestOutputAbandoned && nextBurst.first.isRepeating()) {
+                        long lastFrameNumber = cancelRepeating(nextBurst.first.getRequestId());
+                        if (DEBUG) {
+                            Log.d(TAG, "Stopped repeating request. Last frame number is " +
+                                    lastFrameNumber);
+                        }
+                        mDeviceState.setRepeatingRequestError(lastFrameNumber);
+                    }
+
                     if (DEBUG) {
                         long totalTime = SystemClock.elapsedRealtimeNanos() - startTime;
                         Log.d(TAG, "Capture request took " + totalTime + " ns");
diff --git a/core/java/android/hardware/camera2/legacy/SurfaceTextureRenderer.java b/core/java/android/hardware/camera2/legacy/SurfaceTextureRenderer.java
index 70bc2fd..e0d3905 100644
--- a/core/java/android/hardware/camera2/legacy/SurfaceTextureRenderer.java
+++ b/core/java/android/hardware/camera2/legacy/SurfaceTextureRenderer.java
@@ -525,9 +525,16 @@
         checkEglError("makeCurrent");
     }
 
-    private boolean swapBuffers(EGLSurface surface) {
+    private boolean swapBuffers(EGLSurface surface)
+            throws LegacyExceptionUtils.BufferQueueAbandonedException {
         boolean result = EGL14.eglSwapBuffers(mEGLDisplay, surface);
-        checkEglError("swapBuffers");
+        int error = EGL14.eglGetError();
+        if (error == EGL14.EGL_BAD_SURFACE) {
+            throw new LegacyExceptionUtils.BufferQueueAbandonedException();
+        } else if (error != EGL14.EGL_SUCCESS) {
+            throw new IllegalStateException("swapBuffers: EGL error: 0x" +
+                    Integer.toHexString(error));
+        }
         return result;
     }
 
@@ -722,7 +729,14 @@
             addGlTimestamp(timestamp);
         }
 
-        List<Long> targetSurfaceIds = LegacyCameraDevice.getSurfaceIds(targetSurfaces);
+        List<Long> targetSurfaceIds = new ArrayList();
+        try {
+            targetSurfaceIds = LegacyCameraDevice.getSurfaceIds(targetSurfaces);
+        } catch (LegacyExceptionUtils.BufferQueueAbandonedException e) {
+            Log.w(TAG, "Surface abandoned, dropping frame. ", e);
+            request.setOutputAbandoned();
+        }
+
         for (EGLSurfaceHolder holder : mSurfaces) {
             if (LegacyCameraDevice.containsSurfaceId(holder.surface, targetSurfaceIds)) {
                 try{
@@ -737,6 +751,7 @@
                     swapBuffers(holder.eglSurface);
                 } catch (LegacyExceptionUtils.BufferQueueAbandonedException e) {
                     Log.w(TAG, "Surface abandoned, dropping frame. ", e);
+                    request.setOutputAbandoned();
                 }
             }
         }
@@ -761,6 +776,7 @@
                             holder.width, holder.height, format);
                 } catch (LegacyExceptionUtils.BufferQueueAbandonedException e) {
                     Log.w(TAG, "Surface abandoned, dropping frame. ", e);
+                    request.setOutputAbandoned();
                 }
             }
         }
diff --git a/core/java/android/hardware/fingerprint/FingerprintManager.java b/core/java/android/hardware/fingerprint/FingerprintManager.java
index 4756b372..1ff2e8a 100644
--- a/core/java/android/hardware/fingerprint/FingerprintManager.java
+++ b/core/java/android/hardware/fingerprint/FingerprintManager.java
@@ -517,7 +517,8 @@
 
         if (mService != null) try {
             mEnrollmentCallback = callback;
-            mService.enroll(mToken, token, userId, mServiceReceiver, flags);
+            mService.enroll(mToken, token, userId, mServiceReceiver, flags,
+                    mContext.getOpPackageName());
         } catch (RemoteException e) {
             Log.w(TAG, "Remote exception in enroll: ", e);
             if (callback != null) {
@@ -589,7 +590,7 @@
         if (mService != null) try {
             mRemovalCallback = callback;
             mRemovalFingerprint = fp;
-            mService.remove(mToken, fp.getFingerId(), userId, mServiceReceiver);
+            mService.remove(mToken, fp.getFingerId(), fp.getGroupId(), userId, mServiceReceiver);
         } catch (RemoteException e) {
             Log.w(TAG, "Remote exception in remove: ", e);
             if (callback != null) {
@@ -809,11 +810,13 @@
             if (mRemovalCallback != null) {
                 int reqFingerId = mRemovalFingerprint.getFingerId();
                 int reqGroupId = mRemovalFingerprint.getGroupId();
-                if (reqFingerId != 0  &&  fingerId != reqFingerId) {
+                if (reqFingerId != 0 && fingerId != 0  &&  fingerId != reqFingerId) {
                     Log.w(TAG, "Finger id didn't match: " + fingerId + " != " + reqFingerId);
+                    return;
                 }
                 if (groupId != reqGroupId) {
                     Log.w(TAG, "Group id didn't match: " + groupId + " != " + reqGroupId);
+                    return;
                 }
                 mRemovalCallback.onRemovalSucceeded(new Fingerprint(null, groupId, fingerId,
                         deviceId));
diff --git a/core/java/android/hardware/fingerprint/IFingerprintDaemon.aidl b/core/java/android/hardware/fingerprint/IFingerprintDaemon.aidl
index 9c13523..f40f8a3 100644
--- a/core/java/android/hardware/fingerprint/IFingerprintDaemon.aidl
+++ b/core/java/android/hardware/fingerprint/IFingerprintDaemon.aidl
@@ -35,4 +35,6 @@
     int closeHal();
     void init(IFingerprintDaemonCallback callback);
     int postEnroll();
+    int enumerate();
+    int cancelEnumeration();
 }
diff --git a/core/java/android/hardware/fingerprint/IFingerprintService.aidl b/core/java/android/hardware/fingerprint/IFingerprintService.aidl
index 43d5577..a83397a 100644
--- a/core/java/android/hardware/fingerprint/IFingerprintService.aidl
+++ b/core/java/android/hardware/fingerprint/IFingerprintService.aidl
@@ -35,13 +35,14 @@
 
     // Start fingerprint enrollment
     void enroll(IBinder token, in byte [] cryptoToken, int groupId, IFingerprintServiceReceiver receiver,
-            int flags);
+            int flags, String opPackageName);
 
     // Cancel enrollment in progress
     void cancelEnrollment(IBinder token);
 
     // Any errors resulting from this call will be returned to the listener
-    void remove(IBinder token, int fingerId, int groupId, IFingerprintServiceReceiver receiver);
+    void remove(IBinder token, int fingerId, int groupId, int userId,
+            IFingerprintServiceReceiver receiver);
 
     // Rename the fingerprint specified by fingerId and groupId to the given name
     void rename(int fingerId, int groupId, String name);
diff --git a/core/java/android/hardware/input/InputDeviceIdentifier.java b/core/java/android/hardware/input/InputDeviceIdentifier.java
index 5e832e3..801da88 100644
--- a/core/java/android/hardware/input/InputDeviceIdentifier.java
+++ b/core/java/android/hardware/input/InputDeviceIdentifier.java
@@ -16,8 +16,11 @@
 
 package android.hardware.input;
 
+import java.util.Objects;
+
 import android.os.Parcel;
 import android.os.Parcelable;
+import android.text.TextUtils;
 
 /**
  * Wrapper for passing identifying information for input devices.
@@ -65,6 +68,21 @@
         return mProductId;
     }
 
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || !(o instanceof InputDeviceIdentifier)) return false;
+
+        final InputDeviceIdentifier that = (InputDeviceIdentifier) o;
+        return ((mVendorId == that.mVendorId) && (mProductId == that.mProductId)
+                && TextUtils.equals(mDescriptor, that.mDescriptor));
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(mDescriptor, mVendorId, mProductId);
+    }
+
     public static final Parcelable.Creator<InputDeviceIdentifier> CREATOR =
             new Parcelable.Creator<InputDeviceIdentifier>() {
 
diff --git a/core/java/android/hardware/input/InputManager.java b/core/java/android/hardware/input/InputManager.java
index 47440de..8a43acb 100644
--- a/core/java/android/hardware/input/InputManager.java
+++ b/core/java/android/hardware/input/InputManager.java
@@ -19,6 +19,7 @@
 import com.android.internal.os.SomeArgs;
 
 import android.annotation.IntDef;
+import android.annotation.Nullable;
 import android.annotation.SdkConstant;
 import android.annotation.SdkConstant.SdkConstantType;
 import android.content.Context;
@@ -121,7 +122,7 @@
      * </p><p>
      * The <code>android:name</code> attribute specifies an identifier by which
      * the keyboard layout will be known in the package.
-     * The <code>android:label</code> attributes specifies a human-readable descriptive
+     * The <code>android:label</code> attribute specifies a human-readable descriptive
      * label to describe the keyboard layout in the user interface, such as "English (US)".
      * The <code>android:keyboardLayout</code> attribute refers to a
      * <a href="http://source.android.com/tech/input/key-character-map-files.html">
@@ -644,14 +645,16 @@
      *
      * @param identifier The identifier for the input device.
      * @param inputMethodInfo The input method.
-     * @param inputMethodSubtype The input method subtype.
+     * @param inputMethodSubtype The input method subtype. {@code null} if this input method does
+     * not support any subtype.
      *
      * @return The associated {@link KeyboardLayout}, or null if one has not been set.
      *
      * @hide
      */
+    @Nullable
     public KeyboardLayout getKeyboardLayoutForInputDevice(InputDeviceIdentifier identifier,
-            InputMethodInfo inputMethodInfo, InputMethodSubtype inputMethodSubtype) {
+            InputMethodInfo inputMethodInfo, @Nullable InputMethodSubtype inputMethodSubtype) {
         try {
             return mIm.getKeyboardLayoutForInputDevice(
                     identifier, inputMethodInfo, inputMethodSubtype);
@@ -666,13 +669,13 @@
      * @param identifier The identifier for the input device.
      * @param inputMethodInfo The input method with which to associate the keyboard layout.
      * @param inputMethodSubtype The input method subtype which which to associate the keyboard
-     *                           layout.
+     * layout. {@code null} if this input method does not support any subtype.
      * @param keyboardLayoutDescriptor The descriptor of the keyboard layout to set
      *
      * @hide
      */
     public void setKeyboardLayoutForInputDevice(InputDeviceIdentifier identifier,
-            InputMethodInfo inputMethodInfo, InputMethodSubtype inputMethodSubtype,
+            InputMethodInfo inputMethodInfo, @Nullable InputMethodSubtype inputMethodSubtype,
             String keyboardLayoutDescriptor) {
         try {
             mIm.setKeyboardLayoutForInputDevice(identifier, inputMethodInfo,
diff --git a/core/java/android/hardware/location/ContextHubManager.java b/core/java/android/hardware/location/ContextHubManager.java
index 89edaa9..0c3d4b3 100644
--- a/core/java/android/hardware/location/ContextHubManager.java
+++ b/core/java/android/hardware/location/ContextHubManager.java
@@ -43,6 +43,12 @@
     private Handler mCallbackHandler;
 
     /**
+     * @deprecated Use {@code mCallback} instead.
+     */
+    @Deprecated
+    private ICallback mLocalCallback;
+
+    /**
      * An interface to receive asynchronous communication from the context hub.
      */
     public abstract static class Callback {
@@ -64,6 +70,24 @@
     }
 
     /**
+     * @deprecated Use {@link Callback} instead.
+     * @hide
+     */
+    @Deprecated
+    public interface ICallback {
+        /**
+         * Callback function called on message receipt from context hub.
+         *
+         * @param hubHandle Handle (system-wide unique identifier) of the hub of the message.
+         * @param nanoAppHandle Handle (unique identifier) for app instance that sent the message.
+         * @param message The context hub message.
+         *
+         * @see ContextHubMessage
+         */
+        void onMessageReceipt(int hubHandle, int nanoAppHandle, ContextHubMessage message);
+    }
+
+    /**
      * Get a handle to all the context hubs in the system
      * @return array of context hub handles
      */
@@ -223,6 +247,20 @@
     }
 
     /**
+     * @deprecated Use {@link #registerCallback(Callback)} instead.
+     * @hide
+     */
+    @Deprecated
+    public int registerCallback(ICallback callback) {
+        if (mLocalCallback != null) {
+            Log.w(TAG, "Max number of local callbacks reached!");
+            return -1;
+        }
+        mLocalCallback = callback;
+        return 0;
+    }
+
+    /**
      * Set a callback to receive messages from the context hub
      *
      * @param callback Callback object
@@ -266,6 +304,19 @@
       return 0;
     }
 
+    /**
+     * @deprecated Use {@link #unregisterCallback(Callback)} instead.
+     * @hide
+     */
+    public synchronized int unregisterCallback(ICallback callback) {
+        if (callback != mLocalCallback) {
+            Log.w(TAG, "Cannot recognize local callback!");
+            return -1;
+        }
+        mLocalCallback = null;
+        return 0;
+    }
+
     private IContextHubCallback.Stub mClientCallback = new IContextHubCallback.Stub() {
         @Override
         public void onMessageReceipt(final int hubId, final int nanoAppId,
@@ -282,6 +333,12 @@
                         }
                     });
                 }
+            } else if (mLocalCallback != null) {
+                // we always ensure that mCallback takes precedence, because mLocalCallback is only
+                // for internal compatibility
+                synchronized (this) {
+                    mLocalCallback.onMessageReceipt(hubId, nanoAppId, message);
+                }
             } else {
                 Log.d(TAG, "Context hub manager client callback is NULL");
             }
diff --git a/core/java/android/hardware/location/ContextHubService.java b/core/java/android/hardware/location/ContextHubService.java
index 2b9b974..8176189 100644
--- a/core/java/android/hardware/location/ContextHubService.java
+++ b/core/java/android/hardware/location/ContextHubService.java
@@ -19,6 +19,7 @@
 import android.Manifest;
 import android.content.Context;
 import android.content.pm.PackageManager;
+import android.os.RemoteCallbackList;
 import android.os.RemoteException;
 import android.util.Log;
 
@@ -57,19 +58,17 @@
     private static final int OS_APP_INSTANCE = -1;
 
     private final Context mContext;
-
-    private HashMap<Integer, NanoAppInstanceInfo> mNanoAppHash;
-    private ContextHubInfo[] mContextHubInfo;
-    private IContextHubCallback mCallback;
+    private final HashMap<Integer, NanoAppInstanceInfo> mNanoAppHash = new HashMap<>();
+    private final ContextHubInfo[] mContextHubInfo;
+    private final RemoteCallbackList<IContextHubCallback> mCallbacksList =
+            new RemoteCallbackList<>();
 
     private native int nativeSendMessage(int[] header, byte[] data);
     private native ContextHubInfo[] nativeInitialize();
 
-
     public ContextHubService(Context context) {
         mContext = context;
         mContextHubInfo = nativeInitialize();
-        mNanoAppHash = new HashMap<Integer, NanoAppInstanceInfo>();
 
         for (int i = 0; i < mContextHubInfo.length; i++) {
             Log.d(TAG, "ContextHub[" + i + "] id: " + mContextHubInfo[i].getId()
@@ -80,9 +79,7 @@
     @Override
     public int registerCallback(IContextHubCallback callback) throws RemoteException {
         checkPermissions();
-        synchronized (this) {
-            mCallback = callback;
-        }
+        mCallbacksList.register(callback);
         return 0;
     }
 
@@ -237,26 +234,26 @@
         if (header == null || data == null || header.length < MSG_HEADER_SIZE) {
             return  -1;
         }
-
-        synchronized (this) {
-            if (mCallback != null) {
-                ContextHubMessage msg = new ContextHubMessage(header[MSG_FIELD_TYPE],
-                                                              header[MSG_FIELD_VERSION],
-                                                              data);
-
-                try {
-                    mCallback.onMessageReceipt(header[MSG_FIELD_HUB_HANDLE],
-                                               header[MSG_FIELD_APP_INSTANCE],
-                                               msg);
-                } catch (Exception e) {
-                    Log.w(TAG, "Exception " + e + " when calling remote callback");
-                    return -1;
-                }
-            } else {
-                Log.d(TAG, "Message Callback is NULL");
+        int callbacksCount = mCallbacksList.beginBroadcast();
+        if (callbacksCount < 1) {
+            Log.v(TAG, "No message callbacks registered.");
+            return 0;
+        }
+        ContextHubMessage message =
+                new ContextHubMessage(header[MSG_FIELD_TYPE], header[MSG_FIELD_VERSION], data);
+        for (int i = 0; i < callbacksCount; ++i) {
+            IContextHubCallback callback = mCallbacksList.getBroadcastItem(i);
+            try {
+                callback.onMessageReceipt(
+                        header[MSG_FIELD_HUB_HANDLE],
+                        header[MSG_FIELD_APP_INSTANCE],
+                        message);
+            } catch (RemoteException e) {
+                Log.i(TAG, "Exception (" + e + ") calling remote callback (" + callback + ").");
+                continue;
             }
         }
-
+        mCallbacksList.finishBroadcast();
         return 0;
     }
 
diff --git a/core/java/android/hardware/location/NanoAppInstanceInfo.java b/core/java/android/hardware/location/NanoAppInstanceInfo.java
index e842ec6..71a5a88 100644
--- a/core/java/android/hardware/location/NanoAppInstanceInfo.java
+++ b/core/java/android/hardware/location/NanoAppInstanceInfo.java
@@ -17,10 +17,14 @@
 package android.hardware.location;
 
 
+import android.annotation.NonNull;
+import android.annotation.Nullable;
 import android.annotation.SystemApi;
 import android.os.Parcel;
 import android.os.Parcelable;
 
+import libcore.util.EmptyArray;
+
 /**
  * @hide
  */
@@ -43,6 +47,8 @@
     private int mHandle;
 
     public NanoAppInstanceInfo() {
+        mNeededSensors = EmptyArray.INT;
+        mOutputEvents = EmptyArray.INT;
     }
 
     /**
@@ -193,6 +199,7 @@
      *
      * @return int[] all the required sensors needed by this app
      */
+    @NonNull
     public int[] getNeededSensors() {
         return mNeededSensors;
     }
@@ -204,8 +211,8 @@
      *
      * @hide
      */
-    public void setNeededSensors(int[] neededSensors) {
-        mNeededSensors = neededSensors;
+    public void setNeededSensors(@Nullable int[] neededSensors) {
+        mNeededSensors = neededSensors != null ? neededSensors : EmptyArray.INT;
     }
 
     /**
@@ -213,6 +220,7 @@
      *
      * @return all the events that can be generated by this app
      */
+    @NonNull
     public int[] getOutputEvents() {
         return mOutputEvents;
     }
@@ -225,8 +233,8 @@
      *
      * @hide
      */
-    public void setOutputEvents(int[] outputEvents) {
-        mOutputEvents = outputEvents;
+    public void setOutputEvents(@Nullable int[] outputEvents) {
+        mOutputEvents = outputEvents != null ? outputEvents : EmptyArray.INT;
     }
 
     /**
@@ -280,12 +288,12 @@
         mNeededWriteMemBytes = in.readInt();
         mNeededExecMemBytes = in.readInt();
 
-        int mNeededSensorsLength = in.readInt();
-        mNeededSensors = new int[mNeededSensorsLength];
+        int neededSensorsLength = in.readInt();
+        mNeededSensors = new int[neededSensorsLength];
         in.readIntArray(mNeededSensors);
 
-        int mOutputEventsLength = in.readInt();
-        mOutputEvents = new int[mOutputEventsLength];
+        int outputEventsLength = in.readInt();
+        mOutputEvents = new int[outputEventsLength];
         in.readIntArray(mOutputEvents);
     }
 
@@ -303,9 +311,9 @@
         out.writeInt(mNeededWriteMemBytes);
         out.writeInt(mNeededExecMemBytes);
 
+        // arrays are never null
         out.writeInt(mNeededSensors.length);
         out.writeIntArray(mNeededSensors);
-
         out.writeInt(mOutputEvents.length);
         out.writeIntArray(mOutputEvents);
     }
diff --git a/core/java/android/net/ConnectivityManager.java b/core/java/android/net/ConnectivityManager.java
index 5d008e3..9070ad9 100644
--- a/core/java/android/net/ConnectivityManager.java
+++ b/core/java/android/net/ConnectivityManager.java
@@ -1131,7 +1131,8 @@
      * implementation+feature combination, except that the value {@code -1}
      * always indicates failure.
      *
-     * @deprecated Deprecated in favor of the cleaner {@link #unregisterNetworkCallback} API.
+     * @deprecated Deprecated in favor of the cleaner
+     *             {@link #unregisterNetworkCallback(NetworkCallback)} API.
      *             In {@link VERSION_CODES#M}, and above, this method is unsupported and will
      *             throw {@code UnsupportedOperationException} if called.
      */
@@ -2811,7 +2812,7 @@
      * Request a network to satisfy a set of {@link android.net.NetworkCapabilities}.
      *
      * This {@link NetworkRequest} will live until released via
-     * {@link #unregisterNetworkCallback} or the calling application exits.
+     * {@link #unregisterNetworkCallback(NetworkCallback)} or the calling application exits.
      * Status of the request can be followed by listening to the various
      * callbacks described in {@link NetworkCallback}.  The {@link Network}
      * can be used to direct traffic to the network.
@@ -2848,7 +2849,7 @@
      * This function behaves identically to the non-timedout version, but if a suitable
      * network is not found within the given time (in milliseconds) the
      * {@link NetworkCallback#unavailable} callback is called.  The request must
-     * still be released normally by calling {@link unregisterNetworkCallback}.
+     * still be released normally by calling {@link unregisterNetworkCallback(NetworkCallback)}.
      *
      * <p>This method requires the caller to hold either the
      * {@link android.Manifest.permission#CHANGE_NETWORK_STATE} permission
@@ -2956,7 +2957,8 @@
     /**
      * Removes a request made via {@link #requestNetwork(NetworkRequest, android.app.PendingIntent)}
      * <p>
-     * This method has the same behavior as {@link #unregisterNetworkCallback} with respect to
+     * This method has the same behavior as
+     * {@link #unregisterNetworkCallback(android.app.PendingIntent)} with respect to
      * releasing network resources and disconnecting.
      *
      * @param operation A PendingIntent equal (as defined by {@link Intent#filterEquals}) to the
@@ -2982,7 +2984,7 @@
     /**
      * Registers to receive notifications about all networks which satisfy the given
      * {@link NetworkRequest}.  The callbacks will continue to be called until
-     * either the application exits or {@link #unregisterNetworkCallback} is called
+     * either the application exits or link #unregisterNetworkCallback(NetworkCallback)} is called.
      * <p>This method requires the caller to hold the permission
      * {@link android.Manifest.permission#ACCESS_NETWORK_STATE}.
      *
@@ -3035,9 +3037,9 @@
     }
 
     /**
-     * Registers to receive notifications about whichever network currently satisfies the
-     * system default {@link NetworkRequest}.  The callbacks will continue to be called until
-     * either the application exits or {@link #unregisterNetworkCallback} is called
+     * Registers to receive notifications about changes in the system default network. The callbacks
+     * will continue to be called until either the application exits or
+     * {@link #unregisterNetworkCallback(NetworkCallback)} is called.
      * <p>This method requires the caller to hold the permission
      * {@link android.Manifest.permission#ACCESS_NETWORK_STATE}.
      *
@@ -3060,8 +3062,9 @@
      * is accepted by ConnectivityService. Once accepted, ConnectivityService will poll underlying
      * network connection for updated bandwidth information. The caller will be notified via
      * {@link ConnectivityManager.NetworkCallback} if there is an update. Notice that this
-     * method assumes that the caller has previously called {@link #registerNetworkCallback} to
-     * listen for network changes.
+     * method assumes that the caller has previously called
+     * {@link #registerNetworkCallback(NetworkRequest, NetworkCallback)} to listen for network
+     * changes.
      *
      * @param network {@link Network} specifying which network you're interested.
      * @return {@code true} on success, {@code false} if the {@link Network} is no longer valid.
@@ -3076,8 +3079,9 @@
 
     /**
      * Unregisters callbacks about and possibly releases networks originating from
-     * {@link #requestNetwork(NetworkRequest, NetworkCallback)} and {@link #registerNetworkCallback}
-     * calls.  If the given {@code NetworkCallback} had previously been used with
+     * {@link #requestNetwork(NetworkRequest, NetworkCallback)} and
+     * {@link #registerNetworkCallback(NetworkRequest, NetworkCallback)} calls.
+     * If the given {@code NetworkCallback} had previously been used with
      * {@code #requestNetwork}, any networks that had been connected to only to satisfy that request
      * will be disconnected.
      *
diff --git a/core/java/android/net/ConnectivityMetricsEvent.java b/core/java/android/net/ConnectivityMetricsEvent.java
index b5d67d3..5153ba9 100644
--- a/core/java/android/net/ConnectivityMetricsEvent.java
+++ b/core/java/android/net/ConnectivityMetricsEvent.java
@@ -16,10 +16,12 @@
 
 package android.net;
 
+import android.annotation.SystemApi;
 import android.os.Parcel;
 import android.os.Parcelable;
 
 /** {@hide} */
+@SystemApi
 public final class ConnectivityMetricsEvent implements Parcelable {
 
     /**  The time when this event was collected, as returned by System.currentTimeMillis(). */
@@ -80,12 +82,13 @@
     }
 
     /** {@hide} */
-    public static class Reference implements Parcelable {
+    @SystemApi
+    public final static class Reference implements Parcelable {
 
-        public long value;
+        private long mValue;
 
         public Reference(long ref) {
-            this.value = ref;
+            this.mValue = ref;
         }
 
         /** Implement the Parcelable interface */
@@ -109,11 +112,19 @@
         /** Implement the Parcelable interface */
         @Override
         public void writeToParcel(Parcel dest, int flags) {
-            dest.writeLong(value);
+            dest.writeLong(mValue);
         }
 
         public void readFromParcel(Parcel in) {
-            value = in.readLong();
+            mValue = in.readLong();
+        }
+
+        public long getValue() {
+            return mValue;
+        }
+
+        public void setValue(long val) {
+            mValue = val;
         }
     }
 }
diff --git a/core/java/android/net/ConnectivityMetricsLogger.java b/core/java/android/net/ConnectivityMetricsLogger.java
index eafb8ac..d8cdde9 100644
--- a/core/java/android/net/ConnectivityMetricsLogger.java
+++ b/core/java/android/net/ConnectivityMetricsLogger.java
@@ -15,6 +15,8 @@
  */
 package android.net;
 
+import android.annotation.SystemApi;
+import android.app.PendingIntent;
 import android.os.Bundle;
 import android.os.Parcelable;
 import android.os.RemoteException;
@@ -22,6 +24,7 @@
 import android.util.Log;
 
 /** {@hide} */
+@SystemApi
 public class ConnectivityMetricsLogger {
     private static String TAG = "ConnectivityMetricsLogger";
     private static final boolean DBG = true;
@@ -104,4 +107,46 @@
             Log.e(TAG, "Error logging event " + e.getMessage());
         }
     }
+
+    /**
+     * Retrieve events
+     *
+     * @param reference of the last event previously returned. The function will return
+     *                  events following it.
+     *                  If 0 then all events will be returned.
+     *                  After the function call it will contain reference of the
+     *                  last returned event.
+     * @return events
+     */
+    public ConnectivityMetricsEvent[] getEvents(ConnectivityMetricsEvent.Reference reference) {
+        try {
+            return mService.getEvents(reference);
+        } catch (RemoteException ex) {
+            Log.e(TAG, "IConnectivityMetricsLogger.getEvents: " + ex);
+            return null;
+        }
+    }
+
+    /**
+     * Register PendingIntent which will be sent when new events are ready to be retrieved.
+     */
+    public boolean register(PendingIntent newEventsIntent) {
+        try {
+            return mService.register(newEventsIntent);
+        } catch (RemoteException ex) {
+            Log.e(TAG, "IConnectivityMetricsLogger.register: " + ex);
+            return false;
+        }
+    }
+
+    public boolean unregister(PendingIntent newEventsIntent) {
+        try {
+            mService.unregister(newEventsIntent);
+        } catch (RemoteException ex) {
+            Log.e(TAG, "IConnectivityMetricsLogger.unregister: " + ex);
+            return false;
+        }
+
+        return true;
+    }
 }
diff --git a/core/java/android/net/INetworkPolicyListener.aidl b/core/java/android/net/INetworkPolicyListener.aidl
index 31dc965a..812f1fe 100644
--- a/core/java/android/net/INetworkPolicyListener.aidl
+++ b/core/java/android/net/INetworkPolicyListener.aidl
@@ -22,5 +22,6 @@
     void onUidRulesChanged(int uid, int uidRules);
     void onMeteredIfacesChanged(in String[] meteredIfaces);
     void onRestrictBackgroundChanged(boolean restrictBackground);
+    void onRestrictBackgroundWhitelistChanged(int uid, boolean whitelisted);
 
 }
diff --git a/core/java/android/net/NetworkInfo.java b/core/java/android/net/NetworkInfo.java
index af7a465..b6c5c6f 100644
--- a/core/java/android/net/NetworkInfo.java
+++ b/core/java/android/net/NetworkInfo.java
@@ -119,12 +119,9 @@
     private String mReason;
     private String mExtraInfo;
     private boolean mIsFailover;
-    private boolean mIsRoaming;
-
-    /**
-     * Indicates whether network connectivity is possible:
-     */
     private boolean mIsAvailable;
+    private boolean mIsRoaming;
+    private boolean mIsMetered;
 
     /**
      * @hide
@@ -139,8 +136,6 @@
         mSubtypeName = subtypeName;
         setDetailedState(DetailedState.IDLE, null, null);
         mState = State.UNKNOWN;
-        mIsAvailable = false; // until we're told otherwise, assume unavailable
-        mIsRoaming = false;
     }
 
     /** {@hide} */
@@ -156,8 +151,9 @@
                 mReason = source.mReason;
                 mExtraInfo = source.mExtraInfo;
                 mIsFailover = source.mIsFailover;
-                mIsRoaming = source.mIsRoaming;
                 mIsAvailable = source.mIsAvailable;
+                mIsRoaming = source.mIsRoaming;
+                mIsMetered = source.mIsMetered;
             }
         }
     }
@@ -330,6 +326,30 @@
     }
 
     /**
+     * Returns if this network is metered. A network is classified as metered
+     * when the user is sensitive to heavy data usage on that connection due to
+     * monetary costs, data limitations or battery/performance issues. You
+     * should check this before doing large data transfers, and warn the user or
+     * delay the operation until another network is available.
+     *
+     * @return {@code true} if large transfers should be avoided, otherwise
+     *         {@code false}.
+     */
+    public boolean isMetered() {
+        synchronized (this) {
+            return mIsMetered;
+        }
+    }
+
+    /** {@hide} */
+    @VisibleForTesting
+    public void setMetered(boolean isMetered) {
+        synchronized (this) {
+            mIsMetered = isMetered;
+        }
+    }
+
+    /**
      * Reports the current coarse-grained state of the network.
      * @return the coarse-grained state
      */
@@ -409,26 +429,21 @@
             append("], state: ").append(mState).append("/").append(mDetailedState).
             append(", reason: ").append(mReason == null ? "(unspecified)" : mReason).
             append(", extra: ").append(mExtraInfo == null ? "(none)" : mExtraInfo).
-            append(", roaming: ").append(mIsRoaming).
             append(", failover: ").append(mIsFailover).
-            append(", isAvailable: ").append(mIsAvailable).
+            append(", available: ").append(mIsAvailable).
+            append(", roaming: ").append(mIsRoaming).
+            append(", metered: ").append(mIsMetered).
             append("]");
             return builder.toString();
         }
     }
 
-    /**
-     * Implement the Parcelable interface
-     * @hide
-     */
+    @Override
     public int describeContents() {
         return 0;
     }
 
-    /**
-     * Implement the Parcelable interface.
-     * @hide
-     */
+    @Override
     public void writeToParcel(Parcel dest, int flags) {
         synchronized (this) {
             dest.writeInt(mNetworkType);
@@ -440,35 +455,34 @@
             dest.writeInt(mIsFailover ? 1 : 0);
             dest.writeInt(mIsAvailable ? 1 : 0);
             dest.writeInt(mIsRoaming ? 1 : 0);
+            dest.writeInt(mIsMetered ? 1 : 0);
             dest.writeString(mReason);
             dest.writeString(mExtraInfo);
         }
     }
 
-    /**
-     * Implement the Parcelable interface.
-     * @hide
-     */
-    public static final Creator<NetworkInfo> CREATOR =
-        new Creator<NetworkInfo>() {
-            public NetworkInfo createFromParcel(Parcel in) {
-                int netType = in.readInt();
-                int subtype = in.readInt();
-                String typeName = in.readString();
-                String subtypeName = in.readString();
-                NetworkInfo netInfo = new NetworkInfo(netType, subtype, typeName, subtypeName);
-                netInfo.mState = State.valueOf(in.readString());
-                netInfo.mDetailedState = DetailedState.valueOf(in.readString());
-                netInfo.mIsFailover = in.readInt() != 0;
-                netInfo.mIsAvailable = in.readInt() != 0;
-                netInfo.mIsRoaming = in.readInt() != 0;
-                netInfo.mReason = in.readString();
-                netInfo.mExtraInfo = in.readString();
-                return netInfo;
-            }
+    public static final Creator<NetworkInfo> CREATOR = new Creator<NetworkInfo>() {
+        @Override
+        public NetworkInfo createFromParcel(Parcel in) {
+            int netType = in.readInt();
+            int subtype = in.readInt();
+            String typeName = in.readString();
+            String subtypeName = in.readString();
+            NetworkInfo netInfo = new NetworkInfo(netType, subtype, typeName, subtypeName);
+            netInfo.mState = State.valueOf(in.readString());
+            netInfo.mDetailedState = DetailedState.valueOf(in.readString());
+            netInfo.mIsFailover = in.readInt() != 0;
+            netInfo.mIsAvailable = in.readInt() != 0;
+            netInfo.mIsRoaming = in.readInt() != 0;
+            netInfo.mIsMetered = in.readInt() != 0;
+            netInfo.mReason = in.readString();
+            netInfo.mExtraInfo = in.readString();
+            return netInfo;
+        }
 
-            public NetworkInfo[] newArray(int size) {
-                return new NetworkInfo[size];
-            }
-        };
+        @Override
+        public NetworkInfo[] newArray(int size) {
+            return new NetworkInfo[size];
+        }
+    };
 }
diff --git a/core/java/android/net/NetworkState.java b/core/java/android/net/NetworkState.java
index 933287f..95e3802 100644
--- a/core/java/android/net/NetworkState.java
+++ b/core/java/android/net/NetworkState.java
@@ -25,6 +25,7 @@
  * @hide
  */
 public class NetworkState implements Parcelable {
+    public static final NetworkState EMPTY = new NetworkState(null, null, null, null, null, null);
 
     public final NetworkInfo networkInfo;
     public final LinkProperties linkProperties;
diff --git a/core/java/android/net/UidRange.aidl b/core/java/android/net/UidRange.aidl
deleted file mode 100644
index f9be628..0000000
--- a/core/java/android/net/UidRange.aidl
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.net;
-
-/**
- * An inclusive range of UIDs.
- *
- * {@hide}
- */
-parcelable UidRange;
diff --git a/core/java/android/net/metrics/CaptivePortalCheckResultEvent.java b/core/java/android/net/metrics/CaptivePortalCheckResultEvent.java
deleted file mode 100644
index 2239a25..0000000
--- a/core/java/android/net/metrics/CaptivePortalCheckResultEvent.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.net.metrics;
-
-import android.os.Parcel;
-import android.os.Parcelable;
-
-/**
- * {@hide}
- */
-public class CaptivePortalCheckResultEvent extends IpConnectivityEvent implements Parcelable {
-    public static final String TAG = "CaptivePortalCheckResultEvent";
-
-    private int mNetId;
-    private int mResult;
-
-    public CaptivePortalCheckResultEvent(int netId, int result) {
-        mNetId = netId;
-        mResult = result;
-    }
-
-    public CaptivePortalCheckResultEvent(Parcel in) {
-        mNetId = in.readInt();
-        mResult = in.readInt();
-    }
-
-    public void writeToParcel(Parcel out, int flags) {
-        out.writeInt(mNetId);
-        out.writeInt(mResult);
-    }
-
-    public static final Parcelable.Creator<CaptivePortalCheckResultEvent> CREATOR
-        = new Parcelable.Creator<CaptivePortalCheckResultEvent>() {
-            public CaptivePortalCheckResultEvent createFromParcel(Parcel in) {
-                return new CaptivePortalCheckResultEvent(in);
-            }
-
-            public CaptivePortalCheckResultEvent[] newArray(int size) {
-                return new CaptivePortalCheckResultEvent[size];
-            }
-        };
-
-    public static void logEvent(int netId, int result) {
-        IpConnectivityEvent.logEvent(IpConnectivityEvent.IPCE_NETMON_CHECK_RESULT,
-                new CaptivePortalCheckResultEvent(netId, result));
-    }
-};
diff --git a/core/java/android/net/metrics/CaptivePortalStateChangeEvent.java b/core/java/android/net/metrics/CaptivePortalStateChangeEvent.java
deleted file mode 100644
index 00808c1..0000000
--- a/core/java/android/net/metrics/CaptivePortalStateChangeEvent.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.net.metrics;
-
-import android.os.Parcel;
-import android.os.Parcelable;
-
-/**
- * {@hide}
- */
-public class CaptivePortalStateChangeEvent extends IpConnectivityEvent implements Parcelable {
-    public static final String TAG = "CaptivePortalStateChangeEvent";
-
-    public static final int NETWORK_MONITOR_CONNECTED = 0;
-    public static final int NETWORK_MONITOR_DISCONNECTED = 1;
-    public static final int NETWORK_MONITOR_VALIDATED = 2;
-    private int mState;
-
-    public CaptivePortalStateChangeEvent(int state) {
-        mState = state;
-    }
-
-    public CaptivePortalStateChangeEvent(Parcel in) {
-        mState = in.readInt();
-    }
-
-    public void writeToParcel(Parcel out, int flags) {
-        out.writeInt(mState);
-    }
-
-    public static final Parcelable.Creator<CaptivePortalStateChangeEvent> CREATOR
-        = new Parcelable.Creator<CaptivePortalStateChangeEvent>() {
-        public CaptivePortalStateChangeEvent createFromParcel(Parcel in) {
-            return new CaptivePortalStateChangeEvent(in);
-        }
-
-        public CaptivePortalStateChangeEvent[] newArray(int size) {
-            return new CaptivePortalStateChangeEvent[size];
-        }
-    };
-
-    public static void logEvent(int state) {
-        IpConnectivityEvent.logEvent(IpConnectivityEvent.IPCE_NETMON_STATE_CHANGE,
-                new CaptivePortalStateChangeEvent(state));
-    }
-};
diff --git a/core/java/android/net/metrics/ConnectivityServiceChangeEvent.java b/core/java/android/net/metrics/ConnectivityServiceChangeEvent.java
deleted file mode 100644
index a491ffc..0000000
--- a/core/java/android/net/metrics/ConnectivityServiceChangeEvent.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.net.metrics;
-
-import android.os.Parcel;
-import android.os.Parcelable;
-
-/**
- * {@hide}
- */
-public class ConnectivityServiceChangeEvent extends IpConnectivityEvent implements Parcelable {
-    public static final String TAG = "ConnectivityServiceChangeEvent";
-
-    // The ID of the network that has become the new default or NETID_UNSET if none.
-    private final int mNetId;
-    // The list of transport types of the new default network, for example TRANSPORT_WIFI, as
-    // defined in NetworkCapabilities.java.
-    private final int[] mTransportTypes;
-    // The ID of the network that was the default before or NETID_UNSET if none.
-    private final int mPrevNetId;
-    // Whether the previous network had IPv4/IPv6 connectivity.
-    private final boolean mPrevIPv4;
-    private final boolean mPrevIPv6;
-
-    public ConnectivityServiceChangeEvent(int netId, int[] transportTypes,
-                int prevNetId, boolean prevIPv4, boolean prevIPv6) {
-        mNetId = netId;
-        mTransportTypes = transportTypes;
-        mPrevNetId = prevNetId;
-        mPrevIPv4 = prevIPv4;
-        mPrevIPv6 = prevIPv6;
-    }
-
-    public ConnectivityServiceChangeEvent(Parcel in) {
-        mNetId = in.readInt();
-        mTransportTypes = in.createIntArray();
-        mPrevNetId = in.readInt();
-        mPrevIPv4 = (in.readByte() > 0);
-        mPrevIPv6 = (in.readByte() > 0);
-    }
-
-    public void writeToParcel(Parcel out, int flags) {
-        out.writeInt(mNetId);
-        out.writeIntArray(mTransportTypes);
-        out.writeInt(mPrevNetId);
-        out.writeByte(mPrevIPv4 ? (byte) 1 : (byte) 0);
-        out.writeByte(mPrevIPv6 ? (byte) 1 : (byte) 0);
-    }
-
-    public static final Parcelable.Creator<ConnectivityServiceChangeEvent> CREATOR
-        = new Parcelable.Creator<ConnectivityServiceChangeEvent>() {
-        public ConnectivityServiceChangeEvent createFromParcel(Parcel in) {
-            return new ConnectivityServiceChangeEvent(in);
-        }
-
-        public ConnectivityServiceChangeEvent[] newArray(int size) {
-            return new ConnectivityServiceChangeEvent[size];
-        }
-    };
-
-    public static void logEvent(int netId, int[] transportTypes,
-            int prevNetId, boolean prevIPv4, boolean prevIPv6) {
-        IpConnectivityEvent.logEvent(IpConnectivityEvent.IPCE_CONSRV_DEFAULT_NET_CHANGE,
-                new ConnectivityServiceChangeEvent(
-                        netId, transportTypes, prevNetId, prevIPv4, prevIPv6));
-    }
-};
diff --git a/core/java/android/net/metrics/DefaultNetworkEvent.java b/core/java/android/net/metrics/DefaultNetworkEvent.java
new file mode 100644
index 0000000..f3c357b
--- /dev/null
+++ b/core/java/android/net/metrics/DefaultNetworkEvent.java
@@ -0,0 +1,85 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.net.metrics;
+
+import android.annotation.SystemApi;
+import android.os.Parcel;
+import android.os.Parcelable;
+
+/**
+ * {@hide}
+ */
+@SystemApi
+public final class DefaultNetworkEvent extends IpConnectivityEvent implements Parcelable {
+    // The ID of the network that has become the new default or NETID_UNSET if none.
+    public final int netId;
+    // The list of transport types of the new default network, for example TRANSPORT_WIFI, as
+    // defined in NetworkCapabilities.java.
+    public final int[] transportTypes;
+    // The ID of the network that was the default before or NETID_UNSET if none.
+    public final int prevNetId;
+    // Whether the previous network had IPv4/IPv6 connectivity.
+    public final boolean prevIPv4;
+    public final boolean prevIPv6;
+
+    private DefaultNetworkEvent(int netId, int[] transportTypes,
+                int prevNetId, boolean prevIPv4, boolean prevIPv6) {
+        this.netId = netId;
+        this.transportTypes = transportTypes;
+        this.prevNetId = prevNetId;
+        this.prevIPv4 = prevIPv4;
+        this.prevIPv6 = prevIPv6;
+    }
+
+    private DefaultNetworkEvent(Parcel in) {
+        this.netId = in.readInt();
+        this.transportTypes = in.createIntArray();
+        this.prevNetId = in.readInt();
+        this.prevIPv4 = (in.readByte() > 0);
+        this.prevIPv6 = (in.readByte() > 0);
+    }
+
+    public void writeToParcel(Parcel out, int flags) {
+        out.writeInt(netId);
+        out.writeIntArray(transportTypes);
+        out.writeInt(prevNetId);
+        out.writeByte(prevIPv4 ? (byte) 1 : (byte) 0);
+        out.writeByte(prevIPv6 ? (byte) 1 : (byte) 0);
+    }
+
+    public int describeContents() {
+        return 0;
+    }
+
+    public static final Parcelable.Creator<DefaultNetworkEvent> CREATOR
+        = new Parcelable.Creator<DefaultNetworkEvent>() {
+        public DefaultNetworkEvent createFromParcel(Parcel in) {
+            return new DefaultNetworkEvent(in);
+        }
+
+        public DefaultNetworkEvent[] newArray(int size) {
+            return new DefaultNetworkEvent[size];
+        }
+    };
+
+    public static void logEvent(
+            int netId, int[] transports, int prevNetId, boolean hadIPv4, boolean hadIPv6) {
+        final DefaultNetworkEvent ev =
+                new DefaultNetworkEvent(netId, transports, prevNetId, hadIPv4, hadIPv6);
+        logEvent(IPCE_CONSRV_DEFAULT_NET_CHANGE, ev);
+    }
+};
diff --git a/core/java/android/net/metrics/DhcpClientEvent.java b/core/java/android/net/metrics/DhcpClientEvent.java
index 7b44664..6e295a9 100644
--- a/core/java/android/net/metrics/DhcpClientEvent.java
+++ b/core/java/android/net/metrics/DhcpClientEvent.java
@@ -16,31 +16,35 @@
 
 package android.net.metrics;
 
+import android.annotation.SystemApi;
 import android.os.Parcel;
 import android.os.Parcelable;
 
 /**
  * {@hide}
  */
-public class DhcpClientEvent extends IpConnectivityEvent implements Parcelable {
-    public static final String TAG = "DhcpClientEvent";
+@SystemApi
+public final class DhcpClientEvent extends IpConnectivityEvent implements Parcelable {
+    public final String ifName;
+    public final String msg;
 
-    private String mIfName;
-    private String mMsg;
-
-    public DhcpClientEvent(String ifName, String msg) {
-        mIfName = ifName;
-        mMsg = msg;
+    private DhcpClientEvent(String ifName, String msg) {
+        this.ifName = ifName;
+        this.msg = msg;
     }
 
-    public DhcpClientEvent(Parcel in) {
-        mIfName = in.readString();
-        mMsg = in.readString();
+    private DhcpClientEvent(Parcel in) {
+        this.ifName = in.readString();
+        this.msg = in.readString();
     }
 
     public void writeToParcel(Parcel out, int flags) {
-        out.writeString(mIfName);
-        out.writeString(mMsg);
+        out.writeString(ifName);
+        out.writeString(msg);
+    }
+
+    public int describeContents() {
+        return 0;
     }
 
     public static final Parcelable.Creator<DhcpClientEvent> CREATOR
@@ -54,7 +58,7 @@
         }
     };
 
-    public static void logEvent(int eventType, String ifName, String msg) {
-        IpConnectivityEvent.logEvent(eventType, new DhcpClientEvent(ifName, msg));
+    public static void logStateEvent(String ifName, String state) {
+        logEvent(IPCE_DHCP_STATE_CHANGE, new DhcpClientEvent(ifName, state));
     }
 };
diff --git a/core/java/android/net/metrics/DhcpErrorEvent.java b/core/java/android/net/metrics/DhcpErrorEvent.java
index 3869823..46fdd18 100644
--- a/core/java/android/net/metrics/DhcpErrorEvent.java
+++ b/core/java/android/net/metrics/DhcpErrorEvent.java
@@ -16,15 +16,15 @@
 
 package android.net.metrics;
 
+import android.annotation.SystemApi;
 import android.os.Parcel;
 import android.os.Parcelable;
 
 /**
  * {@hide} Event class used to record error events when parsing DHCP response packets.
  */
-public class DhcpErrorEvent extends IpConnectivityEvent implements Parcelable {
-    public static final String TAG = "DhcpErrorEvent";
-
+@SystemApi
+public final class DhcpErrorEvent extends IpConnectivityEvent implements Parcelable {
     public static final int L2_ERROR   = 1;
     public static final int L3_ERROR   = 2;
     public static final int L4_ERROR   = 3;
@@ -48,7 +48,9 @@
     public static final int DHCP_UNKNOWN_MSG_TYPE      = makeErrorCode(DHCP_ERROR, 5);
 
     public static final int BUFFER_UNDERFLOW           = makeErrorCode(MISC_ERROR, 1);
+    public static final int RECEIVE_ERROR              = makeErrorCode(MISC_ERROR, 2);
 
+    public final String ifName;
     // error code byte format (MSB to LSB):
     // byte 0: error type
     // byte 1: error subtype
@@ -56,18 +58,25 @@
     // byte 3: optional code
     public final int errorCode;
 
-    private DhcpErrorEvent(int errorCode) {
+    private DhcpErrorEvent(String ifName, int errorCode) {
+        this.ifName = ifName;
         this.errorCode = errorCode;
     }
 
     private DhcpErrorEvent(Parcel in) {
+        this.ifName = in.readString();
         this.errorCode = in.readInt();
     }
 
     public void writeToParcel(Parcel out, int flags) {
+        out.writeString(ifName);
         out.writeInt(errorCode);
     }
 
+    public int describeContents() {
+        return 0;
+    }
+
     public static final Parcelable.Creator<DhcpErrorEvent> CREATOR
         = new Parcelable.Creator<DhcpErrorEvent>() {
         public DhcpErrorEvent createFromParcel(Parcel in) {
@@ -79,12 +88,16 @@
         }
     };
 
-    public static void logEvent(int errorCode) {
-        IpConnectivityEvent.logEvent(IPCE_DHCP_PARSE_ERROR, new DhcpErrorEvent(errorCode));
+    public static void logParseError(String ifName, int errorCode) {
+        logEvent(IPCE_DHCP_PARSE_ERROR, new DhcpErrorEvent(ifName, errorCode));
     }
 
-    public static void logEvent(int errorCode, int option) {
-        logEvent((0xFFFF0000 & errorCode) | (0xFF & option));
+    public static void logReceiveError(String ifName) {
+        logEvent(IPCE_DHCP_RECV_ERROR, new DhcpErrorEvent(ifName, RECEIVE_ERROR));
+    }
+
+    public static int errorCodeWithOption(int errorCode, int option) {
+        return (0xFFFF0000 & errorCode) | (0xFF & option);
     }
 
     private static int makeErrorCode(int type, int subtype) {
diff --git a/core/java/android/net/metrics/DnsEvent.java b/core/java/android/net/metrics/DnsEvent.java
new file mode 100644
index 0000000..bf6e95c
--- /dev/null
+++ b/core/java/android/net/metrics/DnsEvent.java
@@ -0,0 +1,82 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.net.metrics;
+
+import android.annotation.SystemApi;
+import android.os.Parcel;
+import android.os.Parcelable;
+
+/**
+ * {@hide}
+ */
+@SystemApi
+final public class DnsEvent extends IpConnectivityEvent implements Parcelable {
+    public final int netId;
+
+    // The event type is currently only 1 or 2, so we store it as a byte.
+    public final byte[] eventTypes;
+    // Current getaddrinfo codes go from 1 to EAI_MAX = 15. gethostbyname returns errno, but there
+    // are fewer than 255 errno values. So we store the result code in a byte as well.
+    public final byte[] returnCodes;
+    // The latency is an integer because a) short arrays aren't parcelable and b) a short can only
+    // store a maximum latency of 32757 or 65535 ms, which is too short for pathologically slow
+    // queries.
+    public final int[] latenciesMs;
+
+    private DnsEvent(int netId, byte[] eventTypes, byte[] returnCodes, int[] latenciesMs) {
+        this.netId = netId;
+        this.eventTypes = eventTypes;
+        this.returnCodes = returnCodes;
+        this.latenciesMs = latenciesMs;
+    }
+
+    private DnsEvent(Parcel in) {
+        this.netId = in.readInt();
+        this.eventTypes = in.createByteArray();
+        this.returnCodes = in.createByteArray();
+        this.latenciesMs = in.createIntArray();
+    }
+
+    @Override
+    public void writeToParcel(Parcel out, int flags) {
+        out.writeInt(netId);
+        out.writeByteArray(eventTypes);
+        out.writeByteArray(returnCodes);
+        out.writeIntArray(latenciesMs);
+    }
+
+    public int describeContents() {
+        return 0;
+    }
+
+    public static final Parcelable.Creator<DnsEvent> CREATOR = new Parcelable.Creator<DnsEvent>() {
+        @Override
+        public DnsEvent createFromParcel(Parcel in) {
+            return new DnsEvent(in);
+        }
+
+        @Override
+        public DnsEvent[] newArray(int size) {
+            return new DnsEvent[size];
+        }
+    };
+
+    public static void logEvent(
+            int netId, byte[] eventTypes, byte[] returnCodes, int[] latenciesMs) {
+        logEvent(IPCE_DNS_LOOKUPS, new DnsEvent(netId, eventTypes, returnCodes, latenciesMs));
+    }
+}
diff --git a/core/java/android/net/metrics/IpConnectivityEvent.java b/core/java/android/net/metrics/IpConnectivityEvent.java
index 59c1cfe..0b5e354 100644
--- a/core/java/android/net/metrics/IpConnectivityEvent.java
+++ b/core/java/android/net/metrics/IpConnectivityEvent.java
@@ -16,6 +16,7 @@
 
 package android.net.metrics;
 
+import android.annotation.SystemApi;
 import android.net.ConnectivityMetricsLogger;
 import android.os.Parcel;
 import android.os.Parcelable;
@@ -23,45 +24,50 @@
 /**
  * {@hide}
  */
-public class IpConnectivityEvent implements Parcelable {
-    // IPRM = IpReachabilityMonitor
-    // DHCP = DhcpClient
+@SystemApi
+public abstract class IpConnectivityEvent {
+    // IPRM   = IpReachabilityMonitor
+    // DHCP   = DhcpClient
     // NETMON = NetworkMonitorEvent
     // CONSRV = ConnectivityServiceEvent
-    // IPMGR = IpManager
-    public static final String TAG = "IpConnectivityEvent";
-    public static final int IPCE_IPRM_BASE = 0*1024;
-    public static final int IPCE_DHCP_BASE = 1*1024;
-    public static final int IPCE_NETMON_BASE = 2*1024;
-    public static final int IPCE_CONSRV_BASE = 3*1024;
-    public static final int IPCE_IPMGR_BASE = 4*1024;
+    // IPMGR  = IpManager
+    // DNS    = DnsEvent
+    public static final int IPCE_IPRM_BASE                 = 0 * 1024;
+    public static final int IPCE_DHCP_BASE                 = 1 * 1024;
+    public static final int IPCE_NETMON_BASE               = 2 * 1024;
+    public static final int IPCE_CONSRV_BASE               = 3 * 1024;
+    public static final int IPCE_IPMGR_BASE                = 4 * 1024;
+    public static final int IPCE_DNS_BASE                  = 5 * 1024;
 
-    public static final int IPCE_IPRM_PROBE_RESULT = IPCE_IPRM_BASE + 0;
-    public static final int IPCE_IPRM_MESSAGE_RECEIVED = IPCE_IPRM_BASE + 1;
-    public static final int IPCE_IPRM_REACHABILITY_LOST = IPCE_IPRM_BASE + 2;
-    public static final int IPCE_DHCP_RECV_ERROR = IPCE_DHCP_BASE + 0;
-    public static final int IPCE_DHCP_PARSE_ERROR = IPCE_DHCP_BASE + 1;
-    public static final int IPCE_DHCP_TIMEOUT = IPCE_DHCP_BASE + 2;
-    public static final int IPCE_DHCP_STATE_CHANGE = IPCE_DHCP_BASE + 3;
-    public static final int IPCE_NETMON_STATE_CHANGE = IPCE_NETMON_BASE + 0;
-    public static final int IPCE_NETMON_CHECK_RESULT = IPCE_NETMON_BASE + 1;
+    public static final int IPCE_IPRM_PROBE_STARTED        = IPCE_IPRM_BASE + 0;
+    public static final int IPCE_IPRM_PROBE_FAILURE        = IPCE_IPRM_BASE + 1;
+    public static final int IPCE_IPRM_NUD_FAILED           = IPCE_IPRM_BASE + 2;
+    public static final int IPCE_IPRM_PROVISIONING_LOST    = IPCE_IPRM_BASE + 3;
+
+    public static final int IPCE_DHCP_RECV_ERROR           = IPCE_DHCP_BASE + 0;
+    public static final int IPCE_DHCP_PARSE_ERROR          = IPCE_DHCP_BASE + 1;
+    public static final int IPCE_DHCP_STATE_CHANGE         = IPCE_DHCP_BASE + 2;
+
+    public static final int IPCE_NETMON_STATE_CHANGE       = IPCE_NETMON_BASE + 0;
+    public static final int IPCE_NETMON_CHECK_RESULT       = IPCE_NETMON_BASE + 1;
+    public static final int IPCE_NETMON_VALIDATED          = IPCE_NETMON_BASE + 2;
+    public static final int IPCE_NETMON_PORTAL_PROBE       = IPCE_NETMON_BASE + 3;
+    public static final int IPCE_NETMON_CAPPORT_FOUND      = IPCE_NETMON_BASE + 4;
+
     public static final int IPCE_CONSRV_DEFAULT_NET_CHANGE = IPCE_CONSRV_BASE + 0;
-    public static final int IPCE_IPMGR_PROVISIONING_OK = IPCE_IPMGR_BASE + 0;
-    public static final int IPCE_IPMGR_PROVISIONING_FAIL = IPCE_IPMGR_BASE + 1;
-    public static final int IPCE_IPMGR_COMPLETE_LIFECYCLE = IPCE_IPMGR_BASE + 2;
+
+    public static final int IPCE_IPMGR_PROVISIONING_OK     = IPCE_IPMGR_BASE + 0;
+    public static final int IPCE_IPMGR_PROVISIONING_FAIL   = IPCE_IPMGR_BASE + 1;
+    public static final int IPCE_IPMGR_COMPLETE_LIFECYCLE  = IPCE_IPMGR_BASE + 2;
+
+    public static final int IPCE_DNS_LOOKUPS               = IPCE_DNS_BASE + 0;
 
     private static ConnectivityMetricsLogger mMetricsLogger = new ConnectivityMetricsLogger();
 
-    public int describeContents() {
-        return 0;
-    }
-
-    public void writeToParcel(Parcel out, int flags) {
-    }
-
-    public static void logEvent(int tag, IpConnectivityEvent event) {
-        long timestamp = System.currentTimeMillis();
-        mMetricsLogger.logEvent(timestamp, ConnectivityMetricsLogger.COMPONENT_TAG_CONNECTIVITY,
-                tag, event);
+    public static <T extends IpConnectivityEvent & Parcelable> void logEvent(int tag, T event) {
+        final long timestamp = System.currentTimeMillis();
+        final int componentTag = ConnectivityMetricsLogger.COMPONENT_TAG_CONNECTIVITY;
+        // TODO: consider using different component for DNS event.
+        mMetricsLogger.logEvent(timestamp, componentTag, tag, event);
     }
 };
diff --git a/core/java/android/net/metrics/IpManagerEvent.java b/core/java/android/net/metrics/IpManagerEvent.java
index 6328ccb..5bbcbf1 100644
--- a/core/java/android/net/metrics/IpManagerEvent.java
+++ b/core/java/android/net/metrics/IpManagerEvent.java
@@ -16,29 +16,35 @@
 
 package android.net.metrics;
 
+import android.annotation.SystemApi;
 import android.os.Parcel;
 import android.os.Parcelable;
 
 /**
  * {@hide}
  */
-public class IpManagerEvent extends IpConnectivityEvent implements Parcelable {
-    private String mIfName;
-    private long mDurationMs;
+@SystemApi
+public final class IpManagerEvent extends IpConnectivityEvent implements Parcelable {
+    public final String ifName;
+    public final long durationMs;
 
-    public IpManagerEvent(String ifName, long duration) {
-        mIfName = ifName;
-        mDurationMs = duration;
+    private IpManagerEvent(String ifName, long duration) {
+        this.ifName = ifName;
+        this.durationMs = duration;
     }
 
-    public IpManagerEvent(Parcel in) {
-        mIfName = in.readString();
-        mDurationMs = in.readLong();
+    private IpManagerEvent(Parcel in) {
+        this.ifName = in.readString();
+        this.durationMs = in.readLong();
     }
 
     public void writeToParcel(Parcel out, int flags) {
-        out.writeString(mIfName);
-        out.writeLong(mDurationMs);
+        out.writeString(ifName);
+        out.writeLong(durationMs);
+    }
+
+    public int describeContents() {
+        return 0;
     }
 
     public static final Parcelable.Creator<IpManagerEvent> CREATOR
@@ -53,6 +59,6 @@
     };
 
     public static void logEvent(int eventType, String ifName, long durationMs) {
-        IpConnectivityEvent.logEvent(eventType, new IpManagerEvent(ifName, durationMs));
+        logEvent(eventType, new IpManagerEvent(ifName, durationMs));
     }
 };
diff --git a/core/java/android/net/metrics/IpReachabilityEvent.java b/core/java/android/net/metrics/IpReachabilityEvent.java
new file mode 100644
index 0000000..73dcb94
--- /dev/null
+++ b/core/java/android/net/metrics/IpReachabilityEvent.java
@@ -0,0 +1,84 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.net.metrics;
+
+import android.annotation.SystemApi;
+import android.os.Parcel;
+import android.os.Parcelable;
+
+/**
+ * {@hide}
+ */
+@SystemApi
+public final class IpReachabilityEvent extends IpConnectivityEvent implements Parcelable {
+
+    public static final int PROBE             = 1 << 8;
+    public static final int NUD_FAILED        = 2 << 8;
+    public static final int PROVISIONING_LOST = 3 << 8;
+
+    public final String ifName;
+    // eventType byte format (MSB to LSB):
+    // byte 0: unused
+    // byte 1: unused
+    // byte 2: type of event: PROBE, NUD_FAILED, PROVISIONING_LOST
+    // byte 3: kernel errno from RTNetlink or IpReachabilityMonitor
+    public final int eventType;
+
+    private IpReachabilityEvent(String ifName, int eventType) {
+        this.ifName = ifName;
+        this.eventType = eventType;
+    }
+
+    private IpReachabilityEvent(Parcel in) {
+        this.ifName = in.readString();
+        this.eventType = in.readInt();
+    }
+
+    public void writeToParcel(Parcel out, int flags) {
+        out.writeString(ifName);
+        out.writeInt(eventType);
+    }
+
+    public int describeContents() {
+        return 0;
+    }
+
+    public static final Parcelable.Creator<IpReachabilityEvent> CREATOR
+        = new Parcelable.Creator<IpReachabilityEvent>() {
+        public IpReachabilityEvent createFromParcel(Parcel in) {
+            return new IpReachabilityEvent(in);
+        }
+
+        public IpReachabilityEvent[] newArray(int size) {
+            return new IpReachabilityEvent[size];
+        }
+    };
+
+    public static void logProbeEvent(String ifName, int nlErrorCode) {
+        final int tag = (nlErrorCode == 0) ? IPCE_IPRM_PROBE_STARTED : IPCE_IPRM_PROBE_FAILURE;
+        final int eventType = PROBE | (nlErrorCode & 0xFF);
+        logEvent(tag, new IpReachabilityEvent(ifName, eventType));
+    }
+
+    public static void logNudFailed(String ifName) {
+        logEvent(IPCE_IPRM_NUD_FAILED, new IpReachabilityEvent(ifName, NUD_FAILED));
+    }
+
+    public static void logProvisioningLost(String ifName) {
+        logEvent(IPCE_IPRM_PROVISIONING_LOST, new IpReachabilityEvent(ifName, PROVISIONING_LOST));
+    }
+};
diff --git a/core/java/android/net/metrics/IpReachabilityMonitorLostEvent.java b/core/java/android/net/metrics/IpReachabilityMonitorLostEvent.java
deleted file mode 100644
index 0f14210..0000000
--- a/core/java/android/net/metrics/IpReachabilityMonitorLostEvent.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.net.metrics;
-
-import android.os.Parcel;
-import android.os.Parcelable;
-
-/**
- * {@hide}
- */
-public class IpReachabilityMonitorLostEvent extends IpConnectivityEvent
-        implements Parcelable {
-    private String mIfName;
-
-    public IpReachabilityMonitorLostEvent(String ifName) {
-        mIfName = ifName;
-    }
-
-    public IpReachabilityMonitorLostEvent(Parcel in) {
-        mIfName = in.readString();
-    }
-
-    public void writeToParcel(Parcel out, int flags) {
-        out.writeString(mIfName);
-    }
-
-    public static final Parcelable.Creator<IpReachabilityMonitorLostEvent> CREATOR
-        = new Parcelable.Creator<IpReachabilityMonitorLostEvent>() {
-        public IpReachabilityMonitorLostEvent createFromParcel(Parcel in) {
-            return new IpReachabilityMonitorLostEvent(in);
-        }
-
-        public IpReachabilityMonitorLostEvent[] newArray(int size) {
-            return new IpReachabilityMonitorLostEvent[size];
-        }
-    };
-
-    public static void logEvent(String ifName) {
-        IpConnectivityEvent.logEvent(IpConnectivityEvent.IPCE_IPRM_REACHABILITY_LOST,
-                new IpReachabilityMonitorLostEvent(ifName));
-    }
-};
diff --git a/core/java/android/net/metrics/IpReachabilityMonitorMessageEvent.java b/core/java/android/net/metrics/IpReachabilityMonitorMessageEvent.java
deleted file mode 100644
index e71b0be..0000000
--- a/core/java/android/net/metrics/IpReachabilityMonitorMessageEvent.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.net.metrics;
-
-import android.os.Parcel;
-import android.os.Parcelable;
-
-/**
- * {@hide}
- */
-public class IpReachabilityMonitorMessageEvent extends IpConnectivityEvent
-    implements Parcelable {
-    public static final String TAG = "IpReachabilityMonitorMessageEvent";
-
-    private String mIfName;
-    private String mDestination;
-    private int mMsgType;
-    private int mNudState;
-
-    public IpReachabilityMonitorMessageEvent(String ifName, String destination, int msgType,
-            int nudState) {
-        mIfName = ifName;
-        mDestination = destination;
-        mMsgType = msgType;
-        mNudState = nudState;
-    }
-
-    public IpReachabilityMonitorMessageEvent(Parcel in) {
-        mIfName = in.readString();
-        mDestination = in.readString();
-        mMsgType = in.readInt();
-        mNudState = in.readInt();
-    }
-
-    public void writeToParcel(Parcel out, int flags) {
-        out.writeString(mIfName);
-        out.writeString(mDestination);
-        out.writeInt(mMsgType);
-        out.writeInt(mNudState);
-    }
-
-    public static final Parcelable.Creator<IpReachabilityMonitorMessageEvent> CREATOR
-        = new Parcelable.Creator<IpReachabilityMonitorMessageEvent>() {
-        public IpReachabilityMonitorMessageEvent createFromParcel(Parcel in) {
-            return new IpReachabilityMonitorMessageEvent(in);
-        }
-
-        public IpReachabilityMonitorMessageEvent[] newArray(int size) {
-            return new IpReachabilityMonitorMessageEvent[size];
-        }
-    };
-
-    public static void logEvent(String ifName, String destination, int msgType, int nudState) {
-        IpConnectivityEvent.logEvent(IpConnectivityEvent.IPCE_IPRM_MESSAGE_RECEIVED,
-                new IpReachabilityMonitorMessageEvent(ifName, destination, msgType, nudState));
-    }
-};
diff --git a/core/java/android/net/metrics/IpReachabilityMonitorProbeEvent.java b/core/java/android/net/metrics/IpReachabilityMonitorProbeEvent.java
deleted file mode 100644
index 182b778..0000000
--- a/core/java/android/net/metrics/IpReachabilityMonitorProbeEvent.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.net.metrics;
-
-import android.os.Parcel;
-import android.os.Parcelable;
-
-/**
- * {@hide}
- */
-public class IpReachabilityMonitorProbeEvent extends IpConnectivityEvent
-    implements Parcelable {
-    public static final String TAG = "IpReachabilityMonitorProbeEvent";
-
-    private String mIfName;
-    private String mDestination;
-    private boolean mSuccess;
-
-    public IpReachabilityMonitorProbeEvent(String ifName, String destination, boolean success) {
-        mIfName = ifName;
-        mDestination = destination;
-        mSuccess = success;
-    }
-
-    public IpReachabilityMonitorProbeEvent(Parcel in) {
-        mIfName = in.readString();
-        mDestination = in.readString();
-        mSuccess = in.readByte() > 0 ? true : false;
-    }
-
-    public void writeToParcel(Parcel out, int flags) {
-        out.writeString(mIfName);
-        out.writeString(mDestination);
-        out.writeByte((byte)(mSuccess ? 1 : 0));
-    }
-
-    public static final Parcelable.Creator<IpReachabilityMonitorProbeEvent> CREATOR
-        = new Parcelable.Creator<IpReachabilityMonitorProbeEvent>() {
-        public IpReachabilityMonitorProbeEvent createFromParcel(Parcel in) {
-            return new IpReachabilityMonitorProbeEvent(in);
-        }
-
-        public IpReachabilityMonitorProbeEvent[] newArray(int size) {
-            return new IpReachabilityMonitorProbeEvent[size];
-        }
-    };
-
-    public static void logEvent(String ifName, String destination, boolean success) {
-        IpConnectivityEvent.logEvent(IpConnectivityEvent.IPCE_IPRM_PROBE_RESULT,
-                new IpReachabilityMonitorProbeEvent(ifName, destination, success));
-    }
-};
diff --git a/core/java/android/net/metrics/NetworkEvent.java b/core/java/android/net/metrics/NetworkEvent.java
new file mode 100644
index 0000000..b15dcee
--- /dev/null
+++ b/core/java/android/net/metrics/NetworkEvent.java
@@ -0,0 +1,86 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.net.metrics;
+
+import android.annotation.SystemApi;
+import android.os.Parcel;
+import android.os.Parcelable;
+
+/**
+ * {@hide}
+ */
+@SystemApi
+public final class NetworkEvent extends IpConnectivityEvent implements Parcelable {
+
+    public static final int NETWORK_CONNECTED            = 1;
+    public static final int NETWORK_VALIDATED            = 2;
+    public static final int NETWORK_VALIDATION_FAILED    = 3;
+    public static final int NETWORK_CAPTIVE_PORTAL_FOUND = 4;
+    public static final int NETWORK_LINGER               = 5;
+    public static final int NETWORK_UNLINGER             = 6;
+    public static final int NETWORK_DISCONNECTED         = 7;
+
+    public final int netId;
+    public final int eventType;
+    public final long durationMs;
+
+    private NetworkEvent(int netId, int eventType, long durationMs) {
+        this.netId = netId;
+        this.eventType = eventType;
+        this.durationMs = durationMs;
+    }
+
+    private NetworkEvent(Parcel in) {
+        netId = in.readInt();
+        eventType = in.readInt();
+        durationMs = in.readLong();
+    }
+
+    public void writeToParcel(Parcel out, int flags) {
+        out.writeInt(netId);
+        out.writeInt(eventType);
+        out.writeLong(durationMs);
+    }
+
+    public int describeContents() {
+        return 0;
+    }
+
+    public static final Parcelable.Creator<NetworkEvent> CREATOR
+        = new Parcelable.Creator<NetworkEvent>() {
+        public NetworkEvent createFromParcel(Parcel in) {
+            return new NetworkEvent(in);
+        }
+
+        public NetworkEvent[] newArray(int size) {
+            return new NetworkEvent[size];
+        }
+    };
+
+    public static void logEvent(int netId, int eventType) {
+        logEvent(IPCE_NETMON_STATE_CHANGE, new NetworkEvent(netId, eventType, 0));
+    }
+
+    public static void logValidated(int netId, long durationMs) {
+        logEvent(IPCE_NETMON_VALIDATED, new NetworkEvent(netId, NETWORK_VALIDATED, durationMs));
+    }
+
+    public static void logCaptivePortalFound(int netId, long durationMs) {
+        final NetworkEvent ev = new NetworkEvent(netId, NETWORK_CAPTIVE_PORTAL_FOUND, durationMs);
+        logEvent(IPCE_NETMON_CAPPORT_FOUND, ev);
+    }
+};
diff --git a/core/java/android/net/metrics/ValidationProbeEvent.java b/core/java/android/net/metrics/ValidationProbeEvent.java
new file mode 100644
index 0000000..0a524c6
--- /dev/null
+++ b/core/java/android/net/metrics/ValidationProbeEvent.java
@@ -0,0 +1,77 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.net.metrics;
+
+import android.annotation.SystemApi;
+import android.os.Parcel;
+import android.os.Parcelable;
+
+/**
+ * {@hide}
+ */
+@SystemApi
+public final class ValidationProbeEvent extends IpConnectivityEvent implements Parcelable {
+
+    public static final int PROBE_HTTP  = 0;
+    public static final int PROBE_HTTPS = 1;
+
+    public final int netId;
+    public final long durationMs;
+    public final int probeType;
+    public final int returnCode;
+
+    private ValidationProbeEvent(int netId, long durationMs, int probeType, int returnCode) {
+        this.netId = netId;
+        this.durationMs = durationMs;
+        this.probeType = probeType;
+        this.returnCode = returnCode;
+    }
+
+    private ValidationProbeEvent(Parcel in) {
+        netId = in.readInt();
+        durationMs = in.readLong();
+        probeType = in.readInt();
+        returnCode = in.readInt();
+    }
+
+    public void writeToParcel(Parcel out, int flags) {
+        out.writeInt(netId);
+        out.writeLong(durationMs);
+        out.writeInt(probeType);
+        out.writeInt(returnCode);
+    }
+
+    public int describeContents() {
+        return 0;
+    }
+
+    public static final Parcelable.Creator<ValidationProbeEvent> CREATOR
+        = new Parcelable.Creator<ValidationProbeEvent>() {
+        public ValidationProbeEvent createFromParcel(Parcel in) {
+            return new ValidationProbeEvent(in);
+        }
+
+        public ValidationProbeEvent[] newArray(int size) {
+            return new ValidationProbeEvent[size];
+        }
+    };
+
+    public static void logEvent(int netId, long durationMs, int probeType, int returnCode) {
+        logEvent(IPCE_NETMON_PORTAL_PROBE,
+                 new ValidationProbeEvent(netId, durationMs, probeType, returnCode));
+    }
+};
diff --git a/core/java/android/nfc/cardemulation/HostApduService.java b/core/java/android/nfc/cardemulation/HostApduService.java
index a299479..9208d63 100644
--- a/core/java/android/nfc/cardemulation/HostApduService.java
+++ b/core/java/android/nfc/cardemulation/HostApduService.java
@@ -36,9 +36,9 @@
  *
  * <div class="special reference">
  * <h3>Developer Guide</h3>
- * For a general introduction into the topic of card emulation,
- * please read the <a href="{@docRoot}guide/topics/nfc/ce.html">
- * NFC card emulation developer guide.</a></p>
+ * For a general introduction to card emulation, see
+ * <a href="{@docRoot}guide/topics/connectivity/nfc/hce.html">
+ * Host-based Card Emulation</a>.</p>
  * </div>
  *
  * <h3>NFC Protocols</h3>
diff --git a/core/java/android/nfc/cardemulation/NfcFCardEmulation.java b/core/java/android/nfc/cardemulation/NfcFCardEmulation.java
index 42ccf20..a506504 100644
--- a/core/java/android/nfc/cardemulation/NfcFCardEmulation.java
+++ b/core/java/android/nfc/cardemulation/NfcFCardEmulation.java
@@ -428,7 +428,7 @@
             return false;
         }
         try {
-            Integer.valueOf(systemCode, 16);
+            Integer.parseInt(systemCode, 16);
         } catch (NumberFormatException e) {
             Log.e(TAG, "System Code " + systemCode + " is not a valid System Code.");
             return false;
diff --git a/core/java/android/nfc/tech/NfcBarcode.java b/core/java/android/nfc/tech/NfcBarcode.java
index 8901f28..421ba78 100644
--- a/core/java/android/nfc/tech/NfcBarcode.java
+++ b/core/java/android/nfc/tech/NfcBarcode.java
@@ -113,10 +113,10 @@
      * <p>Does not cause any RF activity and does not block.
      *
      * @return a byte array containing the barcode
-     * @see <a href="http://www.kovio.com/docs/kovionfcbarcode.pdf">
-     *      Kovio 128-bit NFC barcode datasheet</a>
-     * @see <a href="http://kovio.com/docs/kovio-128-nfc-barcode-data-format.pdf">
-     *      Kovio 128-bit NFC barcode data format</a>
+     * @see <a href="http://www.thinfilm.no/docs/thinfilm-nfc-barcode-datasheet.pdf">
+     *      Thinfilm NFC Barcode tag specification (previously Kovio NFC Barcode)</a>
+     * @see <a href="http://www.thinfilm.no/docs/thinfilm-nfc-barcode-data-format.pdf">
+     *      Thinfilm NFC Barcode data format (previously Kovio NFC Barcode)</a>
      */
     public byte[] getBarcode() {
         switch (mType) {
diff --git a/core/java/android/os/BaseBundle.java b/core/java/android/os/BaseBundle.java
index b6c919e..004b2ce 100644
--- a/core/java/android/os/BaseBundle.java
+++ b/core/java/android/os/BaseBundle.java
@@ -49,6 +49,8 @@
      */
     static final int FLAG_DEFUSABLE = 1 << 0;
 
+    private static final boolean LOG_DEFUSABLE = false;
+
     private static volatile boolean sShouldDefuse = false;
 
     /**
@@ -63,11 +65,12 @@
         sShouldDefuse = shouldDefuse;
     }
 
+    // A parcel cannot be obtained during compile-time initialization. Put the
+    // empty parcel into an inner class that can be initialized separately. This
+    // allows to initialize BaseBundle, and classes depending on it.
     /** {@hide} */
-    static final Parcel EMPTY_PARCEL;
-
-    static {
-        EMPTY_PARCEL = Parcel.obtain();
+    static final class NoImagePreloadHolder {
+        public static final Parcel EMPTY_PARCEL = Parcel.obtain();
     }
 
     // Invariant - exactly one of mMap / mParcelledData will be null
@@ -154,8 +157,8 @@
      */
     BaseBundle(BaseBundle b) {
         if (b.mParcelledData != null) {
-            if (b.mParcelledData == EMPTY_PARCEL) {
-                mParcelledData = EMPTY_PARCEL;
+            if (b.isEmptyParcel()) {
+                mParcelledData = NoImagePreloadHolder.EMPTY_PARCEL;
             } else {
                 mParcelledData = Parcel.obtain();
                 mParcelledData.appendFrom(b.mParcelledData, 0, b.mParcelledData.dataSize());
@@ -229,12 +232,12 @@
             return;
         }
 
-        if (sShouldDefuse && (mFlags & FLAG_DEFUSABLE) == 0) {
+        if (LOG_DEFUSABLE && sShouldDefuse && (mFlags & FLAG_DEFUSABLE) == 0) {
             Slog.wtf(TAG, "Attempting to unparcel a Bundle while in transit; this may "
                     + "clobber all data inside!", new Throwable());
         }
 
-        if (mParcelledData == EMPTY_PARCEL) {
+        if (isEmptyParcel()) {
             if (DEBUG) Log.d(TAG, "unparcel " + Integer.toHexString(System.identityHashCode(this))
                     + ": empty");
             if (mMap == null) {
@@ -282,6 +285,13 @@
         return mParcelledData != null;
     }
 
+    /**
+     * @hide
+     */
+    public boolean isEmptyParcel() {
+        return mParcelledData == NoImagePreloadHolder.EMPTY_PARCEL;
+    }
+
     /** @hide */
     ArrayMap<String, Object> getMap() {
         unparcel();
@@ -1366,7 +1376,7 @@
         // Keep implementation in sync with writeToParcel() in
         // frameworks/native/libs/binder/PersistableBundle.cpp.
         if (mParcelledData != null) {
-            if (mParcelledData == EMPTY_PARCEL) {
+            if (isEmptyParcel()) {
                 parcel.writeInt(0);
             } else {
                 int length = mParcelledData.dataSize();
@@ -1414,7 +1424,7 @@
 
         } else if (length == 0) {
             // Empty Bundle or end of data.
-            mParcelledData = EMPTY_PARCEL;
+            mParcelledData = NoImagePreloadHolder.EMPTY_PARCEL;
             return;
         }
 
diff --git a/core/java/android/os/BatteryStats.java b/core/java/android/os/BatteryStats.java
index 773e7dd..b9a3cff 100644
--- a/core/java/android/os/BatteryStats.java
+++ b/core/java/android/os/BatteryStats.java
@@ -242,6 +242,8 @@
     private static final String VIDEO_DATA = "vid";
     private static final String AUDIO_DATA = "aud";
 
+    public static final String RESULT_RECEIVER_CONTROLLER_KEY = "controller_activity";
+
     private final StringBuilder mFormatBuilder = new StringBuilder(32);
     private final Formatter mFormatter = new Formatter(mFormatBuilder);
 
@@ -3088,7 +3090,7 @@
                     || uidWifiRunningTime != 0) {
                 dumpLine(pw, uid, category, WIFI_DATA, fullWifiLockOnTime, wifiScanTime,
                         uidWifiRunningTime, wifiScanCount,
-                        /* legacy fields follow, keep at 0 */ 0, 0, 0, 0);
+                        /* legacy fields follow, keep at 0 */ 0, 0, 0);
             }
 
             dumpControllerActivityLine(pw, uid, category, WIFI_CONTROLLER_DATA,
diff --git a/core/java/android/os/Build.java b/core/java/android/os/Build.java
index d0029e1..7e1fc15 100644
--- a/core/java/android/os/Build.java
+++ b/core/java/android/os/Build.java
@@ -16,6 +16,7 @@
 
 package android.os;
 
+import android.annotation.SystemApi;
 import android.text.TextUtils;
 import android.util.Slog;
 
@@ -802,6 +803,7 @@
      *
      * @hide
      */
+    @SystemApi
     public static final boolean PERMISSIONS_REVIEW_REQUIRED =
             SystemProperties.getInt("ro.permission_review_required", 0) == 1;
 
diff --git a/core/java/android/os/Bundle.java b/core/java/android/os/Bundle.java
index 1128074..ca64a96 100644
--- a/core/java/android/os/Bundle.java
+++ b/core/java/android/os/Bundle.java
@@ -38,12 +38,9 @@
 
     public static final Bundle EMPTY;
 
-    static final Parcel EMPTY_PARCEL;
-
     static {
         EMPTY = new Bundle();
         EMPTY.mMap = ArrayMap.EMPTY;
-        EMPTY_PARCEL = BaseBundle.EMPTY_PARCEL;
     }
 
     /**
@@ -1155,7 +1152,7 @@
     @Override
     public synchronized String toString() {
         if (mParcelledData != null) {
-            if (mParcelledData == EMPTY_PARCEL) {
+            if (isEmptyParcel()) {
                 return "Bundle[EMPTY_PARCEL]";
             } else {
                 return "Bundle[mParcelledData.dataSize=" +
diff --git a/core/java/android/os/FileUtils.java b/core/java/android/os/FileUtils.java
index dd73e53..7d74a12 100644
--- a/core/java/android/os/FileUtils.java
+++ b/core/java/android/os/FileUtils.java
@@ -437,6 +437,14 @@
         return filePath.startsWith(dirPath);
     }
 
+    public static boolean deleteContentsAndDir(File dir) {
+        if (deleteContents(dir)) {
+            return dir.delete();
+        } else {
+            return false;
+        }
+    }
+
     public static boolean deleteContents(File dir) {
         File[] files = dir.listFiles();
         boolean success = true;
diff --git a/core/java/android/os/IUserManager.aidl b/core/java/android/os/IUserManager.aidl
index 67d3959..55b0d2a 100644
--- a/core/java/android/os/IUserManager.aidl
+++ b/core/java/android/os/IUserManager.aidl
@@ -20,6 +20,7 @@
 import android.os.Bundle;
 import android.os.PersistableBundle;
 import android.content.pm.UserInfo;
+import android.content.IntentSender;
 import android.content.RestrictionEntry;
 import android.graphics.Bitmap;
 import android.os.ParcelFileDescriptor;
@@ -70,6 +71,7 @@
     boolean markGuestForDeletion(int userHandle);
     void setQuietModeEnabled(int userHandle, boolean enableQuietMode);
     boolean isQuietModeEnabled(int userHandle);
+    boolean trySetQuietModeDisabled(int userHandle, in IntentSender target);
     void setSeedAccountData(int userHandle, in String accountName,
             in String accountType, in PersistableBundle accountOptions, boolean persist);
     String getSeedAccountName();
diff --git a/core/java/android/os/PersistableBundle.java b/core/java/android/os/PersistableBundle.java
index b947c97..db9f4b1 100644
--- a/core/java/android/os/PersistableBundle.java
+++ b/core/java/android/os/PersistableBundle.java
@@ -38,12 +38,10 @@
         XmlUtils.WriteMapCallback {
     private static final String TAG_PERSISTABLEMAP = "pbundle_as_map";
     public static final PersistableBundle EMPTY;
-    static final Parcel EMPTY_PARCEL;
 
     static {
         EMPTY = new PersistableBundle();
         EMPTY.mMap = ArrayMap.EMPTY;
-        EMPTY_PARCEL = BaseBundle.EMPTY_PARCEL;
     }
 
     /** @hide */
@@ -278,7 +276,7 @@
     @Override
     synchronized public String toString() {
         if (mParcelledData != null) {
-            if (mParcelledData == EMPTY_PARCEL) {
+            if (isEmptyParcel()) {
                 return "PersistableBundle[EMPTY_PARCEL]";
             } else {
                 return "PersistableBundle[mParcelledData.dataSize=" +
diff --git a/core/java/android/os/PowerManager.java b/core/java/android/os/PowerManager.java
index 92edc62..c285acb 100644
--- a/core/java/android/os/PowerManager.java
+++ b/core/java/android/os/PowerManager.java
@@ -219,15 +219,6 @@
     public static final int DRAW_WAKE_LOCK = 0x00000080;
 
     /**
-     * Wake lock level: Enables Sustained Performance Mode.
-     * <p>
-     * This is used by Gaming and VR applications to ensure the device
-     * will provide consistent performance over a large amount of time.
-     * </p>
-     */
-    public static final int SUSTAINED_PERFORMANCE_WAKE_LOCK = 0x00000100;
-
-    /**
      * Mask for the wake lock level component of a combined wake lock level and flags integer.
      *
      * @hide
@@ -559,7 +550,6 @@
             case PROXIMITY_SCREEN_OFF_WAKE_LOCK:
             case DOZE_WAKE_LOCK:
             case DRAW_WAKE_LOCK:
-            case SUSTAINED_PERFORMANCE_WAKE_LOCK:
                 break;
             default:
                 throw new IllegalArgumentException("Must specify a valid wake lock level.");
@@ -1033,7 +1023,7 @@
     /**
      * Returns True if the device supports Sustained Performance Mode.
      * Applications Should check if the device supports this mode, before
-     * using {@link #SUSTAINED_PERFORMANCE_WAKE_LOCK}.
+     * using {@link android.view.Window#setSustainedPerformanceMode}.
      */
     public boolean isSustainedPerformanceModeSupported() {
         return mContext.getResources().getBoolean(
diff --git a/core/java/android/os/PowerManagerInternal.java b/core/java/android/os/PowerManagerInternal.java
index 9801e1b..b3cf710 100644
--- a/core/java/android/os/PowerManagerInternal.java
+++ b/core/java/android/os/PowerManagerInternal.java
@@ -55,12 +55,16 @@
 
 
     /**
-     * Power hint: The user is interacting with the device. The corresponding data field must be
+     * Power hint:
+     * Interaction: The user is interacting with the device. The corresponding data field must be
      * the expected duration of the fling, or 0 if unknown.
      *
-     * This must be kept in sync with the values in hardware/libhardware/include/hardware/power.h
+     * Sustained Performance Mode: Enable/Disables Sustained Performance Mode.
+     *
+     * These must be kept in sync with the values in hardware/libhardware/include/hardware/power.h
      */
     public static final int POWER_HINT_INTERACTION = 2;
+    public static final int POWER_HINT_SUSTAINED_PERFORMANCE_MODE = 6;
 
     public static String wakefulnessToString(int wakefulness) {
         switch (wakefulness) {
diff --git a/core/java/android/os/RemoteCallback.java b/core/java/android/os/RemoteCallback.java
index 89e30a9..7dbcb95 100644
--- a/core/java/android/os/RemoteCallback.java
+++ b/core/java/android/os/RemoteCallback.java
@@ -18,10 +18,12 @@
 
 import android.annotation.NonNull;
 import android.annotation.Nullable;
+import android.annotation.SystemApi;
 
 /**
  * @hide
  */
+@SystemApi
 public final class RemoteCallback implements Parcelable {
 
     public interface OnResultListener {
diff --git a/core/java/android/os/StrictMode.java b/core/java/android/os/StrictMode.java
index e4a76db..c36b488 100644
--- a/core/java/android/os/StrictMode.java
+++ b/core/java/android/os/StrictMode.java
@@ -1163,7 +1163,7 @@
         }
         String policyString = message.substring(7, spaceIndex);
         try {
-            return Integer.valueOf(policyString).intValue();
+            return Integer.parseInt(policyString);
         } catch (NumberFormatException e) {
             return 0;
         }
@@ -1187,7 +1187,7 @@
         }
         String violationString = message.substring(numberStartIndex, numberEndIndex);
         try {
-            return Integer.valueOf(violationString).intValue();
+            return Integer.parseInt(violationString);
         } catch (NumberFormatException e) {
             return 0;
         }
diff --git a/core/java/android/os/SynchronousResultReceiver.java b/core/java/android/os/SynchronousResultReceiver.java
new file mode 100644
index 0000000..d1b6288
--- /dev/null
+++ b/core/java/android/os/SynchronousResultReceiver.java
@@ -0,0 +1,80 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package android.os;
+
+import android.annotation.NonNull;
+import android.annotation.Nullable;
+
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
+
+/**
+ * Extends ResultReceiver to allow the server end of the ResultReceiver to synchronously wait
+ * on the response from the client. This enables an RPC like system but with the ability to
+ * timeout and discard late results.
+ *
+ * NOTE: Can only be used for one response. Subsequent responses on the same instance are ignored.
+ * {@hide}
+ */
+public class SynchronousResultReceiver extends ResultReceiver {
+    public static class Result {
+        public int resultCode;
+        @Nullable public Bundle bundle;
+
+        public Result(int resultCode, @Nullable Bundle bundle) {
+            this.resultCode = resultCode;
+            this.bundle = bundle;
+        }
+    }
+
+    private final CompletableFuture<Result> mFuture = new CompletableFuture<>();
+
+    public SynchronousResultReceiver() {
+        super((Handler) null);
+    }
+
+    @Override
+    final protected void onReceiveResult(int resultCode, Bundle resultData) {
+        super.onReceiveResult(resultCode, resultData);
+        mFuture.complete(new Result(resultCode, resultData));
+    }
+
+    /**
+     * Blocks waiting for the result from the remote client.
+     *
+     * @return the Result
+     * @throws TimeoutException if the timeout in milliseconds expired.
+     */
+    public @NonNull Result awaitResult(long timeoutMillis) throws TimeoutException {
+        final long deadline = System.currentTimeMillis() + timeoutMillis;
+        while (timeoutMillis >= 0) {
+            try {
+                return mFuture.get(timeoutMillis, TimeUnit.MILLISECONDS);
+            } catch (ExecutionException e) {
+                // This will NEVER happen.
+                throw new AssertionError("Error receiving response", e);
+            } catch (InterruptedException e) {
+                // The thread was interrupted, try and get the value again, this time
+                // with the remaining time until the deadline.
+                timeoutMillis -= deadline - System.currentTimeMillis();
+            }
+        }
+        throw new TimeoutException();
+    }
+
+}
diff --git a/core/java/android/os/UserManager.java b/core/java/android/os/UserManager.java
index d5b3b35..dd53cbb 100644
--- a/core/java/android/os/UserManager.java
+++ b/core/java/android/os/UserManager.java
@@ -29,6 +29,7 @@
 import android.content.ComponentName;
 import android.content.Context;
 import android.content.Intent;
+import android.content.IntentSender;
 import android.content.pm.UserInfo;
 import android.content.res.Resources;
 import android.graphics.Bitmap;
@@ -47,7 +48,14 @@
 import java.util.List;
 
 /**
- * Manages users and user details on a multi-user system.
+ * Manages users and user details on a multi-user system. There are two major categories of
+ * users: fully customizable users with their own login, and managed profiles that share a workspace
+ * with a related user.
+ * <p>
+ * Users are different from accounts, which are managed by
+ * {@link AccountManager}. Each user can have their own set of accounts.
+ * <p>
+ * See {@link DevicePolicyManager#ACTION_PROVISION_MANAGED_PROFILE} for more on managed profiles.
  */
 public class UserManager {
 
@@ -661,9 +669,9 @@
     }
 
     /**
-     * Returns whether the system supports multiple users.
-     * @return true if multiple users can be created by user, false if it is a single user device.
-     * @hide
+     * Returns whether this device supports multiple users with their own login and customizable
+     * space.
+     * @return whether the device supports multiple users.
      */
     public static boolean supportsMultipleUsers() {
         return getMaxSupportedUsers() > 1
@@ -1236,22 +1244,24 @@
     }
 
     /**
-     * Returns an intent to create a user for the provided name and email address. The name
-     * and email address will be used when the setup process for the new user is started.
-     * If this device does not support multiple users, null is returned.
-     * <p/>
+     * Returns an intent to create a user for the provided name and account name. The name
+     * and account name will be used when the setup process for the new user is started.
+     * <p>
      * The intent should be launched using startActivityForResult and the return result will
      * indicate if the user consented to adding a new user and if the operation succeeded. Any
      * errors in creating the user will be returned in the result code. If the user cancels the
      * request, the return result will be {@link Activity#RESULT_CANCELED}. On success, the
      * result code will be {@link Activity#RESULT_OK}.
-     * <p/>
+     * <p>
+     * Use {@link #supportsMultipleUsers()} to first check if the device supports this operation
+     * at all.
+     * <p>
      * The new user is created but not initialized. After switching into the user for the first
      * time, the preferred user name and account information are used by the setup process for that
      * user.
      *
      * @param userName Optional name to assign to the user.
-     * @param accountName Optional email address that will be used by the setup wizard to initialize
+     * @param accountName Optional account name that will be used by the setup wizard to initialize
      *                    the user.
      * @param accountType Optional account type for the account to be created. This is required
      *                    if the account name is specified.
@@ -1259,17 +1269,14 @@
      *                       new user via {@link AccountManager#addAccount(String, String, String[],
      *                       Bundle, android.app.Activity, android.accounts.AccountManagerCallback,
      *                       Handler)}.
-     * @return An Intent that can be launched from an Activity or null if creating users is not
-     *         supported on this device.
+     * @return An Intent that can be launched from an Activity.
      * @see #USER_CREATION_FAILED_NOT_PERMITTED
      * @see #USER_CREATION_FAILED_NO_MORE_USERS
+     * @see #supportsMultipleUsers
      */
     public static Intent createUserCreationIntent(@Nullable String userName,
             @Nullable String accountName,
             @Nullable String accountType, @Nullable PersistableBundle accountOptions) {
-        if (!supportsMultipleUsers() || getMaxSupportedUsers() < 2) {
-            return null;
-        }
         Intent intent = new Intent(ACTION_CREATE_USER);
         if (userName != null) {
             intent.putExtra(EXTRA_USER_NAME, userName);
@@ -1678,6 +1685,7 @@
 
     /**
      * Returns whether the given profile is in quiet mode or not.
+     * Notes: Quiet mode is only supported for managed profiles.
      *
      * @param userHandle The user handle of the profile to be queried.
      * @return true if the profile is in quiet mode, false otherwise.
@@ -1691,6 +1699,23 @@
     }
 
     /**
+     * Tries disabling quiet mode for a given user. If the user is still locked, we unlock the user
+     * first by showing the confirm credentials screen and disable quiet mode upon successful
+     * unlocking. If the user is already unlocked, we call through to {@link #setQuietModeEnabled}
+     * directly.
+     *
+     * @return true if the quiet mode was disabled immediately
+     * @hide
+     */
+    public boolean trySetQuietModeDisabled(@UserIdInt int userHandle, IntentSender target) {
+        try {
+            return mService.trySetQuietModeDisabled(userHandle, target);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    /**
      * If the target user is a managed profile of the calling user or the caller
      * is itself a managed profile, then this returns a badged copy of the given
      * icon to be able to distinguish it from the original icon. For badging an
diff --git a/core/java/android/os/health/UidHealthStats.java b/core/java/android/os/health/UidHealthStats.java
index c7d257f..337235a 100644
--- a/core/java/android/os/health/UidHealthStats.java
+++ b/core/java/android/os/health/UidHealthStats.java
@@ -261,16 +261,16 @@
     public static final int TIMER_MOBILE_RADIO_ACTIVE = HealthKeys.BASE_UID + 61;
 
     @HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT)
-    public static final int MEASUREMENT_USER_CPU_TIME_US = HealthKeys.BASE_UID + 62;
+    public static final int MEASUREMENT_USER_CPU_TIME_MS = HealthKeys.BASE_UID + 62;
 
     @HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT)
-    public static final int MEASUREMENT_SYSTEM_CPU_TIME_US = HealthKeys.BASE_UID + 63;
+    public static final int MEASUREMENT_SYSTEM_CPU_TIME_MS = HealthKeys.BASE_UID + 63;
 
     /**
      * An estimate of the number of milliamp-microsends used by this uid.
      */
     @HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT)
-    public static final int MEASUREMENT_CPU_POWER_MAUS = HealthKeys.BASE_UID + 64;
+    public static final int MEASUREMENT_CPU_POWER_MAMS = HealthKeys.BASE_UID + 64;
 
     /**
      * @hide
diff --git a/core/java/android/os/storage/IMountService.java b/core/java/android/os/storage/IMountService.java
index c21c65a..3915b02 100644
--- a/core/java/android/os/storage/IMountService.java
+++ b/core/java/android/os/storage/IMountService.java
@@ -1325,6 +1325,24 @@
             }
 
             @Override
+            public void destroyUserStorage(String volumeUuid, int userId, int flags)
+                    throws RemoteException {
+                Parcel _data = Parcel.obtain();
+                Parcel _reply = Parcel.obtain();
+                try {
+                    _data.writeInterfaceToken(DESCRIPTOR);
+                    _data.writeString(volumeUuid);
+                    _data.writeInt(userId);
+                    _data.writeInt(flags);
+                    mRemote.transact(Stub.TRANSACTION_destroyUserStorage, _data, _reply, 0);
+                    _reply.readException();
+                } finally {
+                    _reply.recycle();
+                    _data.recycle();
+                }
+            }
+
+            @Override
             public ParcelFileDescriptor mountAppFuse(String name) throws RemoteException {
                 Parcel _data = Parcel.obtain();
                 Parcel _reply = Parcel.obtain();
@@ -1465,6 +1483,7 @@
         static final int TRANSACTION_isUserKeyUnlocked = IBinder.FIRST_CALL_TRANSACTION + 65;
 
         static final int TRANSACTION_prepareUserStorage = IBinder.FIRST_CALL_TRANSACTION + 66;
+        static final int TRANSACTION_destroyUserStorage = IBinder.FIRST_CALL_TRANSACTION + 67;
 
         static final int TRANSACTION_isConvertibleToFBE = IBinder.FIRST_CALL_TRANSACTION + 68;
 
@@ -2096,6 +2115,15 @@
                     reply.writeNoException();
                     return true;
                 }
+                case TRANSACTION_destroyUserStorage: {
+                    data.enforceInterface(DESCRIPTOR);
+                    String volumeUuid = data.readString();
+                    int userId = data.readInt();
+                    int _flags = data.readInt();
+                    destroyUserStorage(volumeUuid, userId, _flags);
+                    reply.writeNoException();
+                    return true;
+                }
                 case TRANSACTION_mountAppFuse: {
                     data.enforceInterface(DESCRIPTOR);
                     String name = data.readString();
@@ -2434,6 +2462,7 @@
 
     public void prepareUserStorage(String volumeUuid, int userId, int serialNumber,
             int flags) throws RemoteException;
+    public void destroyUserStorage(String volumeUuid, int userId, int flags) throws RemoteException;
 
     public ParcelFileDescriptor mountAppFuse(String name) throws RemoteException;
 }
diff --git a/core/java/android/os/storage/StorageManager.java b/core/java/android/os/storage/StorageManager.java
index 0a8fdd9..f68e227 100644
--- a/core/java/android/os/storage/StorageManager.java
+++ b/core/java/android/os/storage/StorageManager.java
@@ -1053,6 +1053,15 @@
     }
 
     /** {@hide} */
+    public void destroyUserStorage(String volumeUuid, int userId, int flags) {
+        try {
+            mMountService.destroyUserStorage(volumeUuid, userId, flags);
+        } catch (RemoteException e) {
+            throw e.rethrowFromSystemServer();
+        }
+    }
+
+    /** {@hide} */
     public boolean isUserKeyUnlocked(int userId) {
         try {
             return mMountService.isUserKeyUnlocked(userId);
diff --git a/core/java/android/permissionpresenterservice/RuntimePermissionPresenterService.java b/core/java/android/permissionpresenterservice/RuntimePermissionPresenterService.java
new file mode 100644
index 0000000..405be1a
--- /dev/null
+++ b/core/java/android/permissionpresenterservice/RuntimePermissionPresenterService.java
@@ -0,0 +1,146 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.permissionpresenterservice;
+
+import android.annotation.SystemApi;
+import android.app.Service;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.permission.IRuntimePermissionPresenter;
+import android.content.pm.permission.RuntimePermissionPresentationInfo;
+import android.content.pm.permission.RuntimePermissionPresenter;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.IBinder;
+import android.os.Looper;
+import android.os.Message;
+import android.os.RemoteCallback;
+import com.android.internal.os.SomeArgs;
+
+import java.util.List;
+
+/**
+ * This service presents information regarding runtime permissions that is
+ * used for presenting them in the UI. Runtime permissions are presented as
+ * a single permission in the UI but may be composed of several individual
+ * permissions.
+ *
+ * @see RuntimePermissionPresenter
+ * @see RuntimePermissionPresentationInfo
+ *
+ * @hide
+ */
+@SystemApi
+public abstract class RuntimePermissionPresenterService extends Service {
+
+    /**
+     * The {@link Intent} action that must be declared as handled by a service
+     * in its manifest for the system to recognize it as a runtime permission
+     * presenter service.
+     */
+    public static final String SERVICE_INTERFACE =
+            "android.permissionpresenterservice.RuntimePermissionPresenterService";
+
+    // No need for locking - always set first and never modified
+    private Handler mHandler;
+
+    @Override
+    public final void attachBaseContext(Context base) {
+        super.attachBaseContext(base);
+        mHandler = new MyHandler(base.getMainLooper());
+    }
+
+    /**
+     * Gets the runtime permissions for an app.
+     *
+     * @param packageName The package for which to query.
+     */
+    public abstract List<RuntimePermissionPresentationInfo> onGetAppPermissions(String packageName);
+
+    /**
+     * Gets the apps that use runtime permissions.
+     *
+     * @param system Whether to return only the system apps or only the non-system ones.
+     * @return The app list.
+     */
+    public abstract List<ApplicationInfo> onGetAppsUsingPermissions(boolean system);
+
+    @Override
+    public final IBinder onBind(Intent intent) {
+        return new IRuntimePermissionPresenter.Stub() {
+            @Override
+            public void getAppPermissions(String packageName, RemoteCallback callback) {
+                SomeArgs args = SomeArgs.obtain();
+                args.arg1 = packageName;
+                args.arg2 = callback;
+                mHandler.obtainMessage(MyHandler.MSG_GET_APP_PERMISSIONS,
+                        args).sendToTarget();
+            }
+
+            @Override
+            public void getAppsUsingPermissions(boolean system, RemoteCallback callback) {
+                mHandler.obtainMessage(MyHandler.MSG_GET_APPS_USING_PERMISSIONS,
+                        system ? 1 : 0, 0, callback).sendToTarget();
+            }
+        };
+    }
+
+    private final class MyHandler extends Handler {
+        public static final int MSG_GET_APP_PERMISSIONS = 1;
+        public static final int MSG_GET_APPS_USING_PERMISSIONS = 2;
+
+        public MyHandler(Looper looper) {
+            super(looper, null, false);
+        }
+
+        @Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_GET_APP_PERMISSIONS: {
+                    SomeArgs args = (SomeArgs) msg.obj;
+                    String packageName = (String) args.arg1;
+                    RemoteCallback callback = (RemoteCallback) args.arg2;
+                    args.recycle();
+                    List<RuntimePermissionPresentationInfo> permissions =
+                            onGetAppPermissions(packageName);
+                    if (permissions != null && !permissions.isEmpty()) {
+                        Bundle result = new Bundle();
+                        result.putParcelableList(RuntimePermissionPresenter.KEY_RESULT,
+                                permissions);
+                        callback.sendResult(result);
+                    } else {
+                        callback.sendResult(null);
+                    }
+                } break;
+
+                case MSG_GET_APPS_USING_PERMISSIONS: {
+                    RemoteCallback callback = (RemoteCallback) msg.obj;
+                    final boolean system = msg.arg1 == 1;
+                    List<ApplicationInfo> apps = onGetAppsUsingPermissions(system);
+                    if (apps != null && !apps.isEmpty()) {
+                        Bundle result = new Bundle();
+                        result.putParcelableList(RuntimePermissionPresenter.KEY_RESULT, apps);
+                        callback.sendResult(result);
+                    } else {
+                        callback.sendResult(null);
+                    }
+                } break;
+            }
+        }
+    }
+}
diff --git a/core/java/android/print/PrintAttributes.java b/core/java/android/print/PrintAttributes.java
index 721c94e..17942ae 100644
--- a/core/java/android/print/PrintAttributes.java
+++ b/core/java/android/print/PrintAttributes.java
@@ -805,8 +805,8 @@
          * @param id The unique media size id.
          * @param packageName The name of the creating package.
          * @param labelResId The resource if of a human readable label.
-         * @param widthMils The width in mils (thousands of an inch).
-         * @param heightMils The height in mils (thousands of an inch).
+         * @param widthMils The width in mils (thousandths of an inch).
+         * @param heightMils The height in mils (thousandths of an inch).
          *
          * @throws IllegalArgumentException If the id is empty or the label
          * is empty or the widthMils is less than or equal to zero or the
@@ -828,8 +828,8 @@
          * @param id The unique media size id. It is unique amongst other media sizes
          *        supported by the printer.
          * @param label The <strong>localized</strong> human readable label.
-         * @param widthMils The width in mils (thousands of an inch).
-         * @param heightMils The height in mils (thousands of an inch).
+         * @param widthMils The width in mils (thousandths of an inch).
+         * @param heightMils The height in mils (thousandths of an inch).
          *
          * @throws IllegalArgumentException If the id is empty or the label is empty
          * or the widthMils is less than or equal to zero or the heightMils is less
@@ -864,8 +864,8 @@
          *        supported by the printer.
          * @param label The <strong>localized</strong> human readable label.
          * @param packageName The name of the creating package.
-         * @param widthMils The width in mils (thousands of an inch).
-         * @param heightMils The height in mils (thousands of an inch).
+         * @param widthMils The width in mils (thousandths of an inch).
+         * @param heightMils The height in mils (thousandths of an inch).
          * @param labelResId The resource if of a human readable label.
          *
          * @throws IllegalArgumentException If the id is empty or the label is unset
@@ -924,7 +924,7 @@
         }
 
         /**
-         * Gets the media width in mils (thousands of an inch).
+         * Gets the media width in mils (thousandths of an inch).
          *
          * @return The media width.
          */
@@ -933,7 +933,7 @@
         }
 
         /**
-         * Gets the media height in mils (thousands of an inch).
+         * Gets the media height in mils (thousandths of an inch).
          *
          * @return The media height.
          */
@@ -1225,10 +1225,10 @@
         /**
          * Creates a new instance.
          *
-         * @param leftMils The left margin in mils (thousands of an inch).
-         * @param topMils The top margin in mils (thousands of an inch).
-         * @param rightMils The right margin in mils (thousands of an inch).
-         * @param bottomMils The bottom margin in mils (thousands of an inch).
+         * @param leftMils The left margin in mils (thousandths of an inch).
+         * @param topMils The top margin in mils (thousandths of an inch).
+         * @param rightMils The right margin in mils (thousandths of an inch).
+         * @param bottomMils The bottom margin in mils (thousandths of an inch).
          */
         public Margins(int leftMils, int topMils, int rightMils, int bottomMils) {
             mTopMils = topMils;
@@ -1238,7 +1238,7 @@
         }
 
         /**
-         * Gets the left margin in mils (thousands of an inch).
+         * Gets the left margin in mils (thousandths of an inch).
          *
          * @return The left margin.
          */
@@ -1247,7 +1247,7 @@
         }
 
         /**
-         * Gets the top margin in mils (thousands of an inch).
+         * Gets the top margin in mils (thousandths of an inch).
          *
          * @return The top margin.
          */
@@ -1256,7 +1256,7 @@
         }
 
         /**
-         * Gets the right margin in mils (thousands of an inch).
+         * Gets the right margin in mils (thousandths of an inch).
          *
          * @return The right margin.
          */
@@ -1265,7 +1265,7 @@
         }
 
         /**
-         * Gets the bottom margin in mils (thousands of an inch).
+         * Gets the bottom margin in mils (thousandths of an inch).
          *
          * @return The bottom margin.
          */
diff --git a/core/java/android/print/PrintManager.java b/core/java/android/print/PrintManager.java
index 71f0bd6..5d0ad55 100644
--- a/core/java/android/print/PrintManager.java
+++ b/core/java/android/print/PrintManager.java
@@ -778,6 +778,12 @@
 
         public PrintDocumentAdapterDelegate(Activity activity,
                 PrintDocumentAdapter documentAdapter) {
+            if (activity.isFinishing()) {
+                // The activity is already dead hence the onActivityDestroyed callback won't be
+                // triggered. Hence it is not save to print in this situation.
+                throw new IllegalStateException("Cannot start printing for finishing activity");
+            }
+
             mActivity = activity;
             mDocumentAdapter = documentAdapter;
             mHandler = new MyHandler(mActivity.getMainLooper());
diff --git a/core/java/android/printservice/CustomPrinterIconCallback.java b/core/java/android/printservice/CustomPrinterIconCallback.java
index 6b9d0d8..a1fbdab 100644
--- a/core/java/android/printservice/CustomPrinterIconCallback.java
+++ b/core/java/android/printservice/CustomPrinterIconCallback.java
@@ -27,7 +27,7 @@
 /**
  * Callback for {@link PrinterDiscoverySession#onRequestCustomPrinterIcon}.
  */
-public class CustomPrinterIconCallback {
+public final class CustomPrinterIconCallback {
     /** The printer the call back is for */
     private final @NonNull PrinterId mPrinterId;
     private final @NonNull IPrintServiceClient mObserver;
diff --git a/core/java/android/printservice/PrintJob.java b/core/java/android/printservice/PrintJob.java
index 7a7ca23..3226f34 100644
--- a/core/java/android/printservice/PrintJob.java
+++ b/core/java/android/printservice/PrintJob.java
@@ -347,18 +347,15 @@
      * <p />
      * This overrides any previously set status set via {@link #setStatus(CharSequence)},
      * {@link #setStatus(int)}, {@link #block(String)}, or {@link #fail(String)},
-     * <p />
-     * To clear the status use {@link #setStatus(CharSequence) <code>setStatus(null)</code>}
      *
-     * @param status  The new status as a String resource.
+     * @param statusResId The new status as a String resource. If 0 the status will be empty.
      */
     @MainThread
-    public void setStatus(@StringRes int status) {
+    public void setStatus(@StringRes int statusResId) {
         PrintService.throwIfNotCalledOnMainThread();
-        Preconditions.checkArgument(status != 0, "status has to be != 0");
 
         try {
-            mPrintServiceClient.setStatusRes(mCachedInfo.getId(), status,
+            mPrintServiceClient.setStatusRes(mCachedInfo.getId(), statusResId,
                     mContext.getPackageName());
         } catch (RemoteException re) {
             Log.e(LOG_TAG, "Error setting status for job: " + mCachedInfo.getId(), re);
diff --git a/core/java/android/printservice/PrinterDiscoverySession.java b/core/java/android/printservice/PrinterDiscoverySession.java
index 7b9533d..4987e8b 100644
--- a/core/java/android/printservice/PrinterDiscoverySession.java
+++ b/core/java/android/printservice/PrinterDiscoverySession.java
@@ -408,15 +408,15 @@
     public abstract void onStartPrinterStateTracking(@NonNull PrinterId printerId);
 
     /**
-     * Request the custom icon for a printer. Once the icon is available use
-     * {@link CustomPrinterIconCallback#onCustomPrinterIconLoaded} to send the data to the print
-     * service.
+     * Called by the system to request the custom icon for a printer. Once the icon is available the
+     * print services uses {@link CustomPrinterIconCallback#onCustomPrinterIconLoaded} to send the
+     * icon to the system.
      *
      * @param printerId The printer to icon belongs to.
-     * @param cancellationSignal Signal used to cancel the request
-     * @param callback Callback for returning the icon to the print spooler.
+     * @param cancellationSignal Signal used to cancel the request.
+     * @param callback Callback for returning the icon to the system.
      *
-     * @see android.print.PrinterInfo.Builder#setHasCustomPrinterIcon()
+     * @see android.print.PrinterInfo.Builder#setHasCustomPrinterIcon(boolean)
      */
     public void onRequestCustomPrinterIcon(@NonNull PrinterId printerId,
             @NonNull CancellationSignal cancellationSignal,
diff --git a/core/java/android/printservice/recommendation/RecommendationService.java b/core/java/android/printservice/recommendation/RecommendationService.java
index b7ea512..733629a 100644
--- a/core/java/android/printservice/recommendation/RecommendationService.java
+++ b/core/java/android/printservice/recommendation/RecommendationService.java
@@ -27,7 +27,6 @@
 import android.os.Message;
 import android.os.RemoteException;
 import android.util.Log;
-import com.android.internal.annotations.GuardedBy;
 
 import java.util.List;
 
@@ -46,8 +45,6 @@
     /**
      * The {@link Intent} action that must be declared as handled by a service in its manifest for
      * the system to recognize it as a print service recommendation service.
-     *
-     * @hide
      */
     public static final String SERVICE_INTERFACE =
             "android.printservice.recommendation.RecommendationService";
diff --git a/core/java/android/provider/CallLog.java b/core/java/android/provider/CallLog.java
index 8ac185a..8a0759f 100644
--- a/core/java/android/provider/CallLog.java
+++ b/core/java/android/provider/CallLog.java
@@ -179,7 +179,6 @@
          * <li>{@link #VOICEMAIL_TYPE}</li>
          * <li>{@link #REJECTED_TYPE}</li>
          * <li>{@link #BLOCKED_TYPE}</li>
-         * <li>{@link #ANSWERED_EXTERNALLY_TYPE}</li>
          * </ul>
          * </p>
          */
@@ -201,6 +200,7 @@
          * Call log type for a call which was answered on another device.  Used in situations where
          * a call rings on multiple devices simultaneously and it ended up being answered on a
          * device other than the current one.
+         * @hide
          */
         public static final int ANSWERED_EXTERNALLY_TYPE = 7;
 
@@ -214,7 +214,10 @@
         /** Call had video. */
         public static final int FEATURES_VIDEO = 0x1;
 
-        /** Call was pulled externally. */
+        /**
+         * Call was pulled externally.
+         * @hide
+         */
         public static final int FEATURES_PULLED_EXTERNALLY = 0x2;
 
         /**
diff --git a/core/java/android/provider/Downloads.java b/core/java/android/provider/Downloads.java
index 8472f78..b826584 100644
--- a/core/java/android/provider/Downloads.java
+++ b/core/java/android/provider/Downloads.java
@@ -412,6 +412,11 @@
 
         public static final String COLUMN_ALLOW_WRITE = "allow_write";
 
+        public static final int FLAG_REQUIRES_CHARGING = 1 << 0;
+        public static final int FLAG_REQUIRES_DEVICE_IDLE = 1 << 1;
+
+        public static final String COLUMN_FLAGS = "flags";
+
         /**
          * default value for {@link #COLUMN_LAST_UPDATESRC}.
          * This value is used when this column's value is not relevant.
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 788a20c..d80d4be 100755
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -1569,15 +1569,17 @@
     }
 
     /**
-     * An app can use this method to check if it is currently allowed to draw on top of other
-     * apps. In order to be allowed to do so, an app must first declare the
-     * {@link android.Manifest.permission#SYSTEM_ALERT_WINDOW} permission in its manifest. If it
-     * is currently disallowed, it can prompt the user to grant it this capability through a
-     * management UI by sending an Intent with action
-     * {@link android.provider.Settings#ACTION_MANAGE_OVERLAY_PERMISSION}.
+     * Checks if the specified context can draw on top of other apps. As of API
+     * level 23, an app cannot draw on top of other apps unless it declares the
+     * {@link android.Manifest.permission#SYSTEM_ALERT_WINDOW} permission in its
+     * manifest, <em>and</em> the user specifically grants the app this
+     * capability. To prompt the user to grant this approval, the app must send an
+     * intent with the action
+     * {@link android.provider.Settings#ACTION_MANAGE_OVERLAY_PERMISSION}, which
+     * causes the system to display a permission management screen.
      *
-     * @param context A context
-     * @return true if the calling app can draw on top of other apps, false otherwise.
+     * @param context App context.
+     * @return true if the specified context can draw on top of other apps, false otherwise
      */
     public static boolean canDrawOverlays(Context context) {
         return Settings.isCallingPackageAllowedToDrawOverlays(context, Process.myUid(),
@@ -3886,14 +3888,16 @@
             Secure.WIFI_WATCHDOG_PING_TIMEOUT_MS;
 
         /**
-         * An app can use this method to check if it is currently allowed to write or modify system
-         * settings. In order to gain write access to the system settings, an app must declare the
-         * {@link android.Manifest.permission#WRITE_SETTINGS} permission in its manifest. If it is
-         * currently disallowed, it can prompt the user to grant it this capability through a
-         * management UI by sending an Intent with action
-         * {@link android.provider.Settings#ACTION_MANAGE_WRITE_SETTINGS}.
+         * Checks if the specified app can modify system settings. As of API
+         * level 23, an app cannot modify system settings unless it declares the
+         * {@link android.Manifest.permission#WRITE_SETTINGS}
+         * permission in its manifest, <em>and</em> the user specifically grants
+         * the app this capability. To prompt the user to grant this approval,
+         * the app must send an intent with the action {@link
+         * android.provider.Settings#ACTION_MANAGE_WRITE_SETTINGS}, which causes
+         * the system to display a permission management screen.
          *
-         * @param context A context
+         * @param context App context.
          * @return true if the calling app can write to system settings, false otherwise
          */
         public static boolean canWrite(Context context) {
@@ -6039,6 +6043,33 @@
         public static final String ENABLED_VR_LISTENERS = "enabled_vr_listeners";
 
         /**
+         * Behavior of the display while in VR mode.
+         *
+         * One of {@link #VR_DISPLAY_MODE_LOW_PERSISTENCE} or {@link #VR_DISPLAY_MODE_OFF}.
+         *
+         * @hide
+         */
+        public static final String VR_DISPLAY_MODE = "vr_display_mode";
+
+        /**
+         * Lower the display persistence while the system is in VR mode.
+         *
+         * @see PackageManager#FEATURE_VR_MODE_HIGH_PERFORMANCE
+         *
+         * @hide.
+         */
+        public static final int VR_DISPLAY_MODE_LOW_PERSISTENCE = 0;
+
+        /**
+         * Do not alter the display persistence while the system is in VR mode.
+         *
+         * @see PackageManager#FEATURE_VR_MODE_HIGH_PERFORMANCE
+         *
+         * @hide.
+         */
+        public static final int VR_DISPLAY_MODE_OFF = 1;
+
+        /**
          * This are the settings to be backed up.
          *
          * NOTE: Settings are backed up and restored in the order they appear
diff --git a/core/java/android/service/notification/ZenModeConfig.java b/core/java/android/service/notification/ZenModeConfig.java
index 27315ee..3e25edb 100644
--- a/core/java/android/service/notification/ZenModeConfig.java
+++ b/core/java/android/service/notification/ZenModeConfig.java
@@ -378,7 +378,7 @@
     private static int tryParseInt(String value, int defValue) {
         if (TextUtils.isEmpty(value)) return defValue;
         try {
-            return Integer.valueOf(value);
+            return Integer.parseInt(value);
         } catch (NumberFormatException e) {
             return defValue;
         }
diff --git a/core/java/android/text/Emoji.java b/core/java/android/text/Emoji.java
index c0f0663..b62cc66 100644
--- a/core/java/android/text/Emoji.java
+++ b/core/java/android/text/Emoji.java
@@ -24,6 +24,122 @@
  */
 public class Emoji {
     // See http://www.unicode.org/Public/emoji/3.0/emoji-data.txt
+    // TODO: Generate from external/unicode/emoji-data.txt
+    private static int[] EMOJI_LIST = {
+        0x0023, 0x002A, 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038,
+        0x0039, 0x00A9, 0x00AE, 0x203C, 0x2049, 0x2122, 0x2139, 0x2194, 0x2195, 0x2196, 0x2197,
+        0x2198, 0x2199, 0x21A9, 0x21AA, 0x231A, 0x231B, 0x2328, 0x23CF, 0x23E9, 0x23EA, 0x23EB,
+        0x23EC, 0x23ED, 0x23EE, 0x23EF, 0x23F0, 0x23F1, 0x23F2, 0x23F3, 0x23F8, 0x23F9, 0x23FA,
+        0x24C2, 0x25AA, 0x25AB, 0x25B6, 0x25C0, 0x25FB, 0x25FC, 0x25FD, 0x25FE, 0x2600, 0x2601,
+        0x2602, 0x2603, 0x2604, 0x260E, 0x2611, 0x2614, 0x2615, 0x2618, 0x261D, 0x2620, 0x2622,
+        0x2623, 0x2626, 0x262A, 0x262E, 0x262F, 0x2638, 0x2639, 0x263A, 0x2648, 0x2649, 0x264A,
+        0x264B, 0x264C, 0x264D, 0x264E, 0x264F, 0x2650, 0x2651, 0x2652, 0x2653, 0x2660, 0x2663,
+        0x2665, 0x2666, 0x2668, 0x267B, 0x267F, 0x2692, 0x2693, 0x2694, 0x2696, 0x2697, 0x2699,
+        0x269B, 0x269C, 0x26A0, 0x26A1, 0x26AA, 0x26AB, 0x26B0, 0x26B1, 0x26BD, 0x26BE, 0x26C4,
+        0x26C5, 0x26C8, 0x26CE, 0x26CF, 0x26D1, 0x26D3, 0x26D4, 0x26E9, 0x26EA, 0x26F0, 0x26F1,
+        0x26F2, 0x26F3, 0x26F4, 0x26F5, 0x26F7, 0x26F8, 0x26F9, 0x26FA, 0x26FD, 0x2702, 0x2705,
+        0x2708, 0x2709, 0x270A, 0x270B, 0x270C, 0x270D, 0x270F, 0x2712, 0x2714, 0x2716, 0x271D,
+        0x2721, 0x2728, 0x2733, 0x2734, 0x2744, 0x2747, 0x274C, 0x274E, 0x2753, 0x2754, 0x2755,
+        0x2757, 0x2763, 0x2764, 0x2795, 0x2796, 0x2797, 0x27A1, 0x27B0, 0x27BF, 0x2934, 0x2935,
+        0x2B05, 0x2B06, 0x2B07, 0x2B1B, 0x2B1C, 0x2B50, 0x2B55, 0x3030, 0x303D, 0x3297, 0x3299,
+        0x1F004, 0x1F0CF, 0x1F170, 0x1F171, 0x1F17E, 0x1F17F, 0x1F18E, 0x1F191, 0x1F192, 0x1F193,
+        0x1F194, 0x1F195, 0x1F196, 0x1F197, 0x1F198, 0x1F199, 0x1F19A, 0x1F1E6, 0x1F1E7, 0x1F1E8,
+        0x1F1E9, 0x1F1EA, 0x1F1EB, 0x1F1EC, 0x1F1ED, 0x1F1EE, 0x1F1EF, 0x1F1F0, 0x1F1F1, 0x1F1F2,
+        0x1F1F3, 0x1F1F4, 0x1F1F5, 0x1F1F6, 0x1F1F7, 0x1F1F8, 0x1F1F9, 0x1F1FA, 0x1F1FB, 0x1F1FC,
+        0x1F1FD, 0x1F1FE, 0x1F1FF, 0x1F201, 0x1F202, 0x1F21A, 0x1F22F, 0x1F232, 0x1F233, 0x1F234,
+        0x1F235, 0x1F236, 0x1F237, 0x1F238, 0x1F239, 0x1F23A, 0x1F250, 0x1F251, 0x1F300, 0x1F301,
+        0x1F302, 0x1F303, 0x1F304, 0x1F305, 0x1F306, 0x1F307, 0x1F308, 0x1F309, 0x1F30A, 0x1F30B,
+        0x1F30C, 0x1F30D, 0x1F30E, 0x1F30F, 0x1F310, 0x1F311, 0x1F312, 0x1F313, 0x1F314, 0x1F315,
+        0x1F316, 0x1F317, 0x1F318, 0x1F319, 0x1F31A, 0x1F31B, 0x1F31C, 0x1F31D, 0x1F31E, 0x1F31F,
+        0x1F320, 0x1F321, 0x1F324, 0x1F325, 0x1F326, 0x1F327, 0x1F328, 0x1F329, 0x1F32A, 0x1F32B,
+        0x1F32C, 0x1F32D, 0x1F32E, 0x1F32F, 0x1F330, 0x1F331, 0x1F332, 0x1F333, 0x1F334, 0x1F335,
+        0x1F336, 0x1F337, 0x1F338, 0x1F339, 0x1F33A, 0x1F33B, 0x1F33C, 0x1F33D, 0x1F33E, 0x1F33F,
+        0x1F340, 0x1F341, 0x1F342, 0x1F343, 0x1F344, 0x1F345, 0x1F346, 0x1F347, 0x1F348, 0x1F349,
+        0x1F34A, 0x1F34B, 0x1F34C, 0x1F34D, 0x1F34E, 0x1F34F, 0x1F350, 0x1F351, 0x1F352, 0x1F353,
+        0x1F354, 0x1F355, 0x1F356, 0x1F357, 0x1F358, 0x1F359, 0x1F35A, 0x1F35B, 0x1F35C, 0x1F35D,
+        0x1F35E, 0x1F35F, 0x1F360, 0x1F361, 0x1F362, 0x1F363, 0x1F364, 0x1F365, 0x1F366, 0x1F367,
+        0x1F368, 0x1F369, 0x1F36A, 0x1F36B, 0x1F36C, 0x1F36D, 0x1F36E, 0x1F36F, 0x1F370, 0x1F371,
+        0x1F372, 0x1F373, 0x1F374, 0x1F375, 0x1F376, 0x1F377, 0x1F378, 0x1F379, 0x1F37A, 0x1F37B,
+        0x1F37C, 0x1F37D, 0x1F37E, 0x1F37F, 0x1F380, 0x1F381, 0x1F382, 0x1F383, 0x1F384, 0x1F385,
+        0x1F386, 0x1F387, 0x1F388, 0x1F389, 0x1F38A, 0x1F38B, 0x1F38C, 0x1F38D, 0x1F38E, 0x1F38F,
+        0x1F390, 0x1F391, 0x1F392, 0x1F393, 0x1F396, 0x1F397, 0x1F399, 0x1F39A, 0x1F39B, 0x1F39E,
+        0x1F39F, 0x1F3A0, 0x1F3A1, 0x1F3A2, 0x1F3A3, 0x1F3A4, 0x1F3A5, 0x1F3A6, 0x1F3A7, 0x1F3A8,
+        0x1F3A9, 0x1F3AA, 0x1F3AB, 0x1F3AC, 0x1F3AD, 0x1F3AE, 0x1F3AF, 0x1F3B0, 0x1F3B1, 0x1F3B2,
+        0x1F3B3, 0x1F3B4, 0x1F3B5, 0x1F3B6, 0x1F3B7, 0x1F3B8, 0x1F3B9, 0x1F3BA, 0x1F3BB, 0x1F3BC,
+        0x1F3BD, 0x1F3BE, 0x1F3BF, 0x1F3C0, 0x1F3C1, 0x1F3C2, 0x1F3C3, 0x1F3C4, 0x1F3C5, 0x1F3C6,
+        0x1F3C7, 0x1F3C8, 0x1F3C9, 0x1F3CA, 0x1F3CB, 0x1F3CC, 0x1F3CD, 0x1F3CE, 0x1F3CF, 0x1F3D0,
+        0x1F3D1, 0x1F3D2, 0x1F3D3, 0x1F3D4, 0x1F3D5, 0x1F3D6, 0x1F3D7, 0x1F3D8, 0x1F3D9, 0x1F3DA,
+        0x1F3DB, 0x1F3DC, 0x1F3DD, 0x1F3DE, 0x1F3DF, 0x1F3E0, 0x1F3E1, 0x1F3E2, 0x1F3E3, 0x1F3E4,
+        0x1F3E5, 0x1F3E6, 0x1F3E7, 0x1F3E8, 0x1F3E9, 0x1F3EA, 0x1F3EB, 0x1F3EC, 0x1F3ED, 0x1F3EE,
+        0x1F3EF, 0x1F3F0, 0x1F3F3, 0x1F3F4, 0x1F3F5, 0x1F3F7, 0x1F3F8, 0x1F3F9, 0x1F3FA, 0x1F3FB,
+        0x1F3FC, 0x1F3FD, 0x1F3FE, 0x1F3FF, 0x1F400, 0x1F401, 0x1F402, 0x1F403, 0x1F404, 0x1F405,
+        0x1F406, 0x1F407, 0x1F408, 0x1F409, 0x1F40A, 0x1F40B, 0x1F40C, 0x1F40D, 0x1F40E, 0x1F40F,
+        0x1F410, 0x1F411, 0x1F412, 0x1F413, 0x1F414, 0x1F415, 0x1F416, 0x1F417, 0x1F418, 0x1F419,
+        0x1F41A, 0x1F41B, 0x1F41C, 0x1F41D, 0x1F41E, 0x1F41F, 0x1F420, 0x1F421, 0x1F422, 0x1F423,
+        0x1F424, 0x1F425, 0x1F426, 0x1F427, 0x1F428, 0x1F429, 0x1F42A, 0x1F42B, 0x1F42C, 0x1F42D,
+        0x1F42E, 0x1F42F, 0x1F430, 0x1F431, 0x1F432, 0x1F433, 0x1F434, 0x1F435, 0x1F436, 0x1F437,
+        0x1F438, 0x1F439, 0x1F43A, 0x1F43B, 0x1F43C, 0x1F43D, 0x1F43E, 0x1F43F, 0x1F440, 0x1F441,
+        0x1F442, 0x1F443, 0x1F444, 0x1F445, 0x1F446, 0x1F447, 0x1F448, 0x1F449, 0x1F44A, 0x1F44B,
+        0x1F44C, 0x1F44D, 0x1F44E, 0x1F44F, 0x1F450, 0x1F451, 0x1F452, 0x1F453, 0x1F454, 0x1F455,
+        0x1F456, 0x1F457, 0x1F458, 0x1F459, 0x1F45A, 0x1F45B, 0x1F45C, 0x1F45D, 0x1F45E, 0x1F45F,
+        0x1F460, 0x1F461, 0x1F462, 0x1F463, 0x1F464, 0x1F465, 0x1F466, 0x1F467, 0x1F468, 0x1F469,
+        0x1F46A, 0x1F46B, 0x1F46C, 0x1F46D, 0x1F46E, 0x1F46F, 0x1F470, 0x1F471, 0x1F472, 0x1F473,
+        0x1F474, 0x1F475, 0x1F476, 0x1F477, 0x1F478, 0x1F479, 0x1F47A, 0x1F47B, 0x1F47C, 0x1F47D,
+        0x1F47E, 0x1F47F, 0x1F480, 0x1F481, 0x1F482, 0x1F483, 0x1F484, 0x1F485, 0x1F486, 0x1F487,
+        0x1F488, 0x1F489, 0x1F48A, 0x1F48B, 0x1F48C, 0x1F48D, 0x1F48E, 0x1F48F, 0x1F490, 0x1F491,
+        0x1F492, 0x1F493, 0x1F494, 0x1F495, 0x1F496, 0x1F497, 0x1F498, 0x1F499, 0x1F49A, 0x1F49B,
+        0x1F49C, 0x1F49D, 0x1F49E, 0x1F49F, 0x1F4A0, 0x1F4A1, 0x1F4A2, 0x1F4A3, 0x1F4A4, 0x1F4A5,
+        0x1F4A6, 0x1F4A7, 0x1F4A8, 0x1F4A9, 0x1F4AA, 0x1F4AB, 0x1F4AC, 0x1F4AD, 0x1F4AE, 0x1F4AF,
+        0x1F4B0, 0x1F4B1, 0x1F4B2, 0x1F4B3, 0x1F4B4, 0x1F4B5, 0x1F4B6, 0x1F4B7, 0x1F4B8, 0x1F4B9,
+        0x1F4BA, 0x1F4BB, 0x1F4BC, 0x1F4BD, 0x1F4BE, 0x1F4BF, 0x1F4C0, 0x1F4C1, 0x1F4C2, 0x1F4C3,
+        0x1F4C4, 0x1F4C5, 0x1F4C6, 0x1F4C7, 0x1F4C8, 0x1F4C9, 0x1F4CA, 0x1F4CB, 0x1F4CC, 0x1F4CD,
+        0x1F4CE, 0x1F4CF, 0x1F4D0, 0x1F4D1, 0x1F4D2, 0x1F4D3, 0x1F4D4, 0x1F4D5, 0x1F4D6, 0x1F4D7,
+        0x1F4D8, 0x1F4D9, 0x1F4DA, 0x1F4DB, 0x1F4DC, 0x1F4DD, 0x1F4DE, 0x1F4DF, 0x1F4E0, 0x1F4E1,
+        0x1F4E2, 0x1F4E3, 0x1F4E4, 0x1F4E5, 0x1F4E6, 0x1F4E7, 0x1F4E8, 0x1F4E9, 0x1F4EA, 0x1F4EB,
+        0x1F4EC, 0x1F4ED, 0x1F4EE, 0x1F4EF, 0x1F4F0, 0x1F4F1, 0x1F4F2, 0x1F4F3, 0x1F4F4, 0x1F4F5,
+        0x1F4F6, 0x1F4F7, 0x1F4F8, 0x1F4F9, 0x1F4FA, 0x1F4FB, 0x1F4FC, 0x1F4FD, 0x1F4FF, 0x1F500,
+        0x1F501, 0x1F502, 0x1F503, 0x1F504, 0x1F505, 0x1F506, 0x1F507, 0x1F508, 0x1F509, 0x1F50A,
+        0x1F50B, 0x1F50C, 0x1F50D, 0x1F50E, 0x1F50F, 0x1F510, 0x1F511, 0x1F512, 0x1F513, 0x1F514,
+        0x1F515, 0x1F516, 0x1F517, 0x1F518, 0x1F519, 0x1F51A, 0x1F51B, 0x1F51C, 0x1F51D, 0x1F51E,
+        0x1F51F, 0x1F520, 0x1F521, 0x1F522, 0x1F523, 0x1F524, 0x1F525, 0x1F526, 0x1F527, 0x1F528,
+        0x1F529, 0x1F52A, 0x1F52B, 0x1F52C, 0x1F52D, 0x1F52E, 0x1F52F, 0x1F530, 0x1F531, 0x1F532,
+        0x1F533, 0x1F534, 0x1F535, 0x1F536, 0x1F537, 0x1F538, 0x1F539, 0x1F53A, 0x1F53B, 0x1F53C,
+        0x1F53D, 0x1F549, 0x1F54A, 0x1F54B, 0x1F54C, 0x1F54D, 0x1F54E, 0x1F550, 0x1F551, 0x1F552,
+        0x1F553, 0x1F554, 0x1F555, 0x1F556, 0x1F557, 0x1F558, 0x1F559, 0x1F55A, 0x1F55B, 0x1F55C,
+        0x1F55D, 0x1F55E, 0x1F55F, 0x1F560, 0x1F561, 0x1F562, 0x1F563, 0x1F564, 0x1F565, 0x1F566,
+        0x1F567, 0x1F56F, 0x1F570, 0x1F573, 0x1F574, 0x1F575, 0x1F576, 0x1F577, 0x1F578, 0x1F579,
+        0x1F57A, 0x1F587, 0x1F58A, 0x1F58B, 0x1F58C, 0x1F58D, 0x1F590, 0x1F595, 0x1F596, 0x1F5A4,
+        0x1F5A5, 0x1F5A8, 0x1F5B1, 0x1F5B2, 0x1F5BC, 0x1F5C2, 0x1F5C3, 0x1F5C4, 0x1F5D1, 0x1F5D2,
+        0x1F5D3, 0x1F5DC, 0x1F5DD, 0x1F5DE, 0x1F5E1, 0x1F5E3, 0x1F5E8, 0x1F5EF, 0x1F5F3, 0x1F5FA,
+        0x1F5FB, 0x1F5FC, 0x1F5FD, 0x1F5FE, 0x1F5FF, 0x1F600, 0x1F601, 0x1F602, 0x1F603, 0x1F604,
+        0x1F605, 0x1F606, 0x1F607, 0x1F608, 0x1F609, 0x1F60A, 0x1F60B, 0x1F60C, 0x1F60D, 0x1F60E,
+        0x1F60F, 0x1F610, 0x1F611, 0x1F612, 0x1F613, 0x1F614, 0x1F615, 0x1F616, 0x1F617, 0x1F618,
+        0x1F619, 0x1F61A, 0x1F61B, 0x1F61C, 0x1F61D, 0x1F61E, 0x1F61F, 0x1F620, 0x1F621, 0x1F622,
+        0x1F623, 0x1F624, 0x1F625, 0x1F626, 0x1F627, 0x1F628, 0x1F629, 0x1F62A, 0x1F62B, 0x1F62C,
+        0x1F62D, 0x1F62E, 0x1F62F, 0x1F630, 0x1F631, 0x1F632, 0x1F633, 0x1F634, 0x1F635, 0x1F636,
+        0x1F637, 0x1F638, 0x1F639, 0x1F63A, 0x1F63B, 0x1F63C, 0x1F63D, 0x1F63E, 0x1F63F, 0x1F640,
+        0x1F641, 0x1F642, 0x1F643, 0x1F644, 0x1F645, 0x1F646, 0x1F647, 0x1F648, 0x1F649, 0x1F64A,
+        0x1F64B, 0x1F64C, 0x1F64D, 0x1F64E, 0x1F64F, 0x1F680, 0x1F681, 0x1F682, 0x1F683, 0x1F684,
+        0x1F685, 0x1F686, 0x1F687, 0x1F688, 0x1F689, 0x1F68A, 0x1F68B, 0x1F68C, 0x1F68D, 0x1F68E,
+        0x1F68F, 0x1F690, 0x1F691, 0x1F692, 0x1F693, 0x1F694, 0x1F695, 0x1F696, 0x1F697, 0x1F698,
+        0x1F699, 0x1F69A, 0x1F69B, 0x1F69C, 0x1F69D, 0x1F69E, 0x1F69F, 0x1F6A0, 0x1F6A1, 0x1F6A2,
+        0x1F6A3, 0x1F6A4, 0x1F6A5, 0x1F6A6, 0x1F6A7, 0x1F6A8, 0x1F6A9, 0x1F6AA, 0x1F6AB, 0x1F6AC,
+        0x1F6AD, 0x1F6AE, 0x1F6AF, 0x1F6B0, 0x1F6B1, 0x1F6B2, 0x1F6B3, 0x1F6B4, 0x1F6B5, 0x1F6B6,
+        0x1F6B7, 0x1F6B8, 0x1F6B9, 0x1F6BA, 0x1F6BB, 0x1F6BC, 0x1F6BD, 0x1F6BE, 0x1F6BF, 0x1F6C0,
+        0x1F6C1, 0x1F6C2, 0x1F6C3, 0x1F6C4, 0x1F6C5, 0x1F6CB, 0x1F6CC, 0x1F6CD, 0x1F6CE, 0x1F6CF,
+        0x1F6D0, 0x1F6D1, 0x1F6D2, 0x1F6E0, 0x1F6E1, 0x1F6E2, 0x1F6E3, 0x1F6E4, 0x1F6E5, 0x1F6E9,
+        0x1F6EB, 0x1F6EC, 0x1F6F0, 0x1F6F3, 0x1F6F4, 0x1F6F5, 0x1F6F6, 0x1F910, 0x1F911, 0x1F912,
+        0x1F913, 0x1F914, 0x1F915, 0x1F916, 0x1F917, 0x1F918, 0x1F919, 0x1F91A, 0x1F91B, 0x1F91C,
+        0x1F91D, 0x1F91E, 0x1F920, 0x1F921, 0x1F922, 0x1F923, 0x1F924, 0x1F925, 0x1F926, 0x1F927,
+        0x1F930, 0x1F933, 0x1F934, 0x1F935, 0x1F936, 0x1F937, 0x1F938, 0x1F939, 0x1F93A, 0x1F93B,
+        0x1F93C, 0x1F93D, 0x1F93E, 0x1F940, 0x1F941, 0x1F942, 0x1F943, 0x1F944, 0x1F945, 0x1F946,
+        0x1F947, 0x1F948, 0x1F949, 0x1F94A, 0x1F94B, 0x1F950, 0x1F951, 0x1F952, 0x1F953, 0x1F954,
+        0x1F955, 0x1F956, 0x1F957, 0x1F958, 0x1F959, 0x1F95A, 0x1F95B, 0x1F95C, 0x1F95D, 0x1F95E,
+        0x1F980, 0x1F981, 0x1F982, 0x1F983, 0x1F984, 0x1F985, 0x1F986, 0x1F987, 0x1F988, 0x1F989,
+        0x1F98A, 0x1F98B, 0x1F98C, 0x1F98D, 0x1F98E, 0x1F98F, 0x1F990, 0x1F991, 0x1F9C0
+    };
+
+    // See http://www.unicode.org/Public/emoji/3.0/emoji-data.txt
     private static int[] EMOJI_MODIFIER_BASE = {
         0x261D, 0x26F9, 0x270A, 0x270B, 0x270C, 0x270D, 0x1F385, 0x1F3C3, 0x1F3C4, 0x1F3CA,
         0x1F3CB, 0x1F442, 0x1F443, 0x1F446, 0x1F447, 0x1F448, 0x1F449, 0x1F44A, 0x1F44B, 0x1F44C,
@@ -62,9 +178,9 @@
         return Arrays.binarySearch(EMOJI_MODIFIER_BASE, codePoint) >= 0;
     }
 
-    // Returns true if the character appears before or after zwj in a zwj emoji sequence.
-    public static boolean isZwjEmoji(int codePoint) {
-        return Arrays.binarySearch(ZWJ_EMOJI, codePoint) >= 0;
+    // Returns true if the character has Emoji property.
+    public static boolean isEmoji(int codePoint) {
+        return Arrays.binarySearch(EMOJI_LIST, codePoint) >= 0;
     }
 
     // Returns true if the character can be a base character of COMBINING ENCLOSING KEYCAP.
diff --git a/core/java/android/text/NoCopySpan.java b/core/java/android/text/NoCopySpan.java
index 0855c0b..e754d76 100644
--- a/core/java/android/text/NoCopySpan.java
+++ b/core/java/android/text/NoCopySpan.java
@@ -18,7 +18,7 @@
 
 /**
  * This interface should be added to a span object that should not be copied
- * into a new Spenned when performing a slice or copy operation on the original
+ * into a new Spanned when performing a slice or copy operation on the original
  * Spanned it was placed in.
  */
 public interface NoCopySpan {
diff --git a/core/java/android/text/format/Time.java b/core/java/android/text/format/Time.java
index 66e2ec3..69c2cff 100644
--- a/core/java/android/text/format/Time.java
+++ b/core/java/android/text/format/Time.java
@@ -331,7 +331,7 @@
      * @throws IllegalArgumentException if {@link #allDay} is true but {@code
      *             hour}, {@code minute}, and {@code second} are not 0.
      * @return a negative result if {@code a} is earlier, a positive result if
-     *         {@code a} is earlier, or 0 if they are equal.
+     *         {@code b} is earlier, or 0 if they are equal.
      */
     public static int compare(Time a, Time b) {
         if (a == null) {
diff --git a/core/java/android/text/method/BaseKeyListener.java b/core/java/android/text/method/BaseKeyListener.java
index e93e58d..3770a45 100644
--- a/core/java/android/text/method/BaseKeyListener.java
+++ b/core/java/android/text/method/BaseKeyListener.java
@@ -162,14 +162,14 @@
                         state = STATE_LF;
                     } else if (isVariationSelector(codePoint)) {
                         state = STATE_BEFORE_VS;
-                    } else if (Emoji.isZwjEmoji(codePoint)) {
-                        state = STATE_BEFORE_ZWJ_EMOJI;
                     } else if (Emoji.isRegionalIndicatorSymbol(codePoint)) {
                         state = STATE_ODD_NUMBERED_RIS;
                     } else if (Emoji.isEmojiModifier(codePoint)) {
                         state = STATE_BEFORE_EMOJI_MODIFIER;
                     } else if (codePoint == Emoji.COMBINING_ENCLOSING_KEYCAP) {
                         state = STATE_BEFORE_KEYCAP;
+                    } else if (Emoji.isEmoji(codePoint)) {
+                        state = STATE_BEFORE_ZWJ_EMOJI;
                     } else {
                         state = STATE_FINISHED;
                     }
@@ -230,7 +230,7 @@
                     state = STATE_FINISHED;
                     break;
                 case STATE_BEFORE_VS:
-                    if (Emoji.isZwjEmoji(codePoint)) {
+                    if (Emoji.isEmoji(codePoint)) {
                         deleteCharCount += Character.charCount(codePoint);
                         state = STATE_BEFORE_ZWJ_EMOJI;
                         break;
@@ -250,7 +250,7 @@
                     }
                     break;
                 case STATE_BEFORE_ZWJ:
-                    if (Emoji.isZwjEmoji(codePoint)) {
+                    if (Emoji.isEmoji(codePoint)) {
                         deleteCharCount += Character.charCount(codePoint) + 1;  // +1 for ZWJ.
                         state = STATE_BEFORE_ZWJ_EMOJI;
                     } else if (isVariationSelector(codePoint)) {
@@ -261,7 +261,7 @@
                     }
                     break;
                 case STATE_BEFORE_VS_AND_ZWJ:
-                    if (Emoji.isZwjEmoji(codePoint)) {
+                    if (Emoji.isEmoji(codePoint)) {
                         // +1 for ZWJ.
                         deleteCharCount += lastSeenVSCharCount + 1 + Character.charCount(codePoint);
                         lastSeenVSCharCount = 0;
diff --git a/core/java/android/view/AbsSavedState.java b/core/java/android/view/AbsSavedState.java
index 6ad33dd..6b616c0 100644
--- a/core/java/android/view/AbsSavedState.java
+++ b/core/java/android/view/AbsSavedState.java
@@ -37,7 +37,7 @@
 
     /**
      * Constructor called by derived classes when creating their SavedState objects
-     * 
+     *
      * @param superState The state of the superclass of this view
      */
     protected AbsSavedState(Parcelable superState) {
@@ -49,13 +49,22 @@
 
     /**
      * Constructor used when reading from a parcel. Reads the state of the superclass.
-     * 
-     * @param source
+     *
+     * @param source parcel to read from
      */
     protected AbsSavedState(Parcel source) {
-        // FIXME need class loader
-        Parcelable superState = source.readParcelable(null);
-         
+        this(source, null);
+    }
+
+    /**
+     * Constructor used when reading from a parcel using a given class loader.
+     * Reads the state of the superclass.
+     *
+     * @param source parcel to read from
+     * @param loader ClassLoader to use for reading
+     */
+    protected AbsSavedState(Parcel source, ClassLoader loader) {
+        Parcelable superState = source.readParcelable(loader);
         mSuperState = superState != null ? superState : EMPTY_STATE;
     }
 
@@ -68,20 +77,27 @@
     }
 
     public void writeToParcel(Parcel dest, int flags) {
-         dest.writeParcelable(mSuperState, flags);
+        dest.writeParcelable(mSuperState, flags);
     }
 
-    public static final Parcelable.Creator<AbsSavedState> CREATOR 
-        = new Parcelable.Creator<AbsSavedState>() {
-        
+    public static final Parcelable.Creator<AbsSavedState> CREATOR
+            = new Parcelable.ClassLoaderCreator<AbsSavedState>() {
+
+        @Override
         public AbsSavedState createFromParcel(Parcel in) {
-            Parcelable superState = in.readParcelable(null);
+            return createFromParcel(in, null);
+        }
+
+        @Override
+        public AbsSavedState createFromParcel(Parcel in, ClassLoader loader) {
+            Parcelable superState = in.readParcelable(loader);
             if (superState != null) {
                 throw new IllegalStateException("superState must be null");
             }
             return EMPTY_STATE;
         }
 
+        @Override
         public AbsSavedState[] newArray(int size) {
             return new AbsSavedState[size];
         }
diff --git a/core/java/android/view/DisplayListCanvas.java b/core/java/android/view/DisplayListCanvas.java
index 080ed9a..415c291 100644
--- a/core/java/android/view/DisplayListCanvas.java
+++ b/core/java/android/view/DisplayListCanvas.java
@@ -17,6 +17,7 @@
 package android.view;
 
 import android.annotation.NonNull;
+import android.annotation.Nullable;
 import android.graphics.Bitmap;
 import android.graphics.Canvas;
 import android.graphics.CanvasProperty;
@@ -163,17 +164,33 @@
     ///////////////////////////////////////////////////////////////////////////
 
     /**
-     * Calls the function specified with the drawGLFunction function pointer. This is
-     * functionality used by webkit for calling into their renderer from our display lists.
-     * This function may return true if an invalidation is needed after the call.
+     * Records the functor specified with the drawGLFunction function pointer. This is
+     * functionality used by webview for calling into their renderer from our display lists.
      *
      * @param drawGLFunction A native function pointer
      */
     public void callDrawGLFunction2(long drawGLFunction) {
-        nCallDrawGLFunction(mNativeCanvasWrapper, drawGLFunction);
+        nCallDrawGLFunction(mNativeCanvasWrapper, drawGLFunction, null);
     }
 
-    private static native void nCallDrawGLFunction(long renderer, long drawGLFunction);
+    /**
+     * Records the functor specified with the drawGLFunction function pointer. This is
+     * functionality used by webview for calling into their renderer from our display lists.
+     *
+     * @param drawGLFunction A native function pointer
+     * @param releasedCallback Called when the display list is destroyed, and thus
+     * the functor is no longer referenced by this canvas's display list.
+     *
+     * NOTE: The callback does *not* necessarily mean that there are no longer
+     * any references to the functor, just that the reference from this specific
+     * canvas's display list has been released.
+     */
+    public void drawGLFunctor2(long drawGLFunctor, @Nullable Runnable releasedCallback) {
+        nCallDrawGLFunction(mNativeCanvasWrapper, drawGLFunctor, releasedCallback);
+    }
+
+    private static native void nCallDrawGLFunction(long renderer,
+            long drawGLFunction, Runnable releasedCallback);
 
     ///////////////////////////////////////////////////////////////////////////
     // Display list
diff --git a/core/java/android/view/DragAndDropPermissions.java b/core/java/android/view/DragAndDropPermissions.java
new file mode 100644
index 0000000..a3dbdb1
--- /dev/null
+++ b/core/java/android/view/DragAndDropPermissions.java
@@ -0,0 +1,126 @@
+/*
+** Copyright 2015, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+
+package android.view;
+
+import android.app.ActivityManagerNative;
+import android.os.IBinder;
+import android.os.RemoteException;
+import com.android.internal.view.IDragAndDropPermissions;
+import dalvik.system.CloseGuard;
+
+
+/**
+ * {@link DragAndDropPermissions} controls the access permissions for the content URIs associated
+ * with a {@link DragEvent}.
+ * <p>
+ * Permission are granted when this object is created by {@link
+ * android.app.Activity#requestDragAndDropPermissions(DragEvent)
+ * Activity.requestDragAndDropPermissions}.
+ * Which permissions are granted is defined by the set of flags passed to {@link
+ * View#startDragAndDrop(android.content.ClipData, View.DragShadowBuilder, Object, int)
+ * View.startDragAndDrop} by the app that started the drag operation.
+ * <p>
+ * The life cycle of the permissions is bound to the activity used to call {@link
+ * android.app.Activity#requestDragAndDropPermissions(DragEvent) requestDragAndDropPermissions}. The
+ * permissions are revoked when this activity is destroyed, or when {@link #release()} is called,
+ * whichever occurs first.
+ */
+public final class DragAndDropPermissions {
+
+    private final IDragAndDropPermissions mDragAndDropPermissions;
+
+    private IBinder mPermissionOwnerToken;
+
+    private final CloseGuard mCloseGuard = CloseGuard.get();
+
+    /**
+     * Create a new {@link DragAndDropPermissions} object to control the access permissions for
+     * content URIs associated with {@link DragEvent}.
+     * @param dragEvent Drag event
+     * @return {@link DragAndDropPermissions} object or null if there are no content URIs associated
+     * with the {@link DragEvent}.
+     * @hide
+     */
+    public static DragAndDropPermissions obtain(DragEvent dragEvent) {
+        if (dragEvent.getDragAndDropPermissions() == null) {
+            return null;
+        }
+        return new DragAndDropPermissions(dragEvent.getDragAndDropPermissions());
+    }
+
+    /** @hide */
+    private DragAndDropPermissions(IDragAndDropPermissions dragAndDropPermissions) {
+        mDragAndDropPermissions = dragAndDropPermissions;
+    }
+
+    /**
+     * Take the permissions and bind their lifetime to the activity.
+     * @param activityToken Binder pointing to an Activity instance to bind the lifetime to.
+     * @return True if permissions are successfully taken.
+     * @hide
+     */
+    public boolean take(IBinder activityToken) {
+        try {
+            mDragAndDropPermissions.take(activityToken);
+        } catch (RemoteException e) {
+            return false;
+        }
+        mCloseGuard.open("release");
+        return true;
+    }
+
+    /**
+     * Take the permissions. Must call {@link #release} explicitly.
+     * @return True if permissions are successfully taken.
+     * @hide
+     */
+    public boolean takeTransient() {
+        try {
+            mPermissionOwnerToken = ActivityManagerNative.getDefault().
+                    newUriPermissionOwner("drop");
+            mDragAndDropPermissions.takeTransient(mPermissionOwnerToken);
+        } catch (RemoteException e) {
+            return false;
+        }
+        mCloseGuard.open("release");
+        return true;
+    }
+
+    /**
+     * Revoke permissions explicitly.
+     */
+    public void release() {
+        try {
+            mDragAndDropPermissions.release();
+            mPermissionOwnerToken = null;
+        } catch (RemoteException e) {
+        }
+        mCloseGuard.close();
+    }
+
+    @Override
+    protected void finalize() throws Throwable {
+        try {
+            if (mCloseGuard != null) {
+                mCloseGuard.warnIfOpen();
+            }
+            release();
+        } finally {
+            super.finalize();
+        }
+    }
+}
diff --git a/core/java/android/view/DragEvent.java b/core/java/android/view/DragEvent.java
index 71db0b5..0dfbe70 100644
--- a/core/java/android/view/DragEvent.java
+++ b/core/java/android/view/DragEvent.java
@@ -21,7 +21,7 @@
 import android.os.Parcel;
 import android.os.Parcelable;
 
-import com.android.internal.view.IDropPermissions;
+import com.android.internal.view.IDragAndDropPermissions;
 
 //TODO: Improve Javadoc
 /**
@@ -130,7 +130,7 @@
     float mX, mY;
     ClipDescription mClipDescription;
     ClipData mClipData;
-    IDropPermissions mDropPermissions;
+    IDragAndDropPermissions mDragAndDropPermissions;
 
     Object mLocalState;
     boolean mDragResult;
@@ -257,13 +257,13 @@
     }
 
     private void init(int action, float x, float y, ClipDescription description, ClipData data,
-            IDropPermissions dropPermissions, Object localState, boolean result) {
+            IDragAndDropPermissions dragAndDropPermissions, Object localState, boolean result) {
         mAction = action;
         mX = x;
         mY = y;
         mClipDescription = description;
         mClipData = data;
-        mDropPermissions = dropPermissions;
+        this.mDragAndDropPermissions = dragAndDropPermissions;
         mLocalState = localState;
         mDragResult = result;
     }
@@ -274,13 +274,14 @@
 
     /** @hide */
     public static DragEvent obtain(int action, float x, float y, Object localState,
-            ClipDescription description, ClipData data, IDropPermissions dropPermissions,
-            boolean result) {
+            ClipDescription description, ClipData data,
+            IDragAndDropPermissions dragAndDropPermissions, boolean result) {
         final DragEvent ev;
         synchronized (gRecyclerLock) {
             if (gRecyclerTop == null) {
                 ev = new DragEvent();
-                ev.init(action, x, y, description, data, dropPermissions, localState, result);
+                ev.init(action, x, y, description, data, dragAndDropPermissions, localState,
+                        result);
                 return ev;
             }
             ev = gRecyclerTop;
@@ -291,7 +292,7 @@
         ev.mRecycled = false;
         ev.mNext = null;
 
-        ev.init(action, x, y, description, data, dropPermissions, localState, result);
+        ev.init(action, x, y, description, data, dragAndDropPermissions, localState, result);
 
         return ev;
     }
@@ -299,7 +300,7 @@
     /** @hide */
     public static DragEvent obtain(DragEvent source) {
         return obtain(source.mAction, source.mX, source.mY, source.mLocalState,
-                source.mClipDescription, source.mClipData, source.mDropPermissions,
+                source.mClipDescription, source.mClipData, source.mDragAndDropPermissions,
                 source.mDragResult);
     }
 
@@ -365,8 +366,8 @@
     }
 
     /** @hide */
-    public IDropPermissions getDropPermissions() {
-        return mDropPermissions;
+    public IDragAndDropPermissions getDragAndDropPermissions() {
+        return mDragAndDropPermissions;
     }
 
     /**
@@ -489,11 +490,11 @@
             dest.writeInt(1);
             mClipDescription.writeToParcel(dest, flags);
         }
-        if (mDropPermissions == null) {
+        if (mDragAndDropPermissions == null) {
             dest.writeInt(0);
         } else {
             dest.writeInt(1);
-            dest.writeStrongBinder(mDropPermissions.asBinder());
+            dest.writeStrongBinder(mDragAndDropPermissions.asBinder());
         }
     }
 
@@ -515,7 +516,8 @@
                 event.mClipDescription = ClipDescription.CREATOR.createFromParcel(in);
             }
             if (in.readInt() != 0) {
-                event.mDropPermissions = IDropPermissions.Stub.asInterface(in.readStrongBinder());;
+                event.mDragAndDropPermissions =
+                        IDragAndDropPermissions.Stub.asInterface(in.readStrongBinder());;
             }
             return event;
         }
diff --git a/core/java/android/view/DropPermissions.java b/core/java/android/view/DropPermissions.java
deleted file mode 100644
index 5411dad..0000000
--- a/core/java/android/view/DropPermissions.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
-** Copyright 2015, The Android Open Source Project
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-**     http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
-
-package android.view;
-
-import android.app.ActivityManagerNative;
-import android.os.IBinder;
-import android.os.RemoteException;
-import com.android.internal.view.IDropPermissions;
-import dalvik.system.CloseGuard;
-
-
-/**
- * {@link DropPermissions} controls the access permissions for the content URIs associated with a
- * {@link DragEvent}.
- * <p>
- * Permission are granted when this object is created by {@link
- * android.app.Activity#requestDropPermissions(DragEvent) Activity.requestDropPermissions}.
- * Which permissions are granted is defined by the set of flags passed to {@link
- * View#startDragAndDrop(android.content.ClipData, View.DragShadowBuilder, Object, int)
- * View.startDragAndDrop} by the app that started the drag operation.
- * <p>
- * The life cycle of the permissions is bound to the activity used to call {@link
- * android.app.Activity#requestDropPermissions(DragEvent) requestDropPermissions}. The
- * permissions are revoked when this activity is destroyed, or when {@link #release()} is called,
- * whichever occurs first.
- */
-public final class DropPermissions {
-
-    private final IDropPermissions mDropPermissions;
-
-    private IBinder mPermissionOwnerToken;
-
-    private final CloseGuard mCloseGuard = CloseGuard.get();
-
-    /**
-     * Create a new {@link DropPermissions} object to control the access permissions for content
-     * URIs associated with {@link DragEvent}.
-     * @param dragEvent Drag event
-     * @return {@link DropPermissions} object or null if there are no content URIs associated with
-     * the {@link DragEvent}.
-     * @hide
-     */
-    public static DropPermissions obtain(DragEvent dragEvent) {
-        if (dragEvent.getDropPermissions() == null) {
-            return null;
-        }
-        return new DropPermissions(dragEvent.getDropPermissions());
-    }
-
-    /** @hide */
-    private DropPermissions(IDropPermissions dropPermissions) {
-        mDropPermissions = dropPermissions;
-    }
-
-    /**
-     * Take the permissions and bind their lifetime to the activity.
-     * @param activityToken Binder pointing to an Activity instance to bind the lifetime to.
-     * @return True if permissions are successfully taken.
-     * @hide
-     */
-    public boolean take(IBinder activityToken) {
-        try {
-            mDropPermissions.take(activityToken);
-        } catch (RemoteException e) {
-            return false;
-        }
-        mCloseGuard.open("release");
-        return true;
-    }
-
-    /**
-     * Take the permissions. Must call {@link #release} explicitly.
-     * @return True if permissions are successfully taken.
-     * @hide
-     */
-    public boolean takeTransient() {
-        try {
-            mPermissionOwnerToken = ActivityManagerNative.getDefault().
-                    newUriPermissionOwner("drop");
-            mDropPermissions.takeTransient(mPermissionOwnerToken);
-        } catch (RemoteException e) {
-            return false;
-        }
-        mCloseGuard.open("release");
-        return true;
-    }
-
-    /**
-     * Revoke permissions explicitly.
-     */
-    public void release() {
-        try {
-            mDropPermissions.release();
-            mPermissionOwnerToken = null;
-        } catch (RemoteException e) {
-        }
-        mCloseGuard.close();
-    }
-
-    @Override
-    protected void finalize() throws Throwable {
-        try {
-            if (mCloseGuard != null) {
-                mCloseGuard.warnIfOpen();
-            }
-            release();
-        } finally {
-            super.finalize();
-        }
-    }
-}
diff --git a/core/java/android/view/FrameMetrics.java b/core/java/android/view/FrameMetrics.java
index 8e66f86..5c4450a 100644
--- a/core/java/android/view/FrameMetrics.java
+++ b/core/java/android/view/FrameMetrics.java
@@ -234,7 +234,8 @@
      * Constructs a FrameMetrics object as a copy.
      * <p>
      * Use this method to copy out metrics reported by
-     * {@link Window.FrameMetricsListener#onMetricsAvailable(Window, FrameMetrics, int)}
+     * {@link Window.OnFrameMetricsAvailableListener#onFrameMetricsAvailable(
+     * Window, FrameMetrics, int)}
      * </p>
      * @param other the FrameMetrics object to copy.
      */
diff --git a/core/java/android/view/FrameMetricsObserver.java b/core/java/android/view/FrameMetricsObserver.java
index f38f8b7..6331357 100644
--- a/core/java/android/view/FrameMetricsObserver.java
+++ b/core/java/android/view/FrameMetricsObserver.java
@@ -40,7 +40,7 @@
 
     private FrameMetrics mFrameMetrics;
 
-    /* package */ Window.FrameMetricsListener mListener;
+    /* package */ Window.OnFrameMetricsAvailableListener mListener;
     /* package */ VirtualRefBasePtr mNative;
 
     /**
@@ -49,7 +49,7 @@
      * @param looper the looper to use when invoking callbacks
      */
     FrameMetricsObserver(@NonNull Window window, @NonNull Looper looper,
-            @NonNull Window.FrameMetricsListener listener) {
+            @NonNull Window.OnFrameMetricsAvailableListener listener) {
         if (looper == null) {
             throw new NullPointerException("looper cannot be null");
         }
@@ -69,7 +69,7 @@
     private void notifyDataAvailable(int dropCount) {
         final Window window = mWindow.get();
         if (window != null) {
-            mListener.onMetricsAvailable(window, mFrameMetrics, dropCount);
+            mListener.onFrameMetricsAvailable(window, mFrameMetrics, dropCount);
         }
     }
 }
diff --git a/core/java/android/view/IDockedStackListener.aidl b/core/java/android/view/IDockedStackListener.aidl
index 88ac271..36a81db 100644
--- a/core/java/android/view/IDockedStackListener.aidl
+++ b/core/java/android/view/IDockedStackListener.aidl
@@ -44,6 +44,15 @@
     void onDockedStackMinimizedChanged(boolean minimized, long animDuration);
 
     /**
+     * Called when window manager decides to adjust the divider for IME. Like the minimized state,
+     * the divider should make itself not interactable and shrink a bit, but in a different way.s
+     *
+     * @param minimized Whether the stacks are currently adjusted for the IME
+     * @param animDuration The duration of the animation for changing the adjusted state.
+     */
+    void onAdjustedForImeChanged(boolean adjustedForIme, long animDuration);
+
+    /**
      * Called when window manager repositioned the docked stack after a screen rotation change.
      */
     void onDockSideChanged(int newDockSide);
diff --git a/core/java/android/view/KeyboardShortcutInfo.java b/core/java/android/view/KeyboardShortcutInfo.java
index eee925d..a9f2699 100644
--- a/core/java/android/view/KeyboardShortcutInfo.java
+++ b/core/java/android/view/KeyboardShortcutInfo.java
@@ -62,8 +62,9 @@
      *     defined in {@link KeyEvent}.
      * @param modifiers The set of modifiers that, combined with the key, trigger the shortcut.
      *     These should be a combination of {@link KeyEvent#META_CTRL_ON},
-     *     {@link KeyEvent#META_SHIFT_ON}, {@link KeyEvent#META_META_ON} and
-     *     {@link KeyEvent#META_ALT_ON}.
+     *     {@link KeyEvent#META_SHIFT_ON}, {@link KeyEvent#META_META_ON},
+     *     {@link KeyEvent#META_ALT_ON}, {@link KeyEvent#META_FUNCTION_ON} and
+     *     {@link KeyEvent#META_SYM_ON}.
      */
     public KeyboardShortcutInfo(CharSequence label, int keycode, int modifiers) {
         this(label, null, keycode, modifiers);
@@ -74,8 +75,9 @@
      * @param baseCharacter The character that triggers the shortcut.
      * @param modifiers The set of modifiers that, combined with the key, trigger the shortcut.
      *     These should be a combination of {@link KeyEvent#META_CTRL_ON},
-     *     {@link KeyEvent#META_SHIFT_ON}, {@link KeyEvent#META_META_ON} and
-     *     {@link KeyEvent#META_ALT_ON}.
+     *     {@link KeyEvent#META_SHIFT_ON}, {@link KeyEvent#META_META_ON},
+     *     {@link KeyEvent#META_ALT_ON}, {@link KeyEvent#META_FUNCTION_ON} and
+     *     {@link KeyEvent#META_SYM_ON}.
      */
     public KeyboardShortcutInfo(CharSequence label, char baseCharacter, int modifiers) {
         mLabel = label;
@@ -114,7 +116,8 @@
 
     /**
      * Returns the base keycode that, combined with the modifiers, triggers this shortcut. If the
-     * base character was set instead, returns {@link KeyEvent#KEYCODE_UNKNOWN}.
+     * base character was set instead, returns {@link KeyEvent#KEYCODE_UNKNOWN}. Valid keycodes are
+     * defined as constants in {@link KeyEvent}.
      */
     public int getKeycode() {
         return mKeycode;
@@ -129,7 +132,10 @@
     }
 
     /**
-     * Returns the set of modifiers that, combined with the key, trigger this shortcut.
+     * Returns the set of modifiers that, combined with the key, trigger this shortcut. These can
+     * be a combination of {@link KeyEvent#META_CTRL_ON}, {@link KeyEvent#META_SHIFT_ON},
+     * {@link KeyEvent#META_META_ON}, {@link KeyEvent#META_ALT_ON},
+     * {@link KeyEvent#META_FUNCTION_ON} and {@link KeyEvent#META_SYM_ON}.
      */
     public int getModifiers() {
         return mModifiers;
diff --git a/core/java/android/view/MagnificationSpec.java b/core/java/android/view/MagnificationSpec.java
index 49242bb..956a211 100644
--- a/core/java/android/view/MagnificationSpec.java
+++ b/core/java/android/view/MagnificationSpec.java
@@ -131,11 +131,11 @@
     public String toString() {
         StringBuilder builder = new StringBuilder();
         builder.append("<scale:");
-        builder.append(scale);
+        builder.append(Float.toString(scale));
         builder.append(",offsetX:");
-        builder.append(offsetX);
+        builder.append(Float.toString(offsetX));
         builder.append(",offsetY:");
-        builder.append(offsetY);
+        builder.append(Float.toString(offsetY));
         builder.append(">");
         return builder.toString();
     }
diff --git a/core/java/android/view/MotionEvent.java b/core/java/android/view/MotionEvent.java
index a0f5142..3e72192 100644
--- a/core/java/android/view/MotionEvent.java
+++ b/core/java/android/view/MotionEvent.java
@@ -417,6 +417,21 @@
     public static final int FLAG_WINDOW_IS_OBSCURED = 0x1;
 
     /**
+     * This flag indicates that the window that received this motion event is partly
+     * or wholly obscured by another visible window above it.  This flag is set to true
+     * even if the event did not directly pass through the obscured area.
+     * A security sensitive application can check this flag to identify situations in which
+     * a malicious application may have covered up part of its content for the purpose
+     * of misleading the user or hijacking touches.  An appropriate response might be
+     * to drop the suspect touches or to take additional precautions to confirm the user's
+     * actual intent.
+     *
+     * Unlike FLAG_WINDOW_IS_OBSCURED, this is actually true.
+     * @hide
+     */
+    public static final int FLAG_WINDOW_IS_PARTIALLY_OBSCURED = 0x2;
+
+    /**
      * Private flag that indicates when the system has detected that this motion event
      * may be inconsistent with respect to the sequence of previously delivered motion events,
      * such as when a pointer move event is sent but the pointer is not down.
@@ -2052,7 +2067,7 @@
     
     /**
      * Return the pointer identifier associated with a particular pointer
-     * data index is this event.  The identifier tells you the actual pointer
+     * data index in this event.  The identifier tells you the actual pointer
      * number associated with the data, accounting for individual pointers
      * going up and down since the start of the current gesture.
      * @param pointerIndex Raw index of pointer to retrieve.  Value may be from 0
diff --git a/core/java/android/view/Surface.java b/core/java/android/view/Surface.java
index ef50fdc..7da849a 100644
--- a/core/java/android/view/Surface.java
+++ b/core/java/android/view/Surface.java
@@ -102,13 +102,13 @@
     public @interface ScalingMode {}
     // From system/window.h
     /** @hide */
-    static final int SCALING_MODE_FREEZE = 0;
+    public static final int SCALING_MODE_FREEZE = 0;
     /** @hide */
-    static final int SCALING_MODE_SCALE_TO_WINDOW = 1;
+    public static final int SCALING_MODE_SCALE_TO_WINDOW = 1;
     /** @hide */
-    static final int SCALING_MODE_SCALE_CROP = 2;
+    public static final int SCALING_MODE_SCALE_CROP = 2;
     /** @hide */
-    static final int SCALING_MODE_NO_SCALE_CROP = 3;
+    public static final int SCALING_MODE_NO_SCALE_CROP = 3;
 
     /** @hide */
     @IntDef({ROTATION_0, ROTATION_90, ROTATION_180, ROTATION_270})
diff --git a/core/java/android/view/SurfaceControl.java b/core/java/android/view/SurfaceControl.java
index c30ede3..dc9014b 100644
--- a/core/java/android/view/SurfaceControl.java
+++ b/core/java/android/view/SurfaceControl.java
@@ -85,6 +85,8 @@
             IBinder displayToken, int mode);
     private static native void nativeDeferTransactionUntil(long nativeObject,
             IBinder handle, long frame);
+    private static native void nativeSetOverrideScalingMode(long nativeObject,
+            int scalingMode);
     private static native IBinder nativeGetHandle(long nativeObject);
 
 
@@ -376,6 +378,11 @@
         nativeDeferTransactionUntil(mNativeObject, handle, frame);
     }
 
+    public void setOverrideScalingMode(int scalingMode) {
+        checkNotReleased();
+        nativeSetOverrideScalingMode(mNativeObject, scalingMode);
+    }
+
     public IBinder getHandle() {
         return nativeGetHandle(mNativeObject);
     }
diff --git a/core/java/android/view/SurfaceView.java b/core/java/android/view/SurfaceView.java
index 8a8fb43..ccb5ec4 100644
--- a/core/java/android/view/SurfaceView.java
+++ b/core/java/android/view/SurfaceView.java
@@ -648,13 +648,19 @@
 
                 transformFromViewToWindowSpace(mLocation);
 
+                mWinFrame.set(mWindowSpaceLeft, mWindowSpaceTop,
+                        mLocation[0], mLocation[1]);
+
+                if (mTranslator != null) {
+                    mTranslator.translateRectInAppWindowToScreen(mWinFrame);
+                }
+
                 try {
                     Log.d(TAG, String.format("updateWindowPosition UI, " +
-                            "postion = [%d, %d, %d, %d]", mWindowSpaceLeft, mWindowSpaceTop,
-                            mLocation[0], mLocation[1]));
-                    mSession.repositionChild(mWindow, mWindowSpaceLeft, mWindowSpaceTop,
-                            mLocation[0], mLocation[1],
-                            -1, mWinFrame);
+                            "postion = [%d, %d, %d, %d]", mWinFrame.left, mWinFrame.top,
+                            mWinFrame.right, mWinFrame.bottom));
+                    mSession.repositionChild(mWindow, mWinFrame.left, mWinFrame.top,
+                            mWinFrame.right, mWinFrame.bottom, -1, mWinFrame);
                 } catch (RemoteException ex) {
                     Log.e(TAG, "Exception from relayout", ex);
                 }
diff --git a/core/java/android/view/ThreadedRenderer.java b/core/java/android/view/ThreadedRenderer.java
index 206ba16..34110df 100644
--- a/core/java/android/view/ThreadedRenderer.java
+++ b/core/java/android/view/ThreadedRenderer.java
@@ -307,6 +307,12 @@
     private static final int SYNC_INVALIDATE_REQUIRED = 1 << 0;
     // Spoiler: the reward is GPU-accelerated drawing, better find that Surface!
     private static final int SYNC_LOST_SURFACE_REWARD_IF_FOUND = 1 << 1;
+    // setStopped is true, drawing is false
+    // TODO: Remove this and SYNC_LOST_SURFACE_REWARD_IF_FOUND?
+    // This flag isn't really used as there's nothing that we care to do
+    // in response, so it really just exists to differentiate from LOST_SURFACE
+    // but possibly both can just be deleted.
+    private static final int SYNC_CONTEXT_IS_STOPPED = 1 << 2;
 
     private static final String[] VISUALIZERS = {
         PROFILE_PROPERTY_VISUALIZE_BARS,
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 8a6b5da..eb895ff 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -161,7 +161,7 @@
  * that set them will vary among the different subclasses of views. Note that
  * properties that are known at build time can be set in the XML layout
  * files.</li>
- * <li><strong>Set focus:</strong> The framework will handled moving focus in
+ * <li><strong>Set focus:</strong> The framework will handle moving focus in
  * response to user input. To force focus to a specific view, call
  * {@link #requestFocus}.</li>
  * <li><strong>Set up listeners:</strong> Views allow clients to set listeners
@@ -5513,7 +5513,8 @@
      *
      * @hide
      */
-    public void addFrameMetricsListener(Window window, Window.FrameMetricsListener listener,
+    public void addFrameMetricsListener(Window window,
+            Window.OnFrameMetricsAvailableListener listener,
             Handler handler) {
         if (mAttachInfo != null) {
             if (mAttachInfo.mHardwareRenderer != null) {
@@ -5544,11 +5545,13 @@
      *
      * @hide
      */
-    public void removeFrameMetricsListener(Window.FrameMetricsListener listener) {
+    public void removeFrameMetricsListener(
+            Window.OnFrameMetricsAvailableListener listener) {
         ThreadedRenderer renderer = getHardwareRenderer();
         FrameMetricsObserver fmo = findFrameMetricsObserver(listener);
         if (fmo == null) {
-            throw new IllegalArgumentException("attempt to remove FrameMetricsListener that was never added");
+            throw new IllegalArgumentException(
+                    "attempt to remove OnFrameMetricsAvailableListener that was never added");
         }
 
         if (mFrameMetricsObservers != null) {
@@ -5572,7 +5575,8 @@
         }
     }
 
-    private FrameMetricsObserver findFrameMetricsObserver(Window.FrameMetricsListener listener) {
+    private FrameMetricsObserver findFrameMetricsObserver(
+            Window.OnFrameMetricsAvailableListener listener) {
         for (int i = 0; i < mFrameMetricsObservers.size(); i++) {
             FrameMetricsObserver observer = mFrameMetricsObservers.get(i);
             if (observer.mListener == listener) {
@@ -20619,6 +20623,12 @@
         }
     }
 
+    /**
+     * Updates the drag shadow for the ongoing drag and drop operation.
+     *
+     * @param shadowBuilder A {@link android.view.View.DragShadowBuilder} object for building the
+     * new drag shadow.
+     */
     public final void updateDragShadow(DragShadowBuilder shadowBuilder) {
         if (ViewDebug.DEBUG_DRAG) {
             Log.d(VIEW_LOG_TAG, "updateDragShadow");
@@ -22565,10 +22575,21 @@
         /**
          * Constructor used when reading from a parcel. Reads the state of the superclass.
          *
-         * @param source
+         * @param source parcel to read from
          */
         public BaseSavedState(Parcel source) {
-            super(source);
+            this(source, null);
+        }
+
+        /**
+         * Constructor used when reading from a parcel using a given class loader.
+         * Reads the state of the superclass.
+         *
+         * @param source parcel to read from
+         * @param loader ClassLoader to use for reading
+         */
+        public BaseSavedState(Parcel source, ClassLoader loader) {
+            super(source, loader);
             mStartActivityRequestWhoSaved = source.readString();
         }
 
@@ -22587,12 +22608,19 @@
             out.writeString(mStartActivityRequestWhoSaved);
         }
 
-        public static final Parcelable.Creator<BaseSavedState> CREATOR =
-                new Parcelable.Creator<BaseSavedState>() {
+        public static final Parcelable.Creator<BaseSavedState> CREATOR
+                = new Parcelable.ClassLoaderCreator<BaseSavedState>() {
+            @Override
             public BaseSavedState createFromParcel(Parcel in) {
                 return new BaseSavedState(in);
             }
 
+            @Override
+            public BaseSavedState createFromParcel(Parcel in, ClassLoader loader) {
+                return new BaseSavedState(in, loader);
+            }
+
+            @Override
             public BaseSavedState[] newArray(int size) {
                 return new BaseSavedState[size];
             }
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index e9ca623..9e4f26f 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -2716,11 +2716,11 @@
                     mAttachInfo.mHardwareRenderer.setStopped(false);
                 }
 
-                mAttachInfo.mHardwareRenderer.draw(mView, mAttachInfo, this);
-
                 if (updated) {
                     requestDrawWindow();
                 }
+
+                mAttachInfo.mHardwareRenderer.draw(mView, mAttachInfo, this);
             } else {
                 // If we get here with a disabled & requested hardware renderer, something went
                 // wrong (an invalidate posted right before we destroyed the hardware surface
diff --git a/core/java/android/view/Window.java b/core/java/android/view/Window.java
index 2f3f0bf..e3abb5d 100644
--- a/core/java/android/view/Window.java
+++ b/core/java/android/view/Window.java
@@ -43,6 +43,8 @@
 import android.transition.TransitionManager;
 import android.view.accessibility.AccessibilityEvent;
 
+import static android.view.WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED;
+
 import java.util.List;
 
 /**
@@ -610,7 +612,7 @@
      * Callback for clients that want frame timing information for each
      * frame rendered by the Window.
      */
-    public interface FrameMetricsListener {
+    public interface OnFrameMetricsAvailableListener {
         /**
          * Called when information is available for the previously rendered frame.
          *
@@ -629,7 +631,7 @@
          * @param dropCountSinceLastInvocation the number of reports dropped since the last time
          * this callback was invoked.
          */
-        void onMetricsAvailable(Window window, FrameMetrics frameMetrics,
+        void onFrameMetricsAvailable(Window window, FrameMetrics frameMetrics,
                 int dropCountSinceLastInvocation);
     }
 
@@ -792,8 +794,9 @@
         if (wp.packageName == null) {
             wp.packageName = mContext.getPackageName();
         }
-        if (mHardwareAccelerated) {
-            wp.flags |= WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED;
+        if (mHardwareAccelerated ||
+                (mWindowAttributes.flags & FLAG_HARDWARE_ACCELERATED) != 0) {
+            wp.flags |= FLAG_HARDWARE_ACCELERATED;
         }
     }
 
@@ -829,7 +832,8 @@
      *
      * Must be in hardware rendering mode.
      */
-    public final void addFrameMetricsListener(@NonNull FrameMetricsListener listener,
+    public final void addOnFrameMetricsAvailableListener(
+            @NonNull OnFrameMetricsAvailableListener listener,
             Handler handler) {
         final View decorView = getDecorView();
         if (decorView == null) {
@@ -846,7 +850,7 @@
     /**
      * Remove observer and stop listening to frame stats for this window.
      */
-    public final void removeFrameMetricsListener(FrameMetricsListener listener) {
+    public final void removeOnFrameMetricsAvailableListener(OnFrameMetricsAvailableListener listener) {
         final View decorView = getDecorView();
         if (decorView != null) {
             getDecorView().removeFrameMetricsListener(listener);
@@ -1177,6 +1181,15 @@
         return false;
     }
 
+    /* Sets the Sustained Performance requirement for the calling window.
+     * @param enable disables or enables the mode.
+     */
+    public void setSustainedPerformanceMode(boolean enable) {
+        setPrivateFlags(enable
+                ? WindowManager.LayoutParams.PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE : 0,
+                WindowManager.LayoutParams.PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE);
+    }
+
     private boolean isOutOfBounds(Context context, MotionEvent event) {
         final int x = (int) event.getX();
         final int y = (int) event.getY();
diff --git a/core/java/android/view/WindowManager.java b/core/java/android/view/WindowManager.java
index 89e146b..9b74fc0 100644
--- a/core/java/android/view/WindowManager.java
+++ b/core/java/android/view/WindowManager.java
@@ -1247,6 +1247,13 @@
         public static final int PRIVATE_FLAG_FORCE_DRAW_STATUS_BAR_BACKGROUND = 0x00020000;
 
         /**
+         * Flag to indicate that this window needs Sustained Performance Mode if
+         * the device supports it.
+         * @hide
+         */
+        public static final int PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE = 0x00040000;
+
+        /**
          * Control flags that are private to the platform.
          * @hide
          */
diff --git a/core/java/android/view/WindowManagerPolicy.java b/core/java/android/view/WindowManagerPolicy.java
index 96f179b..b0d204b 100644
--- a/core/java/android/view/WindowManagerPolicy.java
+++ b/core/java/android/view/WindowManagerPolicy.java
@@ -727,6 +727,8 @@
      * @param labelRes The resource ID the application would like to use as its name.
      * @param icon The resource ID the application would like to use as its icon.
      * @param windowFlags Window layout flags.
+     * @param overrideConfig override configuration to consider when generating
+     *        context to for resources.
      *
      * @return Optionally you can return the View that was used to create the
      *         window, for easy removal in removeStartingWindow.
@@ -735,7 +737,7 @@
      */
     public View addStartingWindow(IBinder appToken, String packageName,
             int theme, CompatibilityInfo compatInfo, CharSequence nonLocalizedLabel,
-            int labelRes, int icon, int logo, int windowFlags);
+            int labelRes, int icon, int logo, int windowFlags, Configuration overrideConfig);
 
     /**
      * Called when the first window of an application has been displayed, while
@@ -1304,7 +1306,7 @@
      * Show the recents task list app.
      * @hide
      */
-    public void showRecentApps();
+    public void showRecentApps(boolean fromHome);
 
     /**
      * Show the global actions dialog.
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index b16508e..ada7731 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -890,6 +890,8 @@
 
     /**
      * Loads the given URL with the specified additional HTTP headers.
+     * <p>
+     * Also see compatibility note on {@link #evaluateJavascript}.
      *
      * @param url the URL of the resource to load
      * @param additionalHttpHeaders the additional headers to be used in the
@@ -906,6 +908,8 @@
 
     /**
      * Loads the given URL.
+     * <p>
+     * Also see compatibility note on {@link #evaluateJavascript}.
      *
      * @param url the URL of the resource to load
      */
@@ -1006,6 +1010,12 @@
      * If non-null, |resultCallback| will be invoked with any result returned from that
      * execution. This method must be called on the UI thread and the callback will
      * be made on the UI thread.
+     * <p>
+     * Compatibility note. Applications targeting {@link android.os.Build.VERSION_CODES#N} or
+     * later, JavaScript state from an empty WebView is no longer persisted across navigations like
+     * {@link #loadUrl(String)}. For example, global variables and functions defined before calling
+     * {@link #loadUrl(String)} will not exist in the loaded page. Applications should use
+     * {@link #addJavascriptInterface} instead to persist JavaScript objects across navigations.
      *
      * @param script the JavaScript to execute.
      * @param resultCallback A callback to be invoked when the script execution
diff --git a/core/java/android/webkit/WebViewDelegate.java b/core/java/android/webkit/WebViewDelegate.java
index b6516c8..85d7cd0 100644
--- a/core/java/android/webkit/WebViewDelegate.java
+++ b/core/java/android/webkit/WebViewDelegate.java
@@ -74,9 +74,7 @@
      * and false otherwise.
      */
     public boolean canInvokeDrawGlFunctor(View containerView) {
-        ViewRootImpl viewRootImpl = containerView.getViewRootImpl();
-         // viewRootImpl can be null during teardown when window is leaked.
-        return viewRootImpl != null;
+        return true;
     }
 
     /**
@@ -107,7 +105,29 @@
             throw new IllegalArgumentException(canvas.getClass().getName()
                     + " is not a DisplayList canvas");
         }
-        ((DisplayListCanvas) canvas).callDrawGLFunction2(nativeDrawGLFunctor);
+        ((DisplayListCanvas) canvas).drawGLFunctor2(nativeDrawGLFunctor, null);
+    }
+
+    /**
+     * Calls the function specified with the nativeDrawGLFunctor functor pointer. This
+     * functionality is used by the WebView for calling into their renderer from the
+     * framework display lists.
+     *
+     * @param canvas a hardware accelerated canvas (see {@link Canvas#isHardwareAccelerated()})
+     * @param nativeDrawGLFunctor the pointer to the native functor that implements
+     *        system/core/include/utils/Functor.h
+     * @param releasedRunnable Called when this nativeDrawGLFunctor is no longer referenced by this
+     *        canvas, so is safe to be destroyed.
+     * @throws IllegalArgumentException if the canvas is not hardware accelerated
+     */
+    public void callDrawGlFunction(@NonNull Canvas canvas, long nativeDrawGLFunctor,
+            @Nullable Runnable releasedRunnable) {
+        if (!(canvas instanceof DisplayListCanvas)) {
+            // Canvas#isHardwareAccelerated() is only true for subclasses of HardwareCanvas.
+            throw new IllegalArgumentException(canvas.getClass().getName()
+                    + " is not a DisplayList canvas");
+        }
+        ((DisplayListCanvas) canvas).drawGLFunctor2(nativeDrawGLFunctor, releasedRunnable);
     }
 
     /**
diff --git a/core/java/android/webkit/WebViewFragment.java b/core/java/android/webkit/WebViewFragment.java
index 852878b..d803f62d 100644
--- a/core/java/android/webkit/WebViewFragment.java
+++ b/core/java/android/webkit/WebViewFragment.java
@@ -44,7 +44,7 @@
         if (mWebView != null) {
             mWebView.destroy();
         }
-        mWebView = new WebView(getActivity());
+        mWebView = new WebView(getContext());
         mIsWebViewAvailable = true;
         return mWebView;
     }
diff --git a/core/java/android/widget/AppSecurityPermissions.java b/core/java/android/widget/AppSecurityPermissions.java
index a12b15e..1a1680a 100644
--- a/core/java/android/widget/AppSecurityPermissions.java
+++ b/core/java/android/widget/AppSecurityPermissions.java
@@ -16,6 +16,7 @@
 */
 package android.widget;
 
+import android.annotation.SystemApi;
 import android.os.UserHandle;
 import com.android.internal.R;
 
@@ -80,6 +81,7 @@
     private final CharSequence mNewPermPrefix;
     private String mPackageName;
 
+    /** @hide */
     static class MyPermissionGroupInfo extends PermissionGroupInfo {
         CharSequence mLabel;
 
@@ -104,6 +106,7 @@
         }
     }
 
+    /** @hide */
     private static class MyPermissionInfo extends PermissionInfo {
         CharSequence mLabel;
 
@@ -128,6 +131,7 @@
         }
     }
 
+    /** @hide */
     public static class PermissionItemView extends LinearLayout implements View.OnClickListener {
         MyPermissionGroupInfo mGroup;
         MyPermissionInfo mPerm;
diff --git a/core/java/android/widget/DateTimeView.java b/core/java/android/widget/DateTimeView.java
index d20b924..d2ee866 100644
--- a/core/java/android/widget/DateTimeView.java
+++ b/core/java/android/widget/DateTimeView.java
@@ -16,21 +16,32 @@
 
 package android.widget;
 
+import static android.text.format.DateUtils.DAY_IN_MILLIS;
+import static android.text.format.DateUtils.HOUR_IN_MILLIS;
+import static android.text.format.DateUtils.MINUTE_IN_MILLIS;
+import static android.text.format.DateUtils.YEAR_IN_MILLIS;
+import static android.text.format.Time.getJulianDay;
+
 import android.app.ActivityThread;
+import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
-import android.content.BroadcastReceiver;
+import android.content.res.Configuration;
+import android.content.res.TypedArray;
 import android.database.ContentObserver;
+import android.icu.util.Calendar;
 import android.os.Handler;
 import android.text.format.Time;
 import android.util.AttributeSet;
-import android.util.Log;
 import android.widget.RemoteViews.RemoteView;
 
+import com.android.internal.R;
+
 import java.text.DateFormat;
 import java.util.ArrayList;
 import java.util.Date;
+import java.util.TimeZone;
 
 //
 // TODO
@@ -46,11 +57,6 @@
  */
 @RemoteView
 public class DateTimeView extends TextView {
-    private static final String TAG = "DateTimeView";
-
-    private static final long TWELVE_HOURS_IN_MINUTES = 12 * 60;
-    private static final long TWENTY_FOUR_HOURS_IN_MILLIS = 24 * 60 * 60 * 1000;
-
     private static final int SHOW_TIME = 0;
     private static final int SHOW_MONTH_DAY_YEAR = 1;
 
@@ -62,13 +68,30 @@
 
     private long mUpdateTimeMillis;
     private static final ThreadLocal<ReceiverInfo> sReceiverInfo = new ThreadLocal<ReceiverInfo>();
+    private String mNowText;
+    private boolean mShowRelativeTime;
 
     public DateTimeView(Context context) {
-        super(context);
+        this(context, null);
     }
 
     public DateTimeView(Context context, AttributeSet attrs) {
         super(context, attrs);
+        final TypedArray a = context.obtainStyledAttributes(attrs,
+                com.android.internal.R.styleable.DateTimeView, 0,
+                0);
+
+        final int N = a.getIndexCount();
+        for (int i = 0; i < N; i++) {
+            int attr = a.getIndex(i);
+            switch (attr) {
+                case R.styleable.DateTimeView_showRelative:
+                    boolean relative = a.getBoolean(i, false);
+                    setShowRelativeTime(relative);
+                    break;
+            }
+        }
+        a.recycle();
     }
 
     @Override
@@ -101,12 +124,31 @@
         update();
     }
 
+    @android.view.RemotableViewMethod
+    public void setShowRelativeTime(boolean showRelativeTime) {
+        mShowRelativeTime = showRelativeTime;
+        updateNowText();
+        update();
+    }
+
+    @Override
+    @android.view.RemotableViewMethod
+    public void setVisibility(@Visibility int visibility) {
+        boolean gotVisible = visibility != GONE && getVisibility() == GONE;
+        super.setVisibility(visibility);
+        if (gotVisible) {
+            update();
+        }
+    }
+
     void update() {
-        if (mTime == null) {
+        if (mTime == null || getVisibility() == GONE) {
             return;
         }
-
-        long start = System.nanoTime();
+        if (mShowRelativeTime) {
+            updateRelativeTime();
+            return;
+        }
 
         int display;
         Date time = mTime;
@@ -181,12 +223,105 @@
                         ? twelveHoursBefore : midnightBefore;
             }
         }
-        if (false) {
-            Log.d(TAG, "update needed for '" + time + "' at '" + new Date(mUpdateTimeMillis)
-                    + "' - text=" + text);
-        }
+    }
 
-        long finish = System.nanoTime();
+    private void updateRelativeTime() {
+        long now = System.currentTimeMillis();
+        long duration = Math.abs(now - mTimeMillis);
+        int count;
+        long millisIncrease;
+        boolean past = (now >= mTimeMillis);
+        String result;
+        if (duration < MINUTE_IN_MILLIS) {
+            setText(mNowText);
+            mUpdateTimeMillis = mTimeMillis + MINUTE_IN_MILLIS + 1;
+            return;
+        } else if (duration < HOUR_IN_MILLIS) {
+            count = (int)(duration / MINUTE_IN_MILLIS);
+            result = String.format(getContext().getResources().getQuantityString(past
+                            ? com.android.internal.R.plurals.duration_minutes_shortest
+                            : com.android.internal.R.plurals.duration_minutes_shortest_future,
+                            count),
+                    count);
+            millisIncrease = MINUTE_IN_MILLIS;
+        } else if (duration < DAY_IN_MILLIS) {
+            count = (int)(duration / HOUR_IN_MILLIS);
+            result = String.format(getContext().getResources().getQuantityString(past
+                            ? com.android.internal.R.plurals.duration_hours_shortest
+                            : com.android.internal.R.plurals.duration_hours_shortest_future,
+                            count),
+                    count);
+            millisIncrease = HOUR_IN_MILLIS;
+        } else if (duration < YEAR_IN_MILLIS) {
+            // In weird cases it can become 0 because of daylight savings
+            TimeZone timeZone = TimeZone.getDefault();
+            count = Math.max(Math.abs(dayDistance(timeZone, mTimeMillis, now)), 1);
+            result = String.format(getContext().getResources().getQuantityString(past
+                            ? com.android.internal.R.plurals.duration_days_shortest
+                            : com.android.internal.R.plurals.duration_days_shortest_future,
+                            count),
+                    count);
+            if (past || count != 1) {
+                mUpdateTimeMillis = computeNextMidnight(timeZone);
+                millisIncrease = -1;
+            } else {
+                millisIncrease = DAY_IN_MILLIS;
+            }
+
+        } else {
+            count = (int)(duration / YEAR_IN_MILLIS);
+            result = String.format(getContext().getResources().getQuantityString(past
+                            ? com.android.internal.R.plurals.duration_years_shortest
+                            : com.android.internal.R.plurals.duration_years_shortest_future,
+                            count),
+                    count);
+            millisIncrease = YEAR_IN_MILLIS;
+        }
+        if (millisIncrease != -1) {
+            if (past) {
+                mUpdateTimeMillis = mTimeMillis + millisIncrease * (count + 1) + 1;
+            } else {
+                mUpdateTimeMillis = mTimeMillis - millisIncrease * count + 1;
+            }
+        }
+        setText(result);
+    }
+
+    /**
+     * @param timeZone the timezone we are in
+     * @return the timepoint in millis at UTC at midnight in the current timezone
+     */
+    private long computeNextMidnight(TimeZone timeZone) {
+        Calendar c = Calendar.getInstance();
+        c.setTimeZone(libcore.icu.DateUtilsBridge.icuTimeZone(timeZone));
+        c.add(Calendar.DAY_OF_MONTH, 1);
+        c.set(Calendar.HOUR_OF_DAY, 0);
+        c.set(Calendar.MINUTE, 0);
+        c.set(Calendar.SECOND, 0);
+        c.set(Calendar.MILLISECOND, 0);
+        return c.getTimeInMillis();
+    }
+
+    @Override
+    protected void onConfigurationChanged(Configuration newConfig) {
+        super.onConfigurationChanged(newConfig);
+        updateNowText();
+        update();
+    }
+
+    private void updateNowText() {
+        if (!mShowRelativeTime) {
+            return;
+        }
+        mNowText = getContext().getResources().getString(
+                com.android.internal.R.string.now_string_shortest);
+    }
+
+    // Return the date difference for the two times in a given timezone.
+    private static int dayDistance(TimeZone timeZone, long startTime,
+            long endTime) {
+        return getJulianDay(endTime, timeZone.getOffset(endTime) / 1000)
+                - getJulianDay(startTime, timeZone.getOffset(startTime) / 1000);
     }
 
     private DateFormat getTimeFormat() {
diff --git a/core/java/android/widget/Editor.java b/core/java/android/widget/Editor.java
index 440ef21..106fec0 100644
--- a/core/java/android/widget/Editor.java
+++ b/core/java/android/widget/Editor.java
@@ -77,8 +77,8 @@
 import android.view.ActionMode.Callback;
 import android.view.ContextMenu;
 import android.view.DisplayListCanvas;
+import android.view.DragAndDropPermissions;
 import android.view.DragEvent;
-import android.view.DropPermissions;
 import android.view.Gravity;
 import android.view.InputDevice;
 import android.view.LayoutInflater;
@@ -2379,9 +2379,9 @@
     void onDrop(DragEvent event) {
         StringBuilder content = new StringBuilder("");
 
-        final DropPermissions dropPermissions = DropPermissions.obtain(event);
-        if (dropPermissions != null) {
-            dropPermissions.takeTransient();
+        final DragAndDropPermissions permissions = DragAndDropPermissions.obtain(event);
+        if (permissions != null) {
+            permissions.takeTransient();
         }
 
         try {
@@ -2393,8 +2393,8 @@
             }
         }
         finally {
-            if (dropPermissions != null) {
-                dropPermissions.release();
+            if (permissions != null) {
+                permissions.release();
             }
         }
 
@@ -3251,6 +3251,7 @@
         private final SuggestionSpanInfo mMisspelledSpanInfo = new SuggestionSpanInfo();
         private int mContainerMarginWidth;
         private int mContainerMarginTop;
+        private LinearLayout mContainerView;
 
         private class CustomPopupWindow extends PopupWindow {
             @Override
@@ -3288,20 +3289,19 @@
         protected void initContentView() {
             final LayoutInflater inflater = (LayoutInflater) mTextView.getContext().
                     getSystemService(Context.LAYOUT_INFLATER_SERVICE);
-            final ViewGroup relativeLayout = (ViewGroup) inflater.inflate(
+            mContentView = (ViewGroup) inflater.inflate(
                     mTextView.mTextEditSuggestionContainerLayout, null);
 
-            final LinearLayout suggestionWindowContainer =
-                    (LinearLayout) relativeLayout.findViewById(
-                            com.android.internal.R.id.suggestionWindowContainer);
+            mContainerView = (LinearLayout) mContentView.findViewById(
+                    com.android.internal.R.id.suggestionWindowContainer);
             ViewGroup.MarginLayoutParams lp =
-                    (ViewGroup.MarginLayoutParams) suggestionWindowContainer.getLayoutParams();
+                    (ViewGroup.MarginLayoutParams) mContainerView.getLayoutParams();
             mContainerMarginWidth = lp.leftMargin + lp.rightMargin;
             mContainerMarginTop = lp.topMargin;
             mClippingLimitLeft = lp.leftMargin;
             mClippingLimitRight = lp.rightMargin;
 
-            mSuggestionListView = (ListView) relativeLayout.findViewById(
+            mSuggestionListView = (ListView) mContentView.findViewById(
                     com.android.internal.R.id.suggestionContainer);
 
             mSuggestionsAdapter = new SuggestionAdapter();
@@ -3314,9 +3314,7 @@
                 mSuggestionInfos[i] = new SuggestionInfo();
             }
 
-            mContentView = relativeLayout;
-
-            mAddToDictionaryButton = (TextView) relativeLayout.findViewById(
+            mAddToDictionaryButton = (TextView) mContentView.findViewById(
                     com.android.internal.R.id.addToDictionaryButton);
             mAddToDictionaryButton.setOnClickListener(new View.OnClickListener() {
                 public void onClick(View v) {
@@ -3349,7 +3347,7 @@
                 }
             });
 
-            mDeleteButton = (TextView) relativeLayout.findViewById(
+            mDeleteButton = (TextView) mContentView.findViewById(
                     com.android.internal.R.id.deleteButton);
             mDeleteButton.setOnClickListener(new View.OnClickListener() {
                 public void onClick(View v) {
@@ -3461,7 +3459,8 @@
             mDeleteButton.measure(horizontalMeasure, verticalMeasure);
             width = Math.max(width, mDeleteButton.getMeasuredWidth());
 
-            width += mContainerMarginWidth;
+            width += mContainerView.getPaddingLeft() + mContainerView.getPaddingRight()
+                    + mContainerMarginWidth;
 
             // Enforce the width based on actual text widths
             mContentView.measure(
diff --git a/core/java/android/widget/FrameLayout.java b/core/java/android/widget/FrameLayout.java
index 9ac4917..029313c 100644
--- a/core/java/android/widget/FrameLayout.java
+++ b/core/java/android/widget/FrameLayout.java
@@ -417,22 +417,28 @@
      */
     public static class LayoutParams extends MarginLayoutParams {
         /**
+         * Value for {@link #gravity} indicating that a gravity has not been
+         * explicitly specified.
+         */
+        public static final int UNSPECIFIED_GRAVITY = -1;
+
+        /**
          * The gravity to apply with the View to which these layout parameters
          * are associated.
          * <p>
-         * The default value is {@code Gravity.TOP | Gravity.START}
+         * The default value is {@link #UNSPECIFIED_GRAVITY}, which is treated
+         * by FrameLayout as {@code Gravity.TOP | Gravity.START}.
          *
          * @see android.view.Gravity
          * @attr ref android.R.styleable#FrameLayout_Layout_layout_gravity
          */
-        public int gravity = DEFAULT_CHILD_GRAVITY;
+        public int gravity = UNSPECIFIED_GRAVITY;
 
         public LayoutParams(@NonNull Context c, @Nullable AttributeSet attrs) {
             super(c, attrs);
 
             final TypedArray a = c.obtainStyledAttributes(attrs, R.styleable.FrameLayout_Layout);
-            gravity = a.getInt(R.styleable.FrameLayout_Layout_layout_gravity,
-                    DEFAULT_CHILD_GRAVITY);
+            gravity = a.getInt(R.styleable.FrameLayout_Layout_layout_gravity, UNSPECIFIED_GRAVITY);
             a.recycle();
         }
 
diff --git a/core/java/android/widget/PopupWindow.java b/core/java/android/widget/PopupWindow.java
index bb883ea..1ab7a00 100644
--- a/core/java/android/widget/PopupWindow.java
+++ b/core/java/android/widget/PopupWindow.java
@@ -54,6 +54,8 @@
 
 import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_LAYOUT_CHILD_WINDOW_IN_PARENT_FRAME;
 import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_WILL_NOT_REPLACE_ON_RELAUNCH;
+import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
+import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT;
 
 /**
  * <p>
@@ -1305,15 +1307,15 @@
     private PopupBackgroundView createBackgroundView(View contentView) {
         final ViewGroup.LayoutParams layoutParams = mContentView.getLayoutParams();
         final int height;
-        if (layoutParams != null && layoutParams.height == ViewGroup.LayoutParams.WRAP_CONTENT) {
-            height = ViewGroup.LayoutParams.WRAP_CONTENT;
+        if (layoutParams != null && layoutParams.height == WRAP_CONTENT) {
+            height = WRAP_CONTENT;
         } else {
-            height = ViewGroup.LayoutParams.MATCH_PARENT;
+            height = MATCH_PARENT;
         }
 
         final PopupBackgroundView backgroundView = new PopupBackgroundView(mContext);
         final PopupBackgroundView.LayoutParams listParams = new PopupBackgroundView.LayoutParams(
-                ViewGroup.LayoutParams.MATCH_PARENT, height);
+                MATCH_PARENT, height);
         backgroundView.addView(contentView, listParams);
 
         return backgroundView;
@@ -1328,14 +1330,14 @@
     private PopupDecorView createDecorView(View contentView) {
         final ViewGroup.LayoutParams layoutParams = mContentView.getLayoutParams();
         final int height;
-        if (layoutParams != null && layoutParams.height == ViewGroup.LayoutParams.WRAP_CONTENT) {
-            height = ViewGroup.LayoutParams.WRAP_CONTENT;
+        if (layoutParams != null && layoutParams.height == WRAP_CONTENT) {
+            height = WRAP_CONTENT;
         } else {
-            height = ViewGroup.LayoutParams.MATCH_PARENT;
+            height = MATCH_PARENT;
         }
 
         final PopupDecorView decorView = new PopupDecorView(mContext);
-        decorView.addView(contentView, ViewGroup.LayoutParams.MATCH_PARENT, height);
+        decorView.addView(contentView, MATCH_PARENT, height);
         decorView.setClipChildren(false);
         decorView.setClipToPadding(false);
 
@@ -1522,14 +1524,17 @@
         // to fill in real width and height values.
         final Rect displayFrame = new Rect();
         anchor.getWindowVisibleDisplayFrame(displayFrame);
-        if (width < 0) {
+        if (width == MATCH_PARENT) {
             width = displayFrame.right - displayFrame.left;
+        } else if (width == WRAP_CONTENT) {
+            width = mContentView.getMeasuredWidth();
         }
-        if (height < 0) {
+        if (height == MATCH_PARENT) {
             height = displayFrame.bottom - displayFrame.top;
+        } else if (height == WRAP_CONTENT) {
+            height = mContentView.getMeasuredHeight();
         }
 
-
         // If we need to adjust for gravity RIGHT, align to the bottom-right
         // corner of the anchor (still accounting for offsets).
         final int hgrav = Gravity.getAbsoluteGravity(gravity, anchor.getLayoutDirection())
@@ -1583,9 +1588,10 @@
     private boolean tryFitVertical(@NonNull LayoutParams outParams, int yOffset, int height,
             int anchorHeight, int drawingLocationY, int screenLocationY, int displayFrameTop,
             int displayFrameBottom, boolean allowResize) {
-        final int anchorTopInScreen = screenLocationY + anchorHeight + yOffset;
+        final int winOffsetY = screenLocationY - drawingLocationY;
+        final int anchorTopInScreen = outParams.y + winOffsetY;
         final int spaceBelow = displayFrameBottom - anchorTopInScreen;
-        if (height <= spaceBelow) {
+        if (anchorTopInScreen >= 0 && height <= spaceBelow) {
             return true;
         }
 
@@ -1644,9 +1650,10 @@
     private boolean tryFitHorizontal(@NonNull LayoutParams outParams, int xOffset, int width,
             int anchorWidth, int drawingLocationX, int screenLocationX, int displayFrameLeft,
             int displayFrameRight, boolean allowResize) {
-        final int anchorLeftInScreen = screenLocationX + xOffset;
+        final int winOffsetX = screenLocationX - drawingLocationX;
+        final int anchorLeftInScreen = outParams.x + winOffsetX;
         final int spaceRight = displayFrameRight - anchorLeftInScreen;
-        if (width <= spaceRight) {
+        if (anchorLeftInScreen >= 0 && width <= spaceRight) {
             return true;
         }
 
diff --git a/core/java/android/widget/ProgressBar.java b/core/java/android/widget/ProgressBar.java
index 9c9784b..3c967ac 100644
--- a/core/java/android/widget/ProgressBar.java
+++ b/core/java/android/widget/ProgressBar.java
@@ -1397,6 +1397,10 @@
     /**
      * Sets the current progress to the specified value. Does not do anything
      * if the progress bar is in indeterminate mode.
+     * <p>
+     * This method will immediately update the visual position of the progress
+     * indicator. To animate the visual position to the target value, use
+     * {@link #setProgress(int, boolean)}}.
      *
      * @param progress the new progress, between 0 and {@link #getMax()}
      *
@@ -1412,7 +1416,7 @@
 
     /**
      * Sets the current progress to the specified value, optionally animating
-     * between the current and target values.
+     * the visual position between the current and target values.
      * <p>
      * Animation does not affect the result of {@link #getProgress()}, which
      * will return the target value immediately after this method is called.
diff --git a/core/java/android/widget/RadialTimePickerView.java b/core/java/android/widget/RadialTimePickerView.java
index 24d2c8e..8c8d38f 100644
--- a/core/java/android/widget/RadialTimePickerView.java
+++ b/core/java/android/widget/RadialTimePickerView.java
@@ -563,10 +563,23 @@
         return minute * DEGREES_FOR_ONE_MINUTE;
     }
 
-    public void setAmOrPm(int val) {
-        mAmOrPm = (val % 2);
+    /**
+     * Sets whether the picker is showing AM or PM hours. Has no effect when
+     * in 24-hour mode.
+     *
+     * @param amOrPm {@link #AM} or {@link #PM}
+     * @return {@code true} if the value changed from what was previously set,
+     *         or {@code false} otherwise
+     */
+    public boolean setAmOrPm(int amOrPm) {
+        if (mAmOrPm == amOrPm || mIs24HourMode) {
+            return false;
+        }
+
+        mAmOrPm = amOrPm;
         invalidate();
         mTouchHelper.invalidateRoot();
+        return true;
     }
 
     public int getAmOrPm() {
diff --git a/core/java/android/widget/RemoteViews.java b/core/java/android/widget/RemoteViews.java
index a9b7f4e..6dc5ff7 100644
--- a/core/java/android/widget/RemoteViews.java
+++ b/core/java/android/widget/RemoteViews.java
@@ -2600,7 +2600,7 @@
      *               simply display the timer value.
      * @param started True if you want the clock to be started, false if not.
      *
-     * @see #setChronometerCountsDown(int, boolean)
+     * @see #setChronometerCountDown(int, boolean)
      */
     public void setChronometer(int viewId, long base, String format, boolean started) {
         setLong(viewId, "setBase", base);
@@ -2616,7 +2616,7 @@
      * @param isCountDown True if you want the chronometer to count down to base instead of
      *                    counting up.
      */
-    public void setChronometerCountsDown(int viewId, boolean isCountDown) {
+    public void setChronometerCountDown(int viewId, boolean isCountDown) {
         setBoolean(viewId, "setCountDown", isCountDown);
     }
 
diff --git a/core/java/android/widget/SearchView.java b/core/java/android/widget/SearchView.java
index 9a4d69f..5878cad 100644
--- a/core/java/android/widget/SearchView.java
+++ b/core/java/android/widget/SearchView.java
@@ -53,7 +53,10 @@
 import android.view.CollapsibleActionView;
 import android.view.KeyEvent;
 import android.view.LayoutInflater;
+import android.view.MotionEvent;
+import android.view.TouchDelegate;
 import android.view.View;
+import android.view.ViewConfiguration;
 import android.view.inputmethod.EditorInfo;
 import android.view.inputmethod.InputMethodManager;
 import android.widget.AdapterView.OnItemClickListener;
@@ -111,6 +114,12 @@
     private final ImageView mVoiceButton;
     private final View mDropDownAnchor;
 
+    private UpdatableTouchDelegate mTouchDelegate;
+    private Rect mSearchSrcTextViewBounds = new Rect();
+    private Rect mSearchSrtTextViewBoundsExpanded = new Rect();
+    private int[] mTemp = new int[2];
+    private int[] mTemp2 = new int[2];
+
     /** Icon optionally displayed when the SearchView is collapsed. */
     private final ImageView mCollapsedIcon;
 
@@ -801,7 +810,48 @@
             break;
         }
         widthMode = MeasureSpec.EXACTLY;
-        super.onMeasure(MeasureSpec.makeMeasureSpec(width, widthMode), heightMeasureSpec);
+
+        int heightMode = MeasureSpec.getMode(heightMeasureSpec);
+        int height = MeasureSpec.getSize(heightMeasureSpec);
+
+        switch (heightMode) {
+            case MeasureSpec.AT_MOST:
+            case MeasureSpec.UNSPECIFIED:
+                height = Math.min(getPreferredHeight(), height);
+                break;
+        }
+        heightMode = MeasureSpec.EXACTLY;
+
+        super.onMeasure(MeasureSpec.makeMeasureSpec(width, widthMode),
+                MeasureSpec.makeMeasureSpec(height, heightMode));
+    }
+
+    @Override
+    protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
+        super.onLayout(changed, left, top, right, bottom);
+
+        if (changed) {
+            // Expand mSearchSrcTextView touch target to be the height of the parent in order to
+            // allow it to be up to 48dp.
+            getChildBoundsWithinSearchView(mSearchSrcTextView, mSearchSrcTextViewBounds);
+            mSearchSrtTextViewBoundsExpanded.set(
+                    mSearchSrcTextViewBounds.left, 0, mSearchSrcTextViewBounds.right, bottom - top);
+            if (mTouchDelegate == null) {
+                mTouchDelegate = new UpdatableTouchDelegate(mSearchSrtTextViewBoundsExpanded,
+                        mSearchSrcTextViewBounds, mSearchSrcTextView);
+                setTouchDelegate(mTouchDelegate);
+            } else {
+                mTouchDelegate.setBounds(mSearchSrtTextViewBoundsExpanded, mSearchSrcTextViewBounds);
+            }
+        }
+    }
+
+    private void getChildBoundsWithinSearchView(View view, Rect rect) {
+        view.getLocationInWindow(mTemp);
+        getLocationInWindow(mTemp2);
+        final int top = mTemp[1] - mTemp2[1];
+        final int left = mTemp[0] - mTemp2[0];
+        rect.set(left , top, left + view.getWidth(), top + view.getHeight());
     }
 
     private int getPreferredWidth() {
@@ -809,6 +859,11 @@
                 .getDimensionPixelSize(R.dimen.search_view_preferred_width);
     }
 
+    private int getPreferredHeight() {
+        return getContext().getResources()
+                .getDimensionPixelSize(R.dimen.search_view_preferred_height);
+    }
+
     private void updateViewsVisibility(final boolean collapsed) {
         mIconified = collapsed;
         // Visibility of views that are visible when collapsed
@@ -1749,6 +1804,101 @@
         }
     };
 
+    private static class UpdatableTouchDelegate extends TouchDelegate {
+        /**
+         * View that should receive forwarded touch events
+         */
+        private final View mDelegateView;
+
+        /**
+         * Bounds in local coordinates of the containing view that should be mapped to the delegate
+         * view. This rect is used for initial hit testing.
+         */
+        private final Rect mTargetBounds;
+
+        /**
+         * Bounds in local coordinates of the containing view that are actual bounds of the delegate
+         * view. This rect is used for event coordinate mapping.
+         */
+        private final Rect mActualBounds;
+
+        /**
+         * mTargetBounds inflated to include some slop. This rect is to track whether the motion events
+         * should be considered to be be within the delegate view.
+         */
+        private final Rect mSlopBounds;
+
+        private final int mSlop;
+
+        /**
+         * True if the delegate had been targeted on a down event (intersected mTargetBounds).
+         */
+        private boolean mDelegateTargeted;
+
+        public UpdatableTouchDelegate(Rect targetBounds, Rect actualBounds, View delegateView) {
+            super(targetBounds, delegateView);
+            mSlop = ViewConfiguration.get(delegateView.getContext()).getScaledTouchSlop();
+            mTargetBounds = new Rect();
+            mSlopBounds = new Rect();
+            mActualBounds = new Rect();
+            setBounds(targetBounds, actualBounds);
+            mDelegateView = delegateView;
+        }
+
+        public void setBounds(Rect desiredBounds, Rect actualBounds) {
+            mTargetBounds.set(desiredBounds);
+            mSlopBounds.set(desiredBounds);
+            mSlopBounds.inset(-mSlop, -mSlop);
+            mActualBounds.set(actualBounds);
+        }
+
+        @Override
+        public boolean onTouchEvent(MotionEvent event) {
+            final int x = (int) event.getX();
+            final int y = (int) event.getY();
+            boolean sendToDelegate = false;
+            boolean hit = true;
+            boolean handled = false;
+
+            switch (event.getAction()) {
+                case MotionEvent.ACTION_DOWN:
+                    if (mTargetBounds.contains(x, y)) {
+                        mDelegateTargeted = true;
+                        sendToDelegate = true;
+                    }
+                    break;
+                case MotionEvent.ACTION_UP:
+                case MotionEvent.ACTION_MOVE:
+                    sendToDelegate = mDelegateTargeted;
+                    if (sendToDelegate) {
+                        if (!mSlopBounds.contains(x, y)) {
+                            hit = false;
+                        }
+                    }
+                    break;
+                case MotionEvent.ACTION_CANCEL:
+                    sendToDelegate = mDelegateTargeted;
+                    mDelegateTargeted = false;
+                    break;
+            }
+            if (sendToDelegate) {
+                if (hit && !mActualBounds.contains(x, y)) {
+                    // Offset event coordinates to be in the center of the target view since we
+                    // are within the targetBounds, but not inside the actual bounds of
+                    // mDelegateView
+                    event.setLocation(mDelegateView.getWidth() / 2,
+                            mDelegateView.getHeight() / 2);
+                } else {
+                    // Offset event coordinates to the target view coordinates.
+                    event.setLocation(x - mActualBounds.left, y - mActualBounds.top);
+                }
+
+                handled = mDelegateView.dispatchTouchEvent(event);
+            }
+            return handled;
+        }
+    }
+
     /**
      * Local subclass for AutoCompleteTextView.
      * @hide
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
index 48fd58b..3216fba 100644
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -1591,6 +1591,7 @@
         }
     }
 
+    @android.view.RemotableViewMethod
     @Override
     public void setEnabled(boolean enabled) {
         if (enabled == isEnabled()) {
@@ -7310,7 +7311,7 @@
         // If we have a fixed width, we can just swap in a new text layout
         // if the text height stays the same or if the view height is fixed.
 
-        if ((mLayoutParams.width != LayoutParams.WRAP_CONTENT ||
+        if (((mLayoutParams.width != LayoutParams.WRAP_CONTENT && mLayoutParams.width != 0) ||
                 (mMaxWidthMode == mMinWidthMode && mMaxWidth == mMinWidth)) &&
                 (mHint == null || mHintLayout != null) &&
                 (mRight - mLeft - getCompoundPaddingLeft() - getCompoundPaddingRight() > 0)) {
diff --git a/core/java/android/widget/TimePickerClockDelegate.java b/core/java/android/widget/TimePickerClockDelegate.java
index 0c3892d..b6200a1 100644
--- a/core/java/android/widget/TimePickerClockDelegate.java
+++ b/core/java/android/widget/TimePickerClockDelegate.java
@@ -701,7 +701,10 @@
 
     private void setAmOrPm(int amOrPm) {
         updateAmPmLabelStates(amOrPm);
-        mRadialTimePickerView.setAmOrPm(amOrPm);
+
+        if (mRadialTimePickerView.setAmOrPm(amOrPm) && mOnTimeChangedListener != null) {
+            mOnTimeChangedListener.onTimeChanged(mDelegator, getHour(), getMinute());
+        }
     }
 
     private final OnValueChangedListener mDigitEnteredListener = new OnValueChangedListener() {
diff --git a/core/java/com/android/internal/app/IBatteryStats.aidl b/core/java/com/android/internal/app/IBatteryStats.aidl
index 8e38c5a..a2a135b 100644
--- a/core/java/com/android/internal/app/IBatteryStats.aidl
+++ b/core/java/com/android/internal/app/IBatteryStats.aidl
@@ -18,10 +18,13 @@
 
 import com.android.internal.os.BatteryStatsImpl;
 
+import android.bluetooth.BluetoothActivityEnergyInfo;
+import android.net.wifi.WifiActivityEnergyInfo;
 import android.os.ParcelFileDescriptor;
 import android.os.WorkSource;
 import android.os.health.HealthStatsParceler;
 import android.telephony.DataConnectionRealTimeInfo;
+import android.telephony.ModemActivityInfo;
 import android.telephony.SignalStrength;
 
 interface IBatteryStats {
@@ -129,4 +132,8 @@
 
     HealthStatsParceler takeUidSnapshot(int uid);
     HealthStatsParceler[] takeUidSnapshots(in int[] uid);
+
+    oneway void noteBluetoothControllerActivity(in BluetoothActivityEnergyInfo info);
+    oneway void noteModemControllerActivity(in ModemActivityInfo info);
+    oneway void noteWifiControllerActivity(in WifiActivityEnergyInfo info);
 }
diff --git a/core/java/com/android/internal/app/LocaleStore.java b/core/java/com/android/internal/app/LocaleStore.java
index 7803e52..e3fce51 100644
--- a/core/java/com/android/internal/app/LocaleStore.java
+++ b/core/java/com/android/internal/app/LocaleStore.java
@@ -126,12 +126,18 @@
             return mFullCountryNameNative;
         }
 
+        String getFullCountryNameInUiLanguage() {
+            // We don't cache the UI name because the default locale keeps changing
+            return LocaleHelper.getDisplayCountry(mLocale);
+        }
+
         /** Returns the name of the locale in the language of the UI.
          * It is used for search, but never shown.
          * For instance German will show as "Deutsch" in the list, but we will also search for
          * "allemand" if the system UI is in French.
          */
         public String getFullNameInUiLanguage() {
+            // We don't cache the UI name because the default locale keeps changing
             return LocaleHelper.getDisplayName(mLocale, true /* sentence case */);
         }
 
@@ -154,6 +160,14 @@
             }
         }
 
+        String getContentDescription(boolean countryMode) {
+            if (countryMode) {
+                return getFullCountryNameInUiLanguage();
+            } else {
+                return getFullNameInUiLanguage();
+            }
+        }
+
         public boolean getChecked() {
             return mIsChecked;
         }
diff --git a/core/java/com/android/internal/app/MediaRouteControllerDialogFragment.java b/core/java/com/android/internal/app/MediaRouteControllerDialogFragment.java
index 108e81f..466c015 100644
--- a/core/java/com/android/internal/app/MediaRouteControllerDialogFragment.java
+++ b/core/java/com/android/internal/app/MediaRouteControllerDialogFragment.java
@@ -55,6 +55,6 @@
 
     @Override
     public Dialog onCreateDialog(Bundle savedInstanceState) {
-        return onCreateControllerDialog(getActivity(), savedInstanceState);
+        return onCreateControllerDialog(getContext(), savedInstanceState);
     }
 }
diff --git a/core/java/com/android/internal/app/SuggestedLocaleAdapter.java b/core/java/com/android/internal/app/SuggestedLocaleAdapter.java
index e2d29e3..a4b5a8e 100644
--- a/core/java/com/android/internal/app/SuggestedLocaleAdapter.java
+++ b/core/java/com/android/internal/app/SuggestedLocaleAdapter.java
@@ -159,6 +159,7 @@
                 LocaleStore.LocaleInfo item = (LocaleStore.LocaleInfo) getItem(position);
                 text.setText(item.getLabel(mCountryMode));
                 text.setTextLocale(item.getLocale());
+                text.setContentDescription(item.getContentDescription(mCountryMode));
                 if (mCountryMode) {
                     int layoutDir = TextUtils.getLayoutDirectionFromLocale(item.getParent());
                     //noinspection ResourceType
diff --git a/core/java/com/android/internal/app/UnlaunchableAppActivity.java b/core/java/com/android/internal/app/UnlaunchableAppActivity.java
index 27588e9..d24cefe 100644
--- a/core/java/com/android/internal/app/UnlaunchableAppActivity.java
+++ b/core/java/com/android/internal/app/UnlaunchableAppActivity.java
@@ -107,9 +107,8 @@
     @Override
     public void onClick(DialogInterface dialog, int which) {
         if (mReason == UNLAUNCHABLE_REASON_QUIET_MODE && which == DialogInterface.BUTTON_POSITIVE) {
-            UserManager.get(this).setQuietModeEnabled(mUserId, false);
-
-            if (mTarget != null) {
+            if (UserManager.get(this).trySetQuietModeDisabled(mUserId, mTarget)
+                    && mTarget != null) {
                 try {
                     startIntentSenderForResult(mTarget, -1, null, 0, 0, 0);
                 } catch (IntentSender.SendIntentException e) {
diff --git a/core/java/com/android/internal/inputmethod/InputMethodSubtypeHandle.java b/core/java/com/android/internal/inputmethod/InputMethodSubtypeHandle.java
index 975021e8..04d7f9b 100644
--- a/core/java/com/android/internal/inputmethod/InputMethodSubtypeHandle.java
+++ b/core/java/com/android/internal/inputmethod/InputMethodSubtypeHandle.java
@@ -16,6 +16,7 @@
 
 package com.android.internal.inputmethod;
 
+import android.annotation.Nullable;
 import android.text.TextUtils;
 import android.view.inputmethod.InputMethodInfo;
 import android.view.inputmethod.InputMethodSubtype;
@@ -26,12 +27,12 @@
     private final String mInputMethodId;
     private final int mSubtypeId;
 
-    public InputMethodSubtypeHandle(InputMethodInfo info, InputMethodSubtype subtype) {
+    public InputMethodSubtypeHandle(InputMethodInfo info, @Nullable InputMethodSubtype subtype) {
         mInputMethodId = info.getId();
         if (subtype != null) {
             mSubtypeId = subtype.hashCode();
         } else {
-            mSubtypeId = 0;
+            mSubtypeId = InputMethodUtils.NOT_A_SUBTYPE_ID;
         }
     }
 
diff --git a/core/java/com/android/internal/inputmethod/InputMethodUtils.java b/core/java/com/android/internal/inputmethod/InputMethodUtils.java
index f3ae688..6dc0c60 100644
--- a/core/java/com/android/internal/inputmethod/InputMethodUtils.java
+++ b/core/java/com/android/internal/inputmethod/InputMethodUtils.java
@@ -972,7 +972,7 @@
         private int getInt(final String key, final int defaultValue) {
             if (mCopyOnWrite && mCopyOnWriteDataStore.containsKey(key)) {
                 final String result = mCopyOnWriteDataStore.get(key);
-                return result != null ? Integer.valueOf(result) : 0;
+                return result != null ? Integer.parseInt(result) : 0;
             }
             return Settings.Secure.getIntForUser(mResolver, key, defaultValue, mCurrentUserId);
         }
@@ -1273,7 +1273,7 @@
                             if (s.equals(subtypeHashCode)) {
                                 // If both imeId and subtypeId are enabled, return subtypeId.
                                 try {
-                                    final int hashCode = Integer.valueOf(subtypeHashCode);
+                                    final int hashCode = Integer.parseInt(subtypeHashCode);
                                     // Check whether the subtype id is valid or not
                                     if (isValidSubtypeId(imi, hashCode)) {
                                         return s;
diff --git a/core/java/com/android/internal/net/VpnProfile.java b/core/java/com/android/internal/net/VpnProfile.java
index 01349bb..5c92f3c 100644
--- a/core/java/com/android/internal/net/VpnProfile.java
+++ b/core/java/com/android/internal/net/VpnProfile.java
@@ -125,7 +125,7 @@
 
             VpnProfile profile = new VpnProfile(key);
             profile.name = values[0];
-            profile.type = Integer.valueOf(values[1]);
+            profile.type = Integer.parseInt(values[1]);
             if (profile.type < 0 || profile.type > TYPE_MAX) {
                 return null;
             }
diff --git a/core/java/com/android/internal/os/BatteryStatsHelper.java b/core/java/com/android/internal/os/BatteryStatsHelper.java
index 1b52146..27ffb8b 100644
--- a/core/java/com/android/internal/os/BatteryStatsHelper.java
+++ b/core/java/com/android/internal/os/BatteryStatsHelper.java
@@ -94,14 +94,14 @@
 
     private int mStatsType = BatteryStats.STATS_SINCE_CHARGED;
 
-    long mRawRealtime;
-    long mRawUptime;
-    long mBatteryRealtime;
-    long mBatteryUptime;
-    long mTypeBatteryRealtime;
-    long mTypeBatteryUptime;
-    long mBatteryTimeRemaining;
-    long mChargeTimeRemaining;
+    long mRawRealtimeUs;
+    long mRawUptimeUs;
+    long mBatteryRealtimeUs;
+    long mBatteryUptimeUs;
+    long mTypeBatteryRealtimeUs;
+    long mTypeBatteryUptimeUs;
+    long mBatteryTimeRemainingUs;
+    long mChargeTimeRemainingUs;
 
     private long mStatsPeriod = 0;
 
@@ -389,22 +389,22 @@
         mFlashlightPowerCalculator.reset();
 
         mStatsType = statsType;
-        mRawUptime = rawUptimeUs;
-        mRawRealtime = rawRealtimeUs;
-        mBatteryUptime = mStats.getBatteryUptime(rawUptimeUs);
-        mBatteryRealtime = mStats.getBatteryRealtime(rawRealtimeUs);
-        mTypeBatteryUptime = mStats.computeBatteryUptime(rawUptimeUs, mStatsType);
-        mTypeBatteryRealtime = mStats.computeBatteryRealtime(rawRealtimeUs, mStatsType);
-        mBatteryTimeRemaining = mStats.computeBatteryTimeRemaining(rawRealtimeUs);
-        mChargeTimeRemaining = mStats.computeChargeTimeRemaining(rawRealtimeUs);
+        mRawUptimeUs = rawUptimeUs;
+        mRawRealtimeUs = rawRealtimeUs;
+        mBatteryUptimeUs = mStats.getBatteryUptime(rawUptimeUs);
+        mBatteryRealtimeUs = mStats.getBatteryRealtime(rawRealtimeUs);
+        mTypeBatteryUptimeUs = mStats.computeBatteryUptime(rawUptimeUs, mStatsType);
+        mTypeBatteryRealtimeUs = mStats.computeBatteryRealtime(rawRealtimeUs, mStatsType);
+        mBatteryTimeRemainingUs = mStats.computeBatteryTimeRemaining(rawRealtimeUs);
+        mChargeTimeRemainingUs = mStats.computeChargeTimeRemaining(rawRealtimeUs);
 
         if (DEBUG) {
             Log.d(TAG, "Raw time: realtime=" + (rawRealtimeUs/1000) + " uptime="
                     + (rawUptimeUs/1000));
-            Log.d(TAG, "Battery time: realtime=" + (mBatteryRealtime/1000) + " uptime="
-                    + (mBatteryUptime/1000));
-            Log.d(TAG, "Battery type time: realtime=" + (mTypeBatteryRealtime/1000) + " uptime="
-                    + (mTypeBatteryUptime/1000));
+            Log.d(TAG, "Battery time: realtime=" + (mBatteryRealtimeUs /1000) + " uptime="
+                    + (mBatteryUptimeUs /1000));
+            Log.d(TAG, "Battery type time: realtime=" + (mTypeBatteryRealtimeUs /1000) + " uptime="
+                    + (mTypeBatteryUptimeUs /1000));
         }
         mMinDrainedPower = (mStats.getLowDischargeAmountSinceCharge()
                 * mPowerProfile.getBatteryCapacity()) / 100;
@@ -489,7 +489,7 @@
 
     private void processAppUsage(SparseArray<UserHandle> asUsers) {
         final boolean forAllUsers = (asUsers.get(UserHandle.USER_ALL) != null);
-        mStatsPeriod = mTypeBatteryRealtime;
+        mStatsPeriod = mTypeBatteryRealtimeUs;
 
         BatterySipper osSipper = null;
         final SparseArray<? extends Uid> uidStats = mStats.getUidStats();
@@ -498,14 +498,14 @@
             final Uid u = uidStats.valueAt(iu);
             final BatterySipper app = new BatterySipper(BatterySipper.DrainType.APP, u, 0);
 
-            mCpuPowerCalculator.calculateApp(app, u, mRawRealtime, mRawUptime, mStatsType);
-            mWakelockPowerCalculator.calculateApp(app, u, mRawRealtime, mRawUptime, mStatsType);
-            mMobileRadioPowerCalculator.calculateApp(app, u, mRawRealtime, mRawUptime, mStatsType);
-            mWifiPowerCalculator.calculateApp(app, u, mRawRealtime, mRawUptime, mStatsType);
-            mBluetoothPowerCalculator.calculateApp(app, u, mRawRealtime, mRawUptime, mStatsType);
-            mSensorPowerCalculator.calculateApp(app, u, mRawRealtime, mRawUptime, mStatsType);
-            mCameraPowerCalculator.calculateApp(app, u, mRawRealtime, mRawUptime, mStatsType);
-            mFlashlightPowerCalculator.calculateApp(app, u, mRawRealtime, mRawUptime, mStatsType);
+            mCpuPowerCalculator.calculateApp(app, u, mRawRealtimeUs, mRawUptimeUs, mStatsType);
+            mWakelockPowerCalculator.calculateApp(app, u, mRawRealtimeUs, mRawUptimeUs, mStatsType);
+            mMobileRadioPowerCalculator.calculateApp(app, u, mRawRealtimeUs, mRawUptimeUs, mStatsType);
+            mWifiPowerCalculator.calculateApp(app, u, mRawRealtimeUs, mRawUptimeUs, mStatsType);
+            mBluetoothPowerCalculator.calculateApp(app, u, mRawRealtimeUs, mRawUptimeUs, mStatsType);
+            mSensorPowerCalculator.calculateApp(app, u, mRawRealtimeUs, mRawUptimeUs, mStatsType);
+            mCameraPowerCalculator.calculateApp(app, u, mRawRealtimeUs, mRawUptimeUs, mStatsType);
+            mFlashlightPowerCalculator.calculateApp(app, u, mRawRealtimeUs, mRawUptimeUs, mStatsType);
 
             final double totalPower = app.sumPower();
             if (DEBUG && totalPower != 0) {
@@ -547,14 +547,14 @@
             // The device has probably been awake for longer than the screen on
             // time and application wake lock time would account for.  Assign
             // this remainder to the OS, if possible.
-            mWakelockPowerCalculator.calculateRemaining(osSipper, mStats, mRawRealtime,
-                                                        mRawUptime, mStatsType);
+            mWakelockPowerCalculator.calculateRemaining(osSipper, mStats, mRawRealtimeUs,
+                    mRawUptimeUs, mStatsType);
             osSipper.sumPower();
         }
     }
 
     private void addPhoneUsage() {
-        long phoneOnTimeMs = mStats.getPhoneOnTime(mRawRealtime, mStatsType) / 1000;
+        long phoneOnTimeMs = mStats.getPhoneOnTime(mRawRealtimeUs, mStatsType) / 1000;
         double phoneOnPower = mPowerProfile.getAveragePower(PowerProfile.POWER_RADIO_ACTIVE)
                 * phoneOnTimeMs / (60*60*1000);
         if (phoneOnPower != 0) {
@@ -562,16 +562,19 @@
         }
     }
 
+    /**
+     * Screen power is the additional power the screen takes while the device is running.
+     */
     private void addScreenUsage() {
         double power = 0;
-        long screenOnTimeMs = mStats.getScreenOnTime(mRawRealtime, mStatsType) / 1000;
+        long screenOnTimeMs = mStats.getScreenOnTime(mRawRealtimeUs, mStatsType) / 1000;
         power += screenOnTimeMs * mPowerProfile.getAveragePower(PowerProfile.POWER_SCREEN_ON);
         final double screenFullPower =
                 mPowerProfile.getAveragePower(PowerProfile.POWER_SCREEN_FULL);
         for (int i = 0; i < BatteryStats.NUM_SCREEN_BRIGHTNESS_BINS; i++) {
             double screenBinPower = screenFullPower * (i + 0.5f)
                     / BatteryStats.NUM_SCREEN_BRIGHTNESS_BINS;
-            long brightnessTime = mStats.getScreenBrightnessTime(i, mRawRealtime, mStatsType)
+            long brightnessTime = mStats.getScreenBrightnessTime(i, mRawRealtimeUs, mStatsType)
                     / 1000;
             double p = screenBinPower*brightnessTime;
             if (DEBUG && p != 0) {
@@ -588,7 +591,7 @@
 
     private void addRadioUsage() {
         BatterySipper radio = new BatterySipper(BatterySipper.DrainType.CELL, null, 0);
-        mMobileRadioPowerCalculator.calculateRemaining(radio, mStats, mRawRealtime, mRawUptime,
+        mMobileRadioPowerCalculator.calculateRemaining(radio, mStats, mRawRealtimeUs, mRawUptimeUs,
                 mStatsType);
         radio.sumPower();
         if (radio.totalPowerMah > 0) {
@@ -606,16 +609,26 @@
         bs.sumPower();
     }
 
+    /**
+     * Calculate the baseline power usage for the device when it is in suspend and idle.
+     * The device is drawing POWER_CPU_IDLE power at its lowest power state.
+     * The device is drawing POWER_CPU_IDLE + POWER_CPU_AWAKE power when a wakelock is held.
+     */
     private void addIdleUsage() {
-        long idleTimeMs = (mTypeBatteryRealtime
-                - mStats.getScreenOnTime(mRawRealtime, mStatsType)) / 1000;
-        double idlePower = (idleTimeMs * mPowerProfile.getAveragePower(PowerProfile.POWER_CPU_IDLE))
-                / (60*60*1000);
-        if (DEBUG && idlePower != 0) {
-            Log.d(TAG, "Idle: time=" + idleTimeMs + " power=" + makemAh(idlePower));
+        final double suspendPowerMaMs = (mTypeBatteryRealtimeUs / 1000) *
+                mPowerProfile.getAveragePower(PowerProfile.POWER_CPU_IDLE);
+        final double idlePowerMaMs = (mTypeBatteryUptimeUs / 1000) *
+                mPowerProfile.getAveragePower(PowerProfile.POWER_CPU_AWAKE);
+        final double totalPowerMah = (suspendPowerMaMs + idlePowerMaMs) / (60 * 60 * 1000);
+        if (DEBUG && totalPowerMah != 0) {
+            Log.d(TAG, "Suspend: time=" + (mTypeBatteryRealtimeUs / 1000)
+                    + " power=" + makemAh(suspendPowerMaMs / (60 * 60 * 1000)));
+            Log.d(TAG, "Idle: time=" + (mTypeBatteryUptimeUs / 1000)
+                    + " power=" + makemAh(idlePowerMaMs / (60 * 60 * 1000)));
         }
-        if (idlePower != 0) {
-            addEntry(BatterySipper.DrainType.IDLE, idleTimeMs, idlePower);
+
+        if (totalPowerMah != 0) {
+            addEntry(BatterySipper.DrainType.IDLE, mTypeBatteryRealtimeUs / 1000, totalPowerMah);
         }
     }
 
@@ -628,7 +641,7 @@
      */
     private void addWiFiUsage() {
         BatterySipper bs = new BatterySipper(DrainType.WIFI, null, 0);
-        mWifiPowerCalculator.calculateRemaining(bs, mStats, mRawRealtime, mRawUptime, mStatsType);
+        mWifiPowerCalculator.calculateRemaining(bs, mStats, mRawRealtimeUs, mRawUptimeUs, mStatsType);
         aggregateSippers(bs, mWifiSippers, "WIFI");
         if (bs.totalPowerMah > 0) {
             mUsageList.add(bs);
@@ -641,7 +654,7 @@
      */
     private void addBluetoothUsage() {
         BatterySipper bs = new BatterySipper(BatterySipper.DrainType.BLUETOOTH, null, 0);
-        mBluetoothPowerCalculator.calculateRemaining(bs, mStats, mRawRealtime, mRawUptime,
+        mBluetoothPowerCalculator.calculateRemaining(bs, mStats, mRawRealtimeUs, mRawUptimeUs,
                 mStatsType);
         aggregateSippers(bs, mBluetoothSippers, "Bluetooth");
         if (bs.totalPowerMah > 0) {
@@ -709,10 +722,6 @@
         return mMaxDrainedPower;
     }
 
-    public long getBatteryTimeRemaining() { return mBatteryTimeRemaining; }
-
-    public long getChargeTimeRemaining() { return mChargeTimeRemaining; }
-
     public static byte[] readFully(FileInputStream stream) throws java.io.IOException {
         return readFully(stream, stream.available());
     }
diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java
index bbefcb5..e69ed35 100644
--- a/core/java/com/android/internal/os/BatteryStatsImpl.java
+++ b/core/java/com/android/internal/os/BatteryStatsImpl.java
@@ -60,6 +60,7 @@
 import android.util.Xml;
 import android.view.Display;
 
+import com.android.internal.annotations.VisibleForTesting;
 import com.android.internal.net.NetworkStatsFactory;
 import com.android.internal.util.ArrayUtils;
 import com.android.internal.util.FastPrintWriter;
@@ -1092,7 +1093,7 @@
         public void writeToParcel(Parcel out, long elapsedRealtimeUs) {
             if (DEBUG) Log.i(TAG, "**** WRITING TIMER #" + mType + ": mTotalTime="
                     + computeRunTimeLocked(mTimeBase.getRealtime(elapsedRealtimeUs)));
-            out.writeInt(mCount);
+            out.writeInt(computeCurrentCountLocked());
             out.writeInt(mLoadedCount);
             out.writeInt(mUnpluggedCount);
             out.writeLong(computeRunTimeLocked(mTimeBase.getRealtime(elapsedRealtimeUs)));
@@ -1109,7 +1110,7 @@
                         + " old mUnpluggedCount=" + mUnpluggedCount);
             }
             mUnpluggedTime = computeRunTimeLocked(baseRealtime);
-            mUnpluggedCount = mCount;
+            mUnpluggedCount = computeCurrentCountLocked();
             if (DEBUG && mType < 0) {
                 Log.v(TAG, "unplug #" + mType
                         + ": new mUnpluggedTime=" + mUnpluggedTime
@@ -1192,7 +1193,7 @@
         public void writeSummaryFromParcelLocked(Parcel out, long elapsedRealtimeUs) {
             long runTime = computeRunTimeLocked(mTimeBase.getRealtime(elapsedRealtimeUs));
             out.writeLong(runTime);
-            out.writeInt(mCount);
+            out.writeInt(computeCurrentCountLocked());
         }
 
         public void readSummaryFromParcelLocked(Parcel in) {
@@ -1209,6 +1210,16 @@
         }
     }
 
+    /**
+     * A counter meant to accept monotonically increasing values to its {@link #update(long, int)}
+     * method. The state of the timer according to its {@link TimeBase} will determine how much
+     * of the value is recorded.
+     *
+     * If the value being recorded resets, {@link #endSample()} can be called in order to
+     * account for the change. If the value passed in to {@link #update(long, int)} decreased
+     * between calls, the {@link #endSample()} is automatically called and the new value is
+     * expected to increase monotonically from that point on.
+     */
     public static class SamplingTimer extends Timer {
 
         /**
@@ -1249,7 +1260,8 @@
          */
         int mUpdateVersion;
 
-        SamplingTimer(Clocks clocks, TimeBase timeBase, Parcel in) {
+        @VisibleForTesting
+        public SamplingTimer(Clocks clocks, TimeBase timeBase, Parcel in) {
             super(clocks, 0, timeBase, in);
             mCurrentReportedCount = in.readInt();
             mUnpluggedReportedCount = in.readInt();
@@ -1259,16 +1271,22 @@
             mTimeBaseRunning = timeBase.isRunning();
         }
 
-        SamplingTimer(Clocks clocks, TimeBase timeBase, boolean trackReportedValues) {
+        @VisibleForTesting
+        public SamplingTimer(Clocks clocks, TimeBase timeBase) {
             super(clocks, 0, timeBase);
-            mTrackingReportedValues = trackReportedValues;
+            mTrackingReportedValues = false;
             mTimeBaseRunning = timeBase.isRunning();
         }
 
-        public void setStale() {
-            mTrackingReportedValues = false;
-            mUnpluggedReportedTotalTime = 0;
-            mUnpluggedReportedCount = 0;
+        /**
+         * Ends the current sample, allowing subsequent values to {@link #update(long, int)} to
+         * be less than the values used for a previous invocation.
+         */
+        public void endSample() {
+            mTotalTime = computeRunTimeLocked(0 /* unused by us */);
+            mCount = computeCurrentCountLocked();
+            mUnpluggedReportedTotalTime = mCurrentReportedTotalTime = 0;
+            mUnpluggedReportedCount = mCurrentReportedCount = 0;
         }
 
         public void setUpdateVersion(int version) {
@@ -1279,34 +1297,46 @@
             return mUpdateVersion;
         }
 
-        public void updateCurrentReportedCount(int count) {
-            if (mTimeBaseRunning && mUnpluggedReportedCount == 0) {
+        /**
+         * Updates the current recorded values. These are meant to be monotonically increasing
+         * and cumulative. If you are dealing with deltas, use {@link #add(long, int)}.
+         *
+         * If the values being recorded have been reset, the monotonically increasing requirement
+         * will be broken. In this case, {@link #endSample()} is automatically called and
+         * the total value of totalTime and count are recorded, starting a new monotonically
+         * increasing sample.
+         *
+         * @param totalTime total time of sample in microseconds.
+         * @param count total number of times the event being sampled occurred.
+         */
+        public void update(long totalTime, int count) {
+            if (mTimeBaseRunning && !mTrackingReportedValues) {
                 // Updating the reported value for the first time.
+                mUnpluggedReportedTotalTime = totalTime;
                 mUnpluggedReportedCount = count;
-                // If we are receiving an update update mTrackingReportedValues;
-                mTrackingReportedValues = true;
             }
+
+            mTrackingReportedValues = true;
+
+            if (totalTime < mCurrentReportedTotalTime || count < mCurrentReportedCount) {
+                endSample();
+            }
+
+            mCurrentReportedTotalTime = totalTime;
             mCurrentReportedCount = count;
         }
 
-        public void addCurrentReportedCount(int delta) {
-            updateCurrentReportedCount(mCurrentReportedCount + delta);
+        /**
+         * Adds deltaTime and deltaCount to the current sample.
+         *
+         * @param deltaTime additional time recorded since the last sampled event, in microseconds.
+         * @param deltaCount additional number of times the event being sampled occurred.
+         */
+        public void add(long deltaTime, int deltaCount) {
+            update(mCurrentReportedTotalTime + deltaTime, mCurrentReportedCount + deltaCount);
         }
 
-        public void updateCurrentReportedTotalTime(long totalTime) {
-            if (mTimeBaseRunning && mUnpluggedReportedTotalTime == 0) {
-                // Updating the reported value for the first time.
-                mUnpluggedReportedTotalTime = totalTime;
-                // If we are receiving an update update mTrackingReportedValues;
-                mTrackingReportedValues = true;
-            }
-            mCurrentReportedTotalTime = totalTime;
-        }
-
-        public void addCurrentReportedTotalTime(long delta) {
-            updateCurrentReportedTotalTime(mCurrentReportedTotalTime + delta);
-        }
-
+        @Override
         public void onTimeStarted(long elapsedRealtime, long baseUptime, long baseRealtime) {
             super.onTimeStarted(elapsedRealtime, baseUptime, baseRealtime);
             if (mTrackingReportedValues) {
@@ -1316,11 +1346,13 @@
             mTimeBaseRunning = true;
         }
 
+        @Override
         public void onTimeStopped(long elapsedRealtime, long baseUptime, long baseRealtime) {
             super.onTimeStopped(elapsedRealtime, baseUptime, baseRealtime);
             mTimeBaseRunning = false;
         }
 
+        @Override
         public void logState(Printer pw, String prefix) {
             super.logState(pw, prefix);
             pw.println(prefix + "mCurrentReportedCount=" + mCurrentReportedCount
@@ -1329,16 +1361,19 @@
                     + " mUnpluggedReportedTotalTime=" + mUnpluggedReportedTotalTime);
         }
 
+        @Override
         protected long computeRunTimeLocked(long curBatteryRealtime) {
             return mTotalTime + (mTimeBaseRunning && mTrackingReportedValues
                     ? mCurrentReportedTotalTime - mUnpluggedReportedTotalTime : 0);
         }
 
+        @Override
         protected int computeCurrentCountLocked() {
             return mCount + (mTimeBaseRunning && mTrackingReportedValues
                     ? mCurrentReportedCount - mUnpluggedReportedCount : 0);
         }
 
+        @Override
         public void writeToParcel(Parcel out, long elapsedRealtimeUs) {
             super.writeToParcel(out, elapsedRealtimeUs);
             out.writeInt(mCurrentReportedCount);
@@ -1348,12 +1383,16 @@
             out.writeInt(mTrackingReportedValues ? 1 : 0);
         }
 
+        @Override
         public boolean reset(boolean detachIfReset) {
             super.reset(detachIfReset);
-            setStale();
+            mTrackingReportedValues = false;
+            mUnpluggedReportedTotalTime = 0;
+            mUnpluggedReportedCount = 0;
             return true;
         }
 
+        @Override
         public void writeSummaryFromParcelLocked(Parcel out, long batteryRealtime) {
             super.writeSummaryFromParcelLocked(out, batteryRealtime);
             out.writeLong(mCurrentReportedTotalTime);
@@ -1361,6 +1400,7 @@
             out.writeInt(mTrackingReportedValues ? 1 : 0);
         }
 
+        @Override
         public void readSummaryFromParcelLocked(Parcel in) {
             super.readSummaryFromParcelLocked(in);
             mUnpluggedReportedTotalTime = mCurrentReportedTotalTime = in.readLong();
@@ -1745,6 +1785,9 @@
         }
 
         public void add(String name, T obj) {
+            if (name == null) {
+                name = "";
+            }
             mMap.put(name, obj);
             if (OVERFLOW_NAME.equals(name)) {
                 mCurOverflow = obj;
@@ -1776,6 +1819,9 @@
         }
 
         public T startObject(String name) {
+            if (name == null) {
+                name = "";
+            }
             T obj = mMap.get(name);
             if (obj != null) {
                 return obj;
@@ -1825,6 +1871,9 @@
         }
 
         public T stopObject(String name) {
+            if (name == null) {
+                name = "";
+            }
             T obj = mMap.get(name);
             if (obj != null) {
                 return obj;
@@ -1990,7 +2039,7 @@
     public SamplingTimer getWakeupReasonTimerLocked(String name) {
         SamplingTimer timer = mWakeupReasonStats.get(name);
         if (timer == null) {
-            timer = new SamplingTimer(mClocks, mOnBatteryTimeBase, true);
+            timer = new SamplingTimer(mClocks, mOnBatteryTimeBase);
             mWakeupReasonStats.put(name, timer);
         }
         return timer;
@@ -2003,8 +2052,7 @@
     public SamplingTimer getKernelWakelockTimerLocked(String name) {
         SamplingTimer kwlt = mKernelWakelockStats.get(name);
         if (kwlt == null) {
-            kwlt = new SamplingTimer(mClocks, mOnBatteryScreenOffTimeBase,
-                    true /* track reported values */);
+            kwlt = new SamplingTimer(mClocks, mOnBatteryScreenOffTimeBase);
             mKernelWakelockStats.put(name, kwlt);
         }
         return kwlt;
@@ -3113,8 +3161,7 @@
         if (mLastWakeupReason != null) {
             long deltaUptime = uptimeMs - mLastWakeupUptimeMs;
             SamplingTimer timer = getWakeupReasonTimerLocked(mLastWakeupReason);
-            timer.addCurrentReportedCount(1);
-            timer.addCurrentReportedTotalTime(deltaUptime * 1000); // time is in microseconds
+            timer.add(deltaUptime * 1000, 1); // time in in microseconds
             mLastWakeupReason = null;
         }
     }
@@ -3388,7 +3435,7 @@
                     powerState == DataConnectionRealTimeInfo.DC_POWER_STATE_MEDIUM
                             || powerState == DataConnectionRealTimeInfo.DC_POWER_STATE_HIGH;
             if (active) {
-                mMobileRadioActiveStartTime = realElapsedRealtimeMs = elapsedRealtime;
+                mMobileRadioActiveStartTime = realElapsedRealtimeMs = timestampNs / (1000 * 1000);
                 mHistoryCur.states |= HistoryItem.STATE_MOBILE_RADIO_ACTIVE_FLAG;
             } else {
                 realElapsedRealtimeMs = timestampNs / (1000*1000);
@@ -8715,16 +8762,15 @@
 
             SamplingTimer kwlt = mKernelWakelockStats.get(name);
             if (kwlt == null) {
-                kwlt = new SamplingTimer(mClocks, mOnBatteryScreenOffTimeBase,
-                        true /* track reported val */);
+                kwlt = new SamplingTimer(mClocks, mOnBatteryScreenOffTimeBase);
                 mKernelWakelockStats.put(name, kwlt);
             }
-            kwlt.updateCurrentReportedCount(kws.mCount);
-            kwlt.updateCurrentReportedTotalTime(kws.mTotalTime);
+            kwlt.update(kws.mTotalTime, kws.mCount);
             kwlt.setUpdateVersion(kws.mVersion);
 
-            if (kws.mVersion != wakelockStats.kernelWakelockVersion)
-            seenNonZeroTime |= kws.mTotalTime > 0;
+            if (kws.mVersion != wakelockStats.kernelWakelockVersion) {
+                seenNonZeroTime |= kws.mTotalTime > 0;
+            }
         }
 
         int numWakelocksSetStale = 0;
@@ -8733,7 +8779,7 @@
             for (Map.Entry<String, SamplingTimer> ent : mKernelWakelockStats.entrySet()) {
                 SamplingTimer st = ent.getValue();
                 if (st.getUpdateVersion() != wakelockStats.kernelWakelockVersion) {
-                    st.setStale();
+                    st.endSample();
                     numWakelocksSetStale++;
                 }
             }
diff --git a/core/java/com/android/internal/os/BinderInternal.java b/core/java/com/android/internal/os/BinderInternal.java
index d77b998..ea4575a 100644
--- a/core/java/com/android/internal/os/BinderInternal.java
+++ b/core/java/com/android/internal/os/BinderInternal.java
@@ -93,6 +93,8 @@
      * @hide
      */
     public static final native void disableBackgroundScheduling(boolean disable);
+
+    public static final native void setMaxThreads(int numThreads);
     
     static native final void handleGc();
     
diff --git a/core/java/com/android/internal/os/PowerProfile.java b/core/java/com/android/internal/os/PowerProfile.java
index 79138b7..d217474 100644
--- a/core/java/com/android/internal/os/PowerProfile.java
+++ b/core/java/com/android/internal/os/PowerProfile.java
@@ -51,7 +51,7 @@
      * Power consumption when CPU is awake (when a wake lock is held).  This
      * should be 0 on devices that can go into full CPU power collapse even
      * when a wake lock is held.  Otherwise, this is the power consumption in
-     * addition to POWERR_CPU_IDLE due to a wake lock being held but with no
+     * addition to POWER_CPU_IDLE due to a wake lock being held but with no
      * CPU activity.
      */
     public static final String POWER_CPU_AWAKE = "cpu.awake";
diff --git a/core/java/com/android/internal/os/ProcessCpuTracker.java b/core/java/com/android/internal/os/ProcessCpuTracker.java
index d831902..b7e5718 100644
--- a/core/java/com/android/internal/os/ProcessCpuTracker.java
+++ b/core/java/com/android/internal/os/ProcessCpuTracker.java
@@ -34,9 +34,11 @@
 import java.io.FileInputStream;
 import java.io.PrintWriter;
 import java.io.StringWriter;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
+import java.util.Date;
 import java.util.StringTokenizer;
 
 public class ProcessCpuTracker {
@@ -147,6 +149,9 @@
     private long mCurrentSampleRealTime;
     private long mLastSampleRealTime;
 
+    private long mCurrentSampleWallTime;
+    private long mLastSampleWallTime;
+
     private long mBaseUserTime;
     private long mBaseSystemTime;
     private long mBaseIoWaitTime;
@@ -305,6 +310,7 @@
 
         final long nowUptime = SystemClock.uptimeMillis();
         final long nowRealtime = SystemClock.elapsedRealtime();
+        final long nowWallTime = System.currentTimeMillis();
 
         final long[] sysCpu = mSystemCpuData;
         if (Process.readProcFile("/proc/stat", SYSTEM_CPU_FORMAT,
@@ -367,6 +373,8 @@
         mCurrentSampleTime = nowUptime;
         mLastSampleRealTime = mCurrentSampleRealTime;
         mCurrentSampleRealTime = nowRealtime;
+        mLastSampleWallTime = mCurrentSampleWallTime;
+        mCurrentSampleWallTime = nowWallTime;
 
         final StrictMode.ThreadPolicy savedPolicy = StrictMode.allowThreadDiskReads();
         try {
@@ -710,6 +718,8 @@
     }
 
     final public String printCurrentState(long now) {
+        final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
+
         buildWorkingProcs();
 
         StringWriter sw = new StringWriter();
@@ -727,6 +737,11 @@
             pw.print(mCurrentSampleTime-now);
             pw.print("ms later");
         }
+        pw.print(" (");
+        pw.print(sdf.format(new Date(mLastSampleWallTime)));
+        pw.print(" to ");
+        pw.print(sdf.format(new Date(mCurrentSampleWallTime)));
+        pw.print(")");
 
         long sampleTime = mCurrentSampleTime - mLastSampleTime;
         long sampleRealTime = mCurrentSampleRealTime - mLastSampleRealTime;
diff --git a/core/java/com/android/internal/policy/BackdropFrameRenderer.java b/core/java/com/android/internal/policy/BackdropFrameRenderer.java
index 738aaca..b781fd4 100644
--- a/core/java/com/android/internal/policy/BackdropFrameRenderer.java
+++ b/core/java/com/android/internal/policy/BackdropFrameRenderer.java
@@ -16,8 +16,6 @@
 
 package com.android.internal.policy;
 
-import static android.view.WindowCallbacks.RESIZE_MODE_FREEFORM;
-
 import android.graphics.Rect;
 import android.graphics.drawable.ColorDrawable;
 import android.graphics.drawable.Drawable;
@@ -102,9 +100,6 @@
         mOldSystemInsets.set(systemInsets);
         mOldStableInsets.set(stableInsets);
         mResizeMode = resizeMode;
-        synchronized (this) {
-            redrawLocked(initialBounds, fullscreen, mSystemInsets, mStableInsets);
-        }
 
         // Kick off our draw thread.
         start();
@@ -160,7 +155,7 @@
             mSystemInsets.set(systemInsets);
             mStableInsets.set(stableInsets);
             // Notify of a bounds change.
-            pingRenderLocked();
+            pingRenderLocked(false /* drawImmediate */);
         }
     }
 
@@ -172,7 +167,7 @@
             if (mRenderer != null) {
                 // Enforce a window redraw.
                 mOldTargetRect.set(0, 0, 0, 0);
-                pingRenderLocked();
+                pingRenderLocked(false /* drawImmediate */);
             }
         }
     }
@@ -197,7 +192,7 @@
                 mRenderer = null;
 
                 // Exit the renderer loop.
-                pingRenderLocked();
+                pingRenderLocked(false /* drawImmediate */);
             }
         }
     }
@@ -208,9 +203,6 @@
             Looper.prepare();
             synchronized (this) {
                 mChoreographer = Choreographer.getInstance();
-
-                // Draw at least once.
-                mChoreographer.postFrameCallback(this);
             }
             Looper.loop();
         } finally {
@@ -236,18 +228,22 @@
                 Looper.myLooper().quit();
                 return;
             }
-            mNewTargetRect.set(mTargetRect);
-            if (!mNewTargetRect.equals(mOldTargetRect)
-                    || mOldFullscreen != mFullscreen
-                    || !mStableInsets.equals(mOldStableInsets)
-                    || !mSystemInsets.equals(mOldSystemInsets)
-                    || mReportNextDraw) {
-                mOldFullscreen = mFullscreen;
-                mOldTargetRect.set(mNewTargetRect);
-                mOldSystemInsets.set(mSystemInsets);
-                mOldStableInsets.set(mStableInsets);
-                redrawLocked(mNewTargetRect, mFullscreen, mSystemInsets, mStableInsets);
-            }
+            doFrameUncheckedLocked();
+        }
+    }
+
+    private void doFrameUncheckedLocked() {
+        mNewTargetRect.set(mTargetRect);
+        if (!mNewTargetRect.equals(mOldTargetRect)
+                || mOldFullscreen != mFullscreen
+                || !mStableInsets.equals(mOldStableInsets)
+                || !mSystemInsets.equals(mOldSystemInsets)
+                || mReportNextDraw) {
+            mOldFullscreen = mFullscreen;
+            mOldTargetRect.set(mNewTargetRect);
+            mOldSystemInsets.set(mSystemInsets);
+            mOldStableInsets.set(mStableInsets);
+            redrawLocked(mNewTargetRect, mFullscreen, mSystemInsets, mStableInsets);
         }
     }
 
@@ -270,15 +266,12 @@
             mLastXOffset = xOffset;
             mLastYOffset = yOffset;
 
-            // Only clip the content to the bounds if we are not fullscreen. In the other case, we
-            // actually need to draw outside these.
-            if (mResizeMode == RESIZE_MODE_FREEFORM) {
-                mRenderer.setContentDrawBounds(
-                        mLastXOffset,
-                        mLastYOffset,
-                        mLastXOffset + mLastContentWidth,
-                        mLastYOffset + mLastCaptionHeight + mLastContentHeight);
-            }
+            // Inform the renderer of the content's new bounds
+            mRenderer.setContentDrawBounds(
+                    mLastXOffset,
+                    mLastYOffset,
+                    mLastXOffset + mLastContentWidth,
+                    mLastYOffset + mLastCaptionHeight + mLastContentHeight);
 
             // If this was the first call and redrawLocked got already called prior
             // to us, we should re-issue a redrawLocked now.
@@ -291,7 +284,7 @@
         synchronized (this) {
             mReportNextDraw = reportNextDraw;
             mOldTargetRect.set(0, 0, 0, 0);
-            pingRenderLocked();
+            pingRenderLocked(true /* drawImmediate */);
         }
     }
 
@@ -406,10 +399,14 @@
      * Sends a message to the renderer to wake up and perform the next action which can be
      * either the next rendering or the self destruction if mRenderer is null.
      * Note: This call must be synchronized.
+     *
+     * @param drawImmediate if we should draw immediately instead of scheduling a frame
      */
-    private void pingRenderLocked() {
-        if (mChoreographer != null) {
+    private void pingRenderLocked(boolean drawImmediate) {
+        if (mChoreographer != null && !drawImmediate) {
             mChoreographer.postFrameCallback(this);
+        } else {
+            doFrameUncheckedLocked();
         }
     }
 
diff --git a/core/java/com/android/internal/policy/DecorContext.java b/core/java/com/android/internal/policy/DecorContext.java
index 4f17c39..eac9f64 100644
--- a/core/java/com/android/internal/policy/DecorContext.java
+++ b/core/java/com/android/internal/policy/DecorContext.java
@@ -17,22 +17,27 @@
 package com.android.internal.policy;
 
 import android.content.Context;
+import android.content.res.AssetManager;
+import android.content.res.Resources;
 import android.view.ContextThemeWrapper;
 import android.view.WindowManager;
 import android.view.WindowManagerImpl;
 
 /**
  * Context for decor views which can be seeded with pure application context and not depend on the
- * activity, but still provide some of the facilities that Activity has, e.g. themes.
+ * activity, but still provide some of the facilities that Activity has,
+ * e.g. themes, activity-based resources, etc.
  *
  * @hide
  */
 class DecorContext extends ContextThemeWrapper {
     private PhoneWindow mPhoneWindow;
     private WindowManager mWindowManager;
+    private Resources mActivityResources;
 
-    public DecorContext(Context context) {
+    public DecorContext(Context context, Resources activityResources) {
         super(context, null);
+        mActivityResources = activityResources;
     }
 
     void setPhoneWindow(PhoneWindow phoneWindow) {
@@ -52,4 +57,14 @@
         }
         return super.getSystemService(name);
     }
+
+    @Override
+    public Resources getResources() {
+        return mActivityResources;
+    }
+
+    @Override
+    public AssetManager getAssets() {
+        return mActivityResources.getAssets();
+    }
 }
diff --git a/core/java/com/android/internal/policy/DividerSnapAlgorithm.java b/core/java/com/android/internal/policy/DividerSnapAlgorithm.java
index 669e1ef..b8bc161 100644
--- a/core/java/com/android/internal/policy/DividerSnapAlgorithm.java
+++ b/core/java/com/android/internal/policy/DividerSnapAlgorithm.java
@@ -330,6 +330,14 @@
         return snapTarget;
     }
 
+    public boolean isFirstSplitTargetAvailable() {
+        return mFirstSplitTarget != mMiddleTarget;
+    }
+
+    public boolean isLastSplitTargetAvailable() {
+        return mLastSplitTarget != mMiddleTarget;
+    }
+
     /**
      * Cycles through all non-dismiss targets with a stepping of {@param increment}. It moves left
      * if {@param increment} is negative and moves right otherwise.
diff --git a/core/java/com/android/internal/policy/PhoneWindow.java b/core/java/com/android/internal/policy/PhoneWindow.java
index fe63267..151c530 100644
--- a/core/java/com/android/internal/policy/PhoneWindow.java
+++ b/core/java/com/android/internal/policy/PhoneWindow.java
@@ -2297,7 +2297,7 @@
             if (applicationContext == null) {
                 context = getContext();
             } else {
-                context = new DecorContext(applicationContext);
+                context = new DecorContext(applicationContext, getContext().getResources());
                 if (mTheme != -1) {
                     context.setTheme(mTheme);
                 }
diff --git a/core/java/com/android/internal/statusbar/IStatusBar.aidl b/core/java/com/android/internal/statusbar/IStatusBar.aidl
index 9e5c238..5cbe1ce 100644
--- a/core/java/com/android/internal/statusbar/IStatusBar.aidl
+++ b/core/java/com/android/internal/statusbar/IStatusBar.aidl
@@ -57,14 +57,15 @@
     void notificationLightOff();
     void notificationLightPulse(int argb, int millisOn, int millisOff);
 
-    void showRecentApps(boolean triggeredFromAltTab);
+    void showRecentApps(boolean triggeredFromAltTab, boolean fromHome);
     void hideRecentApps(boolean triggeredFromAltTab, boolean triggeredFromHomeKey);
     void toggleRecentApps();
     void toggleSplitScreen();
     void preloadRecentApps();
     void cancelPreloadRecentApps();
-    void showScreenPinningRequest();
+    void showScreenPinningRequest(int taskId);
 
+    void dismissKeyboardShortcutsMenu();
     void toggleKeyboardShortcutsMenu(int deviceId);
 
     /**
diff --git a/core/java/com/android/internal/statusbar/IStatusBarService.aidl b/core/java/com/android/internal/statusbar/IStatusBarService.aidl
index ee3f937..3d05422 100644
--- a/core/java/com/android/internal/statusbar/IStatusBarService.aidl
+++ b/core/java/com/android/internal/statusbar/IStatusBarService.aidl
@@ -41,7 +41,6 @@
     void setImeWindowStatus(in IBinder token, int vis, int backDisposition,
             boolean showImeSwitcher);
     void expandSettingsPanel(String subPanel);
-    void setCurrentUser(int newUserId);
 
     // ---- Methods below are for use by the status bar policy services ----
     // You need the STATUS_BAR_SERVICE permission
@@ -63,48 +62,6 @@
             in NotificationVisibility[] noLongerVisibleKeys);
     void onNotificationExpansionChanged(in String key, in boolean userAction, in boolean expanded);
     void setSystemUiVisibility(int vis, int mask, String cause);
-    void setWindowState(int window, int state);
-
-    void showRecentApps(boolean triggeredFromAltTab);
-    void hideRecentApps(boolean triggeredFromAltTab, boolean triggeredFromHomeKey);
-    void toggleRecentApps();
-    void preloadRecentApps();
-    void cancelPreloadRecentApps();
-
-    void toggleKeyboardShortcutsMenu(int deviceId);
-
-    /**
-     * Notifies the status bar that an app transition is pending to delay applying some flags with
-     * visual impact until {@link #appTransitionReady} is called.
-     */
-    void appTransitionPending();
-
-    /**
-     * Notifies the status bar that a pending app transition has been cancelled.
-     */
-    void appTransitionCancelled();
-
-    /**
-     * Notifies the status bar that an app transition is now being executed.
-     *
-     * @param statusBarAnimationsStartTime the desired start time for all visual animations in the
-     *        status bar caused by this app transition in uptime millis
-     * @param statusBarAnimationsDuration the duration for all visual animations in the status
-     *        bar caused by this app transition in millis
-     */
-    void appTransitionStarting(long statusBarAnimationsStartTime, long statusBarAnimationsDuration);
-
-    void startAssist(in Bundle args);
-
-    /**
-     * Request picture-in-picture.
-     *
-     * <p>
-     * This is called when an user presses picture-in-picture key or equivalent.
-     * TV device may start picture-in-picture from foreground activity if there's none.
-     * Picture-in-picture overlay menu will be shown instead otherwise.
-     */
-    void requestTvPictureInPicture();
 
     void addTile(in ComponentName tile);
     void remTile(in ComponentName tile);
diff --git a/core/java/com/android/internal/util/ProgressReporter.java b/core/java/com/android/internal/util/ProgressReporter.java
index 796f8ac..7a8efba 100644
--- a/core/java/com/android/internal/util/ProgressReporter.java
+++ b/core/java/com/android/internal/util/ProgressReporter.java
@@ -20,9 +20,12 @@
 import android.content.Intent;
 import android.os.Bundle;
 import android.os.IProgressListener;
+import android.os.RemoteCallbackList;
 import android.os.RemoteException;
 import android.util.MathUtils;
 
+import com.android.internal.annotations.GuardedBy;
+
 /**
  * Tracks and reports progress of a single task to a {@link IProgressListener}.
  * The reported progress of a task ranges from 0-100, but the task can be
@@ -44,33 +47,67 @@
  * }
  * </pre>
  *
- * This class is not thread safe.
- *
  * @hide
  */
 public class ProgressReporter {
-    public static final ProgressReporter NO_OP = new ProgressReporter(0, null);
+    private static final int STATE_INIT = 0;
+    private static final int STATE_STARTED = 1;
+    private static final int STATE_FINISHED = 2;
 
     private final int mId;
-    private final IProgressListener mListener;
 
-    private Bundle mExtras = new Bundle();
+    @GuardedBy("this")
+    private final RemoteCallbackList<IProgressListener> mListeners = new RemoteCallbackList<>();
 
+    @GuardedBy("this")
+    private int mState = STATE_INIT;
+    @GuardedBy("this")
     private int mProgress = 0;
+    @GuardedBy("this")
+    private Bundle mExtras = new Bundle();
 
     /**
      * Current segment range: first element is starting progress of this
      * segment, second element is length of segment.
      */
+    @GuardedBy("this")
     private int[] mSegmentRange = new int[] { 0, 100 };
 
     /**
      * Create a new task with the given identifier whose progress will be
      * reported to the given listener.
      */
-    public ProgressReporter(int id, @Nullable IProgressListener listener) {
+    public ProgressReporter(int id) {
         mId = id;
-        mListener = listener;
+    }
+
+    /**
+     * Add given listener to watch for progress events. The current state will
+     * be immediately dispatched to the given listener.
+     */
+    public void addListener(@Nullable IProgressListener listener) {
+        if (listener == null) return;
+        synchronized (this) {
+            mListeners.register(listener);
+            switch (mState) {
+                case STATE_INIT:
+                    // Nothing has happened yet
+                    break;
+                case STATE_STARTED:
+                    try {
+                        listener.onStarted(mId, null);
+                        listener.onProgress(mId, mProgress, mExtras);
+                    } catch (RemoteException ignored) {
+                    }
+                    break;
+                case STATE_FINISHED:
+                    try {
+                        listener.onFinished(mId, null);
+                    } catch (RemoteException ignored) {
+                    }
+                    break;
+            }
+        }
     }
 
     /**
@@ -102,12 +139,17 @@
      * Set the fractional progress of the currently active segment.
      */
     public void setProgress(int n, int m, @Nullable CharSequence title) {
-        mProgress = mSegmentRange[0]
-                + MathUtils.constrain((n * mSegmentRange[1]) / m, 0, mSegmentRange[1]);
-        if (title != null) {
-            mExtras.putCharSequence(Intent.EXTRA_TITLE, title);
+        synchronized (this) {
+            if (mState != STATE_STARTED) {
+                throw new IllegalStateException("Must be started to change progress");
+            }
+            mProgress = mSegmentRange[0]
+                    + MathUtils.constrain((n * mSegmentRange[1]) / m, 0, mSegmentRange[1]);
+            if (title != null) {
+                mExtras.putCharSequence(Intent.EXTRA_TITLE, title);
+            }
+            notifyProgress(mId, mProgress, mExtras);
         }
-        notifyProgress(mId, mProgress, mExtras);
     }
 
     /**
@@ -116,17 +158,21 @@
      * {@link #endSegment(int[])} when finished.
      */
     public int[] startSegment(int size) {
-        final int[] lastRange = mSegmentRange;
-        mSegmentRange = new int[] { mProgress, (size * mSegmentRange[1] / 100) };
-        return lastRange;
+        synchronized (this) {
+            final int[] lastRange = mSegmentRange;
+            mSegmentRange = new int[] { mProgress, (size * mSegmentRange[1] / 100) };
+            return lastRange;
+        }
     }
 
     /**
      * End the current segment.
      */
     public void endSegment(int[] lastRange) {
-        mProgress = mSegmentRange[0] + mSegmentRange[1];
-        mSegmentRange = lastRange;
+        synchronized (this) {
+            mProgress = mSegmentRange[0] + mSegmentRange[1];
+            mSegmentRange = lastRange;
+        }
     }
 
     int getProgress() {
@@ -138,27 +184,54 @@
     }
 
     /**
+     * Report this entire task as being started.
+     */
+    public void start() {
+        synchronized (this) {
+            mState = STATE_STARTED;
+            notifyStarted(mId, null);
+            notifyProgress(mId, mProgress, mExtras);
+        }
+    }
+
+    /**
      * Report this entire task as being finished.
      */
     public void finish() {
-        notifyFinished(mId, null);
+        synchronized (this) {
+            mState = STATE_FINISHED;
+            notifyFinished(mId, null);
+            mListeners.kill();
+        }
+    }
+
+    private void notifyStarted(int id, Bundle extras) {
+        for (int i = mListeners.beginBroadcast() - 1; i >= 0; i--) {
+            try {
+                mListeners.getBroadcastItem(i).onStarted(id, extras);
+            } catch (RemoteException ignored) {
+            }
+        }
+        mListeners.finishBroadcast();
     }
 
     private void notifyProgress(int id, int progress, Bundle extras) {
-        if (mListener != null) {
+        for (int i = mListeners.beginBroadcast() - 1; i >= 0; i--) {
             try {
-                mListener.onProgress(id, progress, extras);
+                mListeners.getBroadcastItem(i).onProgress(id, progress, extras);
             } catch (RemoteException ignored) {
             }
         }
+        mListeners.finishBroadcast();
     }
 
-    public void notifyFinished(int id, Bundle extras) {
-        if (mListener != null) {
+    private void notifyFinished(int id, Bundle extras) {
+        for (int i = mListeners.beginBroadcast() - 1; i >= 0; i--) {
             try {
-                mListener.onFinished(id, extras);
+                mListeners.getBroadcastItem(i).onFinished(id, extras);
             } catch (RemoteException ignored) {
             }
         }
+        mListeners.finishBroadcast();
     }
 }
diff --git a/core/java/com/android/internal/util/StateMachine.java b/core/java/com/android/internal/util/StateMachine.java
index dc66818..39fd36b 100644
--- a/core/java/com/android/internal/util/StateMachine.java
+++ b/core/java/com/android/internal/util/StateMachine.java
@@ -593,7 +593,11 @@
          * @param maxSize number of records to maintain at anyone time.
         */
         synchronized void setSize(int maxSize) {
+            // TODO: once b/28217358 is fixed, add unit tests  to verify that these variables are
+            // cleared after calling this method, and that subsequent calls to get() function as
+            // expected.
             mMaxSize = maxSize;
+            mOldestIndex = 0;
             mCount = 0;
             mLogRecVector.clear();
         }
diff --git a/core/java/com/android/internal/view/IDragAndDropPermissions.aidl b/core/java/com/android/internal/view/IDragAndDropPermissions.aidl
new file mode 100644
index 0000000..64c2d04
--- /dev/null
+++ b/core/java/com/android/internal/view/IDragAndDropPermissions.aidl
@@ -0,0 +1,29 @@
+/*
+** Copyright 2015, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+
+package com.android.internal.view;
+
+import android.os.IBinder;
+
+/**
+ * Interface to allow a drop receiver to request permissions for URIs passed along with ClipData
+ * contained in DragEvent.
+ */
+interface IDragAndDropPermissions {
+    void take(IBinder activityToken);
+    void takeTransient(IBinder permissionOwnerToken);
+    void release();
+}
diff --git a/core/java/com/android/internal/view/IDropPermissions.aidl b/core/java/com/android/internal/view/IDropPermissions.aidl
deleted file mode 100644
index 74ff4b4..0000000
--- a/core/java/com/android/internal/view/IDropPermissions.aidl
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
-** Copyright 2015, The Android Open Source Project
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-**     http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
-
-package com.android.internal.view;
-
-import android.os.IBinder;
-
-/**
- * Interface to allow a drop receiver to request permissions for URIs passed along with ClipData
- * contained in DragEvent.
- */
-interface IDropPermissions {
-    void take(IBinder activityToken);
-    void takeTransient(IBinder permissionOwnerToken);
-    void release();
-}
diff --git a/core/java/com/android/internal/view/menu/CascadingMenuPopup.java b/core/java/com/android/internal/view/menu/CascadingMenuPopup.java
index 5cb307f..72ed9d0 100644
--- a/core/java/com/android/internal/view/menu/CascadingMenuPopup.java
+++ b/core/java/com/android/internal/view/menu/CascadingMenuPopup.java
@@ -181,8 +181,10 @@
     private View mAnchorView;
     private View mShownAnchorView;
     private int mLastPosition;
-    private int mInitXOffset;
-    private int mInitYOffset;
+    private boolean mHasXOffset;
+    private boolean mHasYOffset;
+    private int mXOffset;
+    private int mYOffset;
     private boolean mForceShowIcon;
     private boolean mShowTitle;
     private Callback mPresenterCallback;
@@ -379,9 +381,6 @@
             parentView = null;
         }
 
-        final int x;
-        final int y;
-        final Rect epicenterBounds;
         if (parentView != null) {
             // This menu is a cascading submenu anchored to a parent view.
             popupWindow.setTouchModal(false);
@@ -401,6 +400,7 @@
 
             // By now, mDropDownGravity is the resolved absolute gravity, so
             // this should work in both LTR and RTL.
+            final int x;
             if ((mDropDownGravity & Gravity.RIGHT) == Gravity.RIGHT) {
                 if (showOnRight) {
                     x = parentOffsetLeft + menuWidth;
@@ -415,17 +415,21 @@
                 }
             }
 
-            y = parentOffsetTop;
-            epicenterBounds = null;
+            popupWindow.setHorizontalOffset(x);
+
+            final int y = parentOffsetTop;
+            popupWindow.setVerticalOffset(y);
         } else {
-            x = mInitXOffset;
-            y = mInitYOffset;
-            epicenterBounds = getEpicenterBounds();
+            if (mHasXOffset) {
+                popupWindow.setHorizontalOffset(mXOffset);
+            }
+            if (mHasYOffset) {
+                popupWindow.setVerticalOffset(mYOffset);
+            }
+            final Rect epicenterBounds = getEpicenterBounds();
+            popupWindow.setEpicenterBounds(epicenterBounds);
         }
 
-        popupWindow.setHorizontalOffset(x);
-        popupWindow.setVerticalOffset(y);
-        popupWindow.setEpicenterBounds(epicenterBounds);
 
         final CascadingMenuInfo menuInfo = new CascadingMenuInfo(popupWindow, menu, mLastPosition);
         mShowingMenus.add(menuInfo);
@@ -712,12 +716,14 @@
 
     @Override
     public void setHorizontalOffset(int x) {
-        mInitXOffset = x;
+        mHasXOffset = true;
+        mXOffset = x;
     }
 
     @Override
     public void setVerticalOffset(int y) {
-        mInitYOffset = y;
+        mHasYOffset = true;
+        mYOffset = y;
     }
 
     @Override
diff --git a/core/java/com/android/internal/view/menu/StandardMenuPopup.java b/core/java/com/android/internal/view/menu/StandardMenuPopup.java
index 339c2bf..169caa5 100644
--- a/core/java/com/android/internal/view/menu/StandardMenuPopup.java
+++ b/core/java/com/android/internal/view/menu/StandardMenuPopup.java
@@ -108,8 +108,6 @@
 
     private int mDropDownGravity = Gravity.NO_GRAVITY;
 
-    private int mXOffset;
-    private int mYOffset;
     private boolean mShowTitle;
 
     public StandardMenuPopup(Context context, MenuBuilder menu, View anchorView, int popupStyleAttr,
@@ -177,8 +175,6 @@
 
         mPopup.setContentWidth(mContentWidth);
         mPopup.setInputMethodMode(PopupWindow.INPUT_METHOD_NOT_NEEDED);
-        mPopup.setHorizontalOffset(mXOffset);
-        mPopup.setVerticalOffset(mYOffset);
         mPopup.setEpicenterBounds(getEpicenterBounds());
         mPopup.show();
 
@@ -276,7 +272,9 @@
             mMenu.close(false /* closeAllMenus */);
 
             // Show the new sub-menu popup at the same location as this popup.
-            if (subPopup.tryShow(mXOffset, mYOffset)) {
+            final int horizontalOffset = mPopup.getHorizontalOffset();
+            final int verticalOffset = mPopup.getVerticalOffset();
+            if (subPopup.tryShow(horizontalOffset, verticalOffset)) {
                 if (mPresenterCallback != null) {
                     mPresenterCallback.onOpenSubMenu(subMenu);
                 }
@@ -338,12 +336,12 @@
 
     @Override
     public void setHorizontalOffset(int x) {
-        mXOffset = x;
+        mPopup.setHorizontalOffset(x);
     }
 
     @Override
     public void setVerticalOffset(int y) {
-        mYOffset = y;
+        mPopup.setVerticalOffset(y);
     }
 
     @Override
diff --git a/core/java/com/android/server/backup/SystemBackupAgent.java b/core/java/com/android/server/backup/SystemBackupAgent.java
index 2d12fcd..9d296fa 100644
--- a/core/java/com/android/server/backup/SystemBackupAgent.java
+++ b/core/java/com/android/server/backup/SystemBackupAgent.java
@@ -76,26 +76,6 @@
     @Override
     public void onBackup(ParcelFileDescriptor oldState, BackupDataOutput data,
             ParcelFileDescriptor newState) throws IOException {
-        // We only back up the data under the current "wallpaper" schema with metadata
-        IWallpaperManager wallpaper = (IWallpaperManager)ServiceManager.getService(
-                Context.WALLPAPER_SERVICE);
-        String[] files = new String[] { WALLPAPER_IMAGE, WALLPAPER_INFO };
-        String[] keys = new String[] { WALLPAPER_IMAGE_KEY, WALLPAPER_INFO_KEY };
-        if (wallpaper != null) {
-            try {
-                final String wallpaperName = wallpaper.getName();
-                if (wallpaperName != null && wallpaperName.length() > 0) {
-                    // When the wallpaper has a name, back up the info by itself.
-                    // TODO: Don't rely on the innards of the service object like this!
-                    // TODO: Send a delete for any stored wallpaper image in this case?
-                    files = new String[] { WALLPAPER_INFO };
-                    keys = new String[] { WALLPAPER_INFO_KEY };
-                }
-            } catch (RemoteException re) {
-                Slog.e(TAG, "Couldn't get wallpaper name\n" + re);
-            }
-        }
-        addHelper(WALLPAPER_HELPER, new WallpaperBackupHelper(this, files, keys));
         addHelper(SYNC_SETTINGS_HELPER, new AccountSyncSettingsBackupHelper(this));
         addHelper(PREFERRED_HELPER, new PreferredActivityBackupHelper());
         addHelper(NOTIFICATION_HELPER, new NotificationBackupHelper(this));
@@ -107,30 +87,20 @@
 
     @Override
     public void onFullBackup(FullBackupDataOutput data) throws IOException {
-        // At present we back up only the wallpaper
-        fullWallpaperBackup(data);
-    }
-
-    private void fullWallpaperBackup(FullBackupDataOutput output) {
-        // Back up the data files directly.  We do them in this specific order --
-        // info file followed by image -- because then we need take no special
-        // steps during restore; the restore will happen properly when the individual
-        // files are restored piecemeal.
-        FullBackup.backupToTar(getPackageName(), FullBackup.ROOT_TREE_TOKEN, null,
-                WALLPAPER_INFO_DIR, WALLPAPER_INFO, output);
-        FullBackup.backupToTar(getPackageName(), FullBackup.ROOT_TREE_TOKEN, null,
-                WALLPAPER_IMAGE_DIR, WALLPAPER_IMAGE, output);
+        // At present we don't back up anything
     }
 
     @Override
     public void onRestore(BackupDataInput data, int appVersionCode, ParcelFileDescriptor newState)
             throws IOException {
+        // Slot in a restore helper for the older wallpaper backup schema to support restore
+        // from devices still generating data in that format.
         mWallpaperHelper = new WallpaperBackupHelper(this,
                 new String[] { WALLPAPER_IMAGE, WALLPAPER_INFO },
                 new String[] { WALLPAPER_IMAGE_KEY, WALLPAPER_INFO_KEY} );
         addHelper(WALLPAPER_HELPER, mWallpaperHelper);
 
-        // On restore, we also support a previous data schema "system_files"
+        // On restore, we also support a long-ago wallpaper data schema "system_files"
         addHelper("system_files", new WallpaperBackupHelper(this,
                 new String[] { WALLPAPER_IMAGE },
                 new String[] { WALLPAPER_IMAGE_KEY} ));
@@ -213,6 +183,9 @@
 
     @Override
     public void onRestoreFinished() {
-        mWallpaperHelper.onRestoreFinished();
+        // helper will be null following 'adb restore' or other full-data operation
+        if (mWallpaperHelper != null) {
+            mWallpaperHelper.onRestoreFinished();
+        }
     }
 }
diff --git a/core/jni/android/graphics/Bitmap.cpp b/core/jni/android/graphics/Bitmap.cpp
index 22a81d4..d681246 100755
--- a/core/jni/android/graphics/Bitmap.cpp
+++ b/core/jni/android/graphics/Bitmap.cpp
@@ -752,17 +752,32 @@
             getPremulBitmapCreateFlags(isMutable));
 }
 
-static jobject Bitmap_copyAshmem(JNIEnv* env, jobject, jlong srcHandle) {
-    SkBitmap src;
-    reinterpret_cast<Bitmap*>(srcHandle)->getSkBitmap(&src);
+static Bitmap* Bitmap_copyAshmemImpl(JNIEnv* env, SkBitmap& src, SkColorType& dstCT) {
     SkBitmap result;
 
     AshmemPixelAllocator allocator(env);
-    if (!src.copyTo(&result, &allocator)) {
+    if (!src.copyTo(&result, dstCT, &allocator)) {
         return NULL;
     }
     Bitmap* bitmap = allocator.getStorageObjAndReset();
     bitmap->peekAtPixelRef()->setImmutable();
+    return bitmap;
+}
+
+static jobject Bitmap_copyAshmem(JNIEnv* env, jobject, jlong srcHandle) {
+    SkBitmap src;
+    reinterpret_cast<Bitmap*>(srcHandle)->getSkBitmap(&src);
+    SkColorType dstCT = src.colorType();
+    Bitmap* bitmap = Bitmap_copyAshmemImpl(env, src, dstCT);
+    jobject ret = GraphicsJNI::createBitmap(env, bitmap, getPremulBitmapCreateFlags(false));
+    return ret;
+}
+
+static jobject Bitmap_copyAshmemConfig(JNIEnv* env, jobject, jlong srcHandle, jint dstConfigHandle) {
+    SkBitmap src;
+    reinterpret_cast<Bitmap*>(srcHandle)->getSkBitmap(&src);
+    SkColorType dstCT = GraphicsJNI::legacyBitmapConfigToColorType(dstConfigHandle);
+    Bitmap* bitmap = Bitmap_copyAshmemImpl(env, src, dstCT);
     jobject ret = GraphicsJNI::createBitmap(env, bitmap, getPremulBitmapCreateFlags(false));
     return ret;
 }
@@ -1355,6 +1370,8 @@
         (void*)Bitmap_copy },
     {   "nativeCopyAshmem",         "(J)Landroid/graphics/Bitmap;",
         (void*)Bitmap_copyAshmem },
+    {   "nativeCopyAshmemConfig",   "(JI)Landroid/graphics/Bitmap;",
+        (void*)Bitmap_copyAshmemConfig },
     {   "nativeGetNativeFinalizer", "()J", (void*)Bitmap_getNativeFinalizer },
     {   "nativeRecycle",            "(J)Z", (void*)Bitmap_recycle },
     {   "nativeReconfigure",        "(JIIIIZ)V", (void*)Bitmap_reconfigure },
diff --git a/core/jni/android/graphics/Paint.cpp b/core/jni/android/graphics/Paint.cpp
index f46f45c..898cf77 100644
--- a/core/jni/android/graphics/Paint.cpp
+++ b/core/jni/android/graphics/Paint.cpp
@@ -815,10 +815,15 @@
             }
 
             if (prevCp != kStartOfString &&
-                ((0xFE00 <= cp && cp <= 0xFE0F) || (0xE0100 <= cp && cp <= 0xE01EF)) &&
-                !MinikinUtils::hasVariationSelector(typeface, prevCp, cp)) {
-                // No font has a glyph for the code point and variation selector pair.
-                return false;
+                ((0xFE00 <= cp && cp <= 0xFE0F) || (0xE0100 <= cp && cp <= 0xE01EF))) {
+                bool hasVS = MinikinUtils::hasVariationSelector(typeface, prevCp, cp);
+                if (!hasVS) {
+                    // No font has a glyph for the code point and variation selector pair.
+                    return false;
+                } else if (nChars == 1 && i + 1 == str.size()) {
+                    // The string is just a codepoint and a VS, we have an authoritative answer
+                    return true;
+                }
             }
             nChars++;
             prevCp = cp;
diff --git a/core/jni/android_media_AudioSystem.cpp b/core/jni/android_media_AudioSystem.cpp
index 7496124..ef16ef5 100644
--- a/core/jni/android_media_AudioSystem.cpp
+++ b/core/jni/android_media_AudioSystem.cpp
@@ -1127,6 +1127,7 @@
     jint *nGeneration;
     struct audio_port *nPorts = NULL;
     int attempts = MAX_PORT_GENERATION_SYNC_ATTEMPTS;
+    jint jStatus;
 
     // get the port count and all the ports until they both return the same generation
     do {
@@ -1141,10 +1142,14 @@
                                                       &numPorts,
                                                       NULL,
                                                       &generation1);
-        if (status != NO_ERROR || numPorts == 0) {
+        if (status != NO_ERROR) {
             ALOGE_IF(status != NO_ERROR, "AudioSystem::listAudioPorts error %d", status);
             break;
         }
+        if (numPorts == 0) {
+            jStatus = (jint)AUDIO_JAVA_SUCCESS;
+            goto exit;
+        }
         nPorts = (struct audio_port *)realloc(nPorts, numPorts * sizeof(struct audio_port));
 
         status = AudioSystem::listAudioPorts(AUDIO_PORT_ROLE_NONE,
@@ -1156,19 +1161,11 @@
               numPorts, generation, generation1);
     } while (generation1 != generation && status == NO_ERROR);
 
-    jint jStatus = nativeToJavaStatus(status);
+    jStatus = nativeToJavaStatus(status);
     if (jStatus != AUDIO_JAVA_SUCCESS) {
         goto exit;
     }
 
-    nGeneration = env->GetIntArrayElements(jGeneration, NULL);
-    if (nGeneration == NULL) {
-        jStatus = (jint)AUDIO_JAVA_ERROR;
-        goto exit;
-    }
-    nGeneration[0] = generation1;
-    env->ReleaseIntArrayElements(jGeneration, nGeneration, 0);
-
     for (size_t i = 0; i < numPorts; i++) {
         jobject jAudioPort;
         jStatus = convertAudioPortFromNative(env, &jAudioPort, &nPorts[i]);
@@ -1179,6 +1176,13 @@
     }
 
 exit:
+    nGeneration = env->GetIntArrayElements(jGeneration, NULL);
+    if (nGeneration == NULL) {
+        jStatus = (jint)AUDIO_JAVA_ERROR;
+    } else {
+        nGeneration[0] = generation1;
+        env->ReleaseIntArrayElements(jGeneration, nGeneration, 0);
+    }
     free(nPorts);
     return jStatus;
 }
@@ -1354,6 +1358,7 @@
     jobject jSink = NULL;
     jobject jPatch = NULL;
     int attempts = MAX_PORT_GENERATION_SYNC_ATTEMPTS;
+    jint jStatus;
 
     // get the patch count and all the patches until they both return the same generation
     do {
@@ -1366,11 +1371,16 @@
         status = AudioSystem::listAudioPatches(&numPatches,
                                                NULL,
                                                &generation1);
-        if (status != NO_ERROR || numPatches == 0) {
+        if (status != NO_ERROR) {
             ALOGE_IF(status != NO_ERROR, "listAudioPatches AudioSystem::listAudioPatches error %d",
                                       status);
             break;
         }
+        if (numPatches == 0) {
+            jStatus = (jint)AUDIO_JAVA_SUCCESS;
+            goto exit;
+        }
+
         nPatches = (struct audio_patch *)realloc(nPatches, numPatches * sizeof(struct audio_patch));
 
         status = AudioSystem::listAudioPatches(&numPatches,
@@ -1381,19 +1391,11 @@
 
     } while (generation1 != generation && status == NO_ERROR);
 
-    jint jStatus = nativeToJavaStatus(status);
+    jStatus = nativeToJavaStatus(status);
     if (jStatus != AUDIO_JAVA_SUCCESS) {
         goto exit;
     }
 
-    nGeneration = env->GetIntArrayElements(jGeneration, NULL);
-    if (nGeneration == NULL) {
-        jStatus = AUDIO_JAVA_ERROR;
-        goto exit;
-    }
-    nGeneration[0] = generation1;
-    env->ReleaseIntArrayElements(jGeneration, nGeneration, 0);
-
     for (size_t i = 0; i < numPatches; i++) {
         jobject patchHandle = env->NewObject(gAudioHandleClass, gAudioHandleCstor,
                                                  nPatches[i].id);
@@ -1472,6 +1474,15 @@
     }
 
 exit:
+
+    nGeneration = env->GetIntArrayElements(jGeneration, NULL);
+    if (nGeneration == NULL) {
+        jStatus = AUDIO_JAVA_ERROR;
+    } else {
+        nGeneration[0] = generation1;
+        env->ReleaseIntArrayElements(jGeneration, nGeneration, 0);
+    }
+
     if (jSources != NULL) {
         env->DeleteLocalRef(jSources);
     }
diff --git a/core/jni/android_util_Binder.cpp b/core/jni/android_util_Binder.cpp
index abc6c4b..5559d48 100644
--- a/core/jni/android_util_Binder.cpp
+++ b/core/jni/android_util_Binder.cpp
@@ -917,6 +917,12 @@
     IPCThreadState::disableBackgroundScheduling(disable ? true : false);
 }
 
+static void android_os_BinderInternal_setMaxThreads(JNIEnv* env,
+        jobject clazz, jint maxThreads)
+{
+    ProcessState::self()->setThreadPoolMaxThreadCount(maxThreads);
+}
+
 static void android_os_BinderInternal_handleGc(JNIEnv* env, jobject clazz)
 {
     ALOGV("Gc has executed, clearing binder ops");
@@ -930,6 +936,7 @@
     { "getContextObject", "()Landroid/os/IBinder;", (void*)android_os_BinderInternal_getContextObject },
     { "joinThreadPool", "()V", (void*)android_os_BinderInternal_joinThreadPool },
     { "disableBackgroundScheduling", "(Z)V", (void*)android_os_BinderInternal_disableBackgroundScheduling },
+    { "setMaxThreads", "(I)V", (void*)android_os_BinderInternal_setMaxThreads },
     { "handleGc", "()V", (void*)android_os_BinderInternal_handleGc }
 };
 
diff --git a/core/jni/android_view_DisplayListCanvas.cpp b/core/jni/android_view_DisplayListCanvas.cpp
index 6aac0e4..d6f9db5 100644
--- a/core/jni/android_view_DisplayListCanvas.cpp
+++ b/core/jni/android_view_DisplayListCanvas.cpp
@@ -22,12 +22,12 @@
 
 #include <android_runtime/AndroidRuntime.h>
 
+#include <utils/Looper.h>
 #include <cutils/properties.h>
 
 #include <SkBitmap.h>
 #include <SkRegion.h>
 
-
 #include <Rect.h>
 #include <RenderNode.h>
 #include <CanvasProperty.h>
@@ -41,6 +41,52 @@
 
 using namespace uirenderer;
 
+jmethodID gRunnableMethodId;
+
+static JNIEnv* jnienv(JavaVM* vm) {
+    JNIEnv* env;
+    if (vm->GetEnv(reinterpret_cast<void**>(&env), JNI_VERSION_1_6) != JNI_OK) {
+        LOG_ALWAYS_FATAL("Failed to get JNIEnv for JavaVM: %p", vm);
+    }
+    return env;
+}
+
+class InvokeRunnableMessage : public MessageHandler {
+public:
+    InvokeRunnableMessage(JNIEnv* env, jobject runnable) {
+        mRunnable = env->NewGlobalRef(runnable);
+        env->GetJavaVM(&mVm);
+    }
+
+    virtual ~InvokeRunnableMessage() {
+        jnienv(mVm)->DeleteGlobalRef(mRunnable);
+    }
+
+    virtual void handleMessage(const Message&) {
+        jnienv(mVm)->CallVoidMethod(mRunnable, gRunnableMethodId);
+    }
+
+private:
+    JavaVM* mVm;
+    jobject mRunnable;
+};
+
+class GlFunctorReleasedCallbackBridge : public GlFunctorLifecycleListener {
+public:
+    GlFunctorReleasedCallbackBridge(JNIEnv* env, jobject javaCallback) {
+        mLooper = Looper::getForThread();
+        mMessage = new InvokeRunnableMessage(env, javaCallback);
+    }
+
+    virtual void onGlFunctorReleased(Functor* functor) override {
+        mLooper->sendMessage(mMessage, 0);
+    }
+
+private:
+    sp<Looper> mLooper;
+    sp<InvokeRunnableMessage> mMessage;
+};
+
 // ----------------------------------------------------------------------------
 // Setup
 // ----------------------------------------------------------------------------
@@ -56,10 +102,14 @@
 // ----------------------------------------------------------------------------
 
 static void android_view_DisplayListCanvas_callDrawGLFunction(JNIEnv* env, jobject clazz,
-        jlong canvasPtr, jlong functorPtr) {
+        jlong canvasPtr, jlong functorPtr, jobject releasedCallback) {
     Canvas* canvas = reinterpret_cast<Canvas*>(canvasPtr);
     Functor* functor = reinterpret_cast<Functor*>(functorPtr);
-    canvas->callDrawGLFunction(functor);
+    sp<GlFunctorReleasedCallbackBridge> bridge;
+    if (releasedCallback) {
+        bridge = new GlFunctorReleasedCallbackBridge(env, releasedCallback);
+    }
+    canvas->callDrawGLFunction(functor, bridge.get());
 }
 
 // ----------------------------------------------------------------------------
@@ -184,7 +234,8 @@
     { "nIsAvailable",       "!()Z",             (void*) android_view_DisplayListCanvas_isAvailable },
     { "nInsertReorderBarrier","!(JZ)V",         (void*) android_view_DisplayListCanvas_insertReorderBarrier },
 
-    { "nCallDrawGLFunction", "!(JJ)V",          (void*) android_view_DisplayListCanvas_callDrawGLFunction },
+    { "nCallDrawGLFunction", "!(JJLjava/lang/Runnable;)V",
+            (void*) android_view_DisplayListCanvas_callDrawGLFunction },
 
     { "nDrawRoundRect",     "!(JJJJJJJJ)V",     (void*) android_view_DisplayListCanvas_drawRoundRectProps },
     { "nDrawCircle",        "!(JJJJJ)V",        (void*) android_view_DisplayListCanvas_drawCircleProps },
@@ -207,6 +258,9 @@
 };
 
 int register_android_view_DisplayListCanvas(JNIEnv* env) {
+    jclass runnableClass = FindClassOrDie(env, "java/lang/Runnable");
+    gRunnableMethodId = GetMethodIDOrDie(env, runnableClass, "run", "()V");
+
     return RegisterMethodsOrDie(env, kClassPathName, gMethods, NELEM(gMethods));
 }
 
diff --git a/core/jni/android_view_RenderNode.cpp b/core/jni/android_view_RenderNode.cpp
index 4459f32..d3e18ed 100644
--- a/core/jni/android_view_RenderNode.cpp
+++ b/core/jni/android_view_RenderNode.cpp
@@ -564,7 +564,8 @@
 
             auto functor = std::bind(
                 std::mem_fn(&SurfaceViewPositionUpdater::doUpdatePosition), this,
-                (jlong) info.frameNumber, (jint) bounds.left, (jint) bounds.top,
+                (jlong) info.canvasContext.getFrameNumber(),
+                (jint) bounds.left, (jint) bounds.top,
                 (jint) bounds.right, (jint) bounds.bottom);
 
             info.canvasContext.enqueueFrameWork(std::move(functor));
diff --git a/core/jni/android_view_SurfaceControl.cpp b/core/jni/android_view_SurfaceControl.cpp
index d8233a0..0590134 100644
--- a/core/jni/android_view_SurfaceControl.cpp
+++ b/core/jni/android_view_SurfaceControl.cpp
@@ -597,6 +597,13 @@
     ctrl->deferTransactionUntil(handle, frameNumber);
 }
 
+static void nativeSetOverrideScalingMode(JNIEnv* env, jclass clazz, jlong nativeObject,
+        jint scalingMode) {
+    auto ctrl = reinterpret_cast<SurfaceControl *>(nativeObject);
+
+    ctrl->setOverrideScalingMode(scalingMode);
+}
+
 static jobject nativeGetHandle(JNIEnv* env, jclass clazz, jlong nativeObject) {
     auto ctrl = reinterpret_cast<SurfaceControl *>(nativeObject);
 
@@ -676,6 +683,8 @@
             (void*)nativeSetDisplayPowerMode },
     {"nativeDeferTransactionUntil", "(JLandroid/os/IBinder;J)V",
             (void*)nativeDeferTransactionUntil },
+    {"nativeSetOverrideScalingMode", "(JI)V",
+            (void*)nativeSetOverrideScalingMode },
     {"nativeGetHandle", "(J)Landroid/os/IBinder;",
             (void*)nativeGetHandle }
 };
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index 1ed93cc..22cf279 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -347,10 +347,6 @@
     <protected-broadcast android:name="android.app.action.SYSTEM_UPDATE_POLICY_CHANGED" />
     <protected-broadcast android:name="android.app.action.DEVICE_OWNER_CHANGED" />
 
-    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_AVAILABILITY_CHANGED" />
-    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_AVAILABLE" />
-    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_UNAVAILABLE" />
-
     <!-- Added in N -->
     <protected-broadcast android:name="android.intent.action.ANR" />
     <protected-broadcast android:name="android.intent.action.CALL" />
@@ -471,6 +467,9 @@
     <protected-broadcast android:name="com.android.internal.location.ALARM_TIMEOUT" />
     <protected-broadcast android:name="android.intent.action.GLOBAL_BUTTON" />
 
+    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_AVAILABLE" />
+    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_UNAVAILABLE" />
+
     <!-- ====================================================================== -->
     <!--                          RUNTIME PERMISSIONS                           -->
     <!-- ====================================================================== -->
@@ -481,7 +480,8 @@
     <!-- ====================================================================== -->
     <eat-comment />
 
-    <!-- Used for runtime permissions related to user's contacts and profile. -->
+    <!-- Used for runtime permissions related to contacts and profiles on this
+        device. -->
     <permission-group android:name="android.permission-group.CONTACTS"
         android:icon="@drawable/perm_group_contacts"
         android:label="@string/permgrouplab_contacts"
@@ -1070,7 +1070,7 @@
     <!-- =============================================================== -->
     <eat-comment />
 
-    <!-- Allows an application to modify and remove existing voicemails in the system
+    <!-- Allows an application to modify and remove existing voicemails in the system.
         <p>Protection level: signature|privileged
     -->
     <permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"
@@ -1087,7 +1087,7 @@
     <!-- ======================================= -->
     <eat-comment />
 
-    <!-- Allows an application to access extra location provider commands
+    <!-- Allows an application to access extra location provider commands.
          <p>Protection level: normal
     -->
     <permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
@@ -1133,7 +1133,7 @@
         android:label="@string/permlab_createNetworkSockets"
         android:protectionLevel="normal" />
 
-    <!-- Allows applications to access information about networks
+    <!-- Allows applications to access information about networks.
          <p>Protection level: normal
     -->
     <permission android:name="android.permission.ACCESS_NETWORK_STATE"
@@ -1275,7 +1275,15 @@
     <eat-comment />
 
     <!-- Allows access to the list of accounts in the Accounts Service.
-        <p>Protection level: normal
+
+    <p class="note"><strong>Note:</strong> Beginning with Android 6.0 (API level
+    23), if an app shares the signature of the authenticator that manages an
+    account, it does not need <code>"GET_ACCOUNTS"</code> permission to read
+    information about that account. On Android 5.1 and lower, all apps need
+    <code>"GET_ACCOUNTS"</code> permission to read information about any
+    account.</p>
+
+    <p>Protection level: dangerous
     -->
     <permission android:name="android.permission.GET_ACCOUNTS"
         android:permissionGroup="android.permission-group.CONTACTS"
@@ -1582,9 +1590,10 @@
     <permission android:name="android.permission.INTERACT_ACROSS_USERS"
         android:protectionLevel="signature|privileged|development" />
 
-    <!-- @hide Fuller form of {@link android.Manifest.permission#INTERACT_ACROSS_USERS}
+    <!-- @SystemApi Fuller form of {@link android.Manifest.permission#INTERACT_ACROSS_USERS}
          that removes restrictions on where broadcasts can be sent and allows other
-         types of interactions. -->
+         types of interactions
+         @hide -->
     <permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"
         android:protectionLevel="signature|installer" />
 
@@ -1666,11 +1675,21 @@
     <!-- ================================== -->
     <eat-comment />
 
-    <!-- Allows an application to open windows using the type
+    <!-- Allows an app to create windows using the type
          {@link android.view.WindowManager.LayoutParams#TYPE_SYSTEM_ALERT},
-         shown on top of all other applications.  Very few applications
+         shown on top of all other apps.  Very few apps
          should use this permission; these windows are intended for
-         system-level interaction with the user. -->
+         system-level interaction with the user.
+
+         <p class="note"><strong>Note:</strong> If the app
+         targets API level 23 or higher, the app user must explicitly grant
+         this permission to the app through a permission management screen. The app requests
+         the user's approval by sending an intent with action
+         {@link android.provider.Settings#ACTION_MANAGE_OVERLAY_PERMISSION}.
+         The app can check whether it has this authorization by calling
+         {@link android.provider.Settings#canDrawOverlays
+         Settings.canDrawOverlays()}.
+         <p>Protection level: signature -->
     <permission android:name="android.permission.SYSTEM_ALERT_WINDOW"
         android:label="@string/permlab_systemAlertWindow"
         android:description="@string/permdesc_systemAlertWindow"
@@ -1793,7 +1812,16 @@
         android:protectionLevel="signature|privileged|development" />
 
     <!-- Allows an application to read or write the system settings.
-         <p>Protection level: signature
+
+        <p class="note"><strong>Note:</strong> If the app targets API level 23
+        or higher, the app user
+        must explicitly grant this permission to the app through a permission management screen.
+        The app requests the user's approval by sending an intent with action
+        {@link android.provider.Settings#ACTION_MANAGE_WRITE_SETTINGS}. The app
+        can check whether it has this authorization by calling {@link
+        android.provider.Settings.System#canWrite Settings.System.canWrite()}.
+
+        <p>Protection level: signature
     -->
     <permission android:name="android.permission.WRITE_SETTINGS"
         android:label="@string/permlab_writeSettings"
@@ -2013,10 +2041,10 @@
     <permission android:name="android.permission.GET_ACCOUNTS_PRIVILEGED"
         android:protectionLevel="signature|privileged" />
 
-    <!-- @SystemApi Allows but does not guarantee access to user passwords at the conclusion of add
-         account -->
-    <permission android:name="android.permission.GET_PASSWORD_PRIVILEGED"
-        android:protectionLevel="signature|privileged" />
+    <!-- Allows but does not guarantee access to user passwords at the conclusion of add account
+    @hide -->
+    <permission android:name="android.permission.GET_PASSWORD"
+        android:protectionLevel="signature" />
 
     <!-- @SystemApi Allows applications to RW to diagnostic resources.
     <p>Not for use by third-party applications. -->
@@ -2058,11 +2086,12 @@
         android:protectionLevel="signature|privileged|development" />
 
     <!-- @SystemApi Allows an application to update application operation statistics. Not for
-         use by third party apps. @hide -->
+         use by third party apps.
+         @hide -->
     <permission android:name="android.permission.UPDATE_APP_OPS_STATS"
         android:protectionLevel="signature|privileged|installer" />
 
-    <!-- Allows an application to update the user app op restrictions.
+    <!-- @SystemApi Allows an application to update the user app op restrictions.
          Not for use by third party apps.
          @hide -->
     <permission android:name="android.permission.MANAGE_APP_OPS_RESTRICTIONS"
@@ -2208,6 +2237,12 @@
     <permission android:name="android.permission.BIND_PRINT_SPOOLER_SERVICE"
         android:protectionLevel="signature" />
 
+    <!-- @SystemApi Must be required by the RuntimePermissionPresenterService to ensure
+         that only the system can bind to it.
+         @hide -->
+    <permission android:name="android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE"
+        android:protectionLevel="signature" />
+
     <!-- Must be required by a TextService (e.g. SpellCheckerService)
          to ensure that only the system can bind to it.
          <p>Protection level: signature
@@ -2255,6 +2290,23 @@
     <permission android:name="android.permission.BIND_TV_INPUT"
         android:protectionLevel="signature|privileged" />
 
+    <!-- @SystemApi
+         Must be required by a {@link com.android.media.tv.remoteprovider.TvRemoteProvider}
+         to ensure that only the system can bind to it.
+         <p>Protection level: signature|privileged
+         <p>Not for use by third-party applications. </p>
+         @hide  -->
+    <permission android:name="android.permission.BIND_TV_REMOTE_SERVICE"
+        android:protectionLevel="signature|privileged" />
+
+    <!-- @SystemApi
+         Must be required for a virtual remote controller for TV.
+         <p>Protection level: signature|privileged
+         <p>Not for use by third-party applications. </p>
+         @hide  -->
+    <permission android:name="android.permission.TV_VIRTUAL_REMOTE_CONTROLLER"
+        android:protectionLevel="signature|privileged" />
+
     <!-- @SystemApi Allows an application to modify parental controls
          <p>Not for use by third-party applications.
          @hide -->
@@ -2372,21 +2424,19 @@
     <permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"
         android:protectionLevel="signature|privileged" />
 
-    <!-- Allows an application to grant specific permissions.
+    <!-- @SystemApi Allows an application to grant specific permissions.
          @hide -->
     <permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS"
         android:protectionLevel="signature|installer|verifier" />
 
-    <!-- Allows an app that has this permission and the permissions to install packages
+    <!-- @SystemApi Allows an app that has this permission and the permissions to install packages
          to request certain runtime permissions to be granted at installation.
-         @hide
-         @SystemApi -->
+         @hide -->
     <permission android:name="android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS"
         android:protectionLevel="signature|installer|verifier" />
 
-    <!-- Allows an application to revoke specific permissions.
-        @hide
-        @SystemApi -->
+    <!-- @SystemApi Allows an application to revoke specific permissions.
+        @hide -->
     <permission android:name="android.permission.REVOKE_RUNTIME_PERMISSIONS"
          android:protectionLevel="signature|installer|verifier" />
 
@@ -2922,7 +2972,7 @@
     <permission android:name="android.permission.QUERY_DO_NOT_ASK_CREDENTIALS_ON_BOOT"
                 android:protectionLevel="signature" />
 
-    <!-- Allows applications to kill UIDs.
+    <!-- @SystemApi Allows applications to kill UIDs.
         <p>Not for use by third-party applications.
          @hide -->
     <permission android:name="android.permission.KILL_UID"
diff --git a/core/res/res/anim/input_method_exit.xml b/core/res/res/anim/input_method_exit.xml
index 117774a..575404d 100644
--- a/core/res/res/anim/input_method_exit.xml
+++ b/core/res/res/anim/input_method_exit.xml
@@ -17,10 +17,10 @@
 -->
 <set xmlns:android="http://schemas.android.com/apk/res/android"
 	android:shareInterpolator="false">
-    <translate android:fromYDelta="0" android:toYDelta="10%"
-			android:interpolator="@interpolator/accelerate_quint"
-            android:duration="@android:integer/config_shortAnimTime"/>
+    <translate android:fromYDelta="0" android:toYDelta="8%"
+			android:interpolator="@interpolator/fast_out_linear_in"
+            android:duration="150"/>
     <alpha android:fromAlpha="1.0" android:toAlpha="0.0"
-			android:interpolator="@interpolator/accelerate_cubic"
-            android:duration="@android:integer/config_shortAnimTime"/>
+			android:interpolator="@interpolator/fast_out_linear_in"
+            android:duration="150"/>
 </set>
diff --git a/core/res/res/drawable/notification_material_media_action_background.xml b/core/res/res/drawable/notification_material_media_action_background.xml
index 8e559d5..4f50f15 100644
--- a/core/res/res/drawable/notification_material_media_action_background.xml
+++ b/core/res/res/drawable/notification_material_media_action_background.xml
@@ -16,4 +16,4 @@
   -->
 
 <ripple xmlns:android="http://schemas.android.com/apk/res/android"
-    android:color="@color/ripple_material_dark" />
+    android:color="@color/ripple_material_light" />
diff --git a/core/res/res/layout/floating_popup_overflow_button.xml b/core/res/res/layout/floating_popup_overflow_button.xml
index 7053f3e..12e2000 100644
--- a/core/res/res/layout/floating_popup_overflow_button.xml
+++ b/core/res/res/layout/floating_popup_overflow_button.xml
@@ -24,5 +24,5 @@
     android:paddingEnd="@dimen/floating_toolbar_menu_button_side_padding"
     android:paddingBottom="@dimen/floating_toolbar_menu_image_button_vertical_padding"
     android:scaleType="centerInside"
-    android:background="?attr/selectableItemBackgroundBorderless"
+    android:background="?attr/actionBarItemBackground"
     android:tint="?attr/floatingToolbarForegroundColor" />
diff --git a/core/res/res/layout/notification_template_header.xml b/core/res/res/layout/notification_template_header.xml
index 992e88e..d16dcc6 100644
--- a/core/res/res/layout/notification_template_header.xml
+++ b/core/res/res/layout/notification_template_header.xml
@@ -69,15 +69,17 @@
         android:text="@string/notification_header_divider_symbol"
         android:singleLine="true"
         android:visibility="gone"/>
-    <ViewStub
+    <DateTimeView
         android:id="@+id/time"
+        android:textAppearance="@style/TextAppearance.Material.Notification.Time"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
+        android:layout_gravity="center"
         android:layout_marginStart="2dp"
         android:layout_marginEnd="2dp"
-        android:layout="@layout/notification_template_part_time"
-        android:visibility="gone"
-        />
+        android:showRelative="true"
+        android:singleLine="true"
+        android:visibility="gone" />
     <ViewStub
         android:id="@+id/chronometer"
         android:layout_width="wrap_content"
diff --git a/core/res/res/layout/notification_template_material_big_text.xml b/core/res/res/layout/notification_template_material_big_text.xml
index 3638b20..71600ef 100644
--- a/core/res/res/layout/notification_template_material_big_text.xml
+++ b/core/res/res/layout/notification_template_material_big_text.xml
@@ -47,7 +47,7 @@
             <com.android.internal.widget.ImageFloatingTextView android:id="@+id/big_text"
                 android:layout_width="match_parent"
                 android:layout_height="0dp"
-                android:layout_marginTop="0.5dp"
+                android:layout_marginTop="@dimen/notification_text_margin_top"
                 android:paddingBottom="@dimen/notification_content_margin_bottom"
                 android:textAppearance="@style/TextAppearance.Material.Notification"
                 android:singleLine="false"
diff --git a/core/res/res/layout/notification_template_material_inbox.xml b/core/res/res/layout/notification_template_material_inbox.xml
index ce9acda..0e93d0b 100644
--- a/core/res/res/layout/notification_template_material_inbox.xml
+++ b/core/res/res/layout/notification_template_material_inbox.xml
@@ -37,6 +37,7 @@
             android:layout_gravity="top"
             android:paddingStart="@dimen/notification_content_margin_start"
             android:paddingEnd="@dimen/notification_content_margin_end"
+            android:paddingBottom="@dimen/notification_content_margin_bottom"
             android:minHeight="@dimen/notification_min_content_height"
             android:clipToPadding="false"
             android:orientation="vertical"
diff --git a/core/res/res/layout/notification_template_material_media.xml b/core/res/res/layout/notification_template_material_media.xml
index ba6d30a..4c64207 100644
--- a/core/res/res/layout/notification_template_material_media.xml
+++ b/core/res/res/layout/notification_template_material_media.xml
@@ -20,6 +20,7 @@
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
+    android:background="#00000000"
     android:tag="media"
     >
     <include layout="@layout/notification_template_header"
@@ -29,7 +30,6 @@
         android:id="@+id/notification_main_column"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:background="#00000000"
         android:orientation="horizontal"
         android:layout_marginStart="@dimen/notification_content_margin_start"
         android:layout_marginTop="@dimen/notification_content_margin_top"
diff --git a/core/res/res/layout/notification_template_part_time.xml b/core/res/res/layout/notification_template_part_time.xml
deleted file mode 100644
index 442ff8c..0000000
--- a/core/res/res/layout/notification_template_part_time.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<DateTimeView android:id="@+id/time" xmlns:android="http://schemas.android.com/apk/res/android"
-    android:textAppearance="@style/TextAppearance.Material.Notification.Time"
-    android:layout_width="wrap_content"
-    android:layout_height="wrap_content"
-    android:layout_gravity="center"
-    android:layout_marginEnd="4dp"
-    android:layout_weight="0"
-    android:singleLine="true"
-    />
diff --git a/core/res/res/layout/notification_template_right_icon.xml b/core/res/res/layout/notification_template_right_icon.xml
index b652127..65a5015 100644
--- a/core/res/res/layout/notification_template_right_icon.xml
+++ b/core/res/res/layout/notification_template_right_icon.xml
@@ -16,8 +16,8 @@
   -->
 
 <ImageView android:id="@+id/right_icon" xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="@dimen/notification_large_icon_width"
-    android:layout_height="@dimen/notification_large_icon_width"
+    android:layout_width="40dp"
+    android:layout_height="40dp"
     android:layout_marginEnd="@dimen/notification_content_margin_end"
     android:layout_marginTop="36dp"
     android:layout_gravity="top|end"
diff --git a/core/res/res/layout/notification_template_text.xml b/core/res/res/layout/notification_template_text.xml
index a318bda..20c2896 100644
--- a/core/res/res/layout/notification_template_text.xml
+++ b/core/res/res/layout/notification_template_text.xml
@@ -19,7 +19,7 @@
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:layout_gravity="top"
-    android:layout_marginTop="0.5dp"
+    android:layout_marginTop="@dimen/notification_text_margin_top"
     android:ellipsize="marquee"
     android:fadingEdge="horizontal"
     android:gravity="top"
diff --git a/core/res/res/layout/search_view.xml b/core/res/res/layout/search_view.xml
index 718e4a2..72588c7 100644
--- a/core/res/res/layout/search_view.xml
+++ b/core/res/res/layout/search_view.xml
@@ -48,11 +48,8 @@
     <LinearLayout
         android:id="@+id/search_edit_frame"
         android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
+        android:layout_height="match_parent"
         android:layout_weight="1"
-        android:layout_gravity="center_vertical"
-        android:layout_marginTop="4dip"
-        android:layout_marginBottom="4dip"
         android:layout_marginStart="8dip"
         android:layout_marginEnd="8dip"
         android:orientation="horizontal"
@@ -71,7 +68,7 @@
         <LinearLayout
             android:id="@+id/search_plate"
             android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
+            android:layout_height="match_parent"
             android:layout_weight="1"
             android:layout_gravity="center_vertical"
             android:orientation="horizontal">
@@ -81,7 +78,7 @@
                 android:layout_height="36dip"
                 android:layout_width="0dp"
                 android:layout_weight="1"
-                android:layout_gravity="bottom"
+                android:layout_gravity="center_vertical"
                 android:paddingStart="@dimen/dropdownitem_text_padding_left"
                 android:paddingEnd="@dimen/dropdownitem_text_padding_right"
                 android:singleLine="true"
diff --git a/core/res/res/layout/text_edit_suggestion_container.xml b/core/res/res/layout/text_edit_suggestion_container.xml
index b2589da..4a74ea2 100644
--- a/core/res/res/layout/text_edit_suggestion_container.xml
+++ b/core/res/res/layout/text_edit_suggestion_container.xml
@@ -19,7 +19,7 @@
     android:layout_height="wrap_content">
     <LinearLayout
         android:id="@+id/suggestionWindowContainer"
-        android:layout_width="wrap_content"
+        android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:orientation="vertical"
         android:elevation="@android:dimen/text_edit_floating_toolbar_elevation"
diff --git a/core/res/res/layout/text_edit_suggestion_container_material.xml b/core/res/res/layout/text_edit_suggestion_container_material.xml
index d1c65c0..34e7bc8 100644
--- a/core/res/res/layout/text_edit_suggestion_container_material.xml
+++ b/core/res/res/layout/text_edit_suggestion_container_material.xml
@@ -21,7 +21,7 @@
     android:layout_height="wrap_content">
     <LinearLayout
         android:id="@+id/suggestionWindowContainer"
-        android:layout_width="wrap_content"
+        android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:background="?android:attr/floatingToolbarPopupBackgroundDrawable"
         android:elevation="@android:dimen/text_edit_floating_toolbar_elevation"
diff --git a/core/res/res/values-af/strings.xml b/core/res/res/values-af/strings.xml
index 6a85537..2b1aaf1 100644
--- a/core/res/res/values-af/strings.xml
+++ b/core/res/res/values-af/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Soek vir diens"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi-oproepe"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Om oproepe te maak en boodskappe oor Wi-Fi te stuur, vra jou diensverskaffer eers om hierdie diens op te stel. Skakel Wi-Fi-oproepe dan weer in Instellings aan."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registreer by jou diensverskaffer"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi-oproep"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Af"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Verkieslik Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Verkieslik sellulêr"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Horlosieberging is vol! Vee \'n paar lêers uit om plek te maak."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV-berging is vol. Vee \'n paar lêers uit om spasie beskikbaar te stel."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Foon se berging is vol. Vee \'n aantal lêers uit om spasie vry te maak."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Netwerk kan dalk gemonitor word"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Sertifikaatoutoriteite is geïnstalleer</item>
+      <item quantity="one">Sertifikaatoutoriteit is geïnstalleer</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Deur \'n onbekende derde party"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Deur jou werkprofieladministrateur"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Deur <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Neem foutverslag"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Dit sal inligting oor die huidige toestand van jou toestel insamel om as \'n e-posboodskap te stuur. Dit sal \'n tydjie neem vandat die foutverslag begin is totdat dit reg is om gestuur te word; wees asseblief geduldig."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktiewe verslag"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Gebruik dit in die meeste omstandighede. Maak dit vir jou moontlik om die vordering van die verslag na te spoor en meer besonderhede oor die probleem in te voer. Dit sal dalk sommige afdelings weglaat wat minder gebruik word en waarvoor verslagdoening lank duur."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Volle verslag"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Gebruik hierdie opsie vir minimale stelselinmenging wanneer jou toestel nie reageer nie of te stadig is, of wanneer jy alle afdelings benodig. Neem nie \'n skermkiekie nie en laat jou nie toe om meer besonderhede in te voer nie."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Neem skermkiekie vir foutverslag oor <xliff:g id="NUMBER_1">%d</xliff:g> sekondes.</item>
       <item quantity="one">Neem skermkiekie vir foutverslag oor <xliff:g id="NUMBER_0">%d</xliff:g> sekonde.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> uur</item>
       <item quantity="one">1 uur</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Videoprobleem"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Hierdie video is nie geldig vir stroming na hierdie toestel nie."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Kan nie hierdie video speel nie."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"AF"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Voltooi handeling met"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Voltooi handeling met gebruik van %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Voltooi handeling"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Maak oop met"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Maak oop met %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Maak oop"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Redigeer met"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Redigeer met %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Wysig"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Deel met"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Deel met %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Deel"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Stuur met"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Stuur met %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Stuur"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Kies \'n Tuis-program"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Gebruik %1$s as Tuis"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Vang prent vas"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Vang prent vas met"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Vang prent vas met %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Vang prent vas"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Gebruik hierdie aksie by verstek."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Gebruik \'n ander program"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Vee die verstek instelling uit in Stelselinstellings &gt; Programme &gt; Afgelaai."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Kies jaar"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> uitgevee"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Werk-<xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Om hierdie skerm te ontspeld, raak en hou tegelyk Terug en Oorsig."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Raak en hou Terug om hierdie skerm te ontspeld."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Om hierdie skerm te ontspeld, raak en hou Oorsig."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Program is vasgespeld: Dit mag nie op hierdie toestel ontspeld word nie."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Skerm vasgespeld"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Opgedateer deur jou administrateur"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Deur jou administrateur uitgevee"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Om batterylewe te help verbeter, verminder batterybespaarder jou toestel se werkverrigting en beperk vibrasie, liggingdienste en die meeste agtergronddata. E-pos, boodskappe en ander programme wat op sinkronisering staatmaak, sal dalk nie opdateer tensy jy hulle oopmaak nie.\n\nBatterybespaarder skakel outomaties af wanneer jou toestel besig is om te laai."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Databespaarder verhoed sommige programme om data in die agtergrond te stuur of te aanvaar om datagebruik te help verminder. \'n Program wat jy tans gebruik kan by data ingaan, maar sal dit dalk minder gereeld doen. Dit kan byvoorbeeld beteken dat prente nie wys totdat jy op hulle tik nie."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d minute lank (tot <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Een minuut lank (tot <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-am/strings.xml b/core/res/res/values-am/strings.xml
index 7a3673f..3892bfc 100644
--- a/core/res/res/values-am/strings.xml
+++ b/core/res/res/values-am/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"አገልግሎት ፍለጋ"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"የWi-Fi ጥሪ ማድረጊያ"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"በWi-Fi ላይ ጥሪዎችን ለማድረግ እና መልዕክቶችን ለመላክ መጀመሪያ የአገልግሎት አቅራቢዎ ይህን አገልግሎት እንዲያዘጋጅልዎ መጠየቅ አለብዎት። ከዚያ ከቅንብሮች ሆነው እንደገና የWi-Fi ጥሪን ያብሩ።"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"የአገልግሎት አቅራቢዎ ጋር ይመዝገቡ"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"የ%s Wi-Fi ጥሪ"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"ጠፍቷል"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi ተመርጧል"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"የተንቀሳቃሽ ስልክ ተመርጧል"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"የእጅ ሰዓት ማከማቻ ሙሉ ነው። ቦታ ለማስለቀቅ አንዳንድ ፋይሎችን ይሰርዙ።"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"የቴሌቪዥን ማከማቻ ሙሉ ነው። ቦታ ለማስለቀቅ አንዳንድ ፋይሎችን ይሰርዙ።"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"የስልክ ማከማቻ ሙሉ ነው! ቦታ ነፃ ለማድረግ አንዳንድ ፋይሎች ሰርዝ።"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"አውታረ መረብ በክትትል ውስጥ ሊሆን ይችላል"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">የእውቅና ማረጋገጫ ባለስልጣናት ተጭነዋል</item>
+      <item quantity="other">የእውቅና ማረጋገጫ ባለስልጣናት ተጭነዋል</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"ባልታወቀ ሶስተኛ ወገን"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"በእርስዎ የስራ መገለጫ አስተዳዳሪ"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"በ<xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"የሳንካ ሪፖርት ውሰድ"</string>
     <string name="bugreport_message" msgid="398447048750350456">"ይሄ እንደ የኢሜይል መልዕክት አድርጎ የሚልከውን ስለመሣሪያዎ የአሁኑ ሁኔታ መረጃ ይሰበስባል። የሳንካ ሪፖርቱን ከመጀመር ጀምሮ እስኪላክ ድረስ ትንሽ ጊዜ ይወስዳል፤ እባክዎ ይታገሱ።"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"መስተጋብራዊ ሪፖርት"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"በአብዛኛዎቹ ሁኔታዎች ይህን ይጠቀሙ። የሪፖርቱን ሂደት እንዲከታተሉ እና ስለችግሩ ተጨማሪ ዝርዝሮችን እንዲያስገቡ ያስችልዎታል። ሪፖርት ለማድረግ በጣም ረዥም ጊዜ የሚወስዱ አንዳንድ ብዙም ጥቅም ላይ የማይውሉ ክፍሎችን ሊያልፋቸው ይችላል።"</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"ሙሉ ሪፖርት"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"የእርስዎ መሣሪያ ምላሽ የማይሰጥ ወይም ቀርፋፋ ሲሆን ለአነስተኛ የስርዓት ጣልቃ ገብነት፣ ወይም በሁሉም የሪፖርት ክፍሎች ላይ ካስፈለገዎት ይህን አማራጭ ይጠቀሙ። ቅጽበታዊ ገጽ ዕይታ አያነሳም ወይም ተጨማሪ ዝርዝሮችን እንዲያስገቡ አይፈቅድልዎትም።"</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">በ<xliff:g id="NUMBER_1">%d</xliff:g> ሰከንዶች ውስጥ ለሳንካ ሪፖርት ቅጽበታዊ ገጽ ዕይታን በማንሳት ላይ።</item>
       <item quantity="other">በ<xliff:g id="NUMBER_1">%d</xliff:g> ሰከንዶች ውስጥ ለሳንካ ሪፖርት ቅጽበታዊ ገጽ ዕይታን በማንሳት ላይ።</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ሰዓቶች</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ሰዓቶች</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"የቪዲዮ ችግር"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"ይቅርታ፣ ይህ ቪዲዮ በዚህ መሣሪያ ለመልቀቅ ትክክል አይደለም።"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"ይሄን ቪዲዮ ማጫወት አልተቻለም።"</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ውጪ"</string>
     <string name="whichApplication" msgid="4533185947064773386">"... በመጠቀም ድርጊቱን አጠናቅ"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$sን ተጠቅመው እርምጃ ያጠናቅቁ"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"እርምጃውን አጠናቅቅ"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"ክፈት በ"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"ክፈት በ%1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"ክፈት"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"ያርትዑ በ"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"ያርትዑ በ%1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"ያርትዑ"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"በሚከተለው ያጋሩ፦"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"በ%1$s ያጋሩ"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"አጋራ"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"ይላኩ በ፦"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$sን በመጠቀም ይላኩ"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"ላክ"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"የመነሻ መተግበሪያ ይምረጡ"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$sን እንደመነሻ ይጠቀሙ"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"ምስል አንሳ"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"ምስል ቅረፅ በ"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"ምስልን በ%1$s አንሳ"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"ምስል አንሳ"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"ለዕርምጃ ነባሪ ተጠቀም።"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"የተለየ መተግበሪያ ይጠቀሙ"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"ነባሪ አጽዳ በስርዓት ቅንብሮች  ውስጥ  &gt; Apps &amp;gt፤ወርዷል፡፡"</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"ዓመት ይምረጡ"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> ተሰርዟል"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"ስራ <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"ይህን ማያ ገጽ ለመንቀል ተመለስን እና አጠቃላይ እይታን በተመሳሳይ ይንኳቸውና ይያዟቸው።"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"ይህን ማያ ገጽ ለመንቀል ይንኩት እና መልሰው ይያዙት።"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ይህን ማያ ገጽ ለመንቀል አጠቃላይ እይታን ይንኩትና ይያዙት።"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"መተግበሪያ ተሰክቷል፦ በዚህ መሣሪያ ላይ ማላቀቅ አይፈቀድም።"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"ማያ ገጽ ተሰክቷል"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"በአስተዳዳሪዎ ተዘምኗል"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"በእርስዎ አስተዳዳሪ ተሰርዟል"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"የባትሪ ዕድሜን ለማሻሻል ማገዝ እንዲቻል፣ ኢሜይል፣ መልዕክት አላላክ እና ሌሎች በማመሳሰል ላይ የሚመረኮዙ መተግበሪያዎች እርስዎ ካልከፈቱዋቸው በቀር አይዘምኑም።\n\nየባትሪ ኃይል ቆጣቢ የእርስዎ መሣሪያ ኃይል በሚሞላበት ጊዜ በራስ-ሰር ይጠፋል።"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"የውሂብ አጠቃቀም እንዲቀንስ ለማገዝ ውሂብ ቆጣቢ አንዳንድ መተግበሪያዎች ከበስተጀርባ ሆነው ውሂብ እንዳይልኩ ወይም እንዳይቀበሉ ይከለክላቸዋል። በአሁኑ ጊዜ እየተጠቀሙበት ያለ መተግበሪያ ውሂብ ሊደርስ ይችላል፣ ነገር ግን ባነሰ ተደጋጋሚነት ሊሆን ይችላል። ይሄ ማለት ለምሳሌ ምስሎችን መታ እስኪያደርጓቸው ድረስ ላይታዩ ይችላሉ ማለት ነው።"</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">ለ%1$d ደቂቃዎች (እስከ <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> ድረስ)</item>
       <item quantity="other">ለ%1$d ደቂቃዎች (እስከ <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> ድረስ)</item>
diff --git a/core/res/res/values-ar/strings.xml b/core/res/res/values-ar/strings.xml
index 70ebba16..712ed7d 100644
--- a/core/res/res/values-ar/strings.xml
+++ b/core/res/res/values-ar/strings.xml
@@ -128,11 +128,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"البحث عن خدمة"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"‏الاتصال عبر Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"‏لإجراء مكالمات وإرسال رسائل عبر Wi-Fi، اطلب من مشغّل شبكة الجوّال أولاً إعداد هذا الجهاز، ثم شغّل الاتصال عبر Wi-Fi مرة أخرى من خلال الإعدادات."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"التسجيل لدى مشغّل شبكة الجوّال"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"‏%s جارٍ الاتصال عبر Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"إيقاف"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"‏شبكة Wi-Fi مُفضّلة"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"شبكة الجوّال مُفضّلة"</string>
@@ -168,7 +172,14 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"سعة تخزين المشاهدة ممتلئة! احذف بعض الملفات لتحرير مساحة."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"سعة تخزين التلفزيون ممتلئة. يمكنك حذف بعض الملفات لتوفير مساحة فارغة."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"سعة تخزين الهاتف ممتلئة. احذف بعض الملفات لإخلاء مساحة."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"قد تكون الشبكة مراقبة"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="zero">تم تثبيت شهادة المرجع المصدق</item>
+      <item quantity="two">تم تثبيت شهادتي المرجع المصدق</item>
+      <item quantity="few">تم تثبيت شهادات المرجع المصدق</item>
+      <item quantity="many">تم تثبيت شهادات المرجع المصدق</item>
+      <item quantity="other">تم تثبيت شهادات المرجع المصدق</item>
+      <item quantity="one">تم تثبيت شهادة المرجع المصدق</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"بواسطة جهة خارجية غير معلومة"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"بواسطة مشرف الملف الشخصي للعمل"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"بواسطة <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -215,9 +226,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"إعداد تقرير بالأخطاء"</string>
     <string name="bugreport_message" msgid="398447048750350456">"سيجمع هذا معلومات حول حالة جهازك الحالي لإرسالها كرسالة إلكترونية، ولكنه سيستغرق وقتًا قليلاً من بدء عرض تقرير بالأخطاء. وحتى يكون جاهزًا للإرسال، الرجاء الانتظار."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"تقرير تفاعلي"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"يمكنك استخدام هذا الخيار في معظم الأحيان، حيث يتيح لك إمكانية تتبع مستوى تقدم التقرير والحصول على مزيد من المعلومات حول المشكلة. وقد يتم إسقاط بعض الأقسام الأقل استخدامًا والتي تستغرق وقتًا طويلاً أثناء إعداد التقرير."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"تقرير كامل"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"يمكنك استخدام هذا الخيار للحصول على حد أدنى من تدخل النظام عند توقف استجابة الجهاز أو حدوث بطئ شديد أو عند الحاجة إلى جميع أقسام التقرير. لا يؤدي ذلك إلى التقاط لقطة شاشة أو السماح لك بالحصول على مزيد من التفاصيل."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="zero">سيتم التقاط لقطة شاشة لتقرير الخطأ خلال <xliff:g id="NUMBER_1">%d</xliff:g> ثانية.</item>
       <item quantity="two">سيتم التقاط لقطة شاشة لتقرير الخطأ خلال ثانيتين (<xliff:g id="NUMBER_1">%d</xliff:g>).</item>
@@ -875,6 +888,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> من الساعات</item>
       <item quantity="one">ساعة واحدة</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"مشكلة في الفيديو"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"عذرًا، هذا الفيديو غير صالح للبث على هذا الجهاز."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"لا يمكنك تشغيل هذا الفيديو."</string>
@@ -917,16 +940,25 @@
     <string name="capital_off" msgid="6815870386972805832">"إيقاف"</string>
     <string name="whichApplication" msgid="4533185947064773386">"إكمال الإجراء باستخدام"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"‏إكمال الإجراء باستخدام %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"إكمال الإجراء"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"فتح باستخدام"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"‏فتح باستخدام %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"فتح"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"تعديل باستخدام"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"‏تعديل باستخدام %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"تعديل"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"مشاركة مع"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"‏مشاركة مع %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"مشاركة"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"إرسال باستخدام"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"‏إرسال باستخدام %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"إرسال"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"تحديد تطبيق صفحة رئيسية"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"‏استخدام %1$s كصفحة رئيسية"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"التقاط صورة"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"التقاط صورة باستخدام"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"‏التقاط صورة باستخدام %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"التقاط صورة"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"الاستخدام بشكل افتراضي لهذا الإجراء."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"استخدام تطبيق آخر"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"‏يمكنك محو الإعدادات الافتراضية في إعدادات النظام &gt; التطبيقات &gt; ما تم تنزيله."</string>
@@ -1500,7 +1532,7 @@
     <string name="select_year" msgid="7952052866994196170">"تحديد العام"</string>
     <string name="deleted_key" msgid="7659477886625566590">"تم حذف <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> المخصص للعمل"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"لإلغاء تثبيت هذه الشاشة، يمكنك لمس \"رجوع\" و\"نظرة عامة\" في آن واحد مع الاستمرار."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"لإزالة تثبيت علامة التبويب على هذه الشاشة، يمكنك لمس زر الرجوع مع الاستمرار."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"لإلغاء تثبيت هذه الشاشة، يمكنك لمس \"نظرة عامة\" مع الاستمرار."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"التطبيق مقيد: ولا يسمح بإلغاء التقييد على هذا الجهاز."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"تم تثبيت الشاشة"</string>
@@ -1512,6 +1544,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"تم التحديث بواسطة المشرف"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"تم حذف الحزمة عن طريق المشرف"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"للمساعدة في تحسين عمر البطارية، يساعد موفر البطارية في تقليل أداء الجهاز ويفرض قيدًا على الاهتزاز وخدمات الموقع ومعظم بيانات الخلفية. قد لا يتم تحديث البريد الإلكتروني والمراسلة والتطبيقات الأخرى التي تعتمد على المزامنة ما لم تفتحها.\n\nيتم إيقاف موفر البطارية تلقائيًا أثناء شحن الجهاز."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"للمساعدة في خفض استخدام البيانات، يمنع توفير البيانات بعض التطبيقات من إرسال البيانات وتلقيها في الخلفية. يمكن للتطبيق الذي تستخدمه الآن الوصول إلى البيانات، ولكن لا يمكنه تنفيذ ذلك كثيرًا. وهذا يعني أن الصور على سبيل المثال لا تظهر حتى تنقر عليها."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="zero">‏لمدة أقل من دقيقة (%1$d) (حتى <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="two">‏لمدة دقيقتين (%1$d) (حتى <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-az-rAZ/strings.xml b/core/res/res/values-az-rAZ/strings.xml
index 2e4c10d..11f6ddc 100644
--- a/core/res/res/values-az-rAZ/strings.xml
+++ b/core/res/res/values-az-rAZ/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Xidmət axtarılır"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi zəngi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi üzərindən zəng etmək və mesaj göndərmək üçün ilk öncə operatordan bu xidməti ayarlamağı tələb edin. Sonra Ayarlardan Wi-Fi çağrısını aktivləşdirin."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Operatorla qeydiyyatdan keçin"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi Zəngi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Deaktiv"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi tərcih edilir"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobil şəbəkə tərcih edilir"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Yaddaş dolub. Boşaltmaq üçün bəzi faylları silin."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV-nin yaddaşı doludur. Yer boşaltmaq üçün bəzi faylları silin."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Telefonun yaddaşı doludur. Boş yer üçün bəzi faylları silin."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Şəbəkə monitor edilə bilər"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Sertifikat səlahiyyətləri quraşdırıldı</item>
+      <item quantity="one">Sertifikat səlahiyyəti quraşdırıldı</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Bilinməyən üçüncü tərəfdən"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"İş profili administratorunuz tərəfindən"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> tərəfindən"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Baqı xəbər verin"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Bu, sizin hazırkı cihaz durumu haqqında məlumat toplayacaq ki, elektron məktub şəklində göndərsin. Baq raportuna başlamaq üçün bir az vaxt lazım ola bilər, bir az səbr edin."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"İnteraktiv hesabat"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Bir çox hallarda bundan istifadə edin. Bu hesabatın gedişatını izləməyə və problem haqqında daha ətraflı məlumat daxil etməyə imkan verir. Bu, çox vaxt tələb edən bəzi az istifadə olunan bölmələri ixtisar edə bilər."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Tam hesabat"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Cihazınız cavab verməyəndə və ya zəif işləyəndə və ya bütün hesabat bölmələri lazım olanda minimum sistem müdaxiləsi üçün bu seçimdən istifadə edin. Ani şəkil çəkmir və ya ətraflı məlumat daxil etməyə imkan vermir."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Baq hesabatı üçün <xliff:g id="NUMBER_1">%d</xliff:g> saniyədə sktinşot çəkilir.</item>
       <item quantity="one">Baq hesabatı üçün <xliff:g id="NUMBER_0">%d</xliff:g> saniyədə skrinşot çəkilir.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> saat</item>
       <item quantity="one">1 saat</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Video problemi"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Bu video bu cihaza strim olunmaq üçün uyğun deyil."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Bu video oxumur"</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"QAPALI"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Əməliyyatı tamamlayın:"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s istifadə edərək əməliyyatı tamamlayın"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Əməliyyatı tamamlayın"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Bununla açın"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s ilə açın"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Açın"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Bununla düzəliş edin:"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s ilə düzəliş edin"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Redaktə edin"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Bununla paylaşın"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s ilə paylaşın"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Paylaşın"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"İstifadə edərək göndərin"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s istifadə edərək göndərin"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Göndər"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Əsas tətbiqi seçin"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$s tətbiqini Əsas olaraq işlədin"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Şəkil Çəkimi"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Təsviri bununla çəkin"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Təsviri %1$s ilə çəkin"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Şəkil Çəkimi"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Bu fəaliyyət üçün defolt istifadə edin"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Başqa tətbiq istifadə edin"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Sistem ayarlarında, Tətbiqlərdə və Endirilmişlərdə defoltu təmizləyin."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"İl seçin"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> silindi"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"İş <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Sancağı götürmək üçün Geri və İcmal düymələrinə eyni zamanda toxunun və saxlayın."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Sancağı götürmək üçün Geri düyməsinə toxunun və saxlayın."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Sancağı götürmək üçün İcmala toxunun və saxlayın."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Tətbiq sancılıb: Açmağa bu cihazda icazə verilmir."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Screen pinned"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Sizin administrator tərəfindən yeniləndi"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Administratorunuz tərəfindən silinib"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Batareyanın istismar müddətini təkmilləşdirmək üçün batareya qənaəti cihazınızın məhsuldarlığını azaldır və titrətmə, məkan xidmətləri və ən son fon məlumatlarını məhdudlaşdırır. Sinxronlaşmaya arxayın olan e-poçt, mesajlaşma və digər proqramlar siz onları açmayana kimi yenilənməyə bilər.\n\nCihazınız doldurulan zaman batareya qənaəti avtomatik olaraq sönür."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Data istifadəsini azalatmaq üçün, Data Qanaəti bəzi tətbiqlərin arxafonda data göndərməsini və qəbulunun qarşısını alır. Hazırda istifadə etdiyiniz tətbiq dataya daxil ola bilər, lakin çox az hissəsini tez-tez edə bilər. Bu o deməkdir ki, məsələn, üzərinə tıklamadıqca o şəkillər göstərilməyəcək."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other"> %1$d dəqiqəlik (saat <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> radəsinə qədər)</item>
       <item quantity="one">Bir dəqiqəlik (saat <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> radəsinə qədər)</item>
diff --git a/core/res/res/values-b+sr+Latn/strings.xml b/core/res/res/values-b+sr+Latn/strings.xml
index b1d086e..57e53c3 100644
--- a/core/res/res/values-b+sr+Latn/strings.xml
+++ b/core/res/res/values-b+sr+Latn/strings.xml
@@ -125,11 +125,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Pretraživanje usluge"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Pozivanje preko Wi-Fi-ja"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Da biste upućivali pozive i slali poruke preko Wi-Fi-ja, prvo zatražite od mobilnog operatera da vam omogući ovu uslugu. Zatim u Podešavanjima ponovo uključite Pozivanje preko Wi-Fi-ja."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registrujte se kod mobilnog operatera"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Wi-Fi pozivanje preko operatera %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Isključeno"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Prednost ima Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Prednost ima mobilna mreža"</string>
@@ -165,7 +169,11 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Memorija sata je puna. Izbrišite neke datoteke da biste oslobodili prostor."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Memorijski prostor na TV-u je popunjen. Izbrišite neke datoteke da biste oslobodili prostor."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Skladište telefona je puno! Izbrišite neke datoteke kako biste oslobodili prostor."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Mreža se možda nadgleda"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Instalirani su autoriteti za izdavanje sertifikata</item>
+      <item quantity="few">Instalirani su autoriteti za izdavanje sertifikata</item>
+      <item quantity="other">Instalirani su autoriteti za izdavanje sertifikata</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Od strane nepoznate treće strane"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Od strane administratora profila za posao"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Od strane <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -212,9 +220,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Napravi izveštaj o grešci"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Ovim će se prikupiti informacije o trenutnom stanju uređaja kako bi bile poslate u poruci e-pošte. Od započinjanja izveštaja o grešci do trenutka za njegovo slanje proći će neko vreme; budite strpljivi."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktiv. izveštaj"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Koristite ovo u većini slučajeva. To vam omogućava da pratite napredak izveštaja i da unosite dodatne detalje o problemu. Verovatno će izostaviti neke manje korišćene odeljke za koje pravljenje izveštaja dugo traje."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Kompletan izveštaj"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Koristite ovu opciju radi minimalnih sistemskih smetnji kada uređaj ne reaguje, prespor je ili su vam potrebni svi odeljci izveštaja. Ne pravi snimak ekrana niti vam dozvoljava unos dodatnih detalja."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Napravićemo snimak ekrana radi izveštaja o grešci za <xliff:g id="NUMBER_1">%d</xliff:g> sekundu.</item>
       <item quantity="few">Napravićemo snimak ekrana radi izveštaja o grešci za <xliff:g id="NUMBER_1">%d</xliff:g> sekunde.</item>
@@ -857,6 +867,16 @@
       <item quantity="few"><xliff:g id="COUNT">%d</xliff:g> sata</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> sati</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problem sa video snimkom"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Ovaj video ne može da se strimuje na ovom uređaju."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Ne možete da pustite ovaj video."</string>
@@ -899,16 +919,25 @@
     <string name="capital_off" msgid="6815870386972805832">"NE"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Dovršavanje radnje pomoću"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Završite radnju pomoću aplikacije %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Završi radnju"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Otvorite pomoću"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Otvorite pomoću aplikacije %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Otvori"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Izmenite pomoću"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Izmenite pomoću aplikacije %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Izmeni"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Delite pomoću"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Delite pomoću aplikacije %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Deli"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Pošaljite pomoću:"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Pošaljite pomoću: %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Pošalji"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Izaberite aplikaciju za početnu stranicu"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Koristite %1$s za početnu"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Snimite sliku"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Snimite sliku pomoću aplikacije"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Snimite sliku pomoću aplikacije %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Snimite sliku"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Podrazumevano koristi za ovu radnju."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Koristite drugu aplikaciju"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Obrišite podrazumevano podešavanje u meniju Podešavanja sistema &gt; Aplikacije &gt; Preuzeto."</string>
@@ -1470,7 +1499,7 @@
     <string name="select_year" msgid="7952052866994196170">"Izaberite godinu"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Izbrisali ste <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> na poslu"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Da biste otkačili ovaj ekran, istovremeno dodirnite i zadržite Nazad i Pregled."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Da biste otkačili ovaj ekran, dodirnite i zadržite Nazad."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Da biste otkačili ovaj ekran, dodirnite i zadržite Pregled."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Aplikacija je zakačena: otkačinjanje nije dozvoljeno na ovom uređaju."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ekran je zakačen"</string>
@@ -1482,6 +1511,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Ažurirao je administrator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Izbrisao je vaš admiistrator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Da bi produžila vreme trajanja baterije, ušteda baterije smanjuje performanse uređaja i ograničava vibraciju, usluge lokacije i većinu pozadinskih podataka. Imejl, razmena poruka i druge aplikacije koje se oslanjaju na sinhronizaciju možda neće da se ažuriraju ako ih ne otvorite.\n\nUšteda baterije se automatski isključuje kada se uređaj puni."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Da bi se smanjila potrošnja podataka, Ušteda podataka sprečava neke aplikacije da šalju ili primaju podatke u pozadini. Aplikacija koju trenutno koristite može da pristupa podacima, ali će to činiti ređe. Na primer, slike se neće prikazivati dok ih ne dodirnete."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d minut (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="few">%1$d minuta (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-be-rBY/strings.xml b/core/res/res/values-be-rBY/strings.xml
index 3152943..ce9df69 100644
--- a/core/res/res/values-be-rBY/strings.xml
+++ b/core/res/res/values-be-rBY/strings.xml
@@ -126,11 +126,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Пошук службы"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi-тэлефанія"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Каб рабіць выклікі і адпраўляць паведамленні па Wi-Fi, спачатку папрасіце свайго аператара наладзіць гэту паслугу. Затым зноў уключыце Wi-Fi-тэлефанію ў меню Налады."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Зарэгіструйцеся ў свайго аператара"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Wi-Fi-тэлефанія %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Выкл."</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Прыярытэт Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Прыярытэт мабільнай сеткі"</string>
@@ -166,7 +170,12 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Сховішча гадзінніка перапоўнена. Выдаліце некаторыя файлы, каб вызваліць месца."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Сховішча тэлевізара перапоўнена. Выдаліце некаторыя файлы, каб вызваліць месца."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Памяць тэлефона поўная. Выдаліце ​​некаторыя файлы, каб вызваліць месца."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"За сеткай можа назіраць"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Усталяваны цэнтры сертыфікацыі</item>
+      <item quantity="few">Усталяваны цэнтры сертыфікацыі</item>
+      <item quantity="many">Усталяваны цэнтры сертыфікацыі</item>
+      <item quantity="other">Усталяваны цэнтры сертыфікацыі</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Невядомая трэцяя асоба"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Адміністратар вашага працоўнага профілю"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -213,9 +222,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Справаздача пра памылку"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Будзе збiрацца iнфармацыя пра бягучы стан прылады, якая будзе адпраўляцца на электронную пошту. Стварэнне справаздачы пра памылкi зойме некаторы час."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Інтэрактыўная справаздача"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Выкарыстоўвайце ў большасці выпадкаў. Гэта дазваляе сачыць за ходам справаздачы і ўводзіць дадатковыя звесткі аб праблеме. Могуць быць прапушчаны некаторыя раздзелы, якія выкарыстоўваюцца менш і паведаміць пра якія зойме шмат часу."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Поўная справаздача"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Выкарыстоўвайце гэту опцыю, каб забяспечыць мінімальнае ўмяшанне сістэмы, калі прылада не адказвае ці працуе занадта павольна або калі вам патрэбны ўсе раздзелы справаздачы. Выкарыстоўваючы гэту опцыю, вы не зможаце зрабіць здымак экрана або ўвесці больш падрабязную інфармацыю."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Здымак экрана для справаздачы пра памылкі будзе зроблены праз <xliff:g id="NUMBER_1">%d</xliff:g> секунду.</item>
       <item quantity="few">Здымак экрана для справаздачы пра памылкі будзе зроблены праз <xliff:g id="NUMBER_1">%d</xliff:g> секунды.</item>
@@ -863,6 +874,16 @@
       <item quantity="many"><xliff:g id="COUNT">%d</xliff:g> гадзін</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> гадзіны</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Праблема з відэа"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Відэа не падыходзіць для патокавай перадачы на ​​гэту прыладу."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Немагчыма прайграць гэта відэа."</string>
@@ -905,16 +926,25 @@
     <string name="capital_off" msgid="6815870386972805832">"Адключана"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Завяршыць дзеянне з дапамогай"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Завяршыць дзеянне з дапамогай %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Завяршыць дзеянне"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Адкрыць з дапамогай"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Адкрыць з дапамогай %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Адкрыць"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Рэдагаваць з дапамогай"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Рэдагаваць з дапамогай %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Рэдагаваць"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Падзяліцца праз"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Падзяліцца праз %s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Абагуліць"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Адправіць з дапамогай"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Адправіць з дапамогай %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Адправiць"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Выберыце праграму Галоўнай старонкі"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Выкарыстоўваць %1$s у якасці праграмы Галоўнай старонкі"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Зрабіць здымак"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Зрабіць здымак з дапамогай"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Зрабіць здымак з дапамогай %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Зрабіць здымак"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Выкарыстоўваць па змаўчанні для гэтага дзеяння."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Выкарыстоўваць іншую праграму"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Ачысціць па змаўчанні ў раздзеле \"Налады сістэмы &gt; Прыкладанні &gt; Спампаваныя\"."</string>
@@ -1480,7 +1510,7 @@
     <string name="select_year" msgid="7952052866994196170">"Выберыце год"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Выдалена: <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> (праца)"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Каб адмацаваць гэты экран, краніце і ўтрымлівайце кнопкі «Назад» і «Агляд» адначасова."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Каб адмацаваць гэты экран, краніце і ўтрымлівайце кнопку \"Назад\"."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Каб адмацаваць гэты экран, краніце і ўтрымлівайце кнопку «Агляд»."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Праграма замацавана: адмацаванне на гэтай прыладзе не дапускаецца."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Экран замацаваны"</string>
@@ -1492,6 +1522,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Абноўлена вашым адміністратарам"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Выдалена вашым адміністратарам"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Каб падоўжыць час працы акумулятара, у рэжыме эканоміі зараду памяншаецца прадукцыйнасць вашай прылады, абмяжоўваецца выкарыстанне вібрацыі, службаў вызначэння месцазнаходжання і большасці задач фонавай перадачы даных. Электронная пошта, абмен паведамленнямі і іншыя праграмы, якія выкарыстоўваюць сінхранізацыю, могуць не абнаўляцца, пакуль вы іх не адкрыеце.\n\nРэжым эканоміі зараду адключаецца аўтаматычна, калі прылада зараджаецца."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Каб паменшыць выкарыстанне даных, Эканомія трафіку не дазваляе некаторым праграмам адпраўляць ці атрымліваць даныя ў фонавым рэжыме. Праграма, якую вы зараз выкарыстоўваеце, можа атрымліваць доступ да даных, але можа рабіць гэта радзей. Гэта можа азначаць, напрыклад, што відарысы не паказваюцца, пакуль вы не дакраняцеся да іх."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">На %1$d хвіліну (да <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="few">На %1$d хвіліны (да <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-bg/strings.xml b/core/res/res/values-bg/strings.xml
index ec7ba3a..4ab1fb4 100644
--- a/core/res/res/values-bg/strings.xml
+++ b/core/res/res/values-bg/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Търси се покритие"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Обаждания през Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"За да извършвате обаждания и да изпращате съобщения през Wi-Fi, първо помолете оператора си да настрои тази услуга. След това включете отново функцията за обаждания през Wi-Fi от настройките."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Регистриране с оператора ви"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s – обаждания през Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Изключено"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Предпочита се Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Предпочита се клетъчна мрежа"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Хранилището на часовника е пълно. Изтрийте файлове, за да освободите място."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Хранилището на телевизора е пълно. Изтрийте някои файлове, за да освободите място."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Хранилището на телефона е пълно. Изтрийте файлове, за да освободите място."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Мрежата може да се наблюдава"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Сертифициращите органи са инсталирани</item>
+      <item quantity="one">Сертифициращият орган е инсталиран</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"От неизвестна трета страна"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"От администратора на служебния ви потребителски профил"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"От <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Сигнал за програмна грешка"</string>
     <string name="bugreport_message" msgid="398447048750350456">"По този начин ще се събере информация за текущото състояние на устройството ви, която да се изпрати като имейл съобщение. След стартирането на процеса ще мине известно време, докато сигналът за програмна грешка бъде готов за подаване. Моля, имайте търпение."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Интерактивен сигнал"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Използвайте тази опция в повечето случаи. Тя ви позволява да проследявате напредъка на сигнала и да въвеждате още данни за проблема. Възможно е някои по-малко използвани секции, за които подаването на сигнал отнема дълго време, да бъдат пропуснати."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Пълен сигнал"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Използвайте тази опция, за да възпрепятствате минимално работата на системата, ако устройството не реагира, функционира твърде бавно или са ви нужни всички секции за подаване на сигнал. Не можете да направите екранна снимка, нито да въведете допълнителни подробности."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Екранната снимка за сигнала за програмна грешка ще бъде направена след <xliff:g id="NUMBER_1">%d</xliff:g> секунди.</item>
       <item quantity="one">Екранната снимка за сигнала за програмна грешка ще бъде направена след <xliff:g id="NUMBER_0">%d</xliff:g> секунда.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> часа</item>
       <item quantity="one">1 час</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Проблем с видеоклипа"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Този видеоклип не е валиден за поточно предаване към това устройство."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Този видеоклип не може да се пусне."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ИЗКЛ"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Изпълняване на действието чрез"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Завършване на действието посредством %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Изпълняване на действието"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Отваряне чрез"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Отваряне чрез %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Отваряне"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Редактиране чрез"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Редактиране чрез %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Редактиране"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Споделяне чрез"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Споделяне чрез %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Споделяне"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Изпращане посредством"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Изпращане посредством %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Изпращане"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Избиране на начално приложение"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Използване на %1$s като начално приложение"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Заснемане на изображение"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Заснемане на изображение с/ъс"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Заснемане на изображение с/ъс %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Заснемане на изображение"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Използване по подразбиране за това действие."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Използване на друго приложение"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Изчистване на стандартната настройка в „Системни настройки“ &gt; „Приложения“ &gt; „Изтеглени“."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Избиране на година"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Изтрихте <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> за работа"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"За да освободите екрана, докоснете и задръжте едновременно бутона за връщане назад и този за общ преглед."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"За да освободите този екран, докоснете и задръжте бутона за връщане назад."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"За да освободите този екран, докоснете и задръжте бутона „Общ преглед“."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Приложението е фиксирано. Освобождаването му не е разрешено на това устройство."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Екранът е фиксиран"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Актуализирано от администратора ви"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Изтрито от администратора ви"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"С цел удължаване на живота на батерията режимът за запазването й намалява ефективността на устройството ви и ограничава вибрирането, услугите за местоположение и повечето данни на заден план. Приложенията за електронна поща, съобщения и др., които разчитат на синхронизиране, може да не се актуализират, освен ако не ги отворите.\n\nРежимът за запазване на батерията се изключва автоматично, когато устройството ви се зарежда."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"С цел намаляване на преноса на данни функцията за икономия на данни не позволява на някои приложения да изпращат или получават данни на заден план. Понастоящем използвано от вас приложение може да осъществява достъп до информацията, но по-рядко. Това например може да означава, че изображенията не се показват, докато не ги докоснете."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">За %1$d минути (до <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">За една минута (до <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-bn-rBD/strings.xml b/core/res/res/values-bn-rBD/strings.xml
index 491b3a2..edb9aec 100644
--- a/core/res/res/values-bn-rBD/strings.xml
+++ b/core/res/res/values-bn-rBD/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"পরিষেবা অনুসন্ধান করা হচ্ছে"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi কলিং"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi এর মাধ্যমে কল করতে ও বার্তা পাঠাতে, প্রথমে আপনার পরিষেবা প্রদানকারীকে এই পরিষেবার সেট আপ করার বিষয়ে জিজ্ঞাসা করুন। তারপরে আবার সেটিংস থেকে Wi-Fi কলিং চালু করুন।"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"আপনার পরিষেবা প্রদানকারীকে নথিভুক্ত করুন"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi কলিং"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"বন্ধ আছে"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"পছন্দের Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"পছন্দের মোবাইল নেটওয়ার্ক"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"ঘড়ির সঞ্চয়স্থানে আর জায়গা খালি নেই৷ স্থান খালি করতে কিছু ফাইল মুছে দিন৷"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"টিভির সঞ্চয়স্থান পূর্ণ হয়েছে৷ স্থান মুক্ত করতে কিছু ফাইল মুছে ফেলুন৷"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ফোনের সঞ্চয়স্থানে আর জায়গা খালি নেই৷ স্থান খালি করতে কিছু ফাইল মুছে দিন৷"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"নেটওয়ার্ক নিরীক্ষণ করা হতে পারে"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">টি শংসাপত্রের কর্তৃপক্ষকে ইনস্টল করা হয়েছে</item>
+      <item quantity="other">টি শংসাপত্রের কর্তৃপক্ষকে ইনস্টল করা হয়েছে</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"একটি অজানা তৃতীয় পক্ষের দ্বারা"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"আপনার কাজের প্রোফাইলের প্রশাসক দ্বারা"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> এর দ্বারা"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"ত্রুটির প্রতিবেদন করুন"</string>
     <string name="bugreport_message" msgid="398447048750350456">"এটি একটি ই-মেল বার্তা পাঠানোর জন্য আপনার ডিভাইসের বর্তমান অবস্থা সম্পর্কে তথ্য সংগ্রহ করবে৷ ত্রুটির প্রতিবেদন শুরুর সময় থেকে এটি পাঠানোর জন্য প্রস্তুত হতে কিছুটা সময় নেবে; দয়া করে ধৈর্য রাখুন৷"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"ইন্টারেক্টিভ প্রতিবেদন"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"বেশিভাগ পরিস্থিতিতে এটিকে ব্যবহার করুন৷ এটি আপনাকে প্রতিবেদনের কাজ কতটা হয়েছে তার উপর নজর রাখতে দেয় এবং সমস্যাটির সম্পর্কে আরো অনেক কিছু লিখতে দেয়৷ এটি হয়ত প্রতিবেদন করতে খুব বেশি সময় নেয় এমন কম-ব্যবহৃত বিভাগগুলি সরিয়ে দিতে পারে৷"</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"সম্পূর্ণ প্রতিবেদন"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"যখন আপনার ডিভাইসটি প্রতিক্রিয়াবিহীন থাকে বা খুবই ধীর চলে বা যখন আপনার সমস্ত প্রতিবেদন বিভাগগুলির প্রয়োজন হয় তখন ন্যূনতম সিস্টেম হস্তক্ষেপের জন্য এই বিকল্পটি ব্যবহার করুন৷ কোনো স্ক্রীনশট নেয় না বা আপনাকে আরো বিবরণ লিখতে দেয় না৷"</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one"><xliff:g id="NUMBER_1">%d</xliff:g> সেকেন্ডের মধ্যে ত্রুটির প্রতিবেদনের জন্য স্ক্রীনশট নেওয়া হচ্ছে৷</item>
       <item quantity="other"><xliff:g id="NUMBER_1">%d</xliff:g> সেকেন্ডের মধ্যে ত্রুটির প্রতিবেদনের জন্য স্ক্রীনশট নেওয়া হচ্ছে৷</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ঘণ্টা</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ঘণ্টা</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"ভিডিও সমস্যা"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"এই ভিডিওটি এই ডিভাইসে স্ট্রিমিং করার জন্য বৈধ নয়৷"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"এই ভিডিওটি চালানো যাবে না৷"</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"বন্ধ করুন"</string>
     <string name="whichApplication" msgid="4533185947064773386">"এটি ব্যবহার করে ক্রিয়াকলাপ সম্পূর্ণ করুন"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s ব্যবহার করে ক্রিয়াকলাপ সম্পূর্ণ করুন"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"ক্রিয়াকলাপ সম্পূর্ণ করুন"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"এর মাধ্যমে খুলুন"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s দিয়ে খুলুন"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"খুলুন"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"এর মাধ্যমে সম্পাদনা করুন"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s দিয়ে সম্পাদনা করুন"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"সম্পাদনা করুন"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"এর সাথে শেয়ার করুন"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s এর সাথে শেয়ার করুন"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"শেয়ার করুন"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"এটি ব্যবহার করে পাঠান"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s ব্যবহার করে পাঠান"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"পাঠান"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"একটি হোম অ্যাপ্লিকেশন নির্বাচন করুন"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"হোম হিসাবে %1$s ব্যবহার করুন"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"ছবি তুলুন"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"এই দিয়ে ছবি তুলুন"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s দিয়ে ছবি তুলুন"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"ছবি তুলুন"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"এই ক্রিয়াটির জন্য এটিকে ডিফল্টরুপে ব্যবহার করুন৷"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"আলাদা কোনো অ্যাপ্লিকেশান ব্যবহার করুন"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"সিস্টেম সেটিংস &gt; অ্যাপ্স &gt; ডাউনলোড করাগুলি এ গিয়ে ডিফল্ট সরিয়ে দিন৷"</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"বছর নির্বাচন করুন"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> মুছে ফেলা হয়েছে"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"কর্মক্ষেত্র <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"এই স্ক্রীনটিকে আনপিন করতে, \'ফিরুন\' এবং \'এক নজরে\' একসাথে স্পর্শ করুন এবং ধরে রাখুন৷"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"এই স্ক্রীনটিকে আনপিন করতে, \'ফিরুন\' স্পর্শ করুন এবং ধরে রাখুন৷"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"এই স্ক্রীনটিকে আনপিন করতে, \'এক নজরে\' স্পর্শ করুন এবং ধরে রাখুন৷"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"অ্যাপ্লিকেশান পিন করা আছে: এই ডিভাইস এটিকে পিনমুক্ত করা মঞ্জুরিপ্রাপ্ত নয়৷"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"স্ক্রীন পিন করা হয়েছে"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"আপনার প্রশাসক দ্বারা আপডেট করা হয়েছে"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"আপনার প্রশাসক দ্বারা মুছে ফেলা হয়েছে"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"ব্যাটরির লাইফ উন্নত করতে সহায়তা করতে, ব্যাটারি সাশ্রয়কারী আপনার ডিভাইসের কার্যসম্পাদনা হ্রাস করে এবং কম্পন, অবস্থান পরিষেবাসমূহ এবং অধিকাংশ ব্যাকগ্রাউন্ড ডেটা সীমিত করে৷ ইমেল, বার্তাপ্রেরণ এবং অন্যান্য অ্যাপ্লিকেশানগুলিকে যেগুলি সিঙ্কের উপর নির্ভর করে সেগুলিকে আপনি না খোলা পর্যন্ত নাও আপডেট হতে পারে৷\n\nআপনার ডিভাইসটিকে যখন চার্জ করা হয় তখন ব্যাটারি সাশ্রয়কারী স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যায়৷"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"ডেটার ব্যবহার কমাতে সহায়তা করার জন্য, ডেটা সেভার পটভূমিতে কিছু অ্যাপ্লিকেশানকে ডেটা পাঠাতে বা গ্রহণ করতে বাধা দেয়৷ আপনি বর্তমানে এমন একটি অ্যাপ্লিকেশান ব্যবহার করছেন যেটি ডেটা অ্যাক্সেস করতে পারে, তবে সেটি কমই করে৷ এর ফলে যা হতে পারে, উদাহরণস্বরূপ, আপনি ছবিগুলিতে আলতো চাপ না দেওয়া পর্যন্ত সেগুলি প্রদর্শিত হবে না৷"</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d মিনিটের জন্য (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> পর্যন্ত)</item>
       <item quantity="other">%1$d মিনিটের জন্য (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> পর্যন্ত)</item>
diff --git a/core/res/res/values-bs-rBA/strings.xml b/core/res/res/values-bs-rBA/strings.xml
index ba164ee..e316f21 100644
--- a/core/res/res/values-bs-rBA/strings.xml
+++ b/core/res/res/values-bs-rBA/strings.xml
@@ -125,11 +125,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Traženje usluge"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi pozivanje"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Da biste pozivali i slali poruke preko Wi-Fi-ja, prvo zatražite od operatera da postavi tu uslugu. Potom u Postavkama ponovo uključite Wi-Fi pozivanje."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registrirajte se kod svog operatera"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Wi-Fi pozivanje preko operatera %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Isključeno"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Prednost ima Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Prednost ima mobilna mreža"</string>
@@ -165,7 +169,11 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Prostor za gledanje je pun. Obrišite neke fajlove da oslobodite prostor."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Prostor TV-a za pohranu je pun. Obrišite neke fajlove da oslobodite prostor."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Pohrana telefona je puna. Izbrišite fajlove kako biste oslobodili prostor."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Mreža može biti nadzirana"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Instalirane su ustanove za izdavanje certifikata</item>
+      <item quantity="few">Instalirane su ustanove za izdavanje certifikata</item>
+      <item quantity="other">Instalirane su ustanove za izdavanje certifikata</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Od nepoznate treće strane"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"od strane administratora vašeg profila za posao"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Od <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -212,9 +220,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Kreirajte izvještaj o greškama"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Ovim će se prikupljati informacije o trenutnom stanju uređaja, koji će biti poslani kao poruka e-pošte. Može malo potrajati dok se izvještaj o greškama ne kreira i bude spreman za slanje. Budite strpljivi."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktivni izvještaj"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Koristite ovo u većini slučajeva. Omogućava vam praćenje progresa izvještaja i unošenje više detalja o datom problemu. Neke manje korištene oblasti za čiji izvještaj je potrebno mnogo vremena mogu biti izostavljene."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Kompletan izvještaj"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Koristite ovu opciju za minimalno ometanje sistema kad uređaj ne reaguje ili je prespor, ili kada su vam potrebni svi odjeljci izvještaja. Opcija ne uzima snimku ekrana i ne dozvoljava unošenje više detalja."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Snimak ekrana za prijavu greške pravim za <xliff:g id="NUMBER_1">%d</xliff:g> sekundu.</item>
       <item quantity="few">Snimak ekrana za prijavu greške pravim za <xliff:g id="NUMBER_1">%d</xliff:g> sekunde.</item>
@@ -857,6 +867,16 @@
       <item quantity="few"><xliff:g id="COUNT">%d</xliff:g> sata</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> sati</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problem sa prikazom video sadržaja"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Prijenos ovog video sadržaja ne može se izvršiti na ovom uređaju."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Greška prilikom reproduciranja video sadržaja."</string>
@@ -899,16 +919,27 @@
     <string name="capital_off" msgid="6815870386972805832">"Isključeno"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Izvrši akciju koristeći"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Dovršite akciju koristeći %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Izvršiti akciju"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Otvori koristeći"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Otvori koristeći %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Otvori"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Uredi koristeći"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Uredi koristeći %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Uredi"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Podijeli koristeći"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Podijeli koristeći %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Podijeli"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Pošalji koristeći"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Pošalji koristeći %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Pošalji"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Odaberi glavnu aplikaciju"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Koristi %1$s kao glavnu aplikaciju"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Snimanje slike"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Snimanje slike koristeći"</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for whichImageCaptureApplicationNamed (8619384150737825003) -->
+    <skip />
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Snimanje slike"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Koristiti kao zadanu rezoluciju za ovu akciju."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Koristi drugu aplikaciju"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Obrišite zadane opcije u meniju Postavke sistema &gt; Aplikacije &gt; Preuzete aplikacije."</string>
@@ -1470,7 +1501,7 @@
     <string name="select_year" msgid="7952052866994196170">"Odaberite godinu"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Broj <xliff:g id="KEY">%1$s</xliff:g> je izbrisan"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Poslovni <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Da otkačite ovaj ekran, istovremeno dodirnite i držite Nazad i Pregled."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Da biste otkačili ovaj ekran, dodirnite i držite tipku Nazad."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Da otkačite ovaj ekran, dodirnite i držite Pregled."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Aplikacija je prikačena. Na ovom uređaju nije dozvoljeno otkačivanje."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ekran je zakačen"</string>
@@ -1482,6 +1513,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Ažurirao administrator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Izbrisao administrator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Da bi se trajanje baterije produžilo, opcija za štednju baterije minimizira rad uređaja i ograničava vibriranje, usluge lokacije i većinu prijenosa podataka u pozadini. E-pošta, poruke i druge aplikacije koje se oslanjaju na sinhronizaciju ne mogu biti ažurirane dok ih ne otvorite.\n\nŠtednja baterije se automatski isključi prilikom punjenja uređaja."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Da bi se smanjilo koriptenje podataka, usluga Ušteda podataka sprečava da neke aplikacije šalju ili primaju podatke u pozadini. Aplikacija koju trenutno koristite može pristupiti podacima, ali se to može desiti rjeđe. To može značiti, naprimjer, da se slike ne prikazuju sve dok ih ne dodirnete."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d minuta (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="few">%1$d minute (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-ca/strings.xml b/core/res/res/values-ca/strings.xml
index 6980cd5..4fa7943 100644
--- a/core/res/res/values-ca/strings.xml
+++ b/core/res/res/values-ca/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"S\'està cercant el servei"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Trucades per Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Per fer trucades i enviar missatges per Wi-Fi, primer has de demanar a l\'operador de telefonia mòbil que configuri aquest servei. Després, torna a activar les trucades per Wi-Fi des de Configuració."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registra\'t amb el teu operador de telefonia mòbil"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Trucada de Wi-Fi de: %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Desactivades"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Preferència per la Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Preferència per les dades mòbils"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"L\'emmagatzematge del rellotge està ple. Suprimeix uns quants fitxers per alliberar espai."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"L\'emmagatzematge del televisor està ple. Suprimeix uns quants fitxers per alliberar espai."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"L\'emmagatzematge del telèfon és ple. Suprimeix uns quants fitxers per alliberar espai."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"És possible que la xarxa estigui supervisada"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Autoritats de certificació instal·lades</item>
+      <item quantity="one">Autoritat de certificació instal·lada</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Per un tercer desconegut"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Administrador del perfil professional"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Per <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Crea informe d\'errors"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Es recopilarà informació sobre l\'estat actual del dispositiu i se t\'enviarà per correu electrònic. Passaran uns quants minuts des de l\'inici de l\'informe d\'errors fins al seu enviament, per la qual cosa et recomanem que tinguis paciència."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Informe interactiu"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Utilitza aquesta opció en la majoria de circumstàncies. Et permet fer un seguiment del progrés de l\'informe i introduir més dades sobre el problema. És possible que ometi seccions poc utilitzades que requereixen molt de temps."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Informe complet"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Utilitza aquesta opció perquè la interferència en el sistema sigui mínima si el dispositiu no respon o va massa lent, o bé si necessites totes les seccions de l\'informe. No fa cap captura de pantalla ni et permet introduir més detalls."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Es farà una captura de pantalla de l\'informe d\'errors d\'aquí a <xliff:g id="NUMBER_1">%d</xliff:g> segons.</item>
       <item quantity="one">Es farà una captura de pantalla de l\'informe d\'errors d\'aquí a <xliff:g id="NUMBER_0">%d</xliff:g> segon.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> hores</item>
       <item quantity="one">1 hora</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problema amb el vídeo"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Aquest vídeo no és vàlid per a la reproducció en aquest dispositiu."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"No es pot reproduir aquest vídeo."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"NO"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Completa l\'acció mitjançant"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Completa l\'acció amb %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Completa l\'acció"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Obre amb"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Obre amb %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Obre"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Edita amb"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Edita amb %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Edita"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Comparteix amb"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Comparteix amb %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Comparteix"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Envia mitjançant"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Envia mitjançant %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Envia"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Seleccionar una aplicació Inici"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Utilitzar %1$s com a Inici"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Captura la imatge"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Captura la imatge amb"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Captura la imatge amb %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Captura la imatge"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Utilitza-ho de manera predeterminada per a aquesta acció."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Fes servir una altra aplicació"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Esborra els paràmetres predeterminats a Configuració del sistema &gt; Aplicacions &gt; Baixades."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Selecciona un any"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> suprimit"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> de la feina"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Per anul·lar la fixació d\'aquesta pantalla, mantén premudes les opcions Enrere i Visió general alhora."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Toca i mantén premuda l\'opció Enrere per deixar de fixar aquesta pantalla."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Per anul·lar la fixació d\'aquesta pantalla, mantén premuda l\'opció Visió general."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"S\'ha fixat l\'aplicació. En aquest dispositiu no es permet anul·lar-ne la fixació."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Pantalla fixada"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"L\'administrador l\'ha actualitzat"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"L\'administrador ho ha suprimit"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Per tal d\'augmentar la durada de la bateria, la funció d\'estalvi de bateria redueix el rendiment del dispositiu i en limita la vibració i la majoria de dades en segon pla. És possible que el correu electrònic, la missatgeria i la resta d\'aplicacions que se sincronitzen amb freqüència no s\'actualitzin llevat que les obris.\n\nL\'estalvi de bateria es desactiva automàticament mentre el dispositiu s\'està carregant."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Per reduir l\'ús de dades, la funció Economitzador de dades evita que determinades aplicacions enviïn o rebin dades en segon pla. L\'aplicació que estiguis fent servir podrà accedir a dades, però potser ho farà menys sovint. Això vol dir, per exemple, que les imatges no es mostraran fins que no les toquis."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Durant %1$d minuts (fins a les <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Durant 1 minut (fins a les <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-cs/strings.xml b/core/res/res/values-cs/strings.xml
index 612475a..5448a65 100644
--- a/core/res/res/values-cs/strings.xml
+++ b/core/res/res/values-cs/strings.xml
@@ -126,11 +126,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Vyhledávání služby"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Volání přes Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Chcete-li volat a odesílat textové zprávy přes síť Wi-Fi, nejprve požádejte operátora, aby vám tuto službu nastavil. Poté volání přes Wi-Fi opět zapněte v Nastavení."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registrace u operátora"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Volání přes Wi-Fi: %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Vypnuto"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Preferována síť W-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Preferována mobilní síť"</string>
@@ -166,7 +170,12 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Úložiště hodinek je plné. Uvolněte místo smazáním některých souborů."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Úložiště televize je plné. Uvolněte místo smazáním některých souborů."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Paměť telefonu je plná. Uvolněte místo smazáním některých souborů."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Síť může být monitorována"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="few">Certifikační autority byly nainstalovány</item>
+      <item quantity="many">Certifikační autority byly nainstalovány</item>
+      <item quantity="other">Certifikační autority byly nainstalovány</item>
+      <item quantity="one">Certifikační autorita byla nainstalována</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Původce: neznámá třetí strana"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Od správce vašeho pracovního profilu"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Původce: <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -213,9 +222,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Vytvořit chybové hlášení"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Shromažďuje informace o aktuálním stavu zařízení. Tyto informace je následně možné poslat v e-mailové zprávě, chvíli však potrvá, než bude hlášení o chybě připraveno k odeslání. Buďte prosím trpěliví."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktivní přehled"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Tato možnost se používá ve většině případů. Umožňuje sledovat průběh přehledu a zadat další podrobnosti o problému. Mohou být vynechány některé méně používané sekce, jejichž kontrola trvá dlouho."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Úplný přehled"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Tato možnost slouží k rychlému nahlášení, když zařízení neodpovídá, je příliš pomalé nebo pokud potřebujete zahrnout všechny sekce. Tímto způsobem nelze pořídit snímek obrazovky ani zadat další podrobnosti."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="few">Snímek obrazovky pro zprávu o chybě bude pořízen za <xliff:g id="NUMBER_1">%d</xliff:g> sekundy.</item>
       <item quantity="many">Snímek obrazovky pro zprávu o chybě bude pořízen za <xliff:g id="NUMBER_1">%d</xliff:g> sekundy.</item>
@@ -863,6 +874,16 @@
       <item quantity="other">[<xliff:g id="COUNT">%d</xliff:g>] hodin</item>
       <item quantity="one">1 hodina</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Potíže s videem"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Toto video nelze přenášet datovým proudem do tohoto zařízení."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Toto video nelze přehrát."</string>
@@ -905,16 +926,25 @@
     <string name="capital_off" msgid="6815870386972805832">"O"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Dokončit akci pomocí aplikace"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Dokončit akci pomocí aplikace %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Dokončit akci"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Otevřít v aplikaci"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Otevřít v aplikaci %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Otevřít"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Upravit v aplikaci"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Upravit v aplikaci %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Upravit"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Sdílet v aplikaci"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Sdílet v aplikaci %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Sdílet"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Odeslat pomocí aplikace"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Odeslat pomocí aplikace %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Odeslat"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Výběr aplikace na plochu"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Jako plochu používat aplikaci %1$s."</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Vyfotit"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Vyfotit pomocí aplikace"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Vyfotit pomocí aplikace %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Vyfotit"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Použít jako výchozí nastavení pro tuto činnost."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Použít jinou aplikaci"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Výchozí nastavení vymažete v sekci Nastavení systému &gt; Aplikace &gt; Stažené."</string>
@@ -1480,7 +1510,7 @@
     <string name="select_year" msgid="7952052866994196170">"Vyberte rok"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Číslice <xliff:g id="KEY">%1$s</xliff:g> byla smazána"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Pracovní <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Chcete-li tuto obrazovku uvolnit, klepněte současně na možnosti Zpět a Přehled a podržte je."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Chcete-li tuto obrazovku uvolnit, klepněte na tlačítko Zpět a podržte jej."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Chcete-li tuto obrazovku uvolnit, klepněte na možnost Přehled a podržte ji."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Aplikace je připnutá: Odepnutí v tomto zařízení není povoleno."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Obrazovka připnuta"</string>
@@ -1492,6 +1522,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Aktualizováno administrátorem"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Smazáno administrátorem"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Spořič baterie za účelem prodloužení výdrže baterie snižuje výkon zařízení a omezuje vibrace, služby určování polohy a většinu dat na pozadí. E-mail, aplikace pro zasílání zpráv a další aplikace, které používají synchronizaci, se nemusejí aktualizovat, dokud je neotevřete.\n\nPři nabíjení zařízení se spořič baterie automaticky vypne."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Spořič dat z důvodu snížení využití dat některým aplikacím brání v odesílání nebo příjmu dat na pozadí. Aplikace, kterou právě používáte, data přenášet může, ale může tak činit méně často. V důsledku toho se například obrázky nemusejí zobrazit, dokud na ně neklepnete."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="few">%1$d minuty (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="many">%1$d minuty (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-da/strings.xml b/core/res/res/values-da/strings.xml
index f25492b..a1fcc31e 100644
--- a/core/res/res/values-da/strings.xml
+++ b/core/res/res/values-da/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Søger efter tjeneste"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Opkald via Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Hvis du vil foretage opkald og sende beskeder via Wi-Fi, skal du først anmode dit mobilselskab om at konfigurere denne tjeneste. Derefter skal du slå Wi-Fi-opkald til igen fra Indstillinger."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registrer dig hos dit mobilselskab"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi-opkald"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Fra"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"WiFi-netværk er foretrukket"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobilnetværk er foretrukket"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Urets lager er fuldt. Slet nogle filer for at frigøre plads."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Fjernsynets hukommelse er fuld. Slet nogle filer for at frigøre plads."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Telefonens lager er fuldt. Slet nogle filer for at frigøre plads."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Netværket kan være overvåget"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Certifikatmyndighed er installeret</item>
+      <item quantity="other">Certifikatmyndigheder er installeret</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Af en ukendt tredjepart"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Af administratoren for din arbejdsprofil"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Af <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Lav fejlrapport"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Der indsamles oplysninger om din enheds aktuelle status, der efterfølgende sendes i en e-mail. Der går lidt tid, fra fejlrapporten påbegyndes, til den er klar til at blive sendt. Tak for tålmodigheden."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktiv rapport"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Brug dette workflow under de fleste omstændigheder. Det giver dig mulighed for at se status på rapporten og angive flere oplysninger om problemet. Nogle mindre brugte sektioner, der tager lang tid at rapportere, udelades muligvis."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Fuld rapport"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Brug denne mulighed for at gribe mindst muligt ind, når enheden ikke reagerer eller er for langsom, eller når du har brug for alle rapportsektioner. Der tages ikke et skærmbillede, og du kan ikke angive flere oplysninger."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Der tages et skærmbillede til fejlrapporten om <xliff:g id="NUMBER_1">%d</xliff:g> sekund.</item>
       <item quantity="other">Der tages et skærmbillede til fejlrapporten om <xliff:g id="NUMBER_1">%d</xliff:g> sekunder.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> timer</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> timer</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Videoproblem"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Denne video kan ikke streames på denne enhed."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Videoen kan ikke afspilles."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"FRA"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Brug"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Gennemfør handling ved hjælp af %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Afslut handling"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Åbn med"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Åbn med %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Åbn"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Rediger med"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Rediger med %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Rediger"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Del med"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Del med %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Del"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Send via"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Send via %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Send"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Vælg en startapp"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Brug %1$s som startapp"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Tag billede"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Tag billede med"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Tag billede med %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Tag billede"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Brug som standard til denne handling."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Brug en anden app"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Ryd standard i Systemindstillinger &gt; Apps &gt; Downloadet."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Vælg år"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> er slettet"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> – arbejde"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Hvis du vil frigøre dette skærmbillede, skal du trykke på Tilbage og Oversigt på samme tid og holde fingeren nede."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Hvis du vil frigøre dette skærmbillede, skal du trykke på Tilbage og holde fingeren nede."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Hvis du vil frigøre dette skærmbillede, skal du trykke på Oversigt og holde fingeren nede."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Appen er fastgjort: Det er ikke tilladt at frigøre den på denne enhed."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Skærmen blev fastgjort"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Opdateret af administrator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Slettet af din administrator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Batterisparefunktionen hjælper med at forlænge batteriets levetid ved at reducere enhedens ydeevne og begrænse vibration, placeringstjenester og det meste baggrundsdata. E-mail, beskedfunktioner og andre apps, der benytter synkronisering, opdateres muligvis ikke, medmindre du åbner dem.\n\nBatterisparefunktionen slukker automatisk, når enheden oplader."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Datasparefunktion forhindrer nogle apps i at sende eller modtage data i baggrunden for at reducere dataforbruget. En app, der er i brug, kan få adgang til data, men gør det måske ikke så ofte. Dette kan f.eks. betyde, at billeder ikke vises, før du trykker på dem."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">I %1$d minutter (indtil <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">I %1$d minutter (indtil <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-de/strings.xml b/core/res/res/values-de/strings.xml
index 898883e..5e7a9b5 100644
--- a/core/res/res/values-de/strings.xml
+++ b/core/res/res/values-de/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Suche nach Dienst"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Anrufe über WLAN"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Um über WLAN telefonieren und Nachrichten senden zu können, bitte zuerst deinen Mobilfunkanbieter, diesen Dienst einzurichten. Aktiviere die Option \"Anrufe über WLAN\" dann erneut über die Einstellungen."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registriere dich bei deinem Mobilfunkanbieter."</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Anrufe über WLAN"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Aus"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"WLAN bevorzugt"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobilfunk bevorzugt"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Der Speicher deiner Uhr ist voll. Lösche Dateien, um Speicherplatz freizugeben."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Der TV-Speicher ist voll. Lösche Dateien, um Speicherplatz freizugeben."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Der Handyspeicher ist voll! Lösche Dateien, um Speicherplatz freizugeben."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Das Netzwerk wird möglicherweise überwacht."</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Zertifizierungsstellen installiert</item>
+      <item quantity="one">Zertifizierungsstelle installiert</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Von einem unbekannten Dritten"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Vom Administrator deines Arbeitsprofils"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Von <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Fehlerbericht abrufen"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Bei diesem Fehlerbericht werden Daten zum aktuellen Status deines Geräts erfasst und als E-Mail versandt. Vom Start des Berichts bis zu seinem Versand kann es eine Weile dauern. Bitte habe etwas Geduld."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktiver Bericht"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Diese Option kann in den meisten Fällen verwendet werden. Du kannst darüber den aktuellen Stand der Berichterstellung verfolgen und genauere Angaben zu dem Problem machen. Einige selten genutzte Bereiche, deren Berichterstellung längere Zeit in Anspruch nimmt, werden unter Umständen ausgelassen."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Vollständiger Bericht"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Du kannst diese Option für minimale Störungen des Systems nutzen, wenn dein Gerät beispielsweise nicht reagiert oder zu langsam ist oder wenn du alle Bereiche für Berichte benötigst. Es wird kein Screenshot aufgenommen und du kannst keine weiteren Angaben machen."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Screenshot für den Fehlerbericht wird in <xliff:g id="NUMBER_1">%d</xliff:g> Sekunden aufgenommen.</item>
       <item quantity="one">Screenshot für den Fehlerbericht wird in <xliff:g id="NUMBER_0">%d</xliff:g> Sekunde aufgenommen.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> Stunden</item>
       <item quantity="one">1 Stunde</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Videoprobleme"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Dieses Video ist nicht für Streaming auf diesem Gerät gültig."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Video kann nicht wiedergegeben werden."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"AUS"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Aktion durchführen mit"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Aktion mit %1$s abschließen"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Abschließen"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Öffnen mit"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Mit %1$s öffnen"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Öffnen"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Bearbeiten mit"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Mit %1$s bearbeiten"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Bearbeiten"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Freigeben über"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Für %1$s freigeben"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Teilen"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Senden via"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Senden via %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Senden"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Start-App auswählen"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$s als Start-App verwenden"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Bild aufnehmen"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Bild aufnehmen mit"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Bild aufnehmen mit %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Bild aufnehmen"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Immer für diese Aktion verwenden"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Andere App verwenden"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Das Löschen der Standardeinstellungen ist in den Systemeinstellungen unter \"Apps &gt; Heruntergeladen\" möglich."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Jahr auswählen"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> gelöscht"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> (geschäftlich)"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Um die Fixierung dieses Bildschirms aufzuheben, berühre und halte gleichzeitig \"Zurück\" und \"Übersicht\"."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Um die Fixierung dieses Bildschirms aufzuheben, berühre und halte \"Zurück\"."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Um die Fixierung dieses Bildschirms aufzuheben, berühre und halte \"Übersicht\"."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Die App ist fixiert. Das Aufheben der Fixierung ist auf diesem Gerät nicht zulässig."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Bildschirm fixiert"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Von deinem Administrator aktualisiert"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Von deinem Administrator gelöscht"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Der Energiesparmodus schont den Akku, indem er die Leistung des Geräts reduziert und die Vibrationsfunktion sowie die meisten Hintergrunddatenaktivitäten einschränkt. E-Mail, SMS/MMS und andere Apps, die auf deinem Gerät synchronisiert werden, werden möglicherweise erst nach dem Öffnen aktualisiert.\n\nDer Energiesparmodus wird automatisch deaktiviert, wenn dein Gerät aufgeladen wird."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Mit der Datenkomprimierung wird die Datennutzung verringert, indem verhindert wird, dass im Hintergrund Daten von Apps gesendet oder empfangen werden. Datenzugriffe sind mit einer aktiven App zwar möglich, erfolgen aber seltener. Als Folge davon könnten Bilder beispielsweise erst dann sichtbar werden, wenn sie angetippt werden."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d Minuten (bis <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">1 Minute (bis <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-el/strings.xml b/core/res/res/values-el/strings.xml
index 58ff631..3d3778c 100644
--- a/core/res/res/values-el/strings.xml
+++ b/core/res/res/values-el/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Αναζήτηση υπηρεσιών"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Κλήση Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Για να κάνετε κλήσεις και να στέλνετε μηνύματα μέσω Wi-Fi, ζητήστε πρώτα από την εταιρεία κινητής τηλεφωνίας να ρυθμίσει την υπηρεσία. Στη συνέχεια, ενεργοποιήστε ξανά τη λειτουργία κλήσεων μέσω Wi-Fi από τις Ρυθμίσεις."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Εγγραφείτε μέσω της εταιρείας κινητής τηλεφωνίας"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Κλήση Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Ανενεργό"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Προτίμηση Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Προτίμηση δικτύου κινητής τηλεφωνίας"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Ο αποθηκευτικός χώρος παρακολούθησης είναι πλήρης! Διαγράψτε μερικά αρχεία για να απελευθερώσετε χώρο."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Ο αποθηκευτικός χώρος της τηλεόρασης είναι πλήρης. Διαγράψτε ορισμένα αρχεία, για να ελευθερώσετε χώρο."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Ο αποθηκευτικός χώρος του τηλεφώνου είναι πλήρης. Διαγράψτε μερικά αρχεία για να δημιουργήσετε ελεύθερο χώρο."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Το δίκτυο ενδέχεται να παρακολουθείται"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Οι αρχές έκδοσης πιστοποιητικών εγκαταστάθηκαν</item>
+      <item quantity="one">Η αρχή έκδοσης πιστοποιητικών εγκαταστάθηκε</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Από ένα άγνωστο τρίτο μέρος"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Από το διαχειριστή του προφίλ εργασίας σας"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Από <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Λήψη αναφοράς σφάλματος"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Θα συλλέξει πληροφορίες σχετικά με την τρέχουσα κατάσταση της συσκευής σας και θα τις στείλει μέσω μηνύματος ηλεκτρονικού ταχυδρομείου. Απαιτείται λίγος χρόνος για τη σύνταξη της αναφοράς σφάλματος και την αποστολή της. Κάντε λίγη υπομονή."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Διαδραστική αναφορά"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Χρησιμοποιήστε αυτήν την επιλογή στις περισσότερες περιπτώσεις. Σας επιτρέπει να παρακολουθείτε την πρόοδο της αναφοράς και να εισάγετε περισσότερες λεπτομέρειες σχετικά με το πρόβλημα που αντιμετωπίζετε. Ενδέχεται να παραλείψει ορισμένες ενότητες που δεν χρησιμοποιούνται συχνά και για τις οποίες απαιτείται μεγάλο χρονικό διάστημα για τη δημιουργία αναφορών."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Πλήρης αναφορά"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Χρησιμοποιήστε αυτήν την επιλογή για την ελάχιστη δυνατή παρέμβαση συστήματος, όταν η συσκευή σας δεν ανταποκρίνεται ή παρουσιάζει μεγάλη καθυστέρηση στη λειτουργία ή όταν χρειάζεστε όλες τις ενότητες αναφοράς. Δεν λαμβάνει στιγμιότυπο οθόνης και δεν σας επιτρέπει να προσθέσετε περισσότερες λεπτομέρειες."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Λήψη στιγμιότυπου οθόνης για αναφορά σφαλμάτων σε <xliff:g id="NUMBER_1">%d</xliff:g> δευτερόλεπτα.</item>
       <item quantity="one">Λήψη στιγμιότυπου οθόνης για αναφορά σφαλμάτων σε <xliff:g id="NUMBER_0">%d</xliff:g> δευτερόλεπτο.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ώρες</item>
       <item quantity="one">1 ώρα</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Πρόβλημα με το βίντεο"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Αυτό το βίντεο δεν είναι έγκυρο για ροή σε αυτή τη συσκευή."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Δεν μπορείτε να αναπαράγετε αυτό το βίντεο."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"Ανενεργό"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Ολοκλήρωση ενέργειας με τη χρήση"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Ολοκληρωμένη ενέργεια με χρήση %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Ολοκλήρωση ενέργειας"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Άνοιγμα με"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Άνοιγμα με %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Άνοιγμα"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Επεξεργασία με"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Επεξεργασία με %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Επεξεργασία"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Κοινή χρήση με"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Κοινή χρήση με %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Κοινοποίηση"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Αποστολή μέσω"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Αποστολή μέσω %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Αποστολή"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Επιλέξτε μια εφαρμογή Αρχικής σελίδας"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Χρήση %1$s ως Αρχικής σελίδας"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Λήψη εικόνας"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Λήψη εικόνας με"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Λήψη εικόνας με %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Λήψη εικόνας"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Χρήση από προεπιλογή για αυτήν την ενέργεια."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Χρήση άλλης εφαρμογής"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Εκκθάριση προεπιλογής στις Ρυθμίσεις συστήματος &gt; Εφαρμογές &gt; Ληφθείσες."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Επιλογή έτους"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> διαγράφηκε"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Εργασία <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Για να ξεκαρφιτσώσετε αυτήν την οθόνη, πατήστε παρατεταμένα \"Επιστροφή\" και \"Επισκόπηση\" ταυτόχρονα."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Για να ξεκαρφιτσώσετε αυτήν την οθόνη, αγγίξτε παρατεταμένα \"Επιστροφή\"."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Για να ξεκαρφιτσώσετε αυτήν την οθόνη, αγγίξτε παρατεταμένα \"Επισκόπηση\"."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Η εφαρμογή καρφιτσώθηκε: Το ξεκαρφίτσωμα δεν επιτρέπεται σε αυτήν τη συσκευή."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Η οθόνη καρφιτσώθηκε"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Ενημερώθηκε από το διαχειριστή σας"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Διαγράφηκε από το διαχειριστή σας"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Προκειμένου να βελτιώσει τη διάρκεια ζωής της μπαταρίας σας, η Εξοικονόμηση μπαταρίας μειώνει την απόδοση της συσκευής σας και περιορίζει λειτουργίες όπως η δόνηση, οι υπηρεσίες τοποθεσίας και τα περισσότερα δεδομένα παρασκηνίου. Το ηλεκτρονικό ταχυδρομείο, η ανταλλαγή μηνυμάτων και άλλες εφαρμογές που βασίζονται στο συγχρονισμό ενδέχεται να μην ενημερώνονται έως ότου τις ανοίξετε.\n\nΗ Εξοικονόμηση μπαταρίας απενεργοποιείται αυτόματα όταν η συσκευή σας φορτίζει."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Προκειμένου να μειωθεί η χρήση δεδομένων, η Εξοικονόμηση δεδομένων αποτρέπει την αποστολή ή λήψη δεδομένων από ορισμένες εφαρμογές στο παρασκήνιο. Μια εφαρμογή που χρησιμοποιείτε αυτήν τη στιγμή μπορεί να χρησιμοποιήσει δεδομένα αλλά με μικρότερη συχνότητα. Για παράδειγμα, οι εικόνες μπορεί να μην εμφανίζονται μέχρι να τις πατήσετε."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Για %1$d λεπτά (έως τις <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Για ένα λεπτό (έως τις <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-en-rAU/strings.xml b/core/res/res/values-en-rAU/strings.xml
index fe9d8db..3e3ba9a 100644
--- a/core/res/res/values-en-rAU/strings.xml
+++ b/core/res/res/values-en-rAU/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Searching for Service"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi Calling"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"To make calls and send messages over Wi-Fi, first ask your carrier to set up this service. Then turn on Wi-Fi calling again from Settings."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Register with your operator"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi Calling"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Off"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi preferred"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobile preferred"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Watch storage is full. Delete some files to free up space."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV storage is full. Delete some files to free space."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Phone storage is full. Delete some files to free space."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Network may be monitored"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Certificate authorities installed</item>
+      <item quantity="one">Certificate authority installed</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"By an unknown third party"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"By your work profile administrator"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"By <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Take bug report"</string>
     <string name="bugreport_message" msgid="398447048750350456">"This will collect information about your current device state, to send as an email message. It will take a little time from starting the bug report until it is ready to be sent. Please be patient."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interactive report"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Use this under most circumstances. It allows you to track progress of the report and enter more details about the problem. It might omit some less-used sections that take a long time to report."</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"Use this under most circumstances. It allows you to track progress of the report, enter more details about the problem and take screenshots. It might omit some less-used sections that take a long time to report."</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Full report"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Use this option for minimal system interference when your device is unresponsive or too slow or when you need all report sections. Does not take a screenshot or allow you to enter more details."</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"Use this option for minimal system interference when your device is unresponsive or too slow, or when you need all report sections. Does not allow you to enter more details or take additional screenshots."</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Taking screenshot for bug report in <xliff:g id="NUMBER_1">%d</xliff:g> seconds.</item>
       <item quantity="one">Taking screenshot for bug report in <xliff:g id="NUMBER_0">%d</xliff:g> second.</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> hours</item>
       <item quantity="one">1 hour</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"now"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Video problem"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"This video isn\'t valid for streaming to this device."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Can\'t play this video."</string>
@@ -893,16 +909,25 @@
     <string name="capital_off" msgid="6815870386972805832">"OFF"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Complete action using"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Complete action using %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Complete action"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Open with"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Open with %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Open"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Edit with"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Edit with %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"(edit)"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Share with"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Share with %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Shared"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Send using"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Send using %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Send"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Select a Home app"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Use %1$s as Home"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Capture image"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Capture image with"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Capture image with %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Capture image"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Use by default for this action."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Use a different app"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Clear default in System settings &gt; Apps &gt; Downloaded."</string>
@@ -1460,7 +1485,7 @@
     <string name="select_year" msgid="7952052866994196170">"Select year"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> deleted"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Work <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"To unpin this screen, touch and hold Back and Overview at the same time."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"To unpin this screen, touch and hold Back."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"To unpin this screen, touch and hold Overview."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"App is pinned: unpinning isn\'t allowed on this device."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Screen pinned"</string>
@@ -1472,6 +1497,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Updated by your administrator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Deleted by your administrator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"To help improve battery life, battery saver reduces your device’s performance and limits vibration, location services and most background data. Email, messaging, and other apps that rely on syncing may not update unless you open them.\n\nBattery saver turns off automatically when your device is charging."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"To help reduce data usage, Data Saver prevents some apps from sending or receiving data in the background. An app that you’re currently using can access data, but may do so less frequently. This may mean, for example, that images don’t display until you tap them."</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"Turn on Data Saver?"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"Turn on"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">For %1$d minutes (until <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">For one minute (until <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-en-rGB/strings.xml b/core/res/res/values-en-rGB/strings.xml
index fe9d8db..3e3ba9a 100644
--- a/core/res/res/values-en-rGB/strings.xml
+++ b/core/res/res/values-en-rGB/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Searching for Service"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi Calling"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"To make calls and send messages over Wi-Fi, first ask your carrier to set up this service. Then turn on Wi-Fi calling again from Settings."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Register with your operator"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi Calling"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Off"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi preferred"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobile preferred"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Watch storage is full. Delete some files to free up space."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV storage is full. Delete some files to free space."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Phone storage is full. Delete some files to free space."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Network may be monitored"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Certificate authorities installed</item>
+      <item quantity="one">Certificate authority installed</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"By an unknown third party"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"By your work profile administrator"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"By <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Take bug report"</string>
     <string name="bugreport_message" msgid="398447048750350456">"This will collect information about your current device state, to send as an email message. It will take a little time from starting the bug report until it is ready to be sent. Please be patient."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interactive report"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Use this under most circumstances. It allows you to track progress of the report and enter more details about the problem. It might omit some less-used sections that take a long time to report."</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"Use this under most circumstances. It allows you to track progress of the report, enter more details about the problem and take screenshots. It might omit some less-used sections that take a long time to report."</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Full report"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Use this option for minimal system interference when your device is unresponsive or too slow or when you need all report sections. Does not take a screenshot or allow you to enter more details."</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"Use this option for minimal system interference when your device is unresponsive or too slow, or when you need all report sections. Does not allow you to enter more details or take additional screenshots."</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Taking screenshot for bug report in <xliff:g id="NUMBER_1">%d</xliff:g> seconds.</item>
       <item quantity="one">Taking screenshot for bug report in <xliff:g id="NUMBER_0">%d</xliff:g> second.</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> hours</item>
       <item quantity="one">1 hour</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"now"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Video problem"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"This video isn\'t valid for streaming to this device."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Can\'t play this video."</string>
@@ -893,16 +909,25 @@
     <string name="capital_off" msgid="6815870386972805832">"OFF"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Complete action using"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Complete action using %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Complete action"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Open with"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Open with %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Open"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Edit with"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Edit with %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"(edit)"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Share with"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Share with %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Shared"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Send using"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Send using %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Send"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Select a Home app"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Use %1$s as Home"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Capture image"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Capture image with"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Capture image with %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Capture image"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Use by default for this action."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Use a different app"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Clear default in System settings &gt; Apps &gt; Downloaded."</string>
@@ -1460,7 +1485,7 @@
     <string name="select_year" msgid="7952052866994196170">"Select year"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> deleted"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Work <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"To unpin this screen, touch and hold Back and Overview at the same time."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"To unpin this screen, touch and hold Back."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"To unpin this screen, touch and hold Overview."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"App is pinned: unpinning isn\'t allowed on this device."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Screen pinned"</string>
@@ -1472,6 +1497,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Updated by your administrator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Deleted by your administrator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"To help improve battery life, battery saver reduces your device’s performance and limits vibration, location services and most background data. Email, messaging, and other apps that rely on syncing may not update unless you open them.\n\nBattery saver turns off automatically when your device is charging."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"To help reduce data usage, Data Saver prevents some apps from sending or receiving data in the background. An app that you’re currently using can access data, but may do so less frequently. This may mean, for example, that images don’t display until you tap them."</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"Turn on Data Saver?"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"Turn on"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">For %1$d minutes (until <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">For one minute (until <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-en-rIN/strings.xml b/core/res/res/values-en-rIN/strings.xml
index fe9d8db..3e3ba9a 100644
--- a/core/res/res/values-en-rIN/strings.xml
+++ b/core/res/res/values-en-rIN/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Searching for Service"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi Calling"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"To make calls and send messages over Wi-Fi, first ask your carrier to set up this service. Then turn on Wi-Fi calling again from Settings."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Register with your operator"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi Calling"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Off"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi preferred"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobile preferred"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Watch storage is full. Delete some files to free up space."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV storage is full. Delete some files to free space."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Phone storage is full. Delete some files to free space."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Network may be monitored"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Certificate authorities installed</item>
+      <item quantity="one">Certificate authority installed</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"By an unknown third party"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"By your work profile administrator"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"By <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Take bug report"</string>
     <string name="bugreport_message" msgid="398447048750350456">"This will collect information about your current device state, to send as an email message. It will take a little time from starting the bug report until it is ready to be sent. Please be patient."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interactive report"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Use this under most circumstances. It allows you to track progress of the report and enter more details about the problem. It might omit some less-used sections that take a long time to report."</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"Use this under most circumstances. It allows you to track progress of the report, enter more details about the problem and take screenshots. It might omit some less-used sections that take a long time to report."</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Full report"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Use this option for minimal system interference when your device is unresponsive or too slow or when you need all report sections. Does not take a screenshot or allow you to enter more details."</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"Use this option for minimal system interference when your device is unresponsive or too slow, or when you need all report sections. Does not allow you to enter more details or take additional screenshots."</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Taking screenshot for bug report in <xliff:g id="NUMBER_1">%d</xliff:g> seconds.</item>
       <item quantity="one">Taking screenshot for bug report in <xliff:g id="NUMBER_0">%d</xliff:g> second.</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> hours</item>
       <item quantity="one">1 hour</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"now"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Video problem"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"This video isn\'t valid for streaming to this device."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Can\'t play this video."</string>
@@ -893,16 +909,25 @@
     <string name="capital_off" msgid="6815870386972805832">"OFF"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Complete action using"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Complete action using %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Complete action"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Open with"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Open with %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Open"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Edit with"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Edit with %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"(edit)"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Share with"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Share with %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Shared"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Send using"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Send using %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Send"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Select a Home app"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Use %1$s as Home"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Capture image"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Capture image with"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Capture image with %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Capture image"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Use by default for this action."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Use a different app"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Clear default in System settings &gt; Apps &gt; Downloaded."</string>
@@ -1460,7 +1485,7 @@
     <string name="select_year" msgid="7952052866994196170">"Select year"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> deleted"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Work <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"To unpin this screen, touch and hold Back and Overview at the same time."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"To unpin this screen, touch and hold Back."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"To unpin this screen, touch and hold Overview."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"App is pinned: unpinning isn\'t allowed on this device."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Screen pinned"</string>
@@ -1472,6 +1497,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Updated by your administrator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Deleted by your administrator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"To help improve battery life, battery saver reduces your device’s performance and limits vibration, location services and most background data. Email, messaging, and other apps that rely on syncing may not update unless you open them.\n\nBattery saver turns off automatically when your device is charging."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"To help reduce data usage, Data Saver prevents some apps from sending or receiving data in the background. An app that you’re currently using can access data, but may do so less frequently. This may mean, for example, that images don’t display until you tap them."</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"Turn on Data Saver?"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"Turn on"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">For %1$d minutes (until <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">For one minute (until <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-es-rUS/strings.xml b/core/res/res/values-es-rUS/strings.xml
index 289c6ba..92bfa38 100644
--- a/core/res/res/values-es-rUS/strings.xml
+++ b/core/res/res/values-es-rUS/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Buscando servicio"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Llamada por Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Para realizar llamadas o enviar mensajes por Wi-Fi, primero solicítale al proveedor que instale el servicio. Luego, vuelve a activar las llamadas por Wi-Fi desde Configuración."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Regístrate con tu proveedor."</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Llamada por Wi-Fi de %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Desactivada"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Red Wi-Fi preferida"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Red móvil preferida"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"El almacenamiento del reloj está completo. Elimina algunos archivos para liberar espacio."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"El almacenamiento de la TV está completo. Elimina algunos archivos para liberar espacio."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Se ha agotado el espacio de almacenamiento del dispositivo. Elimina algunos archivos para liberar espacio."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Es posible que la red esté supervisada"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Se instalaron las autoridades de certificación</item>
+      <item quantity="one">Se instaló la autoridad de certificación</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Por un tercero desconocido"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Por el administrador del perfil de trabajo"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Por <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Iniciar informe de errores"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Se recopilará información sobre el estado actual de tu dispositivo, que se enviará por correo. Pasarán unos minutos desde que se inicie el informe de errores hasta que se envíe, por lo que te recomendamos que tengas paciencia."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Informe interactivo"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Usa esta opción en la mayoría de los casos. Te permite ingresar más detalles acerca del problema y realizar un seguimiento del progreso del informe. Es posible que se omitan secciones menos usadas cuyos informes demoran más en completarse."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Informe completo"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Usa esta opción para reducir al mínimo la interferencia cuando tu dispositivo no responde o funciona muy lento, o cuando necesitas todas las secciones. No permite tomar una captura de pantalla ni ingresar más detalles."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Se tomará una captura de pantalla para el informe de errores en <xliff:g id="NUMBER_1">%d</xliff:g> segundos.</item>
       <item quantity="one">Se tomará una captura de pantalla para el informe de errores en <xliff:g id="NUMBER_0">%d</xliff:g> segundo.</item>
@@ -470,7 +479,7 @@
     <string name="permdesc_connection_manager" msgid="5925480810356483565">"Permite que la aplicación administre las conexiones de telecomunicaciones."</string>
     <string name="permlab_bind_incall_service" msgid="6773648341975287125">"interactuar con la pantalla de llamada"</string>
     <string name="permdesc_bind_incall_service" msgid="8343471381323215005">"Permite que la aplicación controle cuándo y cómo el usuario ve la pantalla de llamada."</string>
-    <string name="permlab_bind_connection_service" msgid="3557341439297014940">"interaccionar con servicios de telefonía"</string>
+    <string name="permlab_bind_connection_service" msgid="3557341439297014940">"interactuar con servicios de telefonía"</string>
     <string name="permdesc_bind_connection_service" msgid="4008754499822478114">"Permite que la aplicación interaccione con servicios de telefonía para hacer y recibir llamadas."</string>
     <string name="permlab_control_incall_experience" msgid="9061024437607777619">"ofrecer una experiencia de usuario de llamada"</string>
     <string name="permdesc_control_incall_experience" msgid="915159066039828124">"Permite que la aplicación proporcione una experiencia de usuario de llamada."</string>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> horas</item>
       <item quantity="one">1 hora</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problemas de video"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"No es posible transmitir este video al dispositivo."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"No se puede reproducir el video."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"No"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Completar la acción mediante"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Completar acción con %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Completar acción"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Abrir con"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Abrir con %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Abrir"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Editar con"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Editar con %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Editar"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Compartir con"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Compartir con %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Compartir"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Enviar con"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Enviar con %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Enviar"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Seleccionar una aplicación de la pantalla principal"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Utilizar %1$s como aplicación de la pantalla principal"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Capturar imagen"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Capturar imagen con"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Capturar imagen con %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Capturar imagen"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Utilizar de manera predeterminada en esta acción."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Utilizar una aplicación diferente"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Eliminar valores predeterminados en Configuración del sistema &gt; Aplicaciones &gt; Descargas."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Seleccionar año"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> borrado"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> de trabajo"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Para dejar de fijar esta pantalla, mantén presionados los botones para volver y Recientes al mismo tiempo."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Para dejar de fijar esta pantalla, mantén presionado el botón Atrás."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Para dejar de fijar esta pantalla, mantén presionado el botón Recientes."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"La aplicación está fijada, no se puede anular la fijación en este dispositivo."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Pantalla fija"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Actualizado por el administrador"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Lo eliminó el administrador."</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Para ayudar a mejorar la duración de la batería, el ahorro de batería reduce el rendimiento del dispositivo y limita la vibración, los servicios de ubicación y la mayoría de los datos en segundo plano. Es posible que el correo electrónico, la mensajería y otras aplicaciones que se basan en la sincronización no puedan actualizarse, a menos que los abras.\n\nEl ahorro de batería se desactiva de forma automática cuando el dispositivo se está cargando."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Para reducir el uso de datos, \"Reducir datos\" evita que algunas apps envíen y reciban datos en segundo plano. La app que estés usando podrá acceder a los datos, pero con menor frecuencia. De esta forma, por ejemplo, las imágenes no se mostrarán hasta que las presiones."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Durante %1$d minutos hasta la(s) <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g></item>
       <item quantity="one">Durante 1 minuto; hasta la(s) <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g></item>
diff --git a/core/res/res/values-es/strings.xml b/core/res/res/values-es/strings.xml
index 8bd955b..3c95936 100644
--- a/core/res/res/values-es/strings.xml
+++ b/core/res/res/values-es/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Buscando servicio"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Llamadas Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Para hacer llamadas y enviar mensajes por Wi-Fi, debes pedir antes a tu operador que configure este servicio. Una vez hecho esto, vuelva a activar las llamadas Wi-Fi en Ajustes."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Regístrate con tu operador"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Llamada Wi-Fi de %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Desactivado"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Preferir Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Preferir datos móviles"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"El almacenamiento del reloj está lleno. Elimina algunos archivos para liberar espacio."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"No queda espacio de almacenamiento en la TV. Elimina algunos archivos para liberar espacio."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Se ha agotado el espacio de almacenamiento del teléfono. Elimina algunos archivos para liberar espacio."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Es posible que la red esté supervisada"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Entidades de certificación instaladas</item>
+      <item quantity="one">Entidad de certificación instalada</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Por un tercero desconocido"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Del administrador de tu perfil de trabajo"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Por <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Crear informe de errores"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Se recopilará información sobre el estado actual de tu dispositivo y se enviará por correo electrónico. Pasarán unos minutos desde que empiece a generarse el informe de errores hasta que se envíe."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Informe interactivo"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Usa esta opción en la mayoría de los casos. Te permite realizar un seguimiento del progreso de la notificación e introducir más información sobre el problema. Es posible que se omitan algunas secciones menos utilizadas y que requieran más tiempo."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Informe completo"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Utiliza esta opción para que la interferencia del sistema sea mínima cuando el dispositivo no responda o funcione demasiado lento, o bien cuando necesites todas las secciones del informe. No realiza una captura de pantalla ni permite introducir más detalles."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">La captura de pantalla para el informe de errores se realizará en <xliff:g id="NUMBER_1">%d</xliff:g> segundos.</item>
       <item quantity="one">La captura de pantalla para el informe de errores se realizará en <xliff:g id="NUMBER_0">%d</xliff:g> segundo.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> horas</item>
       <item quantity="one">1 hora</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Incidencias con el vídeo"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Este vídeo no se puede transmitir al dispositivo."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"No se puede reproducir el vídeo."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"NO"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Completar acción utilizando"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Completar acción con %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Completar acción"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Abrir con"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Abrir con %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Abrir"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Editar con"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Editar con %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Cambiar"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Compartir con"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Compartir con %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Compartir"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Enviar con"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Enviar con %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Enviar"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Selecciona una aplicación de inicio"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Usar %1$s como aplicación de inicio"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Capturar imagen"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Capturar imagen con"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Capturar imagen con %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Capturar imagen"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Usar siempre para esta acción"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Utiliza otra aplicación"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Para borrar los valores predeterminados, accede a Ajustes del sistema &gt; Aplicaciones &gt; Descargadas."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Seleccionar año"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> eliminado"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> de trabajo"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Para desactivar esta pantalla, mantén pulsados los botones de retroceso y Visión general al mismo tiempo."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Para dejar de fijar esta pantalla, mantén pulsado el botón Atrás."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Para desactivar esta pantalla, mantén pulsado Visión general."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"La aplicación está fijada: no se puede deshacer la fijación en este dispositivo."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Pantalla fijada"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Actualizado por tu administrador"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Eliminado por tu administrador"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Para ayudar a mejorar la duración de la batería, la función de ahorro de energía reduce el rendimiento del dispositivo y limita la vibración, los servicios de ubicación y la mayor parte de la transmisión de datos en segundo plano. Es posible que las aplicaciones que se sincronizan, como las de correo y mensajes, no se actualicen a menos que las abras.\n\nLa función de ahorro de energía se desactiva automáticamente cuando el dispositivo se está cargando."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"El Economizador de Datos evita que algunas aplicaciones envíen o reciban datos en segundo plano, lo que permite reducir el uso de datos. Una aplicación activa podrá acceder a los datos, aunque con menos frecuencia. Esto significa que, por ejemplo, las imágenes no se mostrarán hasta que no las toques."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Durante %1$d minutos (hasta las <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Durante un minuto (hasta las <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-et-rEE/strings.xml b/core/res/res/values-et-rEE/strings.xml
index 1aaf4ae..73e2e46 100644
--- a/core/res/res/values-et-rEE/strings.xml
+++ b/core/res/res/values-et-rEE/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Teenuse otsimine"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"WiFi-kõned"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Üle WiFi-võrgu helistamiseks ja sõnumite saatmiseks paluge operaatoril esmalt see teenus seadistada. Seejärel lülitage WiFi-kõned menüüs Seaded uuesti sisse."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registreeruge operaatori juures"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s WiFi kaudu helistamine"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Väljas"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"WiFi eelistusega"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobiilside eelistusega"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Kella talletusruum on täis. Ruumi vabastamiseks kustutage mõned failid."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Teleri salvestusruum on täis. Kustutage mõni fail ruumi vabastamiseks."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Telefonimälu on täis. Ruumi vabastamiseks kustutage mõned failid."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Võrku võidakse jälgida"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Sertifikaadi volitused on installitud</item>
+      <item quantity="one">Sertifikaadi volitus on installitud</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Tundmatu kolmas osapool:"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Teie tööprofiili administraatori poolt"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Domeen: <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Veaaruande võtmine"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Nii kogutakse teavet teie seadme praeguse oleku kohta, et saata see meilisõnumina. Enne kui saate veaaruande ära saata, võtab selle loomine natuke aega; varuge kannatust."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interakt. aruanne"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Kasutage seda enamikul juhtudel. See võimaldab jälgida aruande edenemist ja sisestada probleemi kohta täpsemat teavet. Vahele võivad jääda mõned vähem kasutatud jaotised, millest teavitamine võtab rohkem aega."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Täielik aruanne"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Kasutage seda valikut süsteemihäirete minimeerimiseks, kui seade ei reageeri, on liiga aeglane või vajate aruande kõiki jaotisi. Ekraanipilti ei jäädvustata ega lubata sisestada lisateavet."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Veaaruande jaoks ekraanipildi jäädvustamine <xliff:g id="NUMBER_1">%d</xliff:g> sekundi pärast.</item>
       <item quantity="one">Veaaruande jaoks ekraanipildi jäädvustamine <xliff:g id="NUMBER_0">%d</xliff:g> sekundi pärast.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> tundi</item>
       <item quantity="one">1 tund</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Probleem videoga"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"See video ei sobi voogesituseks selles seadmes."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Videot ei saa esitada."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"VÄLJAS"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Lõpetage toiming rakendusega"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Toimingu lõpetamine, kasutades rakendust %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Vii toiming lõpule"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Avamine:"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Avamine rakendusega %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Ava"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Muutmine:"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Muutmine rakendusega %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Muuda"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Jagamine:"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Jagamine rakendusega %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Jaga"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Saada rakendusega"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Saada rakendusega %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Saada"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Avaekraani rakenduse valimine"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Rakenduse %1$s kasutamine avaekraanina"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Jäädvusta kujutis"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Jäädvusta pilt rakendusega"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Pildi jäädvustamine rakendusega %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Jäädvusta kujutis"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Kasuta vaikimisi selleks toiminguks."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Teise rakenduse kasutamine"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Tühjendage vaikeandmed valikutes Süsteemiseaded &gt; Rakendused &gt; Allalaaditud."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Aasta valimine"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> on kustutatud"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Töö <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Ekraanikuva vabastamiseks puudutage pikalt samal ajal nuppe Tagasi ja Ülevaade."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Ekraani vabastamiseks puudutage pikalt nuppu Tagasi."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Ekraanikuva vabastamiseks puudutage pikalt nuppu Ülevaade."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Rakendus on kinnitatud: vabastamine pole selles seadmes lubatud."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ekraan on kinnitatud"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Värskendas administraator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Kustutas teie administraator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Aku kestuse parandamiseks vähendab akusäästja teie seadme toimivust ning piirab vibratsiooni, asukohateenuseid ja suuremat osa taustaandmetest. E-posti, sõnumsidet ja muid sünkroonimisele tuginevaid rakendusi võidakse värskendada ainult siis, kui te need avate.\n\nAkusäästja lülitatakse seadme laadimise ajal automaatselt välja."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Andmekasutuse vähendamiseks keelab andmemahu säästja mõne rakenduse puhul andmete taustal saatmise ja vastuvõtmise. Rakendus, mida praegu kasutate, pääseb andmetele juurde, kuid võib seda teha väiksema sagedusega. Seetõttu võidakse näiteks kujutised kuvada alles siis, kui neid puudutate."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d minutiks (kuni <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Üheks minutiks (kuni <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-eu-rES/strings.xml b/core/res/res/values-eu-rES/strings.xml
index 4601ff8..85f4214 100644
--- a/core/res/res/values-eu-rES/strings.xml
+++ b/core/res/res/values-eu-rES/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Zerbitzu bila"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi bidezko deiak"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi bidez deiak egiteko eta mezuak bidaltzeko, eskatu operadoreari zerbitzu hori gaitzeko. Ondoren, aktibatu Wi-Fi bidezko deiak Ezarpenak atalean."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Erregistratu operadorearekin"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi bidezko deiak"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Desaktibatuta"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi sarea hobesten da"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Sare mugikorra hobesten da"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Erlojuaren memoria beteta dago. Tokia egiteko, ezabatu fitxategi batzuk."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Telebistaren memoria beteta dago. Tokia egiteko, ezabatu fitxategi batzuk."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Telefonoaren memoria beteta dago. Tokia egiteko, ezabatu fitxategi batzuk."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Baliteke sarea kontrolatuta egotea"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Ziurtagiri-emaile bat baino gehiago daude instalatuta</item>
+      <item quantity="one">Ziurtagiri-emaile bat dago instalatuta</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Hirugarren alderdi ezezagun baten arabera"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Laneko profilaren administratzailea"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> da arduraduna"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Sortu akatsen txostena"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Gailuaren uneko egoerari buruzko informazioa bilduko da, mezu elektroniko gisa bidaltzeko. Minutu batzuk igaroko dira akatsen txostena sortzen hasten denetik bidaltzeko prest egon arte. Itxaron, mesedez."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Txosten dinamikoa"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Aukera hau erabili beharko zenuke ia beti. Txostenaren jarraipena egin ahal izango duzu eta arazoari buruzko xehetasunak eman ahal izango dituzu. Baliteke gutxitan erabili behar izaten diren atalak ez agertzea, denbora aurrezteko."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Txosten osoa"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Erabili aukera hau sisteman ahalik eta traba gutxien eragiteko gailuak erantzuten ez duenean, mantsoegi dabilenean edo txosteneko atal guztiak behar dituzunean. Ez du ateratzen argazkirik eta ez du uzten beste xehetasunik ematen."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Akatsen txostenaren argazkia aterako da <xliff:g id="NUMBER_1">%d</xliff:g> segundo barru.</item>
       <item quantity="one">Akatsen txostenaren argazkia aterako da <xliff:g id="NUMBER_0">%d</xliff:g> segundo barru.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ordu</item>
       <item quantity="one">Ordubete</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Bideoak arazoren bat du"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Bideo hau ezin da gailuan zuzenean erreproduzitu."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Ezin da bideoa erreproduzitu."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"DESAKTIBATUTA"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Gauzatu ekintza hau erabilita:"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Osatu ekintza %1$s erabiliz"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Osatu ekintza"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Ireki honekin:"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Irekin %1$s aplikazioarekin"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Ireki"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Editatu honekin:"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Editatu %1$s aplikazioarekin"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Editatu"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Partekatu hauen bidez:"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Partekatu %1$s aplikazioarekin"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Partekatu"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Bidali honen bidez:"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Bidali %1$s bidez"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Bidali"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Hautatu hasierako aplikazioa"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Erabili %1$s hasierako aplikazio gisa"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Atera argazkia"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Atera argazkia aplikazio honekin:"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Atera argazkia %1$s aplikazioarekin"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Atera argazkia"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Erabili modu lehenetsian ekintza honetarako."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Erabili beste aplikazio bat"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Garbitu aplikazio lehenetsia Sistemaren ezarpenak &gt; Aplikazioak &gt; Deskargatutakoak atalean."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Hautatu urtea"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> ezabatu da"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Laneko <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Aingura kentzeko, eduki ukituta Atzera eta Ikuspegi orokorra botoiak aldi berean."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Pantailari aingura kentzeko, eduki sakatuta Atzera botoia."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Aingura kentzeko, eduki ukituta Ikuspegi orokorra botoia."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Aplikazioa ainguratuta dago. Gailu honetan ezin da aingura kendu."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Pantaila ainguratu da"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Administratzaileak eguneratu du"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Administratzaileak ezabatu du"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Bateriak gehiago iraun dezan, bateria-aurrezleak gailuaren funtzionamendua, dardara,  kokapen-zerbitzuak eta atzeko planoko datuen erabilera gehiena mugatzen ditu. Posta elektronikoa, mezuak eta sinkronizatzen diren gainerako zerbitzuak ez dira eguneratuko ireki ezean.\n\nGailua kargatzen ezarri orduko desaktibatzen da bateria-aurrezlea."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Datuen erabilera murrizteko, atzeko planoan datuak bidaltzea eta jasotzea galarazten die datu-aurrezleak aplikazio batzuei. Unean erabiltzen ari zaren aplikazioak atzi ditzake datuak, baina baliteke maiztasun txikiagoarekin atzitzea. Horrela, adibidez, baliteke irudiak ez erakustea haiek sakatu arte."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d minutuz (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> arte)</item>
       <item quantity="one">Minutu batez (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> arte)</item>
diff --git a/core/res/res/values-fa/strings.xml b/core/res/res/values-fa/strings.xml
index 064055e..55afe89 100644
--- a/core/res/res/values-fa/strings.xml
+++ b/core/res/res/values-fa/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"جستجوی سرویس"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"‏تماس از طریق Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"‏برای برقراری تماس و ارسال پیام از طریق Wi-Fi، ابتدا از شرکت مخابراتی‌تان درخواست کنید این سرویس را راه‌اندازی کند. سپس دوباره از تنظیمات، تماس Wi-Fi را روشن کنید."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"ثبت نام با شرکت مخابراتی شما"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"‏تماس ‪%s Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"خاموش"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"‏Wi-Fi ترجیحی"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"شبکه سلولی ترجیحی"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"حافظه ساعت پر است. برای آزادسازی فضا، چند فایل را حذف کنید."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"فضای ذخیره‌سازی تلویزیون پر است. برای آزاد کردن فضا، برخی از فایل‌ها را حذف کنید."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"حافظه تلفن پر است. بعضی از فایل‌ها را حذف کنید تا فضا آزاد شود."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"ممکن است شبکه نظارت شده باشد"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">مرجع صدور گواهی نصب شد</item>
+      <item quantity="other">مراجع صدور گواهی نصب شدند</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"توسط یک شخص ثالث ناشناس"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"توسط سرپرست نمایه کار شما"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"توسط <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"گرفتن گزارش اشکال"</string>
     <string name="bugreport_message" msgid="398447048750350456">"این گزارش اطلاعات مربوط به وضعیت دستگاه کنونی شما را جمع‌آوری می‌کند تا به صورت یک پیام ایمیل ارسال شود. از زمان شروع گزارش اشکال تا آماده شدن برای ارسال اندکی زمان می‌برد؛ لطفاً شکیبا باشید."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"گزارش تعاملی"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"در بیشتر شرایط از این گزینه استفاده کنید. به شما امکان ردیابی پیشرفت گزارش و وارد کردن جزئیات بیشتری درباره مشکل را می‌دهد. ممکن است برخی از بخش‌هایی را که کمتر استفاده شده و باعث افزایش طول زمان گزارش می‌شود حذف کند."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"گزارش کامل"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"از این گزینه برای به‌حداقل رساندن تداخل سیستم هنگام پاسخ‌گو نبودن یا کند بودن دستگاه یا هنگام نیازداشتن به همه بخش‌های گزارش استفاده کنید. عکس صفحه‌نمایش نمی‌گیرد یا امکان وارد کردن جزئیات بیشتری به شما نمی‌دهد."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">تا <xliff:g id="NUMBER_1">%d</xliff:g> ثانیه دیگر عکس صفحه‌نمایش برای گزارش اشکال گرفته می‌شود.</item>
       <item quantity="other">تا <xliff:g id="NUMBER_1">%d</xliff:g> ثانیه دیگر عکس صفحه‌نمایش برای گزارش اشکال گرفته می‌شود.</item>
@@ -388,9 +397,9 @@
     <string name="permdesc_setTimeZone" product="tv" msgid="888864653946175955">"‏به برنامه اجازه می‎دهد منطقه زمانی تلویزیون را تغییر دهد."</string>
     <string name="permdesc_setTimeZone" product="default" msgid="4499943488436633398">"‏به برنامه اجازه می‎دهد تا منطقهٔ زمانی تلفن را تغییر دهد."</string>
     <string name="permlab_getAccounts" msgid="1086795467760122114">"یافتن حساب‌ها در دستگاه"</string>
-    <string name="permdesc_getAccounts" product="tablet" msgid="2741496534769660027">"به برنامه اجازه می‌دهد به لیست حساب‌های شناخته شده توسط رایانهٔ لوحی دسترسی پیدا کند. این ممکن است حسا‌ب‌های ایجاد شده توسط برنامه‌هایی را که نصب کرده‌اید، شامل شود."</string>
+    <string name="permdesc_getAccounts" product="tablet" msgid="2741496534769660027">"به برنامه اجازه می‌دهد به فهرست حساب‌های شناخته شده توسط رایانهٔ لوحی دسترسی پیدا کند. این ممکن است حسا‌ب‌های ایجاد شده توسط برنامه‌هایی را که نصب کرده‌اید، شامل شود."</string>
     <string name="permdesc_getAccounts" product="tv" msgid="4190633395633907543">"به برنامه اجازه می‌دهد تا فهرست حساب‌هایی را دریافت کند که تلویزیون می‌شناسد. شاید شامل حساب‌هایی باشد که توسط برنامه‌هایی که نصب کرده‌اید، ایجاد شده باشد."</string>
-    <string name="permdesc_getAccounts" product="default" msgid="3448316822451807382">"به برنامه اجازه می‌دهد به لیست حساب‌های شناخته شده توسط تلفن دسترسی پیدا کند. این ممکن است حسا‌ب‌های ایجاد شده توسط برنامه‌هایی را که نصب کرده‌اید، شامل شود."</string>
+    <string name="permdesc_getAccounts" product="default" msgid="3448316822451807382">"به برنامه اجازه می‌دهد به فهرست حساب‌های شناخته شده توسط تلفن دسترسی پیدا کند. این ممکن است حسا‌ب‌های ایجاد شده توسط برنامه‌هایی را که نصب کرده‌اید، شامل شود."</string>
     <string name="permlab_accessNetworkState" msgid="4951027964348974773">"مشاهدهٔ اتصالات شبکه"</string>
     <string name="permdesc_accessNetworkState" msgid="8318964424675960975">"به برنامه امکان می‌دهد اطلاعات مربوط به اتصالات شبکه مانند شبکه‌های موجود و متصل را مشاهده کند."</string>
     <string name="permlab_createNetworkSockets" msgid="7934516631384168107">"دسترسی کامل به شبکه"</string>
@@ -775,12 +784,12 @@
     <string name="autofill_postal_code" msgid="4696430407689377108">"کد پستی"</string>
     <string name="autofill_state" msgid="6988894195520044613">"ایالت"</string>
     <string name="autofill_zip_code" msgid="8697544592627322946">"کد پستی"</string>
-    <string name="autofill_county" msgid="237073771020362891">"بخش"</string>
+    <string name="autofill_county" msgid="237073771020362891">"بخش/شهرستان"</string>
     <string name="autofill_island" msgid="4020100875984667025">"جزیره"</string>
     <string name="autofill_district" msgid="8400735073392267672">"حوزه"</string>
     <string name="autofill_department" msgid="5343279462564453309">"اداره"</string>
     <string name="autofill_prefecture" msgid="2028499485065800419">"حوزه اداری"</string>
-    <string name="autofill_parish" msgid="8202206105468820057">"ناحیه"</string>
+    <string name="autofill_parish" msgid="8202206105468820057">"استان"</string>
     <string name="autofill_area" msgid="3547409050889952423">"منطقه"</string>
     <string name="autofill_emirate" msgid="2893880978835698818">"امارات"</string>
     <string name="permlab_readHistoryBookmarks" msgid="3775265775405106983">"خواندن سابقه و نشانک‌های وب شما"</string>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ساعت</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ساعت</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"مشکل در ویدیو"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"متأسفیم، این ویدیو برای پخش جریانی با این دستگاه معتبر نیست."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"پخش این ویدیو ممکن نیست."</string>
@@ -874,7 +893,7 @@
     <string name="undo" msgid="7905788502491742328">"لغو"</string>
     <string name="redo" msgid="7759464876566803888">"انجام مجدد"</string>
     <string name="textSelectionCABTitle" msgid="5236850394370820357">"انتخاب متن"</string>
-    <string name="addToDictionary" msgid="4352161534510057874">"افزودن به فرهنگ‌لغت"</string>
+    <string name="addToDictionary" msgid="4352161534510057874">"افزودن به واژه‌نامه"</string>
     <string name="deleteText" msgid="6979668428458199034">"حذف"</string>
     <string name="inputMethod" msgid="1653630062304567879">"روش ورودی"</string>
     <string name="editTextMenuTitle" msgid="4909135564941815494">"عملکردهای متنی"</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"خاموش"</string>
     <string name="whichApplication" msgid="4533185947064773386">"تکمیل عملکرد با استفاده از"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"‏تکمیل عملکرد با استفاده از %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"تکمیل عملکرد"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"باز کردن با"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"‏باز کردن با %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"باز کردن"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"ویرایش با"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"‏ویرایش با %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"ویرایش"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"اشتراک‌گذاری با"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"‏اشتراک‌گذاری با %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"اشتراک‌گذاری"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"ارسال با استفاده از"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"‏ارسال با استفاده از %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"ارسال"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"انتخاب یک برنامه صفحه اصلی"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"‏استفاده از %1$s به عنوان برنامه صفحه اصلی"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"تصویربرداری"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"تصویربرداری با"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"‏تصویربرداری با %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"تصویربرداری"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"استفاده به صورت پیش‌فرض برای این عملکرد."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"استتفاده از یک برنامه دیگر"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"‏پیش‌فرض را در تنظیمات سیستم&gt; برنامه‎ها&gt; مورد بارگیری شده پاک کنید."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"انتخاب سال"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> حذف شد"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> محل کار"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"برای برداشتن پین این صفحه، هم‌زمان «برگشت» و «نمای کلی» را لمس کنید و نگه دارید."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"برای برداشتن پین این صفحه، «برگشت» را لمس کنید و نگه دارید."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"برای برداشتن پین این صفحه، «نمای کلی» را لمس کنید و نگه دارید."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"برنامه پین شده است: برداشتن پین در این دستگاه مجاز نیست."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"صفحه پین شد"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"توسط سرپرست شما به‌روزرسانی شد"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"توسط سرپرستتان حذف شد"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"برای کمک به بهبود عمر باتری، بهینه‌سازی باتری عملکرد دستگاهتان را کاهش می‌دهد و لرزش، سرویس‌های مبتنی بر مکان، و دسترسی به اکثر داده‌ها در پس‌زمینه را محدود می‌کند. ایمیل، پیام‌رسانی و برنامه‌های دیگری که به همگام‌سازی وابسته‌اند، تا زمانی‌که آن‌ها را باز نکنید نمی‌توانند به‌روز شوند.\n\nبهینه‌سازی باتری به‌صورت خودکار در هنگام شارژ شدن دستگاه خاموش می‌شود."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"برای کمک به کاهش مصرف داده، «صرفه‌جویی داده» مانع ارسال و دریافت داده در پس‌زمینه ازطرف بعضی برنامه‌ها می‌شود. برنامه‌ای که درحال حاضر استفاده می‌کنید می‌تواند به داده دسترسی داشته باشد اما دفعات دسترسی آن محدود است. به این معنی که، برای مثال، تصاویر تا زمانی که روی آنها ضربه نزنید نشان داده نمی‌شوند."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">‏به مدت %1$d دقیقه (تا <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">‏به مدت %1$d دقیقه (تا <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-fi/strings.xml b/core/res/res/values-fi/strings.xml
index 41c583f..d517487 100644
--- a/core/res/res/values-fi/strings.xml
+++ b/core/res/res/values-fi/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Etsitään signaalia"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi-puhelut"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Jos haluat soittaa puheluita ja lähettää viestejä Wi-Fin kautta, pyydä ensin operaattoriasi ottamaan tämä palvelu käyttöön. Ota sitten Wi-Fi-puhelut käyttöön asetuksissa."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Rekisteröidy operaattorisi asiakkaaksi."</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Wi-Fi-puhelut: %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Ei käytössä"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi ensisijainen"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Matkapuhelinverkko ensisijainen"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Kellon tallennustila on täynnä. Vapauta tilaa poistamalla tiedostoja."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Television tallennustila on täynnä. Vapauta tilaa poistamalla tiedostoja."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Puhelimen tallennustila on täynnä. Vapauta tilaa poistamalla tiedostoja."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Verkkoa saatetaan valvoa"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Varmenteen myöntäjiä on asennettu.</item>
+      <item quantity="one">Varmenteen myöntäjä on asennettu.</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Valvoja on tuntematon kolmas osapuoli."</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Valvoja: työprofiilin järjestelmänvalvoja"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Valvoja on <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>."</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Luo virheraportti"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Toiminto kerää tietoja laitteen tilasta ja lähettää ne sähköpostitse. Virheraportti on valmis lähetettäväksi hetken kuluttua - kiitos kärsivällisyydestäsi."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktiivinen"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Valitse tämä vaihtoehto useimmissa tapauksissa. Voit seurata raportin etenemistä ja antaa lisätietoja ongelmasta. Tämä vaihtoehto saattaa ohittaa joitakin harvoin käytettyjä osioita, joiden käsittely raportissa kestää kauan."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Koko raportti"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Valitse tämä, jos laitteesi ei ota komentoja vastaan tai toimii hitaasti, tai tarvitset kaikkia raportin osioita. Raporttiin ei tallenneta kuvakaappausta, etkä voi kirjoittaa siihen lisätietoja."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Virheraporttiin otetaan kuvakaappaus <xliff:g id="NUMBER_1">%d</xliff:g> sekunnin kuluttua.</item>
       <item quantity="one">Virheraporttiin otetaan kuvakaappaus <xliff:g id="NUMBER_0">%d</xliff:g> sekunnin kuluttua.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> tuntia</item>
       <item quantity="one">1 tunti</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Video-ongelma"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Tätä videota ei voi suoratoistaa tällä laitteella."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Videota ei voida toistaa."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"POIS"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Tee toiminto käyttäen sovellusta"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Suorita sovelluksella %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Suorita toiminto"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Avaa sovelluksessa"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Avaa sovelluksessa %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Avaa"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Muokkaa sovelluksessa"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Muokkaa sovelluksessa %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Muokkaa"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Jaa sovelluksessa"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Jaa sovelluksessa %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Jaa"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Lähetä sovelluksella"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Lähetä sovelluksella %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Lähetä"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Valitse aloitusruutusovellus"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Käytä aloitusruutuna: %1$s"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Tallenna kuva"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Tallenna kuva sovelluksella"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Tallenna kuva sovelluksella %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Tallenna kuva"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Käytä oletuksena tälle toiminnolle."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Käytä toista sovellusta"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Poista oletusasetus kohdassa Järjestelmäasetukset &gt; Sovellukset &gt; Ladattu."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Valitse vuosi"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> poistettiin"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> (työ)"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Poista näytön kiinnitys painamalla Edellinen- ja Viimeisimmät-kohtaa samanaikaisesti pitkään."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Irrota näyttö koskettamalla Takaisin-painiketta pitkään."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Poista näytön kiinnitys painamalla Viimeisimmät-kohtaa pitkään."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Sovellus on kiinnitetty. Irrottaminen ei ole sallittua tällä laitteella."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Näyttö kiinnitetty"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Järjestelmänvalvojasi on päivittänyt paketin."</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Järjestelmänvalvoja on poistanut paketin."</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Jos haluat parantaa akun kestoa, virransäästö vähentää laitteesi suorituskykyä ja rajoittaa värinää, sijaintipalveluita ja useimpia taustatietoja. Sähköposti, viestit ja muut synkronointiin perustuvat sovellukset eivät välttämättä päivity, ellet avaa niitä.\n\nVirransäästö poistuu käytöstä automaattisesti, kun laitteesi latautuu."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Data Saver estää joitakin sovelluksia lähettämästä tai vastaanottamasta tietoja taustalla, jotta datan käyttöä voidaan vähentää. Käytössäsi oleva sovellus voi yhä käyttää dataa, mutta se saattaa tehdä niin tavallista harvemmin. Tämä voi tarkoittaa esimerkiksi sitä, että kuva ladataan vasta, kun kosketat sitä."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d minuutiksi (kunnes kello on <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Yhdeksi minuutiksi (kunnes kello on <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-fr-rCA/strings.xml b/core/res/res/values-fr-rCA/strings.xml
index 3607382..56b4e81 100644
--- a/core/res/res/values-fr-rCA/strings.xml
+++ b/core/res/res/values-fr-rCA/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Recherche des services disponibles"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Appels Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Pour effectuer des appels et envoyer des messages par Wi-Fi, demandez tout d\'abord à votre fournisseur de services de configurer ce service. Réactivez ensuite les appels Wi-Fi dans les paramètres."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Inscrivez-vous auprès de votre fournisseur de services"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Appels Wi-Fi %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Désactivé"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Réseau Wi-Fi de préférence"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Réseau cellulaire de préférence"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"La mémoire de la montre est pleine. Supprimez des fichiers pour libérer de l\'espace."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"L\'espace de stockage du téléviseur est plein. Supprimez des fichiers pour libérer de l\'espace."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"La mémoire du téléphone est pleine. Veuillez supprimer des fichiers pour libérer de l\'espace."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Le réseau peut être surveillé"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Autorité de certification installée</item>
+      <item quantity="other">Autorités de certification installées</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Par un tiers inconnu"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Par l\'administrateur de votre profil professionnel"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Par <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Créer un rapport de bogue"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Cela permet de recueillir des informations concernant l\'état actuel de votre appareil. Ces informations sont ensuite envoyées sous forme de courriel. Merci de patienter pendant la préparation du rapport de bogue. Cette opération peut prendre quelques instants."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Rapport interactif"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Utilisez cette option dans la plupart des circonstances. Elle vous permet de suivre la progression du rapport et d\'entrer plus de données sur le problème. Certaines sections moins utilisées, et dont le remplissage demande beaucoup de temps, peuvent être omises."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Rapport complet"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Utilisez cette option pour un minimum d\'interférences système lorsque votre appareil ne répond pas ou est trop lent, ou lorsque vous avez besoin de toutes les sections du rapport. Aucune saisie d\'écran ne sera prise, et vous ne pourrez pas entrer d\'autres données."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Saisie d\'écran pour le rapport de bogue dans <xliff:g id="NUMBER_1">%d</xliff:g> seconde.</item>
       <item quantity="other">Saisie d\'écran pour le rapport de bogue dans <xliff:g id="NUMBER_1">%d</xliff:g> secondes.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> heure</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> heures</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problème vidéo"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Impossible de lire cette vidéo en continu sur cet appareil."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Impossible de lire la vidéo."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"NON"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Continuer avec"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Continuer avec %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Terminer l\'action"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Ouvrir avec"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Ouvrir avec %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Ouvrir"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Modifier avec"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Modifier avec %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Modifier"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Partager"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Partager avec %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Partager"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Envoyer avec"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Envoyer avec %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Envoyer"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Sélectionner une application pour l\'écran d\'accueil"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Utiliser %1$s comme écran d\'accueil"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Enregistrer l\'image"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Enregistrer l\'image avec"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Enregistrer l\'image avec %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Enregistrer l\'image"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Utiliser cette application par défaut pour cette action"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Utiliser une application différente"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Pour supprimer les valeurs par défaut, accédez à Paramètres système &gt; Applications &gt; Téléchargements."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Sélectionnez une année"</string>
     <string name="deleted_key" msgid="7659477886625566590">"« <xliff:g id="KEY">%1$s</xliff:g> » a été supprimé"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> (travail)"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Pour annuler l\'épinglage de cet écran, appuyez de manière prolongée sur Retour et Aperçu simultanément."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Pour annuler l\'épinglage de cet écran, maintenez enfoncée la touche Retour."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Pour annuler l\'épinglage, appuyez de manière prolongée sur Aperçu."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"L\'application est épinglée : l\'annulation de l\'épinglage n\'est pas autorisée sur cet appareil."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Écran épinglé"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Mis à jour par votre administrateur"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Supprimé par votre administrateur"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Pour améliorer l\'autonomie de la pile, la fonction d\'économie d\'énergie réduit les performances de votre appareil et limite la vibration, les services de localisation ainsi que la plupart des données en arrière-plan. Les applications Courriel, Messages et d\'autres qui reposent sur la synchronisation ne peuvent pas se mettre à jour, sauf si vous les ouvrez. \n\n L\'économiseur d\'énergie se désactive automatiquement lorsque votre appareil est en charge."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Pour aider à diminuer l\'utilisation des données, la fonction Économiseur de données empêche certaines applications d\'envoyer ou de recevoir des données en arrière-plan. Une application que vous utilisez actuellement peut accéder à des données, mais peut le faire moins souvent. Cela peut signifier, par exemple, que les images ne s\'affichent pas jusqu\'à ce que vous les touchiez."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">Pendant %1$d minute (jusqu\'à <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">Pendant %1$d minutes (jusqu\'à <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-fr/strings.xml b/core/res/res/values-fr/strings.xml
index 27e1b70..c765c81 100644
--- a/core/res/res/values-fr/strings.xml
+++ b/core/res/res/values-fr/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Recherche des services disponibles"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Appels Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Pour effectuer des appels et envoyer des messages via le Wi-Fi, demandez tout d\'abord à votre opérateur de configurer ce service. Réactivez ensuite les appels Wi-Fi dans les paramètres."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Inscrivez-vous auprès de votre opérateur."</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Appels Wi-Fi %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Désactivé"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi de préférence"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobile de préférence"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"La mémoire de la montre est saturée. Veuillez supprimer des fichiers pour libérer de l\'espace."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"L\'espace de stockage du téléviseur est saturé. Pour libérer de l\'espace, veuillez supprimer des fichiers."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"La mémoire du téléphone est pleine. Veuillez supprimer des fichiers pour libérer de l\'espace."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Il est possible que le réseau soit surveillé."</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Autorité de certification installée</item>
+      <item quantity="other">Autorités de certification installées</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Par un tiers inconnu"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Par l\'administrateur de votre profil professionnel"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Par <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Créer un rapport de bug"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Cela permet de recueillir des informations concernant l\'état actuel de votre appareil. Ces informations sont ensuite envoyées sous forme d\'e-mail. Merci de patienter pendant la préparation du rapport de bug. Cette opération peut prendre quelques instants."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Rapport interactif"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Utilisez cette option dans la plupart des circonstances. Elle vous permet de suivre la progression du rapport et de saisir plus d\'informations sur le problème. Certaines sections moins utilisées et dont le remplissage demande beaucoup de temps peuvent être omises."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Rapport complet"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Utilisez cette option pour qu\'il y ait le moins d\'interférences système possible lorsque votre appareil ne répond pas ou qu\'il est trop lent, ou lorsque vous avez besoin de toutes les sections du rapport de bug. Aucune capture d\'écran ne sera prise, et vous ne pourrez saisir aucune autre information."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Capture d\'écran pour le rapport de bug dans <xliff:g id="NUMBER_1">%d</xliff:g> seconde</item>
       <item quantity="other">Capture d\'écran pour le rapport de bug dans <xliff:g id="NUMBER_1">%d</xliff:g> secondes</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> heure</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> heures</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problème vidéo"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Impossible de lire cette vidéo en streaming sur cet appareil."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Impossible de lire la vidéo."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"NON"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Continuer avec"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Terminer l\'action avec %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Terminer l\'action"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Ouvrir avec"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Ouvrir avec %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Ouvrir"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Modifier avec"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Modifier avec %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Modifier"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Partager avec"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Partager avec %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Partager"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Envoyer avec"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Envoyer avec %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Envoyer"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Sélectionner une application de l\'écran d\'accueil"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Utiliser %1$s comme écran d\'accueil"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Capturer une image"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Capturer une image avec"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Capturer une image avec %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Capturer une image"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Utiliser cette application par défaut pour cette action"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Utiliser une autre application"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Pour supprimer les valeurs par défaut, accédez à Paramètres système &gt; Applications &gt; Téléchargements."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Sélectionner une année"</string>
     <string name="deleted_key" msgid="7659477886625566590">"\"<xliff:g id="KEY">%1$s</xliff:g>\" supprimé"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> (travail)"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Pour annuler l\'épinglage, appuyez de manière prolongée et simultanée sur \"Retour\" et \"Aperçu\"."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Pour annuler l\'épinglage, appuyez de manière prolongée sur \"Retour\"."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Pour annuler l\'épinglage, appuyez de manière prolongée sur \"Aperçu\"."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"L\'application est épinglée. L\'annulation de l\'épinglage n\'est pas autorisée sur cet appareil."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Écran épinglé."</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Mis à jour par votre administrateur"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Supprimé par votre administrateur"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Pour améliorer l\'autonomie de la batterie, l\'économiseur de batterie réduit les performances et désactive le vibreur, les services de localisation et la plupart des données en arrière-plan. Les messageries électroniques ou autres applications utilisant la synchronisation pourraient ne pas se mettre à jour, sauf si vous les ouvrez.\n\nL\'économiseur de batterie s\'éteint automatiquement lorsque l\'appareil est en charge."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Pour réduire la consommation des données, l\'économiseur de données empêche certaines applications d\'envoyer ou de recevoir des données en arrière-plan. Ainsi, une application que vous utilisez actuellement peut accéder à des données, mais moins souvent. Par exemple, les images peuvent ne pas s\'afficher tant que vous n\'appuyez pas dessus."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">Pendant %1$d minute (jusqu\'à <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">Pendant %1$d minutes (jusqu\'à <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-gl-rES/strings.xml b/core/res/res/values-gl-rES/strings.xml
index c724f8c..e2a2111 100644
--- a/core/res/res/values-gl-rES/strings.xml
+++ b/core/res/res/values-gl-rES/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Buscando servizo"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Chamadas por wifi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Para facer chamadas e enviar mensaxes a través da wifi, primeiro pídelle ao teu operador que configure este servizo. A continuación, activa de novo as chamadas wifi en Configuración."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Rexístrate co teu operador"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Chamadas wifi de %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Desactivado"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wifi preferida"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Móbil preferido"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"O almacenamento do reloxo está cheo. Elimina algúns ficheiros para liberar espazo."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"O almacenamento da televisión está cheo. Elimina algúns ficheiros para liberar espazo."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"O almacenamento do teléfono está cheo. Elimina algúns ficheiros para liberar espazo."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"É posible que se supervise a rede"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Instaláronse as autoridades de certificación</item>
+      <item quantity="one">Instalouse a autoridade de certificación</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Por un terceiro descoñecido"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Mediante o administrador do teu perfil de traballo"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Por <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Crear informe de erros"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Este informe recompilará información acerca do estado actual do teu dispositivo para enviala en forma de mensaxe de correo electrónico. O informe de erros tardará un pouco en completarse desde o seu inicio ata que estea preparado para enviarse, polo que che recomendamos que teñas paciencia."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Informe interactivo"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Usa esta opción na maioría das circunstancias. Permíteche realizar un seguimento do progreso do informe e introducir máis detalles sobre o problema. Pode que omita algunhas seccións menos usadas para as que se tarda máis en facer o informe."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Informe completo"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Usa esta opción para que a interferencia sexa mínima cando o teu dispositivo non responda ou funcione demasiado lento, ou ben cando precises todas as seccións do informe. Non se fará ningunha captura de pantalla e non poderás introducir máis detalles."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Vaise facer unha captura de pantalla para o informe de erros en <xliff:g id="NUMBER_1">%d</xliff:g> segundos.</item>
       <item quantity="one">Vaise facer unha captura de pantalla para o informe de erros en <xliff:g id="NUMBER_0">%d</xliff:g> segundo.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> horas</item>
       <item quantity="one">Unha hora</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Hai un problema co vídeo"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Este vídeo non se pode transmitir no dispositivo."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Non se pode reproducir este vídeo."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"NON"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Completar a acción usando"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Completar a acción usando %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Completar acción"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Abrir con"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Abrir con %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Abrir"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Editar con"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Editar con %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Editar"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Compartir con"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Compartir con %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Compartir"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Enviar a través de"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Enviar a través de %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Enviar"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Selecciona unha aplicación de Inicio"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Utiliza %1$s como aplicación de Inicio"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Capturar imaxe"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Capturar imaxe con"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Capturar imaxe con %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Capturar imaxe"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Usar de forma predeterminada para esta acción."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Utilizar unha aplicación diferente"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Borra a configuración predeterminada en Configuración do sistema &gt; Aplicacións &gt; Descargadas."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Seleccionar ano"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> eliminado"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> do traballo"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Para soltar a pantalla, mantén premido Atrás e Visión xeral ao mesmo tempo."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Para soltar a pantalla, mantén premido Volver."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Para soltar a pantalla, mantén premido Visión xeral."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"A aplicación está fixada: non se permite soltala neste dispositivo."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Pantalla fixada"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Actualizado polo administrador"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Eliminado polo administrador"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Para axudar a mellorar a duración da batería, a función aforro de batería reduce o rendemento do teu dispositivo e limita a vibración, os servizos de localización e a maioría dos datos en segundo plano. É posible que o correo electrónico, as mensaxes e outras aplicacións que dependen da sincronización non se actualicen a menos que os abras. \n\nA función aforro de batería desactívase automaticamente cando pos a cargar o teu dispositivo."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Para contribuír a reducir o uso de datos, o Economizador de datos impide que algunhas aplicacións envíen ou reciban datos en segundo plano. Cando esteas utilizando unha aplicación, esta poderá acceder aos datos, pero é posible que o faga con menos frecuencia. Por exemplo, é posible que as imaxes non se mostren ata que as toques."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Durante %1$d minutos (ata as <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Durante un minuto (ata as <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-gu-rIN/strings.xml b/core/res/res/values-gu-rIN/strings.xml
index 49acd99..01f8b1c 100644
--- a/core/res/res/values-gu-rIN/strings.xml
+++ b/core/res/res/values-gu-rIN/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"સેવા શોધી રહ્યું છે"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi કૉલિંગ"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi પર કૉલ્સ કરવા અને સંદેશા મોકલવા માટે, પહેલા તમારા કેરીઅરને આ સેવા સેટ કરવા માટે કહો. પછી સેટિંગ્સમાંથી Wi-Fi કૉલિંગ ચાલુ કરો."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"તમારા કેરીઅર સાથે નોંધણી કરો"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi કૉલિંગ"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"બંધ"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi પસંદ કર્યું"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"સેલ્યુલર પસંદ કર્યું"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"ઘડિયાળ સ્ટોરેજ પૂર્ણ ભરેલું છે. સ્થાન ખાલી કરવા માટે કેટલીક ફાઇલો કાઢી નાખો."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV સ્ટોરેજ પૂર્ણ ભરેલું છે. સ્થાન ખાલી કરવા માટે કેટલીક ફાઇલો કાઢી નાખો."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ફોન સ્ટોરેજ પૂર્ણ ભરેલું છે. સ્થાન ખાલી કરવા માટે કેટલીક ફાઇલો કાઢી નાખો."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"નેટવર્ક મૉનિટર કરી શકાય છે"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">પ્રમાણપત્ર સત્તાધિકારી ઇન્સ્ટૉલ કર્યા</item>
+      <item quantity="other">પ્રમાણપત્ર સત્તાધિકારી ઇન્સ્ટૉલ કર્યા</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"અજાણ તૃતીય પક્ષ દ્વારા"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"તમારા કાર્ય પ્રોફાઇલ વ્યવસ્થાપક દ્વારા"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> દ્વારા"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"બગ રિપોર્ટ લો"</string>
     <string name="bugreport_message" msgid="398447048750350456">"આ, એક ઇ-મેઇલ સંદેશ તરીકે મોકલવા માટે, તમારા વર્તમાન ઉપકરણ સ્થિતિ વિશેની માહિતી એકત્રિત કરશે. એક બગ રિપોર્ટ પ્રારંભ કરીને તે મોકલવા માટે તૈયાર ન થઈ જાય ત્યાં સુધી તેમાં થોડો સમય લાગશે; કૃપા કરીને ધીરજ રાખો."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"ક્રિયાપ્રતિક્રિયાત્મક રિપોર્ટ"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"મોટાભાગના સંજોગોમાં આનો ઉપયોગ કરો. તે રિપોર્ટની પ્રગતિને ટ્રૅક કરવા અમે સમસ્યા વિશે વધુ વિગતો દાખલ કરવાની મંજૂરી આપે છે. તે કેટલાંક ઓછા ઉપયોગમાં આવતા વિભાગો કે જે જાણ કરવામાં વધુ સમય લેતા હોય તેને છોડી દઈ શકે છે."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"પૂર્ણ રિપોર્ટ"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"જ્યારે તમારું ઉપકરણ પ્રતિભાવવિહીન અથવા ખૂબ ધીમું હોય અથવા જ્યારે તમને બધા રિપોર્ટ વિભાગોની જરૂર પડે ત્યારે ન્યૂનતમ સિસ્ટમ હસ્તક્ષેપ માટે આ વિકલ્પનો ઉપયોગ કરો. સ્ક્રીનશોટ લેવાની અથવા વધુ વિગતો દાખલ કરવાની તમને મંજૂરી આપતું નથી."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">બગ રિપોર્ટ માટે <xliff:g id="NUMBER_1">%d</xliff:g> સેકન્ડમાં સ્ક્રીનશોટ લઈ રહ્યાં છે.</item>
       <item quantity="other">બગ રિપોર્ટ માટે <xliff:g id="NUMBER_1">%d</xliff:g> સેકન્ડમાં સ્ક્રીનશોટ લઈ રહ્યાં છે.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> કલાક</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> કલાક</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"વિડિઓમાં સમસ્યા"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"આ ઉપકરણ પર સ્ટ્રીમ કરવા માટે આ વિડિઓ માન્ય નથી."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"આ વિડિઓ ચલાવી શકતાં નથી."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"બંધ"</string>
     <string name="whichApplication" msgid="4533185947064773386">"આના ઉપયોગથી ક્રિયા પૂર્ણ કરો"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s ઉપયોગથી ક્રિયા પૂર્ણ કરો"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"ક્રિયા પૂર્ણ કરો"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"આની સાથે ખોલો"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s સાથે ખોલો"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"ખોલો"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"આનાથી સંપાદિત કરો"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s સાથે સંપાદિત કરો"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"સંપાદિત કરો"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"આની સાથે શેર કરો"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s સાથે શેર કરો"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"શેર કરો"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"આનો ઉપયોગ કરીને મોકલો"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s નો ઉપયોગ કરીને મોકલો"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"મોકલો"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"હોમ એપ્લિકેશન પસંદ કરો"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"હોમ તરીકે %1$s નો ઉપયોગ કરો"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"છબી કૅપ્ચર કરો"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"આની સાથે છબી કૅપ્ચર કરો"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s સાથે છબી કૅપ્ચર કરો"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"છબી કૅપ્ચર કરો"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"આ ક્રિયા માટે ડિફોલ્ટ તરીકે ઉપયોગમાં લો."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"અલગ એપ્લિકેશનનો ઉપયોગ કરો"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"સિસ્ટમ સેટિંગ્સ &gt; એપ્લિકેશનો &gt; ડાઉનલોડ કરેલમાં ડિફોલ્ટ સાફ કરો."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"વર્ષ પસંદ કરો"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> કાઢી નાખી"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"કાર્યાલય <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"આ સ્ક્રીનને અનપિન કરવા માટે, બેકને ટચ કરો અને પકડો અને તે જ સમયે વિહંગાવલોકન કરો."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"આ સ્ક્રીનને અનપિન કરવા માટે, પાછળને ટચ કરીને પકડી રાખો."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"આ સ્ક્રીનને અનપિન કરવા માટે, વિહંગાવલોકનને ટચ કરો અને પકડો."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"એપ્લિકેશન પિન કરેલ છે. આ ઉપકરણ પર અનપિન કરવાની મંજૂરી નથી."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"સ્ક્રીન પિન કરી"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"તમારા વ્યવસ્થાપક દ્વારા અપડેટ થયેલ"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"તમારા વ્યવસ્થાપક દ્વારા કાઢી નાખેલ"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"બૅટરી આવરદા વધુ સારી કરવામાં સહાય માટે, બૅટરી સેવર તમારા ઉપકરણના પ્રદર્શનને ઘટાડે છે અને વાઇબ્રેશન, સ્થાન સેવાઓ અને મોટાભાગના પૃષ્ઠભૂમિ ડેટાને સીમિત કરે છે. ઇમેઇલ, મેસેજિંગ અને અન્ય એપ્લિકેશનો જે સમન્વયન પર આધાર રાખે છે તે તમે તેમને ખોલશો નહીં ત્યાં સુધી અપડેટ થઈ શકતી નથી.\n\nજ્યારે તમારું ઉપકરણ ચાર્જ થઈ રહ્યું હોય ત્યારે બૅટરી સેવર આપમેળે બંધ થઈ જાય છે."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"ડેટા વપરાશને ઘટાડવામાં સહાય માટે, ડેટા સેવર કેટલીક ઍપ્લિકેશનોને પૃષ્ઠભૂમિમાં ડેટા મોકલવા અથવા પ્રાપ્ત કરવાથી અટકાવે છે. તમે હાલમાં ઉપયોગ કરી રહ્યાં છો તે ઍપ્લિકેશન ડેટાને ઍક્સેસ કરી શકે છે, પરંતુ તે આ ક્યારેક જ કરી શકે છે. આનો અર્થ એ હોઈ શકે છે, ઉદાહરણ તરીકે, જે છબીઓ ત્યાં સુધી પ્રદર્શિત થશે નહીં જ્યાં સુધી તમે તેને ટૅપ નહીં કરો."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d મિનિટ માટે (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> સુધી)</item>
       <item quantity="other">%1$d મિનિટ માટે (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> સુધી)</item>
diff --git a/core/res/res/values-hi/strings.xml b/core/res/res/values-hi/strings.xml
index b621005..e13f3cd 100644
--- a/core/res/res/values-hi/strings.xml
+++ b/core/res/res/values-hi/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"सेवा खोज रहा है"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"वाई-फ़ाई कॉलिंग"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"वाई-फ़ाई से कॉल करने और संदेश भेजने के लिए, सबसे पहले अपने वाहक से इस सेवा को सेट करने के लिए कहें. उसके बाद सेटिंग से पुन: वाई-फ़ाई कॉलिंग चालू करें."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"अपने वाहक के साथ पंजीकृत करें"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s वाई-फ़ाई कॉलिंग"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"बंद"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"वाई-फ़ाई को प्राथमिकता"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"सेल्‍युलर को प्राथमिकता"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"घड़ी मेमोरी भर गया है. स्‍थान खाली करने के लिए कुछ फ़ाइलें हटाएं."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"टीवी की मेमोरी पूरी हो गई है. स्‍थान खाली करने के लिए कुछ फ़ाइलें हटाएं."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"फ़ोन मेमोरी भर गया है. स्‍थान खाली करने के लिए कुछ फ़ाइलें हटाएं."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"नेटवर्क को मॉनिटर किया जा सकता है"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">प्रमाणपत्र प्राधिकरण इंस्टॉल किए हुए हैं</item>
+      <item quantity="other">प्रमाणपत्र प्राधिकरण इंस्टॉल किए हुए हैं</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"किसी अज्ञात तृतीय पक्ष के द्वारा"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"आपके कार्य प्रोफ़ाइल नियंत्रक द्वारा"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> के द्वारा"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"बग रिपोर्ट प्राप्त करें"</string>
     <string name="bugreport_message" msgid="398447048750350456">"ईमेल संदेश के रूप में भेजने के लिए, इसके द्वारा आपके डिवाइस की वर्तमान स्थिति के बारे में जानकारी एकत्र की जाएगी. बग रिपोर्ट प्रारंभ करने से लेकर भेजने के लिए तैयार होने तक कुछ समय लगेगा; कृपया धैर्य रखें."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"सहभागी रिपोर्ट"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"अधिकांश परिस्‍थितियों में इसका उपयोग करें. यह आपको रिपोर्ट की प्रगति ट्रैक करने देता है और समस्‍या के बारे में अधिक विवरण डालने देता है. यह आपको ऐसे कम उपयोग किए गए अनुभाग मिटाने दे सकता है जिनकी रिपोर्ट करने में अधिक समय लगता है."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"पूर्ण रिपोर्ट"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"जब आपका डिवाइस प्रतिसाद नहीं दे रहा हो या बहुत ही धीमा हो, या जब आपको सभी रिपोर्ट अनुभागों की आवश्‍यकता हो, तो न्‍यूनतम सिस्‍टम हस्‍तक्षेप के लिए इस विकल्‍प का उपयोग करें. यह स्‍क्रीनशॉट नहीं लेता या आपको अधिक विवरण नहीं डालने देता."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">बग रिपोर्ट के लिए <xliff:g id="NUMBER_1">%d</xliff:g> सेकंड में स्‍क्रीनशॉट लिया जा रहा है.</item>
       <item quantity="other">बग रिपोर्ट के लिए <xliff:g id="NUMBER_1">%d</xliff:g> सेकंड में स्‍क्रीनशॉट लिया जा रहा है.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> घंटे</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> घंटे</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"वीडियो समस्‍याएं"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"यह वीडियो इस डिवाइस पर स्ट्रीमिंग के लिए मान्‍य नहीं है."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"यह वीडियो नहीं चलाया जा सकता."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"बंद"</string>
     <string name="whichApplication" msgid="4533185947064773386">"इसका उपयोग करके क्रिया पूर्ण करें"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s का उपयोग करके कार्रवाई पूर्ण करें"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"कार्रवाई पूर्ण करें"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"इसमें खोलें"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s में खोलें"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"खोलें"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"इसके द्वारा संपादित करें"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s से संपादित करें"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"संपादित करें"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"इससे साझा करें"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s से साझा करें"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"साझा करें"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"इसका उपयोग करके भेजें"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s का उपयोग करके भेजें"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"भेजें"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"होम ऐप्स चुनें"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"होम के रूप में %1$s का उपयोग करें"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"चित्र कैप्चर करें"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"चित्र को इसके साथ कैप्चर करें"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s के साथ चित्र कैप्चर करें"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"चित्र कैप्चर करें"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"इस क्रिया के लिए डिफ़ॉल्‍ट रूप से उपयोग करें."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"किसी भिन्न ऐप्स का उपयोग करें"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"सिस्‍टम सेटिंग &gt; Apps &gt; डाउनलोड किए गए में डिफ़ॉल्‍ट साफ करें."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"वर्ष चुनें"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> को हटा दिया गया"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"कार्यस्थल का <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"इस स्क्रीन को अनपिन करने के लिए, एक ही समय में वापस जाएं और अवलोकन को स्पर्श करके रखें."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"इस स्क्रीन को अनपिन करने के लिए, वापस जाएं को स्पर्श करके रखें."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"इस स्क्रीन को अनपिन करने के लिए, अवलोकन को स्पर्श करके रखें."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"ऐप पिन किया गया है: इस डिवाइस पर अनपिन करने की अनुमति नहीं है."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"स्‍क्रीन पिन की गई"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"आपके नियंत्रक द्वारा अपडेट किया गया"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"आपके नियंत्रक द्वारा हटाया गया"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"बैटरी जीवन काल को बेहतर बनाने में सहायता के लिए, बैटरी सेवर आपके डिवाइस के प्रदर्शन को कम कर देता है और कंपन, स्‍थान सेवाओं और अधिकांश पृष्‍ठभूमि डेटा को सीमित कर देता है. हो सकता है कि ईमेल, संदेश सेवा तथा समन्‍वयन पर आधारित अन्‍य ऐप्‍स तब तक ना खुलें जब तक कि आप उन्‍हें नहीं खोलते.\n\nजब आपका डिवाइस चार्ज हो रहा होता है तो बैटरी सेवर अपने आप बंद हो जाता है."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"डेटा उपयोग कम करने में सहायता के लिए, डेटा बचतकर्ता कुछ ऐप्लिकेशन को पृष्ठभूमि में डेटा भेजने या प्राप्त करने से रोकता है. आपके द्वारा वर्तमान में उपयोग किया जा रहा एक ऐप्लिकेशन डेटा एक्सेस कर सकता है, लेकिन वह ऐसा कभी-कभी ही करेगा. उदाहरण के लिए, इसका अर्थ यह हो सकता है कि चित्र तब तक दिखाई नहीं देंगे जब तक कि आप उन्हें टैप नहीं करते."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d मिनट के लिए (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> तक)</item>
       <item quantity="other">%1$d मिनट के लिए (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> तक)</item>
diff --git a/core/res/res/values-hr/strings.xml b/core/res/res/values-hr/strings.xml
index 6bc0d6e..3ab69e0 100644
--- a/core/res/res/values-hr/strings.xml
+++ b/core/res/res/values-hr/strings.xml
@@ -125,11 +125,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Pretraživanje usluge"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi pozivi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Da biste telefonirali i slali pozive putem Wi-Fi-ja, morate tražiti od mobilnog operatera da vam postavi tu uslugu. Zatim ponovo uključite Wi-Fi pozive u Postavkama."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registrirajte se kod mobilnog operatera"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi pozivanje"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Isključeno"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Prednost ima Wi-Fi mreža"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Prednost ima mobilna mreža"</string>
@@ -165,7 +169,11 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Memorija sata je puna. Izbrišite neke datoteke da biste oslobodili prostor."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Prostor za pohranu na televizoru je pun. Izbrišite neke datoteke da biste oslobodili prostor."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Prostor za pohranu na telefonu je pun. Izbrišite nekoliko datoteka kako biste oslobodili prostor."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Mreža se možda nadzire"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Instalirani su izdavači certifikata</item>
+      <item quantity="few">Instalirani su izdavači certifikata</item>
+      <item quantity="other">Instalirani su izdavači certifikata</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Od strane nepoznate treće strane"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Administrator vašeg radnog profila"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Od strane domene <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -212,9 +220,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Izvješće o programskoj pogrešci"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Time će se prikupiti podaci o trenutačnom stanju vašeg uređaja koje ćete nam poslati u e-poruci. Za pripremu izvješća o programskoj pogrešci potrebno je nešto vremena pa vas molimo za strpljenje."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktivno izvješće"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"To možete upotrebljavati u većini slučajeva. Moći ćete pratiti izradu izvješća i unijeti više pojedinosti o problemu. Mogu se izostaviti neki odjeljci koji se upotrebljavaju rjeđe i produljuju izradu izvješća."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Potpuno izvješće"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Ta vam opcija omogućuje minimalno ometanje sustava kad uređaj ne reagira ili je prespor ili kada su vam potrebni svi odjeljci izvješća. Ne izrađuje se snimka zaslona i ne možete unijeti više pojedinosti."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Izrada snimke zaslona za izvješće o programskoj pogrešci za <xliff:g id="NUMBER_1">%d</xliff:g> sekundu.</item>
       <item quantity="few">Izrada snimke zaslona za izvješće o programskoj pogrešci za <xliff:g id="NUMBER_1">%d</xliff:g> sekunde.</item>
@@ -857,6 +867,16 @@
       <item quantity="few"><xliff:g id="COUNT">%d</xliff:g> sata</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> sati</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problem s videozapisom"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Ovaj videozapis nije valjan za streaming na ovaj uređaj."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Ovaj videozapis nije moguće reproducirati."</string>
@@ -899,16 +919,25 @@
     <string name="capital_off" msgid="6815870386972805832">"Isklj."</string>
     <string name="whichApplication" msgid="4533185947064773386">"Radnju dovrši pomoću stavke"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Dovršavanje radnje pomoću aplikacije %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Dovrši radnju"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Otvaranje pomoću aplikacije"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Otvaranje pomoću aplikacije %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Otvori"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Uređivanje pomoću aplikacije"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Uređivanje pomoću aplikacije %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Uredi"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Dijeljenje pomoću aplikacije"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Dijeljenje pomoću aplikacije %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Dijeli"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Pošalji aplikacijom"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Slanje aplikacijom %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Pošalji"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Odaberite početnu aplikaciju"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Upotrijebite %1$s kao početnu aplikaciju"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Snimi sliku"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Snimi sliku aplikacijom"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Snimi sliku aplikacijom %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Snimi sliku"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Koristi se kao zadana postavka za ovu lokaciju."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Upotrijebite neku drugu aplikaciju"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Izbrisati zadano u Postavkama sustava &gt; Aplikacije &gt; Preuzimanja."</string>
@@ -1470,7 +1499,7 @@
     <string name="select_year" msgid="7952052866994196170">"Odaberite godinu"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Izbrisan je broj <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> za posao"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Da biste otkvačili ovaj zaslon, istovremeno dodirnite i zadržite Natrag i Pregled."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Da biste otkvačili ovaj zaslon, dodirnite i zadržite Natrag."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Da biste otkvačili ovaj zaslon, dodirnite i zadržite Pregled."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Aplikacija je prikvačena: otkvačivanje nije dopušteno na tom uređaju."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Zaslon je pričvršćen"</string>
@@ -1482,6 +1511,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Ažurira vaš administrator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Izbrisao administrator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Da bi se produljilo trajanje baterije, ušteda baterije smanjuje rad uređaja i ograničava vibraciju, usluge lokacije i većinu pozadinskih podataka. Aplikacije za e-poštu, slanje poruka i druge aplikacije koje se oslanjaju na sinkronizaciju možda se neće ažurirati ako ih ne otvorite.\n\nUšteda baterije isključuje se automatski dok se uređaj puni."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Da bi se smanjila potrošnja podataka, Ušteda podataka onemogućuje nekim aplikacijama slanje ili primanje podataka u pozadini. Aplikacija koju trenutačno upotrebljavate može pristupiti podacima, no možda će to činiti rjeđe. To može značiti da se, na primjer, slike neće prikazivati dok ih ne dodirnete."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d minutu (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="few">%1$d minute (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-hu/strings.xml b/core/res/res/values-hu/strings.xml
index dd39cca..833f1b0 100644
--- a/core/res/res/values-hu/strings.xml
+++ b/core/res/res/values-hu/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Szolgáltatás keresése"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi-hívás"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Ha Wi-Fi-n szeretne telefonálni és üzenetet küldeni, kérje meg szolgáltatóját, hogy állítsa be ezt a szolgáltatást. Ezután a Beállítások menüben kapcsolhatja be újra a Wi-Fi-hívást."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Regisztráljon a szolgáltatójánál"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi-hívás"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Ki"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi előnyben részesítve"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobiladat-kapcsolat előnyben részesítve"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Az óra tárhelye megtelt. Szabadítson fel helyet néhány fájl törlésével."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"A tévé tárhelye megtelt. Hely felszabadításához töröljön néhány fájlt."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"A telefon tárhelye megtelt. Hely felszabadításához töröljön néhány fájlt."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Lehet, hogy a hálózat felügyelt"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Tanúsítványkibocsátók telepítve</item>
+      <item quantity="one">Tanúsítványkibocsátó telepítve</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Ismeretlen harmadik fél által"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"A munkaprofil adminisztrátora által"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Megfigyelő: <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Hibajelentés készítése"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Ezzel információt fog gyűjteni az eszköz jelenlegi állapotáról, amelyet a rendszer e-mailben fog elküldeni. Kérjük, legyen türelemmel, amíg a hibajelentés elkészül, és küldhető állapotba kerül."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktív jelentés"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Ezt használja a legtöbb esetben. Segítségével nyomon követheti a jelentés folyamatát, és további információkat kaphat a problémáról. A folyamat során kimaradhatnak az olyan kevésbé használt részek, amelyek jelentése túl sok időt igényel."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Teljes jelentés"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Ezt a beállítást minimális rendszerzavar esetén használja, amikor eszköze nem válaszol, túl lassú, illetve ha minden jelentésrészre szüksége van. A rendszer nem készít képernyőképet, illetve nem engedélyezi a hozzáférést a további részletekhez."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Képernyőkép készítése a hibajelentéshez <xliff:g id="NUMBER_1">%d</xliff:g> másodpercen belül.</item>
       <item quantity="one">Képernyőkép készítése a hibajelentéshez <xliff:g id="NUMBER_0">%d</xliff:g> másodpercen belül.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> óra</item>
       <item quantity="one">1 óra</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Videoprobléma"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Ezt a videót nem lehet megjeleníteni ezen az eszközön."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Nem lehet lejátszani ezt a videót."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"Ki"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Művelet végrehajtása a következővel:"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Művelet elvégzése a(z) %1$s segítségével"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Művelet végrehajtása"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Megnyitás a következővel:"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Megnyitás a következővel: %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Megnyitás"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Szerkesztés a következővel:"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Szerkesztés a következővel: %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Szerkesztés"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Megosztás a következővel:"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Megosztás a következővel: %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Megosztás"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Küldés a következővel:"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Küldés a következővel: %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Küldés"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Válasszon kezdőalkalmazást"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"A(z) %1$s használata kezdőalkalmazásként"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Kép készítése"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Kép készítése a következővel:"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Kép készítése a következővel: %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Kép készítése"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Ez legyen az alapértelmezett program ehhez a művelethez."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Használjon másik alkalmazást"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Alapértelmezés törlése itt: Rendszerbeállítások &gt; Alkalmazások &gt; Letöltve."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Válassza ki az évet"</string>
     <string name="deleted_key" msgid="7659477886625566590">"A(z) <xliff:g id="KEY">%1$s</xliff:g> érték törölve"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Munkahelyi <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"A képernyő rögzítésének feloldásához tartsa lenyomva a Vissza és az Áttekintés lehetőséget egyszerre."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"A képernyő rögzítésének feloldásához tartsa lenyomva a Vissza lehetőséget."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"A képernyő rögzítésének feloldásához tartsa lenyomva az Áttekintés lehetőséget."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Az alkalmazás rögzítve van: a rögzítés feloldása nem engedélyezett ezen az eszközön."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Képernyő rögzítve"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Frissítette a rendszergazda"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"A rendszergazda törölte"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Az akkumulátoridő növelése érdekében az energiatakarékos mód csökkenti az eszköz teljesítményét, és korlátozza a rezgést, a helyszolgáltatásokat, valamint a legtöbb háttéradatot is. Előfordulhat, hogy azok az e-mail-, üzenetküldő és egyéb alkalmazások, amelyek szinkronizálására számít, csak akkor frissítenek, ha megnyitja azokat.\n\nAz energiatakarékos mód automatikusan kikapcsol, ha eszköze töltőn van."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Az adatforgalom csökkentése érdekében az Adatforgalom-csökkentő megakadályozza, hogy egyes alkalmazások adatokat küldjenek vagy fogadjanak a háttérben. Az Ön által aktuálisan használt alkalmazások hozzáférhetnek az adatokhoz, de ezt sokkal ritkábban tesszük meg. Ez például azt jelentheti, hogy a képek csak azt követően jelennek meg, hogy rájuk koppintott."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d percen át (eddig: <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Egy percen át (eddig: <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
@@ -1505,7 +1538,7 @@
       <item quantity="one">1 órán keresztül</item>
     </plurals>
     <string name="zen_mode_until" msgid="7336308492289875088">"Eddig: <xliff:g id="FORMATTEDTIME">%1$s</xliff:g>"</string>
-    <string name="zen_mode_alarm" msgid="9128205721301330797">"Eddig: <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> (ez a következő riasztás)"</string>
+    <string name="zen_mode_alarm" msgid="9128205721301330797">"Eddig: <xliff:g id="FORMATTEDTIME">%1$s</xliff:g> (ez a következő ébresztés)"</string>
     <string name="zen_mode_forever" msgid="7420011936770086993">"Amíg ki nem kapcsolja ezt"</string>
     <string name="zen_mode_forever_dnd" msgid="3792132696572189081">"Amíg ki nem kapcsolja a „Ne zavarjanak” lehetőséget"</string>
     <string name="zen_mode_rule_name_combination" msgid="191109939968076477">"<xliff:g id="FIRST">%1$s</xliff:g> / <xliff:g id="REST">%2$s</xliff:g>"</string>
diff --git a/core/res/res/values-hy-rAM/strings.xml b/core/res/res/values-hy-rAM/strings.xml
index e41bf64..5b07298 100644
--- a/core/res/res/values-hy-rAM/strings.xml
+++ b/core/res/res/values-hy-rAM/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Ծառայության որոնում..."</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Զանգեր Wi-Fi-ի միջոցով"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi-ի միջոցով զանգեր կատարելու և հաղորդագրություններ ուղարկելու համար նախ դիմեք ձեր օպերատորին՝ ծառայությունը կարգավորելու համար: Ապա նորից միացրեք Wi-Fi զանգերը Կարգավորումներում:"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Գրանցվեք օպերատորի մոտ"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi զանգեր"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Անջատված է"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi, նախընտրելի"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Բջջային, նախընտրելի"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Ժամացույցի ֆայլերի պահեստը լիքն է: Ջնջեք որոշ ֆայլեր՝ տարածք ազատելու համար:"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Հեռուստացույցի պահեստը լիքն է: Ջնջեք որոշ ֆայլեր՝ տեղ ազատելու համար:"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Հեռախոսի պահոցը լիքն է: Ջնջեք մի քանի ֆայլեր` տարածություն ազատելու համար:"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Ցանցը կարող է վերահսկվել"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Տեղադրված են սերտիֆիկացման կենտրոնի վկայականներ</item>
+      <item quantity="other">Տեղադրված են սերտիֆիկացման կենտրոնի վկայականներ</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Անհայտ երրորդ կողմի կողմից"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Ձեր աշխատանքային պրոֆիլի ադմինիստրատորի կողմից"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g>-ի կողմից"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Գրել սխալի զեկույց"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Սա տեղեկություններ կհավաքագրի ձեր սարքի առկա կարգավիճակի մասին և կուղարկի այն էլեկտրոնային նամակով: Որոշակի ժամանակ կպահանջվի վրիպակի մասին զեկուցելու պահից սկսած մինչ ուղարկելը: Խնդրում ենք փոքր-ինչ համբերատար լինել:"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Ինտերակտիվ զեկույց"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Հիմնականում օգտագործեք այս տարբերակը: Այն ձեզ թույլ է տալիս հետագծել զեկույցի ստեղծման գործընթացը և խնդրի մասին լրացուցիչ տեղեկություններ մուտքագրել: Կարող է բաց թողնել որոշ քիչ օգտագործվող բաժինները, որոնց ստեղծումը երկար է տևում:"</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Ամբողջական զեկույց"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Օգտագործեք այս տարբերակը համակարգի միջամտությունը նվազեցնելու համար՝ երբ սարքը չի արձագանքում կամ շատ դանդաղ է աշխատում, կամ երբ ձեզ հարկավոր են զեկույցի բոլոր բաժինները: Էկրանի պատկեր չի լուսանկարում և ձեզ թույլ չի տալիս լրացուցիչ տվյալներ մուտքագրել:"</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Վրիպակի զեկույցի համար էկրանի պատկերի լուսանկարումը կատարվելու է <xliff:g id="NUMBER_1">%d</xliff:g> վայրկյանից:</item>
       <item quantity="other">Վրիպակի զեկույցի համար էկրանի պատկերի լուսանկարումը կատարվելու է <xliff:g id="NUMBER_1">%d</xliff:g> վայրկյանից:</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ժամ</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ժամ</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Տեսանյութի խնդիր"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Այս տեսանյութը հեռարձակման ենթակա չէ այս սարքով:"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Այս տեսանյութը հնարավոր չէ նվագարկել:"</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"O"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Ավարտել գործողությունը` օգտագործելով"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Եզրափակել գործողությունը՝ օգտագործելով %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Ավարտել գործողությունը"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Բացել հետևյալ ծրագրով՝"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Բացել հետևյալով՝ %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Բացել"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Խմբագրել հետևյալ ծրագրով՝"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Խմբագրել հետևյալով՝ %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Փոփոխել"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Տարածել"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Տարածել ըստ %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Տրամադրել"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Ուղարկել այս հավելվածով"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Ուղարկել %1$s հավելվածով"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Ուղարկել"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Ընտրեք Հիմնական հավելվածը"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Օգտագործել %1$s-ը՝ որպես Հիմնական"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Լուսանկարել"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Լուսանկարել այս հավելվածի օգնությամբ"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Լուսանկարել %1$s հավելվածի օգնությամբ"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Լուսանկարել"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Օգտագործել լռելյայն այս գործողության համար:"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Օգտագործել այլ հավելված"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Մաքրել լռելյայնը Համակարգի կարգավորումներ &gt; Ծրագրեր &gt;Ներբեռնված էջից:"</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Ընտրեք տարին"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> թիվը ջնջված է"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Աշխատանքային <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Այս էկրան ապամրացնելու համար միաժամանակ հպեք և պահեք Հետ և Համատեսք կոճակները:"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Այս էկրանն ապամրացնելու համար հպեք և պահեք Հետ կոճակը:"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Այս էկրանն ապամրացնելու համար հպեք և պահեք Համատեսքի կոճակը:"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Հավելվածն ամրացված է: Ապամրացումն այս սարքում չի թույլատրվում:"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Էկրանն ամրացված է"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Ադմինիստրատորը թարմացրել է այն"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Ադմինիստրատորը ջնջել է այն"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Մարտկոցի աշխատանքի ժամկետը երկարացնելու նպատակով, մարտկոցի էներգիայի խնայման գործառույթը սահմանափակում է սարքի աշխատանքը, թրթռոցը, տեղադրության ծառայությունները և հետնաշերտում աշխատող շատ գործընթացներ: Էլփոստը, հաղորդագրությունների փոխանակումը և տվյալների համաժամեցումից կախված այլ հավելվածները կարող են չթարմացվել, եթե դուք դրանք չգործարկեք:\n\nԵրբ ձեր սարքը լիցքավորվում է, մարտկոցի էներգիայի խնայման գործառույթն ինքնաշխատորեն անջատվում է:"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Տվյալների օգտագործումը նվազեցնելու նպատակով «Թրաֆիկի խնայումը» որոշ հավելվածներին թույլ չի տալիս ուղարկել կամ ստանալ տվյալներ ֆոնային ռեժիմում: Արդեն իսկ գործարկված հավելվածը կարող է օգտագործել տվյալները, սակայն ոչ այնքան հաճախ: Օրինակ՝ պատկերները կցուցադրվեն միայն դրանք հպելուց հետո:"</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d րոպե (մինչև <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">%1$d րոպե (մինչև <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-in/strings.xml b/core/res/res/values-in/strings.xml
index 8940875..c2845c7 100644
--- a/core/res/res/values-in/strings.xml
+++ b/core/res/res/values-in/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Mencari layanan"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Panggilan Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Untuk melakukan panggilan telepon dan mengirim pesan melalui Wi-Fi, terlebih dahulu minta operator untuk menyiapkan layanan ini. Lalu, aktifkan lagi panggilan telepon Wi-Fi dari Setelan."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Harap daftarkan ke operator"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Panggilan Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Nonaktif"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi dipilih"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Seluler dipilih"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Penyimpanan arloji penuh. Hapus beberapa file untuk mengosongkan ruang."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Penyimpanan TV sudah penuh. Hapus beberapa file untuk mengosongkan ruang."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Penyimpanan di ponsel penuh. Hapus sebagian file untuk mengosongkan ruang."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Jaringan mungkin dipantau"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Otoritas sertifikat berhasil dipasang</item>
+      <item quantity="one">Otoritas sertifikat berhasil dipasang</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Oleh pihak ketiga yang tidak dikenal"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Oleh administrator profil kantor"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Oleh <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Ambil laporan bug"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Ini akan mengumpulkan informasi status perangkat Anda saat ini, untuk dikirimkan sebagai pesan email. Harap bersabar, mungkin perlu waktu untuk memulai laporan bug hingga siap dikirim."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Laporan interaktif"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Gunakan ini di berbagai keadaan. Ini memungkinkan Anda melacak kemajuan laporan dan memasukkan detail masalah selengkapnya. Mungkin menghilangkan beberapa bagian yang jarang digunakan dan yang perlu waktu lama untuk dilaporkan."</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"Gunakan ini di berbagai keadaan. Ini memungkinkan Anda melacak kemajuan laporan, memasukkan detail masalah selengkapnya, dan mengambil tangkapan layar. Mungkin menghilangkan beberapa bagian yang jarang digunakan dan yang perlu waktu lama untuk dilaporkan."</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Laporan lengkap"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Gunakan opsi ini untuk meminimalkan gangguan sistem jika perangkat tidak responsif atau terlalu lambat, atau jika Anda perlu semua bagian laporan. Tidak akan mengambil tangkapan layar atau mengizinkan Anda memasukkan lebih banyak detail."</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"Gunakan opsi ini untuk meminimalkan gangguan sistem jika perangkat tidak responsif atau terlalu lambat, atau jika Anda perlu semua bagian laporan. Tidak mengizinkan Anda memasukkan lebih banyak detail atau mengambil tangkapan layar tambahan."</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Mengambil tangkapan layar untuk laporan bug dalam <xliff:g id="NUMBER_1">%d</xliff:g> detik.</item>
       <item quantity="one">Mengambil tangkapan layar untuk laporan bug dalam <xliff:g id="NUMBER_0">%d</xliff:g> detik.</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> jam</item>
       <item quantity="one">1 jam</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"sekarang"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Masalah video"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Video ini tidak valid untuk pengaliran ke perangkat ini."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Tidak dapat memutar video ini."</string>
@@ -893,16 +909,25 @@
     <string name="capital_off" msgid="6815870386972805832">"MATI"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Tindakan lengkap menggunakan"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Selesaikan tindakan menggunakan %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Selesaikan tindakan"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Buka dengan"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Buka dengan %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Buka"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Edit dengan"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Edit dengan %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Edit"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Bagikan dengan"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Bagikan dengan %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Bagikan"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Kirim menggunakan"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Kirim menggunakan %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Kirim"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Pilih aplikasi Beranda"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Gunakan %1$s sebagai aplikasi Beranda"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Jepret gambar"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Jepret gambar dengan"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Jepret gambar dengan %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Jepret gambar"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Gunakan secara default untuk tindakan ini."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Gunakan aplikasi yang berbeda"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Menghapus default di Setelan sistem &gt; Apl &gt; Terunduh."</string>
@@ -1460,7 +1485,7 @@
     <string name="select_year" msgid="7952052866994196170">"Pilih tahun"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> dihapus"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Kantor <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Untuk melepas pin layar ini, sentuh lama tombol Kembali dan Ringkasan secara bersamaan."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Untuk melepas pin layar ini, sentuh dan tahan tombol Kembali."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Untuk melepas pin layar ini, sentuh lama tombol Ringkasan."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Pin dipasang ke aplikasi. Melepas pin tidak diizinkan di perangkat ini."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Layar disematkan"</string>
@@ -1472,6 +1497,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Diperbarui oleh administrator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Dihapus oleh administrator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Untuk membantu meningkatkan masa pakai baterai, penghemat baterai mengurangi kinerja perangkat dan membatasi getaran, layanan lokasi, dan kebanyakan data latar belakang. Email, perpesanan, dan aplikasi lain yang mengandalkan sinkronisasi mungkin tidak diperbarui kecuali jika dibuka.\n\nPenghemat baterai otomatis nonaktif jika perangkat diisi dayanya."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Untuk membantu mengurangi penggunaan data, Penghemat Data mencegah beberapa aplikasi mengirim atau menerima data di latar belakang. Aplikasi yang sedang digunakan dapat mengakses data, tetapi frekuensinya agak lebih jarang. Misalnya saja, gambar hanya akan ditampilkan setelah disentuh."</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"Aktifkan Penghemat Data?"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"Aktifkan"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Selama %1$d menit (hingga <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Selama satu menit (hingga <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-is-rIS/strings.xml b/core/res/res/values-is-rIS/strings.xml
index 546af60..a35a9a8 100644
--- a/core/res/res/values-is-rIS/strings.xml
+++ b/core/res/res/values-is-rIS/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Leitar að þjónustu"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi símtöl"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Til að hringja og senda skilaboð yfir Wi-Fi þarftu fyrst að biðja símafyrirtækið þitt um að setja þá þjónustu upp. Kveiktu síðan á Wi-Fi símtölum í stillingunum."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Skráðu þig hjá símafyrirtækinu"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi símtöl"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Slökkt"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi í forgangi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Farsímakerfi í forgangi"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Geymsla úrsins er full. Eyddu einhverjum skrám til að búa til pláss."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Geymslurými sjónvarpsins er fullt. Eyddu skrám til að losa um pláss."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Geymslurými símans er fullt. Eyddu einhverjum skrám til að losa um pláss."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Hugsanlega er fylgst með netinu"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">CA-vottorð hafa verið sett upp</item>
+      <item quantity="other">CA-vottorð hafa verið sett upp</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Af óþekktum þriðja aðila"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Af hálfu stjórnanda vinnusniðsins"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Af <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Útbúa villutilkynningu"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Þetta safnar upplýsingum um núverandi stöðu tækisins til að senda með tölvupósti. Það tekur smástund frá því villutilkynningin er ræst og þar til hún er tilbúin til sendingar – sýndu biðlund."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Gagnvirk skýrsla"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Þú getur notað þetta í flestum tilvikum. Með þessu móti geturðu fylgst með framgangi skýrslunnar og slegið inn viðbótarupplýsingar um vandamálið. Hugsanlegt er að lítið notuðum hlutum verði sleppt til að spara tíma."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Heildarskýrsla"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Notaðu þennan valmöguleika til að lágmarka truflun frá kerfinu þegar tækið þitt svarar ekki eða er of hægt, eða þegar þú þarft alla hluta skýrslunnar. Tekur ekki skjámynd eða leyfir þér að slá inn viðbótarupplýsingar."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Tekur skjámynd fyrir villutilkynningu eftir <xliff:g id="NUMBER_1">%d</xliff:g> sekúndu.</item>
       <item quantity="other">Tekur skjámynd fyrir villutilkynningu eftir <xliff:g id="NUMBER_1">%d</xliff:g> sekúndur.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> klukkustund</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> klukkustundir</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Vandamál með myndskeið"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Þetta myndskeið er ekki gjaldgengt fyrir straumspilun í þessu tæki."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Ekki er hægt að spila þetta myndskeið."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"SLÖKKT"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Ljúka aðgerð með"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Ljúka aðgerð með %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Ljúka aðgerð"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Opna með"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Opna með %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Opna"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Breyta með"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Breyta með %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Breyta"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Deila með"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Deila með %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Deila"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Senda með því að nota"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Senda með því að nota %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Senda"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Veldu heimaforrit"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Nota %1$s sem heimaforrit"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Taka mynd"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Taka mynd með"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Taka mynd með %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Taka mynd"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Nota sjálfgefið fyrir þessa aðgerð."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Nota annað forrit"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Hreinsa sjálfgefna stillingu í Kerfisstillingar &gt; Forrit &gt; Sótt."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Veldu ár"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> eytt"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> í vinnu"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Til að taka lásinn af þessari skjámynd skaltu halda inni Til baka og Yfirliti samtímis."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Til að taka lásinn af þessari skjámynd skaltu halda inni bakkhnappinum."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Til að taka lásinn af þessari skjámynd skaltu halda inni Yfirliti."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Forritið er fest: Ekki er hægt að losa forrit í þessu tæki."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Skjár festur"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Uppfært af kerfisstjóranum"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Eytt af kerfisstjóra"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Til að auka endingu rafhlöðunnar mun orkusparnaður draga úr afköstum tækisins og takmarka titring, staðsetningarþjónustu og megnið af bakgrunnsgögnum. Ekki er víst að tölvupóstur, skilaboð og önnur forrit sem reiða sig á samstillingu uppfærist nema þú opnir þau.\n\nSjálfkrafa er slökkt á orkusparnaði þegar tækið er í hleðslu."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Gagnasparnaður getur hjálpað til við að draga úr gagnanotkun með því að hindra forrit í að senda eða sækja gögn í bakgrunni. Forrit sem er í notkun getur náð í gögn, en gerir það kannski sjaldnar. Niðurstaðan gæti verið, svo dæmi sé tekið, að myndir séu ekki birtar fyrr en þú ýtir á þær."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">Í %1$d mínútu (til <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">Í %1$d mínútur (til <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-it/strings.xml b/core/res/res/values-it/strings.xml
index fc13359..a3f46c6 100644
--- a/core/res/res/values-it/strings.xml
+++ b/core/res/res/values-it/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Ricerca servizio"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Chiamate Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Per effettuare chiamate e inviare messaggi tramite Wi-Fi, è necessario prima chiedere all\'operatore telefonico di attivare il servizio. Successivamente, riattiva le chiamate Wi-Fi dalle Impostazioni."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registrati con il tuo operatore"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Chiamata Wi-Fi %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Non attiva"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Rete preferita: Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Rete preferita: cellulare"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"La memoria dell\'orologio è piena. Elimina alcuni file per liberare spazio."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"La memoria della TV è piena. Elimina alcuni file per liberare spazio."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Spazio di archiviazione del telefono esaurito. Elimina alcuni file per liberare spazio."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"La rete potrebbe essere monitorata"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Autorità di certificazione installate</item>
+      <item quantity="one">Autorità di certificazione installata</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Da una terza parte sconosciuta"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Dall\'amministratore del profilo di lavoro"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Da <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Apri segnalazione bug"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Verranno raccolte informazioni sullo stato corrente del dispositivo che saranno inviate sotto forma di messaggio email. Passerà un po\' di tempo prima che la segnalazione di bug aperta sia pronta per essere inviata; ti preghiamo di avere pazienza."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Rapporto interattivo"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Utilizza questa opzione nella maggior parte dei casi. Ti consente di monitorare l\'avanzamento del rapporto e di inserire maggiori dettagli relativi al problema. Potrebbero essere omesse alcune sezioni meno utilizzate il cui inserimento nel rapporto richiede molto tempo."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Rapporto completo"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Utilizza questa opzione per ridurre al minimo l\'interferenza di sistema quando il dispositivo non risponde, è troppo lento oppure quando ti servono tutte le sezioni del rapporto. Non viene acquisito alcuno screenshot e non puoi inserire altri dettagli."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Lo screenshot per la segnalazione di bug verrà acquisito tra <xliff:g id="NUMBER_1">%d</xliff:g> secondi.</item>
       <item quantity="one">Lo screenshot per la segnalazione di bug verrà acquisito tra <xliff:g id="NUMBER_0">%d</xliff:g> secondo.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ore</item>
       <item quantity="one">1 ora</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problemi video"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Questo video non è valido per lo streaming su questo dispositivo."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Impossibile riprodurre il video."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"OFF"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Completa l\'azione con"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Completamento azione con %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Completa azione"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Apri con"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Apri con %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Apri"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Modifica con"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Modifica con %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Modifica"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Condividi con"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Condividi con %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Condividi"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Invia tramite"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Invia tramite %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Invia"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Seleziona un\'app Home"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Utilizza %1$s come Home"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Acquisisci immagine"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Acquisisci immagine con"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Acquisisci immagine con %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Acquisisci immagine"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Usa come predefinita per questa azione."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Utilizza un\'app diversa"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Cancella l\'applicazione predefinita in Impostazioni di sistema &gt; Applicazioni &gt; Scaricate."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Seleziona anno"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> eliminato"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> lavoro"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Per sbloccare questa schermata, tocca e tieni premute contemporaneamente le opzioni Indietro e Panoramica."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Per sbloccare questa schermata, tocca e tieni premuta l\'opzione Indietro."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Per sbloccare questa schermata, tocca e tieni premuta l\'opzione Panoramica."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"L\'app è bloccata. Su questo dispositivo non è consentito lo sblocco."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Schermata bloccata"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Aggiornato dall\'amministratore"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Eliminato dall\'amministratore"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Per aumentare la durata della batteria, la funzione di risparmio energetico riduce le prestazioni del dispositivo e limita vibrazione, servizi di geolocalizzazione e la maggior parte dei dati in background. App di email, messaggi e altre app che si basano sulla sincronizzazione potrebbero essere aggiornate soltanto all\'apertura.\n\nLa funzione di risparmio energetico viene disattivata automaticamente quando il dispositivo è in carica."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Per contribuire a ridurre l\'utilizzo dei dati, la funzione Risparmio dati impedisce ad alcune app di inviare o ricevere dati in background. Un\'app in uso può accedere ai dati, ma potrebbe farlo con meno frequenza. Esempio: le immagini non vengono visualizzate finché non le tocchi."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Per %1$d minuti (fino alle ore <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Per un minuto (fino alle ore <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-iw/strings.xml b/core/res/res/values-iw/strings.xml
index 5b9b5e1..da86b13 100644
--- a/core/res/res/values-iw/strings.xml
+++ b/core/res/res/values-iw/strings.xml
@@ -126,11 +126,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"מחפש שירות"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"‏שיחות ב-Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"‏כדי להתקשר ולשלוח הודעות ברשת Wi-Fi, תחילה יש לבקש מהספק להגדיר את השירות. לאחר מכן, יש להפעיל שוב התקשרות Wi-Fi מ\'הגדרות\'."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"הירשם אצל הספק"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"‏שיחות Wi-Fi של %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"כבוי"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"‏Wi-Fi מועדף"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"סלולרי מועדף"</string>
@@ -166,7 +170,12 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"שטח האחסון של השעון מלא. מחק כמה קבצים כדי לפנות שטח."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"האחסון בטלוויזיה מלא. מחק חלק מהקבצים כדי לפנות שטח."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"שטח האחסון של הטלפון מלא. מחק חלק מהקבצים כדי לפנות שטח."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"ייתכן שהרשת מנוטרת"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="two">רשויות אישורים הותקנו</item>
+      <item quantity="many">רשויות אישורים הותקנו</item>
+      <item quantity="other">רשויות אישורים הותקנו</item>
+      <item quantity="one">רשות אישורים הותקנה</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"על ידי צד שלישי לא מוכר"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"על ידי המנהל של פרופיל העבודה שלך"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"על ידי <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -213,9 +222,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"שלח דיווח על באג"</string>
     <string name="bugreport_message" msgid="398447048750350456">"פעולה זו תאסוף מידע על מצב המכשיר הנוכחי שלך על מנת לשלוח אותו כהודעת אימייל. היא תימשך זמן קצר מרגע פתיחת דיווח הבאג ועד לשליחת ההודעה בפועל. אנא המתן בסבלנות."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"דוח אינטראקטיבי"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"השתמש באפשרות זו ברוב המקרים. היא מאפשרת לך לעקוב אחר התקדמות הדוח ולהזין פרטים נוספים על הבעיה. היא עשויה להשמיט כמה קטעים שנמצאים פחות בשימוש ואשר יצירת הדיווח עליהם נמשכת זמן רב."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"דוח מלא"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"השתמש באפשרות זו כדי שההפרעה למערכת תהיה מזערית, כשהמכשיר אינו מגיב או איטי מדי, או כשאתה זקוק לכל קטעי הדוח. לא ניתן ליצור צילום מסך או להזין פרטים נוספים."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="two">יוצר צילום מסך לדוח על באג בעוד <xliff:g id="NUMBER_1">%d</xliff:g> שניות.</item>
       <item quantity="many">יוצר צילום מסך לדוח על באג בעוד <xliff:g id="NUMBER_1">%d</xliff:g> שניות.</item>
@@ -261,7 +272,7 @@
     <string name="capability_desc_canRetrieveWindowContent" msgid="3772225008605310672">"בדוק את התוכן של חלון שאיתו אתה מבצע אינטראקציה."</string>
     <string name="capability_title_canRequestTouchExploration" msgid="3108723364676667320">"הפעלה של \'גילוי באמצעות מגע\'"</string>
     <string name="capability_desc_canRequestTouchExploration" msgid="5800552516779249356">"פריטים שנגעת בהם ייאמרו בקול וניתן לנווט במסך באמצעות תנועות."</string>
-    <string name="capability_title_canRequestEnhancedWebAccessibility" msgid="1739881766522594073">"להפעיל גישה משופרת לאינטרנט"</string>
+    <string name="capability_title_canRequestEnhancedWebAccessibility" msgid="1739881766522594073">"הפעלה של גישה משופרת לאינטרנט"</string>
     <string name="capability_desc_canRequestEnhancedWebAccessibility" msgid="7881063961507511765">"ייתכן שסקריפטים יותקנו על מנת להקל את הגישה אל תוכן של אפליקציות."</string>
     <string name="capability_title_canRequestFilterKeyEvents" msgid="2103440391902412174">"הצגת טקסט בזמן הקלדה"</string>
     <string name="capability_desc_canRequestFilterKeyEvents" msgid="7463135292204152818">"כולל נתונים אישיים כמו מספרי כרטיס אשראי וסיסמאות."</string>
@@ -718,7 +729,7 @@
     <string name="lockscreen_glogin_password_hint" msgid="5958028383954738528">"סיסמה"</string>
     <string name="lockscreen_glogin_submit_button" msgid="7130893694795786300">"כניסה"</string>
     <string name="lockscreen_glogin_invalid_input" msgid="1364051473347485908">"שם משתמש או סיסמה לא חוקיים."</string>
-    <string name="lockscreen_glogin_account_recovery_hint" msgid="1696924763690379073">"‏שכחת את שם המשתמש או הסיסמה?\nבקר בכתובת "<b>"google.com/accounts/recovery"</b></string>
+    <string name="lockscreen_glogin_account_recovery_hint" msgid="1696924763690379073">"‏שכחת את שם המשתמש או הסיסמה?\nהיכנס לכתובת "<b>"google.com/accounts/recovery"</b></string>
     <string name="lockscreen_glogin_checking_password" msgid="7114627351286933867">"בודק..."</string>
     <string name="lockscreen_unlock_label" msgid="737440483220667054">"בטל נעילה"</string>
     <string name="lockscreen_sound_on_label" msgid="9068877576513425970">"קול פועל"</string>
@@ -863,6 +874,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> שעות</item>
       <item quantity="one">שעה אחת</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"בעיה בווידאו"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"סרטון זה אינו חוקי להעברה כמדיה זורמת למכשיר זה."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"לא ניתן להפעיל סרטון זה."</string>
@@ -905,16 +926,25 @@
     <string name="capital_off" msgid="6815870386972805832">"כבוי"</string>
     <string name="whichApplication" msgid="4533185947064773386">"השלמת פעולה באמצעות"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"‏השלם את הפעולה באמצעות %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"השלם פעולה"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"פתח באמצעות"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"‏פתח באמצעות %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"פתח"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"ערוך באמצעות"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"‏ערוך באמצעות %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"ערוך"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"שתף באמצעות"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"‏שתף באמצעות %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"שתף"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"שליחה באמצעות"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"‏שליחה באמצעות %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"שלח"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"בחר אפליקציה שתשמש כדף הבית"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"‏השתמש ב-%1$s כדף הבית"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"צלם תמונה"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"צלם תמונה באמצעות"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"‏צילום תמונה באמצעות %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"צלם תמונה"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"השתמש כברירת מחדל עבור פעולה זו."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"השתמש באפליקציה אחרת"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"‏נקה את הגדרת המחדל ב\'הגדרות מערכת\' &lt;‏ Google Apps‏ &lt; \'הורדות\'."</string>
@@ -1335,7 +1365,7 @@
     <string name="kg_login_password_hint" msgid="9057289103827298549">"סיסמה"</string>
     <string name="kg_login_submit_button" msgid="5355904582674054702">"היכנס"</string>
     <string name="kg_login_invalid_input" msgid="5754664119319872197">"שם משתמש או סיסמה לא חוקיים."</string>
-    <string name="kg_login_account_recovery_hint" msgid="5690709132841752974">"‏שכחת את שם המשתמש או הסיסמה?\nבקר בכתובת "<b>"google.com/accounts/recovery"</b></string>
+    <string name="kg_login_account_recovery_hint" msgid="5690709132841752974">"‏שכחת את שם המשתמש או הסיסמה?\nהיכנס לכתובת "<b>"google.com/accounts/recovery"</b></string>
     <string name="kg_login_checking_password" msgid="1052685197710252395">"בודק חשבון…"</string>
     <string name="kg_too_many_failed_pin_attempts_dialog_message" msgid="8276745642049502550">"‏הקלדת מספר PIN שגוי <xliff:g id="NUMBER_0">%1$d</xliff:g> פעמים. \n\nנסה שוב בעוד <xliff:g id="NUMBER_1">%2$d</xliff:g> שניות."</string>
     <string name="kg_too_many_failed_password_attempts_dialog_message" msgid="7813713389422226531">"הקלדת סיסמה שגויה <xliff:g id="NUMBER_0">%1$d</xliff:g> פעמים.\n\nנסה שוב בעוד <xliff:g id="NUMBER_1">%2$d</xliff:g> שניות."</string>
@@ -1480,7 +1510,7 @@
     <string name="select_year" msgid="7952052866994196170">"בחר שנה"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> נמחק"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"עבודה <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"כדי לבטל את הקפאת המסך הזה, גע בו-זמנית נגיעה ממושכת ב\'הקודם\' ו\'סקירה\'."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"כדי לבטל את הצמדת המסך הזה, לחץ לחיצה ממושכת על הלחצן \'הקודם\'."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"כדי לבטל את הקפאת המסך הזה, גע נגיעה ממושכת ב\'סקירה\'."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"האפליקציה מוצמדת: ביטול ההצמדה אסור במכשיר הזה."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"המסך מוצמד"</string>
@@ -1492,6 +1522,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"עודכן על ידי מנהל המערכת שלך"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"נמחקה על ידי מנהל המערכת שלך"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"כדי לעזור בשיפור חיי הסוללה, תכונת החיסכון בסוללה מצמצמת את פעולות המכשיר ומגבילה רטט, שירותי מיקום ואת רוב נתוני הרקע. אימייל, העברת הודעות ואפליקציות אחרות המסתמכות על סנכרון עשויות שלא להתעדכן, אלא אם תפתח אותן.\n\nתכונת החיסכון בסוללה מושבתת אוטומטית כשהמכשיר בטעינה."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"‏כדי לסייע בהפחתת השימוש בנתונים, חוסך הנתונים (Data Saver) מונע מאפליקציות מסוימות שליחה או קבלה של נתונים ברקע. אפליקציה שבה אתה משתמש כרגע יכולה לגשת לנתונים, אבל בתדירות נמוכה יותר. משמעות הדבר היא, למשל, שתמונות יוצגו רק לאחר שתקיש עליהן."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="two">‏למשך %d דקות (עד <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="many">‏למשך %1$d דקות (עד <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-ja/strings.xml b/core/res/res/values-ja/strings.xml
index d3ecef8..890f306 100644
--- a/core/res/res/values-ja/strings.xml
+++ b/core/res/res/values-ja/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"サービスを検索中"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi通話"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi経由で音声通話の発信やメッセージの送信を行うには、携帯通信会社にWi-Fiサービスを申し込んだ上で、設定画面でWi-Fi発信を再度ONにしてください。"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"携帯通信会社に登録してください"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Wi-Fi通話（%s）"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"OFF"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi優先"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"モバイル優先"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"ウォッチのストレージに空き領域がありません。ファイルを削除して空き領域を確保してください。"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"テレビのストレージに空き容量がありません。ファイルを削除して空き領域を確保してください。"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"端末のストレージに空き領域がありません。ファイルを削除して空き領域を確保してください。"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"ネットワークが監視される場合があります"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">認証局がインストールされました</item>
+      <item quantity="one">認証局がインストールされました</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"不明な第三者"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"仕事用プロファイルの管理者によって監視される場合があります"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g>によって監視される場合があります"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"バグレポートを取得"</string>
     <string name="bugreport_message" msgid="398447048750350456">"現在の端末の状態に関する情報が収集され、その内容がメールで送信されます。バグレポートが開始してから送信可能な状態となるまでには多少の時間がかかりますのでご了承ください。"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"対話型レポート"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"ほとんどの場合はこのオプションを使用します。レポートの進行状況を追跡し、問題についての詳細情報を確認することができます。レポート作成に時間がかかってもあまり使用されないセクションは省略されることがあります。"</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"完全レポート"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"端末の反応がないとき、または速度が遅すぎるときにシステムへの影響を最小限に抑えたい場合は、このオプションを使用します。またすべてのレポート セクションを表示したい場合にもこのオプションを使用します。スクリーンショットは作成されず、詳細情報も表示できません。"</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other"><xliff:g id="NUMBER_1">%d</xliff:g> 秒後にバグレポートのスクリーンショットが作成されます。</item>
       <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> 秒後にバグレポートのスクリーンショットが作成されます。</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g>時間</item>
       <item quantity="one">1時間</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"動画の問題"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"この動画はこの端末にストリーミングできません。"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"この動画を再生できません。"</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"OFF"</string>
     <string name="whichApplication" msgid="4533185947064773386">"アプリケーションを選択"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$sを使用してアクションを完了"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"アクションを実行"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"アプリで開く"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$sで開く"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"開く"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"編集に使用"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$sで編集"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"編集"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"共有"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$sで共有"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"共有"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"送信に使用するアプリ"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"送信に使用するアプリ: %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"送信"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"ホームアプリを選択"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"ホームとして%1$sを使用"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"画像をキャプチャ"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"画像のキャプチャに使用するアプリ"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"「%1$s」を使用して画像をキャプチャ"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"画像をキャプチャ"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"常にこの操作で使用する"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"別のアプリの使用"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"[システム設定]&gt;[アプリ]&gt;[ダウンロード済み]でデフォルト設定をクリアします。"</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"年を選択"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g>を削除しました"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"仕事の<xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"この画面の固定を解除するには[戻る]と[最近]を同時に押し続けます。"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"この画面の固定を解除するには [戻る] を押し続けます。"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"この画面の固定を解除するには[最近]を押し続けます。"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"アプリは固定されています。この端末では固定を解除できません。"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"画面を固定しました"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"管理者によって更新されています"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"管理者によって削除されました"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"バッテリーを長持ちさせるため、バッテリーセーバーは端末のパフォーマンスを抑え、バイブレーション、位置情報サービス、大半のバックグラウンドデータを制限します。メール、SMSや、同期を使用するその他のアプリは、起動しても更新されないことがあります。\n\nバッテリーセーバーは端末の充電中は自動的にOFFになります。"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"データセーバーは、一部のアプリによるバックグラウンドでのデータ送受信を停止することでデータ使用量を抑制します。使用中のアプリからデータにアクセスすることはできますが、その頻度は低くなる場合があります。この影響として、たとえば画像はタップしないと表示されないようになります。"</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d分間（<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>まで）</item>
       <item quantity="one">1分間（<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>まで）</item>
diff --git a/core/res/res/values-ka-rGE/strings.xml b/core/res/res/values-ka-rGE/strings.xml
index 20b1055..51073e2 100644
--- a/core/res/res/values-ka-rGE/strings.xml
+++ b/core/res/res/values-ka-rGE/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"სერვისის ძიება"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"დარეკვა Wi-Fi-ს მეშვეობით"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi-ს მეშვეობით ზარების განხორციელების ან შეტყობინების გაგზავნისათვის, პირველ რიგში დაეკითხეთ თქვენს ოპერატორს აღნიშნულ მომსახურებაზე. შემდეგ ხელახლა ჩართეთ Wi-Fi ზარები პარამეტრებიდან."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"დაარეგისტრირეთ თქვენი ოპერატორი"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s დარეკვა Wi-Fi-ს მეშვეობით"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"გამორთული"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"სასურველია Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"სასურველია ფიჭური ინტერნეტი"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"საათის მეხსიერება გავსებულია. ადგილის გასათავისუფლებლად წაშალეთ ფაილების ნაწილი."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"ტელავიზორის მეხსიერება სავსეა.თავისუფალი სივრცისათვის, წაშალეთ გარკვეული ფაილები."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ტელეფონის მეხსიერება გავსებულია. ადგილის გასათავისუფლებლად წაშალეთ ფაილების ნაწილი."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"შესაძლოა ქსელი მონიტორინგის ქვეშ იმყოფება"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">დაინსტალირებულია სერტიფიცირების ორგანოები</item>
+      <item quantity="one">დაინსტალირებულია სერტიფიცირების ორგანო</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"უცნობი მესამე მხარის მიერ"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"თქვენი სამუშაო პროფილის ადმინისტრატორი"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g>-ის მიერ"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"შექმენით შეცდომის ანგარიში"</string>
     <string name="bugreport_message" msgid="398447048750350456">"იგი შეაგროვებს ინფორმაციას თქვენი მოწყობილობის ამჟამინდელი მდგომარეობის შესახებ, რათა ის ელფოსტის შეტყობინების სახით გააგზავნოს. ხარვეზის ანგარიშის მომზადებასა და შეტყობინების გაგზავნას გარკვეული დრო სჭირდება. გთხოვთ, მოითმინოთ."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"ინტერაქტიული ანგარიში"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"გამოიყენეთ ეს ვარიანტი შემთხვევათა უმეტესობაში. ის საშუალებას მოგცემთ, თვალი მიადევნოთ ანგარიშის პროგრესს და პრობლემის შესახებ მეტი დეტალი შეიყვანოთ. ამ ვარიანტის არჩევის შემთხვევაში, შეიძლება მოხდეს ზოგიერთი ნაკლებად გამოყენებადი სექციის გამოტოვება, რომელთა შესახებ მოხსენებასაც დიდი დრო სჭირდება."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"სრული ანგარიში"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"გამოიყენეთ ეს ვარიანტი სისტემის ხარვეზების მინიმუმამდე დასაყვანად, როცა თქვენი მოწყობილობა არ რეაგირებს, მეტისმეტად ნელია, ან ანგარიშის ყველა სექცია გჭირდებათ. ამ შემთხვევაში, არ მოხდება ეკრანის ანაბეჭდის გადაღება თუ მეტი დეტალის შეყვანის მოთხოვნა."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">ხარვეზის შესახებ ანგარიშის ეკრანის ანაბეჭდის გადაღება მოხდება <xliff:g id="NUMBER_1">%d</xliff:g> წამში.</item>
       <item quantity="one">ხარვეზის შესახებ ანგარიშის ეკრანის ანაბეჭდის გადაღება მოხდება <xliff:g id="NUMBER_0">%d</xliff:g> წამში.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> საათი</item>
       <item quantity="one">1 საათი</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"პრობლემები ვიდეოსთან"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"ეს ვიდეო არ გამოდგება ამ მოწყობილობაზე სტრიმინგისთვის."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"ვიდეოს დაკვრა არ არის შესაძლებელი."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"გამორთ."</string>
     <string name="whichApplication" msgid="4533185947064773386">"რა გამოვიყენოთ?"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"მოქმედების %1$s-ის გამოყენებით დასრულება"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"მოქმედების დასრულება"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"გახსნა აპით"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s-ით გახსნა"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"გახსნა"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"რედაქტირება აპით:"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"რედაქტირება %1$s-ით"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"რედაქტირება"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"გაზიარება:"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s-თან გაზიარება"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"გაზიარება"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"გაგზავნა:"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"გაგზავნა %1$s-ის მეშვეობით"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"გაგზავნა"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"აირჩიეთ Home აპი"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$s-ის გამოყენება ......Home-ად"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"სურათის აღბეჭდვა"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"სურათის აღბეჭდვა აპით"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"სურათის აღბეჭდვა %1$s-ით"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"სურათის აღბეჭდვა"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"ამ ქმედებისთვის ნაგულისხმევად გამოყენება."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"სხვა აპის გამოყენება"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"ნაგულისხმევი პარამეტრების წაშლა სისტემის პარამეტრებში &gt; აპებში &gt; ჩამოტვირთულებში."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"აირჩიეთ წელი"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> წაიშალა"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"სამსახური <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"მიმაგრების გასაუქმებლად ერთდროულად შეეხეთ და არ აუშვათ ღილაკებს „უკან“ და „მიმოხილვა“."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"ამ ეკრანის მიმაგრების გასაუქმებლად, ხანგრძლივად შეეხეთ ღილაკს „უკან“."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ამ ეკრანისთვის მიმაგრების გასაუქმებლად, შეეხეთ და არ აუშვათ „მიმოხილვა“-ს."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"აპი მიმაგრებულია: მიმაგრების მოხსნა არ არის ნებადართული ამ მოწყობილობაზე."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"ეკრანი დაფიქსირდა"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"განახლებულია თქვენი ადმინისტრატორის მიერ"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"თქვენი ადმინისტრატორის მიერ წაშლილი"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"ელემენტის მოქმედების ვადის გაუმჯობესებისათვის, ელემენტის დამზოგი ამცირებს თქვენი მოწყობილობის შესრულებას და ზღუდავს ვიბრაციას, ადგილმდებარეობის მომსახურებებს და ძირითად ფონურ მონაცემებს. ელ-ფოსტა, შეტყობინებები და სხვა სინქრონიზაციაზე დაყრდნობილი აპლიკაციების განახლება არ მოხდება მათ გახსნეამდე. \n\n ელემენტის დამზოგველი ავტომატურად გამოირთვება, როდესაც თქვენს მოწყობილობას დამტენთან შეაერთებთ."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"მობილური ინტერნეტის მოხმარების შემცირების მიზნით, მონაცემთა დამზოგველი ზოგიერთ აპს ფონურ რეჟიმში მონაცემთა გაგზავნასა და მიღებას შეუზღუდავს. თქვენ მიერ ამჟამად გამოყენებული აპი მაინც შეძლებს მობილურ ინტერნეტზე წვდომას, თუმცა ამას ნაკლები სიხშირით განახორციელებს. ეს ნიშნავს, რომ, მაგალითად, სურათები არ გამოჩნდება მანამ, სანამ მათ საგანგებოდ არ შეეხებით."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d წუთის განმავლობაში (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>-მდე)</item>
       <item quantity="one">ერთი წუთის განმავლობაში (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>-მდე)</item>
diff --git a/core/res/res/values-kk-rKZ/strings.xml b/core/res/res/values-kk-rKZ/strings.xml
index 1372064..552781e 100644
--- a/core/res/res/values-kk-rKZ/strings.xml
+++ b/core/res/res/values-kk-rKZ/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Қызметті іздеу"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi қоңыраулары"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi арқылы қоңырау шалу және хабарларды жіберу үшін алдымен жабдықтаушыңыздан осы қызметті орнатуды сұраңыз. Содан кейін Параметрлерден Wi-Fi қоңырау шалуын іске қосыңыз."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Жабдықтаушыңыз арқылы тіркелу"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi арқылы қоңырау шалу"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Өшірулі"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Қалаулы Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Қалаулы ұялы байланыс"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Сағат жады толы. Орын босату үшін кейбір файлдарды жойыңыз."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"ТД жады толы. Орынды босату үшін кейбір файлдарды жойыңыз."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Телефон жады толы. Орын босату үшін кейбір файлдарды жойыңыз."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Желі бақылауда болуы мүмкін"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other"> Сертификат құқықтары орнатылды</item>
+      <item quantity="one"> Сертификат құқығы орнатылды</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Белгісіз үшінші жақ арқылы"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Жұмыс профилінің әкімшісі"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> арқылы"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Қате туралы есеп құру"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Құрылғының қазіргі күйі туралы ақпаратты жинап, электрондық хабармен жібереді. Есеп әзір болғанша біраз уақыт кетеді, шыдай тұрыңыз."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Интерактивті есеп"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Мұны жағдайлардың көпшілігінде пайдаланыңыз. Ол есептің орындалу барысын бақылауға және мәселе туралы қосымша мәліметтер енгізуге мүмкіндік береді. Ол есеп беруге ұзақ уақыт кететін кейбір азырақ пайдаланылатын бөлімдерді өткізіп жіберуі мүмкін."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Толық есеп"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Бұл параметрді құрылғы жауап бермей жатқанда немесе тым бояу кезде, я болмаса, барлық есеп бөлімдері керек кезде кедергілерді барынша азайту үшін пайдаланыңыз. Скриншот түсірілмейді немесе қосымша мәліметтер енгізуге рұқсат етілмейді."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other"><xliff:g id="NUMBER_1">%d</xliff:g> секундтан кейін қате туралы есептің скриншоты түсіріледі.</item>
       <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> секундтан кейін қате туралы есептің скриншоты түсіріледі.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> сағат</item>
       <item quantity="one">1 сағат</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Бейне ақаулығы"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Бұл бейне осы құрылғыға ағынын жіберуге жарамсыз."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Бұл бейне таспаны ойната алмайды."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"Өшірулі"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Әрекетті аяқтау"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Әрекетті %1$s қолданбасын пайдаланып аяқтау"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Әрекетті аяқтау"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Басқаша ашу"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s қолданбасымен ашу"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Ашу"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Келесімен өңдеу"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s көмегімен өңдеу"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Өңдеу"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Бөлісу"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s қолданбасымен бөлісу"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Бөлісу"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Келесі арқылы жіберу"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s арқылы жіберу"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Жіберу"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"«Негізгі» қолданбасын таңдау"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$s «Негізгі» ретінде пайдалану"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Кескін түсіру"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Кескінді түсіру қолданбасы"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Кескінді %1$s қолданбасымен түсіру"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Кескін түсіру"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Бұл әрекет үшін бастапқы параметрін қолданыңыз."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Басқа қолданбаны пайдалану"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Әдепкі параметрден «Жүйелік параметрлер» &gt; «Қолданбалар» &gt; «Жүктелгендер» тармағында құсбелгіні алу."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Жыл таңдау"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> жойылды"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Жұмыс <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Осы экранды босату үшін «Кері» және «Шолу» пәрмендерін бір уақытта түртіп, ұстап тұрыңыз."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Осы экранды босату үшін \"Артқа\" түймесін басып тұрыңыз."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Осы экранды босату үшін «Шолу» пәрменін түртіп, ұстап тұрыңыз."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Бағдарлама белгіленді: Бұл құрылғыда белгіні алуға рұқсат берілмейді."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Экран түйрелді"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Әкімші жаңартты"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Әкімші жойған"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Батареяның қызмет көрсету мерзімін жақсарту үшін батарея үнемдегіш құрылғының өнімділігін төмендетеді және дірілді, орынды анықтау қызметтерін және фондық деректердің көпшілігін шектейді. Электрондық пошта, хабар алмасу және синхрондауға негізделген басқа қолданбалар ашқанша жаңартылмауы мүмкін.\n\nБатарея үнемдегіш құрылғы зарядталып жатқанда автоматты түрде өшеді."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Деректердің пайдаланылуын азайту үшін Трафикті үнемдеу функциясы кейбір қолданбаларға деректерді фондық режимде жіберуге немесе қабылдауға жол бермейді. Қазір қолданылып жатқан қолданба деректерді пайдалануы мүмкін, бірақ жиі емес. Мысалы, кескіндер оларды түрткенге дейін көрсетілмейді."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d минут бойы (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> дейін)</item>
       <item quantity="one">Бір минут бойы (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> дейін)</item>
diff --git a/core/res/res/values-km-rKH/strings.xml b/core/res/res/values-km-rKH/strings.xml
index d57659c..3085472 100644
--- a/core/res/res/values-km-rKH/strings.xml
+++ b/core/res/res/values-km-rKH/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"​ស្វែង​រក​សេវាកម្ម"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"ការហៅតាម Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"ដើម្បីធ្វើការហៅ និងផ្ញើសារតាម Wi-Fi ដំបូងឡើយអ្នកត្រូវស្នើឲ្យក្រុមហ៊ុនរបស់អ្នកដំឡើងសេវាកម្មនេះសិន។ បន្ទាប់មកបើកការហៅតាម Wi-Fi ម្តងទៀតចេញពីការកំណត់។"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"ចុះឈ្មោះជាមួយក្រុមហ៊ុនរបស់អ្នក"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"ការហៅតាមរយៈ Wi-Fi %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"បិទ"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"គួរប្រើ Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"គួរប្រើប្រព័ន្ធទូរស័ព្ទ"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"ឧបករណ៍​របស់​នាឡិកា​ពេញ។ លុប​ឯកសារ​មួយ​ចំនួន​។"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"ឧបករណ៍ផ្ទុកទិន្នន័យទូរទស្សន៍ពេញហើយ។ លុបឯកសារមួយចំនួនដើម្បីឲ្យមានចន្លោះទំនេរ។"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ឧបករណ៍​ផ្ទុក​ទូរស័ព្ទ​ពេញ! លុប​ឯកសារ​មួយ​ចំនួន​ដើម្បី​បង្កើន​ទំហំ។"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"បណ្ដាញ​អាច​ត្រូវ​បាន​តាមដាន"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">បានដំឡើងអាជ្ញាធរវិញ្ញាបនបត្រ</item>
+      <item quantity="one">បានដំឡើងអាជ្ញាធរវិញ្ញាបនបត្រ</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"ដោយ​ភាគី​ទីបី​ដែល​មិន​ស្គាល់"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"ដោយអ្នកគ្រប់គ្រងទម្រង់ការងាររបស់អ្នក។"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"ដោយ <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"យក​របាយការណ៍​កំហុស"</string>
     <string name="bugreport_message" msgid="398447048750350456">"វា​នឹង​​ប្រមូល​ព័ត៌មាន​អំពី​ស្ថានភាព​ឧបករណ៍​របស់​អ្នក ដើម្បី​ផ្ញើ​ជា​សារ​អ៊ីមែល។ វា​នឹង​ចំណាយ​ពេល​តិច​ពី​ពេល​ចាប់ផ្ដើម​របាយការណ៍​រហូត​ដល់​ពេល​វា​រួចរាល់​ដើម្បី​ផ្ញើ សូម​អត់ធ្មត់។"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"របាយការណ៍អន្តរកម្ម"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"ប្រើវាគ្រប់កាលៈទេសៈទាំងអស់។ វាអនុញ្ញាតឲ្យអ្នកតាមដានដំណើរការនៃរបាយការណ៍ និងចូលទៅព័ត៌មានលម្អិតបន្ថែមអំពីបញ្ហានេះ។ វាអាចនឹងលុបផ្នែកមួយចំនួនដែលមិនសូវប្រើចេញ ដែលធ្វើឲ្យចំណាយពេលយូរក្នុងការរាយការណ៍។"</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"របាយការណ៍ពេញលេញ"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"ប្រើជម្រើសនេះដើម្បីកាត់បន្ថយការរំខានឲ្យនៅកម្រិតទាបបំផុតនៅពេលដែលឧបករណ៍របស់អ្នកមិនមានការឆ្លើយតប ឬដំណើរការយឺតពេក ឬនៅពេលដែលអ្នកត្រូវការផ្នែករាយការណ៍ទាំងអស់។ មិនថតរូបអេក្រង់ ឬអនុញ្ញាតឲ្យអ្នកចូលទៅព័ត៌មានលម្អិតបន្ថែមទេ។"</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">នឹងថតរូបអេក្រង់សម្រាប់របាយការណ៍កំហុសក្នុងរយៈពេល <xliff:g id="NUMBER_1">%d</xliff:g> វិនាទីទៀត។</item>
       <item quantity="one">នឹងថតរូបអេក្រង់សម្រាប់របាយការណ៍កំហុសក្នុងរយៈពេល <xliff:g id="NUMBER_0">%d</xliff:g> វិនាទីទៀត។</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ម៉ោង</item>
       <item quantity="one">1 ម៉ោង</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"បញ្ហា​វីដេអូ"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"វីដេអូ​នេះ​មិន​ត្រឹមត្រូវ​សម្រាប់​​ចរន្ត​ចូល​ឧបករណ៍​នេះ។"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"មិន​អាច​ចាក់​វីដេអូ​នេះ។"</string>
@@ -895,16 +914,25 @@
     <!-- String.format failed for translation -->
     <!-- no translation found for whichApplicationNamed (8260158865936942783) -->
     <skip />
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"បញ្ចប់សកម្មភាព"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"បើក​ជា​មួយ"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"បើក​ជាមួយ %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"បើក"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"កែសម្រួល​ជាមួយ"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"កែសម្រួល​ជាមួយ​ %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"កែសម្រួល"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"ចែករំលែក​ជាមួយ"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"ចែករំលែក​ជាមួយ"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"ចែករំលែក"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"ផ្ញើដោយប្រើ"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"ផ្ញើដោយប្រើ %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"ផ្ញើ"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"ជ្រើស​កម្មវិធី​ដើម"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"ប្រើ %1$s ជា​ដើម"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"ថតរូប"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"ថតរូបជាមួយ"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"ថតរូបជាមួយ %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"ថតរូប"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"ប្រើ​តាម​លំនាំដើម​សម្រាប់​សកម្មភាព​នេះ។"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"ប្រើ​កម្មវិធី​ផ្សេង"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"សម្អាត​លំនាំដើម​ក្នុង​ការកំណត់​ប្រព័ន្ធ &gt; កម្មវិធី &gt; ទាញ​យក។"</string>
@@ -1462,7 +1490,7 @@
     <string name="select_year" msgid="7952052866994196170">"ជ្រើស​ឆ្នាំ"</string>
     <string name="deleted_key" msgid="7659477886625566590">"បាន​លុប <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"កន្លែង​ធ្វើការ <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"ដើម្បី​មិន​ភ្ជាប់​អេក្រង់​នេះ ប៉ះ ហើយ​សង្កត់​ថយក្រោយ និង​ទិដ្ឋភាព​នៅ​ពេល​តែ​មួយ។"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"ដើម្បីមិនខ្ទាស់អេក្រង់នេះ សូមប៉ះ ថយក្រោយ ឲ្យជាប់។"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ដើម្បី​មិន​ភ្ជាប់​អេក្រង់​នេះ ប៉ះ ហើយ​សង្កត់​ទិដ្ឋភាព។"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"កម្មវិធីនេះត្រូវបានខ្ទាស់។ មិនអនុញ្ញាតឲ្យដោះការខ្ទាស់នៅលើឧបករណ៍នេះទេ។"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"បាន​ភ្ជាប់​អេក្រង់"</string>
@@ -1474,6 +1502,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"បានធ្វើបច្ចុប្បន្នភាពដោយអ្នកគ្រប់គ្រងរបស់អ្នក"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"បានលុបដោយអ្នកគ្រប់គ្រងរបស់អ្នក"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"ដើម្បីជួយឲ្យថាមពលថ្មប្រសើរឡើង កម្មវិធីសន្សំសំចៃថាមពលថ្មកាត់បន្ថយប្រតិបត្តិការឧបករណ៍របស់អ្នក និងកម្រិតភាពញ័រ សេវាកម្មទីតាំង និងទិន្នន័យផ្ទៃខាងក្រោយស្ទើរតែទាំងអស់។ ការផ្ញើសារអ៊ីម៉ែល និងកម្មវិធីផ្សេងទៀតដែលពឹងផ្អែកលើការធ្វើសមកាលកម្មអាចនឹងមិនធ្វើបច្ចុប្បន្នភាពទេ លុះត្រាតែអ្នកបើកពួកវា។\n\nកម្មវិធីសន្សំសំចៃបិទដោយស្វ័យប្រវត្តិ នៅពេលដែលឧបករណ៍របស់អ្នកកំពុងសាកថ្ម។"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"ដើម្បីជួយកាត់បន្ថយការប្រើប្រាស់ទិន្នន័យ កម្មវិធីសន្សំសំចៃទិន្នន័យរារាំងកម្មវិធីមួយចំនួនមិនឲ្យផ្ញើ ឬទទួលទិន្នន័យនៅផ្ទៃខាងក្រោយ។ កម្មវិធីដែលអ្នកកំពុងប្រើនាពេលបច្ចុប្បន្នអាចចូលដំណើរការទិន្នន័យបាន ប៉ុន្តែវាអាចនឹងមិនធ្វើដូចនេះញឹកញាប់ទេ។ នេះមានន័យថា ជាឧទាហរណ៍ រូបភាពមិនបង្ហាញនោះទេ រហូតទាល់តែអ្នកប៉ះពួកវា។"</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">រយៈពេល %1$d នាទី (រហូតដល់ <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">រយៈពេលមួយនាទី (រហូតដល់ <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-kn-rIN/strings.xml b/core/res/res/values-kn-rIN/strings.xml
index 7f94a1d..8bf676b 100644
--- a/core/res/res/values-kn-rIN/strings.xml
+++ b/core/res/res/values-kn-rIN/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"ಸೇವೆ ಹುಡುಕಲಾಗುತ್ತಿದೆ"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi ಕರೆ ಮಾಡುವಿಕೆ"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi ಬಳಸಿಕೊಂಡು ಕರೆ ಮಾಡಲು ಮತ್ತು ಸಂದೇಶಗಳನ್ನು ಕಳುಹಿಸಲು, ಮೊದಲು ಈ ಸಾಧನವನ್ನು ಹೊಂದಿಸಲು ನಿಮ್ಮ ವಾಹಕವನ್ನು ಕೇಳಿ. ತದನಂತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ಮತ್ತೆ Wi-Fi ಆನ್‌ ಮಾಡಿ."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"ನಿಮ್ಮ ವಾಹಕದಲ್ಲಿ ನೋಂದಾಯಿಸಿಕೊಳ್ಳಿ"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi ಕರೆ ಮಾಡುವಿಕೆ"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"ಆಫ್"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"ವೈ-ಫೈಗೆ ಆದ್ಯತೆ ನೀಡಲಾಗಿದೆ"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"ಸೆಲ್ಯುಲಾರ್‌ಗೆ ಆದ್ಯತೆ ನೀಡಲಾಗಿದೆ"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"ವಾಚ್‌ ಸಂಗ್ರಹಣೆ ಪೂರ್ಣಗೊಂಡಿದೆ. ಸ್ಥಳವನ್ನು ಖಾಲಿಯಾಗಿಸಲು ಕೆಲವು ಫೈಲ್‍‍ಗಳನ್ನು ಅಳಿಸಿ."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"ಟಿವಿ ಸಂಗ್ರಹಣೆ ತುಂಬಿದೆ. ಸ್ಥಳವನ್ನು ಮುಕ್ತಗೊಳಿಸಲು ಕೆಲವು ಫೈಲ್‌ಗಳನ್ನು ಅಳಿಸಿ."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ಫೋನ್ ಸಂಗ್ರಹಣೆ ತಂಬಿದೆ. ಸ್ಥಳವನ್ನು ಖಾಲಿಯಾಗಿಸಲು ಕೆಲವು ಫೈಲ್‍‍ಗಳನ್ನು ಅಳಿಸಿ."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"ನೆಟ್‌ವರ್ಕ್ ಅನ್ನು ವೀಕ್ಷಿಸಬಹುದಾಗಿರುತ್ತದೆ"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">ಪ್ರಮಾಣಪತ್ರ ಅಂಗೀಕಾರಗಳನ್ನು ಸ್ಥಾಪಿಸಲಾಗಿದೆ</item>
+      <item quantity="other">ಪ್ರಮಾಣಪತ್ರ ಅಂಗೀಕಾರಗಳನ್ನು ಸ್ಥಾಪಿಸಲಾಗಿದೆ</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"ಅಜ್ಞಾತ ಥರ್ಡ್ ಪಾರ್ಟಿಯ ಪ್ರಕಾರ"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"ನಿಮ್ಮ ಕೆಲಸದ ಪ್ರೊಫೈಲ್ ನಿರ್ವಾಹಕರಿಂದ"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> ಪ್ರಕಾರ"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"ದೋಷ ವರದಿ ರಚಿಸಿ"</string>
     <string name="bugreport_message" msgid="398447048750350456">"ನಿಮ್ಮ ಸಾಧನದ ಪ್ರಸ್ತುತ ಸ್ಥಿತಿಯ ಕುರಿತು ಮಾಹಿತಿಯನ್ನು ಸಂಗ್ರಹಿಸಿಕೊಳ್ಳುವುದರ ಜೊತೆ ಇ-ಮೇಲ್ ರೂಪದಲ್ಲಿ ನಿಮಗೆ ರವಾನಿಸುತ್ತದೆ. ಇದು ದೋಷ ವರದಿಯನ್ನು ಪ್ರಾರಂಭಿಸಿದ ಸಮಯದಿಂದ ಅದನ್ನು ಕಳುಹಿಸುವವರೆಗೆ ಸ್ವಲ್ಪ ಸಮಯವನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ; ದಯವಿಟ್ಟು ತಾಳ್ಮೆಯಿಂದಿರಿ."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"ಪರಸ್ಪರ ಸಂವಹನ ವರದಿ"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"ಹೆಚ್ಚಿನ ಸಂದರ್ಭಗಳಲ್ಲಿ ಇದನ್ನು ಬಳಸಿ. ಇದು ವರದಿಯ ಪ್ರಗತಿಯನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಲು ಮತ್ತು ಸಮಸ್ಯೆ ಕುರಿತು ಹೆಚ್ಚಿನ ವಿವರಗಳನ್ನು ನಮೂದಿಸಲು ಅನುಮತಿಸುತ್ತದೆ. ಇದು ವರದಿ ಮಾಡಲು ಹೆಚ್ಚು ಸಮಯ ತೆಗೆದುಕೊಳ್ಳುವಂತಹ ಕೆಲವು ಕಡಿಮೆ ಬಳಸಲಾದ ವಿಭಾಗಗಳನ್ನು ತ್ಯಜಿಸಬಹುದು."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"ಪೂರ್ಣ ವರದಿ"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"ನಿಮ್ಮ ಸಾಧನವು ಸ್ಪಂದಿಸುತ್ತಿಲ್ಲದಿರುವಾಗ ಅಥವಾ ತುಂಬಾ ನಿಧಾನವಾಗಿರುವಾಗ ಕನಿಷ್ಟ ಹಸ್ತಕ್ಷೇಪಕ್ಕಾಗಿ ಅಥವಾ ನಿಮಗೆ ಎಲ್ಲಾ ವಿಭಾಗಗಳೂ ಅಗತ್ಯವಿರುವಾಗ ಈ ಆಯ್ಕೆಯನ್ನು ಬಳಸಿ. ಸ್ಕ್ರೀನ್‌ಶಾಟ್ ತೆಗೆದುಕೊಳ್ಳಲು ಅಥವಾ ಹೆಚ್ಚಿನ ವಿವರಗಳನ್ನು ನಮೂದಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸಲಾಗುವುದಿಲ್ಲ."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">ಬಗ್ ವರದಿ ಮಾಡಲು <xliff:g id="NUMBER_1">%d</xliff:g> ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಸ್ಕ್ರೀನ್‌ಶಾಟ್ ತೆಗೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ.</item>
       <item quantity="other">ಬಗ್ ವರದಿ ಮಾಡಲು <xliff:g id="NUMBER_1">%d</xliff:g> ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಸ್ಕ್ರೀನ್‌ಶಾಟ್ ತೆಗೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ಗಂಟೆಗಳು</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ಗಂಟೆಗಳು</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"ವೀಡಿಯೊ ಸಮಸ್ಯೆ"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"ಈ ಸಾಧನಲ್ಲಿ ಸ್ಟ್ರೀಮ್ ಮಾಡಲು ಈ ವೀಡಿಯೊ ಮಾನ್ಯವಾಗಿಲ್ಲ."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"ಈ ವೀಡಿಯೊ ಪ್ಲೇ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ಆಫ್ ಮಾಡು"</string>
     <string name="whichApplication" msgid="4533185947064773386">"ಇದನ್ನು ಬಳಸಿಕೊಂಡು ಕ್ರಿಯೆಯನ್ನು ಪೂರ್ಣಗೊಳಿಸಿ"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s ಬಳಸಿಕೊಂಡು ಕ್ರಿಯೆಯನ್ನು ಪೂರ್ಣಗೊಳಿಸಿ"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"ಕ್ರಿಯೆಯನ್ನು ಪೂರ್ಣಗೊಳಿಸಿ"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"ಇದರ ಮೂಲಕ ತೆರೆಯಿರಿ"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s ಜೊತೆಗೆ ತೆರೆಯಿರಿ"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"ತೆರೆ"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"ಇವರ ಜೊತೆಗೆ ಸಂಪಾದಿಸಿ"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s ಜೊತೆಗೆ ಸಂಪಾದಿಸಿ"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"ಸಂಪಾದಿಸು"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"ಹಂಚಿಕೊಳ್ಳಿ"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s ಜೊತೆಗೆ ಹಂಚಿಕೊಳ್ಳಿ"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"ಹಂಚಿಕೊಳ್ಳಿ"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"ಇದನ್ನು ಬಳಸಿಕೊಂಡು ಕಳುಹಿಸಿ"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s ಬಳಸಿಕೊಂಡು ಕಳುಹಿಸಿ"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"ಕಳುಹಿಸು"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"ಹೋಮ್‌ ಅಪ್ಲಿಕೇಶನ್‌  ಆಯ್ಕೆಮಾಡಿ"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"ಹೋಮ್‌ ಎಂಬಂತೆ %1$s ಅನ್ನು ಬಳಸಿ"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"ಚಿತ್ರ ಕ್ಯಾಪ್ಚರ್ ಮಾಡಿ"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"ಇದರ ಜೊತೆಗೆ ಚಿತ್ರ ಕ್ಯಾಪ್ಚರ್ ಮಾಡಿ"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s ಜೊತೆ ಚಿತ್ರ ಕ್ಯಾಪ್ಚರ್ ಮಾಡಿ"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"ಚಿತ್ರ ಕ್ಯಾಪ್ಚರ್ ಮಾಡಿ"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"ಈ ಕ್ರಿಯೆಗೆ ಡೀಫಾಲ್ಟ್ ಆಗಿ ಬಳಸಿ."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"ಬೇರೆಯ ಅಪ್ಲಿಕೇಶನ್ ಬಳಸಿ"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"ಸಿಸ್ಟಂ ಸೆಟ್ಟಿಂಗ್‌ಗಳು &gt; ಅಪ್ಲಿಕೇಶನ್‌ಗಳು &gt; ಡೌನ್‌ಲೋಡ್ ಮಾಡಲಾದ ಡೀಫಾಲ್ಟ್‌‌ ಅನ್ನು ತೆರವುಗೊಳಿಸಿ."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"ವರ್ಷವನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> ಅಳಿಸಲಾಗಿದೆ"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"ಕೆಲಸ <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"ಈ ಪರದೆಯನ್ನು ಅನ್‌ಪಿನ್ ಮಾಡಲು, ‘ಹಿಂದೆ’ ಮತ್ತು ‘ಸಮಗ್ರ ನೋಟ’ವನ್ನು ಏಕಕಾಲದಲ್ಲಿ ಸ್ಪರ್ಶಿಸಿ ಮತ್ತು ಒತ್ತಿ ಹಿಡಿದುಕೊಳ್ಳಿ."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"ಈ ಪರದೆಯನ್ನು ಅನ್‌ಪಿನ್ ಮಾಡಲು, ಸ್ಪರ್ಶಿಸಿ ಮತ್ತು ಹಿಂದೆ ಒತ್ತಿ ಹಿಡಿಯಿರಿ."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ಈ ಪರದೆಯನ್ನು ಅನ್‌ಪಿನ್ ಮಾಡಲು, ‘ಸಮಗ್ರ ನೋಟ’ವನ್ನು ಸ್ಪರ್ಶಿಸಿ ಮತ್ತು ಒತ್ತಿ ಹಿಡಿಯಿರಿ."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"ಅಪ್ಲಿಕೇಶನ್ ಪಿನ್‌ ಮಾಡಲಾಗಿದೆ: ಈ ಸಾಧನದಲ್ಲಿ ಅನ್‌ಪಿನ್‌ ಮಾಡುವುದನ್ನು ಅನುಮತಿಸಲಾಗುವುದಿಲ್ಲ."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"ಸ್ಕ್ರೀನ್‌ ಪಿನ್‌ ಮಾಡಲಾಗಿದೆ"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"ನಿಮ್ಮ ನಿರ್ವಾಹಕರಿಂದ ನವೀಕರಿಸಲಾಗಿದೆ"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"ನಿಮ್ಮ ನಿರ್ವಾಹಕರಿಂದ ಅಳಿಸಲಾಗಿದೆ"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"ನಿಮ್ಮ ಬ್ಯಾಟರಿಯ ಬಾಳಿಕೆಯನ್ನು ಸುಧಾರಿಸಲು ಸಹಾಯ ಮಾಡಲು, ಬ್ಯಾಟರಿ ಉಳಿಕೆಯು ನಿಮ್ಮ ಸಾಧನದ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ ಮತ್ತು ವೈಬ್ರೇಷನ್, ಸ್ಥಳ ಸೇವೆಗಳು ಹಾಗೂ ಹೆಚ್ಚಿನ ಹಿನ್ನೆಲೆ ಡೇಟಾವನ್ನು ಮಿತಿಗೊಳಿಸುತ್ತದೆ. ಸಿಂಕ್ ಮಾಡುವುದನ್ನು ಅವಲಂಬಿಸಿರುವ ಇಮೇಲ್, ಸಂದೇಶ ಕಳುಹಿಸುವಿಕೆ, ಮತ್ತು ಇತರ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ನೀವು ತೆರೆಯದ ಹೊರತು ನವೀಕರಣಗೊಳ್ಳುವುದಿಲ್ಲ.\n\nನಿಮ್ಮ ಸಾಧನವು ಚಾರ್ಜ್ ಆಗುತ್ತಿರುವ ಸಮಯದಲ್ಲಿ ಬ್ಯಾಟರಿ ಉಳಿಕೆಯು ಆಫ್ ಆಗುತ್ತದೆ."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"ಡೇಟಾ ಬಳಕೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಲು ಸಹಾಯಕಾರಿಯಾಗಿ, ಡೇಟಾ ಸೇವರ್ ಕೆಲವು ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗೆ ಹಿನ್ನೆಲೆಯಲ್ಲಿ ಡೇಟಾ ಕಳುಹಿಸುವುದನ್ನು ಅಥವಾ ಸ್ವೀಕರಿಸುವುದನ್ನು ತಡೆಯುತ್ತದೆ. ನೀವು ಪ್ರಸ್ತುತ ಬಳಸುತ್ತಿರುವ ಅಪ್ಲಿಕೇಶನ್ ಡೇಟಾವನ್ನು ಪ್ರವೇಶಿಸಬಹುದು ಆದರೆ ಕಡಿಮೆ ಪುನರಾವರ್ತಿತವಾಗಿ ಮಾಡಬಹುದು. ಇದರರ್ಥ, ಉದಾಹರಣೆಗೆ, ನೀವು ಅವುಗಳನ್ನು ಟ್ಯಾಪ್ ಮಾಡುವವರೆಗೆ ಆ ಚಿತ್ರಗಳು ಪ್ರದರ್ಶಿಸುವುದಿಲ್ಲ."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d ನಿಮಿಷಗಳವರೆಗೆ (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> ವರೆಗೆ)</item>
       <item quantity="other">%1$d ನಿಮಿಷಗಳವರೆಗೆ (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> ವರೆಗೆ)</item>
diff --git a/core/res/res/values-ko/strings.xml b/core/res/res/values-ko/strings.xml
index 4f6d602..07bc9c8 100644
--- a/core/res/res/values-ko/strings.xml
+++ b/core/res/res/values-ko/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"서비스 검색 중"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi 통화"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi를 사용하여 전화를 걸고 메시지를 보내려면 먼저 이동통신사에 문의하여 이 기능을 설정해야 합니다. 그런 다음 설정에서 Wi-Fi 통화를 사용 설정하시기 바랍니다."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"이동통신사에 등록"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi 통화"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"꺼짐"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi를 기본으로 설정"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"데이터 네트워크를 기본으로 설정"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"시계 저장공간이 가득 찼습니다. 일부 파일을 삭제하여 저장 여유 공간을 늘리세요."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV 저장공간이 꽉 찼습니다. 일부 파일을 삭제하여 저장 여유 공간을 확보하세요."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"휴대전화 저장공간이 꽉 찼습니다. 일부 파일을 삭제하여 저장공간을 늘리세요."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"네트워크가 모니터링될 수 있음"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">인증기관 설치됨</item>
+      <item quantity="one">인증기관 설치됨</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"알 수 없는 제3자의 모니터링"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"직장 프로필 관리자에 의해 모니터링될 수 있음"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g>에서 모니터링"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"버그 신고"</string>
     <string name="bugreport_message" msgid="398447048750350456">"현재 기기 상태에 대한 정보를 수집하여 이메일 메시지로 전송합니다. 버그 신고를 시작하여 전송할 준비가 되려면 약간 시간이 걸립니다."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"대화형 보고서"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"대부분의 경우 이 옵션을 사용합니다. 신고 진행 상황을 추적할 수 있고 문제에 대한 세부정보를 입력할 수 있습니다. 신고하기에 시간이 너무 오래 걸리고 사용 빈도가 낮은 일부 섹션을 생략할 수 있습니다."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"전체 보고서"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"기기가 응답하지 않거나 반응 속도가 너무 느린 경우 또는 모든 신고 섹션이 필요한 경우 이 최소 시스템 간섭 옵션을 사용합니다. 스크린샷을 찍지 않으며 세부정보 입력을 허용하지 않습니다."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">버그 신고 스크린샷을 <xliff:g id="NUMBER_1">%d</xliff:g>초 후에 찍습니다.</item>
       <item quantity="one">버그 신고 스크린샷을 <xliff:g id="NUMBER_0">%d</xliff:g>초 후에 찍습니다.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g>시간</item>
       <item quantity="one">1시간</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"영상 문제"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"이 기기로 스트리밍하기에 적합하지 않은 동영상입니다."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"동영상을 재생할 수 없습니다."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"OFF"</string>
     <string name="whichApplication" msgid="4533185947064773386">"작업을 수행할 때 사용하는 애플리케이션"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s을(를) 사용하여 작업 완료"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"작업 완료"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"연결 프로그램"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s(으)로 열기"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"열기"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"편집 프로그램:"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s(으)로 수정"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"수정"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"공유 대상"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s와(과) 공유"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"공유"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"전송 시 사용할 앱"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"전송 시 사용할 앱: %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"전송"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"홈 앱 선택"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$s을(를) 홈 앱으로 사용"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"이미지 캡처"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"이미지 캡처에 사용할 앱:"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"이미지 캡처에 %1$s 사용"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"이미지 캡처"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"이 작업에 대해 기본값으로 사용"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"다른 앱 사용"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"시스템 설정 &gt; 앱 &gt; 다운로드로 이동하여 기본 설정을 지웁니다."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"연도 선택"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> 삭제됨"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"업무용 <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"화면 고정을 해제하려면 \'뒤로\'와 \'개요\'를 동시에 길게 터치합니다."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"화면 고정을 해제하려면 \'뒤로\'를 길게 터치합니다."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"화면 고정을 해제하려면 \'개요\'를 길게 터치합니다."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"앱이 고정되었습니다. 이 기기에서는 고정 해제를 허용하지 않습니다."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"화면 고정됨"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"관리자에 의해 업데이트됨"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"관리자가 삭제함"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"배터리 수명 개선을 위해, 배터리 세이버는 기기의 성능을 줄이고 진동, 위치 서비스 및 대부분의 백그라운드 데이터를 제한합니다. 이메일, 메시지 및 동기화에 의존하는 기타 앱은 앱을 열 때까지 업데이트되지 않을 수 있습니다.\n\n배터리 세이버는 기기를 충전 중일 때는 자동으로 사용 중지됩니다."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"데이터 사용량을 줄이기 위해 데이터 세이버는 일부 앱이 백그라운드에서 데이터를 전송하거나 수신하지 못하도록 합니다. 현재 사용 중인 앱에서 데이터에 액세스할 수 있지만 빈도가 줄어듭니다. 즉, 예를 들어 이미지를 탭하기 전에는 이미지가 표시되지 않습니다."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d분 동안(<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>까지)</item>
       <item quantity="one">1분 동안(<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>까지)</item>
diff --git a/core/res/res/values-ky-rKG/strings.xml b/core/res/res/values-ky-rKG/strings.xml
index c7d32d11..a4a309e 100644
--- a/core/res/res/values-ky-rKG/strings.xml
+++ b/core/res/res/values-ky-rKG/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Кызмат изделүүдө"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi Чалуу"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi аркылуу чалууларды аткарып жана билдирүүлөрдү жөнөтүү үчүн адегенде операторуңуздан бул кызматты орнотушун сураныңыз. Андан соң, Жөндөөлөрдөн Wi-Fi чалууну кайра күйгүзүңүз."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Операторуңузга катталыңыз"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi Чалуу"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Өчүк"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi тандалган"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Уюлдук тармак тандалган"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Саат сактагычы толуп калды. Орун бошотуу үчүн айрым файлдарды жок кылыңыз."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Сыналгынын сактагычы толуп калды. Айрым файлдарды жок кылып орун бошотуңуз."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Телефондун сактагычы толуп калды. Орун бошотуш үчүн кээ бир файлдарды өчүрүңүз."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Тармак тинтилиши мүмкүн"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">ТБнун тастыктамалары орнотулду</item>
+      <item quantity="one">ТБнун тастыктамасы орнотулду</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Аныкталбаган үчүнчү тараптардан"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Жумушуңуздун профайл администратору тарабынан"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> тарабынан"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Ката тууралуу билдирүү түзүү"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Бул сиздин түзмөгүңүздүн учурдагы абалын эмейл билдирүүсү катары жөнөтүш максатында маалымат чогултат. Ката тууралуу билдирүү түзүлүп башталып, жөнөтүлгөнгө чейин бир аз убакыт керек болот; сураныч, бир аз күтө туруңуз."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Интерактивдүү кабар"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Ката жөнүндө кабардын абалын жана көйгөй тууралуу кошумча маалыматты көрсөтүү үчүн ушул функцияны колдонууну сунуштайбыз. Ката жөнүндө кабар жөнөтүлүп жатканда көп убакыт талап кылынбашы үчүн негизги бөлүмдөр гана көрүнөт."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Толук кабар берүү"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Түзмөгүңүз жооп бербей же өтө жай иштеп жатса, ошондой эле жөндөөлөрдүн бардык бөлүмдөрүн карап чыккыңыз келсе, ушул функцияны колдонуңуз. Баса, ката жөнүндө кошумча маалыматты көрсөтүп же скриншотту ала албайсыз."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Мүчүлүштүк тууралуу кабарлоо үчүн <xliff:g id="NUMBER_1">%d</xliff:g> секундда скриншот алынат.</item>
       <item quantity="one">Мүчүлүштүк тууралуу кабарлоо үчүн <xliff:g id="NUMBER_0">%d</xliff:g> секундда скриншот алынат.</item>
@@ -413,8 +422,7 @@
     <string name="permdesc_bluetoothAdmin" product="default" msgid="8931682159331542137">"Колдонмого жергиликтүү Bluetooth телефонун конфигурациялап, ыраактагы түзмөктөрдү таап, жупташуу мүмкүнчүлүгүн берет."</string>
     <string name="permlab_accessWimaxState" msgid="4195907010610205703">"WiMAX түйүнүнө туташуу жана андан ажыроо"</string>
     <string name="permdesc_accessWimaxState" msgid="6360102877261978887">"Колдонмого WiMAX жандырылгандыгы жана туташкан WiMAX түйүндөрү тууралуу маалыматтарын көрүүгө уруксат берет."</string>
-    <!-- no translation found for permlab_changeWimaxState (340465839241528618) -->
-    <skip />
+    <string name="permlab_changeWimaxState" msgid="340465839241528618">"WiMAX абалын өзгөртүү"</string>
     <string name="permdesc_changeWimaxState" product="tablet" msgid="3156456504084201805">"Колдонмого планшетти WiMAX түйүндөрүнө туташтыруу жана ажыратуу уруксаттары берилет."</string>
     <string name="permdesc_changeWimaxState" product="tv" msgid="6022307083934827718">"Колдонмого сыналгыны WiMAX тармактарына туташтырып, алардан ажыратуу мүмкүнчүлүгүн берет."</string>
     <string name="permdesc_changeWimaxState" product="default" msgid="697025043004923798">"Колдонмого телефонду WiMAX түйүндөрүнө туташтыруу жана ажыратуу уруксаттары берилет."</string>
@@ -852,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> саат</item>
       <item quantity="one">1 саат</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Видео маселеси"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Бул видеону ушул түзмөктө агылтып көрсөтүү мүмкүн эмес."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Бул видеону ойнотуу мүмкүн эмес."</string>
@@ -894,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ӨЧҮК"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Аракет колдонууну бүтүрүү"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s аркылуу аракетти аягына чейин чыгаруу"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Аракетти аягына чыгаруу"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Төмөнкү менен ачуу"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s менен ачуу"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Ачуу"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Төмөнкү менен түзөтүү"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s менен түзөтүү"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Түзөтүү"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Төмөнкү менен бөлүшүү"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s менен бөлүшүү"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Бөлүшүү"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Колдонмо тандаңыз"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s аркылуу жөнөтүү"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Жөнөтүү"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Башкы бет колдонмосун тандаңыз"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Башкы бет колдонмосу катары %1$s пайдалануу"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Сүрөткө тартуу"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Сүрөткө төмөнкү параметрлер менен тартуу"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s менен сүрөткө тартуу"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Сүрөткө тартуу"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Бул аракет үчүн демейки боюнча колдонулсун."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Башка колдонмону пайдалануу"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Тутум жөндөөлөрүндөгү демейкини тазалоо &gt; Колдонмолор &gt; Жүктөлүп алынды."</string>
@@ -1461,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Жылды тандаңыз"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> өчүрүлдү"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Жумуш <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Бул экранды бошотуу үчүн Артка жана Көз жүгүртүүнү чогуу басып, кармап туруңуз."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Бул экранды бошотуу үчүн \"Артка\" баскычын басып, кармап туруңуз."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Бул экранды бошотуу үчүн Көз жүгүртүүнү басып, кармап туруңуз."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Колдонмо кадалган: Бул түзмөктө бошотууга уруксат жок."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Экран кадалды"</string>
@@ -1473,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Администраторуңуз жаңырткан"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Администраторуңуз тарабынан жок кылынган"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Батареянын өмүрүн узартуу үчүн, батареяны үнөмдөгүч түзмөгүңүздүн ишинин майнаптуулугун азайтып, дирилдөө, жайгашкан жерди аныктоо кызматтары жана фондук дайындардын көпчүлүгүн чектеп коёт. Электрондук почта, билдирүү жазышуу жана башка шайкештештирүүгө байланыштуу колдонмолор ачылмайынча жаңыртылбай калышы мүмкүн.\n\nБатарея үнөмдөгүч түзмөгүңүз кубатталып жатканда автоматтык түрдө өчүп калат."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Трафиктин колдонулушун үнөмдөө режиминде айрым колдонмолор дайындарды фондо өткөрө алышпайт. Учурда сиз пайдаланып жаткан колдонмо дайындарды өткөрөт, бирок адаттагыдан азыраак өткөргөндүктөн, анын айрым функциялары башкача иштеши мүмкүн. Мисалы, сүрөттөр басылмайынча жүктөлбөйт."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d мүнөткө (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> чейин)</item>
       <item quantity="one">Бир мүнөткө (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> чейин)</item>
diff --git a/core/res/res/values-lo-rLA/strings.xml b/core/res/res/values-lo-rLA/strings.xml
index a69ccb7..cf9dc67 100644
--- a/core/res/res/values-lo-rLA/strings.xml
+++ b/core/res/res/values-lo-rLA/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"ຊອກຫາບໍລິການ"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"ການ​ໂທ Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"ເພື່ອ​ໂທ ແລະ​ສົ່ງ​ຂໍ້​ຄວາມ​ຢູ່​ເທິງ Wi-Fi, ກ່ອນ​ອື່ນ​ໝົດ​ໃຫ້​ຖ້າມ​ຜູ້​ໃຫ້​ບໍ​ລິ​ການ​ເຄືອ​ຂ່າຍ​ຂອງ​ທ່ານ ເພື່ອ​ຕັ້ງ​ການ​ບໍ​ລິ​ການ​ນີ້. ຈາກນັ້ນ​ເປີດການ​ໂທ Wi-Fi ອີກ​ຈາກ​ການ​ຕັ້ງ​ຄ່າ."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"ລົງ​ທະ​ບຽນ​ກັບ​ຜູ້​ໃຫ້​ບໍ​ລິ​ການ​ເຄືອ​ຂ່າຍ​ຂອງ​ທ່ານ"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"ການ​ໂທ %s Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"ປິດ"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"ເລືອກໃຊ້ Wi​-Fi ກ່ອນ"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"ເລືອກໃຊ້ເຊລລູລາກ່ອນ"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"ບ່ອນ​ຈັດ​ເກັບ​ຂໍ້​ມູນ​ໃນ​ໂມງ​ເຕັມ​ແລ້ວ. ໃຫ້​ລຶບ​ໄຟ​ລ໌​ບາງ​ອັນ​ທີ່ບໍ່​ໄດ້​ໃຊ້​ອອກ​ເພື່ອ​ເພີ່ມ​ເນື້ອ​ທີ່​ຫວ່າງ."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"ບ່ອນ​ເກັບ​ຂໍ້​ມູນໂທລະພາບເຕັມ. ລຶບ​ບາງ​ໄຟ​ລ໌ ເພື່ອ​ໃຫ້​ມີ​ຊ່ອງ​ຫວ່າງ​."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ພື້ນທີ່ໃນໂທລະສັບເຕັມແລ້ວ. ກະລຸນາລຶບບາງໄຟລ໌ອອກເພື່ອເພີ່ມພື້ນທີ່ຫວ່າງ."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"ການນຳໃຊ້ເຄືອຂ່າຍອາດມີການກວດສອບຕິດຕາມ"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">ຕິດຕັ້ງໃບຮັບຮອງຜູ້ມີອຳນາດແລ້ວ</item>
+      <item quantity="one">ຕິດຕັ້ງໃບຮັບຮອງຜູ້ມີອຳນາດແລ້ວ</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"ໂດຍບຸກຄົນທີສາມທີ່ບໍ່ຮູ້ຈັກ"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"ຕາມ​ຜູ້​ຄວບ​ຄຸມ​ໂປ​ຣ​ໄຟ​ລ໌​ວຽກ​ຂອງ​ທ່ານ"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"ໂດຍ <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"ໃຊ້ລາຍງານຂໍ້ບົກພ່ອງ"</string>
     <string name="bugreport_message" msgid="398447048750350456">"ນີ້ຈະເປັນການເກັບກຳຂໍ້ມູນກ່ຽວກັບ ສະຖານະປັດຈຸບັນຂອງອຸປະກອນທ່ານ ເພື່ອສົ່ງເປັນຂໍ້ຄວາມທາງອີເມວ. ມັນຈະໃຊ້ເວລາໜ້ອຍນຶ່ງ ໃນການເລີ່ມຕົ້ນການລາຍງານຂໍ້ຜິດພາດ ຈົນກວ່າຈະພ້ອມທີ່ຈະສົ່ງໄດ້, ກະລຸນາລໍຖ້າ."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"ລາຍງານແບບໂຕ້ຕອບ"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"ໃຊ້ອັນນີ້ພາຍໃຕ້ສະພາບການສ່ວນໃຫຍ່. ມັນອະນຸຍາດໃຫ້ທ່ານຕິດຕາມຄວາມຄືບໜ້າຂອງລາຍງານ ແລະ ປ້ອນລາຍລະອຽດເພີ່ມເຕີມກ່ຽວກັບບັນຫາ. ມັນອາດຈະຕັດບາງສ່ວນທີ່ບໍ່ຄ່ອຍໄດ້ໃຊ້ທີ່ໃຊ້ເວລາດົນໃນການລາຍງານອອກໄປ."</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"ໃຊ້ພາຍໃຕ້ສະຖານະການສ່ວນໃຫຍ່. ມັນອະນຸຍາດໃຫ້ທ່ານສາມາດຕິດຕາມສະຖານະລາຍງານ, ປ້ອນລາຍລະອຽດເພີ່ມເຕີມກ່ຽວກັບບັນຫາ ແລະ ຖ່າຍຮູບໜ້າຈໍໄດ້. ມັນອາດລະເລີຍພາກສ່ວນທີ່ບໍ່ຄ່ອຍໃຊ້ທີ່ໃຊ້ເວລາລາຍງານດົນອອກໄປ."</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"ລາຍງານເຕັມ"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"ໃຊ້ຕົວເລືອກນີ້ເພື່ອໃຫ້ມີການລົບກວນລະບົບໜ້ອຍສຸດ ເມື່ອອຸປະກອນຂອງທ່ານບໍ່ຕອບສະໜອງ ຫຼືຊ້າເກີນໄປ ຫຼື ເມື່ອທ່ານຕ້ອງການທຸກສ່ວນຂອງລາຍງານ. ຈະບໍ່ມີການຖ່າຍພາບໜ້າຈໍ ຫຼືອະນຸຍາດໃຫ້ທ່ານປ້ອນລາຍລະອຽດຕື່ມອີກ."</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"ໃຊ້ຕົວເລືອກນີ້ເພື່ອໃຫ້ມີການລົບກວນລະບົບໜ້ອຍທີ່ສຸດໃນເວລາທີ່ອຸປະກອນຂອງທ່ານບໍ່ຕອບສະໜອງ ຫຼື ເຮັດວຽກຊ້າເກີນໄປ ຫຼື ເມື່ອທ່ານຕ້ອງການລາຍງານທຸກພາກສ່ວນ. ຕົວເລືອກນີ້ຈະບໍ່ອະນຸຍາດໃຫ້ທ່ານລະບຸລາຍລະອຽດເພີ່ມເຕີມ ຫຼື ຖ່າຍຮູບໜ້າຈໍໃສ່ຕື່ມໄດ້."</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">ກຳລັງຈະຖ່າຍພາບໜ້າຈໍສຳລັບການລາຍງານຂໍ້ຜິດພາດໃນ <xliff:g id="NUMBER_1">%d</xliff:g> ວິນາທີ.</item>
       <item quantity="one">ກຳລັງຈະຖ່າຍພາບໜ້າຈໍສຳລັບການລາຍງານຂໍ້ຜິດພາດໃນ <xliff:g id="NUMBER_0">%d</xliff:g> ວິນາທີ.</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ຊົ່ວໂມງ</item>
       <item quantity="one">1 ຊົ່ວໂມງ</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"ຕອນນີ້"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"ບັນຫາວິດີໂອ"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"ວິດີໂອນີ້ບໍ່ຖືກຕ້ອງສຳລັບການສະແດງໃນອຸປະກອນນີ້."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"ບໍ່ສາມາດຫຼິ້ນວິດີໂອນີ້ໄດ້."</string>
@@ -893,16 +909,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ປິດ"</string>
     <string name="whichApplication" msgid="4533185947064773386">"ດຳເນີນການໂດຍໃຊ້"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"ສຳ​ເລັດ​​​ການ​ດຳ​ເນີນ​ການ​ໂດຍ​ໃຊ້ %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"ສຳເລັດຄຳສັ່ງ"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"ເປີດໂດຍໃຊ້"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"ເປີດ​ໂດຍ​ໃຊ້ %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"ເປີດ"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"​ແກ້​ໄຂ​ໃນ"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"ແກ້​ໄຂ​ໃນ %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"ແກ້ໄຂ"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"ແບ່ງປັນກັບ"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"ແບ່ງ​ປັນ​ກັບ %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"ແບ່ງປັນ"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"ສົ່ງໂດຍໃຊ້"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"ສົ່ງໂດຍໃຊ້ %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"ສົ່ງ"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"​ເລືອກ​ແອັບຯ​ໂຮມ"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"​ໃຊ້ %1$s ເປັນ​ໜ້າຫຼັກ"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"ບັນທຶກຮູບພາບ"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"ບັນທຶກຮູບພາບດ້ວຍ"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"ບັນທຶກຮູບພາບດ້ວຍ %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"ບັນທຶກຮູບພາບ"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"ໃຊ້ໂດຍຄ່າເລີ່ມຕົນສຳລັບການເຮັດວຽກນີ້."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"ນຳໃຊ້ແອັບຯອື່ນ"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"ລຶບລ້າງຄ່າເລີ່ມຕົ້ນ ໃນ ການຕັ້ງຄ່າລະບົບ &gt; ແອັບຯ &gt; ດາວໂຫລດແລ້ວ."</string>
@@ -1460,7 +1485,7 @@
     <string name="select_year" msgid="7952052866994196170">"ເລືອກ​ປີ"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> ຖືກລຶບແລ້ວ"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"​ບ່ອນ​ເຮັດ​ວຽກ <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"ເພື່ອ​ຖອດ​ການ​ປັກ​ໝຸດ​ໜ້າ​ຈໍ​ນີ້, ສຳ​ຜັດປຸ່ມ ​ກັບ​ຄືນ ແລະ ພາບ​ຮວມ ຄ້າງ​ໄວ້​ພ້ອມ​ກັນ."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"ເພື່ອ​ຖອດ​ການ​ປັກ​ໝຸດໜ້າ​ຈໍ​ນີ້, ໃຫ້ແຕະທີ່​ປຸ່ມກັບຄືນຄ້າງ​ໄວ້."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ເພື່ອ​ຖອດ​ການ​ປັກ​ໝຸດໜ້າ​ຈໍ​ນີ້, ສຳ​ຜັດ​ປຸ່ມ ພາບ​ຮວມ ຄ້າງ​ໄວ້."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"ແອັບ​ຖືກ​ປັກ​ໝຸດ​ແລ້ວ: ບໍ່​ອະ​ນຸ​ຍາດ​ໃຫ້​ຖອນ​ປັກ​ໝຸດ​ຢູ່​ເທິງ​ອຸ​ປະ​ກອນ​ນີ້."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"​ປັກ​ໝຸດ​ໜ້າ​ຈໍ​ແລ້ວ"</string>
@@ -1472,6 +1497,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"ອັບ​ເດດ​ໂດຍ​ຜູ້​ຄວບ​ຄຸມ​ຂອງ​ທ່ານ​ແລ້ວ"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"ຖືກ​ຜູ້​ຄວບ​ຄຸມ​ຂອງ​ທ່ານ​ລຶບ​ໄປ​ແລ້ວ"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"ເພື່ອ​ຊ່ວຍ​ເພີ່ມ​ອາ​ຍຸ​ແບັດ​ເຕີ​ຣີ, ຕົວ​ປະ​ຢັດ​ໄຟ​ແບັດ​ເຕີ​ຣີ​ຫຼຸດ​ປະ​ສິດ​ທິ​ພາບ​ການ​ເຮັດ​ວຽກ​ຂອງ​ອຸ​ປະ​ກອນ​ຂອງ​ທ່ານ​ລົງ ແລະ​ຈຳ​ກັດ​ການ​ສັ່ນ, ການ​ບໍ​ລິ​ການ​ຫາທີ່ຕັ້ງ, ແລະ​ຂໍ້​ມູນ​ພື້ນ​ຫຼັງ​ເກືອບ​ທັງ​ໝົດ. ອີ​ເມວ, ການ​ສົ່ງ​ຂໍ້​ຄວາມ, ແລະ​ແອັບອື່ນໆ​ທີ່ອາ​ໄສການ​ຊິງ​ຄ໌​ອາດ​ຈະ​ບໍ່​ອັບ​ເດດ ນອກ​ຈາກວ່າ​ທ່ານ​ເປີດ​ມັນ.\n\nຕົວ​ປະ​ຢັດ​ໄຟ​ແບັດ​ເຕີ​ຣີຈະ​ປິດ​ອັດ​ຕະ​ໂນ​ມັດ ເມື່ອ​ອຸ​ປະ​ກອນ​ຂອງ​ທ່ານ​ກຳ​ລັງ​ສາກຢູ່."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"ເພື່ອຊ່ວຍຫຼຸດຜ່ອນການນຳໃຊ້ຂໍ້ມູນ, ຕົວປະຢັດຂໍ້ມູນຈະປ້ອງກັນບໍ່ໃຫ້ບາງແອັບສົ່ງ ຫຼື ຮັບຂໍ້ມູນໃນພື້ນຫຼັງ. ແອັບໃດໜຶ່ງທີ່ທ່ານກຳລັງໃຊ້ຢູ່ຈະສາມາດເຂົ້າເຖິງຂໍ້ມູນໄດ້ ແຕ່ອາດເຂົ້າເຖິງໄດ້ຖີ່ໜ້ອຍລົງ. ນີ້ອາດໝາຍຄວາມວ່າ ຮູບພາບຕ່າງໆອາດບໍ່ສະແດງຈົນກວ່າທ່ານຈະແຕະໃສ່ກ່ອນ."</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"ເປີດໃຊ້ຕົວປະຢັດຂໍ້ມູນບໍ?"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"ເປີດໃຊ້"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">ເປັນ​ເວ​ລາ %1$d ນາ​ທີ (ຈົນ​ຮອດ <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">​ເປັນ​ເວ​ລາ 1 ນາ​ທີ (ຈົນ​ຮອດ <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-lt/strings.xml b/core/res/res/values-lt/strings.xml
index 9130d2c..6d61763 100644
--- a/core/res/res/values-lt/strings.xml
+++ b/core/res/res/values-lt/strings.xml
@@ -126,11 +126,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Ieškoma paslaugos"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"„Wi-Fi“ skambinimas"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Jei norite skambinti ir siųsti pranešimus „Wi-Fi“ ryšiu, pirmiausia paprašykite operatoriaus nustatyti šią paslaugą. Tada vėl įjunkite skambinimą „Wi-Fi“ ryšiu „Nustatymų“ skiltyje."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Užregistruokite pas operatorių"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"„%s“ „Wi-Fi“ skambinimas"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Išjungta"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Pageidautinas „Wi-Fi“ ryšys"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Pageidautinas mobilusis ryšys"</string>
@@ -166,7 +170,12 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Laikrodžio saugykla pilna. Ištrinkite kelis failus, kad atlaisvintumėte vietos."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV saugykla pilna. Ištrinkite kai kuriuos failus, kad atlaisvintumėte vietos."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Telefono atmintis pilna. Ištrinkite kai kuriuos failus, kad atlaisvintumėte vietos."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Tinklas gali būti stebimas"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Sertifikato įgaliojimai įdiegti</item>
+      <item quantity="few">Sertifikato įgaliojimai įdiegti</item>
+      <item quantity="many">Sertifikato įgaliojimai įdiegti</item>
+      <item quantity="other">Sertifikato įgaliojimai įdiegti</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Nežinoma trečioji šalis"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Darbo profilio administratorius"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -213,9 +222,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Pranešti apie riktą"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Bus surinkta informacija apie dabartinę įrenginio būseną ir išsiųsta el. pašto pranešimu. Šiek tiek užtruks, kol pranešimas apie riktą bus paruoštas siųsti; būkite kantrūs."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interakt. ataskaita"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Naudokite tai esant daugumai aplinkybių. Galite stebėti ataskaitos eigą ir įvesti daugiau išsamios informacijos apie problemą. Gali būti praleidžiamos kelios nelabai naudingos skiltys, kurių ataskaitų teikimas ilgai trunka."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Išsami ataskaita"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Naudokite šią parinktį, kad būtų minimalūs sistemos trukdžiai, kai įrenginys nereaguoja ar yra per lėtas arba kai jums reikia visų skilčių. Nefiksuojama ekrano kopija arba leidžiama įvesti daugiau išsamios informacijos."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Pranešimo apie riktą ekrano kopija bus užfiksuota po <xliff:g id="NUMBER_1">%d</xliff:g> sekundės.</item>
       <item quantity="few">Pranešimo apie riktą ekrano kopija bus užfiksuota po <xliff:g id="NUMBER_1">%d</xliff:g> sekundžių.</item>
@@ -863,6 +874,16 @@
       <item quantity="many"><xliff:g id="COUNT">%d</xliff:g> valandos</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> valandų</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Vaizdo įrašo problema"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Šis vaizdo įrašas netinkamas srautiniu būdu perduoti į šį įrenginį."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Negalima paleisti šio vaizdo įrašo."</string>
@@ -905,16 +926,25 @@
     <string name="capital_off" msgid="6815870386972805832">"IŠJ."</string>
     <string name="whichApplication" msgid="4533185947064773386">"Užbaigti veiksmą naudojant"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Užbaigti veiksmą naudojant %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Užbaigti veiksmą"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Atidaryti naudojant"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Atidaryti naudojant %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Atidaryti"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Redaguoti naudojant"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Redaguoti naudojant %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Redaguoti"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Bendrinti naudojant"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Bendrinti naudojant %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Bendrinti"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Siųsti naudojant"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Siųsti naudojant „%1$s“"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Siųsti"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Pasirinkti pagrindinę programą"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Naudoti „%1$s“ kaip pagrindinę programą"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Užfiksuoti vaizdą"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Užfiksuoti vaizdą naudojant"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Užfiksuoti vaizdą naudojant „%1$s“"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Užfiksuoti vaizdą"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Šiam veiksmui tai naudoti pagal numatytuosius nustatymus."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Naudoti kitą programą"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Numatytuosius nustatymus išvalykite nuėję į „Sistemos nustatymai“ &gt; „Programos“ &gt; „Atsisiųsta“."</string>
@@ -1480,7 +1510,7 @@
     <string name="select_year" msgid="7952052866994196170">"Pasirinkite metus"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Ištrinta: <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Darbo <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Jei norite atsegti šį ekraną, vienu metu palieskite ir palaikykite „Atgal“ ir „Apžvalga“."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Jei norite atsegti šį ekraną, palieskite ir palaikykite „Atgal“."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Jei norite atsegti šį ekraną, palieskite ir palaikykite „Apžvalga“."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Programa prisegta: šiame įrenginyje negalima atsegti."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ekrano prisegtas"</string>
@@ -1492,6 +1522,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Atnaujino administratorius"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Ištrynė administratorius"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Kad tausotų akumuliatoriaus energiją akumuliatoriaus tausojimo priemonė sumažina įrenginio veikimą ir apriboja vibravimą, vietovės paslaugas bei daugumą foninių duomenų. El. pašto, susirašinėjimo ir kitos programos, kurios veikia sinchronizavimo pagrindu, gali būti neatnaujintos, nebent jas atidarysite.\n\nAkumuliatoriaus tausojimo priemonė automatiškai išjungiama, kai įrenginys įkraunamas."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Kad padėtų sumažinti duomenų naudojimą, Duomenų taupymo priemonė neleidžia kai kurioms programoms siųsti ar gauti duomenų fone. Šiuo metu naudojama programa gali pasiekti duomenis, bet tai bus daroma rečiau. Tai gali reikšti, kad, pvz., vaizdai nebus pateikiami, jei jų nepaliesite."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d minutę (iki <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="few">%1$d minutes (iki <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-lv/strings.xml b/core/res/res/values-lv/strings.xml
index 19aa282..98bbd82 100644
--- a/core/res/res/values-lv/strings.xml
+++ b/core/res/res/values-lv/strings.xml
@@ -125,11 +125,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Pakalpojuma meklēšana"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi zvani"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Lai veiktu zvanus un sūtītu īsziņas Wi-Fi tīklā, vispirms lūdziet mobilo sakaru operatoru iestatīt šo pakalpojumu. Pēc tam iestatījumos vēlreiz ieslēdziet Wi-Fi zvanus."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Reģistrēt to pie sava mobilo sakaru operatora"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi zvani"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Izslēgts"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Vēlams Wi-Fi tīkls"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Vēlams mobilais tīkls"</string>
@@ -165,7 +169,11 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Pulksteņa atmiņa ir pilna. Dzēsiet dažus failus, lai atbrīvotu vietu."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Televizora krātuve ir pilna. Izdzēsiet dažus failus, lai atbrīvotu vietu."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Tālruņa atmiņa ir pilna! Dzēsiet dažus failus, lai atbrīvotu vietu."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Iespējams, tīklā veiktās darbības tiek pārraudzītas."</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="zero">Sertificēšanas iestāžu sertifikāti ir instalēti</item>
+      <item quantity="one">Sertificēšanas iestāžu sertifikāti ir instalēti</item>
+      <item quantity="other">Sertificēšanas iestāžu sertifikāti ir instalēti</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Nezināma trešā puse"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Tīklu uzrauga jūsu darba profila administrators."</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Domēns <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -212,9 +220,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Kļūdu ziņojuma sagatavošana"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Veicot šo darbību, tiks apkopota informācija par jūsu ierīces pašreizējo stāvokli un nosūtīta e-pasta ziņojuma veidā. Kļūdu ziņojuma pabeigšanai un nosūtīšanai var būt nepieciešams laiks. Lūdzu, esiet pacietīgs."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktīvs pārskats"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Izmantojiet lielākajā daļā gadījumu. Varat izsekot pārskata izveides norisi un ievadīt papildu informāciju par problēmu. Var tikt izlaistas dažas mazāk izmantotas sadaļas, kuru izveidei nepieciešams daudz laika."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Viss pārskats"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Izmantojiet, lai minimāli iejauktos sistēmā, ja ierīce nereaģē, darbojas pārāk lēni vai ja ir nepieciešamas visas pārskata sadaļas. Netiek veikts ekrānuzņēmums, un nevarat ievadīt papildu informāciju."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="zero">Pēc <xliff:g id="NUMBER_1">%d</xliff:g> sekundēm tiks veikts ekrānuzņēmums kļūdas pārskatam.</item>
       <item quantity="one">Pēc <xliff:g id="NUMBER_1">%d</xliff:g> sekundes tiks veikts ekrānuzņēmums kļūdas pārskatam.</item>
@@ -857,6 +867,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> stunda</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> stundas</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Video problēma"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Šis video nav derīgs straumēšanai uz šo ierīci."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Nevar atskaņot šo video."</string>
@@ -899,16 +919,25 @@
     <string name="capital_off" msgid="6815870386972805832">"IZSL."</string>
     <string name="whichApplication" msgid="4533185947064773386">"Pabeigt darbību, izmantojot"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Pabeigt darbību, izmantojot %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Pabeigt darbību"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Atvērt, izmantojot"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Atvērt, izmantojot %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Atvērt"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Rediģēt, izmantojot"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Rediģēt, izmantojot %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Rediģēt"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Kopīgot, izmantojot"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Kopīgot, izmantojot %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Kopīgot"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Sūtīšana, izmantojot..."</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Sūtīšana, izmantojot: %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Sūtīt"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Sākuma lietotnes atlase"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"“%1$s” kā sākuma lietotnes izmantošana"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Uzņemt attēlu"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Attēla uzņemšana, izmantojot lietotni"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Attēla uzņemšana, izmantojot lietotni %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Uzņemt attēlu"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Pēc noklusējuma izmantot šai darbībai."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Izmantot citu lietotni"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Notīriet noklusējuma iestatījumus šeit: Sistēmas iestatījumi &gt; Lietotnes &gt; Lejupielādētās."</string>
@@ -1470,7 +1499,7 @@
     <string name="select_year" msgid="7952052866994196170">"Atlasiet gadu."</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> tika dzēsts."</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Darbā: <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Lai atspraustu šo ekrānu, vienlaicīgi pieskarieties pogām “Atpakaļ” un “Pārskats” un turiet tās."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Lai atspraustu šo ekrānu, pieskarieties pogai “Atpakaļ” un turiet to."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Lai atspraustu šo ekrānu, pieskarieties pogai “Pārskats” un turiet to."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Lietotne ir piesprausta. Atspraušana šajā ierīcē nav atļauta."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ekrāns ir piesprausts"</string>
@@ -1482,6 +1511,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Atjaunināja administrators"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Izdzēsa jūsu administrators"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Lai paildzinātu akumulatora darbību, akumulatora jaudas taupīšanas režīmā tiek samazināta ierīces veiktspēja un tiek ierobežota vibrācija, atrašanās vietu pakalpojumi un lielākā daļa fona datu. E-pasta, ziņojumapmaiņas un cita veida lietotnes, kuru darbības pamatā ir datu sinhronizācija, var netikt atjauninātas, ja tās neatverat.\n\nTiklīdz tiek sākta ierīces uzlāde, akumulatora jaudas taupīšanas režīms automātiski tiek izslēgts."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Lai samazinātu datu lietojumu, datu lietojuma samazinātājs neļauj dažām lietotnēm fonā nosūtīt vai saņemt datus. Lietotne, kuru pašlaik izmantojat, var piekļūt datiem, bet, iespējams, piekļūs tiem retāk (piemēram, attēli tiks parādīti tikai tad, kad tiem pieskarsieties)."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="zero">%1$d minūtes (līdz <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">%1$d minūti (līdz <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-mk-rMK/strings.xml b/core/res/res/values-mk-rMK/strings.xml
index 425722d..9010c54 100644
--- a/core/res/res/values-mk-rMK/strings.xml
+++ b/core/res/res/values-mk-rMK/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Пребарување за услуга"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Повикување преку Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"За повикување и испраќање пораки преку Wi-Fi, прво побарајте од операторот да ви ја постави оваа услуга. Потоа повторно вклучете повикување преку Wi-Fi во Поставки."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Регистрирајте се со операторот"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Повикување преку Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Исклучено"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Се претпочита Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Се претпочита мобилна"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Складот за гледање е полн. Избришете некои датотеки за да ослободите простор."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Складот на телевизорот е полн. Избришете некои датотеки за да ослободите простор."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Меморијата на телефонот е полна. Избришете некои датотеки за да ослободите простор."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Можеби мрежата се следи"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Инсталирани се авторитети за сертификатот</item>
+      <item quantity="other">Инсталирани се авторитети за сертификатот</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Од страна на непознато трето лице"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Од администраторот на вашиот работен профил"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Од <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Земи извештај за грешки"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Ова ќе собира информации за моменталната состојба на вашиот уред, за да ги испрати како порака по е-пошта. Тоа ќе одземе малку време почнувајќи од извештајот за грешки додека не се подготви за праќање; бидете трпеливи."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Интерактивен извештај"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Користете го ова во повеќето ситуации. Ви дозволува да го следите напредокот на извештајот и да внесете повеќе детали во врска со проблемот. Може да испушти некои помалку користени делови за коишто е потребно долго време за да се пријават."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Целосен извештај"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Користете ја опцијава за да имате минимално системско попречување кога уредот не реагира или е премногу бавен, или кога ви требаат сите делови на извештајот. Не прави слика од екранот, ниту ви дозволува да внесете повеќе детали."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Ќе се направи слика од екранот за извештајот за грешки за <xliff:g id="NUMBER_1">%d</xliff:g> секунда.</item>
       <item quantity="other">Ќе се направи слика од екранот за извештајот за грешки за <xliff:g id="NUMBER_1">%d</xliff:g> секунди.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> час</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> часа</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Проблем со видео"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Видеово не е важечко за постојан тек до уредов."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Ова видео не може да се пушти."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ИСКЛУЧЕНО"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Заврши дејство со"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Завршете го дејството со користење %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Заврши го дејството"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Отвори со"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Отвори со %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Отвори"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Уреди со"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Уреди со %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Уреди"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Сподели со"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Сподели со %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Сподели"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Испрати преку"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Испрати преку %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Испрати"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Изберете ја апликацијата Почетен"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Користете ја %1$s како Почетен"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Сними слика"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Сними слика со"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Сними слика со %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Сними слика"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Користи ја стандардно за ова дејство."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Користи различна апликација"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Избриши ги стандардните вредности во Системски поставки &gt; Апликации &gt; Преземено."</string>
@@ -1462,7 +1490,7 @@
     <string name="select_year" msgid="7952052866994196170">"Избери година"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Избришано <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Работа <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"За да го откачите екранот, допрете и задржете Назад и Краток преглед во исто време."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"За да го откачите екранот, допрете и задржете Назад."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"За да го откачите екранот, допрете и задржете Краток преглед."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Апликацијата е закачена: откачување не е дозволено на уредов."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Екранот е закачен"</string>
@@ -1474,6 +1502,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Ажурирано од администраторот"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Избришано од администраторот"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"За да ви помогне да ја подобрите трајноста на батеријата, штедачот на батеријата ја намалува изведбата на уредот и го ограничува вибрирањето, услугите за локација и повеќето податоци од заднина. Е-поштата, испраќањето пораки и другите апликации кои се потпираат на синхронизација можеби нема да се ажурираат доколку не ги отворите.\n\nШтедачот на батеријата автоматски се исклучува кога уредот се полни."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"За да се намали користењето интернет, Штедачот на интернет спречува дел од апликациите да испраќаат или да примаат податоци во заднина. Апликацијата што ја користите во моментов можеби ќе пристапува до податоци, но тоа ќе го прави поретко. Ова значи, на пример, дека сликите нема да се прикажат додека не ги допрете."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">За %1$d минута (до <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">За %1$d минути (до <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-ml-rIN/strings.xml b/core/res/res/values-ml-rIN/strings.xml
index 1e24d01..d72c32c 100644
--- a/core/res/res/values-ml-rIN/strings.xml
+++ b/core/res/res/values-ml-rIN/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"സേവനത്തിനായി തിരയുന്നു"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"വൈഫൈ കോളിംഗ്"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"വൈഫൈ വഴി കോളുകൾ വിളിക്കാനും സന്ദേശങ്ങൾ അയയ്‌ക്കാനും ആദ്യം നിങ്ങളുടെ കാരിയറോട് ഈ സേവനം സജ്ജമാക്കാൻ ആവശ്യപ്പെടുക. ക്രമീകരണത്തിൽ നിന്ന് വീണ്ടും വൈഫൈ കോളിംഗ് ഓണാക്കുക."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"നിങ്ങളുടെ കാരിയറിൽ രജിസ്റ്റർ ചെയ്യുക"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s വൈഫൈ കോളിംഗ്"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"ഓഫ്"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"വൈഫൈ തിരഞ്ഞെടുത്തിരിക്കുന്നു"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"സെല്ലുലാർ തിരഞ്ഞെടുത്തിരിക്കുന്നു"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"വാച്ചിലെ സ്റ്റോറേജ്  നിറഞ്ഞു. ഇടം ശൂന്യമാക്കാൻ കുറച്ച് ഫയലുകൾ ഇല്ലാതാക്കുക."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"ടിവി സ്റ്റോറേജ്  നിറഞ്ഞു. ഇടം ശൂന്യമാക്കാൻ കുറച്ച് ഫയലുകൾ ഇല്ലാതാക്കുക."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ഫോൺ സ്റ്റോറേജ്  കഴിഞ്ഞു. ഇടം ശൂന്യമാക്കാൻ ചില ഫയലുകൾ ഇല്ലാതാക്കുക."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"നെറ്റ്‌വർക്ക് നിരീക്ഷിക്കപ്പെടാം"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">സർട്ടിഫിക്കറ്റ് അതോറിറ്റികൾ ഇൻസ്റ്റാൾ ചെയ്തു</item>
+      <item quantity="one">സർട്ടിഫിക്കറ്റ് അതോറിറ്റി ഇൻസ്റ്റാൾ ചെയ്തു</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"അജ്ഞാത മൂന്നാം കക്ഷി നിരീക്ഷിക്കാം"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"നിങ്ങളുടെ ഔദ്യോഗിക പ്രൊഫൈൽ അഡ്‌മിനിസ്‌ട്രേറ്റർ"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> നിരീക്ഷിക്കാം"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"ബഗ് റിപ്പോർട്ട് എടുക്കുക"</string>
     <string name="bugreport_message" msgid="398447048750350456">"ഒരു ഇമെയിൽ സന്ദേശമായി അയയ്‌ക്കുന്നതിന്, ഇത് നിങ്ങളുടെ നിലവിലെ ഉപകരണ നിലയെക്കുറിച്ചുള്ള വിവരങ്ങൾ ശേഖരിക്കും. ബഗ് റിപ്പോർട്ട് ആരംഭിക്കുന്നതിൽ നിന്ന് ഇത് അയയ്‌ക്കാനായി തയ്യാറാകുന്നതുവരെ അൽപ്പസമയമെടുക്കും; ക്ഷമയോടെ കാത്തിരിക്കുക."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"ഇന്റരാക്റ്റീവ് റിപ്പോർട്ട്"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"മിക്ക സാഹചര്യങ്ങളിലും ഇത് ഉപയോഗിക്കുക. റിപ്പോർട്ടിന്റെ പുരോഗതി കാണാനും പ്രശ്നത്തിന്റെ കൂടുതൽ വിശദാംശങ്ങളിലേക്ക് പ്രവേശിക്കാനും ഇത് അനുവദിക്കുന്നു. റിപ്പോർട്ടുചെയ്യാൻ നീണ്ട സമയം എടുക്കുന്ന, നിങ്ങൾ കുറച്ച് ഉപയോഗിക്കുന്ന ചില വിഭാഗങ്ങളെ ഇത് വിട്ടുകളഞ്ഞേക്കാം."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"പൂർണ്ണ റിപ്പോർട്ട്"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"നിങ്ങളുടെ ഉപകരണം പ്രതികരിക്കുന്നില്ലെങ്കിലോ അതിനു വേഗത കുറവാണെങ്കിലോ നിങ്ങൾക്ക് എല്ലാ വിഭാഗങ്ങളും ആവശ്യമുള്ളപ്പോഴോ, സിസ്റ്റത്തിന്റെ തടസ്സം പരിമിതപ്പെടുത്തുന്നതിന്, ഈ ഓപ്ഷൻ ഉപയോഗിക്കുക. സ്ക്രീൻഷോട്ട് എടുക്കുകയോ കൂടുതൽ വിശദാംശങ്ങളിലേക്ക് പ്രവേശിക്കാൻ നിങ്ങളെ അനുവദിക്കുകയോ ചെയ്യില്ല."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">ബഗ് റിപ്പോർട്ടിനായി <xliff:g id="NUMBER_1">%d</xliff:g> സെക്കൻഡിൽ സ്ക്രീൻഷോട്ട് എടുക്കുന്നു.</item>
       <item quantity="one">ബഗ് റിപ്പോർട്ടിനായി <xliff:g id="NUMBER_0">%d</xliff:g> സെക്കൻഡിൽ സ്ക്രീൻഷോട്ട് എടുക്കുന്നു.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> മണിക്കൂർ</item>
       <item quantity="one">ഒരു മണിക്കൂർ</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"വീഡിയോ പ്രശ്‌നം"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"ഈ വീഡിയോ ഈ ഉപകരണത്തിൽ സ്ട്രീം ചെയ്യുന്നതിന് സാധുവായതല്ല."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"ഈ വീഡിയോ പ്ലേ ചെയ്യാനായില്ല."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ഓഫ്"</string>
     <string name="whichApplication" msgid="4533185947064773386">"പൂർണ്ണമായ പ്രവർത്തനം ഉപയോഗിക്കുന്നു"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s ഉപയോഗിച്ച് പ്രവർത്തനം പൂർത്തിയാക്കുക"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"പ്രവർത്തനം പൂർത്തിയാക്കുക"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"ഇത് ഉപയോഗിച്ച് തുറക്കുക"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s ഉപയോഗിച്ച് തുറക്കുക"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"തുറക്കുക"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"ഇത് ഉപയോഗിച്ച് എഡിറ്റുചെയ്യുക"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s ഉപയോഗിച്ച് എഡിറ്റുചെയ്യുക"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"എഡിറ്റുചെയ്യുക"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"ഇതുമായി പങ്കിടുക"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s എന്നതുമായി പങ്കിടുക"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"പങ്കിടുക"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"ഇനിപ്പറയുന്നത് ഉപയോഗിച്ച് അയയ്ക്കുക"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s ഉപയോഗിച്ച് അയയ്ക്കുക"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"അയയ്‌ക്കുക"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"ഒരു ഹോം അപ്ലിക്കേഷൻ തിരഞ്ഞെടുക്കുക"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"ഹോമായി %1$s എന്നത് ഉപയോഗിക്കുക"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"ചിത്രം എടുക്കുക"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"ഇനിപ്പറയുന്നതിൽ ചിത്രം എടുക്കുക:"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s ഉപയോഗിച്ച് ചിത്രം എടുക്കുക"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"ചിത്രം എടുക്കുക"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"ഈ പ്രവർത്തനത്തിന് സ്ഥിരമായി ഉപയോഗിക്കുക."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"മറ്റൊരു അപ്ലിക്കേഷൻ ഉപയോഗിക്കുക"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"സിസ്‌റ്റം ക്രമീകരണങ്ങൾ &gt; അപ്ലിക്കേഷനുകൾ &gt; ഡൗൺലോഡുചെയ്‌തവ എന്നതിലെ സ്ഥിരമായതിനെ മറയ്ക്കുക."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"വർഷം തിരഞ്ഞെടുക്കുക"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> ഇല്ലാതാക്കി"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"ഔദ്യോഗികം <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"ഈ സ്‌ക്രീൻ അൺപിൻ ചെയ്യാൻ \'മടങ്ങുക\', \'കാഴ്ച\' എന്നിവ ഒരേ സമയം സ്‌പർശിച്ച് പിടിക്കുക."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"ഈ സ്‌ക്രീൻ അൺപിൻ ചെയ്യാൻ, ബാക്ക് ബട്ടൺ സ്‌പർശിച്ച് പിടിക്കുക."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ഈ സ്‌ക്രീൻ അൺപിൻ ചെയ്യാൻ, കാഴ്ച സ്‌പർശിച്ച് പിടിക്കുക."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"അപ്ലിക്കേഷൻ പിൻ ചെയ്‌തു: ഈ ഉപകരണത്തിൽ അൺപിൻ ചെയ്യാനാവില്ല."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"സ്ക്രീൻ പിൻ ചെയ്തു"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്റർ അപ്‌ഡേറ്റുചെയ്‌തു"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്റർ ഇല്ലാതാക്കി"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"ബാറ്ററി ആയുസ്സ് മെച്ചപ്പെടുത്താൻ സഹായിക്കുന്നതിന്, ബാറ്ററി സേവർ നിങ്ങളുടെ ഉപകരണത്തിന്റെ പ്രകടനത്തെ കുറയ്‌ക്കുകയും വൈബ്രേഷനെയും മിക്ക പശ്ചാത്തല വിവരത്തെയും പരിമിതപ്പെടുത്തുകയും ചെയ്യുന്നു. ഇമെയിൽ, സന്ദേശമയയ്‌ക്കൽ, സമന്വയിപ്പിക്കലിനെ ആശ്രയിച്ചുള്ള മറ്റ് അപ്ലിക്കേഷനുകൾ എന്നിവ നിങ്ങൾ തുറക്കുന്നതുവരെ അപ്‌ഡേറ്റുചെയ്യാനിടയില്ല.\n\nനിങ്ങളുടെ ഉപകരണം ചാർജ്ജുചെയ്യുമ്പോൾ ബാറ്ററി സേവർ സ്വയം ഓഫാകും."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"ഡാറ്റാ ഉപയോഗം കുറയ്ക്കാൻ സഹായിക്കുന്നതിന്, പശ്ചാത്തലത്തിൽ ഡാറ്റ അയയ്ക്കുകയോ സ്വീകരിക്കുകയോ ചെയ്യുന്നതിൽ നിന്ന് ചില ആപ്‌സിനെ ഡാറ്റ സേവർ തടയുന്നു. നിങ്ങൾ നിലവിൽ ഉപയോഗിക്കുന്ന ഒരു ആപ്പിന് ഡാറ്റ ആക്സസ്സ് ചെയ്യാൻ കഴിയും, എന്നാൽ കുറഞ്ഞ ആവൃത്തിയിലാണിത് നടക്കുക. ഇതിനർത്ഥം, നിങ്ങൾ ടാപ്പുചെയ്യുന്നത് വരെ ചിത്രങ്ങൾ കാണിക്കുകയില്ല എന്നാണ്."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d മിനിറ്റ് സമയത്തേക്ക് (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> വരെ)</item>
       <item quantity="one">ഒരു മിനിറ്റ് സമയത്തേക്ക് (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> വരെ)</item>
diff --git a/core/res/res/values-mn-rMN/strings.xml b/core/res/res/values-mn-rMN/strings.xml
index 0e2f8af..260fa76 100644
--- a/core/res/res/values-mn-rMN/strings.xml
+++ b/core/res/res/values-mn-rMN/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Үйлчилгээг хайж байна…"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi Calling"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi-аар дуудлага хийх болон мессеж илгээхээр бол эхлээд оператороосоо энэ төхөөрөмжийг тохируулж өгөхийг хүсээрэй. Дараа нь Тохиргооноос Wi-Fi дуудлага хийх үйлдлийг асаагаарай."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Операторт бүртгүүлэх"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi Дуудлага"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Идэвхгүй"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi илүү эрхэмлэдэг"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Үүрэн сүлжээг илүү эрхэмлэдэг"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Цагны сан дүүрсэн. Зай чөлөөлөх бол зарим файлыг устгана уу."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Телевизийн санах ой дүүрсэн байна. Зай гаргахын тулд зарим файлыг устгана уу."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Утасны сан дүүрсэн. Зай чөлөөлөх бол зарим файлыг устгана уу."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Сүлжээ хянагдаж байж болзошгүй"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Сертификатын эрхийг суулгасан</item>
+      <item quantity="one">Сертификатын эрхийг суулгасан</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Тодорхойгүй гуравдагч талаас"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Таны ажлын мэдээллийн администратороос"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g>-с"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Согог репорт авах"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Энэ таны төхөөрөмжийн одоогийн статусын талаарх мэдээллийг цуглуулах ба имэйл мессеж болгон илгээнэ. Алдааны мэдэгдлээс эхэлж илгээхэд бэлэн болоход хэсэг хугацаа зарцуулагдана тэвчээртэй байна уу."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Интерактив тайлан"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Ихэнх тохиолдолд үүнийг хэрэглэнэ үү. Энэ нь танд тайлангийн явцыг хянах болон асуудлын талаар дэлгэрэнгүйг мэдэх боломж олгоно. Таны бага ашигладаг, тайлагнахад хугацаа их шаарддаг зарим хэсгийг алгана."</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"Үүнийг ихэнх тохиолдолд ашиглана уу. Энэ нь танд тайлангийн явцыг хянах, асуудлын талаар дэлгэрэнгүй мэдээлэл оруулах болон дэлгэцийн агшин авахыг зөвшөөрнө. Мөн тайлагнахад урт хугацаа шаарддаг таны бага ашигладаг зарим хэсгийг алгасах болно."</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Бүрэн тайлан"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Таны төхөөрөмж хариу үйлдэл үзүүлэхгүй байх, хэт удаан байх эсвэл танд тайлангийн бүх хэсэг хэрэгтэй үед ситемийн оролцоог хамгийн бага байлгах энэ сонголтыг ашиглана уу. Энэ нь дэлгэцийн зураг авах, эсвэл дэлгэрэнгүй мэдээлэлд хандахыг зөвшөөрөхгүй."</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"Таны төхөөрөмж хариу үзүүлэхгүй, эсвэл хэт удаан байх, танд тайлангийн бүх хэсэг шаардлагатай бол системийн оролцоог хамгийн бага байлгах энэ сонголтыг ашиглана уу. Дэлгэрэнгүй мэдээлэл нэмэх болон нэмэлт дэлгэцийн агшин авахыг зөвшөөрөхгүй."</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Алдааны тайлангийн дэлгэцийн зургийг <xliff:g id="NUMBER_1">%d</xliff:g> секундад авна.</item>
       <item quantity="one">Алдааны тайлангийн дэлгэцийн зургийг <xliff:g id="NUMBER_0">%d</xliff:g> секундад авна.</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> цаг</item>
       <item quantity="one">1 цаг</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"одоо"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Видео алдаа"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Энэ видео энэ төхөөрөмж дээр урсгалаар гарч чадахгүй."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Энэ видеог тоглуулах боломжгүй."</string>
@@ -893,16 +909,25 @@
     <string name="capital_off" msgid="6815870386972805832">"Идэвхгүй"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Үйлдлийг дуусгах"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s ашиглан үйлдлийг гүйцээх"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Үйлдлийг дуусгах"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Нээх"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s ашиглан нээх"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Нээх"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Засварлах"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s ашиглан засварлах"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Засах"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Хуваалцах"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s ашиглан хуваалцах"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Хуваалцах"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Ашиглан илгээх"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s-г ашиглан илгээх"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Илгээх"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Үндсэн апп-г сонгох"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$s-г Үндсэн-р ашиглах"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Зураг авах"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Дараахаар зураг авах"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s-р зураг авах"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Зураг авах"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Энэ ажиллагааг үндсэн болгох."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Өөр апп ашиглах"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Систем тохиргоо &gt; Апп &gt; Татаж авсан хэсгийн үндсэн утгуудыг цэвэрлэх"</string>
@@ -1460,7 +1485,7 @@
     <string name="select_year" msgid="7952052866994196170">"Жилийг сонгоно уу"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> устсан"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Ажлын <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Энэ дэлгэцийг цуцлахын тулд Буцах болон Тойм-д зэрэг хүрч барина."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Энэ дэлгэцийг цуцлахын тулд Буцах товчлуурыг дараад, хүлээнэ үү."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Энэ дэлгэцийг цуцлахын тулд Тойм харагдацанд хүрч барина."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"App-ыг тусгайлан тэмдэглэсэн байна: Энэ төхөөрөмж дээр тусгайлан тэмдэглэсэн сонголтыг устгах боломжгүй."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Дэлгэцийг тогтоосон"</string>
@@ -1472,6 +1497,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Танай админ шинэчилсэн"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Таны админ устгасан байна"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Батарей хадгалах функц нь таны төхөөрөмжийн цэнэгийг хадгалахын тулд гүйцэтгэлийг багасгаж, чичрэлтийг бууруулж, байршлын үйлчилгээнүүд болон бусад өгөгдлийн хэмжээг багасгадаг юм. И-мэйл, мессеж болон бусад синхрон хийдэг апликейшнүүд дараа дахин нээгдэх хүртлээ автоматаар шинэчлэлт хийхгүй.\n\nМөн батарей хадгалах функц нь таныг төхөөрөмжөө цэнэглэх үед автоматаар унтрах юм."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Дата ашиглалтыг багасгахын тулд дата хэмнэгч нь зарим апп-г өгөгдлийг дэвсгэрт илгээх болон авахаас сэргийлдэг. Таны одоогийн ашиглаж буй апп нь өгөгдөлд хандах боломжтой хэдий ч цөөн үйлдэл хийнэ. Жишээлбэл зураг харахын тулд та товших шаардлагатай болно."</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"Өгөгдөл хамгаалагчийг асаах уу?"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"Асаах"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other"> %1$d минутын турш ( <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> хүртэл)</item>
       <item quantity="one">нэг минутын турш (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> хүртэл)</item>
diff --git a/core/res/res/values-mr-rIN/strings.xml b/core/res/res/values-mr-rIN/strings.xml
index 5dc9721..b41defb 100644
--- a/core/res/res/values-mr-rIN/strings.xml
+++ b/core/res/res/values-mr-rIN/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"सेवा शोधत आहे"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"वाय-फाय कॉलिंग"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"वाय-फायवरून कॉल करण्यासाठी आणि संदेश पाठविण्यासाठी, प्रथम आपल्या वाहकास ही सेवा सेट करण्यास सांगा. नंतर सेटिंग्जमधून पुन्हा वाय-फाय कॉलिंग चालू करा."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"आपल्या वाहकासह नोंदणी करा"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s वाय-फाय कॉलिंग"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"बंद"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"वाय-फाय प्राधान्यकृत"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"सेल्युलर प्राधान्यकृत"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"पाहण्याचे संचयन पूर्ण भरले आहे. स्थान मोकळे करण्यासाठी काही फायली हटवा."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"टीव्ही संचयन भरले आहे. स्थान मोकळे करण्यासाठी काही फायली हटवा."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"फोन संचयन पूर्ण भरले आहे. स्थान मोकळे करण्यासाठी काही फायली हटवा."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"नेटवर्कचे परीक्षण केले जाऊ शकते"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">प्रमाणपत्र अधिकार स्थापित केला</item>
+      <item quantity="other">प्रमाणपत्र अधिकार स्थापित केले</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"एका अज्ञात तृतीय पक्षाद्वारे"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"आपल्या कार्य प्रोफाईल प्रशासकाकडून"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> द्वारे"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"दोष अहवाल घ्या"</string>
     <string name="bugreport_message" msgid="398447048750350456">"ई-मेल संदेश म्हणून पाठविण्यासाठी, हे आपल्या वर्तमान डिव्हाइस स्थितीविषयी माहिती संकलित करेल. दोष अहवाल प्रारंभ करण्यापासून तो पाठविण्यापर्यंत थोडा वेळ लागेल; कृपया धीर धरा."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"परस्परसंवादी अहवाल"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"बहुतांश प्रसंगांमध्‍ये याचा वापर करा. ते आपल्‍याला अहवालाच्या प्रगतीचा मागोवा घेण्‍याची आणि समस्येविषयी अधिक तपशील प्रविष्‍ट करण्‍याची अनुमती देतात. ते अहवाल देण्‍यासाठी बराच वेळ घेणार्‍या कमी वापरलेल्या विभागांना कदाचित वगळेल."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"संपूर्ण अहवाल"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"आपले डिव्‍हाइस प्रतिसाद देत नाही किंवा खूप धीमे होते किंवा आपल्‍याला सर्व अहवाल विभागांची आवश्‍यकता असते तेव्‍हा कमीत कमी सिस्टीम हस्तक्षेपासाठी या पर्यायाचा वापर करा. स्क्रीनशॉट घेत नाही किंवा आपल्‍याला अधिक तपशील प्रविष्‍ट करण्‍याची अनुमती देत नाही."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">दोष अहवालासाठी <xliff:g id="NUMBER_1">%d</xliff:g> सेकंदामध्‍ये स्क्रीनशॉट घेत आहे.</item>
       <item quantity="other">दोष अहवालासाठी <xliff:g id="NUMBER_1">%d</xliff:g> सेकंदांमध्‍ये स्क्रीनशॉट घेत आहे.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> तास</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> तास</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"व्हिडिओ समस्या"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"या डिव्हाइसवर प्रवाहित करण्यासाठी हा व्हिडिओ वैध नाही."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"हा व्हिडिओ प्ले करू शकत नाही."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"बंद"</string>
     <string name="whichApplication" msgid="4533185947064773386">"याचा वापर करून क्रिया पूर्ण करा"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s वापरून क्रिया पूर्ण करा"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"क्रिया पूर्ण झाली"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"यासह उघडा"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s सह उघडा"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"उघडा"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"सह संपादित करा"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s सह संपादित करा"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"संपादित करा"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"यांच्यासह सामायिक करा"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s सह सामायिक करा"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"सामायिक करा"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"वापरून पाठवा"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s वापरून पाठवा"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"पाठवा"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"मुख्‍यपृष्‍ठ अ‍ॅप निवडा"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"मुख्यपृष्ठ म्हणून %1$s वापरा"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"प्रतिमा कॅप्चर करा"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"यासह प्रतिमा कॅप्चर करा"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s सह प्रतिमा कॅप्चर करा"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"प्रतिमा कॅप्चर करा"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"या क्रियेसाठी डीफॉल्‍टनुसार वापरा."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"एक भिन्न अ‍ॅप वापरा"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"डाउनलोड केलेल्या सिस्टीम सेटिंग्ज &gt; Apps &gt; मधील डीफॉल्ट साफ करा."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"वर्ष निवडा"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> हटविली"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"कार्य <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"ही स्क्रीन अनपिन करण्यासाठी, एकाच वेळी परत आणि विहंगावलोकनास स्पर्श करा आणि धरून ठेवा."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"ही स्क्रीन अनपिन करण्यासाठी, परत ला स्पर्श करा आणि धरून ठेवा."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ही स्क्रीन अनपिन करण्यासाठी, विहंगावलोकनास स्पर्श करा आणि धरून ठेवा."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"अॅप पिन केलेला आहे: या डिव्हाइसवर अनपिन करण्यास अनुमती नाही."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"स्क्रीन पिन केली"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"आपल्या प्रशासकाद्वारे अद्यतनित केले"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"आपल्या प्रशासकाद्वारे हटविले आहे"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"बॅटरीचे आयुष्य सुधारित करण्‍यात मदत करण्यासाठी, बॅटरी बचतकर्ता आपल्या डिव्हाइसचे कार्यप्रदर्शन कमी करतो आणि कंपन, स्थान सेवा आणि बराच पार्श्वभूमी डेटा मर्यादित करतो. संकालनावर अवलंबून असणारे ईमेल, संदेशन आणि इतर अ‍ॅप्स आपण उघडल्याशिवाय अद्यतनित होऊ शकत नाहीत.\n\nआपले डिव्हाइस चार्ज होत असते तेव्हा बॅटरी बचतकर्ता स्वयंचलितपणे बंद होतो."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"डेटा वापर कमी करण्यात मदत करण्यासाठी, डेटा सर्व्हर काही अॅप्सना पार्श्वभूमीमध्ये डेटा पाठविण्यास किंवा प्राप्त करण्यास प्रतिबंधित करतो. आपण सध्या वापरत असलेला अॅप डेटामध्ये प्रवेश करू शकतो परंतु तसे तो खूप कमी वेळा करू शकतो. याचा अर्थ, उदाहरणार्थ, आपण प्रतिमा टॅप करेपर्यंत त्या प्रदर्शित करणार नाहीत असा असू शकतो."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d मिनिटासाठी (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> पर्यंत)</item>
       <item quantity="other">%1$d मिनिटांसाठी (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> पर्यंत)</item>
diff --git a/core/res/res/values-ms-rMY/strings.xml b/core/res/res/values-ms-rMY/strings.xml
index ced967b..745e26d 100644
--- a/core/res/res/values-ms-rMY/strings.xml
+++ b/core/res/res/values-ms-rMY/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Mencari Perkhidmatan"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Panggilan Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Untuk membuat panggilan dan menghantar mesej melalui Wi-Fi, mula-mula minta pembawa anda untuk menyediakan perkhidmatan ini. Kemudian hidupkan panggilan Wi-Fi semula daripada Tetapan."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Daftar dengan pembawa anda"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Panggilan Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Mati"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi diutamakan"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Selular diutamakan"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Storan tontonan penuh. Padamkan beberapa fail untuk mengosongkan ruang."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Storan TV penuh. Padam beberapa fail untuk mengosongkan ruang."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Storan telefon penuh. Padamkan beberapa fail untuk mengosongkan ruang."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Rangkaian mungkin dipantau"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Sijil kuasa dipasang</item>
+      <item quantity="one">Sijil kuasa dipasang</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Oleh pihak ketiga yang tidak diketahui"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Oleh pentadbir profil kerja anda"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Oleh <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Ambil laporan pepijat"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Ini akan mengumpul maklumat tentang keadaan peranti semasa anda untuk dihantarkan sebagai mesej e-mel. Harap bersabar, mungkin perlu sedikit masa untuk memulakan laporan sehingga siap untuk dihantar."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Laporan interaktif"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Gunakan laporan ini dalam kebanyakan keadaan. Anda boleh menjejak kemajuan dan memasukkan butiran lanjut tentang masalah tersebut. Laporan ini mungkin meninggalkan beberapa bahagian yang kurang digunakan, yang mengambil masa lama untuk dilaporkan."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Laporan penuh"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Untuk gangguan sistem yang minimum, gunakan pilihan ini jika peranti tidak responsif, terlalu perlahan atau anda memerlukan semua bahagian. Tidak mengambil tangkapan skrin dan tidak boleh memasukkan butiran lanjut."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Mengambil tangkapan skrin untuk laporan pepijat dalam masa <xliff:g id="NUMBER_1">%d</xliff:g> saat.</item>
       <item quantity="one">Mengambil tangkapan skrin untuk laporan pepijat dalam masa <xliff:g id="NUMBER_0">%d</xliff:g> saat.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> jam</item>
       <item quantity="one">1 jam</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Masalah video"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Maaf, video ini tidak sah untuk penstriman ke peranti ini."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Tidak dapat mainkan video ini."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"MATIKAN"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Selesaikan tindakan menggunakan"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Selesaikan tindakan menggunakan %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Selesaikan tindakan"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Buka dengan"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Buka dengan %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Buka"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Edit dengan"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Edit dengan %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Edit"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Kongsi dengan"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Kongsi dengan %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Kongsi"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Hantar menggunakan"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Hantar menggunakan %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Hantar"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Pilih apl Laman Utama"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Gunakan %1$s sebagai Laman Utama"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Tangkap imej"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Tangkap imej menggunakan"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Tangkap imej menggunakan %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Tangkap imej"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Gunakannya secara lalai untuk tindakan ini."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Gunakan apl lain"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Padam bersih lalai dalam tetapan Sistem &gt; Apl &gt; Dimuat turun."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Pilih tahun"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> dipadamkan"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Kerja <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Untuk menyahsemat skrin ini, sentuh dan tahan Kembali serta Ikhtisar pada masa yang sama."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Untuk menyahsemat skrin ini, sentuh dan tahan Kembali."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Untuk menyahsemat skrin ini, sentuh dan tahan Ikhtisar."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Apl disemat: Nyahsemat tidak dibenarkan pada peranti ini."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Skrin disemat"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Dikemas kini oleh pentadbir anda"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Dipadamkan oleh pentadbir anda"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Untuk membantu memperbaik hayat bateri, penjimat bateri mengurangkan prestasi peranti anda dan mengehadkan getaran, perkhidmatan lokasi dan kebanyakan data latar belakang. E-mel, pemesejan dan apl lain yang bergantung kepada penyegerakan mungkin tidak mengemas kini, melainkan anda membuka apl itu.\n\nPenjimat bateri dimatikan secara automatik semasa peranti anda sedang dicas."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Untuk membantu mengurangkan penggunaan data, Penjimat Data menghalang sesetengah apl daripada menghantar atau menerima data di latar. Apl yang sedang digunakan boleh mengakses data tetapi mungkin tidak secara kerap. Perkara ini mungkin bermaksud bahawa imej tidak dipaparkan sehingga anda mengetik pada imej itu, contohnya."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Selama %1$d minit (sehingga <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Selama satu minit (sehingga <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-my-rMM/strings.xml b/core/res/res/values-my-rMM/strings.xml
index 4e88bb4..fb6a95d 100644
--- a/core/res/res/values-my-rMM/strings.xml
+++ b/core/res/res/values-my-rMM/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"ဆားဗစ်အားရှာဖွေနေသည်"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"ဝိုင်ဖိုင် ခေါ်ဆိုမှု"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"ဝိုင်ဖိုင်သုံး၍ ဖုန်းခေါ်ဆိုရန်နှင့် မက်စေ့ဂျ်များပို့ရန်၊ ဤဝန်ဆောင်မှုအား စတင်သုံးနိုင်ရန်အတွက် သင့် မိုဘိုင်းဝန်ဆောင်မှုအား ဦးစွာမေးမြန်းပါ။ ထို့နောက် ဆက်တင်မှတဆင့် ဝိုင်ဖိုင် ခေါ်ဆိုမှုအား ထပ်ဖွင့်ပါ။"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"သင့် မိုဘိုင်းဝန်ဆောင်မှုဖြင့် မှတ်ပုံတင်ရန်"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s ဝိုင်ဖိုင် ခေါ်ဆိုမှု"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"ပိတ်ထားရသည်"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"ဝိုင်ဖိုင်အား ပိုနှစ်သက်သော"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"ဆယ်လူလာအား ပိုနှစ်သက်သော"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"သိုလှောင်ခန်း နေရာ ပြည့်နေပြီ။ နေရာ လွတ်လာရန် ဖိုင် အချို့ကို ဖျက်ပါ။"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"တီဗွီ၏ သိုလှောင်ရုံ ပြည့်နေ၏။ နေရာလွတ်ရရန် ဖိုင်တစ်ချို့အား ဖျက်ပစ်ပါ။"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ဖုန်းတွင် သိမ်းဆည်းသော နေရာ ကုန်သွားပါပြီ။ တချို့ ဖိုင်များ ဖျက်စီးခြင်းဖြင့် နေရာလွတ် ပြုလုပ်ပါ"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"ကွန်ရက်ကို စောင့်ကြည့်စစ်ဆေးခံရနိုင်သည်"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">အသိအမှတ်ပြုခွင့်များကို ထည့်သွင်းပြီးပါပြီ</item>
+      <item quantity="one">အသိအမှတ်ပြုခွင့်ကို ထည့်သွင်းပြီးပါပြီ</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"အမျိုးအမည်မသိ တတိယ ပါတီဖြင့်"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"သင့်အလုပ်ပရိုဖိုင် စီမံခန့်ခွဲသူမှ"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> ဖြင့်"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"အမှားရှာဖွေပြင်ဆင်မှုမှတ်တမ်းအား ယူရန်"</string>
     <string name="bugreport_message" msgid="398447048750350456">"သင့်ရဲ့ လက်ရှိ စက်အခြေအနေ အချက်အလက်များကို အီးမေးလ် အနေဖြင့် ပေးပို့ရန် စုဆောင်းပါမည်။ အမှားရှာဖွေပြင်ဆင်မှုမှတ်တမ်းမှ ပေးပို့ရန် အသင့်ဖြစ်သည်အထိ အချိန် အနည်းငယ်ကြာမြင့်မှာ ဖြစ်သဖြင့် သည်းခံပြီး စောင့်ပါရန်"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"လက်ငင်းတုံ့ပြန်နိုင်သည့် အစီရင်ခံချက်"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"အများအားဖြင့် ၎င်းကိုအသုံးပြုပါ။ ၎င်းသည် အစီရင်ခံချက်ကို ခြေရာခံခွင့်ပေးပြီး ပြဿနာအကြောင်း အသေးစိတ်များကို ထည့်ခွင့်ပြုပါသည်။ အစီရင်ခံရန်ကြာသည့် သိပ်မသုံးသော ကဏ္ဍများကို ချန်ထားခဲ့နိုင်ပါသည်။"</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"အခြေအနေတော်တော်များများတွင် ၎င်းကိုအသုံးပြုပါ။ ၎င်းသည် အစီရင်ခံစာကို မှတ်သားခြင်း၊ ပြဿနာအကြောင်း နောက်ထပ်အသေးစိတ်များကို ထည့်သွင်းခြင်းနှင့် မျက်နှာပြင်ပုံဖမ်းယူခြင်းတို့ကို ပြုလုပ်ခွင့်ပေးပါသည်။ အစီရင်ခံရန် အလွန်ကြာပြီး သိပ်အသုံးမပြုသည့်အပိုင်းကို ချန်ခဲ့နိုင်ပါသည်။"</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"အစီရင်ခံချက်အပြည့်"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"သင့်စက်ပစ္စည်းမတုံ့ပြန်ချိန် သို့မဟုတ် အလွန်နှေးကွေးချိန်၊ သို့မဟုတ် အစီရင်ခံမှုကဏ္ဍများအားလုံး လိုအပ်သည့်အချိန်တွင် စနစ်ကြားဝင်စွတ်ဖက်မှုအနည်းဆုံး ဤရွေးချယ်မှုကိုအသုံးပြုပါ။ မျက်နှာပြင်ဓာတ်ပုံ မရိုက်ပါ သို့မဟုတ် သင့်ကိုနောက်ထပ် အသေးစိတ်များထည့်ရန် ခွင့်မပြုပါ။"</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"သင့်စက်ပစ္စည်းတုံ့ပြန်မှု မရှိချိန် သို့မဟုတ် အလွန်နှေးကွေးချိန် သို့မဟုတ် အစီရင်ခံမှုကဏ္ဍများအားလုံး လိုအပ်သည့်အချိန်တွင် စနစ်ကြားဝင်စွက်ဖက်မှုအနည်းဆုံးဖြစ်သည့် ဤရွေးချယ်မှုကို အသုံးပြုပါ။ မျက်နှာပြင်ပုံဖမ်းမှု နောက်ထက်ရယူခြင်းနှင့် နောက်ထပ်အသေးစိတ်များ ထည့်သွင်းခြင်းတို့ကို ခွင့်မပြုပါ။"</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other"><xliff:g id="NUMBER_1">%d</xliff:g> စက္ကန့်အတွင်း ချွတ်ယွင်းချက် အစီရင်ခံရန်အတွက် မျက်နှာပြင်ဓာတ်ပုံ ရိုက်ပါမည်။</item>
       <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> စက္ကန့်အတွင်း ချွတ်ယွင်းချက် အစီရင်ခံရန်အတွက် မျက်နှာပြင်ဓာတ်ပုံ ရိုက်ပါမည်။</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> နာရီ</item>
       <item quantity="one"> 1 နာရီ</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"ယခု"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"ဗီဒီယို ပြဿနာ"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"ဒီဗိဒီယိုမှာ ဒီကိရိယာ ပေါ်မှာ ဖွင့်ကြည့်၍ မရနိုင်ပါ။"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"ဒီဗီဒီယိုကို ပြသလို့ မရပါ"</string>
@@ -893,16 +909,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ပိတ်"</string>
     <string name="whichApplication" msgid="4533185947064773386">"အသုံးပြု၍ ဆောင်ရွက်မှုအားပြီးဆုံးစေခြင်း"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s ကို သုံးပြီး လုပ်ဆောင်ချက် ပြီးဆုံးပါစေ"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"လုပ်ဆောင်ချက်ကို အပြီးသတ်ပါ"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"...ဖြင့် ဖွင့်မည်"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s ဖြင့် ဖွင့်မည်"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"ဖွင့်ပါ"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"...နှင့် တည်းဖြတ်ရန်"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s နှင့် တည်းဖြတ်ရန်"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"တည်းဖြတ်ပါ"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"...နှင့် မျှဝေရန်"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$sနှင့် မျှဝေရန်"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"မျှဝေပါ"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"ကိုအသုံးပြု၍ ပို့ပါ"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s ကိုအသုံးပြု၍ ပို့ပါ"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"ပို့ပါ"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"ပင်မ appကို ရွေးပါ"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$sကို ပင်မအဖြစ် သုံးပါ"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"ဓာတ်ပုံရိုက်ပါ"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"ဖြင့် ဓာတ်ပုံရိုက်ပါ"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s ဖြင့် ဓာတ်ပုံရိုက်ပါ"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"ဓာတ်ပုံရိုက်ပါ"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"ဤလှုပ်ရှားမှုအတွက် မူရင်းအတိုင်း အသုံးပြုပါ။"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"အခြား appကို သုံးပါ"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"စနစ် ဆက်တင် ထဲမှာ ပုံသေကို ရှင်းလိုက်ပါ &gt; Appများ &gt; ဒေါင်းလုဒ် လုပ်ပြီး။"</string>
@@ -1460,7 +1485,7 @@
     <string name="select_year" msgid="7952052866994196170">"ခုနှစ်ကို ရွေးပါ"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> ကို ဖျက်ပြီးပါပြီ"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"အလုပ် <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"ဒီမျက်နှာပြင် ပင်ထိုးမှုကို ဖြုတ်ရန်၊ နောက်သို့ နှင့် ခြုံကြည့်မှု ခလုတ်များကို တစ်ချိန်တည်း ထိကိုင်ထားပါ။"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"ဤဖန်သားပြင်ကို ပင်ဖြုတ်ရန် နောက်သို့ ကိုထိပြီး ဖိထားပါ။"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ဒီမျက်နှာပြင် ပင်ထိုးမှုကို ဖြုတ်ရန် ခြုံကြည့်မှု ခလုတ်ကို ထိကိုင်ထားပါ။"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Appကို ပင်ထိုးထားသည်။ ပင်ဖျက်ခြင်းကို ဒီစက်မှာ မရနိုင်ပါ။"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"မျက်နှာပြင်ကို ပင်ထိုးထား"</string>
@@ -1472,6 +1497,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"သင့်စီမံခန့်ခွဲသူမှ အဆင့်မြှင့်ထားပါသည်။"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"သင့် အက်ဒမင်အား ဖျက်ပစ်ရန်"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"ဘက်ထရီသက်တမ်း ကြာရှည်ခံရန်၊ ဘက်ထရီအားထိန်းသည် သင့်ကိရိယာ၏ ဆောင်ရွက်ချက်ကို  လျှော့ပေးပြီး တုန်ခါမှု၊ တည်နေရာဝန်ဆောင်မှုများနှင့်၊ နောက်ခံဒေတာအများစုကို ကန့်သတ်ပေး၏။ စင့်လုပ်ပေးရလေ့ရှိသည့် အီးမေး၊ စာပို့ခြင်းနှင့်၊ အခြားအပလီကေးရှင်းများကို ၎င်းတို့အား သင် ဖွင့်မှသာ အဆင့်မြှင့်မွမ်းမံမည်ဖြစ်၏။ \n\n ကိရိယာအား အားသွင်းနေစဉ် ဘက်ထရီအားထိန်းအား အလိုအလျောက် ပိတ်ထားသည်။"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"ဒေတာအသုံးပြုမှု လျှော့ချနိုင်ရန်၊ ဒေတာချွေတာမှုစနစ်သည် အက်ပ်များကို နောက်ခံတွင် ဒေတာများ ပို့ခြင်းနှင့် လက်ခံခြင်းများမရှိစေရန် ကာကွယ်ပေးပါသည်။ သင်ယခုအသုံးပြုနေသည့် အက်ပ်သည် ဒေတာအသုံးပြုနိုင်ပါသည်၊ သို့သော်လည်း လျှော့၍သုံးရပါလိမ့်မည်။ ဥပမာ၊ ပုံများကို သင်မတို့မချင်း ပေါ်လာမည် မဟုတ်ပါ။"</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"ဒေတာအသုံးပြုမှု ချွေတာမှုစနစ်ကို ဖွင့်မလား။"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"ဖွင့်ပါ"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d မိနစ်တွင် (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>အထိ)</item>
       <item quantity="one">တစ်မိနစ်တွင် (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> အထိ)</item>
diff --git a/core/res/res/values-nb/strings.xml b/core/res/res/values-nb/strings.xml
index ff28307..e0d8645 100644
--- a/core/res/res/values-nb/strings.xml
+++ b/core/res/res/values-nb/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Leter etter tjeneste"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi-anrop"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"For å ringe og sende meldinger over Wi-Fi må du først be operatøren om å konfigurere denne tjenesten. Deretter slår du på Wi-Fi-anrop igjen fra Innstillinger."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registrer deg hos operatøren din"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi-anrop"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Av"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi er foretrukket"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobil er foretrukket"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Klokkens lagringsplass er full. Slett filer for å frigjøre plass."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV-ens lagringsplass er full. Slett noen filer for å frigjøre mer plass."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Telefonlageret er fullt. Slett noen filer for å frigjøre lagringsplass."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Nettverket blir muligens overvåket"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Sertifiseringsinstansene er installert</item>
+      <item quantity="one">Sertifiseringsinstansen er installert</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Av en ukjent tredjepart"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"av administratoren for jobbprofilen din"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Av <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Utfør feilrapport"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Informasjon om tilstanden til enheten din samles inn og sendes som en e-post. Det tar litt tid fra du starter feilrapporten til e-posten er klar, så vær tålmodig."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktiv rapport"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Bruk dette alternativet i de fleste tilfeller. Da kan du spore fremgangen for rapporten samt skrive inn flere detaljer om problemet. Noen deler som tar lang tid å behandle, blir kanskje utelatt."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Fullstendig rapport"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Bruk dette alternativet for minst mulig forstyrrelser på systemet når enheten din er treg eller ikke svarer, eller når du trenger alle rapportdelene. Det tas ikke noen skjermdump, og du kan ikke legge til flere detaljer."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Tar skjermdump for feilrapporten om <xliff:g id="NUMBER_1">%d</xliff:g> sekunder.</item>
       <item quantity="one">Tar skjermdump for feilrapporten om <xliff:g id="NUMBER_0">%d</xliff:g> sekund.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> timer</item>
       <item quantity="one">1 time</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Videoproblem"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Denne videoen er ikke gyldig for direkteavspilling på enheten."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Kan ikke spille av denne videoen."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"Av"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Fullfør med"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Fullfør handlingen med %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Fullfør handlingen"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Åpne med"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Åpne med %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Åpne"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Rediger med"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Rediger med %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Endre"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Del med"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Del med %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Del"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Send via"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Send via %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Send"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Velg en startsideapp"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Bruk %1$s som startside"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Ta bilde"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Ta bilde med"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Ta bilde med %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Ta bilde"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Bruk som standardvalg."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Bruk en annen app"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Fjern app angitt som standard i systeminnstillingene &gt; Apper &gt; Nedlastet."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Velg året"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> er slettet"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Jobb-<xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Hvis du vil avslutte én-appsmodusen for denne skjermen, trykker og holder du på Tilbake og Oversikt samtidig."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"For å løsne denne skjermen, trykk og hold inne Tilbake."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Hvis du vil avslutte én-appsmodusen for denne skjermen, trykker og holder du på Oversikt."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Appen er festet – du kan ikke løsne apper på denne enheten."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Skjermen er festet"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Oppdatert av administratoren"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Slettet av administratoren"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"For å forlenge batterilevetiden reduserer batterispareren ytelsen til enheten din og begrenser vibrering, posisjonstjenester og mesteparten av bakgrunnsdataene. E-post, sending av meldinger og andre apper som er avhengig av synkronisering, oppdateres kanskje ikke med mindre du åpner dem.\n\nBatterisparing slås av automatisk når enheten lader."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"For å bidra til å redusere databruk blir enkelte apper hindret av Datasparing i å sende eller motta data i bakgrunnen. Apper du bruker for øyeblikket har tilgang til data, men utnytter ikke dette like ofte. Dette betyr for eksempel at bilder ikke vises før du trykker på dem."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">I %1$d minutter (til <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">I 1 minutt (til <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-ne-rNP/strings.xml b/core/res/res/values-ne-rNP/strings.xml
index 878eff9f..cb5971d 100644
--- a/core/res/res/values-ne-rNP/strings.xml
+++ b/core/res/res/values-ne-rNP/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"सेवाको खोजी गर्दै…"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi कलिङ"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi बाट कल गर्न र सन्देशहरू पठाउन, सबभन्दा पहिला यो सेवा सेटअप गर्न तपाईँको वाहकलाई भन्नुहोस्। त्यसपछि फेरि सेटिङहरूबाट Wi-Fi कलिङ सक्रिय पार्नुहोस्।"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"तपाईँको वाहकसँग दर्ता गर्नुहोस्"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi कलिङ"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"निष्क्रिय"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi मनपराइयो"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"सेलुलर मनपराइयो"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"भण्डारण भरिएको छ हेर्नुहोस्। ठाउँ खाली गर्न केही फाइलहरू मेटाउनुहोस्।"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV भण्डारण पूर्ण छ। ठाउँ खाली गर्नको लागि केही फाइलहरू मेट्नुहोस्।"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"फोन भण्डारण भरिएको छ! ठाउँ खाली गर्नको लागि केही फाइलहरू मेटाउनुहोस्।"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"सञ्जाल अनुगमित हुन सक्छ"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">प्रमाणपत्रका अख्तियारीहरूलाई स्थापना गरियो</item>
+      <item quantity="one">प्रमाणपत्रको अख्तियारीलाई स्थापना गरियो</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"अज्ञात तेस्रो पक्ष द्वारा"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"तपाईँको काम प्रोफाइल प्रशासक द्वारा"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> द्वारा"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"बग रिपोर्ट लिनुहोस्"</string>
     <string name="bugreport_message" msgid="398447048750350456">"एउटा इमेल सन्देशको रूपमा पठाउनलाई यसले तपाईँको हालैको उपकरणको अवस्थाको बारेमा सूचना जम्मा गर्ने छ। बग रिपोर्ट सुरु गरेदेखि पठाउन तयार नभएसम्म यसले केही समय लिन्छ; कृपया धैर्य गर्नुहोस्।"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"अन्तरक्रियामूलक रिपोर्ट"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"यसलाई बढी भन्दा बढी परिस्थितिहरूमा प्रयोग गर्नुहोस्।यसले तपाईँलाई रिपोर्टको प्रगति ट्र्याक गर्नका साथै समस्याका बारे थप विवरणहरू प्रविष्ट गर्न अनुमति दिन्छ।यसले रिपोर्ट गर्न लामो समय लिने केही कम्ती प्रयोग हुने खण्डहरूलाई मेटाउन सक्छ।"</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"बढी भन्दा बढी परिस्थितिहरूमा यसको प्रयोग गर्नुहोस्। यसले तपाईँलाई रिपोर्टको प्रगति ट्र्याक गर्न, समस्याका बारे थप विवरणहरू प्रविष्ट गर्न र स्क्रिनसटहरू लिन अनुमति दिन्छ। यसले रिपोर्ट गर्न लामो समय लिने केही कम प्रयोग हुने खण्डहरूलाई समावेश नगर्न सक्छ।"</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"पूर्ण रिपोर्ट"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"तपाईँको यन्त्र अनुत्तरदायी वा धेरै सुस्त हुँदा वा तपाईँलाई सबै रिपोर्ट खण्डहरूको आवश्यक पर्दा न्यूनतम प्रणाली हस्तक्षेपको लागि यो विकल्प प्रयोग गर्नुहोस्। स्क्रिनशट लिँदैन वा थप विवरणहरू प्रविष्ट गर्न तपाईँलाई अनुमति दिँदैन।"</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"तपाईँको यन्त्रले प्रतिक्रिया नदिँदा वा धेरै सुस्त चल्दा वा तपाईँलाई सबै रिपोर्ट सम्बन्धी खण्डहरूको आवश्यकता पर्दा प्रणालीमा न्यूनतम हस्तक्षेपका लागि यस विकल्पको प्रयोग गर्नुहोस्। यसले तपाईँलाई थप विवरणहरू प्रविष्ट गर्न वा स्क्रिनसटहरू लिन अनुमति दिँदैन।"</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other"> बग रिपोर्टको लागि <xliff:g id="NUMBER_1">%d</xliff:g> सेकेन्डमा स्क्रिनशट लिँदै।</item>
       <item quantity="one"> बग रिपोर्टको लागि <xliff:g id="NUMBER_0">%d</xliff:g> सेकेन्डमा स्क्रिनशट लिँदै।</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> घण्टा</item>
       <item quantity="one">1 घण्टा</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"अहिले"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"भिडियो समस्या"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"यो भिडियो यस उपकरणको लागि स्ट्रिमिङ गर्न मान्य छैन।"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"यो भिडियो चलाउन सक्दैन।"</string>
@@ -895,20 +911,29 @@
     <!-- String.format failed for translation -->
     <!-- no translation found for whichApplicationNamed (8260158865936942783) -->
     <skip />
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"पूर्ण कारबाही"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"साथमा खोल्नुहोस्"</string>
     <!-- String.format failed for translation -->
     <!-- no translation found for whichViewApplicationNamed (2286418824011249620) -->
     <skip />
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"खोल्नुहोस्"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"सँग सम्पादन गर्नुहोस्"</string>
     <!-- String.format failed for translation -->
     <!-- no translation found for whichEditApplicationNamed (1775815530156447790) -->
     <skip />
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"सम्पादन गर्नुहोस्"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"साझेदारी गर्नुहोस्..."</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s सँग साझेदारी गर्नुहोस्"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"साझेदारी गर्नुहोस्"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"यसको प्रयोग गरी पठाउनुहोस्"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s को प्रयोग गरी पठाउनुहोस्"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"पठाउनुहोस्"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"गृह अनुप्रयोग चयन गर्नुहोस्"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$s लाई गृहको रूपमा प्रयोग गर्नुहोस्"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"छविलाई कैंद गर्नुहोस्"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"यस मार्फत छविलाई कैंद गर्नुहोस्"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s मार्फत छविलाई कैंद गर्नुहोस्"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"छविलाई कैंद गर्नुहोस्"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"यस कार्यको लागि पूर्वनिर्धारितबाट प्रयोग गर्नुहोस्।"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"फरक अनुप्रयोग प्रयोग गर्नुहोस्"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"प्रणाली सेटिङहरूमा पूर्वनिर्धारितलाई हटाउनुहोस् &gt; अनुप्रयोगहरू &gt; डाउनलोड।"</string>
@@ -1466,7 +1491,7 @@
     <string name="select_year" msgid="7952052866994196170">"वर्ष चयन गर्नुहोस्"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> हटाइयो"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"कार्य <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"यस पर्दालाई अनपिन गर्न एकै समय फिर्ता र सारांशलाई छोई पक्डिनुहोस्।"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"यस स्क्रिनलाई अनपिन गर्न पछाडि बटनलाई छोइराख्नुहोस्।"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"यस पर्दालाई अनपिन गर्न सारांशलाई छुनुहोस् र पक्डनुहोस्।"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"अनुप्रयोग पिन गरियो: यस यन्त्रमा अनपिन गर्ने अनुमति छैन।"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"स्क्रिन पिन गरियो"</string>
@@ -1478,6 +1503,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"तपाईँको प्रशासकद्वारा अद्यावधिक गरिएको"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"तपाईँको प्रशासकद्वारा हटाइएको"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"ब्याट्रीको आयु सुधार्न, ब्याट्री संरक्षकले तपाईँको यन्त्रको कार्यसम्पादन घटाउँछ र भाइब्रेसन, स्थान सेवा र बहुसंख्यक पृष्ठभूमि डेटा सीमित गर्दछ। इमेल, सन्देश, र अन्य अनुप्रयोगहरू जुन सिङ्कमा भर पर्छन् अद्यावधिक नहुन सक्छन् जबसम्म तपाईँ तिनीहरूलाई खोल्नुहुन्न\n\n ब्याट्री संरक्षक स्वत: निस्कृय हुन्छ जब तपाईँको यन्त्र चार्ज हुँदै हुन्छ।"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"डेटाको प्रयोगलाई कम गर्नमा मद्दतका लागि डेटा सर्भरले केही अनुप्रयोगहरूलाई पृष्ठभूमिमा डेटा पठाउन वा प्राप्त गर्नबाट रोक्दछ। तपाईँले हाल प्रयोग गरिरहनुभएको अनु्प्रयोगले डेटामाथि पहुँच राख्न सक्छ, तर त्यसले यो काम थोरै पटक गर्न सक्छ। उदाहरणका लागि यसको मतलब यो हुन सक्छ: तपाईँले छविहरूलाई ट्याप नगरेसम्म ती प्रदर्शन हुँदैनन्।"</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"डेटा सेभरलाई सक्रिय गर्ने हो?"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"सक्रिय गर्नुहोस्"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other"> %1$d मिनेटको लागि (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> सम्म)</item>
       <item quantity="one">एक मिनेटको लागि (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> सम्म)</item>
diff --git a/core/res/res/values-nl/strings.xml b/core/res/res/values-nl/strings.xml
index f76d185..d027f40 100644
--- a/core/res/res/values-nl/strings.xml
+++ b/core/res/res/values-nl/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Service zoeken"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Bellen via wifi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Als je wilt bellen en berichten wilt verzenden via wifi, moet je eerst je provider vragen deze service in te stellen. Schakel bellen via wifi vervolgens opnieuw in via \'Instellingen\'."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registreren bij je provider"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Bellen via wifi van %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Uit"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Voorkeur voor wifi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Voorkeur voor mobiel"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Horlogegeheugen is vol. Verwijder enkele bestanden om ruimte vrij te maken."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Tv-opslag is vol. Verwijder een aantal bestanden om ruimte vrij te maken."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Telefoongeheugen is vol. Verwijder enkele bestanden om ruimte vrij te maken."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Netwerk kan worden gecontroleerd"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Certificeringsinstanties geïnstalleerd</item>
+      <item quantity="one">Certificeringsinstantie geïnstalleerd</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Door een onbekende derde partij"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Door je werkprofielbeheerder"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Door <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Foutenrapport genereren"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Hiermee worden gegevens over de huidige status van je apparaat verzameld en als e-mail verzonden. Wanneer u een foutenrapport start, duurt het even voordat het kan worden verzonden. Even geduld alstublieft."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interactief rapport"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Gebruik deze optie in de meeste situaties. Hiermee kun je de voortgang van het rapport bijhouden en meer gegevens over het probleem opgeven. Mogelijk worden bepaalde minder vaak gebruikte gedeelten weggelaten (waarvoor het lang zou duren om een rapport te genereren)."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Volledig rapport"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Gebruik deze optie voor minimale systeemverstoring wanneer je apparaat niet reageert of te langzaam is, of wanneer je alle rapportgedeelten nodig hebt. Er wordt geen screenshot gemaakt en je kunt geen extra gegevens opgeven."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Er wordt over <xliff:g id="NUMBER_1">%d</xliff:g> seconden een screenshot gemaakt voor het bugrapport.</item>
       <item quantity="one">Er wordt over <xliff:g id="NUMBER_0">%d</xliff:g> seconde een screenshot gemaakt voor het bugrapport.</item>
@@ -271,7 +280,7 @@
     <string name="permdesc_statusBarService" msgid="716113660795976060">"Hiermee kan de app de statusbalk zijn."</string>
     <string name="permlab_expandStatusBar" msgid="1148198785937489264">"statusbalk uitvouwen/samenvouwen"</string>
     <string name="permdesc_expandStatusBar" msgid="6917549437129401132">"Hiermee kan de app de statusbalk uitvouwen of samenvouwen."</string>
-    <string name="permlab_install_shortcut" msgid="4279070216371564234">"Snelkoppelingen instellen"</string>
+    <string name="permlab_install_shortcut" msgid="4279070216371564234">"Snelle links instellen"</string>
     <string name="permdesc_install_shortcut" msgid="8341295916286736996">"Een app toestaan snelkoppelingen aan het startscherm toe te voegen zonder tussenkomst van de gebruiker."</string>
     <string name="permlab_uninstall_shortcut" msgid="4729634524044003699">"snelkoppelingen verwijderen"</string>
     <string name="permdesc_uninstall_shortcut" msgid="6745743474265057975">"De app toestaan snelkoppelingen van het startscherm te verwijderen zonder tussenkomst van de gebruiker."</string>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> uur</item>
       <item quantity="one">1 uur</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Probleem met video"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Deze video kan niet worden gestreamd naar dit apparaat."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Deze video kan niet worden afgespeeld."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"UIT"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Actie voltooien met"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Actie voltooien via %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Actie voltooien"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Openen met"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Openen met %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Openen"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Bewerken met"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Bewerken met %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Bewerken"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Delen met"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Delen met %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Delen"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Verzenden met"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Verzenden met %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Verzenden"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Een startschermapp selecteren"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$s gebruiken voor startscherm"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Afbeelding vastleggen"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Afbeelding vastleggen met"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Afbeelding vastleggen met %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Afbeelding vastleggen"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Standaard gebruiken voor deze actie."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Een andere app gebruiken"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Standaardinstelling wissen via Systeeminstellingen &gt; Apps &gt; Gedownload."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Jaar selecteren"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> verwijderd"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Werk <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Blijf \'Terug\' en \'Overzicht\' tegelijk aanraken om dit scherm los te maken."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Tik op Terug en houd vast om dit scherm los te maken."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Blijf \'Overzicht\' aanraken om dit scherm los te maken."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"App is vastgezet: losmaken is niet toegestaan op dit apparaat."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Scherm vastgezet"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Geüpdatet door je beheerder"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Verwijderd door je beheerder"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Accubesparing beperkt de prestaties van je apparaat, de trilstand, locatieservices en de meeste achtergrondgegevens om de gebruiksduur van de accu te verlengen.\n\nAccubesparing wordt automatisch uitgeschakeld terwijl je apparaat wordt opgeladen."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Databesparing beperkt het datagebruik door te voorkomen dat sommige apps gegevens verzenden of ontvangen op de achtergrond. Een app die je momenteel gebruikt, kan data gebruiken, maar minder vaak. Dit kan bijvoorbeeld betekenen dat afbeeldingen niet worden weergegeven totdat je hierop tikt."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d minuten (tot <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Eén minuut (tot <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-pa-rIN/strings.xml b/core/res/res/values-pa-rIN/strings.xml
index 26d5af9..5966227 100644
--- a/core/res/res/values-pa-rIN/strings.xml
+++ b/core/res/res/values-pa-rIN/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"ਸੇਵਾ ਦੀ ਖੋਜ ਕਰ ਰਿਹਾ ਹੈ"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi ਕਾਲਿੰਗ"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi ਤੇ ਕਾਲਾਂ ਕਰਨ ਅਤੇ ਸੁਨੇਹੇ ਭੇਜਣ ਲਈ, ਪਹਿਲਾਂ ਆਪਣੇ ਕੈਰੀਅਰ ਨੂੰ ਇਹ ਸੇਵਾ ਸੈਟ ਅਪ ਕਰਨ ਲਈ ਕਹੋ। ਫਿਰ ਸੈਟਿੰਗਾਂ ਵਿੱਚੋਂ Wi-Fi ਕਾਲਿੰਗ ਦੁਬਾਰਾ ਚਾਲੂ ਕਰੋ।"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"ਆਪਣੇ ਕੈਰੀਅਰ ਨਾਲ ਰਜਿਸਟਰ ਕਰੋ"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi ਕਾਲਿੰਗ"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"ਬੰਦ"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"ਤਰਜੀਹੀ Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"ਤਰਜੀਹੀ ਸੈਲਿਊਲਰ"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"ਘੜੀ ਸਟੋਰੇਜ ਪੂਰੀ ਭਰੀ ਹੈ। ਸਪੇਸ ਖਾਲੀ ਕਰਨ ਲਈ ਕੁਝ ਫਾਈਲਾਂ ਮਿਟਾਓ।"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV ਸਟੋਰੇਜ ਪੂਰੀ ਭਰੀ ਹੈ। ਸਪੇਸ ਖਾਲੀ ਕਰਨ ਲਈ ਕੁਝ ਫਾਈਲਾਂ ਮਿਟਾਓ।"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ਫੋਨ ਸਟੋਰੇਜ ਪੂਰੀ ਭਰੀ ਹੈ। ਸਪੇਸ ਖਾਲੀ ਕਰਨ ਲਈ ਕੁਝ ਫਾਈਲਾਂ ਮਿਟਾਓ।"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"ਨੈਟਵਰਕ ਦਾ ਨਿਰੀਖਣ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">ਪ੍ਰਮਾਣ-ਪੱਤਰ ਅਥਾਰਿਟੀਆਂ ਸਥਾਪਤ ਕੀਤੀਆਂ ਗਈਆਂ</item>
+      <item quantity="other">ਪ੍ਰਮਾਣ-ਪੱਤਰ ਅਥਾਰਿਟੀਆਂ ਸਥਾਪਤ ਕੀਤੀਆਂ ਗਈਆਂ</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"ਇੱਕ ਅਗਿਆਤ ਤੀਜੀ ਪਾਰਟੀ ਵੱਲੋਂ"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"ਤੁਹਾਡੇ ਕੰਮ ਪ੍ਰੋਫਾਈਲ ਪ੍ਰਬੰਧਕ ਵੱਲੋਂ"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> ਮੁਤਾਬਕ"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"ਬਗ ਰਿਪੋਰਟ ਲਓ"</string>
     <string name="bugreport_message" msgid="398447048750350456">"ਇਹ ਇੱਕ ਈ-ਮੇਲ ਸੁਨੇਹਾ ਭੇਜਣ ਲਈ, ਤੁਹਾਡੀ ਵਰਤਮਾਨ ਡਿਵਾਈਸ ਬਾਰੇ ਜਾਣਕਾਰੀ ਇਕੱਤਰ ਕਰੇਗਾ। ਬਗ ਰਿਪੋਰਟ ਸ਼ੁਰੂ ਕਰਨ ਵਿੱਚ ਥੋੜ੍ਹਾ ਸਮਾਂ ਲੱਗੇਗਾ ਜਦੋਂ ਤੱਕ ਇਹ ਭੇਜੇ ਜਾਣ ਲਈ ਤਿਆਰ ਨਾ ਹੋਵੇ, ਕਿਰਪਾ ਕਰਕੇ ਧੀਰਜ ਰੱਖੋ।"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"ਅੰਤਰਕਿਰਿਆਤਮਕ ਰਿਪੋਰਟ"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"ਜ਼ਿਆਦਾਤਰ ਹਾਲਾਤਾਂ ਵਿੱਚ ਇਸ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਇਹ ਤੁਹਾਨੂੰ ਰਿਪੋਰਟ ਦੀ ਪ੍ਰਗਤੀ ਨੂੰ ਟਰੈਕ ਕਰਨ ਦਿੰਦਾ ਹੈ ਅਤੇ ਸਮੱਸਿਆ ਬਾਰੇ ਹੋਰ ਵੇਰਵੇ ਦਾਖਲ ਕਰਨ ਦਿੰਦਾ ਹੈ। ਇਹ ਉਹਨਾਂ ਘੱਟ-ਵਰਤੇ ਗਏ ਕੁਝ ਭਾਗਾਂ ਨੂੰ ਨਜ਼ਰ-ਅੰਦਾਜ਼ ਕਰ ਸਕਦਾ ਹੈ ਜਿਨ੍ਹਾਂ ਦੀ ਰਿਪੋਰਟ ਕਰਨ ਵਿੱਚ ਵੱਧ ਸਮਾਂ ਲੱਗ ਸਕਦਾ ਹੈ।"</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"ਪੂਰੀ ਰਿਪੋਰਟ"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"ਜਦੋਂ ਤੁਹਾਡੀ ਡੀਵਾਈਸ ਪ੍ਰਤਿਕਿਰਿਆ ਨਾ ਕਰ ਰਹੀ ਹੋਵੇ ਜਾਂ ਬਹੁਤ ਹੀ ਹੌਲੀ ਹੋਵੇ, ਜਾਂ ਜਦੋਂ ਤੁਹਾਨੂੰ ਸਾਰੇ ਰਿਪੋਰਟ ਭਾਗਾਂ ਦੀ ਲੋੜ ਹੋਵੇ ਤਾਂ ਇਸ ਚੋਣ ਦੀ ਵਰਤੋਂ ਘੱਟ-ਤੋਂ-ਘੱਟ ਸਿਸਟਮ ਦਖ਼ਲ ਲਈ ਕਰੋ। ਸਕ੍ਰੀਨਸ਼ਾਟ ਨਹੀਂ ਲੈਣ ਦਿੰਦਾ ਹੈ ਜਾਂ ਤੁਹਾਨੂੰ ਹੋਰ ਵੇਰਵੇ ਦਾਖਲ ਨਹੀਂ ਕਰਨ ਦਿੰਦਾ ਹੈ।"</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">ਬੱਗ ਰਿਪੋਰਟ ਲਈ <xliff:g id="NUMBER_1">%d</xliff:g> ਸਕਿੰਟ ਵਿੱਚ ਸਕ੍ਰੀਨਸ਼ਾਟ ਲਿਆ ਜਾ ਰਿਹਾ ਹੈ।</item>
       <item quantity="other">ਬੱਗ ਰਿਪੋਰਟ ਲਈ <xliff:g id="NUMBER_1">%d</xliff:g> ਸਕਿੰਟ ਵਿੱਚ ਸਕ੍ਰੀਨਸ਼ਾਟ ਲਿਆ ਜਾ ਰਿਹਾ ਹੈ।</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ਘੰਟੇ</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ਘੰਟੇ</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"ਵੀਡੀਓ ਸਮੱਸਿਆ"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"ਇਹ ਵੀਡੀਓ ਇਸ ਡਿਵਾਈਸ ਤੇ ਸਟ੍ਰੀਮਿੰਗ ਲਈ ਪ੍ਰਮਾਣਿਕ ਨਹੀਂ ਹੈ।"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"ਇਹ ਵੀਡੀਓ ਪਲੇ ਨਹੀਂ ਕਰ ਸਕਦਾ।"</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ਬੰਦ"</string>
     <string name="whichApplication" msgid="4533185947064773386">"ਇਸਨੂੰ ਵਰਤਦੇ ਹੋਏ ਕਿਰਿਆ ਪੂਰੀ ਕਰੋ"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s ਵਰਤਦੇ ਹੋਏ ਕਿਰਿਆ ਪੂਰੀ ਕਰੋ"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"ਕਾਰਵਾਈ ਪੂਰੀ ਕਰੋ"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"ਨਾਲ ਖੋਲ੍ਹੋ"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s ਨਾਲ ਖੋਲ੍ਹੋ"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"ਖੋਲ੍ਹੋ"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"ਨਾਲ ਸੰਪਾਦਿਤ ਕਰੋ"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s ਨਾਲ ਸੰਪਾਦਿਤ ਕਰੋ"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"ਸੰਪਾਦਨ ਕਰੋ"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"ਇਸ ਨਾਲ ਸ਼ੇਅਰ ਕਰੋ"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s ਨਾਲ ਸ਼ੇਅਰ ਕਰੋ"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"ਸਾਂਝਾ ਕਰੋ"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"ਇਸ ਦੀ ਵਰਤੋਂ ਨਾਲ ਭੇਜੋ"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s ਦੀ ਵਰਤੋਂ ਨਾਲ ਭੇਜੋ"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"ਭੇਜੋ"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"ਇੱਕ ਹੋਮ ਐਪ ਚੁਣੋ"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"ਘਰ ਦੇ ਤੌਰ ਤੇ %1$s ਨੂੰ ਵਰਤੋ"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"ਚਿਤਰ ਕੈਪਚਰ ਕਰੋ"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"ਇਸ ਨਾਲ ਚਿਤਰ ਕੈਪਚਰ ਕਰੋ"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s ਨਾਲ ਚਿਤਰ ਕੈਪਚਰ ਕਰੋ"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"ਚਿਤਰ ਕੈਪਚਰ ਕਰੋ"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"ਇਸ ਕਿਰਿਆ ਲਈ ਬਾਇ ਡਿਫੌਲਟ ਵਰਤੋ।"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"ਇੱਕ ਵੱਖਰਾ ਖਾਤਾ ਵਰਤੋ"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"ਸਿਸਟਮ ਸੈਟਿੰਗਾਂ &gt; ਐਪਸ &gt; ਡਾਊਨਲੋਡ ਕੀਤਿਆਂ ਵਿੱਚ ਡਿਫੌਲਟ ਹਟਾਓ।"</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"ਸਾਲ ਚੁਣੋ"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> ਹਟਾਇਆ ਗਿਆ"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"ਕੰਮ <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"ਇਸ ਸਕ੍ਰੀਨ ਨੂੰ ਅਨਪਿਨ ਕਰਨ ਲਈ, ਪਿੱਛੇ ਅਤੇ ਰੂਪ-ਰੇਖਾ ਨੂੰ ਇੱਕੋ ਵੇਲੇ ਛੋਹਵੋ ਅਤੇ ਹੋਲਡ ਕਰੋ।"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"ਇਸ ਸਕ੍ਰੀਨ ਨੂੰ ਅਨਪਿੰਨ ਕਰਨ ਲਈ, ਸਪਰਸ਼ ਕਰੋ ਅਤੇ ਦਬਾਈ ਰੱਖੋ।"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ਇਸ ਸਕ੍ਰੀਨ ਨੂੰ ਅਨਪਿਨ ਕਰਨ ਲਈ, ਰੂਪ-ਰੇਖਾ ਨੂੰ ਛੋਹਵੋ ਅਤੇ ਹੋਲਡ ਕਰੋ।"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"ਐਪ ਪਿੰਨਡ ਹੈ: ਇਸ ਡਿਵਾਈਸ ਤੇ ਅਨਪਿਨ ਕਰਨ ਦੀ ਆਗਿਆ ਨਹੀਂ ਹੈ।"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"ਸਕ੍ਰੀਨ ਪਿੰਨ ਕੀਤੀ"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"ਤੁਹਾਡੇ ਪ੍ਰਸ਼ਾਸਕ ਦੁਆਰਾ ਅਪਡੇਟ ਕੀਤਾ ਗਿਆ"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"ਤੁਹਾਡੇ ਪ੍ਰਬੰਧਕ ਵੱਲੋਂ ਮਿਟਾਇਆ ਗਿਆ"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"ਬੈਟਰੀ ਸਮਰੱਥਾ ਨੂੰ ਬਿਹਤਰ ਸਹਾਇਤਾ ਕਰਨ ਲਈ, ਬੈਟਰੀ ਸੇਵਰ ਤੁਹਾਡੀ ਡਿਵਾਈਸ ਦਾ ਪ੍ਰਦਰਸ਼ਨ ਘਟਾਉਂਦਾ ਹੈ ਅਤੇ ਵਾਈਬ੍ਰੇਸ਼ਨ, ਨਿਰਧਾਰਿਤ ਸਥਾਨ ਸੇਵਾਵਾਂ ਅਤੇ ਜ਼ਿਆਦਾਤਰ ਪਿਛੋਕੜ ਡਾਟਾ ਨੂੰ ਸੀਮਿਤ ਕਰਦਾ ਹੈ। ਈਮੇਲ, ਮੈਸੇਜਿੰਗ ਅਤੇ ਹੋਰ ਐਪਸ, ਜੋ ਸਿੰਕਿੰਗ ਤੇ ਨਿਰਭਰ ਹਨ, ਉਹ ਉਦੋਂ ਤੱਕ ਅਪਡੇਟ ਨਹੀਂ ਕੀਤੇ ਜਾ ਸਕਦੇ ਜਦੋਂ ਤੱਕ ਤੁਸੀਂ ਉਹਨਾਂ ਨੂੰ ਖੋਲ੍ਹਦੇ ਨਹੀਂ।\n\nਬੈਟਰੀ ਸੇਵਰ ਆਟੋਮੈਟਿਕਲੀ ਬੰਦ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਤੁਹਾਡੀ ਡਿਵਾਈਸ ਚਾਰਜ ਹੋ ਰਹੀ ਹੁੰਦੀ ਹੈ।"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"ਡੈਟਾ ਵਰਤੋਂ ਘਟਾਉਣ ਵਿੱਚ ਮਦਦ ਲਈ, ਡੈਟਾ ਸੇਵਰ ਕੁਝ ਐਪਾਂ ਨੂੰ ਬੈਕਗ੍ਰਾਊਂਡ ਵਿੱਚ ਡੈਟਾ ਭੇਜਣ ਜਾਂ ਪ੍ਰਾਪਤ ਕਰਨ ਤੋਂ ਰੋਕਦਾ ਹੈ। ਤੁਹਾਡੇ ਵੱਲੋਂ ਵਰਤਮਾਨ ਤੌਰ \'ਤੇ ਵਰਤੀ ਜਾ ਰਹੀ ਐਪ ਡੈਟੇ \'ਤੇ ਪਹੁੰਚ ਕਰ ਸਕਦੀ ਹੈ, ਪਰ ਉਹ ਇੰਝ ਕਦੇ-ਕਦਾਈਂ ਕਰ ਸਕਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਇਸ ਦਾ ਮਤਲਬ ਇਹ ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਚਿਤਰ ਤਦ ਤੱਕ ਨਹੀਂ ਵਿਖਾਏ ਜਾਂਦੇ, ਜਦੋਂ ਤੱਕ ਤੁਸੀਂ ਉਹਨਾਂ \'ਤੇ ਟੈਪ ਨਹੀਂ ਕਰਦੇ।"</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d ਮਿੰਟਾਂ ਤੱਕ (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> ਤੱਕ) </item>
       <item quantity="other">%1$d ਮਿੰਟਾਂ ਤੱਕ (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> ਤੱਕ)</item>
diff --git a/core/res/res/values-pl/strings.xml b/core/res/res/values-pl/strings.xml
index 6bfac83..cfaf9fa 100644
--- a/core/res/res/values-pl/strings.xml
+++ b/core/res/res/values-pl/strings.xml
@@ -126,11 +126,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Wyszukiwanie usługi"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Połączenia przez Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Aby dzwonić i wysyłać wiadomości przez Wi-Fi, poproś swojego operatora o skonfigurowanie tej usługi. Potem ponownie włącz połączenia przez Wi-Fi w Ustawieniach."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Zarejestruj u operatora"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Połączenia przez Wi-Fi (%s)"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Wył."</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Preferuj Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Preferuj sieć komórkową"</string>
@@ -166,7 +170,12 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Pamięć w zegarku jest pełna. Usuń niektóre pliki, by zwolnić miejsce."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Pamięć telewizora jest pełna. Usuń jakieś pliki, by zwolnić miejsce."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Pamięć telefonu jest pełna. Usuń niektóre pliki, aby zwolnić miejsce."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Sieć może być monitorowana"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="few">Urzędy certyfikacji zostały zainstalowane</item>
+      <item quantity="many">Urzędy certyfikacji zostały zainstalowane</item>
+      <item quantity="other">Urzędy certyfikacji zostały zainstalowane</item>
+      <item quantity="one">Urząd certyfikacji został zainstalowany</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Przez nieznany podmiot zewnętrzny"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Przez administratora Twojego profilu do pracy"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Przez <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -213,9 +222,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Zgłoś błąd"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Informacje o bieżącym stanie urządzenia zostaną zebrane i wysłane e-mailem. Przygotowanie zgłoszenia błędu do wysłania chwilę potrwa, więc zachowaj cierpliwość."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Raport interaktywny"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Używaj tej opcji w większości przypadków. Umożliwia śledzenie postępów raportu i podanie dodatkowych szczegółów problemu. Raport może pomijać niektóre rzadko używane sekcje, których utworzenie zajmuje dużo czasu."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Pełny raport"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Użyj tej opcji, jeśli chcesz zminimalizować zakłócenia pracy systemu, gdy urządzenie nie reaguje, działa wolno lub gdy potrzebujesz wszystkich sekcji raportu. Nie jest wykonywany zrzutu ekranu i nie można podać więcej szczegółów."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="few">Zrzut ekranu do raportu o błędzie zostanie zrobiony za <xliff:g id="NUMBER_1">%d</xliff:g> sekundy.</item>
       <item quantity="many">Zrzut ekranu do raportu o błędzie zostanie zrobiony za <xliff:g id="NUMBER_1">%d</xliff:g> sekund.</item>
@@ -863,6 +874,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> godziny</item>
       <item quantity="one">1 godzina</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problem z filmem"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Ten film nie nadaje się do strumieniowego przesyłania do tego urządzenia."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Nie można odtworzyć tego filmu."</string>
@@ -905,16 +926,25 @@
     <string name="capital_off" msgid="6815870386972805832">"Wył"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Wykonaj czynność przez..."</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Wykonaj czynność w aplikacji %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Wykonaj działanie"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Otwórz w aplikacji"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Otwórz w aplikacji %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Otwórz"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Edytuj w aplikacji"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Edytuj w aplikacji %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Edytuj"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Udostępnij przez:"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Udostępnij przez %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Udostępnij"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Wyślij za pomocą"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Wyślij za pomocą %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Wyślij"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Wybierz aplikację ekranu głównego"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Użyj %1$s jako ekranu głównego"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Zrób zdjęcie"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Zrób zdjęcie w aplikacji"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Zrób zdjęcie w aplikacji %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Zrób zdjęcie"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Domyślne dla tej czynności"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Użyj innej aplikacji"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Wyczyść wartości domyślne w: Ustawienia systemu &gt; Aplikacje &gt; Pobrane."</string>
@@ -1480,7 +1510,7 @@
     <string name="select_year" msgid="7952052866994196170">"Wybierz rok"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> usunięte"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> (praca)"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Aby odpiąć ten ekran, naciśnij i przytrzymaj jednocześnie Wstecz i Przegląd."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Aby odpiąć ten ekran, naciśnij i przytrzymaj Wstecz."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Aby odpiąć ten ekran, naciśnij i przytrzymaj Przegląd."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Aplikacja jest przypięta. Nie możesz jej odpiąć na tym urządzeniu."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ekran przypięty"</string>
@@ -1492,6 +1522,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Zaktualizowane przez administratora"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Usunięty przez administratora"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Aby wydłużyć czas pracy baterii, Oszczędzanie baterii ogranicza aktywność urządzenia, w tym wibracje, usługi lokalizacyjne i przetwarzanie większości danych w tle. Poczta, czat i inne synchronizowane aplikacje mogą nie aktualizować swojej zawartości, dopóki ich nie otworzysz.\n\nOszczędzanie baterii wyłącza się automatycznie podczas ładowania urządzenia."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Oszczędzanie danych uniemożliwia niektórym aplikacjom wysyłanie i odbieranie danych w tle, zmniejszając w ten sposób ich użycie. Aplikacja, z której w tej chwili korzystasz, może uzyskiwać dostęp do danych, ale rzadziej. Może to powodować, że obrazy będą się wyświetlać dopiero po kliknięciu."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="few">Przez %1$d minuty (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="many">Przez %1$d minut (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-pt-rBR/strings.xml b/core/res/res/values-pt-rBR/strings.xml
index 241ee823..ace15f6 100644
--- a/core/res/res/values-pt-rBR/strings.xml
+++ b/core/res/res/values-pt-rBR/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Pesquisando serviço"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Chamadas por Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Para fazer chamadas e enviar mensagens por Wi-Fi, primeiro peça à sua operadora para configurar esse serviço. Depois ative novamente as chamadas por Wi-Fi nas configurações."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Faça registro na sua operadora"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s chamada Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Desativado"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi preferido"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Celular preferido"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Armazenamento do relógio cheio. Exclua alguns arquivos para liberar espaço."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"O armazenamento da TV está cheio. Exclua alguns arquivos para liberar espaço."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"O armazenamento do telefone está cheio. Exclua alguns arquivos para liberar espaço."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"A rede pode ser monitorada"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Autoridades de certificação instaladas</item>
+      <item quantity="other">Autoridades de certificação instaladas</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Por terceiros desconhecidos"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Pelo seu perfil profissional de administrador"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Por <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Obter relatório de bugs"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Isto coletará informações sobre o estado atual do dispositivo para enviá-las em uma mensagem de e-mail. Após iniciar o relatório de bugs, será necessário aguardar algum tempo até que esteja pronto para ser enviado."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Relatório interativo"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Use este recurso na maioria das circunstâncias. Ele permite que você acompanhe o progresso do relatório e informe mais detalhes sobre o problema. É possível que ele omita algumas seções menos utilizadas que levam muito tempo na emissão dos relatórios."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Relatório completo"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Use esta opção para ter o mínimo de interferência do sistema quando seu dispositivo não estiver respondendo ou estiver muito lento, ou quando você precisar de todas as seções de relatórios. Ela não faz uma captura de tela ou permite que você informe mais detalhes."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Capturas de tela para o relatório do bug serão feitas em <xliff:g id="NUMBER_1">%d</xliff:g> segundos.</item>
       <item quantity="other">Capturas de tela para o relatório do bug serão feitas em <xliff:g id="NUMBER_1">%d</xliff:g> segundos.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> horas</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> horas</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problema com o vídeo"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Este vídeo não é válido para transmissão neste dispositivo."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Não é possível reproduzir este vídeo."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"DESL"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Complete a ação usando"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Concluir a ação usando %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Concluir ação"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Abrir com"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Abrir com %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Abrir"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Editar com"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Editar com %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Editar"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Compartilhar com"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Compartilhar com %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Compartilhar"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Enviar usando"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Enviar usando %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Enviar"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Selecione um app de Página inicial"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Usar %1$s como Página inicial"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Capturar imagem"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Capturar imagem com"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Capturar imagem com %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Capturar imagem"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Usar como padrão para esta ação."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Usar outro app"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Padrão claro em Configurações do sistema &gt; Apps &gt; Baixado."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Selecione o ano"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> excluído"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Trabalho: <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Para liberar esta tela, toque e mantenha pressionados \"Voltar\" e \"Visão geral\" ao mesmo tempo."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Para liberar esta tela, mantenha o botão \"Voltar\" pressionado."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Para liberar esta tela, toque e mantenha pressionado \"Visão geral\"."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"O app está fixado. A liberação não é permitida neste dispositivo."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Tela fixada"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Atualizado pelo administrador"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Excluído pelo seu administrador"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Para ajudar a melhorar a duração da bateria, o economizador de bateria reduz o desempenho e os limites de vibração do dispositivo, os serviços de localização e a maioria dos dados de segundo plano. E-mail, mensagens e outros aplicativos que dependem de sincronização não podem ser atualizados, a não ser que você os abra.\n\nO economizador de bateria é desligado automaticamente quando o dispositivo está sendo carregado."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Para ajudar a reduzir o uso de dados, a Economia de dados impede que alguns apps enviem ou recebam dados em segundo plano. Um app que você esteja usando no momento pode acessar dados, mas com menos frequência. Isso pode significar que as imagens não serão exibidas até que você toque nelas."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">Por %1$d minutos (até às <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">Por %1$d minutos (até às <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-pt-rPT/strings.xml b/core/res/res/values-pt-rPT/strings.xml
index ebe6efb..5e69659 100644
--- a/core/res/res/values-pt-rPT/strings.xml
+++ b/core/res/res/values-pt-rPT/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"A procurar Serviço"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Chamadas Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Para fazer chamadas e enviar mensagens por Wi-Fi, comece por pedir ao seu operador para configurar este serviço. Em seguida, nas Definições, ative novamente as chamadas por Wi-Fi."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registar-se junto do seu operador"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Chamadas por Wi-Fi da %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Desativado"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Rede Wi-Fi preferida"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Rede móvel preferida"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"O armazenamento de visualizações está cheio. Elimine alguns ficheiros para libertar espaço."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"O armazenamento da TV está cheio. Elimine alguns ficheiros para libertar espaço."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"O armazenamento do telemóvel está cheio. Elimine alguns ficheiros para libertar espaço."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"A rede pode ser monitorizada"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Autoridades de certificação instaladas</item>
+      <item quantity="one">Autoridade de certificação instalada</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Por um terceiro desconhecido"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Do administrador do seu perfil de trabalho"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Por <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Criar relatório de erros"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Será recolhida informação sobre o estado atual do seu dispositivo a enviar através de uma mensagem de email. Demorará algum tempo até que o relatório de erro esteja pronto para ser enviado. Aguarde um pouco."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Relatório interativo"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Utilize esta opção na maioria das circunstâncias. Permite monitorizar o progresso do relatório e introduzir mais detalhes acerca do problema. Pode omitir algumas secções menos utilizadas que demoram muito tempo a comunicar."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Relatório completo"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Utilize esta opção para uma interferência mínima do sistema quando o dispositivo não responder ou estiver demasiado lento, ou quando precisar de todas as secções de relatório. Não tira uma captura de ecrã, nem permite introduzir mais detalhes."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">A tirar uma captura de ecrã do relatório de erro dentro de <xliff:g id="NUMBER_1">%d</xliff:g> segundos.</item>
       <item quantity="one">A tirar uma captura de ecrã do relatório de erro dentro de <xliff:g id="NUMBER_0">%d</xliff:g> segundo.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> horas</item>
       <item quantity="one">1 hora</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problema com o vídeo"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Este vídeo não é válido para transmissão em fluxo contínuo neste aparelho."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Não é possível reproduzir este vídeo."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"Desativado"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Concluir ação utilizando"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Concluir ação utilizando %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Concluir ação"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Abrir com"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Abrir com %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Abrir"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Editar com"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Editar com %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Editar"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Partilhar com"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Partilhar com %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Partilhar"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Enviar com"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Enviar com %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Enviar"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Selecione uma aplicação Página inicial"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Utilizar %1$s como Página inicial"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Capturar imagem"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Capturar imagem com"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Capturar imagem com o %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Capturar imagem"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Utilizar por predefinição para esta acção."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Utilizar outra aplicação"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Limpar a predefinição nas Definições do Sistema &gt; Aplicações &gt; Transferidas."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Selecionar ano"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> eliminado"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> de trabalho"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Para soltar este ecrã, toque sem soltar em Retroceder e Visão geral em simultâneo."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Para soltar este ecrã, toque sem soltar em Anterior."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Para soltar este ecrã, toque sem soltar em Visão geral."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"A aplicação está fixa: não é permitido soltá-la neste dispositivo."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ecrã fixo"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Atualizado pelo administrador"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Eliminado pelo administrador"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Para ajudar a melhorar a autonomia da bateria, a poupança de bateria reduz o desempenho do seu dispositivo e limita a vibração, os serviços de localização e a maioria dos dados em segundo plano. O email, as mensagens e outras aplicações que dependem da sincronização não podem ser atualizados exceto se os abrir.\n\nA poupança de bateria desliga-se automaticamente quando o dispositivo está a carregar."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Para ajudar a reduzir a utilização de dados, a Poupança de dados impede que algumas aplicações enviem ou recebam dados em segundo plano. Uma determinada aplicação que esteja a utilizar atualmente pode aceder aos dados, mas é possível que o faça com menos frequência. Isto pode significar, por exemplo, que as imagens não são apresentadas até que toque nas mesmas."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Durante %1$d minutos (até às <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Durante um minuto (até às <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-pt/strings.xml b/core/res/res/values-pt/strings.xml
index 241ee823..ace15f6 100644
--- a/core/res/res/values-pt/strings.xml
+++ b/core/res/res/values-pt/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Pesquisando serviço"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Chamadas por Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Para fazer chamadas e enviar mensagens por Wi-Fi, primeiro peça à sua operadora para configurar esse serviço. Depois ative novamente as chamadas por Wi-Fi nas configurações."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Faça registro na sua operadora"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s chamada Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Desativado"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi preferido"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Celular preferido"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Armazenamento do relógio cheio. Exclua alguns arquivos para liberar espaço."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"O armazenamento da TV está cheio. Exclua alguns arquivos para liberar espaço."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"O armazenamento do telefone está cheio. Exclua alguns arquivos para liberar espaço."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"A rede pode ser monitorada"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Autoridades de certificação instaladas</item>
+      <item quantity="other">Autoridades de certificação instaladas</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Por terceiros desconhecidos"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Pelo seu perfil profissional de administrador"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Por <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Obter relatório de bugs"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Isto coletará informações sobre o estado atual do dispositivo para enviá-las em uma mensagem de e-mail. Após iniciar o relatório de bugs, será necessário aguardar algum tempo até que esteja pronto para ser enviado."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Relatório interativo"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Use este recurso na maioria das circunstâncias. Ele permite que você acompanhe o progresso do relatório e informe mais detalhes sobre o problema. É possível que ele omita algumas seções menos utilizadas que levam muito tempo na emissão dos relatórios."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Relatório completo"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Use esta opção para ter o mínimo de interferência do sistema quando seu dispositivo não estiver respondendo ou estiver muito lento, ou quando você precisar de todas as seções de relatórios. Ela não faz uma captura de tela ou permite que você informe mais detalhes."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Capturas de tela para o relatório do bug serão feitas em <xliff:g id="NUMBER_1">%d</xliff:g> segundos.</item>
       <item quantity="other">Capturas de tela para o relatório do bug serão feitas em <xliff:g id="NUMBER_1">%d</xliff:g> segundos.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> horas</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> horas</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problema com o vídeo"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Este vídeo não é válido para transmissão neste dispositivo."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Não é possível reproduzir este vídeo."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"DESL"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Complete a ação usando"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Concluir a ação usando %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Concluir ação"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Abrir com"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Abrir com %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Abrir"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Editar com"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Editar com %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Editar"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Compartilhar com"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Compartilhar com %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Compartilhar"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Enviar usando"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Enviar usando %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Enviar"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Selecione um app de Página inicial"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Usar %1$s como Página inicial"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Capturar imagem"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Capturar imagem com"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Capturar imagem com %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Capturar imagem"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Usar como padrão para esta ação."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Usar outro app"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Padrão claro em Configurações do sistema &gt; Apps &gt; Baixado."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Selecione o ano"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> excluído"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Trabalho: <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Para liberar esta tela, toque e mantenha pressionados \"Voltar\" e \"Visão geral\" ao mesmo tempo."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Para liberar esta tela, mantenha o botão \"Voltar\" pressionado."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Para liberar esta tela, toque e mantenha pressionado \"Visão geral\"."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"O app está fixado. A liberação não é permitida neste dispositivo."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Tela fixada"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Atualizado pelo administrador"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Excluído pelo seu administrador"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Para ajudar a melhorar a duração da bateria, o economizador de bateria reduz o desempenho e os limites de vibração do dispositivo, os serviços de localização e a maioria dos dados de segundo plano. E-mail, mensagens e outros aplicativos que dependem de sincronização não podem ser atualizados, a não ser que você os abra.\n\nO economizador de bateria é desligado automaticamente quando o dispositivo está sendo carregado."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Para ajudar a reduzir o uso de dados, a Economia de dados impede que alguns apps enviem ou recebam dados em segundo plano. Um app que você esteja usando no momento pode acessar dados, mas com menos frequência. Isso pode significar que as imagens não serão exibidas até que você toque nelas."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">Por %1$d minutos (até às <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">Por %1$d minutos (até às <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-ro/strings.xml b/core/res/res/values-ro/strings.xml
index 951e365..ca613b8 100644
--- a/core/res/res/values-ro/strings.xml
+++ b/core/res/res/values-ro/strings.xml
@@ -125,11 +125,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Se caută serviciul"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Apelare prin Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Pentru a apela și a trimite mesaje prin Wi-Fi, mai întâi solicitați configurarea acestui serviciu la operator. Apoi, activați din nou apelarea prin Wi-Fi din Setări."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Înregistrați-vă la operatorul dvs."</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Apelare prin Wi-Fi %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Dezactivată"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Se preferă conexiunea Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Se preferă conexiunea mobilă"</string>
@@ -165,7 +169,11 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Spațiul de stocare de pe ceas este plin! Ștergeți câteva fișiere pentru a elibera spațiu."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Spațiul de stocare al televizorului este plin. Ștergeți câteva fișiere pentru a elibera spațiu."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Stocarea pe telefon este plină. Ștergeți câteva fișiere pentru a elibera spațiu."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Rețeaua poate fi monitorizată"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="few">S-au instalat autorități de certificare</item>
+      <item quantity="other">S-au instalat autorități de certificare</item>
+      <item quantity="one">S-a instalat o autoritate de certificare</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"De o terță parte necunoscută"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"De administratorul profilului de serviciu"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"De <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -212,9 +220,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Executați un raport despre erori"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Acest raport va colecta informații despre starea actuală a dispozitivului, pentru a le trimite într-un e-mail. Aveți răbdare după pornirea raportului despre erori până când va fi gata de trimis."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Raport interactiv"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Folosiți această opțiune în majoritatea situațiilor. Astfel, puteți să urmăriți progresul raportului și să introduceți mai multe detalii în privința problemei. Pot fi omise unele secțiuni mai puțin folosite pentru care raportarea durează prea mult."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Raport complet"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Folosiți această opțiune pentru a reduce la minimum interferențele cu sistemul când dispozitivul nu răspunde, funcționează prea lent sau când aveți nevoie de toate secțiunile raportului. Nu se creează o captură de ecran și nu se pot introduce detalii suplimentare."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="few">Peste <xliff:g id="NUMBER_1">%d</xliff:g> secunde se va realiza o captură de ecran pentru raportul de eroare.</item>
       <item quantity="other">Peste <xliff:g id="NUMBER_1">%d</xliff:g> de secunde se va realiza o captură de ecran pentru raportul de eroare.</item>
@@ -857,6 +867,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> de ore</item>
       <item quantity="one">O oră</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problemă video"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Acest fișier video nu este valid pentru a fi transmis în flux către acest dispozitiv."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Nu puteți reda acest videoclip"</string>
@@ -899,16 +919,25 @@
     <string name="capital_off" msgid="6815870386972805832">"NU"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Finalizare acțiune utilizând"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Finalizați acțiunea utilizând %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Finalizați acțiunea"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Deschideți cu"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Deschideți cu %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Deschideți"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Editați cu"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Editați cu %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Editați"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Trimiteți prin"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Distribuiți cu %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Trimiteți"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Trimiteți folosind"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Trimiteți folosind %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Trimiteți"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Selectați o aplicație de pe ecranul de pornire"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Utilizați %1$s ca ecran de pornire"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Fotografiați"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Fotografiați cu"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Fotografiați cu %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Fotografiați"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Se utilizează în mod prestabilit pentru această acțiune."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Utilizați altă aplicație"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Ștergeți setările prestabilite din Setări de sistem &gt; Aplicații &gt; Descărcate."</string>
@@ -1470,7 +1499,7 @@
     <string name="select_year" msgid="7952052866994196170">"Selectați anul"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> a fost șters"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> de serviciu"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Pentru a anula fixarea pe ecran, apăsați lung, simultan, pe Înapoi și pe Vizualizare generală."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Pentru a anula fixarea acestui ecran, atingeți lung opțiunea Înapoi."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Pentru a anula fixarea pe ecran, apăsați lung pe Vizualizare generală."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Aplicația este fixată: Anularea fixării nu este permisă pe acest dispozitiv."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ecran fixat"</string>
@@ -1482,6 +1511,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Actualizat de un administrator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Șters de administrator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Pentru a îmbunătăți autonomia bateriei, funcția de economisire a energiei reduce performanțele dispozitivului și limitează vibrațiile, serviciile de localizare și majoritatea datelor de fundal. Este posibil ca e-mailurile, mesageria și alte aplicații care depind de sincronizare să nu se actualizeze dacă nu le deschideți.\n\nFuncția de economisire a energiei se dezactivează automat când dispozitivul se încarcă."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Pentru a contribui la reducerea utilizării de date, Economizorul de date împiedică unele aplicații să trimită sau să primească date în fundal. O aplicație pe care o folosiți în prezent poate să acceseze datele, dar o poate face mai rar. Aceasta poate însemna, de exemplu, că imaginile se afișează numai după ce le atingeți."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="few">Timp de %1$d minute (până la <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">Timp de %1$d de minute (până la <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-ru/strings.xml b/core/res/res/values-ru/strings.xml
index a012a95..1d147fa 100644
--- a/core/res/res/values-ru/strings.xml
+++ b/core/res/res/values-ru/strings.xml
@@ -126,11 +126,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Поиск службы"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Звонки по Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Чтобы совершать звонки и отправлять сообщения по Wi-Fi, необходимо сначала обратиться к оператору связи и подключить эту услугу. После этого вы сможете снова выбрать этот параметр в настройках."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Укажите оператора и зарегистрируйтесь"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Звонки по Wi-Fi (%s)"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Отключено"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Приоритет Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Приоритет моб. сети"</string>
@@ -166,7 +170,12 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Память устройства заполнена. Удалите файлы, чтобы освободить место."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Нет места в памяти телевизора. Удалите ненужные файлы."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Память телефона заполнена. Удалите какие-нибудь файлы, чтобы освободить место."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Сеть может отслеживаться"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Сертификаты ЦС установлены</item>
+      <item quantity="few">Сертификаты ЦС установлены</item>
+      <item quantity="many">Сертификаты ЦС установлены</item>
+      <item quantity="other">Сертификаты ЦС установлены</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"администратором"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Администратор рабочего профиля может отслеживать сеть"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"администратором домена <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -213,9 +222,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Отчет об ошибке"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Информация о текущем состоянии вашего устройства будет собрана и отправлена по электронной почте. Подготовка отчета займет некоторое время."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Интерактивный отчет"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Рекомендуем пользоваться этой функцией, чтобы отслеживать статус отчета и указывать дополнительные данные о проблеме. Некоторые разделы могут быть исключены, чтобы сократить время подготовки отчета."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Подробный отчет"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Выберите этот вариант, если устройство не реагирует на ваши действия или работает слишком медленно, а также если вы хотите включить все разделы. Вы не сможете сделать скриншот или указать дополнительные сведения."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Скриншот будет сделан через <xliff:g id="NUMBER_1">%d</xliff:g> секунду</item>
       <item quantity="few">Скриншот будет сделан через <xliff:g id="NUMBER_1">%d</xliff:g> секунды</item>
@@ -863,6 +874,16 @@
       <item quantity="many"><xliff:g id="COUNT">%d</xliff:g> часов</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> часов</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Ошибка"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Это видео не предназначено для потокового воспроизведения на данном устройстве."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Не удалось воспроизвести видео."</string>
@@ -905,16 +926,25 @@
     <string name="capital_off" msgid="6815870386972805832">"O"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Что использовать?"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Выполнить с помощью приложения \"%1$s\""</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Выполнить действие"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Открыть с помощью приложения:"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Открыть с помощью приложения \"%1$s\""</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Открыть"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Редактировать с помощью приложения:"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Редактировать с помощью приложения \"%1$s\""</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Изменить"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Поделиться с помощью:"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Поделиться через %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Открыть доступ"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Выберите приложение"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Отправка с помощью %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Отправить"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Выберите главное приложение"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Назначьте приложение \"%1$s\" главным"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Сделать снимок"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Делать снимки с помощью:"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Сделайте снимок с помощью приложения \"%1$s\""</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Сделать снимок"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"По умолчанию для этого действия"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Другое приложение"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Удаляет настройки по умолчанию в меню \"Настройки &gt; Приложения &gt; Загруженные\"."</string>
@@ -1480,7 +1510,7 @@
     <string name="select_year" msgid="7952052866994196170">"Выберите год"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Цифра <xliff:g id="KEY">%1$s</xliff:g> удалена"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Рабочий <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Чтобы открепить экран, нажмите и удерживайте кнопки \"Назад\" и \"Обзор\" одновременно."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Чтобы открепить экран, нажмите и удерживайте кнопку \"Назад\"."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Чтобы открепить экран, нажмите и удерживайте кнопку \"Обзор\"."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Включена блокировка в приложении. Ее отключение запрещено правилами организации."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Блокировка включена"</string>
@@ -1492,6 +1522,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Обновлено администратором"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Удалено администратором"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Чтобы продлить время работы устройства от батареи, в режиме энергосбережения снижается производительность, а также ограничивается использование вибрации, геолокации и фоновой передачи данных. Данные, требующие синхронизации, могут обновляться только когда вы откроете приложение.\n\nРежим энергосбережения автоматически отключается во время зарядки устройства."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"В режиме экономии трафика фоновая передача для некоторых приложений отключена. Приложение, которым вы пользуетесь, может получать и отправлять данные, но реже, чем обычно. Например, изображения могут не загружаться, пока вы не нажмете на них."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d минута (до <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="few">%1$d минуты (до <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-si-rLK/strings.xml b/core/res/res/values-si-rLK/strings.xml
index 9175e7e..fd16451 100644
--- a/core/res/res/values-si-rLK/strings.xml
+++ b/core/res/res/values-si-rLK/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"සේවාව සඳහා සොයමින්"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi ඇමතීම"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi හරහා ඇමතුම් සිදු කිරීමට සහ පණිවිඩ යැවීමට, පළමුව මෙම සේවාව පිහිටුවන ලෙස ඔබේ වාහකයෙන් ඉල්ලන්න. අනතුරුව සැකසීම් වෙතින් Wi-Fi ඇමතුම නැවත ක්‍රියාත්මක කරන්න."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"ඔබගේ වාහකය සමඟ ලියාපදිංචි වන්න"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi අමතමින්"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"ක්‍රියාවිරහිතයි"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi වඩා කැමතියි"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"සෙලියුලර් වඩා කැමතියි"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"ඔරලෝසුවේ ආචනයනය පිරී ඇත. ඉඩ නිදහස් කිරීමට සමහර ගොනු මකන්න."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"රූපවාහිනී ගබඩාව පිරී ඇත. අවකාශය හිස් කිරීමට තව ගොනු මකා දමන්න."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"දුරකථන ආචයනය පිරී ඇත. ඉඩ නිදහස් කිරීමට සමහර ගොනු මකන්න."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"ඇතැම් විට ජාලය නිරීක්ෂණය විය හැක"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">සහතික අධිකාරි ස්ථාපනය කරන ලදී</item>
+      <item quantity="other">සහතික අධිකාරි ස්ථාපනය කරන ලදී</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"නොදන්නා තෙවෙනි පාර්ශවයකින්"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"ඔබේ රාජකාරි පැතිකඩ පරිපාලක විසින්"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> වෙතින්"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"දෝෂ වාර්තාවක් ගන්න"</string>
     <string name="bugreport_message" msgid="398447048750350456">"ඊ-තැපැල් පණිවිඩයක් ලෙස යැවීමට මෙය ඔබගේ වත්මන් උපාංග තත්වය ගැන තොරතුරු එකතු කරනු ඇත. දෝෂ වාර්තාව ආරම්භ කර එය යැවීමට සූදානම් කරන තෙක් එයට කිසියම් කාලයක් ගතවනු ඇත; කරුණාකර ඉවසන්න."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"අන්තර්ක්‍රියා වාර්."</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"බොහොමයක් වාතාවරණ යටතේ මෙය භාවිත කරන්න. එය ඔබට වාර්තාවේ ප්‍රගතිය හඹා යාමට සහ ගැටලුව පිළිබඳ වැඩිපුර විස්තර ඇතුළත් කිරීමට ඉඩ දෙයි. එය වාර්තා කිරීමට දිගු වේලාවක් ගන්නා සමහර අඩුවෙන්-භාවිත වන කොටස් මග හැරීමට හැකිය."</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"බොහොමයක් වාතාවරණ යටතේ මෙය භාවිත කරන්න. එය ඔබට වාර්තාවේ ප්‍රගතිය හඹා යාමට, ගැටලුව පිළිබඳ වැඩි විස්තර ඇතුළත් කිරීමට, සහ තිර රූ ගැනීමට ඉඩ දෙයි. එය වාර්තා කිරීමට දිගු වේලාවක් ගන්නා සමහර අඩුවෙන්-භාවිත වන කොටස් මග හැරීමට හැකිය."</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"සම්පූර්ණ වාර්තාව"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"ඔබේ උපාංගය ප්‍රතිචාර නොදක්වන විට හෝ ඉතා මන්දගාමි විට, හෝ ඔබට සියලු වාර්තා කොටස් අවශ්‍ය විට අවම පද්ධති බාධාව සඳහා මෙම විකල්පය භාවිත කරන්න. තිර රුවක් ගැනීමට හෝ ඔබට වැඩි විස්තර ඇතුළත් කිරීමට ඉඩ නොදේ."</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"ඔබේ උපාංගය ප්‍රතිචාර නොදක්වන විට හෝ ඉතා මන්දගාමි විට, හෝ ඔබට සියලු වාර්තා කොටස් අවශ්‍ය විට අවම පද්ධති බාධාව සඳහා මෙම විකල්පය භාවිත කරන්න. ඔබට වැඩි විස්තර ඇතුළත් කිරීමට හෝ අමතර තිර රූ ගැනීමට ඉඩ නොදේ."</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">තත්පර <xliff:g id="NUMBER_1">%d</xliff:g>කින් දෝෂ වාර්තාව සඳහා තිර රුවක් ලබා ගනිමින්</item>
       <item quantity="other">තත්පර <xliff:g id="NUMBER_1">%d</xliff:g>කින් දෝෂ වාර්තාව සඳහා තිර රුවක් ලබා ගනිමින්</item>
@@ -853,6 +860,15 @@
       <item quantity="one">පැය <xliff:g id="COUNT">%d</xliff:g></item>
       <item quantity="other">පැය <xliff:g id="COUNT">%d</xliff:g></item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"දැන්"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"වීඩියෝ ගැටලුව"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"මේ වීඩියෝව මෙම උපාංගයට ප්‍රවාහනය සඳහා වලංගු නැත."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"මෙම වීඩියෝව ධාවනය කළ නොහැක."</string>
@@ -895,16 +911,25 @@
     <string name="capital_off" msgid="6815870386972805832">"අක්‍රිය කරන්න"</string>
     <string name="whichApplication" msgid="4533185947064773386">"පහත භාවිතයෙන් ක්‍රියාව සම්පූර්ණ කරන්න"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s භාවිතා කරමින් ක්‍රියාව සම්පුර්ණ කරන්න"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"ක්‍රියාව සම්පූර්ණ කරන්න"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"සමඟ විවෘත කරන්න"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s සමඟ විවෘත කරන්න"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"විවෘත කරන්න"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"සමඟ සංස්කරණය කරන්න"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s සමඟ සංස්කරණය කරන්න"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"සංස්කරණය කරන්න"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"සමඟ බෙදාගන්න"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%s සමඟ බෙදාගන්න"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"බෙදා ගන්න"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"මෙය භාවිතයෙන් යවන්න"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s භාවිතයෙන් යවන්න"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"යවන්න"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"මුල් පිටු යෙදුම තෝරන්න"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"මුල් පිටු යෙදුම ලෙස %1$s න් භාවිතා කරන්න"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"රූපය ග්‍රහණය කර ගන්න"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"මෙය සමග රූපය ග්‍රහණය කර ගන්න"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s සමග රූපය ග්‍රහණය කර ගන්න"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"රූපය ග්‍රහණය කර ගන්න"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"මෙම ක්‍රියාව සඳහා සුපුරුද්දෙන් භාවිත කරන්න."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"වෙනත් යෙදුමක් භාවිතා කරන්න"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"පද්ධති සැකසීම් &gt; යෙදුම් &gt; බාගැනීම් තුළ ඇති සුපුරුද්ද හිස් කරන්න."</string>
@@ -1462,7 +1487,7 @@
     <string name="select_year" msgid="7952052866994196170">"වසර තෝරන්න"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> මකා දමන ලදි"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"වැඩ <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"මෙම තීරයේ ඇමුණුම ඉවත් කිරීමට, ආපසු සහ දළ විශ්ලේෂණය එකම වේලාවේ ස්පර්ශ කර අල්ලා සිටින්න."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"මෙම තිරය ඇමුණුම් ඉවත් කිරීමට, ස්පර්ශ කර අල්ලාගෙන සිටින්න."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"මෙම තීරයේ ඇමුණුම ඉවත් කිරීමට, දළ විශ්ලේෂණය ස්පර්ශ කර අල්ලා සිටින්න."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"යෙදුම අමුණා ඇත: ගැලවීමට මෙම උපාංගය මත ඉඩ දිය නොහැකිය.‍"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"තිරය අගුළු දමා ඇත"</string>
@@ -1474,6 +1499,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"ඔබගේ පරිපාලක විසින් යාවත්කාලීන කරන ලදී"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"ඔබගේ පරිපාලක විසින් මකන ලද"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"බැටරි ආයු කාලය වැඩිදියුණු කිරීමට උදවු කිරීමට, බැටරි සුරැකුම ඔබේ උපාංගයේ ක්‍රියාකාරීත්වය අඩුකරන අතර කම්පනය, පිහිටීම් සේවා, සහ බොහෝමයක් පසුබිම් දත්ත සීමා කරයි. ඔබ ඒවා විවෘත නොකරන්නේ නම් මිස ඊමේල්, පණිවිඩකරණය, සහ සමමුහුර්ත කිරීම මත රඳා පවතින වෙනත් යෙදුම් යාවත්කාලීන නොවිය හැකිය.\n\nඔබේ උපාංගය ආරෝපණය වන විට බැටරි සුරැකුම ස්වයංක්‍රියව අක්‍රිය වේ."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"දත්ත භාවිතය අඩු කිරීමට උදවු වීමට, දත්ත සුරැකුම සමහර යෙදුම් පසුබිමින් දත්ත යැවීම සහ ලබා ගැනීම වළක්වයි. ඔබ දැනට භාවිත කරන යෙදුමකට දත්ත වෙත පිවිසීමට හැකිය, නමුත් එසේ කරන්නේ කලාතුරකින් විය හැකිය. මෙයින් අදහස් වන්නේ, උදාහරණයක් ලෙස, එම රූප ඔබ ඒවාට තට්ටු කරන තෙක් සංදර්ශනය නොවන බවය."</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"දත්ත සුරැකුම ක්‍රියාත්මක කරන්නද?"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"ක්‍රියාත්මක කරන්න"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">මිනිත්තු %1$d ක් සඳහා (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> තෙක්)</item>
       <item quantity="other">මිනිත්තු %1$d ක් සඳහා (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> තෙක්)</item>
diff --git a/core/res/res/values-sk/strings.xml b/core/res/res/values-sk/strings.xml
index e09ed27..a606414 100644
--- a/core/res/res/values-sk/strings.xml
+++ b/core/res/res/values-sk/strings.xml
@@ -126,11 +126,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Vyhľadávanie služby"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Volanie cez Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Ak chcete volať a odosielať správy prostredníctvom siete Wi-Fi, kontaktujte najskôr svojho operátora v súvislosti s nastavením tejto služby. Potom opäť zapnite v Nastaveniach volanie cez Wi-Fi."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registrujte sa so svojím operátorom"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Volanie siete Wi-Fi %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Vypnuté"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Uprednostniť Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Uprednostniť mobilné pripojenie"</string>
@@ -166,7 +170,12 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Ukladací priestor hodiniek je plný. Uvoľnite miesto odstránením niektorých súborov."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Úložisko televízora je plné. Uvoľnite miesto odstránením niektorých súborov."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Pamäť telefónu je plná. Odstráňte niektoré súbory a uvoľnite miesto."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Sieť môže byť monitorovaná"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="few">Boli nainštalované certifikačné autority</item>
+      <item quantity="many">Boli nainštalované certifikačné autority</item>
+      <item quantity="other">Boli nainštalované certifikačné autority</item>
+      <item quantity="one">Bola nainštalovaná certifikačná autorita</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Neznámou treťou stranou"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Správcom vášho pracovného profilu"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Doménou <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -213,9 +222,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Vytvoriť hlásenie chyby"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Týmto zhromaždíte informácie o aktuálnom stave zariadenia. Informácie je potom možné odoslať e-mailom, chvíľu však potrvá, kým bude hlásenie chyby pripravené na odoslanie. Prosíme vás preto o trpezlivosť."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktívne nahlásenie"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Táto možnosť je vhodná pre väčšinu prípadov. Umožňuje sledovať priebeh nahlásenia a zadať ďalšie podrobnosti o probléme. Môžu byť vynechané niektoré menej používané sekcie, ktorých nahlásenie trvá dlho."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Úplné nahlásenie"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Táto možnosť slúži na minimalizáciu zásahov do systému, keď zariadenie neodpovedá, je príliš pomalé alebo potrebujete zahrnúť všetky sekcie prehľadu. Týmto spôsobom nie je možné vytvoriť snímku obrazovky ani zadať ďalšie podrobnosti."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="few">Snímka obrazovky pre hlásenie chyby sa vytvorí o <xliff:g id="NUMBER_1">%d</xliff:g> sekundy.</item>
       <item quantity="many">Snímka obrazovky pre hlásenie chyby sa vytvorí o <xliff:g id="NUMBER_1">%d</xliff:g> sekundy.</item>
@@ -863,6 +874,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> hodín</item>
       <item quantity="one">1 hodina</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problém s videom"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Je nám ľúto, ale toto video sa nedá streamovať do tohto zariadenia."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Toto video nie je možné prehrať."</string>
@@ -905,16 +926,25 @@
     <string name="capital_off" msgid="6815870386972805832">"O"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Dokončiť akciu pomocou aplikácie"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Dokončiť akciu pomocou aplikácie %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Dokončiť akciu"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Otvoriť v aplikácii"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Otvoriť v aplikácii %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Otvoriť"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Upraviť pomocou"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Upraviť v aplikácii %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Upraviť"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Zdieľať"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Zdieľať v aplikácii %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Zdieľať"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Odoslať pomocou aplikácie"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Odoslať pomocou aplikácie %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Odoslať"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Výber aplikácie na plochu"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Ako plochu používať aplikáciu %1$s"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Nasnímať fotografiu"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Nasnímať fotografiu pomocou aplikácie"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Nasnímať fotografiu pomocou aplikácie %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Nasnímať fotografiu"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Použiť ako predvolené nastavenie pre túto akciu."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Použiť inú aplikáciu"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Vymazať predvolené nastavenia v sekcii Nastavenia systému &gt; Aplikácie &gt; Stiahnuté položky."</string>
@@ -1480,7 +1510,7 @@
     <string name="select_year" msgid="7952052866994196170">"Vyberte rok"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Číslo <xliff:g id="KEY">%1$s</xliff:g> bolo odstránené"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Práca – <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Ak chcete uvoľniť túto obrazovku, súčasne klepnite na tlačidlá Späť a Prehľad a podržte ich."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Ak chcete uvoľniť túto obrazovku, klepnite na tlačidlo Späť a podržte ho."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Ak chcete uvoľniť túto obrazovku, klepnite na tlačidlo Prehľad a podržte ho."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Aplikácia je pripnutá. Uvoľnenie nie je na tomto zariadení povolené."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Obrazovka bola pripnutá"</string>
@@ -1492,6 +1522,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Aktualizované správcom"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Odstránený správcom"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"S cieľom predĺžiť výdrž batérie zníži šetrič batérie výkonnosť zariadenia a obmedzí vibrácie, služby určovania polohy a dátové prenosy na pozadí. Pošta, čet a ďalšie aplikácie, ktoré sa spoliehajú na synchronizáciu, sa možno nebudú aktualizovať, dokiaľ ich neotvoríte.\n\nPri nabíjaní zariadenia sa šetrič batérie automaticky vypne."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Ak chcete znížiť spotrebu dát, dátový server zabráni niektorým aplikáciam odosielať alebo prijímať dáta na pozadí. Aplikácia, ktorú momentálne používate, môže pristupovať k dátam, ale môže to robiť menej často. Znamená to, že napríklad obrázky sa nezobrazia, kým na ne neklepnete."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="few">%1$d minúty (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="many">%1$d minúty (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-sl/strings.xml b/core/res/res/values-sl/strings.xml
index 6cdcf31..6d2619d 100644
--- a/core/res/res/values-sl/strings.xml
+++ b/core/res/res/values-sl/strings.xml
@@ -126,11 +126,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Iskanje storitve"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Klicanje prek Wi-Fi-ja"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Če želite klicati ali pošiljati sporočila prek omrežja Wi-Fi, se najprej obrnite na operaterja, da nastavi to storitev. Nato v nastavitvah znova vklopite klicanje prek omrežja Wi-Fi."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registracija pri operaterju"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Klicanje prek Wi-Fi-ja (%s)"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Izklopljeno"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Prednostno – Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Prednostno – mobilno omrežje"</string>
@@ -166,7 +170,12 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Shramba ure je polna. Izbrišite nekaj datotek, da sprostite prostor."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Shramba televizorja je polna. Izbrišite nekaj datotek, da sprostite prostor."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Pomnilnik telefona je poln. Izbrišite nekaj datotek, da sprostite prostor."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Omrežje je lahko nadzorovano"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Nameščeni so overitelji potrdil</item>
+      <item quantity="two">Nameščeni so overitelji potrdil</item>
+      <item quantity="few">Nameščeni so overitelji potrdil</item>
+      <item quantity="other">Nameščeni so overitelji potrdil</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Neznana tretja oseba"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Skrbnik delovnega profila"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Nadzira: <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -213,9 +222,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Ustvari poročilo o napakah"</string>
     <string name="bugreport_message" msgid="398447048750350456">"S tem bodo zbrani podatki o trenutnem stanju naprave, ki bodo poslani v e-poštnem sporočilu. Izvedba poročila o napakah in priprava trajata nekaj časa, zato bodite potrpežljivi."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktivno poročilo"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"To možnost uporabite v večini primerov. Omogoča sledenje napredka poročila in vnos več podrobnosti o težavi. Morda bodo izpuščeni nekateri redkeje uporabljani razdelki, za katere je poročanje dolgotrajno."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Celotno poročilo"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"To možnost uporabite za najmanj motenj sistema, če je naprava neodzivna ali prepočasna oziroma ko potrebujete vse razdelke poročila. Ne naredi posnetka zaslona in ne omogoča vnosa več podrobnosti."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Posnetek zaslona za poročilo o napakah bo narejen čez <xliff:g id="NUMBER_1">%d</xliff:g> s.</item>
       <item quantity="two">Posnetek zaslona za poročilo o napakah bo narejen čez <xliff:g id="NUMBER_1">%d</xliff:g> s.</item>
@@ -863,6 +874,16 @@
       <item quantity="few"><xliff:g id="COUNT">%d</xliff:g> ure</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ur</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Težava z videoposnetkom"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Ta videoposnetek ni veljaven za pretakanje v to napravo."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Tega videoposnetka ni mogoče predvajati."</string>
@@ -905,16 +926,25 @@
     <string name="capital_off" msgid="6815870386972805832">"IZKLOPLJENO"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Dokončanje dejanja z"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Dokončanje dejanja z aplikacijo %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Izvedba dejanja"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Odpiranje z aplikacijo"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Odpiranje z aplikacijo %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Odpiranje"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Urejanje z aplikacijo"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Urejanje z aplikacijo %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Urejanje"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Skupna raba z aplikacijo"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Skupna raba z aplikacijo %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Skupna raba"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Pošiljanje z aplikacijo"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Pošiljanje z aplikacijo %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Pošiljanje"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Izbira aplikacije na začetnem zaslonu"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Uporaba aplikacije %1$s na začetnem zaslonu"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Snemanje slike"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Snemanje slike z aplikacijo"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Snemanje slike z aplikacijo %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Snemanje slike"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Privzeta uporaba za to dejanje."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Uporaba druge aplikacije"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Izbrišite privzet aplikacijo v sistemskih nastavitvah &gt; Aplikacije &gt; Preneseno."</string>
@@ -1480,7 +1510,7 @@
     <string name="select_year" msgid="7952052866994196170">"Izberite leto"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Številka <xliff:g id="KEY">%1$s</xliff:g> je izbrisana"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> za delo"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Če želite odpeti ta zaslon, se hkrati dotaknite tipk Nazaj in Pregled ter ju pridržite."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Če želite odpeti ta zaslon, se dotaknite tipke za nazaj in jo pridržite."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Če želite odpeti ta zaslon, se dotaknite tipke Pregled in jo pridržite."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Aplikacija je pripeta: v tej napravi odpenjanje ni dovoljeno."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Zaslon je pripet"</string>
@@ -1492,6 +1522,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Posodobil skrbnik"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Izbrisal skrbnik"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Varčevanje z energijo akumulatorja podaljša čas njegovega delovanja tako, da zmanjša zmogljivost delovanja naprave in omeji vibriranje, lokacijske storitve ter prenos večine podatkov v ozadju. Aplikacije za e-pošto, sporočanje in drugo, ki uporabljajo sinhroniziranje, se morda ne posodabljajo, razen če jih odprete.\n\nVarčevanje z energijo akumulatorja se samodejno izklopi med polnjenjem akumulatorja naprave."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Zaradi zmanjševanja prenesene količine podatkov varčevanje s podatki nekaterim aplikacijam preprečuje, da bi v ozadju pošiljale ali prejemale podatke. Aplikacija, ki jo trenutno uporabljate, lahko dostopa do podatkov, vendar to morda lahko počne manj pogosto. To na primer morda pomeni, da se slike ne prikažejo, dokler se jih ne dotaknete."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%d minuto (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="two">%d minuti (do <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-sq-rAL/strings.xml b/core/res/res/values-sq-rAL/strings.xml
index e5d8eaa..d6811b4 100644
--- a/core/res/res/values-sq-rAL/strings.xml
+++ b/core/res/res/values-sq-rAL/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Po kërkon për shërbim"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Telefonatë me Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Për të bërë telefonata dhe për të dërguar mesazhe me Wi-Fi, në fillim kërkoji operatorit celular ta konfigurojë këtë shërbim. Më pas aktivizo përsëri telefonatat me Wi-Fi, nga Cilësimet."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Regjistrohu me operatorin tënd celular"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Telefonatat me Wi-Fi nga %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Çaktivizuar"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Preferohet Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Preferohet rrjeti celular"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Hapësira ruajtëse e orës është plot. Fshi disa skedarë për të liruar hapësirë."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Hapësira ruajtëse e televizorit është plot. Fshi disa skedarë për të liruar hapësirë."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Hapësira ruajtëse e telefonit është plot. Fshi disa skedarë për të liruar hapësirë."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Rrjeti mund të monitorohet"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Autoritetet e certifikatës janë instaluar</item>
+      <item quantity="one">Autoriteti i certifikatës është instaluar</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Nga një palë e tretë e panjohur"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Nga administratori i profilit tënd të punës"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Nga <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Merr raportin e defekteve në kod"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Ky funksion mundëson mbledhjen e informacioneve mbi gjendjen aktuale të pajisjes për ta dërguar si mesazh mail-i. Do të duhet pak kohë nga nisja e raportit të defekteve në kod. Faleminderit për durimin."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Raport interaktiv"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Përdore këtë në shumicën e rrethanave. Të lejon të gjurmosh progresin e raportit dhe të fusësh më shumë detaje rreth problemit. Mund të fshijë disa seksione që përdoren më pak të cilat kërkojnë shumë kohë për t\'u raportuar."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Raporti i plotë"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Përdore këtë opsion për interferencë minimale kur pajisja nuk përgjigjet ose është tepër e ngadaltë, ose kur të nevojiten të gjitha seksionet. Nuk regjistron pamje të ekranit ose nuk të lejon që të fusësh më shumë të dhëna."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Marrja e pamjes së ekranit për raportin e defektit në kod në <xliff:g id="NUMBER_1">%d</xliff:g> sekonda.</item>
       <item quantity="one">Marrja e pamjes së ekranit për raportin e defektit në kod në <xliff:g id="NUMBER_0">%d</xliff:g> sekondë.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> orë</item>
       <item quantity="one">1 orë</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problem me videon"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Kjo video nuk ofrohet për transmetim në këtë pajisje."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Videoja nuk mund të luhet."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"Çaktivizuar"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Përfundo veprimin duke përdorur"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Përfundo veprimin duke përdorur %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Përfundo veprimin"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Hap me"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Hap me %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Hap"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Redakto me"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Redakto me %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Redakto"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Shpërnda publikisht me"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Shpërnda publikisht me %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Ndaj"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Dërgo me"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Dërgo me %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Dërgo"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Përzgjidh një aplikacion nga ekrani bazë"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Përdore %1$s si faqe bazë"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Regjistro imazhin"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Regjistro imazhin me"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Regjistro imazhin me %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Regjistro imazhin"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Përdore si parametër të paracaktuar për këtë veprim."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Përdor një aplikacion tjetër"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Pastro zgjedhjet e paracaktuara në \"Cilësimet e sistemit\" &gt; \"Aplikacionet\" &gt; \"Të shkarkuara\"."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Përzgjidh vitin"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> u fshi"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Puna <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Për t\'i hequr gozhdimin ekranit, prek dhe mbaj shtypur njëkohësisht \"Prapa\" dhe \"Përmbledhje\"."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Për t\'i hequr gozhdimin ekranit, prek dhe mbaj shtypur \"Prapa\"."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Për t\'i hequr gozhdimin ekranit, prek dhe mbaj shtypur \"Përmbledhje\"."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Ekrani është i gozhduar. Anulimi i mbërthimit nuk lejohet nga organizata jote."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ekrani u gozhdua"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Përditësuar nga administratori"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"U fshi nga administratori yt"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Për të përmirësuar jetëgjatësinë e baterisë, opsioni i kursimit të baterisë ul rendimentin e pajisjes tënde si dhe kufizon dridhjet dhe shumicën e të dhënave në sfond. Mail-i, mesazhet dhe aplikacionet e tjera që sinkronizohen automatikisht mund të mos përditësohen pa i hapur.\n\nKursimi i baterisë çaktivizohet automatikisht kur pajisja vihet në ngarkim."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Për të ndihmuar në reduktimin e përdorimit të të dhënave, \"Kursyesi i të dhënave\" pengon që disa aplikacione të dërgojnë apo të marrin të dhëna në sfond. Një aplikacion që po përdor aktualisht mund të ketë qasje te të dhënat, por këtë mund ta bëjë më rrallë. Kjo mund të nënkuptojë, për shembull, se imazhet nuk shfaqen kur troket mbi to."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Për %1$d minuta (deri në <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Për një minutë (deri në <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-sr/strings.xml b/core/res/res/values-sr/strings.xml
index 5ebe971c..3263a66 100644
--- a/core/res/res/values-sr/strings.xml
+++ b/core/res/res/values-sr/strings.xml
@@ -125,11 +125,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Претраживање услуге"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Позивање преко Wi-Fi-ја"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Да бисте упућивали позиве и слали поруке преко Wi-Fi-ја, прво затражите од мобилног оператера да вам омогући ову услугу. Затим у Подешавањима поново укључите Позивање преко Wi-Fi-ја."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Региструјте се код мобилног оператера"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Wi-Fi позивање преко оператера %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Искључено"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Предност има Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Предност има мобилна мрежа"</string>
@@ -165,7 +169,11 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Меморија сата је пуна. Избришите неке датотеке да бисте ослободили простор."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Меморијски простор на ТВ-у је попуњен. Избришите неке датотеке да бисте ослободили простор."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Складиште телефона је пуно! Избришите неке датотеке како бисте ослободили простор."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Мрежа се можда надгледа"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Инсталирани су ауторитети за издавање сертификата</item>
+      <item quantity="few">Инсталирани су ауторитети за издавање сертификата</item>
+      <item quantity="other">Инсталирани су ауторитети за издавање сертификата</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Од стране непознате треће стране"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Од стране администратора профила за посао"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Од стране <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -212,9 +220,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Направи извештај о грешци"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Овим ће се прикупити информације о тренутном стању уређаја како би биле послате у поруци е-поште. Од започињања извештаја о грешци до тренутка за његово слање проћи ће неко време; будите стрпљиви."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Интерактив. извештај"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Користите ово у већини случајева. То вам омогућава да пратите напредак извештаја и да уносите додатне детаље о проблему. Вероватно ће изоставити неке мање коришћене одељке за које прављење извештаја дуго траје."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Комплетан извештај"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Користите ову опцију ради минималних системских сметњи када уређај не реагује, преспор је или су вам потребни сви одељци извештаја. Не прави снимак екрана нити вам дозвољава унос додатних детаља."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Направићемо снимак екрана ради извештаја о грешци за <xliff:g id="NUMBER_1">%d</xliff:g> секунду.</item>
       <item quantity="few">Направићемо снимак екрана ради извештаја о грешци за <xliff:g id="NUMBER_1">%d</xliff:g> секунде.</item>
@@ -857,6 +867,16 @@
       <item quantity="few"><xliff:g id="COUNT">%d</xliff:g> сата</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> сати</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Проблем са видео снимком"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Овај видео не може да се стримује на овом уређају."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Не можете да пустите овај видео."</string>
@@ -899,16 +919,25 @@
     <string name="capital_off" msgid="6815870386972805832">"НЕ"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Довршавање радње помоћу"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Завршите радњу помоћу апликације %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Заврши радњу"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Отворите помоћу"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Отворите помоћу апликације %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Отвори"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Измените помоћу"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Измените помоћу апликације %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Измени"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Делите помоћу"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Делите помоћу апликације %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Дели"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Пошаљите помоћу:"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Пошаљите помоћу: %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Пошаљи"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Изаберите апликацију за почетну страницу"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Користите %1$s за почетну"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Снимите слику"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Снимите слику помоћу апликације"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Снимите слику помоћу апликације %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Снимите слику"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Подразумевано користи за ову радњу."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Користите другу апликацију"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Обришите подразумевано подешавање у менију Подешавања система &gt; Апликације &gt; Преузето."</string>
@@ -1470,7 +1499,7 @@
     <string name="select_year" msgid="7952052866994196170">"Изаберите годину"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Избрисали сте <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> на послу"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Да бисте откачили овај екран, истовремено додирните и задржите Назад и Преглед."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Да бисте откачили овај екран, додирните и задржите Назад."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Да бисте откачили овај екран, додирните и задржите Преглед."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Апликација је закачена: откачињање није дозвољено на овом уређају."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Екран је закачен"</string>
@@ -1482,6 +1511,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Ажурирао је администратор"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Избрисао је ваш адмиистратор"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Да би продужила време трајања батерије, уштеда батерије смањује перформансе уређаја и ограничава вибрацију, услуге локације и већину позадинских података. Имејл, размена порука и друге апликације које се ослањају на синхронизацију можда неће да се ажурирају ако их не отворите.\n\nУштеда батерије се аутоматски искључује када се уређај пуни."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Да би се смањила потрошња података, Уштеда података спречава неке апликације да шаљу или примају податке у позадини. Апликација коју тренутно користите може да приступа подацима, али ће то чинити ређе. На пример, слике се неће приказивати док их не додирнете."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d минут (до <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="few">%1$d минута (до <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-sv/strings.xml b/core/res/res/values-sv/strings.xml
index bf64512..ab1868a 100644
--- a/core/res/res/values-sv/strings.xml
+++ b/core/res/res/values-sv/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Söker efter tjänst"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi-samtal"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Om du vill ringa samtal och skicka meddelanden via Wi-Fi ber du först operatören att konfigurera tjänsten. Därefter kan du aktivera Wi-Fi-samtal på nytt från Inställningar."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Registrera dig hos operatören"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi-samtal"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Av"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi i första hand"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobil i första hand"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Klockans lagringsutrymme är fullt. Ta bort några filer för att frigöra utrymme."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Lagringsutrymmet på TV:n är fullt. Ta bort några filer för att frigöra utrymme."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Mobilens lagringsutrymme är fullt. Ta bort några filer för att frigöra utrymme."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Nätverket kan vara övervakat"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Certifikatutfärdare har installerats</item>
+      <item quantity="one">Certifikatutfärdare har installerats</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Av en okänd tredje part"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Av jobbprofilsadministratören"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Av <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Skapa felrapport"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Nu hämtas information om aktuell status för enheten, som sedan skickas i ett e-postmeddelade. Det tar en liten stund innan felrapporten är färdig och kan skickas, så vi ber dig ha tålamod."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktiv rapport"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Bör användas i de flesta fall. Då kan du spåra rapportförloppet och ange mer information om problemet. En del mindre använda avsnitt, som det tar lång tid att rapportera om, kan uteslutas."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Fullständig rapport"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Alternativet innebär minsta möjliga störning när enheten inte svarar eller är långsam, eller när alla avsnitt ska ingå i rapporten. Inget skärmdump tas och du kan inte ange mer information."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Tar en skärmdump till felrapporten om <xliff:g id="NUMBER_1">%d</xliff:g> sekunder.</item>
       <item quantity="one">Tar en skärmdump till felrapporten om <xliff:g id="NUMBER_0">%d</xliff:g> sekund.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> timmar</item>
       <item quantity="one">1 timme</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Videoproblem"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Videon kan tyvärr inte spelas upp i den här enheten."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Det går inte att spela upp videon."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"AV"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Slutför åtgärd genom att använda"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Slutför åtgärden med %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Slutför åtgärd"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Öppna med"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Öppna med %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Öppna"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Redigera med"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Redigera med %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Redigera"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Dela med"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Dela med %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Dela"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Skicka med"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Skicka med %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Skicka"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Välj en startsidesapp"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Använd %1$s som startsida"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Ta bild"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Ta bild med"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Ta bild med %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Ta bild"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Använd som standard för denna åtgärd."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Använd en annan app"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Rensa standardinställningar i Systeminställningar &gt; Appar &gt; Hämtat."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Välj år"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> har tagits bort"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> för arbetet"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Om du vill lossa skärmen trycker du länge på Tillbaka och Översikt samtidigt."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Om du vill lossa skärmen trycker du länge på Tillbaka."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Om du vill lossa skämen trycker du länge på Översikt."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Appen är fäst. Att lossa den är inte tillåtet på den här enheten."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Skärmen är fäst"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Uppdaterat av administratören"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Paketet har raderats av administratören"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"I batterisparläget reduceras enhetens prestanda så att batteriet ska räcka längre och vibration, platstjänster samt den mesta användningen av bakgrundsdata begränsas. Det kan hända att appar för e-post, sms och annat som kräver synkronisering inte uppdateras förrän du öppnar dem.\n\nBatterisparläget inaktiveras automatiskt när enheten laddas."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Med databesparing kan du minska dataanvändningen genom att hindra en del appar från att skicka eller ta emot data i bakgrunden. Appar som du använder kan komma åt data, men det sker kanske inte lika ofta. Detta innebär t.ex. att bilder inte visas förrän du trycker på dem."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">I %1$d minuter (till kl. <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">I en minut (till kl. <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-sw/strings.xml b/core/res/res/values-sw/strings.xml
index 6c2952a..055d337 100644
--- a/core/res/res/values-sw/strings.xml
+++ b/core/res/res/values-sw/strings.xml
@@ -124,13 +124,13 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Inatafuta Huduma"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Upigaji Simu kwa Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Ili upige simu na kutuma ujumbe kupitia Wi-Fi, mwambie mtoa huduma wako asanidi huduma hii kwanza. Kisha uwashe tena upigaji simu kwa Wi-Fi kutoka kwenye Mipangilio."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Jisajili na mtoa huduma wako"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
     <!-- String.format failed for translation -->
-    <!-- no translation found for wfcDataSpnFormat (1118052028767666883) -->
-    <skip />
+    <!-- no translation found for wfcSpnFormats:0 (6830082633573257149) -->
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Imezimwa"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi inapedelewa"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mitandao ya simu za mkononi inapendelewa"</string>
@@ -166,7 +166,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Hifadhi ya saa imejaa. Futa baadhi ya faili ili uweze kupata nafasi."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Hifadhi ya runinga ni kamili. Futa baadhi ya faili ili upate nafasi."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Hifadhi ya simu imejaa. Futa baadhi ya faili ili uweze kupata nafasi."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Huenda mtandao unafuatiliwa"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Imesakinisha mamlaka ya cheti</item>
+      <item quantity="one">Imesakinisha mamlaka ya cheti</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Na mtu mwingine asiyejulikana"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Na msimamizi wa wasifu wako wa kazini"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Na <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -213,9 +216,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Chukua ripoti ya hitilafu"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Hii itakusanya maelezo kuhusu hali ya kifaa chako kwa sasa, na itume kama barua pepe. Itachukua muda mfupi tangu ripoti ya hitilafu ianze kuzalishwa hadi iwe tayari kutumwa; vumilia."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Ripoti ya kushirikiana"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Itumie katika hali nyingi. Inakuruhusu kufuatilia maendeleo ya ripoti na kuweka maelezo zaidi kuhusu tatizo. Huenda ikaondoa sehemu ambazo hazitumiki sana, ambazo huchukua muda mrefu kuripoti."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Ripoti kamili"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Tumia chaguo hili ili upunguze kukatizwa wakati kifaa chako kinapokwama au kinapofanya kazi pole pole sana, au unapohitaji sehemu zote za ripoti. Haipigi picha ya skrini wala kukuruhusu kuweka maelezo zaidi."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Inapiga picha ya skrini ili iripoti hitilafu baada ya sekunde <xliff:g id="NUMBER_1">%d</xliff:g>.</item>
       <item quantity="one">Inapiga picha ya skrini ili iripoti hitilafu baada ya sekunde <xliff:g id="NUMBER_0">%d</xliff:g>.</item>
@@ -246,7 +251,7 @@
     <string name="permgrouplab_sms" msgid="228308803364967808">"SMS"</string>
     <string name="permgroupdesc_sms" msgid="4656988620100940350">"tuma na uangalie ujumbe wa SMS"</string>
     <string name="permgrouplab_storage" msgid="1971118770546336966">"Hifadhi"</string>
-    <string name="permgroupdesc_storage" msgid="637758554581589203">"fikia picha, maudhui na faili kwenye kifaa chako"</string>
+    <string name="permgroupdesc_storage" msgid="637758554581589203">"ifikie picha, maudhui na faili kwenye kifaa chako"</string>
     <string name="permgrouplab_microphone" msgid="171539900250043464">"Kipokea sauti"</string>
     <string name="permgroupdesc_microphone" msgid="4988812113943554584">"rekodi sauti"</string>
     <string name="permgrouplab_camera" msgid="4820372495894586615">"Kamera"</string>
@@ -853,6 +858,16 @@
       <item quantity="other">Saa <xliff:g id="COUNT">%d</xliff:g></item>
       <item quantity="one">Saa 1</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Shida ya video"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Video hii si halali kutiririshwa kwa kifaa hiki."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Haiwezi kucheza video hii."</string>
@@ -895,16 +910,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ZIMA"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Kamilisha kitendo ukitumia"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Kamilisha kitendo ukitumia %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Kamilisha kitendo"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Fungua ukitumia"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Fungua ukitumia %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Fungua"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Badilisha kwa"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Badilisha kwa %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Badilisha"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Shiriki na"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Shiriki na %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Shiriki"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Tuma kwa kutumia"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Tuma kwa kutumia %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Tuma"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Chagua programu ya Mwanzo"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Tumia %1$s kama  programu ya Mwanzo"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Piga picha"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Piga picha ukitumia"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Piga picha ukitumia %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Piga picha"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Tumia kama chaguo-msingi la kitendo hiki."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Tumia programu tofauti"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Futa chaguo-msingi katika mipangilio ya Mfumo &gt; Apps &gt; iliyopakuliwa."</string>
@@ -1462,7 +1486,7 @@
     <string name="select_year" msgid="7952052866994196170">"Chagua mwaka"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> kimefutwa"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Ya kazini <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Ili ubanue skrini hii, gusa na ushikilie Nyuma na Muhtasari kwa wakati mmoja."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Ili kubandua skrini hii, gusa na ushikilie kitufe cha Nyuma."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Ili ubanue skrini hii, gusa na ushikilie Muhtasari."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Programu imebanwa: Kubanuliwa hakuruhusiwi kwenye kifaa hiki."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Skrini imebandikwa"</string>
@@ -1474,6 +1498,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Kimesasiswa na msimamizi wako"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Kilifutwa na msimamizi wako"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Kusaidia kuboresha muda wa matumizi ya betri, inayookoa betri hupunguza utendaji wa kifaa chako na kupunguza mtetemo, huduma za utambuzi wa mahali, na data nyingi ya chini chini. Barua pepe, ujumbe na programu nyingine zinazotege,ea usawazishaji huenda zisisasishwe usipozifungua.\n\nInayookoa betri hujizima kiotomatiki kifaa chako kinapokuwa kinachaji."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Ili kusaidia kupunguza matumizi ya data, Kiokoa Data huzuia baadhi ya programu kupokea na kutuma data chini chini. Programu ambayo unatumia sasa inaweza kufikia data, lakini si kila wakati. Kwa mfano, haitaonyesha picha hadi utakapozigonga."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Kwa dakika %1$d (hadi <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Kwa dakika moja (hadi <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-ta-rIN/strings.xml b/core/res/res/values-ta-rIN/strings.xml
index e805360..f3730c5 100644
--- a/core/res/res/values-ta-rIN/strings.xml
+++ b/core/res/res/values-ta-rIN/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"சேவையைத் தேடுகிறது"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"வைஃபை அழைப்பு"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"வைஃபை மூலம் அழைக்க மற்றும் செய்திகள் அனுப்ப, முதலில் மொபைல் நிறுவனத்திடம் இந்தச் சேவையை அமைக்குமாறு கேட்கவும். பிறகு அமைப்புகளில் மீண்டும் வைஃபை அழைப்பை இயக்கவும்."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"உங்கள் மொபைல் நிறுவனத்தில் பதிவுசெய்யவும்"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s வைஃபை அழைப்பு"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"முடக்கப்பட்டுள்ளது"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"வைஃபைக்கு முன்னுரிமை"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"செல்லுலாருக்கு முன்னுரிமை"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"வாட்ச் சேமிப்பிடம் நிரம்பியது. இடத்தைக் காலியாக்க சில கோப்புகளை நீக்கவும்."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"டிவி சேமிப்பகம் நிரம்பியது. இடத்தை உருவாக்க, சில கோப்புகளை நீக்கவும்."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"மொபைல் சேமிப்பிடம் நிரம்பியது. இடத்தைக் காலியாக்க சில கோப்புகளை அழிக்கவும்."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"பிணையம் கண்காணிக்கப்படலாம்"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">சான்றிதழ் அங்கீகாரங்கள் நிறுவப்பட்டன</item>
+      <item quantity="one">சான்றிதழ் அங்கீகாரம் நிறுவப்பட்டது</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"அறியப்படாத மூன்றாம் தரப்பினரின்படி"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"பணியிட சுயவிவர நிர்வாகி வழங்கியது"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> இன் படி"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"பிழை அறிக்கையை எடு"</string>
     <string name="bugreport_message" msgid="398447048750350456">"உங்கள் நடப்புச் சாதன நிலையை மின்னஞ்சல் செய்தியாக அனுப்ப, அது குறித்த தகவலை இது சேகரிக்கும். பிழை அறிக்கையைத் தொடங்குவதில் இருந்து, அது அனுப்புவதற்குத் தயாராகும் வரை, இதற்குச் சிறிது நேரம் ஆகும்; பொறுமையாகக் காத்திருக்கவும்."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"ஊடாடத்தக்க அறிக்கை"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"பெரும்பாலான சூழ்நிலைகளில் இதைப் பயன்படுத்தவும். இது அறிக்கையின் நிலையைக் கண்காணிக்கவும், சிக்கலைப் பற்றிய மேலும் விவரங்களை உள்ளிடவும் அனுமதிக்கும். அறிக்கையிட நீண்ட நேரம் எடுக்கக்கூடிய குறைவாகப் பயன்படுத்தப்படும் பிரிவுகள் சிலவற்றை இது தவிர்க்கக்கூடும்."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"முழு அறிக்கை"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"சாதனம் செயல்படாமல் இருக்கும் போது அல்லது மெதுவாகச் செயல்படும் போது அல்லது உங்களுக்கு எல்லா அறிக்கைப் பிரிவுகளும் தேவைப்படும் போது குறைவான முறைமைக் குறுக்கீடுகளுக்கு, இந்த விருப்பத்தைப் பயன்படுத்தவும். இந்த விருப்பம் ஸ்கிரீன் ஷாட்டை எடுக்காது அல்லது மேலும் விவரங்களை உள்ளிட அனுமதிக்காது."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other"><xliff:g id="NUMBER_1">%d</xliff:g> வினாடிகளில் பிழை அறிக்கைக்கான ஸ்கிரீன் ஷாட் எடுக்கப்படும்.</item>
       <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> வினாடியில் பிழை அறிக்கைக்கான ஸ்கிரீன் ஷாட் எடுக்கப்படும்.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> மணிநேரம்</item>
       <item quantity="one">1 மணிநேரம்</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"வீடியோவில் சிக்கல்"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"சாதனத்தில் ஸ்ட்ரீம் செய்வதற்கு இது சரியான வீடியோ அல்ல."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"இந்த வீடியோவை இயக்க முடியவில்லை."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"முடக்கு"</string>
     <string name="whichApplication" msgid="4533185947064773386">"இதைப் பயன்படுத்தி செயலை நிறைவுசெய்"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$s ஐப் பயன்படுத்தி செயலை முடிக்கவும்"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"செயலை முடி"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"இதன்மூலம் திற"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s மூலம் திற"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"திற"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"இதன் மூலம் திருத்து"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s மூலம் திருத்து"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"மாற்று"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"இதன் மூலம் பகிர்"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s மூலம் பகிர்"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"பகிர்"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"இதைப் பயன்படுத்தி அனுப்பு:"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$sஐப் பயன்படுத்தி அனுப்பு"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"அனுப்பு"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"முகப்புப் பயன்பாட்டைத் தேர்வுசெய்க"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$sஐ முகப்பாகப் பயன்படுத்து"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"படமெடு"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"இதன் மூலம் படமெடு:"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s மூலம் படமெடு"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"படமெடு"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"இந்தச் செயலுக்கு இயல்பாகப் பயன்படுத்து."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"வேறு பயன்பாட்டைப் பயன்படுத்தவும்"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"முறைமை அமைப்பு &gt; பயன்பாடுகள் &gt; பதிவிறக்கியவை என்பதில் உள்ள இயல்பை அழிக்கவும்."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"ஆண்டைத் தேர்ந்தெடுக்கவும்"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> நீக்கப்பட்டது"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"பணியிடம் <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"இந்தத் திரையை விலக்க, பின் மற்றும் மேலோட்டப் பார்வையை ஒரே நேரத்தில் தொட்டுப் பிடித்திருக்கவும்."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"இந்தத் திரையை விலக்க, முந்தையது எனும் பொத்தானைத் தொட்டுப் பிடிக்கவும்."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"இந்தத் திரையை விலக்க, மேலோட்டப் பார்வையைத் தொட்டுப் பிடித்திருக்கவும்."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"பயன்பாடு பொருத்தப்பட்டது: பொருத்தியதை நீக்குவதற்கு இந்தச் சாதனத்தில் அனுமதியில்லை."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"திரை பின் செய்யப்பட்டது"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"உங்கள் நிர்வாகி புதுப்பித்துள்ளார்"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"நிர்வாகி நீக்கிவிட்டார்"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"பேட்டரி ஆயுளை மேம்படுத்த, பேட்டரி சேமிப்பான் உங்கள் சாதனத்தின் செயல்திறனைக் குறைத்து, அதிர்வு, இடச் சேவைகள் மற்றும் பெரும்பாலான பின்புலத் தரவு போன்றவற்றைக் கட்டுப்படுத்துகிறது. ஒத்திசைவைச் சார்ந்துள்ள மின்னஞ்சல், செய்தியிடல் மற்றும் பிற பயன்பாடுகள் திறக்கும்வரை, அவை புதுப்பிக்கப்படாமல் இருக்கலாம்.\n\nஉங்கள் ஃபோன் சார்ஜ் செய்யப்படும்போது, பேட்டரி சேமிப்பான் தானாகவே முடங்கும்."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"தரவுப் பயன்பாட்டைக் குறைப்பதற்கு உதவ, பின்புலத்தில் தரவை அனுப்புவது அல்லது பெறுவதிலிருந்து சில பயன்பாடுகளைத் தரவுச் சேமிப்பான் தடுக்கும். தற்போது பயன்படுத்தும் பயன்பாடானது தரவை அணுகலாம், ஆனால் அடிக்கடி அல்ல. எடுத்துக்காட்டாக, படங்களை நீங்கள் தட்டும் வரை, அவை காட்டப்படாது."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d நிமிடங்களுக்கு (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> வரை)</item>
       <item quantity="one">ஒரு நிமிடத்திற்கு (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> வரை)</item>
diff --git a/core/res/res/values-te-rIN/strings.xml b/core/res/res/values-te-rIN/strings.xml
index 8585c07..a55331c 100644
--- a/core/res/res/values-te-rIN/strings.xml
+++ b/core/res/res/values-te-rIN/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"సేవ కోసం శోధిస్తోంది"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi కాలింగ్"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fiలో కాల్‌లు చేయడం మరియు సందేశాలు పంపడం కోసం ముందుగా ఈ సేవను సెటప్ చేయడానికి మీ క్యారియర్‌ను అడగండి. ఆపై సెట్టింగ్‌ల నుండి మళ్లీ Wi-Fi కాలింగ్‌ను ఆన్ చేయండి."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"మీ క్యారియర్‌తో నమోదు చేయండి"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi కాలింగ్"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"ఆఫ్‌లో ఉంది"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fiకి ప్రాధాన్యత"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"సెల్యులార్‌కి ప్రాధాన్యత"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"వాచ్ నిల్వ నిండింది. స్థలాన్ని ఖాళీ చేయడానికి కొన్ని ఫైల్‌లను తొలగించండి."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"టీవీ నిల్వ నిండింది. ఖాళీ స్థలం కోసం కొన్ని ఫైల్‌లను తొలగించండి."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ఫోన్ నిల్వ నిండింది. స్థలాన్ని ఖాళీ చేయడానికి కొన్ని ఫైల్‌లను తొలగించండి."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"నెట్‌వర్క్ పర్యవేక్షించబడవచ్చు"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">ప్రమాణపత్ర అధికారాలు ఇన్‌స్టాల్ చేయబడ్డాయి</item>
+      <item quantity="one">ప్రమాణపత్ర అధికారం ఇన్‌స్టాల్ చేయబడింది</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"తెలియని మూడవ పక్షం ద్వారా"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"మీ కార్యాలయ ప్రొఫైల్ నిర్వాహకుని ద్వారా"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> ద్వారా"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"బగ్ నివేదికను సిద్ధం చేయి"</string>
     <string name="bugreport_message" msgid="398447048750350456">"ఇది ఇ-మెయిల్ సందేశం రూపంలో పంపడానికి మీ ప్రస్తుత పరికర స్థితి గురించి సమాచారాన్ని సేకరిస్తుంది. బగ్ నివేదికను ప్రారంభించడం మొదలుకొని పంపడానికి సిద్ధం చేసే వరకు ఇందుకు కొంత సమయం పడుతుంది; దయచేసి ఓపిక పట్టండి."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"ప్రభావశీల నివేదిక"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"చాలా సందర్భాల్లో ఇది ఉపయోగించబడుతుంది. ఇది మిమ్మల్ని నివేదిక ప్రోగ్రెస్ ట్రాక్ చేయడానికి మరియు సమస్య గురించి మరిన్ని వివరాలను నమోదు చేయడానికి అనుమతిస్తుంది. ఇది నివేదించడానికి అధిక సమయం పట్టే తక్కువగా వినియోగించే విభాగాలను విడిచిపెట్టవచ్చు."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"పూర్తి నివేదిక"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"మీ పరికరం ప్రతిస్పందించనప్పుడు లేదా చాలా నెమ్మదిగా ఉన్నప్పుడు లేదా మీకు అన్ని నివేదిక విభాగాలు అవసరమైనప్పుడు ఏర్పడే కనీస స్థాయి సిస్టమ్ అంతరాయానికి ఈ ఎంపిక ఉపయోగించబడుతుంది. ఇది స్క్రీన్‌షాట్ తీయదు లేదా మరిన్ని వివరాలను నమోదు చేయడానికి మిమ్మల్ని అనుమతించదు."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">బగ్ నివేదిక కోసం <xliff:g id="NUMBER_1">%d</xliff:g> సెకన్లలో స్క్రీన్‌షాట్ తీయబోతోంది.</item>
       <item quantity="one">బగ్ నివేదిక కోసం <xliff:g id="NUMBER_0">%d</xliff:g> సెకనులో స్క్రీన్‌షాట్ తీయబోతోంది.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> గంటలు</item>
       <item quantity="one">1 గంట</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"వీడియో సమస్య"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"ఈ పరికరంలో ప్రసారం చేయడానికి ఈ వీడియో చెల్లదు."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"ఈ వీడియోను ప్లే చేయడం సాధ్యపడదు."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ఆఫ్‌లో ఉంది"</string>
     <string name="whichApplication" msgid="4533185947064773386">"దీన్ని ఉపయోగించి చర్యను పూర్తి చేయండి"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"%1$sను ఉపయోగించి చర్యను పూర్తి చేయి"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"చర్యను పూర్తి చేయి"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"దీనితో తెరువు"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$sతో తెరువు"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"తెరువు"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"దీనితో సవరించు"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$sతో సవరించు"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"సవరించు"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"దీనితో భాగస్వామ్యం చేయి"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$sతో భాగస్వామ్యం చేయి"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"భాగస్వామ్యం చేయి"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"దీన్ని ఉపయోగించి పంపండి"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$sని ఉపయోగించి పంపండి"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"పంపు"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"హోమ్ అనువర్తనాన్ని ఎంచుకోండి"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$sని హోమ్‌గా ఉపయోగించండి"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"చిత్రాన్ని క్యాప్చర్ చేయి"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"దీనితో చిత్రాన్ని క్యాప్చర్ చేయి"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$sతో చిత్రాన్ని క్యాప్చర్ చేయండి"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"చిత్రాన్ని క్యాప్చర్ చేయి"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"ఈ చర్యకు డిఫాల్ట్‌గా ఉపయోగించండి."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"వేరొక అనువర్తనాన్ని ఉపయోగించండి"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"సిస్టమ్ సెట్టింగ్‌లు &gt; అనువర్తనాలు &gt; డౌన్‌లోడ్ చేయబడినవిలో డిఫాల్ట్‌ను క్లియర్ చేయి."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"సంవత్సరాన్ని ఎంచుకోండి"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> తొలగించబడింది"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"కార్యాలయం <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"ఈ స్క్రీన్‌ను అన్‌పిన్ చేయడానికి, వెనుకకు మరియు అవలోకనం బటన్‌లను ఒకేసారి నొక్కి, ఉంచండి."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"ఈ స్క్రీన్‌ని అన్‌పిన్ చేయడానికి, వెనుకకు తాకి అలాగే నొక్కి ఉంచండి."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"ఈ స్క్రీన్‌ని అన్‌పిన్ చేయడానికి, అవలోకనం నొక్కి, ఉంచండి."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"అనువర్తనం పిన్ చేయబడింది: ఈ పరికరంలో అన్‌పిన్ చేయడానికి అనుమతి లేదు."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"స్క్రీన్ పిన్ చేయబడింది"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"మీ నిర్వాహకుడు నవీకరించారు"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"మీ నిర్వాహకులు తొలగించారు"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"బ్యాటరీ జీవితకాలాన్ని మెరుగుపరచడంలో సహాయపడటానికి, బ్యాటరీ సేవర్ మీ పరికరం పనితీరును తగ్గిస్తుంది మరియు వైబ్రేషన్‌ను, స్థాన సేవలను మరియు ఎక్కువ నేపథ్య డేటాను పరిమితం చేస్తుంది. ఇమెయిల్, మెసేజింగ్ మరియు సమకాలీకరణపై ఆధారపడే ఇతర అనువర్తనాలు మీరు వాటిని తెరిస్తే మినహా నవీకరించబడవు.\n\nమీ పరికరం ఛార్జ్ అవుతున్నప్పుడు బ్యాటరీ సేవర్ స్వయంచాలకంగా ఆఫ్ అవుతుంది."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"డేటా వినియోగాన్ని తగ్గించడంలో సహాయకరంగా ఉండటానికి, డేటా సేవర్ కొన్ని అనువర్తనాలను నేపథ్యంలో డేటాను పంపకుండా లేదా స్వీకరించకుండా నిరోధిస్తుంది. మీరు ప్రస్తుతం ఉపయోగిస్తున్న అనువర్తనం డేటాను ప్రాప్యత చేయగలదు కానీ అలా అరుదుగా చేయవచ్చు. అంటే, ఉదాహరణకు, మీరు ఆ చిత్రాలను నొక్కే వరకు అవి ప్రదర్శించబడవు."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d నిమిషాల పాటు (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> వరకు)</item>
       <item quantity="one">ఒక నిమిషం పాటు (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> వరకు)</item>
diff --git a/core/res/res/values-th/strings.xml b/core/res/res/values-th/strings.xml
index 17a732f..87bd7df 100644
--- a/core/res/res/values-th/strings.xml
+++ b/core/res/res/values-th/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"กำลังค้นหาบริการ"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"การโทรผ่าน Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"หากต้องการโทรออกและส่งข้อความผ่าน Wi-Fi โปรดสอบถามผู้ให้บริการของคุณก่อนเพื่อตั้งค่าบริการนี้ แล้วเปิดการโทรผ่าน Wi-Fi อีกครั้งจากการตั้งค่า"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"ลงทะเบียนกับผู้ให้บริการ"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"กำลังเรียก Wi-Fi ของ %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"ปิด"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"ต้องการใช้ Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"ต้องการใช้เครือข่ายมือถือ"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"ที่เก็บข้อมูลนาฬิกาเต็ม โปรดลบไฟล์บางไฟล์เพื่อเพิ่มพื้นที่ว่าง"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"พื้นที่เก็บข้อมูลในทีวีเต็ม โปรดลบบางไฟล์เพื่อเพิ่มพื้นที่ว่าง"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"ที่เก็บข้อมูลโทรศัพท์เต็ม ลบบางไฟล์เพื่อเพิ่มที่ว่าง"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"เครือข่ายอาจได้รับการตรวจสอบ"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">ติดตั้งใบรับรอง CA แล้ว</item>
+      <item quantity="one">ติดตั้งใบรับรอง CA แล้ว</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"โดยบุคคลที่สามที่ไม่รู้จัก"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"โดยผู้ดูแลโปรไฟล์งานของคุณ"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"โดย <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"ใช้รายงานข้อบกพร่อง"</string>
     <string name="bugreport_message" msgid="398447048750350456">"การดำเนินการนี้จะรวบรวมข้อมูลเกี่ยวกับสถานะปัจจุบันของอุปกรณ์ของคุณ โดยจะส่งไปในรูปแบบข้อความอีเมล อาจใช้เวลาสักครู่ตั้งแต่เริ่มการสร้างรายงานข้อบกพร่องจนกระทั่งเสร็จสมบูรณ์ โปรดอดทนรอ"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"รายงานแบบอินเทอร์แอกทีฟ"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"ใช้ตัวเลือกนี้ได้เกือบทุกสถานการณ์ โดยจะอนุญาตให้คุณติดตามความคืบหน้าของรายงานและป้อนรายละเอียดเพิ่มเติมของปัญหา หัวข้อที่ใช้งานน้อยแต่ใช้เวลานานในการรายงานอาจถูกข้ามไป"</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"ใช้ตัวเลือกนี้ได้เกือบทุกสถานการณ์ โดยจะอนุญาตให้คุณติดตามความคืบหน้าของรายงาน ป้อนรายละเอียดเพิ่มเติมของปัญหา และถ่ายภาพหน้าจอ หัวข้อที่ใช้งานน้อยแต่ใช้เวลานานในการรายงานอาจถูกข้ามไป"</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"รายงานฉบับเต็ม"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"ใช้ตัวเลือกนี้เพื่อให้มีการรบกวนระบบน้อยที่สุดเมื่ออุปกรณ์ของคุณไม่ตอบสนองหรือตอบสนองช้ามาก หรือเมื่อคุณต้องการทุกหัวข้อในรายงาน ตัวเลือกนี้จะไม่ถ่ายภาพหน้าจอหรืออนุญาตให้คุณป้อนรายละเอียดเพิ่มเติม"</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"ใช้ตัวเลือกนี้เพื่อให้มีการรบกวนระบบน้อยที่สุดเมื่ออุปกรณ์ของคุณไม่ตอบสนองหรือตอบสนองช้ามาก หรือเมื่อคุณต้องการทุกหัวข้อในรายงาน ตัวเลือกนี้จะไม่อนุญาตให้คุณป้อนรายละเอียดเพิ่มเติมหรือถ่ายภาพหน้าจอเพิ่มเติม"</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">จะจับภาพหน้าจอสำหรับรายงานข้อบกพร่องใน <xliff:g id="NUMBER_1">%d</xliff:g> วินาที</item>
       <item quantity="one">จะจับภาพหน้าจอสำหรับรายงานข้อบกพร่องใน <xliff:g id="NUMBER_0">%d</xliff:g> วินาที</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ชั่วโมง</item>
       <item quantity="one">1 ชั่วโมง</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"ขณะนี้"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"ปัญหาเกี่ยวกับวิดีโอ"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"วิดีโอนี้ไม่สามารถสตรีมไปยังอุปกรณ์นี้"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"ไม่สามารถเล่นวิดีโอนี้"</string>
@@ -893,16 +909,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ปิด"</string>
     <string name="whichApplication" msgid="4533185947064773386">"ทำงานให้เสร็จโดยใช้"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"ดำเนินการให้เสร็จสมบูรณ์โดยใช้ %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"ทำงานให้เสร็จสิ้น"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"เปิดด้วย"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"เปิดด้วย %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"เปิด"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"แก้ไขด้วย"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"แก้ไขด้วย %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"แก้ไข"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"แชร์กับ"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"แชร์กับ %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"แชร์"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"ส่งโดยใช้"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"ส่งโดยใช้ %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"ส่ง"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"เลือกแอปหน้าแรก"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"ใช้ %1$s เป็นหน้าแรก"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"จับภาพ"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"จับภาพด้วย"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"จับภาพด้วย %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"จับภาพ"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"ใช้ค่าเริ่มต้นสำหรับการทำงานนี้"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"ใช้แอปอื่น"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"ล้างค่าเริ่มต้นในการตั้งค่าระบบ &gt; แอปพลิเคชัน &gt; ดาวน์โหลด"</string>
@@ -1460,7 +1485,7 @@
     <string name="select_year" msgid="7952052866994196170">"เลือกปี"</string>
     <string name="deleted_key" msgid="7659477886625566590">"ลบ <xliff:g id="KEY">%1$s</xliff:g> แล้ว"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g>ที่ทำงาน"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"หากต้องการเลิกตรึงหน้าจอนี้ แตะ \"กลับ\" และ \"ภาพรวม\" ค้างไว้พร้อมกัน"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"หากต้องการเลิกตรึงหน้าจอนี้ แตะ \"กลับ\" ค้างไว้"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"หากต้องการเลิกตรึงหน้าจอ แตะ \"ภาพรวม\" ค้างไว้"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"มีการตรึงแอป: ไม่อนุญาตให้เลิกตรึงบนอุปกรณ์นี้"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"ตรึงหน้าจอแล้ว"</string>
@@ -1472,6 +1497,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"อัปเดตโดยผู้ดูแลระบบ"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"ลบโดยผู้ดูแลระบบของคุณ"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"เพื่อช่วยปรับปรุงอายุการใช้งานแบตเตอรี่ โหมดประหยัดแบตเตอรี่จะลดการทำงานของอุปกรณ์และจำกัดการสั่น บริการตำแหน่ง และข้อมูลแบ็กกราวด์ส่วนใหญ่ สำหรับอีเมล การรับส่งข้อความ และแอปอื่นๆ ที่ใช้การซิงค์จะไม่อัปเดตหากคุณไม่เปิดขึ้นมา\n\nโหมดประหยัดแบตเตอรี่จะปิดโดยอัตโนมัติขณะชาร์จอุปกรณ์"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"เพื่อช่วยลดปริมาณการใช้อินเทอร์เน็ต โปรแกรมประหยัดอินเทอร์เน็ตจะช่วยป้องกันไม่ให้แอปบางส่วนส่งหรือรับข้อมูลเครือข่ายมือถือในเบื้องหลัง แอปที่คุณกำลังใช้งานสามารถเข้าถึงข้อมูลเครือข่ายมือถือได้ แต่อาจไม่บ่อยเท่าเดิม ตัวอย่างเช่น ภาพต่างๆ จะไม่แสดงจนกว่าคุณจะแตะ"</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"เปิดการประหยัดอินเทอร์เน็ตไหม"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"เปิด"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">ระยะเวลา %1$d นาที (จนถึงเวลา <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">ระยะเวลา 1 นาที (จนถึงเวลา <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-tl/strings.xml b/core/res/res/values-tl/strings.xml
index 7f4393e..1c90be1 100644
--- a/core/res/res/values-tl/strings.xml
+++ b/core/res/res/values-tl/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Naghahanap ng Serbisyo"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Pagtawag sa pamamagitan ng Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Upang tumawag at magpadala ng mga mensahe sa pamamagitan ng Wi-Fi, hilingin muna sa iyong carrier na i-set up ang serbisyong ito. Pagkatapos ay muling i-on ang pagtawag sa Wi-Fi mula sa Mga Setting."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Magparehistro sa iyong carrier"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Pagtawag sa Pamamagitan ng Wi-Fi ng %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Naka-off"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Mas gusto ang Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mas gusto ang cellular"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Puno na ang storage ng relo. Magtanggal ng ilang file upang magbakante ng espasyo."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Puno na ang storage ng TV. Mag-delete ng ilang file upang magbakante ng espasyo."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Puno na ang storage ng telepono. Magtanggal ng ilang file upang magbakante ng espasyo."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Maaaring sinusubaybayan ang network"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">May mga naka-install na certificate authority</item>
+      <item quantity="other">May mga naka-install na certificate authority</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Ng isang di-kilalang third party"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Ng administrator sa iyong profile sa trabaho"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Ng <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Kunin ang ulat sa bug"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Mangongolekta ito ng impormasyon tungkol sa kasalukuyang katayuan ng iyong device, na ipapadala bilang mensaheng e-mail. Gugugol ito ng kaunting oras mula sa pagsisimula ng ulat sa bug hanggang sa handa na itong maipadala; mangyaring magpasensya."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interactive na ulat"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Gamitin ito sa karamihan ng sitwasyon. Nagbibigay-daan ito sa iyo na subaybayan ang pag-usad ng ulat at magbigay ng higit pang mga detalye tungkol sa problema. Maaari itong mag-alis ng ilan sa mga hindi masyadong ginagamit na seksyon na nangangailangan ng mahabang panahon upang iulat."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Buong ulat"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Gamitin ang opsyong ito para sa kaunting pagkaantala sa system kapag hindi tumutugon o masyadong mabagal ang iyong device, o kapag kailangan mo ang lahat ng seksyon ng ulat. Hindi ito kukuha ng screenshot o magbibigay-daan sa iyo na maglagay ng higit pang mga detalye."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Kukuha ng screenshot para sa ulat ng bug sa loob ng <xliff:g id="NUMBER_1">%d</xliff:g> segundo.</item>
       <item quantity="other">Kukuha ng screenshot para sa ulat ng bug sa loob ng <xliff:g id="NUMBER_1">%d</xliff:g> na segundo.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> oras</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> na oras</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Problema sa video"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Hindi wasto ang video na ito para sa streaming sa device na ito."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Hindi ma-play ang video na ito."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"I-OFF"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Kumpletuhin ang pagkilos gamit ang"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Tapusin ang pagkilos gamit ang %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Gawin ang pagkilos"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Buksan gamit ang"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Buksan gamit ang %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Buksan"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"I-edit gamit ang"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"I-edit gamit ang %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"I-edit"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Ibahagi gamit ang"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Ibahagi gamit ang %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Ibahagi"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Ipadala gamit ang"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Ipadala gamit ang %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Ipadala"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Pumili ng app sa Home"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Gamitin ang %1$s bilang Home"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Kunan ng larawan"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Kunan ng larawan gamit ang"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Kunan ng larawan gamit ang %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Kunan ng larawan"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Gamitin bilang default para sa pagkilos na ito."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Gumamit ng ibang app"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"I-clear ang default sa mga setting ng System &gt; Apps &gt; Na-download."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Pumili ng taon"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Tinanggal ang <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> sa Trabaho"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Upang i-unpin ang screen na ito, pindutin nang matagal ang Bumalik at Overview nang sabay-sabay."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Upang i-unpin ang screen na ito, pindutin nang matagal ang Bumalik."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Upang i-unpin ang screen na ito, pindutin nang matagal ang Overview."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Naka-pin ang app: Hindi pinapayagan ang pag-a-unpin sa device na ito."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Naka-pin ang screen"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Na-update ng iyong administrator"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Na-delete ng iyong administrator"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Upang matulungang pagbutihin ang tagal ng baterya, binabawasan ng pangtipid ng baterya ang pagganap ng iyong device at nililimitahan ang pag-vibrate, mga serbisyo ng lokasyon at karamihan sa data ng background. Maaaring hindi mag-update ang email, pagmemensahe at iba pang mga app na umaasa sa pagsi-sync maliban kung buksan mo ang mga iyon.\n\nAwtomatikong nag-o-off ang pangtipid ng baterya kapag nagcha-charge ang iyong device."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Upang makatulong na mabawasan ang paggamit ng data, pinipigilan ng Data Saver ang ilang app na magpadala o makatanggap ng data sa background. Maaaring mag-access ng data ang isang app na ginagamit mo sa kasalukuyan, ngunit mas bihira na nito magagawa iyon. Halimbawa, maaaring hindi lumabas ang mga larawan hangga\'t hindi mo nata-tap ang mga ito."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">Sa loob ng %1$d minuto (hanggang <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">Sa loob ng %1$d na minuto (hanggang <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-tr/strings.xml b/core/res/res/values-tr/strings.xml
index 1dbf7f3..50acbcb 100644
--- a/core/res/res/values-tr/strings.xml
+++ b/core/res/res/values-tr/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Hizmet Aranıyor"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Kablosuz Çağrı"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Kablosuz ağ üzerinden telefon etmek ve ileti göndermek için ilk önce operatörünüzden bu hizmeti ayarlamasını isteyin. Sonra tekrar Ayarlar\'dan Kablosuz çağrı özelliğini açın."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Operatörünüze kaydolun"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Kablosuz Çağrı"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Kapalı"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Kablosuz bağlantı tercih edildi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Hücresel ağ tercih edildi"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Saat depolama alanınız dolu. Lütfen yer boşaltmak için bazı dosyaları silin."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"TV depolama alanı dolu. Boş alan açmak için bazı dosyaları silin."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Telefonun depolama alanı dolu! Yer açmak için bazı dosyaları silin."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Ağ izlenebilir"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Sertifika yetkilileri yüklendi</item>
+      <item quantity="one">Sertifika yetkilisi yüklendi</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Bunu, bilinmeyen üçüncü taraflar yapabilir"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"İş profili yöneticiniz tarafından"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> tarafından"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Hata raporu al"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Bu rapor, e-posta iletisi olarak göndermek üzere cihazınızın şu anki durumuyla ilgili bilgi toplar. Hata raporu başlatıldıktan sonra hazır olması biraz zaman alabilir, lütfen sabırlı olun."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Etkileşimli rapor"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Çoğu durumda bunu kullanın. Bu seçenek, raporun ilerleme durumunu takip etmenize ve sorunla ilgili daha fazla ayrıntı girmenize olanak sağlar. Rapor edilmesi uzun süren ve az kullanılan bazı bölümleri yok sayabilir."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Tam rapor"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Cihazınız yanıt vermediğinde veya çok yavaş çalıştığında ya da tüm rapor bölümlerine ihtiyacınız olduğunda, sistemle minimum etkileşim için bu seçeneği kullanın. Bu seçenekte ekran görüntüsü alınmaz veya daha fazla ayrıntı girmenize izin verilmez."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other"><xliff:g id="NUMBER_1">%d</xliff:g> saniye içinde hata raporu ekran görüntüsü alınıyor.</item>
       <item quantity="one">Hata raporu ekran görüntüsü <xliff:g id="NUMBER_0">%d</xliff:g> saniye içinde alınacak.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> saat</item>
       <item quantity="one">1 saat</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Video sorunu"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Bu video bu cihazda akış için uygun değil."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Bu video oynatılamıyor."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"KAPALI"</string>
     <string name="whichApplication" msgid="4533185947064773386">"İşlemi şunu kullanarak tamamla"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"İşlemi %1$s kullanarak tamamla"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"İşlemi tamamla"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Şununla aç:"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s ile aç"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Aç"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Şununla düzenle:"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"%1$s ile düzenle"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Düzenle"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Şununla paylaş:"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"%1$s ile paylaş"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Paylaş"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Göndermek için kullanılacak uygulama"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s uygulamasını kullanarak gönderin"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Gönder"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Ana Ekran uygulaması seçin"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Ana Ekran olarak %1$s uygulamasını kullanın"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Fotoğraf çek"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Fotoğraf çekmek için şu uygulamayı kullan:"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Fotoğraf çekmek için %1$s uygulamasını kullan"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Fotoğraf çek"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Varsayılan olarak bu işlem için kullan."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Farklı bir uygulama kullan"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Sistem ayarları &gt; Uygulamalar &gt; İndirilen bölümünden varsayılanı temizleyin."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Yılı seçin"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> silindi"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> (İş)"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Bu ekranın sabitlemesini kaldırmak için Geri ve Genel Bakış\'a aynı anda dokunup basılı tutun."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Bu ekranın sabitlemesini kaldırmak için Geri\'ye dokunup basılı tutun."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Bu ekranın sabitlemesini kaldırmak için Genel Bakış\'a dokunup basılı tutun."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Uygulama sabitlendi. Bu cihazda sabitlemenin kaldırılmasına izin verilmiyor."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ekran sabitlendi"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Yöneticiniz tarafından güncellendi"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Yöneticiniz tarafından silindi"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Pil tasarrufu özelliği, pil ömrünü iyileştirmeye yardımcı olmak için cihazın performansını düşürür, titreşimi, konum hizmetlerini ve arka plan verilerinin çoğunu sınırlar. Senkronizasyona dayalı olarak çalışan e-posta, mesajlaşma uygulamaları ve diğer uygulamalar, bunları açmadığınız sürece güncellenmeyebilir.\n\nCihazınız şarj olurken pil tasarrufu otomatik olarak kapatılır."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Veri kullanımını azaltmaya yardımcı olması için Veri Tasarrufu, bazı uygulamaların arka planda veri göndermesini veya almasını engeller. Şu anda kullandığınız bir uygulama veri bağlantısına erişebilir, ancak bunu daha seyrek yapabilir. Bu durumda örneğin, siz resimlere dokunmadan resimler görüntülenmez."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d dakika için (şu saate kadar: <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Bir dakika için (şu saate kadar: <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-uk/strings.xml b/core/res/res/values-uk/strings.xml
index 78a2947..79eb565 100644
--- a/core/res/res/values-uk/strings.xml
+++ b/core/res/res/values-uk/strings.xml
@@ -126,11 +126,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Пошук служби"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Дзвінок через Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Щоб телефонувати або надсилати повідомлення через Wi-Fi, спочатку попросіть свого оператора налаштувати цю послугу. Після цього ввімкніть дзвінки через Wi-Fi у налаштуваннях."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Зареєструйтеся в оператора"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Дзвінок через Wi-Fi від оператора %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Вимкнено"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi за умовчанням"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Мобільна мережа за умовчанням"</string>
@@ -166,7 +170,12 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Пам’ять годинника заповнено. Видаліть файли, щоб звільнити місце."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Пам’ять телевізора заповнено. Видаліть файли, щоб звільнити місце."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Пам’ять телефону заповнено. Видаліть якісь файли, щоб звільнити місце."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Мережа може відстежуватися"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Центри сертифікації встановлено</item>
+      <item quantity="few">Центри сертифікації встановлено</item>
+      <item quantity="many">Центри сертифікації встановлено</item>
+      <item quantity="other">Центри сертифікації встановлено</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Невідомою третьою стороною"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Дії в мережі відстежує адміністратор вашого робочого профілю"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Доменом <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -213,9 +222,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Звіт про помилку"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Інформація про поточний стан вашого пристрою буде зібрана й надіслана електронною поштою. Підготовка звіту триватиме певний час."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Інтерактивний звіт"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Підходить для більшості випадків. Можна відстежувати, як створюється звіт, і вводити більше деталей про проблему. Можуть опускатися деякі розділи, які рідко використовуються, але довго створюються."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Повний звіт"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Підходить для мінімального втручання в систему, коли пристрій не відповідає, працює повільно або вам потрібні всі розділи звіту. Не можна робити знімки екрана та вводити більше деталей."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Знімок екрана для звіту про помилки буде зроблено через <xliff:g id="NUMBER_1">%d</xliff:g> секунду.</item>
       <item quantity="few">Знімок екрана для звіту про помилки буде зроблено через <xliff:g id="NUMBER_1">%d</xliff:g> секунди.</item>
@@ -263,7 +274,7 @@
     <string name="capability_desc_canRequestTouchExploration" msgid="5800552516779249356">"Для елементів, яких ви торкаєтеся, надаватимуться голосові підказки, а інтерфейсом можна користуватися за допомогою жестів."</string>
     <string name="capability_title_canRequestEnhancedWebAccessibility" msgid="1739881766522594073">"Увімкнути покращення веб-доступності"</string>
     <string name="capability_desc_canRequestEnhancedWebAccessibility" msgid="7881063961507511765">"Можуть установлюватися сценарії, щоб зробити вміст програми доступнішим."</string>
-    <string name="capability_title_canRequestFilterKeyEvents" msgid="2103440391902412174">"Обробляти текст, який ви вводите"</string>
+    <string name="capability_title_canRequestFilterKeyEvents" msgid="2103440391902412174">"Переглядати текст, який ви вводите"</string>
     <string name="capability_desc_canRequestFilterKeyEvents" msgid="7463135292204152818">"Включає особисті дані, як-от номери кредитних карток і паролі."</string>
     <string name="capability_title_canControlMagnification" msgid="3593493281059424855">"Контролювати збільшення екрана"</string>
     <string name="capability_desc_canControlMagnification" msgid="4791858203568383773">"Контролювати масштаб і розташування екрана."</string>
@@ -863,6 +874,16 @@
       <item quantity="many"><xliff:g id="COUNT">%d</xliff:g> годин</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> години</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Проблема з відео"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Відео не придатне для потокового передавання в цей пристрій."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Неможливо відтворити це відео."</string>
@@ -905,16 +926,25 @@
     <string name="capital_off" msgid="6815870386972805832">"ВИМК"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Завершити дію за доп."</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Завершити дію за допомогою %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Завершити дію"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Відкрити за допомогою"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Відкрити за допомогою %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Відкрити"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Редагувати за допомогою"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Редагувати за допомогою %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Редагувати"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Надіслати через"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Надіслати через %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Поділитися"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Надіслати через додаток"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Надіслати через додаток %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Надіслати"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Вибрати головний додаток"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Зробити додаток %1$s головним"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Зробити знімок"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Зробити знімок за допомогою"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Зробити знімок за допомогою %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Зробити знімок"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Використ. за умовч. для цієї дії."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Використовувати інший додаток"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Очистити налаштування за умовчанням у меню Налаштування системи &gt; Програми &gt; Завантажені."</string>
@@ -1480,7 +1510,7 @@
     <string name="select_year" msgid="7952052866994196170">"Виберіть рік"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> видалено"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Робоча <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Щоб відкріпити екран, одночасно натисніть і утримуйте кнопки \"Назад\" та \"Огляд\"."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Щоб відкріпити цей екран, натисніть і утримуйте кнопку \"Назад\"."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Щоб відкріпити екран, натисніть і утримуйте кнопку \"Огляд\"."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Додаток закріплено. Його не можна відкріпити на цьому пристрої."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Екран закріплено"</string>
@@ -1492,6 +1522,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Оновлено адміністратором"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Видалив адміністратор"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Щоб подовжити час роботи акумулятора, функція заощадження заряду акумулятора знижує продуктивність пристрою, а також обмежує вібрацію, функції служб локації та передавання більшості фонових даних. Електронна пошта, чати й інші додатки, які синхронізуються, можуть не оновлюватися, доки ви їх не відкриєте.\n\nФункція заощадження заряду акумулятора автоматично вимикається під час заряджання пристрою."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Щоб зменшити використання трафіку, функція \"Заощадження трафіку\" не дозволяє деяким додаткам надсилати чи отримувати дані у фоновому режимі. Поточний додаток зможе отримувати доступ до таких даних, але рідше. Наприклад, зображення не відображатиметься, доки ви не торкнетеся його."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">%1$d хвилину (до <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="few">%1$d хвилини (до <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
@@ -1581,7 +1616,7 @@
     <string name="language_selection_title" msgid="2680677278159281088">"Додати мову"</string>
     <string name="country_selection_title" msgid="2954859441620215513">"Вибір регіону"</string>
     <string name="search_language_hint" msgid="7042102592055108574">"Введіть назву мови"</string>
-    <string name="language_picker_section_suggested" msgid="8414489646861640885">"Пропозиції"</string>
+    <string name="language_picker_section_suggested" msgid="8414489646861640885">"Пропоновані"</string>
     <string name="language_picker_section_all" msgid="3097279199511617537">"Усі мови"</string>
     <string name="locale_search_menu" msgid="2560710726687249178">"Пошук"</string>
     <string name="work_mode_off_title" msgid="8954725060677558855">"Робочий профіль ВИМКНЕНО"</string>
diff --git a/core/res/res/values-ur-rPK/strings.xml b/core/res/res/values-ur-rPK/strings.xml
index f5ffbde..976032a 100644
--- a/core/res/res/values-ur-rPK/strings.xml
+++ b/core/res/res/values-ur-rPK/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"سروس کی تلاش کر رہا ہے"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"‏Wi-Fi کالنگ"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"‏Wi-Fi سے کالز کرنے اور پیغامات بھیجنے کیلئے، پہلے اپنے کیریئر سے اس سروس کو ترتیب دینے کیلئے کہیں۔ پھر ترتیبات سے دوبارہ Wi-Fi کالنگ آن کریں۔"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"اپنے کیریئر کے ساتھ رجسٹر کریں"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"‎%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"‎%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"‎%s"</item>
+    <item msgid="4397097370387921767">"‏‎%s Wi-Fi کالنگ"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"آف"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"‏Wi-Fi ترجیحی"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"سیلولر ترجیحی"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"دیکھنے کا اسٹوریج بھرا ہوا ہے۔ جگہ خالی کرنے کیلئے کچھ فائلیں حذف کریں۔"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"‏TV اسٹوریج بھرا ہوا ہے۔ جگہ خالی کرنے کیلئے کچھ فائلیں حذف کریں۔"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"فون اسٹوریج بھرا ہوا ہے۔ جگہ خالی کرنے کیلئے کچھ فائلیں حذف کریں۔"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"نیٹ ورک کو مانیٹر کیا جا سکتا ہے"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">سرٹیفیکیٹ کی اتھارٹیز انسٹال ہو گئیں</item>
+      <item quantity="one">سرٹیفکیٹ کی اتھارٹی انسٹال ہو گئی</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"ایک نامعلوم فریق ثالث کے لحاظ سے"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"آپ کی دفتری پروفائل کے منتظم کے ذریعے"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> کے لحاظ سے"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"بگ کی اطلاع لیں"</string>
     <string name="bugreport_message" msgid="398447048750350456">"ایک ای میل پیغام کے بطور بھیجنے کیلئے، یہ آپ کے موجودہ آلہ کی حالت کے بارے میں معلومات جمع کرے گا۔ بگ کی اطلاع شروع کرنے سے لے کر بھیجنے کیلئے تیار ہونے تک اس میں تھوڑا وقت لگے گا؛ براہ کرم تحمل سے کام لیں۔"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"متعامل رپورٹ"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"زیادہ تر حالات میں اسے استعمال کریں۔ یہ آپ کو رپورٹ کی پیش رفت ٹریک کرنے اور مسئلہ سے متعلق زیادہ تفصیلات میں جانے کی اجازت دیتا ہے۔ شاید یہ کچھ ایسے کم استعمال ہونے والے سیکشنز کو خارج کر دے جو رپورٹ کرنے میں زیادہ وقت لگاتے ہیں۔"</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"مکمل رپورٹ"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"جب آپ کا آلہ غیر فعال یا بہت سست ہو یا جب آپ کو تمام رپورٹ سیکشنز درکار ہوں، تو کم سے کم مداخلت کیلئے یہ اختیار استعمال کریں۔ یہ اسکرین شاٹ نہیں لیتا یا آپ کو مزید تفصیلات میں جانے کی اجازت نہیں دیتا۔"</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">بگ رپورٹ کیلئے <xliff:g id="NUMBER_1">%d</xliff:g> سیکنڈز میں اسکرین شاٹ لیا جائے گا۔</item>
       <item quantity="one">بگ رپورٹ کیلئے <xliff:g id="NUMBER_0">%d</xliff:g> سیکنڈ میں اسکرین شاٹ لیا جائے گا۔</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> گھنٹے</item>
       <item quantity="one">1 گھنٹہ</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"ویڈیو مسئلہ"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"یہ ویڈیو اس آلہ پر سلسلہ بندی کیلئے درست نہیں ہے۔"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"یہ ویڈیو نہیں چل سکتا۔"</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"آف"</string>
     <string name="whichApplication" msgid="4533185947064773386">"اس کا استعمال کرکے کارروائی مکمل کریں"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"‏%1$s کا استعمال کر کے کارروائی مکمل کریں"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"کارروائی مکمل کریں"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"اس کے ساتھ کھولیں"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"‏%1$s کے ساتھ کھولیں"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"کھولیں"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"اس کے ساتھ ترمیم کریں"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"‏%1$s کے ساتھ ترمیم کریں"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"ترمیم کریں"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"اس کے ساتھ اشتراک کریں"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"‏%1$s کے ساتھ اشتراک کریں"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"اشتراک کریں"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"بھیجیں بذریعہ"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"‏بھیجیں بذریعہ ‎%1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"بھیجیں"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"‏ایک Home ایپ منتخب کریں"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"‏%1$s کو Home کے بطور استعمال کریں"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"تصویر کیپچر کریں"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"اس کے ساتھ تصویر کیپچر کریں"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"‏‎%1$s کے ساتھ تصویر کیپچر کریں"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"تصویر کیپچر کریں"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"اس کارروائی کیلئے بطور ڈیفالٹ استعمال کریں۔"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"ایک مختلف ایپ استعمال کریں"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"‏سسٹم ترتیبات &gt; ایپس &gt; ڈاؤن لوڈ کردہ میں ڈیفالٹ صاف کریں۔"</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"سال منتخب کریں"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> کو حذف کر دیا گیا"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"دفتر <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"اس اسکرین سے پن ہٹانے کیلئے، واپس جائیں اور مجموعی جائزہ کو ایک ساتھ ٹچ کریں اور دبا کر رکھیں۔"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"اس اسکرین سے پن ہٹانے کیلئے، پیچھے کو ٹچ کریں اور دبا کر رکھیں۔"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"اس اسکرین سے پن ہٹانے کیلئے، مجموعی جائزہ کو ٹچ کریں اور دبا کر رکھیں۔"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"ایپ کو پن کر دیا گیا ہے: اس آلہ پر پن ہٹانے کی اجازت نہیں ہے۔"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"اسکرین کو پن کر دیا گیا"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"آپ کے منتظم نے اپ ڈيٹ کر دیا"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"آپ کے منتظم کی جانب سے حذف کر دیا گیا"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"بیٹری کی میعاد بہتر کرنے میں مدد کرنے کیلئے، بیٹری سیور آپ کے آلہ کی کارکردگی کم کر دیتی ہے اور وائبریشن، مقام کی سروسز اور پس منظر کا بیشتر ڈیٹا محدود کر دیتی ہے۔ ای میل، پیغام رسانی اور مطابقت پذیری پر منحصر دیگر ایپس ممکن ہے اس وقت تک اپ ڈیٹ نہ ہوں جب تک آپ انہیں نہ کھولیں۔\n\nآپ کا آلہ چارج ہوتے وقت بیٹری سیور خود بخود آف ہو جاتی ہے۔"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"ڈیٹا کے استعمال کو کم کرنے میں مدد کیلئے، ڈیٹا سیور پس منظر میں کچھ ایپس کو ڈیٹا بھیجنے یا موصول کرنے سے روکتا ہے۔ آپ جو ایپ فی الحال استعمال کر رہے ہیں وہ ڈیٹا پر رسائی کر سکتی ہے مگر ہو سکتا ہے ایسا زیادہ نہ ہو۔ اس کا مطلب مثال کے طور پر یہ ہو سکتا ہے کہ تصاویر تھپتھپانے تک ظاہر نہ ہوں۔"</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">‏%1$d منٹ کیلئے (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> تک)</item>
       <item quantity="one">ایک منٹ کیلئے (تک <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-uz-rUZ/strings.xml b/core/res/res/values-uz-rUZ/strings.xml
index 0b6a0cc..d81be8e 100644
--- a/core/res/res/values-uz-rUZ/strings.xml
+++ b/core/res/res/values-uz-rUZ/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Xizmatlar qidirilmoqda"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi qo‘ng‘iroq"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Wi-Fi orqali qo‘ng‘iroqlarni amalga oshirish va xabarlar bilan almashinish uchun uyali aloqa operatoringizdan ushbu xizmatni yoqib qo‘yishni so‘rashingiz lozim. Keyin sozlamalarda Wi-Fi qo‘ng‘irog‘i imkoniyatini yoqib olishingiz mumkin."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Mobil operatoringiz yordamida ro‘yxatdan o‘ting"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi qo‘ng‘iroqlar"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"O‘chiq"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi afzal ko‘rilsin"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Mobil tarmoq afzal ko‘rilsin"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Soat xotirasi to‘lgan. Joy bo‘shatish uchun ba’zi fayllarni o‘chiring."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Televizor xotirasi to‘lgan. Joy bo‘shatish uchun ba’zi fayllarni o‘chiring."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Telefon xotirasi to‘la. Joy bo‘shatish uchun ba’zi fayllarni o‘chiring."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Tarmoq nazorat ostida bo‘lishi mumkin"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Sertifikat markazi sertifikatlari o‘rnatildi</item>
+      <item quantity="one">Sertifikat markazi sertifikati o‘rnatildi</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Noma‘lum uchinchi shaxslar tomonidan"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Ishchi profilingiz administratori tomonidan"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"<xliff:g id="MANAGING_DOMAIN">%s</xliff:g> tomonidan"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Xatoliklar hisoboti"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Qurilmangiz holati haqidagi ma’lumotlar to‘planib, e-pochta orqali yuboriladi. Hisobotni tayyorlash biroz vaqt olishi mumkin."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Interaktiv hisobot"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Bundan maxsus vaziyatlarda foydalaning. Bu hisobot jarayonini kuzatish imkonini beradi va muammo haqida batafsil ma’lumotlarni ko‘rishingiz mumkin bo‘ladi. Hisobot uchun ko‘p vaqt oladigan kam ishlatiladigan bo‘limlar qoldirib ketilishi mumkin."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"To‘liq hisobot"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Qurilma javob bermaganda, juda sekinlashganda yoki barcha hisobot bo‘limlari zarur bo‘lganda kamroq tizim aralashuvlarisiz mazkur variantdan foydalaning. Skrinshot olinmaydi yoki batafsil ma’lumotlar ko‘rishingizga ruxsat berilmaydi."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Xatoliklar hisoboti uchun skrinshot <xliff:g id="NUMBER_1">%d</xliff:g> soniyadan so‘ng olinadi.</item>
       <item quantity="one">Xatoliklar hisoboti uchun skrinshot <xliff:g id="NUMBER_0">%d</xliff:g> soniyadan so‘ng olinadi.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> soat</item>
       <item quantity="one">1 soat</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Video muammosi"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Ushbu videoni mazkur qurilmada oqimli rejimda ijro etib bo‘lmaydi."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Ushbu videoni ijro etib bo‘lmadi."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"O"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Ilovani tanlang"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"“%1$s” bilan ochish"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Amalni bajarish"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Ochish…"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"%1$s bilan ochish"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Ochish"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Tahrirlash…"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"“%1$s” yordamida tahrirlash"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Tahrirlash"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Ulashish…"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"“%1$s” orqali ulashish"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Ulashish"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Ilovani tanlang"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"%1$s orqali yuborish"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Yuborish"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Bosh ilovani tanlash"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"%1$s: Bosh ilova sifatida foydalanish"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Suratga olish"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Suratga olish uchun ilovani tanlang:"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"%1$s yordamida suratga oling"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Suratga olish"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Ushbu amaldan standart sifatida foydalanish"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Boshqa ilovadan foydalanish"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Birlamchi sozlamalarni Tizim sozlamalari &gt; Ilovalar &gt; Yuklab olingan menyusidan tozalang."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Yilni tanlash"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> o‘chirildi"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Ish <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Ushbu ekrandan chiqish uchun “Orqaga” va “Umumiy nazar” tugmalarini bir vaqtda bosib turing."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Ushbu ekrandan chiqish uchun “Orqaga” tugmasini bosib turing."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Ushbu ekrandan chiqish uchun “Umumiy nazar” tugmasini bosib turing."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Ilova qadab qo‘yilgan. Uni ekrandan yechish ushbu qurilmada ta’qiqlangan."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Ekran qadab qo‘yildi"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Administratoringiz tomonidan yangilandi"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Administratoringiz tomonidan o‘chirilgan"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Batareya quvvatini uzoqroq vaqtga yetkazish uchun quvvat tejash funksiyasi qurilmangiz unumdorligini kamaytiradi hamda uning tebranishi va orqa fonda internetdan foydalanishini cheklaydi. Sinxronlanishni talab qiladigan e-pochta, xabar almashinuv va boshqa ilovalar esa qachonki ularni ishga tushirganingizda yangilanadi.\n\nQurilma quvvat olayotganda quvvat tejash funksiyasi avtomatik tarzda o‘chadi."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Trafik sarfini kamaytirish maqsadida Trafik tejash funksiyasi ba’zi ilovalarning orqa fonda internetdan foydalanishining oldini oladi. Siz hozirda foydalanayotgan ilova internetdan faqat talab etilgandagina foydalanishi mumkin. Bu degani, masalan, rasmlar ustiga bosilmaguncha, ular yuklanmaydi."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d daqiqa (<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g> gacha)</item>
       <item quantity="one">Bir daqiqa (<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g> gacha)</item>
diff --git a/core/res/res/values-vi/strings.xml b/core/res/res/values-vi/strings.xml
index 6236153..810c8a8 100644
--- a/core/res/res/values-vi/strings.xml
+++ b/core/res/res/values-vi/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Đang tìm kiếm Dịch vụ"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Gọi qua Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Để gọi điện và gửi tin nhắn qua Wi-Fi, trước tiên hãy yêu cầu nhà cung cấp dịch vụ của bạn thiết lập dịch vụ này. Sau đó, bật lại gọi qua Wi-Fi từ Cài đặt."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Đăng ký với nhà cung cấp dịch vụ của bạn"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"Gọi điện qua Wi-Fi %s"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Tắt"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Ưu tiên Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Ưu tiên mạng di động"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Bộ nhớ đồng hồ đã đầy. Hãy xóa một số tệp để giải phóng dung lượng."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Bộ nhớ TV đã đầy. Hãy xóa bớt một số tệp để giải phóng dung lượng."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Bộ nhớ điện thoại đã đầy. Hãy xóa một số tệp để tạo thêm dung lượng."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Mạng có thể được giám sát"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">Đã cài đặt các tổ chức phát hành chứng chỉ</item>
+      <item quantity="one">Đã cài đặt tổ chức phát hành chứng chỉ</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Bởi một bên thứ ba không xác định"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Bởi quản trị viên hồ sơ công việc của bạn"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Bởi <xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Nhận báo cáo lỗi"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Báo cáo này sẽ thu thập thông tin về tình trạng thiết bị hiện tại của bạn, để gửi dưới dạng thông báo qua email. Sẽ mất một chút thời gian kể từ khi bắt đầu báo cáo lỗi cho tới khi báo cáo sẵn sàng để gửi; xin vui lòng kiên nhẫn."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Báo cáo tương tác"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Sử dụng tùy chọn này trong hầu hết các trường hợp. Tùy chọn này cho phép bạn theo dõi tiến trình của báo cáo và nhập thêm thông tin chi tiết về sự cố. Tùy chọn này có thể bỏ qua một số phần ít được sử dụng mà mất nhiều thời gian để báo cáo."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Báo cáo đầy đủ"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Sử dụng tùy chọn này để giảm thiểu ảnh hưởng của hệ thống khi thiết bị của bạn không phản hồi hoặc quá chậm hoặc khi bạn cần tất cả các phần báo cáo. Không chụp ảnh màn hình hoặc cho phép bạn nhập thêm thông tin chi tiết."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">Sẽ chụp ảnh màn hình để báo cáo lỗi sau <xliff:g id="NUMBER_1">%d</xliff:g> giây.</item>
       <item quantity="one">Sẽ chụp ảnh màn hình để báo cáo lỗi sau <xliff:g id="NUMBER_0">%d</xliff:g> giây.</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> giờ</item>
       <item quantity="one">1 giờ</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Sự cố video"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Video này không hợp lệ để phát trực tuyến đến thiết bị này."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Không thể phát video này."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"TẮT"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Hoàn tất tác vụ đang sử dụng"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Hoàn tất tác vụ bằng %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Hoàn thành tác vụ"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Mở bằng"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Mở bằng %1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Mở"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Chỉnh sửa bằng"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Chỉnh sửa bằng %1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Chỉnh sửa"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Chia sẻ với"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Chia sẻ với %1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Chia sẻ"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Gửi bằng"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Gửi bằng %1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Gửi"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Chọn ứng dụng Home"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Sử dụng %1$s làm Home"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Chụp ảnh"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Chụp ảnh bằng"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Chụp ảnh bằng %1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Chụp ảnh"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Sử dụng theo mặc định đối với tác vụ này."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Sử dụng một ứng dụng khác"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Xóa mặc định trong Cài đặt hệ thống &gt; Ứng dụng &gt; Đã tải xuống."</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Chọn năm"</string>
     <string name="deleted_key" msgid="7659477886625566590">"Đã xóa <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"<xliff:g id="LABEL">%1$s</xliff:g> làm việc"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Để bỏ khóa màn hình này, chạm và giữ Quay lại và Tổng quan cùng lúc."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Để bỏ ghim màn hình này, chạm và giữ Quay lại."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Để bỏ khóa màn hình này, chạm và giữ Tổng quan."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Ứng dụng được ghim: Không được phép bỏ ghim trên thiết bị này."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Đã ghim màn hình"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Được cập nhật bởi quản trị viên của bạn"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Đã bị xóa bởi quản trị viên của bạn"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Để giúp tăng tuổi thọ pin, trình tiết kiệm pin sẽ giảm hiệu suất thiết bị của bạn và hạn chế rung, dịch vụ vị trí và hầu hết dữ liệu nền. Email, nhắn tin và các ứng dụng khác dựa trên đồng bộ hóa có thể không cập nhật nếu bạn không mở chúng.\n\nTrình tiết kiệm pin tự động tắt khi thiết bị của bạn đang sạc."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Để giúp giảm mức sử dụng dữ liệu. Trình tiết kiệm dữ liệu chặn một số ứng dụng gửi hoặc nhận dữ liệu trong nền. Ứng dụng mà bạn hiện sử dụng có thể truy cập dữ liệu, nhưng có thể thực hiện việc đó ít thường xuyên hơn. Chẳng hạn, điều này có thể có nghĩa là hình ảnh sẽ không hiển thị cho đến khi bạn nhấn vào hình ảnh đó."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">Trong %1$d phút (cho đến <xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">Trong một phút (cho đến <xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-zh-rCN/strings.xml b/core/res/res/values-zh-rCN/strings.xml
index 708f1be..26621ba 100644
--- a/core/res/res/values-zh-rCN/strings.xml
+++ b/core/res/res/values-zh-rCN/strings.xml
@@ -81,7 +81,7 @@
     <string name="ThreeWCMmi" msgid="9051047170321190368">"三方通话"</string>
     <string name="RuacMmi" msgid="7827887459138308886">"拒绝不想接听的骚扰电话"</string>
     <string name="CndMmi" msgid="3116446237081575808">"主叫号码传送"</string>
-    <string name="DndMmi" msgid="1265478932418334331">"请勿打扰"</string>
+    <string name="DndMmi" msgid="1265478932418334331">"勿扰"</string>
     <string name="CLIRDefaultOnNextCallOn" msgid="429415409145781923">"默认不显示本机号码，在下一次通话中也不显示"</string>
     <string name="CLIRDefaultOnNextCallOff" msgid="3092918006077864624">"默认不显示本机号码，但在下一次通话中显示"</string>
     <string name="CLIRDefaultOffNextCallOn" msgid="6179425182856418465">"默认显示本机号码，但在下一次通话中不显示"</string>
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"正在搜索服务"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"WLAN 通话"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"要通过 WLAN 打电话和发信息，请先让您的运营商开通此服务，然后再到“设置”中重新开启 WLAN 通话功能。"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"向您的运营商注册"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s WLAN 通话功能"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"关闭"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"首选 WLAN"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"首选移动网络"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"手表存储空间已满。请删除一些文件以腾出空间。"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"电视存储空间已满。请删除一些文件以腾出空间。"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"手机存储空间已满。请删除一些文件以腾出空间。"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"网络可能会受到监控"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">已安装证书授权中心</item>
+      <item quantity="one">已安装证书授权中心</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"受到不明第三方的监控"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"由您的工作资料管理员监控"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"受到 <xliff:g id="MANAGING_DOMAIN">%s</xliff:g> 监控"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"提交错误报告"</string>
     <string name="bugreport_message" msgid="398447048750350456">"这会收集有关当前设备状态的信息，并以电子邮件的形式进行发送。从开始生成错误报告到准备好发送需要一点时间，请耐心等待。"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"互动式报告"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"在大多数情况下，建议您使用此选项，以便追踪报告的生成进度，以及输入与相应问题相关的更多详细信息。系统可能会省略掉一些不常用的区段，从而缩短生成报告的时间。"</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"完整报告"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"如果您的设备无响应或运行速度缓慢，或者您需要查看所有区段的报告信息，则建议您使用此选项将系统干扰程度降到最低。系统不会截屏，也不支持您输入更多详细信息。"</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">系统将在 <xliff:g id="NUMBER_1">%d</xliff:g> 秒后对错误报告进行截屏。</item>
       <item quantity="one">系统将在 <xliff:g id="NUMBER_0">%d</xliff:g> 秒后对错误报告进行截屏。</item>
@@ -851,6 +860,16 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> 小时</item>
       <item quantity="one">1 小时</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"视频问题"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"抱歉，该视频不适合在此设备上播放。"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"无法播放此视频。"</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"关闭"</string>
     <string name="whichApplication" msgid="4533185947064773386">"选择要使用的应用："</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"使用%1$s完成操作"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"完成操作"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"打开方式"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"使用%1$s打开"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"打开"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"编辑方式"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"使用%1$s编辑"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"编辑"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"分享方式"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"使用%1$s分享"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"分享"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"通过以下应用发送"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"通过1$s发送"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"发送"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"选择主屏幕应用"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"将“%1$s”设为主屏幕应用"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"截图"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"使用以下应用截图"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"使用%1$s截图"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"截图"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"设为默认选项。"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"使用其他应用"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"在“系统设置”&gt;“应用”&gt;“已下载”中清除默认设置。"</string>
@@ -1139,7 +1167,7 @@
     <string name="notification_listener_binding_label" msgid="2014162835481906429">"通知侦听器"</string>
     <string name="vr_listener_binding_label" msgid="4316591939343607306">"VR 监听器"</string>
     <string name="condition_provider_service_binding_label" msgid="1321343352906524564">"条件提供程序"</string>
-    <string name="notification_ranker_binding_label" msgid="774540592299064747">"通知重要性排序服务"</string>
+    <string name="notification_ranker_binding_label" msgid="774540592299064747">"通知重要程度排序服务"</string>
     <string name="vpn_title" msgid="19615213552042827">"已激活VPN"</string>
     <string name="vpn_title_long" msgid="6400714798049252294">"<xliff:g id="APP">%s</xliff:g>已激活VPN"</string>
     <string name="vpn_text" msgid="3011306607126450322">"触摸可管理网络。"</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"选择年份"</string>
     <string name="deleted_key" msgid="7659477886625566590">"已删除<xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"工作<xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"要取消固定此屏幕，请同时触摸并按住“返回”和“概览”按钮。"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"要取消固定此屏幕，请触摸并按住“返回”按钮。"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"要取消固定此屏幕，请触摸并按住概览按钮。"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"应用处于固定状态：在此设备上不允许退出该模式。"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"已固定屏幕"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"由您单位的管理员更新"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"已被管理员删除"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"为了延长电池的续航时间，省电模式会降低设备的性能，并限制振动、位置信息服务和大部分后台流量。对于电子邮件、聊天工具等依赖于同步功能的应用，可能要打开这类应用时才能收到新信息。\n\n省电模式会在设备充电时自动关闭。"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"为了减少流量消耗，流量节省程序会阻止某些应用在后台收发数据。您当前使用的应用可以收发数据，但频率可能会降低。举例而言，这可能意味着图片只有在您点按之后才会显示。"</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">%1$d 分钟（到<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>）</item>
       <item quantity="one">1 分钟（到<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>）</item>
@@ -1536,7 +1569,7 @@
       <item quantity="other">已选择 <xliff:g id="COUNT_1">%1$d</xliff:g> 项</item>
       <item quantity="one">已选择 <xliff:g id="COUNT_0">%1$d</xliff:g> 项</item>
     </plurals>
-    <string name="importance_from_user" msgid="7318955817386549931">"这些通知的重要性由您来设置。"</string>
+    <string name="importance_from_user" msgid="7318955817386549931">"这些通知的重要程度由您来设置。"</string>
     <string name="importance_from_person" msgid="9160133597262938296">"这条通知涉及特定的人，因此被归为重要通知。"</string>
     <string name="user_creation_account_exists" msgid="1942606193570143289">"允许<xliff:g id="APP">%1$s</xliff:g>使用 <xliff:g id="ACCOUNT">%2$s</xliff:g> 创建新用户吗？"</string>
     <string name="user_creation_adding" msgid="4482658054622099197">"允许<xliff:g id="APP">%1$s</xliff:g>使用 <xliff:g id="ACCOUNT">%2$s</xliff:g>（目前已有用户使用此帐号）创建新用户吗？"</string>
diff --git a/core/res/res/values-zh-rHK/strings.xml b/core/res/res/values-zh-rHK/strings.xml
index 95b7244..9f9c444 100644
--- a/core/res/res/values-zh-rHK/strings.xml
+++ b/core/res/res/values-zh-rHK/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"正在搜尋服務"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi 通話"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"如要透過 Wi-Fi 撥打電話及傳送訊息，請先向您的流動網絡供應商要求設定此服務。然後再次在「設定」中開啟 Wi-Fi 通話。"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"向您的流動網絡供應商註冊"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi 通話"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"關閉"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"首選 Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"首選流動數據"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"手錶的儲存空間已滿。請刪除一些檔案，以騰出可用空間。"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"電視儲存空間已滿。請刪除部分檔案，以釋放儲存空間。"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"手機的儲存空間已滿。請刪除一些檔案，以騰出可用空間。"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"網絡可能會受到監控"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">已安裝憑證</item>
+      <item quantity="one">已安裝憑證</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"由不明的第三方監管"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"由工作設定檔管理員監控"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"由 <xliff:g id="MANAGING_DOMAIN">%s</xliff:g> 監管"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"取得錯誤報告"</string>
     <string name="bugreport_message" msgid="398447048750350456">"這會收集您目前裝置狀態的相關資訊，並以電郵傳送給您。從開始建立錯誤報告到準備傳送需要一段時間，請耐心等候。"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"互動報告"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"在大部分情況下，建議您使用此選項，以便追蹤報告進度，以及輸入更多與問題相關的的資訊。系統可能會省略部分不常用的區段，藉此縮短產生報告的時間。"</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"在一般情況下，建議您使用這個選項，以便追蹤報告產生進度、輸入更多與問題相關的資訊，以及擷取螢幕畫面。系統可能會省略部分較少使用的區段，藉此縮短報告產生時間。"</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"完整報告"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"如果裝置沒有反應或運作速度較慢，或您需要所有區段的報告時，建議使用此選項將系統的干擾程度降至最低。此選項不會擷取螢幕畫面，亦不允許您輸入更多資訊。"</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"如果您的裝置沒有回應或運行速度過慢，或是當您需要所有區段的報告時，建議您使用這個選項來減少系統干擾。這個選項不支援您輸入更多資訊，也不會擷取其他螢幕畫面。"</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">系統將在 <xliff:g id="NUMBER_1">%d</xliff:g> 秒後擷取錯誤報告的螢幕畫面。</item>
       <item quantity="one">系統將在 <xliff:g id="NUMBER_0">%d</xliff:g> 秒後擷取錯誤報告的螢幕畫面。</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> 小時</item>
       <item quantity="one">1 小時</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"現在"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"影片問題"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"這部影片的格式無效，無法以串流傳送至這部裝置。"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"無法播放這部影片。"</string>
@@ -893,16 +909,25 @@
     <string name="capital_off" msgid="6815870386972805832">"關"</string>
     <string name="whichApplication" msgid="4533185947064773386">"完成操作需使用"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"完成操作需使用 %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"完成操作"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"用於開啟的應用程式"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"使用 %1$s 開啟"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"開啟"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"使用以下選擇器編輯："</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"使用 %1$s 編輯"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"編輯"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"分享對象"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"與 %1$s 分享"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"分享"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"使用以下應用程式傳送："</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"使用「%1$s」傳送"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"傳送"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"選取主螢幕應用程式"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"使用「%1$s」作為主螢幕"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"擷取圖片"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"使用以下應用程式擷取圖片："</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"使用「%1$s」擷取圖片"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"擷取圖片"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"設定用於執行這項操作。"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"使用不同的應用程式"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"前往 [系統設定] &gt; [應用程式] &gt; [已下載] 清除預設值。"</string>
@@ -1460,7 +1485,7 @@
     <string name="select_year" msgid="7952052866994196170">"選取年份"</string>
     <string name="deleted_key" msgid="7659477886625566590">"<xliff:g id="KEY">%1$s</xliff:g> 已刪除"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"公司<xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"如要取消固定這個畫面，請同時輕觸並按住 [返回] 和 [概覽]。"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"如要取消固定這個畫面，請輕觸並按住 [返回]。"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"如要取消固定這個畫面，請輕觸並按住 [概覽]。"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"應用程式已固定：不允許在此裝置上取消固定。"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"螢幕已固定"</string>
@@ -1472,6 +1497,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"已由您的管理員更新"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"已由管理員刪除"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"節約電池用量模式有助於延長電池壽命，但這會降低裝置效能，並限制震動、定位服務及大部分背景數據傳輸。除非您啟用，否則電郵、短訊及其他需要使用同步功能的應用程式均不會更新。\n\n當裝置充電時，節約電池用量模式會自動關閉。"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"「數據節省程式」可防止部分應用程式在背景收發資料，以節省數據用量。您正在使用的應用程式仍可以存取資料，但存取頻率可能會降低。例如，除非您輕按圖片，否則系統可能不會顯示相關圖片。"</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"要開啟數據節省模式嗎？"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"開啟"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">需時 %1$d 分鐘 (完成時間：<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">需時 1 分鐘 (完成時間：<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values-zh-rTW/strings.xml b/core/res/res/values-zh-rTW/strings.xml
index 7c980bd..9acfdcff 100644
--- a/core/res/res/values-zh-rTW/strings.xml
+++ b/core/res/res/values-zh-rTW/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"正在搜尋服務"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Wi-Fi 通話"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"如要透過 Wi-FI 撥打電話及傳送訊息，請先要求您的行動通訊業者開通這項服務，然後再到「設定」啟用 Wi-Fi 通話功能。"</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"向您的行動通訊業者註冊"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s Wi-Fi 通話"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"關閉"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Wi-Fi 優先"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"行動通訊優先"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"手錶儲存空間已用盡，請刪除一些檔案以釋出可用空間。"</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"電視儲存空間已滿，請刪除部分檔案以釋出可用空間。"</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"手機儲存空間已滿。請刪除一些檔案，以釋放可用空間。"</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"網路可能會受到監控"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="other">已安裝憑證授權單位憑證</item>
+      <item quantity="one">已安裝憑證授權單位憑證</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"受到不明的第三方監控"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"受到您的 Work 設定檔管理員監控"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"受到 <xliff:g id="MANAGING_DOMAIN">%s</xliff:g> 監控"</string>
@@ -211,9 +218,9 @@
     <string name="bugreport_title" msgid="2667494803742548533">"取得錯誤報告"</string>
     <string name="bugreport_message" msgid="398447048750350456">"這會收集您目前裝置狀態的相關資訊，以便透過電子郵件傳送。從錯誤報告開始建立到準備傳送的這段過程可能需要一點時間，敬請耐心等候。"</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"互動式報告"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"在一般情況下，建議您使用這個選項，以便追蹤報告產生進度，以及輸入更多與問題相關的資訊。系統可能會省略部分較少使用的區段，藉此縮短報告產生時間。"</string>
+    <string name="bugreport_option_interactive_summary" msgid="229299488536107968">"在一般情況下，建議您使用這個選項，以便追蹤報告產生進度、輸入更多與問題相關的資訊，以及擷取螢幕畫面。系統可能會省略部分較少使用的區段，藉此縮短報告產生時間。"</string>
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"完整報告"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"如果您的裝置沒有回應或運行速度過慢，或是當您需要所有區段的報告時，建議您使用這個選項來減少系統干擾。這個選項不會擷取螢幕畫面，也不支援您輸入更多資訊。"</string>
+    <string name="bugreport_option_full_summary" msgid="7210859858969115745">"如果您的裝置沒有回應或運行速度過慢，或是當您需要所有區段的報告時，建議您使用這個選項來減少系統干擾。這個選項不支援您輸入更多資訊，也不會擷取其他螢幕畫面。"</string>
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="other">系統將在 <xliff:g id="NUMBER_1">%d</xliff:g> 秒後擷取錯誤報告的螢幕畫面。</item>
       <item quantity="one">系統將在 <xliff:g id="NUMBER_0">%d</xliff:g> 秒後擷取錯誤報告的螢幕畫面。</item>
@@ -851,6 +858,15 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> 小時</item>
       <item quantity="one">1 小時</item>
     </plurals>
+    <string name="now_string_shortest" msgid="8912796667087856402">"現在"</string>
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"影片發生問題"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"這部影片的格式無效，因此無法在此裝置中串流播放。"</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"無法播放這部影片。"</string>
@@ -893,16 +909,25 @@
     <string name="capital_off" msgid="6815870386972805832">"關閉"</string>
     <string name="whichApplication" msgid="4533185947064773386">"選擇要使用的應用程式"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"完成操作需使用 %1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"完成操作"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"選擇開啟工具"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"透過 %1$s 開啟"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"開啟"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"選擇編輯工具"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"使用 %1$s 編輯"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"編輯"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"選擇分享工具"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"透過 %1$s 分享"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"分享"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"透過以下應用程式傳送："</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"透過「%1$s」傳送"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"傳送"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"選取主螢幕應用程式"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"使用「%1$s」做為主螢幕"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"擷取圖片"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"使用以下應用程式擷取圖片："</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"使用「%1$s」擷取圖片"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"擷取圖片"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"設為預設應用程式。"</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"使用其他應用程式"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"前往 [系統設定] &gt; [應用程式] &gt; [下載] 清除預設值。"</string>
@@ -1460,7 +1485,7 @@
     <string name="select_year" msgid="7952052866994196170">"選取年份"</string>
     <string name="deleted_key" msgid="7659477886625566590">"已刪除 <xliff:g id="KEY">%1$s</xliff:g>"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"公司<xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"如要取消固定這個畫面，請同時輕觸並按住返回按鈕和總覽按鈕。"</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"如要取消固定這個畫面，請按住「返回」按鈕。"</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"如要取消固定這個畫面，請輕觸並按住總覽按鈕。"</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"應用程式已固定：無法在這部裝置取消固定。"</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"已固定螢幕"</string>
@@ -1472,6 +1497,9 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"由您的管理員更新"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"已遭管理員刪除"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"節約耗電量模式會透過降低裝置效能、震動限制、定位服務限制和大多數背景資料運作限制等方式，延長電池續航力。此外，如果未開啟電子郵件、簡訊和其他需要使用同步功能的應用程式，系統將不會自動更新這些應用程式。\n\n當您為裝置充電時，節約耗電量模式會自動關閉。"</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"為協助減少數據用量，數據節省模式會禁止部分應用程式在背景傳送或接收資料。您目前使用的某個應用程式可以存取資料，但存取頻率可能不如平時高。舉例來說，圖片可能不會自動顯示，而必須由您輕觸後才會顯示。"</string>
+    <string name="data_saver_enable_title" msgid="4674073932722787417">"要開啟數據節省模式嗎？"</string>
+    <string name="data_saver_enable_button" msgid="7147735965247211818">"開啟"</string>
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="other">持續 %1$d 分鐘 (結束時間：<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="one">持續 1 分鐘 (結束時間：<xliff:g id="FORMATTEDTIME_0">%2$s</xliff:g>)</item>
@@ -1552,10 +1580,10 @@
     <string name="new_sms_notification_title" msgid="8442817549127555977">"您有新訊息"</string>
     <string name="new_sms_notification_content" msgid="7002938807812083463">"開啟簡訊應用程式來查看內容"</string>
     <string name="user_encrypted_title" msgid="9054897468831672082">"部分功能可能受到鎖定"</string>
-    <string name="user_encrypted_message" msgid="4923292604515744267">"輕按即可解鎖"</string>
+    <string name="user_encrypted_message" msgid="4923292604515744267">"輕觸即可解鎖"</string>
     <string name="user_encrypted_detail" msgid="5708447464349420392">"使用者資料已鎖定"</string>
     <string name="profile_encrypted_detail" msgid="3700965619978314974">"Work 設定檔目前處於鎖定狀態"</string>
-    <string name="profile_encrypted_message" msgid="6964994232310195874">"輕按即可將 Work 設定檔解鎖"</string>
+    <string name="profile_encrypted_message" msgid="6964994232310195874">"輕觸即可將 Work 設定檔解鎖"</string>
     <string name="usb_mtp_launch_notification_title" msgid="8359219638312208932">"已連線至 <xliff:g id="PRODUCT_NAME">%1$s</xliff:g>"</string>
     <string name="usb_mtp_launch_notification_description" msgid="8541876176425411358">"輕觸即可查看檔案"</string>
     <string name="pin_target" msgid="3052256031352291362">"固定"</string>
diff --git a/core/res/res/values-zu/strings.xml b/core/res/res/values-zu/strings.xml
index d64e79c..18af14c 100644
--- a/core/res/res/values-zu/strings.xml
+++ b/core/res/res/values-zu/strings.xml
@@ -124,11 +124,15 @@
     <string name="roamingTextSearching" msgid="8360141885972279963">"Iseshela Isevisi"</string>
     <string name="wfcRegErrorTitle" msgid="2301376280632110664">"Ukushaya kwe-Wi-Fi"</string>
   <string-array name="wfcOperatorErrorAlertMessages">
+    <item msgid="2254967670088539682">"Ukuze wenze amakholi uphinde uthumele imilayezo nge-Wi-FI, qala ucele inkampani yakho yenethiwekhi ukuthi isethe le divayisi. Bese uvula ukushaya kwe-Wi-FI futhi kusukela kuzilungiselelo."</item>
   </string-array>
   <string-array name="wfcOperatorErrorNotificationMessages">
+    <item msgid="6177300162212449033">"Bhalisa ngenkampani yakho yenethiwekhi"</item>
   </string-array>
-    <string name="wfcSpnFormat" msgid="8211621332478306568">"%s"</string>
-    <string name="wfcDataSpnFormat" msgid="1118052028767666883">"%s"</string>
+  <string-array name="wfcSpnFormats">
+    <item msgid="6830082633573257149">"%s"</item>
+    <item msgid="4397097370387921767">"%s ukushaya kwe-Wi-Fi"</item>
+  </string-array>
     <string name="wifi_calling_off_summary" msgid="8720659586041656098">"Valiwe"</string>
     <string name="wfc_mode_wifi_preferred_summary" msgid="1994113411286935263">"Kuncanyelwa i-Wi-Fi"</string>
     <string name="wfc_mode_cellular_preferred_summary" msgid="5920549484600758786">"Kuncanyelwa iselula"</string>
@@ -164,7 +168,10 @@
     <string name="low_memory" product="watch" msgid="4415914910770005166">"Isitoreji sokubuka sigcwele. Susa amanye amafayela ukukhulula isikhala."</string>
     <string name="low_memory" product="tv" msgid="516619861191025923">"Isitoreji se-TV sigcwele. Susa amanye amafayela ukuze wenze kukhululeke isikhala."</string>
     <string name="low_memory" product="default" msgid="3475999286680000541">"Isilondolozi sefoni sigcwele! Susa amanye amafayela ukukhulula isikhala."</string>
-    <string name="ssl_ca_cert_warning" msgid="5848402127455021714">"Inethiwekhi ingase inganyelwe"</string>
+    <plurals name="ssl_ca_cert_warning" formatted="false" msgid="5106721205300213569">
+      <item quantity="one">Ukugunyazwa kwesitifiketi kufakiwe</item>
+      <item quantity="other">Ukugunyazwa kwesitifiketi kufakiwe</item>
+    </plurals>
     <string name="ssl_ca_cert_noti_by_unknown" msgid="4475437862189850602">"Ngenkampani yangaphandle engaziwa"</string>
     <string name="ssl_ca_cert_noti_by_administrator" msgid="550758088185764312">"Ngomlawuli wephrofayela yakho yokusebenza"</string>
     <string name="ssl_ca_cert_noti_managed" msgid="4030263497686867141">"Nge-<xliff:g id="MANAGING_DOMAIN">%s</xliff:g>"</string>
@@ -211,9 +218,11 @@
     <string name="bugreport_title" msgid="2667494803742548533">"Thatha umbiko wesiphazamiso"</string>
     <string name="bugreport_message" msgid="398447048750350456">"Lokhu kuzoqoqa ulwazi mayelana nesimo samanje sedivayisi yakho, ukuthumela imilayezo ye-imeyili. Kuzothatha isikhathi esincane kusuka ekuqaleni umbiko wesiphazamiso uze ulungele ukuthunyelwa; sicela ubekezele."</string>
     <string name="bugreport_option_interactive_title" msgid="8635056131768862479">"Umbiko obandakanyayo"</string>
-    <string name="bugreport_option_interactive_summary" msgid="8180152634022797629">"Sebenzisa lokhu ngaphansi kwezimo eziningi. Kukuvumela ukuthi ulandelele ukuqhubeka kombiko uphinde ufake imininingwane engaphezulu mayelana nenkinga. Kungakhipha ezinye izigaba ezisetshenziswe kancane ezithatha isikhathi eside ukuze zibikwe."</string>
+    <!-- no translation found for bugreport_option_interactive_summary (229299488536107968) -->
+    <skip />
     <string name="bugreport_option_full_title" msgid="6354382025840076439">"Umbiko ogcwele"</string>
-    <string name="bugreport_option_full_summary" msgid="6687306111256813257">"Sebenzisa le nketho ukuze uthole ukuphazamiseka okuncane kwesistimu uma idivayisi yakho ingaphenduli noma ihamba kancane kakhulu, noma udinga zonke izigaba zombiko. Ayithathi isithombe-skrini noma ikuvumele ukuthi ufake imininingwane engaphezulu."</string>
+    <!-- no translation found for bugreport_option_full_summary (7210859858969115745) -->
+    <skip />
     <plurals name="bugreport_countdown" formatted="false" msgid="6878900193900090368">
       <item quantity="one">Ithathela umbiko wesiphazamisi isithombe-skrini kumasekhondi angu-<xliff:g id="NUMBER_1">%d</xliff:g>.</item>
       <item quantity="other">Ithathela umbiko wesiphazamisi isithombe-skrini kumasekhondi angu-<xliff:g id="NUMBER_1">%d</xliff:g>.</item>
@@ -851,6 +860,16 @@
       <item quantity="one"><xliff:g id="COUNT">%d</xliff:g> amahora</item>
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> amahora</item>
     </plurals>
+    <!-- no translation found for now_string_shortest (8912796667087856402) -->
+    <skip />
+    <!-- no translation found for duration_minutes_shortest (598436407511890455) -->
+    <!-- no translation found for duration_hours_shortest (8300234116089026299) -->
+    <!-- no translation found for duration_days_shortest (1363973360381363510) -->
+    <!-- no translation found for duration_years_shortest (5695219816552469904) -->
+    <!-- no translation found for duration_minutes_shortest_future (5490504140297028823) -->
+    <!-- no translation found for duration_hours_shortest_future (4920064985170702118) -->
+    <!-- no translation found for duration_days_shortest_future (8024455442260783986) -->
+    <!-- no translation found for duration_years_shortest_future (5677783230118952251) -->
     <string name="VideoView_error_title" msgid="3534509135438353077">"Inkinga yevidiyo"</string>
     <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"Uxolo, le vidiyo ayilungele ukusakaza bukhomo kwale divaysi."</string>
     <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"Iyehluleka ukudlala levidiyo."</string>
@@ -893,16 +912,25 @@
     <string name="capital_off" msgid="6815870386972805832">"VALIWE"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Qedela isenzo usebenzisa"</string>
     <string name="whichApplicationNamed" msgid="8260158865936942783">"Qedela isenzo usebenzisa i-%1$s"</string>
+    <string name="whichApplicationLabel" msgid="7425855495383818784">"Qedela isenzo"</string>
     <string name="whichViewApplication" msgid="3272778576700572102">"Vula nge-"</string>
     <string name="whichViewApplicationNamed" msgid="2286418824011249620">"Vula nge-%1$s"</string>
+    <string name="whichViewApplicationLabel" msgid="2666774233008808473">"Kuvuliwe"</string>
     <string name="whichEditApplication" msgid="144727838241402655">"Hlela nge-"</string>
     <string name="whichEditApplicationNamed" msgid="1775815530156447790">"Hlela nge-%1$s"</string>
+    <string name="whichEditApplicationLabel" msgid="7183524181625290300">"Hlela"</string>
     <string name="whichSendApplication" msgid="6902512414057341668">"Yabelana no-"</string>
     <string name="whichSendApplicationNamed" msgid="2799370240005424391">"Yabelana no-%1$s"</string>
+    <string name="whichSendApplicationLabel" msgid="4579076294675975354">"Yabelana"</string>
     <string name="whichSendToApplication" msgid="8272422260066642057">"Thumela usebenzisa"</string>
     <string name="whichSendToApplicationNamed" msgid="7768387871529295325">"Thumela usebenzisa i-%1$s"</string>
+    <string name="whichSendToApplicationLabel" msgid="8878962419005813500">"Thumela"</string>
     <string name="whichHomeApplication" msgid="4307587691506919691">"Khetha uhlelo lokusebenza lasekhaya"</string>
     <string name="whichHomeApplicationNamed" msgid="4493438593214760979">"Sebenzisa i-%1$s njengekhaya"</string>
+    <string name="whichHomeApplicationLabel" msgid="809529747002918649">"Thwebula isithombe"</string>
+    <string name="whichImageCaptureApplication" msgid="3680261417470652882">"Thwebula isithombe nge-"</string>
+    <string name="whichImageCaptureApplicationNamed" msgid="8619384150737825003">"Thwebula isithombe nge-%1$s"</string>
+    <string name="whichImageCaptureApplicationLabel" msgid="6390303445371527066">"Thwebula isithombe"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Sebenzisa ngokuzenzakalelayo kulesenzo."</string>
     <string name="use_a_different_app" msgid="8134926230585710243">"Sebenzisa uhlelo lokusebenza oluhlukile"</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Susa izilungiselelo zesistimu; Izinhlelo zokusebenza &amp; Okulandiwe"</string>
@@ -1460,7 +1488,7 @@
     <string name="select_year" msgid="7952052866994196170">"Khetha unyaka"</string>
     <string name="deleted_key" msgid="7659477886625566590">"I-<xliff:g id="KEY">%1$s</xliff:g> isusiwe"</string>
     <string name="managed_profile_label_badge" msgid="2355652472854327647">"Umsebenzi <xliff:g id="LABEL">%1$s</xliff:g>"</string>
-    <string name="lock_to_app_toast" msgid="7570091317001980053">"Ukuze ususe ukuphina kulesi sikrini, thinta uphinde ubambe i-Emuva ne-Buka konke ngesikhathi esisodwa."</string>
+    <string name="lock_to_app_toast" msgid="4921623036476880316">"Ukuze ususe ukuphina lesi sikrini, thinta uphinde ubambe okuthi Emuva."</string>
     <string name="lock_to_app_toast_accessible" msgid="8239120109365070664">"Ukuze ususe ukuphina lesi sikrini, thinta uphinde ubambe Buka konke."</string>
     <string name="lock_to_app_toast_locked" msgid="9125176335701699164">"Uhlelo lokusebenza luphiniwe: Ukususa ukuphina akuvunyelwe kule divayisi."</string>
     <string name="lock_to_app_start" msgid="6643342070839862795">"Isikrini siphiniwe"</string>
@@ -1472,6 +1500,11 @@
     <string name="package_updated_device_owner" msgid="8856631322440187071">"Ibuyekezwe ngumqondisi wakho"</string>
     <string name="package_deleted_device_owner" msgid="7650577387493101353">"Isuswe ngumlawuli wakho"</string>
     <string name="battery_saver_description" msgid="1960431123816253034">"Ukusiza ukuthuthukisa impilo yebhethri, isilondoloze sebhethri sehlisa ukusebenza kwedivayisi yakho futhi sikhawulele ukudlidliza, amasevisi wendawo, nedatha eningi yangasemuva. I-imeyili, imilayezo, nezinye izinhlelo zokusebenza ezincike ekuvumelaniseni zingahle zingabuyekezwa ngaphandle kokuthi uzivule.\n\nIsilondolozi sebhethri siyavaleka ngokuzenzakalelayo uma idivayisi yakho ishaja."</string>
+    <string name="data_saver_description" msgid="6015391409098303235">"Ukusiza ukwehlisa ukusetshenziswa kwedatha, iseva yedatha igwema ezinye izinhlelo zokusebenza ukuthi zithumele noma zamukele idatha ngasemuva. Uhlelo lokusebenza olisebenzisa okwamanje lingafinyelela idatha, kodwa lingenza kanjalo kancane. Lokhu kungachaza, isibonelo, ukuthi izithombe azibonisi uze uzithephe."</string>
+    <!-- no translation found for data_saver_enable_title (4674073932722787417) -->
+    <skip />
+    <!-- no translation found for data_saver_enable_button (7147735965247211818) -->
+    <skip />
     <plurals name="zen_mode_duration_minutes_summary" formatted="false" msgid="4367877408072000848">
       <item quantity="one">Okwamaminithi angu-%1$d (kuze kube ngo-<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
       <item quantity="other">Okwamaminithi angu-%1$d (kuze kube ngo-<xliff:g id="FORMATTEDTIME_1">%2$s</xliff:g>)</item>
diff --git a/core/res/res/values/attrs.xml b/core/res/res/values/attrs.xml
index 85e0b88..6af9ef2 100644
--- a/core/res/res/values/attrs.xml
+++ b/core/res/res/values/attrs.xml
@@ -3499,7 +3499,7 @@
              property is set to true by default but should be set to false if your adapter
              will display items of varying heights. When this property is set to true and
              your adapter displays items of varying heights, the scrollbar thumb will
-             change size as the user scrolls through the list. When set to fale, the list
+             change size as the user scrolls through the list. When set to false, the list
              will use only the number of items in the adapter and the number of items visible
              on screen to determine the scrollbar's properties. -->
         <attr name="smoothScrollbar" format="boolean" />
@@ -8083,11 +8083,11 @@
         <attr name="settingsActivity" />
         <!-- Attribute whether the TV input service can record programs. This value can be changed
              at runtime by calling
-             {@link android.media.tv.TvInputService#updateTvInputInfo(android.content.Context, android.media.tv.TvInputInfo)}. -->
+             {@link android.media.tv.TvInputManager#updateTvInputInfo(android.media.tv.TvInputInfo)}. -->
         <attr name="canRecord" format="boolean" />
         <!-- The number of tuners that the TV input service is associated with. This value can be
              changed at runtime by calling
-             {@link android.media.tv.TvInputService#updateTvInputInfo(android.content.Context, android.media.tv.TvInputInfo)}. -->
+             {@link android.media.tv.TvInputManager#updateTvInputInfo(android.media.tv.TvInputInfo)}. -->
         <attr name="tunerCount" format="integer" />
     </declare-styleable>
 
@@ -8134,6 +8134,10 @@
         <attr name="spacing" />
     </declare-styleable>
 
+    <declare-styleable name="DateTimeView">
+        <attr name="showRelative" format="boolean" />
+    </declare-styleable>
+
     <declare-styleable name="ResolverDrawerLayout_LayoutParams">
         <attr name="layout_alwaysShow" format="boolean" />
         <attr name="layout_ignoreOffset" format="boolean" />
diff --git a/core/res/res/values/attrs_manifest.xml b/core/res/res/values/attrs_manifest.xml
index 5b4364d..e040bea 100644
--- a/core/res/res/values/attrs_manifest.xml
+++ b/core/res/res/values/attrs_manifest.xml
@@ -2248,7 +2248,7 @@
         <attr name="name" />
     </declare-styleable>
 
-    <!-- Associate declared KeySets with upgrading capability -->
+    <!-- Associate declared KeySets with upgrading capability. -->
     <declare-styleable name="AndroidManifestUpgradeKeySet" parent="AndroidManifest">
       <attr name="name" />
     </declare-styleable>
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index aada05d..789a417 100644
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -2474,4 +2474,8 @@
     -->
     <integer name="config_externalHardKeyboardBehavior">0</integer>
 
+    <!-- Package of the unbundled tv remote service which can connect to tv
+         remote provider -->
+    <string name="config_tvRemoteServicePackage" translatable="false"></string>
+
 </resources>
diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml
index 9178305..5446d4c 100644
--- a/core/res/res/values/dimens.xml
+++ b/core/res/res/values/dimens.xml
@@ -162,9 +162,9 @@
     <dimen name="notification_min_height">92dp</dimen>
 
     <!-- The width of the big icons in notifications. -->
-    <dimen name="notification_large_icon_width">40dp</dimen>
+    <dimen name="notification_large_icon_width">64dp</dimen>
     <!-- The width of the big icons in notifications. -->
-    <dimen name="notification_large_icon_height">40dp</dimen>
+    <dimen name="notification_large_icon_height">64dp</dimen>
 
     <!-- The minimum width of the app name in the header if it shrinks -->
     <dimen name="notification_header_shrink_min_width">72dp</dimen>
@@ -184,8 +184,9 @@
     <!-- The spacing between messages in Notification.MessagingStyle -->
     <dimen name="notification_messaging_spacing">6dp</dimen>
 
-    <!-- Preferred width of the search view. -->
+    <!-- Preferred width and height of the search view. -->
     <dimen name="search_view_preferred_width">320dip</dimen>
+    <dimen name="search_view_preferred_height">48dip</dimen>
 
     <!-- Dialog padding for round display -->
     <dimen name="alert_dialog_round_padding">27dip</dimen>
@@ -289,6 +290,12 @@
     <!-- Padding for notification icon when drawn with circle around it -->
     <dimen name="notification_large_icon_circle_padding">11dp</dimen>
 
+    <!-- The margin on top of the text of the notification -->
+    <dimen name="notification_text_margin_top">0.5dp</dimen>
+
+    <!-- The padding on top of inbox style elements -->
+    <dimen name="notification_inbox_item_top_padding">5dp</dimen>
+
     <!-- Size of the profile badge for notifications -->
     <dimen name="notification_badge_size">12dp</dimen>
 
diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml
index 836efde..d36da9f 100644
--- a/core/res/res/values/strings.xml
+++ b/core/res/res/values/strings.xml
@@ -497,14 +497,14 @@
     <string name="bugreport_option_interactive_title">Interactive report</string>
     <!-- Summary in the bugreport dialog for the interactive workflow. [CHAR LIMIT=NONE] -->
     <string name="bugreport_option_interactive_summary">Use this under most circumstances.
-        It allows you to track progress of the report and enter more details about the problem.
+        It allows you to track progress of the report, enter more details about the problem, and take screenshots.
         It might omit some less-used sections that take a long time to report.</string>
     <!-- Title in the bugreport dialog for the full workflow. Should fit in one line. [CHAR LIMIT=30] -->
     <string name="bugreport_option_full_title">Full report</string>
     <!-- Summary in the bugreport dialog for the full workflow. [CHAR LIMIT=NONE] -->
     <string name="bugreport_option_full_summary">Use this option for minimal system interference when
         your device is unresponsive or too slow, or when you need all report sections.
-        Does not take a screenshot or allow you to enter more details.</string>
+        Does not allow you to enter more details or take additional screenshots.</string>
     <!--  Toast message informing user in how many seconds a bugreport screenshot will be taken -->
     <plurals name="bugreport_countdown">
         <item quantity="one">Taking screenshot for bug report in <xliff:g id="number">%d</xliff:g> second.</item>
@@ -2423,6 +2423,49 @@
         <item quantity="other"><xliff:g id="count">%d</xliff:g> hours</item>
     </plurals>
 
+    <!-- A string denoting the current point in time that should be as short as possible. Abbreviations are preferred to full strings as this might be shown repetitively. It is used in the header of notifications. [CHAR LIMIT=8]-->
+    <string name="now_string_shortest">now</string>
+
+    <!-- Phrase describing a time duration using minutes that is as short as possible, preferrably one character. If the language needs a space in between the integer and the unit, please also integrate it in the string, but preferably it should not have a space in between.[CHAR LIMIT=6] -->
+    <plurals name="duration_minutes_shortest">
+        <item quantity="other"><xliff:g example="2" id="count">%d</xliff:g>m</item>
+    </plurals>
+
+    <!-- Phrase describing a time duration using hours that is as short as possible, preferrably one character. If the language needs a space in between the integer and the unit, please also integrate it in the string, but preferably it should not have a space in between.[CHAR LIMIT=6] -->
+    <plurals name="duration_hours_shortest">
+        <item quantity="other"><xliff:g example="2" id="count">%d</xliff:g>h</item>
+    </plurals>
+
+    <!-- Phrase describing a time duration using days that is as short as possible, preferrably one character. If the language needs a space in between the integer and the unit, please also integrate it in the string, but preferably it should not have a space in between.[CHAR LIMIT=6] -->
+    <plurals name="duration_days_shortest">
+        <item quantity="other"><xliff:g example="2" id="count">%d</xliff:g>d</item>
+    </plurals>
+
+    <!-- Phrase describing a time duration using years that is as short as possible, preferrably one character. If the language needs a space in between the integer and the unit, please also integrate it in the string, but preferably it should not have a space in between.[CHAR LIMIT=6] -->
+    <plurals name="duration_years_shortest">
+        <item quantity="other"><xliff:g example="2" id="count">%d</xliff:g>y</item>
+    </plurals>
+
+    <!-- Phrase describing a time duration using minutes that is as short as possible, preferrably one character. This version should be a future point in time. If the language needs a space in between the integer and the unit, please also integrate it in the string, but preferably it should not have a space in between.[CHAR LIMIT=14] -->
+    <plurals name="duration_minutes_shortest_future">
+        <item quantity="other">in <xliff:g example="2" id="count">%d</xliff:g>m</item>
+    </plurals>
+
+    <!-- Phrase describing a time duration using hours that is as short as possible, preferrably one character. This version should be a future point in time. If the language needs a space in between the integer and the unit, please also integrate it in the string, but preferably it should not have a space in between.[CHAR LIMIT=14] -->
+    <plurals name="duration_hours_shortest_future">
+        <item quantity="other">in <xliff:g example="2" id="count">%d</xliff:g>h</item>
+    </plurals>
+
+    <!-- Phrase describing a time duration using days that is as short as possible, preferrably one character. This version should be a future point in time. If the language needs a space in between the integer and the unit, please also integrate it in the string, but preferably it should not have a space in between.[CHAR LIMIT=14] -->
+    <plurals name="duration_days_shortest_future">
+        <item quantity="other">in <xliff:g example="2" id="count">%d</xliff:g>d</item>
+    </plurals>
+
+    <!-- Phrase describing a time duration using years that is as short as possible, preferrably one character. This version should be a future point in time. If the language needs a space in between the integer and the unit, please also integrate it in the string, but preferably it should not have a space in between.[CHAR LIMIT=14] -->
+    <plurals name="duration_years_shortest_future">
+        <item quantity="other">in <xliff:g example="2" id="count">%d</xliff:g>y</item>
+    </plurals>
+
     <!-- Title for error alert when a video cannot be played.  it can be used by any app. -->
     <string name="VideoView_error_title">Video problem</string>
     <!-- Text for error alert when a video container is not valid for progressive download/playback. -->
@@ -2687,6 +2730,11 @@
     <!-- [CHAR LIMIT=NONE] Message shown in upgrading dialog when doing an fstrim. -->
     <string name="android_upgrading_fstrim">Optimizing storage.</string>
 
+    <!-- [CHAR LIMIT=40] Title of notification that is shown when performing a system upgrade. -->
+    <string name="android_upgrading_notification_title">Android is upgrading</string>
+    <!-- [CHAR LIMIT=200] Body of notification that is shown when performing a system upgrade. -->
+    <string name="android_upgrading_notification_body">Some apps may not work properly until the upgrade finishes</string>
+
     <!-- [CHAR LIMIT=NONE] Message shown in upgrading dialog for each .apk that is optimized. -->
     <string name="android_upgrading_apk">Optimizing app
         <xliff:g id="number" example="123">%1$d</xliff:g> of
@@ -4024,7 +4072,7 @@
     <string name="date_picker_day_typeface">sans-serif-medium</string>
 
     <!-- Notify use that they are in Lock-to-app -->
-    <string name="lock_to_app_toast">To unpin this screen, touch and hold Back and Overview at the same time.</string>
+    <string name="lock_to_app_toast">To unpin this screen, touch and hold Back.</string>
     <!-- Notify use that they are in Lock-to-app in accessibility mode -->
     <string name="lock_to_app_toast_accessible">To unpin this screen, touch and hold Overview.</string>
     <!-- Notify user that they are locked in lock-to-app mode -->
@@ -4053,6 +4101,10 @@
 
     <!-- [CHAR_LIMIT=NONE] Data saver: Feature description -->
     <string name="data_saver_description">To help reduce data usage, Data Saver prevents some apps from sending or receiving data in the background. An app you’re currently using can access data, but may do so less frequently. This may mean, for example, that images don’t display until you tap them.</string>
+    <!-- [CHAR_LIMIT=30] Data saver: Title on first-time dialogFeature description -->
+    <string name="data_saver_enable_title">Turn on Data Saver?</string>
+    <!-- [CHAR_LIMIT=16] Data saver: Button to turn it on on first-time dialog -->
+    <string name="data_saver_enable_button">Turn on</string>
 
     <!-- Zen mode condition - summary: time duration in minutes. [CHAR LIMIT=NONE] -->
     <plurals name="zen_mode_duration_minutes_summary">
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index a35b409..22b6b75 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -423,6 +423,7 @@
   <java-symbol type="dimen" name="dropdownitem_text_padding_left" />
   <java-symbol type="dimen" name="password_keyboard_spacebar_vertical_correction" />
   <java-symbol type="dimen" name="search_view_preferred_width" />
+  <java-symbol type="dimen" name="search_view_preferred_height" />
   <java-symbol type="dimen" name="textview_error_popup_default_width" />
   <java-symbol type="dimen" name="toast_y_offset" />
   <java-symbol type="dimen" name="action_bar_stacked_max_height" />
@@ -2101,6 +2102,8 @@
   <java-symbol type="dimen" name="timepicker_text_size_inner" />
   <java-symbol type="string" name="battery_saver_description" />
   <java-symbol type="string" name="data_saver_description" />
+  <java-symbol type="string" name="data_saver_enable_title" />
+  <java-symbol type="string" name="data_saver_enable_button" />
   <java-symbol type="string" name="zen_mode_forever" />
   <java-symbol type="string" name="zen_mode_forever_dnd" />
   <java-symbol type="string" name="zen_mode_rule_name_combination" />
@@ -2507,6 +2510,17 @@
 
   <java-symbol type="id" name="notification_content_container" />
 
+  <java-symbol type="plurals" name="duration_minutes_shortest" />
+  <java-symbol type="plurals" name="duration_hours_shortest" />
+  <java-symbol type="plurals" name="duration_days_shortest" />
+  <java-symbol type="plurals" name="duration_years_shortest" />
+  <java-symbol type="plurals" name="duration_minutes_shortest_future" />
+  <java-symbol type="plurals" name="duration_hours_shortest_future" />
+  <java-symbol type="plurals" name="duration_days_shortest_future" />
+  <java-symbol type="plurals" name="duration_years_shortest_future" />
+
+  <java-symbol type="string" name="now_string_shortest" />
+
   <!-- Encryption notification while accounts are locked by credential encryption -->
   <java-symbol type="string" name="user_encrypted_title" />
   <java-symbol type="string" name="user_encrypted_message" />
@@ -2534,6 +2548,9 @@
 
   <java-symbol type="dimen" name="notification_messaging_spacing" />
 
+  <java-symbol type="dimen" name="notification_text_margin_top" />
+  <java-symbol type="dimen" name="notification_inbox_item_top_padding" />
+
   <!-- WallpaperManager config -->
   <java-symbol type="string" name="config_wallpaperCropperPackage" />
 
@@ -2562,4 +2579,7 @@
 
   <java-symbol type="dimen" name="input_extract_action_button_width" />
   <java-symbol type="dimen" name="input_extract_action_button_height" />
+
+  <!-- TV Remote Service package -->
+  <java-symbol type="string" name="config_tvRemoteServicePackage" />
 </resources>
diff --git a/core/tests/benchmarks/src/android/text/SpannableStringBuilderBenchmark.java b/core/tests/benchmarks/src/android/text/SpannableStringBuilderBenchmark.java
index 23f8810..96915f4 100644
--- a/core/tests/benchmarks/src/android/text/SpannableStringBuilderBenchmark.java
+++ b/core/tests/benchmarks/src/android/text/SpannableStringBuilderBenchmark.java
@@ -38,7 +38,7 @@
     @BeforeExperiment
     protected void setUp() throws Exception {
         clazz = Class.forName(paramType);
-        int strSize = Integer.valueOf(paramStringMult);
+        int strSize = Integer.parseInt(paramStringMult);
         StringBuilder strBuilder = new StringBuilder();
         for (int i = 0; i < strSize; i++) {
             strBuilder.append(TEST_STRING);
diff --git a/core/tests/benchmarks/src/android/text/SpannableStringInternalCopyBenchmark.java b/core/tests/benchmarks/src/android/text/SpannableStringInternalCopyBenchmark.java
index dc5fed0..1286bcc 100644
--- a/core/tests/benchmarks/src/android/text/SpannableStringInternalCopyBenchmark.java
+++ b/core/tests/benchmarks/src/android/text/SpannableStringInternalCopyBenchmark.java
@@ -30,7 +30,7 @@
 
     @BeforeExperiment
     protected void setUp() throws Exception {
-        int strSize = Integer.valueOf(paramStringMult);
+        int strSize = Integer.parseInt(paramStringMult);
         StringBuilder strBuilder = new StringBuilder();
         for (int i = 0; i < strSize; i++) {
             strBuilder.append(SpannableStringBuilderBenchmark.TEST_STRING);
diff --git a/core/tests/benchmarks/src/android/text/util/LinkifyBenchmark.java b/core/tests/benchmarks/src/android/text/util/LinkifyBenchmark.java
index a6e433f..24b20ca 100644
--- a/core/tests/benchmarks/src/android/text/util/LinkifyBenchmark.java
+++ b/core/tests/benchmarks/src/android/text/util/LinkifyBenchmark.java
@@ -49,7 +49,7 @@
 
     @BeforeExperiment
     protected void setUp() throws Exception {
-        int copyAmount = Integer.valueOf(mParamCopyAmount);
+        int copyAmount = Integer.parseInt(mParamCopyAmount);
         StringBuilder strBuilder = new StringBuilder();
         for (int i = 0; i < copyAmount; i++) {
             strBuilder.append(mParamBasicText);
diff --git a/core/tests/coretests/src/android/text/method/BackspaceTest.java b/core/tests/coretests/src/android/text/method/BackspaceTest.java
index e1b305f..a9fa4dd 100644
--- a/core/tests/coretests/src/android/text/method/BackspaceTest.java
+++ b/core/tests/coretests/src/android/text/method/BackspaceTest.java
@@ -420,10 +420,6 @@
         // Regional indicator symbol + ZERO WIDTH JOINER
         state.setByString("U+1F1FA U+200D U+1F469 |");
         backspace(state, 0);
-        state.assertEquals("U+1F1FA U+200D |");
-        backspace(state, 0);
-        state.assertEquals("U+1F1FA |");
-        backspace(state, 0);
         state.assertEquals("|");
 
         // Start with ZERO WIDTH JOINER + emoji modifier
@@ -452,9 +448,7 @@
         // Emoji modifier + ZERO WIDTH JOINER
         state.setByString("U+1F466 U+1F3FB U+200D U+1F469 |");
         backspace(state, 0);
-        state.assertEquals("U+1F466 U+1F3FB U+200D |");
-        backspace(state, 0);
-        state.assertEquals("U+1F466 U+1F3FB |");
+        state.assertEquals("U+1F466 |");
         backspace(state, 0);
         state.assertEquals("|");
 
diff --git a/core/tests/coretests/src/com/android/internal/os/BatteryStatsSamplingTimerTest.java b/core/tests/coretests/src/com/android/internal/os/BatteryStatsSamplingTimerTest.java
new file mode 100644
index 0000000..ce6879d
--- /dev/null
+++ b/core/tests/coretests/src/com/android/internal/os/BatteryStatsSamplingTimerTest.java
@@ -0,0 +1,196 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package com.android.internal.os;
+
+import android.os.BatteryStats;
+import android.os.Parcel;
+import android.support.test.filters.SmallTest;
+
+import junit.framework.TestCase;
+
+import org.mockito.Mockito;
+
+public class BatteryStatsSamplingTimerTest extends TestCase {
+
+    @SmallTest
+    public void testSettingStalePreservesData() throws Exception {
+        final MockClocks clocks = new MockClocks();
+        final BatteryStatsImpl.SamplingTimer timer = new BatteryStatsImpl.SamplingTimer(clocks,
+                Mockito.mock(BatteryStatsImpl.TimeBase.class));
+
+        timer.onTimeStarted(100, 100, 100);
+
+        // First update is absorbed.
+        timer.update(10, 1);
+
+        timer.update(20, 2);
+
+        assertEquals(1, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(10, timer.getTotalTimeLocked(200, BatteryStats.STATS_SINCE_CHARGED));
+
+        timer.endSample();
+
+        assertEquals(1, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(10, timer.getTotalTimeLocked(200, BatteryStats.STATS_SINCE_CHARGED));
+
+        timer.onTimeStopped(200, 200, 200);
+
+        assertEquals(1, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(10, timer.getTotalTimeLocked(200, BatteryStats.STATS_SINCE_CHARGED));
+    }
+
+    @SmallTest
+    public void testEndSampleAndContinueWhenTimeOrCountDecreases() throws Exception {
+        final MockClocks clocks = new MockClocks();
+        final BatteryStatsImpl.TimeBase timeBase = Mockito.mock(BatteryStatsImpl.TimeBase.class);
+        final BatteryStatsImpl.SamplingTimer timer = new BatteryStatsImpl.SamplingTimer(clocks,
+                timeBase);
+
+        // First once is absorbed.
+        timer.update(10, 1);
+
+        timer.add(10, 1);
+
+        assertEquals(0, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(0, timer.getTotalTimeLocked(200, BatteryStats.STATS_SINCE_CHARGED));
+
+        // This is less than we currently have, so we will end the sample. Time isn't running, so
+        // nothing should happen.
+        timer.update(0, 0);
+
+        assertEquals(0, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(0, timer.getTotalTimeLocked(200, BatteryStats.STATS_SINCE_CHARGED));
+
+        timer.onTimeStarted(100, 100, 100);
+
+        // This should add.
+        timer.add(100, 10);
+
+        assertEquals(100, timer.getTotalTimeLocked(200, BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(10, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+
+        // This is less than we currently have, so we should end our sample and continue with the
+        // entire amount updated here.
+        timer.update(50, 5);
+
+        assertEquals(150, timer.getTotalTimeLocked(200, BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(15, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+
+        timer.onTimeStopped(200, 200, 200);
+
+        assertEquals(150, timer.getTotalTimeLocked(200, BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(15, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+    }
+
+    @SmallTest
+    public void testFirstUpdateIsAbsorbed() throws Exception {
+        final MockClocks clocks = new MockClocks();
+        final BatteryStatsImpl.TimeBase timeBase = Mockito.mock(BatteryStatsImpl.TimeBase.class);
+
+        BatteryStatsImpl.SamplingTimer timer = new BatteryStatsImpl.SamplingTimer(clocks, timeBase);
+
+        // This should be absorbed because it is our first update and we don't know what
+        // was being counted before.
+        timer.update(10, 1);
+
+        assertEquals(0, timer.getTotalTimeLocked(10, BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(0, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+
+        timer = new BatteryStatsImpl.SamplingTimer(clocks, timeBase);
+        timer.onTimeStarted(100, 100, 100);
+
+        // This should be absorbed.
+        timer.update(10, 1);
+
+        assertEquals(0, timer.getTotalTimeLocked(100, BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(0, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+
+        // This should NOT be aborbed, since we've already done that.
+        timer.add(10, 1);
+
+        assertEquals(10, timer.getTotalTimeLocked(100, BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(1, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+
+        timer.onTimeStopped(200, 200, 200);
+        timer.onTimeStarted(300, 300, 300);
+
+        // This should NOT be absorbed.
+        timer.add(10, 1);
+
+        assertEquals(20, timer.getTotalTimeLocked(300, BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(2, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+    }
+
+    @SmallTest
+    public void testSampleTimerSummaryParceling() throws Exception {
+        final MockClocks clocks = new MockClocks();
+        clocks.realtime = 0;
+        clocks.uptime = 0;
+
+        final BatteryStatsImpl.TimeBase timeBase = new BatteryStatsImpl.TimeBase();
+        timeBase.init(clocks.uptimeMillis(), clocks.elapsedRealtime());
+
+        BatteryStatsImpl.SamplingTimer timer = new BatteryStatsImpl.SamplingTimer(clocks, timeBase);
+
+        // Start running on battery.
+        timeBase.setRunning(true, clocks.uptimeMillis(), clocks.elapsedRealtime());
+
+        // The first update on battery consumes the values as a way of starting cleanly.
+        timer.add(10, 1);
+
+        timer.add(10, 1);
+
+        clocks.realtime = 20;
+        clocks.uptime = 20;
+
+        assertEquals(10, timer.getTotalTimeLocked(clocks.elapsedRealtime(),
+                BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(1, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+
+        // Grab a summary parcel while on battery.
+        final Parcel onBatterySummaryParcel = Parcel.obtain();
+        timer.writeSummaryFromParcelLocked(onBatterySummaryParcel, clocks.elapsedRealtime() * 1000);
+        onBatterySummaryParcel.setDataPosition(0);
+
+        // Stop running on battery.
+        timeBase.setRunning(false, clocks.uptimeMillis(), clocks.elapsedRealtime());
+
+        assertEquals(10, timer.getTotalTimeLocked(clocks.elapsedRealtime(),
+                BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(1, timer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+
+        // Grab a summary parcel while not on battery.
+        final Parcel offBatterySummaryParcel = Parcel.obtain();
+        timer.writeSummaryFromParcelLocked(offBatterySummaryParcel,
+                clocks.elapsedRealtime() * 1000);
+        offBatterySummaryParcel.setDataPosition(0);
+
+        // Read the on battery summary from the parcel.
+        BatteryStatsImpl.SamplingTimer unparceledTimer = new BatteryStatsImpl.SamplingTimer(
+                clocks, timeBase);
+        unparceledTimer.readSummaryFromParcelLocked(onBatterySummaryParcel);
+
+        assertEquals(10, unparceledTimer.getTotalTimeLocked(0, BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(1, unparceledTimer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+
+        // Read the off battery summary from the parcel.
+        unparceledTimer = new BatteryStatsImpl.SamplingTimer(clocks, timeBase);
+        unparceledTimer.readSummaryFromParcelLocked(offBatterySummaryParcel);
+
+        assertEquals(10, unparceledTimer.getTotalTimeLocked(0, BatteryStats.STATS_SINCE_CHARGED));
+        assertEquals(1, unparceledTimer.getCountLocked(BatteryStats.STATS_SINCE_CHARGED));
+    }
+}
diff --git a/core/tests/coretests/src/com/android/internal/os/BatteryStatsServTest.java b/core/tests/coretests/src/com/android/internal/os/BatteryStatsServTest.java
index 1c3cd38..5fd8225 100644
--- a/core/tests/coretests/src/com/android/internal/os/BatteryStatsServTest.java
+++ b/core/tests/coretests/src/com/android/internal/os/BatteryStatsServTest.java
@@ -16,20 +16,13 @@
 
 package com.android.internal.os;
 
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.ArrayList;
-
 import android.os.BatteryStats;
 import android.os.Parcel;
-import android.test.suitebuilder.annotation.SmallTest;
-import android.util.Log;
+import android.support.test.filters.SmallTest;
 
 import junit.framework.Assert;
 import junit.framework.TestCase;
 
-import com.android.internal.os.BatteryStatsImpl;
-
 /**
  * Provides test cases for android.os.BatteryStats.
  */
diff --git a/core/tests/coretests/src/com/android/internal/os/BatteryStatsTests.java b/core/tests/coretests/src/com/android/internal/os/BatteryStatsTests.java
index 05aa53c..78bcbbc 100644
--- a/core/tests/coretests/src/com/android/internal/os/BatteryStatsTests.java
+++ b/core/tests/coretests/src/com/android/internal/os/BatteryStatsTests.java
@@ -5,6 +5,7 @@
 
 @RunWith(Suite.class)
 @Suite.SuiteClasses({
+        BatteryStatsSamplingTimerTest.class,
         BatteryStatsServTest.class,
         BatteryStatsTimeBaseTest.class,
         BatteryStatsTimerTest.class,
diff --git a/core/tests/coretests/src/com/android/internal/os/BatteryStatsTimeBaseTest.java b/core/tests/coretests/src/com/android/internal/os/BatteryStatsTimeBaseTest.java
index ab92f15..3190d9e 100644
--- a/core/tests/coretests/src/com/android/internal/os/BatteryStatsTimeBaseTest.java
+++ b/core/tests/coretests/src/com/android/internal/os/BatteryStatsTimeBaseTest.java
@@ -18,11 +18,10 @@
 
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import java.util.ArrayList;
 
 import android.os.BatteryStats;
 import android.os.Parcel;
-import android.test.suitebuilder.annotation.SmallTest;
+import android.support.test.filters.SmallTest;
 import android.util.Log;
 
 import junit.framework.Assert;
diff --git a/core/tests/coretests/src/com/android/internal/os/BatteryStatsTimerTest.java b/core/tests/coretests/src/com/android/internal/os/BatteryStatsTimerTest.java
index 3e17fcb..98d0f7f 100644
--- a/core/tests/coretests/src/com/android/internal/os/BatteryStatsTimerTest.java
+++ b/core/tests/coretests/src/com/android/internal/os/BatteryStatsTimerTest.java
@@ -18,8 +18,7 @@
 
 import android.os.BatteryStats;
 import android.os.Parcel;
-import android.test.suitebuilder.annotation.SmallTest;
-import android.util.Log;
+import android.support.test.filters.SmallTest;
 import android.util.StringBuilderPrinter;
 
 import junit.framework.Assert;
@@ -148,7 +147,7 @@
         timer.onTimeStarted(10, 20, 50);
         Assert.assertEquals(50, timer.lastComputeRunTimeRealtime);
         Assert.assertEquals(4, timer.getUnpluggedTime());
-        Assert.assertEquals(0, timer.getUnpluggedCount());
+        Assert.assertEquals(3000, timer.getUnpluggedCount());
 
         // Test that stopping the timer updates mTotalTime and mCount
         timer.nextComputeRunTime = 17;
@@ -168,15 +167,16 @@
         // Test write then read
         TestTimer timer1 = new TestTimer(clocks, 0, timeBase);
         timer1.setCount(1);
-        timer1.setLoadedCount(2);
-        timer1.setLastCount(3);
-        timer1.setUnpluggedCount(4);
+        timer1.setLoadedCount(3);
+        timer1.setLastCount(4);
+        timer1.setUnpluggedCount(5);
         timer1.setTotalTime(9223372036854775807L);
         timer1.setLoadedTime(9223372036854775806L);
         timer1.setLastTime(9223372036854775805L);
         timer1.setUnpluggedTime(9223372036854775804L);
         timer1.setTimeBeforeMark(9223372036854775803L);
         timer1.nextComputeRunTime = 201;
+        timer1.nextComputeCurrentCount = 2;
 
         Parcel parcel = Parcel.obtain();
         Timer.writeTimerToParcel(parcel, timer1, 77);
@@ -185,10 +185,10 @@
         Assert.assertTrue("parcel null object", parcel.readInt() != 0);
 
         TestTimer timer2 = new TestTimer(clocks, 0, timeBase, parcel);
-        Assert.assertEquals(1, timer2.getCount());
-        Assert.assertEquals(2, timer2.getLoadedCount());
+        Assert.assertEquals(2, timer2.getCount()); // from computeTotalCountLocked()
+        Assert.assertEquals(3, timer2.getLoadedCount());
         Assert.assertEquals(0, timer2.getLastCount()); // NOT saved
-        Assert.assertEquals(4, timer2.getUnpluggedCount());
+        Assert.assertEquals(5, timer2.getUnpluggedCount());
         Assert.assertEquals(201, timer2.getTotalTime()); // from computeRunTimeLocked()
         Assert.assertEquals(9223372036854775806L, timer2.getLoadedTime());
         Assert.assertEquals(0, timer2.getLastTime()); // NOT saved
@@ -309,6 +309,7 @@
 
         Parcel parcel = Parcel.obtain();
         timer1.nextComputeRunTime = 9223372036854775800L;
+        timer1.nextComputeCurrentCount = 1;
         timer1.writeSummaryFromParcelLocked(parcel, 201);
         Assert.assertEquals(40, timer1.lastComputeRunTimeRealtime);
 
diff --git a/core/tests/coretests/src/com/android/internal/util/ProgressReporterTest.java b/core/tests/coretests/src/com/android/internal/util/ProgressReporterTest.java
index fbf5523..87f2a8a 100644
--- a/core/tests/coretests/src/com/android/internal/util/ProgressReporterTest.java
+++ b/core/tests/coretests/src/com/android/internal/util/ProgressReporterTest.java
@@ -24,7 +24,7 @@
     @Override
     protected void setUp() throws Exception {
         super.setUp();
-        r = new ProgressReporter(0, null);
+        r = new ProgressReporter(0);
     }
 
     private void assertProgress(int expected) {
diff --git a/docs/html-intl/intl/es/design/get-started/principles.jd b/docs/html-intl/intl/es/design/get-started/principles.jd
index 351a4f7..719a5ce 100644
--- a/docs/html-intl/intl/es/design/get-started/principles.jd
+++ b/docs/html-intl/intl/es/design/get-started/principles.jd
@@ -14,8 +14,8 @@
 
 <h2 id="enchant-me">Cautívame</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="delight-me">Deléitame de formas sorprendentes</h4>
 <p>Una superficie atractiva, una animación colocada en el lugar correcto o un efecto de sonido bien sincronizado suelen ser experiencias
@@ -23,7 +23,7 @@
 poderosa.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_delight.png">
 
@@ -32,15 +32,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="real-objects-more-fun">Los objetos reales son más divertidos que los botones y los menús</h4>
-<p>Permita que los usuarios toquen y manipulen directamente los objetos de su aplicación. Esto reduce el esfuerzo cognitivo
+<p>Permite que los usuarios toquen y manipulen directamente los objetos de tu aplicación. Esto reduce el esfuerzo cognitivo
 que se necesita para llevar a cabo una tarea que resulte satisfactoria a nivel emocional.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_real_objects.png">
 
@@ -49,16 +49,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-it-mine">Permíteme darle un toque personal</h4>
-<p>A los usuarios les gusta agregar toques personales, ya que esto los ayuda a sentirse cómodos y a sentir que tienen el control. Ofrezca
-opciones predeterminadas prácticas y atractivas, pero también tenga en cuenta personalizaciones opcionales y divertidas que no entorpezcan las
+<p>A los usuarios les gusta agregar toques personales, ya que esto los ayuda a sentirse cómodos y a sentir que tienen el control. Ofrece
+opciones predeterminadas prácticas y atractivas, pero también ten en cuenta personalizaciones opcionales y divertidas que no entorpezcan las
 tareas principales.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_it_mine.png">
 
@@ -67,15 +67,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="get-to-know-me">Conóceme</h4>
-<p>Con el paso del tiempo, conozca las preferencias de los usuarios. En lugar de pedirles a los usuarios que elijan las mismas cosas una y otra
+<p>Con el paso del tiempo, conoce las preferencias de los usuarios. En lugar de pedirles a los usuarios que elijan las mismas cosas una y otra
 vez, permita que puedan acceder fácilmente a las opciones que ya eligieron antes.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_get_to_know_me.png">
 
@@ -84,14 +84,14 @@
 
 <h2 id="simplify-my-life">Simplifica mi vida</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="keep-it-brief">Sé breve</h4>
 <p>Utilice frases cortas con palabras simples. Las personas tienden a omitir las oraciones largas.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_keep_it_brief.png">
 
@@ -100,15 +100,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="pictures-faster-than-words">Las imágenes son más prácticas que las palabras</h4>
-<p>Considere la idea de utilizar imágenes para explicar las ideas. Las imágenes atraen la atención de las personas y pueden ser mucho más eficientes
+<p>Considera la idea de utilizar imágenes para explicar las ideas. Las imágenes atraen la atención de las personas y pueden ser mucho más eficientes
 que las palabras.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_pictures.png">
 
@@ -117,15 +117,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="decide-for-me">Decide por mí, pero permíteme tener la última palabra</h4>
-<p>Siga su instinto y actúe sin preguntar primero. Tener que elegir demasiadas veces y tomar muchas decisiones hace que las personas
-se sientan molestas. Permita que los usuarios puedan deshacer sus elecciones en caso de que no sean lo que ellos desean.</p>
+<p>Sigue su instinto y actúa sin preguntar primero. Tener que elegir demasiadas veces y tomar muchas decisiones hace que las personas
+se sientan molestas. Permite que los usuarios puedan deshacer sus elecciones en caso de que no sean lo que ellos desean.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_decide_for_me.png">
 
@@ -134,15 +134,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="only-show-when-i-need-it">Solo muéstrame lo que necesito, cuando lo necesito</h4>
-<p>Los usuarios se sienten abrumados cuando se les presenta demasiada información al mismo tiempo. Divida las tareas y la información en fragmentos pequeños
-y fáciles de digerir. Oculte las opciones que no son fundamentales en el momento y capacite a los usuarios sobre la marcha.</p>
+<p>Los usuarios se sienten abrumados cuando se les presenta demasiada información al mismo tiempo. Divide las tareas y la información en fragmentos pequeños
+y fáciles de digerir. Oculta las opciones que no son fundamentales en el momento y capacita a los usuarios sobre la marcha.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_information_when_need_it.png">
 
@@ -151,15 +151,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="always-know-where-i-am">Siempre debo saber dónde me encuentro</h4>
-<p>Haga que los usuarios sientan que conocen el camino de regreso. Para ello, diseñe las distintas partes de su aplicación de modo tal que se vean diferentes y
-utilice transiciones para mostrar la relación entre las pantallas. Proporcione comentarios sobre las tareas que están en curso.</p>
+<p>Haz que los usuarios sientan que conocen el camino de regreso. Para ello, diseña las distintas partes de su aplicación de modo tal que se vean diferentes y
+utiliza transiciones para mostrar la relación entre las pantallas. Proporciona comentarios sobre las tareas que están en curso.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_navigation.png">
 
@@ -168,16 +168,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="never-lose-my-stuff">Nunca pierdas lo que es mío</h4>
-<p>Guarde aquellas cosas que los usuarios crearon y permítales acceder a ellas desde cualquier lugar. Recuerde las configuraciones,
+<p>Guarda aquellas cosas que los usuarios crearon y permíteles acceder a ellas desde cualquier lugar. Recuerda las configuraciones,
 los toques personales y las creaciones en todos los teléfonos, las tablets y las computadoras. Esta es la forma de hacer que las actualizaciones
 sean lo más simple del mundo.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_never_lose_stuff.png">
 
@@ -186,15 +186,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="looks-same-should-act-same">Si se ve igual, debe funcionar de la misma manera</h4>
-<p>Ayude a los usuarios a distinguir las diferencias funcionales al lograr que se vean diferentes en lugar de sutiles.
+<p>Ayuda a los usuarios a distinguir las diferencias funcionales al lograr que se vean diferentes en lugar de sutiles.
 Evite los modos, que son sitios que lucen similar pero actúan diferente ante la misma entrada.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_looks_same.png">
 
@@ -203,15 +203,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="interrupt-only-if-important">Solo interrúmpeme si es importante</h4>
 <p>Al igual que un buen asistente personal, evite a los usuarios los pormenores poco importantes. Las personas desean estar
 concentradas y, a menos que sea fundamental y esté sujeta a un plazo de tiempo, una interrupción puede resultar agobiante y frustrante.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_important_interruption.png">
 
@@ -220,16 +220,16 @@
 
 <h2 id="make-me-amazing">Permíteme ser asombroso</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="give-me-tricks">Ofréceme trucos que funcionen en todos lados</h4>
-<p>Las personas se sienten muy bien cuando descubren cosas por sí mismos. Logre que su aplicación sea más simple de utilizar al
+<h4 id="give-me-tricks">Ofrézame trucos que funcionen en todos lados</h4>
+<p>Las personas se sienten muy bien cuando descubren cosas por sí mismos. Logra que su aplicación sea más simple de utilizar al
 aprovechar los patrones visuales y la memoria muscular de otras aplicaciones de Android. Por ejemplo, el gesto de deslizar rápidamente
 puede ser un buen acceso directo de navegación.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_tricks.png">
 
@@ -238,16 +238,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="its-not-my-fault">No es mi culpa</h4>
-<p>Sea sutil cuando les solicite a los usuarios que realicen correcciones. Ellos desean sentirse inteligentes cuando usan la
-aplicación que usted creó. Si hacen algo mal, bríndeles instrucciones claras de recuperación, pero evite darles detalles técnicos.
-Sería incluso mejor que usted lo solucione en segundo plano.</p>
+<p>Sé sutil cuando solicites a los usuarios que realicen correcciones. Ellos desean sentirse inteligentes cuando usan la
+aplicación que creaste. Si hacen algo mal, bríndales instrucciones claras de recuperación, pero evita darles detalles técnicos.
+Sería incluso mejor que tú lo soluciones en segundo plano.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_error.png">
 
@@ -256,15 +256,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="sprinkle-encouragement">Fomenta lo simple</h4>
-<p>Desglose las tareas complejas en pasos más pequeños que se puedan cumplir fácilmente. Ofrezca comentarios sobre las acciones,
+<p>Desglosa las tareas complejas en pasos más pequeños que se puedan cumplir fácilmente. Ofrece comentarios sobre las acciones,
 incluso si es simplemente un halago sutil.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png">
 
@@ -273,16 +273,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="do-heavy-lifting-for-me">Haz el trabajo pesado por mí</h4>
-<p>Haga que los principiantes se sientan como expertos al permitirles hacer cosas que pensaron que nunca podrían hacer. Por
-ejemplo, a través de los accesos directos en los que se combinan múltiples efectos de fotografías, puede lograr que las fotografías de principiantes se vean maravillosas
+<p>Haz que los principiantes se sientan como expertos al permitirles hacer cosas que pensaron que nunca podrían hacer. Por
+ejemplo, a través de los accesos directos en los que se combinan múltiples efectos de fotografías, puedes lograr que las fotografías de principiantes se vean maravillosas
 en solo algunos pasos.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_heavy_lifting.png">
 
@@ -291,15 +291,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-important-things-fast">Haz que lo importante sea rápido</h4>
-<p>No todas las acciones son iguales. Decida qué es lo más importante en su aplicación y haga
+<p>No todas las acciones son iguales. Decide qué es lo más importante en tu aplicación y haz
 que los usuarios lo puedan encontrar fácilmente y utilizar de forma rápida, como el obturador de una cámara o el botón de pausa de un reproductor de música.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_important_fast.png">
 
diff --git a/docs/html-intl/intl/es/design/material/index.jd b/docs/html-intl/intl/es/design/material/index.jd
index 8cd3428..8a8ac85 100644
--- a/docs/html-intl/intl/es/design/material/index.jd
+++ b/docs/html-intl/intl/es/design/material/index.jd
@@ -1,7 +1,7 @@
-page.title=Material Design
+page.title=Material Design para Android
 page.tags=Material,design
 page.type=design
-page.image=design/material/images/MaterialLight.png
+page.image=images/cards/design-material-for-android_2x.jpg
 
 @jd:body
 
@@ -41,11 +41,11 @@
 
 <p itemprop="description">Material Design es una guía integral para el diseño visual, de movimientos y
 de interacción en distintas plataformas y dispositivos. Android ahora es compatible con las aplicaciones de
-Material Design. Para usar Material Design en sus aplicaciones de Android, siga las pautas descritas
-en la <a href="http://www.google.com/design/spec">especificación de Material Design</a> y use los
+Material Design. Para usar Material Design en tus aplicaciones de Android, sigue las pautas descritas
+en la <a href="http://www.google.com/design/spec">especificación de Material Design</a> y usa los
 nuevos componentes y funcionalidades disponibles en Android 5.0 (nivel de API 21) y versiones posteriores.</p>
 
-<p>En Android, se proporcionan los siguientes elementos que le permitirán crear aplicaciones en Material Design:</p>
+<p>En Android, se proporcionan los siguientes elementos que te permitirán crear aplicaciones en Material Design:</p>
 
 <ul>
   <li>un tema nuevo;</li>
@@ -53,13 +53,13 @@
   <li>nuevas API (interfaces de programación de aplicaciones) para sombras y animaciones personalizadas.</li>
 </ul>
 
-<p>Para obtener más información sobre la implementación de Material Design en Android, consulte
+<p>Para obtener más información sobre la implementación de Material Design en Android, consulta
 <a href="{@docRoot}training/material/index.html">Creación de aplicaciones con Material Design</a>.</p>
 
 
 <h3>Tema Material</h3>
 
-<p>El tema Material le ofrece un nuevo estilo para su aplicación, widgets del sistema que le permiten configurar
+<p>El tema Material te ofrece un nuevo estilo para tu aplicación, widgets del sistema que te permiten configurar
 la paleta de colores y animaciones predeterminadas para información táctil y transiciones de actividades.</p>
 
 <!-- two columns -->
@@ -79,7 +79,7 @@
 <br style="clear:left"/>
 </div>
 
-<p>Para obtener más información, consulte <a href="{@docRoot}training/material/theme.html">Uso del tema
+<p>Para obtener más información, consulta <a href="{@docRoot}training/material/theme.html">Uso del tema
 Material</a>.</p>
 
 
@@ -97,13 +97,13 @@
 </div>
 <div style="float:left;width:250px;margin-right:0px;">
   <img src="{@docRoot}design/material/images/card_travel.png" width="500" height="426" />
-  <p>El nuevo widget <code>CardView</code> le permite mostrar extractos de información importante dentro de
+  <p>El nuevo widget <code>CardView</code> te permite mostrar extractos de información importante dentro de
  tarjetas que tienen apariencia y estilo coherentes.</p>
 </div>
 <br style="clear:left"/>
 </div>
 
-<p>Para obtener más información, consulte <a href="{@docRoot}training/material/lists-cards.html">Creación de listas
+<p>Para obtener más información, consulta <a href="{@docRoot}training/material/lists-cards.html">Creación de listas
 y tarjetas</a>.</p>
 
 
@@ -126,24 +126,24 @@
   </video>
   </div>
   <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
-    <em>Para volver a reproducir la película, haga clic en la pantalla del dispositivo.</em>
+    <em>Para volver a reproducir la película, haz clic en la pantalla del dispositivo.</em>
   </div>
 </div>
 
-<p>Para obtener más información, consulte <a href="{@docRoot}training/material/shadows-clipping.html">Definición
+<p>Para obtener más información, consulta <a href="{@docRoot}training/material/shadows-clipping.html">Definición
 de vistas de recorte y sombras</a>.</p>
 
 
 <h3>Animaciones</h3>
 
-<p>Las nuevas API de animaciones le permiten crear animaciones personalizadas para la información táctil en los controles de IU,
+<p>Las nuevas API de animaciones te permiten crear animaciones personalizadas para la información táctil en los controles de IU,
 además de realizar cambios en el estado de las vistas y transiciones entre actividades.</p>
 
-<p>Estas API le permiten hacer lo siguiente:</p>
+<p>Estas API te permiten hacer lo siguiente:</p>
 
 <ul>
 <li style="margin-bottom:15px">
-responder a los eventos táctiles de sus vistas mediante animaciones de <strong>información táctil</strong>;
+responder a los eventos táctiles de tus vistas mediante animaciones de <strong>información táctil</strong>;
 </li>
 <li style="margin-bottom:15px">
 ocultar y mostrar vistas con animaciones con <strong>efecto circular</strong>;
@@ -163,24 +163,24 @@
 </ul>
 
 <p>Las animaciones de la información táctil se concentran en diferentes vistas estándar, como los botones. Las nuevas API
-le permiten personalizar estas animaciones y agregarlas a sus vistas personalizadas.</p>
+te permiten personalizar estas animaciones y agregarlas a tus vistas personalizadas.</p>
 
-<p>Para obtener más información, consulte <a href="{@docRoot}training/material/animations.html">Definición de animaciones
+<p>Para obtener más información, consulta <a href="{@docRoot}training/material/animations.html">Definición de animaciones
 personalizadas</a>.</p>
 
 
 <h3>Elementos de diseño</h3>
 
-<p>Estas nuevas capacidades para los elementos de diseño le permiten implementar aplicaciones de Material Design:</p>
+<p>Estas nuevas capacidades para los elementos de diseño te permiten implementar aplicaciones de Material Design:</p>
 
 <ul>
 <li>Los <strong>dibujables en vector</strong> se pueden escalar sin perder definición y son perfectos
 para los iconos de las aplicaciones de un solo color.</li>
-<li>El <strong>teñido de los dibujables</strong> le permite definir mapas de bits como máscaras alfa y pintarlos con
+<li>El <strong>teñido de los dibujables</strong> te permite definir mapas de bits como máscaras alfa y pintarlos con
 un color durante el tiempo de ejecución.</li>
-<li>La <strong>extracción de color</strong> le permite extraer automáticamente colores prominentes de una
+<li>La <strong>extracción de color</strong> te permite extraer automáticamente colores prominentes de una
 imagen del mapa de bits.</li>
 </ul>
 
-<p>Para obtener más información, consulte <a href="{@docRoot}training/material/drawables.html">Trabajo con
+<p>Para obtener más información, consulta <a href="{@docRoot}training/material/drawables.html">Trabajo con
 elementos de diseño</a>.</p>
diff --git a/docs/html-intl/intl/es/design/patterns/compatibility.jd b/docs/html-intl/intl/es/design/patterns/compatibility.jd
new file mode 100644
index 0000000..fe16ede
--- /dev/null
+++ b/docs/html-intl/intl/es/design/patterns/compatibility.jd
@@ -0,0 +1,70 @@
+page.title=Compatibilidad con versiones anteriores
+page.tags="support"
+page.metaDescription=Notas sobre cómo Android 4.x adapta la IU diseñada para versiones de hardware y de SO anteriores.
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/basics/supporting-devices/index.html">
+  <div>
+    <h3>Documentos para desarrolladores</h3>
+    <p>Compatible con diferentes dispositivos</p>
+  </div>
+</a>
+
+<p>Estos son algunos de los cambios importantes en Android 3.0:</p>
+<ul>
+<li>Se dejan de usar las teclas físicas de menú (Atrás, Menú, Búsqueda, Inicio) en favor de la navegación
+mediante controles virtuales (Back, Home, Recents).</li>
+<li>Patrón sólido para el uso de menús en las barras de acción.</li>
+</ul>
+<p>Android 4.0 incorpora estos cambios para tablets en la plataforma del teléfono.</p>
+
+<h2 id="older-hardware">Adaptar Android 4.0 a hardware y aplicaciones anteriores</h2>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Teléfonos con controles de navegación virtuales</h4>
+<p>Las aplicaciones de Android escritas para Android 3.0 y versiones posteriores muestran acciones en la barra de acciones. Las acciones que no
+caben en la barra de acciones o que no son lo suficientemente importantes para que se las muestre en el nivel superior aparecen en la
+ampliación de acciones (action overflow).</p>
+<p>Los usuarios acceden a la ampliación de acciones (action overflow) tocando la barra de acciones.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_virtual_nav.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Teléfonos con teclas de navegación físicas</h4>
+<p>Los teléfonos con Android que tienen teclas físicas de navegación no muestran la barra de navegación virtual en
+la parte inferior de la pantalla. En cambio, la ampliación de acciones (action overflow) está disponible desde la tecla física de menú. La
+ventana emergente con acciones que se muestra tiene el mismo estilo que la del ejemplo anterior, pero aparece en la parte inferior de la pantalla.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_physical_buttons.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Aplicaciones heredadas en teléfonos con controles de navegación virtuales</h4>
+<p>Cuando se ejecuta una aplicación que fue generada para Android 2.3 o versiones anteriores en un teléfono con controles de
+navegación virtuales, aparece un control de ampliación de acciones (action overflow) a la derecha de la barra de navegación virtual. Se
+puede tocar el control para ver las acciones de la aplicación con el estilo del menú tradicional de Android.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_legacy_apps.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/es/design/patterns/confirming-acknowledging.jd b/docs/html-intl/intl/es/design/patterns/confirming-acknowledging.jd
index fbaa060..9e41189 100644
--- a/docs/html-intl/intl/es/design/patterns/confirming-acknowledging.jd
+++ b/docs/html-intl/intl/es/design/patterns/confirming-acknowledging.jd
@@ -2,14 +2,14 @@
 page.tags=dialog,toast,notification
 @jd:body
 
-<p>En algunos casos, cuando un usuario invoca una acción desde su aplicación, se recomienda <em>confirmar</em> o proporcionar un <em>reconocimiento</em> de dicha acción a través del texto.</p>
+<p>En algunos casos, cuando un usuario invoca una acción desde tu aplicación, se recomienda <em>confirmar</em> o proporcionar un <em>reconocimiento</em> de dicha acción a través del texto.</p>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_confirming.png">
     <p><strong>Confirmación</strong> es solicitarle al usuario que verifique que realmente desea proceder con una acción que acaba de invocar. En algunos casos, la confirmación se presenta junto con una advertencia o mensaje con información importante relacionada con la acción que el usuario debe aprobar.</p>
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_acknowledge.png">
     <p>El <strong>reconocimiento</strong> hace referencia al hecho de mostrar un determinado texto para informarle al usuario que la acción que acaba de invocar ya se completó. De este modo, se elimina la incertidumbre sobre las operaciones implícitas que lleva a cabo el sistema. En algunos casos, el reconocimiento se presenta junto con una opción para deshacer la acción.</p>
   </div>
@@ -18,18 +18,18 @@
 <p>Comunicarse con los usuarios de este modo permite reducir la incertidumbre respecto de acciones pasadas o futuras. Mediante la confirmación o el reconocimiento también se puede evitar que los usuarios cometan errores de los que podrían arrepentirse.</p>
 
 <h2>Cuándo se debe solicitar una confirmación o proporcionar un reconocimiento de las acciones de los usuarios</h2>
-<p>No es necesario que se solicite una confirmación o se proporcione un reconocimiento para todas las acciones. Utilice este diagrama de flujo cuando tenga que tomar decisiones relacionadas con el diseño.</p>
+<p>No es necesario que se solicite una confirmación o se proporcione un reconocimiento para todas las acciones. Utiliza este diagrama de flujo cuando tengas que tomar decisiones relacionadas con el diseño.</p>
 <img src="{@docRoot}design/media/confirm_ack_flowchart.png">
 
 <h2>Confirmación</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>Ejemplo: Google Play Books</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_books.png">
     <p>En este ejemplo, el usuario solicitó eliminar un libro de su biblioteca de Google Play. Aparecerá una <a href="{@docRoot}design/building-blocks/dialogs.html#alerts">alerta</a> para confirmar esta acción porque es importante que el usuario comprenda que el libro ya no estará disponible desde ningún dispositivo.</p>
-    <p>Cuando diseñe un cuadro de diálogo de confirmación, asegúrese de que el título sea significativo y que incluya la acción solicitada.</p>
+    <p>Cuando diseñes un cuadro de diálogo de confirmación, asegúrate de que el título sea significativo y que incluya la acción solicitada.</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>Ejemplo: Android Beam</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_beam.png">
     <p>No es necesario que las confirmaciones se presenten en todas las alertas con dos botones. Luego de iniciar Android Beam, se le solicita al usuario que seleccione el contenido que desea compartir (en este ejemplo, se trata de una fotografía). Si el usuario decide no continuar, simplemente se descartará el teléfono de la lista.</p>
@@ -37,15 +37,15 @@
 </div>
 
 <h2>Reconocimiento</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>Ejemplo: Borrador de Gmail abandonado y guardado</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png">
     <p>En este ejemplo, si el usuario navega con los botones Back o Up desde la pantalla de redacción de Gmail, posiblemente ocurrirá algo inesperado: el borrador actual se guardará automáticamente. Esto se mostrará a través de un reconocimiento en forma de aviso. Dicho aviso desaparece luego de algunos segundos.</p>
     <p>En este caso, no se puede incluir la opción de deshacer porque el almacenamiento fue iniciado por la aplicación, no por el usuario. Gracias a esto, se puede continuar redactando el mensaje de forma rápida y fácil con solo navegar hasta la lista de borradores.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <h4>Ejemplo: Conversación de Gmail eliminada</h4>
     <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png">
     <p>Después de que el usuario elimina una conversación de la lista de Gmail, aparece un mensaje de reconocimiento con la opción de deshacer la acción. Dicho reconocimiento seguirá en pantalla hasta que el usuario lleve a cabo una acción no relacionada, como desplazarse por la lista.</p>
@@ -53,14 +53,14 @@
 </div>
 
 <h2>Sin confirmación ni reconocimiento</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>Ejemplo: Hacer +1</h4>
     <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png">
-    <p><strong>No se necesita confirmación</strong>. Si el usuario hizo +1 sin querer, esto no es un problema. Simplemente, puede tocar el botón de nuevo para deshacer la acción.</p>
+    <p><strong>No se necesita confirmación</strong>. Si el usuario eligió +1 sin querer, esto no es un problema. Simplemente, puede tocar el botón de nuevo para deshacer la acción.</p>
     <p><strong>No se necesita un reconocimiento</strong>. El usuario verá que el botón +1 parpadea y cambia a color rojo. Esa es una señal muy clara.</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>Ejemplo: Eliminación de una aplicación de la pantalla de inicio</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png">
     <p><strong>No se necesita confirmación</strong>. Esta es una acción intencionada: el usuario debe arrastrar y colocar un elemento en un destino relativamente grande y aislado. Por lo tanto, es poco probable que se cometan errores. No obstante, si el usuario se arrepiente de la decisión que tomó, solo demorará algunos segundos en recuperar lo eliminado.</p>
diff --git a/docs/html-intl/intl/es/design/patterns/navigation.jd b/docs/html-intl/intl/es/design/patterns/navigation.jd
index 6332491..e7d73fd 100644
--- a/docs/html-intl/intl/es/design/patterns/navigation.jd
+++ b/docs/html-intl/intl/es/design/patterns/navigation.jd
@@ -12,10 +12,10 @@
 
 <p itemprop="description">La navegación coherente es un componente fundamental de la experiencia general del usuario. Pocas situaciones frustran más a los
 usuarios que la navegación básica que se comporta de forma irregular e inesperada. En Android 3.0,
-se introdujeron cambios significativos en el comportamiento global de la navegación. Si sigue detalladamente
-las pautas de navegación con los botones Back y Up, la navegación en su aplicación será predecible y confiable para los usuarios.</p>
+se introdujeron cambios significativos en el comportamiento global de la navegación. Si sigues detalladamente
+las pautas de navegación con los botones Back y Up, la navegación en tu aplicación será predecible y confiable para los usuarios.</p>
 <p>En Android 2.3 y versiones anteriores, se confió en el botón <em>Back</em> del sistema para respaldar la navegación dentro de una
-aplicación. Con la introducción de las barras de acciones en Android 3.0, apareció un segundo mecanismo de navegación:
+aplicación. Con la introducción de las barras de acción en Android 3.0, apareció un segundo mecanismo de navegación:
 el botón <em>Up</em>, que consiste en el icono de la aplicación y una pequeña flecha a la izquierda.</p>
 
 <img src="{@docRoot}design/media/navigation_with_back_and_up.png">
@@ -26,7 +26,7 @@
 entre pantallas. Por ejemplo, si en la pantalla A se muestra una lista de elementos y, si se selecciona un elemento, se conduce al usuario a la
 pantalla B (en la que se presenta ese elemento de forma más detallada), entonces en la pantalla B se debe mostrar el botón Up para regresar
 a la pantalla A.</p>
-<p>Si una pantalla aparece en la parte superior de una aplicación (es decir, en el inicio de la aplicación), no debe incluir el botón Up
+<p>Si una pantalla aparece en la parte superior de una aplicación (es decir, en el inicio de la aplicación), no debes incluir el botón Up
 .</p>
 
 <p>El botón Back del sistema se utiliza para navegar, en orden cronológico inverso, por el historial
@@ -47,11 +47,11 @@
 <li>descartar las barras de acción contextuales y eliminar el resaltado de los elementos seleccionados;</li>
 <li>ocultar el teclado en la pantalla (IME [Editores de métodos de entrada]).</li>
 </ul>
-<h2 id="within-app">Navegación dentro de su aplicación</h2>
+<h2 id="within-app">Navegación dentro de tu aplicación</h2>
 
 <h4>Navegación hacia pantallas con múltiples puntos de entrada</h4>
 <p>En algunos casos, las pantallas no tienen una posición fija dentro de la jerarquía de la aplicación, y se puede acceder a ellas
-desde múltiples puntos de entrada (como la pantalla Configuración, a la que se puede acceder desde cualquier otra pantalla
+desde múltiples puntos de entrada (como la pantalla de configuración, a la que se puede acceder desde cualquier otra pantalla
 de la aplicación). En este caso, el botón Up debe permitir regresar a la pantalla remitente, por lo que se comportaría
 de forma idéntica al botón Back.</p>
 <h4>Cambio de vista dentro de una pantalla</h4>
@@ -66,7 +66,7 @@
 <li>modificación de las características de la pantalla (como el zoom).</li>
 </ul>
 <h4>Navegación entre pantallas relacionadas</h4>
-<p>Si su aplicación es compatible con la navegación desde una lista de elementos hacia una vista de detalles de alguno de esos elementos, generalmente,
+<p>Si tu aplicación es compatible con la navegación desde una lista de elementos hacia una vista de detalles de alguno de esos elementos, generalmente,
 es preferible respaldar la navegación de dirección desde ese elemento a otro anterior
 o siguiente en la lista. Por ejemplo, en Gmail, es fácil deslizarse hacia la izquierda o la derecha desde una conversación
 para ver una conversación anterior o más nueva en la misma bandeja de entrada. Al igual que cuando se cambia la vista dentro de una pantalla, en este tipo de
@@ -82,17 +82,17 @@
 
 <img src="{@docRoot}design/media/navigation_between_siblings_market1.png">
 
-<p>Usted puede lograr que el comportamiento del botón Up sea incluso más inteligente teniendo en cuenta sus conocimientos de la vista
+<p>Puedes lograr que el comportamiento del botón Up sea incluso más inteligente teniendo en cuenta tus conocimientos de la vista
 detallada. Si extendemos el ejemplo de Play Store mencionado antes, imaginemos que el usuario navegó desde el último
-libro visto hacia los detalles de la adaptación de la película. En ese caso, mediante el botón Up podrá regresar a un contenedor
+libro visto hacia los detalles de la adaptación de la película. En ese caso, mediante el botón Up podrás regresar a un contenedor
 (Películas) por el que el usuario no navegó anteriormente.</p>
 
 <img src="{@docRoot}design/media/navigation_between_siblings_market2.png">
 
 <h2 id="into-your-app">Navegación dentro de la aplicación a través de los widgets y las notificaciones de la pantalla de inicio</h2>
 
-<p>Podrá utilizar los widgets y las notificaciones de la pantalla de inicio para ayudar a los usuarios a navegar directamente hacia las pantallas
-que se encuentran en posiciones más profundas dentro de la jerarquía de su aplicación. Por ejemplo, tanto el widget de la bandeja de entrada de Gmail como las notificaciones de los mensajes nuevos
+<p>Podrás utilizar los widgets y las notificaciones de la pantalla de inicio para ayudar a los usuarios a navegar directamente hacia las pantallas
+que se encuentran en posiciones más profundas dentro de la jerarquía de tu aplicación. Por ejemplo, tanto el widget de la bandeja de entrada de Gmail como las notificaciones de los mensajes nuevos
  pueden omitir la pantalla Bandeja de entrada y llevar al usuario directamente hacia una vista de conversación.</p>
 
 <p>En ambos casos, el botón Up se debe utilizar de la siguiente manera:</p>
@@ -100,12 +100,12 @@
 <ul>
 <li><em>Si a la pantalla de destino generalmente se llega desde una determinada pantalla dentro de su
 aplicación</em>, el botón Up debe permitir la navegación hacia esa pantalla.</li>
-<li><em>De lo contrario, </em>el botón Up debe permitir la navegación hacia la pantalla que está en el nivel superior ("Inicio") de su aplicación.</li>
+<li><em>De lo contrario, </em>el botón Up debe permitir la navegación hacia la pantalla que está en el nivel superior ("Inicio") de tu aplicación.</li>
 </ul>
 
-<p>En el caso del botón Back, la navegación debe ser más predecible. Para ello, coloque en la
+<p>En el caso del botón Back, la navegación debe ser más predecible. Para ello, coloca en la
 pila de retroceso de la tarea la ruta completa de la navegación ascendente hacia la pantalla que se encuentra en el nivel superior de la aplicación. De este modo, los usuarios que
-no recuerdan cómo ingresaron a su aplicación podrán navegar hacia la pantalla del nivel superior de la aplicación antes de
+no recuerdan cómo ingresaron a tu aplicación podrán navegar hacia la pantalla del nivel superior de la aplicación antes de
 salir.</p>
 
 <p>A modo de ejemplo, el widget de la pantalla Inicio de Gmail posee un botón para llevar al usuario directamente a la pantalla de
@@ -116,7 +116,7 @@
 
 <h4>Notificaciones indirectas</h4>
 
-<p>Cuando su aplicación necesita presentar información sobre múltiples eventos de forma simultánea, puede utilizar una
+<p>Cuando tu aplicación necesita presentar información sobre múltiples eventos de forma simultánea, puede utilizar una
 sola notificación que dirija al usuario a una pantalla intersticial. En esta pantalla, se resumen dichos
 eventos y se proporcionan rutas para que el usuario navegue más profundamente por la aplicación. Las notificaciones de este estilo se
 denominan <em>notificaciones indirectas</em>.</p>
@@ -127,11 +127,11 @@
 pantalla intersticial, los botones Up y Back se comportan del mismo modo que lo hacen en las notificaciones estándar, como se describió antes:
 navegan dentro de la aplicación en lugar de regresar a la pantalla intersticial.</p>
 
-<p>Por ejemplo, supongamos que un usuario de Gmail recibe una notificación indirecta del calendario Si se toca
+<p>Por ejemplo, supongamos que un usuario de Gmail recibe una notificación indirecta del calendario. Si se toca
 esta notificación, se abrirá la pantalla intersticial, en la que se mostrarán recordatorios de varios
 eventos diferentes. Si se toca Back desde la pantalla intersticial, el usuario volverá a Gmail. Si se toca un evento
 en particular, el usuario saldrá de la pantalla intersticial e ingresará en la aplicación Calendario, donde se mostrarán detalles del
-evento. En la pantalla de detalles del evento, es posible navegar con los botones Up y Back hacia la vista superior del calendario.</p>
+evento. En la pantalla de detalles del evento, es posible navegar con los botones Up y Back hacia la visomunmenteta superior del calendario.</p>
 
 <img src="{@docRoot}design/media/navigation_indirect_notification.png">
 
@@ -154,19 +154,19 @@
 
 <p>Una de las principales ventajas del sistema Android es la capacidad de las aplicaciones de activarse
 mutuamente, por lo que el usuario puede navegar directamente desde una aplicación hacia otra. Por ejemplo, una
-aplicación que debe tomar una fotografía puede activar la aplicación de la cámara, la cual mostrará la fotografía
+aplicación que debe tomar una fotografía puede area appactivar la aplicación de la cámara, la cual mostrará la fotografía
 en la aplicación que la activó. Esto representa una gran ventaja tanto para el desarrollador, quien puede aprovechar fácilmente el
-código de otras aplicaciones, y también para el usuario, quien disfruta de una experiencia coherente para acciones
+código de otras aplicaciones, como para el usuario, quien disfruta de una experiencia coherente para acciones
 que se realizan comúnmente.</p>
 
-<p>Para comprender la navegación entre aplicaciones, es importante que entienda el comportamiento del marco de Android,
+<p>Para comprender la navegación entre aplicaciones, es importante que se entienda el comportamiento del framework de Android,
 que se explica a continuación.</p>
 
 <h4>Actividades, tareas e intentos</h4>
 
 <p>En Android, una <strong>actividad</strong> es un componente de la aplicación que define una pantalla de
-información y todas las acciones relacionadas que el usuario puede llevar a cabo. Su aplicación es un conjunto de
-actividades formado por las actividades que usted crea y aquellas que reutiliza de otras aplicaciones.</p>
+información y todas las acciones relacionadas que el usuario puede llevar a cabo. Tu aplicación es un conjunto de
+actividades formado por las actividades que creas y aquellas que reutilizas de otras aplicaciones.</p>
 
 <p>Una <strong>tarea</strong> es la secuencia de actividades que un usuario realiza para lograr un objetivo. En
 una sola tarea, se pueden utilizar actividades de una sola aplicación o se pueden utilizar actividades de varias
@@ -179,10 +179,10 @@
 
 <h4>Ejemplo: navegación entre aplicaciones para respaldar el uso compartido</h4>
 
-<p>Para comprender cómo las actividades, las tareas y los intentos funcionan en conjunto, considere cómo una aplicación les permite a los usuarios
-compartir contenido a través de otra aplicación. Por ejemplo, si ejecuta la aplicación Play Store desde la pantalla de inicio, se iniciará
-una nueva tarea A (vea la imagen a continuación). Después de navegar por Play Store y de tocar un libro promocionado
-para ver la información detallada, el usuario permanece en la misma tarea y la extiende al agregar actividades. Si se desencadena la acción
+<p>Para comprender cómo las actividades, las tareas y los intentos (intents) funcionan en conjunto, considera cómo una aplicación les permite a los usuarios
+compartir contenido a través de otra aplicación. Por ejemplo, si se ejecuta la aplicación Play Store desde la pantalla de inicio, se iniciará
+una nueva tarea A (consulta la imagen a continuación). Después de navegar por Play Store y de tocar un libro promocionado
+para ver su información detallada, el usuario permanece en la misma tarea y la extiende al agregar actividades. Si se desencadena la acción
 Compartir, se le mostrará al usuario un cuadro de diálogo con una lista de todas las actividades (provenientes de diferentes aplicaciones)
 que se registraron para concretar el intento de compartir.</p>
 
@@ -208,6 +208,6 @@
 Recientes). Si Gmail ya estaba ejecutando su propia tarea en segundo plano, esta se reemplazará con la
 tarea B, y el contexto anterior se abandonará para darle preferencia al nuevo objetivo del usuario.</p>
 
-<p>Cuando su aplicación se registre para manipular los intentos de una actividad que se encuentra en un nivel profundo dentro de la jerarquía de la aplicación,
-consulte <a href="#into-your-app">Navegación dentro de la aplicación a través de los widgets y
+<p>Cuando tu aplicación se registre para manipular los intentos de una actividad que se encuentra en un nivel profundo dentro de la jerarquía de la aplicación,
+consulta <a href="#into-your-app">Navegación dentro de la aplicación a través de los widgets y
 las notificaciones de la pantalla de inicio</a> para obtener información sobre cómo especificar la navegación del botón Up.</p>
diff --git a/docs/html-intl/intl/es/index.jd b/docs/html-intl/intl/es/index.jd
index 4065439..66f9bf0 100644
--- a/docs/html-intl/intl/es/index.jd
+++ b/docs/html-intl/intl/es/index.jd
@@ -5,42 +5,81 @@
 
 @jd:body
 
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
 
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="/preview/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
   <div class="wrap" style="max-width:1100px;margin-top:0">
-    <div class="cols dac-hero-content">
-      <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
-      </div>
-      <div class="col-8of16 col-pull-7of16">
-        <div class="dac-hero-tag"></div>
-
-        <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
-        <p class="dac-hero-description">Prepárese para la próxima versión de
-Android. Pruebe sus aplicaciones en Nexus 5, 6, 9 y Player. </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/index.html">
+    <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+      <a href="{@docRoot}preview/index.html">
+        <h1 class="dac-hero-title">Android N Developer Preview</h1>
+        <p class="dac-hero-description">
+          Get ready for the next version of Android!
+          <strong>Test your apps</strong> on Nexus and other devices. Support new system
+          behaviors to <strong>save power and memory</strong>.
+          Extend your apps with <strong>multi-window UI</strong>,
+          <strong>direct reply notifications</strong> and more.
+        </p>
+        <a class="dac-hero-cta" href="/preview/index.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          ¡Empiece hoy mismo!</a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
+          Learn more
+        </a><!--<br>
+        <a class="dac-hero-cta" href="/preview/support.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
+          Update to Developer Preview (final SDK)
+        </a><br>-->
+      </a>
+    </div>
+    <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+      <a href="{@docRoot}preview/index.html">
+        <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+             srcset="/images/home/n-preview-hero.png 1x,
+             /images/home/n-preview-hero_2x.png 2x">
         </a>
-      </div>
     </div>
   </div>
-</a>
-</article></section>
+</section>
 
-<div class="actions-bar dac-expand dac-invert">
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
   <div class="wrap dac-offset-parent">
     <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
       <i class="dac-sprite dac-arrow-down-gray"></i>
     </a>
+    <ul class="dac-actions">
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}sdk/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Get the SDK
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}samples/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Browse sample code
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}distribute/stories/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Watch stories
+        </a>
+      </li>
+    </ul>
+  </div><!-- end .wrap -->
+</div><!-- end .dac-actions -->
+
+<div id="useOldTemplates" style="display:none" class="actions-bar dac-expand dac-invert">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button="" href="#build-apps">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
     <div class="actions">
       <div><a href="{@docRoot}sdk/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
@@ -50,17 +89,15 @@
         <span class="dac-sprite dac-auto-chevron-large"></span>
         Browse Samples
       </a></div>
-      <div><a href="//www.youtube.com/user/androiddevelopers">
+      <div><a href="{@docRoot}distribute/stories/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
-        Watch Videos
+        Watch Stories
       </a></div>
     </div><!-- end .actions -->
   </div><!-- end .wrap -->
-</div><!-- end .actions-bar -->
+</div>
 
-
-
-<section class="dac-section dac-section-light" id="build-apps"><div class="wrap">
+<section class="dac-section dac-light" id="build-apps"><div class="wrap">
   <h1 class="dac-section-title">Build Beautiful Apps</h1>
   <div class="dac-section-subtitle">
     Resources to get you started with designing and developing for Android.
diff --git a/docs/html-intl/intl/es/preview/api-overview.jd b/docs/html-intl/intl/es/preview/api-overview.jd
deleted file mode 100644
index 1f3e9bf..0000000
--- a/docs/html-intl/intl/es/preview/api-overview.jd
+++ /dev/null
@@ -1,521 +0,0 @@
-page.title=Información general de la API
-page.keywords=preview,sdk,compatibility
-page.tags=previewresources, androidm
-sdk.platform.apiLevel=22-mnc
-page.image=images/cards/card-api-overview_16-9_2x.png
-@jd:body
-
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>Contenido del documento<a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
-
-        <span class="more">mostrar más</span>
-        <span class="less" style="display:none">mostrar menos</span></a></h2>
-
-<ol id="toc44" class="hide-nested">
-  <li><a href="#app-linking">Vinculación de la aplicación</a></li>
-  <li><a href="#backup">Copia de seguridad automática para aplicaciones</a></li>
-  <li><a href="#authentication">Autenticación</a>
-    <ol>
-      <li><a href="#fingerprint-authentication">Autenticación por huellas dactilares</a></li>
-      <li><a href="#confirm-credential">Confirmar credencial</a></li>
-    </ol>
-  </li>
-  <li><a href="#direct-share">Compartir de forma directa</a></li>
-  <li><a href="#voice-interactions">Interacciones de voz</a></li>
-  <li><a href="#assist">Asistencia de API</a></li>
-  <li><a href="#notifications">Notificaciones</a></li>
-  <li><a href="#bluetooth-stylus">Soporte del lápiz Bluetooth</a></li>
-  <li><a href="#ble-scanning">Exploración mejorada de Bluetooth de bajo consumo</a></li>
-  <li><a href="#hotspot">Soporte de Hotspot 2.0 versión 1</a></li>
-  <li><a href="#4K-display">Modo de pantalla 4K</a></li>
-  <li><a href="#behavior-themeable-colorstatelists">ColorStateLists para poder aplicar temas</a></li>
-  <li><a href="#audio">Características de audio</a></li>
-  <li><a href="#video">Características de video</a></li>
-  <li><a href="#camera">Características de la cámara</a>
-    <ol>
-      <li><a href="#flashlight">API para luz de flash</a></li>
-      <li><a href="#reprocessing">Reprocesamiento de la cámara</a></li>
-    </ol>
-  </li>
-  <li><a href="#afw">Características de Android for Work</a></li>
-</ol>
-
-<h2>Diferencias de las API</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">Nivel de API 22 para la versión preliminar de Android M &raquo;</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>M Developer Preview le brinda una perspectiva avanzada de la próxima versión de la plataforma Android, que ofrece nuevas características para usuarios y desarrolladores de aplicaciones.
-
- En este documento, se brinda una introducción sobre las API más distinguidas.</p>
-
-<p>M Developer Preview está destinado a <strong>usuarios desarrolladores principiantes</strong> y <strong>evaluadores</strong>.
- Si le interesa influenciar la dirección del marco de trabajo de Android,
-<a href="{@docRoot}preview/setup-sdk.html">pruebe M Developer Preview y</a> envíenos sus comentarios.
-
-</p>
-
-<p class="caution"><strong>Advertencia:</strong> No publique las aplicaciones que utilizan M Developer Preview en la tienda de Google Play.
-</p>
-
-<p class="note"><strong>Nota:</strong> Este documento, a menudo, hace referencia a clases y métodos que aún no cuentan con materiales de referencia disponibles en <a href="{@docRoot}">developer.android.com</a>.
- Estos elementos de API tienen el formato {@code code style} en este documento (sin hipervínculos).
- Para obtener la documentación preliminar de la API para estos elementos, descargue la <a href="{@docRoot}preview/download.html#docs"> referencia de la versión preliminar</a>.
-</p>
-
-<h3>Importantes cambios en los comportamientos</h3>
-
-<p>Si publicó anteriormente una aplicación para Android, tenga en cuenta que su aplicación podría verse afectada por los cambios en la plataforma.
-</p>
-
-<p>Consulte la sección <a href="behavior-changes.html">Cambios en los comportamientos</a> para obtener información detallada.</p>
-
-<h2 id="app-linking">Vinculación de la aplicación</h2>
-<p>Esta versión preliminar mejora el sistema de intentos de Android al proporcionar una vinculación más sólida de la aplicación. Esta característica le permite asociar una aplicación con un dominio web propio.
- Según esta asociación, la plataforma puede determinar la aplicación predeterminada que se debe utilizar para controlar un vínculo web en particular y omitir el paso de pedirles a los usuarios que seleccionen una aplicación. Para aprender a implementar esta característica, consulte la sección
-<a href="{@docRoot}preview/features/app-linking.html">Vinculación de la aplicación</a>.
-
-
-
-<h2 id="backup">Copia de seguridad automática para aplicaciones</h2>
-<p>Ahora, el sistema realiza restauraciones y copias de seguridad de datos completas y automáticas para las aplicaciones. Este comportamiento se habilita de forma predeterminada para las aplicaciones que tienen como destino la versión preliminar de Android M; usted no necesita agregar ningún código adicional.
- Si los usuarios eliminan sus cuentas de Google, también se eliminarán sus datos de copias de seguridad.
- Para obtener información sobre cómo funciona esta característica y cómo configurar qué elementos incluir en la copia de seguridad del sistema de archivo, consulte la sección
-<a href="{@docRoot}preview/backup/index.html">Copia de seguridad automática para aplicaciones</a>.
-</p>
-
-<h2 id="authentication">Autenticación</h2>
-<p>Esta versión preliminar ofrece nuevas API para permitirle autenticar usuarios al usar escaneos de huellas dactilares en los dispositivos compatibles y verificar cuán reciente es la última autenticación del usuario al utilizar un mecanismo de desbloqueo de dispositivos (como una contraseña de pantalla de bloqueo).
-
- Use estas API junto con el <a href="{@docRoot}training/articles/keystore.html">sistema Android Keystore</a>.
-</p>
-
-<h3 id="fingerprint-authentication">Autenticación por huellas dactilares</h3>
-
-<p>Para autenticar usuarios mediante el escaneo de huellas dactilares, obtenga una instancia de la nueva clase
-{@code android.hardware.fingerprint.FingerprintManager} y llame al método
-{@code FingerprintManager.authenticate()}. Su aplicación se debe ejecutar en un dispositivo compatible con un sensor de huellas dactilares.
- Debe implementar la interfaz de usuario para el flujo de autenticación por huellas dactilares en su aplicación y debe utilizar el ícono de huella dactilar estándar de Android en la UI. El ícono de huella dactilar de Android ({@code c_fp_40px.png}) se incluye en la
-<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">aplicación de muestra</a>. Si está desarrollando múltiples aplicaciones que utilizan la autenticación por huellas dactilares, tenga en cuenta que cada aplicación debe autenticar la huella dactilar del usuario de manera independiente.
-
-
-
-</p>
-
-<p>Para utilizar esta característica en su aplicación, primero agregue el permiso {@code USE_FINGERPRINT} en su manifiesto.
-</p>
-
-<pre>
-&lt;uses-permission
-        android:name="android.permission.USE_FINGERPRINT" /&gt;
-</pre>
-
-<img src="{@docRoot}preview/images/fingerprint-screen.png" srcset="{@docRoot}preview/images/fingerprint-screen.png 1x, {@docRoot}preview/images/fingerprint-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-
-<p>Para ver cómo una aplicación implementa la autenticación por huellas dactilares, consulte la sección
-<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">
-Ejemplo de diálogo de huella dactilar</a>.</p>
-
-<p>Si está evaluando esta característica, siga estos pasos:</p>
-<ol>
-<li>Instale la Revisión de herramientas del SDK de Android versión 24.3, si todavía no la instaló.</li>
-<li>Registre una huella dactilar nueva en el emulador; para hacerlo, vaya a
-<strong>Settings &gt; Security &gt; Fingerprint</strong>, luego siga las instrucciones de registro.</li>
-<li>Use un emulador para emular eventos táctiles de huellas dactilares con el siguiente comando.
- Utilice el mismo comando para emular eventos táctiles de huellas dactilares en la pantalla de bloqueo o en su aplicación.
-
-<pre class="no-prettyprint">
-adb -e emu finger touch &lt;finger_id&gt;
-</pre>
-<p>En Windows, posiblemente tenga que ejecutar {@code telnet 127.0.0.1 <emulator-id>} seguido de
-  {@code finger touch <finger_id>}.
-</p>
-</li>
-</ol>
-
-<h3 id="confirm-credential">Confirmar credencial</h3>
-<p>Su aplicación puede autenticar usuarios según el tiempo que haya pasado desde que desbloquearon su dispositivo por última vez. Esta característica evita que los usuarios tengan que recordar contraseñas adicionales específicas de la aplicación y elimina la necesidad de que usted tenga que implementar su propia interfaz de usuario de autenticación.
-
- Su aplicación debe utilizar esta característica junto con una implementación de clave pública o secreta para la autenticación del usuario.
-</p>
-
-<p>Para definir la duración del tiempo de espera en el que se puede volver a usar la misma clave después de que un usuario se haya autenticado correctamente, llame al nuevo método
-{@code android.security.keystore.KeyGenParameterSpec.setUserAuthenticationValidityDurationSeconds()}
-cuando configure {@link javax.crypto.KeyGenerator} o
-{@link java.security.KeyPairGenerator}.
- Esta característica actualmente funciona para operaciones criptográficas simétricas.
-</p>
-
-<p>Evite mostrar el diálogo de nueva autenticación de forma excesiva: sus aplicaciones deben intentar utilizar el objeto criptográfico primero y, si se agota el tiempo de espera, deben usar el método
-{@link android.app.KeyguardManager#createConfirmDeviceCredentialIntent(java.lang.CharSequence, java.lang.CharSequence) createConfirmDeviceCredentialIntent()}
-para volver a autenticar el usuario dentro de su aplicación.
-
-</p>
-
-<p>Para ver cómo la aplicación implementa esta característica, consulte la sección
-<a href="https://github.com/googlesamples/android-ConfirmCredential" class="external-link">
-Ejemplo de cómo confirmar la credencial</a>.</p>
-
-<h2 id="direct-share">Compartir de forma directa</h2>
-
-<img src="{@docRoot}preview/images/direct-share-screen.png" srcset="{@docRoot}preview/images/direct-share-screen.png 1x, {@docRoot}preview/images/direct-share-screen_2x.png 2x" style="float:right; margin:0 0 20px 30px" width="312" height="329" />
-
-<p>Esta versión preliminar le proporciona API para que la acción de compartir sea intuitiva y rápida para los usuarios. Ahora, puede definir <em>destinos para compartir de forma directa</em> que inician una actividad específica en su aplicación. Estos destinos para compartir de forma directa se exponen a los usuarios a través del menú <em>Share</em>.
-
- Esta característica les permite a los usuarios compartir contenido con los destinos, como contactos, dentro de otras aplicaciones.
- Por ejemplo, el destino para compartir de forma directa podría iniciar una actividad en otra aplicación de red social, lo que le permite al usuario compartir contenido directamente con una comunidad o un amigo específicos de esa aplicación.
-
-</p>
-
-<p>Para habilitar destinos para compartir de forma directa, debe definir una clase que extienda el
-{@code android.service.} <br>
-Clase {@code chooser.ChooserTargetService}. Declare su
-{@code ChooserTargetService} en el manifiesto. En esa declaración, especifique el permiso
-{@code BIND_CHOOSER_TARGET_SERVICE} y un filtro de intento con la acción
-{@code SERVICE_INTERFACE}.</p>
-<p>El ejemplo a continuación muestra de qué manera podría declarar {@code ChooserTargetService} en su manifiesto.
-</p>
-<pre>
-&lt;service android:name=".ChooserTargetService"
-        android:label="&#64;string/service_name"
-        android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE"&gt;
-    &lt;intent-filter&gt;
-        &lt;action android:name="android.service.chooser.ChooserTargetService" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/service&gt;
-</pre>
-
-<p>Para cada actividad que desee exponer a {@code ChooserTargetService}, agregue un elemento
-{@code <meta-data>} con el nombre
-{@code "android.service.chooser.chooser_target_service"} en el manifiesto de su aplicación.
-</p>
-
-<pre>
-&lt;activity android:name=".MyShareActivity”
-        android:label="&#64;string/share_activity_label"&gt;
-    &lt;intent-filter>
-        &lt;action android:name="android.intent.action.SEND" /&gt;
-    &lt;/intent-filter>
-&lt;meta-data
-        android:name="android.service.chooser.chooser_target_service"
-        android:value=".ChooserTargetService" /&gt;
-&lt;/activity>
-</pre>
-
-<h2 id="voice-interactions">Interacciones de voz</h2>
-<p>
-Esta versión preliminar proporciona una nueva API de interacción de voz que, junto con las
-<a href="https://developers.google.com/voice-actions/" class="external-link">acciones de voz</a>,
-le permite compilar experiencias de conversaciones de voz en sus aplicaciones. Llame al método
-{@code android.app.Activity.isVoiceInteraction()} para determinar si su actividad se inició en respuesta a una acción de voz.
- De ser así, su aplicación puede utilizar la clase
-{@code android.app.VoiceInteractor} para solicitar una confirmación de voz por parte del usuario, realizar una selección de una lista de opciones y mucho más.
- Para obtener más información sobre cómo implementar acciones de voz, consulte el
-<a href="https://developers.google.com/voice-actions/interaction/" class="external-link">sitio para desarrolladores de acciones de voz</a>.
-</p>
-
-<h2 id="assist">Asistencia de API</h2>
-<p>
-Esta versión preliminar ofrece una nueva manera para que los usuarios interactúen con sus aplicaciones a través de un asistente. Si desea utilizar esta característica, el usuario debe habilitar el asistente para utilizar el contexto actual.
- Una vez habilitado, para invocar al asistente dentro de cualquier aplicación, el usuario debe mantener presionado el botón <strong>Home</strong>.
-</p>
-<p>Su aplicación puede optar por no compartir el contexto actual con el asistente al configurar la marca
-{@link android.view.WindowManager.LayoutParams#FLAG_SECURE}. Además del conjunto de información estándar que la plataforma le pasa al asistente, su aplicación puede compartir información adicional usando la nueva clase {@code android.app.Activity.AssistContent}.
-
-</p>
-
-<p>Para proporcionarle al asistente contexto adicional desde su aplicación, siga estos pasos:</p>
-
-<ol>
-<li>Implemente la interfaz {@link android.app.Application.OnProvideAssistDataListener}.</li>
-<li>Registre esta escucha usando
-{@link android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener) registerOnProvideAssistDataListener()}.</li>
-<li>Para proporcionar información contextual específica de la actividad, invalide la devolución de llamada
-{@link android.app.Activity#onProvideAssistData(android.os.Bundle) onProvideAssistData()}
-y, opcionalmente, la nueva devolución de llamada {@code Activity.onProvideAssistContent()}.
-</ol>
-
-<h2 id="notifications">Notificaciones</h2>
-<p>Esta versión preliminar agrega los siguientes cambios de API para las notificaciones:</p>
-<ul>
-  <li>Nuevo nivel de filtro {@code NotificationListenerService.INTERRUPTION_FILTER_ALARMS} que corresponde al nuevo modo ocupado <em>Solo alarmas</em>.
-</li>
-  <li>Nuevo valor de categoría {@code Notification.CATEGORY_REMINDER} que se utiliza para distinguir recordatorios programados por el usuario de otros eventos
- ({@link android.app.Notification#CATEGORY_EVENT}) y alarmas
- ({@link android.app.Notification#CATEGORY_ALARM}).
-</li>
-  <li>Nueva clase {@code android.graphics.drawable.Icon} que se puede adjuntar a sus notificaciones a través de los métodos {@code Notification.Builder.setSmallIcon(Icon)} y
-{@code Notification.Builder.setLargeIcon(Icon)}.
-</li>
-  <li>Nuevo método {@code NotificationManager.getActiveNotifications()} que permite que sus aplicaciones descubran qué notificaciones se encuentran actualmente activas.
- Para ver una implementación de la aplicación que utilice esta característica, consulte la sección <a href="https://github.com/googlesamples/android-ActiveNotifications" class="external-link">Ejemplo de notificaciones activas</a>.
-</li>
-</ul>
-
-<h2 id="bluetooth-stylus">Compatibilidad del lápiz Bluetooth</h2>
-<p>Esta versión preliminar ofrece soporte mejorado para las entradas de usuarios que utilizan un lápiz Bluetooth. Los usuarios pueden sincronizar y conectar un lápiz Bluetooth compatible con su teléfono o tablet.
-  Mientras está conectado, la información de posición de la pantalla táctil se fusiona con la información de los botones y la presión del lápiz para proporcionar una mayor variedad de expresiones que al utilizar la pantalla táctil solamente.
-
- Su aplicación puede obedecer cuando se presiona el botón del lápiz y cuando se realizan acciones secundarias al registrar las nuevas devoluciones de llamadas
-{@code View.onStylusButtonPressListener} y {@code GestureDetector.OnStylusButtonPressListener}
-en su actividad.
-</p>
-
-<p>Utilice las constantes y los métodos {@link android.view.MotionEvent} para detectar las interacciones del botón del lápiz:
-</p>
-<ul>
-<li>Si el usuario toca un lápiz con un botón en la pantalla de su aplicación, el método
-{@link android.view.MotionEvent#getToolType(int) getTooltype()} devuelve
-{@link android.view.MotionEvent#TOOL_TYPE_STYLUS}.</li>
-<li>Para las aplicaciones que tienen como destino la versión preliminar de Android M, el método
-{@link android.view.MotionEvent#getButtonState() getButtonState()}
-devuelve {@code MotionEvent.STYLUS_BUTTON_PRIMARY} cuando el usuario presiona el botón principal del lápiz.
- Si el lápiz tiene un segundo botón, el mismo método devuelve
-{@code MotionEvent.STYLUS_BUTTON_SECONDARY} cuando el usuario lo presiona. Si el usuario presiona ambos botones simultáneamente, el método devuelve ambos valores juntos separados por “OR” ({@code STYLUS_BUTTON_PRIMARY|STYLUS_BUTTON_SECONDARY}).
-
-</li>
-<li>
-Para las aplicaciones que tienen como destino una versión anterior de la plataforma, el método
-{@link android.view.MotionEvent#getButtonState() getButtonState()} devuelve
-{@link android.view.MotionEvent#BUTTON_SECONDARY} (cuando se presiona el botón principal),
-{@link android.view.MotionEvent#BUTTON_TERTIARY} (cuando se presiona el botón secundario) o ambos.
-</li>
-</ul>
-
-<h2 id="ble-scanning">Exploración mejorada de Bluetooth de bajo consumo</h2>
-<p>
-Si su aplicación realiza exploraciones de Bluetooth de bajo consumo, puede utilizar el nuevo método
-{@code android.bluetooth.le.ScanSettings.Builder.setCallbackType()} para especificar que usted desea que las devoluciones de llamadas se notifiquen solo cuando se encuentre por primera vez un paquete de anuncio que coincida con el conjunto
-{@link android.bluetooth.le.ScanFilter} y cuando no se vea durante un período determinado.
-
- Este enfoque de exploración es más eficaz en cuanto al consumo de energía que la que se proporciona en la versión anterior de la plataforma.
-
-</p>
-
-<h2 id="hotspot">Soporte de Hotspot 2.0 versión 1</h2>
-<p>
-Esta versión preliminar agrega soporte para la especificación de Hotspot 2.0 versión 1 en los dispositivos Nexus 6 y Nexus 9. Para proveer credenciales de Hotspot 2.0 en su aplicación, use los métodos nuevos de la clase
-{@link android.net.wifi.WifiEnterpriseConfig}, como {@code setPlmn()} y
-{@code setRealm()}.
- En el objeto {@link android.net.wifi.WifiConfiguration}, puede configurar los campos
-{@link android.net.wifi.WifiConfiguration#FQDN} y {@code providerFriendlyName}. La nueva propiedad {@code ScanResult.PasspointNetwork} indica si una red detectada representa un punto de acceso de Hotspot 2.0.
-
-
-</p>
-
-<h2 id="4K-display">Modo de pantalla 4K</h2>
-<p>Ahora, la plataforma permite que las aplicaciones soliciten que la resolución de pantalla se actualice a una representación 4K en el hardware compatible.
- Para consultar la resolución física actual, use las nuevas API
-{@code android.view.Display.Mode}. Si la UI se establece en una resolución lógica más baja y se aumenta a una resolución física más alta, tenga en cuenta que la resolución física que devuelve el método
-{@code Display.Mode.getPhysicalWidth()} puede ser diferente de la resolución lógica informada por {@link android.view.Display#getSize(android.graphics.Point) getSize()}.
-
-</p>
-
-<p>Puede pedirle al sistema que cambie la resolución física en su aplicación mientras se ejecuta y, para ello, debe configurar la propiedad {@code WindowManager.LayoutParams.preferredDisplayModeId} de la ventana de su aplicación.
-  Esta característica resulta útil si desea cambiar a la resolución de pantalla 4K.
- Mientras se encuentra en el modo de pantalla 4K, la UI se continúa representando en la resolución original (como 1080p) y se aumenta a 4K, pero los objetos
-{@link android.view.SurfaceView} pueden mostrar contenido en la resolución nativa.
-</p>
-
-<h2 id="behavior-themeable-colorstatelists">ColorStateLists para poder aplicar temas</h2>
-<p>Ahora, los atributos de tema se admiten en
-{@link android.content.res.ColorStateList} para los dispositivos que ejecutan la versión preliminar de Android M. Los métodos
-{@link android.content.res.Resources#getColorStateList(int) getColorStateList()} y
-{@link android.content.res.Resources#getColor(int) getColor()} se dejaron de usar. Si desea llamar a estas API, en su lugar, llame a los métodos nuevos {@code Context.getColorStateList()} o
-{@code Context.getColor()}.
- Estos métodos también se encuentran disponibles en la biblioteca AppCompat v4 vía {@link android.support.v4.content.ContextCompat}.
-</p>
-
-<h2 id="audio">Características de audio</h2>
-
-<p>Esta versión preliminar agrega mejoras al procesamiento de audio en Android, lo que incluye lo siguiente: </p>
-<ul>
-  <li>Soporte para el protocolo <a href="http://en.wikipedia.org/wiki/MIDI" class="external-link">MIDI</a>
-, con las nuevas API {@code android.media.midi}. Utilice estas API para enviar y recibir eventos MIDI.
-</li>
-  <li>Clases nuevas {@code android.media.AudioRecord.Builder} y {@code android.media.AudioTrack.Builder}
- para crear capturas de audio digital y objetos de reproducción respectivamente, y configurar propiedades de receptores y fuentes de audio para invalidar los valores predeterminados del sistema.
-</li>
-  <li>Enlaces de API para asociar dispositivos de entrada y de audio. Esto resulta particularmente útil si su aplicación les permite a los usuarios iniciar una búsqueda por voz desde un controlador para juegos o un control remoto conectados a un TV con Android. El sistema invoca la nueva devolución de llamada {@code android.app.Activity.onSearchRequested()} cuando el usuario inicia una búsqueda.
-
-
- Para determinar si el dispositivo de entrada del usuario tiene un micrófono incorporado, recupere el objeto {@link android.view.InputDevice} de esa devolución de llamada y luego llame al nuevo método
-{@code InputDevice.hasMic()}.
-</li>
-  <li>Nueva clase {@code android.media.AudioDevicesManager}, que le permite recuperar una lista de todos los dispositivos de audio receptores y fuente adjuntos.
- También puede especificar un objeto
-{@code android.media.OnAudioDeviceConnectionListener} si desea que su aplicación reciba una notificación cuando se conecta o desconecta un dispositivo de audio.
-</li>
-</ul>
-
-<h2 id="video">Características de video</h2>
-<p>Esta versión preliminar agrega nuevas capacidades a las API de procesamiento de video, entre ellas, las siguientes:</p>
-<ul>
-<li>Nueva clase {@code android.media.MediaSync} que ayuda a las aplicaciones a representar de forma sincrónica transmisiones de audio y video.
- Los búferes de audio se envían de manera que no generan bloqueo y regresan mediante una devolución de llamada.
- Además, admite una velocidad de reproducción dinámica.
-</li>
-<li>Nuevo evento {@code MediaDrm.EVENT_SESSION_RECLAIMED}, que indica cuando una sesión abierta por la aplicación es reclamada por el administrador de recursos.
- Si su aplicación utiliza sesiones DRM, debe controlar este evento y asegurarse de no utilizar una sesión reclamada.
-
-</li>
-<li>Nuevo código de error {@code MediaCodec.CodecException.ERROR_RECLAIMED}, que indica que el administrador de recursos reclamó el recurso multimedia utilizado por el códec.
- Con esta excepción, se debe liberar el códec, ya que pasó al estado terminal.
-
-</li>
-<li>Nueva interfaz {@code MediaCodecInfo.CodecCapabilities.getMaxSupportedInstances()} para obtener una indicación de la cantidad máxima de instancias concurrentes de códec admitidas.
-
-</li>
-<li>Nuevo método {@code MediaPlayer.setPlaybackParams()} para configurar la velocidad de reproducción multimedia para reproducciones rápidas o lentas.
- Además, alarga o acelera la reproducción de audio de forma automática junto con el video.
-</li>
-</ul>
-
-<h2 id="camera">Características de la cámara</h2>
-<p>Esta versión preliminar incluye las siguientes API nuevas para acceder a la luz de flash de la cámara y para el reprocesamiento de imágenes de la cámara:
-</p>
-
-<h3 id="flashlight">API para luz de flash</h3>
-<p>Si un dispositivo de cámara cuenta con una unidad de flash, puede llamar al método {@code CameraManager.setTorchMode()}
-para activar o desactivar el modo linterna de una unidad de flash sin abrir el dispositivo de cámara. La aplicación no tiene propiedad exclusiva de la unidad de flash ni del dispositivo de cámara.
- El modo linterna se desactiva y deja de estar disponible cuando la cámara no se encuentra disponible o cuando otros recursos de la cámara que mantienen la linterna encendida dejan de estar disponibles.
-
- Otras aplicaciones también pueden llamar a {@code setTorchMode()}
-para desactivar el modo linterna. Cuando se cierra la última aplicación que activó el modo linterna, este modo se desactiva.
-</p>
-
-<p>Si desea registrar una devolución de llamada para recibir una notificación sobre el estado del modo linterna, llame al método
-{@code CameraManager.registerTorchCallback()}. La primera vez que se registra la devolución de llamada, se llama inmediatamente con el estado del modo linterna de todos los dispositivos de cámara que se conocen actualmente y que tengan una unidad de flash.
-
- Si el modo linterna se activa o desactiva correctamente, se invoca al método
-{@code CameraManager.TorchCallback.onTorchModeChanged()}.</p>
-
-<h3 id="reprocessing">API de reprocesamiento</h3>
-<p>La API {@link android.hardware.camera2 Camera2} se extiende para admitir el reprocesamiento de imágenes privadas de formato opaco y YUV.
- Su aplicación determina si las capacidades de reprocesamiento se encuentran disponibles vía {@code CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES}.
- Si un dispositivo admite el reprocesamiento, usted puede crear una sesión de captura de cámara reprocesable llamando a
-{@code CameraDevice.createReprocessableCaptureSession()} y puede crear solicitudes para el reprocesamiento de búferes de entrada.
-
-</p>
-
-<p>Utilice la clase {@code ImageWriter} para conectar el flujo del búfer de entrada a la entrada de reprocesamiento de la cámara.
- Para obtener un búfer vacío, siga el modelo de programación que se indica a continuación:</p>
-
-<ol>
-<li>Llame al método {@code ImageWriter.dequeueInputImage()}.</li>
-<li>Complete los datos en el búfer de entrada.</li>
-<li>Envíe el búfer a la cámara llamando al método {@code ImageWriter.queueInputImage()}.</li>
-</ol>
-
-<p>Si está utilizando un objeto {@code ImageWriter} junto con una imagen
-{@code android.graphics.ImageFormat.PRIVATE}, su aplicación no puede acceder a los datos de la imagen de forma directa.
- En cambio, pase la imagen {@code ImageFormat.PRIVATE} directamente a
-{@code ImageWriter} llamando al método {@code ImageWriter.queueInputImage()} sin ninguna copia del búfer.
-</p>
-
-<p>La clase {@code ImageReader} ahora admite secuencias de imagen de formato {@code android.graphics.ImageFormat.PRIVATE}.
- Este soporte le permite que su aplicación mantenga una cola de imagen circular de imágenes de salida
-{@code ImageReader}, seleccione una o más imágenes y las envíe a
-{@code ImageWriter} para el reprocesamiento de la cámara.</p>
-
-<h2 id="afw">Características de Android for Work</h2>
-<p>Esta versión preliminar incluye las siguientes API nuevas para Android for Work:</p>
-<ul>
-  <li><strong>Controles mejorados para dispositivos corporativos de uso único:</strong> El propietario de dispositivo ahora puede controlar las configuraciones que se describen a continuación para mejorar la administración de los dispositivos corporativos de uso único (Corporate-Owned, Single-Use, COSU).
-
-
-  <ul>
-    <li>Deshabilitar o volver a habilitar la protección de seguridad con el método
-{@code DevicePolicyManager.setKeyguardEnabledState()}.</li>
-    <li>Deshabilitar o volver a habilitar la barra de estado (lo que incluye configuraciones rápidas, notificaciones y el gesto de navegación al deslizar el dedo hacia arriba para iniciar Google Now) con el método
-{@code DevicePolicyManager.setStatusBarEnabledState()}.
-</li>
-    <li>Deshabilitar o volver a habilitar el inicio seguro con la constante {@link android.os.UserManager}
-{@code DISALLOW_SAFE_BOOT}.</li>
-    <li>Evitar que se apague la pantalla mientras el dispositivo se encuentra conectado con la constante
-  {@link android.provider.Settings.Global} {@code STAY_ON_WHILE_PLUGGED_IN}.</li>
-  </ul>
-  </li>
-  <li><strong>Instalación y desinstalación automáticas de aplicaciones por parte del propietario de dispositivo:</strong> Un propietario de dispositivo ahora puede instalar y desinstalar aplicaciones de manera automática con las API {@link android.content.pm.PackageInstaller}
-, independiente de Google Play for Work.
- Ahora, puede aprovisionar los dispositivos a través de un propietario de dispositivo que obtiene e instala aplicaciones sin interacción del usuario.
- Esta característica es útil para habilitar el aprovisionamiento con un toque de quioscos u otros dispositivos similares sin activar una cuenta de Google.
-</li>
-<li><strong>Acceso automático al certificado de empresa:</strong> Ahora cuando una aplicación llama a
-{@link android.security.KeyChain#choosePrivateKeyAlias(android.app.Activity,android.security.KeyChainAliasCallback,java.lang.String[],java.security.Principal[],java.lang.String,int,java.lang.String) choosePrivateKeyAlias()}, antes de que se indique al usuario que seleccione un certificado, el propietario de dispositivo o perfil puede llamar al método {@code DeviceAdminReceiver.onChoosePrivateKeyAlias()} para proporcionar el alias de forma automática a la aplicación que realiza la solicitud.
-
-
- Esta característica le permite conceder a las aplicaciones gestionadas acceso a certificados sin interacción del usuario.
-</li>
-<li><strong>Aceptación automática de actualizaciones del sistema:</strong> Al configurar una directiva de actualización del sistema con
-{@code DevicePolicyManager.setSystemUpdatePolicy()}, el propietario de dispositivo ahora puede aceptar automáticamente una actualización del sistema, por ejemplo, en el caso de un dispositivo de quiosco, o posponer la actualización y evitar que el usuario la ejecute durante un plazo de hasta 30 días.
-
- Además, un administrador puede configurar un período de tiempo diario en el que se debe ejecutar una actualización, por ejemplo, durante las horas en que no se usa el dispositivo de quiosco.
- Cuando hay una actualización del sistema disponible, el sistema verifica si la aplicación Work Policy Controller definió una directiva de actualización del sistema y se comporta según corresponda.
-
-
-</li>
-<li>
-<strong>Instalación delegada de certificados:</strong> Ahora, un propietario de dispositivo o perfil puede concederle a una aplicación de terceros la capacidad de llamar a estas API de administración de certificados {@link android.app.admin.DevicePolicyManager}:
-
-
-<ul>
-  <li>{@link android.app.admin.DevicePolicyManager#getInstalledCaCerts(android.content.ComponentName)
-getInstalledCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#hasCaCertInstalled(android.content.ComponentName,byte[])
-hasCaCertInstalled()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installCaCert(android.content.ComponentName,byte[])
-installCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallCaCert(android.content.ComponentName,byte[])
-uninstallCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallAllUserCaCerts(android.content.ComponentName)
-uninstallAllUserCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installKeyPair(android.content.ComponentName,java.security.PrivateKey,java.security.cert.Certificate,java.lang.String)
-installKeyPair()}</li>
-</ul>
-</li>
-<li><strong>Protección de restablecimiento de la configuración predeterminada de fábrica:</strong> Al aprovisionar a un propietario de dispositivo, ahora podrá configurar parámetros para desbloquear la protección de restablecimiento de la configuración predeterminada de fábrica (Factory Reset Protection, FRP) configurando el paquete
-{@code DeviceManagerPolicy.EXTRA_PROVISIONING_RESET_PROTECTION_PARAMETERS}.
- Una aplicación de Programador NFC puede proporcionar estos parámetros después del restablecimiento de un dispositivo para desbloquear la FRP y aprovisionar al dispositivo sin requerir la cuenta de Google configurada previamente.
-
- Si no modifica estos parámetros, la FRP se conserva y evita que el dispositivo se active sin las credenciales de Google activadas previamente.
-
-
-<p>Además, al configurar las restricciones de la aplicación en los servicios de Google Play, los propietarios de dispositivos pueden especificar cuentas de Google alternativas para desbloquear la FRP y reemplazar las que se encuentran activadas en el dispositivo.
-</p>
-</li>
-<img src="{@docRoot}preview/images/work-profile-screen.png" srcset="{@docRoot}preview/images/work-profile-screen.png 1x, {@docRoot}preview/images/work-profile-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-<li><strong>Seguimiento del uso de datos:</strong> Ahora, un propietario de dispositivo o perfil puede consultar las estadísticas de uso de datos que se pueden ver en <strong>Settings &gt; Data</strong> utilizando los nuevos métodos
-{@code android.app.usage.NetworkStatsManager}.
- A los propietarios de perfiles se les concede automáticamente permiso para consultar los datos del perfil que administran, mientras que los propietarios de dispositivo obtienen acceso a los datos de uso del usuario principal administrado.
-
-</li>
-<li><strong>Administración de permisos de tiempo de ejecución:</strong>
-<p>Un propietario de dispositivo o perfil puede configurar una directiva de permisos para todas las solicitudes de tiempo de ejecución de todas las aplicaciones que utilizan
-{@code DevicePolicyManager.setPermissionPolicy()}, a fin de pedirle confirmación al usuario para conceder el permiso de manera normal, o bien, para conceder o negar el permiso automáticamente sin notificarlo.
-
- Si se configura la última directiva, el usuario no puede modificar la selección realizada por el propietario de dispositivo o perfil dentro de la pantalla de permisos de la aplicación en <strong>Settings</strong>.
-
-</p></li>
-<li><strong>VPN en Settings:</strong> Las aplicaciones de la VPN (red privada virtual) ahora se pueden ver en
-<strong>Settings &gt; More &gt; VPN</strong>. Además, las notificaciones que acompañan el uso de la VPN ahora son específicas para la manera en que dicha VPN está configurada.
-
- Para el propietario de perfil, las notificaciones son específicas dependiendo de si la VPN se configura para un perfil administrado, un perfil personal o ambos.
- Para un propietario de dispositivo, las notificaciones son específicas dependiendo de si la VPN se configura para todo el dispositivo.
-</li>
-<li><strong>Notificación del estado del trabajo:</strong> Ahora aparecerá un ícono de maletín en la barra de estado siempre que una aplicación del perfil administrado tenga una actividad en primer plano.
- Además, si el dispositivo se desbloquea directamente para la actividad de una aplicación del perfil administrado, se mostrará una notificación del sistema para informarle al usuario que se encuentra dentro del perfil de trabajo.
-
-
-</li>
-</ul>
-
-<p class="note">
-  Para obtener una vista detallada de todos los cambios de la API en M Developer Preview, consulte el <a href="{@docRoot}preview/download.html">Informe de diferencias de las API</a>.
-</p>
diff --git a/docs/html-intl/intl/es/preview/backup/index.jd b/docs/html-intl/intl/es/preview/backup/index.jd
deleted file mode 100644
index 7e23083..0000000
--- a/docs/html-intl/intl/es/preview/backup/index.jd
+++ /dev/null
@@ -1,327 +0,0 @@
-page.title=Copia de seguridad automática para aplicaciones
-page.tags=copia de seguridad, recursos de la versión preliminar, androidm
-page.keywords=copia de seguridad, copia de seguridad automática, versión preliminar
-page.image=images/cards/card-auto-backup_2x.png
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Contenido del documento</h2>
-      <ol>
-        <li><a href="#overview">Información general</a></li>
-        <li><a href="#configuring">Configuración de la copia de seguridad de datos</a></li>
-        <li><a href="#testing">Pruebas de la configuración de copia de seguridad</a></li>
-        <li><a href="#issues">Problemas conocidos</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  A menudo, los usuarios invierten tiempo y esfuerzo significativos para crear datos y configurar preferencias dentro de las aplicaciones.
- Preservar los datos de los usuarios en caso de que reemplacen un dispositivo averiado o se actualicen a uno nuevo es una parte importante para garantizar una excelente experiencia del usuario.
- Los dispositivos que ejecutan el sistema de la versión preliminar de Android M ayudan a garantizar una buena experiencia para los usuarios en estas circunstancias al realizar automáticamente copias de seguridad de los datos de la aplicación en Google Drive.
-
- Los datos de la aplicación se restauran automáticamente si un usuario cambia o actualiza un dispositivo.
-
-</p>
-
-<p>
-  Las copias de seguridad automáticas se habilitan para todas las aplicaciones instaladas en dispositivos que ejecuten la versión preliminar de Android M. No se requiere ningún código de aplicación adicional.
- El sistema les proporciona a los usuarios la capacidad de desactivar las copias de seguridad de datos automáticas.
- También puede optar por limitar qué datos de su aplicación se incluyen en la copia de seguridad.
-</p>
-
-<p>
-  En este documento, se describe el nuevo comportamiento del sistema y el modo de especificar qué datos incluir en la copia de seguridad de la aplicación.
-
-</p>
-
-<h2 id="overview">Información general</h2>
-
-<p>
-  Para preservar los datos que su aplicación crea en un dispositivo de usuario, la característica de copia de seguridad automática los carga a la cuenta de Google Drive del usuario y los cifra.
- No se aplican cargos para usted ni para el usuario por el almacenamiento de datos y los datos guardados no se consideran al calcular la capacidad máxima de la cuenta personal de Google Drive del usuario.
- Durante el período de la versión preliminar de Android M, los usuarios pueden almacenar hasta 25 MB por aplicación de Android.
-
-</p>
-
-<p>
-  Las copias de seguridad automáticas se realizan cada 24 horas, cuando el dispositivo está inactivo, se está cargando y está conectado a una red Wi-Fi.
- Cuando se cumplen estas condiciones, el servicio Backup Manager carga todos los datos de copia de seguridad disponibles a la nube.
- Cuando el usuario pasa a un dispositivo nuevo, o desinstala y vuelve a instalar la aplicación de la copia de seguridad, una operación de restauración copia los datos incluidos en la copia de seguridad en el directorio de datos de la aplicación recientemente instalada.
-
-
-</p>
-
-<p class="note">
-  <strong>Nota:</strong> Si su aplicación utiliza el <a href="{@docRoot}google/backup/index.html">servicio Android Backup</a> heredado, este nuevo comportamiento no se aplica y el comportamiento de copia de seguridad existente funciona de manera habitual.
-
-
-</p>
-
-
-<h3 id="auto-exclude">Archivos de datos automáticamente excluidos</h3>
-
-<p>
-  No todos los datos de la aplicación se deben incluir en la copia de seguridad, como los archivos temporales y los cachés, por lo que el servicio de copias de seguridad automáticas excluye ciertos archivos de datos de manera predeterminada:
-
-</p>
-
-<ul>
-  <li>Archivos de los directorios a los que hacen referencia los métodos {@link android.content.Context#getCacheDir
-    getCacheDir()} y {@link android.content.ContextWrapper#getCodeCacheDir getCodeCacheDir()}
-.
-  </li>
-
-  <li>Archivos ubicados en almacenamiento externo, salvo que residan en el directorio al que hace referencia el método
-    {@link android.content.Context#getExternalFilesDir getExternalFilesDir()}
-.
-  </li>
-
-  <li>Archivos ubicados en el directorio a los que hace referencia el método
-    {@link android.content.Context#getNoBackupFilesDir getNoBackupFilesDir()}.
-  </li>
-</ul>
-
-<h2 id="configuring">Configuración de la copia de seguridad de datos</h2>
-
-<p>
-  Las copias de seguridad se realizan para los datos creados por cualquier aplicación instalada en un dispositivo con la versión preliminar de Android M, excepto en el caso de los archivos excluidos automáticamente que se mencionaron en la sección anterior.
- Usted puede limitar y configurar aún más los datos que se incluyen en la copia de seguridad de su aplicación y, para ello, debe utilizar configuraciones en el manifiesto de su aplicación.
-
-</p>
-
-<h3 id="include-exclude">Cómo incluir o excluir datos</h3>
-
-<p>
-  De acuerdo con los datos que su aplicación necesita y el modo en que usted guarda estos datos, es posible que tenga que definir reglas específicas para incluir o excluir ciertos archivos o directorios.
- El servicio de copias de seguridad automáticas admite la configuración de estas reglas de copias de seguridad a través del uso de un archivo de configuración XML y el manifiesto de la aplicación.
-
- En el manifiesto de la aplicación, puede especificar un archivo de configuración de esquema de la copia de seguridad, como se muestra en el siguiente ejemplo:
-
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:fullBackupContent="&#64;xml/mybackupscheme"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-<p>
-  En este código de ejemplo, el atributo <code>android:fullBackupContent</code> especifica un archivo XML, ubicado en el directorio <code>res/xml/</code> del proyecto de desarrollo de su aplicación, con el nombre <code>mybackupscheme.xml</code>.
-
- Este archivo de configuración incluye reglas sobre los archivos para los que se realiza una copia de seguridad.
- El siguiente código de ejemplo muestra un archivo de configuración que excluye un archivo específico de las copias de seguridad:
-
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;full-backup-content&gt;
-    &lt;exclude domain="database" path="device_info.db"/&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  Este ejemplo de configuración de copia de seguridad solo excluye un archivo específico de base de datos que no se incluirá en la copia de seguridad.
-  Todos los demás archivos se incluirán en la copia de seguridad.
-</p>
-
-<h4>Sintaxis de la configuración de copia de seguridad</h4>
-
-<p>
-  La configuración del servicio de copias de seguridad le permite especificar qué archivos incluir en la copia de seguridad o excluir de ella.
- La sintaxis del archivo de configuración XML de copia de seguridad de datos es la siguiente:
-</p>
-
-<pre>
-&lt;full-backup-content&gt;
-    &lt;include domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-    &lt;exclude domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  Los siguientes elementos y atributos le permiten especificar qué archivos incluir de la copia de seguridad o excluir de ella:
-
-</p>
-
-<ul>
-  <li>
-  <code>&lt;include&gt;</code>. Use este elemento si desea especificar un conjunto de recursos para realizar una copia de seguridad, en lugar de hacer que el sistema realice una copia de seguridad de todos los datos de su aplicación de forma predeterminada.
- Cuando especifica una etiqueta <code>&lt;include&gt;</code>, el sistema realiza una copia de seguridad <em>solo de los recursos que se especifican</em>
- con este elemento.
-
-  </li>
-
-  <li>
-  <code>&lt;exclude&gt;</code>. Use este elemento para especificar un conjunto de recursos para excluir de la copia de seguridad.
- El sistema realizará una copia de seguridad de todos los datos de su aplicación, excepto de los recursos que se especifican con este elemento.
-
-  </li>
-
-  <li>
-  <code>domain.</code> El tipo de recurso que desea incluir en la copia de seguridad o excluir de esta. Entre los valores válidos que usted puede especificar para este atributo se incluyen los siguientes:
-
-  </li>
-
-  <li style="list-style: none">
-  <ul>
-    <li>
-    <code>root</code>. Especifica que el recurso se encuentra en el directorio raíz de la aplicación.
-    </li>
-
-    <li>
-    <code>file</code>. Corresponde a un recurso del directorio devuelto por el método
-{@link android.content.Context#getFilesDir getFilesDir()}.
-    </li>
-
-    <li>
-    <code>database</code>. Corresponde a una base de datos devuelta por el método
-{@link android.content.Context#getDatabasePath getDatabasePath()} o mediante el uso de la clase
-{@link android.database.sqlite.SQLiteOpenHelper}.
-    </li>
-
-    <li>
-    <code>sharedpref</code>. Corresponde a un objeto {@link android.content.SharedPreferences} devuelto por el método {@link android.content.Context#getSharedPreferences getSharedPreferences()}
-.
-
-    </li>
-
-    <li>
-    <code>external</code>. Especifica que el recurso se encuentra en almacenamiento externo y corresponde a un archivo del directorio devuelto por el método
-{@link android.content.Context#getExternalFilesDir getExternalFilesDir()}.
-
-    </li>
-
-    <li>
-    <code>path</code>. La ruta de archivo para un recurso que desea incluir en la copia de seguridad o excluir de esta.
-
-    </li>
-  </ul>
-  </li>
-</ul>
-
-
-<h3 id="prohibit">Cómo prohibir las copias de seguridad de datos</h3>
-
-<p>
-  Puede optar por impedir que se realicen copias de seguridad automáticas de los datos de su aplicación y, para ello, debe configurar el atributo
-<code>android:allowBackup</code> en <code>false</code> en el elemento de la aplicación de su manifiesto.
- Esta configuración se ilustra en el siguiente código de ejemplo:
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:allowBackup="false"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-
-<h2 id="testing">Pruebas de la configuración de copia de seguridad</h2>
-
-<p>
-  Cuando haya creado una configuración de copia de seguridad, debe probarla para garantizar que su aplicación guarde los datos y se pueda restaurar correctamente.
-
-</p>
-
-
-<h4>Cómo habilitar un registro de copias de seguridad</h4>
-
-<p>
-  Para ayudar a determinar la manera en que la característica de copia de seguridad está analizando su archivo XML, habilite el registro antes de realizar una copia de seguridad de prueba:
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell setprop log.tag.BackupXmlParserLogging VERBOSE
-</pre>
-
-<h4>Cómo probar la copia de seguridad</h4>
-
-<p>Para ejecutar manualmente una copia de seguridad, primero debe inicializar Backup Manager llamando al siguiente comando:
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr run
-</pre>
-
-<p>
-  Luego, realice una copia de seguridad de su aplicación manualmente utilizando el comando que se indica a continuación y especificando el nombre de paquete para su aplicación como el parámetro <code>&lt;PACKAGE&gt;</code>:
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr fullbackup &lt;PACKAGE&gt;</pre>
-
-
-<h4>Cómo probar la restauración</h4>
-
-<p>
-  Para iniciar una restauración manualmente después de realizar una copia de seguridad de los datos, llame al comando que se indica a continuación y especifique el nombre de paquete para su aplicación como el parámetro <code>&lt;PACKAGE&gt;</code>:
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr restore &lt;PACKAGE&gt;
-</pre>
-
-<p class="warning">
-  <b>Advertencia:</b> Esta acción detiene la aplicación y borra sus datos antes de realizar la operación de restauración.
-
-</p>
-
-<p>
-  Para iniciar el proceso de restauración de su aplicación, desinstale su aplicación y vuelva a instalarla. Los datos de la aplicación se restaurarán automáticamente desde la nube una vez que se complete la instalación.
-
-</p>
-
-
-<h4>Solución de problemas de las copias de seguridad</h4>
-
-<p>
-  Si tiene algún problema, borre los datos de la copia de seguridad y los metadatos asociados; para hacerlo, desactive y vuelva a activar la copia de seguridad en <strong>Settings &gt; Backup</strong>, restablezca el dispositivo a la configuración predeterminada de fábrica o llame al siguiente comando:
-
-
-</p>
-
-<pre>$ adb shell bmgr wipe &lt;TRANSPORT&gt; &lt;PACKAGE&gt;</pre>
-
-<p>
-  El valor <code>&lt;TRANSPORT&gt;</code> debe estar precedido por <code>com.google.android.gms</code>.
-  Para obtener una lista de transportes, llame al siguiente comando:
-</p>
-
-<pre>$ adb shell bmgr list transports</pre>
-
-<h2 id="issues">Problemas conocidos</h2>
-
-<p>Los siguientes son problemas conocidos del servicio de copias de seguridad automáticas:</p>
-
-<ul>
-  <li><strong>Google Cloud Messaging</strong>: En las aplicaciones que utilizan Google Cloud Messaging para notificaciones push, existe un problema conocido en el que al realizar una copia de seguridad de la Id. de registro devuelta por el registro de Google Cloud Messaging, se pueden romper las notificaciones push de la aplicación restaurada. Es importante realizar una consulta a la API para obtener una nueva Id. de registro después de realizar la instalación en un dispositivo nuevo, lo que no sucede si se realizó una copia de seguridad de la Id. de registro anterior.
-
-
-
-
- Para evitar esta situación, excluya la Id. de registro del conjunto de archivos para incluir en la copia de seguridad.
-
-  </li>
-</ul>
diff --git a/docs/html-intl/intl/es/preview/behavior-changes.jd b/docs/html-intl/intl/es/preview/behavior-changes.jd
deleted file mode 100644
index 75936bd..0000000
--- a/docs/html-intl/intl/es/preview/behavior-changes.jd
+++ /dev/null
@@ -1,403 +0,0 @@
-page.title=Cambios en los comportamientos
-page.keywords=versión preliminar,sdk,compatibilidad
-sdk.platform.apiLevel=MNC
-@jd:body
-
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>Contenido del documento</h2>
-
-<ol id="toc44" class="hide-nested">
-    <li><a href="#behavior-runtime-permissions">Permisos de tiempo de ejecución</a></li>
-    <li><a href="#behavior-power">Optimizaciones de ahorro de energía</a>
-        <ol>
-            <li><a href="#behavior-doze">Doze</a></li>
-            <li><a href="#behavior-app-standby">App Standby</a></li>
-        </ol>
-    </li>
-    <li><a href="#behavior-adoptable-storage">Dispositivos de almacenamiento adoptables</a></li>
-    <li><a href="#behavior-apache-http-client">Eliminación del cliente HTTP de Apache</a></li>
-    <li><a href="#behavior-audiomanager-Changes">Cambios en AudioManager</a></li>
-    <li><a href="#behavior-test-selection">Selección de texto</a></li>
-    <li><a href="#behavior-keystore">Cambios en Android Keystore</a></li>
-    <li><a href="#behavior-network">Cambios en las funciones de red y Wi-Fi</a></li>
-    <li><a href="#behavior-camera">Cambios en el servicio de cámara</a></li>
-    <li><a href="#behavior-art-runtime">Tiempo de ejecución de ART</a></li>
-    <li><a href="#behavior-apk-validation">Validación de APK</a></li>
-    <li><a href="#behavior-afw">Cambios en Android for Work</a></li>
-</ol>
-
-<h2>Diferencias de las API</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">Nivel de API 22 para la versión preliminar de Android M &raquo;</a> </li>
-</ol>
-
-
-<h2>Consulte también</h2>
-<ol>
-<li><a href="{@docRoot}preview/api-overview.html">Información general de la API de M Developer Preview</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>Además de nuevas características y capacidades, M Developer Preview incluye diversos cambios en el sistema y cambios en los comportamientos de la API.
- En este documento, se destacan algunos de los cambios principales que debe comprender y justificar en sus aplicaciones.
-</p>
-
-<p>Si publicó anteriormente una aplicación para Android, tenga en cuenta que su aplicación podría verse afectada por estos cambios en la plataforma.
-</p>
-
-<h2 id="behavior-runtime-permissions">Permisos de tiempo de ejecución</h1>
-<p>Esta versión preliminar introduce un nuevo modelo de permisos en el que los usuarios ahora pueden administrar directamente los permisos de la aplicación en tiempo de ejecución.
- Este modelo les proporciona a los usuarios mayor visibilidad y control sobre los permisos y, al mismo tiempo, simplifica los procesos de instalación y actualización automática para los desarrolladores de aplicaciones. Los usuarios pueden conceder o revocar permisos de forma individual para las aplicaciones instaladas.
-
- </p>
-
-<p>En sus aplicaciones que tienen como destino la versión preliminar de Android M, asegúrese de comprobar y solicitar los permisos en tiempo de ejecución.
- Para determinar si se concedió un permiso a su aplicación, llame al nuevo método {@code Context.checkSelfPermission()}.
- Para solicitar un permiso, llame al nuevo método
-{@code Activity.requestPermission()}. Incluso si su aplicación no tiene como destino la versión preliminar de Android M, debería probar su aplicación de acuerdo con el nuevo modelo de permisos.
-</p>
-
-<p>Para obtener detalles sobre la compatibilidad del nuevo modelo de permisos en su aplicación, consulte la página 
-<a href="{@docRoot}preview/features/runtime-permissions.html">
-Permisos</a> de la versión preliminar para desarrolladores. Para obtener consejos sobre cómo evaluar el impacto en su aplicación, consulte la <a href="{@docRoot}preview/testing/guide.html#runtime-permissions">Guía de prueba</a>.
-</p>
-
-<h2 id="behavior-power">Optimizaciones de ahorro de energía</h2>
-<p>Esta versión preliminar introduce nuevas optimizaciones de ahorro de energía para aplicaciones y dispositivos inactivos.</p>
-
-<h3 id="behavior-doze">Doze</h3>
-<p>Si un dispositivo está desconectado y permanece quieto con la pantalla apagada durante un período determinado, pasará al modo <em>Doze</em>, en el que el dispositivo intenta mantener el sistema en estado de suspensión.
- En este modo, los dispositivos reanudan periódicamente el funcionamiento normal durante períodos breves, de manera que la aplicación se pueda sincronizar y el sistema pueda realizar las operaciones pendientes.
-
-</p>
-
-<p>Durante el modo Doze, se aplican las siguientes restricciones a sus aplicaciones:</p>
-<ul>
-<li>Se deshabilita el acceso a la red, salvo que su aplicación reciba una señal de prioridad alta de Google Cloud Messaging (envío de mensajes a través de la nube de Google).
-</li>
-<li>Se ignoran los <a href="{@docRoot}reference/android/os/PowerManager.WakeLock.html">Wakelocks</a>.</li>
-<li>Se deshabilitan las alarmas programadas con la clase {@link android.app.AlarmManager}, salvo las alarmas que haya configurado con el método {@link android.app.AlarmManager#setAlarmClock setAlarmClock()}
-y con {@code AlarmManager.setAndAllowWhileIdle()}.
-</li>
-<li>No se realiza la detección de Wi-Fi.</li>
-<li>No se permite la ejecución de sincronizaciones ni trabajos para sus adaptadores de sincronización y {@link android.app.job.JobScheduler}.
-</li>
-</ul>
-</p>
-<p>Al salir del modo Doze, el dispositivo ejecuta los trabajos y las sincronizaciones pendientes.</p>
-<p>Para probar esta característica, conecte un dispositivo que esté ejecutando la versión preliminar de Android M a su equipo de desarrollo y llame a los siguientes comandos:
-
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-<p class="note"><strong>Nota:</strong> La próxima versión de
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">
-Google Cloud Messaging</a> le permite designar mensajes de prioridad alta.
- Si su aplicación recibe mensajes de GCM de prioridad alta, se le concede un breve acceso a la red, incluso cuando el dispositivo se encuentra en modo Doze.
-
-</p>
-
-<p>Consulte la
-<a href="{@docRoot}preview/testing/guide.html#doze-standby">Guía de prueba</a> para obtener consejos sobre cómo probar el modo Doze en su aplicación.
- </p>
-
-<h3 id="behavior-app-standby">App Standby</h3>
-<p>Con esta versión preliminar, el sistema puede determinar que las aplicaciones se encuentran inactivas cuando no están en uso activo.
- La aplicación se considera inactiva después de un cierto período, salvo que el sistema detecte alguna de las siguientes señales:
-</p>
-
-<ul>
-<li>El usuario inicia explícitamente la aplicación.</li>
-<li>La aplicación actualmente tiene un proceso en primer plano (ya sea como una actividad o un servicio en primer plano, o en uso por parte de otra actividad u otro servicio en primer plano).
-</li>
-<li>La aplicación genera una notificación que los usuarios ven en la pantalla de bloqueo o en la bandeja de notificaciones.
-</li>
-<li>El usuario solicita explícitamente que la aplicación esté exenta de optimizaciones mediante las <strong>Configuraciones</strong>.
-</li>
-</ul>
-
-<p>Si el dispositivo está desconectado, las aplicaciones que se consideren inactivas tendrán deshabilitado el acceso a la red y se suspenderán sus sincronizaciones y trabajos.
- Cuando el dispositivo se conecte a un sistema de alimentación, estas aplicaciones se podrán conectar a la red y podrán ejecutar los trabajos y las sincronizaciones pendientes.
- Si el dispositivo queda inactivo durante períodos prolongados, las aplicaciones inactivas pueden acceder a la red aproximadamente una vez al día.
-</p>
-
-<p>Para probar esta característica, conecte un dispositivo que esté ejecutando la versión preliminar de Android M a su equipo de desarrollo y llame a los siguientes comandos:
-
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell am set-idle &lt;packageName&gt; true
-$ adb shell am set-idle &lt;packageName&gt; false
-$ adb shell am get-idle &lt;packageName&gt;
-</pre>
-
-<p class="note"><strong>Nota:</strong> La próxima versión de
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">
-Google Cloud Messaging</a> (GCM) le permite designar mensajes de prioridad alta.
- Si su aplicación recibe mensajes de GCM de prioridad alta, se le concede un breve acceso a la red, incluso cuando la aplicación está inactiva.
-
-</p>
-
-<p>Consulte la
-<a href="{@docRoot}preview/testing/guide.html#doze-standby">Guía de prueba</a> para obtener consejos sobre cómo probar el modo App Standby en sus aplicaciones.
- </p>
-
-<h2 id="behavior-adoptable-storage">Dispositivos de almacenamiento adoptables</h2>
-<p>
-Con esta versión preliminar, los usuarios pueden <em>adoptar</em> dispositivos de almacenamiento externo, como tarjetas SD. Al adoptar un dispositivo de almacenamiento externo, el dispositivo se cifra y se formatea para que actúe como un elemento de almacenamiento interno.
- Esta característica les permite a los usuarios mover tanto las aplicaciones como los datos privados de esas aplicaciones entre dispositivos de almacenamiento.
- Al mover aplicaciones, el sistema respeta la preferencia 
-<a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a>
-del manifiesto.
-</p>
-
-<p>Si su aplicación accede a las API o a los campos que se indican a continuación, tenga en cuenta que las rutas de archivo que devuelven se modificarán dinámicamente cuando la aplicación se mueva entre dispositivos de almacenamiento interno y externo. Al crear rutas de archivo, lo más recomendable es que siempre llame a estas API de forma dinámica. No use rutas de archivo codificadas de forma rígida ni continúe usando rutas de archivo completas que se hayan creado anteriormente.
-
-
-</p>
-
-<ul>
-<li>Métodos {@link android.content.Context}:
-    <ul>
-        <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
-        <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
-        <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
-        <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
-        <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
-        <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
-        <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
-        <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
-        <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
-    </ul>
-</li>
-<li>Campos {@link android.content.pm.ApplicationInfo}:
-    <ul>
-        <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
-    </ul>
-</li>
-</ul>
-
-<p>Para depurar esta característica en la versión preliminar para desarrolladores, puede habilitar la opción de adoptar una unidad USB que esté conectada a un dispositivo Android mediante un cable USB On-The-Go (OTG) y para habilitarla puede ejecutar el siguiente comando:
-</p>
-
-<pre class="no-prettyprint">
-$ adb shell sm set-force-adoptable true
-</pre>
-
-<h2 id="behavior-apache-http-client">Eliminación del cliente HTTP de Apache</h2>
-<p>Esta versión preliminar elimina el soporte del cliente HTTP de Apache. Si su aplicación utiliza este cliente y tiene como destino Android 2.3 (API de nivel 9) o una versión posterior, use, en su lugar, la clase {@link java.net.HttpURLConnection}.
-
- Esta API es más eficaz porque reduce el uso de la red mediante compresión y almacenamiento de respuesta en caché transparentes, y minimiza el consumo de energía.
- Para continuar utilizando las API HTTP de Apache, primero debe declarar la siguiente dependencia en tiempo de compilación en su archivo {@code build.gradle}:
-
-</p>
-<pre>
-android {
-    useLibrary 'org.apache.http.legacy'
-}
-</pre>
-<p>Android está migrando de la biblioteca OpenSSL a 
-<a href="https://boringssl.googlesource.com/boringssl/" class="external-link">BoringSSL</a>
-. Si utiliza Android NDK en su aplicación, no vincule bibliotecas criptográficas que no forman parte de la API de NDK, como {@code libcrypto.so} y {@code libssl.so}.
- Estas bibliotecas no son API públicas y se pueden modificar o interrumpir sin aviso en todas las versiones y todos los dispositivos. Además, puede exponerse a vulnerabilidades de seguridad.
-
- En cambio, modifique su código nativo para llamar a las API de criptografía de Java a través de JNI o para vincular estáticamente una biblioteca criptográfica de su elección.
-
-</p>
-
-<h2 id="behavior-audiomanager-Changes">Cambios en AudioManager</h2>
-<p>Ya no se admitirán las funciones de ajustar el volumen de forma directa o silenciar secuencias específicas por medio de la clase {@link android.media.AudioManager}
-. El método {@link android.media.AudioManager#setStreamSolo(int,boolean)
-setStreamSolo()} es obsoleto, por lo que debe llamar al método
-{@code AudioManager.requestAudioFocus()} en su lugar. Del mismo modo, el método
-{@link android.media.AudioManager#setStreamMute(int,boolean) setStreamMute()} es obsoleto; en su lugar, llame al método{@code AudioManager.adjustStreamVolume()} y pase los valores de dirección {@code ADJUST_MUTE} o {@code ADJUST_UNMUTE}.
-
-</p>
-
-<h2 id="behavior-test-selection">Selección de texto</h2>
-
-<img src="{@docRoot}preview/images/text-selection.gif" style="float:right; margin:0 0 20px 30px" width="360" height="640" />
-
-<p>Ahora, cuando los usuarios seleccionen texto en su aplicación, usted puede mostrar acciones de selección de texto, como
-<em>cortar</em>, <em>copiar</em> y <em>pegar</em> en una
-<a href="http://www.google.com/design/spec/patterns/selection.html#selection-text-selection" class="external-link">barra de herramientas flotante</a>. La implementación de la interacción del usuario es similar a la de la barra de acciones contextuales, como se describe en la sección
-<a href="{@docRoot}guide/topics/ui/menus.html#CABforViews">
-Habilitación del modo de acción contextual para vistas individuales</a>.
-</p>
-
-<p>Si desea implementar una barra de herramientas flotante para selección de texto, realice los siguientes cambios en sus aplicaciones existentes:
-</p>
-<ol>
-<li>En su objeto {@link android.view.View} o {@link android.app.Activity}, cambie sus llamados
-{@link android.view.ActionMode} de
-{@code startActionMode(Callback)} a {@code startActionMode(Callback, ActionMode.TYPE_FLOATING)}.</li>
-<li>Tome su implementación existente de {@code ActionMode.Callback} y, en su lugar, haga que sea extendida
-{@code ActionMode.Callback2}.</li>
-<li>Invalide el método {@code Callback2.onGetContentRect()} para proporcionar las coordenadas del objeto {@link android.graphics.Rect} de contenido (como un rectángulo de selección de texto) en la vista.
-</li>
-<li>Si el posicionamiento del rectángulo ya no es válido y este es el único elemento por invalidar, llame al método {@code ActionMode.invalidateContentRect()}.
-</li>
-</ol>
-
-<p>Si utiliza la biblioteca <a href="{@docRoot}tools/support-library/index.html">
-Android Support Library</a> versión 22.2, tenga en cuenta que las barras de herramientas flotantes no son compatibles con versiones anteriores y AppCompat toma el control de los objetos {@link android.view.ActionMode} de forma predeterminada.
-
- Esto impide que se muestren las barras de herramientas flotantes. Para permitir la compatibilidad de
-{@link android.view.ActionMode} en 
-{@link android.support.v7.app.AppCompatActivity}, llame a
-{@code android.support.v7.app.AppCompatActivity.getDelegate()}, luego llame a
-{@code android.support.v7.app.AppCompatDelegate.setHandleNativeActionModesEnabled()} en el objeto
-{@link android.support.v7.app.AppCompatDelegate} devuelto y configure el parámetro de entrada como {@code false}.
- Esta llamada devuelve el control de los objetos {@link android.view.ActionMode} al marco de trabajo.
- En los dispositivos que ejecutan la versión preliminar de Android M, eso permite que el marco de trabajo admita los modos de barras de herramientas flotantes o
-{@link android.support.v7.app.ActionBar}, mientras que en los dispositivos anteriores a la versión preliminar de Android M solo se admiten los modos {@link android.support.v7.app.ActionBar}.
-</p>
-
-<h2 id="behavior-keystore">Cambios en Android Keystore</h2>
-<p>Con esta versión preliminar, el
-<a href="{@docRoot}training/articles/keystore.html">proveedor de Android Keystore</a> ya no admite DSA.
- Aún se admite ECDSA.</p>
-
-<p>Las claves que no requieren cifrado de datos estáticos ya no se eliminarán cuando se restablezca o deshabilite la pantalla de bloqueo seguro (por ejemplo, cuando lo haga el usuario o el administrador del dispositivo).
- Las claves que requieren el cifrado de datos estáticos se eliminarán durante estos eventos.
-</p>
-
-<h2 id="behavior-network">Cambios en las funciones de red y Wi-Fi</h2>
-
-<p>Esta versión preliminar introduce en las API de redes y Wi-Fi los siguientes cambios en los comportamientos.</p>
-<ul>
-<li>Ahora sus aplicaciones pueden cambiar el estado de los objetos {@link android.net.wifi.WifiConfiguration} solo si usted creó estos objetos.
- Usted no puede modificar ni eliminar objetos
-{@link android.net.wifi.WifiConfiguration} creados por el usuario o por otras aplicaciones.
-</li>
-<li>
-Anteriormente, si una aplicación forzaba al dispositivo a conectarse a una red Wi-Fi específica utilizando
-{@link android.net.wifi.WifiManager#enableNetwork(int,boolean) enableNetwork()} con la configuración
-{@code disableAllOthers=true}, el dispositivo se desconectaba de otras redes, como los datos móviles.
- En esta versión preliminar, el dispositivo ya no se desconectará de otras redes como estas. Si {@code targetSdkVersion} de su aplicación es {@code “20”} o inferior, se anclará a la red Wi-Fi seleccionada.
-
- Si {@code targetSdkVersion} de su aplicación es {@code “21”} o posterior, use las API de redes múltiples (como
-{@link android.net.Network#openConnection(java.net.URL) openConnection()},
-{@link android.net.Network#bindSocket(java.net.Socket) bindSocket()} y el nuevo método
-{@code ConnectivityManager.bindProcessToNetwork()}) para garantizar que el tráfico de su red se envíe a la red seleccionada.
-
-</li>
-</ul>
-
-<h2 id="behavior-camera">Cambios en el servicio de cámara</h2>
-<p>En esta versión preliminar, el modelo para acceder a los recursos compartidos en el servicio de cámara se cambió del modelo de acceso anterior “por orden de llegada” a un modelo de acceso en el que se favorecen los procesos de prioridad alta.
-
-  Los cambios en el comportamiento del servicio incluyen los siguientes:</p>
-<ul>
-<li>El acceso a los recursos del subsistema de la cámara, lo que incluye abrir y configurar un dispositivo de cámara, se concede según la “prioridad” del proceso de la aplicación cliente.
- Por lo general, los procesos de la aplicación con actividades en primer plano o visibles para el usuario, reciben una prioridad más alta, lo que hace que el uso y la adquisición de recursos de la cámara sean más dependientes.
-
-</li>
-<li>Los clientes con cámara activa para aplicaciones de menor prioridad pueden ser “expulsados” cuando una aplicación de mayor prioridad intenta utilizar la cámara.
-  En la API {@link android.hardware.Camera} obsoleta, esto hace que se llame al método
-{@link android.hardware.Camera.ErrorCallback#onError(int,android.hardware.Camera) onError()} para el cliente expulsado.
-
- En la API {@link android.hardware.camera2 Camera2}, esto hace que se llame al método
-{@link android.hardware.camera2.CameraDevice.StateCallback#onDisconnected(android.hardware.camera2.CameraDevice) onDisconnected()}
-para el cliente expulsado.</li>
-<li>En los dispositivos con hardware de cámara correcto, distintos procesos de la aplicación pueden abrir y utilizar de forma independiente dispositivos de cámara separados al mismo tiempo.
- Sin embargo, ahora el servicio de cámara detecta y no permite los casos de uso de procesos múltiples, donde el acceso simultáneo genera una degradación considerable del rendimiento o de las capacidades de cualquiera de los dispositivos de cámara abiertos.
-
- Este cambio puede generar “expulsiones” de clientes de menor prioridad, incluso cuando ninguna otra aplicación esté intentando acceder directamente al mismo dispositivo de cámara.
-
-
-</li>
-<li>
-Cambiar el usuario actual provoca que se expulsen los clientes con cámara activa en las aplicaciones que pertenecen a la cuenta de usuario anterior.
-  El acceso a la cámara se limita a perfiles de usuario que pertenecen al usuario actual del dispositivo. En la práctica, esto significa que una cuenta de “invitado”, por ejemplo, no podrá abandonar los procesos en ejecución que utilicen el subsistema de la cámara cuando el usuario haya cambiado a otra cuenta.
-
-
-</li>
-</ul>
-
-<h2 id="behavior-art-runtime">Tiempo de ejecución de ART</h2>
-<p>El tiempo de ejecución de ART ahora implementa correctamente reglas de acceso para el método
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()}. Este cambio soluciona el problema que ocurría con Dalvik, que comprobaba las reglas de acceso incorrectamente en las versiones anteriores. Si su aplicación utiliza el método
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} y usted desea invalidar comprobaciones de acceso, llame al método
-{@link java.lang.reflect.Constructor#setAccessible(boolean) setAccessible()} con el parámetro de entrada configurado en {@code true}.
-
-
-
- Si su aplicación utiliza la
-<a href="{@docRoot}tools/support-library/features.html#v7-appcompat">biblioteca AppCompat versión 7</a> o la
-<a href="{@docRoot}tools/support-library/features.html#v7-recyclerview">biblioteca RecyclerView versión 7</a>, debe actualizar su aplicación para utilizar las versiones más recientes de estas bibliotecas.
- De lo contrario, asegúrese de que las clases personalizadas a las que se haga referencia desde el XML estén actualizadas, de manera que se pueda acceder a sus constructores de clases.
-</p>
-
-<p>Esta versión preliminar actualiza el comportamiento del vinculador dinámico. El vinculador dinámico ahora entiende la diferencia entre {@code soname} de una biblioteca y su ruta de acceso (<a href="https://code.google.com/p/android/issues/detail?id=6670" class="external-link">
-error público 6670</a>), y ahora se implementa la búsqueda por {@code soname}.
-
-
- Las aplicaciones que anteriormente funcionaban y que tenían entradas {@code DT_NEEDED} incorrectas (generalmente, rutas absolutas en el sistema de archivo del equipo de compilación) pueden generar error al cargarse.
-</p>
-
-<p>Ahora se implementa correctamente la marca {@code dlopen(3) RTLD_LOCAL}. Tenga en cuenta que
-{@code RTLD_LOCAL} es lo predeterminado, por lo que se verán afectadas las llamadas a {@code dlopen(3)} que no utilizaron explícitamente 
-{@code RTLD_LOCAL} (salvo que su aplicación haya usado {@code RTLD_GLOBAL} explícitamente). Con
-{@code RTLD_LOCAL}, los símbolos no estarán disponibles para las bibliotecas cargadas por llamadas posteriores a
-{@code dlopen(3)} (a diferencia de lo que sucede al hacer referencia mediante entradas {@code DT_NEEDED}).</p>
-</p>
-
-<h2 id="behavior-apk-validation">Validación de APK</h2>
-<p>Ahora la plataforma realiza validaciones más estrictas de APK. El APK se considera dañado si un archivo está declarado en el manifiesto, pero no está presente en el APK en sí.
- Si se elimina algún contenido, se debe volver a firmar el APK.
-</p>
-
-<h2 id="behavior-afw">Cambios en Android for Work</h2>
-<p>Esta versión preliminar incluye los siguientes cambios en los comportamientos para Android for Work:</p>
-<ul>
-<li><strong>Contactos de trabajo en contextos personales:</strong> Ahora, el registro de llamadas de Google Dialer muestra los contactos de trabajo cuando el usuario ve las llamadas anteriores. Si se configura {@code DevicePolicyManager.setCrossProfileCallerIdDisabled()} en {@code true}, se ocultan los contactos de perfiles de trabajo en el registro de llamadas de Google Dialer.
-
-
- Los contactos de trabajo se pueden mostrar junto con los contactos personales en los dispositivos a través de Bluetooth solo si usted configura {@code DevicePolicyManager.setBluetoothContactSharingDisabled()} en {@code false}.
-
- De forma predeterminada, se configura en {@code true}.
-
-</li>
-<li><strong>Eliminación de configuraciones de Wi-Fi:</strong> Las configuraciones de Wi-Fi agregadas por un propietario de perfil (por ejemplo, al llamar al método
-{@link android.net.wifi.WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
-addNetwork()}) ahora se borran si se elimina ese perfil de trabajo.
-</li>
-<li><strong>Bloqueo de configuraciones de Wi-Fi:</strong> El usuario ya no puede modificar ni eliminar las configuraciones de Wi-Fi creadas por un propietario activo del dispositivo.
- El usuario aún puede crear y modificar sus propias configuraciones de Wi-Fi, siempre que no se haya definido la constante {@link android.os.UserManager} 
-{@link android.os.UserManager#DISALLOW_CONFIG_WIFI} para ese usuario.
-</li>
-<li><strong>Descarga de Work Policy Controller mediante la incorporación de una cuenta de Google:</strong> Cuando una cuenta de Google que requiere gestión a través de una aplicación de Work Policy Controller (WPC) se agrega a un dispositivo fuera de un contexto administrado, el flujo de incorporación de la cuenta ahora le pide al usuario que instale el WPC apropiado. Este comportamiento también se aplica a las cuentas agregadas mediante
-<strong>Settings &gt; Accounts</strong> en el asistente para instalación inicial del dispositivo.
-
-
-</li>
-<li><strong>Cambios en comportamientos específicos de la API DevicePolicyManager:</strong>
-Llamar al método {@link android.app.admin.DevicePolicyManager#setCameraDisabled(android.content.ComponentName,boolean) setCameraDisabled()}
-afecta la cámara solo del usuario que lo llama; llamarlo desde el perfil administrado no afecta las aplicaciones de cámara que se ejecutan en el usuario principal.
- Asimismo, el método
-{@link android.app.admin.DevicePolicyManager#setKeyguardDisabledFeatures(android.content.ComponentName,int) setKeyguardDisabledFeatures()}
-ahora se encuentra disponible para propietarios de perfiles, además de propietarios de dispositivos. Un propietario de perfil puede configurar las siguientes restricciones de protección de seguridad:
-
-<ul>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_TRUST_AGENTS} y
-    {@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_FINGERPRINT}, que afectan las configuraciones de protección de seguridad para el usuario primario del perfil.
-</li>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS}, que solo afecta las notificaciones generadas por aplicaciones en el perfil administrado.
-</li>
-</ul>
-</li>
-</ul>
diff --git a/docs/html-intl/intl/es/preview/download.jd b/docs/html-intl/intl/es/preview/download.jd
deleted file mode 100644
index d77242c..0000000
--- a/docs/html-intl/intl/es/preview/download.jd
+++ /dev/null
@@ -1,362 +0,0 @@
-page.title=Descargas
-page.image=images/cards/card-download_16-9_2x.png
-
-@jd:body
-
-<div style="position:relative; min-height:600px">
-
-  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
-
-    <p class="sdk-terms-intro">Antes de descargar e instalar los componentes del SDK de la versión preliminar de Android, debe aceptar los términos y las condiciones que se describen a continuación.
-</p>
-
-    <h2 class="norule">Términos y condiciones</h2>
-
-    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
-Este es el Contrato de licencia de la versión preliminar del SDK de Android (el “Contrato de licencia”). 1.
-
- Introducción 1.1 Se le otorga la licencia de la versión preliminar del SDK de Android (denominada “Versión preliminar” en este Contrato de licencia y que incluye específicamente los archivos de sistema de Android, las API agrupadas y los archivos de biblioteca de la Versión preliminar, si se encuentran disponibles), sujeto a los términos del Contrato de licencia.
-
- El Contrato de licencia establece una relación legal vinculante entre usted y Google en relación con el uso que usted realice de la Versión preliminar. 1.2 “Android” hace referencia al conjunto de soluciones Android para dispositivos, según se encuentre disponible en el Proyecto de código abierto de Android (Android Open Source Project), que se encuentra en la siguiente URL: http://source.android.com/, y según se actualiza periódicamente. 1.3 “Google” hace referencia a Google Inc., una corporación de Delaware, con sede principal en 1600 Amphitheatre Parkway, Mountain View, CA 94043, Estados Unidos. 2.
-
-
-
-
-
- Aceptación del Contrato de licencia 2.1 Para poder utilizar la Versión preliminar, primero debe aceptar el Contrato de licencia.
-
- Si no acepta el Contrato de licencia, no podrá utilizar la Versión preliminar. 2.2 Al hacer clic para aceptar o utilizar la Versión preliminar, por medio del presente, usted acepta los términos del Contrato de licencia. 2.3 Usted no puede utilizar la Versión preliminar ni aceptar el Contrato de licencia si tiene prohibido recibir la Versión preliminar en virtud de las leyes de los Estados Unidos o de otros países, lo que incluye el país donde es residente o desde el que utilizará la Versión preliminar. 2.4 Si usted utilizará la Versión preliminar de forma interna, dentro de su compañía u organización, usted acepta quedar sujeto al Contrato de licencia en representación de su empleador u otra entidad, y expresa y garantiza que tiene plena autoridad legal para vincular a su empleador o a dicha entidad al Contrato de licencia.
-
-
-
-
-
- Si no posee la autoridad exigida, no podrá aceptar el Contrato de licencia ni usar la Versión preliminar en representación de su empleador u otra entidad. 3.
-
- Licencia de la Versión preliminar de Google 3.1 Sujeto a los términos del Contrato de licencia, Google le otorga una licencia libre de regalías, no asignable, no exclusiva, no transferible a terceros, limitada y revocable para utilizar la Versión preliminar, de forma personal o interna dentro de su compañía u organización, únicamente para desarrollar aplicaciones para ejecutar en la plataforma de Android. 3.2 Usted acepta que Google u otros terceros poseen todos los derechos legales, títulos e intereses en relación con la Versión preliminar, incluidos los Derechos de propiedad intelectual que existan en la Versión preliminar.
-
-
-
- Los “Derechos de propiedad intelectual” hacen referencia a todos y cada uno de los derechos en virtud de las leyes de patentes, derechos de autor, secreto comercial y marca comercial, y todos los demás derechos de propiedad. Google se reserva todos los derechos que no se le otorguen expresamente. 3.3 No podrá utilizar la Versión preliminar para ningún otro propósito que no esté expresamente permitido en el Contrato de licencia.
-
- Excepto en la medida que lo exijan las licencias correspondientes de terceros, no podrá: (a) copiar (excepto con fines de copia de seguridad), modificar, adaptar, redistribuir, descompilar, utilizar técnicas de ingeniería inversa, desarmar ni crear trabajos derivados de la Versión preliminar ni de ninguna de sus partes; ni (b) cargar ninguna parte de la Versión preliminar en un teléfono móvil ni en ningún otro dispositivo de hardware (a excepción de una computadora personal), ni podrá combinar ninguna parte de la Versión preliminar con otro software, ni distribuir algún software o dispositivo que incorpore alguna parte de la Versión preliminar. 3.4 Usted acepta que no tomará medidas que pudieran provocar la fragmentación de Android, incluidas, entre otras, la distribución y la participación en la creación o la promoción de un kit de desarrollo de software derivado de la Versión preliminar. 3.5 El uso, la reproducción y la distribución de los componentes de la Versión preliminar con licencia de software de código abierto están regidos exclusivamente por los términos de la licencia de ese software de código abierto y no de este Contrato de licencia.
-
-
-
- Usted acepta mantener la licencia en buenas condiciones con respecto a dichas licencias de software de código abierto en virtud de todos los derechos otorgados y acepta abstenerse de realizar alguna acción que pueda poner fin, suspender o violar dichos derechos. 3.6 Usted acepta que la forma y la naturaleza de la Versión preliminar que proporciona Google pueden cambiar sin brindarle aviso previo y que las versiones futuras de la Versión preliminar pueden ser incompatibles con las aplicaciones desarrolladas en versiones anteriores de la Versión preliminar.
-
- Usted acepta que Google puede (de forma permanente o temporal) dejar de proporcionarles la Versión preliminar (o cualquiera de las características incluidas en ella) a usted o a los usuarios, generalmente, a criterio exclusivo de Google, sin brindarle aviso previo. 3.7 Ninguna declaración de este Contrato de licencia le otorga el derecho de utilizar alguno de los nombres comerciales, las marcas comerciales, las marcas de servicio, los logotipos, los nombres de dominio ni otras características distintivas de marca de Google. 3.8 Usted acepta que no eliminará, ocultará ni alterará ninguno de los avisos de derechos de propiedad (lo que incluye los avisos de marca comercial y derechos de autor) que pudieran estar anexados o incluidos en la Versión preliminar. 4.
-
-
-
-
-
- Uso que usted realiza de la Versión preliminar 4.1 Google acepta que ninguna declaración del Contrato de licencia le concede a Google derecho, título o interés alguno de su parte (o de parte de sus licenciantes), en virtud del Contrato de licencia, con respecto a las aplicaciones de software que usted desarrolle mediante el uso de la Versión preliminar, lo que incluye los derechos de propiedad intelectual que conlleven esas aplicaciones. 4.2 Usted acepta utilizar la Versión preliminar y escribir aplicaciones únicamente conforme a lo que permite (a) este Contrato de licencia y (b) las leyes, regulaciones, o prácticas y pautas generalmente aceptadas pertinentes en las jurisdicciones relevantes (lo que incluye las leyes sobre la exportación de datos o software hacia los Estados Unidos u otros países relevantes y desde ellos). 4.3 Usted acepta que si utiliza la Versión preliminar para desarrollar aplicaciones, protegerá la privacidad y los derechos legales de los usuarios.
-
-
-
-
-
- Si los usuarios le proporcionan sus nombres de usuario, contraseñas u otra información de inicio de sesión o información personal, debe comunicarles a los usuarios que la información se encontrará disponible para su aplicación, y debe proporcionarles a dichos usuarios un aviso de privacidad con protección y validez legal. Si su aplicación almacena información personal o confidencial proporcionada por los usuarios, lo debe hacer de forma segura. Si los usuarios le proporcionan información sobre la cuenta de Google, su aplicación solo puede usar esa información para acceder a la cuenta de Google del usuario siempre que este le haya otorgado permiso para hacerlo y con los fines para los que se lo haya otorgado. 4.4 Usted acepta que no participará en ninguna actividad con la Versión preliminar (lo que incluye el desarrollo o la distribución de una aplicación) que interfiera, interrumpa, dañe o acceda sin autorización a servidores, redes u otras propiedades o servicios de Google o de algún tercero. 4.5 Usted acepta que es el único responsable (y que Google no asume responsabilidades hacia usted ni terceros) de los datos, el contenido o los recursos que usted cree, transmita o muestre a través de Android o las aplicaciones para Android, y de las consecuencias de sus acciones (lo que incluye la pérdida o el daño que Google pudiera sufrir) al hacerlo. 4.6 Usted acepta que es el único responsable (y que Google no asume responsabilidades hacia usted ni terceros) de cualquier incumplimiento de sus obligaciones en virtud de este Contrato de licencia, los contratos aplicables de terceros o los términos del servicio, o cualquier ley o regulación pertinentes, y de las consecuencias (lo que incluye las pérdidas o los daños que pudieran sufrir Google o algún tercero) de dichos incumplimientos. 4.7 La Versión preliminar se encuentra en desarrollo, y sus pruebas y comentarios son una parte importante del proceso de desarrollo.
-
-
-
-
-
-
-
- Al utilizar la Versión preliminar, usted reconoce que la implementación de algunas características aún se encuentra en desarrollo y que no debe confiar en que la Versión preliminar contará con todas las funcionalidades de una versión estable. Usted acepta no distribuir públicamente ni enviar ninguna aplicación que utilice esta Versión preliminar, ya que esta Versión preliminar ya no se admitirá tras el lanzamiento del SDK oficial de Android. 5.
-
- Sus credenciales de desarrollador 5.1 Usted acepta que es responsable de mantener la confidencialidad de toda credencial de desarrollador que Google pudiera otorgarle o que usted pudiera escoger, y que será el único responsable de todas las aplicaciones que se desarrollen con sus credenciales de desarrollador. 6.
-
-
-
- Privacidad e información 6.1 A fin de poder innovar y mejorar de forma continua la Versión preliminar, Google podría recopilar ciertas estadísticas de uso del software, lo que incluye, entre otras características, un identificador único, la dirección IP asociada, el número de versión del software e información sobre las herramientas o los servicios de la Versión preliminar que se estén utilizando y la manera en que se estén utilizando.
-
- Antes de que se recopile esta información, la Versión preliminar se lo notificará y le solicitará su permiso. Si no otorga su permiso, no se recopilará la información. 6.2 Los datos recopilados se analizan en el agregado para mejorar la Versión preliminar y se conservan de acuerdo con la política de privacidad de Google que se encuentra en el sitio http://www.google.com/policies/privacy/. 7.
-
-
-
- Aplicaciones de terceros 7.1 Si utiliza la Versión preliminar para ejecutar aplicaciones desarrolladas por un tercero o que accedan a datos, contenido o recursos proporcionados por un tercero, usted acepta que Google no es responsable de esas aplicaciones, datos, contenido ni recursos.
-
- Usted comprende que todos los datos, contenidos o recursos a los que podría acceder a través de esas aplicaciones de terceros son exclusiva responsabilidad de la persona que los origina y que Google no es responsable de las pérdidas ni los daños que usted pudiera experimentar como consecuencia del uso o acceso de cualquiera de esas aplicaciones, datos, contenido o recursos de terceros. 7.2 Usted debe saber que los datos, el contenido y los recursos que se le presentan a través de esa aplicación de un tercero pueden estar protegidos por derechos de propiedad intelectual que les pertenecen a sus proveedores (o a otras personas o compañías en representación de estos).
-
- No puede modificar, alquilar, arrendar, prestar, vender, distribuir ni crear obras derivadas basadas en esos datos, contenidos o recursos (en su totalidad o en parte), a menos que los propietarios pertinentes le hayan otorgado permiso específicamente para hacerlo. 7.3 Usted acepta que el uso que haga de las aplicaciones, los datos, el contenido o los recursos de ese tercero puede estar sujeto a términos independientes entre usted y el tercero correspondiente. 8.
-
-
-
- Uso de las API de Google 8.1 API de Google 8.1.1 Si utiliza alguna API para recuperar datos de Google, usted acepta que los datos pueden estar protegidos por derechos de propiedad intelectual que le pertenecen a Google o a las partes que proporcionan esos datos (o a otras personas o empresas en representación de estos).
-
-
-
- El uso que realice de cualquiera de esas API puede estar sujeto a términos de servicio adicionales. No puede modificar, alquilar, arrendar, prestar, vender, distribuir ni crear obras derivadas basadas en esos datos (en su totalidad o en parte), a menos que los términos de servicio correspondientes lo permitan. 8.1.2 Si utiliza alguna API para recuperar datos de un usuario de Google, usted acepta y acuerda que solo podrá recuperar datos con el consentimiento explícito del usuario y solo con los fines limitados para los que el usuario le haya otorgado permiso para hacerlo. 9.
-
-
-
- Finalización del Contrato de licencia 9.1 Este Contrato de licencia tendrá vigencia hasta que lo revoquen usted o Google, como se indica a continuación. 9.2 Si desea rescindir el Contrato de licencia, puede hacerlo al interrumpir el uso que realiza de la Versión preliminar y de las credenciales de desarrollador pertinentes. 9.3 Google puede, en cualquier momento, rescindir el Contrato de licencia, con causa o sin ella, después de notificárselo a usted. 9.4 El Contrato de licencia finalizará automáticamente, sin previo aviso ni acción alguna, tras la primera de las siguientes situaciones: (A) cuando Google deje de proporcionar la Versión preliminar o ciertas partes de esta a los usuarios en el país donde usted reside o desde el que utiliza el servicio; y (B) cuando Google emita una versión final del SDK de Android. 9.5 Si el Contrato de licencia se rescinde, se revocará la licencia que usted recibió en virtud de dicho contrato; usted deberá suspender inmediatamente todo uso de la Versión preliminar y las disposiciones de los párrafos 10, 11, 12 y 14 seguirán vigentes indefinidamente. 10.
-
-
-
-
-
-
-
-
-
-
-
-
-
- EXENCIONES DE RESPONSABILIDAD 10.1 USTED COMPRENDE Y ACEPTA EXPRESAMENTE QUE EL USO QUE REALICE DE LA VERSIÓN PRELIMINAR ES BAJO SU PROPIO RIESGO Y QUE LA VERSIÓN PRELIMINAR SE PROPORCIONA “EN LAS CONDICIONES EN LAS QUE SE ENCUENTRA” Y “SUJETA A DISPONIBILIDAD” SIN GARANTÍAS DE NINGÚN TIPO POR PARTE DE GOOGLE. 10.2 EL USO QUE USTED REALICE DE LA VERSIÓN PRELIMINAR Y DE TODO MATERIAL DESCARGADO U OBTENIDO DE ALGUNA OTRA MANERA MEDIANTE EL USO DE LA VERSIÓN PRELIMINAR ES A SU ENTERO RIESGO Y DISCRECIÓN, Y USTED ES EL ÚNICO RESPONSABLE DE CUALQUIER DAÑO QUE PUDIERA SUFRIR SU SISTEMA INFORMÁTICO U OTRO DISPOSITIVO, O DE LA PÉRDIDA DE DATOS COMO CONSECUENCIA DE DICHO USO.
-
-
-
- SIN PERJUICIO DE LO MENCIONADO ANTERIORMENTE, USTED COMPRENDE QUE LA VERSIÓN PRELIMINAR NO ES UNA VERSIÓN ESTABLE, Y PUEDE CONTENER ERRORES, DEFECTOS Y VULNERABILIDADES DE SEGURIDAD QUE PUEDEN PROVOCAR DAÑOS SIGNIFICATIVOS, LO QUE INCLUYE LA PÉRDIDA COMPLETA E IRRECUPERABLE DEL USO DE SU SISTEMA INFORMÁTICO U OTRO DISPOSITIVO. 10.3 GOOGLE TAMBIÉN RECHAZA TODAS LAS GARANTÍAS Y CONDICIONES DE CUALQUIER TIPO, EXPRESAS O IMPLÍCITAS, INCLUIDAS, ENTRE OTRAS, LAS GARANTÍAS Y CONDICIONES DE COMERCIABILIDAD, IDONEIDAD PARA UN FIN DETERMINADO Y NO VIOLACIÓN. 11.
-
-
-
- LIMITACIÓN DE RESPONSABILIDADES 11.1 USTED COMPRENDE Y ACEPTA EXPRESAMENTE QUE GOOGLE, SUS SUBSIDIARIAS Y FILIALES, Y SUS LICENCIANTES NO SERÁN RESPONSABLES ANTE USTED, EN VIRTUD DE NINGUNA TEORÍA DE RESPONSABILIDAD, POR NINGÚN DAÑO DIRECTO, INDIRECTO, INCIDENTAL, ESPECIAL, RESULTANTE NI PUNITIVO EN EL QUE PODRÍA HABER INCURRIDO, LO QUE INCLUYE LA PÉRDIDA DE DATOS, YA SEA QUE SE LE HAYA NOTIFICADO O NO A GOOGLE O A SUS REPRESENTANTES, O SOBRE CUYA POSIBILIDAD ESTOS DEBERÍAN HABER SABIDO. 12.
-
-
-
- Indemnización 12.1 Hasta el grado máximo que permita la ley, usted acepta defender, indemnizar y eximir de responsabilidades a Google, sus filiales y sus respectivos directores, funcionarios, empleados y agentes, de todo tipo de reclamo, acción legal y proceso judicial, así como de las pérdidas, responsabilidades, daños, costos y gastos (incluidos los honorarios razonables de abogados) que surjan o se acumulen (a) del uso que usted realiza de la Versión preliminar, (b) de cualquier aplicación que desarrolle en la Versión preliminar que infrinja algún derecho de propiedad intelectual de cualquier persona, o que difame a cualquier persona o viole sus derechos de publicidad o privacidad, y (c) del incumplimiento por su parte del Contrato de licencia. 13.
-
-
-
- Cambios en el Contrato de licencia 13.1 Google puede realizar cambios en el Contrato de licencia a medida que distribuye nuevas versiones de la Versión preliminar.
-
- Cuando se realicen esos cambios, Google emitirá una nueva versión del Contrato de licencia, que estará disponible en el sitio web donde se ponga a la venta la Versión preliminar. 14.
-
- Términos legales generales 14.1 El Contrato de licencia constituye el contrato legal integral entre usted y Google, y rige el uso que usted realice de la Versión preliminar (a excepción de los servicios que Google pueda proporcionarle en virtud de un contrato por escrito independiente), y reemplaza totalmente cualquier contrato anterior entre usted y Google en relación con la Versión preliminar. 14.2 Usted acepta que, si Google no ejerce ni impone un derecho o recurso legal especificados en el Contrato de licencia (o sobre el que Google tenga beneficios conforme a cualquier ley aplicable), esto no se considerará una renuncia formal a los derechos por parte de Google y Google aún seguirá recibiendo los beneficios de esos derechos o recursos legales. 14.3 Si algún tribunal judicial con jurisdicción para decidir sobre este asunto determina que alguna de las disposiciones de este Contrato de licencia no es válida, se eliminará esa disposición del Contrato de licencia sin que eso afecte la validez del resto del contrato.
-
-
-
-
-
- Las disposiciones restantes del Contrato de licencia continuarán siendo válidas y aplicables. 14.4 Usted reconoce y acepta que cada miembro del grupo de compañías de las que Google es la compañía central serán terceros beneficiarios del Contrato de licencia, y que esas otras empresas tendrán el derecho de imponer directamente cualquier disposición y ampararse en las disposiciones de este Contrato de licencia que les confieran un beneficio (o que confieran derechos a su favor).
-
- Además de esto, ninguna otra persona o compañía serán terceros beneficiarios del Contrato de licencia. 14.5 RESTRICCIONES DE EXPORTACIÓN.
-
- LA VERSIÓN PRELIMINAR ESTÁ SUJETA A LAS LEYES Y REGULACIONES DE EXPORTACIÓN DE LOS ESTADOS UNIDOS. DEBE CUMPLIR CON TODAS LAS LEYES Y REGULACIONES DE EXPORTACIÓN NACIONALES E INTERNACIONALES QUE SE APLIQUEN A LA VERSIÓN PRELIMINAR. ESTAS LEYES INCLUYEN RESTRICCIONES EN RELACIÓN CON LOS DESTINOS, USUARIOS FINALES Y USO FINAL. 14.6 Usted no puede asignar ni transferir el Contrato de licencia sin la aprobación previa por escrito de Google y todo intento de asignación sin dicha aprobación no tendrá validez.
-
- No podrá delegar sus responsabilidades u obligaciones otorgados en virtud del Contrato de licencia sin la aprobación previa por escrito de Google. 14.7 El Contrato de licencia y su relación con Google conforme al Contrato de licencia se regirán por las leyes del estado de California, independientemente de los principios de conflictos entre leyes.
-
- Usted y Google aceptan presentarse ante la jurisdicción exclusiva de los tribunales del condado de Santa Clara, California, para resolver cualquier asunto legal que pudiera surgir del Contrato de licencia. Sin perjuicio de esto, usted acepta que Google aún podrá aplicar reparaciones conforme a mandato judicial (o a un tipo equivalente de desagravio legal) en cualquier jurisdicción.
-  </div><!-- sdk terms -->
-
-
-
-    <div id="sdk-terms-form">
-      <p>
-        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
-        <label id="agreeLabel" for="agree">He leído y acepto los términos y las condiciones anteriores.</label>
-      </p>
-      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
-    </div>
-
-
-  </div><!-- end TOS -->
-
-
-  <div id="landing">
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Contenido del documento</h2>
-      <ol>
-        <li><a href="#sdk">Android 6.0 SDK</a></li>
-        <li><a href="#docs">Documentación para desarrolladores</a></li>
-        <li><a href="#images">Imágenes del sistema de hardware</a></li>
-      </ol>
-
-      <h2>Legacy downloads</h2>
-        <ol>
-           <li><a href="{@docRoot}preview/download_mp1.html">Developer Preview 1</a></li>
-		   <li><a href="{@docRoot}preview/download_mp2.html">Developer Preview 2</a></li>
-
-        </ol>
-  </div>
-</div>
-
-
-<p>
-  El SDK de la versión preliminar de Android M incluye herramientas de desarrollo, archivos de sistema de Android y archivos de biblioteca que lo ayudarán a probar su aplicación y las nuevas API que se incluirán en la próxima versión de la plataforma.
- En este documento, se describe la manera de obtener los componentes que se pueden descargar de la versión preliminar para probar su aplicación.
-
-</p>
-
-
-<h2 id="sdk">Android 6.0 SDK</h2>
-
-<p>
-  El SDK de la versión preliminar se encuentra disponible para descargarlo a través del <a href="{@docRoot}tools/help/sdk-manager.html">Administrador de SDK de Android</a>. Para obtener más información sobre cómo descargar y configurar el SDK de la versión preliminar, consulte la sección <a href="{@docRoot}preview/setup-sdk.html#downloadSdk">Configurar el SDK de la versión preliminar</a>.
-
-</p>
-
-
-<h2 id="docs">Documentación para desarrolladores</h2>
-
-<p>
-  El paquete de descarga de documentación para desarrolladores brinda información detallada de referencia sobre las API y un informe de diferencias de las API para la versión preliminar.
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Description</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="docs-dl">
-    <td>Android M Preview 3<br>Developer Docs</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >m-preview-3-developer-docs.zip</a><br>
-      MD5: d99b14b0c06d31c8dfecb25072654ca3<br>
-      SHA-1: 9cefeeda07676130da606a1796e1c00fffc667c1
-    </td>
-  </tr>
-</table>
-
-
-<h2 id="images">Imágenes del sistema de hardware</h2>
-
-<p>
-  Estas imágenes del sistema le permiten instalar una versión preliminar de la plataforma en un dispositivo físico para realizar pruebas.
- Al configurar un dispositivo con una de estas imágenes, puede instalar y probar su aplicación para ver cómo funciona en la próxima versión de la plataforma.
- El proceso de instalación de una imagen del sistema en un dispositivo <em>elimina todos los datos del dispositivo</em>, por lo que debe hacer una copia de seguridad de los datos antes de instalar una imagen del sistema.
-
-
-</p>
-
-<p class="warning">
-  <b>Advertencia:</b> Las siguientes imágenes del sistema de Android son versiones preliminares y están sujetas a cambios. El uso que haga de estas imágenes del sistema se rige por el Contrato de licencia de la versión preliminar del SDK de Android.
- Las imágenes del sistema de la versión preliminar de Android no son versiones estables y pueden contener errores y defectos que pueden generar daños en sus sistemas informáticos, dispositivos y datos.
-
- Las imágenes del sistema de la versión preliminar de Android no se someten a las mismas pruebas que el OS de fábrica y podrían hacer que el teléfono, y las aplicaciones y los servicios instalados dejen de funcionar.
-
-
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Device</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="hammerhead">
-    <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >hammerhead-MPA44I-preview-2ebbc049.tgz</a><br>
-      MD5: 91a924fb0c9f8e716e3b4c9954fd0dbb<br>
-      SHA-1: 2ebbc049b68c4da8baeee3e42bb94d7a965ba4a3
-    </td>
-  </tr>
-  <tr id="shamu">
-    <td>Nexus 6 <br>"shamu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >shamu-MPA44I-preview-62b9c486.tgz</a><br>
-      MD5: ac6e58da86125073d9c395257fd42664<br>
-      SHA-1: 62b9c486fd7a5020e228d53ca5acd5c1857e48ff
-    </td>
-  </tr>
-  <tr id="volantis">
-    <td>Nexus 9 <br>"volantis"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >volantis-MPA44I-preview-5c30a6e2.tgz</a><br>
-      MD5: 7f83768757913d3fea945a661020d185<br>
-      SHA-1: 5c30a6e2acd11a81f4105b12d23ff654f534f699
-    </td>
-  </tr>
-
-  <tr id="fugu">
-    <td>Nexus Player <br>"fugu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >fugu-MPA44I-preview-2860040a.tgz</a><br>
-      MD5: 438da8d37da9e341a69cfb16a4001ac5<br>
-      SHA-1: 2860040a326582f1ff5f702bf9a1ef002717fc98
-    </td>
-  </tr>
-
-</table>
-
-<h3 id="install-image">Instalar una imagen en un dispositivo</h3>
-
-<p>
-  Si desea utilizar una imagen del dispositivo para realizar pruebas, debe instalarla en un dispositivo compatible. Siga las instrucciones que se ofrecen a continuación para instalar una imagen del sistema:
-
-</p>
-
-<ol>
-  <li>Descargue y descomprima uno de los paquetes de imágenes del sistema que se enumeran aquí.</li>
-  <li>Realice una copia de seguridad de los datos del dispositivo que desee conservar.</li>
-  <li>Siga las instrucciones que se describen en el sitio <a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
- para actualizar la imagen en su dispositivo.
-</li>
-</ol>
-
-<p class="note">
-  <strong>Nota:</strong> Cuando haya actualizado un dispositivo de desarrollo con la imagen del sistema de la versión preliminar, se actualizará automáticamente con la próxima versión preliminar a través de actualizaciones OTA.
-
-</p>
-
-<h3 id="revertDevice">Restablecer las especificaciones de fábrica en un dispositivo</h3>
-
-<p>
-  Si desea desinstalar la versión preliminar y restablecer las especificaciones de fábrica en un dispositivo, visite el sitio <a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a> y descargue la imagen con la que desea actualizar su dispositivo.
-
- Siga las instrucciones que se describen en esa página para actualizar la imagen en su dispositivo.
-
-</p>
-
-  </div><!-- landing -->
-
-</div><!-- relative wrapper -->
-
-
-
-<script>
-  var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
-  function onDownload(link) {
-
-    $("#downloadForRealz").html("Download " + $(link).text());
-    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
-
-    $("#tos").fadeIn('fast');
-    $("#landing").fadeOut('fast');
-
-    return true;
-  }
-
-
-  function onAgreeChecked() {
-    /* verify that the TOS is agreed */
-    if ($("input#agree").is(":checked")) {
-      /* reveal the download button */
-      $("a#downloadForRealz").removeClass('disabled');
-    } else {
-      $("a#downloadForRealz").addClass('disabled');
-    }
-  }
-
-  function onDownloadForRealz(link) {
-    if ($("input#agree").is(':checked')) {
-    /*
-      $("#tos").fadeOut('fast');
-      $("#landing").fadeIn('fast');
-    */
-
-      ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
-
-    /*
-      location.hash = "";
-    */
-      return true;
-    } else {
-      return false;
-    }
-  }
-
-  $(window).hashchange( function(){
-    if (location.hash == "") {
-      location.reload();
-    }
-  });
-
-</script>
diff --git a/docs/html-intl/intl/es/preview/features/app-linking.jd b/docs/html-intl/intl/es/preview/features/app-linking.jd
deleted file mode 100644
index bd63559..0000000
--- a/docs/html-intl/intl/es/preview/features/app-linking.jd
+++ /dev/null
@@ -1,123 +0,0 @@
-page.title=Vínculos de la aplicación
-page.image=images/cards/card-app-linking_2x.png
-page.keywords=vínculo de la aplicación, vínculos profundos, intentos
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Contenido del documento</h2>
-      <ol>
-        <li><a href="#web-assoc">Declarar la asociación de un sitio web</a></li>
-        <li><a href="#verfy-links">Solicitar verificación del vínculo de la aplicación</a></li>
-        <li><a href="#user-manage">Gestionar las configuraciones del vínculo de la aplicación</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  El sistema Android Intent es un mecanismo flexible para permitir a las aplicaciones controlar contenido y solicitudes.
-  Es posible que múltiples aplicaciones declaren modelos URI coincidentes en sus filtros de intento. Cuando un usuario hace clic en un vínculo web que no tiene un controlador de inicio predeterminado, la plataforma puede mostrar un diálogo para que el usuario seleccione una opción de una lista de aplicaciones que han declarado filtros de intento coincidentes.
-
-
-</p>
-
-<p>
-  Android M Developer Preview ofrece soporte para los vínculos de la aplicación, lo que mejora los controles de vínculos existentes al permitir a los desarrolladores de la aplicación asociar una aplicación con un dominio web propio.
- Cuando los desarrolladores crean esta asociación, la plataforma puede determinar automáticamente la aplicación predeterminada utilizada para controlar un vínculo web particular y omitir el paso de solicitarles esta información a los usuarios.
-
-
-</p>
-
-
-<h2 id="web-assoc">Declarar una asociación de sitio web</h2>
-
-<p>
-  Los propietarios de un sitio web deben declarar las asociaciones con las aplicaciones a fin de establecer el vínculo de una aplicación. El propietario del sitio declara la relación con una aplicación al alojar un archivo JSON, denominado {@code statements.json}, en la ubicación conocida del domino:
-
-
-</p>
-
-<pre>http://&lt;domain&gt;:&lt;optional port&gt;/.well-known/statements.json</pre>
-
-<p class="note">
-  <strong>Nota:</strong>
-  Durante el período de M Developer Preview, el archivo JSON se verifica vía el protocolo http. Para la versión oficial de la plataforma, el archivo se verifica mediante el protocolo https cifrado.
-
-</p>
-
-<p>
-  Este archivo JSON indica la aplicación Android que se debe utilizar como el controlador predeterminado para las URL de este dominio.
- Identifica la aplicación según estos campos:
-</p>
-
-<ul>
-  <li>{@code package_name}: El nombre de paquete declarado en el manifiesto de la aplicación.</li>
-
-  <li>{@code sha256_cert_fingerprints}: La huella dactilar SHA256 del certificado de firma de su aplicación.
-    Puede usar la herramienta Keytool de Java para generar la huella dactilar mediante el siguiente comando:
-    <pre>keytool -list -v -keystore my-release-key.keystore</pre>
-  </li>
-</ul>
-
-<p>
-  El siguiente listado de archivo muestra un ejemplo de los contenidos y del formato de un archivo
-{@code statements.json}:
-</p>
-
-<pre>
-[{
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": "<strong>&lt;package name&gt;</strong>",
-    "sha256_cert_fingerprints": ["<strong>6C:EC:C5:0E:34:AE....EB:0C:9B</strong>"]
-  }
-}]
-</pre>
-
-
-<h2 id="verfy-links">Solicitar verificación del vínculo de la aplicación</h2>
-
-<p>
-  Una aplicación puede solicitar que la plataforma verifique automáticamente cualquier vínculo de aplicación definido por los nombres de host en los elementos de datos de sus filtros de intento, comparando con los archivos {@code statements.json} alojados en los respectivos dominios web.
-
- Para solicitar la verificación del vínculo de la aplicación, agregue un atributo {@code android:autoVerify} a cada filtro de intento deseado en el manifiesto, como se muestra en el siguiente fragmento de código de manifiesto:
-
-
-</p>
-
-<pre>
-&lt;activity ...&gt;
-    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-        &lt;action android:name="android.intent.action.VIEW" /&gt;
-        &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-        &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-        &lt;data android:scheme="http" android:host="www.android.com" /&gt;
-        &lt;data android:scheme="https" android:host="www.android.com" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/activity&gt;
-</pre>
-
-<p>
-  Cuando el atributo {@code android:autoVerify} está presente en un manifiesto de aplicación, la plataforma intenta verificar los vínculos de la aplicación al instalar la aplicación.
- Si la plataforma no puede verificar exitosamente los vínculos de la aplicación, la aplicación no se configura como la aplicación preferida para controlar los vínculos web.
- La próxima vez que un usuario abra uno de estos vínculos, la plataforma recurrirá a mostrar al usuario un diálogo.
-
-
-</p>
-
-<p class="note">
-  <strong>Nota:</strong> Durante la prueba, existe la posibilidad de un falso positivo si la verificación falla, pero el usuario ha habilitado explícitamente la aplicación para que abra los vínculos compatibles sin preguntar, utilizando la aplicación de Configuraciones del sistema. En este caso, no se muestra el diálogo y el vínculo se dirige directamente a su aplicación, pero solo debido a la configuración del usuario y no porque la verificación se haya realizado correctamente.
-
-
-
-</p>
-
-
-<h2 id="user-manage">Gestionar las configuraciones del vínculo de la aplicación</h2>
-
-<p>
-  Los usuarios pueden cambiar las configuraciones del vínculo de la aplicación de manera que las URL se controlen como ellos lo prefieran. Puede revisar y gestionar los vínculos de la aplicación en la aplicación de Configuraciones del sistema, en <strong>Settings &gt; Apps &gt; App Info &gt; Open by default</strong>.
-
-
-</p>
diff --git a/docs/html-intl/intl/es/preview/features/runtime-permissions.jd b/docs/html-intl/intl/es/preview/features/runtime-permissions.jd
deleted file mode 100644
index ce94f5b..0000000
--- a/docs/html-intl/intl/es/preview/features/runtime-permissions.jd
+++ /dev/null
@@ -1,794 +0,0 @@
-page.title=Permisos
-page.tags=previewresources, androidm
-page.keywords=permissions, runtime, preview
-page.image={@docRoot}preview/features/images/permissions_check.png
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Quickview</h2>
-    <ul>
-      <li>Si su aplicación tiene como destino el SDK de la versión preliminar de Android M, se solicitará a los usuarios que concedan permisos durante el tiempo de ejecución, en lugar de durante la instalación.
-</li>
-      <li>Los usuarios pueden cancelar los permisos en cualquier momento desde la pantalla Settings de la aplicación.
-</li>
-      <li>La aplicación necesita controlar los permisos cada vez que se ejecuta.
-</li>
-    </ul>
-
-    <h2>Contenido del documento</h2>
-    <ol>
-      <li><a href="#overview">Información general</a></li>
-      <li><a href="#coding">Codificación para permisos de tiempo de ejecución</a></li>
-      <li><a href="#testing">Prueba de permisos de tiempo de ejecución</a></li>
-      <li><a href="#best-practices">Mejores prácticas</a></li>
-    </ol>
-
-<!--
-  <h2>Related Samples</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-
-<!--
-  <h2>See also</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-  </div> <!-- qv -->
-</div> <!-- qv-wrapper -->
-
-
-<p>
-  M Developer Preview introduce un nuevo modelo de permisos de la aplicación que facilita a los usuarios el proceso de instalación y actualización de aplicaciones.
- Si una aplicación que se ejecuta en la versión preliminar de Android M es compatible con el nuevo modelo de permisos, el usuario no tiene que conceder ningún permiso al instalar o actualizar la aplicación. En su lugar, la aplicación solicitará los permisos a medida que los vaya necesitado y el sistema mostrará al usuario un diálogo en el que le solicitará los permisos necesarios.
-
-
-
-
-</p>
-
-<p>
-  Si la aplicación es compatible con el nuevo modelo de permisos, podrá instalarse y ejecutarse en los dispositivos con versiones anteriores de Android, utilizando el modelo de permisos anterior en esos dispositivos.
-
-
-</p>
-
-<h2 id="overview">
-  Información general
-</h2>
-
-<p>
-  En M Developer Preview, la plataforma introduce un nuevo modelo
-de permisos de la aplicación. A continuación, se presenta un resumen de los componentes principales de este nuevo modelo:
-</p>
-
-<ul>
-  <li>
-    <strong>Declaración de los permisos:</strong> Al igual que en las plataformas anteriores de Android, la aplicación declara todos los permisos que necesita en el manifiesto.
-
-  </li>
-
-  <li>
-    <strong>Grupos de permisos:</strong> Según su función, los permisos se dividen en
-<em>grupos de permisos</em>. Por ejemplo, el grupo de permisos
-<code>CONTACTS</code> contiene permisos para leer y escribir los contactos y la información de perfil del usuario.
-
-  </li>
-
-  <li>
-    <p><strong>Permisos limitados concedidos durante la instalación:</strong> Cuando el usuario instala o actualiza la aplicación, el sistema le concede a la aplicación todos los permisos que la aplicación solicita que corresponden a {@link
-    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}.
-
-
-    Por ejemplo, los permisos para la alarma y los permisos de intento corresponden a {@link
-    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}, por lo que se conceden automáticamente durante la instalación.
-
-    </p>
-
-    <p>El sistema puede concederle a la aplicación permisos de firma y de sistema, como se especifica en la sección <a href="#system-apps">Permisos de firma y de sistema de la aplicación</a>.
-
- Al usuario <em>no</em> se le solicitará conceder ningún permiso durante la instalación.
-</p>
-  </li>
-
-  <li>
-    <strong>Solicitud de permisos al usuario durante el tiempo de ejecución:</strong> Cuando la aplicación solicita un permiso, el sistema le muestra al usuario un diálogo y luego llama a la función de devolución de llamada de la aplicación para notificarle si el permiso se otorgó.
-
- Si el usuario concede un permiso, la aplicación recibe todos los permisos del área funcional de dicho permiso, los cuales fueron declarados en el manifiesto de la aplicación.
-
-
-  </li>
-
-</ul>
-
-<p>
-  Este modelo de permisos cambia la forma en la que la aplicación se comporta para características que requieren permisos.
- A continuación, se presenta un resumen de las prácticas de desarrollo que debe seguir para ajustarse a este modelo:
-
-</p>
-
-<ul>
-
-  <li>
-    <strong>Siempre compruebe los permisos:</strong> Siempre que una aplicación necesite realizar una acción que requiere algún permiso, primero debe comprobar si ya tiene otorgado ese permiso.
-
- En caso de no tenerlo, solicitará que se le otorgue ese permiso.
-
-  </li>
-
-  <li>
-    <strong>Administre la falta de permisos correctamente:</strong> Si la aplicación no recibe un permiso adecuado, deberá administrar la falla sin errores.
-
-    Por ejemplo, si se necesita el permiso solo para una característica añadida, la aplicación puede desactivar esa característica.
- Si el permiso es fundamental para que la aplicación funcione, la aplicación podrá desactivar toda su funcionalidad e informar al usuario que se deben conceder dichos permisos.
-
-
-  </li>
-
-  <div class="figure" style="width:220px" id="fig-perms-screen">
-    <img src="{@docRoot}preview/features/images/app-permissions-screen_2x.png" srcset="{@docRoot}preview/features/images/app-permissions-screen.png 1x, {@docRoot}preview/features/images/app-permissions-screen_2x.png 2x" alt="" width="220">
-    <p class="img-caption">
-      <strong>Figura 1</strong> Pantalla de permisos en Settings de la aplicación.
-    </p>
-  </div>
-
-  <li>
-    <strong>Los permisos son revocables:</strong> Los usuarios pueden revocar los permisos en cualquier momento.
- Si un usuario desactiva los permisos de una aplicación, la aplicación <em>no</em> recibe ningún aviso.
- Nuevamente, la aplicación deberá verificar que cuenta con los permisos necesarios antes de realizar cualquier acción restringida.
-
-  </li>
-</ul>
-
-<p class="note">
-  <strong>Nota:</strong> Si una aplicación tiene como destino M Developer Preview, <em>debe</em> utilizar el nuevo modelo de permisos.
-
-</p>
-
-<p>
-  A partir del lanzamiento de M Developer Preview, no todas las aplicaciones de Google implementarán por completo el nuevo modelo de permisos.
- Google actualiza estas aplicaciones durante el transcurso de M Developer Preview para respetar adecuadamente las configuraciones de alternancia de los permisos.
-
-
-</p>
-
-<p class="note">
-  <strong>Nota:</strong> Si la aplicación cuenta con su propia superficie de API, no transmita permisos sin antes asegurarse de que el iniciador de la llamada cuente con los permisos requeridos para acceder a esa información.
-
-
-</p>
-
-<h3 id="system-apps">
-  Permisos de las aplicaciones de firma y de sistema
-</h3>
-
-<p>
-  Generalmente, cuando el usuario instala una aplicación, el sistema solo otorga a la aplicación
-{@link android.content.pm.PermissionInfo#PROTECTION_NORMAL
-  PROTECTION_NORMAL}. Sin embargo, en ciertas circunstancias, el sistema le concede a la aplicación más permisos:
-
-</p>
-
-<ul>
-  <li>Si una aplicación es parte de la imagen del sistema, la aplicación recibe automáticamente todos los permisos enumerados en el manifiesto.
-
-  </li>
-
-  <li>Si la aplicación solicita permisos en el manifiesto que corresponden a {@link
-  android.content.pm.PermissionInfo#PROTECTION_SIGNATURE PROTECTION_SIGNATURE} y la aplicación está firmada con el mismo certificado que el de la aplicación que declaró dichos permisos, el sistema le concede a la aplicación que los solicita esos permisos durante la instalación.
-
-
-
-  </li>
-</ul>
-
-<p>
-  En ambos casos, el usuario aún puede revocar los permisos en cualquier momento si accede a la pantalla <strong>Settings</strong> del sistema y selecciona <strong>Apps &gt;</strong>
-
- <i>app_name</i> <strong>&gt; Permissions</strong>. La aplicación debe seguir controlando los permisos al momento de la ejecución y solicitarlos si fuese necesario.
-
-
-</p>
-
-<h3 id="compatibility">
-  Compatibilidad con modelos anteriores y posteriores
-</h3>
-
-<p>
-  Si una aplicación no tiene como destino M Developer Preview, la aplicación continúa utilizando el modelo de permisos anterior, incluso en dispositivos con la versión preliminar de Android M.
- Cuando el usuario instala la aplicación, el sistema le solicita al usuario que otorgue todos los permisos enumerados en el manifiesto de la aplicación.
-
-
-</p>
-
-<p class="note">
-  <strong>Nota:</strong> En dispositivos que ejecutan M Developer Preview, el usuario puede desactivar los permisos para cualquier aplicación (incluso para aplicaciones heredadas) desde la pantalla Settings de la aplicación.
-
- Si un usuario desactiva permisos para una aplicación heredada, el sistema desactiva las funciones correspondientes de forma automática.
- Cuando la aplicación intenta realizar una operación que requiere ese permiso, la operación no generará necesariamente una excepción.
-
- En su lugar, devolverá un conjunto de datos vacíos, indicará un error o, de lo contrario, mostrará un comportamiento inesperado.
- Por ejemplo, si realiza una consulta sobre el calendario sin permisos, el método devuelve un conjunto de datos vacíos.
-
-</p>
-
-<p>
-  Si instala una aplicación que utiliza el nuevo modelo de permisos en un dispositivo que no ejecuta la versión preliminar de Android M, el sistema la trata como cualquier otra aplicación: el sistema le pide al usuario, durante la instalación, que conceda los permisos declarados.
-
-
-
-</p>
-
-<p class="note">
-  <strong>Nota:</strong> Para el lanzamiento de la versión preliminar, debe configurar la versión mínima del SDK en M Preview SDK para compilar con la versión del SDK preliminar.
- Esto significa que no podrá probar dichas aplicaciones en plataformas anteriores durante la versión preliminar para desarrolladores.
-
-
-</p>
-
-<h3 id="perms-vs-intents">Permisos frente a intentos</h3>
-
-<p>
-  En muchas situaciones, puede elegir entre dos formas para que sus aplicaciones realicen una tarea.
- Puede hacer que su aplicación solicite permiso para realizar la operación por sí misma.
- De lo contrario, puede hacer que la aplicación utilice un intento para que otra aplicación realice la tarea.
-
-</p>
-
-<p>
-  Por ejemplo, supongamos que su aplicación necesita poder tomar fotografías con la cámara del dispositivo.
- Su aplicación puede solicitar el permiso
-<code>android.permission.CAMERA</code>, lo que le permite a su aplicación acceder a la cámara directamente.
- Entonces, su aplicación utilizará las API de la cámara para controlar la cámara y tomar una fotografía.
- Este enfoque le otorga a su aplicación total control del proceso de fotografía y le permite incorporar la UI de la cámara en su aplicación.
-
-
-</p>
-
-<p>
-  Sin embargo, si no necesita dicho control, puede utilizar {@link
-  android.provider.MediaStore#ACTION_IMAGE_CAPTURE ACTION_IMAGE_CAPTURE} para solicitar una imagen.
- Cuando ejecute el intento, se le solicita al usuario que elija una aplicación de cámara (en caso de que no haya una aplicación de cámara predeterminada) y esa aplicación tomará la fotografía.
-
- La aplicación de cámara devuelve la fotografía al método {@link
-  android.app.Activity#onActivityResult onActivityResult()} de su aplicación.
-</p>
-
-<p>
-  De manera similar, si necesita realizar una llamada telefónica, acceder a los contactos del usuario, etc., lo puede hacer creando intentos apropiados o puede solicitar los permisos e ingresar directamente a los objetos apropiados.
-
- Cada enfoque tiene ventajas y desventajas.
-
-</p>
-
-<p>
-  Si utiliza los permisos:
-</p>
-
-<ul>
-  <li>La aplicación posee total control sobre la experiencia del usuario cuando usted realiza la operación.
- Sin embargo, un control tan amplio complica su tarea, ya que usted deberá diseñar una UI apropiada.
-
-  </li>
-
-  <li>Se le solicita al usuario otorgar el permiso una vez, la primera vez que usted realiza la operación.
- Luego, su aplicación puede realizar la operación sin requerir interacción adicional por parte del usuario.
- Sin embargo, si el usuario no concede el permiso (o lo revoca luego), su aplicación queda inhabilitada para realizar la operación.
-
-
-  </li>
-</ul>
-
-<p>
-  Si utiliza un intento:
-</p>
-
-<ul>
-  <li>No debe diseñar la UI para la operación. La aplicación que controla el intento provee la UI. Sin embargo, esto significa que usted no tiene control sobre la experiencia del usuario.
-
- El usuario podrá interactuar con una aplicación que usted no conoce.
-
-  </li>
-
-  <li>Si el usuario no tiene una aplicación predeterminada para la operación, el sistema le solicita al usuario que elija una aplicación. Si el usuario no designa un controlador predeterminado, es probable que surja un diálogo adicional cada vez que realice la operación.
-
-
-
-  </li>
-</ul>
-
-<h2 id="coding">Codificación para permisos de tiempo de ejecución</h2>
-
-<p>
-  Si su aplicación tiene como destino el nuevo M Developer Preview, deberá usar el nuevo modelo de permisos.
-  Esto significa que, además de declarar los permisos necesarios en el manifiesto, también debe comprobar si tiene los permisos de tiempo de ejecución y solicitarlos en caso de no tenerlos.
-
-
-
-</p>
-
-<h3 id="enabling">
-  Habilitar el nuevo modelo de permisos
-</h3>
-
-<p>
-  Para habilitar el nuevo modelo de permisos de M Developer Preview, configure el atributo
-<code>targetSdkVersion</code> de la aplicación en <code>"MNC"</code> y
-<code>compileSdkVersion</code> en <code>"android-MNC"</code>. Al hacerlo, se habilitan todas las características de los nuevos permisos.
-
-</p>
-
-<p>
-  Para el lanzamiento de la versión preliminar, debe establecer <code>minSdkVersion</code> en
-<code>"MNC"</code> para compilar con el SDK preliminar.
-</p>
-
-<h3 id="m-only-perm">
-  Establecer un permiso solo para la versión preliminar de Android M
-</h3>
-
-<p>
-  Puede utilizar el nuevo elemento <code>&lt;uses-permission-sdk-m&gt;</code> en el manifiesto de la aplicación para indicar que se necesita un permiso solo para M Developer Preview.
- Si declara un permiso de esta manera, cuando la aplicación se instale en un dispositivo anterior, el sistema no le solicitará al usuario el permiso ni se lo otorgará a la aplicación. Al usar el elemento <code>&lt;uses-permission-sdk-m&gt;</code>, puede añadir nuevos permisos a las versiones actualizadas de su aplicación sin forzar a los usuarios a otorgar permisos cuando instalen la actualización.
-
-
-
-
-
-
-</p>
-
-<p>
-  Si la aplicación se ejecuta en un dispositivo con M Developer Preview,
-<code>&lt;uses-permission-sdk-m&gt;</code> se comporta al igual que
-<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>.
-  El sistema no le solicita al usuario que otorgue ningún permiso al instalar la aplicación y la aplicación solicita los permisos a medida que se necesiten.
-
-</p>
-
-<h3 id="prompting">
-  Solicitar permisos
-</h3>
-
-<p>
-  Si su aplicación utiliza el nuevo modelo de permisos de M Developer Preview, no se le pedirá al usuario que otorgue todos los permisos cuando la aplicación se ejecute por primera vez en un dispositivo con la versión preliminar de Android M.
-
- En su lugar, su aplicación solicita los permisos a medida que los necesita.
- Cuando su aplicación solicita un permiso, el sistema le muestra un diálogo al usuario.
-
-</p>
-
-<p>
-  Si su aplicación se ejecuta en un dispositivo con SDK 22 o anterior, la aplicación utiliza el modelo de permisos anterior.
- Cuando el usuario instala la aplicación, se le solicita que otorgue todos los permisos que la aplicación requiere en su manifiesto, excepto aquellos permisos marcados con <code>&lt;uses-permission-sdk-m&gt;</code>.
-
-
-</p>
-
-<h4 id="check-platform">Controlar en qué plataforma se ejecuta la aplicación</h4>
-
-<p>
-  Este modelo de permisos es compatible solamente con dispositivos que ejecutan M Developer Preview.
- Antes de llamar a cualquiera de estos métodos, la aplicación debe verificar en qué plataforma se está ejecutando y, para hacerlo, se controla el valor de {@link android.os.Build.VERSION#CODENAME
-  Build.VERSION.CODENAME}.
-
- Si el dispositivo ejecuta M Developer Preview,
-{@link android.os.Build.VERSION#CODENAME CODENAME} es <code>"MNC"</code>.
-</p>
-
-<h4 id="check-for-permission">Controlar si la aplicación cuenta con los permisos necesarios</h4>
-
-<p>Cuando el usuario intenta realizar algo que requiere un permiso, la aplicación controla si ya tiene el permiso para realizar esa operación.
- Para hacerlo, la aplicación llama a <code>Context.checkSelfPermission(
-
-<i>permission_name</i>)</code>. La aplicación debe realizar este control incluso si sabe que el usuario ya ha concedido ese permiso, ya que el usuario puede revocar los permisos de una aplicación en cualquier momento.
-
-
- Por ejemplo, si un usuario quiere usar una aplicación para tomar una fotografía, la aplicación llama a <code>Context.checkSelfPermission(Manifest.permission.CAMERA)</code>.
-
-</p>
-
-<p class="table-caption" id="permission-groups">
-  <strong>Tabla 1.</strong> Permisos y grupo de permisos.</p>
-<table>
-  <tr>
-    <th scope="col">Grupo de permisos</th>
-    <th scope="col">Permisos</th>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CALENDAR</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CALENDAR</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.WRITE_CALENDAR</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CAMERA</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.CAMERA</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CONTACTS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_PROFILE</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_PROFILE</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.LOCATION</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.ACCESS_FINE_LOCATION</code>
-        </li>
-        <li>
-          <code>android.permission.ACCESS_COARSE_LOCATION</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.MICROPHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.RECORD_AUDIO</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.PHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_PHONE_STATE</code>
-        </li>
-        <li>
-          <code>android.permission.CALL_PHONE</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CALL_LOG</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CALL_LOG</code>
-        </li>
-        <li>
-          <code>com.android.voicemail.permission.ADD_VOICEMAIL</code>
-        </li>
-        <li>
-          <code>android.permission.USE_SIP</code>
-        </li>
-        <li>
-          <code>android.permission.PROCESS_OUTGOING_CALLS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SENSORS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.BODY_SENSORS</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.USE_FINGERPRINT</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SMS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.SEND_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_WAP_PUSH</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_MMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CELL_BROADCASTS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-</table>
-
-<h4 id="request-permissions">Solicitar permisos si se necesitan</h4>
-
-<p>Si la aplicación no posee los permisos que necesita, llama al método
-<code>Activity.requestPermissions(String[], int)</code> para solicitar el permiso o los permisos apropiados.
- La aplicación pasa el permiso o los permisos que necesita y un “código de solicitud” entero.
-
-  Este método funciona de manera asincrónica: realiza la devolución inmediatamente y cuando el usuario responde a la ventana de diálogo, el sistema llama al método de devolución de llamada de la aplicación con los resultados, y pasa el mismo “código de solicitud” que pasó la aplicación a
-<code>requestPermissions()</code>.
-
-</p>
-
-  <p>El siguiente código verifica si la aplicación tiene permisos para leer los contactos del usuario y solicita los permisos de ser necesario:
-</p>
-
-<pre>
-if (checkSelfPermission(Manifest.permission.READ_CONTACTS)
-        != PackageManager.PERMISSION_GRANTED) {
-    requestPermissions(new String[]{Manifest.permission.READ_CONTACTS},
-            MY_PERMISSIONS_REQUEST_READ_CONTACTS);
-
-    // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
-    // app-defined int constant
-
-    return;
-}
-</pre>
-
-<h4 id="handle-response">Administrar la respuesta a la solicitud de permisos</h4>
-
-<p>
-  Cuando una aplicación solicita permisos, el sistema le muestra al usuario una ventana de diálogo.
- Cuando el usuario responde, el sistema invoca
-<code>Activity.onRequestPermissionsResult(int, String[], int[])</code>
- de su aplicación y le transfiere la respuesta del usuario. Su aplicación necesita invalidar ese método. La devolución de llamada pasa el mismo código de solicitud que usted pasó a <code>requestPermissions()</code>.
-
- Por ejemplo, si una aplicación solicita acceso <code>READ_CONTACTS</code>, es posible que tenga el siguiente método de devolución de llamada:
-
-
-</p>
-
-<pre>
-&#64;Override
-public void onRequestPermissionsResult(int requestCode,
-        String permissions[], int[] grantResults) {
-    switch (requestCode) {
-        case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
-            if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
-
-                // permission was granted, yay! do the
-                // calendar task you need to do.
-
-            } else {
-
-                // permission denied, boo! Disable the
-                // functionality that depends on this permission.
-            }
-            return;
-        }
-
-        // other 'switch' lines to check for other
-        // permissions this app might request
-    }
-}
-</pre>
-
-  <p>Si el usuario concede un permiso, el sistema le otorga a la aplicación todos los permisos enumerados en el manifiesto para esa área funcional.
- Se deben tomar acciones apropiadas si el usuario rechaza la solicitud.
- Por ejemplo, usted podría desactivar cualquier acción del menú que dependa de este permiso.
-
-  </li>
-</p>
-
-<p>
-  Cuando el sistema le solicita al usuario que otorgue un permiso, el usuario tiene la opción de indicarle al sistema que no solicite ese permiso de nuevo.
- En ese caso, cuando la aplicación utiliza <code>requestPermissions()</code> para solicitar ese permiso, el sistema rechaza la solicitud inmediatamente.
-
- En este caso, el sistema llama a su <code>onRequestPermissionsResult()</code> de la misma manera en que lo haría si el usuario hubiese rechazado explícitamente su solicitud nuevamente.
-
- Por esta razón, su aplicación no puede asumir que se ha llevado a cabo algún tipo de interacción con el usuario.
-
-</p>
-
-<h2 id="testing">Prueba de permisos de tiempo de ejecución</h2>
-
-
-<p>
-  Si su aplicación tiene como destino M Developer Preview, debe probar que administre los permisos correctamente.
- No debe asumir que su aplicación tiene algún permiso en particular cuando se ejecuta.
- Cuando la aplicación se ejecuta por primera vez, es muy probable que no tenga permisos y el usuario puede revocar o reestablecer los permisos en cualquier momento.
-
-
-</p>
-
-<p>
-  Debe probar su aplicación para asegurarse de que funciona correctamente en todas las situaciones de permisos.
- Con el SDK de la versión preliminar de Android M, hemos brindado nuevos comandos <a href="{@docRoot}tools/help/adb.html">Android Debug Bridge (adb)</a> que le permitirán probar su aplicación con cualquier configuración de permisos que necesite probar.
-
-
-
-</p>
-
-<h3>
-  Nuevas opciones y comandos adb
-</h3>
-
-<p>
-  Las herramientas de plataforma del SDK de la versión preliminar de Android M contienen varios comandos nuevos que le permiten probar la manera en que su aplicación administra los permisos.
-
-</p>
-
-<h4>
-  Instalar con permisos
-</h4>
-
-<p>
-  Puede utilizar la nueva opción <code>-g</code> del comando <a href="{@docRoot}tools/help/adb.html#move"><code>adb
-  install</code></a>, que instala la aplicación y concede todos los permisos enumerados en el manifiesto de la aplicación:
-
-</p>
-
-<pre class="no-pretty-print">
-$ adb install -g &lt;path_to_apk&gt;
-</pre>
-
-<h4>
-  Conceder y revocar permisos
-</h4>
-
-<p>
-  Puede utilizar los comandos ADB nuevos <a href="{@docRoot}tools/help/adb.html#pm">package manager (pm)</a> para conceder y revocar permisos a una aplicación instalada. Esta funcionalidad puede resultar útil para pruebas automáticas.
-
-
-</p>
-
-<p>
-  Para conceder un permiso, utilice el comando <code>grant</code> de package manager:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<p>
-  Por ejemplo, para conceder el paquete de permisos com.example.myapp para grabar audio utilice este comando:
-
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant com.example.myapp android.permission.RECORD_AUDIO
-</pre>
-
-<p>
-  Para revocar un permiso, utilice el comando <code>revoke</code> de package manager:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm revoke &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<h2 id="best-practices">Mejores prácticas</h2>
-
-<p>
-  El nuevo modelo de permisos brinda a los usuarios una experiencia más fluida y les facilita la instalación de aplicaciones, además de hacerlos sentir cómodos con las actividades de sus aplicaciones.
-
- Sugerimos las siguientes mejores prácticas para obtener el mayor beneficio del nuevo modelo.
-
-</p>
-
-
-<h3 id="bp-what-you-need">Solicite solo los permisos que necesite</h3>
-
-<p>
-  Cada vez que solicite un permiso, usted obliga al usuario a tomar una decisión.
-  La funcionalidad de su aplicación se verá reducida si el usuario rechaza la solicitud.
-  Debe minimizar la cantidad de veces que realiza estas solicitudes.
-</p>
-
-<p>
-  Por ejemplo, a menudo, su aplicación puede obtener la funcionalidad necesaria a través de un <a href="{@docRoot}guide/components/intents-filters.html">intento</a> en lugar de una solicitud de permiso.
-
- Si su aplicación necesita tomar fotografías con la cámara del teléfono, la aplicación puede utilizar un intento {@link
-  android.provider.MediaStore#ACTION_IMAGE_CAPTURE
-  MediaStore.ACTION_IMAGE_CAPTURE}.
-  Cuando su aplicación ejecuta el intento, el sistema le solicita al usuario que elija una aplicación para la cámara que ya está instalada a fin de tomar la fotografía.
-
-
-</p>
-
-<h3 id="bp-dont-overwhelm">
-  No abrume al usuario
-</h3>
-
-<p>
-  Si expone al usuario a muchas solicitudes de permisos al mismo tiempo, lo abrumará y hará que deje de usar su aplicación. Por el contrario, debe pedir permisos en la medida que los necesite.
-
-
-</p>
-
-<p>
-  A veces, uno o más permisos pueden ser absolutamente necesarios para la aplicación. En ese caso, es recomendable pedir todos los permisos no bien se inicie la aplicación.
-
- Por ejemplo, si crea una aplicación de fotografía, la aplicación necesitará acceso a la cámara del dispositivo.
- Cuando el usuario inicie la aplicación por primera vez, no se sorprenderá si la aplicación le solicita permiso para usar la cámara.
-
- Sin embargo, si la misma aplicación además tuviese una característica para compartir fotografías con los contactos del usuario, <em>no</em> solicite ese permiso la primera vez que se ejecute.
-
- En su lugar, espere hasta que el usuario utilice la característica “compartir” para solicitar el permiso en ese momento.
-
-</p>
-
-<p>
-  Si su aplicación proporciona un tutorial, se recomienda que se pidan los permisos esenciales de la aplicación al final del tutorial.
-
-</p>
-
-<h3 id="bp-explain">
-  Explique por qué se necesitan los permisos
-</h3>
-
-<p>
-  El diálogo de permisos que muestra el sistema cuando llama a
- <code>requestPermissions()</code> informa qué permisos necesita su aplicación pero no establece el motivo.
- A veces, el usuario puede confundirse.
-  Es una buena idea explicarle al usuario los motivos por los que la aplicación necesita esos permisos antes de llamar a <code>requestPermissions()</code>.
-
-</p>
-
-<p>
-  Por ejemplo, una aplicación de fotografía puede solicitar servicios de ubicación para añadir una etiqueta geográfica a las fotografías.
- Es posible que un usuario típico no sepa que una fotografía puede contener información sobre la ubicación y se confundiría si una aplicación de fotografía solicita la ubicación.
-
- En este caso, es recomendable que la aplicación le informe al usuario acerca de esta característica <em>antes</em> de llamar a
-<code>requestPermissions()</code>.
-
-</p>
-
-<p>
-  Una forma de hacerlo es incorporar estas solicitudes en el tutorial de la aplicación. El tutorial puede mostrar todas las características de la aplicación, una por vez, y mientras lo hace explicar los permisos que son necesarios.
-
- Por ejemplo, el tutorial de la aplicación de fotografía puede mostrar la característica “compartir fotografías con contactos” y luego explicarle al usuario que debe otorgar permisos para que la aplicación vea los contactos del usuario.
-
-
- La aplicación puede entonces llamar a <code>requestPermissions()</code> para solicitarle al usuario ese acceso.
- Por supuesto, no todos los usuarios siguen el tutorial, por lo que aun así debe controlar y solicitar los permisos durante el funcionamiento normal de la aplicación.
-
-
-</p>
diff --git a/docs/html-intl/intl/es/preview/index.jd b/docs/html-intl/intl/es/preview/index.jd
deleted file mode 100644
index 547b5b0..0000000
--- a/docs/html-intl/intl/es/preview/index.jd
+++ /dev/null
@@ -1,72 +0,0 @@
-page.title=Android M Developer Preview
-page.tags="preview",
-meta.tags="preview, M preview", androidm
-fullpage=true
-section.landing=true
-header.hide=1
-footer.hide=1
-@jd:body
-
-<section class="dac-expand dac-hero dac-light" >
-  <div class="wrap">
-    <div class="cols dac-hero-content">
-      <div class="col-9of16 col-push-7of16 dac-hero-figure">
-        <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png" srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
-             {@docRoot}images/home/devices-hero_620px_2x.png 2x">
-      </div>
-      <div class="col-7of16 col-pull-9of16">
-        <h1 class="dac-hero-title">Android M Developer Preview</h1>
-        <p class="dac-hero-description">
-          Prepárese para la próxima versión de Android. Pruebe sus aplicaciones en Nexus 5, 6, 9 y Player.
- Explore las novedades en los&mdash; <strong>permisos de ejecución</strong>, las características de ahorro de energía <strong>Doze</strong> y <strong>App Standby</strong>, la nueva <strong>tecnología de asistencia</strong> y mucho más.
-
-
-        </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/overview.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          ¡Empiece hoy mismo!</a>
-<br>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-
-      </div>
-    </div>
-    <div class="dac-section dac-small">
-      <div class="resource-widget resource-flow-layout col-16"
-           data-query="collection:preview/landing/resources"
-           data-cardSizes="6x2"
-           data-maxResults="6"></div>
-    </div>
-  </div>
-</section>
-
-<section class="dac-section dac-gray"><div class="wrap">
-  <h1 class="dac-section-title">Recursos</h1>
-  <div class="dac-section-subtitle">
-    Información esencial para ayudarlo a preparar sus aplicaciones para Android M.
-  </div>
-
-  <div class="resource-widget resource-flow-layout col-16"
-       data-query="collection:preview/landing/more"
-       data-cardSizes="6x6"
-       data-maxResults="16"></div>
-
-    <ul class="dac-section-links">
-      <li class="dac-section-link">
-        <a href="https://code.google.com/p/android-developer-preview/">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Informe los problemas
-        </a>
-      </li>
-      <li class="dac-section-link"><a href="http://g.co/dev/AndroidMDevPreview">
-        <span class="dac-sprite dac-auto-chevron"></span>
-        Únase a la comunidad en G+        </a>
-
-      </li>
-    </ul>
-  </div>
-</section>
-
diff --git a/docs/html-intl/intl/es/preview/license.jd b/docs/html-intl/intl/es/preview/license.jd
deleted file mode 100644
index 7222801..0000000
--- a/docs/html-intl/intl/es/preview/license.jd
+++ /dev/null
@@ -1,143 +0,0 @@
-page.title=Contrato de licencia
-
-@jd:body
-
-<p>
-Para comenzar con la versión preliminar del SDK de Android, debe aceptar los términos y las condiciones que se describen a continuación. 
-Como se describe a continuación, tenga en cuenta que esta es una versión preliminar del SDK de Android, que está sujeta a cambios y que usted utiliza bajo su cuenta y riesgo.  La versión preliminar del SDK de Android no es una versión estable y puede contener errores y defectos que pueden provocar daños graves a sus sistemas informáticos, dispositivos y datos.
-</p>
-
-<p>
-Este es el Contrato de licencia de la versión preliminar del SDK de Android (el “Contrato de licencia”).
-</p>
-<div class="sdk-terms" style="height:auto;border:0;padding:0;width:700px">
-1. Introducción
-
-1.1 Se le otorga la licencia de la versión preliminar del SDK de Android (denominada “Versión preliminar” en el Contrato de licencia e incluye específicamente los archivos de sistema de Android, las API agrupadas y los archivos de biblioteca de la Versión preliminar, si se encuentran disponibles), sujeto a los términos del Contrato de licencia. El Contrato de licencia establece una relación legal vinculante entre usted y Google en relación con el uso que usted realice de la Versión preliminar.
-
-1.2 “Android” hace referencia al conjunto de soluciones Android para dispositivos, según se encuentre disponible en el Proyecto de código abierto de Android (Android Open Source Project), que se encuentra en la siguiente URL: http://source.android.com/, y según se actualiza periódicamente.
-
-1.3 “Google” hace referencia a Google Inc., una corporación de Delaware, con sede principal en 1600 Amphitheatre Parkway, Mountain View, CA 94043, Estados Unidos.
-
-2. Aceptación del Contrato de licencia
-
-2.1 Para poder utilizar la Versión preliminar, primero debe aceptar el Contrato de licencia. Si no acepta el Contrato de licencia, no podrá utilizar la Versión preliminar.
-
-2.2 Al hacer clic para aceptar o utilizar la Versión preliminar, por medio del presente, usted acepta los términos del Contrato de licencia.
-
-2.3 Usted no puede utilizar la Versión preliminar ni aceptar el Contrato de licencia si tiene prohibido recibir la Versión preliminar en virtud de las leyes de los Estados Unidos o de otros países, lo que incluye el país donde es residente o desde el que utilizará la Versión preliminar.
-
-2.4 Si usted utilizará la Versión preliminar de forma interna, dentro de su compañía u organización, usted acepta quedar sujeto al Contrato de licencia en representación de su empleador u otra entidad, y expresa y garantiza que tiene plena autoridad legal para vincular a su empleador o a dicha entidad al Contrato de licencia. Si no posee la autoridad exigida, no podrá aceptar el Contrato de licencia ni usar la Versión preliminar en representación de su empleador u otra entidad.
-
-3. Licencia de la Versión preliminar de Google
-
-3.1 Sujeto a los términos del Contrato de licencia, Google le otorga una licencia libre de regalías, no asignable, no exclusiva, no transferible a terceros, limitada y revocable para utilizar la Versión preliminar, de forma personal o interna dentro de su compañía u organización, únicamente para desarrollar aplicaciones para ejecutar en la plataforma de Android.
-
-3.2 Usted acepta que Google u otros terceros poseen todos los derechos legales, títulos e intereses en relación con la Versión preliminar, incluidos los Derechos de propiedad intelectual que existan en la Versión preliminar. Los “Derechos de propiedad intelectual” hacen referencia a todos y cada uno de los derechos en virtud de las leyes de patentes, derechos de autor, secreto comercial y marca comercial, y todos los demás derechos de propiedad. Google se reserva todos los derechos que no se le otorguen expresamente.
-
-3.3 No podrá utilizar la Versión preliminar para ningún otro propósito que no esté expresamente permitido en el Contrato de licencia. Excepto en la medida que lo exijan las licencias correspondientes de terceros, no podrá: (a) copiar (excepto con fines de copia de seguridad), modificar, adaptar, redistribuir, descompilar, utilizar técnicas de ingeniería inversa, desarmar ni crear trabajos derivados de la Versión preliminar ni de ninguna de sus partes; ni (b) cargar ninguna parte de la Versión preliminar en un teléfono móvil ni en ningún otro dispositivo de hardware (a excepción de una computadora personal), ni podrá combinar ninguna parte de la Versión preliminar con otro software, ni distribuir algún software o dispositivo que incorpore alguna parte de la Versión preliminar.
-
-3.4 Usted acepta que no tomará medidas que pudieran provocar la fragmentación de Android, incluidas, entre otras, la distribución y la participación en la creación o la promoción de un kit de desarrollo de software derivado de la Versión preliminar.
-
-3.5 El uso, la reproducción y la distribución de los componentes de la Versión preliminar con licencia de software de código abierto están regidos exclusivamente por los términos de la licencia de ese software de código abierto y no de este Contrato de licencia. Usted acepta mantener la licencia en buenas condiciones con respecto a dichas licencias de software de código abierto en virtud de todos los derechos otorgados y acepta abstenerse de realizar alguna acción que pueda poner fin, suspender o violar dichos derechos.
-
-3.6 Usted acepta que la forma y la naturaleza de la Versión preliminar que proporciona Google pueden cambiar sin brindarle aviso previo y que las versiones futuras de la Versión preliminar pueden ser incompatibles con las aplicaciones desarrolladas en versiones anteriores de la Versión preliminar. Usted acepta que Google puede (de forma permanente o temporal) dejar de proporcionarles la Versión preliminar (o cualquiera de las características incluidas en ella) a usted o a los usuarios, generalmente, a criterio exclusivo de Google, sin brindarle aviso previo.
-
-3.7 Ninguna declaración de este Contrato de licencia le otorga el derecho de utilizar alguno de los nombres comerciales, las marcas comerciales, las marcas de servicio, los logotipos, los nombres de dominio ni otras características distintivas de marca de Google.
-
-3.8 Usted acepta que no eliminará, ocultará ni alterará ninguno de los avisos de derechos de propiedad (lo que incluye los avisos de marca comercial y derechos de autor) que pudieran estar anexados o incluidos en la Versión preliminar.
-
-4. Uso que usted realiza de la Versión preliminar
-
-4.1 Google acepta que ninguna declaración del Contrato de licencia le concede a Google derecho, título o interés alguno de su parte (o de parte de sus licenciantes), en virtud del Contrato de licencia, con respecto a las aplicaciones de software que usted desarrolle mediante el uso de la Versión preliminar, lo que incluye los derechos de propiedad intelectual que conlleven esas aplicaciones.
-
-4.2 Usted acepta utilizar la Versión preliminar y escribir aplicaciones únicamente conforme a lo que permite (a) este Contrato de licencia y (b) las leyes, regulaciones, o prácticas y pautas generalmente aceptadas pertinentes en las jurisdicciones relevantes (lo que incluye las leyes sobre la exportación de datos o software hacia los Estados Unidos u otros países relevantes y desde ellos). 
-
-4.3 Usted acepta que si utiliza la Versión preliminar para desarrollar aplicaciones, protegerá la privacidad y los derechos legales de los usuarios. Si los usuarios le proporcionan sus nombres de usuario, contraseñas u otra información de inicio de sesión o información personal, debe comunicarles a los usuarios que la información se encontrará disponible para su aplicación, y debe proporcionarles a dichos usuarios un aviso de privacidad con protección y validez legal. Si su aplicación almacena información personal o confidencial proporcionada por los usuarios, lo debe hacer de forma segura. Si los usuarios le proporcionan información sobre la cuenta de Google, su aplicación solo puede usar esa información para acceder a la cuenta de Google del usuario siempre que este le haya otorgado permiso para hacerlo y con los fines para los que se lo haya otorgado.
-
-4.4 Usted acepta que no participará en ninguna actividad con la Versión preliminar (lo que incluye el desarrollo o la distribución de una aplicación) que interfiera, interrumpa, dañe o acceda sin autorización a servidores, redes u otras propiedades o servicios de Google o de algún tercero.
-
-4.5 Usted acepta que es el único responsable (y que Google no asume responsabilidades hacia usted ni terceros) de los datos, el contenido o los recursos que usted cree, transmita o muestre a través de Android o las aplicaciones para Android, y de las consecuencias de sus acciones (lo que incluye la pérdida o el daño que Google pudiera sufrir) al hacerlo.
-
-4.6 Usted acepta que es el único responsable (y que Google no asume responsabilidades hacia usted ni terceros) de cualquier incumplimiento de sus obligaciones en virtud de este Contrato de licencia, los contratos aplicables de terceros o los términos del servicio, o cualquier ley o regulación pertinentes, y de las consecuencias (lo que incluye las pérdidas o los daños que pudieran sufrir Google o algún tercero) de dichos incumplimientos.
-
-4.7 La Versión preliminar se encuentra en desarrollo, y sus pruebas y comentarios son una parte importante del proceso de desarrollo. Al utilizar la Versión preliminar, usted reconoce que la implementación de algunas características aún se encuentra en desarrollo y que no debe confiar en que la Versión preliminar contará con todas las funcionalidades de una versión estable. Usted acepta no distribuir públicamente ni enviar ninguna aplicación que utilice esta Versión preliminar, ya que esta Versión preliminar ya no se admitirá tras el lanzamiento del SDK oficial de Android.
-
-5. Sus credenciales de desarrollador
-
-5.1 Usted acepta que es responsable de mantener la confidencialidad de toda credencial de desarrollador que Google pudiera otorgarle o que usted pudiera escoger, y que será el único responsable de todas las aplicaciones que se desarrollen con sus credenciales de desarrollador.
-
-6. Privacidad e información
-
-6.1 A fin de poder innovar y mejorar de forma continua la Versión preliminar, Google podría recopilar ciertas estadísticas de uso del software, lo que incluye, entre otras características, un identificador único, la dirección IP asociada, el número de versión del software e información sobre las herramientas o los servicios de la Versión preliminar que se estén utilizando y la manera en que se estén utilizando. Antes de que se recopile esta información, la Versión preliminar se lo notificará y le solicitará su permiso. Si no otorga su permiso, no se recopilará la información.
-
-6.2 Los datos recopilados se analizan en el agregado para mejorar la Versión preliminar y se conservan de acuerdo con la política de privacidad de Google que se encuentra en el sitio http://www.google.com/policies/privacy/.
-
-7. Aplicaciones de terceros
-
-7.1 Si utiliza la Versión preliminar para ejecutar aplicaciones desarrolladas por un tercero o que accedan a datos, contenido o recursos proporcionados por un tercero, usted acepta que Google no es responsable de esas aplicaciones, datos, contenido ni recursos. Usted comprende que todos los datos, contenidos o recursos a los que podría acceder a través de esas aplicaciones de terceros son exclusiva responsabilidad de la persona que los origina y que Google no es responsable de las pérdidas ni los daños que usted pudiera experimentar como consecuencia del uso o acceso de cualquiera de esas aplicaciones, datos, contenido o recursos de terceros.
-
-7.2 Usted debe saber que los datos, el contenido y los recursos que se le presentan a través de esa aplicación de un tercero pueden estar protegidos por derechos de propiedad intelectual que les pertenecen a sus proveedores (o a otras personas o compañías en representación de estos). No puede modificar, alquilar, arrendar, prestar, vender, distribuir ni crear obras derivadas basadas en esos datos, contenidos o recursos (en su totalidad o en parte), a menos que los propietarios pertinentes le hayan otorgado permiso específicamente para hacerlo.
-
-7.3 Usted acepta que el uso que haga de las aplicaciones, los datos, el contenido o los recursos de ese tercero puede estar sujeto a términos independientes entre usted y el tercero correspondiente.
-
-8. Uso de las API de Google
-
-8.1 API de Google
-
-8.1.1 Si utiliza alguna API para recuperar datos de Google, usted acepta que los datos pueden estar protegidos por derechos de propiedad intelectual que le pertenecen a Google o a las partes que proporcionan esos datos (o a otras personas o empresas en representación de estos). El uso que realice de cualquiera de esas API puede estar sujeto a términos de servicio adicionales. No puede modificar, alquilar, arrendar, prestar, vender, distribuir ni crear obras derivadas basadas en esos datos (en su totalidad o en parte), a menos que los términos de servicio correspondientes lo permitan.
-
-8.1.2 Si utiliza alguna API para recuperar datos de un usuario de Google, usted acepta y acuerda que solo podrá recuperar datos con el consentimiento explícito del usuario y solo con los fines limitados para los que el usuario le haya otorgado permiso para hacerlo.
-
-9. Finalización del Contrato de licencia
-
-9.1 Este Contrato de licencia tendrá vigencia hasta que lo revoquen usted o Google, como se indica a continuación.
-
-9.2 Si desea rescindir el Contrato de licencia, puede hacerlo al interrumpir el uso que realiza de la Versión preliminar y de las credenciales de desarrollador pertinentes.
-
-9.3 Google puede, en cualquier momento, rescindir el Contrato de licencia, con causa o sin ella, después de notificárselo a usted.
-
-9.4 El Contrato de licencia finalizará automáticamente, sin previo aviso ni acción alguna, tras la primera de las siguientes situaciones:
-(A) cuando Google deje de proporcionar la Versión preliminar o ciertas partes de esta a los usuarios en el país donde usted reside o desde el que utiliza el servicio; y
-(B) cuando Google emita una versión final del SDK de Android.
-
-9.5 Si el Contrato de licencia se rescinde, se revocará la licencia que usted recibió en virtud de dicho contrato; usted deberá suspender inmediatamente todo uso de la Versión preliminar y las disposiciones de los párrafos 10, 11, 12 y 14 seguirán vigentes indefinidamente.
-
-10. EXENCIONES DE RESPONSABILIDAD
-
-10.1 USTED COMPRENDE Y ACEPTA EXPRESAMENTE QUE EL USO QUE REALICE DE LA VERSIÓN PRELIMINAR ES BAJO SU PROPIO RIESGO Y QUE LA VERSIÓN PRELIMINAR SE PROPORCIONA “EN LAS CONDICIONES EN LAS QUE SE ENCUENTRA” Y “SUJETA A DISPONIBILIDAD” SIN GARANTÍAS DE NINGÚN TIPO POR PARTE DE GOOGLE.
-
-10.2 EL USO QUE USTED REALICE DE LA VERSIÓN PRELIMINAR Y DE TODO MATERIAL DESCARGADO U OBTENIDO DE ALGUNA OTRA MANERA MEDIANTE EL USO DE LA VERSIÓN PRELIMINAR ES A SU ENTERO RIESGO Y DISCRECIÓN, Y USTED ES EL ÚNICO RESPONSABLE DE CUALQUIER DAÑO QUE PUDIERA SUFRIR SU SISTEMA INFORMÁTICO U OTRO DISPOSITIVO, O DE LA PÉRDIDA DE DATOS COMO CONSECUENCIA DE DICHO USO. SIN PERJUICIO DE LO MENCIONADO ANTERIORMENTE, USTED COMPRENDE QUE LA VERSIÓN PRELIMINAR NO ES UNA VERSIÓN ESTABLE, Y PUEDE CONTENER ERRORES, DEFECTOS Y VULNERABILIDADES DE SEGURIDAD QUE PUEDEN PROVOCAR DAÑOS SIGNIFICATIVOS, LO QUE INCLUYE LA PÉRDIDA COMPLETA E IRRECUPERABLE DEL USO DE SU SISTEMA INFORMÁTICO U OTRO DISPOSITIVO.
-
-10.3 GOOGLE TAMBIÉN RECHAZA TODAS LAS GARANTÍAS Y CONDICIONES DE CUALQUIER TIPO, EXPRESAS O IMPLÍCITAS, INCLUIDAS, ENTRE OTRAS, LAS GARANTÍAS Y CONDICIONES DE COMERCIABILIDAD, IDONEIDAD PARA UN FIN DETERMINADO Y NO VIOLACIÓN.
-
-11. LIMITACIÓN DE RESPONSABILIDADES
-
-11.1 USTED COMPRENDE Y ACEPTA EXPRESAMENTE QUE GOOGLE, SUS SUBSIDIARIAS Y FILIALES, Y SUS LICENCIANTES NO SERÁN RESPONSABLES ANTE USTED, EN VIRTUD DE NINGUNA TEORÍA DE RESPONSABILIDAD, POR NINGÚN DAÑO DIRECTO, INDIRECTO, INCIDENTAL, ESPECIAL, RESULTANTE NI PUNITIVO EN EL QUE PODRÍA HABER INCURRIDO, LO QUE INCLUYE LA PÉRDIDA DE DATOS, YA SEA QUE SE LE HAYA NOTIFICADO O NO A GOOGLE O A SUS REPRESENTANTES, O SOBRE CUYA POSIBILIDAD ESTOS DEBERÍAN HABER SABIDO.
-
-12. Indemnización
-
-12.1 Hasta el grado máximo que permita la ley, usted acepta defender, indemnizar y eximir de responsabilidades a Google, sus filiales y sus respectivos directores, funcionarios, empleados y agentes, de todo tipo de reclamo, acción legal y proceso judicial, así como de las pérdidas, responsabilidades, daños, costos y gastos (incluidos los honorarios razonables de abogados) que surjan o se acumulen (a) del uso que usted realiza de la Versión preliminar, (b) de cualquier aplicación que desarrolle en la Versión preliminar que infrinja algún derecho de propiedad intelectual de cualquier persona, o que difame a cualquier persona o viole sus derechos de publicidad o privacidad, y (c) del incumplimiento por su parte del Contrato de licencia.
-
-13. Cambios en el Contrato de licencia
-
-13.1 Google puede realizar cambios en el Contrato de licencia a medida que distribuye nuevas versiones de la Versión preliminar. Cuando se realicen esos cambios, Google emitirá una nueva versión del Contrato de licencia, que estará disponible en el sitio web donde se ponga a la venta la Versión preliminar.
-
-14. Términos legales generales
-
-14.1 El Contrato de licencia constituye el contrato legal integral entre usted y Google, y rige el uso que usted realice de la Versión preliminar (a excepción de los servicios que Google pueda proporcionarle en virtud de un contrato por escrito independiente), y reemplaza totalmente cualquier contrato anterior entre usted y Google en relación con la Versión preliminar.
-
-14.2 Usted acepta que, si Google no ejerce ni impone un derecho o recurso legal especificados en el Contrato de licencia (o sobre el que Google tenga beneficios conforme a cualquier ley aplicable), esto no se considerará una renuncia formal a los derechos por parte de Google y Google aún seguirá recibiendo los beneficios de esos derechos o recursos legales.
-
-14.3 Si algún tribunal judicial con jurisdicción para decidir sobre este asunto determina que alguna de las disposiciones de este Contrato de licencia no es válida, se eliminará esa disposición del Contrato de licencia sin que eso afecte la validez del resto del contrato. Las disposiciones restantes del Contrato de licencia continuarán siendo válidas y aplicables.
-
-14.4 Usted reconoce y acepta que cada miembro del grupo de compañías de las que Google es la compañía central serán terceros beneficiarios del Contrato de licencia, y que esas otras empresas tendrán el derecho de imponer directamente cualquier disposición y ampararse en las disposiciones de este Contrato de licencia que les confieran un beneficio (o que confieran derechos a su favor). Además de esto, ninguna otra persona o compañía serán terceros beneficiarios del Contrato de licencia.
-
-14.5 RESTRICCIONES DE EXPORTACIÓN. LA VERSIÓN PRELIMINAR ESTÁ SUJETA A LAS LEYES Y REGULACIONES DE EXPORTACIÓN DE LOS ESTADOS UNIDOS. DEBE CUMPLIR CON TODAS LAS LEYES Y REGULACIONES DE EXPORTACIÓN NACIONALES E INTERNACIONALES QUE SE APLIQUEN A LA VERSIÓN PRELIMINAR. ESTAS LEYES INCLUYEN RESTRICCIONES EN RELACIÓN CON LOS DESTINOS, USUARIOS FINALES Y USO FINAL.
-
-14.6 Usted no puede asignar ni transferir el Contrato de licencia sin la aprobación previa por escrito de Google y todo intento de asignación sin dicha aprobación no tendrá validez. No podrá delegar sus responsabilidades u obligaciones otorgadas en virtud del Contrato de licencia sin la aprobación previa por escrito de Google.
-
-14.7 El Contrato de licencia y su relación con Google conforme al Contrato de licencia se regirán por las leyes del estado de California, independientemente de los principios de conflictos entre leyes. Usted y Google aceptan presentarse ante la jurisdicción exclusiva de los tribunales del condado de Santa Clara, California, para resolver cualquier asunto legal que pudiera surgir del Contrato de licencia. Sin perjuicio de esto, usted acepta que Google aún podrá aplicar reparaciones conforme a mandato judicial (o a un tipo equivalente de desagravio legal) en cualquier jurisdicción.
-
-
-</div>
\ No newline at end of file
diff --git a/docs/html-intl/intl/es/preview/overview.jd b/docs/html-intl/intl/es/preview/overview.jd
deleted file mode 100644
index 2cd2130..0000000
--- a/docs/html-intl/intl/es/preview/overview.jd
+++ /dev/null
@@ -1,389 +0,0 @@
-page.title=Información general del programa
-page.metaDescription=Bienvenido a Android M Developer Preview, el programa que le brinda todo lo que necesita para probar y optimizar sus aplicaciones para la próxima versión de Android.
-page.image=images/cards/card-preview_16-9_2x.png
-page.tags="preview", "developer", "android"
-
-@jd:body
-
-<div class="cols" style=
-"background-color:#ffebc3; padding: 5px 0;margin-bottom:1em; text-align:center;">
-<h3>
-    Developer Preview 2 is now available
-  </h3>
-
- <ul class="dac-section-links">
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-notes">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Read the Notes</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-get">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Get the Update</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="https://code.google.com/p/android-developer-preview/">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Report Issues</a>
-    </li>
-  </ul>
-</div>
-
-<p>
-  Bienvenido a <strong>Android M Developer Preview</strong>, el programa que le brinda todo lo que necesita para probar y optimizar sus aplicaciones para la próxima versión de Android.
-
- Es gratis y puede comenzar a utilizarlo ahora mismo. Solo tiene que descargar las herramientas de M Developer Preview.
-
-</p>
-
-<div style="background-color:#eceff1;padding:1em;">
-<div class="wrap">
-  <div class="cols">
-    <div class="col-4of12">
-      <h5>
-        Imágenes del sistema emulador y de hardware
-      </h5>
-
-      <p>
-        Ejecute y pruebe sus aplicaciones en Nexus 5, 6, 9 y Player (para TV), además del emulador.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Último código de la plataforma
-      </h5>
-
-      <p>
-        Durante la versión preliminar, ofreceremos múltiples actualizaciones, por lo que usted realizará la prueba comparando los últimos cambios de la plataforma.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Actualizaciones vía OTA
-      </h5>
-
-      <p>
-        Luego de actualizar su dispositivo a la versión preliminar inicial, usted podrá obtener actualizaciones por red inalámbrica (over-the-air, OTA).
-
-      </p>
-    </div>
-  </div>
-
-  <div class="cols">
-
-
-    <div class="col-4of12">
-      <h5>
-        Nuevos comportamientos y capacidades
-      </h5>
-
-      <p>
-        Inicie el funcionamiento con anticipación para admitir los comportamientos de la nueva plataforma como el nuevo modelo de permisos de tiempos de ejecución y las opciones de ahorro de energía.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Ventana de prioridad para los problemas informados por los desarrolladores
-      </h5>
-
-      <p>
-        Durante las primeras semanas, daremos prioridad a los problemas informados por los desarrolladores; por lo tanto, realice las pruebas y envíe sus comentarios lo antes posible.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Comentarios y soporte
-      </h5>
-
-      <p>
-        Infórmenos los problemas y envíenos comentarios a través de nuestro <a href="https://code.google.com/p/android-developer-preview/">seguimiento de problemas</a>.
-        Póngase en contacto con otros desarrolladores de la comunidad <a href="http://g.co/dev/AndroidMDevPreview">M&nbsp;Developer Community</a>.
-
-      </p>
-    </div>
-  </div>
-</div>
-</div>
-
-<!--
-<p>
-  With the M Developer Preview, you'll get an early start on testing your apps,
-  with enough time to make adjustments before the public platform release later
-  in the year. We'll provide several updates to the Preview tools in the weeks
-  ahead, so you can keep in sync with the latest changes as the platform moves
-  toward launch.
-</p>
-<img src="{@docRoot}preview/images/m-preview-timeline.png" alt=
-"Preview program timeline" id="timeline">
-<p>
-  You can help us improve the platform by <a href=
-  "https://code.google.com/p/android-developer-preview/">reporting issues</a>
-  through our feedback channels. This is especially
-  critical in the first month of the preview, when we’ll be giving priority to
-  developer-reported issues and feedback.
-</p> -->
-
-
-<h2 id="timeline">
-  Escala de tiempo y actualizaciones
-</h2>
-<img src="{@docRoot}preview/images/m-preview-timeline-crop.png" alt="Preview program timeline" id="timeline">
-<p>
-  M Developer Preview estará disponible a partir del 28 de mayo hasta la versión final del SDK de Android M, que lanzaremos al poco tiempo del lanzamiento público durante el tercer trimestre de 2015.
-
-
-</p>
-
-<p>
-  En momentos clave del desarrollo, lanzaremos actualizaciones para sus dispositivos de prueba.
-  Los momentos clave tentativos son los siguientes:
-</p>
-
-<ul>
-  <li>
-    <strong>Preview&nbsp;1</strong> (lanzamiento inicial de la versión preliminar, fines de mayo)
-  </li>
-
-  <li>
-    <strong>Preview&nbsp;2</strong> (fines de junio, comienzos de julio)
-  </li>
-
-  <li>
-    <strong>Preview&nbsp;3</strong> (casi la versión final, a fines de julio)
-  </li>
-</ul>
-
-<p>
-  Estas actualizaciones terminan con el <strong>SDK final</strong> (más adelante durante el tercer trimestre), lo que proporcionará tanto las API oficiales para la nueva versión de Android como los comportamientos y las características finales del sistema.
-
-
-</p>
-
-<p>
-  A medida que usted prueba y desarrolla en Android M, le recomendamos que <strong>mantenga su entorno de desarrollo actualizado</strong> a medida que se lanzan las actualizaciones de la versión preliminar.
-
-  Para que el proceso sea más fácil, lanzaremos <strong>actualizaciones OTA</strong> para los dispositivos que ya hayan sido actualizados a una compilación de la versión preliminar y brindaremos imágenes del sistema que puede descargar y actualizar manualmente.
-
-
-</p>
-<p class="note">
-  <strong>Nota:</strong> El SDK final y las imágenes del sistema no se pueden proporcionar vía OTA y deberán <strong>actualizarse manualmente</strong> en sus dispositivos de prueba.</strong>
-
-
-</p>
-
-<p>
-  Le informaremos cuando las actualizaciones de la versión preliminar se encuentren disponibles a través del blog de Android para desarrolladores (<a href="http://android-developers.blogspot.com/">Android Developers Blog</a>), de este sitio y de la comunidad de desarrolladores <a href="http://g.co/dev/AndroidMDevPreview">Android M Developer Community</a>.
-
-
-</p>
-
-<h2 id="preview_tools">
-  ¿Qué ofrece la versión preliminar?
-</h2>
-
-<p>
-  M Developer Preview incluye todo lo que necesita para probar sus aplicaciones actuales en una variedad de tamaños de pantalla, de tecnologías de redes, de conjuntos de chip CPU/GPU y de arquitecturas de hardware.
-
-
-</p>
-
-<h4>
-  Herramientas del SDK
-</h4>
-
-<p>
-  Estos componentes se pueden descargar mediante SDK Manager en <a href="{@docRoot}sdk/installing/adding-packages.html">Android Studio</a>:
-</p>
-
-<ul>
-  <li><strong>Herramientas del SDK</strong> de M Developer Preview
-  </li>
-
-  <li><strong>Imagen del sistema emulador</strong> (32-bit y 64-bit) de M Developer Preview
-
-  </li>
-
-  <li><strong>Imagen del sistema emulador para Android TV</strong> (32-bit) de M Developer Preview
-
-  </li>
-</ul>
-
-<h4>
-  Imágenes del sistema de hardware
-</h4>
-
-<p>
-  Puede descargar estas imágenes del sistema de hardware para dispositivos Nexus desde la <a href="download.html">página de Descargas</a>:
-
-</p>
-
-<ul>
-  <li>
-    <strong>Nexus 5</strong> (GSM/LTE) imagen del sistema del dispositivo “hammerhead”
-  </li>
-
-  <li>
-    <strong>Nexus 6</strong> imagen del sistema del dispositivo “shamu”
-  </li>
-
-  <li>
-    <strong>Nexus 9</strong> (Wi-Fi) imagen del sistema del dispositivo “volantis”
-  </li>
-
-  <li>
-    <strong>Nexus Player</strong> (Android TV) imagen del sistema del dispositivo “fugu”
-  </li>
-</ul>
-
-<h4>
-  Documentación y código de muestra
-</h4>
-
-<p>
-  Estos recursos de documentación lo ayudan a obtener información sobre la versión preliminar:
-</p>
-
-<ul>
-  <li>
-    <a href="setup-sdk.html">Configurar el SDK</a>: contiene instrucciones paso a paso para comenzar.
-
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/testing/guide.html">Guía de prueba</a> y <a href="behavior-changes.html">Cambios en los comportamientos</a>: le indican las áreas más importantes que debe probar.
-  </li>
-
-  <li>Documentación sobre las nuevas API, lo que incluye <a href="api-overview.html">Información general de la API</a>, <a href="{@docRoot}preview/download.html#docs">Referencia de la API</a> que se puede descargar y guías detalladas para desarrolladores sobre características clave como <a href="{@docRoot}preview/features/runtime-permissions.html">permisos</a>, <a href="{@docRoot}preview/backup/index.html">copias de seguridad de la aplicación</a>, entre otras.
-
-
-
-
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/samples.html">Código de ejemplo</a>: indica cómo admitir permisos y otras características nuevas.
-
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/support.html#release-notes">Notas de la versión</a> para la versión actual de M Developer Preview, lo que incluye notas sobre los cambios e informes de diferencias.
-
-  </li>
-</ul>
-
-<h4>
-  Recursos de soporte
-</h4>
-
-<p>
-  Utilice los siguientes recursos de soporte durante el proceso de prueba y desarrollo en M Developer Preview:
-
-</p>
-
-<ul>
-  <li><a href="https://code.google.com/p/android-developer-preview/">El seguimiento de problemas de M Developer Preview</a> es su<strong> canal principal de comentarios.</strong>
-
- A través de este seguimiento de problemas, usted puede informarnos errores o problemas de rendimiento, y enviarnos comentarios generales.
- También puede buscar <a href="https://code.google.com/p/android-developer-preview/wiki/KnownIssues">problemas recurrentes</a> y encontrar soluciones alternativas detalladas.
-
-  </li>
-
-  <li><a href="http://g.co/dev/AndroidMDevPreview">Android M Developer Community</a> es una comunidad en Google+ donde usted puede <strong>contactarse con otros desarrolladores</strong> que estén trabajando con Android M. Puede compartir comentarios o ideas, o encontrar respuestas a sus dudas sobre Android M.
-
-
-
-  </li>
-</ul>
-
-
-<h2 id="preview_apis_and_publishing">
-  Selección del destino, API preliminares y publicación
-</h2>
-
-<p>
-  Android M Developer Preview es una versión solo para desarrollo y <strong>no tiene un nivel de API estándar</strong>.
- Si quiere darse de baja de los comportamientos de compatibilidad para probar su aplicación (lo que es muy recomendado), puede elegir como destino M Developer Preview estableciendo <code><a href=
-  "/guide/topics/manifest/uses-sdk-element.html">targetSdkVersion</a></code> de su aplicación como <code>“MNC”</code>.
-
-
-
-</p>
-
-<p>
-  Android M Developer Preview ofrece <strong>API preliminares</strong>
- &mdash; las API no serán oficiales hasta que se lance el SDK final, lo que actualmente está planeado para el tercer trimestre de 2015.
- Esto quiere decir que surgirán <strong>cambios menores en la API</strong> con el tiempo, particularmente durante las primeras semanas del programa.
-
- Con cada actualización de Android M Developer Preview, proporcionaremos un resumen con los cambios realizados.
-
-</p>
-
-<p class="note">
-  Tenga en cuenta que aunque las API preliminares pueden modificarse, los comportamientos del sistema subyacente, como los permisos de tiempo de ejecución y las opciones de ahorro de energía, se mantienen estables y disponibles para cualquier prueba inmediata.
-
-
-</p>
-
-<p>
-  En cuanto a la publicación, Google Play <strong>no permite que se publiquen aplicaciones que tienen como destino M Developer Preview</strong>.
- Una vez que el SDK final de Android M esté disponible, podrá seleccionar como destino el nivel de API oficial de Android M y publicar su aplicación en Google Play.
-
- Mientras tanto, si desea distribuir una aplicación con Android M como destino a otros evaluadores, lo puede hacer por correo electrónico o mediante descarga directa desde su sitio.
-
-
-</p>
-
-<h2 id="get_started">
-  ¿Cómo comenzar?
-</h2>
-
-<p>
-  Para comenzar a probar su aplicación:
-</p>
-
-<ol>
-  <li>Revise el artículo <a href="{@docRoot}preview/api-overview.html">Información general de la API</a> y <a href="{@docRoot}preview/behavior-changes.html">Cambios en los comportamientos</a> para obtener una idea sobre las novedades y cómo estas pueden afectar sus aplicaciones.
-
- En especial, infórmese sobre el nuevo modelo de <a href="{@docRoot}preview/features/runtime-permissions.html">permisos de tiempo de ejecución</a>, las opciones de ahorro de energía y las copias de seguridad automáticas.
-
-
-  </li>
-
-  <li>Configure su entorno siguiendo las instrucciones para <a href="{@docRoot}preview/setup-sdk.html">Configurar el SDK de la versión preliminar</a> y configurar los dispositivos de prueba.
-
-
-  </li>
-
-  <li>Siga las <a href="https://developers.google.com/android/nexus/images">instrucciones de actualización</a> para actualizar la última imagen del sistema del desarrollador de Android M para Nexus 5, 6, 9 y Player.
-
- Cuando haya actualizado su dispositivo de desarrollo, recibirá las actualizaciones de la versión preliminar mediante actualizaciones OTA.</a>
-
-  </li>
-
-  <li>Descargue la <a href="{@docRoot}preview/download.html#docs">Referencia de la API de M Preview</a> y los <a href="{@docRoot}preview/samples.html">Ejemplos de M Preview</a> para obtener más información sobre las nuevas características de la API y sobre cómo utilizarlas en su aplicación.
-
-
-
-  </li>
-
-  <li>Únase a la comunidad <a href="http://g.co/dev/AndroidMDevPreview">Android M Developer Community</a> para recibir las últimas noticias y para contactarse con otros desarrolladores que estén trabajando con la nueva plataforma.
-
-
-  </li>
-</ol>
-
-<p>
-  ¡Agradecemos su participación en el programa Android M Developer Preview!
-</p>
diff --git a/docs/html-intl/intl/es/preview/samples.jd b/docs/html-intl/intl/es/preview/samples.jd
deleted file mode 100644
index 03f41e4..0000000
--- a/docs/html-intl/intl/es/preview/samples.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=Ejemplos
-page.image=images/cards/samples-new_2x.png
-@jd:body
-
-<p>
-  Los siguientes códigos de ejemplo se proporcionan para M Developer Preview. Para descargar los ejemplos en Android Studio, seleccione la opción del menú <b>File &gt; Import Samples</b>.
-
-</p>
-
-<p class="note">
-  <strong>Nota:</strong> Estos proyectos que se pueden descargar están diseñados para usarlos con Gradle y Android Studio.
-
-</p>
-
-
-<h3 id="RuntimePermissions">Permisos de tiempo de ejecución</h3>
-
-<p>
- Android M modifica la manera en que funcionan los permisos del sistema. Los usuarios deben aprobar solicitudes de permiso durante la ejecución, en lugar de durante la instalación.
- Este ejemplo muestra cómo solicitar estos permisos.
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-RuntimePermissions">Obtener en GitHub</a></p>
-
-<h3 id="ConfirmCredentials">Confirmar credencial</h3>
-
-<p>
- Este ejemplo muestra cómo usar las credenciales del dispositivo como método de autenticación en su aplicación.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ConfirmCredential">Obtener en GitHub</a>
-</p>
-
-<h3 id="FingerprintDialog">Diálogo de huellas dactilares</h3>
-
-<p>
- Este ejemplo muestra cómo reconocer huellas dactilares registradas para autenticar al usuario en su aplicación.
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-FingerprintDialog">Obtener en GitHub</a></p>
-
-<h3 id="AutomaticBackup">Copia de seguridad automática para aplicaciones</h3>
-
-<p>
- Android M incorpora la copia de seguridad automática para las configuraciones de la aplicación. Este ejemplo muestra cómo agregar reglas de filtrado en una aplicación para administrar la copia de seguridad de las configuraciones.
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-AutoBackupForApps">Obtener en GitHub</a></p>
-
-<h3 id="CameraRaw">Camera 2 Raw</h3>
-
-<p>
-  Muestra cómo usar la API <code>Camera2</code> para capturar imágenes fotográficas RAW y guardarlas como archivos <code>DNG</code>.
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-Camera2Raw">Obtener en GitHub</a></p>
-
-<h3 id="ActiveNotification">Notificación activa</h3>
-
-<p>
-  Este ejemplo muestra cómo <a href="{@docRoot}reference/android/app/NotificationManager.html"><code>NotificationManager</code></a> puede indicarle cuántas notificaciones está mostrando actualmente su aplicación.
-
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ActiveNotifications">Obtener en GitHub</a></p>
diff --git a/docs/html-intl/intl/es/preview/setup-sdk.jd b/docs/html-intl/intl/es/preview/setup-sdk.jd
deleted file mode 100644
index e3f400f..0000000
--- a/docs/html-intl/intl/es/preview/setup-sdk.jd
+++ /dev/null
@@ -1,207 +0,0 @@
-page.title=Configurar el SDK de la versión preliminar
-page.image=images/cards/card-set-up_16-9_2x.png
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Contenido del documento</h2>
-      <ol>
-        <li><a href="#get-as13">Obtener Android Studio 1.3</a></li>
-        <li><a href="#get-sdk">Obtener el SDK de la versión preliminar</a></li>
-        <li><a href="#create-update">Crear o actualizar un proyecto</a></li>
-        <li><a href="#setup-test">Configurar para realizar pruebas</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>M Developer Preview SDK se encuentra disponible desde Android SDK Manager. En este documento, se asume que usted está familiarizado con el desarrollo de aplicaciones de Android, como el uso de Android SDK Manager y la creación de proyectos.
-
- Si no está familiarizado con Android, consulte primero la sección de capacitación <a href="{@docRoot}training/basics/firstapp/index.html">Desarrollo de su primera aplicación</a>.</a>
-
-</p>
-
-<h2 id="get-as13">Obtener Android Studio 1.3</h2>
-
-<p>La versión preliminar para desarrolladores funciona mejor con Android Studio 1.3, que es una versión preliminar.
- Se recomienda que instale la versión preliminar de Android Studio 1.3 para trabajar con el SDK de la versión preliminar.
-</p>
-
-<p class="caution"><strong>Advertencia:</strong> La versión preliminar Canary de Android Studio 1.3 aún se encuentra en desarrollo activo.
- Si utiliza su equipo de desarrollo principal para probar la versión preliminar para desarrolladores, puede instalar una segunda instancia de Android para realizar las pruebas.
-
-</p>
-
-<p>Para instalar la versión preliminar de Android Studio 1.3:</p>
-
-<ol>
-  <li>Descargue y ejecute <a href="{@docRoot}tools/studio/index.html">Android Studio</a>
-
-  </li>
-
-  <li>Abra la ventana <strong>Settings</strong> (en Windows, puede hacerlo desde <strong>File &gt; Settings</strong>).
- Seleccione el panel <strong>Appearance &amp; Behavior &gt; System  Settings &gt; Updates</strong>.
-
-
-
-    <p class="aside">En OSX, puede encontrar el panel <strong>Appearance &amp; Behavior</strong> en la ventana <strong>Preferences</strong> de Android Studio.
-
-</p>
-  </li>
-
-  <li> En el panel <strong>Updates</strong>, elija la opción <strong>Automatically check updates for:
- Canary Channel</strong>.
-  </li>
-
-  <li>En el panel <strong>Updates</strong>, elija <strong>Check Now</strong> para verificar la última compilación de Canary.
- Descargue e instale la compilación cuando se lo pida.
-
-  </li>
-</ol>
-
-<h2 id="get-sdk">Obtener el SDK de la versión preliminar</h2>
-
-<p>Para añadir los componentes del SDK de la versión preliminar a su entorno de desarrollo:</p>
-
-<ol>
-  <li>Ejecute la versión preliminar de Android Studio 1.3.
-  </li>
-
-  <li>Abra la ventana <strong>Settings</strong> (en Windows, puede hacerlo desde <strong>File &gt; Settings</strong>).
- Seleccione el panel <strong>Appearance &amp; Behavior &gt; System  Settings &gt; Updates</strong>.
-
-
-
-    <p class="aside">En OSX, puede encontrar el panel <strong>Appearance &amp; Behavior</strong> en la ventana <strong>Preferences</strong> de Android Studio.
-
-</p>
-  </li>
-
-  <li>En el panel <strong>Updates</strong>, elija las opciones <strong>Automatically check updates for:
- Canary Channel</strong> y <strong>Automatically check updates for Android SDK:
- Preview Channel</strong>.
-  </li>
-
-  <li>Ejecute <strong>Android SDK Manager</strong>. (En Android Studio 1.3, SDK Manager está integrado a Android Studio, en lugar de ser una aplicación independiente).
-
-
-  </li>
-
-  <li>En la sección <strong>Platforms</strong>, elija <strong>Android MNC Preview</strong>.
-
-  </li>
-
-  <li>En la sección <strong>Tools</strong>, elija las últimas <strong>SDK Tools</strong>, <strong>Platform-tools</strong> y <strong>Build-tools</strong> de Android.
-
-
-  </li>
-
-  <li>Seleccione <strong>Install packages</strong> y acepte el contrato de licencia para todos los paquetes.
-
-  </li>
-
-  <li>Verifique que M Developer Preview esté instalado; para hacerlo, abra la ventana <strong>Settings</strong> y elija el panel <strong>Appearance &amp; Behavior &gt; System Settings &gt; Android SDK</strong>.
-
-</li>
-
-  <li>En el panel <strong>Android SDK</strong>, elija la pestaña <strong>SDK Platforms</strong>.
- <strong>Android MNC Preview</strong> deberá figurar como <em>Installed</em>.
- Luego, abra la pestaña <strong>SDK Tools</strong> para verificar que estén instaladas las últimas herramientas.
-
-
-  </li>
-</ol>
-<p>Después de completar estos pasos, los componentes de la versión preliminar ya estarán disponibles en su entorno de desarrollo.
- </p>
-
-
-<h2 id="create-update">Crear o actualizar un proyecto</h2>
-
-<p>
-  Si desea utilizar las API de la versión preliminar, debe crear o actualizar un proyecto de desarrollo para utilizar los componentes de la versión preliminar.
-
-</p>
-
-
-<h3 id="create">Crear un proyecto nuevo</h3>
-
-<p>
-  Recomendamos que utilice Android Studio para crear un proyecto con la versión preliminar. Siga los pasos que se describen en <a href="{@docRoot}sdk/installing/create-project.html">Crear un proyecto</a> hasta que llegue a la pantalla <em>Form Factors</em> en el asistente.
-
- Luego, realice los siguientes pasos para crear un proyecto configurado para la versión preliminar.
-
-</p>
-
-<ul>
-  <li>Seleccione <strong>Phone and Tablet</strong>.</li>
-  <li>Seleccione <strong>MNC: Android M (Preview)</strong> en <strong>Minimum SDK</strong>.
-</li>
-</ul>
-
-
-<h3 id="update">Actualizar un proyecto existente</h3>
-
-<p>
-  Para proyectos existentes, debe modificar la configuración del proyecto para habilitar las API de la versión preliminar. En su entorno de desarrollo, abra el archivo 
-<code>build.gradle</code> para su módulo y configure estos valores de la siguiente manera:
-
-</p>
-
-<ul>
-  <li><code>compileSdkVersion</code> se configura en <code>'android-MNC'</code></li>
-  <li><code>minSdkVersion</code> se configura en <code>'MNC'</code></li>
-  <li><code>targetSdkVersion</code> se configura en <code>'MNC'</code></li>
-</ul>
-
-
-<h2 id="setup-test">Configurar para realizar pruebas</h2>
-
-<p>
-  Probar una aplicación con la versión preliminar requiere un dispositivo o un dispositivo virtual configurado con la versión preliminar de la plataforma.
- Si tiene un dispositivo compatible, puede instalar la plataforma de la versión preliminar para realizar la prueba.
- De lo contrario, puede configurar un dispositivo virtual para realizar la prueba.
-</p>
-
-<h3 id="setup-device">Configurar un dispositivo físico</h3>
-
-<p>
-  Si tiene un Nexus 5, Nexus 6, Nexus 9 o Android TV, puede instalar una imagen de sistema de la versión preliminar en estos dispositivos para probar su aplicación. Con la herramienta Android Virtual Device Manager, puede configurar un dispositivo virtual con la versión preliminar de la plataforma desde Android Studio 
-
-
-
-</p>
-
-<p class="caution">
-  <strong>Importante:</strong> El proceso de instalación de una imagen preliminar en un dispositivo <em>elimina todos los datos del dispositivo</em>, por lo que debe hacer una copia de seguridad de los datos antes de instalar una imagen preliminar.
-
-</p>
-
-<h3 id="setupAVD">Configurar un dispositivo virtual</h3>
-
-<p>
-  Con la herramienta Android Virtual Device, puede configurar un dispositivo virtual para la versión preliminar de la plataforma desde Android Studio.
-
-</p>
-
-<p>Crear un AVD (dispositivo virtual de Android) con AVD Manager:</p>
-
-<ol>
-  <li>Instale el SDK de la versión preliminar en su entorno de desarrollo, como se detalla en <a href="{@docRoot}preview/setup-sdk.html">Configurar el SDK de la versión preliminar</a>.
-
-</li>
-  <li>Siga los pasos en <a href="{@docRoot}tools/devices/managing-avds.html">Administración de los ADV con ADV Manager</a>.
-
- Utilice las siguientes configuraciones:
-    <ul>
-      <li><strong>Dispositivo:</strong> Nexus 5, Nexus 6, Nexus 9 o Android TV</li>
-      <li><strong>Destino:</strong>
-       Android M (versión preliminar) - Nivel de API M</li>
-      <li><strong>ABI:</strong> x86</li>
-    </ul>
-  </li>
-</ol>
-
-<p>
-  Para obtener más información sobre cómo crear dispositivos virtuales para realizar pruebas, consulte <a href="{@docRoot}tools/devices/index.html">Administración de dispositivos virtuales.</a>
-</p>
diff --git a/docs/html-intl/intl/es/preview/testing/guide.jd b/docs/html-intl/intl/es/preview/testing/guide.jd
deleted file mode 100644
index 138d6ca..0000000
--- a/docs/html-intl/intl/es/preview/testing/guide.jd
+++ /dev/null
@@ -1,187 +0,0 @@
-page.title=Guía de prueba
-page.image=images/cards/card-build_16x9_2x.png
-page.keywords=recursos de la versión preliminar,androidm,pruebas,permisos
-
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Contenido del documento</h2>
-      <ol>
-        <li><a href="#runtime-permissions">Prueba de los permisos</a></li>
-        <li><a href="#doze-standby">Prueba de los modos Doze y App Standby</a></li>
-        <li><a href="#ids">Copia de seguridad automática e identificadores de dispositivos</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Android M Developer Preview le brinda la oportunidad de garantizar que sus aplicaciones funcionen con la próxima versión de la plataforma.
- Esta versión preliminar incluye diversas API y cambios en los comportamientos que pueden tener impactos en su aplicación, como se describe en las secciones <a href="{@docRoot}preview/api-overview.html">Información general de la API</a> y <a href="{@docRoot}preview/behavior-changes.html">Cambios en los comportamientos</a>.
-
- Al probar su aplicación con la versión preliminar, se debe centrar en algunos cambios específicos del sistema para garantizar que los usuarios disfruten de una buena experiencia.
-
-
-</p>
-
-<p>
-  En esta guía, se describen qué y cómo probar las características preliminares con su aplicación. Debe priorizar la prueba de estas características específicas preliminares, puesto que podrían tener un alto impacto en el comportamiento de su aplicación:
-
-
-</p>
-
-<ul>
-  <li><a href="#runtime-permissions">Permisos</a>
-  </li>
-  <li><a href="#doze-standby">Modos Doze y App Standby</a>
-  </li>
-  <li><a href="#ids">Copia de seguridad automática e identificadores de dispositivos</a></li>
-</ul>
-
-<p>
-  Para obtener más información sobre cómo configurar dispositivos o dispositivos virtuales con una imagen del sistema de la versión preliminar para realizar pruebas, consulte la sección <a href="{@docRoot}preview/setup-sdk.html">Configurar el SDK de la versión preliminar</a>.
-
-</p>
-
-
-<h2 id="runtime-permissions">Prueba de los permisos</h2>
-
-<p>
-  El nuevo modelo de <a href="{@docRoot}preview/features/runtime-permissions.html">permisos</a> cambia el modo en que el usuario asigna permisos a su aplicación.
- En lugar de conceder todos los permisos durante el procedimiento de instalación, su aplicación debe solicitar al usuario los permisos individuales en el tiempo de ejecución.
-
- Para los usuarios, este comportamiento ofrece más control granular sobre las actividades de cada aplicación, así como un mejor contexto para comprender por qué la aplicación está solicitando un permiso específico.
- Los usuarios pueden conceder o revocar los permisos concedidos a una aplicación de forma individual en cualquier momento.
- Es muy probable que esta característica de la versión preliminar tenga un impacto en el comportamiento de su aplicación y puede hacer que algunas características de su aplicación no funcionen o funcionen en un estado degradado.
-
-
-</p>
-
-<p class="caution">
-  Este cambio afecta a todas las aplicaciones que se ejecutan en la nueva plataforma, incluso a aquellas que no tienen como destino la nueva versión de la plataforma.
- La plataforma ofrece un comportamiento de compatibilidad limitada para las aplicaciones heredadas, pero usted debe comenzar a planificar ahora la migración de su aplicación al nuevo modelo de permisos, con el objetivo de publicar una versión actualizada de su aplicación cuando se lance la plataforma oficial.
-
-
-</p>
-
-
-<h3 id="permission-test-tips">Consejos para pruebas</h3>
-
-<p>
-  Use los siguientes consejos para pruebas como ayuda para planificar y ejecutar las pruebas de su aplicación con el nuevo comportamiento de permisos.
-
-</p>
-
-<ul>
-  <li>Identifique los permisos actuales de su aplicación y las rutas de códigos relacionadas.</li>
-  <li>Pruebe los flujos del usuario en los datos y servicios protegidos por permisos.</li>
-  <li>Realice pruebas con varias combinaciones de permisos concedidos/revocados.</li>
-  <li>Use la herramienta {@code adb} para administrar permisos desde la línea de comando:
-    <ul>
-      <li>Enumere los permisos y estados por grupo:
-        <pre>adb shell pm list permissions -d -g</pre>
-      </li>
-      <li>Conceda o revoque un permiso o más permisos utilizando la siguiente sintaxis:<br>
-        <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
-      </li>
-    </ul>
-  </li>
-  <li>Analice su aplicación para detectar servicios que utilizan permisos.</li>
-</ul>
-
-<h3 id="permission-test-strategy">Estrategia de prueba</h3>
-
-<p>
-  El cambio en los permisos afecta la estructura y el diseño de su aplicación, además de la experiencia del usuario y los flujos que usted proporciona a los usuarios.
- Debe evaluar el uso de los permisos actuales de su aplicación y comenzar a planificar los nuevos flujos que desea ofrecer.
- La versión oficial de la plataforma proporciona un comportamiento de compatibilidad, pero debe prever la actualización de su aplicación y no depender de estos comportamientos.
-
-
-</p>
-
-<p>
-  Identifique los permisos que su aplicación verdaderamente necesita y utiliza, y luego busque las diversas rutas de códigos que utilizan los servicios protegidos por permisos.
- Puede realizar esto mediante una combinación de pruebas en la plataforma nueva y análisis de códigos.
- Al realizar las pruebas, debe centrarse en incluir permisos de tiempo de ejecución cambiando {@code targetSdkVersion} de la aplicación a la versión preliminar.
- Para obtener más información, consulte la sección <a href="{@docRoot}preview/setup-sdk.html#">Configurar el SDK de la versión preliminar</a>.
-
-</p>
-
-<p>
-  Realice pruebas con diversas combinaciones de permisos revocados y agregados, a fin de destacar los flujos del usuario que dependen de permisos.
- Cuando una dependencia no sea obvia ni lógica, debe considerar la opción de refactorizar o compartimentar ese flujo para eliminar la dependencia o aclarar por qué se necesita el permiso.
-
-
-</p>
-
-<p>
-  Para obtener más información sobre el comportamiento de los permisos de tiempo de ejecución, las pruebas y las mejores prácticas, consulte la página <a href="{@docRoot}preview/features/runtime-permissions.html">Permisos</a> de la versión preliminar para desarrolladores.
-
-
-</p>
-
-
-<h2 id="doze-standby">Prueba de los modos Doze y App Standby</h2>
-
-<p>
-  Las características de ahorro de energía de los modos Doze y App Standby limitan la cantidad de procesamiento en segundo plano que puede realizar su aplicación cuando un dispositivo se encuentra en estado inactivo o mientras su aplicación no está en foco.
- Entre las restricciones que el sistema puede imponer en las aplicaciones se incluyen el acceso limitado a la red o denegación de acceso, suspensión de las tareas en segundo plano, suspensión de notificaciones, y alarmas y solicitudes de reactivación ignoradas.
-
- Para garantizar que su aplicación tenga un comportamiento correcto con estas optimizaciones de ahorro de energía, debe probar su aplicación simulando estos estados de bajo consumo.
-
-
-</p>
-
-<h4 id="doze">Cómo probar la aplicación en modo Doze</h4>
-
-<p>Para probar el modo Doze con su aplicación, realice lo siguiente:</p>
-
-<ol>
-<li>Configure un dispositivo de hardware o un dispositivo virtual con una imagen del sistema de la versión preliminar de Android M.</li>
-<li>Conecte el dispositivo a su equipo de desarrollo e instale la aplicación.</li>
-<li>Ejecute su aplicación y déjela activa.</li>
-<li>Simule la activación del modo Doze en el dispositivo ejecutando los siguientes comandos:
-
-<pre>
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-
-  </li>
-  <li>Observe el comportamiento de su aplicación cuando se reactive el dispositivo. Asegúrese de que se recupere correctamente cuando el dispositivo salga del modo Doze.
-</li>
-</ol>
-
-
-<h4 id="standby">Cómo probar aplicaciones en modo App Standby</h4>
-
-<p>Para probar el modo App Standby con su aplicación, realice lo siguiente:</p>
-
-<ol>
-  <li>Configure un dispositivo de hardware o un dispositivo virtual con una imagen del sistema de la versión preliminar de Android M.</li>
-  <li>Conecte el dispositivo a su equipo de desarrollo e instale su aplicación.</li>
-  <li>Ejecute su aplicación y déjela activa.</li>
-  <li>Simule la activación del modo App Standby en la aplicación ejecutando los siguientes comandos:
-
-<pre>
-$ adb shell am broadcast -a android.os.action.DISCHARGING
-$ adb shell am set-idle &lt;packageName&gt; true
-</pre>
-
-  </li>
-  <li>Simule la activación de su aplicación con el siguiente comando:
-    <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
-  </li>
-  <li>Observe el comportamiento de su aplicación al reactivarse. Asegúrese de que se recupere correctamente del modo App Standby.
- En particular, debe comprobar si los trabajos en segundo plano y las notificaciones de su aplicación continúan funcionando de la manera esperada.
-</li>
-</ol>
-
-<h2 id="ids">Copia de seguridad automática para aplicaciones e identificadores específicos del dispositivo</h2>
-
-<p>Si su aplicación continúa teniendo algún identificador específico del dispositivo, como la Id. de registro de Google Cloud Messaging, en el almacenamiento interno, asegúrese de seguir las mejores prácticas para excluir la ubicación de almacenamiento de la copia de seguridad automática, como se describe en la sección <a href="{@docRoot}preview/backup/index.html">Copia de seguridad automática para aplicaciones</a>.
-
-
-
- </p>
diff --git a/docs/html-intl/intl/es/preview/testing/performance.jd b/docs/html-intl/intl/es/preview/testing/performance.jd
deleted file mode 100644
index 7346976..0000000
--- a/docs/html-intl/intl/es/preview/testing/performance.jd
+++ /dev/null
@@ -1,656 +0,0 @@
-page.title=Prueba de rendimiento de video
-page.image=images/cards/card-test-performance_2x.png
-page.keywords=rendimiento, fotogramas por segundo, herramientas
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Contenido del documento</h2>
-      <ol>
-        <li><a href="#measure">Medición del rendimiento de la UI</a>
-          <ul>
-            <li><a href="#aggregate">Incorporación de Frame Stats</a></li>
-            <li><a href="#timing-info">Información precisa del intervalo del fotograma</a></li>
-            <li><a href="#timing-dump">Volcado simple del intervalo del fotograma</a></li>
-            <li><a href="#collection-window">Control del período de recopilación de datos</a></li>
-            <li><a href="#diagnose">Diagnóstico de regresiones de rendimiento</a></li>
-            <li><a href="#resources">Recursos adicionales</a></li>
-          </ul>
-        </li>
-        <li><a href="#automate">Automatización de las pruebas de rendimiento de la UI</a>
-          <ul>
-            <li><a href="#ui-tests">Configuración de las pruebas de UI</a></li>
-            <li><a href="#automated-tests">Configuración de las pruebas automatizadas de UI</a></li>
-            <li><a href="#triage">Clasificación y solución de problemas detectados</a></li>
-          </ul>
-        </li>
-      </ol>
-  </div>
-</div>
-
-
-<p>
-  La prueba de rendimiento de la UI le garantiza que su aplicación no solo cumpla con los requisitos funcionales sino que la interacción del usuario con su aplicación sea fluida y funcione constantemente a 60 fotogramas por segundo (<a href="https://www.youtube.com/watch?v=CaMTIgxCSqU&amp;index=25&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">Why 60fps?</a>) sin disminuir o retrasar fotogramas (lo que llamamos <em>“jank”</em>).
-
-
- Este documento explica las herramientas disponibles para medir el rendimiento de la UI y establece un enfoque para integrar las medidas de rendimiento de la UI en sus prácticas de prueba.
-
-
-</p>
-
-
-<h2 id="measure">Medición del rendimiento de la UI</h2>
-
-<p>
-  Para mejorar el rendimiento, primero necesita poder medir el rendimiento de su sistema y, luego, diagnosticar e identificar los problemas que puedan surgir debido a las varias secciones de su canalización.
-
-
-</p>
-
-<p>
-  <em><a href="https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></em> es una herramienta de Android que se ejecuta en el dispositivo y vuelca información útil sobre el estado de los servicios del sistema.
-
- Al pasar el comando <em>gxinfo</em> a dumsys, se obtiene una salida de logcat con información de rendimiento en relación con los fotogramas de animación que ocurren durante la fase de grabado.
-
-
-</p>
-
-<pre>
-&gt; adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt;
-</pre>
-
-<p>
-  Este comando puede crear múltiples variantes diferentes de datos del intervalo del fotograma.
-</p>
-
-<h3 id="aggregate">Incorporación de Frame Stats</h3>
-
-<p>
-  En la versión preliminar de Android M, el comando emite un análisis adicional a logcat sobre los datos del fotograma. Estos datos se recopilan en toda la duración del proceso.
- Por ejemplo:
-</p>
-
-<pre class="noprettyprint">
-Stats since: 752958278148ns
-Total frames rendered: 82189
-Janky frames: 35335 (42.99%)
-90th percentile: 34ms
-95th percentile: 42ms
-99th percentile: 69ms
-Number Missed Vsync: 4706
-Number High input latency: 142
-Number Slow UI thread: 17270
-Number Slow bitmap uploads: 1542
-Number Slow draw: 23342
-</pre>
-
-<p>
-  Estas estadísticas de alto nivel representan, en un nivel avanzado, el rendimiento de representación de la aplicación y su estabilidad en muchos fotogramas.
-
-</p>
-
-
-<h3 id="timing-info">Información precisa del intervalo del fotograma</h3>
-
-<p>
-  La versión preliminar de Android M ofrece un nuevo comando para gfxinfo, es <em>framestats</em> que brinda información extremadamente detallada sobre el intervalo del fotograma reciente, de manera que usted puede localizar y depurar errores de manera más precisa.
-
-
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats
-</pre>
-
-<p>
-  Este comando emite información sobre el intervalo del fotograma, medida en nanosegundos, de los últimos 120 fotogramas que produjo la aplicación. A continuación, se muestra un ejemplo sin formato de adb dumpsys gxinfo &lt;PACKAGE_NAME&gt; framestats:
-
-
-</p>
-
-<pre class="noprettyprint">
-0,49762224585003,49762241251670,9223372036854775807,0,49762257627204,49762257646058,49762257969704,49762258002100,49762265541631,49762273951162,49762300914808,49762303675954,
-0,49762445152142,49762445152142,9223372036854775807,0,49762446678818,49762446705589,49762447268818,49762447388037,49762453551527,49762457134131,49762474889027,49762476150120,
-0,49762462118845,49762462118845,9223372036854775807,0,49762462595381,49762462619287,49762462919964,49762462968454,49762476194547,49762476483454,49762480214964,49762480911527,
-0,49762479085548,49762479085548,9223372036854775807,0,49762480066370,49762480099339,49762481013089,49762481085850,49762482232152,49762482478350,49762485657620,49762486116683,
-</pre>
-
-<p>
-  Cada línea de esta salida representa un fotograma producido por la aplicación. Cada línea tiene un número fijo de columnas que describen el tiempo transcurrido en cada etapa de la canalización de producción de fotogramas.
- En la siguiente sección, se describe este formato en detalle y se explica qué representa cada columna.
-
-</p>
-
-
-<h4 id="fs-data-format">Formato de datos de framestats</h4>
-
-<p>
-  Debido a que el bloque de datos se emite en formato CSV, es muy sencillo pegarlo en su herramienta de hoja de cálculo preferida, o recopilar y redistribuir con un script.
- La siguiente tabla explica el formato de las columnas de los datos de salida.
- Las marcas de tiempo están en nanosegundos.
-</p>
-
-<ul>
-  <li>FLAGS
-    <ul>
-      <li>El tiempo total del fotograma de las filas con “0” en la columna FLAGS se puede calcular restando la columna INTENDED_VSYNC a la columna FRAME_COMPLETED.
-
-      </li>
-
-      <li>Si el resultado no es cero, la fila se debe ignorar, ya que se ha determinado que el fotograma contiene un valor atípico de rendimiento, donde se espera que el diseño y la imagen tomen más de 16 ms.
-
- Razones por las que esto puede suceder:
-        <ul>
-          <li>Se cambió el diseño de la ventana (ya sea el primer fotograma de la aplicación o luego de una rotación)
-
-          </li>
-
-          <li>También es posible que se haya omitido el fotograma. En ese caso, alguno de los valores tendrán marcas de tiempo no utilizables.
- Se puede omitir un fotograma si, por ejemplo, supera los 60 fotogramas por segundo o si no había nada desfasado en pantalla. Esto no necesariamente indica que la aplicación tenga algún problema.
-
-
-          </li>
-        </ul>
-      </li>
-    </ul>
-  </li>
-
-  <li>INTENDED_VSYNC
-    <ul>
-      <li>El punto de partida previsto del fotograma. Si este valor es diferente de VSYNC, el subproceso de la interfaz de usuario se encontraba ocupado, lo que evitó la respuesta a la señal vsync de manera oportuna.
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>VSYNC
-    <ul>
-      <li>El valor de tiempo que se utilizó en todas las escuchas vsync y las imágenes para el fotograma (devolución de llamada del fotograma Choreographer, animaciones, View.getDrawingTime(), etc.).
-
-      </li>
-
-      <li>Para obtener más información sobre VSYNC y cómo influye en su aplicación, consulte el video <a href="https://www.youtube.com/watch?v=1iaHxmfZGGc&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=23">
-Understanding VSYNC</a>.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>OLDEST_INPUT_EVENT
-    <ul>
-      <li>La marca de tiempo del evento de entrada más antiguo de la cola de entrada, o Long.MAX_VALUE en caso de que el fotograma no tengan ninguna entrada.
-
-      </li>
-
-      <li>Este valor está diseñado principalmente para trabajar en la plataforma y tiene utilidad limitada para los desarrolladores de aplicaciones.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>NEWEST_INPUT_EVENT
-    <ul>
-      <li>La marca de tiempo del evento de entrada más reciente de la cola de entrada, o 0 en caso de que el fotograma no contenga ninguna entrada.
-
-      </li>
-
-      <li>Este valor está diseñado principalmente para trabajar en la plataforma y tiene utilidad limitada para los desarrolladores de aplicaciones.
-
-      </li>
-
-      <li>Sin embargo, puede obtener una idea general sobre la cantidad de latencia que la aplicación está añadiendo consultando (FRAME_COMPLETED - NEWEST_INPUT_EVENT).
-
-      </li>
-    </ul>
-  </li>
-
-  <li>HANDLE_INPUT_START
-    <ul>
-      <li>La marca de tiempo en que el evento de entrada se distribuye a la aplicación.
-      </li>
-
-      <li>Al observar el tiempo entre esto y ANIMATION_START, se puede medir cuánto tiempo dedicó la aplicación a la administración de eventos de entrada.
-
-      </li>
-
-      <li>Si este valor es alto (mayor a 2 ms), esto significa que la aplicación dedica tiempo poco común al proceso de los eventos de entrada, como View.onTouchEvent(), lo que indica que este proceso se debe optimizar o descargar a otro subproceso.
-
- Tenga en cuenta que, en algunas ocasiones, como cuando al hacer clic en un evento que lanza nuevas actividades o algo parecido, se espera y es aceptable que este valor sea alto.
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>ANIMATION_START
-    <ul>
-      <li>La marca de tiempo en la que se ejecutaron las animaciones registradas con Choreographer.
-      </li>
-
-      <li>Al observar el tiempo entre esto y PERFORM_TRANVERSALS_START, se puede determinar cuánto tiempo llevó evaluar todos los mecanismos de animación (los más comunes son ObjectAnimator, ViewPropertyAnimator y Transitions) que se estén ejecutando.
-
-
-      </li>
-
-      <li>Si este valor es alto (mayor a 2 ms), controle si su aplicación escribió alguna animación personalizada o qué campos está animando ObjectAnimators y asegúrese de que su animación sea adecuada.
-
-
-      </li>
-
-      <li>Para obtener más información sobre Choreographer, consulte el video <a href="https://developers.google.com/events/io/sessions/325418001">For Butter or Worse</a>.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>PERFORM_TRAVERSALS_START
-    <ul>
-      <li>Si a este valor le resta DRAW_START, puede saber cuánto tardaron en completarse las fases de medición y diseño. (Durante el desplazamiento o la animación, este número deberá ser cercano a cero).
-
-
-      </li>
-
-      <li>Para obtener más información sobre las fases de medición y diseño de la canalización de representación, consulte el video <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">
-Invalidations, Layouts and Performance</a>.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>DRAW_START
-    <ul>
-      <li>El momento en que comenzó la fase de dibujo de performTraversals. Este es el punto inicial de grabación de la listas de visualización de cualquier vista invalidada.
-
-      </li>
-
-      <li>El tiempo entre esto y SYNC_START muestra cuánto se tardó en llamar a View.draw() en todas las vistas invalidadas en el árbol.
-
-      </li>
-
-      <li>Para obtener más información sobre el modelo de dibujo, consulte los videos <a href="{@docRoot}guide/topics/graphics/hardware-accel.html#hardware-model">Hardware Acceleration</a>
- o <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">
-Invalidations, Layouts and Performance.</a>
-      </li>
-    </ul>
-  </li>
-
-  <li>SYNC_START
-    <ul>
-      <li>El momento en que comenzó la fase de sincronización del dibujo.
-      </li>
-
-      <li>Si el tiempo entre esto e ISSUE_DRAW_COMMANDS_START es muy alto (mayor a 0,4 ms o similar), generalmente esto significa que se dibujaron muchos mapas de bits que se deben subir a GPU.
-
-
-      </li>
-
-      <li>Para obtener más información sobre la fase de sincronización, consulte el video <a href="https://www.youtube.com/watch?v=VzYkVL1n4M8&amp;index=24&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">
-Profile GPU Rendering.</a>
-      </li>
-    </ul>
-  </li>
-
-  <li>ISSUE_DRAW_COMMANDS_START
-    <ul>
-      <li>El momento en que el representador de hardware comenzó a enviar comandos de dibujo a GPU.
-      </li>
-
-      <li>El tiempo entre esto y FRAME_COMPLETED permite obtener una idea general sobre cuánto trabajo le genera la aplicación a GPU.
- Aquí aparecen los problemas como el exceso de dibujos o efectos de representación ineficientes.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>SWAP_BUFFERS
-    <ul>
-      <li>El momento en que se llamó a eglSwapBuffers, generalmente de poca importancia fuera del trabajo en plataforma.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>FRAME_COMPLETED
-    <ul>
-      <li>¡Todo listo! El tiempo total dedicado al trabajo en este fotograma se puede calcular al hacer FRAME_COMPLETED - INTENDED_VSYNC.
-
-      </li>
-    </ul>
-  </li>
-
-</ul>
-
-<p>
-  Puede utilizar esta información de distintas maneras. Un método de visualización simple pero eficaz es el histograma que muestra la distribución de los tiempos del fotograma (FRAME_COMPLETED - INTENDED_VSYNC) en distintos bloques de latencia; vea la siguiente figura.
-
- Este gráfico indica brevemente que la mayoría de los fotogramas estuvieron muy bien, es decir, por debajo del límite de 16 ms (marcado en rojo). Sin embargo, algunos fotogramas estuvieron muy por arriba del límite.
-
- En el histograma, podemos observar los cambios con el correr del tiempo para ver la creación de los cambios totales o los nuevos valores atípicos.
- También puede graficar la latencia de entrada, el tiempo dedicado al diseño o cualquier otra medición interesante similar sobre las marcas de tiempo en los datos.
-
-
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-framestats.png">
-
-
-<h3 id="timing-dump">Volcado simple del intervalo del fotograma</h3>
-
-<p>
-  Si, en las Opciones de Desarrollador, <strong>Profile GPU rendering</strong> se configura en <strong>In adb shell dumpsys gfinfo</strong>, el comando <code>adb shell dumpsys gfxinfo</code> emite sobre el tiempo de los 120 fotogramas más recientes y los agrupa en algunas categorías diferentes con valores separados por tabulación.
-
-
- Esta información puede resultar útil para indicar qué partes de la canalización del dibujo podrían funcionar lento en un nivel alto.
-
-</p>
-
-<p>
-  Al igual que <a href="#fs-data-format">framestats</a>, es muy sencillo pegar esta información en su herramienta de hoja de cálculo preferida, o recolectar y redistribuir con un script.
-
- El siguiente gráfico detalla dónde pasaron tiempo muchos de los fotogramas generados por la aplicación.
-
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-frame-latency.png">
-
-<p>
-  El resultado de ejecutar gfxinfo, copiar la salida, pegar en una aplicación de hoja de cálculo y graficar la información en forma de barras apiladas.
-
-</p>
-
-<p>
-  Cada barra vertical representa un fotograma de animación, su altura representa la cantidad de milisegundos que le llevó calcular ese fotograma de animación.
- Cada segmento de color de la barra representa una etapa diferente de la canalización de representación, de manera que usted pueda observar qué partes de su aplicación pueden estar creando un cuello de botella.
-
- Para obtener más información sobre la canalización de representación y cómo optimizarla, consulte el video <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;index=27&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">
-Invalidations Layouts and Performance</a>.
-
-</p>
-
-
-<h3 id="collection-window">Control del período de recopilación de datos</h3>
-
-<p>
-  Los intervalos de framestats y del fotograma simple recopilan datos durante un período muy breve: aproximadamente dos segundos que valen la pena representar.
- Para poder controlar este período con precisión, por ejemplo para limitar los datos a una animación en particular, puede restablecer todos los contadores y agregar los datos recopilados.
-
-
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; reset
-</pre>
-
-<p>
-  Esto se puede usar junto con los comandos de volcado para recopilar y restablecer a una cadencia normal a fin de capturar continuamente períodos de fotogramas de menos de dos segundos.
-
-
-</p>
-
-
-<h3 id="diagnose">Diagnóstico de regresiones de rendimiento</h3>
-
-<p>
-  La identificación de regresiones es un buen primer paso para localizar los problemas y mantener la aplicación funcionando correctamente.
- Sin embargo, dumpsys solo identifica la existencia y la gravedad relativa de los problemas.
- Usted todavía debe diagnosticar la causa particular de los problemas de rendimiento y encontrar las soluciones adecuadas.
- Para esto, es sumamente recomendable que utilice la herramienta <a href="{@docRoot}tools/help/systrace.html">systrace</a>.
-
-</p>
-
-
-<h3 id="resources">Recursos adicionales</h3>
-
-<p>
-  Para obtener más información sobre el funcionamiento de la canalización de representación de Android, los problemas comunes que puede encontrar y cómo solucionarlos, es posible que algunos de los siguientes recursos le resulten útiles:
-
-
-</p>
-
-<ul>
-  <li>Rendering Performance 101
-  </li>
-  <li>Why 60fps?
-  </li>
-  <li>Android UI and the GPU
-  </li>
-  <li>Invalidations Layouts and performance
-  </li>
-  <li>Analyzing UI Performance with Systrace
-  </li>
-</ul>
-
-
-<h2 id="automate">Pruebas automatizadas de rendimiento de la UI</h2>
-
-<p>
-  Un enfoque para realizar la prueba de rendimiento de la UI es solicitar a un evaluador que realice una serie de operaciones de usuario en la aplicación objetivo para identificar visualmente jank, o bien, pasar mucho tiempo utilizando un enfoque basado en alguna herramienta para encontrar jank.
-
- Sin embargo, este enfoque manual tiene sus riesgos, la habilidad humana para percibir cambios en los índices de los fotogramas varía de manera alarmante. Además, este proceso lleva mucho tiempo, es tedioso y propenso a errores.
-
-
-</p>
-
-<p>
-  Un método más eficiente es registrarse y analizar las mediciones de rendimiento clave a partir de pruebas automatizadas de UI.
- Android M Developer Preview incluye nuevas capacidades de registro que facilitan la determinación de la cantidad y gravedad de jank en las animaciones de su aplicación y pueden utilizarse para crear un proceso estricto a fin de determinar su rendimiento actual y realizar un seguimiento de futuros objetivos de rendimiento.
-
-
-
-</p>
-
-<p>
-  Este artículo lo guía a través de un enfoque recomendado para utilizar esa información a fin de automatizar su prueba de rendimiento.
-
-</p>
-
-<p>
-  Esto se divide básicamente en dos acciones clave. Primero, identificar qué está probando y cómo lo prueba. Segundo, configurar y mantener un entorno de prueba automatizado.
-
-
-</p>
-
-
-<h3 id="ui-tests">Configuración de pruebas de UI</h3>
-
-<p>
-  Antes de comenzar con las pruebas automatizadas, es importante establecer algunas decisiones de alto nivel para entender correctamente el espacio de prueba y las necesidades que puede tener.
-
-</p>
-
-<h4>
-  Identifique flujos/animaciones clave que desea probar
-</h4>
-
-<p>
-  Recuerde que el usuario visualiza el rendimiento negativo cuando una animación fluida se interrumpe.
- Por lo tanto, al identificar qué tipo de acciones de UI desea probar, se recomienda centrarse en aquellas animaciones clave que el usuario ve más o que son más importantes para su experiencia.
-
- Por ejemplo, a continuación, se mencionan situaciones comunes que es útil identificar:
-</p>
-
-<ul>
-  <li>Desplazamiento por ListView o RecyclerView principales
-  </li>
-
-  <li>Animaciones durante ciclos de espera no sincronizados
-  </li>
-
-  <li>Animaciones que puedan contener manipulación o carga de mapa de bits
-  </li>
-
-  <li>Animaciones que incluyan combinación alfa
-  </li>
-
-  <li>Dibujos personalizados con Canvas
-  </li>
-</ul>
-
-<p>
-  Trabaje con los ingenieros, diseñadores y gerentes de productos de su equipo a fin de priorizar estas animaciones clave para la cobertura de la prueba.
-
-</p>
-
-<h4>
-  Establezca sus objetivos futuros y realice un seguimiento en virtud de ellos
-</h4>
-
-<p>
-  Desde un nivel alto, puede ser crítico identificar sus metas de rendimiento específicas y concentrarse en escribir pruebas y recopilar datos sobre ellas.
- Por ejemplo:
-</p>
-
-<ul>
-  <li>¿Simplemente desea comenzar a realizar un seguimiento del rendimiento de la UI por primera vez para obtener más información?
-  </li>
-
-  <li>¿Desea evitar regresiones que podrían aparecer en el futuro?
-  </li>
-
-  <li>¿Se encuentra hoy en un 90 % de fluidez de fotogramas y quiere alcanzar un 98 % en este trimestre?
-  </li>
-
-  <li>¿Se encuentra en un 98 % de fluidez de fotogramas y no quiere retroceder?
-  </li>
-
-  <li>¿Tiene como objetivo mejorar el rendimiento en dispositivos de gama baja?
-  </li>
-</ul>
-
-<p>
-  Para todas estas situaciones, es recomendable realizar un seguimiento que muestre el rendimiento en múltiples versiones de su aplicación.
-
-</p>
-
-<h4>
-  Identifique los dispositivos en los que desea realizar la prueba
-</h4>
-
-<p>
-  El rendimiento de la aplicación varía según el dispositivo en el que se ejecuta. Algunos dispositivos pueden tener menos memoria, GPU menos potentes o CPU más lentos.
- Esto significa que las animaciones que funcionan bien en un conjunto de hardware pueden no hacerlo en otros, o peor, pueden provocar un cuello de botella en diferentes secciones de la canalización.
-
- Por lo tanto, para justificar esta variación en lo que un usuario puede ver, seleccione una serie de dispositivos, tanto de alta gama como de baja, tablets, etc., en los que ejecutará las pruebas.
-
- Busque variedad en rendimiento de CPU, memoria RAM, resolución de pantalla, tamaño, etc.
- Las pruebas exitosas en un dispositivo de alta gama pueden fallar en uno de baja gama.
-
-</p>
-
-<h4>
-  Marcos básicos para pruebas de UI
-</h4>
-
-<p>
-  Algunos conjuntos de herramientas, como <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a> y <a href="{@docRoot}training/testing/ui-testing/espresso-testing.html">Espresso</a>, están diseñados para ayudar a automatizar el desplazamiento de un usuario por su aplicación.
-
- Estos son marcos simples que imitan la interacción del usuario con el dispositivo.
- Para utilizar estos marcos, debe crear con éxito scripts únicos que se ejecuten en un conjunto de acciones de usuarios y reproducirlos en el dispositivo en sí.
-
-
-</p>
-
-<p>
-  Al combinar estas pruebas automatizadas junto con <code>dumpsys gfxinfo</code>, puede crear rápidamente un sistema reproducible que le permite ejecutar una prueba y medir la información de rendimiento de esa condición particular.
-
-
-</p>
-
-
-<h3 id="automated-tests">Configurar pruebas automatizadas de UI</h3>
-
-<p>
-  Una vez que pueda ejecutar una prueba de UI y una canalización para recopilar datos de una sola prueba, el próximo paso importante es elegir un marco que pueda ejecutar esa prueba muchas veces en múltiples dispositivos y agregar los datos de rendimiento resultantes para que su equipo de desarrollo los analice mejor.
-
-
-
-</p>
-
-<h4>
-  Un marco para la automatización de pruebas
-</h4>
-
-<p>
-  Vale la pena mencionar que los marcos para pruebas de UI (como <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a>) se ejecutan directamente en el emulador/dispositivo objetivo.
- A la recopilación de información de rendimiento realizada por 
-<em>dumpsys gfxinfo</em> la impulsa un equipo de host que envía comandos por ADB. Para ayudar a unir la automatización de estas entidades separadas, se diseñó el marco <a href="{@docRoot}tools/help/monkeyrunner_concepts.html">MonkeyRunner.</a> Un sistema de scripts que se ejecuta en su equipo de host y que puede emitir comandos a un conjunto de dispositivos conectados y recibir datos de ellos.
-
-
-
-</p>
-
-<p>
-  Al crear un conjunto de scripts para la automatización adecuada de las pruebas de rendimiento de UI, usted podrá, como mínimo, utilizar MonkeyRunner para realizar con éxito las siguientes tareas:
-
-</p>
-
-<ul>
-  <li>Cargar e iniciar un APK deseado en un dispositivo objetivo, en múltiples dispositivos o en un emulador.
-  </li>
-
-  <li>Iniciar una prueba de UI automatizada y permitir que se ejecute.
-  </li>
-
-  <li>Recopilar información de rendimiento mediante <em>dumpsys gfxinfo</em><em>.</em>
-  </li>
-
-  <li>Añadir información y presentársela de manera útil al desarrollador.
-  </li>
-</ul>
-
-
-<h3 id="triage">Clasificar y solucionar problemas detectados</h3>
-
-<p>
-  Una vez que se identifican los patrones de problemas o las regresiones, el paso siguiente es identificar y aplicar la solución.
- Si su marco de pruebas automatizadas preserva detalles precisos del intervalo para los fotogramas, puede ayudarlo a investigar cambios sospechosos de código o diseño (en el caso de una regresión), o delimitar la parte del sistema que está analizando al cambiar a una investigación manual.
-
-
- Para realizar una investigación manual, <a href="{@docRoot}tools/help/systrace.html">systrace</a> es un buen lugar para comenzar, ya que muestra información precisa sobre cada etapa de la canalización de representación, cada subproceso y núcleo del sistema, además de cualquier marca de evento personalizada que usted defina.
-
-
-</p>
-
-<h4>
-  Descripción adecuada de intervalos temporales
-</h4>
-
-<p>
-  Es importante mencionar las dificultades para obtener y medir los intervalos que son producto del rendimiento de la representación.
- Estos números son, por naturaleza, no deterministas y, a menudo, fluctúan según el estado del sistema, la cantidad de memoria disponible, el límite térmico y la última vez que un rayo solar tocó el área de la tierra donde se encuentra.
-
- El punto es que puede ejecutar la misma prueba dos veces y obtener números apenas diferentes que pueden estar cerca pero no ser iguales.
-
-
-</p>
-
-<p>
-  Para recopilar y definir datos correctamente de esta manera, deberá ejecutar la misma prueba muchas veces y acumular los resultados como un promedio o un valor promedio (para que resulte más fácil, lo llamaremos un “lote”). Esto le ofrece una aproximación estimada del rendimiento de la prueba, sin requerir intervalos exactos.
-
-
-
-</p>
-
-<p>
-  Los lotes se pueden usar entre cambios de código para verificar el impacto relativo que esos cambios tienen en el rendimiento.
- Si el índice de fotograma promedio para el lote previo al cambio es que el lote después del cambio, entonces, generalmente está en presencia de un incremento general en relación con el rendimiento para ese cambio particular.
-
-
-</p>
-
-<p>
-  Esto significa que cualquier prueba automatizada de UI que lleve a cabo debería tener en cuenta este concepto, además de justificar cualquier anomalía que pudiera surgir durante una prueba.
- Por ejemplo, si el rendimiento de su aplicación disminuye repentinamente debido a algún problema con el dispositivo (que no sea provocado por la aplicación), deberá volver a ejecutar el lote para obtener intervalos menos caóticos.
-
-
-
-</p>
-
-<p>
-  Entonces, ¿cuántas veces debe ejecutar una prueba para que los resultados sean significativos? El mínimo debe ser 10 veces y con números más altos, como 50 o 100, para obtener resultados más precisos (por supuesto, ahora cambia el tiempo por la precisión).
-
-
-</p>
diff --git a/docs/html-intl/intl/es/training/material/animations.jd b/docs/html-intl/intl/es/training/material/animations.jd
new file mode 100644
index 0000000..5bd289e
--- /dev/null
+++ b/docs/html-intl/intl/es/training/material/animations.jd
@@ -0,0 +1,550 @@
+page.title=Definir animaciones personalizadas
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lección te enseña a realizar lo siguiente:</h2>
+<ol>
+  <li><a href="#Touch">Personalizar la respuesta táctil</a></li>
+  <li><a href="#Reveal">Usar el efecto Revelar</a></li>
+  <li><a href="#Transitions">Personalizar transiciones de actividades</a></li>
+  <li><a href="#ViewState">Animar cambios de estados de las vistas</a></li>
+  <li><a href="#AnimVector">Animar interfaces dibujables en vector</a></li>
+</ol>
+<h2>También deberías leer</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificación de Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design en Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Las animaciones en Material Design proporcionan a los usuarios comentarios sobre sus acciones y continuidad visual
+a medida que los usuarios interactúan con su aplicación. El tema material proporciona algunas animaciones predeterminadas
+para botones y transiciones de actividades; Android 5.0 (API nivel 21) y superior te permite personalizar estas
+animaciones y crear unas nuevas:</p>
+
+<ul>
+<li>Respuesta táctil</li>
+<li>Efecto revelar circular</li>
+<li>Transiciones de actividades</li>
+<li>Movimiento curvo</li>
+<li>Ver cambios de estados</li>
+</ul>
+
+
+<h2 id="Touch">Personalizar la respuesta táctil</h2>
+
+<p>La respuesta táctil en Material Design proporciona una confirmación visual instantánea en el punto
+de contacto cuando los usuarios interactúan con los elementos de la IU. Las animaciones predeterminadas de la respuesta táctil para
+botones usan la nueva clase {@link android.graphics.drawable.RippleDrawable}, que realiza una transición
+entre diferentes estados con un efecto de ondas.</p>
+
+<p>En la mayoría de los casos, debes aplicar esta funcionalidad en la vista XML especificando el fondo
+de la vista como:</p>
+
+<ul>
+<li><code>?android:attr/selectableItemBackground</code> para un efecto de ondas con límites.</li>
+<li><code>?android:attr/selectableItemBackgroundBorderless</code> para un efecto de ondas que se extiende más allá de
+la vista. Se lo dibujará en la vista primaria más cercana de la vista (que lo limitará) con un fondo de valor no
+nulo.</li>
+</ul>
+
+<p class="note"><strong>Nota:</strong> <code>selectableItemBackgroundBorderless</code> es un nuevo
+atributo introducido en la API de nivel 21.</p>
+
+
+<p>Alternativamente, puedes definir un {@link android.graphics.drawable.RippleDrawable}
+como un recurso XML que usa el elemento <code>ripple</code>.</p>
+
+<p>Puedes asignar un color a los objetos {@link android.graphics.drawable.RippleDrawable}. Para cambiar
+el color predeterminado de la respuesta táctil, usa el atributo <code>android:colorControlHighlight</code>
+del tema.</p>
+
+<p>Para más información, consulta la referencia de la API para la clase {@link
+android.graphics.drawable.RippleDrawable}.</p>
+
+
+<h2 id="Reveal">Usar el efecto revelar</h2>
+
+<p>Las animaciones del efecto revelar proporcionan a los usuarios una continuidad visual cuando muestras u ocultas un grupo de elementos
+de la IU. El método {@link android.view.ViewAnimationUtils#createCircularReveal
+ViewAnimationUtils.createCircularReveal()} te permite animar un círculo de recorte para
+revelar u ocultar una vista.</p>
+
+<p>Para revelar una vista previamente invisible usando este efecto:</p>
+
+<pre>
+// previously invisible view
+View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the final radius for the clipping circle
+int finalRadius = Math.max(myView.getWidth(), myView.getHeight());
+
+// create the animator for this view (the start radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius);
+
+// make the view visible and start the animation
+myView.setVisibility(View.VISIBLE);
+anim.start();
+</pre>
+
+<p>Para ocultar una vista previamente invisible usando este efecto:</p>
+
+<pre>
+// previously visible view
+final View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the initial radius for the clipping circle
+int initialRadius = myView.getWidth();
+
+// create the animation (the final radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, initialRadius, 0);
+
+// make the view invisible when the animation is done
+anim.addListener(new AnimatorListenerAdapter() {
+    &#64;Override
+    public void onAnimationEnd(Animator animation) {
+        super.onAnimationEnd(animation);
+        myView.setVisibility(View.INVISIBLE);
+    }
+});
+
+// start the animation
+anim.start();
+</pre>
+
+
+<h2 id="Transitions">Personalizar transiciones de actividades</h2>
+
+<!-- shared transition video -->
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay="">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.webm">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.ogv">
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <p class="img-caption" style="margin-top:3px;margin-bottom:10px"><strong>Figura 1</strong>: una
+transición con elementos compartidos.</p>
+    <em>Para volver a reproducir la película, haz clic en la pantalla del dispositivo.</em>
+  </div>
+</div>
+
+<p>Las transiciones de actividades en las aplicaciones de Material Design proporcionan conexiones visuales entre diferentes estados
+mediante el movimiento y las transformaciones entre elementos comunes. Puedes especificar las animaciones personalizadas para
+entrar y salir de las transiciones y para las transiciones de elementos compartidos entre actividades.</p>
+
+<ul>
+<li>Una transición de <strong>entrada</strong> determina cómo entran en escena las vistas en una actividad.
+Por ejemplo, en la transición de entrada <em>expandir</em>, las vistas entran en escena desde el exterior
+y vuelan hacia el centro de la pantalla.</li>
+
+<li>Una transición de <strong>salida</strong> determina cómo salen de escena las vistas en una actividad. Por
+ejemplo, en la transición de salida <em>expandir</em>, las vistas salen de escena lejos del
+centro.</li>
+
+<li>Una transición de <strong>elementos compartidos</strong> determina cómo las vistas que están compartidas entre
+dos actividades realizan la transición entre estas. Por ejemplo, si dos actividades tienen la misma
+imagen en diferentes posiciones y tamaños, la transición de elementos compartidos <em>changeImageTransform</em>
+traduce y escala la imagen suavemente entre estas actividades.</li>
+</ul>
+
+<p>Android 5.0 (API nivel 21) admite estas transiciones de entrada y salida:</p>
+
+<ul>
+<li><em>expandir</em>: desplaza vistas hacia adentro o hacia afuera del centro de la escena.</li>
+<li><em>deslizar</em>: desplaza vistas hacia adentro o hacia afuera de uno de los bordes de la escena.</li>
+<li><em>difuminar</em>: agrega o quita una vista de la escena al cambiar su opacidad.</li>
+</ul>
+
+<p>Toda transición que extiende la clase {@link android.transition.Visibility} se admite
+como una transición de entrada o salida. Para más información, consulta la referencia de la API para la clase
+{@link android.transition.Transition}.</p>
+
+<p>Android 5.0 (API nivel 21) también admite estas transiciones de elementos compartidos:</p>
+
+<ul>
+<li><em>changeBounds</em>: anima los cambios en los límites de las vistas de destino.</li>
+<li><em>changeClipBounds</em>: anima los cambios en los límites de recorte de las vistas de destino.</li>
+<li><em>changeTransform</em>: anima los cambios en escala y rotación de las vistas de destino.</li>
+<li><em>changeImageTransform</em>: anima los cambios de tamaño y escala de imágenes de destino.</li>
+</ul>
+
+<p>Cuando habilitas las transiciones de actividades en tu aplicación, la transición entre difuminados predeterminada se
+activa entre las actividades que ingresan y salen.</p>
+
+<img src="{@docRoot}training/material/images/SceneTransition.png" alt="" width="600" height="405" style="margin-top:20px" />
+<p class="img-caption">
+  <strong>Figura 2</strong>: una transición de escena con un elemento compartido.
+</p>
+
+<h3>Especificar transiciones personalizadas</h3>
+
+<p>Primero, habilita las transiciones de contenido de la ventana con el atributo <code>android:windowContentTransitions</code>
+cuando definas un estilo que herede del tema material. También puedes especificar
+transiciones de entrada, salida y elementos compartidos en tu definición de estilo:</p>
+
+<pre>
+&lt;style name="BaseAppTheme" parent="android:Theme.Material">
+  &lt;!-- enable window content transitions -->
+  &lt;item name="android:windowContentTransitions">true&lt;/item>
+
+  &lt;!-- specify enter and exit transitions -->
+  &lt;item name="android:windowEnterTransition">@transition/explode&lt;/item>
+  &lt;item name="android:windowExitTransition">@transition/explode&lt;/item>
+
+  &lt;!-- specify shared element transitions -->
+  &lt;item name="android:windowSharedElementEnterTransition">
+    &#64;transition/change_image_transform&lt;/item>
+  &lt;item name="android:windowSharedElementExitTransition">
+    &#64;transition/change_image_transform&lt;/item>
+&lt;/style>
+</pre>
+
+<p>La transición <code>change_image_transform</code> en este ejemplo se define en la siguiente forma:</p>
+
+<pre>
+&lt;!-- res/transition/change_image_transform.xml -->
+&lt;!-- (see also Shared Transitions below) -->
+&lt;transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;changeImageTransform/>
+&lt;/transitionSet>
+</pre>
+
+<p>El elemento <code>changeImageTransform</code> corresponde a la clase
+{@link android.transition.ChangeImageTransform}. Para más información, consulta la referencia de la
+API para {@link android.transition.Transition}.</p>
+
+<p>Para habilitar las transiciones del contenido de las ventanas en tu código, llama al método
+{@link android.view.Window#requestFeature Window.requestFeature()}:</p>
+
+<pre>
+// inside your activity (if you did not enable transitions in your theme)
+getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+
+// set an exit transition
+getWindow().setExitTransition(new Explode());
+</pre>
+
+<p>Para especificar transiciones en tu código, llama a estos métodos con un objeto {@link
+android.transition.Transition}:</p>
+
+<ul>
+  <li>{@link android.view.Window#setEnterTransition Window.setEnterTransition()}</li>
+  <li>{@link android.view.Window#setExitTransition Window.setExitTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementEnterTransition
+      Window.setSharedElementEnterTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementExitTransition
+      Window.setSharedElementExitTransition()}</li>
+</ul>
+
+<p>Los métodos {@link android.view.Window#setExitTransition setExitTransition()} y {@link
+android.view.Window#setSharedElementExitTransition setSharedElementExitTransition()} definen
+la transición de salida para la actividad que realiza la llamada. Los métodos {@link android.view.Window#setEnterTransition
+setEnterTransition()} y {@link android.view.Window#setSharedElementEnterTransition
+setSharedElementEnterTransition()} definen la transición de entrada para la actividad invocada.</p>
+
+<p>Para obtener el efecto completo de una transición, debes habilitar las transiciones de contenido de las ventanas tanto para las
+actividades que realizan la llamada como para aquellas que son invocadas. De lo contrario, la actividad que realiza la llamada comenzará la transición de salida,
+pero luego observarás una ventana de transición (como escalar o difuminar).</p>
+
+<p>Para comenzar una transición de entrada lo antes posible, usa el método
+{@link android.view.Window#setAllowEnterTransitionOverlap Window.setAllowEnterTransitionOverlap()}
+en la actividad invocada. Esto te permite tener transiciones de entrada más intensas.</p>
+
+<h3>Iniciar una actividad mediante el uso de transiciones</h3>
+
+<p>Si permites transiciones y estableces una transición de salida para una actividad, la transición se activa
+cuando inicias otra actividad, como alguna de las siguientes:</p>
+
+<pre>
+startActivity(intent,
+              ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
+</pre>
+
+<p>Si estableciste una transición de entrada para la segunda actividad, la transición también se activa
+cuando se inicia la actividad. Para deshabilitar las transiciones cuando inicias otra actividad, proporciona
+una agrupación de opciones <code>null</code>.</p>
+
+<h3>Iniciar una actividad con un elemento compartido</h3>
+
+<p>Para realizar una animación de transiciones de pantallas entre dos actividades que tienen un elemento compartido:</p>
+
+<ol>
+<li>Habilita las transiciones de contenido de ventanas en tu tema.</li>
+<li>Especifica una transición de elementos compartidos en tu estilo.</li>
+<li>Define tu transición como un recurso XML.</li>
+<li>Asigna un nombre en común para los elementos compartidos en ambos diseños con el atributo
+<code>android:transitionName</code>.</li>
+<li>Usa el método {@link android.app.ActivityOptions#makeSceneTransitionAnimation
+ActivityOptions.makeSceneTransitionAnimation()}.</li>
+</ol>
+
+<pre>
+// get the element that receives the click event
+final View imgContainerView = findViewById(R.id.img_container);
+
+// get the common element for the transition in this activity
+final View androidRobotView = findViewById(R.id.image_small);
+
+// define a click listener
+imgContainerView.setOnClickListener(new View.OnClickListener() {
+    &#64;Override
+    public void onClick(View view) {
+        Intent intent = new Intent(this, Activity2.class);
+        // create the transition animation - the images in the layouts
+        // of both activities are defined with android:transitionName="robot"
+        ActivityOptions options = ActivityOptions
+            .makeSceneTransitionAnimation(this, androidRobotView, "robot");
+        // start the new activity
+        startActivity(intent, options.toBundle());
+    }
+});
+</pre>
+
+<p>Para las vistas dinámicas compartidas que generas en tu código, usa el método
+{@link android.view.View#setTransitionName View.setTransitionName()} para especificar un nombre de
+elemento en común en ambas actividades.</p>
+
+<p>Para invertir la animación de transición de escenas cuando terminas la segunda actividad, llama al método
+{@link android.app.Activity#finishAfterTransition Activity.finishAfterTransition()}
+en lugar del {@link android.app.Activity#finish Activity.finish()}.</p>
+
+<h3>Iniciar una actividad con múltiples elementos compartidos</h3>
+
+<p>Para realizar una animación de transición de escenas entre dos actividades que tienen más de un elemento
+compartido, define los elementos compartidos en ambos diseños con el atributo <code>android:transitionName</code>
+(o usa el método {@link android.view.View#setTransitionName View.setTransitionName()}
+en ambas actividades) y crea un objeto {@link android.app.ActivityOptions} como se indica a continuación:</p>
+
+<pre>
+ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(this,
+        Pair.create(view1, "agreedName1"),
+        Pair.create(view2, "agreedName2"));
+</pre>
+
+
+<h2 id="CurvedMotion">Usar movimiento curvo</h2>
+
+<p>Las animaciones en Material Design se basan en curvas para la interpolación de tiempo y los modelos de movimiento
+espacial. Con Android 5.0 (API nivel 21) y superior, puedes definir las curvas de sincronización personalizadas y
+los modelos de movimientos curvos para las animaciones.</p>
+
+<p>La clase {@link android.view.animation.PathInterpolator} es un nuevo interpolador que se basa en una curva
+Bézier o un objeto {@link android.graphics.Path}. Este interpolador especifica una curva de movimiento
+en un cuadrado de 1x1, con puntos de anclaje a (0,0) y (1,1), y puntos de control según lo especificado en los argumentos del
+constructor. También puedes definir un interpolador para la ruta de acceso como un recurso XML:</p>
+
+<pre>
+&lt;pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
+    android:controlX1="0.4"
+    android:controlY1="0"
+    android:controlX2="1"
+    android:controlY2="1"/>
+</pre>
+
+<p>El sistema proporciona recursos XML para las tres curvas básicas en la especificación
+de Material Design:</p>
+
+<ul>
+  <li><code>&#64;interpolator/fast_out_linear_in.xml</code></li>
+  <li><code>&#64;interpolator/fast_out_slow_in.xml</code></li>
+  <li><code>&#64;interpolator/linear_out_slow_in.xml</code></li>
+</ul>
+
+<p>Puedes pasar un objeto {@link android.view.animation.PathInterpolator} al método {@link
+android.animation.Animator#setInterpolator Animator.setInterpolator()}.</p>
+
+<p>La clase {@link android.animation.ObjectAnimator} tiene nuevos constructores que te permiten animar
+coordenadas junto a una ruta de acceso, usando dos o más propiedades a la vez. Por ejemplo, el siguiente animador
+usa un objeto{@link android.graphics.Path} para animar las propiedades X e Y de una vista:</p>
+
+<pre>
+ObjectAnimator mAnimator;
+mAnimator = ObjectAnimator.ofFloat(view, View.X, View.Y, path);
+...
+mAnimator.start();
+</pre>
+
+
+<h2 id="ViewState">Animar cambios de estados de las vistas</h2>
+
+<p>La clase {@link android.animation.StateListAnimator} te permite definir los animadores que se ejecutan cuando
+cambia el estado de una vista. En el siguiente ejemplo, se muestra cómo definir un {@link
+android.animation.StateListAnimator} como un recurso XML:</p>
+
+<pre>
+&lt;!-- animate the translationZ property of a view when pressed -->
+&lt;selector xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;item android:state_pressed="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="@android:integer/config_shortAnimTime"
+        android:valueTo="2dp"
+        android:valueType="floatType"/>
+        &lt;!-- you could have other objectAnimator elements
+             here for "x" and "y", or other properties -->
+    &lt;/set>
+  &lt;/item>
+  &lt;item android:state_enabled="true"
+    android:state_pressed="false"
+    android:state_focused="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="100"
+        android:valueTo="0"
+        android:valueType="floatType"/>
+    &lt;/set>
+  &lt;/item>
+&lt;/selector>
+</pre>
+
+<p>Para adjuntar animaciones personalizadas de los estados de visualizaciones, define un animador usando el elemento
+<code>selector</code> en un archivo de recurso XML como en este ejemplo y asígnalo a tu
+vista con el atributo <code>android:stateListAnimator</code>. Para asignar un animador de lista de estados
+a una vista en tu código, usa el método {@link android.animation.AnimatorInflater#loadStateListAnimator
+AnimationInflater.loadStateListAnimator()} y asigna el animador a tu vista con el método
+{@link android.view.View#setStateListAnimator View.setStateListAnimator()}.</p>
+
+<p>Cuando tu tema extiende al tema material, los botones tendrán una animación Z de manera predeterminada. Para evitar este
+comportamiento en los botones, establece el atributo <code>android:stateListAnimator</code> en
+<code>@null</code>.</p>
+
+<p>La clase {@link android.graphics.drawable.AnimatedStateListDrawable} te permite crear elementos de diseño
+que muestren animaciones entre los cambios de estados de la vista asociada. Algunos de los widgets del sistema en
+Android 5.0 usan estas animaciones de manera predeterminada. En el siguiente ejemplo, se muestra cómo
+definir un {@link android.graphics.drawable.AnimatedStateListDrawable} como un recurso XML:</p>
+
+<pre>
+&lt;!-- res/drawable/myanimstatedrawable.xml -->
+&lt;animated-selector
+    xmlns:android="http://schemas.android.com/apk/res/android">
+
+    &lt;!-- provide a different drawable for each state-->
+    &lt;item android:id="@+id/pressed" android:drawable="@drawable/drawableP"
+        android:state_pressed="true"/>
+    &lt;item android:id="@+id/focused" android:drawable="@drawable/drawableF"
+        android:state_focused="true"/>
+    &lt;item android:id="@id/default"
+        android:drawable="@drawable/drawableD"/>
+
+    &lt;!-- specify a transition -->
+    &lt;transition android:fromId="@+id/default" android:toId="@+id/pressed">
+        &lt;animation-list>
+            &lt;item android:duration="15" android:drawable="@drawable/dt1"/>
+            &lt;item android:duration="15" android:drawable="@drawable/dt2"/>
+            ...
+        &lt;/animation-list>
+    &lt;/transition>
+    ...
+&lt;/animated-selector>
+</pre>
+
+
+<h2 id="AnimVector">Animar interfaces dibujables en vector</h2>
+
+<p>Las <a href="{@docRoot}training/material/drawables.html#VectorDrawables">interfaces dibujables en vector</a> son
+escalables sin perder definición. La clase {@link android.graphics.drawable.AnimatedVectorDrawable}
+te permite animar las propiedades de un elemento de diseño en vector.</p>
+
+<p>Generalmente, las interfaces animadas dibujables en vector se definen en tres archivos XML:</p>
+
+<ul>
+<li>Una interfaz dibujable en vector con el elemento <code>&lt;vector&gt;</code> en
+<code>res/drawable/</code></li>
+<li>Una interfaz dibujable animada en vector con el elemento <code>&lt;animated-vector&gt;</code> en
+<code>res/drawable/</code></li>
+<li>Uno o más animadores de objeto con el elemento <code>&lt;objectAnimator&gt;</code> en
+<code>res/anim/</code></li>
+</ul>
+
+<p>Las interfaces animadas dibujables en vector pueden animar los atributos de los elementos <code>&lt;group&gt;</code> y
+<code>&lt;path&gt;</code>. Los elementos <code>&lt;group&gt;</code> definen un conjunto de
+rutas de acceso o subgrupos y el elemento <code>&lt;path&gt;</code> define rutas de acceso para dibujar.</p>
+
+<p>Cuando definas una interfaz dibujable en vector que desees animar, usa el atributo <code>android:name</code>
+para asignar un nombre único a grupos o rutas de acceso, de manera que puedas hacer referencia a ellos desde tus definiciones del
+animador. Por ejemplo:</p>
+
+<pre>
+&lt;!-- res/drawable/vectordrawable.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="64dp"
+    android:width="64dp"
+    android:viewportHeight="600"
+    android:viewportWidth="600">
+    &lt;group
+        <strong>android:name="rotationGroup"</strong>
+        android:pivotX="300.0"
+        android:pivotY="300.0"
+        android:rotation="45.0" >
+        &lt;path
+            <strong>android:name="v"</strong>
+            android:fillColor="#000000"
+            android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
+    &lt;/group>
+&lt;/vector>
+</pre>
+
+<p>La definición de la interfaz animada dibujable en vector hace referencia a grupos y rutas de acceso en el elemento de diseño en vector
+por sus nombres:</p>
+
+<pre>
+&lt;!-- res/drawable/animvectordrawable.xml -->
+&lt;animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+  android:drawable="@drawable/vectordrawable" >
+    &lt;target
+        android:name="rotationGroup"
+        android:animation="@anim/rotation" />
+    &lt;target
+        android:name="v"
+        android:animation="@anim/path_morph" />
+&lt;/animated-vector>
+</pre>
+
+<p>Las definiciones de animación representan objetos {@link android.animation.ObjectAnimator} o {@link
+android.animation.AnimatorSet}. El primer animador en este ejemplo rota el grupo
+objetivo unos 360 grados:</p>
+
+<pre>
+&lt;!-- res/anim/rotation.xml -->
+&lt;objectAnimator
+    android:duration="6000"
+    android:propertyName="rotation"
+    android:valueFrom="0"
+    android:valueTo="360" />
+</pre>
+
+<p>El segundo animador en este ejemplo transforma la ruta de acceso de la interfaz dibujable en vector de una forma a
+otra. Ambas rutas de acceso deben ser compatibles para transformarse: deben tener el mismo número de comandos
+y el mismo número de parámetros para cada comando.</p>
+
+<pre>
+&lt;!-- res/anim/path_morph.xml -->
+&lt;set xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;objectAnimator
+        android:duration="3000"
+        android:propertyName="pathData"
+        android:valueFrom="M300,70 l 0,-70 70,70 0,0   -70,70z"
+        android:valueTo="M300,70 l 0,-70 70,0  0,140 -70,0 z"
+        android:valueType="pathType" />
+&lt;/set>
+</pre>
+
+<p>Para más información, consulta la referencia de la API para {@link
+android.graphics.drawable.AnimatedVectorDrawable}.</p>
diff --git a/docs/html-intl/intl/es/training/material/compatibility.jd b/docs/html-intl/intl/es/training/material/compatibility.jd
new file mode 100644
index 0000000..ad2e953
--- /dev/null
+++ b/docs/html-intl/intl/es/training/material/compatibility.jd
@@ -0,0 +1,168 @@
+page.title=Mantener la compatibilidad
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lección te enseña a realizar lo siguiente:</h2>
+<ol>
+  <li><a href="#Theme">Definir estilos alternativos</a></li>
+  <li><a href="#Layouts">Proporcionar diseños alternativos</a></li>
+  <li><a href="#SupportLib">Usar la Biblioteca de soporte</a></li>
+  <li><a href="#CheckVersion">Comprobar la versión del sistema</a></li>
+</ol>
+<h2>También deberías leer</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificación de Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design en Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Algunas características de Material Design, como el tema material y las transiciones de actividades personalizadas, solo
+están disponibles en Android 5.0 (API nivel 21) y superior. Sin embargo, puedes diseñar tus aplicaciones para
+usar estas características cuando se ejecutan en dispositivos que admiten Material Design y aún son compatibles
+con dispositivos que ejecutan versiones anteriores de Android.</p>
+
+
+<h2 id="Theme">Definir estilos alternativos</h2>
+
+<p>Puedes configurar tu aplicación para usar el tema material en los dispositivos que los admiten y revertir
+a un tema anterior en los dispositivos que ejecutan versiones anteriores de Android:</p>
+
+<ol>
+<li>Define un tema que herede de un tema anterior (como Holo) en
+<code>res/values/styles.xml</code>.</li>
+<li>Define un tema con el mismo nombre que hereda del tema material en
+<code>res/values-v21/styles.xml</code>.</li>
+<li>Establece este tema como el tema de tu aplicación en el archivo de manifiesto.</li>
+</ol>
+
+<p class="note"><strong>Nota:</strong>
+Si tu aplicación usa el tema material pero no proporciona un tema alternativo,
+tu aplicación no se ejecutará en versiones de Android anteriores a la versión 5.0.
+</p>
+
+
+<h2 id="Layouts">Proporcionar diseños alternativos</h2>
+
+<p>Si los diseños que realizas de acuerdo con las pautas de Material Design no usan ninguno de
+los nuevos atributos XML introducidos en Android 5.0 (API nivel 21), estos trabajarán en
+versiones anteriores de Android. De lo contrario, puedes proporcionar diseños alternativos. También puedes proporcionar diseños
+alternativos para personalizar la apariencia de tu aplicación en versiones anteriores de Android.</p>
+
+<p>Crea tus archivos de diseño para Android 5.0 (API nivel 21) dentro de <code>res/layout-v21/</code> y
+tus archivos de diseño alternativo para versiones anteriores de Android dentro de <code>res/layout/</code>.
+Por ejemplo, <code>res/layout/my_activity.xml</code> es un diseño alternativo para
+<code>res/layout-v21/my_activity.xml</code>.</p>
+
+<p>Para evitar duplicación de código, define tus estilos en <code>res/values/</code>, modifica
+estilos en <code>res/values-v21/</code> para las nuevas API y usa transmisión por herencia de estilos, definiendo estilos
+base en <code>res/values/</code> y heredando de los que están en <code>res/values-v21/</code>.</p>
+
+
+<h2 id="SupportLib">Usar la Biblioteca de soporte</h2>
+
+<p>Las <a href="{@docRoot}tools/support-library/features.html#v7">Bibliotecas de soporte v7</a>
+r21 y superiores incluyen las siguientes características de Material Design:</p>
+
+<ul>
+<li><a href="{@docRoot}training/material/theme.html">Estilos de Material Design</a> para algunos widgets
+del sistema cuando aplicas uno de los temas <code>Theme.AppCompat</code>.</li>
+<li><a href="{@docRoot}training/material/theme.html#ColorPalette">Atributos del tema de la paleta de colores</a>
+en los temas <code>Theme.AppCompat</code>.</li>
+<li>El widget {@link android.support.v7.widget.RecyclerView} para <a href="{@docRoot}training/material/lists-cards.html#RecyclerView">mostrar conjuntos
+de datos</a>.</li>
+<li>El widget {@link android.support.v7.widget.CardView} para <a href="{@docRoot}training/material/lists-cards.html#CardView">crear tarjetas</a>.</li>
+<li>La clase {@link android.support.v7.graphics.Palette} para <a href="{@docRoot}training/material/drawables.html#ColorExtract">extraer colores prominentes de
+imágenes</a>.</li>
+</ul>
+
+<h3>Widgets del sistema</h3>
+
+<p>Los temas <code>Theme.AppCompat</code> proporcionan estilos de Material Design para estos widgets:</p>
+
+<ul>
+  <li>{@link android.widget.EditText}</li>
+  <li>{@link android.widget.Spinner}</li>
+  <li>{@link android.widget.CheckBox}</li>
+  <li>{@link android.widget.RadioButton}</li>
+  <li>{@link android.support.v7.widget.SwitchCompat}</li>
+  <li>{@link android.widget.CheckedTextView}</li>
+</ul>
+
+<h3>Paleta de colores</h3>
+
+<p>Para obtener estilos de Material Design y personalizar la paleta de colores con la Biblioteca de soporte
+v7 de Android, aplica uno de los temas <code>Theme.AppCompat</code>:</p>
+
+<pre>
+&lt;!-- extend one of the Theme.AppCompat themes -->
+&lt;style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
+    &lt;!-- customize the color palette -->
+    &lt;item name="colorPrimary">@color/material_blue_500&lt;/item>
+    &lt;item name="colorPrimaryDark">@color/material_blue_700&lt;/item>
+    &lt;item name="colorAccent">@color/material_green_A200&lt;/item>
+&lt;/style>
+</pre>
+
+<h3>Listas y tarjetas</h3>
+
+<p>Los widgets {@link android.support.v7.widget.RecyclerView} y {@link
+android.support.v7.widget.CardView} están disponible en versiones anteriores de Android mediante
+la Biblioteca de soporte v7 con estas limitaciones:</p>
+<ul>
+<li>{@link android.support.v7.widget.CardView} regresa a una implementación de sombras programáticas
+mediante el uso de espaciado adicional.</li>
+<li>{@link android.support.v7.widget.CardView} no recorta las vistas de sus hijos que forman intersecciones
+con esquinas redondeadas.</li>
+</ul>
+
+
+<h3>Dependencias</h3>
+
+<p>Para usar estas características en versiones de Android anteriores a la 5.0 (API nivel 21), incluye
+en tu proyecto la Biblioteca de soporte v7 de Android como una <a href="{@docRoot}/sdk/installing/studio-build.html#dependencies">dependencia de Gradle</a>:</p>
+
+<pre>
+dependencies {
+    compile 'com.android.support:appcompat-v7:21.0.+'
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
+
+
+<h2 id="CheckVersion">Comprobar la versión del sistema</h2>
+
+<p>Las siguientes características están disponibles solo en Android 5.0 (nivel de API 21) y superior:</p>
+
+<ul>
+<li>Transiciones de actividades</li>
+<li>Respuesta táctil</li>
+<li>Animaciones con el efecto revelar</li>
+<li>Animaciones basadas en rutas</li>
+<li>Interfaces dibujables en vector</li>
+<li>Matiz de la interfaz dibujable</li>
+</ul>
+
+<p>Para conservar la compatibilidad con versiones anteriores de Android, comprueba la {@link
+android.os.Build.VERSION#SDK_INT version} del sistema en tiempo de ejecución antes de invocar las API para cualquiera de estas
+características:</p>
+
+<pre>
+// Check if we're running on Android 5.0 or higher
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+    // Call some material design APIs here
+} else {
+    // Implement this feature without material design
+}
+</pre>
+
+<p class="note"><strong>Nota:</strong> Para especificar qué versiones de Android admite tu aplicación,
+usa los atributos <code>android:minSdkVersion</code> y <code>android:targetSdkVersion</code>
+en tu archivo de manifiesto. Para usar las características de Material Design en Android 5.0, establece el
+atributo <code>android:targetSdkVersion</code> en <code>21</code>. Para más información, consulta
+la <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">guía de &lt;uses-sdk&gt; de la
+API</a>.</p>
diff --git a/docs/html-intl/intl/es/training/material/drawables.jd b/docs/html-intl/intl/es/training/material/drawables.jd
new file mode 100644
index 0000000..6bfeff9
--- /dev/null
+++ b/docs/html-intl/intl/es/training/material/drawables.jd
@@ -0,0 +1,126 @@
+page.title=Trabajar con interfaces dibujables
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lección te enseña a realizar lo siguiente:</h2>
+<ol>
+  <li><a href="#DrawableTint">Cambiar el matiz de los recursos dibujables</a></li>
+  <li><a href="#ColorExtract">Extraer colores prominentes de una imagen</a></li>
+  <li><a href="#VectorDrawables">Crear interfaces dibujables en vector</a></li>
+</ol>
+<h2>También deberías leer</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificación de Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Diseño material en Android</a></li>
+</ul>
+</div>
+</div>
+
+<p>Las siguientes capacidades para las interfaces dibujables te ayudan a implementar Material Design en tus aplicaciones:</p>
+
+<ul>
+<li>Matiz de la interfaz dibujable</li>
+<li>Extracción de color prominente</li>
+<li>Interfaces dibujables en vector</li>
+</ul>
+
+<p>Esta lección te muestra cómo usar estas características en tu aplicación.</p>
+
+
+<h2 id="DrawableTint">Cambiar el matiz de los recursos dibujables</h2>
+
+<p>Con Android 5.0 (API nivel 21) y superior, puedes cambiar el matiz de los mapas de bits y nueve parches definidos como
+máscaras alfa. Puedes cambiar el matiz con recursos de colores o atributos de temas que se resuelven a
+recursos de colores (por ejemplo, <code>?android:attr/colorPrimary</code>). Generalmente, puedes crear estos recursos
+solo una vez y agregarles color automáticamente para que coincidan con tu tema.</p>
+
+<p>Puedes aplicar un matiz a los objetos {@link android.graphics.drawable.BitmapDrawable} o {@link
+android.graphics.drawable.NinePatchDrawable} con el método {@code setTint()}. También puedes
+establecer el color de matiz y el modo en tus diseños con los atributos <code>android:tint</code> y
+<code>android:tintMode</code>.</p>
+
+
+<h2 id="ColorExtract">Extraer colores prominentes de una imagen</h2>
+
+<p>La Biblioteca de soporte de Android r21 y superiores incluye la clase {@link
+android.support.v7.graphics.Palette}, que te permite extraer colores prominentes de una imagen.
+Esta clase extrae los siguientes colores prominentes:</p>
+
+<ul>
+<li>Brillante</li>
+<li>Oscuro brillante</li>
+<li>Claro brillante</li>
+<li>Apagado</li>
+<li>Oscuro apagado</li>
+<li>Claro apagado</li>
+</ul>
+
+<p>Para extraer estos colores, pasa un objeto {@link android.graphics.Bitmap} al método estático
+{@link android.support.v7.graphics.Palette#generate Palette.generate()} en el subproceso en
+segundo plano en donde cargas tus imágenes. Si no puedes usar dicho subproceso, llama al método
+{@link android.support.v7.graphics.Palette#generateAsync Palette.generateAsync()} y proporciona
+un gestor de eventos en su lugar.</p>
+
+<p>Puedes recuperar los colores prominentes de la imagen mediante los métodos de obtención en la clase
+<code>Palette</code>, como <code>Palette.getVibrantColor</code>.</p>
+
+<p>Para usar la clase {@link android.support.v7.graphics.Palette} en tu proyecto, agrega la siguiente
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Dependencia Gradle</a> al módulo de
+tu aplicación:</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:palette-v7:21.0.0'
+}
+</pre>
+
+<p>Para más información, consulta la referencia de la API para la clase {@link android.support.v7.graphics.Palette}.
+</p>
+
+
+<h2 id="VectorDrawables">Crear interfaces dibujables en vector</h2>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=wlFVIIstKmA" style="margin-top:18px">
+<div>
+    <h3>Video</h3>
+    <p>Gráficos en vector de Android</p>
+</div>
+</a>
+
+<p>En Android 5.0 (API nivel 21) y superiores, puedes definir las interfaces dibujables en vector, que escalan sin
+perder definición. Solo necesitas un archivo de recurso para una imagen en vector, en oposición a un archivo de recurso para
+la densidad de cada pantalla en el caso de imágenes de mapa de bits. Para crear una imagen en vector, defines los detalles
+de la forma dentro de un elemento XML <code>&lt;vector&gt;</code>.</p>
+
+<p>El siguiente ejemplo define una imagen en vector con la forma de un corazón:</p>
+
+<pre>
+&lt;!-- res/drawable/heart.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    &lt;!-- intrinsic size of the drawable -->
+    android:height="256dp"
+    android:width="256dp"
+    &lt;!-- size of the virtual canvas -->
+    android:viewportWidth="32"
+    android:viewportHeight="32">
+
+  &lt;!-- draw a path -->
+  &lt;path android:fillColor="#8fff"
+      android:pathData="M20.5,9.5
+                        c-1.955,0,-3.83,1.268,-4.5,3
+                        c-0.67,-1.732,-2.547,-3,-4.5,-3
+                        C8.957,9.5,7,11.432,7,14
+                        c0,3.53,3.793,6.257,9,11.5
+                        c5.207,-5.242,9,-7.97,9,-11.5
+                        C25,11.432,23.043,9.5,20.5,9.5z" />
+&lt;/vector>
+</pre>
+
+<p>Las imágenes en vector están representadas en Android como objetos {@link android.graphics.drawable.VectorDrawable}.
+ Para más información sobre la sintaxis <code>pathData</code>, consulta la <a href="http://www.w3.org/TR/SVG11/paths.html#PathData">referencia de ruta de acceso SVG</a>. Para más información
+sobre la animación de las propiedades de las interfaces dibujables en vector, consulta
+<a href="{@docRoot}training/material/animations.html#AnimVector">Animación de interfaces dibujables en vector</a>.</p>
diff --git a/docs/html-intl/intl/es/training/material/get-started.jd b/docs/html-intl/intl/es/training/material/get-started.jd
new file mode 100644
index 0000000..bd67316
--- /dev/null
+++ b/docs/html-intl/intl/es/training/material/get-started.jd
@@ -0,0 +1,171 @@
+page.title=Comencemos
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lección te enseña a realizar lo siguiente:</h2>
+<ol>
+  <li><a href="#ApplyTheme">Aplicar el tema Material</a></li>
+  <li><a href="#Layouts">Realizar tus diseños</a></li>
+  <li><a href="#Depth">Especificar la elevación en tus vistas</a></li>
+  <li><a href="#ListsCards">Crear listas y tarjetas</a></li>
+  <li><a href="#Animations">Personalizar tus animaciones</a></li>
+</ol>
+<h2>También deberías leer</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificación de Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design en Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Para crear aplicaciones con Material Design:</p>
+
+<ol>
+  <li style="margin-bottom:10px">
+    Revisar la <a href="http://www.google.com/design/spec">especificación de Material Design</a>.</li>
+  <li style="margin-bottom:10px">
+    Aplicar el <strong>tema</strong> material a tu aplicación.</li>
+  <li style="margin-bottom:10px">
+    Crear tus <strong>diseños</strong> siguiendo las pautas de Material Design.</li>
+  <li style="margin-bottom:10px">
+    Especificar la <strong>elevación</strong> de tus vistas para convertir sombras.</li>
+  <li style="margin-bottom:10px">
+    Usar <strong>widgets</strong> del sistema para listas y tarjetas.</li>
+  <li style="margin-bottom:10px">
+    Personalizar las <strong>animaciones</strong> en tu aplicación.</li>
+</ol>
+
+<h3>Mantener la compatibilidad con versiones anteriores</h3>
+
+<p>Puedes agregar muchas características de Material Design a tu aplicación mientras mantienes la compatibilidad con las
+versiones anteriores a Android 5.0. Para más información, consulta
+<a href="{@docRoot}training/material/compatibility.html">Mantener la compatibilidad</a>.</p>
+
+<h3>Actualización de tu aplicación con Material Design</h3>
+
+<p>Para actualizar una aplicación existente para incorporar Material Design, actualiza tus diseños siguiendo
+las pautas de Material Design. Además, asegúrate de incorporar profundidad, respuesta táctil y
+animaciones.</p>
+
+<h3>Crear nuevas aplicaciones con Material Design</h3>
+
+<p>Si creas una nueva aplicación con las características de Material Design, las <a href="http://www.google.com/design/spec">pautas de Material Design</a> te proporcionan un framework
+de diseño cohesivo. Sigue estas pautas y usa la nueva funcionalidad del framework de
+Android para diseñar y desarrollar tu aplicación.</p>
+
+
+<h2 id="ApplyTheme">Aplicar el tema Material</h2>
+
+<p>Para aplicar el tema material en tu aplicación, especifica el estilo que hereda de
+<code>android:Theme.Material</code>:</p>
+
+<pre>
+&lt;!-- res/values/styles.xml -->
+&lt;resources>
+  &lt;!-- your theme inherits from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- theme customizations -->
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<p>El tema material proporciona widgets de sistema actualizados y te permite establecer la paleta de colores y las animaciones
+predeterminadas para la respuesta táctil y las transiciones de actividades. Para obtener más detalles, consulta
+<a href="{@docRoot}training/material/theme.html">Usar el tema Material</a>.</p>
+
+
+<h2 id="Layouts">Realizar tus diseños</h2>
+
+<p>Además de aplicar y personalizar el tema material, tus diseños deben cumplir con
+las <a href="http://www.google.com/design/spec">pautas de Material Design</a>. Cuando realices
+tus diseños, presta especial atención a lo siguiente:</p>
+
+<ul>
+<li>Cuadrículas de referencia</li>
+<li>Líneas clave</li>
+<li>Espaciado</li>
+<li>Tamaño del objetivo táctil</li>
+<li>Estructura del diseño</li>
+</ul>
+
+
+<h2 id="Depth">Especificar la elevación en tus vistas</h2>
+
+<p>Las vistas pueden proyectar sombras y el valor de elevación de una vista
+determina el tamaño de su sombra y el orden en que será dibujada. Para establecer la elevación de una vista, usa el atributo
+<code>android:elevation</code> en tus diseños:</p>
+
+<pre>
+&lt;TextView
+    android:id="&#64;+id/my_textview"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="&#64;string/next"
+    android:background="&#64;color/white"
+    android:elevation="5dp" />
+</pre>
+
+<p>La nueva propiedad <code>translationZ</code> te permite crear animaciones que reflejen cambios
+temporales en la elevación de una vista. Los cambios de elevación pueden ser útiles cuando
+<a href="{@docRoot}training/material/animations.html#ViewState">responden a gestos
+táctiles</a>.</p>
+
+<p>Para obtener más detalles, consulta <a href="{@docRoot}training/material/shadows-clipping.html">Definir
+vistas de recorte y sombras</a>.</p>
+
+
+<h2 id="ListsCards">Crear listas y tarjetas</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} es una versión más acoplable de {@link
+android.widget.ListView} que admite diferentes tipos de diseños y proporciona mejoras en el rendimiento.
+{@link android.support.v7.widget.CardView} te permite mostrar partes de información dentro de las tarjetas con
+una apariencia uniforme entre distintas aplicaciones. El siguiente ejemplo de códigos muestra cómo incluir un
+{@link android.support.v7.widget.CardView} en tu diseño:</p>
+
+<pre>
+&lt;android.support.v7.widget.CardView
+    android:id="&#64;+id/card_view"
+    android:layout_width="200dp"
+    android:layout_height="200dp"
+    card_view:cardCornerRadius="3dp">
+    ...
+&lt;/android.support.v7.widget.CardView>
+</pre>
+
+<p>Para obtener más información, consulta <a href="{@docRoot}training/material/lists-cards.html">Crear listas
+y tarjetas</a>.</p>
+
+
+<h2 id="Animations">Personalizar tus animaciones</h2>
+
+<p>Android 5.0 (API nivel 21) incluye nuevas API para crear animaciones personalizadas en tu aplicación.
+Por ejemplo, puedes habilitar las transiciones de actividades y definir una transición de salida dentro de una
+actividad:</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // enable transitions
+        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+        setContentView(R.layout.activity_my);
+    }
+
+    public void onSomeButtonClicked(View view) {
+        getWindow().setExitTransition(new Explode());
+        Intent intent = new Intent(this, MyOtherActivity.class);
+        startActivity(intent,
+                      ActivityOptions
+                          .makeSceneTransitionAnimation(this).toBundle());
+    }
+}
+</pre>
+
+<p>Cuando comienzas otra actividad desde esta actividad, se activa la transición de salida.</p>
+
+<p>Para más información sobre las nuevas API de animación, consulta <a href="{@docRoot}training/material/animations.html">Definir animaciones personalizadas</a>.</p>
diff --git a/docs/html-intl/intl/es/training/material/index.jd b/docs/html-intl/intl/es/training/material/index.jd
new file mode 100644
index 0000000..1af0ead
--- /dev/null
+++ b/docs/html-intl/intl/es/training/material/index.jd
@@ -0,0 +1,60 @@
+page.title=Material Design para desarrolladores
+page.image=images/cards/material_2x.png
+page.metaDescription=Aprende a aplicar Material Design a tus aplicaciones.
+
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>Dependencias y requisitos previos</h2>
+  <ul>
+    <li>Android 5.0 (API nivel 21)</li>
+  </ul>
+</div>
+</div>
+
+<p>Material Design es una guía integral para el diseño visual, de movimientos y de interacción en distintas
+plataformas y dispositivos. Para usar Material Design en tus aplicaciones de Android, sigue las pautas
+descritas en la
+<a href="http://www.google.com/design/spec/material-design/introduction.html">especificación de Material
+Design</a> y usa los nuevos componentes y funcionalidades disponibles en Android 5.0
+(API nivel 21).</p>
+
+<p>Esta clase muestra cómo crear aplicaciones de Material Design con los siguientes elementos:</p>
+
+<ul>
+<li>Tema Material</li>
+<li>Widget para tarjetas y listas</li>
+<li>Personalizar sombras y ver recortes</li>
+<li>Interfaces dibujables en vector</li>
+<li>Animaciones personalizadas</li>
+</ul>
+
+<p>Esta clase también te enseña cómo mantener la compatibilidad con versiones anteriores de Android
+5.0 (API nivel 21) cuando usas las características de Material Design en tu aplicación.</p>
+
+<h2>Lecciones</h2>
+
+<dl>
+  <dt><a href="{@docRoot}training/material/get-started.html">Comencemos</a></dt>
+  <dd>Aprende a actualizar tu aplicación con las características de Material Design.</dd>
+
+  <dt><a href="{@docRoot}training/material/theme.html">Usar el tema Material</a></dt>
+  <dd>Aprende a aplicar los estilos de Material Design a tu aplicación.</dd>
+
+  <dt><a href="{@docRoot}training/material/lists-cards.html">Crear listas y tarjetas</a></dt>
+  <dd>Aprende a crear listas y tarjetas con un aspecto consistente mediante el uso de widgets del sistema.</dd>
+
+  <dt><a href="{@docRoot}training/material/shadows-clipping.html">Definir vistas de recorte y sombras</a></dt>
+  <dd>Aprende a establecer la elevación para tus vistas para crear sombras personalizadas y cómo recortar vistas.</dd>
+
+  <dt><a href="{@docRoot}training/material/drawables.html">Trabajar con interfaces dibujables</a></dt>
+  <dd>Aprende cómo crear interfaces dibujables en vector y cómo agregar un matiz a los recursos dibujables.</dd>
+
+  <dt><a href="{@docRoot}training/material/animations.html">Definir animaciones personalizadas</a></dt>
+  <dd>Aprende a crear animaciones personalizadas para vistas y transiciones de actividades con elementos compartidos.</dd>
+
+  <dt><a href="{@docRoot}training/material/compatibility.html">Mantener la compatibilidad</a></dt>
+  <dd>Aprende a mantener la compatibilidad con versiones de plataforma anteriores a Android 5.0.</dd>
+</dl>
diff --git a/docs/html-intl/intl/es/training/material/lists-cards.jd b/docs/html-intl/intl/es/training/material/lists-cards.jd
new file mode 100644
index 0000000..1d5db98
--- /dev/null
+++ b/docs/html-intl/intl/es/training/material/lists-cards.jd
@@ -0,0 +1,266 @@
+page.title=Crear listas y tarjetas
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lección te enseña a realizar lo siguiente:</h2>
+<ol>
+  <li><a href="#RecyclerView">Crear listas</a></li>
+  <li><a href="#CardView">Crear tarjetas</a></li>
+  <li><a href="#Dependencies">Agregar dependencias</a></li>
+</ol>
+<h2>También deberías leer</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificación de Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design en Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Para crear listas completas y tarjetas con estilos de Material Design en tus aplicaciones, puedes usar los widgets
+{@link android.support.v7.widget.RecyclerView} y {@link android.support.v7.widget.CardView}.
+</p>
+
+
+<h2 id="RecyclerView">Crear listas</h2>
+
+<p>El widget {@link android.support.v7.widget.RecyclerView} es una versión más
+flexible y avanzada de {@link android.widget.ListView}. Este widget es un contenedor para mostrar grandes conjuntos de
+datos que se pueden desplazar de manera muy eficiente al mantener una cantidad limitada de vistas. Usa el widget
+{@link android.support.v7.widget.RecyclerView} cuando tengas conjuntos de datos cuyos elementos
+cambien en tiempo de ejecución sobre la base de la acción del usuario o los eventos de la red.</p>
+
+<p>La clase {@link android.support.v7.widget.RecyclerView} simplifica la pantalla y la manipulación de grandes conjuntos de
+datos al proporcionar lo siguiente:</p>
+
+<ul>
+  <li>Administradores de diseño para el posicionamiento de elementos</li>
+  <li>Animaciones predeterminadas para las operaciones comunes con elementos, como quitar o agregar elementos</li>
+</ul>
+
+<p>También tienes la flexibilidad para definir administradores de diseño personalizados y animaciones para los widgets {@link
+android.support.v7.widget.RecyclerView}.</p>
+
+<img src="{@docRoot}training/material/images/RecyclerView.png" alt="" width="550" height="106" />
+<p class="img-caption">
+<strong>Figura 1</strong>. El widget <code>RecyclerView</code>.
+</p>
+
+<p>Para usar el widget {@link android.support.v7.widget.RecyclerView}, tienes que especificar un
+adaptador y un administrador de diseño. Para crear un adaptador, extiende la clase {@link
+android.support.v7.widget.RecyclerView.Adapter RecyclerView.Adapter}. Los detalles
+de la implementación dependen de las especificaciones de tu conjunto de datos y los tipos de vistas. Para más
+información, consulta los <a href="#RVExamples">ejemplos</a> que figuran a continuación.</p>
+
+<div style="float:right">
+<img src="{@docRoot}design/material/images/list_mail.png" alt="" width="250" height="426" />
+<p class="img-caption" style="margin-left:8px">
+<strong>Figura 2</strong>. Listas con <code>RecyclerView</code>.
+</p>
+</div>
+
+<p>Un <strong>administrador de diseño</strong> posiciona las vistas de artículos dentro de un {@link
+android.support.v7.widget.RecyclerView} y determina cuándo volver a usar las vistas de elementos que ya
+no están visibles para el usuario. Para reutilizar (o <em>reciclar</em>) una vista, un administrador de diseño puede solicitarle al
+adaptador que reemplace el contenido de la vista con un elemento diferente del conjunto de datos. De esta manera,
+cuando se reciclan las vistas se mejora el rendimiento al evitar la creación de vistas innecesarias o
+realizar búsquedas costosas de {@link android.app.Activity#findViewById findViewById()}.</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} te proporciona estos administradores de diseño incorporados:</p>
+
+<ul>
+<li>{@link android.support.v7.widget.LinearLayoutManager} muestra elementos en una lista de desplazamiento horizontal o
+vertical.</li>
+<li>{@link android.support.v7.widget.GridLayoutManager} muestra elementos en una cuadrícula.</li>
+<li>{@link android.support.v7.widget.StaggeredGridLayoutManager} muestra elementos en una cuadrícula escalonada.</li>
+</ul>
+
+<p>Para crear un administrador de diseño personalizado, extiende la clase {@link
+android.support.v7.widget.RecyclerView.LayoutManager RecyclerView.LayoutManager}.</p>
+
+<h3>Animaciones</h3>
+
+<p>Las animaciones para agregar o eliminar elementos están permitidas en forma predeterminada en {@link
+android.support.v7.widget.RecyclerView}. Para personalizar estas animaciones, extiende la clase
+{@link android.support.v7.widget.RecyclerView.ItemAnimator RecyclerView.ItemAnimator} y usa
+el método {@link android.support.v7.widget.RecyclerView#setItemAnimator RecyclerView.setItemAnimator()}.
+</p>
+
+<h3 id="RVExamples">Ejemplos</h3>
+
+<p>El siguiente ejemplo de códigos demuestra cómo agregar el widget
+{@link android.support.v7.widget.RecyclerView} a un diseño:</p>
+
+<pre>
+&lt;!-- A RecyclerView with some commonly used attributes -->
+&lt;android.support.v7.widget.RecyclerView
+    android:id="@+id/my_recycler_view"
+    android:scrollbars="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
+</pre>
+
+<p>Una vez que hayas agregado un widget {@link android.support.v7.widget.RecyclerView} a tu diseño,
+obtén un identificador para el objeto, conéctalo a un administrador de diseño y adjunta un adaptador para los datos
+que se van a mostrar:</p>
+
+<pre>
+public class MyActivity extends Activity {
+    private RecyclerView mRecyclerView;
+    private RecyclerView.Adapter mAdapter;
+    private RecyclerView.LayoutManager mLayoutManager;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.my_activity);
+        mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);
+
+        // use this setting to improve performance if you know that changes
+        // in content do not change the layout size of the RecyclerView
+        mRecyclerView.setHasFixedSize(true);
+
+        // use a linear layout manager
+        mLayoutManager = new LinearLayoutManager(this);
+        mRecyclerView.setLayoutManager(mLayoutManager);
+
+        // specify an adapter (see also next example)
+        mAdapter = new MyAdapter(myDataset);
+        mRecyclerView.setAdapter(mAdapter);
+    }
+    ...
+}
+</pre>
+
+<p>El adaptador proporciona acceso a los elementos en tu conjunto de datos, crea vistas para los elementos y
+reemplaza el contenido de algunas de las vistas con estos elementos de datos nuevos cuando el elemento original ya no está
+visible. El siguiente ejemplo de código muestra una implementación simple para un conjunto de datos que consta
+de una matriz de cadenas mostradas mediante el uso de widgets {@link android.widget.TextView}:</p>
+
+<pre>
+public class MyAdapter extends RecyclerView.Adapter&lt;MyAdapter.ViewHolder> {
+    private String[] mDataset;
+
+    // Provide a reference to the views for each data item
+    // Complex data items may need more than one view per item, and
+    // you provide access to all the views for a data item in a view holder
+    public static class ViewHolder extends RecyclerView.ViewHolder {
+        // each data item is just a string in this case
+        public TextView mTextView;
+        public ViewHolder(TextView v) {
+            super(v);
+            mTextView = v;
+        }
+    }
+
+    // Provide a suitable constructor (depends on the kind of dataset)
+    public MyAdapter(String[] myDataset) {
+        mDataset = myDataset;
+    }
+
+    // Create new views (invoked by the layout manager)
+    &#64;Override
+    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
+                                                   int viewType) {
+        // create a new view
+        View v = LayoutInflater.from(parent.getContext())
+                               .inflate(R.layout.my_text_view, parent, false);
+        // set the view's size, margins, paddings and layout parameters
+        ...
+        ViewHolder vh = new ViewHolder(v);
+        return vh;
+    }
+
+    // Replace the contents of a view (invoked by the layout manager)
+    &#64;Override
+    public void onBindViewHolder(ViewHolder holder, int position) {
+        // - get element from your dataset at this position
+        // - replace the contents of the view with that element
+        holder.mTextView.setText(mDataset[position]);
+
+    }
+
+    // Return the size of your dataset (invoked by the layout manager)
+    &#64;Override
+    public int getItemCount() {
+        return mDataset.length;
+    }
+}
+</pre>
+
+
+<div style="float:right;margin-top:15px;margin-left:30px">
+<img src="{@docRoot}design/material/images/card_travel.png" alt="" width="225" height="383">
+<p class="img-caption" style="margin-left:12px">
+<strong>Figura 3</strong>. Ejemplos de tarjetas.
+</p>
+</div>
+
+<h2 id="CardView">Crear tarjetas</h2>
+
+<p>{@link android.support.v7.widget.CardView} extiende la clase {@link android.widget.FrameLayout}
+y te permite mostrar información dentro de tarjetas que tienen una apariencia uniforme en la plataforma. Los widgets {@link
+android.support.v7.widget.CardView} pueden tener sombras y esquinas redondeadas.</p>
+
+<p>Para crear una tarjeta con una sombra, usa el atributo <code>card_view:cardElevation</code>.
+{@link android.support.v7.widget.CardView} usa elevación real y sombras dinámicas en Android 5.0
+(API nivel 21) y superior, y regresa a una implementación de sombras programáticas en versiones anteriores.
+Para más información, consulta <a href="{@docRoot}training/material/compatibility.html">Mantener
+la compatibilidad</a>.</p>
+
+<p>Usa estas propiedades para personalizar la apariencia del widget
+{@link android.support.v7.widget.CardView}:</p>
+
+<ul>
+  <li>Para establecer el radio de la esquina en tus diseños, usa el atributo <code>card_view:cardCornerRadius</code>.
+</li>
+  <li>Para establecer el radio en tu código, usa el método <code>CardView.setRadius</code>.</li>
+  <li>Para establecer el color de fondo de una tarjeta, usa el atributo <code>card_view:cardBackgroundColor</code>.
+</li>
+</ul>
+
+<p>El siguiente ejemplo de código muestra cómo incluir un widget {@link android.support.v7.widget.CardView}
+en tu diseño:</p>
+
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    xmlns:card_view="http://schemas.android.com/apk/res-auto"
+    ... >
+    &lt;!-- A CardView that contains a TextView -->
+    &lt;android.support.v7.widget.CardView
+        xmlns:card_view="http://schemas.android.com/apk/res-auto"
+        android:id="@+id/card_view"
+        android:layout_gravity="center"
+        android:layout_width="200dp"
+        android:layout_height="200dp"
+        card_view:cardCornerRadius="4dp">
+
+        &lt;TextView
+            android:id="@+id/info_text"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+    &lt;/android.support.v7.widget.CardView>
+&lt;/LinearLayout>
+</pre>
+
+<p>Para más información, consulta la referencia de la API para {@link android.support.v7.widget.CardView}.</p>
+
+
+<h2 id="Dependencies">Agregar dependencias</h2>
+
+<p>Los widgets {@link android.support.v7.widget.RecyclerView} y {@link android.support.v7.widget.CardView}
+son parte de las <a href="{@docRoot}tools/support-library/features.html#v7">Bibliotecas de
+soporte v7</a>. Para usar estos widgets en tu proyecto, agrega estas
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Dependencias de Gradle</a> al módulo
+de tu aplicación:</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
diff --git a/docs/html-intl/intl/es/training/material/shadows-clipping.jd b/docs/html-intl/intl/es/training/material/shadows-clipping.jd
new file mode 100644
index 0000000..5509fc8
--- /dev/null
+++ b/docs/html-intl/intl/es/training/material/shadows-clipping.jd
@@ -0,0 +1,133 @@
+page.title=Definir vistas de recorte y sombras
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lección te enseña a realizar lo siguiente:</h2>
+<ol>
+  <li><a href="#Elevation">Asignar elevación a tus vistas</a></li>
+  <li><a href="#Shadows">Personalizar vistas de sombras y contornos</a></li>
+  <li><a href="#Clip">Recortar vistas</a></li>
+</ol>
+<h2>También deberías leer</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificación de Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design en Android</a></li>
+</ul>
+</div>
+</div>
+
+<p>Material Design introduce una elevación para los elementos de la IU. La elevación ayuda a los usuarios a comprender la
+importancia relativa de cada elemento y a centrar su atención en la tarea para realizar.</p>
+
+<p>La elevación de una vista, representada por la propiedad Z, determina la apariencia visual de su
+sombra: las vistas con valores Z superiores, proyectan sombras más grandes y suaves. Las vistas con valores Z superiores ocluyen
+las vistas con valores Z inferiores. Sin embargo, el valor Z de una vista no afecta el tamaño de la vista.</p>
+
+<p>El padre de la vista elevada se encarga de dibujar las sombras y así, sujetas al recorte de vista estándar, son
+recortadas por el padre de manera predeterminada.</p>
+
+<p>La elevación también es útil para crear animaciones donde los widgets suben temporalmente sobre el
+plano visual cuando realizan alguna acción.</p>
+
+<p>Para más información sobre la elevación en Material Design, consulta
+<a href="http://www.google.com/design/spec/what-is-material/objects-in-3d-space.html">Objetos
+en el espacio 3D</a>.</p>
+
+
+<h2 id="Elevation">Asignar elevación a tus vistas</h2>
+
+<p>El valor Z de una vista cualquiera tiene dos componentes:
+
+<ul>
+<li>Elevación: El componente estático.</li>
+<li>Traducción: El componente dinámico usado para las animaciones.</li>
+</ul>
+
+<p><code>Z = elevation + translationZ</code></p>
+
+<img src="{@docRoot}training/material/images/shadows-depth.png" width="580" height="261" alt="" />
+<p class="img-caption"><strong>Figura 1</strong>: sombras para diferentes elevaciones de vistas.</p>
+
+<p>Para establecer la elevación de una vista al definir un diseño, usa el atributo <code>android:elevation</code>.
+ Para establecer la elevación de una vista en el código de una actividad, usa el método
+{@link android.view.View#setElevation View.setElevation()}.</p>
+
+<p>Para establecer la traducción de una vista, usa el método {@link android.view.View#setTranslationZ
+View.setTranslationZ()}.</p>
+
+<p>Los nuevos métodos {@link android.view.ViewPropertyAnimator#z ViewPropertyAnimator.z()} y {@link
+android.view.ViewPropertyAnimator#translationZ ViewPropertyAnimator.translationZ()} te permiten
+animar fácilmente la elevación de las vistas. Para más información, consulta la referencia de la API para
+{@link android.view.ViewPropertyAnimator} y la guía del desarrollador <a href="{@docRoot}guide/topics/graphics/prop-animation.html">Animación de propiedades</a>.
+</p>
+
+<p>También puedes usar un {@link android.animation.StateListAnimator} para
+especificar estas animaciones de manera declarativa. Esto es especialmente útil para casos en donde los cambios de
+estados desencadenan animaciones, como cuando un usuario pulsa un botón. Para más información, consulta
+<a href="{@docRoot}training/material/animations.html#ViewState">Animar cambios de estados de las vistas</a>.</p>
+
+<p>Los valores Z se miden en dp (píxeles independientes de la densidad).</p>
+
+
+<h2 id="Shadows">Personalizar visualización de sombras y contornos</h2>
+
+<p>Los límites de la interfaz dibujable en segundo plano de una vista determinan la forma predeterminada de su sombra.
+Los <strong>contornos</strong> representan la forma externa de un objeto gráfico y definen el área del efecto de ondas
+para la respuesta táctil.</p>
+
+<p>Examina esta vista, definida con una interfaz dibujable en segundo plano:</p>
+
+<pre>
+&lt;TextView
+    android:id="@+id/myview"
+    ...
+    android:elevation="2dp"
+    android:background="@drawable/myrect" />
+</pre>
+
+<p>La interfaz dibujable en segundo plano está definida como un rectángulo con esquinas redondeadas:</p>
+
+<pre>
+&lt;!-- res/drawable/myrect.xml -->
+&lt;shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+    &lt;solid android:color="#42000000" />
+    &lt;corners android:radius="5dp" />
+&lt;/shape>
+</pre>
+
+<p>La vista proyecta una sombra con esquinas redondeadas, ya que la interfaz dibujable en segundo plano
+define el contorno de la vista. Un contorno personalizado reemplazaría la forma predeterminada de la sombra de una vista.</p>
+
+<p>Para definir un contorno personalizado para una vista en tu código:<p>
+
+<ol>
+<li>Extiende la clase {@link android.view.ViewOutlineProvider}.</li>
+<li>Reemplaza el método {@link android.view.ViewOutlineProvider#getOutline getOutline()}.</li>
+<li>Asigna el nuevo proveedor de contornos a tu vista con el método {@link
+android.view.View#setOutlineProvider View.setOutlineProvider()}.</li>
+</ol>
+
+<p>Puedes crear contornos rectangulares y ovalados con esquinas redondeadas mediante el uso de métodos en la clase
+{@link android.graphics.Outline}. El proveedor de contornos predeterminado para las
+vistas obtiene el contorno a partir del plano de fondo de la vista. Para evitar que una vista proyecte una sombra, establece su proveedor de contornos
+en <code>null</code>.</p>
+
+
+<h2 id="Clip">Recortar vistas</h2>
+
+<p>Recortar vistas te permite cambiar fácilmente la forma de una vista. Puedes recortar vistas para
+mantener la uniformidad con otros elementos del diseño o para cambiar la forma de una vista en respuesta a una señal de entrada del usuario.
+Puedes recortar una vista a partir de su área de contorno mediante el método {@link android.view.View#setClipToOutline
+View.setClipToOutline()} o el atributo <code>android:clipToOutline</code>. Solo
+los contornos rectangulares, circulares y redondeados admiten el recorte, según lo determinado por el método
+{@link android.graphics.Outline#canClip Outline.canClip()}.</p>
+
+<p>Para recortar una vista a partir de una interfaz dibujable, establece la interfaz dibujable como el plano de fondo de la vista
+(como se muestra más arriba) y llama al método {@link android.view.View#setClipToOutline View.setClipToOutline()}.
+</p>
+
+<p>Recortar vistas es una operación costosa, así que no animes la forma que usas para
+recortar una vista. Para lograr este efecto, usa la animación <a href="{@docRoot}training/material/animations.html#Reveal">Efecto revelar</a>.</p>
diff --git a/docs/html-intl/intl/es/training/material/theme.jd b/docs/html-intl/intl/es/training/material/theme.jd
new file mode 100644
index 0000000..d748c43
--- /dev/null
+++ b/docs/html-intl/intl/es/training/material/theme.jd
@@ -0,0 +1,131 @@
+page.title=Usar el tema Material
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lección te enseña a realizar lo siguiente:</h2>
+<ol>
+  <li><a href="#ColorPalette">Personalizar la paleta de colores</a></li>
+  <li><a href="#StatusBar">Personalizar la barra de estado</a></li>
+  <li><a href="#Inheritance">Cambiar el tema de vistas individuales</a></li>
+</ol>
+<h2>También deberías leer</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificación de Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design en Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>El nuevo tema material proporciona:</p>
+
+<ul>
+  <li>Widgets del sistema que te permiten establecer la paleta de colores.</li>
+  <li>Animaciones para la respuesta táctil de los widgets del sistema.</li>
+  <li>Animaciones para transiciones de actividades</li>
+</ul>
+
+<p>Puedes personalizar la apariencia del tema material
+según la identidad de tu marca, con una paleta de colores que esté bajo tu control. Puedes cambiar el matiz de la barra de acción y
+la barra de estado mediante atributos de temas, como se muestra en la <a href="#fig3">figura 3</a>.</p>
+
+<p>Los widgets del sistema tienen un nuevo diseño y animaciones para respuesta táctil. Puedes personalizar tu aplicación cambiando su
+paleta de colores, las animaciones de la respuesta táctil y sus transiciones de actividades.</p>
+
+<p>El tema material se define como:</p>
+
+<ul>
+  <li><code>@android:style/Theme.Material</code> (versión oscura)</li>
+  <li><code>@android:style/Theme.Material.Light</code> (versión clara)</li>
+  <li><code>@android:style/Theme.Material.Light.DarkActionBar</code></li>
+</ul>
+
+<p>Para obtener una lista de estilos de Material, consulta la referencia de la API para
+{@link android.R.style R.style}.</p>
+
+<!-- two columns, dark/light material theme example -->
+<div style="width:700px;margin-top:25px;margin-bottom:10px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>Figura 1</strong>. Tema Material oscuro</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>Figura 2</strong>. Tema Material claro</p>
+  </div>
+</div>
+<br style="clear:left">
+</div>
+
+<p class="note">
+<strong>Nota:</strong> El tema material solo está disponible en Android 5.0 (API nivel 21) y
+superior. Las <a href="{@docRoot}tools/support-library/features.html#v7">Bibliotecas de soporte v7</a>
+proporcionan temas con estilos de Material Design para algunos widgets y admiten la personalización de la paleta de
+colores. Para más información, consulta
+<a href="{@docRoot}training/material/compatibility.html">Mantener la compatibilidad</a>.
+</p>
+
+
+<h2 id="ColorPalette">Personalizar la paleta de colores</h2>
+
+<p style="margin-bottom:30px">Si deseas personalizar los colores base del tema para que se adapten a tu marca, define
+tus colores personalizados mediante los atributos de temas cuando heredes del tema material:</p>
+
+<pre>
+&lt;resources>
+  &lt;!-- inherit from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- Main theme colors -->
+    &lt;!--   your app branding color for the app bar -->
+    &lt;item name="android:colorPrimary">@color/primary&lt;/item>
+    &lt;!--   darker variant for the status bar and contextual app bars -->
+    &lt;item name="android:colorPrimaryDark">@color/primary_dark&lt;/item>
+    &lt;!--   theme UI controls like checkboxes and text fields -->
+    &lt;item name="android:colorAccent">@color/accent&lt;/item>
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<div style="float:right;margin-left:25px;margin-top:20px;margin-bottom:10px" id="fig3">
+<img src="{@docRoot}training/material/images/ThemeColors.png" width="250" height="445" />
+<p class="img-caption" style="margin-bottom:0px">
+<strong>Figura 3</strong>. Personalizar el tema material.</p>
+</div>
+
+
+<h2 id="StatusBar">Personalizar la barra de estado</h2>
+
+<p>El tema material te permite personalizar fácilmente la barra de estado, especifica un
+color que se adapte a tu marca y proporciona suficiente contraste para mostrar los íconos de estado en blanco. Si
+quieres establecer un color personalizado para la barra de estado, usa el atributo <code>android:statusBarColor</code>
+cuando extiendas el tema material. <code>android:statusBarColor</code> hereda el
+valor de <code>android:colorPrimaryDark</code> en forma predeterminada.</p>
+
+<p>También puedes dibujar por detrás de la barra de estado. Por ejemplo, si quieres que la barra de estado se
+muestre en forma transparente sobre una foto, aplica un sutil degradado oscuro para garantizar que los íconos
+de estado blancos sigan visibles. Para hacerlo, establece el atributo <code>android:statusBarColor</code> en
+<code>&#64;android:color/transparent</code> y ajusta los indicadores de la ventana según lo requerido. También puedes
+usar el método {@link android.view.Window#setStatusBarColor Window.setStatusBarColor()} para
+las animaciones o el difuminado.</p>
+
+<p class="note">
+<strong>Nota:</strong> La barra de estado casi siempre debe estar delimitada claramente de la
+barra de herramientas principal, excepto para los casos en donde muestres imágenes de un extremo a otro o contenido multimedia detrás
+de estas barras, y también cuando uses un degradado para garantizar que los íconos aún sean visibles.
+</p>
+
+<p>Cuando personalizas la barra de navegación y la barra de estado, haz que ambas sean transparentes o modifica
+solo la barra de estado. La barra de navegación debe permanecer de color negro en todos los otros casos.</p>
+
+
+<h2 id="Inheritance">Vistas individuales del tema</h3>
+
+<p>Los elementos en las definiciones de diseño XML pueden especificar el atributo <code>android:theme</code>,
+que hace referencia al recurso del tema. Este atributo modifica el tema para el elemento y cualquier
+elemento secundario, y esto es útil para modificar las paletas de colores de los temas en una porción específica
+de una interfaz.</p>
diff --git a/docs/html-intl/intl/in/design/get-started/principles.jd b/docs/html-intl/intl/in/design/get-started/principles.jd
new file mode 100644
index 0000000..9aed08e
--- /dev/null
+++ b/docs/html-intl/intl/in/design/get-started/principles.jd
@@ -0,0 +1,307 @@
+page.title=Prinsip Desain Android
+@jd:body
+
+<p>Prinsip desain ini dikembangkan oleh dan untuk Tim Pengalaman Pengguna
+ Android agar selalu mempertimbangkan kepentingan pengguna.
+Untuk pengembang dan desainer Android, mereka terus
+meletakkan dasar pedoman desain yang lebih detail untuk beragam tipe
+perangkat.</p>
+
+<p>
+Perhatikan prinsip-prinsip ini saat Anda menerapkan
+kreativitas dan pemikiran desain sendiri. Menyimpang dengan sengaja.
+</p>
+
+<h2 id="enchant-me">Pikat Saya</h2>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="delight-me">Senangkan saya dengan cara yang mengejutkan</h4>
+<p>Permukaan yang cantik, animasi yang ditempatkan dengan hati-hati, atau efek suara di saat yang tepat sungguh menyenangkan untuk
+dinikmati. Efek yang lembut menimbulkan perasaan serba mudah dan kesadaran bahwa kekuatan yang
+bisa diandalkan ada dalam genggaman.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_delight.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="real-objects-more-fun">Objek sungguhan lebih menyenangkan daripada tombol dan menu</h4>
+<p>Biarkan orang langsung menyentuh dan memanipulasi objek dalam aplikasi Anda. Ini mengurangi upaya kognitif
+yang diperlukan untuk menjalankan tugas sekaligus membuatnya lebih memuaskan secara emosional.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_real_objects.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="make-it-mine">Biarkan saya memilikinya</h4>
+<p>Orang suka menambahkan sentuhan pribadi karena membantu mereka merasa betah dan memegang kendali. Memberikan
+default yang pantas dan indah, tetapi juga mempertimbangkan penyesuaian opsional yang menyenangkan, yang tidak mengganggu
+tugas utama.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_make_it_mine.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="get-to-know-me">Kenali saya</h4>
+<p>Pelajari preferensi orang dari waktu ke waktu. Daripada meminta mereka untuk membuat pilihan yang sama
+berulang-ulang, tempatkan pilihan sebelumnya agar mudah dijangkau.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_get_to_know_me.png">
+
+  </div>
+</div>
+
+<h2 id="simplify-my-life">Sederhanakan Hidup Saya</h2>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="keep-it-brief">Persingkat</h4>
+<p>Gunakan frasa pendek dengan kata-kata sederhana. Orang cenderung melewatkan kalimat-kalimat panjang.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_keep_it_brief.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="pictures-faster-than-words">Gambar lebih cepat dibanding kata-kata</h4>
+<p>Pertimbangkan menggunakan gambar untuk menjelaskan gagasan. Gambar menarik perhatian orang dan bisa jauh lebih efisien
+dibanding kata-kata.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_pictures.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="decide-for-me">Putuskan untuk saya tetapi biarkan saya yang menentukan</h4>
+<p>Gunakan tebakan terbaik Anda dan bertindaklah daripada meminta terlebih dahulu. Terlalu banyak pilihan dan keputusan membuat orang
+tidak suka. Untuk berjaga-jaga jika Anda salah, izinkan 'pembatalan'.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_decide_for_me.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="only-show-when-i-need-it">Cukup tunjukkan yang saya perlukan ketika saya memerlukannya</h4>
+<p>Orang merasa kewalahan ketika melihat terlalu banyak hal sekaligus. Uraikan tugas dan informasi menjadi potongan-potongan
+kecil yang mudah dicerna. Sembunyikan opsi yang tidak perlu pada saat ini, dan ajari orang sambil jalan.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_information_when_need_it.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="always-know-where-i-am">Saya harus selalu tahu di mana saya berada</h4>
+<p>Beri orang kepercayaan diri bahwa mereka tahu di mana berada. Buat agar tempat-tempat dalam aplikasi Anda terlihat berbeda dan
+gunakan transisi untuk menunjukkan hubungan antar layar. Berikan umpan balik tentang tugas yang sedang berlangsung.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_navigation.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="never-lose-my-stuff">Jangan sekali-kali menghilangkan milik saya</h4>
+<p>Simpan apa yang telah susah-payah dibuat orang dan biarkan mereka mengaksesnya dari mana saja. Ingat pengaturan,
+sentuhan pribadi, dan kreasi lintas ponsel, tablet, dan komputer. Itu membuat pemutakhiran menjadi
+hal termudah di dunia.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_never_lose_stuff.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="looks-same-should-act-same">Jika terlihat sama, seharusnya fungsinya sama</h4>
+<p>Bantu orang merasakan perbedaan fungsional dengan membuat mereka terlihat berbeda daripada mirip.
+Hindari mode, yaitu tempat yang terlihat mirip tetapi berbeda fungsinya pada input yang sama.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_looks_same.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="interrupt-only-if-important">Sela saya jika penting saja</h4>
+<p>Layaknya asisten pribadi yang baik, lindungi orang dari detail yang tidak penting. Orang ingin tetap
+fokus, dan kecuali jika memang penting dan sensitif waktu, interupsi bisa melelahkan dan menjengkelkan.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_important_interruption.png">
+
+  </div>
+</div>
+
+<h2 id="make-me-amazing">Buat Saya Terpesona</h2>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="give-me-tricks">Beri saya trik yang efektif di mana saja</h4>
+<p>Orang merasa senang ketika mereka memahami sendiri sesuatu. Jadikan aplikasi Anda lebih mudah dipelajari dengan
+memanfaatkan pola visual dan memori otot dari aplikasi Android lainnya. Misalnya, gerakan menggeser
+dapat menjadi pintasan navigasi yang bagus.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_tricks.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="its-not-my-fault">Bukan salah saya</h4>
+<p>Bersikap ramahlah dalam meminta orang untuk melakukan koreksi. Mereka ingin merasa pintar ketika menggunakan
+aplikasi Anda. Jika terjadi kesalahan, berikan petunjuk perbaikan yang jelas tetapi lepaskan mereka dari detail teknis.
+Jika Anda dapat memperbaikinya secara diam-diam, tentu lebih baik.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_error.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="sprinkle-encouragement">Berikan dorongan</h4>
+<p>Uraikan tugas-tugas rumit menjadi langkah-langkah kecil yang dapat dilakukan dengan mudah. Beri umpan balik tentang tindakan,
+meskipun hanya sesuatu yang sederhana.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="do-heavy-lifting-for-me">Lakukan pekerjaan yang sulit untuk saya</h4>
+<p>Buatlah pemula merasa seperti ahli dengan memungkinkan mereka untuk melakukan hal-hal yang mereka pikir tidak akan bisa. 
+Misalnya, pintasan yang menggabungkan beberapa efek foto dapat membuat foto amatir terlihat mengagumkan hanya
+dalam beberapa langkah.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_heavy_lifting.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="make-important-things-fast">Percepat hal penting</h4>
+<p>Tidak semua tindakan itu sama. Putuskan apa yang terpenting dalam aplikasi Anda dan permudah untuk menemukannya serta
+cepat untuk digunakan, seperti tombol rana pada kamera, atau tombol jeda pada pemutar musik.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_make_important_fast.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/in/design/material/index.jd b/docs/html-intl/intl/in/design/material/index.jd
new file mode 100644
index 0000000..0cb4dbc
--- /dev/null
+++ b/docs/html-intl/intl/in/design/material/index.jd
@@ -0,0 +1,186 @@
+page.title=Material Design for Android
+page.tags=Material,design
+page.type=design
+page.image=images/cards/design-material-for-android_2x.jpg
+
+@jd:body
+
+<!-- developer docs box -->
+<a class="notice-developers right" href="{@docRoot}training/material/index.html">
+  <div>
+    <h3>Dokumen Pengembang</h3>
+    <p>Membuat Aplikasi dengan Desain Bahan</p>
+  </div>
+</a>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=p4gmvHyuZzw">
+<div>
+    <h3>Video</h3>
+    <p>Pengantar Desain Bahan</p>
+</div>
+</a>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=YaG_ljfzeUw">
+<div>
+    <h3>Video</h3>
+    <p>Kertas dan Tinta: Bahan Penting</p>
+</div>
+</a>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=XOcCOBe8PTc">
+<div>
+    <h3>Video</h3>
+    <p>Desain Bahan di Aplikasi Google I/O</p>
+</div>
+</a>
+
+
+
+<p itemprop="description">Desain bahan adalah panduan komprehensif untuk desain visual, gerak, dan
+interaksi lintas platform dan perangkat. Android kini menyertakan dukungan untuk
+aplikasi desain bahan. Untuk menggunakan desain bahan di aplikasi Android, ikuti panduan yang didefinisikan
+dalam <a href="http://www.google.com/design/spec">spesifikasi desain bahan</a> dan gunakan
+komponen dan fungsionalitas baru yang tersedia di Android 5.0 (API level 21) ke atas.</p>
+
+<p>Android menyediakan elemen berikut untuk membangun aplikasi desain bahan:</p>
+
+<ul>
+  <li>Tema baru</li>
+  <li>Widget baru untuk tampilan yang kompleks</li>
+  <li>API baru untuk animasi dan bayangan custom</li>
+</ul>
+
+<p>Untuk informasi selengkapnya tentang mengimplementasikan desain bahan pada Android, lihat
+<a href="{@docRoot}training/material/index.html">Membuat Aplikasi dengan Desain Bahan</a>.</p>
+
+
+<h3>Tema Bahan</h3>
+
+<p>Tema bahan menyediakan gaya baru untuk aplikasi Anda, widget sistem yang memungkinkan Anda mengatur
+palet warnanya, dan animasi default untuk umpan balik sentuh dan transisi aktivitas.</p>
+
+<!-- two columns -->
+<div style="width:700px;margin-top:25px;margin-bottom:20px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238" />
+  <div style="width:140px;margin:0 auto">
+  <p style="margin-top:8px">Tema bahan gelap</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238" />
+  <div style="width:140px;margin:0 auto">
+  <p style="margin-top:8px">Tema bahan terang</p>
+  </div>
+</div>
+<br style="clear:left"/>
+</div>
+
+<p>Untuk informasi selengkapnya, lihat <a href="{@docRoot}training/material/theme.html">Menggunakan Tema
+Bahan</a>.</p>
+
+
+<h3>Daftar dan Kartu</h3>
+
+<p>Android menyediakan dua widget baru untuk menampilkan kartu dan daftar dengan gaya desain bahan
+dan animasi:</p>
+
+<!-- two columns -->
+<div style="width:700px;margin-top:25px;margin-bottom:20px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/list_mail.png" width="500" height="426" />
+  <p>Widget <code>RecyclerView</code> baru adalah versi <code>ListView</code>
+ yang lebih mudah dimasukkan dan mendukung beragam tipe layout serta memberikan peningkatan kinerja.</p>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/card_travel.png" width="500" height="426" />
+  <p>Widget <code>CardView</code> baru memungkinkan Anda menampilkan potongan informasi penting dalam
+  kartu yang memiliki tampilan dan cara kerja yang konsisten.</p>
+</div>
+<br style="clear:left"/>
+</div>
+
+<p>Untuk informasi selengkapnya, lihat <a href="{@docRoot}training/material/lists-cards.html">Membuat Daftar
+dan Kartu</a>.</p>
+
+
+<h3>Bayangan Tampilan</h3>
+
+<p>Selain properti X dan Y, tampilan di Android kini memiliki
+properti Z. Properti baru ini mewakili ketinggian tampilan, yang menentukan:</p>
+
+<ul>
+<li>Ukuran bayangan: tampilan dengan nilai Z lebih tinggi menghasilkan bayangan lebih besar.</li>
+<li>Urutan penggambaran: tampilan dengan nilai Z lebih tinggi muncul di atas tampilan lainnya.</li>
+</ul>
+
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay>
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4"/>
+    <source src="{@docRoot}design/videos/ContactsAnim.webm"/>
+    <source src="{@docRoot}design/videos/ContactsAnim.ogv"/>
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <em>Untuk memutar ulang film, klik layar perangkat</em>
+  </div>
+</div>
+
+<p>Untuk informasi selengkapnya, lihat <a href="{@docRoot}training/material/shadows-clipping.html">Mendefinisikan
+Bayangan dan Memangkas Tampilan</a>.</p>
+
+
+<h3>Animasi</h3>
+
+<p>API animasi baru memungkinkan Anda membuat animasi custom untuk umpan balik sentuh dalam kontrol UI,
+perubahan status tampilan, dan transisi aktivitas.</p>
+
+<p>API ini memungkinkan Anda:</p>
+
+<ul>
+<li style="margin-bottom:15px">
+Merespons kejadian sentuh dalam tampilan Anda dengan animasi <strong>umpan balik sentuh</strong>.
+</li>
+<li style="margin-bottom:15px">
+Menyembunyikan dan memperlihatkan tampilan dengan animasi <strong>membuka melingkar</strong>.
+</li>
+<li style="margin-bottom:15px">
+Peralihan antar aktivitas dengan animasi <strong>transisi aktivitas</strong> custom.
+</li>
+<li style="margin-bottom:15px">
+Membuat animasi yang lebih alami dengan <strong>gerak melengkung</strong>.
+</li>
+<li style="margin-bottom:15px">
+Menganimasikan perubahan dalam satu atau beberapa properti tampilan dengan animasi <strong>perubahan status tampilan</strong>.
+</li>
+<li style="margin-bottom:15px">
+Menampilkan animasi di <strong>drawable daftar status</strong> di antara perubahan status tampilan.
+</li>
+</ul>
+
+<p>Animasi umpan balik sentuh dimasukkan ke dalam beberapa tampilan standar, misalnya tombol. API baru
+ini memungkinkan Anda menyesuaikan animasi ini dan menambahkannya ke tampilan custom Anda.</p>
+
+<p>Untuk informasi selengkapnya, lihat <a href="{@docRoot}training/material/animations.html">Mendefinisikan Animasi
+Custom</a>.</p>
+
+
+<h3>Drawable</h3>
+
+<p>Kemampuan baru untuk drawable ini membantu Anda mengimplementasikan aplikasi desain bahan:</p>
+
+<ul>
+<li><strong>Drawable vektor</strong> bisa diubah skalanya tanpa kehilangan definisi dan cocok
+untuk ikon satu-warna dalam-aplikasi.</li>
+<li><strong>Pewarnaan drawable</strong> memungkinkan Anda mendefinisikan bitmap sebagai alpha-mask dan mewarnainya
+saat runtime.</li>
+<li><strong>Ekstraksi warna</strong> memungkinkan Anda mengekstrak warna mencolok secara otomatis dari
+gambar bitmap.</li>
+</ul>
+
+<p>Untuk informasi selengkapnya, lihat <a href="{@docRoot}training/material/drawables.html">Bekerja dengan
+Drawable</a>.</p>
diff --git a/docs/html-intl/intl/in/design/patterns/compatibility.jd b/docs/html-intl/intl/in/design/patterns/compatibility.jd
new file mode 100644
index 0000000..cafaac4
--- /dev/null
+++ b/docs/html-intl/intl/in/design/patterns/compatibility.jd
@@ -0,0 +1,70 @@
+page.title=Kompatibilitas Mundur
+page.tags="support"
+page.metaDescription=Catatan tentang bagaimana Android 4.x menyesuaikan UI yang didesain untuk perangkat keras dan versi OS yang lebih lama.
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/basics/supporting-devices/index.html">
+  <div>
+    <h3>Dokumen Pengembang</h3>
+    <p>Mendukung Perangkat Berbeda</p>
+  </div>
+</a>
+
+<p>Perubahan signifikan dalam Android 3.0 meliputi:</p>
+<ul>
+<li>Dihilangkannya tombol perangkat keras navigasi (Back, Menu, Search, Home) untuk membantu menangani navigasi
+  melalui kontrol maya (Back, Home, Recents).</li>
+<li>Pola yang tangguh untuk penggunaan menu pada action-bar.</li>
+</ul>
+<p>Android 4.0 membawa perubahan ini untuk tablet dengan platform ponsel.</p>
+
+<h2 id="older-hardware">Menyesuaikan Android 4.0 dengan Perangkat Keras dan Aplikasi yang Lebih Lama</h2>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Ponsel dengan kontrol navigasi virtual</h4>
+<p>Aplikasi Android yang ditulis untuk Android 3.0 dan yang lebih baru menampilkan tindakan dalam action-bar. Tindakan yang tidak
+muat dalam action-bar atau tidak cukup penting untuk ditampilkan di tingkat atas akan muncul dalam
+action-overflow.</p>
+<p>Pengguna mengakses action-overflow dengan menyentuhnya dalam action-bar.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_virtual_nav.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Ponsel dengan tombol navigasi fisik</h4>
+<p>Ponsel Android dengan tombol perangkat keras navigasi biasa tidak menampilkan baris navigasi virtual di
+bagian bawah layar. Sebagai gantinya, action-overflow tersedia dari tombol perangkat keras menu. Popup
+tindakan yang dihasilkan memiliki gaya yang sama dengan contoh sebelumnya, tetapi ditampilkan di bagian bawah layar.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_physical_buttons.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Aplikasi lama pada ponsel dengan kontrol navigasi virtual</h4>
+<p>Bila Anda menjalankan aplikasi yang dibuat untuk Android 2.3 atau yang lebih lama pada ponsel
+dengan kontrol navigasi virtual, sebuah kontrol action-overflow akan muncul di sebelah kanan baris navigasi virtual. Anda
+dapat menyentuh kontrol itu untuk menampilkan tindakan aplikasi dalam gaya menu Android biasa.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_legacy_apps.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/in/design/patterns/confirming-acknowledging.jd b/docs/html-intl/intl/in/design/patterns/confirming-acknowledging.jd
new file mode 100644
index 0000000..d22e924
--- /dev/null
+++ b/docs/html-intl/intl/in/design/patterns/confirming-acknowledging.jd
@@ -0,0 +1,70 @@
+page.title=Mengonfirmasi &amp; Mengakui
+page.tags=dialog,toast,notification
+@jd:body
+
+<p>Dalam beberapa situasi, bila pengguna memanggil suatu tindakan dalam aplikasi Anda, ada baiknya <em>mengonfirmasi</em> atau <em>mengakui</em> tindakan itu melalui teks.</p>
+
+<div class="cols">
+  <div class="col-6">
+    <img src="{@docRoot}design/media/confirm_ack_confirming.png">
+    <p><strong>Mengonfirmasi</strong> adalah meminta pengguna untuk memverifikasi bahwa mereka benar-benar ingin melanjutkan tindakan yang baru saja mereka panggil. Dalam beberapa kasus, konfirmasi ditampilkan bersama-sama dengan peringatan atau informasi penting yang terkait dengan tindakan yang perlu mereka pertimbangkan.</p>
+  </div>
+  <div class="col-6">
+    <img src="{@docRoot}design/media/confirm_ack_acknowledge.png">
+    <p><strong>Mengakui</strong> adalah menampilkan teks untuk memberi tahu pengguna bahwa tindakan yang baru mereka panggil sudah dilakukan. Ini menghilangkan ketidakpastian tentang operasi implisit yang dilakukan sistem. Dalam beberapa kasus, pengakuan ditampilkan bersama dengan opsi untuk membatalkan tindakan.</p>
+  </div>
+</div>
+
+<p>Berkomunikasi pada pengguna dengan cara ini bisa membantu mengurangi ketidakpastian tentang hal-hal yang sudah atau akan terjadi. Mengonfirmasi atau mengakui juga dapat mencegah pengguna melakukan kesalahan yang akan mereka sesali.</p>
+
+<h2>Kapan Harus Mengonfirmasi atau Mengakui Tindakan Pengguna</h2>
+<p>Tidak semua tindakan memerlukan konfirmasi atau pengakuan. Gunakan bagan alur ini untuk memandu keputusan desain Anda.</p>
+<img src="{@docRoot}design/media/confirm_ack_flowchart.png">
+
+<h2>Mengonfirmasi</h2>
+<div class="cols">
+  <div class="col-6">
+    <h4>Contoh: Google Play Books</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_books.png">
+    <p>Dalam contoh ini, pengguna telah meminta untuk menghapus sebuah buku dari perpustakaan Google Play mereka. Sebuah <a href="{@docRoot}design/building-blocks/dialogs.html#alerts">peringatan</a> muncul untuk mengonfirmasi tindakan ini karena perlu dipahami bahwa buku tersebut tidak akan tersedia lagi dari perangkat apa pun.</p>
+    <p>Saat membuat dialog konfirmasi, buat judul bermakna dengan mencerminkan tindakan yang diminta.</p>
+  </div>
+  <div class="col-7">
+    <h4>Contoh: Android Beam</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_beam.png">
+    <p>Konfirmasi tidak harus ditampilkan dalam peringatan dengan dua tombol. Setelah menjalankan Android Beam, pengguna diminta untuk menyentuh konten yang akan dibagikan (dalam contoh ini, sebuah foto). Jika mereka memutuskan untuk tidak melanjutkan, mereka tinggal memindahkan ponsel.</p>
+  </div>
+</div>
+
+<h2>Mengakui</h2>
+<div class="cols">
+  <div class="col-6">
+    <h4>Contoh: Draf Gmail batal yang disimpan</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png">
+    <p>Dalam contoh ini, jika pengguna menyusuri ke belakang atau ke atas dari layar pembuatan email di Gmail, sesuatu yang tak diharapkan bisa terjadi: draf saat itu akan disimpan secara otomatis. Pengakuan dalam bentuk pemberitahuan akan lebih jelas. Ini menghilang setelah beberapa detik.</p>
+    <p>Pembatalan tidak cocok di sini karena penyimpanan dilakukan oleh aplikasi, bukan pengguna. Cepat dan mudah untuk melanjutkan penulisan pesan dengan menyusuri daftar draf.</p>
+
+  </div>
+  <div class="col-6">
+    <h4>Contoh: Percakapan Gmail dihapus</h4>
+    <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png">
+    <p>Setelah pengguna menghapus percakapan dari daftar dalam Gmail, sebuah pengakuan muncul tanpa opsi pembatalan. Pengakuan tetap ada sampai pengguna melakukan tindakan yang tidak berkaitan, seperti menggulir daftar.</p>
+  </div>
+</div>
+
+<h2>Tidak ada Konfirmasi atau Pengakuan</h2>
+<div class="cols">
+  <div class="col-6">
+    <h4>Contoh: memberikan +1</h4>
+    <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png">
+    <p><strong>Konfirmasi tidak diperlukan</strong>. Jika pengguna telah memberikan +1 secara tidak sengaja, tidak masalah. Mereka cukup menyentuh kembali tombol itu untuk membatalkan tindakan.</p>
+    <p><strong>Pengakuan tidak diperlukan</strong>. Pengguna akan melihat tombol +1 memantul dan berubah merah. Itu tanda yang sangat jelas.</p>
+  </div>
+  <div class="col-7">
+    <h4>Contoh: Menghapus aplikasi dari Layar Beranda</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png">
+    <p><strong>Konfirmasi tidak diperlukan</strong>. Ini adalah tindakan yang disengaja: pengguna harus menyeret dan meletakkan sebuah item di atas target yang relatif besar dan terpisah. Karena itu, kecil kemungkinan terjadi ketidaksengajaan. Tetapi jika pengguna menyesali keputusan itu, maka hanya perlu beberapa detik untuk mengembalikannya lagi.</p>
+    <p><strong>Pengakuan tidak diperlukan</strong>. Pengguna akan mengetahui bahwa aplikasi itu tidak ada di Layar Beranda karena mereka menghilangkannya dengan cara menyeretnya.</p>
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/in/design/patterns/navigation.jd b/docs/html-intl/intl/in/design/patterns/navigation.jd
new file mode 100644
index 0000000..a8afaaa
--- /dev/null
+++ b/docs/html-intl/intl/in/design/patterns/navigation.jd
@@ -0,0 +1,213 @@
+page.title=Navigasi dengan Back dan Up
+page.tags="navigation","activity","task","up navigation","back navigation"
+page.image=/design/media/navigation_between_siblings_gmail.png
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/implementing-navigation/index.html">
+  <div>
+    <h3>Dokumen Pengembang</h3>
+    <p>Mengimplementasikan Navigasi yang Efektif</p>
+  </div>
+</a>
+
+<p itemprop="description">Navigasi yang konsisten merupakan komponen penting dari keseluruhan pengalaman pengguna. Hampir tidak ada yang lebih membingungkan
+pengguna selain navigasi dasar yang perilakunya tidak konsisten dan tidak sesuai harapan. Android 3.0
+memperkenalkan perubahan besar dalam perilaku navigasi global. Mengikuti dengan saksama
+panduan untuk Back dan Up akan membuat navigasi aplikasi Anda dapat diprediksi dan dapat diandalkan pengguna.</p>
+<p>Android 2.3 dan versi sebelumnya mengandalkan tombol <em>Back</em> sistem untuk mendukung navigasi dalam
+aplikasi. Dengan diperkenalkannya action-bar dalam Android 3.0, mekanisme navigasi kedua muncul:
+tombol <em>Up</em>, yang terdiri dari ikon aplikasi dan tanda panah yang menunjuk ke kiri.</p>
+
+<img src="{@docRoot}design/media/navigation_with_back_and_up.png">
+
+<h2 id="up-vs-back">Up vs. Back</h2>
+
+<p>Tombol Up digunakan untuk berpindah dalam aplikasi berdasarkan hubungan hierarki
+antar layar. Misalnya, jika layar A menampilkan daftar item, dan memilih sebuah item akan membuka
+layar B (yang menampilkan item tersebut secara lebih detail), maka layar B akan menawarkan tombol Up untuk
+kembali ke layar A.</p>
+<p>Jika suatu layar merupakan yang teratas dalam aplikasi (yaitu layar Home aplikasi), maka tidak perlu menampilkan tombol
+Up.</p>
+
+<p>Tombol Back sistem digunakan untuk berpindah, dalam urutan kronologis terbalik, melalui riwayat
+layar yang baru dibuka oleh pengguna. Biasanya ini berdasarkan hubungan sementara
+antar layar, dan bukan hierarki aplikasi.</p>
+
+<p>Bila layar yang dilihat sebelumnya juga merupakan induk hierarki dari layar yang sekarang, menekan tombol
+Back akan sama hasilnya dengan menekan tombol Up&mdash;ini adalah kejadian
+biasa. Akan tetapi, berbeda dengan tombol Up, yang memastikan pengguna tetap berada dalam aplikasi Anda, tombol Back
+dapat mengembalikan pengguna ke layar Home, atau bahkan ke aplikasi lain.</p>
+
+<img src="{@docRoot}design/media/navigation_up_vs_back_gmail.png">
+
+<p>Tombol Back juga mendukung beberapa perilaku yang tidak terkait langsung dengan navigasi antar layar:
+</p>
+<ul>
+<li>Menghilangkan jendela mengambang (dialog, popup)</li>
+<li>Menghilangkan action-bar kontekstual, dan menghapus sorotan dari item yang dipilih</li>
+<li>Menyembunyikan keyboard di layar (IME)</li>
+</ul>
+<h2 id="within-app">Navigasi Dalam Aplikasi Anda</h2>
+
+<h4>Berpindah ke layar yang memiliki beberapa titik masuk</h4>
+<p>Kadang-kadang layar tidak memiliki posisi pasti dalam hierarki aplikasi, dan bisa dimasuki
+dari berbagai titik masuk&mdash;seperti layar pengaturan yang dapat dibuka dari layar lain
+dalam aplikasi Anda. Dalam hal ini, tombol Up akan memilih untuk kembali ke layar pengarah, yang cara kerjanya
+sama dengan tombol Back.</p>
+<h4>Mengubah tampilan dalam layar</h4>
+<p>Mengubah opsi tampilan untuk layar tidak mengubah perilaku Up atau Back: layar tetap
+berada di tempat yang sama dalam hierarki aplikasi, dan tidak dibuat riwayat navigasi yang baru.</p>
+<p>Contoh perubahan tampilan tersebut adalah:</p>
+<ul>
+<li>Mengganti tampilan menggunakan tab dan/atau geser kiri dan kanan</li>
+<li>Mengubah tampilan menggunakan tarik-turun (alias tab turun)</li>
+<li>Memfilter daftar</li>
+<li>Menyortir daftar</li>
+<li>Mengubah karakteristik tampilan (seperti zoom)</li>
+</ul>
+<h4>Berpindah antar layar yang seinduk</h4>
+<p>Bila aplikasi Anda mendukung navigasi dari daftar item ke tampilan detail salah satu item tersebut, aplikasi
+juga sering diharapkan mendukung navigasi langsung dari item itu ke item sebelumnya atau
+sesudahnya dalam daftar. Misalnya, dalam Gmail, begitu mudah untuk bergeser ke kiri atau kanan dari sebuah percakapan
+untuk melihat percakapan yang lebih baru atau lebih lama dalam Inbox yang sama. Sama seperti saat mengubah tampilan dalam layar, navigasi
+ini tidak mengubah perilaku Up atau Back.</p>
+
+<img src="{@docRoot}design/media/navigation_between_siblings_gmail.png">
+
+<p>Akan tetapi, pengecualian khusus terhadap hal ini terjadi saat menjelajah di antara tampilan detail terkait yang tidak disatukan
+oleh daftar yang merujuknya&mdash;misalnya, saat menjelajahi Play Store di antara aplikasi dari
+pengembang yang sama, atau album dari artis yang sama. Dalam hal ini, mengikuti setiap tautan akan membuat
+riwayat, sehingga tombol Back akan menyusuri setiap layar yang dilihat sebelumnya. Tombol Up akan terus
+melewatkan semua layar terkait ini dan berpindah ke layar kontainer yang terakhir dilihat.</p>
+
+<img src="{@docRoot}design/media/navigation_between_siblings_market1.png">
+
+<p>Anda dapat menjadikan perilaku tombol Up lebih cerdas lagi berdasarkan pengetahuan Anda tentang tampilan
+detail. Dengan memperluas contoh Play Store dari atas, bayangkan pengguna yang telah berpindah dari Buku
+terakhir yang dilihat ke detail untuk adaptasi Film. Dalam hal itu, tombol Up dapat kembali ke kontainer
+(Movies) yang sebelumnya belum dilalui pengguna.</p>
+
+<img src="{@docRoot}design/media/navigation_between_siblings_market2.png">
+
+<h2 id="into-your-app">Navigasi ke Aplikasi Anda melalui Widget dan Pemberitahuan Layar Home</h2>
+
+<p>Anda bisa menggunakan widget atau pemberitahuan layar Home untuk membantu pengguna berpindah langsung ke layar
+jauh dalam hierarki aplikasi Anda. Misalnya, widget Inbox dan pemberitahuan pesan baru di Gmail dapat
+melewatkan layar Inbox, dan membawa pengguna langsung ke tampilan percakapan.</p>
+
+<p>Untuk kedua kasus ini, tangani tombol Up sebagai berikut:</p>
+
+<ul>
+<li><em>Jika layar tujuan biasanya dicapai dari satu layar tertentu dalam aplikasi
+Anda</em>, tombol Up akan mengarahkannya ke layar itu.</li>
+<li><em>Jika tidak</em>, tombol Up akan mengarahkan ke layar teratas ("Home") dari aplikasi Anda.</li>
+</ul>
+
+<p>Dalam hal tombol Back, Anda harus membuat navigasi lebih bisa diprediksi dengan menyisipkan ke dalam
+back-stack tugas path navigasi naik lengkap menuju layar teratas aplikasi. Ini memungkinkan pengguna
+yang lupa cara masuk ke aplikasi Anda untuk berpindah ke layar teratas aplikasi sebelum
+keluar.</p>
+
+<p>Sebagai contoh, widget layar Home di Gmail memiliki tombol untuk menuju langsung ke layar
+Compose. Tombol Up atau Back dari layar Compose akan membawa pengguna ke Inbox, dan dari sana tombol
+Back berlanjut ke Home.</p>
+
+<img src="{@docRoot}design/media/navigation_from_outside_back.png">
+
+<h4>Pemberitahuan tidak langsung</h4>
+
+<p>Jika aplikasi Anda perlu menampilkan informasi tentang beberapa kejadian sekaligus, aplikasi dapat menggunakan
+pemberitahuan tunggal yang mengarahkan pengguna ke layar antara. Layar ini merangkum semua
+kejadian tersebut, dan menyediakan path bagi pengguna untuk menjelajah ke dalam aplikasi. Pemberitahuan dengan gaya seperti ini
+disebut <em>pemberitahuan tidak langsung</em>.</p>
+
+<p>Berbeda dengan pemberitahuan standar (langsung), menekan tombol Back dari 
+layar antara pada pemberitahuan tidak langsung akan mengembalikan pengguna ke titik pemicu pemberitahuan tersebut&mdash;tidak ada
+layar tambahan yang disisipkan ke dalam back-stack. Setelah pengguna melanjutkan ke dalam aplikasi dari
+layar antara, tombol Up dan Back akan berperilaku seperti pada pemberitahuan standar, sebagaimana dijelaskan di atas:
+menyusuri ke dalam aplikasi dan bukan kembali ke layar antara.</p>
+
+<p>Misalnya, anggaplah seorang pengguna di Gmail menerima pemberitahuan tidak langsung dari Kalender. Menyentuh
+pemberitahuan ini akan membuka layar antara, yang menampilkan pengingat beberapa macam
+kejadian. Menyentuh Back dari layar antara akan mengembalikan pengguna ke Gmail. Menyentuh kejadian
+tertentu akan membawa pengguna dari layar antara ke aplikasi Kalender lengkap untuk menampilkan detail
+kejadian. Dari detail kejadian, tombol Up dan Back akan mengarahkan ke tampilan Kalender tingkat atas.</p>
+
+<img src="{@docRoot}design/media/navigation_indirect_notification.png">
+
+<h4>Pemberitahuan pop-up</h4>
+
+<p><em>Pemberitahuan pop-up</em> akan melewatkan laci pemberitahuan, bukan muncul secara langsung di
+hadapan pengguna. Ini jarang digunakan, dan <strong>harus dicadangkan untuk peristiwa yang memerlukan respons tepat waktu
+dan diperlukan interupsi dari konteks pengguna</strong>. Misalnya,
+Talk menggunakan gaya ini untuk memberi tahu pengguna tentang ajakan dari teman untuk bergabung dalam chatting video, karena
+ajakan ini akan kedaluwarsa secara otomatis setelah beberapa detik.</p>
+
+<p>Dalam hal perilaku navigasi, pemberitahuan pop-up sangat mirip perilaku pemberitahuan
+tidak langsung pada layar antara. Tombol Back akan menghilangkan pemberitahuan pop-up. Jika pengguna berpindah
+dari pop-up ke aplikasi yang memberi tahu, tombol Up dan Back akan mengikuti aturan pemberitahuan standar,
+berpindah dalam aplikasi.</p>
+
+<img src="{@docRoot}design/media/navigation_popup_notification.png">
+
+<h2 id="between-apps">Navigasi Antar Aplikasi</h2>
+
+<p>Salah satu kekuatan dasar sistem Android adalah kemampuan aplikasi untuk saling
+mengaktifkan, sehingga pengguna dapat berpindah langsung dari satu aplikasi ke aplikasi lainnya. Misalnya, sebuah
+aplikasi yang perlu mengambil foto dapat mengaktifkan aplikasi Kamera, yang akan mengembalikan foto
+ke aplikasi perujuk. Ini sangat menguntungkan pengembang, yang bisa dengan mudah memanfaatkan
+kode dari aplikasi lain, maupun pengguna, yang menikmati pengalaman konsisten untuk tindakan yang biasa
+dilakukan.</p>
+
+<p>Untuk memahami navigasi antar aplikasi, maka perlu memahami perilaku kerangka kerja Android
+yang akan dibahas di bawah ini.</p>
+
+<h4>Aktivitas, tugas, dan intent</h4>
+
+<p>Dalam Android, <strong>aktivitas</strong> adalah komponen aplikasi yang mendefinisikan layar
+informasi dan semua tindakan terkait yang dapat dilakukan pengguna. Aplikasi Anda adalah kumpulan
+aktivitas, yang terdiri dari aktivitas yang Anda buat dan aktivitas yang Anda gunakan ulang dari aplikasi lain.</p>
+
+<p><strong>Tugas</strong> adalah urutan aktivitas yang diikuti pengguna untuk mencapai tujuan. 
+Tugas tunggal dapat memanfaatkan aktivitas dari satu aplikasi saja, atau dapat memanfaatkan aktivitas dari sejumlah
+aplikasi berbeda.</p>
+
+<p><strong>Intent</strong> adalah mekanisme bagi satu aplikasi untuk memberi isyarat minta bantuan
+aplikasi lain dalam menjalankan suatu tindakan. Aktivitas aplikasi dapat menunjukkan intent
+ apa saja yang dapat diresponsnya. Untuk intent umum seperti "Share", pengguna mungkin telah menginstal beberapa aplikasi
+yang dapat memenuhi permintaan itu.</p>
+
+<h4>Contoh: berpindah antar aplikasi untuk mendukung berbagi</h4>
+
+<p>Untuk memahami cara kerja sama aktivitas, tugas, dan intent, perhatikan bagaimana sebuah aplikasi memungkinkan pengguna
+untuk berbagi konten dengan menggunakan aplikasi lain. Misalnya, membuka aplikasi Play Store dari Home akan memulai
+Task A baru (lihat gambar di bawah). Setelah menyusuri Play Store dan menyentuh buku yang dipromosikan
+untuk melihat detailnya, pengguna tetap berada dalam tugas yang sama, memperluasnya dengan menambahkan aktivitas. Memicu
+tindakan Share akan memberi tahu pengguna dengan dialog berisi daftar aktivitas (dari aplikasi berbeda)
+yang telah terdaftar untuk menangani intent Share.</p>
+
+<img src="{@docRoot}design/media/navigation_between_apps_inward.png">
+
+<p>Bila pengguna memilih untuk berbagi melalui Gmail, aktivitas penulisan di Gmail akan ditambahkan sebagai kelanjutan dari
+Task A&mdash;tidak ada tugas baru yang dibuat. Jika Gmail sedang menjalankan tugasnya di latar belakang, maka
+tidak akan terpengaruh.</p>
+
+<p>Dari aktivitas penulisan, mengirim pesan atau menyentuh tombol Back akan mengembalikan pengguna ke
+aktivitas detail buku tersebut. Penyentuhan tombol Back berikutnya akan terus mengarahkan kembali melalui Play
+Store, sampai akhirnya tiba di Home.</p>
+
+<img src="{@docRoot}design/media/navigation_between_apps_back.png">
+
+<p>Akan tetapi, dengan menyentuh tombol Up dari aktivitas penulisan, pengguna menunjukkan keinginan untuk tetap berada di
+Gmail. Aktivitas daftar percakapan Gmail muncul, Task B yang baru akan dibuat untuk itu. Tugas baru
+selalu terkait ke Home, maka menyentuh tombol Back dari daftar percakapan akan mengembalikan ke sana.</p>
+
+<img src="{@docRoot}design/media/navigation_between_apps_up.png">
+
+<p>Task A tetap berjalan di latar belakang, dan pengguna nanti dapat kembali ke sana (misalnya, melalui layar
+Recents). Jika Gmail sedang menjalankan tugasnya di latar belakang, maka itu akan digantikan
+dengan Task B&mdash;konteks sebelumnya akan diabaikan demi tujuan baru pengguna.</p>
+
+<p>Jika register aplikasi Anda menangani intent dengan aktivitas yang jauh di dalam hierarki aplikasi,
+lihat <a href="#into-your-app">Navigasi Aplikasi Anda melalui Widget Layar Home dan
+Pemberitahuan</a> untuk panduan mengenai cara menetapkan navigasi Up.</p>
diff --git a/docs/html-intl/intl/in/guide/components/activities.jd b/docs/html-intl/intl/in/guide/components/activities.jd
new file mode 100644
index 0000000..6cac696
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/activities.jd
@@ -0,0 +1,756 @@
+page.title=Aktivitas
+page.tags=aktivitas,intent
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Dalam dokumen ini</h2>
+<ol>
+  <li><a href="#Creating">Membuat Aktivitas</a>
+    <ol>
+      <li><a href="#UI">Mengimplementasikan antarmuka pengguna</a></li>
+      <li><a href="#Declaring">Mendeklarasikan aktivitas dalam manifes</a></li>
+    </ol>
+  </li>
+  <li><a href="#StartingAnActivity">Memulai Aktivitas</a>
+    <ol>
+      <li><a href="#StartingAnActivityForResult">Memulai aktivitas agar berhasil</a></li>
+    </ol>
+  </li>
+  <li><a href="#ShuttingDown">Mematikan Aktivitas</a></li>
+  <li><a href="#Lifecycle">Mengelola Daur Hidup Aktivitas</a>
+    <ol>
+      <li><a href="#ImplementingLifecycleCallbacks">Mengimplementasikan callback daur hidup</a></li>
+      <li><a href="#SavingActivityState">Menyimpan status aktivitas</a></li>
+      <li><a href="#ConfigurationChanges">Menangani perubahan konfigurasi</a></li>
+      <li><a href="#CoordinatingActivities">Mengoordinasikan aktivitas</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Kelas-kelas utama</h2>
+<ol>
+  <li>{@link android.app.Activity}</li>
+</ol>
+
+<h2>Lihat juga</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/tasks-and-back-stack.html">Tugas dan
+Back-Stack</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+<p>{@link android.app.Activity} adalah sebuah komponen aplikasi yang menyediakan layar yang digunakan
+pengguna untuk berinteraksi guna melakukan sesuatu, misalnya memilih nomor telepon, mengambil foto, mengirim email, atau
+menampilkan peta. Tiap aktivitas diberi sebuah jendela untuk menggambar antarmuka penggunanya. Jendela ini
+biasanya mengisi layar, namun mungkin lebih kecil daripada layar dan mengambang di atas
+jendela lain.</p>
+
+<p> Sebuah aplikasi biasanya terdiri atas beberapa aktivitas yang terikat secara longgar
+satu sama lain. Biasanya, satu aktivitas dalam aplikasi ditetapkan sebagai aktivitas "utama", yang
+ditampilkan kepada pengguna saat membuka aplikasi untuk pertama kali. Tiap
+aktivitas kemudian bisa memulai aktivitas lain untuk melakukan berbagai tindakan. Tiap kali 
+aktivitas baru dimulai, aktivitas sebelumnya akan dihentikan, namun sistem mempertahankan aktivitas
+dalam sebuah tumpukan ("back-stack"). Bila sebuah aktivitas baru dimulai, aktivitas itu akan didorong ke atas back-stack dan
+mengambil fokus pengguna. Back-stack mematuhi mekanisme dasar tumpukan "masuk terakhir, keluar pertama",
+jadi, bila pengguna selesai dengan aktivitas saat ini dan menekan tombol <em>Back</em>, aktivitas
+akan dikeluarkan dari tumpukan (dan dimusnahkan) dan aktivitas sebelumnya akan dilanjutkan. (Back-stack
+dibahas selengkapnya dalam dokumen <a href="{@docRoot}guide/components/tasks-and-back-stack.html">Tugas
+dan Back-Stack</a>.)</p>
+
+<p>Bila aktivitas dihentikan karena ada aktivitas baru yang dimulai, aktivitas lama akan diberi tahu tentang perubahan status ini
+melalui metode callback daur hidupnya.
+Ada beberapa metode callback yang mungkin diterima aktivitas, karena sebuah perubahan dalam
+statusnya&mdash;apakah sistem sedang membuatnya, menghentikannya, melanjutkannya, atau menghapuskannya&mdash;dan
+masing-masing callback memberi Anda kesempatan melakukan pekerjaan tertentu yang
+sesuai untuk perubahan status itu. Misalnya, bila dihentikan, aktivitas Anda harus melepas 
+objek besar, seperti koneksi jaringan atau database. Bila aktivitas dilanjutkan, Anda bisa
+memperoleh kembali sumber daya yang diperlukan dan melanjutkan tindakan yang terputus. Transisi status ini
+semuanya bagian dari daur hidup aktivitas.</p>
+
+<p>Bagian selebihnya dari dokumen ini membahas dasar-dasar cara membuat dan menggunakan aktivitas,
+yang meliputi satu pembahasan lengkap tentang cara kerja daur hidup aktivitas, sehingga Anda bisa dengan benar mengelola
+transisi di antara berbagai status aktivitas.</p>
+
+
+
+<h2 id="Creating">Membuat Aktivitas</h2>
+
+<p>Untuk membuat sebuah aktivitas, Anda harus membuat subkelas {@link android.app.Activity} (atau
+subkelasnya yang ada). Dalam subkelas itu, Anda perlu mengimplementasikan metode-metode callback yang
+dipanggil sistem saat aktivitas bertransisi di antara berbagai status daur hidupnya, misalnya saat
+aktivitas sedang dibuat, dihentikan, dilanjutkan, atau dimusnahkan. Dua metode callback
+terpenting adalah:</p>
+
+<dl>
+  <dt>{@link android.app.Activity#onCreate onCreate()}</dt>
+  <dd>Anda harus mengimplementasikan metode ini. Sistem memanggilnya saat membuat
+    aktivitas Anda. Dalam implementasi, Anda harus menginisialisasi komponen-komponen esensial 
+aktivitas.
+    Yang terpenting, inilah tempat Anda harus memanggil {@link android.app.Activity#setContentView
+    setContentView()} untuk mendefinisikan layout untuk antarmuka pengguna aktivitas.</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>Sistem memanggil metode ini sebagai pertanda pertama bahwa pengguna sedang meninggalkan
+aktivitas Anda (walau itu tidak selalu berarti aktivitas sedang dimusnahkan). Inilah biasanya tempat Anda
+harus mengikat setiap perubahan yang harus dipertahankan selepas sesi pengguna saat ini (karena
+pengguna mungkin tidak kembali).</dd>
+</dl>
+
+<p>Ada beberapa metode callback daur hidup lainnya yang harus Anda gunakan untuk memberikan
+pengalaman pengguna yang mengalir di antara aktivitas dan menangani interupsi tidak terduga yang menyebabkan aktivitas Anda
+dihentikan dan bahkan dimusnahkan. Semua metode callback daur hidup akan dibahas nanti, di
+bagian tentang <a href="#Lifecycle">Mengelola Daur Hidup Aktivitas</a>.</p>
+
+
+
+<h3 id="UI">Mengimplementasikan antarmuka pengguna</h3>
+
+<p> Antarmuka pengguna aktivitas disediakan oleh hierarki objek&mdash;tampilan yang diturunkan
+dari kelas {@link android.view.View}.  Tiap tampilan mengontrol sebuah ruang persegi panjang tertentu
+dalam jendela aktivitas dan bisa merespons interaksi pengguna. Misalnya, sebuah tampilan mungkin berupa sebuah
+tombol yang mengawali suatu tindakan bila pengguna menyentuhnya.</p>
+
+<p>Android menyediakan sejumlah tampilan siap-dibuat yang bisa Anda gunakan untuk mendesain dan mengatur
+layout. "Widget" adalah tampilan yang menyediakan elemen-elemen visual (dan interaktif) untuk layar, 
+misalnya tombol, bidang teks, kotak cek, atau sekadar sebuah gambar. "Layout" adalah tampilan yang diturunkan dari {@link
+android.view.ViewGroup} yang memberikan sebuah model layout unik untuk tampilan anaknya, misalnya
+layout linier, layout grid, atau layout relatif. Anda juga bisa mensubkelaskan kelas-kelas {@link android.view.View} dan
+{@link android.view.ViewGroup} (atau subkelas yang ada) untuk membuat widget dan
+layout Anda sendiri dan menerapkannya ke layout aktivitas Anda.</p>
+
+<p>Cara paling umum untuk mendefinisikan layout dengan menggunakan tampilan adalah dengan file layout XML yang disimpan dalam
+sumber daya aplikasi Anda. Dengan cara ini, Anda bisa memelihara desain antarmuka pengguna Anda secara terpisah dari
+kode yang mendefinisikan perilaku aktivitas. Anda bisa mengatur layout sebagai UI 
+aktivitas Anda dengan {@link android.app.Activity#setContentView(int) setContentView()}, dengan meneruskan
+ID sumber daya untuk layout itu. Akan tetapi, Anda juga bisa membuat {@link android.view.View} baru dalam
+kode aktivitas dan membuat hierarki tampilan dengan menyisipkan {@link
+android.view.View} baru ke dalam {@link android.view.ViewGroup}, kemudian menggunakan layout itu dengan meneruskan akar
+{@link android.view.ViewGroup} ke {@link android.app.Activity#setContentView(View)
+setContentView()}.</p>
+
+<p>Untuk informasi tentang cara membuat antarmuka pengguna, lihat dokumentasi <a href="{@docRoot}guide/topics/ui/index.html">Antarmuka Pengguna</a>.</p>
+
+
+
+<h3 id="Declaring">Mendeklarasikan aktivitas dalam manifes</h3>
+
+<p>Anda harus mendeklarasikan aktivitas dalam file manifes agar file itu
+bisa diakses oleh sistem. Untuk mendeklarasikan aktivitas, bukalah file manifes Anda dan tambahkan sebuah elemen <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+sebagai anak elemen <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+. Misalnya:</p>
+
+<pre>
+&lt;manifest ... &gt;
+  &lt;application ... &gt;
+      &lt;activity android:name=".ExampleActivity" /&gt;
+      ...
+  &lt;/application ... &gt;
+  ...
+&lt;/manifest &gt;
+</pre>
+
+<p>Ada beberapa atribut lain yang bisa Anda sertakan dalam elemen ini, untuk mendefinisikan properti
+misalnya label untuk aktivitas, ikon untuk aktivitas, atau tema untuk memberi gaya ke
+UI aktivitas. Atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">{@code android:name}</a>
+ adalah satu-satunya atribut yang diperlukan&mdash;atribut ini menetapkan nama kelas aktivitas. Setelah
+Anda mempublikasikan aplikasi, Anda tidak boleh mengubah nama ini, karena jika melakukannya, Anda bisa merusak
+sebagian fungsionalitas, misalnya pintasan aplikasi (bacalah posting blog berjudul <a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Things
+That Cannot Change</a>).</p>
+
+<p>Lihat acuan elemen <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+untuk informasi selengkapnya tentang cara mendeklarasikan aktivitas Anda dalam manifes.</p>
+
+
+<h4>Menggunakan filter intent</h4>
+
+<p>Elemen <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> juga bisa menetapkan berbagai filter intent&mdash;dengan menggunakan elemen <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> &mdash;untuk mendeklarasikan cara komponen aplikasi lain 
+mengaktifkannya.</p>
+
+<p>Bila Anda membuat aplikasi baru dengan Android SDK Tools, aktivitas stub
+yang dibuat untuk Anda secara otomatis menyertakan filter intent yang mendeklarasikan respons
+aktivitas pada tindakan "main" (utama) dan harus diletakkan dalam kategori "launcher"). Filter intent
+terlihat seperti ini:</p>
+
+<pre>
+&lt;activity android:name=".ExampleActivity" android:icon="@drawable/app_icon"&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>Elemen <a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> menetapkan bahwa ini adalah titik masuk "main" ke aplikasi. Elemen <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> menetapkan bahwa aktivitas ini harus tercantum dalam launcher aplikasi
+sistem (untuk memungkinkan pengguna meluncurkan aktivitas ini).</p>
+
+<p>Jika Anda bermaksud agar aplikasi dimuat dengan sendirinya dan tidak memperbolehkan aplikasi lain
+mengaktifkan aktivitasnya, maka Anda tidak memerlukan filter intent lain. Hanya satu aktivitas yang boleh
+memiliki tindakan "main" dan kategori "launcher", seperti dalam contoh sebelumnya. Aktivitas yang
+tidak ingin Anda sediakan untuk aplikasi lain tidak boleh memiliki filter intent dan Anda bisa
+memulai sendiri aktivitas dengan menggunakan intent secara eksplisit (seperti dibahas di bagian berikut).</p>
+
+<p>Akan tetapi, jika ingin aktivitas Anda merespons intent implisit yang dikirim dari
+aplikasi lain (dan aplikasi Anda sendiri), maka Anda harus mendefinisikan filter intent tambahan untuk
+aktivitas. Untuk masing-masing tipe intent yang ingin direspons, Anda harus menyertakan sebuah <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> yang menyertakan elemen
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> dan, opsional, sebuah elemen <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> dan/atau elemen <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a>. Elemen-elemen ini menetapkan tipe intent yang bisa
+direspons oleh aktivitas Anda.</p>
+
+<p>Untuk informasi selengkapnya tentang cara aktivitas Anda merespons intent, lihat dokumen <a href="{@docRoot}guide/components/intents-filters.html">Intent dan Filter Intent</a>.
+</p>
+
+
+
+<h2 id="StartingAnActivity">Memulai Aktivitas</h2>
+
+<p>Anda bisa memulai aktivitas lain dengan memanggil {@link android.app.Activity#startActivity
+  startActivity()}, dengan meneruskan sebuah {@link android.content.Intent} yang menjelaskan aktivitas
+  yang ingin Anda mulai. Intent menetapkan aktivitas persis yang ingin Anda mulai atau menjelaskan
+  tipe tindakan yang ingin Anda lakukan (dan sistem akan memilih aktivitas yang sesuai untuk Anda,
+yang bahkan
+  bisa berasal dari aplikasi berbeda). Intent juga bisa membawa sejumlah kecil data untuk
+  digunakan oleh aktivitas yang dimulai.</p>
+
+<p>Saat bekerja dalam aplikasi sendiri, Anda nanti akan sering meluncurkan aktivitas yang dikenal saja.
+ Anda bisa melakukannya dengan membuat intent yang mendefinisikan secara eksplisit aktivitas yang ingin Anda mulai,
+dengan menggunakan nama kelas. Misalnya, beginilah cara satu aktivitas memulai aktivitas lain bernama {@code
+SignInActivity}:</p>
+
+<pre>
+Intent intent = new Intent(this, SignInActivity.class);
+startActivity(intent);
+</pre>
+
+<p>Akan tetapi, aplikasi Anda mungkin juga perlu melakukan beberapa tindakan, misalnya mengirim email,
+  pesan teks, atau pembaruan status, dengan menggunakan data dari aktivitas Anda. Dalam hal ini, aplikasi Anda mungkin
+ tidak memiliki aktivitasnya sendiri untuk melakukan tindakan tersebut, sehingga Anda bisa memanfaatkan aktivitas
+  yang disediakan oleh aplikasi lain pada perangkat, yang bisa melakukan tindakan itu untuk Anda. Inilah saatnya
+intent benar-benar berharga&mdash;Anda bisa membuat intent yang menjelaskan tindakan yang ingin
+dilakukan dan sistem
+  akan meluncurkan aktivitas yang tepat dari aplikasi lain. Jika ada
+  beberapa aktivitas yang bisa menangani intent itu, pengguna bisa memilih aktivitas yang akan digunakan. Misalnya,
+  jika Anda ingin memperbolehkan pengguna mengirim pesan email, Anda bisa membuat
+  intent berikut:</p>
+
+<pre>
+Intent intent = new Intent(Intent.ACTION_SEND);
+intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);
+startActivity(intent);
+</pre>
+
+<p>Ekstra {@link android.content.Intent#EXTRA_EMAIL} yang ditambahkan ke intent adalah sebuah larik string
+  alamat email yang menjadi tujuan pengiriman email. Bila aplikasi email merespons intent ini,
+ aplikasi itu akan membaca larik string yang disediakan dalam ekstra dan meletakkannya dalam bidang "to" 
+  pada formulir penulisan email. Dalam situasi ini, aktivitas aplikasi email dimulai dan bila
+  pengguna selesai, aktivitas Anda akan dilanjutkan.</p>
+
+
+
+
+<h3 id="StartingAnActivityForResult">Memulai aktivitas agar berhasil</h3>
+
+<p>Kadang-kadang, Anda mungkin ingin menerima hasil dari aktivitas yang Anda mulai. Dalam hal itu,
+  mulailah aktivitas dengan memanggil {@link android.app.Activity#startActivityForResult
+  startActivityForResult()} (sebagai ganti {@link android.app.Activity#startActivity
+  startActivity()}). Untuk menerima hasil dari
+aktivitas selanjutnya nanti, implementasikan metode callback {@link android.app.Activity#onActivityResult onActivityResult()}
+. Bila aktivitas selanjutnya selesai, aktivitas akan mengembalikan hasil dalam {@link
+android.content.Intent} kepada metode {@link android.app.Activity#onActivityResult onActivityResult()}
+Anda.</p>
+
+<p>Misalnya, mungkin Anda ingin pengguna mengambil salah satu kontaknya, sehingga aktivitas Anda bisa
+melakukan sesuatu dengan informasi dalam kontak itu. Begini caranya membuat intent tersebut dan
+menangani hasilnya:</p>
+
+<pre>
+private void pickContact() {
+    // Create an intent to "pick" a contact, as defined by the content provider URI
+    Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
+    startActivityForResult(intent, PICK_CONTACT_REQUEST);
+}
+
+&#64;Override
+protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+    // If the request went well (OK) and the request was PICK_CONTACT_REQUEST
+    if (resultCode == Activity.RESULT_OK &amp;&amp; requestCode == PICK_CONTACT_REQUEST) {
+        // Perform a query to the contact's content provider for the contact's name
+        Cursor cursor = getContentResolver().query(data.getData(),
+        new String[] {Contacts.DISPLAY_NAME}, null, null, null);
+        if (cursor.moveToFirst()) { // True if the cursor is not empty
+            int columnIndex = cursor.getColumnIndex(Contacts.DISPLAY_NAME);
+            String name = cursor.getString(columnIndex);
+            // Do something with the selected contact's name...
+        }
+    }
+}
+</pre>
+
+<p>Contoh ini menunjukkan logika dasar yang harus Anda gunakan dalam metode {@link
+android.app.Activity#onActivityResult onActivityResult()} Anda untuk menangani 
+hasil aktivitas. Syarat pertama memeriksa apakah permintaan berhasil&mdash;jika ya, maka
+ {@code resultCode} akan berupa {@link android.app.Activity#RESULT_OK}&mdash;dan apakah permintaan
+yang direspons hasil ini dikenal&mdash;dalam hal ini, {@code requestCode} cocok dengan
+parameter kedua yang dikirim dengan {@link android.app.Activity#startActivityForResult
+startActivityForResult()}. Dari sana, kode akan menangani hasil aktivitas dengan membuat query
+data yang dihasilkan dalam{@link android.content.Intent} (parameter {@code data}).</p>
+
+<p>Yang terjadi adalah {@link
+android.content.ContentResolver} melakukan query terhadap penyedia konten, yang menghasilkan
+{@link android.database.Cursor} yang memperbolehkan data query dibaca. Untuk informasi selengkapnya, lihat dokumen
+<a href="{@docRoot}guide/topics/providers/content-providers.html">Penyedia Konten</a>.</p>
+
+<p>Untuk informasi selengkapnya tentang menggunakan intent, lihat dokumen <a href="{@docRoot}guide/components/intents-filters.html">Intent dan Filter
+Intent</a>.</p>
+
+
+<h2 id="ShuttingDown">Mematikan Aktivitas</h2>
+
+<p>Anda bisa mematikan aktivitas dengan memanggil metode {@link android.app.Activity#finish
+finish()}-nya. Anda juga bisa mematikan aktivitas terpisah yang sebelumnya Anda mulai dengan memanggil
+{@link android.app.Activity#finishActivity finishActivity()}.</p>
+
+<p class="note"><strong>Catatan:</strong> Pada umumnya, Anda tidak boleh secara eksplisit mengakhiri aktivitas
+dengan menggunakan metode-metode ini. Seperti yang dibahas di bagian berikut tentang daur hidup aktivitas,
+sistem Android mengelola hidup aktivitas untuk Anda, sehingga Anda tidak perlu menyelesaikan sendiri
+aktivitas tersebut. Memanggil metode-metode ini bisa berpengaruh negatif pada pengalaman
+pengguna yang diharapkan dan hanya boleh digunakan bila Anda benar-benar tidak ingin pengguna kembali ke
+instance aktivitas ini.</p>
+
+
+<h2 id="Lifecycle">Mengelola Daur Hidup Aktivitas</h2>
+
+<p>Mengelola daur hidup aktivitas dengan mengimplementasikan metode-metode callback sangat
+penting untuk mengembangkan
+aplikasi yang kuat dan fleksibel. Daur hidup aktivitas dipengaruhi langsung oleh kaitannya dengan
+aktivitas lain, tugasnya, serta back-stack.</p>
+
+<p>Pada dasarnya, sebuah aktivitas bisa berada dalam tiga status:</p>
+
+<dl>
+  <dt><i>Dilanjutkan</i></dt>
+    <dd>Aktivitas berada di latar depan layar dan mendapatkan fokus pengguna. (Status ini
+kadang-kadang disebut juga dengan "running" (berjalan).)</dd>
+
+  <dt><i>Dihentikan sementara</i></dt>
+    <dd>Aktivitas lain berada di latar depan dan mendapat fokus, namun aktivitas ini masih terlihat. Yakni,
+aktivitas lain terlihat di atas aplikasi ini dan aktivitas itu setengah transparan atau tidak
+menuutpi seluruh layar. Aktivitas yang dihentikan sementara adalah benar-benar hidup (objek {@link android.app.Activity}
+dipertahankan dalam memori, objek itu memelihara semua informasi status dan anggota, dan tetap dikaitkan dengan
+window manager), namun bisa dimatikan oleh sistem dalam situasi memori sangat rendah.</dd>
+
+  <dt><i>Dihentikan</i></dt>
+    <dd>Aktivitas ditutupi sepenuhnya oleh aktivitas lain (aktivitas sekarang berada di
+"latar belakang"). Aktivitas yang dihentikan juga masih hidup (objek {@link android.app.Activity}
+dipertahankan dalam memori, objek itu menjaga semua informasi status dan anggota, namun <em>tidak</em>
+dikaitkan dengan window manager). Akan tetapi, aktivitas tidak lagi terlihat bagi pengguna dan
+bisa dimatikan oleh sistem bila memori diperlukan di lain.</dd>
+</dl>
+
+<p>Jika aktivitas dihentikan sementara atau dihentikan, sistem bisa mengeluarkannya dari memori baik dengan memintanya agar
+diakhiri (memanggil metode {@link android.app.Activity#finish finish()}-nya), atau sekadar mematikan
+prosesnya.  Bila dibuka lagi (setelah diakhiri atau dimatikan), aktivitas harus dibuat dari
+awal.</p>
+
+
+
+<h3 id="ImplementingLifecycleCallbacks">Mengimplementasikan callback daur hidup</h3>
+
+<p>Saat bertransisi ke dalam dan ke luar berbagai status yang dijelaskan di atas, aktivitas diberi tahu
+melalui berbagai metode callback. Semua metode callback adalah sangkutan yang
+bisa Anda kesampingkan untuk melakukan pekerjaan yang sesuai saat status aktivitas Anda berubah. Aktivitas skeleton
+berikut menyertakan setiap metode daur hidup mendasar:</p>
+
+
+<pre>
+public class ExampleActivity extends Activity {
+    &#64;Override
+    public void {@link android.app.Activity#onCreate onCreate}(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // The activity is being created.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStart onStart()} {
+        super.onStart();
+        // The activity is about to become visible.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onResume onResume()} {
+        super.onResume();
+        // The activity has become visible (it is now "resumed").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onPause onPause()} {
+        super.onPause();
+        // Another activity is taking focus (this activity is about to be "paused").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStop onStop()} {
+        super.onStop();
+        // The activity is no longer visible (it is now "stopped")
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onDestroy onDestroy()} {
+        super.onDestroy();
+        // The activity is about to be destroyed.
+    }
+}
+</pre>
+
+<p class="note"><strong>Catatan:</strong> Implementasi Anda terhadap metode-metode daur hidup ini harus
+selalu memanggil implementasi superkelas sebelum melakukan pekerjaan apa pun, seperti yang ditampilkan dalam contoh-contoh di atas.</p>
+
+<p>Bersama-sama, semua metode ini mendefinisikan seluruh daur hidup sebuah aktivitas. Dengan mengimplementasikan
+metode-metode ini, Anda bisa memantau tiga loop tersarang (nested loop) dalam daur hidup aktivitas: </p>
+
+<ul>
+<li><b>Seluruh masa hidup</b> aktivitas berlangsung antara panggilan ke {@link
+android.app.Activity#onCreate onCreate()} dan panggilan ke {@link
+android.app.Activity#onDestroy}. Aktivitas Anda harus melakukan penyiapan
+status "global" (misalnya mendefinisikan layout) dalam {@link android.app.Activity#onCreate onCreate()}, dan
+melepas semua sisa sumber daya dalam {@link android.app.Activity#onDestroy}. Misalnya, jika
+aktivitas Anda memiliki sebuah thread yang berjalan di latar belakang untuk mengunduh data dari jaringan, aktivitas itu bisa membuat
+thread itu dalam {@link android.app.Activity#onCreate onCreate()} kemudian menghentikan thread dalam {@link
+android.app.Activity#onDestroy}.</li>
+
+<li><p><b>Masa pakai terlihat</b> (visible lifetime) aktivitas berlangsung antara panggilan ke {@link
+android.app.Activity#onStart onStart()} dan panggilan ke {@link
+android.app.Activity#onStop onStop()}. Selama ini, pengguna bisa melihat aktivitas
+pada layar dan berinteraksi dengannya. Misalnya, {@link android.app.Activity#onStop onStop()} dipanggil
+bila sebuah aktivitas baru dimulai dan aktivitas ini tidak lagi terlihat. Di antara dua metode ini, Anda bisa
+memelihara sumber daya yang diperlukan untuk menampilkan aktivitas kepada pengguna. Misalnya, Anda bisa mendaftarkan sebuah
+{@link android.content.BroadcastReceiver} dalam {@link
+android.app.Activity#onStart onStart()} untuk memantau perubahan yang berdampak pada UI Anda, dan mencabut pendaftarannya
+dalam {@link android.app.Activity#onStop onStop()} bila pengguna tidak bisa lagi melihat apa yang sedang Anda
+tampilkan. Sistem bisa memanggil {@link android.app.Activity#onStart onStart()} dan {@link
+android.app.Activity#onStop onStop()} beberapa kali selama masa pakai aktivitas, sambil
+aktivitas berganti-ganti antara terlihat dan tersembunyi bagi pengguna.</p></li>
+
+<li><p><b>Masa pakai latar depan</b> aktivitas berlangsung antara panggilan ke {@link
+android.app.Activity#onResume onResume()} dan panggilan ke {@link android.app.Activity#onPause
+onPause()}. Selama waktu ini, aktivitas berada di depan semua aktivitas lain pada layar dan mendapatkan
+fokus input pengguna.  Aktivitas bisa sering bertransisi ke dalam dan ke luar latar depan&mdash;misalnya,
+ {@link android.app.Activity#onPause onPause()} dipanggil bila perangkat masuk ke mode tidur atau
+bila dialog muncul. Karena status ini bisa sering bertransisi, kode dalam dua metode ini harus
+cukup ringan untuk menghindari transisi lamban yang membuat pengguna menunggu.</p></li>
+</ul>
+
+<p>Gambar 1 mengilustrasikan loop dan path yang mungkin diambil sebuah aktivitas di antara status-status.
+Persegi panjang mewakili metode callback yang bisa Anda implementasikan untuk melakukan operasi saat
+aktivitas bertransisi di antara status. <p>
+
+<img src="{@docRoot}images/activity_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Gambar 1.</strong> Daur hidup aktivitas.</p>
+
+<p>Metode-metode callback daur hidup yang sama tercantum dalam tabel 1, yang menjelaskan setiap metode callback
+secara lebih detail dan menentukan lokasinya masing-masing dalam
+daur hidup aktivitas keseluruhan, termasuk apakah sistem bisa mematikan aktivitas setelah
+metode callback selesai.</p>
+
+<p class="table-caption"><strong>Tabel 1.</strong> Rangkuman metode callback
+daur hidup aktivitas.</p>
+
+<table border="2" width="85%" frame="hsides" rules="rows">
+<colgroup align="left" span="3"></colgroup>
+<colgroup align="left"></colgroup>
+<colgroup align="center"></colgroup>
+<colgroup align="center"></colgroup>
+
+<thead>
+<tr><th colspan="3">Metode</th> <th>Keterangan</th> <th>Bisa dimatikan setelahnya?</th> <th>Berikutnya</th></tr>
+</thead>
+
+<tbody>
+<tr>
+  <td colspan="3" align="left"><code>{@link android.app.Activity#onCreate onCreate()}</code></td>
+  <td>Dipanggil saat aktivitas pertama kali dibuat.
+      Di sinilah Anda harus melakukan semua persiapan statis normal &mdash;
+      membuat tampilan, mengikat data ke daftar, dan sebagainya.  Metode ini diberi
+      sebuah objek Bundle yang berisi status aktivitas sebelumnya, jika
+      status itu tertangkap (lihat <a href="#actstate">Menyimpan Status Aktivitas</a>,
+      nanti).
+      <p>Selalu diikuti oleh {@code onStart()}.</p></td>
+  <td align="center">Tidak</td>
+      <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td rowspan="5" style="border-left: none; border-right: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onRestart
+onRestart()}</code></td>
+   <td>Dipanggil setelah aktivitas dihentikan, tepat sebelum
+       dimulai lagi.
+       <p>Selalu diikuti oleh {@code onStart()}</p></td>
+   <td align="center">Tidak</td>
+   <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStart onStart()}</code></td>
+   <td>Dipanggil tepat sebelum aktivitas menjadi terlihat bagi pengguna.
+       <p>Diikuti oleh {@code onResume()} jika aktivitas maju
+       ke latar depan, atau {@code onStop()} jika menjadi tersembunyi.</p></td>
+    <td align="center">Tidak</td>
+    <td align="center">{@code onResume()} <br/>atau<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td rowspan="2" style="border-left: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td align="left"><code>{@link android.app.Activity#onResume onResume()}</code></td>
+   <td>Dipanggil tepat sebelum aktivitas mulai
+       berinteraksi dengan pengguna.  Pada titik ini, aktivitas berada di
+       puncak tumpukan aktivitas, dengan input pengguna menuju kepadanya.
+       <p>Selalu diikuti oleh {@code onPause()}.</p></td>
+   <td align="center">Tidak</td>
+   <td align="center">{@code onPause()}</td>
+</tr>
+
+<tr>
+   <td align="left"><code>{@link android.app.Activity#onPause onPause()}</code></td>
+   <td>Dipanggil bila sistem akan memulai pelanjutan
+       aktivitas lain.  Metode ini biasanya digunakan untuk menerapkan (commit) perubahan yang tidak tersimpan pada
+       data persisten, menghentikan animasi dan hal-hal lain yang mungkin menghabiskan
+       CPU, dan sebagainya.  Metode ini harus melakukan apa saja yang dilakukannya dengan sangat cepat, karena
+       aktivitas berikutnya tidak akan dilanjutkan hingga aktivitas ini kembali.
+       <p>Diikuti oleh {@code onResume()} jika aktivitas
+       kembali ke depan, atau oleh {@code onStop()} jika menjadi
+       tidak terlihat bagi pengguna.</td>
+   <td align="center"><strong style="color:#800000">Ya</strong></td>
+   <td align="center">{@code onResume()} <br/>atau<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStop onStop()}</code></td>
+   <td>Dipanggil bila aktivitas tidak lagi terlihat bagi pengguna.  Hal ini
+       bisa terjadi karena aktivitas sedang dimusnahkan, atau karena aktivitas lain
+       (aktivitas yang ada atau yang baru) telah dilanjutkan dan sedang menutupinya.
+       <p>Diikuti oleh {@code onRestart()} jika
+       aktivitas kembali untuk berinteraksi dengan pengguna, atau oleh
+       {@code onDestroy()} jika aktivitas ini akan menghilang.</p></td>
+   <td align="center"><strong style="color:#800000">Ya</strong></td>
+   <td align="center">{@code onRestart()} <br/>atau<br/> {@code onDestroy()}</td>
+</tr>
+
+<tr>
+   <td colspan="3" align="left"><code>{@link android.app.Activity#onDestroy
+onDestroy()}</code></td>
+   <td>Dipanggil sebelum aktivitas dimusnahkan.  Inilah panggilan terakhir
+       yang akan diterima aktivitas.  Metode ini bisa dipanggil karena
+       aktivitas selesai (seseorang memanggil <code>{@link android.app.Activity#finish
+       finish()}</code> padanya), atau karena sistem memusnahkan sementara
+       instance aktivitas ini untuk menghemat tempat.  Anda bisa membedakan
+       kedua skenario ini dengan metode <code>{@link
+       android.app.Activity#isFinishing isFinishing()}</code>.</td>
+   <td align="center"><strong style="color:#800000">Ya</strong></td>
+   <td align="center"><em>tidak ada</em></td>
+</tr>
+</tbody>
+</table>
+
+<p>Kolom berlabel "Bisa dimatikan setelahnya?" menunjukkan apakah sistem bisa
+atau tidak mematikan proses yang menjadi host aktivitas kapan saja <em>setelah metode kembali</em>, tanpa
+menjalankan baris lain pada kode aktivitas.  Tiga metode ini ditandai "ya": ({@link
+android.app.Activity#onPause
+onPause()}, {@link android.app.Activity#onStop onStop()}, dan {@link android.app.Activity#onDestroy
+onDestroy()}). Karena {@link android.app.Activity#onPause onPause()} adalah yang pertama
+dari tiga, begitu aktivitas dibuat, {@link android.app.Activity#onPause onPause()} adalah
+metode terakhir yang dipastikan akan dipanggil sebelum proses <em>bisa</em> dimatikan&mdash;jika
+sistem harus memulihkan memori dalam keadaan darurat, maka {@link
+android.app.Activity#onStop onStop()} dan {@link android.app.Activity#onDestroy onDestroy()} mungkin
+tidak dipanggil. Karena itu, Anda harus menggunakan {@link android.app.Activity#onPause onPause()} untuk menulis
+data persisten yang penting (misalnya hasil edit pengguna) ke penyimpanan. Akan tetapi, Anda harus selektif dalam hal
+informasi yang harus dipertahankan selama {@link android.app.Activity#onPause onPause()}, karena setiap
+prosedur pemblokiran dalam metode ini akan memblokir transisi ke aktivitas berikutnya dan memperlambat
+pengalaman pengguna.</p>
+
+<p> Metode-metode yang ditandai "Tidak" dalam kolom <b>Bisa dimatikan</b> melindungi proses yang menjadi host
+aktivitas dari dimatikan sejak saat metode dipanggil.  Jadi, aktivitas bisa dimatikan
+sejak {@link android.app.Activity#onPause onPause()} kembali hingga waktu
+{@link android.app.Activity#onResume onResume()} dipanggil. Aktivitas tidak akan lagi bisa dimatikan hingga
+{@link android.app.Activity#onPause onPause()} dipanggil lagi dan kembali. </p>
+
+<p class="note"><strong>Catatan:</strong> Aktivitas yang tidak "bisa dimatikan" secara teknis oleh
+definisi dalam tabel 1 masih bisa dimatikan oleh sistem&mdash;namun itu hany terjadi dalam
+situasi ekstrem bila tidak ada jalan lain. Kapan aktivitas bisa dimatikan
+akan dibahas selengkapnya dalam dokumen <a href="{@docRoot}guide/components/processes-and-threads.html">Proses dan
+Threading</a>.</p>
+
+
+<h3 id="SavingActivityState">Menyimpan status aktivitas</h3>
+
+<p>Pengantar untuk <a href="#Lifecycle">Mengelola Daur Hidup Aktivitas</a> secara ringkas menyebutkan
+bahwa
+bila aktivitas dihentikan sementara atau dihentikan, status aktivitas akan dipertahankan. Hal itu terjadi karena
+objek {@link android.app.Activity} masih ditahan dalam memori saat aktivitas dihentikan sementara atau
+dihentikan&mdash;semua informasi tentang anggota dan statusnya saat ini masih hidup. Jadi, setiap perubahan
+yang dibuat pengguna dalam aktivitas akan dipertahankan sehingga bila aktivitas kembali ke
+latar depan (bila "dilanjutkan"), perubahan itu masih ada.</p>
+
+<p>Akan tetapi, bila sistem memusnahkan aktivitas untuk memulihkan memori, objek {@link
+android.app.Activity} akan dimusnahkan, sehingga sistem tidak bisa sekadar melanjutkan aktivitas dengan status
+tidak berubah. Sebagai gantinya, sistem harus membuat ulang objek {@link android.app.Activity} jika pengguna
+menyusuri kembali ke aktivitas tersebut. Namun, pengguna tidak menyadari
+bahwa sistem memusnahkan aktivitas dan membuatnya kembali dan, karena itu, mungkin
+mengharapkan aktivitas untuk sama persis dengan sebelumnya. Dalam situasi ini, Anda bisa memastikan bahwa
+informasi penting tentang status aktivitas tetap terjaga dengan mengimplementasikan 
+metode callback tambahan yang memungkinkan Anda menyimpan informasi tentang status aktivitas: {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}.</p>
+
+<p>Sistem memanggil {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+sebelum membuat aktivitas rawan terhadap pemusnahan. Sistem meneruskan ke metode ini
+sebuah {@link android.os.Bundle} tempat Anda bisa menyimpan 
+informasi status tentang aktivitas sebagai pasangan nama-nilai, dengan menggunakan metode-metode misalnya {@link
+android.os.Bundle#putString putString()} dan {@link
+android.os.Bundle#putInt putInt()}. Kemudian, jika sistem mematikan proses aplikasi Anda
+dan pengguna menyusuri kembali ke aktivitas tersebut, sistem akan membuat kembali aktivitas dan meneruskan
+{@link android.os.Bundle} ke {@link android.app.Activity#onCreate onCreate()} maupun {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}. Dengan menggunakan salah satu 
+metode ini, Anda bisa mengekstrak status tersimpan dari {@link android.os.Bundle} dan memulihkan
+status aktivitas. Jika tidak ada informasi status untuk dipulihkan, maka {@link
+android.os.Bundle} yang diteruskan kepada adalah Anda null (yang akan terjadi bila aktivitas dibuat untuk
+pertama kali).</p>
+
+<img src="{@docRoot}images/fundamentals/restore_instance.png" alt="" />
+<p class="img-caption"><strong>Gambar 2.</strong> Ada dua cara yang bisa digunakan aktivitas untuk kembali ke fokus pengguna
+dengan status tetap: aktivitas dimusnahkan, kemudian dibuat kembali, dan aktivitas harus memulihkan
+status yang disimpan sebelumnya, atau aktivitas dihentikan, kemudian dilanjutkan dengan status aktivitas
+tetap.</p>
+
+<p class="note"><strong>Catatan:</strong> Tidak ada jaminan bahwa {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} akan dipanggil sebelum
+aktivitas Anda dimusnahkan, karena bisa saja terjadi aktivitas tidak perlu menyimpan status
+(misalnya saat pengguna meninggalkan aktivitas Anda dengan menggunakan tombol <em>Back</em>, karena pengguna menutup aktivitas
+secara eksplisit
+). Jika sistem memanggil {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()}, ini akan dilakukan sebelum {@link
+android.app.Activity#onStop onStop()} dan mungkin sebelum {@link android.app.Activity#onPause
+onPause()}.</p>
+
+<p>Akan tetapi, sekalipun Anda tidak melakukan apa-apa dan tidak mengimplementasikan {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}, beberapa status aktivitas
+akan dipulihkan oleh implementasi default {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} dalam kelas {@link android.app.Activity}. Khususnya, 
+implementasi default akan memanggil metode {@link
+android.view.View#onSaveInstanceState onSaveInstanceState()} yang sesuai untuk setiap {@link
+android.view.View} dalam layout, yang memungkinkan setiap tampilan untuk memberi informasi tentang dirinya
+yang harus disimpan. Hampir setiap widget dalam kerangka kerja Android mengimplementasikan metode ini
+sebagaimana mestinya, sehingga setiap perubahan yang terlihat pada UI akan disimpan dan dipulihkan secara otomatis bila
+aktivitas Anda dibuat kembali. Misalnya, widget {@link android.widget.EditText} menyimpan teks apa saja
+yang dimasukkan oleh pengguna dan widget {@link android.widget.CheckBox} menyimpan baik teks itu diperiksa maupun
+tidak. Satu-satunya pekerjaan yang Anda perlukan adalah memberikan ID unik (dengan atribut <a href="{@docRoot}guide/topics/resources/layout-resource.html#idvalue">{@code android:id}</a>
+) untuk masing-masing widget yang ingin disimpan statusnya. Jika widget tidak memiliki ID, maka sistem
+tidak bisa menyimpan statusnya.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<p>Anda juga bisa menghentikan secara eksplisit sebuah tampilan dalam layout Anda agar tidak menyimpan statusnya dengan mengatur atribut
+{@link android.R.attr#saveEnabled android:saveEnabled} ke {@code "false"} atau dengan memanggil
+metode {@link android.view.View#setSaveEnabled setSaveEnabled()}. Biasanya, Anda tidak boleh
+menonaktifkannya, namun Anda boleh melakukannya jika ingin memulihkan status UI aktivitas secara berbeda.</p>
+</div>
+</div>
+
+<p>Walaupun implementasi default {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} menyimpan informasi yang berguna tentang
+UI aktivitas, Anda mungkin masih perlu mengesampingkannya untuk menyimpan informasi tambahan.
+Misalnya, Anda mungkin perlu menyimpan nilai-nilai anggota yang berubah selama masa pakai aktivitas (yang
+mungkin berkorelasi dengan nilai-nilai yang dipulihkan dalam UI, namun anggota-anggota yang menyimpan nilai-nilai UI itu tidak
+dipulihkan, secara default).</p>
+
+<p>Karena implementasi default {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} membantu menyimpan status UI, jika
+Anda mengesampingkan metode ini untuk menyimpan informasi tambahan status, Anda harus selalu memanggil
+implementasi superkelas {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+sebelum melakukan pekerjaan apa pun. Demikian pula, Anda juga harus memanggil implementasi superkelas {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} jika Anda mengesampingkannya, sehingga
+implementasi default bisa memulihkan status tampilan.</p>
+
+<p class="note"><strong>Catatan:</strong> Karena {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()} tidak dijamin
+akan dipanggil, Anda harus menggunakannya hanya untuk mencatat status aktivitas sementara (transient) (status
+UI)&mdash;Anda tidak boleh menggunakannya untuk menyimpan data persisten.  Sebagai gantinya, Anda harus menggunakan {@link
+android.app.Activity#onPause onPause()} untuk menyimpan data persisten (misalnya data yang harus disimpan
+ke database) saat pengguna meninggalkan aktivitas.</p>
+
+<p>Salah satu cara yang baik untuk menguji kemampuan aplikasi dalam memulihkan statusnya adalah cukup dengan memutar
+perangkat sehingga orientasi layarnya berubah. Bila orientasi layar berubah, sistem
+akan memusnahkan dan membuat kembali aktivitas untuk menerapkan sumber daya alternatif yang mungkin tersedia
+untuk konfigurasi layar baru. Karena alasan ini saja, sangat penting bahwa aktivitas Anda
+memulihkan statusnya secara lengkap saat dibuat kembali, karena pengguna memutar layar secara rutin saat
+menggunakan aplikasi.</p>
+
+
+<h3 id="ConfigurationChanges">Menangani perubahan konfigurasi</h3>
+
+<p>Sebagian konfigurasi perangkat bisa berubah saat runtime (misalnya orientasi layar, ketersediaan keyboard
+, dan bahasa). Bila terjadi perubahan demikian, Android akan membuat kembali aktivitas yang berjalan
+(sistem akan memanggil {@link android.app.Activity#onDestroy}, kemudian segera memanggil {@link
+android.app.Activity#onCreate onCreate()}). Perilaku ini
+didesain untuk membantu aplikasi Anda menyesuaikan diri dengan konfigurasi baru dengan cara memuat ulang 
+aplikasi Anda secara otomatis dengan sumber daya alternatif yang telah Anda sediakan (misalnya layout yang berbeda untuk
+layar orientasi dan ukuran yang berbeda).</p>
+
+<p>Jika Anda mendesain aktivitas dengan benar untuk menangani restart karena perubahan orientasi layar dan
+memulihkan status aktivitas seperti yang dijelaskan di atas, aplikasi Anda akan lebih tahan terhadap
+kejadian tidak terduga lainnya dalam daur hidup aktivitas.</p>
+
+<p>Cara terbaik menangani restart tersebut adalah
+  menyimpan dan memulihkan status aktivitas Anda dengan menggunakan {@link
+  android.app.Activity#onSaveInstanceState onSaveInstanceState()} dan {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} (atau {@link
+android.app.Activity#onCreate onCreate()}), seperti yang dibahas di bagian sebelumnya.</p>
+
+<p>Untuk informasi selengkapnya tentang konfigurasi perubahan yang terjadi saat program berjalan dan cara menanganinya
+, bacalah panduan untuk <a href="{@docRoot}guide/topics/resources/runtime-changes.html">Menangani
+Perubahan Runtime</a>.</p>
+
+
+
+<h3 id="CoordinatingActivities">Mengoordinasikan aktivitas</h3>
+
+ <p>Bila suatu aktivitas memulai aktivitas lain, keduanya akan mengalami transisi daur hidup. Aktivitas pertama
+akan berhenti sementara dan berhenti sama sekali (walau tidak akan berhenti jika masih terlihat di latar belakang), saat
+aktivitas lain dibuat. Jika aktivitas-aktivitas ini berbagi data yang disimpan ke disk atau di tempat lain, Anda perlu
+memahami bahwa aktivitas pertama tidak dihentikan sepenuhnya sebelum aktivitas kedua dibuat.
+Sebagai gantinya, proses akan memulai aktivitas kedua secara tumpang tindih dengan proses penghentian 
+aktivitas pertama.</p>
+
+<p>Urutan callback daur hidup didefinisikan dengan baik, khususnya bila kedua aktivitas berada dalam
+proses yang sama dan salah satunya memulai yang lain. Berikut ini adalah urutan operasi yang terjadi bila Aktivitas
+A memulai Aktivitas B: </p>
+
+<ol>
+<li>Metode {@link android.app.Activity#onPause onPause()} Aktivitas A berjalan.</li>
+
+<li>Metode-metode {@link android.app.Activity#onCreate onCreate()}, {@link
+android.app.Activity#onStart onStart()}, dan {@link android.app.Activity#onResume onResume()}
+Aktivitas B berjalan secara berurutan. (Aktivitas B sekarang mendapatkan fokus pengguna.)</li>
+
+<li>Kemudian, jika Aktivitas A tidak lagi terlihat di layar, metode {@link
+android.app.Activity#onStop onStop()}-nya akan dijalankan.</li>
+</ol>
+
+ <p>Urutan callback daur hidup yang bisa diramalkan ini memungkinkan Anda mengelola transisi
+informasi dari satu aktivitas ke aktivitas lainnya. Misalnya, jika Anda harus menulis ke database saat
+aktivitas pertama berhenti agar aktivitas berikutnya bisa membacanya, maka Anda harus menulis ke
+database selama {@link android.app.Activity#onPause onPause()} sebagai ganti selama {@link
+android.app.Activity#onStop onStop()}.</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how Android maintains a history of activities and
+enables user multitasking, continue with the <b><a
+href="{@docRoot}guide/components/tasks-and-back-stack.html">Tasks and Back
+Stack</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/in/guide/components/bound-services.jd b/docs/html-intl/intl/in/guide/components/bound-services.jd
new file mode 100644
index 0000000..5d1f65e
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/bound-services.jd
@@ -0,0 +1,658 @@
+page.title=Layanan Terikat
+parent.title=Layanan
+parent.link=services.html
+@jd:body
+
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>Dalam dokumen ini</h2>
+<ol>
+  <li><a href="#Basics">Dasar-Dasar</a></li>
+  <li><a href="#Creating">Membuat Layanan Terikat</a>
+    <ol>
+      <li><a href="#Binder">Memperluas kelas Binder</a></li>
+      <li><a href="#Messenger">Menggunakan Messenger</a></li>
+    </ol>
+  </li>
+  <li><a href="#Binding">Mengikat ke Layanan</a></li>
+  <li><a href="#Lifecycle">Mengelola Daur Hidup Layanan Terikat</a></li>
+</ol>
+
+<h2>Kelas-kelas utama</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.content.ServiceConnection}</li>
+  <li>{@link android.os.IBinder}</li>
+</ol>
+
+<h2>Contoh</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+      RemoteService}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>Lihat juga</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/services.html">Layanan</a></li>
+</ol>
+</div>
+
+
+<p>Layanan terikat adalah server di antarmuka klien-server. Layanan terikat memungkinkan komponen-komponen
+(seperti aktivitas) untuk diikat ke layanan, mengirim permintaan, menerima respons, dan bahkan melakukan
+komunikasi antarproses (IPC). Layanan terikat biasanya hidup hanya saat melayani
+komponen aplikasi lain dan tidak berjalan di latar belakang terus-menerus.</p>
+
+<p>Dokumen ini menampilkan cara membuat layanan terikat, termasuk cara mengikat
+ke layanan dari komponen aplikasi lain. Akan tetapi, Anda juga harus mengacu dokumen <a href="{@docRoot}guide/components/services.html">Layanan</a> untuk
+informasi tambahan tentang layanan secara umum, seperti cara menyampaikan pemberitahuan dari layanan, mengatur
+layanan agar berjalan di latar depan, dan lain-lain.</p>
+
+
+<h2 id="Basics">Dasar-Dasar</h2>
+
+<p>Layanan terikat adalah implementasi kelas {@link android.app.Service} yang memungkinkan
+aplikasi lain diikat padanya dan berinteraksi dengannya. Untuk menyediakan pengikatan bagi sebuah
+layanan, Anda harus mengimplementasikan metode callback {@link android.app.Service#onBind onBind()}. Metode ini
+menghasilkan objek {@link android.os.IBinder} yang mendefinisikan antarmuka pemprograman yang
+bisa digunakan klien untuk berinteraksi dengan layanan.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Mengikat ke Layanan yang Sudah Dimulai</h3>
+
+<p>Seperti dibahas dalam dokumen <a href="{@docRoot}guide/components/services.html">Layanan</a>
+, Anda bisa membuat layanan yang dimulai sekaligus diikat. Yakni, layanan bisa
+dimulai dengan memanggil {@link android.content.Context#startService startService()}, yang memungkinkan
+layanan berjalan terus-menerus, dan juga membolehkan klien untuk mengikat ke layanan dengan memanggil {@link
+android.content.Context#bindService bindService()}.
+  <p>Jika Anda mengizinkan layanan dimulai dan diikat, lalu ketika layanan telah
+dimulai, sistem <em>tidak</em> menghapus layanan ketika semua klien melepas ikatan. Sebagai gantinya, Anda harus
+menghentikan layanan secara eksplisit, dengan memanggil {@link android.app.Service#stopSelf stopSelf()} atau {@link
+android.content.Context#stopService stopService()}.</p>
+
+<p>Walaupun Anda biasanya harus mengimplementasikan {@link android.app.Service#onBind onBind()}
+<em>atau</em> {@link android.app.Service#onStartCommand onStartCommand()}, kadang-kadang perlu
+mengimplementasikan keduanya. Misalnya, sebuah pemutar musik bisa merasakan manfaatnya karena layanannya boleh berjalan
+terus-menerus dan juga menyediakan pengikatan. Dengan cara ini, sebuah aktivitas bisa memulai layanan untuk memutar beberapa
+lagu dan musik terus dimainkan sekalipun pengguna meninggalkan aplikasi. Lalu, bila pengguna
+kembali ke aplikasi, aktivitas bisa mengikat ke layanan untuk mendapatkan kembali kontrol atas pemutaran.</p>
+
+<p>Pastikan membaca bagian tentang <a href="#Lifecycle">Mengelola Daur Hidup Layanan
+Terikat</a>, untuk informasi selengkapnya tentang daur hidup layanan saat menambahkan pengikatan ke
+layanan yang sudah dimulai.</p>
+</div>
+</div>
+
+<p>Klien bisa mengikat ke layanan dengan memanggil {@link android.content.Context#bindService
+bindService()}. Bila itu dilakukan, klien harus menyediakan implementasi {@link
+android.content.ServiceConnection}, yang memantau koneksi dengan layanan. Metode {@link
+android.content.Context#bindService bindService()} kembali dengan serta-merta tanpa sebuah nilai, namun
+bila sistem Android membuat koneksi antara klien
+dan layanan, sistem akan memanggil {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} pada {@link
+android.content.ServiceConnection} untuk mengirim {@link android.os.IBinder} yang
+bisa digunakan klien untuk berkomunikasi dengan layanan.</p>
+
+<p>Beberapa klien bisa terhubung ke layanan dengan serentak. Akan tetapi, sistem akan memanggil metode
+{@link android.app.Service#onBind onBind()} layanan Anda untuk mengambil {@link android.os.IBinder} hanya
+bila klien pertama mengikat. Sistem lalu memberikan {@link android.os.IBinder} yang sama ke setiap
+klien tambahan yang mengikat, tanpa memanggil {@link android.app.Service#onBind onBind()} lagi.</p>
+
+<p>Bila klien terakhir melepas ikatan dari layanan, sistem akan menghapus layanan (kecuali jika
+layanan juga dimulai oleh {@link android.content.Context#startService startService()}).</p>
+
+<p>Bila Anda mengimplementasikan layanan terikat, yang terpenting adalah mendefinisikan antarmuka
+yang dihasilkan metode callback {@link android.app.Service#onBind onBind()} Anda. Ada sedikit
+cara mendefinisikan antarmuka {@link android.os.IBinder} layanan Anda dan bagian berikut
+akan membahas masing-masing teknik.</p>
+
+
+
+<h2 id="Creating">Membuat Layanan Terikat</h2>
+
+<p>Saat membuat layanan yang menyediakan pengikatan, Anda harus menyediakan {@link android.os.IBinder}
+yang menyediakan antarmuka pemrograman yang bisa digunakan klien untuk berinteraksi dengan layanan. Ada
+tiga cara untuk mendefinisikan antarmuka:</p>
+
+<dl>
+  <dt><a href="#Binder">Memperluas kelas Binder</a></dt>
+  <dd>Jika layanan Anda bersifat privat untuk aplikasi Anda sendiri dan berjalan dalam proses yang sama dengan klien
+(biasanya), Anda harus membuat antarmuka dengan memperluas kelas {@link android.os.Binder}
+dan menghasilkan instance dari
+{@link android.app.Service#onBind onBind()}. Klien akan menerima {@link android.os.Binder} dan
+bisa menggunakannya untuk mengakses langsung metode publik yang tersedia dalam implementasi {@link android.os.Binder}
+atau bahkan {@link android.app.Service}.
+  <p>Inilah teknik yang lebih disukai bila layanan Anda sekadar pekerja latar belakang untuk aplikasi Anda
+sendiri. Satu-satunya alasan tidak membuat antarmuka dengan cara ini adalah karena
+layanan Anda akan digunakan oleh aplikasi lain atau pada proses-proses terpisah.</dd>
+
+  <dt><a href="#Messenger">Menggunakan Messenger</a></dt>
+  <dd>Jika antarmuka Anda perlu bekerja lintas proses, Anda bisa membuat
+antarmuka untuk layanan dengan {@link android.os.Messenger}. Dengan cara ini, layanan
+mendefinisikan {@link android.os.Handler} yang akan merespons aneka tipe objek {@link
+android.os.Message}. {@link android.os.Handler}
+ini adalah dasar bagi {@link android.os.Messenger} yang nanti bisa berbagi {@link android.os.IBinder}
+dengan klien, sehingga memungkinkan klien mengirim perintah ke layanan dengan menggunakan objek {@link
+android.os.Message}. Selain itu, klien bisa mendefinisikan sendiri {@link android.os.Messenger} 
+sehingga layanan bisa mengirim balik pesan.
+  <p>Inilah cara termudah melakukan komunikasi antarproses (IPC), karena {@link
+android.os.Messenger} akan mengantre semua permintaan ke dalam satu thread sehingga Anda tidak perlu mendesain
+layanan agar thread-safe.</p>
+  </dd>
+
+  <dt>Menggunakan AIDL</dt>
+  <dd>AIDL (Android Interface Definition Language) melakukan semua pekerjaan untuk mengurai objek menjadi
+primitif yang bisa dipahami dan diarahkan oleh sistem operasi ke berbagai proses untuk melakukan
+IPC. Teknik sebelumnya, dengan menggunakan {@link android.os.Messenger}, sebenarnya berdasarkan AIDL sebagai
+struktur yang mendasarinya. Seperti disebutkan di atas, {@link android.os.Messenger} membuat antrean
+semua permintaan klien dalam satu thread, sehingga layanan akan menerima permintaan satu per satu. Akan tetapi,
+jika ingin layanan Anda menangani beberapa permintaan sekaligus, Anda bisa menggunakan AIDL
+secara langsung. Dalam hal ini, layanan Anda harus mampu multi-thread dan dibuat thread-safe.
+  <p>Untuk menggunakan AIDL secara langsung, Anda harus
+membuat file {@code .aidl} yang mendefinisikan antarmuka pemrograman. Alat Android SDK menggunakan
+file ini untuk menghasilkan kelas abstrak yang mengimplementasikan antarmuka dan menangani IPC, yang nanti
+bisa Anda perluas dalam layanan.</p>
+  </dd>
+</dl>
+
+  <p class="note"><strong>Catatan:</strong> Umumnya aplikasi <strong>tidak boleh</strong> menggunakan AIDL untuk
+membuat layanan terikat, karena hal itu mungkin memerlukan kemampuan multi-thread dan
+bisa mengakibatkan implementasi yang lebih rumit. Dengan demikian, AIDL tidak cocok untuk sebagian besar aplikasi
+dan dokumen ini tidak membahas cara menggunakannya untuk layanan Anda. Jika Anda yakin perlu
+menggunakan AIDL secara langsung, lihat dokumen <a href="{@docRoot}guide/components/aidl.html">AIDL</a>
+.</p>
+
+
+
+
+<h3 id="Binder">Memperluas kelas Binder</h3>
+
+<p>Jika layanan Anda hanya digunakan oleh aplikasi lokal dan tidak perlu bekerja lintas proses,
+maka Anda bisa mengimplementasikan kelas {@link android.os.Binder} Anda sendiri yang memberi klien Anda
+akses langsung ke metode publik dalam layanan.</p>
+
+<p class="note"><strong>Catatan:</strong> Hal ini hanya berhasil jika klien dan layanan berada dalam
+aplikasi dan proses yang sama, suatu kondisi yang paling umum. Misalnya, cara ini sangat cocok untuk sebuah aplikasi musik
+yang perlu mengikat aktivitas ke layanannya sendiri, yakni memutar musik di
+latar belakang.</p>
+
+<p>Berikut cara menyiapkannya:</p>
+<ol>
+  <li>Dalam layanan Anda, buat sebuah instance {@link android.os.Binder} yang:
+    <ul>
+      <li>berisi metode publik yang bisa dipanggil klien</li>
+      <li>menghasilkan instance {@link android.app.Service} saat ini, yang memiliki metode publik yang
+bisa dipanggil klien</li>
+      <li>atau, menghasilkan instance kelas lain yang host-nya di layanan dengan metode publik yang
+bisa dipanggil klien</li>
+    </ul>
+  <li>Hasilkan instance {@link android.os.Binder} ini dari metode callback {@link
+android.app.Service#onBind onBind()}.</li>
+  <li>Di klien, terima {@link android.os.Binder} dari metode callback {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} dan
+buat panggilan ke layanan terikat dengan menggunakan metode yang disediakan.</li>
+</ol>
+
+<p class="note"><strong>Catatan:</strong> Alasan layanan dan klien harus berada dalam aplikasi yang sama
+adalah agar klien bisa mengkonversi objek yang dihasilkan dan memanggil API-nya dengan benar. Layanan
+dan klien juga harus berada dalam proses yang sama, karena teknik ini tidak melakukan
+pengarahan (marshalling) apa pun untuk lintas proses.</p>
+
+<p>Misalnya, berikut ini adalah layanan yang memberi klien akses ke metode-metode dalam layanan melalui
+implementasi {@link android.os.Binder}:</p>
+
+<pre>
+public class LocalService extends Service {
+    // Binder given to clients
+    private final IBinder mBinder = new LocalBinder();
+    // Random number generator
+    private final Random mGenerator = new Random();
+
+    /**
+     * Class used for the client Binder.  Because we know this service always
+     * runs in the same process as its clients, we don't need to deal with IPC.
+     */
+    public class LocalBinder extends Binder {
+        LocalService getService() {
+            // Return this instance of LocalService so clients can call public methods
+            return LocalService.this;
+        }
+    }
+
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        return mBinder;
+    }
+
+    /** method for clients */
+    public int getRandomNumber() {
+      return mGenerator.nextInt(100);
+    }
+}
+</pre>
+
+<p>{@code LocalBinder} menyediakan {@code getService()} metode bagi klien untuk mengambil
+instance {@code LocalService} saat ini. Cara ini memungkinkan klien memanggil metode publik dalam
+layanan. Misalnya, klien bisa memanggil {@code getRandomNumber()} dari layanan.</p>
+
+<p>Berikut ini adalah aktivitas yang mengikat ke {@code LocalService} dan memanggil {@code getRandomNumber()}
+bila tombol diklik:</p>
+
+<pre>
+public class BindingActivity extends Activity {
+    LocalService mService;
+    boolean mBound = false;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to LocalService
+        Intent intent = new Intent(this, LocalService.class);
+        bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+
+    /** Called when a button is clicked (the button in the layout file attaches to
+      * this method with the android:onClick attribute) */
+    public void onButtonClick(View v) {
+        if (mBound) {
+            // Call a method from the LocalService.
+            // However, if this call were something that might hang, then this request should
+            // occur in a separate thread to avoid slowing down the activity performance.
+            int num = mService.getRandomNumber();
+            Toast.makeText(this, "number: " + num, Toast.LENGTH_SHORT).show();
+        }
+    }
+
+    /** Defines callbacks for service binding, passed to bindService() */
+    private ServiceConnection mConnection = new ServiceConnection() {
+
+        &#64;Override
+        public void onServiceConnected(ComponentName className,
+                IBinder service) {
+            // We've bound to LocalService, cast the IBinder and get LocalService instance
+            LocalBinder binder = (LocalBinder) service;
+            mService = binder.getService();
+            mBound = true;
+        }
+
+        &#64;Override
+        public void onServiceDisconnected(ComponentName arg0) {
+            mBound = false;
+        }
+    };
+}
+</pre>
+
+<p>Contoh di atas menampilkan cara klien mengikat ke layanan dengan menggunakan implementasi
+{@link android.content.ServiceConnection} dan callback {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()}. Bagian
+berikut menyediakan informasi selengkapnya tentang proses pengikatan ke layanan.</p>
+
+<p class="note"><strong>Catatan:</strong> Contoh di atas tidak secara eksplisit melepas ikatan dari layanan,
+namun semua klien harus melepas ikatan pada waktu yang tepat (seperti saat aktivitas sedang jeda).</p>
+
+<p>Untuk contoh kode selengkapnya, lihat kelas <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+LocalService.java}</a> dan kelas <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.html">{@code
+LocalServiceActivities.java}</a> dalam <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a>.</p>
+
+
+
+
+
+<h3 id="Messenger">Menggunakan Messenger</h3>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h4>Dibandingkan dengan AIDL</h4>
+  <p>Bila Anda perlu melakukan IPC, menggunakan {@link android.os.Messenger} untuk antarmuka
+lebih sederhana daripada mengimplementasikannya dengan AIDL, karena {@link android.os.Messenger} mengantre
+semua panggilan ke layanan, sementara antarmuka AIDL murni mengirim permintaan serentak ke
+layanan, yang nanti harus menangani multi-threading.</p>
+  <p>Untuk sebagian besar aplikasi, layanan tidak perlu melakukan multi-threading, jadi dengan menggunakan {@link
+android.os.Messenger} memungkinkan layanan menangani panggilan satu per satu. Jika
+layanan harus multi-thread, Anda harus menggunakan <a href="{@docRoot}guide/components/aidl.html">AIDL</a> untuk mendefinisikan antarmuka.</p>
+</div>
+</div>
+
+<p>Jika layanan perlu berkomunikasi dengan proses jauh, Anda bisa menggunakan
+{@link android.os.Messenger} untuk menyediakan antarmuka bagi layanan Anda. Teknik ini memungkinkan
+Anda melakukan komunikasi antarproses (IPC) tanpa harus menggunakan AIDL.</p>
+
+<p>Berikut ini rangkuman cara menggunakan {@link android.os.Messenger}:</p>
+
+<ul>
+  <li>Layanan mengimplementasikan {@link android.os.Handler} yang menerima callback untuk tiap
+panggilan dari klien.</li>
+  <li>{@link android.os.Handler} digunakan untuk membuat objek {@link android.os.Messenger}
+(yang merupakan acuan ke {@link android.os.Handler}).</li>
+  <li>{@link android.os.Messenger} membuat {@link android.os.IBinder} yang
+dikembalikan layanan ke klien dari {@link android.app.Service#onBind onBind()}.</li>
+  <li>Klien menggunakan {@link android.os.IBinder} untuk membuat instance {@link android.os.Messenger}
+(yang mengacu {@link android.os.Handler} layanan), yang digunakan klien untuk mengirim
+objek {@link android.os.Message} ke layanan.</li>
+  <li>Layanan menerima setiap {@link android.os.Message} dalam {@link
+android.os.Handler}&mdash;secara spesifik, dalam metode {@link android.os.Handler#handleMessage
+handleMessage()}.</li>
+</ul>
+
+
+<p>Dengan cara ini, tidak ada "metode" untuk dipanggil klien pada layanan. Sebagai gantinya,
+klien mengirim "pesan" (objek-objek {@link android.os.Message}) yang diterima layanan dalam
+{@link android.os.Handler}-nya.</p>
+
+<p>Berikut ini contoh layanan sederhana yang menggunakan antarmuka {@link android.os.Messenger}:</p>
+
+<pre>
+public class MessengerService extends Service {
+    /** Command to the service to display a message */
+    static final int MSG_SAY_HELLO = 1;
+
+    /**
+     * Handler of incoming messages from clients.
+     */
+    class IncomingHandler extends Handler {
+        &#64;Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_SAY_HELLO:
+                    Toast.makeText(getApplicationContext(), "hello!", Toast.LENGTH_SHORT).show();
+                    break;
+                default:
+                    super.handleMessage(msg);
+            }
+        }
+    }
+
+    /**
+     * Target we publish for clients to send messages to IncomingHandler.
+     */
+    final Messenger mMessenger = new Messenger(new IncomingHandler());
+
+    /**
+     * When binding to the service, we return an interface to our messenger
+     * for sending messages to the service.
+     */
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        Toast.makeText(getApplicationContext(), "binding", Toast.LENGTH_SHORT).show();
+        return mMessenger.getBinder();
+    }
+}
+</pre>
+
+<p>Perhatikan bahwa metode {@link android.os.Handler#handleMessage handleMessage()} dalam
+{@link android.os.Handler} adalah tempat layanan menerima {@link android.os.Message}
+yang masuk dan memutuskan aksi yang harus dilakukan, berdasarkan anggota {@link android.os.Message#what}.</p>
+
+<p>Klien tinggal membuat {@link android.os.Messenger} berdasarkan {@link
+android.os.IBinder} yang dihasilkan layanan dan mengirim pesan menggunakan {@link
+android.os.Messenger#send send()}. Misalnya, berikut ini adalah aktivitas sederhana yang mengikat ke
+layanan dan mengirim pesan {@code MSG_SAY_HELLO} ke layanan:</p>
+
+<pre>
+public class ActivityMessenger extends Activity {
+    /** Messenger for communicating with the service. */
+    Messenger mService = null;
+
+    /** Flag indicating whether we have called bind on the service. */
+    boolean mBound;
+
+    /**
+     * Class for interacting with the main interface of the service.
+     */
+    private ServiceConnection mConnection = new ServiceConnection() {
+        public void onServiceConnected(ComponentName className, IBinder service) {
+            // This is called when the connection with the service has been
+            // established, giving us the object we can use to
+            // interact with the service.  We are communicating with the
+            // service using a Messenger, so here we get a client-side
+            // representation of that from the raw IBinder object.
+            mService = new Messenger(service);
+            mBound = true;
+        }
+
+        public void onServiceDisconnected(ComponentName className) {
+            // This is called when the connection with the service has been
+            // unexpectedly disconnected -- that is, its process crashed.
+            mService = null;
+            mBound = false;
+        }
+    };
+
+    public void sayHello(View v) {
+        if (!mBound) return;
+        // Create and send a message to the service, using a supported 'what' value
+        Message msg = Message.obtain(null, MessengerService.MSG_SAY_HELLO, 0, 0);
+        try {
+            mService.send(msg);
+        } catch (RemoteException e) {
+            e.printStackTrace();
+        }
+    }
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to the service
+        bindService(new Intent(this, MessengerService.class), mConnection,
+            Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+}
+</pre>
+
+<p>Perhatikan bahwa contoh ini tidak menampilkan cara layanan merespons klien. Jika ingin
+layanan merespons, Anda juga perlu membuat {@link android.os.Messenger} di klien. Lalu
+saat menerima callback {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()}, klien akan mengirim {@link android.os.Message} ke layanan yang berisi
+{@link android.os.Messenger} klien dalam parameter {@link android.os.Message#replyTo}
+metode {@link android.os.Messenger#send send()}.</p>
+
+<p>Anda bisa melihat contoh cara menyediakan pertukaran pesan dua arah dalam contoh <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerService.html">{@code
+MessengerService.java}</a> (layanan) dan <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.html">{@code
+MessengerServiceActivities.java}</a> (klien).</p>
+
+
+
+
+
+<h2 id="Binding">Mengikat ke Layanan</h2>
+
+<p>Komponen-komponen aplikasi (klien) bisa mengikat ke layanan dengan memanggil
+{@link android.content.Context#bindService bindService()}. Sistem Android
+lalu memanggil metode {@link android.app.Service#onBind
+onBind()} layanan, yang menghasilkan {@link android.os.IBinder} untuk berinteraksi dengan layanan.</p>
+
+<p>Pengikatan ini bersifat asinkron. {@link android.content.Context#bindService
+bindService()} segera kembali dan <em>tidak</em> mengembalikan {@link android.os.IBinder} ke
+klien. Untuk menerima {@link android.os.IBinder}, klien harus membuat instance {@link
+android.content.ServiceConnection} dan meneruskannya ke {@link android.content.Context#bindService
+bindService()}. {@link android.content.ServiceConnection} berisi metode callback yang
+dipanggil sistem untuk mengirim {@link android.os.IBinder}.</p>
+
+<p class="note"><strong>Catatan:</strong> Hanya aktivitas, layanan, dan penyedia konten yang bisa mengikat
+ke layanan yang&mdash;Anda <strong>tidak bisa</strong> ikat ke layanan dari penerima siaran.</p>
+
+<p>Jadi, untuk mengikat ke layanan dari klien, Anda harus: </p>
+<ol>
+  <li>Mengimplementasikan {@link android.content.ServiceConnection}.
+    <p>Implementasi Anda harus mengesampingkan dua metode callback:</p>
+    <dl>
+      <dt>{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}</dt>
+        <dd>Sistem memanggil ini untuk mengirim {@link android.os.IBinder} yang dihasilkan oleh
+metode {@link android.app.Service#onBind onBind()} layanan.</dd>
+      <dt>{@link android.content.ServiceConnection#onServiceDisconnected
+onServiceDisconnected()}</dt>
+        <dd>Sistem Android memanggil ini bila koneksi ke layanan putus
+tanpa terduga, seperti ketika layanan mengalami crash atau dimatikan. Ini <em>tidak</em> dipanggil ketika
+klien melepas ikatan.</dd>
+    </dl>
+  </li>
+  <li>Panggil {@link
+android.content.Context#bindService bindService()}, dengan meneruskan implementasi {@link
+android.content.ServiceConnection}. </li>
+  <li>Bila sistem memanggil metode callback {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()}, Anda bisa mulai membuat panggilan ke layanan, dengan menggunakan
+metode yang didefinisikan oleh antarmuka.</li>
+  <li>Untuk memutus koneksi dari layanan, panggil {@link
+android.content.Context#unbindService unbindService()}.
+    <p>Bila telah dimusnahkan (destroyed), klien Anda akan melepas ikatan dari layanan, namun Anda harus selalu melepas ikatan
+bila sudah selesai berinteraksi dengan layanan atau bila aktivitas Anda sedang jeda sehingga layanan bisa
+dimatikan saat tidak sedang digunakan. (Waktu yang tepat untuk mengikat dan melepas ikatan dibahas
+selengkapnya di bawah ini.)</p>
+  </li>
+</ol>
+
+<p>Misalnya, cuplikan berikut menghubungkan klien ke layanan yang dibuat di atas dengan
+<a href="#Binder">memperluas kelas Binder</a>, sehingga tinggal mengkonversi 
+{@link android.os.IBinder} yang dihasilkan ke kelas {@code LocalService} dan meminta instance {@code
+LocalService}:</p>
+
+<pre>
+LocalService mService;
+private ServiceConnection mConnection = new ServiceConnection() {
+    // Called when the connection with the service is established
+    public void onServiceConnected(ComponentName className, IBinder service) {
+        // Because we have bound to an explicit
+        // service that is running in our own process, we can
+        // cast its IBinder to a concrete class and directly access it.
+        LocalBinder binder = (LocalBinder) service;
+        mService = binder.getService();
+        mBound = true;
+    }
+
+    // Called when the connection with the service disconnects unexpectedly
+    public void onServiceDisconnected(ComponentName className) {
+        Log.e(TAG, "onServiceDisconnected");
+        mBound = false;
+    }
+};
+</pre>
+
+<p>Dengan {@link android.content.ServiceConnection} ini, klien bisa mengikat ke layanan dengan meneruskannya
+ke {@link android.content.Context#bindService bindService()}. Misalnya:</p>
+
+<pre>
+Intent intent = new Intent(this, LocalService.class);
+bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+</pre>
+
+<ul>
+  <li>Parameter pertama {@link android.content.Context#bindService bindService()} adalah sebuah 
+{@link android.content.Intent} yang secara eksplisit menyebutkan layanan yang akan diikat (walaupun intent
+boleh implisit).</li>
+<li>Parameter kedua adalah objek {@link android.content.ServiceConnection}.</li>
+<li>Parameter ketiga adalah tanda (flag) yang menunjukkan opsi pengikatan. Tanda ini biasanya harus {@link
+android.content.Context#BIND_AUTO_CREATE} agar dapat membuat layanan jika belum hidup.
+Nilai-nilai lain yang memungkinkan adalah {@link android.content.Context#BIND_DEBUG_UNBIND}
+dan {@link android.content.Context#BIND_NOT_FOREGROUND}, atau {@code 0} untuk tidak satu pun.</li>
+</ul>
+
+
+<h3>Catatan tambahan</h3>
+
+<p>Berikut ini beberapa catatan penting tentang mengikat ke layanan:</p>
+<ul>
+  <li>Anda harus selalu menjebak eksepsi {@link android.os.DeadObjectException}, yang dilontarkan
+bila koneksi terputus. Inilah satu-satunya eksepsi yang dilontarkan oleh metode jauh.</li>
+  <li>Objek adalah acuan yang dihitung lintas proses. </li>
+  <li>Anda biasanya harus memasangkan pengikatan dan pelepasan ikatan selama
+memasangkan momen membuat dan menghapus daur hidup klien. Misalnya:
+    <ul>
+      <li>Jika Anda hanya perlu berinteraksi dengan layanan saat aktivitas terlihat, Anda
+harus mengikat selama {@link android.app.Activity#onStart onStart()} dan melepas ikatan selama {@link
+android.app.Activity#onStop onStop()}.</li>
+      <li>Jika Anda ingin aktivitas menerima tanggapan bahkan saat dihentikan di
+latar belakang, Anda bisa mengikat selama {@link android.app.Activity#onCreate onCreate()} dan melepas ikatan
+selama {@link android.app.Activity#onDestroy onDestroy()}. Berhati-hatilah karena hal ini menyiratkan aktivitas
+Anda perlu menggunakan layanan selama dijalankan (sekalipun di latar belakang), jadi jika
+layanan berada dalam proses lain, Anda meningkatkan bobot proses dan semakin besar
+kemungkinan sistem akan mematikannya.</li>
+    </ul>
+    <p class="note"><strong>Catatan:</strong> Anda biasanya <strong>tidak</strong> boleh mengikat dan melepas ikatan
+selama {@link android.app.Activity#onResume onResume()} aktivitas Anda dan {@link
+android.app.Activity#onPause onPause()}, karena callback ini terjadi pada setiap transisi daur hidup
+dan Anda harus menjaga pemrosesan yang terjadi pada transisi ini tetap minim. Juga, jika
+banyak aktivitas dalam aplikasi Anda mengikat ke layanan yang sama dan ada transisi antara
+dua aktivitas, layanan bisa dimusnahkan dan dibuat lagi sambil aktivitas saat ini melepas ikatan
+(selama jeda) sebelum aktivitas berikutnya mengikat (selama lanjutkan). (Transisi aktivitas ini untuk cara
+aktivitas mengoordinasikan daur hidupnya dijelaskan dalam dokumen <a href="{@docRoot}guide/components/activities.html#CoordinatingActivities">Aktivitas</a>
+.)</p>
+</ul>
+
+<p>Untuk contoh kode selengkapnya, yang menampilkan cara mengikat ke layanan, lihat kelas <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+RemoteService.java}</a> dalam <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a>.</p>
+
+
+
+
+
+<h2 id="Lifecycle">Mengelola Daur Hidup Layanan Terikat</h2>
+
+<p>Bila layanan dilepas ikatannya dari semua klien, sistem Android akan menghapusnya (kecuali jika layanan juga
+dimulai dengan {@link android.app.Service#onStartCommand onStartCommand()}). Dengan demikian, Anda tidak harus
+mengelola daur hidup layanan jika layanan itu murni sebuah layanan
+terikat&mdash;yang dikelola sistem Android untuk Anda berdasarkan apakah layanan terikat ke klien atau tidak.</p>
+
+<p>Akan tetapi, Jika Anda memilih untuk mengimplementasikan metode callback {@link android.app.Service#onStartCommand
+onStartCommand()}, maka Anda harus menghentikan layanan secara eksplisit, karena layanan
+sekarang dianggap telah <em>dimulai</em>. Dalam hal ini, layanan akan berjalan hingga layanan
+menghentikan dirinya sendiri dengan {@link android.app.Service#stopSelf()} atau panggilan komponen lain {@link
+android.content.Context#stopService stopService()}, terlepas dari apakah layanan terikat ke
+klien atau tidak.</p>
+
+<p>Selain itu, jika layanan Anda telah dimulai dan menerima pengikatan, maka saat sistem memanggil
+metode {@link android.app.Service#onUnbind onUnbind()}, Anda bisa memilih untuk mengembalikan
+{@code true} jika ingin menerima panggilan ke {@link android.app.Service#onRebind
+onRebind()} bila nanti klien mengikat ke layanan (sebagai ganti menerima panggilan ke {@link
+android.app.Service#onBind onBind()}). {@link android.app.Service#onRebind
+onRebind()} akan menghasilkan void, namun klien tetap menerima {@link android.os.IBinder} dalam callback
+{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}.
+Di bawah ini adalah gambar 1 yang mengilustrasikan logika untuk jenis daur hidup ini.</p>
+
+
+<img src="{@docRoot}images/fundamentals/service_binding_tree_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Gambar 1.</strong> Daur hidup untuk layanan yang dimulai
+dan juga memungkinkan pengikatan.</p>
+
+
+<p>Untuk informasi selengkapnya tentang daur hidup layanan yang telah dimulai, lihat dokumen <a href="{@docRoot}guide/components/services.html#Lifecycle">Layanan</a>.</p>
+
+
+
+
diff --git a/docs/html-intl/intl/in/guide/components/fragments.jd b/docs/html-intl/intl/in/guide/components/fragments.jd
new file mode 100644
index 0000000..14d4ef3
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/fragments.jd
@@ -0,0 +1,812 @@
+page.title=Fragmen
+parent.title=Aktivitas
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Dalam dokumen ini</h2>
+  <ol>
+    <li><a href="#Design">Filosofi Desain</a></li>
+    <li><a href="#Creating">Membuat Fragmen</a>
+      <ol>
+        <li><a href="#UI">Menambahkan antarmuka pengguna</a></li>
+        <li><a href="#Adding">Menambahkan fragmen ke aktivitas</a></li>
+      </ol>
+    </li>
+    <li><a href="#Managing">Mengelola Fragmen</a></li>
+    <li><a href="#Transactions">Melakukan Transaksi Fragmen</a></li>
+    <li><a href="#CommunicatingWithActivity">Berkomunikasi dengan Aktivitas</a>
+      <ol>
+        <li><a href="#EventCallbacks">Membuat callback kejadian pada aktivitas</a></li>
+        <li><a href="#ActionBar">Menambahkan item ke Action-Bar</a></li>
+      </ol>
+    </li>
+    <li><a href="#Lifecycle">Menangani Daur Hidup Fragmen</a>
+      <ol>
+        <li><a href="#CoordinatingWithActivity">Mengoordinasi dengan daur hidup aktivitas</a></li>
+      </ol>
+    </li>
+    <li><a href="#Example">Contoh</a></li>
+  </ol>
+
+  <h2>Kelas-kelas utama</h2>
+  <ol>
+    <li>{@link android.app.Fragment}</li>
+    <li>{@link android.app.FragmentManager}</li>
+    <li>{@link android.app.FragmentTransaction}</li>
+  </ol>
+  
+  <h2>Lihat juga</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/fragments/index.html">Membangun UI Dinamis dengan Fragmen</a></li>
+    <li><a href="{@docRoot}guide/practices/tablets-and-handsets.html">Mendukung Tablet
+dan Handset</a></li>
+  </ol>
+</div>
+</div>
+
+<p>{@link android.app.Fragment} mewakili perilaku atau bagian dari antarmuka pengguna dalam
+{@link android.app.Activity}. Anda bisa mengombinasikan beberapa fragmen dalam satu aktivitas untuk membangun UI 
+multipanel dan menggunakan kembali sebuah fragmen dalam beberapa aktivitas. Anda bisa menganggap fragmen sebagai bagian 
+modular dari aktivitas, yang memiliki daur hidup sendiri, menerima kejadian input sendiri, dan 
+yang bisa Anda tambahkan atau hapus saat aktivitas berjalan (semacam "sub aktivitas" yang 
+bisa digunakan kembali dalam aktivitas berbeda).</p>
+
+<p>Fragmen harus selalu tertanam dalam aktivitas dan daur hidup fragmen secara langsung 
+dipengaruhi oleh daur hidup aktivitas host-nya. Misalnya, saat aktivitas dihentikan sementara,
+semua fragmen di dalamnya juga dihentikan sementara, dan bila aktivitas dimusnahkan, semua fragmen juga demikian. Akan tetapi, saat
+aktivitas berjalan (dalam <a href="{@docRoot}guide/components/activities.html#Lifecycle">status daur hidup</a> <em>dilanjutkan</em>, Anda bisa 
+memanipulasi setiap fragmen secara terpisah, seperti menambah atau menghapusnya. Saat melakukan transaksi 
+fragmen, Anda juga bisa menambahkannya ke back-stack yang dikelola oleh aktivitas
+&mdash;setiap entri back-stack merupakan record transaksi fragmen yang 
+terjadi. Dengan back-stack pengguna dapat membalikkan transaksi fragmen (mengarah mundur),
+dengan menekan tombol <em>Back</em>.</p>
+
+<p>Bila Anda menambahkan fragmen sebagai bagian dari layout aktivitas, fragmen itu berada dalam {@link
+android.view.ViewGroup} di hierarki tampilan aktivitas tersebut dan fragmen mendefinisikan 
+layout
+tampilannya sendiri. Anda bisa menyisipkan fragmen ke dalam layout aktivitas dengan mendeklarasikan fragmen dalam file layout aktivitas
+, sebagai elemen {@code &lt;fragment&gt;}, atau dari kode aplikasi dengan menambahkannya ke
+ {@link android.view.ViewGroup} yang ada. Akan tetapi, fragmen tidak harus menjadi bagian dari 
+layout aktivitas; Anda juga bisa menggunakan fragmen tanpa UI-nya sendiri sebagai pekerja tak terlihat untuk 
+aktivitas tersebut.</p>
+
+<p>Dokumen ini menjelaskan cara membangun aplikasi menggunakan fragmen, termasuk 
+cara fragmen mempertahankan statusnya bila ditambahkan ke back-stack aktivitas, berbagi
+kejadian dengan aktivitas, dan fragmen lain dalam aktivitas, berkontribusi pada action-bar
+aktivitas, dan lainnya.</p>
+
+
+<h2 id="Design">Filosofi Desain</h2>
+
+<p>Android memperkenalkan fragmen di Android 3.0 (API level 11), terutama untuk mendukung desain UI yang lebih 
+dinamis dan fleksibel pada layar besar, seperti tablet. Karena 
+layar tablet jauh lebih besar daripada layar handset, maka lebih banyak ruang untuk mengombinasikan dan 
+bertukar komponen UI. Fragmen memungkinkan desain seperti itu tanpa perlu mengelola perubahan 
+kompleks pada hierarki tampilan. Dengan membagi layout aktivitas menjadi beberapa fragmen, Anda bisa 
+mengubah penampilan aktivitas saat runtime dan mempertahankan perubahan itu di back-stack 
+yang dikelola oleh aktivitas.</p>
+
+<p>Misalnya, aplikasi berita bisa menggunakan satu fragmen untuk menampilkan daftar artikel di 
+sebelah kiri dan fragmen lainnya untuk menampilkan artikel di sebelah kanan&mdash;kedua fragmen ini muncul di satu 
+aktivitas, berdampingan, dan masing-masing fragmen memiliki serangkaian metode callback daur hidup dan menangani kejadian input 
+penggunanya sendiri. Sehingga, sebagai ganti menggunakan satu aktivitas untuk memilih
+artikel dan aktivitas lainnya untuk membaca artikel, pengguna bisa memilih artikel dan membaca semuanya dalam 
+aktivitas yang sama, sebagaimana diilustrasikan dalam layout tablet pada gambar 1.</p>
+
+<p>Anda harus mendesain masing-masing fragmen sebagai komponen aktivitas modular dan bisa digunakan kembali. Yakni, karena 
+setiap fragmen mendefinisikan layoutnya dan perilakunya dengan callback daur hidupnya sendiri, Anda bisa memasukkan 
+satu fragmen dalam banyak aktivitas, sehingga Anda harus mendesainnya untuk digunakan kembali dan mencegah
+memanipulasi satu fragmen dari fragmen lain secara langsung. Ini terutama penting karena dengan 
+fragmen modular Anda bisa mengubah kombinasi fragmen untuk ukuran layar berbeda. Saat mendesain aplikasi 
+untuk mendukung tablet maupun handset, Anda bisa menggunakan kembali fragmen dalam 
+konfigurasi layout berbeda untuk mengoptimalkan pengalaman pengguna berdasarkan ruang layar yang tersedia. Misalnya
+, pada handset, fragmen mungkin perlu dipisahkan untuk menyediakan UI panel tunggal 
+bila lebih dari satu yang tidak cocok dalam aktivitas yang sama.</p>
+
+<img src="{@docRoot}images/fundamentals/fragments.png" alt="" />
+<p class="img-caption"><strong>Gambar 1.</strong> Contoh cara dua modul UI yang didefinisikan oleh
+ fragmen bisa digabungkan ke dalam satu aktivitas untuk desain tablet, namun dipisahkan untuk 
+desain handset.</p>
+
+<p>Misalnya&mdash;untuk melanjutkan contoh aplikasi berita&mdash; aplikasi bisa menanamkan
+dua fragmen dalam <em>Aktivitas A</em>, saat berjalan pada perangkat berukuran tablet. Akan tetapi, pada
+layar berukuran handset, ruang untuk kedua fragmen tidak cukup, sehingga <em>Aktivitas A</em> hanya 
+menyertakan fragmen untuk daftar artikel, dan saat pengguna memilih artikel, 
+<em>Aktivitas B</em> akan dimulai, termasuk fragmen kedua untuk membaca artikel. Sehingga, aplikasi mendukung 
+tablet dan handset dengan menggunakan kembali fragmen dalam kombinasi berbeda, seperti diilustrasikan dalam
+gambar 1.</p>
+
+<p>Untuk informasi selengkapnya tentang mendesain aplikasi menggunakan kombinasi fragmen berbeda 
+untuk konfigurasi layar berbeda, lihat panduan untuk <a href="{@docRoot}guide/practices/tablets-and-handsets.html">Mendukung Tablet dan Handset</a>.</p>
+
+
+
+<h2 id="Creating">Membuat Fragmen</h2>
+
+<div class="figure" style="width:327px">
+<img src="{@docRoot}images/fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Gambar 2.</strong> Daur hidup fragmen (saat
+ aktivitasnya berjalan).</p>
+</div>
+
+<p>Untuk membuat fragmen, Anda harus membuat subkelas {@link android.app.Fragment} (atau 
+subkelasnya yang ada). Kelas {@link android.app.Fragment} memiliki kode yang mirip seperti 
+{@link android.app.Activity}. Kelas ini memiliki metode callback yang serupa dengan aktivitas, seperti
+ {@link android.app.Fragment#onCreate onCreate()}, {@link android.app.Fragment#onStart onStart()},
+{@link android.app.Fragment#onPause onPause()}, dan {@link android.app.Fragment#onStop onStop()}. Sebenarnya
+, jika Anda mengkonversi aplikasi Android saat ini untuk menggunakan fragmen, Anda mungkin cukup memindahkan
+kode dari metode callback aktivitas ke masing-masing metode callback 
+fragmen.</p>
+
+<p>Biasanya, Anda harus mengimplementasikan setidaknya metode daur hidup berikut ini:</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onCreate onCreate()}</dt>
+  <dd>Sistem akan memanggilnya saat membuat fragmen. Dalam implementasi, Anda harus 
+menginisialisasi komponen penting dari fragmen yang ingin dipertahankan saat fragmen 
+dihentikan sementara atau dihentikan, kemudian dilanjutkan.</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+  <dd>Sistem akan memanggilnya saat fragmen menggambar antarmuka penggunanya 
+untuk yang pertama kali. Untuk menggambar UI fragmen, Anda harus mengembalikan {@link android.view.View} dari metode 
+ini yang menjadi akar layout fragmen. Hasil yang dikembalikan bisa berupa null jika 
+fragmen tidak menyediakan UI.</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>Sistem akan memanggil metode ini sebagai indikasi pertama bahwa pengguna sedang meninggalkan
+fragmen Anda (walau itu tidak selalu berarti fragmen sedang dimusnahkan). Inilah biasanya tempat Anda
+harus mengikat setiap perubahan yang harus dipertahankan selepas sesi pengguna saat ini (karena
+pengguna mungkin tidak kembali).</dd>
+</dl>
+
+<p>Kebanyakan aplikasi harus mengimplementasikan setidaknya tiga metode ini untuk setiap fragmen, namun ada
+beberapa metode callback lain yang juga harus Anda gunakan untuk menangani berbagai tahap
+daur hidup fragmen. Semua metode callback daur hidup akan dibahas secara lebih detail, di bagian 
+tentang <a href="#Lifecycle">Menangani Daur Hidup Fragmen</a>.</p>
+
+
+<p>Ada juga beberapa subkelas yang mungkin ingin diperpanjang, sebagai ganti kelas basis {@link
+android.app.Fragment}:</p>
+
+<dl>
+  <dt>{@link android.app.DialogFragment}</dt>
+  <dd>Menampilkan dialog mengambang. Penggunaan kelas ini untuk membuat dialog merupakan alternatif yang baik dari
+penggunaan metode helper dialog di kelas {@link android.app.Activity}, karena Anda bisa 
+menyatukan dialog fragmen ke dalam back-stack fragmen yang dikelola oleh aktivitas, 
+sehingga pengguna bisa kembali ke fragmen yang ditinggalkan.</dd>
+
+  <dt>{@link android.app.ListFragment}</dt>
+  <dd>Menampilkan daftar item yang dikelola oleh adaptor (seperti {@link
+android.widget.SimpleCursorAdapter}), serupa dengan {@link android.app.ListActivity}. Menampilkan
+beberapa metode pengelolaan daftar tampilan seperti callback {@link
+android.app.ListFragment#onListItemClick(ListView,View,int,long) onListItemClick()} untuk 
+menangani kejadian klik.</dd>
+
+  <dt>{@link android.preference.PreferenceFragment}</dt>
+  <dd>Menampilkan hierarki objek {@link android.preference.Preference} sebagai daftar, serupa dengan
+{@link android.preference.PreferenceActivity}. Hal ini berguna saat membuat aktivitas
+"pengaturan" untuk aplikasi Anda.</dd>
+</dl>
+
+
+<h3 id="UI">Menambahkan antarmuka pengguna</h3>
+
+<p>Fragmen biasanya digunakan sebagai bagian dari antarmuka pengguna aktivitas dan menyumbangkan
+layoutnya sendiri ke aktivitas.</p>
+
+<p>Untuk menyediakan layout fragmen, Anda harus mengimplementasikan metode callback {@link
+android.app.Fragment#onCreateView onCreateView()}, yang dipanggil sistem Android
+bila tiba saatnya fragmen menggambar layoutnya. Implementasi Anda atas metode ini harus mengembalikan 
+{@link android.view.View} yang menjadi akar layout fragmen.</p>
+
+<p class="note"><strong>Catatan:</strong> Jika fragmen adalah subkelas {@link
+android.app.ListFragment}, implementasi default akan mengembalikan {@link android.widget.ListView} dari
+{@link android.app.Fragment#onCreateView onCreateView()}, sehingga Anda tidak perlu mengimplementasikannya.</p>
+
+<p>Untuk mengembalikan layout dari {@link
+android.app.Fragment#onCreateView onCreateView()}, Anda bisa memekarkannya dari <a href="{@docRoot}guide/topics/resources/layout-resource.html">sumber daya layout</a> yang didefinisikan di XML. Untuk
+membantu melakukannya, {@link android.app.Fragment#onCreateView onCreateView()} menyediakan objek 
+{@link android.view.LayoutInflater}.</p>
+
+<p>Misalnya, ini adalah subkelas {@link android.app.Fragment} yang memuat layout dari file
+{@code example_fragment.xml}:</p>
+
+<pre>
+public static class ExampleFragment extends Fragment {
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+                             Bundle savedInstanceState) {
+        // Inflate the layout for this fragment
+        return inflater.inflate(R.layout.example_fragment, container, false);
+    }
+}
+</pre>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Membuat layout</h3>
+  <p>Dalam contoh di atas, {@code R.layout.example_fragment} merupakan acuan ke sumber daya layout
+bernama {@code example_fragment.xml} yang tersimpan dalam sumber daya aplikasi. Untuk informasi tentang cara
+membuat layout di XML, lihat dokumentasi 
+<a href="{@docRoot}guide/topics/ui/index.html">Antarmuka Pengguna</a>.</p>
+</div>
+</div>
+
+<p>Parameter {@code container} yang diteruskan ke {@link android.app.Fragment#onCreateView
+onCreateView()} adalah induk {@link android.view.ViewGroup} (dari layout aktivitas) tempat
+layout fragmen
+akan disisipkan. Parameter {@code savedInstanceState} adalah {@link android.os.Bundle} yang 
+menyediakan data tentang instance fragmen sebelumnya, jika fragmen dilanjutkan
+(status pemulihan dibahas selengkapnya di bagian tentang <a href="#Lifecycle">Menangani
+Daur Hidup Fragmen</a>).</p>
+
+<p>Metode {@link android.view.LayoutInflater#inflate(int,ViewGroup,boolean) inflate()} membutuhkan 
+tiga argumen:</p>
+<ul>
+  <li>ID sumber daya layout yang ingin dimekarkan.</li>
+  <li>{@link android.view.ViewGroup} akan menjadi induk dari layout yang dimekarkan. {@code
+container} perlu diteruskan agar sistem menerapkan parameter layout ke tampilan akar layout
+yang dimekarkan, yang ditetapkan dalam tampilan induk yang akan dituju.</li>
+  <li>Boolean yang menunjukkan apakah layout akan dimekarkan harus ditempelkan pada {@link
+android.view.ViewGroup} (parameter kedua) selama pemekaran. (Dalam hal ini, ini
+salah karena sistem sudah memasukkan layout yang dimekarkan ke dalam {@code
+container}&mdash;meneruskan benar akan membuat tampilan grup yang berlebihan dalam layout akhir.)</li>
+</ul>
+
+<p>Anda kini telah melihat cara membuat fragmen yang menyediakan layout. Berikutnya, Anda perlu menambahkan
+fragmen ke aktivitas.</p>
+
+
+
+<h3 id="Adding">Menambahkan fragmen ke aktivitas</h3>
+
+<p>Biasanya, fragmen berkontribusi pada sebagian UI ke aktivitas host, yang ditanamkan sebagai 
+bagian dari hierarki tampilan keseluruhan aktivitas. Ada dua cara untuk menambahkan fragmen ke layout
+aktivitas:</p>
+
+<ul>
+  <li><b>Deklarasikan fragmen dalam file layout aktivitas.</b>
+<p>Dalam hal ini, Anda bisa
+menetapkan properti layout fragmen seakan-akan sebuah tampilan. Misalnya, berikut ini adalah file
+layout untuk aktivitas dengan dua fragmen:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
+    &lt;fragment android:name="com.example.news.ArticleListFragment"
+            android:id="@+id/list"
+            android:layout_weight="1"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+    &lt;fragment android:name="com.example.news.ArticleReaderFragment"
+            android:id="@+id/viewer"
+            android:layout_weight="2"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+&lt;/LinearLayout&gt;
+</pre>
+  <p>Atribut {@code android:name} dalam {@code &lt;fragment&gt;} menetapkan kelas {@link
+android.app.Fragment} untuk dibuat instance-nya dalam layout.</p>
+
+<p>Saat sistem membuat layout aktivitas, sistem membuat instance setiap fragmen sebagaimana yang ditetapkan dalam layout
+dan memanggil metode {@link android.app.Fragment#onCreateView onCreateView()} masing-masing,
+untuk mengambil setiap fragmen. Sistem akan menyisipkan {@link android.view.View} yang dikembalikan langsung oleh fragmen,
+ menggantikan elemen {@code &lt;fragment&gt;}.</p>
+
+<div class="note">
+  <p><strong>Catatan:</strong> Setiap fragmen memerlukan identifier
+unik yang bisa digunakan sistem untuk memulihkan fragmen jika aktivitas dimulai kembali (dan identifier yang bisa digunakan menangkap 
+fragmen untuk melakukan transaksi, seperti menghapusnya). Ada tiga cara untuk memberikan
+ID bagi fragmen:</p>
+  <ul>
+    <li>Memberikan atribut {@code android:id} bersama ID unik.</li>
+    <li>Memberikan atribut {@code android:tag} bersama string unik.</li>
+    <li>Jika Anda tidak memberikan dua hal tersebut, sistem akan menggunakan ID 
+tampilan kontainer.</li>
+  </ul>
+</div>
+  </li>
+
+  <li><b>Atau, secara programatis tambahkan fragmen ke {@link android.view.ViewGroup} yang ada.</b>
+<p>Kapan saja saat aktivitas berjalan, Anda bisa menambahkan fragmen ke layout aktivitas. Anda
+cukup menetapkan {@link
+android.view.ViewGroup} di tempat memasukkan fragmen.</p>
+  <p>Untuk membuat transaksi fragmen dalam aktivitas (seperti menambah, menghapus, atau mengganti
+fragmen), Anda harus menggunakan API dari {@link android.app.FragmentTransaction}. Anda bisa mengambil instance
+ {@link android.app.FragmentTransaction} dari {@link android.app.Activity} seperti ini:</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()}
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>Selanjutnya Anda bisa menambahkan fragmen menggunakan metode {@link
+android.app.FragmentTransaction#add(int,Fragment) add()}, dengan menetapkan fragmen yang akan ditambahkan dan
+tampilan tempat menyisipkannya. Misalnya:</p>
+
+<pre>
+ExampleFragment fragment = new ExampleFragment();
+fragmentTransaction.add(R.id.fragment_container, fragment);
+fragmentTransaction.commit();
+</pre>
+
+  <p>Argumen pertama yang diteruskan ke {@link android.app.FragmentTransaction#add(int,Fragment) add()}
+ adalah {@link android.view.ViewGroup} tempat fragmen harus dimasukkan, yang ditetapkan oleh
+ID sumber daya, dan parameter kedua merupakan fragmen yang akan ditambahkan.</p>
+  <p>Setelah membuat perubahan dengan
+{@link android.app.FragmentTransaction}, Anda harus
+ memanggil {@link android.app.FragmentTransaction#commit} untuk menerapkan perubahan.</p>
+  </li>
+</ul>
+
+
+<h4 id="AddingWithoutUI">Menambahkan fragmen tanpa UI</h4>
+
+<p>Contoh di atas menampilkan cara menambahkan fragmen ke aktivitas untuk menyediakan UI. Akan tetapi,
+Anda juga bisa menggunakan fragmen untuk menyediakan perilaku latar belakang bagi aktivitas tanpa menampilkan UI
+tambahan.</p>
+
+<p>Untuk menambahkan fragmen tanpa UI, tambahkan fragmen dari aktivitas menggunakan {@link
+android.app.FragmentTransaction#add(Fragment,String)} (dengan menyediakan string unik "tag" untuk fragmen
+, bukan ID tampilan). Ini akan menambahkan fragmen, namun, karena tidak dikaitkan dengan tampilan
+dalam layout aktivitas, ini tidak akan menerima panggilan ke {@link
+android.app.Fragment#onCreateView onCreateView()}. Jadi Anda tidak perlu mengimplementasikan metode itu.</p>
+
+<p>Menyediakan tag string untuk fragmen tidak hanya untuk fragmen non-UI&mdash;Anda juga bisa 
+menyediakan tag string untuk fragmen yang memiliki UI&mdash;namun jika fragmen tidak memiliki UI
+, maka tag string adalah satu-satunya cara untuk mengidentifikasinya. Jika Anda ingin mendapatkan fragmen dari 
+aktivitas nantinya, Anda perlu menggunakan {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}.</p>
+
+<p>Untuk contoh aktivitas yang menggunakan fragmen sebagai pekerja latar belakang, tanpa UI, lihat sampel {@code
+FragmentRetainInstance.java}, yang disertakan dalam sampel SDK (tersedia melalui 
+Android SDK Manager) dan terletak di sistem Anda sebagai 
+<code>&lt;sdk_root&gt;/APIDemos/app/src/main/java/com/example/android/apis/app/FragmentRetainInstance.java</code>.</p>
+
+
+
+<h2 id="Managing">Mengelola Fragmen</h2>
+
+<p>Untuk mengelola fragmen dalam aktivitas, Anda perlu menggunakan {@link android.app.FragmentManager}. Untuk
+mendapatkannya, panggil {@link android.app.Activity#getFragmentManager()} dari aktivitas Anda.</p>
+
+<p>Beberapa hal yang dapat Anda lakukan dengan {@link android.app.FragmentManager} antara lain:</p>
+
+<ul>
+  <li>Dapatkan fragmen yang ada di aktivitas dengan {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} (untuk fragmen yang menyediakan UI dalam
+layout aktivitas) atau {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()} (untuk fragmen yang menyediakan atau tidak menyediakan UI).</li> 
+  <li>Tarik fragmen dari back-stack, dengan {@link
+android.app.FragmentManager#popBackStack()} (mensimulasikan perintah <em>Back</em> oleh pengguna).</li>
+  <li>Daftarkan listener untuk perubahan pada back-stack, dengan {@link
+android.app.FragmentManager#addOnBackStackChangedListener addOnBackStackChangedListener()}.</li>
+</ul>
+
+<p>Untuk informasi selengkapnya tentang metode ini dan hal lainnya, lihat dokumentasi kelas {@link
+android.app.FragmentManager}.</p>
+
+<p>Seperti yang ditunjukkan di bagian sebelumnya, Anda juga bisa menggunakan {@link android.app.FragmentManager}
+untuk membuka {@link android.app.FragmentTransaction}, sehingga Anda bisa melakukan transaksi, seperti
+menambah dan menghapus fragmen.</p>
+
+
+<h2 id="Transactions">Melakukan Transaksi Fragmen</h2>
+
+<p>Fitur menarik terkait penggunaan fragmen di aktivitas adalah kemampuan menambah, menghapus, mengganti, 
+dan melakukan tindakan lain dengannya, sebagai respons atas interaksi pengguna. Setiap set perubahan
+yang Anda lakukan untuk aktivitas disebut transaksi dan Anda bisa melakukan transaksi menggunakan API di {@link
+android.app.FragmentTransaction}. Anda juga bisa menyimpan setiap transaksi ke back-stack yang dikelola
+aktivitas, sehingga pengguna bisa mengarah mundur melalui perubahan fragmen (mirip mengarah
+mundur melalui aktivitas).</p>
+
+<p>Anda bisa mengambil instance {@link android.app.FragmentTransaction} dari {@link
+android.app.FragmentManager} seperti ini:</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()};
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>Setiap transaksi merupakan serangkaian perubahan yang ingin dilakukan pada waktu yang sama. Anda bisa
+mengatur semua perubahan yang ingin dilakukan untuk transaksi mana saja menggunakan metode seperti {@link
+android.app.FragmentTransaction#add add()}, {@link android.app.FragmentTransaction#remove remove()},
+dan {@link android.app.FragmentTransaction#replace replace()}. Kemudian, untuk menerapkan transaksi
+pada aktivitas, Anda harus memanggil {@link android.app.FragmentTransaction#commit()}.</p>
+</dl>
+
+<p>Akan tetapi, sebelum memanggil {@link
+android.app.FragmentTransaction#commit()}, Anda mungkin perlu memanggil {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}, untuk menambahkan transaksi
+ke back-stack dari transaksi fragmen. Back-stack ini dikelola oleh aktivitas dan memungkinkan
+pengguna kembali ke status fragmen sebelumnya, dengan menekan tombol <em>Back</em>.</p>
+
+<p>Misalnya, berikut ini cara mengganti satu fragmen dengan yang fragmen yang lain, dan mempertahankan 
+status sebelumnya di back-stack:</p>
+
+<pre>
+// Create new fragment and transaction
+Fragment newFragment = new ExampleFragment();
+FragmentTransaction transaction = getFragmentManager().beginTransaction();
+
+// Replace whatever is in the fragment_container view with this fragment,
+// and add the transaction to the back stack
+transaction.replace(R.id.fragment_container, newFragment);
+transaction.addToBackStack(null);
+
+// Commit the transaction
+transaction.commit();
+</pre>
+
+<p>Dalam contoh ini, {@code newFragment} menggantikan fragmen apa saja (jika ada) yang saat ini berada dalam
+kontainer layout yang diidentifikasi oleh ID {@code R.id.fragment_container}. Dengan memanggil @link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}, transaksi yang diganti 
+disimpan ke back-stack sehingga pengguna bisa membalikkan transaksi dan mengembalikan fragmen 
+sebelumnya dengan menekan tombol <em>Back</em>.</p>
+
+<p>Jika Anda menambahkan beberapa perubahan pada transaksi (seperti {@link
+android.app.FragmentTransaction#add add()} atau {@link android.app.FragmentTransaction#remove
+remove()}) dan panggil {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}, maka semua perubahan akan diterapkan 
+sebelum Anda memanggil {@link android.app.FragmentTransaction#commit commit()} akan ditambahkan ke 
+back-stack sebagai satu transaksi dan tombol <em>Back</em> akan membalikannya semua.</p>
+
+<p>Urutan menambahkan perubahan pada {@link android.app.FragmentTransaction} tidak berpengaruh, 
+kecuali:</p>
+<ul>
+  <li>Anda harus memanggil {@link android.app.FragmentTransaction#commit()} paling akhir</li>
+  <li>Jika Anda menambahkan beberapa fragmen ke kontainer yang sama, maka
+urutan penambahannya akan menentukan urutan munculnya dalam hierarki tampilan</li>
+</ul>
+
+<p>Jika Anda tidak memanggil {@link android.app.FragmentTransaction#addToBackStack(String)
+addToBackStack()} saat melakukan transaksi yang menghapus fragmen, maka fragmen itu 
+akan dimusnahkan bila transaksi diikat dan pengguna tidak bisa mengarah kembali ke sana. Sedangkan, jika
+Anda memanggil {@link android.app.FragmentTransaction#addToBackStack(String) addToBackStack()} saat 
+menghapus fragmen, maka fragmen itu akan <em>dihentikan</em> dan akan dilanjutkan jika pengguna mengarah
+kembali.</p>
+
+<p class="note"><strong>Tip:</strong> Untuk setiap transaksi fragmen, Anda bisa menerapkan animasi
+transisi, dengan memanggil {@link android.app.FragmentTransaction#setTransition setTransition()} sebelum
+mengikatnya.</p>
+
+<p>Memanggil {@link android.app.FragmentTransaction#commit()} tidak akan langsung menjalankan
+transaksi. Namun sebuah jadwal akan dibuat untuk dijalankan pada thread UI aktivitas (thread "utama") 
+begitu thread bisa melakukannya. Akan tetapi, jika perlu Anda bisa memanggil {@link
+android.app.FragmentManager#executePendingTransactions()} dari thread UI untuk segera 
+mengeksekusi transaksi yang diserahkan oleh {@link android.app.FragmentTransaction#commit()}. Hal itu
+biasanya tidak perlu kecuali jika transaksi merupakan dependensi bagi pekerjaan dalam thread lain.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Anda bisa mengikat transaksi menggunakan {@link
+android.app.FragmentTransaction#commit commit()} hanya sebelum aktivitas <a href="{@docRoot}guide/components/activities.html#SavingActivityState">menyimpan
+statusnya</a> (saat pengguna meninggalkan aktivitas). Jika Anda mencoba mengikatnya setelah itu,
+eksepsi akan dilontarkan. Ini karena status setelah pengikatan bisa hilang jika aktivitas
+perlu dipulihkan. Untuk situasi yang memperbolehkan Anda meniadakan pengikatan (commit), gunakan {@link
+android.app.FragmentTransaction#commitAllowingStateLoss()}.</p>
+
+
+
+
+<h2 id="CommunicatingWithActivity">Berkomunikasi dengan Aktivitas</h2>
+
+<p>Meskipun {@link android.app.Fragment} diimplementasikan sebagai objek yang tidak bergantung pada
+{@link android.app.Activity} dan bisa digunakan dalam banyak aktivitas, instance tertentu
+dari fragmen secara langsung terkait dengan aktivitas yang dimuatnya.</p>
+
+<p>Khususnya, fragmen bisa mengakses instance {@link android.app.Activity} dengan {@link
+android.app.Fragment#getActivity()} dan dengan mudah melakukan tugas-tugas seperti mencari tampilan dalam
+ layout aktivitas:</p>
+
+<pre>
+View listView = {@link android.app.Fragment#getActivity()}.{@link android.app.Activity#findViewById findViewById}(R.id.list);
+</pre>
+
+<p>Demikian pula, aktivitas Anda bisa memanggil metode di fragmen dengan meminta acuan ke 
+{@link android.app.Fragment} dari {@link android.app.FragmentManager}, menggunakan {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} atau {@link
+android.app.FragmentManager#findFragmentByTag findFragmentByTag()}. Misalnya:</p>
+
+<pre>
+ExampleFragment fragment = (ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment);
+</pre>
+
+
+<h3 id="EventCallbacks">Membuat callback kejadian pada aktivitas</h3>
+
+<p>Dalam beberapa kasus, Anda mungkin perlu fragmen untuk berbagi kejadian dengan aktivitas. Cara yang baik untuk melakukannya
+adalah mendefinisikan antarmuka callback di dalam fragmen dan mengharuskan aktivitas host
+mengimplementasikannya. Saat aktivitas menerima callback melalui antarmuka, aktivitas akan bisa berbagi informasi itu
+dengan fragmen lain dalam layout jika perlu.</p>
+
+<p>Misalnya, jika sebuah aplikasi berita memiliki dua fragmen dalam aktivitas&mdash;satu untuk menampilkan daftar
+artikel (fragmen A) dan satu lagi untuk menampilkan artikel (fragmen B)&mdash;maka fragmen A harus
+memberi tahu aktivitas bila item daftar dipilih sehingga aktivitas bisa memberi tahu fragmen B untuk menampilkan artikel. Dalam
+hal ini, antarmuka {@code OnArticleSelectedListener} dideklarasikan di dalam fragmen A:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    ...
+    // Container Activity must implement this interface
+    public interface OnArticleSelectedListener {
+        public void onArticleSelected(Uri articleUri);
+    }
+    ...
+}
+</pre>
+
+<p>Selanjutnya aktivitas yang menjadi host fragmen akan mengimplementasikan antarmuka {@code OnArticleSelectedListener}
+ dan 
+mengesampingkan {@code onArticleSelected()} untuk memberi tahu fragmen B mengenai kejadian dari fragmen A. Untuk memastikan
+bahwa aktivitas host mengimplementasikan antarmuka ini, metode callback fragmen A {@link
+android.app.Fragment#onAttach onAttach()} (yang dipanggil sistem saat menambahkan
+fragmen ke aktivitas) membuat instance {@code OnArticleSelectedListener} dengan
+membuat {@link android.app.Activity} yang diteruskan ke {@link android.app.Fragment#onAttach
+onAttach()}:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        try {
+            mListener = (OnArticleSelectedListener) activity;
+        } catch (ClassCastException e) {
+            throw new ClassCastException(activity.toString() + " must implement OnArticleSelectedListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>Jika aktivitas belum mengimplementasikan antarmuka, maka fragmen akan melontarkan
+{@link java.lang.ClassCastException}.
+Jika berhasil, anggota {@code mListener} yang menyimpan acuan ke implementasi aktivitas 
+{@code OnArticleSelectedListener}, sehingga fragmen A bisa berbagi kejadian dengan aktivitas, dengan memanggil metode
+yang didefinisikan oleh antarmuka {@code OnArticleSelectedListener}. Misalnya, jika fragmen A adalah
+ekstensi dari {@link android.app.ListFragment}, maka setiap kali
+pengguna mengklik item daftar, sistem akan memanggil {@link android.app.ListFragment#onListItemClick
+onListItemClick()} di fragmen, yang selanjutnya memanggil {@code onArticleSelected()} untuk berbagi
+kejadian dengan aktivitas:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onListItemClick(ListView l, View v, int position, long id) {
+        // Append the clicked item's row ID with the content provider Uri
+        Uri noteUri = ContentUris.{@link android.content.ContentUris#withAppendedId withAppendedId}(ArticleColumns.CONTENT_URI, id);
+        // Send the event and Uri to the host activity
+        mListener.onArticleSelected(noteUri);
+    }
+    ...
+}
+</pre>
+
+<p>Parameter {@code id} yang diteruskan ke {@link
+android.app.ListFragment#onListItemClick onListItemClick()} merupakan ID baris dari item yang diklik,
+yang digunakan aktivitas (atau fragmen lain) untuk mengambil artikel dari {@link
+android.content.ContentProvider} aplikasi.</p>
+
+<p><!--To see a complete implementation of this kind of callback interface, see the <a
+href="{@docRoot}resources/samples/NotePad/index.html">NotePad sample</a>. -->Informasi selengkapnya tentang
+menggunakan penyedia konten tersedia dalam dokumen <a href="{@docRoot}guide/topics/providers/content-providers.html">Penyedia Konten</a>.</p>
+
+
+
+<h3 id="ActionBar">Menambahkan item ke Action-Bar</h3>
+
+<p>Fragmen Anda bisa menyumbangkan item menu ke <a href="{@docRoot}guide/topics/ui/menus.html#options-menu">Menu Opsi</a> aktivitas (dan, konsekuensinya, <a href="{@docRoot}guide/topics/ui/actionbar.html">Action-Bar</a>) dengan mengimplementasikan
+{@link android.app.Fragment#onCreateOptionsMenu(Menu,MenuInflater) onCreateOptionsMenu()}. Agar
+metode ini bisa menerima panggilan, Anda harus memanggil {@link
+android.app.Fragment#setHasOptionsMenu(boolean) setHasOptionsMenu()} selama {@link
+android.app.Fragment#onCreate(Bundle) onCreate()}, untuk menunjukkan bahwa fragmen
+ingin menambahkan item ke Menu Opsi (jika tidak, fragmen tidak akan menerima panggilan ke
+{@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()}).</p>
+
+<p>Setiap item yang selanjutnya Anda tambahkan ke Menu Opsi dari fragmen akan ditambahkan ke item menu
+yang ada. Fragmen juga menerima callback ke {@link
+android.app.Fragment#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} bila item menu
+dipilih.</p>
+
+<p>Anda juga bisa mendaftarkan tampilan dalam layout fragmen untuk menyediakan menu konteks dengan memanggil {@link
+android.app.Fragment#registerForContextMenu(View) registerForContextMenu()}. Bila pengguna
+membuka menu konteks, fragmen akan menerima panggilan ke {@link
+android.app.Fragment#onCreateContextMenu(ContextMenu,View,ContextMenu.ContextMenuInfo)
+onCreateContextMenu()}. Bila pengguna memilih item, fragmen akan menerima panggilan ke @link
+android.app.Fragment#onContextItemSelected(MenuItem) onContextItemSelected()}.</p>
+
+<p class="note"><strong>Catatan:</strong> Walaupun fragmen menerima callback pada item yang dipilih
+untuk setiap item menu yang ditambahkannya, aktivitaslah yang pertama kali menerima masing-masing callback saat pengguna
+memilih item menu. Jika implementasi aktivitas dari callback bila-item-dipilih,
+tidak menangani item yang dipilih, maka kejadian akan diteruskan ke callback fragmen. Ini berlaku
+untuk Menu Opsi dan menu konteks.</p>
+
+<p>Untuk informasi selengkapnya tentang menu, lihat panduan pengembang <a href="{@docRoot}guide/topics/ui/menus.html">Menu</a> dan <a href="{@docRoot}guide/topics/ui/actionbar.html">Action-Bar</a>.</p>
+
+
+
+
+<h2 id="Lifecycle">Menangani Daur Hidup Fragmen</h2>
+
+<div class="figure" style="width:350px">
+<img src="{@docRoot}images/activity_fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Gambar 3.</strong> Efek daur hidup aktivitas pada daur hidup
+fragmen.</p>
+</div>
+
+<p>Mengelola daur hidup fragmen mirip sekali dengan mengelola daur hidup aktivitas. Seperti
+aktivitas, fragmen bisa berada dalam tiga status:</p>
+
+<dl>
+  <dt><i>Dilanjutkan</i></dt>
+    <dd>Fragmen terlihat dalam aktivitas yang berjalan.</dd>
+
+  <dt><i>Dihentikan sementara</i></dt>
+    <dd>Aktivitas lain berada di latar depan dan memiliki fokus, namun aktivitas tempat fragmen berada
+masih terlihat (aktivitas latar depan sebagian terlihat atau tidak menutupi
+seluruh layar).</dd>
+
+  <dt><i>Dihentikan</i></dt>
+    <dd>Fragmen tidak terlihat. Aktivitas host telah dihentikan atau
+fragmen telah dihapus dari aktivitas namun ditambahkan ke back-stack. Fragmen yang dihentikan
+masih hidup (semua status dan informasi anggota masih disimpan oleh sistem). Akan tetapi, fragmen 
+tidak terlihat lagi oleh pengguna dan akan dimatikan jika aktivitas dimatikan.</dd>
+</dl>
+
+<p>Seperti halnya aktivitas, Anda bisa mempertahankan status fragmen menggunakan {@link
+android.os.Bundle}, jika proses aktivitas dimatikan dan Anda harus memulihkan status
+fragmen bila aktivitas dibuat kembali. Anda bisa menyimpan status selama callback {@link
+android.app.Fragment#onSaveInstanceState onSaveInstanceState()} fragmen dan memulihkannya selama
+{@link android.app.Fragment#onCreate onCreate()}, {@link
+android.app.Fragment#onCreateView onCreateView()}, atau {@link
+android.app.Fragment#onActivityCreated onActivityCreated()}. Untuk informasi selengkapnya tentang menyimpan
+status, lihat dokumen <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Aktivitas</a>
+.</p>
+
+<p>Perbedaan paling signifikan dalam daur hidup antara aktivitas dan fragmen ada 
+pada cara penyimpanannya dalam back-stack masing-masing. Aktivitas ditempatkan ke back-stack aktivitas
+yang dikelola oleh sistem saat dihentikan, secara default (sehingga pengguna bisa mengarah kembali
+ke aktivitas dengan tombol <em>Back</em>, seperti yang dibahas dalam <a href="{@docRoot}guide/components/tasks-and-back-stack.html">Tugas dan Back-Stack</a>). 
+Akan tetapi, fragmen yang ditempatkan ke back-stack dikelola oleh aktivitas host hanya saat
+Anda secara eksplisit meminta agar instance disimpan dengan memanggil {@link
+android.app.FragmentTransaction#addToBackStack(String) addToBackStack()} selama transaksi yang
+menghapus fragmen.</p>
+
+<p>Jika tidak, pengelolaan daur hidup fragmen mirip sekali dengan mengelola daur hidup
+aktivitas. Jadi, praktik yang sama untuk <a href="{@docRoot}guide/components/activities.html#Lifecycle">mengelola daur hidup
+aktivitas</a> juga berlaku untuk fragmen. Namun yang perlu juga Anda pahami adalah bagaimana hidup
+aktivitas memengaruhi hidup fragmen.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Jika Anda memerlukan objek {@link android.content.Context}
+ dalam {@link android.app.Fragment}, Anda bisa memanggil {@link android.app.Fragment#getActivity()}.
+Akan tetapi, berhati-hatilah memanggil {@link android.app.Fragment#getActivity()} hanya bila fragmen
+terkait dengan aktivitas. Bila fragmen belum terkait, atau terlepas selama akhir daur
+hidupnya, {@link android.app.Fragment#getActivity()} akan kembali nol.</p>
+
+
+<h3 id="CoordinatingWithActivity">Mengoordinasi dengan daur hidup aktivitas</h3>
+
+<p>Daur hidup aktivitas tempat fragmen berada akan memengaruhi langsung siklus hidup
+fragmen sedemikian rupa sehingga setiap callback daur hidup aktivitas menghasilkan callback yang sama untuk masing-masing
+fragmen. Misalnya, bila aktivitas menerima {@link android.app.Activity#onPause}, masing-masing
+fragmen dalam aktivitas akan menerima {@link android.app.Fragment#onPause}.</p>
+
+<p>Namun fragmen memiliki beberapa callback daur hidup ekstra, yang menangani interaksi
+unik dengan aktivitas untuk melakukan tindakan seperti membangun dan memusnahkan UI fragmen. Metode callback
+tambahan ini adalah:</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onAttach onAttach()}</dt>
+    <dd>Dipanggil bila fragmen telah dikaitkan dengan aktivitas ({@link
+android.app.Activity} diteruskan di sini).</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+    <dd>Dipanggil untuk membuat hierarki tampilan yang dikaitkan dengan fragmen.</dd>
+  <dt>{@link android.app.Fragment#onActivityCreated onActivityCreated()}</dt>
+    <dd>Dipanggil bila metode {@link android.app.Activity#onCreate
+onCreate()} aktivitas telah dikembalikan.</dd>
+  <dt>{@link android.app.Fragment#onDestroyView onDestroyView()}</dt>
+    <dd>Dipanggil bila hierarki tampilan yang terkait dengan fragmen dihapus.</dd>
+  <dt>{@link android.app.Fragment#onDetach onDetach()}</dt>
+    <dd>Dipanggil bila fragmen diputuskan dari aktivitas.</dd>
+</dl>
+
+<p>Aliran daur hidup fragmen, karena dipengaruhi oleh aktivitas host-nya, diilustrasikan oleh
+gambar 3. Dalam gambar ini, Anda bisa melihat bagaimana setiap status aktivitas menentukan
+metode callback mana yang mungkin diterima fragmen. Misalnya, saat aktivitas menerima call back {@link
+android.app.Activity#onCreate onCreate()}, fragmen dalam aktivitas akan menerima tidak lebih
+dari callback {@link android.app.Fragment#onActivityCreated onActivityCreated()}.</p>
+
+<p>Setelah status aktivitas diteruskan kembali, Anda bisa bebas menambah dan menghapus fragmen untuk
+aktivitas tersebut. Sehingga, hanya saat aktivitas berada dalam status dilanjutkan, daur hidup fragmen bisa
+berubah secara independen.</p>
+
+<p>Akan tetapi, saat aktivitas meninggalkan status dilanjutkan, fragmen akan kembali didorong
+melalui daur hidupnya oleh aktivitas.</p>
+
+
+
+
+<h2 id="Example">Contoh</h2>
+
+<p>Untuk merangkum semua yang telah dibahas dalam dokumen ini, berikut ini contoh aktivitas
+yang menggunakan dua fragmen untuk membuat layout dua panel. Aktivitas di bawah ini menyertakan satu fragmen untuk
+menampilkan daftar putar Shakespeare dan fragmen lainnya menampilkan rangkuman pemutaran bila dipilih dari
+daftar. Aktivitas ini juga menunjukkan cara menyediakan konfigurasi fragmen berbeda, 
+berdasarkan konfigurasi layar.</p>
+
+<p class="note"><strong>Catatan:</strong> Kode sumber lengkap untuk aktivitas ini tersedia di
+<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html">{@code
+FragmentLayout.java}</a>.</p>
+
+<p>Aktivitas utama akan menerapkan layout seperti biasa, selama {@link
+android.app.Activity#onCreate onCreate()}:</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java main}
+
+<p>Layout yang diterapkan adalah {@code fragment_layout.xml}:</p>
+
+{@sample development/samples/ApiDemos/res/layout-land/fragment_layout.xml layout}
+
+<p>Dengan layout ini, sistem akan membuat instance {@code TitlesFragment} (yang mencantumkan 
+judul) segera setelah aktivitas memuat layout, sementara {@link android.widget.FrameLayout}
+ (lokasi penempatan fragmen untuk menampilkan rangkuman pemutaran) menempati ruang di sisi kanan
+layar, namun pada awalnya masih kosong. Seperti yang akan Anda lihat di bawah ini, sampai pengguna memilih item
+dari daftar maka fragmen baru akan ditempatkan ke dalam {@link android.widget.FrameLayout}.</p>
+
+<p>Akan tetapi, tidak semua konfigurasi layar cukup lebar untuk menampilkan
+daftar putar dan rangkuman secara berdampingan. Sehingga, layout di atas hanya digunakan untuk konfigurasi
+layar mendatar, dengan menyimpannya di {@code res/layout-land/fragment_layout.xml}.</p>
+
+<p>Sehingga, bila layar berada dalam orientasi tegak, sistem akan menerapkan layout berikut, yang
+tersimpan di {@code res/layout/fragment_layout.xml}:</p>
+
+{@sample development/samples/ApiDemos/res/layout/fragment_layout.xml layout}
+
+<p>Layout ini hanya menyertakan {@code TitlesFragment}. Ini artinya saat perangkat berada dalam
+orientasi tegak, hanya judul daftar putar yang terlihat. Jadi, saat pengguna mengklik item
+daftar dalam konfigurasi ini, aplikasi akan memulai aktivitas baru untuk menampilkan rangkuman, 
+sebagai ganti pemuatan fragmen kedua.</p>
+
+<p>Berikutnya, Anda bisa melihat bagaimana hal ini dilakukan dalam kelas fragmen. Pertama adalah {@code
+TitlesFragment}, yang menampilkan judul daftar putar Shakespeare. Fragmen ini membuat ekstensi {@link
+android.app.ListFragment} dan mengandalkannya itu untuk menangani sebagian besar pekerjaan tampilan daftar.</p>
+
+<p>Saat Anda memeriksa kode ini, perhatikan bahwa ada dua kemungkinan perilaku saat pengguna mengklik 
+item daftar: bergantung pada layout mana yang aktif, bisa membuat dan menampilkan fragmen
+baru untuk menampilkan detail dalam aktivitas yang sama (menambahkan fragmen ke {@link
+android.widget.FrameLayout}), atau memulai aktivitas baru (tempat fragmen ditampilkan).</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java titles}
+
+<p>Fragmen kedua, {@code DetailsFragment} menampilkan rangkuman pemutaran untuk item yang dipilih dari
+daftar dari {@code TitlesFragment}:</p>
+ 
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java details}
+
+<p>Ingatlah dari kelas {@code TitlesFragment}, bahwa, jika pengguna mengklik item daftar dan
+layout saat ini <em>tidak</em> menyertakan tampilan {@code R.id.details} (yaitu tempat 
+{@code DetailsFragment} berada), maka aplikasi memulai aktivitas {@code DetailsActivity}
+untuk menampilkan konten item.</p>
+
+<p>Berikut ini adalah {@code DetailsActivity}, yang hanya menanamkan {@code DetailsFragment} untuk menampilkan rangkuman pemutaran
+yang dipilih saat layar dalam orientasi tegak:</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java
+details_activity}
+ 
+<p>Perhatikan bahwa aktivitas ini selesai sendiri jika konfigurasi mendatar, sehingga aktivitas utama
+bisa mengambil alih dan menampilkan {@code DetailsFragment} bersama {@code TitlesFragment}.
+Ini bisa terjadi jika pengguna memulai {@code DetailsActivity} saat dalam orientasi tegak, namun kemudian
+memutarnya menjadi mendatar (yang akan memulai lagi aktivitas saat ini).</p>
+
+
+<p>Untuk contoh lainnya mengenai penggunaan fragmen (dan file sumber lengkap untuk contoh ini), 
+lihat aplikasi contoh Demo API yang tersedia di <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Fragment">
+ApiDemos</a> (bisa diunduh dari <a href="{@docRoot}resources/samples/get.html">Komponen contoh SDK</a>).</p>
+
+
diff --git a/docs/html-intl/intl/in/guide/components/fundamentals.jd b/docs/html-intl/intl/in/guide/components/fundamentals.jd
new file mode 100644
index 0000000..bd9a500
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/fundamentals.jd
@@ -0,0 +1,480 @@
+page.title=Dasar-Dasar Aplikasi
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Dalam dokumen ini</h2>
+<ol>
+<li><a href="#Components">Komponen Aplikasi</a>
+  <ol>
+    <li><a href="#ActivatingComponents">Mengaktifkan komponen</a></li>
+  </ol>
+</li>
+<li><a href="#Manifest">File Manifes</a>
+  <ol>
+    <li><a href="#DeclaringComponents">Mendeklarasikan komponen</a></li>
+    <li><a href="#DeclaringRequirements">Mendeklarasikan kebutuhan aplikasi</a></li>
+  </ol>
+</li>
+<li><a href="#Resources">Sumber Daya Aplikasi</a></li>
+</ol>
+</div>
+</div>
+
+<p>Aplikasi Android ditulis dalam bahasa pemrograman Java. Android SDK Tools mengkompilasi 
+kode Anda&mdash;bersama data dan file sumber daya &mdash;ke dalam APK: <i>Paket Android</i>,
+yaitu file arsip berekstensi {@code .apk}. Satu file APK berisi semua konten 
+aplikasi Android dan merupakan file yang digunakan perangkat berbasis Android untuk menginstal aplikasi.</p>
+
+<p>Setelah diinstal di perangkat, setiap aplikasi Android tinggal di sandbox keamanannya sendiri: </p>
+
+<ul>
+ <li>Sistem operasi Android merupakan sistem Linux multi-pengguna yang di dalamnya setiap 
+aplikasi adalah pengguna berbeda.</li>
+
+<li>Secara default, sistem menetapkan ID pengguna Linux unik kepada setiap aplikasi (ID ini hanya
+ digunakan oleh sistem dan tidak diketahui aplikasi). Sistem menetapkan izin
+bagi semua file dalam aplikasi sehingga hanya ID pengguna yang diizinkan yang bisa mengaksesnya. </li>
+
+<li>Setiap proses memiliki mesin virtual (VM) sendiri, sehingga kode aplikasi yang berjalan secara terisolasi dari 
+aplikasi lainnya.</li>
+
+<li>Secara default, setiap aplikasi berjalan dalam proses Linux-nya sendiri. Android memulai proses 
+bila ada komponen aplikasi yang perlu dijalankan, kemudian mematikan proses bila tidak lagi diperlukan
+atau bila sistem harus memulihkan memori untuk digunakan aplikasi lain.</li>
+</ul>
+
+<p>Dengan cara ini, sistem Android mengimplementasikan <em>prinsip privilese minim</em>. Ini berarti, 
+secara default aplikasi hanya memiliki akses ke komponen yang diperlukannya untuk melakukan pekerjaannya dan
+tidak lebih dari itu. Hal ini menghasilkan lingkungan yang sangat aman sehingga aplikasi tidak bisa mengakses bagian 
+sistem bila tidak diberi izin.</p>
+
+<p>Akan tetapi, ada beberapa cara bagi aplikasi untuk berbagi data dengan aplikasi lain dan bagi aplikasi
+untuk mengakses layanan sistem:</p>
+
+<ul>
+  <li>Dua aplikasi bisa diatur untuk menggunakan ID pengguna Linux yang sama, 
+dalam hal ini keduanya bisa saling mengakses file masing-masing.  Untuk menghemat sumber daya sistem, aplikasi dengan ID
+pengguna yang sama juga bisa diatur agar berjalan dalam proses Linux yang sama dan menggunakan VM yang sama (
+aplikasi juga harus ditandatangani dengan sertifikat yang sama).</li>
+  <li>Aplikasi bisa meminta izin akses ke data perangkat seperti kontak 
+pengguna, pesan SMS, penyimpanan lepas-pasang (kartu SD), kamera, Bluetooth, dan lainnya. Semua 
+izin aplikasi harus diberikan oleh pengguna saat menginstal.</li>
+</ul>
+
+<p>Hal tersebut mencakup dasar-dasar tentang cara aplikasi Android berada di dalam sistem. Bagian dokumen
+selanjutnya memperkenalkan Anda pada:</p>
+<ul>
+  <li>Komponen kerangka kerja inti yang mendefinisikan aplikasi.</li>
+  <li>File manifes tempat Anda mendeklarasikan komponen dan fitur yang diperlukan perangkat
+untuk aplikasi.</li>
+  <li>Sumber daya yang terpisah dari kode aplikasi dan memungkinkan 
+aplikasi mengoptimalkan perilakunya untuk beragam konfigurasi perangkat.</li>
+</ul>
+
+
+
+<h2 id="Components">Komponen Aplikasi</h2>
+
+<p>Komponen aplikasi adalah blok pembangun penting dari aplikasi Android.
+Setiap komponen merupakan titik berbeda yang digunakan sistem untuk memasuki aplikasi. Tidak semua komponen 
+merupakan titik masuk sebenarnya bagi pengguna dan sebagian saling bergantung, namun masing-masing komponen tersedia 
+sebagai kesatuan sendiri dan memainkan peran tertentu&mdash;masing-masing merupakan
+blok pembangun unik yang mendefinisikan perilaku aplikasi secara keseluruhan.</p>
+
+<p>Ada empat macam tipe komponen aplikasi. Setiap tipe memiliki kegunaan tersendiri
+dan daur hidupnya sendiri yang mendefinisikan cara komponen dibuat dan dimusnahkan.</p>
+
+<p>Berikut ini empat tipe komponen aplikasi:</p>
+
+<dl>
+
+<dt><b>Aktivitas</b></dt>
+
+<dd>Sebuah <i>aktivitas</i> mewakili satu layar dengan antarmuka pengguna. Misalnya,
+aplikasi email mungkin memiliki satu aktivitas yang menampilkan daftar email 
+baru, aktivitas lain untuk menulis email, dan aktivitas satunya lagi untuk membaca email. Walaupun
+semua aktivitas bekerja sama untuk membentuk pengalaman pengguna yang kohesif dalam aplikasi email,
+masing-masing tidak saling bergantung. Karenanya, aplikasi berbeda bisa memulai
+salah satu aktivitas ini (jika aplikasi email mengizinkannya). Misalnya, aplikasi kamera bisa memulai
+aktivitas dalam aplikasi email yang membuat email baru agar pengguna bisa berbagi gambar.
+
+<p>Aktivitas diimplementasikan sebagai subkelas {@link android.app.Activity} dan Anda bisa mengetahui selengkapnya
+tentang hal ini dalam panduan pengembang <a href="{@docRoot}guide/components/activities.html">Aktivitas</a>
+.</p>
+</dd>
+
+
+<dt><b>Layanan</b></dt>
+
+<dd>Sebuah <i>layanan</i> adalah komponen yang berjalan di latar belakang untuk melakukan
+operasi yang berjalan lama atau untuk melakukan pekerjaan bagi proses jarak jauh. Layanan
+tidak menyediakan antarmuka pengguna. Misalnya, sebuah layanan bisa memutar musik di latar belakang sementara 
+pengguna berada dalam aplikasi lain, atau layanan bisa menarik data lewat jaringan tanpa
+memblokir interaksi pengguna dengan aktivitas. Komponen lain, seperti aktivitas, bisa memulai
+layanan dan membiarkannya berjalan atau mengikat layanan untuk berinteraksi dengannya.
+
+<p>Layanan diimplementasikan sebagai subkelas {@link android.app.Service} dan Anda bisa mengetahui selengkapnya
+tentang hal ini dalam panduan
+pengembang <a href="{@docRoot}guide/components/services.html">Layanan</a>.</p>
+</dd>
+
+
+<dt><b>Penyedia konten</b></dt>
+
+<dd>Sebuah <i>penyedia konten</i> mengelola seperangkat data-bersama aplikasi. Anda bisa menyimpan data
+dalam sistem file, database SQLite, di web, atau lokasi penyimpanan permanen lainnya
+yang bisa diakses aplikasi. Melalui penyedia konten, aplikasi lain bisa melakukan query atau bahkan 
+memodifikasi data (jika penyedia konten mengizinkannya). Misalnya, sistem Android menyediakan penyedia
+konten yang mengelola informasi kontak pengguna. Karenanya, setiap aplikasi
+dengan izin yang sesuai bisa melakukan query mengenai bagian dari penyedia konten (seperti {@link
+android.provider.ContactsContract.Data}) untuk membaca dan menulis informasi tentang orang tertentu.
+
+<p>Penyedia konten juga berguna untuk membaca dan menulis data privat ke aplikasi Anda
+dan tidak dibagikan. Misalnya, aplikasi contoh <a href="{@docRoot}resources/samples/NotePad/index.html">Note Pad</a> menggunakan
+penyedia konten untuk menyimpan catatan.</p>
+
+<p>Penyedia konten diimplementasikan sebagai subkelas {@link android.content.ContentProvider}
+dan harus mengimplementasikan seperangkat standar API yang memungkinkan aplikasi
+lain melakukan transaksi. Untuk informasi selengkapnya, lihat panduan pengembang 
+<a href="{@docRoot}guide/topics/providers/content-providers.html">Penyedia Konten</a>.</p>
+</dd>
+
+
+<dt><b>Penerima siaran</b></dt>
+
+<dd>Sebuah <i>penerima siaran</i> adalah komponen yang merespons pengumuman siaran dalam lingkup
+sistem.  Banyak siaran yang berasal dari sistem&mdash;misalnya, siaran yang mengumumkan bahwa
+layar telah dimatikan, baterai lemah, atau gambar telah direkam.
+Aplikasi juga bisa memulai siaran&mdash;misalnya untuk menginformasikan ke
+aplikasi lain bahwa sebagian data telah diunduh ke perangkat dan bisa digunakan aplikasi lain tersebut. Walaupun penerima
+siaran tidak menampilkan antarmuka pengguna, penerima bisa <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">membuat pemberitahuan baris status</a>
+untuk memberi tahu pengguna kapan kejadian siaran dilakukan. Meskipun penerima siaran umumnya cuma menjadi
+"gerbang" untuk komponen lain dan dimaksudkan untuk melakukan pekerjaan dalam jumlah sangat minim. Misalnya
+, penerima siaran bisa menjalankan layanan untuk melakukan beberapa pekerjaan berdasarkan kejadian.
+
+<p>Penerima siaran diimplementasikan sebagai subkelas {@link android.content.BroadcastReceiver}
+dan setiap siaran dikirim sebagai objek {@link android.content.Intent}. Untuk informasi selengkapnya,
+lihat kelas {@link android.content.BroadcastReceiver}.</p>
+</dd>
+
+</dl>
+
+
+
+<p>Aspek unik dari desain sistem Android adalah aplikasi mana pun bisa memulai 
+komponen aplikasi lain. Misalnya, jika Anda menginginkan pengguna mengambil
+foto dengan kamera perangkat, bisa saja aplikasi lain yang melakukannya dan aplikasi
+Anda bisa menggunakannya, sebagai ganti mengembangkan aktivitas sendiri untuk mengambil foto. Anda tidak
+harus menyatukan atau bahkan menautkan ke kode dari aplikasi kamera.
+Sebagai gantinya, Anda tinggal memulai aktivitas di aplikasi kamera yang akan mengambil
+foto. Bila selesai, foto akan dikembalikan ke aplikasi sehingga Anda bisa menggunakannya. Bagi pengguna,
+kamera seakan menjadi bagian dari aplikasi Anda.</p>
+
+<p>Saat sistem memulai komponen, sistem akan memulai proses untuk aplikasi itu (jika
+belum berjalan) dan membuat instance kelas yang diperlukan untuk komponen. Misalnya, jika aplikasi Anda
+memulai aktivitas dalam aplikasi kamera yang mengambil foto, aktivitas itu akan
+berjalan dalam proses yang dimiliki oleh aplikasi kamera, bukan dalam proses aplikasi Anda. 
+Karenanya, tidak seperti aplikasi di sebagian besar sistem lain, aplikasi Android tidak memiliki titik
+masuk tunggal (misalnya tidak ada fungsi {@code main()}).</p>
+
+<p>Karena sistem menjalankan setiap aplikasi dalam proses terpisah dengan izin file yang
+membatasi akses ke aplikasi lain, aplikasi Anda tidak bisa langsung mengaktifkan komponen dari aplikasi lain. Akan tetapi, sistem
+Android bisa melakukannya. Jadi, untuk mengaktifkan
+komponen dalam aplikasi lain, Anda harus mengirim pesan ke sistem yang menetapkan <em>intent</em> Anda untuk memulai
+komponen tertentu. Selanjutnya sistem akan mengaktifkan komponen untuk Anda.</p>
+
+
+<h3 id="ActivatingComponents">Mengaktifkan Komponen</h3>
+
+<p>Tiga dari empat tipe komponen&mdash;aktivitas, layanan, dan
+penerima siaran&mdash;diaktifkan oleh pesan asinkron yang disebut <em>intent</em>.
+Intent saling mengikat setiap komponen saat runtime (Anda bisa menganggapnya
+sebagai pembawa pesan yang meminta tindakan dari komponen lain), baik komponen itu milik aplikasi Anda
+atau milik aplikasi lain.</p>
+
+<p>Intent dibuat dengan objek {@link android.content.Intent}, yang mendefinisikan pesan untuk
+mengaktifkan komponen tertentu atau komponen <em>tipe</em> komponen tertentu&mdash;masing-masing intent
+bisa eksplisit atau implisit.</p>
+
+<p>Untuk aktivitas dan layanan, intent mendefinisikan tindakan yang akan dilakukan (misalnya, untuk "melihat" atau 
+"mengirim" sesuatu) dan mungkin menetapkan URI data untuk ditindaklanjuti (salah satu hal yang mungkin perlu diketahui 
+oleh komponen yang akan dimulai). Misalnya, intent mungkin menyampaikan permintaan suatu 
+aktivitas untuk menampilkan gambar atau membuka halaman web. Dalam beberapa kasus, Anda bisa memulai
+aktivitas untuk menerima hasil, dalam hal ini, aktivitas juga akan mengembalikan hasil 
+dalam {@link android.content.Intent} (misalnya Anda bisa mengeluarkan intent agar
+pengguna bisa memilih kontak pribadi dan memintanya dikembalikan kepada Anda&mdash;intent yang dikembalikan menyertakan URI yang 
+menunjuk ke kontak yang dipilih).</p>
+
+<p>Untuk penerima siaran, intent hanya mendefinisikan
+pengumuman yang sedang disiarkan (misalnya, siaran untuk menunjukkan baterai perangkat hampir habis
+hanya menyertakan string tindakan yang menunjukkan "baterai hampir habis").</p>
+
+<p>Tipe komponen lainnya dan penyedia konten, tidak diaktifkan oleh intent. Melainkan
+diaktifkan saat ditargetkan oleh permintaan dari {@link android.content.ContentResolver}. Resolver
+konten menangani semua transaksi langsung dengan penyedia konten sehingga komponen yang melakukan 
+transaksi dengan penyedia tidak perlu dan sebagai gantinya memanggil metode pada objek {@link
+android.content.ContentResolver}. Ini membuat lapisan abstraksi antara penyedia
+konten dan komponen yang meminta informasi (demi keamanan).</p>
+
+<p>Ada beberapa metode terpisah untuk mengaktifkan masing-masing tipe komponen:</p>
+<ul>
+  <li>Anda bisa memulai aktivitas (atau memberinya pekerjaan baru) dengan 
+meneruskan {@link android.content.Intent} ke {@link android.content.Context#startActivity
+startActivity()} atau {@link android.app.Activity#startActivityForResult startActivityForResult()}
+(bila Anda ingin aktivitas mengembalikan hasil).</li>
+  <li>Anda bisa memulai layanan (atau memberikan instruksi baru ke layanan yang sedang berlangsung) dengan 
+meneruskan {@link android.content.Intent} ke {@link android.content.Context#startService
+startService()}. Atau Anda bisa mengikat ke layanan dengan meneruskan {@link android.content.Intent} ke
+{@link android.content.Context#bindService bindService()}.</li>
+  <li>Anda bisa memulai siaran dengan meneruskan {@link android.content.Intent} ke metode seperti
+{@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}, {@link
+android.content.Context#sendOrderedBroadcast(Intent, String) sendOrderedBroadcast()}, atau {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}.</li>
+  <li>Anda bisa melakukan query ke penyedia konten dengan memanggil {@link
+android.content.ContentProvider#query query()} pada {@link android.content.ContentResolver}.</li>
+</ul>
+
+<p>Untuk informasi selengkapnya tentang menggunakan intent, lihat dokumen <a href="{@docRoot}guide/components/intents-filters.html">Intent dan Filter
+ Intent</a>. Informasi selengkapnya tentang mengaktifkan komponen 
+tertentu juga tersedia dalam dokumen berikut: <a href="{@docRoot}guide/components/activities.html">Aktivitas</a>, <a href="{@docRoot}guide/components/services.html">Layanan</a>, {@link
+android.content.BroadcastReceiver} dan <a href="{@docRoot}guide/topics/providers/content-providers.html">Penyedia Konten</a>.</p>
+
+
+<h2 id="Manifest">File Manifes</h2>
+
+<p>Sebelum sistem Android bisa memulai komponen aplikasi, sistem harus mengetahui
+keberadaan komponen dengan membaca file {@code AndroidManifest.xml} aplikasi (file 
+"manifes"). Aplikasi Anda harus mendeklarasikan semua komponennya dalam file ini, yang harus menjadi akar
+dari direktori proyek aplikasi.</p>
+
+<p>Manifes melakukan banyak hal selain mendeklarasikan komponen aplikasi,
+seperti:</p>
+<ul>
+  <li>Mengidentifikasi izin pengguna yang diperlukan aplikasi, seperti akses Internet atau
+akses-baca ke kontak pengguna.</li>
+  <li>Mendeklarasikan <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API Level</a>
+ minimum yang diperlukan aplikasi, berdasarkan API yang digunakan aplikasi.</li>
+  <li>Mendeklarasikan fitur perangkat keras dan perangkat lunak yang diperlukan aplikasi, seperti kamera,
+layanan Bluetooth, atau layar multisentuh.</li>
+  <li>Pustaka API aplikasi perlu ditautkan (selain 
+API kerangka kerja Android), seperti pustaka 
+<a href="http://code.google.com/android/add-ons/google-apis/maps-overview.html">Google Maps.</a></li>
+  <li>Dan lainnya</li>
+</ul>
+
+
+<h3 id="DeclaringComponents">Mendeklarasikan komponen</h3>
+
+<p>Tugas utama manifes adalah menginformasikan komponen aplikasi pada sistem. Misalnya,
+file manifes bisa mendeklarasikan aktivitas sebagai berikut: </p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest ... &gt;
+    &lt;application android:icon="@drawable/app_icon.png" ... &gt;
+        &lt;activity android:name="com.example.project.ExampleActivity"
+                  android:label="@string/example_label" ... &gt;
+        &lt;/activity&gt;
+        ...
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>Dalam elemen <code><a
+href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+, atribut {@code android:icon} menunjuk ke sumber daya untuk ikon yang mengidentifikasi
+aplikasi.</p>
+
+<p>Dalam elemen <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>, 
+atribut {@code android:name} menetapkan nama kelas yang sepenuhnya memenuhi syarat subkelas {@link
+android.app.Activity} dan atribut {@code android:label} menetapkan string yang akan
+digunakan sebagai label yang terlihat oleh pengguna untuk aktivitas tersebut.</p>
+
+<p>Anda harus mendeklarasikan semua komponen aplikasi dengan cara ini:</p>
+<ul>
+  <li>Elemen <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> untuk
+aktivitas</li>
+  <li>Elemen <code><a
+href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> untuk
+layanan</li>
+  <li>Elemen <code><a
+href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code> untuk
+penerima siaran</li>
+  <li>Elemen <code><a
+href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code> untuk
+penyedia konten</li>
+</ul>
+
+<p>Aktivitas, layanan, dan penyedia konten yang Anda sertakan dalam kode sumber, namun tidak
+dideklarasikan dalam manifes, tidak akan terlihat pada sistem dan, akibatnya, tidak pernah bisa berjalan.  Akan tetapi,
+penerima siaran 
+bisa dideklarasikan dalam manifes atau dibuat secara dinamis dalam kode (sebagai objek 
+{@link android.content.BroadcastReceiver}) dan didaftarkan pada sistem dengan memanggil
+{@link android.content.Context#registerReceiver registerReceiver()}.</p>
+
+<p>Untuk informasi selengkapnya tentang cara menstrukturkan file manifes untuk aplikasi Anda, 
+lihat dokumentasi <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">File AndroidManifest.xml</a>. </p>
+
+
+
+<h3 id="DeclaringComponentCapabilities">Mendeklarasikan kemampuan komponen</h3>
+
+<p>Seperti telah dibahas di atas, dalam <a href="#ActivatingComponents">Mengaktifkan Komponen</a>, Anda bisa menggunakan
+{@link android.content.Intent} untuk memulai aktivitas, layanan, dan penerima siaran. Anda bisa
+melakukannya dengan menamai komponen sasaran secara eksplisit (menggunakan nama kelas komponen) dalam intent. Akan tetapi,
+kemampuan intent sebenarnya ada pada konsep <em>intent implisit</em>. Intent implisit
+cuma menjelaskan tipe tindakan yang akan dilakukan (dan, secara opsional, data tempat Anda ingin
+melakukan tindakan) dan memungkinkan sistem untuk menemukan komponen pada perangkat yang bisa melakukan
+tindakan tersebut dan memulainya. Jika ada banyak komponen yang bisa melakukan tindakan yang dijelaskan oleh intent,
+maka pengguna bisa memilih komponen yang akan digunakan.</p>
+
+<p>Cara sistem mengidentifikasi komponen yang bisa merespons intent adalah dengan membandingkan
+intent yang diterima dengan <i>filter intent</i> yang disediakan dalam file manifes aplikasi lainnya pada
+perangkat.</p>
+
+<p>Bila mendeklarasikan aktivitas dalam manifes aplikasi, secara opsional Anda bisa menyertakan
+filter intent yang mendeklarasikan kemampuan aktivitas agar bisa merespons intent dari
+aplikasi lain. Anda bisa mendeklarasikan filter intent untuk komponen dengan
+menambahkan elemen <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> sebagai anak elemen deklarasi komponen.</p>
+
+<p>Misalnya, jika Anda telah membangun aplikasi email dengan aktivitas untuk menulis email baru, Anda bisa
+mendeklarasikan filter intent untuk merespons intent "kirim" (untuk mengirim email baru) seperti ini:</p>
+<pre>
+&lt;manifest ... >
+    ...
+    &lt;application ... &gt;
+        &lt;activity android:name="com.example.project.ComposeEmailActivity">
+            &lt;intent-filter>
+                &lt;action android:name="android.intent.action.SEND" />
+                &lt;data android:type="*/*" />
+                &lt;category android:name="android.intent.category.DEFAULT" />
+            &lt;/intent-filter>
+        &lt;/activity>
+    &lt;/application&gt;
+&lt;/manifest>
+</pre>
+
+<p>Kemudian, jika aplikasi lain membuat intent dengan tindakan {@link
+android.content.Intent#ACTION_SEND} dan meneruskannya ke {@link android.app.Activity#startActivity
+startActivity()}, sistem bisa memulai aktivitas Anda agar pengguna bisa menulis draf dan mengirim
+email.</p>
+
+<p>Untuk informasi selengkapnya tentang membuat filter intent, lihat dokumen <a href="{@docRoot}guide/components/intents-filters.html">Intent dan Filter Intent</a>.
+</p>
+
+
+
+<h3 id="DeclaringRequirements">Mendeklarasikan kebutuhan aplikasi</h3>
+
+<p>Ada berbagai macam perangkat yang didukung oleh Android dan tidak
+semuanya menyediakan fitur dan kemampuan yang sama. Agar aplikasi Anda tidak dihapus pada perangkat yang tidak memiliki
+fitur yang diperlukan aplikasi, Anda harus jelas mendefinisikan profil mengenai
+tipe perangkat yang didukung aplikasi dengan mendeklarasikan kebutuhan perangkat dan perangkat lunak dalam file
+manifes. Kebanyakan deklarasi ini hanya bersifat informasi dan sistem tidak
+membacanya, namun layanan eksternal seperti Google Play akan membacanya untuk menyediakan
+penyaringan bagi pengguna saat mereka mencari aplikasi dari perangkat.</p>
+
+<p>Misalnya, jika aplikasi memerlukan kamera dan menggunakan API yang disediakan dalam Android 2.1 (<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API Level</a> 7)
+, Anda harus mendeklarasikannya sebagai kebutuhan dalam file manifes seperti ini:</p> 
+
+<pre>
+&lt;manifest ... >
+    &lt;uses-feature android:name="android.hardware.camera.any"
+                  android:required="true" />
+    &lt;uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" />
+    ...
+&lt;/manifest>
+</pre>
+
+<p>Sekarang, perangkat yang <em>tidak</em> memiliki kamera dan menggunakan 
+Android versi <em>lebih rendah</em> dari 2.1 tidak bisa menginstal aplikasi Anda dari Google Play.</p>
+
+<p>Akan tetapi, bisa juga mendeklarasikan bahwa aplikasi Anda menggunakan kamera, namun tidak 
+<em>mengharuskannya</em>. Dalam hal itu, aplikasi Anda harus mengatur atribut <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#required">{@code required}</a>
+ ke {@code "false"} dan memeriksa saat runtime apakah
+perangkat memiliki kamera dan menonaktifkan setiap fitur kamera yang sesuai.</p>
+
+<p>Informasi selengkapnya tentang cara mengelola kompatibilitas aplikasi dengan
+perangkat yang berbeda disediakan dalam dokumen
+<a href="{@docRoot}guide/practices/compatibility.html">Kompatibilitas Perangkat</a>.</p>
+
+
+
+<h2 id="Resources">Sumber Daya Aplikasi</h2>
+
+<p>Aplikasi Android tidak hanya terdiri dari kode&mdash;Aplikasi memerlukan sumber daya yang
+terpisah dari kode sumber, seperti gambar, file audio, dan apa saja yang berkaitan dengan
+presentasi visual dari aplikasi. Misalnya, Anda harus mendefinisikan animasi, menu, gaya, warna,
+dan layout antarmuka pengguna aktivitas dengan file XML. Penggunaan sumber daya aplikasi
+mempermudah pembaruan berbagai karakteristik aplikasi Anda tanpa memodifikasi kode dan&mdash;dengan menyediakan
+seperangkat sumber daya alternatif&mdash;memungkinkan Anda mengoptimalkan aplikasi untuk berbagai konfigurasi
+perangkat berbeda (seperti bahasa dan ukuran layar yang berbeda).</p>
+
+<p>Untuk setiap sumber daya yang Anda sertakan dalam proyek Android, alat bawaan SDK akan mendefinisikan ID integer
+unik, yang bisa Anda gunakan untuk mengacu sumber daya dari kode aplikasi atau dari sumber daya lainnya yang
+didefinisikan dalam XML. Misalnya, jika aplikasi berisi file gambar bernama {@code
+logo.png} (disimpan dalam direktori {@code res/drawable/}), alat SDK akan menghasilkan ID sumber daya
+bernama {@code R.drawable.logo}, yang bisa Anda gunakan untuk mengacu gambar dan memasukkannya dalam
+antarmuka pengguna.</p>
+
+<p>Salah satu aspek paling penting dari penyediaan sumber daya yang terpisah dari
+kode sumber adalah kemampuan Anda menyediakan sumber daya alternatif untuk konfigurasi perangkat
+yang berbeda. Misalnya, dengan mendefinisikan string UI dalam XML, Anda bisa menerjemahkan string ke dalam
+bahasa lain dan menyimpan string itu dalam file terpisah. Kemudian, berdasarkan <em>qualifier</em>
+bahasa yang ditambahkan ke nama direktori sumber daya (seperti {@code res/values-fr/} untuk nilai
+string Prancis) dan pengaturan bahasa pengguna, sistem Android akan menerapkan string bahasa yang sesuai
+untuk UI Anda.</p>
+
+<p>Android mendukung banyak <em>qualifier</em> berbeda untuk sumber daya alternatif Anda. Qualifier
+adalah string pendek yang Anda sertakan dalam nama direktori sumber
+daya untuk mendefinisikan konfigurasi perangkat yang harus digunakan sumber daya tersebut. Contoh lainnya,
+Anda harus sering membuat layout berbeda untuk aktivitas, bergantung pada
+orientasi layar dan ukuran perangkat. Misalnya, saat layar perangkat dalam orientasi
+tegak, Anda mungkin ingin layout tombolnya vertikal, tetapi saat layar dalam orientasi
+mendatar, tombolnya harus sejajar horizontal. Untuk mengubah layout
+sesuai orientasi, Anda bisa mendefinisikan dua layout berbeda dan menerapkan qualifier yang
+tepat untuk setiap nama direktori layout. Kemudian, sistem secara otomatis menerapkan
+layout yang tepat sesuai dengan orientasi perangkat saat ini.</p>
+
+<p>Untuk informasi selengkapnya tentang berbagai jenis sumber daya yang bisa disertakan dalam aplikasi dan cara
+membuat sumber daya alternatif untuk konfigurasi perangkat berbeda, bacalah <a href="{@docRoot}guide/topics/resources/providing-resources.html">Menyediakan Sumber Daya</a>.</p>
+
+
+
+<div class="next-docs">
+<div class="col-6">
+  <h2 class="norule">Teruskan membaca tentang:</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/components/intents-filters.html">Intent dan Filter Intent</a>
+    </dt>
+    <dd>Informasi tentang cara menggunakan API {@link android.content.Intent} untuk
+ mengaktifkan komponen aplikasi, seperti aktivitas dan layanan, dan cara menyediakan komponen aplikasi
+ untuk digunakan oleh aplikasi lain.</dd>
+    <dt><a href="{@docRoot}guide/components/activities.html">Aktivitas</a></dt>
+    <dd>Informasi tentang cara membuat instance kelas {@link android.app.Activity}, 
+yang menyediakan layar tersendiri dalam aplikasi bersama antarmuka pengguna.</dd>
+    <dt><a href="{@docRoot}guide/topics/resources/providing-resources.html">Menyediakan Sumber Daya</a></dt>
+    <dd>Informasi tentang cara aplikasi Android disusun untuk memisahkan sumber daya aplikasi dari
+kode aplikasi, termasuk cara Anda bisa menyediakan sumber daya alternatif untuk 
+konfigurasi perangkat tertentu.
+    </dd>
+  </dl>
+</div>
+<div class="col-6">
+  <h2 class="norule">Anda juga mungkin tertarik dengan:</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/practices/compatibility.html">Kompatibilitas Perangkat</a></dt>
+    <dd>Informasi tentang cara kerja Android pada berbagai tipe perangkat dan 
+pengenalan mengenai cara mengoptimalkan aplikasi untuk setiap perangkat atau membatasi ketersediaan aplikasi Anda untuk
+perangkat berbeda.</dd>
+    <dt><a href="{@docRoot}guide/topics/security/permissions.html">Izin Sistem</a></dt>
+    <dd>Informasi tentang cara Android membatasi akses aplikasi pada API tertentu dengan sistem izin 
+yang mengharuskan persetujuan pengguna agar aplikasi dapat menggunakan API tersebut.</dd>
+  </dl>
+</div>
+</div>
+
diff --git a/docs/html-intl/intl/in/guide/components/index.jd b/docs/html-intl/intl/in/guide/components/index.jd
new file mode 100644
index 0000000..a8dd5f8
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/index.jd
@@ -0,0 +1,57 @@
+page.title=Komponen Aplikasi
+page.landing=true
+page.landing.intro=Kerangka kerja aplikasi Android memungkinkan Anda membuat aplikasi yang kaya dan inovatif menggunakan seperangkat komponen yang dapat digunakan kembali. Bagian ini menjelaskan cara membangun komponen yang mendefinisikan blok pembangun aplikasi Anda dan cara menghubungkannya bersama menggunakan intent. 
+page.metaDescription=Kerangka kerja aplikasi Android memungkinkan Anda membuat aplikasi yang kaya dan inovatif menggunakan seperangkat komponen yang dapat digunakan kembali. Bagian ini menjelaskan cara membangun komponen yang mendefinisikan blok pembangun aplikasi Anda dan cara menghubungkannya bersama menggunakan intent. 
+page.landing.image=images/develop/app_components.png
+page.image=images/develop/app_components.png
+
+@jd:body
+
+<div class="landing-docs">
+
+  <div class="col-6">
+    <h3>Artikel Blog</h3>
+    
+    <a href="http://android-developers.blogspot.com/2012/05/using-dialogfragments.html">
+      <h4>Menggunakan DialogFragments</h4>
+      <p>Dalam posting ini, saya akan menunjukkan cara menggunakan DialogFragments dengan pustaka dukungan v4 (untuk kompatibilitas mundur pada perangkat sebelum Honeycomb) untuk menunjukkan dialog edit sederhana dan mengembalikan hasil ke Aktivitas pemanggil menggunakan antarmuka.</p>
+    </a>
+
+    <a href="http://android-developers.blogspot.com/2011/03/fragments-for-all.html">
+      <h4>Fragmen Untuk Semua</h4>
+      <p>Hari ini kami telah merilis pustaka statis yang memperlihatkan API Fragment yang sama (serta LoaderManager baru dan beberapa kelas lain) agar aplikasi yang kompatibel dengan Android 1.6 atau yang lebih baru bisa menggunakan fragmen untuk membuat antarmuka pengguna yang kompatibel dengan tablet. </p>
+    </a>
+    
+    <a href="http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html">
+      <h4>Multithreading untuk Kinerja</h4>
+      <p>Praktik yang baik dalam membuat aplikasi yang responsif adalah memastikan thread UI utama Anda
+melakukan pekerjaan minimum. Setiap tugas yang berpotensi lama dan dapat membuat aplikasi mogok harus
+ditangani di thread berbeda.</p>
+    </a>
+  </div>
+
+  <div class="col-6">
+    <h3>Pelatihan</h3>
+    
+    <a href="http://developer.android.com/training/basics/activity-lifecycle/index.html">
+      <h4>Mengelola Daur Hidup Aktivitas</h4>
+      <p>Bagian ini menjelaskan pentingnya metode callback daur hidup yang diterima setiap instance Aktivitas
+dan cara menggunakannya sehingga aktivitas Anda melakukan yang diharapkan pengguna dan tidak menghabiskan sumber daya sistem
+saat aktivitas tidak membutuhkannya.</p>
+    </a>
+
+    <a href="http://developer.android.com/training/basics/fragments/index.html">
+      <h4>Membangun UI Dinamis dengan Fragmen</h4>
+      <p>Bagian ini menunjukkan kepada Anda cara membuat pengalaman pengguna yang dinamis dengan fragmen dan mengoptimalkan
+pengalaman pengguna aplikasi Anda dengan berbagai ukuran layar, sekaligus terus mendukung
+perangkat yang menjalankan versi sebelumnya, sesudah versi Android 1.6.</p>
+    </a>
+
+    <a href="http://developer.android.com/training/sharing/index.html">
+      <h4>Berbagi Konten</h4>
+      <p>Bagian ini membahas beberapa cara umum untuk mengirim dan menerima konten antar
+aplikasi menggunakan API Intent dan objek ActionProvider.</p>
+    </a>
+  </div>
+
+</div>
diff --git a/docs/html-intl/intl/in/guide/components/intents-filters.jd b/docs/html-intl/intl/in/guide/components/intents-filters.jd
new file mode 100644
index 0000000..8e89b5d
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/intents-filters.jd
@@ -0,0 +1,899 @@
+page.title=Intent dan Filter Intent
+page.tags="IntentFilter"
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Dalam dokumen ini</h2>
+<ol>
+  <li><a href="#Types">Tipe Intent</a></li>
+  <li><a href="#Building">Membangun Intent</a>
+    <ol>
+      <li><a href="#ExampleExplicit">Contoh intent eksplisit</a></li>
+      <li><a href="#ExampleSend">Contoh intent implisit</a></li>
+      <li><a href="#ForceChooser">Memaksakan pemilih aplikasi</a></li>
+    </ol>
+  </li>
+  <li><a href="#Receiving">Menerima Intent Implisit</a>
+    <ol>
+      <li><a href="#ExampleFilters">Contoh filter</a></li>
+    </ol>
+  </li>
+  <li><a href="#PendingIntent">Menggunakan Intent Tertunda</a></li>
+  <li><a href="#Resolution">Resolusi Intent</a>
+    <ol>
+      <li><a href="#ActionTest">Pengujian tindakan</a></li>
+      <li><a href="#CategoryTest">Pengujian kategori</a></li>
+      <li><a href="#DataTest">Pengujian data</a></li>
+      <li><a href="#imatch">Pencocokan intent</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Lihat juga</h2>
+<ol>
+<li><a href="{@docRoot}training/basics/intents/index.html">Berinteraksi dengan Aplikasi Lain</a></li>
+<li><a href="{@docRoot}training/sharing/index.html">Berbagi Konten</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+
+<p>{@link android.content.Intent} merupakan objek pertukaran pesan yang bisa Anda gunakan untuk meminta tindakan
+dari <a href="{@docRoot}guide/components/fundamentals.html#Components">komponen aplikasi</a> lain.
+Walaupun intent memudahkan komunikasi antarkomponen dalam beberapa cara, ada tiga
+kasus-penggunaan dasar:</p>
+
+<ul>
+<li><b>Untuk memulai aktivitas:</b>
+<p>{@link android.app.Activity} menyatakan satu layar dalam aplikasi. Anda bisa memulai instance
+baru {@link android.app.Activity} dengan meneruskan {@link android.content.Intent}
+ke {@link android.content.Context#startActivity startActivity()}. {@link android.content.Intent}
+menjelaskan aktivitas yang akan dimulai dan membawa data yang diperlukan.</p>
+
+<p>Jika Anda ingin menerima hasil dari aktivitas bila selesai,
+panggil {@link android.app.Activity#startActivityForResult
+startActivityForResult()}. Aktivitas Anda menerima hasil
+sebagai objek {@link android.content.Intent} terpisah dalam callback {@link
+android.app.Activity#onActivityResult onActivityResult()} aktivitas Anda.
+Untuk informasi selengkapnya, lihat panduan <a href="{@docRoot}guide/components/activities.html">Aktivitas</a>.</p></li>
+
+<li><b>Untuk memulai layanan:</b>
+<p>{@link android.app.Service} adalah komponen yang melakukan operasi di latar belakang
+tanpa antarmuka pengguna. Anda bisa memulai layanan untuk melakukan operasi satu-kali
+(misalnya mengunduh file) dengan meneruskan {@link android.content.Intent}
+ke {@link android.content.Context#startService startService()}. {@link android.content.Intent}
+menjelaskan layanan yang akan dimulai dan membawa data yang diperlukan.</p>
+
+<p>Jika layanan didesain dengan antarmuka pengguna klien-server, Anda bisa mengikat ke layanan
+dari komponen lain dengan meneruskan {@link android.content.Intent} ke {@link
+android.content.Context#bindService bindService()}</code>. Untuk informasi selengkapnya, lihat panduan <a href="{@docRoot}guide/components/services.html">Layanan</a>.</p></li>
+
+<li><b>Untuk mengirim siaran:</b>
+<p>Siaran adalah pesan yang bisa diterima aplikasi apa saja. Sistem menyampaikan beragam siaran
+untuk kejadian sistem, misalnya saat sistem booting atau saat perangkat mulai mengisi daya.
+Anda bisa mengirim siaran ke aplikasi lain dengan meneruskan {@link android.content.Intent}
+ke {@link android.content.Context#sendBroadcast(Intent) sendBroadcast()},
+{@link android.content.Context#sendOrderedBroadcast(Intent, String)
+sendOrderedBroadcast()}, atau {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}.</p>
+</li>
+</ul>
+
+
+
+
+<h2 id="Types">Tipe Intent</h2>
+
+<p>Ada dua tipe intent:</p>
+
+<ul>
+<li><b>Intent eksplisit</b> menetapkan komponen untuk memulai dengan nama (
+nama kelas yang sepenuhnya memenuhi syarat). Anda biasanya akan menggunakan intent eksplisit untuk memulai sebuah komponen
+dalam aplikasi sendiri, karena Anda mengetahui nama kelas dari aktivitas atau layanan yang ingin dimulai.
+Misalnya, mulai aktivitas baru sebagai respons terhadap tindakan pengguna atau mulai layanan untuk mengunduh
+file di latar belakang.</li>
+
+<li><b>Intent implisit</b> tidak menetapkan komponen tertentu, melainkan mendeklarasikan tindakan umum
+yang dilakukan, yang memungkinkan komponen aplikasi lain untuk menanganinya. Misalnya, jika Anda ingin
+menampilkan sebuah lokasi di peta pada pengguna, Anda bisa menggunakan intent implisit untuk meminta aplikasi lain
+yang mampu untuk menunjukkan lokasi yang telah ditetapkan di peta tersebut.</li>
+</ul>
+
+<p>Saat Anda membuat intent eksplisit untuk memulai aktivitas atau layanan, sistem akan segera
+memulai komponen aplikasi yang telah ditetapkan dalam objek {@link android.content.Intent}.</p>
+
+<div class="figure" style="width:446px">
+<img src="{@docRoot}images/components/intent-filters@2x.png" width="446" alt="" />
+<p class="img-caption"><strong>Gambar 1.</strong> Ilustrasi yang menggambarkan cara intent implisit
+disampaikan melalui sistem untuk memulai aktivitas lain: <b>[1]</b> <em>Aktivitas A</em> membuat sebuah
+{@link android.content.Intent} dengan keterangan tindakan dan meneruskannya ke {@link
+android.content.Context#startActivity startActivity()}. <b>[2]</b> Sistem Android akan mencari semua
+aplikasi untuk filter intent yang cocok dengan intent tersebut. Bila cocok, <b>[3]</b> sistem akan
+memulai aktivitas mencocokkan (<em>Aktivitas B</em>) dengan memanggil metode {@link
+android.app.Activity#onCreate onCreate()} dan meneruskannya ke {@link android.content.Intent}.
+</p>
+</div>
+
+<p>Bila Anda membuat intent implisit, sistem Android akan menemukan komponen yang sesuai untuk memulai
+dengan membandingkan konten intent dengan <em>filter intent</em> yang dideklarasikan dalam <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">file manifes</a> aplikasi lain di
+perangkat. Jika intent cocok dengan filter intent, sistem akan memulai komponen tersebut dan mengiriminya
+objek {@link android.content.Intent}. Jika banyak filter intent yang kompatibel, sistem
+menampilkan dialog sehingga pengguna bisa memilih aplikasi yang akan digunakan.</p>
+
+<p>Filter intent adalah ekspresi dalam file manifes aplikasi yang
+menetapkan tipe intent yang akan diterima
+komponen. Misalnya, dengan mendeklarasikan intent filter untuk aktivitas,
+Anda akan memungkinkan aplikasi lain untuk langsung memulai aktivitas Anda dengan intent tertentu.
+Demikian pula, jika Anda <em>tidak</em> mendeklarasikan filter intent untuk suatu aktivitas, maka aktivitas tersebut hanya bisa dimulai
+dengan intent eksplisit.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Untuk memastikan aplikasi Anda aman, selalu gunakan intent
+eksplisit saat memulai {@link android.app.Service} dan jangan
+mendeklarasikan filter intent untuk layanan. Menggunakan intent implisit untuk memulai layanan akan menimbulkan
+bahaya keamanan karena Anda tidak bisa memastikan layanan apa yang akan merespons intent,
+dan pengguna tidak bisa melihat layanan mana yang dimulai. Mulai dari Android 5.0 (API level 21), sistem
+melontarkan eksepsi jika Anda memanggil {@link android.content.Context#bindService bindService()}
+dengan intent implisit.</p>
+
+
+
+
+
+<h2 id="Building">Membangun Intent</h2>
+
+<p>Objek {@link android.content.Intent} membawa informasi yang digunakan sistem Android
+untuk menentukan komponen mana yang akan dimulai (misalnya nama persis dari suatu komponen atau kategori
+komponen yang seharusnya menerima intent), ditambah informasi yang digunakan komponen penerima untuk
+melakukan tindakan dengan benar (misalnya tindakan yang harus dilakukan dan data yang harus diolah).</p>
+
+
+<p>Informasi utama yang dimuat dalam {@link android.content.Intent} adalah sebagai berikut:</p>
+
+<dl>
+
+<dt><b>Nama komponen</b></dt>
+<dd>Nama komponen yang akan dimulai.
+
+<p>Ini opsional, namun merupakan bagian informasi penting yang membuat intent
+menjadi <b>eksplisit</b>, yaitu intent harus dikirim hanya ke komponen aplikasi
+yang didefinisikan oleh nama komponen. Tanpa nama komponen, intent menjadi <b>implisit</b> dan
+sistem akan memutuskan komponen mana yang harus menerima intent berdasarkan informasi intent lain
+(misalnya tindakan, data, dan kategori&mdash;yang dijelaskan di bawah ini). Jadi jika Anda ingin memulai komponen
+tertentu dalam aplikasi, Anda harus menetapkan nama komponen tersebut.</p>
+
+<p class="note"><strong>Catatan:</strong> Saat memulai {@link android.app.Service}, Anda harus
+<strong>selalu menetapkan nama komponen</strong>. Jika tidak, maka Anda tidak bisa memastikan layanan apa
+yang akan merespons intent tersebut, dan pengguna tidak bisa melihat layanan mana yang dimulai.</p>
+
+<p>Bidang {@link android.content.Intent} ini adalah objek
+{@link android.content.ComponentName}, yang bisa Anda tetapkan menggunakan
+nama kelas yang sepenuhnya memenuhi syarat dari komponen target, termasuk nama paket aplikasi. Misalnya,
+{@code com.example.ExampleActivity}. Anda bisa mengatur nama komponen dengan {@link
+android.content.Intent#setComponent setComponent()}, {@link android.content.Intent#setClass
+setClass()}, {@link android.content.Intent#setClassName(String, String) setClassName()}, atau dengan konstruktor
+{@link android.content.Intent}.</p>
+
+</dd>
+
+<p><dt><b>Tindakan</b></dt>
+<dd>String yang menetapkan tindakan generik untuk dilakukan (misalnya <em>lihat</em> atau <em>pilih</em>).
+
+<p>Dalam hal intent siaran, ini adalah tindakan yang terjadi dan dilaporkan.
+Tindakan ini sangat menentukan bagaimana keseluruhan intent disusun&mdash;terutama
+apa yang dimuat dalam data dan ekstra.
+
+<p>Anda bisa menetapkan tindakan sendiri yang akan digunakan oleh intent dalam aplikasi Anda (atau digunakan oleh aplikasi
+lain untuk memanggil komponen dalam aplikasi Anda), namun Anda harus menggunakan konstanta tindakan
+yang didefinisikan oleh kelas {@link android.content.Intent} atau kelas kerangka kerja lain. Berikut ini adalah beberapa
+tindakan umum untuk memulai sebuah aktivitas:</p>
+
+<dl>
+<dt>{@link android.content.Intent#ACTION_VIEW}</dt>
+   <dd>Gunakan tindakan ini dalam intent dengan {@link
+   android.content.Context#startActivity startActivity()} saat Anda memiliki beberapa informasi yang
+ bisa ditampilkan aktivitas kepada pengguna, misalnya foto yang bisa dilihat dalam aplikasi galeri, atau alamat
+ yang bisa dilihat dalam aplikasi peta.</dd>
+
+<dt>{@link android.content.Intent#ACTION_SEND}</dt>
+   <dd>Juga dikenal dengan intent "berbagi", Anda harus menggunakannya dalam intent dengan {@link
+   android.content.Context#startActivity startActivity()} bila Anda memiliki data yang bisa digunakan pengguna untuk
+ berbagi melalui aplikasi lain, misalnya aplikasi email atau aplikasi jaringan sosial.</dd>
+</dl>
+
+<p>Lihat referensi kelas {@link android.content.Intent} untuk konstanta
+selengkapnya yang mendefinisikan tindakan generik.  Tindakan lain yang didefinisikan
+di tempat lain dalam kerangka kerja Android, misalnya dalam {@link android.provider.Settings} untuk tindakan
+yang membuka layar tertentu dalam aplikasi Settings di sistem.</p>
+
+<p>Anda bisa menetapkan tindakan untuk sebuah intent dengan {@link android.content.Intent#setAction
+setAction()} atau dengan konstruktor {@link android.content.Intent}.</p>
+
+<p>Jika mendefinisikan tindakan Anda sendiri, pastikan untuk memasukkan nama paket aplikasi Anda
+sebagai awalan. Misalnya:</p>
+<pre>static final String ACTION_TIMETRAVEL = "com.example.action.TIMETRAVEL";</pre>
+</dd>
+
+<dt><b>Data</b></dt>
+<dd>URI (objek {@link android.net.Uri}) yang mengacu data untuk diolah dan/atau
+tipe MIME dari data tersebut. Tipe data yang disediakan umumnya didikte oleh tindakan intent.
+Misalnya, jika tindakan merupakan {@link android.content.Intent#ACTION_EDIT}, data harus berisi
+URI dari dokumen untuk diedit.
+
+<p>Saat membuat intent,
+seringkali tipe data (tipe MIME-nya) selain URI perlu ditetapkan.
+Misalnya, aktivitas yang mampu menampilkan gambar mungkin tidak mampu
+memutar file audio, walaupun format URI mungkin serupa.
+Jadi menetapkan tipe MIME data Anda akan membantu sistem
+Android menemukan komponen terbaik untuk diterima intent.
+Akan tetapi, tipe MIME seringkali bisa diambil dari URI&mdash;terutama saat datanya merupakan URI
+{@code content:}, yang menunjukkan data tersebut berada di perangkat dan dikontrol oleh
+{@link android.content.ContentProvider}, yang membuat data tipe MIME terlihat di sistem.</p>
+
+<p>Untuk mengatur data URI saja, panggil {@link android.content.Intent#setData setData()}.
+Untuk mengatur tipe MIME saja, panggil {@link android.content.Intent#setType setType()}. Jika perlu, Anda
+bisa mengatur keduanya secara eksplisit dengan {@link
+android.content.Intent#setDataAndType setDataAndType()}.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Jika ingin mengatur tipe URI dan MIME,
+<strong>jangan</strong> panggil {@link android.content.Intent#setData setData()} dan
+{@link android.content.Intent#setType setType()} karena mereka saling menghapuskan nilai satu sama lain.
+Selalu gunakan {@link android.content.Intent#setDataAndType setDataAndType()} untuk mengatur
+tipe URI maupun MIME.</p>
+</dd>
+
+<p><dt><b>Kategori</b></dt>
+<dd>String yang berisi informasi tambahan tentang jenis komponen
+yang harus menangani intent.  Keterangan kategori dalam jumlah berapa pun bisa
+dimasukkan dalam intent, namun sebagian besar intent tidak memerlukan kategori.
+Berikut ini adalah beberapa kategori umum:
+
+<dl>
+<dt>{@link android.content.Intent#CATEGORY_BROWSABLE}</dt>
+  <dd>Aktivitas target memungkinkannya dimulai oleh browser web untuk menampilkan data
+yang diacu oleh tautan&mdash;misalnya gambar atau pesan e-mail.
+  </dd>
+<dt>{@link android.content.Intent#CATEGORY_LAUNCHER}</dt>
+  <dd>Aktivitas tersebut adalah aktivitas awal dari sebuah tugas dan dicantumkan dalam
+       launcher aplikasi sistem.
+  </dd>
+</dl>
+
+<p>Lihat keterangan kelas {@link android.content.Intent} untuk mengetahui daftar lengkap
+kategori.</p>
+
+<p>Anda bisa menetapkan kategori dengan {@link android.content.Intent#addCategory addCategory()}.</p>
+</dd>
+</dl>
+
+
+<p>Properti yang tercantum di atas (nama komponen, tindakan, data, dan kategori) menyatakan
+karakteristik yang mendefinisikan intent. Dengan membaca properti ini, sistem Android
+mampu memutuskan komponen aplikasi yang harus dimulainya.</p>
+
+<p>Akan tetapi, intent bisa membawa informasi tambahan yang tidak memengaruhi
+cara intent ditetapkan pada komponen aplikasi. Intent juga bisa menyediakan:</p>
+
+<dl>
+<dt><b>Ekstra</b></dt>
+<dd>Pasangan nilai-kunci yang membawa informasi yang diperlukan untuk menghasilkan tindakan yang diminta.
+Seperti halnya beberapa tindakan menggunakan jenis tertentu URI data, beberapa tindakan juga menggunakan ekstra tertentu.
+
+<p>Anda bisa menambahkan data ekstra dengan beragam metode {@link android.content.Intent#putExtra putExtra()},
+masing-masing menerima dua parameter: nama kunci dan nilainya.
+Anda juga bisa membuat objek {@link android.os.Bundle} dengan semua data ekstra, kemudian memasukkan
+{@link android.os.Bundle} dalam {@link android.content.Intent} dengan {@link
+android.content.Intent#putExtras putExtras()}.</p>
+
+<p>Misalnya, saat membuat intent yang akan dikirimkan bersama email
+{@link android.content.Intent#ACTION_SEND}, Anda bisa menetapkan penerima "kepada" dengan kunci
+{@link android.content.Intent#EXTRA_EMAIL}, dan menetapkan "subjek" dengan kunci
+{@link android.content.Intent#EXTRA_SUBJECT}.</p>
+
+<p>Kelas {@link android.content.Intent} menetapkan beberapa konstanta {@code EXTRA_*}
+untuk tipe data standar. Jika Anda ingin mendeklarasikan kunci ekstra sendiri (untuk intent yang
+diterima aplikasi Anda), pastikan untuk memasukkan nama paket aplikasi
+sebagai awalan. Misalnya:</p>
+<pre>static final String EXTRA_GIGAWATTS = "com.example.EXTRA_GIGAWATTS";</pre>
+</dd>
+
+<dt><b>Flag</b></dt>
+<dd>Flag didefinisikan dalam kelas {@link android.content.Intent} yang berfungsi sebagai metadata untuk
+intent. Flag menginstruksikan cara meluncurkan aktivitas (misalnya,
+<a href="{@docRoot}guide/components/tasks-and-back-stack.html">tugas</a> mana yang harus dimiliki suatu aktivitas
+) dan cara memperlakukannya setelah diluncurkan (misalnya, apakah aktivitas tersebut masuk ke dalam daftar aktivitas
+terbaru) pada sistem Android.
+
+<p>Untuk informasi selengkapnya, lihat metode {@link android.content.Intent#setFlags setFlags()} .</p>
+</dd>
+
+</dl>
+
+
+
+
+<h3 id="ExampleExplicit">Contoh intent eksplisit</h3>
+
+<p>Intent eksplisit adalah intent yang Anda gunakan untuk meluncurkan komponen aplikasi tertentu, seperti
+aktivitas tertentu atau layanan dalam aplikasi Anda. Untuk membuat intent eksplisit, definisikan
+nama komponen untuk objek {@link android.content.Intent} &mdash;semua
+properti intent lain bersifat opsional.</p>
+
+<p>Misalnya, jika Anda ingin membangun layanan dalam aplikasi Anda, bernama {@code DownloadService},
+yang didesain untuk mengunduh file dari web, Anda bisa memulainya dengan kode berikut ini:</p>
+
+<pre>
+// Executed in an Activity, so 'this' is the {@link android.content.Context}
+// The fileUrl is a string URL, such as "http://www.example.com/image.png"
+Intent downloadIntent = new Intent(this, DownloadService.class);
+downloadIntent.setData({@link android.net.Uri#parse Uri.parse}(fileUrl));
+startService(downloadIntent);
+</pre>
+
+<p>Konstruktor {@link android.content.Intent#Intent(Context,Class)}
+ menyediakan {@link android.content.Context} aplikasi dan
+objek {@link java.lang.Class} pada komponen. Dengan demikian,
+intent ini memulai secara eksplisit kelas {@code DownloadService} dalam aplikasi.</p>
+
+<p>Untuk informasi selengkapnya tentang membangun dan memulai layanan, lihat panduan
+<a href="{@docRoot}guide/components/services.html">Layanan</a>.</p>
+
+
+
+
+<h3 id="ExampleSend">Contoh intent implisit</h3>
+
+<p>Intent implisit menetapkan tindakan yang bisa memanggil aplikasi pada perangkat yang mampu
+melakukan tindakan. Menggunakan intent implisit berguna bila aplikasi Anda tidak bisa melakukan
+tindakan, namun aplikasi lain mungkin bisa melakukannya dan Anda ingin pengguna untuk memilih aplikasi mana yang ingin digunakan.</p>
+
+<p>Misalnya, jika memiliki konten yang Anda ingin agar pengguna berbagi konten itu dengan orang lain, buatlah intent
+dengan tindakan {@link android.content.Intent#ACTION_SEND}
+dan tambahkan ekstra yang menetapkan konten yang akan dibagikan. Bila Anda memanggil
+{@link android.content.Context#startActivity startActivity()} dengan intent tersebut, pengguna bisa
+memilih aplikasi yang akan digunakan untuk berbagi konten.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Ada kemungkinan pengguna tidak memiliki <em>suatu</em>
+aplikasi yang menangani intent implisit yang Anda kirimkan ke {@link android.content.Context#startActivity
+startActivity()}. Jika itu terjadi, panggilan akan gagal dan aplikasi Anda akan crash. Untuk memeriksa
+apakah aktivitas bisa menerima intent, panggil {@link android.content.Intent#resolveActivity
+resolveActivity()} pada objek {@link android.content.Intent} Anda. Jika hasilnya bukan nol,
+berarti setidaknya ada satu aplikasi yang bisa menangani intent tersebut dan aman untuk memanggil
+{@link android.content.Context#startActivity startActivity()}. Jika hasilnya nol,
+Anda tidak boleh menggunakan intent tersebut dan, jika memungkinkan, Anda harus menonaktifkan fitur yang mengeluarkan
+intent tersebut.</p>
+
+
+<pre>
+// Create the text message with a string
+Intent sendIntent = new Intent();
+sendIntent.setAction(Intent.ACTION_SEND);
+sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
+sendIntent.setType("text/plain");
+
+// Verify that the intent will resolve to an activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(sendIntent);
+}
+</pre>
+
+<p class="note"><strong>Catatan:</strong> Dalam hal ini, URI tidak digunakan, namun tipe data intent
+dideklarasikan untuk menetapkan konten yang dibawa oleh ekstra.</p>
+
+
+<p>Saat {@link android.content.Context#startActivity startActivity()} dipanggil, sistem akan
+memeriksa semua aplikasi yang terinstal untuk menentukan aplikasi mana yang bisa menangani intent jenis ini (
+intent dengan tindakan {@link android.content.Intent#ACTION_SEND} dan yang membawa data
+"teks/polos"). Jika hanya ada satu aplikasi yang bisa menanganinya, aplikasi tersebut akan langsung terbuka dan diberi
+intent tersebut. Jika banyak aktivitas menerima intent, sistem akan
+menampilkan dialog sehingga pengguna bisa memilih aplikasi mana yang digunakan.</p>
+
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/training/basics/intent-chooser.png" alt="">
+  <p class="img-caption"><strong>Gambar 2.</strong> Dialog pemilih.</p>
+</div>
+
+<h3 id="ForceChooser">Memaksakan pemilih aplikasi</h3>
+
+<p>Bila ada lebih dari satu aplikasi yang merespons intent implisit Anda,
+pengguna bisa memilih aplikasi mana yang digunakan dan membuat aplikasi tersebut pilihan default untuk
+tindakan tersebut. Ini sangat membantu saat melakukan tindakan di mana pengguna
+mungkin ingin menggunakan aplikasi yang sama untuk seterusnya, seperti saat membuka halaman web (pengguna
+biasanya memilih hanya satu browser web).</p>
+
+<p>Akan tetapi, jika ada banyak aplikasi yang bisa merespons intent tersebut dan pengguna mungkin ingin menggunakan aplikasi
+yang berbeda untuk setiap kalinya, Anda harus menampilkan dialog pemilih secara eksplisit. Dialog pemilih akan meminta
+pengguna memilih aplikasi yang akan digunakan untuk tindakan tertentu setiap kali (pengguna tidak bisa memilih aplikasi default untuk
+tindakan tersebut). Misalnya, saat aplikasi Anda melakukan "berbagi" dengan tindakan {@link
+android.content.Intent#ACTION_SEND}, pengguna mungkin ingin berbagi menggunakan aplikasi berbeda sesuai
+dengan situasi mereka saat itu, jadi Anda harus selalu menggunakan dialog pemilih, seperti yang ditampilkan dalam gambar 2.</p>
+
+
+
+
+<p>Untuk menampilkan pemilih, buatlah {@link android.content.Intent} menggunakan {@link
+android.content.Intent#createChooser createChooser()} dan teruskan ke {@link
+android.app.Activity#startActivity startActivity()}. Misalnya:</p>
+
+<pre>
+Intent sendIntent = new Intent(Intent.ACTION_SEND);
+...
+
+// Always use string resources for UI text.
+// This says something like "Share this photo with"
+String title = getResources().getString(R.string.chooser_title);
+// Create intent to show the chooser dialog
+Intent chooser = Intent.createChooser(sendIntent, title);
+
+// Verify the original intent will resolve to at least one activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(chooser);
+}
+</pre>
+
+<p>Ini menampilkan dialog dengan daftar aplikasi yang merespons intent yang diteruskan ke metode {@link
+android.content.Intent#createChooser createChooser()} dan menggunakan teks yang disediakan sebagai
+judul dialog.</p>
+
+
+
+
+
+
+
+
+
+<h2 id="Receiving">Menerima Intent Implisit</h2>
+
+<p>Untuk mengiklankan intent implisit yang bisa diterima aplikasi Anda, deklarasikan satu atau beberapa filter intent untuk
+tiap komponen aplikasi dengan elemen <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+dalam <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">file manifes</a> Anda.
+Tiap filter intent menetapkan tipe intent yang diterimanya berdasarkan tindakan intent,
+data, dan kategori. Sistem akan mengirim intent implisit ke komponen aplikasi Anda hanya jika
+intent tersebut bisa diteruskan melalui salah satu filter intent.</p>
+
+<p class="note"><strong>Catatan:</strong> Intent eksplisit selalu dikirimkan ke targetnya,
+apa pun filter intent yang dideklarasikan komponen.</p>
+
+<p>Komponen aplikasi harus mendeklarasikan filter terpisah untuk setiap pekerjaan unik yang bisa dilakukannya.
+Misalnya, satu aktivitas dalam aplikasi galeri gambar bisa memiliki dua filter: satu filter
+untuk melihat gambar, dan filter lainnya untuk mengedit gambar. Bila aktivitas dimulai,
+aktivitas akan memeriksa {@link android.content.Intent} dan menentukan cara berperilaku berdasarkan informasi
+dalam {@link android.content.Intent} (misalnya menampilkan kontrol editor atau tidak).</p>
+
+<p>Tiap filter intent didefinisikan oleh elemen <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+dalam file manifes aplikasi, yang tersarang dalam komponen aplikasi terkait (seperti
+elemen <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+). Di dalam <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>,
+Anda bisa menetapkan tipe intent yang akan diterima dengan menggunakan salah satu atau beberapa
+dari tiga elemen ini:</p>
+
+<dl>
+<dt><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a></dt>
+  <dd>Mendeklarasikan tindakan intent yang diterima, dalam atribut {@code name}. Nilai
+  haruslah nilai string literal dari tindakan, bukan konstanta kelas.</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a></dt>
+  <dd>Mendeklarasikan tipe data yang diterima, menggunakan salah satu atau beberapa atribut yang menetapkan beragam
+  aspek URI data (<code>scheme</code>, <code>host</code>, <code>port</code>,
+  <code>path</code>, dll.) dan tipe MIME.</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a></dt>
+  <dd>Mendeklarasikan kategori intent yang diterima, dalam atribut {@code name}. Nilai
+  haruslah nilai string literal dari tindakan, bukan konstanta kelas.
+
+  <p class="note"><strong>Catatan:</strong> Untuk menerima intent implisit, Anda
+  <strong>harus menyertakan</strong> kategori
+{@link android.content.Intent#CATEGORY_DEFAULT} dalam filter intent. Metode
+  {@link android.app.Activity#startActivity startActivity()}dan
+  {@link android.app.Activity#startActivityForResult startActivityForResult()} memperlakukan semua intent
+  seolah-olah mendeklarasikan kategori {@link android.content.Intent#CATEGORY_DEFAULT}.
+  Jika tidak mendeklarasikan kategori ini dalam filter intent Anda, tidak ada intent implisit yang ditetapkan untuk
+ aktivitas Anda.</p>
+  </dd>
+</dl>
+
+<p>Misalnya, ini adalah deklarasi aktivitas dengan filter intent yang diterima intent
+{@link android.content.Intent#ACTION_SEND} bila tipe data berupa teks:</p>
+
+<pre>
+&lt;activity android:name="ShareActivity">
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>Anda bisa membuat filter yang menyertakan lebih dari satu instance
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a>,
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>, atau
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a>.
+Jika Anda melakukannya, Anda hanya perlu memastikan bahwa komponen bisa menangani semua kombinasi
+elemen filter tersebut.</p>
+
+<p>Bila ingin menangani beragam jenis intent, namun hanya dalam kombinasi
+tindakan, data, dan tipe kategori tertentu, maka Anda harus membuat banyak filter intent.</p>
+
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Membatasi akses ke komponen</h2>
+<p>Menggunakan filter intent bukanlah cara yang aman untuk mencegah aplikasi lain memulai
+komponen Anda. Walaupun filter intent membatasi komponen agar hanya merespons
+jenis intent implisit tertentu, aplikasi lain bisa saja memulai komponen aplikasi Anda
+dengan menggunakan intent eksplisit jika pengembangnya menentukan nama komponen Anda.
+Jika perlu <em>hanya aplikasi Anda sendiri</em> yang mampu memulai salah satu komponen,
+atur atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#exported">{@code
+exported}</a> ke {@code "false"} untuk komponen itu.
+</p>
+</div>
+</div>
+
+<p>Intent implisit diuji terhadap filter dengan membandingkan intent dengan masing-masing
+dari ketiga elemen. Agar dikirim ke komponen, intent harus lolos ketiga pengujian tersebut.
+Jika intent gagal dalam salah satu pengujian, sistem Android tidak akan mengirim intent ke
+komponen.  Akan tetapi, karena sebuah komponen dapat memiliki beberapa filter intent, intent yang tidak
+lolos melalui salah satu filter komponen mungkin akan lolos di filter lain.
+Informasi selengkapnya tentang cara sistem menetapkan intent disediakan dalam bagian di bawah ini
+tentang <a href="#Resolution">Resolusi Intent</a>.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Untuk menghindari menjalankan
+{@link android.app.Service} aplikasi yang berbeda secara tidak sengaja, selalu gunakan intent eksplisit untuk memulai layanan Anda sendiri dan jangan
+deklarasikan filter intent untuk layanan Anda.</p>
+
+<p class="note"><strong>Catatan:</strong>
+Untuk semua aktivitas, Anda harus mendeklarasikan filter intent dalam file manifes.
+Akan tetapi, filter untuk penerima siaran bisa didaftarkan secara dinamis dengan memanggil
+{@link android.content.Context#registerReceiver(BroadcastReceiver, IntentFilter, String,
+Handler) registerReceiver()}. Anda nanti bisa mencabut pendaftaran penerima dengan {@link
+android.content.Context#unregisterReceiver unregisterReceiver()}. Dengan begitu aplikasi Anda
+bisa mendengarkan siaran tertentu hanya selama periode waktu yang telah ditetapkan saat aplikasi Anda
+berjalan.</p>
+
+
+
+
+
+
+
+<h3 id="ExampleFilters">Contoh filter</h3>
+
+<p>Untuk lebih memahami beberapa perilaku filter intent, lihatlah cuplikan berikut
+dari file manifes aplikasi berbagi di jaringan sosial.</p>
+
+<pre>
+&lt;activity android:name="MainActivity">
+    &lt;!-- This activity is the main entry, should appear in app launcher -->
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.MAIN" />
+        &lt;category android:name="android.intent.category.LAUNCHER" />
+    &lt;/intent-filter>
+&lt;/activity>
+
+&lt;activity android:name="ShareActivity">
+    &lt;!-- This activity handles "SEND" actions with text data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter&gt;
+    &lt;!-- This activity also handles "SEND" and "SEND_MULTIPLE" with media data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;action android:name="android.intent.action.SEND_MULTIPLE"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="application/vnd.google.panorama360+jpg"/>
+        &lt;data android:mimeType="image/*"/>
+        &lt;data android:mimeType="video/*"/>
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>Aktivitas pertama, {@code MainActivity}, merupakan titik masuk utama aplikasi&mdash;aplikasi yang
+terbuka saat pengguna meluncurkan aplikasi dengan ikon launcher:</p>
+<ul>
+  <li>Tindakan {@link android.content.Intent#ACTION_MAIN}
+  menunjukkan ini adalah titik masuk utama dan tidak mengharapkan data intent apa pun.</li>
+  <li>Kategori {@link android.content.Intent#CATEGORY_LAUNCHER} menunjukjkan bahwa ikon
+  aktivitas ini harus ditempatkan dalam launcher aplikasi sistem. Jika elemen <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+  tidak menetapkan ikon dengan{@code icon}, maka sistem akan menggunakan ikon dari elemen
+<a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>.</li>
+</ul>
+<p>Keduanya harus dipasangkan bersama agar aktivitas muncul dalam launcher aplikasi.</p>
+
+<p>Aktivitas kedua, {@code ShareActivity}, dimaksudkan untuk memudahkan berbagi teks dan konten
+media. Walaupun pengguna mungkin memasuki aktivitas ini dengan mengarah ke aktivitas dari {@code MainActivity},
+pengguna juga bisa memasukkan {@code ShareActivity} secara langsung dari aplikasi lain yang mengeluarkan intent
+implisit yang cocok dengan salah satu dari kedua filter intent.</p>
+
+<p class="note"><strong>Catatan:</strong> Tipe MIME,
+<a href="https://developers.google.com/panorama/android/">{@code
+application/vnd.google.panorama360+jpg}</a>, merupakan tipe data khusus yang menetapkan
+foto panorama, yang bisa Anda tangani dengan API <a href="{@docRoot}reference/com/google/android/gms/panorama/package-summary.html">panorama
+Google</a>.</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+<h2 id="PendingIntent">Menggunakan Intent Tertunda</h2>
+
+<p>Objek {@link android.app.PendingIntent} merupakan pembungkus objek {@link
+android.content.Intent}. Tujuan utama {@link android.app.PendingIntent}
+adalah memberikan izin pada aplikasi asing
+untuk menggunakan {@link android.content.Intent} yang termuat seolah-olah dieksekusi dari
+proses aplikasi Anda sendiri.</p>
+
+<p>Kasus penggunaan utama untuk intent tertunda antara lain:</p>
+<ul>
+  <li>Mendeklarasikan intent untuk dieksekusi saat pengguna melakukan tindakan dengan <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Pemberitahuan</a>
+  ({@link android.app.NotificationManager}
+  sistem Android akan mengeksekusi {@link android.content.Intent}) Anda.
+  <li>Mendeklarasikan intent untuk dieksekusi saat pengguna melakukan tindakan dengan
+<a href="{@docRoot}guide/topics/appwidgets/index.html">App Widget</a>
+  (aplikasi layar Home mengeksekusi {@link android.content.Intent}).
+  <li>Mendeklarasikan intent untuk dieksekusi di waktu yang telah ditetapkan di masa mendatang
+({@link android.app.AlarmManager}  sistem Android akan mengeksekusi {@link android.content.Intent}).
+</ul>
+
+<p>Karena setiap objek {@link android.content.Intent} didesain untuk ditangani oleh tipe
+tertentu dari komponen aplikasi (baik {@link android.app.Activity}, {@link android.app.Service}, maupun
+ {@link android.content.BroadcastReceiver}), jadi {@link android.app.PendingIntent} harus
+dibuat dengan pertimbangan yang sama. Saat menggunakan intent tertunda, aplikasi Anda tidak akan
+mengeksekusi intent dengan panggilan seperti {@link android.content.Context#startActivity
+startActivity()}. Anda harus mendeklarasikan tipe komponen yang dimaksud saat membuat
+{@link android.app.PendingIntent} dengan memanggil metode kreator masing-masing:</p>
+
+<ul>
+  <li>{@link android.app.PendingIntent#getActivity PendingIntent.getActivity()} untuk
+  {@link android.content.Intent} yang memulai {@link android.app.Activity}.</li>
+  <li>{@link android.app.PendingIntent#getService PendingIntent.getService()} untuk
+  {@link android.content.Intent} yang memulai {@link android.app.Service}.</li>
+  <li>{@link android.app.PendingIntent#getBroadcast PendingIntent.getBroadcast()} untuk
+  {@link android.content.Intent} yang memulai {@link android.content.BroadcastReceiver}.</li>
+</ul>
+
+<p>Kecuali jika aplikasi Anda <em>menerima</em> intent tertunda dari aplikasi lain,
+metode di atas untuk membuat {@link android.app.PendingIntent} menjadi satu-satunya metode
+{@link android.app.PendingIntent} yang mungkin Anda butuhkan.</p>
+
+<p>Tiap metode mengambil {@link android.content.Context} aplikasi saat itu,
+{@link android.content.Intent} yang ingin Anda bungkus, dan satu atau beberapa flag yang menetapkan
+cara penggunaan intent (misalnya apakah intent bisa digunakan lebih dari sekali).</p>
+
+<p>Informasi selengkapnya tentang intent tertunda disediakan pada dokumentasi untuk setiap
+kasus penggunaan yang bersangkutan, seperti dalam panduan API <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Notifications</a>
+dan <a href="{@docRoot}guide/topics/appwidgets/index.html">App Widgets</a>.</p>
+
+
+
+
+
+
+
+<h2 id="Resolution">Resolusi Intent</h2>
+
+
+<p>Saat sistem menerima intent implisit yang memulai suatu aktivitas, sistem tersebut akan mencari
+aktivitas terbaik untuk intent dengan membandingkan intent dengan filter intent berdasarkan tiga aspek:</p>
+
+<ul>
+  <li>Tindakan intent
+  <li>Data intent (baik URI maupun tipe data)
+  <li>Kategori intent
+</ul>
+
+<p>Bagian berikut menjelaskan cara pencocokan intent dengan komponen yang sesuai
+sehubungan dengan cara pendeklarasian filter intent dalam file manifes aplikasi.</p>
+
+
+<h3 id="ActionTest">Pengujian tindakan</h3>
+
+<p>Untuk menetapkan tindakan intent yang diterima, filter intent bisa mendeklarasikan nol atau beberapa elemen
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a>.  Misalnya:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.VIEW" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Untuk melewati filter ini, tindakan yang ditetapkan dalam {@link android.content.Intent}
+harus sesuai dengan salah satu tindakan yang tercantum dalam filter.</p>
+
+<p>Jika filter tidak mencantumkan tindakan apa pun, maka tidak ada intent
+yang dicocokkan, jadi semua intent gagal dalam pengujian. Akan tetapi, jika sebuah {@link android.content.Intent}
+tidak menetapkan suatu tindakan, maka akan lolos pengujian (asalkan filter
+berisi setidaknya satu tindakan).</p>
+
+
+
+<h3 id="CategoryTest">Pengujian kategori</h3>
+
+<p>Untuk menetapkan kategori intent yang diterima, filter intent bisa mendeklarasikan nol atau beberapa elemen
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a>.  Misalnya:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+    &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Agar intent bisa lolos pengujian kategori, setiap kategori dalam {@link android.content.Intent}
+harus sesuai dengan kategori dalam filter. Kebalikannya tidak diperlukan&mdash;filter intent bisa
+mendeklarasikan kategori lebih banyak daripada yang ditetapkan dalam {@link android.content.Intent} dan
+{@link android.content.Intent} tetap akan lolos. Oleh karena itu, intent tanpa kategori harus
+selalu lolos pengujian ini, kategori apa pun yang dideklarasikan dalam filter.</p>
+
+<p class="note"><strong>Catatan:</strong>
+Android secara otomatis menerapkan kategori {@link android.content.Intent#CATEGORY_DEFAULT}
+untuk semua intent implisit yang diteruskan ke {@link
+android.content.Context#startActivity startActivity()} dan {@link
+android.app.Activity#startActivityForResult startActivityForResult()}.
+Jadi jika ingin aktivitas Anda menerima intent implisit, aktivitas tersebut harus
+menyertakan kategori untuk{@code "android.intent.category.DEFAULT"} dalam filter intent (seperti
+yang ditampilkan dalam contoh{@code &lt;intent-filter&gt;} sebelumnya.</p>
+
+
+
+<h3 id="DataTest">Pengujian data</h3>
+
+<p>Untuk menetapkan data intent yang diterima, filter intent bisa mendeklarasikan nol atau beberapa elemen
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a>.  Misalnya:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="video/mpeg" android:scheme="http" ... /&gt;
+    &lt;data android:mimeType="audio/mpeg" android:scheme="http" ... /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Tiap elemen <code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+bisa menetapkan struktur URI dan tipe data (tipe media MIME).  Ada atribut
+terpisah &mdash; {@code scheme}, {@code host}, {@code port},
+dan {@code path} &mdash; untuk setiap bagian URI:
+</p>
+
+<p style="margin-left: 2em">{@code &lt;scheme&gt;://&lt;host&gt;:&lt;port&gt;/&lt;path&gt;}</p>
+
+<p>
+Misalnya:
+</p>
+
+<p style="margin-left: 2em">{@code content://com.example.project:200/folder/subfolder/etc}</p>
+
+<p>Dalam URI ini, skemanya adalah {@code content}, host-nya adalah {@code com.example.project},
+port-nya adalah {@code 200}, dan path-nya adalah {@code folder/subfolder/etc}.
+</p>
+
+<p>Tiap atribut bersifat opsional dalam elemen <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>,
+namun ada dependensi linear:</p>
+<ul>
+  <li>Jika skema tidak ditetapkan, host akan diabaikan.</li>
+  <li>Jika host tidak ditetapkan, port akan diabaikan.</li>
+  <li>Jika skema dan host tidak ditetapkan, path akan diabaikan.</li>
+</ul>
+
+<p>Bila URI dalam intent dibandingkan dengan spesifikasi URI dalam filter,
+pembandingannya hanya dengan bagian URI yang disertakan dalam filter. Misalnya:</p>
+<ul>
+  <li>Jika sebuah filter menetapkan hanya satu skema, semua URI dengan skema tersebut akan cocok
+dengan filter.</li>
+  <li>Jika sebuah filter menetapkan satu skema dan satu otoritas namun tanpa path, semua URI
+dengan skema dan otoritas yang sama akan lolos dari filter, apa pun path-nya.</li>
+  <li>Jika sebuah filter menetapkan satu skema, otoritas dan path, hanya URI dengan skema,
+otoritas, dan path sama yang bisa lolos dari filter.</li>
+</ul>
+
+<p class="note"><strong>Catatan:</strong> Spesifikasi path bisa berisi
+wildcard bintang (*) untuk hanya mencocokkan nama path secara parsial.</p>
+
+<p>Pengujian data membandingkan URI maupun tipe MIME dalam intent dengan URI
+dan tipe MIME yang ditetapkan dalam filter.  Aturannya adalah sebagai berikut:
+</p>
+
+<ol type="a">
+<li>Intent yang tidak berisi URI maupun tipe MIME hanya akan lolos
+pengujian jika filter tersebut tidak menetapkan URI atau tipe MIME apa pun.</li>
+
+<li>Intent yang berisi URI namun tidak berisi tipe MIME (baik secara eksplisit maupun tidak langsung dari
+URI) hanya akan lolos pengujian jika URI-nya cocok dengan format URI filter
+dan filternya juga tidak menetapkan tipe MIME.</li>
+
+<li>Intent yang berisi tipe MIME namun tidak berisi URI hanya akan lolos pengujian
+jika filter mencantumkan tipe MIME yang sama dan tidak menetapkan format URI.</li>
+
+<li>Intent yang berisi URI maupun tipe MIME (baik secara eksplisit maupun tidak langsung dari
+URI) hanya akan lolos pengujian bagian tipe MIME jika
+tipe tersebut cocok dengan tipe yang dicantumkan dalam filter.  Ini akan lolos pengujian bagian URI
+jika URI-nya cocok dengan URI dalam filter atau memiliki {@code content:}
+atau URI {@code file:} dan filter tidak menetapkan URI. Dengan kata lain,
+komponen dianggap mendukung data {@code content:} dan {@code file:} jika
+filternya <em>hanya</em> mencantumkan tipe MIME.</p></li>
+</ol>
+
+<p>
+Aturan terakhir ini, aturan (d), mencerminkan harapan
+bahwa komponen mampu mendapatkan data lokal dari file atau penyedia konten.
+Oleh karena itu, filter mereka mencatumkan tipe data saja dan tidak secara eksplisit
+harus menamai skema {@code content:} dan {@code file:}.
+Ini adalah kasus umum.  Elemen <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>
+seperti berikut ini, misalnya, memberi tahu Android bahwa komponen bisa mengambil data gambar dari penyedia
+konten dan menampilkannya:
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="image/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+<p>
+Karena sebagian besar data yang tersedia dikeluarkan oleh penyedia konten, filter yang
+menetapkan tipe data namun bukan URI mungkin adalah yang paling umum.
+</p>
+
+<p>
+Konfigurasi umum yang lain adalah filter dengan skema dan tipe data.  Misalnya
+, elemen <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>
+ seperti berikut ini akan memberi tahu Android bahwa
+komponen bisa mengambil data video dari jaringan untuk melakukan tindakan:
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:scheme="http" android:type="video/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+
+
+<h3 id="imatch">Pencocokan intent</h3>
+
+<p>Intent dicocokkan dengan filter intent selain untuk menemukan komponen
+target yang akan diaktifkan, juga untuk menemukan sesuatu tentang rangkaian
+komponen pada perangkat.  Misalnya, aplikasi Home akan menempatkan launcher aplikasi
+dengan mencari semua aktivitas dengan filter intent yang menetapkan tindakan
+{@link android.content.Intent#ACTION_MAIN} dan
+kategori {@link android.content.Intent#CATEGORY_LAUNCHER}.</p>
+
+<p>Aplikasi Anda bisa menggunakan pencocokan intent dengan cara serupa.
+{@link android.content.pm.PackageManager} memiliki seperangkat metode {@code query...()}
+yang mengembalikan semua komponen yang bisa menerima intent tertentu, dan
+serangkaian metode{@code resolve...()} serupa yang menentukan komponen
+terbaik untuk merespons intent.  Misalnya,
+{@link android.content.pm.PackageManager#queryIntentActivities
+queryIntentActivities()} akan mengembalikan daftar semua aktivitas yang bisa melakukan
+intent yang diteruskan sebagai argumen, dan {@link
+android.content.pm.PackageManager#queryIntentServices
+queryIntentServices()} akan mengembalikan daftar layanan serupa.
+Tidak ada metode yang akan mengaktifkan komponen; mereka hanya mencantumkan komponen yang
+bisa merespons.  Ada metode serupa,
+{@link android.content.pm.PackageManager#queryBroadcastReceivers
+queryBroadcastReceivers()}, untuk penerima siaran.
+</p>
+
+
+
+
diff --git a/docs/html-intl/intl/in/guide/components/loaders.jd b/docs/html-intl/intl/in/guide/components/loaders.jd
new file mode 100644
index 0000000..cd0379b
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/loaders.jd
@@ -0,0 +1,494 @@
+page.title=Aktivitas
+parent.title=Loader
+parent.link=activities.html
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>Dalam dokumen ini</h2>
+    <ol>
+    <li><a href="#summary">Rangkuman Loader API</a></li>
+    <li><a href="#app">Menggunakan Loader dalam Aplikasi</a>
+      <ol>
+        <li><a href="#requirements"></a></li>
+        <li><a href="#starting">Memulai Loader</a></li>
+        <li><a href="#restarting">Me-restart Loader</a></li>
+        <li><a href="#callback">Menggunakan Callback LoaderManager</a></li>
+      </ol>
+    </li>
+    <li><a href="#example">Contoh</a>
+       <ol>
+         <li><a href="#more_examples">Contoh Selengkapnya</a></li>
+        </ol>
+    </li>
+  </ol>
+    
+  <h2>Kelas-kelas utama</h2>
+    <ol>
+      <li>{@link android.app.LoaderManager}</li>
+      <li>{@link android.content.Loader}</li>
+
+    </ol>   
+    
+    <h2>Contoh-contoh terkait</h2>
+   <ol>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a></li>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html">
+LoaderThrottle</a></li>
+   </ol>
+  </div>
+</div>
+
+<p>Diperkenalkan di Android 3.0, loader memudahkan pemuatan data asinkron
+dalam aktivitas atau fragmen. Loader memiliki karakteristik ini:</p>
+  <ul>
+    <li>Loader tersedia untuk setiap {@link android.app.Activity} dan {@link
+android.app.Fragment}.</li>
+    <li>Loader menyediakan pemuatan data asinkron.</li>
+    <li>Loader memantau sumber data mereka dan memberikan hasil baru bila
+konten berubah.</li>
+    <li>Loader secara otomatis menghubungkan kembali ke kursor loader lalu saat
+dibuat kembali setelah perubahan konfigurasi. Karena itu, loader tidak perlu melakukan query ulang
+datanya.</li>
+  </ul>
+ 
+<h2 id="summary">Rangkuman Loader API</h2>
+
+<p>Ada beberapa kelas dan antarmuka yang mungkin dilibatkan dalam menggunakan
+loader pada aplikasi. Semuanya dirangkum dalam tabel ini:</p>
+
+<table>
+  <tr>
+    <th>Kelas/Antarmuka</th>
+    <th>Keterangan</th>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager}</td>
+    <td>Kelas abstrak yang dikaitkan dengan {@link android.app.Activity} atau 
+{@link android.app.Fragment} untuk mengelola satu atau beberapa instance {@link
+android.content.Loader}. Ini membantu aplikasi mengelola
+operasi berjalan lebih lama bersamaan dengan daur hidup {@link android.app.Activity}
+atau {@link android.app.Fragment}; penggunaan paling umumnya adalah dengan 
+{@link android.content.CursorLoader}, akan tetapi aplikasi bebas menulis loader-nya
+ sendiri untuk memuat tipe data lainnya.
+    <br />
+    <br />
+    Hanya ada satu {@link android.app.LoaderManager} per aktivitas atau fragmen. Namun {@link android.app.LoaderManager} bisa memiliki
+beberapa loader.</td>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager.LoaderCallbacks}</td>
+    <td>Antarmuka callback untuk klien berinteraksi dengan {@link
+android.app.LoaderManager}. Misalnya, Anda menggunakan metode callback {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+untuk membuat loader baru.</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.Loader}</td>
+    <td>Kelas abstrak yang melakukan pemuatan data asinkron. Ini
+adalah kelas dasar untuk loader. Biasanya Anda akan menggunakan {@link
+android.content.CursorLoader}, namun Anda bisa menerapkan subkelas sendiri. Selagi
+loader aktif, loader harus memantau sumber datanya dan memberikan hasil
+baru bila konten berubah. </td>
+  </tr>
+  <tr>
+    <td>{@link android.content.AsyncTaskLoader}</td>
+    <td>Loader abstrak yang menyediakan {@link android.os.AsyncTask} untuk melakukan pekerjaan.</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.CursorLoader}</td>
+    <td>Subkelas {@link android.content.AsyncTaskLoader} yang meng-query 
+{@link android.content.ContentResolver} dan mengembalikan {@link
+android.database.Cursor}. Kelas ini mengimplementasikan protokol {@link
+android.content.Loader} dengan cara standar untuk query kursor,
+yang dibuat berdasarkan {@link android.content.AsyncTaskLoader} untuk melakukan query kursor
+pada thread latar belakang agar tidak memblokir UI aplikasi. Menggunakan loader
+ini merupakan cara terbaik untuk memuat data secara asinkron dari {@link
+android.content.ContentProvider}, sebagai ganti melakukan query terkelola melalui
+fragmen atau API aktivitas.</td>
+  </tr>
+</table>
+
+<p>Kelas dan antarmuka dalam tabel di atas merupakan komponen
+esensial yang akan Anda gunakan untuk mengimplementasikan loader dalam aplikasi Anda. Anda tidak memerlukan semuanya
+untuk setiap loader yang dibuat, namun Anda akan selalu memerlukan acuan ke {@link
+android.app.LoaderManager} untuk memulai loader dan implementasi
+kelas {@link android.content.Loader} seperti {@link
+android.content.CursorLoader}. Bagian berikut ini menunjukkan kepada Anda cara menggunakan
+kelas dan antarmuka ini dalam aplikasi.</p>
+
+<h2 id ="app">Menggunakan Loader dalam Aplikasi</h2>
+<p>Bagian ini menjelaskan cara menggunakan loader dalam aplikasi Android. Aplikasi
+yang menggunakan loader biasanya berisi yang berikut ini:</p>
+<ul>
+  <li>{@link android.app.Activity} atau {@link android.app.Fragment}.</li>
+  <li>Instance {@link android.app.LoaderManager}.</li>
+  <li>{@link android.content.CursorLoader} akan memuat data yang didukung oleh {@link
+android.content.ContentProvider}. Atau, Anda dapat mengimplementasikan subkelas sendiri 
+ dari {@link android.content.Loader} atau {@link android.content.AsyncTaskLoader} untuk
+memuat data dari beberapa sumber lain.</li>
+  <li>Implementasi untuk {@link android.app.LoaderManager.LoaderCallbacks}.
+Di sinilah Anda membuat loader baru dan mengelola acuan bagi loader
+yang ada.</li> 
+<li>Cara menampilkan data loader, seperti {@link
+android.widget.SimpleCursorAdapter}.</li>
+  <li>Sumber data, seperti {@link android.content.ContentProvider}, saat menggunakan 
+{@link android.content.CursorLoader}.</li>
+</ul>
+<h3 id="starting">Memulai Loader</h3>
+
+<p>{@link android.app.LoaderManager} mengelola satu atau beberapa instance {@link
+android.content.Loader} dalam {@link android.app.Activity} atau
+{@link android.app.Fragment}. Hanya ada satu {@link
+android.app.LoaderManager} per aktivitas atau fragmen.</p> 
+
+<p>Anda biasanya
+memulai {@link android.content.Loader} dalam metode {@link
+android.app.Activity#onCreate onCreate()} aktivitas, atau dalam metode 
+{@link android.app.Fragment#onActivityCreated onActivityCreated()} fragmen. Anda
+melakukannya dengan cara berikut ini:</p>
+
+<pre>// Prepare the loader.  Either re-connect with an existing one,
+// or start a new one.
+getLoaderManager().initLoader(0, null, this);</pre>
+
+<p>Metode {@link android.app.LoaderManager#initLoader initLoader()} mengambil
+parameter berikut:</p>
+<ul>
+  <li>ID unik yang mengidentifikasi loader. Dalam contoh ini, ID-nya adalah 0.</li>
+<li>Argumen opsional untuk dipasok ke loader
+pada saat pembuatan (dalam contoh ini <code>null</code>).</li> 
+
+<li>Implementasi {@link android.app.LoaderManager.LoaderCallbacks}, yang
+akan dipanggil {@link android.app.LoaderManager} untuk melaporkan kejadian loader. Dalam contoh
+ini, kelas lokal mengimplementasikan antarmuka {@link
+android.app.LoaderManager.LoaderCallbacks}, sehingga meneruskan acuan
+ke dirinya sendiri, {@code this}.</li> 
+</ul>
+<p>Panggilan {@link android.app.LoaderManager#initLoader initLoader()} memastikan bahwa loader
+telah dimulai dan aktif. Ia memiliki dua kemungkinan hasil:</p>
+<ul>
+  <li>Jika loader yang disebutkan oleh ID sudah ada, loader yang dibuat terakhir akan digunakan
+kembali.</li>
+  <li>Jika loader yang disebutkan oleh ID <em>tidak</em> ada,
+{@link android.app.LoaderManager#initLoader initLoader()} akan memicu metode
+{@link android.app.LoaderManager.LoaderCallbacks} {@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}.
+Di sinilah Anda mengimplementasikan kode untuk membuat instance dan mengembalikan loader baru.
+Untuk diskusi selengkapnya, lihat bagian <a href="#onCreateLoader">onCreateLoader</a>.</li>
+</ul>
+<p>Dalam hal ini, implementasi {@link android.app.LoaderManager.LoaderCallbacks}
+yang ditentukan akan dikaitkan dengan loader, dan akan dipanggil bila
+status loader berubah.  Jika saat panggilan ini status pemanggil sudah
+dimulai, dan loader yang diminta sudah ada dan telah menghasilkan
+datanya, maka sistem segera memanggil {@link
+android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+(selama {@link android.app.LoaderManager#initLoader initLoader()}),
+sehingga Anda harus siap bila hal ini terjadi. Lihat <a href="#onLoadFinished">
+onLoadFinished</a> untuk diskusi selengkapnya mengenai callback ini</p>
+
+<p>Perhatikan bahwa metode {@link android.app.LoaderManager#initLoader initLoader()}
+mengembalikan {@link android.content.Loader} yang dibuat, namun Anda tidak
+perlu menangkap acuan ke sana. {@link android.app.LoaderManager} mengelola
+masa hidup loader secara otomatis. {@link android.app.LoaderManager}
+memulai dan menghentikan pemuatan jika perlu, dan menjaga status loader
+dan konten terkaitnya. Seperti yang tersirat di sini, Anda akan jarang berinteraksi dengan loader
+secara langsung (meskipun misalnya menggunakan metode loader untuk menyempurnakan perilaku
+loader, lihat contoh <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a>). 
+Anda paling sering akan menggunakan metode {@link
+android.app.LoaderManager.LoaderCallbacks} untuk mengintervensi proses
+pemuatan saat terjadi kejadian tertentu. Untuk diskusi selengkapnya mengenai topik ini, lihat <a href="#callback">Menggunakan Callback LoaderManager</a>.</p>
+
+<h3 id="restarting">Me-restart Loader</h3>
+
+<p>Bila Anda menggunakan {@link android.app.LoaderManager#initLoader initLoader()}, seperti
+ditampilkan di atas, loader yang ada akan digunakan dengan ID yang ditetapkan jika ada.
+Jika tidak ada, ID akan dibuat. Namun kadang-kadang Anda perlu membuang data lama
+dan mulai dari awal.</p>
+
+<p>Untuk membuang data lama, gunakan {@link
+android.app.LoaderManager#restartLoader restartLoader()}. Misalnya, implementasi
+{@link android.widget.SearchView.OnQueryTextListener} ini akan me-restart
+bila query pengguna berubah. Loader perlu di-restart
+agar dapat menggunakan filter pencarian yang telah direvisi untuk melakukan query baru:</p>
+
+<pre>
+public boolean onQueryTextChanged(String newText) {
+    // Called when the action bar search text has changed.  Update
+    // the search filter, and restart the loader to do a new query
+    // with this filter.
+    mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+    getLoaderManager().restartLoader(0, null, this);
+    return true;
+}</pre>
+
+<h3 id="callback">Menggunakan Callback LoaderManager</h3>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} adalah antarmuka callback
+yang memungkinkan klien berinteraksi dengan {@link android.app.LoaderManager}. </p>
+<p>Loader, khususnya {@link android.content.CursorLoader}, diharapkan
+mempertahankan datanya setelah dihentikan. Ini memungkinkan aplikasi mempertahankan
+datanya di aktivitas atau metode {@link android.app.Activity#onStop
+onStop()} fragmen dan {@link android.app.Activity#onStart onStart()}, sehingga
+bila pengguna kembali ke aplikasi, mereka tidak harus menunggu data
+dimuat kembali. Anda menggunakan metode {@link android.app.LoaderManager.LoaderCallbacks}
+untuk mengetahui waktu membuat loader baru, dan memberi tahu aplikasi kapan
+berhenti menggunakan data loader.</p>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} berisi metode
+ini:</p>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()} —
+Membuat instance dan mengembalikan {@link android.content.Loader} baru untuk ID yang diberikan.
+</li></ul>
+<ul>
+  <li> {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+— Dipanggil bila loader yang dibuat sebelumnya selesai dimuat.
+</li></ul>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onLoaderReset onLoaderReset()}  
+    — Dipanggil bila loader yang dibuat sebelumnya sedang di-reset, sehingga datanya
+tidak tersedia.
+</li>
+</ul>
+<p>Metode ini dijelaskan lebih detail dalam bagian berikutnya.</p>
+
+<h4 id ="onCreateLoader">onCreateLoader</h4>
+
+<p>Saat Anda mencoba mengakses loader (misalnya, melalui {@link
+android.app.LoaderManager#initLoader initLoader()}), ia akan memeriksa untuk mengetahui adanya
+loader yang ditetapkan oleh ID. Jika tidak ada, ia akan memicu metode {@link
+android.app.LoaderManager.LoaderCallbacks} {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}. Di
+sinilah Anda membuat loader baru. Biasanya ini adalah {@link
+android.content.CursorLoader}, namun Anda bisa mengimplementasikan sendiri subkelas {@link
+android.content.Loader}. </p>
+
+<p>Dalam contoh ini, metode callback {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+ akan membuat {@link android.content.CursorLoader}. Anda harus membuat
+{@link android.content.CursorLoader} menggunakan metode konstruktornya, yang
+memerlukan set informasi lengkap untuk melakukan query ke {@link
+android.content.ContentProvider}. Secara khusus, ia memerlukan:</p>
+<ul>
+  <li><em>uri</em> — URI untuk konten yang akan diambil. </li>
+  <li><em>projection</em> — Daftar berisi kolom yang akan dikembalikan. Meneruskan
+<code>null</code> akan mengembalikan semua kolom, jadi tidak efisien. </li>
+  <li><em>selection</em> — Filter yang mendeklarasikan baris yang akan dikembalikan,
+diformat sebagai klausa SQL WHERE (tidak termasuk WHERE itu sendiri). Meneruskan
+<code>null</code> akan mengembalikan semua baris untuk URI yang diberikan. </li>
+  <li><em>selectionArgs</em> — Anda dapat menyertakan ?s dalam pilihan, yang akan
+digantikan dengan nilai dari <em>selectionArgs</em>, agar muncul dalam
+pilihan. Nilai-nilai akan diikat sebagai String. </li>
+  <li><em>sortOrder</em> — Cara menyusun baris, diformat sebagai klausa SQL
+ORDER BY (tidak termasuk ORDER BY itu sendiri). Meneruskan <code>null</code> akan
+menggunakan urutan sortir default, yang mungkin tidak berurutan.</li>
+</ul>
+<p>Misalnya:</p>
+<pre>
+ // If non-null, this is the current filter the user has provided.
+String mCurFilter;
+...
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+    // This is called when a new Loader needs to be created.  This
+    // sample only has one Loader, so we don't care about the ID.
+    // First, pick the base URI to use depending on whether we are
+    // currently filtering.
+    Uri baseUri;
+    if (mCurFilter != null) {
+        baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                  Uri.encode(mCurFilter));
+    } else {
+        baseUri = Contacts.CONTENT_URI;
+    }
+
+    // Now create and return a CursorLoader that will take care of
+    // creating a Cursor for the data being displayed.
+    String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+            + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+            + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+    return new CursorLoader(getActivity(), baseUri,
+            CONTACTS_SUMMARY_PROJECTION, select, null,
+            Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+}</pre>
+<h4 id="onLoadFinished">onLoadFinished</h4>
+
+<p>Metode ini dipanggil bila loader yang dibuat sebelumnya selesai dimuat.
+Metode ini dijamin dipanggil sebelum pelepasan data terakhir
+yang disediakan untuk loader ini.  Di titik ini Anda harus menyingkirkan semua penggunaan
+data lama (karena akan segera dilepas), namun jangan melepas sendiri
+data tersebut karena loader memilikinya dan akan menanganinya.</p>
+
+
+<p>Loader akan melepas data setelah mengetahui bahwa aplikasi tidak
+lagi menggunakannya.  Misalnya, jika data adalah kursor dari {@link
+android.content.CursorLoader}, Anda tidak boleh memanggil {@link
+android.database.Cursor#close close()} sendiri. Jika kursor ditempatkan 
+dalam {@link android.widget.CursorAdapter}, Anda harus menggunakan metode {@link
+android.widget.SimpleCursorAdapter#swapCursor swapCursor()} agar
+{@link android.database.Cursor} lama tidak ditutup. Misalnya:</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.<br
+/>SimpleCursorAdapter mAdapter;
+...
+
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+    // Swap the new cursor in.  (The framework will take care of closing the
+    // old cursor once we return.)
+    mAdapter.swapCursor(data);
+}</pre>
+
+<h4 id="onLoaderReset">onLoaderReset</h4>
+
+<p>Metode ini dipanggil bila loader yang dibuat sebelumnya sedang di-reset, sehingga datanya
+tidak tersedia. Callback ini memungkinkan Anda mengetahui
+kapan data akan dilepas sehingga dapat menghapus acuannya ke callback.  </p>
+<p>Implementasi ini memanggil 
+{@link android.widget.SimpleCursorAdapter#swapCursor swapCursor()}
+dengan nilai <code>null</code>:</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.
+SimpleCursorAdapter mAdapter;
+...
+
+public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+    // This is called when the last Cursor provided to onLoadFinished()
+    // above is about to be closed.  We need to make sure we are no
+    // longer using it.
+    mAdapter.swapCursor(null);
+}</pre>
+
+
+<h2 id="example">Contoh</h2>
+
+<p>Sebagai contoh, berikut ini adalah implementasi penuh {@link
+android.app.Fragment} yang menampilkan {@link android.widget.ListView} berisi
+hasil query terhadap penyedia konten kontak. Ia menggunakan {@link
+android.content.CursorLoader} untuk mengelola query pada penyedia.</p>
+ 
+<p>Agar aplikasi dapat mengakses kontak pengguna, seperti yang ditampilkan dalam contoh ini,
+manifesnya harus menyertakan izin
+{@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS}.</p>
+
+<pre>
+public static class CursorLoaderListFragment extends ListFragment
+        implements OnQueryTextListener, LoaderManager.LoaderCallbacks&lt;Cursor&gt; {
+
+    // This is the Adapter being used to display the list's data.
+    SimpleCursorAdapter mAdapter;
+
+    // If non-null, this is the current filter the user has provided.
+    String mCurFilter;
+
+    @Override public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+
+        // Give some text to display if there is no data.  In a real
+        // application this would come from a resource.
+        setEmptyText(&quot;No phone numbers&quot;);
+
+        // We have a menu item to show in action bar.
+        setHasOptionsMenu(true);
+
+        // Create an empty adapter we will use to display the loaded data.
+        mAdapter = new SimpleCursorAdapter(getActivity(),
+                android.R.layout.simple_list_item_2, null,
+                new String[] { Contacts.DISPLAY_NAME, Contacts.CONTACT_STATUS },
+                new int[] { android.R.id.text1, android.R.id.text2 }, 0);
+        setListAdapter(mAdapter);
+
+        // Prepare the loader.  Either re-connect with an existing one,
+        // or start a new one.
+        getLoaderManager().initLoader(0, null, this);
+    }
+
+    @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+        // Place an action bar item for searching.
+        MenuItem item = menu.add(&quot;Search&quot;);
+        item.setIcon(android.R.drawable.ic_menu_search);
+        item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+        SearchView sv = new SearchView(getActivity());
+        sv.setOnQueryTextListener(this);
+        item.setActionView(sv);
+    }
+
+    public boolean onQueryTextChange(String newText) {
+        // Called when the action bar search text has changed.  Update
+        // the search filter, and restart the loader to do a new query
+        // with this filter.
+        mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+        getLoaderManager().restartLoader(0, null, this);
+        return true;
+    }
+
+    @Override public boolean onQueryTextSubmit(String query) {
+        // Don't care about this.
+        return true;
+    }
+
+    @Override public void onListItemClick(ListView l, View v, int position, long id) {
+        // Insert desired behavior here.
+        Log.i(&quot;FragmentComplexList&quot;, &quot;Item clicked: &quot; + id);
+    }
+
+    // These are the Contacts rows that we will retrieve.
+    static final String[] CONTACTS_SUMMARY_PROJECTION = new String[] {
+        Contacts._ID,
+        Contacts.DISPLAY_NAME,
+        Contacts.CONTACT_STATUS,
+        Contacts.CONTACT_PRESENCE,
+        Contacts.PHOTO_ID,
+        Contacts.LOOKUP_KEY,
+    };
+    public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+        // This is called when a new Loader needs to be created.  This
+        // sample only has one Loader, so we don't care about the ID.
+        // First, pick the base URI to use depending on whether we are
+        // currently filtering.
+        Uri baseUri;
+        if (mCurFilter != null) {
+            baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                    Uri.encode(mCurFilter));
+        } else {
+            baseUri = Contacts.CONTENT_URI;
+        }
+
+        // Now create and return a CursorLoader that will take care of
+        // creating a Cursor for the data being displayed.
+        String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+                + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+                + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+        return new CursorLoader(getActivity(), baseUri,
+                CONTACTS_SUMMARY_PROJECTION, select, null,
+                Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+    }
+
+    public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+        // Swap the new cursor in.  (The framework will take care of closing the
+        // old cursor once we return.)
+        mAdapter.swapCursor(data);
+    }
+
+    public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+        // This is called when the last Cursor provided to onLoadFinished()
+        // above is about to be closed.  We need to make sure we are no
+        // longer using it.
+        mAdapter.swapCursor(null);
+    }
+}</pre>
+<h3 id="more_examples">Contoh Selengkapnya</h3>
+
+<p>Ada beberapa contoh berbeda dalam <strong>ApiDemos</strong> yang
+mengilustrasikan cara menggunakan loader:</p>
+<ul>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a> — Versi lengkap dari
+cuplikan yang ditampilkan di atas.</li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a> — Contoh cara penggunaan throttling untuk
+mengurangi jumlah query dari penyedia konten saat datanya berubah.</li>
+</ul>
+
+<p>Untuk informasi tentang mengunduh dan menginstal contoh SDK, lihat <a href="http://developer.android.com/resources/samples/get.html"> Mendapatkan
+Contoh</a>. </p>
+
diff --git a/docs/html-intl/intl/in/guide/components/processes-and-threads.jd b/docs/html-intl/intl/in/guide/components/processes-and-threads.jd
new file mode 100644
index 0000000..44051bf
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/processes-and-threads.jd
@@ -0,0 +1,411 @@
+page.title=Proses dan Thread
+page.tags=daur hidup,latar belakang
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Dalam dokumen ini</h2>
+<ol>
+<li><a href="#Processes">Proses</a>
+  <ol>
+    <li><a href="#Lifecycle">Daur hidup proses</a></li>
+  </ol>
+</li>
+<li><a href="#Threads">Thread</a>
+  <ol>
+    <li><a href="#WorkerThreads">Thread pekerja</a></li>
+    <li><a href="#ThreadSafe">Metode thread-safe</a></li>
+  </ol>
+</li>
+<li><a href="#IPC">Komunikasi antarproses</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>Bila komponen aplikasi dimulai dan tidak ada komponen aplikasi lain yang 
+berjalan, sistem Android akan memulai proses Linux baru untuk aplikasi dengan satu thread 
+eksekusi. Secara default, semua komponen aplikasi yang sama berjalan dalam proses dan 
+thread yang sama (disebut thread "utama"). Jika komponen aplikasi dimulai dan sudah ada 
+proses untuk aplikasi itu (karena komponen lain dari aplikasi itu sudah ada), maka komponen 
+akan dimulai dalam proses itu dan menggunakan thread eksekusi yang sama. Akan tetapi, Anda bisa 
+mengatur komponen berbeda di aplikasi agar berjalan di proses terpisah, dan Anda bisa membuat thread tambahan untuk 
+setiap proses.</p>
+
+<p>Dokumen ini membahas cara kerja proses dan thread di aplikasi Android.</p>
+
+
+<h2 id="Processes">Proses</h2>
+
+<p>Secara default, semua komponen aplikasi yang sama berjalan dalam proses yang sama dan kebanyakan 
+aplikasi tidak boleh mengubah ini. Akan tetapi, jika Anda merasa perlu mengontrol proses milik
+komponen tertentu, Anda dapat melakukannya dalam file manifes.</p>
+
+<p>Entri manifes untuk setiap tipe elemen komponen&mdash;<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>, <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code
+&lt;service&gt;}</a>, <a href="{@docRoot}guide/topics/manifest/receiver-element.html">{@code
+&lt;receiver&gt;}</a>, dan <a href="{@docRoot}guide/topics/manifest/provider-element.html">{@code
+&lt;provider&gt;}</a>&mdash;mendukung atribut {@code android:process} yang bisa menetapkan 
+dalam proses mana komponen harus dijalankan. Anda bisa mengatur atribut ini agar setiap komponen 
+berjalan dalam prosesnya sendiri atau agar beberapa komponen menggunakan proses yang sama sementara yang lainnya tidak.  Anda juga bisa mengatur
+{@code android:process} agar komponen aplikasi yang berbeda berjalan dalam proses yang sama
+&mdash;sepanjang aplikasi menggunakan ID Linux yang sama dan ditandatangani 
+dengan sertifikat yang sama.</p>
+
+<p>Elemen <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code
+&lt;application&gt;}</a> juga mendukung atribut {@code android:process}, untuk mengatur 
+nilai default yang berlaku bagi semua komponen.</p>
+
+<p>Android bisa memutuskan untuk mematikan proses pada waktu tertentu, bila memori tinggal sedikit dan diperlukan oleh 
+proses lain yang lebih mendesak untuk melayani pengguna. Komponen
+aplikasi yang berjalan dalam proses yang dimatikan maka sebagai konsekuensinya juga akan dimusnahkan.  Proses dimulai 
+kembali untuk komponen itu bila ada lagi pekerjaan untuk mereka lakukan.</p>
+
+<p>Saat memutuskan proses yang akan dimatikan, sistem Android akan mempertimbangkan kepentingan relatifnya bagi
+pengguna.  Misalnya, sistem lebih mudah menghentikan proses yang menjadi host aktivitas yang tidak
+ lagi terlihat di layar, dibandingkan dengan proses yang menjadi host aktivitas yang terlihat. Karena itu, keputusan 
+untuk menghentikan proses bergantung pada keadaan komponen yang berjalan dalam proses tersebut. Aturan
+yang digunakan untuk menentukan proses yang akan dihentikan dibahas di bawah ini. </p>
+
+
+<h3 id="Lifecycle">Daur hidup proses</h3>
+
+<p>Sistem Android mencoba mempertahankan proses aplikasi selama mungkin, namun 
+pada akhirnya perlu menghapus proses lama untuk mengambil kembali memori bagi proses baru atau yang lebih penting.  Untuk
+menentukan proses yang akan
+dipertahankan dan yang harus dimatikan, sistem menempatkan setiap proses ke dalam "hierarki prioritas" berdasarkan 
+komponen yang berjalan dalam proses dan status komponen tersebut.  Proses yang memiliki 
+prioritas terendah akan dimatikan terlebih dahulu, kemudian yang terendah berikutnya, dan seterusnya, jika perlu
+untuk memulihkan sumber daya sistem.</p>
+
+<p>Ada lima tingkatan dalam hierarki prioritas. Daftar berikut berisi beberapa 
+tipe proses berdasarkan urutan prioritas (proses pertama adalah yang <em>terpenting</em> dan 
+<em>dimatikan terakhir</em>):</p>
+
+<ol>
+  <li><b>Proses latar depan</b>
+    <p>Proses yang diperlukan untuk aktivitas yang sedang dilakukan pengguna.  Proses 
+dianggap berada di latar depan jika salah satu kondisi berikut terpenuhi:</p>
+
+      <ul>
+        <li>Proses menjadi host {@link android.app.Activity} yang berinteraksi dengan pengguna dengan metode ({@link
+android.app.Activity}{@link android.app.Activity#onResume onResume()} telah 
+dipanggil).</li>
+
+        <li>Proses menjadi host {@link android.app.Service} yang terikat dengan aktivitas yang sedang berinteraksi dengan 
+pengguna.</li>
+
+        <li>Proses menjadi host {@link android.app.Service} yang berjalan "di latar depan"&mdash;
+layanan telah memanggil{@link android.app.Service#startForeground startForeground()}.
+
+        <li>Proses menjadi host {@link android.app.Service} yang menjalankan salah satu callback
+daur hidupnya ({@link android.app.Service#onCreate onCreate()}, {@link android.app.Service#onStart
+onStart()}, atau {@link android.app.Service#onDestroy onDestroy()}).</li>
+
+        <li>Proses menjadi host {@link android.content.BroadcastReceiver} yang menjalankan metode {@link
+        android.content.BroadcastReceiver#onReceive onReceive()}-nya.</li>
+    </ul>
+
+    <p>Secara umum, hanya ada beberapa proses latar depan pada waktu yang diberikan.  Proses dimatikan hanya sebagai 
+upaya terakhir&mdash; jika memori hampir habis sehingga semuanya tidak bisa terus berjalan.  Pada umumnya, pada 
+titik itu, perangkat dalam keadaan memory paging, sehingga menghentikan beberapa proses latar depan 
+diperlukan agar antarmuka pengguna tetap responsif.</p></li>
+
+  <li><b>Proses yang terlihat</b>
+    <p>Proses yang tidak memiliki komponen latar depan, namun masih bisa 
+memengaruhi apa yang dilihat pengguna di layar. Proses dianggap terlihat jika salah satu kondisi 
+berikut terpenuhi:</p>
+
+      <ul>
+        <li>Proses ini menjadi host {@link android.app.Activity} yang tidak berada di latar depan, namun masih
+terlihat oleh penggunanya (metode {@link android.app.Activity#onPause onPause()} telah dipanggil). 
+Ini bisa terjadi, misalnya, jika aktivitas latar depan memulai dialog, sehingga 
+aktivitas sebelumnya terlihat berada di belakangnya.</li>
+
+        <li>Proses menjadi host {@link android.app.Service} yang terikat dengan aktivitas yang terlihat (atau latar 
+depan)</li>
+      </ul>
+
+      <p>Proses yang terlihat dianggap sangat penting dan tidak akan dimatikan kecuali jika hal itu
+diperlukan agar semua proses latar depan tetap berjalan. </p>
+    </li>
+
+  <li><b>Proses layanan</b>
+    <p>Proses yang menjalankan layanan yang telah dimulai dengan metode {@link
+android.content.Context#startService startService()} dan tidak termasuk dalam salah satu dari dua kategori 
+yang lebih tinggi. Walaupun proses pelayanan tidak langsung terkait dengan semua yang dilihat oleh pengguna, proses ini 
+umumnya melakukan hal-hal yang dipedulikan pengguna (seperti memutar musik di latar belakang 
+atau mengunduh data di jaringan), jadi sistem membuat proses tetap berjalan kecuali memori tidak cukup untuk 
+mempertahankannya bersama semua proses latar depan dan proses yang terlihat. </p>
+  </li>
+
+  <li><b>Proses latar belakang</b>
+    <p>Proses yang menampung aktivitas yang saat ini tidak terlihat oleh pengguna (metode 
+{@link android.app.Activity#onStop onStop()} aktivitas telah dipanggil). Proses ini tidak memiliki dampak 
+langsung pada pengalaman pengguna, dan sistem bisa menghentikannya kapan saja untuk memperoleh kembali memori bagi 
+proses latar depan, proses yang terlihat, 
+atau proses layanan. Biasanya ada banyak proses latar belakang yang berjalan, sehingga disimpan 
+dalam daftar LRU (least recently used atau paling sedikit digunakan) untuk memastikan bahwa proses dengan aktivitas yang paling baru 
+terlihat oleh pengguna sebagai yang terakhir untuk dimatikan. Jika aktivitas mengimplementasikan metode
+ daur hidupnya dengan benar, dan menyimpan statusnya saat ini, menghentikan prosesnya tidak akan memiliki efek 
+yang terlihat pada pengalaman pengguna, karena ketika pengguna kembali ke aktivitas, aktivitas itu memulihkan 
+semua statusnya yang terlihat. Lihat dokumen <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Aktivitas</a>
+ untuk mendapatkan informasi tentang menyimpan dan memulihkan status.</p>
+  </li>
+
+  <li><b>Proses kosong</b>
+    <p>Sebuah proses yang tidak berisi komponen aplikasi aktif apa pun.  Alasan satu-satunya mempertahankan proses 
+seperti ini tetap hidup adalah untuk keperluan caching, meningkatkan waktu mulai (startup) bila
+nanti komponen perlu dijalankan di dalamnya.  Sistem sering menghentikan proses ini untuk menyeimbangkan sumber 
+daya sistem secara keseluruhan antara proses cache dan cache kernel yang mendasarinya.</p>
+  </li>
+</ol>
+
+
+  <p>Android sebisa mungkin memeringkat proses setinggi
+mungkin, berdasarkan prioritas komponen yang sedang aktif dalam proses.  Misalnya, jika suatu proses menjadi host sebuah layanan dan 
+aktivitas yang terlihat, proses akan diperingkat sebagai proses yang terlihat, bukan sebagai proses layanan.</p>
+
+  <p>Selain itu, peringkat proses dapat meningkat karena adanya proses lain yang bergantung padanya
+&mdash;proses yang melayani proses lain tidak bisa diperingkat lebih rendah daripada proses yang 
+sedang dilayaninya. Misalnya, jika penyedia konten dalam proses A melayani klien dalam proses B, atau 
+jika layanan dalam proses A terikat dengan komponen dalam proses B, proses A selalu dipertimbangkan sebagai paling rendah 
+prioritasnya dibandingkan dengan proses B.</p>
+
+  <p>Karena proses yang menjalankan layanan diperingkat lebih tinggi daripada aktivitas latar belakang, 
+aktivitas yang memulai operasi yang berjalan lama mungkin lebih baik memulai <a href="{@docRoot}guide/components/services.html">layanan</a> untuk operasi itu, daripada hanya 
+membuat thread pekerja&mdash;khususnya jika operasi mungkin akan berlangsung lebih lama daripada aktivitas.
+ Misalnya, aktivitas yang mengunggah gambar ke situs web harus memulai layanan 
+untuk mengunggah sehingga unggahan bisa terus berjalan di latar belakang meskipun pengguna meninggalkan aktivitas tersebut.
+Menggunakan layanan akan memastikan operasi paling tidak memiliki prioritas "proses layanan", 
+apa pun yang terjadi pada aktivitas. Ini menjadi alasan yang sama yang membuat penerima siaran harus 
+menjalankan layanan daripada hanya menempatkan operasi yang menghabiskan waktu di thread.</p>
+
+
+
+
+<h2 id="Threads">Thread</h2>
+
+<p>Bila aplikasi diluncurkan, sistem akan membuat thread eksekusi untuk aplikasi tersebut, yang diberi nama, 
+"main". Thread ini sangat penting karena bertugas mengirim kejadian ke widget
+antarmuka pengguna yang sesuai, termasuk kejadian menggambar. Ini juga merupakan thread yang
+membuat aplikasi berinteraksi dengan komponen dari Android UI toolkit (komponen dari paket {@link
+android.widget} dan {@link android.view}). Karena itu, thread 'main' juga terkadang 
+disebut thread UI.</p>
+
+<p>Sistem ini <em>tidak</em> membuat thread terpisah untuk setiap instance komponen. Semua 
+komponen yang berjalan di proses yang sama akan dibuat instance-nya dalam thread UI, dan sistem akan memanggil 
+setiap komponen yang dikirim dari thread itu. Akibatnya, metode yang merespons callback sistem
+ (seperti {@link android.view.View#onKeyDown onKeyDown()} untuk melaporkan tindakan pengguna atau metode callback daur hidup)
+ selalu berjalan di thread UI proses.</p>
+
+<p>Misalnya saat pengguna menyentuh tombol pada layar, thread UI aplikasi akan mengirim kejadian 
+sentuh ke widget, yang selanjutnya menetapkan status ditekan dan mengirim permintaan yang tidak divalidasi ke 
+antrean kejadian. Thread UI akan menghapus antrean permintaan dan memberi tahu widget bahwa widget harus menggambar
+dirinya sendiri.</p>
+
+<p>Saat aplikasi melakukan pekerjaan intensif sebagai respons terhadap interaksi pengguna, model 
+thread tunggal ini bisa menghasilkan kinerja yang buruk kecuali jika Anda mengimplementasikan aplikasi dengan benar. Khususnya jika
+ semua terjadi di thread UI, melakukan operasi yang panjang seperti akses ke jaringan atau query
+database akan memblokir seluruh UI. Bila thread diblokir, tidak ada kejadian yang bisa dikirim,
+termasuk kejadian menggambar. Dari sudut pandang pengguna, aplikasi 
+tampak mogok (hang). Lebih buruk lagi, jika thread UI diblokir selama lebih dari beberapa detik
+(saat ini sekitar 5 detik) pengguna akan ditampilkan dialog "<a href="http://developer.android.com/guide/practices/responsiveness.html">aplikasi tidak
+merespons</a>" (ANR) yang populer karena reputasi buruknya. Pengguna nanti bisa memutuskan untuk keluar dari aplikasi dan menghapus aplikasi 
+jika mereka tidak suka.</p>
+
+<p>Selain itu, toolkit Android UI <em>bukan</em> thread-safe. Jadi, Anda tidak harus memanipulasi 
+UI dari thread pekerja&mdash;Anda harus melakukan semua manipulasi pada antarmuka pengguna dari thread
+UI. Sehingga hanya ada dua aturan untuk model thread tunggal Android:</p>
+
+<ol>
+<li>Jangan memblokir thread UI
+<li>Jangan mengakses toolkit Android UI dari luar thread UI
+</ol>
+
+<h3 id="WorkerThreads">Thread pekerja</h3>
+
+<p>Karena model thread tunggal yang dijelaskan di atas, Anda dilarang memblokir thread 
+UI demi daya respons UI aplikasi. Jika memiliki operasi untuk dijalankan
+yang tidak seketika, Anda harus memastikan untuk melakukannya di thread terpisah (thread "latar belakang" atau
+thread "pekerja").</p>
+
+<p>Misalnya, berikut ini beberapa kode untuk listener klik yang mengunduh gambar dari 
+thread terpisah dan menampilkannya dalam {@link android.widget.ImageView}:</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            Bitmap b = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.setImageBitmap(b);
+        }
+    }).start();
+}
+</pre>
+
+<p>Awalnya hal ini tampak bekerja dengan baik, karena menciptakan thread baru untuk menangani 
+operasi jaringan. Akan tetapi, hal tersebut melanggar aturan kedua model thread tunggal: <em>jangan mengakses
+ toolkit Android UI dari luar thread UI</em>&mdash;sampel ini memodifikasi {@link
+android.widget.ImageView} dari thread pekerja sebagai ganti thread UI. Ini bisa
+mengakibatkan perilaku yang tidak terdefinisi dan tidak diharapkan, yang bisa menyulitkan dan menghabiskan waktu untuk melacaknya.</p>
+
+<p>Untuk memperbaiki masalah ini, Android menawarkan beberapa cara untuk mengakses thread UI dari 
+thread lainnya. Berikut ini daftar metode yang bisa membantu:</p>
+
+<ul>
+<li>{@link android.app.Activity#runOnUiThread(java.lang.Runnable)
+Activity.runOnUiThread(Runnable)}</li>
+<li>{@link android.view.View#post(java.lang.Runnable) View.post(Runnable)}</li>
+<li>{@link android.view.View#postDelayed(java.lang.Runnable, long) View.postDelayed(Runnable,
+long)}</li>
+</ul>
+
+<p>Misalnya, Anda bisa memperbaiki kode di atas dengan menggunakan metode {@link
+android.view.View#post(java.lang.Runnable) View.post(Runnable)}:</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            final Bitmap bitmap = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.post(new Runnable() {
+                public void run() {
+                    mImageView.setImageBitmap(bitmap);
+                }
+            });
+        }
+    }).start();
+}
+</pre>
+
+<p>Kini implementasi ini thread-safe: operasi jaringan dilakukan terpisah dari thread
+ sementara {@link android.widget.ImageView} dimanipulasi dari thread UI.</p>
+
+<p>Akan tetapi, karena operasi semakin kompleks, jenis kode seperti ini bisa semakin rumit 
+dan sulit dipertahankan. Untuk menangani interaksi yang lebih kompleks dengan thread pekerja, Anda bisa mempertimbangkan 
+ penggunaan {@link android.os.Handler}di thread pekerja, untuk memproses pesan yang dikirim dari
+ thread UI. Mungkin solusi terbaiknya adalah memperpanjang kelas {@link android.os.AsyncTask}, 
+yang akan menyederhanakan eksekusi tugas-tugas thread pekerja yang perlu berinteraksi dengan UI.</p>
+
+
+<h4 id="AsyncTask">Menggunakan AsyncTask</h4>
+
+<p>Dengan {@link android.os.AsyncTask}, Anda bisa melakukan pekerjaan asinkron pada antarmuka
+pengguna. AsyncTask memblokir operasi di thread pekerja kemudian mempublikasikan hasilnya
+di thread UI, tanpa mengharuskan Anda untuk menangani sendiri thread dan/atau handler sendiri.</p>
+
+<p>Untuk menggunakannya, Anda harus menempatkan {@link android.os.AsyncTask} sebagai subkelas dan mengimplementasikan metode callback {@link
+android.os.AsyncTask#doInBackground doInBackground()} yang berjalan di kumpulan 
+thread latar belakang. Untuk memperbarui UI, Anda harus mengimplementasikan {@link
+android.os.AsyncTask#onPostExecute onPostExecute()}, yang memberikan hasil dari {@link
+android.os.AsyncTask#doInBackground doInBackground()} dan berjalan di thread UI, jadi Anda bisa 
+memperbarui UI dengan aman. Selanjutnya Anda bisa menjalankan tugas dengan memanggil {@link android.os.AsyncTask#execute execute()}
+dari thread UI.</p>
+
+<p>Misalnya, Anda bisa mengimplementasikan contoh sebelumnya menggunakan {@link android.os.AsyncTask} dengan cara
+ini:</p>
+
+<pre>
+public void onClick(View v) {
+    new DownloadImageTask().execute("http://example.com/image.png");
+}
+
+private class DownloadImageTask extends AsyncTask&lt;String, Void, Bitmap&gt; {
+    /** The system calls this to perform work in a worker thread and
+      * delivers it the parameters given to AsyncTask.execute() */
+    protected Bitmap doInBackground(String... urls) {
+        return loadImageFromNetwork(urls[0]);
+    }
+    
+    /** The system calls this to perform work in the UI thread and delivers
+      * the result from doInBackground() */
+    protected void onPostExecute(Bitmap result) {
+        mImageView.setImageBitmap(result);
+    }
+}
+</pre>
+
+<p>Kini UI aman dan kode jadi lebih sederhana, karena memisahkan pekerjaan ke 
+dalam bagian-bagian yang harus dilakukan pada thread pekerja dan thread UI.</p>
+
+<p>Anda harus membaca acuan {@link android.os.AsyncTask} untuk memahami sepenuhnya 
+cara menggunakan kelas ini, namun berikut ini ikhtisar singkat cara kerjanya:</p>
+
+<ul>
+<li>Anda bisa menetapkan tipe parameter, nilai kemajuan, dan nilai
+ akhir tugas, dengan menggunakan generik</li>
+<li>Metode {@link android.os.AsyncTask#doInBackground doInBackground()} berjalan secara otomatis pada 
+thread pekerja</li>
+<li>{@link android.os.AsyncTask#onPreExecute onPreExecute()}, {@link
+android.os.AsyncTask#onPostExecute onPostExecute()}, dan {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} semuanya dipanggil pada thread UI</li>
+<li>Nilai yang dikembalikan oleh {@link android.os.AsyncTask#doInBackground doInBackground()} akan dikirim ke
+{@link android.os.AsyncTask#onPostExecute onPostExecute()}</li>
+<li>Anda bisa memangil {@link android.os.AsyncTask#publishProgress publishProgress()} setiap saat di {@link
+android.os.AsyncTask#doInBackground doInBackground()} untuk mengeksekusi {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} pada thread UI</li>
+<li>Anda bisa membatalkan tugas ini kapan saja, dari thread mana saja</li>
+</ul>
+
+<p class="caution"><strong>Perhatian:</strong> Masalah lain yang mungkin Anda temui saat menggunakan
+thread pekerja adalah restart tak terduga dalam aktivitas karena <a href="{@docRoot}guide/topics/resources/runtime-changes.html">perubahan konfigurasi runtime</a>
+ (seperti saat pengguna mengubah orientasi layar), yang bisa memusnahkan thread pekerja. Untuk 
+melihat cara mempertahankan tugas selama restart ini dan cara membatalkan 
+tugas dengan benar saat aktivitas dimusnahkan, lihat kode sumber untuk aplikasi sampel <a href="http://code.google.com/p/shelves/">Shelves</a>.</p>
+
+
+<h3 id="ThreadSafe">Metode thread-safe</h3>
+
+<p> Dalam beberapa situasi, metode yang Anda implementasikan bisa dipanggil dari lebih dari satu thread, 
+dan karena itu harus ditulis agar menjadi thread-safe. </p>
+
+<p>Ini terutama terjadi untuk metode yang bisa dipanggil dari jauh &mdash;seperti metode dalam <a href="{@docRoot}guide/components/bound-services.html">layanan terikat</a>. Bila sebuah panggilan pada 
+metode yang dijalankan dalam {@link android.os.IBinder} berasal dari proses yang sama di mana 
+{@link android.os.IBinder IBinder} berjalan, metode ini akan dieksekusi di thread pemanggil.
+Akan tetapi, bila panggilan berasal proses lain, metode akan dieksekusi dalam thread yang dipilih dari
+ kumpulan (pool) thread yang dipertahankan sistem dalam proses yang sama seperti{@link android.os.IBinder
+IBinder} (tidak dieksekusi dalam thread UI proses).  Misalnya, karena metode 
+{@link android.app.Service#onBind onBind()} layanan akan dipanggil dari thread UI 
+proses layanan, metode yang diimplementasikan dalam objek yang dikembalikan {@link android.app.Service#onBind
+onBind()} (misalnya, subkelas yang mengimplementasikan metode RPC) akan dipanggil dari thread
+di pool. Karena layanan bisa memiliki lebih dari satu klien, maka lebih dari satu pool thread bisa melibatkan
+ metode {@link android.os.IBinder IBinder} yang sama sekaligus. Metode {@link android.os.IBinder
+IBinder} karenanya harus diimplementasikan sebagai thread-safe.</p>
+
+<p> Penyedia konten juga bisa menerima permintaan data yang berasal dalam proses lain.
+Meskipun kelas {@link android.content.ContentResolver} dan {@link android.content.ContentProvider}
+ menyembunyikan detail cara komunikasi antarproses dikelola, metode {@link
+android.content.ContentProvider} yang merespons permintaan itu&mdash;metode {@link
+android.content.ContentProvider#query query()}, {@link android.content.ContentProvider#insert
+insert()}, {@link android.content.ContentProvider#delete delete()}, {@link
+android.content.ContentProvider#update update()}, dan {@link android.content.ContentProvider#getType
+getType()}&mdash; dipanggil dari pool thread pada proses penyedia konten, bukan thread UI 
+untuk proses tersebut.  Mengingat metode ini bisa dipanggil dari thread mana pun 
+sekaligus, metode-metode ini juga harus diimplementasikan sebagai thread-safe. </p>
+
+
+<h2 id="IPC">Komunikasi Antarproses</h2>
+
+<p>Android menawarkan mekanisme komunikasi antarproses (IPC) menggunakan panggilan prosedur jauh
+ (RPC), yang mana metode ini dipanggil oleh aktivitas atau komponen aplikasi lain, namun dieksekusi dari 
+jauh (di proses lain), bersama hasil yang dikembalikan ke
+pemanggil. Ini mengharuskan penguraian panggilan metode dan datanya ke tingkat yang bisa 
+dipahami sistem operasi, mentransmisikannya dari proses lokal dan ruang alamat untuk proses jauh 
+dan ruang proses, kemudian merakit kembali dan menetapkannya kembali di sana.  Nilai-nilai yang dikembalikan 
+akan ditransmisikan dalam arah berlawanan.  Android menyediakan semua kode untuk melakukan transaksi IPC
+ ini, sehingga Anda bisa fokus pada pendefinisian dan implementasi antarmuka pemrograman RPC. </p>
+
+<p>Untuk melakukan IPC, aplikasi Anda harus diikat ke layanan, dengan menggunakan {@link
+android.content.Context#bindService bindService()}. Untuk informasi selengkapnya, lihat panduan pengembang <a href="{@docRoot}guide/components/services.html">Layanan</a>.</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For information about how to perform work in the background for an indefinite period of time
+(without a user interface), continue with the <b><a
+href="{@docRoot}guide/components/services.html">Services</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/in/guide/components/recents.jd b/docs/html-intl/intl/in/guide/components/recents.jd
new file mode 100644
index 0000000..dcfcda7
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/recents.jd
@@ -0,0 +1,256 @@
+page.title=Layar Ikhtisar
+page.tags="recents","overview"
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>Dalam dokumen ini</h2>
+  <ol>
+    <li><a href="#adding">Menambahkan Tugas ke Layar Ikhtisar</a>
+      <ol>
+        <li><a href="#flag-new-doc">Menggunakan flag Intent untuk menambahkan tugas</a></li>
+        <li><a href="#attr-doclaunch">Menggunakan atribut Aktivitas untuk menambahkan tugas</a></li>
+      </ol>
+    </li>
+    <li><a href="#removing">Menghapus Tugas</a>
+      <ol>
+        <li><a href="#apptask-remove">Menggunakan kelas AppTask untuk menghapus tugas</a></li>
+        <li><a href="#retain-finished">Mempertahankan tugas yang telah selesai</a></li>
+      </ol>
+    </li>
+  </ol>
+
+  <h2>Kelas-kelas utama</h2>
+  <ol>
+    <li>{@link android.app.ActivityManager.AppTask}</li>
+    <li>{@link android.content.Intent}</li>
+  </ol>
+
+  <h2>Kode contoh</h2>
+  <ol>
+    <li><a href="{@docRoot}samples/DocumentCentricApps/index.html">Aplikasi yang berorientasi dokumen</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>Layar ikhtisar (juga disebut sebagai layar terbaru, daftar tugas terbaru, atau aplikasi terbaru)
+UI tingkat sistem yang mencantumkan <a href="{@docRoot}guide/components/activities.html">
+aktivitas</a> dan <a href="{@docRoot}guide/components/tasks-and-back-stack.html">tugas</a> yang baru saja diakses. Pengguna
+bisa menyusuri daftar ini dan memilih satu tugas untuk dilanjutkan, atau pengguna bisa menghapus tugas dari
+daftar dengan gerakan mengusap. Dengan dirilisnya Android 5.0 (API level 21), beberapa instance aktivitas yang
+sama yang berisi dokumen berbeda dapat muncul sebagai tugas di layar ikhtisar. Misalnya,
+Google Drive mungkin memiliki satu tugas untuk setiap beberapa dokumen Google. Setiap dokumen muncul sebagai
+tugas dalam layar ikhtisar.</p>
+
+<img src="{@docRoot}images/components/recents.png" alt="" width="284" />
+<p class="img-caption"><strong>Gambar 1.</strong> Layar ikhtisar menampilkan tiga dokumen
+Google Drive, masing-masing dinyatakan sebagai tugas terpisah.</p>
+
+<p>Biasanya Anda harus mengizinkan sistem mendefinisikan cara menyatakan tugas dan
+aktivitas di layar ikhtisar, dan Anda tidak perlu memodifikasi perilaku ini.
+Akan tetapi, aplikasi Anda dapat menentukan cara dan waktu munculnya aktivitas di layar ikhtisar. Kelas
+{@link android.app.ActivityManager.AppTask} memungkinkan Anda mengelola tugas, dan flag
+ aktivitas kelas {@link android.content.Intent} memungkinkan Anda menentukan kapan aktivitas ditambahkan atau dihapus dari
+layar ikhtisar. Selain itu, atribut <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> memungkinkan Anda menetapkan perilaku di manifes.</p>
+
+<h2 id="adding">Menambahkan Tugas ke Layar Ikhtisar</h2>
+
+<p>Penggunaan flag kelas {@link android.content.Intent} untuk menambahkan tugas memberi kontrol lebih besar
+atas waktu dan cara dokumen dibuka atau dibuka kembali di layar ikhtisar. Bila menggunakan atribut 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, Anda dapat memilih antara selalu membuka dokumen dalam tugas baru atau menggunakan kembali tugas 
+yang ada untuk dokumen tersebut.</p>
+
+<h3 id="flag-new-doc">Menggunakan flag Intent untuk menambahkan tugas</h3>
+
+<p>Bila membuat dokumen baru untuk aktivitas, Anda memanggil metode 
+{@link android.app.ActivityManager.AppTask#startActivity(android.content.Context, android.content.Intent, android.os.Bundle) startActivity()}
+ dari kelas {@link android.app.ActivityManager.AppTask}, dengan meneruskannya ke intent yang 
+menjalankan aktivitas tersebut. Untuk menyisipkan jeda logis agar sistem memperlakukan aktivitas Anda sebagai tugas
+baru di layar ikhtisar, teruskan flag {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} 
+dalam metode {@link android.content.Intent#addFlags(int) addFlags()} dari {@link android.content.Intent}
+yang memulai aktivitas itu.</p>
+
+<p class="note"><strong>Catatan:</strong> Flag {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+menggantikan flag {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET}, 
+yang tidak digunakan lagi pada Android 5.0 (API level 21).</p>
+
+<p>Jika Anda menetapkan flag {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} saat membuat
+dokumen baru, sistem akan selalu membuat tugas baru dengan aktivitas target sebagai akar.
+Dengan pengaturan ini, dokumen yang sama dapat dibuka di lebih dari satu tugas. Kode berikut memperagakan
+cara aktivitas utama melakukannya:</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+public void createNewDocument(View view) {
+      final Intent newDocumentIntent = newDocumentIntent();
+      if (useMultipleTasks) {
+          newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
+      }
+      startActivity(newDocumentIntent);
+  }
+
+  private Intent newDocumentIntent() {
+      boolean useMultipleTasks = mCheckbox.isChecked();
+      final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+      newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT);
+      newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+      return newDocumentIntent;
+  }
+
+  private static int incrementAndGet() {
+      Log.d(TAG, "incrementAndGet(): " + mDocumentCounter);
+      return mDocumentCounter++;
+  }
+}
+</pre>
+
+<p class="note"><strong>Catatan:</strong> Aktivitas yang dimulai dengan flag {@code FLAG_ACTIVITY_NEW_DOCUMENT}
+ harus telah menetapkan nilai atribut {@code android:launchMode="standard"} (default) dalam
+manifes.</p>
+
+<p>Bila aktivitas utama memulai aktivitas baru, sistem akan mencari tugas yang intent
+-nya cocok dengan nama komponen intent dalam tugas-tugas yang sudah ada dan mencari aktivitas dalam data Intent. Jika tugas
+tidak ditemukan, atau intent ada dalam flag {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}
+, tugas baru akan dibuat dengan aktivitas tersebut sebagai akarnya. Jika ditemukan, sistem akan
+mengedepankan tugas itu dan meneruskan intent baru ke {@link android.app.Activity#onNewIntent onNewIntent()}.
+Aktivitas baru akan mendapatkan intent dan membuat dokumen baru di layar ikhtisar, seperti dalam
+contoh berikut:</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+&#64;Override
+protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_new_document);
+    mDocumentCount = getIntent()
+            .getIntExtra(DocumentCentricActivity.KEY_EXTRA_NEW_DOCUMENT_COUNTER, 0);
+    mDocumentCounterTextView = (TextView) findViewById(
+            R.id.hello_new_document_text_view);
+    setDocumentCounterText(R.string.hello_new_document_counter);
+}
+
+&#64;Override
+protected void onNewIntent(Intent intent) {
+    super.onNewIntent(intent);
+    /* If FLAG_ACTIVITY_MULTIPLE_TASK has not been used, this activity
+    is reused to create a new document.
+     */
+    setDocumentCounterText(R.string.reusing_document_counter);
+}
+</pre>
+
+
+<h3 id="#attr-doclaunch">Menggunakan atribut Aktivitas untuk menambahkan tugas</h3>
+
+<p>Aktivitas juga dapat menetapkan dalam manifesnya agar selalu dimulai ke dalam tugas baru dengan menggunakan
+atribut <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, <a href="{@docRoot}guide/topics/manifest/activity-element.html#dlmode">
+{@code android:documentLaunchMode}</a>. Atribut ini memiliki empat nilai yang menghasilkan efek berikut
+bila pengguna membuka dokumen dengan aplikasi:</p>
+
+<dl>
+  <dt>"{@code intoExisting}"</dt>
+  <dd>Aktivitas menggunakan kembali tugas yang ada untuk dokumen tersebut. Ini sama dengan mengatur flag
+ {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} <em>tanpa</em> mengatur flag
+ {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}, seperti dijelaskan dalam
+ <a href="#flag-new-doc">Menggunakan flag Intent untuk menambahkan tugas</a>, di atas.</dd>
+
+  <dt>"{@code always}"</dt>
+  <dd>Aktivitas ini membuat tugas baru untuk dokumen, meski dokumen sudah dibuka. Menggunakan
+ nilai ini sama dengan menetapkan flag {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+ maupun {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}.</dd>
+
+  <dt>"{@code none”}"</dt>
+  <dd>Aktivitas ini tidak membuat tugas baru untuk dokumen. Layar ikhtisar memperlakukan
+ aktivitas seperti itu secara default: satu tugas ditampilkan untuk aplikasi, yang 
+dilanjutkan dari aktivitas apa pun yang terakhir dipanggil pengguna.</dd>
+
+  <dt>"{@code never}"</dt>
+  <dd>Aktivitas ini tidak membuat tugas baru untuk dokumen. Mengatur nilai ini akan mengesampingkan
+ perilaku flag {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+ dan {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}, jika salah satunya ditetapkan di 
+intent, dan layar ikhtisar menampilkan satu tugas untuk aplikasi, yang dilanjutkan dari
+ aktivitas apa pun yang terakhir dipanggil pengguna.</dd>
+</dl>
+
+<p class="note"><strong>Catatan:</strong> Untuk nilai selain {@code none} dan {@code never}, 
+aktivitas harus didefinisikan dengan {@code launchMode="standard"}. Jika atribut ini tidak ditetapkan, maka
+{@code documentLaunchMode="none"} akan digunakan.</p>
+
+<h2 id="removing">Menghapus Tugas</h2>
+
+<p>Secara default, tugas dokumen secara otomatis dihapus dari layar ikhtisar bila aktivitasnya
+selesai. Anda bisa mengesampingkan perilaku ini dengan kelas {@link android.app.ActivityManager.AppTask},
+dengan flag {@link android.content.Intent} atau atribut <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code>.</p>
+
+<p>Kapan saja Anda bisa mengecualikan tugas dari layar ikhtisar secara keseluruhan dengan menetapkan atribut
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, <a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">
+{@code android:excludeFromRecents}</a> hingga {@code true}.</p>
+
+<p>Anda bisa menetapkan jumlah maksimum tugas yang dapat disertakan aplikasi Anda dalam layar ikhtisar dengan menetapkan
+atribut <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ <a href="{@docRoot}guide/topics/manifest/activity-element.html#maxrecents">{@code android:maxRecents}
+</a> ke satu nilai integer. Nilai default-nya adalah 16. Bila telah mencapai jumlah maksimum, tugas yang terakhir
+digunakan akan dihapus dari layar ikhtisar. Nilai maksimum {@code android:maxRecents}
+ adalah 50 (25 pada perangkat dengan memori sedikit); nilai yang kurang dari 1 tidak berlaku.</p>
+
+<h3 id="#apptask-remove">Menggunakan kelas AppTask untuk menghapus tugas</h3>
+
+<p>Dalam aktivitas yang membuat tugas baru di layar ikhtisar, Anda bisa
+menetapkan kapan menghapus tugas dan menyelesaikan semua aktivitas yang terkait dengannya
+dengan memanggil metode {@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()}.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+public void onRemoveFromRecents(View view) {
+    // The document is no longer needed; remove its task.
+    finishAndRemoveTask();
+}
+</pre>
+
+<p class="note"><strong>Catatan:</strong> Penggunaan metode
+{@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()} 
+akan mengesampingkan penggunaan tag {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS}, seperti 
+dibahas di bawah ini.</p>
+
+<h3 id="#retain-finished">Mempertahankan tugas yang telah selesai</h3>
+
+<p>Jika Anda ingin mempertahankan tugas di layar ikhtisar, sekalipun aktivitas sudah selesai, teruskan
+flag {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} dalam metode
+{@link android.content.Intent#addFlags(int) addFlags()} dari Intent yang memulai aktivitas itu.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+private Intent newDocumentIntent() {
+    final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+    newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT |
+      android.content.Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS);
+    newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+    return newDocumentIntent;
+}
+</pre>
+
+<p>Untuk memperoleh efek yang sama, tetapkan atribut
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ <a href="{@docRoot}guide/topics/manifest/activity-element.html#autoremrecents">
+{@code android:autoRemoveFromRecents}</a> hingga {@code false}. Nilai default-nya adalah {@code true}
+untuk aktivitas dokumen, dan {@code false} untuk aktivitas biasa. Penggunaan atribut ini akan mengesampingkan flag
+{@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS}, yang telah dibahas sebelumnya.</p>
+
+
+
+
+
+
+
diff --git a/docs/html-intl/intl/in/guide/components/services.jd b/docs/html-intl/intl/in/guide/components/services.jd
new file mode 100644
index 0000000..7ecd8cd
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/services.jd
@@ -0,0 +1,813 @@
+page.title=Layanan
+@jd:body
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>Dalam dokumen ini</h2>
+<ol>
+<li><a href="#Basics">Dasar-Dasar</a></li>
+<ol>
+  <li><a href="#Declaring">Mendeklarasikan layanan dalam manifes</a></li>
+</ol>
+<li><a href="#CreatingAService">Membuat Layanan yang Sudah Dimulai</a>
+  <ol>
+    <li><a href="#ExtendingIntentService">Memperluas kelas IntentService</a></li>
+    <li><a href="#ExtendingService">Memperluas kelas Layanan</a></li>
+    <li><a href="#StartingAService">Memulai layanan</a></li>
+    <li><a href="#Stopping">Menghentikan layanan</a></li>
+  </ol>
+</li>
+<li><a href="#CreatingBoundService">Membuat Layanan Terikat</a></li>
+<li><a href="#Notifications">Mengirim Pemberitahuan ke Pengguna</a></li>
+<li><a href="#Foreground">Menjalankan Layanan di Latar Depan</a></li>
+<li><a href="#Lifecycle">Mengelola Daur Hidup Layanan</a>
+<ol>
+  <li><a href="#LifecycleCallbacks">Mengimplementasikan callback daur hidup</a></li>
+</ol>
+</li>
+</ol>
+
+<h2>Kelas-kelas utama</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.app.IntentService}</li>
+</ol>
+
+<h2>Contoh</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.html">{@code
+      ServiceStartArguments}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>Lihat juga</h2>
+<ol>
+<li><a href="{@docRoot}guide/components/bound-services.html">Layanan Terikat</a></li>
+</ol>
+
+</div>
+
+
+<p>{@link android.app.Service} adalah sebuah komponen aplikasi yang bisa melakukan
+operasi yang berjalan lama di latar belakang dan tidak menyediakan antarmuka pengguna. Komponen
+aplikasi lain bisa memulai layanan dan komponen aplikasi tersebut akan terus berjalan
+di latar belakang walaupun pengguna beralih ke aplikasi lain. Selain itu, komponen bisa mengikat ke layanan
+untuk berinteraksi dengannya dan bahkan melakukan komunikasi antarproses (IPC). Misalnya, layanan mungkin
+menangani transaksi jaringan, memutar musik, melakukan file I/O, atau berinteraksi dengan penyedia konten
+dari latar belakang.</p>
+
+<p>Ada dua bentuk dasar layanan:</p>
+
+<dl>
+  <dt>Sudah Dimulai</dt>
+  <dd>Layanan "sudah dimulai" bila komponen aplikasi (misalnya aktivitas) memulainya dengan
+memanggil {@link android.content.Context#startService startService()}. Sesudah dimulai, layanan
+bisa berjalan terus-menerus di latar belakang walaupun komponen yang memulainya telah dimusnahkan. Biasanya,
+layanan yang sudah dimulai akan melakukan operasi tunggal dan tidak mengembalikan hasil ke pemanggilnya.
+Misalnya, layanan bisa mengunduh atau mengunggah file melalui jaringan. Bila operasi selesai,
+layanan seharusnya berhenti sendiri.</dd>
+  <dt>Terikat</dt>
+  <dd>Layanan "terikat" bila komponen aplikasi mengikat kepadanya dengan memanggil {@link
+android.content.Context#bindService bindService()}. Layanan terikat menawarkan antarmuka
+klien-server yang memungkinkan komponen berinteraksi dengan layanan tersebut, mengirim permintaan, mendapatkan hasil dan bahkan
+melakukannya pada sejumlah proses dengan komunikasi antarproses (IPC). Layanan terikat hanya berjalan selama
+ada komponen aplikasi lain yang terikat padanya. Sejumlah komponen bisa terikat pada layanan secara bersamaan,
+namun bila semuanya melepas ikatan, layanan tersebut akan dimusnahkan.</dd>
+</dl>
+
+<p>Walaupun dokumentasi ini secara umum membahas kedua jenis layanan secara terpisah, layanan
+Anda bisa menggunakan keduanya&mdash;layanan bisa dimulai (untuk berjalan terus-menerus) sekaligus memungkinkan pengikatan.
+Cukup mengimplementasikan dua metode callback: {@link
+android.app.Service#onStartCommand onStartCommand()} untuk memungkinkan komponen memulainya dan {@link
+android.app.Service#onBind onBind()} untuk memungkinkan pengikatan.</p>
+
+<p>Apakah aplikasi Anda sudah dimulai, terikat, atau keduanya, semua komponen aplikasi
+bisa menggunakan layanan (bahkan dari aplikasi terpisah), demikian pula semua komponen bisa menggunakan
+suatu aktivitas&mdash;dengan memulainya dengan {@link android.content.Intent}. Akan tetapi, Anda bisa mendeklarasikan
+layanan sebagai privat, pada file manifes, dan memblokir akses dari aplikasi lain. Hal ini
+dibahas selengkapnya di bagian tentang <a href="#Declaring">Mendeklarasikan layanan dalam
+manifes</a>.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Layanan berjalan di
+thread utama proses yang menjadi host-nya&mdash;layanan <strong>tidak</strong> membuat thread-nya sendiri
+dan <strong>tidak</strong> berjalan pada proses terpisah (kecuali bila Anda tentukan demikian). Artinya,
+jika layanan Anda akan melakukan pekerjaan yang membutuhkan tenaga CPU besar atau operasi yang memblokir (seperti
+pemutaran MP3 atau jaringan), Anda perlu membuat thread baru dalam layanan untuk melakukan pekerjaan tersebut. Dengan menggunakan
+thread terpisah, Anda mengurangi risiko terjadinya kesalahan Aplikasi Tidak Merespons (Application Not Responding/ANR) dan
+thread utama aplikasi bisa tetap dikhususkan pada interaksi pengguna dengan aktivitas Anda.</p>
+
+
+<h2 id="Basics">Dasar-Dasar</h2>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Haruskah menggunakan layanan atau thread?</h3>
+  <p>Layanan sekadar komponen yang bisa berjalan di latar belakang walaupun pengguna sedang tidak
+berinteraksi dengan aplikasi Anda. Sehingga, Anda harus membuat layanan bila memang itu
+yang dibutuhkan.</p>
+  <p>Bila Anda perlu melakukan pekerjaan di luar thread utama, namun hanya bila pengguna sedang berinteraksi
+dengan aplikasi, maka Anda harus membuat thread baru sebagai ganti layanan baru. Misalnya,
+bila Anda ingin memutar musik, namun hanya saat aktivitas Anda berjalan, Anda bisa membuat
+thread dalam {@link android.app.Activity#onCreate onCreate()}, mulai menjalankannya di {@link
+android.app.Activity#onStart onStart()}, kemudian menghentikannya di {@link android.app.Activity#onStop
+onStop()}. Pertimbangkan juga untuk menggunakan {@link android.os.AsyncTask} atau {@link android.os.HandlerThread},
+sebagai ganti kelas {@link java.lang.Thread} yang lazim digunakan. Lihat dokumen <a href="{@docRoot}guide/components/processes-and-threads.html#Threads">Proses dan
+Threading</a> untuk informasi selengkapnya tentang thread.</p>
+  <p>Ingatlah jika menggunakan layanan, layanan tersebut tetap berjalan di thread utama aplikasi Anda secara
+default, jadi Anda harus tetap membuat thread baru dalam layanan bila layanan tersebut melakukan operasi yang intensif
+atau operasi yang memblokir.</p>
+</div>
+</div>
+
+<p>Untuk membuat layanan, Anda harus membuat subkelas {@link android.app.Service} (atau
+salah satu dari subkelasnya yang ada). Dalam implementasi, Anda perlu mengesampingkan sebagian metode callback yang
+menangani aspek utama daur hidup layanan dan memberikan mekanisme bagi komponen untuk mengikat
+pada layanan, bila dibutuhkan. Metode callback terpenting yang perlu Anda kesampingkan adalah:</p>
+
+<dl>
+  <dt>{@link android.app.Service#onStartCommand onStartCommand()}</dt>
+    <dd>Sistem akan memanggil metode ini bila komponen lain, misalnya aktivitas,
+meminta dimulainya layanan, dengan memanggil {@link android.content.Context#startService
+startService()}. Setelah metode ini dieksekusi, layanan akan dimulai dan bisa berjalan di
+latar belakang terus-menerus. Jika mengimplementasikan ini, Anda bertanggung jawab menghentikan layanan bila
+bila pekerjaannya selesai, dengan memanggil {@link android.app.Service#stopSelf stopSelf()} atau {@link
+android.content.Context#stopService stopService()}. (Jika hanya ingin menyediakan pengikatan, Anda tidak
+perlu mengimplementasikan metode ini.)</dd>
+  <dt>{@link android.app.Service#onBind onBind()}</dt>
+    <dd>Sistem akan memanggil metode ini bila komponen lain ingin mengikat pada
+layanan (misalnya untuk melakukan RPC), dengan memanggil {@link android.content.Context#bindService
+bindService()}. Dalam mengimplementasikan metode ini, Anda harus menyediakan antarmuka yang digunakan
+klien untuk berkomunikasi dengan layanan, dengan mengembalikan {@link android.os.IBinder}. Anda harus selalu
+mengimplementasikan metode ini, namun jika tidak ingin mengizinkan pengikatan, Anda perlu mengembalikan null.</dd>
+  <dt>{@link android.app.Service#onCreate()}</dt>
+    <dd>Sistem memanggil metode ini bila layanan dibuat untuk pertama kalinya, untuk melakukan prosedur
+penyiapan satu kali (sebelum memanggil {@link android.app.Service#onStartCommand onStartCommand()} atau
+{@link android.app.Service#onBind onBind()}). Bila layanan sudah berjalan, metode ini tidak
+dipanggil.</dd>
+  <dt>{@link android.app.Service#onDestroy()}</dt>
+    <dd>Sistem memanggil metode ini bila layanan tidak lagi digunakan dan sedang dimusnahkan.
+Layanan Anda perlu mengimplementasikannya untuk membersihkan sumber daya seperti thread, listener
+terdaftar, penerima, dll. Ini adalah panggilan terakhir yang diterima layanan.</dd>
+</dl>
+
+<p>Bila komponen memulai layanan dengan memanggil {@link
+android.content.Context#startService startService()} (yang menyebabkan panggilan ke {@link
+android.app.Service#onStartCommand onStartCommand()}), maka layanan
+terus berjalan hingga terhenti sendiri dengan {@link android.app.Service#stopSelf()} atau bila komponen
+lain menghentikannya dengan memanggil {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Bila komponen memanggil
+{@link android.content.Context#bindService bindService()} untuk membuat layanan (dan {@link
+android.app.Service#onStartCommand onStartCommand()} <em>tidak</em> dipanggil), maka layanan hanya berjalan
+selama komponen terikat kepadanya. Setelah layanan dilepas ikatannya dari semua klien,
+sistem akan menghancurkannya.</p>
+
+<p>Sistem Android akan menghentikan paksa layanan hanya bila memori tinggal sedikit dan sistem harus memulihkan
+sumber daya sistem untuk aktivitas yang mendapatkan fokus pengguna. Jika layanan terikat pada suatu aktivitas yang mendapatkan
+fokus pengguna, layanan tersebut lebih kecil kemungkinannya untuk dimatikan, dan jika layanan dideklarasikan untuk <a href="#Foreground">berjalan di latar depan</a> (akan dibahas kemudian), maka sudah hampir pasti ia tidak akan dimatikan.
+Sebaliknya, bila layanan sudah dimulai dan berjalan lama, maka sistem akan menurunkan posisinya
+dalam daftar tugas latar belakang seiring waktu dan layanan akan sangat rentan untuk
+dimatikan&mdash;bila layanan Anda dimulai, maka Anda harus mendesainnya agar bisa menangani restart
+oleh sistem dengan baik. Jika sistem mematikan layanan Anda, layanan akan dimulai kembali begitu sumber daya
+kembali tersedia (tetapi ini juga bergantung pada nilai yang Anda kembalikan dari {@link
+android.app.Service#onStartCommand onStartCommand()}, sebagaimana akan dibahas nanti). Untuk informasi selengkapnya
+tentang kapan sistem mungkin akan memusnahkan layanan, lihat dokumen
+<a href="{@docRoot}guide/components/processes-and-threads.html">Proses dan Threading</a>.</p>
+
+<p>Dalam bagian selanjutnya, Anda akan melihat bagaimana membuat masing-masing tipe layanan dan cara menggunakannya
+dari komponen aplikasi lain.</p>
+
+
+
+<h3 id="Declaring">Mendeklarasikan layanan dalam manifes</h3>
+
+<p>Sebagaimana aktivitas (dan komponen lainnya), Anda harus mendeklarasikan semua layanan dalam file manifes
+aplikasi Anda.</p>
+
+<p>Untuk mendeklarasikan layanan Anda, tambahkan sebuah elemen <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a>
+sebagai anak 
+elemen <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>. Misalnya:</p>
+
+<pre>
+&lt;manifest ... &gt;
+  ...
+  &lt;application ... &gt;
+      &lt;service android:name=".ExampleService" /&gt;
+      ...
+  &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>Lihat acuan elemen <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a>
+untuk informasi selengkapnya tentang cara mendeklarasikan layanan Anda dalam manifes.</p>
+
+<p>Ada atribut lain yang bisa Anda sertakan dalam elemen <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> untuk
+mendefinisikan properti seperti izin yang dibutuhkan untuk memulai layanan dan proses
+tempat berjalannya layanan. <a href="{@docRoot}guide/topics/manifest/service-element.html#nm">{@code android:name}</a> adalah satu-satunya atribut yang diperlukan
+&mdash;atribut tersebut menetapkan nama kelas layanan. Setelah
+mempublikasikan aplikasi, Anda tidak boleh mengubah nama ini, karena jika melakukannya, Anda bisa merusak
+kode karena dependensi terhadap intent eksplisit untuk memulai atau mengikat layanan (bacalah posting blog berjudul <a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Things
+That Cannot Change</a>).
+
+<p>Untuk memastikan aplikasi Anda aman, <strong>selalu gunakan intent eksplisit saat memulai atau mengikat
+{@link android.app.Service} Anda</strong> dan jangan mendeklarasikan filter intent untuk layanan. Jika
+Anda perlu membiarkan adanya ambiguitas tentang layanan mana yang dimulai, Anda bisa
+menyediakan filter intent bagi layanan dan tidak memasukkan nama komponen pada {@link
+android.content.Intent}, namun Anda juga harus menyesuaikan paket bagi intent tersebut dengan {@link
+android.content.Intent#setPackage setPackage()}, yang memberikan klarifikasi memadai bagi
+target layanan.</p>
+
+<p>Anda juga bisa memastikan layanan tersedia hanya bagi aplikasi Anda dengan
+menyertakan atribut <a href="{@docRoot}guide/topics/manifest/service-element.html#exported">{@code android:exported}</a>
+dan mengaturnya ke {@code "false"}. Hal ini efektif menghentikan aplikasi lain agar tidak memulai
+layanan Anda, bahkan saat menggunakan intent eksplisit.</p>
+
+
+
+
+<h2 id="CreatingStartedService">Membuat Layanan yang Sudah Dimulai</h2>
+
+<p>Layanan yang sudah dimulai adalah layanan yang dimulai komponen lain dengan memanggil {@link
+android.content.Context#startService startService()}, yang menyebabkan panggilan ke metode
+{@link android.app.Service#onStartCommand onStartCommand()} layanan.</p>
+
+<p>Bila layanan sudah dimulai, layanan tersebut memiliki daur hidup yang tidak bergantung pada
+komponen yang memulainya dan bisa berjalan terus-menerus di latar belakang walaupun
+komponen yang memulainya dimusnahkan. Dengan sendirinya, layanan akan berhenti sendiri bila pekerjaannya
+selesai dengan memanggil {@link android.app.Service#stopSelf stopSelf()}, atau komponen lain bisa menghentikannya
+dengan memanggil {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Komponen aplikasi seperti aktivitas bisa memulai layanan dengan memanggil {@link
+android.content.Context#startService startService()} dan meneruskan {@link android.content.Intent}
+yang menetapkan layanan dan menyertakan data untuk digunakan layanan. Layanan menerima
+{@link android.content.Intent} ini dalam metode {@link android.app.Service#onStartCommand
+onStartCommand()}.</p>
+
+<p>Sebagai contoh, anggaplah aktivitas perlu menyimpan data ke database online. Aktivitas tersebut bisa
+memulai layanan pendamping dan mengiriminya data untuk disimpan dengan meneruskan intent ke {@link
+android.content.Context#startService startService()}. Layanan akan menerima intent dalam {@link
+android.app.Service#onStartCommand onStartCommand()}, menghubungkan ke Internet dan melakukan
+transaksi database. Bila transaksi selesai, layanan akan berhenti sendiri dan
+dimusnahkan.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Layanan berjalan dalam proses yang sama dengan aplikasi
+tempatnya dideklarasikan dan dalam thread utama aplikasi tersebut, secara default. Jadi, bila layanan Anda
+melakukan operasi yang intensif atau operasi pemblokiran saat pengguna berinteraksi dengan aktivitas dari
+aplikasi yang sama, layanan akan memperlambat kinerja aktivitas. Agar tidak memengaruhi
+kinerja aplikasi, Anda harus memulai thread baru di dalam layanan.</p>
+
+<p>Biasanya, ada dua kelas yang bisa Anda perluas untuk membuat layanan yang sudah dimulai:</p>
+<dl>
+  <dt>{@link android.app.Service}</dt>
+  <dd>Ini adalah kelas dasar untuk semua layanan. Bila memperluas kelas ini, Anda perlu
+membuat thread baru sebagai tempat melaksanakan semua pekerjaan layanan tersebut, karena layanan
+menggunakan thread utama aplikasi Anda secara default, dan hal ini bisa memperlambat
+kinerja aktivitas yang dijalankan aplikasi Anda.</dd>
+  <dt>{@link android.app.IntentService}</dt>
+  <dd>Ini adalah subkelas {@link android.app.Service} yang menggunakan thread pekerja untuk menangani
+semua permintaan memulai, satu per satu. Ini adalah pilihan terbaik jika Anda tidak mengharuskan layanan
+menangani beberapa permintaan sekaligus. Anda cukup mengimplementasikan {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}, yang menerima intent untuk setiap
+permintaan memulai agar bisa melakukan pekerjaan latar belakang.</dd>
+</dl>
+
+<p>Bagian selanjutnya membahas cara mengimplementasikan layanan Anda menggunakan
+salah satu dari kelas-kelas ini.</p>
+
+
+<h3 id="ExtendingIntentService">Memperluas kelas IntentService</h3>
+
+<p>Mengingat kebanyakan layanan yang sudah dimulai tidak perlu menangani beberapa permintaan
+sekaligus (yang bisa berupa skenario multi-threading berbahaya), mungkin Anda sebaiknya mengimplementasikan
+layanan menggunakan kelas {@link android.app.IntentService}.</p>
+
+<p>Berikut ini yang dilakukan {@link android.app.IntentService}:</p>
+
+<ul>
+  <li>Membuat thread pekerja default yang menjalankan semua intent yang disampaikan ke {@link
+android.app.Service#onStartCommand onStartCommand()} terpisah dari thread utama aplikasi
+Anda.</li>
+  <li>Membuat antrean pekerjaan yang meneruskan intent satu per satu ke implementasi {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}, sehingga Anda tidak perlu
+mengkhawatirkan multi-threading.</li>
+  <li>Menghentikan layanan setelah semua permintaan memulai telah ditangani, jadi Anda tidak perlu memanggil
+{@link android.app.Service#stopSelf}.</li>
+  <li>Menyediakan implementasi default {@link android.app.IntentService#onBind onBind()} yang
+mengembalikan null.</li>
+  <li>Menyediakan implementasi default {@link android.app.IntentService#onStartCommand
+onStartCommand()} yang mengirimkan intent ke antrean pekerjaan kemudian ke implementasi {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} Anda.</li>
+</ul>
+
+<p>Oleh karena itu, Anda hanya perlu mengimplementasikan {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} untuk melakukan pekerjaan yang diberikan oleh
+klien. (Akan tetapi, Anda juga perlu menyediakan konstruktor kecil bagi layanan.)</p>
+
+<p>Berikut ini contoh implementasi {@link android.app.IntentService}:</p>
+
+<pre>
+public class HelloIntentService extends IntentService {
+
+  /**
+   * A constructor is required, and must call the super {@link android.app.IntentService#IntentService}
+   * constructor with a name for the worker thread.
+   */
+  public HelloIntentService() {
+      super("HelloIntentService");
+  }
+
+  /**
+   * The IntentService calls this method from the default worker thread with
+   * the intent that started the service. When this method returns, IntentService
+   * stops the service, as appropriate.
+   */
+  &#64;Override
+  protected void onHandleIntent(Intent intent) {
+      // Normally we would do some work here, like download a file.
+      // For our sample, we just sleep for 5 seconds.
+      long endTime = System.currentTimeMillis() + 5*1000;
+      while (System.currentTimeMillis() &lt; endTime) {
+          synchronized (this) {
+              try {
+                  wait(endTime - System.currentTimeMillis());
+              } catch (Exception e) {
+              }
+          }
+      }
+  }
+}
+</pre>
+
+<p>Anda hanya memerlukan: konstruktor dan implementasi {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}.</p>
+
+<p>Jika Anda memutuskan untuk juga mengesampingkan metode callback lain, seperti {@link
+android.app.IntentService#onCreate onCreate()}, {@link
+android.app.IntentService#onStartCommand onStartCommand()}, atau {@link
+android.app.IntentService#onDestroy onDestroy()}, pastikan memanggil implementasi super, sehingga
+{@link android.app.IntentService} bisa menangani hidup thread pekerja dengan baik.</p>
+
+<p>Misalnya, {@link android.app.IntentService#onStartCommand onStartCommand()} harus mengembalikan
+implementasi default (yang merupakan cara penyampaian intent ke {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}):</p>
+
+<pre>
+&#64;Override
+public int onStartCommand(Intent intent, int flags, int startId) {
+    Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+    return super.onStartCommand(intent,flags,startId);
+}
+</pre>
+
+<p>Selain {@link android.app.IntentService#onHandleIntent onHandleIntent()}, satu-satunya metode lain
+yang tidak mengharuskan Anda memanggil super kelas adalah {@link android.app.IntentService#onBind
+onBind()} (namun Anda hanya perlu mengimplementasikannya bila layanan mengizinkan pengikatan).</p>
+
+<p>Dalam bagian berikutnya, Anda akan melihat bagaimana layanan serupa diimplementasikan saat
+memperluas kelas {@link android.app.Service} basis, yang membutuhkan kode lebih banyak lagi, namun mungkin
+cocok jika Anda perlu menangani beberapa permintaan memulai sekaligus.</p>
+
+
+<h3 id="ExtendingService">Memperluas kelas Layanan</h3>
+
+<p>Seperti telah Anda lihat di bagian sebelumnya, menggunakan {@link android.app.IntentService} membuat
+implementasi layanan yang sudah dimulai jadi sangat sederhana. Namun, bila Anda mengharuskan layanan untuk
+melakukan multi-threading (sebagai ganti memproses permintaan memulai melalui antrean pekerjaan), maka Anda
+bisa memperluas kelas {@link android.app.Service} untuk menangani masing-masing intent.</p>
+
+<p>Sebagai perbandingan, contoh kode berikut ini adalah implementasi kelas {@link
+android.app.Service} yang melakukan pekerjaan yang persis sama dengan contoh di atas menggunakan {@link
+android.app.IntentService}. Artinya, untuk setiap permintaan memulai, kode tersebut akan menggunakan thread pekerja
+untuk melakukan pekerjaan dan memproses permintaan satu per satu.</p>
+
+<pre>
+public class HelloService extends Service {
+  private Looper mServiceLooper;
+  private ServiceHandler mServiceHandler;
+
+  // Handler that receives messages from the thread
+  private final class ServiceHandler extends Handler {
+      public ServiceHandler(Looper looper) {
+          super(looper);
+      }
+      &#64;Override
+      public void handleMessage(Message msg) {
+          // Normally we would do some work here, like download a file.
+          // For our sample, we just sleep for 5 seconds.
+          long endTime = System.currentTimeMillis() + 5*1000;
+          while (System.currentTimeMillis() &lt; endTime) {
+              synchronized (this) {
+                  try {
+                      wait(endTime - System.currentTimeMillis());
+                  } catch (Exception e) {
+                  }
+              }
+          }
+          // Stop the service using the startId, so that we don't stop
+          // the service in the middle of handling another job
+          stopSelf(msg.arg1);
+      }
+  }
+
+  &#64;Override
+  public void onCreate() {
+    // Start up the thread running the service.  Note that we create a
+    // separate thread because the service normally runs in the process's
+    // main thread, which we don't want to block.  We also make it
+    // background priority so CPU-intensive work will not disrupt our UI.
+    HandlerThread thread = new HandlerThread("ServiceStartArguments",
+            Process.THREAD_PRIORITY_BACKGROUND);
+    thread.start();
+
+    // Get the HandlerThread's Looper and use it for our Handler
+    mServiceLooper = thread.getLooper();
+    mServiceHandler = new ServiceHandler(mServiceLooper);
+  }
+
+  &#64;Override
+  public int onStartCommand(Intent intent, int flags, int startId) {
+      Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+
+      // For each start request, send a message to start a job and deliver the
+      // start ID so we know which request we're stopping when we finish the job
+      Message msg = mServiceHandler.obtainMessage();
+      msg.arg1 = startId;
+      mServiceHandler.sendMessage(msg);
+
+      // If we get killed, after returning from here, restart
+      return START_STICKY;
+  }
+
+  &#64;Override
+  public IBinder onBind(Intent intent) {
+      // We don't provide binding, so return null
+      return null;
+  }
+
+  &#64;Override
+  public void onDestroy() {
+    Toast.makeText(this, "service done", Toast.LENGTH_SHORT).show();
+  }
+}
+</pre>
+
+<p>Seperti yang bisa Anda lihat, ini membutuhkan lebih banyak pekerjaan daripada menggunakan {@link android.app.IntentService}.</p>
+
+<p>Akan tetapi, karena Anda menangani sendiri setiap panggilan ke {@link android.app.Service#onStartCommand
+onStartCommand()}, Anda bisa melakukan beberapa permintaan sekaligus. Itu bukan yang
+dilakukan contoh ini, namun jika itu yang diinginkan, Anda bisa membuat thread baru untuk setiap
+permintaan dan langsung menjalankannya (sebagai ganti menunggu permintaan sebelumnya selesai).</p>
+
+<p>Perhatikan bahwa metode {@link android.app.Service#onStartCommand onStartCommand()} harus mengembalikan
+integer. Integer tersebut merupakan nilai yang menjelaskan cara sistem melanjutkan layanan dalam
+kejadian yang dimatikan oleh sistem (sebagaimana dibahas di atas, implementasi default {@link
+android.app.IntentService} menangani hal ini untuk Anda, walaupun Anda bisa memodifikasinya). Nilai yang dikembalikan
+dari {@link android.app.Service#onStartCommand onStartCommand()} harus berupa salah satu
+konstanta berikut ini:</p>
+
+<dl>
+  <dt>{@link android.app.Service#START_NOT_STICKY}</dt>
+    <dd>Jika sistem mematikan layanan setelah {@link android.app.Service#onStartCommand
+onStartCommand()} dikembalikan, <em>jangan</em> membuat lagi layanan tersebut, kecuali jika ada intent
+tertunda yang akan disampaikan. Inilah pilihan teraman untuk menghindari menjalankan layanan Anda
+bila tidak diperlukan dan bila aplikasi Anda bisa me-restart pekerjaan yang belum selesai.</dd>
+  <dt>{@link android.app.Service#START_STICKY}</dt>
+    <dd>Jika sistem mematikan layanan setelah {@link android.app.Service#onStartCommand
+onStartCommand()} dikembalikan, buat kembali layanan dan panggil {@link
+android.app.Service#onStartCommand onStartCommand()}, namun <em>jangan</em> menyampaikan ulang intent terakhir.
+Sebagai gantinya, sistem akan memanggil {@link android.app.Service#onStartCommand onStartCommand()} dengan
+intent null, kecuali jika ada intent tertunda untuk memulai layanan, dan dalam hal ini,
+intent tersebut disampaikan. Ini cocok bagi pemutar media (atau layanan serupa) yang tidak
+mengeksekusi perintah, namun berjalan terus-menerus dan menunggu pekerjaan.</dd>
+  <dt>{@link android.app.Service#START_REDELIVER_INTENT}</dt>
+    <dd>Jika sistem mematikan layanan setelah {@link android.app.Service#onStartCommand
+onStartCommand()} kembali, buat kembali layanan dan panggil {@link
+android.app.Service#onStartCommand onStartCommand()} dengan intent terakhir yang disampaikan ke
+layanan. Intent yang tertunda akan disampaikan pada gilirannya. Ini cocok bagi layanan yang
+aktif melakukan pekerjaan yang harus segera dilanjutkan, misalnya mengunduh file.</dd>
+</dl>
+<p>Untuk detail selengkapnya tentang nilai pengembalian ini, lihat dokumentasi acuan untuk setiap
+konstanta.</p>
+
+
+
+<h3 id="StartingAService">Memulai Layanan</h3>
+
+<p>Anda bisa memulai layanan dari aktivitas atau komponen aplikasi lain dengan meneruskan
+{@link android.content.Intent} (yang menetapkan layanan yang akan dimulai) ke {@link
+android.content.Context#startService startService()}. Sistem Android akan memanggil metode {@link
+android.app.Service#onStartCommand onStartCommand()} layanan dan meneruskan {@link
+android.content.Intent} padanya. (Jangan sekali-kali memanggil {@link android.app.Service#onStartCommand
+onStartCommand()} secara langsung.)</p>
+
+<p>Misalnya, aktivitas bisa memulai contoh layanan di bagian sebelumnya ({@code
+HelloSevice}) menggunakan intent eksplisit dengan {@link android.content.Context#startService
+startService()}:</p>
+
+<pre>
+Intent intent = new Intent(this, HelloService.class);
+startService(intent);
+</pre>
+
+<p>Metode {@link android.content.Context#startService startService()} segera kembali dan
+sistem Android akan memanggil metode {@link android.app.Service#onStartCommand
+onStartCommand()} layanan. Jika layanan belum berjalan, sistem mula-mula memanggil {@link
+android.app.Service#onCreate onCreate()}, kemudian memanggil {@link android.app.Service#onStartCommand
+onStartCommand()}.</p>
+
+<p>Jika layanan juga tidak menyediakan pengikatan, intent yang disampaikan dengan {@link
+android.content.Context#startService startService()} adalah satu-satunya mode komunikasi antara
+komponen aplikasi dan layanan. Akan tetapi, jika Anda ingin agar layanan mengirimkan hasilnya kembali, maka
+klien yang memulai layanan bisa membuat {@link android.app.PendingIntent} untuk siaran
+(dengan {@link android.app.PendingIntent#getBroadcast getBroadcast()}) dan menyampaikannya ke layanan
+dalam {@link android.content.Intent} yang memulai layanan. Layanan kemudian bisa menggunakan
+siaran untuk menyampaikan hasil.</p>
+
+<p>Beberapa permintaan untuk memulai layanan menghasilkan beberapa panggilan pula ke
+{@link android.app.Service#onStartCommand onStartCommand()} layanan. Akan tetapi, hanya satu permintaan untuk menghentikan
+layanan (dengan {@link android.app.Service#stopSelf stopSelf()} atau {@link
+android.content.Context#stopService stopService()}) dibutuhkan untuk menghentikannya.</p>
+
+
+<h3 id="Stopping">Menghentikan layanan</h3>
+
+<p>Layanan yang sudah dimulai harus mengelola daur hidupnya sendiri. Artinya, sistem tidak menghentikan atau
+memusnahkan layanan kecuali jika harus memulihkan memori sistem dan layanan
+terus berjalan setelah {@link android.app.Service#onStartCommand onStartCommand()} kembali. Jadi,
+layanan tersebut harus berhenti sendiri dengan memanggil {@link android.app.Service#stopSelf stopSelf()} atau
+komponen lain bisa menghentikannya dengan memanggil {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Setelah diminta untuk berhenti dengan {@link android.app.Service#stopSelf stopSelf()} atau {@link
+android.content.Context#stopService stopService()}, sistem akan menghapus layanan 
+secepatnya.</p>
+
+<p>Akan tetapi, bila layanan Anda menangani beberapa permintaan ke {@link
+android.app.Service#onStartCommand onStartCommand()} sekaligus, Anda tidak boleh menghentikan
+layanan bila Anda baru selesai memproses permintaan memulai, karena setelah itu mungkin Anda sudah menerima permintaan memulai
+yang baru (berhenti pada permintaan pertama akan menghentikan permintaan kedua). Untuk menghindari
+masalah ini, Anda bisa menggunakan {@link android.app.Service#stopSelf(int)} untuk memastikan bahwa permintaan
+Anda untuk menghentikan layanan selalu berdasarkan pada permintaan memulai terbaru. Artinya, bila Anda memanggil {@link
+android.app.Service#stopSelf(int)}, Anda akan meneruskan ID permintaan memulai (<code>startId</code>
+yang disampaikan ke {@link android.app.Service#onStartCommand onStartCommand()}) yang terkait dengan permintaan berhenti
+Anda. Kemudian jika layanan menerima permintaan memulai baru sebelum Anda bisa memanggil {@link
+android.app.Service#stopSelf(int)}, maka ID tidak akan sesuai dan layanan tidak akan berhenti.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Aplikasi Anda perlu menghentikan layanannya
+bila selesai bekerja untuk menghindari pemborosan sumber daya sistem dan tenaga baterai. Jika perlu,
+komponen lain bisa menghentikan layanan secara eksplisit dengan memanggil {@link
+android.content.Context#stopService stopService()}. Bahkan jika Anda mengaktifkan pengikatan bagi layanan,
+Anda harus selalu menghentikan layanan sendiri jika layanan tersebut menerima panggilan ke {@link
+android.app.Service#onStartCommand onStartCommand()}.</p>
+
+<p>Untuk informasi selengkapnya tentang daur hidup layanan, lihat bagian di bawah ini tentang <a href="#Lifecycle">Mengelola Daur Hidup Layanan</a>.</p>
+
+
+
+<h2 id="CreatingBoundService">Membuat Layanan Terikat</h2>
+
+<p>Layanan terikat adalah layanan yang memungkinkan komponen aplikasi untuk mengikatnya dengan memanggil {@link
+android.content.Context#bindService bindService()} guna membuat koneksi yang berlangsung lama
+(dan umumnya tidak mengizinkan komponen untuk <em>memulainya</em> dengan memanggil {@link
+android.content.Context#startService startService()}).</p>
+
+<p>Anda sebaiknya membuat layanan terikat bila ingin berinteraksi dengan layanan dari aktivitas
+dan komponen lain dalam aplikasi Anda atau mengeskpos sebagian fungsionalitas aplikasi Anda ke
+ke aplikasi lain, melalui komunikasi antarproses (IPC).</p>
+
+<p>Untuk membuat layanan terikat, Anda harus mengimplementasikan metode callback {@link
+android.app.Service#onBind onBind()} untuk mengembalikan {@link android.os.IBinder} yang
+mendefinisikan antarmuka bagi komunikasi dengan layanan. Komponen aplikasi lain kemudian bisa memanggil
+{@link android.content.Context#bindService bindService()} untuk mengambil antarmuka dan
+mulai memanggil metode pada layanan. Layanan hanya hidup untuk melayani komponen aplikasi yang
+terikat padanya, jadi bila tidak ada komponen yang terikat pada layanan, sistem akan memusnahkannya
+(Anda <em>tidak</em> perlu menghentikan layanan terikat seperti halnya bila layanan dimulai
+melalui {@link android.app.Service#onStartCommand onStartCommand()}).</p>
+
+<p>Untuk membuat layanan terikat, hal yang perlu dilakukan pertama kali adalah mendefinisikan antarmuka yang menetapkan
+cara klien berkomunikasi dengan layanan. Antarmuka antara layanan
+dan klien ini harus berupa implementasi {@link android.os.IBinder} dan yang harus dikembalikan
+layanan Anda dari metode callback {@link android.app.Service#onBind
+onBind()}. Setelah menerima {@link android.os.IBinder}, klien bisa mulai
+berinteraksi dengan layanan melalui antarmuka tersebut.</p>
+
+<p>Beberapa klien bisa mengikat ke layanan sekaligus. Bila klien selesai berinteraksi dengan
+layanan, klien akan memanggil {@link android.content.Context#unbindService unbindService()} untuk melepas ikatan. Bila
+tidak ada klien yang terikat pada layanan, sistem akan menghapus layanan tersebut.</p>
+
+<p>Ada beberapa cara untuk mengimplementasikan layanan terikat dan implementasinya lebih
+rumit daripada layanan yang sudah dimulai, jadi layanan terikat dibahas dalam dokumen
+terpisah tentang <a href="{@docRoot}guide/components/bound-services.html">Layanan Terikat</a>.</p>
+
+
+
+<h2 id="Notifications">Mengirim Pemberitahuan ke Pengguna</h2>
+
+<p>Setelah berjalan, layanan bisa memberi tahu pengguna tentang suatu kejadian menggunakan <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">Pemberitahuan Toast</a> atau <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Pemberitahuan Baris Status</a>.</p>
+
+<p>Pemberitahuan Toast adalah pesan yang muncul sebentar pada permukaan jendela saat ini
+kemudian menghilang, sementara pemberitahuan baris status memberikan ikon di baris status dengan
+pesan yang bisa dipilih oleh pengguna untuk melakukan suatu tindakan (misalnya memulai suatu aktivitas).</p>
+
+<p>Biasanya, pemberitahuan baris status adalah teknik terbaik bila ada pekerjaan latar belakang yang sudah selesai
+(misalnya file selesai
+diunduh) dan pengguna kini bisa menggunakannya. Bila pengguna memilih pemberitahuan dari
+tampilan diperluas, pemberitahuan akan bisa memulai aktivitas (misalnya menampilkan file yang baru diunduh).</p>
+
+<p>Lihat panduan pengembang <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">Pemberitahuan Toast</a> atau <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Pemberitahuan Baris Status</a>
+untuk informasi selengkapnya.</p>
+
+
+
+<h2 id="Foreground">Menjalankan Layanan di Latar Depan</h2>
+
+<p>Layanan latar depan adalah layanan yang dianggap sebagai sesuatu yang
+diketahui secara aktif oleh pengguna, jadi bukan sesuatu yang akan dihapus oleh sistem bila memori menipis. Sebuah
+layanan latar depan harus memberikan pemberitahuan bagi baris status, yang ditempatkan pada
+heading "Ongoing" yang artinya pemberitahuan tersebut tidak bisa diabaikan kecuali jika layanan
+dihentikan atau dihapus dari latar depan.</p>
+
+<p>Misalnya, pemutar musik yang memutar musik dari suatu layanan harus diatur untuk berjalan di
+latar depan, karena pengguna mengetahui operasi tersebut
+secara eksplisit. Pemberitahuan di baris status bisa menunjukkan lagu saat ini dan memungkinkan
+pengguna untuk menjalankan suatu aktivitas untuk berinteraksi dengan pemutar musik.</p>
+
+<p>Untuk meminta agar layanan Anda berjalan di latar depan, panggil {@link
+android.app.Service#startForeground startForeground()}. Metode ini memerlukan dua parameter: sebuah integer
+yang mengidentifikasi pemberitahuan secara unik dan {@link
+android.app.Notification} untuk baris status. Misalnya:</p>
+
+<pre>
+Notification notification = new Notification(R.drawable.icon, getText(R.string.ticker_text),
+        System.currentTimeMillis());
+Intent notificationIntent = new Intent(this, ExampleActivity.class);
+PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
+notification.setLatestEventInfo(this, getText(R.string.notification_title),
+        getText(R.string.notification_message), pendingIntent);
+startForeground(ONGOING_NOTIFICATION_ID, notification);
+</pre>
+
+<p class="caution"><strong>Perhatian:</strong> ID integer yang Anda berikan ke {@link
+android.app.Service#startForeground startForeground()} tidak boleh 0.</p>
+
+
+<p>Untuk menghapus layanan dari latar depan, panggil {@link
+android.app.Service#stopForeground stopForeground()}. Metode ini memerlukan boolean, yang menunjukkan
+apakah pemberitahuan baris status juga akan dihapus. Metode ini <em>tidak</em> menghentikan
+layanan. Akan tetapi, jika Anda menghentikan layanan saat masih berjalan di latar depan
+maka pemberitahuan juga akan dihapus.</p>
+
+<p>Untuk informasi selengkapnya tentang pemberitahuan, lihat <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Membuat Pemberitahuan
+Baris Status</a>.</p>
+
+
+
+<h2 id="Lifecycle">Mengelola Daur Hidup Layanan</h2>
+
+<p>Daur hidup layanan jauh lebih sederhana daripada daur hidup aktivitas. Akan tetapi, lebih penting lagi adalah
+memerhatikan dengan cermat bagaimana layanan Anda dibuat dan dimusnahkan, karena suatu layanan
+bisa berjalan di latar belakang tanpa disadari oleh pengguna.</p>
+
+<p>Daur hidup layanan&mdash;dari saat dibuat hingga dimusnahkan&mdash;bisa mengikuti
+dua path berbeda:</p>
+
+<ul>
+<li>Layanan yang sudah dimulai
+  <p>Layanan dibuat bila komponen lain memanggil {@link
+android.content.Context#startService startService()}. Layanan kemudian berjalan terus-menerus dan harus
+berhenti sendiri dengan memanggil {@link
+android.app.Service#stopSelf() stopSelf()}. Komponen lain juga bisa menghentikan
+layanan dengan memanggil {@link android.content.Context#stopService
+stopService()}. Bila layanan dihentikan, sistem akan menghancurkannya.</p></li>
+
+<li>Layanan terikat
+  <p>Layanan dibuat bila komponen lain (klien) memanggil {@link
+android.content.Context#bindService bindService()}. Klien kemudian berkomunikasi dengan layanan
+melalui antarmuka {@link android.os.IBinder}. Klien bisa menutup koneksi dengan memanggil
+{@link android.content.Context#unbindService unbindService()}. Sejumlah klien bisa mengikat pada
+layanan yang sama dan bila semuanya melepas ikatan, sistem akan memusnahkan layanan tersebut. (Layanan
+<em>tidak</em> perlu berhenti sendiri.)</p></li>
+</ul>
+
+<p>Kedua path tersebut tidak benar-benar terpisah. Artinya, Anda bisa mengikat ke layanan yang sudah
+dimulai dengan {@link android.content.Context#startService startService()}. Misalnya, layanan
+musik latar belakang bisa dimulai dengan memanggil {@link android.content.Context#startService
+startService()} dengan {@link android.content.Intent} yang mengidentifikasi musik yang akan diputar. Kemudian,
+mungkin saat pengguna ingin mengontrol pemutar musik atau mendapatkan informasi
+tentang lagu yang diputar, aktivitas bisa mengikat ke layanan dengan memanggil {@link
+android.content.Context#bindService bindService()}. Dalam kasus seperti ini, {@link
+android.content.Context#stopService stopService()} atau {@link android.app.Service#stopSelf
+stopSelf()} tidak menghentikan layanan sampai semua klien melepas ikatan. </p>
+
+
+<h3 id="LifecycleCallbacks">Mengimplementasikan callback daur hidup</h3>
+
+<p>Seperti halnya aktivitas, layanan memiliki metode callback daur hidup yang bisa Anda implementasikan
+untuk memantau perubahan status layanan dan melakukan pekerjaan pada waktu yang tepat. Layanan skeleton
+berikut memperagakan setiap metode daur hidup:</p>
+
+<pre>
+public class ExampleService extends Service {
+    int mStartMode;       // indicates how to behave if the service is killed
+    IBinder mBinder;      // interface for clients that bind
+    boolean mAllowRebind; // indicates whether onRebind should be used
+
+    &#64;Override
+    public void {@link android.app.Service#onCreate onCreate}() {
+        // The service is being created
+    }
+    &#64;Override
+    public int {@link android.app.Service#onStartCommand onStartCommand}(Intent intent, int flags, int startId) {
+        // The service is starting, due to a call to {@link android.content.Context#startService startService()}
+        return <em>mStartMode</em>;
+    }
+    &#64;Override
+    public IBinder {@link android.app.Service#onBind onBind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()}
+        return <em>mBinder</em>;
+    }
+    &#64;Override
+    public boolean {@link android.app.Service#onUnbind onUnbind}(Intent intent) {
+        // All clients have unbound with {@link android.content.Context#unbindService unbindService()}
+        return <em>mAllowRebind</em>;
+    }
+    &#64;Override
+    public void {@link android.app.Service#onRebind onRebind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()},
+        // after onUnbind() has already been called
+    }
+    &#64;Override
+    public void {@link android.app.Service#onDestroy onDestroy}() {
+        // The service is no longer used and is being destroyed
+    }
+}
+</pre>
+
+<p class="note"><strong>Catatan:</strong> Tidak seperti metode callback daur hidup aktivitas, Anda
+<em>tidak</em> perlu memanggil implementasi superkelas metode callback tersebut.</p>
+
+<img src="{@docRoot}images/service_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Gambar 2.</strong> Daur hidup layanan. Diagram di sebelah kiri
+menampilkan daur hidup bila layanan dibuat dengan {@link android.content.Context#startService
+startService()} dan diagram di sebelah kanan menampilkan daur hidup bila layanan dibuat
+dengan {@link android.content.Context#bindService bindService()}.</p>
+
+<p>Dengan mengimplementasikan metode-metode ini, Anda bisa memantau dua loop tersarang (nested loop) daur hidup layanan: </p>
+
+<ul>
+<li><strong>Seluruh masa pakai</strong> layanan terjadi antara saat {@link
+android.app.Service#onCreate onCreate()} dipanggil dan saat {@link
+android.app.Service#onDestroy} kembali. Seperti halnya aktivitas, layanan melakukan penyiapan awal di
+{@link android.app.Service#onCreate onCreate()} dan melepaskan semua sisa sumber daya yang ada di {@link
+android.app.Service#onDestroy onDestroy()}.  Misalnya,
+layanan pemutar musik bisa membuat thread tempat musik akan diputar dalam {@link
+android.app.Service#onCreate onCreate()}, kemudian menghentikan thread tersebut dalam {@link
+android.app.Service#onDestroy onDestroy()}.
+
+<p>Metode {@link android.app.Service#onCreate onCreate()} dan {@link android.app.Service#onDestroy
+onDestroy()} diperlukan semua layanan, baik yang
+dibuat oleh {@link android.content.Context#startService startService()} maupun {@link
+android.content.Context#bindService bindService()}.</p></li>
+
+<li><strong>Masa pakai aktif</strong> layanan dimulai dengan panggilan ke {@link
+android.app.Service#onStartCommand onStartCommand()} atau {@link android.app.Service#onBind onBind()}.
+Masing-masing metode diberikan {@link
+android.content.Intent} yang diteruskan ke {@link android.content.Context#startService
+startService()} atau {@link android.content.Context#bindService bindService()}.
+<p>Jika layanan telah dimulai, masa pakai aktif akan berakhir pada saat yang sama dengan
+berakhirnya seluruh masa pakai (layanan masih aktif bahkan setelah {@link android.app.Service#onStartCommand
+onStartCommand()} kembali). Jika layanan tersebut terikat, masa pakai aktifnya akan berakhir bila {@link
+android.app.Service#onUnbind onUnbind()} kembali.</p>
+</li>
+</ul>
+
+<p class="note"><strong>Catatan:</strong> Meskipun layanan yang sudah dimulai dihentikan dengan panggilan ke
+{@link android.app.Service#stopSelf stopSelf()} atau {@link
+android.content.Context#stopService stopService()}, tidak ada callback tersendiri bagi
+layanan tersebut (tidak ada callback {@code onStop()}). Jadi, kecuali jika layanan terikat ke klien,
+sistem akan memusnahkannya bila layanan dihentikan&mdash;{@link
+android.app.Service#onDestroy onDestroy()} adalah satu-satunya callback yang diterima.</p>
+
+<p>Gambar 2 mengilustrasikan metode callback yang lazim bagi suatu layanan. Walaupun gambar tersebut memisahkan
+layanan yang dibuat oleh {@link android.content.Context#startService startService()} dari layanan
+yang dibuat oleh {@link android.content.Context#bindService bindService()}, ingatlah
+bahwa suatu layanan, bagaimana pun dimulainya, bisa memungkinkan klien mengikat padanya.
+Jadi, suatu layanan yang awalnya dimulai dengan {@link android.app.Service#onStartCommand
+onStartCommand()} (oleh klien yang memanggil {@link android.content.Context#startService startService()})
+masih bisa menerima panggilan ke {@link android.app.Service#onBind onBind()} (bila klien memanggil
+{@link android.content.Context#bindService bindService()}).</p>
+
+<p>Untuk informasi selengkapnya tentang membuat layanan yang menyediakan pengikatan, lihat dokumen <a href="{@docRoot}guide/components/bound-services.html">Layanan Terikat</a>,
+yang menyertakan informasi selengkapnya tentang metode callback {@link android.app.Service#onRebind onRebind()}
+di bagian tentang <a href="{@docRoot}guide/components/bound-services.html#Lifecycle">Mengelola Daur Hidup
+Layanan Terikat</a>.</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>To learn how to query data from the system or other applications (such as contacts or media
+stored on the device), continue with the <b><a
+href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a></b>
+document.</p>
+-->
diff --git a/docs/html-intl/intl/in/guide/components/tasks-and-back-stack.jd b/docs/html-intl/intl/in/guide/components/tasks-and-back-stack.jd
new file mode 100644
index 0000000..279442f
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/components/tasks-and-back-stack.jd
@@ -0,0 +1,578 @@
+page.title=Tugas dan Back-Stack
+parent.title=Aktivitas
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Dalam dokumen ini</h2>
+<ol>
+<li><a href="#ActivityState">Menyimpan Status Aktivitas</a></li></li>
+<li><a href="#ManagingTasks">Mengelola Tugas</a>
+  <ol>
+    <li><a href="#TaskLaunchModes">Mendefinisikan mode peluncuran</a></li>
+    <li><a href="#Affinities">Menangani afinitas</a></li>
+    <li><a href="#Clearing">Menghapus back-stack</a></li>
+    <li><a href="#Starting">Memulai tugas</a></li>
+  </ol>
+</li>
+</ol>
+
+<h2>Artikel</h2>
+<ol>
+  <li><a href="http://android-developers.blogspot.com/2010/04/multitasking-android-way.html">
+  Multitasking Ala Android</a></li>
+</ol>
+
+<h2>Lihat juga</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/navigation.html">Desain Android:
+Navigasi</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html">Elemen manifes 
+{@code &lt;activity&gt;}</a></li>
+  <li><a href="{@docRoot}guide/components/recents.html">Layar Ikhtisar</a></li>
+</ol>
+</div>
+</div>
+
+
+<p>Sebuah aplikasi biasanya berisi beberapa <a href="{@docRoot}guide/components/activities.html">aktivitas</a>. Setiap aktivitas
+harus didesain dengan jenis tindakan tertentu yang bisa dilakukan pengguna dan bisa memulai aktivitas
+lain. Misalnya, aplikasi email mungkin memiliki satu aktivitas untuk menampilkan daftar pesan baru.
+Bila pengguna memilih sebuah pesan, aktivitas baru akan terbuka untuk melihat pesan tersebut.</p>
+
+<p>Aktivitas bahkan bisa memulai aktivitas yang ada dalam aplikasi lain di perangkat. Misalnya
+, jika aplikasi Anda ingin mengirim pesan email, Anda bisa mendefinisikan intent untuk melakukan tindakan
+"kirim" dan menyertakan sejumlah data, seperti alamat email dan pesan. Aktivitas dari aplikasi
+lain yang mendeklarasikan dirinya untuk menangani jenis intent ini akan terbuka. Dalam hal ini, intent
+tersebut untuk mengirim email, sehingga aktivitas "menulis" pada aplikasi email akan dimulai (jika beberapa aktivitas
+mendukung intent yang sama, maka sistem akan memungkinkan pengguna memilih mana yang akan digunakan). Bila email telah
+dikirim, aktivitas Anda akan dilanjutkan dan seolah-olah aktivitas email adalah bagian dari aplikasi Anda. Meskipun
+aktivitas mungkin dari aplikasi yang berbeda, Android akan tetap mempertahankan pengalaman pengguna yang mulus
+dengan menjalankan kedua aktivitas dalam <em>tugas</em> yang sama.</p>
+
+<p>Tugas adalah kumpulan aktivitas yang berinteraksi dengan pengguna 
+saat melakukan pekerjaan tertentu. Aktivitas tersebut diatur dalam tumpukan (<em>back-stack</em>), dalam
+urutan membuka setiap aktivitas.</p>
+
+<!-- SAVE FOR WHEN THE FRAGMENT DOC IS ADDED
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h3>Adding fragments to a task's back stack</h3>
+
+<p>Your activity can also include {@link android.app.Fragment}s to the back stack. For example,
+suppose you have a two-pane layout using fragments, one of which is a list view (fragment A) and the
+other being a layout to display an item from the list (fragment B). When the user selects an item
+from the list, fragment B is replaced by a new fragment (fragment C). In this case, it might be
+desireable for the user to navigate back to reveal fragment B, using the <em>Back</em> button.</p>
+<p>In order to add fragment B to the back stack so that this is possible, you must call {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} before you {@link
+android.app.FragmentTransaction#commit()} the transaction that replaces fragment B with fragment
+C.</p>
+<p>For more information about using fragments and adding them to the back stack, see the {@link
+android.app.Fragment} class documentation.</p>
+
+</div>
+</div>
+-->
+
+<p>Layar Home perangkat adalah tempat memulai hampir semua tugas. Bila pengguna menyentuh ikon di launcher
+aplikasi
+(atau pintasan pada layar Home), tugas aplikasi tersebut akan muncul pada latar depan. Jika tidak ada
+tugas untuk aplikasi (aplikasi tidak digunakan baru-baru ini), maka tugas baru
+akan dibuat dan aktivitas "utama" untuk aplikasi tersebut akan terbuka sebagai aktivitas akar dalam back-stack.</p>
+
+<p>Bila aktivitas saat ini dimulai lagi, aktivitas baru akan didorong ke atas back-stack dan
+mengambil fokus. Aktivitas sebelumnya tetap dalam back-stack, namun dihentikan. Bila aktivitas
+dihentikan, sistem akan mempertahankan status antarmuka penggunanya saat ini. Bila pengguna menekan tombol
+<em>Back</em>
+, aktivitas saat ini akan dikeluarkan dari atas back-stack (aktivitas dimusnahkan) dan
+ aktivitas sebelumnya dilanjutkan (status UI sebelumnya dipulihkan). Aktivitas dalam back-stack
+tidak pernah disusun ulang, hanya didorong dan dikeluarkan dari back-stack&mdash;yang didorong ke back-stack saat dimulai oleh
+aktivitas saat ini dan dikeluarkan bila pengguna meninggalkannya menggunakan tombol <em>Back</em>. Dengan demikian,
+back-stack
+beroperasi sebagai struktur objek "masuk terakhir, keluar pertama". Gambar 1 melukiskan perilaku
+ini dengan jangka waktu yang menunjukkan kemajuan antar aktivitas beserta 
+back-stack pada setiap waktu.</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack.png" alt="" />
+<p class="img-caption"><strong>Gambar 1.</strong> Representasi tentang cara setiap aktivitas baru dalam
+tugas menambahkan item ke back-stack. Bila pengguna menekan tombol <em>Back</em>, aktivitas
+saat ini
+akan dimusnahkan dan aktivitas sebelumnya dilanjutkan.</p>
+
+
+<p>Jika pengguna terus menekan <em>Back</em>, maka setiap aktivitas dalam back-stack akan dikeluarkan untuk
+menampilkan
+yang sebelumnya, sampai pengguna kembali ke layar Home (atau aktivitas mana pun yang sedang dijalankan saat tugas
+dimulai. Bila semua aktivitas telah dihapus dari back-stack, maka tugas tidak akan ada lagi.</p>
+
+<div class="figure" style="width:287px">
+<img src="{@docRoot}images/fundamentals/diagram_multitasking.png" alt="" /> <p
+class="img-caption"><strong>Gambar 2.</strong> Dua tugas: Tugas B menerima interaksi pengguna
+di latar depan, sedangkan Tugas A di latar belakang, menunggu untuk dilanjutkan.</p>
+</div>
+<div class="figure" style="width:215px">
+  <img src="{@docRoot}images/fundamentals/diagram_multiple_instances.png" alt="" /> <p
+class="img-caption"><strong>Gambar 3.</strong> Satu aktivitas dibuat instance-nya beberapa kali.</p>
+</div>
+
+<p>Tugas adalah unit kohesif yang bisa dipindahkan ke "latar belakang" bila pengguna memulai tugas baru atau masuk ke
+layar Home, melalui tombol<em>Home</em>. Sementara di latar belakang, semua aktivitas dalam
+tugas
+dihentikan, namun back-stack untuk tugas tidak berubah&mdash;tugas kehilangan fokus saat
+tugas lain berlangsung, seperti yang ditampilkan dalam gambar 2. Kemudian, tugas bisa kembali ke "latar depan" agar pengguna
+bisa melanjutkan tugas di tempat menghentikannya. Anggaplah, misalnya, tugas saat ini (Tugas A) memiliki tiga
+aktivitas dalam back-stack&mdash;dua pada aktivitas saat ini. Pengguna menekan tombol <em>Home</em>
+, kemudian
+memulai aplikasi baru dari launcher aplikasi. Bila muncul layar Home, Tugas A akan beralih
+ke latar belakang. Bila aplikasi baru dimulai, sistem akan memulai tugas untuk aplikasi tersebut
+(Tugas B) dengan back-stack aktivitas sendiri. Setelah berinteraksi dengan aplikasi
+tersebut, pengguna akan kembali ke Home lagi dan memilih aplikasi yang semula
+memulai Tugas A. Sekarang, Tugas A muncul di
+latar depan&mdash;ketiga aktivitas dalam back-stack tidak berubah dan aktivitas di atas
+back-stack akan dilanjutkan. Pada
+titik ini pengguna juga bisa beralih kembali ke Tugas B dengan masuk ke Home dan memilih ikon aplikasi
+yang memulai tugas tersebut (atau dengan memilih tugas aplikasi dari
+<a href="{@docRoot}guide/components/recents.html">layar ikhtisar</a>).
+Ini adalah contoh dari melakukan multitasking di Android.</p>
+
+<p class="note"><strong>Catatan:</strong> Beberapa tugas bisa berlangsung di latar belakang secara bersamaan.
+Akan tetapi, jika pengguna menjalankan banyak tugas di latar belakang sekaligus, sistem mungkin mulai
+menghapus aktivitas latar belakang untuk memulihkan memori, yang akan menyebabkan status aktivitas hilang.
+Lihat bagian berikut tentang <a href="#ActivityState">Status aktivitas</a>.</p>
+
+<p>Karena aktivitas di back-stack tidak pernah diatur ulang, jika aplikasi Anda memungkinkan
+pengguna untuk memulai aktivitas tertentu dari lebih dari satu aktivitas, instance baru
+aktivitas tersebut akan dibuat dan didorong ke back-stack (bukannya memunculkan instance sebelumnya dari
+aktivitas ke atas). Dengan demikian, satu aktivitas pada aplikasi Anda mungkin dibuat beberapa
+kali (bahkan dari beberapa tugas), seperti yang ditampilkan dalam gambar 3. Dengan demikian, jika pengguna mengarahkan mundur
+menggunakan tombol <em>Back</em>, setiap instance aktivitas ini akan ditampilkan dalam urutan saat 
+dibuka (masing-masing
+dengan status UI sendiri). Akan tetapi, Anda bisa memodifikasi perilaku ini jika tidak ingin aktivitas
+dibuat instance-nya lebih dari sekali. Caranya dibahas di bagian selanjutnya tentang <a href="#ManagingTasks">Mengelola Tugas</a>.</p>
+
+
+<p>Untuk meringkas perilaku default aktivitas dan tugas:</p>
+
+<ul>
+  <li>Bila Aktivitas A memulai Aktivitas B, Aktivitas A dihentikan, namun sistem mempertahankan statusnya
+(seperti posisi gulir dan teks yang dimasukkan ke dalam formulir).
+Jika pengguna menekan tombol <em>Back</em> saat dalam Aktivitas B, Aktivitas A akan dilanjutkan dengan status
+yang dipulihkan.</li>
+  <li>Bila pengguna meninggalkan tugas dengan menekan tombol <em>Home</em> aktivitas saat ini akan
+dihentikan dan
+tugas beralih ke latar belakang. Sistem akan mempertahankan status setiap aktivitas dalam tugas. Jika
+nanti pengguna melanjutkan tugas dengan memilih ikon launcher yang memulai tugas, tugas tersebut akan
+beralih ke latar depan dan melanjutkan aktivitas di atas back-stack.</li>
+  <li>Jika pengguna menekan tombol <em>Back</em>, aktivitas saat ini akan dikeluarkan dari back-stack
+dan
+dimusnahkan. Aktivitas sebelumnya dalam back-stack akan dilanjutkan. Bila suatu aktivitas dimusnahkan, sistem
+<em>tidak akan</em>mempertahankan status aktivitas.</li>
+  <li>Aktivitas bisa dibuat instance-nya beberapa kali, bahkan dari tugas-tugas lainnya.</li>
+</ul>
+
+
+<div class="note design">
+<p><strong>Desain Navigasi</strong></p>
+  <p>Untuk mengetahui selengkapnya tentang cara kerja navigasi aplikasi di Android, baca panduan <a href="{@docRoot}design/patterns/navigation.html">Navigasi</a> Desain Android.</p>
+</div>
+
+
+<h2 id="ActivityState">Menyimpan Status Aktivitas</h2>
+
+<p>Seperti dibahas di atas, perilaku default sistem akan mempertahankan status aktivitas bila
+dihentikan. Dengan cara ini, bila pengguna mengarah kembali ke aktivitas sebelumnya, antarmuka pengguna akan muncul
+seperti saat ditinggalkan. Akan tetapi, Anda bisa&mdash;dan <strong>harus</strong>&mdash;secara proaktif mempertahankan
+status aktivitas menggunakan metode callback, jika aktivitas ini dimusnahkan dan harus
+dibuat kembali.</p>
+
+<p>Bila sistem menghentikan salah satu aktivitas (seperti saat aktivitas baru dimulai atau tugas
+dipindah ke latar belakang), sistem mungkin memusnahkan aktivitas sepenuhnya jika perlu memulihkan
+memori sistem. Bila hal ini terjadi, informasi tentang status aktivitas akan hilang. Jika hal ini terjadi, sistem
+masih
+mengetahui bahwa aktivitas memiliki tempat di back-stack, namun saat aktivitas tersebut dibawa ke bagian teratas
+back-stack, sistem harus membuatnya kembali (bukan melanjutkannya). Untuk
+menghindari hilangnya pekerjaan pengguna, Anda harus secara proaktif mempertahankannya dengan menerapkan metode callback
+{@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+dalam aktivitas.</p>
+
+<p>Untuk informasi selengkapnya tentang cara menyimpan status aktivitas Anda, lihat dokumen
+<a href="{@docRoot}guide/components/activities.html#SavingActivityState">Aktivitas</a>.</p>
+
+
+
+<h2 id="ManagingTasks">Mengelola Tugas</h2>
+
+<p>Cara Android mengelola tugas dan back-stack, seperti yang dijelaskan di atas&mdash;dengan menempatkan semua
+aktivitas yang dimulai secara berurutan dalam tugas yang sama dan dalam back-stack "masuk terakhir, keluar pertama"&mdash;berfungsi
+dengan baik untuk kebanyakan aplikasi dan Anda tidak perlu khawatir tentang cara mengaitkan aktivitas
+dengan tugas atau cara penempatannya di back-stack. Akan tetapi, Anda bisa memutuskan apakah ingin menyela
+perilaku normal. Mungkin Anda ingin agar suatu aktivitas dalam aplikasi untuk memulai tugas baru bila telah
+dimulai (sebagai ganti menempatkannya dalam tugas saat ini); atau, bila memulai aktivitas, Anda ingin
+memajukan instance yang ada (sebagai ganti membuat instance
+baru pada bagian teratas back-stack); atau, Anda ingin back-stack dihapus dari semua
+aktivitas selain untuk aktivitas akar bila pengguna meninggalkan tugas.</p>
+
+<p>Anda bisa melakukan semua ini dan lainnya, dengan atribut dalam elemen manifes
+<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+dan dengan flag pada intent yang Anda teruskan ke
+{@link android.app.Activity#startActivity startActivity()}.</p>
+
+<p>Dalam hal ini, atribut<a href="{@docRoot}guide/topics/manifest/activity-element.html">
+{@code &lt;activity&gt;}</a> utama yang bisa Anda gunakan adalah:</p>
+
+<ul class="nolist">
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">
+  {@code taskAffinity}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">
+  {@code launchMode}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+  {@code allowTaskReparenting}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">
+  {@code clearTaskOnLaunch}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+  {@code alwaysRetainTaskState}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">
+  {@code finishOnTaskLaunch}</a></li>
+</ul>
+
+<p>Dan flag intent utama yang bisa Anda gunakan adalah:</p>
+
+<ul class="nolist">
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</li>
+</ul>
+
+<p>Dalam bagian berikut, Anda akan melihat cara menggunakan beberapa atribut manifes ini dan flag
+intent untuk mendefinisikan cara mengaitkan aktivitas dengan tugas dan cara perilakunya di back-stack.</p>
+
+<p>Juga, pertimbangan cara menyatakan dan mengelola tugas dan aktivitas
+dibahas secara terpisah di layar ikhtisar. Lihat <a href="{@docRoot}guide/components/recents.html">Layar Ikhtisar</a>
+untuk informasi selengkapnya. Biasanya Anda harus mengizinkan sistem mendefinisikan cara menyatakan tugas dan
+aktivitas di layar ikhtisar, dan Anda tidak perlu memodifikasi perilaku ini.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Kebanyakan aplikasi tidak harus menyela perilaku
+default untuk aktivitas dan tugas. Jika merasa bahwa aktivitas Anda perlu memodifikasi
+perilaku default, lakukan dengan hati-hati dan pastikan menguji kegunaan aktivitas selama
+dijalankan dan saat mengarahkan kembali ke sana dari aktivitas dan tugas lain dengan tombol <em>Back</em>.
+Pastikan menguji perilaku navigasi yang mungkin bertentangan dengan perilaku yang diharapkan pengguna.</p>
+
+
+<h3 id="TaskLaunchModes">Mendefinisikan mode peluncuran</h3>
+
+<p>Mode peluncuran memungkinkan Anda mendefinisikan cara mengaitkan instance baru dari suatu aktivitas dengan
+tugas saat ini. Anda bisa mendefinisikan beragam mode peluncuran dalam dua cara:</p>
+<ul class="nolist">
+  <li><a href="#ManifestForTasks">Menggunakan file manifes</a>
+    <p>Bila Anda mendeklarasikan aktivitas dalam file manifes, Anda bisa menetapkan cara mengaitkan aktivitas
+dengan tugas-tugas saat mulai.</li>
+  <li><a href="#IntentFlagsForTasks">Menggunakan flag intent</a>
+    <p>Saat memanggil{@link android.app.Activity#startActivity startActivity()},
+Anda bisa menyertakan flag dalam {@link android.content.Intent} yang menyatakan cara (atau
+apakah) aktivitas baru tersebut harus dikaitkan dengan tugas saat ini.</p></li>
+</ul>
+
+<p>Dengan demikian, jika Aktivitas A memulai Aktivitas B, Aktivitas B bisa mendefinisikan dalam manifesnya cara
+mengaitkan dengan tugas saat ini (jika sama sekali) dan Aktivitas A juga bisa meminta cara mengaitkan Aktivitas B
+dengan tugas saat ini. Jika kedua aktivitas mendefinisikan cara mengaitkan Aktivitas B
+dengan tugas, maka permintaan Aktivitas A (sebagaimana didefinisikan dalam intent) lebih dihargai daripada
+permintaan Aktivitas B (sebagaimana didefinisikan dalam manifesnya).</p>
+
+<p class="note"><strong>Catatan:</strong> Beberapa mode peluncuran yang tersedia untuk file manifes
+tidak tersedia sebagai flag untuk intent dan, juga, beberapa mode peluncuran yang tersedia sebagai flag
+untuk intent tidak bisa didefinisikan dalam manifest.</p>
+
+
+<h4 id="ManifestForTasks">Menggunakan file manifes</h4>
+
+<p>Saat mendeklarasikan aktivitas dalam file manifes, Anda bisa menetapkan cara mengaitkan aktivitas
+dengan tugas menggunakan <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+melalui atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> elemen.</p>
+
+<p>Atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> menetapkan instruksi tentang cara meluncurkan aktivitas
+ke dalam tugas. Ada empat macam mode peluncuran yang bisa Anda tetapkan ke atribut
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">launchMode</a></code>
+:</p>
+
+<dl>
+<dt>{@code "standard"} (mode default)</dt>
+  <dd>Default. Sistem membuat instance baru aktivitas dalam tugas yang
+akan menjadi tempat memulainya dan mengarahkan intent ke sana. Aktivitas ini bisa dibuat instance-nya beberapa kali,
+masing-masing instance bisa dimiliki oleh tugas berbeda, dan satu tugas bisa memiliki beberapa instance.</dd>
+<dt>{@code "singleTop"}</dt>
+  <dd>Jika instance aktivitas sudah ada di bagian teratas tugas saat ini, sistem
+akan mengarahkan intent ke instance tersebut melalui panggilan ke metode {@link
+android.app.Activity#onNewIntent onNewIntent()}, bukan membuat instance baru dari
+aktivitas tersebut. Aktivitas bisa dibuat instance-nya beberapa kali, masing-masing instance bisa dimiliki
+oleh tugas berbeda, dan satu tugas bisa memiliki beberapa instance (namun hanya jika
+aktivitas di bagian teratas back-stack <em>bukan</em> instance yang ada dari aktivitas tersebut).
+  <p>Misalnya, anggaplah back-stack tugas terdiri dari aktivitas A akar dengan aktivitas B, C,
+dan D di bagian teratas (back-stack adalah A-B-C-D; D yang teratas). Intent masuk untuk aktivitas tipe D.
+Jika D memiliki mode peluncuran {@code "standard"} default, instance baru dari kelas ini akan diluncurkan dan
+back-stack menjadi A-B-C-D-D. Namun, jika mode peluncuran D adalah {@code "singleTop"}, instance
+yang ada dari D akan menerima intent melalui {@link
+android.app.Activity#onNewIntent onNewIntent()}, karena ada di bagian teratas back-stack&mdash;
+back-stack tetap A-B-C-D. Akan tetapi, jika intent masuk untuk aktivitas tipe B, maka
+instance B baru akan ditambahkan ke back-stack, sekalipun mode peluncuran adalah{@code "singleTop"}.</p>
+  <p class="note"><strong>Catatan:</strong> Bila instance dari aktivitas baru telah dibuat,
+pengguna bisa menekan tombol <em>Back</em> untuk kembali ke aktivitas sebelumnya. Namun bila instance
+yang ada dari
+aktivitas menangani intent baru, pengguna tidak bisa menekan tombol <em>Back</em> untuk kembali ke
+status
+aktivitas sebelum intent baru masuk di {@link android.app.Activity#onNewIntent
+onNewIntent()}.</p>
+</dd>
+
+<dt>{@code "singleTask"}</dt>
+  <dd>Sistem membuat tugas baru dan membuat instance aktivitas di akar tugas baru.
+Akan tetapi, jika instance aktivitas sudah ada dalam tugas terpisah, sistem akan mengarahkan
+intent ke instance yang ada melalui panggilan ke metode {@link
+android.app.Activity#onNewIntent onNewIntent()}, bukan membuat instance baru. Hanya
+boleh ada satu instance aktivitas untuk setiap kalinya.
+  <p class="note"><strong>Catatan:</strong> Meskipun aktivitas dimulai di tugas baru, tombol
+<em>Back</em> tetap akan mengembalikan pengguna ke aktivitas sebelumnya.</p></dd>
+<dt>{@code "singleInstance"}.</dt>
+  <dd>Sama seperti {@code "singleTask"}, namun sistem tidak meluncurkan aktivitas lain ke
+tugas yang menyimpan instance. Aktivitas selalu satu dan satu-satunya anggota dari tugasnya;
+aktivitas apa pun yang dimulai dengan ini akan dibuka di tugas yang terpisah.</dd>
+</dl>
+
+
+<p>Sebagai contoh lainnya, aplikasi Browser Android mendeklarasikan bahwa aktivitas browser web harus
+selalu dibuka dalam tugasnya sendiri&mdash;dengan menetapkan mode pembuka {@code singleTask} dalam elemen<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>.
+Ini berarti bahwa jika aplikasi Anda mengeluarkan
+intent untuk membuka Browser Android, aktivitasnya <em>tidak</em> akan ditempatkan dalam tugas
+yang sama seperti aplikasi Anda. Sebagai gantinya, tugas baru akan dimulai untuk Browser atau, jika Browser 
+sudah memiliki tugas yang berjalan di latar belakang, tugas tersebut akan dimajukan untuk menangani intent
+baru.</p>
+
+<p>Baik aktivitas dimulai dalam tugas baru atau maupun dalam tugas yang sama seperti aktivitas yang memulainya, tombol
+<em>Back</em> selalu membawa pengguna ke aktivitas sebelumnya. Akan tetapi, jika
+Anda memulai aktivitas yang menetapkan mode pembuka {@code singleTask}, maka jika instance
+aktivitas tersebut ada dalam tugas latar belakang, seluruh tugas tersebut akan dibawa ke latar depan. Pada titik
+ini, back-stack sekarang menyertakan semua aktivitas dari tugas yang dimajukan, di atas
+back-stack. Gambar 4 mengilustrasikan tipe skenario ini.</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack_singletask_multiactivity.png" alt="" />
+<p class="img-caption"><strong>Gambar 4.</strong> Representasi tentang cara aktivitas dengan
+mode pembuka "singleTask" ditambahkan ke back-stack. Jika aktivitas tersebut sudah menjadi bagian dari
+tugas latar belakang dengan back-stack sendiri, maka seluruh back-stack juga
+dimajukan, di atas tugas saat ini.</p>
+
+<p>Untuk informasi selengkapnya tentang menggunakan mode pembuka dalam file manifes, lihat dokumentasi elemen
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, di mana atribut {@code launchMode} dan nilai-nilai yang diterima
+akan dibahas selengkapnya.</p>
+
+<p class="note"><strong>Catatan:</strong> Perilaku yang Anda tentukan untuk aktivitas dengan atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+bisa dikesampingkan dengan flag yang disertakan bersama intent yang memulai aktivitas Anda, seperti dibahas dalam
+bagian berikutnya.</p>
+
+
+
+<h4 id="#IntentFlagsForTasks">Menggunakan flag Intent</h4>
+
+<p>Saat memulai aktivitas, Anda bisa memodifikasi asosiasi default aktivitas pada tugasnya
+ dengan menyertakan flag dalam intent yang Anda kirimkan ke {@link
+android.app.Activity#startActivity startActivity()}. Flag yang bisa Anda gunakan untuk memodifikasi perilaku default
+adalah:</p>
+
+<p>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</dt>
+    <dd>Memulai aktivitas dalam tugas baru. Jika tugas sudah dijalankan untuk aktivitas yang sekarang
+Anda mulai, tugas tersebut akan dibawa ke latar depan dengan status terakhir yang dipulihkan dan aktivitas
+akan menerima intent baru dalam {@link android.app.Activity#onNewIntent onNewIntent()}.
+    <p>Ini menghasilkan perilaku yang sama dengan nilai {@code "singleTask"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 
+yang dibahas di bagian sebelumnya.</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</dt>
+    <dd>Jika aktivitas yang dimulai adalah aktivitas saat ini (di bagian teratas back-stack), maka
+instance yang ada akan menerima panggilan ke {@link android.app.Activity#onNewIntent onNewIntent()}
+sebagai ganti membuat instance baru aktivitas.
+    <p>Ini menghasilkan perilaku yang sama dengan nilai {@code "singleTop"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 
+yang dibahas di bagian sebelumnya.</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</dt>
+    <dd>Jika aktivitas yang dimulai sudah berjalan dalam tugas saat ini, maka sebagai
+ganti meluncurkan instance baru aktivitas tersebut, semua kegiatan lain di atasnya akan
+dimusnahkan dan intent ini akan disampaikan ke instance aktivitas yang dilanjutkan (sekarang di atas),
+melalui {@link android.app.Activity#onNewIntent onNewIntent()}).
+    <p>Tidak ada nilai untuk atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+ yang menghasilkan perilaku ini.</p>
+    <p>{@code FLAG_ACTIVITY_CLEAR_TOP} paling sering digunakan bersama dengan
+    {@code FLAG_ACTIVITY_NEW_TASK}.
+Bila digunakan bersama-sama, flag ini adalah cara penempatan aktivitas yang ada
+dalam tugas lain dan meletakkannya dalam posisi yang memungkinkannya merespons intent. </p>
+    <p class="note"><strong>Catatan:</strong> Jika mode pembuka aktivitas yang didesain adalah
+{@code "standard"},
+ini juga akan dihapus dari back-stack dan instance baru akan diluncurkan di tempatnya untuk menangani
+intent yang masuk.  Itu karena instance baru selalu dibuat untuk intent baru bila
+mode peluncuran adalah {@code "standard"}. </p>
+</dd>
+</dl>
+
+
+
+
+
+<h3 id="Affinities">Menangani afinitas</h3>
+
+<p><em>Afinitas</em> menunjukkan tugas mana yang disukai aktivitas untuk dimiliki. Secara default, semua
+aktivitas aplikasi yang sama memiliki afinitas untuk satu sama lain. Jadi, secara default, semua
+aktivitas dalam aplikasi yang sama lebih menyukai berada dalam tugas yang sama. Akan tetapi, Anda bisa memodifikasi
+afinitas default untuk suatu aktivitas. Aktivitas yang didefinisikan dalam
+aplikasi yang berbeda bisa berbagi afinitas, atau aktivitas yang didefinisikan dalam aplikasi yang sama bisa
+diberi afinitas tugas yang berbeda.</p>
+
+<p>Anda bisa memodifikasi afinitas untuk setiap yang diberikan 
+dengan atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a> 
+elemen <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>.</p>
+
+<p>Atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+mengambil nilai string, yang harus unik dari nama paket default
+yang dideklarasikan dalam elemen <a href="{@docRoot}guide/topics/manifest/manifest-element.html">
+{@code &lt;manifest&gt;}
+</a>, karena sistem menggunakan nama untuk mengidentifikasi afinitas
+tugas default untuk aplikasi.</p>
+
+<p>Afinitas berperan dalam dua keadaan:</p>
+<ul>
+  <li>Bila intent yang meluncurkan aktivitas berisi flag
+  {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}
+.
+
+<p>Aktivitas baru, secara default, diluncurkan ke dalam tugas aktivitas 
+yang disebut {@link android.app.Activity#startActivity startActivity()}. Ini didorong ke back-stack
+yang sama seperti caller.  Akan tetapi, jika intent yang diteruskan ke
+{@link android.app.Activity#startActivity startActivity()}
+berisi flag {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}
+, maka sistem akan mencari tugas yang berbeda untuk menampung aktivitas baru. Sering kali, itu adalah tugas baru.
+Akan tetapi, tidak harus demikian.  Jika sudah ada tugas lama dengan afinitas yang sama seperti
+aktivitas baru, aktivitas ini akan diluncurkan ke dalam tugas tersebut.  Jika tidak, tugas baru akan dimulai.</p>
+
+<p>Jika flag ini menyebabkan aktivitas memulai tugas baru dan pengguna menekan tombol <em>Home</em>
+untuk meninggalkannya,
+harus ada cara bagi pengguna untuk mengarahkan kembali ke tugas. Beberapa entitas (seperti
+notification manager) selalu memulai aktivitas dalam tugas eksternal, tidak pernah sebagai bagian dari miliknya sendiri, jadi
+selalu menempatkan {@code FLAG_ACTIVITY_NEW_TASK} dalam intent yang diteruskan ke
+{@link android.app.Activity#startActivity startActivity()}.
+Jika Anda memiliki aktivitas yang bisa dipanggil melalui
+entitas eksternal yang mungkin menggunakan flag ini, hati-hatilah karena pengguna memiliki cara independen untuk kembali
+ke tugas yang telah dimulai, seperti dengan ikon launcher (aktivitas akar dari tugas
+memiliki filter intent {@link android.content.Intent#CATEGORY_LAUNCHER}; lihat bagian <a href="#Starting">Memulai tugas</a> di bawah ini).</p>
+</li>
+
+  <li>Bila aktivitas memiliki atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+{@code allowTaskReparenting}</a> sendiri yang diatur ke {@code "true"}.
+  <p>Dalam hal ini, aktivitas bisa berpindah dari tugas yang dimulainya ke tugas yang afinitasnya
+dimilikinya, bila tugas tersebut di bawa ke latar depan.</p>
+  <p>Misalnya, anggaplah sebuah aktivitas melaporkan kondisi cuaca di sejumlah kota terpilih
+yang didefinisikan sebagai bagian dari aplikasi perjalanan.  Aktivitas memiliki afinitas yang sama dengan aktivitas lain dalam aplikasi
+yang sama (afinitas aplikasi default) dan aktivitas ini memungkinkan re-parenting dengan atribut ini.
+Bila salah satu aktivitas Anda memulai aktivitas laporan cuaca, awalnya aktivitas ini dimiliki oleh tugas
+yang sama dengan aktivitas Anda. Akan tetapi, bila tugas aplikasi perjalanan di bawa ke latar depan, 
+aktivitas laporan cuaca akan ditetapkan kembali ke tugas itu dan ditampilkan di dalamnya.</p>
+</li>
+</ul>
+
+<p class="note"><strong>Tip:</strong> Jika file {@code .apk} berisi lebih dari satu "aplikasi"
+dari sudut pandang pengguna, Anda mungkin perlu menggunakan atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+ untuk menetapkan afinitas berbeda pada aktivitas yang terkait dengan setiap "aplikasi".</p>
+
+
+
+<h3 id="Clearing">Menghapus back-stack</h3>
+
+<p>Jika pengguna meninggalkan tugas dalam waktu yang lama, sistem akan menghapus tugas semua aktivitas kecuali
+aktivitas akar.  Bila pengguna kembali ke tugas itu lagi, hanya aktivitas akar yang akan dipulihkan.
+Sistem berperilaku seperti ini, karena, setelah sekian waktu, pengguna mungkin telah mengabaikan
+apa yang mereka kerjakan sebelum dan kembali ke tugas itu untuk memulai sesuatu yang baru. </p>
+
+<p>Ada beberapa atribut aktivitas yang bisa Anda gunakan untuk memodifikasi perilaku ini: </p>
+
+<dl>
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#always">alwaysRetainTaskState</a></code>
+</dt>
+<dd>Jika atribut ini ditetapkan ke {@code "true"} dalam aktivitas akar tugas, 
+perilaku default yang baru dijelaskan tidak akan terjadi.
+ Tugas akan mempertahankan semua aktivitas dalam back-stack bahkan setelah sekian lama.</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#clear">clearTaskOnLaunch</a></code></dt>
+<dd>Jika atribut ini diatur ke {@code "true"} dalam aktivitas akar tugas, back-
+stack akan dihapus hingga aktivitas akar bila pengguna meninggalkan tugas
+dan kembali lagi.  Dengan kata lain, ini adalah lawan dari
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+{@code alwaysRetainTaskState}</a>. Pengguna selalu kembali ke tugas dengan
+status awalnya, walaupun hanya sebentar meninggalkan tugas.</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#finish">finishOnTaskLaunch</a></code>
+</dt>
+<dd>Atribut ini seperti <a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">{@code clearTaskOnLaunch}</a>,
+namun beroperasi pada
+satu aktivitas, bukan pada seluruh tugas.  Hal ini juga bisa menyebabkan aktivitas
+hilang, termasuk aktivitas akar.  Bila ini diatur ke {@code "true"}, 
+aktivitas akan tetap menjadi bagian dari tugas hanya untuk sesi saat ini.  Jika pengguna
+keluar dan kemudian kembali ke tugas tersebut, tugas tidak akan ada lagi.</dd>
+</dl>
+
+
+
+
+<h3 id="Starting">Memulai tugas</h3>
+
+<p>Anda bisa mengatur aktivitas sebagai titik masuk untuk tugas dengan memberikan filter intent dengan
+{@code "android.intent.action.MAIN"} sebagai tindakan yang ditetapkan dan
+{@code "android.intent.category.LAUNCHER"}
+sebagai kategori yang ditetapkan. Misalnya:</p>
+
+<pre>
+&lt;activity ... &gt;
+    &lt;intent-filter ... &gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+    ...
+&lt;/activity&gt;
+</pre>
+
+<p>Filter intent semacam ini akan menyebabkan ikon dan label untuk
+aktivitas ditampilkan dalam launcher aplikasi, yang akan memberi cara kepada pengguna untuk meluncurkan aktivitas dan
+kembali ke tugas yang dibuatnya kapan saja setelah ia telah diluncurkan.
+</p>
+
+<p>Kemampuan kedua ini penting: Pengguna harus bisa meninggalkan tugas dan kemudian kembali ke tugas tersebut
+nanti dengan menggunakan launcher aktivitas ini. Karena itu, kedua <a href="#LaunchModes">mode
+pembuka</a> yang menandai aktivitas selalu memulai tugas, {@code "singleTask"} dan
+{@code "singleInstance"}, hanya boleh digunakan bila aktivitas memiliki filter
+{@link android.content.Intent#ACTION_MAIN}
+dan {@link android.content.Intent#CATEGORY_LAUNCHER}. Bayangkan, misalnya, apa yang akan
+terjadi jika filter tidak ada: Intent meluncurkan aktivitas{@code "singleTask"}, memulai 
+tugas yang baru, dan pengguna menghabiskan lebih banyak waktu mengerjakan tugas tersebut. Pengguna kemudian menekan tombol 
+<em>Home</em>. Tugas kini dikirim ke latar belakang dan tidak terlihat. Sekarang pengguna tidak memiliki cara untuk kembali
+ke tugas tersebut, karena tidak dinyatakan dalam launcher aplikasi.</p>
+
+<p>Untuk kasus-kasus di mana Anda tidak ingin pengguna bisa kembali ke aktivitas, atur dalam 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ pada 
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">{@code finishOnTaskLaunch}</a>
+elemen ke {@code "true"} (lihat <a href="#Clearing">Menghapus back-stack</a>).</p>
+
+<p>Informasi lebih jauh tentang cara menyatakan dan mengelola tugas dan aktivitas dalam
+layar ikhtisar tersedia dalam<a href="{@docRoot}guide/components/recents.html">
+Layar Ikhtisar</a>.</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how to use intents to
+activate other application components and publish the intents to which your components
+respond, continue with the <b><a
+href="{@docRoot}guide/components/intents-filters.html">Intents and Intent
+Filters</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/in/guide/index.jd b/docs/html-intl/intl/in/guide/index.jd
new file mode 100644
index 0000000..f24fab6
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/index.jd
@@ -0,0 +1,74 @@
+page.title=Pengantar Android
+
+@jd:body
+
+
+<div class="sidebox" style="width:220px"><!-- width to match col-4 below -->
+<p>Untuk mempelajari cara kerja aplikasi, mulailah dengan
+<a href="{@docRoot}guide/components/fundamentals.html">Dasar-Dasar Aplikasi</a>.</p>
+<p>Untuk langsung memulai pemrograman, bacalah <a href="{@docRoot}training/basics/firstapp/index.html">Membangun Aplikasi Pertama Anda.</a></p>
+</div>
+
+<p>Android menyediakan kerangka kerja aplikasi yang kaya dan memungkinkan Anda membangun aplikasi dan permainan
+inovatif untuk perangkat seluler di lingkungan bahasa pemrograman Java. Dokumen yang tercantum di navigasi
+sebelah kiri menyediakan detail tentang cara membangun aplikasi menggunakan berbagai API Android.</p>
+
+<p>Jika Anda masih baru dengan pengembangan Android, Anda perlu memahami
+konsep dasar berikut mengenai kerangka kerja aplikasi Android:</p>
+
+
+<div class="landing-banner">
+
+<div class="col-6">
+
+<h4>Aplikasi menyediakan beberapa titik masuk</h4>
+
+<p>Aplikasi Android dibangun sebagai kombinasi beragam komponen yang bisa dipanggil
+satu per satu. Misalnya, satu <em>aktivitas</em> individual menyediakan satu
+layar untuk antarmuka pengguna, dan <em>layanan</em> yang secara terpisah melakukan
+tugas di latar belakang.</p>
+
+<p>Dari satu komponen Anda dapat memulai komponen lainnya menggunakan <em>intent</em>. Anda bahkan dapat memulai
+satu komponen dalam aplikasi berbeda, seperti aktivitas dalam aplikasi peta untuk menampilkan alamat. Model ini
+menyediakan beberapa titik masuk untuk aplikasi tunggal dan memungkinkan setiap aplikasi untuk berfungsi sebagai "default"
+pengguna bagi tindakan yang dapat dipanggil aplikasi lain.</p>
+
+
+<p><b>Ketahui selengkapnya:</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/components/fundamentals.html">Dasar-Dasar Aplikasi</a>
+<li><a href="{@docRoot}guide/components/intents-filters.html">Intent dan Filter Intent</a>
+<li><a href="{@docRoot}guide/components/activities.html">Aktivitas</a>
+</ul>
+
+</div>
+
+
+<div class="col-6">
+
+<h4>Aplikasi beradaptasi dengan perangkat berbeda</h4>
+
+<p>Android menyediakan kerangka kerja aplikasi adaptif yang memungkinkan Anda menyediakan sumber daya unik
+bagi konfigurasi perangkat yang berbeda-beda. Misalnya, Anda bisa membuat berbagai file layout
+XML untuk ukuran layar yang berbeda-beda dan sistem akan menentukan
+layout yang akan diterapkan berdasarkan ukuran layar perangkat yang ada saat ini.</p>
+
+<p>Anda dapat melakukan query ketersediaan fitur perangkat saat dijalankan (runtime) jika ada fitur aplikasi yang memerlukan
+perangkat keras spesifik seperti kamera. Jika diperlukan, Anda juga bisa mendeklarasikan fitur yang dibutuhkan aplikasi
+agar pasar aplikasi seperti Google Play Store tidak mengizinkan instalasi pada perangkat yang tidak
+mendukung fitur itu.</p>
+
+
+<p><b>Ketahui selengkapnya:</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/practices/compatibility.html">Kompatibilitas Perangkat</a>
+<li><a href="{@docRoot}guide/topics/resources/overview.html">Ikhtisar Sumber Daya</a>
+<li><a href="{@docRoot}guide/topics/ui/overview.html">Ikhtisar Antarmuka Pengguna</a>
+</ul>
+
+</div>
+
+</div><!-- end landing-banner -->
+
+
+
diff --git a/docs/html-intl/intl/in/guide/topics/manifest/manifest-intro.jd b/docs/html-intl/intl/in/guide/topics/manifest/manifest-intro.jd
new file mode 100644
index 0000000..6d6a3ad
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/manifest/manifest-intro.jd
@@ -0,0 +1,517 @@
+page.title=Manifes Aplikasi
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Dalam dokumen ini</h2>
+<ol>
+<li><a href="#filestruct">Struktur File Manifes</a></li>
+<li><a href="#filec">Konvensi File</a>
+<li><a href="#filef">Fitur File</a>
+	<ol>
+	<li><a href="#ifs">Filter Intent</a></li>
+	<li><a href="#iconlabel">Ikon dan Label</a></li>
+	<li><a href="#perms">Izin</a></li>
+	<li><a href="#libs">Pustaka</a></li>
+	</ol></li>
+</ol>
+</div>
+</div>
+
+<p>
+  Setiap aplikasi harus memiliki file AndroidManifest.xml (bernama persis seperti ini) di direktori akar.
+ <span itemprop="description">File manifes
+ menyediakan informasi penting tentang aplikasi ke sistem Android,
+ informasi yang harus dimiliki sistem agar bisa menjalankan setiap kode 
+aplikasi.</span> Di antaranya, manifes melakukan hal berikut ini:
+</p>
+
+<ul>
+<li>Menamai paket Java untuk aplikasi.
+Nama paket berfungsi sebagai identifier unik untuk aplikasi.</li>
+
+<li>Menjelaskan berbagai komponen aplikasi&mdash;aktivitas,
+ layanan, penerima siaran, dan penyedia konten 
+yang membentuk aplikasi.  Menamai kelas yang mengimplementasikan setiap komponen dan 
+mempublikasikan kemampuannya (misalnya, pesan {@link android.content.Intent 
+Intent} mana yang bisa ditanganinya).  Deklarasi ini memberi tahu sistem Android mengenai 
+komponennya dan dalam kondisi apa bisa diluncurkan.</li>
+
+<li>Menentukan proses yang akan menjadi host komponen aplikasi.</li>  
+
+<li>Mendeklarasikan izin aplikasi mana yang harus dimiliki untuk 
+mengakses bagian yang dilindungi pada API dan berinteraksi dengan aplikasi lain.</li>  
+
+<li>Juga mendeklarasikan izin lain yang harus dimiliki untuk 
+untuk berinteraksi dengan komponen aplikasi.</li>
+
+<li>Mencantumkan daftar kelas {@link android.app.Instrumentation} yang memberikan 
+profil dan informasi lain saat aplikasi berjalan.  Deklarasi ini 
+hanya ada di manifes saat aplikasi dibuat dan diuji;
+ deklarasi dihapus sebelum aplikasi dipublikasikan.</li>
+
+<li>Mendeklarasikan tingkat minimum API Android yang diperlukan 
+aplikasi.</li>
+
+<li>Mencantumkan daftar pustaka yang harus ditautkan aplikasi.</li>
+</ul>
+
+
+<h2 id="filestruct">Struktur File Manifes</h2>
+
+<p>
+Diagram di bawah ini menampilkan struktur umum file manifes dan setiap 
+elemen yang bisa ditampungnya.  Setiap elemen, bersama 
+atributnya, didokumentasikan secara lengkap dalam file terpisah.  Untuk melihat 
+informasi terperinci tentang setiap elemen, klik nama elemen dalam diagram, 
+dalam daftar abjad elemen yang mengikuti diagram, atau penyebutan nama 
+elemen lainnya. 
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration /&gt;</a>  <!-- ##api level 3## -->
+    <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html">&lt;compatible-screens /&gt;</a>  <!-- ##api level 9## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-gl-texture-element.html">&lt;supports-gl-texture /&gt;</a>  <!-- ##api level 11## -->
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;/activity&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;/activity-alias&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data/&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;/service&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;/receiver&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/path-permission-element.html">&lt;path-permission /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;/provider&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library /&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;/application&gt;</a>
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;/manifest&gt;</a>
+</pre>
+
+<p>
+Semua elemen yang bisa muncul dalam file manifes tercantum di bawah ini 
+dalam urutan abjad.  Ini adalah satu-satunya elemen legal; Anda tidak bisa 
+menambahkan elemen atau atribut sendiri.  
+</p>
+
+<p style="margin-left: 2em">
+<code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration&gt;</a></code>  <!-- ##api level 3## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></code>
+</p>
+
+
+    
+
+<h2 id="filec">Konvensi File</h2>
+
+<p>
+Sebagian konvensi dan aturan berlaku secara umum untuk semua elemen 
+dan atribut di manifes:
+</p>
+
+<dl>
+<dt><b>Elemen</b></dt>
+<dd>Hanya elemen 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> dan
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+yang diwajibkan, masing-masing harus ada dan hanya boleh terjadi sekali.  
+Umumnya elemen lain bisa terjadi berkali-kali atau sama sekali tidak terjadi &mdash; meskipun 
+setidaknya sebagian dari elemen itu harus ada untuk agar manifes mencapai sesuatu yang 
+berarti.
+
+<p>
+Jika elemen tidak berisi apa pun, berarti elemen itu berisi elemen lain.  
+Semua nilai diatur melalui atribut, bukan sebagai data karakter dalam elemen.
+</p>
+
+<p>
+Elemen yang sama tingkatan umumnya tidak diurutkan.  Misalnya, elemen 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>, 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>, dan 
+<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> 
+bisa dicampur dalam urutan apa pun.  (Elemen 
+<code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+ merupakan eksepsi untuk aturan ini:  Elemen ini harus mengikuti 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 
+ini aliasnya.)
+</p></dd>
+
+<dt><b>Atribut</b></dt>
+<dd>Secara formal, semua atribut opsional.  Akan tetapi, ada sebagian 
+yang harus ditetapkan agar elemen bisa mencapai tujuannya.  Gunakan 
+dokumentasi sebagai panduan.  Bagi atribut yang benar-benar opsional, ini menyebutkan 
+nilai default atau menyatakan apa yang terjadi jika tidak ada spesifikasi.
+
+<p>Selain untuk beberapa atribut elemen akar 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>,
+ semua nama atribut dimulai dengan awalan {@code android:} &mdash; 
+misalnya, {@code android:alwaysRetainTaskState}.  Karena awalan ini universal, dokumentasi umumnya meniadakannya saat mengacu atribut 
+dengan nama.
+</p></dd>
+
+<dt><b>Mendeklarasikan nama kelas</b></dt>
+<dd>Banyak elemen berhubungan dengan objek Java, termasuk elemen 
+aplikasi itu sendiri (elemen 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+) dan aktivitas komponen &mdash; utamanya 
+(<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>), 
+layanan 
+(<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>), 
+penerima siaran 
+(<code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>), 
+dan penyedia konten 
+(<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>).  
+
+<p>
+Jika mendefinisikan subkelas, seperti yang selalu Anda definisikan untuk kelas komponen 
+({@link android.app.Activity}, {@link android.app.Service}, 
+{@link android.content.BroadcastReceiver}, dan {@link android.content.ContentProvider}), 
+subkelas dideklarasikan melalui atribut {@code name}.  Nama harus menyertakan tujuan 
+paket lengkap.  
+Misalnya, subkelas {@link android.app.Service} mungkin dideklarasikan sebagai berikut:
+</p>
+
+<pre>&lt;manifest . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name="com.example.project.SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+Akan tetapi, sebagai shorthand, jika karakter pertama string adalah titik, 
+string akan ditambahkan ke nama paket aplikasi (seperti yang ditetapkan dalam elemen 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 
+ melalui atribut 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html#package">package</a></code>
+).  Penetapan berikut sama dengan di atas: 
+</p>
+
+<pre>&lt;manifest package="com.example.project" . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name=".SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+Saat memulai komponen, Android akan membuat instance subkelas yang diberi nama.  
+Jika subkelas tidak ditetapkan, maka akak dibuat instance kelas dasar.
+</p></dd>
+
+<dt><b>Banyak nilai</b></dt>
+<dd>Jika lebih dari satu nilai yang dapat ditetapkan, elemen ini hampir selalu 
+diulangi, bukan menampilkan daftar banyak nilai dalam satu elemen.  
+Misalnya, filter intent dapat mencantumkan beberapa tindakan:
+
+<pre>&lt;intent-filter . . . &gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.INSERT" /&gt;
+    &lt;action android:name="android.intent.action.DELETE" /&gt;
+    . . .
+&lt;/intent-filter&gt;</pre></dd>
+
+<dt><b>Nilai sumber daya</b></dt>
+<dd>Beberapa atribut memiliki nilai yang bisa ditampilkan kepada pengguna &mdash; misalnya
+, label dan ikon aktivitas.  Nilai atribut ini 
+harus dilokalkan dan karenanya ditetapkan dari sumber daya atau tema.  Nilai sumber 
+daya dinyatakan dalam format berikut,</p>
+
+<p style="margin-left: 2em">{@code @[<i>package</i>:]<i>type</i>:<i>name</i>}</p>
+
+<p>
+dalam hal ini nama <i>package</i> boleh dihilangkan jika sumber daya ada dalam paket yang sama dengan 
+dengan aplikasi, <i>type</i> adalah tipe sumber daya &mdash; seperti "string" atau 
+"drawable" &mdash; dan <i>name</i> adalah nama yang mengidentifikasi sumber daya tertentu.  
+Misalnya:
+</p>
+
+<pre>&lt;activity android:icon="@drawable/smallPic" . . . &gt</pre>
+
+<p>
+Nilai tema diekspresikan dengan cara yang sama, namun dengan awal '{@code ?}' 
+dan bukan '{@code @}':
+</p>
+
+<p style="margin-left: 2em">{@code ?[<i>package</i>:]<i>type</i>:<i>name</i>}
+</p></dd>
+
+<dt><b>Nilai-nilai string</b></dt>
+<dd>Bila nilai atribut adalah string, dua garis miring kiri ('{@code \\}') 
+harus digunakan untuk meninggalkan karakter &mdash; misalnya, '{@code \\n}' untuk 
+baris baru atau '{@code \\uxxxx}' untuk karakter Unicode.</dd>
+</dl>
+
+
+<h2 id="filef">Fitur File</h2>
+
+<p>
+Bagian berikut menjelaskan cara menerapkan sebagian fitur Android 
+dalam file manifest.
+</p>
+
+
+<h3 id="ifs">Filter Intent</h3>
+
+<p>
+Komponen inti dari aplikasi (aktivitasnya, layanannya, dan penerima 
+siaran) diaktifkan oleh <i>intent</i>.  Intent adalah 
+sekumpulan informasi (objek {@link android.content.Intent}) yang menjelaskan 
+tindakan yang diinginkan &mdash; termasuk data yang akan ditindaklanjuti, kategori 
+komponen yang harus melakukan tindakan, dan petunjuk terkait lainnya.  
+Android mencari komponen yang sesuai untuk merespons intent, meluncurkan 
+instance komponen baru jika diperlukan, dan meneruskannya ke 
+objek Intent.
+</p>
+
+<p>
+Komponen mengiklankan kemampuannya &mdash; jenis intent yang bisa diresponsnya 
+ &mdash; melalui <i>filter intent</i>.  Karena sistem Android 
+harus mempelajari intent yang dapat ditangani komponen sebelum meluncurkan komponen, 
+filter intent ditetapkan dalam manifes sebagai elemen 
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+.  Sebuah komponen dapat memiliki filter dalam jumlah berapa saja, masing-masing menjelaskan 
+kemampuan yang berbeda.
+</p>
+
+<p>
+Intent yang secara eksplisit menamai komponen target akan mengaktifkan komponen itu;
+filter tidak berperan.  Namun intent yang tidak menetapkan target 
+dengan nama dapat mengaktifkan komponen hanya jika dapat melewati salah satu filter 
+komponen.
+</p>
+
+<p>
+Untuk informasi tentang cara objek Intent diuji terhadap filter intent, 
+lihat dokumen terpisah, 
+<a href="{@docRoot}guide/components/intents-filters.html">Intent 
+dan Filter Intent</a>.
+</p>
+
+
+<h3 id="iconlabel">Ikon dan Label</h3>
+
+<p>
+Sejumlah elemen memiliki atribut {@code icon} dan {@code label} untuk 
+ikon kecil dan label teks yang bisa ditampilkan kepada pengguna.  Sebagian ada juga yang memiliki atribut 
+{@code description}untuk teks penjelasan yang lebih panjang yang juga bisa 
+ditampilkan pada layar.  Misalnya, elemen 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+ memiliki ketiga atribut ini, jadi saat pengguna ditanya apakah akan 
+memberi izin bagi aplikasi yang memintanya, ikon yang mewakili 
+izin, nama izin, dan keterangan yang 
+mengikutinya bisa ditampilkan kepada pengguna.
+</p>
+
+<p>
+Dalam setiap kasus, ikon dan label yang ditetapkan dalam elemen yang memuatnya menjadi 
+{@code icon} default dan pengaturan {@code label} untuk semua subelemen kontainer ini.  
+Karena itu, ikon dan label yang ditetapkan dalam elemen 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+adalah ikon dan label default untuk setiap komponen aplikasi.  
+Demikian pula, ikon dan label yang ditetapkan untuk komponen &mdash; misalnya, elemen 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 
+&mdash; adalah pengaturan default untuk setiap elemen komponen 
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+.  Jika elemen 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+menetapkan label, namun suatu aktivitas dan filter intent-nya tidak menetapkan label, 
+maka label aplikasi akan dianggap sama-sama sebagai label aktvitas dan 
+filter intent.
+</p>
+
+<p>
+Ikon dan label yang ditetapkan untuk filter intent digunakan untuk mewakili komponen 
+kapan saja komponen ditampilkan kepada pengguna saat memenuhi fungsi yang 
+diiklankan oleh filter.  Misalnya, filter dengan pengaturan 
+"{@code android.intent.action.MAIN}" dan 
+"{@code android.intent.category.LAUNCHER}" mengiklankan aktivitas 
+sebagai aktivitas yang memulai aplikasi&mdash;, yaitu 
+sebagai salah satu aktivitas yang harus ditampilkan dalam launcher aplikasi.  Ikon dan label yang 
+diatur dalam filter karenanya adalah ikon dan label yang ditampilkan dalam launcher.
+</p>
+
+
+<h3 id="perms">Izin</h3>
+
+<p>
+Sebuah <i>izin</i> adalah pembatasan yang membatasi akses ke bagian 
+kode atau ke data pada perangkat.   Pembatasan diberlakukan untuk melindungi data dan kode 
+penting yang bisa disalahgunakan untuk mengganggu atau merusak pengalaman pengguna.  
+</p>
+
+<p>
+Setiap izin diidentifikasi melalui label yang unik.  Sering kali, label menunjukkan 
+tindakan yang dibatasi.  Misalnya, berikut ini adalah beberapa izin yang didefinisikan 
+oleh Android:
+</p>
+
+<p style="margin-left: 2em">{@code android.permission.CALL_EMERGENCY_NUMBERS}
+<br/>{@code android.permission.READ_OWNER_DATA}
+<br/>{@code android.permission.SET_WALLPAPER}
+<br/>{@code android.permission.DEVICE_POWER}</p>
+
+<p>
+Sebuah fitur bisa dilindungi paling banyak oleh satu izin.
+</p>
+
+<p>
+Jika aplikasi memerlukan akses ke fitur yang dilindungi oleh izin, 
+aplikasi harus mendeklarasikan bahwa aplikasi memerlukan izin itu dengan elemen 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+ dalam manifes.  Kemudian, bila aplikasi telah diinstal pada 
+perangkat, installer akan menentukan apakah izin yang diminta akan diberikan atau tidak 
+dengan memeriksa otoritas yang menandatangani 
+sertifikat aplikasi dan, dalam beberapa kasus, bertanya pada pengguna.  
+Jika izin diberikan, aplikasi tersebut bisa menggunakan 
+fitur yang dilindungi.  Jika tidak, upaya aplikasi untuk mengakses fitur tersebut akan gagal 
+tanpa ada pemberitahuan apa pun kepada pengguna. 
+</p>
+
+<p>
+Aplikasi juga bisa melindungi komponennya sendiri (aktivitas, layanan, 
+penerima siaran, dan penyedia konten) dengan izin.  Aplikasi bisa menerapkan 
+izin mana pun yang didefinisikan oleh Android (tercantum dalam 
+{@link android.Manifest.permission android.Manifest.permission}) atau dideklarasikan 
+oleh aplikasi lain.  Atau aplikasi bisa mendefinisikannya sendiri.  Izin baru dideklarasikan 
+dengan elemen 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+.  Misalnya, aktivitas dapat dilindungi sebagai berikut:
+</p>
+
+<pre>
+&lt;manifest . . . &gt;
+    &lt;permission android:name="com.example.project.DEBIT_ACCT" . . . /&gt;
+    &lt;uses-permission android:name="com.example.project.DEBIT_ACCT" /&gt;
+    . . .
+    &lt;application . . .&gt;
+        &lt;activity android:name="com.example.project.FreneticActivity"
+                  android:permission="com.example.project.DEBIT_ACCT"
+                  . . . &gt;
+            . . .
+        &lt;/activity&gt;
+    &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>
+Perhatikan, dalam contoh ini izin {@code DEBIT_ACCT} tidak hanya 
+dideklarasikan dengan elemen 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+, penggunaannya juga diminta dengan elemen 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+.  Penggunaannya harus diminta agar komponen 
+aplikasi lainnya bisa menjalankan aktivitas yang dilindungi, meskipun perlindungan itu 
+diberlakukan oleh aplikasi itu sendiri.  
+</p>
+
+<p>
+Dalam contoh yang sama, jika atribut {@code permission} ditetapkan 
+untuk izin yang dideklarasikan di tempat lain 
+lain (seperti {@code android.permission.CALL_EMERGENCY_NUMBERS}, maka atribut 
+tidak perlu mendeklarasikannya lagi dengan elemen 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+.  Akan tetapi, penggunaannya masih perlu dengan 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>. 
+</p>
+
+<p>
+Elemen 
+<code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code> 
+mendeklarasikan namespace untuk grup izin yang akan didefinisikan dalam 
+kode.  Dan 
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+mendefinisikan label untuk seperangkat izin (yang sama-sama dideklarasikan dalam manifes dengan elemen 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+dan yang dideklarasikan di tempat lain).  Ini hanya memengaruhi cara izin 
+dikelompokkan saat ditampilkan kepada pengguna.  Elemen 
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+ tidak menetapkan izin mana dimiliki grup; 
+elemen hanya memberi nama grup.  Izin ditempatkan dalam grup
+dengan memberikan nama grup ke elemen 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+ melalui atribut 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html#pgroup">permissionGroup</a></code> 
+.
+</p>
+
+
+<h3 id="libs">Pustaka</h3>
+
+<p>
+Setiap aplikasi ditautkan dengan pustaka default Android, yang 
+menyertakan paket dasar untuk membangun aplikasi (dengan kelas umum 
+seperti Activity, Service, Intent, View, Button, Application, ContentProvider, 
+dan sebagainya).
+</p>
+
+<p>
+Akan tetapi, sebagian paket berada dalam pustakanya sendiri.  Jika aplikasi Anda 
+menggunakan kode salah satu paket ini, aplikasi secara eksplisit meminta untuk ditautkan dengan 
+paket tersebut.  Manifes harus berisi elemen 
+<code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code> yang 
+terpisah untuk menamai setiap pustaka.  (Nama pustaka bisa ditemukan 
+dalam dokumentasi paket.)
+</p>
diff --git a/docs/html-intl/intl/in/guide/topics/providers/calendar-provider.jd b/docs/html-intl/intl/in/guide/topics/providers/calendar-provider.jd
new file mode 100644
index 0000000..76bc991
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/providers/calendar-provider.jd
@@ -0,0 +1,1184 @@
+page.title=Penyedia Kalender
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>Dalam dokumen ini</h2>
+    <ol>
+  <li><a href="#overview">Dasar-Dasar</a></li>
+  <li><a href="#manifest">Izin Pengguna</a></li>
+  <li><a href="#calendar">Tabel kalender</a>
+<ol>
+      <li><a href="#query">Membuat query kalender</a></li>
+      <li><a href="#modify-calendar">Memodifikasi kalender</a></li>
+      <li><a href="#insert-calendar">Menyisipkan kalender</a></li>
+    </ol>
+  </li>
+  <li><a href="#events">Tabel Events</a>
+<ol>
+      <li><a href="#add-event">Menambahkan Kejadian</a></li>
+      <li><a href="#update-event">Memperbarui Kejadian</a></li>
+      <li><a href="#delete-event">Menghapus Kejadian</a></li>
+    </ol>
+  </li>
+  <li><a href="#attendees">Tabel peserta</a>
+<ol>
+      <li><a href="#add-attendees">Menambahkan Peserta</a></li>
+    </ol>
+  </li>
+  <li><a href="#reminders">Tabel pengingat</a>
+<ol>
+      <li><a href="#add-reminders">Menambahkan Pengingat</a></li>
+    </ol>
+  </li>
+  <li><a href="#instances">Tabel Instances</a>
+  <ol>
+      <li><a href="#query-instances">Membuat query tabel Instance</a></li>
+  </ol></li>
+  <li><a href="#intents">Intent Kalender</a>
+  <ol>
+      <li><a href="#intent-insert">Menggunakan intent untuk menyisipkan kejadian</a></li>
+      <li><a href="#intent-edit">Menggunakan intent untuk mengedit kejadian</a></li>
+      <li><a href="#intent-view">Menggunakan intent untuk menampilkan data kalender</a></li>
+    </ol>
+  </li>
+  
+  <li><a href="#sync-adapter">Adaptor Sinkronisasi</a></li>
+</ol>
+
+    <h2>Kelas-kelas utama</h2>
+    <ol>
+      <li>{@link android.provider.CalendarContract.Calendars}</li>
+      <li>{@link android.provider.CalendarContract.Events}</li>
+      <li>{@link android.provider.CalendarContract.Attendees}</li>
+      <li>{@link android.provider.CalendarContract.Reminders}</li>
+    </ol>
+</div>
+</div>
+
+<p>Penyedia Kalender adalah repository untuk kejadian kalender seorang pengguna. API
+Penyedia Kalender memungkinkan Anda melakukan query, menyisipkan, memperbarui, dan menghapus
+pada kalender, kejadian, peserta, pengingat, dan seterusnya.</p>
+
+
+<p>API Penyedia Kalender bisa digunakan oleh aplikasi dan adaptor sinkronisasi. Aturannya
+bervariasi menurut tipe program yang membuat panggilan. Dokumen ini
+terutama berfokus pada penggunaan API Penyedia Kalender sebagai sebuah aplikasi. Untuk 
+pembahasan ragam adaptor sinkronisasi, lihat 
+<a href="#sync-adapter">Adaptor Sinkronisasi</a>.</p>
+
+
+<p>Biasanya, untuk membaca atau menulis data kalender, manifes aplikasi harus
+berisi izin yang sesuai, yang dijelaskan dalam <a href="#manifest">Izin
+Pengguna</a>. Untuk mempermudah dilakukannya operasi umum,
+Penyedia Kalender menyediakan satu set intent, seperti dijelaskan dalam <a href="#intents">Intent
+Kalender</a>. Semua intent ini membawa pengguna ke aplikasi Kalender untuk menyisipkan, menampilkan,
+dan mengedit kejadian. Pengguna berinteraksi dengan aplikasi Kalender kemudian
+kembali ke aplikasi semula. Jadi, aplikasi Anda tidak perlu meminta izin,
+juga tidak perlu menyediakan antarmuka pengguna untuk menampilkan atau membuat kejadian.</p>
+
+<h2 id="overview">Dasar-Dasar</h2>
+
+<p><a href="{@docRoot}guide/topics/providers/content-providers.html">Penyedia konten</a> menyimpan data dan menjadikannya bisa diakses oleh
+aplikasi. Penyedia konten yang ditawarkan oleh platform Android (termasuk Penyedia Kalender) biasanya mengekspos data sebagai satu set tabel berdasarkan
+model database relasional, dengan tiap baris berupa record dan tiap kolom berupa data
+yang memiliki tipe dan arti tertentu. Melalui API Penyedia Kalender, aplikasi
+dan adaptor sinkronisasi bisa mendapatkan akses baca/tulis ke tabel-tabel database yang menyimpan
+data kalender seorang pengguna.</p>
+
+<p>Setiap penyedia konten membuka sebuah URI publik (yang dibungkus sebagai objek
+{@link android.net.Uri}
+) yang mengidentifikasikan set datanya secara unik.  Penyedia konten yang mengontrol
+ beberapa set data (beberapa tabel) mengekspos URI terpisah untuk tiap set.  Semua 
+URI untuk penyedia diawali dengan string "content://".  String ini
+mengidentifikasi data sebagai dikontrol oleh penyedia konten. Penyedia Kalender
+mendefinisikan konstanta untuk URI masing-masing kelas (tabel). URI ini
+memiliki format <code><em>&lt;class&gt;</em>.CONTENT_URI</code>. Misalnya,
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}.</p>
+
+<p>Gambar 1 menampilkan representasi grafis model data Penyedia Kalender. Gambar ini menampilkan
+tabel dan bidang utama yang saling berkaitan.</p>
+
+<img src="{@docRoot}images/providers/datamodel.png" alt="Calendar Provider Data Model" />
+<p class="img-caption"><strong>Gambar 1.</strong> Model data Penyedia Kalender.</p>
+
+<p>Seorang pengguna bisa memiliki beberapa kalender, dan kalender yang berbeda bisa dikaitkan dengan tipe akun yang berbeda (Google Calendar, Exchange, dan seterusnya).</p>
+
+<p>{@link android.provider.CalendarContract} mendefinisikan model data dari informasi yang terkait dengan kalender dan kejadian. Data ini disimpan di sejumlah tabel, yang dicantumkan di bawah ini.</p>
+
+<table>
+  <tr>
+    <th>Tabel (Kelas)</th>
+    <th>Keterangan</th>
+  </tr>
+  <tr>
+    <td><p>{@link android.provider.CalendarContract.Calendars}</p></td>
+    
+    <td>Tabel ini menyimpan 
+informasi khusus kalender. Tiap baris dalam tabel ini berisi data untuk
+satu kalender, seperti nama, warna, informasi sinkronisasi, dan seterusnya.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Events}</td>
+    
+    <td>Tabel ini menyimpan
+informasi khusus kejadian. Tiap baris dalam tabel ini berisi informasi untuk satu
+kejadian&mdash;misalnya, judul kejadian, lokasi, waktu mulai, waktu
+selesai, dan seterusnya. Kejadian bisa terjadi satu kali atau bisa berulang beberapa kali. Peserta,
+pengingat, dan properti perluasan disimpan dalam tabel terpisah. 
+Masing-masing memiliki sebuah {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} 
+yang mengacu {@link android.provider.BaseColumns#_ID} dalam tabel Events.</td>
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances}</td>
+    
+    <td>Tabel ini menyimpan
+waktu mulai dan waktu selesai setiap bentuk kejadian. Tiap baris dalam tabel ini
+mewakili satu bentuk kejadian. Untuk kejadian satu kali ada pemetaan 1:1
+antara instance dan kejadian. Untuk kejadian berulang, beberapa baris akan dibuat
+secara otomatis yang sesuai dengan beberapa kejadian itu.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Attendees}</td>
+    
+    <td>Tabel ini menyimpan
+informasi peserta (tamu) kejadian. Tiap baris mewakili satu tamu
+kejadian. Ini menetapkan tipe tamu dan respons kehadiran tamu
+untuk kejadian.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Reminders}</td>
+    
+    <td>Tabel ini menyimpan
+data peringatan/pemberitahuan. Tiap baris mewakili satu peringatan untuk sebuah kejadian. Sebuah
+kejadian bisa memiliki beberapa pengingat. Jumlah maksimum pengingat per kejadian
+ditetapkan dalam 
+{@link android.provider.CalendarContract.CalendarColumns#MAX_REMINDERS}, 
+yang diatur oleh adaptor sinkronisasi yang
+memiliki kalender yang diberikan. Pengingat ditetapkan dalam menit sebelum kejadian
+dan memiliki metode yang menentukan cara pengguna akan diperingatkan.</td>
+  </tr>
+  
+</table>
+
+<p>API Penyedia Kalender didesain agar luwes dan tangguh. Sementara itu
+, Anda perlu memberikan pengalaman pengguna akhir yang baik dan
+melindungi integritas kalender dan datanya. Untuk mencapainya, berikut ini adalah
+beberapa hal yang harus diingat saat menggunakan API ini:</p>
+
+<ul>
+
+<li><strong>Menyisipkan, memperbarui, dan menampilkan kejadian kalender.</strong> Untuk menyisipkan, mengubah, dan membaca kejadian secara langsung dari Penyedia Kalender, Anda memerlukan <a href="#manifest">izin</a> yang sesuai. Akan tetapi, jika Anda tidak sedang membuat aplikasi atau adaptor sinkronisasi kalender berfitur lengkap, maka tidak perlu meminta izin. Sebagai gantinya, Anda bisa menggunakan intent yang didukung oleh aplikasi Kalender Android untuk menyerahkan operasi baca dan tulis ke aplikasi itu. Bila menggunakan intent, aplikasi Anda akan mengirim pengguna ke aplikasi Kalender untuk melakukan operasi yang diinginkan
+dalam sebuah formulir yang sudah diisi. Setelah operasi selesai, formulir dikembalikan ke aplikasi Anda.
+Dengan mendesain aplikasi untuk melakukan operasi umum melalui Kalender,
+Anda akan memberi pengguna sebuah antarmuka pengguna yang konsisten dan tangguh. Inilah
+pendekatan yang disarankan. Untuk informasi selengkapnya, lihat <a href="#intents">Intent
+Kalender</a>.</p>
+
+
+<li><strong>Adaptor sinkronisasi.</strong> Adaptor sinkronisasi menyinkronkan data kalender
+pada perangkat pengguna dengan server atau sumber data lain. Dalam tabel 
+{@link android.provider.CalendarContract.Calendars} dan
+{@link android.provider.CalendarContract.Events}, 
+ada kolom yang dicadangkan untuk digunakan adaptor sinkronisasi.
+Penyedia dan aplikasi tidak boleh memodifikasinya. Sebenarnya, tabel-tabel itu tidak
+terlihat kecuali jika diakses sebagai adaptor sinkronisasi. Untuk informasi selengkapnya tentang
+adaptor sinkronisasi, lihat <a href="#sync-adapter">Adaptor Sinkronisasi</a>.</li>
+
+</ul>
+
+
+<h2 id="manifest">Izin Pengguna</h2>
+
+<p>Untuk membaca data kalender, aplikasi harus menyertakan izin {@link
+android.Manifest.permission#READ_CALENDAR} dalam file manifesnya. File
+harus menyertakan izin {@link android.Manifest.permission#WRITE_CALENDAR}
+untuk menghapus, menyisipkan, atau memperbarui data kalender:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;...&gt;
+    &lt;uses-sdk android:minSdkVersion=&quot;14&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.READ_CALENDAR&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.WRITE_CALENDAR&quot; /&gt;
+    ...
+&lt;/manifest&gt;
+</pre>
+
+
+<h2 id="calendar">Tabel Kalender</h2>
+
+<p>Tabel {@link android.provider.CalendarContract.Calendars} berisi data
+untuk tiap kalender. Kolom-kolom
+berikut ini bisa ditulisi oleh aplikasi maupun <a href="#sync-adapter">adaptor sinkronisasi</a>. 
+Untuk mengetahui daftar lengkap bidang-bidang yang didukung, lihat
+acuan {@link android.provider.CalendarContract.Calendars}.</p>
+<table>
+  <tr>
+    <th>Konstanta</th>
+    <th>Keterangan</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#NAME}</td>
+    <td>Nama kalender.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#CALENDAR_DISPLAY_NAME}</td>
+    <td>Nama kalender ini yang ditampilkan kepada pengguna.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#VISIBLE}</td>
+    
+    <td>Sebuah boolean yang menunjukkan apakah kalender dipilih untuk ditampilkan. Nilai
+0 menunjukkan bahwa kejadian yang terkait dengan kalender ini tidak boleh
+ditampilkan.  Nilai 1 menunjukkan bahwa kejadian yang terkait dengan kalender ini harus
+ditampilkan. Nilai ini memengaruhi pembuatan baris dalam tabel {@link
+android.provider.CalendarContract.Instances}.</td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.CalendarColumns#SYNC_EVENTS}</td>
+    
+    <td>Sebuah boolean yang menunjukkan apakah kalender harus disinkronkan dan apakah
+kejadiannya harus disimpan pada perangkat. Nilai 0 berarti jangan menyinkronkan kalender ini atau
+simpan kejadiannya pada perangkat.  Nilai 1 berarti menyinkronkan kejadian untuk kalender ini
+dan simpan kejadiannya pada perangkat.</td>
+  </tr>
+</table>
+
+<h3 id="query">Membuat query kalender</h3>
+
+<p>Berikut ini adalah contoh yang menampilkan cara mendapatkan kalender yang dimiliki oleh
+pengguna tertentu. Untuk memudahkan, dalam contoh ini, operasi query ditampilkan dalam
+thread antarmuka pengguna ("thread utama"). Dalam praktiknya, hal ini harus dilakukan dalam
+thread asinkron, sebagai ganti pada thread utama. Untuk diskusi selengkapnya, lihat 
+<a href="{@docRoot}guide/components/loaders.html">Loader</a>. Jika Anda tidak sekadar 
+membaca data melainkan memodifikasinya, lihat {@link android.content.AsyncQueryHandler}.
+</p>
+
+
+<pre>
+// Projection array. Creating indices for this array instead of doing
+// dynamic lookups improves performance.
+public static final String[] EVENT_PROJECTION = new String[] {
+    Calendars._ID,                           // 0
+    Calendars.ACCOUNT_NAME,                  // 1
+    Calendars.CALENDAR_DISPLAY_NAME,         // 2
+    Calendars.OWNER_ACCOUNT                  // 3
+};
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_ACCOUNT_NAME_INDEX = 1;
+private static final int PROJECTION_DISPLAY_NAME_INDEX = 2;
+private static final int PROJECTION_OWNER_ACCOUNT_INDEX = 3;</pre>
+  
+
+<div class="sidebox-wrapper"> <div class="sidebox"> <h3>Mengapa Anda harus menyertakan
+ACCOUNT_TYPE?</h3> <p>Jika Anda membuat query pada {@link
+android.provider.CalendarContract.Calendars#ACCOUNT_NAME
+Calendars.ACCOUNT_NAME}, Anda juga harus menyertakan 
+{@link android.provider.CalendarContract.Calendars#ACCOUNT_TYPE Calendars.ACCOUNT_TYPE}
+dalam pemilihan. Itu karena akun yang bersangkutan
+hanya dianggap unik mengingat <code>ACCOUNT_NAME</code> dan
+<code>ACCOUNT_TYPE</code>-nya. <code>ACCOUNT_TYPE</code> adalah string yang sesuai dengan
+autentikator akun yang digunakan bila akun didaftarkan dengan
+{@link android.accounts.AccountManager}. Ada juga sebuah tipe akun khusus yang disebut {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} untuk kalender
+yang tidak terkait dengan akun perangkat. Akun {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} tidak
+disinkronkan.</p> </div> </div> 
+
+
+<p> Di bagian berikutnya pada contoh ini, Anda akan membuat query. Pemilihan
+akan menetapkan kriteria untuk query. Dalam contoh ini, query mencari
+kalender yang memiliki <code>ACCOUNT_NAME</code>
+"sampleuser@google.com", <code>ACCOUNT_TYPE</code>
+"com.google", dan <code>OWNER_ACCOUNT</code>
+"sampleuser@google.com". Jika Anda ingin melihat semua kalender yang
+telah ditampilkan pengguna, bukan hanya kalender yang dimiliki pengguna, hilangkan <code>OWNER_ACCOUNT</code>.
+Query tersebut akan menghasilkan objek {@link android.database.Cursor}
+yang bisa Anda gunakan untuk menyusuri set hasil yang dikembalikan oleh
+query database. Untuk diskusi selengkapnya tentang penggunaan query dalam penyedia konten, 
+lihat <a href="{@docRoot}guide/topics/providers/content-providers.html">Penyedia Kalender</a>.</p>
+
+
+<pre>// Run query
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+Uri uri = Calendars.CONTENT_URI;   
+String selection = "((" + Calendars.ACCOUNT_NAME + " = ?) AND (" 
+                        + Calendars.ACCOUNT_TYPE + " = ?) AND ("
+                        + Calendars.OWNER_ACCOUNT + " = ?))";
+String[] selectionArgs = new String[] {"sampleuser@gmail.com", "com.google",
+        "sampleuser@gmail.com"}; 
+// Submit the query and get a Cursor object back. 
+cur = cr.query(uri, EVENT_PROJECTION, selection, selectionArgs, null);</pre>
+
+<p>Bagian berikutnya ini menggunakan kursor untuk merunut set hasil. Bagian ini menggunakan
+konstanta yang disiapkan pada awal contoh ini untuk menghasilkan nilai-nilai
+bagi tiap bidang.</p>
+    
+<pre>// Use the cursor to step through the returned records
+while (cur.moveToNext()) {
+    long calID = 0;
+    String displayName = null;
+    String accountName = null;
+    String ownerName = null;
+      
+    // Get the field values
+    calID = cur.getLong(PROJECTION_ID_INDEX);
+    displayName = cur.getString(PROJECTION_DISPLAY_NAME_INDEX);
+    accountName = cur.getString(PROJECTION_ACCOUNT_NAME_INDEX);
+    ownerName = cur.getString(PROJECTION_OWNER_ACCOUNT_INDEX);
+              
+    // Do something with the values...
+
+   ...
+}
+</pre>
+  
+<h3 id="modify-calendar">Memodifikasi kalender</h3>
+
+<p>Untuk melakukan pembaruan kalender, Anda bisa menyediakan {@link
+android.provider.BaseColumns#_ID} kalender itu baik sebagai ID yang ditambahkan ke
+URI 
+
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 
+atau sebagai item pemilihan pertama. Pemilihan
+harus diawali dengan <code>&quot;_id=?&quot;</code>, dan
+<code>selectionArg</code> pertama harus berupa {@link
+android.provider.BaseColumns#_ID} kalender. 
+Anda juga bisa melakukan pembaruan dengan menuliskan kode ID dalam URI. Contoh ini mengubah
+nama tampilan kalender dengan pendekatan 
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 
+:</p>
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long calID = 2;
+ContentValues values = new ContentValues();
+// The new display name for the calendar
+values.put(Calendars.CALENDAR_DISPLAY_NAME, &quot;Trevor's Calendar&quot;);
+Uri updateUri = ContentUris.withAppendedId(Calendars.CONTENT_URI, calID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);</pre>
+
+<h3 id="insert-calendar">Menyisipkan kalender</h2>
+
+<p>Kalender didesain untuk dikelola terutama oleh sebuah adaptor sinkronisasi, sehingga Anda
+hanya boleh menyisipkan kalender baru sebagai adaptor sinkronisasi. Biasanya,
+aplikasi hanya bisa membuat perubahan semu pada kalender, misalnya mengubah nama tampilan. Jika
+perlu membuat sebuah kalender lokal, aplikasi bisa melakukannya dengan melakukan
+penyisipan kalender sebagai adaptor sinkronisasi, menggunakan {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} dari {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}.
+{@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} 
+adalah sebuah tipe akun khusus untuk kalender yang tidak
+terkait dengan akun perangkat. Kalender tipe ini tidak disinkronkan dengan server. Untuk
+diskusi tentang adaptor sinkronisasi, lihat <a href="#sync-adapter">Adaptor Sinkronisasi</a>.</p>
+
+<h2 id="events">Tabel Events</h2>
+
+<p>Tabel {@link android.provider.CalendarContract.Events} berisi detail
+untuk tiap kejadian. Untuk menambah, memperbarui, atau menghapus kejadian, aplikasi harus
+menyertakan izin {@link android.Manifest.permission#WRITE_CALENDAR} dalam
+<a href="#manifest">file manifesnya</a>.</p>
+
+<p>Kolom-kolom Events berikut ini bisa ditulis oleh aplikasi maupun
+adaptor sinkronisasi. Untuk mengetahui daftar lengkap bidang-bidang yang didukung, lihat acuan {@link
+android.provider.CalendarContract.Events}.</p>
+
+<table>
+  <tr>
+    <th>Konstanta</th>
+    <th>Keterangan</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#CALENDAR_ID}</td>
+    <td>{@link android.provider.BaseColumns#_ID} kalender yang dimiliki kejadian.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ORGANIZER}</td>
+    <td>Email pengatur (pemilik) kejadian.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE}</td>
+    <td>Judul kejadian.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION}</td>
+    <td>Tempat kejadian. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION}</td>
+    <td>Keterangan kejadian.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTSTART}</td>
+    <td>Waktu mulai kejadian dalam milidetik UTC sejak waktu patokan. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTEND}</td>
+    <td>Waktu selesai kejadian dalam milidetik UTC sejak waktu patokan. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}</td>
+    <td>Zona waktu kejadian.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_END_TIMEZONE}</td>
+    <td>Zona waktu untuk waktu selesai kejadian.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DURATION}</td>
+    
+    <td>Durasi kejadian dalam format <a href="http://tools.ietf.org/html/rfc5545#section-3.8.2.5">RFC5545</a>.
+Misalnya, nilai <code>&quot;PT1H&quot;</code> menyatakan bahwa kejadian
+akan berlangsung satu jam, dan nilai <code>&quot;P2W&quot;</code> menunjukkan
+durasi 2 minggu. </td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ALL_DAY}</td>
+    
+    <td>Nilai 1 menunjukkan kejadian ini memakan waktu sehari penuh, seperti yang didefinisikan oleh
+zona waktu lokal. Nilai 0 menunjukkan kejadian adalah kejadian biasa yang mungkin dimulai
+dan selesai pada sembarang waktu selama suatu hari.</td>
+
+    
+  </tr>
+  
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RRULE}</td>
+    
+    <td>Aturan perulangan untuk format kejadian. Misalnya,
+<code>&quot;FREQ=WEEKLY;COUNT=10;WKST=SU&quot;</code>. Anda bisa menemukan
+contoh selengkapnya <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.3">di sini</a>.</td>
+    
+  </tr>
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RDATE}</td>
+    <td>Tanggal perulangan kejadian. 
+    Anda biasanya menggunakan {@link android.provider.CalendarContract.EventsColumns#RDATE} 
+    bersama dengan {@link android.provider.CalendarContract.EventsColumns#RRULE} 
+    untuk mendefinisikan satu set agregat
+kejadian berulang. Untuk diskusi selengkapnya, lihat <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.2">Spesifikasi RFC5545</a>.</td>
+</tr>
+ 
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY}</td>
+    
+    <td>Jika kejadian ini dihitung sebagai waktu sibuk atau waktu bebas yang bisa 
+dijadwalkan. </td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_MODIFY}</td>
+    <td>Apakah tamu bisa memodifikasi kejadian atau tidak. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_INVITE_OTHERS}</td>
+    <td>Apakah tamu bisa mengundang tamu lain atau tidak. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_SEE_GUESTS}</td>
+    <td>Apakah tamu bisa membaca daftar peserta atau tidak.</td>
+  </tr>
+</table>
+
+<h3 id="add-event">Menambahkan Kejadian</h3>
+
+<p>Bila aplikasi Anda menyisipkan kejadian baru, sebaiknya Anda menggunakan
+Intent {@link android.content.Intent#ACTION_INSERT INSERT}, seperti dijelaskan dalam <a href="#intent-insert">Menggunakan intent untuk menyisipkan kejadian</a>. Akan tetapi, jika
+perlu, Anda bisa menyisipkan kejadian secara langsung. Bagian ini menjelaskan
+caranya.</p>
+
+
+<p>Berikut ini adalah aturan untuk menyisipkan kejadian baru: </p>
+<ul>
+
+  <li>Anda harus menyertakan {@link
+android.provider.CalendarContract.EventsColumns#CALENDAR_ID} dan {@link
+android.provider.CalendarContract.EventsColumns#DTSTART}.</li>
+
+<li>Anda harus menyertakan {@link
+android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}. Untuk mendapatkan daftar
+ID zona waktu yang diinstal pada sistem, gunakan {@link
+java.util.TimeZone#getAvailableIDs()}. Perhatikan bahwa aturan ini tidak berlaku jika
+Anda menyisipkan kejadian melalui Intent {@link
+android.content.Intent#ACTION_INSERT INSERT}, yang dijelaskan dalam <a href="#intent-insert">Menggunakan intent untuk menyisipkan kejadian</a>&mdash;dalam
+skenario itu, sebuah zona waktu default akan diberikan.</li>
+  
+  <li>Untuk kejadian tidak-berulang, Anda harus menyertakan {@link
+android.provider.CalendarContract.EventsColumns#DTEND}. </li>
+  
+  
+  <li>Untuk kejadian berulang, Anda harus menyertakan sebuah {@link
+android.provider.CalendarContract.EventsColumns#DURATION} selain {@link
+android.provider.CalendarContract.EventsColumns#RRULE} atau {@link
+android.provider.CalendarContract.EventsColumns#RDATE}. Perhatikan bahwa aturan ini tidak berlaku jika
+Anda menyisipkan kejadian melalui Intent {@link
+android.content.Intent#ACTION_INSERT INSERT}, yang dijelaskan dalam <a href="#intent-insert">Menggunakan intent untuk menyisipkan kejadian</a>&mdash;dalam
+skenario itu, Anda bisa menggunakan {@link
+android.provider.CalendarContract.EventsColumns#RRULE} bersama {@link android.provider.CalendarContract.EventsColumns#DTSTART} dan {@link android.provider.CalendarContract.EventsColumns#DTEND}, dan aplikasi Calendar 
+akan mengubahnya menjadi durasi secara otomatis.</li>
+  
+</ul>
+
+<p>Berikut ini adalah contoh penyisipan kejadian. Penyisipan ini dilakukan dalam thread UI
+demi kemudahan. Dalam praktiknya, penyisipan dan pembaruan harus dilakukan di
+thread asinkron untuk memindahkan tindakan ke dalam thread latar belakang. Untuk
+informasi selengkapnya, lihat {@link android.content.AsyncQueryHandler}.</p>
+
+
+<pre>
+long calID = 3;
+long startMillis = 0; 
+long endMillis = 0;     
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 9, 14, 7, 30);
+startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 9, 14, 8, 45);
+endMillis = endTime.getTimeInMillis();
+...
+
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Events.DTSTART, startMillis);
+values.put(Events.DTEND, endMillis);
+values.put(Events.TITLE, &quot;Jazzercise&quot;);
+values.put(Events.DESCRIPTION, &quot;Group workout&quot;);
+values.put(Events.CALENDAR_ID, calID);
+values.put(Events.EVENT_TIMEZONE, "America/Los_Angeles");
+Uri uri = cr.insert(Events.CONTENT_URI, values);
+
+// get the event ID that is the last element in the Uri
+long eventID = Long.parseLong(uri.getLastPathSegment());
+// 
+// ... do something with event ID
+//
+//</pre>
+
+<p class="note"><strong>Catatan:</strong> Perhatikan cara contoh ini menangkap ID kejadian
+setelah kejadian dibuat. Inilah cara termudah untuk mendapatkan ID kejadian. Anda akan sering
+memerlukan ID kejadian untuk melakukan operasi kalender lainnya&mdash;misalnya, untuk menambahkan
+peserta atau pengingat ke kejadian.</p>
+
+
+<h3 id="update-event">Memperbarui Kejadian</h3>
+
+<p>Bila aplikasi Anda ingin memperbolehkan pengguna mengedit kejadian, sebaiknya
+gunakan Intent {@link android.content.Intent#ACTION_EDIT EDIT}, seperti
+dijelaskan dalam <a href="#intent-edit">Menggunakan intent untuk mengedit kejadian</a>.
+Akan tetapi, jika perlu, Anda bisa mengedit kejadian secara langsung. Untuk melakukan pembaruan
+suatu kejadian, Anda bisa memberikan <code>_ID</code> 
+kejadian itu sebagai ID yang ditambahkan ke URI ({@link
+android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 
+atau sebagai item pemilihan pertama. 
+Pemilihan harus dimulai dengan <code>&quot;_id=?&quot;</code>, dan
+<code>selectionArg</code> yang pertama harus berupa <code>_ID</code> kejadian. Anda juga bisa
+melakukan pembaruan dengan menggunakan pemilihan tanpa ID. Berikut ini adalah contoh pembaruan
+kejadian. Contoh ini mengubah judul kejadian dengan pendekatan 
+{@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}
+:</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 188;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri updateUri = null;
+// The new title for the event
+values.put(Events.TITLE, &quot;Kickboxing&quot;); 
+updateUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);  </pre>
+
+<h3 id="delete-event">Menghapus Kejadian</h3>
+
+<p>Anda bisa menghapus kejadian dengan {@link
+android.provider.BaseColumns#_ID} sebagai ID yang ditambahkan pada URI, atau dengan
+pemilihan standar. Jika Anda menggunakan ID yang ditambahkan, Anda tidak bisa melakukan pemilihan.
+Ada dua versi penghapusan: sebagai aplikasi dan sebagai adaptor sinkronisasi. Penghapusan
+aplikasi mengatur kolom yang <em>dihapus</em> ke 1. Flag ini yang memberi tahu
+adaptor sinkronisasi bahwa baris telah dihapus dan bahwa penghapusan ini harus
+diberitahukan ke server. Penghapusan adaptor sinkronisasi menghapus kejadian dari
+database bersama semua data terkaitnya. Berikut ini adalah contoh aplikasi
+yang menghapus kejadian melalui {@link android.provider.BaseColumns#_ID}-nya:</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 201;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri deleteUri = null;
+deleteUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().delete(deleteUri, null, null);
+Log.i(DEBUG_TAG, &quot;Rows deleted: &quot; + rows);  
+</pre>
+
+<h2 id="attendees">Tabel Peserta</h2>
+
+<p>Tiap baris tabel {@link android.provider.CalendarContract.Attendees}
+mewakili satu peserta atau tamu dari sebuah kejadian. Memanggil 
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()} 
+akan menghasilkan daftar peserta untuk
+kejadian dengan {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} yang diberikan. 
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} ini 
+harus cocok dengan {@link
+android.provider.BaseColumns#_ID} kejadian tertentu.</p> 
+
+<p>Tabel berikut mencantumkan
+bidang-bidang yang bisa ditulis. Saat menyisipkan peserta baru, Anda harus menyertakan semuanya 
+kecuali <code>ATTENDEE_NAME</code>.
+</p>
+
+
+<table>
+  <tr>
+    <th>Konstanta</th>
+    <th>Keterangan</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}</td>
+    <td>ID kejadian.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_NAME}</td>
+    <td>Nama peserta.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_EMAIL}</td>
+    <td>Alamat email peserta.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_RELATIONSHIP}</td>
+    <td><p>Hubungan peserta dengan kejadian. Salah satu dari:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ATTENDEE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ORGANIZER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_PERFORMER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_SPEAKER}</li>
+    </ul>
+    </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_TYPE}</td>
+    <td><p>Tipe peserta. Salah satu dari: </p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_REQUIRED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_OPTIONAL}</li>
+    </ul></td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS}</td>
+    <td><p>Status kehadiran peserta. Salah satu dari:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_ACCEPTED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_DECLINED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_INVITED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_TENTATIVE}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-attendees">Menambahkan Peserta</h3>
+
+<p>Berikut ini adalah contoh yang menambahkan satu peserta ke kejadian. Perhatikan bahwa
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} 
+diperlukan:</p>
+
+<pre>
+long eventID = 202;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Attendees.ATTENDEE_NAME, &quot;Trevor&quot;);
+values.put(Attendees.ATTENDEE_EMAIL, &quot;trevor@example.com&quot;);
+values.put(Attendees.ATTENDEE_RELATIONSHIP, Attendees.RELATIONSHIP_ATTENDEE);
+values.put(Attendees.ATTENDEE_TYPE, Attendees.TYPE_OPTIONAL);
+values.put(Attendees.ATTENDEE_STATUS, Attendees.ATTENDEE_STATUS_INVITED);
+values.put(Attendees.EVENT_ID, eventID);
+Uri uri = cr.insert(Attendees.CONTENT_URI, values);
+</pre>
+
+<h2 id="reminders">Tabel Pengingat</h2>
+
+<p>Tiap baris tabel {@link android.provider.CalendarContract.Reminders}
+mewakili satu pengingat untuk sebuah kejadian. Memanggil 
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()} akan menghasilkan daftar pengingat untuk
+kejadian dengan 
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} yang diberikan.</p>
+
+
+<p>Tabel berikut mencantumkan bidang-bidang yang bisa ditulis untuk pengingat. Semua bidang harus
+disertakan saat menyisipkan pengingat baru. Perhatikan bahwa adaptor sinkronisasi menetapkan
+tipe pengingat yang didukungnya dalam tabel {@link
+android.provider.CalendarContract.Calendars}. Lihat 
+{@link android.provider.CalendarContract.CalendarColumns#ALLOWED_REMINDERS} 
+untuk detailnya.</p>
+
+
+<table>
+  <tr>
+    <th>Konstanta</th>
+    <th>Keterangan</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#EVENT_ID}</td>
+    <td>ID kejadian.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#MINUTES}</td>
+    <td>Menit yang ditunggu untuk memicu kejadian pengingat.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#METHOD}</td>
+    <td><p>Metode alarm, seperti yang diatur pada server. Salah satu dari:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_ALERT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_DEFAULT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_EMAIL}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_SMS}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-reminders">Menambahkan Pengingat</h3>
+
+<p>Contoh ini menambahkan pengingat ke kejadian. Pengingat dipicu 15
+menit sebelum kejadian.</p>
+<pre>
+long eventID = 221;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Reminders.MINUTES, 15);
+values.put(Reminders.EVENT_ID, eventID);
+values.put(Reminders.METHOD, Reminders.METHOD_ALERT);
+Uri uri = cr.insert(Reminders.CONTENT_URI, values);</pre>
+
+<h2 id="instances">Tabel Instances</h2>
+
+<p>Tabel 
+{@link android.provider.CalendarContract.Instances} menyimpan
+waktu mulai dan waktu selesai kejadian. Tiap baris dalam tabel ini
+mewakili satu bentuk kejadian. Tabel instance tidak bisa ditulis dan hanya
+menyediakan sebuah cara untuk membuat query kejadian. </p>
+
+<p>Tabel berikut mencantumkan beberapa bidang yang bisa Anda query untuk suatu instance. Perhatikan 
+bahwa zona waktu didefinisikan oleh 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_TYPE} 
+dan 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_INSTANCES}.</p>
+
+
+<table>
+  <tr>
+    <th>Konstanta</th>
+    <th>Keterangan</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#BEGIN}</td>
+    <td>Waktu mulai instance, dalam milidetik UTC.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END}</td>
+    <td>Waktu selesai instance, dalam milidetik UTC.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_DAY}</td>
+    
+    <td>Hari selesai Julian dari instance, relatif terhadap
+zona waktu Kalender. 
+    
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_MINUTE}</td>
+    
+    <td>Menit selesai dari instance yang diukur dari tengah malam di zona waktu
+Kalender.</td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#EVENT_ID}</td>
+    <td>Kejadian <code>_ID</code> untuk instance ini.</td>
+  </tr>
+    <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_DAY}</td>
+    <td>Hari mulai Julian dari instance, relatif terhadap zona waktu Kalender. 
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_MINUTE}</td>
+    
+    <td>Menit mulai dari instance yang diukur dari tengah malam, relatif terhadap
+zona waktu Kalender. 
+</td>
+    
+  </tr>
+
+</table>
+
+<h3 id="query-instances">Membuat query tabel Instance</h3>
+
+<p>Untuk membuat query tabel Instances, Anda perlu menetapkan rentang waktu query
+dalam URI. Dalam contoh ini, {@link android.provider.CalendarContract.Instances}
+mendapatkan akses ke bidang {@link
+android.provider.CalendarContract.EventsColumns#TITLE} melalui
+implementasi antarmuka {@link android.provider.CalendarContract.EventsColumns}-nya. 
+Dengan kata lain, {@link
+android.provider.CalendarContract.EventsColumns#TITLE} dihasilkan melalui
+tampilan database, bukan melalui query terhadap tabel {@link
+android.provider.CalendarContract.Instances} mentah.</p>
+
+<pre>
+private static final String DEBUG_TAG = "MyActivity";
+public static final String[] INSTANCE_PROJECTION = new String[] {
+    Instances.EVENT_ID,      // 0
+    Instances.BEGIN,         // 1
+    Instances.TITLE          // 2
+  };
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_BEGIN_INDEX = 1;
+private static final int PROJECTION_TITLE_INDEX = 2;
+...
+
+// Specify the date range you want to search for recurring
+// event instances
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2011, 9, 23, 8, 0);
+long startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2011, 10, 24, 8, 0);
+long endMillis = endTime.getTimeInMillis();
+  
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+
+// The ID of the recurring event whose instances you are searching
+// for in the Instances table
+String selection = Instances.EVENT_ID + " = ?";
+String[] selectionArgs = new String[] {"207"};
+
+// Construct the query with the desired date range.
+Uri.Builder builder = Instances.CONTENT_URI.buildUpon();
+ContentUris.appendId(builder, startMillis);
+ContentUris.appendId(builder, endMillis);
+
+// Submit the query
+cur =  cr.query(builder.build(), 
+    INSTANCE_PROJECTION, 
+    selection, 
+    selectionArgs, 
+    null);
+   
+while (cur.moveToNext()) {
+    String title = null;
+    long eventID = 0;
+    long beginVal = 0;    
+    
+    // Get the field values
+    eventID = cur.getLong(PROJECTION_ID_INDEX);
+    beginVal = cur.getLong(PROJECTION_BEGIN_INDEX);
+    title = cur.getString(PROJECTION_TITLE_INDEX);
+              
+    // Do something with the values. 
+    Log.i(DEBUG_TAG, "Event:  " + title); 
+    Calendar calendar = Calendar.getInstance();
+    calendar.setTimeInMillis(beginVal);  
+    DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
+    Log.i(DEBUG_TAG, "Date: " + formatter.format(calendar.getTime()));    
+    }
+ }</pre>
+
+<h2 id="intents">Intent Kalender</h2>
+<p>Aplikasi Anda tidak memerlukan <a href="#manifest">izin</a> untuk membaca dan menulis data kalender. Sebagai gantinya, aplikasi bisa menggunakan intent yang didukung oleh aplikasi Kalender Android untuk menyerahkan operasi baca dan tulis ke aplikasi itu. Tabel berikut mencantumkan intent yang didukung oleh Penyedia Kalender:</p>
+<table>
+  <tr>
+    <th>Tindakan</th>
+    <th>URI</th>
+
+    <th>Keterangan</th>
+    <th>Ekstra</th>
+  </tr>
+  <tr>
+    <td><br>
+    {@link android.content.Intent#ACTION_VIEW VIEW} <br></td>
+    <td><p><code>content://com.android.calendar/time/&lt;ms_since_epoch&gt;</code></p>
+    Anda juga bisa mengacu ke URI dengan 
+{@link android.provider.CalendarContract#CONTENT_URI CalendarContract.CONTENT_URI}. 
+Untuk contoh yang menggunakan intent ini, lihat <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">Menggunakan intent untuk menampilkan data kalender</a>. 
+
+    </td>
+    <td>Membuka kalender pada waktu yang ditetapkan oleh <code>&lt;ms_since_epoch&gt;</code>.</td>
+    <td>Tidak ada.</td>
+  </tr>
+  <tr>
+    <td><p>{@link android.content.Intent#ACTION_VIEW VIEW} </p>
+
+     </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+    Anda juga bisa mengacu ke URI dengan 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Untuk contoh yang menggunakan intent ini, lihat <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">Menggunakan intent untuk menampilkan data kalender</a>.
+    
+    </td>
+    <td>Menampilkan kejadian yang ditetapkan oleh <code>&lt;event_id&gt;</code>.</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+  Anda juga bisa mengacu ke URI dengan 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Untuk contoh penggunaan intent ini, lihat <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-edit">Menggunakan intent untuk mengedit kejadian</a>.
+    
+    
+    </td>
+    <td>Mengedit kejadian yang ditetapkan oleh <code>&lt;event_id&gt;</code>.</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} <br>
+    <br>
+    {@link android.content.Intent#ACTION_INSERT INSERT} </td>
+    <td><p><code>content://com.android.calendar/events</code></p>
+    
+   Anda juga bisa mengacu ke URI dengan 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Untuk contoh penggunaan intent ini, lihat <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-insert">Menggunakan intent untuk menyisipkan kejadian</a>.
+    
+    </td>
+
+    <td>Membuat sebuah kejadian.</td>
+    <td>Ekstra apa saja yang tercantum dalam tabel di bawah.</td>
+  </tr>
+</table>
+
+<p>Tabel berikut mencantumkan ekstra intent yang didukung oleh Penyedia Kalender:
+</p>
+<table>
+  <tr>
+    <th>Ekstra Intent</th>
+    <th>Keterangan</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE Events.TITLE}</td>
+    <td>Nama kejadian.</td>
+  </tr>
+  <tr>
+  
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME}</td>
+    <td>Waktu mulai kejadian dalam milidetik sejak waktu patokan.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME}</td>
+    
+    <td>Waktu selesai kejadian dalam milidetik sejak waktu patokan.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_ALL_DAY
+CalendarContract.EXTRA_EVENT_ALL_DAY}</td>
+    
+    <td>Sebuah boolean yang menunjukkan bahwa kejadian sehari penuh. Nilai bisa
+<code>true</code> atau <code>false</code>.</td> </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION
+Events.EVENT_LOCATION}</td>
+    
+    <td>Lokasi kejadian.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION
+Events.DESCRIPTION}</td>
+    
+    <td>Keterangan kejadian.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}</td>
+    <td>Alamat email mereka yang harus diundang berupa daftar yang dipisahkan koma.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#RRULE Events.RRULE}</td>
+    <td>Aturan perulangan kejadian.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#ACCESS_LEVEL
+Events.ACCESS_LEVEL}</td>
+    
+    <td>Apakah kejadian bersifat privat atau publik.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY
+Events.AVAILABILITY}</td>
+    
+    <td>Jika kejadian ini dihitung sebagai waktu sibuk atau waktu bebas yang bisa dijadwalkan.</td>
+    
+</table> 
+<p>Bagian berikut menjelaskan cara menggunakan semua intent ini.</p>
+
+
+<h3 id="intent-insert">Menggunakan intent untuk menyisipkan kejadian</h3>
+
+<p>Penggunaan Intent {@link android.content.Intent#ACTION_INSERT INSERT}
+akan memungkinkan aplikasi Anda menyerahkan tugas penyisipan kejadian ke Kalender itu sendiri.
+Dengan pendekatan ini, aplikasi Anda bahkan tidak perlu menyertakan izin {@link
+android.Manifest.permission#WRITE_CALENDAR} dalam <a href="#manifest">file manifesnya</a>.</p>
+
+  
+<p>Bila pengguna menjalankan aplikasi yang menggunakan pendekatan ini, aplikasi akan mengirim
+izin ke Kalender untuk menyelesaikan penambahan kejadian. Intent {@link
+android.content.Intent#ACTION_INSERT INSERT} menggunakan bidang-bidang ekstra
+untuk mengisi formulir lebih dahulu dengan detail kejadian dalam Kalender. Pengguna nanti bisa
+membatalkan kejadian, mengedit formulir sebagaimana diperlukan, atau menyimpan kejadian ke
+kalender mereka.</p>
+  
+
+
+<p>Berikut ini adalah cuplikan kode yang menjadwalkan kejadian pada tanggal 19 Januari 2012, yang berjalan
+dari 7:30 pagi hingga 8:30 pagi Perhatikan hal-hal berikut tentang cuplikan kode ini:</p>
+
+<ul>
+  <li>Cuplikan kode ini menetapkan {@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} 
+  sebagai URI-nya.</li>
+  
+  <li>Cuplikan kode ini menggunakan bidang-bidang ekstra {@link
+android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME} dan {@link
+android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME} untuk mengisi dahulu formulir
+dengan waktu kejadian. Nilai-nilai untuk waktu ini harus dalam milidetik UTC
+sejak waktu patokan.</li>
+  
+  <li>Cuplikan kode ini menggunakan bidang ekstra {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}
+untuk memberikan daftar undangan yang dipisah koma, yang ditetapkan melalui alamat email.</li>
+  
+</ul>
+<pre>
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 0, 19, 7, 30);
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 0, 19, 8, 30);
+Intent intent = new Intent(Intent.ACTION_INSERT)
+        .setData(Events.CONTENT_URI)
+        .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
+        .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
+        .putExtra(Events.TITLE, &quot;Yoga&quot;)
+        .putExtra(Events.DESCRIPTION, &quot;Group class&quot;)
+        .putExtra(Events.EVENT_LOCATION, &quot;The gym&quot;)
+        .putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)
+        .putExtra(Intent.EXTRA_EMAIL, &quot;rowan@example.com,trevor@example.com&quot;);
+startActivity(intent);
+</pre>
+
+<h3 id="intent-edit">Menggunakan intent untuk mengedit kejadian</h3>
+
+<p>Anda bisa memperbarui kejadian secara langsung, seperti dijelaskan dalam <a href="#update-event">Memperbarui kejadian</a>. Namun penggunaan Intent {@link
+android.content.Intent#ACTION_EDIT EDIT} memungkinkan aplikasi yang
+tidak memiliki izin untuk menyerahkan pengeditan kejadian ke aplikasi Kalender.
+Bila pengguna selesai mengedit kejadian dalam Kalender, pengguna akan dikembalikan ke
+aplikasi semula.</p> <p>Berikut ini adalah contoh intent yang mengatur
+judul baru bagi kejadian yang ditetapkan dan memungkinkan pengguna mengedit kejadian dalam Kalender.</p>
+
+
+<pre>long eventID = 208;
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_EDIT)
+    .setData(uri)
+    .putExtra(Events.TITLE, &quot;My New Title&quot;);
+startActivity(intent);</pre>
+
+<h3 id="intent-view">Menggunakan intent untuk menampilkan data kalender</h3>
+<p>Penyedia Kalender menyediakan dua cara menggunakan Intent {@link android.content.Intent#ACTION_VIEW VIEW}:</p>
+<ul>
+  <li>Untuk membuka Kalender pada tanggal tertentu.</li>
+  <li>Untuk menampilkan sebuah kejadian.</li>
+
+</ul>
+<p>Berikut ini adalah contoh yang menampilkan cara membuka Kalender pada tanggal tertentu:</p>
+<pre>// A date-time specified in milliseconds since the epoch.
+long startMillis;
+...
+Uri.Builder builder = CalendarContract.CONTENT_URI.buildUpon();
+builder.appendPath(&quot;time&quot;);
+ContentUris.appendId(builder, startMillis);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+    .setData(builder.build());
+startActivity(intent);</pre>
+
+<p>Berikut ini adalah contoh yang menampilkan cara membuka kejadian untuk menampilkan:</p>
+<pre>long eventID = 208;
+...
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+   .setData(uri);
+startActivity(intent);
+</pre>
+
+
+<h2 id="sync-adapter">Adaptor Sinkronisasi</h2>
+
+
+<p>Hanya ada perbedaan kecil dalam cara aplikasi dan adaptor sinkronisasi
+mengakses Penyedia Kalender:</p>
+
+<ul>
+  <li>Adaptor sinkronisasi perlu menetapkan bahwa dirinya sebuah adaptor sinkronisasi dengan mengatur {@link android.provider.CalendarContract#CALLER_IS_SYNCADAPTER} ke <code>true</code>.</li>
+  
+  
+  <li>Adaptor sinkronisasi perlu memberikan {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_NAME} dan {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} sebagai parameter query dalam URI. </li>
+  
+  <li>Adaptor sinkronisasi memiliki akses tulis ke lebih banyak kolom daripada aplikasi atau widget.
+  Misalnya, aplikasi hanya bisa mengubah sedikit karakteristik kalender, 
+  misalnya nama, nama tampilan, pengaturan visibilitas, dan apakah kalender
+  disinkronkan atau tidak. Sebagai perbandingan, adaptor sinkronisasi bisa mengakses bukan hanya kolom-kolom itu, namun banyak kolom lainnya,
+  misalnya warna kalender, zona waktu, tingkat akses, lokasi, dan seterusnya.
+Akan tetapi, adaptor sinkronisasi dibatasi pada <code>ACCOUNT_NAME</code> dan 
+<code>ACCOUNT_TYPE</code> yang ditetapkannya.</li> </ul>
+
+<p>Berikut ini adalah metode pembantu yang bisa Anda gunakan untuk menghasilkan URI bagi penggunaan dengan adaptor sinkronisasi:</p>
+<pre> static Uri asSyncAdapter(Uri uri, String account, String accountType) {
+    return uri.buildUpon()
+        .appendQueryParameter(android.provider.CalendarContract.CALLER_IS_SYNCADAPTER,&quot;true&quot;)
+        .appendQueryParameter(Calendars.ACCOUNT_NAME, account)
+        .appendQueryParameter(Calendars.ACCOUNT_TYPE, accountType).build();
+ }
+</pre>
+<p>Untuk contoh implementasi adaptor sinkronisasi (yang tidak terkait secara khusus dengan Kalender), lihat 
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a>.
diff --git a/docs/html-intl/intl/in/guide/topics/providers/contacts-provider.jd b/docs/html-intl/intl/in/guide/topics/providers/contacts-provider.jd
new file mode 100644
index 0000000..994c56b
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/providers/contacts-provider.jd
@@ -0,0 +1,2356 @@
+page.title=Penyedia Kontak
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Tampilan Cepat</h2>
+<ul>
+    <li>Repository informasi Android tentang orang.</li>
+    <li>
+        Sinkronisasi dengan web.
+    </li>
+    <li>
+        Mengintegrasikan data aliran sosial.
+    </li>
+</ul>
+<h2>Dalam dokumen ini</h2>
+<ol>
+    <li>
+        <a href="#InformationTypes">Organisasi Penyedia Kontak</a>
+    </li>
+    <li>
+        <a href="#RawContactBasics">Kontak mentah</a>
+    </li>
+    <li>
+        <a href="#DataBasics">Data</a>
+    </li>
+    <li>
+        <a href="#ContactBasics">Kontak</a>
+    </li>
+    <li>
+        <a href="#Sources">Data Dari Adaptor Sinkronisasi</a>
+    </li>
+    <li>
+        <a href="#Permissions">Izin yang Diperlukan</a>
+    </li>
+    <li>
+        <a href="#UserProfile">Profil Pengguna</a>
+    </li>
+    <li>
+        <a href="#ContactsProviderMetadata">Metadata Penyedia Kontak</a>
+    </li>
+    <li>
+        <a href="#Access">Akses Penyedia Kontak</a>
+    <li>
+    </li>
+    <li>
+        <a href="#SyncAdapters">Adaptor Sinkronisasi Penyedia Kontak</a>
+    </li>
+    <li>
+        <a href="#SocialStream">Data Aliran Sosial</a>
+    </li>
+    <li>
+        <a href="#AdditionalFeatures">Fitur Tambahan Penyedia Kontak</a>
+    </li>
+</ol>
+<h2>Kelas-kelas utama</h2>
+<ol>
+    <li>{@link android.provider.ContactsContract.Contacts}</li>
+    <li>{@link android.provider.ContactsContract.RawContacts}</li>
+    <li>{@link android.provider.ContactsContract.Data}</li>
+    <li>{@code android.provider.ContactsContract.StreamItems}</li>
+</ol>
+<h2>Contoh-Contoh Terkait</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}resources/samples/ContactManager/index.html">
+        Contact Manager
+        </a>
+    </li>
+    <li>
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+        Contoh Adaptor Sinkronisasi</a>
+    </li>
+</ol>
+<h2>Lihat Juga</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Dasar-Dasar Penyedia Konten
+        </a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    Penyedia Kontak adalah komponen Android yang tangguh dan fleksibel dalam mengelola
+ repository data pusat tentang orang di perangkat. Penyedia Kontak adalah sumber data
+ yang Anda lihat dalam aplikasi kontak perangkat, dan Anda juga bisa mengakses datanya dalam aplikasi
+    Anda sendiri serta mentransfer data antara perangkat dan layanan online. Penyedia mengakomodasi
+    berbagai sumber data dan mencoba mengelola data sebanyak mungkin untuk setiap orang, sehingga
+   organisasinya menjadi kompleks. Karena itu, API penyedia menyertakan
+    satu set kelas kontrak dan antarmuka ekstensif yang membantu pengambilan dan
+    modifikasi data.
+</p>
+<p>
+    Panduan ini menjelaskan hal-hal berikut:
+</p>
+    <ul>
+        <li>
+            Struktur penyedia dasar.
+        </li>
+        <li>
+            Cara mengambil data dari penyedia.
+        </li>
+        <li>
+            Cara memodifikasi data di penyedia.
+        </li>
+        <li>
+            Cara menulis adaptor sinkronisasi untuk menyinkronkan data dari server Anda ke
+            Penyedia Kontak.
+        </li>
+    </ul>
+<p>
+    Panduan ini beranggapan bahwa Anda mengetahui dasar-dasar penyedia konten Android. Untuk mengetahui selengkapnya
+    tentang penyedia konten Android, bacalah
+    panduan<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+    Dasar-Dasar Penyedia Konten</a>. Contoh aplikasi
+    <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">Sample Sync Adapter</a>
+    adalah contoh penggunaan adaptor sinkronisasi untuk mentransfer data antara Penyedia Kontak
+    dan contoh aplikasi yang memiliki host di Google Web Services.
+</p>
+<h2 id="InformationTypes">Organisasi Penyedia Kontak</h2>
+<p>
+    Penyedia Kontak adalah komponen penyedia konten Android. Komponen ini memelihara tiga tipe
+    data tentang seseorang, masing-masing disesuaikan dengan tabel yang ditawarkan oleh penyedia, seperti
+    yang terlihat dalam gambar 1:
+</p>
+<img src="{@docRoot}images/providers/contacts_structure.png" alt="" height="364" id="figure1" />
+<p class="img-caption">
+  <strong>Gambar 1.</strong> Struktur tabel Penyedia Kontak.
+</p>
+<p>
+    Ketiga tabel disebut secara umum menurut nama kelas kontrak. Kelas
+    mendefinisikan konstanta untuk URI konten, nama kolom, dan nilai kolom yang digunakan oleh tabel-tabel:
+</p>
+<dl>
+    <dt>
+        Tabel {@link android.provider.ContactsContract.Contacts}
+    </dt>
+    <dd>
+        Baris mewakili orang yang berbeda, berdasarkan agregrasi baris kontak mentah.
+    </dd>
+    <dt>
+        Tabel {@link android.provider.ContactsContract.RawContacts}
+    </dt>
+    <dd>
+        Baris berisi rangkuman data seseorang, untuk tipe dan akun pengguna tertentu.
+    </dd>
+    <dt>
+        Tabel {@link android.provider.ContactsContract.Data}
+    </dt>
+    <dd>
+        Baris berisi data untuk kontak mentah, seperti alamat email atau nomor telepon.
+    </dd>
+</dl>
+<p>
+    Tabel lain yang diwakili oleh kelas kontrak dalam {@link android.provider.ContactsContract}
+    adalah tabel tambahan yang digunakan Penyedia Kontak untuk mengelola operasinya atau mendukung
+    fungsi tertentu dalam kontak atau aplikasi telepon perangkat.
+</p>
+<h2 id="RawContactBasics">Kontak mentah</h2>
+<p>
+    Kontak mentah mewakili data seseorang yang berasal dari satu tipe akun dan nama
+  akun. Karena Penyedia Kontak memungkinkan lebih dari satu layanan online sebagai sumber
+    data untuk satu orang, Penyedia Kontak memungkinkan multikontak mentah untuk orang yang sama.
+    Multikontak mentah juga memungkinkan seorang pengguna mengombinasikan data seseorang dari lebih dari satu akun
+    bertipe akun yang sama.
+</p>
+<p>
+    Sebagian besar data untuk kontak mentah tidak disimpan dalam
+    tabel {@link android.provider.ContactsContract.RawContacts}. Sebagai gantinya, data tersebut disimpan dalam satu atau beberapa baris
+    dalam tabel {@link android.provider.ContactsContract.Data}. Setiap baris data memiliki kolom
+    {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID Data.RAW_CONTACT_ID} yang
+    berisi nilai {@code android.provider.BaseColumns#_ID RawContacts._ID} dari
+    baris {@link android.provider.ContactsContract.RawContacts} induknya.
+</p>
+<h3 id="RawContactsColumns">Kolom-kolom kontak mentah yang penting</h3>
+<p>
+    Kolom-kolom penting dalam tabel {@link android.provider.ContactsContract.RawContacts}
+    tercantum pada tabel 1. Bacalah catatan yang diberikan setelah tabel:
+</p>
+<p class="table-caption" id="table1">
+    <strong>Tabel 1.</strong> Kolom-kolom kontak mentah yang penting.
+</p>
+<table>
+    <tr>
+        <th scope="col">Nama kolom</th>
+        <th scope="col">Kegunaan</th>
+        <th scope="col">Catatan</th>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_NAME}
+        </td>
+        <td>
+            Nama akun untuk tipe akun yang merupakan sumber kontak mentah ini.
+            Misalnya, nama akun dari akun Google adalah salah satu alamat Gmail
+   pemilik perangkat. Lihat entri berikutnya untuk
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE} untuk informasi
+            selengkapnya.
+        </td>
+        <td>
+            Format nama ini khusus untuk tipe akun ini. Format ini tidak
+            harus alamat email.
+        </td>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}
+        </td>
+        <td>
+            Tipe akun yang merupakan sumber kontak mentah ini. Misalnya, tipe
+           akun dari akun Google adalah <code>com.google</code>. Selalu batasi tipe akun Anda
+            dengan identifier domain untuk domain yang Anda miliki atau kontrol. Hal ini akan memastikan bahwa tipe
+            akun Anda bersifat unik.
+        </td>
+        <td>
+            Tipe akun yang menawarkan data kontak biasanya memiliki adaptor sinkronisasi terkait yang
+            menyinkronkan dengan Penyedia Kontak.
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.RawContactsColumns#DELETED}
+        </td>
+        <td>
+            Flag "deleted" untuk kontak mentah.
+        </td>
+        <td>
+            Flag ini memungkinkan Penyedia Kontak memelihara baris secara internal hingga adaptor
+            sinkronisasi bisa menghapus baris dari server mereka dan akhirnya menghapus baris
+            dari repository.
+        </td>
+    </tr>
+</table>
+<h4>Catatan</h4>
+<p>
+    Berikut ini adalah catatan penting tentang
+    tabel {@link android.provider.ContactsContract.RawContacts}:
+</p>
+<ul>
+    <li>
+        Nama kontak mentah tidak disimpan di barisnya dalam
+        {@link android.provider.ContactsContract.RawContacts}. Sebagai gantinya, nama tersebut disimpan dalam
+         tabel {@link android.provider.ContactsContract.Data}, pada
+        baris {@link android.provider.ContactsContract.CommonDataKinds.StructuredName}. Kontak mentah
+        hanya memiliki satu baris dari tipe ini dalam tabel {@link android.provider.ContactsContract.Data}.
+    </li>
+    <li>
+        <strong>Perhatian:</strong> Untuk menggunakan data akun sendiri dalam baris kontak mentah, akun harus
+        didaftarkan lebih dahulu dengan {@link android.accounts.AccountManager}. Caranya, mintalah
+        pengguna untuk menambahkan tipe akun dan nama akun ke dalam daftar akun. Jika Anda tidak
+        melakukannya, Penyedia Kontak secara otomatis akan menghapus baris kontak mentah Anda.
+        <p>
+            Misalnya, Anda menginginkan aplikasi memelihara data kontak untuk layanan berbasis web
+            dengan domain {@code com.example.dataservice}, dan akun pengguna untuk layanan Anda
+            adalah {@code becky.sharp@dataservice.example.com}, pengguna harus menambahkan lebih dahulu "type"
+            akun ({@code com.example.dataservice}) dan "name" akun
+            ({@code becky.smart@dataservice.example.com}) sebelum aplikasi Anda bisa menambahkan baris kontak mentah.
+            Anda bisa menjelaskan ketentuan ini kepada pengguna dalam dokumentasi, atau meminta
+            pengguna untuk menambahkan tipe dan nama, atau keduanya. Tipe akun dan nama akun
+            dijelaskan lebih detail di bagian berikutnya.
+    </li>
+</ul>
+<h3 id="RawContactsExample">Sumber data kontak mentah</h3>
+<p>
+    Untuk memahami cara kerja kontak mentah, perhatikan pengguna "Emily Dickinson" yang mendefinisikan
+    tiga akun pengguna berikut pada perangkatnya:
+</p>
+<ul>
+    <li><code>emily.dickinson@gmail.com</code></li>
+    <li><code>emilyd@gmail.com</code></li>
+    <li>Akun Twitter "belle_of_amherst"</li>
+</ul>
+<p>
+    Pengguna ini telah mengaktifkan <em>Sync Contacts</em> untuk ketiga akun dalam pengaturan
+    <em>Accounts</em>.
+</p>
+<p>
+    Anggaplah Emily Dickinson membuka jendela browser, masuk ke Gmail sebagai
+    <code>emily.dickinson@gmail.com</code>, membuka
+    Contacts, dan menambahkan "Thomas Higginson". Kemudian, ia masuk ke Gmail sebagai
+    <code>emilyd@gmail.com</code> dan mengirimkan email kepada "Thomas Higginson", yang
+    menambahkan Thomas secara otomatis sebagai kontak. Ia juga mengikuti "colonel_tom" (ID Twitter Thomas Higginson) di
+    Twitter.
+</p>
+<p>
+    Penyedia Kontak membuat tiga kontak mentah akibat pekerjaan ini:
+</p>
+<ol>
+    <li>
+        Kontak mentah untuk "Thomas Higginson" yang dikaitkan dengan <code>emily.dickinson@gmail.com</code>.
+        Tipe akun penggunanya adalah Google.
+    </li>
+    <li>
+        Kontak mentah kedua untuk "Thomas Higginson" yang dikaitkan dengan <code>emilyd@gmail.com</code>.
+        Tipe akun pengguna juga Google. Ada kontak mentah kedua
+       meskipun nama tersebut identik dengan nama sebelumnya karena orang bersangkutan ditambahkan untuk
+        akun pengguna yang berbeda.
+    </li>
+    <li>
+        Kontak mentah ketiga untuk "Thomas Higginson" yang dikaitkan dengan "belle_of_amherst". Tipe
+        akun penggunanya adalah Twitter.
+    </li>
+</ol>
+<h2 id="DataBasics">Data</h2>
+<p>
+    Seperti yang telah disebutkan, data untuk kontak mentah disimpan dalam
+    baris {@link android.provider.ContactsContract.Data} yang ditautkan dengan nilai
+    <code>_ID</code> kontak mentah. Cara ini memungkinkan satu kontak mentah memiliki beberapa instance tipe data
+    yang sama dengan alamat email atau nomor telepon. Misalnya, jika
+    "Thomas Higginson" untuk {@code emilyd@gmail.com} (baris kontak mentah untuk Thomas Higginson
+   yang dikaitkan dengan akun Google <code>emilyd@gmail.com</code>) memiliki alamat email rumah
+    <code>thigg@gmail.com</code> dan alamat email kerja
+    <code>thomas.higginson@gmail.com</code>, Penyedia Kontak akan menyimpan dua baris alamat
+    email dan menautkan keduanya ke kontak mentah.
+</p>
+<p>
+    Perhatikan bahwa tipe data yang berbeda disimpan dalam satu tabel ini. Baris-baris nama tampilan,
+    nomor telepon, email, alamat surat, foto, dan data situs web semuanya bisa ditemukan dalam
+    tabel {@link android.provider.ContactsContract.Data}. Untuk membantu mengelola ini,
+    tabel {@link android.provider.ContactsContract.Data} memiliki beberapa kolom dengan nama deskriptif,
+    dalam kolom lain dengan nama generik. Konten kolom bernama deskriptif memiliki arti yang sama
+    terlepas dari tipe data dalam barisnya, sedangkan konten kolom bernama generik memiliki
+    arti yang berbeda-beda sesuai dengan tipe data.
+</p>
+<h3 id="DescriptiveColumns">Nama kolom deskriptif</h3>
+<p>
+    Beberapa contoh nama kolom deskriptif adalah:
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Data#RAW_CONTACT_ID}
+    </dt>
+    <dd>
+        Nilai kolom <code>_ID</code> kontak mentah untuk data ini.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data#MIMETYPE}
+    </dt>
+    <dd>
+        Tipe data yang disimpan dalam baris ini, dinyatakan berupa tipe MIME custom. Penyedia Kontak
+        menggunakan tipe MIME yang didefinisikan dalam subkelas
+        {@link android.provider.ContactsContract.CommonDataKinds}. Tipe MIME ini adalah sumber terbuka,
+        dan bisa digunakan oleh setiap aplikasi atau adaptor sinkronisasi yang bisa digunakan bersama Penyedia Kontak.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY}
+    </dt>
+    <dd>
+        Jika tipe baris data ini bisa terjadi lebih dari satu kali untuk suatu kontak mentah,
+        kolom {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY}
+        menandai baris data yang berisi data utama untuk tipe itu. Misalnya, jika
+        pengguna menekan lama sebuah nomor telepon untuk kontak dan memilih <strong>Set default</strong>,
+       maka baris {@link android.provider.ContactsContract.Data} yang berisi angka itu
+        mengatur kolom {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY}-nya ke suatu
+        nilai bukan nol.
+    </dd>
+</dl>
+<h3 id="GenericColumns">Nama kolom generik</h3>
+<p>
+    Ada 15 kolom generik bernama <code>DATA1</code> hingga
+    <code>DATA15</code> yang tersedia secara umum dan empat kolom generik
+    tambahan <code>SYNC1</code> hingga <code>SYNC4</code> yang harus digunakan hanya oleh adaptor
+    sinkronisasi. Konstanta nama kolom generik selalu berfungsi, terlepas dari tipe
+    data dalam baris .
+</p>
+<p>
+    Kolom <code>DATA1</code> diindeks.  Penyedia Kontak selalu menggunakan kolom ini untuk
+    data yang diharapkan penyedia akan menjadi target yang paling sering dari suatu query. Misalnya,
+    dalam baris email, kolom ini berisi alamat email sebenarnya.
+</p>
+<p>
+    Sesuai konvensi, kolom <code>DATA15</code> dicadangkan untuk menyimpan data Binary Large Object
+    (BLOB) seperti thumbnail foto.
+</p>
+<h3 id="TypeSpecificNames">Nama kolom bertipe spesifik</h3>
+<p>
+    Guna memudahkan pekerjaan dengan kolom untuk tipe baris tertentu, Penyedia Kontak
+    juga menyediakan konstanta nama kolom bertipe spesifik, yang didefinisikan dalam subkelas
+    {@link android.provider.ContactsContract.CommonDataKinds}. Konstanta cuma memberikan nama
+    konstanta yang berbeda ke nama kolom yang sama, yang membantu Anda mengakses data dalam baris
+    bertipe spesifik.
+</p>
+<p>
+    Misalnya, kelas {@link android.provider.ContactsContract.CommonDataKinds.Email} mendefinisikan
+    konstanta nama kolom bertipe spesifik untuk baris {@link android.provider.ContactsContract.Data}
+    yang memiliki tipe MIME
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+    Email.CONTENT_ITEM_TYPE}. Kelas ini berisi konstanta
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} untuk kolom
+    alamat email. Nilai sesungguhnya dari
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} adalah "data1", yang
+    sama dengan nama generik kolom.
+</p>
+<p class="caution">
+    <strong>Perhatian:</strong> Jangan tambahkan data custom Anda sendiri ke
+    tabel {@link android.provider.ContactsContract.Data} dengan menggunakan baris yang memiliki salah satu
+    tipe MIME yang telah didefinisikan penyedia. Jika melakukannya, Anda bisa kehilangan data atau menyebabkan penyedia
+    gagal berfungsi. Misalnya, Anda seharusnya tidak menambahkan baris bertipe MIME
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+    Email.CONTENT_ITEM_TYPE} yang berisi nama pengguna sebagai ganti alamat email dalam
+    kolom <code>DATA1</code>. Jika Anda menggunakan tipe MIME custom sendiri untuk baris bersangkutan, maka Anda bebas
+    untuk mendefinisikan nama kolom bertipe spesifik dan menggunakan kolom sekehendak Anda.
+</p>
+<p>
+    Gambar 2 menampilkan cara kolom deskriptif dan kolom data muncul dalam
+    baris {@link android.provider.ContactsContract.Data}, dan cara nama kolom bertipe spesifik "melapisi"
+    nama kolom generik
+</p>
+<img src="{@docRoot}images/providers/data_columns.png" alt="How type-specific column names map to generic column names" height="311" id="figure2" />
+<p class="img-caption">
+  <strong>Gambar 2.</strong> Nama kolom bertipe spesifik dan nama kolom generik.
+</p>
+<h3 id="ColumnMaps">Kelas nama kolom bertipe spesifik</h3>
+<p>
+    Tabel 2 berisi daftar kelas nama kolom bertipe spesifik yang paling umum digunakan:
+</p>
+<p class="table-caption" id="table2">
+  <strong>Tabel 2.</strong> Kelas nama kolom bertipe spesifik</p>
+<table>
+  <tr>
+    <th scope="col">Kelas pemetaan</th>
+    <th scope="col">Tipe data</th>
+    <th scope="col">Catatan</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredName}</td>
+    <td>Data nama untuk kontak mentah yang dikaitkan dengan baris data ini.</td>
+    <td>Kontak mentah hanya memiliki salah satu baris ini.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Photo}</td>
+    <td>Foto utama untuk kontak mentah yang dikaitkan dengan baris data ini.</td>
+    <td>Kontak mentah hanya memiliki salah satu baris ini.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Email}</td>
+    <td>Alamat email untuk kontak mentah yang dikaitkan dengan baris data ini.</td>
+    <td>Kontak mentah bisa memiliki beberapa alamat email.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal}</td>
+    <td>Alamat pos untuk kontak mentah yang dikaitkan dengan baris data ini.</td>
+    <td>Kontak mentah bisa memiliki beberapa alamat email.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}</td>
+    <td>Identifier yang menautkan kontak mentah ke salah satu grup dalam Penyedia Kontak.</td>
+    <td>
+        Grup adalah fitur opsional pada tipe akun dan nama akun. Grup dijelaskan
+       lebih detail di bagian <a href="#Groups">Grup kontak</a>.
+    </td>
+  </tr>
+</table>
+<h3 id="ContactBasics">Kontak</h3>
+<p>
+    Penyedia Kontak mengombinasikan baris kontak mentah di semua tipe akun dan nama akun
+    untuk membentuk <strong>kontak</strong>. Hal ini memudahkan menampilkan dan memodifikasi semua data
+    yang telah dikumpulkan pengguna untuk seseorang. Penyedia Kontak mengelola pembuatan baris
+    kontak baru, dan agregasi kontak mentah dengan baris kontak yang ada. Baik aplikasi maupun adaptor sinkronisasi
+    tidak boleh menambahkan kontak dan sebagian kolom dalam baris kontak yang bersifat hanya baca.
+</p>
+<p class="note">
+    <strong>Catatan:</strong> Jika Anda mencoba menambahkan kontak ke Penyedia Kontak dengan
+    {@link android.content.ContentResolver#insert(Uri,ContentValues) insert()}, Anda akan mendapatkan
+    eksepsi {@link java.lang.UnsupportedOperationException}. Jika Anda mencoba memperbarui sebuah kolom
+   yang tercantum sebagai "hanya-baca", pembaruan akan diabaikan.
+</p>
+<p>
+    Penyedia Kontak membuat kontak baru untuk merespons penambahan kontak mentah baru
+    yang tidak cocok dengan kontak yang ada. Penyedia juga melakukan ini jika data
+    kontak mentah yang ada berubah sehingga tidak lagi cocok dengan kontak yang
+    sebelumnya dihubungkan. Jika aplikasi atau adaptor sinkronisasi membuat kontak mentah baru yang
+    <em>memang</em> cocok dengan kontak yang ada, kontak mentah baru akan diagregasikan ke kontak
+    yang ada.
+</p>
+<p>
+    Penyedia Kontak menautkan baris kontak ke baris kontak mentahnya dengan kolom
+    <code>_ID</code> dari baris kontak dalam tabel {@link android.provider.ContactsContract.Contacts Contacts}.
+ Kolom <code>CONTACT_ID</code> tabel kontak mentah
+    {@link android.provider.ContactsContract.RawContacts} berisi nilai <code>_ID</code> untuk
+    baris kontak yang dikaitkan dengan tiap baris kontak mentah.
+</p>
+<p>
+    Tabel {@link android.provider.ContactsContract.Contacts} juga memiliki kolom
+    {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} yang merupakan
+    tautan "permanen" ke baris kontak. Karena memelihara kontak
+    secara otomatis, Penyedia Kontak bisa mengubah nilai {@code android.provider.BaseColumns#_ID} baris kontak
+    untuk merespons agregasi atau sinkronisasi. Sekalipun ini terjadi, URI konten
+    {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI} yang dikombinasikan dengan
+    {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} kontak akan tetap
+    menunjuk ke baris kontak itu, sehingga Anda bisa menggunakan
+    {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}
+   untuk memelihara tautan ke kontak "favorit", dan seterusnya. Kolom ini memiliki formatnya sendiri, yang
+    tidak terkait dengan format kolom {@code android.provider.BaseColumns#_ID}.
+</p>
+<p>
+    Gambar 3 menampilkan cara ketiga tabel utama terkait satu sama lain.
+</p>
+<img src="{@docRoot}images/providers/contacts_tables.png" alt="Contacts provider main tables" height="514" id="figure4" />
+<p class="img-caption">
+  <strong>Gambar 3.</strong> Hubungan tabel Contacts, Raw Contacts, dan Details.
+</p>
+<h2 id="Sources">Data Dari Adaptor Sinkronisasi</h2>
+<p>
+    Pengguna memasukkan data kontak secara langsung ke dalam perangkat, namun data juga mengalir masuk ke Penyedia Kontak
+    dari layanan web melalui <strong>adaptor sinkronisasi</strong>, yang mengotomatiskan
+    transfer data antara perangkat dan layanan. Adaptor sinkronisasi berjalan di latar belakang
+    di bawah kontrol sistem, dan memanggil metode {@link android.content.ContentResolver}
+   untuk mengelola data.
+</p>
+<p>
+    Di Android, layanan web yang digunakan adaptor sinkronisasi diidentifikasi melalui tipe akun.
+    Setiap adaptor sinkronisasi bekerja dengan satu tipe akun, tetapi bisa mendukung beberapa nama akun untuk
+    tipe itu. Tipe akun dan nama akun dijelaskan secara singkat di bagian
+    <a href="#RawContactsExample">Sumber data kontak mentah</a>. Definisi berikut menyediakan
+    detail selengkapnya, dan menjelaskan cara tipe dan nama akun berkaitan dengan adaptor sinkronisasi dan layanan.
+</p>
+<dl>
+    <dt>
+        Tipe akun
+    </dt>
+    <dd>
+        Mengidentifikasi layanan tempat pengguna menyimpan data. Sering kali, pengguna harus
+        mengautentikasi diri dengan layanan. Misalnya, Google Contacts adalah tipe akun, yang diidentifikasi
+        dengan kode <code>google.com</code>. Nilai ini sesuai dengan tipe akun yang digunakan oleh
+        {@link android.accounts.AccountManager}.
+    </dd>
+    <dt>
+        Nama akun
+    </dt>
+    <dd>
+        Mengidentifikasi akun atau login tertentu untuk suatu tipe akun. Akun Google Contacts
+        sama dengan akun Google, yang memiliki alamat email sebagai nama akun.
+        Layanan lain mungkin menggunakan nama pengguna satu-kata atau identitas berupa angka.
+    </dd>
+</dl>
+<p>
+    Tipe akun tidak harus unik. Pengguna boleh mengonfigurasi beberapa akun Google Contacts
+    dan mengunduh data ke Penyedia Kontak; ini mungkin terjadi jika pengguna memiliki satu set
+    kontak pribadi untuk satu nama akun pribadi, dan satu set lagi untuk pekerjaan. Nama akun
+    biasanya unik. Bersama-sama, keduanya mengidentifikasi aliran data tertentu antara Penyedia Kontak dan
+    layanan eksternal.
+</p>
+<p>
+    Jika Anda ingin mentransfer data layanan ke Penyedia Kontak, Anda perlu menulis
+    adaptor sinkronisasi sendiri. Hal ini dijelaskan lebih detail di bagian
+    <a href="#SyncAdapters">Adaptor Sinkronisasi Penyedia Kontak</a>.
+</p>
+<p>
+    Gambar 4 menampilkan cara Penyedia Kontak dimasukkan ke dalam aliran data
+    tentang orang. Dalam kotak bertanda "sync adapters", setiap adaptor diberi label menurut tipe akunnya.
+</p>
+<img src="{@docRoot}images/providers/ContactsDataFlow.png" alt="Flow of data about people" height="252" id="figure5" />
+<p class="img-caption">
+  <strong>Gambar 4.</strong> Aliran data Penyedia Kontak.
+</p>
+<h2 id="Permissions">Izin yang Diperlukan</h2>
+<p>
+    Aplikasi yang ingin mengakses Penyedia Kontak harus meminta izin
+   berikut:
+</p>
+<dl>
+    <dt>Akses baca ke satu atau beberapa tabel</dt>
+    <dd>
+        {@link android.Manifest.permission#READ_CONTACTS}, yang ditetapkan dalam
+        <code>AndroidManifest.xml</code> dengan elemen
+        <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> sebagai
+        <code>&lt;uses-permission android:name="android.permission.READ_CONTACTS"&gt;</code>.
+    </dd>
+    <dt>Akses tulis ke satu atau beberapa tabel</dt>
+    <dd>
+        {@link android.Manifest.permission#WRITE_CONTACTS}, yang ditetapkan dalam
+        <code>AndroidManifest.xml</code> dengan elemen
+        <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> sebagai
+        <code>&lt;uses-permission android:name="android.permission.WRITE_CONTACTS"&gt;</code>.
+    </dd>
+</dl>
+<p>
+    Izin ini tidak diperluas ke data profil pengguna. Profil pengguna dan izin
+   yang diperlukan dibahas di bagian berikut,
+    <a href="#UserProfile">Profil Pengguna</a>.
+</p>
+<p>
+    Ingatlah bahwa data kontak pengguna bersifat pribadi dan sensitif. Pengguna mempersoalkan
+    privasinya, sehingga tidak ingin aplikasi mengumpulkan data tentang diri atau kontak mereka.
+    Jika alasan Anda memerlukan izin untuk mengakses data kontak tidak jelas, pengguna mungkin memberi
+    aplikasi Anda peringkat rendah atau langsung menolak menginstalnya.
+</p>
+<h2 id="UserProfile">Profil Pengguna</h2>
+<p>
+    Tabel {@link android.provider.ContactsContract.Contacts} berisi satu baris yang berisi
+    data profil untuk pengguna perangkat. Data ini menjelaskan data perangkat  <code>user</code> bukannya
+    salah satu kontak pengguna. Baris kontak profil ditautkan ke baris
+     kontak mentah untuk setiap sistem yang menggunakan profil.
+    Setiap baris kontak mentah profil bisa memiliki beberapa baris data. Konstanta untuk mengakses profil
+    pengguna tersedia dalam kelas {@link android.provider.ContactsContract.Profile}.
+</p>
+<p>
+    Akses ke profil pengguna memerlukan izin khusus. Selain itu, izin
+    {@link android.Manifest.permission#READ_CONTACTS} dan
+    {@link android.Manifest.permission#WRITE_CONTACTS} diperlukan untuk membaca dan menulis, akses
+    ke profil pengguna memerlukan masing-masing izin {@code android.Manifest.permission#READ_PROFILE} dan
+    {@code android.Manifest.permission#WRITE_PROFILE} untuk akses baca dan tulis.
+
+</p>
+<p>
+    Ingatlah bahwa Anda harus mempertimbangkan profil pengguna bersifat sensitif. Izin
+    {@code android.Manifest.permission#READ_PROFILE} memungkinkan Anda mengakses data yang mengidentifikasi secara pribadi
+    pengguna perangkat. Pastikan memberi tahu pengguna alasan
+    Anda memerlukan izin akses profil pengguna dalam keterangan aplikasi Anda.
+</p>
+<p>
+    Untuk mengambil baris kontak berisi profil pengguna,
+    panggil {@link android.content.ContentResolver#query(Uri,String[], String, String[], String)
+    ContentResolver.query()}. Atur URI konten ke
+    {@link android.provider.ContactsContract.Profile#CONTENT_URI} dan jangan sediakan
+    kriteria pemilihan apa pun. Anda juga bisa menggunakan URI konten ini sebagai URI dasar untuk mengambil kontak
+    mentah atau data untuk profil. Misalnya, cuplikan kode ini mengambil data untuk profil:
+</p>
+<pre>
+// Sets the columns to retrieve for the user profile
+mProjection = new String[]
+    {
+        Profile._ID,
+        Profile.DISPLAY_NAME_PRIMARY,
+        Profile.LOOKUP_KEY,
+        Profile.PHOTO_THUMBNAIL_URI
+    };
+
+// Retrieves the profile from the Contacts Provider
+mProfileCursor =
+        getContentResolver().query(
+                Profile.CONTENT_URI,
+                mProjection ,
+                null,
+                null,
+                null);
+</pre>
+<p class="note">
+    <strong>Catatan:</strong> Jika Anda mengambil beberapa baris kontak, dan ingin menentukan apakah salah satu baris
+    adalah profil pengguna, uji
+    kolom {@link android.provider.ContactsContract.ContactsColumns#IS_USER_PROFILE} pada baris tersebut. Kolom ini
+    diatur ke "1" jika kontak adalah profil pengguna.
+</p>
+<h2 id="ContactsProviderMetadata">Metadata Penyedia Kontak</h2>
+<p>
+    Penyedia Kontak mengelola data yang mencatat status data kontak dalam
+    repository. Metadata repository ini disimpan di berbagai tempat, termasuk baris-baris tabel
+    Raw Contacts, Data, dan Contacts,
+    tabel {@link android.provider.ContactsContract.Settings}, dan
+    tabel {@link android.provider.ContactsContract.SyncState}. Tabel berikut menampilkan
+    efek setiap potongan metadata ini:
+</p>
+<p class="table-caption" id="table3">
+  <strong>Tabel 3.</strong> Metadata di Penyedia Kontak</p>
+<table>
+    <tr>
+        <th scope="col">Tabel</th>
+        <th scope="col">Kolom</th>
+        <th scope="col">Nilai</th>
+        <th scope="col">Arti</th>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.RawContacts}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.SyncColumns#DIRTY}</td>
+        <td>"0" - tidak berubah sejak sinkronisasi terakhir.</td>
+        <td rowspan="2">
+            Menandai kontak mentah yang berubah pada perangkat dan telah disinkronkan kembali ke
+           server. Nilai diatur secara otomatis oleh Penyedia Kontak bila aplikasi
+            Android memperbarui baris.
+            <p>
+                Adaptor sinkronisasi yang memodifikasi kontak mentah atau tabel data harus selalu menambahkan
+                string {@link android.provider.ContactsContract#CALLER_IS_SYNCADAPTER} ke
+                URI konten yang digunakannya. Ini mencegah penyedia menandai baris sebagai kotor.
+                Sebaliknya, modifikasi oleh adaptor sinkronisasi tampak seperti modifikasi lokal dan
+                dikirim ke server, meskipun server adalah sumber modifikasi.
+            </p>
+        </td>
+    </tr>
+    <tr>
+            <td>"1" - berubah sejak sinkronisasi terakhir, harus disinkronkan kembali ke server.</td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#VERSION}</td>
+        <td>Nomor versi baris ini.</td>
+        <td>
+            Penyedia Kontak menambahkan nilai ini secara otomatis bila baris atau
+            data terkaitnya berubah.
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.Data}</td>
+        <td>{@link android.provider.ContactsContract.DataColumns#DATA_VERSION}</td>
+        <td>Nomor versi baris ini.</td>
+        <td>
+            Penyedia Kontak menambahkan nilai ini secara otomatis bila baris data
+            berubah.
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}</td>
+        <td>
+            Nilai string yang mengidentifikasi secara unik kontak mentah ini ke akun tempat
+            kontak dibuat.
+        </td>
+        <td>
+            Bila adaptor sinkronisasi membuat kontak mentah baru, kolom ini harus diatur ke
+            ID unik server untuk kontak mentah itu. Bila aplikasi Android membuat kontak mentah
+            baru, aplikasi harus membiarkan kolom ini kosong. Ini mengisyaratkan pada adaptor
+            sinkronisasi bahwa adaptor harus membuat kontak mentah baru pada server, dan mendapatkan
+            nilai untuk {@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}.
+            <p>
+                Khususnya, id sumber harus <strong>unik</strong> untuk setiap tipe
+                akun dan stabil di semua sinkronisasi:
+            </p>
+                <ul>
+                    <li>
+                        Unik: Setiap kontak mentah untuk satu akun harus memiliki id sumbernya sendiri. Jika Anda
+                        tidak memberlakukan aturan ini, masalah akan timbul dalam aplikasi kontak.
+                        Perhatikan bahwa dua kontak mentah untuk tipe akun yang <em>sama</em> boleh memiliki
+                       id sumber yang sama. Misalnya, kontak mentah "Thomas Higginson" untuk
+                        akun {@code emily.dickinson@gmail.com} boleh memiliki id sumber
+                        yang sama dengan kontak mentah "Thomas Higginson" untuk akun
+                        {@code emilyd@gmail.com}.
+                    </li>
+                    <li>
+                        Stabil: Id sumber adalah bagian tetap dari data layanan online untuk
+                        kontak mentah. Misalnya, jika pengguna membersihkan Contacts Storage dari
+                        pengaturan aplikasi dan menyinkronkan ulang, kontak mentah yang dipulihkan akan memiliki id sumber
+                        yang sama dengan sebelumnya. Jika Anda tidak memberlakukan hal ini, pintasan akan berhenti
+                        berfungsi.
+                    </li>
+                </ul>
+        </td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Groups}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.GroupsColumns#GROUP_VISIBLE}</td>
+        <td>"0" - Kontak dalam grup ini tidak boleh terlihat dalam UI aplikasi Android.</td>
+        <td>
+            Kolom ini digunakan untuk kompatibilitas dengan server yang memungkinkan pengguna menyembunyikan kontak dalam
+            grup tertentu.
+        </td>
+    </tr>
+    <tr>
+        <td>"1" - Kontak dalam grup ini boleh terlihat dalam UI aplikasi.</td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Settings}</td>
+        <td rowspan="2">
+            {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE}</td>
+        <td>
+            "0" - Untuk akun dan tipe akun ini, kontak yang bukan milik grup
+            tidak akan terlihat pada UI aplikasi Android.
+        </td>
+        <td rowspan="2">
+            Secara default, kontak tidak terlihat jika tidak satu pun kontak mentahnya milik grup
+            (Keanggotaan grup untuk kontak mentah ditandai oleh satu atau beberapa baris
+            {@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}
+            dalam tabel {@link android.provider.ContactsContract.Data}).
+            Dengan mengatur flag ini dalam baris tabel {@link android.provider.ContactsContract.Settings}
+            untuk tipe akun dan akun, Anda bisa memaksakan kontak tanpa grup agar terlihat.
+            Satu kegunaan flag ini adalah menampilkan kontak dari server yang tidak menggunakan grup.
+        </td>
+    </tr>
+    <tr>
+        <td>
+            "1" - Untuk akun dan tipe akun ini, kontak yang bukan milik grup
+            akan terlihat pada UI aplikasi.
+        </td>
+
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.SyncState}</td>
+        <td>(semua)</td>
+        <td>
+            Gunakan tabel ini untuk menyimpan metadata bagi adaptor sinkronisasi Anda.
+        </td>
+        <td>
+            Dengan tabel ini, Anda bisa menyimpan status sinkronisasi dan data lain yang terkait dengan sinkronisasi secara persisten pada
+            perangkat.
+        </td>
+    </tr>
+</table>
+<h2 id="Access">Akses Penyedia Kontak</h2>
+<p>
+    Bagian ini menjelaskan panduan untuk mengakses data dari Penyedia Kontak, yang berfokus pada
+    hal-hal berikut:
+</p>
+<ul>
+    <li>
+        Query entitas.
+    </li>
+    <li>
+        Modifikasi batch.
+    </li>
+    <li>
+        Pengambilan dan modifikasi dengan intent.
+    </li>
+    <li>
+        Integritas data.
+    </li>
+</ul>
+<p>
+    Membuat modifikasi dari adaptor sinkronisasi juga secara lebih detail di bagian
+    <a href="#SyncAdapters">Adaptor Sinkronisasi Penyedia Kontak</a>.
+</p>
+<h3 id="Entities">Membuat query entitas</h3>
+<p>
+    Karena disusun secara hierarki, tabel-tabel Penyedia Kontak sering kali berguna untuk
+    mengambil baris dan semua baris "anak" yang ditautkan dengannya. Misalnya, untuk menampilkan
+    semua informasi untuk satu orang, Anda mungkin ingin mengambil semua
+    baris {@link android.provider.ContactsContract.RawContacts} untuk satu baris
+    {@link android.provider.ContactsContract.Contacts}, atau semua
+    baris {@link android.provider.ContactsContract.CommonDataKinds.Email} untuk satu baris
+    {@link android.provider.ContactsContract.RawContacts}. Untuk memudahkan hal ini, Penyedia Kontak
+    menawarkan konstruksi <strong>entitas</strong>, yang berfungsi seperti gabungan database di antara
+    tabel-tabel.
+</p>
+<p>
+    Entitas adalah seperti tabel yang terdiri atas kolom-kolom terpilih dari tabel induk dan tabel anaknya.
+    Bila membuat query sebuah entitas, Anda memberikan proyeksi dan kriteria pencarian berdasarkan kolom-kolom
+    yang tersedia dari entitas itu. Hasilnya adalah sebuah {@link android.database.Cursor} yang
+    berisi satu baris untuk setiap baris tabel anak yang diambil. Misalnya, jika Anda membuat query
+    {@link android.provider.ContactsContract.Contacts.Entity} untuk satu nama kontak
+    dan semua baris {@link android.provider.ContactsContract.CommonDataKinds.Email} untuk semua
+    kontak mentah bagi nama itu, Anda akan mendapatkan kembali {@link android.database.Cursor} berisi satu baris
+    untuk setiap baris {@link android.provider.ContactsContract.CommonDataKinds.Email}.
+</p>
+<p>
+    Entitas menyederhanakan query. Dengan entitas, Anda bisa mengambil semua data kontak untuk satu
+    kontak atau kontak mentah sekaligus, sebagai ganti harus membuat query tabel induk terlebih dahulu untuk mendapatkan
+    ID, lalu harus membuat query tabel anak dengan ID itu. Selain itu, Penyedia Kontak akan memproses
+    query terhadap entitas dalam satu transaksi, yang memastikan bahwa data yang diambil
+    konsisten secara internal.
+</p>
+<p class="note">
+    <strong>Catatan:</strong> Entitas biasanya tidak berisi semua kolom tabel induk dan
+    anak. Jika Anda mencoba menggunakan nama kolom yang tidak ada dalam daftar konstanta
+    nama kolom untuk entitas, Anda akan mendapatkan {@link java.lang.Exception}.
+</p>
+<p>
+    Cuplikan berikut menampilkan cara mengambil semua baris kontak mentah untuk sebuah kontak. Cuplikan ini
+    adalah bagian dari aplikasi lebih besar yang memiliki dua aktivitas, "main" dan "detail". Aktivitas utama
+    menampilkan daftar baris kontak; bila pengguna memilih satu baris, aktivitas akan mengirimkan ID-nya ke aktivitas
+    detail. Aktivitas detail menggunakan{@link android.provider.ContactsContract.Contacts.Entity}
+    untuk menampilkan semua baris data dari semua kontak mentah yang dikaitkan dengan kontak
+    terpilih.
+</p>
+<p>
+    Cuplikan ini diambil dari aktivitas "detail":
+</p>
+<pre>
+...
+    /*
+     * Appends the entity path to the URI. In the case of the Contacts Provider, the
+     * expected URI is content://com.google.contacts/#/entity (# is the ID value).
+     */
+    mContactUri = Uri.withAppendedPath(
+            mContactUri,
+            ContactsContract.Contacts.Entity.CONTENT_DIRECTORY);
+
+    // Initializes the loader identified by LOADER_ID.
+    getLoaderManager().initLoader(
+            LOADER_ID,  // The identifier of the loader to initialize
+            null,       // Arguments for the loader (in this case, none)
+            this);      // The context of the activity
+
+    // Creates a new cursor adapter to attach to the list view
+    mCursorAdapter = new SimpleCursorAdapter(
+            this,                        // the context of the activity
+            R.layout.detail_list_item,   // the view item containing the detail widgets
+            mCursor,                     // the backing cursor
+            mFromColumns,                // the columns in the cursor that provide the data
+            mToViews,                    // the views in the view item that display the data
+            0);                          // flags
+
+    // Sets the ListView's backing adapter.
+    mRawContactList.setAdapter(mCursorAdapter);
+...
+&#64;Override
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+
+    /*
+     * Sets the columns to retrieve.
+     * RAW_CONTACT_ID is included to identify the raw contact associated with the data row.
+     * DATA1 contains the first column in the data row (usually the most important one).
+     * MIMETYPE indicates the type of data in the data row.
+     */
+    String[] projection =
+        {
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID,
+            ContactsContract.Contacts.Entity.DATA1,
+            ContactsContract.Contacts.Entity.MIMETYPE
+        };
+
+    /*
+     * Sorts the retrieved cursor by raw contact id, to keep all data rows for a single raw
+     * contact collated together.
+     */
+    String sortOrder =
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID +
+            " ASC";
+
+    /*
+     * Returns a new CursorLoader. The arguments are similar to
+     * ContentResolver.query(), except for the Context argument, which supplies the location of
+     * the ContentResolver to use.
+     */
+    return new CursorLoader(
+            getApplicationContext(),  // The activity's context
+            mContactUri,              // The entity content URI for a single contact
+            projection,               // The columns to retrieve
+            null,                     // Retrieve all the raw contacts and their data rows.
+            null,                     //
+            sortOrder);               // Sort by the raw contact ID.
+}
+</pre>
+<p>
+    Bila selesai dimuat, {@link android.app.LoaderManager} akan memicu callback ke
+    {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished(Loader, D)
+    onLoadFinished()}. Salah satu argumen masuk pada metode ini adalah
+    {@link android.database.Cursor} bersama hasil query. Dalam aplikasi Anda sendiri, Anda bisa memperoleh
+    data dari {@link android.database.Cursor} ini untuk menampilkannya atau menggunakannya lebih jauh.
+</p>
+<h3 id="Transactions">Modifikasi batch</h3>
+<p>
+    Bila memungkinkan, Anda harus menyisipkan, memperbarui, dan menghapus data dalam Penyedia Kontak dengan
+    "batch mode", dengan membuat {@link java.util.ArrayList} dari
+    objek-objek {@link android.content.ContentProviderOperation} dan memanggil
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. Karena
+    Penyedia Kontak menjalankan semua operasi dalam satu
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} transaksi,
+    modifikasi Anda tidak akan pernah meninggalkan repository kontak dalam keadaan
+    tidak konsisten. Modifikasi batch juga memudahkan penyisipan kontak mentah dan data detailnya
+    sekaligus.
+</p>
+<p class="note">
+    <strong>Catatan:</strong> Untuk memodifikasi <em>satu</em> kontak mentah, pertimbangkan untuk mengirim intent ke
+    aplikasi kontak perangkat daripada menangani modifikasi dalam aplikasi Anda.
+    Cara ini dijelaskan lebih detail di bagian
+    <a href="#Intents">Pengambilan dan modifikasi dengan intent</a>.
+</p>
+<h4>Yield point</h4>
+<p>
+    Modifikasi batch yang berisi operasi dalam jumlah besar bisa memblokir proses lain,
+    yang mengakibatkan pengalaman pengguna yang buruk secara keseluruhan. Untuk menata semua modifikasi yang ingin Anda
+    jalankan dalam sesedikit mungkin daftar terpisah, sambil mencegah modifikasi dari
+    memblokir sistem, Anda harus menetapkan <strong>yield point</strong> untuk satu atau beberapa operasi.
+    Yield point (titik hasil) adalah objek {@link android.content.ContentProviderOperation} yang mengatur
+    nilai {@link android.content.ContentProviderOperation#isYieldAllowed()}-nya ke
+    <code>true</code>. Bila menemui yield point, Penyedia Kontak akan menghentikan pekerjaannya untuk
+    membiarkan proses lain berjalan dan menutup transaksi saat ini. Bila dimulai lagi, penyedia akan
+    melanjutkan dengan operasi berikutnya di {@link java.util.ArrayList} dan memulai transaksi
+    baru.
+</p>
+<p>
+    Yield point memang menyebabkan lebih dari satu transaksi per panggilan ke
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. Karena
+    itu, Anda harus menetapkan yield point pada operasi terakhir untuk satu set baris terkait.
+    Misalnya, Anda harus menetapkan yield point pada operasi terakhir di satu set yang menambahkan
+    baris kontak mentah dan baris data terkait, atau operasi terakhir untuk satu set baris yang terkait
+    dengan satu kontak.
+</p>
+<p>
+    Yield point juga merupakan unit operasi atomis. Semua akses antara dua yield point bisa
+    saja berhasil atau gagal sebagai satu unit. Jika Anda mengatur yield point, operasi
+    atomis terkecil adalah seluruh batch operasi. Jika menggunakan yield point, Anda akan mencegah
+    operasi menurunkan kinerja sistem, sekaligus memastikan subset
+    operasi bersifat atomis.
+</p>
+<h4>Acuan balik modifikasi</h4>
+<p>
+    Saat Anda menyisipkan baris kontak mentah baru dan baris data terkaitnya sebagai satu set
+    objek {@link android.content.ContentProviderOperation}, Anda harus menautkan baris data ke
+    baris kontak mentah dengan memasukkan nilai
+    {@code android.provider.BaseColumns#_ID} kontak mentah sebagai
+    nilai {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}. Akan tetapi, nilai
+    ini tidak tersedia saat Anda membuat {@link android.content.ContentProviderOperation}
+    untuk baris data, karena Anda belum menerapkan
+    {@link android.content.ContentProviderOperation} untuk baris kontak mentah. Solusinya,
+     kelas {@link android.content.ContentProviderOperation.Builder} memiliki metode
+    {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}.
+    Metode ini memungkinkan Anda menyisipkan atau mengubah kolom dengan
+    hasil dari operasi sebelumnya.
+</p>
+<p>
+    Metode {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+    memiliki dua argumen:
+</p>
+    <dl>
+        <dt>
+            <code>key</code>
+        </dt>
+        <dd>
+            Kunci dari pasangan kunci-nilai. Nilai argumen ini harus berupa nama kolom
+            dalam tabel yang Anda modifikasi.
+        </dd>
+        <dt>
+            <code>previousResult</code>
+        </dt>
+        <dd>
+            Indeks berbasis 0 dari nilai pada larik
+            objek {@link android.content.ContentProviderResult} dari
+            {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. Saat
+            operasi batch diterapkan, hasil tiap operasi akan disimpan dalam
+            larik hasil antara. Nilai <code>previousResult</code> adalah indeks
+            dari salah satu hasil ini, yang diambil dan disimpan bersama nilai <code>key</code>.
+ Cara ini memungkinkan Anda menyisipkan record kontak mentah baru dan mendapatkan kembali nilai
+            {@code android.provider.BaseColumns#_ID}-nya, lalu membuat "acuan balik" ke
+            nilai itu saat Anda menambahkan baris {@link android.provider.ContactsContract.Data}.
+            <p>
+                Seluruh larik hasil dibuat saat Anda memanggil
+                {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} untuk pertama kali,
+                dengan ukuran setara dengan ukuran {@link java.util.ArrayList} dari
+                objek {@link android.content.ContentProviderOperation} yang Anda sediakan. Akan tetapi, semua
+                elemen dalam larik hasil diatur ke <code>null</code>, dan jika Anda mencoba
+                melakukan acuan balik ke hasil untuk operasi yang belum diterapkan,
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+                akan mengeluarkan {@link java.lang.Exception}.
+
+            </p>
+        </dd>
+    </dl>
+<p>
+    Cuplikan kode berikut menampilkan cara menyisipkan kontak mentah baru dan data secara batch. Cuplikan kode ini
+    menyertakan kode yang menetapkan yield point dan menggunakan acuan balik. Cuplikan kode ini adalah
+    versi perluasan dari metode<code>createContacEntry()</code>, yang merupakan bagian dari kelas
+    <code>ContactAdder</code> dalam
+    aplikasi contoh <code><a href="{@docRoot}resources/samples/ContactManager/index.html">
+    Contact Manager</a></code>.
+</p>
+<p>
+    Cuplikan pertama mengambil data kontak dari UI. Pada saat ini, pengguna sudah
+    memilih akun tempat kontak mentah baru harus ditambahkan.
+</p>
+<pre>
+// Creates a contact entry from the current UI values, using the currently-selected account.
+protected void createContactEntry() {
+    /*
+     * Gets values from the UI
+     */
+    String name = mContactNameEditText.getText().toString();
+    String phone = mContactPhoneEditText.getText().toString();
+    String email = mContactEmailEditText.getText().toString();
+
+    int phoneType = mContactPhoneTypes.get(
+            mContactPhoneTypeSpinner.getSelectedItemPosition());
+
+    int emailType = mContactEmailTypes.get(
+            mContactEmailTypeSpinner.getSelectedItemPosition());
+</pre>
+<p>
+    Cuplikan berikutnya membuat operasi untuk menyisipkan baris kontak mentah ke dalam
+    tabel {@link android.provider.ContactsContract.RawContacts}:
+</p>
+<pre>
+    /*
+     * Prepares the batch operation for inserting a new raw contact and its data. Even if
+     * the Contacts Provider does not have any data for this person, you can't add a Contact,
+     * only a raw contact. The Contacts Provider will then add a Contact automatically.
+     */
+
+     // Creates a new array of ContentProviderOperation objects.
+    ArrayList&lt;ContentProviderOperation&gt; ops =
+            new ArrayList&lt;ContentProviderOperation&gt;();
+
+    /*
+     * Creates a new raw contact with its account type (server type) and account name
+     * (user's account). Remember that the display name is not stored in this row, but in a
+     * StructuredName data row. No other data is required.
+     */
+    ContentProviderOperation.Builder op =
+            ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI)
+            .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType())
+            .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    Berikutnya, kode akan membuat baris data untuk baris-baris nama tampilan, telepon, dan email.
+</p>
+<p>
+    Setiap objek pembangun operasi menggunakan
+    {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+    untuk mendapatkan
+    {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}. Acuan menunjuk
+    balik ke objek {@link android.content.ContentProviderResult} dari operasi pertama,
+    yang menambahkan baris kontak mentah dan mengembalikan nilai {@code android.provider.BaseColumns#_ID}
+    barunya. Hasilnya, setiap data ditautkan secara otomatis oleh
+    {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}-nya
+    ke baris {@link android.provider.ContactsContract.RawContacts} baru yang memilikinya.
+</p>
+<p>
+    Objek {@link android.content.ContentProviderOperation.Builder} yang menambahkan baris email
+    diberi flag {@link android.content.ContentProviderOperation.Builder#withYieldAllowed(boolean)
+    withYieldAllowed()}, yang mengatur yield point:
+</p>
+<pre>
+    // Creates the display name for the new raw contact, as a StructuredName data row.
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * withValueBackReference sets the value of the first argument to the value of
+             * the ContentProviderResult indexed by the second argument. In this particular
+             * call, the raw contact ID column of the StructuredName data row is set to the
+             * value of the result returned by the first operation, which is the one that
+             * actually adds the raw contact row.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to StructuredName
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
+
+            // Sets the data row's display name to the name in the UI.
+            .withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified phone number and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Phone
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
+
+            // Sets the phone number and type
+            .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, phone)
+            .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, phoneType);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified email and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Email
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE)
+
+            // Sets the email address and type
+            .withValue(ContactsContract.CommonDataKinds.Email.ADDRESS, email)
+            .withValue(ContactsContract.CommonDataKinds.Email.TYPE, emailType);
+
+    /*
+     * Demonstrates a yield point. At the end of this insert, the batch operation's thread
+     * will yield priority to other threads. Use after every set of operations that affect a
+     * single contact, to avoid degrading performance.
+     */
+    op.withYieldAllowed(true);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    Cuplikan terakhir menampilkan panggilan ke
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} yang
+    menyisipkan baris-baris kontak mentah dan data baru.
+</p>
+<pre>
+    // Ask the Contacts Provider to create a new contact
+    Log.d(TAG,"Selected account: " + mSelectedAccount.getName() + " (" +
+            mSelectedAccount.getType() + ")");
+    Log.d(TAG,"Creating contact: " + name);
+
+    /*
+     * Applies the array of ContentProviderOperation objects in batch. The results are
+     * discarded.
+     */
+    try {
+
+            getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
+    } catch (Exception e) {
+
+            // Display a warning
+            Context ctx = getApplicationContext();
+
+            CharSequence txt = getString(R.string.contactCreationFailure);
+            int duration = Toast.LENGTH_SHORT;
+            Toast toast = Toast.makeText(ctx, txt, duration);
+            toast.show();
+
+            // Log exception
+            Log.e(TAG, "Exception encountered while inserting contact: " + e);
+    }
+}
+</pre>
+<p>
+    Operasi batch juga memungkinkan Anda menerapkan <strong>kontrol konkurensi optimistis</strong>,
+    sebuah metode yang menerapkan transaksi modifikasi tanpa harus mengunci repository yang mendasari.
+    Untuk menggunakan metode ini, terapkan transaksi dan periksa modifikasi lain yang
+    mungkin telah dibuat bersamaan. Jika ternyata modifikasi tidak konsisten, Anda
+    mengembalikan transaksi ke kondisi semula dan mencobanya kembali.
+</p>
+<p>
+    Kontrol konkurensi optimistis berguna untuk perangkat seluler, apabila hanya ada satu pengguna setiap
+   kalinya, dan akses simultan ke repository data jarang terjadi. Karena penguncian tidak digunakan,
+    tidak ada waktu yang terbuang untuk memasang kunci atau menunggu transaksi lain untuk melepas kunci.
+</p>
+<p>
+    Untuk menggunakan kontrol konkurensi optimistis saat memperbarui satu baris
+    {@link android.provider.ContactsContract.RawContacts}, ikuti langkah-langkah ini:
+</p>
+<ol>
+    <li>
+        Ambil kolom {@link android.provider.ContactsContract.SyncColumns#VERSION}
+        kontak mentah bersama data lain yang Anda ambil.
+    </li>
+    <li>
+        Buat sebuah objek {@link android.content.ContentProviderOperation.Builder} yang cocok untuk
+        memberlakukan batasan, dengan menggunakan metode
+        {@link android.content.ContentProviderOperation#newAssertQuery(Uri)}. Untuk URI konten,
+        gunakan {@link android.provider.ContactsContract.RawContacts#CONTENT_URI
+        RawContacts.CONTENT_URI}
+        dengan {@code android.provider.BaseColumns#_ID} kontak mentah yang ditambahkan padanya.
+    </li>
+    <li>
+        Untuk objek {@link android.content.ContentProviderOperation.Builder}, panggil
+        {@link android.content.ContentProviderOperation.Builder#withValue(String, Object)
+        withValue()} untuk membandingkan kolom {@link android.provider.ContactsContract.SyncColumns#VERSION}
+        dengan nomor versi yang baru saja Anda ambil.
+    </li>
+    <li>
+        Untuk {@link android.content.ContentProviderOperation.Builder} yang sama, panggil
+        {@link android.content.ContentProviderOperation.Builder#withExpectedCount(int)
+        withExpectedCount()} untuk memastikan bahwa hanya satu baris yang diuji oleh pernyataan ini.
+    </li>
+    <li>
+        Panggil {@link android.content.ContentProviderOperation.Builder#build()} untuk membuat
+        objek {@link android.content.ContentProviderOperation}, kemudian tambahkan objek ini sebagai
+        objek pertama di {@link java.util.ArrayList} yang Anda teruskan ke
+        {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}.
+    </li>
+    <li>
+        Terapkan transaksi batch.
+    </li>
+</ol>
+<p>
+    Jika baris kontak mentah diperbarui oleh operasi lain antara waktu Anda membaca baris dan
+    waktu Anda mencoba memodifikasinya, "asert" {@link android.content.ContentProviderOperation}
+    akan gagal, dan seluruh batch operasi akan dibatalkan. Anda nanti bisa memilih untuk mencoba ulang
+    batch atau melakukan tindakan lain.
+</p>
+<p>
+    Cuplikan berikut memperagakan cara membuat "asert"
+    {@link android.content.ContentProviderOperation} setelah membuat query satu kontak mentah yang menggunakan
+     {@link android.content.CursorLoader}:
+</p>
+<pre>
+/*
+ * The application uses CursorLoader to query the raw contacts table. The system calls this method
+ * when the load is finished.
+ */
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor cursor) {
+
+    // Gets the raw contact's _ID and VERSION values
+    mRawContactID = cursor.getLong(cursor.getColumnIndex(BaseColumns._ID));
+    mVersion = cursor.getInt(cursor.getColumnIndex(SyncColumns.VERSION));
+}
+
+...
+
+// Sets up a Uri for the assert operation
+Uri rawContactUri = ContentUris.withAppendedId(RawContacts.CONTENT_URI, mRawContactID);
+
+// Creates a builder for the assert operation
+ContentProviderOperation.Builder assertOp = ContentProviderOperation.netAssertQuery(rawContactUri);
+
+// Adds the assertions to the assert operation: checks the version and count of rows tested
+assertOp.withValue(SyncColumns.VERSION, mVersion);
+assertOp.withExpectedCount(1);
+
+// Creates an ArrayList to hold the ContentProviderOperation objects
+ArrayList ops = new ArrayList&lt;ContentProviderOperationg&gt;;
+
+ops.add(assertOp.build());
+
+// You would add the rest of your batch operations to "ops" here
+
+...
+
+// Applies the batch. If the assert fails, an Exception is thrown
+try
+    {
+        ContentProviderResult[] results =
+                getContentResolver().applyBatch(AUTHORITY, ops);
+
+    } catch (OperationApplicationException e) {
+
+        // Actions you want to take if the assert operation fails go here
+    }
+</pre>
+<h3 id="Intents">Pengambilan dan modifikasi dengan intent</h3>
+<p>
+    Mengirimkan intent ke aplikasi kontak perangkat memungkinkan Anda mengakses Penyedia Kontak
+    secara tidak langsung. Intent akan memulai UI aplikasi kontak perangkat, tempat pengguna bisa
+    melakukan pekerjaan yang terkait dengan kontak. Dengan tipe akses ini, pengguna bisa:
+    <ul>
+        <li>Memilih kontak dari daftar dan meneruskannya ke aplikasi untuk pekerjaan lebih jauh.</li>
+        <li>Mengedit data kontak yang ada.</li>
+        <li>Memasukkan kontak mentah baru untuk akun mereka.</li>
+        <li>Menghapus kontak atau data kontak.</li>
+    </ul>
+<p>
+    Jika pengguna menyisipkan atau memperbarui data, Anda bisa mengumpulkan data lebih dahulu dan mengirimkannya sebagai
+    bagian dari intent.
+</p>
+<p>
+    Bila Anda menggunakan intent untuk mengakses Penyedia Kontak melalui aplikasi kontak perangkat, Anda
+    tidak perlu menulis UI atau kode sendiri untuk mengakses penyedia. Anda juga tidak harus
+   meminta izin untuk membaca dari atau menulis ke penyedia. Aplikasi kontak perangkat bisa
+    mendelegasikan izin membaca untuk kontak kepada Anda, dan karena Anda membuat modifikasi pada
+    penyedia melalui aplikasi lain, Anda tidak perlu memiliki izin menulis.
+</p>
+<p>
+    Proses umum pengiriman intent untuk mengakses penyedia dijelaskan secara detail dalam panduan
+    <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+    Dasar-Dasar Penyedia Konten</a> di bagian "Akses data melalui intent". Tindakan,
+    tipe MIME, dan nilai data yang Anda gunakan untuk tugas yang tersedia dirangkum dalam Tabel 4, sedangkan
+    nilai ekstra yang bisa Anda gunakan bersama
+    {@link android.content.Intent#putExtra(String, String) putExtra()} tercantum dalam
+    dokumentasi acuan untuk {@link android.provider.ContactsContract.Intents.Insert}:
+</p>
+<p class="table-caption" id="table4">
+  <strong>Tabel 4.</strong> Intent Penyedia Kontak.
+</p>
+<table style="width:75%">
+    <tr>
+        <th scope="col" style="width:10%">Tugas</th>
+        <th scope="col" style="width:5%">Tindakan</th>
+        <th scope="col" style="width:10%">Data</th>
+        <th scope="col" style="width:10%">Tipe MIME</th>
+        <th scope="col" style="width:25%">Catatan</th>
+    </tr>
+    <tr>
+        <td><strong>Memilih kontak dari daftar</strong></td>
+        <td>{@link android.content.Intent#ACTION_PICK}</td>
+        <td>
+            Salah satu dari:
+            <ul>
+                <li>
+{@link android.provider.ContactsContract.Contacts#CONTENT_URI Contacts.CONTENT_URI},
+                    yang menampilkan daftar kontak.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Phone#CONTENT_URI Phone.CONTENT_URI},
+                    yang menampilkan daftar nomor telepon untuk kontak mentah.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal#CONTENT_URI
+StructuredPostal.CONTENT_URI},
+                    yang menampilkan daftar alamat pos untuk kontak mentah.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_URI Email.CONTENT_URI},
+                    yang menampilkan daftar alamat email untuk kontak baru.
+                </li>
+            </ul>
+        </td>
+        <td>
+            Tidak digunakan
+        </td>
+        <td>
+            Menampilkan daftar kontak mentah atau daftar data dari kontak mentah, sesuai dengan tipe
+            URI konten yang Anda sediakan.
+            <p>
+                Panggil
+         {@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()},
+                yang menghasilkan URI konten dari baris terpilih. Bentuk URI adalah
+                URI konten tabel dengan <code>LOOKUP_ID</code> baris yang ditambahkan padanya.
+                Aplikasi kontak perangkat mendelegasikan izin membaca dan menulis untuk URI konten ini
+                selama masa pakai aktivitas Anda. Lihat panduan
+                <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+                Dasar-Dasar Penyedia Konten</a> untuk detail selengkapnya.
+            </p>
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Menyisipkan kontak mentah baru</strong></td>
+        <td>{@link android.provider.ContactsContract.Intents.Insert#ACTION Insert.ACTION}</td>
+        <td>N/A</td>
+        <td>
+            {@link android.provider.ContactsContract.RawContacts#CONTENT_TYPE
+            RawContacts.CONTENT_TYPE}, tipe MIME untuk satu set kontak mentah.
+        </td>
+        <td>
+            Menampilkan layar <strong>Add Contact</strong> aplikasi kontak perangkat. Nilai
+            ekstra yang Anda tambahkan ke intent akan ditampilkan. Jika dikirimkan bersama
+        {@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()},
+            URI konten dari kontak mentah yang baru saja ditambahkan akan dikembalikan ke
+            {@link android.app.Activity#onActivityResult(int, int, Intent) onActivityResult()}
+           metode callback aktivitas Anda pada argumen {@link android.content.Intent}, di
+            bidang "data". Untuk mendapatkan nilainya, panggil {@link android.content.Intent#getData()}.
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Mengedit kontak</strong></td>
+        <td>{@link android.content.Intent#ACTION_EDIT}</td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI} untuk
+            kontak. Aktivitas editor memungkinkan pengguna mengedit setiap data yang dikaitkan
+            dengan kontak ini.
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE
+            Contacts.CONTENT_ITEM_TYPE}, kontak tunggal.</td>
+        <td>
+            Menampilkan layar Edit Contact dalam aplikasi kontak. Nilai ekstra yang Anda tambahkan
+            ke intent akan ditampilkan. Bila pengguna mengklik <strong>Done</strong> untuk menyimpan
+            hasil edit, aktivitas Anda kembali ke latar depan.
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Menampilkan picker yang juga bisa menambahkan data.</strong></td>
+        <td>{@link android.content.Intent#ACTION_INSERT_OR_EDIT}</td>
+        <td>
+            N/A
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE}
+        </td>
+         <td>
+            Intent ini selalu menampilkan layar picker aplikasi kontak. Pengguna bisa memilih
+            kontak untuk diedit, atau menambahkan kontak baru. Layar edit atau layar tambah
+            akan muncul, sesuai dengan pilihan pengguna, dan data ekstra yang Anda kirimkan dalam intent
+            akan ditampilkan. Jika aplikasi Anda menampilkan data kontak seperti email atau nomor telepon, gunakan
+            intent ini untuk memungkinkan pengguna menambahkan data ke kontak yang ada.
+
+            <p class="note">
+                <strong>Catatan:</strong> Tidak perlu mengirimkan nilai nama dalam ekstra intent ini,
+                karena pengguna selalu mengambil nama yang ada atau menambahkan nama baru. Lebih-lebih,
+                jika Anda mengirimkan nama, dan pengguna memilih untuk melakukan edit, aplikasi kontak akan
+                menampilkan nama yang Anda kirimkan, yang menimpa nilai sebelumnya. Jika pengguna tidak
+                menyadari hal ini dan menyimpan hasil edit, nilai lama akan hilang.
+            </p>
+         </td>
+    </tr>
+</table>
+<p>
+    Aplikasi kontak perangkat tidak memperbolehkan Anda menghapus kontak mentah atau datanya dengan
+    intent. Sebagai gantinya, untuk menghapus kontak mentah, gunakan
+    {@link android.content.ContentResolver#delete(Uri, String, String[]) ContentResolver.delete()}
+    atau {@link android.content.ContentProviderOperation#newDelete(Uri)
+    ContentProviderOperation.newDelete()}.
+</p>
+<p>
+    Cuplikan berikut menampilkan cara menyusun dan mengirimkan intent yang menyisipkan kontak dan data
+    mentah baru:
+</p>
+<pre>
+// Gets values from the UI
+String name = mContactNameEditText.getText().toString();
+String phone = mContactPhoneEditText.getText().toString();
+String email = mContactEmailEditText.getText().toString();
+
+String company = mCompanyName.getText().toString();
+String jobtitle = mJobTitle.getText().toString();
+
+// Creates a new intent for sending to the device's contacts application
+Intent insertIntent = new Intent(ContactsContract.Intents.Insert.ACTION);
+
+// Sets the MIME type to the one expected by the insertion activity
+insertIntent.setType(ContactsContract.RawContacts.CONTENT_TYPE);
+
+// Sets the new contact name
+insertIntent.putExtra(ContactsContract.Intents.Insert.NAME, name);
+
+// Sets the new company and job title
+insertIntent.putExtra(ContactsContract.Intents.Insert.COMPANY, company);
+insertIntent.putExtra(ContactsContract.Intents.Insert.JOB_TITLE, jobtitle);
+
+/*
+ * Demonstrates adding data rows as an array list associated with the DATA key
+ */
+
+// Defines an array list to contain the ContentValues objects for each row
+ArrayList&lt;ContentValues&gt; contactData = new ArrayList&lt;ContentValues&gt;();
+
+
+/*
+ * Defines the raw contact row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues rawContactRow = new ContentValues();
+
+// Adds the account type and name to the row
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType());
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+// Adds the row to the array
+contactData.add(rawContactRow);
+
+/*
+ * Sets up the phone number data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues phoneRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+phoneRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
+);
+
+// Adds the phone number and its type to the row
+phoneRow.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phone);
+
+// Adds the row to the array
+contactData.add(phoneRow);
+
+/*
+ * Sets up the email data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues emailRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+emailRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE
+);
+
+// Adds the email address and its type to the row
+emailRow.put(ContactsContract.CommonDataKinds.Email.ADDRESS, email);
+
+// Adds the row to the array
+contactData.add(emailRow);
+
+/*
+ * Adds the array to the intent's extras. It must be a parcelable object in order to
+ * travel between processes. The device's contacts app expects its key to be
+ * Intents.Insert.DATA
+ */
+insertIntent.putParcelableArrayListExtra(ContactsContract.Intents.Insert.DATA, contactData);
+
+// Send out the intent to start the device's contacts app in its add contact activity.
+startActivity(insertIntent);
+</pre>
+<h3 id="DataIntegrity">Integritas data</h3>
+<p>
+    Karena repository kontak berisi data penting dan sensitif yang diharapkan pengguna agar
+    benar dan terbaru. Penyedia Kontak memiliki aturan yang didefinisikan dengan baik demi integritas data. Anda
+    bertanggung jawab untuk mematuhi aturan ini saat memodifikasi data kontak. Aturan-aturan penting itu
+    dicantumkan di sini:
+</p>
+<dl>
+    <dt>
+        Selalu tambahkan baris {@link android.provider.ContactsContract.CommonDataKinds.StructuredName}
+        untuk setiap baris {@link android.provider.ContactsContract.RawContacts} yang Anda tambahkan.
+    </dt>
+    <dd>
+        Baris {@link android.provider.ContactsContract.RawContacts} tanpa
+        baris {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} dalam
+        tabel {@link android.provider.ContactsContract.Data} bisa menyebabkan masalah selama
+       agregasi.
+    </dd>
+    <dt>
+        Selalu tautkan baris {@link android.provider.ContactsContract.Data} baru ke baris
+        {@link android.provider.ContactsContract.RawContacts} induknya.
+    </dt>
+    <dd>
+        Baris {@link android.provider.ContactsContract.Data} yang tidak ditautkan ke
+        {@link android.provider.ContactsContract.RawContacts} tidak akan terlihat dalam aplikasi kontak
+        perangkat, dan itu bisa menimbulkan masalah dengan adaptor sinkronisasi.
+    </dd>
+    <dt>
+        Ubah data hanya untuk kontak mentah yang Anda miliki.
+    </dt>
+    <dd>
+        Ingatlah bahwa Penyedia Kontak biasanya mengelola data dari berbagai
+        tipe akun/layanan online. Anda harus memastikan bahwa aplikasi Anda hanya memodifikasi
+        atau menghapus data untuk baris milik Anda, dan bahwa aplikasi hanya menyisipkan data dengan
+        tipe akun dan nama yang Anda kontrol.
+    </dd>
+    <dt>
+        Selalu gunakan konstanta yang didefinisikan dalam {@link android.provider.ContactsContract} dan
+        subkelasnya untuk otoritas, URI konten, URI path, nama kolom, tipe MIME, dan
+        nilai {@link android.provider.ContactsContract.CommonDataKinds.CommonColumns#TYPE}.
+    </dt>
+    <dd>
+        Menggunakan konstanta ini membantu Anda menghindari kesalahan. Anda juga akan diberi tahu dengan peringatan
+        compiler jika salah satu konstanta sudah usang.
+    </dd>
+</dl>
+<h3 id="CustomData">Baris data custom</h3>
+<p>
+    Dengan membuat dan menggunakan tipe MIME custom sendiri, Anda bisa menyisipkan, mengedit, menghapus, dan mengambil
+    baris data sendiri dalam tabel {@link android.provider.ContactsContract.Data}. Baris Anda
+    dibatasi untuk menggunakan kolom yang didefinisikan dalam
+    {@link android.provider.ContactsContract.DataColumns}, meskipun Anda bisa memetakan nama kolom
+    bertipe spesifik sendiri ke nama kolom default. Dalam aplikasi kontak perangkat,
+    data untuk baris Anda ditampilkan, tetapi tidak bisa diedit atau dihapus, dan pengguna tidak bisa menambahkan
+    data lain. Untuk memudahkan pengguna mengubah baris data custom Anda, Anda harus menyediakan aktivitas
+    editor dalam aplikasi Anda sendiri.
+</p>
+<p>
+    Untuk menampilkan data custom, sediakan file <code>contacts.xml</code> berisi elemen
+    <code>&lt;ContactsAccountType&gt;</code> dan satu atau beberapa elemen anak
+    <code>&lt;ContactsDataKind&gt;</code>. Hal ini dijelaskan lebih detail di
+    bagian <a href="#SocialStreamDataKind"><code>&lt;ContactsDataKind&gt; element</code></a>.
+</p>
+<p>
+    Untuk mengetahui selengkapnya tentang tipe MIME custom, bacalah panduan
+    <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+    Membuat Penyedia Konten</a>.
+</p>
+<h2 id="SyncAdapters">Adaptor Sinkronisasi Penyedia Kontak</h2>
+<p>
+    Penyedia Kontak didesain khusus untuk menangani <strong>sinkronisasi</strong>
+    data kontak antara perangkat dan layanan online. Hal ini memungkinkan pengguna mengunduh
+    data yang ada dari perangkat baru dan mengunggah data yang ada ke akun baru.
+    Sinkronisasi juga memastikan bahwa pengguna memiliki data terbaru, apa pun
+    sumber penambahan dan perubahan itu. Keuntungan lain dari sinkronisasi adalah membuat
+    data kontak tersedia sekalipun perangkat tidak terhubung ke jaringan.
+</p>
+<p>
+    Walaupun Anda bisa menerapkan sinkronisasi dengan berbagai cara, sistem Android menyediakan
+    kerangka kerja sinkronisasi plug-in yang mengotomatiskan tugas-tugas berikut:
+    <ul>
+
+    <li>
+        Memeriksa ketersediaan jaringan.
+    </li>
+    <li>
+        Menjadwalkan dan menjalankan sinkronisasi, berdasarkan preferensi pengguna.
+    </li>
+    <li>
+        Memulai kembali sinkronisasi yang telah berhenti.
+    </li>
+    </ul>
+<p>
+    Untuk menggunakan kerangka kerja ini, Anda harus menyediakan plug-in adaptor sinkronisasi. Setiap adaptor sinkronisasi bersifat unik bagi
+    layanan dan penyedia konten, tetapi mampu menangani beberapa nama akun untuk layanan yang sama. Kerangka
+    kerja ini juga memungkinkan beberapa adaptor sinkronisasi untuk layanan dan penyedia yang sama.
+</p>
+<h3 id="SyncClassesFiles">Kelas dan file adaptor sinkronisasi</h3>
+<p>
+    Anda mengimplementasikan adaptor sinkronisasi sebagai subkelas
+    {@link android.content.AbstractThreadedSyncAdapter} dan menginstalnya sebagai bagian dari aplikasi
+    Android. Sistem akan mempelajari adaptor sinkronisasi dari elemen-elemen di manifes
+     aplikasi Anda dan dari file XML khusus yang ditunjuk oleh manifes. File XML mendefinisikan
+    tipe akun untuk layanan online dan otoritas untuk penyedia konten, yang bersama-sama
+    mengidentifikasi adaptor secara unik. Adaptor sinkronisasi tidak menjadi aktif hingga pengguna menambahkan
+    akun untuk tipe akun adaptor sinkronisasi dan memungkinkan sinkronisasi untuk penyedia
+    konten yang disinkronkan dengan adaptor sinkronisasi.  Pada saat itu, sistem mulai mengelola adaptor,
+    memanggilnya seperlunya untuk menyinkronkan antara penyedia konten dan server.
+</p>
+<p class="note">
+    <strong>Catatan:</strong> Menggunakan tipe akun sebagai bagian dari identifikasi adaptor sinkronisasi memungkinkan
+    sistem mendeteksi dan menghimpun adaptor-adaptor sinkronisasi yang mengakses berbagai layanan dari
+    organisasi yang sama. Misalnya, adaptor sinkronisasi untuk semua layanan online Google semuanya memiliki tipe akun
+    yang sama <code>com.google</code>. Bila pengguna menambahkan akun Google ke perangkatnya, semua
+    adaptor sinkronisasi yang terinstal untuk layanan Google akan dicantumkan bersama; setiap adaptor sinkronisasi
+    yang tercantum akan menyinkronkan diri dengan berbagai penyedia konten pada perangkat.
+</p>
+<p>
+    Karena sebagian besar layanan mengharuskan pengguna untuk memeriksa identitas sebelum mengakses
+    data, sistem Android menawarkan kerangka kerja autentikasi yang serupa dengan, dan sering kali
+    digunakan bersama, kerangka kerja adaptor sinkronisasi. Kerangka kerja autentikasi menggunakan
+    autentikator plug-in yang merupakan subkelas
+    {@link android.accounts.AbstractAccountAuthenticator}. Autentikator memeriksa
+    identitas pengguna dalam langkah-langkah berikut:
+    <ol>
+        <li>
+            Mengumpulkan nama pengguna, kata sandi, atau informasi serupa (
+            <strong>kredensial</strong> pengguna).
+        </li>
+        <li>
+            Mengirimkan kredensial ke layanan
+        </li>
+        <li>
+            Memeriksa balasan layanan.
+        </li>
+    </ol>
+<p>
+    Jika layanan menerima kredensial, autentikator bisa
+    menyimpan kredensial itu untuk digunakan nanti. Karena kerangka kerja autentikator plug-in,
+    {@link android.accounts.AccountManager} bisa menyediakan akses ke setiap token autentikasi yang didukung suatu autentikator
+    dan dipilihnya untuk diekspos, seperti token autentikasi OAuth2.
+</p>
+<p>
+    Meskipun autentikasi tidak diharuskan, sebagian besar layanan kontak menggunakannya.
+    Akan tetapi, Anda tidak wajib menggunakan kerangka kerja autentikasi Android untuk melakukan autentikasi.
+</p>
+<h3 id="SyncAdapterImplementing">Implementasi adaptor sinkronisasi</h3>
+<p>
+    Untuk mengimplementasikan adaptor sinkronisasi bagi Penyedia Kontak, perlu Anda memulai dengan membuat
+    aplikasi Android yang berisi elemen-elemen berikut:
+</p>
+    <dl>
+        <dt>
+            Komponen {@link android.app.Service} yang merespons permintaan sistem untuk
+            mengikat ke adaptor sinkronisasi.
+        </dt>
+        <dd>
+            Bila sistem ingin menjalankan sinkronisasi, sistem akan memanggil metode
+            {@link android.app.Service#onBind(Intent) onBind()} layanan untuk mendapatkan
+            {@link android.os.IBinder} bagi adaptor sinkronisasi. Hal ini memungkinkan sistem melakukan
+            panggilan lintas proses ke metode adaptor.
+            <p>
+                Dalam contoh aplikasi <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+               Sample Sync Adapter</a>, nama kelas layanan ini adalah
+                <code>com.example.android.samplesync.syncadapter.SyncService</code>.
+            </p>
+        </dd>
+        <dt>
+            Adaptor sinkronisasi yang sesungguhnya, diimplementasikan sebagai subkelas konkret dari
+            {@link android.content.AbstractThreadedSyncAdapter}.
+        </dt>
+        <dd>
+            Kelas ini melakukan pekerjaan mengunduh data dari server, mengunggah data ke
+            perangkat, dan menyelesaikan konflik. Pekerjaan utama adaptor
+            diselesaikan dengan metode {@link android.content.AbstractThreadedSyncAdapter#onPerformSync(
+            Account, Bundle, String, ContentProviderClient, SyncResult)
+            onPerformSync()}. Instance kelas ini harus dibuat sebagai singleton.
+            <p>
+                Dalam contoh aplikasi <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+               Sample Sync Adapter</a>, adaptor sinkronisasi didefinisikan dalam kelas
+                <code>com.example.android.samplesync.syncadapter.SyncAdapter</code>.
+            </p>
+        </dd>
+        <dt>
+            Subkelas {@link android.app.Application}.
+        </dt>
+        <dd>
+            Kelas ini berfungsi sebagai pabrik untuk singleton adaptor sinkronisasi. Gunakan
+            metode {@link android.app.Application#onCreate()} untuk membuat instance adaptor sinkronisasi , dan
+            menyediakan metode "getter" statis untuk mengembalikan singleton ke
+            metode {@link android.app.Service#onBind(Intent) onBind()} dari layanan
+            adaptor sinkronisasi.
+        </dd>
+        <dt>
+            <strong>Opsional:</strong> Komponen {@link android.app.Service} yang merespons
+            permintaan dari sistem untuk autentikasi pengguna.
+        </dt>
+        <dd>
+            {@link android.accounts.AccountManager} memulai layanan ini untuk memulai proses
+            autentikasi. Metode {@link android.app.Service#onCreate()} layanan membuat instance
+            objek autentikator. Bila sistem ingin mengautentikasi akun pengguna untuk
+            adaptor sinkronisasi aplikasi, sistem akan memanggil metode
+{@link android.app.Service#onBind(Intent) onBind()}            layanan guna mendapatkan
+            {@link android.os.IBinder} bagi autentikator. Hal ini memungkinkan sistem melakukan
+            panggilan lintas proses ke metode autentikator.
+            <p>
+                Dalam contoh aplikasi <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+               Sample Sync Adapter</a>, nama kelas layanan ini adalah
+                <code>com.example.android.samplesync.authenticator.AuthenticationService</code>.
+            </p>
+        </dd>
+        <dt>
+            <strong>Opsional:</strong> Subkelas konkret
+            {@link android.accounts.AbstractAccountAuthenticator} yang menangani permintaan
+            autentikasi.
+        </dt>
+        <dd>
+            Kelas ini menyediakan metode yang dipicu {@link android.accounts.AccountManager}
+            untuk mengautentikasi kredensial pengguna dengan layanan. Detail
+            proses autentikasi sangat bervariasi, berdasarkan teknologi server yang digunakan. Anda harus
+            mengacu ke dokumentasi bagi perangkat lunak server untuk mengetahui selengkapnya tentang autentikasi.
+            <p>
+                Dalam contoh aplikasi <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+               Sample Sync Adapter</a>, autentikator didefinisikan dalam kelas
+                <code>com.example.android.samplesync.authenticator.Authenticator</code>.
+            </p>
+        </dd>
+        <dt>
+            File XML yang mendefinisikan adaptor sinkronisasi dan autentikator bagi sistem.
+        </dt>
+        <dd>
+            Komponen-komponen layanan adaptor sinkronisasi dan autentikator
+            didefinisikan dalam elemen-elemen
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/service-element.html">service</a>&gt;</code>
+            di manifes aplikasi. Elemen-elemen ini
+            berisi
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+elemen anak yang menyediakan data tertentu ke
+            sistem:
+            <ul>
+                <li>
+                    Elemen
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+                    untuk layanan adaptor sinkronisasi menunjuk ke
+                    file XML <code>res/xml/syncadapter.xml</code>. Pada gilirannya, file ini mendefinisikan
+                    URI untuk layanan web yang akan disinkronkan dengan Penyedia Kontak,
+                    dan tipe akun untuk layanan web.
+                </li>
+                <li>
+                    <strong>Opsional:</strong> Elemen
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+                   untuk autentikator menunjuk ke file XML
+                    <code>res/xml/authenticator.xml</code>. Pada gilirannya, file ini menetapkan
+                    tipe akun yang didukung autentikator, serta sumber daya UI yang
+                    muncul selama proses autentikasi. Tipe akun yang ditetapkan dalam elemen ini
+                    harus sama dengan tipe akun yang ditetapkan untuk adaptor
+                    sinkronisasi.
+                </li>
+            </ul>
+        </dd>
+    </dl>
+<h2 id="SocialStream">Data Aliran Sosial</h2>
+<p>
+    Tabel-tabel {@code android.provider.ContactsContract.StreamItems} dan
+    {@code android.provider.ContactsContract.StreamItemPhotos}
+    mengelola data yang masuk dari jaringan sosial. Anda bisa menulis adaptor sinkronisasi yang menambahkan data aliran
+    dari jaringan Anda sendiri ke tabel-tabel ini, atau Anda bisa membaca data aliran dari tabel-tabel ini dan
+    menampilkannya dalam aplikasi sendiri, atau keduanya. Dengan fitur-fitur ini, layanan dan aplikasi
+    jaringan sosial Anda bisa diintegrasikan ke dalam pengalaman jaringan sosial Android.
+</p>
+<h3 id="StreamText">Teks aliran sosial</h3>
+<p>
+    Item aliran selalu dikaitkan dengan kontak mentah.
+    {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID} menautkan ke
+    nilai <code>_ID</code> untuk kontak mentah. Tipe akun dan nama akun kontak
+    mentah juga disimpan dalam baris item aliran.
+</p>
+<p>
+    Simpanlah data dari aliran Anda dalam kolom-kolom berikut:
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_TYPE}
+    </dt>
+    <dd>
+        <strong>Diperlukan.</strong> Tipe akun pengguna untuk kontak mentah yang dikaitkan dengan
+        item aliran ini. Ingatlah untuk mengatur nilai ini saat Anda menyisipkan item aliran.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_NAME}
+    </dt>
+    <dd>
+        <strong>Diperlukan.</strong> Nama akun pengguna untuk kontak mentah yang dikaitkan dengan
+        item aliran ini. Ingatlah untuk mengatur nilai ini saat Anda menyisipkan item aliran.
+    </dd>
+    <dt>
+        Kolom identifier
+    </dt>
+    <dd>
+        <strong>Diperlukan.</strong> Anda harus memasukkan kolom identifier berikut saat
+        menyisipkan item aliran:
+        <ul>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_ID}:
+                Nilai {@code android.provider.BaseColumns#_ID} kontak yang dikaitkan dengan item aliran
+                ini.
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_LOOKUP_KEY}:
+                Nilai {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}
+                kontak yang dikaitkan dengan item aliran ini.
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID}:
+                Nilai {@code android.provider.BaseColumns#_ID} kontak mentah yang dikaitkan dengan item aliran
+                ini.
+            </li>
+        </ul>
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#COMMENTS}
+    </dt>
+    <dd>
+        Opsional. Menyimpan informasi rangkuman yang bisa Anda tampilkan di awal item aliran.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TEXT}
+    </dt>
+    <dd>
+        Teks item aliran, baik konten yang diposting oleh sumber item,
+        maupun keterangan beberapa tindakan yang menghasilkan item aliran. Kolom ini bisa berisi
+        sembarang gambar sumber daya pemformatan dan tertanam yang bisa dirender oleh
+        {@link android.text.Html#fromHtml(String) fromHtml()}. Penyedia bisa memotong atau
+        menghapus konten yang panjang, tetapi penyedia akan mencoba menghindari memutus tag.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}
+    </dt>
+    <dd>
+        String teks berisi waktu item aliran yang disisipkan atau diperbarui, berupa
+        <em>milidetik</em> sejak waktu patokan. Aplikasi yang menyisipkan atau memperbarui item aliran
+        bertanggung jawab memelihara kolom ini; aplikasi tidak dipelihara secara otomatis oleh
+        Penyedia Kontak.
+    </dd>
+</dl>
+<p>
+    Untuk menampilkan informasi pengidentifikasi item aliran Anda, gunakan
+    {@code android.provider.ContactsContract.StreamItemsColumns#RES_ICON},
+    {@code android.provider.ContactsContract.StreamItemsColumns#RES_LABEL}, dan
+    {@code android.provider.ContactsContract.StreamItemsColumns#RES_PACKAGE} untuk menautkan ke sumber daya
+    dalam aplikasi Anda.
+</p>
+<p>
+    Tabel {@code android.provider.ContactsContract.StreamItems} juga berisi kolom-kolom
+    {@code android.provider.ContactsContract.StreamItemsColumns#SYNC1} hingga
+    {@code android.provider.ContactsContract.StreamItemsColumns#SYNC4} untuk penggunaan eksklusif oleh
+    adaptor sinkronisasi.
+</p>
+<h3 id="StreamPhotos">Foto aliran sosial</h3>
+<p>
+   Tabel {@code android.provider.ContactsContract.StreamItemPhotos} menyimpan foto-foto yang dikaitkan
+   dengan item aliran. Kolom
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#STREAM_ITEM_ID}   tabel ini
+   menautkan ke nilai dalam kolom {@code android.provider.BaseColumns#_ID}
+   tabel {@code android.provider.ContactsContract.StreamItems}. Acuan foto disimpan dalam
+   tabel pada kolom-kolom ini:
+</p>
+<dl>
+    <dt>
+        Kolom {@code android.provider.ContactsContract.StreamItemPhotos#PHOTO} (BLOB).
+    </dt>
+    <dd>
+        Representasi biner foto, yang diubah ukurannya oleh penyedia untuk penyimpanan dan tampilan.
+        Kolom ini tersedia untuk kompatibilitas ke belakang dengan versi Penyedia Kontak
+        sebelumnya yang menggunakannya untuk menyimpan foto. Akan tetapi, pada versi saat ini
+        Anda tidak boleh menggunakan kolom ini untuk menyimpan foto. Sebagai gantinya, gunakan
+         {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID} atau
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI} (keduanya
+        dijelaskan dalam poin-poin berikut) untuk menyimpan foto di file. Kolom ini sekarang
+        berisi thumbnail foto, yang tersedia untuk dibaca.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID}
+    </dt>
+    <dd>
+        Identifier numerik foto untuk kontak mentah. Tambahkan nilai ini ke konstanta
+        {@link android.provider.ContactsContract.DisplayPhoto#CONTENT_URI DisplayPhoto.CONTENT_URI}
+        untuk mendapatkan URI konten yang menunjuk ke satu file foto, kemudian panggil
+        {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+        openAssetFileDescriptor()} untuk mendapatkan handle ke file foto.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}
+    </dt>
+    <dd>
+        URI konten menunjuk langsung ke file foto untuk foto yang diwakili oleh baris ini.
+        Panggillah {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+        openAssetFileDescriptor()} dengan URI ini untuk mendapatkan handle ke file foto.
+    </dd>
+</dl>
+<h3 id="SocialStreamTables">Menggunakan tabel aliran sosial</h3>
+<p>
+    Tabel-tabel ini sama fungsinya dengan tabel-tabel utama lainnya dalam Penyedia Kontak, kecuali:
+</p>
+    <ul>
+        <li>
+            Tabel-tabel ini memerlukan izin akses tambahan. Untuk membaca dari tabel, aplikasi Anda
+            harus memiliki izin {@code android.Manifest.permission#READ_SOCIAL_STREAM}. Untuk memodifikasi
+            tabel, aplikasi Anda harus memiliki izin
+            {@code android.Manifest.permission#WRITE_SOCIAL_STREAM}.
+        </li>
+        <li>
+            Untuk tabel {@code android.provider.ContactsContract.StreamItems}, jumlah baris
+            yang disimpan bagi setiap kontak mentah adalah terbatas. Setelah batasnya tercapai,
+            Penyedia Kontak akan membuat ruang untuk baris item aliran baru dengan menghapus secara otomatis
+            baris yang memiliki
+            {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP} terlama. Untuk mendapatkan
+            batas, keluarkan query ke URI konten
+            {@code android.provider.ContactsContract.StreamItems#CONTENT_LIMIT_URI}. Anda bisa membiarkan
+            semua argumen selain URI konten diatur ke <code>null</code>. Query
+            menghasilkan sebuah Kursor yang berisi baris tunggal, dengan kolom tunggal
+            {@code android.provider.ContactsContract.StreamItems#MAX_ITEMS}.
+        </li>
+    </ul>
+
+<p>
+    Kelas {@code android.provider.ContactsContract.StreamItems.StreamItemPhotos} mendefinisikan
+    subtabel {@code android.provider.ContactsContract.StreamItemPhotos} yang berisi
+    baris foto untuk satu item aliran.
+</p>
+<h3 id="SocialStreamInteraction">Interaksi aliran sosial</h3>
+<p>
+    Data aliran sosial yang dikelola oleh Penyedia Kontak, bersama aplikasi kontak
+    perangkat, menawarkan cara andal untuk menghubungkan sistem jaringan sosial Anda
+    dengan kontak yang ada. Tersedia fitur-fitur berikut:
+</p>
+    <ul>
+        <li>
+            Dengan menyinkronkan layanan jaringan sosial ke Penyedia Kontak dengan adaptor
+            sinkronisasi, Anda bisa mengambil aktivitas terbaru untuk kontak pengguna dan menyimpannya dalam tabel-tabel
+             {@code android.provider.ContactsContract.StreamItems} dan
+            {@code android.provider.ContactsContract.StreamItemPhotos} untuk digunakan nanti.
+        </li>
+        <li>
+            Selain sinkronisasi rutin, Anda bisa memicu adaptor sinkronisasi agar mengambil
+            data tambahan bila pengguna memilih sebuah kontak untuk ditampilkan. Hal ini memungkinkan adaptor sinkronisasi Anda
+            mengambil foto resolusi tinggi dan item aliran terbaru untuk kontak.
+        </li>
+        <li>
+            Dengan mendaftarkan pemberitahuan pada aplikasi kontak perangkat dan Penyedia Kontak,
+            Anda bisa <em>menerima</em> intent saat kontak ditampilkan, dan pada saat itu
+            memperbarui status kontak dari layanan Anda. Pendekatan ini mungkin lebih cepat dan menggunakan
+            bandwidth lebih sedikit daripada melakukan sinkronisasi penuh dengan adaptor sinkronisasi.
+        </li>
+        <li>
+            Pengguna bisa menambahkan kontak ke layanan jaringan sosial Anda sambil melihat kontak
+            dalam aplikasi kontak perangkat. Anda mengaktifkannya dengan fitur "invite contact",
+            yang Anda aktifkan dengan kombinasi aktivitas yang menambahkan kontak yang ada ke jaringan
+           Anda, dan file XML yang menyediakan aplikasi kontak perangkat dan
+            Penyedia Kontak dengan detail aplikasi Anda.
+        </li>
+    </ul>
+<p>
+    Sinkronisasi rutin item aliran dengan Penyedia Kontak sama dengan
+    sinkronisasi lainnya. Untuk mengetahui selengkapnya tentang sinkronisasi, lihat bagian
+    <a href="#SyncAdapters">Adaptor Sinkronisasi Penyedia Kontak</a>. Mendaftarkan pemberitahuan dan
+    mengundang kontak dibahas dalam dua bagian berikutnya.
+</p>
+<h4>Pendaftaran untuk menangani tampilan jaringan sosial</h4>
+<p>
+    Untuk mendaftarkan adaptor sinkronisasi agar menerima pemberitahuan saat pengguna menampilkan kontak
+    yang dikelola oleh adaptor sinkronisasi Anda:
+</p>
+<ol>
+    <li>
+        Buat file yang bernama <code>contacts.xml</code> dalam direktori <code>res/xml/</code>
+        proyek Anda. Jika sudah memiliki file ini, langkah ini boleh dilewati.
+    </li>
+    <li>
+        Dalam file ini, tambahkan elemen
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Jika elemen ini sudah ada, langkah ini boleh dilewati.
+    </li>
+    <li>
+        Untuk mendaftarkan layanan yang diberitahukan saat pengguna membuka halaman detail kontak dalam
+        aplikasi kontak perangkat, tambahkan atribut
+        <code>viewContactNotifyService="<em>serviceclass</em>"</code> ke elemen, dengan
+        <code><em>serviceclass</em></code> sebagai nama kelas mutlak (fully qualified) dari layanan
+        yang seharusnya menerima intent dari aplikasi kontak perangkat. Untuk layanan
+        notifier, gunakan kelas yang memperluas {@link android.app.IntentService}, guna memudahkan layanan
+        untuk menerima intent. Data dalam intent yang masuk berisi URI konten dari kontak
+        mentah yang diklik pengguna. Untuk layanan notifier, Anda bisa mengikatnya ke kemudian memanggil
+        adaptor sinkronisasi Anda untuk memperbarui data bagi kontak mentah.
+    </li>
+</ol>
+<p>
+    Untuk mendaftarkan aktivitas agar dipanggil saat pengguna mengklik item aliran atau foto atau keduanya:
+</p>
+<ol>
+    <li>
+        Buat file yang bernama <code>contacts.xml</code> dalam direktori <code>res/xml/</code>
+        proyek Anda. Jika sudah memiliki file ini, langkah ini boleh dilewati.
+    </li>
+    <li>
+        Dalam file ini, tambahkan elemen
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Jika elemen ini sudah ada, langkah ini boleh dilewati.
+    </li>
+    <li>
+        Untuk mendaftarkan salah satu aktivitas Anda guna menangani klik oleh pengguna pada item aliran dalam
+        aplikasi kontak perangkat, tambahkan atribut
+        <code>viewStreamItemActivity="<em>activityclass</em>"</code> ke elemen, dengan
+        <code><em>activityclass</em></code> sebagai nama kelas mutlak (fully-qualified) dari aktivitas
+        yang harus menerima intent dari aplikasi kontak perangkat.
+    </li>
+    <li>
+        Untuk mendaftarkan salah satu aktivitas Anda guna menangani klik oleh pengguna pada foto aliran dalam
+        aplikasi kontak perangkat, tambahkan atribut
+        <code>viewStreamItemPhotoActivity="<em>activityclass</em>"</code> ke elemen, dengan
+        <code><em>activityclass</em></code> adalah kelas nama mutlak aktivitas
+        yang harus menerima intent dari aplikasi kontak perangkat.
+    </li>
+</ol>
+<p>
+    Elemen <code>&lt;ContactsAccountType&gt;</code> dijelaskan lebih detail di
+    bagian <a href="#SocialStreamAcctType">Elemen &lt;ContactsAccountType&gt;</a>.
+</p>
+<p>
+    Intent yang masuk berisi URI konten dari materi atau foto yang diklik pengguna.
+    Untuk mendapatkan aktivitas terpisah bagi item teks dan foto, gunakan kedua atribut dalam file yang sama.
+</p>
+<h4>Berinteraksi dengan layanan jaringan sosial Anda</h4>
+<p>
+    Pengguna tidak harus meninggalkan aplikasi perangkat kontak untuk mengundang kontak ke situs
+    jaringan sosial Anda. Sebagai gantinya, Anda bisa meminta aplikasi kontak perangkat mengirimkan intent untuk mengundang
+    kontak ke salah satu aktivitas Anda. Untuk mempersiapkannya:
+</p>
+<ol>
+    <li>
+        Buat file yang bernama <code>contacts.xml</code> dalam direktori <code>res/xml/</code>
+        proyek Anda. Jika sudah memiliki file ini, langkah ini boleh dilewati.
+    </li>
+    <li>
+        Dalam file ini, tambahkan elemen
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Jika elemen ini sudah ada, langkah ini boleh dilewati.
+    </li>
+    <li>
+        Tambahkan atribut-atribut berikut:
+        <ul>
+            <li><code>inviteContactActivity="<em>activityclass</em>"</code></li>
+            <li>
+                <code>inviteContactActionLabel="&#64;string/<em>invite_action_label</em>"</code>
+            </li>
+        </ul>
+        Nilai <code><em>activityclass</em></code> adalah nama kelas mutlak
+        aktivitas yang harus menerima intent ini. Nilai <code><em>invite_action_label</em></code>
+        adalah string teks yang ditampilkan dalam menu <strong>Add Connection</strong> dalam
+        aplikasi kontak perangkat.
+    </li>
+</ol>
+<p class="note">
+    <strong>Catatan:</strong> <code>ContactsSource</code> adalah nama tag yang sudah usang untuk
+    <code>ContactsAccountType</code>.
+</p>
+<h3 id="ContactsFile">Acuan contacts.xml</h3>
+<p>
+    File <code>contacts.xml</code> berisi elemen XML yang mengontrol interaksi adaptor sinkronisasi
+    Anda dan aplikasi dengan aplikasi kontak dan Penyedia Kontak. Elemen-elemen ini
+    dijelaskan di bagian-bagian selanjutnya.
+</p>
+<h4 id="SocialStreamAcctType">Elemen &lt;ContactsAccountType&gt;</h4>
+<p>
+    Elemen <code>&lt;ContactsAccountType&gt;</code> mengontrol interaksi aplikasi
+    Anda dengan aplikasi kontak. Sintaksnya adalah sebagai berikut:
+</p>
+<pre>
+&lt;ContactsAccountType
+        xmlns:android="http://schemas.android.com/apk/res/android"
+        inviteContactActivity="<em>activity_name</em>"
+        inviteContactActionLabel="<em>invite_command_text</em>"
+        viewContactNotifyService="<em>view_notify_service</em>"
+        viewGroupActivity="<em>group_view_activity</em>"
+        viewGroupActionLabel="<em>group_action_text</em>"
+        viewStreamItemActivity="<em>viewstream_activity_name</em>"
+        viewStreamItemPhotoActivity="<em>viewphotostream_activity_name</em>"&gt;
+</pre>
+<p>
+    <strong>dimuat dalam:</strong>
+</p>
+<p>
+    <code>res/xml/contacts.xml</code>
+</p>
+<p>
+    <strong>bisa berisi:</strong>
+</p>
+<p>
+    <strong><code>&lt;ContactsDataKind&gt;</code></strong>
+</p>
+<p>
+    <strong>Keterangan:</strong>
+</p>
+<p>
+    Mendeklarasikan komponen Android dan label UI yang memungkinkan pengguna mengundang salah satu kontak ke
+    jaringan sosial, memberi tahu pengguna bila salah satu aliran jaringan sosial diperbarui, dan
+    seterusnya.
+</p>
+<p>
+    Perhatikan bahwa awalan atribut <code>android:</code> tidak perlu untuk atribut-atribut
+    <code>&lt;ContactsAccountType&gt;</code>.
+</p>
+<p>
+    <strong>Atribut:</strong>
+</p>
+<dl>
+    <dt>{@code inviteContactActivity}</dt>
+    <dd>
+        Nama kelas mutlak aktivitas dalam aplikasi yang Anda ingin
+        aktifkan bila pengguna memilih <strong>Add connection</strong> dari aplikasi kontak
+        perangkat.
+    </dd>
+    <dt>{@code inviteContactActionLabel}</dt>
+    <dd>
+        String teks yang ditampilkan untuk aktivitas yang ditetapkan dalam
+        {@code inviteContactActivity}, dalam menu <strong>Add connection</strong>.
+        Misalnya, Anda bisa menggunakan string "Ikuti di jaringan saya". Anda bisa menggunakan identifier sumber daya
+        string untuk tabel ini.
+    </dd>
+    <dt>{@code viewContactNotifyService}</dt>
+    <dd>
+        Nama kelas mutlak layanan dalam aplikasi Anda yang harus menerima
+        pemberitahuan saat pengguna menampilkan kontak. Pemberitahuan ini dikirimkan oleh aplikasi kontak
+        perangkat; hal ini memungkinkan aplikasi Anda menunda operasi yang banyak memproses data
+        hingga dibutuhkan. Misalnya, aplikasi Anda bisa merespons pemberitahuan ini
+        dengan membaca dalam dan menampilkan foto resolusi tinggi kontak dan item aliran sosial
+        terbaru. Fitur ini dijelaskan lebih detail di bagian
+        <a href="#SocialStreamInteraction">Interaksi aliran sosial</a>. Anda bisa melihat
+        contoh layanan pemberitahuan dalam file <code>NotifierService.java</code> dalam contoh aplikasi
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">Sample Sync Adapter</a>.
+
+    </dd>
+    <dt>{@code viewGroupActivity}</dt>
+    <dd>
+        Nama kelas mutlak aktivitas dalam aplikasi yang bisa menampilkan
+        informasi grup. Bila pengguna mengklik label grup dalam aplikasi
+        kontak perangkat, UI aktivitas ini akan ditampilkan.
+    </dd>
+    <dt>{@code viewGroupActionLabel}</dt>
+    <dd>
+        Label yang ditampilkan aplikasi kontak untuk kontrol UI yang memungkinkan
+        pengguna melihat grup dalam aplikasi Anda.
+        <p>
+            Misalnya, jika Anda menginstal aplikasi Google+ di perangkat dan menyinkronkan
+            Google+ dengan aplikasi kontak, Anda akan melihat lingkaran Google+ tercantum sebagai grup
+            dalam tab <strong>Groups</strong> aplikasi kontak Anda. Jika Anda mengklik
+            lingkaran Google+, Anda akan melihat orang-orang di lingkaran itu tercantum sebagai satu "grup". Di atas
+            tampilan, Anda akan melihat ikon Google+; jika mengklik ikon itu, kontrol akan beralih ke
+            aplikasi Google+. Aplikasi kontak melakukan ini dengan
+            {@code viewGroupActivity}, yang menggunakan ikon Google+ sebagai nilai
+            {@code viewGroupActionLabel}.
+        </p>
+        <p>
+            Identifier sumber daya string diperbolehkan untuk atribut ini.
+        </p>
+    </dd>
+    <dt>{@code viewStreamItemActivity}</dt>
+    <dd>
+        Nama kelas mutlak aktivitas dalam aplikasi Anda
+        yang diluncurkan aplikasi kontak perangkat bila pengguna mengklik item aliran untuk kontak mentah.
+    </dd>
+    <dt>{@code viewStreamItemPhotoActivity}</dt>
+    <dd>
+        Nama kelas mutlak aktivitas yang diluncurkan
+        aplikasi kontak perangkat bila pengguna mengklik foto dalam item aliran
+        untuk kontak mentah.
+    </dd>
+</dl>
+<h4 id="SocialStreamDataKind">Elemen &lt;ContactsDataKind&gt;</h4>
+<p>
+    Elemen <code>&lt;ContactsDataKind&gt;</code> mengontrol tampilan baris data custom
+    aplikasi Anda dalam UI aplikasi kontak. Sintaksnya adalah sebagai berikut:
+</p>
+<pre>
+&lt;ContactsDataKind
+        android:mimeType="<em>MIMEtype</em>"
+        android:icon="<em>icon_resources</em>"
+        android:summaryColumn="<em>column_name</em>"
+        android:detailColumn="<em>column_name</em>"&gt;
+</pre>
+<p>
+    <strong>dimuat dalam:</strong>
+</p>
+<code>&lt;ContactsAccountType&gt;</code>
+<p>
+    <strong>Keterangan:</strong>
+</p>
+<p>
+    Gunakan elemen ini untuk memerintahkan aplikasi kontak agar menampilkan konten baris data custom sebagai
+    bagian dari detail kontak mentah. Setiap elemen anak <code>&lt;ContactsDataKind&gt;</code>
+    <code>&lt;ContactsAccountType&gt;</code> mewakili tipe baris data custom yang
+    ditambahkan adaptor sinkronisasi Anda ke tabel {@link android.provider.ContactsContract.Data}. Tambahkan satu
+    elemen <code>&lt;ContactsDataKind&gt;</code> untuk setiap tipe MIME custom yang Anda gunakan. Anda tidak harus
+    menambahkan elemen jika Anda memiliki baris data custom yang datanya tidak ingin ditampilkan.
+</p>
+<p>
+    <strong>Atribut:</strong>
+</p>
+<dl>
+    <dt>{@code android:mimeType}</dt>
+    <dd>
+        Tipe MIME custom yang telah Anda definisikan untuk salah satu tipe baris data custom dalam
+        tabel {@link android.provider.ContactsContract.Data}. Misalnya, nilai
+        <code>vnd.android.cursor.item/vnd.example.locationstatus</code> bisa berupa tipe MIME
+       custom untuk baris data yang mencatat lokasi kontak yang terakhir diketahui.
+    </dd>
+    <dt>{@code android:icon}</dt>
+    <dd>
+
+        <a href="{@docRoot}guide/topics/resources/drawable-resource.html">Sumber daya drawable</a>
+        Android yang ditampilkan aplikasi kontak di samping data Anda. Gunakan ini untuk menunjukkan kepada
+        pengguna bahwa data berasal dari layanan Anda.
+    </dd>
+    <dt>{@code android:summaryColumn}</dt>
+    <dd>
+        Nama kolom untuk yang pertama dari dua nilai yang diambil dari baris data. Nilai
+        ditampilkan sebagai baris pertama entri untuk baris data ini. Baris pertama
+        dimaksudkan untuk digunakan sebagai rangkuman data, tetapi itu bersifat opsional. Lihat juga
+        <a href="#detailColumn">android:detailColumn</a>.
+    </dd>
+    <dt>{@code android:detailColumn}</dt>
+    <dd>
+        Nama kolom untuk yang kedua dari dua nilai yang diambil dari baris data. Nilai
+        ditampilkan sebagai baris kedua entri untuk baris data ini. Lihat juga
+        {@code android:summaryColumn}.
+    </dd>
+</dl>
+<h2 id="AdditionalFeatures">Fitur Tambahan Penyedia Kontak</h2>
+<p>
+    Di samping fitur-fitur utama yang dijelaskan di bagian sebelumnya, Penyedia Kontak menawarkan
+   fitur-fitur berguna ini untuk digunakan bersama data kontak:
+</p>
+    <ul>
+       <li>Grup kontak</li>
+       <li>Fitur foto</li>
+    </ul>
+<h3 id="Groups">Grup kontak</h3>
+<p>
+    Penyedia Kontak secara opsional bisa melabeli kumpulan kontak terkait dengan data
+    <strong>grup</strong>. Jika server yang dikaitkan dengan akun pengguna
+    ingin mempertahankan grup, adaptor sinkronisasi untuk tipe akun dari akun itu harus mentransfer
+    data grup antara Penyedia Kontak dan server. Bila pengguna menambahkan kontak baru ke
+    server, kemudian memasukkan kontak ini dalam grup baru, adaptor sinkronisasi harus menambahkan grup baru
+    ke tabel {@link android.provider.ContactsContract.Groups}. Grup atau grup-grup yang memiliki kontak
+    disimpan dalam tabel {@link android.provider.ContactsContract.Data}, dengan menggunakan
+    tipe MIME {@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}.
+</p>
+<p>
+    Jika Anda mendesain adaptor sinkronisasi yang akan menambahkan data kontak mentah dari
+    server ke Penyedia Kontak, dan Anda tidak menggunakan grup, maka Anda harus memberi tahu
+    penyedia itu agar membuat data Anda terlihat. Dalam kode yang dijalankan bila pengguna menambahkan akun
+    ke perangkat, perbarui baris {@link android.provider.ContactsContract.Settings}
+    yang ditambahkan Penyedia Kontak untuk akunnya. Dalam baris ini, atur nilai kolom
+    {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE
+    Settings.UNGROUPED_VISIBLE} ke 1. Bila melakukannya, Penyedia Kontak akan selalu
+    membuat data kontak Anda terlihat, meskipun Anda tidak menggunakan grup.
+</p>
+<h3 id="Photos">Foto kontak</h3>
+<p>
+    Tabel {@link android.provider.ContactsContract.Data} menyimpan foto sebagai baris dengan tipe MIME
+    {@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+    Photo.CONTENT_ITEM_TYPE}. Kolom
+    {@link android.provider.ContactsContract.RawContactsColumns#CONTACT_ID} baris yang ditautkan ke
+    kolom {@code android.provider.BaseColumns#_ID} kontak mentah yang memiliki kolom itu.
+    Kelas {@link android.provider.ContactsContract.Contacts.Photo} mendefinisikan subtabel
+    {@link android.provider.ContactsContract.Contacts} yang berisi informasi foto untuk foto
+    utama kontak, yang merupakan foto utama dari kontak mentah utama kontak itu. Demikian pula,
+    kelas {@link android.provider.ContactsContract.RawContacts.DisplayPhoto} mendefinisikan subtabel
+    {@link android.provider.ContactsContract.RawContacts} yang berisi informasi foto untuk
+    foto utama kontak mentah.
+</p>
+<p>
+    Dokumentasi acuan untuk {@link android.provider.ContactsContract.Contacts.Photo} dan
+    {@link android.provider.ContactsContract.RawContacts.DisplayPhoto} berisi contoh-contoh
+    pengambilan informasi foto. Tidak ada kelas praktis untuk mengambil
+    thumbnail utama kontak mentah, tetapi Anda bisa mengirim query ke
+    tabel {@link android.provider.ContactsContract.Data}, dengan memilih
+    {@code android.provider.BaseColumns#_ID} kontak mentah,
+    {@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+    Photo.CONTENT_ITEM_TYPE}, dan kolom {@link android.provider.ContactsContract.Data#IS_PRIMARY}
+    untuk menemukan baris foto utama kontak mentah.
+</p>
+<p>
+    Data aliran sosial untuk seseorang bisa juga disertai foto. Data ini disimpan dalam
+    tabel {@code android.provider.ContactsContract.StreamItemPhotos}, yang dijelaskan lebih detail
+    di bagian <a href="#StreamPhotos">Foto aliran sosial</a>.
+</p>
diff --git a/docs/html-intl/intl/in/guide/topics/providers/content-provider-basics.jd b/docs/html-intl/intl/in/guide/topics/providers/content-provider-basics.jd
new file mode 100644
index 0000000..c4003ca
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/providers/content-provider-basics.jd
@@ -0,0 +1,1196 @@
+page.title=Dasar-Dasar Penyedia Konten
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<!-- In this document -->
+<h2>Dalam dokumen ini</h2>
+<ol>
+    <li>
+        <a href="#Basics">Ikhtisar</a>
+        <ol>
+            <li>
+                <a href="#ClientProvider">Mengakses penyedia</a>
+            </li>
+            <li>
+                <a href="#ContentURIs">URI Konten</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#SimpleQuery">Mengambil Data dari Penyedia</a>
+        <ol>
+            <li>
+                <a href="#RequestPermissions">Meminta izin akses baca</a>
+            </li>
+            <li>
+                <a href="#Query">Membuat query</a>
+            </li>
+            <li>
+                <a href="#DisplayResults">Menampilkan hasil query</a>
+            </li>
+            <li>
+                <a href="#GettingResults">Mendapatkan data dari hasil query</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#Permissions">Izin Penyedia Konten</a>
+    </li>
+    <li>
+        <a href="#Modifications">Menyisipkan, Memperbarui, dan Menghapus Data</a>
+        <ol>
+            <li>
+                <a href="#Inserting">Menyisipkan data</a>
+            </li>
+            <li>
+                <a href="#Updating">Memperbarui data</a>
+            </li>
+            <li>
+                <a href="#Deleting">Menghapus data</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#DataTypes">Tipe Data Penyedia</a>
+    </li>
+    <li>
+        <a href="#AltForms">Bentuk-Bentuk Alternatif Akses Penyedia</a>
+        <ol>
+            <li>
+                <a href="#Batch">Akses batch</a>
+            </li>
+            <li>
+                <a href="#Intents">Akses data melalui intent</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClasses">Kelas-kelas Kontrak</a>
+    </li>
+    <li>
+        <a href="#MIMETypeReference">Acuan Tipe MIME</a>
+    </li>
+</ol>
+
+    <!-- Key Classes -->
+<h2>Kelas-kelas utama</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.content.ContentResolver}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+
+    <!-- Related Samples -->
+<h2>Contoh-Contoh Terkait</h2>
+    <ol>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        Kursor (Orang)</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        Kursor (Telepon)</a>
+        </li>
+    </ol>
+
+    <!-- See also -->
+<h2>Lihat juga</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+            Membuat Penyedia Konten</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+            Penyedia Kalender</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+    <!-- Intro paragraphs -->
+<p>
+    Penyedia konten mengelola akses ke repository data pusat. Penyedia
+    adalah bagian dari aplikasi Android, yang sering menyediakan UI-nya sendiri untuk menggunakan
+    data. Akan tetapi, penyedia konten terutama dimaksudkan untuk digunakan oleh
+    aplikasi lain, yang mengakses penyedia itu melalui objek klien penyedia. Bersama-sama, penyedia
+    dan klien penyedia menawarkan antarmuka standar yang konsisten ke data yang juga menangani
+    komunikasi antar-proses dan akses data aman.
+</p>
+<p>
+    Topik ini menerangkan dasar-dasar dari hal-hal berikut:
+</p>
+    <ul>
+        <li>Cara kerja penyedia konten.</li>
+        <li>API yang Anda gunakan untuk mengambil data dari penyedia konten.</li>
+        <li>API yang Anda gunakan untuk menyisipkan, memperbarui, atau menghapus data dalam penyedia konten.</li>
+        <li>Fitur API lainnya yang memudahkan kita menggunakan penyedia.</li>
+    </ul>
+
+    <!-- Basics -->
+<h2 id="Basics">Ikhtisar</h2>
+<p>
+    Penyedia konten menyajikan data ke aplikasi eksternal sebagai satu atau beberapa tabel yang
+    serupa dengan tabel-tabel yang ditemukan dalam database relasional. Sebuah baris mewakili instance beberapa tipe
+    data yang dikumpulkan penyedia, dan tiap kolom dalam baris mewakili sepotong
+    data yang dikumpulkan untuk sebuah instance.
+</p>
+<p>
+    Misalnya, salah satu penyedia bawaan di platform Android adalah kamus pengguna, yang
+    menyimpan ejaan kata-kata tidak-standar yang ingin disimpan pengguna. Tabel 1 mengilustrasikan
+    wujud data yang mungkin ada dalam tabel penyedia ini:
+</p>
+<p class="table-caption">
+    <strong>Tabel 1:</strong> Contoh tabel kamus pengguna.
+</p>
+<table id="table1" style="width: 50%;">
+    <tr>
+        <th style="width:20%" align="center" scope="col">word</th>
+        <th style="width:20%" align="center" scope="col">app id</th>
+        <th style="width:20%" align="center" scope="col">frequency</th>
+        <th style="width:20%" align="center" scope="col">locale</th>
+        <th style="width:20%" align="center" scope="col">_ID</th>
+    </tr>
+    <tr>
+        <td align="center" scope="row">mapreduce</td>
+        <td align="center">user1</td>
+        <td align="center">100</td>
+        <td align="center">en_US</td>
+        <td align="center">1</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">precompiler</td>
+        <td align="center">user14</td>
+        <td align="center">200</td>
+        <td align="center">fr_FR</td>
+        <td align="center">2</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">applet</td>
+        <td align="center">user2</td>
+        <td align="center">225</td>
+        <td align="center">fr_CA</td>
+        <td align="center">3</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">const</td>
+        <td align="center">user1</td>
+        <td align="center">255</td>
+        <td align="center">pt_BR</td>
+        <td align="center">4</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">int</td>
+        <td align="center">user5</td>
+        <td align="center">100</td>
+        <td align="center">en_UK</td>
+        <td align="center">5</td>
+    </tr>
+</table>
+<p>
+    Dalam tabel 1, tiap baris mewakili instance sebuah kata yang mungkin tidak
+    ditemukan dalam kamus standar. Tiap kolom mewakili beberapa data untuk kata itu, misalnya
+    bahasa lokal tempat kata itu ditemukan kali pertama. Header kolom adalah nama kolom yang disimpan dalam
+    penyedia. Untuk mengacu ke bahasa lokal suatu baris, Anda mengacu ke kolom <code>locale</code>-nya. Untuk
+    penyedia ini, kolom <code>_ID</code> berfungsi sebagai "kunci utama" kolom yang
+    dipelihara oleh penyedia secara otomatis.
+</p>
+<p class="note">
+    <strong>Catatan:</strong> Penyedia tidak diharuskan memiliki kunci utama, dan tidak diharuskan
+    menggunakan <code>_ID</code> sebagai nama kolom kunci utama jika kunci itu ada. Akan tetapi,
+    jika Anda ingin mengikat data dari penyedia ke {@link android.widget.ListView}, salah satu
+    nama kolom harus <code>_ID</code>. Ketentuan ini dijelaskan secara lebih detail di bagian
+    <a href="#DisplayResults">Menampilkan hasil query</a>.
+</p>
+<h3 id="ClientProvider">Mengakses penyedia</h3>
+<p>
+    Aplikasi mengakses data dari penyedia konten dengan
+    sebuah objek klien {@link android.content.ContentResolver}. Objek ini memiliki metode yang memanggil
+    metode dengan nama identik dalam objek penyedia, instance salah satu
+    subkelas konkret dari {@link android.content.ContentProvider}. Metode-metode
+    {@link android.content.ContentResolver} menyediakan fungsi-fungsi dasar
+    "CRUD" (create, retrieve, update, dan delete) pada penyimpanan yang persisten.
+</p>
+<p>
+    Objek {@link android.content.ContentResolver} dalam
+    proses aplikasi klien dan objek {@link android.content.ContentProvider} dalam aplikasi yang memiliki
+    penyedia itu secara otomatis akan menangani komunikasi antar-proses.
+    {@link android.content.ContentProvider} juga berfungsi sebagai lapisan abstraksi antara
+    repository datanya dan penampilan eksternal data sebagai tabel.
+</p>
+<p class="note">
+    <strong>Catatan:</strong> Untuk mengakses penyedia, aplikasi Anda biasanya harus meminta
+    izin tertentu dalam file manifesnya. Hal ini dijelaskan lebih detail di bagian
+    <a href="#Permissions">Izin Penyedia Konten</a>
+</p>
+<p>
+    Misalnya, untuk mendapatkan daftar kata dan lokalnya dari Penyedia Kamus Pengguna,
+    Anda memanggil {@link android.content.ContentResolver#query ContentResolver.query()}.
+    Metode {@link android.content.ContentResolver#query query()} memanggil
+    metode {@link android.content.ContentProvider#query ContentProvider.query()} yang didefinisikan oleh 
+    Penyedia Kamus Pengguna. Baris-baris kode berikut menunjukkan sebuah
+    panggilan {@link android.content.ContentResolver#query ContentResolver.query()}:
+<p>
+<pre>
+// Queries the user dictionary and returns results
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,   // The content URI of the words table
+    mProjection,                        // The columns to return for each row
+    mSelectionClause                    // Selection criteria
+    mSelectionArgs,                     // Selection criteria
+    mSortOrder);                        // The sort order for the returned rows
+</pre>
+<p>
+    Tabel 2 menampilkan cara argumen untuk
+    {@link android.content.ContentResolver#query 
+    query(Uri,projection,selection,selectionArgs,sortOrder)} cocok dengan sebuah pernyataan SELECT di SQL:
+</p>
+<p class="table-caption">
+    <strong>Tabel 2:</strong> Query() dibandingkan dengan query SQL.
+</p>
+<table id="table2" style="width: 75%;">
+    <tr>
+        <th style="width:25%" align="center" scope="col">Argumen query()</th>
+        <th style="width:25%" align="center" scope="col">Kata kunci/parameter SELECT</th>
+        <th style="width:50%" align="center" scope="col">Catatan</th>
+    </tr>
+    <tr>
+        <td align="center"><code>Uri</code></td>
+        <td align="center"><code>FROM <em>table_name</em></code></td>
+        <td><code>Uri</code> memetakan ke tabel dalam penyedia yang bernama <em>table_name</em>.</td>
+    </tr>
+    <tr>
+        <td align="center"><code>projection</code></td>
+        <td align="center"><code><em>col,col,col,...</em></code></td>
+        <td>
+            <code>projection</code> adalah satu larik kolom yang harus disertakan untuk tiap baris
+            yang diambil.
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>selection</code></td>
+        <td align="center"><code>WHERE <em>col</em> = <em>value</em></code></td>
+        <td><code>selection</code> menetapkan kriteria untuk memilih baris.</td>
+    </tr>
+    <tr>
+        <td align="center"><code>selectionArgs</code></td>
+        <td align="center">
+            (Tidak ada padanan persis. Argumen pemilihan mengganti <code>?</code> placeholder dalam
+            klausa pemilihan.)
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>sortOrder</code></td>
+        <td align="center"><code>ORDER BY <em>col,col,...</em></code></td>
+        <td>
+            <code>sortOrder</code> menetapkan urutan munculnya baris dalam
+            {@link android.database.Cursor} yang dihasilkan.
+        </td>
+    </tr>
+</table>
+<h3 id="ContentURIs">URI Konten</h3>
+<p>
+    <strong>URI konten</strong> adalah URI yang mengidentifikasi data dalam penyedia. URI Konten
+    menyertakan nama simbolis seluruh penyedia (<strong>otoritas</strong>nya) dan sebuah
+    nama yang menunjuk ke tabel (<strong>path</strong>). Bila Anda memanggil
+    metode klien untuk mengakses tabel dalam penyedia, URI konten untuk tabel itu adalah salah satu
+    argumennya.
+</p>
+<p>
+    Dalam baris kode sebelumnya, konstanta
+    {@link android.provider.UserDictionary.Words#CONTENT_URI} mengandung URI konten dari
+    tabel "words" kamus pengguna. Objek {@link android.content.ContentResolver}
+    akan mengurai otoritas URI, dan menggunakannya untuk "mengetahui" penyedia dengan
+    membandingkan otoritas tersebut dengan sebuah tabel sistem berisi penyedia yang dikenal. 
+{@link android.content.ContentResolver}    kemudian bisa mengirim argumen query ke penyedia
+    yang benar.
+</p>
+<p>
+    {@link android.content.ContentProvider} menggunakan bagian path dari URI konten untuk memilih
+    tabel yang akan diakses. Penyedia biasanya memiliki <strong>path</strong> untuk tiap tabel yang dieksposnya.
+</p>
+<p>
+    Dalam baris kode sebelumnya, URI lengkap untuk tabel "words" adalah:
+</p>
+<pre>
+content://user_dictionary/words
+</pre>
+<p>
+    dalam hal ini string <code>user_dictionary</code> adalah otoritas penyedia, dan string
+    <code>words</code> adalah path tabel. String
+    <code>content://</code> (<strong>skema</strong>) selalu ada,
+    dan mengidentifikasinya sebagai URI konten.
+</p>
+<p>
+    Banyak penyedia yang memperbolehkan Anda mengakses satu baris dalam tabel dengan menambahkan sebuah ID nilai
+    ke akhir URI. Misalnya, untuk mengambil sebuah baris yang <code>_ID</code>-nya adalah
+    <code>4</code> dari kamus pengguna, Anda bisa menggunakan URI konten ini:
+</p>
+<pre>
+Uri singleUri = ContentUris.withAppendedId(UserDictionary.Words.CONTENT_URI,4);
+</pre>
+<p>
+    Anda akan sering menggunakan nilai-nilai ID bila telah mengambil satu set baris kemudian ingin memperbarui atau menghapus
+    salah satunya.
+</p>
+<p class="note">
+    <strong>Catatan:</strong> Kelas-kelas {@link android.net.Uri} dan {@link android.net.Uri.Builder} 
+    berisi metode praktis untuk membangun objek dari string URI yang tersusun dengan baik. 
+{@link android.content.ContentUris}    berisi metode praktis untuk menambahkan nilai ID ke
+    URI. Cuplikan kode sebelumnya menggunakan {@link android.content.ContentUris#withAppendedId
+    withAppendedId()} untuk menambahkan id ke URI konten User Dictionary.
+</p>
+
+
+    <!-- Retrieving Data from the Provider -->
+<h2 id="SimpleQuery">Mengambil Data dari Penyedia</h2>
+<p>
+    Bagian ini menerangkan cara mengambil data dari penyedia, dengan menggunakan Penyedia Kamus Pengguna
+    sebagai contoh.
+</p>
+<p class="note">
+    Demi kejelasan, cuplikan kode di bagian ini memanggil
+    {@link android.content.ContentResolver#query ContentResolver.query()} pada "UI thread"". Akan tetapi, dalam 
+    kode sesungguhnya, Anda harus melakukan query secara asinkron pada sebuah thread terpisah. Satu cara melakukannya 
+    adalah menggunakan kelas {@link android.content.CursorLoader}, yang dijelaskan
+    lebih detail dalam panduan <a href="{@docRoot}guide/components/loaders.html">
+    Loader</a>. Juga, baris-baris kode tersebut hanyalah cuplikan; tidak menunjukkan sebuah aplikasi
+     lengkap.
+</p>
+<p>
+    Untuk mengambil data dari penyedia, ikutilah langkah-langkah dasar ini:
+</p>
+<ol>
+   <li>
+        Minta izin akses baca untuk penyedia itu.
+   </li>
+   <li>
+        Definisikan kode yang mengirim query ke penyedia.
+   </li>
+</ol>
+<h3 id="RequestPermissions">Meminta izin akses baca</h3>
+<p>
+    Untuk mengambil data dari penyedia, aplikasi Anda memerlukan "izin akses baca" untuk
+    penyedia itu. Anda tidak bisa meminta izin ini saat runtime; sebagai gantinya, Anda harus menetapkan bahwa
+    Anda memerlukan izin ini dalam manifes, dengan menggunakan elemen
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+    dan nama persis izin yang didefinisikan oleh
+    penyedia itu. Bila menetapkan elemen ini dalam manifes, Anda secara efektif "meminta"
+    izin ini untuk aplikasi Anda. Bila pengguna menginstal aplikasi Anda, mereka secara implisit akan memberikan
+    permintaan ini.
+</p>
+<p>
+    Untuk menemukan nama persis dari izin akses baca untuk penyedia yang sedang Anda gunakan, serta
+    nama-nama izin akses lain yang digunakan oleh penyedia, lihatlah dalam
+    dokumentasi penyedia.
+</p>
+<p>
+    Peran izin dalam yang mengakses penyedia dijelaskan lebih detail di bagian
+    <a href="#Permissions">Izin Penyedia Konten</a>.
+</p>
+<p>
+    Penyedia Kamus Pengguna mendefinisikan izin
+    <code>android.permission.READ_USER_DICTIONARY</code> dalam file manifesnya, sehingga
+    aplikasi yang ingin membaca dari penyedia itu harus meminta izin ini.
+</p>
+<!-- Constructing the query -->
+<h3 id="Query">Membuat query</h3>
+<p>
+    Langkah berikutnya dalam mengambil data penyedia adalah membuat query. Cuplikan kode pertama ini
+    mendefinisikan beberapa variabel untuk mengakses Penyedia Kamus Pengguna:
+</p>
+<pre class="prettyprint">
+
+// A "projection" defines the columns that will be returned for each row
+String[] mProjection =
+{
+    UserDictionary.Words._ID,    // Contract class constant for the _ID column name
+    UserDictionary.Words.WORD,   // Contract class constant for the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant for the locale column name
+};
+
+// Defines a string to contain the selection clause
+String mSelectionClause = null;
+
+// Initializes an array to contain selection arguments
+String[] mSelectionArgs = {""};
+
+</pre>
+<p>
+    Cuplikan berikutnya menampilkan cara menggunakan
+    {@link android.content.ContentResolver#query ContentResolver.query()}, dengan menggunakan Penyedia Kamus Pengguna
+    sebagai contoh. Query klien penyedia serupa dengan query SQL, dan berisi satu 
+    set kolom yang akan dihasilkan, satu set kriteria pemilihan, dan urutan sortir.
+</p>
+<p>
+    Set kolom yang harus dikembalikan query disebut dengan <strong>proyeksi</strong>
+    (variabel <code>mProjection</code>).
+</p>
+<p>
+    Ekspresi yang menetapkan baris yang harus diambil dipecah menjadi klausa pemilihan dan
+    argumen pemilihan. Klausa pemilihan adalah kombinasi ekspresi logis dan boolean,
+    nama kolom, dan nilai (variabel <code>mSelectionClause</code>). Jika Anda menetapkan 
+    parameter <code>?</code> yang bisa diganti, sebagai ganti nilai, metode query akan mengambil nilai 
+    dari larik argumen pemilihan (variabel <code>mSelectionArgs</code>).
+</p>
+<p>
+    Dalam cuplikan berikutnya, jika pengguna tidak memasukkan sebuah kata, klausa pemilihan akan diatur ke
+    <code>null</code>, dan query menghasilkan semua kata dalam penyedia. Jika pengguna memasukkan
+    sebuah kata, klausa pemilihan akan diatur ke <code>UserDictionary.Words.WORD + " = ?"</code> dan
+    elemen pertama larik argumen pemilihan diatur ke kata yang dimasukkan pengguna.
+</p>
+<pre class="prettyprint">
+/*
+ * This defines a one-element String array to contain the selection argument.
+ */
+String[] mSelectionArgs = {""};
+
+// Gets a word from the UI
+mSearchString = mSearchWord.getText().toString();
+
+// Remember to insert code here to check for invalid or malicious input.
+
+// If the word is the empty string, gets everything
+if (TextUtils.isEmpty(mSearchString)) {
+    // Setting the selection clause to null will return all words
+    mSelectionClause = null;
+    mSelectionArgs[0] = "";
+
+} else {
+    // Constructs a selection clause that matches the word that the user entered.
+    mSelectionClause = UserDictionary.Words.WORD + " = ?";
+
+    // Moves the user's input string to the selection arguments.
+    mSelectionArgs[0] = mSearchString;
+
+}
+
+// Does a query against the table and returns a Cursor object
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,  // The content URI of the words table
+    mProjection,                       // The columns to return for each row
+    mSelectionClause                   // Either null, or the word the user entered
+    mSelectionArgs,                    // Either empty, or the string the user entered
+    mSortOrder);                       // The sort order for the returned rows
+
+// Some providers return null if an error occurs, others throw an exception
+if (null == mCursor) {
+    /*
+     * Insert code here to handle the error. Be sure not to use the cursor! You may want to
+     * call android.util.Log.e() to log this error.
+     *
+     */
+// If the Cursor is empty, the provider found no matches
+} else if (mCursor.getCount() &lt; 1) {
+
+    /*
+     * Insert code here to notify the user that the search was unsuccessful. This isn't necessarily
+     * an error. You may want to offer the user the option to insert a new row, or re-type the
+     * search term.
+     */
+
+} else {
+    // Insert code here to do something with the results
+
+}
+</pre>
+<p>
+    Query ini analog dengan pernyataan SQL:
+</p>
+<pre>
+SELECT _ID, word, locale FROM words WHERE word = &lt;userinput&gt; ORDER BY word ASC;
+</pre>
+<p>
+    Dalam pernyataan SQL ini, nama kolom yang sesungguhnya digunakan sebagai ganti konstanta kelas kontrak.
+</p>
+<h4 id="Injection">Melindungi dari input merusak</h4>
+<p>
+    Jika data dikelola oleh penyedia konten berada dalam database SQL, memasukkan data tak dipercaya eksternal
+    ke dalam pernyataan SQL mentah bisa menyebabkan injeksi SQL.
+</p>
+<p>
+    Perhatikan klausa pemilihan ini:
+</p>
+<pre>
+// Constructs a selection clause by concatenating the user's input to the column name
+String mSelectionClause =  "var = " + mUserInput;
+</pre>
+<p>
+    Jika melakukannya, Anda akan membuat pengguna menyambungkan SQL merusak ke pernyataan SQL Anda.
+    Misalnya, pengguna bisa memasukkan "nothing; DROP TABLE *;"  untuk <code>mUserInput</code>, yang
+    akan menghasilkan klausa pemilihan <code>var = nothing; DROP TABLE *;</code>. Karena
+    klausa pemilihan diperlakukan sebagai pernyataan SQL, hal ini bisa menyebabkan penyedia itu menghapus semua
+    tabel dalam database SQLite yang mendasarinya (kecuali penyedia disiapkan untuk menangkap upaya
+    <a href="http://en.wikipedia.org/wiki/SQL_injection">injeksi SQL</a>).
+</p>
+<p>
+    Untuk menghindari masalah ini, gunakan klausa pemilihan yang menggunakan <code>?</code> sebagai
+    parameter yang bisa diganti dan larik argumen pemilihan yang terpisah. Bila Anda melakukannya, input pengguna
+    akan dibatasi secara langsung pada query agar tidak ditafsirkan sebagai bagian dari pernyataan SQL.
+    Karena tidak diperlakukan sebagai SQL, input pengguna tidak bisa menyuntikkan SQL merusak. Sebagai ganti menggunakan
+    penyambungan untuk menyertakan input pengguna, gunakan klausa pemilihan ini:
+</p>
+<pre>
+// Constructs a selection clause with a replaceable parameter
+String mSelectionClause =  "var = ?";
+</pre>
+<p>
+    Buat larik argumen pemilihan seperti ini:
+</p>
+<pre>
+// Defines an array to contain the selection arguments
+String[] selectionArgs = {""};
+</pre>
+<p>
+    Masukkan nilai dalam larik argumen pemilihan seperti ini:
+</p>
+<pre>
+// Sets the selection argument to the user's input
+selectionArgs[0] = mUserInput;
+</pre>
+<p>
+    Sebuah klausa pemilihan yang menggunakan <code>?</code> sebagai parameter yang bisa diganti dan sebuah larik 
+    argumen pemilihan adalah cara yang lebih disukai untuk menyebutkan pemilihan, sekalipun penyedia tidak
+    dibuat berdasarkan database SQL.
+</p>
+<!-- Displaying the results -->
+<h3 id="DisplayResults">Menampilkan hasil query</h3>
+<p>
+    Metode klien {@link android.content.ContentResolver#query ContentResolver.query()} selalu 
+    menghasilkan {@link android.database.Cursor} berisi kolom-kolom yang ditetapkan oleh 
+    proyeksi query untuk baris yang cocok dengan kriteria pemilihan query. Objek
+    {@link android.database.Cursor} menyediakan akses baca acak ke baris dan kolom yang 
+    dimuatnya. Dengan metode {@link android.database.Cursor}, Anda bisa mengulang baris-baris dalam 
+    hasil, menentukan tipe data tiap kolom, mengambil data dari kolom, dan memeriksa
+    properti lain dari hasil. Beberapa implementasi {@link android.database.Cursor} 
+    akan memperbarui objek secara otomatis bila data penyedia berubah, atau memicu metode dalam objek pengamat 
+    bila {@link android.database.Cursor} berubah, atau keduanya.
+</p>
+<p class="note">
+    <strong>Catatan:</strong> Penyedia bisa membatasi akses ke kolom berdasarkan sifat
+    objek yang membuat query. Misalnya, Penyedia Kontak membatasi akses untuk beberapa kolom pada
+    adaptor sinkronisasi, sehingga tidak akan mengembalikannya ke aktivitas atau layanan.
+</p>
+<p>
+    Jika tidak ada baris yang cocok dengan kriteria pemilihan, penyedia
+    akan mengembalikan objek {@link android.database.Cursor} dengan
+    {@link android.database.Cursor#getCount Cursor.getCount()} adalah 0 (kursor kosong).
+</p>
+<p>
+    Jika terjadi kesalahan internal, hasil query akan bergantung pada penyedia tertentu. Penyedia bisa
+    memilih untuk menghasilkan <code>null</code>, atau melontarkan {@link java.lang.Exception}.
+</p>
+<p>
+    Karena {@link android.database.Cursor} adalah "daftar" baris, cara yang cocok untuk menampilkan
+    konten {@link android.database.Cursor} adalah mengaitkannya dengan {@link android.widget.ListView}
+    melalui {@link android.widget.SimpleCursorAdapter}.
+</p>
+<p>
+    Cuplikan berikut melanjutkan kode dari cuplikan sebelumnya. Cuplikan ini membuat
+    objek {@link android.widget.SimpleCursorAdapter} berisi {@link android.database.Cursor}
+    yang diambil oleh query, dan mengatur objek ini menjadi adaptor bagi
+    {@link android.widget.ListView}:
+</p>
+<pre class="prettyprint">
+// Defines a list of columns to retrieve from the Cursor and load into an output row
+String[] mWordListColumns =
+{
+    UserDictionary.Words.WORD,   // Contract class constant containing the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant containing the locale column name
+};
+
+// Defines a list of View IDs that will receive the Cursor columns for each row
+int[] mWordListItems = { R.id.dictWord, R.id.locale};
+
+// Creates a new SimpleCursorAdapter
+mCursorAdapter = new SimpleCursorAdapter(
+    getApplicationContext(),               // The application's Context object
+    R.layout.wordlistrow,                  // A layout in XML for one row in the ListView
+    mCursor,                               // The result from the query
+    mWordListColumns,                      // A string array of column names in the cursor
+    mWordListItems,                        // An integer array of view IDs in the row layout
+    0);                                    // Flags (usually none are needed)
+
+// Sets the adapter for the ListView
+mWordList.setAdapter(mCursorAdapter);
+</pre>
+<p class="note">
+    <strong>Catatan:</strong> Untuk mendukung {@link android.widget.ListView} dengan
+    {@link android.database.Cursor}, kursor harus berisi kolom bernama <code>_ID</code>.
+    Karena itu, query yang ditampilkan sebelumnya mengambil kolom <code>_ID</code> untuk
+    tabel "words", walaupun {@link android.widget.ListView} tidak menampilkannya.
+    Pembatasan ini juga menjelaskan mengapa sebagian besar penyedia memiliki kolom <code>_ID</code> untuk masing-masing
+    tabelnya.
+</p>
+
+        <!-- Getting data from query results -->
+<h3 id="GettingResults">Mendapatkan data dari hasil query</h3>
+<p>
+    Daripada sekadar menampilkan hasil query, Anda bisa menggunakannya untuk tugas-tugas lain. Misalnya,
+    Anda bisa mengambil ejaan dari kamus pengguna kemudian mencarinya dalam
+    penyedia lain. Caranya, ulangi baris-baris dalam {@link android.database.Cursor}:
+</p>
+<pre class="prettyprint">
+
+// Determine the column index of the column named "word"
+int index = mCursor.getColumnIndex(UserDictionary.Words.WORD);
+
+/*
+ * Only executes if the cursor is valid. The User Dictionary Provider returns null if
+ * an internal error occurs. Other providers may throw an Exception instead of returning null.
+ */
+
+if (mCursor != null) {
+    /*
+     * Moves to the next row in the cursor. Before the first movement in the cursor, the
+     * "row pointer" is -1, and if you try to retrieve data at that position you will get an
+     * exception.
+     */
+    while (mCursor.moveToNext()) {
+
+        // Gets the value from the column.
+        newWord = mCursor.getString(index);
+
+        // Insert code here to process the retrieved word.
+
+        ...
+
+        // end of while loop
+    }
+} else {
+
+    // Insert code here to report an error if the cursor is null or the provider threw an exception.
+}
+</pre>
+<p>
+    Implementasi {@link android.database.Cursor} berisi beberapa metode "get" untuk
+    mengambil berbagai tipe data dari objek. Misalnya, cuplikan sebelumnya
+    menggunakan {@link android.database.Cursor#getString getString()}. Implementasi juga memiliki
+    metode {@link android.database.Cursor#getType getType()} yang menghasilkan nilai yang menunjukkan
+    tipe data kolom.
+</p>
+
+
+    <!-- Requesting permissions -->
+<h2 id="Permissions">Izin Penyedia Konten</h2>
+<p>
+    Aplikasi penyedia bisa menetapkan izin yang harus dimiliki aplikasi lain untuk
+    mengakses data penyedia. Izin ini akan memastikan bahwa pengguna mengetahui data
+    yang coba diakses oleh aplikasi. Berdasarkan ketentuan penyedia, aplikasi lain
+    meminta izin yang diperlukannya untuk mengakses penyedia. Pengguna akhir akan melihat
+    izin yang diminta saat menginstal aplikasi.
+</p>
+<p>
+    Jika aplikasi penyedia tidak menetapkan izin apa pun, maka aplikasi lain tidak memiliki
+    akses ke data penyedia. Akan tetapi, komponen-komponen dalam aplikasi penyedia selalu memiliki
+    akses penuh untuk baca dan tulis, izin apa pun yang ditetapkan.
+</p>
+<p>
+    Seperti disebutkan sebelumnya, Penyedia Kamus Pengguna mensyaratkan izin
+    <code>android.permission.READ_USER_DICTIONARY</code> untuk mengambil data darinya.
+    Penyedia memiliki izin <code>android.permission.WRITE_USER_DICTIONARY</code>
+    yang terpisah untuk menyisipkan, memperbarui, atau menghapus data.
+</p>
+<p>
+    Untuk mendapatkan izin yang diperlukan untuk mengakses penyedia, aplikasi memintanya dengan elemen
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+    dalam file manifesnya. Bila Android Package Manager memasang aplikasi, pengguna 
+    harus menyetujui semua izin yang diminta aplikasi. Jika pengguna menyetujui semuanya, 
+    Package Manager akan melanjutkan instalasi; jika pengguna tidak menyetujui, Package Manager
+    akan membatalkan instalasi.
+</p>
+<p>
+    Elemen
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 
+    berikut meminta akses baca ke Penyedia Kamus Pengguna:
+</p>
+<pre>
+    &lt;uses-permission android:name="android.permission.READ_USER_DICTIONARY"&gt;
+</pre>
+<p>
+    Dampak izin pada akses penyedia dijelaskan secara lebih detail dalam panduan
+    <a href="{@docRoot}guide/topics/security/security.html">Keamanan dan Izin</a>.
+</p>
+
+
+<!-- Inserting, Updating, and Deleting Data -->
+<h2 id="Modifications">Menyisipkan, Memperbarui, dan Menghapus Data</h2>
+<p>
+    Lewat cara yang sama dengan cara mengambil data dari penyedia, Anda juga menggunakan interaksi antara
+    klien penyedia dan {@link android.content.ContentProvider} penyedia untuk memodifikasi data.
+    Anda memanggil metode {@link android.content.ContentResolver} dengan argumen yang diteruskan ke
+    metode {@link android.content.ContentProvider} yang sesuai. Penyedia dan klien penyedia
+    menangani secara otomatis keamanan dan komunikasi antar-proses.
+</p>
+<h3 id="Inserting">Menyisipkan data</h3>
+<p>
+    Untuk menyisipkan data ke penyedia, Anda memanggil metode
+    {@link android.content.ContentResolver#insert ContentResolver.insert()}.
+ Metode ini menyisipkan sebuah baris baru ke penyedia itu dan menghasilkan URI konten untuk baris itu.
+    Cuplikan ini menampilkan cara menyisipkan sebuah kata baru ke Penyedia Kamus Pengguna:
+</p>
+<pre class="prettyprint">
+// Defines a new Uri object that receives the result of the insertion
+Uri mNewUri;
+
+...
+
+// Defines an object to contain the new values to insert
+ContentValues mNewValues = new ContentValues();
+
+/*
+ * Sets the values of each column and inserts the word. The arguments to the "put"
+ * method are "column name" and "value"
+ */
+mNewValues.put(UserDictionary.Words.APP_ID, "example.user");
+mNewValues.put(UserDictionary.Words.LOCALE, "en_US");
+mNewValues.put(UserDictionary.Words.WORD, "insert");
+mNewValues.put(UserDictionary.Words.FREQUENCY, "100");
+
+mNewUri = getContentResolver().insert(
+    UserDictionary.Word.CONTENT_URI,   // the user dictionary content URI
+    mNewValues                          // the values to insert
+);
+</pre>
+<p>
+    Data untuk baris baru masuk ke dalam satu objek {@link android.content.ContentValues}, yang
+    serupa bentuknya dengan kursor satu-baris. Kolom dalam objek ini tidak perlu memiliki
+    tipe data yang sama, dan jika Anda tidak ingin menetapkan nilai sama sekali, Anda bisa mengatur kolom
+    ke <code>null</code> dengan menggunakan {@link android.content.ContentValues#putNull ContentValues.putNull()}.
+</p>
+<p>
+    Cuplikan ini tidak menambahkan kolom <code>_ID</code>, karena kolom ini dipelihara
+    secara otomatis. Penyedia menetapkan sebuah nilai unik <code>_ID</code> ke setiap baris yang
+    ditambahkan. Penyedia biasanya menggunakan nilai ini sebagai kunci utama tabel.
+</p>
+<p>
+    URI konten yang dihasilkan dalam <code>newUri</code> akan mengidentifikasi baris yang baru ditambahkan, dengan
+    format berikut:
+</p>
+<pre>
+content://user_dictionary/words/&lt;id_value&gt;
+</pre>
+<p>
+    <code>&lt;id_value&gt;</code> adalah konten <code>_ID</code> untuk baris baru.
+    Kebanyakan penyedia bisa mendeteksi bentuk URI konten ini secara otomatis kemudian melakukan
+    operasi yang diminta pada baris tersebut.
+</p>
+<p>
+    Untuk mendapatkan nilai <code>_ID</code> dari {@link android.net.Uri} yang dihasilkan, panggil
+    {@link android.content.ContentUris#parseId ContentUris.parseId()}.
+</p>
+<h3 id="Updating">Memperbarui data</h3>
+<p>
+    Untuk memperbarui sebuah baris, gunakan objek {@link android.content.ContentValues} dengan
+    nilai-nilai yang diperbarui, persis seperti yang Anda lakukan pada penyisipan, dan kriteria pemilihan persis seperti yang Anda lakukan pada query.
+    Metode klien yang Anda gunakan adalah
+    {@link android.content.ContentResolver#update ContentResolver.update()}. Anda hanya perlu menambahkan 
+    nilai-nilai ke objek {@link android.content.ContentValues} untuk kolom yang sedang Anda perbarui. Jika Anda 
+    ingin membersihkan konten kolom, aturlah nilai ke <code>null</code>.
+</p>
+<p>
+    Cuplikan berikut mengubah semua baris yang kolom lokalnya memiliki bahasa "en" ke
+    lokal <code>null</code>. Nilai hasil adalah jumlah baris yang diperbarui:
+</p>
+<pre>
+// Defines an object to contain the updated values
+ContentValues mUpdateValues = new ContentValues();
+
+// Defines selection criteria for the rows you want to update
+String mSelectionClause = UserDictionary.Words.LOCALE +  "LIKE ?";
+String[] mSelectionArgs = {"en_%"};
+
+// Defines a variable to contain the number of updated rows
+int mRowsUpdated = 0;
+
+...
+
+/*
+ * Sets the updated value and updates the selected words.
+ */
+mUpdateValues.putNull(UserDictionary.Words.LOCALE);
+
+mRowsUpdated = getContentResolver().update(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mUpdateValues                       // the columns to update
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    Anda juga harus membersihkan input pengguna bila memanggil
+    {@link android.content.ContentResolver#update ContentResolver.update()}. Untuk mengetahui selengkapnya tentang 
+    hal ini, bacalah bagian <a href="#Injection">Melindungi dari input merusak</a>.
+</p>
+<h3 id="Deleting">Menghapus data</h3>
+<p>
+    Menghapus baris serupa dengan mengambil baris data: Anda menetapkan kriteria pemilihan untuk baris
+    yang ingin Anda hapus dan metode klien akan menghasilkan jumlah baris yang dihapus.
+    Cuplikan berikut menghapus baris yang appid-nya sama dengan "user". Metode menghasilkan
+    jumlah baris yang dihapus.
+</p>
+<pre>
+
+// Defines selection criteria for the rows you want to delete
+String mSelectionClause = UserDictionary.Words.APP_ID + " LIKE ?";
+String[] mSelectionArgs = {"user"};
+
+// Defines a variable to contain the number of rows deleted
+int mRowsDeleted = 0;
+
+...
+
+// Deletes the words that match the selection criteria
+mRowsDeleted = getContentResolver().delete(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    Anda juga harus membersihkan input pengguna bila memanggil
+    {@link android.content.ContentResolver#delete ContentResolver.delete()}. Untuk mengetahui selengkapnya tentang 
+    hal ini, bacalah bagian <a href="#Injection">Melindungi dari input merusak</a>.
+</p>
+<!-- Provider Data Types -->
+<h2 id="DataTypes">Tipe Data Penyedia</h2>
+<p>
+    Penyedia konten bisa menawarkan berbagai tipe data. Penyedia Kamus Pengguna hanya menawarkan
+    teks, namun penyedia juga bisa menawarkan format berikut:
+</p>
+    <ul>
+        <li>
+            integer
+        </li>
+        <li>
+            long integer (long)
+        </li>
+        <li>
+            floating point
+        </li>
+        <li>
+            long floating point (double)
+        </li>
+    </ul>
+<p>
+    Tipe data lain yang sering digunakan penyedia adalah Binary Large OBject (BLOB) yang diimplementasikan sebagai
+    larik byte 64 KB. Anda bisa melihat tipe data yang tersedia dengan memperhatikan metode "get" 
+    kelas {@link android.database.Cursor}.
+</p>
+<p>
+    Tipe data tiap kolom dalam penyedia biasanya tercantum dalam dokumentasinya.
+    Tipe data untuk Penyedia Kamus Pengguna tercantum dalam dokumentasi acuan
+    untuk kelas kontraknya {@link android.provider.UserDictionary.Words} (kelas kontrak
+    dijelaskan di bagian <a href="#ContractClasses">Kelas-kelas Kontrak</a>).
+    Anda juga bisa menentukan tipe data dengan memanggil {@link android.database.Cursor#getType
+    Cursor.getType()}.
+</p>
+<p>
+    Penyedia juga memelihara informasi tipe data MIME untuk tiap URI konten yang didefinisikannya. Anda bisa
+    menggunakan informasi tipe MIME untuk mengetahui apakah aplikasi Anda bisa menangani data yang
+    disediakan penyedia, atau memilih tipe penanganan berdasarkan tipe MIME. Anda biasanya memerlukan
+    tipe MIME saat menggunakan penyedia yang berisi
+    struktur atau file data yang kompleks. Misalnya, tabel {@link android.provider.ContactsContract.Data}
+    dalam Penyedia Kontak menggunakan tipe MIME untuk memberi label tipe data kontak yang disimpan di tiap
+    baris. Untuk mendapatkan tipe MIME yang sesuai dengan URI konten, panggil
+    {@link android.content.ContentResolver#getType ContentResolver.getType()}.
+</p>
+<p>
+    Bagian <a href="#MIMETypeReference">Acuan Tipe MIME</a> menerangkan 
+    sintaks tipe MIME baik yang standar maupun custom.
+</p>
+
+
+<!-- Alternative Forms of Provider Access -->
+<h2 id="AltForms">Bentuk-Bentuk Alternatif Akses Penyedia</h2>
+<p>
+    Tiga bentuk alternatif akses penyedia adalah penting dalam pengembangan aplikasi:
+</p>
+<ul>
+    <li>
+        <a href="#Batch">Akses batch</a>: Anda bisa membuat sebuah batch panggilan akses dengan metode-metode dalam
+        kelas {@link android.content.ContentProviderOperation}, kemudian menerapkannya dengan
+        {@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()}.
+    </li>
+    <li>
+        Query asinkron: Anda harus melakukan query dalam thread terpisah. Satu cara melakukannya adalah
+        menggunakan objek {@link android.content.CursorLoader}. Contoh-contoh dalam panduan
+        <a href="{@docRoot}guide/components/loaders.html">Loader</a> memperagakan
+        cara melakukannya.
+    </li>
+    <li>
+        <a href="#Intents">Akses data melalui intent</a>: Walaupun tidak bisa mengirim intent
+        ke penyedia secara langsung, Anda bisa mengirim intent ke aplikasi penyedia, yang
+        biasanya paling lengkap dibekali untuk memodifikasi data penyedia.
+    </li>
+</ul>
+<p>
+    Akses batch dan modifikasi melalui intent dijelaskan dalam bagian-bagian berikut.
+</p>
+<h3 id="Batch">Akses batch</h3>
+<p>
+    Akses batch ke penyedia berguna untuk menyisipkan baris dalam jumlah besar, atau menyisipkan
+    baris ke dalam beberapa tabel dalam panggilan metode yang sama, atau biasanya melakukan satu set
+    operasi lintas batas proses sebagai transaksi (operasi atomik).
+</p>
+<p>
+    Untuk mengakses penyedia dalam "mode batch",
+    buat satu larik objek {@link android.content.ContentProviderOperation}, kemudian
+    kirim larik itu ke penyedia konten dengan
+    {@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()}. Anda meneruskan 
+    <em>otoritas</em> penyedia konten ke metode ini, daripada URI konten tertentu. 
+    Ini memungkinkan tiap objek {@link android.content.ContentProviderOperation} dalam larik untuk bekerja 
+    terhadap tabel yang berbeda. Panggilan ke {@link android.content.ContentResolver#applyBatch
+    ContentResolver.applyBatch()} menghasilkan satu larik hasil.
+</p>
+<p>
+    Keterangan kelas kontrak {@link android.provider.ContactsContract.RawContacts}
+    menyertakan cuplikan kode yang memperagakan penyisipan batch. Contoh aplikasi
+    <a href="{@docRoot}resources/samples/ContactManager/index.html">Contacts Manager</a>
+    berisi contoh akses batch dalam file sumber <code>ContactAdder.java</code>-nya
+.
+</p>
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Menampilkan data dengan aplikasi pembantu</h2>
+<p>
+    Jika aplikasi Anda <em>memang</em> memiliki izin akses, Anda masih mungkin perlu menggunakan
+    intent untuk menampilkan data dalam aplikasi lain. Misalnya, aplikasi Kalender menerima
+    intent {@link android.content.Intent#ACTION_VIEW}, yang menampilkan tanggal atau kejadian tertentu.
+    Hal ini memungkinkan Anda menampilkan informasi kalender tanpa harus membuat UI sendiri.
+    Untuk mengetahui selengkapnya tentang fitur ini, lihat panduan
+    <a href="{@docRoot}guide/topics/providers/calendar-provider.html">Penyedia Kalender</a>.
+</p>
+<p>
+    Aplikasi yang Anda kirimi intent tidak harus aplikasi
+    yang terkait dengan penyedia. Misalnya, Anda bisa mengambil satu kontak dari
+    Penyedia Kontak, kemudian mengirim intent {@link android.content.Intent#ACTION_VIEW}
+    berisi URI konten untuk gambar kontak itu ke penampil gambar.
+</p>
+</div>
+</div>
+<h3 id="Intents">Akses data melalui intent</h3>
+<p>
+    Intent bisa menyediakan akses tidak langsung ke penyedia konten. Anda memperbolehkan pengguna mengakses
+    data dalam penyedia sekalipun aplikasi Anda tidak memiliki izin akses, baik dengan
+    mendapatkan intent yang dihasilkan aplikasi yang memiliki izin, atau dengan mengaktifkan
+    aplikasi yang memiliki izin dan membiarkan pengguna melakukan pekerjaan di dalamnya.
+</p>
+<h4>Mendapatkan akses dengan izin sementara</h4>
+<p>
+    Anda bisa mengakses data dalam penyedia konten, sekalipun tidak memiliki
+    izin akses yang sesuai, dengan mengirimkan intent ke aplikasi yang memang memiliki izin dan
+    menerima hasil berupa intent berisi izin "URI".
+    Inilah izin untuk URI konten tertentu yang berlaku hingga aktivitas yang menerima
+    izin selesai. Aplikasi yang memiliki izin tetap akan memberikan
+    izin sementara dengan mengatur flag dalam intent yang dihasilkan:
+</p>
+<ul>
+    <li>
+        <strong>Izin baca:</strong>
+        {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}
+    </li>
+    <li>
+        <strong>Izin tulis:</strong>
+        {@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION}
+    </li>
+</ul>
+<p class="note">
+    <strong>Catatan:</strong> Flag ini tidak memberikan akses baca atau tulis umum ke penyedia
+    yang otoritasnya dimuat dalam URI konten. Aksesnya hanya untuk URI itu sendiri.
+</p>
+<p>
+    Penyedia mendefinisikan izin URI untuk URI konten dalam manifesnya, dengan menggunakan atribut
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">android:grantUriPermission</a></code>
+    dari elemen 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+,   serta elemen anak
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+    dari elemen
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>.
+ Mekanisme izin URI dijelaskan secara lebih detail dalam panduan
+    <a href="{@docRoot}guide/topics/security/security.html">Keamanan dan Izin</a>,
+    di bagian "Izin URI".
+</p>
+<p>
+    Misalnya, Anda bisa mengambil data untuk satu kontak di Penyedia Kontak, sekalipun tidak
+    memiliki izin {@link android.Manifest.permission#READ_CONTACTS}. Anda mungkin ingin melakukan
+    ini dalam aplikasi yang mengirim kartu ucapan elektronik ke seorang kenalan pada hari ulang tahunnya. Sebagai ganti
+    meminta {@link android.Manifest.permission#READ_CONTACTS}, yang memberi Anda akses ke semua
+    kontak pengguna dan semua informasinya, Anda lebih baik membiarkan pengguna mengontrol
+    kontak-kontak yang akan digunakan oleh aplikasi Anda. Caranya, gunakan proses berikut:
+</p>
+<ol>
+    <li>
+        Aplikasi Anda akan mengirim intent berisi tindakan
+        {@link android.content.Intent#ACTION_PICK} dan tipe MIME "contacts"
+        {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE}, dengan menggunakan
+        metode {@link android.app.Activity#startActivityForResult
+        startActivityForResult()}.
+    </li>
+    <li>
+        Karena intent ini cocok dengan filter intent untuk
+        aktivitas "pemilihan" aplikasi People, aktivitas akan muncul ke latar depan.
+    </li>
+    <li>
+        Dalam aktivitas pemilihan, pengguna memilih sebuah
+        kontak untuk diperbarui. Bila ini terjadi, aktivitas pemilihan akan memanggil
+        {@link android.app.Activity#setResult setResult(resultcode, intent)}
+        untuk membuat intent yang akan diberikan kembali ke aplikasi Anda. Intent itu berisi URI konten
+        kontak yang dipilih pengguna, dan flag "extras"
+        {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}. Semua flag ini memberikan
+        izin URI ke aplikasi Anda untuk membaca data kontak yang ditunjuk oleh
+        URI konten. Aktivitas pemilihan kemudian memanggil {@link android.app.Activity#finish()} untuk
+        mengembalikan kontrol ke aplikasi Anda.
+    </li>
+    <li>
+        Aktivitas Anda akan kembali ke latar depan, dan sistem memanggil metode
+        {@link android.app.Activity#onActivityResult onActivityResult()}
+        aktivitas Anda. Metode ini menerima intent yang dihasilkan oleh aktivitas pemilihan dalam
+        aplikasi People.
+    </li>
+    <li>
+        Dengan URI konten dari intent yang dihasilkan, Anda bisa membaca data kontak
+        dari Penyedia Kontak, sekalipun Anda tidak meminta izin akses baca tetap
+        ke penyedia dalam manifes Anda. Anda kemudian bisa mendapatkan informasi hari ulang tahun si kontak
+        atau alamat emailnya, kemudian mengirim kartu ucapan elektronik.
+    </li>
+</ol>
+<h4>Menggunakan aplikasi lain</h4>
+<p>
+    Satu cara mudah agar pengguna bisa memodifikasi data yang izin aksesnya tidak Anda miliki adalah
+    mengaktifkan aplikasi yang memiliki izin dan membiarkan pengguna melakukan pekerjaannya di sana.
+</p>
+<p>
+    Misalnya, aplikasi Kalender menerima
+    intent {@link android.content.Intent#ACTION_INSERT}, yang memungkinkan Anda mengaktifkan
+    UI penyisipan aplikasi itu. Anda bisa meneruskan data "extras" dalam intent ini, yang
+    digunakan aplikasi untuk mengisi dahulu UI-nya. Karena kejadian berulang memiliki sintaks yang rumit,
+    cara yang lebih disukai untuk menyisipkan kejadian ke dalam Penyedia Kalender adalah mengaktifkan aplikasi Kalender dengan
+    {@link android.content.Intent#ACTION_INSERT}, kemudian membiarkan pengguna menyisipkan kejadian di sana.
+</p>
+<!-- Contract Classes -->
+<h2 id="ContractClasses">Kelas-kelas Kontrak</h2>
+<p>
+    Kelas kontrak mendefinisikan konstanta yang membantu aplikasi menggunakan URI konten, nama
+    kolom, tindakan intent, dan fitur lain pada penyedia konten. Kelas kontrak tidak
+    disertakan secara otomatis bersama penyedia; pengembang penyedia harus mendefinisikannya kemudian
+    membuatnya tersedia bagi pengembang lain. Banyak penyedia yang disertakan pada platform Android
+    memiliki kelas kontrak yang sesuai dalam {@link android.provider} paketnya.
+</p>
+<p>
+    Misalnya, Penyedia Kamus Pengguna memiliki kelas kontrak
+    {@link android.provider.UserDictionary} yang berisi URI konten dan konstanta nama kolom. URI
+    konten untuk tabel "words" didefinisikan dalam konstanta
+    {@link android.provider.UserDictionary.Words#CONTENT_URI UserDictionary.Words.CONTENT_URI}.
+    Kelas {@link android.provider.UserDictionary.Words} juga berisi konstanta nama kolom,
+    yang digunakan dalam cuplikan contoh pada panduan ini. Misalnya, sebuah proyeksi query bisa
+    didefinisikan sebagai:
+</p>
+<pre>
+String[] mProjection =
+{
+    UserDictionary.Words._ID,
+    UserDictionary.Words.WORD,
+    UserDictionary.Words.LOCALE
+};
+</pre>
+<p>
+    Kelas kontrak lain adalah {@link android.provider.ContactsContract} untuk Penyedia Kontak.
+    Dokumentasi acuan untuk kelas ini menyertakan contoh cuplikan kode. Salah satu
+    subkelasnya, {@link android.provider.ContactsContract.Intents.Insert}, adalah
+    kelas kontrak yang berisi konstanta untuk intent dan data intent.
+</p>
+
+
+<!-- MIME Type Reference -->
+<h2 id="MIMETypeReference">Acuan Tipe MIME</h2>
+<p>
+    Penyedia konten bisa menghasilkan tipe media MIME standar, atau string tipe MIME custom, atau keduanya.
+</p>
+<p>
+    Tipe MIME memiliki format
+</p>
+<pre>
+<em>type</em>/<em>subtype</em>
+</pre>
+<p>
+    Misalnya, tipe MIME <code>text/html</code> yang dikenal luas memiliki tipe <code>text</code> dan
+    subtipe <code>html</code>. Jika penyedia menghasilkan tipe ini untuk sebuah URI, artinya
+    query dengan URI itu akan menghasilkan teks berisi tag HTML.
+</p>
+<p>
+    String tipe MIME custom, yang juga disebut dengan tipe MIME "khusus vendor", memiliki nilai-nilai
+    <em>tipe</em> dan <em>subtipe</em> yang lebih kompleks. Nilai <em>tipe</em> selalu
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>
+</pre>
+<p>
+    untuk beberapa baris, atau
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>
+</pre>
+<p>
+    untuk satu baris.
+</p>
+<p>
+    <em>Subtipe</em> adalah khusus penyedia. Penyedia bawaan Android biasanya memiliki subtipe
+    sederhana. Misalnya, bila aplikasi Contacts membuat satu baris untuk nomor telepon,
+    aplikasi akan mengatur tipe MIME berikut di baris itu:
+</p>
+<pre>
+vnd.android.cursor.item/phone_v2
+</pre>
+<p>
+    Perhatikan bahwa nilai subtipe adalah sekadar <code>phone_v2</code>.
+</p>
+<p>
+    Pengembang penyedia lain bisa membuat pola subtipe sendiri berdasarkan
+    otoritas dan nama-nama tabel penyedia. Misalnya, perhatikan penyedia yang berisi jadwal kereta api.
+    Otoritas penyedia adalah <code>com.example.trains</code>, dan berisi tabel-tabel
+    Line1, Line2, dan Line3. Untuk merespons URI konten
+</p>
+<p>
+<pre>
+content://com.example.trains/Line1
+</pre>
+<p>
+    untuk tabel Line1, penyedia menghasilkan tipe MIME
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.example.line1
+</pre>
+<p>
+     Untuk merespons URI konten
+</p>
+<pre>
+content://com.example.trains/Line2/5
+</pre>
+<p>
+    untuk baris 5 di tabel Line2, penyedia menghasilkan tipe MIME
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.example.line2
+</pre>
+<p>
+    Kebanyakan penyedia konten mendefinisikan konstanta kelas kontrak untuk tipe MIME yang digunakannya. Kelas kontrak 
+    {@link android.provider.ContactsContract.RawContacts} pada Penyedia Kontak
+    misalnya, mendefinisikan konstanta
+    {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE} untuk tipe MIME
+    baris kontak mentah tunggal.
+</p>
+<p>
+    URI konten untuk baris-baris tunggal dijelaskan di bagian
+    <a href="#ContentURIs">URI Konten</a>.
+</p>
diff --git a/docs/html-intl/intl/in/guide/topics/providers/content-provider-creating.jd b/docs/html-intl/intl/in/guide/topics/providers/content-provider-creating.jd
new file mode 100644
index 0000000..fefce70
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/providers/content-provider-creating.jd
@@ -0,0 +1,1214 @@
+page.title=Membuat Penyedia Konten
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<h2>Dalam dokumen ini</h2>
+<ol>
+    <li>
+        <a href="#DataStorage">Mendesain Penyimpanan Data</a>
+    </li>
+    <li>
+        <a href="#ContentURI">Mendesain URI Konten</a>
+    </li>
+    <li>
+        <a href="#ContentProvider">Mengimplementasikan Kelas ContentProvider</a>
+        <ol>
+            <li>
+                <a href="#RequiredAccess">Metode-Metode yang Diperlukan</a>
+            </li>
+            <li>
+                <a href="#Query">Mengimplementasikan metode query()</a>
+            </li>
+            <li>
+                <a href="#Insert">Mengimplementasikan metode insert()</a>
+            </li>
+            <li>
+                <a href="#Delete">Mengimplementasikan metode delete()</a>
+            </li>
+            <li>
+                <a href="#Update">Mengimplementasikan metode update()</a>
+            </li>
+            <li>
+                <a href="#OnCreate">Mengimplementasikan metode onCreate()</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#MIMETypes">Mengimplementasikan Tipe MIME Penyedia Konten</a>
+        <ol>
+            <li>
+                <a href="#TableMIMETypes">Tipe MIME untuk tabel</a>
+            </li>
+            <li>
+                <a href="#FileMIMETypes">Tipe MIME untuk file</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClass">Mengimplementasikan Kelas Kontrak</a>
+    </li>
+    <li>
+        <a href="#Permissions">Mengimplementasikan Izin Penyedia Konten</a>
+    </li>
+    <li>
+        <a href="#ProviderElement">Elemen &lt;provider&gt;</a>
+    </li>
+    <li>
+        <a href="#Intents">Intent dan Akses Data</a>
+    </li>
+</ol>
+<h2>Kelas-kelas utama</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+<h2>Contoh-Contoh Terkait</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/NotePad/index.html">
+                Aplikasi contoh Note Pad
+            </a>
+        </li>
+    </ol>
+<h2>Lihat juga</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+            Dasar-Dasar Penyedia Konten</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+            Penyedia Kalender</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+
+<p>
+    Penyedia konten mengelola akses ke repository data pusat. Anda mengimplementasikan
+    penyedia sebagai satu atau beberapa kelas dalam aplikasi Android, bersama elemen-elemen dalam
+    file manifes. Salah satu kelas Anda mengimplementasikan subkelas
+    {@link android.content.ContentProvider}, yang merupakan antarmuka antara penyedia Anda dan
+    aplikasi lain. Walaupun penyedia konten dimaksudkan untuk menyediakan data bagi
+    aplikasi lain, Anda tentu saja bisa memiliki aktivitas dalam aplikasi yang memungkinkan pengguna
+    melakukan query dan memodifikasi data yang dikelola oleh penyedia Anda.
+</p>
+<p>
+    Bagian selebihnya dalam topik ini adalah daftar langkah-langkah dasar untuk membangun penyedia konten dan daftar
+    API yang akan digunakan.
+</p>
+
+
+<!-- Before You Start Building -->
+<h2 id="BeforeYouStart">Sebelum Anda Mulai Membangun</h2>
+<p>
+    Sebelum Anda mulai membangun penyedia, lakukanlah hal-hal berikut:
+</p>
+<ol>
+    <li>
+        <strong>Putuskan apakah Anda memerlukan penyedia konten</strong>. Anda perlu membangun sebuah
+        penyedia konten jika ingin menyediakan salah satu atau beberapa dari fitur berikut:
+        <ul>
+            <li>Anda ingin menawarkan data atau file yang kompleks ke aplikasi lain.</li>
+            <li>Anda ingin memungkinkan pengguna menyalin data yang kompleks dari aplikasi Anda ke dalam aplikasi lain.</li>
+            <li>Anda ingin menyediakan saran pencarian custom dengan menggunakan kerangka kerja pencarian.</li>
+        </ul>
+    <p>
+        Anda <em>tidak</em> mengharuskan penyedia untuk menggunakan database SQLite jika hanya digunakan dalam
+        aplikasi sendiri.
+    </p>
+    </li>
+    <li>
+        Jika Anda belum siap melakukannya, bacalah topik
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Dasar-Dasar Penyedia Konten</a> untuk mengetahui selengkapnya tentang penyedia.
+    </li>
+</ol>
+<p>
+    Berikutnya, ikuti langkah-langkah ini untuk membangun penyedia:
+</p>
+<ol>
+    <li>
+        Desain penyimpanan mentah untuk data Anda. Penyedia konten menawarkan data dengan dua cara:
+        <dl>
+            <dt>
+                Data file
+            </dt>
+            <dd>
+                Data yang biasanya masuk ke dalam file, misalnya
+                foto, audio, atau video. Simpan file dalam ruang privat
+                aplikasi Anda. Untuk merespons permintaan file dari aplikasi lain,
+                penyedia Anda bisa menawarkan handle ke file tersebut.
+            </dd>
+            <dt>
+                Data "terstruktur"
+            </dt>
+            <dd>
+                Data yang biasanya masuk ke dalam database, larik, atau struktur serupa.
+                Simpan data dalam bentuk yang kompatibel dengan tabel berisi baris dan kolom. Baris
+                mewakili entitas, misalnya satu orang atau satu barang inventori. Kolom mewakili
+                beberapa data untuk entitas itu, misalnya nama orang atau harga barang. Cara umum untuk
+                menyimpan tipe data ini adalah dalam database SQLite, namun Anda bisa menggunakan tipe
+                penyimpanan apa saja yang persisten. Untuk mengetahui selengkapnya tentang tipe penyimpanan yang tersedia di
+                sistem Android, lihat bagian <a href="#DataStorage">
+                Mendesain Penyimpanan Data</a>.
+            </dd>
+        </dl>
+    </li>
+    <li>
+        Definisikan sebuah implementasi konkret kelas {@link android.content.ContentProvider} dan
+        metode yang diperlukannya. Kelas ini adalah antarmuka antara data Anda dan bagian selebihnya pada
+        sistem Android. Untuk informasi selengkapnya tentang kelas ini, lihat bagian
+        <a href="#ContentProvider">Mengimplementasikan Kelas ContentProvider</a>.
+    </li>
+    <li>
+        Definisikan string otoritas, semua URI isinya, dan nama-nama kolom penyedia. Jika Anda ingin
+        penyedia aplikasi menangani intent, definisikan juga semua tindakan intent, data ekstra,
+        dan flag. Definisikan juga izin yang akan Anda syaratkan terhadap aplikasi yang ingin
+        mengakses data Anda. Anda harus mempertimbangkan pendefinisian semua nilai ini sebagai konstanta di
+        kelas kontrak terpisah; nantinya, Anda bisa mengekspos kelas ini kepada pengembang lain. Untuk
+        informasi selengkapnya tentang URI konten, lihat
+        bagian <a href="#ContentURI">Mendesain URI Konten</a>.
+        Untuk informasi selengkapnya tentang intent, lihat
+        bagian <a href="#Intents">Intent dan Akses Data</a>.
+    </li>
+    <li>
+        Tambahkan bagian opsional lainnya, seperti data contoh atau implementasi
+        {@link android.content.AbstractThreadedSyncAdapter} yang bisa menyinkronkan data antara
+        penyedia dan data berbasis cloud.
+    </li>
+</ol>
+
+
+<!-- Designing Data Storage -->
+<h2 id="DataStorage">Mendesain Penyimpanan Data</h2>
+<p>
+    Penyedia konten adalah antarmuka ke data yang disimpan dalam format terstruktur. Sebelum membuat
+    antarmuka, Anda harus memutuskan cara menyimpan data. Anda bisa menyimpan data dalam bentuk apa saja yang Anda
+    sukai, kemudian mendesain antarmuka untuk membaca dan menulis data yang diperlukan.
+</p>
+<p>
+    Berikut ini adalah beberapa teknologi penyimpanan data yang tersedia di Android:
+</p>
+<ul>
+    <li>
+        Sistem Android menyertakan API database SQLite yang digunakan penyedia Android sendiri
+        untuk menyimpan data berorientasi tabel. Kelas
+        {@link android.database.sqlite.SQLiteOpenHelper} membantu Anda membuat database, dan kelas
+        {@link android.database.sqlite.SQLiteDatabase} adalah kelas dasar untuk mengakses
+        database.
+        <p>
+            Ingatlah bahwa Anda tidak harus menggunakan database untuk mengimplementasikan repository. Penyedia
+            muncul secara eksternal sebagai satu set tabel, yang serupa dengan sebuah database relasional, namun ini
+            bukan persyaratan untuk implementasi internal penyedia.
+        </p>
+    </li>
+    <li>
+        Untuk menyimpan file data, Android memiliki beragam API berorientasi file.
+        Untuk mengetahui selengkapnya tentang penyimpanan file, bacalah topik
+        <a href="{@docRoot}guide/topics/data/data-storage.html">Penyimpanan Data</a>. Jika Anda sedang
+        mendesain penyedia yang menawarkan data yang terkait dengan media seperti musik atau video, Anda bisa
+        memiliki penyedia yang mengombinasikan data tabel dan file.
+    </li>
+    <li>
+        Untuk bekerja dengan data berbasis jaringan, gunakan kelas-kelas dalam {@link java.net} dan
+        {@link android.net}. Anda juga bisa menyinkronkan data berbasis jaringan dengan penyimpanan data lokal
+        seperti database, kemudian menawarkan data sebagai tabel atau file.
+        Aplikasi contoh <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+        Sample Sync Adapter</a> memperagakan tipe sinkronisasi ini.
+    </li>
+</ul>
+<h3 id="DataDesign">
+    Pertimbangan desain data
+</h3>
+<p>
+    Berikut ini adalah beberapa tip untuk mendesain struktur data penyedia:
+</p>
+<ul>
+    <li>
+        Data tabel harus selalu memiliki kolom "kunci utama" yang dipelihara oleh penyedia
+        sebagai nilai numerik unik untuk setiap baris. Anda bisa menggunakan nilai ini untuk menautkan baris ke
+        baris yang terkait dalam tabel lain (dengan menggunakannya sebagai "kunci asing"). Walaupun Anda bisa menggunakan nama
+        apa saja untuk kolom ini, menggunakan {@link android.provider.BaseColumns#_ID BaseColumns._ID} adalah
+        pilihan terbaik, karena menautkan hasil query penyedia dengan
+        {@link android.widget.ListView} mensyaratkan bahwa salah satu kolom yang diambil memiliki nama
+        <code>_ID</code>.
+    </li>
+    <li>
+        Jika Anda ingin untuk menyediakan gambar bitmap atau potongan data berorientasi file lainnya yang berukuran sangat besar, simpanlah
+        data dalam sebuah file kemudian sediakan secara tidak langsung sebagai ganti menyimpannya secara langsung dalam
+        tabel. Jika melakukannya, Anda perlu memberi tahu pengguna penyedia Anda bahwa mereka perlu menggunakan metode file
+        {@link android.content.ContentResolver} untuk mengakses data.
+    </li>
+    <li>
+        Gunakan tipe data Binary Large OBject (BLOB) untuk menyimpan data yang bervariasi ukurannya atau memiliki
+        struktur yang beragam. Misalnya, Anda bisa menggunakan sebuah kolom BLOB untuk menyimpan
+        <a href="http://code.google.com/p/protobuf">buffer protokol</a> atau
+        <a href="http://www.json.org">struktur JSON</a>.
+        <p>
+            Anda juga bisa menggunakan BLOB untuk mengimplementasikan tabel yang <em>tidak bergantung skema</em>. Dalam
+            tipe tabel ini, Anda mendefinisikan kolom kunci utama, kolom tipe MIME, dan satu atau beberapa
+            kolom generik sebagai BLOB. Arti dari data dalam kolom-kolom BLOB ditunjukkan
+            oleh nilai dalam kolom tipe MIME. Cara ini memungkinkan Anda menyimpan berbagai tipe baris dalam
+            tabel yang sama. Tabel "data"
+            {@link android.provider.ContactsContract.Data} Penyedia Kontak adalah contoh tabel yang tidak bergantung skema
+            tersebut.
+        </p>
+    </li>
+</ul>
+<!-- Designing Content URIs -->
+<h2 id="ContentURI">Mendesain URI Konten</h2>
+<p>
+    <strong>URI konten</strong> adalah URI yang mengidentifikasi data dalam penyedia. URI Konten
+    berisi nama simbolis seluruh penyedia (<strong>otoritas</strong>nya) dan sebuah
+    nama yang menunjuk ke tabel atau file (<strong>path</strong>). Bagian id opsional menunjuk ke
+    satu baris dalam tabel. Setiap metode akses data
+    {@link android.content.ContentProvider} memiliki sebuah URI konten sebagai argumen; hal ini memungkinkan Anda
+    menentukan tabel, baris, atau file yang akan diakses.
+</p>
+<p>
+    Dasar-dasar URI konten dijelaskan dalam topik
+    <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+    Dasar-Dasar Penyedia Konten</a>.
+</p>
+<h3>Mendesain otoritas</h3>
+<p>
+    Penyedia biasanya memiliki otoritas tunggal, yang berfungsi sebagai nama internal Android-nya. Untuk
+    menghindari konflik dengan penyedia lain, Anda harus menggunakan kepemilikan domain internet (secara terbalik)
+    sebagai basis otoritas penyedia Anda. Karena saran ini juga berlaku untuk
+    nama-nama paket Android, Anda bisa mendefinisikan otoritas penyedia sebagai perluasan dari nama
+    paket yang berisi penyedia. Misalnya, jika nama paket Android Anda adalah
+    <code>com.example.&lt;appname&gt;</code>, Anda harus memberikan penyedia Anda
+    otoritas <code>com.example.&lt;appname&gt;.provider</code>.
+</p>
+<h3>Mendesain struktur path</h3>
+<p>
+    Pengembang biasanya membuat URI konten dari otoritas dengan menambahkan path yang menunjuk ke
+    masing-masing tabel. Misalnya, jika Anda memiliki dua tabel <em>table1</em> dan
+    <em>table2</em>, Anda mengombinasikan otoritas dari contoh sebelumnya untuk menghasilkan
+    URI konten
+    <code>com.example.&lt;appname&gt;.provider/table1</code> dan
+    <code>com.example.&lt;appname&gt;.provider/table2</code>. Path tidak
+    dibatasi pada segmen tunggal, dan tidak harus berupa tabel untuk masing-masing tingkat path.
+</p>
+<h3>Menangani ID URI konten</h3>
+<p>
+    Berdasarkan standar, penyedia menawarkan akses ke satu baris dalam tabel dengan menerima URI konten
+    dengan sebuah nilai ID untuk baris itu di akhir URI. Juga berdasarkan standar, penyedia mencocokkan
+    nilai ID dengan kolom <code>_ID</code> tabel, dan melakukan akses yang diminta terhadap baris
+    yang cocok.
+</p>
+<p>
+    Standar ini memudahkan pola desain umum untuk aplikasi yang mengakses penyedia. Aplikasi
+    melakukan query terhadap penyedia dan menampilkan {@link android.database.Cursor} yang dihasilkan
+    dalam {@link android.widget.ListView} dengan menggunakan {@link android.widget.CursorAdapter}.
+    Definisi {@link android.widget.CursorAdapter} mengharuskan salah satu kolom dalam
+    {@link android.database.Cursor} berupa <code>_ID</code>
+</p>
+<p>
+    Pengguna kemudian mengambil salah satu baris yang ditampilkan dari UI untuk menemukan atau memodifikasi
+    data. Aplikasi mengambil baris yang sesuai dari {@link android.database.Cursor} yang mendukung
+    {@link android.widget.ListView}, mengambil nilai <code>_ID</code> untuk baris ini, menambahkannya ke
+    URI konten, dan mengirim permintaan akses ke penyedia. Penyedia nanti bisa melakukan
+    query atau modifikasi terhadap baris yang persis diambil pengguna.
+</p>
+<h3>Pola URI konten</h3>
+<p>
+    Untuk membantu Anda memilih tindakan yang diambil bagi URI konten yang masuk, API penyedia menyertakan
+    kelas praktis {@link android.content.UriMatcher}, yang memetakan "pola-pola" URI konten ke
+    nilai-nilai integer. Anda bisa menggunakan nilai-nilai integer dalam pernyataan <code>switch</code> yang
+    memilih tindakan yang diinginkan untuk URI konten atau URI yang cocok dengan pola tertentu.
+</p>
+<p>
+    Pola URI konten mencocokkan dengan URI konten menggunakan karakter wildcard:
+</p>
+    <ul>
+        <li>
+            <strong><code>*</code>:</strong> Mencocokkan string yang memiliki karakter yang sah dengan panjang berapa saja.
+        </li>
+        <li>
+            <strong><code>#</code>:</strong> Mencocokkan string karakter numerik dengan panjang berapa saja.
+        </li>
+    </ul>
+<p>
+    Sebagai contoh desain dan pemrograman penanganan URI konten, perhatikan penyedia dengan
+    otoritas <code>com.example.app.provider</code> yang mengenali URI konten berikut
+    yang menunjuk ke tabel-tabel:
+</p>
+<ul>
+    <li>
+        <code>content://com.example.app.provider/table1</code>: Tabel bernama <code>table1</code>.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset1</code>: Tabel bernama
+        <code>dataset1</code>.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset2</code>: Tabel bernama
+        <code>dataset2</code>.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table3</code>: Tabel bernama <code>table3</code>.
+    </li>
+</ul>
+<p>
+    Penyedia juga mengenali URI konten ini jika baris ID ditambahkan ke URI,
+    misalnya <code>content://com.example.app.provider/table3/1</code> untuk baris yang diidentifikasi oleh
+    <code>1</code> dalam <code>table3</code>.
+</p>
+<p>
+    Pola-pola URI konten berikut akan menjadi mungkin:
+</p>
+<dl>
+    <dt>
+        <code>content://com.example.app.provider/*</code>
+    </dt>
+    <dd>
+        Mencocokkan URI konten di penyedia.
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table2/*</code>:
+    </dt>
+    <dd>
+        Mencocokkan URI konten untuk tabel-tabel <code>dataset1</code>
+        dan <code>dataset2</code>, namun tidak mencocokkan URI konten untuk <code>table1</code> atau
+        <code>table3</code>.
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table3/#</code>: Mencocokkan URI konten
+        untuk satu baris di <code>table3</code>, misalnya
+        <code>content://com.example.app.provider/table3/6</code> untuk baris yang diidentifikasi oleh
+        <code>6</code>.
+    </dt>
+</dl>
+<p>
+    Cuplikan kode berikut menunjukkan cara kerja metode di {@link android.content.UriMatcher}.
+    Kode ini menangani URI seluruh tabel secara berbeda dengan URI untuk
+    satu baris, menggunakan pola URI konten
+    <code>content://&lt;authority&gt;/&lt;path&gt;</code> untuk tabel, dan
+    <code>content://&lt;authority&gt;/&lt;path&gt;/&lt;id&gt;</code> untuk satu baris.
+</p>
+<p>
+    Metode {@link android.content.UriMatcher#addURI(String, String, int) addURI()} memetakan
+    otoritas dan path ke nilai integer. Metode {@link android.content.UriMatcher#match(Uri)
+    match()} menghasilkan nilai integer URI. Pernyataan <code>switch</code>
+    memilih antara melakukan query seluruh tabel dan melakukan query satu record:
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider {
+...
+    // Creates a UriMatcher object.
+    private static final UriMatcher sUriMatcher;
+...
+    /*
+     * The calls to addURI() go here, for all of the content URI patterns that the provider
+     * should recognize. For this snippet, only the calls for table 3 are shown.
+     */
+...
+    /*
+     * Sets the integer value for multiple rows in table 3 to 1. Notice that no wildcard is used
+     * in the path
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3", 1);
+
+    /*
+     * Sets the code for a single row to 2. In this case, the "#" wildcard is
+     * used. "content://com.example.app.provider/table3/3" matches, but
+     * "content://com.example.app.provider/table3 doesn't.
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3/#", 2);
+...
+    // Implements ContentProvider.query()
+    public Cursor query(
+        Uri uri,
+        String[] projection,
+        String selection,
+        String[] selectionArgs,
+        String sortOrder) {
+...
+        /*
+         * Choose the table to query and a sort order based on the code returned for the incoming
+         * URI. Here, too, only the statements for table 3 are shown.
+         */
+        switch (sUriMatcher.match(uri)) {
+
+
+            // If the incoming URI was for all of table3
+            case 1:
+
+                if (TextUtils.isEmpty(sortOrder)) sortOrder = "_ID ASC";
+                break;
+
+            // If the incoming URI was for a single row
+            case 2:
+
+                /*
+                 * Because this URI was for a single row, the _ID value part is
+                 * present. Get the last path segment from the URI; this is the _ID value.
+                 * Then, append the value to the WHERE clause for the query
+                 */
+                selection = selection + "_ID = " uri.getLastPathSegment();
+                break;
+
+            default:
+            ...
+                // If the URI is not recognized, you should do some error handling here.
+        }
+        // call the code to actually do the query
+    }
+</pre>
+<p>
+    Kelas lainnya, {@link android.content.ContentUris}, menyediakan metode praktis untuk menggunakan
+    bagian <code>id</code> URI konten. Kelas-kelas {@link android.net.Uri} dan
+    {@link android.net.Uri.Builder} menyertakan metode praktis untuk mengurai
+    objek {@link android.net.Uri} yang ada dan membuat objek baru.
+</p>
+
+<!-- Implementing the ContentProvider class -->
+<h2 id="ContentProvider">Mengimplementasikan Kelas ContentProvider</h2>
+<p>
+    Instance {@link android.content.ContentProvider} mengelola akses
+    ke satu set data terstruktur dengan menangani permintaan dari aplikasi lain. Semua bentuk
+    akses pada akhirnya akan memanggil {@link android.content.ContentResolver}, yang kemudian memanggil
+    metode konkret {@link android.content.ContentProvider} untuk mendapatkan akses.
+</p>
+<h3 id="RequiredAccess">Metode-metode yang diperlukan</h3>
+<p>
+    Kelas abstrak {@link android.content.ContentProvider} mendefinisikan enam metode abstrak yang
+    harus Anda implementasikan sebagai bagian dari subkelas konkret Anda sendiri. Semua metode ini kecuali
+    {@link android.content.ContentProvider#onCreate() onCreate()} dipanggil oleh aplikasi klien
+    yang berupaya mengakses penyedia konten Anda:
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+        query()}
+    </dt>
+    <dd>
+        Mengambil data dari penyedia Anda. Menggunakan argumen untuk memilih tabel yang akan
+        di-query, baris dan kolom yang akan dihasilkan, dan urutan sortir hasilnya.
+        Menghasilkan data berupa objek {@link android.database.Cursor}.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}
+    </dt>
+    <dd>
+        Menyisipkan baris baru ke dalam penyedia Anda. Menggunakan argumen untuk memilih
+        tabel tujuan dan mendapatkan nilai-nilai kolom yang akan digunakan. Menghasilkan URI konten untuk
+        baris yang baru disisipkan.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+        update()}
+    </dt>
+    <dd>
+        Memperbarui baris yang ada di penyedia Anda. Menggunakan argumen untuk memilih tabel dan baris
+        yang akan diperbarui dan mendapatkan nilai-nilai kolom yang diperbarui. Menghasilkan jumlah baris yang diperbarui.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+    </dt>
+    <dd>
+        Menghapus baris dari penyedia Anda. Menggunakan argumen untuk memilih tabel dan baris yang akan
+        dihapus. Menghasilkan jumlah baris yang dihapus.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        Menghasilkan tipe MIME yang sesuai dengan URI konten. Metode ini dijelaskan lebih detail
+        di bagian <a href="#MIMETypes">Mengimplementasikan Tipe MIME Penyedia Konten</a>.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#onCreate() onCreate()}
+    </dt>
+    <dd>
+        Inisialisasi penyedia Anda. Sistem Android memanggil metode ini segera setelah
+        membuat penyedia Anda. Perhatikan bahwa penyedia Anda tidak dibuat hingga
+        objek {@link android.content.ContentResolver} mencoba mengaksesnya.
+    </dd>
+</dl>
+<p>
+    Perhatikan bahwa metode-metode ini memiliki signature yang sama dengan
+    metode-metode {@link android.content.ContentResolver} yang sama namanya.
+</p>
+<p>
+    Implementasi metode-metode ini harus memperhitungkan hal-hal berikut:
+</p>
+<ul>
+    <li>
+        Semua metode ini kecuali {@link android.content.ContentProvider#onCreate() onCreate()}
+        bisa dipanggil oleh beberapa thread sekaligus, jadi harus thread-safe (aman untuk thread). Untuk mengetahui
+        selengkapnya tentang multi-thread, lihat topik
+        <a href="{@docRoot}guide/components/processes-and-threads.html">
+        Proses dan Thread</a>.
+    </li>
+    <li>
+        Hindari melakukan operasi yang lama dalam {@link android.content.ContentProvider#onCreate()
+        onCreate()}. Tunda inisialisasi tugas hingga benar-benar diperlukan.
+        Bagian <a href="#OnCreate">Mengimplementasikan metode onCreate()</a>
+        membahas hal ini secara lebih detail.
+    </li>
+    <li>
+        Walaupun harus mengimplementasikan metode-metode ini, kode Anda tidak harus melakukan apa pun selain
+        tipe data yang diharapkan. Misalnya, Anda mungkin ingin mencegah aplikasi lain
+        menyisipkan data ke dalam beberapa tabel. Caranya, Anda bisa mengabaikan panggilan ke
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} dan menghasilkan
+        0.
+    </li>
+</ul>
+<h3 id="Query">Mengimplementasikan metode query()</h3>
+<p>
+    Metode
+    {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()} harus menghasilkan objek {@link android.database.Cursor}, atau jika
+    gagal, melontarkan {@link java.lang.Exception}. Jika menggunakan database SQLite sebagai
+    penyimpanan data, Anda bisa mengembalikan{@link android.database.Cursor} yang dikembalikan oleh salah satu metode
+    <code>query()</code> dari kelas {@link android.database.sqlite.SQLiteDatabase}.
+    Jika query tidak mencocokkan baris apa pun, Anda harus mengembalikan instance {@link android.database.Cursor}
+    yang metode {@link android.database.Cursor#getCount()}-nya mengembalikan 0.
+    Anda harus mengembalikan <code>null</code> hanya jika terjadi kesalahan internal selama proses query.
+</p>
+<p>
+    Jika Anda tidak menggunakan database SQLite sebagai penyimpanan data, gunakan salah satu subkelas konkret
+    {@link android.database.Cursor}. Misalnya, kelas {@link android.database.MatrixCursor}
+    mengimplementasikan kursor dengan masing-masing baris berupa larik {@link java.lang.Object}. Dengan kelas ini,
+    gunakan {@link android.database.MatrixCursor#addRow(Object[]) addRow()} untuk menambahkan baris baru.
+</p>
+<p>
+    Ingatlah bahwa sistem Android harus mampu mengomunikasikan {@link java.lang.Exception}
+    lintas batas proses. Android bisa melakukannya untuk eksepsi berikut yang mungkin berguna
+    dalam menangani kesalahan query:
+</p>
+<ul>
+    <li>
+        {@link java.lang.IllegalArgumentException} (Anda bisa saja melontarkannya jika penyedia Anda
+        menerima URI konten yang tidak sah)
+    </li>
+    <li>
+        {@link java.lang.NullPointerException}
+    </li>
+</ul>
+<h3 id="Insert">Mengimplementasikan metode insert()</h3>
+<p>
+    Metode {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} menambahkan satu
+    baris baru ke tabel yang sesuai, dengan menggunakan nilai-nilai dalam argumen {@link android.content.ContentValues}.
+ Jika kolom nama tidak ada dalam argumen {@link android.content.ContentValues}, Anda
+    mungkin perlu menyediakan nilai default untuknya, baik dalam kode penyedia atau dalam skema database
+    Anda.
+</p>
+<p>
+    Metode ini harus mengembalikan URI konten untuk baris baru. Untuk membuatnya, tambahkan nilai
+    <code>_ID</code> baris baru (atau kunci utama lainnya) ke tabel URI konten, dengan menggunakan
+    {@link android.content.ContentUris#withAppendedId(Uri, long) withAppendedId()}.
+</p>
+<h3 id="Delete">Mengimplementasikan metode delete()</h3>
+<p>
+    Metode {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+    tidak harus menghapus baris-baris dari penyimpanan data Anda secara fisik. Jika menggunakan adaptor sinkronisasi
+    bersama penyedia, Anda harus mempertimbangkan penandaan baris yang dihapus
+    dengan flag "delete"; bukan menghilangkan baris itu sepenuhnya. Adaptor sinkronisasi bisa
+    memeriksa baris yang dihapus dan menghilangkannya dari server sebelum menghapusnya dari penyedia.
+</p>
+<h3 id="Update">Mengimplementasikan metode update()</h3>
+<p>
+    Metode {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+    update()} mengambil argumen {@link android.content.ContentValues} yang sama dengan yang digunakan oleh
+    {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}, dan
+    argumen-argumen <code>selection</code> dan <code>selectionArgs</code> yang sama dengan yang digunakan oleh
+    {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} dan
+    {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()}. Hal ini bisa memungkinkan Anda menggunakan kembali kode di antara metode-metode ini.
+</p>
+<h3 id="OnCreate">Mengimplementasikan metode onCreate()</h3>
+<p>
+    Sistem Android memanggil {@link android.content.ContentProvider#onCreate()
+    onCreate()} saat memulai penyedia. Anda harus melakukan tugas-tugas inisialisasi yang berjalan cepat saja
+    dalam metode ini, serta menunda pembuatan database dan pemuatan data hingga penyedia benar-benar
+    menerima permintaan terhadap data. Jika Anda melakukan tugas yang memakan waktu dalam
+    {@link android.content.ContentProvider#onCreate() onCreate()}, Anda akan memperlambat
+    startup penyedia. Pada gilirannya, hal ini akan memperlambat respons dari penyedia terhadap
+    aplikasi lain.
+</p>
+<p>
+    Misalnya, jika menggunakan database SQLite, Anda bisa membuat
+    sebuah objek {@link android.database.sqlite.SQLiteOpenHelper} baru di
+    {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()},
+    kemudian membuat tabel-tabel SQL saat pertama kali membuka database itu. Untuk memperlancar hal ini,
+    saat pertama Anda memanggil {@link android.database.sqlite.SQLiteOpenHelper#getWritableDatabase
+    getWritableDatabase()}, metode ini memanggil metode
+    {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()} secara otomatis.
+</p>
+<p>
+    Dua cuplikan berikut memperagakan interaksi antara
+    {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} dan
+    {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()}. Cuplikan pertama adalah implementasi
+    {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()}:
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider
+
+    /*
+     * Defines a handle to the database helper object. The MainDatabaseHelper class is defined
+     * in a following snippet.
+     */
+    private MainDatabaseHelper mOpenHelper;
+
+    // Defines the database name
+    private static final String DBNAME = "mydb";
+
+    // Holds the database object
+    private SQLiteDatabase db;
+
+    public boolean onCreate() {
+
+        /*
+         * Creates a new helper object. This method always returns quickly.
+         * Notice that the database itself isn't created or opened
+         * until SQLiteOpenHelper.getWritableDatabase is called
+         */
+        mOpenHelper = new MainDatabaseHelper(
+            getContext(),        // the application context
+            DBNAME,              // the name of the database)
+            null,                // uses the default SQLite cursor
+            1                    // the version number
+        );
+
+        return true;
+    }
+
+    ...
+
+    // Implements the provider's insert method
+    public Cursor insert(Uri uri, ContentValues values) {
+        // Insert code here to determine which table to open, handle error-checking, and so forth
+
+        ...
+
+        /*
+         * Gets a writeable database. This will trigger its creation if it doesn't already exist.
+         *
+         */
+        db = mOpenHelper.getWritableDatabase();
+    }
+}
+</pre>
+<p>
+    Cuplikan berikutnya adalah implementasi
+    {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()}, yang menyertakan kelas helper:
+</p>
+<pre class="prettyprint">
+...
+// A string that defines the SQL statement for creating a table
+private static final String SQL_CREATE_MAIN = "CREATE TABLE " +
+    "main " +                       // Table's name
+    "(" +                           // The columns in the table
+    " _ID INTEGER PRIMARY KEY, " +
+    " WORD TEXT"
+    " FREQUENCY INTEGER " +
+    " LOCALE TEXT )";
+...
+/**
+ * Helper class that actually creates and manages the provider's underlying data repository.
+ */
+protected static final class MainDatabaseHelper extends SQLiteOpenHelper {
+
+    /*
+     * Instantiates an open helper for the provider's SQLite data repository
+     * Do not do database creation and upgrade here.
+     */
+    MainDatabaseHelper(Context context) {
+        super(context, DBNAME, null, 1);
+    }
+
+    /*
+     * Creates the data repository. This is called when the provider attempts to open the
+     * repository and SQLite reports that it doesn't exist.
+     */
+    public void onCreate(SQLiteDatabase db) {
+
+        // Creates the main table
+        db.execSQL(SQL_CREATE_MAIN);
+    }
+}
+</pre>
+
+
+<!-- Implementing ContentProvider MIME Types -->
+<h2 id="MIMETypes">Mengimplementasikan Tipe MIME Penyedia Konten</h2>
+<p>
+    Kelas {@link android.content.ContentProvider} memiliki dua metode untuk menghasilkan tipe-tipe MIME:
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        Salah satu metode wajib yang harus Anda implementasikan untuk setiap penyedia.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    </dt>
+    <dd>
+        Sebuah metode yang diharapkan untuk Anda implementasikan jika penyedia Anda menawarkan file.
+    </dd>
+</dl>
+<h3 id="TableMIMETypes">Tipe MIME untuk tabel</h3>
+<p>
+    Metode {@link android.content.ContentProvider#getType(Uri) getType()} mengembalikan
+    {@link java.lang.String} dengan format MIME yang menjelaskan tipe data yang dikembalikan oleh
+    argumen URI konten. Argumen {@link android.net.Uri} bisa berupa pola, bukannya URI tertentu;
+    dalam hal ini, Anda harus mengembalikan tipe data terkait URI konten yang cocok dengan
+    polanya.
+</p>
+<p>
+    Untuk tipe data umum misalnya teks, HTML, atau JPEG,
+    {@link android.content.ContentProvider#getType(Uri) getType()} harus mengembalikan
+    tipe MIME standar untuk data itu. Daftar lengkap tipe standar ini tersedia di situs web
+    <a href="http://www.iana.org/assignments/media-types/index.htm">IANA MIME Media Types</a>.
+
+</p>
+<p>
+    Untuk URI konten yang menunjuk ke baris atau baris-baris data tabel,
+    {@link android.content.ContentProvider#getType(Uri) getType()} harus mengembalikan
+    tipe MIME dalam format MIME khusus vendor Android:
+</p>
+<ul>
+    <li>
+        Bagian tipe: <code>vnd</code>
+    </li>
+    <li>
+        Bagian subtipe:
+        <ul>
+            <li>
+    Jika pola URI adalah untuk satu baris: <code>android.cursor.<strong>item</strong>/</code>
+            </li>
+            <li>
+    Jika pola URI adalah untuk lebih dari satu baris: <code>android.cursor.<strong>dir</strong>/</code>
+            </li>
+        </ul>
+    </li>
+    <li>
+        Bagian khusus penyedia: <code>vnd.&lt;name&gt;</code>.<code>&lt;type&gt;</code>
+        <p>
+            Anda menyediakan <code>&lt;name&gt;</code> dan <code>&lt;type&gt;</code>.
+            Nilai <code>&lt;name&gt;</code> harus unik secara global,
+            dan nilai <code>&lt;type&gt;</code> harus unik bagi pola URI
+            yang sesuai. Pilihan tepat untuk <code>&lt;name&gt;</code> adalah nama perusahaan Anda atau
+            sebagian dari nama paket Android aplikasi Anda. Pilihan tepat untuk
+            <code>&lt;type&gt;</code> adalah string yang mengidentifikasi tabel yang terkait dengan
+            URI.
+        </p>
+
+    </li>
+</ul>
+<p>
+    Misalnya, jika otoritas penyedia adalah
+    <code>com.example.app.provider</code>, dan penyedia mengekspos tabel bernama
+    <code>table1</code>, tipe MIME untuk beberapa baris dalam <code>table1</code> adalah:
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.com.example.provider.table1
+</pre>
+<p>
+    Untuk satu baris <code>table1</code>, tipe MIME adalah:
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.com.example.provider.table1
+</pre>
+<h3 id="FileMIMETypes">Tipe MIME untuk file</h3>
+<p>
+    Jika penyedia Anda menawarkan file, implementasikan
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}.
+    Metode ini menghasilkan larik {@link java.lang.String} tipe MIME untuk file
+    yang bisa dikembalikan penyedia Anda untuk URI konten bersangkutan. Anda harus memfilter tipe MIME yang Anda tawarkan dengan argumen filter
+    tipe MIME, sehingga Anda hanya mengembalikan tipe MIME yang ingin ditangani klien.
+</p>
+<p>
+    Misalnya, perhatikan penyedia yang menawarkan gambar foto sebagai file dalam format <code>.jpg</code>,
+    <code>.png</code>, dan <code>.gif</code>.
+    Jika aplikasi memanggil {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()} dengan string filter <code>image/*</code> (sesuatu yang
+    merupakan "gambar"),
+    maka metode {@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()} harus mengembalikan larik:
+</p>
+<pre>
+{ &quot;image/jpeg&quot;, &quot;image/png&quot;, &quot;image/gif&quot;}
+</pre>
+<p>
+    Jika aplikasi tertarik pada file <code>.jpg</code>, maka aplikasi bisa memanggil
+    {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()} dengan string filter <code>*\/jpeg</code>, dan
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()} harus mengembalikan:
+<pre>
+{&quot;image/jpeg&quot;}
+</pre>
+<p>
+    Jika penyedia Anda tidak menawarkan tipe MIME apa pun yang diminta dalam string filter,
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    harus mengembalikan <code>null</code>.
+</p>
+
+
+<!--  Implementing a Contract Class -->
+<h2 id="ContractClass">Mengimplementasikan Kelas Kontrak</h2>
+<p>
+    Kelas kontrak adalah kelas <code>public final</code> yang berisi definisi konstanta untuk URI, nama kolom, tipe MIME, dan
+metadata lain yang melekat ke penyedia. Kelas
+    membentuk sebuah kontrak antara penyedia dan aplikasi lain dengan memastikan bahwa penyedia
+    bisa diakses dengan benar sekalipun ada perubahan pada nilai URI sesungguhnya, nama kolom,
+    dan seterusnya.
+</p>
+<p>
+    Kelas kontrak juga membantu pengembang karena kelas ini biasanya memiliki nama-nama simbolik untuk konstantanya,
+    sehingga memperkecil kemungkinan pengembang menggunakan nilai yang salah untuk nama kolom atau URI. Karena berupa
+    kelas, kelas ini bisa berisi dokumentasi Javadoc. Lingkungan pengembangan terpadu (IDE) seperti
+    Eclipse secara otomatis bisa melengkapi nama-nama konstanta dari kelas kontrak dan menampilkan Javadoc untuk
+    konstanta.
+</p>
+<p>
+    Pengembang tidak bisa mengakses file kelas milik kelas kontrak dari aplikasi Anda, namun bisa
+    mengompilasinya secara statis ke dalam aplikasi mereka dari file <code>.jar</code> yang Anda sediakan.
+</p>
+<p>
+    Kelas {@link android.provider.ContactsContract} dan kelas-kelas tersarangnya adalah contoh
+    kelas kontrak.
+</p>
+<h2 id="Permissions">Mengimplementasikan Izin Penyedia Konten</h2>
+<p>
+    Izin dan akses untuk semua aspek sistem Android dijelaskan secara detail dalam
+    topik <a href="{@docRoot}guide/topics/security/security.html">Keamanan dan Izin</a>.
+    Topik <a href="{@docRoot}guide/topics/data/data-storage.html">Penyimpanan Data</a> juga
+    menjelaskan keamanan dan izin terkait dengan berbagai tipe penyimpanan.
+    Singkatnya, poin-poin pentingnya adalah:
+</p>
+<ul>
+    <li>
+        Secara default, file data yang disimpan pada penyimpanan internal perangkat bersifat privat bagi
+        aplikasi dan penyedia Anda.
+    </li>
+    <li>
+        Database {@link android.database.sqlite.SQLiteDatabase} yang Anda buat bersifat privat bagi
+        aplikasi dan penyedia Anda.
+    </li>
+    <li>
+        Secara default, file data yang Anda simpan ke penyimpanan eksternal bersifat <em>publik</em> dan
+        <em>bisa dibaca secara global</em>. Anda tidak bisa menggunakan penyedia konten untuk membatasi akses ke file dalam
+        penyimpanan eksternal, karena aplikasi lain bisa menggunakan panggilan API untuk membaca dan menulis ke file tersebut.
+    </li>
+    <li>
+        Panggilan metode untuk membuka atau membuat file atau database SQLite pada
+        penyimpanan internal perangkat Anda berpotensi memberikan akses baca maupun tulis ke semua aplikasi lain. Jika Anda
+        menggunakan file atau database internal sebagai repository penyedia, dan Anda memberinya
+        akses "world-readable" (bisa dibaca secara global) atau "world-writeable" (bisa ditulis secara global), izin yang Anda atur untuk penyedia dalam
+        manifesnya tidak akan melindungi data Anda. Akses default untuk file dan database dalam
+        penyimpanan internal adalah "privat", dan untuk repository penyedia, tidak boleh Anda ubah.
+    </li>
+</ul>
+<p>
+    Jika Anda ingin menggunakan izin penyedia konten untuk mengontrol akses ke data Anda, maka Anda harus
+    menyimpan data Anda dalam file internal, database SQLite, atau "cloud" (misalnya,
+    di server jauh), dan Anda harus membuat file dan database tetap privat bagi aplikasi Anda.
+</p>
+<h3>Mengimplementasikan izin</h3>
+<p>
+    Semua aplikasi bisa membaca dari atau menulis ke penyedia Anda, sekalipun data yang mendasari adalah
+    privat, karena secara default penyedia Anda tidak mengatur izin. Untuk mengubahnya,
+    atur izin untuk penyedia dalam file manifes, dengan menggunakan atribut atau elemen anak
+    dari elemen <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code>. Anda bisa mengatur izin yang berlaku pada seluruh penyedia,
+    atau pada tabel tertentu, atau bahkan pada record tertentu, atau ketiganya.
+</p>
+<p>
+    Anda mendefinisikan izin untuk penyedia dengan satu atau beberapa elemen
+    <code><a href="{@docRoot}guide/topics/manifest/permission-element.html">
+    &lt;permission&gt;</a></code> dalam file manifes. Untuk membuat
+    izin unik bagi penyedia, gunakan scoping (pengaturan lingkup) bergaya Java untuk
+    atribut <code><a href="{@docRoot}guide/topics/manifest/permission-element.html#nm">
+    android:name</a></code>. Misalnya, beri nama izin membaca dengan
+    <code>com.example.app.provider.permission.READ_PROVIDER</code>.
+
+</p>
+<p>
+    Daftar berikut menjelaskan lingkup penyedia izin, mulai dengan
+    izin yang berlaku pada seluruh penyedia kemudian menjadi semakin sempit.
+    Izin yang lebih sempit akan didahulukan daripada izin yang berlingkup lebih luas:
+</p>
+<dl>
+    <dt>
+        Izin baca-tulis tunggal tingkat penyedia
+    </dt>
+    <dd>
+        Suatu izin yang mengontrol akses baca-tulis bagi seluruh penyedia, ditetapkan
+        dengan atribut <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code> dari
+        elemen <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>.
+    </dd>
+    <dt>
+        Izin baca-tulis terpisah tingkat penyedia
+    </dt>
+    <dd>
+        Satu izin baca dan satu izin tulis untuk seluruh penyedia. Anda menetapkan keduanya
+        dengan atribut <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+        android:readPermission</a></code> dan
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+        android:writePermission</a></code> dari elemen
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>. Kedua izin akan didahulukan daripada izin yang diharuskan oleh
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code>.
+    </dd>
+    <dt>
+        Izin tingkat path
+    </dt>
+    <dd>
+        Izin baca, tulis, atau baca/tulis untuk URI konten dalam penyedia Anda. Anda menetapkan
+        tiap URI yang ingin dikontrol dengan elemen anak
+        <code><a href="{@docRoot}guide/topics/manifest/path-permission-element.html">
+        &lt;path-permission&gt;</a></code> dari
+        elemen <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>. Untuk setiap URI konten yang ditetapkan, Anda bisa menetapkan
+        satu izin baca/tulis, satu izin baca, atau satu izin tulis, atau ketiganya. Izin baca dan
+        tulis akan didahulukan daripada izin baca/tulis. Juga,
+        izin tingkat path akan didahulukan daripada izin tingkat penyedia.
+    </dd>
+    <dt>
+        Izin sementara
+    </dt>
+    <dd>
+        Tingkat izin yang memberikan akses sementara ke aplikasi, sekalipun aplikasi itu
+        tidak memiliki izin yang biasanya diminta. Fitur akses
+         sementara mengurangi jumlah izin yang harus diminta aplikasi dalam
+        manifesnya. Bila Anda mengaktifkan izin sementara, satu-satunya aplikasi yang memerlukan
+        izin "permanen" untuk penyedia adalah aplikasi yang mengakses terus-menerus semua
+        data Anda.
+        <p>
+            Perhatikan izin yang Anda perlukan untuk mengimplementasikan penyedia dan aplikasi email, bila Anda
+            ingin memperbolehkan aplikasi penampil gambar dari luar menampilkan lampiran foto dari
+            penyedia Anda. Untuk memberikan akses yang diperlukan kepada penampil gambar tanpa mengharuskan izin,
+            siapkan izin sementara untuk URI konten bagi foto. Desainlah aplikasi email Anda agar
+            bila pengguna ingin menampilkan foto, aplikasi itu akan mengirim intent berisi
+            URI konten foto dan flag izin ke penampil gambar. Penampil gambar nanti bisa
+            melakukan query penyedia email untuk mengambil foto, sekalipun penampil itu tidak
+            memiliki izin baca normal untuk penyedia Anda.
+        </p>
+        <p>
+            Untuk mengaktifkan izin sementara, atur atribut
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> dari
+            elemen <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>, atau tambahkan satu atau beberapa elemen anak
+            <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> ke
+            elemen <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> Anda. Jika menggunakan izin sementara, Anda harus memanggil
+            {@link android.content.Context#revokeUriPermission(Uri, int)
+            Context.revokeUriPermission()} kapan saja Anda menghilangkan dukungan untuk URI konten dari
+            penyedia, dan URI konten dikaitkan dengan izin sementara.
+        </p>
+        <p>
+            Nilai atribut menentukan seberapa banyak penyedia Anda yang dijadikan bisa diakses.
+            Jika atribut diatur ke <code>true</code>, maka sistem akan memberikan
+            izin sementara kepada seluruh penyedia, dengan mengesampingkan izin lain yang diharuskan
+            oleh izin tingkat penyedia atau tingkat path.
+        </p>
+        <p>
+            Jika flag ini diatur ke <code>false</code>, maka Anda harus menambahkan elemen-elemen anak
+            <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> ke
+            elemen <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> Anda. Tiap elemen anak menetapkan URI konten atau
+            URI yang telah diberi akses sementara.
+        </p>
+        <p>
+            Untuk mendelegasikan akses sementara ke sebuah aplikasi, intent harus berisi
+            {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION} atau flag
+            {@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION}, atau keduanya. Keduanya
+            diatur dengan metode {@link android.content.Intent#setFlags(int) setFlags()}.
+        </p>
+        <p>
+            Jika atribut <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> tidak ada, atribut ini diasumsikan sebagai
+            <code>false</code>.
+        </p>
+    </dd>
+</dl>
+
+
+
+<!-- The Provider Element -->
+<h2 id="ProviderElement">Elemen &lt;provider&gt;</h2>
+<p>
+    Seperti halnya komponen {@link android.app.Activity} dan {@link android.app.Service},
+    subkelas {@link android.content.ContentProvider}
+    harus didefinisikan dalam file manifes untuk aplikasinya, dengan menggunakan elemen
+    <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code>. Sistem Android mendapatkan informasi berikut dari
+    elemen:
+<dl>
+    <dt>
+        Otoritas
+        (<a href="{@docRoot}guide/topics/manifest/provider-element.html#auth">{@code
+        android:authorities}</a>)
+    </dt>
+    <dd>
+        Nama-nama simbolik yang mengidentifikasi seluruh penyedia dalam sistem. Atribut
+        ini dijelaskan lebih detail di bagian
+        <a href="#ContentURI">Mendesain URI Konten</a>.
+    </dd>
+    <dt>
+        Nama kelas penyedia
+        (<code>
+<a href="{@docRoot}guide/topics/manifest/provider-element.html#nm">android:name</a>
+        </code>)
+    </dt>
+    <dd>
+        Kelas yang mengimplementasikan {@link android.content.ContentProvider}. Kelas ini
+        dijelaskan lebih detail di bagian
+        <a href="#ContentProvider">Mengimplementasikan Kelas ContentProvider</a>.
+    </dd>
+    <dt>
+        Izin
+    </dt>
+    <dd>
+        Atribut-atribut yang menetapkan izin yang harus dimiliki aplikasi lain untuk mengakses
+        data penyedia:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+                android:grantUriPermssions</a></code>: Flag izin sementara.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+                android:permission</a></code>: Izin baca/tulis tunggal untuk tingkat penyedia.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+                android:readPermission</a></code>: Izin baca untuk tingkat penyedia.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+                android:writePermission</a></code>: Izin tulis untuk tingkat penyedia.
+            </li>
+        </ul>
+        <p>
+            Izin dan atribut-atribut yang sesuai dijelaskan lebih detail
+            di bagian
+            <a href="#Permissions">Mengimplementasikan Izin Penyedia Konten</a>.
+        </p>
+    </dd>
+    <dt>
+        Atribut-atribut startup dan kontrol
+    </dt>
+    <dd>
+        Atribut-atribut ini menentukan cara dan waktu sistem Android memulai penyedia,
+        karakteristik proses penyedia, dan pengaturan runtime lainnya:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#enabled">
+                android:enabled</a></code>: Flag yang memperbolehkan sistem untuk memulai penyedia.
+            </li>
+              <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#exported">
+                android:exported</a></code>: Flag yang memperbolehkan aplikasi lain untuk menggunakan penyedia ini.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#init">
+                android:initOrder</a></code>: Urutan yang digunakan untuk memulai penyedia ini,
+                relatif terhadap penyedia lain dalam proses yang sama.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#multi">
+                android:multiProcess</a></code>: Flag yang memperbolehkan sistem untuk memulai penyedia
+                dalam proses yang sama dengan proses klien pemanggil.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#proc">
+                android:process</a></code>: Nama proses tempat penyedia harus
+                berjalan.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#sync">
+                android:syncable</a></code>: Flag yang menunjukkan bahwa data penyedia harus
+                disinkronkan dengan data di server.
+            </li>
+        </ul>
+        <p>
+            Atribut-atribut ini didokumentasikan dengan lengkap dalam topik panduan pengembang untuk elemen
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>.
+
+        </p>
+    </dd>
+    <dt>
+        Atribut-atribut informatif
+    </dt>
+    <dd>
+        Ikon dan label opsional untuk penyedia:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#icon">
+                android:icon</a></code>: Sumber daya drawable, berisi ikon untuk penyedia.
+                Ikon ini muncul di sebelah label penyedia dalam daftar aplikasi dalam menu
+                <em>Settings</em> &gt; <em>Apps</em> &gt; <em>All</em>.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#label">
+                android:label</a></code>: Label informatif yang menjelaskan penyedia atau
+                datanya, atau keduanya. Label ini muncul dalam daftar aplikasi di 
+                <em>Settings</em> &gt; <em>Apps</em> &gt; <em>All</em>.
+            </li>
+        </ul>
+        <p>
+            Atribut-atribut ini didokumentasikan dengan lengkap dalam topik panduan pengembang untuk elemen
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>.
+        </p>
+    </dd>
+</dl>
+
+<!-- Intent Access -->
+<h2 id="Intents">Intent dan Akses Data</h2>
+<p>
+    Aplikasi bisa mengakses penyedia konten secara tidak langsung dengan sebuah {@link android.content.Intent}.
+    Aplikasi tidak memanggil satu pun dari metode-metode {@link android.content.ContentResolver} atau
+    {@link android.content.ContentProvider}. Sebagai gantinya, aplikasi mengirim intent yang memulai aktivitas,
+    yang sering kali merupakan bagian dari aplikasi penyedia sendiri. Aktivitas tujuan bertugas 
+    mengambil dan menampilkan data dalam UI-nya. Bergantung pada tindakan dalam intent,
+    aktivitas tujuan juga bisa meminta pengguna untuk membuat modifikasi pada data penyedia.
+    Intent juga bisa berisi data "ekstra" yang menampilkan aktivitas tujuan
+    dalam UI; pengguna nanti memiliki pilihan untuk mengubah data ini sebelum menggunakannya untuk mengubah
+    data di penyedia.
+</p>
+<p>
+
+</p>
+<p>
+    Anda mungkin perlu menggunakan akses intent guna membantu memastikan integritas data. Penyedia Anda mungkin bergantung
+    pada data yang disisipkan, diperbarui, dan dihapusnya sesuai dengan logika bisnis yang didefinisikan dengan ketat. Jika
+    demikian halnya, memperbolehkan aplikasi lain mengubah data Anda secara langsung bisa menyebabkan
+    data yang tidak sah. Jika Anda ingin pengembang menggunakan akses intent, pastikan untuk mendokumentasikannya secara saksama.
+    Jelaskan kepada mereka alasan akses intent yang menggunakan UI aplikasi Anda sendiri adalah lebih baik daripada mencoba
+    memodifikasi data dengan kode mereka.
+</p>
+<p>
+    Menangani sebuah intent masuk yang ingin memodifikasi data penyedia Anda tidak berbeda dengan
+    menangani intent lainnya. Anda bisa mengetahui selengkapnya tentang penggunaan intent dengan membaca topik
+    <a href="{@docRoot}guide/components/intents-filters.html">Intent dan Filter Intent</a>.
+</p>
diff --git a/docs/html-intl/intl/in/guide/topics/providers/content-providers.jd b/docs/html-intl/intl/in/guide/topics/providers/content-providers.jd
new file mode 100644
index 0000000..fc6f12b
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/providers/content-providers.jd
@@ -0,0 +1,108 @@
+page.title=Penyedia konten
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<!-- In this document -->
+<h2>Topik</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Dasar-Dasar Penyedia Konten</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+        Membuat Penyedia Konten</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/calendar-provider.html">Penyedia Kalender</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/contacts-provider.html">Penyedia Kontak</a>
+    </li>
+</ol>
+
+    <!-- Related Samples -->
+<h2>Contoh-Contoh Terkait</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/ContactManager/index.html">
+            Aplikasi Contact Manager</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        "Kursor (Orang)"
+        </a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        "Kursor (Telepon)"</a>
+        </li>
+        <li>
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+            Contoh Adaptor Sinkronisasi</a>
+        </li>
+    </ol>
+</div>
+</div>
+<p>
+    Penyedia konten mengelola akses ke set data terstruktur. Penyedia ini membungkus
+ data, dan menyediakan mekanisme untuk mendefinisikan keamanan data. Penyedia konten adalah antarmuka
+ standar yang menghubungkan data dalam satu proses dengan kode yang berjalan dalam proses lain.
+</p>
+<p>
+    Bila Anda ingin mengakses data di penyedia konten, Anda menggunakan
+ {@link android.content.ContentResolver} objek dalam
+ {@link android.content.Context} aplikasi untuk berkomunikasi dengan penyedia sebagai klien.
+    Objek {@link android.content.ContentResolver} berkomunikasi dengan objek penyedia, yakni
+ instance kelas yang mengimplementasikan {@link android.content.ContentProvider}. Objek penyedia
+ menerima permintaan data dari klien, melakukan tindakan yang diminta, dan
+ mengembalikan hasilnya.
+</p>
+<p>
+    Anda tidak perlu mengembangkan penyedia sendiri jika tidak bermaksud untuk berbagi data dengan
+ aplikasi lain. Akan tetapi, Anda memerlukan penyedia buatan sendiri untuk menyediakan saran pencarian custom
+ dalam aplikasi Anda sendiri. Anda juga memerlukan penyedia sendiri jika ingin menyalin dan
+menempelkan data atau file yang kompleks dari aplikasi Anda ke aplikasi lain.
+</p>
+<p>
+    Android sendiri berisi penyedia konten yang mengelola data seperti informasi audio, video, gambar, dan
+ kontak pribadi. Anda bisa melihat sebagian informasi ini tercantum dalam dokumentasi
+ acuan untuk paket 
+ <code><a href="{@docRoot}reference/android/provider/package-summary.html">android.provider</a>
+    </code>. Dengan beberapa batasan, semua penyedia ini bisa diakses oleh aplikasi Android
+ apa saja.
+</p><p>
+    Topik-topik berikut menjelaskan penyedia konten secara lebih detail:
+</p>
+<dl>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Dasar-Dasar Penyedia Konten</a></strong>
+    </dt>
+    <dd>
+        Cara mengakses data di penyedia konten bila data disusun dalam tabel.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+        Membuat Penyedia Konten</a></strong>
+    </dt>
+    <dd>
+        Cara membuat penyedia konten sendiri.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+        Penyedia Kalender</a></strong>
+    </dt>
+    <dd>
+        Cara mengakses Penyedia Kalender yang merupakan bagian dari platform Android.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/contacts-provider.html">
+        Penyedia Kontak</a></strong>
+    </dt>
+    <dd>
+        Cara mengakses Penyedia Kontak yang merupakan bagian dari platform Android.
+    </dd>
+</dl>
diff --git a/docs/html-intl/intl/in/guide/topics/providers/document-provider.jd b/docs/html-intl/intl/in/guide/topics/providers/document-provider.jd
new file mode 100644
index 0000000..c066e85
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/providers/document-provider.jd
@@ -0,0 +1,916 @@
+page.title=Storage Access Framework
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Dalam dokumen ini
+ <a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
+        <span class="more">tampilkan maksimal</span>
+        <span class="less" style="display:none">tampilkan minimal</span></a></h2>
+<ol id="toc44" class="hide-nested">
+    <li>
+        <a href="#overview">Ikhtisar</a>
+    </li>
+    <li>
+        <a href="#flow">Arus Kontrol</a>
+    </li>
+    <li>
+        <a href="#client">Menulis Aplikasi Klien</a>
+        <ol>
+        <li><a href="#search">Mencari dokumen</a></li>
+        <li><a href="#process">Memproses hasil</a></li>
+        <li><a href="#metadata">Memeriksa metadata dokumen</a></li>
+        <li><a href="#open">Membuka dokumen</a></li>
+        <li><a href="#create">Membuat dokumen baru</a></li>
+        <li><a href="#delete">Menghapus dokumen</a></li>
+        <li><a href="#edit">Mengedit dokumen</a></li>
+        <li><a href="#permissions">Mempertahankan izin</a></li>
+        </ol>
+    </li>
+    <li><a href="#custom">Menulis Penyedia Dokumen Custom</a>
+        <ol>
+        <li><a href="#manifest">Manifes</a></li>
+        <li><a href="#contract">Kontrak</a></li>
+        <li><a href="#subclass">Subkelas DocumentsProvider</a></li>
+        <li><a href="#security">Keamanan</a></li>
+        </ol>
+    </li>
+
+</ol>
+<h2>Kelas-kelas utama</h2>
+<ol>
+    <li>{@link android.provider.DocumentsProvider}</li>
+    <li>{@link android.provider.DocumentsContract}</li>
+</ol>
+
+<h2>Video</h2>
+
+<ol>
+    <li><a href="http://www.youtube.com/watch?v=zxHVeXbK1P4">
+DevBytes: Android 4.4 Storage Access Framework: Penyedia</a></li>
+     <li><a href="http://www.youtube.com/watch?v=UFj9AEz0DHQ">
+DevBytes: Android 4.4 Storage Access Framework: Klien</a></li>
+</ol>
+
+
+<h2>Contoh Kode</h2>
+
+<ol>
+    <li><a href="{@docRoot}samples/StorageProvider/index.html">
+Penyedia Penyimpanan</a></li>
+     <li><a href="{@docRoot}samples/StorageClient/index.html">
+Klien Penyimpanan</a></li>
+</ol>
+
+<h2>Lihat Juga</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Dasar-Dasar Penyedia Konten
+        </a>
+    </li>
+</ol>
+
+</div>
+</div>
+
+
+<p>Android 4.4 (API level 19) memperkenalkan Storage Access Framework (SAF, Kerangka Kerja Akses Penyimpanan). SAF
+ memudahkan pengguna menyusuri dan membuka dokumen, gambar, dan file lainnya
+di semua penyedia penyimpanan dokumen pilihannya. UI standar yang mudah digunakan
+memungkinkan pengguna menyusuri file dan mengakses yang terbaru dengan cara konsisten di antara berbagai aplikasi dan penyedia.</p>
+
+<p>Layanan penyimpanan cloud atau lokal bisa dilibatkan dalam ekosistem ini dengan mengimplementasikan sebuah
+{@link android.provider.DocumentsProvider} yang membungkus layanannya. Aplikasi klien
+yang memerlukan akses ke dokumen sebuah penyedia bisa berintegrasi dengan SAF cukup dengan beberapa
+baris kode.</p>
+
+<p>SAF terdiri dari berikut ini:</p>
+
+<ul>
+<li><strong>Penyedia dokumen</strong>&mdash;Penyedia konten yang memungkinkan
+layanan penyimpanan (seperti Google Drive) untuk menampilkan file yang dikelolanya. Penyedia dokumen
+diimplementasikan sebagai subkelas dari kelas {@link android.provider.DocumentsProvider}.
+Skema penyedia dokumen berdasarkan hierarki file biasa,
+walaupun cara penyedia dokumen Anda secara fisik menyimpan data adalah terserah Anda.
+Platform Android terdiri dari beberapa penyedia dokumen bawaan, seperti
+Downloads, Images, dan Videos.</li>
+
+<li><strong>Aplikasi klien</strong>&mdash;Aplikasi custom yang memanggil intent 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} dan/atau
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT} dan menerima
+file yang dihasilkan penyedia dokumen.</li>
+
+<li><strong>Picker</strong>&mdash;UI sistem yang memungkinkan pengguna mengakses dokumen dari semua
+penyedia dokumen yang memenuhi kriteria pencarian aplikasi klien.</li>
+</ul>
+
+<p>Beberapa fitur yang disediakan oleh SAF adalah sebagai berikut:</p>
+<ul>
+<li>Memungkinkan pengguna menyusuri konten dari semua penyedia dokumen, bukan hanya satu aplikasi.</li>
+<li>Memungkinkan aplikasi Anda memiliki akses jangka panjang dan tetap ke
+ dokumen yang dimiliki oleh penyedia dokumen. Melalui akses ini pengguna bisa menambah, mengedit,
+ menyimpan, dan menghapus file pada penyedia.</li>
+<li>Mendukung banyak akun pengguna dan akar jangka pendek seperti penyedia penyimpanan
+USB, yang hanya muncul jika drive itu dipasang. </li>
+</ul>
+
+<h2 id ="overview">Ikhtisar</h2>
+
+<p>SAF berpusat di seputar penyedia konten yang merupakan
+subkelas dari kelas {@link android.provider.DocumentsProvider}. Dalam <em>penyedia dokumen</em>, data
+distrukturkan sebagai hierarki file biasa:</p>
+<p><img src="{@docRoot}images/providers/storage_datamodel.png" alt="data model" /></p>
+<p class="img-caption"><strong>Gambar 1.</strong> Model data penyedia dokumen. Root menunjuk ke satu Document,
+yang nanti memulai pemekaran seluruh pohon.</p>
+
+<p>Perhatikan yang berikut ini:</p>
+<ul>
+
+<li>Setiap penyedia dokumen melaporkan satu atau beberapa
+"akar" yang merupakan titik awal penyusuran pohon dokumen.
+Masing-masing akar memiliki sebuah {@link android.provider.DocumentsContract.Root#COLUMN_ROOT_ID} yang unik,
+dan menunjuk ke satu dokumen (satu direktori)
+yang mewakili konten di bawah akar itu.
+Akar sengaja dibuat dinamis untuk mendukung kasus penggunaan seperti multiakun,
+perangkat penyimpanan USB jangka pendek, atau masuk/keluar pengguna.</li>
+
+<li>Di bawah tiap akar terdapat satu dokumen. Dokumen itu menunjuk ke dokumen-dokumen 1-ke-<em>N</em>,
+yang nanti masing-masing bisa menunjuk ke dokumen 1-ke-<em>N</em>. </li>
+
+<li>Tiap backend penyimpanan memunculkan
+masing-masing file dan direktori dengan mengacunya lewat sebuah
+{@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} yang unik.
+ID dokumen harus unik dan tidak berubah setelah dibuat, karena ID ini digunakan untuk
+URI persisten yang diberikan pada saat reboot perangkat.</li>
+
+
+<li>Dokumen bisa berupa file yang bisa dibuka (dengan tipe MIME tertentu), atau
+direktori yang berisi dokumen tambahan (dengan tipe MIME
+{@link android.provider.DocumentsContract.Document#MIME_TYPE_DIR}).</li>
+
+<li>Tiap dokumen bisa mempunyai kemampuan berbeda, sebagaimana yang dijelaskan oleh
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS COLUMN_FLAGS}.
+Misalnya, {@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_WRITE},
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE}, dan
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_THUMBNAIL}.
+{@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} yang sama bisa
+dimasukkan dalam beberapa direktori.</li>
+</ul>
+
+<h2 id="flow">Arus Kontrol</h2>
+<p>Seperti dinyatakan di atas, model data penyedia dokumen dibuat berdasarkan hierarki file
+biasa. Akan tetapi, Anda bisa menyimpan secara fisik data dengan cara apa pun yang disukai,
+selama data bisa diakses melalui API {@link android.provider.DocumentsProvider}. Misalnya, Anda
+bisa menggunakan penyimpanan cloud berbasis tag untuk data Anda.</p>
+
+<p>Gambar 2 menampilkan contoh cara aplikasi foto bisa menggunakan SAF
+untuk mengakses data tersimpan:</p>
+<p><img src="{@docRoot}images/providers/storage_dataflow.png" alt="app" /></p>
+
+<p class="img-caption"><strong>Gambar 2.</strong> Arus Storage Access Framework</p>
+
+<p>Perhatikan yang berikut ini:</p>
+<ul>
+
+<li>Di SAF, penyedia dan klien tidak berinteraksi
+secara langsung. Klien meminta izin untuk berinteraksi
+dengan file (yakni, membaca, mengedit, membuat, atau menghapus file).</li>
+
+<li>Interaksi dimulai bila sebuah aplikasi (dalam contoh ini adalah aplikasi foto) mengeluarkan intent
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} atau {@link android.content.Intent#ACTION_CREATE_DOCUMENT}. Intent bisa berisi filter
+untuk mempersempit kriteria&mdash;misalnya, "beri saya semua file yang bisa dibuka
+yang memiliki tipe MIME 'gambar'".</li>
+
+<li>Setelah intent dibuat, picker sistem akan pergi ke setiap penyedia yang terdaftar
+dan menunjukkan kepada pengguna akar konten yang cocok.</li>
+
+<li>Picker memberi pengguna antarmuka standar untuk mengakses dokumen,
+walaupun penyedia dokumen dasar bisa sangat berbeda. Misalnya, gambar 2
+menunjukkan penyedia Google Drive, penyedia USB, dan penyedia cloud.</li>
+</ul>
+
+<p>Gambar 3 menunjukkan picker yang di digunakan pengguna mencari gambar telah memilih
+akun Google Drive:</p>
+
+<p><img src="{@docRoot}images/providers/storage_picker.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>Gambar 3.</strong> Picker</p>
+
+<p>Bila pengguna memilih Google Drive, gambar-gambar akan ditampilkan, seperti yang ditampilkan dalam
+gambar 4. Dari titik itu, pengguna bisa berinteraksi dengan gambar dengan cara apa pun
+yang didukung oleh penyedia dan aplikasi klien.
+
+<p><img src="{@docRoot}images/providers/storage_photos.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>Gambar 4.</strong> Gambar</p>
+
+<h2 id="client">Menulis Aplikasi Klien</h2>
+
+<p>Pada Android 4.3 dan yang lebih rendah, jika Anda ingin aplikasi mengambil file dari
+aplikasi lain, aplikasi Anda harus memanggil intent seperti {@link android.content.Intent#ACTION_PICK}
+atau {@link android.content.Intent#ACTION_GET_CONTENT}. Pengguna nanti harus memilih
+satu aplikasi yang akan digunakan untuk mengambil file dan aplikasi yang dipilih harus menyediakan antarmuka pengguna
+bagi untuk menyusuri dan mengambil dari file yang tersedia. </p>
+
+<p>Pada Android 4.4 dan yang lebih tinggi, Anda mempunyai opsi tambahan dalam menggunakan intent
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT},
+yang menampilkan UI picker yang dikontrol oleh sistem yang memungkinkan pengguna
+menyusuri semua file yang disediakan aplikasi lain. Dari satu UI ini, pengguna
+bisa mengambil file dari aplikasi apa saja yang didukung.</p>
+
+<p>{@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+tidak dimaksudkan untuk menjadi pengganti {@link android.content.Intent#ACTION_GET_CONTENT}.
+Yang harus Anda gunakan bergantung pada kebutuhan aplikasi:</p>
+
+<ul>
+<li>Gunakan {@link android.content.Intent#ACTION_GET_CONTENT} jika Anda ingin aplikasi
+cuma membaca/mengimpor data. Dengan pendekatan ini, aplikasi akan mengimpor salinan data,
+misalnya file gambar.</li>
+
+<li>Gunakan {@link android.content.Intent#ACTION_OPEN_DOCUMENT} jika Anda ingin aplikasi
+memiliki akses jangka panjang dan jangka pendek ke dokumen yang dimiliki oleh penyedia
+dokumen. Contohnya adalah aplikasi pengeditan foto yang memungkinkan pengguna mengedit
+gambar yang tersimpan dalam penyedia dokumen. </li>
+
+</ul>
+
+
+<p>Bagian ini menjelaskan cara menulis aplikasi klien berdasarkan
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} dan
+intent {@link android.content.Intent#ACTION_CREATE_DOCUMENT}.</p>
+
+
+<h3 id="search">Mencari dokumen</h3>
+
+<p>
+Cuplikan berikut menggunakan {@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+untuk mencari penyedia dokumen yang
+berisi file gambar:</p>
+
+<pre>private static final int READ_REQUEST_CODE = 42;
+...
+/**
+ * Fires an intent to spin up the &quot;file chooser&quot; UI and select an image.
+ */
+public void performFileSearch() {
+
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's file
+    // browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones)
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only images, using the image MIME data type.
+    // If one wanted to search for ogg vorbis files, the type would be &quot;audio/ogg&quot;.
+    // To search for all documents available via installed storage providers,
+    // it would be &quot;*/*&quot;.
+    intent.setType(&quot;image/*&quot;);
+
+    startActivityForResult(intent, READ_REQUEST_CODE);
+}</pre>
+
+<p>Perhatikan yang berikut ini:</p>
+<ul>
+<li>Saat aplikasi mengeluarkan intent {@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+, aplikasi akan menjalankan picker yang menampilkan semua penyedia dokumen yang cocok.</li>
+
+<li>Menambahkan kategori {@link android.content.Intent#CATEGORY_OPENABLE} ke
+intent akan menyaring hasil agar hanya menampilkan dokumen yang bisa dibuka, seperti file gambar.</li>
+
+<li>Pernyataan {@code intent.setType("image/*")} menyaring lebih jauh agar hanya
+menampilkan dokumen yang memiliki tipe data MIME gambar.</li>
+</ul>
+
+<h3 id="results">Memproses Hasil</h3>
+
+<p>Setelah pengguna memilih dokumen di picker,
+{@link android.app.Activity#onActivityResult onActivityResult()} akan dipanggil.
+URI yang menunjuk ke dokumen yang dipilih dimasukkan dalam parameter {@code resultData}
+. Ekstrak URI dengan {@link android.content.Intent#getData getData()}.
+Setelah mendapatkannya, Anda bisa menggunakannya untuk mengambil dokumen yang diinginkan pengguna. Misalnya
+:</p>
+
+<pre>&#64;Override
+public void onActivityResult(int requestCode, int resultCode,
+        Intent resultData) {
+
+    // The ACTION_OPEN_DOCUMENT intent was sent with the request code
+    // READ_REQUEST_CODE. If the request code seen here doesn't match, it's the
+    // response to some other intent, and the code below shouldn't run at all.
+
+    if (requestCode == READ_REQUEST_CODE && resultCode == Activity.RESULT_OK) {
+        // The document selected by the user won't be returned in the intent.
+        // Instead, a URI to that document will be contained in the return intent
+        // provided to this method as a parameter.
+        // Pull that URI using resultData.getData().
+        Uri uri = null;
+        if (resultData != null) {
+            uri = resultData.getData();
+            Log.i(TAG, "Uri: " + uri.toString());
+            showImage(uri);
+        }
+    }
+}
+</pre>
+
+<h3 id="metadata">Memeriksa metadata dokumen</h3>
+
+<p>Setelah Anda memiliki URI untuk dokumen, Anda akan mendapatkan akses ke metadatanya. Cuplikan
+ini memegang metadata sebuah dokumen yang disebutkan oleh URI, dan mencatatnya:</p>
+
+<pre>public void dumpImageMetaData(Uri uri) {
+
+    // The query, since it only applies to a single document, will only return
+    // one row. There's no need to filter, sort, or select fields, since we want
+    // all fields for one document.
+    Cursor cursor = getActivity().getContentResolver()
+            .query(uri, null, null, null, null, null);
+
+    try {
+    // moveToFirst() returns false if the cursor has 0 rows.  Very handy for
+    // &quot;if there's anything to look at, look at it&quot; conditionals.
+        if (cursor != null &amp;&amp; cursor.moveToFirst()) {
+
+            // Note it's called &quot;Display Name&quot;.  This is
+            // provider-specific, and might not necessarily be the file name.
+            String displayName = cursor.getString(
+                    cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
+            Log.i(TAG, &quot;Display Name: &quot; + displayName);
+
+            int sizeIndex = cursor.getColumnIndex(OpenableColumns.SIZE);
+            // If the size is unknown, the value stored is null.  But since an
+            // int can't be null in Java, the behavior is implementation-specific,
+            // which is just a fancy term for &quot;unpredictable&quot;.  So as
+            // a rule, check if it's null before assigning to an int.  This will
+            // happen often:  The storage API allows for remote files, whose
+            // size might not be locally known.
+            String size = null;
+            if (!cursor.isNull(sizeIndex)) {
+                // Technically the column stores an int, but cursor.getString()
+                // will do the conversion automatically.
+                size = cursor.getString(sizeIndex);
+            } else {
+                size = &quot;Unknown&quot;;
+            }
+            Log.i(TAG, &quot;Size: &quot; + size);
+        }
+    } finally {
+        cursor.close();
+    }
+}
+</pre>
+
+<h3 id="open-client">Membuka dokumen</h3>
+
+<p>Setelah mendapatkan URI dokumen, Anda bisa membuka dokumen atau melakukan apa saja
+yang diinginkan padanya.</p>
+
+<h4>Bitmap</h4>
+
+<p>Berikut ini adalah contoh cara membuka {@link android.graphics.Bitmap}:</p>
+
+<pre>private Bitmap getBitmapFromUri(Uri uri) throws IOException {
+    ParcelFileDescriptor parcelFileDescriptor =
+            getContentResolver().openFileDescriptor(uri, "r");
+    FileDescriptor fileDescriptor = parcelFileDescriptor.getFileDescriptor();
+    Bitmap image = BitmapFactory.decodeFileDescriptor(fileDescriptor);
+    parcelFileDescriptor.close();
+    return image;
+}
+</pre>
+
+<p>Perhatikan bahwa Anda tidak boleh melakukan operasi ini pada thread UI. Lakukan hal ini di latar belakang
+, dengan menggunakan {@link android.os.AsyncTask}. Setelah membuka bitmap, Anda
+bisa menampilkannya dalam {@link android.widget.ImageView}.
+</p>
+
+<h4>Mendapatkan InputStream</h4>
+
+<p>Berikut ini adalah contoh cara mendapatkan {@link java.io.InputStream} dari URI. Dalam cuplikan ini
+, baris-baris file dibaca ke dalam sebuah string:</p>
+
+<pre>private String readTextFromUri(Uri uri) throws IOException {
+    InputStream inputStream = getContentResolver().openInputStream(uri);
+    BufferedReader reader = new BufferedReader(new InputStreamReader(
+            inputStream));
+    StringBuilder stringBuilder = new StringBuilder();
+    String line;
+    while ((line = reader.readLine()) != null) {
+        stringBuilder.append(line);
+    }
+    fileInputStream.close();
+    parcelFileDescriptor.close();
+    return stringBuilder.toString();
+}
+</pre>
+
+<h3 id="create">Membuat dokumen baru</h3>
+
+<p>Aplikasi Anda bisa membuat dokumen baru dalam penyedia dokumen dengan menggunakan intent
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT}
+. Untuk membuat file, Anda memberikan satu tipe MIME dan satu nama file pada intent, dan
+menjalankannya dengan kode permintaan yang unik. Selebihnya akan diurus untuk Anda:</p>
+
+
+<pre>
+// Here are some examples of how you might call this method.
+// The first parameter is the MIME type, and the second parameter is the name
+// of the file you are creating:
+//
+// createFile("text/plain", "foobar.txt");
+// createFile("image/png", "mypicture.png");
+
+// Unique request code.
+private static final int WRITE_REQUEST_CODE = 43;
+...
+private void createFile(String mimeType, String fileName) {
+    Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as
+    // a file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Create a file with the requested MIME type.
+    intent.setType(mimeType);
+    intent.putExtra(Intent.EXTRA_TITLE, fileName);
+    startActivityForResult(intent, WRITE_REQUEST_CODE);
+}
+</pre>
+
+<p>Setelah membuat dokumen baru, Anda bisa mendapatkan URI-nya dalam
+{@link android.app.Activity#onActivityResult onActivityResult()}, sehingga Anda
+bisa terus menulis ke dokumen itu.</p>
+
+<h3 id="delete">Menghapus dokumen</h3>
+
+<p>Jika Anda memiliki URI dokumen dan 
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS Document.COLUMN_FLAGS}
+ dokumen berisi
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE SUPPORTS_DELETE},
+Anda bisa menghapus dokumen tersebut. Misalnya:</p>
+
+<pre>
+DocumentsContract.deleteDocument(getContentResolver(), uri);
+</pre>
+
+<h3 id="edit">Mengedit dokumen</h3>
+
+<p>Anda bisa menggunakan SAF untuk mengedit dokumen teks langsung di tempatnya.
+Cuplikan ini memicu
+intent {@link android.content.Intent#ACTION_OPEN_DOCUMENT} dan menggunakan
+kategori {@link android.content.Intent#CATEGORY_OPENABLE} untuk menampilkan
+dokumen yang bisa dibuka saja. Ini akan menyaring lebih jauh untuk menampilkan file teks saja:</p>
+
+<pre>
+private static final int EDIT_REQUEST_CODE = 44;
+/**
+ * Open a file for writing and append some text to it.
+ */
+ private void editDocument() {
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's
+    // file browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only text files.
+    intent.setType(&quot;text/plain&quot;);
+
+    startActivityForResult(intent, EDIT_REQUEST_CODE);
+}
+</pre>
+
+<p>Berikutnya, dari {@link android.app.Activity#onActivityResult onActivityResult()}
+(lihat <a href="#results">Memproses hasil</a>) Anda bisa memanggil kode untuk mengedit.
+Cuplikan berikut mendapatkan {@link java.io.FileOutputStream}
+dari {@link android.content.ContentResolver}. Secara default, snipet menggunakan mode “tulis”.
+Inilah praktik terbaik untuk meminta jumlah akses minimum yang Anda perlukan, jadi jangan meminta
+baca/tulis jika yang Anda perlukan hanyalah tulis:</p>
+
+<pre>private void alterDocument(Uri uri) {
+    try {
+        ParcelFileDescriptor pfd = getActivity().getContentResolver().
+                openFileDescriptor(uri, "w");
+        FileOutputStream fileOutputStream =
+                new FileOutputStream(pfd.getFileDescriptor());
+        fileOutputStream.write(("Overwritten by MyCloud at " +
+                System.currentTimeMillis() + "\n").getBytes());
+        // Let the document provider know you're done by closing the stream.
+        fileOutputStream.close();
+        pfd.close();
+    } catch (FileNotFoundException e) {
+        e.printStackTrace();
+    } catch (IOException e) {
+        e.printStackTrace();
+    }
+}</pre>
+
+<h3 id="permissions">Mempertahankan izin</h3>
+
+<p>Bila aplikasi Anda membuka file untuk membaca atau menulis, sistem akan memberi
+aplikasi Anda izin URI untuk file itu. Pemberian ini berlaku hingga perangkat pengguna di-restart.
+Namun anggaplah aplikasi Anda adalah aplikasi pengeditan gambar, dan Anda ingin pengguna bisa
+mengakses 5 gambar terakhir yang dieditnya, langsung dari aplikasi Anda. Jika perangkat pengguna telah
+di-restart, maka Anda harus mengirim pengguna kembali ke picker sistem untuk menemukan
+file, hal ini jelas tidak ideal.</p>
+
+<p>Untuk mencegah terjadinya hal ini, Anda bisa mempertahankan izin yang diberikan
+sistem ke aplikasi Anda. Secara efektif, aplikasi Anda akan "mengambil" pemberian izin URI yang bisa dipertahankan
+yang ditawarkan oleh sistem. Hal ini memberi pengguna akses kontinu ke file
+melalui aplikasi Anda, sekalipun perangkat telah di-restart:</p>
+
+
+<pre>final int takeFlags = intent.getFlags()
+            &amp; (Intent.FLAG_GRANT_READ_URI_PERMISSION
+            | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
+// Check for the freshest data.
+getContentResolver().takePersistableUriPermission(uri, takeFlags);</pre>
+
+<p>Ada satu langkah akhir. Anda mungkin telah menyimpan
+URI terbaru yang diakses aplikasi, namun URI itu mungkin tidak lagi valid,&mdash;aplikasi lain
+mungkin telah menghapus atau memodifikasi dokumen. Karena itu, Anda harus selalu memanggil
+{@code getContentResolver().takePersistableUriPermission()} untuk memeriksa
+data terbaru.</p>
+
+<h2 id="custom">Menulis Penyedia Dokumen Custom</h2>
+
+<p>
+Jika Anda sedang mengembangkan aplikasi yang menyediakan layanan penyimpanan untuk file (misalnya
+layanan penyimpanan cloud), Anda bisa menyediakan file melalui
+SAF dengan menulis penyedia dokumen custom.  Bagian ini menjelaskan
+caranya.</p>
+
+
+<h3 id="manifest">Manifes</h3>
+
+<p>Untuk mengimplementasikan penyedia dokumen custom, tambahkan yang berikut ini ke manifes aplikasi
+Anda:</p>
+<ul>
+
+<li>Target berupa API level 19 atau yang lebih tinggi.</li>
+
+<li>Elemen <code>&lt;provider&gt;</code> yang mendeklarasikan penyedia penyimpanan custom
+Anda. </li>
+
+<li>Nama penyedia Anda, yaitu nama kelasnya, termasuk nama paket.
+Misalnya: <code>com.example.android.storageprovider.MyCloudProvider</code>.</li>
+
+<li>Nama otoritas Anda, yaitu nama paket Anda (dalam contoh ini,
+<code>com.example.android.storageprovider</code>) plus tipe penyedia konten
+(<code>documents</code>). Misalnya, {@code com.example.android.storageprovider.documents}.</li>
+
+<li>Atribut <code>android:exported</code> yang diatur ke <code>&quot;true&quot;</code>.
+Anda harus mengekspor penyedia sehingga aplikasi lain bisa membacanya.</li>
+
+<li>Atribut <code>android:grantUriPermissions</code> yang diatur ke
+<code>&quot;true&quot;</code>. Pengaturan ini memungkinkan sistem memberi aplikasi lain akses
+ke konten dalam penyedia Anda. Untuk pembahasan cara mempertahankan pemberian bagi
+dokumen tertentu, lihat <a href="#permissions">Mempertahankan izin</a>.</li>
+
+<li>Izin {@code MANAGE_DOCUMENTS}. Secara default, penyedia tersedia
+bagi siapa saja. Menambahkan izin ini akan membatasi penyedia Anda pada sistem.
+Pembatasan ini penting untuk keamanan.</li>
+
+<li>Atribut {@code android:enabled} yang diatur ke nilai boolean didefinisikan dalam file
+sumber daya. Tujuan atribut ini adalah menonaktifkan penyedia pada perangkat yang menjalankan Android 4.3 atau yang lebih rendah.
+Misalnya, {@code android:enabled="@bool/atLeastKitKat"}. Selain
+memasukkan atribut ini dalam manifes, Anda perlu melakukan hal-hal berikut:
+<ul>
+<li>Dalam file sumber daya {@code bool.xml} Anda di bawah {@code res/values/}, tambahkan
+baris ini: <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>Dalam file sumber daya {@code bool.xml} Anda di bawah {@code res/values-v19/}, tambahkan
+baris ini: <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;true&lt;/bool&gt;</pre></li>
+</ul></li>
+
+<li>Sebuah filter intent berisi tindakan
+{@code android.content.action.DOCUMENTS_PROVIDER}, agar penyedia Anda
+muncul dalam picker saat sistem mencari penyedia.</li>
+
+</ul>
+<p>Berikut ini adalah kutipan contoh manifes berisi penyedia yang:</p>
+
+<pre>&lt;manifest... &gt;
+    ...
+    &lt;uses-sdk
+        android:minSdkVersion=&quot;19&quot;
+        android:targetSdkVersion=&quot;19&quot; /&gt;
+        ....
+        &lt;provider
+            android:name=&quot;com.example.android.storageprovider.MyCloudProvider&quot;
+            android:authorities=&quot;com.example.android.storageprovider.documents&quot;
+            android:grantUriPermissions=&quot;true&quot;
+            android:exported=&quot;true&quot;
+            android:permission=&quot;android.permission.MANAGE_DOCUMENTS&quot;
+            android:enabled=&quot;&#64;bool/atLeastKitKat&quot;&gt;
+            &lt;intent-filter&gt;
+                &lt;action android:name=&quot;android.content.action.DOCUMENTS_PROVIDER&quot; /&gt;
+            &lt;/intent-filter&gt;
+        &lt;/provider&gt;
+    &lt;/application&gt;
+
+&lt;/manifest&gt;</pre>
+
+<h4 id="43">Mendukung perangkat yang menjalankan Android 4.3 dan yang lebih rendah</h4>
+
+<p>Intent
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} hanya tersedia
+pada perangkat yang menjalankan Android 4.4 dan yang lebih tinggi.
+Jika ingin aplikasi Anda mendukung {@link android.content.Intent#ACTION_GET_CONTENT}
+untuk mengakomodasi perangkat yang menjalankan Android 4.3 dan yang lebih rendah, Anda harus
+menonaktifkan filter inten {@link android.content.Intent#ACTION_GET_CONTENT} dalam
+manifes untuk perangkat yang menjalankan Android 4.4 atau yang lebih tinggi. Penyedia
+dokumen dan {@link android.content.Intent#ACTION_GET_CONTENT} harus dianggap
+saling eksklusif. Jika Anda mendukung keduanya sekaligus, aplikasi Anda akan
+muncul dua kali dalam UI picker sistem, yang menawarkan dua cara mengakses
+data tersimpan Anda. Hal ini akan membingungkan pengguna.</p>
+
+<p>Berikut ini adalah cara yang disarankan untuk menonaktifkan
+filter intent {@link android.content.Intent#ACTION_GET_CONTENT} untuk perangkat
+yang menjalankan Android versi 4.4 atau yang lebih tinggi:</p>
+
+<ol>
+<li>Dalam file sumber daya {@code bool.xml} Anda di bawah {@code res/values/}, tambahkan
+baris ini: <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;true&lt;/bool&gt;</pre></li>
+
+<li>Dalam file sumber daya {@code bool.xml} Anda di bawah {@code res/values-v19/}, tambahkan
+baris ini: <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>Tambahkan
+<a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">alias
+aktivitas</a> untuk menonaktifkan filter intent {@link android.content.Intent#ACTION_GET_CONTENT}
+bagi versi 4.4 (API level 19) dan yang lebih tinggi. Misalnya:
+
+<pre>
+&lt;!-- This activity alias is added so that GET_CONTENT intent-filter
+     can be disabled for builds on API level 19 and higher. --&gt;
+&lt;activity-alias android:name=&quot;com.android.example.app.MyPicker&quot;
+        android:targetActivity=&quot;com.android.example.app.MyActivity&quot;
+        ...
+        android:enabled=&quot;@bool/atMostJellyBeanMR2&quot;&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name=&quot;android.intent.action.GET_CONTENT&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.OPENABLE&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.DEFAULT&quot; /&gt;
+        &lt;data android:mimeType=&quot;image/*&quot; /&gt;
+        &lt;data android:mimeType=&quot;video/*&quot; /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity-alias&gt;
+</pre>
+</li>
+</ol>
+<h3 id="contract">Kontrak</h3>
+
+<p>Biasanya bila Anda menulis penyedia konten custom, salah satu tugas adalah
+mengimplementasikan kelas kontrak, seperti dijelaskan dalam panduan pengembang
+<a href="{@docRoot}guide/topics/providers/content-provider-creating.html#ContractClass">
+Penyedia Konten</a>. Kelas kontrak adalah kelas {@code public final}
+yang berisi definisi konstanta untuk URI, nama kolom, tipe MIME, dan
+metadata lain yang berkenaan dengan penyedia. SAF
+menyediakan kelas-kelas kontrak ini untuk Anda, jadi Anda tidak perlu menulisnya
+sendiri:</p>
+
+<ul>
+   <li>{@link android.provider.DocumentsContract.Document}</li>
+   <li>{@link android.provider.DocumentsContract.Root}</li>
+</ul>
+
+<p>Misalnya, berikut ini adalah kolom-kolom yang bisa Anda hasilkan di kursor bila
+penyedia dokumen Anda membuat query dokumen atau akar:</p>
+
+<pre>private static final String[] DEFAULT_ROOT_PROJECTION =
+        new String[]{Root.COLUMN_ROOT_ID, Root.COLUMN_MIME_TYPES,
+        Root.COLUMN_FLAGS, Root.COLUMN_ICON, Root.COLUMN_TITLE,
+        Root.COLUMN_SUMMARY, Root.COLUMN_DOCUMENT_ID,
+        Root.COLUMN_AVAILABLE_BYTES,};
+private static final String[] DEFAULT_DOCUMENT_PROJECTION = new
+        String[]{Document.COLUMN_DOCUMENT_ID, Document.COLUMN_MIME_TYPE,
+        Document.COLUMN_DISPLAY_NAME, Document.COLUMN_LAST_MODIFIED,
+        Document.COLUMN_FLAGS, Document.COLUMN_SIZE,};
+</pre>
+
+<h3 id="subclass">Subkelas DocumentsProvider</h3>
+
+<p>Langkah berikutnya dalam menulis penyedia dokumen custom adalah menjadikan
+kelas abstrak sebagai subkelas {@link android.provider.DocumentsProvider}. Setidaknya, Anda perlu
+ mengimplementasikan metode berikut:</p>
+
+<ul>
+<li>{@link android.provider.DocumentsProvider#queryRoots queryRoots()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryDocument queryDocument()}</li>
+
+<li>{@link android.provider.DocumentsProvider#openDocument openDocument()}</li>
+</ul>
+
+<p>Hanya inilah metode yang diwajibkan kepada Anda secara ketat untuk diimplementasikan, namun ada
+banyak lagi yang mungkin Anda inginkan. Lihat {@link android.provider.DocumentsProvider}
+untuk detailnya.</p>
+
+<h4 id="queryRoots">Mengimplementasikan queryRoots</h4>
+
+<p>Implementasi {@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} oleh Anda harus menghasilkan {@link android.database.Cursor} yang menunjuk ke semua
+direktori akar penyedia dokumen, dengan menggunakan kolom-kolom yang didefinisikan dalam
+{@link android.provider.DocumentsContract.Root}.</p>
+
+<p>Dalam cuplikan berikut, parameter {@code projection} mewakili bidang-bidang
+tertentu yang ingin didapatkan kembali oleh pemanggil. Cuplikan ini membuat kursor baru
+dan menambahkan satu baris ke satu akar&mdash; kursor, satu direktori level atas, seperti
+Downloads atau Images.  Kebanyakan penyedia hanya mempunyai satu akar. Anda bisa mempunyai lebih dari satu,
+misalnya, jika ada banyak akun pengguna. Dalam hal itu, cukup tambahkan sebuah
+baris kedua ke kursor.</p>
+
+<pre>
+&#64;Override
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+
+    // Create a cursor with either the requested fields, or the default
+    // projection if "projection" is null.
+    final MatrixCursor result =
+            new MatrixCursor(resolveRootProjection(projection));
+
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+    }
+
+    // It's possible to have multiple roots (e.g. for multiple accounts in the
+    // same app) -- just add multiple cursor rows.
+    // Construct one row for a root called &quot;MyCloud&quot;.
+    final MatrixCursor.RowBuilder row = result.newRow();
+    row.add(Root.COLUMN_ROOT_ID, ROOT);
+    row.add(Root.COLUMN_SUMMARY, getContext().getString(R.string.root_summary));
+
+    // FLAG_SUPPORTS_CREATE means at least one directory under the root supports
+    // creating documents. FLAG_SUPPORTS_RECENTS means your application's most
+    // recently used documents will show up in the &quot;Recents&quot; category.
+    // FLAG_SUPPORTS_SEARCH allows users to search all documents the application
+    // shares.
+    row.add(Root.COLUMN_FLAGS, Root.FLAG_SUPPORTS_CREATE |
+            Root.FLAG_SUPPORTS_RECENTS |
+            Root.FLAG_SUPPORTS_SEARCH);
+
+    // COLUMN_TITLE is the root title (e.g. Gallery, Drive).
+    row.add(Root.COLUMN_TITLE, getContext().getString(R.string.title));
+
+    // This document id cannot change once it's shared.
+    row.add(Root.COLUMN_DOCUMENT_ID, getDocIdForFile(mBaseDir));
+
+    // The child MIME types are used to filter the roots and only present to the
+    //  user roots that contain the desired type somewhere in their file hierarchy.
+    row.add(Root.COLUMN_MIME_TYPES, getChildMimeTypes(mBaseDir));
+    row.add(Root.COLUMN_AVAILABLE_BYTES, mBaseDir.getFreeSpace());
+    row.add(Root.COLUMN_ICON, R.drawable.ic_launcher);
+
+    return result;
+}</pre>
+
+<h4 id="queryChildDocuments">Mengimplementasikan queryChildDocuments</h4>
+
+<p>Implementasi
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}
+oleh Anda harus menghasilkan {@link android.database.Cursor} yang menunjuk ke semua file dalam
+direktori yang ditentukan, dengan menggunakan kolom-kolom yang didefinisikan dalam
+{@link android.provider.DocumentsContract.Document}.</p>
+
+<p>Metode ini akan dipanggil bila Anda memilih akar aplikasi dalam picker UI.
+Metode mengambil dokumen anak dari direktori di bawah akar.  Metode ini bisa dipanggil pada level apa saja dalam
+hierarki file, bukan hanya akar. Cuplikan ini
+membuat kursor baru dengan kolom-kolom yang diminta, lalu menambahkan informasi tentang
+setiap anak langsung dalam direktori induk ke kursor.
+Satu anak bisa berupa gambar, direktori lain&mdash;file apa saja:</p>
+
+<pre>&#64;Override
+public Cursor queryChildDocuments(String parentDocumentId, String[] projection,
+                              String sortOrder) throws FileNotFoundException {
+
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    final File parent = getFileForDocId(parentDocumentId);
+    for (File file : parent.listFiles()) {
+        // Adds the file's display name, MIME type, size, and so on.
+        includeFile(result, null, file);
+    }
+    return result;
+}
+</pre>
+
+<h4 id="queryDocument">Mengimplementasikan queryDocument</h4>
+
+<p>Implementasi
+{@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+oleh Anda harus menghasilkan {@link android.database.Cursor} yang menunjuk ke file yang disebutkan,
+dengan menggunakan kolom-kolom yang didefinisikan dalam {@link android.provider.DocumentsContract.Document}.
+</p>
+
+<p>Metode {@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+menghasilkan informasi yang sama yang diteruskan dalam
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()},
+namun untuk file tertentu:</p>
+
+
+<pre>&#64;Override
+public Cursor queryDocument(String documentId, String[] projection) throws
+        FileNotFoundException {
+
+    // Create a cursor with the requested projection, or the default projection.
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    includeFile(result, documentId, null);
+    return result;
+}
+</pre>
+
+<h4 id="openDocument">Mengimplementasikan openDocument</h4>
+
+<p>Anda harus mengimplementasikan {@link android.provider.DocumentsProvider#openDocument
+openDocument()} untuk menghasilkan {@link android.os.ParcelFileDescriptor} yang mewakili
+file yang disebutkan. Aplikasi lain bisa menggunakan {@link android.os.ParcelFileDescriptor}
+yang dihasilkan untuk mengalirkan data. Sistem memanggil metode ini setelah pengguna memilih file
+dan aplikasi klien meminta akses ke file itu dengan memanggil
+{@link android.content.ContentResolver#openFileDescriptor openFileDescriptor()}.
+Misalnya:</p>
+
+<pre>&#64;Override
+public ParcelFileDescriptor openDocument(final String documentId,
+                                         final String mode,
+                                         CancellationSignal signal) throws
+        FileNotFoundException {
+    Log.v(TAG, &quot;openDocument, mode: &quot; + mode);
+    // It's OK to do network operations in this method to download the document,
+    // as long as you periodically check the CancellationSignal. If you have an
+    // extremely large file to transfer from the network, a better solution may
+    // be pipes or sockets (see ParcelFileDescriptor for helper methods).
+
+    final File file = getFileForDocId(documentId);
+
+    final boolean isWrite = (mode.indexOf('w') != -1);
+    if(isWrite) {
+        // Attach a close listener if the document is opened in write mode.
+        try {
+            Handler handler = new Handler(getContext().getMainLooper());
+            return ParcelFileDescriptor.open(file, accessMode, handler,
+                        new ParcelFileDescriptor.OnCloseListener() {
+                &#64;Override
+                public void onClose(IOException e) {
+
+                    // Update the file with the cloud server. The client is done
+                    // writing.
+                    Log.i(TAG, &quot;A file with id &quot; +
+                    documentId + &quot; has been closed!
+                    Time to &quot; +
+                    &quot;update the server.&quot;);
+                }
+
+            });
+        } catch (IOException e) {
+            throw new FileNotFoundException(&quot;Failed to open document with id &quot;
+            + documentId + &quot; and mode &quot; + mode);
+        }
+    } else {
+        return ParcelFileDescriptor.open(file, accessMode);
+    }
+}
+</pre>
+
+<h3 id="security">Keamanan</h3>
+
+<p>Anggaplah penyedia dokumen Anda sebuah layanan penyimpanan cloud yang dilindungi kata sandi
+dan Anda ingin memastikan bahwa pengguna sudah login sebelum Anda mulai berbagi file mereka.
+Apakah yang harus dilakukan aplikasi Anda jika pengguna tidak login?  Solusinya adalah menghasilkan
+akar nol dalam implementasi {@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} Anda. Yakni, sebuah kursor akar kosong:</p>
+
+<pre>
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+...
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+}
+</pre>
+
+<p>Langkah lainnya adalah memanggil {@code getContentResolver().notifyChange()}.
+Ingat {@link android.provider.DocumentsContract}?  Kita menggunakannya untuk membuat
+URI ini. Cuplikan berikut memberi tahu sistem untuk membuat query akar penyedia dokumen Anda
+kapan saja status login pengguna berubah. Jika pengguna tidak
+login, panggilan ke {@link android.provider.DocumentsProvider#queryRoots queryRoots()} akan menghasilkan
+kursor kosong, seperti yang ditampilkan di atas. Cara ini akan memastikan bahwa dokumen penyedia hanya
+tersedia jika pengguna login ke penyedia itu.</p>
+
+<pre>private void onLoginButtonClick() {
+    loginOrLogout();
+    getContentResolver().notifyChange(DocumentsContract
+            .buildRootsUri(AUTHORITY), null);
+}
+</pre>
\ No newline at end of file
diff --git a/docs/html-intl/intl/in/guide/topics/resources/accessing-resources.jd b/docs/html-intl/intl/in/guide/topics/resources/accessing-resources.jd
new file mode 100644
index 0000000..e4a0bea
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/resources/accessing-resources.jd
@@ -0,0 +1,337 @@
+page.title=Mengakses Sumber Daya
+parent.title=Sumber Daya Aplikasi
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Tampilan Cepat</h2>
+  <ul>
+    <li>Sumber daya bisa diacu dari kode dengan menggunakan integer dari {@code R.java}, seperti
+{@code R.drawable.myimage}</li>
+    <li>Sumber daya bisa diacu dari sumber daya dengan menggunakan sintaks XML khusus, seperti {@code
+&#64;drawable/myimage}</li>
+    <li>Anda juga bisa mengakses sumber daya aplikasi Anda dengan berbagai metode di
+{@link android.content.res.Resources}</li>
+  </ul>
+
+  <h2>Kelas-Kelas Utama</h2>
+  <ol>
+    <li>{@link android.content.res.Resources}</li>
+  </ol>
+
+  <h2>Dalam dokumen ini</h2>
+  <ol>
+    <li><a href="#ResourcesFromCode">Mengakses Sumber Daya dari Kode</a></li>
+    <li><a href="#ResourcesFromXml">Mengakses Sumber Daya dari XML</a>
+      <ol>
+        <li><a href="#ReferencesToThemeAttributes">Mengacu atribut gaya</a></li>
+      </ol>
+    </li>
+    <li><a href="#PlatformResources">Mengakses Sumber Daya Platform</a></li>
+  </ol>
+
+  <h2>Lihat juga</h2>
+  <ol>
+    <li><a href="providing-resources.html">Menyediakan Sumber Daya</a></li>
+    <li><a href="available-resources.html">Tipe Sumber Daya</a></li>
+  </ol>
+</div>
+</div>
+
+
+
+
+<p>Setelah Anda menyediakan sumber daya dalam aplikasi Anda (yang dibicarakan di <a href="providing-resources.html">Menyediakan Sumber Daya</a>), Anda bisa menerapkannya dengan
+mengacu ID sumber dayanya. Semua ID sumber daya didefinisikan di kelas {@code R} proyek Anda, yang
+dihasilkan oleh alat {@code aapt} secara otomatis.</p>
+
+<p>Bila aplikasi Anda dikompilasi, {@code aapt} akan membuat kelas {@code R}, yang berisi
+ID sumber daya untuk semua sumber daya dalam direktori {@code
+res/} Anda. Untuk masing-masing tipe sumber daya, ada subkelas {@code R} (misalnya,
+{@code R.drawable} untuk semua sumber daya yang bisa ditarik), dan untuk masing-masing sumber daya dari tipe itu, ada satu integer statis
+ (misalnya, {@code R.drawable.icon}). Integer ini adalah ID sumber daya yang bisa Anda gunakan
+untuk mengambil sumber daya Anda.</p>
+
+<p>Walaupun kelas {@code R} adalah tempat menyebutkan ID sumber daya, Anda tidak perlu
+melihat ke sana untuk menemukan ID sumber daya. ID sumber daya selalu terdiri dari:</p>
+<ul>
+  <li><em>Tipe sumber daya</em>: Masing-masing sumber daya dikelompokkan menjadi "tipe", misalnya {@code
+string}, {@code drawable}, dan {@code layout}. Untuk mengetahui selengkapnya tentang berbagai tipe, lihat <a href="available-resources.html">Tipe Sumber Daya</a>.
+  </li>
+  <li><em>Nama sumber daya</em>, bisa berupa: nama file,
+tidak termasuk ekstensi; atau nilai dalam atribut {@code android:name} XML, jika 
+sumber daya itu sebuah nilai sederhana (misalnya sebuah string).</li>
+</ul>
+
+<p>Ada dua cara untuk mengakses sumber daya:</p>
+<ul>
+  <li><strong>Dalam kode:</strong> Menggunakan integer statis dari subkelas dari kelas {@code R}
+, misalnya:
+    <pre class="classic no-pretty-print">R.string.hello</pre>
+    <p>{@code string} adalah tipe sumber daya dan {@code hello} adalah nama sumber daya. Ada banyak
+API Android yang bisa mengakses sumber daya Anda bila Anda menyediakan ID sumber daya dengan format ini. Lihat
+<a href="#ResourcesFromCode">Mengakses Sumber Daya dalam Kode</a>.</p>
+  </li>
+  <li><strong>Dalam XML:</strong> Menggunakan sebuah sintaks XML khusus yang juga berkaitan dengan
+ID sumber daya yang didefinisikan dalam kelas {@code R}, misalnya:
+    <pre class="classic no-pretty-print">&#64;string/hello</pre>
+    <p>{@code string} adalah tipe sumber daya dan {@code hello} adalah nama sumber daya. Anda bisa menggunakan
+sintaks ini dalam sumber daya XML di mana saja Anda ingin menyediakan sebuah nilai dalam sebuah sumber daya. Lihat <a href="#ResourcesFromXml">Mengakses Sumber Daya dari XML</a>.</p>
+  </li>
+</ul>
+
+
+
+<h2 id="ResourcesFromCode">Mengakses Sumber Daya dalam Kode </h2>
+
+<p>Anda bisa menggunakan sumber daya dalam kode dengan menyalurkan ID sumber daya sebagai sebuah parameter metode. Misalnya,
+ Anda bisa mengatur sebuah {@link android.widget.ImageView} agar menggunakan sumber daya{@code res/drawable/myimage.png}
+dengan menggunakan {@link android.widget.ImageView#setImageResource(int) setImageResource()}:</p>
+<pre>
+ImageView imageView = (ImageView) findViewById(R.id.myimageview);
+imageView.setImageResource(<strong>R.drawable.myimage</strong>);
+</pre>
+
+<p>Anda juga bisa mengambil tiap sumber daya dengan menggunakan berbagai metode di {@link
+android.content.res.Resources}, di mana Anda bisa mendapatkan instance
+ {@link android.content.Context#getResources()}.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Akses ke File Asli</h2>
+
+<p>Walaupun tidak lazim, Anda mungkin perlu mengakses file dan direktori asli Anda. Jika demikian, maka
+menyimpan file Anda di {@code res/} tidak akan berhasil, karena satu-satunya cara untuk membaca sebuah sumber daya dari
+{@code res/} adalah dengan ID sumber daya. Sebagai gantinya, Anda bisa menyimpan sumber daya dalam direktori
+{@code assets/}.</p>
+<p>File yang tersimpan di direktori {@code assets/} <em>tidak</em> diberi ID
+sumber daya, sehingga Anda tidak bisa mengacunya melalui kelas {@code R} atau dari sumber daya XML. Sebagai gantinya, Anda bisa melakukan
+query file di direktori {@code assets/} seperti sebuah sistem file biasa dan membaca data mentah dengan menggunakan
+{@link android.content.res.AssetManager}.</p>
+<p>Akan tetapi, jika yang Anda butuhkan hanya kemampuan membaca data mentah (misalnya sebuah file video atau audio),
+maka simpanlah file itu di direktori {@code res/raw/} dan baca aliran byte dengan menggunakan {@link
+android.content.res.Resources#openRawResource(int) openRawResource()}.</p>
+
+</div>
+</div>
+
+
+<h3>Sintaks</h3>
+
+<p>Inilah sintaks untuk mengacu sumber daya dalam kode:</p>
+
+<pre class="classic no-pretty-print">
+[<em>&lt;package_name&gt;</em>.]R.<em>&lt;resource_type&gt;</em>.<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li><em> {@code &lt;package_name&gt;}</em>adalah nama paket yang di dalamnya terdapat sumber daya (tidak
+dibutuhkan bila mengacu sumber daya dari paket Anda sendiri).</li>
+  <li><em>{@code &lt;resource_type&gt;}</em> adalah subkelas {@code R} untuk tipe sumber daya.</li>
+  <li><em>{@code &lt;resource_name&gt;}</em> bisa berupa nama file sumber daya
+tanpa ekstensi atau nilai atribut {@code android:name} dalam elemen XML (untuk nilai
+sederhana).</li>
+</ul>
+<p>Lihat <a href="available-resources.html">Tipe Sumber Daya</a> untuk
+informasi selengkapnya tentang masing-masing tipe sumber daya dan cara mengacunya.</p>
+
+
+<h3>Kasus penggunaan</h3>
+
+<p>Ada banyak metode yang menerima parameter ID sumber daya dan Anda bisa mengambil sumber daya dengan menggunakan
+metode di {@link android.content.res.Resources}. Anda bisa mengambil instance {@link
+android.content.res.Resources} dengan {@link android.content.Context#getResources
+Context.getResources()}.</p>
+
+
+<p>Berikut adalah beberapa contoh cara mengakses sumber daya dalam kode:</p>
+
+<pre>
+// Load a background for the current screen from a drawable resource
+{@link android.app.Activity#getWindow()}.{@link
+android.view.Window#setBackgroundDrawableResource(int)
+setBackgroundDrawableResource}(<strong>R.drawable.my_background_image</strong>) ;
+
+// Set the Activity title by getting a string from the Resources object, because
+//  this method requires a CharSequence rather than a resource ID
+{@link android.app.Activity#getWindow()}.{@link android.view.Window#setTitle(CharSequence)
+setTitle}(getResources().{@link android.content.res.Resources#getText(int)
+getText}(<strong>R.string.main_title</strong>));
+
+// Load a custom layout for the current screen
+{@link android.app.Activity#setContentView(int)
+setContentView}(<strong>R.layout.main_screen</strong>);
+
+// Set a slide in animation by getting an Animation from the Resources object
+mFlipper.{@link android.widget.ViewAnimator#setInAnimation(Animation)
+setInAnimation}(AnimationUtils.loadAnimation(this,
+        <strong>R.anim.hyperspace_in</strong>));
+
+// Set the text on a TextView object using a resource ID
+TextView msgTextView = (TextView) findViewById(<strong>R.id.msg</strong>);
+msgTextView.{@link android.widget.TextView#setText(int)
+setText}(<strong>R.string.hello_message</strong>);
+</pre>
+
+
+<p class="caution"><strong>Perhatian:</strong> Anda tidak boleh memodifikasi file {@code
+R.java} secara manual&mdash;, ini dihasilkan oleh alat {@code aapt} bila proyek Anda telah
+dikompilasi. Perubahan apa pun akan ditimpa bila nanti Anda mengompilasi.</p>
+
+
+
+<h2 id="ResourcesFromXml">Mengakses Sumber Daya dari XML</h2>
+
+<p>Anda bisa mendefinisikan nilai untuk beberapa atribut dan elemen XML dengan menggunakan
+acuan ke sumber daya yang ada. Anda akan sering melakukannya saat membuat file layout, untuk
+memasok string dan gambar bagi widget Anda.</p>
+
+<p>Misalnya, jika Anda menambahkan sebuah {@link android.widget.Button} ke layout, Anda harus menggunakan
+sebuah <a href="string-resource.html">sumber daya string</a> bagi teks tombolnya:</p>
+
+<pre>
+&lt;Button
+    android:layout_width="fill_parent"
+    android:layout_height="wrap_content"
+    android:text="<strong>@string/submit</strong>" /&gt;
+</pre>
+
+
+<h3>Sintaks</h3>
+
+<p>Berikut adalah sintaks untuk mengacu sumber daya di sumber daya XML:</p>
+
+<pre class="classic no-pretty-print">
+&#64;[<em>&lt;package_name&gt;</em>:]<em>&lt;resource_type&gt;</em>/<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li>{@code &lt;package_name&gt;} adalah nama paket yang di dalamnya terdapat sumber daya (tidak
+dibutuhkan bila mengacu sumber daya dari paket yang sama)</li>
+  <li>{@code &lt;resource_type&gt;} adalah subkelas
+{@code R} untuk tipe sumber daya</li>
+  <li>{@code &lt;resource_name&gt;} bisa berupa nama file sumber daya
+tanpa ekstensi atau nilai atribut {@code android:name} dalam elemen XML (untuk nilai
+sederhana).</li>
+</ul>
+
+<p>Lihat <a href="available-resources.html">Tipe Sumber Daya</a> untuk
+informasi selengkapnya tentang masing-masing tipe sumber daya dan cara mengacunya.</p>
+
+
+<h3>Kasus penggunaan</h3>
+
+<p>Dalam beberapa kasus, Anda harus menggunakan sumber daya untuk suatu nilai dalam XML (misalnya, untuk menerapkan gambar yang bisa ditarik
+pada widget), namun Anda juga bisa menggunakan sumber daya di XML mana saja yang menerima nilai sederhana. Misalnya, jika
+Anda mempunyai file sumber daya berikut yang berisi <a href="more-resources.html#Color">sumber daya warna</a> dan <a href="string-resource.html">sumber daya string</a>:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+   &lt;color name="opaque_red">#f00&lt;/color>
+   &lt;string name="hello">Hello!&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>Anda bisa menggunakan sumber daya ini dalam file layout berikut untuk mengatur warna teks dan
+string teks:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;color/opaque_red</strong>&quot;
+    android:text=&quot;<strong>&#64;string/hello</strong>&quot; /&gt;
+</pre>
+
+<p>Dalam hal ini, Anda tidak perlu menyebutkan nama paket dalam sumber daya acuan karena
+sumber daya berasal dari paket Anda sendiri. Untuk
+mengacu sumber daya sistem, Anda perlu memasukkan nama paketnya. Misalnya:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;android:color/secondary_text_dark</strong>&quot;
+    android:text=&quot;&#64;string/hello&quot; /&gt;
+</pre>
+
+<p class="note"><strong>Catatan:</strong> Anda harus menggunakan sumber daya string sepanjang 
+waktu, sehingga aplikasi Anda bisa dilokalkan untuk bahasa lain. 
+Untuk informasi tentang cara menciptakan
+sumber daya alternatif (seperti string lokal), lihat <a href="providing-resources.html#AlternativeResources">Menyediakan Sumber Daya Alternatif
+</a>. Untuk panduan lengkap melokalkan aplikasi Anda ke bahasa lain,
+lihat <a href="localization.html">Pelokalan</a>.</p>
+
+<p>Anda bahkan bisa menggunakan sumber daya dalam XML untuk membuat alias. Misalnya, Anda bisa membuat
+sumber daya yang bisa ditarik yang merupakan alias bagi sumber daya yang bisa ditarik lainnya:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/other_drawable" />
+</pre>
+
+<p>Hal ini terdengar berlebihan, namun bisa sangat berguna saat menggunakan sumber daya alternatif. Baca selengkapnya tentang
+<a href="providing-resources.html#AliasResources">Membuat sumber daya alias</a>.</p>
+
+
+
+<h3 id="ReferencesToThemeAttributes">Mengacu atribut gaya</h3>
+
+<p>Sumber daya atribut gaya memungkinkan Anda mengacu nilai
+suatu atribut dalam tema yang diterapkan saat ini. Dengan mengacu sebuah atribut gaya memungkinkan Anda
+menyesuaikan tampilan elemen UI dengan mengatur gayanya agar cocok dengan beragam variasi standar yang dipasok oleh
+tema saat ini, sebagai ganti memasok nilai yang ditanamkan (hard-coded). Mengacu sebuah atribut gaya
+pada dasarnya adalah "gunakan gaya yang didefinisikan oleh atribut ini, dalam tema saat ini".</p>
+
+<p>Untuk mengacu sebuah atribut gaya, sintaks namanya hampir sama dengan format sumber daya normal
+, namun sebagai ganti simbol @ ({@code @}), gunakan sebuah tanda tanya ({@code ?}), dan
+porsi tipe sumber daya bersifat opsional. Sebagai contoh:</p>
+
+<pre class="classic">
+?[<em>&lt;package_name&gt;</em>:][<em>&lt;resource_type&gt;</em>/]<em>&lt;resource_name&gt;</em>
+</pre>
+
+<p>Misalnya, begini cara Anda mengacu suatu atribut untuk mengatur warna teks agar cocok dengan
+warna teks "utama" tema sistem:</p>
+
+<pre>
+&lt;EditText id=&quot;text&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;wrap_content&quot;
+    android:textColor=&quot;<strong>?android:textColorSecondary</strong>&quot;
+    android:text=&quot;&#64;string/hello_world&quot; /&gt;
+</pre>
+
+<p>Di sini, atribut {@code android:textColor} menyebutkan nama atribut gaya
+dalam tema saat ini. Android kini menggunakan nilai yang diterapkan pada atribut gaya {@code android:textColorSecondary}
+sebagai nilai untuk {@code android:textColor} dalam widget ini. Karena alat sumber daya
+mengetahui bahwa atribut sumber daya diharapkan dalam konteks ini,
+maka Anda tidak perlu menyatakan tipenyanya secara eksplisit (yang akan berupa
+<code>?android:attr/textColorSecondary</code>)&mdash;Anda bisa mengecualikan tipe {@code attr}.</p>
+
+
+
+
+<h2 id="PlatformResources">Mengakses Sumber Daya Platform</h2>
+
+<p>Android berisi sejumlah sumber daya standar, seperti gaya, tema, dan layout. Untuk
+mengakses semua sumber daya ini, tetapkan acuan sumber daya Anda dengan nama paket
+<code>android</code>. Misalnya, Android menyediakan sumber daya layout yang bisa Anda gunakan untuk
+item daftar dalam{@link android.widget.ListAdapter}:</p>
+
+<pre>
+{@link android.app.ListActivity#setListAdapter(ListAdapter)
+setListAdapter}(new {@link
+android.widget.ArrayAdapter}&lt;String&gt;(this, <strong>android.R.layout.simple_list_item_1</strong>, myarray));
+</pre>
+
+<p>Dalam contoh ini, {@link android.R.layout#simple_list_item_1} adalah sumber daya layout yang didefinisikan oleh
+platform untuk item di {@link android.widget.ListView}. Anda bisa menggunakannya sebagai ganti menciptakan
+layout sendiri untuk item daftar. Untuk informasi selengkapnya, lihat panduan pengembang 
+<a href="{@docRoot}guide/topics/ui/layout/listview.html">List View</a>.</p>
+
diff --git a/docs/html-intl/intl/in/guide/topics/resources/overview.jd b/docs/html-intl/intl/in/guide/topics/resources/overview.jd
new file mode 100644
index 0000000..966800c
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/resources/overview.jd
@@ -0,0 +1,103 @@
+page.title=Ikhtisar Sumber Daya
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Topik</h2>
+  <ol>
+    <li><a href="providing-resources.html">Menyediakan Sumber Daya</a></li>
+    <li><a href="accessing-resources.html">Mengakses Sumber Daya</a></li>
+    <li><a href="runtime-changes.html">Menangani Perubahan Runtime</a></li>
+    <li><a href="localization.html">Pelokalan</a></li>
+  </ol>
+
+  <h2>Acuan</h2>
+  <ol>
+    <li><a href="available-resources.html">Tipe Sumber Daya</a></li>
+  </ol>
+</div>
+</div>
+
+
+<p>Anda harus selalu mengeksternalkan sumber daya seperti gambar dan string dari kode
+aplikasi, agar Anda bisa memeliharanya secara independen. Mengeksternalkan
+sumber daya juga membuat Anda dapat menyediakan sumber daya alternatif yang mendukung konfigurasi
+perangkat tertentu seperti bahasa atau ukuran layar yang berbeda, yang semakin penting
+seiring semakin banyak tersedianya perangkat berbasis Android dengan konfigurasi berbeda. Untuk
+memberikan kompatibilitas dengan konfigurasi berbeda, Anda harus menata sumber daya dalam 
+direktori {@code res/} proyek Anda, menggunakan berbagai subdirektori yang mengelompokkan sumber daya menurut tipe
+dan konfigurasinya.</p>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram1.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Gambar 1.</strong> Dua perangkat berbeda, masing-masing menggunakan layout default
+(aplikasi tidak menyediakan layout alternatif).</p>
+</div>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Gambar 2.</strong> Dua perangkat berbeda, masing-masing menggunakan layout berbeda yang tersedia untuk
+ukuran layar berbeda.</p>
+</div>
+
+<p>Bagi setiap tipe sumber daya, Anda bisa menetapkan sumber daya <em>default</em> dan sumber daya
+<em>alternatif</em> untuk aplikasi Anda:</p>
+<ul>
+  <li>Sumber daya default adalah sumber daya yang harus digunakan apa pun
+konfigurasi perangkatnya atau jika tidak ada sumber daya alternatif yang sesuai 
+dengan konfigurasi saat ini.</li>
+  <li>Sumber daya alternatif adalah sumber daya yang Anda desain untuk digunakan dengan
+konfigurasi tertentu. Untuk menetapkan bahwa satu kelompok sumber daya ditujukan bagi konfigurasi tertentu,
+tambahkan qualifier konfigurasi yang sesuai ke nama direktori.</li>
+</ul>
+
+<p>Misalnya, walaupun layout
+UI default Anda disimpan dalam direktori {@code res/layout/}, Anda dapat menetapkan layout berbeda
+untuk digunakan saat layar dalam orientasi lanskap, dengan menyimpannya dalam direktori {@code res/layout-land/}
+. Android secara otomatis memberlakukan sumber daya yang sesuai dengan mencocokkan konfigurasi perangkat
+saat ini dengan nama direktori sumber daya.</p>
+
+<p>Gambar 1 mengilustrasikan cara sistem memberlakukan layout yang sama untuk
+dua perangkat berbeda saat sumber daya alternatif tidak tersedia. Gambar 2 menunjukkan
+aplikasi yang sama saat menambahkan sumber daya layout alternatif untuk layar yang lebih besar.</p>
+
+<p>Dokumen-dokumen berikut berisi panduan lengkap mengenai cara menata sumber daya aplikasi,
+menetapkan sumber daya alternatif, mengaksesnya dalam aplikasi, dan banyak lagi:</p>
+
+<dl>
+  <dt><strong><a href="providing-resources.html">Menyediakan Sumber Daya</a></strong></dt>
+  <dd>Jenis sumber daya yang dapat Anda sediakan dalam aplikasi, tempat menyimpannya, dan cara membuat sumber daya
+alternatif untuk konfigurasi perangkat tertentu.</dd>
+  <dt><strong><a href="accessing-resources.html">Mengakses Sumber Daya</a></strong></dt>
+  <dd>Cara menggunakan sumber daya yang telah Anda sediakan, baik dengan mengacunya dari kode
+aplikasi Anda atau dari sumber daya XML lainnya.</dd>
+  <dt><strong><a href="runtime-changes.html">Menangani Perubahan Runtime</a></strong></dt>
+  <dd>Cara mengelola perubahan konfigurasi yang terjadi saat Aktivitas Anda berjalan.</dd>
+  <dt><strong><a href="localization.html">Pelokalan</a></strong></dt>
+  <dd>Panduan dari pengalaman untuk melokalkan aplikasi menggunakan sumber daya alternatif. Walaupun ini
+hanya satu penggunaan tertentu dari sumber daya alternatif, hal ini sangat penting dalam meraih pengguna lebih
+banyak.</dd>
+  <dt><strong><a href="available-resources.html">Tipe Sumber Daya</a></strong></dt>
+  <dd>Acuan dari berbagai tipe sumber daya yang dapat Anda sediakan, menjelaskan elemen-elemen XML,
+atribut, dan sintaksnya. Misalnya, acuan ini menunjukkan kepada Anda cara membuat sumber daya untuk
+menu aplikasi, drawable, animasi, dan lainnya.</dd>
+</dl>
+
+<!--
+<h2>Raw Assets</h2>
+
+<p>An alternative to saving files in {@code res/} is to save files in the {@code
+assets/} directory. This should only be necessary if you need direct access to original files and
+directories by name. Files saved in the {@code assets/} directory will not be given a resource
+ID, so you can't reference them through the {@code R} class or from XML resources. Instead, you can
+query data in the {@code assets/} directory like an ordinary file system, search through the
+directory and
+read raw data using {@link android.content.res.AssetManager}. For example, this can be more useful
+when dealing with textures for a game. However, if you only need to read raw data from a file
+(such as a video or audio file), then you should save files into the {@code res/raw/} directory and
+then read a stream of bytes using {@link android.content.res.Resources#openRawResource(int)}. This
+is uncommon, but if you need direct access to original files in {@code assets/}, refer to the {@link
+android.content.res.AssetManager} documentation.</p>
+-->
diff --git a/docs/html-intl/intl/in/guide/topics/resources/providing-resources.jd b/docs/html-intl/intl/in/guide/topics/resources/providing-resources.jd
new file mode 100644
index 0000000..d6bbfc5
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/resources/providing-resources.jd
@@ -0,0 +1,1094 @@
+page.title=Menyediakan Sumber Daya
+parent.title=Sumber Daya Aplikasi
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Tampilan Cepat</h2>
+  <ul>
+    <li>Berbagai tipe sumber daya termasuk dalam subdirektori {@code res/}</li>
+    <li>Sumber daya alternatif menyediakan file sumber daya dengan konfigurasi tertentu</li>
+    <li>Sertakan selalu sumber daya default agar aplikasi Anda tidak bergantung pada
+konfigurasi perangkat tertentu</li>
+  </ul>
+  <h2>Dalam dokumen ini</h2>
+  <ol>
+    <li><a href="#ResourceTypes">Mengelompokkan Tipe Sumber Daya</a></li>
+    <li><a href="#AlternativeResources">Menyediakan Sumber Daya Alternatif</a>
+      <ol>
+        <li><a href="#QualifierRules">Aturan penamaan qualifier</a></li>
+        <li><a href="#AliasResources">Membuat sumber daya alias</a></li>
+      </ol>
+    </li>
+    <li><a href="#Compatibility">Menyediakan Kompatibilitas Perangkat Terbaik dengan Sumber Daya</a></li>
+    <li><a href="#BestMatch">Cara Android Menemukan Sumber Daya yang Paling Cocok</a></li>
+  </ol>
+
+  <h2>Lihat juga</h2>
+  <ol>
+    <li><a href="accessing-resources.html">Mengakses Sumber Daya</a></li>
+    <li><a href="available-resources.html">Tipe Sumber Daya</a></li>
+    <li><a href="{@docRoot}guide/practices/screens_support.html">Mendukung Beberapa
+Layar</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Anda harus selalu mengeksternalkan sumber daya aplikasi seperti gambar dan string dari kode
+, agar Anda bisa memeliharanya secara independen. Anda juga harus menyediakan sumber daya alternatif untuk
+konfigurasi perangkat tertentu, dengan mengelompokkannya dalam direktori sumber daya bernama khusus. Saat
+runtime, Android menggunakan sumber daya yang sesuai berdasarkan konfigurasi saat ini. Misalnya, Anda mungkin
+ingin menyediakan layout UI berbeda bergantung pada ukuran layar atau string berbeda bergantung pada
+pengaturan bahasa.</p>
+
+<p>Setelah mengeksternalkan sumber daya aplikasi, Anda dapat mengaksesnya menggunakan
+ID sumber daya yang dibuat dalam kelas {@code R} proyek Anda. Cara menggunakan
+sumber daya dalam aplikasi dibahas dalam <a href="accessing-resources.html">Mengakses
+Sumber Daya</a>. Dokumen ini menampilkan cara mengelompokkan sumber daya
+dalam proyek Android Anda dan menyediakan sumber daya alternatif untuk konfigurasi perangkat tertentu.</p>
+
+
+<h2 id="ResourceTypes">Mengelompokkan Tipe Sumber Daya</h2>
+
+<p>Anda harus menempatkan setiap tipe sumber daya dalam subdirektori spesifik pada direktori
+{@code res/} proyek. Misalnya, inilah hierarki file untuk proyek sederhana:</p>
+
+<pre class="classic no-pretty-print">
+MyProject/
+    src/  <span style="color:black">
+        MyActivity.java  </span>
+    res/
+        drawable/  <span style="color:black">
+            graphic.png  </span>
+        layout/  <span style="color:black">
+            main.xml
+            info.xml</span>
+        mipmap/  <span style="color:black">
+            icon.png </span>
+        values/  <span style="color:black">
+            strings.xml  </span>
+</pre>
+
+<p>Seperti yang Anda lihat dalam contoh ini, direktori {@code res/} berisi semua sumber daya (dalam
+subdirektori): sumber daya gambar, dua sumber daya layout, direktori {@code mipmap/} untuk ikon
+launcher, dan satu file sumber daya string. Nama direktori
+sumber daya penting dan dijelaskan dalam tabel 1.</p>
+
+<p class="note"><strong>Catatan:</strong> Untuk informasi selengkapnya tentang menggunakan folder mipmap, lihat
+<a href="{@docRoot}tools/projects/index.html#mipmap">Mengelola Ikhtisar Proyek</a>.</p>
+
+<p class="table-caption" id="table1"><strong>Tabel 1.</strong> Direktori sumber daya
+didukung dalam direktori proyek {@code res/}.</p>
+
+<table>
+  <tr>
+    <th scope="col">Direktori</th>
+    <th scope="col">Tipe Sumber Daya</th>
+  </tr>
+
+  <tr>
+    <td><code>animator/</code></td>
+    <td>File XML yang mendefinisikan <a href="{@docRoot}guide/topics/graphics/prop-animation.html">animasi
+properti</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>anim/</code></td>
+    <td>File XML yang mendefinisikan <a href="{@docRoot}guide/topics/graphics/view-animation.html#tween-animation">animasi
+tween</a>. (Animasi properti juga dapat disimpan dalam direktori ini, namun
+direktori {@code animator/} lebih disukai bagi animasi properti agar kedua tipe
+ini dapat dibedakan.)</td>
+  </tr>
+
+  <tr>
+    <td><code>color/</code></td>
+    <td>File XML yang mendefinisikan daftar status warna. Lihat <a href="color-list-resource.html">Sumber Daya
+Daftar Status Warna</a></td>
+  </tr>
+
+  <tr>
+    <td><code>drawable/</code></td>
+
+    <td><p>File bitmap ({@code .png}, {@code .9.png}, {@code .jpg}, {@code .gif}) atau file XML yang
+dikompilasi menjadi subtipe sumber daya drawable berikut:</p>
+      <ul>
+        <li>File bitmap</li>
+        <li>Nine-Patches (bitmap yang dapat diubah ukurannya)</li>
+        <li>Daftar status</li>
+        <li>Bentuk</li>
+        <li>Drawable animasi</li>
+        <li>Drawable lainnya</li>
+      </ul>
+      <p>Lihat <a href="drawable-resource.html">Sumber Daya Drawable</a>.</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>mipmap/</code></td>
+    <td>File drawable untuk densitas ikon launcher yang berbeda. Untuk informasi selengkapnya tentang
+ mengelola ikon launcher dengan folder {@code mipmap/}, lihat
+<a href="{@docRoot}tools/project/index.html#mipmap">Mengelola Ikhtisar Proyek</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>layout/</code></td>
+    <td>File XML yang mendefinisikan layout antarmuka pengguna.
+        Lihat <a href="layout-resource.html">Sumber Daya Layout</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>menu/</code></td>
+    <td>File XML yang mendefinisikan menu aplikasi, seperti Menu Opsi, Menu Konteks, atau Sub
+Menu. Lihat <a href="menu-resource.html">Sumber Daya Menu</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>raw/</code></td>
+    <td><p>File tak didukung yang akan disimpan dalam bentuk mentah. Untuk membuka sumber daya ini dengan
+{@link java.io.InputStream} mentah, panggil {@link android.content.res.Resources#openRawResource(int)
+Resources.openRawResource()} dengan ID sumber daya, yaitu {@code R.raw.<em>filename</em>}.</p>
+      <p>Akan tetapi, jika Anda butuh akses ke nama file asli dan hierarki file, Anda bisa mempertimbangkan
+untuk menyimpan beberapa sumber daya dalam direktori {@code
+assets/} (sebagai ganti {@code res/raw/}). File dalam {@code assets/} tidak diberi
+ID sumber daya, jadi Anda bisa membacanya hanya dengan menggunakan {@link android.content.res.AssetManager}.</p></td>
+  </tr>
+
+  <tr>
+    <td><code>values/</code></td>
+    <td><p>File XML yang berisi nilai-nilai sederhana, seperti string, integer, dan warna.</p>
+      <p>Walaupun file sumber daya XML dalam subdirektori {@code res/} lainnya mendefinisikan satu sumber daya
+berdasarkan nama file XML, file dalam direktori {@code values/} menggambarkan beberapa sumber daya.
+Untuk file dalam direktori ini, setiap anak elemen {@code &lt;resources&gt;} mendefinisikan satu sumber
+daya. Misalnya, elemen {@code &lt;string&gt;} membuat sumber daya
+{@code R.string} dan elemen {@code &lt;color&gt;} membuat sumber daya {@code R.color}
+.</p>
+      <p>Karena setiap sumber daya didefinisikan dengan elemen XML-nya sendiri, Anda bisa bebas menamai file
+ini dan menempatkan tipe sumber daya berbeda dalam satu file. Akan tetapi, agar jelas, Anda mungkin
+perlu menempatkan tipe sumber daya unik dalam file berbeda. Misalnya, berikut ini adalah beberapa ketentuan
+penamaan file untuk sumber daya yang dapat Anda buat dalam direktori ini:</p>
+      <ul>
+        <li>arrays.xml untuk larik sumber daya tipe (<a href="more-resources.html#TypedArray">larik bertipe</a>).</li>
+        <li>colors.xml untuk <a href="more-resources.html#Color">nilai warna</a></li>
+        <li>dimens.xml untuk <a href="more-resources.html#Dimension">nilai dimensi</a>.</li>
+        <li>strings.xml untuk <a href="string-resource.html">nilai
+string</a>.</li>
+        <li>styles.xml untuk <a href="style-resource.html">gaya</a>.</li>
+      </ul>
+      <p>Lihat <a href="string-resource.html">Sumber Daya String</a>,
+        <a href="style-resource.html">Sumber Daya Gaya</a>, dan 
+        <a href="more-resources.html">Tipe Sumber Daya Lainnya</a>.</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>xml/</code></td>
+    <td>File XML tak didukung yang bisa dibaca saat runtime dengan memanggil {@link
+android.content.res.Resources#getXml(int) Resources.getXML()}. Berbagai file konfigurasi XML
+harus disimpan di sini, seperti <a href="{@docRoot}guide/topics/search/searchable-config.html">konfigurasi yang dapat dicari</a>.
+<!-- or preferences configuration. --></td>
+  </tr>
+</table>
+
+<p class="caution"><strong>Perhatian:</strong> Jangan menyimpan file sumber daya secara langsung dalam
+direktori {@code res/}&mdash; karena akan menyebabkan kesalahan compiler.</p>
+
+<p>Untuk informasi selengkapnya tentang tipe sumber daya tertentu, lihat dokumentasi <a href="available-resources.html">Tipe Sumber Daya</a>.</p>
+
+<p>Sumber daya yang disimpan dalam subdirektori yang didefinisikan dalam tabel 1 adalah sumber daya
+"default" Anda. Berarti sumber daya ini mendefinisikan desain default dan konten untuk aplikasi Anda.
+Akan tetapi, beberapa tipe perangkat berbasis Android mungkin memanggil tipe sumber daya yang berbeda.
+Misalnya, jika perangkat memiliki layar yang lebih besar daripada layar normal, maka Anda harus
+menyediakan sumber daya layout berbeda yang memanfaatkan ruang layar yang lebih besar. Atau, jika perangkat
+memiliki pengaturan bahasa berbeda, maka Anda harus menyediakan sumber daya string berbeda yang menerjemahkan teks dalam
+antarmuka pengguna Anda. Untuk menyediakan sumber daya berbeda ini bagi
+konfigurasi perangkat yang berbeda, Anda harus menyediakan sumber daya alternatif, selain sumber
+daya default.</p>
+
+
+<h2 id="AlternativeResources">Menyediakan Sumber Daya Alternatif</h2>
+
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Gambar 1.</strong> Dua perangkat berbeda, masing-masing menggunakan sumber daya layout berbeda.</p>
+</div>
+
+<p>Hampir setiap aplikasi harus menyediakan sumber daya alternatif untuk mendukung konfigurasi
+perangkat tertentu. Misalnya, Anda harus menyertakan sumber daya drawable alternatif untuk densitas layar
+berbeda dan sumber daya string alternatif untuk bahasa yang berbeda. Saat runtime, Android
+akan mendeteksi konfigurasi perangkat aktif dan memuat
+sumber daya yang sesuai untuk aplikasi Anda.</p>
+
+<p>Untuk menyebutkan alternatif konfigurasi tertentu untuk satu set sumber daya:</p>
+<ol>
+  <li>Buat direktori baru dalam {@code res/} yang dinamai dalam bentuk {@code
+<em>&lt;resources_name&gt;</em>-<em>&lt;config_qualifier&gt;</em>}.
+    <ul>
+      <li><em>{@code &lt;resources_name&gt;}</em> adalah nama direktori dari sumber daya default
+terkait (didefinisikan dalam tabel 1).</li>
+      <li><em>{@code &lt;qualifier&gt;}</em> adalah nama yang menetapkan konfigurasi individu
+yang akan digunakan sumber daya ini (didefinisikan dalam tabel 2).</li>
+    </ul>
+    <p>Anda bisa menambahkan lebih dari satu <em>{@code &lt;qualifier&gt;}</em>. Pisahkan masing-masing
+dengan tanda hubung.</p>
+    <p class="caution"><strong>Perhatian:</strong> Saat menambahkan beberapa qualifier, Anda
+harus menempatkannya dalam urutan yang sama dengan yang tercantum dalam tabel 2. Jika urutan qualifier
+salah, sumber daya akan diabaikan.</p>
+  </li>
+  <li>Simpan masing-masing sumber daya alternatif dalam direktori baru ini. File sumber daya harus dinamai
+sama persis dengan file sumber daya default.</li>
+</ol>
+
+<p>Misalnya, berikut ini beberapa sumber daya default dan sumber daya alternatif:</p>
+
+<pre class="classic no-pretty-print">
+res/
+    drawable/   <span style="color:black">
+        icon.png
+        background.png    </span>
+    drawable-hdpi/  <span style="color:black">
+        icon.png
+        background.png  </span>
+</pre>
+
+<p>Qualifier {@code hdpi} menunjukkan bahwa sumber daya dalam direktori itu diperuntukkan bagi perangkat dengan
+layar densitas tinggi. Gambar di masing-masing direktori drawable memiliki ukuran untuk densitas layar
+tertentu, namun nama filenya persis
+sama. Dengan demikian, ID sumber daya yang Anda gunakan untuk mengacu gambar {@code icon.png} atau @code
+background.png} selalu sama, namun Android memilih
+versi masing-masing sumber daya yang paling cocok dengan perangkat saat ini, dengan membandingkan informasi konfigurasi
+perangkat dengan qualifier dalam nama direktori sumber daya.</p>
+
+<p>Android mendukung beberapa qualifier konfigurasi dan Anda dapat
+menambahkan beberapa qualifier ke satu nama direktori, dengan memisahkan setiap qualifier dengan tanda hubung. Tabel 2
+berisi daftar qualifier konfigurasi yang valid, dalam urutan prioritas&mdash;jika Anda menggunakan beberapa
+qualifier sebagai direktori sumber daya, Anda harus menambahkannya ke nama direktori sesuai urutan
+yang tercantum dalam tabel.</p>
+
+
+<p class="table-caption" id="table2"><strong>Tabel 2.</strong> Nama-nama
+qualifier konfigurasi.</p>
+<table>
+    <tr>
+        <th>Konfigurasi</th>
+        <th>Nilai-nilai Qualifier</th>
+        <th>Keterangan</th>
+    </tr>
+    <tr id="MccQualifier">
+      <td>MCC dan MNC</td>
+      <td>Contoh:<br/>
+        <code>mcc310</code><br/>
+        <code><nobr>mcc310-mnc004</nobr></code><br/>
+        <code>mcc208-mnc00</code><br/>
+        dll.
+      </td>
+      <td>
+        <p>Kode negara seluler (MCC), bisa diikuti dengan kode jaringan seluler (MNC)
+ dari kartu SIM dalam perangkat. Misalnya, <code>mcc310</code> adalah AS untuk operator mana saja,
+ <code>mcc310-mnc004</code> adalah AS untuk Verizon, dan <code>mcc208-mnc00</code> Prancis untuk
+Orange.</p>
+        <p>Jika perangkat menggunakan koneksi radio (ponsel GSM), nilai-nilai MCC dan MNC berasal 
+dari kartu SIM.</p>
+        <p>Anda juga dapat menggunakan MNC saja (misalnya, untuk menyertakan sumber daya legal
+spesifik untuk negara itu di aplikasi Anda). Jika Anda perlu menetapkan hanya berdasarkan bahasa, maka gunakan qualifier
+<em>bahasa dan wilayah</em> sebagai gantinya (akan dibahas nanti). Jika Anda memutuskan untuk menggunakan qualifier MCC dan
+MNC, Anda harus melakukannya dengan hati-hati dan menguji apakah qualifier itu berjalan sesuai harapan.</p>
+        <p>Lihat juga bidang konfigurasi {@link
+android.content.res.Configuration#mcc}, dan {@link
+android.content.res.Configuration#mnc}, yang masing-masing menunjukkan kode negara seluler saat ini
+dan kode jaringan seluler.</p>
+      </td>
+    </tr>
+    <tr id="LocaleQualifier">
+      <td>Bahasa dan wilayah</td>
+      <td>Contoh:<br/>
+        <code>en</code><br/>
+        <code>fr</code><br/>
+        <code>en-rUS</code><br/>
+        <code>fr-rFR</code><br/>
+        <code>fr-rCA</code><br/>
+        dll.
+      </td>
+      <td><p>Bahasa didefinisikan oleh kode bahasa dua huruf <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php">ISO
+639-1</a>, bisa juga diikuti dengan kode wilayah 
+dua huruf <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html">ISO
+3166-1-alpha-2</a> (diawali dengan huruf kecil "{@code r}").
+        </p><p>
+        Kode <em>tidak</em> membedakan huruf besar atau kecil; awalan {@code r} akan digunakan untuk
+membedakan bagian wilayah.
+        Anda tidak bisa menetapkan wilayah saja.</p>
+        <p>Ini bisa berubah selama masa pakai
+aplikasi Anda jika pengguna mengubah bahasanya dalam pengaturan sistem. Lihat <a href="runtime-changes.html">Menangani Perubahan Runtime</a> untuk informasi tentang
+bagaimana hal ini dapat memengaruhi aplikasi Anda selama runtime.</p>
+        <p>Lihat <a href="localization.html">Pelokalan</a> untuk panduan lengkap melokalkan
+aplikasi Anda ke bahasa lain.</p>
+        <p>Lihat juga bidang konfigurasi {@link android.content.res.Configuration#locale} yang menunjukkan
+bahasa setempat yang digunakan saat ini.</p>
+      </td>
+    </tr>
+    <tr id="LayoutDirectionQualifier">
+      <td>Arah Layout</td>
+      <td><code>ldrtl</code><br/>
+        <code>ldltr</code><br/>
+      </td>
+      <td><p>Arah layout aplikasi Anda. {@code ldrtl} berarti "arah layout dari kanan ke kiri".
+ {@code ldltr} berarti "arah layout dari kiri ke kanan" dan merupakan nilai implisit default.
+      </p>
+      <p>Ini bisa berlaku untuk sumber daya mana pun seperti layout, drawable, atau nilai-nilai.
+      </p>
+      <p>Misalnya, jika Anda ingin memberikan beberapa layout khusus untuk bahasa Arab dan beberapa
+layout umum untuk setiap bahasa lainnya yang menggunakan "kanan-ke-kiri" lainnya (seperti bahasa Persia atau Ibrani) maka Anda akan memiliki:
+      </p>
+<pre class="classic no-pretty-print">
+res/
+    layout/   <span style="color:black">
+        main.xml  </span>(Default layout)
+    layout-ar/  <span style="color:black">
+        main.xml  </span>(Specific layout for Arabic)
+    layout-ldrtl/  <span style="color:black">
+        main.xml  </span>(Any "right-to-left" language, except
+                  for Arabic, because the "ar" language qualifier
+                  has a higher precedence.)
+</pre>
+        <p class="note"><strong>Catatan:</strong> Untuk mengaktifkan fitur
+layout kanan-ke-kiri untuk aplikasi, Anda harus mengatur <a href="{@docRoot}guide/topics/manifest/application-element.html#supportsrtl">{@code
+        supportsRtl}</a> ke {@code "true"} dan mengatur <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> ke 17 atau yang lebih tinggi.</p>
+        <p><em>Ditambahkan dalam API level 17.</em></p>
+      </td>
+    </tr>
+    <tr id="SmallestScreenWidthQualifier">
+      <td>smallestWidth</td>
+      <td><code>sw&lt;N&gt;dp</code><br/><br/>
+        Contoh:<br/>
+        <code>sw320dp</code><br/>
+        <code>sw600dp</code><br/>
+        <code>sw720dp</code><br/>
+        dll.
+      </td>
+      <td>
+        <p>Ukuran dasar layar, sebagaimana yang ditunjukkan oleh dimensi terpendek dari area layar
+yang tersedia. Secara spesifik, smallestWidth perangkat adalah yang terpendek dari
+tinggi dan lebar layar yang tersedia (Anda dapat menganggapnya sebagai "lebar terkecil yang memungkinkan" untuk layar). Anda bisa
+menggunakan qualifier ini untuk memastikan bahwa, apa pun orientasi layar saat ini, aplikasi
+Anda memiliki paling tidak {@code &lt;N&gt;} dps dari lebar yang tersedia untuk UI-nya.</p>
+        <p>Misalnya, jika layout mengharuskan dimensi layar terkecilnya setiap saat paling tidak
+600 dp, maka Anda dapat menggunakan qualifer ini untuk membuat sumber daya layout, {@code
+res/layout-sw600dp/}. Sistem akan menggunakan sumber daya ini hanya bila dimensi layar terkecil yang
+tersedia paling tidak 600 dp, tanpa mempertimbangkan apakah sisi 600 dp adalah tinggi atau
+lebar yang dipersepsikan pengguna. SmallestWidth adalah karakteristik ukuran layar tetap dari perangkat; <strong>smallestWidth
+perangkat tidak berubah saat orientasi layar berubah</strong>.</p>
+        <p>SmallestWidth perangkat memperhitungkan dekorasi layar dan UI sistem. Misalnya
+, jika perangkat memiliki beberapa elemen UI persisten pada layar yang menghitung ruang di sepanjang
+sumbu smallestWidth, sistem akan mendeklarasikan smallestWidth lebih kecil daripada ukuran layar sebenarnya,
+karena itu adalah piksel layar yang tidak tersedia untuk UI Anda. Sehingga nilai yang Anda
+gunakan haruslah merupakan dimensi terkecil sebenarnya yang <em>dibutuhkan oleh layout Anda</em> (biasanya, nilai ini adalah
+"lebar terkecil" yang didukung layout Anda, apa pun orientasi layar saat ini).</p>
+        <p>Sebagian nilai yang mungkin Anda gunakan untuk ukuran layar umum:</p>
+        <ul>
+          <li>320, untuk perangkat berkonfigurasi layar seperti:
+            <ul>
+              <li>240x320 ldpi (handset QVGA)</li>
+              <li>320x480 mdpi (handset)</li>
+              <li>480x800 hdpi (handset densitas tinggi)</li>
+            </ul>
+          </li>
+          <li>480, untuk layar seperti 480x800 mdpi (tablet/handset).</li>
+          <li>600, untuk layar seperti 600x1024 mdpi (tablet 7").</li>
+          <li>720, untuk layar seperti 720x1280 mdpi (tablet 10").</li>
+        </ul>
+        <p>Bila aplikasi Anda menyediakan beberapa direktori sumber daya dengan nilai yang berbeda untuk
+qualifier smallestWidth terkecil, sistem akan menggunakan nilai terdekat dengan (tanpa melebihi)
+smallestWidth perangkat. </p>
+        <p><em>Ditambahkan dalam API level 13.</em></p>
+        <p>Lihat juga atribut <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html#requiresSmallest">{@code
+android:requiresSmallestWidthDp}</a>, yang mendeklarasikan smallestWidth minimum yang
+kompatibel dengan aplikasi Anda, dan bidang konfigurasi {@link
+android.content.res.Configuration#smallestScreenWidthDp}, yang menyimpan nilai
+smallestWidth perangkat.</p>
+        <p>Untuk informasi selengkapnya tentang mendesain untuk layar berbeda dan menggunakan
+qualifier ini, lihat panduan pengembang <a href="{@docRoot}guide/practices/screens_support.html">Mendukung
+Multi Layar</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenWidthQualifier">
+      <td>Lebar yang tersedia</td>
+      <td><code>w&lt;N&gt;dp</code><br/><br/>
+        Contoh:<br/>
+        <code>w720dp</code><br/>
+        <code>w1024dp</code><br/>
+        dll.
+      </td>
+      <td>
+        <p>Menetapkan lebar layar minimum yang tersedia, di unit {@code dp} yang
+menggunakan sumber daya&mdash;yang didefinisikan oleh nilai <code>&lt;N&gt;</code>.  Nilai konfigurasi ini
+ akan berubah bila orientasi
+berubah antara lanskap dan potret agar cocok dengan lebar sebenarnya saat ini.</p>
+        <p>Bila aplikasi Anda menyediakan beberapa direktori sumber daya dengan nilai yang berbeda
+ untuk konfigurasi ini, sistem akan menggunakan nilai terdekat dengan (tanpa melebihi)
+ lebar layar perangkat saat ini.  Nilai
+di sini memperhitungkan dekorasi layar akun, jadi jika perangkat memiliki beberapa 
+elemen UI persisten di tepi kiri atau kanan, layar 
+menggunakan nilai lebar yang lebih kecil daripada ukuran layar sebenarnya, yang memperhitungkan
+elemen UI ini dan mengurangi ruang aplikasi yang tersedia.</p>
+        <p><em>Ditambahkan dalam API level 13.</em></p>
+        <p>Lihat juga bidang konfigurasi {@link android.content.res.Configuration#screenWidthDp}
+ yang menyimpan lebar layar saat ini.</p>
+        <p>Untuk informasi selengkapnya tentang mendesain untuk layar berbeda dan menggunakan
+qualifier ini, lihat panduan pengembang <a href="{@docRoot}guide/practices/screens_support.html">Mendukung
+Multi Layar</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenHeightQualifier">
+      <td>Tinggi yang tersedia</td>
+      <td><code>h&lt;N&gt;dp</code><br/><br/>
+        Contoh:<br/>
+        <code>h720dp</code><br/>
+        <code>h1024dp</code><br/>
+        dll.
+      </td>
+      <td>
+        <p>Menetapkan tinggi layar minimum yang tersedia, dalam satuan "dp" yang harus digunakan
+sumber daya &mdash;bersama nilai yang didefinisikan oleh <code>&lt;N&gt;</code>.  Nilai konfigurasi ini
+ akan berubah saat orientasi
+berubah antara lanskap dan potret agar cocok dengan tinggi sebenarnya saat ini.</p>
+        <p>Bila aplikasi menyediakan beberapa direktori sumber daya dengan nilai yang berbeda
+ untuk konfigurasi ini, sistem akan menggunakan nilai yang terdekat dengan (tanpa melebihi)
+ tinggi layar perangkat saat ini.  Nilai 
+di sini memperhitungkan dekorasi layar akun, jadi jika perangkat memiliki beberapa
+elemen UI persisten di tepi atas atau bawah, layar akan
+menggunakan nilai tinggi yang lebih kecil daripada ukuran layar sebenarnya, memperhitungkan
+elemen UI ini dan mengurangi ruang aplikasi yang tersedia.  Dekorasi 
+layar yang tidak tetap (misalnya baris status (status-bar) telepon yang bisa 
+disembunyikan saat layar penuh) di sini <em>tidak</em> diperhitungkan, demikian pula 
+dekorasi jendela seperti baris judul (title-bar)atau baris tindakan (action-bar), jadi aplikasi harus disiapkan 
+untuk menangani ruang yang agak lebih kecil daripada yang ditetapkan.
+        <p><em>Ditambahkan dalam API level 13.</em></p>
+        <p>Lihat juga bidang konfigurasi {@link android.content.res.Configuration#screenHeightDp}
+ yang menyimpan lebar layar saat ini.</p>
+        <p>Untuk informasi selengkapnya tentang mendesain untuk layar berbeda dan menggunakan
+qualifier ini, lihat panduan pengembang <a href="{@docRoot}guide/practices/screens_support.html">Mendukung
+Multi Layar</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenSizeQualifier">
+      <td>Ukuran layar</td>
+      <td>
+        <code>small</code><br/>
+        <code>normal</code><br/>
+        <code>large</code><br/>
+        <code>xlarge</code>
+      </td>
+      <td>
+        <ul class="nolist">
+        <li>{@code small}: Layar yang berukuran serupa dengan 
+layar QVGA densitas rendah. Ukuran layout minimum untuk layar kecil 
+adalah sekitar 320x426 satuan dp.  Misalnya QVGA densitas rendah 
+dan VGA densitas tinggi.</li>
+        <li>{@code normal}: Layar yang berukuran serupa dengan 
+layar HVGA densitas sedang. Ukuran layout minimum untuk
+layar normal adalah sekitar 320x470 satuan dp.  Contoh layar seperti itu adalah 
+WQVGA densitas rendah, HVGA densitas sedang, WVGA
+     densitas tinggi.</li>
+        <li>{@code large}: Layar yang berukuran serupa dengan 
+layar VGA densitas sedang.
+        Ukuran layout minimum untuk layar besar adalah sekitar 480x640 satuan dp.
+        Misalnya layar VGA dan WVGA densitas sedang.</li>
+        <li>{@code xlarge}: Layar yang jauh lebih besar dari layar HVGA 
+densitas sedang tradisional. Ukuran layout minimum untuk 
+layar ekstra besar adalah sekitar 720x960 satuan dp.  Perangkat dengan layar ekstra besar 
+seringkali terlalu besar untuk dibawa dalam saku dan kemungkinan besar
+ berupa perangkat bergaya tablet. <em>Ditambahkan dalam API level 9.</em></li>
+        </ul>
+        <p class="note"><strong>Catatan:</strong> Menggunakan qualifier ukuran tidak berarti bahwa 
+sumber daya <em>hanya</em> untuk layar ukuran itu saja. Jika Anda tidak menyediakan sumber
+daya alternatif dengan qualifier yang lebih cocok dengan konfigurasi perangkat saat ini, sistem dapat menggunakan sumber daya
+mana saja yang <a href="#BestMatch">paling cocok</a>.</p>
+        <p class="caution"><strong>Perhatian:</strong> Jika semua sumber daya Anda menggunakan 
+qualifier yang berukuran <em>lebih besar</em> daripada layar saat ini, sistem <strong>tidak</strong> akan menggunakannya dan aplikasi 
+Anda akan crash saat runtime (misalnya, jika semua sumber daya layout ditandai dengan qualifier {@code
+xlarge}, namun perangkat memiliki ukuran layar normal).</p>
+        <p><em>Ditambahkan dalam API level 4.</em></p>
+        
+        <p>Lihat <a href="{@docRoot}guide/practices/screens_support.html">Mendukung Beberapa
+Layar</a> untuk informasi selengkapnya.</p>
+        <p>Lihat juga bidang konfigurasi {@link android.content.res.Configuration#screenLayout},
+ yang menunjukkan apakah layar berukuran kecil, normal, atau
+besar.</p>
+      </td>
+    </tr>
+    <tr id="ScreenAspectQualifier">
+      <td>Aspek layar</td>
+      <td>
+        <code>long</code><br/>
+        <code>notlong</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code long}: Layar panjang, seperti WQVGA, WVGA, FWVGA</li>
+          <li>{@code notlong}: Layar tidak panjang, seperti QVGA, HVGA, dan VGA</li>
+        </ul>
+        <p><em>Ditambahkan dalam API level 4.</em></p>
+        <p>Ini berdasarkan sepenuhnya pada rasio aspek layar (layar "panjang" lebih lebar). Ini
+tidak ada kaitannya dengan orientasi layar.</p>
+        <p>Lihat juga bidang konfigurasi {@link android.content.res.Configuration#screenLayout},
+ yang menunjukkan apakah layar panjang.</p>
+      </td>
+    </tr>
+    <tr id="OrientationQualifier">
+      <td>Orientasi layar</td>
+      <td>
+        <code>port</code><br/>
+        <code>land</code>  <!-- <br/>
+        <code>square</code>  -->
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code port}: Perangkat dalam orientasi potret (vertikal)</li>
+          <li>{@code land}: Perangkat dalam orientasi lanskap (horizontal)</li>
+          <!-- Square mode is currently not used. -->
+        </ul>
+        <p>Ini bisa berubah selama masa pakai aplikasi Anda jika pengguna memutar
+layar. Lihat <a href="runtime-changes.html">Menangani Perubahan Runtime</a> untuk
+ informasi tentang bagaimana hal ini memengaruhi aplikasi Anda selama runtime.</p>
+        <p>Lihat juga bidang konfigurasi {@link android.content.res.Configuration#orientation}, 
+yang menunjukkan orientasi perangkat saat ini.</p>
+      </td>
+    </tr>
+    <tr id="UiModeQualifier">
+      <td>Mode UI</td>
+      <td>
+        <code>car</code><br/>
+        <code>desk</code><br/>
+        <code>television</code><br/>
+        <code>appliance</code>
+        <code>watch</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code car}: Perangkat sedang menampilkan di dudukan perangkat di mobil</li>
+          <li>{@code desk}: Perangkat sedang menampilkan di dudukan perangkat di meja</li>
+          <li>{@code television}: Perangkat sedang menampilkan di televisi, yang menyediakan 
+pengalaman "sepuluh kaki" dengan UI-nya pada layar besar yang berada jauh dari pengguna,
+terutama diorientasikan seputar DPAD atau 
+interaksi non-pointer lainnya</li>
+          <li>{@code appliance}: Perangkat berlaku sebagai 
+alat, tanpa tampilan</li>
+          <li>{@code watch}: Perangkat memiliki tampilan dan dikenakan di pergelangan tangan</li>
+        </ul>
+        <p><em>Ditambahkan dalam API level 8, televisi ditambahkan dalam API 13, jam ditambahkan dalam API 20.</em></p>
+        <p>Untuk informasi tentang cara aplikasi merespons saat perangkat dimasukkan 
+ke dalam atau dilepaskan dari dudukannya, bacalah <a href="{@docRoot}training/monitoring-device-state/docking-monitoring.html">Menentukan
+dan Memantau Kondisi dan Tipe Dudukan</a>.</p>
+        <p>Ini bisa berubah selama masa pakai aplikasi jika pengguna menempatkan perangkat di 
+dudukannya. Anda dapat mengaktifkan atau menonaktifkan sebagian mode ini menggunakan {@link
+android.app.UiModeManager}. Lihat <a href="runtime-changes.html">Menangani Perubahan Runtime</a> untuk
+informasi tentang bagaimana hal ini memengaruhi aplikasi Anda selama runtime.</p>
+      </td>
+    </tr>
+    <tr id="NightQualifier">
+      <td>Mode malam</td>
+      <td>
+        <code>night</code><br/>
+        <code>notnight</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code night}: Waktu malam</li>
+          <li>{@code notnight}: Waktu siang</li>
+        </ul>
+        <p><em>Ditambahkan dalam API level 8.</em></p>
+        <p>Ini bisa berubah selama masa pakai aplikasi jika mode malam dibiarkan dalam
+mode otomatis (default), dalam hal ini perubahan mode berdasarkan pada waktu hari.  Anda dapat mengaktifkan
+atau menonaktifkan mode ini menggunakan {@link android.app.UiModeManager}. Lihat <a href="runtime-changes.html">Menangani Perubahan Runtime</a> untuk informasi tentang bagaimana hal ini memengaruhi 
+aplikasi Anda selama runtime.</p>
+      </td>
+    </tr>
+    <tr id="DensityQualifier">
+      <td>Densitas piksel layar (dpi)</td>
+      <td>
+        <code>ldpi</code><br/>
+        <code>mdpi</code><br/>
+        <code>hdpi</code><br/>
+        <code>xhdpi</code><br/>
+        <code>xxhdpi</code><br/>
+        <code>xxxhdpi</code><br/>
+        <code>nodpi</code><br/>
+        <code>tvdpi</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code ldpi}: Layar densitas rendah; sekitar 120 dpi.</li>
+          <li>{@code mdpi}: Layar densitas sedang (pada HVGA tradisional); sekitar 160 dpi.
+</li>
+          <li>{@code hdpi}: Layar densitas tinggi; sekitar 240 dpi.</li>
+          <li>{@code xhdpi}: Layar densitas ekstra tinggi; sekitar 320 dpi. <em>Ditambahkan dalam API
+Level 8.</em></li>
+          <li>{@code xxhdpi}: Layar densitas ekstra-ekstra-tinggi; sekitar 480 dpi. <em>Ditambahkan dalam API
+Level 16.</em></li>
+          <li>{@code xxxhdpi}: Densitas ekstra-ekstra-ekstra-tinggi (hanya ikon launcher, 
+lihat <a href="{@docRoot}guide/practices/screens_support.html#xxxhdpi-note">catatan</a> 
+ dalam <em>Mendukung Beberapa Layar</em>); sekitar 640 dpi. <em>Ditambahkan dalam API
+Level 18.</em></li>
+          <li>{@code nodpi}: Ini bisa digunakan untuk sumber daya bitmap yang tidak ingin Anda
+skalakan agar sama dengan densitas perangkat.</li>
+          <li>{@code tvdpi}: Layar antara mdpi dan hdpi; sekitar 213 dpi. Ini
+tidak dianggap sebagai kelompok densitas "utama". Sebagian besar ditujukan untuk televisi dan kebanyakan
+aplikasi tidak memerlukannya &mdash;asalkan sumber daya mdpi dan hdpi cukup untuk sebagian besar aplikasi dan
+sistem akan menskalakan sebagaimana mestinya. Qualifier ini diperkenalkan pada API level 13.</li>
+        </ul>
+        <p>Terdapat rasio skala 3:4:6:8:12:16 antara enam densitas utama (dengan mengabaikan densitas
+tvdpi). Jadi bitmap 9x9 di ldpi adalah 12x12 di mdpi, 18x18 di hdpi, 24x24 di xhdpi dan seterusnya.
+</p>
+        <p>Jika Anda memutuskan bahwa sumber daya gambar tidak terlihat cukup baik di televisi
+atau perangkat tertentu lainnya dan ingin mencoba sumber daya tvdpi, faktor skalanya adalah 1,33*mdpi. Misalnya,
+gambar 100px x 100px untuk layar mdpi harus 133px x 133px untuk tvdpi.</p>
+        <p class="note"><strong>Catatan:</strong> Menggunakan qualifier densitas tidak berarti bahwa
+sumber daya <em>hanya</em> untuk layar dengan ukuran itu saja. Jika Anda tidak menyediakan sumber
+daya alternatif dengan qualifier yang lebih cocok dengan konfigurasi perangkat saat ini, sistem dapat menggunakan sumber daya
+mana saja yang <a href="#BestMatch">paling cocok</a>.</p>
+        <p>Lihat <a href="{@docRoot}guide/practices/screens_support.html">Mendukung Beberapa
+Layar</a> untuk informasi selengkapnya tentang cara menangani densitas layar yang berbeda dan cara Android
+menurunkan skala bitmap Anda agar sesuai dengan densitas saat ini.</p>
+       </td>
+    </tr>
+    <tr id="TouchscreenQualifier">
+      <td>Tipe layar sentuh</td>
+      <td>
+        <code>notouch</code><br/>
+        <code>finger</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code notouch}: Perangkat tidak memiliki layar sentuh.</li>
+          <li>{@code finger}: Perangkat memiliki layar sentuh yang dimaksudkan untuk
+digunakan melalui interaksi dengan jari pengguna.</li>
+        </ul>
+        <p>Lihat juga bidang konfigurasi {@link android.content.res.Configuration#touchscreen}, yang
+menunjukkan tipe layar sentuh pada perangkat.</p>
+      </td>
+    </tr>
+    <tr id="KeyboardAvailQualifier">
+      <td>Ketersediaan keyboard</td>
+      <td>
+        <code>keysexposed</code><br/>
+        <code>keyshidden</code><br/>
+        <code>keyssoft</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code keysexposed}: Perangkat menyediakan keyboard. Jika perangkat mengaktifkan
+keyboard perangkat lunak (kemungkinan), ini dapat digunakan bahkan saat keyboard fisik
+<em>tidak</em> diekspos kepada pengguna, meskipun perangkat tidak memiliki keyboard fisik. Jika keyboard
+perangkat lunak tidak disediakan atau dinonaktifkan, maka ini hanya digunakan bila
+keyboard fisik diekspos.</li>
+          <li>{@code keyshidden}: Perangkat memiliki keyboard fisik yang tersedia
+tetapi tersembunyi <em>dan</em> perangkat <em>tidak</em> mengaktifkan keyboard perangkat lunak.</li>
+          <li>{@code keyssoft}: Perangkat mengaktifkan keyboard perangkat lunak,
+baik itu terlihat maupun tidak.</li>
+        </ul>
+        <p>Jika Anda menyediakan sumber daya <code>keysexposed</code>, namun bukan sumber daya <code>keyssoft</code>
+, sistem akan menggunakan sumber daya <code>keysexposed</code> baik keyboard
+terlihat atau tidak, asalkan sistem telah mengaktifkan keyboard perangkat lunak.</p>
+        <p>Ini bisa berubah selama masa pakai aplikasi jika pengguna membuka keyboard
+fisik. Lihat <a href="runtime-changes.html">Menangani Perubahan Runtime</a> untuk informasi tentang bagaimana
+hal ini memengaruhi aplikasi Anda selama runtime.</p>
+        <p>Lihat juga bidang konfigurasi {@link
+android.content.res.Configuration#hardKeyboardHidden} dan {@link
+android.content.res.Configuration#keyboardHidden}, yang menunjukkan visibilitas 
+keyboard fisik dan visibilitas segala jenis keyboard (termasuk keyboard perangkat lunak), masing-masing.</p>
+      </td>
+    </tr>
+    <tr id="ImeQualifier">
+      <td>Metode input teks utama</td>
+      <td>
+        <code>nokeys</code><br/>
+        <code>qwerty</code><br/>
+        <code>12key</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nokeys}: Perangkat tidak memiliki tombol fisik untuk input teks.</li>
+          <li>{@code qwerty}: Perangkat memiliki keyboard fisik qwerty, baik terlihat maupun tidak pada
+pengguna
+.</li>
+          <li>{@code 12key}: Perangkat memiliki keyboard fisik 12 tombol, baik terlihat maupun tidak
+pada pengguna.</li>
+        </ul>
+        <p>Lihat juga bidang konfigurasi {@link android.content.res.Configuration#keyboard}, 
+yang menunjukkan metode utama input teks yang tersedia.</p>
+      </td>
+    </tr>
+    <tr id="NavAvailQualifier">
+      <td>Ketersediaan tombol navigasi</td>
+      <td>
+        <code>navexposed</code><br/>
+        <code>navhidden</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code navexposed}: Tombol navigasi tersedia bagi pengguna.</li>
+          <li>{@code navhidden}: Tombol navigasi tidak tersedia (misalnya di balik penutup yang
+ditutup).</li>
+        </ul>
+        <p>Ini bisa berubah selama masa pakai aplikasi jika pengguna menyingkap tombol
+navigasi. Lihat <a href="runtime-changes.html">Menangani Perubahan Runtime</a> untuk
+informasi tentang bagaimana hal ini memengaruhi aplikasi Anda selama runtime.</p>
+        <p>Lihat juga bidang konfigurasi {@link android.content.res.Configuration#navigationHidden}, yang menunjukkan
+apakah tombol navigasi disembunyikan.</p>
+      </td>
+    </tr>
+    <tr id="NavigationQualifier">
+      <td>Metode navigasi non-sentuh utama</td>
+      <td>
+        <code>nonav</code><br/>
+        <code>dpad</code><br/>
+        <code>trackball</code><br/>
+        <code>wheel</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nonav}: Perangkat tidak memiliki fasilitas navigasi selain menggunakan
+layar sentuh.</li>
+          <li>{@code dpad}: Perangkat memiliki pad pengarah (directional pad / d-pad) untuk navigasi.</li>
+          <li>{@code trackball}: Perangkat memiliki trackball untuk navigasi.</li>
+          <li>{@code wheel}: Perangkat memiliki roda pengarah (directional wheel) untuk navigasi (tidak umum).</li>
+        </ul>
+        <p>Lihat juga bidang konfigurasi {@link android.content.res.Configuration#navigation},
+yang menunjukkan tipe metode navigasi yang tersedia.</p>
+      </td>
+    </tr>
+<!-- DEPRECATED
+    <tr>
+      <td>Screen dimensions</td>
+      <td>Examples:<br/>
+        <code>320x240</code><br/>
+        <code>640x480</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>The larger dimension must be specified first. <strong>This configuration is deprecated
+and should not be used</strong>. Instead use "screen size," "wider/taller screens," and "screen
+orientation" described above.</p>
+      </td>
+    </tr>
+-->
+    <tr id="VersionQualifier">
+      <td>Versi Platform (level API)</td>
+      <td>Contoh:<br/>
+        <code>v3</code><br/>
+        <code>v4</code><br/>
+        <code>v7</code><br/>
+        dll.</td>
+      <td>
+        <p>Level API yang didukung perangkat. Misalnya, <code>v1</code> untuk API level
+1 (perangkat dengan Android 1.0 atau yang lebih tinggi) dan <code>v4</code> untuk API level 4 (perangkat dengan Android
+1.6 atau yang lebih tinggi). Lihat dokumen <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Level API Android</a> untuk informasi selengkapnya
+tentang nilai-nilai ini.</p>
+      </td>
+    </tr>
+</table>
+
+
+<p class="note"><strong>Catatan:</strong> Sebagian qualifier konfigurasi telah ditambahkan sejak Android
+1.0, jadi tidak semua versi Android mendukung semua qualifier. Menggunakan qualifier baru secara implisit
+akan menambahkan qualifier versi platform sehingga perangkat yang lebih lama pasti mengabaikannya. Misalnya, menggunakan qualifier
+<code>w600dp</code> secara otomatis akan menyertakan qualifier <code>v13</code>, karena
+qualifier lebar yang tersedia baru di API level 13. Untuk menghindari masalah, selalu sertakan satu set
+sumber daya default (satu set sumber daya <em>tanpa qualifier</em>). Untuk informasi selengkapnya, lihat
+bagian tentang <a href="#Compatibility">Menyediakan Kompatibilitas Perangkat Terbaik dengan
+Sumber Daya</a>.</p>
+
+
+
+<h3 id="QualifierRules">Aturan penamaan qualifier</h3>
+
+<p>Inilah beberapa aturan tentang penggunaan nama qualifier konfigurasi:</p>
+
+<ul>
+    <li>Anda bisa menetapkan beberapa qualifier untuk satu set sumber daya, yang dipisahkan dengan tanda hubung. Misalnya,
+<code>drawable-en-rUS-land</code> berlaku untuk perangkat bahasa Inggris-AS dalam orientasi
+lanskap.</li>
+    <li>Qualifier harus dalam urutan seperti yang tercantum dalam <a href="#table2">tabel 2</a>. 
+Misalnya:
+      <ul>
+        <li>Salah: <code>drawable-hdpi-port/</code></li>
+        <li>Benar: <code>drawable-port-hdpi/</code></li>
+      </ul>
+    </li>
+    <li>Direktori sumber daya alternatif tidak bisa digunakan. Misalnya, Anda tidak bisa memiliki
+<code>res/drawable/drawable-en/</code>.</li>
+    <li>Nilai tidak membedakan huruf besar maupun kecil.  Compiler sumber daya mengubah nama direktori
+menjadi huruf kecil sebelum pemrosesan untuk menghindari masalah pada sistem file yang membedakan
+huruf kecil dan besar. Setiap penggunaan huruf besar dalam nama hanyalah demi keterbacaan.</li>
+    <li>Hanya didukung satu nilai untuk setiap tipe qualifier. Misalnya, jika Anda ingin menggunakan
+file drawable yang sama untuk Spanyol dan Prancis, Anda <em>tidak bisa</em> memiliki direktori bernama
+<code>drawable-rES-rFR/</code>. Sebagai gantinya, Anda perlu dua direktori sumber daya, seperti
+<code>drawable-rES/</code> dan <code>drawable-rFR/</code>, berisi file yang sesuai.
+Akan tetapi, Anda tidak harus benar-benar menggandakan file yang sama di kedua lokasi. Sebagai gantinya, Anda
+bisa membuat alias ke satu sumber daya. Lihat <a href="#AliasResources">Membuat
+sumber daya alias</a> di bawah ini.</li>
+</ul>
+
+<p>Setelah Anda menyimpan sumber daya alternatif ke dalam direktori yang diberi nama dengan
+qualifier ini, Android secara otomatis menerapkan sumber daya dalam
+aplikasi Anda berdasarkan pada konfigurasi perangkat saat ini. Setiap kali sumber daya diminta, Android akan memeriksa direktori sumber daya
+alternatif berisi file sumber daya yang diminta, lalu <a href="#BestMatch">mencari sumber daya yang
+paling cocok</a>(dibahas di bawah). Jika tidak ada sumber daya alternatif yang cocok
+dengan konfigurasi perangkat tertentu, Android akan menggunakan sumber daya default terkait (set
+sumber daya untuk tipe sumber daya tertentu yang tidak termasuk qualifier
+konfigurasi).</p>
+
+
+
+<h3 id="AliasResources">Membuat sumber daya alias</h3>
+
+<p>Bila memiliki sumber daya yang ingin Anda gunakan untuk lebih dari satu konfigurasi
+perangkat (namun tidak ingin menyediakannya sebagai sumber daya default), Anda tidak perlu menempatkan sumber daya
+yang sama di lebih dari satu direktori sumber daya alternatif. Sebagai gantinya, (dalam beberapa kasus) Anda bisa membuat
+sumber daya alternatif
+yang berfungsi sebagai alias untuk sumber daya yang disimpan dalam direktori sumber daya default.</p>
+
+<p class="note"><strong>Catatan:</strong> Tidak semua sumber daya menawarkan mekanisme yang memungkinkan Anda
+membuat alias ke sumber daya lain. Khususnya, animasi, menu, raw, dan
+sumber daya lain yang tidak ditetapkan dalam direktori {@code xml/} tidak menawarkan fitur ini.</p>
+
+<p>Misalnya, bayangkan Anda memiliki ikon aplikasi {@code icon.png}, dan membutuhkan versi uniknya
+untuk lokal berbeda. Akan tetapi, dua lokal, bahasa Inggris-Kanada dan bahasa Prancis-Kanada, harus menggunakan
+versi yang sama. Anda mungkin berasumsi bahwa Anda perlu menyalin gambar
+yang sama ke dalam direktori sumber daya baik untuk bahasa Inggris-Kanada maupun bahasa Prancis-Kanada, namun
+bukan demikian. Sebagai gantinya, Anda bisa menyimpan gambar yang sama-sama digunakan sebagai {@code icon_ca.png} (nama
+apa saja selain {@code icon.png}) dan memasukkannya
+dalam direktori default {@code res/drawable/}. Lalu buat file {@code icon.xml} dalam {@code
+res/drawable-en-rCA/} dan {@code res/drawable-fr-rCA/} yang mengacu ke sumber daya {@code icon_ca.png}
+yang menggunakan elemen {@code &lt;bitmap&gt;}. Hal ini memungkinkan Anda menyimpan satu versi saja dari
+file PNG dan dua file XML kecil yang menunjuk ke sana. (Contoh file XML ditampilkan di bawah.)</p>
+
+
+<h4>Drawable</h4>
+
+<p>Untuk membuat alias ke drawable yang ada, gunakan elemen {@code &lt;bitmap&gt;}.
+Misalnya:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/icon_ca" />
+</pre>
+
+<p>Jika Anda menyimpan file ini sebagai {@code icon.xml} (dalam direktori sumber daya alternatif, seperti
+{@code res/drawable-en-rCA/}), maka file akan dikompilasi menjadi sumber daya yang dapat Anda acu
+sebagai {@code R.drawable.icon}, namun sebenarnya merupakan alias untuk sumber daya {@code
+R.drawable.icon_ca} (yang disimpan dalam {@code res/drawable/}).</p>
+
+
+<h4>Layout</h4>
+
+<p>Untuk membuat alias ke layout yang ada, gunakan elemen {@code &lt;include&gt;},
+yang dibungkus dalam {@code &lt;merge&gt;}. Misalnya:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;merge>
+    &lt;include layout="@layout/main_ltr"/>
+&lt;/merge>
+</pre>
+
+<p>Jika Anda menyimpan file ini sebagai {@code main.xml}, file akan dikompilasi menjadi sumber daya yang dapat Anda acu
+sebagai {@code R.layout.main}, namun sebenarnya merupakan alias untuk sumber daya {@code R.layout.main_ltr}
+.</p>
+
+
+<h4>String dan nilai-nilai sederhana lainnya</h4>
+
+<p>Untuk membuat alias ke string yang ada, cukup gunakan ID sumber daya
+dari string yang diinginkan sebagai nilai untuk string baru. Misalnya:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;string name="hello">Hello&lt;/string>
+    &lt;string name="hi">@string/hello&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>Sumber daya {@code R.string.hi} sekarang merupakan alias untuk {@code R.string.hello}.</p>
+
+<p> <a href="{@docRoot}guide/topics/resources/more-resources.html">Nilai sederhana lainnya</a> sama
+cara kerjanya. Misalnya, sebuah warna:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;color name="yellow">#f00&lt;/color>
+    &lt;color name="highlight">@color/red&lt;/color>
+&lt;/resources>
+</pre>
+
+
+
+
+<h2 id="Compatibility">Menyediakan Kompatibilitas Perangkat Terbaik dengan Sumber Daya</h2>
+
+<p>Agar aplikasi Anda mendukung beberapa konfigurasi perangkat,
+Anda harus selalu menyediakan sumber daya default untuk setiap tipe sumber daya yang menggunakan aplikasi Anda.</p>
+
+<p>Misalnya, jika aplikasi Anda mendukung beberapa bahasa, sertakan selalu direktori {@code
+values/} (tempat string Anda disimpan) <em>tanpa</em> <a href="#LocaleQualifier">qualifier bahasa dan wilayah</a>. Jika sebaliknya Anda menempatkan semua file
+string dalam direktori yang memiliki qualifier bahasa dan wilayah, maka aplikasi Anda akan crash saat berjalan
+pada perangkat yang telah diatur ke bahasa yang tidak didukung string Anda. Namun asalkan Anda menyediakan sumber daya default
+{@code values/}, aplikasi akan berjalan lancar (meskipun pengguna
+tidak memahami bahasa itu&mdash;, ini lebih baik daripada crash).</p>
+
+<p>Demikian pula, jika Anda menyediakan sumber daya layout berbeda berdasarkan orientasi layar, Anda harus
+memilih satu orientasi sebagai default. Misalnya, sebagai ganti menyediakan sumber daya dalam {@code
+layout-land/} untuk lanskap dan {@code layout-port/} untuk potret, biarkan salah satu sebagai default, seperti
+{@code layout/} untuk lanskap dan {@code layout-port/} untuk potret.</p>
+
+<p>Sumber daya default perlu disediakan bukan hanya karena aplikasi mungkin berjalan pada
+konfigurasi yang belum Anda antisipasi, namun juga karena versi baru Android terkadang menambahkan 
+qualifier konfigurasi yang tidak didukung oleh versi lama. Jika Anda menggunakan qualifier sumber daya baru,
+namun mempertahankan kompatibilitas kode dengan versi Android yang lebih lama, maka saat versi lama
+Android menjalankan aplikasi, aplikasi itu akan crash jika Anda tidak menyediakan sumber daya default, aplikasi
+tidak bisa menggunakan sumber daya yang dinamai dengan qualifier baru. Misalnya, jika <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
+minSdkVersion}</a> Anda diatur ke 4, dan Anda memenuhi syarat semua sumber daya drawable dengan menggunakan <a href="#NightQualifier">mode malam</a> ({@code night} atau {@code notnight}, yang ditambahkan di API
+Level 8), maka perangkat API level 4 tidak bisa mengakses sumber daya drawable dan akan crash. Dalam hal
+ini, Anda mungkin ingin {@code notnight} menjadi sumber daya default, jadi Anda harus mengecualikan
+qualifier itu agar sumber daya drawable Anda ada dalam {@code drawable/} atau {@code drawable-night/}.</p>
+
+<p>Jadi, agar bisa menyediakan kompatibilitas perangkat terbaik, sediakan selalu sumber daya
+default untuk sumber daya yang diperlukan aplikasi Anda untuk berjalan dengan benar. Selanjutnya buatlah sumber daya
+alternatif untuk konfigurasi perangkat tertentu dengan menggunakan qualifier konfigurasi.</p>
+
+<p>Ada satu eksepsi untuk aturan ini: Jika <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> aplikasi Anda adalah 4 atau
+lebih, Anda <em>tidak</em> memerlukan sumber daya drawable default saat menyediakan sumber daya
+drawable alternatif dengan qualifier <a href="#DensityQualifier">densitas layar</a>. Tanpa sumber daya
+drawable default sekali pun, Android bisa menemukan yang paling cocok di antara densitas layar alternatif dan menskalakan
+bitmap sesuai kebutuhan. Akan tetapi, demi pengalaman terbaik pada semua jenis perangkat, Anda harus
+menyediakan drawable alternatif untuk ketiga tipe densitas.</p>
+
+
+
+<h2 id="BestMatch">Cara Android Menemukan Sumber Daya yang Paling Cocok</h2>
+
+<p>Saat Anda meminta sumber daya yang Anda berikan alternatifnya, Android akan memilih
+sumber daya alternatif yang akan digunakan saat runtime, bergantung pada konfigurasi perangkat saat ini. Untuk
+mendemonstrasikan cara Android memilih sumber daya alternatif, anggaplah direktori drawable berikut
+masing-masing berisi versi berbeda dari gambar yang sama:</p>
+
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+drawable-fr-rCA/
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+
+<p>Dan anggaplah yang berikut ini merupakan konfigurasi perangkatnya:</p>
+
+<p style="margin-left:1em;">
+Lokal = <code>en-GB</code> <br/>
+Orientasi layar = <code>port</code> <br/>
+Densitas piksel layar = <code>hdpi</code> <br/>
+Tipe layar sentuh = <code>notouch</code> <br/>
+Metode input teks utama = <code>12key</code>
+</p>
+
+<p>Dengan membandingkan konfigurasi perangkat dengan sumber daya alternatif yang tersedia, Android akan memilih
+drawable dari {@code drawable-en-port}.</p>
+
+<p>Sistem akan menentukan keputusannya mengenai sumber daya yang akan digunakan dengan logika
+berikut:</p>
+
+
+<div class="figure" style="width:371px">
+<img src="{@docRoot}images/resources/res-selection-flowchart.png" alt="" height="471" />
+<p class="img-caption"><strong>Gambar 2.</strong> Bagan alur cara Android menemukan
+sumber daya yang paling cocok.</p>
+</div>
+
+
+<ol>
+  <li>Menghapus file sumber daya yang bertentangan dengan konfigurasi perangkat.
+    <p>Direktori <code>drawable-fr-rCA/</code> dihapus karena bertentangan
+dengan lokal <code>en-GB</code>.</p>
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+<strike>drawable-fr-rCA/</strike>
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+<p class="note"><strong>Eksepsi:</strong> Densitas piksel layar adalah satu qualifier yang
+tidak dihapus karena bertentangan. Meskipun densitas layar perangkat adalah hdpi,
+<code>drawable-port-ldpi/</code> tidak dihapus karena setiap densitas layar
+dianggap cocok untuk saat ini. Informasi selengkapnya tersedia dalam dokumen <a href="{@docRoot}guide/practices/screens_support.html">Mendukung Beberapa
+Layar</a>.</p></li>
+
+  <li>Pilih qualifier berkedudukan tertinggi (berikutnya) dalam daftar (<a href="#table2">tabel 2</a>).
+(Mulai dengan MCC, lalu pindah ke bawah.) </li>
+  <li>Apakah salah satu direktori sumber daya menyertakan qualifier ini?  </li>
+    <ul>
+      <li>Jika Tidak, kembali ke langkah 2 dan lihat qualifier berikutnya. (Dalam contoh,
+jawabannya adalah "tidak" hingga qualifier bahasa tercapai.)</li>
+      <li>Jika Ya, lanjutkan ke langkah 4.</li>
+    </ul>
+  </li>
+
+  <li>Hapus direktori sumber daya yang tidak menyertakan qualifier ini. Dalam contoh, sistem
+menghapus semua direktori yang tidak menyertakan qualifier bahasa:</li>
+<pre class="classic no-pretty-print">
+<strike>drawable/</strike>
+drawable-en/
+drawable-en-port/
+drawable-en-notouch-12key/
+<strike>drawable-port-ldpi/</strike>
+<strike>drawable-port-notouch-12key/</strike>
+</pre>
+<p class="note"><strong>Eksepsi:</strong> Jika qualifier yang dimaksud adalah densitas piksel layar,
+Android akan memilih opsi yang paling cocok dengan densitas layar perangkat.
+Secara umum, Android lebih suka menurunkan skala gambar asli yang lebih besar daripada menaikkan skala
+atas gambar asli yang lebih kecil. Lihat <a href="{@docRoot}guide/practices/screens_support.html">Mendukung Beberapa
+Layar</a>.</p>
+  </li>
+
+  <li>Kembali dan ulangi langkah 2, 3, dan 4 hingga tersisa satu direktori. Dalam contoh ini, orientasi
+layar adalah qualifier berikutnya yang memiliki kecocokan. 
+Jadi, sumber daya yang tidak menetapkan orientasi layar akan dihapus:
+<pre class="classic no-pretty-print">
+<strike>drawable-en/</strike>
+drawable-en-port/
+<strike>drawable-en-notouch-12key/</strike>
+</pre>
+<p>Direktori yang tersisa adalah {@code drawable-en-port}.</p>
+  </li>
+</ol>
+
+<p>Meskipun prosedur dijalankan untuk setiap sumber daya yang diminta, sistem akan mengoptimalkan beberapa aspek
+lebih lanjut. Satu optimalisasi tersebut adalah bahwa setelah konfigurasi perangkat diketahui, sistem mungkin
+akan menghapus sumber daya alternatif yang sama sekali tidak cocok. Misalnya, jika bahasa konfigurasi
+adalah bahasa Inggris ("en"), maka setiap direktori sumber daya yang memiliki qualifier bahasa akan diatur ke
+selain bahasa Inggris tidak akan pernah disertakan dalam pool sumber daya yang diperiksa (meskipun
+direktori sumber daya <em>tanpa</em> qualifier bahasa masih disertakan).</p>
+
+<p>Saat memilih sumber daya berdasarkan qualifier ukuran layar, sistem akan menggunakan
+sumber daya yang didesain untuk layar yang lebih kecil daripada layar saat ini jika tidak ada sumber daya yang lebih cocok
+(misalnya, layar ukuran besar akan menggunakan sumber daya layar ukuran normal jika diperlukan). Akan tetapi,
+jika satu-satunya sumber daya yang tersedia <em>lebih besar</em> daripada layar saat ini, sistem
+<strong>tidak</strong> akan menggunakannya dan aplikasi Anda akan crash jika tidak ada sumber daya lain yang cocok dengan konfigurasi
+perangkat (misalnya, jika semua sumber daya layout ditandai dengan qualifier {@code xlarge},
+namun perangkat memiliki ukuran layar normal).</p>
+
+<p class="note"><strong>Catatan:</strong> <em>Kedudukan</em> qualifier (dalam <a href="#table2">tabel 2</a>) lebih penting
+daripada jumlah qualifier yang benar-benar pas dengan perangkat. Misalnya, dalam langkah 4 di atas, pilihan
+terakhir pada daftar berisi tiga qualifier yang bebar-benar cocok dengan perangkat (orientasi, tipe
+layar sentuh, dan metode input), sementara <code>drawable-en</code> hanya memiliki satu parameter yang cocok
+(bahasa). Akan tetapi, bahasa memiliki kedudukan lebih tinggi dari pada qualifier lainnya, sehingga
+<code>drawable-port-notouch-12key</code> tidak masuk.</p>
+
+<p>Untuk mengetahui selengkapnya tentang cara menggunakan sumber daya dalam aplikasi, lanjutkan ke <a href="accessing-resources.html">Mengakses Sumber Daya</a>.</p>
diff --git a/docs/html-intl/intl/in/guide/topics/resources/runtime-changes.jd b/docs/html-intl/intl/in/guide/topics/resources/runtime-changes.jd
new file mode 100644
index 0000000..c9a5ead
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/resources/runtime-changes.jd
@@ -0,0 +1,281 @@
+page.title=Menangani Perubahan Runtime
+page.tags=aktivitas,daur hidup
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>Dalam dokumen ini</h2>
+  <ol>
+    <li><a href="#RetainingAnObject">Mempertahankan Objek Selama Perubahan Konfigurasi</a></li>
+    <li><a href="#HandlingTheChange">Menangani Sendiri Perubahan Konfigurasi</a>
+  </ol>
+
+  <h2>Lihat juga</h2>
+  <ol>
+    <li><a href="providing-resources.html">Menyediakan Sumber Daya</a></li>
+    <li><a href="accessing-resources.html">Mengakses Sumber Daya</a></li>
+    <li><a href="http://android-developers.blogspot.com/2009/02/faster-screen-orientation-change.html">Perubahan
+ Orientasi Layar yang Lebih Cepat</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Sebagian konfigurasi perangkat bisa berubah selama runtime
+(seperti orientasi layar, ketersediaan keyboard, dan bahasa). Saat perubahan demikian terjadi,
+Android akan me-restart
+{@link android.app.Activity} yang berjalan ({@link android.app.Activity#onDestroy()} dipanggil, diikuti oleh {@link
+android.app.Activity#onCreate(Bundle) onCreate()}). Perilaku restart didesain untuk membantu
+aplikasi Anda beradaptasi dengan konfigurasi baru melalui pemuatan kembali aplikasi Anda secara otomatis dengan
+sumber daya alternatif sumber yang sesuai dengan konfigurasi perangkat baru.</p>
+
+<p>Untuk menangani restart dengan benar, aktivitas Anda harus mengembalikan
+statusnya seperti semula melalui <a href="{@docRoot}guide/components/activities.html#Lifecycle">Daur hidup
+aktivitas</a> normal, dalam hal ini Android akan memanggil
+{@link android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} sebelum menghentikan
+aktivitas Anda sehingga Anda dapat menyimpan data mengenai status aplikasi. Selanjutnya Anda bisa mengembalikan status
+selama {@link android.app.Activity#onCreate(Bundle) onCreate()} atau {@link
+android.app.Activity#onRestoreInstanceState(Bundle) onRestoreInstanceState()}.</p>
+
+<p>Untuk menguji bahwa aplikasi me-restart sendiri dengan status tak berubah, Anda harus
+memanggil perubahan konfigurasi (seperti mengubah orientasi layar) saat melakukan berbagai
+tugas dalam aplikasi. Aplikasi Anda harus dapat me-restart setiap saat tanpa kehilangan
+data pengguna atau status untuk menangani kejadian seperti perubahan konfigurasi atau bila pengguna menerima panggilan telepon
+masuk lalu kembali ke aplikasi setelah proses
+aplikasi Anda dimusnahkan. Untuk mengetahui cara mengembalikan status aktivitas, bacalah tentang <a href="{@docRoot}guide/components/activities.html#Lifecycle">Daur hidup aktivitas</a>.</p>
+
+<p>Akan tetapi, Anda mungkin menemui situasi ketika me-restart aplikasi dan
+mengembalikan data dalam jumlah besar malah menjadi mahal dan menghasilkan pengalaman pengguna yang buruk. Dalam situasi
+demikian, Anda memiliki dua opsi lain:</p>
+
+<ol type="a">
+  <li><a href="#RetainingAnObject">Mempertahankan objek selama perubahan konfigurasi</a>
+  <p>Izinkan aktivitas Anda me-restart saat konfigurasi berubah, namun bawa objek
+berstatus (stateful) ke instance baru aktivitas Anda.</p>
+
+  </li>
+  <li><a href="#HandlingTheChange">Menangani sendiri perubahan konfigurasi</a>
+  <p>Cegah sistem me-restart aktivitas selama perubahan konfigurasi
+tertentu, namun terima callback saat konfigurasi benar-benar berubah, agar Anda bisa memperbarui
+aktivitas secara manual bila diperlukan.</p>
+  </li>
+</ol>
+
+
+<h2 id="RetainingAnObject">Mempertahankan Objek Selama Perubahan Konfigurasi</h2>
+
+<p>Jika me-restart aktivitas mengharuskan pemulihan seperangkat data dalam jumlah besar, menghubungkan kembali koneksi
+jaringan, atau melakukan operasi intensif lainnya, maka restart penuh karena perubahan konfigurasi mungkin
+menjadi pengalaman pengguna yang lambat. Selain itu, Anda mungkin tidak bisa sepenuhnya mengembalikan status
+aktivitas dengan {@link android.os.Bundle} yang disimpan sistem untuk Anda dengan callback {@link
+android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()}&mdash;itu tidaklah
+didesain untuk membawa objek besar (seperti bitmap) dan data di dalamnya harus diserialkan kemudian
+dinon-serialkan, yang bisa menghabiskan banyak memori dan membuat perubahan konfigurasi menjadi lambat. Dalam situasi
+demikian, Anda bisa meringankan beban memulai kembali aktivitas Anda dengan mempertahankan {@link
+android.app.Fragment} saat aktivitas Anda di-restart karena perubahan konfigurasi. Fragmen ini
+bisa berisi acuan ke objek stateful yang ingin Anda pertahankan.</p>
+
+<p>Bila sistem Android menghentikan aktivitas Anda karena perubahan konfigurasi, fragmen
+aktivitas yang telah ditandai untuk dipertahankan tidak akan dimusnahkan. Anda dapat menambahkan fragmen tersebut ke
+aktivitas untuk mempertahankan objek stateful.</p>
+
+<p>Untuk mempertahankan objek stateful dalam fragmen selama perubahan konfigurasi runtime:</p>
+
+<ol>
+  <li>Perluas kelas {@link android.app.Fragment} dan deklarasikan referensi ke objek stateful 
+Anda.</li>
+  <li>Panggil {@link android.app.Fragment#setRetainInstance(boolean)} saat fragmen dibuat.
+      </li>
+  <li>Tambahkan fragmen ke aktivitas.</li>
+  <li>Gunakan {@link android.app.FragmentManager} untuk mengambil fragmen saat aktivitas 
+di-restart.</li>
+</ol>
+
+<p>Misalnya, definisikan fragmen sebagai berikut:</p>
+
+<pre>
+public class RetainedFragment extends Fragment {
+
+    // data object we want to retain
+    private MyDataObject data;
+
+    // this method is only called once for this fragment
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // retain this fragment
+        setRetainInstance(true);
+    }
+
+    public void setData(MyDataObject data) {
+        this.data = data;
+    }
+
+    public MyDataObject getData() {
+        return data;
+    }
+}
+</pre>
+
+<p class="caution"><strong>Perhatian:</strong> Meskipun bisa menyimpan objek apa saja, Anda
+sama sekali tidak boleh meneruskan objek yang terkait dengan {@link android.app.Activity}, seperti {@link
+android.graphics.drawable.Drawable}, {@link android.widget.Adapter}, {@link android.view.View}
+atau objek lainnya mana pun yang terkait dengan {@link android.content.Context}. Jika Anda melakukannya, hal tersebut akan
+membocorkan semua tampilan dan sumber daya instance aktivitas semula. (Sumber daya yang bocor
+berarti bahwa aplikasi Anda tetap menyimpannya dan tidak bisa dijadikan kumpulan sampah, sehingga bisa banyak
+memori yang hilang.)</p>
+
+<p>Selanjutnya gunakan {@link android.app.FragmentManager} untuk menambahkan fragmen ke aktivitas. 
+Anda bisa memperoleh objek data dari fragmen saat aktivitas memulai kembali selama perubahan 
+konfigurasi runtime. Misalnya, definisikan aktivitas Anda sebagai berikut:</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    private RetainedFragment dataFragment;
+
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+
+        // find the retained fragment on activity restarts
+        FragmentManager fm = getFragmentManager();
+        dataFragment = (DataFragment) fm.findFragmentByTag(“data”);
+
+        // create the fragment and data the first time
+        if (dataFragment == null) {
+            // add the fragment
+            dataFragment = new DataFragment();
+            fm.beginTransaction().add(dataFragment, “data”).commit();
+            // load the data from the web
+            dataFragment.setData(loadMyData());
+        }
+
+        // the data is available in dataFragment.getData()
+        ...
+    }
+
+    &#64;Override
+    public void onDestroy() {
+        super.onDestroy();
+        // store the data in the fragment
+        dataFragment.setData(collectMyLoadedData());
+    }
+}
+</pre>
+
+<p>Dalam contoh ini, {@link android.app.Activity#onCreate(Bundle) onCreate()} menambahkan fragmen
+atau mengembalikan referensinya. {@link android.app.Activity#onCreate(Bundle) onCreate()} juga
+menyimpan objek stateful dalam instance fragmen.
+{@link android.app.Activity#onDestroy() onDestroy()} akan memperbarui objek stateful dalam
+instance fragmen yang dipertahankan.</p>
+
+
+
+
+
+<h2 id="HandlingTheChange">Menangani Sendiri Perubahan Konfigurasi</h2>
+
+<p>Jika aplikasi Anda tidak memerlukan pembaruan sumber daya selama perubahan konfigurasi
+tertentu <em>dan</em> Anda memiliki keterbatasan kinerja yang mengharuskan Anda untuk
+menghindari restart aktivitas, maka Anda bisa mendeklarasikan agar aktivitas Anda menangani sendiri perubahan
+konfigurasinya, sehingga mencegah sistem me-restart aktivitas.</p>
+
+<p class="note"><strong>Catatan:</strong> Menangani sendiri perubahan konfigurasi bisa jauh lebih
+mempersulit penggunaan sumber daya alternatif, karena sistem tidak menerapkannya secara otomatis
+untuk Anda. Teknik ini harus dianggap sebagai usaha terakhir bila Anda harus menghindari restart
+karena perubahan konfigurasi dan tidak disarankan untuk sebagian besar aplikasi.</p>
+
+<p>Untuk mendeklarasikan agar aktivitas Anda menangani perubahan konfigurasi, edit elemen <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> yang sesuai
+dalam file manifes Anda agar menyertakan atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> dengan nilai yang mewakili konfigurasi yang ingin
+ditangani. Nilai yang memungkinkan tercantum dalam dokumentasi untuk atribut <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> (nilai paling sering digunakan adalah {@code "orientation"} untuk
+mencegah restart saat orientasi layar berubah dan {@code "keyboardHidden"} untuk mencegah
+restart saat ketersediaan keyboard berubah).  Anda dapat mendeklarasikan beberapa nilai konfigurasi
+dalam atribut dengan memisahkannya menggunakan karakter pipa {@code |}.</p>
+
+<p>Misalnya, kode manifes berikut menyatakan aktivitas yang menangani
+perubahan orientasi layar maupun perubahan ketersediaan keyboard:</p>
+
+<pre>
+&lt;activity android:name=".MyActivity"
+          android:configChanges="orientation|keyboardHidden"
+          android:label="@string/app_name">
+</pre>
+
+<p>Sekarang, bila salah satu konfigurasi ini berubah, {@code MyActivity} tidak akan me-restart.
+Sebagai gantinya, {@code MyActivity} akan menerima panggilan ke {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}. Metode ini
+meneruskan objek {@link android.content.res.Configuration} yang menetapkan
+konfigurasi perangkat baru. Dengan membaca bidang-bidang dalam {@link android.content.res.Configuration},
+Anda dapat menentukan konfigurasi baru dan membuat perubahan yang sesuai dengan memperbarui
+sumber daya yang digunakan dalam antarmuka. Pada saat
+metode ini dipanggil, objek {@link android.content.res.Resources} aktivitas Anda akan diperbarui untuk
+mengembalikan sumber daya berdasarkan konfigurasi baru, jadi Anda bisa dengan mudah
+me-reset elemen UI tanpa membuat sistem me-restart aktivitas Anda.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Mulai Android 3.2 (API level 13), <strong>
+"ukuran layar" juga berubah</strong> bila perangkat beralih orientasi antara potret
+dan lanskap. Jadi jika Anda tidak ingin runtime di-restart karena perubahan orientasi saat mengembangkan
+API level 13 atau yang lebih tinggi (sebagaimana dideklarasikan oleh atribut <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> dan <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>
+), Anda harus menyertakan nilai {@code "screenSize"} selain nilai {@code
+"orientation"}. Yaitu Anda harus mendeklarasikan {@code
+android:configChanges="orientation|screenSize"}. Akan tetapi, jika aplikasi Anda menargetkan API level
+12 atau yang lebih rendah, maka aktivitas Anda akan selalu menangani sendiri perubahan konfigurasi ini (perubahan
+konfigurasi ini tidak me-restart aktivitas Anda, bahkan saat berjalan pada perangkat Android 3.2 atau yang lebih tinggi).</p>
+
+<p>Misalnya, implementasi {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} berikut akan
+memeriksa orientasi perangkat saat ini:</p>
+
+<pre>
+&#64;Override
+public void onConfigurationChanged(Configuration newConfig) {
+    super.onConfigurationChanged(newConfig);
+
+    // Checks the orientation of the screen
+    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
+        Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
+    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
+        Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
+    }
+}
+</pre>
+
+<p>Objek {@link android.content.res.Configuration} mewakili semua konfigurasi
+saat ini, tidak hanya konfigurasi yang telah berubah. Seringkali Anda tidak perlu memperhatikan dengan persis bagaimana
+konfigurasi berubah dan cukup menetapkan kembali semua sumber daya yang memberikan alternatif untuk
+konfigurasi sedang ditangani. Misalnya, karena objek {@link
+android.content.res.Resources} sekarang diperbarui, Anda dapat me-reset
+setiap {@link android.widget.ImageView} dengan {@link android.widget.ImageView#setImageResource(int)
+setImageResource()}
+dan sumber daya yang sesuai untuk konfigurasi baru yang digunakan (seperti dijelaskan dalam <a href="providing-resources.html#AlternateResources">Menyediakan Sumber Daya</a>).</p>
+
+<p>Perhatikan bahwa nilai-nilai dari bidang {@link
+android.content.res.Configuration} adalah integer yang sesuai dengan konstanta spesifik
+dari kelas {@link android.content.res.Configuration}. Untuk dokumentasi tentang konstanta
+yang harus digunakan di setiap bidang, lihat bidang yang sesuai dalam referensi {@link
+android.content.res.Configuration}.</p>
+
+<p class="note"><strong>Ingatlah:</strong> Saat mendeklarasikan aktivitas untuk menangani perubahan
+konfigurasi, Anda bertanggung jawab untuk me-reset setiap elemen yang alternatifnya Anda berikan. Jika Anda
+mendeklarasikan aktivitas untuk menangani perubahan orientasi dan memiliki gambar yang harus berubah
+antara lanskap dan potret, Anda harus menetapkan kembali setiap sumber daya elemen selama {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}.</p>
+
+<p>Jika Anda tidak perlu memperbarui aplikasi berdasarkan perubahan
+konfigurasi ini, sebagai gantinya Anda bisa saja <em>tidak</em> mengimplementasikan {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}. Dalam
+hal ini, semua sumber daya yang digunakan sebelum perubahan konfigurasi akan tetap digunakan
+dan Anda hanya menghindari restart aktivitas. Akan tetapi, aplikasi Anda harus selalu
+bisa dimatikan dan di-restart dengan status sebelumnya tetap utuh, sehingga Anda jangan menganggap teknik
+ini sebagai jalan keluar untuk mempertahankan status selama daur hidup aktivitas normal. Tidak hanya
+karena ada perubahan konfigurasi lainnya yang tidak bisa Anda cegah untuk me-restart aplikasi, namun
+juga karena Anda harus menangani kejadian seperti saat pengguna meninggalkan aplikasi dan
+dimusnahkan sebelum pengguna kembali ke aplikasi.</p>
+
+<p>Untuk informasi selengkapnya tentang perubahan konfigurasi yang bisa Anda tangani dalam aktivitas, lihat dokumentasi <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> dan kelas {@link android.content.res.Configuration}
+.</p>
diff --git a/docs/html-intl/intl/in/guide/topics/ui/controls.jd b/docs/html-intl/intl/in/guide/topics/ui/controls.jd
new file mode 100644
index 0000000..7ee2957
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/ui/controls.jd
@@ -0,0 +1,90 @@
+page.title=Kontrol Input
+parent.title=Antarmuka Pengguna
+parent.link=index.html
+@jd:body
+
+<div class="figure" style="margin:0">
+  <img src="{@docRoot}images/ui/ui-controls.png" alt="" style="margin:0" />
+</div>
+
+<p>Kontrol input adalah komponen interaktif dalam antarmuka pengguna aplikasi Anda. Android menyediakan
+aneka ragam kontrol yang bisa Anda gunakan dalam UI, seperti tombol, bidang teks, bilah pencarian,
+kotak cek, tombol zoom, tombol toggle, dan masih banyak lagi.</p>
+
+<p>Menambahkan sebuah kontrol input ke UI adalah semudah menambahkan satu elemen XML ke <a href="{@docRoot}guide/topics/ui/declaring-layout.html">layout XML</a>. Misalnya, inilah sebuah
+layout dengan satu bidang teks dan satu tombol:</p>
+
+<pre style="clear:right">
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+    android:orientation="horizontal">
+    &lt;EditText android:id="@+id/edit_message"
+        android:layout_weight="1"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:hint="@string/edit_message" />
+    &lt;Button android:id="@+id/button_send"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/button_send"
+        android:onClick="sendMessage" />
+&lt;/LinearLayout>
+</pre>
+
+<p>Tiap kontrol input mendukung satu set kejadian input sehingga Anda bisa menangani berbagai kejadian seperti saat
+pengguna memasukkan teks atau menyentuh tombol.</p>
+
+
+<h2 id="CommonControls">Kontrol Umum</h2>
+<p>Berikut adalah daftar beberapa kontrol umum yang bisa Anda gunakan dalam aplikasi. Ikuti tautan ini untuk mengetahui
+selengkapnya tentang penggunaannya masing-masing.</p>
+
+<p class="note"><strong>Catatan:</strong> Android menyediakan beberapa kontrol lain yang tidak tercantum
+di sini. Telusuri paket {@link android.widget} untuk mengetahui selengkapnya. Jika aplikasi Anda memerlukan
+semacam kontrol input tertentu, Anda bisa membangun <a href="{@docRoot}guide/topics/ui/custom-components.html">komponen custom</a> sendiri.</p>
+
+<table>
+    <tr>
+        <th scope="col">Tipe Kontrol</th>
+        <th scope="col">Keterangan</th>
+	<th scope="col">Kelas Terkait</th>
+    </tr>
+    <tr>
+        <td><a href="controls/button.html">Tombol</a></td>
+        <td>Tombol tekan yang bisa ditekan, atau diklik, oleh pengguna untuk melakukan suatu tindakan.</td>
+	<td>{@link android.widget.Button Button} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/text.html">Bidang teks</a></td>
+        <td>Bidang teks yang bisa diedit. Anda bisa menggunakan widget <code>AutoCompleteTextView</code> untuk membuat widget entri teks yang menyediakan saran pelengkapan otomatis</td>
+	<td>{@link android.widget.EditText EditText}, {@link android.widget.AutoCompleteTextView}</td>
+    </tr>
+    <tr>
+        <td><a href="controls/checkbox.html">Kotak cek</a></td>
+        <td>Switch aktif/nonaktif yang bisa diubah oleh pengguna. Anda harus menggunakan kotak cek saat menampilkan sekumpulan opsi yang bisa dipilih pengguna dan bila keduanya mungkin terjadi bersamaan.</td>
+	<td>{@link android.widget.CheckBox CheckBox} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/radiobutton.html">Tombol radio</a></td>
+        <td>Mirip dengan kotak cek, hanya saja cuma satu opsi yang bisa dipilih dalam kumpulan tersebut.</td>
+	<td>{@link android.widget.RadioGroup RadioGroup} 
+	<br>{@link android.widget.RadioButton RadioButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/togglebutton.html" style="white-space:nowrap">Tombol toggle</a></td>
+        <td>Tombol aktif/nonaktif dengan indikator cahaya.</td>
+	<td>{@link android.widget.ToggleButton ToggleButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/spinner.html">Spinner</a></td>
+        <td>Daftar tarik-turun yang memungkinkan pengguna memilih salah satu dari serangkaian nilai.</td>
+	<td>{@link android.widget.Spinner Spinner} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/pickers.html">Picker</a></td>
+        <td>Dialog bagi pengguna untuk memilih satu nilai dari satu kumpulan dengan menggunakan tombol naik/turun atau dengan gerakan mengusap. Gunakan widget <code>DatePicker</code>code&gt; untuk memasukkan nilai tanggal (bulan, hari, tahun) atau widget <code>TimePicker</code> untuk memasukkan nilai waktu (jam, menit, AM/PM), yang akan diformat secara otomatis untuk lokasi pengguna tersebut.</td>
+	<td>{@link android.widget.DatePicker}, {@link android.widget.TimePicker}</td>
+    </tr>
+</table>
diff --git a/docs/html-intl/intl/in/guide/topics/ui/declaring-layout.jd b/docs/html-intl/intl/in/guide/topics/ui/declaring-layout.jd
new file mode 100644
index 0000000..83ff746
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/ui/declaring-layout.jd
@@ -0,0 +1,492 @@
+page.title=Layout
+page.tags=view,viewgroup
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Dalam dokumen ini</h2>
+<ol>
+  <li><a href="#write">Tulis XML</a></li>
+  <li><a href="#load">Muat Sumber Daya XML</a></li>
+  <li><a href="#attributes">Atribut</a>
+    <ol>
+      <li><a href="#id">ID</a></li>
+      <li><a href="#layout-params">Parameter Layout</a></li>
+    </ol>
+  </li>
+  <li><a href="#Position">Posisi Layout</a></li>
+  <li><a href="#SizePaddingMargins">Ukuran, Pengisi, dan Margin</a></li>
+  <li><a href="#CommonLayouts">Layout Umum</a></li>
+  <li><a href="#AdapterViews">Membangun Layout dengan Adaptor</a>
+    <ol>
+      <li><a href="#FillingTheLayout">Mengisi tampilan adaptor dengan data</a></li>
+      <li><a href="#HandlingUserSelections">Menangani kejadian klik</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>Kelas-kelas utama</h2>
+  <ol>
+    <li>{@link android.view.View}</li>
+    <li>{@link android.view.ViewGroup}</li>
+    <li>{@link android.view.ViewGroup.LayoutParams}</li>
+  </ol>
+
+  <h2>Lihat juga</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/firstapp/building-ui.html">Membangun Antarmuka Pengguna
+Sederhana</a></li> </div>
+</div>
+
+<p>Layout mendefinisikan struktur visual untuk antarmuka pengguna, seperti UI sebuah <a href="{@docRoot}guide/components/activities.html">aktivitas</a> atau <a href="{@docRoot}guide/topics/appwidgets/index.html">widget aplikasi</a>.
+Anda dapat mendeklarasikan layout dengan dua cara:</p>
+<ul>
+<li><strong>Deklarasikan elemen UI dalam XML</strong>. Android menyediakan sebuah kosakata XML
+sederhana yang sesuai dengan kelas dan subkelas View, seperti halnya untuk widget dan layout.</li>
+<li><strong>Buat instance elemen layout saat runtime</strong>. Aplikasi Anda
+bisa membuat objek View dan ViewGroup (dan memanipulasi propertinya) lewat program. </li>
+</ul>
+
+<p>Kerangka kerja Android memberi Anda fleksibilitas untuk menggunakan salah satu atau kedua metode ini guna mendeklarasikan dan mengelola UI aplikasi Anda. Misalnya, Anda bisa mendeklarasikan layout default aplikasi Anda dalam XML, termasuk elemen-elemen layar yang akan muncul di dalamnya dan di propertinya. Anda nanti bisa menambahkan kode dalam aplikasi yang akan memodifikasi status objek layar, termasuk yang dideklarasikan dalam XML, saat runtime. </p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <ul>
+  <li><a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT
+  Plugin for Eclipse</a> menawarkan preview layout XML &mdash;
+ Anda dengan file XML yang dibuka, pilih tab <strong>Layout</strong>.</li>
+  <li>Anda juga harus mencoba alat
+  <a href="{@docRoot}tools/debugging/debugging-ui.html#hierarchyViewer">Hierarchy Viewer</a>,
+ untuk merunut layout &mdash; alat ini akan menampilkan nilai-nilai properti layout,
+  menggambar bentuk kerangka dengan indikator pengisi/margin, dan tampilan yang dirender penuh selagi
+  Anda merunut pada emulator atau perangkat.</li>
+  <li>Alat <a href="{@docRoot}tools/debugging/debugging-ui.html#layoutopt">layoutopt</a> memungkinkan
+  Anda menganalisis layout dan hierarki dengan untuk mengetahui ketidakefisienan atau masalah lainnya.</li>
+</div>
+</div>
+
+<p>Keuntungan mendeklarasikan UI dalam XML adalah karena hal ini memungkinkan Anda memisahkan penampilan aplikasi dari kode yang mengontrol perilakunya dengan lebih baik. Keterangan UI Anda bersifat eksternal bagi kode aplikasi Anda, yang berarti bahwa Anda bisa memodifikasi atau menyesuaikannya tanpa harus memodifikasi dan mengompilasi ulang kode sumber. Misalnya, Anda bisa membuat layout XML untuk berbagai orientasi layar, berbagai ukuran layar perangkat, dan berbagai bahasa. Selain itu, mendeklarasikan layout dalam XML akan mempermudah Anda memvisualisasikan struktur UI, sehingga lebih mudah merunut masalahnya. Karena itu, dokumen ini berfokus pada upaya mengajari Anda cara mendeklarasikan layout dalam XML. Jika Anda
+tertarik dalam membuat instance objek View saat runtime, lihat referensi kelas {@link android.view.ViewGroup} dan
+{@link android.view.View}.</p>
+
+<p>Secara umum, kosakata XML untuk mendeklarasikan elemen UI mengikuti dengan sangat mirip struktur serta penamaan kelas dan metode, dengan nama elemen dipadankan dengan nama kelas dan nama atribut dipadankan dengan metode. Sebenarnya, pemadanan ini kerap kali begitu jelas sehingga Anda bisa menebak atribut XML yang berpadanan dengan sebuah metode kelas, atau menebak kelas yang berpadanan dengan sebuah elemen XML. Akan tetapi, perhatikan bahwa tidak semua kosakata identik. Dalam beberapa kasus, ada sedikit perbedaan penamaan. Misalnya
+, elemen EditText memiliki atribut <code>text</code> yang berpadanan dengan
+<code>EditText.setText()</code>. </p>
+
+<p class="note"><strong>Tip:</strong> Ketahui selengkapnya berbagai tipe layout dalam <a href="{@docRoot}guide/topics/ui/layout-objects.html">Objek
+Layout Umum</a>. Ada juga sekumpulan tutorial tentang cara membangun berbagai layout dalam panduan tutorial 
+<a href="{@docRoot}resources/tutorials/views/index.html">Hello Views</a>.</p>
+
+<h2 id="write">Tulis XML</h2>
+
+<p>Dengan menggunakan kosakata XML Android, Anda bisa mendesain secara cepat layout UI dan elemen layar yang dimuatnya, sama dengan cara membuat halaman web dalam HTML &mdash; dengan serangkaian elemen tersarang. </p>
+
+<p>Tiap file layout harus berisi persis satu elemen akar, yang harus berupa sebuah objek View atau ViewGroup. Setelah mendefinisikan elemen akar, Anda bisa menambahkan objek atau widget layout tambahan sebagai elemen anak untuk membangun hierarki View yang mendefinisikan layout Anda secara bertahap. Misalnya, inilah layout XML yang menggunakan {@link android.widget.LinearLayout}
+vertikal untuk menyimpan {@link android.widget.TextView} dan {@link android.widget.Button}:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="Hello, I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="Hello, I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>Setelah Anda mendeklarasikan layout dalam XML, simpanlah file dengan ekstensi <code>.xml</code>,
+dalam direktori <code>res/layout/</code> proyek Android, sehingga nanti bisa dikompilasi dengan benar. </p>
+
+<p>Informasi selengkapnya tentang sintaks untuk file XML layout tersedia dalam dokumen <a href="{@docRoot}guide/topics/resources/layout-resource.html">Sumber Daya Layout</a>.</p>
+
+<h2 id="load">Muat Sumber Daya XML</h2>
+
+<p>Saat mengompilasi aplikasi, masing-masing file layout XML akan dikompilasi dalam sebuah sumber daya 
+{@link android.view.View}. Anda harus memuat sumber daya layout dari kode aplikasi, dalam implementasi
+callback {@link android.app.Activity#onCreate(android.os.Bundle) Activity.onCreate()}.
+Lakukan dengan memanggil <code>{@link android.app.Activity#setContentView(int) setContentView()}</code>,
+dengan meneruskan acuan ke sumber daya layout berupa:
+<code>R.layout.<em>layout_file_name</em></code>.
+Misalnya, jika XML layout Anda disimpan sebagai <code>main_layout.xml</code>, Anda akan memuatnya
+untuk Activity seperti ini:</p>
+<pre>
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.main_layout);
+}
+</pre>
+
+<p>Metode callback <code>onCreate()</code> dalam Activity dipanggil oleh kerangka kerja Android saat
+Activity Anda dijalankan (lihat diskusi tentang daur hidup, dalam dokumen
+<a href="{@docRoot}guide/components/activities.html#Lifecycle">Aktivitas</a>
+).</p>
+
+
+<h2 id="attributes">Atribut</h2>
+
+<p>Setiap objek View dan ViewGroup mendukung variasi atribut XML-nya sendiri.
+Sebagian atribut bersifat spesifik untuk objek View (misalnya, TextView mendukung atribut <code>textSize</code>
+), namun atribut ini juga diwarisi oleh sembarang objek View yang dapat memperluas kelas ini.
+Sebagian atribut bersifat umum untuk semua objek View, karena diwarisi dari kelas View akar (seperti
+atribut <code>id</code>). Dan, atribut lain dianggap sebagai "parameter layout" yaitu
+atribut yang menjelaskan orientasi layout tertentu dari objek View, seperti yang didefinisikan oleh objek ViewGroup induk
+dari objek itu.</p>
+
+<h3 id="id">ID</h3>
+
+<p>Objek View apa saja dapat memiliki ID integer yang dikaitkan dengannya, untuk mengidentifikasi secara unik View dalam pohon.
+Bila aplikasi dikompilasi, ID ini akan diacu sebagai integer, namun ID biasanya
+ditetapkan dalam file XML layout sebagai string, dalam atribut <code>id</code>.
+Ini atribut XML yang umum untuk semua objek View
+(yang didefinisikan oleh kelas {@link android.view.View}) dan Anda akan sering sekali menggunakannya.
+Sintaks untuk ID dalam tag XML adalah:</p>
+<pre>android:id="&#64;+id/my_button"</pre>
+
+<p>Simbol "at" (@) pada awal string menunjukkan parser XML harus mengurai dan memperluas
+ID string selebihnya dan mengenalinya sebagai ID sumber daya. Simbol tanda tambah (+) berarti ini nama sumber daya baru yang harus
+dibuat dan ditambahkan ke sumber daya kita (dalam file <code>R.java</code>). Ada sejumlah sumber daya ID lain yang
+ditawarkan oleh kerangka kerja Android. Saat mengacu sebuah ID sumber daya Android, Anda tidak memerlukan simbol tanda tambah,
+namun harus menambahkan namespace paket <code>android</code>, sehingga:</p>
+<pre>android:id="&#64;android:id/empty"</pre>
+<p>Dengan namespace paket <code>android</code> yang tersedia, kita sekarang mengacu ID dari kelas sumber daya <code>android.R</code>
+, daripada kelas sumber daya lokal.</p>
+
+<p>Untuk membuat tampilan dan mengacunya dari aplikasi, pola yang umum adalah:</p>
+<ol>
+  <li>Mendefinisikan tampilan/widget dalam file layout dan memberinya ID unik:
+<pre>
+&lt;Button android:id="&#64;+id/my_button"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="&#64;string/my_button_text"/>
+</pre>
+  </li>
+  <li>Kemudian buat instance objek tampilan dan tangkap instance itu dari layout
+(biasanya dalam metode <code>{@link android.app.Activity#onCreate(Bundle) onCreate()}</code>):
+<pre>
+Button myButton = (Button) findViewById(R.id.my_button);
+</pre>
+  </li>
+</ol>
+<p>Mendefinisikan ID untuk objek tampilan adalah penting saat membuat {@link android.widget.RelativeLayout}.
+Dalam layout relatif, tampilan saudara bisa mendefinisikan layout secara relatif terhadap tampilan saudara lainnya,
+yang diacu melalui ID unik.</p>
+<p>ID tidak perlu unik di seluruh pohon, namun harus
+unik di bagian pohon yang Anda cari (yang mungkin sering kali seluruh pohon, jadi lebih baik
+benar-benar unik bila memungkinkan).</p>
+
+
+<h3 id="layout-params">Parameter Layout</h3>
+
+<p>Atribut layout XML bernama <code>layout_<em>something</em></code> mendefinisikan
+parameter layout View yang cocok untuk ViewGroup tempatnya berada.</p>
+
+<p>Setiap kelas ViewGroup mengimplementasikan kelas tersarang yang memperluas {@link
+android.view.ViewGroup.LayoutParams}. Subkelas ini
+berisi tipe properti yang mendefinisikan ukuran dan posisi masing-masing tampilan anak, sebagaimana
+mestinya untuk grup tampilan. Seperti yang bisa Anda lihat dalam gambar 1,
+grup tampilan induk mendefinisikan parameter layout untuk masing-masing tampilan anak (termasuk grup tampilan anak).</p>
+
+<img src="{@docRoot}images/layoutparams.png" alt="" />
+<p class="img-caption"><strong>Gambar 1.</strong> Visualisasi hierarki tampilan dengan parameter layout
+yang dikaitkan dengan tiap tampilan.</p>
+
+<p>Perhatikan bahwa setiap subkelas LayoutParams memiliki sintaksnya sendiri untuk menetapkan
+nilai-nilai. Tiap elemen anak harus mendefinisikan LayoutParams yang semestinya bagi induknya,
+meskipun elemen itu bisa juga mendefinisikan LayoutParams untuk anak-anaknya sendiri. </p>
+
+<p>Semua grup tampilan berisi lebar dan tinggi (<code>layout_width</code> dan
+<code>layout_height</code>), dan masing-masing tampilan harus mendefinisikannya. Banyak
+LayoutParams yang juga menyertakan margin dan border opsional. <p>
+
+<p>Anda bisa menetapkan lebar dan tinggi dengan ukuran persis, meskipun Anda mungkin
+tidak ingin sering-sering melakukannya. Lebih sering, Anda akan menggunakan salah satu konstanta ini untuk
+mengatur lebar atau tinggi: </p>
+
+<ul>
+  <li><var>wrap_content</var> memberi tahu tampilan Anda agar menyesuaikan sendiri ukurannya dengan dimensi
+yang dibutuhkan oleh isinya.</li>
+  <li><var>match_parent</var> (bernama <var>fill_parent</var> sebelum API Level 8)
+memberi tahu tampilan Anda agar menjadi sebesar yang diperbolehkan oleh grup tampilan induknya.</li>
+</ul>
+
+<p>Secara umum, menetapkan lebar dan tinggi layout dengan satuan mutlak seperti
+piksel tidaklah disarankan. Melainkan dengan menggunakan ukuran relatif seperti
+satuan piksel yang tidak bergantung pada kerapatan (<var>dp</var>), <var>wrap_content</var>, atau
+<var>match_parent</var>, adalah sebuah pendekatan yang lebih baik, karena membantu memastikan bahwa
+aplikasi Anda akan ditampilkan dengan benar pada berbagai ukuran layar perangkat.
+Tipe ukuran yang diterima didefinisikan dalam dokumen
+<a href="{@docRoot}guide/topics/resources/available-resources.html#dimension">
+Sumber Daya yang Tersedia</a>.</p>
+
+
+<h2 id="Position">Posisi Layout</h2>
+   <p>
+   Geometri tampilan adalah persegi panjang. Sebuah tampilan memiliki lokasi,
+   yang dinyatakan berupa sepasang koordinat <em>kiri</em> dan <em>atas</em>, dan
+   dua dimensi, yang dinyatakan berupa lebar dan tinggi. Satuan untuk lokasi
+   dan dimensi adalah piksel.
+   </p>
+
+   <p>
+   Lokasi tampilan dapat diambil dengan memanggil metode
+   {@link android.view.View#getLeft()} dan {@link android.view.View#getTop()}. Metode terdahulu menghasilkan koordinat kiri, atau X,
+   persegi panjang yang mewakili tampilan. Metode selanjutnya menghasilkan koordinat
+   atas, atau Y, persegi panjang yang mewakili tampilan. Kedua metode ini
+   menghasilkan lokasi tampilan relatif terhadap induknya. Misalnya,
+   bila <code>getLeft()</code> menghasilkan 20, berarti tampilan berlokasi 20 piksel ke
+   kanan dari tepi kiri induk langsungnya.
+   </p>
+
+   <p>
+   Selain itu, beberapa metode praktis ditawarkan untuk menghindari komputasi yang tidak perlu,
+   yakni {@link android.view.View#getRight()} dan {@link android.view.View#getBottom()}.
+   Kedua metode ini menghasilkan koordinat tepi kanan dan bawah
+   persegi panjang yang mewakili tampilan. Misalnya, memanggil {@link android.view.View#getRight()}
+   serupa dengan komputasi berikut: <code>getLeft() + getWidth()</code>.
+   </p>
+
+
+<h2 id="SizePaddingMargins">Ukuran, Pengisi, dan Margin</h2>
+   <p>
+   Ukuran tampilan dinyatakan dengan lebar dan tinggi. Tampilan sebenarnya
+   memiliki dua pasang nilai lebar dan tinggi.
+   </p>
+
+   <p>
+   Sepasang pertama disebut <em>lebar terukur</em> dan
+   <em>tinggi terukur</em>. Dimensi ini mendefinisikan seberapa besar tampilan yang diinginkan
+   dalam induknya. Dimensi
+   terukur bisa diperoleh dengan memanggil {@link android.view.View#getMeasuredWidth()}
+   dan {@link android.view.View#getMeasuredHeight()}.
+   </p>
+
+   <p>
+   Sepasang kedua cukup disebut dengan <em>lebar</em> dan <em>tinggi</em>, atau
+   kadang-kadang <em>lebar penggambaran</em> dan <em>tinggi penggambaran</em>. Dimensi-dimensi ini
+   mendefinisikan ukuran tampilan sebenarnya pada layar, saat digambar dan
+   setelah layout. Nilai-nilai ini mungkin, namun tidak harus, berbeda dengan
+   lebar dan tinggi terukur. Lebar dan tinggi bisa diperoleh dengan memanggil
+   {@link android.view.View#getWidth()} dan {@link android.view.View#getHeight()}.
+   </p>
+
+   <p>
+   Untuk mengukur dimensinya, tampilan akan memperhitungkan pengisinya (padding). Pengisi
+   dinyatakan dalam piksel untuk bagian kiri, atas, kanan, dan bawah tampilan.
+   Pengisi bisa digunakan untuk meng-offset isi tampilan dengan
+   piksel dalam jumlah tertentu. Misalnya, pengisi kiri sebesar 2 akan mendorong isi tampilan sebanyak
+   2 piksel ke kanan dari tepi kiri. Pengisi bisa diatur menggunakan
+   metode {@link android.view.View#setPadding(int, int, int, int)} dan diketahui dengan memanggil
+   {@link android.view.View#getPaddingLeft()}, {@link android.view.View#getPaddingTop()},
+   {@link android.view.View#getPaddingRight()}, dan {@link android.view.View#getPaddingBottom()}.
+   </p>
+
+   <p>
+   Meskipun bisa mendefinisikan pengisi, tampilan tidak menyediakan dukungan untuk
+   margin. Akan tetapi, grup tampilan menyediakan dukungan tersebut. Lihat
+   {@link android.view.ViewGroup} dan
+   {@link android.view.ViewGroup.MarginLayoutParams} untuk informasi lebih jauh.
+   </p>
+
+   <p>Untuk informasi selengkapnya tentang dimensi, lihat
+   <a href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">Nilai-Nilai Dimensi</a>.
+   </p>
+
+
+
+
+
+
+<style type="text/css">
+div.layout {
+  float:left;
+  width:200px;
+  margin:0 0 20px 20px;
+}
+div.layout.first {
+  margin-left:0;
+  clear:left;
+}
+</style>
+
+
+
+
+<h2 id="CommonLayouts">Layout Umum</h2>
+
+<p>Tiap subkelas dari kelas {@link android.view.ViewGroup} menyediakan cara unik untuk menampilkan
+tampilan yang Anda sarangkan di dalamnya. Di bawah ini adalah beberapa tipe layout lebih umum yang dibuat
+ke dalam platform Android.</p>
+
+<p class="note"><strong>Catatan:</strong> Walaupun Anda bisa menyarangkan satu atau beberapa layout dalam
+layout lain untuk mendapatkan desain UI, Anda harus berusaha menjaga hierarki layout sedangkal
+mungkin. Layout Anda akan digambar lebih cepat jika memiliki layout tersarang yang lebih sedikit (hierarki tampilan yang melebar
+lebih baik daripada hierarki tampilan yang dalam).</p>
+
+<!--
+<h2 id="framelayout">FrameLayout</h2>
+<p>{@link android.widget.FrameLayout FrameLayout} is the simplest type of layout
+object. It's basically a blank space on your screen that you can
+later fill with a single object &mdash; for example, a picture that you'll swap in and out.
+All child elements of the FrameLayout are pinned to the top left corner of the screen; you cannot
+specify a different location for a child view. Subsequent child views will simply be drawn over
+previous ones,
+partially or totally obscuring them (unless the newer object is transparent).
+</p>
+-->
+
+
+<div class="layout first">
+  <h4><a href="layout/linear.html">Layout Linier</a></h4>
+  <a href="layout/linear.html"><img src="{@docRoot}images/ui/linearlayout-small.png" alt="" /></a>
+  <p>Layout yang mengatur anak-anaknya menjadi satu baris horizontal atau vertikal. Layout ini
+  akan membuat scrollbar jika panjang jendela melebihi panjang layar.</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/relative.html">Layout Relatif</a></h4>
+  <a href="layout/relative.html"><img src="{@docRoot}images/ui/relativelayout-small.png" alt="" /></a>
+  <p>Memungkinkan Anda menentukan lokasi objek anak relatif terhadap satu sama lain (anak A di
+kiri anak B) atau terhadap induk (disejajarkan dengan atas induknya).</p>
+</div>
+
+<div class="layout">
+  <h4><a href="{@docRoot}guide/webapps/webview.html">Tampilan Web</a></h4>
+  <a href="{@docRoot}guide/webapps/webview.html"><img src="{@docRoot}images/ui/webview-small.png" alt="" /></a>
+  <p>Menampilkan halaman web.</p>
+</div>
+
+
+
+
+<h2 id="AdapterViews" style="clear:left">Membangun Layout dengan Adaptor</h2>
+
+<p>Bila isi layout bersifat dinamis atau tidak dipastikan sebelumnya, Anda bisa menggunakan layout yang menjadi 
+subkelas {@link android.widget.AdapterView} untuk mengisi layout dengan tampilan saat runtime. 
+Subkelas dari kelas {@link android.widget.AdapterView} menggunakan {@link android.widget.Adapter} untuk
+mengikat data ke layoutnya. {@link android.widget.Adapter} berfungsi sebagai penghubung antara sumber data
+dan layout{@link android.widget.AdapterView}&mdash;{@link android.widget.Adapter}
+menarik data (dari suatu sumber seperti larik (array) atau query database) dan mengubah setiap entri
+menjadi tampilan yang bisa ditambahkan ke dalam layout {@link android.widget.AdapterView}.</p>
+
+<p>Layout umum yang didukung oleh adaptor meliputi:</p>
+
+<div class="layout first">
+  <h4><a href="layout/listview.html">Tampilan Daftar</a></h4>
+  <a href="layout/listview.html"><img src="{@docRoot}images/ui/listview-small.png" alt="" /></a>
+  <p>Menampilkan daftar kolom tunggal yang bergulir.</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/gridview.html">Tampilan Petak</a></h4>
+  <a href="layout/gridview.html"><img src="{@docRoot}images/ui/gridview-small.png" alt="" /></a>
+  <p>Menampilkan petak bergulir yang terdiri atas kolom dan baris.</p>
+</div>
+
+
+
+<h3 id="FillingTheLayout" style="clear:left">Mengisi tampilan adaptor dengan data</h3>
+
+<p>Anda bisa mengisi {@link android.widget.AdapterView} seperti {@link android.widget.ListView} atau
+{@link android.widget.GridView} dengan mengikat instance {@link android.widget.AdapterView} ke
+{@link android.widget.Adapter}, yang akan mengambil data dari sumber eksternal dan membuat {@link
+android.view.View} yang mewakili tiap entri data.</p>
+
+<p>Android menyediakan beberapa subkelas {@link android.widget.Adapter} yang berguna untuk
+menarik berbagai jenis data dan membangun tampilan untuk {@link android.widget.AdapterView}. Dua
+ adaptor yang paling umum adalah:</p>
+
+<dl>
+  <dt>{@link android.widget.ArrayAdapter}</dt>
+    <dd>Gunakan adaptor ini bila sumber data Anda berupa larik. Secara default, {@link
+android.widget.ArrayAdapter} akan membuat tampilan untuk tiap elemen larik dengan memanggil {@link
+java.lang.Object#toString()} pada tiap elemen dan menempatkan isinya dalam {@link
+android.widget.TextView}.
+      <p>Misalnya, jika Anda memiliki satu larik string yang ingin ditampilkan dalam {@link
+android.widget.ListView}, buatlah {@link android.widget.ArrayAdapter} baru dengan konstruktor
+untuk menentukan layout setiap string dan larik string:</p>
+<pre>
+ArrayAdapter&lt;String> adapter = new ArrayAdapter&lt;String>(this,
+        android.R.layout.simple_list_item_1, myStringArray);
+</pre>
+<p>Argumen-argumen untuk konstruktor ini adalah:</p>
+<ul>
+  <li>{@link android.content.Context} aplikasi Anda</li>
+  <li>Layout yang berisi {@link android.widget.TextView} untuk tiap string dalam larik</li>
+  <li>Larik string</li>
+</ul>
+<p>Kemudian tinggal panggil
+{@link android.widget.ListView#setAdapter setAdapter()} pada {@link android.widget.ListView} Anda:</p>
+<pre>
+ListView listView = (ListView) findViewById(R.id.listview);
+listView.setAdapter(adapter);
+</pre>
+
+      <p>Untuk menyesuaikan penampilan setiap item, Anda bisa mengesampingkan metode {@link
+java.lang.Object#toString()} bagi objek dalam larik Anda. Atau, untuk membuat tampilan tiap
+elemen selain {@link android.widget.TextView} (misalnya, jika Anda menginginkan
+{@link android.widget.ImageView} bagi setiap item larik), perluas kelas {@link
+android.widget.ArrayAdapter} dan kesampingkan {@link android.widget.ArrayAdapter#getView
+getView()} agar memberikan tipe tampilan yang Anda inginkan bagi tiap item.</p>
+
+</dd>
+
+  <dt>{@link android.widget.SimpleCursorAdapter}</dt>
+    <dd>Gunakan adaptor ini bila data Anda berasal dari {@link android.database.Cursor}. Saat
+menggunakan {@link android.widget.SimpleCursorAdapter}, Anda harus menentukan layout yang akan digunakan untuk tiap
+baris dalam {@link android.database.Cursor} dan di kolom mana di {@link android.database.Cursor}
+harus memasukkan tampilan layout. Misalnya, jika Anda ingin untuk membuat daftar
+nama orang dan nomor telepon, Anda bisa melakukan query yang menghasilkan {@link
+android.database.Cursor} yang berisi satu baris untuk tiap orang dan kolom-kolom untuk nama dan
+nomor. Selanjutnya Anda membuat larik string yang menentukan kolom dari {@link
+android.database.Cursor} yang Anda inginkan dalam layout untuk setiap hasil dan larik integer yang menentukan 
+tampilan yang sesuai untuk menempatkan masing-masing kolom:</p>
+<pre>
+String[] fromColumns = {ContactsContract.Data.DISPLAY_NAME,
+                        ContactsContract.CommonDataKinds.Phone.NUMBER};
+int[] toViews = {R.id.display_name, R.id.phone_number};
+</pre>
+<p>Bila Anda membuat instance {@link android.widget.SimpleCursorAdapter}, teruskan layout yang akan digunakan untuk
+setiap hasil, {@link android.database.Cursor} yang berisi hasil tersebut, dan dua larik ini:</p>
+<pre>
+SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
+        R.layout.person_name_and_number, cursor, fromColumns, toViews, 0);
+ListView listView = getListView();
+listView.setAdapter(adapter);
+</pre>
+<p>{@link android.widget.SimpleCursorAdapter} kemudian membuat tampilan untuk tiap baris dalam
+{@link android.database.Cursor} dengan layout yang disediakan dengan memasukkan setiap item {@code
+fromColumns} ke dalam tampilan {@code toViews} yang sesuai.</p></dd>
+</dl>
+
+
+<p>Jika, selama aplikasi berjalan, Anda mengubah data sumber yang dibaca oleh
+adaptor, maka Anda harus memanggil {@link android.widget.ArrayAdapter#notifyDataSetChanged()}. Hal ini akan
+memberi tahu tampilan yang bersangkutan bahwa data telah berubah dan tampilan harus memperbarui dirinya sendiri.</p>
+
+
+
+<h3 id="HandlingUserSelections">Menangani kejadian klik</h3>
+
+<p>Anda bisa merespons kejadian klik pada setiap item dalam {@link android.widget.AdapterView} dengan
+menerapkan antarmuka {@link android.widget.AdapterView.OnItemClickListener}. Misalnya:</p>
+
+<pre>
+// Create a message handling object as an anonymous class.
+private OnItemClickListener mMessageClickedHandler = new OnItemClickListener() {
+    public void onItemClick(AdapterView parent, View v, int position, long id) {
+        // Do something in response to the click
+    }
+};
+
+listView.setOnItemClickListener(mMessageClickedHandler);
+</pre>
+
+
+
diff --git a/docs/html-intl/intl/in/guide/topics/ui/dialogs.jd b/docs/html-intl/intl/in/guide/topics/ui/dialogs.jd
new file mode 100644
index 0000000..65714a9
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/ui/dialogs.jd
@@ -0,0 +1,798 @@
+page.title=Dialog
+page.tags=alertdialog,dialogfragment
+
+@jd:body
+
+
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>Dalam dokumen ini</h2>
+<ol>
+  <li><a href="#DialogFragment">Membuat Fragmen Dialog</a></li>
+  <li><a href="#AlertDialog">Membuat Dialog Peringatan</a>
+    <ol>
+      <li><a href="#AddingButtons">Menambahkan tombol</a></li>
+      <li><a href="#AddingAList">Menambahkan daftar</a></li>
+      <li><a href="#CustomLayout">Membuat Layout Custom</a></li>
+    </ol>
+  </li>
+  <li><a href="#PassingEvents">Meneruskan Kejadian Kembali ke Host Dialog</a></li>
+  <li><a href="#ShowingADialog">Menampilkan Dialog</a></li>
+  <li><a href="#FullscreenDialog">Menampilkan Dialog sebagai Layar Penuh atau Fragmen Tertanam</a>
+    <ol>
+      <li><a href="#ActivityAsDialog">Menampilkan aktivitas sebagai dialog pada layar besar</a></li>
+    </ol>
+  </li>
+  <li><a href="#DismissingADialog">Menutup Dialog</a></li>
+</ol>
+
+    <h2>Kelas-kelas utama</h2>
+    <ol>
+      <li>{@link android.app.DialogFragment}</li>
+      <li>{@link android.app.AlertDialog}</li>
+    </ol>
+    
+    <h2>Lihat juga</h2>
+    <ol>
+      <li><a href="{@docRoot}design/building-blocks/dialogs.html">Panduan desain dialog</a></li>
+      <li><a href="{@docRoot}guide/topics/ui/controls/pickers.html">Picker</a> (dialog Tanggal/Waktu)</li>
+    </ol>
+  </div>
+</div>
+
+<p>Dialog adalah jendela kecil yang meminta pengguna untuk
+membuat keputusan atau memasukkan informasi tambahan. Dialog tidak mengisi layar dan
+biasanya digunakan untuk kejadian modal yang mengharuskan pengguna untuk melakukan tindakan sebelum bisa melanjutkan.</p>
+
+<div class="note design">
+<p><strong>Desain Dialog</strong></p>
+  <p>Untuk informasi tentang cara mendesain dialog, termasuk saran
+  untuk bahasa, bacalah panduan Desain <a href="{@docRoot}design/building-blocks/dialogs.html">dialog</a>.</p>
+</div>
+
+<img src="{@docRoot}images/ui/dialogs.png" />
+
+<p>Kelas {@link android.app.Dialog} adalah kelas basis untuk dialog, namun Anda
+harus menghindari pembuatan instance {@link android.app.Dialog} secara langsung.
+Sebagai gantinya, gunakan salah satu subkelas berikut:</p>
+<dl>
+  <dt>{@link android.app.AlertDialog}</dt>
+  <dd>Dialog yang bisa menampilkan judul, hingga tiga tombol, daftar
+    item yang dapat dipilih, atau layout custom.</dd>
+  <dt>{@link android.app.DatePickerDialog} atau {@link android.app.TimePickerDialog}</dt>
+  <dd>Dialog berisi UI yang sudah didefinisikan dan memungkinkan pengguna memilih tanggal atau waktu.</dd>
+</dl>
+
+<div class="sidebox">
+<h2>Hindari ProgressDialog</h2>
+<p>Android menyertakan kelas dialog lain yang disebut
+{@link android.app.ProgressDialog} yang menampilkan dialog berisi progress-bar. Akan tetapi, jika Anda
+perlu menunjukkan kemajuan pemuatan ataupun kemajuan yang tidak pasti, maka Anda harus mengikuti
+panduan desain untuk <a href="{@docRoot}design/building-blocks/progress.html">Kemajuan &amp;
+Aktivitas</a> dan menggunakan {@link android.widget.ProgressBar} dalam layout Anda.</p>
+</div>
+
+<p>Kelas-kelas ini mendefinisikan gaya dan struktur dialog Anda, namun Anda harus
+menggunakan {@link android.support.v4.app.DialogFragment} sebagai kontainer dialog Anda.
+Kelas {@link android.support.v4.app.DialogFragment} menyediakan semua kontrol yang Anda
+perlukan untuk membuat dialog dan mengelola penampilannya, sebagai ganti memanggil metode
+pada objek {@link android.app.Dialog}.</p>
+
+<p>Menggunakan {@link android.support.v4.app.DialogFragment} untuk mengelola dialog
+akan memastikan bahwa kelas itu menangani kejadian daur hidup
+dengan benar seperti ketika pengguna menekan tombol <em>Back</em> atau memutar layar. Kelas {@link
+android.support.v4.app.DialogFragment} juga memungkinkan Anda menggunakan ulang dialog UI sebagai
+komponen yang bisa ditanamkan dalam UI yang lebih besar, persis seperti {@link
+android.support.v4.app.Fragment} tradisional (seperti saat Anda ingin dialog UI muncul berbeda
+pada layar besar dan kecil).</p>
+
+<p>Bagian-bagian berikutnya dalam panduan ini akan menjelaskan cara menggunakan {@link
+android.support.v4.app.DialogFragment} yang dikombinasikan dengan objek {@link android.app.AlertDialog}
+. Jika Anda ingin membuat picker tanggal atau waktu, Anda harus membaca panduan 
+<a href="{@docRoot}guide/topics/ui/controls/pickers.html">Picker</a>.</p>
+
+<p class="note"><strong>Catatan:</strong>
+Karena kelas {@link android.app.DialogFragment} mulanya ditambahkan pada
+Android 3.0 (API level 11), dokumen ini menjelaskan cara menggunakan kelas {@link
+android.support.v4.app.DialogFragment} yang disediakan bersama <a href="{@docRoot}tools/support-library/index.html">Pustaka Dukungan</a>. Dengan menambahkan pustaka ini
+ke aplikasi, Anda bisa menggunakan {@link android.support.v4.app.DialogFragment} dan berbagai
+API lain pada perangkat yang menjalankan Android 1.6 atau yang lebih tinggi. Jika versi minimum yang didukung aplikasi Anda
+adalah API level 11 atau yang lebih tinggi, maka Anda bisa menggunakan versi kerangka kerja {@link
+android.app.DialogFragment}, namun ketahuilah bahwa tautan dalam dokumen ini adalah untuk API
+pustaka dukungan. Saat menggunakan pustaka dukungan,
+pastikan Anda mengimpor kelas <code>android.support.v4.app.DialogFragment</code>
+dan <em>bukan</em> <code>android.app.DialogFragment</code>.</p>
+
+
+<h2 id="DialogFragment">Membuat Fragmen Dialog</h2>
+
+<p>Anda bisa menghasilkan beragam rancangan dialog&mdash;termasuk
+layout custom dan desain yang dijelaskan dalam panduan desain <a href="{@docRoot}design/building-blocks/dialogs.html">Dialog</a>
+&mdash;dengan memperluas
+{@link android.support.v4.app.DialogFragment} dan membuat {@link android.app.AlertDialog}
+dalam metode callback {@link android.support.v4.app.DialogFragment#onCreateDialog
+onCreateDialog()}.</p>
+
+<p>Misalnya, berikut ini sebuah {@link android.app.AlertDialog} dasar yang dikelola dalam
+{@link android.support.v4.app.DialogFragment}:</p>
+
+<pre>
+public class FireMissilesDialogFragment extends DialogFragment {
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Use the Builder class for convenient dialog construction
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // FIRE ZE MISSILES!
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // User cancelled the dialog
+                   }
+               });
+        // Create the AlertDialog object and return it
+        return builder.create();
+    }
+}
+</pre>
+
+<div class="figure" style="width:290px;margin:0 0 0 20px">
+<img src="{@docRoot}images/ui/dialog_buttons.png" alt="" />
+<p class="img-caption"><strong>Gambar 1.</strong>
+Dialog dengan satu pesan dan dua tombol tindakan.</p>
+</div>
+
+<p>Sekarang, bila Anda membuat instance kelas ini dan memanggil {@link
+android.support.v4.app.DialogFragment#show show()} pada objek itu, dialog akan muncul seperti
+yang ditampilkan dalam gambar 1.</p>
+
+<p>Bagian berikutnya menjelaskan lebih jauh tentang penggunaan API {@link android.app.AlertDialog.Builder}
+untuk membuat dialog.</p>
+
+<p>Bergantung pada seberapa rumit dialog tersebut, Anda bisa menerapkan berbagai metode callback lain
+dalam {@link android.support.v4.app.DialogFragment}, termasuk semua
+<a href="{@docRoot}guide/components/fragments.html#Lifecycle">metode daur hidup fragmen</a> dasar.
+
+
+
+
+
+<h2 id="AlertDialog">Membuat Dialog Peringatan</h2>
+
+
+<p>Kelas {@link android.app.AlertDialog} memungkinkan Anda membuat berbagai desain dialog dan
+seringkali satu-satunya kelas dialog yang akan Anda perlukan.
+Seperti yang ditampilkan dalam gambar 2, ada tiga area pada dialog peringatan:</p>
+
+<div class="figure" style="width:311px;margin-top:0">
+<img src="{@docRoot}images/ui/dialogs_regions.png" alt="" style="margin-bottom:0" />
+<p class="img-caption"><strong>Gambar 2.</strong> Layout dialog.</p>
+</div>
+
+<ol>
+<li><b>Judul</b>
+  <p>Area ini opsional dan hanya boleh digunakan bila area konten
+  ditempati oleh pesan terperinci, daftar, atau layout custom. Jika Anda perlu menyatakan
+  pesan atau pertanyaan sederhana (seperti dialog dalam gambar 1), Anda tidak memerlukan judul.</li>
+<li><b>Area konten</b>
+  <p>Area ini bisa menampilkan pesan, daftar, atau layout custom lainnya.</p></li>
+<li><b>Tombol tindakan</b>
+  <p>Tidak boleh ada lebih dari tiga tombol tindakan dalam sebuah dialog.</p></li>
+</ol>
+
+<p>Kelas {@link android.app.AlertDialog.Builder}
+ menyediakan API yang memungkinkan Anda membuat {@link android.app.AlertDialog}
+dengan jenis konten ini, termasuk layout custom.</p>
+
+<p>Untuk membuat {@link android.app.AlertDialog}:</p>
+
+<pre>
+<b>// 1. Instantiate an {@link android.app.AlertDialog.Builder} with its constructor</b>
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+
+<b>// 2. Chain together various setter methods to set the dialog characteristics</b>
+builder.setMessage(R.string.dialog_message)
+       .setTitle(R.string.dialog_title);
+
+<b>// 3. Get the {@link android.app.AlertDialog} from {@link android.app.AlertDialog.Builder#create()}</b>
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>Topik-topik selanjutnya menampilkan cara mendefinisikan berbagai atribut dialog dengan menggunakan
+kelas {@link android.app.AlertDialog.Builder}.</p>
+
+
+
+
+<h3 id="AddingButtons">Menambahkan tombol</h3>
+
+<p>Untuk menambahkan tombol tindakan seperti dalam gambar 2,
+panggil metode {@link android.app.AlertDialog.Builder#setPositiveButton setPositiveButton()} dan
+{@link android.app.AlertDialog.Builder#setNegativeButton setNegativeButton()}:</p>
+
+<pre style="clear:right">
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+// Add the buttons
+builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User clicked OK button
+           }
+       });
+builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User cancelled the dialog
+           }
+       });
+// Set other dialog properties
+...
+
+// Create the AlertDialog
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>Metode <code>set...Button()</code> mengharuskan adanya judul bagi tombol (disediakan
+oleh suatu <a href="{@docRoot}guide/topics/resources/string-resource.html">sumber daya string</a>) dan 
+{@link android.content.DialogInterface.OnClickListener} yang mendefinisikan tindakan yang diambil 
+bila pengguna menekan tombol.</p>
+
+<p>Ada tiga macam tombol tindakan yang Anda bisa tambahkan:</p>
+<dl>
+  <dt>Positif</dt>
+  <dd>Anda harus menggunakan tipe ini untuk menerima dan melanjutkan tindakan (tindakan "OK").</dd>
+  <dt>Negatif</dt>
+  <dd>Anda harus menggunakan tipe ini untuk membatalkan tindakan.</dd>
+  <dt>Netral</dt>
+  <dd>Anda harus menggunakan tipe ini bila pengguna mungkin tidak ingin melanjutkan tindakan,
+  namun tidak ingin membatalkan. Tipe ini muncul antara tombol positif dan 
+tombol negatif. Misalnya, tindakan bisa berupa "Ingatkan saya nanti".</dd> 
+</dl>
+
+<p>Anda hanya bisa menambahkan salah satu tipe tombol ke {@link
+android.app.AlertDialog}. Artinya, Anda tidak bisa memiliki lebih dari satu tombol "positif".</p>
+
+
+
+<div class="figure" style="width:290px;margin:0 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_list.png" alt="" />
+<p class="img-caption"><strong>Gambar 3.</strong>
+Dialog dengan satu judul dan daftar.</p>
+</div>
+
+<h3 id="AddingAList">Menambahkan daftar</h3>
+
+<p>Ada tiga macam daftar yang tersedia pada API {@link android.app.AlertDialog}:</p>
+<ul>
+<li>Daftar pilihan tunggal biasa</li>
+<li>Daftar pilihan tunggal persisten (tombol radio)</li>
+<li>Daftar pilihan ganda persisten (kotak cek)</li>
+</ul>
+
+<p>Untuk membuat daftar pilihan tunggal seperti dalam gambar 3, 
+gunakan metode {@link android.app.AlertDialog.Builder#setItems setItems()}:</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    builder.setTitle(R.string.pick_color)
+           .setItems(R.array.colors_array, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int which) {
+               // The 'which' argument contains the index position
+               // of the selected item
+           }
+    });
+    return builder.create();
+}
+</pre>
+
+<p>Karena daftar muncul dalam area konten dialog,
+dialog tidak bisa menampilkan pesan dan daftar sekaligus dan Anda harus menetapkan judul untuk
+dialog dengan {@link android.app.AlertDialog.Builder#setTitle setTitle()}. 
+Untuk menentukan item daftar, panggil {@link
+android.app.AlertDialog.Builder#setItems setItems()}, dengan meneruskan larik.
+Atau, Anda bisa menetapkan daftar menggunakan {@link
+android.app.AlertDialog.Builder#setAdapter setAdapter()}. Hal ini memungkinkan Anda mendukung daftar
+dengan data dinamis (seperti dari database) dengan menggunakan {@link android.widget.ListAdapter}.</p>
+
+<p>Jika Anda memilih untuk mendukung daftar dengan {@link android.widget.ListAdapter},
+selalu gunakan sebuah {@link android.support.v4.content.Loader} agar konten dimuat
+secara asinkron. Hal ini dijelaskan lebih jauh dalam panduan 
+<a href="{@docRoot}guide/topics/ui/declaring-layout.html#AdapterViews">Membuat Layout
+dengan Adaptor</a> dan <a href="{@docRoot}guide/components/loaders.html">Loader</a>
+.</p>
+
+<p class="note"><strong>Catatan:</strong> Secara default, menyentuh sebuah item daftar akan menutup dialog,
+kecuali Anda menggunakan salah satu daftar pilihan persisten berikut ini.</p>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_checkboxes.png" />
+<p class="img-caption"><strong>Gambar 4.</strong>
+Daftar item pilihan ganda.</p>
+</div>
+
+
+<h4 id="Checkboxes">Menambahkan daftar pilihan ganda atau pilihan tunggal persisten</h4>
+
+<p>Untuk menambahkan daftar item pilihan ganda (kotak cek) atau 
+item pilihan tunggal (tombol radio), gunakan masing-masing metode 
+{@link android.app.AlertDialog.Builder#setMultiChoiceItems(Cursor,String,String,
+DialogInterface.OnMultiChoiceClickListener) setMultiChoiceItems()}, atau 
+{@link android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()}.</p>
+
+<p>Misalnya, berikut ini cara membuat daftar pilihan ganda seperti
+yang ditampilkan dalam gambar 4 yang menyimpan item
+yang dipilih dalam {@link java.util.ArrayList}:</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    mSelectedItems = new ArrayList();  // Where we track the selected items
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Set the dialog title
+    builder.setTitle(R.string.pick_toppings)
+    // Specify the list array, the items to be selected by default (null for none),
+    // and the listener through which to receive callbacks when items are selected
+           .setMultiChoiceItems(R.array.toppings, null,
+                      new DialogInterface.OnMultiChoiceClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int which,
+                       boolean isChecked) {
+                   if (isChecked) {
+                       // If the user checked the item, add it to the selected items
+                       mSelectedItems.add(which);
+                   } else if (mSelectedItems.contains(which)) {
+                       // Else, if the item is already in the array, remove it 
+                       mSelectedItems.remove(Integer.valueOf(which));
+                   }
+               }
+           })
+    // Set the action buttons
+           .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // User clicked OK, so save the mSelectedItems results somewhere
+                   // or return them to the component that opened the dialog
+                   ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   ...
+               }
+           });
+
+    return builder.create();
+}
+</pre>
+
+<p>Walaupun daftar tradisional maupun daftar dengan tombol radio
+menyediakan tindakan "pilihan tunggal", Anda harus menggunakan {@link
+android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()} jika ingin mempertahankan pilihan pengguna.
+Yakni, jika nanti membuka dialog lagi untuk menunjukkan pilihan pengguna,
+maka Anda perlu membuat daftar dengan tombol radio.</p>
+
+
+
+
+
+<h3 id="CustomLayout">Membuat Layout Custom</h3>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_custom.png" alt="" />
+<p class="img-caption"><strong>Gambar 5.</strong> Layout dialog custom.</p>
+</div>
+
+<p>Jika Anda menginginkan layout custom dalam dialog, buatlah layout dan tambahkan ke
+{@link android.app.AlertDialog} dengan memanggil {@link
+android.app.AlertDialog.Builder#setView setView()} pada objek {@link
+android.app.AlertDialog.Builder} Anda.</p>
+
+<p>Secara default, layout custom akan mengisi jendela dialog, namun Anda masih bisa
+menggunakan metode {@link android.app.AlertDialog.Builder} untuk menambahkan tombol dan judul.</p>
+
+<p>Misalnya, berikut ini adalah file layout untuk dialog dalam Gambar 5:</p>
+
+<p style="clear:right" class="code-caption">res/layout/dialog_signin.xml</p>
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content">
+    &lt;ImageView
+        android:src="@drawable/header_logo"
+        android:layout_width="match_parent"
+        android:layout_height="64dp"
+        android:scaleType="center"
+        android:background="#FFFFBB33"
+        android:contentDescription="@string/app_name" />
+    &lt;EditText
+        android:id="@+id/username"
+        android:inputType="textEmailAddress"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="16dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="4dp"
+        android:hint="@string/username" />
+    &lt;EditText
+        android:id="@+id/password"
+        android:inputType="textPassword"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="4dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="16dp"
+        android:fontFamily="sans-serif"
+        android:hint="@string/password"/>
+&lt;/LinearLayout>
+</pre>
+
+<p class="note"><strong>Tip:</strong> Secara default, bila Anda telah mengatur sebuah elemen {@link android.widget.EditText}
+agar menggunakan tipe input {@code "textPassword"}, keluarga font akan diatur ke spasi tunggal, sehingga
+Anda harus mengubah keluarga font ke {@code "sans-serif"} sehingga kedua bidang teks menggunakan
+gaya font yang cocok.</p>
+
+<p>Untuk memekarkan layout dalam {@link android.support.v4.app.DialogFragment} Anda,
+ambillah {@link android.view.LayoutInflater} dengan 
+{@link android.app.Activity#getLayoutInflater()} dan panggil
+{@link android.view.LayoutInflater#inflate inflate()}, dengan parameter pertama
+adalah ID sumber daya layout dan parameter kedua adalah tampilan induk untuk layout.
+Selanjutnya Anda bisa memanggil {@link android.app.AlertDialog#setView setView()}
+untuk menempatkan layout dalam dialog.</p>
+
+<pre>
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Get the layout inflater
+    LayoutInflater inflater = getActivity().getLayoutInflater();
+
+    // Inflate and set the layout for the dialog
+    // Pass null as the parent view because its going in the dialog layout
+    builder.setView(inflater.inflate(R.layout.dialog_signin, null))
+    // Add action buttons
+           .setPositiveButton(R.string.signin, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // sign in the user ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int id) {
+                   LoginDialogFragment.this.getDialog().cancel();
+               }
+           });      
+    return builder.create();
+}
+</pre>
+
+<div class="note">
+<p><strong>Tip:</strong> Jika Anda menginginkan dialog custom,
+Anda bisa menampilkan {@link android.app.Activity} sebagai dialog
+daripada menggunakan API {@link android.app.Dialog}. Cukup buat satu aktivitas dan mengatur temanya ke
+{@link android.R.style#Theme_Holo_Dialog Theme.Holo.Dialog}
+di elemen manifes <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>:</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.Dialog" >
+</pre>
+<p>Demikian saja. Aktivitas sekarang ditampilkan dalam jendela dialog, sebagai ganti layar penuh.</p>
+</div>
+
+
+
+<h2 id="PassingEvents">Meneruskan Kejadian Kembali ke Host Dialog</h2>
+
+<p>Bila pengguna menyentuh salah satu tombol tindakan dialog atau memilih satu item dari daftarnya,
+{@link android.support.v4.app.DialogFragment} Anda bisa melakukan sendiri tindakan yang diperlukan
+, namun sering kali Anda perlu mengirim kejadian itu ke aktivitas atau fragmen yang
+membuka dialog. Caranya, definisikan antarmuka dengan sebuah metode untuk masing-masing tipe kejadian klik.
+Lalu implementasikan antarmuka itu dalam komponen host yang akan
+menerima kejadian tindakan dari dialog.</p>
+
+<p>Misalnya, berikut ini adalah {@link android.support.v4.app.DialogFragment} yang mendefinisikan
+antarmuka yang akan digunakan untuk mengirim kembali suatu kejadian ke aktivitas host:</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    
+    /* The activity that creates an instance of this dialog fragment must
+     * implement this interface in order to receive event callbacks.
+     * Each method passes the DialogFragment in case the host needs to query it. */
+    public interface NoticeDialogListener {
+        public void onDialogPositiveClick(DialogFragment dialog);
+        public void onDialogNegativeClick(DialogFragment dialog);
+    }
+    
+    // Use this instance of the interface to deliver action events
+    NoticeDialogListener mListener;
+    
+    // Override the Fragment.onAttach() method to instantiate the NoticeDialogListener
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        // Verify that the host activity implements the callback interface
+        try {
+            // Instantiate the NoticeDialogListener so we can send events to the host
+            mListener = (NoticeDialogListener) activity;
+        } catch (ClassCastException e) {
+            // The activity doesn't implement the interface, throw exception
+            throw new ClassCastException(activity.toString()
+                    + " must implement NoticeDialogListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>Aktivitas yang menjadi host dialog tersebut akan membuat instance dialog
+dengan konstruktor fragmen dialog dan menerima kejadian dialog
+melalui implementasi antarmuka {@code NoticeDialogListener}:</p>
+
+<pre>
+public class MainActivity extends FragmentActivity
+                          implements NoticeDialogFragment.NoticeDialogListener{
+    ...
+    
+    public void showNoticeDialog() {
+        // Create an instance of the dialog fragment and show it
+        DialogFragment dialog = new NoticeDialogFragment();
+        dialog.show(getSupportFragmentManager(), "NoticeDialogFragment");
+    }
+
+    // The dialog fragment receives a reference to this Activity through the
+    // Fragment.onAttach() callback, which it uses to call the following methods
+    // defined by the NoticeDialogFragment.NoticeDialogListener interface
+    &#64;Override
+    public void onDialogPositiveClick(DialogFragment dialog) {
+        // User touched the dialog's positive button
+        ...
+    }
+
+    &#64;Override
+    public void onDialogNegativeClick(DialogFragment dialog) {
+        // User touched the dialog's negative button
+        ...
+    }
+}
+</pre>
+
+<p>Karena aktivitas host mengimplementasikan {@code NoticeDialogListener}&mdash;yang
+diberlakukan oleh metode callback {@link android.support.v4.app.Fragment#onAttach onAttach()}
+di atas,&mdash;fragmen dialog bisa menggunakan
+metode callback antarmuka untuk mengirimkan kejadian klik ke aktivitas:</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    ...
+
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Build the dialog and set up the button click handlers
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the positive button event back to the host activity
+                       mListener.onDialogPositiveClick(NoticeDialogFragment.this);
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the negative button event back to the host activity
+                       mListener.onDialogNegativeClick(NoticeDialogFragment.this);
+                   }
+               });
+        return builder.create();
+    }
+}
+</pre>
+
+
+
+<h2 id="ShowingADialog">Menampilkan Dialog</h2>
+
+<p>Bila Anda ingin menampilkan dialog, buatlah instance {@link
+android.support.v4.app.DialogFragment} dan panggil {@link android.support.v4.app.DialogFragment#show
+show()}, dengan meneruskan {@link android.support.v4.app.FragmentManager} dan nama tag
+untuk fragmen dialognya.</p>
+
+<p>Anda bisa mendapatkan {@link android.support.v4.app.FragmentManager} dengan memanggil
+{@link android.support.v4.app.FragmentActivity#getSupportFragmentManager()} dari
+ {@link android.support.v4.app.FragmentActivity} atau {@link
+android.support.v4.app.Fragment#getFragmentManager()} dari {@link
+android.support.v4.app.Fragment}. Misalnya:</p>
+
+<pre>
+public void confirmFireMissiles() {
+    DialogFragment newFragment = new FireMissilesDialogFragment();
+    newFragment.show(getSupportFragmentManager(), "missiles");
+}
+</pre>
+
+<p>Argumen kedua, {@code "missiles"}, adalah nama tag unik yang digunakan sistem untuk menyimpan
+dan memulihkan status fragmen bila diperlukan. Tag ini juga memungkinkan Anda mendapatkan handle ke
+fragmen dengan memanggil {@link android.support.v4.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}.</p>
+
+
+
+
+<h2 id="FullscreenDialog">Menampilkan Dialog sebagai Layar Penuh atau Fragmen Tertanam</h2>
+
+<p>Anda mungkin memiliki desain UI yang di dalamnya Anda ingin UI muncul sebagai dialog dalam beberapa
+situasi, namun sebagai layar penuh atau fragmen tertanam dalam situasi lain (mungkin bergantung pada apakah
+perangkat memiliki layar besar atau layar kecil). Kelas {@link android.support.v4.app.DialogFragment}
+menawarkan fleksibilitas ini karena masih bisa berperilaku sebagai {@link
+android.support.v4.app.Fragment} yang bisa ditanamkan.</p>
+
+<p>Akan tetapi, dalam hal ini Anda tidak bisa menggunakan {@link android.app.AlertDialog.Builder AlertDialog.Builder}
+atau objek {@link android.app.Dialog} lain untuk membangun dialog. Jika
+Anda ingin {@link android.support.v4.app.DialogFragment} 
+bisa ditanamkan, Anda harus mendefinisikan dialog UI dalam layout, lalu memuat layout itu dalam metode callback
+{@link android.support.v4.app.DialogFragment#onCreateView
+onCreateView()}.</p>
+
+<p>Berikut ini adalah contoh {@link android.support.v4.app.DialogFragment} yang bisa muncul sebagai 
+dialog maupun fragmen yang bisa ditanamkan (menggunakan layout bernama <code>purchase_items.xml</code>):</p>
+
+<pre>
+public class CustomDialogFragment extends DialogFragment {
+    /** The system calls this to get the DialogFragment's layout, regardless
+        of whether it's being displayed as a dialog or an embedded fragment. */
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        // Inflate the layout to use as dialog or embedded fragment
+        return inflater.inflate(R.layout.purchase_items, container, false);
+    }
+  
+    /** The system calls this only when creating the layout in a dialog. */
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // The only reason you might override this method when using onCreateView() is
+        // to modify any dialog characteristics. For example, the dialog includes a
+        // title by default, but your custom layout might not need it. So here you can
+        // remove the dialog title, but you must call the superclass to get the Dialog.
+        Dialog dialog = super.onCreateDialog(savedInstanceState);
+        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
+        return dialog;
+    }
+}
+</pre>
+
+<p>Dan berikut ini adalah beberapa kode yang memutuskan apakah akan menampilkan fragmen sebagai dialog
+atau UI layar penuh, berdasarkan ukuran layar:</p>
+
+<pre>
+public void showDialog() {
+    FragmentManager fragmentManager = getSupportFragmentManager();
+    CustomDialogFragment newFragment = new CustomDialogFragment();
+    
+    if (mIsLargeLayout) {
+        // The device is using a large layout, so show the fragment as a dialog
+        newFragment.show(fragmentManager, "dialog");
+    } else {
+        // The device is smaller, so show the fragment fullscreen
+        FragmentTransaction transaction = fragmentManager.beginTransaction();
+        // For a little polish, specify a transition animation
+        transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
+        // To make it fullscreen, use the 'content' root view as the container
+        // for the fragment, which is always the root view for the activity
+        transaction.add(android.R.id.content, newFragment)
+                   .addToBackStack(null).commit();
+    }
+}
+</pre>
+
+<p>Untuk informasi selengkapnya tentang melakukan transaksi fragmen, lihat panduan
+<a href="{@docRoot}guide/components/fragments.html">Fragmen</a>.</p>
+
+<p>Dalam contoh ini, nilai boolean <code>mIsLargeLayout</code> menentukan apakah perangkat saat ini
+harus menggunakan desain layout besar aplikasi (dan dengan demikian menampilkan fragmen ini sebagai dialog, bukan
+layar penuh). Cara terbaik untuk mengatur jenis boolean ini adalah mendeklarasikan
+<a href="{@docRoot}guide/topics/resources/more-resources.html#Bool">nilai sumber daya boolean</a>
+dengan nilai <a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">sumber daya alternatif</a> untuk berbagai ukuran layar. Misalnya, berikut ini adalah dua
+versi sumber daya boolean untuk berbagai ukuran layar:</p>
+
+<p class="code-caption">res/values/bools.xml</p>
+<pre>
+&lt;!-- Default boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">false&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p class="code-caption">res/values-large/bools.xml</p>
+<pre>
+&lt;!-- Large screen boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">true&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p>Selanjutnya Anda bisa menetapkan nilai {@code mIsLargeLayout} selama
+metode {@link android.app.Activity#onCreate onCreate()} aktivitas:</p>
+
+<pre>
+boolean mIsLargeLayout;
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_main);
+
+    mIsLargeLayout = getResources().getBoolean(R.bool.large_layout);
+}
+</pre>
+
+
+
+<h3 id="ActivityAsDialog">Menampilkan aktivitas sebagai dialog pada layar besar</h3>
+
+<p>Sebagai ganti menampilkan dialog berupa UI layar penuh saat di layar kecil, Anda bisa memperoleh
+hasil yang sama dengan menampilkan {@link android.app.Activity} sebagai dialog saat di
+layar besar. Pendekatan yang Anda pilih bergantung pada desain aplikasi, namun
+menampilkan aktivitas sebagai dialog sering kali berguna bila aplikasi Anda sudah didesain untuk
+layar kecil dan Anda ingin meningkatkan pengalaman pada tablet dengan menampilkan aktivitas berjangka pendek
+sebagai dialog.</p>
+
+<p>Untuk menampilkan aktivitas sebagai dialog hanya saat di layar besar,
+terapkan tema {@link android.R.style#Theme_Holo_DialogWhenLarge Theme.Holo.DialogWhenLarge}
+ pada elemen manifes <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>:</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.DialogWhenLarge" >
+</pre>
+
+<p>Untuk informasi selengkapnya tentang mengatur gaya aktivitas Anda dengan tema, lihat panduan <a href="{@docRoot}guide/topics/ui/themes.html">Gaya dan Tema</a>.</p>
+
+
+
+<h2 id="DismissingADialog">Menutup Dialog</h2>
+
+<p>Bila pengguna menyentuh salah satu tombol tindakan yang dibuat dengan
+{@link android.app.AlertDialog.Builder}, sistem akan menutup dialog untuk Anda.</p>
+
+<p>Sistem juga menutup dialog bila pengguna menyentuh sebuah item dalam daftar dialog, kecuali
+bila daftar itu menggunakan tombol radio atau kotak cek. Jika tidak, Anda bisa menutup dialog secara manual
+dengan memanggil {@link android.support.v4.app.DialogFragment#dismiss()} pada {@link
+android.support.v4.app.DialogFragment} Anda.</p>
+
+<p>Jika Anda perlu melakukan
+tindakan tertentu saat dialog menghilang, Anda bisa menerapkan metode {@link
+android.support.v4.app.DialogFragment#onDismiss onDismiss()} dalam {@link
+android.support.v4.app.DialogFragment} Anda.</p>
+
+<p>Anda juga bisa <em>membatalkan</em> dialog. Ini merupakan kejadian khusus yang menunjukkan bahwa pengguna
+secara eksplisit meninggalkan dialog tanpa menyelesaikan tugas. Hal ini terjadi jika pengguna menekan tombol 
+<em>Back</em>, menyentuh layar di luar area dialog,
+atau jika Anda secara eksplisit memanggil {@link android.app.Dialog#cancel()} pada {@link
+android.app.Dialog} (seperti saat merespons tombol "Cancel" dalam dialog).</p>
+
+<p>Seperti yang ditampilkan dalam contoh di atas, Anda bisa merespons kejadian batal dengan menerapkan
+{@link android.support.v4.app.DialogFragment#onCancel onCancel()} dalam kelas {@link
+android.support.v4.app.DialogFragment} Anda.</p>
+
+<p class="note"><strong>Catatan:</strong> Sistem akan memanggil
+{@link android.support.v4.app.DialogFragment#onDismiss onDismiss()} pada tiap kejadian yang
+memanggil callback {@link android.support.v4.app.DialogFragment#onCancel onCancel()}. Akan tetapi,
+jika Anda memanggil {@link android.app.Dialog#dismiss Dialog.dismiss()} atau {@link
+android.support.v4.app.DialogFragment#dismiss DialogFragment.dismiss()},
+sistem akan memanggil {@link android.support.v4.app.DialogFragment#onDismiss onDismiss()} <em>namun
+bukan</em> {@link android.support.v4.app.DialogFragment#onCancel onCancel()}. Jadi biasanya Anda harus
+memanggil {@link android.support.v4.app.DialogFragment#dismiss dismiss()} bila pengguna menekan tombol
+<em>positif</em> dalam dialog untuk menghilangkan tampilan dialog.</p>
+
+
diff --git a/docs/html-intl/intl/in/guide/topics/ui/menus.jd b/docs/html-intl/intl/in/guide/topics/ui/menus.jd
new file mode 100644
index 0000000..2cd3e6a
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/ui/menus.jd
@@ -0,0 +1,1031 @@
+page.title=Menu
+parent.title=Antarmuka Pengguna
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Dalam dokumen ini</h2>
+<ol>
+  <li><a href="#xml">Mendefinisikan Menu dalam XML</a></li>
+  <li><a href="#options-menu">Membuat Menu Opsi</a>
+    <ol>
+      <li><a href="#RespondingOptionsMenu">Menangani kejadian klik</a></li>
+      <li><a href="#ChangingTheMenu">Mengubah item menu saat runtime</a></li>
+    </ol>
+  </li>
+  <li><a href="#context-menu">Membuat Menu Kontekstual</a>
+    <ol>
+      <li><a href="#FloatingContextMenu">Membuat menu konteks mengambang</a></li>
+      <li><a href="#CAB">Menggunakan mode tindakan kontekstual</a></li>
+    </ol>
+  </li>
+  <li><a href="#PopupMenu">Membuat Menu Popup</a>
+    <ol>
+      <li><a href="#PopupEvents">Menangani kejadian klik</a></li>
+    </ol>
+  </li>
+  <li><a href="#groups">Membuat Grup Menu</a>
+    <ol>
+      <li><a href="#checkable">Menggunakan item menu yang bisa diberi tanda cek</a></li>
+    </ol>
+  </li>
+  <li><a href="#intents">Menambahkan Item Menu Berdasarkan Intent</a>
+    <ol>
+      <li><a href="#AllowingToAdd">Memungkinkan aktivitas Anda ditambahkan ke menu lain</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>Kelas-kelas utama</h2>
+  <ol>
+    <li>{@link android.view.Menu}</li>
+    <li>{@link android.view.MenuItem}</li>
+    <li>{@link android.view.ContextMenu}</li>
+    <li>{@link android.view.ActionMode}</li>
+  </ol>
+
+  <h2>Lihat juga</h2>
+  <ol>
+    <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Action-Bar</a></li>
+    <li><a href="{@docRoot}guide/topics/resources/menu-resource.html">Sumber Daya Menu</a></li>
+    <li><a href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">Ucapkan
+Selamat Tinggal pada Tombol Menu</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Menu adalah komponen antarmuka pengguna yang lazim dalam banyak tipe aplikasi. Untuk menyediakan pengalaman pengguna yang sudah akrab
+dan konsisten, Anda harus menggunakan API {@link android.view.Menu} untuk menyajikan
+tindakan dan opsi lain dalam aktivitas kepada pengguna.</p>
+
+<p>Mulai dengan Android 3.0 (API level 11), perangkat berbasis Android tidak perlu lagi
+menyediakan tombol <em>Menu</em> tersendiri. Dengan perubahan ini, aplikasi Android harus bermigrasi dari 
+dependensi pada panel menu 6 item biasa, dan sebagai ganti menyediakan action-bar untuk menyajikan
+berbagai tindakan pengguna yang lazim.</p>
+
+<p>Walaupun desain dan pengalaman pengguna untuk sebagian item menu telah berubah, semantik untuk mendefinisikan
+serangkaian tindakan dan opsi masih berdasarkan pada API {@link android.view.Menu}. Panduan ini
+menampilkan cara membuat tiga tipe dasar penyajian menu atau tindakan pada semua
+versi Android:</p>
+
+<dl>
+  <dt><strong>Menu opsi dan action-bar</strong></dt>
+    <dd><a href="#options-menu">Menu opsi</a> adalah kumpulan item menu utama untuk suatu
+aktivitas. Inilah tempat Anda harus menempatkan tindakan yang berdampak global pada aplikasi, seperti
+"Cari", "Tulis email", dan "Pengaturan".
+  <p>Jika Anda mengembangkan aplikasi untuk Android 2.3 atau yang lebih rendah, pengguna bisa
+menampilkan panel menu opsi dengan menekan tombol <em>Menu</em>.</p>
+  <p>Pada Android 3.0 dan yang lebih tinggi, item menu opsi disajikan melalui <a href="{@docRoot}guide/topics/ui/actionbar.html">action-bar</a> sebagai kombinasi item tindakan
+di layar dan opsi overflow. Mulai dengan Android 3.0, tombol <em>Menu</em> dihilangkan (sebagian
+perangkat
+tidak memilikinya), sehingga Anda harus bermigrasi ke penggunaan action-bar untuk menyediakan akses ke tindakan dan
+opsi lainnya.</p>
+  <p>Lihat bagian tentang <a href="#options-menu">Membuat Menu Opsi</a>.</p>
+    </dd>
+    
+  <dt><strong>Menu konteks dan mode tindakan kontekstual</strong></dt>
+  
+   <dd>Menu konteks adalah <a href="#FloatingContextMenu">menu mengambang</a> yang muncul saat
+pengguna mengklik lama pada suatu elemen. Menu ini menyediakan tindakan yang memengaruhi konten atau
+bingkai konteks yang dipilih.
+  <p>Saat mengembangkan aplikasi untuk Android 3.0 dan yang lebih tinggi, sebagai gantinya Anda harus menggunakan <a href="#CAB">mode tindakan kontekstual</a> untuk memungkinkan tindakan pada konten yang dipilih. Mode ini menampilkan
+item tindakan yang memengaruhi konten yang dipilih dalam baris di bagian atas layar dan memungkinkan pengguna
+memilih beberapa item sekaligus.</p>
+  <p>Lihat bagian tentang <a href="#context-menu">Membuat Menu Kontekstual</a>.</p>
+</dd>
+    
+  <dt><strong>Menu popup</strong></dt>
+    <dd>Menu popup menampilkan daftar item secara vertikal yang dipasang pada tampilan yang
+memanggil menu. Ini cocok untuk menyediakan kelebihan tindakan yang terkait dengan konten tertentu atau
+untuk menyediakan opsi bagi bagian kedua dari suatu perintah. Tindakan di menu popup
+<strong>tidak</strong> boleh memengaruhi secara langsung konten yang bersangkutan&mdash;yang diperuntukkan bagi
+tindakan kontekstual. Melainkan, menu popup adalah untuk tindakan tambahan yang terkait dengan wilayah konten dalam
+aktivitas Anda.
+  <p>Lihat bagian tentang <a href="#PopupMenu">Membuat Menu Popup</a>.</p>
+</dd>
+</dl>
+
+
+
+<h2 id="xml">Mendefinisikan Menu dalam XML</h2>
+
+<p>Untuk semua tipe menu, Android menyediakan sebuah format XML standar untuk mendefinisikan item menu.
+Sebagai ganti membuat menu dalam kode aktivitas, Anda harus mendefinisikan menu dan semua itemnya dalam
+<a href="{@docRoot}guide/topics/resources/menu-resource.html">sumber daya menu</a> XML. Anda kemudian bisa
+memekarkan sumber daya menu (memuatnya sebagai objek {@link android.view.Menu}) dalam aktivitas atau
+fragmen.</p>
+
+<p>Menggunakan sumber daya menu adalah praktik yang baik karena beberapa alasan:</p>
+<ul>
+  <li>Memvisualisasikan struktur menu dalam XML menjadi lebih mudah.</li>
+  <li>Cara ini memisahkan konten untuk menu dari kode perilaku aplikasi Anda.</li>
+  <li>Cara ini memungkinkan Anda membuat konfigurasi menu alternatif untuk berbagai versi platform,
+ukuran layar, dan konfigurasi lainnya dengan memanfaatkan kerangka kerja <a href="{@docRoot}guide/topics/resources/index.html">sumber daya aplikasi</a>.</li>
+</ul>
+
+<p>Untuk mendefinisikan menu, buatlah sebuah file XML dalam direktori <code>res/menu/</code>
+proyek dan buat menu dengan elemen-elemen berikut:</p>
+<dl>
+  <dt><code>&lt;menu></code></dt>
+    <dd>Mendefinisikan {@link android.view.Menu}, yang merupakan sebuah kontainer untuk item menu. Elemen 
+<code>&lt;menu></code> harus menjadi simpul akar untuk file dan bisa menampung salah satu atau beberapa dari elemen
+<code>&lt;item></code> dan <code>&lt;group></code>.</dd>
+
+  <dt><code>&lt;item></code></dt>
+    <dd>Membuat {@link android.view.MenuItem}, yang mewakili satu item menu. Elemen ini
+bisa berisi elemen <code>&lt;menu></code> tersarang guna untuk membuat submenu.</dd>
+    
+  <dt><code>&lt;group></code></dt>
+    <dd>Kontainer opsional tak terlihat untuk elemen-elemen {@code &lt;item&gt;}. Kontainer ini memungkinkan Anda
+mengelompokkan item menu untuk berbagi properti seperti status aktif dan visibilitas. Untuk informasi
+selengkapnya, lihat bagian tentang <a href="#groups">Membuat Grup Menu</a>.</dd>
+</dl>
+
+
+<p>Berikut ini adalah contoh menu bernama <code>game_menu.xml</code>:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/new_game"
+          android:icon="@drawable/ic_new_game"
+          android:title="@string/new_game"
+          android:showAsAction="ifRoom"/&gt;
+    &lt;item android:id="@+id/help"
+          android:icon="@drawable/ic_help"
+          android:title="@string/help" /&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Elemen <code>&lt;item></code> mendukung beberapa atribut yang bisa Anda gunakan untuk mendefinisikan penampilan dan perilaku
+item. Item menu di atas mencakup atribut berikut:</p>
+
+<dl>
+  <dt>{@code android:id}</dt>
+    <dd>ID sumber daya unik bagi item, yang memungkinkan aplikasi mengenali item
+bila pengguna memilihnya.</dd>
+  <dt>{@code android:icon}</dt>
+    <dd>Acuan ke drawable untuk digunakan sebagai ikon item.</dd>
+  <dt>{@code android:title}</dt>
+    <dd>Acuan ke string untuk digunakan sebagai judul item.</dd>
+  <dt>{@code android:showAsAction}</dt>
+    <dd>Menetapkan waktu dan cara item ini muncul sebagai item tindakan di <a href="{@docRoot}guide/topics/ui/actionbar.html">action-bar</a>.</dd>
+</dl>
+
+<p>Ini adalah atribut-atribut terpenting yang harus Anda gunakan, namun banyak lagi yang tersedia.
+Untuk informasi tentang semua atribut yang didukung, lihat dokumen <a href="{@docRoot}guide/topics/resources/menu-resource.html">Sumber Daya Menu</a>.</p>
+
+<p>Anda bisa menambahkan submenu ke sebuah item di menu (kecuali submenu) apa saja dengan menambahkan elemen {@code &lt;menu&gt;}
+sebagai anak {@code &lt;item&gt;}. Submenu berguna saat aplikasi Anda memiliki banyak
+fungsi yang bisa ditata ke dalam topik-topik, seperti item dalam sebuah baris menu aplikasi PC (File,
+Edit, Lihat, dsb.). Misalnya:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/file"
+          android:title="@string/file" &gt;
+        &lt;!-- "file" submenu --&gt;
+        &lt;menu&gt;
+            &lt;item android:id="@+id/create_new"
+                  android:title="@string/create_new" /&gt;
+            &lt;item android:id="@+id/open"
+                  android:title="@string/open" /&gt;
+        &lt;/menu&gt;
+    &lt;/item&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Untuk menggunakan menu dalam aktivitas, Anda perlu memekarkan sumber daya menu (mengonversi sumber daya XML
+menjadi objek yang bisa diprogram) dengan menggunakan {@link android.view.MenuInflater#inflate(int,Menu)
+MenuInflater.inflate()}. Di bagian berikut, Anda akan melihat cara memekarkan menu untuk tiap
+tipe menu.</p>
+
+
+
+<h2 id="options-menu">Membuat Menu Opsi</h2>
+
+<div class="figure" style="width:200px;margin:0">
+  <img src="{@docRoot}images/options_menu.png" height="333" alt="" />
+  <p class="img-caption"><strong>Gambar 1.</strong> Menu opsi di
+Browser, pada Android 2.3.</p>
+</div>
+
+<p>Menu opsi adalah tempat Anda harus menyertakan tindakan dan opsi lain yang relevan dengan
+konteks aktivitas saat ini, seperti "Cari", "Tulis email", dan "Pengaturan".</p>
+
+<p>Tempat item dalam menu opsi muncul di layar bergantung pada versi aplikasi yang Anda
+kembangkan:</p>
+
+<ul>
+  <li>Jika Anda mengembangkan aplikasi untuk <strong>Android 2.3.x (API level 10) atau
+yang lebih rendah</strong>, konten menu opsi muncul pada bagian bawah layar bila pengguna
+menekan tombol <em>Menu</em>, seperti yang ditampilkan dalam gambar 1. Bila dibuka, bagian yang terlihat pertama adalah
+menu
+ikon, yang menampung hingga enam item menu. Jika menu Anda menyertakan lebih dari enam item, Android akan meletakkan
+item keenam dan sisanya ke dalam menu kelebihan, yang bisa dibuka pengguna dengan memilih
+<em>More</em>.</li>
+
+  <li>Jika Anda mengembangkan aplikasi untuk <strong>Android 3.0 (API level 11) dan
+yang lebih tinggi</strong>, item menu opsi tersedia dalam <a href="{@docRoot}guide/topics/ui/actionbar.html">action-bar</a>. Secara default, sistem
+meletakkan semua item dalam kelebihan tindakan, yang bisa ditampilkan pengguna dengan ikon kelebihan tindakan di
+sisi kanan action-bar (atau dengan menekan tombol <em>Menu</em> perangkat, jika tersedia). Untuk
+mengaktifkan
+akses cepat ke tindakan penting, Anda bisa mempromosikan beberapa item agar muncul pada action-bar dengan menambahkan
+{@code android:showAsAction="ifRoom"} ke elemen-elemen {@code &lt;item&gt;} yang bersangkutan (lihat gambar
+2). <p>Untuk informasi selengkapnya tentang item tindakan dan perilaku action-bar lainnya, lihat panduan <a href="{@docRoot}guide/topics/ui/actionbar.html">Action-Bar</a>. </p>
+<p class="note"><strong>Catatan:</strong> Sekalipun Anda <em>tidak</em> mengembangkan aplikasi untuk Android 3.0 atau
+yang lebih tinggi, Anda bisa membuat layout action-bar sendiri untuk mendapatkan efek serupa. Untuk contoh cara
+mendukung versi Android yang lebih lama dengan action-bar, lihat contoh <a href="{@docRoot}resources/samples/ActionBarCompat/index.html">Kompatibilitas Action-Bar</a>
+.</p>
+</li>
+</ul>
+
+<img src="{@docRoot}images/ui/actionbar.png" alt="" />
+<p class="img-caption"><strong>Gambar 2.</strong> Action-bar dari aplikasi <a href="{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb Gallery</a>, yang menampilkan
+tab-tab navigasi dan item tindakan kamera (plus tombol kelebihan tindakan).</p>
+
+<p>Anda bisa mendeklarasikan item untuk menu opsi dari subkelas {@link android.app.Activity}
+atau subkelas {@link android.app.Fragment}. Jika aktivitas maupun fragmen Anda
+mendeklarasikan item menu opsi, keduanya akan dikombinasikan dalam UI. Item aktivitas akan muncul
+lebih dahulu, diikuti oleh item tiap fragmen sesuai dengan urutan penambahan fragmen ke
+aktivitas. Jika perlu, Anda bisa menyusun ulang item menu dengan atribut {@code android:orderInCategory}
+dalam setiap {@code &lt;item&gt;} yang perlu Anda pindahkan.</p>
+
+<p>Untuk menetapkan menu opsi suatu aktivitas, kesampingkan {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} (fragmen-fragmen menyediakan 
+callback {@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()} sendiri). Dalam metode ini
+, Anda bisa memekarkan sumber daya menu (<a href="#xml">yang didefinisikan dalam XML</a>) menjadi {@link
+android.view.Menu} yang disediakan dalam callback. Misalnya:</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu) {
+    MenuInflater inflater = {@link android.app.Activity#getMenuInflater()};
+    inflater.inflate(R.menu.game_menu, menu);
+    return true;
+}
+</pre>
+
+<p>Anda juga bisa menambahkan item menu dengan menggunakan {@link android.view.Menu#add(int,int,int,int)
+add()} dan mengambil item dengan {@link android.view.Menu#findItem findItem()} untuk merevisi propertinya
+dengan API {@link android.view.MenuItem}.</p>
+
+<p>Jika Anda mengembangkan aplikasi untuk Android 2.3.x dan yang lebih rendah, sistem akan memanggil {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} untuk membuat menu opsi
+bila pengguna membuka menu untuk pertama kali. Jika Anda mengembangkan aplikasi untuk Android 3.0 dan yang lebih tinggi, 
+sistem akan memanggil {@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} saat
+memulai aktivitas, untuk menampilkan item menu pada action-bar.</p>
+
+
+
+<h3 id="RespondingOptionsMenu">Menangani kejadian klik</h3>
+
+<p>Bila pengguna memilih item dari menu opsi (termasuk item tindakan dalam action-bar),
+sistem akan memanggil metode {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} aktivitas Anda. Metode ini meneruskan {@link android.view.MenuItem} yang dipilih. Anda
+bisa mengidentifikasi item dengan memanggil {@link android.view.MenuItem#getItemId()}, yang menghasilkan
+ID unik untuk item menu itu (yang didefinisikan oleh atribut {@code android:id} dalam sumber daya menu atau dengan 
+integer yang diberikan ke metode {@link android.view.Menu#add(int,int,int,int) add()}). Anda bisa mencocokkan
+ID ini dengan item menu yang diketahui untuk melakukan tindakan yang sesuai. Misalnya:</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    // Handle item selection
+    switch (item.getItemId()) {
+        case R.id.new_game:
+            newGame();
+            return true;
+        case R.id.help:
+            showHelp();
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>Bila Anda berhasil menangani sebuah item menu, kembalikan {@code true}. Jika tidak menangani item menu
+, Anda harus memanggil implementasi superkelas {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} (implementasi default
+menghasilkan false).</p>
+
+<p>Jika aktivitas Anda menyertakan fragmen, sistem akan memanggil lebih dahulu {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} untuk aktivitas, kemudian
+untuk setiap fragmen (sesuai dengan urutan penambahan fragmen) hingga satu fragmen mengembalikan
+{@code true} atau semua fragmen telah dipanggil.</p>
+
+<p class="note"><strong>Tip:</strong> Android 3.0 menambahkan kemampuan mendefinisikan perilaku on-click
+untuk item menu dalam XML, dengan menggunakan atribut {@code android:onClick}. Nilai atribut 
+harus berupa nama metode yang didefinisikan aktivitas dengan menggunakan menu. Metode
+harus bersifat publik dan menerima satu parameter {@link android.view.MenuItem}&mdash;bila sistem
+memanggilnya, metode ini akan meneruskan item menu yang dipilih. Untuk informasi selengkapnya dan contoh, lihat dokumen <a href="{@docRoot}guide/topics/resources/menu-resource.html">Sumber Daya Menu</a>.</p>
+
+<p class="note"><strong>Tip:</strong> Jika aplikasi Anda berisi banyak aktivitas dan
+sebagian menyediakan menu opsi yang sama, pertimbangkan untuk membuat
+aktivitas yang tidak mengimplementasikan apa-apa kecuali metode {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} dan {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()}. Kemudian perluas kelas ini untuk setiap aktivitas yang harus menggunakan
+menu opsi yang sama. Dengan begini, Anda bisa mengelola satu set kode untuk menangani tindakan menu
+dan setiap kelas turunan mewarisi perilaku menu.
+Jika ingin menambahkan item menu ke salah satu aktivitas turunan,
+kesampingkan {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} dalam aktivitas itu. Panggil {@code super.onCreateOptionsMenu(menu)} agar
+item menu asli dibuat, kemudian tambahkan item menu yang baru dengan {@link
+android.view.Menu#add(int,int,int,int) menu.add()}. Anda juga bisa mengesampingkan
+perilaku superkelas untuk setiap item menu.</p>
+
+
+<h3 id="ChangingTheMenu">Mengubah item menu saat runtime</h3>
+
+<p>Setelah sistem memanggil {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()}, sistem akan mempertahankan instance {@link android.view.Menu} yang Anda tempatkan dan
+tidak akan memanggil {@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}
+lagi kecuali menu diinvalidkan karena suatu alasan. Akan tetapi, Anda harus menggunakan {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} hanya untuk membuat
+status menu awal dan tidak untuk membuat perubahan selama daur hidup aktivitas.</p>
+
+<p>Jika Anda ingin mengubah menu opsi berdasarkan 
+kejadian yang terjadi selama daur hidup aktivitas, Anda bisa melakukannya dalam metode
+{@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}. Metode ini
+meneruskan objek {@link android.view.Menu} sebagaimana adanya saat ini sehingga Anda bisa mengubahnya,
+seperti menambah, menghapus, atau menonaktifkan item. (Fragmen juga menyediakan callback {@link
+android.app.Fragment#onPrepareOptionsMenu onPrepareOptionsMenu()}.)</p>
+
+<p>Pada Android 2.3.x dan yang lebih rendah, sistem akan memanggil {@link
+android.app.Activity#onPrepareOptionsMenu(Menu)
+onPrepareOptionsMenu()} setiap kali pengguna membuka menu opsi (menekan tombol <em>Menu</em>
+).</p>
+
+<p>Pada Android 3.0 dan yang lebih tinggi, menu opsi dianggap sebagai selalu terbuka saat item menu
+ditampilkan pada action-bar. Bila ada kejadian dan Anda ingin melakukan pembaruan menu, Anda harus
+memanggil {@link android.app.Activity#invalidateOptionsMenu invalidateOptionsMenu()} untuk meminta
+sistem memanggil {@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}.</p>
+
+<p class="note"><strong>Catatan:</strong> 
+Anda tidak boleh mengubah item dalam menu opsi berdasarkan {@link android.view.View} yang saat ini
+difokus. Saat dalam mode sentuh (bila pengguna tidak sedang menggunakan trackball atau d-pad), tampilan
+tidak bisa mengambil fokus, sehingga Anda tidak boleh menggunakan fokus sebagai dasar untuk mengubah
+item dalam menu opsi. Jika Anda ingin menyediakan item menu yang peka konteks pada {@link
+android.view.View}, gunakan <a href="#context-menu">Menu Konteks</a>.</p>
+
+
+
+
+<h2 id="context-menu">Membuat Menu Kontekstual</h2>
+
+<div class="figure" style="width:420px;margin-top:-1em">
+  <img src="{@docRoot}images/ui/menu-context.png" alt="" />
+  <p class="img-caption"><strong>Gambar 3.</strong> Cuplikan layar menu konteks mengambang (kiri)
+dan action-bar kontekstual (kanan).</p>
+</div>
+
+<p>Menu kontekstual menawarkan tindakan yang memengaruhi item atau bingkai konteks tertentu dalam UI. Anda
+bisa menyediakan menu konteks untuk setiap tampilan, tetapi menu ini paling sering digunakan untuk item pada {@link
+android.widget.ListView}, {@link android.widget.GridView}, atau kumpulan tampilan lainnya yang bisa digunakan
+pengguna untuk melakukan tindakan langsung pada setiap item.</p>
+
+<p>Ada dua cara menyediakan tindakan kontekstual:</p>
+<ul>
+  <li>Dalam <a href="#FloatingContextMenu">menu konteks mengambang</a>. Menu muncul sebagai
+daftar item menu mengambang (serupa dengan dialog) bila pengguna mengklik lama (menekan dan
+menahan) pada tampilan yang mendeklarasikan dukungan bagi menu konteks. Pengguna bisa melakukan
+tindakan kontekstual pada satu item untuk setiap kalinya.</li>
+
+  <li>Dalam <a href="#CAB">mode tindakan kontekstual</a>. Mode ini adalah implementasi sistem
+{@link android.view.ActionMode} yang menampilkan <em>action-bar kontekstual</em> di bagian atas
+layar dengan item tindakan yang memengaruhi item(-item) yang dipilih. Bila mode ini aktif, pengguna
+bisa melakukan tindakan pada beberapa item sekaligus (jika aplikasi Anda mengizinkannya).</li>
+</ul>
+
+<p class="note"><strong>Catatan:</strong> Mode tindakan kontekstual tersedia pada Android 3.0 (API
+level 11) dan yang lebih tinggi dan merupakan teknik yang lebih disukai untuk menampilkan tindakan kontekstual bila
+tersedia. Jika aplikasi Anda mendukung versi yang lebih rendah daripada 3.0, maka Anda harus mundur ke
+menu konteks mengambang pada perangkat-perangkat itu.</p>
+
+
+<h3 id="FloatingContextMenu">Membuat menu konteks mengambang</h3>
+
+<p>Untuk menyediakan menu konteks mengambang:</p>
+<ol>
+  <li>Daftarkan {@link android.view.View} ke menu konteks yang harus dikaitkan dengan
+memanggil {@link android.app.Activity#registerForContextMenu(View) registerForContextMenu()} dan teruskan
+{@link android.view.View} ke menu itu.
+  <p>Jika aktivitas Anda menggunakan {@link android.widget.ListView} atau {@link android.widget.GridView} dan
+Anda ingin setiap item untuk menyediakan menu konteks yang sama, daftarkan semua item ke menu konteks dengan
+meneruskan {@link android.widget.ListView} atau {@link android.widget.GridView} ke {@link
+android.app.Activity#registerForContextMenu(View) registerForContextMenu()}.</p>
+</li>
+
+  <li>Implementasikan metode {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()} 
+dalam {@link android.app.Activity} atau {@link android.app.Fragment} Anda.
+  <p>Bila tampilan yang terdaftar menerima kejadian klik-lama, sistem akan memanggil metode {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()}
+Anda. Inilah tempat Anda mendefinisikan item menu, biasanya dengan memekarkan sumber daya menu. Misalnya:
+</p>
+<pre>
+&#64;Override
+public void onCreateContextMenu(ContextMenu menu, View v,
+                                ContextMenuInfo menuInfo) {
+    super.onCreateContextMenu(menu, v, menuInfo);
+    MenuInflater inflater = getMenuInflater();
+    inflater.inflate(R.menu.context_menu, menu);
+}
+</pre>
+
+<p>{@link android.view.MenuInflater} memungkinkan Anda untuk memekarkan menu konteks <a href="{@docRoot}guide/topics/resources/menu-resource.html">sumber daya menu</a>. Parameter metode callback
+menyertakan {@link android.view.View}
+yang dipilih pengguna dan objek {@link android.view.ContextMenu.ContextMenuInfo} yang menyediakan
+informasi tambahan tentang item yang dipilih. Jika aktivitas Anda memiliki beberapa tampilan yang masing-masingnya menyediakan
+menu konteks berbeda, Anda bisa menggunakan parameter ini untuk menentukan menu konteks yang harus
+dimekarkan.</p>
+</li>
+
+<li>Implementasikan {@link android.app.Activity#onContextItemSelected(MenuItem)
+onContextItemSelected()}.
+  <p>Bila pengguna memilih item menu, sistem akan memanggil metode ini sehingga Anda bisa melakukan 
+tindakan yang sesuai. Misalnya:</p>
+
+<pre>
+&#64;Override
+public boolean onContextItemSelected(MenuItem item) {
+    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
+    switch (item.getItemId()) {
+        case R.id.edit:
+            editNote(info.id);
+            return true;
+        case R.id.delete:
+            deleteNote(info.id);
+            return true;
+        default:
+            return super.onContextItemSelected(item);
+    }
+}
+</pre>
+
+<p>Metode {@link android.view.MenuItem#getItemId()} melakukan query ID untuk
+item menu yang dipilih, yang harus Anda tetapkan ke setiap item menu dalam XML dengan menggunakan atribut {@code
+android:id}, seperti yang ditampilkan di bagian tentang <a href="#xml">Mendefinisikan Menu dalam
+XML</a>.</p>
+
+<p>Bila Anda berhasil menangani sebuah item menu, kembalikan {@code true}. Jika tidak menangani item menu,
+Anda harus meneruskan item menu ke implementasi superkelas. Jika aktivitas Anda menyertakan fragmen,
+aktivitas akan menerima callback ini lebih dahulu. Dengan memanggil superkelas bila tidak ditangani, sistem
+meneruskan kejadian ke metode callback di setiap fragmen, satu per satu (sesuai dengan urutan
+penambahan fragmen) hingga {@code true} atau {@code false} dikembalikan. (Implementasi default
+untuk {@link android.app.Activity} dan {@code android.app.Fragment} mengembalikan {@code
+false}, sehingga Anda harus selalu memanggil superkelas bila tidak ditangani.)</p>
+</li>
+</ol>
+
+
+<h3 id="CAB">Menggunakan mode tindakan kontekstual</h3>
+
+<p>Mode tindakan kontekstual adalah implementasi sistem {@link android.view.ActionMode} yang
+memfokuskan interaksi pengguna pada upaya melakukan tindakan kontekstual. Bila seorang
+pengguna mengaktifkan mode ini dengan memilih item, <em>action-bar kontekstual</em> akan muncul di bagian atas
+layar untuk menampilkan tindakan yang bisa dilakukan pengguna pada item yang dipilih saat ini. Selagi mode ini
+diaktifkan, pengguna bisa memilih beberapa item (jika Anda mengizinkan), membatalkan pilihan item, dan melanjutkan
+penelusuran dalam aktivitas (sebanyak yang ingin Anda izinkan). Mode tindakan dinonaktifkan
+dan action-bar kontekstual menghilang bila pengguna membatalkan pilihan semua item, menekan tombol BACK,
+atau memilih tindakan <em>Done</em> di sisi kiri action-bar.</p>
+
+<p class="note"><strong>Catatan:</strong> Action-bar kontekstual tidak harus
+terkait dengan <a href="{@docRoot}guide/topics/ui/actionbar.html">action-bar</a>. Action-bar ini beroperasi
+secara independen, walaupun action-bar kontekstual secara visual mengambil alih
+posisi action-bar.</p>
+
+<p>Jika Anda mengembangkan aplikasi untuk Android 3.0 (API level 11) atau yang lebih tinggi, Anda
+biasanya harus menggunakan mode tindakan kontekstual untuk menampilkan tindakan kontekstual, sebagai ganti <a href="#FloatingContextMenu">menu konteks mengambang</a>.</p>
+
+<p>Untuk tampilan yang menyediakan tindakan kontekstual, Anda biasanya harus memanggil mode tindakan kontekstual
+pada salah satu dari dua kejadian (atau keduanya):</p>
+<ul>
+  <li>Pengguna mengklik-lama pada tampilan.</li>
+  <li>Pengguna memilih kotak cek atau komponen UI yang serupa dalam tampilan.</li>
+</ul>
+
+<p>Cara aplikasi memanggil mode tindakan kontekstual dan mendefinisikan perilaku setiap
+tindakan bergantung pada desain Anda. Pada dasarnya ada dua desain:</p>
+<ul>
+  <li>Untuk tindakan kontekstual pada tampilan individual dan tak didukung.</li>
+  <li>Untuk tindakan kontekstual batch pada grup item dalam {@link
+android.widget.ListView} atau {@link android.widget.GridView} (memungkinkan pengguna memilih beberapa
+item dan melakukan tindakan pada semua item itu).</li>
+</ul>
+
+<p>Bagian berikut ini menjelaskan penyiapan yang diperlukan untuk setiap skenario.</p>
+
+
+<h4 id="CABforViews">Mengaktifkan mode tindakan kontekstual untuk tampilan individual</h4>
+
+<p>Jika Anda ingin memanggil mode tindakan kontekstual hanya bila pengguna memilih
+tampilan tertentu, Anda harus:</p>
+<ol>
+  <li>Mengimplementasikan antarmuka {@link android.view.ActionMode.Callback}. Dalam metode callback-nya, Anda
+bisa menetapkan tindakan untuk action-bar kontekstual, merespons kejadian klik pada item tindakan, dan
+menangani kejadian daur hidup lainnya untuk mode tindakan itu.</li>
+  <li>Memanggil {@link android.app.Activity#startActionMode startActionMode()} bila Anda ingin menampilkan
+action-bar (seperti saat pengguna mengklik-lama pada tampilan).</li>
+</ol>
+
+<p>Misalnya:</p>
+
+<ol>
+  <li>Implementasikan antarmuka {@link android.view.ActionMode.Callback ActionMode.Callback}:
+<pre>
+private ActionMode.Callback mActionModeCallback = new ActionMode.Callback() {
+
+    // Called when the action mode is created; startActionMode() was called
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate a menu resource providing context menu items
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context_menu, menu);
+        return true;
+    }
+
+    // Called each time the action mode is shown. Always called after onCreateActionMode, but
+    // may be called multiple times if the mode is invalidated.
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        return false; // Return false if nothing is done
+    }
+
+    // Called when the user selects a contextual menu item
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        switch (item.getItemId()) {
+            case R.id.menu_share:
+                shareCurrentItem();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    // Called when the user exits the action mode
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        mActionMode = null;
+    }
+};
+</pre>
+
+<p>Perhatikan bahwa kejadian callback ini hampir persis sama dengan callback untuk <a href="#options-menu">menu opsi</a>, hanya saja setiap callback ini juga meneruskan objek {@link
+android.view.ActionMode} yang terkait dengan kejadian. Anda bisa menggunakan API {@link
+android.view.ActionMode} untuk membuat berbagai perubahan pada CAB, seperti merevisi judul dan
+subjudul dengan {@link android.view.ActionMode#setTitle setTitle()} dan {@link
+android.view.ActionMode#setSubtitle setSubtitle()} (berguna untuk menunjukkan jumlah item
+yang dipilih).</p>
+
+<p>Juga perhatikan bahwa contoh di atas mengatur variabel {@code mActionMode} ke nol bila
+mode tindakan dimusnahkan. Dalam langkah berikutnya, Anda akan melihat cara variabel diinisialisasi dan kegunaan menyimpan
+variabel anggota dalam aktivitas atau fragmen.</p>
+</li>
+
+  <li>Panggil {@link android.app.Activity#startActionMode startActionMode()} untuk mengaktifkan
+mode tindakan kontekstual bila sesuai, seperti saat merespons klik-lama pada {@link
+android.view.View}:</p>
+
+<pre>
+someView.setOnLongClickListener(new View.OnLongClickListener() {
+    // Called when the user long-clicks on someView
+    public boolean onLongClick(View view) {
+        if (mActionMode != null) {
+            return false;
+        }
+
+        // Start the CAB using the ActionMode.Callback defined above
+        mActionMode = getActivity().startActionMode(mActionModeCallback);
+        view.setSelected(true);
+        return true;
+    }
+});
+</pre>
+
+<p>Bila Anda memanggil {@link android.app.Activity#startActionMode startActionMode()}, sistem akan mengembalikan
+{@link android.view.ActionMode} yang dibuat. Dengan menyimpannya dalam variabel anggota, Anda bisa
+membuat perubahan ke action-bar kontekstual sebagai respons terhadap kejadian lainnya. Dalam contoh di atas, 
+{@link android.view.ActionMode} digunakan untuk memastikan bahwa instance {@link android.view.ActionMode}
+tidak dibuat kembali jika sudah aktif, dengan memeriksa apakah anggota bernilai nol sebelum memulai
+mode tindakan.</p>
+</li>
+</ol>
+
+
+
+<h4 id="CABforListView">Mengaktifkan tindakan kontekstual batch dalam ListView atau GridView</h4>
+
+<p>Jika Anda memiliki sekumpulan item dalam {@link android.widget.ListView} atau {@link
+android.widget.GridView} (atau ekstensi {@link android.widget.AbsListView} lainnya) dan ingin
+mengizinkan pengguna melakukan tindakan batch, Anda harus:</p>
+
+<ul>
+  <li>Mengimplementasikan antarmuka {@link android.widget.AbsListView.MultiChoiceModeListener} dan mengaturnya
+untuk grup tampilan dengan {@link android.widget.AbsListView#setMultiChoiceModeListener
+setMultiChoiceModeListener()}. Dalam metode callback listener, Anda bisa menetapkan tindakan
+untuk action-bar kontekstual, merespons kejadian klik pada item tindakan, dan menangani callback lainnya
+yang diwarisi dari antarmuka {@link android.view.ActionMode.Callback}.</li>
+
+  <li>Panggil {@link android.widget.AbsListView#setChoiceMode setChoiceMode()} dengan argumen {@link
+android.widget.AbsListView#CHOICE_MODE_MULTIPLE_MODAL}.</li>
+</ul>
+
+<p>Misalnya:</p>
+
+<pre>
+ListView listView = getListView();
+listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
+listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
+
+    &#64;Override
+    public void onItemCheckedStateChanged(ActionMode mode, int position,
+                                          long id, boolean checked) {
+        // Here you can do something when items are selected/de-selected,
+        // such as update the title in the CAB
+    }
+
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        // Respond to clicks on the actions in the CAB
+        switch (item.getItemId()) {
+            case R.id.menu_delete:
+                deleteSelectedItems();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate the menu for the CAB
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context, menu);
+        return true;
+    }
+
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        // Here you can make any necessary updates to the activity when
+        // the CAB is removed. By default, selected items are deselected/unchecked.
+    }
+
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        // Here you can perform updates to the CAB due to
+        // an {@link android.view.ActionMode#invalidate} request
+        return false;
+    }
+});
+</pre>
+
+<p>Demikian saja. Kini bila pengguna memilih item dengan klik-lama, sistem akan memanggil metode {@link
+android.widget.AbsListView.MultiChoiceModeListener#onCreateActionMode onCreateActionMode()}
+dan menampilkan action-bar kontekstual bersama tindakan yang ditetapkan. Saat
+action-bar kontekstual terlihat, pengguna bisa memilih item tambahan.</p>
+
+<p>Dalam beberapa kasus di mana tindakan kontekstual menyediakan item tindakan umum, Anda mungkin
+ingin menambahkan kotak cek atau elemen UI serupa yang memungkinkan pengguna memilih item, karena pengguna
+mungkin tidak menemukan perilaku klik-lama. Bila pengguna memilih kotak cek itu, Anda
+bisa memanggil mode tindakan kontekstual dengan mengatur item daftar yang bersangkutan ke
+status diberi tanda cek dengan {@link android.widget.AbsListView#setItemChecked setItemChecked()}.</p>
+
+
+
+
+<h2 id="PopupMenu">Membuat Menu Popup</h2>
+
+<div class="figure" style="width:220px">
+<img src="{@docRoot}images/ui/popupmenu.png" alt="" />
+<p><strong>Gambar 4.</strong> Menu popup dalam aplikasi Gmail, dikaitkan pada
+tombol kelebihan di sudut kanan atas.</p>
+</div>
+
+<p>{@link android.widget.PopupMenu} adalah menu modal yang dikaitkan pada {@link android.view.View}.
+Menu ini muncul di bawah tampilan jangkar jika ada ruang, atau di atas tampilan jika tidak ada. Menu ini berguna untuk:</p>
+<ul>
+  <li>Menyediakan menu bergaya kelebihan (overflow) untuk tindakan yang <em>berkaitan dengan</em> konten tertentu (seperti
+header email Gmail, yang ditampilkan dalam gambar 4).
+    <p class="note"><strong>Catatan:</strong> Ini tidak sama dengan menu konteks, yang umumnya
+untuk tindakan yang <em>memengaruhi</em> konten yang dipilih. Untuk tindakan yang memengaruhi
+konten yang dipilih, gunakan <a href="#CAB">mode tindakan kontekstual</a> atau <a href="#FloatingContextMenu">menu konteks mengambang</a>.</p></li>
+  <li>Menyediakan bagian kedua dari kalimat perintah (seperti tombol bertanda "Tambah"
+yang menghasilkan menu popup dengan berbagai opsi "Tambah").</li>
+  <li>Menyediakan daftar menurun yang serupa dengan {@link android.widget.Spinner} yang tidak mempertahankan
+pilihan persisten.</li>
+</ul>
+
+
+<p class="note"><strong>Catatan:</strong> {@link android.widget.PopupMenu} tersedia dengan API
+level 11 dan yang lebih tinggi.</p>
+
+<p>Jika Anda <a href="#xml">mendefinisikan menu dalam XML</a>, berikut ini adalah cara Anda menampilkan menu popup:</p>
+<ol>
+  <li>Buat instance {@link android.widget.PopupMenu} bersama konstruktornya, yang mengambil
+aplikasi saat ini {@link android.content.Context} dan {@link android.view.View} yang akan menjadi tempat mengaitkan
+menu.</li>
+  <li>Gunakan {@link android.view.MenuInflater} untuk memekarkan sumber daya menu Anda ke dalam objek {@link
+android.view.Menu} yang dikembalikan oleh {@link
+android.widget.PopupMenu#getMenu() PopupMenu.getMenu()}. Pada API level 14 ke atas, Anda bisa menggunakan
+{@link android.widget.PopupMenu#inflate PopupMenu.inflate()} sebagai gantinya.</li>
+  <li>Panggil {@link android.widget.PopupMenu#show() PopupMenu.show()}.</li>
+</ol>
+
+<p>Misalnya, berikut ini adalah tombol dengan atribut {@link android.R.attr#onClick android:onClick}
+yang menampilkan menu popup:</p>
+
+<pre>
+&lt;ImageButton
+    android:layout_width="wrap_content" 
+    android:layout_height="wrap_content" 
+    android:src="@drawable/ic_overflow_holo_dark"
+    android:contentDescription="@string/descr_overflow_button"
+    android:onClick="showPopup" />
+</pre>
+
+<p>Aktivitas nanti bisa menampilkan menu popup seperti ini:</p>
+
+<pre>
+public void showPopup(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+    MenuInflater inflater = popup.getMenuInflater();
+    inflater.inflate(R.menu.actions, popup.getMenu());
+    popup.show();
+}
+</pre>
+
+<p>Dalam API level 14 dan yang lebih tinggi, Anda bisa menggabungkan dua baris yang memekarkan menu dengan {@link
+android.widget.PopupMenu#inflate PopupMenu.inflate()}.</p>
+
+<p>Menu akan menghilang bila pengguna memilih item atau menyentuh di luar
+area menu. Anda bisa mendengarkan kejadian menghilangkan dengan menggunakan {@link
+android.widget.PopupMenu.OnDismissListener}.</p>
+
+<h3 id="PopupEvents">Menangani kejadian klik</h3>
+
+<p>Untuk melakukan suatu
+tindakan bila pengguna memilih item menu, Anda harus mengimplementasikan antarmuka {@link
+android.widget.PopupMenu.OnMenuItemClickListener} dan mendaftarkannya pada {@link
+android.widget.PopupMenu} dengan memanggil {@link android.widget.PopupMenu#setOnMenuItemClickListener
+setOnMenuItemclickListener()}. Bila pengguna memilih item, sistem akan memanggil callback {@link
+android.widget.PopupMenu.OnMenuItemClickListener#onMenuItemClick onMenuItemClick()} dalam
+antarmuka Anda.</p>
+
+<p>Misalnya:</p>
+
+<pre>
+public void showMenu(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+
+    // This activity implements OnMenuItemClickListener
+    popup.setOnMenuItemClickListener(this);
+    popup.inflate(R.menu.actions);
+    popup.show();
+}
+
+&#64;Override
+public boolean onMenuItemClick(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.archive:
+            archive(item);
+            return true;
+        case R.id.delete:
+            delete(item);
+            return true;
+        default:
+            return false;
+    }
+}
+</pre>
+
+
+<h2 id="groups">Membuat Grup Menu</h2>
+
+<p>Grup menu adalah sekumpulan item menu yang sama-sama memiliki ciri (trait) tertentu. Dengan grup, Anda
+bisa:</p>
+<ul>
+  <li>Menampilkan atau menyembunyikan semua item dengan {@link android.view.Menu#setGroupVisible(int,boolean)
+setGroupVisible()}</li>
+  <li>Mengaktifkan atau mennonaktifkan semua item dengan {@link android.view.Menu#setGroupEnabled(int,boolean)
+setGroupEnabled()}</li>
+  <li>Menetapkan apakah semua item bisa diberi tanda cek dengan {@link
+android.view.Menu#setGroupCheckable(int,boolean,boolean) setGroupCheckable()}</li>
+</ul>
+
+<p>Anda bisa membuat grup dengan menyarangkan elemen-elemen {@code &lt;item&gt;} dalam elemen {@code &lt;group&gt;}
+dalam sumber daya menu atau dengan menetapkan ID grup dengan metode {@link
+android.view.Menu#add(int,int,int,int) add()}.</p>
+
+<p>Berikut ini adalah contoh sumber daya menu yang berisi sebuah grup:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/menu_save"
+          android:icon="@drawable/menu_save"
+          android:title="@string/menu_save" /&gt;
+    &lt;!-- menu group --&gt;
+    &lt;group android:id="@+id/group_delete"&gt;
+        &lt;item android:id="@+id/menu_archive"
+              android:title="@string/menu_archive" /&gt;
+        &lt;item android:id="@+id/menu_delete"
+              android:title="@string/menu_delete" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Item yang berada dalam grup akan muncul pada level yang sama dengan item pertama&mdash;ketiga item
+dalam menu adalah bersaudara. Akan tetapi, Anda bisa memodifikasi ciri kedua
+item dalam grup dengan mengacu ID grup dan menggunakan metode yang tercantum di atas. Sistem
+juga tidak akan memisahkan item yang telah dikelompokkan. Misalnya, jika Anda mendeklarasikan {@code
+android:showAsAction="ifRoom"} untuk tiap item, item tersebut akan muncul dalam
+action-bar atau dalam kelebihan tindakan.</p>
+
+
+<h3 id="checkable">Menggunakan item menu yang bisa diberi tanda cek</h3>
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/radio_buttons.png" height="333" alt="" />
+  <p class="img-caption"><strong>Gambar 5.</strong> Cuplikan layar submenu dengan
+item yang bisa diberi tanda cek.</p>
+</div>
+
+<p>Menu bisa digunakan sebagai antarmuka untuk mengaktifkan dan menonaktifkan opsi, menggunakan kotak cek untuk
+opsi mandiri, atau tombol radio untuk grup
+opsi yang saling eksklusif. Gambar 5 menampilkan submenu dengan item yang bisa diberi tanda cek dengan
+tombol radio.</p>
+
+<p class="note"><strong>Catatan:</strong> Item menu dalam Icon Menu (dari menu opsi) tidak bisa
+menampilkan kotak cek atau tombol radio. Jika Anda memilih untuk membuat item dalam Icon Menu yang bisa diberi tanda cek,
+Anda harus menandai status diberi tanda cek secara manual dengan menukar ikon dan/atau teks
+tiap kali statusnya berubah.</p>
+
+<p>Anda bisa mendefinisikan perilaku yang bisa diberi tanda cek untuk tiap item menu dengan menggunakan atribut {@code
+android:checkable} dalam elemen {@code &lt;item&gt;}, atau untuk seluruh grup dengan
+atribut {@code android:checkableBehavior} dalam elemen {@code &lt;group&gt;}. Misalnya
+, semua item dalam grup menu ini bisa diberi tanda cek dengan tombol radio:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;group android:checkableBehavior="single"&gt;
+        &lt;item android:id="@+id/red"
+              android:title="@string/red" /&gt;
+        &lt;item android:id="@+id/blue"
+              android:title="@string/blue" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Atribut {@code android:checkableBehavior} menerima:
+<dl>
+  <dt>{@code single}</dt>
+    <dd>Hanya satu item dari grup ini yang bisa diberi tanda cek (tombol radio)</dd>
+  <dt>{@code all}</dt>
+    <dd>Semua item bisa diberi tanda cek (kotak cek)</dd>
+  <dt>{@code none}</dt>
+    <dd>Tidak ada item yang bisa diberi tanda cek</dd>
+</dl>
+
+<p>Anda bisa menerapkan status diberi tanda cek default pada suatu item dengan menggunakan atribut {@code android:checked} dalam
+elemen {@code &lt;item&gt;} dan mengubahnya dalam kode dengan metode {@link
+android.view.MenuItem#setChecked(boolean) setChecked()}.</p>
+
+<p>Bila item yang bisa diberi tanda cek dipilih, sistem akan memanggil metode callback setiap item yang dipilih
+(seperti {@link android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}). Di sinilah
+Anda harus mengatur status kotak cek itu, karena kotak cek atau tombol radio tidak
+mengubah statusnya secara otomatis. Anda bisa melakukan query status saat ini suatu item (seperti sebelum
+pengguna memilihnya) dengan {@link android.view.MenuItem#isChecked()} kemudian mengatur status diberi tanda cek dengan
+{@link android.view.MenuItem#setChecked(boolean) setChecked()}. Misalnya:</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.vibrate:
+        case R.id.dont_vibrate:
+            if (item.isChecked()) item.setChecked(false);
+            else item.setChecked(true);
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>Jika Anda tidak mengatur status diberi tanda cek dengan cara ini, maka status item (kotak cek atau
+tombol radio) yang terlihat tidak akan
+berubah bila pengguna memilihnya. Bila Anda telah mengatur status, aktivitas akan menjaga status diberi tanda cek
+suatu item sehingga bila nanti pengguna membuka menu, status diberi tanda cek yang Anda
+atur akan terlihat.</p>
+
+<p class="note"><strong>Catatan:</strong>
+Item menu yang bisa diberi tanda cek dimaksudkan untuk digunakan hanya atas dasar per sesi dan tidak disimpan setelah
+aplikasi dimusnahkan. Jika Anda memiliki pengaturan aplikasi yang ingin disimpan untuk pengguna,
+Anda harus menyimpan data dengan menggunakan <a href="{@docRoot}guide/topics/data/data-storage.html#pref">Shared Preferences</a>.</p>
+
+
+
+<h2 id="intents">Menambahkan Item Menu Berdasarkan Intent</h2>
+
+<p>Kadang-kadang Anda ingin supaya item menu menjalankan aktivitas dengan menggunakan {@link android.content.Intent}
+(baik aktivitas berada dalam aplikasi Anda maupun di aplikasi lain). Bila Anda mengetahui intent
+yang ingin digunakan dan memiliki item menu tertentu yang harus memulai intent, Anda bisa mengeksekusi
+intent dengan {@link android.app.Activity#startActivity(Intent) startActivity()} selama
+metode callback bila-item-dipilih yang sesuai (seperti callback {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}).</p>
+
+<p>Akan tetapi, jika Anda tidak yakin apakah perangkat pengguna
+berisi aplikasi yang menangani intent, maka menambahkan item menu yang memanggilnya bisa mengakibatkan
+item menu tidak berfungsi, karena intent tidak bisa diterjemahkan menjadi
+aktivitas. Untuk mengatasi hal ini, Android memungkinkan Anda menambahkan item menu secara dinamis ke menu
+bila Android menemukan aktivitas pada perangkat yang menangani intent Anda.</p>
+
+<p>Untuk menambahkan item menu berdasarkan aktivitas tersedia yang menerima intent:</p>
+<ol>
+  <li>Definisikan
+intent dengan kategori {@link android.content.Intent#CATEGORY_ALTERNATIVE} dan/atau
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE}, plus kebutuhan lainnya.</li>
+  <li>Panggil {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+Menu.addIntentOptions()}. Android kemudian akan mencari setiap aplikasi yang bisa melakukan intent
+dan menambahkannya ke menu Anda.</li>
+</ol>
+
+<p>Jika tidak ada aplikasi terinstal
+yang memenuhi intent, maka tidak ada item menu yang ditambahkan.</p>
+
+<p class="note"><strong>Catatan:</strong>
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} digunakan untuk menangani
+elemen yang saat ini dipilih pada layar. Jadi, metode hanya digunakan saat membuat Menu dalam {@link
+android.app.Activity#onCreateContextMenu(ContextMenu,View,ContextMenuInfo)
+onCreateContextMenu()}.</p>
+
+<p>Misalnya:</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu){
+    super.onCreateOptionsMenu(menu);
+
+    // Create an Intent that describes the requirements to fulfill, to be included
+    // in our menu. The offering app must include a category value of Intent.CATEGORY_ALTERNATIVE.
+    Intent intent = new Intent(null, dataUri);
+    intent.addCategory(Intent.CATEGORY_ALTERNATIVE);
+
+    // Search and populate the menu with acceptable offering applications.
+    menu.addIntentOptions(
+         R.id.intent_group,  // Menu group to which new items will be added
+         0,      // Unique item ID (none)
+         0,      // Order for the items (none)
+         this.getComponentName(),   // The current activity name
+         null,   // Specific items to place first (none)
+         intent, // Intent created above that describes our requirements
+         0,      // Additional flags to control items (none)
+         null);  // Array of MenuItems that correlate to specific items (none)
+
+    return true;
+}</pre>
+
+<p>Untuk setiap aktivitas yang diketahui menyediakan filter intent yang cocok dengan intent yang didefinisikan, item menu
+akan ditambahkan, menggunakan nilai dalam filter intent <code>android:label</code> sebagai
+judul item menu dan ikon aplikasi sebagai ikon item menu. Metode
+{@link android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} mengembalikan jumlah item menu yang ditambahkan.</p>
+
+<p class="note"><strong>Catatan:</strong> Bila Anda memanggil {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()}, metode ini akan mengesampingkan setiap dan semua item menu menurut grup menu yang ditetapkan dalam argumen
+pertama.</p>
+
+
+<h3 id="AllowingToAdd">Memungkinkan aktivitas Anda ditambahkan ke menu lain</h3>
+
+<p>Anda juga bisa menawarkan layanan aktivitas Anda pada aplikasi lainnya, sehingga
+aplikasi Anda bisa disertakan dalam menu aplikasi lain (membalik peran yang dijelaskan di atas).</p>
+
+<p>Agar bisa dimasukkan dalam menu aplikasi lain, Anda perlu mendefinisikan 
+filter intent seperti biasa, tetapi pastikan menyertakan nilai-nilai {@link android.content.Intent#CATEGORY_ALTERNATIVE}
+dan/atau {@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} untuk
+kategori filter intent. Misalnya:</p>
+<pre>
+&lt;intent-filter label="&#64;string/resize_image">
+    ...
+    &lt;category android:name="android.intent.category.ALTERNATIVE" />
+    &lt;category android:name="android.intent.category.SELECTED_ALTERNATIVE" />
+    ...
+&lt;/intent-filter>
+</pre>
+
+<p>Baca selengkapnya tentang penulisan filter intent dalam dokumen
+<a href="/guide/components/intents-filters.html">Intent dan Filter Intent</a>.</p>
+
+<p>Untuk contoh aplikasi yang menggunakan teknik ini, lihat contoh kode 
+<a href="{@docRoot}resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html">Note
+Pad</a>.</p>
diff --git a/docs/html-intl/intl/in/guide/topics/ui/notifiers/notifications.jd b/docs/html-intl/intl/in/guide/topics/ui/notifiers/notifications.jd
new file mode 100644
index 0000000..9033b9f
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/ui/notifiers/notifications.jd
@@ -0,0 +1,979 @@
+page.title=Pemberitahuan
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Dalam dokumen ini</h2>
+<ol>
+  <li><a href="#Design">Pertimbangan Desain</a></li>
+  <li><a href="#CreateNotification">Membuat Pemberitahuan</a>
+    <ol>
+      <li><a href="#Required">Isi pemberitahuan yang diperlukan</a></li>
+      <li><a href="#Optional">Isi dan pengaturan pemberitahuan opsional</a></li>
+      <li><a href="#Actions">Tindakan pemberitahuan</a></li>
+      <li><a href="#Priority">Prioritas pemberitahuan</a></li>
+      <li><a href="#SimpleNotification">Membuat pemberitahuan sederhana</a></li>
+      <li><a href="#ApplyStyle">Menerapkan layout yang diperluas pada pemberitahuan</a></li>
+      <li><a href="#Compatibility">Menangani kompatibilitas</a></li>
+    </ol>
+  </li>
+  <li><a href="#Managing">Mengelola Pemberitahuan</a>
+    <ol>
+      <li><a href="#Updating">Memperbarui pemberitahuan</a></li>
+      <li><a href="#Removing">Menghapus pemberitahuan</a></li>
+    </ol>
+  </li>
+  <li><a href="#NotificationResponse">Mempertahankan Navigasi saat Memulai Aktivitas</a>
+    <ol>
+      <li><a href="#DirectEntry">Menyiapkan PendingIntent aktivitas biasa</a></li>
+      <li><a href="#ExtendedNotification">Menyiapkan PendingIntent aktivitas khusus</a></li>
+    </ol>
+  </li>
+  <li><a href="#Progress">Menampilkan Kemajuan dalam Pemberitahuan</a>
+    <ol>
+      <li><a href="#FixedProgress">Menampilkan indikator kemajuan berdurasi tetap</a></li>
+      <li><a href="#ActivityIndicator">Menampilkan indikator aktivitas berlanjut</a></li>
+    </ol>
+  </li>
+  <li><a href="#metadata">Metadata Pemberitahuan</a></li>
+  <li><a href="#Heads-up">Pemberitahuan Pendahuluan</a></li>
+  <li><a href="#lockscreenNotification">Pemberitahuan Layar Kunci</a></li>
+    <ol>
+      <li><a href="#visibility">Mengatur Visibilitas</a></li>
+      <li><a href="#controllingMedia">Mengontrol Pemutaran Media pada Layar Kunci</a></li>
+    </ol>
+  <li><a href="#CustomNotification">Layout Pemberitahuan Custom</a></li>
+</ol>
+
+    <h2>Kelas-kelas utama</h2>
+    <ol>
+        <li>{@link android.app.NotificationManager}</li>
+        <li>{@link android.support.v4.app.NotificationCompat}</li>
+    </ol>
+    <h2>Video</h2>
+    <ol>
+        <li>
+            <a href="http://www.youtube.com/watch?v=Yc8YrVc47TI&amp;feature=player_detailpage#t=1672s">
+            Pemberitahuan di 4.1</a>
+        </li>
+    </ol>
+<h2>Lihat juga</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}design/patterns/notifications.html">Desain Android: Pemberitahuan</a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    Pemberitahuan adalah pesan yang bisa Anda tampilkan kepada pengguna di luar
+    UI normal aplikasi. Bila Anda memberi tahu sistem untuk mengeluarkan pemberitahuan, pemberitahuan akan muncul lebih dahulu sebagai ikon dalam
+    <strong>area pemberitahuan</strong>. Untuk melihat detail pemberitahuan, pengguna membuka
+    <strong>laci pemberitahuan</strong>. Baik area pemberitahuan maupun laci pemberitahuan
+    adalah area-area yang dikontrol sistem yang bisa dilihat pengguna kapan saja.
+</p>
+<img id="figure1" src="{@docRoot}images/ui/notifications/notification_area.png" height="" alt="" />
+<p class="img-caption">
+    <strong>Gambar 1.</strong> Pemberitahuan di area pemberitahuan.
+</p>
+<img id="figure2" src="{@docRoot}images/ui/notifications/notification_drawer.png" width="280px" alt="" />
+<p class="img-caption">
+    <strong>Gambar 2.</strong> Pemberitahuan di laci pemberitahuan.
+</p>
+
+<p class="note"><strong>Catatan:</strong> Kecuali disebutkan, panduan ini mengacu pada
+kelas {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}
+dalam <a href="{@docRoot}tools/support-library/index.html">Support Library</a> versi 4.
+Kelas {@link android.app.Notification.Builder Notification.Builder} telah ditambahkan pada Android
+3.0 (API level 11).</p>
+
+<h2 id="Design">Pertimbangan Desain</h2>
+
+<p>Pemberitahuan, sebagai bagian penting dari antarmuka pengguna Android, memiliki panduan desainnya sendiri.
+Perubahan desain materi yang diperkenalkan dalam Android 5.0 (API level 21) adalah sangat
+penting, dan Anda harus meninjau pelatihan <a href="{@docRoot}training/material/index.html">Desain Bahan</a>
+untuk informasi selengkapnya. Untuk mengetahui cara mendesain pemberitahuan dan interaksinya, bacalah panduan desain
+<a href="{@docRoot}design/patterns/notifications.html">Pemberitahuan</a>.</p>
+
+<h2 id="CreateNotification">Membuat Pemberitahuan</h2>
+
+<p>Anda menetapkan informasi dan tindakan UI bagi pemberitahuan dalam
+objek {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}.
+Untuk membuat pemberitahuan itu sendiri, panggil
+{@link android.support.v4.app.NotificationCompat.Builder#build NotificationCompat.Builder.build()},
+yang akan mengembalikan objek {@link android.app.Notification} berisi spesifikasi Anda. Untuk mengeluarkan
+pemberitahuan, Anda meneruskan objek {@link android.app.Notification} ke sistem dengan memanggil
+{@link android.app.NotificationManager#notify NotificationManager.notify()}.</p>
+
+<h3 id="Required">Isi pemberitahuan yang diperlukan</h3>
+<p>
+    Objek {@link android.app.Notification} <em>harus</em> berisi yang berikut ini:
+</p>
+<ul>
+    <li>
+        Ikon kecil, yang diatur dengan
+        {@link android.support.v4.app.NotificationCompat.Builder#setSmallIcon setSmallIcon()}
+    </li>
+    <li>
+        Judul, yang diatur dengan
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()}
+    </li>
+    <li>
+        Teks detail, yang diatur dengan
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentText setContentText()}
+    </li>
+</ul>
+<h3 id="Optional">Isi dan pengaturan pemberitahuan opsional</h3>
+<p>
+    Semua isi dan pengaturan pemberitahuan lainnya bersifat opsional. Untuk mengetahui selengkapnya tentang semua itu,
+    lihat dokumentasi acuan untuk {@link android.support.v4.app.NotificationCompat.Builder}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Actions">Tindakan pemberitahuan</h3>
+<p>
+    Walaupun bersifat opsional, Anda harus menambahkan setidaknya satu tindakan pada pemberitahuan.
+    Tindakan memungkinkan pengguna beralih langsung dari pemberitahuan ke
+    {@link android.app.Activity} dalam aplikasi Anda, tempat pengguna bisa melihat satu atau beberapa kejadian
+    atau melakukan pekerjaan lebih jauh.
+</p>
+<p>
+    Pemberitahuan bisa menyediakan beberapa tindakan sekaligus. Anda harus selalu mendefinisikan tindakan yang
+    akan diaktifkan bila pengguna mengklik pemberitahuan; biasanya tindakan ini akan membuka
+    {@link android.app.Activity} dalam aplikasi Anda. Anda juga bisa menambahkan tombol pada pemberitahuan
+    yang melakukan tindakan tambahan seperti mendiamkan alarm atau segera merespons
+    pesan teks; fitur ini tersedia mulai Android 4.1. Jika menggunakan tombol tindakan tambahan, Anda
+    juga harus membuat fungsionalitasnya tersedia dalam {@link android.app.Activity} di aplikasi Anda; lihat
+    bagian <a href="#Compatibility">Menangani kompatibilitas</a> untuk detail selengkapnya.
+</p>
+<p>
+    Dalam {@link android.app.Notification}, tindakan itu sendiri didefinisikan oleh
+    {@link android.app.PendingIntent} berisi 
+    {@link android.content.Intent} yang memulai
+    {@link android.app.Activity} dalam aplikasi Anda. Untuk mengaitkan
+    {@link android.app.PendingIntent} dengan gestur, panggil metode
+    {@link android.support.v4.app.NotificationCompat.Builder} yang sesuai. Misalnya, jika ingin memulai
+    {@link android.app.Activity} bila pengguna mengklik teks pemberitahuan pada
+    laci pemberitahuan, tambahkan {@link android.app.PendingIntent} dengan memanggil
+    {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()}.
+</p>
+<p>
+    Memulai {@link android.app.Activity} bila pengguna mengklik pemberitahuan adalah
+    skenario tindakan yang paling umum. Anda juga bisa memulai {@link android.app.Activity} bila pengguna
+    menghilangkan pemberitahuan. Dalam Android 4.1 dan yang lebih baru, Anda bisa memulai
+    {@link android.app.Activity} dari tombol tindakan. Untuk mengetahui selengkapnya, bacalah panduan acuan untuk
+    {@link android.support.v4.app.NotificationCompat.Builder}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Priority">Prioritas pemberitahuan</h3>
+<p>
+    Jika diinginkan, Anda bisa mengatur prioritas pemberitahuan. Prioritas berfungsi
+    sebagai petunjuk bagi UI perangkat tentang cara menampilkan pemberitahuan.
+    Untuk mengatur prioritas pemberitahuan, panggil {@link
+    android.support.v4.app.NotificationCompat.Builder#setPriority(int)
+    NotificationCompat.Builder.setPriority()} dan teruskan salah satu konstanta prioritas {@link
+    android.support.v4.app.NotificationCompat}. Ada
+    lima level prioritas, mulai dari {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_MIN} (-2) hingga {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_MAX} (2); jika tidak diatur, 
+    prioritas default akan ditetapkan {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_DEFAULT} (0).
+</p>
+<p> Untuk informasi tentang mengatur level prioritas, lihat "Mengatur
+    dan mengelola prioritas pemberitahuan dengan benar" dalam panduan 
+Desain <a href="{@docRoot}design/patterns/notifications.html">Pemberitahuan</a>.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="SimpleNotification">Membuat pemberitahuan sederhana</h3>
+<p>
+    Cuplikan berikut mengilustrasikan pemberitahuan sederhana yang menetapkan aktivitas untuk dibuka bila
+    pengguna mengklik pemberitahuan. Perhatikan bahwa kode ini membuat
+    objek {@link android.support.v4.app.TaskStackBuilder} dan menggunakannya untuk membuat
+    {@link android.app.PendingIntent} untuk tindakan. Pola ini dijelaskan secara lebih detail
+    di bagian <a href="#NotificationResponse">
+    Mempertahankan Navigasi saat Memulai Aktivitas</a>:
+</p>
+<pre>
+NotificationCompat.Builder mBuilder =
+        new NotificationCompat.Builder(this)
+        .setSmallIcon(R.drawable.notification_icon)
+        .setContentTitle("My notification")
+        .setContentText("Hello World!");
+// Creates an explicit intent for an Activity in your app
+Intent resultIntent = new Intent(this, ResultActivity.class);
+
+// The stack builder object will contain an artificial back stack for the
+// started Activity.
+// This ensures that navigating backward from the Activity leads out of
+// your application to the Home screen.
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack for the Intent (but not the Intent itself)
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent that starts the Activity to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(
+            0,
+            PendingIntent.FLAG_UPDATE_CURRENT
+        );
+mBuilder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// mId allows you to update the notification later on.
+mNotificationManager.notify(mId, mBuilder.build());
+</pre>
+<p>Demikian saja. Pengguna Anda kini telah diberi tahu.</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ApplyStyle">Menerapkan layout yang diperluas pada pemberitahuan</h3>
+<p>
+    Agar pemberitahuan muncul dalam tampilan yang diperluas, buat dahulu
+    objek {@link android.support.v4.app.NotificationCompat.Builder} dengan opsi tampilan normal
+    yang Anda inginkan. Berikutnya, panggil {@link android.support.v4.app.NotificationCompat.Builder#setStyle
+    Builder.setStyle()}  dengan objek layout yang diperluas sebagai argumennya.
+</p>
+<p>
+    Ingatlah bahwa pemberitahuan yang diperluas tidak tersedia pada platform-platform sebelum Android 4.1. Untuk
+    mengetahui cara menangani pemberitahuan untuk Android 4.1 dan untuk platform-platform sebelumnya, bacalah
+    bagian <a href="#Compatibility">Menangani kompatibilitas</a>.
+</p>
+<p>
+    Misalnya, cuplikan kode berikut memperagakan cara mengubah pemberitahuan yang dibuat
+    dalam cuplikan sebelumnya untuk menggunakan layout yang diperluas:
+</p>
+<pre>
+NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
+    .setSmallIcon(R.drawable.notification_icon)
+    .setContentTitle("Event tracker")
+    .setContentText("Events received")
+NotificationCompat.InboxStyle inboxStyle =
+        new NotificationCompat.InboxStyle();
+String[] events = new String[6];
+// Sets a title for the Inbox in expanded layout
+inboxStyle.setBigContentTitle("Event tracker details:");
+...
+// Moves events into the expanded layout
+for (int i=0; i &lt; events.length; i++) {
+
+    inboxStyle.addLine(events[i]);
+}
+// Moves the expanded layout object into the notification object.
+mBuilder.setStyle(inBoxStyle);
+...
+// Issue the notification here.
+</pre>
+
+<h3 id="Compatibility">Menangani kompatibilitas</h3>
+
+<p>
+    Tidak semua fitur pemberitahuan tersedia untuk versi tertentu, walaupun
+    metode untuk mengaturnya ada dalam kelas pustaka dukungan
+    {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}.
+    Misalnya, tombol tindakan, yang bergantung pada pemberitahuan yang diperluas, hanya muncul pada Android
+    4.1 dan lebih tinggi, karena pemberitahuan yang diperluas itu sendiri hanya tersedia pada
+    Android 4.1 dan yang lebih tinggi.
+</p>
+<p>
+    Untuk memastikan kompatibilitas terbaik, buatlah pemberitahuan dengan
+    {@link android.support.v4.app.NotificationCompat NotificationCompat} dan subkelasnya,
+    khususnya {@link android.support.v4.app.NotificationCompat.Builder
+    NotificationCompat.Builder}. Selain itu, ikutilah proses ini bila Anda mengimplementasikan pemberitahuan:
+</p>
+<ol>
+    <li>
+        Sediakan semua fungsionalitas pemberitahuan kepada semua pengguna, terlepas dari versi
+        yang mereka gunakan. Caranya, pastikan semua fungsionalitas tersedia dari
+        {@link android.app.Activity} dalam aplikasi Anda. Anda mungkin perlu menambahkan sebuah
+        {@link android.app.Activity} baru untuk melakukannya.
+        <p>
+            Misalnya, jika Anda ingin menggunakan
+            {@link android.support.v4.app.NotificationCompat.Builder#addAction addAction()} untuk
+            menyediakan kontrol yang menghentikan dan memulai pemutaran media, implementasikan dahulu
+            kontrol ini pada {@link android.app.Activity} dalam aplikasi Anda.
+        </p>
+    </li>
+    <li>
+        Pastikan semua pengguna bisa memperoleh fungsionalitas dalam {@link android.app.Activity},
+        dengan memulainya bila pengguna mengklik pemberitahuan. Caranya,
+        buatlah {@link android.app.PendingIntent}
+        untuk {@link android.app.Activity}. Panggil
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+        setContentIntent()} untuk menambahkan {@link android.app.PendingIntent} pada pemberitahuan.
+    </li>
+    <li>
+        Kini tambahkan fitur pemberitahuan diperluas yang ingin Anda gunakan pada pemberitahuan. Ingatlah
+        bahwa setiap fungsionalitas yang Anda tambahkan juga harus tersedia dalam {@link android.app.Activity}
+        yang akan dimulai bila pengguna mengklik pemberitahuan.
+    </li>
+</ol>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Managing">Mengelola Pemberitahuan</h2>
+<p>
+    Bila perlu mengeluarkan pemberitahuan beberapa kali untuk tipe kejadian yang sama, 
+hindari membuat pemberitahuan yang sama sekali baru. Sebagai gantinya, Anda harus mempertimbangkan untuk memperbarui
+    pemberitahuan sebelumnya, baik dengan mengubah sebagian nilainya atau dengan menambahkan nilai, atau keduanya.
+</p>
+<p>
+    Misalnya, Gmail akan memberi tahu pengguna bila ada email baru dengan menambah hitungan
+    pesan tidak terbaca dan dengan menambahkan rangkuman tiap email ke pemberitahuan. Ini disebut dengan
+    "stacking" (menumpuk) pemberitahuan; hal ini dijelaskan lebih detail dalam panduan
+    Desain <a href="{@docRoot}design/patterns/notifications.html">Pemberitahuan</a>.
+</p>
+<p class="note">
+    <strong>Catatan:</strong> Fitur Gmail ini mensyaratkan layout "kotak masuk" diperluas, yang merupakan
+    bagian dari fitur pemberitahuan diperluas yang tersedia mulai Android 4.1.
+</p>
+<p>
+    Bagian berikut menjelaskan cara memperbarui pemberitahuan dan cara menghapusnya.
+</p>
+<h3 id="Updating">Memperbarui pemberitahuan</h3>
+<p>
+    Untuk menyiapkan pemberitahuan agar bisa diperbarui, keluarkan pemberitahuan bersama ID pemberitahuan dengan
+    memanggil {@link android.app.NotificationManager#notify(int, android.app.Notification) NotificationManager.notify()}.
+    Untuk memperbarui pemberitahuan ini setelah Anda
+    mengeluarkan, memperbarui, atau membuat objek {@link android.support.v4.app.NotificationCompat.Builder},
+    buat objek {@link android.app.Notification} darinya, dan keluarkan
+    {@link android.app.Notification} bersama ID yang sama dengan yang Anda gunakan sebelumnya. Jika
+    pemberitahuan sebelumnya tetap terlihat, sistem akan memperbaruinya dari konten
+    objek {@link android.app.Notification}. Jika pemberitahuan sebelumnya telah dihilangkan, sebuah
+    pemberitahuan baru akan dibuat.
+</p>
+<p>
+    Cuplikan berikut memperagakan pemberitahuan yang diperbarui untuk mencerminkan
+    jumlah kejadian yang telah terjadi. Cuplikan ini menumpuk pemberitahuan, yang menampilkan rangkuman:
+</p>
+<pre>
+mNotificationManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Sets an ID for the notification, so it can be updated
+int notifyID = 1;
+mNotifyBuilder = new NotificationCompat.Builder(this)
+    .setContentTitle("New Message")
+    .setContentText("You've received new messages.")
+    .setSmallIcon(R.drawable.ic_notify_status)
+numMessages = 0;
+// Start of a loop that processes data and then notifies the user
+...
+    mNotifyBuilder.setContentText(currentText)
+        .setNumber(++numMessages);
+    // Because the ID remains unchanged, the existing notification is
+    // updated.
+    mNotificationManager.notify(
+            notifyID,
+            mNotifyBuilder.build());
+...
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Removing">Menghapus pemberitahuan</h3>
+<p>
+    Pemberitahuan tetap terlihat hingga salah satu kejadian berikut terjadi:
+</p>
+<ul>
+    <li>
+        Pengguna menghilangkan pemberitahuan satu per satu atau dengan menggunakan "Clear All" (jika
+        pemberitahuan bisa dihapus).
+    </li>
+    <li>
+        Pengguna mengklik pemberitahuan, dan Anda memanggil
+        {@link android.support.v4.app.NotificationCompat.Builder#setAutoCancel setAutoCancel()} bila
+        Anda telah membuat pemberitahuan.
+    </li>
+    <li>
+        Anda memanggil {@link android.app.NotificationManager#cancel(int) cancel()} untuk
+        ID pemberitahuan tertentu. Metode ini juga menghapus pemberitahuan yang berjalan.
+    </li>
+    <li>
+        Anda memanggil {@link android.app.NotificationManager#cancelAll() cancelAll()}, yang menghapus
+        semua pemberitahuan yang dikeluarkan sebelumnya.
+    </li>
+</ul>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="NotificationResponse">Mempertahankan Navigasi saat Memulai Aktivitas</h2>
+<p>
+    Bila memulai {@link android.app.Activity} dari pemberitahuan, Anda harus mempertahankan
+    pengalaman navigasi yang diharapkan pengguna. Mengklik <i>Back</i> harus membawa pengguna kembali melalui
+    aliran pekerjaan normal aplikasi ke layar Home, dan mengklik <i>Recents</i> harus menampilkan
+    {@link android.app.Activity} sebagai tugas terpisah. Untuk mempertahankan pengalaman navigasi, Anda
+    harus memulai {@link android.app.Activity} dalam tugas baru. Cara menyiapkan
+    {@link android.app.PendingIntent} untuk memberi Anda tugas baru bergantung pada sifat
+    {@link android.app.Activity} yang Anda mulai. Ada dua situasi umum:
+</p>
+<dl>
+    <dt>
+        Aktivitas rutin
+    </dt>
+    <dd>
+        Anda memulai {@link android.app.Activity} yang merupakan bagian dari aliran pekerjaan normal
+        aplikasi. Dalam situasi ini, siapkan {@link android.app.PendingIntent} untuk
+        memulai tugas baru, dan sediakan {@link android.app.PendingIntent} bersama back-stack
+        yang meniru perilaku <i>Back</i> biasa.
+        <p>
+            Pemberitahuan dari aplikasi Gmail memperagakan hal ini. Bila Anda mengklik pemberitahuan untuk
+            satu pesan email, Anda akan melihat pesan itu sendiri. Menyentuh <b>Back</b> akan membawa Anda
+            kembali melalui Gmail ke layar Home, persis seperti jika memasuki Gmail dari
+            layar Home bukannya memasukinya dari pemberitahuan.
+        </p>
+        <p>
+            Hal ini terjadi terlepas dari aplikasi tempat Anda berada saat menyentuh
+            pemberitahuan. Misalnya, jika Anda dalam Gmail sedang menulis pesan, dan Anda mengklik
+            pemberitahuan untuk satu email, Anda akan segera dibawa ke email itu. Menyentuh <i>Back</i>
+            akan membawa Anda ke kotak masuk kemudian layar Home, bukannya membawa Anda ke
+            pesan yang sedang ditulis.
+        </p>
+    </dd>
+    <dt>
+        Aktivitas khusus
+    </dt>
+    <dd>
+        Pengguna hanya melihat {@link android.app.Activity} ini jika dimulai dari pemberitahuan.
+        Dalam beberapa hal, {@link android.app.Activity} akan memperluas pemberitahuan dengan menyediakan
+        informasi yang akan sulit untuk ditampilkan dalam pemberitahuan itu sendiri. Untuk situasi ini,
+        siapkan {@link android.app.PendingIntent} untuk dimulai dalam tugas baru. Tidak perlu
+        membuat back-stack, karena {@link android.app.Activity} yang dimulai bukan bagian dari
+        aliran aktivitas aplikasi. Mengklik <i>Back</i> tetap akan membawa pengguna ke
+        layar Home.
+    </dd>
+</dl>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="DirectEntry">Menyiapkan PendingIntent aktivitas biasa</h3>
+<p>
+    Untuk menyiapkan {@link android.app.PendingIntent} yang memulai entri langsung
+    {@link android.app.Activity}, ikuti langkah-langkah ini:
+</p>
+<ol>
+    <li>
+        Definisikan hierarki {@link android.app.Activity} aplikasi Anda dalam manifes.
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Tambahkan dukungan untuk Android 4.0.3 dan yang terdahulu. Caranya, tetapkan induk
+                {@link android.app.Activity} yang Anda mulai dengan menambahkan elemen
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+                sebagai anak
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>.
+                <p>
+                    Untuk elemen ini, atur
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a>="android.support.PARENT_ACTIVITY"</code>.
+                    Atur
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#val">android:value</a>="&lt;parent_activity_name&gt;"</code>
+                    dengan <code>&lt;parent_activity_name&gt;</code> sebagai nilai
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a></code>
+                    untuk elemen induk
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+. Lihat XML berikut sebagai contoh.
+                </p>
+            </li>
+            <li>
+                Juga tambahkan dukungan untuk Android 4.1 dan yang lebih baru. Caranya, tambahkan atribut
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#parent">android:parentActivityName</a></code>
+                 pada elemen
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+                dari {@link android.app.Activity} yang Anda mulai.
+            </li>
+        </ol>
+        <p>
+            XML akhir akan terlihat seperti ini:
+        </p>
+<pre>
+&lt;activity
+    android:name=".MainActivity"
+    android:label="&#64;string/app_name" &gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+&lt;activity
+    android:name=".ResultActivity"
+    android:parentActivityName=".MainActivity"&gt;
+    &lt;meta-data
+        android:name="android.support.PARENT_ACTIVITY"
+        android:value=".MainActivity"/&gt;
+&lt;/activity&gt;
+</pre>
+    </li>
+    <li>
+        Buat back-stack berdasarkan {@link android.content.Intent} yang memulai
+        {@link android.app.Activity}:
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Buat {@link android.content.Intent} untuk memulai {@link android.app.Activity}.
+            </li>
+            <li>
+                Buat stack-builder (pembangun tumpukan) dengan memanggil {@link android.app.TaskStackBuilder#create
+                TaskStackBuilder.create()}.
+            </li>
+            <li>
+                Tambahkan back-stack ke stack-builder dengan memanggil 
+                {@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}.
+                Untuk setiap {@link android.app.Activity} dalam hierarki yang telah Anda definisikan dalam
+                manifes, back-stack berisi objek {@link android.content.Intent} yang
+                memulai {@link android.app.Activity}. Metode ini juga menambahkan flag yang memulai
+                back-stack dalam tugas baru.
+                <p class="note">
+                    <strong>Catatan:</strong> Walaupun argumen untuk
+                    {@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}
+                    adalah acuan ke {@link android.app.Activity} yang dimulai, panggilan metode
+                    tidak akan menambahkan {@link android.content.Intent} yang memulai
+                    {@link android.app.Activity}. Sebagai gantinya, hal itu ditangani dalam langkah berikutnya.
+                </p>
+            </li>
+            <li>
+                Tambahkan {@link android.content.Intent} yang memulai {@link android.app.Activity}
+                dari pemberitahuan, dengan memanggil
+                {@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}.
+                Teruskan {@link android.content.Intent} yang Anda buat dalam langkah pertama sebagai
+                argumen ke
+                {@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}.
+            </li>
+            <li>
+                Jika perlu, tambahkan argumen ke objek {@link android.content.Intent} pada
+                back-stack dengan memanggil {@link android.support.v4.app.TaskStackBuilder#editIntentAt
+                TaskStackBuilder.editIntentAt()}. Kadang-kadang perlu memastikan apakah
+                {@link android.app.Activity} target menampilkan data bermakna saat pengguna menelusurinya
+                dengan menggunakan <i>Back</i>.
+            </li>
+            <li>
+                Dapatkan {@link android.app.PendingIntent} untuk back-stack ini dengan memanggil
+                {@link android.support.v4.app.TaskStackBuilder#getPendingIntent getPendingIntent()}.
+                Anda nanti bisa menggunakan {@link android.app.PendingIntent} ini sebagai argumen untuk
+                {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+                setContentIntent()}.
+            </li>
+        </ol>
+     </li>
+</ol>
+<p>
+    Cuplikan kode berikut memperagakan prosesnya:
+</p>
+<pre>
+...
+Intent resultIntent = new Intent(this, ResultActivity.class);
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+// Gets a PendingIntent containing the entire back stack
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
+...
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+builder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mNotificationManager.notify(id, builder.build());
+</pre>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ExtendedNotification">Menyiapkan PendingIntent aktivitas khusus</h3>
+<p>
+    Bagian berikut menjelaskan cara menyiapkan aktivitas khusus
+    {@link android.app.PendingIntent}.
+</p>
+<p>
+    {@link android.app.Activity} khusus tidak memerlukan back-stack, sehingga Anda tidak perlu
+    mendefinisikan hierarki {@link android.app.Activity}-nya dalam manifes, dan Anda tidak perlu
+    memanggil
+    {@link android.support.v4.app.TaskStackBuilder#addParentStack  addParentStack()} untuk membuat
+    back-stack. Sebagai gantinya, gunakan manifes untuk menyiapkan opsi tugas {@link android.app.Activity},
+    dan buat {@link android.app.PendingIntent} dengan memanggil
+    {@link android.app.PendingIntent#getActivity getActivity()}:
+</p>
+<ol>
+    <li>
+        Dalam manifes, tambahkan atribut berikut pada elemen
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+        untuk {@link android.app.Activity}
+        <dl>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">android:name</a>="<i>activityclass</i>"</code>
+            </dt>
+            <dd>
+                Nama kelas mutlak (fully qualified) aktivitas.
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">android:taskAffinity</a>=""</code>
+            </dt>
+            <dd>
+                Dikombinasikan dengan flag
+                {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK}
+                yang Anda atur dalam kode, ini memastikan bahwa {@link android.app.Activity} ini tidak
+                masuk ke dalam tugas default aplikasi. Setiap tugas yang ada yang memiliki
+                afinitas default aplikasi tidak terpengaruh.
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">android:excludeFromRecents</a>="true"</code>
+            </dt>
+            <dd>
+                Mengecualikan tugas baru dari <i>Recents</i>, sehingga pengguna tidak bisa tanpa sengaja
+                mengarahkan kembali.
+            </dd>
+        </dl>
+        <p>
+            Cuplikan ini menampilkan elemen:
+        </p>
+<pre>
+&lt;activity
+    android:name=".ResultActivity"
+...
+    android:launchMode="singleTask"
+    android:taskAffinity=""
+    android:excludeFromRecents="true"&gt;
+&lt;/activity&gt;
+...
+</pre>
+    </li>
+    <li>
+        Buat dan keluarkan pemberitahuan:
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Buat {@link android.content.Intent} yang memulai
+                {@link android.app.Activity}.
+            </li>
+            <li>
+                Atur {@link android.app.Activity} untuk dimulai dalam tugas kosong yang baru dengan memanggil
+                {@link android.content.Intent#setFlags setFlags()} dengan flag
+                {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK}
+                dan
+                {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TASK FLAG_ACTIVITY_CLEAR_TASK}.
+            </li>
+            <li>
+                Atur setiap opsi lain yang Anda perlukan untuk {@link android.content.Intent}.
+            </li>
+            <li>
+                Buat {@link android.app.PendingIntent} dari {@link android.content.Intent}
+                dengan memanggil {@link android.app.PendingIntent#getActivity getActivity()}.
+                Anda nanti bisa menggunakan {@link android.app.PendingIntent} ini sebagai argumen untuk
+                {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+                setContentIntent()}.
+            </li>
+        </ol>
+    <p>
+        Cuplikan kode berikut memperagakan prosesnya:
+    </p>
+<pre>
+// Instantiate a Builder object.
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+// Creates an Intent for the Activity
+Intent notifyIntent =
+        new Intent(this, ResultActivity.class);
+// Sets the Activity to start in a new, empty task
+notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
+                        | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+// Creates the PendingIntent
+PendingIntent notifyPendingIntent =
+        PendingIntent.getActivity(
+        this,
+        0,
+        notifyIntent,
+        PendingIntent.FLAG_UPDATE_CURRENT
+);
+
+// Puts the PendingIntent into the notification builder
+builder.setContentIntent(notifyPendingIntent);
+// Notifications are issued by sending them to the
+// NotificationManager system service.
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Builds an anonymous Notification object from the builder, and
+// passes it to the NotificationManager
+mNotificationManager.notify(id, builder.build());
+</pre>
+    </li>
+</ol>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Progress">Menampilkan Kemajuan dalam Pemberitahuan</h2>
+<p>
+    Pemberitahuan bisa menyertakan indikator kemajuan beranimasi yang menampilkan status
+operasi yang berjalan kepada pengguna. Jika Anda bisa memperkirakan lamanya operasi berlangsung dan berapa banyak
+    yang sudah selesai pada suatu waktu, gunakan bentuk indikator yang "pasti"
+    (baris kemajuan). Jika Anda tidak bisa memperkirakan lamanya operasi, gunakan
+    bentuk indikator "tidak pasti" (indikator aktivitas).
+</p>
+<p>
+    Indikator kemajuan ditampilkan bersama implementasi platform
+    kelas {@link android.widget.ProgressBar}.
+</p>
+<p>
+    Untuk menggunakan indikator kemajuan pada platform mulai dari Android 4.0, panggil
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}. Untuk
+    versi sebelumnya, Anda harus membuat layout pemberitahuan custom sendiri yang
+menyertakan tampilan {@link android.widget.ProgressBar}.
+</p>
+<p>
+    Bagian berikut ini menjelaskan cara menampilkan kemajuan dalam pemberitahuan dengan menggunakan
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="FixedProgress">Menampilkan indikator kemajuan berdurasi tetap</h3>
+<p>
+    Untuk menampilkan baris kemajuan pasti, tambahkan baris itu ke pemberitahuan dengan memanggil
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress
+    setProgress(max, progress, false)}, kemudian keluarkan pemberitahuan. Selagi operasi berlangsung,
+    tambah <code>progress</code>, dan perbarui pemberitahuan. Di akhir operasi,
+    <code>progress</code> harus sama dengan <code>max</code>. Satu cara umum memanggil
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}
+    adalah mengatur <code>max</code> ke 100, kemudian tambah <code>progress</code> sebagai
+     nilai "persen selesai"untuk operasi itu.
+</p>
+<p>
+    Anda bisa membiarkan baris kemajuan ditampilkan saat operasi selesai, atau menghilangkannya. Dalam
+    hal apa pun, ingatlah memperbarui teks pemberitahuan untuk menampilkan bahwa operasi telah selesai.
+    Untuk menghapus baris kemajuan, panggil
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress
+    setProgress(0, 0, false)}. Misalnya:
+</p>
+<pre>
+...
+mNotifyManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mBuilder = new NotificationCompat.Builder(this);
+mBuilder.setContentTitle("Picture Download")
+    .setContentText("Download in progress")
+    .setSmallIcon(R.drawable.ic_notification);
+// Start a lengthy operation in a background thread
+new Thread(
+    new Runnable() {
+        &#64;Override
+        public void run() {
+            int incr;
+            // Do the "lengthy" operation 20 times
+            for (incr = 0; incr &lt;= 100; incr+=5) {
+                    // Sets the progress indicator to a max value, the
+                    // current completion percentage, and "determinate"
+                    // state
+                    mBuilder.setProgress(100, incr, false);
+                    // Displays the progress bar for the first time.
+                    mNotifyManager.notify(0, mBuilder.build());
+                        // Sleeps the thread, simulating an operation
+                        // that takes time
+                        try {
+                            // Sleep for 5 seconds
+                            Thread.sleep(5*1000);
+                        } catch (InterruptedException e) {
+                            Log.d(TAG, "sleep failure");
+                        }
+            }
+            // When the loop is finished, updates the notification
+            mBuilder.setContentText("Download complete")
+            // Removes the progress bar
+                    .setProgress(0,0,false);
+            mNotifyManager.notify(ID, mBuilder.build());
+        }
+    }
+// Starts the thread by calling the run() method in its Runnable
+).start();
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ActivityIndicator">Menampilkan indikator aktivitas berlanjut</h3>
+<p>
+    Untuk menampilkan indikator aktivitas tidak pasti, tambahkan aktivitas ke pemberitahuan dengan
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, true)}
+    (dua argumen pertama akan diabaikan), dan keluarkan pemberitahuan. Hasilnya adalah indikator
+    yang memiliki gaya yang sama dengan baris kemajuan, hanya saja animasinya terus berjalan.
+</p>
+<p>
+    Keluarkan pemberitahuan di awal operasi. Animasi akan berjalan hingga Anda
+    memodifikasi pemberitahuan. Bila operasi selesai, panggil
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, false)}
+    kemudian perbarui pemberitahuan untuk menghapus indikator aktivitas.
+    Selalu lakukan ini; jika makan animasi akan terus berjalan sekalipun operasi telah selesai. Juga
+    ingatlah mengubah teks pemberitahuan untuk menunjukkan bahwa operasi telah selesai.
+</p>
+<p>
+    Untuk melihat cara kerja indikator aktivitas, lihat cuplikan terdahulu. Cari lokasi baris-baris berikut:
+</p>
+<pre>
+// Sets the progress indicator to a max value, the current completion
+// percentage, and "determinate" state
+mBuilder.setProgress(100, incr, false);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+<p>
+    Ganti baris yang telah Anda temukan dengan baris berikut:
+</p>
+<pre>
+ // Sets an activity indicator for an operation of indeterminate length
+mBuilder.setProgress(0, 0, true);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+
+<h2 id="metadata">Metadata Pemberitahuan</h2>
+
+<p>Pemberitahuan dapat disortir sesuai metadata yang Anda tetapkan dengan
+metode {@link android.support.v4.app.NotificationCompat.Builder} berikut:</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setCategory(java.lang.String) setCategory()}
+    memberi tahu sistem cara menangani pemberitahuan aplikasi Anda bila perangkat berada dalam mode Priority
+    (misalnya, jika pemberitahuan menyatakan suatu panggilan masuk, pesan instan, atau alarm).</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setPriority(int) setPriority()} menyebabkan
+    pemberitahuan dengan bidang prioritas diatur ke {@code PRIORITY_MAX} atau {@code PRIORITY_HIGH}
+    muncul dalam jendela kecil mengambang jika pemberitahuan juga memiliki suara atau getaran.</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#addPerson(java.lang.String) addPerson()}
+    memungkinkan Anda menambahkan daftar orang ke pemberitahuan. Aplikasi Anda bisa menggunakannya untuk memberi isyarat pada
+    sistem bahwa sistem harus mengelompokkan bersama pemberitahuan dari orang-orang yang ditetapkan, atau memberi peringkat lebih penting pada pemberitahuan
+    untuk orang-orang ini.</li>
+</ul>
+
+<div class="figure" style="width:230px">
+  <img src="{@docRoot}images/ui/notifications/heads-up.png" alt="" width="" height="" id="figure3" />
+  <p class="img-caption">
+    <strong>Gambar 3.</strong> Aktivitas layar penuh yang menampilkan pemberitahuan pendahuluan
+  </p>
+</div>
+
+<h2 id="Heads-up">Pemberitahuan Pendahuluan</h2>
+
+<p>Dengan Android 5.0 (API level 21), pemberitahuan bisa muncul dalam jendela kecil mengambang
+(yang disebut juga dengan <em>pemberitahuan pendahuluan</em>) saat perangkat aktif
+(yakni, perangkat dibuka kuncinya dan layarnya menyala). Pemberitahuan ini
+muncul seperti bentuk ringkas pemberitahuan Anda, hanya saja
+pemberitahuan pendahuluan juga menampilkan tombol tindakan. Pengguna bisa menindaklanjuti atau mengabaikan,
+pemberitahuan pendahuluan tanpa meninggalkan aplikasi saat ini.</p>
+
+<p>Contoh-contoh kondisi yang dapat memicu pemberitahuan pendahuluan antara lain:</p>
+
+<ul>
+  <li>Aktivitas pengguna berada dalam mode layar penuh (aplikasi menggunakan
+{@link android.app.Notification#fullScreenIntent}), atau</li>
+  <li>Pemberitahuan memiliki prioritas tinggi dan menggunakan nada dering atau
+    getaran</li>
+</ul>
+
+<h2 id="lockscreenNotification">Pemberitahuan Layar Kunci</h2>
+
+<p>Dengan rilis Android 5.0 (API level 21), pemberitahuan kini dapat muncul pada
+layar kunci. Aplikasi Anda bisa menggunakan fungsionalitas ini untuk menyediakan kontrol pemutaran media dan
+tindakan umum lainnya. Pengguna bisa memilih lewat Settings apakah akan menampilkan pemberitahuan pada layar kunci, dan
+Anda bisa mendesain apakah pemberitahuan aplikasi akan terlihat pada layar kunci.</p>
+
+<h3 id="visibility">Mengatur Visibilitas</h3>
+
+<p>Aplikasi Anda bisa mengatur level detail terlihat pada pemberitahuan yang ditampilkan di
+layar kunci aman. Anda memanggil {@link android.support.v4.app.NotificationCompat.Builder#setVisibility(int) setVisibility()}
+dan menetapkan salah satu nilai berikut:</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC} menampilkan isi lengkap
+    pemberitahuan.</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_SECRET} tidak menampilkan bagian apa pun dari
+    pemberitahuan ini pada layar kunci.</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE} menampilkan informasi dasar,
+    misalnya ikon dan judul isi pemberitahuan, namun menyembunyikan isi lengkap pemberitahuan.</li>
+</ul>
+
+<p>Bila {@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE} telah diatur, Anda juga bisa
+menyediakan versi alternatif isi pemberitahuan yang menyembunyikan detail tertentu. Misalnya,
+aplikasi SMS dapat menampilkan pemberitahuan yang menampilkan <em>Anda memiliki 3 pesan teks baru</em>, namun menyembunyikan
+isi dan pengirim pesan. Untuk menyediakan pemberitahuan alternatif ini, buat dahulu pemberitahuan
+pengganti menggunakan {@link android.support.v4.app.NotificationCompat.Builder}. Bila Anda membuat
+objek pemberitahuan privat, lampirkan pemberitahuan pengganti melalui metode
+{@link android.support.v4.app.NotificationCompat.Builder#setPublicVersion(android.app.Notification) setPublicVersion()}
+.</p>
+
+<h3 id="controllingMedia">Mengontrol Pemutaran Media pada Layar Kunci</h3>
+
+<p>Dalam Android 5.0 (API level 21) layar kunci tidak lagi menampilkan kontrol media
+berdasarkan {@link android.media.RemoteControlClient}, yang sekarang telah dihilangkan. Sebagai gantinya, gunakan
+template {@link android.app.Notification.MediaStyle} dengan metode
+{@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()}
+, yang mengubah tindakan menjadi ikon yang bisa diklik.</p>
+
+<p class="note"><strong>Catatan:</strong> Template dan metode {@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()}
+tidak disertakan dalam pustaka dukungan, sehingga fitur-fitur ini berjalan pada Android 5.0 dan yang lebih tinggi
+saja.</p>
+
+<p>Untuk menampilkan kontrol pemutaran media di layar kunci dalam Android 5.0, atur visibilitas
+ke {@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC}, seperti dijelaskan di atas. Kemudian tambahkan
+tindakan dan atur template {@link android.app.Notification.MediaStyle}, seperti dijelaskan dalam contoh kode
+berikut:</p>
+
+<pre>
+Notification notification = new Notification.Builder(context)
+    // Show controls on lock screen even when user hides sensitive content.
+    .setVisibility(Notification.VISIBILITY_PUBLIC)
+    .setSmallIcon(R.drawable.ic_stat_player)
+    // Add media control buttons that invoke intents in your media service
+    .addAction(R.drawable.ic_prev, "Previous", prevPendingIntent) // #0
+    .addAction(R.drawable.ic_pause, "Pause", pausePendingIntent)  // #1
+    .addAction(R.drawable.ic_next, "Next", nextPendingIntent)     // #2
+    // Apply the media style template
+    .setStyle(new Notification.MediaStyle()
+    .setShowActionsInCompactView(1 /* #1: pause button */)
+    .setMediaSession(mMediaSession.getSessionToken())
+    .setContentTitle("Wonderful music")
+    .setContentText("My Awesome Band")
+    .setLargeIcon(albumArtBitmap)
+    .build();
+</pre>
+
+<p class="note"><strong>Catatan:</strong> Dihilangkannya {@link android.media.RemoteControlClient}
+memiliki implikasi lebih jauh untuk mengontrol media. Lihat
+<a href="{@docRoot}about/versions/android-5.0.html#MediaPlaybackControl">Kontrol Pemutaran Media</a>
+untuk informasi selengkapnya tentang API baru untuk mengelola sesi media dan mengontrol pemutaran.</p>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="CustomNotification">Layout Pemberitahuan Custom</h2>
+<p>
+    Kerangka kerja pemberitahuan memungkinkan Anda mendefinisikan layout pemberitahuan custom, yang
+    mendefinisikan penampilan pemberitahuan dalam objek {@link android.widget.RemoteViews}.
+    Pemberitahuan dengan layout custom serupa pemberitahuan normal, namun dibuat berdasarkan
+    {@link android.widget.RemoteViews} yang didefinisikan dalam file layout XML.
+</p>
+<p>
+    Tinggi yang tersedia untuk layout pemberitahuan custom bergantung pada tampilan pemberitahuan. Layout
+    tampilan normal dibatasi hingga 64 dp, dan layout tampilan yang diperluas dibatasi hingga 256 dp.
+</p>
+<p>
+    Untuk mendefinisikan layout pemberitahuan custom, mulailah dengan membuat instance 
+    objek {@link android.widget.RemoteViews} yang memekarkan file layout XML. Kemudian,
+    sebagai ganti memanggil metode seperti
+    {@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()},
+    panggil {@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}. Untuk mengatur
+    detail isi pemberitahuan custom, gunakan metode dalam
+    {@link android.widget.RemoteViews} untuk mengatur nilai anak tampilan:
+</p>
+<ol>
+    <li>
+        Buat layout XML untuk pemberitahuan di file terpisah. Anda bisa menggunakan nama file
+apa saja yang diinginkan, namun Anda harus menggunakan ekstensi <code>.xml</code>
+    </li>
+    <li>
+        Dalam aplikasi Anda, gunakan metode {@link android.widget.RemoteViews} untuk mendefinisikan
+        ikon dan teks pemberitahuan. Masukkan objek {@link android.widget.RemoteViews} ini ke dalam
+        {@link android.support.v4.app.NotificationCompat.Builder} Anda dengan memanggil
+        {@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}. Hindari
+        mengatur {@link android.graphics.drawable.Drawable} latar belakang pada
+        objek {@link android.widget.RemoteViews} Anda, karena warna teks bisa menjadi tidak terbaca.
+    </li>
+</ol>
+<p>
+    Kelas {@link android.widget.RemoteViews} juga menyertakan metode yang bisa Anda gunakan untuk
+    menambahkan {@link android.widget.Chronometer} atau {@link android.widget.ProgressBar}
+dengan mudah ke layout pemberitahuan Anda. Untuk informasi selengkapnya tentang cara membuat layout custom
+    pemberitahuan Anda, lihat dokumentasi acuan {@link android.widget.RemoteViews}.
+</p>
+<p class="caution">
+    <strong>Perhatian:</strong> Bila Anda menggunakan layout pemberitahuan custom, berhati-hatilah
+    untuk memastikan bahwa layout custom itu bekerja pada berbagai orientasi dan resolusi perangkat. Walaupun
+    berlaku bagi semua layout View, nasihat ini khususnya penting untuk pemberitahuan karena
+    ruang di laci pemberitahuan sangat terbatas. Jangan buat layout custom terlalu
+    kompleks, dan pastikan mengujinya di berbagai konfigurasi.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h4>Menggunakan sumber daya gaya untuk teks pemberitahuan custom</h4>
+<p>
+    Selalu gunakan sumber daya gaya untuk teks pemberitahuan custom. Warna latar belakang
+    pemberitahuan bisa bervariasi di berbagai perangkat dan versi, dan menggunakan sumber daya gaya
+    membantu Anda menangani hal ini. Mulai Android 2.3, sistem mendefinisikan sebuah gaya untuk
+    teks layout pemberitahuan standar. Jika Anda menggunakan gaya yang sama dalam aplikasi yang menargetkan Android
+    2.3 atau yang lebih tinggi, Anda akan memastikan bahwa teks terlihat pada latar belakang tampilan.
+</p>
diff --git a/docs/html-intl/intl/in/guide/topics/ui/overview.jd b/docs/html-intl/intl/in/guide/topics/ui/overview.jd
new file mode 100644
index 0000000..a0b2b06
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/ui/overview.jd
@@ -0,0 +1,71 @@
+page.title=Ikhtisar UI
+@jd:body
+
+
+<p>Semua elemen antarmuka pengguna dalam aplikasi Android dibangun menggunakan objek {@link android.view.View} dan
+{@link android.view.ViewGroup}. {@link android.view.View} adalah objek yang menarik
+sesuatu di layar dan dapat berinteraksi dengan pengguna. {@link android.view.ViewGroup} merupakan sebuah
+objek yang menyimpan objek {@link android.view.View} lainnya (dan {@link android.view.ViewGroup}) untuk
+mendefinisikan layout antarmuka.</p>
+
+<p>Android menyediakan sekumpulan subkelas {@link android.view.View} dan {@link
+android.view.ViewGroup} yang menawarkan kontrol input umum (seperti tombol dan bidang
+teks) serta berbagai model layout (seperti layout linear atau relatif).</p>
+
+
+<h2 id="Layout">Layout Antarmuka Pengguna</h2>
+
+<p>Antarmuka pengguna untuk setiap komponen aplikasi Anda didefinisikan menggunakan hierarki objek {link
+android.view.View} dan {@link android.view.ViewGroup}, seperti yang ditampilkan dalam gambar 1. Setiap kelompok tampilan
+merupakan kontainer tak terlihat yang mengelola tampilan anak, sementara tampilan anak ini dapat menjadi kontrol
+input atau widget lain yang
+menarik sebagian dari UI. Pohon hierarki ini bisa sederhana atau bisa juga kompleks bergantung kebutuhan
+(namun yang sederhana paling baik untuk kinerja).</p>
+
+<img src="{@docRoot}images/viewgroup.png" alt="" />
+<p class="img-caption"><strong>Gambar 1.</strong> Ilustrasi dari hierarki tampilan, yang mendefinisikan layout
+UI.</p>
+
+<p>Untuk mendeklarasikan layout, Anda dapat menyediakan objek {@link android.view.View} dalam kode dan mulai
+membangun pohon, namun cara termudah dan terefektif untuk mendefinisikan layout adalah dengan file XML.
+XML menawarkan struktur layout yang dapat dibaca manusia, serupa dengan HTML.</p>
+
+<p>Nama elemen XML untuk tampilan sesuai dengan kelas Android yang diwakilinya. Dengan demikian elemen
+<code>&lt;TextView&gt;</code> membuat widget {@link android.widget.TextView} dalam UI Anda,
+dan elemen <code>&lt;LinearLayout&gt;</code> membuat kelompok tampilan {@link android.widget.LinearLayout}
+. </p>
+
+<p>Misalnya, layout vertikal sederhana dengan tampilan teks dan tombol akan tampak seperti ini:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="fill_parent" 
+              android:layout_height="fill_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>Saat Anda memuat sumber daya layout di aplikasi, Android akan menginisialisasi setiap simpul layout menjadi
+objek runtime yang bisa Anda gunakan untuk mendefinisikan perilaku tambahan, query status objek, atau memodifikasi
+layout.</p>
+
+<p>Untuk mendapatkan panduan lengkap mengenai pembuatan layout UI, lihat <a href="declaring-layout.html">Layout
+XML</a>.
+
+  
+<h2 id="UIComponents">Komponen Antarmuka Pengguna</h2>
+
+<p>Anda tidak harus membuat semua UI menggunakan objek {@link android.view.View} dan {link
+android.view.ViewGroup}. Android menyediakan beberapa komponen aplikasi yang menawarkan
+layout UI standar yang tinggal Anda definisikan kontennya. Komponen UI ini masing-masing
+memiliki set API unik yang dijelaskan dalam masing-masing dokumennya, seperti <a href="{@docRoot}guide/topics/ui/actionbar.html">Action-Bar</a>, <a href="{@docRoot}guide/topics/ui/dialogs.html">Dialog</a>, dan <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Pemberitahuan Status</a>.</p>
+
+
diff --git a/docs/html-intl/intl/in/guide/topics/ui/settings.jd b/docs/html-intl/intl/in/guide/topics/ui/settings.jd
new file mode 100644
index 0000000..5ac61f9
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/ui/settings.jd
@@ -0,0 +1,1202 @@
+page.title=Pengaturan
+page.tags=preference,preferenceactivity,preferencefragment
+
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Dalam dokumen ini</h2>
+<ol>
+  <li><a href="#Overview">Ikhtisar</a>
+    <ol>
+      <li><a href="#SettingTypes">Preferensi</a></li>
+    </ol>
+  </li>
+  <li><a href="#DefiningPrefs">Mendefinisikan Preferensi dalam XML</a>
+    <ol>
+      <li><a href="#Groups">Membuat grup pengaturan</a></li>
+      <li><a href="#Intents">Menggunakan intent</a></li>
+    </ol>
+  </li>
+  <li><a href="#Activity">Membuat Aktivitas Preferensi</a></li>
+  <li><a href="#Fragment">Menggunakan Fragmen Preferensi</a></li>
+  <li><a href="#Defaults">Mengatur Nilai Default</a></li>
+  <li><a href="#PreferenceHeaders">Menggunakan Header Preferensi</a>
+    <ol>
+      <li><a href="#CreateHeaders">Membuat file header</a></li>
+      <li><a href="#DisplayHeaders">Menampilkan header</a></li>
+      <li><a href="#BackCompatHeaders">Mendukung versi yang lebih lama dengan header preferensi</a></li>
+    </ol>
+  </li>
+  <li><a href="#ReadingPrefs">Preferensi Membaca</a>
+    <ol>
+      <li><a href="#Listening">Mendengarkan perubahan preferensi</a></li>
+    </ol>
+  </li>
+  <li><a href="#NetworkUsage">Mengelola Penggunaan Jaringan</a></li>
+  <li><a href="#Custom">Membangun Preferensi Custom</a>
+    <ol>
+      <li><a href="#CustomSelected">Menetapkan antarmuka pengguna</a></li>
+      <li><a href="#CustomSave">Menyimpan nilai pengaturan</a></li>
+      <li><a href="#CustomInitialize">Menginisialisasi nilai saat ini</a></li>
+      <li><a href="#CustomDefault">Menyediakan nilai default</a></li>
+      <li><a href="#CustomSaveState">Menyimpan dan memulihkan status Preferensi</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Kelas-kelas utama</h2>
+<ol>
+  <li>{@link android.preference.Preference}</li>
+  <li>{@link android.preference.PreferenceActivity}</li>
+  <li>{@link android.preference.PreferenceFragment}</li>
+</ol>
+
+
+<h2>Lihat juga</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/settings.html">Panduan desain pengaturan</a></li>
+</ol>
+</div>
+</div>
+
+
+
+
+<p>Aplikasi sering kali menyertakan pengaturan yang memungkinkan pengguna memodifikasi fitur dan perilaku aplikasi. Misalnya,
+beberapa aplikasi memungkinkan pengguna untuk menetapkan apakah pemberitahuan diaktifkan atau menetapkan seberapa sering
+aplikasi menyinkronkan data dengan cloud.</p>
+
+<p>Jika ingin menyediakan pengaturan untuk aplikasi, Anda harus menggunakan
+API Android {@link android.preference.Preference} untuk membangun antarmuka yang konsisten dengan
+pengalaman pengguna di aplikasi Android yang lain (termasuk pengaturan sistem). Dokumen ini menjelaskan
+cara membangun pengaturan aplikasi Anda menggunakan API {@link android.preference.Preference}.</p>
+
+<div class="note design">
+<p><strong>Desain Pengaturan</strong></p>
+  <p>Untuk informasi tentang cara mendesain pengaturan Anda, bacalah panduan desain <a href="{@docRoot}design/patterns/settings.html">Pengaturan</a>.</p>
+</div>
+
+
+<img src="{@docRoot}images/ui/settings/settings.png" alt="" width="435" />
+<p class="img-caption"><strong>Gambar 1.</strong> Cuplikan layar dari pengaturan
+aplikasi Messaging Android. Memilih item yang didefinisikan oleh {@link android.preference.Preference} 
+akan membuka antarmuka untuk mengubah pengaturan.</p>
+
+
+
+
+<h2 id="Overview">Ikhtisar</h2>
+
+<p>Sebagai ganti menggunakan objek {@link android.view.View} untuk membangun antarmuka pengguna, pengaturan
+dibangun menggunakan berbagai subkelas dari kelas {@link android.preference.Preference} yang Anda
+deklarasikan dalam file XML.</p>
+
+<p>Objek {@link android.preference.Preference} adalah blok pembangun untuk pengaturan
+tunggal. Setiap {@link android.preference.Preference} muncul sebagai item dalam daftar dan menyediakan UI
+yang sesuai bagi pengguna untuk memodifikasi pengaturan. Misalnya, {@link
+android.preference.CheckBoxPreference} membuat item daftar yang menampilkan kotak cek, dan {@link
+android.preference.ListPreference} membuat item yang membuka dialog berisi daftar pilihan.</p>
+
+<p>Setiap {@link android.preference.Preference} yang Anda tambahkan memiliki pasangan nilai-kunci yang sesuai yang
+digunakan sistem untuk menyimpan pengaturan dalam file {@link android.content.SharedPreferences}
+default untuk pengaturan aplikasi Anda. Bila pengguna mengubah pengaturan, sistem akan memperbarui nilai
+yang bersangkutan dalam file {@link android.content.SharedPreferences} untuk Anda. Satu-satunya saat di mana Anda harus
+berinteraksi langsung dengan file {@link android.content.SharedPreferences} yang terkait adalah bila Anda
+perlu membaca nilai untuk menentukan perilaku aplikasi berdasarkan pengaturan pengguna.</p>
+
+<p>Nilai yang tersimpan di {@link android.content.SharedPreferences} untuk setiap pengaturan bisa berupa
+tipe data berikut:</p>
+
+<ul>
+  <li>Boolean</li>
+  <li>Float</li>
+  <li>Int</li>
+  <li>Long</li>
+  <li>String</li>
+  <li>String {@link java.util.Set}</li>
+</ul>
+
+<p>Oleh karena UI pengaturan aplikasi Anda dibangun menggunakan objek {@link android.preference.Preference}
+sebagai ganti
+objek {@link android.view.View}, Anda perlu menggunakan {@link android.app.Activity} khusus atau
+subkelas {@link android.app.Fragment} untuk menampilkan pengaturan daftar:</p>
+
+<ul>
+  <li>Jika aplikasi Anda mendukung versi Android yang lebih lama dari 3.0 (API level 10 dan yang lebih rendah), Anda harus
+membangun aktivitas sebagai ekstensi dari kelas {@link android.preference.PreferenceActivity}.</li>
+  <li>Pada Android 3.0 dan yang lebih baru, sebaiknya Anda menggunakan {@link android.app.Activity} biasa
+yang menjadi host {@link android.preference.PreferenceFragment} yang menampilkan pengaturan aplikasi Anda.
+Akan tetapi, Anda juga bisa menggunakan {@link android.preference.PreferenceActivity} untuk membuat layout dua panel
+bagi layar besar bila Anda memiliki beberapa grup pengaturan.</li>
+</ul>
+
+<p>Cara mengatur {@link android.preference.PreferenceActivity} Anda dan instance {@link
+android.preference.PreferenceFragment} dibahas di bagian tentang <a href="#Activity">Membuat Aktivitas Preferensi</a> dan <a href="#Fragment">Menggunakan
+Fragmen Preferensi</a>.</p>
+
+
+<h3 id="SettingTypes">Preferensi</h3>
+
+<p>Setiap pengaturan untuk aplikasi Anda diwakili oleh subkelas khusus dari kelas {@link
+android.preference.Preference}. Setiap subkelas menyertakan seperangkat properti utama yang memungkinkan Anda
+untuk menetapkan berbagai hal seperti judul pengaturan dan nilai default. Setiap subkelas juga menyediakan
+antarmuka pengguna dan properti khusus miliknya sendiri. Misalnya, gambar 1 menampilkan cuplikan layar dari
+ pengaturan aplikasi Messaging. Setiap item daftar dalam layar pengaturan didukung oleh objek {@link
+android.preference.Preference} berbeda.</p>
+
+<p>Beberapa preferensi yang paling umum adalah:</p>
+
+<dl>
+  <dt>{@link android.preference.CheckBoxPreference}</dt>
+  <dd>Menampilkan item dengan kotak cek untuk pengaturan yang diaktifkan atau dinonaktifkan. Nilai
+tersimpan adalah boolean (<code>true</code> jika diberi tanda cek).</dd>
+
+  <dt>{@link android.preference.ListPreference}</dt>
+  <dd>Membuka dialog berisi daftar tombol radio. Nilai
+tersimpan bisa berupa tipe nilai apa pun yang didukung (tercantum di atas).</dd>
+
+  <dt>{@link android.preference.EditTextPreference}</dt>
+  <dd>Membuka dialog berisi widget {@link android.widget.EditText}. Nilai tersimpan adalah {@link
+java.lang.String}.</dd>
+</dl>
+
+<p>Lihat kelas {@link android.preference.Preference} untuk mengetahui daftar subkelas lain dan 
+propertinya.</p>
+
+<p>Tentu saja, kelas bawaan tidak mengakomodasi setiap kebutuhan dan aplikasi Anda mungkin memerlukan
+sesuatu yang lebih khusus. Misalnya, platform saat ini tidak menyediakan kelas {@link
+android.preference.Preference} untuk mengambil nomor atau tanggal. Anda mungkin perlu mendefinisikan
+subkelas {@link android.preference.Preference} sendiri. Untuk bantuan melakukannya, lihat bagian tentang <a href="#Custom">Membangun Preferensi Custom</a>.</p>
+
+
+
+<h2 id="DefiningPrefs">Mendefinisikan Preferensi dalam XML</h2>
+
+<p>Meskipun bisa membuat instance objek {@link android.preference.Preference} baru saat runtime, Anda
+harus mendefinisikan daftar pengaturan dalam XML dengan hierarki objek
+{@link android.preference.Preference}. Menggunakan file XML untuk mendefinisikan sekumpulan pengaturan lebih disukai karena file
+menyediakan struktur yang mudah dibaca dan diperbarui. Selain itu, pengaturan aplikasi Anda
+umumnya telah ditetapkan sebelumnya, meskipun Anda masih bisa memodifikasi kumpulan tersebut saat runtime.</p>
+
+<p>Setiap subkelas {@link android.preference.Preference} bisa dideklarasikan dengan elemen XML yang
+cocok dengan nama kelas, seperti {@code &lt;CheckBoxPreference&gt;}.</p>
+
+<p>Anda harus menyimpan file XML dalam direktori {@code res/xml/}. Meskipun bisa memberi nama file
+sesuka Anda, biasanya file diberi nama {@code preferences.xml}. Biasanya Anda hanya memerlukan satu file,
+karena cabang di hierarki (yang membuka daftar pengaturanny sendiri) dideklarasikan menggunakan instance
+tersarang {@link android.preference.PreferenceScreen}.</p>
+
+<p class="note"><strong>Catatan:</strong> Jika ingin membuat layout multipanel untuk
+pengaturan, Anda memerlukan file XML terpisah untuk setiap fragmen.</p>
+
+<p>Simpul akar untuk file XML harus merupakan elemen {@link android.preference.PreferenceScreen
+&lt;PreferenceScreen&gt;}. Dalam elemen inilah tempat Anda menambahkan setiap {@link
+android.preference.Preference}. Setiap anak yang Anda tambahkan dalam elemen
+{@link android.preference.PreferenceScreen &lt;PreferenceScreen&gt;} akan tampak sebagai item
+tunggal dalam daftar pengaturan.</p>
+
+<p>Misalnya:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;CheckBoxPreference
+        android:key="pref_sync"
+        android:title="@string/pref_sync"
+        android:summary="@string/pref_sync_summ"
+        android:defaultValue="true" />
+    &lt;ListPreference
+        android:dependency="pref_sync"
+        android:key="pref_syncConnectionType"
+        android:title="@string/pref_syncConnectionType"
+        android:dialogTitle="@string/pref_syncConnectionType"
+        android:entries="@array/pref_syncConnectionTypes_entries"
+        android:entryValues="@array/pref_syncConnectionTypes_values"
+        android:defaultValue="@string/pref_syncConnectionTypes_default" />
+&lt;/PreferenceScreen>
+</pre>
+
+<p>Dalam contoh ini, terdapat {@link android.preference.CheckBoxPreference} dan {@link
+android.preference.ListPreference}. Kedua item tersebut menyertakan tiga atribut berikut:</p>
+
+<dl>
+  <dt>{@code android:key}</dt>
+  <dd>Atribut ini diperlukan untuk preferensi yang mempertahankan nilai data. Ini menetapkan kunci
+unik (string) yang digunakan sistem saat menyimpan nilai pengaturan ini dalam {@link
+android.content.SharedPreferences}. 
+  <p>Instance satu-satunya di mana atribut ini <em>tidak diperlukan</em> adalah bila preferensi berupa
+{@link android.preference.PreferenceCategory} atau {@link android.preference.PreferenceScreen}, atau
+preferensi menetapkan {@link android.content.Intent} untuk dipanggil (dengan elemen <a href="#Intents">{@code &lt;intent&gt;}</a>) atau {@link android.app.Fragment} untuk ditampilkan (dengan atribut <a href="{@docRoot}reference/android/preference/Preference.html#attr_android:fragment">{@code
+android:fragment}</a>).</p>
+  </dd>
+  <dt>{@code android:title}</dt>
+  <dd>Ini menyediakan nama pengaturan yang bisa dilihat oleh pengguna.</dd>
+  <dt>{@code android:defaultValue}</dt>
+  <dd>Ini menetapkan nilai awal yang harus diatur sistem dalam file {@link
+android.content.SharedPreferences}. Anda harus memberikan nilai default untuk semua
+pengaturan.</dd>
+</dl>
+
+<p>Untuk informasi tentang semua atribut lain yang didukung, lihat dokumentasi {@link
+android.preference.Preference} (dan subkelas masing-masing).</p>
+
+
+<div class="figure" style="width:300px">
+  <img src="{@docRoot}images/ui/settings/settings-titles.png" alt="" />
+  <p class="img-caption"><strong>Gambar 2.</strong> Mengatur kategori
+    dengan judul. <br/><b>1.</b> Kategori ditetapkan oleh elemen {@link
+android.preference.PreferenceCategory &lt;PreferenceCategory&gt;}. <br/><b>2.</b> Judul
+ditetapkan dengan atribut {@code android:title}.</p>
+</div>
+
+
+<p>Bila daftar pengaturan Anda melebihi sekitar 10 item, Anda mungkin perlu menambahkan judul untuk
+mendefinisikan grup pengaturan atau menampilkan grup tersebut di
+layar terpisah. Opsi ini dijelaskan di bagian berikut.</p>
+
+
+<h3 id="Groups">Membuat grup pengaturan</h3>
+
+<p>Jika Anda menampilkan daftar 10 pengaturan atau lebih, pengguna
+mungkin akan kesulitan dalam memindai, memahami dan memprosesnya. Anda bisa mengatasinya dengan
+membagi sebagian atau semua pengaturan ke dalam beberapa grup, yang secara efektif akan mengubah satu daftar panjang menjadi beberapa daftar
+yang lebih pendek. Suatu grup pengaturan terkait bisa ditampilkan dalam salah satu dari dua cara:</p>
+
+<ul>
+  <li><a href="#Titles">Menggunakan judul</a></li>
+  <li><a href="#Subscreens">Menggunakan sublayar</a></li>
+</ul>
+
+<p>Anda bisa menggunakan salah satu atau keduanya untuk mengelola pengaturan aplikasi Anda. Saat
+memutuskan mana yang akan digunakan dan cara membagi pengaturan, Anda harus mengikuti pedoman dalam
+Panduan <a href="{@docRoot}design/patterns/settings.html">Pengaturan</a> Desain Android.</p>
+
+
+<h4 id="Titles">Menggunakan judul</h4>
+
+<p>Jika ingin menyediakan divider dengan heading di antara grup pengaturan (seperti yang ditampilkan dalam gambar 2),
+tempatkan setiap grup objek {@link android.preference.Preference} di dalam {@link
+android.preference.PreferenceCategory}.</p>
+
+<p>Misalnya:</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;PreferenceCategory 
+        android:title="&#64;string/pref_sms_storage_title"
+        android:key="pref_key_storage_settings">
+        &lt;CheckBoxPreference
+            android:key="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_auto_delete"
+            android:title="&#64;string/pref_title_auto_delete"
+            android:defaultValue="false"... />
+        &lt;Preference 
+            android:key="pref_key_sms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_sms_delete"... />
+        &lt;Preference 
+            android:key="pref_key_mms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_mms_delete" ... />
+    &lt;/PreferenceCategory>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h4 id="Subscreens">Menggunakan sublayar</h4>
+
+<p>Jika ingin menempatkan grup pengaturan ke dalam sublayar (seperti yang ditampilkan dalam gambar 3), tempatkan grup
+objek {@link android.preference.Preference} di dalam {@link
+android.preference.PreferenceScreen}.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-subscreen.png" alt="" />
+<p class="img-caption"><strong>Gambar 3.</strong> Mengatur sublayar. Elemen {@code
+&lt;PreferenceScreen&gt;}
+membuat item yang, bila dipilih, akan membuka daftar terpisah untuk menampilkan pengaturan tersarang.</p>
+
+<p>Misalnya:</p>
+
+<pre>
+&lt;PreferenceScreen  xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;!-- opens a subscreen of settings -->
+    &lt;PreferenceScreen
+        android:key="button_voicemail_category_key"
+        android:title="&#64;string/voicemail"
+        android:persistent="false">
+        &lt;ListPreference
+            android:key="button_voicemail_provider_key"
+            android:title="&#64;string/voicemail_provider" ... />
+        &lt;!-- opens another nested subscreen -->
+        &lt;PreferenceScreen
+            android:key="button_voicemail_setting_key"
+            android:title="&#64;string/voicemail_settings"
+            android:persistent="false">
+            ...
+        &lt;/PreferenceScreen>
+        &lt;RingtonePreference
+            android:key="button_voicemail_ringtone_key"
+            android:title="&#64;string/voicemail_ringtone_title"
+            android:ringtoneType="notification" ... />
+        ...
+    &lt;/PreferenceScreen>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h3 id="Intents">Menggunakan intent</h3>
+
+<p>Dalam beberapa kasus, Anda mungkin ingin item preferensi untuk membuka beberapa aktivitas sebagai ganti
+layar pengaturan, seperti browser web untuk melihat halaman web. Untuk memanggil {@link
+android.content.Intent} saat pengguna memilih item preferensi, tambahkan elemen {@code &lt;intent&gt;}
+sebagai anak dari elemen {@code &lt;Preference&gt;} yang bersangkutan.</p>
+
+<p>Misalnya, berikut ini cara menggunakan item preferensi untuk membuka halaman web:</p>
+
+<pre>
+&lt;Preference android:title="@string/prefs_web_page" >
+    &lt;intent android:action="android.intent.action.VIEW"
+            android:data="http://www.example.com" />
+&lt;/Preference>
+</pre>
+
+<p>Anda bisa membuat intent implisit maupun eksplisit menggunakan atribut berikut:</p>
+
+<dl>
+  <dt>{@code android:action}</dt>
+    <dd>Tindakan yang akan ditetapkan, sesuai metode 
+{@link android.content.Intent#setAction setAction()}.</dd>
+  <dt>{@code android:data}</dt>
+    <dd>Data yang akan ditetapkan, sesuai metode {@link android.content.Intent#setData setData()}.</dd>
+  <dt>{@code android:mimeType}</dt>
+    <dd>Tipe MIME yang akan ditetapkan, sesuai metode 
+{@link android.content.Intent#setType setType()}.</dd>
+  <dt>{@code android:targetClass}</dt>
+    <dd>Bagian kelas dari nama komponen, sesuai metode {@link android.content.Intent#setComponent
+setComponent()}.</dd>
+  <dt>{@code android:targetPackage}</dt>
+    <dd>Bagian paket dari nama komponen, sesuai metode {@link
+android.content.Intent#setComponent setComponent()}.</dd>
+</dl>
+
+
+
+<h2 id="Activity">Membuat Aktivitas Preferensi</h2>
+
+<p>Untuk menampilkan pengaturan Anda dalam suatu aktivitas, perluas kelas {@link
+android.preference.PreferenceActivity}. Ini adalah ekstensi dari kelas {@link
+android.app.Activity} biasa yang menampilkan daftar pengaturan berdasarkan hierarki objek {@link
+android.preference.Preference}. {@link android.preference.PreferenceActivity}
+secara otomatis mempertahankan pengaturan yang dikaitkan dengan setiap {@link
+android.preference.Preference} bila pengguna membuat perubahan.</p>
+
+<p class="note"><strong>Catatan:</strong> Jika Anda mengembangkan aplikasi untuk Android 3.0 dan
+yang lebih tinggi, sebaiknya gunakan {@link android.preference.PreferenceFragment}. Pindah ke bagian
+berikutnya tentang <a href="#Fragment">Menggunakan Fragmen Preferensi</a>.</p>
+
+<p>Hal paling penting untuk diingat adalah jangan memuat layout tampilan selama callback {@link
+android.preference.PreferenceActivity#onCreate onCreate()}. Sebagai gantinya, panggil {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} untuk
+menambahkan preferensi yang telah Anda deklarasikan dalam file XML ke aktivitas. Misalnya, berikut ini adalah kode minimum
+polos yang diperlukan untuk {@link android.preference.PreferenceActivity} fungsional:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        addPreferencesFromResource(R.xml.preferences);
+    }
+}
+</pre>
+
+<p>Ini sebenarnya kode yang cukup untuk beberapa aplikasi, karena segera setelah pengguna memodifikasi preferensi,
+sistem akan menyimpan perubahan tersebut ke file {@link android.content.SharedPreferences} default yang
+bisa dibaca oleh komponen aplikasi Anda lainnya bila Anda perlu memeriksa pengaturan pengguna. Akan tetapi,
+banyak aplikasi, yang memerlukan kode lebih sedikit untuk mendengarkan perubahan yang terjadi pada preferensi.
+Untuk informasi tentang mendengarkan perubahan di file {@link android.content.SharedPreferences},
+lihat bagian tentang <a href="#ReadingPrefs">Preferensi Membaca</a>.</p>
+
+
+
+
+<h2 id="Fragment">Menggunakan Fragmen Preferensi</h2>
+
+<p>Jika Anda mengembangkan Android 3.0 (API level 11) dan yang lebih tinggi, Anda harus menggunakan {@link
+android.preference.PreferenceFragment} untuk menampilkan daftar objek {@link android.preference.Preference}
+Anda. Anda bisa menambahkan {@link android.preference.PreferenceFragment} ke aktivitas apa pun,&mdash;Anda tidak
+perlu menggunakan {@link android.preference.PreferenceActivity}.</p>
+
+<p><a href="{@docRoot}guide/components/fragments.html">Fragmen</a> menyediakan arsitektur yang lebih
+fleksibel untuk aplikasi Anda, dibandingkan hanya menggunakan aktivitas, apa pun jenis
+aktivitas yang Anda bangun. Dengan sendirinya, kami menyarankan Anda menggunakan {@link
+android.preference.PreferenceFragment} untuk mengontrol tampilan pengaturan Anda sebagai ganti {@link
+android.preference.PreferenceActivity} bila memungkinkan.</p>
+
+<p>Implementasi {@link android.preference.PreferenceFragment} Anda bisa semudah
+mendefinisikan metode {@link android.preference.PreferenceFragment#onCreate onCreate()} untuk memuat
+file preferensi dengan {@link android.preference.PreferenceFragment#addPreferencesFromResource
+addPreferencesFromResource()}. Misalnya:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Load the preferences from an XML resource
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+}
+</pre>
+
+<p>Anda nanti bisa menambahkan fragmen ini ke {@link android.app.Activity} seperti yang Anda lakukan untuk
+{@link android.app.Fragment} lainnya. Misalnya:</p>
+
+<pre>
+public class SettingsActivity extends Activity {
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Display the fragment as the main content.
+        getFragmentManager().beginTransaction()
+                .replace(android.R.id.content, new SettingsFragment())
+                .commit();
+    }
+}
+</pre>
+
+<p class="note"><strong>Catatan:</strong> {@link android.preference.PreferenceFragment} tidak memiliki
+objek {@link android.content.Context} sendiri. Jika memerlukan objek {@link android.content.Context}
+, Anda bisa memanggil {@link android.app.Fragment#getActivity()}. Akan tetapi, berhati-hatilah untuk memanggil
+{@link android.app.Fragment#getActivity()} hanya bila fragmen telah dikaitkan dengan aktivitas. Bila
+fragmen belum dikaitkan, atau terlepas saat akhir daur hidupnya, {@link
+android.app.Fragment#getActivity()} akan mengembalikan nol.</p>
+
+
+<h2 id="Defaults">Mengatur Nilai Default</h2>
+
+<p>Preferensi yang Anda buat mungkin mendefinisikan beberapa perilaku penting untuk aplikasi, jadi Anda
+perlu menginisialisasi file {@link android.content.SharedPreferences} yang terkait dengan
+nilai default untuk setiap {@link android.preference.Preference} bila pengguna menggunakan aplikasi
+Anda untuk pertama kali.</p>
+
+<p>Hal pertama yang harus Anda lakukan adalah menetapkan nilai default untuk setiap objek {@link
+android.preference.Preference}
+di file XML Anda menggunakan atribut {@code android:defaultValue}. Nilainya bisa berupa tipe data
+apa saja yang sesuai untuk objek {@link android.preference.Preference} bersangkutan. Misalnya:
+</p>
+
+<pre>
+&lt;!-- default value is a boolean -->
+&lt;CheckBoxPreference
+    android:defaultValue="true"
+    ... />
+
+&lt;!-- default value is a string -->
+&lt;ListPreference
+    android:defaultValue="@string/pref_syncConnectionTypes_default"
+    ... />
+</pre>
+
+<p>Kemudian, dari metode {@link android.app.Activity#onCreate onCreate()} dalam aktivitas utama aplikasi
+Anda&mdash;dan dalam aktivitas lainnya yang digunakan pengguna untuk masuk ke aplikasi Anda untuk pertama kali
+&mdash;panggil {@link android.preference.PreferenceManager#setDefaultValues
+setDefaultValues()}:</p>
+
+<pre>
+PreferenceManager.setDefaultValues(this, R.xml.advanced_preferences, false);
+</pre>
+
+<p>Memanggil ini selama {@link android.app.Activity#onCreate onCreate()} akan memastikan aplikasi
+Anda diinisialisasi dengan pengaturan default, yang mungkin perlu
+dibaca oleh aplikasi Anda untuk menentukan beberapa perilaku (seperti apakah akan mengunduh data pada
+jaringan seluler).</p>
+
+<p>Metode ini membutuhkan tiga argumen:</p>
+<ul>
+  <li>{@link android.content.Context} aplikasi Anda.</li>
+  <li>ID sumber daya untuk file XML preferensi yang ingin Anda atur nilai defaultnya.</li>
+  <li>Boolean menunjukkan apakah nilai default harus diatur lebih dari satu kali.
+<p>Bila <code>false</code>, sistem akan mengatur nilai default hanya jika metode ini belum pernah
+dipanggil sebelumnya (atau {@link android.preference.PreferenceManager#KEY_HAS_SET_DEFAULT_VALUES}
+dalam file preferensi berbagi nilai default salah).</p></li>
+</ul>
+
+<p>Selama Anda mengatur argumen ketiga ke <code>false</code>, Anda bisa dengan aman memanggil metode ini
+setiap kali aktivitas Anda memulai tanpa mengesampingkan preferensi tersimpan pengguna dengan mengatur ulang preferensi tersebut ke
+default. Akan tetapi, jika mengatur ke <code>true</code>, Anda akan mengesampingkan nilai
+sebelumnya dengan default.</p>
+
+
+
+<h2 id="PreferenceHeaders">Menggunakan Header Preferensi</h2>
+
+<p>Dalam kasus yang jarang terjadi, Anda mungkin perlu mendesain pengaturan agar layar pertama
+hanya menampilkan daftar <a href="#Subscreens">sublayar</a> (seperti dalam aplikasi Setting pada sistem,
+seperti yang ditampilkan dalam gambar 4 dan 5). Bila mengembangkan desain seperti itu untuk Android 3.0 dan yang lebih tinggi, Anda
+harus menggunakan fitur "header" yang baru di Android 3.0, sebagai ganti membangun sublayar dengan elemen
+{@link android.preference.PreferenceScreen} tersarang.</p>
+
+<p>Untuk membangun pengaturan dengan header, Anda perlu:</p>
+<ol>
+  <li>Memisahkan setiap grup pengaturan ke dalam instance {@link
+android.preference.PreferenceFragment} terpisah. Ini berarti, setiap grup pengaturan memerlukan file XML
+terpisah.</li>
+  <li>Membuat file header XML yang mencantumkan daftar setiap grup pengaturan dan mendeklarasikan fragmen mana
+yang berisi daftar pengaturan yang sesuai.</li>
+  <li>Memperluas kelas {@link android.preference.PreferenceActivity} untuk menjadi host pengaturan Anda.</li>
+  <li>Mengimplementasikan callback {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} untuk menetapkan file
+header.</li>
+</ol>
+
+<p>Manfaat besar dalam menggunakan desain ini adalah karena {@link android.preference.PreferenceActivity}
+secara otomatis akan menampilkan layout dua panel yang ditampilkan dalam gambar 4 bila dijalankan pada layar besar.</p>
+
+<p>Bahkan jika aplikasi Anda mendukung versi Android yang lebih lama dari 3.0, Anda bisa membangun
+aplikasi untuk menggunakan {@link android.preference.PreferenceFragment} bagi presentasi dua panel pada perangkat
+yang lebih baru sementara tetap mendukung hierarki multilayar biasa pada perangkat
+yang lebih lama (lihat bagian tentang <a href="#BackCompatHeaders">Mendukung versi yang lebih lama dengan
+header preferensi</a>).</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-tablet.png" alt="" />
+<p class="img-caption"><strong>Gambar 4.</strong> Layout dua panel dengan header. <br/><b>1.</b> Header
+didefinisikan dengan file header XML. <br/><b>2.</b> Setiap grup pengaturan didefinisikan dengan
+{@link android.preference.PreferenceFragment} yang ditetapkan oleh elemen {@code &lt;header&gt;} dalam
+file header.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-handset.png" alt="" />
+<p class="img-caption"><strong>Gambar 5.</strong> Perangkat handset dengan header pengaturan. Bila sebuah
+item dipilih, {@link android.preference.PreferenceFragment} terkait akan menggantikan
+header.</p>
+
+
+<h3 id="CreateHeaders" style="clear:left">Membuat file header</h3>
+
+<p>Setiap grup pengaturan dalam daftar header Anda akan ditetapkan oleh elemen {@code &lt;header&gt;}
+tunggal dalam elemen {@code &lt;preference-headers&gt;} akar. Misalnya:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;!-- key/value pairs can be included as arguments for the fragment. -->
+        &lt;extra android:name="someKey" android:value="someHeaderValue" />
+    &lt;/header>
+&lt;/preference-headers>
+</pre>
+
+<p>Dengan atribut {@code android:fragment}, setiap header mendeklarasikan instance {@link
+android.preference.PreferenceFragment} yang harus terbuka saat pengguna memilih header.</p>
+
+<p>Elemen {@code &lt;extras&gt;} memungkinkan Anda meneruskan pasangan nilai-kunci ke fragmen di {@link
+android.os.Bundle}. Fragmen bisa mengambil argumen dengan memanggil {@link
+android.app.Fragment#getArguments()}. Anda bisa meneruskan argumen ke fragmen dengan berbagai
+alasan, namun satu alasan yang baik adalah untuk menggunakan kembali subkelas yang sama dari {@link
+android.preference.PreferenceFragment} untuk setiap grup dan menggunakan argumen untuk menetapkan file
+XML preferensi mana yang harus dimuat fragmen.</p>
+
+<p>Misalnya, ada fragmen yang bisa digunakan ulang untuk berbagai grup pengaturan, bila setiap
+header mendefinisikan argumen {@code &lt;extra&gt;} dengan kunci {@code "settings"}:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        String settings = getArguments().getString("settings");
+        if ("notifications".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_wifi);
+        } else if ("sync".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_sync);
+        }
+    }
+}
+</pre>
+
+
+
+<h3 id="DisplayHeaders">Menampilkan header</h3>
+
+<p>Untuk menampilkan header preferensi, Anda harus mengimplementasikan metode callback {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} dan memanggil
+{@link android.preference.PreferenceActivity#loadHeadersFromResource
+loadHeadersFromResource()}. Misalnya:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onBuildHeaders(List&lt;Header> target) {
+        loadHeadersFromResource(R.xml.preference_headers, target);
+    }
+}
+</pre>
+
+<p>Bila pengguna memilih item dari daftar header, sistem akan membuka {@link
+android.preference.PreferenceFragment} terkait.</p>
+
+<p class="note"><strong>Catatan:</strong> Saat menggunakan header preferensi, subkelas {@link
+android.preference.PreferenceActivity} Anda tidak perlu mengimplementasikan metode {@link
+android.preference.PreferenceActivity#onCreate onCreate()}, karena tugas
+yang diperlukan untuk aktivitas hanyalah memuat header.</p>
+
+
+<h3 id="BackCompatHeaders">Mendukung versi yang lebih lama dengan header preferensi</h3>
+
+<p>Jika aplikasi Anda mendukung versi Android yang lebih lama dari 3.0, Anda tetap bisa menggunakan header untuk
+menyediakan layout dua panel saat berjalan pada Android 3.0 dan yang lebih tinggi. Anda hanya perlu membuat
+file XML preferensi tambahan yang menggunakan elemen {@link android.preference.Preference
+&lt;Preference&gt;} dasar yang berperilaku seperti item header (untuk digunakan oleh Android
+versi yang lebih lama).</p>
+
+<p>Akan tetapi, sebagai ganti membuka {@link android.preference.PreferenceScreen} baru, setiap elemen {@link
+android.preference.Preference &lt;Preference&gt;} mengirimkan {@link android.content.Intent} ke
+{@link android.preference.PreferenceActivity} yang menetapkan file XML preferensi mana yang
+akan dimuat.</p>
+
+<p>Misalnya, ini adalah file XML untuk header preferensi yang menggunakan Android 3.0
+dan yang lebih tinggi ({@code res/xml/preference_headers.xml}):</p> 
+
+<pre>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" />
+&lt;/preference-headers>
+</pre>
+
+<p>Dan ini adalah file preferensi yang menyediakan header yang sama untuk versi yang lebih lama dari
+Android 3.0 ({@code res/xml/preference_headers_legacy.xml}):</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;Preference 
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one"  >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_ONE" />
+    &lt;/Preference>
+    &lt;Preference 
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_TWO" />
+    &lt;/Preference>
+&lt;/PreferenceScreen>
+</pre>
+
+<p>Karena dukungan untuk {@code &lt;preference-headers&gt;} telah ditambahkan di Android 3.0, sistem akan memanggil
+{@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} di {@link
+android.preference.PreferenceActivity} hanya saat berjalan pada Android 3.0 atau yang lebih tinggi. Untuk memuat
+file header "lama" ({@code preference_headers_legacy.xml}), Anda harus memeriksa versi Android
+dan, jika versi tersebut lebih lama dari Android 3.0 ({@link
+android.os.Build.VERSION_CODES#HONEYCOMB}), panggil {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} untuk
+memuat file header lama. Misalnya:</p>
+
+<pre>
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    ...
+
+    if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+
+// Called only on Honeycomb and later
+&#64;Override
+public void onBuildHeaders(List&lt;Header> target) {
+   loadHeadersFromResource(R.xml.preference_headers, target);
+}
+</pre>
+
+<p>Satu-satunya hal yang perlu dilakukan adalah menangani {@link android.content.Intent} yang diteruskan ke
+aktivitas untuk mengidentifikasi file preferensi yang akan dimuat. Jadi ambillah tindakan intent dan bandingkan dengan
+string tindakan yang diketahui yang telah Anda gunakan dalam tag {@code &lt;intent&gt;} XML preferensi:</p>
+
+<pre>
+final static String ACTION_PREFS_ONE = "com.example.prefs.PREFS_ONE";
+...
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+
+    String action = getIntent().getAction();
+    if (action != null &amp;&amp; action.equals(ACTION_PREFS_ONE)) {
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+
+    else if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+</pre>
+
+<p>Ketahuilah bahwa panggilan berturut-turut ke {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} akan
+menumpuk semua preferensi ke dalam satu daftar, jadi pastikan bahwa ini hanya dipanggil sekali dengan mengikatkan syarat
+ke pernyataan else-if.</p>
+
+
+
+
+
+<h2 id="ReadingPrefs">Preferensi Membaca</h2>
+
+<p>Secara default, semua preferensi aplikasi Anda disimpan ke file yang bisa diakses dari mana saja
+di dalam aplikasi dengan memanggil metode statis {@link
+android.preference.PreferenceManager#getDefaultSharedPreferences
+PreferenceManager.getDefaultSharedPreferences()}. Ini akan mengembalikan objek {@link
+android.content.SharedPreferences} berisi semua pasangan nilai-kunci yang terkait
+dengan objek {@link android.preference.Preference} yang digunakan di {@link
+android.preference.PreferenceActivity} Anda.</p>
+
+<p>Misalnya, inilah cara membaca salah satu nilai preferensi dari aktivitas lain dalam aplikasi
+Anda:</p>
+
+<pre>
+SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
+String syncConnPref = sharedPref.getString(SettingsActivity.KEY_PREF_SYNC_CONN, "");
+</pre>
+
+
+
+<h3 id="Listening">Mendengarkan perubahan preferensi</h3>
+
+<p>Ada beberapa alasan yang membuat Anda perlu mendapatkan pemberitahuan segera setelah pengguna mengubah salah satu
+preferensi. Untuk menerima callback saat perubahan terjadi pada salah satu preferensi,
+implementasikan antarmuka {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener
+SharedPreference.OnSharedPreferenceChangeListener} dan daftarkan listener untuk objek
+{@link android.content.SharedPreferences} dengan memanggil {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}.</p>
+
+<p>Antarmuka hanya memiliki satu metode callback, {@link
+android.content.SharedPreferences.OnSharedPreferenceChangeListener#onSharedPreferenceChanged
+onSharedPreferenceChanged()}, dan mungkin lebih mudah mengimplementasikan antarmuka sebagai bagian dari
+aktivitas Anda. Misalnya:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity
+                              implements OnSharedPreferenceChangeListener {
+    public static final String KEY_PREF_SYNC_CONN = "pref_syncConnectionType";
+    ...
+
+    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
+        String key) {
+        if (key.equals(KEY_PREF_SYNC_CONN)) {
+            Preference connectionPref = findPreference(key);
+            // Set summary to be the user-description for the selected value
+            connectionPref.setSummary(sharedPreferences.getString(key, ""));
+        }
+    }
+}
+</pre>
+
+<p>Dalam contoh ini, metode akan memeriksa apakah pengaturan yang diubah adalah untuk kunci preferensi yang diketahui. Ini akan
+memanggil {@link android.preference.PreferenceActivity#findPreference findPreference()} untuk mendapatkan objek
+{@link android.preference.Preference} yang diubah agar bisa memodifikasi rangkuman item
+menjadi keterangan pada pilihan pengguna. Ini berarti, bila pengaturan adalah {@link
+android.preference.ListPreference} atau pengaturan multipilihan, Anda harus memanggil {@link
+android.preference.Preference#setSummary setSummary()} bila pengaturan berubah ke tampilkan
+status saat ini (seperti pengaturan Sleep yang ditampilkan dalam gambar 5).</p>
+
+<p class="note"><strong>Catatan:</strong> Seperti dijelaskan dalam dokumen Desain Android tentang <a href="{@docRoot}design/patterns/settings.html">Pengaturan</a>, kami merekomendasikan Anda untuk memperbarui
+rangkuman {@link android.preference.ListPreference} setiap kali pengguna mengubah preferensi untuk
+menjelaskan pengaturan saat ini.</p>
+
+<p>Untuk manajemen daur hidup yang baik di aktivitas, kami merekomendasikan Anda untuk mendaftarkan dan mencabut pendaftaran
+{@link android.content.SharedPreferences.OnSharedPreferenceChangeListener} selama callback {@link
+android.app.Activity#onResume} dan {@link android.app.Activity#onPause}:</p>
+
+<pre>
+&#64;Override
+protected void onResume() {
+    super.onResume();
+    getPreferenceScreen().getSharedPreferences()
+            .registerOnSharedPreferenceChangeListener(this);
+}
+
+&#64;Override
+protected void onPause() {
+    super.onPause();
+    getPreferenceScreen().getSharedPreferences()
+            .unregisterOnSharedPreferenceChangeListener(this);
+}
+</pre>
+
+<p class="caution"><strong>Perhatian:</strong> Bila Anda memanggil {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}, pengelola preferensi saat ini tidak akan
+menyimpan referensi kuat ke listener. Anda harus menyimpan referensi
+kuat bagi listener, atau referensi akan rentan terhadap pengumpulan sampah. Kami
+merekomendasikan Anda untuk mempertahankan referensi bagi listener dalam data instance objek
+yang akan ada selama Anda memerlukan listener tersebut.</p>
+
+<p>Misalnya, dalam kode berikut, caller tidak menyimpan referensi ke
+listener. Akibatnya, listener akan dikenakan pengumpulan sampah,
+dan suatu saat nanti akan gagal:</p>
+
+<pre>
+prefs.registerOnSharedPreferenceChangeListener(
+  // Bad! The listener is subject to garbage collection!
+  new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+});
+</pre>
+
+<p>Sebagai gantinya, simpan referensi ke listener dalam bidang data instance 
+objek yang akan ada selama listener dibutuhkan:</p>
+
+<pre>
+SharedPreferences.OnSharedPreferenceChangeListener listener =
+    new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+};
+prefs.registerOnSharedPreferenceChangeListener(listener);
+</pre>
+
+<h2 id="NetworkUsage">Mengelola Penggunaan Jaringan</h2>
+
+
+<p>Mulai Android 4.0, aplikasi Settings untuk sistem memungkinkan pengguna melihat seberapa besar
+data jaringan yang digunakan aplikasi mereka saat berada di latar depan dan latar belakang. Kemudian pengguna bisa
+menonaktifkan penggunaan data latar belakang untuk aplikasi individual. Agar pengguna tidak menonaktifkan akses
+aplikasi ke data dari latar belakang, Anda harus menggunakan koneksi data secara efisien dan mengizinkan
+pengguna untuk menyaring penggunaan data aplikasi melalui pengaturan aplikasi Anda.<p>
+
+<p>Misalnya, Anda bisa mengizinkan pengguna untuk mengontrol seberapa sering aplikasi menyinkronkan data, apakah aplikasi
+hanya melakukan pengunggahan/pengunduhan bila ada Wi-Fi, apakah aplikasi menggunakan data saat roaming, dll. Dengan
+tersedianya kontrol ini bagi pengguna, mereka kemungkinan besar tidak akan menonaktifkan akses aplikasi ke data
+saat mendekati batas yang mereka tetapkan dalam Settings pada sistem, karena mereka bisa mengontrol secara tepat
+seberapa besar data yang digunakan aplikasi Anda.</p>
+
+<p>Setelah menambahkan preferensi yang diperlukan dalam {@link android.preference.PreferenceActivity} Anda
+untuk mengontrol kebiasaan data aplikasi, Anda harus menambahkan filter intent untuk {@link
+android.content.Intent#ACTION_MANAGE_NETWORK_USAGE} dalam file manifes Anda. Misalnya:</p>
+
+<pre>
+&lt;activity android:name="SettingsActivity" ... >
+    &lt;intent-filter>
+       &lt;action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
+       &lt;category android:name="android.intent.category.DEFAULT" />
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>Filter intent ini menunjukkan pada sistem bahwa ini adalah aktivitas yang mengontrol penggunaan
+data aplikasi Anda. Jadi, saat pengguna memeriksa seberapa banyak data yang digunakan oleh aplikasi dari
+aplikasi Settings pada sistem, tombol <em>View application settings</em> akan tersedia dan menjalankan
+{@link android.preference.PreferenceActivity} sehingga pengguna bisa menyaring seberapa besar data yang digunakan
+aplikasi Anda.</p>
+
+
+
+
+
+
+
+<h2 id="Custom">Membangun Preferensi Custom</h2>
+
+<p>Kerangka kerja Android menyertakan berbagai subkelas {@link android.preference.Preference} yang
+memungkinkan Anda membangun UI untuk beberapa macam tipe pengaturan.
+Akan tetapi, Anda mungkin menemukan pengaturan yang diperlukan bila tidak ada solusi bawaan, seperti
+picker nomor atau picker tanggal. Dalam hal demikian, Anda akan perlu membuat preferensi custom dengan memperluas
+kelas {@link android.preference.Preference} atau salah satu subkelas lainnya.</p>
+
+<p>Bila memperluas kelas {@link android.preference.Preference}, ada beberapa hal
+penting yang perlu Anda lakukan:</p>
+
+<ul>
+  <li>Menetapkan antarmuka pengguna yang akan muncul saat pengguna memilih pengaturan.</li>
+  <li>Menyimpan nilai pengaturan bila perlu.</li>
+  <li>Menginisialisasi {@link android.preference.Preference} dengan nilai saat ini (atau default)
+bila muncul di tampilan.</li>
+  <li>Menyediakan nilai default bila diminta oleh sistem.</li>
+  <li>Jika {@link android.preference.Preference} menyediakan UI sendiri (seperti dialog), simpan
+dan pulihkan status untuk menangani perubahan daur hidup (seperti saat pengguna memutar layar).</li>
+</ul>
+
+<p>Bagian berikut menjelaskan cara melakukan setiap tugas ini.</p>
+
+
+
+<h3 id="CustomSelected">Menetapkan antarmuka pengguna</h3>
+
+  <p>Jika secara langsung memperluas kelas {@link android.preference.Preference}, Anda perlu mengimplementasikan
+{@link android.preference.Preference#onClick()} untuk mendefinisikan tindakan yang terjadi bila pengguna
+memilih item tersebut. Akan tetapi, sebagian besar pengaturan custom memperluas {@link android.preference.DialogPreference} untuk
+menampilkan dialog, sehingga menyederhanakan prosedur. Bila memperluas {@link
+android.preference.DialogPreference}, Anda harus memanggil {@link
+android.preference.DialogPreference#setDialogLayoutResource setDialogLayoutResourcs()} selama di
+konstruktor kelas untuk menetapkan layout dialog.</p>
+
+  <p>Misalnya, beri ini konstruktor untuk {@link
+android.preference.DialogPreference} custom yang mendeklarasikan layout dan menetapkan teks untuk tombol dialog
+negatif dan positif default:</p>
+
+<pre>
+public class NumberPickerPreference extends DialogPreference {
+    public NumberPickerPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        
+        setDialogLayoutResource(R.layout.numberpicker_dialog);
+        setPositiveButtonText(android.R.string.ok);
+        setNegativeButtonText(android.R.string.cancel);
+        
+        setDialogIcon(null);
+    }
+    ...
+}
+</pre>
+
+
+
+<h3 id="CustomSave">Menyimpan nilai pengaturan</h3>
+
+<p>Anda bisa menyimpan nilai pengaturan kapan saja dengan memanggil salah satu metode {@code persist*()} kelas {@link
+android.preference.Preference}, seperti {@link
+android.preference.Preference#persistInt persistInt()} jika nilai pengaturan adalah integer atau
+{@link android.preference.Preference#persistBoolean persistBoolean()} untuk menyimpan boolean.</p>
+
+<p class="note"><strong>Catatan:</strong> Setiap {@link android.preference.Preference} hanya bisa menyimpan satu
+tipe data, jadi Anda harus menggunakan metode {@code persist*()} yang tepat untuk tipe data yang digunakan
+oleh {@link android.preference.Preference} custom Anda.</p>
+
+<p>Bila Anda memilih untuk mempertahankannya, pengaturan bisa bergantung pada kelas {@link
+android.preference.Preference} yang Anda perluas. Jika Anda memperluas {@link
+android.preference.DialogPreference}, maka Anda harus mempertahankan nilai hanya jika dialog
+tertutup karena hasil positif (pengguna memilih tombol "OK").</p>
+
+<p>Bila {@link android.preference.DialogPreference} tertutup, sistem akan memanggil metode {@link
+android.preference.DialogPreference#onDialogClosed onDialogClosed()}. Metode mencakup argumen
+boolean yang menetapkan apakah hasil pengguna "positif"&mdash;jika nilainya
+<code>true</code>, maka pengguna memilih tombol positif dan Anda harus menyimpan nilai baru. Misalnya:
+</p>
+
+<pre>
+&#64;Override
+protected void onDialogClosed(boolean positiveResult) {
+    // When the user selects "OK", persist the new value
+    if (positiveResult) {
+        persistInt(mNewValue);
+    }
+}
+</pre>
+
+<p>Dalam contoh ini, <code>mNewValue</code> adalah anggota kelas yang menampung nilai
+pengaturan saat ini. Memanggil {@link android.preference.Preference#persistInt persistInt()} akan menyimpan nilai
+ke file {@link android.content.SharedPreferences} (secara otomatis menggunakan kunci yang
+ditetapkan dalam file XML untuk {@link android.preference.Preference} ini).</p>
+
+
+<h3 id="CustomInitialize">Menginisialisasi nilai saat ini</h3>
+
+<p>Bila sistem menambahkan {@link android.preference.Preference} Anda ke layar, ia
+akan memanggil {@link android.preference.Preference#onSetInitialValue onSetInitialValue()} untuk memberi tahu
+Anda apakah pengaturan memiliki nilai yang dipertahankan. Jika tidak ada nilai yang dipertahankan, panggilan ini
+akan menyediakan nilai default bagi Anda.</p>
+
+<p>Metode {@link android.preference.Preference#onSetInitialValue onSetInitialValue()} akan meneruskan
+boolean, <code>restorePersistedValue</code>, untuk menunjukkan apakah nilai dipertahankan
+untuk pengaturan. Jika <code>true</code>, maka Anda harus mengambil nilai yang dipertahankan dengan memanggil
+salah satu metode {@code getPersisted*()} kelas {@link
+android.preference.Preference}, seperti {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} untuk nilai integer. Anda biasanya
+perlu mengambil nilai yang dipertahankan agar bisa memperbarui UI dengan benar untuk merefleksikan
+nilai yang tersimpan sebelumnya.</p>
+
+<p>Jika <code>restorePersistedValue</code> adalah <code>false</code>, maka Anda
+harus menggunakan nilai default yang diteruskan dalam argumen kedua.</p>
+
+<pre>
+&#64;Override
+protected void onSetInitialValue(boolean restorePersistedValue, Object defaultValue) {
+    if (restorePersistedValue) {
+        // Restore existing state
+        mCurrentValue = this.getPersistedInt(DEFAULT_VALUE);
+    } else {
+        // Set default state from the XML attribute
+        mCurrentValue = (Integer) defaultValue;
+        persistInt(mCurrentValue);
+    }
+}
+</pre>
+
+<p>Setiap metode {@code getPersisted*()} memerlukan argumen yang menetapkan
+nilai default untuk digunakan jika tidak ada nilai yang dipertahankan atau kunci tidak ada. Dalam contoh
+di atas, konstanta lokal yang digunakan untuk menetapkan nilai default dalam kasus {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} tidak bisa mengembalikan nilai yang dipertahankan.</p>
+
+<p class="caution"><strong>Perhatian:</strong> Anda <strong>tidak bisa</strong> menggunakan
+<code>defaultValue</code> sebagai nilai default dalam metode {@code getPersisted*()}, karena
+nilainya selalu nol bila <code>restorePersistedValue</code> adalah <code>true</code>.</p>
+
+
+<h3 id="CustomDefault">Menyediakan nilai default</h3>
+
+<p>Jika instance kelas {@link android.preference.Preference} Anda menetapkan nilai default
+(dengan atribut {@code android:defaultValue}), maka
+sistem akan memanggil {@link android.preference.Preference#onGetDefaultValue
+onGetDefaultValue()} bila membuat instance objek untuk mengambil nilai. Anda harus mengimplementasikan
+metode ini agar sistem bisa menyimpan nilai default dalam {@link
+android.content.SharedPreferences}. Misalnya:</p>
+
+<pre>
+&#64;Override
+protected Object onGetDefaultValue(TypedArray a, int index) {
+    return a.getInteger(index, DEFAULT_VALUE);
+}
+</pre>
+
+<p>Argumen metode menyediakan semua hal yang Anda perlukan: larik atribut dan posisi
+indeks dari {@code android:defaultValue}, yang harus Anda ambil. Alasan Anda harus
+mengimplementasikan metode ini untuk mengekstrak nilai default dari atribut adalah karena Anda harus menetapkan
+nilai default lokal untuk atribut jika nilai tidak didefinisikan.</p>
+
+
+
+<h3 id="CustomSaveState">Menyimpan dan memulihkan status Preferensi</h3>
+
+<p>Seperti halnya {@link android.view.View} di layout, subkelas {@link android.preference.Preference}
+Anda bertanggung jawab menyimpan dan memulihkan statusnya jika aktivitas atau fragmen
+di-restart (seperti saat pengguna memutar layar). Untuk menyimpan
+dan memulihkan status kelas {@link android.preference.Preference} dengan benar, Anda harus mengimplementasikan
+metode callback daur hidup {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} dan {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()}.</p>
+
+<p>Status {@link android.preference.Preference} Anda didefinisikan oleh objek yang mengimplementasikan
+antarmuka {@link android.os.Parcelable}. Kerangka kerja Android menyediakan objek seperti itu untuk Anda gunakan
+sebagai titik mulai untuk mendefinisikan objek status Anda: kelas {@link
+android.preference.Preference.BaseSavedState}.</p>
+
+<p>Untuk mendefinisikan cara kelas {@link android.preference.Preference} menyimpan statusnya, Anda harus
+memperluas kelas {@link android.preference.Preference.BaseSavedState}. Anda hanya perlu mengesampingkan
+ beberapa metode dan mendefinisikan objek {@link android.preference.Preference.BaseSavedState#CREATOR}
+.</p>
+
+<p>Untuk sebagian besar aplikasi, Anda bisa menyalin implementasi berikut dan cukup mengubah baris yang
+menangani {@code value} jika subkelas {@link android.preference.Preference} Anda menyimpan tipe
+data selain integer.</p>
+
+<pre>
+private static class SavedState extends BaseSavedState {
+    // Member that holds the setting's value
+    // Change this data type to match the type saved by your Preference
+    int value;
+
+    public SavedState(Parcelable superState) {
+        super(superState);
+    }
+
+    public SavedState(Parcel source) {
+        super(source);
+        // Get the current preference's value
+        value = source.readInt();  // Change this to read the appropriate data type
+    }
+
+    &#64;Override
+    public void writeToParcel(Parcel dest, int flags) {
+        super.writeToParcel(dest, flags);
+        // Write the preference's value
+        dest.writeInt(value);  // Change this to write the appropriate data type
+    }
+
+    // Standard creator object using an instance of this class
+    public static final Parcelable.Creator&lt;SavedState> CREATOR =
+            new Parcelable.Creator&lt;SavedState>() {
+
+        public SavedState createFromParcel(Parcel in) {
+            return new SavedState(in);
+        }
+
+        public SavedState[] newArray(int size) {
+            return new SavedState[size];
+        }
+    };
+}
+</pre>
+
+<p>Dengan implementasi {@link android.preference.Preference.BaseSavedState} di atas yang ditambahkan
+ke aplikasi Anda (biasanya sebagai subkelas dari subkelas {@link android.preference.Preference}), Anda
+nanti perlu mengimplementasikan metode {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} dan {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()} untuk subkelas
+{@link android.preference.Preference} Anda.</p>
+
+<p>Misalnya:</p>
+
+<pre>
+&#64;Override
+protected Parcelable onSaveInstanceState() {
+    final Parcelable superState = super.onSaveInstanceState();
+    // Check whether this Preference is persistent (continually saved)
+    if (isPersistent()) {
+        // No need to save instance state since it's persistent,
+        // use superclass state
+        return superState;
+    }
+
+    // Create instance of custom BaseSavedState
+    final SavedState myState = new SavedState(superState);
+    // Set the state's value with the class member that holds current
+    // setting value
+    myState.value = mNewValue;
+    return myState;
+}
+
+&#64;Override
+protected void onRestoreInstanceState(Parcelable state) {
+    // Check whether we saved the state in onSaveInstanceState
+    if (state == null || !state.getClass().equals(SavedState.class)) {
+        // Didn't save the state, so call superclass
+        super.onRestoreInstanceState(state);
+        return;
+    }
+
+    // Cast state to custom BaseSavedState and pass to superclass
+    SavedState myState = (SavedState) state;
+    super.onRestoreInstanceState(myState.getSuperState());
+    
+    // Set this Preference's widget to reflect the restored state
+    mNumberPicker.setValue(myState.value);
+}
+</pre>
+
diff --git a/docs/html-intl/intl/in/guide/topics/ui/ui-events.jd b/docs/html-intl/intl/in/guide/topics/ui/ui-events.jd
new file mode 100644
index 0000000..5068176
--- /dev/null
+++ b/docs/html-intl/intl/in/guide/topics/ui/ui-events.jd
@@ -0,0 +1,291 @@
+page.title=Kejadian Input
+parent.title=Antarmuka Pengguna
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Dalam dokumen ini</h2>
+  <ol>
+    <li><a href="#EventListeners">Event Listener</a></li>
+    <li><a href="#EventHandlers">Event Handler</a></li>
+    <li><a href="#TouchMode">Mode Sentuh</a></li>
+    <li><a href="#HandlingFocus">Menangani Fokus</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>Di Android, ada lebih dari satu cara untuk mencegat kejadian dari interaksi pengguna dengan aplikasi Anda.
+Saat mempertimbangkan kejadian dalam antarmuka pengguna Anda, pendekatannya adalah menangkap kejadian
+dari objek View tertentu yang digunakan pengguna untuk berinteraksi. Kelas View menyediakan sarana untuk melakukannya.</p>
+
+<p>Dalam berbagai kelas View yang akan digunakan untuk menyusun layout, Anda mungkin melihat beberapa metode callback
+publik yang tampak berguna untuk kejadian UI. Metode ini dipanggil oleh kerangka kerja Android ketika masing-masing
+tindakan terjadi pada objek itu. Misalnya, bila View (seperti Button/Tombol) disentuh,
+metode <code>onTouchEvent()</code> akan dipanggil pada objek itu. Akan tetapi, untuk mencegatnya, Anda harus memperluas
+kelas dan mengesampingkan metode itu. Akan tetapi, memperluas setiap objek View
+untuk menangani kejadian seperti itu tidaklah praktis. Karena itulah kelas View juga berisi
+sekumpulan antarmuka tersarang dengan callback yang jauh lebih mudah didefinisikan. Antarmuka ini, 
+yang disebut <a href="#EventListeners">event listener</a>, merupakan tiket Anda untuk menangkap interaksi pengguna dengan UI.</p>
+
+<p>Walaupun Anda akan lebih sering menggunakan event listener ini untuk interaksi pengguna,
+mungkin ada saatnya Anda ingin memperluas kelas View, untuk membuat komponen custom. 
+Mungkin Anda ingin memperluas kelas {@link android.widget.Button}
+untuk membuat sesuatu yang lebih menarik. Dalam hal ini, Anda akan dapat mendefinisikan perilaku kejadian default untuk kelas Anda dengan menggunakan
+kelas <a href="#EventHandlers">event handler</a>.</p>
+
+
+<h2 id="EventListeners">Event Listener</h2>
+
+<p>Event listener merupakan antarmuka di kelas {@link android.view.View} yang berisi metode
+callback tunggal. Metode ini akan dipanggil oleh kerangka kerja Android bila View yang
+telah didaftarkan dengan listener dipicu oleh interaksi pengguna dengan item dalam UI.</p>
+
+<p>Yang juga disertakan dalam antarmuka event listener adalah metode callback berikut ini:</p>
+
+<dl>
+  <dt><code>onClick()</code></dt>
+    <dd>Dari {@link android.view.View.OnClickListener}. 
+    Ini dipanggil baik saat pengguna menyentuh item
+ (bila dalam mode sentuh), maupun memfokuskan pada item dengan tombol navigasi atau trackball dan
+menekan tombol "enter" yang sesuai atau menekan trackball.</dd>
+  <dt><code>onLongClick()</code></dt>
+    <dd>Dari {@link android.view.View.OnLongClickListener}. 
+    Ini dipanggil baik saat pengguna menyentuh dan menahan item (bila dalam mode sentuh), 
+maupun memfokuskan pada item dengan tombol navigasi atau trackball dan
+menekan serta menahan tombol "enter" yang sesuai atau menekan dan menahan trackball (selama satu detik).</dd>
+  <dt><code>onFocusChange()</code></dt>
+    <dd>Dari {@link android.view.View.OnFocusChangeListener}. 
+    Ini dipanggil saat pengguna menyusuri ke atau dari item, dengan menggunakan tombol navigasi atau trackball.</dd>
+  <dt><code>onKey()</code></dt>
+    <dd>Dari {@link android.view.View.OnKeyListener}. 
+    Ini dipanggil saat pengguna memfokuskan pada item dan menekan atau melepas tombol fisik pada perangkat.</dd>
+  <dt><code>onTouch()</code></dt>
+    <dd>Dari {@link android.view.View.OnTouchListener}. 
+    Ini dipanggil saat pengguna melakukan tindakan yang digolongkan sebagai kejadian sentuh, termasuk penekanan, pelepasan,
+atau gerak perpindahan pada layar (dalam batasan item itu).</dd>
+  <dt><code>onCreateContextMenu()</code></dt>
+    <dd>Dari {@link android.view.View.OnCreateContextMenuListener}. 
+    Ini dipanggil saat Menu Konteks sedang dibuat (akibat "klik lama" terus-menerus). Lihat diskusi 
+tentang menu konteks di panduan pengembang <a href="{@docRoot}guide/topics/ui/menus.html#context-menu">Menu</a>.
+</dd>
+</dl>
+
+<p>Metode ini satu-satunya yang menempati antarmukanya masing-masing. Untuk mendefinisikan salah satu metode ini
+dan menangani kejadian Anda, implementasikan antarmuka tersarang dalam Aktivitas Anda atau definisikan sebagai kelas anonim.
+Kemudian, teruskan satu
+instance implementasi Anda pada masing-masing metode <code>View.set...Listener()</code>. (Misalnya, panggil 
+<code>{@link android.view.View#setOnClickListener(View.OnClickListener) setOnClickListener()}</code> 
+dan teruskan implementasi {@link android.view.View.OnClickListener OnClickListener} Anda.)</p>
+
+<p>Contoh di bawah menunjukkan cara mendaftarkan on-click listener untuk Button. </p>
+
+<pre>
+// Create an anonymous implementation of OnClickListener
+private OnClickListener mCorkyListener = new OnClickListener() {
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+};
+
+protected void onCreate(Bundle savedValues) {
+    ...
+    // Capture our button from layout
+    Button button = (Button)findViewById(R.id.corky);
+    // Register the onClick listener with the implementation above
+    button.setOnClickListener(mCorkyListener);
+    ...
+}
+</pre>
+
+<p>Anda juga akan merasa lebih praktis mengimplementasikan OnClickListener sebagai bagian dari Aktivitas.
+Ini akan menghindari beban kelas ekstra dan alokasi objek. Misalnya:</p>
+<pre>
+public class ExampleActivity extends Activity implements OnClickListener {
+    protected void onCreate(Bundle savedValues) {
+        ...
+        Button button = (Button)findViewById(R.id.corky);
+        button.setOnClickListener(this);
+    }
+
+    // Implement the OnClickListener callback
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+    ...
+}
+</pre>
+
+<p>Perhatikan bahwa callback <code>onClick()</code> dalam contoh di atas tidak memiliki
+nilai hasil, namun beberapa metode event listener lainnya harus mengembalikan boolean. Sebabnya
+bergantung pada kejadian. Untuk sebagian yang mengembalikan boolean, ini sebabnya:</p>
+<ul>
+  <li><code>{@link android.view.View.OnLongClickListener#onLongClick(View) onLongClick()}</code> - 
+    Ini mengembalikan boolean untuk menunjukkan apakah Anda telah menggunakan kejadian dan tidak boleh dibawa lebih jauh. 
+    Yaitu, mengembalikan <em>benar</em> untuk menunjukkan apakah Anda telah menangani kejadian dan semestinya berhenti di sini; 
+    mengembalikan <em>salah</em> jika Anda tidak menanganinya dan/atau kejadian semestinya berlanjut ke
+    on-click listener lainnya.</li>
+  <li><code>{@link android.view.View.OnKeyListener#onKey(View,int,KeyEvent) onKey()}</code> - 
+    Ini mengembalikan boolean untuk menunjukkan apakah Anda telah menggunakan kejadian dan tidak boleh dibawa lebih jauh.
+    Yaitu, mengembalikan <em>benar</em> untuk menunjukkan apakah Anda telah menangani kejadian dan semestinya berhenti di sini; 
+    mengembalikan <em>salah</em> jika Anda tidak menanganinya dan/atau kejadian semestinya berlanjut ke
+    on-key listener lainnya.</li>
+  <li><code>{@link android.view.View.OnTouchListener#onTouch(View,MotionEvent) onTouch()}</code> - 
+    Ini mengembalikan boolean untuk menunjukkan apakah listener Anda telah menggunakan kejadian ini. Yang penting adalah 
+kejadian ini bisa memiliki beberapa tindakan yang saling mengikuti. Jadi, jika Anda mengembalikan <em>salah</em>saat 
+kejadian tindakan turun diterima, itu menunjukkan bahwa Anda belum menggunakan kejadian itu dan juga 
+tidak tertarik dengan tindakan berikutnya dari kejadian ini. Karena itu, Anda tidak akan diminta untuk melakukan tindakan
+ lainnya dalam kejadian, seperti gerakan jari, atau kejadian tindakan naik yang akan terjadi.</li>
+</ul>
+
+<p>Ingatlah bahwa kejadian tombol fisik selalu disampaikan ke View yang sedang difokus. Kejadian ini dikirim mulai dari atas
+hierarki View, kemudian turun hingga tujuan yang sesuai. Jika View Anda (atau anak View Anda)
+saat ini sedang fokus, maka Anda dapat melihat kejadian berpindah melalui metode.<code>{@link android.view.View#dispatchKeyEvent(KeyEvent)
+dispatchKeyEvent()}</code> Sebagai pengganti untuk menangkap kejadian penting melalui View, Anda juga dapat menerima 
+semua kejadian dalam Aktivitas Anda dengan <code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>
+dan <code>{@link android.app.Activity#onKeyUp(int,KeyEvent) onKeyUp()}</code>.</p>
+
+<p>Selain itu, saat memikirkan tentang input teks aplikasi Anda, ingatlah bahwa banyak perangkat yang hanya memiliki
+metode input perangkat lunak. Metode seperti itu tidak harus berbasis tombol; sebagian mungkin menggunakan input suara, tulisan tangan, dan seterusnya. Meskipun 
+metode input menyajikan antarmuka seperti keyboard, itu umumnya <strong>tidak</strong> memicu keluarga kejadian
+<code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>. Anda sama sekali tidak boleh
+membangun UI yang mengharuskan penekanan tombol tertentu dikontrol kecuali jika Anda ingin membatasi aplikasi Anda pada perangkat yang memiliki
+keyboard fisik. Khususnya, jangan mengandalkan metode ini untuk memvalidasi input saat pengguna menekan tombol
+enter; melainkan, gunakan tindakan seperti {@link android.view.inputmethod.EditorInfo#IME_ACTION_DONE} untuk menandai
+metode input mengenai reaksi yang diharapkan aplikasi Anda, sehingga bisa mengubah UI-nya secara signifikan. Hindari anggapan
+tentang bagaimana metode input perangkat lunak seharusnya bekerja dan percayalah bahwa metode akan menyediakan teks yang sudah diformat bagi aplikasi Anda.</p>
+
+<p class="note"><strong>Catatan:</strong> Android akan memanggil event handler terlebih dahulu kemudian handler
+default yang sesuai dari definisi kelas. Karena itu, mengembalikan <em>benar</em> dari event listener ini akan menghentikan 
+penyebaran kejadian ke event listener lain dan juga akan memblokir callback ke 
+event handler default di View. Pastikan bahwa Anda ingin mengakhiri kejadian saat mengembalikan <em>true</em>.</p>
+
+
+<h2 id="EventHandlers">Event Handler</h2>
+
+<p>Jika Anda membuat komponen custom dari View, maka Anda dapat mendefinisikan penggunaan beberapa 
+metode callback sebagai event handler default.
+Dalam dokumen tentang <a href="{@docRoot}guide/topics/ui/custom-components.html">Komponen
+Custom</a>, Anda akan melihat penggunaan beberapa callback umum untuk penanganan kejadian,
+termasuk:</p>
+<ul>
+  <li><code>{@link  android.view.View#onKeyDown}</code> - Dipanggil bila terjadi kejadian tombol baru.</li>
+  <li><code>{@link  android.view.View#onKeyUp}</code> - Dipanggil bila terjadi kejadian tombol naik.</li>
+  <li><code>{@link  android.view.View#onTrackballEvent}</code> - Dipanggil bila terjadi kejadian gerakan trackball.</li>
+  <li><code>{@link  android.view.View#onTouchEvent}</code> - Dipanggil bila terjadi kejadian gerakan layar sentuh.</li>
+  <li><code>{@link  android.view.View#onFocusChanged}</code> - Dipanggil bila View memperoleh atau kehilangan fokus.</li>
+</ul>
+<p>Ada beberapa metode lain yang harus Anda ketahui, yang bukan bagian dari kelas View, 
+namun bisa berdampak langsung pada kemampuan Anda menangani kejadian. Jadi, saat mengelola kejadian yang lebih kompleks dalam
+layout, pertimbangkanlah metode-metode lain ini:</p>
+<ul>
+  <li><code>{@link  android.app.Activity#dispatchTouchEvent(MotionEvent)
+    Activity.dispatchTouchEvent(MotionEvent)}</code> - Ini memungkinkan {@link 
+    android.app.Activity} Anda mencegat semua kejadian sentuh sebelum dikirim ke jendela.</li>
+  <li><code>{@link  android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)
+    ViewGroup.onInterceptTouchEvent(MotionEvent)}</code> - Ini memungkinkan {@link
+    android.view.ViewGroup} memantau kejadian saat dikirim ke View anak.</li>
+  <li><code>{@link  android.view.ViewParent#requestDisallowInterceptTouchEvent(boolean)
+    ViewParent.requestDisallowInterceptTouchEvent(boolean)}</code> - Panggil ini
+    pada View induk untuk menunjukan larangan mencegat kejadian sentuh dengan <code>{@link 
+    android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)}</code>.</li>
+</ul>
+
+<h2 id="TouchMode">Mode Sentuh</h2>
+<p>
+Saat pengguna menyusuri antarmuka pengguna dengan tombol pengarah atau trackball, Anda
+perlu memberikan fokus pada item tindakan (seperti tombol) agar pengguna bisa mengetahui apa
+yang akan menerima input.  Akan tetapi jika perangkat memiliki kemampuan sentuh, dan pengguna
+mulai berinteraksi dengan antarmuka dengan menyentuhnya, maka Anda tidak perlu lagi
+menyorot item, atau memfokuskan pada View tertentu.  Karena itu, ada mode
+untuk interaksi yang bernama "mode sentuh". 
+</p>
+<p>
+Untuk perangkat berkemampuan sentuh, setelah pengguna menyentuh layar, perangkat
+akan masuk ke mode sentuh.  Dari sini dan selanjutnya, hanya View dengan 
+{@link android.view.View#isFocusableInTouchMode} benar yang akan dapat difokus, seperti widget pengedit teks.
+View lain yang dapat disentuh, seperti tombol, tidak akan difokus bila disentuh; View ini akan
+langsung memicu on-click listener bila ditekan.
+</p>
+<p>
+Kapan saja pengguna menekan tombol pengarah atau menggulir dengan trackball, perangkat akan
+keluar dari mode sentuh, dan mencari tampilan untuk difokuskan. Kini pengguna bisa melanjutkan interaksi
+dengan antarmuka pengguna tanpa menyentuh layar.
+</p>
+<p>
+Status mode sentuh dipertahankan di seluruh sistem (semua jendela dan aktivitas). 
+Untuk query status saat ini, Anda bisa memanggil
+{@link android.view.View#isInTouchMode} untuk mengetahui apakah perangkat saat ini sedang dalam mode sentuh.
+</p>
+
+
+<h2 id="HandlingFocus">Menangani Fokus</h2>
+
+<p>Kerangka kerja ini akan menangani gerakan fokus rutin sebagai respons input pengguna.
+Ini termasuk mengubah fokus saat View dihapus atau disembunyikan, atau saat tersedia View
+baru. View menunjukkan kesediaannya untuk mengambil fokus
+melalui metode <code>{@link android.view.View#isFocusable()}</code>. Untuk mengubah apakah View bisa mengambil
+fokus, panggil <code>{@link android.view.View#setFocusable(boolean) setFocusable()}</code>.  Saat dalam mode sentuh,
+Anda dapat me-query apakah View memungkinkan fokus dengan <code>{@link android.view.View#isFocusableInTouchMode()}</code>.
+Anda bisa mengubahnya dengan <code>{@link android.view.View#setFocusableInTouchMode(boolean) setFocusableInTouchMode()}</code>.
+</p>
+
+<p>Gerakan fokus berdasarkan pada algoritma yang mencari tetangga terdekat dalam
+arah yang diberikan. Dalam kasus yang jarang terjadi, algoritma default mungkin
+tidak cocok dengan perilaku yang diinginkan pengembang. Dalam situasi ini, Anda bisa memberikan
+pengesampingan eksplisit dengan mengikuti atribut XML berikut dalam file layout:
+<var>nextFocusDown</var>, <var>nextFocusLeft</var>, <var>nextFocusRight</var>, dan
+<var>nextFocusUp</var>. Tambahkan salah satu atribut ini ke View <em>dari</em> mana fokus
+meninggalkan. Definisikan nilai atribut untuk menjadi ID View
+<em>ke</em> mana fokus harus diberikan. Misalnya:</p>
+<pre>
+&lt;LinearLayout
+    android:orientation="vertical"
+    ... >
+  &lt;Button android:id="@+id/top"
+          android:nextFocusUp="@+id/bottom"
+          ... />
+  &lt;Button android:id="@+id/bottom"
+          android:nextFocusDown="@+id/top"
+          ... />
+&lt;/LinearLayout>
+</pre>
+
+<p>Biasanya, dalam layout vertikal ini, navigasi ke atas dari Button pertama tidak akan membawa ke
+mana pun, tidak pula akan menyusuri ke bawah dari Button kedua. Karena sekarang Button atas telah
+mendefinisikan Button bawah sebagai <var>nextFocusUp</var> (dan sebaliknya), fokus navigasi akan
+silih berganti dari atas ke bawah dan bawah ke atas.</p>
+
+<p>Jika Anda ingin mendeklarasikan View sebagai dapat difokus dalam UI (bila biasanya tidak dapat difokus), 
+tambahkan atribut XML <code>android:focusable</code> ke View, dalam deklarasi layout Anda.
+Atur nilai <var>true</var>. Anda juga bisa mendeklarasikan View
+sebagai dapat difokus saat dalam Mode Sentuh dengan <code>android:focusableInTouchMode</code>.</p>
+<p>Untuk meminta View tertentu difokus, panggil <code>{@link android.view.View#requestFocus()}</code>.</p>
+<p>Untuk mendengarkan kejadian fokus (diberi tahu bila View menerima atau kehilangan fokus), gunakan
+<code>{@link android.view.View.OnFocusChangeListener#onFocusChange(View,boolean) onFocusChange()}</code>
+, seperti yang dibahas di bagian <a href="#EventListeners">Event Listener</a>, di atas.</p>
+
+
+
+<!--
+<h2 is="EventCycle">Event Cycle</h2>
+   <p>The basic cycle of a View is as follows:</p>
+   <ol>
+    <li>An event comes in and is dispatched to the appropriate View. The View
+    handles the event and notifies any listeners.</li>
+    <li>If, in the course of processing the event, the View's bounds may need
+    to be changed, the View will call {@link android.view.View#requestLayout()}.</li>
+    <li>Similarly, if in the course of processing the event the View's appearance
+    may need to be changed, the View will call {@link android.view.View#invalidate()}.</li>
+    <li>If either {@link android.view.View#requestLayout()} or {@link android.view.View#invalidate()} were called,
+    the framework will take care of measuring, laying out, and drawing the tree
+    as appropriate.</li>
+   </ol>
+   
+   <p class="note"><strong>Note:</strong> The entire View tree is single threaded. You must always be on
+   the UI thread when calling any method on any View.
+   If you are doing work on other threads and want to update the state of a View
+   from that thread, you should use a {@link android.os.Handler}.
+   </p>
+-->
diff --git a/docs/html-intl/intl/in/sdk/index.jd b/docs/html-intl/intl/in/sdk/index.jd
new file mode 100644
index 0000000..53019fb
--- /dev/null
+++ b/docs/html-intl/intl/in/sdk/index.jd
@@ -0,0 +1,432 @@
+page.title=Unduh Android Studio dan SDK Tools
+page.tags=sdk, android studio
+page.image=images/cards/android-studio_2x.png
+page.template=sdk
+page.image=images/cards/android-studio_2x.png
+header.hide=1
+page.metaDescription=Unduh Android IDE resmi dan alat pengembang untuk membuat aplikasi bagi ponsel, tablet, perangkat wearable, TV Android dan lainnya.
+
+@jd:body
+
+<style type="text/css">
+  .offline {display:none;}
+  h2.feature {
+    padding-top:30px;
+    margin-top:0;
+    clear:both;
+  }
+  .feature-blurb {
+  margin:0px; font-size:16px; font-weight:300;
+  padding-top:40px;
+  }
+
+  .landing-button .small {
+    font-size: 12px;
+    font-weight: normal;
+    line-height: 12px;
+    display: block;
+  }
+
+  h1.studio-logo {
+    width:226px;
+    height:78px;
+    display:block;
+    padding:0;
+    white-space: nowrap;
+    text-indent: -10000px;
+    font-size:0px;
+    background: url({@docRoot}images/tools/studio-logo.png);
+    background-image: -webkit-image-set(url({@docRoot}images/tools/studio-logo.png) 1x, url({@docRoot}images/tools/studio-logo_2x.png) 2x);
+    background-size: 226px 78px;
+  }
+
+</style>
+
+
+
+
+
+<div style="position:relative;">
+
+
+<div class="wrap" id="tos" style="display:none;width:inherit;height:650px">
+<div class="col-13" style="margin:0;">&nbsp;</div><!-- provides top margin for content -->
+
+<h1 id="tos-header" style="margin-top:0">Unduh</h1>
+
+<p class="sdk-terms-intro">Sebelum menginstal Android Studio atau alat SDK mandiri,
+Anda harus menyetujui ketentuan dan persyaratan berikut.</p>
+
+<div class="sdk-terms" onfocus="this.blur()">
+<h2 class="norule">Ketentuan dan Persyaratan</h2>
+Ini adalah Perjanjian Lisensi Kit Pengembangan Perangkat Lunak Android
+
+<h3>1. Introduction</h3>
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+
+<h3>2. Accepting this License Agreement</h3>
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
+
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
+
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+
+
+<h3>3. SDK License from Google</h3>
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
+
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
+
+3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
+
+
+<h3>4. Use of the SDK by You</h3>
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+
+<h3>5. Your Developer Credentials</h3>
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+
+<h3>6. Privacy and Information</h3>
+6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy.
+
+
+<h3>7. Third Party Applications</h3>
+7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
+
+
+<h3>8. Using Android APIs</h3>
+8.1 Google Data APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+
+<h3>9. Terminating this License Agreement</h3>
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
+(B) Google is required to do so by law; or
+(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
+(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
+
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+
+
+<h3>10. DISCLAIMER OF WARRANTIES</h3>
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+
+<h3>11. LIMITATION OF LIABILITY</h3>
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+
+<h3>12. Indemnification</h3>
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
+
+
+<h3>13. Changes to the License Agreement</h3>
+13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available.
+
+
+<h3>14. General Legal Terms</h3>
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+
+<em>November 20, 2015</em>
+</div>
+
+
+
+
+
+<div id="next-steps" style="display:none;position:absolute;width:inherit">
+  <p>Beberapa saat lagi Anda akan dapat membuat aplikasi untuk Android!</p>
+  <p>Sebentar lagi, Anda akan dialihkan ke
+  <a id="next-link" href="{@docRoot}sdk/installing/index.html">Menginstal Android SDK</a>.</p>
+
+</div><!-- end next-steps -->
+
+
+
+<div id="sdk-terms-form">
+<p>
+<input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+<label id="agreeLabel" for="agree">Saya telah membaca dan menyetujui ketentuan dan persyaratan di atas</label>
+</p>
+<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+</div>
+
+
+</div><!-- end TOS -->
+
+
+
+
+
+
+<div id="landing">
+
+<div class="col-13">&nbsp;</div><!-- provides top margin for content -->
+
+<img src="{@docRoot}images/tools/studio-hero.png"
+srcset="{@docRoot}images/tools/studio-hero_2x.png 2x, {@docRoot}images/tools/studio-hero.png 1x"
+width="760" alt="" />
+
+<div style="color: #fff; width:226px; height:0; overflow:visible; position:absolute; top:40px; left:25px">
+
+<h1 class="studio-logo" style="margin:0 0 35px !important">Android Studio</h1>
+
+<p style="font-size: 16px; color:#bbb; position: absolute;left: 297px; top: 5px; display: block;
+width: 400px;text-align: center;">Android IDE resmi</p>
+
+<ul style="font-size:12px;line-height:19px;">
+<li>Android Studio IDE</li>
+<li>Android SDK Tools</li>
+<li>Platform Android 6.0 (Marshmallow)</li>
+<li>Citra sistem emulator Android 6.0 dengan Google API</li>
+</ul>
+
+<a class="online landing-button green download-bundle-button"
+href="#Other" >Download Android Studio<br/><span class='small'></span></a>
+
+<!-- this appears when viewing the offline docs -->
+<p class="offline">
+Untuk mendapatkan Android Studio atau alat SDK mandiri, kunjungi <a href="http://developer.android.com/sdk/index.html">developer.android.com/sdk/</a>
+</p>
+</div>
+
+<ul>
+  <li><a href="#Requirements">Kebutuhan Sistem</a></li>
+  <li><a href="#Other">Opsi Unduhan Lain</a></li>
+  <li><a href="{@docRoot}sdk/installing/migrate.html">Beralih ke Android Studio</a></li>
+  <li><a href="https://docs.google.com/a/google.com/forms/d/1mjsyfzv3HAnDY-_Kfj-3QJKdpuksyMFs9e73CRwmT6Q/viewform" target="_blank">Ikuti Survei</a></li>
+</ul>
+
+
+
+
+<h2 class="feature norule" >Editor kode cerdas</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-code.png" srcset="{@docRoot}images/tools/studio-hero-code_2x.png 2x, {@docRoot}images/tools/studio-hero-code.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Yang menjadi inti Android Studio adalah editor kode cerdas dengan kemampuan
+ penyelesaian kode, optimalisasi, dan analisis kode yang canggih.</p>
+  <p>Editor kode yang andal ini membantu Anda menjadi pengembang aplikasi Android yang lebih produktif.</p>
+</div>
+
+
+
+
+
+<h2 class="feature norule">Template kode dan integrasi GitHub</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-import.png" srcset="{@docRoot}images/tools/studio-hero-import_2x.png 2x, {@docRoot}images/tools/studio-hero-import.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Pemandu proyek yang baru membuat proses memulai proyek baru menjadi jauh lebih mudah.</p>
+
+  <p>Mulai proyek dengan menggunakan kode template untuk pola seperti navigation-drawer dan view-pager,
+ dan bahkan impor contoh kode Google dari GitHub.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">Pengembangan aplikasi multilayar</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-screens.png" srcset="{@docRoot}images/tools/studio-hero-screens_2x.png 2x, {@docRoot}images/tools/studio-hero-screens.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Buat aplikasi untuk ponsel dan tablet Android, Android Wear,
+ Android TV, Android Auto dan Google Glass.</p>
+  <p>Dengan Android Project View yang baru dan dukungan modul di Android Studio, jadi semakin mudah
+  mengelola proyek dan sumber daya aplikasi.
+</div>
+
+
+
+
+<h2 class="feature norule">Perangkat virtual untuk semua ukuran dan bentuk</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-avds.png" srcset="{@docRoot}images/tools/studio-hero-avds_2x.png 2x, {@docRoot}images/tools/studio-hero-avds.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android Studio sudah dikonfigurasi dengan citra emulator yang dioptimalkan.</p>
+  <p>Virtual Device Manager yang telah diperbarui dan dibuat lebih efisien menyediakan
+ profil perangkat yang sudah didefinisikan untuk perangkat Android umum.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">
+Pembuatan Android berkembang dengan Gradle</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-gradle.png" srcset="{@docRoot}images/tools/studio-hero-gradle_2x.png 2x, {@docRoot}images/tools/studio-hero-gradle.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Buatlah berbagai APK untuk aplikasi Android Anda dengan aneka fitur menggunakan proyek yang sama.</p>
+  <p>Kelola dependensi aplikasi dengan Maven.</p>
+  <p>Buat APK dari Android Studio atau baris perintah.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">Selengkapnya tentang Android Studio</h2>
+<div style="background:#424242;padding:30px; color:#fff;margin:0 0 15px;">
+
+<a class="online landing-button green download-bundle-button" style="margin:0 0 40px 60px;float:right" href="">Download</a>
+
+  <ul>
+  <li>Dibuat dengan IntelliJ IDEA Community Edition, JAVA IDE populer karya JetBrains.</li>
+  <li>Sistem pembuatan berbasis Gradle yang fleksibel.</li>
+  <li>Buat berbagai generasi APK dan variannya.</li>
+  <li>Dukungan template bertambah untuk Google Services dan aneka tipe perangkat.</li>
+  <li>Editor layout yang lengkap dengan dukungan untuk pengeditan tema.</li>
+  <li>Alat penambal untuk solusi kinerja, kegunaan, kompatibilitas versi, dan masalah lain.</li>
+  <li>ProGuard dan kemampuan penandatanganan aplikasi.</li>
+  <li>Dukungan bawaan untuk Google Cloud Platform, mempermudah integrasi Google Cloud
+  Messaging dan App Engine.</li>
+  </ul>
+
+<p style="margin:0">
+Untuk detail selengkapnya tentang fitur-fitur yang tersedia di Android Studio,
+bacalah panduan <a href="{@docRoot}tools/studio/index.html">Dasar-Dasar Android Studio</a>.</p>
+</div>
+
+
+<p>Jika Anda menggunakan Eclipse dengan ADT, ingatlah bahwa Android Studio sekarang merupakan IDE resmi
+untuk Android, jadi Anda harus beralih ke Android Studio untuk menerima semua
+pembaruan terakhir IDE. Untuk bantuan dalam memindahkan proyek,
+lihat <a href="{@docRoot}sdk/installing/migrate.html">Beralih ke Android
+Studio</a>.</p>
+
+
+
+
+
+
+
+<h2 id="Requirements">Kebutuhan Sistem</h2>
+
+<h3>Windows</h3>
+
+<ul>
+<li>Microsoft&reg;  Windows&reg;  8/7/Vista/2003 (32 atau 64-bit)</li>
+<li>RAM minimum 2 GB, RAM yang direkomendasikan 4 GB</li>
+<li>Ruang hard-disk 400 MB</li>
+<li>Setidaknya 1 GB untuk Android SDK, citra sistem emulator, dan cache</li>
+<li>Resolusi layar minimum 1280 x 800</li>
+<li>Java Development Kit (JDK) 7 </li>
+<li>Opsional untuk emulator akselerasi: Prosesor Intel® dengan dukungan untuk Intel® VT-x, Intel® EM64T
+(Intel® 64), dan fungsionalitas Execute Disable (XD) Bit</li>
+</ul>
+
+
+<h3>Mac OS X</h3>
+
+<ul>
+<li>Mac&reg;  OS X&reg;  10.8.5 atau yang lebih tinggi, hingga 10.9 (Mavericks)</li>
+<li>RAM minimum 2 GB, RAM yang direkomendasikan 4 GB</li>
+<li>Ruang hard-disk 400 MB</li>
+<li>Setidaknya 1 GB untuk Android SDK, citra sistem emulator, dan cache</li>
+<li>Resolusi layar minimum 1280 x 800</li>
+<li>Java Runtime Environment (JRE) 6</li>
+<li>Java Development Kit (JDK) 7</li>
+<li>Opsional untuk emulator akselerasi: Prosesor Intel® dengan dukungan untuk Intel® VT-x, Intel® EM64T
+(Intel® 64), dan fungsionalitas Execute Disable (XD) Bit</li>
+</ul>
+
+<p>Pada Mac OS, jalankan Android Studio dengan Java Runtime Environment (JRE) 6 untuk rendering
+font yang dioptimalkan. Kemudian Anda bisa mengonfigurasi proyek untuk menggunakan Java Development Kit (JDK) 6 atau JDK 7.</p>
+
+
+
+<h3>Linux</h3>
+
+<ul>
+<li>Desktop GNOME atau KDE</li>
+<li>GNU C Library (glibc) 2.15 atau yang lebih baru</li>
+<li>RAM minimum 2 GB, RAM yang direkomendasikan 4 GB</li>
+<li>Ruang hard-disk 400 MB</li>
+<li>Setidaknya 1 GB untuk Android SDK, citra sistem emulator, dan cache</li>
+<li>Resolusi layar minimum 1280 x 800</li>
+<li>Oracle&reg;  Java Development Kit (JDK) 7 </li>
+</ul>
+<p>Telah diuji pada Ubuntu&reg;  14.04, Trusty Tahr (distribusi 64-bit yang mampu menjalankan
+aplikasi 32-bit).</p>
+
+
+
+
+<h2 id="Other" style="clear:left">Opsi Unduhan Lain</h2>
+
+<!-- alternative SDK options follows -->
diff --git a/docs/html-intl/intl/in/sdk/installing/adding-packages.jd b/docs/html-intl/intl/in/sdk/installing/adding-packages.jd
new file mode 100644
index 0000000..2fc5c3e
--- /dev/null
+++ b/docs/html-intl/intl/in/sdk/installing/adding-packages.jd
@@ -0,0 +1,226 @@
+page.title=Menambahkan Paket SDK
+
+page.tags=sdk manager
+
+@jd:body
+
+<style>
+ol.large {
+  margin-left:0;
+}
+ol.large > li {
+  list-style-position: inside;
+  list-style-type:none;
+  margin:30px 0 0 0;
+  padding:30px 20px;
+  background:#eee;
+}
+ol.large > li:nth-child(odd) {
+}
+ol.large > li:before {
+  display:inline;
+  left:-40px;
+  float:left;
+  width:20px;
+  font-size:20px;
+  line-height:20px;
+}
+ol.large > li > h2 {
+  font-size:20px;
+  line-height:20px;
+  padding:0 0 0 20px;
+  margin:0 0 20px 0;
+  display:inline;
+  font-weight:normal;
+}
+ol.large > li:nth-child(1):before {
+  content:"1. ";
+}
+ol.large > li:nth-child(2):before {
+  content:"2. ";
+}
+ol.large > li:nth-child(3):before {
+  content:"3. ";
+}
+ol.large > li:nth-child(4):before {
+  content:"4. ";
+}
+ol.large > li:nth-child(5):before {
+  content:"5. ";
+}
+ol.large > li:nth-child(6):before {
+  content:"6. ";
+}
+</style>
+
+
+<p>
+Secara default, Android SDK tidak mencakup segala sesuatu yang Anda perlukan untuk memulai pengembangan.
+SDK memisahkan alat, platform, dan komponen lain ke dalam paket yang bisa Anda
+unduh bila diperlukan dengan menggunakan 
+<a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>.
+Jadi, sebelum Anda bisa memulai, ada beberapa paket yang harus Anda tambahkan ke Android SDK Anda.</p>
+
+<p>Untuk mulai menambahkan paket, jalankan Android SDK Manager dengan salah satu cara berikut:</p>
+<ul>
+  <li>Di Android Studio, klik <strong>SDK Manager</strong>
+<img src="{@docRoot}images/tools/sdk-manager-studio.png" style="vertical-align:bottom;margin:0;height:17px" /> di toolbar.</li>
+  <li>Jika Anda tidak menggunakan Android Studio:
+    <ul>
+      <li>Windows: Klik ganda file <code>SDK Manager.exe</code> pada akar direktori Android
+SDK.</li>
+      <li>Mac/Linux: Buka sebuah terminal dan arahkan ke direktori <code>tools/</code> di
+lokasi instalasi Android SDK, lalu jalankan <code>android sdk</code>.</li>
+    </ul>
+  </li>
+</ul>
+
+<p>Bila Anda membuka SDK Manager untuk pertama kali, beberapa paket akan dipilih secara
+default. Biarkan dipilih, namun pastikan bahwa Anda mempunyai semua yang Anda perlukan
+untuk persiapan dengan mengikuti langkah-langkah ini:</p>
+
+
+<ol class="large">
+<li>
+  <h2 id="GetTools" class="norule">Dapatkan alat-alat SDK terbaru</h2>
+
+<img src="/images/sdk_manager_packages.png" alt="" width="350" style="float:right;margin-left:20px" />
+
+  <p>Setidaknya saat menyiapkan Android SDK,
+ Anda harus mengunduh platform Android dan alat-alat terbaru:</p>
+  <ol>
+   <li>Buka direktori Tools dan pilih:
+     <ul>
+       <li><strong>Android SDK Tools</strong></li>
+       <li><strong>Android SDK Platform-tools</strong></li>
+       <li><strong>Android SDK Build-tools</strong> (versi tertinggi)</li>
+     </ul>
+   </li>
+   <li>Buka folder Android X.X (versi terbaru) yang pertama dan pilih:
+     <ul>
+      <li><strong>SDK Platform</strong></li>
+      <li>Sebuah citra sistem untuk emulator, seperti <br>
+      <strong>ARM EABI v7a System Image</strong></li>
+     </ul>
+   </li>
+  </ol>
+</li>
+
+<li>
+  <h2 id="GetSupportLib" class="norule">Dapatkan pustaka dukungan untuk API tambahan</h2>
+
+  <div class="sidebox">
+    <p>Pustaka dukungan diperlukan untuk:</p>
+    <ul>
+      <li><a href="{@docRoot}wear/index.html">Android Wear</a></li>
+      <li><a href="{@docRoot}tv/index.html">Android TV</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+    </ul>
+
+    <p>Pustaka ini juga menyediakan API populer:</p>
+    <ul>
+      <li><a href="{@docRoot}reference/android/support/v4/widget/DrawerLayout.html">Drawer
+      navigasi</a></li>
+      <li><a href="{@docRoot}reference/android/support/v4/view/ViewPager.html">Tampilan usap</a></li>
+      <li><a href="{@docRoot}reference/android/support/v7/app/ActionBar.html">Action-bar
+      yang kompatibel dengan versi lama</a></li>
+    </ul>
+  </div>
+
+  <p><a href="{@docRoot}tools/support-library/features.html">Android Support Library</a>
+menyediakan set API tambahan yang kompatibel dengan sebagian besar versi Android.</p>
+
+  <p>Buka direktori <strong>Extras</strong> dan pilih:</p>
+     <ul>
+       <li><strong>Android Support Repository</strong></li>
+       <li><strong>Android Support Library</strong></li>
+     </ul>
+
+  <p>&nbsp;</p>
+  <p>&nbsp;</p>
+
+</li>
+
+
+<li>
+  <h2 id="GetGoogle" class="norule">Dapatkan Google Play services untuk API yang lebih banyak lagi</h2>
+
+  <div class="sidebox">
+
+    <p>API Google Play services menyediakan beragam fitur dan layanan untuk aplikasi Android
+Anda, misalnya:</p>
+    <ul>
+      <li><a href="{@docRoot}google/play-services/plus.html">Autentikasi pengguna</a></li>
+      <li><a href="{@docRoot}google/play-services/maps.html">Google Maps</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+      <li><a href="{@docRoot}google/play-services/games.html">Skor dan
+ papan peringkat permainan</a></li>
+      <li><a href="{@docRoot}google/play-services/index.html">Dan masih banyak lagi</a></li>
+    </ul>
+  </div>
+
+  <p>Untuk mengembangkan aplikasi dengan Google API, Anda memerlukan paket Google Play services:</p>
+  <p>Buka direktori <strong>Extras</strong> dan pilih:</p>
+     <ul>
+       <li><strong>Google Repository</strong></li>
+       <li><strong>Google Play services</strong></li>
+     </ul>
+
+  <p class="note"><strong>Catatan:</strong> API Google Play services tidak tersedia pada semua
+perangkat berbasis Android, namun tersedia pada semua perangkat dengan Google Play Store. Untuk menggunakan API ini
+ dalam emulator Android, Anda juga harus menginstal citra sistem <strong>Google API</strong>
+ dari direktori Android X.X terbaru di SDK Manager.</p>
+</li>
+
+
+<li>
+  <h2 id="Install" class="norule">Instal paket tersebut</h2>
+  <p>Setelah Anda memilih semua paket yang diinginkan, teruskan untuk menginstal:</p>
+  <ol>
+   <li>Klik <strong>Install X packages</strong>.</li>
+   <li>Di jendela berikutnya, klik ganda masing-masing nama paket di sebelah kiri
+ untuk menyetujui perjanjian lisensinya masing-masing.</li>
+   <li>Klik <strong>Install</strong>.</li>
+  </ol>
+  <p>Kemajuan pengunduhan diperlihatkan di bagian bawah jendela SDK Manager.
+  <strong>Jangan keluar dari SDK Manager</strong> karena hal itu akan membatalkan pengunduhan.</p>
+</li>
+
+<li>
+  <h2 id="Build" class="norule">Bangun sesuatu!</h2>
+
+<p>Dengan adanya semua paket di atas di Android SDK, maka Anda siap untuk membangun aplikasi
+untuk Android. Dengan tersedianya berbagai alat baru dan API lainnya, maka tinggal jalankan SDK Manager
+untuk mengunduh paket baru bagi SDK Anda.</p>
+
+<p>Inilah beberapa opsi cara Anda untuk melanjutkan:</p>
+
+<div class="cols" style="padding:10px 0">
+<div class="col-4">
+<h3>Persiapkan</h3>
+<p>Jika Anda masih baru dengan pengembangan Android, pelajari dasar-dasar aplikasi Android dengan mengikuti
+panduan untuk <strong><a href="{@docRoot}training/basics/firstapp/index.html">Membangun Aplikasi Pertama Anda</a></strong>.</p>
+
+</div>
+<div class="col-4 box">
+<h3>Bangun untuk perangkat wearable</h3>
+<p>Jika Anda siap memulai pembangunan aplikasi untuk perangkat wearable Android, lihat panduan untuk
+<strong><a href="{@docRoot}wear/preview/start.html">Membangun Aplikasi untuk Android Wear</a></strong>.</p>
+
+</div>
+<div class="col-4 box">
+<h3>Gunakan Google API</h3>
+<p>Untuk mulai menggunakan Google API, seperti Maps atau
+layanan Play Game, lihat panduan untuk
+<strong><a href="{@docRoot}google/play-services/setup.html">Mempersiapkan Google Play
+Services</a></strong>.</p>
+
+</div>
+</div><!-- end cols -->
+
+
+</li>
+
+</ol>
+
+
diff --git a/docs/html-intl/intl/in/training/material/animations.jd b/docs/html-intl/intl/in/training/material/animations.jd
new file mode 100644
index 0000000..e57a03f
--- /dev/null
+++ b/docs/html-intl/intl/in/training/material/animations.jd
@@ -0,0 +1,550 @@
+page.title=Mendefinisikan Animasi Custom
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Pelajaran ini mengajarkan Anda cara</h2>
+<ol>
+  <li><a href="#Touch">Menyesuaikan Umpan Balik Sentuh</a></li>
+  <li><a href="#Reveal">Menggunakan Reveal Effect</a></li>
+  <li><a href="#Transitions">Menyesuaikan Transisi Aktivitas</a></li>
+  <li><a href="#ViewState">Menganimasikan Perubahan Status Tampilan</a></li>
+  <li><a href="#AnimVector">Menganimasikan Drawable Vektor</a></li>
+</ol>
+<h2>Anda juga harus membaca</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Spesifikasi desain bahan</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Desain bahan di Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Animasi dalam desain bahan memberi pengguna umpan balik tentang tindakannya dan menyediakan
+kesinambungan visual saat pengguna berinteraksi dengan aplikasi Anda. Tema bahan menyediakan beberapa animasi default
+untuk tombol dan transisi aktivitas, dan Android 5.0 (API level 21) ke atas memungkinkan Anda menyesuaikan
+animasi ini dan membuat yang baru:</p>
+
+<ul>
+<li>Umpan balik sentuh</li>
+<li>Singkap Melingkar</li>
+<li>Transisi aktivitas</li>
+<li>Gerakan melengkung</li>
+<li>Perubahan status tampilan</li>
+</ul>
+
+
+<h2 id="Touch">Menyesuaikan Umpan Balik Sentuh</h2>
+
+<p>Umpan balik sentuh dalam desain bahan menyediakan konfirmasi visual seketika pada
+titik kontak bila pengguna berinteraksi dengan elemen UI. Animasi umpan balik sentuh default
+untuk tombol menggunakan kelas {@link android.graphics.drawable.RippleDrawable} baru, yang bertransisi
+di antara berbagai status dengan efek riak.</p>
+
+<p>Di sebagian besar kasus, Anda harus menerapkan fungsionalitas ini dalam XML tampilan dengan menetapkan
+latar belakang tampilan sebagai:</p>
+
+<ul>
+<li><code>?android:attr/selectableItemBackground</code> untuk riak berbatas.</li>
+<li><code>?android:attr/selectableItemBackgroundBorderless</code> untuk riak yang meluas ke luar
+tampilan. Latar belakang ini akan digambar di atas, dan dibatasi oleh, induk tampilan terdekat dengan
+latar belakang non-null.</li>
+</ul>
+
+<p class="note"><strong>Catatan:</strong> <code>selectableItemBackgroundBorderless</code> adalah
+atribut baru yang diperkenalkan di API level 21.</p>
+
+
+<p>Atau, Anda bisa mendefinisikan {@link android.graphics.drawable.RippleDrawable}
+sebagai sumber daya XML dengan menggunakan elemen <code>ripple</code>.</p>
+
+<p>Anda bisa menetapkan warna ke objek-objek {@link android.graphics.drawable.RippleDrawable}. Untuk mengubah
+warna default umpan balik sentuh, gunakan atribut <code>android:colorControlHighlight</code>
+tema.</p>
+
+<p>Untuk informasi selengkapnya, lihat referensi API bagi kelas {@link
+android.graphics.drawable.RippleDrawable}.</p>
+
+
+<h2 id="Reveal">Menggunakan Reveal Effect</h2>
+
+<p>Animasi singkap memberi pengguna kesinambungan visual saat menampilkan atau menyembunyikan sekelompok
+elemen UI. Metode {@link android.view.ViewAnimationUtils#createCircularReveal
+ViewAnimationUtils.createCircularReveal()} memungkinkan Anda menganimasikan lingkaran terpangkas
+untuk memperlihatkan atau menyembunyikan tampilan.</p>
+
+<p>Untuk memperlihatkan tampilan yang sebelumnya tidak terlihat dengan menggunakan efek ini:</p>
+
+<pre>
+// previously invisible view
+View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the final radius for the clipping circle
+int finalRadius = Math.max(myView.getWidth(), myView.getHeight());
+
+// create the animator for this view (the start radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius);
+
+// make the view visible and start the animation
+myView.setVisibility(View.VISIBLE);
+anim.start();
+</pre>
+
+<p>Untuk menyembunyikan sebuah tampilan yang sebelumnya terlihat dengan menggunakan efek ini:</p>
+
+<pre>
+// previously visible view
+final View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the initial radius for the clipping circle
+int initialRadius = myView.getWidth();
+
+// create the animation (the final radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, initialRadius, 0);
+
+// make the view invisible when the animation is done
+anim.addListener(new AnimatorListenerAdapter() {
+    &#64;Override
+    public void onAnimationEnd(Animator animation) {
+        super.onAnimationEnd(animation);
+        myView.setVisibility(View.INVISIBLE);
+    }
+});
+
+// start the animation
+anim.start();
+</pre>
+
+
+<h2 id="Transitions">Menyesuaikan Transisi Aktivitas</h2>
+
+<!-- shared transition video -->
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay="">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.webm">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.ogv">
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <p class="img-caption" style="margin-top:3px;margin-bottom:10px"><strong>Gambar 1</strong> - Transisi
+    dengan elemen bersama.</p>
+    <em>Untuk memutar ulang film, klik layar perangkat</em>
+  </div>
+</div>
+
+<p>Transisi aktivitas dalam aplikasi desain bahan memberikan koneksi visual antar berbagai status
+melalui gerakan dan transformasi di antara elemen umum. Anda bisa menetapkan animasi custom untuk
+masuk ke dan keluar dari transisi dan untuk transisi elemen bersama di antara aktivitas.</p>
+
+<ul>
+<li>Transisi <strong>masuk</strong> menentukan cara tampilan di aktivitas memasuki suatu babak.
+misalnya, dalam transisi masuk <em>explode</em>, tampilan memasuki babak dari sisi luar
+dan melayang masuk ke arah tengah layar.</li>
+
+<li>Transisi <strong>keluar</strong> menentukan cara tampilan di aktivitas keluar dari suatu babak. Misalnya
+, dalam transisi keluar <em>explode</em>, tampilan akan keluar dari babak dari bagian
+tengahnya.</li>
+
+<li>Transisi <strong>elemen bersama</strong> menentukan cara menggunakan bersama suatu tampilan
+oleh dua transisi aktivitas di antara aktivitas-aktivitas ini. Misalnya, jika dua aktivitas memiliki
+gambar yang sama dengan posisi dan ukuran berbeda, transisi elemen bersama <em>changeImageTransform</em>
+mentransformasikan dan menskalakan gambar secara mulus di antara aktivitas-aktivitas ini.</li>
+</ul>
+
+<p>Android 5.0 (API level 21) mendukung transisi masuk dan transisi keluar ini:</p>
+
+<ul>
+<li><em>explode</em> - Memindahkan tampilan masuk ke atau keluar dari tengah babak.</li>
+<li><em>slide</em> - Memindahkan tampilan masuk ke atau keluar dari salah satu tepi babak.</li>
+<li><em>fade</em> - Menambahkan atau menghapus tampilan dari babak dengan mengubah opasitasnya.</li>
+</ul>
+
+<p>Transisi apa pun yang memperluas kelas {@link android.transition.Visibility} didukung
+sebagai transisi masuk atau transisi keluar. Untuk informasi selengkapnya, lihat referensi API untuk kelas
+{@link android.transition.Transition}.</p>
+
+<p>Android 5.0 (API level 21) juga mendukung transisi elemen bersama ini:</p>
+
+<ul>
+<li><em>changeBounds</em> - Menganimasikan perubahan pada batas-batas layout tampilan target.</li>
+<li><em>changeClipBounds</em> - Menganimasikan perubahan pada batas-batas pemangkasan tampilan target.</li>
+<li><em>changeTransform</em> - Menganimasikan perubahan pada skala dan rotasi tampilan target.</li>
+<li><em>changeImageTransform</em> - Menganimasikan perubahan pada ukuran dan skala gambar target.</li>
+</ul>
+
+<p>Bila Anda mengaktifkan transisi aktivitas dalam aplikasi, transisi memudar-silang default akan
+diaktifkan di antara aktivitas masuk dan aktivitas keluar.</p>
+
+<img src="{@docRoot}training/material/images/SceneTransition.png" alt="" width="600" height="405" style="margin-top:20px" />
+<p class="img-caption">
+  <strong>Gambar 2</strong> - Transisi babak dengan satu elemen bersama.
+</p>
+
+<h3>Menetapkan transisi custom</h3>
+
+<p>Pertama, aktifkan transisi konten jendela dengan atribut <code>android:windowContentTransitions</code>
+bila Anda mendefinisikan gaya yang mewarisi tema bahan. Anda juga bisa menetapkan
+transisi-transisi masuk, keluar, dan elemen bersama dalam definisi gaya:</p>
+
+<pre>
+&lt;style name="BaseAppTheme" parent="android:Theme.Material">
+  &lt;!-- enable window content transitions -->
+  &lt;item name="android:windowContentTransitions">true&lt;/item>
+
+  &lt;!-- specify enter and exit transitions -->
+  &lt;item name="android:windowEnterTransition">@transition/explode&lt;/item>
+  &lt;item name="android:windowExitTransition">@transition/explode&lt;/item>
+
+  &lt;!-- specify shared element transitions -->
+  &lt;item name="android:windowSharedElementEnterTransition">
+    &#64;transition/change_image_transform&lt;/item>
+  &lt;item name="android:windowSharedElementExitTransition">
+    &#64;transition/change_image_transform&lt;/item>
+&lt;/style>
+</pre>
+
+<p>Transisi <code>change_image_transform</code> dalam contoh ini didefinisikan sebagai berikut:</p>
+
+<pre>
+&lt;!-- res/transition/change_image_transform.xml -->
+&lt;!-- (see also Shared Transitions below) -->
+&lt;transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;changeImageTransform/>
+&lt;/transitionSet>
+</pre>
+
+<p>Elemen <code>changeImageTransform</code> menunjukkan
+kelas {@link android.transition.ChangeImageTransform}. Untuk informasi selengkapnya, lihat referensi
+API untuk {@link android.transition.Transition}.</p>
+
+<p>Sebaliknya, untuk mengaktifkan transisi konten jendela dalam kode Anda, panggil
+metode {@link android.view.Window#requestFeature Window.requestFeature()}:</p>
+
+<pre>
+// inside your activity (if you did not enable transitions in your theme)
+getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+
+// set an exit transition
+getWindow().setExitTransition(new Explode());
+</pre>
+
+<p>Untuk menetapkan transisi dalam kode Anda, panggil metode-metode ini dengan objek {@link
+android.transition.Transition}:</p>
+
+<ul>
+  <li>{@link android.view.Window#setEnterTransition Window.setEnterTransition()}</li>
+  <li>{@link android.view.Window#setExitTransition Window.setExitTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementEnterTransition
+      Window.setSharedElementEnterTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementExitTransition
+      Window.setSharedElementExitTransition()}</li>
+</ul>
+
+<p>Metode {@link android.view.Window#setExitTransition setExitTransition()} dan {@link
+android.view.Window#setSharedElementExitTransition setSharedElementExitTransition()} mendefinisikan
+transisi keluar untuk aktivitas yang memanggil. Metode {@link android.view.Window#setEnterTransition
+setEnterTransition()} dan {@link android.view.Window#setSharedElementEnterTransition
+setSharedElementEnterTransition()} mendefinisikan transisi masuk untuk aktivitas yang dipanggil.</p>
+
+<p>Untuk mendapatkan efek penuh sebuah transisi, Anda harus mengaktifkan transisi konten jendela pada
+aktivitas yang memanggil maupun aktivitas yang dipanggil. Jika tidak, aktivitas yang memanggil akan memulai transisi keluar,
+namun kemudian Anda akan melihat transisi jendela (seperti mengelupas atau memudar).</p>
+
+<p>Untuk memulai transisi masuk sesegera mungkin, gunakan metode
+{@link android.view.Window#setAllowEnterTransitionOverlap Window.setAllowEnterTransitionOverlap()}
+pada aktivitas yang dipanggil. Ini memungkinkan Anda mendapatkan transisi masuk yang lebih dramatis.</p>
+
+<h3>Memulai aktivitas dengan menggunakan transisi</h3>
+
+<p>Jika Anda mengaktifkan transisi dan mengatur transisi keluar untuk aktivitas, transisi itu akan diaktifkan
+bila Anda menjalankan aktivitas lain sebagai berikut:</p>
+
+<pre>
+startActivity(intent,
+              ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
+</pre>
+
+<p>Jika Anda telah mengatur transisi masuk untuk aktivitas kedua, transisi juga akan diaktifkan
+bila aktivitas dimulai. Untuk menonaktifkan transisi bila Anda memulai aktivitas lain, sediakan
+bundel opsi <code>null</code>.</p>
+
+<h3>Memulai aktivitas dengan satu elemen bersama</h3>
+
+<p>Untuk membuat animasi transisi layar di antara dua aktivitas yang memiliki satu elemen bersama:</p>
+
+<ol>
+<li>Aktifkan transisi konten jendela dalam tema Anda.</li>
+<li>Tetapkan transisi elemen bersama dalam gaya Anda.</li>
+<li>Definisikan transisi Anda sebagai sumber daya XML.</li>
+<li>Tetapkan nama umum pada elemen bersama dalam kedua layout dengan
+    atribut <code>android:transitionName</code>.</li>
+<li>Gunakan metode {@link android.app.ActivityOptions#makeSceneTransitionAnimation
+ActivityOptions.makeSceneTransitionAnimation()}.</li>
+</ol>
+
+<pre>
+// get the element that receives the click event
+final View imgContainerView = findViewById(R.id.img_container);
+
+// get the common element for the transition in this activity
+final View androidRobotView = findViewById(R.id.image_small);
+
+// define a click listener
+imgContainerView.setOnClickListener(new View.OnClickListener() {
+    &#64;Override
+    public void onClick(View view) {
+        Intent intent = new Intent(this, Activity2.class);
+        // create the transition animation - the images in the layouts
+        // of both activities are defined with android:transitionName="robot"
+        ActivityOptions options = ActivityOptions
+            .makeSceneTransitionAnimation(this, androidRobotView, "robot");
+        // start the new activity
+        startActivity(intent, options.toBundle());
+    }
+});
+</pre>
+
+<p>Untuk tampilan dinamis bersama yang Anda hasilkan dalam kode, gunakan
+metode {@link android.view.View#setTransitionName View.setTransitionName()} untuk menetapkan
+nama elemen umum di kedua aktivitas.</p>
+
+<p>Untuk membalik animasi transisi babak bila Anda menyelesaikan aktivitas kedua, panggil metode
+{@link android.app.Activity#finishAfterTransition Activity.finishAfterTransition()}
+sebagai ganti {@link android.app.Activity#finish Activity.finish()}.</p>
+
+<h3>Memulai aktivitas dengan beberapa elemen bersama</h3>
+
+<p>Untuk membuat animasi transisi babak antara dua aktivitas yang memiliki lebih dari satu
+elemen bersama, definisikan elemen bersama di kedua layout dengan atribut <code>android:transitionName</code>
+ (atau gunakan metode {@link android.view.View#setTransitionName View.setTransitionName()}
+di kedua aktivitas), dan buat sebuah objek {@link android.app.ActivityOptions} sebagai berikut:</p>
+
+<pre>
+ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(this,
+        Pair.create(view1, "agreedName1"),
+        Pair.create(view2, "agreedName2"));
+</pre>
+
+
+<h2 id="CurvedMotion">Menggunakan Gerakan Melengkung</h2>
+
+<p>Animasi dalam desain bahan mengandalkan kurva untuk pola interpolasi waktu dan
+gerakan spasial. Dengan Android 5.0 (API level 21) ke atas, Anda bisa mendefinisikan kurva pewaktuan custom dan
+pola gerakan melengkung untuk animasi.</p>
+
+<p>Kelas {@link android.view.animation.PathInterpolator} adalah interpolator baru berdasarkan sebuah
+kurva Bézier atau objek {@link android.graphics.Path}. Interpolator ini menetapkan kurva gerakan
+dalam bujur sangkar 1x1, dengan titik-titik jangkar di (0,0) dan (1,1) dan titik-titik kontrol sebagaimana ditetapkan menggunakan
+argumen konstruktor. Anda juga bisa mendefinisikan interpolator path sebagai sumber daya XML:</p>
+
+<pre>
+&lt;pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
+    android:controlX1="0.4"
+    android:controlY1="0"
+    android:controlX2="1"
+    android:controlY2="1"/>
+</pre>
+
+<p>Sistem menyediakan sumber daya XML untuk tiga kurva dasar dalam
+spesifikasi desain bahan:</p>
+
+<ul>
+  <li><code>&#64;interpolator/fast_out_linear_in.xml</code></li>
+  <li><code>&#64;interpolator/fast_out_slow_in.xml</code></li>
+  <li><code>&#64;interpolator/linear_out_slow_in.xml</code></li>
+</ul>
+
+<p>Anda bisa meneruskan objek {@link android.view.animation.PathInterpolator} ke metode {@link
+android.animation.Animator#setInterpolator Animator.setInterpolator()}.</p>
+
+<p>Kelas {@link android.animation.ObjectAnimator} memiliki konstruktor-konstruktor baru yang memungkinkan Anda menganimasikan
+koordinat bersama sebuah path dengan menggunakan dua atau beberapa properti sekaligus. Misalnya, animator berikut
+menggunakan objek {@link android.graphics.Path} untuk menganimasikan properti X dan Y sebuah tampilan:</p>
+
+<pre>
+ObjectAnimator mAnimator;
+mAnimator = ObjectAnimator.ofFloat(view, View.X, View.Y, path);
+...
+mAnimator.start();
+</pre>
+
+
+<h2 id="ViewState">Menganimasikan Perubahan Status Tampilan</h2>
+
+<p>Kelas {@link android.animation.StateListAnimator} memungkinkan Anda mendefinisikan animator yang berjalan bila
+status tampilan berubah. Contoh berikut menampilkan cara mendefinisikan {@link
+android.animation.StateListAnimator} sebagai sumber daya XML:</p>
+
+<pre>
+&lt;!-- animate the translationZ property of a view when pressed -->
+&lt;selector xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;item android:state_pressed="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="@android:integer/config_shortAnimTime"
+        android:valueTo="2dp"
+        android:valueType="floatType"/>
+        &lt;!-- you could have other objectAnimator elements
+             here for "x" and "y", or other properties -->
+    &lt;/set>
+  &lt;/item>
+  &lt;item android:state_enabled="true"
+    android:state_pressed="false"
+    android:state_focused="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="100"
+        android:valueTo="0"
+        android:valueType="floatType"/>
+    &lt;/set>
+  &lt;/item>
+&lt;/selector>
+</pre>
+
+<p>Untuk menyertakan animasi status tampilan custom ke tampilan, definisikan animator menggunakan
+elemen <code>selector</code> dalam sumber daya file XML sebagaimana dalam contoh ini, dan tetapkan ke
+tampilan Anda dengan atribut <code>android:stateListAnimator</code>. Untuk menetapkan animator daftar status
+ke sebuah tampilan dalam kode Anda, gunakan metode {@link android.animation.AnimatorInflater#loadStateListAnimator
+AnimationInflater.loadStateListAnimator()}, dan tetapkan animator ke tampilan dengan
+metode {@link android.view.View#setStateListAnimator View.setStateListAnimator()}.</p>
+
+<p>Bila tema Anda memperluas tema bahan, tombol-tombol akan memiliki animasi Z secara default. Untuk menghindari
+perilaku ini di tombol Anda, aturlah atribut <code>android:stateListAnimator</code> ke
+<code>@null</code>.</p>
+
+<p>Kelas {@link android.graphics.drawable.AnimatedStateListDrawable} memungkinkan Anda membuat drawable
+yang menampilkan animasi di antara perubahan status tampilan terkait. Sebagian widget sistem di
+Android 5.0 menggunakan animasi ini secara default. Contoh berikut menampilkan cara
+mendefinisikan {@link android.graphics.drawable.AnimatedStateListDrawable} sebagai sumber daya XML:</p>
+
+<pre>
+&lt;!-- res/drawable/myanimstatedrawable.xml -->
+&lt;animated-selector
+    xmlns:android="http://schemas.android.com/apk/res/android">
+
+    &lt;!-- provide a different drawable for each state-->
+    &lt;item android:id="@+id/pressed" android:drawable="@drawable/drawableP"
+        android:state_pressed="true"/>
+    &lt;item android:id="@+id/focused" android:drawable="@drawable/drawableF"
+        android:state_focused="true"/>
+    &lt;item android:id="@id/default"
+        android:drawable="@drawable/drawableD"/>
+
+    &lt;!-- specify a transition -->
+    &lt;transition android:fromId="@+id/default" android:toId="@+id/pressed">
+        &lt;animation-list>
+            &lt;item android:duration="15" android:drawable="@drawable/dt1"/>
+            &lt;item android:duration="15" android:drawable="@drawable/dt2"/>
+            ...
+        &lt;/animation-list>
+    &lt;/transition>
+    ...
+&lt;/animated-selector>
+</pre>
+
+
+<h2 id="AnimVector">Menganimasikan Drawable Vektor</h2>
+
+<p><a href="{@docRoot}training/material/drawables.html#VectorDrawables">Drawable Vektor </a>
+bisa diubah skalanya tanpa kehilangan definisi. Kelas {@link android.graphics.drawable.AnimatedVectorDrawable}
+memungkinkan Anda menganimasikan properti drawable vektor.</p>
+
+<p>Anda biasanya mendefinisikan drawable vektor yang dianimasikan dalam tiga file XML:</p>
+
+<ul>
+<li>Drawable vektor dengan elemen <code>&lt;vector&gt;</code> dalam
+<code>res/drawable/</code></li>
+<li>Drawable vektor animasi dengan elemen <code>&lt;animated-vector&gt;</code> dalam
+<code>res/drawable/</code></li>
+<li>Satu atau beberapa animator objek dengan elemen <code>&lt;objectAnimator&gt;</code> dalam
+<code>res/anim/</code></li>
+</ul>
+
+<p>Drawable vektor yang dianimasikan bisa menganimasikan atribut elemen <code>&lt;group&gt;</code> dan
+<code>&lt;path&gt;</code>. Elemen <code>&lt;group&gt;</code> mendefinisikan satu set
+path atau subgrup, dan elemen <code>&lt;path&gt;</code> mendefinisikan path yang harus digambar.</p>
+
+<p>Bila Anda mendefinisikan drawable vektor yang ingin dianimasikan, gunakan atribut <code>android:name</code>
+untuk menetapkan nama unik ke grup dan path, sehingga Anda bisa merujuknya dari
+definisi animator Anda. Misalnya:</p>
+
+<pre>
+&lt;!-- res/drawable/vectordrawable.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="64dp"
+    android:width="64dp"
+    android:viewportHeight="600"
+    android:viewportWidth="600">
+    &lt;group
+        <strong>android:name="rotationGroup"</strong>
+        android:pivotX="300.0"
+        android:pivotY="300.0"
+        android:rotation="45.0" >
+        &lt;path
+            <strong>android:name="v"</strong>
+            android:fillColor="#000000"
+            android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
+    &lt;/group>
+&lt;/vector>
+</pre>
+
+<p>Definisi drawable vektor yang dianimasikan merujuk pada grup dan path dalam drawable vektor
+berdasarkan namanya:</p>
+
+<pre>
+&lt;!-- res/drawable/animvectordrawable.xml -->
+&lt;animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+  android:drawable="@drawable/vectordrawable" >
+    &lt;target
+        android:name="rotationGroup"
+        android:animation="@anim/rotation" />
+    &lt;target
+        android:name="v"
+        android:animation="@anim/path_morph" />
+&lt;/animated-vector>
+</pre>
+
+<p>Definisi animasi menyatakan objek {@link android.animation.ObjectAnimator} atau {@link
+android.animation.AnimatorSet}. Animator pertama dalam contoh ini memutar
+grup target sebanyak 360 derajat:</p>
+
+<pre>
+&lt;!-- res/anim/rotation.xml -->
+&lt;objectAnimator
+    android:duration="6000"
+    android:propertyName="rotation"
+    android:valueFrom="0"
+    android:valueTo="360" />
+</pre>
+
+<p>Animator kedua dalam contoh ini perlahan-lahan mengubah bentuk path drawable vektor dari satu bentuk ke
+bentuk yang lain. Kedua path harus kompatibel untuk morphing: keduanya harus memiliki jumlah perintah yang sama
+dan jumlah parameter yang sama untuk setiap perintah.</p>
+
+<pre>
+&lt;!-- res/anim/path_morph.xml -->
+&lt;set xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;objectAnimator
+        android:duration="3000"
+        android:propertyName="pathData"
+        android:valueFrom="M300,70 l 0,-70 70,70 0,0   -70,70z"
+        android:valueTo="M300,70 l 0,-70 70,0  0,140 -70,0 z"
+        android:valueType="pathType" />
+&lt;/set>
+</pre>
+
+<p>Untuk informasi selengkapnya, lihat referensi API bagi {@link
+android.graphics.drawable.AnimatedVectorDrawable}.</p>
diff --git a/docs/html-intl/intl/in/training/material/compatibility.jd b/docs/html-intl/intl/in/training/material/compatibility.jd
new file mode 100644
index 0000000..d57c7be
--- /dev/null
+++ b/docs/html-intl/intl/in/training/material/compatibility.jd
@@ -0,0 +1,168 @@
+page.title=Mempertahankan Kompatibilitas
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Pelajaran ini mengajarkan Anda cara</h2>
+<ol>
+  <li><a href="#Theme">Mendefinisikan Gaya Alternatif</a></li>
+  <li><a href="#Layouts">Menyediakan Layout Alternatif</a></li>
+  <li><a href="#SupportLib">Menggunakan Support Library</a></li>
+  <li><a href="#CheckVersion">Memeriksa Versi Sistem</a></li>
+</ol>
+<h2>Anda juga harus membaca</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Spesifikasi desain bahan</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Desain bahan di Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Sebagian fitur desain bahan seperti tema bahan dan transisi aktivitas custom
+hanya tersedia pada Android 5.0 (API level 21) ke atas. Akan tetapi, Anda bisa mendesain aplikasi untuk menggunakan
+fitur-fitur ini saat dijalankan pada perangkat yang mendukung desain bahan dan tetap kompatibel
+dengan perangkat yang menjalankan rilis Android sebelumnya.</p>
+
+
+<h2 id="Theme">Mendefinisikan Gaya Alternatif</h2>
+
+<p>Anda bisa mengonfigurasi aplikasi untuk menggunakan tema bahan pada perangkat yang mendukungnya dan mengembalikan
+ke tema lama pada perangkat yang menjalankan versi Android terdahulu:</p>
+
+<ol>
+<li>Definisikan tema yang mewarisi tema lama (seperti Holo) di
+    <code>res/values/styles.xml</code>.</li>
+<li>Definisikan tema bernama sama yang mewarisi tema bahan di
+    <code>res/values-v21/styles.xml</code>.</li>
+<li>Atur tema ini sebagai tema aplikasi Anda dalam file manifes.</li>
+</ol>
+
+<p class="note"><strong>Catatan:</strong>
+Jika aplikasi Anda menggunakan tema bahan namun tidak menyediakan tema alternatif dengan cara ini,
+aplikasi itu tidak akan berjalan pada versi Android sebelum 5.0.
+</p>
+
+
+<h2 id="Layouts">Menyediakan Layout Alternatif</h2>
+
+<p>Jika layout yang Anda desain sesuai dengan panduan desain bahan tidak menggunakan salah satu
+atribut XML baru yang diperkenalkan di Android 5.0 (API level 21), layout itu akan berfungsi pada
+versi Android sebelumnya. Jika tidak, Anda bisa menyediakan layout alternatif. Anda juga bisa menyediakan
+layout alternatif untuk menyesuaikan cara aplikasi ditampilkan pada versi Android terdahulu.</p>
+
+<p>Buatlah file layout untuk Android 5.0 (API level 21) dalam <code>res/layout-v21/</code> dan
+file layout alternatif untuk versi Android terdahulu dalam <code>res/layout/</code>.
+Misalnya, <code>res/layout/my_activity.xml</code> adalah layout alternatif untuk
+<code>res/layout-v21/my_activity.xml</code>.</p>
+
+<p>Untuk menghindari duplikasi kode, definisikan gaya dalam <code>res/values/</code>, modifikasi
+gaya di <code>res/values-v21/</code> untuk API baru, dan gunakan pewarisan gaya, dengan mendefinisikan
+gaya dasar di <code>res/values/</code> dan mewarisi gaya di <code>res/values-v21/</code>.</p>
+
+
+<h2 id="SupportLib">Menggunakan Support Library</h2>
+
+<p><a href="{@docRoot}tools/support-library/features.html#v7">v7 Support Library</a>
+r21 ke atas menyertakan fitur desain bahan berikut:</p>
+
+<ul>
+<li><a href="{@docRoot}training/material/theme.html">Gaya desain bahan</a> untuk beberapa widget sistem
+    bila Anda menerapkan salah satu tema <code>Theme.AppCompat</code>.</li>
+<li><a href="{@docRoot}training/material/theme.html#ColorPalette">Atribut tema palet warna</a>
+    dalam tema <code>Theme.AppCompat</code>.</li>
+<li>Widget {@link android.support.v7.widget.RecyclerView} untuk <a href="{@docRoot}training/material/lists-cards.html#RecyclerView">
+menampilkan kumpulan data.</a></li>
+<li>Widget {@link android.support.v7.widget.CardView} untuk <a href="{@docRoot}training/material/lists-cards.html#CardView">membuat kartu</a>.</li>
+<li>Kelas {@link android.support.v7.graphics.Palette} untuk <a href="{@docRoot}training/material/drawables.html#ColorExtract">mengekstrak warna mencolok dari
+    gambar</a>.</li>
+</ul>
+
+<h3>Widget sistem</h3>
+
+<p>Tema-tema <code>Theme.AppCompat</code> menyediakan gaya desain bahan untuk widget ini:</p>
+
+<ul>
+  <li>{@link android.widget.EditText}</li>
+  <li>{@link android.widget.Spinner}</li>
+  <li>{@link android.widget.CheckBox}</li>
+  <li>{@link android.widget.RadioButton}</li>
+  <li>{@link android.support.v7.widget.SwitchCompat}</li>
+  <li>{@link android.widget.CheckedTextView}</li>
+</ul>
+
+<h3>Palet Warna</h3>
+
+<p>Untuk memperoleh gaya desain bahan dan menyesuaikan palet warna dengan Android v7 Support
+Library, terapkan salah satu tema <code>Theme.AppCompat</code>:</p>
+
+<pre>
+&lt;!-- extend one of the Theme.AppCompat themes -->
+&lt;style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
+    &lt;!-- customize the color palette -->
+    &lt;item name="colorPrimary">@color/material_blue_500&lt;/item>
+    &lt;item name="colorPrimaryDark">@color/material_blue_700&lt;/item>
+    &lt;item name="colorAccent">@color/material_green_A200&lt;/item>
+&lt;/style>
+</pre>
+
+<h3>Daftar dan Kartu</h3>
+
+<p>Widget {@link android.support.v7.widget.RecyclerView} dan {@link
+android.support.v7.widget.CardView} tersedia di versi Android terdahulu melalui
+Android v7 Support Library dengan pembatasan ini:</p>
+<ul>
+<li>{@link android.support.v7.widget.CardView} memundurkan ke implementasi bayangan terprogram
+    dengan menggunakan pengisi tambahan.</li>
+<li>{@link android.support.v7.widget.CardView} tidak memangkas tampilan anaknya yang berpotongan
+    dengan sudut melengkung.</li>
+</ul>
+
+
+<h3>Dependensi</h3>
+
+<p>Untuk menggunakan fitur-fitur ini di versi Android sebelum 5.0 (API level 21), sertakan
+Android v7 Support Library dalam proyek Anda sebagai <a href="{@docRoot}/sdk/installing/studio-build.html#dependencies">dependensi Gradle</a>:</p>
+
+<pre>
+dependencies {
+    compile 'com.android.support:appcompat-v7:21.0.+'
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
+
+
+<h2 id="CheckVersion">Memeriksa Versi Sistem</h2>
+
+<p>Fitur berikut hanya tersedia di Android 5.0 (API level 21) ke atas:</p>
+
+<ul>
+<li>Transisi aktivitas</li>
+<li>Umpan balik sentuh</li>
+<li>Animasi membuka</li>
+<li>Animasi berbasis path</li>
+<li>Drawable vektor</li>
+<li>Pewarnaan drawable</li>
+</ul>
+
+<p>Untuk menjaga kompatibilitas dengan versi Android terdahulu, periksa {@link
+android.os.Build.VERSION#SDK_INT version} sistem saat runtime sebelum Anda memanggil API untuk salah satu
+fitur ini:</p>
+
+<pre>
+// Check if we're running on Android 5.0 or higher
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+    // Call some material design APIs here
+} else {
+    // Implement this feature without material design
+}
+</pre>
+
+<p class="note"><strong>Catatan:</strong> Untuk menetapkan versi Android yang didukung aplikasi Anda,
+gunakan atribut <code>android:minSdkVersion</code> dan <code>android:targetSdkVersion</code>
+dalam file manifes. Untuk menggunakan fitur desain bahan di Android 5.0, atur
+atribut <code>android:targetSdkVersion</code> ke <code>21</code>. Untuk informasi selengkapnya, lihat
+panduan <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">API
+&lt;uses-sdk&gt;</a>.</p>
diff --git a/docs/html-intl/intl/in/training/material/drawables.jd b/docs/html-intl/intl/in/training/material/drawables.jd
new file mode 100644
index 0000000..56fd17f
--- /dev/null
+++ b/docs/html-intl/intl/in/training/material/drawables.jd
@@ -0,0 +1,126 @@
+page.title=Bekerja dengan Drawable
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Pelajaran ini mengajarkan Anda cara</h2>
+<ol>
+  <li><a href="#DrawableTint">Mewarnai Sumber Daya Drawable</a></li>
+  <li><a href="#ColorExtract">Mengekstrak Warna Mencolok dari Gambar</a></li>
+  <li><a href="#VectorDrawables">Membuat Drawable Vektor</a></li>
+</ol>
+<h2>Anda juga harus membaca</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Spesifikasi desain bahan</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Desain bahan di Android</a></li>
+</ul>
+</div>
+</div>
+
+<p>Kemampuan berikut untuk drawable membantu Anda mengimplementasikan desain bahan dalam aplikasi Anda:</p>
+
+<ul>
+<li>Pewarnaan drawable</li>
+<li>Ekstraksi warna mencolok</li>
+<li>Drawable vektor</li>
+</ul>
+
+<p>Pelajaran ini menampilkan cara menggunakan fitur-fitur ini dalam aplikasi Anda.</p>
+
+
+<h2 id="DrawableTint">Mewarnai Sumber Daya Drawable</h2>
+
+<p>Dengan Android 5.0 (API level 21) ke atas, Anda bisa mewarnai bitmap dan sembilan-tambalan yang didefinisikan sebagai
+alpha-mask. Anda bisa mewarnainya dengan sumber daya warna atau atribut tema yang mencocokkan ke
+sumber daya warna (misalnya, <code>?android:attr/colorPrimary</code>). Biasanya, Anda membuat aset ini
+hanya sekali dan mewarnainya secara otomatis agar cocok dengan tema Anda.</p>
+
+<p>Anda bisa menerapkan warna ke objek {@link android.graphics.drawable.BitmapDrawable} atau {@link
+android.graphics.drawable.NinePatchDrawable} dengan metode {@code setTint()}. Anda juga bisa
+mengatur warna dan mode dalam layout dengan atribut <code>android:tint</code> dan
+<code>android:tintMode</code>.</p>
+
+
+<h2 id="ColorExtract">Mengekstrak Warna Mencolok dari Gambar</h2>
+
+<p>Android Support Library r21 ke atas menyertakan kelas {@link
+android.support.v7.graphics.Palette}, yang memungkinkan Anda mengekstrak warna mencolok dari gambar.
+Kelas ini mengekstrak warna mencolok berikut:</p>
+
+<ul>
+<li>Menyala</li>
+<li>Menyala pekat</li>
+<li>Menyala pucat</li>
+<li>Pudar</li>
+<li>Pudar pekat</li>
+<li>Pudar pucat</li>
+</ul>
+
+<p>Untuk mengekstrak warna-warna ini, teruskan objek {@link android.graphics.Bitmap} ke
+metode statis {@link android.support.v7.graphics.Palette#generate Palette.generate()} dalam
+thread latar belakang tempat Anda memuat gambar. Jika Anda tidak bisa menggunakan thread itu, panggil metode
+{@link android.support.v7.graphics.Palette#generateAsync Palette.generateAsync()} dan
+sediakan listener sebagai gantinya.</p>
+
+<p>Anda bisa mengambil warna mencolok dari gambar dengan metode getter di kelas
+<code>Palette</code>, misalnya <code>Palette.getVibrantColor</code>.</p>
+
+<p>Untuk menggunakan kelas {@link android.support.v7.graphics.Palette} dalam proyek Anda, tambahkan 
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">dependensi Gradle</a> berikut ke
+modul aplikasi Anda:</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:palette-v7:21.0.0'
+}
+</pre>
+
+<p>Untuk informasi selengkapnya, lihat referensi API untuk kelas {@link android.support.v7.graphics.Palette}.
+</p>
+
+
+<h2 id="VectorDrawables">Membuat Drawable Vektor</h2>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=wlFVIIstKmA" style="margin-top:18px">
+<div>
+    <h3>Video</h3>
+    <p>Grafis Vektor Android</p>
+</div>
+</a>
+
+<p>Di Android 5.0 (API Level 21) ke atas, Anda bisa mendefinisikan drawable vektor, yang berubah skala tanpa
+kehilangan definisi. Anda hanya memerlukan satu file aset per gambar vektor, bukan file aset untuk
+setiap densitas layar seperti pada gambar bitmap. Untuk membuat gambar vektor, Anda mendefinisikan detail
+bentuknya dalam sebuah elemen XML <code>&lt;vector&gt;</code>.</p>
+
+<p>Contoh berikut mendefinisikan gambar vektor berbentuk hati:</p>
+
+<pre>
+&lt;!-- res/drawable/heart.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    &lt;!-- intrinsic size of the drawable -->
+    android:height="256dp"
+    android:width="256dp"
+    &lt;!-- size of the virtual canvas -->
+    android:viewportWidth="32"
+    android:viewportHeight="32">
+
+  &lt;!-- draw a path -->
+  &lt;path android:fillColor="#8fff"
+      android:pathData="M20.5,9.5
+                        c-1.955,0,-3.83,1.268,-4.5,3
+                        c-0.67,-1.732,-2.547,-3,-4.5,-3
+                        C8.957,9.5,7,11.432,7,14
+                        c0,3.53,3.793,6.257,9,11.5
+                        c5.207,-5.242,9,-7.97,9,-11.5
+                        C25,11.432,23.043,9.5,20.5,9.5z" />
+&lt;/vector>
+</pre>
+
+<p>Gambar vektor direpresentasikan di Android sebagai objek {@link android.graphics.drawable.VectorDrawable}.
+ Untuk informasi selengkapnya tentang sintaks <code>pathData</code>, lihat <a href="http://www.w3.org/TR/SVG11/paths.html#PathData">Referensi Path SVG</a>. Untuk informasi selengkapnya
+tentang menganimasikan properti drawable vektor, lihat
+<a href="{@docRoot}training/material/animations.html#AnimVector">Menganimasikan Drawable Vektor</a>.</p>
diff --git a/docs/html-intl/intl/in/training/material/get-started.jd b/docs/html-intl/intl/in/training/material/get-started.jd
new file mode 100644
index 0000000..1a551a9
--- /dev/null
+++ b/docs/html-intl/intl/in/training/material/get-started.jd
@@ -0,0 +1,171 @@
+page.title=Memulai
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Pelajaran ini mengajarkan Anda cara</h2>
+<ol>
+  <li><a href="#ApplyTheme">Menerapkan Tema Bahan</a></li>
+  <li><a href="#Layouts">Mendesain Layout Anda</a></li>
+  <li><a href="#Depth">Menetapkan Ketinggian di Tampilan Anda</a></li>
+  <li><a href="#ListsCards">Membuat Daftar dan Kartu</a></li>
+  <li><a href="#Animations">Menyesuaikan Animasi Anda</a></li>
+</ol>
+<h2>Anda juga harus membaca</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Spesifikasi desain bahan</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Desain bahan di Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Untuk membuat aplikasi dengan desain bahan:</p>
+
+<ol>
+  <li style="margin-bottom:10px">
+    Tinjaulah <a href="http://www.google.com/design/spec">spesifikasi desain bahan</a>.</li>
+  <li style="margin-bottom:10px">
+    Terapkan <strong>tema</strong> bahan ke aplikasi Anda.</li>
+  <li style="margin-bottom:10px">
+    Buat <strong>layout</strong> agar mengikuti panduan desain bahan.</li>
+  <li style="margin-bottom:10px">
+    Tetapkan <strong>ketinggian</strong> tampilan Anda untuk menghasilkan bayangan.</li>
+  <li style="margin-bottom:10px">
+    Gunakan <strong>widget</strong> sistem untuk daftar dan kartu.</li>
+  <li style="margin-bottom:10px">
+    Sesuaikan <strong>animasi</strong> di aplikasi Anda.</li>
+</ol>
+
+<h3>Mempertahankan kompatibilitas mundur</h3>
+
+<p>Anda bisa menambahkan banyak fitur desain bahan ke aplikasi sekaligus mempertahankan kompatibilitas dengan
+versi Android sebelum 5.0. Untuk informasi selengkapnya, lihat
+<a href="{@docRoot}training/material/compatibility.html">Mempertahankan Kompatibilitas</a>.</p>
+
+<h3>Memperbarui aplikasi dengan desain bahan</h3>
+
+<p>Untuk memperbarui aplikasi yang ada guna memasukkan desain bahan, perbarui layout Anda dengan mengikuti
+panduan desain bahan. Juga pastikan memasukkan kedalaman, umpan balik sentuh, dan
+animasi.</p>
+
+<h3>Membuat aplikasi baru dengan desain bahan</h3>
+
+<p>Jika Anda sedang membuat aplikasi baru dengan fitur desain bahan, <a href="http://www.google.com/design/spec">panduan desain bahan</a> akan memberi Anda
+kerangka kerja desain yang kohesif. Ikuti panduan itu dan gunakan fungsionalitas baru di
+kerangka kerja Android untuk mendesain dan mengembangkan aplikasi Anda.</p>
+
+
+<h2 id="ApplyTheme">Menerapkan Tema Bahan</h2>
+
+<p>Untuk menerapkan tema bahan dalam aplikasi Anda, tetapkan gaya yang mewarisi
+<code>android:Theme.Material</code>:</p>
+
+<pre>
+&lt;!-- res/values/styles.xml -->
+&lt;resources>
+  &lt;!-- your theme inherits from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- theme customizations -->
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<p>Tema bahan menyediakan widget sistem terbaru yang memungkinkan Anda mengatur palet warnanya dan
+animasi default untuk umpan balik sentuh dan transisi aktivitas. Untuk detail selengkapnya, lihat
+<a href="{@docRoot}training/material/theme.html">Menggunakan Tema Bahan</a>.</p>
+
+
+<h2 id="Layouts">Mendesain Layout Anda</h2>
+
+<p>Selain menerapkan dan menyesuaikan tema bahan, layout Anda harus mematuhi
+<a href="http://www.google.com/design/spec">panduan desain bahan</a>. Bila Anda mendesain
+layout, berikan perhatian khusus pada hal-hal berikut:</p>
+
+<ul>
+<li>Petak patokan</li>
+<li>Garis utama</li>
+<li>Pengaturan Jarak</li>
+<li>Ukuran target sentuh</li>
+<li>Struktur layout</li>
+</ul>
+
+
+<h2 id="Depth">Menetapkan Ketinggian di Tampilan Anda</h2>
+
+<p>Tampilan bisa menghasilkan bayangan, dan nilai ketinggian tampilan
+menentukan ukuran bayangan dan urutan penggambarannya. Untuk mengatur ketinggian tampilan, gunakan
+atribut <code>android:elevation</code> dalam layout:</p>
+
+<pre>
+&lt;TextView
+    android:id="&#64;+id/my_textview"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="&#64;string/next"
+    android:background="&#64;color/white"
+    android:elevation="5dp" />
+</pre>
+
+<p>Properti <code>translationZ</code> baru memungkinkan Anda membuat animasi yang mencerminkan
+perubahan sementara pada ketinggian tampilan. Perubahan ketinggian bisa berguna saat
+<a href="{@docRoot}training/material/animations.html#ViewState">merespons
+gerakan sentuh</a>.</p>
+
+<p>Untuk detail selengkapnya, lihat <a href="{@docRoot}training/material/shadows-clipping.html">Mendefinisikan
+Bayangan dan Memangkas Tampilan</a>.</p>
+
+
+<h2 id="ListsCards">Membuat Daftar dan Kartu</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} adalah versi {@link
+android.widget.ListView} yang lebih mudah dimasukkan dan mendukung beragam tipe layout serta memberikan peningkatan kinerja.
+{@link android.support.v7.widget.CardView} memungkinkan Anda menampilkan potongan informasi dalam kartu dengan
+tampilan konsisten di seluruh aplikasi. Contoh kode berikut memperagakan cara menyertakan
+{@link android.support.v7.widget.CardView} dalam layout Anda:</p>
+
+<pre>
+&lt;android.support.v7.widget.CardView
+    android:id="&#64;+id/card_view"
+    android:layout_width="200dp"
+    android:layout_height="200dp"
+    card_view:cardCornerRadius="3dp">
+    ...
+&lt;/android.support.v7.widget.CardView>
+</pre>
+
+<p>Untuk informasi selengkapnya, lihat <a href="{@docRoot}training/material/lists-cards.html">Membuat Daftar
+dan Kartu</a>.</p>
+
+
+<h2 id="Animations">Menyesuaikan Animasi Anda</h2>
+
+<p>Android 5.0 (API level 21) menyertakan API baru untuk membuat animasi custom di aplikasi Anda.
+Misalnya, Anda bisa mengaktifkan transisi aktivitas dan mendefinisikan transisi keluar di
+aktivitas:</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // enable transitions
+        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+        setContentView(R.layout.activity_my);
+    }
+
+    public void onSomeButtonClicked(View view) {
+        getWindow().setExitTransition(new Explode());
+        Intent intent = new Intent(this, MyOtherActivity.class);
+        startActivity(intent,
+                      ActivityOptions
+                          .makeSceneTransitionAnimation(this).toBundle());
+    }
+}
+</pre>
+
+<p>Bila Anda memulai aktivitas lain dari aktivitas ini, transisi keluar akan diaktifkan.</p>
+
+<p>Untuk mengetahui selengkapnya tentang API animasi yang baru, lihat <a href="{@docRoot}training/material/animations.html">Mendefinisikan Animasi Custom</a>.</p>
diff --git a/docs/html-intl/intl/in/training/material/index.jd b/docs/html-intl/intl/in/training/material/index.jd
new file mode 100644
index 0000000..53697d2
--- /dev/null
+++ b/docs/html-intl/intl/in/training/material/index.jd
@@ -0,0 +1,60 @@
+page.title=Desain Bahan untuk Pengembang
+page.image=images/cards/material_2x.png
+page.metaDescription=Pelajari cara menerapkan desain bahan pada aplikasi Anda.
+
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>Dependensi dan Prasyarat</h2>
+  <ul>
+    <li>Android 5.0 (API Level 21)</li>
+  </ul>
+</div>
+</div>
+
+<p>Desain bahan adalah panduan komprehensif untuk desain visual, gerak, dan interaksi di
+berbagai platform dan perangkat. Untuk menggunakan desain bahan di aplikasi Android, ikuti panduan
+yang dijelaskan dalam
+<a href="http://www.google.com/design/spec/material-design/introduction.html">spesifikasi desain bahan
+</a> dan gunakan komponen serta fungsionalitas baru yang tersedia di Android 5.0
+(API level 21).</p>
+
+<p>Kelas ini menampilkan kepada Anda cara membuat aplikasi desain bahan dengan elemen-elemen berikut:</p>
+
+<ul>
+<li>Tema bahan</li>
+<li>Widget untuk kartu dan daftar</li>
+<li>Bayangan custom dan pemangkasan tampilan</li>
+<li>Drawable vektor</li>
+<li>Animasi custom</li>
+</ul>
+
+<p>Kelas ini juga mengajarkan cara mempertahankan kompatibilitas dengan versi Android sebelum
+5.0 (API level 21) bila Anda menggunakan fitur desain bahan dalam aplikasi.</p>
+
+<h2>Pelajaran</h2>
+
+<dl>
+  <dt><a href="{@docRoot}training/material/get-started.html">Memulai</a></dt>
+  <dd>Pelajari cara memperbarui aplikasi Anda dengan fitur desain bahan.</dd>
+
+  <dt><a href="{@docRoot}training/material/theme.html">Menggunakan Tema Bahan</a></dt>
+  <dd>Pelajari cara menerapkan gaya desain bahan pada aplikasi Anda.</dd>
+
+  <dt><a href="{@docRoot}training/material/lists-cards.html">Membuat Daftar dan Kartu</a></dt>
+  <dd>Pelajari cara membuat daftar dan kartu dengan tampilan dan cara kerja yang konsisten menggunakan widget sistem.</dd>
+
+  <dt><a href="{@docRoot}training/material/shadows-clipping.html">Mendefinisikan Bayangan dan Memangkas Tampilan</a></dt>
+  <dd>Pelajari cara mengatur elevasi tampilan Anda untuk membuat bayangan custom dan cara memangkas tampilan.</dd>
+
+  <dt><a href="{@docRoot}training/material/drawables.html">Bekerja dengan Drawable</a></dt>
+  <dd>Pelajari cara membuat drawable vektor dan cara mewarnai sumber daya drawable.</dd>
+
+  <dt><a href="{@docRoot}training/material/animations.html">Mendefinisikan Animasi Custom</a></dt>
+  <dd>Pelajari cara membuat animasi custom untuk tampilan dan transisi aktivitas dengan elemen bersama.</dd>
+
+  <dt><a href="{@docRoot}training/material/compatibility.html">Mempertahankan Kompatibilitas</a></dt>
+  <dd>Pelajari cara mempertahankan kompatibilitas dengan versi platform sebelum Android 5.0.</dd>
+</dl>
diff --git a/docs/html-intl/intl/in/training/material/lists-cards.jd b/docs/html-intl/intl/in/training/material/lists-cards.jd
new file mode 100644
index 0000000..358f1d1
--- /dev/null
+++ b/docs/html-intl/intl/in/training/material/lists-cards.jd
@@ -0,0 +1,266 @@
+page.title=Membuat Daftar dan Kartu
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Pelajaran ini mengajarkan Anda cara</h2>
+<ol>
+  <li><a href="#RecyclerView">Membuat Daftar</a></li>
+  <li><a href="#CardView">Membuat Kartu</a></li>
+  <li><a href="#Dependencies">Menambahkan Dependensi</a></li>
+</ol>
+<h2>Anda juga harus membaca</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Spesifikasi desain bahan</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Desain bahan di Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Untuk membuat daftar dan kartu yang kompleks dengan gaya desain bahan di aplikasi, Anda bisa menggunakan widget
+{@link android.support.v7.widget.RecyclerView} dan {@link android.support.v7.widget.CardView}.
+</p>
+
+
+<h2 id="RecyclerView">Membuat Daftar</h2>
+
+<p>Widget {@link android.support.v7.widget.RecyclerView} adalah
+versi {@link android.widget.ListView} yang lebih maju dan fleksibel. Widget ini adalah kontainer untuk menampilkan set data
+besar yang bisa digulir secara sangat efisien dengan mempertahankan tampilan dalam jumlah terbatas. Gunakan
+widget {@link android.support.v7.widget.RecyclerView} bila Anda memiliki kumpulan data dengan elemen
+yang berubah saat runtime berdasarkan tindakan pengguna atau kejadian jaringan.</p>
+
+<p>Kelas {@link android.support.v7.widget.RecyclerView} menyederhanakan penampilan dan penanganan
+set data yang besar dengan menyediakan:</p>
+
+<ul>
+  <li>Pengelola layout untuk memosisikan item</li>
+  <li>Animasi default untuk operasi item umum, misalnya penghapusan atau penambahan item</li>
+</ul>
+
+<p>Anda juga memiliki keluwesan untuk mendefinisikan pengelola layout custom dan animasi untuk widget {@link
+android.support.v7.widget.RecyclerView}.</p>
+
+<img src="{@docRoot}training/material/images/RecyclerView.png" alt="" width="550" height="106" />
+<p class="img-caption">
+<strong>Gambar 1</strong>. Widget <code>RecyclerView</code>.
+</p>
+
+<p>Untuk menggunakan widget {@link android.support.v7.widget.RecyclerView}, Anda harus menetapkan
+adaptor dan pengelola layout. Untuk membuat adaptor, perluas kelas {@link
+android.support.v7.widget.RecyclerView.Adapter RecyclerView.Adapter}. Detail
+implementasi bergantung pada detail set data Anda dan tipe tampilan. Untuk informasi selengkapnya,
+ lihat <a href="#RVExamples">contoh-contoh</a> di bawah.</p>
+
+<div style="float:right">
+<img src="{@docRoot}design/material/images/list_mail.png" alt="" width="250" height="426" />
+<p class="img-caption" style="margin-left:8px">
+<strong>Gambar 2</strong> - Daftar berisi <code>RecyclerView</code>.
+</p>
+</div>
+
+<p><strong>Pengelola layout</strong> memosisikan tampilan item dalam {@link
+android.support.v7.widget.RecyclerView} dan menentukan waktu untuk menggunakan ulang tampilan item yang tidak
+lagi terlihat oleh pengguna. Untuk menggunakan ulang (atau <em>mendaur ulang</em>) tampilan, pengelola layout bisa meminta
+adaptor untuk mengganti konten tampilan dengan elemen lain dalam dataset. Mendaur ulang
+tampilan dengan cara ini akan meningkatkan kinerja karena menghindari pembuatan tampilan yang tidak diperlukan atau
+melakukan pencarian {@link android.app.Activity#findViewById findViewById()} yang mahal.</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} menyediakan semua pengelola layout bawaan ini:</p>
+
+<ul>
+<li>{@link android.support.v7.widget.LinearLayoutManager} menampilkan item dalam
+daftar gulir vertikal atau horizontal.</li>
+<li>{@link android.support.v7.widget.GridLayoutManager} menampilkan item dalam petak.</li>
+<li>{@link android.support.v7.widget.StaggeredGridLayoutManager} menampilkan item dalam petak zigzag.</li>
+</ul>
+
+<p>Untuk membuat pengelola layout custom, perluas kelas {@link
+android.support.v7.widget.RecyclerView.LayoutManager RecyclerView.LayoutManager}.</p>
+
+<h3>Animasi</h3>
+
+<p>Animasi untuk menambahkan dan menghapus item diaktifkan secara default di {@link
+android.support.v7.widget.RecyclerView}. Untuk menyesuaikan animasi ini, perluas kelas 
+{@link android.support.v7.widget.RecyclerView.ItemAnimator RecyclerView.ItemAnimator}dan gunakan
+metode {@link android.support.v7.widget.RecyclerView#setItemAnimator RecyclerView.setItemAnimator()}.
+</p>
+
+<h3 id="RVExamples">Contoh</h3>
+
+<p>Contoh kode berikut memperagakan cara menambahkan
+{@link android.support.v7.widget.RecyclerView} ke layout:</p>
+
+<pre>
+&lt;!-- A RecyclerView with some commonly used attributes -->
+&lt;android.support.v7.widget.RecyclerView
+    android:id="@+id/my_recycler_view"
+    android:scrollbars="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
+</pre>
+
+<p>Begitu Anda menambahkan widget {@link android.support.v7.widget.RecyclerView} ke layout,
+dapatkan pengatur atau handle objek itu, hubungkan dengan pengelola layout, dan sertakan adaptor untuk data
+yang akan ditampilkan:</p>
+
+<pre>
+public class MyActivity extends Activity {
+    private RecyclerView mRecyclerView;
+    private RecyclerView.Adapter mAdapter;
+    private RecyclerView.LayoutManager mLayoutManager;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.my_activity);
+        mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);
+
+        // use this setting to improve performance if you know that changes
+        // in content do not change the layout size of the RecyclerView
+        mRecyclerView.setHasFixedSize(true);
+
+        // use a linear layout manager
+        mLayoutManager = new LinearLayoutManager(this);
+        mRecyclerView.setLayoutManager(mLayoutManager);
+
+        // specify an adapter (see also next example)
+        mAdapter = new MyAdapter(myDataset);
+        mRecyclerView.setAdapter(mAdapter);
+    }
+    ...
+}
+</pre>
+
+<p>Adaptor menyediakan akses ke item dataset Anda, membuat tampilan untuk item, dan
+mengganti konten sebagian tampilan dengan item data baru bila item semula tidak lagi
+terlihat. Contoh kode berikut menampilkan implementasi sederhana untuk sebuah dataset yang terdiri dari
+larik string yang ditampilkan dengan menggunakan widget {@link android.widget.TextView}:</p>
+
+<pre>
+public class MyAdapter extends RecyclerView.Adapter&lt;MyAdapter.ViewHolder> {
+    private String[] mDataset;
+
+    // Provide a reference to the views for each data item
+    // Complex data items may need more than one view per item, and
+    // you provide access to all the views for a data item in a view holder
+    public static class ViewHolder extends RecyclerView.ViewHolder {
+        // each data item is just a string in this case
+        public TextView mTextView;
+        public ViewHolder(TextView v) {
+            super(v);
+            mTextView = v;
+        }
+    }
+
+    // Provide a suitable constructor (depends on the kind of dataset)
+    public MyAdapter(String[] myDataset) {
+        mDataset = myDataset;
+    }
+
+    // Create new views (invoked by the layout manager)
+    &#64;Override
+    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
+                                                   int viewType) {
+        // create a new view
+        View v = LayoutInflater.from(parent.getContext())
+                               .inflate(R.layout.my_text_view, parent, false);
+        // set the view's size, margins, paddings and layout parameters
+        ...
+        ViewHolder vh = new ViewHolder(v);
+        return vh;
+    }
+
+    // Replace the contents of a view (invoked by the layout manager)
+    &#64;Override
+    public void onBindViewHolder(ViewHolder holder, int position) {
+        // - get element from your dataset at this position
+        // - replace the contents of the view with that element
+        holder.mTextView.setText(mDataset[position]);
+
+    }
+
+    // Return the size of your dataset (invoked by the layout manager)
+    &#64;Override
+    public int getItemCount() {
+        return mDataset.length;
+    }
+}
+</pre>
+
+
+<div style="float:right;margin-top:15px;margin-left:30px">
+<img src="{@docRoot}design/material/images/card_travel.png" alt="" width="225" height="383">
+<p class="img-caption" style="margin-left:12px">
+<strong>Gambar 3</strong>. Contoh kartu.
+</p>
+</div>
+
+<h2 id="CardView">Membuat Kartu</h2>
+
+<p>{@link android.support.v7.widget.CardView} memperluas kelas {@link android.widget.FrameLayout}
+dan memungkinkan Anda menampilkan informasi dalam kartu yang memiliki tampilan konsisten lintas platform. Widget {@link
+android.support.v7.widget.CardView} bisa memiliki bayangan dan sudut membulat.</p>
+
+<p>Untuk membuat kartu dengan bayangan, gunakan atribut <code>card_view:cardElevation</code>.
+{@link android.support.v7.widget.CardView} menggunakan elevasi nyata dan bayangan dinamis pada Android 5.0
+(API level 21) ke atas dan memundurkan ke implementasi bayangan terprogram pada versi terdahulu.
+Untuk informasi selengkapnya, lihat <a href="{@docRoot}training/material/compatibility.html">Mempertahankan
+Kompatibilitas</a>.</p>
+
+<p>Gunakan properti-properti ini untuk menyesuaikan penampilan
+widget {@link android.support.v7.widget.CardView}:</p>
+
+<ul>
+  <li>Untuk mengatur radius sudut pada layout Anda, gunakan atribut <code>card_view:cardCornerRadius</code>.
+</li>
+  <li>Untuk mengatur radius sudut dalam kode Anda, gunakan metode <code>CardView.setRadius</code>.</li>
+  <li>Untuk mengatur warna latar belakang kartu, gunakan atribut <code>card_view:cardBackgroundColor</code>.
+</li>
+</ul>
+
+<p>Contoh kode berikut menampilkan cara menyertakan widget {@link android.support.v7.widget.CardView}
+dalam layout:</p>
+
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    xmlns:card_view="http://schemas.android.com/apk/res-auto"
+    ... >
+    &lt;!-- A CardView that contains a TextView -->
+    &lt;android.support.v7.widget.CardView
+        xmlns:card_view="http://schemas.android.com/apk/res-auto"
+        android:id="@+id/card_view"
+        android:layout_gravity="center"
+        android:layout_width="200dp"
+        android:layout_height="200dp"
+        card_view:cardCornerRadius="4dp">
+
+        &lt;TextView
+            android:id="@+id/info_text"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+    &lt;/android.support.v7.widget.CardView>
+&lt;/LinearLayout>
+</pre>
+
+<p>Untuk informasi selengkapnya, lihat referensi API untuk {@link android.support.v7.widget.CardView}.</p>
+
+
+<h2 id="Dependencies">Menambahkan Dependensi</h2>
+
+<p>Widget {@link android.support.v7.widget.RecyclerView} dan {@link android.support.v7.widget.CardView}
+adalah bagian dari <a href="{@docRoot}tools/support-library/features.html#v7">v7 Support
+Library</a>. Untuk menggunakan widget dalam proyek Anda, tambahkan 
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">dependensi Gradle</a> ini ke
+modul aplikasi Anda:</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
diff --git a/docs/html-intl/intl/in/training/material/shadows-clipping.jd b/docs/html-intl/intl/in/training/material/shadows-clipping.jd
new file mode 100644
index 0000000..5431926
--- /dev/null
+++ b/docs/html-intl/intl/in/training/material/shadows-clipping.jd
@@ -0,0 +1,133 @@
+page.title=Mendefinisikan Bayangan dan Memangkas Tampilan
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Pelajaran ini mengajarkan Anda cara</h2>
+<ol>
+  <li><a href="#Elevation">Menetapkan Elevasi pada Tampilan Anda</a></li>
+  <li><a href="#Shadows">Menyesuaikan Bayangan dan Garis Luar Tampilan</a></li>
+  <li><a href="#Clip">Memangkas Tampilan</a></li>
+</ol>
+<h2>Anda juga harus membaca</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Spesifikasi desain bahan</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Desain bahan di Android</a></li>
+</ul>
+</div>
+</div>
+
+<p>Desain bahan memperkenalkan elevasi untuk elemen-elemen UI. Elevasi membantu pengguna memahami
+arti penting relatif masing-masing elemen dan memfokuskan perhatian pada tugas yang ada.</p>
+
+<p>Elevasi tampilan, yang dinyatakan dengan properti Z, menentukan tampilan visual
+bayangannya: tampilan dengan nilai Z lebih tinggi menghasilkan bayangan lebih besar dan lebih halus. Tampilan dengan nilai Z lebih tinggi menutupi
+tampilan dengan nilai Z lebih rendah; akan tetapi, nilai Z tampilan tidak memengaruhi ukuran tampilan.</p>
+
+<p>Bayangan digambar oleh induk tampilan yang dinaikkan, sehingga terkena pemangkasan standar tampilan,
+yang dipangkas oleh induk secara default.</p>
+
+<p>Elevasi juga berguna untuk membuat animasi tempat memunculkan widget untuk sementara di atas
+bidang tampilan saat melakukan beberapa tindakan.</p>
+
+<p>Untuk informasi selengkapnya tentang elevasi dalam desain bahan, lihat
+<a href="http://www.google.com/design/spec/what-is-material/objects-in-3d-space.html">Objek
+di ruang 3D</a>.</p>
+
+
+<h2 id="Elevation">Menetapkan Elevasi pada Tampilan Anda</h2>
+
+<p>Nilai Z untuk tampilan memiliki dua komponen:
+
+<ul>
+<li>Elevasi: Komponen statis.</li>
+<li>Transformasi: Komponen dinamis yang digunakan untuk animasi.</li>
+</ul>
+
+<p><code>Z = elevation + translationZ</code></p>
+
+<img src="{@docRoot}training/material/images/shadows-depth.png" width="580" height="261" alt="" />
+<p class="img-caption"><strong>Gambar 1</strong> - Bayangan untuk berbagai elevasi tampilan.</p>
+
+<p>Untuk mengatur elevasi tampilan dalam definisi layout, gunakan atribut <code>android:elevation</code>.
+ Untuk mengatur elevasi tampilan dalam kode aktivitas, gunakan
+metode {@link android.view.View#setElevation View.setElevation()}.</p>
+
+<p>Untuk mengatur transformasi tampilan, gunakan metode {@link android.view.View#setTranslationZ
+View.setTranslationZ()}.</p>
+
+<p>Metode {@link android.view.ViewPropertyAnimator#z ViewPropertyAnimator.z()} dan {@link
+android.view.ViewPropertyAnimator#translationZ ViewPropertyAnimator.translationZ()} yang baru memudahkan
+Anda menganimasikan elevasi tampilan. Untuk informasi selengkapnya, lihat referensi API untuk
+{@link android.view.ViewPropertyAnimator} dan panduan pengembang <a href="{@docRoot}guide/topics/graphics/prop-animation.html">Animasi Properti</a>.
+</p>
+
+<p>Anda juga bisa menggunakan {@link android.animation.StateListAnimator}
+untuk menetapkan animasi ini secara deklaratif. Ini khususnya berguna bila
+perubahan status memicu animasi, seperti saat seorang pengguna menekan tombol. Untuk informasi selengkapnya, lihat
+<a href="{@docRoot}training/material/animations.html#ViewState">Menganimasikan Perubahan Status Tampilan</a>.</p>
+
+<p>Nilai Z diukur dengan satuan dp (density-independent pixel).</p>
+
+
+<h2 id="Shadows">Menyesuaikan Bayangan dan Garis Luar Tampilan</h2>
+
+<p>Batas-batas drawable latar belakang tampilan menentukan bentuk default bayangannya.
+<strong>Garis luar</strong> menyatakan bentuk luar objek grafis dan mendefinisikan
+bidang riak untuk umpan balik sentuh.</p>
+
+<p>Perhatikan tampilan ini, yang didefinisikan dengan drawable latar belakang:</p>
+
+<pre>
+&lt;TextView
+    android:id="@+id/myview"
+    ...
+    android:elevation="2dp"
+    android:background="@drawable/myrect" />
+</pre>
+
+<p>Drawable latar belakang didefinisikan sebagai persegi panjang dengan sudut membulat:</p>
+
+<pre>
+&lt;!-- res/drawable/myrect.xml -->
+&lt;shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+    &lt;solid android:color="#42000000" />
+    &lt;corners android:radius="5dp" />
+&lt;/shape>
+</pre>
+
+<p>Tampilan ini menghasilkan bayangan dengan sudut membulat, karena drawable latar belakang mendefinisikan
+garis luar tampilan. Memberikan garis luar custom akan mengesampingkan bentuk default bayangan tampilan.</p>
+
+<p>Untuk mendefinisikan garis luar custom suatu tampilan dalam kode Anda:<p>
+
+<ol>
+<li>Perluas kelas {@link android.view.ViewOutlineProvider}.</li>
+<li>Kesampingkan metode {@link android.view.ViewOutlineProvider#getOutline getOutline()}.</li>
+<li>Tetapkan penyedia garis luar baru untuk tampilan Anda dengan metode {@link
+android.view.View#setOutlineProvider View.setOutlineProvider()}.</li>
+</ol>
+
+<p>Anda bisa membuat garis luar lonjong dan persegi panjang yang bersudut membulat dengan menggunakan metode dalam
+kelas {@link android.graphics.Outline}. Penyedia garis luar default untuk tampilan memperoleh garis luar
+dari latar belakang tampilan. Untuk mencegah tampilan menghasilkan bayangan, atur penyedia garis luarnya
+ke <code>null</code>.</p>
+
+
+<h2 id="Clip">Memangkas Tampilan</h2>
+
+<p>Memangkas tampilan memudahkan Anda mengubah bentuk tampilan. Anda bisa memangkas tampilan agar
+konsistensi dengan elemen desain lainnya atau mengubah bentuk tampilan untuk merespons input pengguna.
+Anda bisa memangkas tampilan hingga area garis luarnya dengan menggunakan metode {@link android.view.View#setClipToOutline
+View.setClipToOutline()} atau atribut <code>android:clipToOutline</code>. Hanya
+garis-garis luar persegi panjang, lingkaran, dan persegi panjang bersudut bulat yang mendukung pemangkasan, seperti yang ditentukan oleh
+metode {@link android.graphics.Outline#canClip Outline.canClip()}.</p>
+
+<p>Untuk memangkas tampilan ke bentuk drawable, atur drawable sebagai latar belakang tampilan
+(seperti yang ditampilkan di atas) dan panggil metode {@link android.view.View#setClipToOutline View.setClipToOutline()}.
+</p>
+
+<p>Memangkas tampilan adalah operasi yang mahal; jadi, jangan animasikan bentuk yang Anda gunakan
+untuk memangkas tampilan. Untuk memperoleh efek ini, gunakan animasi <a href="{@docRoot}training/material/animations.html#Reveal">Reveal Effect</a>.</p>
diff --git a/docs/html-intl/intl/in/training/material/theme.jd b/docs/html-intl/intl/in/training/material/theme.jd
new file mode 100644
index 0000000..5acdcd2
--- /dev/null
+++ b/docs/html-intl/intl/in/training/material/theme.jd
@@ -0,0 +1,131 @@
+page.title=Menggunakan Tema Bahan
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Pelajaran ini mengajarkan Anda cara</h2>
+<ol>
+  <li><a href="#ColorPalette">Menyesuaikan Palet Warna</a></li>
+  <li><a href="#StatusBar">Menyesuaikan Baris Status</a></li>
+  <li><a href="#Inheritance">Tampilan Setiap Tema</a></li>
+</ol>
+<h2>Anda juga harus membaca</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Spesifikasi desain bahan</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Desain bahan di Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Tema bahan yang baru menyediakan:</p>
+
+<ul>
+  <li>Widget sistem yang memungkinkan Anda mengatur palet warnanya</li>
+  <li>Animasi umpan balik sentuh untuk widget sistem</li>
+  <li>Animasi transisi aktivitas</li>
+</ul>
+
+<p>Anda bisa menyesuaikan tampilan tema bahan
+sesuai dengan identitas merek Anda dengan palet warna yang Anda kontrol. Anda bisa mewarnai action-bar dan
+baris status dengan menggunakan atribut tema, seperti yang ditampilkan dalam <a href="#fig3">Gambar 3</a>.</p>
+
+<p>Widget sistem memiliki desain baru dan animasi umpan balik sentuh. Anda bisa menyesuaikan
+palet warna, animasi umpan balik sentuh, dan transisi aktivitas untuk aplikasi.</p>
+
+<p>Tema bahan didefinisikan sebagai:</p>
+
+<ul>
+  <li><code>@android:style/Theme.Material</code> (versi gelap)</li>
+  <li><code>@android:style/Theme.Material.Light</code> (versi terang)</li>
+  <li><code>@android:style/Theme.Material.Light.DarkActionBar</code></li>
+</ul>
+
+<p>Untuk daftar gaya bahan yang bisa Anda gunakan, lihat referensi API untuk
+{@link android.R.style R.style}.</p>
+
+<!-- two columns, dark/light material theme example -->
+<div style="width:700px;margin-top:25px;margin-bottom:10px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>Gambar 1</strong>. Tema bahan gelap</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>Gambar 2</strong>. Tema bahan terang</p>
+  </div>
+</div>
+<br style="clear:left">
+</div>
+
+<p class="note">
+<strong>Catatan:</strong> Tema bahan hanya tersedia di Android 5.0 (API level 21)
+ke atas. <a href="{@docRoot}tools/support-library/features.html#v7">v7 Support Library</a>
+menyediakan tema dengan gaya desain bahan untuk beberapa widget dan dukungan untuk menyesuaikan
+palet warna. Untuk informasi selengkapnya, lihat
+<a href="{@docRoot}training/material/compatibility.html">Mempertahankan Kompatibilitas</a>.
+</p>
+
+
+<h2 id="ColorPalette">Menyesuaikan Palet Warna</h2>
+
+<p style="margin-bottom:30px">Untuk menyesuaikan warna dasar tema agar cocok dengan merek Anda, definisikan
+warna custom menggunakan atribut tema saat Anda mewariskan dari tema bahan:</p>
+
+<pre>
+&lt;resources>
+  &lt;!-- inherit from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- Main theme colors -->
+    &lt;!--   your app branding color for the app bar -->
+    &lt;item name="android:colorPrimary">@color/primary&lt;/item>
+    &lt;!--   darker variant for the status bar and contextual app bars -->
+    &lt;item name="android:colorPrimaryDark">@color/primary_dark&lt;/item>
+    &lt;!--   theme UI controls like checkboxes and text fields -->
+    &lt;item name="android:colorAccent">@color/accent&lt;/item>
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<div style="float:right;margin-left:25px;margin-top:20px;margin-bottom:10px" id="fig3">
+<img src="{@docRoot}training/material/images/ThemeColors.png" width="250" height="445" />
+<p class="img-caption" style="margin-bottom:0px">
+<strong>Gambar 3.</strong> Menyesuaikan tema bahan.</p>
+</div>
+
+
+<h2 id="StatusBar">Menyesuaikan Baris Status</h2>
+
+<p>Tema bahan memungkinkan Anda menyesuaikan baris status dengan mudah; jadi Anda bisa menetapkan
+warna yang cocok dengan merek Anda dan memberikan kontras yang cukup untuk menampilkan ikon status putih. Untuk
+mengatur warna custom bagi baris status, gunakan atribut <code>android:statusBarColor</code> bila
+Anda memperluas tema bahan. Secara default, <code>android:statusBarColor</code> mewarisi
+nilai <code>android:colorPrimaryDark</code>.</p>
+
+<p>Anda juga bisa menggambar sendiri di belakang baris status. Misalnya, jika Anda ingin menampilkan
+baris status secara transparan di atas foto, dengan gradasi gelap yang halus untuk memastikan
+ikon status putih tetap terlihat. Caranya, atur atribut <code>android:statusBarColor</code> ke
+<code>&#64;android:color/transparent</code> dan sesuaikan flag jendela seperti yang diperlukan. Anda juga bisa
+menggunakan metode {@link android.view.Window#setStatusBarColor Window.setStatusBarColor()} untuk
+animasi atau pemudaran.</p>
+
+<p class="note">
+<strong>Catatan:</strong> Baris status harus selalu memiliki delineasi yang jelas dari
+toolbar utama, kecuali bila Anda menampilkan gambar detail atau konten media tepi-ke-tepi di belakang
+baris ini dan bila Anda menggunakan gradasi untuk memastikan ikon tetap terlihat.
+</p>
+
+<p>Bila Anda menyesuaikan baris navigasi dan baris status, jadikan keduanya transparan atau modifikasi
+baris status saja. Baris navigasi harus tetap hitam di semua kasus lainnya.</p>
+
+
+<h2 id="Inheritance">Tampilan Setiap Tema</h3>
+
+<p>Elemen dalam definisi layout XML bisa menetapkan atribut <code>android:theme</code>,
+yang merujuk sumber daya tema. Atribut ini memodifikasi tema untuk elemen itu dan setiap
+elemen anak, yang berguna untuk mengubah palet warna tema dalam porsi tertentu
+pada antarmuka.</p>
diff --git a/docs/html-intl/intl/ja/design/get-started/principles.jd b/docs/html-intl/intl/ja/design/get-started/principles.jd
index 8e4149d..dde44ff 100644
--- a/docs/html-intl/intl/ja/design/get-started/principles.jd
+++ b/docs/html-intl/intl/ja/design/get-started/principles.jd
@@ -1,29 +1,29 @@
-page.title=Android デザイン指針
+page.title=Android デザインの原則
 @jd:body
 
-<p>このデザイン指針は、ユーザーがもっとも知りたいと思われることを中心に、Android User Experience Team により、またその活動を統一的なものにするために作成されたものです。Android デベロッパーとデザイナーに対しては各種端末向けのより詳細なデザイン ガイドラインがあります。
+<p>このデザインの原則は、ユーザーがもっとも知りたいと思われることを中心に、Android User Experience Team により、またその活動を統一的なものにするために作成されたものです。
 
-
+Android デベロッパーとデザイナーに対しては各種端末向けのより詳細なデザイン ガイドラインがあります。
 
 </p>
 
 <p>
-ご自身の創造性やデザインについて考える際、この指針を考慮に入れてください。
+ご自身のクリエイティビティやデザインについて考える際、この原則を考慮に入れてください。
 何を当てはめるかは目的に応じて調整してください。
 </p>
 
 <h2 id="enchant-me">ユーザーを引きつける</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="delight-me">サプライズで楽しませる</h4>
-<p>美しい画面、考え抜かれて配置されたアニメーション、タイミングの良いサウンド エフェクトは、使っていて楽しくなります。
+<p>美しい画面、思慮深く配置されたアニメーション、タイミングの良いサウンド エフェクトは、使っていて楽しくなります。
 わずかな効果でも、ユーザーを楽しませ、力を得たように感じてもらえます。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_delight.png">
 
@@ -32,15 +32,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="real-objects-more-fun">ボタンやメニューよりもリアルなオブジェクトでさらに楽しく</h4>
-<p>ユーザーがアプリでオブジェクトを直接タップしたり操作したりできるようになります。タスクを実行するために必要な認知の労力が軽減され、感覚的な満足度も上がります。
+<p>アプリでオブジェクトを直接タップしたり操作したりできます。タスクを試行錯誤しながら実行する必要はなく、アプリの満足度も上がります。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_real_objects.png">
 
@@ -49,16 +49,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="make-it-mine">自分らしさを加える</h4>
-<p>ユーザーは自分でカスタマイズすることを好みます。これにより、くつろいだ気分や自分の思いのままできる自由な気分を味わうことができます。デフォルトで実用的で美しいものを取りそろえ、それに加えてメイン タスクの妨げにならない、楽しいカスタマイズも任意で加えられます。
+<h4 id="make-it-mine">アプリに自分らしさをプラス</h4>
+<p>誰もがアプリで自分らしさを出したいと思っています。好きなようにアプリを操作できるからです。実用的で美しい機能があらかじめ用意されており、それに加えてメイン タスクの邪魔にならない、楽しいカスタマイズもできます。
 
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_it_mine.png">
 
@@ -67,31 +67,31 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="get-to-know-me">ユーザーについて知る</h4>
-<p>徐々にユーザーの好みを学習していきます。同じ選択を繰り返す手間をかけず、前に選択したものをすぐに選べるようになります。
+<h4 id="get-to-know-me">ユーザーの好みを学習</h4>
+<p>徐々にユーザーの好みを学習していきます。ユーザーに何度も同じ選択をさせるのではなく、前に選択したものをすぐに選べるようにします。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_get_to_know_me.png">
 
   </div>
 </div>
 
-<h2 id="simplify-my-life">よりシンプルに</h2>
+<h2 id="simplify-my-life">生活をシンプルに</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="keep-it-brief">常に簡潔に</h4>
-<p>シンプルな言葉を並べた短いフレーズを用います。長い文章は好まれません。</p>
+<h4 id="keep-it-brief">簡潔を心がける</h4>
+<p>シンプルで短いフレーズを用います。長い文章は好まれません。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_keep_it_brief.png">
 
@@ -100,15 +100,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="pictures-faster-than-words">画像は言葉よりもわかりやすい</h4>
-<p>画像を使ってアイデアを説明してみましょう。ユーザーの興味を引くことができ、言葉よりも効率的です。
+<p>画像を使ってアイデアを説明してみましょう。ユーザーの興味を引くことができ、言葉よりも効果的です。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_pictures.png">
 
@@ -117,15 +117,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="decide-for-me">選択は最小限に、最終決定はユーザーに</h4>
-<p>最初からユーザーにすべて尋ねるのではなく、もっとも適切と思われる項目を提示します。選択肢や決定事項が多すぎると面倒に感じます。
-推測が間違っていた場合に備え、「やり直し」も可能にします。</p>
+<p>最初からユーザーに選ばせるのではなく、適切と思われる項目を提示します。選択肢や決定事項が多すぎるとユーザーは面倒に感じます。
+間違った選択をしても、「やり直し」ができます。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_decide_for_me.png">
 
@@ -134,15 +134,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="only-show-when-i-need-it">必要なものを必要なときにだけ表示する</h4>
+<h4 id="only-show-when-i-need-it">必要なものを必要なときに</h4>
 <p>一度に表示される内容が多すぎると疲れてしまいます。タスクや情報はいくつかに小さくまとめてわかりやすくします。
 その時点で必要のないオプションは非表示にして、必要なときだけ表示します。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_information_when_need_it.png">
 
@@ -151,15 +151,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="always-know-where-i-am">全体像から現在の位置を示す</h4>
-<p>ユーザーがはっきりと自分の現在の場所を把握できるようにします。アプリのどの場所にいるかを明示し、遷移して画面の関係を認識できるようにします。
-実行しているタスクに対して応答し続けます。</p>
+<h4 id="always-know-where-i-am">現在位置を把握する</h4>
+<p>ユーザーが現在アプリのどこにいるのかがすぐに分かります。アプリ内における現在位置を明示し、遷移を使用して画面間の関係を表示します。
+実行中のタスクにフィードバックを返します。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_navigation.png">
 
@@ -168,16 +168,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="never-lose-my-stuff">作成したものは失くさない</h4>
-<p>ユーザーが時間をかけて作ったものは保存して、どこからでもアクセスできるようにします。設定、独自のカスタマイズ、電話、タブレット、コンピュータで作成したものを記録します。
-アップグレードも簡単になります。
+<h4 id="never-lose-my-stuff">作成物を失くさない</h4>
+<p>ユーザーが時間をかけて作ったものは保存して、どこからでもアクセスできるようにします。設定、独自のカスタマイズ、および携帯端末、タブレット、コンピュータで作成したものを保存します。
+アップグレードも簡単にできます。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_never_lose_stuff.png">
 
@@ -186,15 +186,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="looks-same-should-act-same">見た目が同じ場合は機能も同じにする</h4>
-<p>視覚的な違いを際立たせ、ユーザーが機能の違いをはっきり区別できるようにします。同じような外観、同じ入力で機能が異なるようなモードは避けます。
-</p>
+<h4 id="looks-same-should-act-same">見た目が同じなら機能も同じ</h4>
+<p>機能の違いがはっきり分かるように、特徴的なビジュアルにします。
+同じような外観、同じ入力方法なのに機能が異なるということのないようにします。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_looks_same.png">
 
@@ -203,15 +203,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="interrupt-only-if-important">割り込みは重要なときにだけ行う</h4>
-<p>優秀な個人秘書のように、重要ではない些細なことでユーザーをわずらわせることのないよう配慮します。集中したいユーザーにとって、重要で一刻を争うようなものでない限り、割り込まれると面倒で不快に感じる可能性があります。
+<h4 id="interrupt-only-if-important">割り込みは必要な場合のみ</h4>
+<p>優秀な個人秘書のように、ユーザーを些細なことでわずらわせないようにします。ユーザーは実行中の操作に専念したいと考えており、重要で一刻を争うようなものでない限り、割り込みは面倒で不快と感じます。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_important_interruption.png">
 
@@ -220,16 +220,16 @@
 
 <h2 id="make-me-amazing">操作を楽しく</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="give-me-tricks">あらゆる場所に工夫を仕込む</h4>
-<p>自分で理解すると嬉しく感じられます。Android アプリで広く使われている視覚や操作のパターンを生かし、アプリの操作をわかりやすいものにします。
-たとえばスワイプ操作は便利なナビゲーションのショートカットとして使えます。
+<h4 id="give-me-tricks">あらゆる場所に工夫を凝らす</h4>
+<p>理解できれば楽しくなります。Android アプリで広く使われている視覚や操作のパターンを生かし、アプリの操作をわかりやすいものにします。
+たとえばスワイプ操作は、ナビゲーションのショートカットとして使えるので便利です。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_tricks.png">
 
@@ -238,16 +238,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="its-not-my-fault">解決は簡単に</h4>
-<p>ユーザーに修正を促す場合はその方法に注意します。アプリではスマートに問題を解決できるようにします。うまくいかなかったときは解決方法を明確に示し、技術的な詳細を表示する必要はありません。自動的に修正できる問題はユーザーに通知する必要すらありません。
-
-</p>
+<h4 id="its-not-my-fault">ユーザーの責任にしない</h4>
+<p>ユーザーに修正を促す場合はその方法に注意します。ユーザーはアプリをスマートに使いこなしたいと考えています。
+うまくいかなかったときの解決方法は明確でなければなりませんが、技術的に詳細である必要はありません。
+自動的に修正できる問題については、通知も不要です。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_error.png">
 
@@ -256,15 +256,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="sprinkle-encouragement">操作を促すしかけを散りばめる</h4>
-<p>複雑なタスクは分割し、それぞれ簡単に達成できるようにします。1 つ 1 つにフィードバックすることで、ユーザーの満足度は高まります。
+<p>複雑なタスクは分割し、簡単に達成できるようにします。1 つ 1 つのアクションにフィードバックすることで、ユーザーの満足度は高まります。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png">
 
@@ -273,16 +273,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="do-heavy-lifting-for-me">作業の手間はかけない</h4>
-<p>できると思っていなかったことをできるようにすることで、知識がなくても専門家のような気分を味わってもらえます。たとえば複数の写真効果を組み合わせたショートカットを使うことで、わずかな手順でプロのような写真に仕上げられます。
+<h4 id="do-heavy-lifting-for-me">手間のかかる作業は不要</h4>
+<p>できないと思っていたことができるようになれば、初心者でもエキスパートの気分が味わえます。たとえば複数の写真効果を組み合わせるショートカットを使うことで、わずかな手順でプロのような写真に仕上げられます。
 
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_heavy_lifting.png">
 
@@ -291,15 +291,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-important-things-fast">重要なことはすみやかに</h4>
-<p>すべてのアクションが同じ優先度とは限りません。アプリのアクションには優先度を設定し、重要なものはたとえばカメラのシャッター ボタンや音楽プレイヤーの一時停止ボタンのように、簡単に見つけられすぐに使えるようにします。
+<p>すべてのアクションが同じ優先度とは限りません。アプリのアクションに優先度を設定し、カメラのシャッター ボタンや音楽プレイヤーの一時停止ボタンのように重要なものは、簡単に見つけてすぐに使えるようにします。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_important_fast.png">
 
diff --git a/docs/html-intl/intl/ja/design/material/index.jd b/docs/html-intl/intl/ja/design/material/index.jd
index 3acd423..3330b0c 100644
--- a/docs/html-intl/intl/ja/design/material/index.jd
+++ b/docs/html-intl/intl/ja/design/material/index.jd
@@ -1,15 +1,14 @@
-page.title=マテリアル デザイン
-page.tags=Material, design
-page.type=design
-page.image=design/material/images/MaterialLight.png
+page.title=Android のマテリアル デザイン
+page.tags=Material,design
+page.image=images/cards/design-material-for-android_2x.jpg
 
 @jd:body
 
 <!-- developer docs box -->
 <a class="notice-developers right" href="{@docRoot}training/material/index.html">
   <div>
-    <h3>デベロッパー文書</h3>
-    <p>マテリアル デザインを使ったアプリの作成</p>
+    <h3>デベロッパー ドキュメント</h3>
+    <p>マテリアル デザインを使用したアプリの作成</p>
   </div>
 </a>
 
@@ -25,7 +24,7 @@
 <a class="notice-developers-video" href="https://www.youtube.com/watch?v=YaG_ljfzeUw">
 <div>
     <h3>ビデオ</h3>
-    <p>紙とインク:重要なマテリアル</p>
+    <p>紙とインク: 重要なマテリアル</p>
 </div>
 </a>
 
@@ -39,27 +38,27 @@
 
 
 
-<p itemprop="description">マテリアル デザインは、視覚や動作と、複数のプラットフォームや端末間でのインタラクション デザインに関する包括的な指針です。
+<p itemprop="description">マテリアル デザインは、複数のプラットフォームや端末の視覚、モーション、インタラクション デザインの包括的な指針です。
 Android はマテリアル デザイン アプリに対応するようになりました。
-Android アプリでマテリアル デザインを使うには、<a href="http://www.google.com/design/spec">マテリアル デザインの仕様</a>で説明されているガイドラインに従い、Android 5.0（API レベル 21）以降の新しいコンポーネントや機能を使用します。
+Android アプリでマテリアル デザインを使うには、<a href="http://www.google.com/design/spec">マテリアル デザインの仕様</a>で定義されているガイドラインに従い、Android 5.0（API レベル 21）以降の新しいコンポーネントや機能を使用します。
 
 </p>
 
-<p>Android にはマテリアル デザインの作成に使うことができる次の要素が用意されています。</p>
+<p>Android にはマテリアル デザインのアプリのビルドに使用できる次の要素が用意されています。</p>
 
 <ul>
   <li>新しいテーマ</li>
-  <li>複雑なビュー用の新しいウィジェット</li>
+  <li>複雑なビューに対応した新しいウィジェット</li>
   <li>カスタムのシャドウとアニメーション用の新しい API</li>
 </ul>
 
-<p>Android でのマテリアル デザインの実装については、<a href="{@docRoot}training/material/index.html">マテリアル デザインを使ったアプリの作成</a>をご覧ください。
+<p>Android でのマテリアル デザインの実装については、<a href="{@docRoot}training/material/index.html">マテリアル デザインを使用したアプリの作成</a>をご覧ください。
 </p>
 
 
 <h3>マテリアル テーマ</h3>
 
-<p>マテリアル テーマはアプリの新しいスタイルである、システム ウィジェットを提供します。システム ウィジェットを使ってカラーパレット、タッチ フィードバックやアクティビティ遷移のためのデフォルトのアニメーションを指定できます。
+<p>マテリアル テーマには、アプリの新しいスタイルであるシステム ウィジェットがあります。このシステム ウィジェットを使うと、システム ウィジェットのカラーパレットを設定したり、タッチ フィードバックやアクティビティ遷移のためのデフォルトのアニメーションを設定したりできます。
 </p>
 
 <!-- two columns -->
@@ -67,13 +66,13 @@
 <div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
   <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238" />
   <div style="width:140px;margin:0 auto">
-  <p style="margin-top:8px">暗色マテリアル テーマ</p>
+  <p style="margin-top:8px">暗い色のマテリアル テーマ</p>
   </div>
 </div>
 <div style="float:left;width:250px;margin-right:0px;">
   <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238" />
   <div style="width:140px;margin:0 auto">
-  <p style="margin-top:8px">明色マテリアル テーマ</p>
+  <p style="margin-top:8px">明るい色のマテリアル テーマ</p>
   </div>
 </div>
 <br style="clear:left"/>
@@ -85,19 +84,19 @@
 
 <h3>リストとカード</h3>
 
-<p>Android はマテリアル デザインのスタイルとアニメーションを含むカードとリストを表示する新しい 2 つのウィジェットを提供しています。
+<p>Android はマテリアル デザインのスタイルとアニメーションを含むカードとリストを表示する、次のような新しい 2 つのウィジェットを提供しています。
 </p>
 
 <!-- two columns -->
 <div style="width:700px;margin-top:25px;margin-bottom:20px">
 <div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
   <img src="{@docRoot}design/material/images/list_mail.png" width="500" height="426" />
-  <p><code>RecyclerView</code> ウィジェットは <code>ListView</code> のさらに柔軟なバージョンで、さまざまなレイアウト タイプをサポートしてパフォーマンスを向上します。
-</p>
+  <p>新しい <code>RecyclerView</code> ウィジェットは <code>ListView</code>
+ に比べてさらに柔軟に機能を追加できるようになっており、さまざまなレイアウト タイプをサポートしてパフォーマンスを向上させます。</p>
 </div>
 <div style="float:left;width:250px;margin-right:0px;">
   <img src="{@docRoot}design/material/images/card_travel.png" width="500" height="426" />
-  <p>新しい <code>CardView</code> ウィジェットでは、外観や使用感が一貫しているカード内に重要な情報を表示できます。
+  <p>新しい <code>CardView</code> ウィジェットではカードの外観や操作性が統一され、カード内の重要な情報を表示できるようになりました。
 </p>
 </div>
 <br style="clear:left"/>
@@ -109,12 +108,12 @@
 
 <h3>シャドウの表示</h3>
 
-<p>X と Y プロパティに加え、Android のビューに Z プロパティが追加されました。
-この新しいプロパティはビューのエレベーションを表し、次を指定します。</p>
+<p>Android のビューに、X と Y のプロパティに加えて Z プロパティが追加されました。
+この新しいプロパティはビューのエレベーションを表し、次の要素を指定します。</p>
 
 <ul>
-<li>シャドウのサイズ: Z 値が高いビューほどキャストするシャドウのサイズが大きくなります。</li>
-<li>表示される順序: Z 値が高いビューほど他のビューより上位に表示されます。</li>
+<li>シャドウのサイズ: ビューの Z 値が高いほどシャドウのサイズが大きくなります。</li>
+<li>描画順序: ビューの Z 値が高いほど他のビューの前面に表示されます。</li>
 </ul>
 
 <div style="width:290px;margin-left:35px;float:right">
@@ -136,33 +135,33 @@
 
 <h3>アニメーション</h3>
 
-<p>新しいアニメーション API を使って UI コントロールのタッチ フィードバック、ビューの状態遷移、アクティビティ遷移のカスタム アニメーションを作成できます。
+<p>新しいアニメーション API を使って、UI コントロールのタッチ フィードバック、ビューの状態変化、アクティビティ間の遷移時のカスタム アニメーションを作成できます。
 </p>
 
-<p>これらの API で次の操作を実行できます。</p>
+<p>この API で次のようなことができます。</p>
 
 <ul>
 <li style="margin-bottom:15px">
-<strong>タッチ フィードバック</strong> アニメーションを使ってビューのタップイベントに応答します。
+<strong>タッチ フィードバック</strong> アニメーションでビューのタップ イベントに応答する。
 </li>
 <li style="margin-bottom:15px">
-<strong>円形状の出現</strong>アニメーションを使ってビューを表示 / 非表示にします。
+<strong>円形状の出現</strong>アニメーションを使ってビューを表示したり、非表示にしたりする。
 </li>
 <li style="margin-bottom:15px">
-カスタムの<strong>アクティビティ遷移</strong>アニメーションを使ってアクティビティを切り替えます。
+カスタムの<strong>アクティビティ遷移</strong>アニメーションを使ってアクティビティを切り替える。
 </li>
 <li style="margin-bottom:15px">
-<strong>曲線モーション</strong>を使ってより自然なアニメーションを作成します。
+<strong>曲線モーション</strong>を使ってより自然なアニメーションを作成する。
 </li>
 <li style="margin-bottom:15px">
-<strong>ビューの状態遷移</strong>アニメーションを使って 1 つ以上のビュー プロパティの遷移を表現します。
+<strong>ビューの状態変化</strong>アニメーションを使って 1 つ以上のビュー プロパティを変化させるアニメーションを作成する。
 </li>
 <li style="margin-bottom:15px">
-ビューの状態遷移間のアニメーションを<strong>状態リスト ドローアブル</strong>で表示します。
+ビューの状態を変化させるアニメーションを<strong>状態リスト ドローアブル</strong>で表示します。
 </li>
 </ul>
 
-<p>タッチ フィードバック アニメーションはボタンなどの複数の標準ビューに組み込まれます。新しい API を使ってこれらのアニメーションをカスタマイズし、それらをカスタム ビューに追加できます。
+<p>タッチ フィードバック アニメーションはボタンなどの複数の標準ビューに組み込まれています。新しい API を使うと、これらのアニメーションをカスタマイズして、カスタム ビューに追加できます。
 </p>
 
 <p>詳細については、<a href="{@docRoot}training/material/animations.html">カスタム アニメーションの定義</a>をご覧ください。
@@ -171,12 +170,12 @@
 
 <h3>ドローアブル</h3>
 
-<p>次の新しいドローアブル機能を使ってマテリアル デザイン アプリを実装できます。</p>
+<p>次の新しいドローアブル機能を使用してマテリアル デザイン アプリを実装できます。</p>
 
 <ul>
-<li><strong>ベクター型ドローアブル</strong>は鮮明度を失わずに拡張でき、単色のアプリ内アイコンに最適です。
+<li><strong>ベクター型ドローアブル</strong>は定義を失わずにスケールできるので、単色のアプリ アイコンに最適です。
 </li>
-<li><strong>ドローアブルによる着色</strong>を使ってビットマップをアルファマスクとして定義し、実行時にそれらのビットマップに色付けすることができます。
+<li><strong>ドローアブルによる着色</strong>を使ってビットマップをアルファ マスクとして定義し、実行時にそのビットマップに色付けできます。
 </li>
 <li><strong>色の抽出</strong>を使ってビットマップ画像から代表色を自動的に抽出できます。
 </li>
diff --git a/docs/html-intl/intl/ja/design/patterns/compatibility.jd b/docs/html-intl/intl/ja/design/patterns/compatibility.jd
new file mode 100644
index 0000000..c035a15
--- /dev/null
+++ b/docs/html-intl/intl/ja/design/patterns/compatibility.jd
@@ -0,0 +1,70 @@
+page.title=下方互換性
+page.tags="support"
+page.metaDescription=Android 4.x がバージョンの古いハードウェアや OS 向けにデザインされた UI にどのように対応するかについての注意事項。
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/basics/supporting-devices/index.html">
+  <div>
+    <h3>デベロッパー ドキュメント</h3>
+    <p>異なる端末のサポート</p>
+  </div>
+</a>
+
+<p>Android 3.0 での大きな変更点には、以下のような点があります。</p>
+<ul>
+<li>仮想コントロール（Back、Home、Recents）のナビゲーション処理の導入によるナビゲーション ハードウェア キー（Back、Menu、Search、Home）の廃止
+</li>
+<li>アクションバーでメニュー項目を使用する際の表現パターンの強化</li>
+</ul>
+<p>Android 4.0 では、こういったタブレット向けの変更点が携帯端末プラットフォームにも導入されました。</p>
+
+<h2 id="older-hardware">古いハードウェアやアプリへの Android 4.0 の対応</h2>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>仮想ナビゲーション コントロールのある携帯端末</h4>
+<p>Android 3.0 以降をターゲットにした Android アプリは、アクションをアクションバーに表示します。アクションバーに収まらないアクションや、トップレベルに表示するほど重要ではないアクションは、アクション オーバーフローに表示されます。
+
+</p>
+<p>ユーザーは、アクションバーをタップすることで、アクション オーバーフローにアクセスできます。</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_virtual_nav.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>物理ナビゲーション キーのある携帯端末</h4>
+<p>従来型のナビゲーション ハードウェア キーのある Android 携帯端末では、画面下部に仮想ナビゲーション バーは表示されません。
+代わりに、メニュー ハードウェア キーからアクション オーバーフローを利用できます。そのため、ポップアップするアクションは先ほどの例と同じように利用できますが、画面の下部に表示される点が異なります。
+</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_physical_buttons.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>仮想ナビゲーション コントロールのある携帯端末でのレガシー アプリ</h4>
+<p>Android 2.3 以前をターゲットにビルドされたアプリを仮想ナビゲーション コントロールのある携帯端末で実行すると、仮想ナビゲーション バーの右側にアクション オーバーフロー コントロールが表示されます。
+コントロールをタップすると、アプリのアクションを従来型の Android メニュー形式で表示できます。
+</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_legacy_apps.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/ja/design/patterns/confirming-acknowledging.jd b/docs/html-intl/intl/ja/design/patterns/confirming-acknowledging.jd
index 35ba821..c2dfb84 100644
--- a/docs/html-intl/intl/ja/design/patterns/confirming-acknowledging.jd
+++ b/docs/html-intl/intl/ja/design/patterns/confirming-acknowledging.jd
@@ -2,69 +2,69 @@
 page.tags=dialog,toast,notification
 @jd:body
 
-<p>状況に応じて、ユーザーがアプリでアクションを呼び出したときに、テキストを使ってそのアクションを<em>確認</em>したり<em>通知</em>したりするのは良い方法です。</p>
+<p>アプリでアクションを呼び出すときに、テキストでそのアクションを<em>確認</em>または<em>通知</em>するとよい場合があります。</p>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_confirming.png">
-    <p><strong>確認</strong>とは、呼び出したアクションを続けるかどうかをユーザーに確認してもらうことです。場合によって、確認は考慮する必要があるアクションに関連する警告や重要情報とともに表示されることがあります。</p>
+    <p><strong>確認</strong>とは、呼び出したアクションを本当に続行してもよいかどうかをユーザーにたずねることです。検討を要するアクションがあれば、それに関する警告や重要情報とともに表示されることもあります。</p>
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_acknowledge.png">
-    <p><strong>通知</strong>とは、呼び出したアクションが完了したことをユーザーにお知らせするテキストを表示することです。これによって、システムが実行している暗黙的な処理の不明瞭さをなくすことができます。場合によって、通知はアクションを元に戻すオプションとともに表示されることがあります。</p>
+    <p><strong>通知</strong>とは、呼び出したアクションが完了したことをユーザーに知らせるテキストを表示することです。システムにより実行中であり、ユーザーには表示されない操作を確認できます。アクションを元に戻すオプションとともに表示されることもあります。</p>
   </div>
 </div>
 
-<p>このような方法でユーザーに情報を伝えると、実行された処理やこれから実行される処理についての不明瞭さを軽減できます。確認や通知によって、後悔するような間違いをするのを防ぐこともできます。</p>
+<p>このような機能を使用すれば、実行済みの処理やこれから実行される処理を明確に把握できます。確認や通知を表示することで、後悔するような間違いを防ぐこともできます。</p>
 
-<h2>ユーザーのアクションを確認または通知する場合</h2>
-<p>すべてのアクションに確認または通知が必要なわけではありません。デザインを決定する際の指針として次のチャートを使用してください。</p>
+<h2>ユーザーのアクションを確認または通知するタイミング</h2>
+<p>すべてのアクションに確認または通知が必要なわけではありません。確認や通知が必要かどうかを判断するには、次のチャートを使用してください。</p>
 <img src="{@docRoot}design/media/confirm_ack_flowchart.png">
 
 <h2>確認</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>例: Google Play ブックス</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_books.png">
-    <p>この例では、ユーザーが Google Play ライブラリから書籍を削除することを要求しています。その書籍が今後端末で使えなくなることを知ってもらうことが重要であるため、このアクションを確認する<a href="{@docRoot}design/building-blocks/dialogs.html#alerts">アラート</a>が表示されます。</p>
-    <p>確認のダイアログを作成するときは、要求されたアクションがすぐわかるようなタイトルにします。</p>
+    <p>この例では、ユーザーは Google Play ライブラリから書籍を削除するよう要求しています。この書籍が今後いずれの端末でも使用できなくなるということを知らせる必要があるため、このアクションを確認する<a href="{@docRoot}design/building-blocks/dialogs.html#alerts">アラート</a>が表示されます。</p>
+    <p>確認ダイアログは、要求されたアクションをタイトルに記述するなどして、わかりやすく作成します。</p>
   </div>
-  <div class="layout-content-col span-7">
-    <h4>例: Android Beam</h4>
+  <div class="col-7">
+    <h4>例: Android ビーム</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_beam.png">
-    <p>確認は、必ずしも 2 つのボタンの付いたアラートで示す必要はありません。Android Beam を開始した後に、ユーザーには共有するコンテンツ（この例では写真）にタップするように求めるメッセージが表示されます。共有を続行しない場合は、電話を離すだけです。</p>
+    <p>確認は、必ずしも 2 つのボタンが付いたアラートで行う必要はありません。Android ビームを開始した後、共有するコンテンツ（この例では写真）をタップするようメッセージが表示されます。共有を続行しない場合は、携帯端末を離すだけです。</p>
   </div>
 </div>
 
 <h2>通知</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
-    <h4>例: 放置した Gmail 下書きの保存</h4>
+<div class="cols">
+  <div class="col-6">
+    <h4>例: 途中まで書いた Gmail の下書きの保存</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png">
-    <p>この例では、ユーザーが Gmail 作成画面から前の画面に戻ったり、上位画面に移動したりするときに、予測しないことが起こる可能性があるため、現在の下書きが自動的に保存されます。トースト形式の通知によってその状態が明らかになります。この通知は数秒後にフェードします。</p>
+    <p>この例では、ユーザーが Gmail 作成画面から前の画面に戻ったり、画面の上部に移動したりすると、予測しないことが起こることもあるため、現在の下書きが自動的に保存されています。この動作はトースト形式で通知され、数秒後に消えます。</p>
     <p>この場合、保存操作はユーザーではなくアプリによって行われるため、元に戻す操作は適切ではありません。また、下書きのリストに移動するだけでメッセージの作成をすぐに再開できます。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <h4>例: Gmail スレッドの削除</h4>
     <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png">
-    <p>ユーザーが Gmail のリストからスレッドを削除した後に、元に戻すオプションとともに通知が表示されます。ユーザーがリストのスクロールなど関連しないアクションを実行するまで通知は表示されたままになります。</p>
+    <p>ユーザーが Gmail のリストから会話を削除した後に、元に戻すオプションとともに認定が表示されます。リストのスクロールなど無関係なアクションをユーザーが実行するまで、通知の表示は消えません。</p>
   </div>
 </div>
 
 <h2>確認または通知を行わない場合</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>例: +1 操作</h4>
     <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png">
-    <p><strong>確認は不要</strong>。ユーザーが誤って +1 ボタンをタップしても、大きな問題にはなりません。ボタンをもう一度タップすればアクションを元に戻すことができます。</p>
-    <p><strong>通知は不要</strong>。+1 ボタンがバウンスし、赤に変わります。これは非常にわかりやすいシグナルです。</p>
+    <p><strong>確認は不要です</strong>。ユーザーが誤って [+1] ボタンをタップしても、あまり問題ではありません。ボタンをもう一度タップすれば、アクションを元に戻すことができるからです。</p>
+    <p><strong>通知は不要です</strong>。[+1] ボタンがバウンドして赤に変わります。これは非常にわかりやすいシグナルです。</p>
   </div>
-  <div class="layout-content-col span-7">
-    <h4>例: ホームスクリーンからアプリを削除</h4>
+  <div class="col-7">
+    <h4>例: ホームスクリーンからアプリを削除する場合</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png">
-    <p><strong>確認は不要</strong>。これは意図的なアクションです。ユーザーはアイテムを比較的大きな分離されたターゲットにドラッグ アンド ドロップする必要があります。そのため、不測の問題が発生することはほとんどありません。ユーザーがこの決定を元に戻したい場合は、ほんの数秒で元に戻すことができます。</p>
-    <p><strong>通知は不要</strong>。ユーザーは自分でアプリをドラッグして削除するため、アプリがホームスクリーンから消えることがわかっています。</p>
+    <p><strong>確認は不要です</strong>。このアクションは賢明に設計されており、ユーザーはアイテムを比較的離れたところにある大きいターゲットにドラッグ アンド ドロップする必要があります。そのため、アクシデントが発生することはほとんどありません。しかもこの操作を取り消したい場合は、ほんの数秒で元に戻すことができるようになっています。</p>
+    <p><strong>通知は不要です</strong>。ユーザーが自分でアプリをドラッグして削除しているので、アプリがホームスクリーンから消えるのがわかっているからです。</p>
 
   </div>
 </div>
diff --git a/docs/html-intl/intl/ja/design/patterns/navigation.jd b/docs/html-intl/intl/ja/design/patterns/navigation.jd
index dbb6b04..079ad25 100644
--- a/docs/html-intl/intl/ja/design/patterns/navigation.jd
+++ b/docs/html-intl/intl/ja/design/patterns/navigation.jd
@@ -1,213 +1,213 @@
-page.title=Back と Up を使用したナビゲーション
+page.title=Back ボタンと Up ボタンを使用したナビゲーション
 page.tags="navigation","activity","task","up navigation","back navigation"
 page.image=/design/media/navigation_between_siblings_gmail.png
 @jd:body
 
 <a class="notice-developers" href="{@docRoot}training/implementing-navigation/index.html">
   <div>
-    <h3>デベロッパー文書</h3>
-    <p>効果的なナビゲーションを実装する</p>
+    <h3>デベロッパー ドキュメント</h3>
+    <p>効果的なナビゲーションの実装</p>
   </div>
 </a>
 
-<p itemprop="description">一貫したナビゲーションは全体的なユーザーの操作性を向上するために欠かせない重要な要素です。一貫性がなく予測できない動作ほどユーザーにとって不快なものはありません。
-Android 3.0 では、全体的なナビゲーション動作が大きく変更されました。
-注意深く Back と Up のガイドラインに従うことで、アプリのナビゲーションをユーザーにとって予測可能で信頼できるものにすることができます。
+<p itemprop="description">使いやすいアプリでは、ナビゲーションに統一性があります。統一性がなく、動作の読めないアプリほど使いにくいものはありません。
+Android 3.0 では、全体的なナビゲーション動作が大きく変わりました。
+Back ボタンと Up ボタンのガイドラインに従えば、ユーザーにとってわかりやすく、信頼できるナビゲーションを実装できます。
 </p>
-<p>Android 2.3 以前のアプリ内でのナビゲーションはシステムの <em>Back</em> ボタンを使って行われてきました。Android 3.0 よりアクションバーが導入され、第 2 のナビゲーション メカニズムとして <em>Up</em> ボタンが登場しました。このボタンはアプリアイコンと左向きのキャラットで構成されています。
-
+<p>Android 2.3 以前のアプリのナビゲーションはシステムの <em>Back</em> ボタンで行っていました。
+Android 3.0 よりアクションバーが導入され、第 2 のナビゲーション メカニズムとして <em>Up</em> ボタンが登場しました。このボタンはアプリアイコンと左向きのキャレットで表されています。
 </p>
 
 <img src="{@docRoot}design/media/navigation_with_back_and_up.png">
 
-<h2 id="up-vs-back">Up と Back</h2>
+<h2 id="up-vs-back">Up ボタンと Back ボタンの違い</h2>
 
 <p>Up ボタンは、画面間の階層関係に基づいてアプリ内を移動するために使います。
-たとえば、画面 A がアイテムのリストを表示し、アイテムを選択すると（そのアイテムの詳細を表示する）画面 B に移動する場合、画面 B には画面 A に戻るための Up ボタンを用意する必要があります。
+たとえば、画面 A でアイテムのリストを表示し、アイテムを選択すると（そのアイテムの詳細を表示する）画面 B に移動する場合、画面 B には画面 A に戻るための Up ボタンが必要です。
 
 </p>
-<p>画面がアプリの最上位（つまり、アプリのホーム）であれば、Up ボタンを表示すべきではありません。
+<p>画面がアプリのトップ レベル（アプリのホーム）であれば、Up ボタンを表示する必要はありません。
 </p>
 
-<p>システムの Back ボタンはユーザーが最近使用した画面を、さかのぼって順番に移動する場合に使用されます。
-通常このナビゲーションはアプリの階層ではなく、画面を表示した順番に基づいています。
+<p>システムの Back ボタンは、最近使用した画面をさかのぼって順番に移動する場合に使用します。
+通常、このナビゲーションはアプリの階層ではなく、画面を表示した順番に基づいています。
 </p>
 
-<p>前に表示していた画面が現在の画面の親階層となる場合は、Back ボタンを押すとUp ボタンを押したときと同じ結果になります &mdash; これはよくある動作です。
+<p>前に表示していた画面が現在の画面の親階層となる場合は、Back ボタンを押すと Up ボタンを押したときと同じ結果になります &mdash; これは一般的な動作です。
 
-ただし、Up ボタンではユーザーが確実にアプリ内に留まるのに対して、Back ボタンを使えばホームスクリーンに、さらには別のアプリに戻ることさえできます。
+ただし、Up ボタンではユーザーの移動がアプリ内に限られるのに対して、Back ボタンではホーム画面や、別のアプリにも戻れます。
 </p>
 
 <img src="{@docRoot}design/media/navigation_up_vs_back_gmail.png">
 
-<p>Back ボタンは、画面間を直接ナビゲーションするだけでなく、次のような動作もサポートします。
+<p>Back ボタンは、画面間を直接ナビゲーションするだけでなく、次のような動作にも対応しています。
 </p>
 <ul>
 <li>フローティング ウィンドウ（ダイアログ、ポップアップ）を閉じる</li>
 <li>コンテキスト アクションバーを閉じて、選択したアイテムのハイライト表示を解除する</li>
-<li>オンスクリーン キーボード（IME）を非表示にする</li>
+<li>画面上のキーボード（IME）を非表示にする</li>
 </ul>
 <h2 id="within-app">アプリ内でのナビゲーション</h2>
 
-<h4>複数のエントリ ポイントのある画面のナビゲーション</h4>
-<p>画面にアプリ階層内の正確な位置がなく、アプリ内の他のどの画面からでもアクセスできる設定画面などのように複数のエントリ ポイントからアクセスできる場合があります。この場合、Up ボタンは参照元の画面に戻ることを選択する必要があります。これは Back も同様です。
-&mdash;
+<h4>エントリ ポイントが複数ある画面へのナビゲート</h4>
+<p>設定画面のように、アプリ内の他のどの画面からでもアクセスでき、アプリ階層内に定位置がなく、複数のエントリ ポイントからアクセスできる画面もあります。
 
+この場合、Up ボタンは Back ボタンと同じように元の画面に戻ります。
 </p>
-<h4>画面内でビューを変更する</h4>
-<p>画面のビュー オプションを変更しても Up と Back の動作は変わりません。画面はアプリの階層内の同じ位置に留まり、新しいナビゲーション履歴は作成されません。
+<h4>画面内でのビューの変更</h4>
+<p>画面のビュー オプションを変更しても Up ボタンと Back ボタンの動作は変わりません。画面はアプリの階層内の同じ位置にあり、新しいナビゲーション履歴は作成されません。
 </p>
 <p>このようなビューの変更には次のようなものがあります。</p>
 <ul>
-<li>タブや左右のスワイプを使ってビューを切り替える</li>
-<li>ドロップダウン（折りたたみタブ）を使ってビューを切り替える</li>
-<li>リストにフィルタをかける</li>
-<li>リストをソートする</li>
-<li>表示の方法を変える（ズームなど）</li>
+<li>タブや左右のスワイプを使ったビューの切り替え</li>
+<li>ドロップダウン（折りたたみタブ）を使ったビューの切り替え</li>
+<li>リストへのフィルタの適用</li>
+<li>リストの並び替え</li>
+<li>表示方法の変更（ズームなど）</li>
 </ul>
 <h4>兄弟画面間のナビゲーション</h4>
-<p>アプリでアイテムのリストから 1 つのアイテム詳細画面に移動するとき、そのアイテムからリスト内の前後にある別のアイテムへのナビゲーションをサポートするのが望ましいことがよくあります。
+<p>アプリでアイテムのリストから選択して、あるアイテムの詳細画面に移動するとき、そのアイテムからリストの前後にある別のアイテムにナビゲーションできるようにすると使いやすくなる場合があります。
 
-たとえば、Gmail では、スワイプすることで、ある会話から同じ受信トレイの新しいまたは古い会話へ左右に簡単に移動できます。
-画面内でビューを変更する場合と同じように、このようなナビゲーションによって Up または Back の動作は変わりません。
+たとえば、Gmail で左か右にスワイプすると、同じ受信トレイのある会話から新しい会話や古い会話に簡単に移動できます。
+画面内でビューを変更する場合と同様に、このナビゲーションでも Up ボタンまたは Back ボタンの動作は変わりません。
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_siblings_gmail.png">
 
-<p>しかし、参照リストで結び付けられていない関連詳細ビュー間をブラウジングする場合 &mdash; たとえば Play ストアで同じデベロッパーのアプリや同じアーティストのアルバム間をブラウジング場合、その動作はこれとは明らかに異なります。
+<p>ただし、参照リストで結び付けられていない関連詳細ビュー間をブラウジングする場合は例外です。たとえば Play Store で同じデベロッパーのアプリや同じアーティストのアルバム間をブラウジングする場合です。
 
 この場合、各リンクをたどると履歴が作成され、Back ボタンで以前に表示した各画面に戻ることになります。
-Up では常にこれらの関連画面をバイパスして、直前に表示したコンテナ画面に移動します。
+Up ボタンを使用するとこれらの関連画面をバイパスして、直前に表示したコンテナ画面に移動します。
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_siblings_market1.png">
 
-<p>Up の動作を詳細ビューの知識に基づいてより使いやすくすることができます。
-前述の Play ストアの例で、ユーザーが直前に表示した書籍から映画版の詳細に移動したとします。
-その場合、Up でユーザーが前に表示していないコンテナ（映画）に戻ることができます。
+<p>詳細ビューを応用すれば、Up ボタンを使いやすくできます。
+前述の Play Store の例で、直前に表示した書籍から映画版の詳細に移動したとします。
+その場合、Up ボタンを使用すると前に表示していないコンテナ（映画）に戻ることができます。
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_siblings_market2.png">
 
-<h2 id="into-your-app">ホームスクリーンのウィジェットと通知によるアプリへのナビゲーション</h2>
+<h2 id="into-your-app">ホーム画面のウィジェットと通知を使用したアプリへのナビゲーション</h2>
 
-<p>ホームスクリーンのウィジェットや通知を使ってユーザーがアプリ階層内の深い階層にある画面に直接移動できるようにします。
-たとえば、Gmail の受信ボックスのウィジェットと新しいメッセージ通知はどちらも受信トレイ画面をバイパスし、会話ビューを直接表示できます。
+<p>ホーム画面のウィジェットや通知を使用して、アプリの深い階層にある画面に直接移動できるようにします。
+たとえば、Gmail の受信トレイのウィジェットと新しいメッセージ通知をタップすると、どちらも受信トレイ画面をバイパスし、会話ビューを直接表示できます。
 </p>
 
 <p>この両方の機能で、Up ボタンを次のように処理します。</p>
 
 <ul>
-<li><em>通常アプリ内の特定の画面から移動先画面に移動する場合</em>、Up でその画面に移動します。
+<li><em>通常どおりにアプリの特定の画面から移動先画面に移動する場合</em>、Up ボタンを使用するとその画面に移動します。
 </li>
-<li><em>それ以外の場合は</em>、Up でアプリの最上位（「ホーム」）画面に移動します。</li>
+<li><em>それ以外の場合は</em>、Up ボタンを使用するとアプリのトップレベル（[ホーム]）の画面に移動します。</li>
 </ul>
 
-<p>Back ボタンの場合は、アプリの最上位画面への完全な上向きナビゲーション パスをタスクのバックスタックに挿入してナビゲーションをより予測可能なものにする必要があります。
-この設定によって、アプリにどのように入ったか忘れたユーザーは、終了前のアプリの最上位画面に移動できます。
+<p>Back ボタンの場合は、アプリのトップ レベルの画面に直接ナビゲートできるパスをタスクのバック スタックに挿入して、わかりやすいナビゲーションにします。
+こうすることで、アプリをどのように起動したか覚えていなくても、トップ レベルの画面に移動してから終了できます。
 
 </p>
 
-<p>たとえば Gmail のホームスクリーンのウィジェットには、その作成画面に直接移動するボタンがあります。
-作成画面の Up または Back で受信トレイが表示され、そこから Back ボタンでホームに移動します。
+<p>たとえば Gmail のホーム画面のウィジェットには、作成画面に直接移動するボタンがあります。
+作成画面の Up ボタンまたは Back ボタンで受信トレイが表示され、そこから Back ボタンでホームに移動します。
 </p>
 
 <img src="{@docRoot}design/media/navigation_from_outside_back.png">
 
 <h4>間接通知</h4>
 
-<p>アプリで複数のイベントに関する情報を同時に表示する必要がある場合、1 つの通知を使ってユーザーをインタースティシャル画面に導くことができます。
-この画面にはこれらのイベントがまとめてあり、アプリのさらに深い階層に移動するためのパスが示されます。このスタイルの通知を<em>間接通知</em>と呼びます。
+<p>アプリで複数のイベントに関する情報を同時に表示する必要がある場合、通知を 1 つにまとめてそこからインタースティシャル画面に遷移させることができます。
+この画面にはこれらのイベントの要約が表示されており、アプリのさらに深い階層に移動するパスが示されます。
+このスタイルの通知を<em>間接通知</em>と呼びます。
+</p>
+
+<p>標準（直接）通知とは異なり、間接通知のインタースティシャル画面で Back ボタンを押すと、通知がトリガーされた画面に戻ります。バックスタックには追加の画面は挿入されません。
+
+ユーザーがインタースティシャル画面からアプリに移動すると、Up ボタンと Back ボタンは前述の標準通知と同様に動作します。つまり、インタースティシャル画面に戻るのではなくアプリ内で遷移します。
 
 </p>
 
-<p>標準（直接）通知とは異なり、間接通知のインタースティシャル画面から Back を押すとユーザーは通知がトリガーされた地点に戻ります &mdash; バックスタックには追加の画面は挿入されません。
+<p>たとえば Gmail がカレンダーから間接通知を受け取ったとします。この通知をタップするとインタースティシャル画面が開き、複数の異なるイベントのリマインダーが表示されます。
 
-ユーザーがインタースティシャル画面からアプリに移動すると、Up および Back は前述した標準通知の場合と同様に動作します。つまりインタースティシャル画面に戻るのではなくアプリ内でナビゲーションします。
+インタースティシャル画面で Back ボタンをタップすると Gmail に戻ります。特定のイベントをタップすると、インタースティシャル画面からカレンダー アプリに移動し、そのイベントの詳細が表示されます。
 
-</p>
-
-<p>たとえば Gmail のユーザーがカレンダーから間接通知を受け取ったとします。この通知をタップするとインタースティシャル画面が開き、複数の異なるイベントに関するリマインダーが表示されます。
-
-インタースティシャル画面で Back をタップすると Gmail に戻ります。特定のイベントをタップすると、インタースティシャル画面から完全なカレンダー アプリに移動し、そのイベントの詳細が表示されます。
-
-イベントの詳細から、Up および Back を使うとカレンダーの最上位ビューが表示されます。</p>
+イベントの詳細画面で Up ボタンや Back ボタンを使うと、カレンダーのトップ ビューに移動します。</p>
 
 <img src="{@docRoot}design/media/navigation_indirect_notification.png">
 
 <h4>ポップアップ通知</h4>
 
-<p><em>ポップアップ通知</em>は通知ドロワーをバイパスしてユーザーの前に直接表示されます。
-ポップアップ通知はめったに使われません。<strong>タイムリーな応答が要求され、ユーザーのコンテキストの中断が必要な場合に使われます</strong>。
-たとえばトークでは、このスタイルを使って友人からのビデオチャットへの参加に関する招待状についてユーザーに通知します。というのも、この招待状は数秒後に自動的に期限切れになるからです。
+<p><em>ポップアップ通知</em>は通知ドロワーをバイパスし、直接表示される通知です。
+ポップアップ通知はほとんど使われません。<strong>タイムリーな応答が要求され、ユーザーの操作の中断が必要な場合にのみ使うべきです</strong>。
+たとえばトークでは、友人からのビデオチャットへの招待が数秒後に自動的に期限切れとなる場合、このスタイルを使ってユーザーに通知します。
 
 </p>
 
-<p>ナビゲーション動作の点から、ポップアップ通知は間接通知のインタースティシャル画面の動作に厳密に従います。
-Back でポップアップ通知は閉じます。ユーザーがポップアップから通知元のアプリに移動すると、Up と Back は標準通知のルールに従い、アプリ内でナビゲーションします。
+<p>ナビゲーションでは、間接通知のインタースティシャル画面の動作に慎重に従ってポップアップ通知を行います。
+Back ボタンでポップアップ通知を閉じます。ポップアップから通知対象のアプリに移動すると、Up ボタンと Back ボタンは標準通知のルールに従って、そのアプリ内で通常のナビゲーションを実行します。
 
 </p>
 
 <img src="{@docRoot}design/media/navigation_popup_notification.png">
 
-<h2 id="between-apps">アプリ間のナビゲーション</h2>
+<h2 id="between-apps">アプリ間ナビゲーション</h2>
 
-<p>Android システムの基本的な利点の 1 つにアプリ同士がそれぞれをアクティブにできる機能があります。これによりユーザーは特定のアプリから別のアプリへ直接移動できます。
-たとえば写真を撮影する必要があるアプリでは、カメラアプリをアクティブにすることができます。カメラアプリは写真を参照元のアプリに戻します。これはデベロッパーにとっては他のアプリのコードを簡単に利用できるという点で、またユーザーにとっては通常実行するアクションに対して一貫した操作を実行できるという点で大きなメリットです。
+<p>Android システムの基本的な利点の 1 つに、アプリが別のアプリを起動できる機能があります。これを使用すると、あるアプリから別のアプリへ直接移動できます。
+たとえば、写真をキャプチャするアプリで、カメラアプリを起動できます。カメラアプリは写真を起動元のアプリに返します。
 
-
+デベロッパーにとっては他のアプリのコードを簡単に利用できるという点で、ユーザーにとってはよく実行するアクションを常に同じ操作で実行できるという点で大きなメリットです。
 
 </p>
 
-<p>アプリ間のナビゲーションを理解するには、次に説明する Android フレームワークの動作を理解することが重要です。
+<p>アプリ間ナビゲーションを理解するには、次に説明する Android フレームワークの動作を理解する必要があります。
 </p>
 
 <h4>アクティビティ、タスク、インテント</h4>
 
-<p>Android における<strong>アクティビティ</strong>とは情報の画面と、ユーザーが実行できるすべての関連アクションを定義するアプリケーション コンポーネントです。
-アプリはアクティビティのコレクションで、作成したアクティビティと他のアプリから再利用するアクティビティの両方で構成されています。
+<p>Android における<strong>アクティビティ</strong>とは、情報を表示する画面と、実行できるすべての関連アクションを定義するアプリケーション コンポーネントのことです。
+アプリはアクティビティの集まりで構成され、作成したアクティビティと他のアプリから再利用するアクティビティで構成されています。
 </p>
 
-<p><strong>タスク</strong>とは目標を実現するためにユーザーが従う一連のアクティビティです。1 つのタスクで 1 つのアプリだけのアクティビティを利用することも、複数のアプリのアクティビティを利用することもできます。
+<p><strong>タスク</strong>とは目的の動作を遂行するために実行する、一連のアクティビティのことです。1 つのタスクで 1 つのアプリだけのアクティビティを利用することも、複数のアプリのアクティビティを利用することもできます。
 
 </p>
 
-<p><strong>インテント</strong>とは、あるアプリがアクションの実行に関して別のアプリのサポートが必要であることを示すメカニズムです。
-アプリのアクティビティでそれらのアプリが対応できるインテントを示すことができます。
-「共有」などの一般的なインテントの場合、ユーザーはその要求を実現できる多くのアプリをインストールしている場合があります。
+<p><strong>インテント</strong>とは、アプリがあるアクションを実行するために、別のアプリにアシストを要求するためのシグナルを出すメカニズムです。
+アプリのアクティビティは、どのようなインテントに応答できるか決めることができます。
+「共有」などの一般的なインテントの場合、その要求に対応できるアプリが複数インストールされていることもあります。
 </p>
 
-<h4>例: 共有をサポートするアプリ間のナビゲーション</h4>
+<h4>例: アプリ間をナビゲートして共有をサポートする</h4>
 
-<p>アクティビティ、タスク、インテントの連携を理解するには、1 つのアプリが別のアプリを使ってユーザーによるコンテンツの共有を可能にする仕組みを知る必要があります。たとえばホームから Play ストアのアプリを起動すると、新しいタスク A が開始されるとします（以下の図を参照）。
-
-Play ストア内をナビゲートし、プロンプトで表示された書籍をタップしてその詳細を表示した後もユーザーは同じタスク内に留まり、アクティビティを追加するとタスクは拡張されます。
-「共有」アクションをトリガーすると、共有インテントを処理するよう登録されている（さまざまなアプリの）各アクティビティを示すダイアログがユーザー表示されます。
+<p>アクティビティ、タスク、インテントの連携を理解するには、あるアプリが別のアプリを使ってコンテンツを共有する仕組みについて理解する必要があります。
+たとえば、ホームから Play Store のアプリを起動すると、新しいタスク A が開始されるとします（以下の図を参照）。
+Play Store 内をナビゲートし、おすすめの書籍をタップしてその詳細を表示した後もユーザーは同じタスク内に留まり、アクティビティを追加するとタスクが拡張されます。
+「共有」アクションをトリガーすると、共有インテントを処理するよう登録されている（さまざまなアプリの）各アクティビティを一覧表示するダイアログが表示されます。
 
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_inward.png">
 
-<p>ユーザーが Gmail 経由で共有することを選択すると、Gmail の作成アクティビティがタスク A の続きとして追加されます &mdash; 新しいタスクは作成されません。
-Gmail にバックグラウンドで実行中の独自のタスクがある場合、そのタスクは影響を受けません。
+<p>Gmail で共有するよう選択すると、Gmail の作成アクティビティがタスク A の続きとして追加され、新しいタスクは作成されません。
+Gmail にバックグラウンドで実行中のタスクがある場合、そのタスクは影響を受けません。
 </p>
 
-<p>作成アクティビティからメッセージを送信するか、Back ボタンをタップするとユーザーは書籍の詳細アクティビティに戻ります。
-Back を連続してタップすると Play ストアに戻り、最終的にはホームが表示されます。
+<p>作成アクティビティからメッセージを送信するか、Back ボタンをタップすると書籍の詳細アクティビティに戻ります。
+Back ボタンを連続してタップすると Play Store に戻り、最後にホーム画面が表示されます。
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_back.png">
 
-<p>ただし、作成アクティビティから Up をタップすると、ユーザーは Gmail 内に留まる意思を示すことになります。
-Gmail の会話リストのアクティビティが表示され、新しいタスク B が作成されます。新しいタスクは常にホームをルートとしているため、会話リストからBack をタップするとホームに戻ります。
+<p>ただし、作成アクティビティで Up ボタンをタップすると、Gmail で引き続き作業することになります。
+Gmail の会話リストのアクティビティが表示され、新しいタスク B が作成されます。新しいタスクでは常にホーム画面がルートになるため、会話リストから Back ボタンをタップするとホーム画面に戻ります。
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_up.png">
 
-<p>タスク A はバックグラウンドで維持され、ユーザー後から（たとえば [最近使ったアプリ] 画面経由で）このタスクに戻ることができます。
-Gmail にバックグラウンドで実行中の独自のタスクが既にある場合、そのタスクはタスク B に置き換えられます &mdash; 前のコンテキストはユーザーの新しい目標の導入より破棄されます。
+<p>タスク A はバックグラウンドで待機しているので、後から（たとえば [最近使ったアプリ] 画面から）このタスクに戻ることができます。
+Gmail にバックグラウンドで実行中のタスクが既にある場合、そのタスクはタスク B に置き換えられます。新しいタスクが選択され、前のコンテキストは破棄されます。
 </p>
 
-<p>アプリがアプリ階層内の深い階層にあるアクティビティでインテントを処理するように登録されている場合は、Up ナビゲーションの指定方法について<a href="#into-your-app">ホームスクリーンのウィジェットと通知によるアプリへのナビゲーション</a>をご覧ください。
+<p>深い階層にあるアクティビティでインテントを処理するようアプリで登録されている場合は、Up ナビゲーションの指定方法については、<a href="#into-your-app">ホーム画面のウィジェットと通知を使用したアプリへのナビゲーション</a>をご覧ください。
 
 </p>
diff --git a/docs/html-intl/intl/ja/distribute/index.jd b/docs/html-intl/intl/ja/distribute/index-ja.jd
similarity index 100%
rename from docs/html-intl/intl/ja/distribute/index.jd
rename to docs/html-intl/intl/ja/distribute/index-ja.jd
diff --git a/docs/html-intl/intl/ja/guide/components/activities.jd b/docs/html-intl/intl/ja/guide/components/activities.jd
new file mode 100644
index 0000000..9b06d2c
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/activities.jd
@@ -0,0 +1,756 @@
+page.title=アクティビティ
+page.tags=activity,intent
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>本書の内容</h2>
+<ol>
+  <li><a href="#Creating">アクティビティを作成する</a>
+    <ol>
+      <li><a href="#UI">ユーザー インターフェースを実装する</a></li>
+      <li><a href="#Declaring">マニフェストでアクティビティを宣言する</a></li>
+    </ol>
+  </li>
+  <li><a href="#StartingAnActivity">アクティビティを開始する</a>
+    <ol>
+      <li><a href="#StartingAnActivityForResult">結果待ちのアクティビティを開始する</a></li>
+    </ol>
+  </li>
+  <li><a href="#ShuttingDown">アクティビティをシャットダウンする</a></li>
+  <li><a href="#Lifecycle">アクティビティのライフサイクルを管理する</a>
+    <ol>
+      <li><a href="#ImplementingLifecycleCallbacks">ライフサイクル コールバックを実装する</a></li>
+      <li><a href="#SavingActivityState">アクティビティの状態を保存する</a></li>
+      <li><a href="#ConfigurationChanges">構成の変更を処理する</a></li>
+      <li><a href="#CoordinatingActivities">アクティビティを連携する</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>キークラス</h2>
+<ol>
+  <li>{@link android.app.Activity}</li>
+</ol>
+
+<h2>関連ドキュメント</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/tasks-and-back-stack.html">タスクとバックスタック
+</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+<p>{@link android.app.Activity} は、電話をかける、写真を撮影する、メールを送る、マップを閲覧するといった操作をユーザーができる画面を提供するアプリケーション コンポーネントです。
+
+各アクティビティには、ユーザー インターフェースを描画できるウィンドウがあります。一般的にはウィンドウは画面と同じ大きさになりますが、画面より小さくしたり、他のウィンドウ上にフローティングさせたりすることもできます。
+
+</p>
+
+<p> 通常、アプリケーションは複数のアクティビティで構成されており、各アプリケーションはそれぞれ緩やかにつながっています。
+一般的には、アプリケーションの 1 つのアクティビティが「メイン」アクティビティとして指定され、ユーザーが初めてアプリケーションを起動したときに表示されるのがこのアクティビティになります。
+その後、各アクティビティで別のアクティビティを開始して別の操作を実行できます。
+新しいアクティビティの開始時には、前のアクティビティは停止しますが、そのアクティビティはシステムによってスタック（「バックスタック」）に維持されます 
+
+新しいアクティビティが開始すると、それがバックスタックに入ってユーザーに表示されます。
+バックスタックは「後入れ先出し」の基本的なスタック メカニズムを順守するため、ユーザーが現在のアクティビティを完了して [<em>戻る</em>] ボタンを押すと、そのアクティビティはスタックから消え（破棄され）、前のアクティビティが再開します。
+
+（バックスタックの詳細については、<a href="{@docRoot}guide/components/tasks-and-back-stack.html">タスクとバックスタック</a>ドキュメントで説明します）。
+
+</p>
+
+<p>新しいアクティビティが開始したことで、別のアクティビティが停止した場合、その状態の変化がアクティビティのライフサイクル コールバック メソッド経由で通知されます。システムがアクティビティを作成しているのか、停止しているのか、再開しているのか、破棄しているのかという状態の変化によって、アクティビティが受け取るコールバック メソッドにはいくつかの種類があり、各コールバックではユーザーがその状態の変化に応じた特定の操作を実行できます。
+
+
+&mdash;&mdash;
+
+たとえば、アクティビティが停止した場合は、ネットワーク接続やデータベース接続などの大きなオブジェクトを解放することになります。
+アクティビティが再開した場合は、必要なリソースを再度取得し、中断したところから操作を再開できます。
+このような状態の推移はすべて、アクティビティのライフサイクルの一部です。
+</p>
+
+<p>このドキュメントでは、さまざまなアクティビティの状態間の切り替えを正しく管理できるよう、アクティビティのライフサイクルの仕組みについてさらに詳しく説明する他、アクティビティのビルド方法と使用方法の基本について解説します。
+
+</p>
+
+
+
+<h2 id="Creating">アクティビティを作成する</h2>
+
+<p>アクティビティを作成するには、{@link android.app.Activity} のサブクラス（またはその既存のサブクラス）を作成する必要があります。
+サブクラスでは、アクティビティのライフサイクルの状態の切り替え時（アクティビティの作成、停止、再開、破棄など）にシステムが呼び出すコールバック メソッドを実装する必要があります。
+
+最も重要なコールバック メソッドは次の 2 つです。
+</p>
+
+<dl>
+  <dt>{@link android.app.Activity#onCreate onCreate()}</dt>
+  <dd>このメソッドは必ず実装してください。システムはアクティビティ作成の際にこのメソッドを呼び出します。
+実装の際には、アクティビティの必須コンポーネントを初期化する必要があります。
+
+    さらに重要な点は、ここで {@link android.app.Activity#setContentView
+    setContentView()} を呼び出してアクティビティのユーザー インターフェースのレイアウトを定義する必要があるということです。</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>システムは、ユーザーがアクティビティを終了したことを始めて示すときに、このメソッドを呼び出します（アクティビティが破棄されていない場合も含む）。
+通常はここで、現在のユーザー セッション後も維持する必要のある変更点を保存しておきます（ユーザーが戻ってこない可能性があるため）。
+
+</dd>
+</dl>
+
+<p>アクティビティ間の滑らかな操作感を実現し、アクティビティが停止したり破棄されたりする可能性のある予想外の中断に対応するために使用できるライフサイクル コールバック メソッドは他にもいくつかあります。
+
+すべてのライフサイクル コールバック メソッドについては、<a href="#Lifecycle">アクティビティのライフサイクルを管理する</a>のセクションで説明します。
+</p>
+
+
+
+<h3 id="UI">ユーザー インターフェースを実装する</h3>
+
+<p> アクティビティのユーザー インターフェースは、ビューの階層、 {@link android.view.View} から派生したオブジェクトから提供されます。&mdash;
+各ビューはアクティビティ ウィンドウ内の特定の長方形のエリアを制御し、ユーザーの操作に応答します。
+たとえば、1 つのビューが、ユーザーがタップしたときに操作を開始するボタンである場合があります。
+</p>
+
+<p>Android には、レイアウトのデザインや整理に使用できる既成のビューが多数用意されています。
+「ウィジェット」は、ボタン、テキスト フィールド、チェックボックス、画像といった画像の視覚的（操作可能な）要素を提供するビューです。
+「レイアウト」は、{@link
+android.view.ViewGroup} から派生したビューで、線形レイアウト、グリッド レイアウト、相対レイアウトなど、子ビューの特有のレイアウト モデルを提供するものです。
+また、{@link android.view.View} クラスと {@link android.view.ViewGroup} クラス（または既存のサブクラス）のサブクラスを作成し、独自のウィジェットやレイアウトを作ってアクティビティのレイアウトに適用することもできます。
+
+</p>
+
+<p>ビューを使用したレイアウトの定義で最も一般的なのは、XML レイアウト ファイルをアプリケーション リソースに保存する方法です。
+この方法では、ユーザー インターフェースのデザインを、アクティビティの挙動を定義するソース コードとは別に維持できます。
+{@link android.app.Activity#setContentView(int) setContentView()} を使用して、レイアウトのリソース ID を渡すと、アクティビティの UI としてレイアウトを設定できます。
+
+ただし、アクティビティ コードに新しい {@link android.view.View} を作成して、{@link android.view.ViewGroup} に新しい {@link
+android.view.View} を挿入してビュー階層をビルドし、ルートの {@link android.view.ViewGroup} を {@link android.app.Activity#setContentView(View)
+setContentView()} に渡して、そのレイアウトを使うこともできます。
+
+</p>
+
+<p>ユーザー インターフェースの作成の詳細については、「<a href="{@docRoot}guide/topics/ui/index.html">ユーザー インターフェース</a>」のドキュメントをご覧ください。</p>
+
+
+
+<h3 id="Declaring">マニフェストでアクティビティを宣言する</h3>
+
+<p>アクティビティがシステムにアクセスできるようにするには、マニフェストでアクティビティを宣言する必要があります。
+アクティビティを宣言するには、マニフェスト ファイルを開いて、<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 要素を <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a> の子要素として追加します。
+
+次に例を示します。</p>
+
+<pre>
+&lt;manifest ... &gt;
+  &lt;application ... &gt;
+      &lt;activity android:name=".ExampleActivity" /&gt;
+      ...
+  &lt;/application ... &gt;
+  ...
+&lt;/manifest &gt;
+</pre>
+
+<p>この要素には他にも、アクティビティのラベル、アクティビティのアイコン、アクティビティの UI を決めるテーマなどのプロパティを定義する属性を含めることができます。<a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">{@code android:name}</a> 属性は、アクティビティのクラス名を指定するもので、唯一の必須属性です。
+
+
+&mdash;アプリケーションを発行したら、この名前は変更できません。変更すると、アプリケーションのショートカットなどの一部の機能が破損する可能性があります（ブログの投稿「<a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Things That Cannot Change</a>」をご覧ください）。
+
+
+</p>
+
+<p>マニフェストでのアクティビティの宣言に関する詳細については、<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 要素のリファレンスをご覧ください。
+</p>
+
+
+<h4>インテント フィルタを使用する</h4>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> 要素でも &mdash; <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> 要素を使用してさまざまなインテント フィルタを指定して &mdash; 他のアプリケーション コンポーネントでのアクティベート方法を宣言できます。
+</p>
+
+<p>Android SDK ツールを使用して新しいアプリケーションを作成する際、自動的に作成されるスタブ アクティビティには、「メイン」アクションに応答するアクティビティで、「ランチャー」カテゴリに置かれるべきものを宣言するインテント フィルタが含まれます。
+
+インテント フィルタは次のように表示されます。
+</p>
+
+<pre>
+&lt;activity android:name=".ExampleActivity" android:icon="@drawable/app_icon"&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 要素は、これがアプリケーションへの「メイン」エントリ ポイントであることを指定します。<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 要素は、アクティビティをシステムのアプリケーション ランチャーに入れるべきであると指定します（ユーザーがこのアクティビティを起動できるようにします）。
+</p>
+
+<p>アプリケーションを自己完結型にして、他のアプリケーションでアクティビティをアクティベートできないようにする場合は、他のインテント フィルタは必要ありません。
+前の例のように、「メイン」アクションを持ち、「ランチャー」カテゴリにできるのは 1 つのアクティビティのみです。
+アクティビティを他のアプリケーションで利用できないようにする場合は、そのアクティビティにはインテント フィルタを使用せず、明示的なインテントを使用して自身でアクティビティを開始するようにできます（次のセクションで説明します）。
+
+</p>
+
+<p>ただし、他のアプリケーション（と自身のアプリケーション）から派生した暗黙的なインテントにアクティビティが応答するようにする場合は、アクティビティで追加のインテント フィルタを定義する必要があります。
+
+応答するインテントのタイプごとに、<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 要素を含む <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> と、任意で <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 要素や <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a> 要素を含める必要があります。
+これらの要素は、アクティビティが応答できるインテントのタイプを指定します。
+</p>
+
+<p>アクティビティがインテントに応答する方法の詳細については、「<a href="{@docRoot}guide/components/intents-filters.html">インテントとインテント フィルタ</a>」のドキュメントをご覧ください。
+</p>
+
+
+
+<h2 id="StartingAnActivity">アクティビティを開始する</h2>
+
+<p>@link android.app.Activity#startActivity
+  startActivity()} を呼び出して、開始するアクティビティを記述する {@link android.content.Intent} を渡すと、新しいアクティビティを開始できます。
+インテントは開始するアクティビティを正確に指定するか、実行する操作のタイプを記述します（システムが適切なアクティビティを選択しますが、それが他のアプリケーションのアクティビティである場合もあります）。
+
+
+また、インテントには開始したアクティビティで使用する少量のデータを含めることもできます。
+</p>
+
+<p>自身のアプリケーションを操作するとき、既知のアクティビティを起動することが頻繁にあります。
+ そのような場合、クラス名を使用して開始するアクティビティを明示的に定義するインテントを作成できます。
+例として、1 つのアクティビティで {@code
+SignInActivity} という名前の他のアクティビティを開始する方法を次に示します。</p>
+
+<pre>
+Intent intent = new Intent(this, SignInActivity.class);
+startActivity(intent);
+</pre>
+
+<p>ただし、アクティビティからのデータを使用して、アプリケーションでメールやテキスト メッセージの送信、ステータスのアップデートといった操作を実行する場合もあります。
+アプリケーションにそのような操作を実行できるアクティビティがない場合、代わりに、端末上の他のアプリケーションによるアクティビティを活用できます。
+
+ここが、インテントがその存在意義を発揮する場面です。実行する操作を記述するインテントを作成し、システムが適切なアクティビティを他のアプリケーションから起動します。
+&mdash;
+
+インテントを処理できるアクティビティが複数ある場合は、使用するアクティビティを 1 つユーザーが選択できます。
+たとえば、メールを送信できるようにする場合は、次のようなインテントを作成します。
+
+</p>
+
+<pre>
+Intent intent = new Intent(Intent.ACTION_SEND);
+intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);
+startActivity(intent);
+</pre>
+
+<p>インテントに追加された {@link android.content.Intent#EXTRA_EMAIL} のエクストラは、メールの送信先となるメールアドレスの文字列配列です。
+メール アプリケーションがこのインテントに応答するとき、エクストラにある文字列配列を読み取り、それをメール作成フォームの「宛先」フィールドに置きます。
+
+この場合、メール アプリケーションのアクティビティが開始してユーザーが操作を完了したときにアクティビティが再開します。
+</p>
+
+
+
+
+<h3 id="StartingAnActivityForResult">結果待ちのアクティビティを開始する</h3>
+
+<p>開始するアクティビティから結果を受け取りたい場合は、{@link android.app.Activity#startActivityForResult
+  startActivityForResult()}（{@link android.app.Activity#startActivity
+  startActivity()} の代わりに）を呼び出してアクティビティを開始します。
+その後のアクティビティから結果を受け取るには、
+{@link android.app.Activity#onActivityResult onActivityResult()} コールバック メソッドを実装します。
+後続のアクティビティが完了すると、{@link
+android.content.Intent} の結果を {@link android.app.Activity#onActivityResult onActivityResult()} メソッドに返します。
+</p>
+
+<p>たとえば、連絡先を 1 つ受け取って、アクティビティでその連絡先情報を使用する場合は、
+次のようにインテントを作成して結果を処理できます。
+</p>
+
+<pre>
+private void pickContact() {
+    // Create an intent to "pick" a contact, as defined by the content provider URI
+    Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
+    startActivityForResult(intent, PICK_CONTACT_REQUEST);
+}
+
+&#64;Override
+protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+    // If the request went well (OK) and the request was PICK_CONTACT_REQUEST
+    if (resultCode == Activity.RESULT_OK &amp;&amp; requestCode == PICK_CONTACT_REQUEST) {
+        // Perform a query to the contact's content provider for the contact's name
+        Cursor cursor = getContentResolver().query(data.getData(),
+        new String[] {Contacts.DISPLAY_NAME}, null, null, null);
+        if (cursor.moveToFirst()) { // True if the cursor is not empty
+            int columnIndex = cursor.getColumnIndex(Contacts.DISPLAY_NAME);
+            String name = cursor.getString(columnIndex);
+            // Do something with the selected contact's name...
+        }
+    }
+}
+</pre>
+
+<p>この例では、アクティビティの結果を処理するために {@link
+android.app.Activity#onActivityResult onActivityResult()} メソッドで使用すべき基本ロジックを示しています。
+1 つ目の条件では、要求が成功したかどうかを確認し、成功した場合は {@code resultCode} が{@link android.app.Activity#RESULT_OK} になり、この結果への要求が応答しているかどうかが判明します。この場合、{@code requestCode} が {@link android.app.Activity#startActivityForResult
+startActivityForResult()} で送信された 2 つ目のパラメータに一致しています。&mdash;
+&mdash;&mdash;
+
+そこから、コードが {@link android.content.Intent}（{@code data} パラメータ）に返されたデータを照会することでアクティビティの結果を処理します。
+</p>
+
+<p>ここで、{@link
+android.content.ContentResolver} がコンテンツ プロバイダに対してクエリを実行し、照会されたデータを読み取れるようにする {@link android.database.Cursor} が返されます。
+詳細については、「<a href="{@docRoot}guide/topics/providers/content-providers.html">コンテンツ プロバイダ</a>」のドキュメントをご覧ください。
+</p>
+
+<p>インテントの使用に関する詳細については、「<a href="{@docRoot}guide/components/intents-filters.html">インテントとインテント フィルタ</a>」のドキュメントをご覧ください。
+</p>
+
+
+<h2 id="ShuttingDown">アクティビティをシャットダウンする</h2>
+
+<p>アクティビティは、{@link android.app.Activity#finish
+finish()} メソッドを呼び出すことでシャットダウンできます。また、{@link android.app.Activity#finishActivity finishActivity()} を呼び出すと以前に開始した別のアクティビティをシャットダウンすることもできます。
+</p>
+
+<p class="note"><strong>注:</strong> ほとんどの場合、これらのメソッドを用いてアクティビティを明示的に終了しないでください。
+後述のアクティビティのライフサイクルでも説明していますが、Android システム自体がアクティビティのライフサイクルを管理するため、アクティビティを自身で終了させる必要はありません。
+
+これらのメソッドを呼び出すと、期待された操作性に影響を与えることがあるため、ユーザーが絶対にアクティビティのこのインスタンスに戻らないようにする場合にのみ使用するようにしてください。
+
+</p>
+
+
+<h2 id="Lifecycle">アクティビティのライフサイクルを管理する</h2>
+
+<p>コールバック メソッドを実装したアクティビティのライフサイクルの管理は、強固で柔軟なアプリケーションの開発にとって重要です。
+
+アクティビティのライフサイクルは、他のアクティビティ、タスク、バックスタックとの関連による影響を直接受けます。
+</p>
+
+<p>基本的に、アクティビティには次の 3 つの状態があります。</p>
+
+<dl>
+  <dt><i>再開状態</i></dt>
+    <dd>アクティビティが画面のフォアグラウンドにあり、ユーザー フォーカスのある状態。（この状態は「実行中」とも呼ばれます）。
+</dd>
+
+  <dt><i>一時停止状態</i></dt>
+    <dd>他のアクティビティがフォアグラウンドにあり、メインに表示されているが、このアクティビティも表示されている。つまり、このアクティビティの上に他のアクティビティが表示されており、他方のアクティビティは一部が透明であるか、画面全体を覆ってはいない状態です。
+
+一時停止状態のアクティビティは完全に生きている状態ですが（{@link android.app.Activity} オブジェクトがメモリに保持されており、すべての状態やメンバー情報が維持され、ウィンドウ マネージャーにもアタッチされたまま）、メモリ量が極端に低下した場合にはシステムによって強制停止される場合もあります。
+
+</dd>
+
+  <dt><i>停止状態</i></dt>
+    <dd>アクティビティは、他のアクティビティによって完全に見えない状態です（アクティビティが「バックグラウンド」にある）。
+停止状態のアクティビティもまだ生きていますが（{@link android.app.Activity} オブジェクトがメモリに保持されており、すべての状態やメンバー情報が維持されているが、ウィンドウ マネージャーにはアタッチ<em>されていない</em>状態です）。
+
+ただし、ユーザーには表示されておらず、別の場所でメモリが必要になればシステムによって強制終了される場合もあります。
+</dd>
+</dl>
+
+<p>アクティビティが一時停止か停止状態の場合、システムはアクティビティに終了するかどうかを尋ねる（{@link android.app.Activity#finish finish()} メソッドを呼び出す）か、単純にプロセスを強制終了してメモリから解放できます。
+
+アクティビティを再度開くとき（終了や強制終了後）は、もう一度最初から作成する必要があります。
+</p>
+
+
+
+<h3 id="ImplementingLifecycleCallbacks">ライフサイクル コールバックを実装する</h3>
+
+<p>アクティビティが上記の異なる状態の間を遷移するとき、さまざまなコールバック メソッドを介して通知されます。
+すべてのコールバック メソッドは、アクティビティの状態が変化したときに必要な操作を実行するようオーバーライドできるフックになります。
+次のスケルトン アクティビティには、基本的なライフサイクル メソッドがそれぞれ含まれています。
+</p>
+
+
+<pre>
+public class ExampleActivity extends Activity {
+    &#64;Override
+    public void {@link android.app.Activity#onCreate onCreate}(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // The activity is being created.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStart onStart()} {
+        super.onStart();
+        // The activity is about to become visible.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onResume onResume()} {
+        super.onResume();
+        // The activity has become visible (it is now "resumed").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onPause onPause()} {
+        super.onPause();
+        // Another activity is taking focus (this activity is about to be "paused").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStop onStop()} {
+        super.onStop();
+        // The activity is no longer visible (it is now "stopped")
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onDestroy onDestroy()} {
+        super.onDestroy();
+        // The activity is about to be destroyed.
+    }
+}
+</pre>
+
+<p class="note"><strong>注:</strong> これらのライフサイクル メソッドを実装する際は、上記の例のように、すべての操作の前にスーパークラスの実装を呼び出す必要があります。
+</p>
+
+<p>これらのメソッドすべてで、アクティビティのライフサイクル全体を定義します。これらのメソッドを実装すると、アクティビティのライフサイクル内の次の 3 つのネストされたループを監視できます。
+ </p>
+
+<ul>
+<li>アクティビティの<b> entire lifetime</b> は、{@link
+android.app.Activity#onCreate onCreate()} の呼び出しから、{@link
+android.app.Activity#onDestroy} の呼び出しまでの間です。アクティビティは、{@link android.app.Activity#onCreate onCreate()} で「グローバル」状態のセットアップ（レイアウトの定義など）を実行し、{@link android.app.Activity#onDestroy} に残っているすべてのリソースを解放する必要があります。
+
+たとえば、アクティビティにネットワークからデータをダウンロードするためバックグラウンドで実行しているスレッドがある場合、そのスレッドが {@link android.app.Activity#onCreate onCreate()} に作成され、{@link
+android.app.Activity#onDestroy} のスレッドが停止される場合があります。
+
+</li>
+
+<li><p>アクティビティの<b>visible lifetime</b> は、{@link
+android.app.Activity#onStart onStart()} の呼び出しから、{@link
+android.app.Activity#onStop onStop()} の呼び出しまでの間です。この間、アクティビティは画面上に表示され、ユーザーが操作できる状態です。
+たとえば {@link android.app.Activity#onStop onStop()} は、新たなアクティビティが開始してこのアクティビティが表示されなくなったときに呼び出されます。
+これらの 2 つのメソッド間で、アクティビティをユーザーに表示するのに必要なリソースは保持できます
+たとえば、{@link android.content.BroadcastReceiver} を {@link
+android.app.Activity#onStart onStart()} に登録して UI に影響のある変更を監視し、ユーザーが表示内容の閲覧をやめたときに {@link android.app.Activity#onStop onStop()} で登録解除できます
+
+
+アクティビティがユーザーに表示されたり、非表示になったりとアクティビティの状態が変化する場合、アクティビティの entire lifetime 中にシステムが {@link android.app.Activity#onStart onStart()} と {@link
+android.app.Activity#onStop onStop()} を複数回呼び出すこともあります。
+</p></li>
+
+<li><p>アクティビティの <b>foreground lifetime</b> は {@link
+android.app.Activity#onResume onResume()} の呼び出しから、{@link android.app.Activity#onPause
+onPause()} の呼び出しまでの間です。この間、アクティビティは画面上の他のすべてのアクティビティの前面にあり、ユーザーの入力フォーカスがある状態です。
+アクティビティは フォアグラウンドにある状態からそうでない状態に頻繁に遷移する可能性があります。たとえば、端末がスリープ状態になったり、ダイアログが表示されたりしたときには{@link android.app.Activity#onPause onPause()} が呼び出されます。
+&mdash;
+この状態遷移は頻繁に起こるため、この 2 つのメソッドのコードはユーザーを待たせてしまうような遅い遷移にならないよう、適正な軽い処理にしておく必要があります。
+</p></li>
+</ul>
+
+<p>図 1 では、状態間でアクティビティがたどる可能性のあるループと経路を表しています。長方形はアクティビティが状態間で遷移したときの処理用に実装できるコールバック メソッドを表しています。
+
+ <p>
+
+<img src="{@docRoot}images/activity_lifecycle.png" alt="" />
+<p class="img-caption"><strong>図 1.</strong> アクティビティのライフサイクル</p>
+
+<p>表 1 には同じライフサイクル コールバック メソッドがリストされており、各コールバック メソッドの詳細と、アクティビティのライフサイクル全体でのそれぞれの位置関係、コールバック メソッドの完了後にシステムによってアクティビティが強制終了されるかどうかを示しています。
+
+
+</p>
+
+<p class="table-caption"><strong>表 1.</strong> ライフサイクル コールバック メソッドの概要
+</p>
+
+<table border="2" width="85%" frame="hsides" rules="rows">
+<colgroup align="left" span="3"></colgroup>
+<colgroup align="left"></colgroup>
+<colgroup align="center"></colgroup>
+<colgroup align="center"></colgroup>
+
+<thead>
+<tr><th colspan="3">メソッド</th> <th>説明</th> <th>完了後の強制終了</th> <th>次のメソッド</th></tr>
+</thead>
+
+<tbody>
+<tr>
+  <td colspan="3" align="left"><code>{@link android.app.Activity#onCreate onCreate()}</code></td>
+  <td>アクティビティが最初に作成されるときに呼び出されます。
+      ここで、ビューの作成、リストとのデータバインドといった、通常の静的なセットアップを行います。&mdash;
+アクティビティの前の状態を含む Bundle オブジェクトを取り出せた場合、それをメソッドに渡します（後半の<a href="#actstate">アクティビティの状態を保存する</a>をご覧ください）。
+
+
+
+      <p>常に {@code onStart()} が後に続きます。</p></td>
+  <td align="center">いいえ</td>
+      <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td rowspan="5" style="border-left: none; border-right: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onRestart
+onRestart()}</code></td>
+   <td>アクティビティが停止した後、再開する直前に呼び出されます。
+
+       <p>常に {@code onStart()} が後に続きます。</p></td>
+   <td align="center">いいえ</td>
+   <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStart onStart()}</code></td>
+   <td>アクティビティがユーザーに見える状態になる直前に呼び出されます。
+       <p>アクティビティがフォアグラウンドになったときは {@code onResume()} が後に続き、アクティビティが非表示になったときは {@code onStop()} が後に続きます。
+</p></td>
+    <td align="center">いいえ</td>
+    <td align="center">{@code onResume()} <br/>または<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td rowspan="2" style="border-left: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td align="left"><code>{@link android.app.Activity#onResume onResume()}</code></td>
+   <td>アクティビティとユーザーとの操作が開始する直前に呼び出されます。
+この時点で、アクティビティはアクティビティ スタックの先頭にあり、ユーザー入力の準備ができています。
+
+       <p>常に {@code onPause()} が後に続きます。</p></td>
+   <td align="center">いいえ</td>
+   <td align="center">{@code onPause()}</td>
+</tr>
+
+<tr>
+   <td align="left"><code>{@link android.app.Activity#onPause onPause()}</code></td>
+   <td>システムが別のアクティビティを再開する直前に呼び出されます。
+通常、このメソッドは永続化データへの未保存の変更をコミットしたり、アニメーションや CPU を消費する可能性のあるその他の動作を停止したりする際に使用されます。
+
+それが完了するまで次のアクティビティが再開できないため、それらの操作は迅速に行う必要があります。
+
+       <p>アクティビティが前面に戻るときは {@code onResume()} が後に続き、アクティビティが非表示になるときは {@code onStop()} が後に続きます。
+
+</td>
+   <td align="center"><strong style="color:#800000">はい</strong></td>
+   <td align="center">{@code onResume()} <br/>または<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStop onStop()}</code></td>
+   <td>アクティビティがユーザーに見えなくなると呼び出されます。これは、アクティビティが破棄されたか、別のアクティビティ（既存のアクティビティや新しいアクティビティ）が再開されてこのアクティビティを覆っている場合に起こります。
+
+
+       <p>アクティビティのユーザー操作が可能に戻るときは {@code onRestart()} が後に続き、アクティビティがなくなるときは {@code onDestroy()} が後に続きます。
+
+</p></td>
+   <td align="center"><strong style="color:#800000">はい</strong></td>
+   <td align="center">{@code onRestart()} <br/>または<br/> {@code onDestroy()}</td>
+</tr>
+
+<tr>
+   <td colspan="3" align="left"><code>{@link android.app.Activity#onDestroy
+onDestroy()}</code></td>
+   <td>アクティビティが破棄される前に呼び出されます。これはアクティビティが受け取る最後の呼び出しです。
+アクティビティが終了した（<code>{@link android.app.Activity#finish
+       finish()}</code> が呼び出された）か、アクティビティ領域を節約するためにシステムが一時的にこのアクティビティを破棄した場合に呼び出されます。
+
+この 2 つのシナリオは、<code>{@link
+       android.app.Activity#isFinishing isFinishing()}</code> メソッドで区別できます。
+</td>
+   <td align="center"><strong style="color:#800000">はい</strong></td>
+   <td align="center"><em>なし</em></td>
+</tr>
+</tbody>
+</table>
+
+<p>「完了後の強制終了」の列は、<em>メソッドが戻った後</em>に、アクティビティのコードの後続行を実行することなく、アクティビティをホストするプロセスをシステムが強制終了できるかどうかを示しています。
+
+3 つのメソッド（{@link
+android.app.Activity#onPause
+onPause()}、{@link android.app.Activity#onStop onStop()}、{@link android.app.Activity#onDestroy
+onDestroy()}）が「はい」になっています。{@link android.app.Activity#onPause onPause()} は 3 つのなかで最初であるため、アクティビティが作成された後は{@link android.app.Activity#onPause onPause()} がプロセスが強制終了される<em>可能性がある</em>前に呼び出されることが保証される最後のメソッドです。システムが緊急でメモリを空ける必要がある場合は、{@link
+android.app.Activity#onStop onStop()} と {@link android.app.Activity#onDestroy onDestroy()} は呼び出されない場合があります。
+
+&mdash;
+
+そのため、重要な永続的データ（ユーザーの編集内容など）をストレージに書き込む際は、{@link android.app.Activity#onPause onPause()} を使用する必要があります。
+ただし、このメソッドで後続のアクティビティへの遷移をブロックしてしまい、ユーザー操作の速度を送らせてしまうことから、{@link android.app.Activity#onPause onPause()} 中にどんな情報を保持するかについては吟味する必要があります。
+
+
+</p>
+
+<p> <b>「強制終了」</b>列で「いいえ」となっているメソッドでは、アクティビティが呼び出された時点から、アクティビティをホストするプロセスが強制終了されないよう保護します。
+つまり、アクティビティが強制終了される可能性があるのは、{@link android.app.Activity#onPause onPause()} が戻ってから、{@link android.app.Activity#onResume onResume()} が呼び出されるまでの間です。
+
+{@link android.app.Activity#onPause onPause()} が再度呼び出されて戻るまでは、再度強制終了されることはありません。
+ </p>
+
+<p class="note"><strong>注:</strong> 表 1 の定義では技術的に「強制終了」できないアクティビティでも、システムによって強制終了されることがありますが、そうなるのはリソース不足などの緊急時のみです。
+&mdash;
+アクティビティが強制終了されるケースについては、<a href="{@docRoot}guide/components/processes-and-threads.html">Processes and Threading</a> のドキュメントで説明しています。
+
+</p>
+
+
+<h3 id="SavingActivityState">アクティビティの状態を保存する</h3>
+
+<p><a href="#Lifecycle">アクティビティのライフサイクルを管理する</a>でも簡単に説明したように、アクティビティが一時停止や停止したとき、アクティビティの状態は保持されます。
+
+これは、一時停止や停止されたときも {@link android.app.Activity} オブジェクトがメモリに保持されるためです &mdash; メンバーや現在の状態といったすべての情報は残っています。
+
+つまり、アクティビティ内でユーザーが加えた変更点は保持されるため、アクティビティがフォアグラウンドに戻ったとき（「再開」したとき）、それらの変更点はそのまま表示されます。
+
+</p>
+
+<p>ただし、メモリを確保するためにシステムがアクティビティを破棄すると、 {@link
+android.app.Activity} オブジェクトが破棄されるため、システムはそれをそのままの状態で再開できなくなります。
+代わりに、ユーザーがそれに戻る操作を行った場合、システムは {@link android.app.Activity} オブジェクトを再作成します。
+ユーザーにはシステムがアクティビティを破棄して再作成したことはわからないため、アクティビティが以前の状態のままであることを期待します。
+
+この場合、アクティビティの状態情報を保存できる追加のコールバック メソッド（{@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}）を実装することで、アクティビティの状態に関する重要な情報を維持できます。
+
+</p>
+
+<p>アクティビティが破棄されるような状態になる前に、システムが {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()} を呼び出します。
+システムはこのメソッドを {@link android.os.Bundle} に渡し、そこでアクティビティの状態情報を名前と値のペアとして {@link
+android.os.Bundle#putString putString()} や {@link
+android.os.Bundle#putInt putInt()} などのメソッドを使用して保存できます。
+
+その後、システムがアプリケーション プロセスを強制終了して、ユーザーがアクティビティに戻った場合、システムはアクティビティを再作成して {@link android.os.Bundle} を {@link android.app.Activity#onCreate onCreate()} と {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} の両方に渡します。
+
+いずれのメソッドを使った場合でも、保存した状態を {@link android.os.Bundle} から抽出してアクティビティの状態を復元できます。
+
+復元する状態情報がない場合は、{@link
+android.os.Bundle} は null で渡されます（アクティビティを最初に作成した場合がこれにあたります）。
+</p>
+
+<img src="{@docRoot}images/fundamentals/restore_instance.png" alt="" />
+<p class="img-caption"><strong>図 2.</strong> アクティビティが前の状態のままでユーザー フォーカスに戻るには、アクティビティが破棄され、再作成された後にアクティビティが保存された以前の状態を復元する必要があるか、アクティビティが停止し、再開した後にアクティビティの状態が以前のままになるか、の 2 つの方法があります。
+
+
+</p>
+
+<p class="note"><strong>注:</strong> アクティビティが破棄される前に {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} が呼び出される保証はありません。これは、状態を保存する必要がないケースがあるためです（ユーザーが [<em>戻る</em>] ボタンを使用してアクティビティを離れることで明示的にアクティビティを閉じた場合など）。
+
+
+
+システムが {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()} を呼び出す場合、呼び出しは常に {@link
+android.app.Activity#onStop onStop()} の前、場合によっては {@link android.app.Activity#onPause
+onPause()} の前に行われます。</p>
+
+<p>ただし、何もせず {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} も実装しない場合でも、{@link android.app.Activity} クラスの {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} のデフォルトの実装によって、アクティビティの状態が復元されるものもあります。
+具体的には、デフォルトの実装がレイアウト内のすべての {@link
+android.view.View} の {@link
+android.view.View#onSaveInstanceState onSaveInstanceState()} を呼び出すことで、各ビューが保存すべき情報を提供できるようになります。
+
+Android フレームワークの大半のウィジェットが必要に応じてこのメソッドを実装しており、UI への視覚的な変更は自動的に保存され、アクティビティが再作成されると復元されるようになっています。
+
+たとえば、{@link android.widget.EditText} ウィジェットではユーザーが入力したすべてのテキストを保存し、{@link android.widget.CheckBox} ウィジェットはオンにされたかどうかを保存するようになっています。
+
+ここで必要な作業は、状態を保存する各ウィジェット用の一意の ID（<a href="{@docRoot}guide/topics/resources/layout-resource.html#idvalue">{@code android:id}</a>）を提供するだけです。
+ウィジェットに ID がないと、システムは状態を保存できません。
+</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<p>また、レイアウトのビューでの状態の保存を明示的に停止するには、{@link android.R.attr#saveEnabled android:saveEnabled} 属性を {@code "false"} に設定するか、{@link android.view.View#setSaveEnabled setSaveEnabled()} メソッドを呼び出します。
+
+通常はこの機能を無効にしませんが、アクティビティ UI の状態を別の方法で復元する場合には無効にできます。
+</p>
+</div>
+</div>
+
+<p>{@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} のデフォルトの実装によってアクティビティの UI に関する有用な情報は保存されますが、追加の情報を保存するようそれをオーバーライドすることもできます。例としては、アクティビティの期間に変更されたメンバー値を保存する必要があるケースなどがあります。（UI で復元された値に関連している場合でも、それらの UI 値を持つメンバーはデフォルトでは復元されません）。
+
+
+
+</p>
+
+<p>{@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} のデフォルトの実装で UI の状態を保存できるため、状態の追加情報を保存するようメソッドをオーバーライドする場合は、常に作業前に {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()} のスーパークラス実装を呼び出す必要があります。
+
+
+同様に、オーバーライドする場合はデフォルトの実装でビューの状態を復元できるよう、{@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} のスーパークラスの実装も呼び出す必要があります。
+</p>
+
+<p class="note"><strong>注:</strong> {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()} は呼び出される保証がないため、これはアクティビティの一時的な状態の記録用にのみ使用し、永続的データの保存には使用しないようにします。
+
+&mdash;代わりに {@link
+android.app.Activity#onPause onPause()} を使用して、ユーザーがアクティビティを離れたときの永続的データ（データベースに保存するインストール必要のあるデータなど）を保存します。
+</p>
+
+<p>アプリケーションが状態を復元できるかどうかテストするには、端末を回転してみて、方向が変化するかを確認します
+画面の方向が変わるとき、システムがアクティビティを破棄して再作成し、新しい画面構成に利用可能な別のリソースを適用します。
+
+アプリケーションの使用中にユーザーが端末を回転させるという場面は日常的にあるため、アクティビティが再作成されたときに状態を完全に復元することは非常に重要です。
+
+</p>
+
+
+<h3 id="ConfigurationChanges">構成の変更を処理する</h3>
+
+<p>端末の構成の中には、実行の際に変化するものがあります（画面の向き、キーボードの可用性、言語など）。
+そのような変化が生じたとき、Android は実行中のアクティビティを再作成します（システムが {@link android.app.Activity#onDestroy} を呼び出し、その後すぐに {@link
+android.app.Activity#onCreate onCreate()}）を呼び出します。
+この動作は、提供した別のリソース（異なる画面の向きやサイズに応じたレイアウトなど）を使用してアプリケーションを自動的にリロードすることで、アプリケーションを新しい構成に適応させることを目的としています。
+
+
+</p>
+
+<p>前述のように画面の向きの変化による再起動を処理して、アクティビティの状態を復元するようアプリケーションを適切にデザインしていれば、アプリケーションはアクティビティのライフサイクルでの予期しない他のイベントに対しても回復力を持つことができます。
+
+</p>
+
+<p>このような再起動を処理するのに最適な方法は、前のセクションで説明したように、{@link
+  android.app.Activity#onSaveInstanceState onSaveInstanceState()} と {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}（または {@link
+android.app.Activity#onCreate onCreate()}）を使用してアクティビティの状態を保存、復元する方法です。
+</p>
+
+<p>実行の際に起こる構成の変更と、その処理方法の詳細については、「<a href="{@docRoot}guide/topics/resources/runtime-changes.html">実行時の変更の処理</a>」のガイドをご覧ください。
+
+</p>
+
+
+
+<h3 id="CoordinatingActivities">アクティビティを連携する</h3>
+
+ <p>1 つのアクティビティで別のアクティビティを開始すると、双方でライフサイクルの遷移が生じます。1 つ目のアクティビティが一時停止したり停止したりすると（バックグラウンドにある場合は停止しません）、もう一方のアクティビティが作成されます。
+
+これらのアクティビティでディスクなどに保存されているデータを共有している場合は、2 つ目のアクティビティが作成される前に 1 つ目のアクティビティが完全に停止することはないということを理解しておくことが重要です。むしろ、2 つ目の開始プロセスは、1 つ目の停止プロセスにオーバーラップします。
+
+
+</p>
+
+<p>特に 2 つのアクティビティが同じプロセスにあって 1 つが別のアクティビティを開始する場合、ライフサイクル コールバックの順序は厳密に定義されています。
+アクティビティ A がアクティビティ B を開始する場合の動作の順序を次に示します。
+ </p>
+
+<ol>
+<li>アクティビティ A の {@link android.app.Activity#onPause onPause()} メソッドが実行されます。</li>
+
+<li>アクティビティ B の {@link android.app.Activity#onCreate onCreate()}、{@link
+android.app.Activity#onStart onStart()}、{@link android.app.Activity#onResume onResume()} メソッドが順次実行されます
+（このとき、ユーザー フォーカスはアクティビティ B にあります）。</li>
+
+<li>次に、アクティビティ A が画面から消えた場合、{@link
+android.app.Activity#onStop onStop()} メソッドが実行されます。</li>
+</ol>
+
+ <p>このライフサイクル コールバックの順序を予測しておくことで、1 つのアクティビティから他のアクティビティへの情報の遷移を管理できるようになります。
+たとえば、1 つ目のアクティビティが停止したときに、後続のアクティビティが読み取れるようにデータベースに書き込む必要がある場合、データベースに書き込むタイミングは {@link
+android.app.Activity#onStop onStop()} ではなく {@link android.app.Activity#onPause onPause()} の間になります。
+
+</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how Android maintains a history of activities and
+enables user multitasking, continue with the <b><a
+href="{@docRoot}guide/components/tasks-and-back-stack.html">Tasks and Back
+Stack</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/ja/guide/components/bound-services.jd b/docs/html-intl/intl/ja/guide/components/bound-services.jd
new file mode 100644
index 0000000..d115e76
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/bound-services.jd
@@ -0,0 +1,658 @@
+page.title=バインドされたサービス
+parent.title=サービス
+parent.link=services.html
+@jd:body
+
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>本書の内容</h2>
+<ol>
+  <li><a href="#Basics">基本</a></li>
+  <li><a href="#Creating">バインドされたサービスを作成する</a>
+    <ol>
+      <li><a href="#Binder">Binder クラスを拡張する</a></li>
+      <li><a href="#Messenger">メッセンジャーを使用する</a></li>
+    </ol>
+  </li>
+  <li><a href="#Binding">サービスにバインドする</a></li>
+  <li><a href="#Lifecycle">バインドされたサービスのライフサイクルを管理する</a></li>
+</ol>
+
+<h2>キークラス</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.content.ServiceConnection}</li>
+  <li>{@link android.os.IBinder}</li>
+</ol>
+
+<h2>サンプル</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+      RemoteService}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>関連ドキュメント</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/services.html">サービス</a></li>
+</ol>
+</div>
+
+
+<p>バインドされたサービスは、クライアントサーバー インターフェースにおけるサーバーになります。バインドされたサービスでは、コンポーネント（アクティビティなど）をサービスにバインドしたり、送信を要求したり、受信を応答したり、さらにはプロセス間通信（IPC）を実行したりできるようにします。
+
+通常、バインドされたサービスは他のアプリケーション コンポーネントを提供している間だけ機能し、バックグラウンドで無期限に実行されることはありません。
+</p>
+
+<p>このドキュメントでは、他のアプリケーション コンポーネントからのサービスにバインドする方法を含む、バインドされたサービスの作成方法について説明します。
+ただし、サービスから通知を配信する方法や、フォアグラウンドでサービスを実行するよう設定する方法など、サービス全般の詳細については、「<a href="{@docRoot}guide/components/services.html">サービス</a>」のドキュメントをご覧ください。
+
+</p>
+
+
+<h2 id="Basics">基本</h2>
+
+<p>バインドされたサービスは、他のアプリケーションのバインドとやり取りを可能にする {@link android.app.Service} クラスの実装です。
+サービスのバインドを提供するには、{@link android.app.Service#onBind onBind()} コールバック メソッドを実装する必要があります。
+このメソッドでは {@link android.os.IBinder} オブジェクトが返されます。このオブジェクトはクライアントがサービスとのやり取りに使用するプログラミング インターフェースを定義します。
+
+</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>開始されたサービスにバインドする</h3>
+
+<p><a href="{@docRoot}guide/components/services.html">サービス</a> ドキュメントで説明されているように、開始されるサービスとバインドされるサービスの両方を作成できます。
+つまり、{@link android.content.Context#startService startService()} を呼び出して開始されるサービスは無期限に実行でき、クライアントが {@link
+android.content.Context#bindService bindService()} を呼び出してサービスにバインドできます。
+
+
+  <p>サービスの開始とバインドを許可すると、サービスが開始するとすべてのクライアントがアンバインドしても、システムによってサービスが破棄されることは<em>ありません</em>。
+代わりに、{@link android.app.Service#stopSelf stopSelf()} や {@link
+android.content.Context#stopService stopService()} を呼び出して、サービスを明示的に停止する必要があります。
+</p>
+
+<p>通常実装するのは、{@link android.app.Service#onBind onBind()}
+<em> か </em>{@link android.app.Service#onStartCommand onStartCommand()} のどちらかですが、両方の実装が必要な場合もあります。
+たとえば、音楽プレーヤーの場合はサービスを無期限に実行しつつ、バインドも提供できると便利な場合があります。
+この方法であれば、アクティビティがサービスを開始して音楽を再生し、ユーザーがアプリケーションから離れた場合も音楽を再生し続けることができます。
+次にユーザーがアプリケーションに戻ったとき、アクティビティがサービスにバインドして再生のコントロールをもう一度行えるようになります。
+</p>
+
+<p>開始されたサービスにバインドを追加する際のサービスのライフサイクルの詳細については、<a href="#Lifecycle">バインドされたサービスのライフサイクルを管理する</a>を必ずご覧ください。
+
+</p>
+</div>
+</div>
+
+<p>クライアントは、{@link android.content.Context#bindService
+bindService()} を呼び出せばサービスにバインドできます。バインドするときは、サービスとの接続を監視する {@link
+android.content.ServiceConnection} を実装する必要があります。{@link
+android.content.Context#bindService bindService()} メソッドは値なしですぐに返されますが、Android システムがクライアントとサービス間の接続を作成すると {@link
+android.content.ServiceConnection} の {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} が呼び出され、クライアントがサービスとの通信に使用できる {@link android.os.IBinder} が配信されます。
+
+
+</p>
+
+<p>複数のクライアントが同時にサービスに接続できます。ただし、1 つ目のクライアントのバインドの際にのみ、システムはサービスの {@link android.app.Service#onBind onBind()} メソッドを呼び出して{@link android.os.IBinder} を取得します。
+
+その後システムは {@link android.app.Service#onBind onBind()} を呼び出すことなく、同じ {@link android.os.IBinder} をバインドしたすべてのクライアントに配信します。
+</p>
+
+<p>最後のクライアントがサービスからアンバインドされると、システムはサービスを破棄します（サービスが {@link android.content.Context#startService startService()} でも開始された場合を除く）。
+</p>
+
+<p>バインドされたサービスを実装するときに最も重要なのは、{@link android.app.Service#onBind onBind()} コールバック メソッドが返すインターフェースを定義することです。
+サービスの {@link android.os.IBinder} インターフェースの定義には複数の方法があり、次のセクションではそれぞれのテクニックについて説明していきます。
+
+</p>
+
+
+
+<h2 id="Creating">バインドされたサービスを作成する</h2>
+
+<p>バインドを提供するサービスを作成するとき、クライアントがサービスとのやり取りに使用するプログラミング インターフェースを提供する {@link android.os.IBinder} を提示する必要があります。
+インターフェースを定義するには、次の 3 つの方法があります。
+</p>
+
+<dl>
+  <dt><a href="#Binder">Binder クラスを拡張する</a></dt>
+  <dd>サービスが独自のアプリケーション専用であり、クライアントと同じプロセスで実行する場合（ほとんどのケースに該当）、{@link android.os.Binder} クラスを拡張して {@link android.app.Service#onBind onBind()} からそのインスタンスを返すことでインターフェースを作成します。
+
+
+クライアントは {@link android.os.Binder} を受け取り、それを使用して {@link android.os.Binder} の実装や {@link android.app.Service} で利用できる public メソッドに直接アクセスできます。
+
+
+  <p>サービスが単にアプリケーションのバックグラウンド ワーカーである場合は、この方法が適しています。
+この方法が適していない唯一のケースは、サービスが他のアプリケーションや、別のプロセス間で使用されている場合です。
+</dd>
+
+  <dt><a href="#Messenger">メッセンジャーを使用する</a></dt>
+  <dd>別のプロセス間で動作するインターフェースが必要な場合は、{@link android.os.Messenger} を使用してサービス用のインターフェースを作成できます。
+この方法では、サービスが異なるタイプの {@link
+android.os.Message} オブジェクトに応答する {@link android.os.Handler} を定義します。
+この {@link android.os.Handler} を基本として {@link android.os.Messenger} は {@link android.os.IBinder} をクライアントと共有でき、 クライアントは {@link
+android.os.Message} オブジェクトを使用してサービスにコマンドを送信できるようになります。
+
+さらに、クライアントはサービスがメッセージを返信できるように独自の {@link android.os.Messenger} を定義できます。
+
+  <p>これは、最も簡単にプロセス間通信（IPC）を実行する方法であり、{@link
+android.os.Messenger} がすべてのリクエストを 1 つのスレッドにキューイングするため、サービスをスレッドセーフにデザインする必要がありません。
+</p>
+  </dd>
+
+  <dt>AIDL を使用する</dt>
+  <dd>AIDL（Android インターフェース定義言語）は、オブジェクトをオペーレーティングシステムが理解できるプリミティブに分解するためのすべての処理のを実行し、プロセス間でそれを整理して IPC 実行します。{@link android.os.Messenger} を使用する前の方法は、実際には AIDL を基本構造としています。
+
+
+前述したように、{@link android.os.Messenger} はすべてのクライアントの要求のキューを 1 つのスレッドに作成するため、サービスは要求を一度に受け取ります。
+ただし、サービスで複数の要求を同時に処理する場合は、AIDL を直接使用できます。
+
+その場合、サービスがマルチスレッドに対応しており、スレッドセーフで構築されている必要があります。
+  <p>AIDL を直接使用するには、プログラミング インターフェースを定義する {@code .aidl} ファイルを作成する必要があります。
+Android SDK ツールはこのファイルを使用して、インターフェースを実装して IPC を処理する抽象クラスを生成し、それをサービス内に拡張できます。
+
+</p>
+  </dd>
+</dl>
+
+  <p class="note"><strong>注:</strong> ほとんどのアプリケーションにおいて、マルチスレッド化が必要な点や、結果的により複雑な実装となってしまうことから、AIDL を使ったバインドされたサービスの作成は<strong>お勧めしません</strong>。
+
+AIDL はほとんどのアプリケーションに適していないため、このドキュメントではサービスでの AIDL の使用方法については取り上げません。
+どうしても AIDL の直接使用が必要な場合は、「<a href="{@docRoot}guide/components/aidl.html">AIDL</a>」のドキュメントをご覧ください。
+
+</p>
+
+
+
+
+<h3 id="Binder">Binder クラスを拡張する</h3>
+
+<p>サービスがローカルのアプリケーションでのみ使用されていて、プロセス間での作業が必要ない場合は、クライアントがサービスの public メソッドに直接アクセスできるようにする独自の {@link android.os.Binder} クラスを実装できます。
+
+</p>
+
+<p class="note"><strong>注:</strong> この方法は、クライアントとサービスが同じアプリケーションとプロセスにある場合（最も一般的なケース）のみ使用できます。
+たとえば、バックグラウンドで音楽を再生する独自のサービスに、アクティビティをバインドする必要のある音楽アプリケーションに適しています。
+
+</p>
+
+<p>セットアップ方法は次のとおりです。</p>
+<ol>
+  <li>サービスで次のいずれかに該当する {@link android.os.Binder} のインスタンスを作成します。
+    <ul>
+      <li>クライアントが呼び出せる public メソッドを含んでいる</li>
+      <li>クライアントが呼び出せる public メソッドのある現在の {@link android.app.Service} インスタンスを返す
+</li>
+      <li>クライアントが呼び出せる public メソッドのあるサービスでホストされた他のクラスのインスタンスを返す
+</li>
+    </ul>
+  <li>{@link android.os.Binder} のインスタンスを {@link
+android.app.Service#onBind onBind()} コールバック メソッドから返します。</li>
+  <li>クライアントで、{@link android.os.Binder} を {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} コールバック メソッドから受け取り、提供されたメソッドを使用してバインドされたサービスを呼び出します。
+</li>
+</ol>
+
+<p class="note"><strong>注:</strong> サービスとクライアントが同じアプリケーションになければならない理由は、クライアントが返されたオブジェクトをキャストでき、その API を適切に呼び出せるようにするためです。
+また、サービスとクライアントが同じプロセスになければならない理由は、この方法ではプロセス間の整理が一切行われないためです。
+
+</p>
+
+<p>以下は、{@link android.os.Binder} の実装を介してサービスのメソッドにクライアントアクセスを提供するサービスの例です。
+</p>
+
+<pre>
+public class LocalService extends Service {
+    // Binder given to clients
+    private final IBinder mBinder = new LocalBinder();
+    // Random number generator
+    private final Random mGenerator = new Random();
+
+    /**
+     * Class used for the client Binder.  Because we know this service always
+     * runs in the same process as its clients, we don't need to deal with IPC.
+     */
+    public class LocalBinder extends Binder {
+        LocalService getService() {
+            // Return this instance of LocalService so clients can call public methods
+            return LocalService.this;
+        }
+    }
+
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        return mBinder;
+    }
+
+    /** method for clients */
+    public int getRandomNumber() {
+      return mGenerator.nextInt(100);
+    }
+}
+</pre>
+
+<p>{@code LocalBinder} が {@code LocalService} の現在のインスタンスを取り出すための {@code getService()}メソッドをクライアントに提供します。
+これにより、クライアントがサービス内の public メソッドを呼び出せるようになります。
+たとえば、クライアントはサービスから {@code getRandomNumber()} を呼び出すことができます。</p>
+
+<p>以下は、{@code LocalService} にバインドして、ボタンがクリックされたときに {@code getRandomNumber()} を呼び出すアクティビティの例です。
+</p>
+
+<pre>
+public class BindingActivity extends Activity {
+    LocalService mService;
+    boolean mBound = false;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to LocalService
+        Intent intent = new Intent(this, LocalService.class);
+        bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+
+    /** Called when a button is clicked (the button in the layout file attaches to
+      * this method with the android:onClick attribute) */
+    public void onButtonClick(View v) {
+        if (mBound) {
+            // Call a method from the LocalService.
+            // However, if this call were something that might hang, then this request should
+            // occur in a separate thread to avoid slowing down the activity performance.
+            int num = mService.getRandomNumber();
+            Toast.makeText(this, "number: " + num, Toast.LENGTH_SHORT).show();
+        }
+    }
+
+    /** Defines callbacks for service binding, passed to bindService() */
+    private ServiceConnection mConnection = new ServiceConnection() {
+
+        &#64;Override
+        public void onServiceConnected(ComponentName className,
+                IBinder service) {
+            // We've bound to LocalService, cast the IBinder and get LocalService instance
+            LocalBinder binder = (LocalBinder) service;
+            mService = binder.getService();
+            mBound = true;
+        }
+
+        &#64;Override
+        public void onServiceDisconnected(ComponentName arg0) {
+            mBound = false;
+        }
+    };
+}
+</pre>
+
+<p>上の例は、{@link android.content.ServiceConnection} の実装と {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} コールバックを使用してクライアントがサービスにバインドする方法を示しています。
+次のセクションでは、サービスへのバインドのプロセスについて詳しく説明していきます。
+</p>
+
+<p class="note"><strong>注:</strong> 上記の例ではサービスから明示的にアンバウンドしていませんが、すべてのクライアントは適切なタイミング（アクティビティが一時停止したときなど）でアンバウンドする必要があります。
+</p>
+
+<p>他のサンプル コードについては、<a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a> の <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+LocalService.java}</a> クラスと <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.html">{@code
+LocalServiceActivities.java}</a> クラスをご覧ください。</p>
+
+
+
+
+
+<h3 id="Messenger">メッセンジャーを使用する</h3>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h4>AIDL との比較</h4>
+  <p>IPC を実行する必要がある場合、インターフェースで {@link android.os.Messenger} を使う方が AIDL で実装するよりも簡単です。{@link android.os.Messenger} がすべての呼び出しをサービスにキューイングするのに対して、純粋な AIDL インターフェースでは同時に複数の要求をサービスに送るため、マルチスレッドの処理が必要になるためです。
+
+
+</p>
+  <p>ほとんどのアプリケーションにおいて、サービスはマルチスレッドを実行する必要がないため、{@link
+android.os.Messenger} を使用することでサービスが一度に 1 つの呼び出しを処理できます。サービスのマルチスレッド化が重視されている場合は、<a href="{@docRoot}guide/components/aidl.html">AIDL</a> を使用してインターフェースを定義してください。
+</p>
+</div>
+</div>
+
+<p>リモート プロセスと通信するサービスが必要な場合は、{@link android.os.Messenger} を使用してサービスのインターフェースを提供できます。
+この方法では、AIDL を使用する必要なくプロセス間通信（IPC）を実行できます。
+</p>
+
+<p>{@link android.os.Messenger} の使用方法の概要は以下のとおりです。</p>
+
+<ul>
+  <li>クライアントからの呼び出しごとにコールバックを受け取る{@link android.os.Handler} をサービスが実装します。
+</li>
+  <li>{@link android.os.Handler} を使用して {@link android.os.Messenger} オブジェクトを作成します（
+{@link android.os.Handler} への参照になります）。</li>
+  <li>{@link android.os.Messenger} が、サービスが {@link android.app.Service#onBind onBind()} からクライアントに返す {@link android.os.IBinder} を作成します。
+</li>
+  <li>クライアントが {@link android.os.IBinder} を使用して、（サービスの {@link android.os.Handler} を参照する）{@link android.os.Messenger} をインスタンス化し、これを使用してクライアントが {@link android.os.Message} オブジェクトをサービスに送ります。
+
+</li>
+  <li>サービスが {@link
+android.os.Handler}、具体的には、{@link android.os.Handler#handleMessage
+handleMessage()} メソッドで、それぞれの {@link android.os.Message} を受け取ります。&mdash;</li>
+</ul>
+
+
+<p>この方法には、クライアントがサービスで呼び出す「メソッド」はありません。代わりに、クライアントはサービスが {@link android.os.Handler} で受け取る「メッセージ（{@link android.os.Message} オブジェクト）」を配信します。
+
+</p>
+
+<p>以下は、{@link android.os.Messenger} インターフェースを使用するサービスの簡単な例です。</p>
+
+<pre>
+public class MessengerService extends Service {
+    /** Command to the service to display a message */
+    static final int MSG_SAY_HELLO = 1;
+
+    /**
+     * Handler of incoming messages from clients.
+     */
+    class IncomingHandler extends Handler {
+        &#64;Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_SAY_HELLO:
+                    Toast.makeText(getApplicationContext(), "hello!", Toast.LENGTH_SHORT).show();
+                    break;
+                default:
+                    super.handleMessage(msg);
+            }
+        }
+    }
+
+    /**
+     * Target we publish for clients to send messages to IncomingHandler.
+     */
+    final Messenger mMessenger = new Messenger(new IncomingHandler());
+
+    /**
+     * When binding to the service, we return an interface to our messenger
+     * for sending messages to the service.
+     */
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        Toast.makeText(getApplicationContext(), "binding", Toast.LENGTH_SHORT).show();
+        return mMessenger.getBinder();
+    }
+}
+</pre>
+
+<p>{@link android.os.Handler} の {@link android.os.Handler#handleMessage handleMessage()} メソッドが、サービスが {@link android.os.Message} を受け取る場所であり、{@link android.os.Message#what} メンバーに基づいてその後の操作を決める場面であることに注目してください。
+
+</p>
+
+<p>クライアントで必要な操作は、サービスから返された {@link
+android.os.IBinder} に基づいて {@link android.os.Messenger} を作成し、{@link
+android.os.Messenger#send send()} を使用してメッセージを送信するだけです。例として、サービスにバインドして {@code MSG_SAY_HELLO} メッセージをサービスに送信する簡単なアクティビティを次に示します。
+</p>
+
+<pre>
+public class ActivityMessenger extends Activity {
+    /** Messenger for communicating with the service. */
+    Messenger mService = null;
+
+    /** Flag indicating whether we have called bind on the service. */
+    boolean mBound;
+
+    /**
+     * Class for interacting with the main interface of the service.
+     */
+    private ServiceConnection mConnection = new ServiceConnection() {
+        public void onServiceConnected(ComponentName className, IBinder service) {
+            // This is called when the connection with the service has been
+            // established, giving us the object we can use to
+            // interact with the service.  We are communicating with the
+            // service using a Messenger, so here we get a client-side
+            // representation of that from the raw IBinder object.
+            mService = new Messenger(service);
+            mBound = true;
+        }
+
+        public void onServiceDisconnected(ComponentName className) {
+            // This is called when the connection with the service has been
+            // unexpectedly disconnected -- that is, its process crashed.
+            mService = null;
+            mBound = false;
+        }
+    };
+
+    public void sayHello(View v) {
+        if (!mBound) return;
+        // Create and send a message to the service, using a supported 'what' value
+        Message msg = Message.obtain(null, MessengerService.MSG_SAY_HELLO, 0, 0);
+        try {
+            mService.send(msg);
+        } catch (RemoteException e) {
+            e.printStackTrace();
+        }
+    }
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to the service
+        bindService(new Intent(this, MessengerService.class), mConnection,
+            Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+}
+</pre>
+
+<p>この例では、サービスがクライアントにどのように応答できるのかは示されていません。サービスが応答するようにするには、クライアントで {@link android.os.Messenger} も作成する必要があります。
+その後、クライアントが {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()} コールバックを受け取るとき、{@link android.os.Messenger#send send()} メソッドの {@link android.os.Message#replyTo} パラメータにクライアントの{@link android.os.Messenger} を含めてサービスに {@link android.os.Message} を送信します。
+
+
+</p>
+
+<p>双方向メッセージを提供する方法のサンプルについては、<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerService.html">{@code
+MessengerService.java}</a>（サービス）と <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.html">{@code
+MessengerServiceActivities.java}</a>（クライアント）のサンプルをご覧ください。</p>
+
+
+
+
+
+<h2 id="Binding">サービスにバインドする</h2>
+
+<p>アプリケーションのコンポーネント（クライアント）は、{@link android.content.Context#bindService bindService()} を呼び出してサービスにバインドできます。
+次に Android システムがサービスの {@link android.app.Service#onBind
+onBind()} メソッドを呼び出し、そこからサービスとのやり取りに必要な {@link android.os.IBinder} が返されます。
+</p>
+
+<p>バインドは非同期的に行われます。{@link android.content.Context#bindService
+bindService()} は瞬時に返され、{@link android.os.IBinder} はクライアントには<em>返されません</em>。
+{@link android.os.IBinder} を受け取るには、クライアントが {@link
+android.content.ServiceConnection} のインスタンスを作成し、それを {@link android.content.Context#bindService
+bindService()} に渡す必要があります。{@link android.content.ServiceConnection} にはシステムが {@link android.os.IBinder} の配信用に呼び出すコールバック メソッドが含まれています。
+</p>
+
+<p class="note"><strong>注:</strong> サービスにバインドできるのは、アクティビティ、サービス、コンテンツ プロバイダのみです。ブロードキャスト レシーバーからサードパーティビスにはバインド<strong>できません</strong>。
+&mdash;</p>
+
+<p>そのため、クライアントからサービスにバインドするには次の操作が必要です。 </p>
+<ol>
+  <li>{@link android.content.ServiceConnection} を実装する。
+    <p>実装では次の 2 つのコールバック メソッドをオーバーライドする必要があります。</p>
+    <dl>
+      <dt>{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}</dt>
+        <dd>システムがこれを呼び出して、サービスの {@link android.app.Service#onBind onBind()} メソッドから返された {@link android.os.IBinder} を配信します。
+</dd>
+      <dt>{@link android.content.ServiceConnection#onServiceDisconnected
+onServiceDisconnected()}</dt>
+        <dd>サービスがクラッシュしたり強制終了されたりした場合など、サービスへの接続が予期せず失われたときに、Android システムがこれを呼び出します。
+これは、クライアントのアンバウンドの際には<em>呼び出されません</em>。
+</dd>
+    </dl>
+  </li>
+  <li>{@link
+android.content.Context#bindService bindService()} を呼び出して、{@link
+android.content.ServiceConnection} の実装を渡します。 </li>
+  <li>システムが {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()} コールバック メソッドを呼び出すと、インターフェースで定義されたメソッドを使用してサービスへの呼び出しを開始できます。
+</li>
+  <li>サービスとの接続を切断するには、{@link
+android.content.Context#unbindService unbindService()} を呼び出します。
+    <p>クライアントが破棄されたときにはサービスからアンバウンドしますが、サービスが使用されていないときはシャットダウンできるよう、サービスとのやり取りが終了したときや、アクティビティが停止したときは常にアンバウンドする必要があります
+
+（バインドとアンバインドの適切なタイミングについては後半でさらに詳しく説明します）。
+</p>
+  </li>
+</ol>
+
+<p>たとえば、次のスニペットは <a href="#Binder"> Binder クラスを拡張</a>して先ほど作成したサービスにクライアントを接続しており、返された {@link android.os.IBinder} を {@code LocalService} クラスにキャストして、{@code
+LocalService} インスタンスを要求することだけが必要になります。
+
+</p>
+
+<pre>
+LocalService mService;
+private ServiceConnection mConnection = new ServiceConnection() {
+    // Called when the connection with the service is established
+    public void onServiceConnected(ComponentName className, IBinder service) {
+        // Because we have bound to an explicit
+        // service that is running in our own process, we can
+        // cast its IBinder to a concrete class and directly access it.
+        LocalBinder binder = (LocalBinder) service;
+        mService = binder.getService();
+        mBound = true;
+    }
+
+    // Called when the connection with the service disconnects unexpectedly
+    public void onServiceDisconnected(ComponentName className) {
+        Log.e(TAG, "onServiceDisconnected");
+        mBound = false;
+    }
+};
+</pre>
+
+<p>この {@link android.content.ServiceConnection} を使用して、クライアントは {@link android.content.Context#bindService bindService()} に渡すことでサービスにバインドできます。
+次に例を示します。</p>
+
+<pre>
+Intent intent = new Intent(this, LocalService.class);
+bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+</pre>
+
+<ul>
+  <li>{@link android.content.Context#bindService bindService()} の最初のパラメータは、バインドするサービス名を明示的に指定する {@link android.content.Intent} です（インテントは暗黙的である場合があります）。
+
+</li>
+<li>2 つ目のパラメータは {@link android.content.ServiceConnection} オブジェクトです。</li>
+<li>3 つ目のパラメータはバインドのオプションを示すフラグです。通常は {@link
+android.content.Context#BIND_AUTO_CREATE} でサービスがまだ存在していない場合にサービスを作成します。他の有効な値は、{@link android.content.Context#BIND_DEBUG_UNBIND} と {@link android.content.Context#BIND_NOT_FOREGROUND} か、未指定の {@code 0} です。
+
+</li>
+</ul>
+
+
+<h3>その他の注意点</h3>
+
+<p>サービスへのバインドに関する重要な注意点は次のとおりです。</p>
+<ul>
+  <li>接続が切れたときに投げられる {@link android.os.DeadObjectException} 例外は、常に処理する必要があります。
+リモート メソッドから投げられる例外はこれのみです。</li>
+  <li>オブジェクトはプロセス間で有効な参照です。 </li>
+  <li>通常は、クライアントのライフサイクルの立ち上がりと終了のタイミングに合わせて、その間でバインドとアンバインドをペア設定します。
+次に例を示します。
+    <ul>
+      <li>アクティビティが見えている間のみサービスとやり取りする必要がある場合は、
+{@link android.app.Activity#onStart onStart()} の間にバインドし、{@link
+android.app.Activity#onStop onStop()} の間にアンバインドします。</li>
+      <li>アクティビティがバックグラウンドで停止している間も応答を受け取りたい場合は、{@link android.app.Activity#onCreate onCreate()} の間にバインドし、{@link android.app.Activity#onDestroy onDestroy()} の間にアンバインドします。
+
+つまり、アクティビティの実行中は（バックグラウンドも含む）常にサービスを使用する必要があるため、サービスが別のプロセスにある場合は、プロセスの重みを上げて、システムに強制終了させやすいようにします。
+
+
+</li>
+    </ul>
+    <p class="note"><strong>注:</strong> 通常、アクティビティの {@link android.app.Activity#onResume onResume()} と {@link
+android.app.Activity#onPause onPause()} の間にはバインドとアンバインドは<strong>行いません</strong>。これは、これらのコールバックがライフサイクルの遷移すべてで発生するため、その遷移で発生するプロセスを最小限に抑える必要があるためです。
+
+また、アプリケーションの複数のアクティビティが同一サービスにバインドしていて、そのなかの 2 つのアクティビティ間の遷移が生じる場合、現在のアクティビティは次のアクティビティがバインドする（再開中）前にアンバインドされる（停止中）ため、サービスが破棄されて再作成される場合があります
+
+
+（ライフサイクルと連携したアクティビティの遷移の詳細については、「<a href="{@docRoot}guide/components/activities.html#CoordinatingActivities">Activities</a>」のドキュメントをご覧ください）。
+
+</p>
+</ul>
+
+<p>他のサンプル コードについては、 <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a> の <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+RemoteService.java}</a> クラスをご覧ください。</p>
+
+
+
+
+
+<h2 id="Lifecycle">バインドされたサービスのライフサイクルを管理する</h2>
+
+<p>サービスがすべてのクライアントからアンバインドされると、Android システムがそれを破棄します（{@link android.app.Service#onStartCommand onStartCommand()} でも開始された場合を除く）。
+純粋にバインドされたサービスであれば、サービスのライフサイクルを管理する必要はありません。サービスがクライアントにバインドされているかどうかに基づいて Android システムがそれを管理します。
+
+&mdash;</p>
+
+<p>ただし、{@link android.app.Service#onStartCommand
+onStartCommand()} コールバック メソッドを実装する場合は、サービスは <em>開始された</em>とみなされるため、明示的に停止する必要があります。
+この場合、クライアントにバインドされているかどうかにかかわらず、サービスが {@link android.app.Service#stopSelf()} で自ら停止するまで、または他のコンポーネントが {@link
+android.content.Context#stopService stopService()} を呼び出すまで実行し続けます。
+
+</p>
+
+<p>さらに、サービスが開始されてバインドを許可する場合、システムが {@link android.app.Service#onUnbind onUnbind()} メソッドを呼び出すとき、次回クライアントがサービスにバインドするときに {@link android.app.Service#onRebind
+onRebind()} への呼び出しを受け取りたい場合は、{@code true} を返すようにすることもできます（{@link
+android.app.Service#onBind onBind()} への呼び出しを受け取る代わりに）。{@link android.app.Service#onRebind
+onRebind()} からは void が返されますが、クライアントは {@link android.content.ServiceConnection#onServiceConnected onServiceConnected()} コールバックで {@link android.os.IBinder} を受け取ります。下の図 1 は、ライフサイクルのこの種の論理を表しています。
+
+
+
+</p>
+
+
+<img src="{@docRoot}images/fundamentals/service_binding_tree_lifecycle.png" alt="" />
+<p class="img-caption"><strong>図 1.</strong> 開始されたサービスでバインドを許可するサービスのライフサイクル
+</p>
+
+
+<p>開始されたサービスのライフサイクルの詳細については、「<a href="{@docRoot}guide/components/services.html#Lifecycle">サービス</a>」のドキュメントをご覧ください。</p>
+
+
+
+
diff --git a/docs/html-intl/intl/ja/guide/components/fragments.jd b/docs/html-intl/intl/ja/guide/components/fragments.jd
new file mode 100644
index 0000000..31fb7f5
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/fragments.jd
@@ -0,0 +1,812 @@
+page.title=フラグメント
+parent.title=アクティビティ
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本書の内容</h2>
+  <ol>
+    <li><a href="#Design">デザインの指針</a></li>
+    <li><a href="#Creating">フラグメントを作成する</a>
+      <ol>
+        <li><a href="#UI">ユーザー インターフェースを追加する</a></li>
+        <li><a href="#Adding">フラグメントをアクティビティに追加する</a></li>
+      </ol>
+    </li>
+    <li><a href="#Managing">フラグメントを管理する</a></li>
+    <li><a href="#Transactions">フラグメントのトランザクションを実行する</a></li>
+    <li><a href="#CommunicatingWithActivity">アクティビティと通信する</a>
+      <ol>
+        <li><a href="#EventCallbacks">アクティビティへのイベント コールバックを作成する</a></li>
+        <li><a href="#ActionBar">アクションバーにアイテムを追加する</a></li>
+      </ol>
+    </li>
+    <li><a href="#Lifecycle">フラグメントのライフサイクルを処理する</a>
+      <ol>
+        <li><a href="#CoordinatingWithActivity">アクティビティのライフサイクルと連携する</a></li>
+      </ol>
+    </li>
+    <li><a href="#Example">例</a></li>
+  </ol>
+
+  <h2>キークラス</h2>
+  <ol>
+    <li>{@link android.app.Fragment}</li>
+    <li>{@link android.app.FragmentManager}</li>
+    <li>{@link android.app.FragmentTransaction}</li>
+  </ol>
+  
+  <h2>関連ドキュメント</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/fragments/index.html">Building a Dynamic UI with Fragments</a></li>
+    <li><a href="{@docRoot}guide/practices/tablets-and-handsets.html">Supporting Tablets
+and Handsets</a></li>
+  </ol>
+</div>
+</div>
+
+<p>{@link android.app.Fragment} は、{@link android.app.Activity} でのユーザー インターフェースの挙動や部位を表すものです。
+1 つのアクティビティに複数のフラグメントを組み合わせてマルチペインの UI をビルドしたり、複数のアクティビティでフラグメントを再利用したりできます。
+フラグメントとは、アクティビティのモジュール型セクションのようなもので、独自のライフサイクルを持ち、独自の入力イベントを受信します。フラグメントはアクティビティの実行中に追加したり削除したりできます（別のアクティビティで再利用できる「サブ アクティビティ」のようなものです）。
+
+
+</p>
+
+<p>フラグメントは常にアクティビティに埋め込まれている必要があり、フラグメントのライフサイクルはホストのアクティビティのライフサイクルの影響を直接受けます。
+たとえば、アクティビティが一時停止しているとき、その中のすべてのフラグメントも一時停止し、アクティビティが破棄されると、すべてのフラグメントも破棄されます。
+ただし、アクティビティの実行中（<a href="{@docRoot}guide/components/activities.html#Lifecycle">ライフサイクル</a>で<em>再開</em>された状態）は、追加や削除といった操作は各フラグメントだけで行うことができます。
+
+このようなフラグメントのトランザクションを実行するとき、アクティビティで管理されているバックスタックにそれを追加することもできます。アクティビティの各バックスタック エントリは、発生したフラグメントのトランザクションの記録になります。
+
+&mdash;
+バックスタックでは、[<em>戻る</em>] ボタンを押すとフラグメントのトランザクションを戻す（前に戻る）ことができます。
+</p>
+
+<p>アクティビティのレイアウトの一部としてフラグメントを追加すると、フラグメントはアクティビティのビュー階層の {@link
+android.view.ViewGroup} に置かれ、フラグメントが自身のビュー レイアウトを定義します。フラグメントをアクティビティのレイアウトに挿入するには、アクティビティのレイアウト ファイルでフラグメントを {@code &lt;fragment&gt;} として定義するか、アプリケーション コードで既存の {@link android.view.ViewGroup} に追加します。
+
+
+
+ただし、フラグメントは必ずしもアクティビティの一部になる必要はなく、アクティビティの目に見えないワーカーとして、フラグメント独自の UI なしで使用することもできます。
+
+</p>
+
+<p>このドキュメントでは、アクティビティのバックスタックに追加した時のフラグメントの状態を維持する方法、アクティビティ内でアクティビティと他のフラグメントとイベントを共有する方法、アクティビティのアクションバーへの影響など、フラグメントを使用してアプリケーションをビルドする方法について説明します。
+
+
+</p>
+
+
+<h2 id="Design">デザインの指針</h2>
+
+<p>Android では、タブレットなどの大画面でのよりダイナミックで柔軟な UI デザインに対応するため、Android 3.0（API レベル 11）でフラグメントが採用されました。
+タブレットの画面はハンドセットよりもかなり大きいため、UI コンポーネントを組み合わせたり入れ替えたりできる領域が広くなります。
+
+フラグメントでは、ビュー階層に複雑な変更を加えることなく、そのようなデザインを実現できます。
+アクティビティのレイアウトをフラグメントに分割することで、アクティビティの外観を実行時に変更でき、それらの変更をアクティビティが管理するバックスタックに保持できます。
+
+</p>
+
+<p>たとえば新しいアプリケーションでは、1 つのフラグメントを使って左側に記事の一覧を表示したり、別のフラグメントを使って右側に記事の内容を表示したりできます。両方のフラグメントが 1 つのアクティビティに横並びに表示され、それぞれのフラグメントには自身のライフサイクル メソッドがあり、それぞれのユーザー入力イベントを処理します。
+&mdash;
+
+つまり、1 つのアクティビティで記事を選択して、別のアクティビティで記事を閲覧するのではなく、図 1 のタブレットのレイアウトのように 1 つのアクティビティ内で記事を選択して閲覧できるようになります。
+
+</p>
+
+<p>各フラグメントはモジュール型の、再利用可能なアクティビティ コンポーネントとしてデザインする必要があります。各フラグメントは独自のライフサイクル コールバックを使用して自身のレイアウトと挙動とを定義するため、1 つのフラグメントを複数のアクティビティに含めることができます。このことから、再利用可能なデザインを用いることに加えて、1 つのフラグメントを他のフラグメントから直接操作しないようにする必要があります。
+
+
+これは、モジュール型のフラグメントでは画面のサイズごとにフラグメントの組み合わせを変更できる点からも、特に重要です。
+タブレットとハンドセットの両方に対応したアプリケーションをデザインする場合、異なるレイアウト構成でフラグメントを再利用することで、利用可能な画面の領域に応じて最適な使い心地を実現できます。
+
+たとえばハンドセットの場合、同一のアクティビティ内に 2 つ以上のフラグメントが収まりきらないときは、フラグメントを分割してシングルペインの UI を提示する必要があることもあります。
+
+</p>
+
+<img src="{@docRoot}images/fundamentals/fragments.png" alt="" />
+<p class="img-caption"><strong>図 1.</strong> 1 つのアクティビティ内で、フラグメントで定義された 2 つの UI モジュールを組み合わせたタブレット用デザインと、それぞれを分けたハンドセット用デザインの例。
+
+</p>
+
+<p>引き続きニュース アプリケーションの例を使うと、アプリケーションがタブレット サイズの端末で実行中は、 2 つのフラグメントを<em>アクティビティ A</em> に埋め込むことができます。&mdash;&mdash;
+しかし、ハンドセット サイズの画面では両方のフラグメントを表示する領域が足りないため、<em>アクティビティ A</em> には記事の一覧のフラグメントだけが含まれます。記事を選択すると、記事を閲覧するための 2 つ目のフラグメントが含まれる<em>アクティビティ B</em> が開始されます。
+
+
+そのため、図 1 のようにアプリケーションはフラグメントを異なる組み合わせで再利用することで、タブレットとハンドセットの両方に対応できるようになります。
+
+</p>
+
+<p>異なる画面構成ごとに異なるフラグメントの組み合わせを用いたアプリケーションのデザインの詳細については、「<a href="{@docRoot}guide/practices/tablets-and-handsets.html">Supporting Tablets and Handsets</a>」のガイドをご覧ください。
+</p>
+
+
+
+<h2 id="Creating">フラグメントを作成する</h2>
+
+<div class="figure" style="width:327px">
+<img src="{@docRoot}images/fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>図 2.</strong> フラグメントのライフサイクル（アクティビティの実行中）
+</p>
+</div>
+
+<p>フラグメントを作成するには、{@link android.app.Fragment} のサブクラス（またはその既存のサブクラス）を作成する必要があります。
+{@link android.app.Fragment} クラスには、{@link android.app.Activity} に非常に似ているコードがあります。
+これには、{@link android.app.Fragment#onCreate onCreate()}、{@link android.app.Fragment#onStart onStart()}、{@link android.app.Fragment#onPause onPause()}、{@link android.app.Fragment#onStop onStop()} のようなアクティビティと同様のコールバック メソッドが含まれています。
+
+実際に、既存の Android アプリケーションを変換してフラグメントを使用するには、アクティビティのコールバック メソッドから、フラグメントの各コールバック メソッドにコードを移動させるだけで。
+
+
+</p>
+
+<p>通常は、少なくとも次のライフサイクル メソッドを実装する必要があります。</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onCreate onCreate()}</dt>
+  <dd>フラグメントの作成時にシステムが呼び出します。実装内で、フラグメントが一時停止、停止、再開されたときに保持するフラグメントの必須コンポーネントを初期化する必要があります。
+
+</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+  <dd>フラグメントが初めてユーザー インターフェースを描画するタイミングでシステムがこれを呼び出します。
+フラグメントの UI を描画するには、このメソッドからフラグメントのレイアウトのルートとなっている {@link android.view.View} を返す必要があります。
+フラグメントが UI を提示しない場合は、null を返すことができます。
+</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>ユーザーがフラグメントから離れたことを初めて示すときに、このメソッドを呼び出します（フラグメントが破棄されていない場合も含む）。
+通常はここで、現在のユーザー セッション後も維持する必要のある変更点を保存しておきます（ユーザーが戻ってこない可能性があるため）。
+
+</dd>
+</dl>
+
+<p>ほとんどのアプリケーションでは、各フラグメントで少なくともこれら 3 つのメソッドを実装する必要がありますが、フラグメントのライフサイクルのさまざまなステージを処理する際に使用する他のコールバック メソッドもいくつかあります。
+
+すべてのライフサイクル コールバック メソッドについては、<a href="#Lifecycle">フラグメントのライフサイクルの処理</a>のセクションで説明します。
+</p>
+
+
+<p>基本の {@link
+android.app.Fragment} クラスの代わりに拡張できるサブクラスもいくつかあります。</p>
+
+<dl>
+  <dt>{@link android.app.DialogFragment}</dt>
+  <dd>フローティング ダイアログを表示します。{@link android.app.Activity} のダイアログ ヘルパー メソッド代わりにこのクラスを使用してダイアログを作成すると、アクティビティで管理されるフラグメントのバックスタックにフラグメント ダイアログを組み込むことができるため、ユーザーは終了したフラグメントに戻ることが可能になります。
+
+
+</dd>
+
+  <dt>{@link android.app.ListFragment}</dt>
+  <dd>{@link android.app.ListActivity} と同様に、アダプタで管理されるアイテムのリストを表示します（{@link
+android.widget.SimpleCursorAdapter} など）。クリック イベントを処理するための {@link
+android.app.ListFragment#onListItemClick(ListView,View,int,long) onListItemClick()} コールバックなど、リスト ビューを管理するメソッドがいくつか提供されます。
+
+</dd>
+
+  <dt>{@link android.preference.PreferenceFragment}</dt>
+  <dd>{@link android.preference.PreferenceActivity} と同様に、{@link android.preference.Preference} オブジェクトの階層をリストとして表示します。
+アプリケーションの「設定」アクティビティの作成時に便利です。
+</dd>
+</dl>
+
+
+<h3 id="UI">ユーザー インターフェースを追加する</h3>
+
+<p>通常、フラグメントはアクティビティのユーザー インターフェースの一部であり、独自のレイアウトをアクティビティに提示します。
+</p>
+
+<p>フラグメントのレイアウトを提供するには、{@link
+android.app.Fragment#onCreateView onCreateView()} コールバック メソッドを実装する必要があります。これは、フラグメントがレイアウトを描画するタイミングで Android システムが呼び出します。
+このメソッドの実装では、フラグメントのレイアウトのルートである {@link android.view.View} を返す必要があります。
+</p>
+
+<p class="note"><strong>注:</strong> フラグメントは {@link
+android.app.ListFragment} のサブクラスの場合、デフォルトの実装で {@link android.widget.ListView} が{@link android.app.Fragment#onCreateView onCreateView()} から返されるため、これを実装する必要はありません。
+</p>
+
+<p>{@link
+android.app.Fragment#onCreateView onCreateView()} からレイアウトを返すには、XML で定義した<a href="{@docRoot}guide/topics/resources/layout-resource.html">レイアウト リソース</a>からインフレートできます。これを行うため、{@link android.app.Fragment#onCreateView onCreateView()} から {@link android.view.LayoutInflater} オブジェクトが提供されます。
+
+</p>
+
+<p>たとえば、次の例では {@link android.app.Fragment} のサブクラスが {@code example_fragment.xml} ファイルからレイアウトをロードします。
+</p>
+
+<pre>
+public static class ExampleFragment extends Fragment {
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+                             Bundle savedInstanceState) {
+        // Inflate the layout for this fragment
+        return inflater.inflate(R.layout.example_fragment, container, false);
+    }
+}
+</pre>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>レイアウトを作成する</h3>
+  <p>上の例では、{@code R.layout.example_fragment} はアプリケーション リソースに保存されている {@code example_fragment.xml} という名前のレイアウト リソースへの参照です。
+XML でレイアウトを作成する方法の詳細いついては、「<a href="{@docRoot}guide/topics/ui/index.html">ユーザー インターフェース</a>」のドキュメントをご覧ください。
+
+</p>
+</div>
+</div>
+
+<p>{@link android.app.Fragment#onCreateView
+onCreateView()} に渡される {@code container} パラメータは、フラグメントのレイアウトが挿入される {@link android.view.ViewGroup} の親になります（アクティビティのレイアウトから）。
+
+{@code savedInstanceState} パラメータは、フラグメントが再開された場合にフラグメントの前のインスタンスに関する情報を提供する {@link android.os.Bundle} です（状態の復元の詳細については、<a href="#Lifecycle">フラグメントのライフサイクルの処理</a>で説明します）。
+
+
+</p>
+
+<p>{@link android.view.LayoutInflater#inflate(int,ViewGroup,boolean) inflate()} メソッドは、次の 3 つの引数を受け取ります。
+</p>
+<ul>
+  <li>拡張するレイアウトのリソース ID。</li>
+  <li>インフレートされたレイアウトの親となる {@link android.view.ViewGroup}。システムがインフレートされたレイアウトのルートビュー（親ビューが指定）にレイアウト パラメータ適用するには、{@code
+container} を渡すことが重要です。
+</li>
+  <li>インフレート中に、インフレートされたレイアウトを {@link
+android.view.ViewGroup}（2 つ目のパラメータ）にアタッチすべきかどうかを示すブール値（この場合、システムが既にインフレートされたレイアウトを {@code
+container} に挿入しているため、false になります。true を渡すと、最終レイアウトに余分なビューグループが作成されます。
+&mdash;</li>
+</ul>
+
+<p>ここまで、レイアウトを提供するフラグメントの作成方法について説明しました。次は、フラグメントをアクティビティに追加する必要があります。
+</p>
+
+
+
+<h3 id="Adding">フラグメントをアクティビティに追加する</h3>
+
+<p>通常、フラグメントはホスト アクティビティに UI の一部を提供し、アクティビティの全体的なビュー階層の一部として埋め込まれます。
+アクティビティのレイアウトにフラグメントを追加する方法は 2 つあります。
+</p>
+
+<ul>
+  <li><b>アクティビティのレイアウト ファイル内でフラグメントを宣言する</b>
+<p>この場合、フラグメントがビューであるかのようにレイアウト プロパティを指定できます。
+以下は、2 つのフラグメントを持つアクティビティのレイアウト ファイルです。
+</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
+    &lt;fragment android:name="com.example.news.ArticleListFragment"
+            android:id="@+id/list"
+            android:layout_weight="1"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+    &lt;fragment android:name="com.example.news.ArticleReaderFragment"
+            android:id="@+id/viewer"
+            android:layout_weight="2"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+&lt;/LinearLayout&gt;
+</pre>
+  <p>{@code &lt;fragment&gt;} の {@code android:name} 属性は、{@link
+android.app.Fragment} クラスを指定してレイアウトにインスタンスを作成します。</p>
+
+<p>システムがこのアクティビティ レイアウトを作成するとき、レイアウトで指定された各フラグメントのインスタンスを作成し、それぞれの {@link android.app.Fragment#onCreateView onCreateView()} メソッドを呼び出して、各フラグメントのレイアウトを取得します。
+
+システムがフラグメントから返された{@link android.view.View} を {@code &lt;fragment&gt;} 要素の代わりに挿入します。
+</p>
+
+<div class="note">
+  <p><strong>注:</strong> 各フラグメントには、アクティビティの再開時にフラグメントを復元するためにシステムが使用できる（そしてフラグメントをキャプチャして削除などのトランザクションを実行する際に使用できる）一意の識別子が必要です
+
+フラグメントの ID を提供するには、次の 3 つの方法があります。
+</p>
+  <ul>
+    <li>{@code android:id} 属性に一意の ID を提供する。</li>
+    <li>{@code android:tag} 属性に一意の文字列を提供する。</li>
+    <li>上記のいずれも提供しない場合、システムはコンテナビューの ID を使用します。
+</li>
+  </ul>
+</div>
+  </li>
+
+  <li><b>または、既存の {@link android.view.ViewGroup} にプログラムを使用してフラグメントを追加します</b>。
+<p>アクティビティの実行中は、いつでもフラグメントをアクティビティ レイアウトに追加できます。必要なのは、フラグメントを配置する場所に {@link
+android.view.ViewGroup} を指定するだけです。
+</p>
+  <p>アクティビティ内にフラグメントのトランザクション（フラグメントの追加、削除、置換など）を作るには、{@link android.app.FragmentTransaction} からの API を使用する必要があります。
+{@link android.app.FragmentTransaction} のインスタンスは、{@link android.app.Activity} から次のようにして取得できます。
+</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()}
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>次に、{@link
+android.app.FragmentTransaction#add(int,Fragment) add()} メソッドを使用して、追加するフラグメントと挿入するビューを指定してフラグメントを追加できます。
+次に例を示します。</p>
+
+<pre>
+ExampleFragment fragment = new ExampleFragment();
+fragmentTransaction.add(R.id.fragment_container, fragment);
+fragmentTransaction.commit();
+</pre>
+
+  <p>{@link android.app.FragmentTransaction#add(int,Fragment) add()} に渡される最初の引数はフラグメントを配置する {@link android.view.ViewGroup} でリソース ID で指定されており、2 つ目のパラメータは追加するフラグメントです。 
+
+</p>
+  <p>{@link android.app.FragmentTransaction} で変更を加えたら、{@link android.app.FragmentTransaction#commit} を呼び出して変更を適用する必要があります。
+
+</p>
+  </li>
+</ul>
+
+
+<h4 id="AddingWithoutUI">UI のないフラグメントを追加する</h4>
+
+<p>上の例では、UI を提供するためにフラグメントをアクティビティに追加する方法を紹介しましたが、UI を提示せずにアクティビティのバックグラウンド動作を提供するためにフラグメントを使うこともできます。
+
+</p>
+
+<p>UI のないフラグメントを追加するには、{@link
+android.app.FragmentTransaction#add(Fragment,String)} を使用してアクティビティからフラグメントを追加します（ビュー ID ではなくフラグメントの一意の文字列である「タグ」を提供します）。
+これでフラグメントが追加されますが、アクティビティ レイアウトのビューには関連付けられていないため、{@link
+android.app.Fragment#onCreateView onCreateView()} への呼び出しは受け取りません。
+そのため、このメソッドを実装する必要はありません。</p>
+
+<p>フラグメントに文字列のタグを提供するのは UI のないフラグメントの場合だけではありません。UI のあるフラグメントにも文字列のタグを提供することはできますが、UI のないフラグメントにとっては、文字列のタグがフラグメントを識別する唯一の手段になります。&mdash;
+&mdash;
+後でアクティビティからフラグメントを取得する場合は、 {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()} を使用する必要があります。
+</p>
+
+<p>たとえば、フラグメントを UI を持たないバックグラウンド ワーカーとして使用するアクティビティの場合は、SDK サンプルに含まれている（Android SDK マネージャーで利用可能）{@code
+FragmentRetainInstance.java} のサンプルでシステムに <code>&lt;sdk_root&gt;/APIDemos/app/src/main/java/com/example/android/apis/app/FragmentRetainInstance.java</code> として置かれているものをご覧ください。
+
+</p>
+
+
+
+<h2 id="Managing">フラグメントを管理する</h2>
+
+<p>アクティビティのフラグメントを管理するには、{@link android.app.FragmentManager} を使用する必要があります。フラグメントを取得するには、アクティビティから {@link android.app.Activity#getFragmentManager()} を呼び出します。
+</p>
+
+<p>{@link android.app.FragmentManager} では、次の操作が可能です。</p>
+
+<ul>
+  <li>{@link
+android.app.FragmentManager#findFragmentById findFragmentById()}（アクティビティ レイアウトで UI を提供するフラグメントの場合）や {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}（UI を提供しないフラグメントの場合）を使用して、アクティビティにあるフラグメントを取得する。
+</li> 
+  <li>{@link
+android.app.FragmentManager#popBackStack()} を使用してフラグメントをバックスタックから取り出す（ユーザーによる [<em>戻る</em>] コマンドをシミュレートする）。</li>
+  <li>{@link
+android.app.FragmentManager#addOnBackStackChangedListener addOnBackStackChangedListener()} を使用して、バックスタックの変更に対するリスナを登録する。</li>
+</ul>
+
+<p>これらのメソッドや他のメソッドの詳細については、{@link
+android.app.FragmentManager} クラスのドキュメントをご覧ください。</p>
+
+<p>前のセクションで説明したように、{@link android.app.FragmentManager} を使用して {@link android.app.FragmentTransaction} を開くことで、フラグメントの追加や削除といったトランザクションを実行することもできます。
+
+</p>
+
+
+<h2 id="Transactions">フラグメントのトランザクションを実行する</h2>
+
+<p>アクティビティでのフラグメントの使用における優れた機能として、フラグメントを追加、削除、置換したり、ユーザー操作への応答にフラグメントを使用して他のアクションを実行したりできる点が挙げられます。
+アクティビティに加える変更はそれぞれ 1 つのトランザクションとして、{@link
+android.app.FragmentTransaction} の API を使用して実行できます。
+各トランザクションはアクティビティが管理するバックスタックに保存でき、ユーザーはフラグメントの変更を元に戻すことができます（アクティビティ間で元に戻す動作と似ています）。
+
+</p>
+
+<p>{@link android.app.FragmentTransaction} のインスタンスは、次のように {@link
+android.app.FragmentManager} から作成できます。</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()};
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>各トランザクションは、同時に実行する一連の変更点です。{@link
+android.app.FragmentTransaction#add add()}、{@link android.app.FragmentTransaction#remove remove()}、{@link android.app.FragmentTransaction#replace replace()} などのメソッドを使って、トランザクションで実行するすべての変更点をセットアップできます。
+
+次に、トランザクションをアクティビティに適用するには、{@link android.app.FragmentTransaction#commit()} を呼び出す必要があります。
+</p>
+</dl>
+
+<p>ただし、{@link
+android.app.FragmentTransaction#commit()} を呼び出す前に、{@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} を呼び出して、フラグメントのトランザクションのバックスタックにトランザクションを追加することもできます。
+このバックスタックはアクティビティによって管理され、ユーザーが [<em>戻る</em>] ボタンを押して前のフラグメントの状態に戻れるようにします。
+</p>
+
+<p>例として、フラグメントを別のフラグメントに置き換えて、バックスタックで前の状態を保持する方法を次に示します。
+</p>
+
+<pre>
+// Create new fragment and transaction
+Fragment newFragment = new ExampleFragment();
+FragmentTransaction transaction = getFragmentManager().beginTransaction();
+
+// Replace whatever is in the fragment_container view with this fragment,
+// and add the transaction to the back stack
+transaction.replace(R.id.fragment_container, newFragment);
+transaction.addToBackStack(null);
+
+// Commit the transaction
+transaction.commit();
+</pre>
+
+<p>この例では、{@code R.id.fragment_container} ID で識別されるレイアウト コンテナに現在あるフラグメント（存在する場合）を {@code newFragment} が置き換えます。{@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} を呼び出すと、置き換えのトランザクションがバックスタックに保存されるため、ユーザーはトランザクションを元に戻して、[<em>戻る</em>] ボタンを押すことで前のフラグメントに戻れるようになります。
+
+
+</p>
+
+<p>トランザクションに複数の変更を加えて（{@link
+android.app.FragmentTransaction#add add()} や {@link android.app.FragmentTransaction#remove
+remove()} など）、{@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} を呼び出した場合、{@link android.app.FragmentTransaction#commit commit()} を呼び出す前に適用されたすべての変更点が 1 つのトランザクションとしてバックスタックに追加され、[<em>戻る</em>] ボタンを押すとすべてが同時に元に戻るようになります。
+
+</p>
+
+<p>次の場合を除き、{@link android.app.FragmentTransaction} に加える変更の順序は影響しません。
+</p>
+<ul>
+  <li>{@link android.app.FragmentTransaction#commit()} は最後に呼び出す必要があります。</li>
+  <li>複数のフラグメントを同じコンテナに追加する場合、追加する順序がビュー階層に表示される順序になります。
+</li>
+</ul>
+
+<p>フラグメントを削除するトランザクションの実行時に {@link android.app.FragmentTransaction#addToBackStack(String)
+addToBackStack()} を呼び出さない場合、トランザクションの実行時にそのフラグメントは破棄され、ユーザーは操作を元に戻すことができなくなります。
+一方で、フラグメントの削除時に {@link android.app.FragmentTransaction#addToBackStack(String) addToBackStack()} を呼び出した場合、フラグメントは<em>停止</em>状態になり、ユーザーが元に戻した時に再開します。
+
+
+</p>
+
+<p class="note"><strong>ヒント:</strong> それぞれのフラグメントのトランザクションでは、コミットする前に {@link android.app.FragmentTransaction#setTransition setTransition()} と呼ばれる遷移のアニメーションを適用できます。
+
+</p>
+
+<p>{@link android.app.FragmentTransaction#commit()} を呼び出してもトランザクションはすぐには実行されません。
+具体的には、アクティビティの UI スレッド（「メイン」スレッド）で実行可能になったときにすぐに実行されるようスケジュールされます。
+ただし、必要であれば UI スレッドから {@link
+android.app.FragmentManager#executePendingTransactions()} を呼び出して、{@link android.app.FragmentTransaction#commit()} から送信されたトランザクションをすぐに実行することもできます。
+通常、トランザクションが他のスレッドのジョブに依存していない限り、この操作は必要ありません。
+</p>
+
+<p class="caution"><strong>警告:</strong> {@link
+android.app.FragmentTransaction#commit commit()} を使用したトランザクションをコミットできるのは、アクティビティが<a href="{@docRoot}guide/components/activities.html#SavingActivityState">状態を保存</a>する前（ユーザーがアクティビティを離れるとき）にのみに限定されます。
+それ以降にコミットしようとすると、例外がスローされます。
+これは、アクティビティの復元が必要な場合に、コミット後のステータスが失われてしまう可能性があるためです。
+コミットが失われてもよい場合は、{@link
+android.app.FragmentTransaction#commitAllowingStateLoss()} を使用します。</p>
+
+
+
+
+<h2 id="CommunicatingWithActivity">アクティビティと通信する</h2>
+
+<p>{@link android.app.Fragment} が {@link android.app.Activity} から独立したフラグメントとして実行されていて、複数のアクティビティ内で使用可能であっても、フラグメントの特定のインスタンスは、それが含まれるアクティビティに直接結び付いています。
+
+</p>
+
+<p>具体的には、フラグメントは {@link
+android.app.Fragment#getActivity()} を使用して {@link android.app.Activity} インスタンスにアクセスでき、アクティビティのレイアウトでビューを見つけるなどのタスクを簡単に実行できます。
+</p>
+
+<pre>
+View listView = {@link android.app.Fragment#getActivity()}.{@link android.app.Activity#findViewById findViewById}(R.id.list);
+</pre>
+
+<p>同様に、アクティビティが {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} や {@link
+android.app.FragmentManager#findFragmentByTag findFragmentByTag()} を使って {@link android.app.FragmentManager} から {@link android.app.Fragment} への参照を取得することで、フラグメント内のメソッドを呼び出すこともできます。
+次に例を示します。</p>
+
+<pre>
+ExampleFragment fragment = (ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment);
+</pre>
+
+
+<h3 id="EventCallbacks">アクティビティへのイベント コールバックを作成する</h3>
+
+<p>アクティビティとイベントを共有するフラグメントが必要になる場面もあります。これを実現するには、フラグメント内でコールバック インターフェースを定義して、ホスト アクティビティがそれを実装するよう要求します。
+
+アクティビティがインターフェースを介してコールバックを受け取ると、必要に応じてレイアウト内の他のフラグメントと情報を共有します。
+</p>
+
+<p>たとえば、新しいアプリケーションでアクティビティ内に、記事のリストを表示するフラグメント（フラグメント A）と、記事を表示するフラグメント（フラグメント B）の 2 つのフラグメントがある場合、リストのアイテムが選択されたときに、フラグメント B に記事を表示するよう伝えるため、フラグメント A から選択されたことをアクティビティに伝える必要があります。&mdash;
+&mdash;
+ここでは、{@code OnArticleSelectedListener} インターフェースがフラグメント A で宣言されています。
+</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    ...
+    // Container Activity must implement this interface
+    public interface OnArticleSelectedListener {
+        public void onArticleSelected(Uri articleUri);
+    }
+    ...
+}
+</pre>
+
+<p>次に、フラグメントのホストであるアクティビティが {@code OnArticleSelectedListener} インターフェースを実装して {@code onArticleSelected()} をオーバーライドし、フラグメント B にフラグメント A からのイベントを通知します。ホスト アクティビティがこのインターフェースを確実に実装するようにするため、フラグメント A の {@link
+android.app.Fragment#onAttach onAttach()} コールバック メソッド（フラグメントをアクティビティに追加するときにシステムが呼び出すメソッド）が、{@link android.app.Fragment#onAttach
+onAttach()} に渡される {@link android.app.Activity} をキャストして {@code OnArticleSelectedListener} のインスタンスを登録します。
+
+
+
+
+</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        try {
+            mListener = (OnArticleSelectedListener) activity;
+        } catch (ClassCastException e) {
+            throw new ClassCastException(activity.toString() + " must implement OnArticleSelectedListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>アクティビティがインターフェースを実装していない場合は、フラグメントは {@link java.lang.ClassCastException} をスローします。成功すると、{@code mListener} メンバーがアクティビティの {@code OnArticleSelectedListener} の実装への参照を保持でき、フラグメント A が {@code OnArticleSelectedListener} インターフェースで定義されたコールバック メソッドを呼び出すことでアクティビティとイベントを共有できるようになります。
+
+
+
+たとえば、フラグメント A は {@link android.app.ListFragment} の拡張で、ユーザーがリストアイテムをクリックするたびに、システムがフラグメントの {@link android.app.ListFragment#onListItemClick
+onListItemClick()} を呼び出し、それが{@code onArticleSelected()} を呼び出してアクティビティとイベントを共有します。
+
+
+</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onListItemClick(ListView l, View v, int position, long id) {
+        // Append the clicked item's row ID with the content provider Uri
+        Uri noteUri = ContentUris.{@link android.content.ContentUris#withAppendedId withAppendedId}(ArticleColumns.CONTENT_URI, id);
+        // Send the event and Uri to the host activity
+        mListener.onArticleSelected(noteUri);
+    }
+    ...
+}
+</pre>
+
+<p>{@link
+android.app.ListFragment#onListItemClick onListItemClick()} に渡される {@code id} パラメータはクリックされたアイテムの行 ID で、アクティビティ（または他のフラグメント）がアプリケーションの {@link
+android.content.ContentProvider} から記事を取得する際に使用します。
+</p>
+
+<p><!--To see a complete implementation of this kind of callback interface, see the <a
+href="{@docRoot}resources/samples/NotePad/index.html">NotePad sample</a>. -->コンテンツ プロバイダの使用に関する詳細については、「<a href="{@docRoot}guide/topics/providers/content-providers.html">コンテンツ プロバイダ</a>」のドキュメントをご覧ください。
+</p>
+
+
+
+<h3 id="ActionBar">アクションバーにアイテムを追加する</h3>
+
+<p>フラグメントは、{@link android.app.Fragment#onCreateOptionsMenu(Menu,MenuInflater) onCreateOptionsMenu()} を実装することでアクティビティの<a href="{@docRoot}guide/topics/ui/menus.html#options-menu">オプション メニュー</a>（とその<a href="{@docRoot}guide/topics/ui/actionbar.html">アクション バー</a>）にメニュー アイテムを提供することができます。
+ただし、このメソッドが呼び出しを受け取るには、{@link
+android.app.Fragment#onCreate(Bundle) onCreate()} の間に {@link
+android.app.Fragment#setHasOptionsMenu(boolean) setHasOptionsMenu()} を呼び出して、フラグメントがオプション メニューにアイテムを追加することを示す必要があります（これを行わない場合、フラグメントは {@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()} への呼び出しを受け取りません）。
+
+
+</p>
+
+<p>フラグメントから追加するアイテムはすべて、既存のメニュー アイテムに追加されます。
+また、メニュー アイテムが選択されたとき、フラグメントは {@link
+android.app.Fragment#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} へのコールバックも受け取ります。
+</p>
+
+<p>また、{@link
+android.app.Fragment#registerForContextMenu(View) registerForContextMenu()} を呼び出して、フラグメントのレイアウトにビューを登録してコンテキスト メニューを提供することもできます。ユーザーがコンテキスト メニューを開くと、フラグメントは {@link
+android.app.Fragment#onCreateContextMenu(ContextMenu,View,ContextMenu.ContextMenuInfo)
+onCreateContextMenu()} への呼び出しを受け取ります。
+ユーザーがアイテムを選択すると、フラグメントは {@link
+android.app.Fragment#onContextItemSelected(MenuItem) onContextItemSelected()} への呼び出しを受け取ります。</p>
+
+<p class="note"><strong>注:</strong> 追加するメニュー アイテムごとにフラグメントは on-item-selected コールバックを受け取りますが、ユーザーがメニュー アイテムを選択したときに最初にそれぞれのコールバックを受け取るのはアクティビティになります。
+
+アクティビティの on-item-selected コールバックの実装で、選択されたアイテムが処理されなかった場合、イベントはフラグメントのコールバックに渡されます。
+この挙動は、オプション メニューとコンテキスト メニューの両方に適用されます。
+</p>
+
+<p>メニューの詳細については、デベロッパー ガイドの「<a href="{@docRoot}guide/topics/ui/menus.html">メニュー</a>」と「<a href="{@docRoot}guide/topics/ui/actionbar.html">アクションバー</a>」をご覧ください。</p>
+
+
+
+
+<h2 id="Lifecycle">フラグメントのライフサイクルを処理する</h2>
+
+<div class="figure" style="width:350px">
+<img src="{@docRoot}images/activity_fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>図 3.</strong> フラグメントのライフサイクルに対するアクティビティのライフサイクルの影響。
+</p>
+</div>
+
+<p>フラグメントのライフサイクルの管理は、アクティビティのライフサイクルの管理によく似ています。アクティビティと同様に、フラグメントには次の 3 つの状態があります。
+</p>
+
+<dl>
+  <dt><i>再開状態</i></dt>
+    <dd>フラグメントが実行中のアクティビティで表示されている。</dd>
+
+  <dt><i>一時停止状態</i></dt>
+    <dd>他のアクティビティがフォアグラウンドにあり、フォーカスがあるが、このアクティビティも表示されている（フォアグラウンドにある別のアクティビティは半透明になっているか、全画面をカバーしていない）。
+
+</dd>
+
+  <dt><i>停止状態</i></dt>
+    <dd>フラグメントは表示されていない。ホスト アクティビティが停止状態か、フラグメントがアクティビティから削除されたが、バックスタックに追加されている。
+停止状態のフラグメントはまだ存続しています（すべての状態とメンバー情報がシステムで保持されています）。
+ただし、アクティビティが破棄されるとユーザーには表示されなくなり、フラグメントも破棄されます。
+</dd>
+</dl>
+
+<p>さらに、アクティビティと同様に、アクティビティのプロセスが破棄されて、アクティビティが再作成されたときにフラグメントの状態を復元する必要がある場合は、 {@link
+android.os.Bundle} を使用してフラグメントの状態を保持できます。
+フラグメントの {@link
+android.app.Fragment#onSaveInstanceState onSaveInstanceState()} コールバックの間に状態を保存して、{@link android.app.Fragment#onCreate onCreate()}、{@link
+android.app.Fragment#onCreateView onCreateView()}、{@link
+android.app.Fragment#onActivityCreated onActivityCreated()} の間にそれを復元できます。
+状態の保存の詳細については、「<a href="{@docRoot}guide/components/activities.html#SavingActivityState">Activities</a>」のドキュメントをご覧ください。
+
+</p>
+
+<p>アクティビティとフラグメントのライフサイクルの最も重要な違いは、バックスタックでのそれぞれの保存方法です。
+アクティビティは、デフォルトで停止状態の時にシステムが管理するアクティビティのバックスタックに置かれますが（<a href="{@docRoot}guide/components/tasks-and-back-stack.html">タスクとバックスタック</a> で説明したようにユーザーが [<em>戻る</em>] ボタンで前に戻ることができるように）、フラグメントの場合は、フラグメントを削除するトランザクションの間に {@link
+android.app.FragmentTransaction#addToBackStack(String) addToBackStack()} を呼び出してインスタンスを保存するよう明示的に要求した場合のみ、ホスト アクティビティが管理するバックスタックに置かれます。
+
+
+
+
+</p>
+
+<p>これ以外については、フラグメントのライフサイクルの管理は、アクティビティのライフサイクルの管理とほとんど同じです。
+そのため、<a href="{@docRoot}guide/components/activities.html#Lifecycle">アクティビティのライフサイクルの管理</a>におけるベスト プラクティスがフラグメントにも適用されます。
+もう 1 つ理解しておくべき事項は、アクティビティの寿命がどのようにフラグメントの寿命に影響を与えるかという点です。
+</p>
+
+<p class="caution"><strong>警告:</strong> {@link android.app.Fragment} 内に {@link android.content.Context} オブジェクトが必要な場合は、{@link android.app.Fragment#getActivity()} を呼び出すことができます。ただし、{@link android.app.Fragment#getActivity()} はフラグメントがアクティビティにアタッチされている場合にのみ呼び出すようにしてください。
+
+
+フラグメントがまだアタッチされていない場合や、ライフサイクルの終了時にデタッチされた場合は、{@link android.app.Fragment#getActivity()} は null を返します。
+</p>
+
+
+<h3 id="CoordinatingWithActivity">アクティビティのライフサイクルと連携する</h3>
+
+<p>フラグメントが含まれるアクティビティのライフサイクルは、フラグメントのライフサイクルに直接影響し、アクティビティに対する各ライフサイクル コールバックは、各フラグメントに対して同様のコールバックをもたらします。
+
+たとえば、アクティビティが {@link android.app.Activity#onPause} を受け取ると、アクティビティ内の各フラグメントが {@link android.app.Fragment#onPause} を受け取ります。
+</p>
+
+<p>ただし、フラグメントにはフラグメントの UI をビルドしたり破棄したりするアクションを実行する際のアクティビティとの独自のやり取りを処理する追加のライフサイクル コールバックがいくつかあります。これらの追加のコールバック メソッドは次のとおりです。
+
+</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onAttach onAttach()}</dt>
+    <dd>フラグメントがアクティビティと関連付けられたときに呼び出されます（ここで {@link
+android.app.Activity} が渡されます）。</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+    <dd>フラグメントに関連付けられたビュー階層を作成する際に呼び出されます。</dd>
+  <dt>{@link android.app.Fragment#onActivityCreated onActivityCreated()}</dt>
+    <dd>アクティビティの {@link android.app.Activity#onCreate
+onCreate()} メソッドが戻ったときに呼び出されます。</dd>
+  <dt>{@link android.app.Fragment#onDestroyView onDestroyView()}</dt>
+    <dd>フラグメントに関連付けられたビュー階層が削除されたときに呼び出されます。</dd>
+  <dt>{@link android.app.Fragment#onDetach onDetach()}</dt>
+    <dd>フラグメントとアクティビティとの関連付けが解除されたときに呼び出されます。</dd>
+</dl>
+
+<p>図 3 は、ホスト アクティビティの影響を受けたフラグメントのライフサイクルのフローを表しています。
+この図から、アクティビティの一連の状態によって、フラグメントが受け取るコールバック メソッドがどのように決められているかがわかります。
+たとえば、アクティビティが {@link
+android.app.Activity#onCreate onCreate()} コールバックを受け取ると、アクティビティ内のフラグメントは {@link android.app.Fragment#onActivityCreated onActivityCreated()} コールバックまでを受け取ります。
+</p>
+
+<p>アクティビティが再開状態になると、アクティビティでのフラグメントの追加や削除を自由に行えます。
+つまり、アクティビティが再開された状態が、フラグメントのライフサイクルを独立して変更できる唯一の期間になります。
+</p>
+
+<p>ただし、アクティビティが再開状態でなくなると、フラグメントはアクティビティによって再度ライフサイクル間を通過することになります。
+</p>
+
+
+
+
+<h2 id="Example">例</h2>
+
+<p>このドキュメントで解説した内容をすべて網羅するため、2 つのフラグメントを使用して 2 つのペインのレイアウトを作成するアクティビティの例を紹介します。
+次のアクティビティには、シェイクスピア劇のタイトル リストを表示するフラグメントと、リストから劇が選択されたときに劇のあらすじを表示するフラグメントがあります。
+
+また、ここでは画面構成によって異なるフラグメント構成を提供する方法も示しています。
+</p>
+
+<p class="note"><strong>注:</strong> このアクティビティのすべてのソース コードは、<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html">{@code
+FragmentLayout.java}</a> で入手できます。
+</p>
+
+<p>メイン アクティビティでは、通常の方法で {@link
+android.app.Activity#onCreate onCreate()} の間にレイアウトを適用します。</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java main}
+
+<p>適用されるレイアウトは {@code fragment_layout.xml} です。</p>
+
+{@sample development/samples/ApiDemos/res/layout-land/fragment_layout.xml layout}
+
+<p>このレイアウトを使って、アクティビティがレイアウトをロードするとすぐにシステムが {@code TitlesFragment}（これが劇のタイトルをリストします）のインスタンスを作成します。このとき、{@link android.widget.FrameLayout} （劇のあらすじを表示するフラグメントの目的地）が画面右側を使用し、残りは空白の状態です。
+
+
+ご覧のように、フラグメントが {@link android.widget.FrameLayout} に置かれるのはユーザーがアイテムを選択してからになります。
+</p>
+
+<p>ただし、画面構成によっては、劇の一覧とあらすじを横並びに表示するほどの幅がない場合もあります。
+そのため、上記のレイアウトは横方向の画面構成の場合のみ使用され、{@code res/layout-land/fragment_layout.xml} に保存されます。
+</p>
+
+<p>画面が縦方向の場合、システムは次のレイアウトを適用して {@code res/layout/fragment_layout.xml} に保存します。
+</p>
+
+{@sample development/samples/ApiDemos/res/layout/fragment_layout.xml layout}
+
+<p>このレイアウトには、{@code TitlesFragment} のみが含まれます。つまり、端末が縦方向の場合、劇のタイトルのみが表示されます。
+そのため、この構成時にユーザーがリストのアイテムをクリックしたとき、アプリケーションは 2 つ目のフラグメントをロードする代わりに新しいアクティビティを開始してあらすじを表示します。
+
+</p>
+
+<p>次に、フラグメントのクラスでこれをどう実現するのかを見ていきます。まず、{@code
+TitlesFragment} はシェイクスピア劇のタイトル リストを表示します。このフラグメントは {@link
+android.app.ListFragment} を拡張し、リスト ビューの動作の処理のほとんどを委ねます。</p>
+
+<p>このコードをよく見ると、ユーザーがリストのアイテムをクリックしたときの挙動が 2 つ考えられます。2 つのレイアウトのどちらがアクティブになっているかによって、新しいフラグメントを作成して表示することで同じアクティビティで詳細を表示するか（{@link
+android.widget.FrameLayout} にフラグメントを追加する）、新しいアクティビティを（フラグメントを表示できる場所に）開始するかのいずれかになります。
+
+</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java titles}
+
+<p>2 つ目のフラグメントである {@code DetailsFragment} は、{@code TitlesFragment} のリストで選択された劇のあらすじを表示します。
+</p>
+ 
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java details}
+
+<p>{@code TitlesFragment} クラスで説明したように、ユーザーがリストアイテムをクリックしたときに、現在のレイアウトに{@code R.id.details} ビュー（{@code DetailsFragment} が属する場所）が<em>含まれていない</em>場合、アプリケーションは {@code DetailsActivity} のアクティビティを開始してアイテムのコンテンツを表示します。
+
+
+</p>
+
+<p>次の {@code DetailsActivity} では、画面が縦方向のときに単純に {@code DetailsFragment} を埋め込んで選択された劇のあらすじを表示します。
+</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java
+details_activity}
+ 
+<p>構成が横方向の場合はアクティビティは自ら終了するため、メイン アクティビティが引き継いで {@code DetailsFragment} を {@code TitlesFragment} の横に表示できます。これは、ユーザーが縦方向のときに {@code DetailsActivity} を開始し、その後横方向に回転した（ここで現在のアクティビティが再開される）ときに起こることがあります。
+
+
+</p>
+
+
+<p>フラグメントを使用したその他のサンプルとこの例の完全なソース ファイルについては、<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Fragment">ApiDemos</a>（<a href="{@docRoot}resources/samples/get.html">SDK コンポーネントのサンプル</a>から入手可能）にある API デモサンプルをご覧ください。
+
+</p>
+
+
diff --git a/docs/html-intl/intl/ja/guide/components/fundamentals.jd b/docs/html-intl/intl/ja/guide/components/fundamentals.jd
new file mode 100644
index 0000000..46e9868
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/fundamentals.jd
@@ -0,0 +1,480 @@
+page.title=アプリケーションの基礎
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本書の内容</h2>
+<ol>
+<li><a href="#Components">アプリのコンポーネント</a>
+  <ol>
+    <li><a href="#ActivatingComponents">コンポーネントをアクティベートする</a></li>
+  </ol>
+</li>
+<li><a href="#Manifest">マニフェスト ファイル</a>
+  <ol>
+    <li><a href="#DeclaringComponents">コンポーネントを宣言する</a></li>
+    <li><a href="#DeclaringRequirements">アプリの要件を宣言する</a></li>
+  </ol>
+</li>
+<li><a href="#Resources">アプリのリソース</a></li>
+</ol>
+</div>
+</div>
+
+<p>Android アプリは Java プログラミング言語で記述されています。APKAndroid SDK ツールがコードを&mdash;データとリソース ファイルと共に、
+&mdash;APK  <i>（Android パッケージ）にコンパイルします。</i>これは、
+{@code .apk} という接尾語の付いたアーカイブ ファイルです。1 つの APK ファイルにはAndroid アプリのすべてのコンテンツが含まれており、Android 端末はアプリをインストールする際にこのファイルを使用します。
+</p>
+
+<p>端末にインストールすると、各 Android アプリはそれぞれのセキュリティ サンドボックス内で動作します。 </p>
+
+<ul>
+ <li>Android オペレーティング システムはマルチユーザーの Linux システムであり、各アプリが異なるユーザーになります。
+</li>
+
+<li>デフォルトで、システムは各アプリに一意の Linux ユーザー ID を割り当てます（ID はシステムのみが使用し、アプリは ID を関知しません）。
+アプリが割り当てられたユーザー ID のみがアプリ内のすべてのファイルにアクセスできるよう、システムがパーミッションを設定します。
+ </li>
+
+<li>各プロセスにはそれぞれ独自の仮想マシン（VM）があるため、アプリのコードは他のアプリとは分離して実行します。
+</li>
+
+<li>デフォルトで、すべてのアプリは独自の Linux プロセス上で実行します。Android はアプリのコンポーネントのいずれかを実行する必要があるときにプロセスを開始し、それが必要なくなったときや、システムが他のアプリ用にメモリを回復させる必要があるときにプロセスをシャットダウンします。
+
+</li>
+</ul>
+
+<p>このようにして、Android システムは<em>最小権限の原則</em>を実装しています。つまり、デフォルトでは各アプリにはコンポーネントの動作に必要な分だけのアクセス権が与えられます。
+
+これにより、パーミッションの与えられていないシステムの一部にアプリはアクセスできないという非常に安全性の高い環境が作り出されます。
+</p>
+
+<p>ただし、アプリが他のアプリとデータを共有したり、システムのサービスにアクセスしたりする方法もあります。
+</p>
+
+<ul>
+  <li>2 つのアプリで同一の Linux ユーザー ID を共有して、お互いのファイルにアクセスできるようにすることも可能です。
+システム リソースを節約するため、同じユーザー ID を持つアプリを同じ Linux プロセス上で実行し、同じ VM を共有するよう設定することもできます（アプリを同じ証明書で署名する必要があります）。
+
+</li>
+  <li>アプリから、ユーザーの連絡先、SMS メッセージ、マウント可能なストレージ（SD カード）、カメラ、Bluetooth といった端末データにアクセスするためのパーミッションを要求できます。
+アプリのすべてのパーミッションは、インストール時にユーザーから付与される必要があります。
+</li>
+</ul>
+
+<p>以上が、システム内の Android アプリの基本的な仕組みです。続いて、このドキュメントでは次の内容について説明します。
+</p>
+<ul>
+  <li>アプリを定義するコア フレームワーク コンポーネント。</li>
+  <li>コンポーネントを宣言し、アプリの端末機能に必要なマニフェスト ファイル。
+</li>
+  <li>アプリでさまざまな端末構成の動作を最適化できるようにする、アプリコードから分離されたリソース。
+</li>
+</ul>
+
+
+
+<h2 id="Components">アプリのコンポーネント</h2>
+
+<p>アプリのコンポーネントは、Android アプリに不可欠な構成要素です。各コンポーネントは、システムがアプリにアクセスするためのさまざまなエントリ ポイントになります。すべてのコンポーネントがユーザーの実際のエントリ ポイントになるわけではなく、中にはお互いに依存関係にあるものもありますが、それぞれが独自のエンティティとして存在し、特定の役割を担っています。各コンポーネントはアプリの全体的な動作を定義する固有の構成要素となっています。
+
+
+&mdash;
+</p>
+
+<p>アプリのコンポーネントには、4 つのタイプがあります。それぞれのタイプは、まったく異なる目的を果たし、コンポーネントの作成や破棄方法を定義するライフサイクルもそれぞれ異なります。
+</p>
+
+<p>アプリのコンポーネントのタイプは次の 4 つです。</p>
+
+<dl>
+
+<dt><b>アクティビティ</b></dt>
+
+<dd>アクティビティ <i>は</i> 1 つのユーザー インターフェースで 1 つの画面を表すものです。たとえば、メール アプリには新着メールの一覧を表示する 1 つのアクティビティと、メールを作成するアクティビティ、メールを閲覧するアクティビティがそれぞれ別にあります。
+
+メールアプリでは、複数のアクティビティが一体となって結合したユーザー操作を実現しますが、それぞれは他のものから独立しています。
+
+それにより、別のアプリで複数のアクティビティの中から、1 つのアクティビティを開始できるようになります（メールアプリが許可している場合）。
+たとえば、カメラアプリでは写真を他のユーザーと共有するために、メール アプリの新規メールを作成するアクティビティを開始できます。
+
+
+<p>アクティビティは {@link android.app.Activity} のサブクラスとして実装されます。詳細については、デベロッパー ガイドの「<a href="{@docRoot}guide/components/activities.html">Activities</a>」をご覧ください。
+
+</p>
+</dd>
+
+
+<dt><b>サービス</b></dt>
+
+<dd>サービス <i>は、</i> 長期間の操作やリモート プロセスを処理するためにバックグラウンドで実行するコンポーネントです。
+サービスは、ユーザー インターフェースを提供しません。
+たとえば、サービスはユーザーが別のアプリを使用している間にバックグラウンドで音楽を再生したり、ユーザーが別のアクティビティを操作している間にそれを妨げることなくネットワークからデータを取得したりします。
+
+アクティビティなどの別のコンポーネントは、サービスを開始して実行したり、それをバインドしたりして操作することもできます。
+
+
+<p>サービスは {@link android.app.Service} のサブクラスとして実装されます。詳細については、デベロッパー ガイドの「<a href="{@docRoot}guide/components/services.html">サービス</a>」をご覧ください。
+
+</p>
+</dd>
+
+
+<dt><b>コンテンツ プロバイダ</b></dt>
+
+<dd>コンテンツ プロバイダ <i>は</i> 共有されているアプリデータを管理します。データは、ファイル システム、SQLite データベース、ウェブ、アプリがアクセスできる、あらゆる永続性のストレージに保存できます。
+
+コンテンツ プロバイダを介して、他のアプリがデータをクエリしたり、修正したりすることもできます（コンテンツ プロバイダが許可している場合）。
+たとえば、Android システムではユーザーの連絡先情報を管理するコンテンツ プロバイダを提供しています。
+このように、適切なパーミッションさえあれば、アプリからコンテンツ プロバイダの一部（{@link
+android.provider.ContactsContract.Data}など）に問い合わせて、特定の人物に関する情報を読み取ったり書き込んだりできます。
+
+
+<p>コンテンツ プロバイダは、アプリで非公開扱いの共有されていないデータを閲覧したり書き込んだりする場合にも役立ちます。
+たとえば、<a href="{@docRoot}resources/samples/NotePad/index.html">Note Pad</a> のサンプル アプリでは、コンテンツ プロバイダを使用してメモを保存します。
+</p>
+
+<p>コンテンツ プロバイダは {@link android.content.ContentProvider} のサブクラスとして実装され、他のアプリがトランザクションを実行できるようにする API の標準セットを実装する必要があります。
+
+詳細については、デベロッパー ガイドの「<a href="{@docRoot}guide/topics/providers/content-providers.html">Contetns Providers</a>」をご覧ください。
+</p>
+</dd>
+
+
+<dt><b>ブロードキャスト レシーバー</b></dt>
+
+<dd>ブロードキャスト レシーバー <i>は</i> システム全体のブロードキャスト アナウンスに応答するコンポーネントです。
+たとえば、画面がオフになった、バッテリ残量が低い、写真が撮影されたなど、システムに起因するブロードキャストはたくさんあります。アプリでもブロードキャストを開始でき、たとえば他のアプリに、一部のデータが端末にダウンロードされ、利用可能になったことを伝えることもできます。&mdash;
+
+&mdash;
+ブロードキャスト レシーバーがユーザー インターフェースを表示することはありませんが、<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">ステータスバー通知を作成</a>して、ブロードキャスト イベントの発生時にユーザーに警告できます。
+
+一般的には、ブロードキャスト レシーバーは他のコンポーネントへの単なる「入り口」であり、最小限の操作を行うことが前提となっています。
+たとえば、イベントに基づいた何らかの作業を実行するサービスを開始する場合などに適しています。
+
+
+<p>ブロードキャスト レシーバーは、{@link android.content.BroadcastReceiver} のサブクラスとして実装され、各ブロードキャストは {@link android.content.Intent} オブジェクトとして配信されます。
+詳細については、{@link android.content.BroadcastReceiver} クラスをご覧ください。
+</p>
+</dd>
+
+</dl>
+
+
+
+<p>Android ならではのシステムデザインによって、どのアプリケーションからでも別のアプリケーションを開始できます。
+たとえば、ユーザーが端末のカメラで写真を撮影できるようにする場合、既にその機能を備えた別のアプリがあることを想定して、写真を撮影するアクティビティを自身で開発する代わりに、アプリがそれを使用できます。
+
+カメラアプリを組み込んだり、コードにリンクしたりする必要もなく、単純に写真を撮影するカメラアプリのアクティビティを開始するだけです。
+
+
+完了後、写真はアプリに戻り、それを使用することもできます。ユーザー側には、カメラがアプリの一部であるかのように見えます。
+</p>
+
+<p>システムがコンポーネントを開始すると、そのアプリのプロセスを開始し（まだ実行していない場合）、コンポーネントが必要とするクラスをインスタンス化します。
+たとえば、アプリで写真を撮影するカメラアプリのアクティビティを開始すると、そのアクティビティはアプリのプロセスではなく、カメラアプリのプロセスで実行します。そのため、他のシステムのアプリとは異なり、Android アプリのエントリ ポイントは 1 つではありません（たとえば、{@code main()} 関数はありません）。
+
+
+
+</p>
+
+<p>システムは、他のアプリへのアクセスを制限するファイル許可を使用して各アプリを別々のプロセスで実行するため、アプリから直接他のアプリのコンポーネントはアクティベートできませんが、Android システムはそれが可能です。
+
+そのため、他のアプリのコンポーネントをアクティベートするには、特定のコンポーネントを開始する<em>インテント</em>を指定するメッセージをシステムに配信する必要があります。
+
+その後、システムが代わりにコンポーネントをアクティベートします。</p>
+
+
+<h3 id="ActivatingComponents">コンポーネントをアクティベートする</h3>
+
+<p>4 つのコンポーネント タイプのなかで、アクティビティ、サービス、ブロードキャスト レシーバーの 3 つは、<em>インテント</em>と呼ばれる非同期メッセージによってアクティベートされます。コンポーネントがアプリに属していても他のものに属していても、インテントにより実行時に個別のコンポーネントがお互いに結び付けられます（他のコンポーネントからのアクションを要求するメッセンジャーのようなものです）。&mdash;&mdash;
+
+
+
+</p>
+
+<p>インテントは {@link android.content.Intent} オブジェクトを使用して作成されます。このオブジェクトは特定のコンポーネントや特定の<em>タイプ</em>のコンポーネントをアクティベートするようにメッセージを定義します。インテントはそれぞれ明示的、暗黙的のいずれかになります。&mdash;
+
+</p>
+
+<p>アクティビティとサービスでは、インテントが実行するアクション（「閲覧」したり「送信」したりする）を定義し、操作に使うデータ（特に、開始されるコンポーネントが知っておく必要があるデータ）の URI を指定することもできます。
+
+たとえば、インテントはアクティビティに画像を表示したり、ウェブページを開いたりするアクティビティに対して要求を伝達します。
+場合によっては、結果を受け取るアクティビティを開始でき、この場合にアクティビティが返す結果も {@link android.content.Intent} になります（たとえば、ユーザーが個人の連絡先を取り出し、それを返してくれるインテントを発行できます。返されたインテントには選択された連絡先を指す URI が含まれています）。
+&mdash;
+
+
+</p>
+
+<p>ブロードキャスト レシーバーの場合、インテントは単純にブロードキャストするアナウンスを定義します（たとえば、端末のバッテリ残量が少ないことを示すブロードキャストには、「バッテリが少ない」ことを示す既知のアクション文字列が含まれます）。
+
+</p>
+
+<p>他のコンポーネント タイプであるコンテンツ プロバイダは、インテントではアクティベートされず、{@link android.content.ContentResolver} からの要求の対象となったときにアクティベートされます。
+コンテンツリゾルバが、コンテンツプロバイダを使ってすべてのトランザクションを直接処理することで、プロバイダを使ってトランザクションを実行しているコンポーネントは処理する必要がなくなり、代わりに {@link
+android.content.ContentResolver} オブジェクトのメソッドを呼び出します。
+
+これによりコンテンツ プロバイダと情報を要求しているコンポーネントとの間に（セキュリティ目的で）抽象的な層ができます。
+</p>
+
+<p>各コンポーネント タイプのアクティベート用に、個別のメソッドが用意されています。</p>
+<ul>
+  <li>アクティビティを開始する（または新しい作業を与える）場合は、{@link android.content.Intent} を {@link android.content.Context#startActivity
+startActivity()} や {@link android.app.Activity#startActivityForResult startActivityForResult()} （アクティビティに結果を求める場合）に渡します。
+
+</li>
+  <li>サービスを開始する（または継続中のサービスに新しい指示を与える）には、{@link android.content.Intent} を {@link android.content.Context#startService
+startService()} に渡します。
+または、{@link android.content.Intent} を {@link android.content.Context#bindService bindService()} に渡してサービスにバインドできます。
+</li>
+  <li>ブロードキャストを開始するには、{@link android.content.Intent} を {@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}、{@link
+android.content.Context#sendOrderedBroadcast(Intent, String) sendOrderedBroadcast()}、{@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()} などのメソッドに渡します。
+</li>
+  <li>コンテンツ プロバイダへのクエリを実行するには、{@link android.content.ContentResolver} の {@link
+android.content.ContentProvider#query query()} を呼び出します。</li>
+</ul>
+
+<p>インテントの使用に関する詳細については、「<a href="{@docRoot}guide/components/intents-filters.html">インテントとインテント フィルタ</a>」のドキュメントをご覧ください。
+特定のコンポーネントのアクティベートの詳細については、
+<a href="{@docRoot}guide/components/activities.html">アクティビティ</a>、<a href="{@docRoot}guide/components/services.html">サービス</a>、{@link
+android.content.BroadcastReceiver}、<a href="{@docRoot}guide/topics/providers/content-providers.html">コンテンツ プロバイダ</a> のドキュメントでも説明しています。</p>
+
+
+<h2 id="Manifest">マニフェスト ファイル</h2>
+
+<p>Android システムがコンポーネントを開始する前に、システムはアプリの {@code AndroidManifest.xml} ファイル（「マニフェスト」ファイル）を読み取って、コンポーネントの存在を認識する必要があります。
+
+アプリはこのファイルですべてのコンポーネントを宣言し、このファイルはアプリ プロジェクトのディレクトリのルートに置く必要があります。
+</p>
+
+<p>マニフェストはアプリのコンポーネントを宣言する他にも、次のようにさまざまな役割があります。
+</p>
+<ul>
+  <li>インターネット アクセスや、ユーザーの連絡先への読み取りアクセスなど、アプリに必要なユーザー パーミッションを識別する。
+</li>
+  <li>アプリが使用する API に基づいた、アプリが必要とする最小 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API レベル</a>を宣言する。
+</li>
+  <li>カメラ、Bluetooth サービス、マルチタッチ スクリーンなど、アプリで使用されるか必要とされるハードウェア機能やソフトウェア機能を宣言する。
+</li>
+  <li><a href="http://code.google.com/android/add-ons/google-apis/maps-overview.html">Google マップ ライブラリ</a>など、アプリにリンクする必要のある API ライブラリ（Android フレームワーク API は除く）。
+
+</li>
+  <li>その他の役割</li>
+</ul>
+
+
+<h3 id="DeclaringComponents">コンポーネントを宣言する</h3>
+
+<p>マニフェストの主なタスクは、システムにアプリ コンポーネントに関する情報を与えることです。たとえば、マニフェスト ファイルではアクティビティを次のように宣言できます。
+ </p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest ... &gt;
+    &lt;application android:icon="@drawable/app_icon.png" ... &gt;
+        &lt;activity android:name="com.example.project.ExampleActivity"
+                  android:label="@string/example_label" ... &gt;
+        &lt;/activity&gt;
+        ...
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p><code><a
+href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 要素では、{@code android:icon} 属性でアプリを特定するアイコンのリソースを指します。
+
+</p>
+
+<p><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 要素では、{@code android:name} 属性で{@link
+android.app.Activity} サブクラスの完全修飾k裏スパイウェア名を指定し、{@code android:label} 属性でアクティビティのユーザーに表示するラベルとして使用する文字列を指定しています。
+
+</p>
+
+<p>すべてのアプリ コンポーネントは、次の方法で宣言する必要があります。</p>
+<ul>
+  <li><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> アクティビティ用の要素
+</li>
+  <li><code><a
+href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> サービス用の要素
+</li>
+  <li><code><a
+href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code> ブロードキャスト レシーバー用の要素
+</li>
+  <li><code><a
+href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code> コンテンツ プロバイダ用の要素
+</li>
+</ul>
+
+<p>ソースに含まれていながら、マニフェスト ファイルでは定義されていないアクティビティ、サービス、コンテンツ プロバイダはシステムには見えないため、実行されることはありません。
+ただし、ブロードキャスト レシーバーはマニフェストで宣言するか、コードで動的に作成（{@link android.content.BroadcastReceiver} オブジェクトとして）して {@link android.content.Context#registerReceiver registerReceiver()} を呼び出すことでシステムに登録できます。
+
+
+
+</p>
+
+<p>アプリのマニフェスト ファイルの構築方法の詳細については、「<a href="{@docRoot}guide/topics/manifest/manifest-intro.html">The AndroidManifest.xml File</a>」のドキュメントをご覧ください。
+ </p>
+
+
+
+<h3 id="DeclaringComponentCapabilities">コンポーネントの機能を宣言する</h3>
+
+<p><a href="#ActivatingComponents">コンポーネントをアクティベートする</a>で説明したように、{@link android.content.Intent} を使用してアクティビティ、サービス、ブロードキャスト レシーバーを開始できます。
+開始するには、インテントでターゲットのコンポーネントの名前を（コンポーネントのクラス名を使って）明示的に指定する必要があります。
+ただし、インテントの本来の能力は、<em>暗黙的インテント</em>の概念にあります。
+暗黙的インテントは、単に実行するアクションのタイプを記述し（どのデータ上でアクションを実行するかも任意で記述できます）、それによりシステムがそのアクションを実行できる端末上のコンポーネントを見つけて開始できます。
+
+
+インテントで記述されたアクションを実行できるコンポーネントが複数ある場合は、使用するコンポーネントを 1 つ選択できます。
+</p>
+
+<p>システムは、端末の他のアプリのマニフェスト ファイルに提供されたインテント フィルタが受け取った
+ <i>インテントを比較して、</i> インテントに応答できるコンポーネントを識別します。
+</p>
+
+<p>アプリのマニフェストでアクティビティを宣言するとき、任意でアクティビティの機能を宣言するインテント フィルタを含めて、他のアプリからのインテントに応答できるようにできます。
+
+<a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> 要素を、コンポーネントを宣言している要素の子として追加することで、コンポーネントのインテント フィルタを宣言できます。
+</p>
+
+<p>たとえば、新規メールを作成するアクティビティを持つメールアプリをビルドした場合、次のように「送信」インテント（新規メールを送信するための）に応答するインテント フィルタを宣言できます。
+</p>
+<pre>
+&lt;manifest ... >
+    ...
+    &lt;application ... &gt;
+        &lt;activity android:name="com.example.project.ComposeEmailActivity">
+            &lt;intent-filter>
+                &lt;action android:name="android.intent.action.SEND" />
+                &lt;data android:type="*/*" />
+                &lt;category android:name="android.intent.category.DEFAULT" />
+            &lt;/intent-filter>
+        &lt;/activity>
+    &lt;/application&gt;
+&lt;/manifest>
+</pre>
+
+<p>次に、別のアプリが {@link
+android.content.Intent#ACTION_SEND} アクションを持つインテントを作成し、{@link android.app.Activity#startActivity
+startActivity()} に渡す場合、ユーザーがメールを下書きして送信できるよう、システムがアクティビティを開始する場合があります。
+</p>
+
+<p>インテント フィルタの作成の詳細については、「<a href="{@docRoot}guide/components/intents-filters.html">インテントとインテント フィルタ</a>」のドキュメントをご覧ください。
+</p>
+
+
+
+<h3 id="DeclaringRequirements">アプリの要件を宣言する</h3>
+
+<p>Android が搭載された端末は数多くありますが、すべての端末が同じ機能や性能を備えているわけではありません。
+アプリに必要な機能を搭載していない端末にアプリをインストールしてしまわないよう、アプリがサポートする端末のタイプについてプロファイルで明確に定義し、マニフェスト ファイルで端末の要件やソフトウェア要件を宣言しておくことが重要です。
+
+
+これらの宣言のほとんどはただの情報で、システムがそれを読み取ることはありませんが、Google Play などの外部サービスはそれを読み取って、ユーザーが端末からアプリを検索したときにフィルタを提供します。
+
+</p>
+
+<p>たとえば、アプリでカメラを使用する必要があり、Android 2.1 で採用された API（<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API レベル</a> 7）を使用する場合、次のようにマニフェスト ファイルでそれを要件として宣言する必要があります。
+</p> 
+
+<pre>
+&lt;manifest ... >
+    &lt;uses-feature android:name="android.hardware.camera.any"
+                  android:required="true" />
+    &lt;uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" />
+    ...
+&lt;/manifest>
+</pre>
+
+<p>カメラの<em>ない</em>端末で、Android バージョンが 2.1 <em>以下</em>の場合は、Google Play からアプリをインストールできません。
+</p>
+
+<p>ただし、アプリでカメラを使用するが、それが<em>必須</em>ではないということを宣言することもできます。
+この場合、アプリで <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#required">{@code required}</a> 属性を {@code "false"} に設定し、端末にカメラがあるかどうかを実行時に確認して、必要に応じてすべてのカメラ機能を無効にする必要があります。
+
+</p>
+
+<p>異なる端末でのアプリの互換性を管理する方法については、「<a href="{@docRoot}guide/practices/compatibility.html">Device Compatibility</a>」をご覧ください。
+
+</p>
+
+
+
+<h2 id="Resources">アプリのリソース</h2>
+
+<p>Android アプリは、コードだけで構成されているわけではありません。ソース コードから分離された画像、オーディオ ファイル、その他アプリの外観に関連するあらゆるリソースが必要です。たとえば、アクティビティのアニメーション、メニュー、スタイル、色、レイアウトなどを XML ファイルで定義する必要があります。&mdash;
+
+
+アプリのリソースを使用すると、コードを修正することなく別のリソースセットを提供することで、アプリのあらゆる特性を簡単にアップデートできるようになります。これにより、さまざまな端末の設定用（別の言語や画面サイズなど）にアプリを最適化できます。
+&mdash;
+&mdash;
+</p>
+
+<p>Android プロジェクトに含めるすべてのリソースに対し、SDK ビルド ツールが一意の整数 ID を定義し、アプリコードや XML で定義された他のリソースからリソースにそれを使って参照できます。
+
+たとえば、アプリに {@code
+logo.png} という名前の画像ファイルがある場合（{@code res/drawable/} ディレクトリ内に保存）、SDK ツールが {@code R.drawable.logo} という名前のリソース ID を生成し、これを使って画像を参照してユーザー インターフェースに挿入できます。
+
+</p>
+
+<p>リソースとソース コードを分離して提供する方法の最も重要な側面は、さまざまな端末設定に合わせて別のリソースを提供できるという点です。
+
+たとえば、XML で UI 文字列を定義することで、その文字列を他の言語に翻訳して、それらの文字列を別のファイルに保存しておくことができます。
+それを、リソースのディレクトリ名に付けた言語の<em>修飾子</em>（フランス語の文字列値なら {@code res/values-fr/} のように）とユーザーの言語設定に基づいて、Android システムによって UI に適切な言語の文字列が適用されます。
+
+
+</p>
+
+<p>Android では代替リソース用に多様な<em>修飾子</em>をサポートしています。修飾子は、リソースのディレクトリ名に含める短い文字列で、そのリソースを使用する端末構成を定義するものです。
+
+例をもう 1 つ挙げると、端末の画面の向きやサイズによって、アクティビティのレイアウトを複数作成する必要があります。
+
+たとえば、端末が縦方向（縦長）の場合、ボタンの付いたレイアウトを縦に並べ、端末が横方向（横長）の場合はボタンを横並びにする、といった場合です。
+
+画面の方向によってレイアウトを変更するには、2 つの異なるレイアウトを定義して、それぞれのレイアウトのディレクトリ名に適切な修飾子を適用します。
+
+そうすることで、現在の端末の向きによってシステムが自動的に適切なレイアウトを適用できます。
+</p>
+
+<p>アプリケーションに含めることのできるリソースの種類や、異なる端末設定用の代替リソースの作成方法については、「<a href="{@docRoot}guide/topics/resources/providing-resources.html">リソースの提供</a>」をご覧ください。
+</p>
+
+
+
+<div class="next-docs">
+<div class="col-6">
+  <h2 class="norule">こちらもご覧ください。</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/components/intents-filters.html">インテントとインテント フィルタ</a>
+    </dt>
+    <dd>{@link android.content.Intent} API を使用して、アクティビティやサービスなどのアプリのコンポーネントをアクティベートする方法や、アプリのコンポーネントを他のアプリで利用できるようにする方法について説明しています。
+
+</dd>
+    <dt><a href="{@docRoot}guide/components/activities.html">Activities</a></dt>
+    <dd>ユーザー インターフェースを使って独特のアプリケーション画面を提供する {@link android.app.Activity}
+ クラスのインスタンスの作成方法について説明しています。</dd>
+    <dt><a href="{@docRoot}guide/topics/resources/providing-resources.html">リソースの提供</a></dt>
+    <dd>特定の端末構成に対して代替リソースを提供する方法など、Android アプリでアプリのリソースをアプリコードから分離する仕組みについて説明しています。
+
+
+    </dd>
+  </dl>
+</div>
+<div class="col-6">
+  <h2 class="norule">関連ドキュメント</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/practices/compatibility.html">Device Compatibility</a></dt>
+    <dd>あらゆるタイプの端末での Android の動作と、端末ごとにアプリを最適化したり、別の端末でのアプリの利用を制限したりする方法について説明しています。
+
+</dd>
+    <dt><a href="{@docRoot}guide/topics/security/permissions.html">System Permissions</a></dt>
+    <dd>アプリが特定の API を使用するのにユーザーの同意を必要とするパーミッション システムを使用して、アプリから特定の API へのアクセスを Android が制限する仕組みについて説明しています。
+</dd>
+  </dl>
+</div>
+</div>
+
diff --git a/docs/html-intl/intl/ja/guide/components/index.jd b/docs/html-intl/intl/ja/guide/components/index.jd
new file mode 100644
index 0000000..803f99b
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/index.jd
@@ -0,0 +1,57 @@
+page.title=アプリ<br>コンポーネント
+page.landing=true
+page.landing.intro=Android のアプリケーション フレームワークでは、再利用可能なコンポーネント セットを使用して豊富な内容を備えた斬新なアプリを作成できます。このセクションでは、アプリの構成要素を定義するコンポーネントのビルド方法と、インテントを使用してそれらをつなぎ合わせる方法について説明します。
+page.metaDescription=Android のアプリケーション フレームワークでは、再利用可能なコンポーネント セットを使用して豊富な内容を備えた斬新なアプリを作成できます。このセクションでは、アプリの構成要素を定義するコンポーネントのビルド方法と、インテントを使用してそれらをつなぎ合わせる方法について説明します。
+page.landing.image=images/develop/app_components.png
+page.image=images/develop/app_components.png
+
+@jd:body
+
+<div class="landing-docs">
+
+  <div class="col-6">
+    <h3>ブログの記事</h3>
+    
+    <a href="http://android-developers.blogspot.com/2012/05/using-dialogfragments.html">
+      <h4>DialogFragments の使用</h4>
+      <p>この投稿では、DialogFragments を v4 サポート ライブラリで使用して（Honeycomb 以前の端末での下方互換性のため）ダイアログを編集したり、インターフェースを使用して呼び出し元の Activity に結果を返したりする方法について説明します。</p>
+    </a>
+
+    <a href="http://android-developers.blogspot.com/2011/03/fragments-for-all.html">
+      <h4>すべてに Fragments を</h4>
+      <p>本日、同じ Fragments API を利用できる静的なライブラリが公開され、Android 1.6 以降でもフラグメントを使用してタブレット対応のユーザー インターフェースを作成できるようになりました。 </p>
+    </a>
+    
+    <a href="http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html">
+      <h4>マルチスレッドでパフォーマンス向上</h4>
+      <p>応答の速いアプリケーションを作成する上で重要なのは、メイン UI スレッドが最小限の作業を行うようにすることです。
+アプリケーションのハングにつながる可能性のある長期的なタスクは、別のスレッドで処理するようにします。
+</p>
+    </a>
+  </div>
+
+  <div class="col-6">
+    <h3>トレーニング</h3>
+    
+    <a href="http://developer.android.com/training/basics/activity-lifecycle/index.html">
+      <h4>アクティビティのライフサイクルの管理</h4>
+      <p>このレッスンでは、各 Activity インスタンスが受け取る重要なライフサイクル コールバック メソッドについて、それらを使用してユーザーの予期する内容でアクティビティを動作させる方法と、アクティビティがそれらを必要としないときに、システムのリソースを消費しないようにする方法について学習します。
+
+</p>
+    </a>
+
+    <a href="http://developer.android.com/training/basics/fragments/index.html">
+      <h4>フラグメントで動的 UI を構築</h4>
+      <p>このレッスンでは、Android 1.6 以降の旧バージョンを実行する端末に対応しながら、フラグメントを使用して動きのある使用感を実現し、異なる画面サイズでのアプリの操作感を最適化する方法について説明します。
+
+</p>
+    </a>
+
+    <a href="http://developer.android.com/training/sharing/index.html">
+      <h4>コンテンツの共有</h4>
+      <p>このレッスンでは、Intent API と ActionProvider オブジェクトを使用して、アプリケーション間でコンテンツを送受信する際の一般的な方法について説明します。
+</p>
+    </a>
+  </div>
+
+</div>
diff --git a/docs/html-intl/intl/ja/guide/components/intents-filters.jd b/docs/html-intl/intl/ja/guide/components/intents-filters.jd
new file mode 100644
index 0000000..fe78eca
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/intents-filters.jd
@@ -0,0 +1,899 @@
+page.title=インテントとインテント フィルタ
+page.tags="IntentFilter"
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本書の内容</h2>
+<ol>
+  <li><a href="#Types">インテントのタイプ</a></li>
+  <li><a href="#Building">インテントを作成する</a>
+    <ol>
+      <li><a href="#ExampleExplicit">明示的インテントの例</a></li>
+      <li><a href="#ExampleSend">暗黙的インテントの例</a></li>
+      <li><a href="#ForceChooser">アプリチューザを表示する</a></li>
+    </ol>
+  </li>
+  <li><a href="#Receiving">暗黙的インテントを受け取る</a>
+    <ol>
+      <li><a href="#ExampleFilters">フィルタの例</a></li>
+    </ol>
+  </li>
+  <li><a href="#PendingIntent">ペンディング インテントを使用する</a></li>
+  <li><a href="#Resolution">インテント解決</a>
+    <ol>
+      <li><a href="#ActionTest">アクションのテスト</a></li>
+      <li><a href="#CategoryTest">カテゴリのテスト</a></li>
+      <li><a href="#DataTest">データのテスト</a></li>
+      <li><a href="#imatch">インテントのマッチング</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>関連ドキュメント</h2>
+<ol>
+<li><a href="{@docRoot}training/basics/intents/index.html">Interacting with Other Apps</a></li>
+<li><a href="{@docRoot}training/sharing/index.html">Sharing Content</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+
+<p>{@link android.content.Intent} は、他の<a href="{@docRoot}guide/components/fundamentals.html#Components">アプリ コンポーネント</a>からのアクションを要求するときに使用するメッセージング オブジェクトです。インテントを使用することでコンポーネント間の通信を促進する方法はいくつかありますが、基本的な使用例は次の 3 つです。
+
+
+</p>
+
+<ul>
+<li><b>アクティビティを開始するには:</b>
+<p>{@link android.app.Activity} はアプリ内の 1 つの画面を表します。{@link android.app.Activity} の新しいインスタンスを開始するには、{@link android.content.Intent} を {@link android.content.Context#startActivity startActivity()} に渡します。
+
+{@link android.content.Intent} は、開始するアクティビティを記述し、必要なデータすべてを含んでいます。
+</p>
+
+<p>アクティビティの完了時に結果を受け取る場合は、{@link android.app.Activity#startActivityForResult
+startActivityForResult()} を呼び出します。
+アクティビティは、結果を別の {@link android.content.Intent} オブジェクトとして、アクティビティの {@link
+android.app.Activity#onActivityResult onActivityResult()} コールバック内に受け取ります。詳細については、「<a href="{@docRoot}guide/components/activities.html">Activities</a>」のガイドをご覧ください。
+
+</p></li>
+
+<li><b>サービスを開始するには:</b>
+<p>{@link android.app.Service} は、ユーザー インターフェースを持たず、バックグラウンドで操作を実行するコンポーネントです。
+サービスを開始して 1 回限りの操作を実行する（ファイルのダウンロードなど）には、{@link android.content.Intent} を {@link android.content.Context#startService startService()} に渡します。
+
+{@link android.content.Intent} は、開始するサービスを記述し、必要なデータすべてを含んでいます。
+</p>
+
+<p>クライアントサーバーのインターフェースでサービスがデザインされている場合、{@link android.content.Intent} を {@link
+android.content.Context#bindService bindService()}</code> に渡して、他のコンポーネントからのサービスにバインドできます。
+詳細については、「<a href="{@docRoot}guide/components/services.html">サービス</a>」のガイドをご覧ください。</p></li>
+
+<li><b>ブロードキャストを配信するには:</b>
+<p>ブロードキャストは、アプリが受け取ることのできるメッセージです。システムは、システムの起動や端末の充電開始など、さまざまなシステム イベントを配信します。他のアプリにブロードキャストを配信するには、{@link android.content.Intent} を {@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}、{@link android.content.Context#sendOrderedBroadcast(Intent, String)
+sendOrderedBroadcast()}、{@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()} のいずれかに渡します。
+
+
+
+</p>
+</li>
+</ul>
+
+
+
+
+<h2 id="Types">インテントのタイプ</h2>
+
+<p>インテントには 2 つのタイプがあります。</p>
+
+<ul>
+<li><b>明示的インテント</b>は、開始するコンポーネントを名前（完全修飾クラス名）で指定します。
+通常は開始するアクティビティやサービスのクラス名がわかっているため、明示的インテントを使用してアプリ内のコンポーネントを開始します。
+たとえば、ユーザー操作に応答して新しいアクティビティを開始したり、バックグラウンドでファイルをダウンロードするサービスを開始したりします。
+
+</li>
+
+<li><b>暗黙的インテント</b>では、特定のコンポーネントを指定せず、代わりに実行する全般的な動作を宣言することで、他のアプリからコンポーネントを処理できるようにします。
+たとえば、マップ上にユーザーの位置を表示する場合、暗黙的インテントを使って、特定の場所をマップ上に表示できる別のアプリにその操作を要求します。
+
+</li>
+</ul>
+
+<p>暗黙的インテントを使用してアクティビティやサービスを開始する際、システムによってただちに {@link android.content.Intent} オブジェクトで指定されたアプリ コンポーネントが開始されます。
+</p>
+
+<div class="figure" style="width:446px">
+<img src="{@docRoot}images/components/intent-filters@2x.png" width="446" alt="" />
+<p class="img-caption"><strong>図 1.</strong> 暗黙的インテントが他のアクティビティを開始するようシステム内に配信される仕組みを表しています。<b>[1]</b> <em>Activity A</em> がアクションの記述を使って {@link android.content.Intent} を作成し、それを {@link
+android.content.Context#startActivity startActivity()} に渡します。<b>[2]</b> Android システムがすべてのアプリに対してインテントに一致するインテント フィルタを検索します。
+
+
+一致するものが見つかったら、<b>[3]</b> システムが {@link
+android.app.Activity#onCreate onCreate()} メソッドを呼び出して、{@link android.content.Intent} に渡すことで、そのアクティビティ（<em>Activity B</em>）を開始します。
+
+</p>
+</div>
+
+<p>暗黙的インテントを作成するとき、Android システムはインテントの内容を、端末上の他のアプリの <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">マニフェスト ファイル</a>で定義された <em>インテント フィルタ</em> と比較して、開始すべきコンポーネントを見つけます。
+
+インテントがインテント フィルタに一致した場合、システムがそのコンポーネントを開始して、{@link android.content.Intent} を配信します。
+複数のインテント フィルタが競合する場合、ユーザーが仕様するアプリを選択できるようシステムによってダイアログが表示されます。
+</p>
+
+<p>インテント フィルタは、コンポーネントが受け取りたいインテントのタイプを指定する式で、アプリのマニフェスト ファイルに含まれています。
+
+たとえば、アクティビティのインテント フィルタを宣言すると、特定のインテント タイプを持つアクティビティを他のアプリから直接開始できるようになります。同様に、アクティビティでインテント フィルタを宣言<em>しない</em>場合は、明示的インテントでのみアクティビティを開始できます。
+
+
+</p>
+
+<p class="caution"><strong>警告:</strong> アプリの安全性を保つため、{@link android.app.Service} を開始するときは常に明示的インテントを使用し、サービスでインテント フィルタを宣言しないようにしてください。
+
+暗黙的インテントを使ってサービスを開始すると、どのサービスがインテントに応答するかを把握できず、ユーザーにはどのサービスが開始するのかがわからないため、セキュリティ上の危険が伴います。
+
+Android 5.0（API レベル 21）以降では、暗黙的インテントで {@link android.content.Context#bindService bindService()} を呼び出すと、システムから例外がスローされます。
+
+</p>
+
+
+
+
+
+<h2 id="Building">インテントを作成する</h2>
+
+<p>{@link android.content.Intent} オブジェクトには Android システムが開始するコンポーネントを決定する際に使用する情報（インテントを受け取るべき正確なコンポーネント名やコンポーネントのカテゴリなど）に加えて、受け取る側のコンポーネントがアクションを適切に実行するために使用する情報（実行するアクションと、実行対象のデータなど）が含まれています。
+
+
+</p>
+
+
+<p>{@link android.content.Intent} に含まれる主な情報は次のとおりです。</p>
+
+<dl>
+
+<dt><b>コンポーネント名</b></dt>
+<dd>開始するコンポーネントの名前です。
+
+<p>これは省略可能ですが、インテントを<b>明示的</b>にするためには不可欠な情報です。つまり、コンポーネント名で定義されたアプリ コンポーネントにのみ、インテントが配信されます
+
+コンポーネント名がない場合、インテントは<b>暗黙的</b>になり、他のインテント情報（下記で説明するアクション、データ、カテゴリなど）に基づいてインテントを受け取るべきコンポーネントをシステムが決定します
+
+&mdash;そのため、アプリ内の特定のコンポーネントを開始する必要がある場合は、コンポーネント名を指定する必要があります。
+</p>
+
+<p class="note"><strong>注:</strong> {@link android.app.Service} を開始するときは、<strong>常にコンポーネント名を指定</strong>する必要があります。
+指定しない場合、どのサービスがインテントに応答するかを把握できず、ユーザーにはどのサービスが開始するのかがわからなくなります。
+</p>
+
+<p>{@link android.content.Intent} のフィールドは {@link android.content.ComponentName} オブジェクトで、アプリのパッケージ名など、ターゲットのコンポーネントの完全修飾クラス名を使用して指定できます（例: {@code com.example.ExampleActivity}）。
+
+
+コンポーネント名は、{@link
+android.content.Intent#setComponent setComponent()}、{@link android.content.Intent#setClass
+setClass()}、{@link android.content.Intent#setClassName(String, String) setClassName()}、{@link android.content.Intent} コンストラクタなどを使用して設定できます。
+</p>
+
+</dd>
+
+<p><dt><b>アクション</b></dt>
+<dd>実行する全体的なアクションを指定する文字列です（<em>閲覧</em>や<em>選択</em>など）。
+
+<p>ブロードキャスト インテントの場合、これが発生済みで報告済みのアクションになります。ほとんどのアクションは、残りのインテントがどのように構成されているか、特にデータやエクストラに含まれている内容によって決まります。
+&mdash;
+
+
+<p>インテントによって自身のアプリで使用する（または他のアプリで使用して自身のアプリのコンポーネントを呼び出す）独自のアクションを指定できますが、通常は {@link android.content.Intent} クラスや他のフレームワーク クラスで定義されたアクション定数を使用します。
+
+アクティビティを開始する際の一般的なアクションをいくつか次に示します。
+</p>
+
+<dl>
+<dt>{@link android.content.Intent#ACTION_VIEW}</dt>
+   <dd>ギャラリー アプリで表示する写真や、マップアプリで表示する住所など、アクティビティ内にユーザーに表示する情報がある場合は、{@link
+   android.content.Context#startActivity startActivity()} を使ってインテントにこのアクションを使用します。
+
+</dd>
+
+<dt>{@link android.content.Intent#ACTION_SEND}</dt>
+   <dd>これは「共有」インテントとしても知られており、メールアプリやソーシャル シェアリング アプリなどの他のアプリ経由でユーザーが共有できるデータがある場合に、{@link
+   android.content.Context#startActivity startActivity()} でインテントに使用します。
+</dd>
+</dl>
+
+<p>全体的なアクションを定義するその他の定数については、{@link android.content.Intent} クラスのリファレンスをご覧ください。
+システムの設定アプリで特定の画面を開くアクションの {@link android.provider.Settings} など、他のアクションは Android フレームワークの別の場所で定義されます。
+
+</p>
+
+<p>インテントのアクションは、{@link android.content.Intent#setAction
+setAction()} や {@link android.content.Intent} コンストラクタを使って指定できます。</p>
+
+<p>独自のアクションを定義したら、接頭辞としてアプリのパッケージ名を必ず含めます。
+次に例を示します。</p>
+<pre>static final String ACTION_TIMETRAVEL = "com.example.action.TIMETRAVEL";</pre>
+</dd>
+
+<dt><b>データ</b></dt>
+<dd>アクションの実行対象であるデータや、データの MIME タイプを参照する URI（{@link android.net.Uri} オブジェクト）です。
+提供されるデータタイプは、インテントのアクションによって決まります。たとえば、アクションが {@link android.content.Intent#ACTION_EDIT} の場合、データには編集するドキュメントの URI が含まれます。
+
+
+
+<p>インテントの作成時、URI だけでなくデータタイプ（MINE タイプ）を指定することが重要な場面が多くあります。たとえば、画像を表示できるアクティビティの場合、URI 形式は似ていてもオーディオ ファイルは再生できません。そのため、データの MIME タイプを指定することで、Android システムがインテントを受け取るのに最適なコンポーネントを見つけることができます。ただし、MIME タイプは URI から推測できることもあります。特にデータが {@code content:} URI の場合は、データが端末上にあり、{@link android.content.ContentProvider} に制御されるデータであることを示し、データの MIME タイプがシステムから見えるようになります。
+
+
+
+
+
+&mdash;
+
+</p>
+
+<p>データ URI のみを設定するには、{@link android.content.Intent#setData setData()} を呼び出します。MIME タイプのみを設定するには、{@link android.content.Intent#setType setType()} を呼び出します。
+必要であれば、{@link
+android.content.Intent#setDataAndType setDataAndType()} を使って両方を明示的に設定することもできます。
+</p>
+
+<p class="caution"><strong>警告:</strong> URI と MIME タイプの両方を設定する場合は、お互いの値を無効にしてしまわないよう、{@link android.content.Intent#setData setData()} と {@link android.content.Intent#setType setType()} を<strong>呼び出さないで</strong>ください。URI と MIME タイプの両方を設定する場合は、常に {@link android.content.Intent#setDataAndType setDataAndType()} を使用してください。
+
+
+
+</p>
+</dd>
+
+<p><dt><b>カテゴリ</b></dt>
+<dd>インテントを処理するコンポーネントの種類に関する追加情報が含まれた文字列です。
+カテゴリの記述は、インテントにいくつでも含めることができますが、ほとんどのインテントではカテゴリは必須ではありません。一般的なカテゴリの例を次に示します。
+
+
+
+<dl>
+<dt>{@link android.content.Intent#CATEGORY_BROWSABLE}</dt>
+  <dd>ターゲットのアクティビティは、ウェブブラウザから開始して画像やメール メッセージなど、リンクで参照されたデータを表示できます。
+&mdash;
+  </dd>
+<dt>{@link android.content.Intent#CATEGORY_LAUNCHER}</dt>
+  <dd>このアクティビティはタスクの初期のアクティビティで、システムのアプリケーション ランチャーの一覧に表示されます。
+
+  </dd>
+</dl>
+
+<p>カテゴリの全一覧は、{@link android.content.Intent} クラスの説明をご覧ください。
+</p>
+
+<p>カテゴリは、{@link android.content.Intent#addCategory addCategory()} を使って指定できます。</p>
+</dd>
+</dl>
+
+
+<p>上記のプロパティ（コンポーネント名、アクション、データ、カテゴリ）は、インテントの特性の定義を表しています。
+これらのプロパティを読み取ることで、Android システムはどのアプリ コンポーネントを開始すべきかを解決できます。
+</p>
+
+<p>ただし、インテントにはアプリ コンポーネントの解決に影響を与えない追加情報を含めることもできます。
+インテントに含めることのできる情報は次のとおりです。</p>
+
+<dl>
+<dt><b>エクストラ</b></dt>
+<dd>要求されたアクションの実行に必要な追加情報のキーと値のペアです。データの URI の特定の種類を使用するアクションがあるのと同様に、特定のエクストラを使用するアクションもあります。
+
+
+<p>エクストラはさまざまな {@link android.content.Intent#putExtra putExtra()} を使って追加でき、それぞれがキー名と値の 2 つのパラメータを受け入れます。また、すべてのエクストラ データを使って {@link android.os.Bundle} オブジェクトを作成し、{@link
+android.content.Intent#putExtras putExtras()} を使って {@link android.os.Bundle} を {@link android.content.Intent} に挿入することもできます。
+
+
+</p>
+
+<p>たとえば、{@link android.content.Intent#ACTION_SEND} を使ってメールを送信するインテントを作成するとき、{@link android.content.Intent#EXTRA_EMAIL} キーを使って「宛先」の受信者を指定したり、{@link android.content.Intent#EXTRA_SUBJECT} を使って「件名」を指定したりできます。
+
+
+</p>
+
+<p>{@link android.content.Intent} クラスは多くの標準データタイプの {@code EXTRA_*} 定数を指定できます。
+独自のエクストラ キーを宣言する必要がある場合は（アプリが受け取るインテント用に）、アプリのパッケージ名を接頭辞として必ず含めます。
+
+次に例を示します。</p>
+<pre>static final String EXTRA_GIGAWATTS = "com.example.EXTRA_GIGAWATTS";</pre>
+</dd>
+
+<dt><b>フラグ</b></dt>
+<dd>{@link android.content.Intent} クラスで定義されるフラグは、インテントのメタデータとして機能します。
+フラグは、Android システムにアクティビティの起動方法（アクティビティがどの<a href="{@docRoot}guide/components/tasks-and-back-stack.html">タスク</a>に属するかなど）や、起動後の取り扱い方法（最近のアクティビティの一覧に含めるかどうかなど）を指示します。
+
+
+
+
+<p>詳細については、{@link android.content.Intent#setFlags setFlags()} メソッドをご覧ください。</p>
+</dd>
+
+</dl>
+
+
+
+
+<h3 id="ExampleExplicit">明示的インテントの例</h3>
+
+<p>明示的インテントは、アプリ内の特定のアクティビティやサービスなど、特定のアプリ コンポーネントを起動する際に使用するものです。明示的インテントを作成するには、{@link android.content.Intent} オブジェクトでコンポーネント名を定義します。他のインテント プロパティはすべて省略可能です。
+
+
+&mdash;</p>
+
+<p>たとえば、アプリでウェブからファイルをダウンロードするサービスを {@code DownloadService} という名前でビルドした場合、次のコードでそれを開始できます。
+</p>
+
+<pre>
+// Executed in an Activity, so 'this' is the {@link android.content.Context}
+// The fileUrl is a string URL, such as "http://www.example.com/image.png"
+Intent downloadIntent = new Intent(this, DownloadService.class);
+downloadIntent.setData({@link android.net.Uri#parse Uri.parse}(fileUrl));
+startService(downloadIntent);
+</pre>
+
+<p>{@link android.content.Intent#Intent(Context,Class)} コンストラクタがアプリに {@link android.content.Context} を、コンポーネントに {@link java.lang.Class} オブジェクトを提供します。
+
+このようにして、このインテントはアプリの {@code DownloadService} クラスを明示的に開始します。
+</p>
+
+<p>サービスのビルドと開始の詳細については、「<a href="{@docRoot}guide/components/services.html">サービス</a>」のガイドをご覧ください。
+</p>
+
+
+
+
+<h3 id="ExampleSend">暗黙的インテントの例</h3>
+
+<p>暗黙的インテントは、端末上のどんなアプリでも実行できるアクションを指定します。
+暗黙的インテントは、自身のアプリではそのアクションを実行できないが、他のアプリでは実行可能であり、どのアプリを使うかをユーザーに選ばせたい場合に便利です。
+</p>
+
+<p>たとえば、他のユーザーと共有できるようにするコンテンツがある場合は、{@link android.content.Intent#ACTION_SEND} アクションを使ってインテントを作成し、共有するコンテンツを指定するエクストラを追加します。
+
+そのインテントで {@link android.content.Context#startActivity startActivity()} を呼び出すと、ユーザーはどのアプリでコンテンツを共有するかを選択できます。
+
+</p>
+
+<p class="caution"><strong>警告:</strong> {@link android.content.Context#startActivity
+startActivity()} に送る暗黙的インテントを処理できるアプリがユーザーが<em>持っていない</em>場合もあります。
+その場合、呼び出しは失敗し、アプリはクラッシュします。アクティビティが必ずインテントを受け取るようにするには、{@link android.content.Intent} オブジェクトで {@link android.content.Intent#resolveActivity
+resolveActivity()} を呼び出します。
+結果が null 以外の場合は、インテントを処理できるアプリが少なくとも 1 つはあることを意味し、{@link android.content.Context#startActivity startActivity()} を安全に呼び出すことができます。
+
+結果が null の場合は、そのインテントは使用せず、可能であればそのインテントを発行する機能を無効にする必要があります。
+
+</p>
+
+
+<pre>
+// Create the text message with a string
+Intent sendIntent = new Intent();
+sendIntent.setAction(Intent.ACTION_SEND);
+sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
+sendIntent.setType("text/plain");
+
+// Verify that the intent will resolve to an activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(sendIntent);
+}
+</pre>
+
+<p class="note"><strong>注:</strong> この場合、URI は使用されませんが、エクストラに含まれるコンテンツを指定するためインテントのデータタイプは宣言されます。
+</p>
+
+
+<p>{@link android.content.Context#startActivity startActivity()} が呼び出されたとき、システムによってすべてのインストール済みアプリの中にこのタイプのインテント（{@link android.content.Intent#ACTION_SEND} アクションとテキスト/プレーン データが含まれるインテント）を処理できるものがあるかどうかが確認されます
+
+
+インテントを処理できるアプリが 1 つしかない場合は、そのアプリがすぐに開いてインテントを受け取ります。
+インテントを処理できるアクティビティが複数ある場合、ユーザーが使用するアプリを選択できるダイアログが表示されます。
+</p>
+
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/training/basics/intent-chooser.png" alt="">
+  <p class="img-caption"><strong>図 2.</strong> チューザのダイアログ</p>
+</div>
+
+<h3 id="ForceChooser">アプリチューザを表示する</h3>
+
+<p>暗黙的インテントに応答するアプリが 2 つ以上ある場合、ユーザーは使用するアプリを選択でき、そのアプリをアクションに対するデフォルトの選択肢にすることができます。
+
+これは、ウェブ ページを開いたり、（1 つのカメラを選ぶ傾向にあるユーザーが）
+写真を撮影したりといったアクションの実行時に、ユーザーが今後同じアプリの使用を希望するような場合に便利です（ユーザーは常に同じウェブブラウザを使用する傾向があります）。
+</p>
+
+<p>ただし、インテントに応答するアプリが複数あって、ユーザーが毎回別のアプリを使用する可能性がある場合は、チューザのダイアログを明示的に表示する必要があります。
+チューザのダイアログでは、
+アクションのたびに使用するアプリをユーザーに選択させます（ユーザーはアクションのデフォルトのアプリを選択できません）。
+たとえば、アプリが {@link
+android.content.Intent#ACTION_SEND} アクションを使って「共有」を実行するとき、 ユーザーが現在の状況によって別のアプリを使用して共有する場合もあるため、図 2 のようにチューザのダイアログは常に表示する必要があります。
+</p>
+
+
+
+
+<p>チューザを表示するには、{@link
+android.content.Intent#createChooser createChooser()} を使用して {@link android.content.Intent} を作成し、{@link
+android.app.Activity#startActivity startActivity()} に渡します。次に例を示します。</p>
+
+<pre>
+Intent sendIntent = new Intent(Intent.ACTION_SEND);
+...
+
+// Always use string resources for UI text.
+// This says something like "Share this photo with"
+String title = getResources().getString(R.string.chooser_title);
+// Create intent to show the chooser dialog
+Intent chooser = Intent.createChooser(sendIntent, title);
+
+// Verify the original intent will resolve to at least one activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(chooser);
+}
+</pre>
+
+<p>これにより、{@link
+android.content.Intent#createChooser createChooser()} メソッドに渡されたインテントに応答するアプリのリストを示すダイアログが表示され、
+指定されたテキストがダイアログのタイトルになります。</p>
+
+
+
+
+
+
+
+
+
+<h2 id="Receiving">暗黙的インテントを受け取る</h2>
+
+<p>アプリが受け取ることのできる暗黙的インテントを通知するには、<a href="{@docRoot}guide/topics/manifest/manifest-intro.html">マニフェスト ファイル</a>で <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a> 要素を使ってアプリのコンポーネントごとに 1 つ以上のインテント フィルタを宣言します。各インテント フィルタは、インテントのアクション、データ、カテゴリに基づいて受け入れるインテントのタイプを指定します。
+
+
+
+インテントがいずれかのインテント フィルタを通過した場合のみ、システムが暗黙的インテントをアプリのコンポーネントに配信します。
+</p>
+
+<p class="note"><strong>注:</strong> 明示的インテントは、コンポーネントが宣言しているインテント フィルタに関係なく、常にターゲットに配信されます。
+</p>
+
+<p>アプリのコンポーネントは固有のジョブそれぞれに対して個別のフィルタを宣言する必要があります。たとえば、画像キャラリーのアプリの 1 つのアクティビティには、画像を表示するフィルタと、画像を編集するフィルタの 2 つがあります。
+
+アクティビティが開始すると、{@link android.content.Intent} を調べて {@link android.content.Intent} にある情報に基づいてどのように動作するかを決定します（編集コントロールを表示するかどうかなど）。
+
+</p>
+
+<p>各インテント フィルタは、アプリのマニフェスト ファイルの <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a> 要素で定義され、これは対応するアプリのコンポーネント（<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 要素など）にネストされます。
+
+
+<a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a> 内で、次の 3 つの要素のなかで 1 つ以上を使用して、受け入れるインテントのタイプを指定できます。
+
+</p>
+
+<dl>
+<dt><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a></dt>
+  <dd>{@code name} 属性で、受け入れるインテントのアクションを宣言します。値は、クラス定数ではなく、アクションのリテラル文字列値である必要があります。
+</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a></dt>
+  <dd>データ URI （<code>scheme</code>、<code>host</code>、<code>port</code>、<code>path</code> など） や MIME タイプのさまざまな側面を指定する 1 つ以上の属性を使用して、受け入れるデータのタイプを宣言します。
+
+</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a></dt>
+  <dd>{@code name} 属性で、受け入れるインテントのカテゴリを宣言します。値は、クラス定数ではなく、アクションのリテラル文字列値である必要があります。
+
+
+  <p class="note"><strong>注:</strong> 暗黙的インテントを受け取るには、インテント フィルタに {@link android.content.Intent#CATEGORY_DEFAULT} カテゴリを<strong>含める</strong>必要があります。
+
+{@link android.app.Activity#startActivity startActivity()} メソッドと {@link android.app.Activity#startActivityForResult startActivityForResult()}メソッドはすべてのインテントを、{@link android.content.Intent#CATEGORY_DEFAULT} カテゴリを宣言しているものとして処理します。
+
+
+
+  インテント フィルタでカテゴリを宣言していない場合、暗黙的インテントはアクティビティに紐付けされません。
+</p>
+  </dd>
+</dl>
+
+<p>次に、データ タイプがテキストの場合に、{@link android.content.Intent#ACTION_SEND} インテントを受け取るインテント フィルタを使用したアクティビティ宣言の例を示します。
+</p>
+
+<pre>
+&lt;activity android:name="ShareActivity">
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a>、<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>、<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a> のなかで 2 つ以上のインスタンスを含むフィルタを作成することもできます。その場合、コンポーネントがそれらのフィルタ要素のすべての組み合わせを処理できることを確認しておきます。
+
+
+
+
+</p>
+
+<p>複数のタイプのインテントに対応しながら、アクション、データ、カテゴリタイプの特定の組み合わせのみを処理する場合は、複数のインテント フィルタを作成する必要があります。
+</p>
+
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>コンポーネントへのアクセスを制限する</h2>
+<p>インテント フィルタを使用して他のアプリでコンポーネントを開始できないようにする方法は安全ではありません。
+インテント フィルタでは暗黙的インテントの特定の種類にのみ応答するようコンポーネントを制限しますが、開発者がコンポーネントを決定する場合は、明示的インテントを使用して別のアプリからアプリのコンポーネントを開始できるようになります。アプリのコンポーネントを<em>自身のアプリでのみ</em>開始できるようにする必要がある場合は、そのコンポーネントの <a href="{@docRoot}guide/topics/manifest/activity-element.html#exported">{@code
+exported}</a> 属性を{@code "false"} に設定します。
+
+
+
+
+</p>
+</div>
+</div>
+
+<p>暗黙的インテントは、3 つの要素それぞれへのインテントを比較して、フィルタでテストされます。
+コンポーネントに配信されるには、インテントが 3 つのテストすべてを通過する必要があります。一致しないものが 1 つでも場合、Android システムはインテントをコンポーネントに配信しません。
+
+ただし、コンポーネントは複数のインテント フィルタを保持していることもあるため、1 つのインテント フィルタを通過できなかったインテントでも、別のフィルタを通過できる場合があります。システムによるインテント解決の詳細は、次のセクションの<a href="#Resolution">インテントの解決</a>で説明します。
+
+
+</p>
+
+<p class="caution"><strong>警告:</strong> 他のアプリの {@link android.app.Service} で誤って実行されないように、自身のサービスは常に明示的インテントを使用して開始し、サービスではインテント フィルタは宣言しないでください。
+
+</p>
+
+<p class="note"><strong>注:</strong> すべてのアクティビティにおいて、インテント フィルタはマニフェスト ファイルで宣言する必要があります。ただし、ブロードキャスト レシーバーのフィルタは、{@link android.content.Context#registerReceiver(BroadcastReceiver, IntentFilter, String,
+Handler) registerReceiver()} を呼び出すことで動的に登録できます。
+
+
+その後、レシーバーの登録を解除するには、{@link
+android.content.Context#unregisterReceiver unregisterReceiver()} を使用します。これにより、アプリが実行中の特定の期間だけ、アプリが特定のブロードキャストをリッスンできるようになります。
+
+</p>
+
+
+
+
+
+
+
+<h3 id="ExampleFilters">フィルタの例</h3>
+
+<p>インテント フィルタの動作をより深く理解するため、ソーシャル シェアリング アプリのマニフェスト ファイルからの次のスニペットをご覧ください。
+</p>
+
+<pre>
+&lt;activity android:name="MainActivity">
+    &lt;!-- This activity is the main entry, should appear in app launcher -->
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.MAIN" />
+        &lt;category android:name="android.intent.category.LAUNCHER" />
+    &lt;/intent-filter>
+&lt;/activity>
+
+&lt;activity android:name="ShareActivity">
+    &lt;!-- This activity handles "SEND" actions with text data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter&gt;
+    &lt;!-- This activity also handles "SEND" and "SEND_MULTIPLE" with media data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;action android:name="android.intent.action.SEND_MULTIPLE"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="application/vnd.google.panorama360+jpg"/>
+        &lt;data android:mimeType="image/*"/>
+        &lt;data android:mimeType="video/*"/>
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>1 つ目のアクティビティである {@code MainActivity} は、アプリのメイン エントリ ポイントで、ユーザーがランチャー アイコンから初めてアプリを起動したときに開くアクティビティです。&mdash;
+</p>
+<ul>
+  <li>{@link android.content.Intent#ACTION_MAIN} アクションが、これがメインのエントリ ポイントで、インテント データはないことを示しています。
+</li>
+  <li>{@link android.content.Intent#CATEGORY_LAUNCHER} カテゴリが、このアクティビティのアイコンをシステムのアプリ ランチャーに配置する必要があることを示しています。
+<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 要素が {@code icon} を使ってアイコンを指定しない場合、システムは <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a> 要素からのアイコンを使用します。
+
+</li>
+</ul>
+<p>アクティビティをアプリ ランチャーに表示するには、この 2 つをペアリングする必要があります。</p>
+
+<p>2 つ目のアクティビティである {@code ShareActivity} が、テキストやメディア コンテンツの共有を促します。
+ユーザーは {@code MainActivity} に移動することでこのアクティビティに入ることもありますが、2 つのインテント フィルタのいずれかに一致する暗黙的インテントを発行する別のアプリから直接 {@code ShareActivity} に入ることもできます。
+
+</p>
+
+<p class="note"><strong>注:</strong> MIME タイプ（<a href="https://developers.google.com/panorama/android/">{@code
+application/vnd.google.panorama360+jpg}</a>）は、パノラマ写真を指定する特別なデータタイプで、<a href="{@docRoot}reference/com/google/android/gms/panorama/package-summary.html">Google
+panorama</a> API を使って処理できます。
+
+</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+<h2 id="PendingIntent">ペンディング インテントを使用する</h2>
+
+<p>{@link android.app.PendingIntent} オブジェクトは、{@link
+android.content.Intent} オブジェクトのラッパーです。{@link android.app.PendingIntent} の主な目的は、別のアプリケーションに {@link android.content.Intent} をアプリ自身のプロセスから実行したように使用できるパーミッションを付与することです。
+
+
+</p>
+
+<p>ペンディング インテントの主な使用例には、次のようなものがあります。</p>
+<ul>
+  <li><a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">通知</a> を使ってユーザーがアクションを実行するときに実施するインテントを宣言する（Android システムの {@link android.app.NotificationManager} が {@link android.content.Intent} を実行します）。
+
+
+  <li>
+<a href="{@docRoot}guide/topics/appwidgets/index.html">アプリのウィジェット</a> を使ってユーザーがアクションを実行するときに実施するインテントを宣言する（ホーム画面のアプリが {@link android.content.Intent} を実行します）。
+
+  <li>今後の指定された時間に実施するインテントを宣言する（Android システムの {@link android.app.AlarmManager} が {@link android.content.Intent} を実行します）。
+
+</ul>
+
+<p>各 {@link android.content.Intent} オブジェクトはアプリの特定のタイプのコンポーネント（{@link android.app.Activity}、{@link android.app.Service}、{@link android.content.BroadcastReceiver} のいずれか）で処理されることを前提としているため、{@link android.app.PendingIntent} も同様の前提で作成する必要があります。
+
+
+ペンディング インテントを使用する場合、アプリはインテントの実行時に {@link android.content.Context#startActivity
+startActivity()} などの呼び出しを行いません。
+代わりに、{@link android.app.PendingIntent} の作成時にそれぞれのクリエーター メソッドを呼び出して目的のコンポーネント タイプを宣言する必要があります。
+</p>
+
+<ul>
+  <li>{@link android.app.Activity} を開始する {@link android.content.Intent} の場合は、{@link android.app.PendingIntent#getActivity PendingIntent.getActivity()}。
+</li>
+  <li>{@link android.app.Service} を開始する {@link android.content.Intent} の場合は、{@link android.app.PendingIntent#getService PendingIntent.getService()}。
+</li>
+  <li>{@link android.content.BroadcastReceiver} を開始する {@link android.content.Intent} の場合は、{@link android.app.PendingIntent#getBroadcast PendingIntent.getBroadcast()}。
+</li>
+</ul>
+
+<p>アプリが他のアプリからペンディング インテントを<em>受け取る</em>場合を除いて、{@link android.app.PendingIntent} の作成時に必要となる {@link android.app.PendingIntent} メソッドはほぼ上記の 3 つのみです。
+
+</p>
+
+<p>各メソッドが現在のアプリの {@link android.content.Context}、ラップする {@link android.content.Intent}、インテントの使用方法を指定する 1 つ以上のフラグ（インテントを 2 回以上できるかどうかなど）を受け取ります。
+
+</p>
+
+<p>ペンディング インテントの使用に関する詳細については、
+「<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">通知</a>」や「<a href="{@docRoot}guide/topics/appwidgets/index.html">App Widgets</a>」など、それぞれの使用例の API ガイドをご覧ください。
+</p>
+
+
+
+
+
+
+
+<h2 id="Resolution">インテント解決</h2>
+
+
+<p>システムがアクティビティを開始する暗黙的インテントを受け取ると、次の 3 つの側面に基づいてインテントをインテント フィルタと比較し、そのインテントに最適なアクティビティを検索します。
+</p>
+
+<ul>
+  <li>インテントのアクション
+  <li>インテントのデータ（URI とデータタイプの両方）
+  <li>インテントのカテゴリ
+</ul>
+
+<p>次のセクションでは、インテント フィルタがアプリのマニフェスト ファイルでどのように宣言されているかという観点から、インテントが適切なコンポーネントに紐付けられる方法について説明します。
+</p>
+
+
+<h3 id="ActionTest">アクションのテスト</h3>
+
+<p>受け入れるインテントのアクションを指定するには、インテント フィルタでゼロ個以上の <a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 要素を宣言します。
+次に例を示します。</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.VIEW" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>このフィルタを通過するには、{@link android.content.Intent} で指定されたアクションが、フィルタにリストされたアクションのいずれかに一致する必要があります。
+</p>
+
+<p>フィルタのリストにアクションが 1 つもない場合は、インテントに一致するものがないため、すべてのインテントがテストに失敗します。
+ただし、{@link android.content.Intent} がアクションを指定していない場合は、テストに合格します（フィルタに少なくとも 1 つのアクションが含まれている必要があります）。
+
+</p>
+
+
+
+<h3 id="CategoryTest">カテゴリのテスト</h3>
+
+<p>受け入れるインテントのカテゴリを指定するには、インテント フィルタでゼロ個以上の <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 要素を宣言します。
+次に例を示します。</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+    &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>インテントがカテゴリのテストに合格するには、{@link android.content.Intent} 内のすべてのカテゴリが、フィルタ内のカテゴリに一致する必要があります。
+インテント フィルタでは、{@link android.content.Intent} で指定されたカテゴリよりも多くのカテゴリが宣言されている場合もあるため、すべてが {@link android.content.Intent} に一致しなくてもテストには合格します。&mdash;
+
+そのため、カテゴリのないインテントは、フィルタで宣言されているカテゴリに関係なく、常にこのテストに合格することになります。
+</p>
+
+<p class="note"><strong>注:</strong> Androidは自動的に、{@link
+android.content.Context#startActivity startActivity()} と {@link
+android.app.Activity#startActivityForResult startActivityForResult()} に渡されるすべての暗黙的インテントに {@link android.content.Intent#CATEGORY_DEFAULT} カテゴリを自動的に適用します。そのため、アクティビティで暗黙的インテントを受け取りたい場合は、前出の {@code &lt;intent-filter&gt;} の例のように、アクティビティのインテント フィルタに {@code "android.intent.category.DEFAULT"} のカテゴリを含める必要があります。
+
+
+
+
+</p>
+
+
+
+<h3 id="DataTest">データのテスト</h3>
+
+<p>受け入れるインテント データを指定するには、インテント フィルタでゼロ個以上の <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a> 要素を宣言します。
+次に例を示します。</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="video/mpeg" android:scheme="http" ... /&gt;
+    &lt;data android:mimeType="audio/mpeg" android:scheme="http" ... /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>各 <code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code> 要素では、URI 構造とデータタイプ（MIME メディア タイプ）を指定できます。
+URI の各パートには、{@code scheme}、{@code host}、{@code port}、{@code path} の個別の属性があります。&mdash;
+&mdash;
+
+</p>
+
+<p style="margin-left: 2em">{@code &lt;scheme&gt;://&lt;host&gt;:&lt;port&gt;/&lt;path&gt;}</p>
+
+<p>
+次に例を示します。
+</p>
+
+<p style="margin-left: 2em">{@code content://com.example.project:200/folder/subfolder/etc}</p>
+
+<p>この URI では、スキームが {@code content}、ホストが {@code com.example.project}、ポートが {@code 200}、パスが {@code folder/subfolder/etc} です。
+
+</p>
+
+<p>これらの各属性は <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> 要素では省略可能ですが、一次従属があります。
+</p>
+<ul>
+  <li>スキームが指定されていない場合、ホストは無視されます。</li>
+  <li>ホストが指定されていない場合、ポートは無視されます。</li>
+  <li>スキームとホストの両方が指定されていない場合、パスは無視されます。</li>
+</ul>
+
+<p>インテントの URI をフィルタの URI 仕様に比較するときは、フィルタに含まれる URI の一部でのみ比較されます。
+次に例を示します。</p>
+<ul>
+  <li>フィルタでスキームのみが指定されている場合、そのスキームを持つすべての URI がフィルタに一致します。
+</li>
+  <li>フィルタでスキームと認証局が指定されていて、パスが指定されていない場合、パスにかかわらず同じスキームと認証局を持つすべての URI がフィルタを通過します。
+</li>
+  <li>フィルタでスキーム、認証局、パスが指定されている場合、同じスキーム、認証局、パスを持つ URI のみがフィルタを通過します。
+</li>
+</ul>
+
+<p class="note"><strong>注:</strong> パスの指定では、ワイルドカードのアスタリスク（*）を使ってパス名の部分一致のみを要求することもできます。
+</p>
+
+<p>データのテストでは、インテントの URI と MIME タイプの両方を、フィルタで指定された URI と MIME タイプと比較します。
+規則は次のとおりです。
+</p>
+
+<ol type="a">
+<li>URI も MIME タイプも含まないインテントは、フィルタで URI や MIME タイプが指定されていない場合のみテストをパスします。
+</li>
+
+<li>URI を含んでいて MIME タイプを含んでいないインテント（明示的にも含まれておらず、URI からも推測できない）場合は、URI がフィルタの URI 形式に一致し、フィルタが MIME タイプを指定していない場合のみテストをパスします。
+
+</li>
+
+<li>MIME タイプを含んでいて、URI を含んでいないインテントは、フィルタのリストに同じ MIME タイプがあり、URI 形式が指定されていない場合のみテストをパスします。
+</li>
+
+<li>URI と MINE タイプの両方を含む（明示的か、URI からの推測）インテントは、MIME タイプがフィルタのリストにあるタイプに一致した場合のみ、テストの MIME タイプのパートをパスします。
+
+テストの URI のパートは、URI がフィルタの URI に一致するか、{@code content:} URI か {@code file:} URI があって URI が指定されていない場合にパスできます。つまり、フィルタにリストに MIME タイプ<em>のみ</em>がある場合、コンポーネントは {@code content:} データと {@code file:} データをサポートすると推定されます。
+
+
+
+</p></li>
+</ol>
+
+<p>
+この最後の規則（d）は、コンポーネントがファイルやコンテンツ プロバイダからのローカル データを取得できるという予測を反映しています。そのため、フィルタにはデータタイプのみをリストして、{@code content:} スキームや {@code file:} スキームを明示的に指定する必要はありません。これは一般的なケースです。
+
+
+
+たとえば、次の <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> 要素は、コンポーネントがコンテンツ プロバイダからの画像データを取得し、それを表示できることを Android に伝えています。
+
+
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="image/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+<p>
+利用可能なデータはほとんどコンテンツプロバイダによって投入されることから、データタイプが指定されていて URI 指定されていないデータが最も一般的です
+
+</p>
+
+<p>
+もうひとつ一般的な設定として、スキームと データタイプを使ったフィルタがあります。たとえば、次の <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> 要素は、アクションを実行するためにコンポーネントがネットワークから動画データを取得できることを Android に伝えています。
+
+
+
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:scheme="http" android:type="video/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+
+
+<h3 id="imatch">インテントのマッチング</h3>
+
+<p>インテントをインテント フィルタにマッチングする目的には、アクティベートするターゲットを発見するということだけでなく、端末上のコンポーネントのセットに関連する何かを発見するという目的があります。
+
+たとえば、ホーム アプリは {@link android.content.Intent#ACTION_MAIN} アクションと {@link android.content.Intent#CATEGORY_LAUNCHER} カテゴリを指定するインテント フィルタを持つすべてのアクティビティを見つけることで、アプリ ランチャーを設定します。
+
+
+</p>
+
+<p>アプリケーションでも、同様の方法でインテントのマッチングを使用できます。{@link android.content.pm.PackageManager} には特定のインテントを受け入れることのできるすべてのコンポーネントを返す一連の {@code query...()} メソッドと、インテントに応答できる最適なコンポーネントを返す同様のシリーズの {@code resolve...()} メソッドがあります。
+
+
+
+たとえば、{@link android.content.pm.PackageManager#queryIntentActivities
+queryIntentActivities()} は引数として渡されたインテントを実行できるすべてのアクティビティの一覧を返し、{@link
+android.content.pm.PackageManager#queryIntentServices
+queryIntentServices()} は同様のサービスの一覧を返します。いずれのメソッドでもコンポーネントのアクティベートは行われず、応答できるものを列挙するだけです。
+
+
+
+ブロードキャスト レシーバー用にも、同様のメソッド {@link android.content.pm.PackageManager#queryBroadcastReceivers
+queryBroadcastReceivers()} があります。
+
+</p>
+
+
+
+
diff --git a/docs/html-intl/intl/ja/guide/components/loaders.jd b/docs/html-intl/intl/ja/guide/components/loaders.jd
new file mode 100644
index 0000000..bc93677
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/loaders.jd
@@ -0,0 +1,494 @@
+page.title=ローダ
+parent.title=アクティビティ
+parent.link=activities.html
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>本書の内容</h2>
+    <ol>
+    <li><a href="#summary">Loader API の概要</a></li>
+    <li><a href="#app">アプリケーションでローダを使用する</a>
+      <ol>
+        <li><a href="#requirements"></a></li>
+        <li><a href="#starting">ローダを開始する</a></li>
+        <li><a href="#restarting">ローダを再開する</a></li>
+        <li><a href="#callback">LoaderManager コールバックを使用する</a></li>
+      </ol>
+    </li>
+    <li><a href="#example">例</a>
+       <ol>
+         <li><a href="#more_examples">その他の例</a></li>
+        </ol>
+    </li>
+  </ol>
+    
+  <h2>キークラス</h2>
+    <ol>
+      <li>{@link android.app.LoaderManager}</li>
+      <li>{@link android.content.Loader}</li>
+
+    </ol>   
+    
+    <h2>関連サンプル</h2>
+   <ol>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a></li>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html">
+LoaderThrottle</a></li>
+   </ol>
+  </div>
+</div>
+
+<p>Android 3.0 で導入されたローダによって、アクティビティやフラグメントでのデータの非同期ロードが簡単になりました。
+ローダには、次の 3 つの特徴があります。</p>
+  <ul>
+    <li>すべての {@link android.app.Activity} と {@link
+android.app.Fragment} で使用できる。</li>
+    <li>非同期のデータロードを提供する。</li>
+    <li>データのソースを監視し、コンテンツが変更されたときに新しい結果を配信する。
+</li>
+    <li>設定の変更後に再作成されると、自動的に最後のローダのカーソルに再接続するため、
+再度データを問い合わせる必要がない。
+</li>
+  </ul>
+ 
+<h2 id="summary">Loader API の概要</h2>
+
+<p>アプリケーションでローダを使用するのに必要になりそうなクラスやインターフェースは複数あります。
+次の表で、それらの概要をまとめました。</p>
+
+<table>
+  <tr>
+    <th>クラス/インターフェース</th>
+    <th>説明</th>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager}</td>
+    <td>1 つ以上の {@link
+android.content.Loader} インスタンスを管理するための、{@link android.app.Activity} や {@link android.app.Fragment} に関連した抽象クラスです。
+これにより、アプリケーションは {@link android.app.Activity} や {@link android.app.Fragment} のライフサイクルと連動して長時間の操作を管理できるようになります。最も一般的なのは、{@link android.content.CursorLoader} で使用する方法ですが、アプリケーションでは他のタイプのデータのロード用に、独自のローダを自由に作成することもできます。
+
+
+
+
+    <br />
+    <br />
+    1 つのアクティビティやフラグメントごとに、{@link android.app.LoaderManager} は 1 つだけ存在しますが、{@link android.app.LoaderManager} は複数のローダを持つことができます。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager.LoaderCallbacks}</td>
+    <td>クライアントが {@link
+android.app.LoaderManager} とやり取りするためのコールバック インターフェースです。たとえば、{@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()} コールバック メソッドを使用してと新しいローダを作成します。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.Loader}</td>
+    <td>非同期のデータロードを実行する抽象クラスです。これは、ローダの基本クラスです。
+通常は {@link
+android.content.CursorLoader} を使用しますが、独自のサブクラスを実装することもできます。ローダがアクティブな間は、データのソースを管理し、コンテンツが変更されたときに新しい結果を配信します。
+
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.content.AsyncTaskLoader}</td>
+    <td>処理を行うための {@link android.os.AsyncTask} を提供する抽象的なローダです。</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.CursorLoader}</td>
+    <td>{@link android.content.ContentResolver} に問い合わせて {@link
+android.database.Cursor} を返す{@link android.content.AsyncTaskLoader} のサブクラスです。
+これは、カーソルのクエリ用に標準的な方法で {@link
+android.content.Loader} プロトコルを実装するクラスで、アプリケーションの UI をブロックせずにバックグラウンドでカーソルのクエリを実行するように、{@link android.content.AsyncTaskLoader} を基に構築されています。{@link
+android.content.ContentProvider} からデータを非同期的にロードする際は、フラグメントの API やアクティビティの API 経由でマネージド クエリを実行するのではなく、このローダを使用するのが最適です。
+
+
+
+</td>
+  </tr>
+</table>
+
+<p>上の表のクラスとインターフェースは、アプリケーションでローダを実装する際に使用する必須コンポーネントです。
+作成するローダごとにこれらすべてが必要になるわけではありませんが、{@link
+android.app.LoaderManager} への参照は、ローダを初期化したり {@link
+android.content.CursorLoader} などの {@link android.content.Loader} を実装したりするには {@link
+android.app.LoaderManager} への参照が常に必要になります。
+次のセクションでは、アプリケーションでのこれらのクラスとインターフェースの使用方法を説明します。
+</p>
+
+<h2 id ="app">アプリケーションでローダを使用する</h2>
+<p>このセクションでは、Android アプリケーションのローダの使用方法について説明します。通常、ローダを使用するアプリケーションには次の内容が含まれます。
+</p>
+<ul>
+  <li>{@link android.app.Activity} または {@link android.app.Fragment}。</li>
+  <li>{@link android.app.LoaderManager} のインスタンス。</li>
+  <li>{@link
+android.content.ContentProvider} でサポートされているデータをロードする {@link android.content.CursorLoader}。あるいは、{@link android.content.Loader} や{@link android.content.AsyncTaskLoader} の独自のサブクラスを実装して他のソースからデータをロードすることもできます。
+
+</li>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks} の実装。ここで、新しいローダを作成して既存のローダへの参照を管理します。
+
+</li> 
+<li>{@link
+android.widget.SimpleCursorAdapter} などのローダのデータを表示する方法。</li>
+  <li>{@link android.content.CursorLoader} を使用するときの、{@link android.content.ContentProvider} などのデータ ソース。
+</li>
+</ul>
+<h3 id="starting">ローダを開始する</h3>
+
+<p>{@link android.app.LoaderManager} は 1 つ以上の {@link
+android.content.Loader} インスタンスを {@link android.app.Activity} や {@link android.app.Fragment} 内で管理します。
+1 つのアクティビティやフラグメントごとに、{@link
+android.app.LoaderManager} は 1 つだけ存在します。</p> 
+
+<p>通常は、アクティビティの {@link
+android.app.Activity#onCreate onCreate()} メソッドか、フラグメントの {@link android.app.Fragment#onActivityCreated onActivityCreated()} メソッド内で {@link android.content.Loader} を初期化します。
+
+その方法は次のとおりです。
+</p>
+
+<pre>// Prepare the loader.  Either re-connect with an existing one,
+// or start a new one.
+getLoaderManager().initLoader(0, null, this);</pre>
+
+<p>{@link android.app.LoaderManager#initLoader initLoader()} メソッドが次のパラメータを受け取ります。
+</p>
+<ul>
+  <li>ローダを識別する一意の ID。この例では、ID は 0 です。</li>
+<li>ローダの構築時に提供する任意の引数（この例では <code>null</code>）。
+</li> 
+
+<li>{@link android.app.LoaderManager} がローダのイベントを報告する際に呼び出す {@link android.app.LoaderManager.LoaderCallbacks} の実装。
+この例では、ローカルクラスが {@link
+android.app.LoaderManager.LoaderCallbacks} インターフェースを実装するため、自身の {@code this} に参照を渡します。
+
+</li> 
+</ul>
+<p>{@link android.app.LoaderManager#initLoader initLoader()} の呼び出しによって、ローダが初期化され、アクティブになります。
+結果には次の 2 つの可能性があります。</p>
+<ul>
+  <li>ID で指定されたローダが既に存在する場合は、最後に作成されたローダが再利用されます。
+</li>
+  <li>ID で指定したローダが存在<em>しない</em>場合、{@link android.app.LoaderManager#initLoader initLoader()} が {@link android.app.LoaderManager.LoaderCallbacks} メソッドの {@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()} をトリガーします。ここで、インスタンスを作成して新しいローダを返すコードを実装します。詳細については、<a href="#onCreateLoader">onCreateLoader</a> のセクションをご覧ください。
+
+
+
+</li>
+</ul>
+<p>いずれの場合でも、その {@link android.app.LoaderManager.LoaderCallbacks} の実装はローダに関連付けられ、ローダの状態が変化したときに呼び出されます。
+
+この呼び出しの時点で、呼び出し側が開始された状態にあり、要求されたローダが既に存在し、データを生成済みの場合は、システムはただちに {@link
+android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()} を呼び出す（{@link android.app.LoaderManager#initLoader initLoader()} の間に）ため、それに備えておく必要があります。
+
+
+
+このコールバックの詳細については、<a href="#onLoadFinished">
+onLoadFinished</a> をご覧ください。</p>
+
+<p>{@link android.app.LoaderManager#initLoader initLoader()} メソッドは作成された {@link android.content.Loader} を返しますが、そこへの参照はキャプチャしないことに注意してください。
+
+{@link android.app.LoaderManager} は自動的にローダの生存状態を管理します。
+{@link android.app.LoaderManager} は必要に応じて開始と停止を行いし、ローダとそれに関連付けられたコンテンツの状態を管理します。
+
+このことからもわかるように、ローダと直接やり取りすることはほとんどありません（ローダの動作を微調整するローダ メソッドの使用例については、<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a> のサンプルをご覧ください）。
+
+特定のイベントが発生したときにローディングの処理に干渉することを目的に、{@link
+android.app.LoaderManager.LoaderCallbacks} を使用することがよくあります。
+
+このトピックの詳細については、<a href="#callback">LoadManager コールバックを使用する</a>をご覧ください。</p>
+
+<h3 id="restarting">ローダを再開する</h3>
+
+<p>上記のように {@link android.app.LoaderManager#initLoader initLoader()} を使用する場合、指定した ID があれば既存のローダを使用し、なければ新たに作成します。
+
+ただし、古いデータを破棄して最初からやり直したいこともあります。
+</p>
+
+<p>古いデータを破棄するには、{@link
+android.app.LoaderManager#restartLoader restartLoader()} を使用します。たとえば、この {@link android.widget.SearchView.OnQueryTextListener} を実装すると、ユーザーのクエリが変化したときにローダが再開されます。
+
+新しい検索フィルタを使用して新しいクエリを実行できるように、ローダは再開される必要があります。
+</p>
+
+<pre>
+public boolean onQueryTextChanged(String newText) {
+    // Called when the action bar search text has changed.  Update
+    // the search filter, and restart the loader to do a new query
+    // with this filter.
+    mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+    getLoaderManager().restartLoader(0, null, this);
+    return true;
+}</pre>
+
+<h3 id="callback">LoaderManager コールバックを使用する</h3>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} はクライアントが {@link android.app.LoaderManager} とやり取りできるようにするコールバック インターフェースです。
+ </p>
+<p>特に、{@link android.content.CursorLoader} のローダでは、停止後もデータを保持しておくことが望まれます。
+これにより、アプリケーションがアクティビティやフラグメントの {@link android.app.Activity#onStop
+onStop()} メソッドや {@link android.app.Activity#onStart onStart()} メソッド全体でデータを維持することができるので、ユーザーがアプリケーションに戻ったときにデータの再ロードを待つ必要がありません。
+
+
+新しいローダを作成するタイミングを知りたいときや、ローダのデータの使用を停止するタイミングをアプリケーションに伝えるときは、{@link android.app.LoaderManager.LoaderCallbacks} メソッドを使用します。
+
+</p>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} には次のメソッドが含まれています。
+</p>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()} — 指定された ID の新しい {@link android.content.Loader} をインスタンス化して返します。
+
+</li></ul>
+<ul>
+  <li> {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}— 前に作成されたローダがロードを完了した時に呼び出されます。
+
+</li></ul>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onLoaderReset onLoaderReset()} — 前に作成されたローダがリセットされ、データが利用不可になったときに呼び出されます。
+
+
+</li>
+</ul>
+<p>これらのメソッドについては、次のセクションで詳しく説明します。</p>
+
+<h4 id ="onCreateLoader">onCreateLoader</h4>
+
+<p>ローダにアクセスしようとしたとき（たとえば、{@link
+android.app.LoaderManager#initLoader initLoader()} 経由など）、ID で指定したローダが存在するかどうかを確認されます。
+存在しない場合は、{@link
+android.app.LoaderManager.LoaderCallbacks} メソッドの {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()} をトリガーします。ここで、新しいローダを作成します。
+通常は、{@link
+android.content.CursorLoader} になりますが、独自の {@link
+android.content.Loader} サブクラスを実装することもできます。 </p>
+
+<p>この例では、{@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+コールバック メソッドが {@link android.content.CursorLoader} を作成します。{@link android.content.CursorLoader}は、そのコンストラクタ メソッドを使用して構築する必要があり、{@link
+android.content.ContentProvider} へのクエリを実行するのに必要なすべての情報が必要になります。
+
+具体的に必要な情報は次のとおりです。</p>
+<ul>
+  <li><em>uri</em> — 取得するコンテンツの URI。 </li>
+  <li><em>projection</em> — 返す列のリスト。<code>null</code> を渡すとすべての列が返されるため、効率的ではありません。
+ </li>
+  <li><em>selection</em> — SQL WHERE 句の書式で返す行を宣言するフィルタ（WHERE 自体は除く）。
+<code>null</code> を渡すと指定した URI のすべての行が返されます。
+ </li>
+  <li><em>selectionArgs</em> — selection に ? を含めると、selection に表示される順序で <em>selectionArgs</em> の値に置き換えられます。
+
+この値は、Strings 配列でバインドされます。 </li>
+  <li><em>sortOrder</em> — SQL
+ORDER BY 句（ORDER 自体は除く）の形式で行を順序付けします。<code>null</code> を渡すとデフォルトのソート順序が使用されるため、順序が付けられない場合があります。
+</li>
+</ul>
+<p>次に例を示します。</p>
+<pre>
+ // If non-null, this is the current filter the user has provided.
+String mCurFilter;
+...
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+    // This is called when a new Loader needs to be created.  This
+    // sample only has one Loader, so we don't care about the ID.
+    // First, pick the base URI to use depending on whether we are
+    // currently filtering.
+    Uri baseUri;
+    if (mCurFilter != null) {
+        baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                  Uri.encode(mCurFilter));
+    } else {
+        baseUri = Contacts.CONTENT_URI;
+    }
+
+    // Now create and return a CursorLoader that will take care of
+    // creating a Cursor for the data being displayed.
+    String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+            + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+            + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+    return new CursorLoader(getActivity(), baseUri,
+            CONTACTS_SUMMARY_PROJECTION, select, null,
+            Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+}</pre>
+<h4 id="onLoadFinished">onLoadFinished</h4>
+
+<p>このメソッドは、前に作成したローダがロードを完了したときに呼び出されます。このメソッドは、このローダが提供した最後のデータが解放される前に呼び出されることが保証されています。
+
+この時点で、すべての古いデータを削除する必要がありますが（まもなく解放されるため）、データの所有者はローダでありローダが処理するため、自身でデータを解放しないようにしてください。
+
+</p>
+
+
+<p>アプリケーションがもうデータを使用していないことを検知すると、ローダがデータを解放します。
+たとえば、データが {@link
+android.content.CursorLoader} からのカーソルの場合は、自身で {@link
+android.database.Cursor#close close()} を呼び出さないようにしてください。カーソルが {@link android.widget.CursorAdapter} に置かれている場合は、古い {@link android.database.Cursor} がクローズされないように {@link
+android.widget.SimpleCursorAdapter#swapCursor swapCursor()} メソッドを使用する必要があります。
+
+次に例を示します。</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.<br
+/>SimpleCursorAdapter mAdapter;
+...
+
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+    // Swap the new cursor in.  (The framework will take care of closing the
+    // old cursor once we return.)
+    mAdapter.swapCursor(data);
+}</pre>
+
+<h4 id="onLoaderReset">onLoaderReset</h4>
+
+<p>このメソッドは、前に作成されたローダがリセットされ、データが利用できなくなったときに呼び出されます。
+このコールバックにより、データが解放されるタイミングがわかり、そのデータへの参照を削除できます。
+  </p>
+<p>この実装では、<code>null</code> の値を使用して {@link android.widget.SimpleCursorAdapter#swapCursor swapCursor()} を呼び出します。
+
+</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.
+SimpleCursorAdapter mAdapter;
+...
+
+public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+    // This is called when the last Cursor provided to onLoadFinished()
+    // above is about to be closed.  We need to make sure we are no
+    // longer using it.
+    mAdapter.swapCursor(null);
+}</pre>
+
+
+<h2 id="example">例</h2>
+
+<p>以下は、連絡先のコンテンツ プロバイダに対するクエリの結果が含まれた {@link android.widget.ListView} を表示する {@link
+android.app.Fragment} の完全な実装の例です。
+{@link
+android.content.CursorLoader} を使用してプロバイダへのクエリを管理しています。</p>
+ 
+<p>この例にあるように、アプリケーションがユーザーの連絡先にアクセスするには、マニフェストに {@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS} の許可を含める必要があります。
+
+</p>
+
+<pre>
+public static class CursorLoaderListFragment extends ListFragment
+        implements OnQueryTextListener, LoaderManager.LoaderCallbacks&lt;Cursor&gt; {
+
+    // This is the Adapter being used to display the list's data.
+    SimpleCursorAdapter mAdapter;
+
+    // If non-null, this is the current filter the user has provided.
+    String mCurFilter;
+
+    @Override public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+
+        // Give some text to display if there is no data.  In a real
+        // application this would come from a resource.
+        setEmptyText(&quot;No phone numbers&quot;);
+
+        // We have a menu item to show in action bar.
+        setHasOptionsMenu(true);
+
+        // Create an empty adapter we will use to display the loaded data.
+        mAdapter = new SimpleCursorAdapter(getActivity(),
+                android.R.layout.simple_list_item_2, null,
+                new String[] { Contacts.DISPLAY_NAME, Contacts.CONTACT_STATUS },
+                new int[] { android.R.id.text1, android.R.id.text2 }, 0);
+        setListAdapter(mAdapter);
+
+        // Prepare the loader.  Either re-connect with an existing one,
+        // or start a new one.
+        getLoaderManager().initLoader(0, null, this);
+    }
+
+    @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+        // Place an action bar item for searching.
+        MenuItem item = menu.add(&quot;Search&quot;);
+        item.setIcon(android.R.drawable.ic_menu_search);
+        item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+        SearchView sv = new SearchView(getActivity());
+        sv.setOnQueryTextListener(this);
+        item.setActionView(sv);
+    }
+
+    public boolean onQueryTextChange(String newText) {
+        // Called when the action bar search text has changed.  Update
+        // the search filter, and restart the loader to do a new query
+        // with this filter.
+        mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+        getLoaderManager().restartLoader(0, null, this);
+        return true;
+    }
+
+    @Override public boolean onQueryTextSubmit(String query) {
+        // Don't care about this.
+        return true;
+    }
+
+    @Override public void onListItemClick(ListView l, View v, int position, long id) {
+        // Insert desired behavior here.
+        Log.i(&quot;FragmentComplexList&quot;, &quot;Item clicked: &quot; + id);
+    }
+
+    // These are the Contacts rows that we will retrieve.
+    static final String[] CONTACTS_SUMMARY_PROJECTION = new String[] {
+        Contacts._ID,
+        Contacts.DISPLAY_NAME,
+        Contacts.CONTACT_STATUS,
+        Contacts.CONTACT_PRESENCE,
+        Contacts.PHOTO_ID,
+        Contacts.LOOKUP_KEY,
+    };
+    public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+        // This is called when a new Loader needs to be created.  This
+        // sample only has one Loader, so we don't care about the ID.
+        // First, pick the base URI to use depending on whether we are
+        // currently filtering.
+        Uri baseUri;
+        if (mCurFilter != null) {
+            baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                    Uri.encode(mCurFilter));
+        } else {
+            baseUri = Contacts.CONTENT_URI;
+        }
+
+        // Now create and return a CursorLoader that will take care of
+        // creating a Cursor for the data being displayed.
+        String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+                + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+                + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+        return new CursorLoader(getActivity(), baseUri,
+                CONTACTS_SUMMARY_PROJECTION, select, null,
+                Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+    }
+
+    public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+        // Swap the new cursor in.  (The framework will take care of closing the
+        // old cursor once we return.)
+        mAdapter.swapCursor(data);
+    }
+
+    public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+        // This is called when the last Cursor provided to onLoadFinished()
+        // above is about to be closed.  We need to make sure we are no
+        // longer using it.
+        mAdapter.swapCursor(null);
+    }
+}</pre>
+<h3 id="more_examples">その他の例</h3>
+
+<p><strong>ApiDemos</strong> には、ローダの使用方法を示す他のサンプルがいくつか用意されています。
+</p>
+<ul>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a> — 上記のスニペットの完全バージョン。
+</li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a> — スロットリングを使用して、データの変更時にコンテンツ プロバイダのクエリ数を軽減する方法の例です。
+</li>
+</ul>
+
+<p>SDK サンプルのダウンロードとインストールの詳細については、<a href="http://developer.android.com/resources/samples/get.html">Getting the Samples</a> をご覧ください。
+ </p>
+
diff --git a/docs/html-intl/intl/ja/guide/components/processes-and-threads.jd b/docs/html-intl/intl/ja/guide/components/processes-and-threads.jd
new file mode 100644
index 0000000..691a5f4
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/processes-and-threads.jd
@@ -0,0 +1,411 @@
+page.title=プロセスとスレッド
+page.tags=lifecycle,background
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本書の内容</h2>
+<ol>
+<li><a href="#Processes">プロセス</a>
+  <ol>
+    <li><a href="#Lifecycle">プロセスのライフサイクル</a></li>
+  </ol>
+</li>
+<li><a href="#Threads">スレッド</a>
+  <ol>
+    <li><a href="#WorkerThreads">ワーカー スレッド</a></li>
+    <li><a href="#ThreadSafe">スレッド セーフのメソッド</a></li>
+  </ol>
+</li>
+<li><a href="#IPC">プロセス間通信（IPC）</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>アプリケーション コンポーネントが開始し、アプリケーションに他に実行中のコンポーネントがない場合、Android システムは実行用のシングル スレッドを持つアプリケーション用の新しい Linux プロセスを開始します。
+
+デフォルトでは、同じアプリケーションのすべてのコンポーネントは同じプロセスとスレッド（「メイン」 スレッドと呼ばれます）で実行します。
+アプリケーション コンポーネントが開始したときに、既にそのアプリケーションのプロセスが存在する場合（アプリケーションからの他のコンポーネントが存在するため）、コンポーネントはそのプロセス内で開始し、同じ実行用のスレッドを使用します。
+
+ただし、アプリケーション内の別のコンポーネントを別のプロセスで実行するよう調整でき、あらゆるプロセスに対して追加のスレッドを作成できます。
+
+</p>
+
+<p>このドキュメントでは、Android アプリケーションでプロセスとスレッドがどのように動作するかについて説明します。</p>
+
+
+<h2 id="Processes">プロセス</h2>
+
+<p>デフォルトでは、同じアプリケーションのすべてのコンポーネントは同じプロセスで実行し、ほとんどのアプリケーションでこの動作を変更する必要はありません。
+ただし、特定のコンポーネントが属するプロセスを管理する必要がある場合は、マニフェスト ファイルでそれを行うことができます。
+</p>
+
+<p>コンポーネント要素の各タイプのマニフェスト エントリ（<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>、<a href="{@docRoot}guide/topics/manifest/service-element.html">{@code
+&lt;service&gt;}</a>、<a href="{@docRoot}guide/topics/manifest/receiver-element.html">{@code
+&lt;receiver&gt;}</a>、<a href="{@docRoot}guide/topics/manifest/provider-element.html">{@code
+&lt;provider&gt;}</a>）は、コンポーネントを実行するプロセスを指定できる {@code android:process} 属性をサポートしています。&mdash;
+&mdash;この属性を設定して、各コンポーネントが独自のプロセスで実行するようにしたり、一部のコンポーネントで同じプロセスを共有し、残りのコンポーネントでは別のプロセスを使用するようにしたりできます。
+また、{@code android:process} を設定すると、異なるアプリケーションのコンポーネントを同じプロセスで実行させることもできます。この場合、アプリケーションが同じ Linux ユーザー ID を共有していて、同じ証明書で署名されている必要があります。
+&mdash;
+
+</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/application-element.html">{@code
+&lt;application&gt;}</a> 要素も {@code android:process} 属性をサポートしており、すべてのコンポーネントに適用されるデフォルトの値を設定します。
+</p>
+
+<p>メモリの空きが少なくなり、早急にユーザーに提供する必要のあるプロセスが必要とする場合は、Android がプロセスをどこかの時点でシャットダウンするよう決定する場合があります。
+破棄されたプロセスで実行しているアプリケーション コンポーネントは、結果的に破棄されます。
+プロセスは、それらのコンポーネントの処理が再度発生したときに再開されます。
+</p>
+
+<p>破棄するプロセスを決定する際、Android システムはユーザーへの相対的な重要度を測ります。
+たとえば、画面に見えているアクティビティをホストするプロセスよりも、もう画面に見えていないアクティビティをホストするプロセスの方が先にシャットダウンされることになります。
+そのため、プロセスを停止するかどうかは、そのプロセスで実行しているコンポーネントの状態によって決まります。
+ここから、停止するプロセスを決定する規則について詳しく説明していきます。
+ </p>
+
+
+<h3 id="Lifecycle">プロセスのライフサイクル</h3>
+
+<p>Android システムは、可能な限り長期間アプリケーション プロセスを維持しようとしますが、新たに重要なプロセスが発生した際には、メモリを回収するために古いプロセスをいずれは削除する必要が生じます。
+どのプロセスを維持して、どのプロセスを強制終了するかを決定するため、システムはプロセスで実行しているコンポーネントとコンポーネントの状態に基づいて、各プロセスを「重要度の階層」に位置付けします。
+
+
+まず、重要度の最も低いプロセスが除去され、その後システム リソースを回復できるまで重要度の低い順に除去していきます。
+
+</p>
+
+<p>重要度の階層には 5 つのレベルがあります。次の一覧では、さまざまなプロセスのタイプを重要度の高い順に表しています（1 つ目のプロセスが<em>最も重要度が高く</em>、<em>最後に強制終了</em>されます）。
+
+</p>
+
+<ol>
+  <li><b>フォアグラウンド プロセス</b>
+    <p>ユーザーが現在行っている操作に必要なプロセスです。次の条件のいずれかにあてはまる場合、そのプロセスはフォアグラウンドにあるとみなされます。
+</p>
+
+      <ul>
+        <li>ユーザーが操作している {@link android.app.Activity} のホストになっている（{@link
+android.app.Activity} の{@link android.app.Activity#onResume onResume()} メソッドが呼び出された）。
+</li>
+
+        <li>ユーザーが操作しているアクティビティにバインドされている {@link android.app.Service} のホストになっている。
+</li>
+
+        <li>「フォアグラウンド」 で実行中の {@link android.app.Service} のホストになっている（サービスが {@link android.app.Service#startForeground startForeground()} を呼び出した）。&mdash;
+
+
+        <li>{@link android.app.Service#onCreate onCreate()}、{@link android.app.Service#onStart
+onStart()}、{@link android.app.Service#onDestroy onDestroy()} のいずれかのライフサイクル コールバックを実行している {@link android.app.Service} のホストになっている。
+</li>
+
+        <li>{@link
+        android.content.BroadcastReceiver#onReceive onReceive()} メソッドを実行している {@link android.content.BroadcastReceiver} のホストになっている。</li>
+    </ul>
+
+    <p>通常は、2~3 個のフォアグラウンド プロセスが存在します。フォアグラウンド プロセスは、それらすべてを実行できなくなるほどメモリが少なくなると、最終手段として強制終了されます。
+&mdash;通常はその時点で、端末がメモリのページング状態に達しているため、ユーザー インターフェースのレスポンシブを維持するには一部のフォアグラウンド プロセスを強制終了する必要があります。
+
+</p></li>
+
+  <li><b>可視プロセス</b>
+    <p>フォアグラウンド コンポーネントはないものの、ユーザーに対して画面上に表示される内容に影響を与える可能性のあるプロセスです。
+次の条件のいずれかにあてはまる場合、そのプロセスは可視プロセスであるとみなされます。
+</p>
+
+      <ul>
+        <li>フォアグラウンドにないが、ユーザーに表示されている {@link android.app.Activity} のホストになっている（{@link android.app.Activity#onPause onPause()} メソッドが呼び出された）。
+たとえば、フォアグラウンドのアクティビティがダイアログを開始したときに、前のアクティビティがその背後に見えている場合などがあります。
+
+</li>
+
+        <li>可視（またはフォアグラウンドの）アクティビティにバインドされている {@link android.app.Service} のホストになっている。
+</li>
+      </ul>
+
+      <p>可視プロセスは非常に重要度が高いため、フォアグラウンド プロセスの実行を維持するのに必要な場合のみ、強制終了されます。
+ </p>
+    </li>
+
+  <li><b>サービス プロセス</b>
+    <p>{@link
+android.content.Context#startService startService()} メソッドで開始されたサービスを実行するプロセスで、上の 2 つのカテゴリに分類されないものです。
+サービス プロセスは、ユーザーに表示される内容には直接関係ありませんが、ユーザーにとって必要な操作を実行している場合が多いため（バックグラウンドで音楽を再生したり、ネットワーク経由でデータをダウンロードしたりなど）、フォアグラウンド プロセスと可視プロセスのすべてと合わせて、それらを継続するのにメモリが不足した場合のみ強制終了されます。
+
+
+ </p>
+  </li>
+
+  <li><b>バックグラウンド プロセス</b>
+    <p>現在ユーザーに表示されていないアクティビティを有するプロセスです（アクティビティの {@link android.app.Activity#onStop onStop()} メソッドが呼び出された）。
+ユーザーの操作性に直接影響を与えるものではなく、フォアグラウンド プロセス、可視プロセス、サービス プロセス用にメモリを回収する必要があればいつでも強制終了されます。
+
+
+通常はバックグラウンドで実行するプロセスは多数あるため、最近ユーザーに表示されたアクティビティのあるプロセスを最後に強制終了するよう、LRU（最小使用頻度）リストに入れられます。
+
+アクティビティがライフサイクル メソッドを正確に実装し、現在の状態を保存する場合は、そのプロセスを強制終了しても、ユーザーがそのアクティビティに戻ったときに、アクティビティがすべての視覚的状態を復元するため、ユーザーの操作性に視覚的な影響はありません
+
+
+。状態の保存と復元の詳細については、「<a href="{@docRoot}guide/components/activities.html#SavingActivityState">Activities</a>」のドキュメントをご覧ください。
+</p>
+  </li>
+
+  <li><b>空のプロセス</b>
+    <p>アクティブなアプリケーション コンポーネントが 1 つも含まれていないプロセスです。このようなプロセスは、プロセスをキャッシュしておくことのみを目的として保持され、次回コンポーネントを実行する際の起動時間を向上させることができます。
+
+システムは、プロセスのキャッシュと下層のカーネル キャッシュとの間の全体的なシステム リソースのバランスを整える目的でこれらのシステムを頻繁に強制終了します。
+</p>
+  </li>
+</ol>
+
+
+  <p>Android では、プロセスで現在アクティブなコンポーネントの重要度に基づいて、あてはまるランクのなかで最も高いランクにプロセスを位置付けます。
+たとえば、サービス アクティビティと可視アクティビティの両方のホストとなっているプロセスは、サービス プロセスではなく、可視プロセスとして位置付けられます。
+</p>
+
+  <p>さらに、他のプロセスから依存されているプロセスの位置付けが上がる場合があります。他のプロセスのために動作しているプロセスは、その対象プロセスよりも下に位置付けられることはありません。
+&mdash;
+たとえば、プロセス A のコンテンツ プロバイダが、プロセス B のクライアントのために動作している場合や、プロセス A のサービスがプロセス B のコンポーネントにバインドされている場合、プロセス A の重要度は常にプロセス B 以上であるとみなされます。
+
+</p>
+
+  <p>サービスを実行するプロセスは、バックグラウンドのアクティビティを持つプロセスよりも上に位置付けされるため、長時間の操作を開始するアクティビティでは、特に、操作がアクティビティよりも長く続く場合、ワーカー スレッドを作成するよりもその操作の<a href="{@docRoot}guide/components/services.html">サービス</a>を開始する方がよいと考えられます。たとえば、ウェブサイトに写真をアップロードするアクティビティでは、ユーザーがアクティビティから離れた後もアップロードをバックグラウンドで続行できるよう、アップロードを実行するサービスを開始することをお勧めします。サービスを使用することで、アクティビティの状況に変わらず、その操作に「サービス プロセス」以上の優先度が保証されることになります。
+
+
+
+
+
+同じ理由から、ブロードキャスト レシーバーでもスレッドに長時間の処理を置くのではなく、サービスを採用するようお勧めします。
+</p>
+
+
+
+
+<h2 id="Threads">スレッド</h2>
+
+<p>アプリケーション起動の際、システムは アプリケーション実行用のスレッドを作成します。これは、「メイン スレッド」と呼ばれます。
+このスレッドは、イベント（描画イベントを含む）を適切なユーザー インターフェース ウィジェットに送信する役割を担うため非常に重要です。
+また、これはアプリケーションが Android UI ツールキット（{@link
+android.widget} と {@link android.view} パッケージからのコンポーネント）からのコンポーネントとやり取りをするスレッドでもあります。
+そのため、メイン スレッドは UI スレッドと呼ばれることもあります。
+</p>
+
+<p>コンポーネントのインスタンスごとに別のスレッドが作成されることは<em>ありません</em>。同じプロセスで実行するすべてのコンポーネントは UI スレッドでインスタンス化され、スレッドから送られた各コンポーネントをシステムが呼び出します。
+
+結果的に、システムのコールバック（ユーザー操作を報告する {@link android.view.View#onKeyDown onKeyDown()} やライフサイクル コールバック メソッドなど）に応答するメソッドは常にプロセスの UI スレッドで実行することになります。
+
+</p>
+
+<p>たとえば、ユーザーが画面上のボタンをタッチすると、アプリの UI スレッドがタッチ イベントをウィジェットに送信し、ウィジェットがそのタッチされた状態を設定してイベント キューに無効化の要求を投稿します。
+
+UI スレッドが要求をキューから取り出し、ウィジェットに自身を描画するよう通知します。
+</p>
+
+<p>アプリがユーザー操作に応答して集中的な動作を実行する場合、アプリケーションを正しく実装していない限りこのシングル スレッド モデルではパフォーマンスの低下につながる可能性があります。
+具体的には、すべてが UI スレッドで行われている場合、長ネットワークへのアクセスやデータベースへの問い合わせといった時間のかかる操作を実行すると UI 全体をブロックしてしまいます。スレッドがブロックされると、描画イベントを含むすべてのイベントを送信できなくなります。
+
+
+ユーザー側には、アプリケーションがハングしたように見えます。
+さらには、UI スレッドが数秒以上（現時点では 5 秒以上）ブロックされると、ユーザーに<a href="http://developer.android.com/guide/practices/responsiveness.html">「アプリケーションが応答していません」</a>のダイアログが表示されます。
+
+ユーザーはアプリケーションを停止するか、不快な場合はアンインストールしてしまう可能性があります。
+</p>
+
+<p>また、Android UI ツールキットはスレッド セーフ<em>ではありません</em>。そのため、ワーカー スレッドから UI を操作できません。すべての操作は、UI スレッドから行う必要があります。
+&mdash;
+そのため、Android のシングル スレッド モデルには 2 つの明快なルールがあります。</p>
+
+<ol>
+<li>UI スレッドをブロックしない
+<li>UI スレッド以外から Android UI ツールキットにアクセスしない
+</ol>
+
+<h3 id="WorkerThreads">ワーカー スレッド</h3>
+
+<p>上記で説明したシングル スレッド モデルにより、アプリケーションの UI の応答性のためにも UI スレッドをブロックしないことが不可欠です。
+即座に実行する必要のない操作の場合は、別のスレッド（「バックグラウンド」スレッドや「ワーカー」スレッド）で実行するようにする必要があります。
+
+</p>
+
+<p>例として、別のスレッドから画像をダウンロードして {@link android.widget.ImageView} に表示するクリック リスナのコードの一部を次に示します。
+</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            Bitmap b = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.setImageBitmap(b);
+        }
+    }).start();
+}
+</pre>
+
+<p>ここでは、ネットワークの操作を処理する新しいスレッドを作成しているため、一見問題ないように見えます。
+ただし、これは<em>UI スレッド以外から Android UI ツールキットにアクセスしない</em>というシングルスレッド モデルの 2 つ目のルールに違反しています。このサンプルは、UI スレッドではなくワーカー スレッドから {@link
+android.widget.ImageView} を変更しています。&mdash;
+結果として、未定義かつ予想外の動作を引き起こし、追跡が難しく時間のかかる作業になってしまいます。
+</p>
+
+<p>この問題を修正するため、Android には UI スレッド以外からのアクセス方法がいくつか用意されています。
+使用できるメソッドは次のとおりです。</p>
+
+<ul>
+<li>{@link android.app.Activity#runOnUiThread(java.lang.Runnable)
+Activity.runOnUiThread(Runnable)}</li>
+<li>{@link android.view.View#post(java.lang.Runnable) View.post(Runnable)}</li>
+<li>{@link android.view.View#postDelayed(java.lang.Runnable, long) View.postDelayed(Runnable,
+long)}</li>
+</ul>
+
+<p>たとえば、上記のコードは {@link
+android.view.View#post(java.lang.Runnable) View.post(Runnable)} メソッドを使用して修正できます。</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            final Bitmap bitmap = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.post(new Runnable() {
+                public void run() {
+                    mImageView.setImageBitmap(bitmap);
+                }
+            });
+        }
+    }).start();
+}
+</pre>
+
+<p>これで、この実装がスレッドセーフになりました。ネットワーク操作は別のスレッドから実行され、{@link android.widget.ImageView} は UI スレッドから操作されます。
+</p>
+
+<p>ただし、操作が複雑になるにつれて、この種のコードも複雑化してメンテナンスも難しくなります。
+ワーカー スレッドとのより複雑なやり取りを処理するため、ワーカー スレッドで {@link android.os.Handler} を使うと、UI スレッドから配信されたメッセージを処理できます。
+
+ただし、最善なのは{@link android.os.AsyncTask} クラスを拡張することであり、これにより UI を操作する必要のあるワーカー スレッドのタスクの実行を簡素化できます。
+</p>
+
+
+<h4 id="AsyncTask">AsyncTask を使用する</h4>
+
+<p>{@link android.os.AsyncTask} では、ユーザー インターフェースに非同期の処理を実行できます。
+スレッドやハンドラを自身で処理する必要なく、ワーカー スレッドの操作をブロックし、結果を UI スレッドに発行します。
+</p>
+
+<p>これを使用するには、{@link android.os.AsyncTask} をサブクラス化し、バックグラウンド スレッドのプール内で実行する {@link
+android.os.AsyncTask#doInBackground doInBackground()} コールバック メソッドを実装する必要があります。
+UI を更新するには、{@link
+android.os.AsyncTask#onPostExecute onPostExecute()} を実装します。これは {@link
+android.os.AsyncTask#doInBackground doInBackground()} からの結果を配信し、UI スレッド内で実行されるため、UI を安全に更新できます。その後、UI スレッドから {@link android.os.AsyncTask#execute execute()} を呼び出してタスクを実行できます。
+
+</p>
+
+<p>たとえば、次のように {@link android.os.AsyncTask} を使って前出の例を実装できます。
+</p>
+
+<pre>
+public void onClick(View v) {
+    new DownloadImageTask().execute("http://example.com/image.png");
+}
+
+private class DownloadImageTask extends AsyncTask&lt;String, Void, Bitmap&gt; {
+    /** The system calls this to perform work in a worker thread and
+      * delivers it the parameters given to AsyncTask.execute() */
+    protected Bitmap doInBackground(String... urls) {
+        return loadImageFromNetwork(urls[0]);
+    }
+    
+    /** The system calls this to perform work in the UI thread and delivers
+      * the result from doInBackground() */
+    protected void onPostExecute(Bitmap result) {
+        mImageView.setImageBitmap(result);
+    }
+}
+</pre>
+
+<p>ワーカー スレッドで処理される作業と、UI スレッドで処理される作業が分けられたため、UI は安全に、コードはシンプルになりました。
+</p>
+
+<p>このクラスの使用方法をより深く理解するには {@link android.os.AsyncTask} に目を通す必要がありますが、ここに、その仕組みについて簡単に挙げておきます。
+</p>
+
+<ul>
+<li>ジェネリックを使ってパラメータのタイプ、進捗の値、タスクの最終値を指定できます
+</li>
+<li>{@link android.os.AsyncTask#doInBackground doInBackground()} メソッドがワーカー スレッド上で自動的に実行されます
+</li>
+<li>{@link android.os.AsyncTask#onPreExecute onPreExecute()}、{@link
+android.os.AsyncTask#onPostExecute onPostExecute()}、{@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()}はすべて UI スレッドで呼び出されます</li>
+<li>{@link android.os.AsyncTask#doInBackground doInBackground()} から返される値は、{@link android.os.AsyncTask#onPostExecute onPostExecute()} に送られます
+</li>
+<li>{@link android.os.AsyncTask#publishProgress publishProgress()} は、{@link
+android.os.AsyncTask#doInBackground doInBackground()} でいつでも呼び出すことができます。UI スレッドで {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} を実行できます</li>
+<li>いつでも、どのスレッドからでもタスクをキャンセルできます</li>
+</ul>
+
+<p class="caution"><strong>警告:</strong> ワーカー スレッドの使用時に発生する可能性のあるもう 1 つの問題として、<a href="{@docRoot}guide/topics/resources/runtime-changes.html">実行時の設定が変更</a>された（ユーザーが画面の向きを変えた場合など）ことによってアクティビティが予期せず再起動され、ワーカー スレッドが破棄されてしまうことがあります。
+
+このような再起動の間タスクを維持する方法、アクティビティが破棄されたときの正しいタスクのキャンセル方法については、<a href="http://code.google.com/p/shelves/">Shelves</a> のサンプル アプリケーションのソース コードをご覧ください。
+
+</p>
+
+
+<h3 id="ThreadSafe">スレッド セーフのメソッド</h3>
+
+<p> 状況によっては、実装したメソッドが複数のスレッドから呼び出されることがあり、その場合はメソッドがスレッドセーフになるよう作成する必要があります。
+ </p>
+
+<p>主に、<a href="{@docRoot}guide/components/bound-services.html">バインドされたサービス</a>のメソッドなど、リモートで呼び出されるメソッドなどがこれに該当します。&mdash;{@link android.os.IBinder} に実装されたメソッドへの呼び出しが、{@link android.os.IBinder IBinder} を実行しているプロセスと同じプロセスで発生した場合、メソッドは呼び出し側のスレッドで実行されます。ただし、呼び出しが別のプロセスで起こった場合は、メソッドはシステムが {@link android.os.IBinder
+IBinder} と同じプロセスに保持するスレッドのプールから選ばれたスレッドで実行されます（プロセスの UI スレッドでは実行されません）。
+
+
+
+たとえば、サービスの {@link android.app.Service#onBind onBind()} メソッドがサービスのプロセスの UI スレッドから呼び出されるのに対して、{@link android.app.Service#onBind
+onBind()} が返すオブジェクトで実装されたメソッド（RPC メソッドを実装するサブクラスなど）は、プール内のスレッドから呼び出されます。
+
+
+サービスは複数のクライアントを持てるため、複数のプール スレッドが同じ {@link android.os.IBinder IBinder} メソッドを同時に動かすことができます。このため、{@link android.os.IBinder
+IBinder} メソッドはスレッドセーフになるよう実装する必要があります。
+</p>
+
+<p> 同様に、コンテンツ プロバイダは他のプロセスから送られたデータ要求を受け取ることができます。{@link android.content.ContentResolver} クラスと {@link android.content.ContentProvider} クラスによってプロセス間通信がどのように管理されているかが見えなくなりますが、それらの要求に応答する {@link
+android.content.ContentProvider} メソッド（{@link
+android.content.ContentProvider#query query()}、 {@link android.content.ContentProvider#insert
+insert()}、{@link android.content.ContentProvider#delete delete()}、{@link
+android.content.ContentProvider#update update()}、{@link android.content.ContentProvider#getType
+getType()}）は、プロセスの UI スレッドではなく、コンテンツ プロバイダのプロセスにあるスレッドのプールから呼び出されます。
+
+
+&mdash;&mdash;これらのメソッドは同時に複数のスレッドから呼び出される可能性があるため、先ほどと同様にスレッドセーフになるよう実装する必要があります。
+ </p>
+
+
+<h2 id="IPC">プロセス間通信（IPC）</h2>
+
+<p>Android では、リモート プロシージャ コール（RPC）を使ったプロセス間通信のメカニズムを備えており、メソッドはアクティビティや他のアプリケーション コンポーネントから呼び出された後に、リモート（別のプロセス）で実行され、結果を呼び出し側に返します。
+
+
+これにより、メソッドの呼び出しとそのデータをオペレーティング システムが理解できるレベルまで分解し、ローカル プロセスとアドレス空間からリモート プロセスとアドレス空間にそれを送信して、そこで呼び出しが再度組み立てて、再現します。
+
+その後、戻り値が逆方向に伝達されます。
+Android ではこれらの IPC トランザクションを実行するためのすべてのコードが用意されているため、開発者は RPC のプログラミング インターフェースの定義と実装に集中できます。
+ </p>
+
+<p>IPC を実行するには、アプリケーションが {@link
+android.content.Context#bindService bindService()} を使ってサービスにバインドされている必要があります。詳細については、デベロッパー ガイドの「<a href="{@docRoot}guide/components/services.html">サービス</a>」をご覧ください。</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For information about how to perform work in the background for an indefinite period of time
+(without a user interface), continue with the <b><a
+href="{@docRoot}guide/components/services.html">Services</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/ja/guide/components/recents.jd b/docs/html-intl/intl/ja/guide/components/recents.jd
new file mode 100644
index 0000000..81626e1
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/recents.jd
@@ -0,0 +1,256 @@
+page.title=オーバービュー画面
+page.tags="recents","overview"
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>本書の内容</h2>
+  <ol>
+    <li><a href="#adding">オーバービュー画面にタスクを追加する</a>
+      <ol>
+        <li><a href="#flag-new-doc">インテント フラグを使用してタスクを追加する</a></li>
+        <li><a href="#attr-doclaunch">アクティビティの属性を使用してタスクを追加する</a></li>
+      </ol>
+    </li>
+    <li><a href="#removing">タスクを削除する</a>
+      <ol>
+        <li><a href="#apptask-remove">AppTask クラスを使用してタスクを削除する</a></li>
+        <li><a href="#retain-finished">完了したタスクを保持する</a></li>
+      </ol>
+    </li>
+  </ol>
+
+  <h2>キークラス</h2>
+  <ol>
+    <li>{@link android.app.ActivityManager.AppTask}</li>
+    <li>{@link android.content.Intent}</li>
+  </ol>
+
+  <h2>サンプル コード</h2>
+  <ol>
+    <li><a href="{@docRoot}samples/DocumentCentricApps/index.html">ドキュメント中心のアプリ</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>オーバービュー画面（別名、最近使った画面、最近使ったタスクリスト、最近使ったアプリ）は、最近アクセスした<a href="{@docRoot}guide/components/activities.html">アクティビティ</a>や<a href="{@docRoot}guide/components/tasks-and-back-stack.html">タスク</a>の一覧を示すシステムレベルの UI です。
+
+ユーザーはリスト内をナビゲートして再開するタスクを選択したり、スワイプしてタスクをリストから削除したりできます。
+
+Android 5.0（API レベル 21）のリリースでは、異なるドキュメントを持つ同一アクティビティ内の複数のインスタンスが、1 つのタスクとしてオーバービュー画面に表示される場合があります。
+たとえば、Google ドライブには複数の Google ドキュメントごとのタスクが表示される場合があります。
+オーバービュー画面には、各ドキュメントが 1 つのタスクとして表示されます。
+</p>
+
+<img src="{@docRoot}images/components/recents.png" alt="" width="284" />
+<p class="img-caption"><strong>図 1.</strong> オーバービュー画面に表示されている 3 つの Google ドライブ ドキュメントが、それぞれ別のタスクを表しています。
+</p>
+
+<p>通常、オーバービュー画面にタスクとアクティビティを提示する方法はシステムが定義できるよう許可し、この動作を変更する必要はありません。
+ただし、アクティビティをいつ、どのようにオーバービュー画面に表示するかをアプリで決定することもできます。
+{@link android.app.ActivityManager.AppTask} クラスを使ってタスクを管理でき、{@link android.content.Intent} クラスのアクティビティ フラグを使うとアプリをオーバービュー画面に追加、削除するタイミングを指定できます。
+
+
+また、<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> 属性を使ってマニフェストで動作を設定することもできます。</p>
+
+<h2 id="adding">オーバービュー画面にタスクを追加する</h2>
+
+<p>{@link android.content.Intent} クラスのフラグを使用してタスクを追加すると、ドキュメントをいつ、どのようにオーバービュー画面で開いたり、再度開いたりできるかを細かく制御できます。
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 属性を使用すると、常に新しいタスクでドキュメントを開くか、ドキュメントの既存のタスクを再利用するかを選択できます。
+
+
+</p>
+
+<h3 id="flag-new-doc">インテント フラグを使用してタスクを追加する</h3>
+
+<p>アクティビティの新しいドキュメントを作成するときは、{@link android.app.ActivityManager.AppTask} クラスの {@link android.app.ActivityManager.AppTask#startActivity(android.content.Context, android.content.Intent, android.os.Bundle) startActivity()} メソッドを呼び出し、アクティビティを起動するインテントを渡します。
+
+
+論理的な改行を挿入して、システムがアクティビティをオーバービュー画面の新しいタスクとして扱えるようにするには、{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} フラグを、アクティビティを起動する {@link android.content.Intent} の {@link android.content.Intent#addFlags(int) addFlags()} メソッドに渡します。
+
+
+</p>
+
+<p class="note"><strong>注:</strong> {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} フラグは、Android 5.1（API レベル 21）で廃止された {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET} を置き換えるものです。
+
+</p>
+
+<p>新しいドキュメントの作成時に {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} フラグを設定すると、システムは常にターゲット アクティビティの新しいタスクをルートとして作成するようになります。この設定によって、同じドキュメントを複数のタスクで開くことが可能になります。
+
+これをメインのアクティビティが行う方法を、次のコードで示し舞うs。
+</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+public void createNewDocument(View view) {
+      final Intent newDocumentIntent = newDocumentIntent();
+      if (useMultipleTasks) {
+          newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
+      }
+      startActivity(newDocumentIntent);
+  }
+
+  private Intent newDocumentIntent() {
+      boolean useMultipleTasks = mCheckbox.isChecked();
+      final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+      newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT);
+      newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+      return newDocumentIntent;
+  }
+
+  private static int incrementAndGet() {
+      Log.d(TAG, "incrementAndGet(): " + mDocumentCounter);
+      return mDocumentCounter++;
+  }
+}
+</pre>
+
+<p class="note"><strong>注:</strong> {@code FLAG_ACTIVITY_NEW_DOCUMENT} フラグを使って起動されたアクティビティには、マニフェスト ファイルで {@code android:launchMode="standard"} 属性の値（デフォルト）が設定されている必要があります。
+
+</p>
+
+<p>メイン アクティビティが新しいアクティビティを起動するとき、システムはアクティビティのインテント コンポーネント名とインテント データに一致するインテントを持つ既存のタスクを検索します。
+タスクが見つからない場合や、インテントに {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} フラグに含まれている場合は、新しいタスクがアクティビティのルートとして作成されます。
+
+タスク見つかった場合は、そのタスクをフロントに移動して、新しいインテントを {@link android.app.Activity#onNewIntent onNewIntent()} に渡します。新しいアクティビティがインテントを受け取り、次の例のようにオーバービュー画面に新しいドキュメントを作成します。
+
+
+</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+&#64;Override
+protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_new_document);
+    mDocumentCount = getIntent()
+            .getIntExtra(DocumentCentricActivity.KEY_EXTRA_NEW_DOCUMENT_COUNTER, 0);
+    mDocumentCounterTextView = (TextView) findViewById(
+            R.id.hello_new_document_text_view);
+    setDocumentCounterText(R.string.hello_new_document_counter);
+}
+
+&#64;Override
+protected void onNewIntent(Intent intent) {
+    super.onNewIntent(intent);
+    /* If FLAG_ACTIVITY_MULTIPLE_TASK has not been used, this activity
+    is reused to create a new document.
+     */
+    setDocumentCounterText(R.string.reusing_document_counter);
+}
+</pre>
+
+
+<h3 id="#attr-doclaunch">アクティビティの属性を使用してタスクを追加する</h3>
+
+<p>アクティビティのマニフェストで、<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> の属性の<a href="{@docRoot}guide/topics/manifest/activity-element.html#dlmode">{@code android:documentLaunchMode}</a> を使ってアクティビティを常に新しいタスクで起動するよう指定することもできます。
+
+
+この属性には 4 つの値があり、ユーザーがアプリケーションでドキュメントを開くときに次のような効果を生みます。
+</p>
+
+<dl>
+  <dt>「{@code intoExisting}」</dt>
+  <dd>アクティビティがそのドキュメントの既存のタスクを再利用します。これは、<a href="#flag-new-doc">インテント フラグを使用してタスクを追加する</a>で説明したように、{@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} フラグを<em>設定せずに</em>、{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} フラグを設定した場合と同じです。
+
+
+</dd>
+
+  <dt>「{@code always}」</dt>
+  <dd>ドキュメントが既に開いている場合でも、アクティビティがドキュメントの新しいタスクを作成します。これは、{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} フラグと {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} フラグの両方を設定した場合と同じです。
+
+</dd>
+
+  <dt>「{@code none”}」</dt>
+  <dd>アクティビティはドキュメントの新しいタスクを作成しません。オーバービュー画面はデフォルトでアクティビティがタスクを作成したかのように処理し、アプリの 1 つのタスクを表示して、ユーザーが最後に呼び出したアクティビティから再開します。
+
+</dd>
+
+  <dt>「{@code never}」</dt>
+  <dd>アクティビティはドキュメントの新しいタスクを作成しません。この値を設定すると、{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} フラグと {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} フラグのいずれかが設定されている場合にその動作をオーバーライドし、オーバービュー画面にはアプリの 1 つのタスクが表示され、ユーザーが最後に呼び出したアクティビティから再開します。
+
+
+
+</dd>
+</dl>
+
+<p class="note"><strong>注:</strong> {@code none} と {@code never} の値以外の場合、アクティビティを {@code launchMode="standard"} を使って定義する必要があります。
+属性が指定されていない場合は、{@code documentLaunchMode="none"} が使用されます。
+</p>
+
+<h2 id="removing">タスクを削除する</h2>
+
+<p>デフォルトで、アクティビティの完了時にドキュメントのタスクはオーバービュー画面から自動的に削除されます。
+この動作は、{@link android.app.ActivityManager.AppTask} クラスで {@link android.content.Intent} フラグを使うか、<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> 属性を使ってオーバーライドできます。
+</p>
+
+<p><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 属性の <a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">{@code android:excludeFromRecents}</a> を {@code true} に設定すると、タスクを常にオーバービュー画面から完全に除外することができます。
+
+
+</p>
+
+<p>アプリがオーバービュー画面に表示できるタスクの最大数を設定するには、<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 属性の <a href="{@docRoot}guide/topics/manifest/activity-element.html#maxrecents">{@code android:maxRecents}</a> に整数値を設定します。
+
+
+デフォルトでは 16 に設定されています。タスクの最大数に達すると、最も古いタスクがオーバービュー画面から削除されます。
+{@code android:maxRecents} の最大値は 50（低メモリの端末では 25）で、1 未満の値は無効です。
+</p>
+
+<h3 id="#apptask-remove">AppTask クラスを使用してタスクを削除する</h3>
+
+<p>オーバービュー画面に新しいタスクを作成するアクティビティで {@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()} を呼び出すと、タスクを削除して関連アクティビティのすべてを終了させるタイミングを指定できます。
+
+</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+public void onRemoveFromRecents(View view) {
+    // The document is no longer needed; remove its task.
+    finishAndRemoveTask();
+}
+</pre>
+
+<p class="note"><strong>注:</strong> {@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()} メソッドを使用すると、次のセクションで説明する {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} タグの使用がオーバーライドされます。
+
+
+</p>
+
+<h3 id="#retain-finished">完了したタスクを保持する</h3>
+
+<p>アクティビティの終了後もオーバービュー画面にタスクを保持する場合は、{@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} フラグを、アクティビティを起動するインテントの {@link android.content.Intent#addFlags(int) addFlags()} メソッドに渡します。
+
+</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+private Intent newDocumentIntent() {
+    final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+    newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT |
+      android.content.Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS);
+    newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+    return newDocumentIntent;
+}
+</pre>
+
+<p><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 属性の <a href="{@docRoot}guide/topics/manifest/activity-element.html#autoremrecents">{@code android:autoRemoveFromRecents}</a> を {@code false} に設定することでも同じ効果を得られます。
+
+
+ドキュメントのアクティビティのデフォルト値は {@code true}、通常のアクティビティでは {@code false} になります。
+この属性を使用すると、前のセクションで説明した {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} フラグがオーバーライドされます。
+</p>
+
+
+
+
+
+
+
diff --git a/docs/html-intl/intl/ja/guide/components/services.jd b/docs/html-intl/intl/ja/guide/components/services.jd
new file mode 100644
index 0000000..fa946db
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/services.jd
@@ -0,0 +1,813 @@
+page.title=サービス
+@jd:body
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>本書の内容</h2>
+<ol>
+<li><a href="#Basics">基本</a></li>
+<ol>
+  <li><a href="#Declaring">マニフェストでサービスを宣言する</a></li>
+</ol>
+<li><a href="#CreatingAService">開始されたサービスを作成する</a>
+  <ol>
+    <li><a href="#ExtendingIntentService">IntentService クラスを拡張する</a></li>
+    <li><a href="#ExtendingService">Service クラスを拡張する</a></li>
+    <li><a href="#StartingAService">サービスを開始する</a></li>
+    <li><a href="#Stopping">サービスを停止する</a></li>
+  </ol>
+</li>
+<li><a href="#CreatingBoundService">バインドされたサービスを作成する</a></li>
+<li><a href="#Notifications">ユーザーに通知を送信する</a></li>
+<li><a href="#Foreground">サービスをフォアグラウンドで実行する</a></li>
+<li><a href="#Lifecycle">サービスのライフサイクルを管理する</a>
+<ol>
+  <li><a href="#LifecycleCallbacks">ライフサイクル コールバックを実装する</a></li>
+</ol>
+</li>
+</ol>
+
+<h2>キークラス</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.app.IntentService}</li>
+</ol>
+
+<h2>サンプル</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.html">{@code
+      ServiceStartArguments}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>関連ドキュメント</h2>
+<ol>
+<li><a href="{@docRoot}guide/components/bound-services.html">バインドされたサービス</a></li>
+</ol>
+
+</div>
+
+
+<p>{@link android.app.Service} は、バックグラウンドで長時間動作して作業を行い、ユーザー インターフェースを表示しないアプリケーション コンポーネントです。
+別のアプリケーション コンポーネントがサービスを開始し、ユーザーが他のアプリケーションに切り替えた場合でも、サービスはバックグラウンドで実行し続けることができます。
+
+さらに、コンポーネントをサービスにバインドして操作したり、プロセス間通信（IPC）を実行したりすることも可能です。
+たとえば、サービスはネットワーク トランザクションの処理、音楽の再生、ファイルの I/O の実行、コンテンツ プロバイダとのやり取りなどのすべてをバックグラウンドで行うことができます。
+
+</p>
+
+<p>サービスには、基本的に次の 2 つの形式があります。</p>
+
+<dl>
+  <dt>開始されたサービス</dt>
+  <dd>アプリケーション コンポーネント（アクティビティなど）が {@link android.content.Context#startService startService()} を呼び出して開始したときに、サービスが「開始された」状態になります。
+一旦開始されると、たとえ開始したコンポーネントが破棄されても、サービスは無期限に実行できます。
+通常、開始されたサービスは 1 つの操作を実行するだけで、呼び出し元に結果を返すことはありません。たとえば、サービスはネットワーク上でファイルのダウンロードやアップロードを行います。
+
+操作が完了すると、サービスは自身で停止する必要があります。
+</dd>
+  <dt>バインドされたサービス</dt>
+  <dd>アプリケーション コンポーネントが {@link
+android.content.Context#bindService bindService()} を呼び出してサービスにバインドすると、サービスは「バインドされた」状態になります。バインドされたサービスは、コンポーネントがサービスを操作したり、要求を送信したり、結果を取得したり、さらにはプロセス間通信（IPC）でもそれを行えるクライアントサーバー型インターフェースを提供します。
+
+バインドされたサービスは、他のアプリケーション コンポーネントがそれにバインドしている限り実行し続けます。
+サービスには同時に複数のコンポーネントがバインドできますが、すべてがアンバインドされると、サービスは破棄されます。
+</dd>
+</dl>
+
+<p>このドキュメントではこの 2 種類のサービスそれぞれの概要について説明しますが、サービスは開始された状態（無期限に実行）、バインドされた状態のどちらの方法でも動作できます。これは、2 つのコールバック メソッドを実装するかどうかの問題で、{@link
+android.app.Service#onStartCommand onStartCommand()} ではコンポーネントにサービスの開始を許可し、{@link
+android.app.Service#onBind onBind()} ではバインドを許可することになります。
+
+</p>
+
+<p>アプリケーションが開始された、バインドされた、またはその両方かであるかどうかにかかわらず、どんなコンポーネントでもアクティビティを使用できるのと同じように、{@link android.content.Intent} を使って開始することで、どんなアプリケーション コンポーネントでもサービスを使用できます。
+
+&mdash;ただし、マニフェスト ファイルでサービスを非公開として宣言して、他のアプリケーションからのアクセスをブロックすることもできます。
+詳細については、<a href="#Declaring">マニフェストでサービスを宣言する</a>で説明します。
+
+</p>
+
+<p class="caution"><strong>警告:</strong> サービスは、そのホスト プロセスのメインスレッドで実行します。サービスが自身のスレッドを作成することは<strong>なく</strong>、別のプロセスで実行されることも<strong>ありません</strong>（別の方法を指定しない限り）。
+&mdash;
+つまり、サービスが CPU を集中的に使ったり、ブロック操作を行ったりするような場合（MP3 の再生やネットワーク作業）は、サービス内に新しいスレッドを作成してその作業を行う必要があります。
+
+別のスレッドを使うことで、「アプリケーションが応答していません (ANR)」のエラーが発生するリスクを軽減でき、アプリケーションのメインスレッドをアクティビティのユーザー操作専用にすることができます。
+
+</p>
+
+
+<h2 id="Basics">基本</h2>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>サービスとスレッド、どちらを使用すべきか。</h3>
+  <p>サービスは、ユーザーがアプリケーションを操作していない間もバックグラウンドで実行できるコンポーネントにすぎません。
+そのような必要性がある場合に限り、サービスを作成します。
+</p>
+  <p>ユーザーがアプリケーションを操作している間だけ、メインスレッド外で作業を行う必要がある場合は、サービスではなくスレッドを作成することをお勧めします。
+たとえば、アクティビティを実行している間だけ音楽を再生する場合は、{@link android.app.Activity#onCreate onCreate()} にスレッドを作成し、{@link
+android.app.Activity#onStart onStart()} で実行を開始して、{@link android.app.Activity#onStop
+onStop()} で停止します。
+
+また、従来の {@link java.lang.Thread} クラスの代わりに {@link android.os.AsyncTask} や {@link android.os.HandlerThread} を使用する方法もあります。
+スレッドの詳細については、「<a href="{@docRoot}guide/components/processes-and-threads.html#Threads">プロセスとスレッド</a>」のドキュメントをご覧ください。
+</p>
+  <p>サービスを使用する際は、デフォルトではアプリケーションのメインスレッドで実行されるため、集中的な作業やブロック操作を行う場合はサービス内に新しいスレッドを作成する必要があることに注意してください。
+
+</p>
+</div>
+</div>
+
+<p>サービスを作成するには、{@link android.app.Service} のサブクラス（またはその既存のサブクラス）を作成する必要があります。
+実装時には、サービスのライフサイクルの重要側面を扱うコールバック メソッドをオーバーライドして、必要に応じてサービスにバインドするためのメカニズムをコンポーネントに提供する必要があります。
+
+オーバーライドする必要のある、最も重要なコールバック メソッドは次の 2 つです。</p>
+
+<dl>
+  <dt>{@link android.app.Service#onStartCommand onStartCommand()}</dt>
+    <dd>アクティビティなどの他のコンポーネントが、{@link android.content.Context#startService
+startService()} を呼び出してサービスの開始を要求したときに、システムがこのメソッドを呼び出します。
+このメソッドが実行されるとサービスは開始され、バックグラウンドで無期限に実行します。
+これを実装すると、作業完了時に {@link android.app.Service#stopSelf stopSelf()} か {@link
+android.content.Context#stopService stopService()} を呼び出して自身でサービスを停止する必要があります
+（バインドのみを提供する場合は、このメソッドを実装する必要はありません）。
+</dd>
+  <dt>{@link android.app.Service#onBind onBind()}</dt>
+    <dd>{@link android.content.Context#bindService
+bindService()} を呼び出して他のコンポーネントをサービスにバインドさせるとき（RPC 実行時など）に、システムがこのメソッドを呼び出します。
+このメソッドの実装時には、{@link android.os.IBinder} を返してクライアントがサービスとの通信に使うインターフェースを提供する必要があります。
+このメソッドの実装は常に必要ですが、バインドを許可しない場合は、null を返す必要があります。
+</dd>
+  <dt>{@link android.app.Service#onCreate()}</dt>
+    <dd>サービスが始めて作成されたときに、1 回限りのセットアップ処理を実行するためにシステムがこのメソッドを呼び出します（{@link android.app.Service#onStartCommand onStartCommand()} か {@link android.app.Service#onBind onBind()} のいずれかを呼び出す前）。
+
+サービスが既に実行中の場合、このメソッドは呼び出されません。
+</dd>
+  <dt>{@link android.app.Service#onDestroy()}</dt>
+    <dd>サービスがもう使用されておらず破棄されたときに、システムがこのメソッドを呼び出します。これは、スレッドや登録されたリスナ、レシーバーなどをクリーンアップするためにサービスに実装する必要があります。
+
+これが、サービスが受け取る最後の呼び出しになります。</dd>
+</dl>
+
+<p>コンポーネントが {@link
+android.content.Context#startService startService()} を呼び出してサービスを開始すると（結果的に {@link
+android.app.Service#onStartCommand onStartCommand()} が呼び出される）、{@link android.app.Service#stopSelf()} を使ってサービス自身が停止するか、他のコンポーネントが {@link android.content.Context#stopService stopService()} を呼び出して停止するまで、サービスは実行し続けます。
+
+</p>
+
+<p>コンポーネントが {@link android.content.Context#bindService bindService()} を呼び出してサービスを作成した（そして {@link
+android.app.Service#onStartCommand onStartCommand()} が呼び出されて<em>いない</em>）場合、サービスはコンポーネントにバインドされている間のみ実行します。
+
+すべてのクライアントからアンバインドされると、サービスはシステムによって破棄されます。
+</p>
+
+<p>Android システムは メモリが少なくなって、ユーザーが使用しているアクティビティ用のシステムリソースを回復させる必要が生じた場合のみ、サービスを強制的に停止させます。
+サービスがユーザーが使用しているアクティビティにバインドされている場合は、それが強制終了される可能性は低く、<a href="#Foreground">フォアグラウンドで実行</a>（後で説明）するように宣言されている場合は、強制終了されることはほとんどありません。一方で、サービスが開始されてから長時間実行している場合は、システムはバックグラウンド タスクのリストにおけるその位置付けを徐々に低くし、そのサービスが強制終了される確率が高くなります。開始されたサービスを作成する際は、システムによる再起動を円滑に処理するようデザインする必要があります。
+
+
+
+&mdash;
+システムがサービスを強制終了すると、リソースが回復次第そのサービスが再起動します（後述の {@link
+android.app.Service#onStartCommand onStartCommand()} から返される値にもよります）。
+システムがサービスを破棄するタイミングについては、「<a href="{@docRoot}guide/components/processes-and-threads.html">Processes and Threading</a>」のドキュメントをご覧ください。
+
+</p>
+
+<p>次のセクションでは、それぞれのタイプのサービスの作成方法と、他のアプリケーション コンポーネントからの使用方法について説明します。
+</p>
+
+
+
+<h3 id="Declaring">マニフェストでサービスを宣言する</h3>
+
+<p>アクティビティ（や他のコンポーネント）と同様に、すべてのサービスをアプリケーションのマニフェスト ファイルで宣言する必要があります。
+</p>
+
+<p>サービスを宣言するには、<a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 要素を <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a> の子要素として追加します。
+
+次に例を示します。</p>
+
+<pre>
+&lt;manifest ... &gt;
+  ...
+  &lt;application ... &gt;
+      &lt;service android:name=".ExampleService" /&gt;
+      ...
+  &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>マニフェストでのサービスの宣言に関する詳細については、<a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 要素のリファレンスをご覧ください。
+</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> に含めることで、サービスやサービスを実行するプロセスの開始に必要なパーミッションなどのプロパティを定義できる他の属性がいくつかあります。
+
+<a href="{@docRoot}guide/topics/manifest/service-element.html#nm">{@code android:name}</a> 属性は唯一の必須属性で、サービスのクラス名を指定します。
+&mdash;アプリケーションを発行したら、この名前は変更できません。変更すると、サービスを開始したりバインドしたりする明示的インテントの依存関係によってコードを破損する可能性があります（ブログの投稿「<a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Things That Cannot Change</a>」をご覧ください）。
+
+
+
+
+<p>アプリの安全性を保つため、<strong>{@link android.app.Service}を開始したりバインドしたりするときは、常に明示的インテントを使用</strong>し、サービスでインテント フィルタを宣言しないようにしてください。
+どのサービスを開始するかについて、ある程度のあいまい静を残しておく必要がある場合は、サービスにインテント フィルタを定義でき、{@link
+android.content.Intent} からコンポーネント名を除外して、その後ターゲットのサービスのあいまい性を十分に解消する {@link
+android.content.Intent#setPackage setPackage()} でインテントのパッケージを設定する必要があります。
+
+
+</p>
+
+<p>さらに、<a href="{@docRoot}guide/topics/manifest/service-element.html#exported">{@code android:exported}</a> 属性を含めて {@code "false"} に設定すると、サービスを自身のアプリでしか利用できないようにできます。
+
+これにより、他のアプリによるサービスの開始を効果的に回避でき、たとえ明示的インテントを使用したとしても開始できなくなります。
+</p>
+
+
+
+
+<h2 id="CreatingStartedService">開始されたサービスを作成する</h2>
+
+<p>開始されたサービスは、他のコンポーネントが {@link
+android.content.Context#startService startService()} を呼び出すことで結果的にサービスの {@link android.app.Service#onStartCommand onStartCommand()} メソッドを呼び出して開始されたサービスです。
+</p>
+
+<p>サービスが開始されると、サービスはそれを開始したコンポーネントから独立したライフサイクルを持ち、たとえ開始したコンポーネントが破棄されても、サービスは無期限に実行できます。
+
+そのため、サービスはジョブが完了したら {@link android.app.Service#stopSelf stopSelf()} を呼び出して自身で停止する必要があり、他のコンポーネントが {@link android.content.Context#stopService stopService()} を呼び出して停止することもできます。
+
+</p>
+
+<p>アクティビティなどのアプリケーション コンポーネントは、{@link
+android.content.Context#startService startService()} を呼び出して、サービスを指定し、サービスが使用するデータを含めた {@link android.content.Intent} を渡してサービスを開始できます。
+サービスはこの {@link android.content.Intent} を、{@link android.app.Service#onStartCommand
+onStartCommand()} メソッドで受け取ります。
+</p>
+
+<p>たとえば、オンライン データベースにデータを保存する必要のあるアクティビティがあるとします。アクティビティでサービスを開始し、{@link
+android.content.Context#startService startService()} にインテントを渡して、保存するデータをサービスに配信します。
+サービスはインテントを {@link
+android.app.Service#onStartCommand onStartCommand()} で受け取り、インターネットに接続してデータベースのトランザクションを実行します。
+トランザクションが完了したら、サービスは自身で停止し、破棄されます。
+</p>
+
+<p class="caution"><strong>警告:</strong> デフォルトでは、アプリケーションで宣言されたサービスは、アプリケーションと同じプロセスで、そのアプリケーションのメインスレッドで実行します。
+そのため、ユーザーが同じアプリケーションのアクティビティを操作している間に、サービスが集中的な処理やブロック操作を実行すると、アクティビティのパフォーマンスが低下します。
+
+アプリケーションのパフォーマンスへの影響を回避するには、サービス内で新しいスレッドを開始する必要があります。
+</p>
+
+<p>従来どおり、開始されたサービスを作成するために拡張できるクラスが 2 つあります。</p>
+<dl>
+  <dt>{@link android.app.Service}</dt>
+  <dd>これは、すべてのサービスの基本クラスです。サービスはデフォルトでアプリケーションのメインスレッドを使用し、アプリケーションが実行しているアクティビティのパフォーマンスを低下させることがあるため、このクラスを拡張するときは、サービスのすべての作業を行うための新しいスレッドを作成することが重要です。
+
+
+</dd>
+  <dt>{@link android.app.IntentService}</dt>
+  <dd>すべての開始要求を一件ずつ処理するワーカー スレッドを使用した {@link android.app.Service} のサブクラスです。
+サービスで同時に複数の要求を処理する必要がない場合は、これが最適です。
+{@link
+android.app.IntentService#onHandleIntent onHandleIntent()} を実装するだけで、それぞれの開始要求のインテントを受け取り、バックグラウンドでの処理が可能になります。
+</dd>
+</dl>
+
+<p>次のセクションでは、これらいずれかのクラスを使用してサービスを実装する方法について説明します。
+</p>
+
+
+<h3 id="ExtendingIntentService">IntentService クラスを拡張する</h3>
+
+<p>開始されたサービスで同時に複数の要求を処理する必要があることはほとんどないため（実際には危険なマルチスレッド シナリオになります）、{@link android.app.IntentService} クラスを使用してサービスを実装するのが最適だと考えられます。
+
+</p>
+
+<p>{@link android.app.IntentService} は、次の操作を行います。</p>
+
+<ul>
+  <li>アプリケーションのメインスレッドとは別の {@link
+android.app.Service#onStartCommand onStartCommand()} に配信されるすべてのインテントを実行する、デフォルトのワーカー スレッドを作成します。
+</li>
+  <li>マルチスレッドの懸念を排除するため、一度に 1 つのインテントを {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} の実装に渡すワークキューを作成します。
+</li>
+  <li>{@link android.app.Service#stopSelf} を呼び出す必要がないよう、すべての開始要求の処理後にサービスを停止します。
+</li>
+  <li>Null を返す {@link android.app.IntentService#onBind onBind()} のデフォルト実装を提供します。
+</li>
+  <li>インテントをワークキュー、{@link
+android.app.IntentService#onHandleIntent onHandleIntent()} の実装の順に送信する {@link android.app.IntentService#onStartCommand
+onStartCommand()} のデフォルト実装を提供します。</li>
+</ul>
+
+<p>上記すべての操作が行われることで、開発者が行う必要があるのは、クライアントから指示された内容を処理する {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} を実装するだけになります
+（ただし、サービスの小さいコンストラクタを提供する必要はあります）。</p>
+
+<p>{@link android.app.IntentService} の実装例を次に示します。</p>
+
+<pre>
+public class HelloIntentService extends IntentService {
+
+  /**
+   * A constructor is required, and must call the super {@link android.app.IntentService#IntentService}
+   * constructor with a name for the worker thread.
+   */
+  public HelloIntentService() {
+      super("HelloIntentService");
+  }
+
+  /**
+   * The IntentService calls this method from the default worker thread with
+   * the intent that started the service. When this method returns, IntentService
+   * stops the service, as appropriate.
+   */
+  &#64;Override
+  protected void onHandleIntent(Intent intent) {
+      // Normally we would do some work here, like download a file.
+      // For our sample, we just sleep for 5 seconds.
+      long endTime = System.currentTimeMillis() + 5*1000;
+      while (System.currentTimeMillis() &lt; endTime) {
+          synchronized (this) {
+              try {
+                  wait(endTime - System.currentTimeMillis());
+              } catch (Exception e) {
+              }
+          }
+      }
+  }
+}
+</pre>
+
+<p>コンストラクタと {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} の実装、必要なのはこれだけです。</p>
+
+<p>{@link
+android.app.IntentService#onCreate onCreate()}、{@link
+android.app.IntentService#onStartCommand onStartCommand()}、{@link
+android.app.IntentService#onDestroy onDestroy()} などの他のコールバック メソッドもオーバーライドする場合は、{@link android.app.IntentService} がワーカー スレッドの生存状態を正しく処理できるよう、必ず super を実装するようにします。
+</p>
+
+<p>たとえば、{@link android.app.IntentService#onStartCommand onStartCommand()} はデフォルト実装を返す必要があります（これによりインテントが {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} に配信されます）。
+</p>
+
+<pre>
+&#64;Override
+public int onStartCommand(Intent intent, int flags, int startId) {
+    Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+    return super.onStartCommand(intent,flags,startId);
+}
+</pre>
+
+<p>{@link android.app.IntentService#onHandleIntent onHandleIntent()} 以外で、super クラスを呼び出す必要のないメソッドは、{@link android.app.IntentService#onBind
+onBind()} です（ただし、サービスでバインドを許可している場合のみ実装が必要です）。
+</p>
+
+<p>次のセクションでは、この種のサービスが、基本の {@link android.app.Service} クラスを拡張したときにどのように実装されるかを説明します。
+これにはさらに多くのコードがありますが、開始要求の同時処理が必要な場合には適しています。
+</p>
+
+
+<h3 id="ExtendingService">Service クラスを拡張する</h3>
+
+<p>前のセクションで説明したように、{@link android.app.IntentService} を使用すると開始されたサービスの実装が非常に簡単になります。
+ただし、サービスでマルチスレッドを実行する必要がある場合（開始要求をワークキュー経由で処理するのではなく）、{@link android.app.Service} クラスを拡張して、それぞれのインテントを処理できます。
+
+</p>
+
+<p>比較のために、{@link
+android.app.IntentService} を使用した上記の例とまったく同じ処理を実行する {@link
+android.app.Service} クラスの実装の例が次のコードです。つまり、それぞれの開始要求に対し、ワーカー スレッドを使用してジョブとプロセスを実行し、一度に 1 つの要求のみを処理します。
+</p>
+
+<pre>
+public class HelloService extends Service {
+  private Looper mServiceLooper;
+  private ServiceHandler mServiceHandler;
+
+  // Handler that receives messages from the thread
+  private final class ServiceHandler extends Handler {
+      public ServiceHandler(Looper looper) {
+          super(looper);
+      }
+      &#64;Override
+      public void handleMessage(Message msg) {
+          // Normally we would do some work here, like download a file.
+          // For our sample, we just sleep for 5 seconds.
+          long endTime = System.currentTimeMillis() + 5*1000;
+          while (System.currentTimeMillis() &lt; endTime) {
+              synchronized (this) {
+                  try {
+                      wait(endTime - System.currentTimeMillis());
+                  } catch (Exception e) {
+                  }
+              }
+          }
+          // Stop the service using the startId, so that we don't stop
+          // the service in the middle of handling another job
+          stopSelf(msg.arg1);
+      }
+  }
+
+  &#64;Override
+  public void onCreate() {
+    // Start up the thread running the service.  Note that we create a
+    // separate thread because the service normally runs in the process's
+    // main thread, which we don't want to block.  We also make it
+    // background priority so CPU-intensive work will not disrupt our UI.
+    HandlerThread thread = new HandlerThread("ServiceStartArguments",
+            Process.THREAD_PRIORITY_BACKGROUND);
+    thread.start();
+
+    // Get the HandlerThread's Looper and use it for our Handler
+    mServiceLooper = thread.getLooper();
+    mServiceHandler = new ServiceHandler(mServiceLooper);
+  }
+
+  &#64;Override
+  public int onStartCommand(Intent intent, int flags, int startId) {
+      Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+
+      // For each start request, send a message to start a job and deliver the
+      // start ID so we know which request we're stopping when we finish the job
+      Message msg = mServiceHandler.obtainMessage();
+      msg.arg1 = startId;
+      mServiceHandler.sendMessage(msg);
+
+      // If we get killed, after returning from here, restart
+      return START_STICKY;
+  }
+
+  &#64;Override
+  public IBinder onBind(Intent intent) {
+      // We don't provide binding, so return null
+      return null;
+  }
+
+  &#64;Override
+  public void onDestroy() {
+    Toast.makeText(this, "service done", Toast.LENGTH_SHORT).show();
+  }
+}
+</pre>
+
+<p>このように、{@link android.app.IntentService} を使う場合よりもかなり面倒です。</p>
+
+<p>ただし、{@link android.app.Service#onStartCommand
+onStartCommand()} への各呼び出しを自身で処理するため、同時に複数の要求を実行することも可能です。この例にはあてはまりませんが、自身の状況に合う場合は、要求ごとに新しいスレッドを作成し、すぐに実行することもできます（前の要求が完了するのを待つ必要がありません）。
+
+</p>
+
+<p>{@link android.app.Service#onStartCommand onStartCommand()} メソッドは整数を返す必要があることに注意してください。
+整数は、システムがサービスを強制終了した場合に、サービスをどのように続行させるかを記述する値です（前述したように、{@link
+android.app.IntentService} のデフォルト実装が代わりにこれを処理しますが、自身で修正することもできます）。
+{@link android.app.Service#onStartCommand onStartCommand()} から返される値は、次のいずれかの定数である必要があります。
+
+</p>
+
+<dl>
+  <dt>{@link android.app.Service#START_NOT_STICKY}</dt>
+    <dd>{@link android.app.Service#onStartCommand
+onStartCommand()} から戻った後でシステムがサービスを強制終了した場合は、配信が保留中のインテントがない限りシステムはサービスを再作成<em>しません</em>。
+これは、サービスが不必要で、アプリケーションが未完了のジョブを再開できる場合にサービスを実行してしまうのを回避できる最も安全な選択肢です。
+</dd>
+  <dt>{@link android.app.Service#START_STICKY}</dt>
+    <dd>{@link android.app.Service#onStartCommand
+onStartCommand()} から戻った後でシステムがサービスを強制終了した場合は、サービスを再作成し、{@link
+android.app.Service#onStartCommand onStartCommand()} を呼び出しますが、最後のインテントは再配信<em>しません</em>。代わりに、サービスを開始するインテントが保留になっている場合を除いて、システムは {@link android.app.Service#onStartCommand onStartCommand()} を null インテントを使って呼び出します。保留中のインテントがある場合、そのインテントは配信されます。
+
+
+これは、コマンドは実行しないが、無期限に実行し、ジョブを待機するメディア プレーヤー（や同様のサービス）に適しています。
+</dd>
+  <dt>{@link android.app.Service#START_REDELIVER_INTENT}</dt>
+    <dd>{@link android.app.Service#onStartCommand
+onStartCommand()} から戻った後でシステムがサービスを強制終了した場合は、サービスを再作成し、サービスに最後に配信されたインテントで {@link
+android.app.Service#onStartCommand onStartCommand()} を呼び出します。
+すべてのペンディング インテントが順に配信されます。これは、ファイルのダウンロードのような、活発にジョブを実行し、ただちに再開する必要のあるサービスに適しています。
+</dd>
+</dl>
+<p>これらの戻り値の詳細については、リンクされた各定数のリファレンス ドキュメントをご覧ください。
+</p>
+
+
+
+<h3 id="StartingAService">サービスを開始する</h3>
+
+<p>アクティビティや他のアプリケーション コンポーネントから {@link android.content.Intent}（開始するサービスを指定する）を {@link android.content.Context#startService startService()} に渡すことで、サービスを開始できます。
+
+Android システムが、サービスの {@link
+android.app.Service#onStartCommand onStartCommand()} メソッドを呼び出して、{@link
+android.content.Intent} を渡します（絶対に、{@link android.app.Service#onStartCommand
+onStartCommand()} を直接呼び出さないでください）。</p>
+
+<p>アクティビティが前のセクションで例に挙げたサービス（{@code
+HelloSevice}）を、{@link android.content.Context#startService
+startService()} で明示的インテントを使って開始する例を次に示します。</p>
+
+<pre>
+Intent intent = new Intent(this, HelloService.class);
+startService(intent);
+</pre>
+
+<p>{@link android.content.Context#startService startService()} メソッドがすぐに戻り、Android システムがサービスの {@link android.app.Service#onStartCommand
+onStartCommand()} メソッドを呼び出します。
+サービスがまだ実行されていない場合、システムはまず {@link
+android.app.Service#onCreate onCreate()} を呼び出してから、{@link android.app.Service#onStartCommand
+onStartCommand()} を呼び出します。</p>
+
+<p>サービスでバインドが提供されない場合は、{@link
+android.content.Context#startService startService()} で配信されたインテントが、アプリケーション コンポーネントとサービス間の唯一の通信モードになります。
+ただし、サービスから結果を送り返す場合は、サービスを開始するクライアントがブロードキャスト用に {@link android.app.PendingIntent} を作成でき（{@link android.app.PendingIntent#getBroadcast getBroadcast()} で）、それをサービスを開始する {@link android.content.Intent} のサービスに配信できます。
+
+
+その後、サービスはブロードキャストを使って結果を配信できます。
+</p>
+
+<p>サービスを開始する要求が複数ある場合は、それに対応する複数の呼び出しがサービスの {@link android.app.Service#onStartCommand onStartCommand()} に対して発生することになります。
+ただし、サービスを停止するために必要な要求（{@link android.app.Service#stopSelf stopSelf()} や {@link
+android.content.Context#stopService stopService()} を使用）は、1 つのみです。
+</p>
+
+
+<h3 id="Stopping">サービスを停止する</h3>
+
+<p>開始されたサービスは、自身でライフサイクルを管理する必要があります。つまり、システムメモリを復元する必要がある場合を除き、システムがサービスを停止したり破棄したりすることはなく、サービスは {@link android.app.Service#onStartCommand onStartCommand()} から戻った後も実行し続けます。
+
+そのため、サービスは {@link android.app.Service#stopSelf stopSelf()} を呼び出して自身で停止する必要があり、他のコンポーネントが {@link android.content.Context#stopService stopService()} を呼び出して停止することもできます。
+
+</p>
+
+<p>{@link android.app.Service#stopSelf stopSelf()} や {@link
+android.content.Context#stopService stopService()} で停止が要求されたら、システムは可能な限りすぐにサービスを破棄します。
+</p>
+
+<p>ただし、サービスが {@link
+android.app.Service#onStartCommand onStartCommand()} への複数の要求を同時に処理している場合は、その後に新しい開始要求を受け取る可能性があることから、開始要求の処理後もサービスを停止しないでください（1 つ目の要求の最後に停止すると、2 つ目が停止されてしまいます）。
+
+この問題を回避するには、{@link android.app.Service#stopSelf(int)} を使って、常に最新の開始要求に基づいてサービスの停止要求を行うようにできます。
+
+具体的には、{@link
+android.app.Service#stopSelf(int)} を呼び出すとき、停止要求に対応する開始要求の ID（{@link android.app.Service#onStartCommand onStartCommand()} に配信された <code>startId</code>）を渡します。
+
+その後、{@link
+android.app.Service#stopSelf(int)} を呼び出す前にサービスが新しい開始要求を受け取ったとしても、結果的に ID が一致せずサービスが停止されなくなります。</p>
+
+<p class="caution"><strong>警告:</strong> アプリケーションはサービスの処理が完了したら、システムリソースやバッテリ電力の節約のため、サービスを停止することが重要です。
+必要であれば、他のコンポーネントから {@link
+android.content.Context#stopService stopService()} を呼び出してサービスを停止することもできます。
+サービスのバインドを有効にしている場合でも、{@link
+android.app.Service#onStartCommand onStartCommand()} を受け取ったときには常に自身でサービスを停止する必要があります。
+</p>
+
+<p>サービスのライフサイクルの詳細については、後半のセクションの<a href="#Lifecycle">サービスのライフサイクルを管理する</a>をご覧ください。</p>
+
+
+
+<h2 id="CreatingBoundService">バインドされたサービスを作成する</h2>
+
+<p>バインドされたサービスとは、アプリケーション コンポーネントが長時間の接続を作成するために {@link
+android.content.Context#bindService bindService()} を呼び出してサービスにバインドできるようにするサービスです（通常はコンポーネントが {@link
+android.content.Context#startService startService()} を呼び出すことではサービスは<em>開始</em>できません）。
+</p>
+
+<p>バインドされたサービスは、アプリケーションのアクティビティや他のコンポーネントからのサービスとやり取りしたり、アプリケーションの一部の機能をプロセス間通信（IPC）を用いて他のアプリケーションが利用できるようにしたりする場合に作成します。
+
+</p>
+
+<p>バインドされたサービスを作成するには、{@link
+android.app.Service#onBind onBind()} コールバック メソッドを実装して、サービスとの通信用のインターフェースを定義する {@link android.os.IBinder} を返す必要があります。
+その後、他のアプリケーション コンポーネントが {@link android.content.Context#bindService bindService()} を呼び出してインターフェースを取得し、サービスのメソッドの呼び出しを開始できます。
+
+サービスは、バインドされているアプリケーション コンポーネントのためだけに存在するため、バインドされているコンポーネントがなくなると、サービスにシステムによって破棄されます（バインドされたサービスは、{@link android.app.Service#onStartCommand onStartCommand()} でサービスが開始されたときと同じ方法で停止する必要は<em>ありません</em>）。
+
+
+</p>
+
+<p>バインドされたサービスを作成するには、まずクライアントからサービスへの通信方法を指定するインターフェースを定義します。
+サービスとクライアント間のこのインターフェースは {@link android.os.IBinder} の実装である必要があり、サービスはこれを {@link android.app.Service#onBind
+onBind()} コールバック メソッドから返す必要があります。
+
+クライアントが {@link android.os.IBinder} を受け取ると、そのインターフェースを介してサービスとのやり取りを開始できます。
+</p>
+
+<p>複数のクライアントが同時にサービスにバインドできます。クライアントとサービスのやり取りが終わったら、{@link android.content.Context#unbindService unbindService()} を呼び出してアンバインドします。
+サービスにバインドされているクライアントがなくなったら、システムがサービスを破棄します。
+</p>
+
+<p>バインドされたサービスの実装方法はいくつかあり、その実装は開始されたサービスよりも複雑であるため、バインドされたサービスの詳細については、<a href="{@docRoot}guide/components/bound-services.html">バインドされたサービス</a> のドキュメントで別途説明しています。
+
+</p>
+
+
+
+<h2 id="Notifications">ユーザーに通知を送信する</h2>
+
+<p>一旦サービスが実行されると、<a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">トースト通知</a>や<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">ステータスバー通知</a>を使ってユーザーにイベントを通知できます。</p>
+
+<p>トースト通知は、現在のウィンドウに表示されるメッセージで、少しの間表示され、すぐに消えます。一方、ステータスバー通知では、ステータスバーにメッセージの付いたアイコンが表示され、ユーザーはそれを選択して何らかの操作（アクティビティの開始など）を行うことができます。
+
+</p>
+
+<p>通常は、バックグラウンド ワークが完了して、ユーザーが実行できる操作がある場合（ファイルのダウンロードが完了した場合など）は、ステータスバーの通知が最適なテクニックです。
+
+展開したビューでユーザーが通知を選択すると、通知がアクティビティ（ダウンロードしたファイルを表示するなど）を開始できるようになります。
+</p>
+
+<p>詳細については、デベロッパー ガイドの「<a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">トースト通知</a>」や「<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">ステータスバーの通知</a>」をご覧ください。
+</p>
+
+
+
+<h2 id="Foreground">サービスをフォアグラウンドで実行する</h2>
+
+<p>フォアグラウンド サービスは、ユーザーがその存在を認識しているものであるとみなされるため、メモリ残量が少なくなった場合でも、システムによる強制終了の現候補にはなりません。
+フォアグラウンド サービスではステータスバーに通知を表示する必要があり、通知は「継続中」という見出しの下に表示されるため、サービスが停止するか、フォアグラウンドから除去しない限り通知を消すことはできないということになります。
+
+
+</p>
+
+<p>たとえば、サービスから音楽を再生する音楽プレーヤーは、ユーザーがその操作を認識しているのは明らかであるため、フォアグラウンドで実行する必要があります。
+
+ステータスバーの通知には現在再生中の曲名を表示でき、ユーザーが音楽プレーヤーを操作するためのアクティビティを起動できるようにできます。
+</p>
+
+<p>サービスをフォアグラウンドで実行するよう要求するには、{@link
+android.app.Service#startForeground startForeground()} を呼び出します。このメソッドは、通知を一意に識別する整数と、ステータスバーの {@link
+android.app.Notification} の 2 つのパラメータを受け付けます。
+次に例を示します。</p>
+
+<pre>
+Notification notification = new Notification(R.drawable.icon, getText(R.string.ticker_text),
+        System.currentTimeMillis());
+Intent notificationIntent = new Intent(this, ExampleActivity.class);
+PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
+notification.setLatestEventInfo(this, getText(R.string.notification_title),
+        getText(R.string.notification_message), pendingIntent);
+startForeground(ONGOING_NOTIFICATION_ID, notification);
+</pre>
+
+<p class="caution"><strong>警告:</strong> {@link
+android.app.Service#startForeground startForeground()} に渡す整数 ID には、0 は使用できません。</p>
+
+
+<p>サービスをフォアグラウンドから除去するには、{@link
+android.app.Service#stopForeground stopForeground()} を呼び出します。このメソッドでは、同時にステータスバーの通知も除去するかどうかを示すブール値を受け付けます。
+このメソッドでは、サービスは停止<em>されません</em>。
+ただし、サービスがまだフォアグラウンドで実行中に停止した場合は、通知も除去されます。
+</p>
+
+<p>通知の詳細については、「<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Creating Status Bar Notifications</a>」をご覧ください。
+</p>
+
+
+
+<h2 id="Lifecycle">サービスのライフサイクルを管理する</h2>
+
+<p>サービスのライフサイクルは、アクティビティのライフサイクルよりもはるかにシンプルです。ただし、サービスはバックグラウンドでサイレントに実行されるため、サービスがどのように作成され、破棄されるかについては、より一層の注意を払っておく必要があります。
+
+</p>
+
+<p>作成されてから破棄されるまでのサービスのライフサイクルには、2 つの経路があります。&mdash;&mdash;
+</p>
+
+<ul>
+<li>開始されたサービスの場合
+  <p>他のコンポーネントが {@link
+android.content.Context#startService startService()} を呼び出したときにサービスが作成されます。その後サービスは無期限に実行し、{@link
+android.app.Service#stopSelf() stopSelf()} を呼び出して自身で停止する必要があります。
+また、他のコンポーネントから {@link android.content.Context#stopService stopService()} を呼び出してサービスを停止することもできます。
+
+サービスが停止すると、システムがそれを破棄します。</p></li>
+
+<li>バインドされたサービス
+  <p>他のコンポーネント（クライアント）が {@link
+android.content.Context#bindService bindService()} を呼び出したときにサービスが作成されます。その後、クライアントが {@link android.os.IBinder} インターフェースを介してサービスとやり取りします。
+クライアントは、{@link android.content.Context#unbindService unbindService()} を呼び出して接続を終了できます。
+サービスには同時に複数のクライアントがバインドでき、すべてがアンバインドされると、サービスはシステムによって破棄されます
+（サービスを自身で停止する必要は<em>ありません</em>）。
+</p></li>
+</ul>
+
+<p>この 2 つの経路は、完全に分離しているわけではありません。つまり、{@link android.content.Context#startService startService()} で既に開始されたサービスにバインドすることも可能です。
+たとえば、{@link android.content.Context#startService
+startService()} を呼び出してバックグラウンドの音楽サービスを開始し、{@link android.content.Intent} を使って再生する音楽を指定できます。
+その後、ユーザーがプレーヤーを操作したり、現在の曲に関する情報を入手したりする場合は、{@link
+android.content.Context#bindService bindService()} を呼び出すことでアクティビティをサービスにバインドできます。
+
+このような場合は、すべてのクライアントがアンバインドされるまで、{@link
+android.content.Context#stopService stopService()} や {@link android.app.Service#stopSelf
+stopSelf()} ではサービスは停止されません。 </p>
+
+
+<h3 id="LifecycleCallbacks">ライフサイクル コールバックを実装する</h3>
+
+<p>アクティビティと同様に、サービスにもコールバック メソッドがあり、それを実装することでサービスの状態の変化を監視したり、適切なタイミングで処理を実行したりできます。
+次のスケルトン サービスは、それぞれのライフサイクル メソッドを表しています。
+</p>
+
+<pre>
+public class ExampleService extends Service {
+    int mStartMode;       // indicates how to behave if the service is killed
+    IBinder mBinder;      // interface for clients that bind
+    boolean mAllowRebind; // indicates whether onRebind should be used
+
+    &#64;Override
+    public void {@link android.app.Service#onCreate onCreate}() {
+        // The service is being created
+    }
+    &#64;Override
+    public int {@link android.app.Service#onStartCommand onStartCommand}(Intent intent, int flags, int startId) {
+        // The service is starting, due to a call to {@link android.content.Context#startService startService()}
+        return <em>mStartMode</em>;
+    }
+    &#64;Override
+    public IBinder {@link android.app.Service#onBind onBind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()}
+        return <em>mBinder</em>;
+    }
+    &#64;Override
+    public boolean {@link android.app.Service#onUnbind onUnbind}(Intent intent) {
+        // All clients have unbound with {@link android.content.Context#unbindService unbindService()}
+        return <em>mAllowRebind</em>;
+    }
+    &#64;Override
+    public void {@link android.app.Service#onRebind onRebind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()},
+        // after onUnbind() has already been called
+    }
+    &#64;Override
+    public void {@link android.app.Service#onDestroy onDestroy}() {
+        // The service is no longer used and is being destroyed
+    }
+}
+</pre>
+
+<p class="note"><strong>注:</strong> アクティビティのライフサイクル コールバック メソッドの場合とは異なり、これらのコールバック メソッドのスーパークラスの実装を呼び出す必要は<em>ありません</em>。
+</p>
+
+<img alt="" src="images/hero/how-to-enter1.jpg" />
+<p class="img-caption"><strong>図 2.</strong> サービスのライフサイクル。左側の図は、{@link android.content.Context#startService
+startService()} でサービスが作成されたときのライフサイクルを示し、右側の図は、{@link android.content.Context#bindService bindService()} でサービスが作成されたときのライフサイクルを示しています。
+
+</p>
+
+<p>これらのメソッドを実装すると、サービスのライフサイクル内の次の 2 つのネストされたループを監視できます。 </p>
+
+<ul>
+<li>サービスの<strong>全体の生存期間</strong>は、{@link
+android.app.Service#onCreate onCreate()} が呼び出されてから、{@link
+android.app.Service#onDestroy} から戻るまでの間です。アクティビティと同様に、サービスが {@link android.app.Service#onCreate onCreate()} で初期設定を行い、{@link
+android.app.Service#onDestroy onDestroy()} で残りのすべてのリソースを解放します。
+たとえば、音楽再生サービスでは、音楽を再生するスレッドを {@link
+android.app.Service#onCreate onCreate()} に作成して、停止するスレッドを {@link
+android.app.Service#onDestroy onDestroy()} に作成します。
+
+
+<p>{@link android.app.Service#onCreate onCreate()} メソッドと {@link android.app.Service#onDestroy
+onDestroy()} メソッドは、それが{@link android.content.Context#startService startService()} か {@link
+android.content.Context#bindService bindService()} のどちらで作成された場合でも、すべてのサービスに対して呼び出されます。
+</p></li>
+
+<li>サービスの<strong>アクティブな生存期間</strong> {@link
+android.app.Service#onStartCommand onStartCommand()} か {@link android.app.Service#onBind onBind()} のいずれかへの呼び出しから開始します。各メソッドには、{@link android.content.Context#startService
+startService()} か {@link android.content.Context#bindService bindService()} のいずれかに渡された {@link
+android.content.Intent} が渡されます。
+
+<p>サービスが開始された場合、アクティブな生存期間の完了は、全体の生存期間の完了と同じタイミングとなります（{@link android.app.Service#onStartCommand
+onStartCommand()} から戻った後もサービスはまだアクティブです）。
+サービスがバインドされた場合、アクティブな生存期間は {@link
+android.app.Service#onUnbind onUnbind()} から戻った時点で完了します。</p>
+</li>
+</ul>
+
+<p class="note"><strong>注:</strong> 開始されたサービスは、{@link android.app.Service#stopSelf stopSelf()} か {@link
+android.content.Context#stopService stopService()} への呼び出しで停止されますが、サービスには同様のコールバックはありません（{@code onStop()} コールバックがありません）。
+
+そのため、サービスがクライアントにバインドされていない限り、サービスが停止するとシステムがそれを破棄します。受け取るコールバックは {@link
+android.app.Service#onDestroy onDestroy()} のみです。
+&mdash;</p>
+
+<p>図 2 は、サービスの典型的なコールバック メソッドを表しています。この図では、{@link android.content.Context#startService startService()} で作成されたサービスと {@link android.content.Context#bindService bindService()} で作成されたサービスを分けていますが、開始方法にかかわらず、すべてのサービスがクライアントからバインドされる可能性があることに注意してください。つまり、当初は {@link android.app.Service#onStartCommand
+onStartCommand()} で（クライアントが {@link android.content.Context#startService startService()} を呼び出した際）開始されたサービスも、{@link android.app.Service#onBind onBind()} への呼び出し（クライアントが {@link android.content.Context#bindService bindService()} を呼び出した際）を受け取ることができます。
+
+
+
+
+
+</p>
+
+<p>バインドを提供するサービスの作成に関する詳細は、「<a href="{@docRoot}guide/components/bound-services.html">バインドされたサービス</a>」のドキュメントをご覧ください。このドキュメントの<a href="{@docRoot}guide/components/bound-services.html#Lifecycle">バインドされたサービスのライフサイクルを管理する</a>では、{@link android.app.Service#onRebind onRebind()} コールバックの詳細についても説明しています。
+
+
+</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>To learn how to query data from the system or other applications (such as contacts or media
+stored on the device), continue with the <b><a
+href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a></b>
+document.</p>
+-->
diff --git a/docs/html-intl/intl/ja/guide/components/tasks-and-back-stack.jd b/docs/html-intl/intl/ja/guide/components/tasks-and-back-stack.jd
new file mode 100644
index 0000000..12f5911
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/components/tasks-and-back-stack.jd
@@ -0,0 +1,578 @@
+page.title=タスクとバックスタック
+parent.title=アクティビティ
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本書の内容</h2>
+<ol>
+<li><a href="#ActivityState">アクティビティの状態を保存する</a></li></li>
+<li><a href="#ManagingTasks">タスクを管理する</a>
+  <ol>
+    <li><a href="#TaskLaunchModes">起動モードを定義する</a></li>
+    <li><a href="#Affinities">アフィニティを処理する</a></li>
+    <li><a href="#Clearing">バックスタックをクリアする</a></li>
+    <li><a href="#Starting">タスクを開始する</a></li>
+  </ol>
+</li>
+</ol>
+
+<h2>記事</h2>
+<ol>
+  <li><a href="http://android-developers.blogspot.com/2010/04/multitasking-android-way.html">Multitasking the Android Way</a>
+</li>
+</ol>
+
+<h2>関連ドキュメント</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/navigation.html">Android Design: Navigation</a>
+</li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;} manifest element</a>
+</li>
+  <li><a href="{@docRoot}guide/components/recents.html">オーバービュー画面</a></li>
+</ol>
+</div>
+</div>
+
+
+<p>通常、アプリケーションには複数の<a href="{@docRoot}guide/components/activities.html">アクティビティ</a>が含まれています。それぞれのアクティビティは、ユーザーが実行して、他のアクティビティを開始するといった特定のアクションを中心に設計されています。
+
+たとえば、メール アプリケーションに新規メッセージ一覧を表示する 1 つのアクティビティがあるとします。ユーザーがメッセージを選択すると、そのメッセージを表示するための新しいアクティビティが開きます。
+</p>
+
+<p>アクティビティでは、端末上の他のアプリケーションに存在するアクティビティを開始することもできます。たとえば、アプリケーションがメールの送信を求める場合は、「送信」アクションを実行し、メールアドレスや本文などのデータを含めるインテントを定義できます。
+
+その結果、この種のインテントの処理を宣言している別のアプリケーションのアクティビティが開きます。
+この場合、インテントはメールを送信することであるため、メール アプリケーションの「作成」アクティビティが開始されます（複数のアクティビティが同じインテントに対応している場合、システムはユーザーに選択を求めます）。
+
+メールが送信されると、元のアクティビティが再開され、まるでメール アクティビティがそのアプリケーションの一部であるように見えます。
+アクティビティは異なるアプリケーションのものでも、Android は両方のアクティビティを同じ<em>タスク</em>内に保つことによって、このシームレスな操作性を維持しています。
+
+</p>
+
+<p>タスクとは、ユーザーが特定の作業を行う時に情報のやり取りを行うアクティビティの集まりです。
+アクティビティは、各アクティビティが開かれた順にスタック（<em>バックスタック</em>）形式で配置されます。
+</p>
+
+<!-- SAVE FOR WHEN THE FRAGMENT DOC IS ADDED
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h3>Adding fragments to a task's back stack</h3>
+
+<p>Your activity can also include {@link android.app.Fragment}s to the back stack. For example,
+suppose you have a two-pane layout using fragments, one of which is a list view (fragment A) and the
+other being a layout to display an item from the list (fragment B). When the user selects an item
+from the list, fragment B is replaced by a new fragment (fragment C). In this case, it might be
+desireable for the user to navigate back to reveal fragment B, using the <em>Back</em> button.</p>
+<p>In order to add fragment B to the back stack so that this is possible, you must call {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} before you {@link
+android.app.FragmentTransaction#commit()} the transaction that replaces fragment B with fragment
+C.</p>
+<p>For more information about using fragments and adding them to the back stack, see the {@link
+android.app.Fragment} class documentation.</p>
+
+</div>
+</div>
+-->
+
+<p>ほとんどのタスクは、端末のホーム画面から開始されます。ユーザーがアプリケーション ランチャーでアイコン（またはホーム画面のショートカット）にタッチすると、アプリケーションのタスクがフォアグラウンドに移動します。
+
+アプリケーションにタスクが存在しない（アプリケーションが最近使われていない）場合は、新しいタスクが作成され、そのアプリケーションの「メイン」アクティビティがスタック内のルート アクティビティとして開きます。
+
+</p>
+
+<p>現在のアクティビティが別のアクティビティを開始すると、新しいアクティビティがスタックの一番上にプッシュされ、アクティブになります。
+前のアクティビティはスタックに残りますが、停止されます。アクティビティが停止すると、システムはそのユーザー インターフェースの状態を維持します。
+ユーザーが [<em>戻る</em>] ボタンを押すと、現在のアクティビティがスタックの一番上から消え（アクティビティは破棄され）、前のアクティビティが再開します（UI は前の状態で復元されます）。
+
+
+スタック内のアクティビティが並べ替えられることはなく、スタック上にプッシュされるかスタックから消されるかのみです &mdash; 現在のアクティビティにより開始されるとスタック上にプッシュされ、ユーザーが [<em>戻る</em>] ボタンを押すと破棄されます。
+
+このように、バックスタックは「後入れ先出し」オブジェクト構造となっています。
+
+図 1 は、この動作を時系列に視覚化し、アクティビティとそれに伴うその時点でのバックスタックの状態を示したものです。
+
+</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack.png" alt="" />
+<p class="img-caption"><strong>図 1.</strong>タスク内の新しいアクティビティがバックスタックにアイテムを追加するプロセスを示しています。
+ユーザーが [<em>戻る</em>] ボタンを押すと、現在のアクティビティは破棄され、前のアクティビティが再開します。
+
+</p>
+
+
+<p>ユーザーが続けて [<em>戻る</em>] ボタンを押すと、スタック内のアクティビティは消えていき、前のアクティビティが表示されます。最終的に、ユーザーはホーム画面（またはタスクの開始時に実行されていたアクティビティ）に戻ります。
+
+
+すべてのアクティビティがスタックから削除されると、タスクはなくなります。</p>
+
+<div class="figure" style="width:287px">
+<img src="{@docRoot}images/fundamentals/diagram_multitasking.png" alt="" /> <p
+class="img-caption"><strong>図 2.</strong> 2 つのタスク: タスク B がフォアグラウンドでユーザー操作を受け入れます。タスク A は再開されるまでバックグラウンドで待機します。
+</p>
+</div>
+<div class="figure" style="width:215px">
+  <img src="{@docRoot}images/fundamentals/diagram_multiple_instances.png" alt="" /> <p
+class="img-caption"><strong>図 3.</strong> 1 つのアクティビティが複数回インスタンス化されます。</p>
+</div>
+
+<p>タスクは結束した構成単位で、ユーザーが新しいタスクを開始したり [<em>ホーム</em>] ボタンを使ってホーム画面に移動したりすると「バックグラウンド」に移動できます。
+バックグラウンドでは、タスク内のすべてのアクティビティが停止されますが、タスクのバックスタックは元の状態を保ちます &mdash; 図 2 に示すように、別のタスクが行われている間、タスクはフォーカスを失った状態になります。
+
+
+タスクはその後「フォアグラウンド」に戻り、ユーザーは操作の続きを行うことができます。
+たとえば、現在のタスク（タスク A）のスタックに 3 つのアクティビティがあるとします。現在のアクティビティの下に 2 つのアクティビティがある状態です。
+ユーザーが [<em>ホーム</em>] ボタンを押し、アプリケーション ランチャーから新しいアプリケーションを起動します。
+
+ホーム画面が表示されると、タスク A はバックグラウンドに移動します。
+新しいアプリケーションが起動すると、システムはそのアプリケーションのタスク（タスク B）を開始します。タスク B には独自のアクティビティ スタックがあります。
+アプリケーションの操作が終了すると、ユーザーはホームに戻り、タスク A を開始した元のアプリケーションを選択します。ここでタスク A はフォアグラウンドに移動します &mdash; 3 つのアクティビティはすべて元のままで、スタックの一番上にあるアクティビティが再開します。
+
+
+
+この時点で、ユーザーはホームに移動してタスク B を開始したアプリケーションを選択して（または<a href="{@docRoot}guide/components/recents.html">オーバービュー画面</a>でアプリのタスクを選択して）タスク B に切り替えることもできます。これは、Android のマルチタスク操作の一例です。
+
+
+
+</p>
+
+<p class="note"><strong>注:</strong> バックグラウンドには複数のタスクを一度に置くことができます。しかし、ユーザーが多数のバックグラウンド タスクを同時に実行すると、システムがメモリを回復するためにバックグラウンド アクティビティを破棄する場合があります。その結果、アクティビティの状態は失われます。<a href="#ActivityState">アクティビティの状態</a>セクションをご覧ください。
+
+
+</p>
+
+<p>バックスタック内のアクティビティが並べ替えられることはないため、アプリケーションが複数のアクティビティからの特定のアクティビティ開始を許可すると、（アクティビティの前のインスタンスを一番上に移動させるのではなく）そのアクティビティの新しいインスタンスが作成されてスタック上にプッシュされます。
+
+
+これによって、図 3 に示すように、アプリケーションの 1 つのアクティビティが（別のタスクからも）複数回インスタンス化される場合があります。
+この場合は、ユーザーが [<em>戻る</em>] ボタンを使って移動すると、アクティビティの各インスタンスが（UI の状態はそれぞれそのままで）開いた順に表示されます。
+
+
+しかし、1 つのアクティビティを何度もインスタンス化したくない場合は、この動作を修正できます。
+その方法については、後述のセクション<a href="#ManagingTasks">タスクを管理する</a>で説明します。</p>
+
+
+<p>以下は、アクティビティとタスクのデフォルトの動作をまとめたものです。</p>
+
+<ul>
+  <li>アクティビティ A がアクティビティ B を開始すると、アクティビティ A は停止しますが、システムはその状態（スクロールの位置やフォームに入力されたテキストなど）を保持します。アクティビティ B が開いた状態でユーザーが [<em>戻る</em>] ボタンを押すと、アクティビティ A が再開し、その状態が復元されます。
+
+
+</li>
+  <li>ユーザーが [<em>ホーム</em>] ボタンを押してタスクを離れると、現在のアクティビティは停止し、そのタスクはバックグラウンドに移動します。
+
+システムはタスク内のすべてのアクティビティの状態を保持します。後にユーザーがタスクを開始したランチャー アイコンを選択してタスクを再開すると、タスクはフォアグラウンドに移動し、スタックの一番上にあるアクティビティを開始します。
+
+</li>
+  <li>ユーザーが [<em>戻る</em>] ボタンを押すと、現在のアクティビティはスタックから消え、破棄されます。
+
+スタック内にある前のアクティビティが再開します。アクティビティが破棄された場合、システムはその状態を<em>保持しません</em>。
+</li>
+  <li>アクティビティは、別のタスクからでも複数回インスタンス化できます。</li>
+</ul>
+
+
+<div class="note design">
+<p><strong>ナビゲーション デザイン</strong></p>
+  <p>Android 上でのアプリ ナビゲーションの仕組みの詳細については、Android Design の「<a href="{@docRoot}design/patterns/navigation.html">Navigation</a>」ガイドをご覧ください。</p>
+</div>
+
+
+<h2 id="ActivityState">アクティビティの状態を保存する</h2>
+
+<p>上述のように、デフォルト動作では、システムはアクティビティが停止するとその状態を保持します。
+この方法では、ユーザーが前のアクティビティに戻ると、ユーザー インターフェースが前の状態のままで表示されます。
+しかし、コールバック メソッドを使って積極的にアクティビティの状態を保持することもできます。破棄されたアクティビティを再作成しなければならないことを考えると、アクティビティの状態は積極的に<strong>保持すべき</strong>です。
+
+</p>
+
+<p>システムが（新しいアクティビティの開始時やバックグラウンドへのタスクの移動時などに）アクティビティの 1 つを停止している時にシステム メモリの回復が必要になると、システムはそのアクティビティを完全に破棄する可能性があります。
+
+これにより、アクティビティの状態に関する情報が失われてしまいます。システムは、アクティビティがバックスタックに留まっていることは認識していますが、アクティビティがスタックの一番上に置かれるとアクティビティを（再開ではなく）再作成しなければなりません。
+
+
+ユーザーの作業内容が失われるのを回避するには、{@link android.app.Activity#onSaveInstanceState onSaveInstanceState()} コールバック メソッドをアクティビティに実装することによって、作業状態を積極的に保持する必要があります。
+
+
+</p>
+
+<p>アクティビティの状態の保存方法の詳細については、「<a href="{@docRoot}guide/components/activities.html#SavingActivityState">Activities</a>」ドキュメントをご覧ください。
+</p>
+
+
+
+<h2 id="ManagingTasks">タスクを管理する</h2>
+
+<p>上記のように、Android は、連続して開始されたすべてのアクティビティを同じタスクの「後入れ先出し」式スタックに置くことによって、タスクやバックスタックを管理します。この方法は、ほとんどのアプリケーションでうまく動作し、アクティビティがどのようにタスクに関連付けられ、どのようにバックスタックに置かれているのかを心配する必要はありません。
+
+
+しかし、通常の動作に割り込みたい場合もあります。
+アプリケーション内のアクティビティが開始された時に（現在のタスク内に置かれる代わりに）新しいタスクを開始させたり、アクティビティの開始時に（新しいインスタンスをバックスタックの一番上に作成する代わりに）アクティビティの既存インスタンスを前に持ってきたり、ユーザーがタスクを離れる時にルート アクティビティ以外のすべてのアクティビティをバックスタックからクリアする場合などが考えられます。
+
+
+
+</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> マニフェスト エレメントの属性と {@link android.app.Activity#startActivity startActivity()} に渡すインテント内のフラグを使って、これらの、さらに他の動作を実現できます。
+
+
+</p>
+
+<p>この件に関して、使用できる主な <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 属性には以下のものがあります。
+</p>
+
+<ul class="nolist">
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">  {@code taskAffinity}</a>
+</li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">  {@code launchMode}</a>
+</li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">  {@code allowTaskReparenting}</a>
+</li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">  {@code clearTaskOnLaunch}</a>
+</li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#always">  {@code alwaysRetainTaskState}</a>
+</li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">  {@code finishOnTaskLaunch}</a>
+</li>
+</ul>
+
+<p>使用できる主なインテント フラグには以下のものがあります。</p>
+
+<ul class="nolist">
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</li>
+</ul>
+
+<p>以下のセクションでは、これらのマニフェスト属性とインテント フラグを使ってアクティビティをタスクに関連付ける方法とバックスタック内での動作を定義する方法を説明します。
+</p>
+
+<p>また、タスクとアクティビティの提示方法やオーバービュー画面での管理方法に関する考慮点について別途記載しています。
+詳細については、「<a href="{@docRoot}guide/components/recents.html">オーバービュー画面</a>」をご覧ください。
+通常、オーバービュー画面にタスクとアクティビティを提示する方法はシステムが定義できるよう許可し、この動作を変更する必要はありません。
+</p>
+
+<p class="caution"><strong>警告:</strong> ほとんどのアプリケーションはアクティビティとタスクに対するデフォルトの動作に割り込むべきではありません。
+アクティビティがデフォルトの動作を変更する必要があると判断した場合は、起動時と他のアクティビティやタスクからの [<em>戻る</em>] ボタンによる移動時のアクティビティのユーザビリティを慎重にテストする必要があります。ユーザーが想定する動作と競合する恐れのあるナビゲーション時の動作については必ずテストを行ってください。
+
+
+</p>
+
+
+<h3 id="TaskLaunchModes">起動モードを定義する</h3>
+
+<p>起動モードでは、アクティビティの新しいインスタンスを現在のタスクに関連付ける方法を定義できます。
+次の 2 つの方法を使ってさまざまな起動モードを定義できます。</p>
+<ul class="nolist">
+  <li><a href="#ManifestForTasks">マニフェスト ファイルを使用する</a>
+    <p>マニフェスト ファイルにアクティビティを宣言する際に、開始時にアクティビティをタスクに関連付ける方法を指定できます。
+</li>
+  <li><a href="#IntentFlagsForTasks">インテント フラグを使用する</a>
+    <p>{@link android.app.Activity#startActivity startActivity()} を呼び出す際に、新しいアクティビティを現在のタスクに関連付ける方法（または関連付けるかどうか）を宣言する {@link android.content.Intent} にフラグを置くことができます。
+
+</p></li>
+</ul>
+
+<p>アクティビティ A がアクティビティ B を開始する場合、アクティビティ B は自身を現在のタスクに関連付ける方法（もしあれば）をマニフェストに定義し、アクティビティ A はアクティビティ B を現在のタスクに関連付ける方法を要求できます。
+
+両方のアクティビティがアクティビティ B をタスクに関連付ける方法を定義している場合は、アクティビティ B の要求よりも（インテントに定義される）アクティビティ A の要求が優先されます。
+
+</p>
+
+<p class="note"><strong>注:</strong> マニフェスト ファイルで使用できる起動モードの中にはインテントのフラグとして使用できないものもあります。同様に、インテントのフラグとして使用できる起動モードの中には、マニフェストで定義できないものもあります。
+
+</p>
+
+
+<h4 id="ManifestForTasks">マニフェスト ファイルを使用する</h4>
+
+<p>マニフェスト ファイルでアクティビティを宣言する際に、<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> エレメントの <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 属性を使ってアクティビティをタスクに関連付ける方法を定義できます。
+
+
+</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 属性は、アクティビティをタスク内で起動する方法についての指示を定めます。
+
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">launchMode</a></code> 属性には、次の 4 つの起動モードを割り当てることができます。
+
+</p>
+
+<dl>
+<dt>{@code "standard"}（デフォルトのモード）</dt>
+  <dd>デフォルトの設定です。システムは、開始されたタスクからアクティビティの新しいインスタンスをタスク内に作成し、インテントを渡します。
+アクティビティは複数回インスタンス化できます。各インスタンスは異なるタスクに所属でき、1 つのタスクは複数のインスタンスを持つことができます。
+</dd>
+<dt>{@code "singleTop"}</dt>
+  <dd>アクティビティのインスタンスが現在のタスクの一番上に既に存在する場合は、システムはアクティビティの新しいインスタンスを作成せずに、{@link android.app.Activity#onNewIntent onNewIntent()} メソッドを呼び出して、インテントをそのインスタンスに渡します。
+
+
+アクティビティは複数回インスタンス化できます。各インスタンスは異なるタスクに所属でき、1 つのタスクは複数のインスタンスを持つことができます（バックスタックの一番上にあるアクティビティがそのアクティビティの既存のインスタンスで<em>ない</em>場合のみ）。
+
+
+  <p>たとえば、タスクのバックスタックがアクティビティ B、C、そしてアクティビティ D を一番上に持つルート アクティビティ A で構成されているとします（スタックは A-B-C-D で D が一番上）。
+D タイプのアクティビティにインテントが届きます。もし D の起動モードがデフォルトの {@code "standard"} である場合は、そのクラスの新しいインスタンスが起動し、スタックは A-B-C-D-D となります。しかし、D の起動モードが {@code "singleTop"} である場合は、スタックの一番上にある D の既存のインスタンスが {@link android.app.Activity#onNewIntent onNewIntent()} を介してインテントを受け取ります &mdash; この場合、スタックは A-B-C-D のままとなります。ただし、B タイプのアクティビティのインテントが届くと、その起動モードが {@code "singleTop"} であっても、B の新しいインスタンスがスタックに追加されます。
+
+
+
+
+
+</p>
+  <p class="note"><strong>注:</strong> アクティビティの新しいインスタンスが作成されると、ユーザーは [<em>戻る</em>] ボタンを押して前のアクティビティに戻ることができます。
+しかし、アクティビティの既存のインスタンスが新しいインテントに対応すると、ユーザーは、新しいインテントが {@link android.app.Activity#onNewIntent onNewIntent()} で届く前の状態に [<em>戻る</em>] ボタンを押して戻ることはできません。
+
+
+
+
+</p>
+</dd>
+
+<dt>{@code "singleTask"}</dt>
+  <dd>システムは新しいタスクを作成し、新しいタスクのルートにアクティビティをインスタンス化します。しかし、そのアクティビティのインスタンスが別のタスクに既に存在する場合は、システムは新しいインスタンスを作成せずに、{@link android.app.Activity#onNewIntent onNewIntent()} メソッドを呼び出して、インテントを既存のインスタンスに渡します。
+
+
+同時に存在できるアクティビティのインスタンスは 1 つだけです。
+
+  <p class="note"><strong>注:</strong> アクティビティは新しいタスク内で開始されますが、ユーザーは [<em>戻る</em>] ボタンを押して前のアクティビティに戻ることができます。
+</p></dd>
+<dt>{@code "singleInstance"}</dt>
+  <dd>システムが、他のアクティビティをインスタンスを保持しているタスクで起動しないことを除いて {@code "singleTask"} と同じです。
+アクティビティは、常にタスクの唯一の構成要素となります。このアクティビティによって開始されたアクティビティは別のタスクで開きます。
+</dd>
+</dl>
+
+
+<p>たとえば、Android Browser アプリケーションは、<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> エレメントの {@code singleTask} 起動モードを指定することによって、ウェブブラウザ アクティビティを常に自身のタスクで開くことを宣言しています。これは、開発されたアプリケーションが Android Browser を開くインテントを発行すると、そのアクティビティがアプリケーションのタスクには配置<em>されない</em>ことを意味します。
+
+
+
+代わりに、Android Browser の新しいタスクが開始されるか、Android Browser に既に実行中のバックグラウンド タスクがある場合は、そのタスクがフォアグラウンドに移動し、新しいインテントに対応します。
+
+</p>
+
+<p>アクティビティを新しいタスク内で開始するかアクティビティを起動したアクティビティと同じタスクで開始するかにかかわらず、ユーザーは [<em>戻る</em>] ボタンを押して前のアクティビティに戻ることができます。
+ただし、{@code singleTask} 起動モードを設定したアクティビティを開始し、そのアクティビティのインスタンスがバックグラウンド タスクに存在する場合は、そのタスク全体がフォアグラウンドに移動します。
+
+この時点で、バックスタックの一番上に、フォアグラウンドに移動したタスクのすべてのアクティビティが含まれてます。
+
+図 4 は、このタイプのシナリオを示しています。</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack_singletask_multiactivity.png" alt="" />
+<p class="img-caption"><strong>図 4.</strong>「singleTask」起動モードを持つアクティビティをバックスタックに追加する方法を示しています。
+アクティビティが自身のバックスタックを持つバックグラウンド タスクの一部である場合は、バックスタック全体がフォアグラウンドに移動し、現在のタスクの上に置かれます。
+
+</p>
+
+<p>マニフェスト ファイルでの起動モードの使用の詳細については、<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> エレメントのドキュメントをご覧ください。{@code launchMode} 属性と利用できる値について詳しく説明しています。
+
+
+</p>
+
+<p class="note"><strong>注:</strong> 次のセクションで説明しますが、<a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 属性を使ってアクティビティに指定する動作は、アクティビティを開始するインテントに含まれるフラグによって上書きされる場合があります。
+
+</p>
+
+
+
+<h4 id="#IntentFlagsForTasks">インテント フラグを使用する</h4>
+
+<p>アクティビティの開始時に、{@link android.app.Activity#startActivity startActivity()} に渡すインテントにフラグを含めることによってアクティビティとタスクのデフォルトの関連付けを変更できます。
+
+以下は、デフォルトの動作を変更するために使用できるフラグです。
+</p>
+
+<p>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</dt>
+    <dd>新しいタスクでアクティビティを開始します。開始しようとしているアクティビティに対してタスクが既に実行されている場合は、そのタスクの最新の状態が復元されてフォアグラウンドに移動し、アクティビティが {@link android.app.Activity#onNewIntent onNewIntent()} で新しいインテントを受け取ります。
+
+
+    <p>この手順は、上述のセクションで説明した {@code "singleTask"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> の値の動作と同じものです。
+</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</dt>
+    <dd>開始されるアクティビティが（バックスタックの一番上にある）現在のアクティビティである場合は、アクティビティの新しいインスタンスを作成する代わりに、既存のインスタンスが {@link android.app.Activity#onNewIntent onNewIntent()} の呼び出しを受け取ります。
+
+
+    <p>この手順は、上述のセクションで説明した {@code "singleTop"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> の値の動作と同じものです。
+</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</dt>
+    <dd>開始されるアクティビティが既に現在のタスクを実行している場合は、そのアクティビティの新しいインスタンスを起動する代わりに、上に置かれたその他すべてのアクティビティを破棄し、{@link android.app.Activity#onNewIntent onNewIntent()} を介してこのインテントを（一番上に移動した）アクティビティの再開されたインスタンスに渡します。
+
+
+
+    <p>この動作を起こす <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 属性には値はありません。
+</p>
+    <p>ほとんどのケースで {@code FLAG_ACTIVITY_CLEAR_TOP} は {@code FLAG_ACTIVITY_NEW_TASK} と併用されます。同時に使用することで、これらのフラグは、別のタスクにある既存のアクティビティを捜し出し、インテントに対応できる位置に置く手段を提供します。
+
+
+ </p>
+    <p class="note"><strong>注:</strong> 指定されたアクティビティの起動モードが {@code "standard"} である場合は、やはりスタックから削除されます。その場所に、渡されるインテントに対応する新しいインスタンスが開始されます。
+
+
+これは、起動モードが {@code "standard"} である場合は、新しいインテントに対して常に新しいインスタンスが作成されるためです。
+ </p>
+</dd>
+</dl>
+
+
+
+
+
+<h3 id="Affinities">アフィニティを処理する</h3>
+
+<p><em>アフィニティ</em>は、アクティビティの所属が望ましいタスクを示します。 デフォルトでは、同じアプリケーションのすべてアクティビティに相互のアフィニティが設定されています。
+このため、同じアプリケーションのすべてのアクティビティは、デフォルトで同じタスクに属します。
+しかし、アクティビティのデフォルトのアフィニティは変更できます。
+異なるアプリケーションに定義されているアクティビティがアフィニティを共有したり、同じアプリケーションに定義されたアクティビティに別のタスクのアフィニティを割り当てたりすることができます。
+
+</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> エレメントの <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a> 属性を使って、任意のアクティビティのアフィニティを変更できます。
+
+</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a> 属性には文字列を指定します。これは、<a href="{@docRoot}guide/topics/manifest/manifest-element.html">{@code &lt;manifest&gt;}</a> エレメントに宣言されたデフォルトのパッケージ名とは異なる一意のものでなければなりません。理由は、システムがアプリケーションに対するデフォルトのタスク アフィニティを識別するためにこの名前を使用するためです。
+
+
+
+
+</p>
+
+<p>アフィニティは、以下の 2 つの状況で役立ちます。</p>
+<ul>
+  <li>アクティビティを開始するインテントが {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK} フラグを含んでいる場合
+
+
+
+<p>新しいアクティビティは、デフォルトで、{@link android.app.Activity#startActivity startActivity()} を呼び出したアクティビティのタスクで開始されます。
+呼び出し元と同じバックスタックにプッシュされます。
+しかし、{@link android.app.Activity#startActivity startActivity()} に渡されたインテントに {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK} フラグが含まれると、システムは新しいアクティビティを収容する別のタスクを捜します。
+
+
+これは、通常新しいタスクですが、新しいタスクである必要はありません。
+新しいアクティビティとして同じアフィニティを持つ既存のタスクが存在する場合は、アクティビティはそのタスクで開始されます。
+存在しない場合は、新しいタスクを開始します。</p>
+
+<p>このフラグによってアクティビティが新しいタスクを開始し、ユーザーが [<em>ホーム</em>] ボタンを押してタスクを離れる場合には、ユーザーがそのタスクに戻るための手段が必要です。
+
+エンティティの中には（通知マネージャーなど）、自身の一部としてではなく、常に外部タスクでアクティビティを開始するものがあります。そのために、これらのエンティティが {@link android.app.Activity#startActivity startActivity()} に渡すインテントには常に {@code FLAG_ACTIVITY_NEW_TASK} が含まれます。このフラグを使った外部エンティティにより起動される可能性があるアクティビティがある場合は、起動アイコンなどを使って、アクティビティが開始したタスクにユーザーが戻れるよう独立した手段を確保します。（タスクのルート アクティビティには {@link android.content.Intent#CATEGORY_LAUNCHER} インテント フィルタがあります。後述の<a href="#Starting">タスクを開始する</a>セクションをご覧ください）。
+
+
+
+
+
+
+</p>
+</li>
+
+  <li>アクティビティの <a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">{@code allowTaskReparenting}</a> 属性が {@code "true"} に設定されている場合。
+
+  <p>この場合は、タスクがフォアグラウンドに移動した時に、アクティビティは自身が開始したタスクから、アフィニティがあるタスクへと移動できます。
+</p>
+  <p>たとえば、選ばれた都市の天気を予報するアクティビティが旅行アプリケーションの一部として定義されているケースを考えてみましょう。
+このアクティビティは、アプリケーション内のその他のアクティビティと同じアフィニティ（デフォルトのアプリケーション アフィニティ）を持ち、この属性による親への再割り当てが許可されています。いずれかのアクティビティにより開始された天気予報アクティビティは、最初はそのアクティビティと同じタスクに属しています。
+
+
+しかし、旅行アプリケーションのタスクがフォアグラウンドに移動すると、天気予報アクティビティはそのタスクに再度割り当てられ、タスク内に表示されます。
+</p>
+</li>
+</ul>
+
+<p class="note"><strong>ヒント:</strong> {@code .apk} ファイルがユーザーの視点で 1 つ以上の「アプリケーション」を含んでいる場合は、各「アプリケーション」に関連付けられたアクティビティに <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a> 属性を使って異なるアフィニティを割り当てることをお勧めします。
+
+</p>
+
+
+
+<h3 id="Clearing">バックスタックをクリアする</h3>
+
+<p>ユーザーがタスクを長時間離れると、システムはルート アクティビティを除くすべてのアクティビティをタスクからクリアします。
+ユーザーが再びタスクに戻ると、ルート アクティビティのみが復元されます。システムがこの動作を行うのは、しばらく時間が経過した後は、ユーザーが前に行っていた作業を放棄した可能性が高く、新しいことを始めるためにタスクに戻ったとみなされるためです。
+
+ </p>
+
+<p>この動作を変更するために、以下のアクティビティ属性を使用できます。 </p>
+
+<dl>
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#always">alwaysRetainTaskState</a></code>
+</dt>
+<dd>タスクのルート アクティビティでこの属性が {@code "true"} に設定されていると、上記のデフォルトの動作は発生しません。長時間が経過しても、タスクはすべてのアクティビティをスタックに保持します。
+
+</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#clear">clearTaskOnLaunch</a></code></dt>
+<dd>タスクのルート アクティビティでこの属性が {@code "true"} に設定されている場合、ユーザーがタスクを離れて戻るたびに、スタックがルート アクティビティまでクリアされます。
+
+つまり、<a href="{@docRoot}guide/topics/manifest/activity-element.html#always">{@code alwaysRetainTaskState}</a> の逆の動作となります。
+
+ユーザーがタスクをほんの少しの間離れた場合でも、タスクは常に初期状態に戻ります。
+</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#finish">finishOnTaskLaunch</a></code>
+</dt>
+<dd>この属性は、<a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">{@code clearTaskOnLaunch}</a> に似ていますが、タスク全体ではなく 1 つのアクティビティに作用します。
+
+ルート アクティビティを含むあらゆるアクティビティを消すことができます。
+この属性が {@code "true"} に設定されていると、アクティビティは現在のセッションが開かれている間のみタスクの一部として留まります。
+ユーザーがタスクから離れて戻ると、アクティビティは消えています。
+</dd>
+</dl>
+
+
+
+
+<h3 id="Starting">タスクを開始する</h3>
+
+<p>指定するアクションとして {@code "android.intent.action.MAIN"}、指定するカテゴリとして {@code "android.intent.category.LAUNCHER"} を持つインテント フィルタを付加することによって、アクティビティをタスクのエントリ ポイントとして設定できます。
+
+
+次に例を示します。</p>
+
+<pre>
+&lt;activity ... &gt;
+    &lt;intent-filter ... &gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+    ...
+&lt;/activity&gt;
+</pre>
+
+<p>この種類のインテント フィルタを使うことによって、アクティビティのアイコンとラベルがアプリケーション ランチャーに表示されるようになります。これにより、ユーザーは、アクティビティを起動し、アクティビティの起動後は、作成されたタスクにいつでも戻ることができるようになります。
+
+
+</p>
+
+<p>ユーザーがタスクを離れた後に、このアクティビティ ランチャーを使って戻ってくることが可能でなければならないため、2 番目の機能が重要になります。
+アクティビティが {@link android.content.Intent#ACTION_MAIN} と {@link android.content.Intent#CATEGORY_LAUNCHER} フィルタを持つ場合のみに、アクティビティが常にタスクを開始することを示す {@code "singleTask"} と {@code "singleInstance"} の 2 つの<a href="#LaunchModes">起動モード</a>を使用すべきなのはこのためです。
+
+
+
+たとえば、フィルタがない場合にどうなるのかを想像してみてください。
+インテントが {@code "singleTask"} アクティビティを起動し、新しいタスクを開始し、ユーザーがそのタスクでしばらくの間作業を行います。
+その後、ユーザーは [<em>ホーム</em>] ボタンを押します。
+タスクはバックグラウンドに移動し、見えなくなります。タスクはアプリケーション ランチャーに表示されていないため、この状態ではユーザーがタスクに戻る手段がありません。
+</p>
+
+<p>ユーザーがアクティビティに戻るのを防ぐには、<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> エレメントの <a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">{@code finishOnTaskLaunch}</a> を {@code "true"} に設定します（<a href="#Clearing">スタックをクリアする</a>をご覧ください）。
+
+
+
+</p>
+
+<p>オーバービュー画面でのタスクとアクティビティの表示方法と管理方法の詳細については、「<a href="{@docRoot}guide/components/recents.html">オーバービュー画面</a>」をご覧ください。
+
+</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how to use intents to
+activate other application components and publish the intents to which your components
+respond, continue with the <b><a
+href="{@docRoot}guide/components/intents-filters.html">Intents and Intent
+Filters</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/ja/guide/index.jd b/docs/html-intl/intl/ja/guide/index.jd
new file mode 100644
index 0000000..07688b6
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/index.jd
@@ -0,0 +1,74 @@
+page.title=Android 入門
+
+@jd:body
+
+
+<div class="sidebox" style="width:220px"><!-- width to match col-4 below -->
+<p>アプリの動作方法について学ぶには、「<a href="{@docRoot}guide/components/fundamentals.html">App Fundamentals</a>」をご覧ください。
+</p>
+<p>今すぐコーディングを始める場合は、「<a href="{@docRoot}training/basics/firstapp/index.html">Building Your First App</a>」をご覧ください。</p>
+</div>
+
+<p>Android は、モバイル端末用の画期的なアプリやゲームを Java 言語環境でビルドできる、充実したアプリケーション フレームワークを提供します。
+左側のナビゲーションに表示されているドキュメントには、さまざまな Android API を使ってアプリをビルドする詳しい方法が記載されています。
+</p>
+
+<p>Android 開発の経験がない場合は、Android アプリのフレームワークについて次の基本的な概念を理解していることが重要になります。
+</p>
+
+
+<div class="landing-banner">
+
+<div class="col-6">
+
+<h4>アプリには複数のエントリ ポイントがある</h4>
+
+<p>Android のアプリは、個別に呼び出し可能な異なるコンポーネントを組み合わせてビルドされます。
+たとえば、1 つの<em>アクティビティ</em>が 1 つの画面でユーザー インターフェースを提供し、<em>サービス</em>がバックグラウンドで個別に処理を実行します。
+
+</p>
+
+<p><em>インテント</em>を使って、1 つのコンポーネントから別のコンポーネントを開始できます。地図アプリで住所を表示するアクティビティなどのように、別のアプリでコンポーネントを開始することもできます。
+このモデルでは、1 つのアプリに複数のエントリ ポイントを提供し、あらゆるアプリを他のアプリが呼び出すアクションの「デフォルト」として動作させることができます。
+
+</p>
+
+
+<p><b>詳細を見る</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/components/fundamentals.html">App Fundamentals</a>
+<li><a href="{@docRoot}guide/components/intents-filters.html">インテントとインテント フィルタ</a>
+<li><a href="{@docRoot}guide/components/activities.html">Activities</a>
+</ul>
+
+</div>
+
+
+<div class="col-6">
+
+<h4>さまざまな端末に対応するアプリ</h4>
+
+<p>Android は、さまざまな端末の構成に独自のリソースを提供できる柔軟なアプリ フレームワークを提供します。
+たとえば、画面サイズごとに個別の XML レイアウト ファイルを作成し、システムが使用中の端末の画面サイズに基づいて適用するレイアウトを決定します。
+
+</p>
+
+<p>アプリの機能に特定のハードウェア（カメラなど）が必要な場合は、実行時に端末機能の使用可能状況をクエリできます。
+必要に応じて、アプリに必要な機能を宣言することもできます。これによって、Google Play ストアなどのアプリ マーケットでは、宣言した機能に対応していない端末へのインストールが許可されません。
+
+</p>
+
+
+<p><b>詳細を見る</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/practices/compatibility.html">Device Compatibility</a>
+<li><a href="{@docRoot}guide/topics/resources/overview.html">リソースの概要</a>
+<li><a href="{@docRoot}guide/topics/ui/overview.html">ユーザー インターフェースの概要</a>
+</ul>
+
+</div>
+
+</div><!-- end landing-banner -->
+
+
+
diff --git a/docs/html-intl/intl/ja/guide/topics/manifest/manifest-intro.jd b/docs/html-intl/intl/ja/guide/topics/manifest/manifest-intro.jd
new file mode 100644
index 0000000..7d9e8ac
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/manifest/manifest-intro.jd
@@ -0,0 +1,517 @@
+page.title=アプリ マニフェスト
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本書の内容</h2>
+<ol>
+<li><a href="#filestruct">マニフェスト ファイルの構造</a></li>
+<li><a href="#filec">ファイルの規則</a>
+<li><a href="#filef">ファイルの特徴</a>
+	<ol>
+	<li><a href="#ifs">インテント フィルタ</a></li>
+	<li><a href="#iconlabel">アイコンとラベル</a></li>
+	<li><a href="#perms">パーミッション</a></li>
+	<li><a href="#libs">ライブラリ</a></li>
+	</ol></li>
+</ol>
+</div>
+</div>
+
+<p>
+  すべてのアプリケーションには、そのルート ディレクトリに AndroidManifest.xml ファイル（名前はこのまま）が必要です。
+ <span itemprop="description">マニフェスト ファイルはアプリに関する重要な情報を Android システムに提示します。これは、システムがアプリのコードを実行する前に必要な情報です。
+
+
+</span> その他、マニフェスト ファイルでは次のことを行います。
+</p>
+
+<ul>
+<li>アプリケーションの Java パッケージ名を指定します。パッケージ名は、アプリケーションの一意の識別子としての機能を果たします。
+</li>
+
+<li>アプリケーションのコンポーネント（アプリケーションを構成するアクティビティ、サービス、ブロードキャスト レシーバー、コンテンツ プロバイダ）を記述します。
+
+各コンポーネントを実装するクラスの名前を指定し、その機能（対応可能な {@link android.content.Intent Intent} メッセージなど）を公開します。
+
+これらの宣言によって、Android システムは、どんなコンポーネントがあり、それらのコンポーネントがどのような条件で起動されるのかを把握できます。
+</li>
+
+<li>アプリケーション コンポーネントをホストするプロセスを決定します。</li>  
+
+<li>アプリケーションが API の保護された部分にアクセスしたり他のアプリケーションとやり取りしたりする際に必要となるパーミッションを宣言します。
+</li>  
+
+<li>他のアプリケーションがアプリケーションのコンポーネントとやり取りするために必要なパーミッションを宣言します。
+</li>
+
+<li>アプリケーションの実行時にプロファイリングやその他の情報を提供する {@link android.app.Instrumentation} クラスを記載します。
+これらの宣言は、アプリケーションの開発時やテスト時にのみマニフェストに含まれ、アプリケーションの公開前に削除されます。
+
+</li>
+
+<li>アプリケーションに必要な Android API の最小限のレベルを宣言します。
+</li>
+
+<li>アプリケーションにリンクする必要があるライブラリを記載します。</li>
+</ul>
+
+
+<h2 id="filestruct">マニフェスト ファイルの構造</h2>
+
+<p>
+次の図は、マニフェスト ファイルの一般的な構造とファイルに含むことができるすべてのエレメントを示します。
+各エレメントとそれぞれの属性はすべて別のファイルに記述されます。
+エレメントの詳細を見るには、図中、図の下にあるアルファベット順のエレメント一覧、またはその他の説明文に表示されているエレメント名をクリックしてください。
+
+
+ 
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration /&gt;</a>  <!-- ##api level 3## -->
+    <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html">&lt;compatible-screens /&gt;</a>  <!-- ##api level 9## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-gl-texture-element.html">&lt;supports-gl-texture /&gt;</a>  <!-- ##api level 11## -->
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;/activity&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;/activity-alias&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data/&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;/service&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;/receiver&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/path-permission-element.html">&lt;path-permission /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;/provider&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library /&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;/application&gt;</a>
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;/manifest&gt;</a>
+</pre>
+
+<p>
+以下は、マニフェスト ファイルに含むことができるすべてのエレメントをアルファベット順に並べたものです。
+使用が許可されているのはこれらのエレメントのみです。独自のエレメントや属性は追加できません。
+  
+</p>
+
+<p style="margin-left: 2em">
+<code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration&gt;</a></code>  <!-- ##api level 3## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></code>
+</p>
+
+
+    
+
+<h2 id="filec">ファイルの規則</h2>
+
+<p>
+マニフェスト ファイルに含まれるエレメントと属性には、通常、次の規則とルールが適用されます。
+
+</p>
+
+<dl>
+<dt><b>エレメント</b></dt>
+<dd>必須のエレメントは<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> と <code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> のみです。両方のエレメントを提示する必要があり、使用できるのはそれぞれ 1 回のみです。
+
+
+その他のほとんどのエレメントは、複数回使ってもまったく使わなくてもかまいませんが、意味のあるマニフェストを行うにはいくつかのエレメントが必要です。
+
+
+
+
+<p>
+内容のあるエレメントには他のエレメントが含まれているためです。すべての値は属性によって設定され、エレメント内に文字データが設定されることはありません。
+
+</p>
+
+<p>
+同じレベルにあるエレメントに順番はありません。たとえば、<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> や <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>、<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> エレメントは、どのような順で並べてもかまいません。
+
+
+
+（<code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code> エレメントは例外となります。
+
+エイリアスとなっている <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> のすぐ後に記述する必要があります）。
+
+
+</p></dd>
+
+<dt><b>属性</b></dt>
+<dd>正式には、すべての属性はオプションです。しかし、エレメントが目的を達成するために設定しなければならない属性もあります。
+このドキュメントはガイドとしてお使いください。
+真の意味でオプションの属性には、デフォルト値または指定がない場合の動作が記述されています。
+
+
+<p>ルートの <code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> エレメントの属性の一部を除き、すべての属性名は {@code android:} 接頭辞で始まります（例: {@code android:alwaysRetainTaskState}）。
+
+
+この接頭辞は共通であるため、ドキュメントで属性が名前で参照されている場合は通常省略されます。
+
+</p></dd>
+
+<dt><b>クラス名の宣言</b></dt>
+<dd>多くのエレメントは Java オブジェクトと一致しています。これらのエレメントには、アプリケーション自体（<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> エレメント）とその主要なコンポーネントであるアクティビティ（<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>）、サービス（<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>）、ブロードキャスト レシーバー（<code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>）やコンテンツ プロバイダ（<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>）が含まれます。
+
+
+
+
+
+
+
+
+
+  
+
+<p>
+サブクラスを定義する場合は、コンポーネント クラス（{@link android.app.Activity}、{@link android.app.Service}、{@link android.content.BroadcastReceiver}、{@link android.content.ContentProvider}）でいつも行うように、サブクラスは {@code name} 属性で宣言されます。
+
+
+この名前には、完全なパッケージ名を含む必要があります。
+たとえば、{@link android.app.Service} サブクラスの宣言は以下のようになります。
+
+</p>
+
+<pre>&lt;manifest . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name="com.example.project.SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+ただし、簡素化する方法として、文字列の最初の文字がピリオドの場合、文字列はアプリケーションのパッケージ名に付加されます（<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> エレメントの <code><a href="{@docRoot}guide/topics/manifest/manifest-element.html#package">package</a></code> 属性によって指定されるため）。
+
+
+
+
+以下は、上記のものと同じ内容です。 
+</p>
+
+<pre>&lt;manifest package="com.example.project" . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name=".SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+コンポーネントの開始時に、Android は名前が指定されたサブクラスのインスタンスを作成します。サブクラスが指定されていない場合は、基底クラスのインスタンスを作成します。
+
+</p></dd>
+
+<dt><b>複数の値</b></dt>
+<dd>1 つ以上の値が指定されている場合は、1 つのエレメントに複数の値が記載されているのではなく、エレメントが繰り返されているケースがほとんどです。
+たとえば、インテント フィルタには複数のアクションが記載されている場合があります。
+
+
+<pre>&lt;intent-filter . . . &gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.INSERT" /&gt;
+    &lt;action android:name="android.intent.action.DELETE" /&gt;
+    . . .
+&lt;/intent-filter&gt;</pre></dd>
+
+<dt><b>リソースの値</b></dt>
+<dd>属性には、ユーザーに対して表示する値を含むものもあります。たとえば、アクティビティのラベルやアイコンです。
+これらの属性の値は、ローカライズされていなければならないため、リソースまたはテーマから設定する必要があります。
+リソースの値は、以下の形式で記述されます。
+</p>
+
+<p style="margin-left: 2em">{@code @[<i>package</i>:]<i>type</i>:<i>name</i>}</p>
+
+<p>
+リソースがアプリケーションと同じパッケージ内にある場合は package 名を省略できます。type はリソースのタイプ（「string」や「drawable」など）、name は特定のリソースの名前です。<i></i>
+<i></i>
+<i></i>次に例を示します。
+
+</p>
+
+<pre>&lt;activity android:icon="@drawable/smallPic" . . . &gt</pre>
+
+<p>
+テーマからの値も同様の方法で表記されますが、冒頭は '{@code @}' ではなく '{@code ?}' となります。
+
+</p>
+
+<p style="margin-left: 2em">{@code ?[<i>package</i>:]<i>type</i>:<i>name</i>}
+</p></dd>
+
+<dt><b>文字列の値</b></dt>
+<dd>属性値が文字列で文字をエスケープする場合はダブル バックスラッシュ（'{@code \\}'）を使う必要があります。たとえば、改行は '{@code \\n}'、Unicode の文字は '{@code \\uxxxx}' となります。
+
+</dd>
+</dl>
+
+
+<h2 id="filef">ファイルの特徴</h2>
+
+<p>
+以下のセクションでは、Android の機能がどのようにマニフェスト ファイルに反映されるのかを説明します。
+
+</p>
+
+
+<h3 id="ifs">インテント フィルタ</h3>
+
+<p>
+アプリケーションのコア コンポーネント（アクティビティ、サービス、ブロードキャスト レシーバー）はインテントによって開始されます。
+<i></i>インテントとは、目的とするアクションを記述している情報の束（{@link android.content.Intent} オブジェクト）で、使用されるデータやアクションを実行するコンポーネントのカテゴリ、その他の関連する指示を含みます。
+
+
+Android は、インテントに対応する適切なコンポーネントを捜し出し、必要に応じて新しいインスタンスを起動し、それにインテント オブジェクトを渡します。
+
+
+
+</p>
+
+<p>
+コンポーネントはインテント フィルタを使ってその機能（対応できるインテントの種類）を通知します。
+<i></i>Android システムはコンポーネントを起動する前にコンポーネントが対応できるインテントを知っておく必要があるため、インテント フィルタはマニフェスト ファイルの <code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code> エレメントで指定されます。
+
+
+
+コンポーネントは、それぞれが異なる機能を記述しているフィルタをいくつでも持つことができます。
+
+</p>
+
+<p>
+対象となるコンポーネントの名前を明示的に指定しているインテントは、コンポーネントを起動します。この場合、フィルタは適用されません。
+対象の名前が指定されていない場合は、コンポーネントのフィルタを通過したインテントのみがコンポーネントを起動できます。
+
+
+</p>
+
+<p>
+インテント フィルタに対してインテント オブジェクトをテストする方法については、「<a href="{@docRoot}guide/components/intents-filters.html">インテントとインテント フィルタ</a>」ドキュメントをご覧ください。
+
+
+
+</p>
+
+
+<h3 id="iconlabel">アイコンとラベル</h3>
+
+<p>
+エレメントは、小さなアイコンやテキスト ラベルをユーザーに表示するために、{@code icon} と {@code label} 属性を持つ場合があります。
+画面に長い説明文を表示するための {@code description} 属性を持つエレメントもあります。
+
+たとえば、<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> エレメントはこれらすべての属性を持っています。これによって、アプリケーションがユーザーにパーミッションを付与するかどうかを尋ねる際に、ユーザーに対して、パーミッションを示すアイコン、パーミッションの名前、パーミッションについての説明文を提示できます。
+
+
+
+
+
+</p>
+
+<p>
+どの場合においても、属性を含むエレメントに設定されたアイコンとラベルが、そのすべてのサブエレメントの {@code icon} と {@code label} のデフォルト設定となります。
+そのため、<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> エレメントに設定されたアイコンとラベルは、アプリケーションの各コンポーネントのデフォルトのアイコンとラベルとなります。
+
+
+同様に、コンポーネントに設定されたアイコンとラベルは、&mdash; <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> エレメントのように &mdash; それぞれのコンポーネントの <code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code> エレメントのデフォルト設定となります。
+
+
+
+
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> エレメントにラベルを設定し、アクティビティとそのインテント フィルタに設定しない場合は、アプリケーション ラベルはアクティビティとインテント フィルタの両方のラベルとして取り扱われます。
+
+
+
+
+</p>
+
+<p>
+インテント フィルタに設定されるアイコンとラベルは、コンポーネントがユーザーに対して提示されるときはいつでも、そのフィルタにより通知されている機能を提供するコンポーネントを示すために使用されます。
+
+たとえば、「{@code android.intent.action.MAIN}」と「{@code android.intent.category.LAUNCHER}」が設定されているフィルタは、アプリケーションを起動するアクティビティを通知しています &mdash; つまり、アプリケーション ランチャーに表示されるということです。
+
+
+
+そのため、このフィルタに設定されているアイコンとラベルがランチャーに表示されるものとなります。
+
+</p>
+
+
+<h3 id="perms">パーミッション</h3>
+
+<p>
+パーミッションは、コードの一部や端末上のデータへのアクセスを制限する機能を提供します。<i></i>
+   誤用や悪用によってユーザーの利用を妨げたり有害な作用をもたらす恐れのある重要なデータやコードを保護したりするための制限を設定します。
+  
+</p>
+
+<p>
+それぞれのパーミッションは一意のラベルで識別されています。通常、ラベルは制限されるアクションを示します。
+以下は、Android により定義されているパーミッションの例です。
+
+</p>
+
+<p style="margin-left: 2em">{@code android.permission.CALL_EMERGENCY_NUMBERS}
+<br/>{@code android.permission.READ_OWNER_DATA}
+<br/>{@code android.permission.SET_WALLPAPER}
+<br/>{@code android.permission.DEVICE_POWER}</p>
+
+<p>
+1 つの機能は、1 つのパーミッションでのみ保護できます。
+</p>
+
+<p>
+アプリケーションがパーミッションにより保護されている機能へのアクセスを必要としている場合は、<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> エレメントをマニフェスト ファイルに記述し、そのパーミッションが必要であることを宣言する必要があります。
+
+
+これによって、アプリケーションが端末にインストールされた際に、インストーラーは、アプリケーションの証明書に署名した関係機関を確認し、場合によってはユーザーに尋ねることで、要求されたパーミッションを付与するかどうかを決定します。 
+ 
+ 
+パーミッションが付与されると、アプリケーションは保護された機能を使用できるようになります。
+
+パーミッションが付与されなかった場合は、アプリケーションは機能にアクセスできず、ユーザーに通知が表示されることもありません。
+ 
+</p>
+
+<p>
+アプリケーションは、パーミッションを使って自身のコンポーネント（アクティビティ、サービス、ブロードキャスト レシーバー、コンテンツ プロバイダ）を保護することもできます。
+Android により定義されているパーミッション（{@link android.Manifest.permission android.Manifest.permission} に記載）や他のアプリケーションにより宣言されたパーミッションであればどれでも使用できます。
+
+
+独自のパーミッションを定義することもできます。新しいパーミッションは、<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> エレメントを使って宣言します。
+
+
+たとえば、次のようにアクティビティを保護できます。
+</p>
+
+<pre>
+&lt;manifest . . . &gt;
+    &lt;permission android:name="com.example.project.DEBIT_ACCT" . . . /&gt;
+    &lt;uses-permission android:name="com.example.project.DEBIT_ACCT" /&gt;
+    . . .
+    &lt;application . . .&gt;
+        &lt;activity android:name="com.example.project.FreneticActivity"
+                  android:permission="com.example.project.DEBIT_ACCT"
+                  . . . &gt;
+            . . .
+        &lt;/activity&gt;
+    &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>
+この例では、{@code DEBIT_ACCT} パーミッションは <code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> エレメントで宣言されているだけではなく、その使用が <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> エレメントで要求されている点に注意してください。
+
+
+
+
+アプリケーション自身によって保護が設定されている場合でも、アプリケーションの他のコンポーネントが保護されたアクティビティを起動するために、その使用を要求する必要があります。
+
+  
+</p>
+
+<p>
+同じ例で、別の場所で宣言されたパーミッションに {@code permission} 属性が設定されている場合（{@code android.permission.CALL_EMERGENCY_NUMBERS} など）は、<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> エレメントを使って再度宣言する必要があります。
+
+
+
+
+その場合も <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> でその使用を要求する必要があります。
+ 
+</p>
+
+<p>
+<code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code> エレメントは、コードに定義されるパーミッションの集まりに対するネームスペースを宣言します。
+
+
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code> エレメントは、パーミッションのセットに対するラベル（マニフェスト ファイルに <code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> エレメントを使って宣言されたもの、その他の場所で宣言されたものの両方）を定義します。
+
+
+
+これは、ユーザーに提示される際のパーミッションのグループ分けのみに影響します。
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code> エレメントでは、パーミッションのグループへの所属は指定されません。グループ名のみが指定されます。
+
+
+パーミッションは、<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> エレメントの <code><a href="{@docRoot}guide/topics/manifest/permission-element.html#pgroup">permissionGroup</a></code> 属性にグループ名を割り当てることによって、グループに配置されます。
+
+
+
+
+
+</p>
+
+
+<h3 id="libs">ライブラリ</h3>
+
+<p>
+すべてのアプリケーションはデフォルトの Android ライブラリにリンクされています。このライブラリには、Activity、Service、Intent、View、Button、Application、ContentProvider などの共通クラスを含む、アプリケーションをビルドするための基本パッケージが含まれています。
+
+
+
+</p>
+
+<p>
+しかし、独自のライブラリに含まれているパッケージもあります。開発中のアプリケーションがこれらのパッケージのコードを使用している場合は、該当するライブラリにリンクするよう明示的に求める必要があります。
+
+この場合は、マニフェスト ファイルに各ライブラリを指定する <code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code> エレメントが別途含まれている必要があります。
+
+（ライブラリ名は該当するパッケージのドキュメントに記載されています）。
+
+</p>
diff --git a/docs/html-intl/intl/ja/guide/topics/providers/calendar-provider.jd b/docs/html-intl/intl/ja/guide/topics/providers/calendar-provider.jd
new file mode 100644
index 0000000..7b97c30
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/providers/calendar-provider.jd
@@ -0,0 +1,1184 @@
+page.title=カレンダー プロバイダ
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>本書の内容</h2>
+    <ol>
+  <li><a href="#overview">基本</a></li>
+  <li><a href="#manifest">ユーザー パーミッション</a></li>
+  <li><a href="#calendar">Calendars テーブル</a>
+<ol>
+      <li><a href="#query">カレンダーへのクエリ</a></li>
+      <li><a href="#modify-calendar">カレンダーの変更</a></li>
+      <li><a href="#insert-calendar">カレンダーの挿入</a></li>
+    </ol>
+  </li>
+  <li><a href="#events">Events テーブル</a>
+<ol>
+      <li><a href="#add-event">イベントの追加</a></li>
+      <li><a href="#update-event">イベントのアップデート</a></li>
+      <li><a href="#delete-event">イベントの削除</a></li>
+    </ol>
+  </li>
+  <li><a href="#attendees">Attendees テーブル</a>
+<ol>
+      <li><a href="#add-attendees">参加者の追加</a></li>
+    </ol>
+  </li>
+  <li><a href="#reminders">Reminders テーブル</a>
+<ol>
+      <li><a href="#add-reminders">リマインダーの追加</a></li>
+    </ol>
+  </li>
+  <li><a href="#instances">Instances テーブル</a>
+  <ol>
+      <li><a href="#query-instances">Instances テーブルへのクエリ</a></li>
+  </ol></li>
+  <li><a href="#intents">カレンダーのインテント</a>
+  <ol>
+      <li><a href="#intent-insert">インテントを使用したイベントの挿入</a></li>
+      <li><a href="#intent-edit">インテントを使用したイベントの編集</a></li>
+      <li><a href="#intent-view">インテントを使用したカレンダー データの参照</a></li>
+    </ol>
+  </li>
+  
+  <li><a href="#sync-adapter">同期アダプタ</a></li>
+</ol>
+
+    <h2>キークラス</h2>
+    <ol>
+      <li>{@link android.provider.CalendarContract.Calendars}</li>
+      <li>{@link android.provider.CalendarContract.Events}</li>
+      <li>{@link android.provider.CalendarContract.Attendees}</li>
+      <li>{@link android.provider.CalendarContract.Reminders}</li>
+    </ol>
+</div>
+</div>
+
+<p>カレンダー プロバイダは、ユーザーのカレンダー イベントのためのリポジトリです。カレンダー プロバイダ API を使用すると、カレンダー、イベント、参加者、リマインダーなどに対するクエリ、挿入、アップデート、削除の操作を実行できます。
+
+</p>
+
+
+<p>カレンダー プロバイダ API は、アプリケーションや同期アダプタで使用できます。ルールは、呼び出しを実行しているプログラムのタイプによって異なります。
+本書では主に、カレンダー プロバイダ API のアプリケーションとしての使用について説明します。
+同期アダプタの場合の違いについては、<a href="#sync-adapter">同期アダプタ</a>をご覧ください。
+
+</p>
+
+
+<p>通常、カレンダー データを読み取ったり書き込んだりするためには、アプリケーションのマニフェストに<a href="#manifest">ユーザー パーミッション</a>で説明している適切なパーミッションが含まれている必要があります。
+
+一般的な操作を簡単に実行できるようにするため、カレンダー プロバイダには、いくつかのインテントが用意されています。これらについては、<a href="#intents">カレンダーのインテント</a>で説明しています。
+
+これらのインテントは、ユーザーをカレンダー アプリケーションに誘導して、イベントを挿入、参照、編集できるようにします。
+ユーザーは、カレンダー アプリケーションを操作した後、元のアプリケーションに戻ります。
+これにより、アプリケーションがパーミッションを要求したり、イベントの参照や作成のためのインターフェースを提供したりする必要がなくなります。
+</p>
+
+<h2 id="overview">基本</h2>
+
+<p><a href="{@docRoot}guide/topics/providers/content-providers.html">コンテンツ プロバイダ</a>は、データを保存してアプリケーションからアクセスできるようにします。
+Android プラットフォームによって提供されるコンテンツ プロバイダ（カレンダー プロバイダを含む）は、一般にリレーショナル データベース モデルに基づくテーブルのセットとしてデータを公開します。このモデルにおいて、各行はレコード、各列は特定のタイプと意味のデータになっています。
+
+アプリケーションと同期アダプタは、ユーザーのカレンダー データを保持するデータベース テーブルの読み取りおよび書き込みアクセスを、カレンダー プロバイダ API を使用して取得できます。
+
+</p>
+
+<p>各コンテンツ プロバイダは、データセットを一意に指定するパブリック URI（{@link android.net.Uri} オブジェクトとしてラップされています）を公開します。
+
+複数のデータセット（複数のテーブル）を制御するコンテンツ プロバイダは、データセットごとに個別の URI を公開します。
+プロバイダの URI はすべて、文字列「content://」で始まります。
+これは、コンテンツ プロバイダによって管理されているデータであることを示します。
+カレンダー プロバイダは、クラス（テーブル）それぞれの URI のための定数を定義します。
+URI の形式は <code><em>&lt;class&gt;</em>.CONTENT_URI</code> です。
+たとえば、{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} のようになります。
+</p>
+
+<p>図 1 に、カレンダー プロバイダのデータモデルを図示します。メイン テーブルとそれらを相互にリンクしているフィールドが示されています。
+</p>
+
+<img src="{@docRoot}images/providers/datamodel.png" alt="Calendar Provider Data Model" />
+<p class="img-caption"><strong>図 1.</strong> カレンダー プロバイダのデータモデル。</p>
+
+<p>ユーザーは複数のカレンダーを持つことができ、カレンダーをそれぞれ異なるタイプのアカウント（Google カレンダー、Exchange など）と関連付けることができます。</p>
+
+<p>{@link android.provider.CalendarContract} は、カレンダーのデータモデルとイベント関連の情報を定義します。データは、次に示すいくつかのテーブルに保存されます。</p>
+
+<table>
+  <tr>
+    <th>テーブル（クラス）</th>
+    <th>説明</th>
+  </tr>
+  <tr>
+    <td><p>{@link android.provider.CalendarContract.Calendars}</p></td>
+    
+    <td>このテーブルは、該当するカレンダー固有の情報を保持します。
+各行には、名前、色、同期情報など、1 つのカレンダーに関する詳細が格納されます。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Events}</td>
+    
+    <td>このテーブルは、該当するイベント固有の情報を保持します。
+各行には、1 つのイベントに関する情報が格納されます&mdash;イベントのタイトル、場所、開始時刻、終了時刻などが該当します。
+
+イベントは、単発だったり繰り返し発生したりすることが考えられます。参加者、リマインダー、拡張プロパティは、個別のテーブルに格納されます。
+これらのテーブルにはそれぞれ、Events テーブルの {@link android.provider.BaseColumns#_ID} を参照する {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} があります。
+
+</td>
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances}</td>
+    
+    <td>このテーブルは、あるイベントの発生ごとの開始時刻と終了時刻を保持します。
+各行は、イベントの発生 1 回を表します。
+単発イベントには、イベントのインスタンスが 1 対 1 で対応します。
+繰り返しのイベントには、そのイベントの複数回の発生それぞれに対応する複数の行が自動生成されます。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Attendees}</td>
+    
+    <td>このテーブルは、イベントの参加者（ゲスト）の情報を保持します。
+各行は、1 回のイベントの 1 人のゲストを表します。
+ゲストのタイプと、ゲストのイベントへの出欠の回答を指定します。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Reminders}</td>
+    
+    <td>このテーブルは、アラートや通知のデータを保持します。
+各行は、1 回のイベントの 1 つのアラートを表します。1 つのイベントが複数のリマインダーを持つことができます。
+1 イベントあたりの最大リマインダー数は {@link android.provider.CalendarContract.CalendarColumns#MAX_REMINDERS} で指定され、指定されたカレンダーを所有する同期アダプタによって設定されます。
+
+
+
+リマインダーは、イベント開始前の分単位で指定され、ユーザーに注意喚起する手段を示す情報を保持します。
+</td>
+  </tr>
+  
+</table>
+
+<p>カレンダー プロバイダ API は、柔軟で効果的な設計になっています。ですが同時に、エンドユーザーにとって使いやすくすることや、カレンダーとそのデータの整合性を保護することが重要です。
+
+次に、そのために API の使用に際して留意すべきことを示します。
+</p>
+
+<ul>
+
+<li><strong>カレンダー イベントの挿入、アップデート、参照</strong>カレンダー プロバイダからイベントの挿入、変更、読み取りを直接実行するためには、適切な<a href="#manifest">パーミッション</a>が必要です。ただし、作成しているのが本格的なカレンダー アプリケーションや同期アダプタではない場合は、そうしたパーミッションを要求する必要はありません。その代わりに、Android のカレンダー アプリケーションがサポートしているインテントを使用し、読み取りと書き込みの操作をそのアプリケーションに引き渡すことができます。インテントを使用すると、アプリケーションがユーザーをカレンダー アプリケーションに誘導し、自動入力されたフォームで目的の操作を実行するようになります。
+操作を完了したユーザーは、アプリケーションに戻されます。一般的な操作をカレンダーを介して実行するようにアプリケーションを設計することで、ユーザーに一貫性のある堅牢なユーザー インターフェースが提供できます。
+
+これが推奨アプローチです。
+詳細については、<a href="#intents">カレンダーのインテント</a>をご覧ください。
+</p>
+
+
+<li><strong>同期アダプタ。</strong>同期アダプタは、ユーザーの端末上にあるカレンダー データを別のサーバーやデータソースと同期します。
+{@link android.provider.CalendarContract.Calendars} テーブルと {@link android.provider.CalendarContract.Events} テーブルには、同期アダプタ用に予約された列があります。プロバイダやアプリケーションがそれらを変更しないようにする必要があります。
+
+
+
+実際には、同期アダプタとしてアクセスしない限り、それらの列は参照できません。
+同期アダプタの詳細については、<a href="#sync-adapter">同期アダプタ</a>をご覧ください。
+</li>
+
+</ul>
+
+
+<h2 id="manifest">ユーザー パーミッション</h2>
+
+<p>カレンダー データを読み込むためには、アプリケーションはマニフェスト ファイルに {@link android.Manifest.permission#READ_CALENDAR} パーミッションを含める必要があります。
+カレンダー データを削除、挿入、アップデートするためには、{@link android.Manifest.permission#WRITE_CALENDAR} パーミッションを含める必要があります。
+
+</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;...&gt;
+    &lt;uses-sdk android:minSdkVersion=&quot;14&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.READ_CALENDAR&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.WRITE_CALENDAR&quot; /&gt;
+    ...
+&lt;/manifest&gt;
+</pre>
+
+
+<h2 id="calendar">Calendars テーブル</h2>
+
+<p>{@link android.provider.CalendarContract.Calendars} テーブルには、個々のカレンダーの詳細情報が格納されます。
+次に示す Calendars の列は、アプリケーションと<a href="#sync-adapter">同期アダプタ</a>のどちらからも書き込み可能です。
+サポートされているすべてのフィールドの一覧については、{@link android.provider.CalendarContract.Calendars} のリファレンスをご覧ください。
+
+</p>
+<table>
+  <tr>
+    <th>定数</th>
+    <th>説明</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#NAME}</td>
+    <td>カレンダーの名前。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#CALENDAR_DISPLAY_NAME}</td>
+    <td>ユーザーに表示されるこのカレンダーの名前。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#VISIBLE}</td>
+    
+    <td>カレンダーが表示対象として選択されているかどうかを示すブール値。値 0 は、このカレンダーに関連付けられているイベントを表示しないことを示します。
+
+値 1 は、このカレンダーに関連付けられているイベントを表示することを示します。
+この値は、{@link android.provider.CalendarContract.Instances} テーブルの行の生成に影響を与えます。
+</td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.CalendarColumns#SYNC_EVENTS}</td>
+    
+    <td>カレンダーを同期してそのイベントを端末に格納するかどうかを示すブール値。
+値 0 は、このカレンダーを同期せず、イベントを端末に格納しないことを指定します。
+値 1 は、このカレンダーのイベントを同期し、イベントを端末に格納することを指定します。
+</td>
+  </tr>
+</table>
+
+<h3 id="query">カレンダーへのクエリ</h3>
+
+<p>次の例は、特定のユーザーが所有するカレンダーを取得する方法を示しています。
+簡潔にするため、この例のクエリ操作はユーザー インターフェース スレッド（「メインスレッド」）内に示されています。
+実際には、メインスレッドではなく非同期スレッドで実行してください。
+詳細については、「<a href="{@docRoot}guide/components/loaders.html">ローダ</a>」をご覧ください。
+データを読み込むだけでなく変更する場合は、{@link android.content.AsyncQueryHandler} をご覧ください。
+
+</p>
+
+
+<pre>
+// Projection array. Creating indices for this array instead of doing
+// dynamic lookups improves performance.
+public static final String[] EVENT_PROJECTION = new String[] {
+    Calendars._ID,                           // 0
+    Calendars.ACCOUNT_NAME,                  // 1
+    Calendars.CALENDAR_DISPLAY_NAME,         // 2
+    Calendars.OWNER_ACCOUNT                  // 3
+};
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_ACCOUNT_NAME_INDEX = 1;
+private static final int PROJECTION_DISPLAY_NAME_INDEX = 2;
+private static final int PROJECTION_OWNER_ACCOUNT_INDEX = 3;</pre>
+  
+
+<div class="sidebox-wrapper"> <div class="sidebox"> <h3>ACCOUNT_TYPE を含める必要がある理由
+</h3> <p>{@link android.provider.CalendarContract.Calendars#ACCOUNT_NAME Calendars.ACCOUNT_NAME} にクエリする場合は、このセクションに {@link android.provider.CalendarContract.Calendars#ACCOUNT_TYPE Calendars.ACCOUNT_TYPE} も含める必要があります。
+
+
+
+これは、指定されたアカウントは <code>ACCOUNT_NAME</code> とその <code>ACCOUNT_TYPE</code> がどちらも与えられることで一意とみなされるからです。
+
+<code>ACCOUNT_TYPE</code> は、そのアカウントが {@link android.accounts.AccountManager} で登録されたときに使用されたアカウント認証システムです。
+
+また、端末アカウントに関連付けられていないカレンダー用に、{@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} という特殊なタイプのアカウントがあります。{@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} アカウントは同期されません。
+
+
+
+</p> </div> </div> 
+
+
+<p> この例の次の部分では、クエリを作成します。クエリの条件は selection に指定しています。
+この例のクエリは、<code>ACCOUNT_NAME</code> が「sampleuser@google.com」で、<code>ACCOUNT_TYPE</code> が「com.google」で、<code>OWNER_ACCOUNT</code> が「sampleuser@google.com」であるカレンダーを検索します。
+
+
+
+ユーザーが所有しているだけでなく参照したことのあるすべてのカレンダーを確認するには、<code>OWNER_ACCOUNT</code> を省略します。このクエリは、データベース クエリが返した結果セットをトラバースするのに使用できる {@link android.database.Cursor} オブジェクトを返します。
+
+
+
+コンテンツ プロバイダでのクエリの使用については、「<a href="{@docRoot}guide/topics/providers/content-providers.html">コンテンツ プロバイダ</a>」をご覧ください。
+</p>
+
+
+<pre>// Run query
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+Uri uri = Calendars.CONTENT_URI;   
+String selection = "((" + Calendars.ACCOUNT_NAME + " = ?) AND (" 
+                        + Calendars.ACCOUNT_TYPE + " = ?) AND ("
+                        + Calendars.OWNER_ACCOUNT + " = ?))";
+String[] selectionArgs = new String[] {"sampleuser@gmail.com", "com.google",
+        "sampleuser@gmail.com"}; 
+// Submit the query and get a Cursor object back. 
+cur = cr.query(uri, EVENT_PROJECTION, selection, selectionArgs, null);</pre>
+
+<p>次のセクションでは、カーソルを使用して結果セットをステップ単位で移動します。例の冒頭で設定した定数を使用して各フィールドの値を返します。
+
+</p>
+    
+<pre>// Use the cursor to step through the returned records
+while (cur.moveToNext()) {
+    long calID = 0;
+    String displayName = null;
+    String accountName = null;
+    String ownerName = null;
+      
+    // Get the field values
+    calID = cur.getLong(PROJECTION_ID_INDEX);
+    displayName = cur.getString(PROJECTION_DISPLAY_NAME_INDEX);
+    accountName = cur.getString(PROJECTION_ACCOUNT_NAME_INDEX);
+    ownerName = cur.getString(PROJECTION_OWNER_ACCOUNT_INDEX);
+              
+    // Do something with the values...
+
+   ...
+}
+</pre>
+  
+<h3 id="modify-calendar">カレンダーの変更</h3>
+
+<p>カレンダーのアップデートを実行する場合、カレンダーの {@link android.provider.BaseColumns#_ID} を、URI（{@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}）の末尾に追加された ID として、または最初の selection 項目として指定できます。
+
+
+
+
+先ほどの selection を <code>&quot;_id=?&quot;</code> で始め、最初の <code>selectionArg</code> をカレンダーの {@link android.provider.BaseColumns#_ID} にする必要があります。
+
+
+URL に含まれる ID をエンコードすることでも、アップデートを実行できます。この例では、カレンダーの表示名をこの（{@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()} を使用する）アプローチで変更しています。
+
+
+
+</p>
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long calID = 2;
+ContentValues values = new ContentValues();
+// The new display name for the calendar
+values.put(Calendars.CALENDAR_DISPLAY_NAME, &quot;Trevor's Calendar&quot;);
+Uri updateUri = ContentUris.withAppendedId(Calendars.CONTENT_URI, calID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);</pre>
+
+<h3 id="insert-calendar">カレンダーの挿入</h2>
+
+<p>カレンダーは主に同期アダプタで管理するように設計されているため、新しいカレンダーは必ず同期アダプタとして挿入してください。
+ほとんどの場合、アプリケーションはカレンダーに対し、表示名の変更のような表面的な変更しかできません。
+アプリケーションがローカル カレンダーを作成する必要がある場合は、{@link android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} として {@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} を使用し、カレンダーの挿入を同期アダプタとして実行することで作成できます。{@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} は、端末アカウントと関連付けられていないカレンダー用の特殊なアカウント タイプです。
+
+
+
+
+
+
+このタイプのカレンダーは、サーバーと同期されません。同期アダプタの詳細については、<a href="#sync-adapter">同期アダプタ</a>をご覧ください。
+</p>
+
+<h2 id="events">Events テーブル</h2>
+
+<p>{@link android.provider.CalendarContract.Events} テーブルには、個々のイベントの詳細情報が格納されます。
+
+イベントを追加、アップデート、削除するためには、アプリケーションは<a href="#manifest">マニフェスト ファイル</a>に {@link android.Manifest.permission#WRITE_CALENDAR} パーミッションを含める必要があります。
+</p>
+
+<p>次に示す Events の列は、アプリケーションと同期アダプタのどちらからも書き込み可能です。
+サポートされているすべてのフィールドの一覧については、{@link android.provider.CalendarContract.Events} のリファレンスをご覧ください。
+</p>
+
+<table>
+  <tr>
+    <th>定数</th>
+    <th>説明</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#CALENDAR_ID}</td>
+    <td>イベントが属するカレンダーの {@link android.provider.BaseColumns#_ID}。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ORGANIZER}</td>
+    <td>イベントの主催者（所有者）のメールアドレス。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE}</td>
+    <td>イベントのタイトル。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION}</td>
+    <td>イベントが開催される場所。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION}</td>
+    <td>イベントの説明。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTSTART}</td>
+    <td>エポックからの UTC ミリ秒単位で表現されたイベント開始時刻。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTEND}</td>
+    <td>エポックからの UTC ミリ秒単位で表現されたイベント終了時刻。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}</td>
+    <td>イベントのタイムゾーン。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_END_TIMEZONE}</td>
+    <td>イベントの終了時刻のタイムゾーン。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DURATION}</td>
+    
+    <td><a href="http://tools.ietf.org/html/rfc5545#section-3.8.2.5">RFC5545</a> 形式でのイベントの期間。たとえば、<code>&quot;PT1H&quot;</code> という値はイベントが 1 時間であること、<code>&quot;P2W&quot;</code> という値は期間が 2 週間であることを示します。
+
+
+ </td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ALL_DAY}</td>
+    
+    <td>値 1 は、そのイベントがローカルのタイムゾーンで定義された終日を占めることを示します。
+値 0 は、1 日のどこかで始まって終わる定例のイベントであることを示します。
+</td>
+
+    
+  </tr>
+  
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RRULE}</td>
+    
+    <td>イベント形式の繰り返し発生ルール。たとえば、<code>&quot;FREQ=WEEKLY;COUNT=10;WKST=SU&quot;</code> のようになります。
+その他の例については、<a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.3">こちら</a>をご覧ください。
+</td>
+    
+  </tr>
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RDATE}</td>
+    <td>イベントの繰り返し発生日。通常、{@link android.provider.CalendarContract.EventsColumns#RDATE} は {@link android.provider.CalendarContract.EventsColumns#RRULE} と組み合わせて、繰り返し発生全体を定義するのに使用します。
+
+
+
+詳細については、<a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.2">RFC5545 の仕様</a>をご覧ください。</td>
+</tr>
+ 
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY}</td>
+    
+    <td>このイベントを埋まっている時間に数えるか、それともスケジュールのやり直しが利く空き時間とみなすか。
+ </td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_MODIFY}</td>
+    <td>ゲストがイベントを変更できるかどうか。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_INVITE_OTHERS}</td>
+    <td>ゲストが他のゲストを招待できるかどうか。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_SEE_GUESTS}</td>
+    <td>ゲストが他の参加者のリストを参照できるかどうか。</td>
+  </tr>
+</table>
+
+<h3 id="add-event">イベントの追加</h3>
+
+<p>アプリケーションが新しいイベントを挿入する場合は、{@link android.content.Intent#ACTION_INSERT INSERT} インテントを使用することをお勧めします。詳細については、<a href="#intent-insert">インテントを使用したイベントの挿入</a>をご覧ください。
+ただし、必要があればイベントを直接挿入できます。
+ここではその方法について説明します。
+</p>
+
+
+<p>新しいイベントを挿入するためのルールは次のとおりです。 </p>
+<ul>
+
+  <li>{@link android.provider.CalendarContract.EventsColumns#CALENDAR_ID} と {@link android.provider.CalendarContract.EventsColumns#DTSTART} を含める必要があります。
+
+</li>
+
+<li>{@link android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE} を含める必要があります。
+システムにインストールされているタイムゾーン ID のリストを取得するには、{@link java.util.TimeZone#getAvailableIDs()} を使用します。
+
+<a href="#intent-insert">インテントを使用したイベントの挿入</a>で説明しているように、{@link android.content.Intent#ACTION_INSERT INSERT} インテントを使用してイベントを挿入している場合、このルールは該当しません&mdash;その場合はデフォルトのタイムゾーンが指定されます。
+
+
+</li>
+  
+  <li>繰り返されないイベントには、{@link android.provider.CalendarContract.EventsColumns#DTEND} を含める必要があります。
+ </li>
+  
+  
+  <li>繰り返されるイベントには、{@link android.provider.CalendarContract.EventsColumns#RRULE} と {@link android.provider.CalendarContract.EventsColumns#RDATE} に加えて {@link android.provider.CalendarContract.EventsColumns#DURATION} を含める必要があります。
+
+
+<a href="#intent-insert">インテントを使用したイベントの挿入</a>で説明しているように、{@link android.content.Intent#ACTION_INSERT INSERT} インテントを使用してイベントを挿入している場合、このルールは該当しません&mdash;その場合は、{@link android.provider.CalendarContract.EventsColumns#RRULE} を {@link android.provider.CalendarContract.EventsColumns#DTEND} と {@link android.provider.CalendarContract.EventsColumns#DTSTART} と組み合わせて使用でき、カレンダー アプリケーションはこれを自動で期間に変換します。
+
+
+
+
+</li>
+  
+</ul>
+
+<p>イベントの挿入の例を次に示します。簡潔にするため、この例は UI スレッドで実行されています。
+実際には、挿入やアップデートは非同期スレッドで実行して、アクションをバックグラウンド スレッドに移してください。
+詳細については、{@link android.content.AsyncQueryHandler} をご覧ください。
+</p>
+
+
+<pre>
+long calID = 3;
+long startMillis = 0; 
+long endMillis = 0;     
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 9, 14, 7, 30);
+startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 9, 14, 8, 45);
+endMillis = endTime.getTimeInMillis();
+...
+
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Events.DTSTART, startMillis);
+values.put(Events.DTEND, endMillis);
+values.put(Events.TITLE, &quot;Jazzercise&quot;);
+values.put(Events.DESCRIPTION, &quot;Group workout&quot;);
+values.put(Events.CALENDAR_ID, calID);
+values.put(Events.EVENT_TIMEZONE, "America/Los_Angeles");
+Uri uri = cr.insert(Events.CONTENT_URI, values);
+
+// get the event ID that is the last element in the Uri
+long eventID = Long.parseLong(uri.getLastPathSegment());
+// 
+// ... do something with event ID
+//
+//</pre>
+
+<p class="note"><strong>注:</strong> イベントの作成後にイベント ID を取得していることに注目してください。
+これがイベント ID を取得する最も簡単な方法です。他のカレンダー操作を実行するためにイベント ID が必要になることはよくあります&mdash;イベントに対する参加者やリマインダーの追加などが該当します。
+
+</p>
+
+
+<h3 id="update-event">イベントのアップデート</h3>
+
+<p>アプリケーションでユーザーによるイベントの編集を許可する場合は、{@link android.content.Intent#ACTION_EDIT EDIT} インテントを使用することをお勧めします。詳細については、<a href="#intent-edit">インテントを使用したイベントの挿入</a>をご覧ください。ただし、イベントは必要に応じて直接編集できます。
+
+
+イベントのアップデートを実行する場合は、イベントの <code>_ID</code> を、URI（{@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}）の末尾に追加された ID として、または前出の selection の最初の項目として指定できます。
+
+
+
+前出の selection を <code>&quot;_id=?&quot;</code> で始め、最初の <code>selectionArg</code> をカレンダーの <code>_ID</code> にする必要があります。
+
+ID なしの selection を使用してアップデートすることもできます。次に、イベントのアップデートの例を示します。
+
+ここでは、{@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()} を使用するアプローチでイベントのタイトルを変更しています。
+
+</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 188;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri updateUri = null;
+// The new title for the event
+values.put(Events.TITLE, &quot;Kickboxing&quot;); 
+updateUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);  </pre>
+
+<h3 id="delete-event">イベントの削除</h3>
+
+<p>イベントは、目的のイベントの {@link android.provider.BaseColumns#_ID} を URI の末尾に追加する ID として使用するか、標準的な選択を使用して削除できます。
+
+ID の追加で削除を実行する場合、選択はできません。削除には、アプリケーションとして実行する方法と同期アダプタとして実行する方法の 2 種類があります。
+アプリケーションとしての削除では、削除される<em></em>列が 1 に設定されます。
+このフラグは同期アダプタに対して、その行が削除されたことを通知し、この削除をサーバーに通知するよう指示します。
+
+同期アダプタとしての削除では、すべての関連データとともにデータベースからイベントが削除されます。
+次の例では、アプリケーションがイベントをその {@link android.provider.BaseColumns#_ID} を使用して削除しています。
+</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 201;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri deleteUri = null;
+deleteUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().delete(deleteUri, null, null);
+Log.i(DEBUG_TAG, &quot;Rows deleted: &quot; + rows);  
+</pre>
+
+<h2 id="attendees">Attendees テーブル</h2>
+
+<p>{@link android.provider.CalendarContract.Attendees} テーブルの各行は、あるイベントの 1 人の参加者ないしゲストを表します。
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()} を呼び出すと、指定された {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} を持つイベントの参加者リストが返されます。
+
+
+この {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} は特定のイベントの {@link android.provider.BaseColumns#_ID} と一致している必要があります。
+
+
+</p> 
+
+<p>次の表に、書き込み可能なフィールドを示します。
+新しい参加者を挿入する際には、<code>ATTENDEE_NAME</code> を除くすべてを含める必要があります。
+
+</p>
+
+
+<table>
+  <tr>
+    <th>定数</th>
+    <th>説明</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}</td>
+    <td>イベントの ID。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_NAME}</td>
+    <td>参加者の名前。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_EMAIL}</td>
+    <td>参加者のメールアドレス。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_RELATIONSHIP}</td>
+    <td><p>参加者のイベントに対する関係。次のどれかです。</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ATTENDEE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ORGANIZER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_PERFORMER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_SPEAKER}</li>
+    </ul>
+    </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_TYPE}</td>
+    <td><p>参加者のタイプ。次のどれかです。 </p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_REQUIRED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_OPTIONAL}</li>
+    </ul></td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS}</td>
+    <td><p>参加者の出席ステータス。次のどれかです。</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_ACCEPTED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_DECLINED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_INVITED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_TENTATIVE}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-attendees">参加者の追加</h3>
+
+<p>次の例では、あるイベントに 1 人の参加者を挿入しています。{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} は必須です。
+
+</p>
+
+<pre>
+long eventID = 202;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Attendees.ATTENDEE_NAME, &quot;Trevor&quot;);
+values.put(Attendees.ATTENDEE_EMAIL, &quot;trevor@example.com&quot;);
+values.put(Attendees.ATTENDEE_RELATIONSHIP, Attendees.RELATIONSHIP_ATTENDEE);
+values.put(Attendees.ATTENDEE_TYPE, Attendees.TYPE_OPTIONAL);
+values.put(Attendees.ATTENDEE_STATUS, Attendees.ATTENDEE_STATUS_INVITED);
+values.put(Attendees.EVENT_ID, eventID);
+Uri uri = cr.insert(Attendees.CONTENT_URI, values);
+</pre>
+
+<h2 id="reminders">Reminders テーブル</h2>
+
+<p>{@link android.provider.CalendarContract.Reminders} テーブルの各行は、あるイベントの 1 つのリマインダーを表します。
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()} を呼び出すと、指定された {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} を持つイベントのリマインダー リストが返されます。
+
+
+</p>
+
+
+<p>次の表に、リマインダーに関する書き込み可能なフィールドを示します。新しいリマインダーを挿入する際には、これらをすべて含める必要があります。
+同期アダプタは、サポートするリマインダーのタイプを {@link android.provider.CalendarContract.Calendars} テーブルで指定しています。
+
+詳細については、{@link android.provider.CalendarContract.CalendarColumns#ALLOWED_REMINDERS} をご覧ください。
+
+</p>
+
+
+<table>
+  <tr>
+    <th>定数</th>
+    <th>説明</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#EVENT_ID}</td>
+    <td>イベントの ID。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#MINUTES}</td>
+    <td>リマインダーが通知されるまでの分単位の時間。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#METHOD}</td>
+    <td><p>アラーム手段。サーバーに設定されます。次のどれかです。</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_ALERT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_DEFAULT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_EMAIL}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_SMS}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-reminders">リマインダーの追加</h3>
+
+<p>この例では、イベントにリマインダーを追加します。このリマインダーは、イベントの 15 分前に通知されます。
+</p>
+<pre>
+long eventID = 221;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Reminders.MINUTES, 15);
+values.put(Reminders.EVENT_ID, eventID);
+values.put(Reminders.METHOD, Reminders.METHOD_ALERT);
+Uri uri = cr.insert(Reminders.CONTENT_URI, values);</pre>
+
+<h2 id="instances">Instances テーブル</h2>
+
+<p>{@link android.provider.CalendarContract.Instances} テーブルは、あるイベントの発生の開始時刻と終了時刻を保持します。
+
+各行は、イベントの発生 1 回を表します。
+Instances テーブルは書き込みできません。イベントの発生をクエリする手段を提供するためだけのものです。
+ </p>
+
+<p>次の表に、インスタンスに関してクエリできるフィールドの一部を示します。タイムゾーンは {@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_TYPE} と {@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_INSTANCES} で定義されます。
+
+
+
+</p>
+
+
+<table>
+  <tr>
+    <th>定数</th>
+    <th>説明</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#BEGIN}</td>
+    <td>インスタンスの開始時刻（UTC ミリ秒単位）。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END}</td>
+    <td>インスタンスの終了時刻（UTC ミリ秒単位）。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_DAY}</td>
+    
+    <td>インスタンスの、カレンダーのタイムゾーンにおけるユリウス暦での終了日。
+ 
+    
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_MINUTE}</td>
+    
+    <td>カレンダーのタイムゾーンにおける午前零時を基準にしたインスタンスの終了分。
+</td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#EVENT_ID}</td>
+    <td>このインスタンスのイベントの <code>_ID</code>。</td>
+  </tr>
+    <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_DAY}</td>
+    <td>インスタンスの、カレンダーのタイムゾーンにおけるユリウス暦での開始日。 
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_MINUTE}</td>
+    
+    <td>カレンダーのタイムゾーンにおける午前零時を基準にしたインスタンスの開始分。
+ 
+</td>
+    
+  </tr>
+
+</table>
+
+<h3 id="query-instances">Instances テーブルへのクエリ</h3>
+
+<p>Instances テーブルにクエリするには、クエリの範囲を示す時刻を URI に指定する必要があります。この例で、{@link android.provider.CalendarContract.Instances} は {@link android.provider.CalendarContract.EventsColumns} インターフェースの実装を介して {@link android.provider.CalendarContract.EventsColumns#TITLE} フィールドへのアクセスを取得します。
+
+
+
+言い換えると、{@link android.provider.CalendarContract.EventsColumns#TITLE} はデータベースの参照に対して返されているのであって、{@link android.provider.CalendarContract.Instances} テーブルそのものへのクエリに対して返されているのではありません。
+
+
+
+</p>
+
+<pre>
+private static final String DEBUG_TAG = "MyActivity";
+public static final String[] INSTANCE_PROJECTION = new String[] {
+    Instances.EVENT_ID,      // 0
+    Instances.BEGIN,         // 1
+    Instances.TITLE          // 2
+  };
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_BEGIN_INDEX = 1;
+private static final int PROJECTION_TITLE_INDEX = 2;
+...
+
+// Specify the date range you want to search for recurring
+// event instances
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2011, 9, 23, 8, 0);
+long startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2011, 10, 24, 8, 0);
+long endMillis = endTime.getTimeInMillis();
+  
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+
+// The ID of the recurring event whose instances you are searching
+// for in the Instances table
+String selection = Instances.EVENT_ID + " = ?";
+String[] selectionArgs = new String[] {"207"};
+
+// Construct the query with the desired date range.
+Uri.Builder builder = Instances.CONTENT_URI.buildUpon();
+ContentUris.appendId(builder, startMillis);
+ContentUris.appendId(builder, endMillis);
+
+// Submit the query
+cur =  cr.query(builder.build(), 
+    INSTANCE_PROJECTION, 
+    selection, 
+    selectionArgs, 
+    null);
+   
+while (cur.moveToNext()) {
+    String title = null;
+    long eventID = 0;
+    long beginVal = 0;    
+    
+    // Get the field values
+    eventID = cur.getLong(PROJECTION_ID_INDEX);
+    beginVal = cur.getLong(PROJECTION_BEGIN_INDEX);
+    title = cur.getString(PROJECTION_TITLE_INDEX);
+              
+    // Do something with the values. 
+    Log.i(DEBUG_TAG, "Event:  " + title); 
+    Calendar calendar = Calendar.getInstance();
+    calendar.setTimeInMillis(beginVal);  
+    DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
+    Log.i(DEBUG_TAG, "Date: " + formatter.format(calendar.getTime()));    
+    }
+ }</pre>
+
+<h2 id="intents">カレンダーのインテント</h2>
+<p>アプリケーションがカレンダー データの読み取りや書き込みを実行するのに<a href="#manifest">パーミッション</a>は要りません。その代わり、Android のカレンダー アプリケーションがサポートするインテントを使用し、読み取りと書き込みの操作をそのアプリケーションに引き渡します。次の表に、カレンダー プロバイダによってサポートされているインテントを示します。</p>
+<table>
+  <tr>
+    <th>アクション</th>
+    <th>URI</th>
+
+    <th>説明</th>
+    <th>エクストラ</th>
+  </tr>
+  <tr>
+    <td><br>
+    {@link android.content.Intent#ACTION_VIEW VIEW} <br></td>
+    <td><p><code>content://com.android.calendar/time/&lt;ms_since_epoch&gt;</code></p>
+    URI は、{@link android.provider.CalendarContract#CONTENT_URI CalendarContract.CONTENT_URI} を使用しても参照できます。
+このインテントの使用例については、<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">インテントを使用したカレンダー データの参照</a>をご覧ください。
+ 
+
+    </td>
+    <td><code>&lt;ms_since_epoch&gt;</code> に指定された時刻でカレンダーを開きます。</td>
+    <td>なし</td>
+  </tr>
+  <tr>
+    <td><p>{@link android.content.Intent#ACTION_VIEW VIEW} </p>
+
+     </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+    URI は、{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} を使用しても参照できます。
+このインテントの使用例については、<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">インテントを使用したカレンダー データの参照</a>をご覧ください。
+
+    
+    </td>
+    <td><code>&lt;event_id&gt;</code> で指定されたイベントを参照します。</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+  URI は、{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} を使用しても参照できます。
+このインテントの使用例については、<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-edit">インテントを使用したカレンダー データの編集</a>をご覧ください。
+
+    
+    
+    </td>
+    <td><code>&lt;event_id&gt;</code> で指定されたイベントを編集します。</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} <br>
+    <br>
+    {@link android.content.Intent#ACTION_INSERT INSERT} </td>
+    <td><p><code>content://com.android.calendar/events</code></p>
+    
+   URI は、{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} を使用しても参照できます。
+このインテントの使用例については、<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-insert">インテントを使用したカレンダー データの挿入</a>をご覧ください。
+
+    
+    </td>
+
+    <td>イベントを作成します。</td>
+    <td>次の表に示された任意のエクストラ。</td>
+  </tr>
+</table>
+
+<p>次の表に、カレンダー プロバイダによってサポートされているインテント エクストラを示します。
+</p>
+<table>
+  <tr>
+    <th>インテント エクストラ</th>
+    <th>説明</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE Events.TITLE}</td>
+    <td>イベントの名前。</td>
+  </tr>
+  <tr>
+  
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}
+</td>
+    <td>イベントの開始時刻（エポックからのミリ秒単位）。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}
+</td>
+    
+    <td>イベントの終了時刻（エポックからのミリ秒単位）。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_ALL_DAY CalendarContract.EXTRA_EVENT_ALL_DAY}
+</td>
+    
+    <td>イベントが終日かどうかを示すブール値。使用できる値は <code>true</code> または <code>false</code> です。
+</td> </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION Events.EVENT_LOCATION}
+</td>
+    
+    <td>イベントの場所。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION Events.DESCRIPTION}
+</td>
+    
+    <td>イベントの説明。</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}</td>
+    <td>招待者のメールアドレス（コンマ区切りリスト形式）。</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#RRULE Events.RRULE}</td>
+    <td>イベントの反復ルール。</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#ACCESS_LEVEL Events.ACCESS_LEVEL}
+</td>
+    
+    <td>イベントが公開か非公開か。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY Events.AVAILABILITY}
+</td>
+    
+    <td>このイベントを埋まっている時間に数えるか、それともスケジュールのやり直しが利く空き時間とみなすか。</td>
+    
+</table> 
+<p>次のセクションでは、これらのインテント使用方法を説明します。</p>
+
+
+<h3 id="intent-insert">インテントを使用したイベントの挿入</h3>
+
+<p>{@link android.content.Intent#ACTION_INSERT INSERT} インテントを使用すると、アプリケーションはイベント挿入タスクをカレンダーそのものに引き渡すことができます。このアプローチでは、アプリケーションは {@link android.Manifest.permission#WRITE_CALENDAR} パーミッションを<a href="#manifest">マニフェスト ファイル</a>に含める必要さえなくなります。
+
+
+</p>
+
+  
+<p>このアプローチのアプリケーションをユーザーが実行すると、アプリケーションによってユーザーがカレンダーに誘導されイベントを追加できるようになります。
+{@link android.content.Intent#ACTION_INSERT INSERT} インテントは、追加フィールドを使用して、カレンダーに格納されている詳細情報をフォームに自動入力します。
+
+それに対して、ユーザーはイベントのキャンセル、必要に応じたイベントの編集、イベントのカレンダーへの保存ができます。
+
+</p>
+  
+
+
+<p>次に示すのは、2012 年 1 月 19 日の午前 7:30 から 午前 8:30 までのイベントをスケジュールするコード スニペットです。
+このコード スニペットの以下の点に注目してください。</p>
+
+<ul>
+  <li>URI として {@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} を指定しています。
+</li>
+  
+  <li>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME} と {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME} の各エクストラ フィールドを使用して、イベントの時間をフォームに自動入力しています。
+
+
+
+
+これらの値は、エポックからの UTC ミリ秒単位であることが必要です。
+</li>
+  
+  <li>{@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL} エクストラ フィールドを使用して、参加者をメールアドレスで示したコンマ区切りリストを指定しています。
+</li>
+  
+</ul>
+<pre>
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 0, 19, 7, 30);
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 0, 19, 8, 30);
+Intent intent = new Intent(Intent.ACTION_INSERT)
+        .setData(Events.CONTENT_URI)
+        .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
+        .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
+        .putExtra(Events.TITLE, &quot;Yoga&quot;)
+        .putExtra(Events.DESCRIPTION, &quot;Group class&quot;)
+        .putExtra(Events.EVENT_LOCATION, &quot;The gym&quot;)
+        .putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)
+        .putExtra(Intent.EXTRA_EMAIL, &quot;rowan@example.com,trevor@example.com&quot;);
+startActivity(intent);
+</pre>
+
+<h3 id="intent-edit">インテントを使用したイベントの編集</h3>
+
+<p>イベントは、<a href="#update-event">イベントのアップデート</a>で説明したように、直接アップデートできます。ただし、{@link android.content.Intent#ACTION_EDIT EDIT} インテントを使用すれば、パーミッションのないアプリケーションが、カレンダー アプリケーションにイベント編集を引き渡すことができます。カレンダーでのイベント編集を終えたユーザーは、元のアプリケーションに戻ります。
+
+
+
+</p> <p>次の例のインテントは、指定されたイベントの新しいタイトルを設定して、ユーザーがそのイベントをカレンダーで編集できるようにしています。
+</p>
+
+
+<pre>long eventID = 208;
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_EDIT)
+    .setData(uri)
+    .putExtra(Events.TITLE, &quot;My New Title&quot;);
+startActivity(intent);</pre>
+
+<h3 id="intent-view">インテントを使用したカレンダー データの参照</h3>
+<p>カレンダー プロバイダには、{@link android.content.Intent#ACTION_VIEW VIEW} インテントを使用する次の 2 つの方法が用意されています。</p>
+<ul>
+  <li>特定の日付のカレンダーを開く方法。</li>
+  <li>イベントを参照する方法。</li>
+
+</ul>
+<p>次の例は、特定の日付のカレンダーを開く方法を示しています。</p>
+<pre>// A date-time specified in milliseconds since the epoch.
+long startMillis;
+...
+Uri.Builder builder = CalendarContract.CONTENT_URI.buildUpon();
+builder.appendPath(&quot;time&quot;);
+ContentUris.appendId(builder, startMillis);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+    .setData(builder.build());
+startActivity(intent);</pre>
+
+<p>次の例は、参照するためにイベントを開く方法を示しています。</p>
+<pre>long eventID = 208;
+...
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+   .setData(uri);
+startActivity(intent);
+</pre>
+
+
+<h2 id="sync-adapter">同期アダプタ</h2>
+
+
+<p>アプリケーションと同期アダプタとの間で、カレンダー プロバイダにアクセスする方法の違いは、次のいくつかだけです。
+</p>
+
+<ul>
+  <li>同期アダプタは、{@link android.provider.CalendarContract#CALLER_IS_SYNCADAPTER} を <code>true</code> に設定して、それが同期アダプタであることを示す必要があります。</li>
+  
+  
+  <li>同期アダプタは、{@link android.provider.CalendarContract.SyncColumns#ACCOUNT_NAME} と {@link android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} をクエリ パラメータとして URI に指定する必要があります。
+
+ </li>
+  
+  <li>同期アダプタは、アプリケーションやウィジェットより多くの列に書き込みアクセスできます。
+  たとえば、アプリケーションで変更できるのは、名前、表示名、可視性の設定、カレンダーが同期対象かどうかなど、カレンダーの特性の一部のみです。
+
+それに対し、同期アダプタはこれらの列の他に、カレンダーの色、タイムゾーン、アクセスレベル、場所など、数多くにアクセスできます。ただし、<code>ACCOUNT_NAME</code> と <code>ACCOUNT_TYPE</code> で指定されるものだけに限定されます。
+
+
+</li> </ul>
+
+<p>次に示すヘルパー メソッドを使用すると、同期アダプタで使用するための URI が返されます。</p>
+<pre> static Uri asSyncAdapter(Uri uri, String account, String accountType) {
+    return uri.buildUpon()
+        .appendQueryParameter(android.provider.CalendarContract.CALLER_IS_SYNCADAPTER,&quot;true&quot;)
+        .appendQueryParameter(Calendars.ACCOUNT_NAME, account)
+        .appendQueryParameter(Calendars.ACCOUNT_TYPE, accountType).build();
+ }
+</pre>
+<p>同期アダプタの実装例（カレンダーに特化されたものではありません）については、<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a> をご覧ください。
+
diff --git a/docs/html-intl/intl/ja/guide/topics/providers/contacts-provider.jd b/docs/html-intl/intl/ja/guide/topics/providers/contacts-provider.jd
new file mode 100644
index 0000000..e12b62f
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/providers/contacts-provider.jd
@@ -0,0 +1,2356 @@
+page.title=連絡先プロバイダ
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<h2>クイックビュー</h2>
+<ul>
+    <li>人の情報に関する Android のリポジトリ。</li>
+    <li>
+        ウェブとの同期。
+    </li>
+    <li>
+        ソーシャル ストリーム データの統合。
+    </li>
+</ul>
+<h2>本書の内容</h2>
+<ol>
+    <li>
+        <a href="#InformationTypes">連絡先プロバイダの構成</a>
+    </li>
+    <li>
+        <a href="#RawContactBasics">未加工連絡先</a>
+    </li>
+    <li>
+        <a href="#DataBasics">データ</a>
+    </li>
+    <li>
+        <a href="#ContactBasics">連絡先</a>
+    </li>
+    <li>
+        <a href="#Sources">同期アダプタからのデータ</a>
+    </li>
+    <li>
+        <a href="#Permissions">必要なパーミッション</a>
+    </li>
+    <li>
+        <a href="#UserProfile">ユーザー プロファイル</a>
+    </li>
+    <li>
+        <a href="#ContactsProviderMetadata">連絡先プロバイダのメタデータ</a>
+    </li>
+    <li>
+        <a href="#Access">連絡先プロバイダへのアクセス</a>
+    <li>
+    </li>
+    <li>
+        <a href="#SyncAdapters">連絡先プロバイダの同期アダプタ</a>
+    </li>
+    <li>
+        <a href="#SocialStream">ソーシャル ストリーム データ</a>
+    </li>
+    <li>
+        <a href="#AdditionalFeatures">連絡先プロバイダの追加機能</a>
+    </li>
+</ol>
+<h2>キークラス</h2>
+<ol>
+    <li>{@link android.provider.ContactsContract.Contacts}</li>
+    <li>{@link android.provider.ContactsContract.RawContacts}</li>
+    <li>{@link android.provider.ContactsContract.Data}</li>
+    <li>{@code android.provider.ContactsContract.StreamItems}</li>
+</ol>
+<h2>関連サンプル</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}resources/samples/ContactManager/index.html">        Contact Manager        </a>
+
+
+    </li>
+    <li>
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">        サンプル同期アダプタ</a>
+
+    </li>
+</ol>
+<h2>関連ドキュメント</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">        コンテンツ プロバイダの基本        </a>
+
+
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    連絡先プロバイダは、人のデータに関する端末の中央リポジトリを管理する、柔軟で効果的な Android コンポーネントです。
+連絡先プロバイダは、端末の連絡先アプリケーションに表示されるデータのソースであり、さらに独自アプリケーションで連絡先プロバイダのデータにアクセスし、端末とオンライン サービスとの間でデータを転送することもできます。
+
+このプロバイダは幅広いデータソースに対応しており、各人に関してできるだけ多くのデータを管理しようとするため、複雑な構造をしています。
+
+そのため、連絡先プロバイダの API には、データの取得と変更をどちらもやりやすくするクラスやインターフェースが多数用意されています。
+
+
+</p>
+<p>
+    このガイドでは、以下について説明します。
+</p>
+    <ul>
+        <li>
+            プロバイダの基本構造。
+        </li>
+        <li>
+            プロバイダからのデータの取得方法。
+        </li>
+        <li>
+            プロバイダでのデータの変更方法。
+        </li>
+        <li>
+            サーバーから連絡先プロバイダとデータを同期する同期アダプタの作成方法。
+
+        </li>
+    </ul>
+<p>
+    このガイドは、Android のコンテンツ プロバイダの基礎知識がある読者を対象としています。Android のコンテンツ プロバイダについて詳しくは、「<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">コンテンツ プロバイダの基本</a>」をご覧ください。
+
+
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">サンプル同期アダプタ</a> サンプルアプリは、同期アダプタを使用して連絡先プロバイダと Google ウェブ サービスでホストされているサンプル アプリケーションとの間でデータを転送する例です。
+
+
+
+</p>
+<h2 id="InformationTypes">連絡先プロバイダの構成</h2>
+<p>
+    連絡先プロバイダは、Android のコンテンツ プロバイダ コンポーネントです。人に関する 3 種類のデータを保持しており、それぞれがコンテンツ プロバイダによって提供される 1 つのテーブルに対応しています。この構成を図 1 に示します。
+
+
+</p>
+<img src="{@docRoot}images/providers/contacts_structure.png" alt="" height="364" id="figure1" />
+<p class="img-caption">
+  <strong>図 1.</strong> 連絡先プロバイダのテーブル構造。
+</p>
+<p>
+    この 3 つのテーブルは、一般にそれぞれのコントラクト クラス名で呼ばれます。各クラスは、テーブルによって使用されるコンテンツ URI、列名、列の値のための定数を定義しています。
+
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Contacts} テーブル
+    </dt>
+    <dd>
+        各行は、未加工連絡先の行の集約に基づいて異なる人を表します。
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.RawContacts} テーブル
+    </dt>
+    <dd>
+        各行には、ユーザーのアカウントとタイプに固有の、人に関するデータの概要が格納されています。
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data} テーブル
+    </dt>
+    <dd>
+        各行には、メールアドレスや電話番号など、未加工連絡先の詳細情報が格納されています。
+    </dd>
+</dl>
+<p>
+    {@link android.provider.ContactsContract} に含まれるコントラクト クラスによって表現される他のテーブルは補助テーブルであり、連絡先プロバイダがその操作を管理したり、端末の連絡先アプリや電話アプリの特定機能をサポートしたりするために使用します。
+
+
+</p>
+<h2 id="RawContactBasics">未加工連絡先</h2>
+<p>
+    未加工連絡先は、アカウント タイプとアカウント名の 1 つのペアを使用して得られる人に関するデータです。
+連絡先プロバイダでは、1 人に関するデータのソースとして複数のオンライン サーバーを使用できるため、同じ個人に対して複数の未加工連絡先が許されます。
+
+    未加工連絡先が複数ある場合、ユーザーは同じアカウント タイプの複数のアカウントから取得したその人のデータを組み合わせることができます。
+
+</p>
+<p>
+    未加工連絡先データの大半は、{@link android.provider.ContactsContract.RawContacts} テーブルには格納されません。
+その代わり、{@link android.provider.ContactsContract.Data} テーブルの 1 つまたは複数の行に格納されています。
+各データ行には列 {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID Data.RAW_CONTACT_ID} があり、親 {@link android.provider.ContactsContract.RawContacts} 行の {@code android.provider.BaseColumns#_ID RawContacts._ID} 値が格納されています。
+
+
+
+</p>
+<h3 id="RawContactsColumns">重要な未加工連絡先列</h3>
+<p>
+    表 1 に、{@link android.provider.ContactsContract.RawContacts} の重要な列を示します。
+表の後の注もお読みください。
+</p>
+<p class="table-caption" id="table1">
+    <strong>表 1.</strong> 重要な未加工連絡先列。
+</p>
+<table>
+    <tr>
+        <th scope="col">列名</th>
+        <th scope="col">用途</th>
+        <th scope="col">注</th>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_NAME}
+        </td>
+        <td>
+            この未加工連絡先のソースであるアカウント タイプにおけるアカウント名。
+            たとえば、Google アカウントのアカウント名は、デバイス オーナーの Gmail アドレスのどれかです。
+詳しくは、次の {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE} の項目をご覧ください。
+
+
+        </td>
+        <td>
+            この名前の形式は、アカウント タイプによって異なります。必ずしもメールアドレスとは限りません。
+
+        </td>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}
+        </td>
+        <td>
+            この未加工連絡先のソースであるアカウント タイプ。たとえば、Google アカウントのアカウント タイプは <code>com.google</code> です。
+アカウント タイプは必ず、所有または管理しているドメインのドメイン ID で修飾してください。
+そうすることで、アカウント タイプが確実に一意になります。
+
+        </td>
+        <td>
+            連絡先データを提供するアカウント タイプには、通常、連絡先プロバイダと同期する関連同期アダプタが用意されています。
+
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.RawContactsColumns#DELETED}
+        </td>
+        <td>
+            未加工連絡先の「削除済み」フラグ。
+        </td>
+        <td>
+            連絡先プロバイダは、同期アダプタが該当行をサーバーから削除し、最終的にリポジトリから削除するまで、このフラグを基に行を内部的に管理します。
+
+
+        </td>
+    </tr>
+</table>
+<h4>注</h4>
+<p>
+    次に、{@link android.provider.ContactsContract.RawContacts} テーブルに関する重要な注を示します。
+
+</p>
+<ul>
+    <li>
+        未加工連絡先の名前は、{@link android.provider.ContactsContract.RawContacts} の行には格納されません。
+その代わり、{@link android.provider.ContactsContract.Data} テーブルの {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 行に格納されます。
+
+未加工連絡先は、このタイプの行を {@link android.provider.ContactsContract.Data} テーブルに 1 行だけ持ちます。
+
+    </li>
+    <li>
+        <strong>警告:</strong> 未加工連絡先の行で独自のアカウント データを使用する場合は、まずそれを {@link android.accounts.AccountManager} に登録する必要があります。
+登録するには、ユーザーに対し、アカウントのリストにアカウント タイプとアカウント名を追加するよう求めます。
+そうしないと、連絡先プロバイダによって未加工連絡先の行が自動的に削除されてしまいます。
+
+        <p>
+            たとえば、ドメインが {@code com.example.dataservice} であるウェブベースのサービス用に連絡先データをアプリで管理する場合、そのサービス用のユーザー アカウントが {@code becky.sharp@dataservice.example.com} であれば、そのユーザーが先にそのアカウントの「タイプ」（{@code com.example.dataservice}）と「名前」（{@code becky.smart@dataservice.example.com}）を追加しておくことで、アプリが未加工連絡先の行を追加できるようになります。
+
+
+
+
+            この要件については、文書で説明するか、ユーザーにタイプと名前を追加するよう求めるか、あるいはその両方を実施してください。
+アカウントのタイプと名前については、次のセクションで詳しく説明します。
+
+    </li>
+</ul>
+<h3 id="RawContactsExample">未加工連絡先データのソース</h3>
+<p>
+    未加工連絡先の働きを理解するために、「Emily Dickinson」というユーザーについて考えてみましょう。彼女は自分の端末に次の 3 つのアカウントを定義しています。
+
+</p>
+<ul>
+    <li><code>emily.dickinson@gmail.com</code></li>
+    <li><code>emilyd@gmail.com</code></li>
+    <li>Twitter アカウント「belle_of_amherst」</li>
+</ul>
+<p>
+    このユーザーは、[<em>アカウント</em>] の設定でこの 3 つのアカウントすべてについて [<em>連絡先を同期</em>] を有効にしています。
+
+</p>
+<p>
+    Emily Dickinson がブラウザのウィンドウを開き、Gmail に <code>emily.dickinson@gmail.com</code> としてログインし、[連絡先] を開いて「Thomas Higginson」を追加したとしましょう。
+
+後日、彼女が Gmail に <code>emilyd@gmail.com</code> としてログインし、メールを「Thomas Higginson」宛てに送信すると、彼は自動的に連絡先として追加されます。
+
+彼女はまた、Twitter で「colonel_tom」（Thomas Higginson の Twitter ID）をフォローしています。
+
+</p>
+<p>
+    連絡先プロバイダは、この操作の結果として次の 3 行の未加工連絡先を作成します。
+</p>
+<ol>
+    <li>
+        「Thomas Higginson」の、<code>emily.dickinson@gmail.com</code> に関連付けられた未加工連絡先。
+        ユーザー アカウントのタイプは Google です。
+    </li>
+    <li>
+        「Thomas Higginson」の、<code>emilyd@gmail.com</code> に関連付けられた新たな未加工連絡先。
+        ユーザー アカウントのタイプはやはり Google です。名前が前の行とまったく同じなのに新たな未加工連絡先が作成されたのは、この個人が異なるユーザー アカウントに追加されたからです。
+
+
+    </li>
+    <li>
+        「Thomas Higginson」の、「belle_of_amherst」に関連付けられた未加工連絡先。ユーザー アカウントのタイプは Twitter です。
+
+    </li>
+</ol>
+<h2 id="DataBasics">データ</h2>
+<p>
+    前にも説明したように、未加工連絡先のデータは未加工連絡先の <code>_ID</code> 値にリンクされている {@link android.provider.ContactsContract.Data} 行に格納されます。
+
+これにより、1 つの未加工連絡先が同じタイプのデータ（メールアドレスや電話番号など）のインスタンスを複数持つことができます。
+たとえば、{@code emilyd@gmail.com} に対する「Thomas Higginson」（Google アカウント <code>emilyd@gmail.com</code> に関連付けられた、Thomas Higginson の未加工連絡先の行）には、<code>thigg@gmail.com</code> という個人用アドレスと <code>thomas.higginson@gmail.com</code> という仕事用アドレスがあり、連絡先プロバイダはこの 2 つのメールアドレスの行を格納し、両方とも同じ未加工連絡先にリンクします。
+
+
+
+
+
+</p>
+<p>
+    異なるタイプのデータが同じテーブルに格納されることに注目してください。表示名、電話番号、メール、住所、写真、ウェブサイトに関する詳細行はすべて、{@link android.provider.ContactsContract.Data} テーブルにあります。
+
+これを管理しやすくするため、{@link android.provider.ContactsContract.Data} テーブルの一部の行には説明的な名前が、それ以外には一般的な名前がそれぞれ付いています。
+
+説明的な名前が付いた列の内容は、行データのタイプによらず意味が同じなのに対し、一般的な名前が付いた列の内容は、データのタイプによって意味が異なります。
+
+
+</p>
+<h3 id="DescriptiveColumns">説明的な名前の列</h3>
+<p>
+    説明的な名前が付いた列の例をいくつか示します。
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Data#RAW_CONTACT_ID}
+    </dt>
+    <dd>
+        このデータの、未加工連絡先の <code>_ID</code> 列の値。
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data#MIMETYPE}
+    </dt>
+    <dd>
+        カスタム MIME タイプで表現した、この行に格納されているデータのタイプ。連絡先プロバイダは、{@link android.provider.ContactsContract.CommonDataKinds} のサブクラスに定義されている MIME タイプを使用します。
+
+これらの MIME タイプはオープンソースで、連絡先プロバイダと連携する任意のアプリケーションまたは同期アダプタで使用できます。
+
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY}
+    </dt>
+    <dd>
+        このタイプのデータ行が 1 つの未加工連絡先に対して複数発生する場合、{@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} 列はそのタイプに対するプライマリ データを含むデータ行を示します。
+
+たとえば、ユーザーがある連絡先の電話番号を長押しし、[<strong>デフォルトに設定</strong>] を選択すると、その番号を含む {@link android.provider.ContactsContract.Data} 行の {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} 列にゼロでない値が設定されます。
+
+
+
+
+    </dd>
+</dl>
+<h3 id="GenericColumns">汎用名の列</h3>
+<p>
+    自由に使用できる <code>DATA1</code> ～ <code>DATA15</code> という 15 個の汎用列の他に、同期アダプタしか使用してはいけない <code>SYNC1</code> ～ <code>SYNC4</code> という 4 個の列があります。
+
+
+汎用名列の定数は、行に指定されているデータのタイプによらず、常に機能します。
+
+</p>
+<p>
+    <code>DATA1</code> 列はインデックス付きです。連絡先プロバイダは常に、この列を、最も頻繁にクエリの対象となるとプロバイダが予想するデータ用の列として使用します。
+たとえば、メールの行では、この列には実際のメールアドレスが格納されます。
+
+</p>
+<p>
+    <code>DATA15</code> は慣例として、写真サムネイルのようなバイナリ ラージ オブジェクト（BLOB）データ用に予約されています。
+
+</p>
+<h3 id="TypeSpecificNames">タイプ固有の列名</h3>
+<p>
+    特定タイプの行に含まれる列に対する作業をやりやすくするため、連絡先プロバイダではタイプ固有の列名定数もあり、たとえば {@link android.provider.ContactsContract.CommonDataKinds} のサブクラスに定義されています。
+
+こうした定数は、同じ列名に異なる定数名を充てて、特定タイプの行に含まれるデータにアクセスしやすくしているだけのものです。
+
+
+</p>
+<p>
+    たとえば、{@link android.provider.ContactsContract.CommonDataKinds.Email} クラスには、MIME タイプが {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE Email.CONTENT_ITEM_TYPE} である{@link android.provider.ContactsContract.Data} 行向けにタイプ固有の列名定数が定義されています。
+
+
+
+このクラスには、メールアドレス 列用に {@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} という定数が含まれています。
+
+{@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} の実際の値は「data1」で、これはこの列の汎用名と同じです。
+
+
+</p>
+<p class="caution">
+    <strong>警告:</strong> 連絡先プロバイダにあらかじめ定義されている MIME タイプのどれかである行を使用している {@link android.provider.ContactsContract.Data} テーブルには、独自のカスタムデータを追加しないでください。
+
+追加すると、データが失われたり、連絡先プロバイダが誤動作したりすることがあります。
+たとえば、メールアドレスではなくユーザー名が格納されている MIME タイプ {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE Email.CONTENT_ITEM_TYPE} の行は、列 <code>DATA1</code> には追加しないでください。
+
+
+一方、行に独自のカスタム MIME タイプを使用している場合は、独自のタイプ固有名を定義して列を自由に使用してかまいません。
+
+</p>
+<p>
+    図 2 に、説明的な名前の列とデータ列で {@link android.provider.ContactsContract.Data} 行がどう見えるか、そしてタイプ固有の列名が汎用列名をどう「オーバーレイ」するかを示します。
+
+
+</p>
+<img src="{@docRoot}images/providers/data_columns.png" alt="How type-specific column names map to generic column names" height="311" id="figure2" />
+<p class="img-caption">
+  <strong>図 2.</strong> タイプ固有の列名と汎用列名
+</p>
+<h3 id="ColumnMaps">タイプ固有列名が使用されるクラス</h3>
+<p>
+    表 2 に、最もよく用いられるタイプ固有列名クラスを示します。
+</p>
+<p class="table-caption" id="table2">
+  <strong>表 2.</strong> タイプ固有列名が使用されるクラス</p>
+<table>
+  <tr>
+    <th scope="col">対応クラス</th>
+    <th scope="col">データのタイプ</th>
+    <th scope="col">注</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredName}</td>
+    <td>このデータ行に関連付けられている未加工連絡先の名前データ。</td>
+    <td>1 つの未加工連絡先は、この行を 1 行だけ持ちます。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Photo}</td>
+    <td>このデータ行に関連付けられている未加工連絡先のメインの写真。</td>
+    <td>1 つの未加工連絡先は、この行を 1 行だけ持ちます。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Email}</td>
+    <td>このデータ行に関連付けられている未加工連絡先のメールレアドレス。</td>
+    <td>1 つの未加工連絡先は複数のメールアドレスを持つことができます。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal}</td>
+    <td>このデータ行に関連付けられている未加工連絡先の住所。</td>
+    <td>1 つの未加工連絡先は複数の住所を持つことができます。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}</td>
+    <td>その未加工連絡先を連絡先プロバイダのグループのどれかにリンクする識別子。</td>
+    <td>
+        グループは、アカウント タイプとアカウント名のオプション機能です。詳しくは、<a href="#Groups">連絡先グループ</a>をご覧ください。
+
+    </td>
+  </tr>
+</table>
+<h3 id="ContactBasics">連絡先</h3>
+<p>
+    連絡先プロバイダは、すべてのアカウント タイプとアカウント名にわたって未加工連絡先の行を結び付けて 1 つの<strong>連絡先</strong>を形成します。
+これにより、1 人の人についてユーザーが集めた全データを表示したり変更したりしやすくなります。
+連絡先プロバイダは、新しい連絡先の行の作成と、既存の連絡先の行を使用した未加工連絡先の集約とを管理します。
+アプリケーションと同期アダプタは連絡先の追加はできず、連絡先の行の一部の列は読み取り専用です。
+
+</p>
+<p class="note">
+    <strong>注:</strong> 連絡先を連絡先プロバイダに {@link android.content.ContentResolver#insert(Uri,ContentValues) insert()} を使用して追加しようとすると、{@link java.lang.UnsupportedOperationException} 例外が発生します。
+
+「読み取り専用」になっている列をアップデートしようとしても、そのアップデートは無視されます。
+
+</p>
+<p>
+    連絡先プロバイダは、既存の連絡先と一致しない新しい未加工連絡先が追加されると、それに対して新しい連絡先を作成します。
+また、既存の未加工連絡先のデータが変更され、それまで関連付けられていた連絡先と一致しなくなった場合にも、同じ処理がなされます。
+
+アプリケーションまたは同期アダプタが、既存の連絡先と一致する新しい未加工連絡先を作成すると、その新しい未加工連絡先は既存の連絡先に集約されます。<em></em>
+
+
+</p>
+<p>
+    連絡先プロバイダは、連絡先の行を未加工連絡先とリンクするのに、{@link android.provider.ContactsContract.Contacts Contacts} テーブルの <code>_ID</code> 列を使用します。
+
+未加工連絡先テーブル {@link android.provider.ContactsContract.RawContacts} の <code>CONTACT_ID</code> 列には、未加工連絡先の各行に関連付けられている連絡先の行の <code>_ID</code> 値が格納されます。
+
+
+</p>
+<p>
+    {@link android.provider.ContactsContract.Contacts} テーブルには列 {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} もあり、こちらは連絡先の行への「永久」リンクです。
+
+連絡先プロバイダは連絡先を自動的に管理するため、集約や同期が行われると、それに応じて連絡先の行の {@code android.provider.BaseColumns#_ID} 値が変更される場合があります。
+
+この処理が行われても、コンテンツ URI {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI} と連絡先の {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} の組み合わせは、引き続きその連絡先の行を指すため、{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} を使用して「お気に入り」の連絡先へのリンクを管理するなどができます。
+
+
+
+
+この列には、{@code android.provider.BaseColumns#_ID} 列の形式と関係のない独自の形式があります。
+
+</p>
+<p>
+    図 3 に、3 つのテーブルの相互関係を示します。
+</p>
+<img src="{@docRoot}images/providers/contacts_tables.png" alt="Contacts provider main tables" height="514" id="figure4" />
+<p class="img-caption">
+  <strong>図 3.</strong> Contacts、RawContacts、Data の各テーブル間の関係。
+</p>
+<h2 id="Sources">同期アダプタからのデータ</h2>
+<p>
+    ユーザーは端末に連絡先データを直接入力しますが、データはウェブサービスから<strong>同期アダプタ</strong>を経由して連絡先プロバイダにも流れます。同期アダプタは、端末とサービスの間のデータ転送を自動化します。
+
+同期アダフタはシステムの管理下でバックグラウンドで実行され、{@link android.content.ContentResolver} のメソッドを呼び出してデータを管理します。
+
+
+</p>
+<p>
+    Android では、同期アダプタと連携するウェブサービスをアカウント タイプで識別します。
+    各同期アダプタが扱うアカウント タイプは 1 つですが、そのタイプのアカウント名を複数サポートできます。
+アカウント名とアカウント タイプについては、<a href="#RawContactsExample">未加工連絡先データのソース</a>で簡単に説明しています。
+次に、アカウント タイプとアカウント名が同期アダプタやサービスとどのような関係にあるかを詳しく説明します。
+
+</p>
+<dl>
+    <dt>
+        アカウント タイプ
+    </dt>
+    <dd>
+        ユーザーがデータを格納しているサービスを示します。ほとんどの場合、ユーザーにはサービスに対する認証が求められます。
+たとえば、Google Contacts はアカウント タイプの 1 つで、コード <code>google.com</code> で識別されます。
+この値は、{@link android.accounts.AccountManager} によって使用されるアカウント タイプに対応します。
+
+    </dd>
+    <dt>
+        アカウント名
+    </dt>
+    <dd>
+        あるアカウント タイプで使用する特定のアカウントまたはログインを示します。Google Contacts アカウントは Google アカウントと同じで、アカウント名としてメールアドレスを使用します。
+
+        他のサービスでは、1 語のユーザー名や数字の ID が使われていることもあります。
+    </dd>
+</dl>
+<p>
+    アカウント タイプは、一意である必要はありません。1 人のユーザーが複数の Google Contacts アカウントを設定し、それぞれのデータを連絡先プロバイダにダウンロードする、ということが可能です。このような使い方は、そのユーザーが個人用のアカウント名で私用の連絡先を、仕事用のアカウント名で仕事用の連絡先を管理している場合にありえます。
+
+アカウント名は、普通は一意です。
+この 2 つを組み合わせて、連絡先プロバイダと外部サービスとの間のある決まったデータフローを識別します。
+
+</p>
+<p>
+    独自サービスのデータを連絡先プロバイダに転送する場合は、独自の同期アダプタを作成する必要があります。
+詳しくは、<a href="#SyncAdapters">連絡先プロバイダの同期アダプタ</a>をご覧ください。
+
+</p>
+<p>
+    図 4 に、人に関するデータの流れにおける連絡先プロバイダの位置付けを示します。
+右から 2 列目の各ボックス内のアダプタには、そのアダプタのアカウント タイプが示されています。
+</p>
+<img src="{@docRoot}images/providers/ContactsDataFlow.png" alt="Flow of data about people" height="252" id="figure5" />
+<p class="img-caption">
+  <strong>図 4.</strong> 連絡先プロバイダに絡んだデータフロー。
+</p>
+<h2 id="Permissions">必要なパーミッション</h2>
+<p>
+    連絡先プロバイダにアクセスするアプリケーションは、次のパーミッションを要求する必要があります。
+
+</p>
+<dl>
+    <dt>1 つ以上のテーブルに対する読み取りアクセス</dt>
+    <dd>
+        {@link android.Manifest.permission#READ_CONTACTS}。<code>AndroidManifest.xml</code> に <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> 要素を使用して <code>&lt;uses-permission android:name="android.permission.READ_CONTACTS"&gt;</code> のように指定します。
+
+
+
+    </dd>
+    <dt>1 つ以上のテーブルに対する書き込みアクセス</dt>
+    <dd>
+        {@link android.Manifest.permission#WRITE_CONTACTS}。<code>AndroidManifest.xml</code> に <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> 要素を使用して <code>&lt;uses-permission android:name="android.permission.WRITE_CONTACTS"&gt;</code> のように指定します。
+
+
+
+    </dd>
+</dl>
+<p>
+    これらのパーミッションは、ユーザー プロファイル データにまでは拡張されません。ユーザー プロファイルとそれに必要なパーミッションについては、次のセクションである<a href="#UserProfile">ユーザー プロファイル</a>で説明しています。
+
+
+</p>
+<p>
+    ユーザーの連絡先データは個人的で秘密性の高い情報であることを再度ご確認ください。ユーザーはプライバシーに敏感であり、アプリケーションが自分や自分の連絡先に関するデータを集めることを望みません。
+
+    連絡先データにアクセスするためのパーミッションが必要な理由が明らかでないと、ユーザーがアプリケーションを低く評価したりインストールを拒否したりすることがあります。
+
+</p>
+<h2 id="UserProfile">ユーザー プロファイル</h2>
+<p>
+    {@link android.provider.ContactsContract.Contacts} テーブルには、その端末のユーザーのプロファイル データを格納している行が 1 行あります。
+このデータが記述しているのは端末の <code>user</code> であって、そのユーザーの連絡先ではありません。
+プロファイルの連絡先の行は、プロファイルを使用する各システムの未加工連絡先の行にリンクされています。
+
+    プロファイルの未加工連絡先の各行は、複数のデータ行を持つことができます。ユーザー プロファイルにアクセスするための定数は、{@link android.provider.ContactsContract.Profile} クラスに用意されています。
+
+</p>
+<p>
+    ユーザー プロファイルにアクセスするには、特別なパーミッションが必要です。読み取りと書き込みに必要な {@link android.Manifest.permission#READ_CONTACTS} パーミッションと {@link android.Manifest.permission#WRITE_CONTACTS} パーミッションの他に、ユーザー プロファイルに対する読み取りと書き込みのために {@code android.Manifest.permission#READ_PROFILE} パーミッションと {@code android.Manifest.permission#WRITE_PROFILE} パーミッションがそれぞれ必要です。
+
+
+
+
+
+</p>
+<p>
+    ユーザーのプロファイルは秘密性の高い情報であることを再度ご確認ください。パーミッション {@code android.Manifest.permission#READ_PROFILE} を使用すると、端末ユーザーの個人識別データにアクセスできます。
+
+アプリケーションの説明には、ユーザー プロファイルへのアクセス パーミッションが必要な理由を必ず記載してください。
+
+</p>
+<p>
+    ユーザーのプロファイルが格納された連絡先の行を取得するには、{@link android.content.ContentResolver#query(Uri,String[], String, String[], String) ContentResolver.query()} を呼び出します。
+
+コンテンツ URI を {@link android.provider.ContactsContract.Profile#CONTENT_URI} に設定し、選択条件は何も指定しません。
+
+このコンテンツ URI は、そのプロファイルの未加工連絡先やデータを取得するためのベース URI としても使用できます。
+たとえば、次のスニペットは指定されたプロファイルのデータを取得します。
+</p>
+<pre>
+// Sets the columns to retrieve for the user profile
+mProjection = new String[]
+    {
+        Profile._ID,
+        Profile.DISPLAY_NAME_PRIMARY,
+        Profile.LOOKUP_KEY,
+        Profile.PHOTO_THUMBNAIL_URI
+    };
+
+// Retrieves the profile from the Contacts Provider
+mProfileCursor =
+        getContentResolver().query(
+                Profile.CONTENT_URI,
+                mProjection ,
+                null,
+                null,
+                null);
+</pre>
+<p class="note">
+    <strong>注:</strong> 連絡先の行を複数取得する場合、そのなかの 1 つがユーザー プロファイルかどうかを確認するには、行の {@link android.provider.ContactsContract.ContactsColumns#IS_USER_PROFILE} 列をテストします。
+
+その連絡先がユーザー プロファイルであれば、この列は「1」に設定されています。
+
+</p>
+<h2 id="ContactsProviderMetadata">連絡先プロバイダのメタデータ</h2>
+<p>
+    連絡先プロバイダは、連絡先データの状態を継続的に追跡するためのデータをリポジトリで管理します。
+リポジトリに関するこのメタデータは、RawContacts、Data、Contacts の各テーブルの行、{@link android.provider.ContactsContract.Settings} テーブル、{@link android.provider.ContactsContract.SyncState} テーブルなど、さまざまな場所に格納されています。
+
+
+次の表に、各メタデータの効果を示します。
+
+</p>
+<p class="table-caption" id="table3">
+  <strong>表 3.</strong> 連絡先プロバイダに用意されているメタデータ</p>
+<table>
+    <tr>
+        <th scope="col">テーブル</th>
+        <th scope="col">列</th>
+        <th scope="col">値</th>
+        <th scope="col">意味</th>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.RawContacts}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.SyncColumns#DIRTY}</td>
+        <td>「0」 - 前回の同期以降、変更はありません。</td>
+        <td rowspan="2">
+            端末上で変更があり、サーバーと同期する必要がある未加工連絡先をマークします。
+Android アプリケーションが行をアップデートすると、連絡先プロバイダによって値が自動的に設定されます。
+
+            <p>
+                未加工連絡先やデータのテーブルを変更する同期アダプタは、使用するコンテンツ URI の末尾に文字列 {@link android.provider.ContactsContract#CALLER_IS_SYNCADAPTER} を必ず追加してください。
+
+これにより、プロバイダが行をダーティとマークするのを防ぐことができます。
+                こうしないと、同期アダプタによる変更がローカルな変更と認識され、変更のソースがサーバーであるにもかかわらず、その変更がサーバーに送信されます。
+
+            </p>
+        </td>
+    </tr>
+    <tr>
+            <td>「1」 - 前回の同期以降に変更があり、サーバーへの同期が必要です。</td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#VERSION}</td>
+        <td>この行のバージョン番号。</td>
+        <td>
+            この行またはその関連データが変更されるたび、連絡先プロバイダがこの値を自動的にインクリメントします。
+
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.Data}</td>
+        <td>{@link android.provider.ContactsContract.DataColumns#DATA_VERSION}</td>
+        <td>この行のバージョン番号。</td>
+        <td>
+            このデータ行が変更されるたび、連絡先プロバイダがこの値を自動的にインクリメントします。
+
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}</td>
+        <td>
+            この未加工連絡先をそれが作成されたアカウントと一意に結び付ける文字列値。
+
+        </td>
+        <td>
+            同期アダプタが新しい未加工連絡先を作成するたび、この列はその未加工連絡先に対するサーバーの一意の ID に設定される必要があります。
+Android アプリケーションが新しい未加工連絡先を作成した場合、そのアプリケーションはこの列を空欄のままにする必要があります。
+同期アダプタはこれを確認して、サーバー上に新しい未加工連絡先を作成し、{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID} の値を取得します。
+
+
+            <p>
+                特に、ソース ID はアカウント タイプごとに<strong>一意</strong>で、同期中に安定している必要があります。
+
+            </p>
+                <ul>
+                    <li>
+                        Unique: アカウントの各未加工連絡先には独自のソース ID が必要です。これを強制しないと、連絡先アプリケーションに問題を引き起こすことになります。
+
+                        同じアカウント <em>タイプ</em>に対する 2 つの未加工連絡先が、同じソース ID を持つことがありえます。
+たとえば、アカウント {@code emily.dickinson@gmail.com} の未加工連絡先「Thomas Higginson」は、アカウント {@code emilyd@gmail.com} の未加工連絡先「Thomas Higginson」と同じソース ID を持つことができます。
+
+
+
+                    </li>
+                    <li>
+                        Stable: ソース ID は、未加工連絡先のオンライン サービス データにおいて変わらない部分です。
+たとえば、ユーザーが [アプリ] 設定から [連絡先ストレージ] を消去し、再同期したとしても、復元された未加工連絡先のソース ID は以前と同じになります。
+
+これを強制しないと、ショートカットが機能しなくなります。
+
+                    </li>
+                </ul>
+        </td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Groups}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.GroupsColumns#GROUP_VISIBLE}</td>
+        <td>「0」 - このグループに属する連絡先が Android アプリケーションの UI に表示されなくなります。</td>
+        <td>
+            この列は、ユーザーが特定のグループに属する連絡先を非表示にすることを許可するサーバーに対して互換性を確保するために用意されています。
+
+        </td>
+    </tr>
+    <tr>
+        <td>「1」 - このグループに属する連絡先を Android アプリケーションの UI に表示できます。</td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Settings}</td>
+        <td rowspan="2">
+            {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE}</td>
+        <td>
+            「0」 - このアカウントとアカウント タイプについて、グループに属さない連絡先は Android アプリケーションの UI に表示されなくなります。
+
+        </td>
+        <td rowspan="2">
+            デフォルトでは、グループに属する未加工連絡先がないなら連絡先は表示されません（未加工連絡先のグループ メンバーシップは、{@link android.provider.ContactsContract.Data} テーブルの 1 つないし複数の {@link android.provider.ContactsContract.CommonDataKinds.GroupMembership} 行によって示されます）。
+
+
+
+            あるアカウントとアカウント タイプについて、{@link android.provider.ContactsContract.Settings} テーブルの行でこのフラグを設定すると、グループのない連絡先を強制的に表示できます。
+
+            このフラグの用途の 1 つとして、グループを使用しないサーバーから連絡先を取得して表示することが考えられます。
+        </td>
+    </tr>
+    <tr>
+        <td>
+            「0」 - このアカウントとアカウント タイプについて、グループに属さない連絡先が Android アプリケーションの UI に表示されます。
+
+        </td>
+
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.SyncState}</td>
+        <td>（すべて）</td>
+        <td>
+            このテーブルを使用して、同期アダプタのメタデータを格納します。
+        </td>
+        <td>
+            このテーブルを使用すると、同期状態などの同期関連データを永続的に端末上に格納できます。
+
+        </td>
+    </tr>
+</table>
+<h2 id="Access">連絡先プロバイダへのアクセス</h2>
+<p>
+    このセクションでは、連絡先プロバイダからのデータにアクセスするためのガイドラインについて、以下に注目して説明します。
+
+</p>
+<ul>
+    <li>
+        エンティティ クエリ。
+    </li>
+    <li>
+        バッチ変更。
+    </li>
+    <li>
+        インテントを使用した取得と変更。
+    </li>
+    <li>
+        データ整合性。
+    </li>
+</ul>
+<p>
+    同期アダプタからの変更については、<a href="#SyncAdapters">連絡先プロバイダの同期アダプタ</a>でも詳しく説明しています。
+
+</p>
+<h3 id="Entities">エンティティのクエリ</h3>
+<p>
+    連絡先プロバイダのテーブルは階層構造になっており、ある行とその「子」の行すべてを取得すると便利なことがよくあります。
+たとえば、ある人に関するすべての情報を表示するために、{@link android.provider.ContactsContract.Contacts} 行 1 行に対するすべての {@link android.provider.ContactsContract.RawContacts} 行や、{@link android.provider.ContactsContract.RawContacts} 行 1 行に対するすべての {@link android.provider.ContactsContract.CommonDataKinds.Email} 行を取得することが考えられます。
+
+
+
+
+こうした処理をやりやすくするため、連絡先プロバイダには<strong>エンティティ</strong>構造が用意されています。これは、テーブル間でのデータベースの和集合のように機能します。
+
+
+</p>
+<p>
+    1 つのエンティティは、ある親テーブルとその子テーブルから選ばれた列からなるテーブルのようなものです。
+    エンティティをクエリする場合は、そのエンティティで使用できる列に基づいてプロジェクションと検索の条件を指定します。
+その結果が {@link android.database.Cursor} で、取得された各子テーブル行につき 1 行を含みます。
+たとえば、ある連絡先名と、その名前のすべての未加工連絡先の {@link android.provider.ContactsContract.CommonDataKinds.Email} 行について、{@link android.provider.ContactsContract.Contacts.Entity} をクエリすると、各 {@link android.provider.ContactsContract.CommonDataKinds.Email} 行につき 1 行を含む {@link android.database.Cursor} が得られます。
+
+
+
+
+</p>
+<p>
+    エンティティにより、クエリが簡素化されます。エンティティを使用することで、ある連絡先または未加工連絡先の連絡先データをすべて取得できるため、まず親テーブルにクエリして ID を取得し、次にその ID 使用して子テーブルにクエリする必要がありません。また、連絡先プロバイダは、エンティティに対するクエリを 1 回のトランザクションで処理することから、取得されたデータの内部的な整合性が保証されます。
+
+
+
+
+</p>
+<p class="note">
+    <strong>注:</strong> エンティティには通常、親テーブルと子テーブルのすべての列が含まれるわけではありません。
+そのエンティティの列名定数のリストにない列名に対して作業しようとすると、{@link java.lang.Exception} が発生します。
+
+</p>
+<p>
+    次のスニペットは、ある連絡先のすべての未加工連絡先を取得する方法を示しています。このスニペットは、「メイン」と「詳細」という 2 つのアクティビティを持つ、もっと大きなアプリケーションの一部です。
+メイン アクティビティは、連絡先の行の一覧を示します。ユーザーが 1 つを選択すると、このアクティビティはその ID を詳細アクティビティに送ります。
+
+詳細アクティビティは {@link android.provider.ContactsContract.Contacts.Entity} を使用して、選択した連絡先と関連付けられているすべての未加工連絡先から取得したすべてのデータ行を示します。
+
+
+</p>
+<p>
+    このスニペットは「詳細」アクティビティからの抜粋です。
+</p>
+<pre>
+...
+    /*
+     * Appends the entity path to the URI. In the case of the Contacts Provider, the
+     * expected URI is content://com.google.contacts/#/entity (# is the ID value).
+     */
+    mContactUri = Uri.withAppendedPath(
+            mContactUri,
+            ContactsContract.Contacts.Entity.CONTENT_DIRECTORY);
+
+    // Initializes the loader identified by LOADER_ID.
+    getLoaderManager().initLoader(
+            LOADER_ID,  // The identifier of the loader to initialize
+            null,       // Arguments for the loader (in this case, none)
+            this);      // The context of the activity
+
+    // Creates a new cursor adapter to attach to the list view
+    mCursorAdapter = new SimpleCursorAdapter(
+            this,                        // the context of the activity
+            R.layout.detail_list_item,   // the view item containing the detail widgets
+            mCursor,                     // the backing cursor
+            mFromColumns,                // the columns in the cursor that provide the data
+            mToViews,                    // the views in the view item that display the data
+            0);                          // flags
+
+    // Sets the ListView's backing adapter.
+    mRawContactList.setAdapter(mCursorAdapter);
+...
+&#64;Override
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+
+    /*
+     * Sets the columns to retrieve.
+     * RAW_CONTACT_ID is included to identify the raw contact associated with the data row.
+     * DATA1 contains the first column in the data row (usually the most important one).
+     * MIMETYPE indicates the type of data in the data row.
+     */
+    String[] projection =
+        {
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID,
+            ContactsContract.Contacts.Entity.DATA1,
+            ContactsContract.Contacts.Entity.MIMETYPE
+        };
+
+    /*
+     * Sorts the retrieved cursor by raw contact id, to keep all data rows for a single raw
+     * contact collated together.
+     */
+    String sortOrder =
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID +
+            " ASC";
+
+    /*
+     * Returns a new CursorLoader. The arguments are similar to
+     * ContentResolver.query(), except for the Context argument, which supplies the location of
+     * the ContentResolver to use.
+     */
+    return new CursorLoader(
+            getApplicationContext(),  // The activity's context
+            mContactUri,              // The entity content URI for a single contact
+            projection,               // The columns to retrieve
+            null,                     // Retrieve all the raw contacts and their data rows.
+            null,                     //
+            sortOrder);               // Sort by the raw contact ID.
+}
+</pre>
+<p>
+    読み込みが完了すると、{@link android.app.LoaderManager} は {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished(Loader, D) onLoadFinished()} に対するコールバックを起動します。
+
+このメソッドへの入力引数の 1 つは、クエリの結果を含む {@link android.database.Cursor} です。
+独自アプリでは、データをこの {@link android.database.Cursor} から取得して表示したりさらに処理したりできます。
+
+</p>
+<h3 id="Transactions">バッチ変更</h3>
+<p>
+    可能であれば必ず、連絡先プロバイダのデータを「バッチモード」で挿入、アップデート、削除してください。そのためには、{@link android.content.ContentProviderOperation} オブジェクトの {@link java.util.ArrayList} を作成し、{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} を呼び出します。
+
+
+連絡先プロバイダはすべての操作を 1 つのトランザクションの 1 つの {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} で行うため、変更内容が連絡先リポジトリで不整合のままになることは決してありません。
+
+
+
+また、バッチ変更では、未加工連絡先とその詳細データを同時に挿入しやすくなっています。
+
+</p>
+<p class="note">
+    <strong>注:</strong> <em>1 つ</em>の未加工連絡先を変更する場合は、変更を独自アプリ内で処理するのではなく、インテントを端末の連絡先アプリケーションに送信することを検討してください。この方法については、<a href="#Intents">インテントを使用した取得と変更</a>で詳しく説明しています。
+
+
+
+</p>
+<h4>明け渡し点</h4>
+<p>
+    多数の操作を伴うバッチ変更は、他のプロセスをブロックしてユーザーにとっての全体的な使用感を悪化させかねません。
+意図したすべての変更をできるだけ少ない個別リストに整理するとともに、それらがシステムをブロックしないようにするために、1 つまたは複数の操作に<strong>明け渡し点</strong>を設定してください。
+
+
+    明け渡し点の実体は、{@link android.content.ContentProviderOperation#isYieldAllowed()} の値が <code>true</code> に設定された {@link android.content.ContentProviderOperation} オブジェクトです。
+
+連絡先プロバイダが明け渡し点に遭遇すると、作業を一時中断して他のプロセスを実行させ、現在のトランザクションをクローズします。
+作業を再開した連絡先プロバイダは、{@link java.util.ArrayList} に含まれている次の操作を行い、新しいトランザクションを始めます。
+
+
+</p>
+<p>
+    明け渡し点により、{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} の呼び出し 1 回につき複数のトランザクションが発生します。
+そのため、明け渡し点は 1 組の関連する行への最後の操作に設定してください。
+
+    たとえば、未加工連絡先の行とその関連データ行を追加する一連の操作の最後に、あるいは 1 人の連絡先に関連する 1 組の行に対する最後の操作に、明け渡し点を設定します。
+
+
+</p>
+<p>
+    明け渡し点は、アトミック操作の単位でもあります。2 つの明け渡し点間のすべてのアクセスは、1 つのまとまりとして成功または失敗します。
+明け渡し点を設定しない場合、最小のアトミック操作は操作のバッチ全体になります。
+明け渡し点を使用すると、操作がシステムのパフォーマンスを低下させるのを防ぐと同時に、操作の一部分が確実にアトミックになります。
+
+
+</p>
+<h4>変更の後方参照</h4>
+<p>
+    新しい未加工連絡先の行とその関連データの行を 1 組の {@link android.content.ContentProviderOperation} オブジェクトとして挿入している場合は、データの行を未加工連絡先の行にリンクする必要があります。そのためには、未加工連絡先の {@code android.provider.BaseColumns#_ID} 値を {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID} 値として挿入します。
+
+
+
+ただし、この値は、データの行のために{@link android.content.ContentProviderOperation} を作成している間は使用できません。未加工連絡先に {@link android.content.ContentProviderOperation} 操作がまだ適用されていないからです。
+
+
+これを回避するため、{@link android.content.ContentProviderOperation.Builder} クラスにはメソッド {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()} が用意されています。
+
+
+    このメソッドを使用すると、前の操作の結果を使用して列を挿入または変更できます。
+
+</p>
+<p>
+    {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()} メソッドには引数が 2 つあります。
+
+</p>
+    <dl>
+        <dt>
+            <code>key</code>
+        </dt>
+        <dd>
+            キーと値のペアのキーです。この引数の値は、変更中のテーブルに含まれる列であることが必要です。
+
+        </dd>
+        <dt>
+            <code>previousResult</code>
+        </dt>
+        <dd>
+            {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} から取得した {@link android.content.ContentProviderResult} オブジェクトの配列に含まれる値の、0 ベースのインデックスです。
+
+バッチ操作が適用されると、各操作の結果は結果用の中間配列に格納されます。
+
+<code>previousResult</code> 値はそうした結果の 1 つのインデックスで、<code>key</code> 値を使用して取得され、格納されます。
+
+これにより、新しい未加工連絡先レコードを挿入してその {@code android.provider.BaseColumns#_ID} 値に戻り、次に {@link android.provider.ContactsContract.Data} 行を追加するときにその値を「後方参照」できます。
+
+
+            <p>
+                {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} を初めて呼び出すと、指定した {@link android.content.ContentProviderOperation} オブジェクトの {@link java.util.ArrayList} と同じサイズを使用して、結果配列全体が作成されます。
+
+
+ただし、結果配列に含まれるすべての要素は <code>null</code> に設定され、そのためまだ適用されていない操作から結果を後方参照しようとすると {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()} が {@link java.lang.Exception} をスローします。
+
+
+
+
+
+            </p>
+        </dd>
+    </dl>
+<p>
+    次のスニペットは、新しい未加工連絡先とデータをバッチで挿入する方法を示しています。その中には、明け渡し点を指定し、後方参照を使用するコードが含まれています。
+これらのスニペットは、<code><a href="{@docRoot}resources/samples/ContactManager/index.html">
+    Contact Manager</a></code> サンプル アプリケーションの <code>ContactAdder</code> クラスの一部である <code>createContacEntry()</code> メソッドの拡張版です。
+
+
+
+</p>
+<p>
+    最初のスニペットは、連絡先データを UI から取得します。この時点で、ユーザーは新しい未加工連絡先の追加先となるアカウントを既に選択してあります。
+
+</p>
+<pre>
+// Creates a contact entry from the current UI values, using the currently-selected account.
+protected void createContactEntry() {
+    /*
+     * Gets values from the UI
+     */
+    String name = mContactNameEditText.getText().toString();
+    String phone = mContactPhoneEditText.getText().toString();
+    String email = mContactEmailEditText.getText().toString();
+
+    int phoneType = mContactPhoneTypes.get(
+            mContactPhoneTypeSpinner.getSelectedItemPosition());
+
+    int emailType = mContactEmailTypes.get(
+            mContactEmailTypeSpinner.getSelectedItemPosition());
+</pre>
+<p>
+    次のスニペットは、未加工連絡先の行を {@link android.provider.ContactsContract.RawContacts} テーブルに挿入する操作を作成します。
+
+</p>
+<pre>
+    /*
+     * Prepares the batch operation for inserting a new raw contact and its data. Even if
+     * the Contacts Provider does not have any data for this person, you can't add a Contact,
+     * only a raw contact. The Contacts Provider will then add a Contact automatically.
+     */
+
+     // Creates a new array of ContentProviderOperation objects.
+    ArrayList&lt;ContentProviderOperation&gt; ops =
+            new ArrayList&lt;ContentProviderOperation&gt;();
+
+    /*
+     * Creates a new raw contact with its account type (server type) and account name
+     * (user's account). Remember that the display name is not stored in this row, but in a
+     * StructuredName data row. No other data is required.
+     */
+    ContentProviderOperation.Builder op =
+            ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI)
+            .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType())
+            .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    次に、表示名、電話、メールのデータ行を作成します。
+</p>
+<p>
+    操作の各ビルダー オブジェクトは、{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()} を使用して {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID} を取得します。
+
+
+この参照が最初の操作からの {@link android.content.ContentProviderResult} オブジェクトを後方参照しており、それが未加工連絡先の行を追加し、新しい {@code android.provider.BaseColumns#_ID} 値を返します。
+
+
+その結果、各データ行はその {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID} によって、属する新しい {@link android.provider.ContactsContract.RawContacts} 行に自動的にリンクされます。
+
+
+</p>
+<p>
+    メール行を追加する {@link android.content.ContentProviderOperation.Builder} オブジェクトは、明け渡し点を設定する {@link android.content.ContentProviderOperation.Builder#withYieldAllowed(boolean) withYieldAllowed()} でフラグ付けされます。
+
+
+</p>
+<pre>
+    // Creates the display name for the new raw contact, as a StructuredName data row.
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * withValueBackReference sets the value of the first argument to the value of
+             * the ContentProviderResult indexed by the second argument. In this particular
+             * call, the raw contact ID column of the StructuredName data row is set to the
+             * value of the result returned by the first operation, which is the one that
+             * actually adds the raw contact row.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to StructuredName
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
+
+            // Sets the data row's display name to the name in the UI.
+            .withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified phone number and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Phone
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
+
+            // Sets the phone number and type
+            .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, phone)
+            .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, phoneType);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified email and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Email
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE)
+
+            // Sets the email address and type
+            .withValue(ContactsContract.CommonDataKinds.Email.ADDRESS, email)
+            .withValue(ContactsContract.CommonDataKinds.Email.TYPE, emailType);
+
+    /*
+     * Demonstrates a yield point. At the end of this insert, the batch operation's thread
+     * will yield priority to other threads. Use after every set of operations that affect a
+     * single contact, to avoid degrading performance.
+     */
+    op.withYieldAllowed(true);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    最後のスニペットは、新しい未加工連絡先とデータ行を挿入する {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} を呼び出しています。
+
+
+</p>
+<pre>
+    // Ask the Contacts Provider to create a new contact
+    Log.d(TAG,"Selected account: " + mSelectedAccount.getName() + " (" +
+            mSelectedAccount.getType() + ")");
+    Log.d(TAG,"Creating contact: " + name);
+
+    /*
+     * Applies the array of ContentProviderOperation objects in batch. The results are
+     * discarded.
+     */
+    try {
+
+            getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
+    } catch (Exception e) {
+
+            // Display a warning
+            Context ctx = getApplicationContext();
+
+            CharSequence txt = getString(R.string.contactCreationFailure);
+            int duration = Toast.LENGTH_SHORT;
+            Toast toast = Toast.makeText(ctx, txt, duration);
+            toast.show();
+
+            // Log exception
+            Log.e(TAG, "Exception encountered while inserting contact: " + e);
+    }
+}
+</pre>
+<p>
+    バッチ処理を使用すると、<strong>楽観的並行性制御</strong>を実装できます。これは、背後のリポジトリをロックする必要なく変更トランザクションを適用する手法です。
+
+    この手法を使用するには、トランザクションを適用してから、同時に行うことのできる可能性のある他の変更をチェックします。
+一貫性のない変更が発生していることがわかった場合は、トランザクションをロールバックしてやり直します。
+
+</p>
+<p>
+    楽観的並行性制御は、一度に使用するユーザーが 1 人でデータリポジトリへの同時アクセスがまれなモバイル端末に便利です。
+ロックが使用されないため、ロックの設定や他のトランザクションによるロックの解放待ちで時間を無駄にしません。
+
+</p>
+<p>
+    {@link android.provider.ContactsContract.RawContacts} 行を 1 行更新している間に楽観的並行性制御を使用する方法は次のとおりです。
+
+</p>
+<ol>
+    <li>
+        取得する他のデータとともに、未加工連絡先の {@link android.provider.ContactsContract.SyncColumns#VERSION} 列を取得します。
+
+    </li>
+    <li>
+        制約を強制するのに適した {@link android.content.ContentProviderOperation.Builder} オブジェクトを、メソッド {@link android.content.ContentProviderOperation#newAssertQuery(Uri)} を使用して作成します。
+
+コンテンツ URI に、未加工連絡先の {@code android.provider.BaseColumns#_ID} が末尾に追加された {@link android.provider.ContactsContract.RawContacts#CONTENT_URI RawContacts.CONTENT_URI} を使用します。
+
+
+
+    </li>
+    <li>
+        {@link android.content.ContentProviderOperation.Builder} オブジェクトに対し、{@link android.content.ContentProviderOperation.Builder#withValue(String, Object) withValue()} を呼び出して、{@link android.provider.ContactsContract.SyncColumns#VERSION} 列と取得したばかりのバージョン番号を比較します。
+
+
+
+    </li>
+    <li>
+        同じ {@link android.content.ContentProviderOperation.Builder} に対し、{@link android.content.ContentProviderOperation.Builder#withExpectedCount(int) withExpectedCount()} を呼び出して、このアサーションで 1 行だけがテストされるようにします。
+
+
+    </li>
+    <li>
+        {@link android.content.ContentProviderOperation.Builder#build()} を呼び出して {@link android.content.ContentProviderOperation} オブジェクトを作成し、次のこのオブジェクトを {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} に渡す {@link java.util.ArrayList} に先頭オブジェクトとして追加します。
+
+
+
+    </li>
+    <li>
+        バッチトランザクションを適用します。
+    </li>
+</ol>
+<p>
+    目的の未加工連絡先の行が、行の読み込みからその変更の試行までの間に別の操作によってアップデートされた場合、{@link android.content.ContentProviderOperation} の「アサート」が失敗し、操作のバッチ全体がバックアウトされます。
+
+バックアウトが終わったら、バッチをやり直すこと、または他のアクションを行うことができます。
+
+</p>
+<p>
+    次のスニペットは、{@link android.content.CursorLoader} を使用して未加工連絡先を 1 つクエリした後に、{@link android.content.ContentProviderOperation} を「アサート」します。
+
+
+</p>
+<pre>
+/*
+ * The application uses CursorLoader to query the raw contacts table. The system calls this method
+ * when the load is finished.
+ */
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor cursor) {
+
+    // Gets the raw contact's _ID and VERSION values
+    mRawContactID = cursor.getLong(cursor.getColumnIndex(BaseColumns._ID));
+    mVersion = cursor.getInt(cursor.getColumnIndex(SyncColumns.VERSION));
+}
+
+...
+
+// Sets up a Uri for the assert operation
+Uri rawContactUri = ContentUris.withAppendedId(RawContacts.CONTENT_URI, mRawContactID);
+
+// Creates a builder for the assert operation
+ContentProviderOperation.Builder assertOp = ContentProviderOperation.netAssertQuery(rawContactUri);
+
+// Adds the assertions to the assert operation: checks the version and count of rows tested
+assertOp.withValue(SyncColumns.VERSION, mVersion);
+assertOp.withExpectedCount(1);
+
+// Creates an ArrayList to hold the ContentProviderOperation objects
+ArrayList ops = new ArrayList&lt;ContentProviderOperationg&gt;;
+
+ops.add(assertOp.build());
+
+// You would add the rest of your batch operations to "ops" here
+
+...
+
+// Applies the batch. If the assert fails, an Exception is thrown
+try
+    {
+        ContentProviderResult[] results =
+                getContentResolver().applyBatch(AUTHORITY, ops);
+
+    } catch (OperationApplicationException e) {
+
+        // Actions you want to take if the assert operation fails go here
+    }
+</pre>
+<h3 id="Intents">インテントを使用した取得と変更</h3>
+<p>
+    インテントを端末の連絡先アプリケーションに送信すると、連絡先プロバイダに間接的にアクセスできます。
+インテントが端末の連絡先アプリケーション UI を起動し、ユーザーはそこで連絡先関連の作業を行えます。
+このタイプのアクセスで、ユーザーは次の作業ができます。
+    <ul>
+        <li>連絡先をリストから選び、アプリケーションに返してさらに作業する。</li>
+        <li>既存の連絡先データを編集する。</li>
+        <li>任意のアカウントに新しい未加工連絡先を挿入する。</li>
+        <li>連絡先または連絡先データを削除する。</li>
+    </ul>
+<p>
+    ユーザーがデータを挿入またはアップデートしている場合は、まずデータを収集し、次にそれをインテントの一部として送信できます。
+
+</p>
+<p>
+    インテントを使用して端末の連絡先アプリケーション経由で連絡先プロバイダにアクセスする場合、連絡先プロバイダにアクセスするための独自の UI やコードを作成する必要はありません。
+また、連絡先プロバイダに対する読み取りや書き込みのパーミッションを要求する必要もありません。
+端末の連絡先アプリケーションは、連絡先に対する読み取りパーミッションをデリゲートできます。また、連絡先プロバイダへの変更を他のアプリケーション経由で行っていることから、書き込みパーミッションは不要です。
+
+
+</p>
+<p>
+    プロバイダにアクセスするためのインテントを送信する汎用プロセスについては、<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">コンテンツ プロバイダの基本</a>のセクション「インテント経由のデータアクセス」で詳しく説明しています。
+
+表 4 に、利用可能なタスクで使用できるアクション、MIME タイプ、データ値をまとめます。{@link android.content.Intent#putExtra(String, String) putExtra()} で使用できるエクストラ値については、{@link android.provider.ContactsContract.Intents.Insert} のリファレンス ドキュメントに一覧があります。
+
+
+
+
+</p>
+<p class="table-caption" id="table4">
+  <strong>表 4.</strong> 連絡先プロバイダのインテント
+</p>
+<table style="width:75%">
+    <tr>
+        <th scope="col" style="width:10%">タスク</th>
+        <th scope="col" style="width:5%">アクション</th>
+        <th scope="col" style="width:10%">データ</th>
+        <th scope="col" style="width:10%">MIME タイプ</th>
+        <th scope="col" style="width:25%">注</th>
+    </tr>
+    <tr>
+        <td><strong>連絡先をリストから選ぶ</strong></td>
+        <td>{@link android.content.Intent#ACTION_PICK}</td>
+        <td>
+            次のどれかです。
+            <ul>
+                <li>
+{@link android.provider.ContactsContract.Contacts#CONTENT_URI Contacts.CONTENT_URI}。連絡先のリストを表示します。
+
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Phone#CONTENT_URI Phone.CONTENT_URI}。未加工連絡先の電話番号のリストを表示します。
+
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal#CONTENT_URI StructuredPostal.CONTENT_URI}。未加工連絡先の住所のリストを表示します。
+
+
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_URI Email.CONTENT_URI}。未加工連絡先のメールアドレスのリストを表示します。
+
+                </li>
+            </ul>
+        </td>
+        <td>
+            使用せず
+        </td>
+        <td>
+            指定したコンテンツ URI のタイプに応じて、未加工連絡先のリストか、未加工連絡先から取得されたデータのリストを表示します。
+
+            <p>
+                {@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()} を呼び出してください。それにより、選択した行のコンテンツ URI が返されます。
+
+URI の形式は、テーブルのコンテンツ URI の末尾にその行の <code>LOOKUP_ID</code> が追加されたものです。
+
+                端末の連絡先アプリは、このアクティビティの実行中を通して、読み取りと書き込みのパーミッションをこのコンテンツ URI にデリゲートします。
+詳しくは、「<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">コンテンツ プロバイダの基本</a>」をご覧ください。
+
+
+            </p>
+        </td>
+    </tr>
+    <tr>
+        <td><strong>新しい未加工連絡先を挿入する</strong></td>
+        <td>{@link android.provider.ContactsContract.Intents.Insert#ACTION Insert.ACTION}</td>
+        <td>該当せず</td>
+        <td>
+            {@link android.provider.ContactsContract.RawContacts#CONTENT_TYPE RawContacts.CONTENT_TYPE}。未加工連絡先のセットに対する MIME タイプです。
+
+        </td>
+        <td>
+            端末の連絡先アプリケーションの [<strong>連絡先の追加</strong>] 画面を表示します。インテントに追加したエクストラ値が表示されます。
+{@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()} を使用して送信すると、新たに追加された未加工連絡先の URI が、アクティビティの {@link android.app.Activity#onActivityResult(int, int, Intent) onActivityResult()} コールバック メソッドの {@link android.content.Intent} 引数の「data」フィールドに格納されて戻ってきます。
+
+
+
+
+この値を取得するには、{@link android.content.Intent#getData()} を呼び出します。
+        </td>
+    </tr>
+    <tr>
+        <td><strong>連絡先を編集する</strong></td>
+        <td>{@link android.content.Intent#ACTION_EDIT}</td>
+        <td>
+            連絡先の {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI}。
+エディタ アクティビティを使用すると、ユーザーがその連絡先に関連付けられている任意のデータを編集できます。
+
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE Contacts.CONTENT_ITEM_TYPE}。1 つの連絡先です。
+</td>
+        <td>
+            連絡先アプリケーションに連絡先の編集画面を表示します。インテントに追加したエクストラ値が表示されます。
+ユーザーが [<strong>完了</strong>] をタップして編集内容を保存すると、アクティビティがフォアグラウンドに戻ります。
+
+        </td>
+    </tr>
+    <tr>
+        <td><strong>ピッカー（やはりデータを追加できる）を表示する。</strong></td>
+        <td>{@link android.content.Intent#ACTION_INSERT_OR_EDIT}</td>
+        <td>
+            該当せず
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE}
+        </td>
+         <td>
+            このインテントは、連絡先アプリのピッカー画面を常に表示します。ユーザーは、編集する連絡先を選ぶか、新しい連絡先を追加できます。
+ユーザーの選択に応じて編集画面か追加画面が開き、インテントに含めて渡したエクストラ データが表示されます。
+
+メールアドレスや電話番号などの連絡先データを独自アプリに表示する場合は、このインテントを使用すると、ユーザーが既存の連絡先にデータを追加できます。
+
+
+            <p class="note">
+                <strong>注:</strong> このインテントのエクストラで名前の値を送信する必要はありません。ユーザーは必ず既存の名前を選ぶか新しい名前を追加するからです。
+そのうえ、アプリが名前を送信し、ユーザーが編集することを選んだ場合、連絡先アプリは送信した名前を表示し、以前の値を上書きします。
+
+ユーザーがこのことに気付かず、編集内容を保存すると、以前の値が失われます。
+
+            </p>
+         </td>
+    </tr>
+</table>
+<p>
+    端末の連絡先アプリは、インテントを使用して未加工連絡先や任意のデータを削除することを許可しません。
+そのため、未加工連絡先を削除するには {@link android.content.ContentResolver#delete(Uri, String, String[]) ContentResolver.delete()} または {@link android.content.ContentProviderOperation#newDelete(Uri) ContentProviderOperation.newDelete()} を使用してください。
+
+
+
+</p>
+<p>
+    次のスニペットは、新しい未加工連絡先とデータをバッチで挿入するインテントをコンストラクトして送信する方法を示しています。
+
+</p>
+<pre>
+// Gets values from the UI
+String name = mContactNameEditText.getText().toString();
+String phone = mContactPhoneEditText.getText().toString();
+String email = mContactEmailEditText.getText().toString();
+
+String company = mCompanyName.getText().toString();
+String jobtitle = mJobTitle.getText().toString();
+
+// Creates a new intent for sending to the device's contacts application
+Intent insertIntent = new Intent(ContactsContract.Intents.Insert.ACTION);
+
+// Sets the MIME type to the one expected by the insertion activity
+insertIntent.setType(ContactsContract.RawContacts.CONTENT_TYPE);
+
+// Sets the new contact name
+insertIntent.putExtra(ContactsContract.Intents.Insert.NAME, name);
+
+// Sets the new company and job title
+insertIntent.putExtra(ContactsContract.Intents.Insert.COMPANY, company);
+insertIntent.putExtra(ContactsContract.Intents.Insert.JOB_TITLE, jobtitle);
+
+/*
+ * Demonstrates adding data rows as an array list associated with the DATA key
+ */
+
+// Defines an array list to contain the ContentValues objects for each row
+ArrayList&lt;ContentValues&gt; contactData = new ArrayList&lt;ContentValues&gt;();
+
+
+/*
+ * Defines the raw contact row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues rawContactRow = new ContentValues();
+
+// Adds the account type and name to the row
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType());
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+// Adds the row to the array
+contactData.add(rawContactRow);
+
+/*
+ * Sets up the phone number data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues phoneRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+phoneRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
+);
+
+// Adds the phone number and its type to the row
+phoneRow.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phone);
+
+// Adds the row to the array
+contactData.add(phoneRow);
+
+/*
+ * Sets up the email data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues emailRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+emailRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE
+);
+
+// Adds the email address and its type to the row
+emailRow.put(ContactsContract.CommonDataKinds.Email.ADDRESS, email);
+
+// Adds the row to the array
+contactData.add(emailRow);
+
+/*
+ * Adds the array to the intent's extras. It must be a parcelable object in order to
+ * travel between processes. The device's contacts app expects its key to be
+ * Intents.Insert.DATA
+ */
+insertIntent.putParcelableArrayListExtra(ContactsContract.Intents.Insert.DATA, contactData);
+
+// Send out the intent to start the device's contacts app in its add contact activity.
+startActivity(insertIntent);
+</pre>
+<h3 id="DataIntegrity">データの整合性</h3>
+<p>
+    連絡先リポジトリにはユーザーによる修正や更新が予想される重要で秘密性の高いデータが格納されるため、連絡先プロバイダにはデータの整合性に関して明確に定義されたルールがあります。
+連絡先データを変更する際にこれらのルールを守ることは、開発側の責任です。
+ここでは、重要なルールを示します。
+
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 行を、追加する {@link android.provider.ContactsContract.RawContacts} 行ごとに必ず追加してください。
+
+    </dt>
+    <dd>
+        {@link android.provider.ContactsContract.Data} テーブルに {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 行のない {@link android.provider.ContactsContract.RawContacts} 行は、集約中に問題を引き起こすことがあります。
+
+
+
+    </dd>
+    <dt>
+        新しい {@link android.provider.ContactsContract.Data} 行を、その親 {@link android.provider.ContactsContract.RawContacts} 行に必ずリンクしてください。
+
+    </dt>
+    <dd>
+        {@link android.provider.ContactsContract.RawContacts} にリンクされていない {@link android.provider.ContactsContract.Data} 行は端末の連絡先アプリケーションで可視にならず、同期アダプタで問題になることがあります。
+
+
+    </dd>
+    <dt>
+        変更するのは、所有する未加工連絡先のデータに限ってください。
+    </dt>
+    <dd>
+        通常、連絡先プロバイダは複数の異なるアカウント タイプやオンライン サービスから取得したデータを管理しています。
+そのため、アプリケーションが所有しているデータのみ変更または削除されるようにし、アプリケーションが管理しているアカウント タイプとアカウント名のデータのみ挿入するようにすることが必要です。
+
+
+    </dd>
+    <dt>
+        権限、コンテンツ URI、URI パス、列名、MIME タイプ、{@link android.provider.ContactsContract.CommonDataKinds.CommonColumns#TYPE} 値については、{@link android.provider.ContactsContract} とそのサブクラスに定義されている定数を必ず使用してください。
+
+
+    </dt>
+    <dd>
+        そのような定数を使用することがエラーの予防に役立ちます。また、使われなくなった定数があれば、コンパイラーから警告として通知されます。
+
+    </dd>
+</dl>
+<h3 id="CustomData">カスタムデータ行</h3>
+<p>
+    独自のカスタム MIME タイプを作成して使用すると、{@link android.provider.ContactsContract.Data} テーブルで独自データ行を挿入、編集、削除、取得できます。
+独自行で使用できるのは {@link android.provider.ContactsContract.DataColumns} に定義された列だけですが、独自タイプに固有の列名をデフォルトの列名にマッピングできます。
+
+
+端末の連絡先アプリケーションで、独自行のデータは表示されますが、編集または削除はできず、ユーザーはデータの追加ができません。
+
+ユーザーがカスタムデータ行を変更できるようにするには、独自のアプリケーションでエディタ アクティビティを提供する必要があります。
+
+</p>
+<p>
+    カスタムデータを表示するには、1 つの <code>&lt;ContactsAccountType&gt;</code> 要素と 1 つまたは複数の <code>&lt;ContactsDataKind&gt;</code> 子要素を含む <code>contacts.xml</code> ファイルを提供します。
+
+詳しくは、<a href="#SocialStreamDataKind"><code>&lt;ContactsDataKind&gt; element</code></a>に関するセクションで説明しています。
+
+</p>
+<p>
+    カスタム MIME タイプについて詳しくは、「<a href="{@docRoot}guide/topics/providers/content-provider-creating.html">コンテンツ プロバイダの作成</a>」をご覧ください。
+
+
+</p>
+<h2 id="SyncAdapters">連絡先プロバイダの同期アダプタ</h2>
+<p>
+    連絡先プロバイダは、特に端末とオンライン サービスとの間における連絡先データの<strong>同期</strong>を処理するために設計されています。
+これを使用することで、ユーザーは既存のデータを新しい端末にダウンロードしたり、既存のデータを新しいアカウントにアップロードしたりできています。
+
+    また、同期によって、追加や変更のソースに関係なく、ユーザーは最新データを入手できます。
+同期の利点としては他にも、端末がネットワークに接続されていなくても連絡先データを使用できるようになることが挙げられます。
+
+</p>
+<p>
+    同期はさまざまな手法で実装できますが、Android システムでは次のタスクを自動化するプラグイン同期フレームワークを提供しています。
+
+    <ul>
+
+    <li>
+        ネットワークの可用性のチェック。
+    </li>
+    <li>
+        ユーザーのプリファレンスに基づく同期のスケジュールと実施。
+    </li>
+    <li>
+        停止された同期の再開。
+    </li>
+    </ul>
+<p>
+    このフレームワークを使用するには、同期アダプタ プラグインを提供する必要があります。各同期アダプタはサービスと連絡先プロバイダに対して一意ですが、同じサービスに対して複数のアカウント名を処理できます。
+また、このフレームワークでは同じサービスとプロバイダに対して複数の同期アダプタが可能です。
+
+</p>
+<h3 id="SyncClassesFiles">同期アダプタのクラスとファイル</h3>
+<p>
+    同期アダプタは、{@link android.content.AbstractThreadedSyncAdapter} のサブクラスとして実装し、Android アプリケーションの一部としてインストールします。
+
+システムは同期アダプタに関する知識を、アプリケーション マニフェストの要素からと、マニフェストが指す専用の XML ファイルから取得します。
+この XML ファイルは、オンライン サービスのアカウント タイプと連絡先プロバイダに絡む権限を定義しており、この組み合わせでアダプタを一意に識別します。
+
+同期アダプタは、ユーザーが同期アダプタのアカウント タイプに対してアカウントを追加し、同期アダプタの同期対象である連絡先プロバイダで同期を有効にすることで、アクティブになります。
+
+この時点で、システムはアダプタの管理を開始し、連絡先プロバイダとサーバーとの同期が必要になるとそれを呼び出します。
+
+</p>
+<p class="note">
+    <strong>注:</strong> アカウント タイプを同期アダプタの識別の一環として使用することにより、システムは同じ組織から異なるサービスにアクセスする同期アダプタを検出してグループ化できます。
+
+たとえば、Google オンライン サービス用の同期アダプタでは、すべて同じアカウント タイプ <code>com.google</code> です。
+ユーザーが Google アカウントを端末に追加すると、Google サービス用にインストールされているすべての同期アダプタがひとまとめにリストされ、リストされている各同期アダプタは端末上の異なる連絡先プロバイダと同期します。
+
+
+</p>
+<p>
+    データにアクセスするたび、ほとんどのサービスがユーザーに ID の確認を要求するため、Android システムでは、同期アダプタ フレームワークと類似した認証フレームワークを提供しており、往々にして同期アダプタ フレームワークと組み合わせて使用します。
+
+この認証フレームワークでは、{@link android.accounts.AbstractAccountAuthenticator} のサブクラスであるプラグイン認証システムを使用します。
+
+認証システムは、次の手順でユーザーの身元を検証します。
+
+    <ol>
+        <li>
+            ユーザー名とパスワードか、それに準ずる情報（ユーザーの<strong>資格情報</strong>）を収集します。
+
+        </li>
+        <li>
+            収集した資格情報をサービスに送信します。
+        </li>
+        <li>
+            サービスの返答を検証します。
+        </li>
+    </ol>
+<p>
+    サービスが資格情報を受け入れた場合、認証システムはその資格情報を後での使用のために格納します。
+{@link android.accounts.AccountManager} はプラグイン認証フレームワークのおかげで、OAuth2 認証トークンなど、認証システムがサポートして公開することを選択している任意の認証トークンへのアクセスを提供できます。
+
+
+</p>
+<p>
+    認証は必須ではありませんが、たいていの連絡先サービスが使用しています。
+    ただし、認証に Android 認証フレームワークを使用する必要はありません。
+</p>
+<h3 id="SyncAdapterImplementing">同期アダプタの実装</h3>
+<p>
+    連絡先プロバイダ用の同期アダプタを実装するには、まず以下を備えた Android アプリケーションを作成します。
+
+</p>
+    <dl>
+        <dt>
+            システムからの同期アダプタとのバインド要求に対処する {@link android.app.Service} コンポーネント。
+
+        </dt>
+        <dd>
+            システムは、同期しようとするとき、サービスの {@link android.app.Service#onBind(Intent) onBind()} メソッドを呼び出して、同期アダプタの {@link android.os.IBinder} を取得します。
+
+これにより、システムはアダプタのメソッドに対するプロセス間呼び出しを実行できます。
+
+            <p>
+                <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">サンプル同期アダプタ</a>のサンプルアプリで、このサービスのクラス名は <code>com.example.android.samplesync.syncadapter.SyncService</code> です。
+
+
+            </p>
+        </dd>
+        <dt>
+            {@link android.content.AbstractThreadedSyncAdapter} の具象サブクラスとして実装された、実際の同期アダプタ。
+
+        </dt>
+        <dd>
+            このクラスが、サーバーからのデータのダウンロード、端末からのデータのアップロード、競合の解消といった作業を実施します。
+アダフタの主な作業は、メソッド {@link android.content.AbstractThreadedSyncAdapter#onPerformSync( Account, Bundle, String, ContentProviderClient, SyncResult) onPerformSync()} で実行されます。
+
+
+このクラスは、シングルトンとしてインスタンス化する必要があります。
+            <p>
+                <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">サンプル同期アダプタ</a>のサンプルアプリで、同期アダプタはクラス <code>com.example.android.samplesync.syncadapter.SyncAdapter</code> に定義されています。
+
+
+            </p>
+        </dd>
+        <dt>
+            {@link android.app.Application} のサブクラス。
+        </dt>
+        <dd>
+            このクラスは同期アダプタ シングルトンのファクトリとして機能します。同期アダプタのインスタンス化には {@link android.app.Application#onCreate()} メソッドを使用し、同期アダプタ シングルトンを同期アダプタのサービスの {@link android.app.Service#onBind(Intent) onBind()} メソッドに返すための静的な「getter」メソッドを提供します。
+
+
+
+
+        </dd>
+        <dt>
+            <strong>省略可能:</strong> システムからのユーザー認証要求に対処する {@link android.app.Service} コンポーネント。
+
+        </dt>
+        <dd>
+            {@link android.accounts.AccountManager} は、このサービスを開始することによって認証プロセスを始めます。
+サービスの {@link android.app.Service#onCreate()} メソッドは、認証システム オブジェクトをインスタンス化します。
+システムは、アプリケーションの同期アダプタのためにユーザー アカウントを認証しようとするとき、サービスの {@link android.app.Service#onBind(Intent) onBind()} メソッドを呼び出して、認証システムの {@link android.os.IBinder} を取得します。
+
+
+これにより、システムは認証システムのメソッドに対するプロセス間呼び出しを実行できます。
+
+            <p>
+                <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">サンプル同期アダプタ</a>のサンプルアプリで、このサービスのクラス名は <code>com.example.android.samplesync.authenticator.AuthenticationService</code> です。
+
+
+            </p>
+        </dd>
+        <dt>
+            <strong>省略可能:</strong> 認証の要求を処理する {@link android.accounts.AbstractAccountAuthenticator} の具象サブクラス。
+
+
+        </dt>
+        <dd>
+            このクラスは、ユーザーの資格情報をサーバーに対して認証するために {@link android.accounts.AccountManager} が呼び出すメソッドを提供します。認証プロセスの詳細は、使用されているサーバー技術に応じて多岐にわたります。
+
+認証について詳しくは、使用するサーバー ソフトウェアのドキュメントをご覧ください。
+
+            <p>
+                <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">サンプル同期アダプタ</a>のサンプルアプリで、認証はクラス <code>com.example.android.samplesync.authenticator.Authenticator</code> に定義されています。
+
+
+            </p>
+        </dd>
+        <dt>
+            システムに対する同期アダプタと認証システムを定義する XML ファイル。
+        </dt>
+        <dd>
+            前述の同期アダプタと認証システム サービスのコンポーネントは、アプリケーション マニフェストの <code>&lt;<a href="{@docRoot}guide/topics/manifest/service-element.html">service</a>&gt;</code> 要素に定義されます。
+
+
+これらの要素には、特定のデータをシステムに提供する次のような <code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code> 子要素が含まれます。
+
+
+
+
+            <ul>
+                <li>
+                    同期アダプタ サービス用の <code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code> 要素は、XML ファイル <code>res/xml/syncadapter.xml</code> を指します。
+
+
+このファイルが、連絡先プロバイダと同期されるウェブサービスの URI と、そのウェブサービスで使用するアカウント タイプを指定します。
+
+
+                </li>
+                <li>
+                    <strong>省略可能:</strong> 認証システム用の <code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code> 要素は、XML ファイル <code>res/xml/authenticator.xml</code> を指します。
+
+
+このファイルが、この認証システムがサポートするアカウント タイプと、認証プロセスの最中に表示される UI リソースを指定します。
+
+この要素に指定されるアカウント タイプは、同期アダプタ用に指定されるアカウント タイプと同じであることが必要です。
+
+
+                </li>
+            </ul>
+        </dd>
+    </dl>
+<h2 id="SocialStream">ソーシャル ストリーム データ</h2>
+<p>
+    {@code android.provider.ContactsContract.StreamItems} テーブルと {@code android.provider.ContactsContract.StreamItemPhotos} テーブルは、ソーシャル ネットワークからの受信データを管理します。
+
+独自ネットワークからのストリーム データをこれらのテーブルに追加する同期アダプタを作成したり、ストリーム データをこれらのテーブルから読み込んで独自アプリケーションに表示したり、この両方を行ったりできます。
+
+このような機能があると、ソーシャル ネットワーキングのサービスやアプリケーションを Android のソーシャル ネットワーキング機能に統合できます。
+
+</p>
+<h3 id="StreamText">ソーシャル ストリーム テキスト</h3>
+<p>
+    ストリーム アイテムは、必ず未加工連絡先に関連付けられます。{@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID} は、未加工連絡先の <code>_ID</code> 値にリンクされます。
+
+未加工連絡先のアカウント タイプとアカウント名は、ストリーム アイテム行にも格納されます。
+
+</p>
+<p>
+    ストリームからのデータを次の列に格納します。
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_TYPE}
+    </dt>
+    <dd>
+        <strong>必須</strong>。このストリーム アイテムに関連付けられている未加工連絡先の、ユーザーのアカウント タイプ。
+ストリーム アイテムを挿入する際には、この値を忘れずに設定してください。
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_NAME}
+    </dt>
+    <dd>
+        <strong>必須</strong>。このストリーム アイテムに関連付けられている未加工連絡先の、ユーザーのアカウント名。
+ストリーム アイテムを挿入する際には、この値を忘れずに設定してください。
+    </dd>
+    <dt>
+        識別用列
+    </dt>
+    <dd>
+        <strong>必須</strong>。ストリーム アイテムを挿入する際には、次の識別用列を挿入する必要があります。
+
+        <ul>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_ID}:このストリーム アイテムが関連付けられている連絡先の {@code android.provider.BaseColumns#_ID} 値。
+
+
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_LOOKUP_KEY}: このストリーム アイテムが関連付けられている連絡先の {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} 値。
+
+
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID}:このストリーム アイテムが関連付けられている未加工連絡先の {@code android.provider.BaseColumns#_ID} 値。
+
+
+            </li>
+        </ul>
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#COMMENTS}
+    </dt>
+    <dd>
+        省略可能。ストリーム アイテムの冒頭に表示できる概要情報を格納します。
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TEXT}
+    </dt>
+    <dd>
+        ストリーム アイテムのテキスト。アイテムのソースによって投稿されたコンテンツか、そのストリーム アイテムを生成した何らかのアクションに関する説明です。
+この列には、{@link android.text.Html#fromHtml(String) fromHtml()} でレンダリングできる任意の書式や埋め込みリソース画像を含めることができます。
+
+プロバイダは、長いコンテンツを切り捨てたり省いたりすることがありますが、タグは壊さないようにします。
+
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}
+    </dt>
+    <dd>
+        ストリーム アイテムが挿入またはアップデートされた時刻を含むテキスト。エポックからのミリ秒<em></em>の形式です。
+ストリーム アイテムを挿入またはアップデートするアプリケーションは、この列の管理を担当します。この列は、連絡先プロバイダによって自動的に管理されるわけではありません。
+
+
+    </dd>
+</dl>
+<p>
+    ストリーム アイテムの識別情報を表示するには、{@code android.provider.ContactsContract.StreamItemsColumns#RES_ICON}、{@code android.provider.ContactsContract.StreamItemsColumns#RES_LABEL}、{@code android.provider.ContactsContract.StreamItemsColumns#RES_PACKAGE} を使用してアプリケーション内のリソースにリンクします。
+
+
+
+
+</p>
+<p>
+    {@code android.provider.ContactsContract.StreamItems} テーブルには、同期アダプタ専用に列 {@code android.provider.ContactsContract.StreamItemsColumns#SYNC1} ～ {@code android.provider.ContactsContract.StreamItemsColumns#SYNC4} も格納されます。
+
+
+
+</p>
+<h3 id="StreamPhotos">ソーシャル ストリーム フォト</h3>
+<p>
+   {@code android.provider.ContactsContract.StreamItemPhotos} テーブルには、ストリーム アイテムに関連付けられた写真が格納されます。
+このテーブルの {@code android.provider.ContactsContract.StreamItemPhotosColumns#STREAM_ITEM_ID} 列は、{@code android.provider.ContactsContract.StreamItems} テーブルの {@code android.provider.BaseColumns#_ID} 列の値にリンクされます。
+
+
+写真の参照は、テーブルの次の列に格納されます。
+
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotos#PHOTO} 列（BLOB）。
+    </dt>
+    <dd>
+        写真のバイナリ表現。格納や表示のためにプロバイダによってサイズが変更されます。
+        この列は、写真を格納するために使用されていた連絡先プロバイダの従来のバージョンとの下方互換性のために用意されています。
+ただし、現在のバージョンでは、写真の格納にこの列を使用しないでください。
+代わりに、{@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID} または {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}（どちらについても次の項目で説明します）を使用して、写真をファイルに保存します。
+
+
+現状では、この列には写真のサムネイルが格納されており、読み出し可能です。
+
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID}
+    </dt>
+    <dd>
+        未加工連絡先の写真の数値 ID。この値を定数 {@link android.provider.ContactsContract.DisplayPhoto#CONTENT_URI DisplayPhoto.CONTENT_URI} の末尾に追加して、1 つの写真ファイルを指すコンテンツ URI を取得し、{@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String) openAssetFileDescriptor()} を呼び出して、その写真ファイルのハンドルを取得します。
+
+
+
+
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}
+    </dt>
+    <dd>
+        この行によって表されている写真の写真ファイルを直接指すコンテンツ URI。
+        この URI を使用して {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String) openAssetFileDescriptor()} を呼び出して、写真ファイルのハンドルを取得します。
+
+    </dd>
+</dl>
+<h3 id="SocialStreamTables">ソーシャル ストリーム テーブルの使用</h3>
+<p>
+    これらのテーブルは、連絡先プロバイダの他の主なテーブルと同じように機能しますが、次のような例外があります。
+</p>
+    <ul>
+        <li>
+            これらのテーブルには、追加のアクセス パーミッションが必要です。これらからの読み出しには、アプリケーションにパーミッション {@code android.Manifest.permission#READ_SOCIAL_STREAM} が必要です。
+これらの変更には、アプリケーションにパーミッション {@code android.Manifest.permission#WRITE_SOCIAL_STREAM} が必要です。
+
+
+        </li>
+        <li>
+            {@code android.provider.ContactsContract.StreamItems} テーブルについては、各未加工連絡先に格納できる行数に上限があります。
+上限に達すると、連絡先プロバイダは最も古い {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP} を持つ行を自動的に削除して、新しいストリーム アイテムのための領域を作ります。
+
+
+この上限を取得するには、コンテンツ URI {@code android.provider.ContactsContract.StreamItems#CONTENT_LIMIT_URI} にクエリを発行します。
+
+コンテンツ URI を除くすべての引数は、<code>null</code> のままでかまいません。
+このクエリは、列 {@code android.provider.ContactsContract.StreamItems#MAX_ITEMS} だけの 1 行を含む Cursor を返します。
+
+
+        </li>
+    </ul>
+
+<p>
+    クラス {@code android.provider.ContactsContract.StreamItems.StreamItemPhotos} は、1 つのストリーム アイテムの写真行を含む {@code android.provider.ContactsContract.StreamItemPhotos} のサブテーブルを定義します。
+
+
+</p>
+<h3 id="SocialStreamInteraction">ソーシャル ストリーム操作</h3>
+<p>
+    連絡先プロバイダによって端末の連絡先アプリケーションと連携して管理されるソーシャル ストリーム データは、ソーシャル ネットワーキング システムと既存の連絡先を接続するためのとても便利な手段を用意しています。
+
+利用できる機能は次のとおりです。
+</p>
+    <ul>
+        <li>
+            ソーシャル ネットワーキング サービスを連絡先プロバイダに同期アダプタを使用して同期することで、ユーザーの連絡先による最近のアクティビティを取得し、それを {@code android.provider.ContactsContract.StreamItems} テーブルや {@code android.provider.ContactsContract.StreamItemPhotos} テーブルに格納して後で使えるようにできます。
+
+
+
+        </li>
+        <li>
+            ユーザーが連絡先を選択して表示したときには、定期的な同期とは別に同期アダプタを起動して追加データを取得できます。
+この機能により、同期アダプタは連絡先の高解像度の写真や直近のストリーム アイテムを取得できます。
+
+        </li>
+        <li>
+            端末の連絡先アプリケーションと連絡先プロバイダに関する通知を登録すると、連絡先が表示された場合にインテントを受信<em></em>し、その時点で連絡先のステータスをサービスからアップデートできます。
+
+このアプローチは、同期アダプタを使用してフル同期を実施するより、処理が速く、帯域幅が節約されます。
+
+        </li>
+        <li>
+            ユーザーが端末の連絡先アプリケーションで連絡先を見ている間に、その連絡先をソーシャル ネットワーキング サービスに追加できます。
+この機能は「連絡先の招待」機能を使用して実現できます。連絡先の招待は、既存の連絡先をネットワークに追加するアクティビティと、端末の連絡先アプリケーションと連絡先プロバイダにアプリケーションの詳細を提供する XML ファイルとを組み合わせて実現できます。
+
+
+
+        </li>
+    </ul>
+<p>
+    連絡先プロバイダを使用したストリーム アイテムの定期的な同期は、他の同期と同じです。
+同期について詳しくは、<a href="#SyncAdapters">連絡先プロバイダの同期アダプタ</a>をご覧ください。
+通知の登録と連絡先の招待については、次の 2 つのセクションで説明します。
+
+</p>
+<h4>ソーシャル ネットワーキング表示を処理するための登録</h4>
+<p>
+    同期アダプタを登録し、同期アダプタによって管理されている連絡先をユーザーが表示したときに通知されるようにする方法は、次のとおりです。
+
+</p>
+<ol>
+    <li>
+        <code>contacts.xml</code> という名前のファイルをプロジェクトの <code>res/xml/</code> ディレクトリに作成します。
+このファイルが既に存在する場合は、この手順を省略できます。
+    </li>
+    <li>
+        このファイルに要素 <code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code> を追加します。
+
+        この要素が既に存在する場合は、この手順を省略できます。
+    </li>
+    <li>
+        ユーザーが端末の連絡先アプリケーションで連絡先の詳細ページを開いたときに通知されるサービスを登録するには、属性 <code>viewContactNotifyService="<em>serviceclass</em>"</code> を要素に追加します。<code><em>serviceclass</em></code> は、端末の連絡先アプリケーションからインテントを受け取ることになるサービスの完全修飾クラス名です。
+
+
+
+通知側サービスのために、{@link android.app.IntentService} を機能拡張したクラスを使用して、そのサービスがインテントを受け取れるようにします。
+
+受け取るインテントに含まれるデータには、ユーザーがクリックした未加工連絡先のコンテンツ URI が格納されます。
+通知側サービスから、同期アダプタをバインドして呼び出し、未加工連絡先のデータをアップデートできます。
+
+    </li>
+</ol>
+<p>
+    ユーザーがストリーム アイテムかストリーム フォトかその両方をクリックしたときに呼び出されるアクティビティを登録する方法は次のとおりです。
+</p>
+<ol>
+    <li>
+        <code>contacts.xml</code> という名前のファイルをプロジェクトの <code>res/xml/</code> ディレクトリに作成します。
+このファイルが既に存在する場合は、この手順を省略できます。
+    </li>
+    <li>
+        このファイルに要素 <code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code> を追加します。
+
+        この要素が既に存在する場合は、この手順を省略できます。
+    </li>
+    <li>
+        アクティビティのどれかを登録して、ユーザーが端末の連絡先アプリケーションでストリーム アイテムをタップしたことに対処するには、属性 <code>viewStreamItemActivity="<em>activityclass</em>"</code> を要素に追加します。<code><em>activityclass</em></code> は、端末の連絡先アプリケーションからインテントを受け取ることになるアクティビティの完全修飾クラス名です。
+
+
+
+
+    </li>
+    <li>
+        アクティビティのどれかを登録して、ユーザーが端末の連絡先アプリケーションでストリーム フォトをタップしたことに対処するには、属性 <code>viewStreamItemPhotoActivity="<em>activityclass</em>"</code> を要素に追加します。<code><em>activityclass</em></code> は、端末の連絡先アプリケーションからインテントを受け取ることになるアクティビティの完全修飾クラス名です。
+
+
+
+
+    </li>
+</ol>
+<p>
+    <code>&lt;ContactsAccountType&gt;</code> 要素については、<a href="#SocialStreamAcctType">&lt;ContactsAccountType&gt; 要素</a>で詳しく説明しています。
+
+</p>
+<p>
+    受け取るインテントには、ユーザーがクリックしたアイテムまたは写真のコンテンツ URI が格納されます。
+    テキスト アイテムと写真とで異なるアクティビティを使用するには、同じファイルで両方の属性を使用します。
+</p>
+<h4>ソーシャル ネットワーキング サービスの操作</h4>
+<p>
+    ユーザーは、連絡先をソーシャル ネットワーキング サービスに招待するのに、端末の連絡先アプリケーションを離れる必要はありません。
+その代わりとして、連絡先をアクティビティのどれかに招待するインテントを端末の連絡先アプリケーションに送信させることができます。
+これをセットアップする方法は次のとおりです。
+</p>
+<ol>
+    <li>
+        <code>contacts.xml</code> という名前のファイルをプロジェクトの <code>res/xml/</code> ディレクトリに作成します。
+このファイルが既に存在する場合は、この手順を省略できます。
+    </li>
+    <li>
+        このファイルに要素 <code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code> を追加します。
+
+        この要素が既に存在する場合は、この手順を省略できます。
+    </li>
+    <li>
+        次の属性を追加します。
+        <ul>
+            <li><code>inviteContactActivity="<em>activityclass</em>"</code></li>
+            <li>
+                <code>inviteContactActionLabel="&#64;string/<em>invite_action_label</em>"</code>
+            </li>
+        </ul>
+        <code><em>activityclass</em></code> 値は、インテントを受信するアクティビティの完全修飾クラス名です。
+<code><em>invite_action_label</em></code> 値は、端末の連絡先アプリケーションの [<strong>Add Connection</strong>] メニューに表示される文字列です。
+
+
+    </li>
+</ol>
+<p class="note">
+    <strong>注:</strong> <code>ContactsSource</code> は廃止されたタグ名で、<code>ContactsAccountType</code> に置き換わっています。
+
+</p>
+<h3 id="ContactsFile">contacts.xml リファレンス</h3>
+<p>
+    ファイル <code>contacts.xml</code> には、同期アダプタやアプリケーションと連絡先アプリケーションや連絡先プロバイダとのやり取りを管理する XML 要素が含まれています。
+これらの要素について、以降のセクションで説明します。
+
+</p>
+<h4 id="SocialStreamAcctType">&lt;ContactsAccountType&gt; 要素</h4>
+<p>
+    <code>&lt;ContactsAccountType&gt;</code> 要素は、アプリケーションと連絡先アプリケーションとのやり取りを管理します。
+構文は次のとおりです。
+</p>
+<pre>
+&lt;ContactsAccountType
+        xmlns:android="http://schemas.android.com/apk/res/android"
+        inviteContactActivity="<em>activity_name</em>"
+        inviteContactActionLabel="<em>invite_command_text</em>"
+        viewContactNotifyService="<em>view_notify_service</em>"
+        viewGroupActivity="<em>group_view_activity</em>"
+        viewGroupActionLabel="<em>group_action_text</em>"
+        viewStreamItemActivity="<em>viewstream_activity_name</em>"
+        viewStreamItemPhotoActivity="<em>viewphotostream_activity_name</em>"&gt;
+</pre>
+<p>
+    <strong>含まれているファイル:</strong> 
+</p>
+<p>
+    <code>res/xml/contacts.xml</code>
+</p>
+<p>
+    <strong>含めることのできる要素:</strong> 
+</p>
+<p>
+    <strong><code>&lt;ContactsDataKind&gt;</code></strong>
+</p>
+<p>
+    <strong>説明:</strong> 
+</p>
+<p>
+    ユーザーが連絡先の 1 人をソーシャル ネットワーキングに招待できるようにしたり、ソーシャル ネットワーキング ストリームのどれかがアップデートされたらユーザーに通知したりするための、Android コンポーネントや UI ラベルを宣言します。
+
+
+</p>
+<p>
+    属性プレフィックス <code>android:</code> は、<code>&lt;ContactsAccountType&gt;</code> の属性に必須ではないことに注目してください。
+
+</p>
+<p>
+    <strong>属性:</strong> 
+</p>
+<dl>
+    <dt>{@code inviteContactActivity}</dt>
+    <dd>
+        ユーザーが端末の連絡先アプリケーションで [<strong>Add Connection</strong>] を選択したときに起動する、アプリケーション内のアクティビティの完全修飾クラス名。
+
+
+    </dd>
+    <dt>{@code inviteContactActionLabel}</dt>
+    <dd>
+        [<strong>Add Connection</strong>] メニューで、{@code inviteContactActivity} に指定されたアクティビティ用に表示されるテキスト。
+
+        たとえば、文字列「Follow in my network」を指定できます。このラベルには文字列リソース ID を使用できます。
+
+    </dd>
+    <dt>{@code viewContactNotifyService}</dt>
+    <dd>
+        ユーザーが連絡先を表示したときに通知を受け取ることになる、独自アプリケーション内のサービスの完全修飾クラス名。
+この通知は端末の連絡先アプリケーションによって送信されます。これを使用することで、アプリケーションはデータ処理の多い操作を必要になるまで延期できます。
+
+たとえば、アプリケーションはこの通知への対応として、連絡先の高解像度写真と直近のソーシャル ストリーム アイテムを読み込んで表示できます。
+
+この機能について詳しくは、<a href="#SocialStreamInteraction">ソーシャル ストリーム操作</a>で説明しています。
+<code>NotifierService.java</code> ファイルに指定された通知サービスの例は、<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a> サンプル アプリケーションにあります。
+
+
+
+    </dd>
+    <dt>{@code viewGroupActivity}</dt>
+    <dd>
+        グループ情報を表示できる、独自アプリケーション内のアクティビティの完全修飾クラス名。
+ユーザーが端末の連絡先アプリケーションでグループラベルをタップすると、このアクティビティの UI が表示されます。
+
+    </dd>
+    <dt>{@code viewGroupActionLabel}</dt>
+    <dd>
+        ユーザーがアプリケーションでグループを表示できるようにする UI コントロールに対し、連絡先アプリケーションが表示するラベル。
+
+        <p>
+            たとえば、端末に Google+ アプリケーションをインストールし、Google+ を連絡先アプリケーションと同期すると、Google+ のサークルが連絡先アプリケーションの [<strong>グループ</strong>] タブにグループとして表示されます。
+
+Google+ サークルのどれかをクリックすると、そのサークルに所属する人が「グループ」として表示されます。
+表示の最上部に、Google+ アイコンが表示されます。それをクリックすると、制御が Google+ アプリに移ります。連絡先アプリケーションはこれを {@code viewGroupActivity} を使用して行い、Google+ アイコンを {@code viewGroupActionLabel} の値として使用します。
+
+
+
+
+        </p>
+        <p>
+            この属性には、文字列リソース ID を使用できます。
+        </p>
+    </dd>
+    <dt>{@code viewStreamItemActivity}</dt>
+    <dd>
+        ユーザーが未加工連絡先のストリーム アイテムをタップしたときに端末の連絡先アプリケーションが起動する、独自アプリケーション内のアクティビティの完全修飾クラス名。
+
+    </dd>
+    <dt>{@code viewStreamItemPhotoActivity}</dt>
+    <dd>
+        ユーザーが未加工連絡先のストリーム アイテムで写真をタップしたときに端末の連絡先アプリケーションが起動する、独自アプリケーション内のアクティビティの完全修飾クラス名。
+
+
+    </dd>
+</dl>
+<h4 id="SocialStreamDataKind">&lt;ContactsDataKind&gt; 要素</h4>
+<p>
+    <code>&lt;ContactsDataKind&gt;</code> 要素は、連絡先アプリケーションにおける独自アプリケーションのカスタムデータ行の表示を管理します。構文は次のとおりです。
+
+</p>
+<pre>
+&lt;ContactsDataKind
+        android:mimeType="<em>MIMEtype</em>"
+        android:icon="<em>icon_resources</em>"
+        android:summaryColumn="<em>column_name</em>"
+        android:detailColumn="<em>column_name</em>"&gt;
+</pre>
+<p>
+    <strong>含まれているファイル:</strong> 
+</p>
+<code>&lt;ContactsAccountType&gt;</code>
+<p>
+    <strong>説明:</strong> 
+</p>
+<p>
+    この要素は、カスタムデータ行のコンテンツを未加工連絡先の詳細の一部として連絡先アプリケーションに表示させるために使用します。
+<code>&lt;ContactsAccountType&gt;</code> の各 <code>&lt;ContactsDataKind&gt;</code> 子要素は、同期アダプタが {@link android.provider.ContactsContract.Data} テーブルに追加するカスタムデータ行のタイプを表します。
+
+使用するカスタム MIME タイプごとに <code>&lt;ContactsDataKind&gt;</code> 要素を 1 つ追加します。
+データを表示しないカスタムデータ行がある場合は、この要素を追加する必要はありません。
+
+</p>
+<p>
+    <strong>属性:</strong> 
+</p>
+<dl>
+    <dt>{@code android:mimeType}</dt>
+    <dd>
+        {@link android.provider.ContactsContract.Data} テーブルに含まれるカスタムデータ行のどれかに定義したカスタム MIME タイプ。
+たとえば、値 <code>vnd.android.cursor.item/vnd.example.locationstatus</code> は、連絡先の最新の場所情報を記録するデータ行のためのカスタム MIME タイプということが考えられます。
+
+
+    </dd>
+    <dt>{@code android:icon}</dt>
+    <dd>
+        連絡先アプリケーションがデータの隣に表示する Android <a href="{@docRoot}guide/topics/resources/drawable-resource.html">ドローアブル リソース</a>。
+
+そのデータが独自サービスからのものであることを示すのに使用します。
+
+    </dd>
+    <dt>{@code android:summaryColumn}</dt>
+    <dd>
+        データ行から取得された 2 つの値で最初の列名。この値は、このデータ行のエントリの先頭行として表示されます。
+この先頭行は、データの要約として使われることを狙ったものですが、省略可能です。
+<a href="#detailColumn">android:detailColumn</a> もご覧ください。
+
+    </dd>
+    <dt>{@code android:detailColumn}</dt>
+    <dd>
+        データ行から取得された 2 つの値で 2 番目の列名。この値は、このデータ行のエントリの 2 行目として表示されます。
+{@code android:summaryColumn} もご覧ください。
+
+    </dd>
+</dl>
+<h2 id="AdditionalFeatures">連絡先プロバイダの追加機能</h2>
+<p>
+    ここまでのセクションで説明した主な機能の他に、連絡先プロバイダには連絡先データの作業用として次のような便利な機能が用意されています。
+
+</p>
+    <ul>
+       <li>連絡先グループ</li>
+       <li>写真機能</li>
+    </ul>
+<h3 id="Groups">連絡先グループ</h3>
+<p>
+    連絡先プロバイダでは、オプションで、関連連絡先のコレクションを<strong>グループ</strong> データでラベル付けできます。
+あるユーザー アカウントに関連付けられているサーバーがグループを管理する場合、そのアカウントのアカウント タイプ用の同期アダプタが、連絡先プロバイダとサーバーとの間でグループデータを転送する必要があります。
+
+ユーザーが新しい連絡先をサーバーに追加し、その連絡先を新しいグループに入れた場合、同期アダプタはその新しいグループを {@link android.provider.ContactsContract.Groups} テーブルに追加する必要があります。
+
+ある未加工連絡先が属するグループ（複数の場合あり）は、{@link android.provider.ContactsContract.Data} テーブルに、{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership} MIME タイプを使用して格納されます。
+
+
+</p>
+<p>
+    サーバーからの未加工連絡先データを連絡先プロバイダに追加する同期アダプタを設計している場合、グループを使用しないのであれば、連絡先プロバイダに対してデータが可視であることを通知する必要があります。
+
+ユーザーがアカウントを端末に追加したときに実行されるコード内で、連絡先プロバイダがそのアカウントに対して追加する {@link android.provider.ContactsContract.Settings} 行をアップデートします。
+
+この行で、{@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE Settings.UNGROUPED_VISIBLE} 列の値を 1 に設定します。
+
+こうすると、連絡先プロバイダは、グループを使用していない場合でも、独自の連絡先データを可視にします。
+
+</p>
+<h3 id="Photos">連絡先の写真</h3>
+<p>
+    {@link android.provider.ContactsContract.Data} テーブルは、写真を MIME タイプ {@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE Photo.CONTENT_ITEM_TYPE} の行として格納します。
+
+この行の {@link android.provider.ContactsContract.RawContactsColumns#CONTACT_ID} 列は、それが属する未加工連絡先の {@code android.provider.BaseColumns#_ID} 列にリンクされます。
+
+
+    クラス {@link android.provider.ContactsContract.Contacts.Photo} は、連絡先のプライマリ フォトの写真情報を格納する {@link android.provider.ContactsContract.Contacts} のサブテーブルを定義します。ここでプライマリ フォトとは、連絡先のプライマリ未加工連絡先のプライマリ フォトのことを示します。
+
+同様に、クラス {@link android.provider.ContactsContract.RawContacts.DisplayPhoto} は、未加工連絡先のプライマリ フォトに関する情報を含む {@link android.provider.ContactsContract.RawContacts} のサブテーブルを定義します。
+
+
+
+</p>
+<p>
+    {@link android.provider.ContactsContract.Contacts.Photo} と {@link android.provider.ContactsContract.RawContacts.DisplayPhoto} の参照ドキュメントには、写真情報の取得例が含まれています。
+
+未加工連絡先のプライマリ サムネイルを取得するための便利なクラスはありませんが、{@link android.provider.ContactsContract.Data} テーブルにクエリを送信して、未加工連絡先の {@code android.provider.BaseColumns#_ID}、{@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE Photo.CONTENT_ITEM_TYPE}、{@link android.provider.ContactsContract.Data#IS_PRIMARY} 列を選んでその未加工連絡先のプライマリ フォト行を探すことができます。
+
+
+
+
+
+
+</p>
+<p>
+    人のソーシャル ストリーム データにも写真が含まれていることがあります。その場合は {@code android.provider.ContactsContract.StreamItemPhotos} テーブルに格納されています。このテーブルについては、<a href="#StreamPhotos">ソーシャル ストリーム フォト</a>で詳しく説明しています
+
+
+</p>
diff --git a/docs/html-intl/intl/ja/guide/topics/providers/content-provider-basics.jd b/docs/html-intl/intl/ja/guide/topics/providers/content-provider-basics.jd
new file mode 100644
index 0000000..9eef5d6
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/providers/content-provider-basics.jd
@@ -0,0 +1,1196 @@
+page.title=コンテンツ プロバイダの基本
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<!-- In this document -->
+<h2>本書の内容</h2>
+<ol>
+    <li>
+        <a href="#Basics">概要</a>
+        <ol>
+            <li>
+                <a href="#ClientProvider">プロバイダにアクセスする</a>
+            </li>
+            <li>
+                <a href="#ContentURIs">コンテンツ URI</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#SimpleQuery">プロバイダからデータを取得する</a>
+        <ol>
+            <li>
+                <a href="#RequestPermissions">読み取りアクセス パーミッションを要求する</a>
+            </li>
+            <li>
+                <a href="#Query">クエリを作成する</a>
+            </li>
+            <li>
+                <a href="#DisplayResults">クエリ結果を表示する</a>
+            </li>
+            <li>
+                <a href="#GettingResults">クエリ結果を取得する</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#Permissions">コンテンツ プロバイダ パーミッション</a>
+    </li>
+    <li>
+        <a href="#Modifications">データを挿入、更新、削除する</a>
+        <ol>
+            <li>
+                <a href="#Inserting">データを挿入する</a>
+            </li>
+            <li>
+                <a href="#Updating">データを更新する</a>
+            </li>
+            <li>
+                <a href="#Deleting">データを削除する</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#DataTypes">プロバイダ データタイプ</a>
+    </li>
+    <li>
+        <a href="#AltForms">プロバイダ アクセスの別の形式</a>
+        <ol>
+            <li>
+                <a href="#Batch">バッチアクセス</a>
+            </li>
+            <li>
+                <a href="#Intents">インテント経由のデータアクセス</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClasses">コントラクト クラス</a>
+    </li>
+    <li>
+        <a href="#MIMETypeReference">MIME タイプ リファレンス</a>
+    </li>
+</ol>
+
+    <!-- Key Classes -->
+<h2>キークラス</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.content.ContentResolver}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+
+    <!-- Related Samples -->
+<h2>関連サンプル</h2>
+    <ol>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        Cursor (People)</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        Cursor (Phones)</a>
+        </li>
+    </ol>
+
+    <!-- See also -->
+<h2>関連ドキュメント</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+            コンテンツ プロバイダの作成</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+            カレンダー プロバイダ</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+    <!-- Intro paragraphs -->
+<p>
+    コンテンツ プロバイダは、データの中央リポジトリへのアクセスを管理します。プロバイダは Android アプリケーションの一部であり、通常、データを処理するための独自の UI を備えています。
+
+ただし、コンテンツ プロバイダは主に他のアプリケーションでの使用を意図したものです。アプリケーションはプロバイダ クライアント オブジェクトを使用してプロバイダにアクセスします。
+さらに、プロバイダとプロバイダ クライアントにはデータを扱うための一貫性のある標準のインターフェースが備わっており、プロセス間の通信や安全なデータ アクセスを処理します。
+
+
+</p>
+<p>
+    このトピックでは、次の項目に関する基本的な内容を説明します。
+</p>
+    <ul>
+        <li>コンテンツ プロバイダの仕組み。</li>
+        <li>コンテンツ プロバイダからのデータの取得に使用する API。</li>
+        <li>コンテンツ プロバイダへのデータの挿入、データの更新や削除に使用する API。</li>
+        <li>プロバイダでの作業に役立つその他の API 機能。</li>
+    </ul>
+
+    <!-- Basics -->
+<h2 id="Basics">概要</h2>
+<p>
+    外部アプリケーションでは、コンテンツ プロバイダのデータは、リレーショナル データベースで使用する表と同様に、1 つ以上の表として表示されます。
+行はプロバイダが収集するデータの何らかのタイプのインスタンスを表しており、行内のそれぞれの列はインスタンスに対して収集した個々のデータを表しています。
+
+
+</p>
+<p>
+    たとえば、Android プラットフォームに組み込まれているプロバイダの 1 つに単語リストがありますが、ここにはユーザーが保存しておく標準以外の単語のスペリングが格納されます
+表 1 は、このプロバイダの表にデータがどのように格納されているのかを表しています。
+
+</p>
+<p class="table-caption">
+    <strong>表 1:</strong> サンプルの単語リスト表。
+</p>
+<table id="table1" style="width: 50%;">
+    <tr>
+        <th style="width:20%" align="center" scope="col">word</th>
+        <th style="width:20%" align="center" scope="col">app id</th>
+        <th style="width:20%" align="center" scope="col">frequency</th>
+        <th style="width:20%" align="center" scope="col">locale</th>
+        <th style="width:20%" align="center" scope="col">_ID</th>
+    </tr>
+    <tr>
+        <td align="center" scope="row">mapreduce</td>
+        <td align="center">user1</td>
+        <td align="center">100</td>
+        <td align="center">en_US</td>
+        <td align="center">1</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">precompiler</td>
+        <td align="center">user14</td>
+        <td align="center">200</td>
+        <td align="center">fr_FR</td>
+        <td align="center">2</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">applet</td>
+        <td align="center">user2</td>
+        <td align="center">225</td>
+        <td align="center">fr_CA</td>
+        <td align="center">3</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">const</td>
+        <td align="center">user1</td>
+        <td align="center">255</td>
+        <td align="center">pt_BR</td>
+        <td align="center">4</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">int</td>
+        <td align="center">user5</td>
+        <td align="center">100</td>
+        <td align="center">en_UK</td>
+        <td align="center">5</td>
+    </tr>
+</table>
+<p>
+    表 1 の各行は、標準の辞書には含まれていない単語のインスタンスを表しています。
+各列は、該当する単語のデータの一部（その単語が最初に見つかったロケールなど）を表しています。
+列の見出しは、プロバイダに格納される列の名前です。
+行のロケールを調べるには、<code>locale</code> 列を参照します。このプロバイダの場合、<code>_ID</code> 列が「プライマリキー」の列の役割を果たし、プロバイダはこの列を自動的に保持します。
+
+
+</p>
+<p class="note">
+    <strong>注:</strong> プロバイダはプライマリキーを持つ必要がなく、プライマリキーがある場合は <code>_ID</code> をプライマリキーの列名として使用する必要はありません。
+ただし、プロバイダのデータを {@link android.widget.ListView} にバインドする場合は、いずれかの列の名前を <code>_ID</code> とする必要があります。
+
+この要件についての詳細は、<a href="#DisplayResults">クエリ結果を表示する</a>セクションをご覧ください。
+
+</p>
+<h3 id="ClientProvider">プロバイダにアクセスする</h3>
+<p>
+    アプリケーションは、{@link android.content.ContentResolver} クライアント オブジェクトを使用して、コンテンツ プロバイダのデータにアクセスします。
+このオブジェクトには、プロバイダ オブジェクトの同名のメソッドを呼び出すメソッドが備わっています。これは、{@link android.content.ContentProvider} の具体的なサブクラスのインスタンスのいずれかになります。
+
+{@link android.content.ContentResolver} メソッドには、永続ストレージの基本的な「CRUD」（作成、取得、更新、削除）機能が備わっています。
+
+
+</p>
+<p>
+    クライアント アプリケーションのプロセスにおける {@link android.content.ContentResolver} オブジェクトと、プロバイダを所有するアプリケーションの {@link android.content.ContentProvider} オブジェクトが、プロセス間の通信を自動的に処理します。さらに、{@link android.content.ContentProvider} は、データのリポジトリと、外部に表形式で表示されるデータの間の抽象化レイヤーとして機能します。
+
+
+
+
+</p>
+<p class="note">
+    <strong>注:</strong> 通常、アプリケーションがプロバイダにアクセスする場合、そのマニフェスト ファイルで特定のパーミッションを要求する必要があります。
+詳細は、<a href="#Permissions">コンテンツ プロバイダ パーミッション</a>セクションをご覧ください。
+
+</p>
+<p>
+    たとえば、単語リスト プロバイダから単語とそのロケールの一覧を取得するには、{@link android.content.ContentResolver#query ContentResolver.query()} を呼び出します。
+
+    {@link android.content.ContentResolver#query query()} メソッドによって、単語リスト プロバイダが定義する{@link android.content.ContentProvider#query ContentProvider.query()} メソッドが呼び出されます。
+
+コードの次の行は、{@link android.content.ContentResolver#query ContentResolver.query()} 呼び出しを表しています。
+
+<p>
+<pre>
+// Queries the user dictionary and returns results
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,   // The content URI of the words table
+    mProjection,                        // The columns to return for each row
+    mSelectionClause                    // Selection criteria
+    mSelectionArgs,                     // Selection criteria
+    mSortOrder);                        // The sort order for the returned rows
+</pre>
+<p>
+    表 2 は、query(Uri,projection,selection,selectionArgs,sortOrder)} の引数が SQL SELECT 文にどのように一致しているかを示しています。
+
+
+</p>
+<p class="table-caption">
+    <strong>表 2:</strong> SQL クエリと比較した Query()。
+</p>
+<table id="table2" style="width: 75%;">
+    <tr>
+        <th style="width:25%" align="center" scope="col">query() 引数</th>
+        <th style="width:25%" align="center" scope="col">SELECT キーワード / パラメータ</th>
+        <th style="width:50%" align="center" scope="col">注</th>
+    </tr>
+    <tr>
+        <td align="center"><code>Uri</code></td>
+        <td align="center"><code>FROM <em>table_name</em></code></td>
+        <td><code>Uri</code> は、<em>table_name</em> という名前のプロバイダの表にマッピングされます。</td>
+    </tr>
+    <tr>
+        <td align="center"><code>projection</code></td>
+        <td align="center"><code><em>col,col,col,...</em></code></td>
+        <td>
+            <code>projection</code> は、取得するそれぞれの行に含まれる列の配列です。
+
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>selection</code></td>
+        <td align="center"><code>WHERE <em>col</em> = <em>value</em></code></td>
+        <td><code>selection</code> は、行を選択する際の基準を指定します。</td>
+    </tr>
+    <tr>
+        <td align="center"><code>selectionArgs</code></td>
+        <td align="center">
+            （正確に一致するものはありません。選択句では、<code>?</code> プレースホルダーが選択引数に置き換わります）
+
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>sortOrder</code></td>
+        <td align="center"><code>ORDER BY <em>col,col,...</em></code></td>
+        <td>
+            <code>sortOrder</code> は、返される {@link android.database.Cursor} 内で行が表示される順番を指定します。
+
+        </td>
+    </tr>
+</table>
+<h3 id="ContentURIs">コンテンツ URI</h3>
+<p>
+    <strong>コンテンツ URI</strong> は、プロバイダのデータを特定する URI です。コンテンツ URI には、プロバイダ全体の識別名（<strong>認証局</strong>）と表をポイントする名前（<strong>パス</strong>）が含まれます。
+
+プロバイダの表にアクセスするためのクライアント メソッドを呼び出す場合、その引数の 1 つがコンテンツ URI になります。
+
+
+</p>
+<p>
+    コードの前半の行では、定数 {@link android.provider.UserDictionary.Words#CONTENT_URI} に、単語リストの「words」表のコンテンツ URI が入ります。
+
+{@link android.content.ContentResolver} オブジェクトは URI の認証局をパースし、認証局を既知のプロバイダのシステム表と比較して、プロバイダを「解決」します。
+
+その後、{@link android.content.ContentResolver} は、クエリ引数を正しいプロバイダに送信できます。
+
+
+</p>
+<p>
+    {@link android.content.ContentProvider} は、アクセスする表を選択するのに、コンテンツ URI のパス部分を使用します。
+通常、プロバイダは公開する各表の<strong>パス</strong>を持ちます。
+</p>
+<p>
+    コードの前半の行では、「words」表の完全な URI は次のようになります。
+</p>
+<pre>
+content://user_dictionary/words
+</pre>
+<p>
+    ここで、<code>user_dictionary</code> 文字列はプロバイダの認証局になり、<code>words</code> 文字列は表のパスになります。
+文字列 <code>content://</code>（<strong>スキーム</strong>）は常に存在し、これがコンテンツ URI であることを示します。
+
+
+</p>
+<p>
+    多くのプログラムでは、URI の末尾に ID 値を付加することで、表内の 1 つの行にアクセスできます。たとえば、<code>_ID</code> が <code>4</code> の行を単語リストから取得するには、次のコンテンツ URI を使用します。
+
+
+</p>
+<pre>
+Uri singleUri = ContentUris.withAppendedId(UserDictionary.Words.CONTENT_URI,4);
+</pre>
+<p>
+    通常は、一連の行を取得してからいずれかの行を更新、削除するような場合に ID 値を使用します。
+
+</p>
+<p class="note">
+    <strong>注:</strong> {@link android.net.Uri} クラスと {@link android.net.Uri.Builder} クラスには、正しい形式の URI オブジェクトを文字列から作成するための、便利なメソッドが用意されています。
+{@link android.content.ContentUris} には、URI に ID 値を付加するための便利なメソッドが用意されています。前述のスニペットは {@link android.content.ContentUris#withAppendedId
+    withAppendedId()} を使用して、UserDictionary コンテンツ URI に ID を付加しています。
+
+
+</p>
+
+
+    <!-- Retrieving Data from the Provider -->
+<h2 id="SimpleQuery">プロバイダからデータを取得する</h2>
+<p>
+    このセクションでは、単語リスト プロバイダの例を使い、プロバイダからデータを取得する方法を説明します。
+
+</p>
+<p class="note">
+    わかりやすくするために、このセクションのコード スニペットは「UI スレッド」の {@link android.content.ContentResolver#query ContentResolver.query()} を呼び出しています。
+ただし、実際のコードでは、個別のスレッドで非同期にクエリを実行する必要があります。
+この操作は、{@link android.content.CursorLoader} クラスを使用して行うこともできます。このクラスについての詳細は、「<a href="{@docRoot}guide/components/loaders.html">ローダ</a>」に関するガイドをご覧ください。
+
+
+さらに、コードの行はスニペットのみであり、完全なアプリケーションにはなっていません。
+
+</p>
+<p>
+    プロバイダからデータを取得するには、次の基本的な手順に従います。
+</p>
+<ol>
+   <li>
+        プロバイダの読み取りアクセスを要求します。
+   </li>
+   <li>
+        プロバイダにクエリを送信するコードを定義します。
+   </li>
+</ol>
+<h3 id="RequestPermissions">読み取りアクセス パーミッションを要求する</h3>
+<p>
+    プロバイダからデータを取得するには、アプリケーションからプロバイダの読み取りアクセスを要求します。
+実行時にはこのパーミッションを要求できません。その代わりに、<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 要素とプロバイダで定義した正確なパーミッション名を使用して、このパーミッションを必要としていることをマニフェストで指定する必要があります。
+
+
+
+この要素をマニフェストで指定すると、実際に、このパーミッションをアプリケーションに「要求」することになります。
+ユーザーがアプリケーションをインストールすると、この要求が暗黙的に付与されることになります。
+
+</p>
+<p>
+    使用する読み取りアクセス パーミッションの正確な名前と、プロバイダが使用するその他のアクセス パーミッションの名前については、プロバイダのドキュメントをご覧ください。
+
+
+</p>
+<p>
+    プロバイダにアクセスする際のパーミッションのロールの詳細は、<a href="#Permissions">コンテンツ プロバイダ パーミッション</a>セクションをご覧ください。
+
+</p>
+<p>
+    単語リスト プロバイダはパーミッション <code>android.permission.READ_USER_DICTIONARY</code> をマニフェスト ファイルで定義するため、プロバイダからの読み取りを行うアプリケーションはこのパーミッションを要求する必要があります。
+
+
+</p>
+<!-- Constructing the query -->
+<h3 id="Query">クエリを作成する</h3>
+<p>
+    プロバイダからのデータの取得の次の手順では、クエリを作成します。最初のスニペットで、単語リスト プロバイダにアクセスするための変数をいくつか定義します。
+
+</p>
+<pre class="prettyprint">
+
+// A "projection" defines the columns that will be returned for each row
+String[] mProjection =
+{
+    UserDictionary.Words._ID,    // Contract class constant for the _ID column name
+    UserDictionary.Words.WORD,   // Contract class constant for the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant for the locale column name
+};
+
+// Defines a string to contain the selection clause
+String mSelectionClause = null;
+
+// Initializes an array to contain selection arguments
+String[] mSelectionArgs = {""};
+
+</pre>
+<p>
+    次のスニペットでは、単語リスト プロバイダの例を使って、{@link android.content.ContentResolver#query ContentResolver.query()} を使用する方法を示しています。
+
+プロバイダ クライアント クエリは SQL クエリに似たものであり、戻り値となる一連の列、一連の選択基準、並べ替えの順番を含みます。
+
+</p>
+<p>
+    クエリの戻り値となる一連の列は、<strong>投影</strong>（変数 <code>mProjection</code>）と呼ばれます。
+
+</p>
+<p>
+    取得する行を指定する式は、選択句と選択引数に分割されます。
+選択句は論理式やブール式、列名、値（変数 <code>mSelectionClause</code>）の組み合わせになります。
+値の代わりに置き換え可能パラメータ <code>?</code> を指定すると、クエリ メソッドによって、選択引数の配列（変数 <code>mSelectionArgs</code>）から値が取得されます。
+
+
+</p>
+<p>
+    次のスニペットでは、ユーザーが単語を入力しない場合、選択句が <code>null</code> に設定され、クエリによってプロバイダのすべての単語が返されます。
+ユーザーが単語を入力すると、選択句が <code>UserDictionary.Words.WORD + " = ?"</code> に設定され、選択引数の配列の最初の要素が、ユーザーが入力した単語に設定されます。
+
+
+</p>
+<pre class="prettyprint">
+/*
+ * This defines a one-element String array to contain the selection argument.
+ */
+String[] mSelectionArgs = {""};
+
+// Gets a word from the UI
+mSearchString = mSearchWord.getText().toString();
+
+// Remember to insert code here to check for invalid or malicious input.
+
+// If the word is the empty string, gets everything
+if (TextUtils.isEmpty(mSearchString)) {
+    // Setting the selection clause to null will return all words
+    mSelectionClause = null;
+    mSelectionArgs[0] = "";
+
+} else {
+    // Constructs a selection clause that matches the word that the user entered.
+    mSelectionClause = UserDictionary.Words.WORD + " = ?";
+
+    // Moves the user's input string to the selection arguments.
+    mSelectionArgs[0] = mSearchString;
+
+}
+
+// Does a query against the table and returns a Cursor object
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,  // The content URI of the words table
+    mProjection,                       // The columns to return for each row
+    mSelectionClause                   // Either null, or the word the user entered
+    mSelectionArgs,                    // Either empty, or the string the user entered
+    mSortOrder);                       // The sort order for the returned rows
+
+// Some providers return null if an error occurs, others throw an exception
+if (null == mCursor) {
+    /*
+     * Insert code here to handle the error. Be sure not to use the cursor! You may want to
+     * call android.util.Log.e() to log this error.
+     *
+     */
+// If the Cursor is empty, the provider found no matches
+} else if (mCursor.getCount() &lt; 1) {
+
+    /*
+     * Insert code here to notify the user that the search was unsuccessful. This isn't necessarily
+     * an error. You may want to offer the user the option to insert a new row, or re-type the
+     * search term.
+     */
+
+} else {
+    // Insert code here to do something with the results
+
+}
+</pre>
+<p>
+    このクエリは、 SQL 文に似ています。
+</p>
+<pre>
+SELECT _ID, word, locale FROM words WHERE word = &lt;userinput&gt; ORDER BY word ASC;
+</pre>
+<p>
+    この SQL 文では、コントラクト クラスの定数ではなく、実際の列の名前が使用されます。
+</p>
+<h4 id="Injection">悪意のある入力から保護する</h4>
+<p>
+    コンテンツ プロバイダが管理するデータが SQL データベース内にある場合、外部の信頼されていないデータを未処理の SQL 文に含めると SQL インジェクションが発生することがあります。
+
+</p>
+<p>
+    次のような選択句を考えてみます。
+</p>
+<pre>
+// Constructs a selection clause by concatenating the user's input to the column name
+String mSelectionClause =  "var = " + mUserInput;
+</pre>
+<p>
+    このようにすれば、ユーザーが悪意のある SQL を SQL 文に連結できるようになります。
+    たとえば、ユーザーが <code>mUserInput</code> に「nothing; DROP TABLE *;」と入力すると、選択句は <code>var = nothing; DROP TABLE *;</code> となります。
+選択句は SQL 文として処理されるため、この場合、基本的な SQLite データベースのすべての表が消去されることがあります（プロバイダに <a href="http://en.wikipedia.org/wiki/SQL_injection">SQL インジェクション</a>の試みの検出が設定されていない場合）。
+
+
+
+</p>
+<p>
+    この問題を回避するには、<code>?</code> を置き換え可能パラメータとして使う選択句と、選択引数の個別の配列を使用します。
+そうすることで、ユーザー入力は、SQL 文の一部として解釈されずに、クエリに直接バインドされます。
+
+    SQL として扱われないため、ユーザー入力によって悪意のある SQL が挿入されることはありません。ユーザー入力を含める際に連結を使用しないで、次の選択句を使用します。
+
+</p>
+<pre>
+// Constructs a selection clause with a replaceable parameter
+String mSelectionClause =  "var = ?";
+</pre>
+<p>
+    選択引数の配列を次のように設定します。
+</p>
+<pre>
+// Defines an array to contain the selection arguments
+String[] selectionArgs = {""};
+</pre>
+<p>
+    選択引数の配列に次のように値を格納します。
+</p>
+<pre>
+// Sets the selection argument to the user's input
+selectionArgs[0] = mUserInput;
+</pre>
+<p>
+    プロバイダが SQL データベースに基づいたものではない場合でも、選択内容を指定する場合は、<code>?</code> を置き換え可能パラメータとして使う選択句と、選択引数の配列を使用することをお勧めします。
+
+
+</p>
+<!-- Displaying the results -->
+<h3 id="DisplayResults">クエリ結果を表示する</h3>
+<p>
+    {@link android.content.ContentResolver#query ContentResolver.query()} クライアント メソッドは、常に {@link android.database.Cursor} を返します。これには、クエリの選択基準に一致する、行へのクエリの投影によって指定される列が含まれます。
+
+{@link android.database.Cursor} オブジェクトは、含まれる行と列へのランダム読み取りアクセスを提供します。
+
+{@link android.database.Cursor} メソッドを使用すると、結果の行の繰り返し、各列のデータタイプの識別、列からのデータの取得、結果のその他のプロパティの確認といった操作が可能となります。
+
+一部の {@link android.database.Cursor} を実装すると、プロバイダのデータが変更された場合にオブジェクトが自動的に送信されたり、{@link android.database.Cursor} が変更された場合にオブザーバ オブジェクトのメソッドがトリガーされたり、その両方が実行されたりします。
+
+
+</p>
+<p class="note">
+    <strong>注:</strong> クエリを作成するオブジェクトの特性に基づいて、プロバイダによって列へのアクセスが制限されることがあります。
+たとえば、連絡先プロバイダにより同期アダプタは一部の列へのアクセスが制限されるため、その場合はアクティビティやサービスを返しません。
+
+</p>
+<p>
+    選択基準に一致する行がない場合は、{@link android.database.Cursor#getCount Cursor.getCount()} が 0（空のカーソル）の {@link android.database.Cursor} オブジェクトを返します。
+
+
+</p>
+<p>
+    内部エラーが発生した場合、クエリの結果はプロバイダによって異なります。<code>null</code> が返されることもあれば、{@link java.lang.Exception} がスローされることもあります。
+
+</p>
+<p>
+    {@link android.database.Cursor} は行の「一覧」であることから、{@link android.database.Cursor} のコンテンツを表示する場合は、{@link android.widget.SimpleCursorAdapter} 経由で {@link android.widget.ListView} にリンクすることをお勧めします。
+
+
+</p>
+<p>
+    次のスニペットは前のスニペットのコードの続きです。クエリによって取得する {@link android.database.Cursor} を含む {@link android.widget.SimpleCursorAdapter} オブジェクトを作成し、このオブジェクトを {@link android.widget.ListView} のアダプタに設定します。
+
+
+
+</p>
+<pre class="prettyprint">
+// Defines a list of columns to retrieve from the Cursor and load into an output row
+String[] mWordListColumns =
+{
+    UserDictionary.Words.WORD,   // Contract class constant containing the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant containing the locale column name
+};
+
+// Defines a list of View IDs that will receive the Cursor columns for each row
+int[] mWordListItems = { R.id.dictWord, R.id.locale};
+
+// Creates a new SimpleCursorAdapter
+mCursorAdapter = new SimpleCursorAdapter(
+    getApplicationContext(),               // The application's Context object
+    R.layout.wordlistrow,                  // A layout in XML for one row in the ListView
+    mCursor,                               // The result from the query
+    mWordListColumns,                      // A string array of column names in the cursor
+    mWordListItems,                        // An integer array of view IDs in the row layout
+    0);                                    // Flags (usually none are needed)
+
+// Sets the adapter for the ListView
+mWordList.setAdapter(mCursorAdapter);
+</pre>
+<p class="note">
+    <strong>注:</strong> {@link android.database.Cursor} によって {@link android.widget.ListView} を戻すには、カーソルに <code>_ID</code> という名前の列を含める必要があります。
+
+    そのため、{@link android.widget.ListView} には表示されまませんが、前述のクエリは「words」表に <code>_ID</code> 列を取得します。
+
+    また、このような制限があることから、大部分のプロバイダがそれぞれの表に <code>_ID</code> 列を持ちます。
+
+</p>
+
+        <!-- Getting data from query results -->
+<h3 id="GettingResults">クエリ結果を取得する</h3>
+<p>
+    クエリ結果を単に表示するだけでなく、他のタスクに使用することもできます。たとえば、単語リストからスペリングを取得して、それを他のプロバイダで検索するといった操作も可能です。
+
+そのためには、次のように {@link android.database.Cursor} の行に操作を繰り返します。
+</p>
+<pre class="prettyprint">
+
+// Determine the column index of the column named "word"
+int index = mCursor.getColumnIndex(UserDictionary.Words.WORD);
+
+/*
+ * Only executes if the cursor is valid. The User Dictionary Provider returns null if
+ * an internal error occurs. Other providers may throw an Exception instead of returning null.
+ */
+
+if (mCursor != null) {
+    /*
+     * Moves to the next row in the cursor. Before the first movement in the cursor, the
+     * "row pointer" is -1, and if you try to retrieve data at that position you will get an
+     * exception.
+     */
+    while (mCursor.moveToNext()) {
+
+        // Gets the value from the column.
+        newWord = mCursor.getString(index);
+
+        // Insert code here to process the retrieved word.
+
+        ...
+
+        // end of while loop
+    }
+} else {
+
+    // Insert code here to report an error if the cursor is null or the provider threw an exception.
+}
+</pre>
+<p>
+    {@link android.database.Cursor} の実装には「取得」メソッドがいくつか備わっており、オブジェクトからさまざまなタイプのデータを取得できます。
+たとえば、前述のスニペットは {@link android.database.Cursor#getString getString()} を使用しています。
+さらに、列のデータタイプを示す値を返す {@link android.database.Cursor#getType getType()} メソッドも使用しています。
+
+
+</p>
+
+
+    <!-- Requesting permissions -->
+<h2 id="Permissions">コンテンツ プロバイダ パーミッション</h2>
+<p>
+    プロバイダのアプリケーションでは、他のアプリケーションがプロバイダのデータにアクセスするのに必要なパーミッションを指定できます。
+これらのパーミッションを設定しておけば、ユーザーはアプリケーションがアクセスしようとしているデータの種類を把握できます。
+他のアプリケーションは、プロバイダの要件に基づき、そのプロバイダにアクセスするのに必要なパーミッションを要求します。
+エンドユーザーがアプリケーションをインストールする際には、要求されたパーミッションを確認できます。
+
+</p>
+<p>
+    プロバイダのアプリケーションでパーミッションを指定していない場合は、他のアプリケーションはプロバイダのデータにアクセスできません。
+ただし、指定したパーミッションに関係なく、プロバイダのアプリケーションのコンポーネントには完全な読み取り権限と書き込み権限を常に付与する必要があります。
+
+</p>
+<p>
+    前述のとおり、単語リスト プロバイダには、データを取得するための <code>android.permission.READ_USER_DICTIONARY</code> パーミッションが必要です。
+
+    プロバイダには、データの挿入、更新、削除に対してそれぞれ個別の <code>android.permission.WRITE_USER_DICTIONARY</code> パーミッションがあります。
+
+</p>
+<p>
+    プロバイダにアクセスするのに必要なパーミッションを取得するには、アプリケーションのマニフェスト ファイルの <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 要素を使用してパーミッションを要求する必要があります。
+
+Android Package Manager でアプリケーションをインストールする場合は、ユーザーがアプリケーションが要求するすべてのパーミッションを承認する必要があります。
+ユーザーがすべてのパーミッションを承認すると、Package Manager がインストールを続行します。ユーザーが承認しない場合は、Package Manager がインストールを中止します。
+
+
+</p>
+<p>
+    次の <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 要素は、単語リスト プロバイダへの読み取りアクセスを要求します。
+
+
+</p>
+<pre>
+    &lt;uses-permission android:name="android.permission.READ_USER_DICTIONARY"&gt;
+</pre>
+<p>
+    プロバイダ アクセスへのパーミッションの影響については、<a href="{@docRoot}guide/topics/security/security.html">セキュリティとパーミッション</a>に関するガイドをご覧ください。
+
+</p>
+
+
+<!-- Inserting, Updating, and Deleting Data -->
+<h2 id="Modifications">データを挿入、更新、削除する</h2>
+<p>
+    データを収集するには、プロバイダからデータを取得するのと同様に、プロバイダ クライアントとプロバイダの {@link android.content.ContentProvider} 間で操作を行います。
+
+    対応する {@link android.content.ContentProvider} のメソッドに渡した引数を使用して、{@link android.content.ContentResolver} のメソッドを呼び出します。
+プロバイダとプロバイダ クライアントが、セキュリティとプロセス間の通信を自動的に処理します。
+
+</p>
+<h3 id="Inserting">データを挿入する</h3>
+<p>
+    プロバイダにデータを挿入するには、{@link android.content.ContentResolver#insert ContentResolver.insert()} メソッドを呼び出します。
+
+このメソッドはプロバイダに新しい行を挿入し、その行のコンテンツ URI を返します。
+    このスニペットは、単語リスト プロバイダに新しい単語を挿入する方法を示しています。
+</p>
+<pre class="prettyprint">
+// Defines a new Uri object that receives the result of the insertion
+Uri mNewUri;
+
+...
+
+// Defines an object to contain the new values to insert
+ContentValues mNewValues = new ContentValues();
+
+/*
+ * Sets the values of each column and inserts the word. The arguments to the "put"
+ * method are "column name" and "value"
+ */
+mNewValues.put(UserDictionary.Words.APP_ID, "example.user");
+mNewValues.put(UserDictionary.Words.LOCALE, "en_US");
+mNewValues.put(UserDictionary.Words.WORD, "insert");
+mNewValues.put(UserDictionary.Words.FREQUENCY, "100");
+
+mNewUri = getContentResolver().insert(
+    UserDictionary.Word.CONTENT_URI,   // the user dictionary content URI
+    mNewValues                          // the values to insert
+);
+</pre>
+<p>
+    新しい行のデータは 1 つの {@link android.content.ContentValues} オブジェクトに入ります。これは 1 行カーソルの形式に似ています。
+このオブジェクト内の列は同じデータタイプを持つ必要はなく、値をまったく指定しない場合は、{@link android.content.ContentValues#putNull ContentValues.putNull()} を使用して列を <code>null</code> に設定できます。
+
+
+</p>
+<p>
+    この列は自動的に保持されるため、スニペットは <code>_ID</code> 列を追加しません。
+プロバイダは、追加するそれぞれの行に、<code>_ID</code> の一意の値を割り当てます。
+通常、プロバイダはこの値を表のプライマリキーとして使用します。
+</p>
+<p>
+    <code>newUri</code> で返されるコンテンツ URI は、新たに追加された行を特定するものであり、次の形式となります。
+
+</p>
+<pre>
+content://user_dictionary/words/&lt;id_value&gt;
+</pre>
+<p>
+    <code>&lt;id_value&gt;</code> は、新しい行の <code>_ID</code> のコンテンツです。
+    ほとんどのプロバイダではコンテンツ URI のこの形式を自動的に検出し、特定の行で要求された操作を実行します。
+
+</p>
+<p>
+    返された {@link android.net.Uri} から <code>_ID</code> の値を取得するには、{@link android.content.ContentUris#parseId ContentUris.parseId()} を呼び出します。
+
+</p>
+<h3 id="Updating">データを更新する</h3>
+<p>
+    行を更新するには、挿入操作と同じように、値を更新した {@link android.content.ContentValues} オブジェクトと、クエリ操作のときと同じように選択基準を使用します。
+
+    使用するクライアント メソッドは {@link android.content.ContentResolver#update ContentResolver.update()} です。
+更新する列の {@link android.content.ContentValues} オブジェクトに値を追加する操作のみが必要になります。
+列のコンテンツを消去する場合は、値を <code>null</code> に設定します。
+
+</p>
+<p>
+    次のスニペットは、ロケール言語が「en」となっているすべての行のロケールを <code>null</code> に変更します。
+戻り値は、更新された行の数となります。
+</p>
+<pre>
+// Defines an object to contain the updated values
+ContentValues mUpdateValues = new ContentValues();
+
+// Defines selection criteria for the rows you want to update
+String mSelectionClause = UserDictionary.Words.LOCALE +  "LIKE ?";
+String[] mSelectionArgs = {"en_%"};
+
+// Defines a variable to contain the number of updated rows
+int mRowsUpdated = 0;
+
+...
+
+/*
+ * Sets the updated value and updates the selected words.
+ */
+mUpdateValues.putNull(UserDictionary.Words.LOCALE);
+
+mRowsUpdated = getContentResolver().update(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mUpdateValues                       // the columns to update
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    また、{@link android.content.ContentResolver#update ContentResolver.update()} を呼び出すときには、ユーザー入力をサニタイズする必要があります。
+詳細は、<a href="#Injection">悪意のある入力から保護する</a>セクションをご覧ください。
+
+</p>
+<h3 id="Deleting">データを削除する</h3>
+<p>
+    行の削除は行データの取得と似た操作になります。削除する行の選択基準を指定することで、クライアント メソッドが削除した行の数を返します。
+
+    次のスニペットは appid が「user」となっている行を削除します。メソッドによって削除された行の数が返されます。
+
+</p>
+<pre>
+
+// Defines selection criteria for the rows you want to delete
+String mSelectionClause = UserDictionary.Words.APP_ID + " LIKE ?";
+String[] mSelectionArgs = {"user"};
+
+// Defines a variable to contain the number of rows deleted
+int mRowsDeleted = 0;
+
+...
+
+// Deletes the words that match the selection criteria
+mRowsDeleted = getContentResolver().delete(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    また、{@link android.content.ContentResolver#delete ContentResolver.delete()} を呼び出すときには、ユーザー入力をサニタイズする必要があります。
+詳細は、<a href="#Injection">悪意のある入力から保護する</a>セクションをご覧ください。
+
+</p>
+<!-- Provider Data Types -->
+<h2 id="DataTypes">プロバイダ データタイプ</h2>
+<p>
+    コンテンツ プロバイダではさまざまなデータタイプを利用できます。単語リスト プロバイダで提供できるのはテキストのみですが、次のような形式を提供できます。
+
+</p>
+    <ul>
+        <li>
+            整数
+        </li>
+        <li>
+            long 整数（long）
+        </li>
+        <li>
+            浮動小数点
+        </li>
+        <li>
+            long 浮動小数点（double）
+        </li>
+    </ul>
+<p>
+    それ以外にも、プロバイダでは 64KB バイト配列として実装されるバイナリ ラージ オブジェクト（BLOB）もよく使用されます。
+利用可能なデータタイプについては、{@link android.database.Cursor} クラスの「get」メソッドをご覧ください。
+
+</p>
+<p>
+    プロバイダの各列のデータタイプは、通常、そのドキュメントに一覧が記載されています。
+    単語リスト プロバイダのデータタイプは、コントラクト クラス {@link android.provider.UserDictionary.Words} のリファレンスに一覧が記載されています（コントラクト クラスの詳細は、<a href="#ContractClasses">コントラクト クラス</a>セクションをご覧ください）。
+
+
+    さらに、{@link android.database.Cursor#getType
+    Cursor.getType()} を呼び出すことで、データタイプを判断することもできます。
+</p>
+<p>
+    プロバイダは、プロバイダによって定義される各コンテンツ URI の MIME データタイプも保持します。MIME タイプ情報を使用すると、プロバイダが提供するデータをアプリケーションが処理できるかを判断したり、MIME タイプに基づいて処理のタイプを選択したりできます。
+
+通常は、複雑なデータ構造やファイルを持つプロバイダで作業をする際に MIME タイプが必要になります。
+
+たとえば、連絡先プロバイダの {@link android.provider.ContactsContract.Data} 表は MIME タイプを使用して、それぞれの行に格納される連絡先データのタイプをラベル付けします。
+
+コンテンツ URI に対応する MIME タイプを取得するには、{@link android.content.ContentResolver#getType ContentResolver.getType()} を呼び出します。
+
+</p>
+<p>
+    「<a href="#MIMETypeReference">MIME タイプ リファレンス</a>」セクションでは、標準とカスタムの両方の MIME タイプについて説明しています。
+
+</p>
+
+
+<!-- Alternative Forms of Provider Access -->
+<h2 id="AltForms">プロバイダ アクセスの別の形式</h2>
+<p>
+    アプリケーションの開発では、次に示すプロバイダ アクセスの別の 3 つの形式が重要になります。
+</p>
+<ul>
+    <li>
+        <a href="#Batch">バッチアクセス</a>: {@link android.content.ContentProviderOperation} クラスのメソッドを使用したアクセス呼び出しのバッチを作成し、{@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()} に適用できます。
+
+
+    </li>
+    <li>
+        非同期クエリ: クエリは個別のスレッドで実行する必要があります。この操作は、{@link android.content.CursorLoader} オブジェクトを使用して行うこともできます。
+「<a href="{@docRoot}guide/components/loaders.html">ローダ</a>」のガイドには、この操作の例が記載されています。
+
+
+    </li>
+    <li>
+        <a href="#Intents">インテント経由のデータアクセス</a>: インテントをプロバイダに直接送信できませんが、プロバイダのアプリケーションにはインテントを送信できます。通常、プロバイダのデータの修正に最適な機能を備えたアプリケーションになります。
+
+
+    </li>
+</ul>
+<p>
+    バッチアクセスとインテント経由の修正については、次のセクションで説明しています。
+</p>
+<h3 id="Batch">バッチアクセス</h3>
+<p>
+    多数の行を挿入する場合や、同じメソッド呼び出しで複数の表に行を挿入する場合は、プロバイダへのバッチアクセスを使用すると便利です。また、一般的には、境界をまたいでプロセス全体にトランザクションとして一連の操作を実行する場合にもバッチアクセスが便利です。
+
+
+</p>
+<p>
+    「バッチモード」でプロバイダにアクセスするには、{@link android.content.ContentProviderOperation} オブジェクトの配列を作成してから、{@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()} を使用してそれらのオブジェクトをコンテンツ プロバイダに送信します。
+
+
+このメソッドには、特定のコンテンツ URI ではなく、コンテンツ プロバイダの<em>認証局</em>を渡します。そうすることで、配列内のそれぞれの {@link android.content.ContentProviderOperation} オブジェクトを別々の表に対して機能するようになります。
+
+
+{@link android.content.ContentResolver#applyBatch
+    ContentResolver.applyBatch()} への呼び出しでは、結果の配列が返されます。
+</p>
+<p>
+    {@link android.provider.ContactsContract.RawContacts} コントラクト クラスの説明には、バッチ挿入を示したコード スニペットが記載されています。
+<a href="{@docRoot}resources/samples/ContactManager/index.html">Contact Manager</a> のサンプル アプリケーションでは、<code>ContactAdder.java</code> ソースファイルでのバッチアクセスの例が紹介されています。
+
+
+
+</p>
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>ヘルパーアプリでデータを表示する</h2>
+<p>
+    アプリケーションにアクセス パーミッションが<em>付与されている</em>場合でも、インテントを使用して別のアプリケーションにデータを表示できます。
+たとえば、カレンダー アプリケーションは {@link android.content.Intent#ACTION_VIEW} インテントにアクセスしますが、このインテントは特定の日付やイベントを表示するものです。
+
+    これにより、独自の UI を作成しなくても、カレンダー情報を表示できます。この機能の詳細は、「<a href="{@docRoot}guide/topics/providers/calendar-provider.html">カレンダー プロバイダ</a>」のガイドをご覧ください。
+
+
+</p>
+<p>
+    インテントの送信先アプリケーションは、必ずしもプロバイダに関連付けられたアプリケーションである必要はありません。
+たとえば、連絡先プロバイダから連絡先を取得してから、連絡先の画像のコンテンツ URI を含む {@link android.content.Intent#ACTION_VIEW} インテントを画像ビューワに送信するといった操作が可能です。
+
+
+</p>
+</div>
+</div>
+<h3 id="Intents">インテント経由のデータアクセス</h3>
+<p>
+    インテントを使用すれば、コンテンツ プロバイダに間接的にアクセスできます。アプリケーションにアクセス パーミッションがない場合でも、パーミッションを持つアプリケーションから結果のインテントを取得したり、パーミッションを持つアプリケーションをアクティベートしてそのアプリケーションをユーザーに使用させたりすることで、ユーザーがプロバイダのデータにアクセスできるようになります。
+
+
+
+</p>
+<h4>一時的なパーミッションによりアクセスを取得する</h4>
+<p>
+    適切なアクセス パーミッションがない場合でも、パーミッションを持つアプリケーションにインテントを送信し、「URI」パーミッションを含む結果のインテントを受け取ることで、コンテンツ プロバイダのデータにアクセスできます。
+
+
+    これらのパーミッションは特定のコンテンツ URI のパーミッションであり、パーミッションを受け取ったアクティビティが終了するまで効力を持ちます。
+永続的なパーミッションを持つアプリケーションは、次のように結果のインテントにフラグを設定し、一時的なパーミッションを付与します。
+
+</p>
+<ul>
+    <li>
+        <strong>読み取りパーミッション:</strong> {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}
+
+    </li>
+    <li>
+        <strong>書き込みパーミッション:</strong> {@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION}
+
+    </li>
+</ul>
+<p class="note">
+    <strong>注:</strong> これらのフラグは、認証局がコンテンツ URI に含まれるプロバイダへの全般的な読み取りと書き込みアクセスを付与するものではありません。アクセスは URI 自身に限定されます。
+
+</p>
+<p>
+    プロバイダは、<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code> 要素の <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">android:grantUriPermission</a></code> 属性や、<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code> 要素の <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code> 子要素を使用して、コンテンツ URI の URI パーミッションを自身のマニフェストで定義します。
+
+
+
+
+
+
+
+URI パーミッションのメカニズムについての詳細は、URI パーミッション セクションの<a href="{@docRoot}guide/topics/security/security.html">セキュリティとパーミッション</a>に関するガイドをご覧ください。
+
+
+</p>
+<p>
+    たとえば、{@link android.Manifest.permission#READ_CONTACTS} パーミッションを持たない場合でも、連絡先プロバイダの連絡先のデータを取得できます。
+連絡先の誕生日にグリーティング カードをオンラインで送信するアプリケーションなどにこのメカニズムを利用できます。
+ユーザーのすべての連絡先やそのすべての情報へのアクセス件を付与する {@link android.Manifest.permission#READ_CONTACTS} を要求する代わりに、アプリケーションで使用する連絡先をユーザーが制御できるように設定することもできます。
+
+
+そのためには、次の手順を使用します。
+</p>
+<ol>
+    <li>
+        アプリケーションが、メソッド {@link android.app.Activity#startActivityForResult
+        startActivityForResult()} を使用して、アクション {@link android.content.Intent#ACTION_PICK} と「連絡先」MIME タイプ {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE} を含むインテントを送信します。
+
+
+
+    </li>
+    <li>
+        このインテントは連絡帳アプリの「selection」アクティビティのインテント フィルタに一致するため、アクティビティがフォアグラウンドに移動します。
+
+    </li>
+    <li>
+        selection アクティビティでは、更新する連絡先をユーザーが選択します。
+この操作が行われると、selection が {@link android.app.Activity#setResult setResult(resultcode, intent)} を呼び出し、アプリケーションに戻すインテントを設定します。
+
+インテントには、ユーザーが選択した連絡先のコンテンツ URI と、「エクストラ」フラグ {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION} が含まれます。
+
+これらのフラグがあることで、コンテンツ URI がポイントする連絡先のデータを読み取るための URI パーミッションがアプリに付与されます。その後、selection アクティビティによって、アプリケーションに制御を返すための {@link android.app.Activity#finish()} が呼び出されます。
+
+
+
+    </li>
+    <li>
+        アクティビティがフォアグラウンドに戻り、システムがアクティビティの {@link android.app.Activity#onActivityResult onActivityResult()} メソッドを呼び出します。
+
+このメソッドは、連絡帳アプリの selection アクティビティによって作成された結果のインテントを受け取ります。
+
+    </li>
+    <li>
+        結果のインテントのコンテンツ URI を使用すれば、マニフェストで永続的なアクセス パーミッションをプロバイダに要求していなくても、連絡先プロバイダから連絡先のデータを読み取ることができます。
+
+その後、連絡先の誕生日情報やメールアドレスを取得し、グリーティング カードをオンラインで送信できます。
+
+    </li>
+</ol>
+<h4>別のアプリケーションを使用する</h4>
+<p>
+    パーミッションを持つアプリケーションをアクティベートし、そのアプリケーションをユーザーが使用すれば、アクセス パーミッションを持たないデータをユーザーが修正できるようになります。
+
+</p>
+<p>
+    たとえば、アプリケーションの挿入 UI をアクティベートできる {@link android.content.Intent#ACTION_INSERT} インテントをカレンダー アプリケーションが受け入れるとします。このインテントに「エクストラ」データを渡すことで、アプリケーションがそのデータを使用して、事前に入力された UI を作成します。繰り返し発生するイベントは複雑な構文を持つため、カレンダー プロバイダにイベントを挿入する場合は、{@link android.content.Intent#ACTION_INSERT} でカレンダー アプリをアクティベートしてから、ユーザーにイベントを挿入してもらうことをお勧めします。
+
+
+
+
+
+</p>
+<!-- Contract Classes -->
+<h2 id="ContractClasses">コントラクト クラス</h2>
+<p>
+    コントラクト クラスは、アプリケーションがコンテンツ URI、列名、インテント アクション、コンテンツのその他の機能で作業する際に役立つ定数を定義します。
+プロバイダでコントラクト クラスが自動的に含まれることはありません。プロバイダのデベロッパーはコントラクト クラスを定義して、その他のデベロッパーが使用できるようにする必要があります。
+
+Android プラットフォームに含まれる多くのプロバイダは、パッケージ {@link android.provider} 内に対応するコントラクト クラスを持ちます。
+
+</p>
+<p>
+    たとえば、単語リスト プロバイダは、コンテンツ URI と列名の定数を含む、コントラクト クラス {@link android.provider.UserDictionary} を持つとします。
+「words」表のコンテンツ URI は、定数 {@link android.provider.UserDictionary.Words#CONTENT_URI UserDictionary.Words.CONTENT_URI} で定義されます。
+
+
+    さらに、{@link android.provider.UserDictionary.Words} クラスは、このガイドのサンプルのスニペットで使用される、列名の定数を持ちます。
+たとえば、クエリの投影は次のように定義できます。
+
+</p>
+<pre>
+String[] mProjection =
+{
+    UserDictionary.Words._ID,
+    UserDictionary.Words.WORD,
+    UserDictionary.Words.LOCALE
+};
+</pre>
+<p>
+    もう一方のコントラクト クラスは、連絡先プロバイダのクラス {@link android.provider.ContactsContract} です。
+    このクラスのリファレンスには、サンプルのコード スニペットが記載されています。サブクラスの 1 つである {@link android.provider.ContactsContract.Intents.Insert} は、インテントとインテント データの定数を含むコントラクト クラスです。
+
+
+</p>
+
+
+<!-- MIME Type Reference -->
+<h2 id="MIMETypeReference">MIME タイプ リファレンス</h2>
+<p>
+    コンテンツ プロバイダは、標準の MIME メディア タイプかカスタムの MIME タイプ文字列、またはその両方を返すことができます。
+</p>
+<p>
+    MIME タイプは次の形式となります
+</p>
+<pre>
+<em>type</em>/<em>subtype</em>
+</pre>
+<p>
+    たとえば、よく利用される MIME タイプ <code>text/html</code> は、<code>text</code> タイプと <code>html</code> サブタイプを持ちます。
+プロバイダから URI に対してこのタイプが返される場合、その URI を使用するクエリは HTML タグを含むテキストを返すことになります。
+
+</p>
+<p>
+    「ベンダー固有の」MIME タイプとも呼ばれるカスタムの MIME タイプ文字列には、より複雑な <em>type</em> と <em>subtype</em> の値が含まれます。
+複数行の場合、<em>type</em> 値は常に
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>
+</pre>
+<p>
+    となり、1 つの行の場合は
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>
+</pre>
+<p>
+    となります。
+</p>
+<p>
+    <em>subtype</em> はプロバイダ固有の値になります。通常、Android 組み込みプロバイダは単純な subtype を使用します。
+たとえば、連絡先アプリケーションが電話番号の行を作成すると、行には次のように MIME タイプが設定されます。
+
+</p>
+<pre>
+vnd.android.cursor.item/phone_v2
+</pre>
+<p>
+    subtype の値は単純に <code>phone_v2</code> となっていることがわかります。
+</p>
+<p>
+    他のプロバイダ デベロッパーは、プロバイダの認証局と表明に基づいて独自のパターンの subtype を作成できます。
+たとえば、列車の時刻表を含むプロバイダについて考えてみます。
+    プロバイダの認証局は <code>com.example.trains</code> であり、表 Line1、Line2、Line3 を持ちます。
+表 Line1 のコンテンツ URI
+</p>
+<p>
+<pre>
+content://com.example.trains/Line1
+</pre>
+<p>
+    に対しては、プロバイダは次の MIME タイプを返します
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.example.line1
+</pre>
+<p>
+     表 Line2 の行 5 のコンテンツ URI
+</p>
+<pre>
+content://com.example.trains/Line2/5
+</pre>
+<p>
+    に対しては、プロバイダは次の MIME タイプを返します
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.example.line2
+</pre>
+<p>
+    ほとんどのコンテンツ プロバイダが、使用する MIME タイプに対してコントラクト クラス定数を定義します。たとえば、連絡先プロバイダのコントラクト クラス {@link android.provider.ContactsContract.RawContacts} は、1 つの未加工連絡先行の MIME タイプに、定数 {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE} を定義します。
+
+
+
+
+</p>
+<p>
+    1 つの行のコンテンツ URI については、<a href="#ContentURIs">コンテンツ URI</a> セクションをご覧ください。
+
+</p>
diff --git a/docs/html-intl/intl/ja/guide/topics/providers/content-provider-creating.jd b/docs/html-intl/intl/ja/guide/topics/providers/content-provider-creating.jd
new file mode 100644
index 0000000..af21814
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/providers/content-provider-creating.jd
@@ -0,0 +1,1214 @@
+page.title=コンテンツ プロバイダの作成
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<h2>本書の内容</h2>
+<ol>
+    <li>
+        <a href="#DataStorage">データ ストレージを設計する</a>
+    </li>
+    <li>
+        <a href="#ContentURI">コンテンツ URI を設計する</a>
+    </li>
+    <li>
+        <a href="#ContentProvider">ContentProvider クラスを実装する</a>
+        <ol>
+            <li>
+                <a href="#RequiredAccess">必須メソッド</a>
+            </li>
+            <li>
+                <a href="#Query">query() メソッドを実装する</a>
+            </li>
+            <li>
+                <a href="#Insert">insert() メソッドを実装する</a>
+            </li>
+            <li>
+                <a href="#Delete">delete() メソッドを実装する</a>
+            </li>
+            <li>
+                <a href="#Update">update() メソッドを実装する</a>
+            </li>
+            <li>
+                <a href="#OnCreate">onCreate() メソッドを実装する</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#MIMETypes">コンテンツ プロバイダ MIME を実装する</a>
+        <ol>
+            <li>
+                <a href="#TableMIMETypes">テーブルの MIME タイプ</a>
+            </li>
+            <li>
+                <a href="#FileMIMETypes">ファイルの MIME タイプ</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClass">コントラクト クラスを実装する</a>
+    </li>
+    <li>
+        <a href="#Permissions">コンテンツ プロバイダ パーミッションを実装する</a>
+    </li>
+    <li>
+        <a href="#ProviderElement">&lt;provider&gt; 要素</a>
+    </li>
+    <li>
+        <a href="#Intents">インテントとデータアクセス</a>
+    </li>
+</ol>
+<h2>キークラス</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+<h2>関連サンプル</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/NotePad/index.html">
+                Note Pad のサンプル アプリケーション            </a>
+
+        </li>
+    </ol>
+<h2>関連ドキュメント</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+            コンテンツ プロバイダの基本</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+            カレンダー プロバイダ</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+
+<p>
+    コンテンツ プロバイダは、データの中央リポジトリへのアクセスを管理します。Android アプリケーションでは 1 つ以上のクラスとしてプロバイダを実装し、要素をマニフェスト ファイルで実装します。
+
+いずれか 1 つのクラスがサブラス {@link android.content.ContentProvider} を実装します。これは、プロバイダと他のアプリケーションとの間のインターフェースになります。
+
+コンテンツ プロバイダは他のアプリケーションへのデータの提供を意図したものですが、ユーザーがプロバイダに管理されるデータを照会、修正するアクティビティをアプリケーション内に設定することもできます。
+
+
+</p>
+<p>
+    このトピックの残りの部分では、コンテンツ プロバイダと使用する API のリストをビルドするための基本的な手順を挙げていきます。
+
+</p>
+
+
+<!-- Before You Start Building -->
+<h2 id="BeforeYouStart">ビルドを開始する前に</h2>
+<p>
+    ビルドを開始する前に、次の操作を行います。
+</p>
+<ol>
+    <li>
+        <strong>コンテンツ プロバイダが必要かどうかを決定します</strong>。次のような機能を 1 つ以上提供する場合に、コンテンツ プロバイダをビルドする必要があります。
+
+        <ul>
+            <li>他のアプリケーションに複雑なデータやファイルを提供する。</li>
+            <li>アプリから他のアプリへの複雑なデータのコピーをユーザーに許可する。</li>
+            <li>検索フレームワークを使用してカスタムの検索候補を提供する。</li>
+        </ul>
+    <p>
+        完全に独自アプリケーション内だけで使用する場合は、SQLite データベースを使用するプロバイダは必要はありません。<em></em>
+
+    </p>
+    </li>
+    <li>
+        必要かどうかを決定していない場合は、プロバイダの詳細については「<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">コンテンツ プロバイダの基本</a>」のトピックをご覧ください。
+
+
+    </li>
+</ol>
+<p>
+    次に、以下の手順に従ってプロバイダをビルドします。
+</p>
+<ol>
+    <li>
+        データの未処理のストレージを設計します。コンテンツ プロバイダは次の 2 つの方法でデータを提供します。
+        <dl>
+            <dt>
+                ファイルデータ
+            </dt>
+            <dd>
+                通常、写真、オーディオ、ビデオなどのファイルの形式となるデータです。
+ファイルはアプリケーションのプライベート スペースに格納します。
+ファイルに対する別のアプリケーションからの要求に応じて、プロバイダからファイルへのハンドルが提供されます。
+
+            </dd>
+            <dt>
+                「構造化」データ
+            </dt>
+            <dd>
+                通常、データベース、配列、類似の構造の形式となるデータです。
+                テーブルの行と列に互換性を持つ形式でデータが格納されます。行は、担当者や在庫にあるアイテムなどのエンティティを表します。
+列は、担当者の名前やアイテムの価格などの、エンティティの一部のデータを表します。
+一般的にこのタイプのデータは SQLite データベースに格納しますが、任意のタイプの永続ストレージを使用できます。
+
+Android システムで使用できるストレージ タイプの詳細は、<a href="#DataStorage">データ ストレージを設計する</a>をご覧ください。
+
+
+            </dd>
+        </dl>
+    </li>
+    <li>
+        {@link android.content.ContentProvider} クラスの具体的な実装とそれに必要なメソッドを定義します。
+このクラスは、データと Android システムのそれ以外の部分とのインターフェースとなります。
+このクラスの詳細は、<a href="#ContentProvider">ContentProvider クラスを実装する</a>セクションをご覧ください。
+
+    </li>
+    <li>
+        プロバイダの認証局の文字列、コンテンツ URI、列名を定義します。プロバイダのアプリケーションでインテントを処理する場合は、インテント アクション、エクストラ データ、フラグも定義します。
+
+さらに、データにアクセスするアプリケーションに必要なパーミッションも定義します。
+これらの値はすべて定数として個別のコントラクト クラスに定義するようにします。そうしておくと、後で他のデベロッパーに対してこのクラスを公開できます。
+コンテンツ URI の詳細は、<a href="#ContentURI">コンテンツ URI を設計する</a>セクションをご覧ください。
+
+
+        インテントの使用に関する詳細については、<a href="#Intents">インテントとデータアクセス</a>セクションをご覧ください。
+
+    </li>
+    <li>
+        サンプルデータや、プロバイダとクラウドベースのデータの間でデータを同期する {@link android.content.AbstractThreadedSyncAdapter} の実装などの、その他のオプション部分を追加します。
+
+
+    </li>
+</ol>
+
+
+<!-- Designing Data Storage -->
+<h2 id="DataStorage">データ ストレージを設計する</h2>
+<p>
+    コンテンツ プロバイダは、構造化された形式で保存されているデータへのインターフェースです。インターフェースを作成する前に、データの格納方法を決定しておく必要があります。
+データは任意の形式で保存でき、必要に応じてデータの読み取りと書き込みを行うためのインターフェースを設計できます。
+
+</p>
+<p>
+    Android には、次のように、いくつかのデータ格納テクノロジーがあります。
+</p>
+<ul>
+    <li>
+        Android システムには、Android の独自のプロバイダがテーブル指向のデータを格納するために使用する、SQLite データベース API があります。
+{@link android.database.sqlite.SQLiteOpenHelper} クラスを使用すると、データベースを作成できます。また、{@link android.database.sqlite.SQLiteDatabase} クラスは、データベースにアクセスするための基本クラスです。
+
+
+
+        <p>
+            リポジトリを実装するのに、データベースを使用する必要がありません。外部的には、プロバイダはリレーショナル データベースに似た一連のテーブルとして表示されますが、プロバイダの内部実装をそのような形式にする必要はありません。
+
+
+        </p>
+    </li>
+    <li>
+        ファイルデータを格納するために、Android にはファイル指向のさまざまな API があります。
+        ファイル ストレージの詳細は、「<a href="{@docRoot}guide/topics/data/data-storage.html">Data Storage</a>」トピックをご覧ください。
+音楽やビデオのようにメディア関連のデータを提供するプロバイダを設計する場合は、テーブルデータとファイルを組み合わせるプロバイダを作成できます。
+
+
+    </li>
+    <li>
+        ネットワーク ベースのデータで作業する場合は、{@link java.net} と {@link android.net} のクラスを使用します。
+また、ネットワーク ベースをデータベースなどのローカル データストアに同期させ、データをテーブルやファイルとして提供することもできます。
+
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">サンプル同期アダプタ</a>のサンプル アプリケーションでは、このタイプの同期のデモを紹介しています。
+
+    </li>
+</ul>
+<h3 id="DataDesign">
+    データ設計上の考慮事項
+</h3>
+<p>
+    次に、プロバイダのデータ構造を設計する際のヒントを示します。
+</p>
+<ul>
+    <li>
+        テーブルデータには、プロバイダが各行の一意の数値として保持する「プライマリキー」列が常に必要です。
+この値を使用すると、行を他のテーブルの関連する行にリンクできます（「外部キー」として使用）。
+この列には任意の名前を設定できますが、プロバイダ クエリの結果を {@link android.widget.ListView} にリンクさせるには、取得する列のいずれかの名前が <code>_ID</code> になっている必要があるため、{@link android.provider.BaseColumns#_ID BaseColumns._ID} を使用することをお勧めします。
+
+
+
+
+    </li>
+    <li>
+        ビットマップ画像やサイズが非常に大きなその他のファイル指向のデータを提供する場合は、テーブルにデータを直接格納するのではなく、データをファイルに格納し、データを間接的に提供します。
+
+その場合、データにアクセスするには、{@link android.content.ContentResolver} ファイル メソッドの使用が必要であることをプロバイダのユーザーに通知する必要があります。
+
+    </li>
+    <li>
+        サイズや構造が異なるデータを格納するには、バイナリ ラージ オブジェクト（BLOB）データタイプを使用します。
+たとえば、<a href="http://code.google.com/p/protobuf">Protocol Buffer</a> や <a href="http://www.json.org">JSON 構造</a>を格納するには、BLOB 列を使用します。
+
+
+        <p>
+            さらに、BLOB を使用してスキーマに依存しないテーブルを実装できます。<em></em>このタイプのテーブルでは、プライマリキー列、MIME タイプ列、1 つ以上の汎用列を BLOB として定義します。
+
+BLOB 列内のデータの内容は、MIME タイプ列の値によって示されます。
+これにより、同じテーブルにさまざまな行タイプを格納できます。
+連絡先プロバイダの「データ」テーブル {@link android.provider.ContactsContract.Data} は、スキーマに依存しないテーブルの例です。
+
+
+        </p>
+    </li>
+</ul>
+<!-- Designing Content URIs -->
+<h2 id="ContentURI">コンテンツ URI を設計する</h2>
+<p>
+    <strong>コンテンツ URI</strong> は、プロバイダのデータを特定する URI です。コンテンツ URI には、プロバイダ全体の識別名（<strong>認証局</strong>）とテーブルやファイルをポイントする名前（<strong>パス</strong>）が含まれます。
+
+オプションの ID 部分は、テーブル内の個々の行を指します。
+{@link android.content.ContentProvider} のそれぞれのデータアクセス メソッドは引数としてコンテンツ URI を使用します。これにより、アクセスするテーブル、行、ファイルを決定できます。
+
+
+</p>
+<p>
+    コンテンツ URI の基本については、「<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">コンテンツ プロバイダの基本</a>」トピックをご覧ください。
+
+
+</p>
+<h3>認証局を設計する</h3>
+<p>
+    通常、プロバイダは、Android 内部の名前として使用される認証局を 1 つ持ちます。他のプロバイダとの競合を避けるためには、（逆に）プロバイダの認証局の基礎としてインターネット ドメインの所有権を使用する必要があります。
+
+この推奨事項は Android パッケージ名にもあてはまるため、プロバイダを含むパッケージの名前の拡張子として、プロバイダの認証局を定義できます。
+
+たとえば、Android パッケージ名が <code>com.example.&lt;appname&gt;</code> の場合、プロバイダに認証局 <code>com.example.&lt;appname&gt;.provider</code> を付与する必要があります。
+
+
+</p>
+<h3>パス構造を設計する</h3>
+<p>
+    デベロッパーは通常、個々のテーブルを指すパスを末尾に追加して認証局からコンテンツ URI を作成します。
+たとえば、<em>table1</em> と <em>table2</em> の 2 つのテーブルがある場合、前の例の認証局を組み合わせてコンテンツ URI <code>com.example.&lt;appname&gt;.provider/table1</code> と <code>com.example.&lt;appname&gt;.provider/table2</code> を作成します。
+
+
+
+パスは 1 つのセグメントに限定されず、パスの各レベルにテーブルを作成する必要はありません。
+
+</p>
+<h3>コンテンツ URI ID を処理する</h3>
+<p>
+    慣例として、URI の末尾にある行の ID 値を持つコンテンツ URI を受け取ることで、プロバイダはテーブル内の 1 つの行へのアクセスを提供します。さらに、慣例として、プロバイダは ID 値をテーブルの <code>_ID</code> 列とマッチングし、一致する行に対して要求されたアクセスを実行します。
+
+
+
+</p>
+<p>
+    この慣例により、プロバイダにアクセスするアプリの一般的なパターンを簡単に設計できます。アプリはプロバイダにクエリを実行し、{@link android.widget.CursorAdapter} を使用して、取得した {@link android.database.Cursor} を {@link android.widget.ListView} に表示します。
+
+
+    {@link android.widget.CursorAdapter} の定義には、{@link android.database.Cursor} のいずれかの列を <code>_ID</code> に設定する必要があります
+
+</p>
+<p>
+    その後、ユーザーはデータの確認や修正のために、表示された行のいずれかを UI から選択します。
+アプリは {@link android.widget.ListView} を返す {@link android.database.Cursor} から対応する行を取得し、この行の <code>_ID</code> 値を取得し、その値をコンテンツ URI の末尾に追加して、プロバイダにアクセス要求を送ります。
+
+その後、プロバイダは、ユーザーが選択した行にクエリや修正を実行します。
+
+</p>
+<h3>コンテンツ URI パターン</h3>
+<p>
+    受け取ったコンテンツ URI に対するアクションを簡単に選択できるように、プロバイダ API には {@link android.content.UriMatcher} という便利なクラスが用意されています。このクラスはコンテンツ URI 「パターン」を正数値にマッピングします。
+
+この正数値を <code>switch</code> 文で使用することで、特定のパターンに一致する 1 つ以上のコンテンツ URI に目的のアクションを選択できます。
+
+</p>
+<p>
+    コンテンツ URI パターンは、次のワイルドカード文字を使用するコンテンツ URI に一致します。
+</p>
+    <ul>
+        <li>
+            <strong><code>*</code>:</strong> 任意の長さの任意の有効な文字で構成される文字列に一致します。
+        </li>
+        <li>
+            <strong><code>#</code>:</strong> 任意の長さの任意の数字で構成される文字列に一致します。
+        </li>
+    </ul>
+<p>
+    コンテンツ URI 処理の設計とコーディングの例として、テーブルを指す次のコンテンツ URI を認識する認証局 <code>com.example.app.provider</code> を持つプロバイダを考えてみます。
+
+
+</p>
+<ul>
+    <li>
+        <code>content://com.example.app.provider/table1</code>: <code>table1</code> という名前のテーブル。
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset1</code>: <code>dataset1</code> という名前のテーブル。
+
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset2</code>: <code>dataset2</code> という名前のテーブル。
+
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table3</code>: <code>table3</code> という名前のテーブル。
+    </li>
+</ul>
+<p>
+    さらに、行 ID が末尾に追加されていると、プロバイダではこれらのコンテンツ URI が認識されます。たとえば、<code>table3</code> の <code>1</code> で特定される行は <code>content://com.example.app.provider/table3/1</code> になります。
+
+
+</p>
+<p>
+    次のようなコンテンツ URI パターンを使用できます。
+</p>
+<dl>
+    <dt>
+        <code>content://com.example.app.provider/*</code>
+    </dt>
+    <dd>
+        プロバイダの任意のコンテンツ URI に一致します。
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table2/*</code>: 
+    </dt>
+    <dd>
+        テーブル <code>dataset1</code> と <code>dataset2</code> のコンテンツ URI に一致しますが、<code>table1</code> や <code>table3</code> のコンテンツ URI には一致しません。
+
+
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table3/#</code>: <code>table3</code> の 1 つの行のコンテンツ URI に一致します。<code>6</code> で特定される行は <code>content://com.example.app.provider/table3/6</code> になります。
+
+
+
+    </dt>
+</dl>
+<p>
+    次のコード スニペットでは、{@link android.content.UriMatcher} のメソッドが機能する仕組みを示します。
+    このコードでは、テーブルにコンテンツ URI パターン <code>content://&lt;authority&gt;/&lt;path&gt;</code> を使用し、1 つの行に <code>content://&lt;authority&gt;/&lt;path&gt;/&lt;id&gt;</code> を使用することで、表全体の URI と 1 つの行の URI を異なる方法で処理します。
+
+
+
+</p>
+<p>
+    メソッド {@link android.content.UriMatcher#addURI(String, String, int) addURI()} は認証局とパスを正数値にマッピングします。
+メソッド {@link android.content.UriMatcher#match(Uri)
+    match()} は URI に正数値を返します。次のように、<code>switch</code> 文によって、クエリをテーブル全体に実行するか、1 つのレコードに実行するかが決まります。
+
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider {
+...
+    // Creates a UriMatcher object.
+    private static final UriMatcher sUriMatcher;
+...
+    /*
+     * The calls to addURI() go here, for all of the content URI patterns that the provider
+     * should recognize. For this snippet, only the calls for table 3 are shown.
+     */
+...
+    /*
+     * Sets the integer value for multiple rows in table 3 to 1. Notice that no wildcard is used
+     * in the path
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3", 1);
+
+    /*
+     * Sets the code for a single row to 2. In this case, the "#" wildcard is
+     * used. "content://com.example.app.provider/table3/3" matches, but
+     * "content://com.example.app.provider/table3 doesn't.
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3/#", 2);
+...
+    // Implements ContentProvider.query()
+    public Cursor query(
+        Uri uri,
+        String[] projection,
+        String selection,
+        String[] selectionArgs,
+        String sortOrder) {
+...
+        /*
+         * Choose the table to query and a sort order based on the code returned for the incoming
+         * URI. Here, too, only the statements for table 3 are shown.
+         */
+        switch (sUriMatcher.match(uri)) {
+
+
+            // If the incoming URI was for all of table3
+            case 1:
+
+                if (TextUtils.isEmpty(sortOrder)) sortOrder = "_ID ASC";
+                break;
+
+            // If the incoming URI was for a single row
+            case 2:
+
+                /*
+                 * Because this URI was for a single row, the _ID value part is
+                 * present. Get the last path segment from the URI; this is the _ID value.
+                 * Then, append the value to the WHERE clause for the query
+                 */
+                selection = selection + "_ID = " uri.getLastPathSegment();
+                break;
+
+            default:
+            ...
+                // If the URI is not recognized, you should do some error handling here.
+        }
+        // call the code to actually do the query
+    }
+</pre>
+<p>
+    別の {@link android.content.ContentUris} には、コンテンツ URI の一部である <code>id</code> で作業するための便利なメソッドが備わっています。
+クラス {@link android.net.Uri} と {@link android.net.Uri.Builder} には、既存の {@link android.net.Uri} オブジェクトを解析して新しいオブジェクトをビルドするための便利なメソッドがあります。
+
+
+</p>
+
+<!-- Implementing the ContentProvider class -->
+<h2 id="ContentProvider">ContentProvider クラスを実装する</h2>
+<p>
+    {@link android.content.ContentProvider} インスタンスは、他のアプリケーションからの要求を処理することで、一連の構造化されたデータへのアクセスを管理します。
+どのような形式でアクセスする場合も、最終的には {@link android.content.ContentResolver} が呼び出されます。その後 {@link android.content.ContentProvider} の具象メソッドが呼び出され、アクセスを取得します。
+
+
+</p>
+<h3 id="RequiredAccess">必須メソッド</h3>
+<p>
+    抽象クラス {@link android.content.ContentProvider} は 6 つの抽象メソッドを定義しますが、これらのメソッドは独自の具象サブクラスの一部として実装する必要があります。
+次のように、{@link android.content.ContentProvider#onCreate() onCreate()} を除くこれらのメソッドは、コンテンツ プロバイダへのアクセスを試みるクライアント アプリケーションによって呼び出されます。
+
+
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+        query()}
+    </dt>
+    <dd>
+        プロバイダからデータを取得します。引数を使って、クエリを実行するテーブル、返す行と列、結果の並び順を選択します。
+
+        データは {@link android.database.Cursor} オブジェクトとして返されます。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}
+    </dt>
+    <dd>
+        プロバイダに新しい行を挿入します。引数を使って、挿入先のテーブルを選択し、使用する列の値を取得します。
+新たに挿入した行のコンテンツ URI が返されます。
+
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+        update()}
+    </dt>
+    <dd>
+        プロバイダ内の既存の行を更新します。引数を使って、更新するテーブルと行を選び、更新された列の値を取得します。
+更新された行の数が返されます。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+    </dt>
+    <dd>
+        プロバイダから行を削除します。引数を使って、削除するテーブルと行を選びます。
+削除された行の数が返されます。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        コンテンツ URI に対応する MIME  タイプを返します。このメソッドの詳細は、<a href="#MIMETypes">コンテンツ プロバイダ MIME を実装する</a>セクションをご覧ください。
+
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#onCreate() onCreate()}
+    </dt>
+    <dd>
+        プロバイダを初期化します。プロバイダが作成されると、Android システムがこのメソッドを即座に呼び出します。
+{@link android.content.ContentResolver} オブジェクトがアクセスを試みるまでは、プロバイダは作成されません。
+
+    </dd>
+</dl>
+<p>
+    これらのメソッドが持つ署名は、同じ名前の {@link android.content.ContentResolver} メソッドの署名と同じになります。
+
+</p>
+<p>
+    これらのメソッドを実装する場合は、次の点を考慮する必要があります。
+</p>
+<ul>
+    <li>
+        {@link android.content.ContentProvider#onCreate() onCreate()} を除くこれらのすべてのメソッドは、複数のスレッドを使用して同時に呼び出すことができるため、スレッドに対応した設定にする必要があります。
+複数のスレッドの詳細は、<a href="{@docRoot}guide/components/processes-and-threads.html">プロセスとスレッド</a>をご覧ください。
+
+
+
+    </li>
+    <li>
+        {@link android.content.ContentProvider#onCreate()
+        onCreate()} では冗長な操作は行わないようにします。本当に必要になるまでは、タスクの初期化は行わないようにします。
+        詳細は、<a href="#OnCreate">onCreate() メソッドを実装する</a>をご覧ください。
+
+    </li>
+    <li>
+        これのメソッドの実装は必須ですが、コードでは予測されたデータタイプを返す以外の操作は必要ありません。
+たとえば、他のアプリケーションが一部のテーブルにデータを挿入できないように設定するとします。
+その場合、{@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} への呼び出しを無視して 0 を返します。
+
+
+    </li>
+</ul>
+<h3 id="Query">query() メソッドを実装する</h3>
+<p>
+    {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()} メソッドは {@link android.database.Cursor} オブジェクトを返す必要があります。失敗した場合は、{@link java.lang.Exception} をスローします。
+
+SQLite データベースをデータストレージとして使用する場合は、{@link android.database.sqlite.SQLiteDatabase} クラスのいずれかの <code>query()</code> メソッドが返す {@link android.database.Cursor} を返します。
+
+
+    クエリがどの行にも一致しない場合は、{@link android.database.Cursor#getCount()} メソッドが 0 を返す {@link android.database.Cursor} インスタンスを返す必要があります。
+
+    クエリプロセス中にエラーが発生した場合にのみ <code>null</code> を返します。
+</p>
+<p>
+    SQLite データベースをデータストレージとして使用しない場合は、{@link android.database.Cursor} クラスのいずれかの具象サブクラスを使用します。
+たとえば、{@link android.database.MatrixCursor} クラスは、各行が {@link java.lang.Object} の配列となるカーソルを実装します。
+このクラスでは、{@link android.database.MatrixCursor#addRow(Object[]) addRow()} を使って新しい行を追加します。
+
+</p>
+<p>
+    Android システムは、プロセスの境界をまたいで {@link java.lang.Exception} を送信できるように設定する必要があることにご注意ください。
+Android では、クエリエラーを処理するのに便利な、次の例外を送信できます。
+
+</p>
+<ul>
+    <li>
+        {@link java.lang.IllegalArgumentException}（プロバイダが無効なコンテンツ URI を受け取った場合にこの例外をスローするように選択できます）
+
+    </li>
+    <li>
+        {@link java.lang.NullPointerException}
+    </li>
+</ul>
+<h3 id="Insert">insert() メソッドを実装する</h3>
+<p>
+    {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} メソッドは、{@link android.content.ContentValues} 引数の値を使用して、適切なテーブルに新しい行を追加します。
+
+列名が {@link android.content.ContentValues} 引数にない場合は、プロバイダ コードがデータベース スキーマのいずれかで、デフォルト値を設定できます。
+
+
+</p>
+<p>
+    このメソッドは新しい行のコンテンツ URI を返します。作成するには、{@link android.content.ContentUris#withAppendedId(Uri, long) withAppendedId()} を使用して、新しい行の <code>_ID</code>（または他のプライマリキー）の値をテーブルのコンテンツ URI の末尾に追加します。
+
+
+</p>
+<h3 id="Delete">delete() メソッドを実装する</h3>
+<p>
+    {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} メソッドでは、データストレージから行を物理的に削除する必要はありません。
+プロバイダで同期アダプタを使用する場合は、行全体を削除するのではなく、削除された行に「削除」フラグを付けるようにします。
+
+同期アダプタは削除された行を探して、プロバイダから削除される前に、サーバーから行を削除できます。
+
+</p>
+<h3 id="Update">update() メソッドを実装する</h3>
+<p>
+    {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+    update()} メソッドは {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} が使用するのと同じ {@link android.content.ContentValues} 引数、{@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} と {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()} が使用するのと同じ <code>selection</code> と <code>selectionArgs</code> 引数を使用します。
+
+
+
+これにより、これらのメソッド間でコードを再利用できます。
+</p>
+<h3 id="OnCreate">onCreate() メソッドを実装する</h3>
+<p>
+    Android システムはプロバイダを起動する際に {@link android.content.ContentProvider#onCreate()
+    onCreate()} を呼び出します。このメソッドでは迅速に実行できる初期化タスクのみを実行するようにし、プロバイダが実際にデータの要求を受け取るまでは、データベースの作成とデータロードを保留します。
+
+{@link android.content.ContentProvider#onCreate() onCreate()} で冗長なタスクを行う場合は、プロバイダの起動が遅くなります。
+
+同様に、プロバイダから他のアプリケーションへの応答も遅くなります。
+
+</p>
+<p>
+    たとえば、SQLite データベースを使用すると、{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} に {@link android.database.sqlite.SQLiteOpenHelper} オブジェクトを作成し、データベースを初めて開くときに SQL テーブルを作成できます。
+
+
+この操作を簡単にするために、{@link android.database.sqlite.SQLiteOpenHelper#getWritableDatabase
+    getWritableDatabase()} を初めて呼び出すときには、{@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()} メソッドが自動的に呼び出されます。
+
+
+</p>
+<p>
+    次の 2 つのスニペットは、{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} と {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()} との間のやり取りを表しています。
+
+最初のスニペットは {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} の実装です。
+
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider
+
+    /*
+     * Defines a handle to the database helper object. The MainDatabaseHelper class is defined
+     * in a following snippet.
+     */
+    private MainDatabaseHelper mOpenHelper;
+
+    // Defines the database name
+    private static final String DBNAME = "mydb";
+
+    // Holds the database object
+    private SQLiteDatabase db;
+
+    public boolean onCreate() {
+
+        /*
+         * Creates a new helper object. This method always returns quickly.
+         * Notice that the database itself isn't created or opened
+         * until SQLiteOpenHelper.getWritableDatabase is called
+         */
+        mOpenHelper = new MainDatabaseHelper(
+            getContext(),        // the application context
+            DBNAME,              // the name of the database)
+            null,                // uses the default SQLite cursor
+            1                    // the version number
+        );
+
+        return true;
+    }
+
+    ...
+
+    // Implements the provider's insert method
+    public Cursor insert(Uri uri, ContentValues values) {
+        // Insert code here to determine which table to open, handle error-checking, and so forth
+
+        ...
+
+        /*
+         * Gets a writeable database. This will trigger its creation if it doesn't already exist.
+         *
+         */
+        db = mOpenHelper.getWritableDatabase();
+    }
+}
+</pre>
+<p>
+    次のスニペットは {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()} の実装であり、ヘルパークラスを含みます。
+
+</p>
+<pre class="prettyprint">
+...
+// A string that defines the SQL statement for creating a table
+private static final String SQL_CREATE_MAIN = "CREATE TABLE " +
+    "main " +                       // Table's name
+    "(" +                           // The columns in the table
+    " _ID INTEGER PRIMARY KEY, " +
+    " WORD TEXT"
+    " FREQUENCY INTEGER " +
+    " LOCALE TEXT )";
+...
+/**
+ * Helper class that actually creates and manages the provider's underlying data repository.
+ */
+protected static final class MainDatabaseHelper extends SQLiteOpenHelper {
+
+    /*
+     * Instantiates an open helper for the provider's SQLite data repository
+     * Do not do database creation and upgrade here.
+     */
+    MainDatabaseHelper(Context context) {
+        super(context, DBNAME, null, 1);
+    }
+
+    /*
+     * Creates the data repository. This is called when the provider attempts to open the
+     * repository and SQLite reports that it doesn't exist.
+     */
+    public void onCreate(SQLiteDatabase db) {
+
+        // Creates the main table
+        db.execSQL(SQL_CREATE_MAIN);
+    }
+}
+</pre>
+
+
+<!-- Implementing ContentProvider MIME Types -->
+<h2 id="MIMETypes">ContentProvider MIME タイプを実装する</h2>
+<p>
+    {@link android.content.ContentProvider} クラスには、MIME タイプを返すための次の 2 つのクラスがあります。
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        任意のプロバイダに実装する必要がある必須メソッドの 1 つです。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    </dt>
+    <dd>
+        ファイルを提供するプロバイダの場合に、実装が考えられるメソッドです。
+    </dd>
+</dl>
+<h3 id="TableMIMETypes">テーブルの MIME タイプ</h3>
+<p>
+    {@link android.content.ContentProvider#getType(Uri) getType()} メソッドは、MIME 形式で {@link java.lang.String} を返します。これは、コンテンツ URI 引数によって返されるデータのタイプを表します。
+
+{@link android.net.Uri} 引数には特定の URI ではなくパターンを指定することもできます。この場合、パターンに一致するコンテンツ URI に関連付けられているデータのタイプを返します。
+
+
+</p>
+<p>
+    テキスト、HTML、JPEG といった一般的なタイプのデータの場合、{@link android.content.ContentProvider#getType(Uri) getType()} では該当するデータの標準的な MIME タイプを返す必要があります。
+
+利用できるこれらの標準的なタイプの詳細なリストは、「<a href="http://www.iana.org/assignments/media-types/index.htm">IANA MIME Media Types</a>」のウェブサイトをご覧ください。
+
+
+</p>
+<p>
+    テーブル データの 1 つ以上の行を指すコンテンツ URI の場合、{@link android.content.ContentProvider#getType(Uri) getType()} は、Android のベンダー固有の MIME 形式で MIME タイプを返す必要があります。
+
+
+</p>
+<ul>
+    <li>
+        タイプ部分: <code>vnd</code>
+    </li>
+    <li>
+        サブタイプ部分: 
+        <ul>
+            <li>
+    URI パターンが 1 つの行の場合: <code>android.cursor.<strong>item</strong>/</code>
+            </li>
+            <li>
+    URI パターンが複数の行の場合: <code>android.cursor.<strong>dir</strong>/</code>
+            </li>
+        </ul>
+    </li>
+    <li>
+        プロバイダ固有の部分: <code>vnd.&lt;name&gt;</code>.<code>&lt;type&gt;</code>
+        <p>
+            <code>&lt;name&gt;</code> と <code>&lt;type&gt;</code> を指定します。
+            <code>&lt;name&gt;</code> の値はグローバルに一意の値とし、<code>&lt;type&gt;</code> の値は対応する URI パターンに一意のものとする必要があります。
+
+<code>&lt;name&gt;</code> には、企業名や、アプリケーションの Android パッケージ名の一部を使うことをお勧めします。
+<code>&lt;type&gt;</code> には、URI に関連付けられているテーブルを特定する文字列を使うことをお勧めします。
+
+
+        </p>
+
+    </li>
+</ul>
+<p>
+    たとえば、プロバイダの認証局が <code>com.example.app.provider</code> の場合、テーブル名は <code>table1</code> となり、<code>table1</code> の複数行の MIME タイプは次のようになります。
+
+
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.com.example.provider.table1
+</pre>
+<p>
+    <code>table1</code> の 1 つの行の場合は、MIME タイプは次のようになります。
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.com.example.provider.table1
+</pre>
+<h3 id="FileMIMETypes">ファイルの MIME タイプ</h3>
+<p>
+    ファイルを提供するプロバイダの場合は、{@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()} を実装します。
+
+    このメソッドは、プロバイダが特定のコンテンツ URI に対して返すことができるファイルの MIME タイプの {@link java.lang.String} 配列を返します。クライアントで処理する MIME タイプのみを返すには、MIME タイプフィルタ引数によって、提供する MIME タイプをフィルタする必要があります。
+
+
+</p>
+<p>
+    たとえば、写真画像を <code>.jpg</code>、<code>.png</code>、<code>.gif</code> 形式で提供するプロバイダについて考えてみます。
+
+    アプリケーションが {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()} をフィルタ文字列 <code>image/*</code>  （何らかの形式の「画像」）で呼び出す場合、{@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()} メソッドは次のような配列を返します。
+
+
+</p>
+<pre>
+{ &quot;image/jpeg&quot;, &quot;image/png&quot;, &quot;image/gif&quot;}
+</pre>
+<p>
+    アプリの対象が <code>.jpg</code> ファイルのみであり、アプリが {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()} をフィルタ文字列 <code>*\/jpeg</code> で呼び出す場合、{@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()} は次の項目を返します。
+
+
+<pre>
+{&quot;image/jpeg&quot;}
+</pre>
+<p>
+    プロバイダが、フィルタ文字列で要求した MIME タイプを提供していない場合、{@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()} は <code>null</code> を返します。
+
+
+</p>
+
+
+<!--  Implementing a Contract Class -->
+<h2 id="ContractClass">コントラクト クラスを実装する</h2>
+<p>
+    コントラクト クラスは <code>public final</code> クラスであり、URI、列名、MIME タイプ、プロバイダに関連するその他のメタデータを含みます。
+このクラスは、URI や列名などの実際の値が変更された場合にも、プロバイダに正しくアクセスできることを保証することで、プロバイダとその他のアプリケーションとの間にコントラクトを構築します。
+
+
+
+</p>
+<p>
+    さらに、通常、コントラクト クラスではその定数にニーモニック名が設定されているため、デベロッパーが列名や URI に誤った値を使用しにくいようになっています。
+クラスであるため、Javadoc ドキュメントを含めることができます。
+Eclipse などの統合型開発環境では、コントラクト クラスから定数名が自動的に設定され、定数の Javadoc が表示されます。
+
+
+</p>
+<p>
+    デベロッパーはアプリケーションからコントラクト クラスのクラスファイルにアクセスできませんが、提供する <code>.jar</code> ファイルからクラスファイルをアプリケーションに静的にコンパイルできます。
+
+</p>
+<p>
+    {@link android.provider.ContactsContract} クラスとそのネストされたクラスは、コントラクト クラスの例です。
+
+</p>
+<h2 id="Permissions">コンテンツ プロバイダ パーミッションを実装する</h2>
+<p>
+    Android システムのあらゆる領域に対するパーミッションとクラスについては、「<a href="{@docRoot}guide/topics/security/security.html">セキュリティとパーミッション</a>」トピックをご覧ください。
+
+    また、トピック「<a href="{@docRoot}guide/topics/data/data-storage.html">Data Storage</a>」にも、ストレージのさまざまなタイプに有効なセキュリティとパーミッションについて記載されています。
+
+    重要な点をまとめると次のようになります。
+</p>
+<ul>
+    <li>
+        デフォルトでは、端末の内部ストレージに格納されるデータファイルは、アプリケーションとプロバイダでのみ使用できます。
+
+    </li>
+    <li>
+        作成する {@link android.database.sqlite.SQLiteDatabase} データベースは、自分のアプリケーションとプロバイダにのみ公開されます。
+
+    </li>
+    <li>
+        デフォルトでは、外部ストレージに保存するデータファイルはパブリックとなり、誰もが読み取ることができます。<em></em><em></em>
+他のアプリケーションは別の API 呼び出しを使用してファイルの読み取りと書き込みを実行できるため、コンテンツ プロバイダで外部ストレージにあるファイルへのアクセスは制限できません。
+
+    </li>
+    <li>
+        端末の内部ストレージにあるファイルや SQLite データベースを開いたり作成したりするメソッド呼び出しは、他のすべてのアプリケーションに読み取りと書き込みの両方のアクセスを付与してしまう可能性があります。
+内部ファイルやデータベースをプロバイダのリポジトリとして使用する場合に、「誰でも読み取り可能」や「誰でも書き込み可能」なアクセスを付与してしまうと、マニフェストで設定したプロバイダのパーミッションでデータを保護できなくなってしまいます。
+
+
+内部ストレージのファイルとデータベースへのデフォルトのアクセスは「プライベート」になっているため、プロバイダのリポジトリの場合はこの設定を変更しないでください。
+
+    </li>
+</ul>
+<p>
+    コンテンツ プロバイダ パーミッションを使用してデータへのアクセスを制御する場合は、内部ファイル、SQLite データベース、「クラウド」（リモート サーバーなど）にデータを格納し、ファイルやデータベースを自分のアプリケーションにのみ公開するように設定します。
+
+
+</p>
+<h3>パーミッションを実装する</h3>
+<p>
+    デフォルトではプロバイダにはパーミッションが設定されていないため、基礎となるデータがプライベートに設定されている場合でも、すべてのアプリケーションは自分のプロバイダからの読み取りとプロバイダへの書き込みを実行できます。
+これを変更するには、<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code> 要素の属性や子要素を使用して、マニフェスト ファイルでプロバイダのパーミッションを設定します。
+
+プロバイダ全体に適用するパーミッションを設定することもできますし、特定のテーブル、特定のレコード、これら 3 つすべてに適用するパーミッションを設定することもできます。
+
+</p>
+<p>
+    マニフェスト ファイルで 1 つ以上の <code><a href="{@docRoot}guide/topics/manifest/permission-element.html">
+    &lt;permission&gt;</a></code> 要素を使用して、プロバイダのパーミッションを定義します。
+自分のプロバイダに独自のパーミッションを作成するには、<code><a href="{@docRoot}guide/topics/manifest/permission-element.html#nm">
+    android:name</a></code> 属性に Java スタイルのスコーピングを使用します
+
+たとえば、読み取りパーミッションの名前を <code>com.example.app.provider.permission.READ_PROVIDER</code> とします。
+
+
+</p>
+<p>
+    次のリストは、プロバイダ パーミッションの範囲を示しています。プロバイダ全体に適用するパーミッションから始まり、より詳細な範囲のものになっています。
+
+    より広い範囲を持つパーミッションよりも、範囲が限定されるパーミッションの方が優先されます。
+</p>
+<dl>
+    <dt>
+        プロバイダ レベルで 1 つの読み取りと書き込みのパーミッション
+    </dt>
+    <dd>
+        1 つのパーミッションでプロバイダ全体の読み取りと書き込みのアクセスの両方を制御します。<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 要素の <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code> 属性で指定します。
+
+
+    </dd>
+    <dt>
+        プロバイダ レベルで別々の読み取りと書き込みパーミッション
+    </dt>
+    <dd>
+        プロバイダ全体の読み取りパーミッションと書き込みパーミッションです。これらのパーミッションは <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 要素の <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+        android:readPermission</a></code> 属性と <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+        android:writePermission</a></code> 属性で指定します。
+
+
+これらは、<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code> で要求するパーミッションよりも優先されます。
+
+    </dd>
+    <dt>
+        パスレベルのパーミッション
+    </dt>
+    <dd>
+        プロバイダのコンテンツ URI の読み取り、書き込み、読み取り / 書き込みパーミッションです。<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 要素の <code><a href="{@docRoot}guide/topics/manifest/path-permission-element.html">
+        &lt;path-permission&gt;</a></code> 子要素を使用して、制御対象の各 URI を指定します。
+
+
+指定する各コンテンツ URI に対して、読み取り / 書き込みパーミッション、読み取りパーミッション、書き込みパーミッション、3 つすべてを指定できます。
+読み取りパーミッションと書き込みパーミッションは、読み取り / 書き込みパーミッションに優先します。
+また、パスレベルのパーミッションはプロバイダ レベルのパーミッションに優先します。
+
+    </dd>
+    <dt>
+        一時的なパーミッション
+    </dt>
+    <dd>
+        アプリケーションへの一時的なアクセスを付与するパーミッション レベルです。アプリケーションに通常必要とするパーミッションが付与されていない場合でも付与できます。
+一時的なアクセス機能により、アプリケーションのマニフェストに必要なパーミッションの数を減らせます。
+
+一時的なパーミッションを有効にすると、プロバイダへの「永続的な」パーミッションを必要とするアプリケーションのみが、継続的にすべてのデータにアクセスできます。
+
+
+        <p>
+            プロバイダからの写真の添付ファイルを外部の画像ビューワ アプリケーションで表示する場合に、メール プロバイダとアプリに実装するパーミッションを考えてみます。
+
+パーミッションを要求しなくても、画像ビューワに必要なアクセスを付与するには、写真のコンテンツ URI に一時的なパーミッションを設定します。
+ユーザーが写真を表示しようとしたときに、アプリから写真のコンテンツ URI とパーミッション フラグを含むインテントを画像ビューワに送信するようにメール アプリを設計します。
+
+ビューワにプロバイダの通常の読み取りパーミッションが付与されていない場合でも、画像ビューワはメール プロバイダにクエリを実行して写真を取得します。
+
+
+        </p>
+        <p>
+            一時的なパーミッションを有効にするには、<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 要素の <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> 属性を設定するか、1 つ以上の <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> 子要素を <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 要素に追加します。
+
+
+
+一時的なパーミッションを使用する場合、プロバイダからのコンテンツ URI のサポートを削除したときは常に {@link android.content.Context#revokeUriPermission(Uri, int)
+            Context.revokeUriPermission()} を呼び出す必要があります。そうすると、コンテンツ URI が一時的なパーミッションに関連付けられます。
+
+
+        </p>
+        <p>
+            属性の値によって、プロバイダへのアクセスレベルが決まります。
+            属性を <code>true</code> に設定すると、システムによってプロバイダ全体への一時的なパーミッションが付与されます。このパーミッションは、プロバイダ レベルやパスレベルのパーミッションで必要になるその他のパーミッションよりも優先されます。
+
+
+        </p>
+        <p>
+            このフラグを <code>false</code> に設定する場合は、<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> 子要素を <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 要素に追加する必要があります。
+
+それぞれの子要素は、一時的なアクセスが付与される 1 つ以上のコンテンツ URI を指定します。
+
+        </p>
+        <p>
+            一時的なアクセスをアプリケーションに委任するには、インテントに {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION} フラグか {@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION} フラグ、またはその両方を含める必要があります。
+
+これらは、{@link android.content.Intent#setFlags(int) setFlags()} メソッドで設定します。
+
+        </p>
+        <p>
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> 属性がない場合は、<code>false</code> であると仮定されます。
+
+        </p>
+    </dd>
+</dl>
+
+
+
+<!-- The Provider Element -->
+<h2 id="ProviderElement">&lt;provider&gt; 要素</h2>
+<p>
+    {@link android.app.Activity} コンポーネントや {@link android.app.Service} コンポーネントと同様に、<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code> 要素を使用して {@link android.content.ContentProvider} のサブクラスをアプリケーションのマニフェスト ファイルに定義する必要があります。
+
+
+Android システムは要素から次の情報を取得します。
+
+<dl>
+    <dt>
+        認証局（<a href="{@docRoot}guide/topics/manifest/provider-element.html#auth">{@code
+        android:authorities}</a>）
+
+    </dt>
+    <dd>
+        システム内のプロバイダ全体を特定する識別名です。この属性の詳細は、<a href="#ContentURI">コンテンツ URI を設計する</a>セクションをご覧ください。
+
+
+    </dd>
+    <dt>
+        プロバイダ クラス名（<code>
+<a href="{@docRoot}guide/topics/manifest/provider-element.html#nm">android:name</a>
+        </code>）
+
+    </dt>
+    <dd>
+        {@link android.content.ContentProvider} を実装するクラスです。このクラスの詳細は、<a href="#ContentProvider">ContentProvider クラスを実装する</a>セクションをご覧ください。
+
+
+    </dd>
+    <dt>
+        パーミッション
+    </dt>
+    <dd>
+        他のアプリケーションがプロバイダのデータにアクセスするのに必要なパーミッションを指定する属性です。
+
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+                android:grantUriPermssions</a></code>: 一時的なパーミッションのフラグです。
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+                android:permission</a></code>: 1 つのプロバイダ全体の読み取り / 書き込みパーミッションです。
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+                android:readPermission</a></code>: プロバイダ全体の読み取りパーミッションです。
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+                android:writePermission</a></code>: プロバイダ全体の書き込みパーミッションです。
+            </li>
+        </ul>
+        <p>
+            パーミッションとそれに対応する属性の詳細は、<a href="#Permissions">コンテンツ プロバイダ パーミッションを実装する</a>セクションをご覧ください。
+
+
+        </p>
+    </dd>
+    <dt>
+        起動と制御の属性
+    </dt>
+    <dd>
+        これらの属性は、Android システムの起動方法とそのタイミング、プロバイダのプロセスの特性、その他の実行時の設定を決定します。
+
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#enabled">
+                android:enabled</a></code>: システムにプロバイダの起動を許可するフラグです。
+            </li>
+              <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#exported">
+                android:exported</a></code>: 他のアプリケーションにこのプロバイダの使用を許可するフラグです。
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#init">
+                android:initOrder</a></code>: 同じプロセス内の他のプロバイダに対して、このプロバイダを起動する順番です。
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#multi">
+                android:multiProcess</a></code>: システムに呼び出しクライアントと同じプロセスでのプロバイダの開始を許可するフラグです。
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#proc">
+                android:process</a></code>: プロバイダを実行するプロセスの名前です。
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#sync">
+                android:syncable</a></code>: プロバイダのデータをサーバー上のデータと同期することを示すフラグです。
+
+            </li>
+        </ul>
+        <p>
+            属性に関する詳細は、開発ガイドの <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 要素に関するトピックに記載されています。
+
+
+        </p>
+    </dd>
+    <dt>
+        情報に関する属性
+    </dt>
+    <dd>
+        プロバイダのオプションのアイコンとラベルです。
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#icon">
+                android:icon</a></code>: プロバイダのアイコンを含むドローアブル リソースです。
+                [設定] &gt; [アプリ] &gt; [すべて] にあるアプリのリストのプロバイダラベルの横に表示されるアイコンです。<em></em><em></em><em></em>
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#label">
+                android:label</a></code>: プロバイダ、データ、その両方を説明する、情報ラベルです。
+[設定] &gt; [アプリ] &gt; [すべて] にあるアプリのリストのプロバイダラベルの横に表示されるアイコンです。<em></em><em></em><em></em>
+
+            </li>
+        </ul>
+        <p>
+            属性に関する詳細は、開発ガイドの <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 要素に関するトピックに記載されています。
+
+        </p>
+    </dd>
+</dl>
+
+<!-- Intent Access -->
+<h2 id="Intents">インテントとデータアクセス</h2>
+<p>
+    {@link android.content.Intent} を使用すると、アプリケーションはコンテンツ プロバイダに間接的にアクセスできます。
+    アプリケーションは、{@link android.content.ContentResolver} や {@link android.content.ContentProvider} のメソッドを呼び出しません。
+その代わりに、アクティビティを起動するインテントを送信します。これは通常、プロバイダ独自のアプリケーションの一部となっています。
+対象のアクティビティは UI のデータの取得と表示を担当します。インテントのアクションに応じて、対象のアクティビティにより、ユーザーにプロバイダのデータの修正を求めるメッセージが表示されることがあります。
+
+
+    さらに、インテントには、対象のアクティビティが UI に表示する「エクストラ」データが含まれることがあります。ユーザーは使用前に、このデータを変更してプロバイダのデータを修正することもできます。
+
+
+</p>
+<p>
+
+</p>
+<p>
+    インテント アクセスを使用して、データの整合性を保証できます。プロバイダのデータの挿入、更新、削除は、厳格に定義されたビジネス ロジックによって規定されることがあります。
+この場合、他のアプリケーションにデータを直接修正できるように許可すると、無効なデータが発生することがあります。
+
+デベロッパーがインテント アクセスを使用する場合は、すべての操作を完全に文書化します。
+    コードを使用してデータを修正するよりも、独自のアプリケーションの UI を使用したインテント アクセスの方が優れている理由を説明します。
+
+</p>
+<p>
+    プロバイダのデータを修正するための受信インテントの処理は、その他のインテントの処理と同じです。
+インテントの使用についての詳細は、「<a href="{@docRoot}guide/components/intents-filters.html">インテントとインテント フィルタ</a>」をご覧ください。
+
+</p>
diff --git a/docs/html-intl/intl/ja/guide/topics/providers/content-providers.jd b/docs/html-intl/intl/ja/guide/topics/providers/content-providers.jd
new file mode 100644
index 0000000..918426a
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/providers/content-providers.jd
@@ -0,0 +1,108 @@
+page.title=コンテンツ プロバイダ
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<!-- In this document -->
+<h2>トピック</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">        コンテンツ プロバイダの基本</a>
+
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">        コンテンツ プロバイダの作成</a>
+
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/calendar-provider.html">カレンダー プロバイダ</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/contacts-provider.html">連絡先プロバイダ</a>
+    </li>
+</ol>
+
+    <!-- Related Samples -->
+<h2>関連サンプル</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/ContactManager/index.html">        Contact Manager</a> アプリケーション
+
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        "Cursor (People)"
+        </a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        "Cursor (Phones)"</a>
+        </li>
+        <li>
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">        サンプル同期アダプタ</a>
+
+        </li>
+    </ol>
+</div>
+</div>
+<p>
+    コンテンツ プロバイダは、一連の構造化されたデータへのアクセスを管理します。データをカプセル化し、データ セキュリティの定義のためのメカニズムを提供します。
+コンテンツ プロバイダは、1 つのプロセス内のデータを別のプロセスで実行されているコードにつなげるための標準的なインターフェースです。
+
+</p>
+<p>
+    コンテンツ プロバイダのデータにアクセスする場合は、アプリケーションの {@link android.content.Context} の {@link android.content.ContentResolver} オブジェクトを使用し、クライアントとしてプロバイダとやり取りします。
+
+
+    {@link android.content.ContentResolver} オブジェクトは、{@link android.content.ContentProvider} を実装するクラスのインスタンスである、プロバイダ オブジェクトとやり取りします。
+プロバイダ オブジェクトはクライアントからのデータ要求を受け取り、要求されたアクションを実行し、結果を返します。
+
+
+</p>
+<p>
+    データを他のアプリケーションと共有しない場合は、独自のプロバイダを開発する必要はありません。
+ただし、独自のアプリケーションでカスタムの検索候補を提供する場合は、独自のプロバイダが必要になります。
+また、自分のアプリケーションから別のアプリケーションに複雑なデータやファイルをコピーして貼り付ける場合も、独自のプロバイダが必要になります。
+
+</p>
+<p>
+    Android 自身には、オーディオ、ビデオ、画像、個人的な連絡先情報などのデータを管理するコンテンツ プロバイダが用意されています。
+一部のプロバイダについては、<code><a href="{@docRoot}reference/android/provider/package-summary.html">android.provider</a>
+    </code> パッケージのリファレンスに一覧が記載されています。
+
+いくつかの制限もありますが、これらのプロバイダにはすべての Android アプリケーションからアクセスできます。
+
+</p><p>
+    コンテンツ プロバイダの詳細は、次のトピックをご覧ください。
+</p>
+<dl>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-basics.html">        コンテンツ プロバイダの基本</a></strong>
+
+    </dt>
+    <dd>
+        データが表形式にまとめられている場合の、コンテンツ プロバイダでのデータへのアクセス方法。
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-creating.html">         コンテンツ プロバイダの作成</a></strong>
+
+    </dt>
+    <dd>
+        独自のコンテンツ プロバイダの作成方法。
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/calendar-provider.html">        カレンダー プロバイダ</a></strong>
+
+    </dt>
+    <dd>
+        Android プラットフォームの一部であるカレンダー プロバイダへのアクセス方法。
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/contacts-provider.html">        連絡先プロバイダ</a></strong>
+
+    </dt>
+    <dd>
+        Android プラットフォームの一部である連絡先プロバイダへのアクセス方法。
+    </dd>
+</dl>
diff --git a/docs/html-intl/intl/ja/guide/topics/providers/document-provider.jd b/docs/html-intl/intl/ja/guide/topics/providers/document-provider.jd
new file mode 100644
index 0000000..b4342dc
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/providers/document-provider.jd
@@ -0,0 +1,916 @@
+page.title=ストレージ アクセス フレームワーク
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本書の内容
+ <a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
+        <span class="more">詳細を表示</span>
+        <span class="less" style="display:none">詳細を非表示</span></a></h2>
+<ol id="toc44" class="hide-nested">
+    <li>
+        <a href="#overview">概要</a>
+    </li>
+    <li>
+        <a href="#flow">コントロール フロー</a>
+    </li>
+    <li>
+        <a href="#client">クライアント アプリを作成する</a>
+        <ol>
+        <li><a href="#search">ドキュメントを検索する</a></li>
+        <li><a href="#process">プロセスの結果</a></li>
+        <li><a href="#metadata">ドキュメント メタデータを確認する</a></li>
+        <li><a href="#open">ドキュメントを開く</a></li>
+        <li><a href="#create">新しいドキュメントを作成する</a></li>
+        <li><a href="#delete">ドキュメントを削除する</a></li>
+        <li><a href="#edit">ドキュメントを編集する</a></li>
+        <li><a href="#permissions">パーミッションを固定する</a></li>
+        </ol>
+    </li>
+    <li><a href="#custom">カスタム ドキュメント プロバイダを作成する</a>
+        <ol>
+        <li><a href="#manifest">マニフェスト</a></li>
+        <li><a href="#contract">コントラクト</a></li>
+        <li><a href="#subclass">サブクラス DocumentsProvider</a></li>
+        <li><a href="#security">セキュリティ</a></li>
+        </ol>
+    </li>
+
+</ol>
+<h2>キークラス</h2>
+<ol>
+    <li>{@link android.provider.DocumentsProvider}</li>
+    <li>{@link android.provider.DocumentsContract}</li>
+</ol>
+
+<h2>ビデオ</h2>
+
+<ol>
+    <li><a href="http://www.youtube.com/watch?v=zxHVeXbK1P4">
+DevBytes: Android 4.4 ストレージ アクセス フレームワーク: プロバイダ</a></li>
+     <li><a href="http://www.youtube.com/watch?v=UFj9AEz0DHQ">
+DevBytes: Android 4.4 ストレージ アクセス フレームワーク: クライアント</a></li>
+</ol>
+
+
+<h2>コードサンプル</h2>
+
+<ol>
+    <li><a href="{@docRoot}samples/StorageProvider/index.html">
+StorageProvider</a></li>
+     <li><a href="{@docRoot}samples/StorageClient/index.html">
+StorageClient</a></li>
+</ol>
+
+<h2>関連ドキュメント</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">        コンテンツ プロバイダの基本        </a>
+
+
+    </li>
+</ol>
+
+</div>
+</div>
+
+
+<p>Android 4.4 （API レベル 19）は、ストレージ アクセス フレームワーク（SAF）を採用しています。SAF を利用することで、ユーザーは設定したドキュメント ストレージ プロバイダ全体から簡単にドキュメント、画像、その他のファイルを参照して開くことができます。
+
+標準の使いやすい UI により、アプリやプロバイダを通じて一貫性のある方法でファイルを参照したり、最近使用したファイルにアクセスしたりできます。
+</p>
+
+<p>サービスをカプセル化する {@link android.provider.DocumentsProvider} を実装することで、クラウドやローカル ストレージ サービスをエコシステムに参加させることができます。
+プロバイダのドキュメントへのアクセスが必要なクライアントも、数行のコードだけで SAF と統合できます。
+
+</p>
+
+<p>SAF には次の項目が含まれます。</p>
+
+<ul>
+<li><strong>ドキュメント プロバイダ</strong>&mdash;ストレージ サービス（Google ドライブなど）が管理するファイルの表示を許可するコンテンツ プロバイダです。
+ドキュメント プロバイダは {@link android.provider.DocumentsProvider} クラスのサブクラスとして実装されます。document-provider スキーマは従来のファイル階層に基づくものですが、ドキュメント プロバイダが物理的にどのようにファイルを格納するかはその設定次第です。Android プラットフォームには、ダウンロード、画像、ビデオなどの組み込みのドキュメント プロバイダがいくつか用意されています。
+
+
+
+
+</li>
+
+<li><strong>クライアント アプリ</strong>&mdash;{@link android.content.Intent#ACTION_OPEN_DOCUMENT} または {@link android.content.Intent#ACTION_CREATE_DOCUMENT} インテントを呼び出し、ドキュメント プロバイダが返したファイルを受け取るカスタムアプリです。
+
+
+</li>
+
+<li><strong>ピッカー</strong>&mdash;クライアントアプリの検索条件を満たすすべてのドキュメント プロバイダのドキュメントにアクセスできるシステム UI です。
+</li>
+</ul>
+
+<p>SAF は次のような機能も提供します。</p>
+<ul>
+<li>ユーザーは 1 つのアプリだけではなく、すべてのドキュメント プロバイダのコンテンツを参照できます。</li>
+<li>アプリからドキュメント プロバイダが所有するドキュメントへの、長期間の固定アクセスを可能にします。
+このアクセスにより、ユーザーはプロバイダ上でのファイルの追加、編集、保存、削除が可能になります。
+</li>
+<li>複数のユーザー アカウントと USB ストレージ プロバイダなどの一時的なルートをサポートします。一時的なルートはドライブを挿入した場合にのみ表示されます。
+ </li>
+</ul>
+
+<h2 id ="overview">概要</h2>
+
+<p>SAF は、{@link android.provider.DocumentsProvider} クラスのサブクラスであるコンテンツ プロバイダを中心に展開します。
+ドキュメント プロバイダでは、データは下図のように従来のファイル階層で構造化されます。<em></em>
+</p>
+<p><img src="{@docRoot}images/providers/storage_datamodel.png" alt="data model" /></p>
+<p class="img-caption"><strong>図 1.</strong> ドキュメント プロバイダのデータモデル。ルートポイントが 1 つのドキュメントを指し、そこからツリー全体が広がります。
+</p>
+
+<p>注: </p>
+<ul>
+
+<li>各ドキュメント プロバイダは、ドキュメントのツリーの検索の出発点である 1 つ以上の「ルート」を報告します。各ルートは一意の {@link android.provider.DocumentsContract.Root#COLUMN_ROOT_ID} を持ち、該当するルートの下のコンテンツを表すドキュメント（ディレクトリ）を指します。ルートはデザインによって動的に変化し、複数アカウント、一時的な USB ストレージ ドライブ、ユーザーのログインとログアウトなどのユースケースをサポートします。
+
+
+
+
+
+</li>
+
+<li>各ルートの下のドキュメントは 1 つだけになります。そのドキュメントは、1 ～ <em>N</em> 個のドキュメントを指し、さらにそれぞれのドキュメントも 1 ～ <em>N</em> 個のドキュメントを指すことができます。
+ </li>
+
+<li>各ストレージ バックエンドは、一意の {@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} を使って個々のファイルやディレクトリを参照して表示します。端末の再起動後も使用できる永続的な URI の付与に使用することから、ドキュメント ID は一意でなければならず、一度発行すると変更できません。
+
+
+
+</li>
+
+
+<li>ドキュメントには、開くことができるファイル（特定の MIME タイプを持つもの）か、追加のドキュメント（{@link android.provider.DocumentsContract.Document#MIME_TYPE_DIR} MIME タイプを持つもの）を含むディレクトリのいずれかに設定できます。
+
+</li>
+
+<li>各ドキュメントはさまざまな機能を持つことができ、{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS COLUMN_FLAGS} を使って記述します。たとえば、{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_WRITE}、{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE}、{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_THUMBNAIL} といった機能です。同一の {@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} は複数のディレクトリに含めることができます。
+
+
+
+
+
+</li>
+</ul>
+
+<h2 id="flow">コントロール フロー</h2>
+<p>前述のように、ドキュメント プロバイダのデータモデルは従来のファイル階層を基本とします。
+ただし、{@link android.provider.DocumentsProvider} API でアクセスできるのであれば、任意の方法でデータを物理的に格納できます。たとえば、データにタグベースのクラウド ストレージを使用できます。
+
+</p>
+
+<p>図 2 の例は、写真アプリが格納されたデータに SAF を使ってアクセスする様子を表しています。
+</p>
+<p><img src="{@docRoot}images/providers/storage_dataflow.png" alt="app" /></p>
+
+<p class="img-caption"><strong>図 2.</strong> ストレージ アクセス フレームワーク フロー</p>
+
+<p>注: </p>
+<ul>
+
+<li>SAF では、プロバイダとクライアントは直接やり取りできません。
+クライアントが、ファイルを操作（ファイルの読み取り、編集、作成、削除）するためのパーミッションを要求します。
+</li>
+
+<li>アプリケーション（この例では写真アプリ）がインテント {@link android.content.Intent#ACTION_OPEN_DOCUMENT} または {@link android.content.Intent#ACTION_CREATE_DOCUMENT} を起動すると、やり取りが始まります。
+インテントには、基準を詳細に調整するためのフィルタが含まれる場合があります。&mdash;たとえば、「画像」の MIME タイプを持つ、開くことができるすべてのファイルを取得する、のように設定できます。
+
+</li>
+
+<li>インテントが起動すると、システム ピッカーが登録済みの各プロバイダに移動し、一致するコンテンツのルートをユーザーに表示します。
+</li>
+
+<li>基礎となるドキュメント プロバイダの種類に関係なく、ドキュメントにアクセスするための標準的なインターフェースがピッカーから提供されます。
+図 2 には、Google Drive プロバイダ、USB プロバイダ、クラウド プロバイダの例を示しています。
+</li>
+</ul>
+
+<p>図 3 は、Google Drive アカウントを選択したユーザーが画像を検索するピッカーを表しています。
+</p>
+
+<p><img src="{@docRoot}images/providers/storage_picker.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>図 3.</strong> ピッカー</p>
+
+<p>ユーザーが Google Drive を選択すると、図 4 のように画像が表示されます。
+この時点から、ユーザーはプロバイダとクライアント アプリがサポートするすべての操作方法を使って、画像を操作できるようになります。
+
+
+<p><img src="{@docRoot}images/providers/storage_photos.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>図 4.</strong>画像</p>
+
+<h2 id="client">クライアント アプリを作成する</h2>
+
+<p>Android 4.3 以前では、別のアプリからファイルを取得する場合、{@link android.content.Intent#ACTION_PICK} や {@link android.content.Intent#ACTION_GET_CONTENT} といったインテントを呼び出す必要があります。
+
+その後ユーザーは、ファイルを選択するためのアプリを 1 つ選びます。選択されたアプリはユーザーが使用可能なファイルを参照して選択するためのユーザー インターフェースを提供する必要があります。
+
+ </p>
+
+<p>Android 4.4 以降であれば、{@link android.content.Intent#ACTION_OPEN_DOCUMENT} インテントを使用するという選択肢もあります。このインテントではシステム制御のピッカー UI が表示され、ユーザーはそこから他のアプリで利用可能なすべてのファイル参照できます。
+
+
+ユーザーは、この 1 つの UI から、サポートされるすべてのアプリのファイルを選択できます。
+</p>
+
+<p>{@link android.content.Intent#ACTION_OPEN_DOCUMENT} は、{@link android.content.Intent#ACTION_GET_CONTENT} との置き換えを意図したものではありません。どちらを使用するかは、アプリのニーズによって異なります。
+
+</p>
+
+<ul>
+<li>アプリでデータの読み取りとインポートのみを行う場合は、{@link android.content.Intent#ACTION_GET_CONTENT} を使用します。
+この方法を使用すると、アプリは、画像ファイルなどのデータのコピーをインポートします。
+</li>
+
+<li>アプリからドキュメント プロバイダが所有するドキュメントへの、長期間の固定アクセスを可能にするには、{@link android.content.Intent#ACTION_OPEN_DOCUMENT} を使用します。
+
+ドキュメント プロバイダに格納されている画像をユーザーが編集するための、写真編集アプリなどの例が挙げられます。
+ </li>
+
+</ul>
+
+
+<p>ここでは、{@link android.content.Intent#ACTION_OPEN_DOCUMENT} と {@link android.content.Intent#ACTION_CREATE_DOCUMENT} インテントに基づいたクライアント アプリの作成方法について説明します。
+
+</p>
+
+
+<h3 id="search">ドキュメントを検索する</h3>
+
+<p>
+次のスニペットでは {@link android.content.Intent#ACTION_OPEN_DOCUMENT} を使って、画像ファイルがあるドキュメント プロバイダを検索します。
+
+</p>
+
+<pre>private static final int READ_REQUEST_CODE = 42;
+...
+/**
+ * Fires an intent to spin up the &quot;file chooser&quot; UI and select an image.
+ */
+public void performFileSearch() {
+
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's file
+    // browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones)
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only images, using the image MIME data type.
+    // If one wanted to search for ogg vorbis files, the type would be &quot;audio/ogg&quot;.
+    // To search for all documents available via installed storage providers,
+    // it would be &quot;*/*&quot;.
+    intent.setType(&quot;image/*&quot;);
+
+    startActivityForResult(intent, READ_REQUEST_CODE);
+}</pre>
+
+<p>注: </p>
+<ul>
+<li>アプリが {@link android.content.Intent#ACTION_OPEN_DOCUMENT} インテントを開始すると、ピッカーが起動し、条件に一致するすべてのドキュメント プロバイダが表示されます。
+</li>
+
+<li>カテゴリ {@link android.content.Intent#CATEGORY_OPENABLE} をインテントに追加すると、結果がフィルタリングされ、画像ファイルなどの開くことができるドキュメントのみが表示されます。
+</li>
+
+<li>{@code intent.setType("image/*")} 文は結果をさらにフィルタリングし、画像 MIME データタイプを持つドキュメントのみを表示します。
+</li>
+</ul>
+
+<h3 id="results">プロセスの結果</h3>
+
+<p>ユーザーがピッカーでドキュメントを選択すると、{@link android.app.Activity#onActivityResult onActivityResult()} が呼び出されます。選択したドキュメントを指す URI は {@code resultData} パラメータに含まれます。
+
+
+{@link android.content.Intent#getData getData()} を使って URI を抽出します。URI を抽出したら、その URI を使ってユーザーが希望するドキュメントを取得できます。
+次に例を示します。
+</p>
+
+<pre>&#64;Override
+public void onActivityResult(int requestCode, int resultCode,
+        Intent resultData) {
+
+    // The ACTION_OPEN_DOCUMENT intent was sent with the request code
+    // READ_REQUEST_CODE. If the request code seen here doesn't match, it's the
+    // response to some other intent, and the code below shouldn't run at all.
+
+    if (requestCode == READ_REQUEST_CODE && resultCode == Activity.RESULT_OK) {
+        // The document selected by the user won't be returned in the intent.
+        // Instead, a URI to that document will be contained in the return intent
+        // provided to this method as a parameter.
+        // Pull that URI using resultData.getData().
+        Uri uri = null;
+        if (resultData != null) {
+            uri = resultData.getData();
+            Log.i(TAG, "Uri: " + uri.toString());
+            showImage(uri);
+        }
+    }
+}
+</pre>
+
+<h3 id="metadata">ドキュメント メタデータを確認する</h3>
+
+<p>ドキュメントのURI を取得したら、そのメタデータにアクセスできます。次のスニペットは、URI で指定したドキュメントのメタデータを取得して、ログに記録します。
+</p>
+
+<pre>public void dumpImageMetaData(Uri uri) {
+
+    // The query, since it only applies to a single document, will only return
+    // one row. There's no need to filter, sort, or select fields, since we want
+    // all fields for one document.
+    Cursor cursor = getActivity().getContentResolver()
+            .query(uri, null, null, null, null, null);
+
+    try {
+    // moveToFirst() returns false if the cursor has 0 rows.  Very handy for
+    // &quot;if there's anything to look at, look at it&quot; conditionals.
+        if (cursor != null &amp;&amp; cursor.moveToFirst()) {
+
+            // Note it's called &quot;Display Name&quot;.  This is
+            // provider-specific, and might not necessarily be the file name.
+            String displayName = cursor.getString(
+                    cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
+            Log.i(TAG, &quot;Display Name: &quot; + displayName);
+
+            int sizeIndex = cursor.getColumnIndex(OpenableColumns.SIZE);
+            // If the size is unknown, the value stored is null.  But since an
+            // int can't be null in Java, the behavior is implementation-specific,
+            // which is just a fancy term for &quot;unpredictable&quot;.  So as
+            // a rule, check if it's null before assigning to an int.  This will
+            // happen often:  The storage API allows for remote files, whose
+            // size might not be locally known.
+            String size = null;
+            if (!cursor.isNull(sizeIndex)) {
+                // Technically the column stores an int, but cursor.getString()
+                // will do the conversion automatically.
+                size = cursor.getString(sizeIndex);
+            } else {
+                size = &quot;Unknown&quot;;
+            }
+            Log.i(TAG, &quot;Size: &quot; + size);
+        }
+    } finally {
+        cursor.close();
+    }
+}
+</pre>
+
+<h3 id="open-client">ドキュメントを開く</h3>
+
+<p>ドキュメントのURI を取得したら、そのドキュメントを開いてさまざまな操作を行うことができます。
+</p>
+
+<h4>ビットマップ</h4>
+
+<p>{@link android.graphics.Bitmap} を開く方法の例を次に示します。</p>
+
+<pre>private Bitmap getBitmapFromUri(Uri uri) throws IOException {
+    ParcelFileDescriptor parcelFileDescriptor =
+            getContentResolver().openFileDescriptor(uri, "r");
+    FileDescriptor fileDescriptor = parcelFileDescriptor.getFileDescriptor();
+    Bitmap image = BitmapFactory.decodeFileDescriptor(fileDescriptor);
+    parcelFileDescriptor.close();
+    return image;
+}
+</pre>
+
+<p>この操作を UI スレッドで実行しないでください。{@link android.os.AsyncTask} を使ってバックグラウンドで実行します。
+ビットマップを開いたら、{@link android.widget.ImageView} で表示できます。
+
+</p>
+
+<h4>InputStream を取得する</h4>
+
+<p>URI から {@link java.io.InputStream} を取得する方法の例を次に示します。このスニペットでは、ファイルの行が文字列に読み込まれます。
+</p>
+
+<pre>private String readTextFromUri(Uri uri) throws IOException {
+    InputStream inputStream = getContentResolver().openInputStream(uri);
+    BufferedReader reader = new BufferedReader(new InputStreamReader(
+            inputStream));
+    StringBuilder stringBuilder = new StringBuilder();
+    String line;
+    while ((line = reader.readLine()) != null) {
+        stringBuilder.append(line);
+    }
+    fileInputStream.close();
+    parcelFileDescriptor.close();
+    return stringBuilder.toString();
+}
+</pre>
+
+<h3 id="create">新しいドキュメントを作成する</h3>
+
+<p>{@link android.content.Intent#ACTION_CREATE_DOCUMENT} インテントを使用すると、アプリでドキュメント プロバイダに新しいドキュメントを作成できます。
+
+ファイルを作成するには、インテントに MIME タイプとファイル名を渡し、一意の要求コードを使ってインテントを起動します。
+後は自分で設定します。</p>
+
+
+<pre>
+// Here are some examples of how you might call this method.
+// The first parameter is the MIME type, and the second parameter is the name
+// of the file you are creating:
+//
+// createFile("text/plain", "foobar.txt");
+// createFile("image/png", "mypicture.png");
+
+// Unique request code.
+private static final int WRITE_REQUEST_CODE = 43;
+...
+private void createFile(String mimeType, String fileName) {
+    Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as
+    // a file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Create a file with the requested MIME type.
+    intent.setType(mimeType);
+    intent.putExtra(Intent.EXTRA_TITLE, fileName);
+    startActivityForResult(intent, WRITE_REQUEST_CODE);
+}
+</pre>
+
+<p>新しいドキュメントを作成したら、{@link android.app.Activity#onActivityResult onActivityResult()} で URI を取得して、ドキュメントに書き込み操作を実行できます。
+
+</p>
+
+<h3 id="delete">ドキュメントを削除する</h3>
+
+<p>ドキュメントの URI と、{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE SUPPORTS_DELETE} を含むドキュメントの {@link android.provider.DocumentsContract.Document#COLUMN_FLAGS Document.COLUMN_FLAGS} を取得すると、ドキュメントを削除できます。
+
+
+
+次に例を示します。</p>
+
+<pre>
+DocumentsContract.deleteDocument(getContentResolver(), uri);
+</pre>
+
+<h3 id="edit">ドキュメントを編集する</h3>
+
+<p>SAF を使用するとテキスト ドキュメントを直接編集できます。このスニペットは {@link android.content.Intent#ACTION_OPEN_DOCUMENT} インテントを起動し、カテゴリ {@link android.content.Intent#CATEGORY_OPENABLE} を使って、開くことができるドキュメントのみを表示します。
+
+
+
+次のように、テキスト ファイルのみを表示するようにフィルタリングします。</p>
+
+<pre>
+private static final int EDIT_REQUEST_CODE = 44;
+/**
+ * Open a file for writing and append some text to it.
+ */
+ private void editDocument() {
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's
+    // file browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only text files.
+    intent.setType(&quot;text/plain&quot;);
+
+    startActivityForResult(intent, EDIT_REQUEST_CODE);
+}
+</pre>
+
+<p>次に、{@link android.app.Activity#onActivityResult onActivityResult()}（「<a href="#results">プロセスの結果</a>」をご覧ください）からコードを呼び出して、編集を行います。次のスニペットは {@link android.content.ContentResolver} から {@link java.io.FileOutputStream} を取得します。
+
+
+デフォルトでは、「書き込み」モードを使用します。必要最小限のアクセスのみを要求することをお勧めします。書き込みのみが必要な場合に読み込みと書き込みを要求しないでください。
+
+</p>
+
+<pre>private void alterDocument(Uri uri) {
+    try {
+        ParcelFileDescriptor pfd = getActivity().getContentResolver().
+                openFileDescriptor(uri, "w");
+        FileOutputStream fileOutputStream =
+                new FileOutputStream(pfd.getFileDescriptor());
+        fileOutputStream.write(("Overwritten by MyCloud at " +
+                System.currentTimeMillis() + "\n").getBytes());
+        // Let the document provider know you're done by closing the stream.
+        fileOutputStream.close();
+        pfd.close();
+    } catch (FileNotFoundException e) {
+        e.printStackTrace();
+    } catch (IOException e) {
+        e.printStackTrace();
+    }
+}</pre>
+
+<h3 id="permissions">パーミッションを固定する</h3>
+
+<p>アプリで読み込みや書き込み用にファイルを開くと、システムからアプリに対して、該当するファイルの URI パーミッションが付与されます。
+このパーミッションはユーザーが端末を再起動するまで有効です。ただし、画像アプリでユーザーが最近編集した 5 つの画像にアプリから直接アクセスできるようにするにはどうすればいいでしょう。ユーザーの端末が再起動されたら、ファイルを検索するためにユーザーをシステム ピッカーに戻す必要がありますが、これは明らかにいい方法とは言えません。
+
+
+
+</p>
+
+<p>このような状況を避けるために、システムがアプリに付与するパーミッションを固定します。実際は、システムが提供する固定可能な URI パーミッションをアプリで「取得」します。
+
+これにより、端末を再起動した場合でも、ユーザーはアプリからファイルに継続的にアクセスできます。
+</p>
+
+
+<pre>final int takeFlags = intent.getFlags()
+            &amp; (Intent.FLAG_GRANT_READ_URI_PERMISSION
+            | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
+// Check for the freshest data.
+getContentResolver().takePersistableUriPermission(uri, takeFlags);</pre>
+
+<p>最後にもう 1 つ手順があります。アプリが最近アクセスした URI は、保存されていても既に無効になっている場合があります。&mdash;別のアプリによってドキュメントが削除されたり、修正されたりすることが考えられます。
+
+そこで、最新のデータを確認するには、常に {@code getContentResolver().takePersistableUriPermission()} を呼び出す必要があります。
+
+</p>
+
+<h2 id="custom">カスタム ドキュメント プロバイダを作成する</h2>
+
+<p>
+ファイル用のストレージ サービスを提供するアプリ（クラウド保存サービスなど）を開発する場合、カスタム ドキュメント プロバイダを作成すれば、SAF を介してファイルを利用可能にできます。
+
+ここではその方法について説明します。
+</p>
+
+
+<h3 id="manifest">マニフェスト</h3>
+
+<p>カスタム ドキュメント プロバイダを実装するには、アプリケーションのマニフェストに次のものを追加します。
+</p>
+<ul>
+
+<li>API レベル 19 以降のターゲット。</li>
+
+<li>カスタム ストレージ プロバイダを宣言する <code>&lt;provider&gt;</code> 要素。
+ </li>
+
+<li>クラス名となる、プロバイダの名前。パッケージ名を含みます。例: <code>com.example.android.storageprovider.MyCloudProvider</code>。
+</li>
+
+<li>認証局の名前。これはパッケージ名（この例では <code>com.example.android.storageprovider</code>）とコンテンツ プロバイダのタイプを合わせたもの（<code>documents</code>）。
+
+たとえば、{@code com.example.android.storageprovider.documents} のようになります。</li>
+
+<li><code>&quot;true&quot;</code> に設定された属性 <code>android:exported</code>。他のアプリで認識できるようにプロバイダをエクスポートする必要があります。
+</li>
+
+<li><code>&quot;true&quot;</code> に設定された属性 <code>android:grantUriPermissions</code>。
+この設定により、プロバイダのコンテンツにアクセスできるように、システムが他のアプリにアクセス権を付与します。
+特定のドキュメントへのアクセス権を固定する方法については、「<a href="#permissions">パーミッションを固定する</a>」をご覧ください。
+</li>
+
+<li>{@code MANAGE_DOCUMENTS} パーミッション。デフォルトでは、プロバイダはすべてのユーザーが利用可能です。
+このパーミッションを追加することで、プロバイダをシステムに制限できます。セキュリティ上この制限は重要です。
+</li>
+
+<li>リソース ファイルで定義したブール値に設定された {@code android:enabled} 属性。
+この属性は、Android 4.3 以前を実行する端末でプロバイダを無効にすることを目的としています。たとえば、{@code android:enabled="@bool/atLeastKitKat"} のようになります。
+マニフェストのこの属性に加え、次の操作を実行する必要があります。
+
+<ul>
+<li>{@code res/values/} にある {@code bool.xml} リソース ファイルに、次の行を追加します。
+ <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>{@code res/values-v19/} にある {@code bool.xml} リソース ファイルに、次の行を追加します。
+ <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;true&lt;/bool&gt;</pre></li>
+</ul></li>
+
+<li>{@code android.content.action.DOCUMENTS_PROVIDER} アクションを含むインテント フィルタ。システムがプロバイダを検索したときに、プロバイダがピッカーに表示されます。
+
+</li>
+
+</ul>
+<p>プロバイダを含むサンプル マニフェストの抜粋を次に示します。</p>
+
+<pre>&lt;manifest... &gt;
+    ...
+    &lt;uses-sdk
+        android:minSdkVersion=&quot;19&quot;
+        android:targetSdkVersion=&quot;19&quot; /&gt;
+        ....
+        &lt;provider
+            android:name=&quot;com.example.android.storageprovider.MyCloudProvider&quot;
+            android:authorities=&quot;com.example.android.storageprovider.documents&quot;
+            android:grantUriPermissions=&quot;true&quot;
+            android:exported=&quot;true&quot;
+            android:permission=&quot;android.permission.MANAGE_DOCUMENTS&quot;
+            android:enabled=&quot;&#64;bool/atLeastKitKat&quot;&gt;
+            &lt;intent-filter&gt;
+                &lt;action android:name=&quot;android.content.action.DOCUMENTS_PROVIDER&quot; /&gt;
+            &lt;/intent-filter&gt;
+        &lt;/provider&gt;
+    &lt;/application&gt;
+
+&lt;/manifest&gt;</pre>
+
+<h4 id="43">Android 4.3 以前を実行する端末をサポートする</h4>
+
+<p>{@link android.content.Intent#ACTION_OPEN_DOCUMENT} インテントは、Android 4.4 以降を実行する端末でのみ利用可能です。Android 4.3 以前を実行する端末に対応するためにアプリケーションで {@link android.content.Intent#ACTION_GET_CONTENT} をサポートするには、Android 4.4 以降を実行する端末のマニフェストで {@link android.content.Intent#ACTION_GET_CONTENT} インテント フィルタを無効にする必要があります。
+
+
+
+
+
+ドキュメント プロバイダと {@link android.content.Intent#ACTION_GET_CONTENT} は互いに排他的な関係にあると考える必要があります。
+
+両方を同時にサポートする場合、アプリはシステム ピッカー UI に 2 度表示され、格納されたデータへの 2 つの異なる方法を提供します。
+
+これではユーザーも操作に迷ってしまいます。</p>
+
+<p>ここでは、Android バージョン 4.4 以降を実行する端末で {@link android.content.Intent#ACTION_GET_CONTENT} インテント フィルタを無効にする際に推奨される方法を紹介します。
+
+</p>
+
+<ol>
+<li>{@code res/values/} にある {@code bool.xml} リソース ファイルに、次の行を追加します。
+ <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;true&lt;/bool&gt;</pre></li>
+
+<li>{@code res/values-v19/} にある {@code bool.xml} リソース ファイルに、次の行を追加します。
+ <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>4.4 （API レベル 19）以降のバージョンに対して {@link android.content.Intent#ACTION_GET_CONTENT} インテント フィルタを無効にするには、<a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">アクティビティ エイリアス</a>を追加します。
+
+
+次に例を示します。
+
+<pre>
+&lt;!-- This activity alias is added so that GET_CONTENT intent-filter
+     can be disabled for builds on API level 19 and higher. --&gt;
+&lt;activity-alias android:name=&quot;com.android.example.app.MyPicker&quot;
+        android:targetActivity=&quot;com.android.example.app.MyActivity&quot;
+        ...
+        android:enabled=&quot;@bool/atMostJellyBeanMR2&quot;&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name=&quot;android.intent.action.GET_CONTENT&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.OPENABLE&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.DEFAULT&quot; /&gt;
+        &lt;data android:mimeType=&quot;image/*&quot; /&gt;
+        &lt;data android:mimeType=&quot;video/*&quot; /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity-alias&gt;
+</pre>
+</li>
+</ol>
+<h3 id="contract">コントラクト</h3>
+
+<p>通常、カスタム コンテンツ プロバイダを作成するときには、<a href="{@docRoot}guide/topics/providers/content-provider-creating.html#ContractClass">コンテンツ プロバイダ</a>のデベロッパー ガイドに記載があるように、コントラクト クラスを実装するタスクが必要になります。
+
+
+コントラクト クラスは {@code public final} クラスであり、URI、列名、MIME タイプ、プロバイダに関連するその他のメタデータを含みます。
+
+コントラクト クラスは SAF によって提供されるため、独自に作成する必要はありません。
+
+</p>
+
+<ul>
+   <li>{@link android.provider.DocumentsContract.Document}</li>
+   <li>{@link android.provider.DocumentsContract.Root}</li>
+</ul>
+
+<p>たとえば、ドキュメント プロバイダでドキュメントやルートを照会したときには、カーソルに次のような列が返されることがあります。
+</p>
+
+<pre>private static final String[] DEFAULT_ROOT_PROJECTION =
+        new String[]{Root.COLUMN_ROOT_ID, Root.COLUMN_MIME_TYPES,
+        Root.COLUMN_FLAGS, Root.COLUMN_ICON, Root.COLUMN_TITLE,
+        Root.COLUMN_SUMMARY, Root.COLUMN_DOCUMENT_ID,
+        Root.COLUMN_AVAILABLE_BYTES,};
+private static final String[] DEFAULT_DOCUMENT_PROJECTION = new
+        String[]{Document.COLUMN_DOCUMENT_ID, Document.COLUMN_MIME_TYPE,
+        Document.COLUMN_DISPLAY_NAME, Document.COLUMN_LAST_MODIFIED,
+        Document.COLUMN_FLAGS, Document.COLUMN_SIZE,};
+</pre>
+
+<h3 id="subclass">サブクラス DocumentsProvider</h3>
+
+<p>カスタム ドキュメント プロバイダの作成の次の手順では、抽象クラス {@link android.provider.DocumentsProvider} をサブクラス化します。
+少なくとも、次のメソッドを実装する必要があります。
+</p>
+
+<ul>
+<li>{@link android.provider.DocumentsProvider#queryRoots queryRoots()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryDocument queryDocument()}</li>
+
+<li>{@link android.provider.DocumentsProvider#openDocument openDocument()}</li>
+</ul>
+
+<p>これらは実装する必要があるメソッドですが、これ以外にも多くのメソッドを実装できます。
+詳細については、{@link android.provider.DocumentsProvider} をご覧ください。
+</p>
+
+<h4 id="queryRoots">queryRoots を実装する</h4>
+
+<p>{@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} を実装すると、{@link android.provider.DocumentsContract.Root} で定義される列を使って、ドキュメント プロバイダのすべてのルート ディレクトリを指す {@link android.database.Cursor} が返されます。
+
+</p>
+
+<p>次のスニペットの {@code projection} パラメータは、呼び出し側が取得する特定のフィールドを表します。
+スニペットは新しいカーソルを作成し、それに行を 1 つ追加します。&mdash;[ダウンロード] や [画像] と同じように、1 つのルートに対して最上位のディレクトリが 1 つになります。
+
+ほとんどのプロバイダでルートは 1 つになります。複数のユーザー アカウントを使用するような場合は、1 つ以上のルートを設定できます。
+その場合、カーソルに 2 つ目の行を追加します。
+</p>
+
+<pre>
+&#64;Override
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+
+    // Create a cursor with either the requested fields, or the default
+    // projection if "projection" is null.
+    final MatrixCursor result =
+            new MatrixCursor(resolveRootProjection(projection));
+
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+    }
+
+    // It's possible to have multiple roots (e.g. for multiple accounts in the
+    // same app) -- just add multiple cursor rows.
+    // Construct one row for a root called &quot;MyCloud&quot;.
+    final MatrixCursor.RowBuilder row = result.newRow();
+    row.add(Root.COLUMN_ROOT_ID, ROOT);
+    row.add(Root.COLUMN_SUMMARY, getContext().getString(R.string.root_summary));
+
+    // FLAG_SUPPORTS_CREATE means at least one directory under the root supports
+    // creating documents. FLAG_SUPPORTS_RECENTS means your application's most
+    // recently used documents will show up in the &quot;Recents&quot; category.
+    // FLAG_SUPPORTS_SEARCH allows users to search all documents the application
+    // shares.
+    row.add(Root.COLUMN_FLAGS, Root.FLAG_SUPPORTS_CREATE |
+            Root.FLAG_SUPPORTS_RECENTS |
+            Root.FLAG_SUPPORTS_SEARCH);
+
+    // COLUMN_TITLE is the root title (e.g. Gallery, Drive).
+    row.add(Root.COLUMN_TITLE, getContext().getString(R.string.title));
+
+    // This document id cannot change once it's shared.
+    row.add(Root.COLUMN_DOCUMENT_ID, getDocIdForFile(mBaseDir));
+
+    // The child MIME types are used to filter the roots and only present to the
+    //  user roots that contain the desired type somewhere in their file hierarchy.
+    row.add(Root.COLUMN_MIME_TYPES, getChildMimeTypes(mBaseDir));
+    row.add(Root.COLUMN_AVAILABLE_BYTES, mBaseDir.getFreeSpace());
+    row.add(Root.COLUMN_ICON, R.drawable.ic_launcher);
+
+    return result;
+}</pre>
+
+<h4 id="queryChildDocuments">queryChildDocuments を実装する</h4>
+
+<p>{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()} を実装すると、{@link android.provider.DocumentsContract.Document} で定義される列を使って、指定したディレクトリ内のすべてのファイルを指す {@link android.database.Cursor} が返されます。
+
+
+
+</p>
+
+<p>ピッカー UI でアプリケーション ルートを選択すると、このメソッドが呼び出されます。ルートの下のディレクトリの子ドキュメントを取得します。
+ルートだけでなく、ファイル階層内の任意のレベルで呼び出せます。
+このスニペットでは、要求した列を持つ新しいカーソルが作成され、親ディレクトリのすぐ下のそれぞれの子の情報がカーソルに追加されます。子は、画像、別のディレクトリなど&mdash;任意のファイルとなります。
+
+
+</p>
+
+<pre>&#64;Override
+public Cursor queryChildDocuments(String parentDocumentId, String[] projection,
+                              String sortOrder) throws FileNotFoundException {
+
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    final File parent = getFileForDocId(parentDocumentId);
+    for (File file : parent.listFiles()) {
+        // Adds the file's display name, MIME type, size, and so on.
+        includeFile(result, null, file);
+    }
+    return result;
+}
+</pre>
+
+<h4 id="queryDocument">queryDocument を実装する</h4>
+
+<p>{@link android.provider.DocumentsProvider#queryDocument queryDocument()} を実装すると、{@link android.provider.DocumentsContract.Document} で定義される列を使って、指定したファイルを指す {@link android.database.Cursor} が返されます。
+
+
+
+</p>
+
+<p>{@link android.provider.DocumentsProvider#queryDocument queryDocument()} メソッドでは、特定のファイルの情報ではなく、{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()} に渡したのと同じ情報が返されます。
+
+
+</p>
+
+
+<pre>&#64;Override
+public Cursor queryDocument(String documentId, String[] projection) throws
+        FileNotFoundException {
+
+    // Create a cursor with the requested projection, or the default projection.
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    includeFile(result, documentId, null);
+    return result;
+}
+</pre>
+
+<h4 id="openDocument">openDocument を実装する</h4>
+
+<p>指定したファイルを表す {@link android.os.ParcelFileDescriptor} を返すには、{@link android.provider.DocumentsProvider#openDocument
+openDocument()} を実装する必要があります。
+他のアプリは、返された {@link android.os.ParcelFileDescriptor} を使ってデータをストリーミングします。
+ユーザーがファイルを選択するとシステムがこのメソッドを呼び出し、クライアント アプリは {@link android.content.ContentResolver#openFileDescriptor openFileDescriptor()} を呼び出してファイルへのアクセスを要求します。次に例を示します。
+
+
+</p>
+
+<pre>&#64;Override
+public ParcelFileDescriptor openDocument(final String documentId,
+                                         final String mode,
+                                         CancellationSignal signal) throws
+        FileNotFoundException {
+    Log.v(TAG, &quot;openDocument, mode: &quot; + mode);
+    // It's OK to do network operations in this method to download the document,
+    // as long as you periodically check the CancellationSignal. If you have an
+    // extremely large file to transfer from the network, a better solution may
+    // be pipes or sockets (see ParcelFileDescriptor for helper methods).
+
+    final File file = getFileForDocId(documentId);
+
+    final boolean isWrite = (mode.indexOf('w') != -1);
+    if(isWrite) {
+        // Attach a close listener if the document is opened in write mode.
+        try {
+            Handler handler = new Handler(getContext().getMainLooper());
+            return ParcelFileDescriptor.open(file, accessMode, handler,
+                        new ParcelFileDescriptor.OnCloseListener() {
+                &#64;Override
+                public void onClose(IOException e) {
+
+                    // Update the file with the cloud server. The client is done
+                    // writing.
+                    Log.i(TAG, &quot;A file with id &quot; +
+                    documentId + &quot; has been closed!
+                    Time to &quot; +
+                    &quot;update the server.&quot;);
+                }
+
+            });
+        } catch (IOException e) {
+            throw new FileNotFoundException(&quot;Failed to open document with id &quot;
+            + documentId + &quot; and mode &quot; + mode);
+        }
+    } else {
+        return ParcelFileDescriptor.open(file, accessMode);
+    }
+}
+</pre>
+
+<h3 id="security">セキュリティ</h3>
+
+<p>たとえば、ドキュメント プロバイダがパスワードで保護されたクラウド ストレージ サービスであり、ファイル共有を開始する前にユーザーがログインしているかどうかを確認するとします。ユーザーがログインしていない場合、アプリはどのような動作を行う必要があるでしょうか。
+
+このような場合、{@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} の実装のゼロルートを返すようにします。
+つまり、空のルートカーソルになります。</p>
+
+<pre>
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+...
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+}
+</pre>
+
+<p>その他に {@code getContentResolver().notifyChange()} を呼び出す手順もあります。{@link android.provider.DocumentsContract} については既に説明してあります。
+これを使ってこの URI を作成します。次のスニペットは、ユーザーのログイン ステータスが変わった場合に、ドキュメント プロバイダのルートを照会するようシステムに指示します。
+
+ユーザーがログインしてない場合は、上述のように、{@link android.provider.DocumentsProvider#queryRoots queryRoots()} を呼び出すと空のカーソルが返されます。
+
+こうすることで、ユーザーがプロバイダにログインしている場合にのみ、プロバイダのドキュメントを利用できます。
+</p>
+
+<pre>private void onLoginButtonClick() {
+    loginOrLogout();
+    getContentResolver().notifyChange(DocumentsContract
+            .buildRootsUri(AUTHORITY), null);
+}
+</pre>
\ No newline at end of file
diff --git a/docs/html-intl/intl/ja/guide/topics/resources/accessing-resources.jd b/docs/html-intl/intl/ja/guide/topics/resources/accessing-resources.jd
new file mode 100644
index 0000000..af8d005
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/resources/accessing-resources.jd
@@ -0,0 +1,337 @@
+page.title=リソースへのアクセス
+parent.title=アプリケーション リソース
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>クイックビュー</h2>
+  <ul>
+    <li>リソースは、{@code R.java} の整数を使うコード（{@code R.drawable.myimage} など）を使用して参照できます。
+</li>
+    <li>リソースは、特殊な XML 構文（{@code
+&#64;drawable/myimage} など）を使用して参照できます。</li>
+    <li>さらに、{@link android.content.res.Resources} のメソッドを使用すると、アプリ リソースにアクセスできます。
+</li>
+  </ul>
+
+  <h2>キークラス</h2>
+  <ol>
+    <li>{@link android.content.res.Resources}</li>
+  </ol>
+
+  <h2>本書の内容</h2>
+  <ol>
+    <li><a href="#ResourcesFromCode">コードからリソースにアクセスする</a></li>
+    <li><a href="#ResourcesFromXml">XML からリソースにアクセスする</a>
+      <ol>
+        <li><a href="#ReferencesToThemeAttributes">スタイル属性を参照する</a></li>
+      </ol>
+    </li>
+    <li><a href="#PlatformResources">プラットフォーム リソースにアクセスする</a></li>
+  </ol>
+
+  <h2>関連ドキュメント</h2>
+  <ol>
+    <li><a href="providing-resources.html">リソースの提供</a></li>
+    <li><a href="available-resources.html">Resource Types</a></li>
+  </ol>
+</div>
+</div>
+
+
+
+
+<p>アプリケーションでリソースを提供すると（詳細は「<a href="providing-resources.html">リソースの提供</a>」）、リソース ID を参照することで適用できるようになります。リソース ID はすべてプロジェクトの {@code R} クラスで定義します。これは {@code aapt} ツールが自動的に生成します。
+
+</p>
+
+<p>アプリケーションをコンパイルすると、{@code aapt} が {@code R} クラスを生成します。このクラスには、{@code
+res/} ディレクトリに含まれるの全リソースのリソース ID が入ります。
+リソースのそれぞれのタイプに対して、{@code R} サブクラス（例: ドローアブル リソースの場合はすべて {@code R.drawable}）があり、そのタイプのそれぞれのリソースには、静的整数（例: {@code R.drawable.icon}）があります。
+
+この整数がリソース ID であり、リソースを取得するのに使用できます。
+</p>
+
+<p>{@code R} クラスではリソース ID を指定されていますが、リソース ID を探す必要はありません。リソース ID は常に次のように構成されます。
+</p>
+<ul>
+  <li><em>リソースタイプ</em>: それぞれのリソースは、{@code
+string}、{@code drawable}、{@code layout} のようなタイプにグループ化されます。さまざまなタイプに関する詳細は、「<a href="available-resources.html">Resource Types</a>」をご覧ください。
+  </li>
+  <li><em>リソース名</em>。これは、拡張子を除外したファイル名か、XML {@code android:name} 属性（リソースが文字列などの単純な値の場合）のいずれかになります。
+
+</li>
+</ul>
+
+<p>リソースにアクセスするには次の 2 つの方法があります。</p>
+<ul>
+  <li><strong>コード内:</strong> {@code R} クラスのサブクラスから次のような静的整数を使用します。
+
+    <pre class="classic no-pretty-print">R.string.hello</pre>
+    <p>{@code string} はリソースタイプ、{@code hello} はリソース名です。多くの Android API が、リソース ID をこの形式で指定してリソースにアクセスします。
+<a href="#ResourcesFromCode">コードでリソースにアクセスする</a>をご覧ください。
+</p>
+  </li>
+  <li><strong>XML 内:</strong> {@code R} クラスで定義するリソース ID に対応する、次のような特殊な XML 構文を使用します。
+
+    <pre class="classic no-pretty-print">&#64;string/hello</pre>
+    <p>{@code string} はリソースタイプ、{@code hello} はリソース名です。この構文は、リソースで提供する値が想定される、XML リソース内の任意の場所に使用できます。
+<a href="#ResourcesFromXml">XML からリソースにアクセスする</a>をご覧ください。</p>
+  </li>
+</ul>
+
+
+
+<h2 id="ResourcesFromCode">コードでリソースにアクセスする </h2>
+
+<p>リソース ID をメソッド パラメータとして渡すことで、コード内でリソースを使用できます。たとえば、{@link android.widget.ImageView#setImageResource(int) setImageResource()} を使って、{@link android.widget.ImageView} が {@code res/drawable/myimage.png} を使用するように設定できます。
+
+</p>
+<pre>
+ImageView imageView = (ImageView) findViewById(R.id.myimageview);
+imageView.setImageResource(<strong>R.drawable.myimage</strong>);
+</pre>
+
+<p>さらに、{@link
+android.content.res.Resources} のメソッドを使用して、個々のリソースを取得することもできます。{@link android.content.Context#getResources()} を使用すると、インスタンスを取得できます。
+</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>元のファイルへのアクセス</h2>
+
+<p>一般的な操作ではありませんが、元のファイルやディレクトリへのアクセスが必要になることがあります。その場合、{@code res/} からリソースを読み込むにはリソース ID が必要なため、{@code res/} にファイルを保存しても機能しません。その代わりに、{@code assets/} ディレクトリにリソースを保存します。
+
+
+</p>
+<p>{@code assets/} ディレクトリに保存したファイルにはリソース ID が付与されないため、<em></em>{@code R} クラスや XML リソースからはそれらのファイルを参照できません。
+その代わりに、通常のファイル システムのように {@code assets/} ディレクトリ内のファイルを照会し、{@link android.content.res.AssetManager} を使用して未処理のデータを読み込みます。
+
+</p>
+<p>ただし、単に（ビデオやオーディオなどの）未処理データの読み込みのみが必要となる場合は、ファイルを {@code res/raw/} ディレクトリに保存し、{@link
+android.content.res.Resources#openRawResource(int) openRawResource()} を使用してバイトのストリームを読み込みます。
+</p>
+
+</div>
+</div>
+
+
+<h3>構文</h3>
+
+<p>次の構文を使用して、コード内のリソースを参照します。</p>
+
+<pre class="classic no-pretty-print">
+[<em>&lt;package_name&gt;</em>.]R.<em>&lt;resource_type&gt;</em>.<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li><em>{@code &lt;package_name&gt;}</em> は、リソースが配置されるパッケージの名前です（独自のパッケージからリソースを参照する場合は必要ありません）。
+</li>
+  <li><em>{@code &lt;resource_type&gt;}</em> は、リソースタイプの {@code R} サブクラスです。</li>
+  <li><em>{@code &lt;resource_name&gt;}</em> は、拡張子以外のリソース ファイル名か、XML 要素の {@code android:name} 属性値（単純な値の場合）のいずれかになります。
+
+</li>
+</ul>
+<p>リソースタイプの詳細やそれらの査証方法については、「<a href="available-resources.html">Resource Types</a>」をご覧ください。
+</p>
+
+
+<h3>使用例</h3>
+
+<p>多くのメソッドでリソース ID パラメータを使うことができ、{@link android.content.res.Resources} のメソッドを使用すればリソースを取得できます。
+{@link
+android.content.res.Resources} のインスタンスは、{@link android.content.Context#getResources
+Context.getResources()} により取得できます。</p>
+
+
+<p>次は、コードのリソースにアクセスする例です。</p>
+
+<pre>
+// Load a background for the current screen from a drawable resource
+{@link android.app.Activity#getWindow()}.{@link
+android.view.Window#setBackgroundDrawableResource(int)
+setBackgroundDrawableResource}(<strong>R.drawable.my_background_image</strong>) ;
+
+// Set the Activity title by getting a string from the Resources object, because
+//  this method requires a CharSequence rather than a resource ID
+{@link android.app.Activity#getWindow()}.{@link android.view.Window#setTitle(CharSequence)
+setTitle}(getResources().{@link android.content.res.Resources#getText(int)
+getText}(<strong>R.string.main_title</strong>));
+
+// Load a custom layout for the current screen
+{@link android.app.Activity#setContentView(int)
+setContentView}(<strong>R.layout.main_screen</strong>);
+
+// Set a slide in animation by getting an Animation from the Resources object
+mFlipper.{@link android.widget.ViewAnimator#setInAnimation(Animation)
+setInAnimation}(AnimationUtils.loadAnimation(this,
+        <strong>R.anim.hyperspace_in</strong>));
+
+// Set the text on a TextView object using a resource ID
+TextView msgTextView = (TextView) findViewById(<strong>R.id.msg</strong>);
+msgTextView.{@link android.widget.TextView#setText(int)
+setText}(<strong>R.string.hello_message</strong>);
+</pre>
+
+
+<p class="caution"><strong>警告:</strong> {@code
+R.java} ファイルを手動で修正しないでください。&mdash;プロジェクトがコンパイルされると、{@code aapt} ツールによって生成されます。
+変更した場合は、次回のコンパイルの際に上書きされます。</p>
+
+
+
+<h2 id="ResourcesFromXml">XML からリソースにアクセスする</h2>
+
+<p>一部の XML 属性や要素の値は、既存のリソースへの参照を使用して定義できます。
+通常は、ウィジェットに文字列や画像を提供するレイアウト ファイルを作成する場合に、この方法を使用します。
+</p>
+
+<p>たとえば、レイアウトに {@link android.widget.Button} を追加する場合は、次のように、ボタンテキストの<a href="string-resource.html">文字列リソース</a>を使用します。
+</p>
+
+<pre>
+&lt;Button
+    android:layout_width="fill_parent"
+    android:layout_height="wrap_content"
+    android:text="<strong>@string/submit</strong>" /&gt;
+</pre>
+
+
+<h3>構文</h3>
+
+<p>次の構文を使用して、XML リソース内のリソースを参照します。</p>
+
+<pre class="classic no-pretty-print">
+&#64;[<em>&lt;package_name&gt;</em>:]<em>&lt;resource_type&gt;</em>/<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li>{@code &lt;package_name&gt;} は、リソースが配置されるパッケージの名前です（同一のパッケージからリソースを参照する場合は必要ありません）
+</li>
+  <li>{@code &lt;resource_type&gt;} は、リソースタイプの {@code R} サブクラスです
+</li>
+  <li>{@code &lt;resource_name&gt;} は、拡張子以外のリソース ファイル名か、XML 要素の {@code android:name} 属性値（単純な値の場合）のいずれかになります。
+
+</li>
+</ul>
+
+<p>リソースタイプの詳細やそれらの査証方法については、「<a href="available-resources.html">Resource Types</a>」をご覧ください。
+</p>
+
+
+<h3>使用例</h3>
+
+<p>場合によっては、XML の値にリソースを使用する必要がありますが（ウィジェットにドローアブル画像を適用するような場合など）、単純な値を受け入れる XML の任意の場所にリソースを使用できます。
+たとえば、<a href="more-resources.html#Color">カラーリソース</a>と<a href="string-resource.html">文字列リソース</a>を持つ、次のようなリソースがあるとします。
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+   &lt;color name="opaque_red">#f00&lt;/color>
+   &lt;string name="hello">Hello!&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>これらのリソースを次のようなレイアウト ファイルに使用して、テキストカラーとテキストの文字列を設定できます。
+</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;color/opaque_red</strong>&quot;
+    android:text=&quot;<strong>&#64;string/hello</strong>&quot; /&gt;
+</pre>
+
+<p>この場合、リソースは独自のパッケージ内のものであることから、リソースの参照でパッケージ名を指定する必要はありません。
+システム リソースを参照するには、パッケージ名を含める必要があります。
+次に例を示します。</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;android:color/secondary_text_dark</strong>&quot;
+    android:text=&quot;&#64;string/hello&quot; /&gt;
+</pre>
+
+<p class="note"><strong>注:</strong> アプリケーションを他の言語にローカライズできるように、常に文字列リソースを使用するようにします。
+代替リソース（ローカライズされた文字列など）の作成方法についての詳細は、<a href="providing-resources.html#AlternativeResources">代替リソースを提供する</a>をご覧ください。
+
+
+アプリケーションを他の言語にローカライズするための詳細なガイドは、「<a href="localization.html">Localization</a>」をご覧ください。
+</p>
+
+<p>XML でリソースを使用すれば、エイリアスを作成することもできます。たとえば、別のドローアブル リソースのエイリアスとなる、次のようなドローアブル リソースを作成できます。
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/other_drawable" />
+</pre>
+
+<p>これは冗長のように思われますが、代替リソースを使用する場合に大変便利です。詳細は、<a href="providing-resources.html#AliasResources">エイリアス リソースを作成する</a>をご覧ください。
+</p>
+
+
+
+<h3 id="ReferencesToThemeAttributes">スタイル属性を参照する</h3>
+
+<p>スタイル属性リソースを使用すると、現在適用されているテーマの属性の値を参照できます。
+スタイル属性を参照すれば、ハードコードした値を指定しなくても、現在のテーマで与えられる標準的なバリエーションに合わせてスタイルを設定して、UI 要素の外観をカスタマイズできます。
+
+本質的に、スタイル属性を参照するというのは、「現在のテーマのこの属性で定義されるスタイルを使用する」という意味になります。
+</p>
+
+<p>属性スタイルを参照する場合、名前構文は通常のリソース形式とほぼ同じですが、アットマーク（{@code @}）の代わりに疑問符（{@code ?}）を使用します。リソースタイプの部分は省略可能です。
+
+例: </p>
+
+<pre class="classic">
+?[<em>&lt;package_name&gt;</em>:][<em>&lt;resource_type&gt;</em>/]<em>&lt;resource_name&gt;</em>
+</pre>
+
+<p>たとえば、次の例では、属性を参照して、テキスト カラーをシステム テーマの「プライマリ」テキスト カラーに合わせて設定します。
+</p>
+
+<pre>
+&lt;EditText id=&quot;text&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;wrap_content&quot;
+    android:textColor=&quot;<strong>?android:textColorSecondary</strong>&quot;
+    android:text=&quot;&#64;string/hello_world&quot; /&gt;
+</pre>
+
+<p>ここでは、{@code android:textColor} 属性が、現在のテーマのスタイル属性の名前を指定しています。
+Android は、{@code android:textColorSecondary} スタイル属性に適用された値を、このウィジェットの {@code android:textColor} の値として使用できるようになりました。
+このコンテキストで属性リソースが必要なことはシステム リソース ツールで認識されているため、タイプ（ここでは <code>?android:attr/textColorSecondary</code>）を明示的に指定する必要はありません &mdash; {@code attr} タイプを除外できます。
+
+
+</p>
+
+
+
+
+<h2 id="PlatformResources">プラットフォーム リソースにアクセスする</h2>
+
+<p>Android には、スタイル、テーマ、レイアウトといった多数の標準的なリソースが用意されています。これらのリソースにアクセスするには、<code>android</code> パッケージ名でリソース参照を修飾します。
+
+たとえば、Android には、{@link android.widget.ListAdapter} のリストアイテムに使用できるレイアウト リソースが用意されています。
+</p>
+
+<pre>
+{@link android.app.ListActivity#setListAdapter(ListAdapter)
+setListAdapter}(new {@link
+android.widget.ArrayAdapter}&lt;String&gt;(this, <strong>android.R.layout.simple_list_item_1</strong>, myarray));
+</pre>
+
+<p>この例では、{@link android.R.layout#simple_list_item_1} は、プラットフォームによって {@link android.widget.ListView} のアイテム向けに定義されるレイアウト リソースです。
+リストアイテムに独自のレイアウトを作成する代わりに、このレイアウトを使用できます。
+詳細については、「<a href="{@docRoot}guide/topics/ui/layout/listview.html">List View</a>」のデベロッパー ガイドをご覧ください。
+</p>
+
diff --git a/docs/html-intl/intl/ja/guide/topics/resources/overview.jd b/docs/html-intl/intl/ja/guide/topics/resources/overview.jd
new file mode 100644
index 0000000..28ffa94
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/resources/overview.jd
@@ -0,0 +1,103 @@
+page.title=リソースの概要
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>トピック</h2>
+  <ol>
+    <li><a href="providing-resources.html">リソースの提供</a></li>
+    <li><a href="accessing-resources.html">リソースへのアクセス</a></li>
+    <li><a href="runtime-changes.html">実行時の変更の処理</a></li>
+    <li><a href="localization.html">Localization</a></li>
+  </ol>
+
+  <h2>リファレンス</h2>
+  <ol>
+    <li><a href="available-resources.html">Resource Types</a></li>
+  </ol>
+</div>
+</div>
+
+
+<p>画像や文字列といったリソースは、常にアプリケーション コードの外部に置くようにすることで、独立して保持できるようになります。
+さらに、リソースを外部化することで、言語や画面サイズが異なるような特定の端末構成をサポートする代替リソースを提供できるようになります。異なる構成を持つ Android ベースの端末が増えていることから、この外部化がますます重要になってきています。
+
+
+異なる構成に互換性を持たせるには、リソースをタイプや構成ごとにグループ化するさまざまなサブディレクトリを使用して、プロジェクトの {@code res/} ディレクトリ内にリソースを整理する必要があります。
+
+
+</p>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram1.png" height="167" alt="" />
+<p class="img-caption">
+<strong>図 1.</strong> デフォルト レイアウトを使用する 2 つの異なる端末（アプリによる代替レイアウトの提供なし）。
+</p>
+</div>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>図 2.</strong> 画面サイズが違うレイアウトを使用する 2 つの異なる端末
+</p>
+</div>
+
+<p>すべてのリソースタイプに対して、アプリケーションの<em>デフォルト</em> レイアウトと複数の<em>代替</em>リソースを指定できます。
+</p>
+<ul>
+  <li>デフォルト リソースは、端末構成に関係なく使われるものであり、現在の構成に一致する代替リソースがない場合に使用されます。
+
+</li>
+  <li>代替リソースは、特定の構成で使うために作成したリソースです。
+リソースのグループを特定の構成に使用するよう指定するには、適切な構成修飾子をディレクトリ名の後ろに追加します。
+</li>
+</ul>
+
+<p>たとえば、デフォルトの UI レイアウトが {@code res/layout/} ディレクトリに保存してある場合、{@code res/layout-land/} ディレクトリにレイアウトを保存しておくことで、横向きの画面を使用する際の別のレイアウトを指定できます。
+
+
+Android は、現在の端末の構成とリソースのディレクトリ名をマッチングさせ、適切なリソースを自動的に適用します。
+</p>
+
+<p>図 1 は、代替リソースがない場合に、システムが 2 つの異なる端末に同じレイアウトを適用する様子を表しています。
+図 2 は、大きい画面の代替レイアウト リソースを追加した場合の、レイアウトの適用の様子を表しています。
+</p>
+
+<p>次のドキュメントには、アプリケーション リソースの整理、代替リソースの指定、アプリケーションでのアクセスなどに関する情報が詳細に記載されています。
+</p>
+
+<dl>
+  <dt><strong><a href="providing-resources.html">リソースの提供</a></strong></dt>
+  <dd>アプリで提供可能なリソースの種類、保存場所、特定の端末構成用の代替リソースの作成方法。
+</dd>
+  <dt><strong><a href="accessing-resources.html">リソースへのアクセス</a></strong></dt>
+  <dd>アプリケーション コードまたは他の XML リソースからの参照による、提供済みリソースの使用方法。
+</dd>
+  <dt><strong><a href="runtime-changes.html">実行時の変更の処理</a></strong></dt>
+  <dd>アクティビティの実行中に生じた構成の変更の管理方法。</dd>
+  <dt><strong><a href="localization.html">Localization</a></strong></dt>
+  <dd>代替リソースを使用したアプリケーションのローカライズのためのボトムアップ ガイド。代替リソースの特定の使用方法を 1 つだけ解説していますが、複数のユーザーが利用する場合には非常に重要になります。
+
+</dd>
+  <dt><strong><a href="available-resources.html">Resource Types</a></strong></dt>
+  <dd>提供可能な各種リソースタイプのリファレンス。XML 要素、属性、構文について説明しています。
+たとえば、このリファレンスには、アプリケーション メニュー、ドローアブル、アニメーションなどの作成方法が記載されています。
+</dd>
+</dl>
+
+<!--
+<h2>Raw Assets</h2>
+
+<p>An alternative to saving files in {@code res/} is to save files in the {@code
+assets/} directory. This should only be necessary if you need direct access to original files and
+directories by name. Files saved in the {@code assets/} directory will not be given a resource
+ID, so you can't reference them through the {@code R} class or from XML resources. Instead, you can
+query data in the {@code assets/} directory like an ordinary file system, search through the
+directory and
+read raw data using {@link android.content.res.AssetManager}. For example, this can be more useful
+when dealing with textures for a game. However, if you only need to read raw data from a file
+(such as a video or audio file), then you should save files into the {@code res/raw/} directory and
+then read a stream of bytes using {@link android.content.res.Resources#openRawResource(int)}. This
+is uncommon, but if you need direct access to original files in {@code assets/}, refer to the {@link
+android.content.res.AssetManager} documentation.</p>
+-->
diff --git a/docs/html-intl/intl/ja/guide/topics/resources/providing-resources.jd b/docs/html-intl/intl/ja/guide/topics/resources/providing-resources.jd
new file mode 100644
index 0000000..6729e8b6
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/resources/providing-resources.jd
@@ -0,0 +1,1094 @@
+page.title=リソースの提供
+parent.title=アプリケーション リソース
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>クイックビュー</h2>
+  <ul>
+    <li>{@code res/} のそれぞれのサブディレクトリにはさまざまなタイプのリソースがある</li>
+    <li>代替リソースは設定固有のリソース ファイルを提供する</li>
+    <li>特定の端末設定に依存しないように、デフォルトのリソースを常に入れておく
+</li>
+  </ul>
+  <h2>本書の内容</h2>
+  <ol>
+    <li><a href="#ResourceTypes">リソースタイプをグループ化する</a></li>
+    <li><a href="#AlternativeResources">代替リソースを提供する</a>
+      <ol>
+        <li><a href="#QualifierRules">修飾子の名前のルール</a></li>
+        <li><a href="#AliasResources">エイリアス リソースを作成する</a></li>
+      </ol>
+    </li>
+    <li><a href="#Compatibility">リソースとの最適な端末の互換性を提供する</a></li>
+    <li><a href="#BestMatch">Android が最適なリソースを見つける仕組み</a></li>
+  </ol>
+
+  <h2>関連ドキュメント</h2>
+  <ol>
+    <li><a href="accessing-resources.html">リソースへのアクセス</a></li>
+    <li><a href="available-resources.html">Resource Types</a></li>
+    <li><a href="{@docRoot}guide/practices/screens_support.html">複数のスクリーンをサポートする</a>
+</li>
+  </ol>
+</div>
+</div>
+
+<p>画像や文字列といったアプリケーション リソースは、常にコードの外部に置くようにすることで、独立して保持できるようになります。
+さらに、特別に名前を設定したリソース ディレクトリにグループ化することで、特定の端末設定に代替リソースを提供する必要があります。
+実行時には、現在の設定に基づいて、Android は適切なリソースを使用します。
+たとえば、画面サイズに応じて異なる UI レイアウトを提供したり、言語設定に応じて異なる文字列を提供したりできます。
+
+</p>
+
+<p>アプリケーション リソースを外部化したら、プロジェクトの {@code R} クラスで生成されるリソース ID を使用してそれらのリソースにアクセスできます。
+アプリケーションでのリソースの使用方法については、「<a href="accessing-resources.html">リソースへのアクセス</a>」をご覧ください。
+
+このドキュメントでは、Android プロジェクトでリソースをグループ化する方法と、特定の端末設定に代替リソースを提供する方法を説明します。
+</p>
+
+
+<h2 id="ResourceTypes">リソースタイプをグループ化する</h2>
+
+<p>それぞれのタイプのリソースを、プロジェクトの {@code res/} ディレクトリの特定のサブディレクトリに配置する必要があります。
+次は、単純なプロジェクトのファイル階層の例です。</p>
+
+<pre class="classic no-pretty-print">
+MyProject/
+    src/  <span style="color:black">
+        MyActivity.java  </span>
+    res/
+        drawable/  <span style="color:black">
+            graphic.png  </span>
+        layout/  <span style="color:black">
+            main.xml
+            info.xml</span>
+        mipmap/  <span style="color:black">
+            icon.png </span>
+        values/  <span style="color:black">
+            strings.xml  </span>
+</pre>
+
+<p>この例を見てわかるように、{@code res/} ディレクトリには、画像リソース、2 つのレイアウト リソース、ランチャー アイコンの {@code mipmap/} ディレクトリ、文字列リソース ファイルといった、すべてのリソース（サブディレクトリ内）が入ります。
+
+リソース ディレクトリ名は重要です。表 1 に説明があります。
+</p>
+
+<p class="note"><strong>注:</strong> Mipmap フォルダの使用方法については、「<a href="{@docRoot}tools/projects/index.html#mipmap">Managing Projects Overview</a>」をご覧ください。
+</p>
+
+<p class="table-caption" id="table1"><strong>表 1.</strong> プロジェクト {@code res/} ディレクトリ内でサポートされているリソース ディレクトリ。
+</p>
+
+<table>
+  <tr>
+    <th scope="col">ディレクトリ</th>
+    <th scope="col">リソースタイプ</th>
+  </tr>
+
+  <tr>
+    <td><code>animator/</code></td>
+    <td><a href="{@docRoot}guide/topics/graphics/prop-animation.html">プロパティ アニメーション</a>を定義する XML ファイル。
+</td>
+  </tr>
+
+  <tr>
+    <td><code>anim/</code></td>
+    <td><a href="{@docRoot}guide/topics/graphics/view-animation.html#tween-animation">トゥイーン アニメーション</a>を定義する XML ファイル。
+（プロパティ アニメーションをこのディレクトリに保存することもできますが、2 つのタイプを区別するために、プロパティ アニメーションは {@code animator/} ディレクトリに保存することをお勧めします）。
+
+</td>
+  </tr>
+
+  <tr>
+    <td><code>color/</code></td>
+    <td>色の状態リストを定義する XML ファイル。「<a href="color-list-resource.html">Color State List Resource</a>」をご覧ください。
+</td>
+  </tr>
+
+  <tr>
+    <td><code>drawable/</code></td>
+
+    <td><p>ビットマップ ファイル（{@code .png}、{@code .9.png}、{@code .jpg}、{@code .gif}）または次のドローアブル リソース サブタイプにコンパイルされる XML ファイル: 
+</p>
+      <ul>
+        <li>ビットマップ ファイル</li>
+        <li>Nine-Patche（リサイズ可能なビットマップ）</li>
+        <li>状態リスト</li>
+        <li>形状</li>
+        <li>アニメーション ドローアブル</li>
+        <li>その他のドローアブル</li>
+      </ul>
+      <p>「<a href="drawable-resource.html">Drawable Resources</a>」をご覧ください。</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>mipmap/</code></td>
+    <td>さまざまなランチャー アイコン密度のドローアブル ファイル。{@code mipmap/} フォルダによるランチャー アイコンの管理方法については、「<a href="{@docRoot}tools/project/index.html#mipmap">Managing Projects Overview</a>」をご覧ください。
+
+</td>
+  </tr>
+
+  <tr>
+    <td><code>layout/</code></td>
+    <td>ユーザー インターフェースのレイアウトを定義する XML ファイル。
+        「<a href="layout-resource.html">Layout Resource</a>」をご覧ください。</td>
+  </tr>
+
+  <tr>
+    <td><code>menu/</code></td>
+    <td>オプション メニュー、コンテキスト メニュー、サブ メニューといった、アプリケーション メニューを定義する XML ファイル。
+「<a href="menu-resource.html">Menu Resource</a>」をご覧ください。</td>
+  </tr>
+
+  <tr>
+    <td><code>raw/</code></td>
+    <td><p>未加工の形式で保存する任意のファイル。これらのリソースを未加工の {@link java.io.InputStream} で開くには、{@link android.content.res.Resources#openRawResource(int)
+Resources.openRawResource()} をリソース ID（{@code R.raw.ファイル名<em></em>}）とともに呼び出します。
+</p>
+      <p>ただし、元のファイル名とファイル階層にアクセスする必要がある場合は、一部のリソースを {@code
+assets/} ディレクトリ（{@code res/raw/} の代わりに）に保存することを検討します。
+{@code assets/} のファイルにはリソース ID が付与されていないため、読み込むには {@link android.content.res.AssetManager} が必要です。
+</p></td>
+  </tr>
+
+  <tr>
+    <td><code>values/</code></td>
+    <td><p>文字列、整数、色など、単純な値を含む XML ファイル。</p>
+      <p>その他の {@code res/} サブディレクトリの XML リソース ファイルは XML ファイル名に基づいて 1 つのリソースを定義しますが、{@code values/} ディレクトリのファイルは複数のリソースを表します。このディレクトリのファイルの場合、{@code &lt;resources&gt;} 要素のそれぞれの子が 1 つのリソースを定義します。
+
+
+たとえば、{@code &lt;string&gt;} 要素は {@code R.string} リソースを作成し、{@code &lt;color&gt;} 要素は {@code R.color} リソースを作成します。
+
+</p>
+      <p>各リソースの定義には XML 要素を使用するため、ファイルには任意の名前を設定でき、1 つのファイル内にさまざまなリソースを配置できます。
+ただし、わかりやすくするために、一意のリソースタイプをそれぞれのファイルに配置することもできます。
+次は、このディレクトリで作成できるリソースのファイル名の変換例です。
+</p>
+      <ul>
+        <li>リソースの配列の場合 arrays.xml（<a href="more-resources.html#TypedArray">型付き配列</a>）。</li>
+        <li><a href="more-resources.html#Color">色の値</a>の場合 colors.xml </li>
+        <li><a href="more-resources.html#Dimension">寸法の値</a>の場合 dimens.xml。</li>
+        <li><a href="string-resource.html">文字列の値</a>の場合 strings.xml。
+</li>
+        <li><a href="style-resource.html">スタイル</a>の場合 styles.xml。</li>
+      </ul>
+      <p>「<a href="string-resource.html">String Resources</a>」、「<a href="style-resource.html">Style Resource</a>」、「<a href="more-resources.html">More Resource Types</a>」をご覧ください。
+
+</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>xml/</code></td>
+    <td>{@link
+android.content.res.Resources#getXml(int) Resources.getXML()} を呼び出すことによって、実行時に読み込むことができる任意の XML ファイル。ここには、<a href="{@docRoot}guide/topics/search/searchable-config.html">検索可能な設定</a>など、各種の XML 設定ファイルが保存されます。
+
+<!-- or preferences configuration. --></td>
+  </tr>
+</table>
+
+<p class="caution"><strong>警告:</strong> リソース ファイルを {@code res/} ディレクトリに直接保存しないでください。&mdash;コンパイラー エラーの原因になります。
+</p>
+
+<p>リソースの特定のタイプの詳細は、「<a href="available-resources.html">Resource Types</a>」のドキュメントをご覧ください。</p>
+
+<p>表 1 で定義したサブディレクトリに保存するリソースは、「デフォルト」のリソースとなります。
+つまり、これらのリソースはアプリケーションのデフォルトのデザインとコンテンツを定義します。ただし、Android が搭載された端末では別のタイプのリソースが呼び出されることがあります。たとえば、端末の画面サイズが通常のものよりも大きな場合、追加の画面スペースを利用する別のレイアウト リソースを提供する必要があります。
+
+
+また、端末の言語設定が異なる場合、使用するユーザー インターフェースのテキストを翻訳する、別の文字列リソースを提供します。
+
+さまざまな端末設定にこれらの異なるリソースを提供するには、デフォルトのリソースに加えて、代替リソースを提供する必要があります。
+
+</p>
+
+
+<h2 id="AlternativeResources">代替リソースを提供する</h2>
+
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>図 1.</strong> 別のレイアウト リソースを使用する、2 つの異なる端末。</p>
+</div>
+
+<p>ほぼすべてのアプリケーションが、特定の端末設定をサポートするための代替リソースを提供します。
+たとえば、画面密度が異なる場合は代替ドローアブル リソースを含め、言語が異ならう場合は代替文字列リソースを含めます。
+実行時には、Android が現在の端末設定を検出し、アプリケーションに合ったリソースを読み込みます。
+
+</p>
+
+<p>一連のリソースに設定固有の代替リソースを指定するには:</p>
+<ol>
+  <li>{@code
+<em>&lt;resources_name&gt;</em>-<em>&lt;config_qualifier&gt;</em>} の形式で名前を付けた {@code res/} に新しいディレクトリを作成します。
+    <ul>
+      <li><em>{@code &lt;resources_name&gt;}</em> は、対応するディレクトリ リソースのディレクトリ名です（表 1 で定義）。
+</li>
+      <li><em>{@code &lt;qualifier&gt;}</em> は、リソースを使用する個々の設定を指定する名前です（表 2 で定義）。
+</li>
+    </ul>
+    <p>1 つ以上の <em>{@code &lt;qualifier&gt;}</em> を末尾に追加できます。それぞれの修飾子はダッシュを使用して区切ります。
+</p>
+    <p class="caution"><strong>警告:</strong> 複数の修飾子を末尾に追加する場合は、表 2 に記載されているのと同じ順番で配置する必要があります。
+修飾子の順番に誤りがあると、リソースが無視されます。
+</p>
+  </li>
+  <li>それぞれの代替リソースをこの新しいディレクトリに保存します。リソース ファイルの名前は、デフォルトのリソース ファイルと同じものにする必要があります。
+</li>
+</ol>
+
+<p>次に、デフォルト リソースと代替リソースの例を示します。</p>
+
+<pre class="classic no-pretty-print">
+res/
+    drawable/   <span style="color:black">
+        icon.png
+        background.png    </span>
+    drawable-hdpi/  <span style="color:black">
+        icon.png
+        background.png  </span>
+</pre>
+
+<p>{@code hdpi} 修飾子は、ディレクトリ内のリソースが高密度画面を持つ端末用であることを表します。
+これらのドローアブル ディレクトリの画像は特定の画面密度に合わせたサイズになっていますが、ファイル名は完全に同じになります。
+
+このように、{@code icon.png} や {@code
+background.png} 画像を参照するのに使用するリソース ID は常に同じになりますが、Android はリソース ディレクトリ名の修飾子により端末設定情報を比較して、各リソースの現在の端末に最適なバージョンを選択します。
+
+</p>
+
+<p>Android では複数の設定修飾子をサポートしており、それぞれの修飾子をダッシュで区切ることで、1 つのディレクトリ名に複数の修飾子を追加できます。
+表 2 には、有効な設定修飾子が優先度順に記載されています。&mdash;参照ディレクトリに複数の修飾子を使用する場合、表に記載されている順番にディレクトリ名に追加する必要があります。
+
+
+</p>
+
+
+<p class="table-caption" id="table2"><strong>表 2.</strong> 設定修飾子の名前。
+</p>
+<table>
+    <tr>
+        <th>設定</th>
+        <th>修飾子の値</th>
+        <th>説明</th>
+    </tr>
+    <tr id="MccQualifier">
+      <td>MCC と MNC</td>
+      <td>例: <br/>
+        <code>mcc310</code><br/>
+        <code><nobr>mcc310-mnc004</nobr></code><br/>
+        <code>mcc208-mnc00</code><br/>
+        など
+      </td>
+      <td>
+        <p>モバイル カントリーコード（MCC）です。端末の SIM カードにあるモバイル ネットワーク コード（MNC）が続くことがあります。
+たとえば、<code>mcc310</code> は米国の任意の携帯通信会社、<code>mcc310-mnc004</code> は米国の Verizon、<code>mcc208-mnc00</code> はフランスの Orange となります。
+
+</p>
+        <p>端末が無線通信接続（GSM 電話）を使用する場合、MCC と MNC の値は SIM カードの値となります。
+</p>
+        <p>さらに、MCC のみを使用することもできます（たとえば、アプリケーションに国固有の法に関するリソースを含める場合）。
+言語のみに基づいて指定する場合は、代わりに<em>言語と地域</em>の修飾子（次のセクションで解説）を使用します。
+MCC と MNC 修飾子を使用する場合は、慎重に設定し、予測のとおりに機能することをテストします。
+</p>
+        <p>さらに、設定フィールド {@link
+android.content.res.Configuration#mcc}、{@link
+android.content.res.Configuration#mnc} もご覧ください。これらは、それぞれ、現在のモバイル カントリーコードとモバイル ネットワーク コードを表します。
+</p>
+      </td>
+    </tr>
+    <tr id="LocaleQualifier">
+      <td>言語と地域</td>
+      <td>例: <br/>
+        <code>en</code><br/>
+        <code>fr</code><br/>
+        <code>en-rUS</code><br/>
+        <code>fr-rFR</code><br/>
+        <code>fr-rCA</code><br/>
+        など
+      </td>
+      <td><p>言語は 2 文字の <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php">ISO 639-1</a> 言語コードで定義し、オプションで、2 文字の <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html">ISO 3166-1-alpha-2</a> 地域コードを後ろに追加します（先頭に小文字の「{@code r}」が付きます）。
+
+
+
+        </p><p>
+        コードでは大文字と小文字が区別されません。<em></em>地域を区別するには、{@code r} 接頭辞を使用します。
+
+        地域のみは指定できません。</p>
+        <p>ユーザーがシステム設定で言語を変更すると、アプリケーションの実行中にこの値が変更されます。
+実行時のアプリケーションに与える影響については、<a href="runtime-changes.html">実行時の変更の処理</a>をご覧ください。
+</p>
+        <p>アプリケーションを他の言語にローカライズするための詳細なガイドは、「<a href="localization.html">Localization</a>」をご覧ください。
+</p>
+        <p>さらに、{@link android.content.res.Configuration#locale} 設定フィールドもご覧ください。これは、現在のロケールを表します。
+</p>
+      </td>
+    </tr>
+    <tr id="LayoutDirectionQualifier">
+      <td>レイアウトの方向</td>
+      <td><code>ldrtl</code><br/>
+        <code>ldltr</code><br/>
+      </td>
+      <td><p>アプリケーションのレイアウトの方向です。{@code ldrtl} は、「レイアウト方向は右から左」という意味になります。{@code ldltr} は、「レイアウト方向は左から右」という意味になります。この設定が暗黙的にデフォルト値となります。
+
+      </p>
+      <p>この設定は、レイアウト、ドローアブル、値など、任意のリソースに適用できます。
+      </p>
+      <p>たとえば、アラビア語に何らかの特定なレイアウトを提供し、その他の「右から左」の言語（ペルシャ語やヘブライ語）に汎用的なレイアウトを提供する場合、次のように設定します。
+
+      </p>
+<pre class="classic no-pretty-print">
+res/
+    layout/   <span style="color:black">
+        main.xml  </span>(Default layout)
+    layout-ar/  <span style="color:black">
+        main.xml  </span>(Specific layout for Arabic)
+    layout-ldrtl/  <span style="color:black">
+        main.xml  </span>(Any "right-to-left" language, except
+                  for Arabic, because the "ar" language qualifier
+                  has a higher precedence.)
+</pre>
+        <p class="note"><strong>注:</strong> アプリで右から左のレイアウト機能を有効にするには、<a href="{@docRoot}guide/topics/manifest/application-element.html#supportsrtl">{@code
+        supportsRtl}</a> を {@code "true"} に設定し、<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> を 17 以上に設定します。
+</p>
+        <p>API レベル 17 で追加。<em></em></p>
+      </td>
+    </tr>
+    <tr id="SmallestScreenWidthQualifier">
+      <td>smallestWidth</td>
+      <td><code>sw&lt;N&gt;dp</code><br/><br/>
+        例: <br/>
+        <code>sw320dp</code><br/>
+        <code>sw600dp</code><br/>
+        <code>sw720dp</code><br/>
+        など
+      </td>
+      <td>
+        <p>使用可能な画面領域の最小寸法で指定する、画面の基本サイズ。
+具体的には、端末の smallestWidth は画面に使用できる高さと幅の最小サイズとなります（画面の「使用できる最小幅」と考えることもできます）。
+画面の現在の方向に関係なく、この修飾子を使用することで、アプリケーションの UI に少なくとも {@code &lt;N&gt;} dps の幅を使用できます。
+
+</p>
+        <p>たとえば、画面領域のレイアウトの最小寸法を常に 600 dp とする必要がある場合、この修飾子を使用してレイアウト リソース {@code
+res/layout-sw600dp/} を作成できます。
+システムは、600dp の側が縦になるか横になるか関係なく、使用可能な画面の最小寸法が 600dp 以上の場合にのみこれらのリソースを使用します。
+
+smallestWidth は端末の固定された画面サイズ特性です。<strong>画面の向きが変わっても、端末の smallestWidth は変更されません。</strong>
+</p>
+        <p>端末の smallestWidth では画面の装飾とシステム UI が考慮されます。たとえば、端末の画面に smallestWidth の軸に沿ったスペースを考慮した固定 UI 要素がある場合、これらの画面ピクセルは UI に使用できないことから、システムは実際の画面サイズよりも小さな smallestWidth を宣言します。つまり、使用する値は、レイアウトが必要とする実際の最小寸法とする必要があります（通常は、この値は、画面の現在の向きに関係なく、レイアウトがサポートする「最小幅」となります）。<em></em>
+
+
+
+
+</p>
+        <p>次に、一般的な画面サイズに使用する値を示します。</p>
+        <ul>
+          <li>320。次のような画面設定を持つ端末。
+            <ul>
+              <li>240x320 ldpi（QVGA ハンドセット）</li>
+              <li>320x480 mdpi（ハンドセット）</li>
+              <li>480x800 hdpi（高密度ハンドセット）</li>
+            </ul>
+          </li>
+          <li>480。480x800 mdpi（タブレットやハンドセット）などの画面。</li>
+          <li>600。600x1024 mdpi（7 インチタブレット）などの画面。</li>
+          <li>720。720x1280 mdpi（10 インチタブレット）などの画面。</li>
+        </ul>
+        <p>アプリケーションで smallestWidth 修飾子の値が異なる複数のリソース ディレクトリを提供する場合、システムは端末の smallestWidth に最も近い（かつ超過しない）ものを使用します。
+
+ </p>
+        <p>API レベル 13 で追加。<em></em></p>
+        <p>さらに、<a href="{@docRoot}guide/topics/manifest/supports-screens-element.html#requiresSmallest">{@code
+android:requiresSmallestWidthDp}</a> 属性もご覧ください。これは、アプリケーションが互換性を持つ最小の smallestWidth と、端末の smallestWidth 値を保持する {@link
+android.content.res.Configuration#smallestScreenWidthDp} 設定フィールドを宣言します。
+
+</p>
+        <p>さまざまな画面の設計とこの修飾子の使用方法についての詳細は、「<a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>」のデベロッパー ガイドをご覧ください。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenWidthQualifier">
+      <td>使用可能な幅</td>
+      <td><code>w&lt;N&gt;dp</code><br/><br/>
+        例: <br/>
+        <code>w720dp</code><br/>
+        <code>w1024dp</code><br/>
+        など
+      </td>
+      <td>
+        <p>リソースを使用する、使用可能な最小の画面幅を {@code dp} 単位で指定します。&mdash;<code>&lt;N&gt;</code> の値で定義します。
+画面の向きの縦と横を変更すると、現在の実際の幅に合わせて、この設定値が変更されます。
+
+</p>
+        <p>アプリケーションでこの設定が異なる複数のリソース ディレクトリを提供する場合、システムは端末の現在の画面の幅に最も近い（かつ超過しない）ものを使用します。
+
+この値は画面の装飾を考慮します。つまり、端末のディスプレイの左や右に何らかの固定 UI 要素がある場合、これらの UI 要素を考慮し、アプリケーションの使用可能なスペースを減らして、実際の画面サイズよりも小さな幅を使用します。
+
+
+
+</p>
+        <p>API レベル 13 で追加。<em></em></p>
+        <p>さらに、{@link android.content.res.Configuration#screenWidthDp} 設定フィールドもご覧ください。これは現在の画面の幅を保持します。
+</p>
+        <p>さまざまな画面の設計とこの修飾子の使用方法についての詳細は、「<a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>」のデベロッパー ガイドをご覧ください。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenHeightQualifier">
+      <td>使用可能な高さ</td>
+      <td><code>h&lt;N&gt;dp</code><br/><br/>
+        例: <br/>
+        <code>h720dp</code><br/>
+        <code>h1024dp</code><br/>
+        など
+      </td>
+      <td>
+        <p>リソースを使用する、使用可能な最小の画面幅を「dp」単位で指定します。&mdash;<code>&lt;N&gt;</code> の値で定義します。
+画面の向きの縦と横を変更すると、現在の実際の高さに合わせて、この設定値が変更されます。
+
+</p>
+        <p>アプリケーションでこの設定が異なる複数のリソース ディレクトリを提供する場合、システムは端末の現在の画面の高さに最も近い（かつ超過しない）ものを使用します。
+
+この値は画面の装飾を考慮します。つまり、端末のディスプレイの上や下に何らかの固定 UI 要素がある場合、これらの UI 要素を考慮し、アプリケーションの使用可能なスペースを減らして、実際の画面サイズよりも小さな高さを使用します。
+
+
+
+固定されていない画面の装飾（全画面にした場合に非表示になる携帯電話のステータスバーなど）や、タイトルバーやアクションバーなどのウィンドウの装飾は、ここでは考慮されません。そのため、アプリケーションでは指定したスペースよりもやや小さなサイズに対処できるように準備をし置く必要があります。<em></em>
+
+
+
+
+        <p>API レベル 13 で追加。<em></em></p>
+        <p>さらに、{@link android.content.res.Configuration#screenHeightDp} 設定フィールドもご覧ください。これは現在の画面の幅を保持します。
+</p>
+        <p>さまざまな画面の設計とこの修飾子の使用方法についての詳細は、「<a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>」のデベロッパー ガイドをご覧ください。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenSizeQualifier">
+      <td>画面サイズ</td>
+      <td>
+        <code>small</code><br/>
+        <code>normal</code><br/>
+        <code>large</code><br/>
+        <code>xlarge</code>
+      </td>
+      <td>
+        <ul class="nolist">
+        <li>{@code small}: 低密度 QVGA 画面と同等のサイズを持つ画面です。
+小さい画面の最小レイアウト サイズは約 320x426 dp 単位です。
+たとえば、QVGA 低密度や VGA 高密度です。
+</li>
+        <li>{@code normal}: 中密度 HVGA 画面と同等のサイズを持つ画面です。
+通常の画面の最小レイアウト サイズは約 320x470 dp 単位です。
+たとえば、WQVGA 低密度、HVGA 中密度、WVGA 高密度といった画面になります。
+
+</li>
+        <li>{@code large}: 中密度 VGA 画面と同等のサイズを持つ画面です。
+
+        大きな画面の最小レイアウト サイズは約 480x640 dp 単位です。
+        たとえば、VGA や WVGA の中密度といった画面です。</li>
+        <li>{@code xlarge}: 従来の中密度 HVGA 画面よりもはるかに大きなサイズの画面です。
+特大の画面の最小レイアウト サイズは約 720x960 dp 単位です。
+ほとんどの場合、特大の画面を持つ端末はポケットに入れて持ち運ぶことができないほど大きく、タブレット スタイルの端末になります。
+
+API レベル 9 で追加。<em></em></li>
+        </ul>
+        <p class="note"><strong>注:</strong> サイズ識別子を持つ場合でも、リソースがそのサイズの画面以外には対応しないということではありません。<em></em>
+現在の端末に最適な識別子を持つ代替リソースを提供していない場合でも、システムによって<a href="#BestMatch">最適な</a>リソースが使用されることがあります。
+
+</p>
+        <p class="caution"><strong>警告:</strong> すべてのリソースが現在の画面よりも大きなサイズ識別子を使用している場合、システムはそれらのリソースを使用せず、アプリケーションが実行時にクラッシュしてしまいます（たとえば、すべてのリソースに {@code
+xlarge} 識別子のタグが付いているが、端末は通常サイズの画面である場合）。<em></em><strong></strong>
+
+</p>
+        <p>API レベル 4 で追加。<em></em></p>
+        
+        <p>詳細については、「<a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>」をご覧ください。
+</p>
+        <p>さらに、{@link android.content.res.Configuration#screenLayout} 設定フィールドもご覧ください。これは、画面のサイズが小、中、大のいずれかであるかを表します。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenAspectQualifier">
+      <td>画面アスペクト</td>
+      <td>
+        <code>long</code><br/>
+        <code>notlong</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code long}: WQVGA、WVGA、FWVGA のような長い画面</li>
+          <li>{@code notlong}: QVGA、HVGA、VGA のように長くない画面</li>
+        </ul>
+        <p>API レベル 4 で追加。<em></em></p>
+        <p>これは純粋に画面のアスペクト比を基準とします（「長い」画面は幅広の画面になります）。これは画面の向きには関係ありません。
+</p>
+        <p>さらに、{@link android.content.res.Configuration#screenLayout} 設定フィールドもご覧ください。これは、画面のサイズが長いかどうかを表します。
+</p>
+      </td>
+    </tr>
+    <tr id="OrientationQualifier">
+      <td>画面の向き</td>
+      <td>
+        <code>port</code><br/>
+        <code>land</code>  <!-- <br/>
+        <code>square</code>  -->
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code port}: 端末は縦向き（垂直）になっています</li>
+          <li>{@code land}: 端末は横向き（水平）になっています</li>
+          <!-- Square mode is currently not used. -->
+        </ul>
+        <p>ユーザーが画面を回転すると、アプリケーションの実行中にこの値が変更されます。
+実行時のアプリケーションに与える影響については、「<a href="runtime-changes.html">実行時の変更の処理</a>」をご覧ください。
+</p>
+        <p>さらに、{@link android.content.res.Configuration#orientation} 設定フィールドもご覧ください。これは、現在の端末の画面の向きを表します。
+</p>
+      </td>
+    </tr>
+    <tr id="UiModeQualifier">
+      <td>UI モード</td>
+      <td>
+        <code>car</code><br/>
+        <code>desk</code><br/>
+        <code>television</code><br/>
+        <code>appliance</code>
+        <code>watch</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code car}: 端末は車載ドックで表示されています</li>
+          <li>{@code desk}: 端末はデスクドックで表示されています</li>
+          <li>{@code television}: 端末はテレビで表示されており、「10 フィート」離れた位置からの操作が可能です。UI はユーザーから離れた場所にある大きな画面に表示され、主に十字キーやポインタ以外のやり取りで操作します。
+
+
+</li>
+          <li>{@code appliance}: 端末をアプライアンスとして使用します。ディスプレイはありません
+</li>
+          <li>{@code watch}: 端末にはディスプレイがあり、手首に装着して使用します</li>
+        </ul>
+        <p>API レベル 8 で追加。television は API 13 で追加。watch は API 20 で追加。<em></em></p>
+        <p>端末をホルダーに装着したり、取り外したりしたときのアプリの反応については、「<a href="{@docRoot}training/monitoring-device-state/docking-monitoring.html">Determining and Monitoring the Docking State and Type</a>」をご覧ください。
+
+</p>
+        <p>ユーザーが端末をドックに装着すると、アプリケーションの実行中にこの値が変更されます。
+{@link
+android.app.UiModeManager} を使用すると、これらのモードの一部を有効または無効にできます。実行時のアプリケーションに与える影響については、「<a href="runtime-changes.html">実行時の変更の処理</a>」をご覧ください。
+</p>
+      </td>
+    </tr>
+    <tr id="NightQualifier">
+      <td>ナイトモード</td>
+      <td>
+        <code>night</code><br/>
+        <code>notnight</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code night}: 夜間</li>
+          <li>{@code notnight}: 昼間</li>
+        </ul>
+        <p>API レベル 8 で追加。<em></em></p>
+        <p>ナイトモードを自動モード（デフォルト）のままにしておくと、時間を基準にしてモードが変更された場合に、アプリケーションの実行中にこの値が変更されます。
+{@link android.app.UiModeManager} を使用すると、このモードを有効または無効にできます。
+実行時のアプリケーションに与える影響については、「<a href="runtime-changes.html">実行時の変更の処理</a>」をご覧ください。
+</p>
+      </td>
+    </tr>
+    <tr id="DensityQualifier">
+      <td>画面ピクセル密度（dpi）</td>
+      <td>
+        <code>ldpi</code><br/>
+        <code>mdpi</code><br/>
+        <code>hdpi</code><br/>
+        <code>xhdpi</code><br/>
+        <code>xxhdpi</code><br/>
+        <code>xxxhdpi</code><br/>
+        <code>nodpi</code><br/>
+        <code>tvdpi</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code ldpi}: 低密度の画面。約 120dpi です。</li>
+          <li>{@code mdpi}: 中密度（従来の HVGA）の画面。約 160dpi です。
+</li>
+          <li>{@code hdpi}: 高密度の画面。約 240dpi です。</li>
+          <li>{@code xhdpi}: 超高密度の画面。約 320dpi です。API レベル 8 で追加。<em></em>
+</li>
+          <li>{@code xxhdpi}: 超超高密度の画面。約 480dpi です。API レベル 16 で追加。<em></em>
+</li>
+          <li>{@code xxxhdpi}: 超超高密度が使用（ランチャー アイコンのみ。「Supporting Multiple Screens」の<a href="{@docRoot}guide/practices/screens_support.html#xxxhdpi-note">注</a>をご覧ください）。約 640dpi です。<em></em>
+
+API レベル 18 で追加。<em></em>
+</li>
+          <li>{@code nodpi}: 端末の密度に合わせてサイズを変更しないビットマップ リソースに使用します。
+</li>
+          <li>{@code tvdpi}: 密度が mdpi と hdpi の間の画面。約 213dpi です。これは「プライマリ」の密度グループとしては認識されません。
+ほとんどの場合、テレビ向けのものであり、大部分のアプリは必要としません。&mdash;通常、アプリの場合は mdpi と hdpi リソースを提供すれば十分であり、システムが必要に応じてサイズを変更します。
+
+この識別子は API レベル 13 で導入されました。</li>
+        </ul>
+        <p>6 つのプライマリ密度のサイズの比率は 3:4:6:8:12:16 です（tvdpi 密度を除く）。
+そのため、ldpi では 9x9 のビットマップ、mdpi では 12x12 のビットマップ、hdpi では 18x18 のビットマップ、xhdpi では 24x24 のビットマップとなります。
+</p>
+        <p>画像リソースがテレビや他の特定の端末で正常に表示されず、tvdpi リソースを試す場合、拡張係数は 1.33*mdpi になります。
+たとえば、画面向けの 100px x 100px 画像は、tvdpi 向けにすると 133px x 133px となります。
+</p>
+        <p class="note"><strong>注:</strong> 密度識別子を持つ場合でも、リソースがその密度の画面以外には対応しないということではありません。<em></em>
+現在の端末に最適な識別子を持つ代替リソースを提供していない場合でも、システムによって<a href="#BestMatch">最適な</a>リソースが使用されることがあります。
+
+</p>
+        <p>異なる画面密度を処理する方法や、Android が現在の密度に合わせてビットマップのサイズを変更する方法については、「<a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>」をご覧ください。
+
+</p>
+       </td>
+    </tr>
+    <tr id="TouchscreenQualifier">
+      <td>タッチスクリーン タイプ</td>
+      <td>
+        <code>notouch</code><br/>
+        <code>finger</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code notouch}: 端末にはタッチスクリーンが搭載されていません。</li>
+          <li>{@code finger}: 端末には、ユーザーの指先による指示操作で使用するためのタッチスクリーンが搭載されています。
+</li>
+        </ul>
+        <p>{@link android.content.res.Configuration#touchscreen} 設定フィールドもご覧ください。これは、端末上のタッチスクリーンのタイプを表します。
+</p>
+      </td>
+    </tr>
+    <tr id="KeyboardAvailQualifier">
+      <td>キーボードの使用可能状況</td>
+      <td>
+        <code>keysexposed</code><br/>
+        <code>keyshidden</code><br/>
+        <code>keyssoft</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code keysexposed}: 端末ではキーボードを使用できます。端末でソフトウェア キーボードが有効な（と想定される）場合、端末にハードウェア キーボードが接続されておらず、ハードウェア キーボードがユーザーに提示されていない場合でも、この値が使用されることがあります。<em></em>
+
+ソフトウェア キーボードが提供されていない、または無効になっている場合は、ハードウェア キーボードが認識された場合にのみ使用されます。
+
+</li>
+          <li>{@code keyshidden}: 端末には使用可能なハードウェア キーボードがありますが非表示になっています。また、端末ではソフトウェア キーボードが有効になっていません。<em></em><em></em>
+</li>
+          <li>{@code keyssoft}: 表示されているかどうかに関係なく、端末ではソフトウェア キーボードが有効になっています。
+</li>
+        </ul>
+        <p><code>keysexposed</code> リソースを提供するが、<code>keyssoft</code> リソースを提供しない場合、システムのソフトウェア キーボードが有効になっている場合は、キーボードが表示されているかに関係なく、システムは <code>keysexposed</code> リソースを使用します。
+
+</p>
+        <p>ユーザーがハードウェア キーボードを開くと、アプリケーションの実行中にこの値が変更されます。
+実行時のアプリケーションに与える影響については、「<a href="runtime-changes.html">実行時の変更の処理</a>」をご覧ください。
+</p>
+        <p>さらに、設定フィールド {@link
+android.content.res.Configuration#hardKeyboardHidden} と {@link
+android.content.res.Configuration#keyboardHidden} もご覧ください。これは、ハードウェア キーボードの可視性、任意のキーボード（ソフトウェアを含む）の可視性、それぞれの可視性を表します。
+</p>
+      </td>
+    </tr>
+    <tr id="ImeQualifier">
+      <td>主なテキストの入力方法</td>
+      <td>
+        <code>nokeys</code><br/>
+        <code>qwerty</code><br/>
+        <code>12key</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nokeys}: 端末にはテキスト入力用のハードウェア キーはありません。</li>
+          <li>{@code qwerty}: ユーザーに表示されているかどうかに関係なく、端末にはハードウェア クワーティ キーボードが搭載されています。
+
+</li>
+          <li>{@code 12key}: ユーザーに表示されているかどうかに関係なく、端末にはハードウェア 12key キーボードが搭載されています。
+</li>
+        </ul>
+        <p>さらに、{@link android.content.res.Configuration#keyboard} 設定フィールドもご覧ください。これは、使用可能な主なテキストの入力方法を表します。
+</p>
+      </td>
+    </tr>
+    <tr id="NavAvailQualifier">
+      <td>ナビゲーション キーの使用可能状況</td>
+      <td>
+        <code>navexposed</code><br/>
+        <code>navhidden</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code navexposed}: ユーザーはナビゲーション キーを使用できます。</li>
+          <li>{@code navhidden}: ナビゲーション キーは使用できません（閉じられた lid の背後になっている場合など）。
+</li>
+        </ul>
+        <p>ユーザーがナビゲーション キーを表示させると、アプリケーションの実行中にこの値が変更されます。
+実行時のアプリケーションに与える影響については、「<a href="runtime-changes.html">実行時の変更の処理</a>」をご覧ください。
+</p>
+        <p>さらに、{@link android.content.res.Configuration#navigationHidden} 設定フィールドもご覧ください。これは、ナビゲーション キーが非表示になっているかどうかを表します。
+</p>
+      </td>
+    </tr>
+    <tr id="NavigationQualifier">
+      <td>タップ以外の主なナビゲーション方法</td>
+      <td>
+        <code>nonav</code><br/>
+        <code>dpad</code><br/>
+        <code>trackball</code><br/>
+        <code>wheel</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nonav}: 端末には、タッチスクリーン以外のナビゲーション機能がありません。
+</li>
+          <li>{@code dpad}: 端末にはナビゲーション用の方向キー（十字キー）があります。</li>
+          <li>{@code trackball}: 端末にはナビゲーション用のトラックボールがあります。</li>
+          <li>{@code wheel}: 端末にはナビゲーション用の方向ホイールがあります（特殊）。</li>
+        </ul>
+        <p>{@link android.content.res.Configuration#navigation} 設定フィールドもご覧ください。これは、利用可能なナビゲーション方法のタイプを表します。
+</p>
+      </td>
+    </tr>
+<!-- DEPRECATED
+    <tr>
+      <td>Screen dimensions</td>
+      <td>Examples:<br/>
+        <code>320x240</code><br/>
+        <code>640x480</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>The larger dimension must be specified first. <strong>This configuration is deprecated
+and should not be used</strong>. Instead use "screen size," "wider/taller screens," and "screen
+orientation" described above.</p>
+      </td>
+    </tr>
+-->
+    <tr id="VersionQualifier">
+      <td>プラットフォーム バージョン（API レベル）</td>
+      <td>例: <br/>
+        <code>v3</code><br/>
+        <code>v4</code><br/>
+        <code>v7</code><br/>
+        など</td>
+      <td>
+        <p>端末がサポートする API レベル。たとえば、<code>v1</code> は API レベル 1（Android 1.0 以降の端末）、<code>v4</code> は API レベル 4（Android 1.6 以降の端末）となります。
+
+これらの値の詳細については、「<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Android API levels</a>」のドキュメントをご覧ください。
+</p>
+      </td>
+    </tr>
+</table>
+
+
+<p class="note"><strong>注:</strong> Android 1.0 以降、いくつかの設定識別子が追加されているため、すべてのバージョンの Android がすべての識別子をサポートしているわけではありません。
+新しい識別子を使用すると、旧式の端末がその識別子を無視できるように、プラットフォーム バージョンの識別子が暗黙的に追加されます。
+たとえば、available-width の識別子は API レベル 13 で新たに追加されたため、<code>w600dp</code> 識別子を使用すると、自動的に <code>v13</code> 識別子が追加されます。
+
+問題を回避するために、常に一連のデフォルト リソースを含めるようにします（識別子のない一連のリソース）。<em></em>
+詳細は、<a href="#Compatibility">リソースとの最適な端末の互換性を提供する</a>セクションをご覧ください。
+
+</p>
+
+
+
+<h3 id="QualifierRules">修飾子の名前のルール</h3>
+
+<p>ここでは、設定修飾子の名前の使用方法に関するルールを説明します。</p>
+
+<ul>
+    <li>リソースの 1 つのセットに複数の修飾子を指定できます。その場合は、ダッシュで区切ります。たとえば、<code>drawable-en-rUS-land</code> は画面が横向きの米国英語の端末に適用されます。
+
+</li>
+    <li>識別子は<a href="#table2">表 2</a> の順番で使用します。次に例を示します。
+
+      <ul>
+        <li>誤: <code>drawable-hdpi-port/</code></li>
+        <li>正: <code>drawable-port-hdpi/</code></li>
+      </ul>
+    </li>
+    <li>代替リソースのディレクトリはネストできません。<code>res/drawable/drawable-en/</code> などは使用できません。
+</li>
+    <li>値は大文字と小文字を区別します。大文字と小文字を区別するファイル システムの問題を回避するために、処理前にリソース コンパイラーがディレクトリ名を小文字に変換します。
+
+読みやすくする場合にのみ、名前に大文字を使用します。</li>
+    <li>それぞれの修飾子タイプに使用できる値は 1 つだけです。たとえば、スペインとフランスの両方に同じドローアブル ファイルを使用する場合も、ディレクトリ名を <code>drawable-rES-rFR/</code> とすることはできません。<em></em>
+
+その代わりに、該当するファイルを含む <code>drawable-rES/</code> と <code>drawable-rFR/</code> という名前の 2 つのリソース ディレクトリが必要になります。ただし、実際のところ、両方の場所で同じファイルを重複させる必要はありません。
+
+代わりに、リソースのエイリアスを作成できます。
+後述の<a href="#AliasResources">エイリアス リソースを作成する</a>をご覧ください。
+</li>
+</ul>
+
+<p>これらの修飾子を名前に持つディレクトリに代替リソースを保存すると、現在の端末設定に基づいて、Android がアプリケーションにリソースを自動的に適用します。
+
+リソースが要求されるたびに、Android は要求されたリソース ファイルを持つ代替リソース ディレクトリを探し、<a href="#BestMatch">最適なリソースを見つけます</a>（後述）。
+
+特定の端末設定に合う代替リソースがない場合、Android は対応するデフォルト リソース（設定識別子を含まない特定のリソースタイプ用の一連のリソース）を使用します。
+
+
+</p>
+
+
+
+<h3 id="AliasResources">エイリアス リソースを作成する</h3>
+
+<p>複数の端末で使用するリソースがある場合（ただし、デフォルト リソースとして提供しない場合）、同じリソースを複数の代替リソース ディレクトリに配置する必要はありません。
+
+その代わりに、（場合によっては）デフォルト リソースのディレクトリに保存したリソースのエイリアスとして機能する代替リソースを作成できます。
+
+</p>
+
+<p class="note"><strong>注:</strong> すべてのリソースに、別のリソースへのエイリアスを作成できるメカニズムが備わっているわけではありません。
+特に、アニメーション、メニュー、未加工、{@code xml/} で指定されていないその他のリソースにはこの機能を使用できません。
+</p>
+
+<p>たとえば、アプリケーション アイコン {@code icon.png} について、ロケールごとに一意のバージョンが必要になるという状況を考えてみます。
+ただし、英語カナダとフランス語カナダの 2 つのロケールでは同じバージョンを使用する必要があります。
+英語カナダとフランス語カナダの両方のリソース ディレクトリに同じ画像をコピーする必要は実際にはありません。
+
+代わりに、両方に使用する画像を {@code icon_ca.png} という名前（{@code icon.png} 以外の名前）で保存し、デフォルトの {@code res/drawable/} ディレクトリに配置します。
+
+次に {@code &lt;bitmap&gt;} 要素を使用して {@code icon_ca.png} リソースを参照する {@code icon.xml} ファイルを {@code
+res/drawable-en-rCA/} と {@code res/drawable-fr-rCA/} に作成します。
+これにより、PNG ファイルを 1 つだけ作成し、それを指す小さな XML ファイルを 2 つ作成するだけで済みます
+（次に、XML ファイルの例を示します）。</p>
+
+
+<h4>ドローアブル</h4>
+
+<p>既存のドローアブルのエイリアスを作成するには、{@code &lt;bitmap&gt;} 要素を使用します。次に例を示します。
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/icon_ca" />
+</pre>
+
+<p>このファイルを {@code icon.xml} として（{@code res/drawable-en-rCA/} などの代替リソース ディレクトリに）保存すると、{@code R.drawable.icon} として参照可能なリソースにコンパイルされますが、実際のところ、これは（{@code res/drawable/} に保存されている）{@code
+R.drawable.icon_ca} リソースのエイリアスです。
+
+</p>
+
+
+<h4>レイアウト</h4>
+
+<p>既存のレイアウトのエイリアスを作成するには、{@code &lt;merge&gt;} にラップされる {@code &lt;include&gt;} 要素を使用します。
+次に例を示します。</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;merge>
+    &lt;include layout="@layout/main_ltr"/>
+&lt;/merge>
+</pre>
+
+<p>このファイルを {@code main.xml} として保存すると、{@code R.layout.main} として参照可能なリソースにコンパイルされますが、実際のところ、これは {@code R.layout.main_ltr} リソースのエイリアスです。
+
+</p>
+
+
+<h4>文字列とその他の単純な値</h4>
+
+<p>既存の文字列のエイリアスを作成するには、単に、目的の文字列のリソース ID を新しい文字列の値として使用します。
+次に例を示します。</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;string name="hello">Hello&lt;/string>
+    &lt;string name="hi">@string/hello&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>{@code R.string.hi} リソースは {@code R.string.hello} のエイリアスになりました。</p>
+
+<p> <a href="{@docRoot}guide/topics/resources/more-resources.html">その他の単純な値</a>も同様に機能します。
+次に色の例を示します。</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;color name="yellow">#f00&lt;/color>
+    &lt;color name="highlight">@color/red&lt;/color>
+&lt;/resources>
+</pre>
+
+
+
+
+<h2 id="Compatibility">リソースとの最適な端末の互換性を提供する</h2>
+
+<p>アプリケーションで複数の端末設定をサポートするには、アプリケーションが使用するそれぞれのタイプのリソースに常にデフォルト リソースを提供することが重要です。
+</p>
+
+<p>たとえば、アプリケーションが複数の言語をサポートする場合は、<a href="#LocaleQualifier">言語と地域の修飾子</a>を<em>持たない</em> {@code
+values/} ディレクトリ（文字列の保存先）を常に用意します。すべての文字列ファイルをすべて言語と地域の修飾子を持つディレクトリに配置してしまうと、自分の文字列がサポートしていない言語に設定された端末でアプリケーションを実行すると、アプリケーションがクラッシュしてしまいます。
+
+ただし、デフォルトの {@code values/} リソースを提供しておけば、アプリケーションは適切に実行されます（ユーザーがその言語を理解できない場合でも。&mdash;クラッシュは避けられます）。
+
+</p>
+
+<p>同様に、画面の向きに基づいた異なるレイアウト リソースを提供する場合も、いずれかの方向をデフォルトに設定する必要があります。
+たとえば、横向きの {@code
+layout-land/} と縦向きの {@code layout-port/} にレイアウト リソースを提供する代わりに、横向きの {@code layout/} と縦向きの {@code layout-port/} のようなリソースをデフォルトとして保存しておきます。
+</p>
+
+<p>予測しなかった設定でアプリケーションが実行されるだけでなく、新しいバージョンの Android では古いバージョンではサポートされない設定修飾子が追加されることもあるため、デフォルト リソースの提供が重要になります。
+
+新しいリソース修飾子を使用するが、古いバージョンの Android とのコードの互換性を保持する場合、古いバージョンの Android でアプリケーションを実行するときにデフォルト リソースが提供されていないと、古いバージョンの Android では新しい修飾子の付いたリソースを使用できないために、アプリケーションがクラッシュします。
+
+
+たとえば、<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
+minSdkVersion}</a> が 4 に設定されている場合に、<a href="#NightQualifier">ナイトモード</a>（API レベル 8 で追加された {@code night} または {@code notnight}）を使用してすべてのドローアブル リソースの修飾子を設定すると、API レベル 4 端末はドローアブル リソースにアクセスできず、クラッシュします。
+この場合、{@code notnight} をデフォルト リソースにする場合、その修飾子を除外することになるため、ドローアブル リソースは {@code drawable/} または {@code drawable-night/} のいずれかになります。
+
+</p>
+
+<p>そこで、端末の最適な互換性を提供するには、アプリケーションを適切に実行するのに必要なリソースに常にデフォルト リソースを提供するようにします。
+次に、設定修飾子を使用して、特定の端末設定向けの代替リソースを作成します。
+</p>
+
+<p>このルールには次の例外があります。アプリケーションの <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> が 4 以上の場合、<a href="#DensityQualifier">画像密度</a>修飾子で代替のドローアブル リソースを提供するときには、デフォルトのドローアブル リソースを提供する必要はありません。<em></em>
+
+デフォルトのドローアブル リソースがない場合でも、Android は代替の画面密度のなかで最適なものを見つけて、必要に応じてビットマップのサイズを変更できます。
+
+ただし、すべてのタイプに最適な操作性を提供するには、密度の 3 つのタイプすべてに代替ドローアブルを提供する必要があります。
+</p>
+
+
+
+<h2 id="BestMatch">Android が最適なリソースを見つける仕組み</h2>
+
+<p>代替を提供するリソースを要求すると、現在の端末設定に応じて Android が実行時に使用する代替リソースを選択します。
+Android が代替リソースを選択する方法説明するために、次のドローアブル ディレクトリを想定します。それぞれに同じ画像の異なるバージョンが入っています。
+
+</p>
+
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+drawable-fr-rCA/
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+
+<p>さらに、次のような端末設定を想定します。</p>
+
+<p style="margin-left:1em;">
+ロケール = <code>en-GB</code> <br/>
+画面の向き = <code>port</code> <br/>
+画面ピクセル密度 = <code>hdpi</code> <br/>
+タッチスクリーン タイプ = <code>notouch</code> <br/>
+主なテキストの入力方法 = <code>12key</code>
+</p>
+
+<p>端末設定を使用可能な代替リソースに比較して、Android は {@code drawable-en-port} からドローアブルを選択します。
+</p>
+
+<p>システムは、次のロジックを使用して、使用するリソースを決定します。
+</p>
+
+
+<div class="figure" style="width:371px">
+<img src="{@docRoot}images/resources/res-selection-flowchart.png" alt="" height="471" />
+<p class="img-caption"><strong>図 2.</strong> Android が最適なリソースを見つける仕組みを示したフローチャート。
+</p>
+</div>
+
+
+<ol>
+  <li>端末設定に矛盾するリソース ファイルを排除します。
+    <p><code>en-GB</code> ロケールに矛盾するため、<code>drawable-fr-rCA/</code> ディレクトリが排除されます。
+</p>
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+<strike>drawable-fr-rCA/</strike>
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+<p class="note"><strong>例外:</strong> 画面ピクセル密度は、矛盾により排除されない修飾子の 1 つです。
+それぞれの画面密度はその時点で最適であると判断されたものであるため、端末の画面密度が hdpi の場合でも、<code>drawable-port-ldpi/</code> は排除されません。
+
+詳細は、「<a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>」のドキュメントをご覧ください。
+</p></li>
+
+  <li>リスト（<a href="#table2">表 2</a>）にある（次に）優先される修飾子を選択します（MCC から順に下がっていきます）。
+ </li>
+  <li>この修飾子を含むリソース ディレクトリがあるかどうかを確認します。  </li>
+    <ul>
+      <li>ない場合は、ステップ 2 に戻り、次の修飾子を調べます（この例では、言語識別子になるまですべて「いいえ」になります）。
+</li>
+      <li>「はい」の場合は、ステップ 4 に進みます。</li>
+    </ul>
+  </li>
+
+  <li>この修飾子を持たないリソース ディレクトリを排除します。この例では、システムによって言語修飾子を含まないすべてのディレクトリが排除されます。
+</li>
+<pre class="classic no-pretty-print">
+<strike>drawable/</strike>
+drawable-en/
+drawable-en-port/
+drawable-en-notouch-12key/
+<strike>drawable-port-ldpi/</strike>
+<strike>drawable-port-notouch-12key/</strike>
+</pre>
+<p class="note"><strong>例外:</strong> 対象となる修飾子が画面ピクセル密度の場合、Android は端末の画像密度に最も近いオプションを選択します。一般的に、Android では小さな元画像を拡大するよりも、大きな元画像を縮小する方法が使用されます。
+
+
+「<a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>」をご覧ください。
+</p>
+  </li>
+
+  <li>残るディレクトリが 1 つになるまで、元に戻ってステップ 2、3、4 を繰り返します。このレイでは、次にマッチングするのが画面の向きの修飾子です。そのため、画面の向きを指定しないリソースは排除されます。
+
+
+<pre class="classic no-pretty-print">
+<strike>drawable-en/</strike>
+drawable-en-port/
+<strike>drawable-en-notouch-12key/</strike>
+</pre>
+<p>{@code drawable-en-port} ディレクトリが残ります。</p>
+  </li>
+</ol>
+
+<p>この手順は要求した各リソースに対して実行されますが、システムはさらにいくつかの最適化を行います。
+たとえば、端末の設定が判明すると、マッチングしない代替リソースが排除されたりします。
+たとえば、設定言語が英語（「en」）の場合、言語修飾子が英語以外に設定されているリソース ディレクトリはチェック対象のリソースのプールに入ることはありません（言語修飾子のないリソース ディレクトリはそのままプールに入ります）。<em></em>
+
+
+</p>
+
+<p>画面サイズ修飾子に基づいてリソースを選択する場合、最適なリソースがない場合、システムは現在の画面よりも小さな画面向けのリソースを使用します（たとえば、必要に応じて大きなサイズの画面が通常サイズの画面のリソースを使用します）。
+
+ただし、使用できるリソースが現在の画面よりも大きなサイズのものしかない場合は、システムはそれらのリソースを<strong>使用せず</strong>、端末設定にあるその他のリソースがないときは、アプリケーションがクラッシュします（たとえば、すべてのリソースに {@code xlarge} 識別子のタグが付いているが、端末は通常サイズの画面である場合）<em></em>
+
+
+
+</p>
+
+<p class="note"><strong>注:</strong> （<a href="#table2">表 2</a> の）上位にある修飾子の方が、端末に正確に一致する修飾子の数よりも重要になります。<em></em>
+たとえば、上のステップ 4 では、<code>drawable-en</code> には一致するパラメータが 1 つしかありませんが（言語）、リストの最後の選択肢には、端末に正確に一致する修飾子が 3 つあります（画面の向き、タッチスクリーン タイプ、入力方法）。
+
+
+ただし、言語はこれらの他の修飾子よりも優先されるため、<code>drawable-port-notouch-12key</code> は排除されます。
+</p>
+
+<p>アプリケーションでのリソースの使用方法については、「<a href="accessing-resources.html">リソースへのアクセス</a>」をご覧ください。</p>
diff --git a/docs/html-intl/intl/ja/guide/topics/resources/runtime-changes.jd b/docs/html-intl/intl/ja/guide/topics/resources/runtime-changes.jd
new file mode 100644
index 0000000..9bce95a
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/resources/runtime-changes.jd
@@ -0,0 +1,281 @@
+page.title=実行時の変更の処理
+page.tags=アクティビティ,ライフサイクル
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>本書の内容</h2>
+  <ol>
+    <li><a href="#RetainingAnObject">構成の変更中にオブジェクトを保持する</a></li>
+    <li><a href="#HandlingTheChange">構成の変更を自分で処理する</a>
+  </ol>
+
+  <h2>関連ドキュメント</h2>
+  <ol>
+    <li><a href="providing-resources.html">リソースの提供</a></li>
+    <li><a href="accessing-resources.html">リソースへのアクセス</a></li>
+    <li><a href="http://android-developers.blogspot.com/2009/02/faster-screen-orientation-change.html">Faster
+        Screen Orientation Change</a></li>
+  </ol>
+</div>
+</div>
+
+<p>端末の構成の中には、実行時に変化するものがあります（画面の向き、キーボードの可用性、言語など）。
+そのような変更が発生すると、Android は実行中の {@link android.app.Activity} を再起動します（{@link android.app.Activity#onDestroy()} が呼び出され、その後に{@link
+android.app.Activity#onCreate(Bundle) onCreate()} が呼び出されます）。
+
+再起動の動作は、新しい端末構成に一致する代替リソースを使用してアプリケーションを自動的にリロードすることで、アプリケーションを新しい構成に適応させることを目的としています。
+
+</p>
+
+<p>再起動を適切に処理するには、アクティビティが通常の<a href="{@docRoot}guide/components/activities.html#Lifecycle">アクティビティのライフサイクル</a>を通じて事前の状態を格納することが重要です。その場合、アプリケーションの状態に関するデータを保存できるように、Android はアクティビティを破棄する前に {@link android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} を呼び出します。
+
+
+
+その後、{@link android.app.Activity#onCreate(Bundle) onCreate()} か {@link
+android.app.Activity#onRestoreInstanceState(Bundle) onRestoreInstanceState()} の際に状態を格納できます。
+</p>
+
+<p>アプリケーション自体がそのままの状態で再起動することをテストするには、アプリケーションでさまざまなタスクを実行中に、構成の変更（画面の向きの変更など）を呼び出す必要があります。
+
+構成の変更を処理したり、ユーザーが電話を着信し、アプリケーション プロセスが破棄されるほど時間が経過してからアプリケーションに戻ったりするような場合には、ユーザーデータや状態を失うことなくいつでもアプリケーションを再起動できるようにする必要があります。
+
+
+アクティビティの状態を格納する方法については、「<a href="{@docRoot}guide/components/activities.html#Lifecycle">アクティビティのライフサイクル</a>」をご覧ください。</p>
+
+<p>ただし、場合によっては、アプリケーションを再起動すると、大量のデータの復元にコストがかかり、操作性が悪くなることがあります。
+そのような場合、次の 2 つの方法で処理できます。
+</p>
+
+<ol type="a">
+  <li><a href="#RetainingAnObject">構成の変更中にオブジェクトを保持する</a>
+  <p>構成の変更時にアクティビティを再起動できますが、ステートフル オブジェクトがアクティビティの新しいインスタンスに移動します。
+</p>
+
+  </li>
+  <li><a href="#HandlingTheChange">構成の変更を自分で処理する</a>
+  <p>特定の構成変更の際に、システムがアクティビティを再起動しないようにしますが、必要に応じてアクティビティをアップデートできるように、構成が変更された場合には、コールバックを受け取ります。
+
+</p>
+  </li>
+</ol>
+
+
+<h2 id="RetainingAnObject">構成の変更中にオブジェクトを保持する</h2>
+
+<p>アクティビティの再起動で大量のデータの復元、ネットワーク接続の再構築、他の負荷のかかる操作の実行が必要になる場合、構成変更のために完全な再起動を実行すると、操作性が悪くなってしまうことがあります。
+
+さらに、システムの {@link
+android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} コールバックによって保存される {@link android.os.Bundle} を使用して、アクティビティの状態を完全に復元できない場合もあります。&mdash;大きなオブジェクト（ビットマップなど）を扱うためのものではなく、内部のデータをシリアル化してから逆シリアル化を行うため、多くのメモリを消費することになり、構成の変更に時間がかかってしまいます。
+
+
+そのような場合、構成の変更によるアクティビティの再起動の際に、{@link
+android.app.Fragment} を保持することで、再初期化の負担を軽減できます。
+このフラグメントには、保持しておきたいステートフル オブジェクトへの参照を含めることができます。
+</p>
+
+<p>構成変更により Android システムがアクティビティをシャットダウンするとき、保持するためのマークを設定しておくと、アクティビティのフラグメントが破棄されません。
+ステートフル オブジェクトを保持するために、アクティビティにこのようなフラグメントを追加しておくことができます。
+</p>
+
+<p>実行時の構成変更の際に、フラグメントにステートフル オブジェクトを保持するには:</p>
+
+<ol>
+  <li>{@link android.app.Fragment} クラスを拡張し、ステートフル オブジェクトへの参照を宣言します。
+</li>
+  <li>フラグメントを作成するときに、{@link android.app.Fragment#setRetainInstance(boolean)} を呼び出します。
+      </li>
+  <li>フラグメントをアクティビティに追加します。</li>
+  <li>アクティビティの再起動時にフラグメントを取得するには、{@link android.app.FragmentManager} を使用します。
+</li>
+</ol>
+
+<p>次は、フラグメントの定義の例です。</p>
+
+<pre>
+public class RetainedFragment extends Fragment {
+
+    // data object we want to retain
+    private MyDataObject data;
+
+    // this method is only called once for this fragment
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // retain this fragment
+        setRetainInstance(true);
+    }
+
+    public void setData(MyDataObject data) {
+        this.data = data;
+    }
+
+    public MyDataObject getData() {
+        return data;
+    }
+}
+</pre>
+
+<p class="caution"><strong>警告:</strong> オブジェクトの格納が可能な間は、{@link
+android.graphics.drawable.Drawable}、{@link android.widget.Adapter}、{@link android.view.View}、さらには {@link android.content.Context} に関連付けられているその他のオブジェクトのように、{@link android.app.Activity} に結び付いたオブジェクトを渡さないようにしてください。
+
+オブジェクトを渡すと、元のアクティビティ インスタンスのビューやリソースがすべて漏えいしてしまいます
+（リソースが漏えいすると、アプリケーションはリソースを保持しているがガーベジコレクションを実行できず、大量のメモリが失われてしまうことがあります）。
+
+</p>
+
+<p>次に、{@link android.app.FragmentManager} を使用して、フラグメントをアクティビティに追加します。実行時に構成を変更する際にアクティビティを再び起動すると、フラグメントからデータ オブジェクトを取得できます。
+
+次は、アクティビティの定義の例です。</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    private RetainedFragment dataFragment;
+
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+
+        // find the retained fragment on activity restarts
+        FragmentManager fm = getFragmentManager();
+        dataFragment = (DataFragment) fm.findFragmentByTag(“data”);
+
+        // create the fragment and data the first time
+        if (dataFragment == null) {
+            // add the fragment
+            dataFragment = new DataFragment();
+            fm.beginTransaction().add(dataFragment, “data”).commit();
+            // load the data from the web
+            dataFragment.setData(loadMyData());
+        }
+
+        // the data is available in dataFragment.getData()
+        ...
+    }
+
+    &#64;Override
+    public void onDestroy() {
+        super.onDestroy();
+        // store the data in the fragment
+        dataFragment.setData(collectMyLoadedData());
+    }
+}
+</pre>
+
+<p>この例では、{@link android.app.Activity#onCreate(Bundle) onCreate()} がフラグメントを追加するか、フラグメントへの参照を復元します。さらに、{@link android.app.Activity#onCreate(Bundle) onCreate()} がステートフル オブジェクトをフラグメント インスタンスの内部に格納し、{@link android.app.Activity#onDestroy() onDestroy()} が保持しているフラグメント インスタンス内部のステートフル オブジェクトを更新します。
+
+
+
+</p>
+
+
+
+
+
+<h2 id="HandlingTheChange">構成の変更を自分で処理する</h2>
+
+<p>アプリケーションに特定の構成の変更の際にリソースを更新する必要がなく、パフォーマンスの制限によりアクティビティの再起動を回避する必要がある場合は、構成の変更をアクティビティ自身が処理することを宣言します。そうすることで、システムによってアクティビティが再起動されなくなります。
+<em></em>
+
+</p>
+
+<p class="note"><strong>注:</strong> 構成の変更を自分で処理すると、変更がシステムによって自動的に適用されることがないため、代替リソースの使用が非常に難しくなります。
+
+この手法は、構成の変更による再起動を回避する際の最後の手段として検討する手法です。ほとんどの場合、アプリケーションでの使用は推奨されません。
+</p>
+
+<p>アクティビティで構成の変更を処理することを宣言するには、マニフェスト ファイルの該当する <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 要素を編集し、処理する構成を表す値とともに <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> 属性を配置します。
+
+使用可能な値は、<a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> 属性のドキュメントに一覧が記載されています（一般的には、画面の向きを変更した場合の再起動を回避するには {@code "orientation"} の値を、キーボードの可用性を変更した場合の再起動を回避するには {@code "keyboardHidden"} の値を使用します）。
+
+パイプ記号の {@code |} 文字を使用して区切ることで、属性内に複数の構成値を宣言できます。
+</p>
+
+<p>たとえば、次のマニフェスト コードでは、画面の向きとキーボードの可用性の変更の両方を処理するアクティビティを宣言しています。
+</p>
+
+<pre>
+&lt;activity android:name=".MyActivity"
+          android:configChanges="orientation|keyboardHidden"
+          android:label="@string/app_name">
+</pre>
+
+<p>これで、これらのいずれかの構成が変更された場合でも、{@code MyActivity} が再起動することはなくなりました。代わりに、{@code MyActivity} が {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} への呼び出しを取得します。
+このメソッドには、新しい端末構成を指定する {@link android.content.res.Configuration} オブジェクトが渡されます。
+
+{@link android.content.res.Configuration} のフィールドを読み込むことで新しい構成を判断し、インターフェースに使用するリソースを更新して適切に変更できます。
+
+このメソッドが呼び出されると、アクティビティの {@link android.content.res.Resources} オブジェクトが更新され、新しい構成に基づいたリソースを返します。それにより、システムがアクティビティを再起動しなくても、UI の要素を簡単にリセットできます。
+
+
+</p>
+
+<p class="caution"><strong>警告:</strong> Android 3.2（API レベル 13）以降では、端末の画面の向きを縦から横に切り替えると、<strong>「画面サイズ」も変更されます</strong>。
+
+そのため、API レベル 13 以降で開発を行う場合（<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> 属性と <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> 属性により宣言）、画面の向きによる実行時の再起動を回避するには、{@code "screenSize"} 値と一緒に {@code
+"orientation"} 値を使用する必要があります。
+
+つまり、{@code
+android:configChanges="orientation|screenSize"} を宣言する必要があります。ただし、アプリケーションのターゲットが API レベル 12 以前の場合は、常にアクティビティ自身がこの構成の変更を処理します（Android 3.2 以降の端末で実行している場合でも、この構成の変更によりアクティビティが再起動されることはありません）。
+
+</p>
+
+<p>たとえば、次の {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} の実装により現在の端末の画面の向きがチェックされます。
+</p>
+
+<pre>
+&#64;Override
+public void onConfigurationChanged(Configuration newConfig) {
+    super.onConfigurationChanged(newConfig);
+
+    // Checks the orientation of the screen
+    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
+        Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
+    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
+        Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
+    }
+}
+</pre>
+
+<p>{@link android.content.res.Configuration} オブジェクトは、変更された構成を除く、現在のすべての構成を表します。
+ほとんどの場合、構成の変更内容を正確に把握する必要はなく、代替の構成を提供するすべてのリソースを処理中の構成に割り当て直します。
+
+たとえば、現在は {@link
+android.content.res.Resources} オブジェクトが更新されたため、任意の {@link android.widget.ImageView} を {@link android.widget.ImageView#setImageResource(int)
+setImageResource()} でリセットでき、新しい構成には最適なリソースが使用されます（「<a href="providing-resources.html#AlternateResources">リソースの提供</a>」をご覧ください）。
+
+</p>
+
+<p>{@link
+android.content.res.Configuration} フィールドの値は、{@link android.content.res.Configuration} クラスの特定の定数に一致する整数であることにご注意ください。
+それぞれのフィールドで使用する定数に関するドキュメントについては、{@link
+android.content.res.Configuration} リファレンスの該当するフィールドをご覧ください。
+</p>
+
+<p class="note"><strong>メモ:</strong> 構成の変更をアクティビティで処理することを宣言すると、代替を提供するすべての要素をリセットする操作が必要になります。
+画面の向きの変更を処理するアクティビティを宣言しており、縦向きと横向きで切り替わる画像がある場合、{@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} の際にそれぞれの要素に各リソースを割り当て直す必要があります。
+
+</p>
+
+<p>これらの構成の変更に基づいてアプリケーションを更新する必要がない場合は、代わりに <em></em>{@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} を実装できません。
+このような場合、構成の変更前に使用していたすべてのリソースがそのまま使用され、アクティビティの再起動を回避した状態となります。
+
+ただし、アプリケーションはいつでもシャットダウンして以前のままの状態で再起動できる状態にしておく必要があるため、通常のアクティビティのライフサイクルでは、状態を保持しない手段としてこの手法を使用しないようにします。
+
+それは、アプリケーションの再起動を回避できない他の構成の変更があるだけでなく、ユーザーがアプリケーションを離れ、ユーザーがアプリケーションに戻る前に破棄されてしまうようなイベントを処理する必要があるためです。
+
+
+</p>
+
+<p>アクティビティで処理できる構成の変更についての詳細は、<a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> のドキュメントと{@link android.content.res.Configuration} クラスをご覧ください。
+</p>
diff --git a/docs/html-intl/intl/ja/guide/topics/ui/controls.jd b/docs/html-intl/intl/ja/guide/topics/ui/controls.jd
new file mode 100644
index 0000000..0bc2063
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/ui/controls.jd
@@ -0,0 +1,90 @@
+page.title=入力コントロール
+parent.title=ユーザー インターフェース
+parent.link=index.html
+@jd:body
+
+<div class="figure" style="margin:0">
+  <img src="{@docRoot}images/ui/ui-controls.png" alt="" style="margin:0" />
+</div>
+
+<p>入力コントロールは、アプリのユーザー インターフェースのインタラクティブなコンポーネントです。Android では、ボタン、テキスト フィールド、シークバー、チェックボックス、ズームボタン、トグルボタンなど UI で使用できるさまざまなコントロールが提供されています。
+
+</p>
+
+<p>UI に入力コントロールを追加することは、<a href="{@docRoot}guide/topics/ui/declaring-layout.html">XML レイアウト</a>に XML 要素を追加するのと同じくらい簡単です。テキスト フィールドとボタンを含むレイアウトの例を次に示します。
+</p>
+
+<pre style="clear:right">
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+    android:orientation="horizontal">
+    &lt;EditText android:id="@+id/edit_message"
+        android:layout_weight="1"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:hint="@string/edit_message" />
+    &lt;Button android:id="@+id/button_send"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/button_send"
+        android:onClick="sendMessage" />
+&lt;/LinearLayout>
+</pre>
+
+<p>各入力コントロールでは、特定の一連の入力イベントがサポートされているため、ユーザーがテキストを入力したり、ボタンをタップしたりするときなどに、イベントを処理できます。
+</p>
+
+
+<h2 id="CommonControls">コモン コントロール</h2>
+<p>アプリで使用できるコモン コントロールには、次のようなものがあります。それぞれの使い方の詳細については、各リンクをご覧ください。
+</p>
+
+<p class="note"><strong>注:</strong> Android では、ここにリストされている以外にもいくつかコントロールが提供されています。
+他のコントロールについては、{@link android.widget} パッケージをご確認ください。アプリで、特定の種類の入力コントロールを必要とする場合、独自の <a href="{@docRoot}guide/topics/ui/custom-components.html">カスタム コンポーネント</a> をビルドできます。
+</p>
+
+<table>
+    <tr>
+        <th scope="col">コントロール タイプ</th>
+        <th scope="col">説明</th>
+	<th scope="col">関連クラス</th>
+    </tr>
+    <tr>
+        <td><a href="controls/button.html">ボタン</a></td>
+        <td>ユーザーがアクションを実行するために、押したり、クリックしたりできるプッシュボタン。</td>
+	<td>{@link android.widget.Button Button} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/text.html">テキスト フィールド</a></td>
+        <td>編集できるテキスト フィールド。<code>AutoCompleteTextView</code> ウィジェットを使って、オートコンプリート候補を表示するテキスト入力ウィジェットを作成できます。</td>
+	<td>{@link android.widget.EditText EditText}、{@link android.widget.AutoCompleteTextView}</td>
+    </tr>
+    <tr>
+        <td><a href="controls/checkbox.html">チェックボックス</a></td>
+        <td>ユーザーが切り替えることができる、オン、オフスイッチ。相互に排他的ではない選択可能なオプションのグループをユーザーに表示するときは、チェックボックスを使ってください。</td>
+	<td>{@link android.widget.CheckBox CheckBox} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/radiobutton.html">ラジオボタン</a></td>
+        <td>グループで選択できるオプションは 1 つのみであることを除き、チェックボックスと同様です。</td>
+	<td>{@link android.widget.RadioGroup RadioGroup} 
+	<br>{@link android.widget.RadioButton RadioButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/togglebutton.html" style="white-space:nowrap">トグルボタン</a></td>
+        <td>ライト インジケーター付きの、オン、オフボタン。</td>
+	<td>{@link android.widget.ToggleButton ToggleButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/spinner.html">スピナー</a></td>
+        <td>ユーザーが一連の値から 1 つを選択できるドロップダウン リスト。</td>
+	<td>{@link android.widget.Spinner Spinner} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/pickers.html">ピッカー</a></td>
+        <td>上下のボタンを使うか、スワイプして、1 つの値を選択するためのダイアログ。日付（月、日、年）の値を入力するには <code>DatePicker</code>code&gt; ウィジェットを使い、時刻（時間、分、午前または午後）の値を入力するには <code>TimePicker</code> ウィジェットを使います。これにより、ユーザーのロケールが自動的に書式設定されます。</td>
+	<td>{@link android.widget.DatePicker}、{@link android.widget.TimePicker}</td>
+    </tr>
+</table>
diff --git a/docs/html-intl/intl/ja/guide/topics/ui/declaring-layout.jd b/docs/html-intl/intl/ja/guide/topics/ui/declaring-layout.jd
new file mode 100644
index 0000000..b0e9c03
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/ui/declaring-layout.jd
@@ -0,0 +1,492 @@
+page.title=レイアウト
+page.tags=view,viewgroup
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本書の内容</h2>
+<ol>
+  <li><a href="#write">XML の記述</a></li>
+  <li><a href="#load">XML リソースの読み込み</a></li>
+  <li><a href="#attributes">属性</a>
+    <ol>
+      <li><a href="#id">ID</a></li>
+      <li><a href="#layout-params">レイアウト パラメータ</a></li>
+    </ol>
+  </li>
+  <li><a href="#Position">レイアウトの位置</a></li>
+  <li><a href="#SizePaddingMargins">サイズ、パディング、マージン</a></li>
+  <li><a href="#CommonLayouts">共通レイアウト</a></li>
+  <li><a href="#AdapterViews">アダプタを使ったレイアウトをビルドする</a>
+    <ol>
+      <li><a href="#FillingTheLayout">データを使ったアダプタビューを書き込む</a></li>
+      <li><a href="#HandlingUserSelections">クリック イベントを処理する</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>キークラス</h2>
+  <ol>
+    <li>{@link android.view.View}</li>
+    <li>{@link android.view.ViewGroup}</li>
+    <li>{@link android.view.ViewGroup.LayoutParams}</li>
+  </ol>
+
+  <h2>関連ドキュメント</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/firstapp/building-ui.html">簡単なユーザー インターフェースをビルドする</a>
+</li> </div>
+</div>
+
+<p>レイアウトでは、<a href="{@docRoot}guide/components/activities.html">アクティビティ</a>や<a href="{@docRoot}guide/topics/appwidgets/index.html">アプリ ウィジェット</a>の UI のような、ユーザー インターフェースの視覚的構造が定義されます。次の 2 つの方法でレイアウトを宣言できます。
+</p>
+<ul>
+<li><strong>XML で UI 要素を宣言する</strong>。Android では、ウィジェットやレイアウトなどの View クラスとサブクラスに対応する単純な XML ボキャブラリが提供されます。
+</li>
+<li><strong>実行時にレイアウト要素のインスタンスを作成する</strong>。アプリケーションで View と ViewGroup オブジェクトを作成できます。また、プログラムを使ってプロパティを操作することもできます。
+ </li>
+</ul>
+
+<p>Android フレームワークでは、アプリケーション UI の宣言と管理に、これらのいずれかのメソッドまたは両方のメソッドを柔軟に使うことができます。たとえば、レイアウトに表示されるスクリーン要素やそのプロパティを含む、アプリケーションのデフォルト レイアウトを XML で宣言できます。スクリーン オブジェクトの状態を変更するコードをアプリケーション内で追加できます（実行時の XML での宣言を含む）。 </p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <ul>
+  <li><a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin for Eclipse</a> では、XML ファイルを開いて [<strong>レイアウト</strong>] タブを選択すると、XML のレイアウト プレビューが提供されます。
+
+</li>
+  <li>レイアウトのデバッグに、<a href="{@docRoot}tools/debugging/debugging-ui.html#hierarchyViewer">Hierarchy Viewer</a> ツールを使うこともできます。このツールでは、レイアウト プロパティ値の表示、パディングやマージンのインジケーターを使ったワイヤーフレームの描画、エミュレータや端末でデバッグする間のレンダリングされた全画面表示が提供されます。
+
+
+
+</li>
+  <li><a href="{@docRoot}tools/debugging/debugging-ui.html#layoutopt">layoutopt</a> ツールを使うと、効率性の低下やその他の問題について、レイアウトや階層を素早く解析できます。
+</li>
+</div>
+</div>
+
+<p>XML で UI を宣言する利点は、動作を制御するコードとアプリケーションの表示をうまく切り離すことができる点です。UI の記述は、アプリケーション コード外にあるため、ソースコードの変更や再コンパイルをすることなく、記述を修正したり改良したりできます。たとえば、異なる画面の向き、端末の画面サイズ、言語に対して XML レイアウトを作成できます。XML でレイアウトを宣言すると、UI の構造を簡単に視覚化できるため、問題のデバッグも簡単です。そのため、本書では XML でレイアウトを宣言する方法を中心に説明しています。実行時に View オブジェクトのインスタンスを作成することに関心がある場合は、{@link android.view.ViewGroup} と {@link android.view.View} クラス参照をご覧ください。
+
+</p>
+
+<p>通常、UI 要素を宣言する XML ボキャブラリは、クラスとメソッドの構造と命名に厳密に従っており、要素名はクラス名に、属性名はメソッドに対応しています。実際、ほとんどの場合、直接的に対応しているため、クラスメソッドに対応する XML 属性を推測したり、与えられた XML 要素に対応するクラスを推測したりできます。ただし、すべてのボキャブラリが同一とは限りません。場合によっては、命名が若干異なります。たとえば、EditText 要素には、<code>EditText.setText()</code> に対応する <code>text</code> 属性があります。
+
+ </p>
+
+<p class="note"><strong>ヒント:</strong> 異なるレイアウト タイプの詳細については、<a href="{@docRoot}guide/topics/ui/layout-objects.html">共通レイアウト オブジェクト</a>をご覧ください。
+また、<a href="{@docRoot}resources/tutorials/views/index.html">Hello Views</a> のチュートリアル ガイドには、さまざまなレイアウトのビルドに関するチュートリアルがあります。
+</p>
+
+<h2 id="write">XML の記述</h2>
+
+<p>Android の XML ボキャブラリを使って、HTML でウェブページを作成するのと同じ方法で（ネストした一連の要素を使って）、UI レイアウトとそれに含まれる画面要素を素早く設計できます。 </p>
+
+<p>各レイアウト ファイルには、必ず 1 つのルート要素が含まれていて、そのルート要素は View または ViewGroup オブジェクトでなくてはなりません。ルート要素を定義すれば、追加のレイアウト オブジェクトやウィジェットを子の要素として追加して、レイアウトを定義するビュー階層を少しずつビルドできます。{@link android.widget.TextView} と {@link android.widget.Button} を保持するために、縦方向の {@link android.widget.LinearLayout} を使用する XML レイアウトの例を次に示します。
+</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="Hello, I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="Hello, I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>XML でレイアウトを宣言した後、そのファイルを Android プロジェクトの <code>res/layout/</code> ディレクトリ内で <code>.xml</code> 拡張子を付けて保存して、正しくコンパイルされるようにします。
+ </p>
+
+<p>レイアウト XML ファイルの構文の詳細については、「<a href="{@docRoot}guide/topics/resources/layout-resource.html">Layout Resources</a>」のドキュメントをご覧ください。</p>
+
+<h2 id="load">XML リソースの読み込み</h2>
+
+<p>アプリケーションをコンパイルすると、各 XML レイアウト ファイルは {@link android.view.View} リソースにコンパイルされます。
+{@link android.app.Activity#onCreate(android.os.Bundle) Activity.onCreate()} コールバックの実装で、アプリケーション コードからレイアウト リソースを読み込んでください。これを行うには、<code>{@link android.app.Activity#setContentView(int) setContentView()}</code> を呼び出し、<code>R.layout.<em>layout_file_name</em></code> の形式でレイアウト リソースへの参照を渡します。たとえば、XML レイアウトが <code>main_layout.xml</code> として保存される場合、次のようにしてアクティビティに読み込みます。
+
+
+
+
+
+</p>
+<pre>
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.main_layout);
+}
+</pre>
+
+<p>アクティビティの <code>onCreate()</code> コールバック メソッドは、アクティビティが起動されるときに、Android フレームワークによって呼び出されます（ライフサイクルに関する説明については、「<a href="{@docRoot}guide/components/activities.html#Lifecycle">アクティビティ</a>」のドキュメントをご覧ください）。
+
+
+</p>
+
+
+<h2 id="attributes">属性</h2>
+
+<p>すべての View と ViewGroup オブジェクトでは、独自のさまざまな XML 属性がサポートされています。一部の属性は、View オブジェクト特有のものですが（たとえば TextView では <code>textSize</code> 属性がサポートされています）、これらの属性はこのクラスを拡張可能な View オブジェクトによっても継承されます。一部は、ルート View クラスから継承されるため、すべての View オブジェクトに共通します（<code>id</code> 属性のような）。
+
+
+
+その他の属性は「レイアウト パラメータ」として考慮され、オブジェクトの親である ViewGroup オブジェクトとして定義された、View オブジェクトの特定のレイアウト方向を記述する属性となります。
+
+</p>
+
+<h3 id="id">ID</h3>
+
+<p>ツリー内で View を一意に識別するために、すべての View オブジェクトには、それに関連付けられた整数の ID があることがあります。アプリケーションがコンパイルされると、この ID は整数として参照されますが、一般的にその ID は <code>id</code> 属性で文字列としてレイアウト XML ファイルに割り当てられます。これは、すべての View オブジェクトに共通の XML 属性で（{@link android.view.View} クラスで定義）、非常に頻繁に使用されます。XML タグ内の ID の構文を次に示します。
+
+
+
+
+</p>
+<pre>android:id="&#64;+id/my_button"</pre>
+
+<p>文字列の先頭にあるアットマーク（@）は、その XML パーサーが ID の残りの文字列をパースして展開し、それを ID リソースとして識別する必要があることを示します。
+プラス記号（+）は、それが新しいリソース名で、作成してリソースに追加する（<code>R.java</code> ファイル内で）必要があることを意味しています。
+Android フレームワークによって提供されるその他のさまざまな ID リソースがあります。
+Android リソース ID を参照するときは、プラス記号を使う必要はありませんが、次のように <code>android</code> パッケージ名前空間を追加する必要があります。
+</p>
+<pre>android:id="&#64;android:id/empty"</pre>
+<p><code>android</code> パッケージ名前空間付きの場合、ローカルのリソースクラスからではなく <code>android.R</code> リソースクラスから ID を参照するようになります。
+</p>
+
+<p>ビューを作成してアプリケーションからそれを参照するには、次のような共通のパターンがあります。</p>
+<ol>
+  <li>レイアウト ファイルでビューとウィジェットを定義して、一意の ID を割り当てる。
+<pre>
+&lt;Button android:id="&#64;+id/my_button"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="&#64;string/my_button_text"/>
+</pre>
+  </li>
+  <li>次に、View オブジェクトのインスタンスを作成し、それを次のようにレイアウトから取得する（通常は、<code>{@link android.app.Activity#onCreate(Bundle) onCreate()}</code> メソッド内で）。
+
+<pre>
+Button myButton = (Button) findViewById(R.id.my_button);
+</pre>
+  </li>
+</ol>
+<p>View オブジェクトの ID を定義することは、{@link android.widget.RelativeLayout} を作成するときに重要になります。相対レイアウトでは、兄弟ビューは一意の ID で参照される別の兄弟ビューに相対するレイアウトを定義できます。
+
+</p>
+<p>ツリー全体で ID が一意である必要はありませんが、探しているツリーの一部では、一意である必要があります。ほとんどの場合、それはツリー全体になりますが、可能な時に完全に一意になるようにすることが最善です。
+
+</p>
+
+
+<h3 id="layout-params">レイアウト パラメータ</h3>
+
+<p><code>layout_<em>something</em></code> という名前の XML レイアウト属性では、含まれている ViewGroup に適した View に対するレイアウト パラメータが定義されます。
+</p>
+
+<p>すべての ViewGroup クラスでは、{@link
+android.view.ViewGroup.LayoutParams} を拡張するネストされたクラスが実装されます。このサブクラスには、各子ビューのサイズと位置を ViewGroup に合うように定義するプロパティ タイプが含まれています。
+
+図 1 にあるように、親 ViewGroup によって、子 ViewGroup を含む、各子ビューのレイアウト パラメータが定義されます。
+</p>
+
+<img src="{@docRoot}images/layoutparams.png" alt="" />
+<p class="img-caption"><strong>図 1.</strong> 各ビューに関連付けられたレイアウトのパラメータを含むビュー階層の視覚化。
+</p>
+
+<p>すべての LayoutParams サブクラスには、設定値に独自の構文があります。
+それぞれの子の要素では、その親に適した LayoutParams が定義される必要がありますが、自分の子に対して異なる LayoutParams を定義することもできます。
+ </p>
+
+<p>すべての ViewGroup には、幅と高さ（<code>layout_width</code> と <code>layout_height</code>）が含まれていて、各ビューでそれが定義されている必要があります。
+多くの LayoutParams には、省略可能なマージンと境界線も含まれています。
+ <p>
+
+<p>必要になる頻度は少ない可能性はありますが、幅と高さを正確なサイズで指定することもできます。
+ほとんどの場合は、次の定数のいずれかを使って幅や高さを設定します。
+ </p>
+
+<ul>
+  <li><var>wrap_content</var> では、ビューがそのコンテンツに必要な寸法に合わせられます。
+</li>
+  <li><var>match_parent</var> （API レベル 8 以前は <var>fill_parent</var> ）では、ビューが親 ViewGroup で許容される最大サイズで表示されます。
+</li>
+</ul>
+
+<p>通常、ピクセルなどの絶対単位でレイアウトの幅と高さを指定することは推奨されません。
+
+密度非依存ピクセル単位（<var>dp</var>）、 <var>wrap_content</var>、
+<var>match_parent</var>などの相対測定を使う方が賢明です。そうすることで、さまざまな端末の画面サイズでアプリケーションが正しく表示されるようになります。使用可能な測定タイプは、「<a href="{@docRoot}guide/topics/resources/available-resources.html#dimension">使用可能なリソース</a>」のドキュメントで定義されています。
+
+
+
+</p>
+
+
+<h2 id="Position">レイアウトの位置</h2>
+   <p>
+   ビューの形状は、矩形です。ビューには、<em>左</em>と<em>上</em>の座標ペアで表される位置と、幅と高さで表される 2 次元があります。
+
+位置と寸法の単位はピクセルです。
+
+   </p>
+
+   <p>
+   {@link android.view.View#getLeft()} と {@link android.view.View#getTop()} メソッドを呼び出してビューの位置を取得できます。
+前者では、左またはビューを表す矩形の X 座標が返されます。
+後者では、上またはビューを表す矩形の Y 座標が返されます。
+これらのメソッドでは、両方とも親に相対するビューの位置が返されます。
+たとえば、<code>getLeft()</code> で 20 が返される場合、そのビューはその直属の親の左端から右に 20 ピクセルの位置にあることを意味します。
+
+
+   </p>
+
+   <p>
+   他にも、{@link android.view.View#getRight()} や {@link android.view.View#getBottom()} といった不要な計算を回避するさまざまな便利なメソッドが提供されています。
+
+   これらのメソッドでは、ビューを表す矩形の右端と下端の座標が返されます。
+たとえば、{@link android.view.View#getRight()} を呼び出すことは、<code>getLeft() + getWidth()</code> の計算と同様です。
+
+   </p>
+
+
+<h2 id="SizePaddingMargins">サイズ、パディング、マージン</h2>
+   <p>
+   ビューのサイズは、幅と高さで示します。実際に、ビューには幅と高さ 2 つの値がペアとして保持されています。
+
+   </p>
+
+   <p>
+   最初のペアは、<em>測定された幅</em>と<em>測定された高さ</em>と呼ばれます。
+これらの寸法で、その親内でのビューの大きさが定義されます。
+測定された寸法は、{@link android.view.View#getMeasuredWidth()} と {@link android.view.View#getMeasuredHeight()} を呼び出して取得できます。
+
+
+   </p>
+
+   <p>
+   2 番目のペアは、単に<em>幅</em>と<em>高さ</em>と呼ばれたり、<em>描画する幅</em>と<em>描画する高さ</em>と呼ばれたりします。
+これらの寸法は、描画時とレイアウト後に、画面上のビューの実サイズを定義するものです。
+
+これらの値は、測定された幅や高さと異なる値にすることもできますが、必須ではありません。
+幅と高さは、{@link android.view.View#getWidth()} と {@link android.view.View#getHeight()} を呼び出して取得できます。
+
+   </p>
+
+   <p>
+   その寸法を測るために、ビューではパディングも考慮されます。パディングは、ビューの上下左右に対し、ピクセルで記述されます。
+
+   パディングを使って、特定のピクセル値でビュー コンテンツのオフセットを指定できます。
+たとえば、左側のパディングが 2 の場合は、左端から 2 ピクセル右にビューのコンテンツが寄せられます。
+パディングは {@link android.view.View#setPadding(int, int, int, int)} メソッドを使って設定でき、{@link android.view.View#getPaddingLeft()}、{@link android.view.View#getPaddingTop()}、{@link android.view.View#getPaddingRight()}、{@link android.view.View#getPaddingBottom()} を呼び出してクエリできます。
+
+
+
+   </p>
+
+   <p>
+   ビューではパディングを定義できますが、マージンについてはサポートされていません。
+ただし、ViewGroup ではそのようなサポートが提供されています。詳細については、{@link android.view.ViewGroup} と {@link android.view.ViewGroup.MarginLayoutParams} をご覧ください。
+
+
+   </p>
+
+   <p>寸法の詳細については、<a href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">寸法の値</a>をご覧ください。
+
+   </p>
+
+
+
+
+
+
+<style type="text/css">
+div.layout {
+  float:left;
+  width:200px;
+  margin:0 0 20px 20px;
+}
+div.layout.first {
+  margin-left:0;
+  clear:left;
+}
+</style>
+
+
+
+
+<h2 id="CommonLayouts">共通レイアウト</h2>
+
+<p>{@link android.view.ViewGroup} クラスの各サブクラスでは、ビュー内でネストするビューを表示する一意の方法が提供されます。
+Android プラットフォームにビルドされる共通のレイアウト タイプの一部を以下に示します。
+</p>
+
+<p class="note"><strong>注:</strong> 別のレイアウト内で 1 つ以上のレイアウトをネストして UI を設計できますが、レイアウトの階層はできる限り浅くしておくようにしてください。
+
+ネストが浅いレイアウトの場合、レイアウトの描画がより速くなります。深いビュー階層より、ワイドなビュー階層の方がより良いと言えます。
+</p>
+
+<!--
+<h2 id="framelayout">FrameLayout</h2>
+<p>{@link android.widget.FrameLayout FrameLayout} is the simplest type of layout
+object. It's basically a blank space on your screen that you can
+later fill with a single object &mdash; for example, a picture that you'll swap in and out.
+All child elements of the FrameLayout are pinned to the top left corner of the screen; you cannot
+specify a different location for a child view. Subsequent child views will simply be drawn over
+previous ones,
+partially or totally obscuring them (unless the newer object is transparent).
+</p>
+-->
+
+
+<div class="layout first">
+  <h4><a href="layout/linear.html">線形レイアウト</a></h4>
+  <a href="layout/linear.html"><img src="{@docRoot}images/ui/linearlayout-small.png" alt="" /></a>
+  <p>子を横方向または縦方向の 1 行にまとめるレイアウト。ウィンドウの長さが画面の長さを超える場合は、スクロールバーが作成されます。
+</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/relative.html">相対レイアウト</a></h4>
+  <a href="layout/relative.html"><img src="{@docRoot}images/ui/relativelayout-small.png" alt="" /></a>
+  <p>たとえば子 A を子 B の左になど、それぞれの子オブジェクトの位置を相対して指定したり、親の上に揃えてなど、親に相対して指定したりできます。
+</p>
+</div>
+
+<div class="layout">
+  <h4><a href="{@docRoot}guide/webapps/webview.html">ウェブビュー</a></h4>
+  <a href="{@docRoot}guide/webapps/webview.html"><img src="{@docRoot}images/ui/webview-small.png" alt="" /></a>
+  <p>ウェブページを表示します。</p>
+</div>
+
+
+
+
+<h2 id="AdapterViews" style="clear:left">アダプタを使ったレイアウトをビルドする</h2>
+
+<p>レイアウトのコンテンツが動的または事前設定されていないとき、{@link android.widget.AdapterView} のサブクラスのレイアウトを使って、実行時にビューでレイアウトを設定できます。
+{@link android.widget.AdapterView} クラスのサブクラスでは、{@link android.widget.Adapter} を使ってそのレイアウトにデータがバインドされます。
+
+{@link android.widget.Adapter} はデータソースと {@link android.widget.AdapterView} レイアウト間の仲介として動作します。{@link android.widget.Adapter} によって、配列やデータベース クエリのようなソースからデータが取得され、各エントリが {@link android.widget.AdapterView} レイアウトに追加できるビューに変換されます。
+
+
+</p>
+
+<p>アダプタでサポートされている共通レイアウトには次が含まれます。</p>
+
+<div class="layout first">
+  <h4><a href="layout/listview.html">リストビュー</a></h4>
+  <a href="layout/listview.html"><img src="{@docRoot}images/ui/listview-small.png" alt="" /></a>
+  <p>スクロール可能な 1 列のリストが表示されます。</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/gridview.html">グリッドビュー</a></h4>
+  <a href="layout/gridview.html"><img src="{@docRoot}images/ui/gridview-small.png" alt="" /></a>
+  <p>スクロール可能な列と行のグリッドが表示されます。</p>
+</div>
+
+
+
+<h3 id="FillingTheLayout" style="clear:left">データを使ったアダプタビューを書き込む</h3>
+
+<p>{@link android.widget.AdapterView} インスタンスを {@link android.widget.Adapter} にバインドして、{@link android.widget.ListView} や {@link android.widget.GridView} などの {@link android.widget.AdapterView} を入力できます。外部ソースのデータが取得され、各データエントリを表す {@link
+android.view.View} が作成されます。
+
+</p>
+
+<p>Android ではさまざまな種類のデータの取得と {@link android.widget.AdapterView} のビューのビルドに役立つ {@link android.widget.Adapter} のサブクラスがいくつか提供されます。
+最も一般的なアダプタは次の 2 つです。
+</p>
+
+<dl>
+  <dt>{@link android.widget.ArrayAdapter}</dt>
+    <dd>データソースが配列の場合に、このアダプタを使います。デフォルトでは、{@link
+android.widget.ArrayAdapter} によって各アイテムで {@link
+java.lang.Object#toString()} が呼び出され、そのコンテンツが {@link
+android.widget.TextView} に配置されることで、各配列アイテムのビューが作成されます。
+      <p>たとえば、{@link
+android.widget.ListView} に表示する文字列の配列がある場合、コンストラクタを使って新しい {@link android.widget.ArrayAdapter} を初期化して、各文字列と文字列配列のレイアウトを指定します。
+</p>
+<pre>
+ArrayAdapter&lt;String> adapter = new ArrayAdapter&lt;String>(this,
+        android.R.layout.simple_list_item_1, myStringArray);
+</pre>
+<p>このコンストラクタの引数を次に示します。</p>
+<ul>
+  <li>アプリの {@link android.content.Context}</li>
+  <li>配列の各文字列に対して {@link android.widget.TextView} を含むレイアウト</li>
+  <li>文字列配列</li>
+</ul>
+<p>次に、{@link android.widget.ListView} で {@link android.widget.ListView#setAdapter setAdapter()} を呼び出します。
+</p>
+<pre>
+ListView listView = (ListView) findViewById(R.id.listview);
+listView.setAdapter(adapter);
+</pre>
+
+      <p>各アイテムの概観をカスタマイズするには、自分の配列内のオブジェクトに {@link
+java.lang.Object#toString()} メソッドをオーバーライドします。または、たとえば各配列アイテムに {@link android.widget.ImageView} が必要な場合など、{@link android.widget.TextView} 以外の各アイテムの表示を作成するには、{@link
+android.widget.ArrayAdapter} クラスを拡張し、{@link android.widget.ArrayAdapter#getView
+getView()} をオーバーライドして、各アイテムに必要なビュータイプが返されるようにします。
+
+</p>
+
+</dd>
+
+  <dt>{@link android.widget.SimpleCursorAdapter}</dt>
+    <dd>{@link android.database.Cursor} から取得されたデータの場合は、このアダプタを使います。{@link android.widget.SimpleCursorAdapter} を使う場合は、{@link android.database.Cursor} で各行に使うレイアウトを指定して、{@link android.database.Cursor} のどの列をレイアウトのビューに挿入するのかを指定してください。
+
+
+たとえば、人の名前と電話番号のリストを作成する場合は、それぞれの人の行と、その名前と番号の列を含む {@link
+android.database.Cursor} を返すクエリを実行します。
+
+次に、それぞれの結果に対して {@link
+android.database.Cursor} のどの列をレイアウトに含めるかを指定する文字列配列と、各列が配置されるべき対応するビューを指定する整数配列を作成します。
+</p>
+<pre>
+String[] fromColumns = {ContactsContract.Data.DISPLAY_NAME,
+                        ContactsContract.CommonDataKinds.Phone.NUMBER};
+int[] toViews = {R.id.display_name, R.id.phone_number};
+</pre>
+<p>{@link android.widget.SimpleCursorAdapter} のインスタンスを作成するとき、各結果に使うレイアウト、結果を含む {@link android.database.Cursor}、次の 2 つの配列を渡します。
+</p>
+<pre>
+SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
+        R.layout.person_name_and_number, cursor, fromColumns, toViews, 0);
+ListView listView = getListView();
+listView.setAdapter(adapter);
+</pre>
+<p>次に、{@link android.widget.SimpleCursorAdapter} によって、対応する {@code toViews} ビューに各 {@code
+fromColumns} アイテムを挿入して提供されたレイアウトを使って {@link android.database.Cursor} で各行のビューが作成されます。
+</p>.</dd>
+</dl>
+
+
+<p>アプリケーションのライフサイクル中に、アダプタによって読み取られる基礎となるデータを変更する場合は、{@link android.widget.ArrayAdapter#notifyDataSetChanged()} を呼び出してください。
+これによって、データが変更されたアタッチされたビューが通知され、それ自体を更新する必要があることが通知されます。
+</p>
+
+
+
+<h3 id="HandlingUserSelections">クリック イベントを処理する</h3>
+
+<p>{@link android.widget.AdapterView.OnItemClickListener} インターフェースを実装して {@link android.widget.AdapterView} の各アイテムでのクリック イベントに応答できます。
+次に例を示します。</p>
+
+<pre>
+// Create a message handling object as an anonymous class.
+private OnItemClickListener mMessageClickedHandler = new OnItemClickListener() {
+    public void onItemClick(AdapterView parent, View v, int position, long id) {
+        // Do something in response to the click
+    }
+};
+
+listView.setOnItemClickListener(mMessageClickedHandler);
+</pre>
+
+
+
diff --git a/docs/html-intl/intl/ja/guide/topics/ui/dialogs.jd b/docs/html-intl/intl/ja/guide/topics/ui/dialogs.jd
new file mode 100644
index 0000000..358fc30
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/ui/dialogs.jd
@@ -0,0 +1,798 @@
+page.title=ダイアログ
+page.tags=alertdialog,dialogfragment
+
+@jd:body
+
+
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>本書の内容</h2>
+<ol>
+  <li><a href="#DialogFragment">Dialog Fragment を作成する</a></li>
+  <li><a href="#AlertDialog">アラート ダイアログをビルドする</a>
+    <ol>
+      <li><a href="#AddingButtons">ボタンを追加する</a></li>
+      <li><a href="#AddingAList">リストを追加する</a></li>
+      <li><a href="#CustomLayout">カスタム レイアウトを作成する</a></li>
+    </ol>
+  </li>
+  <li><a href="#PassingEvents">ダイアログのホストにイベントを渡す</a></li>
+  <li><a href="#ShowingADialog">ダイアログを表示する</a></li>
+  <li><a href="#FullscreenDialog">全画面でまたは埋め込まれたフラグメントとしてダイアログを表示する</a>
+    <ol>
+      <li><a href="#ActivityAsDialog">大画面でアクティビティをダイアログとして表示する</a></li>
+    </ol>
+  </li>
+  <li><a href="#DismissingADialog">ダイアログを閉じる</a></li>
+</ol>
+
+    <h2>キークラス</h2>
+    <ol>
+      <li>{@link android.app.DialogFragment}</li>
+      <li>{@link android.app.AlertDialog}</li>
+    </ol>
+    
+    <h2>関連ドキュメント</h2>
+    <ol>
+      <li><a href="{@docRoot}design/building-blocks/dialogs.html">ダイアログ デザインのガイド</a></li>
+      <li><a href="{@docRoot}guide/topics/ui/controls/pickers.html">ピッカー</a>（日付ダイアログと時刻ダイアログ）</li>
+    </ol>
+  </div>
+</div>
+
+<p>ダイアログは、ユーザーによる意思決定や追加情報の入力用に表示される小さなウィンドウです。
+ダイアログは全画面に表示されることはなく、通常はユーザーが処理を続ける前にアクションを起こす必要があるモーダル イベントに使用されます。
+</p>
+
+<div class="note design">
+<p><strong>ダイアログ デザイン</strong></p>
+  <p>ダイアログをデザインする方法について（言語に対する推奨を含む）は、<a href="{@docRoot}design/building-blocks/dialogs.html">ダイアログ</a> デザインのガイドをお読みください。
+</p>
+</div>
+
+<img src="{@docRoot}images/ui/dialogs.png" />
+
+<p>{@link android.app.Dialog} クラスは、ダイアログの基本クラスですが、{@link android.app.Dialog} ディレクトリのインスタンスを作成することは避けてください。代わりに、次のいずれかのサブクラスを使用します。
+
+</p>
+<dl>
+  <dt>{@link android.app.AlertDialog}</dt>
+  <dd>タイトル、最大 3 つのボタン、選択可能なアイテムやカスタム レイアウトのリストを表示できるダイアログ。
+</dd>
+  <dt>{@link android.app.DatePickerDialog} または {@link android.app.TimePickerDialog}</dt>
+  <dd>ユーザーが日付または時刻を選択できるようにあらかじめ定義された UI を含むダイアログ。</dd>
+</dl>
+
+<div class="sidebox">
+<h2>ProgressDialog を使用しない</h2>
+<p>Android には、進捗バーを含むダイアログを表示する {@link android.app.ProgressDialog} という別のダイアログ クラスがあります。
+ただし、読み込み中または不確定な進捗状況を表示する必要がある場合は、<a href="{@docRoot}design/building-blocks/progress.html">Progress &amp; Activity</a> のデザイン ガイドラインに従って、レイアウトで {@link android.widget.ProgressBar} を使用してください。
+
+
+</p>
+</div>
+
+<p>これらのクラスでは、ダイアログのスタイルと構造が定義されますが、ダイアログのコンテナとして {@link android.support.v4.app.DialogFragment} を使用してください。{@link android.support.v4.app.DialogFragment} クラスでは、{@link android.app.Dialog} オブジェクトでメソッドを呼び出す代わりに、ダイアログの作成と表示の管理に必要なすべてのコントロールが提供されます。
+
+
+
+</p>
+
+<p>{@link android.support.v4.app.DialogFragment} を使ってダイアログを管理すると、ライフサイクル イベント（[<em>戻る</em>] ボタンを押したときや画面を回転したときなど）が正しく処理されます。
+
+{@link
+android.support.v4.app.DialogFragment} クラスを使用すると、従来の {@link
+android.support.v4.app.Fragment} のように、大きな UI で埋め込み可能なコンポーネントとしてダイアログの UI を再利用することもできます（ダイアログ UI を大小の画面で異なって表示させる場合など）。
+
+</p>
+
+<p>このガイドの次のセクションでは、{@link android.app.AlertDialog} オブジェクトと組み合わせて {@link
+android.support.v4.app.DialogFragment} を使用する方法について説明します。
+日付や時刻ピッカーを作成する場合は、「<a href="{@docRoot}guide/topics/ui/controls/pickers.html">Pickers</a>」のガイドをご覧ください。
+</p>
+
+<p class="note"><strong>注:</strong> {@link android.app.DialogFragment} クラスは 元々 Android 3.0（API レベル 11）で追加されたため、このドキュメントでは<a href="{@docRoot}tools/support-library/index.html">サポート ライブラリ</a>と一緒に提供される {@link
+android.support.v4.app.DialogFragment} クラスの使用方法について説明します。
+
+アプリにこのライブラリを追加すると、Android 1.6 以降を実行する端末で、{@link android.support.v4.app.DialogFragment} とその他のさまざまな API を使うことができます。
+
+アプリの最小バージョンで API レベル 11 以降がサポートされている場合、{@link
+android.app.DialogFragment} のフレームワーク バージョンを使用できますが、このドキュメントのリンクはサポート ライブラリ API 向けであることにご注意ください。
+
+サポート ライブラリを使用するときは、<code>android.app.DialogFragment</code> <em>ではなく</em>、<code>android.support.v4.app.DialogFragment</code> クラス をインポートしてください。
+
+</p>
+
+
+<h2 id="DialogFragment">Dialog Fragment を作成する</h2>
+
+<p>{@link android.support.v4.app.DialogFragment} を拡張して {@link android.support.v4.app.DialogFragment#onCreateDialog
+onCreateDialog()} コールバック メソッドで {@link android.app.AlertDialog} を作成することで、さまざまなダイアログ デザイン（カスタム レイアウトや<a href="{@docRoot}design/building-blocks/dialogs.html">ダイアログ</a>のデザインガイドで説明されているものを含む）を実現できます。
+
+
+
+</p>
+
+<p>{@link android.support.v4.app.DialogFragment} で管理される基本的な {@link android.app.AlertDialog} を次に示します。
+</p>
+
+<pre>
+public class FireMissilesDialogFragment extends DialogFragment {
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Use the Builder class for convenient dialog construction
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // FIRE ZE MISSILES!
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // User cancelled the dialog
+                   }
+               });
+        // Create the AlertDialog object and return it
+        return builder.create();
+    }
+}
+</pre>
+
+<div class="figure" style="width:290px;margin:0 0 0 20px">
+<img src="{@docRoot}images/ui/dialog_buttons.png" alt="" />
+<p class="img-caption"><strong>図 1</strong> 
+メッセージと 2 つのアクション ボタンを含むダイアログ</p>
+</div>
+
+<p>このクラスのインスタンスを作成してオブジェクトで {@link
+android.support.v4.app.DialogFragment#show show()} を呼び出すと、図 1 のようなダイアログが表示されます。
+</p>
+
+<p>次のセクションでは、{@link android.app.AlertDialog.Builder} API を使ったダイアログの作成について詳細を説明します。
+</p>
+
+<p>ダイアログの複雑さに応じて、{@link android.support.v4.app.DialogFragment} ですべての基本的な<a href="{@docRoot}guide/components/fragments.html#Lifecycle">フラグメントのライフサイクル メソッド</a>を含む、他のさまざまなコールバック メソッドを実装できます。
+
+
+
+
+
+
+
+<h2 id="AlertDialog">アラート ダイアログをビルドする</h2>
+
+
+<p>{@link android.app.AlertDialog} クラスを使って、さまざまなダイアログ デザインをビルドできます。ほとんどの場合、必要なダイアログ クラスはこれだけです。図 2 のように、アラート ダイアログには 3 つの領域があります。
+
+</p>
+
+<div class="figure" style="width:311px;margin-top:0">
+<img src="{@docRoot}images/ui/dialogs_regions.png" alt="" style="margin-bottom:0" />
+<p class="img-caption"><strong>図 2.</strong> ダイアログのレイアウト。</p>
+</div>
+
+<ol>
+<li><b>タイトル</b>
+  <p>この領域は省略可能で、コンテンツ エリアが詳細メッセージ、リスト、カスタム レイアウトで占有されている場合にのみ使う必要があります。
+単純なメッセージや質問（図 1 にあるダイアログなど）を記述する場合は、タイトルは必要ありません。
+</li>
+<li><b>コンテンツ エリア</b>
+  <p>メッセージ、リスト、その他のカスタム レイアウトを表示できます。</p></li>
+<li><b>アクション ボタン</b>
+  <p>1 つのダイアログ内に置くアクション ボタンは、3 つ以内にする必要があります。</p></li>
+</ol>
+
+<p>{@link android.app.AlertDialog.Builder} クラスでは、カスタム レイアウトなど、これらの種類のコンテンツを含む {@link android.app.AlertDialog} を作成できます。
+
+</p>
+
+<p>{@link android.app.AlertDialog} をビルドするには: </p>
+
+<pre>
+<b>// 1. Instantiate an {@link android.app.AlertDialog.Builder} with its constructor</b>
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+
+<b>// 2. Chain together various setter methods to set the dialog characteristics</b>
+builder.setMessage(R.string.dialog_message)
+       .setTitle(R.string.dialog_title);
+
+<b>// 3. Get the {@link android.app.AlertDialog} from {@link android.app.AlertDialog.Builder#create()}</b>
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>次のトピックでは、{@link android.app.AlertDialog.Builder} クラスを使ってさまざまなダイアログの属性を定義する方法を示します。
+</p>
+
+
+
+
+<h3 id="AddingButtons">ボタンを追加する</h3>
+
+<p>図 2 のようなアクション ボタンを追加するには、{@link android.app.AlertDialog.Builder#setPositiveButton setPositiveButton()} と {@link android.app.AlertDialog.Builder#setNegativeButton setNegativeButton()} メソッドを呼び出します。
+
+</p>
+
+<pre style="clear:right">
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+// Add the buttons
+builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User clicked OK button
+           }
+       });
+builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User cancelled the dialog
+           }
+       });
+// Set other dialog properties
+...
+
+// Create the AlertDialog
+AlertDialog dialog = builder.create();
+</pre>
+
+<p><code>set...Button()</code> メソッドには、ボタンのタイトル（<a href="{@docRoot}guide/topics/resources/string-resource.html">文字列リソースで指定</a>）と、ユーザーがボタンを押したときに実行するアクションを定義する {@link android.content.DialogInterface.OnClickListener} が必要です。
+
+
+</p>
+
+<p>追加できるアクション ボタンは、次の 3 つです。</p>
+<dl>
+  <dt>Positive</dt>
+  <dd>アクションを受け入れて続ける場合に使います（「OK」アクション）。</dd>
+  <dt>Negative</dt>
+  <dd>アクションをキャンセルする場合に使います。</dd>
+  <dt>Neutral</dt>
+  <dd>ユーザーがアクションを続けたくない可能性があり、キャンセルしたいとは限らない場合に使います。
+ポジティブ ボタンとネガティブ ボタンの間に表示されます。
+たとえば、「後で通知する」のようなアクションの場合です。</dd> 
+</dl>
+
+<p>各ボタンタイプのいずれか 1 つのみを {@link
+android.app.AlertDialog} に追加できます。つまり、2 つ以上の「ポジティブ」ボタンを置くことはできません。</p>
+
+
+
+<div class="figure" style="width:290px;margin:0 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_list.png" alt="" />
+<p class="img-caption"><strong>図 3</strong> 
+タイトルとリストを含むダイアログ</p>
+</div>
+
+<h3 id="AddingAList">リストを追加する</h3>
+
+<p>{@link android.app.AlertDialog} API で使用できるリストは次の 3 種類です。</p>
+<ul>
+<li>従来の排他的選択リスト</li>
+<li>固定の排他的選択リスト（ラジオボタン）</li>
+<li>固定の複数選択リスト（チェックボックス）</li>
+</ul>
+
+<p>図 3 のように、排他的選択リストを作成するには、{@link android.app.AlertDialog.Builder#setItems setItems()} メソッドを使います。
+</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    builder.setTitle(R.string.pick_color)
+           .setItems(R.array.colors_array, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int which) {
+               // The 'which' argument contains the index position
+               // of the selected item
+           }
+    });
+    return builder.create();
+}
+</pre>
+
+<p>リストは、ダイアログのコンテンツ エリアに表示されるため、ダイアログにはメッセージとリストの両方は表示できません。{@link android.app.AlertDialog.Builder#setTitle setTitle()} でダイアログのタイトルを設定してください。
+
+リストのアイテムを指定するには、{@link
+android.app.AlertDialog.Builder#setItems setItems()} を呼び出して配列を渡します。{@link
+android.app.AlertDialog.Builder#setAdapter setAdapter()} を使ってリストを指定することもできます。
+
+こうすることで、{@link android.widget.ListAdapter} を使って、データベースからなど、ダイナミック データを含むリストを返すことができます。
+</p>
+
+<p>{@link android.widget.ListAdapter} を使ってリストを返すことを選択する場合は、必ず {@link android.support.v4.content.Loader} を使ってコンテンツが非同期で読み込まれるようにします。
+
+この詳細については、「<a href="{@docRoot}guide/topics/ui/declaring-layout.html#AdapterViews">Building Layouts with an Adapter</a>」と「<a href="{@docRoot}guide/components/loaders.html">ローダ</a>」のガイドをご覧ください。
+
+
+</p>
+
+<p class="note"><strong>注:</strong> デフォルトでは、次の固定選択リストのいずれかを使っていない場合、リストアイテムをタップするとダイアログが閉じられます。
+</p>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_checkboxes.png" />
+<p class="img-caption"><strong>図 4.</strong>複数選択アイテムのリスト。
+</p>
+</div>
+
+
+<h4 id="Checkboxes">固定の複数選択または排他的選択リストを追加する</h4>
+
+<p>複数選択アイテム（チェックボックス）または排他的選択アイテム（ラジオボタン）のリストを追加するには、{@link android.app.AlertDialog.Builder#setMultiChoiceItems(Cursor,String,String,
+DialogInterface.OnMultiChoiceClickListener) setMultiChoiceItems()} または {@link android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()} メソッドをそれぞれ使用します。
+
+
+</p>
+
+<p>{@link java.util.ArrayList} で選択されたアイテムを保存する、図 4 にあるような複数選択リストを作成する方法を次に示します。
+
+</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    mSelectedItems = new ArrayList();  // Where we track the selected items
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Set the dialog title
+    builder.setTitle(R.string.pick_toppings)
+    // Specify the list array, the items to be selected by default (null for none),
+    // and the listener through which to receive callbacks when items are selected
+           .setMultiChoiceItems(R.array.toppings, null,
+                      new DialogInterface.OnMultiChoiceClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int which,
+                       boolean isChecked) {
+                   if (isChecked) {
+                       // If the user checked the item, add it to the selected items
+                       mSelectedItems.add(which);
+                   } else if (mSelectedItems.contains(which)) {
+                       // Else, if the item is already in the array, remove it 
+                       mSelectedItems.remove(Integer.valueOf(which));
+                   }
+               }
+           })
+    // Set the action buttons
+           .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // User clicked OK, so save the mSelectedItems results somewhere
+                   // or return them to the component that opened the dialog
+                   ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   ...
+               }
+           });
+
+    return builder.create();
+}
+</pre>
+
+<p>従来のリストとラジオボタンを含むリストでは、「排他的選択」アクションが提供されますが、ユーザーの選択を固定させたい場合は、{@link
+android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()} を使用してください。つまり、ダイアログを後でもう一度開く場合は、ユーザーの現在の選択を表示し、ラジオボタンを含むリストを作成します。
+
+
+</p>
+
+
+
+
+
+<h3 id="CustomLayout">カスタム レイアウトを作成する</h3>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_custom.png" alt="" />
+<p class="img-caption"><strong>図 5.</strong> カスタム ダイアログのレイアウト。</p>
+</div>
+
+<p>ダイアログでカスタム レイアウトが必要な場合は、レイアウトを作成し、{@link
+android.app.AlertDialog.Builder} オブジェクトで {@link
+android.app.AlertDialog.Builder#setView setView()} を呼び出して {@link android.app.AlertDialog} にそのレイアウトを追加します。
+</p>
+
+<p>デフォルトでは、カスタム レイアウトは、ダイアログ ウィンドウ全体に表示されますが、{@link android.app.AlertDialog.Builder} メソッドを使ってボタンとタイトルを追加できます。
+</p>
+
+<p>以下は、図 5 にあるダイアログのレイアウト ファイルです。</p>
+
+<p style="clear:right" class="code-caption">res/layout/dialog_signin.xml</p>
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content">
+    &lt;ImageView
+        android:src="@drawable/header_logo"
+        android:layout_width="match_parent"
+        android:layout_height="64dp"
+        android:scaleType="center"
+        android:background="#FFFFBB33"
+        android:contentDescription="@string/app_name" />
+    &lt;EditText
+        android:id="@+id/username"
+        android:inputType="textEmailAddress"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="16dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="4dp"
+        android:hint="@string/username" />
+    &lt;EditText
+        android:id="@+id/password"
+        android:inputType="textPassword"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="4dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="16dp"
+        android:fontFamily="sans-serif"
+        android:hint="@string/password"/>
+&lt;/LinearLayout>
+</pre>
+
+<p class="note"><strong>ヒント:</strong> デフォルトでは、{@code "textPassword"} 入力タイプを使うために、{@link android.widget.EditText} 要素を設定すると、フォント ファミリーが monospace に設定されるため、フォント ファミリーを {@code "sans-serif"} に変えて、両方のテキスト フィールドで同じフォント スタイルが使用されるようにしてください。
+
+
+</p>
+
+<p>{@link android.support.v4.app.DialogFragment} でレイアウトをインフレートするには、{@link android.app.Activity#getLayoutInflater()} で {@link android.view.LayoutInflater} を取得して {@link android.view.LayoutInflater#inflate inflate()} を呼び出します。最初のパラメータは、レイアウト リソース ID で、2 番目のパラメータはレイアウトの親ビューです。その後、{@link android.app.AlertDialog#setView setView()} を呼び出してダイアログのレイアウトを配置できます。
+
+
+
+
+
+</p>
+
+<pre>
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Get the layout inflater
+    LayoutInflater inflater = getActivity().getLayoutInflater();
+
+    // Inflate and set the layout for the dialog
+    // Pass null as the parent view because its going in the dialog layout
+    builder.setView(inflater.inflate(R.layout.dialog_signin, null))
+    // Add action buttons
+           .setPositiveButton(R.string.signin, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // sign in the user ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int id) {
+                   LoginDialogFragment.this.getDialog().cancel();
+               }
+           });      
+    return builder.create();
+}
+</pre>
+
+<div class="note">
+<p><strong>ヒント:</strong> カスタム ダイアログが必要な場合は、{@link android.app.Dialog} API を使う代わりに、{@link android.app.Activity} をダイアログとして表示できます。
+
+アクティビティを作り、<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> マニフェスト要素でそのテーマを {@link android.R.style#Theme_Holo_Dialog Theme.Holo.Dialog} に設定します。
+
+</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.Dialog" >
+</pre>
+<p>これだけです。これで、アクティビティは全画面でなく、ダイアログ ウィンドウに表示されるようになります。</p>
+</div>
+
+
+
+<h2 id="PassingEvents">ダイアログのホストにイベントを渡す</h2>
+
+<p>ユーザーがダイアログのアクション ボタンのいずれかをタップするか、そのリストからアイテムを選択すると、{@link android.support.v4.app.DialogFragment} によって必要なアクションが実行される場合がありますが、ダイアログを開くアクティビティやフラグメントにイベントを配信したい場合もよくあります。
+
+
+これを行うには、クリック イベントの各タイプのメソッドでインターフェースを定義します。次に、ダイアログからアクション イベントを受け取るホスト コンポーネントでインターフェースを実装します。
+
+</p>
+
+<p>ホスト アクティビティにイベントを配信するインターフェースを定義する {@link android.support.v4.app.DialogFragment} を次に示します。
+</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    
+    /* The activity that creates an instance of this dialog fragment must
+     * implement this interface in order to receive event callbacks.
+     * Each method passes the DialogFragment in case the host needs to query it. */
+    public interface NoticeDialogListener {
+        public void onDialogPositiveClick(DialogFragment dialog);
+        public void onDialogNegativeClick(DialogFragment dialog);
+    }
+    
+    // Use this instance of the interface to deliver action events
+    NoticeDialogListener mListener;
+    
+    // Override the Fragment.onAttach() method to instantiate the NoticeDialogListener
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        // Verify that the host activity implements the callback interface
+        try {
+            // Instantiate the NoticeDialogListener so we can send events to the host
+            mListener = (NoticeDialogListener) activity;
+        } catch (ClassCastException e) {
+            // The activity doesn't implement the interface, throw exception
+            throw new ClassCastException(activity.toString()
+                    + " must implement NoticeDialogListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>ダイアログをホスティングするアクティビティによって、ダイアログ フラグメントのコンストラクタを使ってダイアログのインスタンスが作成され、{@code NoticeDialogListener} インターフェースの実装によってダイアログのイベントが受信されます。
+
+</p>
+
+<pre>
+public class MainActivity extends FragmentActivity
+                          implements NoticeDialogFragment.NoticeDialogListener{
+    ...
+    
+    public void showNoticeDialog() {
+        // Create an instance of the dialog fragment and show it
+        DialogFragment dialog = new NoticeDialogFragment();
+        dialog.show(getSupportFragmentManager(), "NoticeDialogFragment");
+    }
+
+    // The dialog fragment receives a reference to this Activity through the
+    // Fragment.onAttach() callback, which it uses to call the following methods
+    // defined by the NoticeDialogFragment.NoticeDialogListener interface
+    &#64;Override
+    public void onDialogPositiveClick(DialogFragment dialog) {
+        // User touched the dialog's positive button
+        ...
+    }
+
+    &#64;Override
+    public void onDialogNegativeClick(DialogFragment dialog) {
+        // User touched the dialog's negative button
+        ...
+    }
+}
+</pre>
+
+<p>ホスト アクティビティによって、上記の {@link android.support.v4.app.Fragment#onAttach onAttach()} コールバック メソッドで適用される {@code NoticeDialogListener} が実装されるため、ダイアログ フラグメントではインターフェース コールバック メソッドを使ってアクティビティにクリック イベントを配信できます。
+
+
+</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    ...
+
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Build the dialog and set up the button click handlers
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the positive button event back to the host activity
+                       mListener.onDialogPositiveClick(NoticeDialogFragment.this);
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the negative button event back to the host activity
+                       mListener.onDialogNegativeClick(NoticeDialogFragment.this);
+                   }
+               });
+        return builder.create();
+    }
+}
+</pre>
+
+
+
+<h2 id="ShowingADialog">ダイアログを表示する</h2>
+
+<p>ダイアログを表示する場合、{@link
+android.support.v4.app.DialogFragment} のインスタンスを作成して {@link android.support.v4.app.DialogFragment#show
+show()} を呼び出し、{@link android.support.v4.app.FragmentManager} とダイアログ フラグメントのタグ名を渡します。
+</p>
+
+<p>{@link android.support.v4.app.FragmentActivity} から {@link android.support.v4.app.FragmentActivity#getSupportFragmentManager()} を、または {@link
+android.support.v4.app.Fragment} から {@link
+android.support.v4.app.Fragment#getFragmentManager()} を呼び出して {@link android.support.v4.app.FragmentManager} を取得できます。
+
+次に例を示します。</p>
+
+<pre>
+public void confirmFireMissiles() {
+    DialogFragment newFragment = new FireMissilesDialogFragment();
+    newFragment.show(getSupportFragmentManager(), "missiles");
+}
+</pre>
+
+<p>2 番目の引数 {@code "missiles"} は、固有のタグ名で、システムはこれを使って必要な時にフラグメントの状態を保存して復元します。
+そのタグを使って、{@link android.support.v4.app.FragmentManager#findFragmentByTag
+findFragmentByTag()} を呼び出してフラグメントを操作することもできます。
+</p>
+
+
+
+
+<h2 id="FullscreenDialog">全画面でまたは埋め込まれたフラグメントとしてダイアログを表示する</h2>
+
+<p>場合によっては、UI の一部をダイアログとして表示させ、それ以外の場合には、たとえば端末の画面の大小に応じて、全画面や埋め込まれたフラグメントとして表示させるよう UI を設計できます。
+
+{@link android.support.v4.app.DialogFragment} クラスは、埋め込み可能な {@link
+android.support.v4.app.Fragment} として動作できるため、この柔軟性を実現できます。
+</p>
+
+<p>ただし、この場合は、{@link android.app.AlertDialog.Builder AlertDialog.Builder} やその他の {@link android.app.Dialog} オブジェクトを使ってダイアログをビルドできません。
+{@link android.support.v4.app.DialogFragment} を埋め込み可能にする場合、レイアウトでダイアログの UI を定義し、{@link android.support.v4.app.DialogFragment#onCreateView
+onCreateView()} コールバックでレイアウトを読み込んでください。
+
+
+</p>
+
+<p>ダイアログまたは埋め込み可能なフラグメントのいずれかとして（<code>purchase_items.xml</code> という名前のレイアウトを使って）表示できる {@link android.support.v4.app.DialogFragment} の例を次に示します。
+</p>
+
+<pre>
+public class CustomDialogFragment extends DialogFragment {
+    /** The system calls this to get the DialogFragment's layout, regardless
+        of whether it's being displayed as a dialog or an embedded fragment. */
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        // Inflate the layout to use as dialog or embedded fragment
+        return inflater.inflate(R.layout.purchase_items, container, false);
+    }
+  
+    /** The system calls this only when creating the layout in a dialog. */
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // The only reason you might override this method when using onCreateView() is
+        // to modify any dialog characteristics. For example, the dialog includes a
+        // title by default, but your custom layout might not need it. So here you can
+        // remove the dialog title, but you must call the superclass to get the Dialog.
+        Dialog dialog = super.onCreateDialog(savedInstanceState);
+        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
+        return dialog;
+    }
+}
+</pre>
+
+<p>画面サイズに基づいて、フラグメントをダイアログとしてまたは全画面の UI として表示するかどうかを決めるコードの一例も示します。
+</p>
+
+<pre>
+public void showDialog() {
+    FragmentManager fragmentManager = getSupportFragmentManager();
+    CustomDialogFragment newFragment = new CustomDialogFragment();
+    
+    if (mIsLargeLayout) {
+        // The device is using a large layout, so show the fragment as a dialog
+        newFragment.show(fragmentManager, "dialog");
+    } else {
+        // The device is smaller, so show the fragment fullscreen
+        FragmentTransaction transaction = fragmentManager.beginTransaction();
+        // For a little polish, specify a transition animation
+        transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
+        // To make it fullscreen, use the 'content' root view as the container
+        // for the fragment, which is always the root view for the activity
+        transaction.add(android.R.id.content, newFragment)
+                   .addToBackStack(null).commit();
+    }
+}
+</pre>
+
+<p>フラグメントのトランザクション実行の詳細については、「<a href="{@docRoot}guide/components/fragments.html">フラグメント</a>」のガイドをご覧ください。
+</p>
+
+<p>この例では、<code>mIsLargeLayout</code> ブール値によって、現在の端末でアプリの大きなレイアウト デザインを使う（その結果、全画面でなく、このフラグメントをダイアログとして表示する）かどうかが指定されます。
+
+この種のブール値を設定する最良の方法は、異なる画面サイズに対して<a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">別のリソース値</a>で<a href="{@docRoot}guide/topics/resources/more-resources.html#Bool">ブールリソース値</a>を宣言することです。
+
+次に、異なる画面サイズのブールリソースを 2 種類示します。
+</p>
+
+<p class="code-caption">res/values/bools.xml</p>
+<pre>
+&lt;!-- Default boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">false&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p class="code-caption">res/values-large/bools.xml</p>
+<pre>
+&lt;!-- Large screen boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">true&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p>アクティビティの {@link android.app.Activity#onCreate onCreate()} メソッド中に、{@code mIsLargeLayout} 値を初期化できます。
+</p>
+
+<pre>
+boolean mIsLargeLayout;
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_main);
+
+    mIsLargeLayout = getResources().getBoolean(R.bool.large_layout);
+}
+</pre>
+
+
+
+<h3 id="ActivityAsDialog">大画面でアクティビティをダイアログとして表示する</h3>
+
+<p>小画面のときにダイアログを全画面の UI として表示するのではなく、大画面のときに {@link android.app.Activity} をダイアログとして表示することで、同じ結果を得ることができます。
+
+どちらの方法を選択するかはアプリのデザインによって異なりますが、アプリが小画面で設計されていて、存在期間が短いアクティビティをダイアログとして示すことでタブレットでの使用感を改善するときには、ほとんどの場合、アクティビティをダイアログとして表示する方法が役立ちます。
+
+
+</p>
+
+<p>大画面のときにのみ、アクティビティをダイアログとして表示するには、{@link android.R.style#Theme_Holo_DialogWhenLarge Theme.Holo.DialogWhenLarge} テーマを <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> マニフェスト要素に適用します。
+
+</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.DialogWhenLarge" >
+</pre>
+
+<p>テーマを使ったアクティビティのスタイル指定についての詳細は、「<a href="{@docRoot}guide/topics/ui/themes.html">Styles and Themes</a>」をご覧ください。</p>
+
+
+
+<h2 id="DismissingADialog">ダイアログを閉じる</h2>
+
+<p>{@link android.app.AlertDialog.Builder} で作成したアクション ボタンのいずれかがタップされると、システムはダイアログを閉じます。
+</p>
+
+<p>また、リストでラジオボタンやチェックボックスが使われている場合を除き、ダイアログ リストでアイテムがタップされると、ダイアログが閉じます。
+それ以外の場合は、{@link
+android.support.v4.app.DialogFragment} で {@link android.support.v4.app.DialogFragment#dismiss()} を呼び出してダイアログを手動で閉じることができます。
+</p>
+
+<p>ダイアログが閉じるときに、特定のアクションを実行する必要がある場合は、{@link
+android.support.v4.app.DialogFragment} で {@link
+android.support.v4.app.DialogFragment#onDismiss onDismiss()} メソッドを実装できます。
+</p>
+
+<p>ダイアログを<em>キャンセル</em>することもできます。これは、ユーザーがタスクを完了せずに、明示的にダイアログを離れたことを示す特別なイベントです。
+ユーザーが [<em>戻る</em>] ボタンを押す、ダイアログ領域外の画面をタップする、または開発者が {@link
+android.app.Dialog} で明示的に {@link android.app.Dialog#cancel()} を呼び出す（ダイアログの [キャンセル] ボタンに応じてなど）場合に実行されます。
+
+</p>
+
+<p>上記の例のように、{@link
+android.support.v4.app.DialogFragment} クラスで {@link android.support.v4.app.DialogFragment#onCancel onCancel()} を実装してキャンセル イベントに応答できます。
+</p>
+
+<p class="note"><strong>注:</strong> システムによって、{@link android.support.v4.app.DialogFragment#onCancel onCancel()} コールバックを呼び出す各イベントで {@link android.support.v4.app.DialogFragment#onDismiss onDismiss()} が呼び出されます。
+
+ただし、{@link android.app.Dialog#dismiss Dialog.dismiss()} や {@link
+android.support.v4.app.DialogFragment#dismiss DialogFragment.dismiss()} を呼び出す場合、システムによって {@link android.support.v4.app.DialogFragment#onDismiss onDismiss()} が呼び出されますが、{@link android.support.v4.app.DialogFragment#onCancel onCancel()} は<em>呼び出されません</em>。
+
+
+通常は、ユーザーがダイアログの<em>ポジティブ</em>ボタンを押すときに、{@link android.support.v4.app.DialogFragment#dismiss dismiss()} を呼び出して、ビューからダイアログが削除されるようにしてください。
+
+</p>
+
+
diff --git a/docs/html-intl/intl/ja/guide/topics/ui/menus.jd b/docs/html-intl/intl/ja/guide/topics/ui/menus.jd
new file mode 100644
index 0000000..7d8090e
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/ui/menus.jd
@@ -0,0 +1,1031 @@
+page.title=メニュー
+parent.title=ユーザー インターフェース
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本書の内容</h2>
+<ol>
+  <li><a href="#xml">XML でのメニューの定義</a></li>
+  <li><a href="#options-menu">オプション メニューの作成</a>
+    <ol>
+      <li><a href="#RespondingOptionsMenu">クリック イベントを処理する</a></li>
+      <li><a href="#ChangingTheMenu">実行時におけるメニュー アイテムの変更</a></li>
+    </ol>
+  </li>
+  <li><a href="#context-menu">コンテキスト メニューの作成</a>
+    <ol>
+      <li><a href="#FloatingContextMenu">フローティング コンテキスト メニューの作成</a></li>
+      <li><a href="#CAB">コンテキスト アクション モードの使用</a></li>
+    </ol>
+  </li>
+  <li><a href="#PopupMenu">ポップアップ メニューの作成</a>
+    <ol>
+      <li><a href="#PopupEvents">クリック イベントを処理する</a></li>
+    </ol>
+  </li>
+  <li><a href="#groups">メニュー グループの作成</a>
+    <ol>
+      <li><a href="#checkable">オンにできるメニュー アイテムの使用</a></li>
+    </ol>
+  </li>
+  <li><a href="#intents">インテントに基づくメニュー アイテムの追加</a>
+    <ol>
+      <li><a href="#AllowingToAdd">アクティビティを他のメニューに追加できるようにする</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>キークラス</h2>
+  <ol>
+    <li>{@link android.view.Menu}</li>
+    <li>{@link android.view.MenuItem}</li>
+    <li>{@link android.view.ContextMenu}</li>
+    <li>{@link android.view.ActionMode}</li>
+  </ol>
+
+  <h2>関連ドキュメント</h2>
+  <ol>
+    <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a></li>
+    <li><a href="{@docRoot}guide/topics/resources/menu-resource.html">Menu Resource</a></li>
+    <li><a href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">Goodbye to the Menu Button</a>
+</li>
+  </ol>
+</div>
+</div>
+
+<p>メニューは、さまざまなタイプのアプリケーションで共通するユーザー インターフェースです。使い慣れた一貫した操作感を提供するには、{@link android.view.Menu} API を使ってアクティビティでユーザーのアクションとその他のオプションを表示する必要があります。
+
+</p>
+
+<p>Android 3.0（API レベル 11）からは、Android 搭載端末では専用の <em>Menu</em> ボタンを表示する必要はなくなりました。
+この変更により、Android アプリでは従来の 6 アイテムのメニューパネルの依存関係から離れて、共通のユーザー アクションを表示するアクションバーを提供する必要があります。
+
+</p>
+
+<p>一部のメニュー アイテムのデザインと操作感は変わりましたが、一連のアクションとオプションを定義する意味論は、引き続き {@link android.view.Menu} API に基づきます。
+このガイドでは、すべてのバージョンの Android で表示されるメニューやアクションの基本的な 3 タイプを作成する方法について説明します。
+
+</p>
+
+<dl>
+  <dt><strong>オプション メニューとアクションバー</strong></dt>
+    <dd><a href="#options-menu">オプション メニュー</a>は、アクティビティの主なメニュー アイテムのコレクションです。
+ここには、「検索」、「メールの作成」、「設定」のような、アプリにグローバルな影響があるアクションを配置する必要があります。
+
+  <p>Android 2.3 以前のバージョン向けに開発している場合は、ユーザーは <em>Menu</em> ボタンを押してオプション メニューパネルを表示できます。
+</p>
+  <p>Android 3.0 以降の場合、オプション メニューのアイテムは、画面上のアクション アイテムとオーバーフロー オプションの組み合わせで<a href="{@docRoot}guide/topics/ui/actionbar.html">アクションバー</a>に表示されます。
+Android 3.0 からは、<em>Menu</em> ボタンが廃止されたため（一部の端末にはこのボタンがありません）、アクションバーを使ってアクションや他のオプションにアクセスできるよう移行する必要があります。
+
+
+</p>
+  <p><a href="#options-menu">オプション メニューの作成</a>のセクションをご覧ください。</p>
+    </dd>
+    
+  <dt><strong>コンテキスト メニューとコンテキスト アクション モード</strong></dt>
+  
+   <dd>コンテキスト メニューは、ユーザーが要素を長押しクリックするときに表示される<a href="#FloatingContextMenu">フローティング メニュー</a>です。
+ここでは、選択したコンテンツやコンテキスト フレームに影響するアクションが提供されます。
+
+  <p>Android 3.0 以降向けに開発している場合は、<a href="#CAB">コンテキスト アクション モード</a>を使って選択されたコンテンツでのアクションを有効にする必要があります。このモードでは、画面最上部にあるバーで選択されたコンテンツに影響するアクション アイテムが表示され、ユーザーは複数のアイテムを選択できます。
+
+</p>
+  <p><a href="#context-menu">コンテキスト メニューの作成</a>のセクションをご覧ください。</p>
+</dd>
+    
+  <dt><strong>ポップアップ メニュー</strong></dt>
+    <dd>ポップアップ メニューでは、メニューを呼び出すビューに固定された縦方向のリストでアイテムが表示されます。
+特定のコンテンツに関連するアクションの概要を表示したり、コマンドの 2 番目の部分のオプションを表示したりする場合に適しています。
+ポップアップ メニューのアクションは対応するコンテンツに直接影響を<strong>与えない</strong>ようにしてください（そのためにコンテキスト アクションがあります）。
+
+ポップアップ メニューは、アクティビティのコンテンツ領域に関連する拡張されたアクション用です。
+
+  <p><a href="#PopupMenu">ポップアップ メニューの作成</a>のセクションをご覧ください。</p>
+</dd>
+</dl>
+
+
+
+<h2 id="xml">XML でのメニューの定義</h2>
+
+<p>Android では、すべてのメニュータイプに、メニュー アイテムを定義するための標準の XML 形式が提供されます。
+アクティビティのコードでメニューをビルドするのではなく、メニューとそのすべてのアイテムを XML <a href="{@docRoot}guide/topics/resources/menu-resource.html">メニュー リソース</a>で定義してください。
+その際、アクティビティやフラグメントでメニュー リソースをインフレートできます（{@link android.view.Menu} オブジェクトとして読み込む）。
+
+</p>
+
+<p>メニュー リソースを使うことは、次のような理由で優れた方法と言えます。</p>
+<ul>
+  <li>XML でメニュー構造の視覚化が簡単になる。</li>
+  <li>メニューのコンテンツを、アプリケーションの振る舞いコードと区別する。</li>
+  <li>別のプラットフォーム バージョン、画面サイズ、その他の構成用に、<a href="{@docRoot}guide/topics/resources/index.html">アプリリソース</a> フレームワークを活用して、代替のメニュー構成を作ることができる。
+</li>
+</ul>
+
+<p>メニューを定義するには、プロジェクトの <code>res/menu/</code> ディレクトリ内で XML ファイルを作成し、次の要素を含むメニューをビルドします。
+</p>
+<dl>
+  <dt><code>&lt;menu></code></dt>
+    <dd>メニュー アイテムのコンテナである {@link android.view.Menu} を定義します。<code>&lt;menu></code> 要素は、ファイルのルートノードである必要があります。また、1 つ以上の <code>&lt;item></code> と <code>&lt;group></code> 要素を持つことができます。
+
+</dd>
+
+  <dt><code>&lt;item></code></dt>
+    <dd>メニューで 1 つのアイテムを表示する {@link android.view.MenuItem} を作成します。この要素には、サブメニューを作成するために、ネストされた <code>&lt;menu></code> 要素を含めることができます。
+</dd>
+    
+  <dt><code>&lt;group></code></dt>
+    <dd>省略可能な {@code &lt;item&gt;} 要素の非表示コンテナ。メニュー アイテムでアクティブ状態や可視性のようなプロパティを共有できるよう、メニュー アイテムを分類できます。
+詳細については、<a href="#groups">メニュー グループの作成</a>のセクションをご覧ください。
+</dd>
+</dl>
+
+
+<p><code>game_menu.xml</code> という名前のメニュー例を次に示します。</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/new_game"
+          android:icon="@drawable/ic_new_game"
+          android:title="@string/new_game"
+          android:showAsAction="ifRoom"/&gt;
+    &lt;item android:id="@+id/help"
+          android:icon="@drawable/ic_help"
+          android:title="@string/help" /&gt;
+&lt;/menu&gt;
+</pre>
+
+<p><code>&lt;item></code> 要素では、アイテムの概観と動作を定義するために使用できるいくつかの属性がサポートされています。
+上記メニューのアイテムには、次の属性が含まれます。</p>
+
+<dl>
+  <dt>{@code android:id}</dt>
+    <dd>ユーザーがアイテムを選択するときに、アプリケーションがそのアイテムを認識できるようにする、アイテム固有のリソース ID。
+</dd>
+  <dt>{@code android:icon}</dt>
+    <dd>アイテムのアイコンとして使用するための、ドローアブルへの参照。</dd>
+  <dt>{@code android:title}</dt>
+    <dd>アイテムのタイトルとして使用するための、文字列への参照。</dd>
+  <dt>{@code android:showAsAction}</dt>
+    <dd>このアイテムが<a href="{@docRoot}guide/topics/ui/actionbar.html">アクションバー</a>のアクション アイテムとして、いつ、どのように表示される必要があるかを指定。</dd>
+</dl>
+
+<p>これらの属性は使用する必要のある最も重要なものですが、他にもさまざまな属性があります。サポートされているすべての属性については、「<a href="{@docRoot}guide/topics/resources/menu-resource.html">Menu Resource</a>」のドキュメントをご覧ください。
+</p>
+
+<p>サブメニューを除くすべてのメニューで、{@code &lt;item&gt;} の子として {@code &lt;menu&gt;} 要素を追加すると、アイテムにサブメニューを追加できます。
+PC アプリケーションのメニューバー（ファイル、編集、表示など）にあるアイテムのように、アプリケーションにトピックで分類できる多くの機能がある場合は、サブメニューが役立ちます。
+
+次に例を示します。</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/file"
+          android:title="@string/file" &gt;
+        &lt;!-- "file" submenu --&gt;
+        &lt;menu&gt;
+            &lt;item android:id="@+id/create_new"
+                  android:title="@string/create_new" /&gt;
+            &lt;item android:id="@+id/open"
+                  android:title="@string/open" /&gt;
+        &lt;/menu&gt;
+    &lt;/item&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>アクティビティでメニューを使うには、{@link android.view.MenuInflater#inflate(int,Menu)
+MenuInflater.inflate()} を使って、メニュー リソースをインフレートする（XML リソースをプログラム可能なオブジェクトに変換する）必要があります。
+次のセクションでは、各メニュー アイテムのメニューをインフレートする方法を説明します。
+</p>
+
+
+
+<h2 id="options-menu">オプション メニューの作成</h2>
+
+<div class="figure" style="width:200px;margin:0">
+  <img src="{@docRoot}images/options_menu.png" height="333" alt="" />
+  <p class="img-caption"><strong>図 1.</strong> Android 2.3 のブラウザでのオプション メニュー。
+</p>
+</div>
+
+<p>オプション メニューでは、「検索」、「メールの作成」、「設定」のような、現在のアクティビティ コンテキストに関連するアクションとその他のオプションを含める必要があります。
+</p>
+
+<p>オプション メニューのアイテムが画面上のどこに表示されるかは、開発対象のアプリケーションのバージョンによって異なります。
+</p>
+
+<ul>
+  <li><strong>Android 2.3.x（API レベル 10）以前</strong> 向けにアプリケーションを開発した場合、ユーザーが <em>Menu</em> ボタンを押すときに、図 1 のように、オプション メニューのコンテンツが画面下部に表示されます。
+
+開いて最初に表示される部分は、最大 6 つのメニュー アイテムで構成されるアイコン メニューです。
+
+7 つ以上のメニュー アイテムが含まれている場合、Android では 6 番目以降のアイテムがオーバーフロー メニューに配置されます。それらのアイテムは、<em>もっと見る</em> を選択して開くことができます。
+
+</li>
+
+  <li><strong>Android 3.0（API レベル 11）以降</strong>向けにアプリケーションを開発した場合、オプション メニューのアイテムは<a href="{@docRoot}guide/topics/ui/actionbar.html">アクションバー</a>に表示されます。
+デフォルトでは、システムによってアクション オーバーフローにすべてのアイテムが配置され、ユーザーはアクションバー右端にあるアクション オーバーフロー アイコンを使ってそのアイテムを表示できます。端末に <em>Menu</em> ボタンがある場合はそのボタンを押して表示できます。
+
+重要なアクションにすみやかにアクセスできるようにするには、対応する {@code &lt;item&gt;} 要素に {@code android:showAsAction="ifRoom"} を追加して、いくつかのアイテムをアクションバーに表示させるようプロモートできます（図 2を参照）。
+
+
+
+ <p>アクション アイテムと他のアクションバーの動作の詳細については、「<a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a>」のガイドをご覧ください。 </p>
+<p class="note"><strong>注:</strong> Android 3.0 以降向けに開発して<em>いない</em>場合でも、同様の効果のために、自分のアクションバー レイアウトをビルドできます。
+アクションバー付きで以前のバージョンの Android をサポートする方法の一例については、<a href="{@docRoot}resources/samples/ActionBarCompat/index.html">アクションバーの互換性</a>のサンプルをご覧ください。
+
+</p>
+</li>
+</ul>
+
+<img src="{@docRoot}images/ui/actionbar.png" alt="" />
+<p class="img-caption"><strong>図 2.</strong> ナビゲーション タブ、カメラ アクション アイテム、アクション オーバーフロー ボタンが表示されている <a href="{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb Gallery</a> アプリのアクションバー。
+</p>
+
+<p>{@link android.app.Activity} サブクラスや {@link android.app.Fragment} サブクラスのいずれかからオプション メニューのアイテムを宣言できます。
+アクティビティとフラグメントの両方でオプション メニューのアイテムを宣言する場合、それらは UI に統合されます。まず、アクティビティのアイテムが表示され、次にアクティビティに各フラグメントが追加される順序で各フラグメントのアイテムが表示されます。
+
+
+必要に応じて、移動する必要のある各 {@code &lt;item&gt;} で {@code android:orderInCategory} 属性を使ってメニュー アイテムの順序を並べ替えることができます。
+</p>
+
+<p>アクティビティのオプション メニューを指定するには、{@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} をオーバーライドします（フラグメントは独自の {@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()} コールバックを提供）。
+このメソッドでは、メニュー リソース（<a href="#xml">XML で定義</a>）をコールバックで提供される {@link
+android.view.Menu} にインフレートできます。
+次に例を示します。</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu) {
+    MenuInflater inflater = {@link android.app.Activity#getMenuInflater()};
+    inflater.inflate(R.menu.game_menu, menu);
+    return true;
+}
+</pre>
+
+<p>{@link android.view.Menu#add(int,int,int,int)
+add()} を使ってメニュー アイテムを追加し、{@link android.view.MenuItem} API でそのプロパティを修正するために、{@link android.view.Menu#findItem findItem()} でアイテムを取得することもできます。
+</p>
+
+<p>Android 2.3.x 以前向けにアプリケーションを開発した場合、システムは {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} を呼び出し、ユーザーが初めてそのメニューを開いたときにオプション メニューが作成されます。
+Android 3.0 以降向けに開発した場合、アクティビティの開始時にシステムが {@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} を呼び出し、アクションバーにアイテムが表示されるようにします。
+
+</p>
+
+
+
+<h3 id="RespondingOptionsMenu">クリック イベントを処理する</h3>
+
+<p>ユーザーがオプション メニューからアイテムを選択すると（アクションバーのアクション アイテムを含む）、アクティビティの {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} メソッドが呼び出されます。
+このメソッドでは、選択された {@link android.view.MenuItem} が渡されます。{@link android.view.MenuItem#getItemId()} を呼び出してアイテムを識別できます。これにより、メニュー アイテムに対して一意の ID が返されます（メニュー リソースで {@code android:id} 属性を定義するか、{@link android.view.Menu#add(int,int,int,int) add()} メソッドに指定された整数で）。
+
+
+この ID を既知のメニュー アイテムと突き合わせて適切なアクションを実行できます。
+次に例を示します。</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    // Handle item selection
+    switch (item.getItemId()) {
+        case R.id.new_game:
+            newGame();
+            return true;
+        case R.id.help:
+            showHelp();
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>メニュー アイテムを正常に処理する場合、{@code true} を返します。メニュー アイテムを処理しない場合は、{@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} のスーパークラスの実装を呼び出す必要があります（デフォルトの実装では fause が返されます）。
+
+</p>
+
+<p>アクティビティにフラグメントが含まれる場合は、システムはまずアクティビティに対して {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} を呼び出し、次に {@code true} が返されるまで、またはすべてのフラグメントが呼び出されるまで、各フラグメントが追加された順序で、各フラグメントに対して呼び出します。
+
+</p>
+
+<p class="note"><strong>ヒント:</strong> Android 3.0 では、{@code android:onClick} 属性を使って、メニュー アイテムのクリックでの動作を XML で定義できます。
+その属性値は、メニューを使ってアクティビティによって定義されるメソッド名である必要があります。
+そのメソッドは、パブリックであり、1 つの {@link android.view.MenuItem} パラメータを使用できる必要があります。システムがこのメソッドを呼び出すと、選択したメニュー アイテムが渡されます。
+
+詳細と例については、「<a href="{@docRoot}guide/topics/resources/menu-resource.html">Menu Resource</a>」のドキュメントをご覧ください。</p>
+
+<p class="note"><strong>ヒント:</strong> アプリケーションに複数のアクティビティが含まれていて、その一部で同じオプション メニューが提供されている場合、{@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} と {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} メソッドのみを実装するアクティビティを作成することを検討します。
+
+その後、同じオプション メニューを共有する必要のある各アクティビティのこのクラスを拡張します。
+この方法で、メニューの動作を継承するメニュー アクションとそれぞれの子クラスを処理するためのコードを 1 セットで管理できます。子孫アクティビティの 1 つにメニュー アイテムを追加する場合は、そのアクティビティの {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} をオーバーライドします。
+
+
+元のメニュー アイテムが作成されるように、{@code super.onCreateOptionsMenu(menu)} を呼び出し、{@link
+android.view.Menu#add(int,int,int,int) menu.add()} で新しいメニュー アイテムを追加します。
+各メニュー アイテムのスーパークラスの行動をオーバーライドすることもできます。
+</p>
+
+
+<h3 id="ChangingTheMenu">実行時におけるメニュー アイテムの変更</h3>
+
+<p>システムが {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} を呼び出した後、入力する {@link android.view.Menu} のインスタンスは残り、何らかの理由でメニューが無効にならない限り、{@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} をもう一度呼び出すことはありません。
+
+ただし、初期のメニュー状態を作成し、アクティビティのライフサイクル中に変更しないという目的の場合に限って、{@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} を使用する必要があります。
+</p>
+
+<p>アクティビティのライフサイクル中に発生するイベントに基づいてオプション メニューを変更する場合は、{@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()} メソッドでそれを実行できます。
+
+このメソッドは、現在存在している {@link android.view.Menu} オブジェクトを渡し、それを編集（アイテムの追加、削除、無効化など）できるようにします。
+
+（フラグメントでも {@link
+android.app.Fragment#onPrepareOptionsMenu onPrepareOptionsMenu()} コールバックが提供されます）。</p>
+
+<p>Android 2.3.x 以前では、ユーザーが <em>Menu</em> ボタンを押してオプション メニューを開くたびに、システムによって {@link
+android.app.Activity#onPrepareOptionsMenu(Menu)
+onPrepareOptionsMenu()} が呼び出されます。
+</p>
+
+<p>Android 3.0 以降では、メニュー アイテムがアクションバーに表示されるときに、オプション メニューが常に開かれるとみなされます。
+イベントが発生し、メニューをアップデートするときは、{@link android.app.Activity#invalidateOptionsMenu invalidateOptionsMenu()} を呼び出して、システムが {@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()} を呼び出すようリクエストする必要があります。
+
+</p>
+
+<p class="note"><strong>注:</strong> 現在フォーカスされている {@link android.view.View} に基づいてオプション メニューでアイテムを変更しないでください。
+
+タッチモードの場合（ユーザーがトラックボールやリモコンの矢印ボタンを使うとき）、ビューはフォーカスを取得できないため、オプション メニューのアイテム変更のベースとしてフォーカスを使用しないでください。
+
+{@link
+android.view.View} に状況依存のメニュー アイテムを提供する場合は、<a href="#context-menu">コンテキスト メニュー</a>を使います。</p>
+
+
+
+
+<h2 id="context-menu">コンテキスト メニューの作成</h2>
+
+<div class="figure" style="width:420px;margin-top:-1em">
+  <img src="{@docRoot}images/ui/menu-context.png" alt="" />
+  <p class="img-caption"><strong>図 3.</strong> フローティング コンテキスト メニュー（左）とコンテキスト アクションバー（右）のスクリーンショット
+</p>
+</div>
+
+<p>コンテキスト メニューでは、UI の特定のアイテムやコンテキスト フレームに影響するアクションが提供されます。どのビューでもコンテキスト メニューを提供できますが、ほとんどの場合は、{@link
+android.widget.ListView}、{@link android.widget.GridView}、各アイテムでユーザーが直接実行できるその他のビュー コレクションのアイテムに使用されます。
+
+</p>
+
+<p>コンテキスト アクションを提供するには次の 2 つの方法があります。</p>
+<ul>
+  <li><a href="#FloatingContextMenu">フローティング コンテキスト メニュー</a>で。メニューは、ユーザーが長押しクリックする（押したままにする）と、コンテキスト メニューのサポートを宣言するビュー上で、メニュー アイテムのフローティング リストとして表示されます。
+
+ユーザーは、一度に 1 つのアイテムでコンテキスト アクションを実行できます。
+</li>
+
+  <li><a href="#CAB">コンテキスト アクション モード</a>で。このモードは、選択されたアイテムに影響するアクション アイテムと一緒に画面最上部に<em>コンテキスト アクションバー</em>を表示する {@link android.view.ActionMode} のシステム実装です。
+
+このモードがアクティブなとき、ユーザーは一度に複数のアイテムでアクションを実行できます（アプリで許可されている場合）。
+</li>
+</ul>
+
+<p class="note"><strong>注:</strong> コンテキスト アクション モードは、Android 3.0（API レベル 11）以降で使用可能で、使用可能な場合にコンテキスト アクションを表示するのに適した方法です。
+
+アプリで 3.0 以前のバージョンをサポートする場合、その端末ではフローティング コンテキスト メニューを使う必要があります。
+</p>
+
+
+<h3 id="FloatingContextMenu">フローティング コンテキスト メニューの作成</h3>
+
+<p>フローティング コンテキスト メニューを提供するには: </p>
+<ol>
+  <li>{@link android.app.Activity#registerForContextMenu(View) registerForContextMenu()} を呼び出し、{@link android.view.View} を渡して、コンテキスト メニューに関連付ける必要のある {@link android.view.View} を登録します。
+
+
+  <p>アクティビティで {@link android.widget.ListView} や {@link android.widget.GridView} が使用され、各アイテムに同じコンテキスト メニューを提供する場合、{@link android.widget.ListView} や {@link android.widget.GridView} を {@link
+android.app.Activity#registerForContextMenu(View) registerForContextMenu()} に渡してコンテキスト メニューにすべてのアイテムを登録します。
+
+</p>
+</li>
+
+  <li>{@link android.app.Activity} や {@link android.app.Fragment} に {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()} メソッドを実装します。
+
+  <p>登録されたビューが長押しクリック イベントを受け取ると、システムは {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()} メソッドを呼び出します。
+通常、ここでメニュー リソースをインフレートして、メニュー アイテムを定義します。次に例を示します。
+</p>
+<pre>
+&#64;Override
+public void onCreateContextMenu(ContextMenu menu, View v,
+                                ContextMenuInfo menuInfo) {
+    super.onCreateContextMenu(menu, v, menuInfo);
+    MenuInflater inflater = getMenuInflater();
+    inflater.inflate(R.menu.context_menu, menu);
+}
+</pre>
+
+<p>{@link android.view.MenuInflater} では、<a href="{@docRoot}guide/topics/resources/menu-resource.html">メニュー リソース</a>からコンテキスト メニューをインフレートできます。そのコールバック メソッド パラメータには、ユーザーが選択した {@link android.view.View} と選択されたアイテムに関する追加情報を提供する {@link android.view.ContextMenu.ContextMenuInfo} オブジェクトが含まれます。
+
+
+アクティビティに、それぞれ別のコンテキスト メニューを提供する複数のビューがある場合、これらのパラメータを使ってインフレートするコンテキスト メニューを決定できます。
+
+</p>
+</li>
+
+<li>{@link android.app.Activity#onContextItemSelected(MenuItem)
+onContextItemSelected()} を実装します。
+  <p>ユーザーがメニュー アイテムを選択すると、システムによってこのメソッドが呼び出され、適切なアクションを実行できるようになります。
+次に例を示します。</p>
+
+<pre>
+&#64;Override
+public boolean onContextItemSelected(MenuItem item) {
+    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
+    switch (item.getItemId()) {
+        case R.id.edit:
+            editNote(info.id);
+            return true;
+        case R.id.delete:
+            deleteNote(info.id);
+            return true;
+        default:
+            return super.onContextItemSelected(item);
+    }
+}
+</pre>
+
+<p>{@link android.view.MenuItem#getItemId()} メソッドは、選択されたメニュー アイテムの ID を照会します。<a href="#xml">XML でメニューを定義する</a>のセクションで説明されているように、{@code
+android:id} 属性を使って XML で各メニュー アイテムを割り当てる必要があります。
+
+</p>
+
+<p>メニュー アイテムを正常に処理する場合、{@code true} を返します。メニュー アイテムを処理しない場合は、スーパークラスの実装にメニュー アイテムを渡す必要があります。
+アクティビティにフラグメントが含まれる場合、そのアクティビティは最初にこのコールバックを受け取ります。
+未処理のときにスーパークラスを呼び出すと、システムは {@code true} や {@code false} が返されるまで、各フラグメントのそれぞれのコールバック メソッドに 1 つずつ、各フラグメントが追加された順序でイベントを渡します。
+
+{@link android.app.Activity} と {@code android.app.Fragment} のデフォルトの実装では {@code
+false} が返されるため、未処理のときは常にスーパークラスを呼び出す必要があります。
+</p>
+</li>
+</ol>
+
+
+<h3 id="CAB">コンテキスト アクション モードの使用</h3>
+
+<p>コンテキスト アクション モードは、{@link android.view.ActionMode} のシステム実装で、ユーザーによるコンテキスト アクション実行のための操作に焦点が置かれています。
+ユーザーがアイテムを選択してこのモードを有効にすると、画面の最上部に<em>コンテキスト アクションバー</em>が表示され、現在選択中のアイテムで実行できるアクションが表示されます。
+
+このモードが有効な間は、ユーザーは複数のアイテムを選択したり（許可されている場合）、アイテムを選択解除したり、アクティビティ内を移動し続けたり（許可されている範囲内で）することができます。
+
+ユーザーがすべてのアイテムの選択を解除したり、Back ボタンをしたり、またはバーの左端で <em>Done</em> アクションを選択したりすると、このアクション モードは無効になり、コンテキスト アクションバーは表示されなくなります。
+
+</p>
+
+<p class="note"><strong>注:</strong> コンテキスト アクションバーを<a href="{@docRoot}guide/topics/ui/actionbar.html">アクションバー</a>と関連付ける必要はありません。
+コンテキスト アクションバーが、視覚的にアクションバーの位置にかかる場合でも、個別に操作できます。
+
+</p>
+
+<p>Android 3.0（API レベル 11）以降向けに開発中の場合、通常は<a href="#FloatingContextMenu">フローティング コンテキスト メニュー</a>ではなく、コンテキスト アクション モードを使ってコンテキスト アクションを表示します。
+</p>
+
+<p>コンテキスト アクションを提供するビューでは、通常は次の 2 つのイベントのいずれかまたは両方で、コンテキスト アクションを呼び出す必要があります。
+</p>
+<ul>
+  <li>ユーザーがビューで長押しクリックする。</li>
+  <li>ユーザーがチェックボックスまたは同様の UI コンポーネントをビュー内で選択する。</li>
+</ul>
+
+<p>アプリケーションがどのようにコンテキスト アクション モードを呼び出して各アクションの動作を定義するかは、デザインによって異なります。
+基本的に次の 2 つのデザインがあります。</p>
+<ul>
+  <li>個別の任意のビューでのコンテキスト アクション用。</li>
+  <li>{@link
+android.widget.ListView} または {@link android.widget.GridView} のアイテム グループでのバッチ コンテキスト アクション用（ユーザーが複数のアイテムを選択し、そのすべてにアクションを実行できるようにする）。
+</li>
+</ul>
+
+<p>次のセクションでは、各シナリオに必要な設定について説明します。</p>
+
+
+<h4 id="CABforViews">個別のビューに対してコンテキスト アクション モードを有効にする</h4>
+
+<p>ユーザーが特定のビューを選択するときにのみ、コンテキスト アクション モードを呼び出すには、次のことを行う必要があります。
+</p>
+<ol>
+  <li>{@link android.view.ActionMode.Callback} インターフェースを実装します。このコールバック メソッドでは、コンテキスト アクションバーに対してアクションを指定して、アクション アイテムでのイベント クリックに応答し、アクション モードのその他のライフサイクル イベントを処理できます。
+
+</li>
+  <li>ユーザーがビューを長押しクリックしたときなど、バーを表示するときに、{@link android.app.Activity#startActionMode startActionMode()} を呼び出します。
+</li>
+</ol>
+
+<p>次に例を示します。</p>
+
+<ol>
+  <li>{@link android.view.ActionMode.Callback ActionMode.Callback} インターフェースを実装します。
+<pre>
+private ActionMode.Callback mActionModeCallback = new ActionMode.Callback() {
+
+    // Called when the action mode is created; startActionMode() was called
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate a menu resource providing context menu items
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context_menu, menu);
+        return true;
+    }
+
+    // Called each time the action mode is shown. Always called after onCreateActionMode, but
+    // may be called multiple times if the mode is invalidated.
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        return false; // Return false if nothing is done
+    }
+
+    // Called when the user selects a contextual menu item
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        switch (item.getItemId()) {
+            case R.id.menu_share:
+                shareCurrentItem();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    // Called when the user exits the action mode
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        mActionMode = null;
+    }
+};
+</pre>
+
+<p>これらのイベント コールバックは、これらのそれぞれもイベントに関連する {@link
+android.view.ActionMode} オブジェクトを渡すこと以外は、<a href="#options-menu">オプション メニュー</a>のコールバックとほぼ同じです。{@link
+android.view.ActionMode} API を使って、{@link android.view.ActionMode#setTitle setTitle()} と {@link
+android.view.ActionMode#setSubtitle setSubtitle()}（選択されているアイテム数を表示するのに役立つ）でタイトルとサブタイトルを変更するなど、CAB にさまざまな変更を行うことができます。
+
+</p>
+
+<p>また、上記のサンプルでは、アクション モードが破棄されるときに {@code mActionMode} 変数が null に設定されます。
+次のステップでは、それがどのように初期化され、アクティビティやフラグメントでどのようにメンバー変数を保存するのが役立つかについて説明します。
+</p>
+</li>
+
+  <li>{@link android.app.Activity#startActionMode startActionMode()} を呼び出して、{@link
+android.view.View} で長押しクリックに応答するときなど、適切な時にコンテキスト アクション モードを有効にします。
+</p>
+
+<pre>
+someView.setOnLongClickListener(new View.OnLongClickListener() {
+    // Called when the user long-clicks on someView
+    public boolean onLongClick(View view) {
+        if (mActionMode != null) {
+            return false;
+        }
+
+        // Start the CAB using the ActionMode.Callback defined above
+        mActionMode = getActivity().startActionMode(mActionModeCallback);
+        view.setSelected(true);
+        return true;
+    }
+});
+</pre>
+
+<p>{@link android.app.Activity#startActionMode startActionMode()} を呼び出すと、システムは作成された {@link android.view.ActionMode} を返します。
+メンバー変数でこれを保存すると、その他のイベントに応じてコンテキスト アクションバーを変更できます。
+上記の例では、{@link android.view.ActionMode} を使って、{@link android.view.ActionMode} インスタンスがアクティブな状態である場合に、アクション モードを開始する前にメンバーが null であるかどうかを確認して、そのインスタンスが再作成されないようにしています。
+
+
+</p>
+</li>
+</ol>
+
+
+
+<h4 id="CABforListView">バッチ コンテキスト アクションを ListView または GridView で有効にする</h4>
+
+<p>{@link android.widget.ListView} や {@link
+android.widget.GridView}（または {@link android.widget.AbsListView} の別の拡張）にアイテムのコレクションがあり、ユーザーがバッチ アクションを実行できるようにする場合は、次のことを行う必要があります。
+</p>
+
+<ul>
+  <li>{@link android.widget.AbsListView.MultiChoiceModeListener} インターフェースを実装して、{@link android.widget.AbsListView#setMultiChoiceModeListener
+setMultiChoiceModeListener()} で ViewGroup にそれを設定する。
+リスナのコールバック メソッドでは、コンテキスト アクションバーに対してアクションを指定して、アクション アイテムでのイベント クリックに応答し、{@link android.view.ActionMode.Callback} インターフェースから継承されるその他のコールバックを処理できます。
+
+</li>
+
+  <li>{@link
+android.widget.AbsListView#CHOICE_MODE_MULTIPLE_MODAL} 引数で {@link android.widget.AbsListView#setChoiceMode setChoiceMode()} を呼び出す。</li>
+</ul>
+
+<p>次に例を示します。</p>
+
+<pre>
+ListView listView = getListView();
+listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
+listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
+
+    &#64;Override
+    public void onItemCheckedStateChanged(ActionMode mode, int position,
+                                          long id, boolean checked) {
+        // Here you can do something when items are selected/de-selected,
+        // such as update the title in the CAB
+    }
+
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        // Respond to clicks on the actions in the CAB
+        switch (item.getItemId()) {
+            case R.id.menu_delete:
+                deleteSelectedItems();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate the menu for the CAB
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context, menu);
+        return true;
+    }
+
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        // Here you can make any necessary updates to the activity when
+        // the CAB is removed. By default, selected items are deselected/unchecked.
+    }
+
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        // Here you can perform updates to the CAB due to
+        // an {@link android.view.ActionMode#invalidate} request
+        return false;
+    }
+});
+</pre>
+
+<p>これだけです。これで、ユーザーが長押しクリックでアイテムを選択すると、システムは {@link
+android.widget.AbsListView.MultiChoiceModeListener#onCreateActionMode onCreateActionMode()} メソッドを呼び出して、特定のアクションでコンテキスト アクションバーを表示するようになります。
+コンテキスト アクションバーが表示されている間は、追加のアイテムを選択できます。
+</p>
+
+<p>コンテキスト アクションによって一般的なアクション アイテムが提供されるとき、ユーザーが長押しクリックの動作に気付かない可能性があることを考慮して、アイテムを選択できるようにチェックボックスや同様の UI 要素を追加したい場合もあります。
+
+ユーザーがチェックボックスをオンにするとき、{@link android.widget.AbsListView#setItemChecked setItemChecked()} でオンにされた状態にそれぞれのリストアイテムを設定して、コンテキスト アクション モードを呼び出すことができます。
+
+</p>
+
+
+
+
+<h2 id="PopupMenu">ポップアップ メニューの作成</h2>
+
+<div class="figure" style="width:220px">
+<img src="{@docRoot}images/ui/popupmenu.png" alt="" />
+<p><strong>図 4.</strong>右上のオーバーフローボタンに固定された Gmail アプリのポップアップ メニュー。
+</p>
+</div>
+
+<p>{@link android.widget.PopupMenu} は {@link android.view.View} に固定されるモーダル メニューです。スペースがある場合にはアンカービューの下に、スペースがない場合はビューの上に表示されます。
+次の場合に役立ちます。</p>
+<ul>
+  <li>特定のコンテンツに<em>関連する</em>アクションにオーバーフロー スタイルのメニューを提供する（図 4 にある Gmail のメールヘッダーなど）。
+
+    <p class="note"><strong>注:</strong> これは、通常は選択したコンテンツに<em>影響する</em>アクション用であるコンテキスト メニューとは異なります。
+選択したコンテンツに影響するアクションには、<a href="#CAB">コンテキスト アクション モード</a>や<a href="#FloatingContextMenu">フローティング コンテキスト メニュー</a>を使います。
+</p></li>
+  <li>コマンド センテンスの 2 番目の部分を提供する（別の「追加」オプションを含むポップアップ メニューを生成する「追加」とマークされたボタンなど）。
+</li>
+  <li>固定選択を保持しない {@link android.widget.Spinner} のようなドロップダウンを提供する。
+</li>
+</ul>
+
+
+<p class="note"><strong>注:</strong> {@link android.widget.PopupMenu} は API レベル 11 以降で使用できます。
+</p>
+
+<p><a href="#xml">XML でメニューを定義する</a>場合の、ポップアップ メニューの表示方法について、次に示します。</p>
+<ol>
+  <li>そのコンストラクタを使って {@link android.widget.PopupMenu} のインスタンスを作成します。これにより、メニューが固定される必要のある、現在のアプリケーションの {@link android.content.Context} と {@link android.view.View} が取得されます。
+
+</li>
+  <li>{@link android.view.MenuInflater} を使って、{@link
+android.widget.PopupMenu#getMenu() PopupMenu.getMenu()} によって返される {@link
+android.view.Menu} オブジェクトにメニュー リソースをインフレートします。API レベル 14 以降では、代わりに {@link android.widget.PopupMenu#inflate PopupMenu.inflate()} を使うことができます。
+</li>
+  <li>{@link android.widget.PopupMenu#show() PopupMenu.show()} を呼び出します。</li>
+</ol>
+
+<p>ポップアップ メニューを表示する {@link android.R.attr#onClick android:onClick} 属性を含むボタンの一例を以下に示します。
+</p>
+
+<pre>
+&lt;ImageButton
+    android:layout_width="wrap_content" 
+    android:layout_height="wrap_content" 
+    android:src="@drawable/ic_overflow_holo_dark"
+    android:contentDescription="@string/descr_overflow_button"
+    android:onClick="showPopup" />
+</pre>
+
+<p>アクティビティでは、次のようにポップアップ メニューが表示されます。</p>
+
+<pre>
+public void showPopup(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+    MenuInflater inflater = popup.getMenuInflater();
+    inflater.inflate(R.menu.actions, popup.getMenu());
+    popup.show();
+}
+</pre>
+
+<p>API レベル 14 以降では、{@link
+android.widget.PopupMenu#inflate PopupMenu.inflate()} でメニューをインフレートする 2 行を組み合わせることができます。</p>
+
+<p>ユーザーがアイテムを選択するか、メニュー領域外をタップすると、メニューが閉じます。
+{@link
+android.widget.PopupMenu.OnDismissListener} を使って dismiss イベントをリッスンできます。</p>
+
+<h3 id="PopupEvents">クリック イベントを処理する</h3>
+
+<p>ユーザーがアイテム メニューを選択するときにアクションを実行するには、{@link
+android.widget.PopupMenu.OnMenuItemClickListener} インターフェースを実装し、{@link android.widget.PopupMenu#setOnMenuItemClickListener
+setOnMenuItemclickListener()} を呼び出して {@link
+android.widget.PopupMenu} でそれを登録する必要があります。
+ユーザーがアイテムを選択すると、インターフェースで {@link
+android.widget.PopupMenu.OnMenuItemClickListener#onMenuItemClick onMenuItemClick()} コールバックが呼び出されます。
+</p>
+
+<p>次に例を示します。</p>
+
+<pre>
+public void showMenu(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+
+    // This activity implements OnMenuItemClickListener
+    popup.setOnMenuItemClickListener(this);
+    popup.inflate(R.menu.actions);
+    popup.show();
+}
+
+&#64;Override
+public boolean onMenuItemClick(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.archive:
+            archive(item);
+            return true;
+        case R.id.delete:
+            delete(item);
+            return true;
+        default:
+            return false;
+    }
+}
+</pre>
+
+
+<h2 id="groups">メニュー グループの作成</h2>
+
+<p>メニュー グループは、特定の特徴を共有するメニュー アイテムのコレクションです。グループを使って次のことを実行できます。
+</p>
+<ul>
+  <li>{@link android.view.Menu#setGroupVisible(int,boolean)
+setGroupVisible()} ですべてのアイテムを表示または非表示にする</li>
+  <li>{@link android.view.Menu#setGroupEnabled(int,boolean)
+setGroupEnabled()} ですべてのアイテムを有効または無効にする</li>
+  <li>{@link
+android.view.Menu#setGroupCheckable(int,boolean,boolean) setGroupCheckable()} ですべてのアイテムをオンにできるかどうかを指定する</li>
+</ul>
+
+<p>メニュー リソースの {@code &lt;group&gt;} 要素内で {@code &lt;item&gt;} 要素をネストするか、{@link
+android.view.Menu#add(int,int,int,int) add()} メソッドでグループ ID を指定して、グループを作成できます。
+</p>
+
+<p>グループを含むメニュー リソースの一例を次に示します。</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/menu_save"
+          android:icon="@drawable/menu_save"
+          android:title="@string/menu_save" /&gt;
+    &lt;!-- menu group --&gt;
+    &lt;group android:id="@+id/group_delete"&gt;
+        &lt;item android:id="@+id/menu_archive"
+              android:title="@string/menu_archive" /&gt;
+        &lt;item android:id="@+id/menu_delete"
+              android:title="@string/menu_delete" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>グループ内のアイテムは、最初のアイテムと同じレベルで表示されます（メニューの 3 つのアイテムすべてが兄弟）。
+ただし、グループ ID を参照するか、上記のメソッドを使って、グループ内の 2 つのアイテムの特徴を変更できます。
+システムが、グループ化されたアイテムを分けることもありません。
+たとえば、各アイテムに {@code
+android:showAsAction="ifRoom"} を宣言する場合、その両方がアクションバーまたはアクション オーバーフローに表示されます。
+</p>
+
+
+<h3 id="checkable">オンにできるメニュー アイテムの使用</h3>
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/radio_buttons.png" height="333" alt="" />
+  <p class="img-caption"><strong>図 5.</strong> オンにできるアイテムを含むサブメニューのスクリーンショット。
+</p>
+</div>
+
+<p>メニューは、オプションのオンとオフを切り替えるインターフェースとして役立ちます。スタンドアロンのオプションにはチェックボックスを、相互に排他的なオプションのグループにはラジオボタンを使います。
+
+図 5 に、ラジオボタン付きのオンにできるアイテムを含むサブメニューを示します。
+</p>
+
+<p class="note"><strong>注:</strong> アイコン メニューのメニュー アイテム（オプション メニューから）ではチェックボックスやラジオボタンを表示できません。
+アイコン メニューのアイテムをオンにできるようにする場合、状態が変わるごとにアイコンやテキストを入れ替えて、オンにされた状態を手動で示す必要があります。
+
+</p>
+
+<p>個々のメニュー アイテムには {@code &lt;item&gt;} 要素の {@code
+android:checkable} 属性を、グループ全体には {@code &lt;group&gt;} 要素の {@code android:checkableBehavior} 属性を使って、オンにできる動作を定義できます。
+たとえば、このメニュー グループのすべてのアイテムはラジオボタンでオンにできます。
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;group android:checkableBehavior="single"&gt;
+        &lt;item android:id="@+id/red"
+              android:title="@string/red" /&gt;
+        &lt;item android:id="@+id/blue"
+              android:title="@string/blue" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>{@code android:checkableBehavior} 属性では、次のいずれかが許容されます。
+<dl>
+  <dt>{@code single}</dt>
+    <dd>グループから 1 つのアイテムのみをオンにできる（ラジオボタン）</dd>
+  <dt>{@code all}</dt>
+    <dd>すべてのアイテムをオンにできる（チェックボックス）</dd>
+  <dt>{@code none}</dt>
+    <dd>どのアイテムもオンにできない</dd>
+</dl>
+
+<p>{@code &lt;item&gt;} 要素の {@code android:checked} 属性を使って、デフォルトのオンにされた状態をアイテムに適用でき、{@link
+android.view.MenuItem#setChecked(boolean) setChecked()} メソッドを使ってコード内でそれを変更できます。
+</p>
+
+<p>オンにできるアイテムが選択されると、システムは {@link android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} のような、それぞれの item-selected コールバック メソッドを呼び出します。
+チェックボックスやラジオボタンによって自動的にその状態が変わることはないため、ここでチェックボックスの状態を設定する必要があります。
+
+{@link android.view.MenuItem#isChecked()} で、アイテムの現在の状態（ユーザーが選択する前の状態）を照会できます。その後、{@link android.view.MenuItem#setChecked(boolean) setChecked()} でオンにされた状態を設定します。
+
+次に例を示します。</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.vibrate:
+        case R.id.dont_vibrate:
+            if (item.isChecked()) item.setChecked(false);
+            else item.setChecked(true);
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>この方法でオンにされた状態を設定しない場合には、アイテム（チェックボックスまたはラジオボタン）の表示状態はユーザーがオンにしたときに変更されません。
+
+状態を設定すると、アクティビティはアイテムのオンにされた状態を維持して、ユーザーが後でメニューを開いたときに、開発者が設定したオンにされた状態が表示されるようになります。
+
+</p>
+
+<p class="note"><strong>注:</strong> オンにできるメニュー アイテムは、セッション単位ベースのみでの使用を意図したもので、アプリケーションが破棄された後は、保存されません。
+
+ユーザー用に保存するアプリケーション設定がある場合は、<a href="{@docRoot}guide/topics/data/data-storage.html#pref">共有のプリファレンス</a>を使ってデータを保存してください。
+</p>
+
+
+
+<h2 id="intents">インテントに基づくメニュー アイテムの追加</h2>
+
+<p>{@link android.content.Intent} を使ってメニュー アイテムでアクティビティが起動されるようにしたい場合もあります（自分のアプリケーションのアクティビティであるか、別のアプリケーションのアクティビティであるかにかかわらず）。
+使用するインテントがわかっていて、インテントを開始する必要のある特定のメニュー アイテムがある場合は、適切な on-item-selected コールバック メソッド（{@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} のような）中に、{@link android.app.Activity#startActivity(Intent) startActivity()} でインテントを実行できます。
+
+
+</p>
+
+<p>ただし、ユーザーの端末にインテントを処理するアプリケーションが含まれているかどうかが不明な場合、それを呼び出すメニュー アイテムを追加すると、そのインテントによってアクティビティが解決されないためにメニュー アイテムが機能しなくなることがあります。
+
+
+これを解決するために、Android では、インテントを処理する端末で Android によってアクティビティが検出されるときに、メニュー アイテムがメニューに動的に追加されるようにします。
+</p>
+
+<p>インテントを受け入れる使用可能なアクティビティに基づいてメニュー アイテムを追加するには: </p>
+<ol>
+  <li>{@link android.content.Intent#CATEGORY_ALTERNATIVE} や {@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} カテゴリでインテントを定義します。その他の要件も必要です。
+
+</li>
+  <li>{@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+Menu.addIntentOptions()} を呼び出します。その際、Android によって、インテントを実行できるアプリケーションが検索され、メニューにそのアプリケーションが追加されます。
+</li>
+</ol>
+
+<p>インテントを満たすアプリケーションがインストールされていない場合、メニュー アイテムは追加されません。
+</p>
+
+<p class="note"><strong>注:</strong> {@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} は、現在画面で選択されている要素の処理に使われます。
+
+このため、{@link
+android.app.Activity#onCreateContextMenu(ContextMenu,View,ContextMenuInfo)
+onCreateContextMenu()} でメニューを作成するときにのみ、それが使われる必要があります。</p>
+
+<p>次に例を示します。</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu){
+    super.onCreateOptionsMenu(menu);
+
+    // Create an Intent that describes the requirements to fulfill, to be included
+    // in our menu. The offering app must include a category value of Intent.CATEGORY_ALTERNATIVE.
+    Intent intent = new Intent(null, dataUri);
+    intent.addCategory(Intent.CATEGORY_ALTERNATIVE);
+
+    // Search and populate the menu with acceptable offering applications.
+    menu.addIntentOptions(
+         R.id.intent_group,  // Menu group to which new items will be added
+         0,      // Unique item ID (none)
+         0,      // Order for the items (none)
+         this.getComponentName(),   // The current activity name
+         null,   // Specific items to place first (none)
+         intent, // Intent created above that describes our requirements
+         0,      // Additional flags to control items (none)
+         null);  // Array of MenuItems that correlate to specific items (none)
+
+    return true;
+}</pre>
+
+<p>定義されたインテントに一致するインテント フィルタが提供されていることを見つけた各アクティビティに対して、メニュー アイテムのタイトルにインテント フィルタの <code>android:label</code> の値を、メニュー アイテムのアイコンにアプリケーション アイコンを使って、メニュー アイテムが追加されます。
+
+{@link android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} メソッドによって、追加されたメニュー アイテム数が返されます。
+</p>
+
+<p class="note"><strong>注:</strong> {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} を呼び出すとき、最初の引数で指定されたメニュー グループによって、すべてのメニュー アイテムがオーバーライドされます。
+</p>
+
+
+<h3 id="AllowingToAdd">アクティビティを他のメニューに追加できるようにする</h3>
+
+<p>他のアプリケーションにアクティビティのサービスを提供して、アプリケーションを他のメニューに含めることができるようにすることもできます（前述の役割を逆にする）。
+</p>
+
+<p>他のアプリケーションのメニューに含まれるようにするには、通常どおりインテント フィルタを定義する必要がありますが、インテント フィルタのカテゴリに、{@link android.content.Intent#CATEGORY_ALTERNATIVE} や {@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} 値を含めるようにしてください。
+
+
+次に例を示します。</p>
+<pre>
+&lt;intent-filter label="&#64;string/resize_image">
+    ...
+    &lt;category android:name="android.intent.category.ALTERNATIVE" />
+    &lt;category android:name="android.intent.category.SELECTED_ALTERNATIVE" />
+    ...
+&lt;/intent-filter>
+</pre>
+
+<p>インテント フィルタの記述の詳細については、「<a href="/guide/components/intents-filters.html">インテントとインテント フィルタ</a>」をご覧ください。
+</p>
+
+<p>この方法を使ったサンプル アプリケーションについては、<a href="{@docRoot}resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html">Note Pad</a> のサンプルコードをご覧ください。
+
+</p>
diff --git a/docs/html-intl/intl/ja/guide/topics/ui/notifiers/notifications.jd b/docs/html-intl/intl/ja/guide/topics/ui/notifiers/notifications.jd
new file mode 100644
index 0000000..f341256
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/ui/notifiers/notifications.jd
@@ -0,0 +1,979 @@
+page.title=通知
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>本書の内容</h2>
+<ol>
+  <li><a href="#Design">設計上の考慮事項</a></li>
+  <li><a href="#CreateNotification">通知を作成する</a>
+    <ol>
+      <li><a href="#Required">必須通知コンテンツ</a></li>
+      <li><a href="#Optional">省略可能な通知コンテンツと設定</a></li>
+      <li><a href="#Actions">通知アクション</a></li>
+      <li><a href="#Priority">通知の優先度</a></li>
+      <li><a href="#SimpleNotification">簡単な通知を作成する</a></li>
+      <li><a href="#ApplyStyle">通知に拡張レイアウトを適用する</a></li>
+      <li><a href="#Compatibility">互換性を確保する</a></li>
+    </ol>
+  </li>
+  <li><a href="#Managing">通知を管理する</a>
+    <ol>
+      <li><a href="#Updating">通知を更新する</a></li>
+      <li><a href="#Removing">通知を削除する</a></li>
+    </ol>
+  </li>
+  <li><a href="#NotificationResponse">アクティビティの開始時にナビゲーションを維持する</a>
+    <ol>
+      <li><a href="#DirectEntry">通常のアクティビティの PendingIntent を設定する</a></li>
+      <li><a href="#ExtendedNotification">特殊なアクティビティの PendingIntent を設定する</a></li>
+    </ol>
+  </li>
+  <li><a href="#Progress">通知に進捗状況を表示する</a>
+    <ol>
+      <li><a href="#FixedProgress">範囲固定の進捗インジケーターを表示する</a></li>
+      <li><a href="#ActivityIndicator">進行中アクティビティ インジケーターを表示する</a></li>
+    </ol>
+  </li>
+  <li><a href="#metadata">通知メタデータ</a></li>
+  <li><a href="#Heads-up">ヘッドアップ通知</a></li>
+  <li><a href="#lockscreenNotification">ロック画面通知</a></li>
+    <ol>
+      <li><a href="#visibility">可視性を設定する</a></li>
+      <li><a href="#controllingMedia">ロック画面でのメディア再生をコントロールする</a></li>
+    </ol>
+  <li><a href="#CustomNotification">カスタム通知レイアウト</a></li>
+</ol>
+
+    <h2>キークラス</h2>
+    <ol>
+        <li>{@link android.app.NotificationManager}</li>
+        <li>{@link android.support.v4.app.NotificationCompat}</li>
+    </ol>
+    <h2>ビデオ</h2>
+    <ol>
+        <li>
+            <a href="http://www.youtube.com/watch?v=Yc8YrVc47TI&amp;feature=player_detailpage#t=1672s">Notifications in 4.1</a>
+
+        </li>
+    </ol>
+<h2>関連ドキュメント</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}design/patterns/notifications.html">Android Design: Notifications</a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    通知は、アプリケーションの通常の UI 以外で、ユーザーに表示できるメッセージです。システムが通知を発行通知すると、通知はまず<strong>通知エリア</strong>にアイコンで表示されます。
+
+通知の詳細を確認するには、ユーザーが<strong>通知ドロワー</strong>を開く必要があります。
+ドロワー通知エリアと通知ドロワーはどちらも、システムによって制御されているエリアであり、ユーザーはいつでも見ることができます。
+
+</p>
+<img id="figure1" src="{@docRoot}images/ui/notifications/notification_area.png" height="" alt="" />
+<p class="img-caption">
+    <strong>図 1.</strong> 通知エリアの通知。
+</p>
+<img id="figure2" src="{@docRoot}images/ui/notifications/notification_drawer.png" width="280px" alt="" />
+<p class="img-caption">
+    <strong>図 2.</strong> 通知ドロワーの通知。
+</p>
+
+<p class="note"><strong>注:</strong> 別途記載がある場合を除き、このガイドでは、バージョン 4 の <a href="{@docRoot}tools/support-library/index.html">サポート ライブラリ</a>の {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} クラスについて記述しています。クラス {@link android.app.Notification.Builder Notification.Builder} は、Android 3.0（API レベル 11）で追加されました。
+
+
+
+</p>
+
+<h2 id="Design">設計上の考慮事項</h2>
+
+<p>通知は、Android ユーザー インターフェースの重要なパーツであり、独自の設計ガイドラインが設けられています。Android 5.0 （API レベル 21）で導入されたマテリアル デザインの変更は特に重要です。詳細については、「<a href="{@docRoot}training/material/index.html">マテリアル デザイン</a>」をご覧ください。
+
+
+通知とその操作の設計方法については、<a href="{@docRoot}design/patterns/notifications.html">通知</a>設計ガイドをご覧ください。
+</p>
+
+<h2 id="CreateNotification">通知を作成する</h2>
+
+<p>通知のための UI 情報とアクションを、{@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} オブジェクトに指定します。通知自体を作成するには、{@link android.support.v4.app.NotificationCompat.Builder#build NotificationCompat.Builder.build()} を呼び出します。これにより、指定された UI 情報とアクションを含む {@link android.app.Notification} オブジェクトが返されます。
+
+
+
+通知を発行するには、{@link android.app.NotificationManager#notify NotificationManager.notify()} を呼び出して、この {@link android.app.Notification} オブジェクトをシステムに渡します。
+
+</p>
+
+<h3 id="Required">必須通知コンテンツ</h3>
+<p>
+    {@link android.app.Notification} オブジェクトの<em>必須</em>コンテンツは次のとおりです。
+</p>
+<ul>
+    <li>
+        小さなアイコン。{@link android.support.v4.app.NotificationCompat.Builder#setSmallIcon setSmallIcon()} で設定します。
+
+    </li>
+    <li>
+        タイトル。{@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()} で設定します。
+
+    </li>
+    <li>
+        詳細テキスト。{@link android.support.v4.app.NotificationCompat.Builder#setContentText setContentText()} で設定します。
+
+    </li>
+</ul>
+<h3 id="Optional">省略可能な通知コンテンツと設定</h3>
+<p>
+    上記以外のすべての通知設定とコンテンツは省略可能です。省略可能な通知設定とコンテンツについては、{@link android.support.v4.app.NotificationCompat.Builder} のリファレンスをご覧ください。
+
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Actions">通知アクション</h3>
+<p>
+    通知アクションは省略可能ですが、通知には、少なくとも 1 つのアクションを追加する必要があります。
+    アクションは、ユーザーが通知からアプリケーションの {@link android.app.Activity} に直接移動することを可能にします。ユーザーは、移動先で、イベントを確認したりさらに作業を行ったりすることができます。
+
+
+</p>
+<p>
+    1 つの通知が複数のアクションを提供することもあります。そのため、ユーザーが通知をクリックした時にトリガーされるアクションを必ず定義してください。通常、このアクションは、アプリケーション内で {@link android.app.Activity} を開きます。
+
+また、アラームのスヌーズやテキスト メッセージへの即時返信などの追加のアクションを実行するボタンを、通知に追加することもできます。この機能は、Android 4.1 から利用できるようになりました。
+
+追加のアクション ボタンを使用する場合、それらのボタンの機能をアプリの {@link android.app.Activity} で利用できるようにする必要があります。詳細については、<a href="#Compatibility">互換性の確保</a>についてのセクションをご覧ください。
+
+
+</p>
+<p>
+    {@link android.app.Notification} 内部では、アクションは、アプリケーションで {@link android.app.Activity} を開始する {@link android.content.Intent} が含まれる {@link android.app.PendingIntent} によって定義されます。
+
+
+{@link android.app.PendingIntent} を操作と関連付けるには、{@link android.support.v4.app.NotificationCompat.Builder} の該当するメソッドを呼び出します。
+
+たとえば、ユーザーが通知ドロワーで通知のテキストをクリックしたときに {@link android.app.Activity} を開始する場合、{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()} を呼び出して {@link android.app.PendingIntent} を追加します。
+
+
+
+</p>
+<p>
+    ユーザーが通知をクリックしたときに {@link android.app.Activity} を開始することは、最も一般的なアクション シナリオです。
+ユーザーが通知を閉じた場合に {@link android.app.Activity} を開始することもできます。
+Android 4.1 以降では、アクション ボタンから {@link android.app.Activity} を開始できます。
+詳細については、{@link android.support.v4.app.NotificationCompat.Builder} のリファレンスをご覧ください。
+
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Priority">通知の優先度</h3>
+<p>
+    必要に応じて、通知の優先度を設定できます。通知の優先度は、通知の表示方法についての端末 UI へのヒントの役割を果たします。
+
+    通知の優先度を設定するには、{@link android.support.v4.app.NotificationCompat.Builder#setPriority(int) otificationCompat.Builder.setPriority()} を呼び出し、{@link android.support.v4.app.NotificationCompat} 優先度定数の 1 つを渡します。
+
+
+優先度レベルには、{@link android.support.v4.app.NotificationCompat#PRIORITY_MIN} （-2）から {@link android.support.v4.app.NotificationCompat#PRIORITY_MAX} （2）までの 5 段階あります。優先度レベルが設定されていない場合、優先度はデフォルト値の {@link android.support.v4.app.NotificationCompat#PRIORITY_DEFAULT} （0）になります。
+
+
+
+
+
+</p>
+<p> 適切な優先順位の設定方法については、<a href="{@docRoot}design/patterns/notifications.html">通知</a>設計ガイドの「Correctly set and manage notification priority」をご覧ください。
+
+
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="SimpleNotification">簡単な通知を作成する</h3>
+<p>
+    次のスニペットでは、ユーザーに通知がクリックされたときに起動するアクティビティを指定する簡単な通知を作成しています。
+このコードでは {@link android.support.v4.app.TaskStackBuilder} オブジェクトを作成し、そのオブジェクトを使用して、アクションのための {@link android.app.PendingIntent} を作成していることにご注意ください。
+
+詳細は、<a href="#NotificationResponse">アクティビティの開始時のナビゲーションの維持</a>セクションで説明しています。
+
+
+</p>
+<pre>
+NotificationCompat.Builder mBuilder =
+        new NotificationCompat.Builder(this)
+        .setSmallIcon(R.drawable.notification_icon)
+        .setContentTitle("My notification")
+        .setContentText("Hello World!");
+// Creates an explicit intent for an Activity in your app
+Intent resultIntent = new Intent(this, ResultActivity.class);
+
+// The stack builder object will contain an artificial back stack for the
+// started Activity.
+// This ensures that navigating backward from the Activity leads out of
+// your application to the Home screen.
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack for the Intent (but not the Intent itself)
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent that starts the Activity to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(
+            0,
+            PendingIntent.FLAG_UPDATE_CURRENT
+        );
+mBuilder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// mId allows you to update the notification later on.
+mNotificationManager.notify(mId, mBuilder.build());
+</pre>
+<p>これで、ユーザーに通知が行われました。</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ApplyStyle">通知に拡張レイアウトを適用する</h3>
+<p>
+    通知を拡張ビューに表示するには、まず {@link android.support.v4.app.NotificationCompat.Builder} オブジェクトを任意の標準ビュー オプションで作成します。
+
+次に、{@link android.support.v4.app.NotificationCompat.Builder#setStyle Builder.setStyle()} を拡張レイアウト オブジェクトを引数に指定して呼び出します。
+
+</p>
+<p>
+    通知の拡張機能は、Android 4.1 より前のバージョンでは利用できないことにご注意ください。Android 4.1 とそれ以前のプラットフォームでの通知の処理方法については、<a href="#Compatibility">互換性の確保</a>についてのセクションをご覧ください。
+
+
+</p>
+<p>
+    たとえば、次のコード スニペットでは、先ほどのスニペットで作成した通知を変更して、拡張レイアウトを使用するようにしています。
+
+</p>
+<pre>
+NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
+    .setSmallIcon(R.drawable.notification_icon)
+    .setContentTitle("Event tracker")
+    .setContentText("Events received")
+NotificationCompat.InboxStyle inboxStyle =
+        new NotificationCompat.InboxStyle();
+String[] events = new String[6];
+// Sets a title for the Inbox in expanded layout
+inboxStyle.setBigContentTitle("Event tracker details:");
+...
+// Moves events into the expanded layout
+for (int i=0; i &lt; events.length; i++) {
+
+    inboxStyle.addLine(events[i]);
+}
+// Moves the expanded layout object into the notification object.
+mBuilder.setStyle(inBoxStyle);
+...
+// Issue the notification here.
+</pre>
+
+<h3 id="Compatibility">互換性を確保する</h3>
+
+<p>
+    通知機能をセットするメソッドはサポート ライブラリのクラス {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} に登録されていますが、特定のバージョンですべての通知機能が利用できるわけではありません。
+
+
+    たとえば、アクション ボタンは拡張通知の機能ですが、拡張通知自体が Android 4.1 以上でしか利用できないため、Android 4.1 以上でのみ表示されます。
+
+
+</p>
+<p>
+    可能な限り互換性を確保するには、{@link android.support.v4.app.NotificationCompat NotificationCompat} とそのサブクラス、特に {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} を使用して通知を作成します。
+
+
+さらに、通知の実装時に次の処理を行ってください。
+</p>
+<ol>
+    <li>
+        ユーザーが利用しているバージョンにかかわらず、通知機能のすべてをすべてのユーザーに提供します。
+それには、アプリの {@link android.app.Activity} からすべての機能が利用できるようにする必要があります。このために、新しい {@link android.app.Activity} を追加した方がよい場合もあります。
+
+
+        <p>
+            たとえば、{@link android.support.v4.app.NotificationCompat.Builder#addAction addAction()} を使用してメディア再生の開始と停止を行うコントロールを提供する場合、まずこのコントロールをアプリの {@link android.app.Activity} に実装します。
+
+
+
+        </p>
+    </li>
+    <li>
+        ユーザーが通知をクリックしたときにその {@link android.app.Activity} が起動するようにして、すべてのユーザーがその機能にアクセスできるようにします。
+それには、{@link android.app.Activity} のための {@link android.app.PendingIntent} を作成する必要があります。
+
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()} を呼び出し、{@link android.app.PendingIntent} を通知に追加してください。
+
+
+    </li>
+    <li>
+        利用したい拡張通知機能を通知に追加します。追加した機能は、ユーザーが通知をクリックしたときに開始する {@link android.app.Activity} でも利用できることにご注意ください。
+
+
+    </li>
+</ol>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Managing">通知を管理する</h2>
+<p>
+    同じタイプのイベントのために通知を複数回発行する場合、そのたびに新しい通知を作成することは避ける必要があります。
+新しい通知を作成する代わりに、以前の通知を更新して一部の値を変更することやいくつかの値を追加することを検討してください。
+
+</p>
+<p>
+    たとえば、Gmail は新しいメールが届いたことを、未読メッセージの数を増やし通知に各メールの概要を追加することで、ユーザーに通知します。
+これは、通知の「スタッキング」と呼ばれています。詳細については、<a href="{@docRoot}design/patterns/notifications.html">通知</a>設計ガイドをご覧ください。
+
+
+</p>
+<p class="note">
+    <strong>注:</strong> この Gmail 機能には、「受信トレイ」の拡張レイアウトが必要です。これは、Android 4.1 以降で利用可能な拡張通知機能の 1 つです。
+
+</p>
+<p>
+    次のセクションでは、通知の更新方法と通知の削除方法を説明します。
+</p>
+<h3 id="Updating">通知を更新する</h3>
+<p>
+    後で更新できるように通知をセットアップするには、{@link android.app.NotificationManager#notify(int, android.app.Notification) NotificationManager.notify()} を呼び出し、通知 ID を指定して通知を発行します。
+
+    発行後に通知を更新するには、{@link android.support.v4.app.NotificationCompat.Builder} オブジェクトを更新または作成し、そのオブジェクトから {@link android.app.Notification} オブジェクトをビルドし、以前使用した ID と同じ ID で {@link android.app.Notification} を発行します。
+
+
+以前の通知がそのまま表示されている場合は、{@link android.app.Notification} オブジェクトのコンテンツから、その通知が更新されます。
+
+以前の通知が閉じられている場合は、代わりに新しい通知が作成されます。
+
+</p>
+<p>
+    次のスニペットでは、発生したイベントの数を反映するために通知が更新されています。
+このスニペットは通知をスタックし、概要を表示します。
+</p>
+<pre>
+mNotificationManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Sets an ID for the notification, so it can be updated
+int notifyID = 1;
+mNotifyBuilder = new NotificationCompat.Builder(this)
+    .setContentTitle("New Message")
+    .setContentText("You've received new messages.")
+    .setSmallIcon(R.drawable.ic_notify_status)
+numMessages = 0;
+// Start of a loop that processes data and then notifies the user
+...
+    mNotifyBuilder.setContentText(currentText)
+        .setNumber(++numMessages);
+    // Because the ID remains unchanged, the existing notification is
+    // updated.
+    mNotificationManager.notify(
+            notifyID,
+            mNotifyBuilder.build());
+...
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Removing">通知を削除する</h3>
+<p>
+    次のいずれかが発生するまで、通知は表示され続けます。
+</p>
+<ul>
+    <li>
+        ユーザーが通知を個別に閉じるか、[Clear All] を使用して通知をすべて閉じる（通知を削除することができる場合）。
+
+    </li>
+    <li>
+        作成時に {@link android.support.v4.app.NotificationCompat.Builder#setAutoCancel setAutoCancel()} の呼び出しが行われた通知を、ユーザーがクリックする。
+
+
+    </li>
+    <li>
+        特定の通知 ID を指定して {@link android.app.NotificationManager#cancel(int) cancel()} を呼び出す（このメソッドは、実行中の処理に関する通知も削除します）。
+
+    </li>
+    <li>
+        {@link android.app.NotificationManager#cancelAll() cancelAll()} を呼び出す（このメソッドは、それまでに発行したすべての通知を削除します）。
+
+    </li>
+</ul>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="NotificationResponse">アクティビティの開始時にナビゲーションを維持する</h2>
+<p>
+    通知から {@link android.app.Activity} を開始する場合、ユーザーが期待するナビゲーション操作を変えないようにする必要があります。
+たとえば、 <i>[戻る]</i>  がクリックされた場合、アプリケーションの標準的なワークフローでは、ホーム画面に戻る必要があります。また、
+ <i>[最近使ったアプリ]</i>  がクリックされた場合、{@link android.app.Activity} を別のタスクとして表示する必要があります。
+このナビゲーション操作を変えないようにするには、新たなタスクで {@link android.app.Activity} を開始する必要があります。
+{@link android.app.PendingIntent} を設定して新たなタスクを生成する方法は、開始する {@link android.app.Activity} の性質によって異なります。
+
+通常は、次の 2 つの場合があります。
+</p>
+<dl>
+    <dt>
+        通常のアクティビティ
+    </dt>
+    <dd>
+        アプリケーションの標準的なワークフローの一部である {@link android.app.Activity} を開始します。
+この場合、{@link android.app.PendingIntent} を設定して新たなタスクを開始し、{@link android.app.PendingIntent} にバックスタックを提供します。これにより、アプリケーションの標準的な
+
+ <i>「戻る」</i> 動作を再現します。
+        <p>
+            Gmail アプリからの通知は、このタイプのアクティビティの一例です。1 つの電子メール メッセージの通知をクリックすると、メッセージそれ自体が表示されます。
+[<b>戻る</b>] をタップすると、通知から移動してきたのでなくホーム画面から Gmail に移動してきたかのように、Gmail からホーム画面に戻ります。
+
+
+        </p>
+        <p>
+            これは、通知のタップ時に使用していたアプリケーションに関係なく発生します。
+たとえば、Gmail でメッセージを作成しているときに、1 つのメールの通知をクリックすると、すぐにそのメールに移動します。
+その場合、 <i>[戻る]</i>
+             をタップすると、作成中のメッセージに戻るのではなく、受信トレイ、ホーム画面の順に移動します。
+
+        </p>
+    </dd>
+    <dt>
+        特殊なアクティビティ
+    </dt>
+    <dd>
+        ユーザーは、この {@link android.app.Activity} を、通知から開始した場合のみ見ることができます。
+        ある意味では、通知自体に表示するのは難しい情報を提供することで、この {@link android.app.Activity} が通知を拡張しているということができます。
+このタイプのアクティビティでは、{@link android.app.PendingIntent} を設定して新たなタスクを開始します。
+ただし、開始した {@link android.app.Activity} はアプリケーションのアクティビティ フローには含まれていないので、バックスタックを作成する必要はありません。
+
+たとえば、 <i>[戻る]</i>  をクリックすると、ユーザーはホーム画面に移動します。
+
+    </dd>
+</dl>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="DirectEntry">通常のアクティビティの PendingIntent を設定する</h3>
+<p>
+    ダイレクト エントリの {@link android.app.Activity} を開始する {@link android.app.PendingIntent} を設定するには、次の手順に従います。
+
+</p>
+<ol>
+    <li>
+        マニフェストに、アプリケーションの {@link android.app.Activity} の階層を定義します。
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Android 4.0.3 以前へのサポートを追加します。これには、<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code> 要素を <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> の子として追加して、開始する {@link android.app.Activity} の親を指定します。
+
+
+
+
+                <p>
+                    この要素に、<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a>="android.support.PARENT_ACTIVITY"</code> を設定します。
+
+                    <code>&lt;parent_activity_name&gt;</code> が親 <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 要素の <code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a></code> の値の場合は、<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#val">android:value</a>="&lt;parent_activity_name&gt;"</code> を設定します。
+
+
+
+
+
+例については、以下の XML をご覧ください。
+                </p>
+            </li>
+            <li>
+                また、Android 4.1 以降のサポートを追加します。これには、開始する {@link android.app.Activity} の <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 要素に、<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#parent">android:parentActivityName</a></code> 属性を追加します。
+
+
+
+
+            </li>
+        </ol>
+        <p>
+            最終的な XML は、次のようになります。
+        </p>
+<pre>
+&lt;activity
+    android:name=".MainActivity"
+    android:label="&#64;string/app_name" &gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+&lt;activity
+    android:name=".ResultActivity"
+    android:parentActivityName=".MainActivity"&gt;
+    &lt;meta-data
+        android:name="android.support.PARENT_ACTIVITY"
+        android:value=".MainActivity"/&gt;
+&lt;/activity&gt;
+</pre>
+    </li>
+    <li>
+        {@link android.app.Activity} を開始する {@link android.content.Intent} に基づくバックスタックを作成します。
+
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                {@link android.app.Activity} を開始する {@link android.content.Intent} を作成します。
+            </li>
+            <li>
+                {@link android.app.TaskStackBuilder#create TaskStackBuilder.create()} を呼び出して、スタック ビルダーを作成します。
+
+            </li>
+            <li>
+                {@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()} を呼び出し、バックスタックをスタック ビルダーに追加します。
+
+                マニフェストに定義した階層のそれぞれの {@link android.app.Activity} ごとに、バックスタックに、{@link android.app.Activity} を開始する {@link android.content.Intent} が含まれます。
+
+このメソッドは、新たなタスクでスタックを開始するためのフラグも追加します。
+
+                <p class="note">
+                    <strong>注:</strong> {@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()} の引数は開始した {@link android.app.Activity} への参照ですが、このメソッドの呼び出しによって、{@link android.app.Activity} を開始する {@link android.content.Intent} が追加されることはありません。
+
+
+
+追加は、次の d. で行われます。
+                </p>
+            </li>
+            <li>
+                {@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()} を呼び出して、通知から {@link android.app.Activity} を開始する {@link android.content.Intent} を追加します。
+
+
+                a. で作成した {@link android.content.Intent} を、引数として {@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()} に渡します。
+
+
+            </li>
+            <li>
+                必要に応じて、{@link android.support.v4.app.TaskStackBuilder#editIntentAt TaskStackBuilder.editIntentAt()} を呼び出し、スタック上の {@link android.content.Intent} オブジェクトに引数を追加します。
+
+これは、場合によっては、ターゲット {@link android.app.Activity} に、ユーザーが 
+
+ <i>[戻る]</i> を使って移動したときに、適切なデータが表示されるようにするために必要です。
+            </li>
+            <li>
+                {@link android.support.v4.app.TaskStackBuilder#getPendingIntent getPendingIntent()} を呼び出し、このバックスタックのための {@link android.app.PendingIntent} を取得します。
+
+                この {@link android.app.PendingIntent} は、{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()} の引数として使用できます。
+
+
+            </li>
+        </ol>
+     </li>
+</ol>
+<p>
+    次のコード スニペットでは、上記の処理を行っています。
+</p>
+<pre>
+...
+Intent resultIntent = new Intent(this, ResultActivity.class);
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+// Gets a PendingIntent containing the entire back stack
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
+...
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+builder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mNotificationManager.notify(id, builder.build());
+</pre>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ExtendedNotification">特殊なアクティビティの PendingIntent を設定する</h3>
+<p>
+    次のセクションでは、特殊なアクティビティのための {@link android.app.PendingIntent} の設定方法を説明します。
+
+</p>
+<p>
+    特殊な {@link android.app.Activity} はバックスタックを必要としません。そのため、マニフェストにその {@link android.app.Activity} の階層を定義する必要はありません。また、バックスタックを作成するために {@link android.support.v4.app.TaskStackBuilder#addParentStack  addParentStack()} を呼び出す必要もありません。
+
+
+
+代わりに、マニフェストを利用して {@link android.app.Activity} のタスク オプションを設定し、{@link android.app.PendingIntent#getActivity getActivity()} を呼び出して {@link android.app.PendingIntent} を作成します。
+
+
+</p>
+<ol>
+    <li>
+        マニフェストで、{@link android.app.Activity} の <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 要素に、次の属性を追加します。
+
+
+        <dl>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">android:name</a>="<i>activityclass</i>"</code>
+            </dt>
+            <dd>
+                アクティビティの完全修飾クラス名。
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">android:taskAffinity</a>=""</code>
+            </dt>
+            <dd>
+                コードにセットした {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK} フラグと組み合わせて、{@link android.app.Activity} がアプリケーションのデフォルトのタスクに入ることがないようにします。
+
+
+アプリケーションのアフィニティがデフォルトのままの既存タスクは影響を受けません。
+
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">android:excludeFromRecents</a>="true"</code>
+            </dt>
+            <dd>
+                新しいタスクを、 <i>[最近使ったアプリ]</i> から除外し、ユーザーが新しいタスクに間違って戻ることがないようにします。
+
+            </dd>
+        </dl>
+        <p>
+            次のスニペットは、この要素を示しています。
+        </p>
+<pre>
+&lt;activity
+    android:name=".ResultActivity"
+...
+    android:launchMode="singleTask"
+    android:taskAffinity=""
+    android:excludeFromRecents="true"&gt;
+&lt;/activity&gt;
+...
+</pre>
+    </li>
+    <li>
+        通知をビルドし発行します。
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                {@link android.app.Activity} を開始する {@link android.content.Intent} を作成します。
+
+            </li>
+            <li>
+                フラグ {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK} と {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TASK FLAG_ACTIVITY_CLEAR_TASK} を指定して {@link android.content.Intent#setFlags setFlags()} を呼び出し、{@link android.app.Activity} を新しい空のタスクで開始するように設定します。
+
+
+
+
+            </li>
+            <li>
+                {@link android.content.Intent} に、必要に応じてオプションを設定します。
+            </li>
+            <li>
+                {@link android.app.PendingIntent#getActivity getActivity()} を呼び出し、{@link android.content.Intent} から {@link android.app.PendingIntent} を作成します。
+
+                この {@link android.app.PendingIntent} は、{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()} の引数として使用できます。
+
+
+            </li>
+        </ol>
+    <p>
+        次のコード スニペットでは、上記の処理を行っています。
+    </p>
+<pre>
+// Instantiate a Builder object.
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+// Creates an Intent for the Activity
+Intent notifyIntent =
+        new Intent(this, ResultActivity.class);
+// Sets the Activity to start in a new, empty task
+notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
+                        | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+// Creates the PendingIntent
+PendingIntent notifyPendingIntent =
+        PendingIntent.getActivity(
+        this,
+        0,
+        notifyIntent,
+        PendingIntent.FLAG_UPDATE_CURRENT
+);
+
+// Puts the PendingIntent into the notification builder
+builder.setContentIntent(notifyPendingIntent);
+// Notifications are issued by sending them to the
+// NotificationManager system service.
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Builds an anonymous Notification object from the builder, and
+// passes it to the NotificationManager
+mNotificationManager.notify(id, builder.build());
+</pre>
+    </li>
+</ol>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Progress">通知に進捗状況を表示する</h2>
+<p>
+    通知には、進行中の処理の状況をユーザーに示すアニメーション表示の進捗インジケーターを表示できます。
+その処理にどれくらいの時間がかかるかと、ある時点でその処理がどれだけ完了しているかを見積もることができる場合、「確定（determinate）」タイプのインジケーター（プログレスバー）を使用します。
+
+処理にかかる時間を見積もることができない場合は、「不確定（indeterminate）」タイプのインジケーター（アクティビティ インジケーター）を使用します。
+
+</p>
+<p>
+    進捗インジケーターは、{@link android.widget.ProgressBar} クラスのプラットフォーム実装で表示されます。
+
+</p>
+<p>
+    Android 4.0 以降のプラットフォーム上で進捗インジケーターを使用するには、{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()} を呼び出します。
+それ以前のバージョンでは、{@link android.widget.ProgressBar} ビューを含むカスタム通知レイアウトを作成する必要があります。
+
+
+</p>
+<p>
+    次のセクションでは、{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()} を使用して、通知に進捗状況を表示する方法を説明します。
+
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="FixedProgress">範囲固定の進捗インジケーターを表示する</h3>
+<p>
+    確定プログレスバーを表示するには、{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(max, progress, false)} を呼び出して通知にバーを追加してから、その通知を発行します。
+
+処理の進行に合わせて、<code>progress</code> の値を増やし、通知を更新します。
+処理の最後には、<code>progress</code> が <code>max</code> と等しくなります。
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()} を呼び出す一般的な方法は、<code>max</code> に 100 を設定して、処理の「進捗度」の値である <code>progress</code> の値を増やすことです。
+
+
+
+</p>
+<p>
+    処理の完了時には、プログレスバーを表示したままにすることも、削除することもできます。いずれの場合でも、通知のテキストを更新して、処理が完了したことを示すことを忘れないでください。
+
+    プログレスバーを削除するには、{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, false)} を呼び出します。
+
+次に例を示します。
+</p>
+<pre>
+...
+mNotifyManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mBuilder = new NotificationCompat.Builder(this);
+mBuilder.setContentTitle("Picture Download")
+    .setContentText("Download in progress")
+    .setSmallIcon(R.drawable.ic_notification);
+// Start a lengthy operation in a background thread
+new Thread(
+    new Runnable() {
+        &#64;Override
+        public void run() {
+            int incr;
+            // Do the "lengthy" operation 20 times
+            for (incr = 0; incr &lt;= 100; incr+=5) {
+                    // Sets the progress indicator to a max value, the
+                    // current completion percentage, and "determinate"
+                    // state
+                    mBuilder.setProgress(100, incr, false);
+                    // Displays the progress bar for the first time.
+                    mNotifyManager.notify(0, mBuilder.build());
+                        // Sleeps the thread, simulating an operation
+                        // that takes time
+                        try {
+                            // Sleep for 5 seconds
+                            Thread.sleep(5*1000);
+                        } catch (InterruptedException e) {
+                            Log.d(TAG, "sleep failure");
+                        }
+            }
+            // When the loop is finished, updates the notification
+            mBuilder.setContentText("Download complete")
+            // Removes the progress bar
+                    .setProgress(0,0,false);
+            mNotifyManager.notify(ID, mBuilder.build());
+        }
+    }
+// Starts the thread by calling the run() method in its Runnable
+).start();
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ActivityIndicator">進行中アクティビティ インジケーターを表示する</h3>
+<p>
+    不確定アクティビティ インジケーターを表示するには、{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, true)}（最初の 2 つの引数は無視されます）を使用して通知に追加し、通知を発行します。
+
+このインジケーターの外見は、アニメーションが常時表示されていること以外はプログレスバーと同じです。
+
+</p>
+<p>
+    処理の開始時に通知を発行します。通知を変更するまで、アニメーションは表示され続けます。
+処理が完了したら、{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, false)} を呼び出し、次に通知を更新してアクティビティ インジケーターを削除します。
+
+
+    この操作を行わないと、処理が完了してもアニメーションが表示され続けることになります。また、通知のテキストを更新して、処理が完了したことを示すことを忘れないでください。
+
+</p>
+<p>
+    アクティビティ インジケーターの仕組みについては、上記のスニペットをご覧ください。次のコード行を探します。
+</p>
+<pre>
+// Sets the progress indicator to a max value, the current completion
+// percentage, and "determinate" state
+mBuilder.setProgress(100, incr, false);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+<p>
+    見つけたコードを次のコードに置き換えます。
+</p>
+<pre>
+ // Sets an activity indicator for an operation of indeterminate length
+mBuilder.setProgress(0, 0, true);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+
+<h2 id="metadata">通知メタデータ</h2>
+
+<p>通知は、次の {@link android.support.v4.app.NotificationCompat.Builder} メソッドを使用して割り当てるメタデータによって、ソートされることがあります。
+</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setCategory(java.lang.String) setCategory()} は、端末が優先モードの場合のアプリ通知の処理方法を設定します（たとえば、通知が着信、インスタント メッセージ、アラームを知らせる場合など）。
+
+</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setPriority(int) setPriority()} は優先度フィールドに {@code PRIORITY_MAX} または {@code PRIORITY_HIGH} が設定されている通知が、音声または振動を発する通知の場合、小さなフローティング ウィンドウに表示されるようにします。
+
+</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#addPerson(java.lang.String) addPerson()} を使用すると、通知に人物のリストを追加できます。
+アプリは、このリストを利用して、システムに合図を送り、特定の人達からの通知をグループ化したり、それらの人達からの通知を重要度が高い通知としてランク付けしたりします。
+
+</li>
+</ul>
+
+<div class="figure" style="width:230px">
+  <img src="{@docRoot}images/ui/notifications/heads-up.png" alt="" width="" height="" id="figure3" />
+  <p class="img-caption">
+    <strong>図 3.</strong> ヘッドアップ通知を表示する全画面アクティビティ
+  </p>
+</div>
+
+<h2 id="Heads-up">ヘッドアップ通知</h2>
+
+<p>Android 5.0（API レベル 21）では、端末がアクティブな場合（端末がロックされておらず、画面がオンになっている場合）に、小さなフローティング ウィンドウ（<em>ヘッドアップ通知</em>とも呼ばれます）に通知を表示することができます。
+
+これらの通知は、ヘッドアップ通知がアクション ボタンも表示すること以外は、通知をコンパクトにしたものと同じように表示されます。
+
+使用中のアプリから移動しなくても、ユーザーは、ヘッドアップ通知に反応したりヘッドアップ通知を閉じたりすることができます。
+</p>
+
+<p>ヘッドアップ通知のトリガーとなる条件には、たとえば以下のようなものがあります。</p>
+
+<ul>
+  <li>ユーザーのアクティビティが全画面モードであること（アプリが {@link android.app.Notification#fullScreenIntent} を使用していること）、または
+</li>
+  <li>その通知が高い優先度を持ち、着信音または振動を使用していること
+</li>
+</ul>
+
+<h2 id="lockscreenNotification">ロック画面通知</h2>
+
+<p>Android 5.0（API レベル 21）では、通知をロック画面に表示できるようになりました。
+アプリは、この機能を利用してメディア再生コントロールやその他の一般的なアクションを提供できます。
+ユーザーは設定でロック画面に通知を表示するかどうか選ぶことができます。また、開発者も、アプリからの通知をロック画面に表示するかどうか指定できます。
+</p>
+
+<h3 id="visibility">可視性を設定する</h3>
+
+<p>アプリでは、保護されたロック画面に表示される通知の表示の詳細レベルをコントロールできます。
+{@link android.support.v4.app.NotificationCompat.Builder#setVisibility(int) setVisibility()} を呼び出し、次の値のいずれかを指定してください。
+</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC} では、通知のフルコンテンツが表示されます。
+</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_SECRET} では、ロック画面に、通知のいずれの部分も表示しません。
+</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE} では、通知のアイコンやコンテンツのタイトルなどの基本的な情報を表示しますが、通知のフルコンテンツは表示されません。
+</li>
+</ul>
+
+<p>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE} を設定すると、特定の内容を非表示にした代替バージョンの通知コンテンツを提供できます。
+たとえば、SMS アプリで <em>3 件の新しいテキスト メッセージがある</em>ことを示す通知を表示する場合に、メッセージ コンテンツと送信者を非表示にできます。
+
+この代替通知を提供するには、{@link android.support.v4.app.NotificationCompat.Builder} を使用してまず置換用の通知を作成し、
+プライベート通知オブジェクトを作成したら、その置換用の通知をプライベート通知オブジェクトに {@link android.support.v4.app.NotificationCompat.Builder#setPublicVersion(android.app.Notification) setPublicVersion()} メソッドを使用してアタッチしてください。
+
+
+</p>
+
+<h3 id="controllingMedia">ロック画面でのメディア再生をコントロールする</h3>
+
+<p>Android 5.0（API レベル 21）では、{@link android.media.RemoteControlClient} を使用したメディア コントロールは、ロック画面に表示されません。このクラスは廃止済みです。
+代わりに、{@link android.app.Notification.MediaStyle} テンプレートと {@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()} メソッドを使用します。このメソッドは、アクションをクリックできるアイコンに変換します。
+
+
+</p>
+
+<p class="note"><strong>注:</strong> このテンプレートと {@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()} メソッドはサポート ライブラリには含まれません。そのため、これらの機能は Android 5.0 以降でのみ動作します。
+
+</p>
+
+<p>Android 5.0 でロック画面にメディア再生コントロールを表示するには、可視性を上記の{@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC} に設定します。
+その後、次のサンプルコードに従って、アクションを追加し {@link android.app.Notification.MediaStyle} テンプレートを設定します。
+
+</p>
+
+<pre>
+Notification notification = new Notification.Builder(context)
+    // Show controls on lock screen even when user hides sensitive content.
+    .setVisibility(Notification.VISIBILITY_PUBLIC)
+    .setSmallIcon(R.drawable.ic_stat_player)
+    // Add media control buttons that invoke intents in your media service
+    .addAction(R.drawable.ic_prev, "Previous", prevPendingIntent) // #0
+    .addAction(R.drawable.ic_pause, "Pause", pausePendingIntent)  // #1
+    .addAction(R.drawable.ic_next, "Next", nextPendingIntent)     // #2
+    // Apply the media style template
+    .setStyle(new Notification.MediaStyle()
+    .setShowActionsInCompactView(1 /* #1: pause button */)
+    .setMediaSession(mMediaSession.getSessionToken())
+    .setContentTitle("Wonderful music")
+    .setContentText("My Awesome Band")
+    .setLargeIcon(albumArtBitmap)
+    .build();
+</pre>
+
+<p class="note"><strong>注:</strong> {@link android.media.RemoteControlClient} の廃止は、他の点でもメディアのコントロールに影響を与えています。
+新しい API でのメディア セッションの管理と再生のコントロールの詳細については、<a href="{@docRoot}about/versions/android-5.0.html#MediaPlaybackControl">メディア再生コントロール</a>をご覧ください。
+
+</p>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="CustomNotification">カスタム通知レイアウト</h2>
+<p>
+    通知フレームワークでは、カスタム通知レイアウトを定義することができます。カスタム通知レイアウトは、{@link android.widget.RemoteViews} オブジェクトに通知の外観を定義します。
+
+    カスタム レイアウトの通知は通常の通知と似ていますが、XML レイアウト ファイルに定義された {@link android.widget.RemoteViews} が使用されています。
+
+</p>
+<p>
+    カスタム通知レイアウトで使用できる高さは、通知ビューによって異なります。標準ビュー レイアウトでは 64 dp までで、拡張ビュー レイアウトでは 256 dp までです。
+
+</p>
+<p>
+    カスタム通知レイアウトを定義するには、まず、XML レイアウト ファイルをインフレートする {@link android.widget.RemoteViews} オブジェクトのインスタンスを作成します。
+次に、{@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()} などのメソッドを呼び出す代わりに、{@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()} を呼び出します。
+
+
+コンテンツの詳細をカスタム通知に設定するには、{@link android.widget.RemoteViews} のメソッドを使用してビューの子の値を設定します。
+
+
+</p>
+<ol>
+    <li>
+        別ファイルに通知の XML レイアウトを作成します。ファイル名はどのような名前でもかまいませんが、拡張子は必ず <code>.xml</code> にします。
+
+    </li>
+    <li>
+        アプリで、{@link android.widget.RemoteViews} メソッドを使用して、通知のアイコンとテキストを定義します。
+{@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()} を呼び出して、この {@link android.widget.RemoteViews} オブジェクトを {@link android.support.v4.app.NotificationCompat.Builder} にセットします。
+
+{@link android.widget.RemoteViews} オブジェクトに背景 {@link android.graphics.drawable.Drawable} を設定することは避けてください。文字が読めなくなる場合があります。
+
+
+    </li>
+</ol>
+<p>
+    {@link android.widget.RemoteViews} クラスには、通知のレイアウトに {@link android.widget.Chronometer} や {@link android.widget.ProgressBar} を簡単に追加できるメソッドも含まれています。
+
+通知のカスタム レイアウトの作成についての詳細は、{@link android.widget.RemoteViews} のリファレンスをご覧ください。
+
+</p>
+<p class="caution">
+    <strong>警告:</strong> カスタム通知レイアウトを使用する場合、そのカスタム通知レイアウトがさまざまな画面の向きと解像度で適切に表示されるかどうか、十分に注意してください。
+すべてのビュー レイアウトでさまざまな画面の向きと解像度への対応に注意する必要がありますが、通知ドロワーのスペースが限られているため、通知では特に注意する必要があります。
+
+カスタム レイアウトは複雑にし過ぎないようにしてください。また、必ずさまざまな構成でテストするようにしてください。
+
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h4>カスタム通知のテキストにスタイル リソースを使用する</h4>
+<p>
+    カスタム通知のテキストには、必ずスタイル リソースを使用してください。通知の背景色は端末やバージョンによって異なりますが、スタイル リソースを使用することで、この問題に対処できます。
+
+Android 2.3 以降では、標準の通知レイアウトのテキストのスタイルは、システムによって定義されています。
+Android 2.3 以降を対象とするアプリケーションで同じスタイルを使用する場合は、表示される背景でテキストを読むことができるかご確認ください。
+
+</p>
diff --git a/docs/html-intl/intl/ja/guide/topics/ui/overview.jd b/docs/html-intl/intl/ja/guide/topics/ui/overview.jd
new file mode 100644
index 0000000..08d9356
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/ui/overview.jd
@@ -0,0 +1,71 @@
+page.title=UI の概要
+@jd:body
+
+
+<p>Android アプリのすべてのユーザー インターフェース エレメントは、{@link android.view.View} と {@link android.view.ViewGroup} オブジェクトを使ってビルドされています。
+{@link android.view.View} は、ユーザーが相互操作できる、画面上で何かを描画するオブジェクトです。
+{@link android.view.ViewGroup} は、インターフェースのレイアウトを定義するために、その他の {@link android.view.View}（と {@link android.view.ViewGroup}）オブジェクトを保持するオブジェクトです。
+
+</p>
+
+<p>Android では、共通の入力コントロール（ボタンやテキスト フィールドなど）とさまざまなレイアウトモデル（線形レイアウトや相対レイアウトなど）を提供する {@link android.view.View} と {@link android.view.ViewGroup} サブクラスの両方が提供されています。
+
+</p>
+
+
+<h2 id="Layout">ユーザー インターフェースのレイアウト</h2>
+
+<p>アプリの各コンポーネントのユーザー インターフェースは、図 1 のように、{@link
+android.view.View} と {@link android.view.ViewGroup} オブジェクトの階層を使って定義されます。各ビューグループは、子ビューをまとめる非表示のコンテナであり、子ビューは UI の一部を描画する入力コントロールまたはその他のウィジェットです。この階層ツリーは、必要に応じて単純にまたは複雑にすることができますが、パフォーマンスの点では単純な階層ツリーが最適です。
+
+
+
+</p>
+
+<img src="{@docRoot}images/viewgroup.png" alt="" />
+<p class="img-caption"><strong>図 1.</strong> UI レイアウトを定義するビュー階層の図。
+</p>
+
+<p>レイアウトを宣言するには、コードで {@link android.view.View} オブジェクトのインスタンスを作成してツリーのビルドを始めることができますが、レイアウトを定義する最も簡単で効率的な方法は XML ファイルを使用することです。XML では HTML のように、人が見える構造でレイアウトが提供されます。
+
+</p>
+
+<p>ビューの XML 要素名は、それが表す Android クラスによって決まります。<code>&lt;TextView&gt;</code> 要素は UI で {@link android.widget.TextView} ウィジェットを、<code>&lt;LinearLayout&gt;</code> 要素は {@link android.widget.LinearLayout} ビューグループを作成します。
+
+
+ </p>
+
+<p>たとえば、テキストビューとボタンを含む単純な縦レイアウトは次のようになります。</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="fill_parent" 
+              android:layout_height="fill_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>アプリでレイアウト リソースを読み込むとき、Android はレイアウトの各ノードを初期化して、他の動作の定義、オブジェクト状態の照会、レイアウトの変更をするのに使用できるランタイム オブジェクトにします。
+
+</p>
+
+<p>UI レイアウト作成のガイドについては、<a href="declaring-layout.html">XML レイアウト</a>をご覧ください。
+
+
+  
+<h2 id="UIComponents">ユーザー インターフェース コンポーネント</h2>
+
+<p>{@link android.view.View} と {@link android.view.ViewGroup} オブジェクトを使用してすべての UI をビルドする必要はありません。
+Android では、コンテンツの定義に必要な標準的な UI レイアウトを提供する複数のアプリ コンポーネントが提供されます。
+これらの各 UI コンポーネントには、それぞれのドキュメントで説明されている固有の API（<a href="{@docRoot}guide/topics/ui/actionbar.html">アクションバー</a>、<a href="{@docRoot}guide/topics/ui/dialogs.html">ダイアログ</a>、<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">状態通知</a>など）があります。
+</p>
+
+
diff --git a/docs/html-intl/intl/ja/guide/topics/ui/settings.jd b/docs/html-intl/intl/ja/guide/topics/ui/settings.jd
new file mode 100644
index 0000000..9e6bb9d
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/ui/settings.jd
@@ -0,0 +1,1202 @@
+page.title=設定
+page.tags=preference,preferenceactivity,preferencefragment
+
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本書の内容</h2>
+<ol>
+  <li><a href="#Overview">概要</a>
+    <ol>
+      <li><a href="#SettingTypes">プリファレンス</a></li>
+    </ol>
+  </li>
+  <li><a href="#DefiningPrefs">XML にプリファレンスを定義する</a>
+    <ol>
+      <li><a href="#Groups">設定グループを作成する</a></li>
+      <li><a href="#Intents">インテントを使用する</a></li>
+    </ol>
+  </li>
+  <li><a href="#Activity">プリファレンス アクティビティを作成する</a></li>
+  <li><a href="#Fragment">プリファレンス フラグメントを使用する</a></li>
+  <li><a href="#Defaults">デフォルト値を設定する</a></li>
+  <li><a href="#PreferenceHeaders">プリファレンス ヘッダーを使用する</a>
+    <ol>
+      <li><a href="#CreateHeaders">ヘッダー ファイルを作成する</a></li>
+      <li><a href="#DisplayHeaders">ヘッダーを表示する</a></li>
+      <li><a href="#BackCompatHeaders">旧バージョンでプリファレンス ヘッダーをサポートする</a></li>
+    </ol>
+  </li>
+  <li><a href="#ReadingPrefs">プリファレンスを読み込む</a>
+    <ol>
+      <li><a href="#Listening">プリファレンスの変化をリッスンする</a></li>
+    </ol>
+  </li>
+  <li><a href="#NetworkUsage">ネットワークの使用を管理する</a></li>
+  <li><a href="#Custom">カスタム プリファレンスを作成する</a>
+    <ol>
+      <li><a href="#CustomSelected">ユーザー インターフェースを指定する</a></li>
+      <li><a href="#CustomSave">設定の値を保存する</a></li>
+      <li><a href="#CustomInitialize">現在の値を初期化する</a></li>
+      <li><a href="#CustomDefault">デフォルト値を提供する</a></li>
+      <li><a href="#CustomSaveState">プリファレンスの状態を保存し復元する</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>キークラス</h2>
+<ol>
+  <li>{@link android.preference.Preference}</li>
+  <li>{@link android.preference.PreferenceActivity}</li>
+  <li>{@link android.preference.PreferenceFragment}</li>
+</ol>
+
+
+<h2>関連ドキュメント</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/settings.html">Settings design guide</a></li>
+</ol>
+</div>
+</div>
+
+
+
+
+<p>多くの場合、アプリケーションには、ユーザーがアプリの機能や動作を変更できる設定が含まれています。たとえば、一部のアプリでは、通知を有効にするかどうかや、アプリケーションがクラウドとデータを同期する頻度を、ユーザーが指定できます。
+
+</p>
+
+<p>アプリに設定機能を提供するには、Android の {@link android.preference.Preference} API を使用して、他の Android アプリ（システム設定を含む）の操作と整合性のあるインターフェースを構築する必要があります。
+
+このドキュメントでは、{@link android.preference.Preference} API を使用して、アプリの設定機能を構築する方法について説明します。
+</p>
+
+<div class="note design">
+<p><strong>設定の設計</strong></p>
+  <p>設定の設計方法については、<a href="{@docRoot}design/patterns/settings.html">設定</a>のデザインガイドをご覧ください。</p>
+</div>
+
+
+<img src="{@docRoot}images/ui/settings/settings.png" alt="" width="435" />
+<p class="img-caption"><strong>図 1.</strong> Android SMS アプリの設定のスクリーンショット
+{@link android.preference.Preference} で定義されたアイテムを選択すると、設定を変更するためのインターフェースが開きます。
+</p>
+
+
+
+
+<h2 id="Overview">概要</h2>
+
+<p>設定は、{@link android.view.View} オブジェクトを使用してユーザー インターフェースを作成する方法ではなく、XML ファイルで宣言された {@link android.preference.Preference} クラスの各種のサブクラスを使用する方法で作成されます。
+
+</p>
+
+<p>1 つの {@link android.preference.Preference} オブジェクトが、1 つの設定の構成要素になります。
+各 {@link android.preference.Preference} はアイテムとしてリストに表示され、ユーザーが設定を変更するための適切な UI を提供します。
+たとえば、{@link android.preference.CheckBoxPreference} はチェックボックスを表示するリストアイテムを作成し、{@link android.preference.ListPreference} は、選択リスト付きのダイアログを開くアイテムを作成します。
+
+</p>
+
+<p>追加した各 {@link android.preference.Preference} は、アプリの設定のためのデフォルトの {@link android.content.SharedPreferences} ファイルに設定を保存するためにシステムが使用する対応するキーと値のペアを持ちます。
+
+ユーザーが設定を変更する場合、システムが {@link android.content.SharedPreferences} ファイルの対応する値を更新します。
+関連する {@link android.content.SharedPreferences} ファイルを直接操作することが必要なのは、ユーザーの設定に基づいてアプリの動作を決定するために値を読み込むことが必要な場合のみです。
+
+</p>
+
+<p>各設定の {@link android.content.SharedPreferences} に保存される値のデータ型は、次のいずれかにすることができます。
+</p>
+
+<ul>
+  <li>Boolean</li>
+  <li>Float</li>
+  <li>Int</li>
+  <li>Long</li>
+  <li>String</li>
+  <li>String {@link java.util.Set}</li>
+</ul>
+
+<p>アプリの設定の UI は {@link android.view.View} オブジェクトではなく {@link android.preference.Preference} で作成されているため、リストの設定を表示するには、専用の {@link android.app.Activity} サブクラスまたは {@link android.app.Fragment} サブクラスを使用する必要があります。
+
+
+</p>
+
+<ul>
+  <li>アプリが 3.0 よりも前のバージョンの Android（API レベル 10 以下）をサポートしている場合は、{@link android.preference.PreferenceActivity} クラスを継承してアクティビティを作成する必要があります。
+</li>
+  <li>Android 3.0 以降では、代わりに、アプリの設定を表示する {@link android.preference.PreferenceFragment} をホストする従来の {@link android.app.Activity} を使用します。ただし、設定のグループが複数ある場合は、{@link android.preference.PreferenceActivity} を使用して大きな画面用の 2 ペイン レイアウトを作成することもできます。
+
+
+</li>
+</ul>
+
+<p>{@link android.preference.PreferenceActivity} と {@link android.preference.PreferenceFragment} のインスタンスの設定方法は、<a href="#Activity">プリファレンス アクティビティを作成する</a>と<a href="#Fragment">プリファレンス フラグメントを使用する</a>セクションをご覧ください。
+
+</p>
+
+
+<h3 id="SettingTypes">プリファレンス</h3>
+
+<p>アプリの各設定は、{@link android.preference.Preference} クラスの個々のサブクラスに相当します。
+各サブクラスには、設定のタイトルやデフォルト値などを指定できる一連の核となるプロパティが含まれています。
+また、各サブクラスは、専用のプロパティとユーザー インターフェースを提供しています。
+たとえば、図 1. は、SMS アプリの設定のスクリーンショットです。
+設定画面の各リスト アイテムは、それぞれ異なる {@link android.preference.Preference} オブジェクトに基づいています。
+</p>
+
+<p>以下は、最も一般的なプリファレンスの一部です。</p>
+
+<dl>
+  <dt>{@link android.preference.CheckBoxPreference}</dt>
+  <dd>有効または無効にする設定のチェックボックス付きのアイテムを表示します。保存される値は、Boolean です（オンの場合、<code>true</code>）。
+</dd>
+
+  <dt>{@link android.preference.ListPreference}</dt>
+  <dd>ラジオボタンのリスト付きのダイアログを開きます。保存される値は、サポートされるデータ型（上記参照）であればどのデータ型にもできます。
+</dd>
+
+  <dt>{@link android.preference.EditTextPreference}</dt>
+  <dd>{@link android.widget.EditText} ウィジェット付きのダイアログを開きます。保存される値は、{@link java.lang.String} です。
+</dd>
+</dl>
+
+<p>その他のサブクラスと対応するプロパティについては、{@link android.preference.Preference} クラスをご覧ください。
+</p>
+
+<p>もちろん、組み込みのクラスがすべてのニーズを満たすわけではなく、アプリケーションがより特殊な機能を必要とする可能性もあります。
+たとえば、プラットフォームは、現時点では、数字や日付を選択するための {@link android.preference.Preference} クラスを提供していません。
+そのため、独自の {@link android.preference.Preference} サブクラスを定義することが必要になる場合もあります。
+詳細については、<a href="#Custom">カスタム プリファレンスを作成する</a>セクションをご覧ください。</p>
+
+
+
+<h2 id="DefiningPrefs">XML にプリファレンスを定義する</h2>
+
+<p>実行時に新しい {@link android.preference.Preference} オブジェクトのインスタンスを作成することもできますが、{@link android.preference.Preference} オブジェクトの階層で XML に設定のリストを定義する必要があります。
+
+XML ファイルは更新が容易な簡単に読むことができる構造を持つため XML ファイルを使用して設定のコレクションを定義することをお勧めします。
+また、アプリの設定は通常、事前設定されていますが、設定のコレクションを実行時に変更することもできます。
+</p>
+
+<p>各 {@link android.preference.Preference} サブクラスは、{@code &lt;CheckBoxPreference&gt;} などのクラス名と一致する XML 要素で定義できます。
+</p>
+
+<p>この XML ファイルは、{@code res/xml/} ディレクトリに保存する必要があります。この XML ファイルには好きな名前を付けることができますが、一般的には、{@code preferences.xml} という名前が使用されています。
+階層の分岐（この分岐がそれ自身の設定のリストを開きます）が {@link android.preference.PreferenceScreen} のネストされたインスタンスを使用して宣言されているため、必要なファイルは通常 1 ファイルのみです。
+
+</p>
+
+<p class="note"><strong>注:</strong> 複数ペイン レイアウトの設定を作成する場合は、フラグメントごとに別々の XML ファイルが必要です。
+</p>
+
+<p>XML ファイルのルートノードは、{@link android.preference.PreferenceScreen &lt;PreferenceScreen&gt;} 要素にする必要があります。
+この要素内に、各 {@link android.preference.Preference} を追加します。
+{@link android.preference.PreferenceScreen &lt;PreferenceScreen&gt;} 要素内に追加したそれぞれの子は、設定のリストで 1 つのアイテムとして表示されます。
+
+</p>
+
+<p>次に例を示します。</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;CheckBoxPreference
+        android:key="pref_sync"
+        android:title="@string/pref_sync"
+        android:summary="@string/pref_sync_summ"
+        android:defaultValue="true" />
+    &lt;ListPreference
+        android:dependency="pref_sync"
+        android:key="pref_syncConnectionType"
+        android:title="@string/pref_syncConnectionType"
+        android:dialogTitle="@string/pref_syncConnectionType"
+        android:entries="@array/pref_syncConnectionTypes_entries"
+        android:entryValues="@array/pref_syncConnectionTypes_values"
+        android:defaultValue="@string/pref_syncConnectionTypes_default" />
+&lt;/PreferenceScreen>
+</pre>
+
+<p>この例には、{@link android.preference.CheckBoxPreference} と {@link android.preference.ListPreference} が含まれています。
+どちらのアイテムにも次の 3 つの属性が含まれています。</p>
+
+<dl>
+  <dt>{@code android:key}</dt>
+  <dd>この属性は、データ値を保持するプリファレンスで必要です。設定の値を {@link android.content.SharedPreferences} に保存するときにシステムが使用する一意のキー（文字列）を指定します。
+
+ 
+  <p>プリファレンスが {@link android.preference.PreferenceCategory} または{@link android.preference.PreferenceScreen} の場合、またはプリファレンスが {@link android.content.Intent} の呼び出しを指定している場合（<a href="#Intents">{@code &lt;intent&gt;}</a> 要素を使用）、または {@link android.app.Fragment} の表示を指定している場合（<a href="{@docRoot}reference/android/preference/Preference.html#attr_android:fragment">{@code android:fragment}</a> 属性を使用）のみ、インスタンスでこの属性は<em>必要ありません</em>。
+
+
+</p>
+  </dd>
+  <dt>{@code android:title}</dt>
+  <dd>この属性は、ユーザーに表示される設定の名前です。</dd>
+  <dt>{@code android:defaultValue}</dt>
+  <dd>この属性は、システムが {@link android.content.SharedPreferences} ファイルに設定する必要がある初期値を指定します。
+すべての設定のデフォルト値を指定する必要があります。
+</dd>
+</dl>
+
+<p>その他のサポートされている属性については、{@link android.preference.Preference}（と対応するサブクラス）のドキュメントをご覧ください。
+</p>
+
+
+<div class="figure" style="width:300px">
+  <img src="{@docRoot}images/ui/settings/settings-titles.png" alt="" />
+  <p class="img-caption"><strong>図 2.</strong> カテゴリを設定しタイトルを付ける
+ <br/><b>1.</b>カテゴリは、{@link android.preference.PreferenceCategory &lt;PreferenceCategory&gt;} 要素で指定します。
+ <br/><b>2.</b>タイトルは、{@code android:title} 属性で指定します。
+</p>
+</div>
+
+
+<p>設定のリストが 10 アイテムを超える場合は、タイトルを追加して設定のグループを定義するか、それらのグループを別の画面に表示することをお勧めします。
+
+詳細については、次のセクションで説明します。</p>
+
+
+<h3 id="Groups">設定グループを作成する</h3>
+
+<p>10 以上の設定のリストがある場合、ユーザーが目を通して把握し処理することが難しくなる場合があります。
+この問題を解決するには、設定の一部またはすべてをグループに分割し、1 つの長いリストを複数の短いリストに変えます。
+
+関連設定のグループは、次の 2 つの方法のいずれかで表示できます。</p>
+
+<ul>
+  <li><a href="#Titles">タイトルを使用する</a></li>
+  <li><a href="#Subscreens">サブ画面を使用する</a></li>
+</ul>
+
+<p>これらのグループ化方法の 1 つまたは両方を利用して、アプリの設定を整理できます。使用する方法と設定の分割方法を決定する際は、Android Design の<a href="{@docRoot}design/patterns/settings.html">Settings</a> ガイドのガイドラインに従ってください。
+
+</p>
+
+
+<h4 id="Titles">タイトルを使用する</h4>
+
+<p>設定のグループの間に見出しを入れる場合（図 2. 参照）、{@link android.preference.Preference} オブジェクトをグループごとに 1 つの {@link android.preference.PreferenceCategory} 内にセットしてください。
+
+</p>
+
+<p>次に例を示します。</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;PreferenceCategory 
+        android:title="&#64;string/pref_sms_storage_title"
+        android:key="pref_key_storage_settings">
+        &lt;CheckBoxPreference
+            android:key="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_auto_delete"
+            android:title="&#64;string/pref_title_auto_delete"
+            android:defaultValue="false"... />
+        &lt;Preference 
+            android:key="pref_key_sms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_sms_delete"... />
+        &lt;Preference 
+            android:key="pref_key_mms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_mms_delete" ... />
+    &lt;/PreferenceCategory>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h4 id="Subscreens">サブ画面を使用する</h4>
+
+<p>設定のグループをサブ画面に配置する場合（図 3. 参照）、{@link android.preference.Preference} オブジェクトのグループを {@link android.preference.PreferenceScreen} 内にセットしてください。
+
+</p>
+
+<img src="{@docRoot}images/ui/settings/settings-subscreen.png" alt="" />
+<p class="img-caption"><strong>図 3.</strong> 子画面を設定する。{@code &lt;PreferenceScreen&gt;} は、選択されると、ネストされた設定を表示するための個別のリストを開くアイテムを作成します。
+
+</p>
+
+<p>次に例を示します。</p>
+
+<pre>
+&lt;PreferenceScreen  xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;!-- opens a subscreen of settings -->
+    &lt;PreferenceScreen
+        android:key="button_voicemail_category_key"
+        android:title="&#64;string/voicemail"
+        android:persistent="false">
+        &lt;ListPreference
+            android:key="button_voicemail_provider_key"
+            android:title="&#64;string/voicemail_provider" ... />
+        &lt;!-- opens another nested subscreen -->
+        &lt;PreferenceScreen
+            android:key="button_voicemail_setting_key"
+            android:title="&#64;string/voicemail_settings"
+            android:persistent="false">
+            ...
+        &lt;/PreferenceScreen>
+        &lt;RingtonePreference
+            android:key="button_voicemail_ringtone_key"
+            android:title="&#64;string/voicemail_ringtone_title"
+            android:ringtoneType="notification" ... />
+        ...
+    &lt;/PreferenceScreen>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h3 id="Intents">インテントを使用する</h3>
+
+<p>設定画面ではなく、ウェブページを表示するためのウェブブラウザなどの別のアクティビティを開くプリファレンス アイテムが必要になることもあります。
+ユーザーがプリファレンス アイテムを選択したときに {@link android.content.Intent} が呼び出されるようにするには、対応する {@code &lt;Preference&gt;} 要素の子として {@code &lt;intent&gt;} 要素を追加します。
+
+</p>
+
+<p>たとえば、次の方法で、プリファレンス アイテムを使用してウェブページを開くことができます。</p>
+
+<pre>
+&lt;Preference android:title="@string/prefs_web_page" >
+    &lt;intent android:action="android.intent.action.VIEW"
+            android:data="http://www.example.com" />
+&lt;/Preference>
+</pre>
+
+<p>次の属性を使用して、明示的なインテントと黙示的なインテントの両方を作成できます。</p>
+
+<dl>
+  <dt>{@code android:action}</dt>
+    <dd>{@link android.content.Intent#setAction setAction()} メソッドで割り当てるアクション。
+</dd>
+  <dt>{@code android:data}</dt>
+    <dd>{@link android.content.Intent#setData setData()} メソッドで割り当てるデータ。</dd>
+  <dt>{@code android:mimeType}</dt>
+    <dd>{@link android.content.Intent#setType setType()} メソッドで割り当てる MIME タイプ。
+</dd>
+  <dt>{@code android:targetClass}</dt>
+    <dd>{@link android.content.Intent#setComponent setComponent()} メソッドでのコンポーネント名のクラス部分。
+</dd>
+  <dt>{@code android:targetPackage}</dt>
+    <dd>{@link android.content.Intent#setComponent setComponent()} メソッドでのコンポーネント名のパッケージ部分。
+</dd>
+</dl>
+
+
+
+<h2 id="Activity">プリファレンス アクティビティを作成する</h2>
+
+<p>アクティビティに設定を表示するには、{@link android.preference.PreferenceActivity} クラスを継承します。
+このクラスは、{@link android.preference.Preference} オブジェクトの階層に基づいて設定のリストを表示する従来の {@link android.app.Activity} クラスを継承したものです。
+
+{@link android.preference.PreferenceActivity} は、ユーザーが変更を行ったときに、各 {@link android.preference.Preference} に対応する設定を自動的に保存します。
+
+</p>
+
+<p class="note"><strong>注:</strong> Android 3.0 以降向けにアプリケーションを開発する場合は、代わりに {@link android.preference.PreferenceFragment} を使用する必要があります。
+<a href="#Fragment">プリファレンス フラグメントの使用</a>についての詳細は、次のセグメントをご覧ください。
+</p>
+
+<p>注意する必要があるのは、{@link android.preference.PreferenceActivity#onCreate onCreate()} のコールバック時に、ビューのレイアウトをロードしてはならないことを忘れないでください。
+代わりに {@link android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} を呼び出し、XML ファイルで宣言済みのプリファレンスをアクティビティに追加する必要があります。
+
+以下は、{@link android.preference.PreferenceActivity} を機能させるために最小限必要なコードです。
+</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        addPreferencesFromResource(R.xml.preferences);
+    }
+}
+</pre>
+
+<p>ユーザーがプリファレンスを変更するとすぐに、ユーザーの設定のチェックが必要なときに他のアプリケーション コンポーネントが読み取ることができるデフォルトの {@link android.content.SharedPreferences} ファイルにシステムによって変更が保存されるため、実際一部のアプリではこのコードで十分です。
+
+ただし、多くのアプリでは、プリファレンスに発生する変化をリッスンするために、もう少し多くのコードが必要になります。{@link android.content.SharedPreferences} ファイルの変更のリッスンについての詳細は、<a href="#ReadingPrefs">プリファレンスの読み取り</a>についてのセクションをご覧ください。
+
+
+</p>
+
+
+
+
+<h2 id="Fragment">プリファレンス フラグメントを使用する</h2>
+
+<p>Android 3.0（API レベル 11）以降向けに開発を行っている場合は、{@link android.preference.PreferenceFragment} を使用して {@link android.preference.Preference} オブジェクトのリストを表示する必要があります。
+
+{@link android.preference.PreferenceFragment} はどのアクティビティにでも追加できます &mdash; {@link android.preference.PreferenceActivity} を使用する必要はありません。
+</p>
+
+<p>作成するアクティビティの種類にかかわらず、<a href="{@docRoot}guide/components/fragments.html">フラグメント</a>を使用すると、アクティビティを単体で使用する場合と比べて、柔軟なアーキテクチャを持つアプリケーションを作成できます。
+
+そのため、可能な限り {@link android.preference.PreferenceActivity} ではなく、{@link android.preference.PreferenceFragment} を使用して設定の表示を管理することをお勧めします。
+
+</p>
+
+<p>{@link android.preference.PreferenceFragment} の実装は、{@link android.preference.PreferenceFragment#onCreate onCreate()} メソッドを {@link android.preference.PreferenceFragment#addPreferencesFromResource addPreferencesFromResource()} を使用してプリファレンス ファイルをロードするように定義するだけと簡単です。
+
+
+次に例を示します。</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Load the preferences from an XML resource
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+}
+</pre>
+
+<p>他の {@link android.app.Fragment} と同様に、このフラグメントは {@link android.app.Activity} に追加できます。
+次に例を示します。</p>
+
+<pre>
+public class SettingsActivity extends Activity {
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Display the fragment as the main content.
+        getFragmentManager().beginTransaction()
+                .replace(android.R.id.content, new SettingsFragment())
+                .commit();
+    }
+}
+</pre>
+
+<p class="note"><strong>注:</strong> {@link android.preference.PreferenceFragment} は、独自の {@link android.content.Context} オブジェクトを持ちません。
+{@link android.content.Context} オブジェクトが必要な場合は、{@link android.app.Fragment#getActivity()} を呼び出すことができます。
+ただし、{@link android.app.Fragment#getActivity()} はフラグメントがアクティビティにアタッチされている場合にのみ呼び出すようにしてください。
+フラグメントがまだアタッチされていない場合や、ライフサイクルの終了時にデタッチされた場合は、{@link android.app.Fragment#getActivity()} は null を返します。
+
+</p>
+
+
+<h2 id="Defaults">デフォルト値を設定する</h2>
+
+<p>作成するプリファレンスは、多くの場合、アプリケーションにとって重要ないくつかの動作を定義します。そのため、ユーザーが最初にプリケーションを開いたときに、各 {@link android.preference.Preference} のデフォルト値で、関連する {@link android.content.SharedPreferences} ファイルを初期化する必要があります。
+
+
+</p>
+
+<p>まず、{@code android:defaultValue} 属性を使用して、XML ファイルの各 {@link android.preference.Preference} オブジェクトにデフォルト値を指定してください。
+
+指定する値は、対応する {@link android.preference.Preference} オブジェクトで使用できるデータ型であればどのようなデータ型でもかまいません。
+次に例を示します。
+</p>
+
+<pre>
+&lt;!-- default value is a boolean -->
+&lt;CheckBoxPreference
+    android:defaultValue="true"
+    ... />
+
+&lt;!-- default value is a string -->
+&lt;ListPreference
+    android:defaultValue="@string/pref_syncConnectionTypes_default"
+    ... />
+</pre>
+
+<p>次に、アプリケーションのメイン アクティビティ、およびユーザーがアプリケーションを最初に開いたときに表示されるその他のアクティビティの {@link android.app.Activity#onCreate onCreate()} メソッドから、{@link android.preference.PreferenceManager#setDefaultValues setDefaultValues()} を呼び出します。
+
+
+</p>
+
+<pre>
+PreferenceManager.setDefaultValues(this, R.xml.advanced_preferences, false);
+</pre>
+
+<p>{@link android.app.Activity#onCreate onCreate()} 時に、このメソッドを呼び出すと、アプリケーションがデフォルト設定で適切に初期化されます。アプリケーションには、動作（セルラー ネットワーク上でデータをダウンロードするかどうかなど）を決定するために、デフォルト設定を読み込むことが必要な場合があります。
+
+
+</p>
+
+<p>このメソッドは次の 3 つの引数を取ります。</p>
+<ul>
+  <li>アプリケーションの {@link android.content.Context}。</li>
+  <li>デフォルト値を設定するプリファレンス XML ファイルのリソース ID。</li>
+  <li>デフォルト値を複数回設定すべきかどうかを示すブール値。
+<p><code>false</code> の場合、デフォルト値は過去にこのメソッドが 1 度も呼ばれたことがない場合（または、デフォルト値の共有プリファレンス ファイルの{@link android.preference.PreferenceManager#KEY_HAS_SET_DEFAULT_VALUES} が false の場合）のみ設定されます。
+
+</p></li>
+</ul>
+
+<p>この 3 番目の引数を <code>false</code> に設定している限り、アクティビティが開始するたびに、ユーザーが保存したプリファレンスをデフォルト値にリセットして上書きすることなく、安全にこのメソッドを呼び出すことができます。
+
+この引数を <code>true</code> に設定した場合は、以前の値がすべてデフォルト値で上書きされます。
+</p>
+
+
+
+<h2 id="PreferenceHeaders">プリファレンス ヘッダーを使用する</h2>
+
+<p>まれに、最初の画面が<a href="#Subscreens">サブ画面</a>のリストのみを表示するように設定を設計した方がよい場合もあります（図 4. と図. 5 のシステム設定アプリなど）。
+
+このような設計を Android 3.0 以降で開発する場合、ネストした {@link android.preference.PreferenceScreen} 要素でサブ画面を作成するのではなく、Android 3.0 の新しい「ヘッダー」機能を使用する必要があります。
+
+</p>
+
+<p>ヘッダーを使用して設定を作成するには、次の準備が必要です。</p>
+<ol>
+  <li>設定をグループごとに {@link android.preference.PreferenceFragment} の別々のインスタンスに分けます。
+この場合、設定のグループごとに、個別の XML ファイルが必要になります。
+</li>
+  <li>各設定グループをリストアップし対応する設定のリストを含むのがどのフラグメントかを宣言する XML ヘッダー ファイルを作成します。
+</li>
+  <li>{@link android.preference.PreferenceActivity} クラスを継承し、設定をホストします。</li>
+  <li>{@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} コールバックを実装して、ヘッダー ファイルを指定します。
+
+</li>
+</ol>
+
+<p>この設計を使用する大きなメリットは、大きな画面で実行する場合に、{@link android.preference.PreferenceActivity} によって自動的に図. 4 の 2 ペイン レイアウトで表示されることです。
+</p>
+
+<p>アプリケーションが 3.0 より前のバージョンの Android をサポートしている場合でも、3.0 より前の端末で従来の多画面階層をサポートしながら、{@link android.preference.PreferenceFragment} を使用して 3.0 以降の端末で 2 ペイン表示を行うことができます（詳細については、<a href="#BackCompatHeaders">旧バージョンでのプリファレンス ヘッダーのサポート</a>についてのセクションをご覧ください）。
+
+
+
+</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-tablet.png" alt="" />
+<p class="img-caption"><strong>図 4.</strong>ヘッダー付きの 2 ペイン レイアウト。 <br/><b>1.</b>ヘッダーは、XML ヘッダー ファイルで定義します。
+ <br/><b>2.</b>設定の各グループは、XML ヘッダー ファイルの {@code &lt;header&gt;} 要素で指定された {@link android.preference.PreferenceFragment} ファイルで定義します。
+
+</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-handset.png" alt="" />
+<p class="img-caption"><strong>図 5.</strong> ヘッダーが設定されたモバイル端末。アイテムが選択されると、対応する {@link android.preference.PreferenceFragment} がヘッダーを置き換えます。
+
+</p>
+
+
+<h3 id="CreateHeaders" style="clear:left">ヘッダー ファイルを作成する</h3>
+
+<p>ヘッダーのリストの設定の各グループは、ルート {@code &lt;preference-headers&gt;} 要素内の単独の {@code &lt;header&gt;} 要素によって指定されます。
+次に例を示します。</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;!-- key/value pairs can be included as arguments for the fragment. -->
+        &lt;extra android:name="someKey" android:value="someHeaderValue" />
+    &lt;/header>
+&lt;/preference-headers>
+</pre>
+
+<p>{@code android:fragment} 属性を使用して、各ヘッダーは、ユーザーがヘッダーを選択したときに開く {@link android.preference.PreferenceFragment} のインスタンスを宣言します。
+</p>
+
+<p>{@code &lt;extras&gt;} 要素を使用すると、キーと値のペアを {@link android.os.Bundle} のフラグメントに渡すことができます。
+{@link android.app.Fragment#getArguments()} を呼び出すことで、フラグメントは引数を取得できます。
+さまざまな理由でフラグメントに引数を渡す場合がありますが、各グループの {@link android.preference.PreferenceFragment} の同じサブクラスを再利用し、引数を使用してフラグメントがロードするプリファレンス XML ファイルを指定することは、効果的な引数の使い方の 1 つです。
+
+
+</p>
+
+<p>たとえば、次のフラグメントは、各ヘッダーが {@code "settings"} キーを使用して {@code &lt;extra&gt;} 引数を定義している場合、複数の設定グループで再利用できます。
+</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        String settings = getArguments().getString("settings");
+        if ("notifications".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_wifi);
+        } else if ("sync".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_sync);
+        }
+    }
+}
+</pre>
+
+
+
+<h3 id="DisplayHeaders">ヘッダーを表示する</h3>
+
+<p>プリファレンス ヘッダーを表示するには、{@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} コールバックメソッドを実装し、{@link android.preference.PreferenceActivity#loadHeadersFromResource loadHeadersFromResource()} を呼び出す必要があります。
+
+
+次に例を示します。</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onBuildHeaders(List&lt;Header> target) {
+        loadHeadersFromResource(R.xml.preference_headers, target);
+    }
+}
+</pre>
+
+<p>ユーザーがヘッダーのリストからアイテムを選択した場合、システムが対応する {@link android.preference.PreferenceFragment} を開きます。
+</p>
+
+<p class="note"><strong>注:</strong> プリファレンス ヘッダーを使用する場合、アクティビティで必要なタスクはヘッダーのロードのみであるため、{@link android.preference.PreferenceActivity} のサブクラスが {@link android.preference.PreferenceActivity#onCreate onCreate()} メソッドを実装する必要はありません。
+
+
+</p>
+
+
+<h3 id="BackCompatHeaders">旧バージョンでプリファレンス ヘッダーをサポートする</h3>
+
+<p>アプリケーションが Android 3.0 よりも前のバージョンをサポートしている場合でも、3.0 以降で実行するときに、ヘッダーを使用して 2 ペイン レイアウトを提供できます。
+必要なことは、3.0 よりも前のバージョンの Android で使用するために、ヘッダー アイテムのように動作する基本的な {@link android.preference.Preference &lt;Preference&gt;} 要素を使用する追加のプリファレンス XML ファイルを作成することだけです。
+
+
+</p>
+
+<p>新しい {@link android.preference.PreferenceScreen} を開く代わりに、各 {@link android.preference.Preference &lt;Preference&gt;} 要素が、ロードするプリファレンス XML ファイルが指定されている {@link android.preference.PreferenceActivity} に {@link android.content.Intent} を送ります。
+
+
+</p>
+
+<p>たとえば、以下は Android 3.0 以降で使用されるプリファレンス ヘッダーの XML ファイル（{@code res/xml/preference_headers.xml}）です。
+</p> 
+
+<pre>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" />
+&lt;/preference-headers>
+</pre>
+
+<p>また、以下は Android 3.0 よりも前のバージョンに同じヘッダーを提供するプリファレンス ファイル（{@code res/xml/preference_headers_legacy.xml}）です。
+</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;Preference 
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one"  >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_ONE" />
+    &lt;/Preference>
+    &lt;Preference 
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_TWO" />
+    &lt;/Preference>
+&lt;/PreferenceScreen>
+</pre>
+
+<p>{@code &lt;preference-headers&gt;} のサポートは Android 3.0 で追加されたため、Android 3.0 以降で実行されている場合のみ、システムは {@link android.preference.PreferenceActivity} の {@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} を呼び出します。
+
+「レガシー」ヘッダー ファイル（{@code preference_headers_legacy.xml}）をロードするには、Android のバージョンを確認し、Android 3.0（{@link android.os.Build.VERSION_CODES#HONEYCOMB}）よりも前のバージョンの場合、{@link android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} を呼び出す必要があります。
+
+
+
+
+次に例を示します。</p>
+
+<pre>
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    ...
+
+    if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+
+// Called only on Honeycomb and later
+&#64;Override
+public void onBuildHeaders(List&lt;Header> target) {
+   loadHeadersFromResource(R.xml.preference_headers, target);
+}
+</pre>
+
+<p>残りの手順は、アクティビティに渡される {@link android.content.Intent} を処理して、ロードするプリファレンス ファイルを指定するだけです。
+それには、インテントのアクションを取得し、プリファレンス XML の {@code &lt;intent&gt;} タグで使用した既知のアクション文字列と比較します。
+</p>
+
+<pre>
+final static String ACTION_PREFS_ONE = "com.example.prefs.PREFS_ONE";
+...
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+
+    String action = getIntent().getAction();
+    if (action != null &amp;&amp; action.equals(ACTION_PREFS_ONE)) {
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+
+    else if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+</pre>
+
+<p>{@link android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} の連続呼び出しは、すべてのプリファレンスを 1 つのリストにスタックすることに注意してください。そのため、else if ステートメントを使用して条件を適切に記述して、1 度のみ呼び出されるようにしてください。
+
+
+</p>
+
+
+
+
+
+<h2 id="ReadingPrefs">プリファレンスを読み込む</h2>
+
+<p>デフォルトでは、アプリのプリファレンスは、静的メソッド {@link android.preference.PreferenceManager#getDefaultSharedPreferences PreferenceManager.getDefaultSharedPreferences()} を呼び出すとアプリケーション内のどこからでもアクセス可能なファイルに保存されます。
+
+
+このメソッドは、{@link android.preference.PreferenceActivity} で使用される {@link android.preference.Preference} オブジェクトに関連するすべてのキーと値のペアを含む {@link android.content.SharedPreferences} を返します。
+
+
+</p>
+
+<p>たとえば、次の方法で、アプリケーションのその他のアクティビティからプリファレンスの値の 1 つを読み込むことができます。
+</p>
+
+<pre>
+SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
+String syncConnPref = sharedPref.getString(SettingsActivity.KEY_PREF_SYNC_CONN, "");
+</pre>
+
+
+
+<h3 id="Listening">プリファレンスの変化をリッスンする</h3>
+
+<p>さまざまな理由で、ユーザーがプリファレンスを変更してすぐに通知を受け取ることが必要になることがあります。
+プリファレンスの 1 つに変化が発生したときにコールバックを受け取るには、 {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener SharedPreference.OnSharedPreferenceChangeListener} インターフェースを実装し、{@link android.content.SharedPreferences#registerOnSharedPreferenceChangeListener registerOnSharedPreferenceChangeListener()} を呼び出して {@link android.content.SharedPreferences} オブジェクトにリスナを登録します。
+
+
+
+
+</p>
+
+<p>このインターフェースには、コールバック メソッドが {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener#onSharedPreferenceChanged onSharedPreferenceChanged()} 1 つのみしか含まれておらず、アクティビティの一部として簡単に実装できます。
+
+
+次に例を示します。</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity
+                              implements OnSharedPreferenceChangeListener {
+    public static final String KEY_PREF_SYNC_CONN = "pref_syncConnectionType";
+    ...
+
+    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
+        String key) {
+        if (key.equals(KEY_PREF_SYNC_CONN)) {
+            Preference connectionPref = findPreference(key);
+            // Set summary to be the user-description for the selected value
+            connectionPref.setSummary(sharedPreferences.getString(key, ""));
+        }
+    }
+}
+</pre>
+
+<p>この例では、メソッドが、変更された設定が、既知のプリファレンス キーの設定かどうかチェックしています。メソッドは {@link android.preference.PreferenceActivity#findPreference findPreference()} を呼び出して、変更された {@link android.preference.Preference} オブジェクトを取得しています。これにより、メソッドは、ユーザー選択の説明として表示されるアイテムの概要を変更できます。
+
+
+つまり、その設定が {@link android.preference.ListPreference} またはその他の複数選択可の設定の場合、設定が変更されたときに {@link android.preference.Preference#setSummary setSummary()} を呼び出して現在のステータス（図 5. のスリープ設定など）を表示する必要があります。
+
+
+</p>
+
+<p class="note"><strong>注:</strong> Android Design の <a href="{@docRoot}design/patterns/settings.html">Settings</a> に説明されているように、ユーザーがプリファレンスを変更するごとに、{@link android.preference.ListPreference} の概要を更新して最新の設定を表示することをお勧めします。
+
+</p>
+
+<p>アクティビティでの適切なライフサイクル管理のために、{@link android.app.Activity#onResume} と {@link android.app.Activity#onPause} のそれぞれのコールバック時に、{@link android.content.SharedPreferences.OnSharedPreferenceChangeListener} の登録と登録解除を行うことをお勧めします。
+
+</p>
+
+<pre>
+&#64;Override
+protected void onResume() {
+    super.onResume();
+    getPreferenceScreen().getSharedPreferences()
+            .registerOnSharedPreferenceChangeListener(this);
+}
+
+&#64;Override
+protected void onPause() {
+    super.onPause();
+    getPreferenceScreen().getSharedPreferences()
+            .unregisterOnSharedPreferenceChangeListener(this);
+}
+</pre>
+
+<p class="caution"><strong>警告:</strong> {@link android.content.SharedPreferences#registerOnSharedPreferenceChangeListener registerOnSharedPreferenceChangeListener()} を呼び出す場合、現時点では、プリファレンス マネージャーにはリスナへの強い参照を格納できません。
+
+
+リスナへの強い参照を格納しない場合は、リスナがガベージ コレクションの影響を受けやすくなります。
+リスナが必要な間存在し続けるオブジェクトのインスタンス データ内に、リスナへの参照を保持することをお勧めします。
+
+</p>
+
+<p>たとえば、以下のコードでは、呼び出し元は、リスナへの参照を保持していません。
+結果として、リスナはガベージ コレクションの影響を受けることになり、その後のいずれかの時点でエラーになります。
+</p>
+
+<pre>
+prefs.registerOnSharedPreferenceChangeListener(
+  // Bad! The listener is subject to garbage collection!
+  new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+});
+</pre>
+
+<p>そのため、リスナが必要な間存在し続けるオブジェクトのインスタンス データ フィールドに、リスナへの参照を格納してください。
+</p>
+
+<pre>
+SharedPreferences.OnSharedPreferenceChangeListener listener =
+    new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+};
+prefs.registerOnSharedPreferenceChangeListener(listener);
+</pre>
+
+<h2 id="NetworkUsage">ネットワークの使用を管理する</h2>
+
+
+<p>Android 4.0 以降では、フォアグラウンドとバックグラウンドでのアプリケーションのネットワーク データの使用量を、システムの設定アプリケーションでユーザーが確認できます。
+また、ユーザーは、個々のアプリのバックグラウンド データの使用を無効にできます。
+アプリのバックグラウンドからのデータへのアクセスをユーザーが無効にすることを防ぐには、データ接続を効率的に使用することと、アプリケーションの設定でアプリのデータの利用方法をユーザーが調整できるようにすることが必要です。
+
+<p>
+
+<p>たとえば、データを同期する頻度や、Wi-Fi 上でのみアップロードやダウンロードを実行するようにするかどうか、ローミング時にデータを使用するかどうかなどを、ユーザーが設定できるようにすることができます。
+これらをユーザーが管理できる場合、システム設定に設定した限度にデータ使用量が近づいたときに、データへのアプリのアクセスをユーザーが無効にする可能性は減少します。ユーザーはアプリのアクセスを無効にする代わりに、アプリのデータの使用量を厳密に管理できます。
+
+
+</p>
+
+<p>アプリのデータ使用を管理するために {@link android.preference.PreferenceActivity} に必要なプリファレンスを追加したら、マニフェスト ファイルに {@link android.content.Intent#ACTION_MANAGE_NETWORK_USAGE} のインテント フィルタを追加する必要があります。
+
+次に例を示します。</p>
+
+<pre>
+&lt;activity android:name="SettingsActivity" ... >
+    &lt;intent-filter>
+       &lt;action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
+       &lt;category android:name="android.intent.category.DEFAULT" />
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>このインテント フィルタは、これがアプリケーションのデータ使用をコントロールしているアクティビティであるとシステムに示します。
+これにより、ユーザーがシステム設定アプリからアプリのデータ使用量を調べるときに、[<em>View application settings</em>] ボタンを使用できるようになります。このボタンを押すと、{@link android.preference.PreferenceActivity} が開始し、アプリのデータ使用量を調整できるようになります。
+
+
+</p>
+
+
+
+
+
+
+
+<h2 id="Custom">カスタム プリファレンスを作成する</h2>
+
+<p>Android フレームワークには、異なる設定タイプの UI を作成できるさまざまな {@link android.preference.Preference} サブクラスが含まれています。ただし、番号ピッカーや日付ピッカーなど、組み込みソリューションがない場合に必要な設定が存在する可能性もあります。
+
+
+このような場合、{@link android.preference.Preference} クラスまたは他のサブクラスの 1 つを継承して、カスタム プリファレンスを作成する必要があります。
+</p>
+
+<p>{@link android.preference.Preference} クラスを継承する場合、次のことが必要です。
+</p>
+
+<ul>
+  <li>ユーザーがその設定を選択したときに表示されるユーザー インターフェースを指定する。</li>
+  <li>適切なタイミングで設定の値を保存する。</li>
+  <li>{@link android.preference.Preference} が表示されるときに、現在の値（またはデフォルト値）で初期化する。
+</li>
+  <li>システムによってリクエストされた場合にデフォルト値を提供する。</li>
+  <li>{@link android.preference.Preference} が独自の UI（ダイアログなど）を提供している場合、状態を保存し復元してライフサイクルの変化を処理する（ユーザーが画面を回転させた場合など）。
+</li>
+</ul>
+
+<p>以下の各セクションでは、上記の各事項を実現する方法を説明します。</p>
+
+
+
+<h3 id="CustomSelected">ユーザー インターフェースを指定する</h3>
+
+  <p>{@link android.preference.Preference} クラスを直接継承する場合、{@link android.preference.Preference#onClick()} を実装して、ユーザーがアイテムを選択したときに発生するアクションを定義する必要があります。
+
+ただし、大部分のカスタム設定では、手順が簡単な {@link android.preference.DialogPreference} を継承してダイアログを表示する方法が利用されています。
+{@link android.preference.DialogPreference} を継承する場合、クラス コンストラクタで {@link android.preference.DialogPreference#setDialogLayoutResource setDialogLayoutResourcs()} を呼び出してダイアログのレイアウトを指定する必要があります。
+
+
+</p>
+
+  <p>たとえば、以下のカスタム {@link android.preference.DialogPreference} のコンストラクタでは、レイアウトを宣言しデフォルトのポジティブとネガティブのダイアログ ボタンのテキストを指定しています。
+
+</p>
+
+<pre>
+public class NumberPickerPreference extends DialogPreference {
+    public NumberPickerPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        
+        setDialogLayoutResource(R.layout.numberpicker_dialog);
+        setPositiveButtonText(android.R.string.ok);
+        setNegativeButtonText(android.R.string.cancel);
+        
+        setDialogIcon(null);
+    }
+    ...
+}
+</pre>
+
+
+
+<h3 id="CustomSave">設定の値を保存する</h3>
+
+<p>設定の値が整数の場合、またはブール値を保存する{@link android.preference.Preference#persistBoolean persistBoolean()} の場合、{@link android.preference.Preference#persistInt persistInt()} など、{@link android.preference.Preference} クラスの {@code persist*()} メソッドのいずれかを呼び出すことで、設定の値をいつでも保存できます。
+
+
+</p>
+
+<p class="note"><strong>注:</strong> 各 {@link android.preference.Preference} には、1 つのデータ型のデータのみ保存できます。そのため、カスタム {@link android.preference.Preference} で使用されているデータ型に対応する {@code persist*()} メソッドを使用する必要があります。
+
+</p>
+
+<p>設定をいつ保存したらよいかは、継承する {@link android.preference.Preference} クラスによって異なります。
+{@link android.preference.DialogPreference} を継承する場合、ポジティブな結果でダイアログが閉じられたとき（ユーザーが [OK] ボタンを選択したとき）のみ、値を保存する必要があります。
+
+</p>
+
+<p>{@link android.preference.DialogPreference} が閉じられたときには、システムが {@link android.preference.DialogPreference#onDialogClosed onDialogClosed()} メソッドを呼び出します。
+このメソッドには、ユーザーの結果が「Positive」かどうかを指定するブール値の引数が含まれています &mdash; この値が <code>true</code> の場合はユーザーがポジティブ ボタンを選択しているということであり、新しい値を保存する必要があります。
+
+次に例を示します。
+</p>
+
+<pre>
+&#64;Override
+protected void onDialogClosed(boolean positiveResult) {
+    // When the user selects "OK", persist the new value
+    if (positiveResult) {
+        persistInt(mNewValue);
+    }
+}
+</pre>
+
+<p>この例では、<code>mNewValue</code> は、設定の現在の値を保持するクラスの 1 つです。
+{@link android.preference.Preference#persistInt persistInt()} を呼び出すと、値が {@link android.content.SharedPreferences} ファイルに保存されます（この {@link android.preference.Preference} の XML ファイルに指定されたキーを自動的に使用して保存されます）。
+
+</p>
+
+
+<h3 id="CustomInitialize">現在の値を初期化する</h3>
+
+<p>システムは {@link android.preference.Preference} を画面に追加すると、{@link android.preference.Preference#onSetInitialValue onSetInitialValue()} を呼び出し、その設定用に保存されている値がある場合は通知します。
+
+保存されている値がない場合、この呼び出しによりデフォルト値が設定されます。
+</p>
+
+<p>この {@link android.preference.Preference#onSetInitialValue onSetInitialValue()} メソッドは、ブール値の <code>restorePersistedValue</code> を、その設定用に値が保存済みかどうか示すために渡します。
+
+<code>true</code> の場合、{@link android.preference.Preference} クラスの {@code getPersisted*()} メソッド（整数用の {@link android.preference.Preference#getPersistedInt getPersistedInt()} など）のいずれかを呼び出して保存されている値を取得する必要があります。
+
+
+通常は保存されている値を取得するのは、UI を更新して以前保存した値を反映させるためです。
+
+</p>
+
+<p><code>restorePersistedValue</code> が <code>false</code> の場合、2 番目の引数で渡されたデフォルト値を使用する必要があります。
+</p>
+
+<pre>
+&#64;Override
+protected void onSetInitialValue(boolean restorePersistedValue, Object defaultValue) {
+    if (restorePersistedValue) {
+        // Restore existing state
+        mCurrentValue = this.getPersistedInt(DEFAULT_VALUE);
+    } else {
+        // Set default state from the XML attribute
+        mCurrentValue = (Integer) defaultValue;
+        persistInt(mCurrentValue);
+    }
+}
+</pre>
+
+<p>各 {@code getPersisted*()} メソッドは、値が保存されていない場合またはキーが存在しない場合に使用するデフォルト値を指定する引数を取ります。
+上記の例では、{@link android.preference.Preference#getPersistedInt getPersistedInt()} が保存されている値を返すことができない場合に備えて、ローカル定数がデフォルト値を指定するために使用されています。
+
+</p>
+
+<p class="caution"><strong>警告:</strong> <code>defaultValue</code> は、<code>restorePersistedValue</code> が <code>true</code> の場合、常に null になるため、{@code getPersisted*()} メソッドでデフォルト値として使用<strong>できません</strong>。
+
+</p>
+
+
+<h3 id="CustomDefault">デフォルト値を提供する</h3>
+
+<p>{@link android.preference.Preference} クラスのインスタンスがデフォルト値を指定している場合（{@code android:defaultValue} 属性を使用）、システムは、オブジェクトのインスタンスを作成するときに {@link android.preference.Preference#onGetDefaultValue onGetDefaultValue()} を呼び出してデフォルト値を取得します。
+
+
+システムでデフォルト値を {@link android.content.SharedPreferences} に保存するには、このメソッドを実装する必要があります。
+
+次に例を示します。</p>
+
+<pre>
+&#64;Override
+protected Object onGetDefaultValue(TypedArray a, int index) {
+    return a.getInteger(index, DEFAULT_VALUE);
+}
+</pre>
+
+<p>このメソッドは、属性の配列と取得する必要がある {@code android:defaultValue} のインデックス位置を提供しており、これらはデフォルト値を保存するために必要な情報のすべてです。
+属性からデフォルト値を抽出するためにこのメソッドの実装が必要なのは、デフォルト値が定義されていないときのために属性のローカル デフォルト値を指定する必要があるためです。
+
+</p>
+
+
+
+<h3 id="CustomSaveState">プリファレンスの状態を保存し復元する</h3>
+
+<p>レイアウトの {@link android.view.View} と同じく、{@link android.preference.Preference} サブクラスは、アクティビティやフラグメントが再開される場合（ユーザーが画面を回転させた場合など）に状態の保存と復元を担当します。
+
+{@link android.preference.Preference} クラスの状態を適切に保存し復元するには、ライフサイクル コールバック メソッドの {@link android.preference.Preference#onSaveInstanceState onSaveInstanceState()} と {@link android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()} を実装する必要があります。
+
+
+
+</p>
+
+<p>{@link android.preference.Preference} の状態は、{@link android.os.Parcelable} インターフェースを実装するオブジェクトによって定義されます。
+Android フレームワークでは、このようなオブジェクトである{@link android.preference.Preference.BaseSavedState} クラスが状態オブジェクトを定義するための起点として提供されています。
+
+</p>
+
+<p>{@link android.preference.Preference} クラスが状態を保存する方法を定義するには、{@link android.preference.Preference.BaseSavedState} クラスを継承する必要があります。
+いくつかのメソッドをオーバーライドして {@link android.preference.Preference.BaseSavedState#CREATOR} オブジェクトを定義してください。
+
+</p>
+
+<p>大部分のアプリでは、次の実装をコピーして、{@link android.preference.Preference} サブクラスが整数以外のデータ型のデータを保存している場合は、{@code value} を処理している行を変更するだけで使用できます。
+
+</p>
+
+<pre>
+private static class SavedState extends BaseSavedState {
+    // Member that holds the setting's value
+    // Change this data type to match the type saved by your Preference
+    int value;
+
+    public SavedState(Parcelable superState) {
+        super(superState);
+    }
+
+    public SavedState(Parcel source) {
+        super(source);
+        // Get the current preference's value
+        value = source.readInt();  // Change this to read the appropriate data type
+    }
+
+    &#64;Override
+    public void writeToParcel(Parcel dest, int flags) {
+        super.writeToParcel(dest, flags);
+        // Write the preference's value
+        dest.writeInt(value);  // Change this to write the appropriate data type
+    }
+
+    // Standard creator object using an instance of this class
+    public static final Parcelable.Creator&lt;SavedState> CREATOR =
+            new Parcelable.Creator&lt;SavedState>() {
+
+        public SavedState createFromParcel(Parcel in) {
+            return new SavedState(in);
+        }
+
+        public SavedState[] newArray(int size) {
+            return new SavedState[size];
+        }
+    };
+}
+</pre>
+
+<p>{@link android.preference.Preference.BaseSavedState} の上記の実装をアプリに追加（通常、{@link android.preference.Preference} サブクラスのサブクラスとして追加）するとともに、{@link android.preference.Preference} サブクラスの {@link android.preference.Preference#onSaveInstanceState onSaveInstanceState()} と {@link android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()} を実装する必要があります。
+
+
+
+
+</p>
+
+<p>次に例を示します。</p>
+
+<pre>
+&#64;Override
+protected Parcelable onSaveInstanceState() {
+    final Parcelable superState = super.onSaveInstanceState();
+    // Check whether this Preference is persistent (continually saved)
+    if (isPersistent()) {
+        // No need to save instance state since it's persistent,
+        // use superclass state
+        return superState;
+    }
+
+    // Create instance of custom BaseSavedState
+    final SavedState myState = new SavedState(superState);
+    // Set the state's value with the class member that holds current
+    // setting value
+    myState.value = mNewValue;
+    return myState;
+}
+
+&#64;Override
+protected void onRestoreInstanceState(Parcelable state) {
+    // Check whether we saved the state in onSaveInstanceState
+    if (state == null || !state.getClass().equals(SavedState.class)) {
+        // Didn't save the state, so call superclass
+        super.onRestoreInstanceState(state);
+        return;
+    }
+
+    // Cast state to custom BaseSavedState and pass to superclass
+    SavedState myState = (SavedState) state;
+    super.onRestoreInstanceState(myState.getSuperState());
+    
+    // Set this Preference's widget to reflect the restored state
+    mNumberPicker.setValue(myState.value);
+}
+</pre>
+
diff --git a/docs/html-intl/intl/ja/guide/topics/ui/ui-events.jd b/docs/html-intl/intl/ja/guide/topics/ui/ui-events.jd
new file mode 100644
index 0000000..1cff3f6
--- /dev/null
+++ b/docs/html-intl/intl/ja/guide/topics/ui/ui-events.jd
@@ -0,0 +1,291 @@
+page.title=入力イベント
+parent.title=ユーザー インターフェース
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本書の内容</h2>
+  <ol>
+    <li><a href="#EventListeners">イベントリスナ</a></li>
+    <li><a href="#EventHandlers">イベント ハンドラ</a></li>
+    <li><a href="#TouchMode">タッチモード</a></li>
+    <li><a href="#HandlingFocus">フォーカスの処理</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>Android では、アプリケーションでのユーザーの操作からイベントをインターセプトする方法が複数用意されていますが、ユーザー インターフェース内のイベントをインターセプトする場合は、ユーザーが操作する個々の View オブジェクトからイベントを取得することになります。
+
+View クラスは、このための手段を提供しています。</p>
+
+<p>レイアウトを構成するために使用する各種の View クラスには、UI イベントの処理に役に立ついくつかのパブリック コールバック メソッドが含まれています。
+これらのパブリック コールバック メソッドは、オブジェクトで対応するアクションが発生したときに Android フレームワークによって呼び出されます。
+たとえば、ビュー（ボタンなど）がタップされたときには、そのオブジェクト上で <code>onTouchEvent()</code> メソッドが呼び出されます。
+このようなイベントをインターセプトするには、クラスを継承しメソッドをオーバーライドする必要があります。
+ただし、このようなイベントを処理するたびに View オブジェクトを継承することは、実用的とは言えません。
+そのため、View クラスには、簡単に定義できるコールバックを持つネストされたインターフェースのコレクションも含まれています。
+これらのインターフェースは、<a href="#EventListeners">イベントリスナ</a>と呼ばれ、UI へのユーザーの操作を取得するために使用されます。
+</p>
+
+<p>通常は、イベントリスナを使用して、ユーザーの操作をリッスンすることになりますが、カスタム コンポーネントを作成するために View クラスを継承する場合や、
+処理を工夫するために {@link android.widget.Button} クラスを継承することもできます。
+
+その場合は、クラスの<a href="#EventHandlers">イベント ハンドラ</a>を使用して、クラスにデフォルトのイベント動作を定義できます。
+</p>
+
+
+<h2 id="EventListeners">イベントリスナ</h2>
+
+<p>イベントリスナは、コールバック メソッド 1 つを含む {@link android.view.View} クラスのインターフェースです。
+以下のメソッドは、イベントリスナが登録されているビューが UI アイテムへのユーザーの操作によってトリガーされたときに、Android フレームワークによって呼び出されます。
+</p>
+
+<p>イベントリスナ インターフェースに含まれているのは、以下のコールバック メソッドです。</p>
+
+<dl>
+  <dt><code>onClick()</code></dt>
+    <dd>{@link android.view.View.OnClickListener} のメソッド。ユーザーがアイテムをタップしたとき（タッチモードの場合）、またはナビゲーション キーまたはトラックボールでアイテムにフォーカスを合わせ、適切な「エンター」キーまたはトラックボールを押したときに、呼び出されます。
+
+
+</dd>
+  <dt><code>onLongClick()</code></dt>
+    <dd>{@link android.view.View.OnLongClickListener} のメソッド。ユーザーがアイテムをタップしてホールドしたとき（タッチモードの場合）、またはナビゲーション キーまたはトラックボールでアイテムにフォーカスを合わせ、適切な「エンター」キーまたはトラックボールを長押し（1 秒間）したときに、呼び出されます。
+
+
+</dd>
+  <dt><code>onFocusChange()</code></dt>
+    <dd>{@link android.view.View.OnFocusChangeListener} のメソッド。ナビゲーション キーやトラックボールを使用してユーザーがアイテムに移動してきたときまたはアイテムから離れるときに、呼び出されます。
+</dd>
+  <dt><code>onKey()</code></dt>
+    <dd>{@link android.view.View.OnKeyListener} のメソッド。ユーザーがアイテムにフォーカスを合わせて端末のハードウェア キーを押したとき、または離したときに、呼び出されます。
+</dd>
+  <dt><code>onTouch()</code></dt>
+    <dd>{@link android.view.View.OnTouchListener} のメソッド。画面（アイテムの境界線内）での押す、離す、移動操作などのタップイベントと認定されるアクションをユーザーが実行した場合に呼び出されます。
+
+</dd>
+  <dt><code>onCreateContextMenu()</code></dt>
+    <dd>{@link android.view.View.OnCreateContextMenuListener} のメソッド。コンテキスト メニュー（「長押しクリック」し続けると作成されます）の作成中に呼び出されます。
+コンテキスト メニューについての詳細は、「<a href="{@docRoot}guide/topics/ui/menus.html#context-menu">メニュー</a>」のデベロッパー ガイドをご覧ください。
+
+</dd>
+</dl>
+
+<p>これらのメソッドは、それぞれのインターフェースにおける唯一のメソッドです。これらのいずれかのメソッドを定義しイベントを処理するには、ネストされたインターフェースをアクティビティに実装するか、ネストされたインターフェースを匿名クラスとして定義します。次に、その実装のインスタンスを対応する <code>View.set...Listener()</code> メソッドに渡します。
+
+
+（例: <code>{@link android.view.View#setOnClickListener(View.OnClickListener) setOnClickListener()}</code> を呼び出し、{@link android.view.View.OnClickListener OnClickListener} の実装を渡します）。
+
+</p>
+
+<p>次の例は、ボタンへの on-click リスナの登録方法を示しています。 </p>
+
+<pre>
+// Create an anonymous implementation of OnClickListener
+private OnClickListener mCorkyListener = new OnClickListener() {
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+};
+
+protected void onCreate(Bundle savedValues) {
+    ...
+    // Capture our button from layout
+    Button button = (Button)findViewById(R.id.corky);
+    // Register the onClick listener with the implementation above
+    button.setOnClickListener(mCorkyListener);
+    ...
+}
+</pre>
+
+<p>OnClickListener をアクティビティの一部として実装すると、余分なクラスのロードとオブジェクトの割り当てを避けることができます。
+次に例を示します。</p>
+<pre>
+public class ExampleActivity extends Activity implements OnClickListener {
+    protected void onCreate(Bundle savedValues) {
+        ...
+        Button button = (Button)findViewById(R.id.corky);
+        button.setOnClickListener(this);
+    }
+
+    // Implement the OnClickListener callback
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+    ...
+}
+</pre>
+
+<p>上の例の <code>onClick()</code> コールバックには戻り値がありませんが、イベントリスナ メソッドの中には、ブール値を返すことが必要なものもあることに注意してください。
+ブール値が示す事柄はイベントによって異なります。
+以下はその例です。</p>
+<ul>
+  <li><code>{@link android.view.View.OnLongClickListener#onLongClick(View) onLongClick()}</code> - イベントを消費済みでこれ以上イベントを引き継ぐべきでないかどうかを示すブール値を返します。
+つまり、イベントが処理済みでイベントの停止が必要なことを示す場合は、<em>true</em> を返します。イベントが未処理の場合や、他の on-click リスナへのイベントの引き継ぎが必要な場合は、<em>false</em> を返します。
+
+
+</li>
+  <li><code>{@link android.view.View.OnKeyListener#onKey(View,int,KeyEvent) onKey()}</code> - イベントを消費済みでこれ以上イベントを引き継ぐべきでないかどうかを示すブール値を返します。
+
+    つまり、イベントが処理済みでイベントの停止が必要なことを示す場合は、<em>true</em> を返します。イベントが未処理の場合や、他の on-key リスナへのイベントの引き継ぎが必要な場合は、<em>false</em> を返します。
+
+</li>
+  <li><code>{@link android.view.View.OnTouchListener#onTouch(View,MotionEvent) onTouch()}</code> - リスナがイベントを消費しているかどうかを示すブール値を返します。
+ここで注意する必要があるのは、このイベントが相互にフォローし合う複数のアクションを含むことがあることです。
+ダウン アクション イベントが受け取られたときに <em>false</em> を返すと、そのイベントを消費しておらず、そのイベントから続けて発生するアクションに関心がないことを示すことになります。
+
+そのため、指での操作などのそのイベント内のその他のアクションや操作の最後に発生する アップ アクション イベントで、呼び出されることはなくなります。
+</li>
+</ul>
+
+<p>ハードウェア キー イベントは常に、その時点でフォーカスがあるビューに届けられることに注意してください。ハードウェア・キー・イベントは、ビュー階層の一番上から下に適切な対象に到達するまでディスパッチされます。
+ビュー（またはビューの子）にフォーカスがある場合、イベントが <code>{@link android.view.View#dispatchKeyEvent(KeyEvent)
+dispatchKeyEvent()}</code> メソッドを介して伝わっていると判断できます。
+ビューを通じてキーイベントを取得する別の方法としては、<code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code> と <code>{@link android.app.Activity#onKeyUp(int,KeyEvent) onKeyUp()}</code> を使用してアクティビティ内のすべてのイベントを受け取る方法もあります。
+
+</p>
+
+<p>また、アプリケーションのテキスト入力について検討する際は、多くの端末にソフトウェア入力メソッドしかないことに注意してください。
+ソフトウェア入力メソッドでは、キーの利用は必要ありません。音声入力や手書き入力などを利用できるものもあります。入力メソッドがキーボードに似たインターフェースを提供していたとしても、そのインターフェースは通常、<code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code> ファミリーのイベントをトリガー<strong>しません</strong>。
+
+アプリケーションの使用をハードウェア キーボード付きの端末に限定するのではない限り、制御するために特定のキーを押すことが必要な UI は作成しないでください。
+
+特に、ユーザーのリターンキー押下時に入力を検証するような処理は行わないようにし、代わりに {@link android.view.inputmethod.EditorInfo#IME_ACTION_DONE} などのアクションを使用して入力メソッドにアプリケーションが求める反応を伝えてください。そうすることで、入力メソッドが UI を意味のあるものにします。
+
+ソフトウェア入力メソッドの動作を推測し、その推測に基づいて、書式設定済みのテキストをアプリケーションに提供することは避けてください。
+</p>
+
+<p class="note"><strong>注:</strong> Android では、まずイベント ハンドラが呼び出され、次にクラス定義から適切なデフォルト ハンドラが呼び出されます。
+そのため、これらのイベントリスナから <em>true</em> が返された場合、イベントの他のイベントリスナへの伝播は止まり、ビューのデフォルトのイベント ハンドラへのコールバックもブロックされます。
+
+そのため、イベントを終了させたいことが確実な場合のみ、<em>true</em> を返すようにしてください。</p>
+
+
+<h2 id="EventHandlers">イベント ハンドラ</h2>
+
+<p>ビューからカスタム コンポーネントを作成する場合、デフォルトのイベント ハンドラとして使用される複数のコールバック メソッドを定義できます。イベント ハンドリングに使用される次のような一般的なコールバックの一部については、詳細を<a href="{@docRoot}guide/topics/ui/custom-components.html">カスタム コンポーネント</a>についてのドキュメントでご覧いただけます。
+
+
+
+</p>
+<ul>
+  <li><code>{@link  android.view.View#onKeyDown}</code> - 新しいキーイベントの発生時に呼び出されます。</li>
+  <li><code>{@link  android.view.View#onKeyUp}</code> - キー アップ イベントの発生時に呼び出されます。</li>
+  <li><code>{@link  android.view.View#onTrackballEvent}</code> - トラックボール モーション イベントの発生時に呼び出されます。</li>
+  <li><code>{@link  android.view.View#onTouchEvent}</code> - タッチスクリーン モーション イベント発生時に呼び出されます。</li>
+  <li><code>{@link  android.view.View#onFocusChanged}</code> - ビューがフォーカスを取得した場合または失った場合に呼び出されます。</li>
+</ul>
+<p>View クラスに含まれていないメソッドの中にも、イベントの処理の方法に直接関係するメソッドがいくつかあります。
+そのため、レイアウト内の複雑なイベントを管理する場合は、以下のメソッドの使用を検討してください。
+</p>
+<ul>
+  <li><code>{@link  android.app.Activity#dispatchTouchEvent(MotionEvent)
+    Activity.dispatchTouchEvent(MotionEvent)}</code> - {@link android.app.Activity} が、すべてのタップイベントをウィンドウにディスパッチされる前にインターセプトできるようにします。
+</li>
+  <li><code>{@link  android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)
+    ViewGroup.onInterceptTouchEvent(MotionEvent)}</code> - {@link android.view.ViewGroup} が、イベントが子ビューにディスパッチされたときにイベントを監視できるようにします。
+</li>
+  <li><code>{@link  android.view.ViewParent#requestDisallowInterceptTouchEvent(boolean)
+    ViewParent.requestDisallowInterceptTouchEvent(boolean)}</code> - このメソッドを親ビュー上で呼び出すことで、<code>{@link 
+    android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)}</code> による親ビューのタップイベントのインターセプトを許可しないことを示すことができます。
+</li>
+</ul>
+
+<h2 id="TouchMode">タッチモード</h2>
+<p>
+ユーザーが方向キーまたはトラックボールを使用してユーザー インターフェースを操作する場合、入力を受け付けるアイテムがどのアイテムなのかユーザーが知ることができるようにアクション可能なアイテム（ボタンなど）にフォーカスを与えることが必要になります。
+
+ただし、端末にタッチ機能がある場合は、ユーザーはタップでインターフェースの操作を開始するため、アイテムをハイライトすることや、特定のビューにフォーカスを与えることは必要ではなくなりました。
+
+そのため、「タッチモード」と名付けられた操作モードが存在します。
+ 
+</p>
+<p>
+タッチ可能な端末では、ユーザーが画面をタップすると、端末がタッチモードになります。
+端末がタッチモードの場合、テキスト編集ウィジェットなどの {@link android.view.View#isFocusableInTouchMode} が true のビューのみがフォーカス可能であり、ボタンなどのタップ可能なその他のビューは、タップされたときにフォーカスされることはありません。それらのビューは、押されたときに、on-click リスナを起動します。
+
+
+
+</p>
+<p>
+ユーザーが方向キーを押すか、またはトラックボールをスクロールすると、端末はタッチモードから抜け、ビューがフォーカスを取得します。
+これにより、ユーザーは、画面をタップすることなく、ユーザー インターフェースの操作を再開できます。
+
+</p>
+<p>
+タッチモード状態は、システム全体（すべてのウィンドウとアクティビティ）で維持されます。端末が現在タッチモードかどうか確認するには、{@link android.view.View#isInTouchMode} を呼び出します。
+
+
+</p>
+
+
+<h2 id="HandlingFocus">フォーカスの処理</h2>
+
+<p>フレームワークは、ユーザーに入力に応じて、通常のフォーカス移動を処理します。フレームワークが処理するフォーカス移動には、ビューが削除されたり非表示になったり、新しいビューが利用可能になったりしたことによるフォーカスの変化も含まれます。
+
+ビューは、<code>{@link android.view.View#isFocusable()}</code> メソッドで、フォーカスが取得可能なことを示します。
+ビューのフォーカスの取得可否を変更するには、<code>{@link android.view.View#setFocusable(boolean) setFocusable()}</code> を呼び出します。
+タッチモードでは、<code>{@link android.view.View#isFocusableInTouchMode()}</code> でビューがフォーカスを取得可能かどうか確認できます。ビューのフォーカスの取得可否は、<code>{@link android.view.View#setFocusableInTouchMode(boolean) setFocusableInTouchMode()}</code> で変更できます。
+
+
+</p>
+
+<p>フォーカスの移動は、所定の方向で最も近くにあるアイテムを見つけるアルゴリズムに基づきますが、
+まれに、デフォルトのアルゴリズムが開発者の意図する動作と一致しない場合もあります。
+この場合、レイアウト ファイルの 
+
+<var>nextFocusDown</var>、 <var>nextFocusLeft</var>、 <var>nextFocusRight</var>、
+<var>nextFocusUp</var> の各 XML 属性を明示的にオーバーライドできます。これらの属性のいずれかを、フォーカスの移動<em>元</em>のビューに追加します。
+フォーカスの移動<em>先</em>のビューの ID になる属性の値を定義します。
+次に例を示します。</p>
+<pre>
+&lt;LinearLayout
+    android:orientation="vertical"
+    ... >
+  &lt;Button android:id="@+id/top"
+          android:nextFocusUp="@+id/bottom"
+          ... />
+  &lt;Button android:id="@+id/bottom"
+          android:nextFocusDown="@+id/top"
+          ... />
+&lt;/LinearLayout>
+</pre>
+
+<p>本来、上記の縦方向のレイアウトでは、1 番上のボタンから上に移動しようとしても、2 番目のボタンから下に移動しようしても、どこにもフォーカスが移動しないはずでしたが、上記の処理により、
+1 番上のボタンによって 1 番下のボタンが 
+ <var>nextFocusUp</var>  として定義され（逆の場合も同様）、フォーカスが、上から下と下から上に順番に移動するようになります。
+</p>
+
+<p>UI でビューをフォーカス可能にする場合は（従来は、ビューはフォーカス可能ではありません）、レイアウトの宣言で <code>android:focusable</code> XML 属性をビューに追加し、値を 
+
+ <var>true</var> に設定します。また、<code>android:focusableInTouchMode</code> を使用して、タッチモードのときにビューをフォーカス可能にすることもできます。
+</p>
+<p>特定のビューへのフォーカスをリクエストするには、<code>{@link android.view.View#requestFocus()}</code> を呼び出します。</p>
+<p>フォーカス イベントをリッスンするには（ビューがフォーカスを受け取ったときまたは失ったときに通知を受け取るには）、上記の<a href="#EventListeners">イベントリスナ</a>のセクションの説明に従って <code>{@link android.view.View.OnFocusChangeListener#onFocusChange(View,boolean) onFocusChange()}</code> を使用します。
+
+</p>
+
+
+
+<!--
+<h2 is="EventCycle">Event Cycle</h2>
+   <p>The basic cycle of a View is as follows:</p>
+   <ol>
+    <li>An event comes in and is dispatched to the appropriate View. The View
+    handles the event and notifies any listeners.</li>
+    <li>If, in the course of processing the event, the View's bounds may need
+    to be changed, the View will call {@link android.view.View#requestLayout()}.</li>
+    <li>Similarly, if in the course of processing the event the View's appearance
+    may need to be changed, the View will call {@link android.view.View#invalidate()}.</li>
+    <li>If either {@link android.view.View#requestLayout()} or {@link android.view.View#invalidate()} were called,
+    the framework will take care of measuring, laying out, and drawing the tree
+    as appropriate.</li>
+   </ol>
+   
+   <p class="note"><strong>Note:</strong> The entire View tree is single threaded. You must always be on
+   the UI thread when calling any method on any View.
+   If you are doing work on other threads and want to update the state of a View
+   from that thread, you should use a {@link android.os.Handler}.
+   </p>
+-->
diff --git a/docs/html-intl/intl/ja/index.jd b/docs/html-intl/intl/ja/index.jd
index a11136d..755ec62 100644
--- a/docs/html-intl/intl/ja/index.jd
+++ b/docs/html-intl/intl/ja/index.jd
@@ -5,43 +5,81 @@
 
 @jd:body
 
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
 
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="/preview/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
   <div class="wrap" style="max-width:1100px;margin-top:0">
-    <div class="cols dac-hero-content">
-      <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
-      </div>
-      <div class="col-8of16 col-pull-7of16">
-        <div class="dac-hero-tag"></div>
-
-        <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
-        <p class="dac-hero-description">次期バージョンの Android に向けて準備しましょう。
-        Nexus 5、6、9、Nexus Player でアプリをテストします。 </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/index.html">
+    <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+      <a href="{@docRoot}preview/index.html">
+        <h1 class="dac-hero-title">Android N Developer Preview</h1>
+        <p class="dac-hero-description">
+          Get ready for the next version of Android!
+          <strong>Test your apps</strong> on Nexus and other devices. Support new system
+          behaviors to <strong>save power and memory</strong>.
+          Extend your apps with <strong>multi-window UI</strong>,
+          <strong>direct reply notifications</strong> and more.
+        </p>
+        <a class="dac-hero-cta" href="/preview/index.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          スタートガイド
-        </a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
+          Learn more
+        </a><!--<br>
+        <a class="dac-hero-cta" href="/preview/support.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-
-      </div>
+          Update to Developer Preview (final SDK)
+        </a><br>-->
+      </a>
+    </div>
+    <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+      <a href="{@docRoot}preview/index.html">
+        <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+             srcset="/images/home/n-preview-hero.png 1x,
+             /images/home/n-preview-hero_2x.png 2x">
+        </a>
     </div>
   </div>
-</a>
-</article></section>
+</section>
 
-<div class="actions-bar dac-expand dac-invert">
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
   <div class="wrap dac-offset-parent">
     <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
       <i class="dac-sprite dac-arrow-down-gray"></i>
     </a>
+    <ul class="dac-actions">
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}sdk/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Get the SDK
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}samples/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Browse sample code
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}distribute/stories/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Watch stories
+        </a>
+      </li>
+    </ul>
+  </div><!-- end .wrap -->
+</div><!-- end .dac-actions -->
+
+<div id="useOldTemplates" style="display:none" class="actions-bar dac-expand dac-invert">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button="" href="#build-apps">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
     <div class="actions">
       <div><a href="{@docRoot}sdk/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
@@ -51,17 +89,15 @@
         <span class="dac-sprite dac-auto-chevron-large"></span>
         Browse Samples
       </a></div>
-      <div><a href="//www.youtube.com/user/androiddevelopers">
+      <div><a href="{@docRoot}distribute/stories/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
-        Watch Videos
+        Watch Stories
       </a></div>
     </div><!-- end .actions -->
   </div><!-- end .wrap -->
-</div><!-- end .actions-bar -->
+</div>
 
-
-
-<section class="dac-section dac-section-light" id="build-apps"><div class="wrap">
+<section class="dac-section dac-light" id="build-apps"><div class="wrap">
   <h1 class="dac-section-title">Build Beautiful Apps</h1>
   <div class="dac-section-subtitle">
     Resources to get you started with designing and developing for Android.
diff --git a/docs/html-intl/intl/ja/preview/api-overview.jd b/docs/html-intl/intl/ja/preview/api-overview.jd
deleted file mode 100644
index 33cabc3..0000000
--- a/docs/html-intl/intl/ja/preview/api-overview.jd
+++ /dev/null
@@ -1,521 +0,0 @@
-page.title=API の概要
-page.keywords=プレビュー,sdk,互換性
-page.tags=previewresources, androidm sdk.platform.apiLevel=22-mnc
-page.image=images/cards/card-api-overview_16-9_2x.png
-@jd:body
-
-
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>本書の内容
- <a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
-        <span class="more">詳細を表示</span>
-        <span class="less" style="display:none">詳細を非表示</span></a></h2>
-
-<ol id="toc44" class="hide-nested">
-  <li><a href="#app-linking">アプリのリンク機能</a></li>
-  <li><a href="#backup">アプリの自動バックアップ</a></li>
-  <li><a href="#authentication">認証</a>
-    <ol>
-      <li><a href="#fingerprint-authentication">指紋認証</a></li>
-      <li><a href="#confirm-credential">資格情報の確認</a></li>
-    </ol>
-  </li>
-  <li><a href="#direct-share">ダイレクト シェア</a></li>
-  <li><a href="#voice-interactions">音声インタラクション</a></li>
-  <li><a href="#assist">Assist API</a></li>
-  <li><a href="#notifications">通知</a></li>
-  <li><a href="#bluetooth-stylus">Bluetooth スタイラスのサポート</a></li>
-  <li><a href="#ble-scanning">Bluetooth Low Energy のスキャンの改善</a></li>
-  <li><a href="#hotspot">アクセス ポイント2.0 リリース 1 のサポート</a></li>
-  <li><a href="#4K-display">4K ディスプレイ モード</a></li>
-  <li><a href="#behavior-themeable-colorstatelists">テーマ化可能な ColorStateLists</a></li>
-  <li><a href="#audio">オーディオ機能</a></li>
-  <li><a href="#video">ビデオ機能</a></li>
-  <li><a href="#camera">カメラ機能</a>
-    <ol>
-      <li><a href="#flashlight">Flashlight API</a></li>
-      <li><a href="#reprocessing">カメラの再処理</a></li>
-    </ol>
-  </li>
-  <li><a href="#afw">Android for Work の機能</a></li>
-</ol>
-
-<h2>API の変更点</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API レベル 22 から M Preview&raquo;</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>M Developer Preview では、ユーザーやアプリ開発者に Android プラットフォームの次期リリースの新機能をいち早く試していただくことができます。
-
-このドキュメントでは、いくつかの注目すべき API の概要について説明します。</p>
-
-<p>M Developer Preview は、<strong>Developer の早期導入者</strong>と<strong>テスター</strong>を対象としています。
-是非
-<a href="{@docRoot}preview/setup-sdk.html">M Developer Preview を試して</a>フィードバックをご提供ください。あなたのご意見が、Android フレームワークの方向性を決定する上で貴重な情報になります。
-
-</p>
-
-<p class="caution"><strong>注意:</strong> M Developer Preview を使用したアプリは、Google Play ストアには公開しないでください。
-</p>
-
-<p class="note"><strong>注</strong>: このドキュメントには、まだ <a href="{@docRoot}">developer.android.com</a> のリファレンス マテリアルにないクラスやメソッドが多数登場します。
-このドキュメントでは、API エレメントは {@code code style} 形式で記載されています（ハイパーリンクなし）。
-これらのエレメントに関する API ドキュメント（準備段階）については、<a href="{@docRoot}preview/download.html#docs">プレビューのリファレンス</a>をダウンロードしてください。
-</p>
-
-<h3>重要な動作の変更点</h3>
-
-<p>過去に Android にアプリを公開したことがある場合は、アプリがプラットフォームの変更による影響を受ける場合があります。
-</p>
-
-<p>詳細については、<a href="behavior-changes.html">Behavior Changes</a> をご覧ください。</p>
-
-<h2 id="app-linking">アプリのリンク機能</h2>
-<p>このプレビューでは、アプリのリンク機能を強化することで Android のインテント システムが向上しました。この機能では、所有するウェブドメインにアプリを関連付けることができます。
-この関連付けに基づいて、プラットフォームが特定のウェブリンクの処理に使用するデフォルトのアプリを決めることができ、ユーザーにアプリを選択させる操作をスキップできます。この機能の実装方法については、
-<a href="{@docRoot}preview/features/app-linking.html">アプリのリンク機能</a>をご覧ください。
-
-
-
-<h2 id="backup">アプリの自動バックアップ</h2>
-<p>システムで、アプリの自動フルデータ バックアップと復元を実行できるようになりました。この動作は、M Preview を対象としたアプリでデフォルトで有効になっています。追加のコードは必要ありません。
-ユーザーが Google アカウントを削除すると、バックアップ データも削除されます。
-この機能の仕組みとファイル システムでバックアップ対象を設定する方法については、
-<a href="{@docRoot}preview/backup/index.html">アプリの自動バックアップ</a>をご覧ください。
-</p>
-
-<h2 id="authentication">認証</h2>
-<p>このプレビューでは、サポートされる端末での指紋スキャンを使用したユーザー認証や、端末のロック解除メカニズム（ロック画面のパスワードなど）を使って最後にユーザーが認証された時期の確認などを行える新しい API が提供されます。
-
-これらの API は、<a href="{@docRoot}training/articles/keystore.html">Android キーストローク システム</a>と共に使用します。
-</p>
-
-<h3 id="fingerprint-authentication">指紋認証</h3>
-
-<p>指紋スキャンでユーザーを認証するには、新しい
-{@code android.hardware.fingerprint.FingerprintManager} クラスのインスタンスを取得して、
-{@code FingerprintManager.authenticate()} メソッドを呼び出します。アプリは、指紋センサー付きの、互換性のある端末上で実行している必要があります。
-指紋認証フローのユーザー インターフェースをアプリに実装し、UI には標準の Android 指紋アイコンを使用する必要があります。Android 指紋アイコン（{@code c_fp_40px.png}）は<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">サンプルアプリ</a>に含まれています。指紋認証を使用するアプリを複数開発する場合は、それぞれのアプリで個別にユーザーの指紋を認証する必要があります。
-
-
-
-
-</p>
-
-<p>アプリでこの機能を使用するには、まずマニフェストに {@code USE_FINGERPRINT} パーミッションを追加する必要があります。
-</p>
-
-<pre>
-&lt;uses-permission
-        android:name="android.permission.USE_FINGERPRINT" /&gt;
-</pre>
-
-<img src="{@docRoot}preview/images/fingerprint-screen.png" srcset="{@docRoot}preview/images/fingerprint-screen.png 1x, {@docRoot}preview/images/fingerprint-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-
-<p>アプリでの指紋認証の実装については、
-<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">指紋ダイアログのサンプル</a>をご覧ください。
-</p>
-
-<p>この機能をテストする場合は、次の手順を使用します。</p>
-<ol>
-<li>Android SDK Tools Revision 24.3 をインストールします（まだインストールしていない場合）。</li>
-<li>
-<strong>[設定] &gt; [セキュリティ] &gt; [指紋]</strong> の登録手順に従い、エミュレータに新しい指紋を登録します。</li>
-<li>エミュレータを使って、次のコマンドで指紋のタッチ ベントをエミュレートします。
-同じコマンドを使って、ロック画面やアプリでの指紋のタッチイベントをエミュレートします。
-
-<pre class="no-prettyprint">
-adb -e emu finger touch &lt;finger_id&gt;
-</pre>
-<p>Windows では、{@code telnet 127.0.0.1 <emulator-id>}、
-{@code finger touch <finger_id>} の順に実行する必要がある場合があります。
-</p>
-</li>
-</ol>
-
-<h3 id="confirm-credential">資格情報の確認</h3>
-<p>アプリでは、ユーザーがいつ、最後に端末のロックを解除したかに基づいて、ユーザーを認証できます。この機能によって、ユーザーがアプリ固有のパスワードを覚えたり、開発者が独自の認証ユーザー インターフェースを実装したりする必要性がなくなります。
-
-アプリでこの機能を使用する場合は、ユーザー認証用の公開鍵か秘密鍵を実装する必要があります。
-</p>
-
-<p>ユーザーが正常に認証された後、同じキーを再使用できるタイムアウト期間を設定するには、{@link javax.crypto.KeyGenerator} か
-{@link java.security.KeyPairGenerator} のセットアップ後に新しい
-{@code android.security.keystore.KeyGenParameterSpec.setUserAuthenticationValidityDurationSeconds()} メソッドを呼び出します。
-
-現在、この機能は対象暗号化操作で動作します。
-</p>
-
-<p>再認証ダイアログを過度に表示しないようにします。アプリでは、まず暗号オブジェクトを使用し、タイムアウトした場合は
-{@link android.app.KeyguardManager#createConfirmDeviceCredentialIntent(java.lang.CharSequence, java.lang.CharSequence) createConfirmDeviceCredentialIntent()} メソッドを使用してユーザーをアプリ内で再認証するようにします。
-
-
-</p>
-
-<p>アプリでのこの機能の実装については、
-<a href="https://github.com/googlesamples/android-ConfirmCredential" class="external-link">資格情報の確認サンプル</a>をご覧ください。
-</p>
-
-<h2 id="direct-share">ダイレクト シェア</h2>
-
-<img src="{@docRoot}preview/images/direct-share-screen.png" srcset="{@docRoot}preview/images/direct-share-screen.png 1x, {@docRoot}preview/images/direct-share-screen_2x.png 2x" style="float:right; margin:0 0 20px 30px" width="312" height="329" />
-
-<p>このプレビューでは、ユーザーが直感的にすばやく共有できるようにする API が提供されます。アプリで特定のアクティビティを起動する<em>ダイレクト シェアのターゲット</em>を定義すると、それらのダイレクト シェアのターゲットは <em>[共有]</em> メニューに表示されるようになります。
-
-この機能を使うと、他のアプリ内にある連絡先などのターゲットにコンテンツを共有できます。
-たとえば、ダイレクト シェアのターゲットによって他のソーシャル ネットワーク アプリのアクティビティが起動し、そのアプリ内の特定の友人やコミュニティに直接コンテンツを共有できるようになります。
-
-</p>
-
-<p>ダイレクト シェアのターゲットを有効にするには、まず
-{@code android.service.} を拡張するクラスを定義する必要があります。 <br>
-{@code chooser.ChooserTargetService} クラス。マニフェストで
-{@code ChooserTargetService} を宣言します。その宣言内で、
-{@code BIND_CHOOSER_TARGET_SERVICE} パーミッションと、
-{@code SERVICE_INTERFACE} アクションを使ったインテント フィルタを指定します。</p>
-<p>次の例は、マニフェストで {@code ChooserTargetService} を宣言する方法を示しています。
-</p>
-<pre>
-&lt;service android:name=".ChooserTargetService"
-        android:label="&#64;string/service_name"
-        android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE"&gt;
-    &lt;intent-filter&gt;
-        &lt;action android:name="android.service.chooser.ChooserTargetService" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/service&gt;
-</pre>
-
-<p>{@code ChooserTargetService} に公開するアクティビティごとに、 {@code "android.service.chooser.chooser_target_service"} という名前の
-{@code <meta-data>} 要素をアプリのマニフェストに追加します。
-
-</p>
-
-<pre>
-&lt;activity android:name=".MyShareActivity”
-        android:label="&#64;string/share_activity_label"&gt;
-    &lt;intent-filter>
-        &lt;action android:name="android.intent.action.SEND" /&gt;
-    &lt;/intent-filter>
-&lt;meta-data
-        android:name="android.service.chooser.chooser_target_service"
-        android:value=".ChooserTargetService" /&gt;
-&lt;/activity>
-</pre>
-
-<h2 id="voice-interactions">音声インタラクション</h2>
-<p>
-このプレビューでは、<a href="https://developers.google.com/voice-actions/" class="external-link">音声アクション</a>と共に使用することでアプリに対話形式の音声操作をビルドできる新しい音声インタラクション API が提供されます。
-
-
-{@code android.app.Activity.isVoiceInteraction()} メソッドを呼び出して、アクティビティが音声アクションへの応答として開始されたかどうかを確認します。
-音声アクションへの応答であった場合、アプリで
-{@code android.app.VoiceInteractor} クラスを使用してユーザーに音声の確認や、オプションのリストからの選択などを要求できます。
-音声アクションの実装の詳細については、
-<a href="https://developers.google.com/voice-actions/interaction/" class="external-link">音声アクションの開発者サイト</a>をご覧ください。
-</p>
-
-<h2 id="assist">Assist API</h2>
-<p>
-このプレビューでは、アシスタントを介してユーザーがアプリを操作できる新しい方法が用意されています。この機能を使用するには、ユーザーが現在のコンテキストを使うようアシスタントを有効にする必要があります。
-有効にすると、<strong>ホーム</strong> ボタンを長押しすることで、すべてのアプリ内でアシスタントを呼び出すことができます。
-</p>
-<p>
-{@link android.view.WindowManager.LayoutParams#FLAG_SECURE} フラグを設定すると、アプリが現在のコンテキストをアシスタントと共有しないようにできます。新しい {@code android.app.Activity.AssistContent} クラスを使用すると、プラットフォームがアシスタントに渡す標準的な情報セットの他に、アプリで追加の情報を共有できます。
-
-</p>
-
-<p>アプリから追加のコンテキストをアシスタントに提供するには、次の手順を使用します。</p>
-
-<ol>
-<li>{@link android.app.Application.OnProvideAssistDataListener} インターフェースを実装します。</li>
-<li>
-{@link android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener) registerOnProvideAssistDataListener()} を使用してこのリスナーを登録します。</li>
-<li>アクティビティ固有の文脈情報を提供するには、
-{@link android.app.Activity#onProvideAssistData(android.os.Bundle) onProvideAssistData()} コールバックと、任意で新しい
-{@code Activity.onProvideAssistContent()} コールバックをオーバーライドします。
-</ol>
-
-<h2 id="notifications">通知</h2>
-<p>このプレビューでは、通知に関して次のような API の変更点が追加されています。</p>
-<ul>
-  <li>新しい<em>アラームのみの</em> Do not disturb モードに相当する新しい {@code NotificationListenerService.INTERRUPTION_FILTER_ALARMS} フィルタレベル。
-</li>
-  <li>ユーザーが予定したリマインダを他のイベント（{@link android.app.Notification#CATEGORY_EVENT}）やアラーム（{@link android.app.Notification#CATEGORY_ALARM}）から区別する際に使用される新しい{@code Notification.CATEGORY_REMINDER} カテゴリの値。
-
-
-</li>
-  <li>{@code Notification.Builder.setSmallIcon(Icon)} メソッドや {@code Notification.Builder.setLargeIcon(Icon)} メソッド経由で通知にアタッチできる新しい {@code android.graphics.drawable.Icon} クラス。
-
-</li>
-  <li>現在どの通知がアクティブなのかをアプリが検出できるようにする新しい {@code NotificationManager.getActiveNotifications()} メソッド。
-この機能を使用するアプリの実装については、<a href="https://github.com/googlesamples/android-ActiveNotifications" class="external-link">アクティブな通知のサンプル</a>をご覧ください。
-</li>
-</ul>
-
-<h2 id="bluetooth-stylus">Bluetooth スタイラスのサポート</h2>
-<p>このプレビューでは、Bluetooth スタイラスを使用したユーザー入力のサポートが強化されました。互換性のある Bluetooth スタイラスと電話やタブレットをペアリングして接続できます。
-接続されている間、タッチスクリーンからの位置情報とスタイラスからの筆圧やボタン情報を合わせることで、タッチスクリーン単独の場合よりも表現の幅が大きく広がります。
-
-新しい
-{@code View.onStylusButtonPressListener} コールバックと {@code GestureDetector.OnStylusButtonPressListener} コールバックをアクティビティに登録すると、スタイラスのボタンが押されたことをアプリがリッスンし、次のアクションを実行できるようになります。
-
-</p>
-
-<p>スタイラスのボタン操作を検出するには、{@link android.view.MotionEvent} メソッドと定数を使用します。
-</p>
-<ul>
-<li>ユーザーがスタイラスでアプリ画面のボタンをタップすると、
-{@link android.view.MotionEvent#getToolType(int) getTooltype()} メソッドが
-{@link android.view.MotionEvent#TOOL_TYPE_STYLUS} を返します。</li>
-<li>M Preview を対象としたアプリでは、ユーザーがプライマリのスタイラス ボタンを押すと
-{@link android.view.MotionEvent#getButtonState() getButtonState()} メソッドが {@code MotionEvent.STYLUS_BUTTON_PRIMARY} を返します。
-
-スタイラスにセカンダリ ボタンがある場合は、ユーザーがそのボタンを押したときに同じメソッドで {@code MotionEvent.STYLUS_BUTTON_SECONDARY} が返されます。
-ユーザーが同時に両方のボタンを押した場合は、両方の値が OR で返されます（{@code STYLUS_BUTTON_PRIMARY|STYLUS_BUTTON_SECONDARY}）
-
-</li>
-<li>
-以前のプラットフォーム バージョンを対象としたアプリでは、
-{@link android.view.MotionEvent#getButtonState() getButtonState()} メソッドは
-{@link android.view.MotionEvent#BUTTON_SECONDARY}（プライマリのスタイラス ボタンが押されたとき）、
-{@link android.view.MotionEvent#BUTTON_TERTIARY}（セカンダリのスタイラス ボタンが押されたとき）、または両方を返します。
-</li>
-</ul>
-
-<h2 id="ble-scanning">Bluetooth Low Energy のスキャンの改善</h2>
-<p>
-アプリで Bluetooth Low Energy スキャンを実行する場合は、新しい
-{@code android.bluetooth.le.ScanSettings.Builder.setCallbackType()} メソッドを使って、設定された
-{@link android.bluetooth.le.ScanFilter} に一致する宣伝パケットが最初に見つかったときと、それが長期間見つからない場合に通知する目的でのみコールバックが必要であると指定できます。
-
-このスキャン アプローチは、以前のプラットフォーム バージョンで提供されていたものよりもはるかに効率的です。
-
-</p>
-
-<h2 id="hotspot">アクセス ポイント 2.0 リリース 1 のサポート</h2>
-<p>
-このプレビューでは、Nexus 6 と Nexus 9 端末のアクセス ポイント2.0 Release 1 仕様のサポートが追加されました。アクセス ポイント 2.0 の資格情報をアプリに提供するには、
-{@code setPlmn()} や {@code setRealm()} などの
-{@link android.net.wifi.WifiEnterpriseConfig} クラスの新しいメソッドを使用します。
-{@link android.net.wifi.WifiConfiguration} オブジェクトで、
-{@link android.net.wifi.WifiConfiguration#FQDN} フィールドと {@code providerFriendlyName} フィールドを設定できます。新しい {@code ScanResult.PasspointNetwork} プロパティは、検出されたネットワークがアクセス ポイント 2.0 のアクセス ポイントを表しているかどうかを示します。
-
-
-</p>
-
-<h2 id="4K-display">4K ディスプレイ モード</h2>
-<p>互換性のあるハードウェアで、ディスプレイの解像度を 4K レンダリングにアップグレードするようアプリから要求できるようになりました。
-現在の物理的解像度を照会するには、新しい
-{@code android.view.Display.Mode} API を使用します。UI が低い論理的解像度で描画されていて、より高い物理的解像度にアップスケールされた場合は、
-{@code Display.Mode.getPhysicalWidth()} メソッドが返す物理的解像度が {@link android.view.Display#getSize(android.graphics.Point) getSize()} で報告される論理的解像度と異なる場合があります。
-
-</p>
-
-<p>アプリ ウィンドウの
-{@code WindowManager.LayoutParams.preferredDisplayModeId} プロパティを設定することで、アプリの実行時に物理的解像度を変更するようシステムに要求できます。この機能は、4K ディスプレイの解像度に切り替えたい場合に便利です。
-4K ディスプレイ モード中、UI は引き続き元の解像度（1080p など）で表示され、4K にアップスケールされますが、
-{@link android.view.SurfaceView} オブジェクトではコンテンツをネイティブの解像度で表示する場合があります。
-</p>
-
-<h2 id="behavior-themeable-colorstatelists">テーマ化可能な ColorStateLists</h2>
-<p>M Preview を実行する端末で、テーマの属性が
-{@link android.content.res.ColorStateList} でサポートされるようになりました。
-{@link android.content.res.Resources#getColorStateList(int) getColorStateList()} メソッドと 
-{@link android.content.res.Resources#getColor(int) getColor()} メソッドは廃止されました。これらの API を呼び出す場合は、代わりに新しい {@code Context.getColorStateList()} メソッドか
-{@code Context.getColor()} メソッドを呼び出します。
-これらのメソッドは、{@link android.support.v4.content.ContextCompat} の v4 appcompat ライブラリにもあります。
-</p>
-
-<h2 id="audio">オーディオ機能</h2>
-
-<p>このプレビューでは、次のように Android でのオーディオ処理が改善されました。 </p>
-<ul>
-  <li>新しい {@code android.media.midi} API を使った <a href="http://en.wikipedia.org/wiki/MIDI" class="external-link">MIDI</a> プロトコルのサポート。
-これらの API を使用して MIDI イベントを送受信できます。
-</li>
-  <li>デジタル オーディオの録音を作成して、それぞれのオブジェクトを再生し、システムのデフォルトをオーバーライドするオーディオ ソースとシンク プロパティを構成するための新しい {@code android.media.AudioRecord.Builder} クラスと {@code android.media.AudioTrack.Builder} クラス
-
-。</li>
-  <li>オーディオと入力端末を関連付ける API フック。これは、ユーザーが Android TV に接続されているゲーム コントローラーやリモート コントロールから音声検索を開始できるアプリの場合に特に便利です。ユーザーが検索を開始すると、システムが新しい
-{@code android.app.Activity.onSearchRequested()} コールバックを呼び出します。
-
-ユーザーの入力端末に組み込みのマイクがあるかどうかを確認するには、そのコールバックから {@link android.view.InputDevice} オブジェクトを取得して、新しい
-{@code InputDevice.hasMic()} メソッドを呼び出します。
-</li>
-  <li>アタッチされたすべてのソースとシンク オーディオ端末の一覧を取得できる新しい {@code android.media.AudioDevicesManager} クラス。
-また、オーディオ端末の接続時と接続解除時にアプリで通知を受けたい場合は、
-{@code android.media.OnAudioDeviceConnectionListener} オブジェクトを指定することもできます。
-</li>
-</ul>
-
-<h2 id="video">ビデオ機能</h2>
-<p>このプレビューでは、ビデオ処理の API に次のような新機能が追加されました。</p>
-<ul>
-<li>アプリでオーディオ ストリームとビデオ ストリームを同調してレンダリングできる新しい {@code android.media.MediaSync}。
-オーディオ バッファはノンブロッキング方式で送信され、コールバック経由で返されます。
-ダイナミック再生レートもサポートしています。
-</li>
-<li>アプリで開かれたセッションが、リソース マネージャーによって再要求されたことを示す新しい {@code MediaDrm.EVENT_SESSION_RECLAIMED} イベント。
-アプリが DRM セッションを使用する場合は、必ずこのイベントを処理し、再要求されたセッションは使用しないようにします。
-
-</li>
-<li>リソース マネージャーがコーデックで使用されたメディア リソースを再要求したことを示す新しい {@code MediaCodec.CodecException.ERROR_RECLAIMED} エラーコード。
-この例外では、コーデックはターミナル状態に移動するため、解放する必要があります。
-
-</li>
-<li>同時に発生できるコーデック インスタンスの最大数のヒントを得られる新しい {@code MediaCodecInfo.CodecCapabilities.getMaxSupportedInstances()} インターフェース。
-
-</li>
-<li>高速または低速モーション再生におけるメディアの再生レートを設定する新しい {@code MediaPlayer.setPlaybackParams()} メソッド。
-ビデオと共にオーディオの再生を自動的に延ばしたり早めたりもします。
-</li>
-</ul>
-
-<h2 id="camera">カメラ機能</h2>
-<p>このプレビューでは、カメラのフラッシュやカメラによる画像の再処理にアクセスするための新しい API が用意されています。
-</p>
-
-<h3 id="flashlight">Flashlight API</h3>
-<p>カメラ端末にフラッシュ ユニットが付属している場合は、{@code CameraManager.setTorchMode()} メソッドを呼び出すことで、カメラ端末を開かずにフラッシュ ユニットのタッチモードのオン/オフを切り替えることができます。
-アプリには、フラッシュ ユニットやカメラ端末のフラッシュの独占所有権はありません。
-トーチモードは、カメラ端末が利用不可になったときや、トーチを付けている他のカメラリソースが利用不可になったときにオフになり、利用できなくなります。
-
-他のアプリでも {@code setTorchMode()} を呼び出してトーチモードをオフにできます。
-最後にトーチモードをオンにしたアプリが閉じられると、トーチモードはオフになります。
-</p>
-
-<p>
-{@code CameraManager.registerTorchCallback()} メソッドを呼び出すことで、トーチモードの状態に関する通知を受けるようコールバックを登録できます。コールバックを初めて登録したときに、現在検知されているすべてのフラッシュ ユニット付きのカメラ端末のトーチモードの状態が即座に呼び出されます。
-
-トーチモードが正常にオン/オフされると、
-{@code CameraManager.TorchCallback.onTorchModeChanged()} メソッドが呼び出されます。</p>
-
-<h3 id="reprocessing">Reprocessing API</h3>
-<p>{@link android.hardware.camera2 Camera2} API は、YUV とプライベートな不透明形式の画像の再処理をサポートするよう拡張されました。
-アプリは、再処理機能が利用可能かどうかを {@code CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES} 経由で確認します。
-端末が再処理をサポートしている場合は、
-{@code CameraDevice.createReprocessableCaptureSession()} を呼び出して再処理可能なカメラ撮影セッションを作成し、入力バッファの再処理の要求を作成できます。
-
-</p>
-
-<p>入力バッファのフローをカメラの再処理入力に接続するには、{@code ImageWriter} クラスを使用します。
-空のバッファを取得するには、次のプログラミング モデルを使用します。</p>
-
-<ol>
-<li>{@code ImageWriter.dequeueInputImage()} メソッドを呼び出します。</li>
-<li>入力バッファにデータを入力します。</li>
-<li>{@code ImageWriter.queueInputImage()} メソッドを呼び出して、バッファをカメラに送ります。</li>
-</ol>
-
-<p>{@code ImageWriter} オブジェクトを
-{@code android.graphics.ImageFormat.PRIVATE} 画像と共に使用する場合、アプリから直接画像データにアクセスすることはできません。
-代わりに、{@code ImageWriter.queueInputImage()} メソッドをバッファコピーなしで呼び出して、{@code ImageFormat.PRIVATE} 画像を直接
-{@code ImageWriter} に渡します。
-</p>
-
-<p>{@code ImageReader} クラスで {@code android.graphics.ImageFormat.PRIVATE} 形式の画像ストリームがサポートされるようになりました。
-これにより、アプリが 
-{@code ImageReader} 出力画像の循環的な画像のキューを維持でき、1 つ以上の画像を選択して、それらをカメラの再処理用に
-{@code ImageWriter} に送ることができます。</p>
-
-<h2 id="afw">Android for Work の機能</h2>
-<p>このプレビューには、次のような Android for Work 用の新しい API が含まれています。</p>
-<ul>
-  <li><strong>企業の専用端末の制御の強化:</strong>デバイス オーナーは次の設定を制御でき、企業の専用端末を管理しやすくなります。
-
-
-  <ul>
-    <li>
-{@code DevicePolicyManager.setKeyguardEnabledState()} メソッドを使ったキーガードの無効化と有効化。</li>
-    <li>
-{@code DevicePolicyManager.setStatusBarEnabledState()} メソッドを使ったステータスバー（クイック設定、通知、Google Now を起動するスワイプアップのジェスチャ）の無効化と有効化。
-</li>
-    <li>{@link android.os.UserManager} の定数 {@code DISALLOW_SAFE_BOOT} を使ったセーフブートの無効化と有効化。
-</li>
-    <li>
-{@link android.provider.Settings.Global} の定数 {@code STAY_ON_WHILE_PLUGGED_IN} を使った電源接続時の画面オフの回避。</li>
-  </ul>
-  </li>
-  <li><strong>デバイス オーナーによるアプリのサイレント インストールとアンインストール：</strong>デバイス オーナーでは、{@link android.content.pm.PackageInstaller} API を使って、Google Play for Work から独立してアプリケーションをサイレントにインストール、アンインストールできます。
-
-デバイス オーナー経由で、ユーザー操作なしでアプリを取得したりインストールしたりできる端末を提供できます。
-この機能は、Google アカウントのアクティベートなしでキオスクや同様の端末のワンタッチ プロビジョニングを有効にする際に便利です。
-</li>
-<li><strong>企業証明書のサイレント アクセス: </strong>ユーザーが証明書の選択を求められる前にアプリが 
-{@link android.security.KeyChain#choosePrivateKeyAlias(android.app.Activity,android.security.KeyChainAliasCallback,java.lang.String[],java.security.Principal[],java.lang.String,int,java.lang.String) choosePrivateKeyAlias()} を呼び出すと、プロファイルやデバイス オーナーが {@code DeviceAdminReceiver.onChoosePrivateKeyAlias()} メソッドを呼び出して要求元のアプリケーションにエイリアスをサイレントに提供できるようになりました。
-
-
-この機能によって、ユーザー操作なしでマネージド アプリが証明書にアクセスできるようになります。
-</li>
-<li><strong>システムアップデートの自動受信。</strong>
-{@code DevicePolicyManager.setSystemUpdatePolicy()} を使ってシステムアップデートのポリシーを設定することで、デバイス オーナーがキオスク端末などでシステムアップデートを自動的に受信できるようにしたり、ユーザーが操作しないようアップデートを最大 30 日間保留したりできます。
-
-さらに、管理者はアップデートを実行する時間枠を、キオスク端末が使用されていない時間帯などに設定できます。
-利用可能なシステムアップデートがある場合、システムは Work Policy Controller アプリにシステムアップデートのポリシーがあるかどうかを確認し、それに基づいて動作します。
-
-
-</li>
-<li>
-<strong>代理証明書のインストール:</strong>プロファイルやデバイス オーナーで、サードパーティ アプリが次の {@link android.app.admin.DevicePolicyManager} 証明書の管理 API を呼び出す権限を付与できるようになりました。
-
-
-<ul>
-  <li>{@link android.app.admin.DevicePolicyManager#getInstalledCaCerts(android.content.ComponentName)
-getInstalledCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#hasCaCertInstalled(android.content.ComponentName,byte[])
-hasCaCertInstalled()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installCaCert(android.content.ComponentName,byte[])
-installCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallCaCert(android.content.ComponentName,byte[])
-uninstallCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallAllUserCaCerts(android.content.ComponentName)
-uninstallAllUserCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installKeyPair(android.content.ComponentName,java.security.PrivateKey,java.security.cert.Certificate,java.lang.String)
-installKeyPair()}</li>
-</ul>
-</li>
-<li><strong>企業のファクトリー リセット制限:</strong>デバイス オーナーをプロビジョニングする際、
-{@code DeviceManagerPolicy.EXTRA_PROVISIONING_RESET_PROTECTION_PARAMETERS} バンドルを設定して、ファクトリー リセット保護（FRP）をロック解除するようパラメータを構成できます。
-NFC プログラマー アプリでは、端末が FRP のロック解除するようリセットされ、端末がプロビジョニングされた後にこれらのパラメータを提供でき、事前に Google アカウントを設定しておく必要はありません。
-
-これらのパラメータを修正しない場合、FRP は続行し、事前にアクティブ化された Google の資格情報なしで端末がアクティベートされないようにします。
-
-
-<p>さらに、Google Play サービスでアプリの制限を設定することで、デバイス オーナーは FRP のロック解除用の別の Google アカウントを指定して、端末でアクティベートされたアカウントを置き換えることができます。
-</p>
-</li>
-<img src="{@docRoot}preview/images/work-profile-screen.png" srcset="{@docRoot}preview/images/work-profile-screen.png 1x, {@docRoot}preview/images/work-profile-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-<li><strong>データ使用のトラッキング</strong>プロファイルやデバイス オーナーでは、新しい
-{@code android.app.usage.NetworkStatsManager} メソッドを使用して、<strong>[設定] &gt; [データ]</strong> に表示されるデータ使用の統計を照会できます。
-プロファイル オーナーには、管理するプロファイルのデータを照会するパーミッションが自動的に付与され、デバイス オーナーは管理されたプライマリ ユーザーの使用データへのアクセス権が付与されます。
-
-</li>
-<li><strong>実行時パーミッションの管理:</strong>
-<p>プロファイルやデバイス オーナーは、
-{@code DevicePolicyManager.setPermissionPolicy()} を使用するすべてのアプリケーションのすべての実行時の要求に対するパーミッション ポリシーを設定でき、通常のとおりユーザーにパーミッションを付与するよう要求する、自動的に付与する、パーミッションをサイレントに拒否する、のいずれかを行うことができます。
-
-後者のポリシーが設定されている場合、ユーザーはプロファイルやデバイス オーナーによって選択された内容を <strong>[設定]</strong> にあるアプリのパーミッション画面で修正できません。
-
-</p></li>
-<li><strong>設定の VPN:</strong>VPN アプリは、<strong>[設定] &gt; [その他] &gt; [VPN]</strong> に表示されます。さらに、VPN の使用に関する通知は、その VPN の構成状況によるものになります。
-
-
-プロファイル オーナーの場合、通知は VPN が マネージド プロファイル、個人プロファイル、または両方のどれに構成されているかによって、それ固有のものになります。
-デバイス オーナーの場合、通知は VPN が端末全体に構成されているかどうかによって、それ固有のものになります。
-</li>
-<li><strong>ワーク ステータスの通知:</strong>マネージド プロファイルからのアプリのアクティビティがフォアグラウンドにある場合は、ステータスバーのブリーフケース アイコンが表示されます。
-さらに、端末がマネージド プロファイルのアプリのアクティビティに直接ロック解除されている場合、ユーザーがワーク プロファイル内にいることがトースト通知で表示されます。
-
-
-</li>
-</ul>
-
-<p class="note">
-  M Developer Preview のすべての API の変更点の詳細については、<a href="{@docRoot}preview/download.html">API Differences Report</a> をご覧ください。
-</p>
diff --git a/docs/html-intl/intl/ja/preview/backup/index.jd b/docs/html-intl/intl/ja/preview/backup/index.jd
deleted file mode 100644
index b558cdd..0000000
--- a/docs/html-intl/intl/ja/preview/backup/index.jd
+++ /dev/null
@@ -1,327 +0,0 @@
-page.title=アプリの自動バックアップ
-page.tags=バックアップ, previewresources, androidm
-page.keywords=バックアップ,自動バックアップ,プレビュー
-page.image=images/cards/card-auto-backup_2x.png
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本書の内容</h2>
-      <ol>
-        <li><a href="#overview">概要</a></li>
-        <li><a href="#configuring">データのバックアップを設定する</a></li>
-        <li><a href="#testing">バックアップ設定をテストする</a></li>
-        <li><a href="#issues">既知の問題</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  アプリ内のデータ作成や環境設定は、多大な労力と時間を必要とする作業です。
-端末が破損したり、新しい端末にアップグレードしたりする場合に、そのデータを保持することが、快適な操作性を提供する上で非常に重要です。
-Android M Preview を実行する端末では、アプリデータを Google ドライブに自動的にバックアップすることで、前述のような状況でも快適な操作性を実現できます。
-
-アプリデータは、ユーザーが端末を変更したりアップグレードしたりした場合に自動的に復元されます。
-
-</p>
-
-<p>
-  自動バックアップは、Android M Preview を実行する端末にインストールされているすべてのアプリで有効になっています。追加のアプリコードは必要ありません。
-ユーザーは、自動データ バックアップを使用しないよう選択することもできます。
-また、バックアップするアプリのデータを制限することもできます。
-</p>
-
-<p>
-  このドキュメントでは、新しいシステムの動作と、バックアップするアプリデータを指定する方法について説明します。
-
-</p>
-
-<h2 id="overview">概要</h2>
-
-<p>
-  自動バックアップ機能では、アプリがユーザーの端末上に作成するデータを、ユーザーの Google ドライブ アカウントにアップロードして暗号化することで、そのデータを保持します。
-開発者やユーザーにデータ ストレージの費用が発生することはなく、保存されたデータはユーザー個人のドライブ容量にはカウントされません。
-M Preview の期間中、ユーザーは 1 つの Android アプリにつき最大 25 MB までのデータを保存できます。
-
-</p>
-
-<p>
-  自動バックアップは、端末がアイドル中で、電源に接続されていて、Wi-Fi に接続されている場合に、24 時間ごとに実行されます。
-これらの条件を満たしたとき、バックアップ マネージャー サービスが利用可能なすべてのバックアップ データをクラウドにアップロードします。
-ユーザーが新しい端末に切り替えたり、バックアップされたアプリをアンインストールしたり再インストールしたりした場合、復元操作によりバックアップされたデータが新しくインストールされたアプリのデータ ディレクトリにコピーされます。
-
-
-</p>
-
-<p class="note">
-  <strong>注:</strong> アプリが以前の <a href="{@docRoot}google/backup/index.html">Android バックアップ サービス</a>を利用している場合、この新しい動作は適用されず、既存のバックアップ動作が引き続き適用されます。
-
-
-</p>
-
-
-<h3 id="auto-exclude">自動的に除外されたデータファイル</h3>
-
-<p>
-  一時ファイルやキャッシュなど、バックアップする必要のないアプリデータもあるため、自動バックアップ サービスではデフォルトで一部のデータ ファイルを除外します。
-
-</p>
-
-<ul>
-  <li>{@link android.content.Context#getCacheDir
-    getCacheDir()} メソッドと {@link android.content.ContextWrapper#getCodeCacheDir getCodeCacheDir()}
- メソッドに参照されるディレクトリ内のファイル。
-  </li>
-
-  <li>
-{@link android.content.Context#getExternalFilesDir getExternalFilesDir()}
- メソッドに参照されるディレクトリ内のものを除く、外部ストレージ内のファイル。
-  </li>
-
-  <li>
-{@link android.content.Context#getNoBackupFilesDir getNoBackupFilesDir()} メソッドに参照されるディレクトリ内のファイル。
-  </li>
-</ul>
-
-<h2 id="configuring">データのバックアップを設定する</h2>
-
-<p>
-  前のセクションの自動除外ファイル一覧にあるものを除いて、M Preview 端末にインストールされたすべてのアプリで作成されるデータがバックアップ対象です。
-そこからさらに、アプリ マニフェストの設定を使用して、アプリからバックアップするデータを制限したり設定したりできます。
-
-</p>
-
-<h3 id="include-exclude">対象データと除外データ</h3>
-
-<p>
-  アプリに必要なデータとその保存方法によって、特定のファイルやディレクトリを対象とするか、除外するかの明確なルールが必要になる場合があります。
-自動バックアップ サービスでは、XML 構成ファイルとアプリ マニフェストを使ってそのようなバックアップ ツールを設定できます。
-
-アプリ マニフェストでは、次の例のように、バックアップ スキームの構成ファイルを指定できます。
-
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:fullBackupContent="&#64;xml/mybackupscheme"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-<p>
-  このサンプル コードでは、<code>android:fullBackupContent</code> 属性がアプリの開発プロジェクトの <code>res/xml/</code> ディレクトリにある <code>mybackupscheme.xml</code> という名前の XML ファイルを指定しています。
-
-この構成ファイルには、バックアップ対象とするファイルのルールが含まれています。
-次のサンプル コードは、バックアップから特定のファイルを除外する構成ファイルを示しています。
-
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;full-backup-content&gt;
-    &lt;exclude domain="database" path="device_info.db"/&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  この例のバックアップ構成では、特定のデータベース ファイルのみをバックアップから除外しています。
-  それ以外のファイルはすべてバックアップされます。
-</p>
-
-<h4>バックアップ設定の構文</h4>
-
-<p>
-  バックアップ サービスの設定では、バックアップに含める、または除外するファイルを指定できます。
-データ バックアップ設定の xml ファイルの構文は次のとおりです。
-</p>
-
-<pre>
-&lt;full-backup-content&gt;
-    &lt;include domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-    &lt;exclude domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  次のエレメントと属性を使って、バックアップに含める、または除外するファイルを指定できます。
-
-</p>
-
-<ul>
-  <li>
-  <code>&lt;include&gt;</code>。システムにデフォルトでアプリのすべてのデータをバックアップさせるのではなく、バックアップするリソースを自身で指定する場合、このエレメントを使用します。
-<code>&lt;include&gt;</code> タグを指定すると、システムはこのエレメントで<em>指定されたリソースのみ</em>をバックアップします。
-
-
-  </li>
-
-  <li>
-  <code>&lt;exclude&gt;</code>。バックアップから除外するリソースを指定するには、このエレメントを使用します。
-システムは、このエレメントで指定されたリソース以外のすべてのアプリ データをバックアップします。
-
-  </li>
-
-  <li>
-  <code>domain.</code> バックアップに含める、または除外するリソースのタイプ。この属性を指定する際に有効な値: 
-
-  </li>
-
-  <li style="list-style: none">
-  <ul>
-    <li>
-    <code>root</code>。リソースがアプリのルート ディレクトリにあることを指定します。
-    </li>
-
-    <li>
-    <code>file</code>。
-{@link android.content.Context#getFilesDir getFilesDir()} メソッドで返されるディレクトリ内のリソースに相当します。
-    </li>
-
-    <li>
-    <code>database</code>。
-{@link android.content.Context#getDatabasePath getDatabasePath()} メソッドや 
-{@link android.database.sqlite.SQLiteOpenHelper} クラスを使用して返されるデータベースに相当します。
-    </li>
-
-    <li>
-    <code>sharedpref</code>。
-{@link android.content.Context#getSharedPreferences getSharedPreferences()} メソッドで返される 
-{@link android.content.SharedPreferences} オブジェクトに相当します。
-    </li>
-
-    <li>
-    <code>external</code>。リソースが外部ストレージにあることを指定し、
-{@link android.content.Context#getExternalFilesDir getExternalFilesDir()}
- メソッドで返されるディレクトリ内のファイルに相当します。
-    </li>
-
-    <li>
-    <code>path</code>。バックアップに含める、または除外するリソースへのファイルパス。
-
-    </li>
-  </ul>
-  </li>
-</ul>
-
-
-<h3 id="prohibit">データ バックアップの禁止</h3>
-
-<p>
-  マニフェストのアプリ エレメントにある <code>android:allowBackup</code> 属性を <code>false</code> に設定すると、一切のデータを自動バックアップしないように選択できます。
-
-この設定を、次のサンプル コードで示します。
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:allowBackup="false"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-
-<h2 id="testing">バックアップ設定をテストする</h2>
-
-<p>
-  バックアップ設定を作成したら、アプリでデータが保存され、正常に復元されることをテストして確認する必要があります。
-
-</p>
-
-
-<h4>バックアップのログの有効化</h4>
-
-<p>
-  バックアップで XML ファイルがどのように解析されるかを確認するため、テストのバックアップを実行する前にログ機能を有効にします。
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell setprop log.tag.BackupXmlParserLogging VERBOSE
-</pre>
-
-<h4>バックアップのテスト</h4>
-
-<p>手動でバックアップを実行するには、まず次のコマンドを呼び出してバックアップ マネージャーを初期化する必要があります。
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr run
-</pre>
-
-<p>
-  次に、次のコマンドを使って、アプリのパッケージ名を <code>&lt;PACKAGE&gt;</code> パラメータで指定して手動でアプリケーションをバックアップします。
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr fullbackup &lt;PACKAGE&gt;</pre>
-
-
-<h4>復元のテスト</h4>
-
-<p>
-  アプリのバックアップ後に手動で復元を開始するには、アプリのパッケージ名を <code>&lt;PACKAGE&gt;</code> パラメータで指定します。
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr restore &lt;PACKAGE&gt;
-</pre>
-
-<p class="warning">
-  <b>警告:</b> このアクションを実行すると、アプリが停止し、復元操作を実行する前にデータが消去されます。
-
-</p>
-
-<p>
-  アプリをアンインストールしてから再インストールすることで、アプリの復元プロセスを開始します。アプリのインストールが完了すると、アプリデータが自動的にクラウドから復元されます。
-
-</p>
-
-
-<h4>バックアップのトラブルシューティング</h4>
-
-<p>
-  問題が発生した場合は、<strong>[設定] &gt; [バックアップ]</strong>でバックアップをオン/オフに切り替え、端末を工場出荷時の状態にリセットするか、次のコマンドを呼び出して、バックアップ データと関連メタデータを消去できます。
-
-
-</p>
-
-<pre>$ adb shell bmgr wipe &lt;TRANSPORT&gt; &lt;PACKAGE&gt;</pre>
-
-<p>
-  <code>&lt;TRANSPORT&gt;</code> には、<code>com.google.android.gms</code> というプレフィクスが付く必要があります。
-  Transport の一覧を取得するには、次のコマンドを呼び出します。
-</p>
-
-<pre>$ adb shell bmgr list transports</pre>
-
-<h2 id="issues">既知の問題</h2>
-
-<p>自動バックアップ サービスには、次のような既知の問題があります。</p>
-
-<ul>
-  <li><strong>Google Cloud Messaging</strong> - プッシュ通知に Google Cloud Messaging を使用するアプリの場合、Messaging の登録時に返された登録 ID をバックアップすると、復元されたアプリのプッシュ通知が破損することがあるという既知の問題があります。古い登録 ID がバックアップされている場合を除いて、新しい端末へのインストール後は、新しい 登録 ID 用の API を照会することが重要です。
-
-
-
-
-これを回避するには、バックアップ対象ファイルから登録 ID を除外します。
-
-  </li>
-</ul>
diff --git a/docs/html-intl/intl/ja/preview/behavior-changes.jd b/docs/html-intl/intl/ja/preview/behavior-changes.jd
deleted file mode 100644
index a7950a1..0000000
--- a/docs/html-intl/intl/ja/preview/behavior-changes.jd
+++ /dev/null
@@ -1,402 +0,0 @@
-page.title=動作の変更点
-page.keywords=プレビュー,sdk,compatibility
-sdk.platform.apiLevel=MNC
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>本書の内容</h2>
-
-<ol id="toc44" class="hide-nested">
-    <li><a href="#behavior-runtime-permissions">実行時パーミッション</a></li>
-    <li><a href="#behavior-power">省電力の最適化 </a>
-        <ol>
-            <li><a href="#behavior-doze">Doze</a></li>
-            <li><a href="#behavior-app-standby">App Standby</a></li>
-        </ol>
-    </li>
-    <li><a href="#behavior-adoptable-storage">追加可能なストレージ端末</a></li>
-    <li><a href="#behavior-apache-http-client">Apache HTTP Client の削除</a></li>
-    <li><a href="#behavior-audiomanager-Changes">AudioManager の変更点</a></li>
-    <li><a href="#behavior-test-selection">テキスト選択</a></li>
-    <li><a href="#behavior-keystore">Android キーストロークの変更点</a></li>
-    <li><a href="#behavior-network">Wi-Fi とネットワークの変更点</a></li>
-    <li><a href="#behavior-camera">カメラ サービスの変更点</a></li>
-    <li><a href="#behavior-art-runtime">ART ランタイム</a></li>
-    <li><a href="#behavior-apk-validation">APK の検証</a></li>
-    <li><a href="#behavior-afw">Android for Work の変更点</a></li>
-</ol>
-
-<h2>API の変更点</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API レベル 22 から M Preview&raquo;</a> </li>
-</ol>
-
-
-<h2>関連ドキュメント</h2>
-<ol>
-<li><a href="{@docRoot}preview/api-overview.html">M Developer Preview API の概要</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>M Developer Preview には、新機能以外にもさまざまなシステムの変更点や API の動作の変更点が盛り込まれています。
-このドキュメントでは、アプリ開発において把握しておくべき主な変更点について説明します。
-</p>
-
-<p>過去に Android にアプリを公開したことがある場合は、アプリがこれらの変更による影響を受ける場合があることに注意してください。
-</p>
-
-<h2 id="behavior-runtime-permissions">実行時パーミッション</h1>
-<p>このプレビューでは、アプリのパーミッションを実行時にユーザーが直接管理できる新しいパーミッション モデルが採用されました。
-このモデルによって、ユーザーに対するパーミッションの可視性と制御性が向上し、アプリ開発者にとってはアプリのインストールや自動アップデート プロセスの効率が上がります。ユーザーはインストール済みアプリのパーミッションを個別に付与したり取り消したりできます。
-
- </p>
-
-<p>M Preview を対象としたアプリでは、必ずパーミッションを実行時に確認、要求するようにします。
-アプリにパーミッションが付与されているかどうかを確認するには、新しい {@code Context.checkSelfPermission()} メソッドを呼び出します。
-パーミッションを要求するには、新しい
-{@code Activity.requestPermission()} メソッドを呼び出します。アプリが M を対象としていない場合でも、新しいパーミッション モデルでアプリをテストするようにしてください。
-</p>
-
-<p>アプリで新しいパーミッションをサポートする際の詳細については、Developer Preview ページの
-<a href="{@docRoot}preview/features/runtime-permissions.html">Permissions</a> をご覧ください。
-アプリへの影響を評価する際のヒントについては、<a href="{@docRoot}preview/testing/guide.html#runtime-permissions">Testing Guide</a> をご覧ください。
-</p>
-
-<h2 id="behavior-power">省電力の最適化 </h2>
-<p>このプレビューでは、アイドル中の端末やアプリに対する新しい省電力の最適化機能が採用されています。</p>
-
-<h3 id="behavior-doze">Doze</h3>
-<p>端末が電源に接続されておらず、画面が一定時間オフ状態の場合は <em>Doze</em> モードに入り、システムをスリープ状態に保ちます。
-このモードでは、端末は定期的に通常の操作を短時間再開することで、アプリを同期したり、システムが保留中の操作を行ったりすることができます。
-
-</p>
-
-<p>Doze 中は、アプリに次の制限が適用されます。</p>
-<ul>
-<li>アプリで優先度の高い Google Cloud Messaging の通知を受信する場合以外、ネットワーク アクセスは無効になります。
-</li>
-<li><a href="{@docRoot}reference/android/os/PowerManager.WakeLock.html">Wake ロック</a> は無視されます。</li>
-<li>{@link android.app.AlarmManager} クラスを使ってスケジュールされたアラームは無効になりますが、{@link android.app.AlarmManager#setAlarmClock setAlarmClock()} メソッドと {@code AlarmManager.setAndAllowWhileIdle()} を使って設定したアラームは除きます。
-
-</li>
-<li>WiFi スキャンは実行されません。</li>
-<li>同期アダプタ と {@link android.app.job.JobScheduler} の同期とジョブは実行できません。
-</li>
-</ul>
-</p>
-<p>端末が Doze モードでなくなると、保留中のすべての同期とジョブが実行されます。</p>
-<p>この機能をテストするには、M Preview を実行する端末を開発マシンに接続して、次のコマンドを呼び出します。
-
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-<p class="note"><strong>注</strong>: 
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">Google Cloud Messaging</a> の次期リリースでは、高優先度のメッセージを指定できます。
-
-アプリが高優先度の GCM メッセージを受信する場合は、端末が Doze 中でも短時間のネットワーク アクセスが付与されます。
-
-</p>
-
-<p>アプリで Doze をテストする方法のヒントについては、
-<a href="{@docRoot}preview/testing/guide.html#doze-standby">Testing Guide</a> をご覧ください。
- </p>
-
-<h3 id="behavior-app-standby">App Standby</h3>
-<p>このプレビューでは、アクティブに使用されていないアプリをシステムがアイドル状態であるとみなす場合があります。
-システムが次の信号を検出しない場合、一定時間の経過後にアプリはアイドル状態であるとみなされます。
-</p>
-
-<ul>
-<li>アプリがユーザーによって明示的に起動された。</li>
-<li>アプリのプロセスが現在フォアグラウンドにある（アクティビティかフォアグラウンド サービスとしてか、他のアクティビティかフォアグラウンド サービスによって使用されている）。
-</li>
-<li>アプリがロック画面や通知トレイに表示される通知を生成する。
-</li>
-<li>ユーザーが、アプリに最適化が適用されないよう <strong>[設定]</strong> で明示的に指定する。
-</li>
-</ul>
-
-<p>端末が電源に接続されていない場合、アイドル中のみなされたアプリのネットワーク アクセスは無効になり、同期とジョブは保留されます。
-端末が電源に接続されると、アプリのネットワーク アクセスは許可され、保留中のすべてのジョブと同期が実行されます。
-端末が長時間アイドル状態の場合、アイドル中のアプリは 1 日 1 回程度ネットワーク アクセスが許可されます。
-</p>
-
-<p>この機能をテストするには、M Preview を実行する端末を開発マシンに接続して、次のコマンドを呼び出します。
-
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell am set-idle &lt;packageName&gt; true
-$ adb shell am set-idle &lt;packageName&gt; false
-$ adb shell am get-idle &lt;packageName&gt;
-</pre>
-
-<p class="note"><strong>注：</strong> 
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">Google Cloud Messaging</a>（GCM）の次期リリースでは、高優先度のメッセージを指定できます。
-
-アプリが高優先度の GCM メッセージを受信する場合は、アプリがアイドル 中でも短時間のネットワーク アクセスが付与されます。
-
-</p>
-
-<p>アプリで App Standby をテストする方法のヒントについては、
-<a href="{@docRoot}preview/testing/guide.html#doze-standby">Testing Guide</a> をご覧ください。
- </p>
-
-<h2 id="behavior-adoptable-storage">追加可能なストレージ端末</h2>
-<p>
-このプレビューでは、SD カードなどの外部ストレージ端末を<em>追加</em>できます。外部ストレージ端末を追加すると、端末が内部ストレージのように動作するよう暗号化とフォーマットが行われます。
-この機能によって、アプリとアプリの個人データをストレージ端末間で移動できるようになります。
-アプリを移動する際、システムはマニフェストの 
-<a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a> を遵守します。
-
-</p>
-
-<p>アプリが次の API やフィールドにアクセスする場合は、アプリが内部ストレージ端末と外部ストレージ端末間で移動する際に返されるファイルパスが動的に変化することに注意してください。ファイルパスの構築時は、これらの API を動的に呼び出すことを強くお勧めします。ハードコードされたファイル パスを使用したり、過去にビルドした完全修飾ファイルパスをそのまま使用したりしないでください。
-
-
-</p>
-
-<ul>
-<li>{@link android.content.Context} メソッド:
-    <ul>
-        <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
-        <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
-        <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
-        <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
-        <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
-        <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
-        <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
-        <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
-        <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
-    </ul>
-</li>
-<li>{@link android.content.pm.ApplicationInfo} フィールド:
-    <ul>
-        <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
-    </ul>
-</li>
-</ul>
-
-<p>Developer Preview のこの機能をデバッグするには、USB On-The-Go（OTG）ケーブルで Android 端末に接続された USB ドライブの追加を有効にして、次のコマンドを実行します。
-</p>
-
-<pre class="no-prettyprint">
-$ adb shell sm set-force-adoptable true
-</pre>
-
-<h2 id="behavior-apache-http-client">Apache HTTP Client の削除</h2>
-<p>このプレビューでは、Apache HTTP クライアントのサポートが削除されました。アプリでこのクライアントを使用していて、Android 2.3（API レベル 9）以上を対象としている場合は、代わりに {@link java.net.HttpURLConnection} クラスを使用します。
-
-この API は透過的データ圧縮と応答のキャッシュによってネットワーク使用を軽減し、電源の消費を最小化するため、効率性が向上します。
-Apache HTTP API を引き続き使用するには、まず {@code build.gradle} ファイルで次のコンパイル時の依存関係を宣言する必要があります。
-
-</p>
-<pre>
-android {
-    useLibrary 'org.apache.http.legacy'
-}
-</pre>
-<p>Android は、OpenSSL から
-<a href="https://boringssl.googlesource.com/boringssl/" class="external-link">BoringSSL</a> ライブラリに移行しています。
-アプリで Android NDK を使用している場合は、{@code libcrypto.so} や {@code libssl.so} など、NDK API の一部でない暗号化ライブラリにリンクしないでください。
-これらのライブラリは パブリック API ではなく、リリースや端末に対する通知なしで変更されたり、中断したりする可能性があります。また、セキュリティ上の脆弱性を露呈する場合もあります。
-
-代わりに、ネイティブ コードを変更して JNI 経由で Java の暗号化 API を呼び出すか、希望の暗号化ライブラリに静的リンクします。
-
-</p>
-
-<h2 id="behavior-audiomanager-Changes">AudioManager の変更点</h2>
-<p>{@link android.media.AudioManager} クラスで音量を直接設定したり、特定のストリームをミュートにしたりする方法はサポートされなくなりました。
-{@link android.media.AudioManager#setStreamSolo(int,boolean)
-setStreamSolo()} メソッドは廃止されたため、代わりに
-{@code AudioManager.requestAudioFocus()} メソッドを呼び出す必要があります。同様に、
-{@link android.media.AudioManager#setStreamMute(int,boolean) setStreamMute()} メソッドも廃止され、代わりに {@code AudioManager.adjustStreamVolume()} メソッドを呼び出して、値に {@code ADJUST_MUTE} か {@code ADJUST_UNMUTE} を渡します。
-
-</p>
-
-<h2 id="behavior-test-selection">テキスト選択</h2>
-
-<img src="{@docRoot}preview/images/text-selection.gif" style="float:right; margin:0 0 20px 30px" width="360" height="640" />
-
-<p>ユーザーがアプリ内でテキストを選択するとき、
-<em>切り取り</em>、<em>コピー</em>、<em>貼り付け</em>などのテキスト選択のアクションを
-<a href="http://www.google.com/design/spec/patterns/selection.html#selection-text-selection" class="external-link">フローティング ツール バー</a>に表示できるようになりました。
-<a href="{@docRoot}guide/topics/ui/menus.html#CABforViews">個別のビューに対してコンテキスト アクション モードを有効にする</a>にあるように、コンテキスト アクションバーに関するユーザー操作の実装も同様です。
-
-</p>
-
-<p>テキスト選択にフローティング ツール バーを実装するには、既存のアプリに次の変更を加えます。
-</p>
-<ol>
-<li>{@link android.view.View} オブジェクトか {@link android.app.Activity} オブジェクトで、{@link android.view.ActionMode} の呼び出しを
-{@code startActionMode(Callback)} から {@code startActionMode(Callback, ActionMode.TYPE_FLOATING)} に変更します。
-</li>
-<li>既存の {@code ActionMode.Callback} の実装を、{@code ActionMode.Callback2} に拡張します。
-</li>
-<li>{@code Callback2.onGetContentRect()} メソッドをオーバーライドして、ビューのコンテンツの {@link android.graphics.Rect} オブジェクト）テキスト選択の四角形など）の座標を指定します。
-</li>
-<li>四角形の位置が有効でなくなり、無効な要素がこれのみである場合は、{@code ActionMode.invalidateContentRect()} メソッドを呼び出します。
-</li>
-</ol>
-
-<p><a href="{@docRoot}tools/support-library/index.html">
-Android Support Library</a> revision 22.2 を使用している場合、フローティング ツール バーに下方互換性はなく、デフォルトで appcompat が代わりに {@link android.view.ActionMode} オブジェクトを制御することに注意してください。
-
-これにより、フローティング ツール バーは表示されなくなります。
-{@link android.support.v7.app.AppCompatActivity} で
-{@link android.view.ActionMode} がサポートされるようにするには、
-{@code android.support.v7.app.AppCompatActivity.getDelegate()} を呼び出して、返された
-{@link android.support.v7.app.AppCompatDelegate} オブジェクトで
-{@code android.support.v7.app.AppCompatDelegate.setHandleNativeActionModesEnabled()} を呼び出し、 入力パラメータを {@code false} に設定します。
-この呼び出して、{@link android.view.ActionMode} オブジェクトの制御がフレームワークに戻ります。
-M Preview を実行する端末ではフレームワークによる
-{@link android.support.v7.app.ActionBar} やフローティング ツール バー モードのサポートが可能ですが、M Preview 以前の端末では
-{@link android.support.v7.app.ActionBar} モードのみがサポートされます。</p>
-
-<h2 id="behavior-keystore">Android キーストロークの変更点</h2>
-<p>このプレビューでは、
-<a href="{@docRoot}training/articles/keystore.html">Android Keystore プロバイダ</a>による DSA のサポートがなくなります。
-ECDSA は引き続きサポートされます。</p>
-
-<p>停止時に暗号化を必要としないキーが、ロック画面の（ユーザーや端末の管理者などによる）無効時やリセット時に削除されなくなりました。
-停止時に暗号化を必要とするキーは、これらのイベント時に削除されます。
-</p>
-
-<h2 id="behavior-network">Wi-Fi とネットワークの変更点</h2>
-
-<p>このプレビューでは、Wi-Fi API とネットワーク API の動作に次のような変更点が追加されました。</p>
-<ul>
-<li>オブジェクトの作成者である場合のみ、アプリで{@link android.net.wifi.WifiConfiguration} オブジェクトの状態を変更できます。
-ユーザーや他のアプリによって作成された
-{@link android.net.wifi.WifiConfiguration} オブジェクトは変更、削除できません。
-</li>
-<li>
-以前は、
-{@link android.net.wifi.WifiManager#enableNetwork(int,boolean) enableNetwork()} で
-{@code disableAllOthers=true} 設定を使ってアプリから端末を特定の Wi-Fi ネットワークに接続させた場合、端末はセルラー データなどの他のネットワークから切断されていました。
-このプレビューでは、端末が他のネットワークから切断されないようになりました。アプリの {@code targetSdkVersion} が {@code “20”} 以下の場合は、選択した Wi-Fi ネットワークに固定されます。
-
-アプリの {@code targetSdkVersion} が {@code “21”} 以上の場合は、マルチネットワーク API（
-{@link android.net.Network#openConnection(java.net.URL) openConnection()}メソッド、
-{@link android.net.Network#bindSocket(java.net.Socket) bindSocket()}メソッド、新しい
-{@code ConnectivityManager.bindProcessToNetwork()} メソッドなど）を使用してネットワーク トラフィックが選択したネットワークに送られるようにします。
-
-</li>
-</ul>
-
-<h2 id="behavior-camera">カメラ サービスの変更点</h2>
-<p>このプレビューでは、カメラ サービスの共有リソースへのアクセスモデルが、以前の "先着順" モデルから、"優先度順" に変更されました。
-
-この動作の変更には、次のようなものがあります。</p>
-<ul>
-<li>カメラ端末を開いて構成するなど、カメラのサブシステム リソースへのアクセスは、クライアント アプリケーション プロセスの "優先度" に基づいて与えられます。
-通常、ユーザーに表示されているアクティビティやフォアグラウンドにあるアクティビティのあるアプリケーション プロセスの優先度が最も高くなり、カメラ リソースの取得や使用の信頼性が高まります。
-
-</li>
-<li>優先度の低いアプリでアクティブなカメラ クライアントは、より優先度の高いアプリケーションがカメラを使おうとした際に使用が中断される場合があります。
-廃止された {@link android.hardware.Camera} API では、使用が中断されたクライアントに
-{@link android.hardware.Camera.ErrorCallback#onError(int,android.hardware.Camera) onError()} が呼び出されます。
-
-{@link android.hardware.camera2 Camera2} API では、使用が中断されたクライアントに
-{@link android.hardware.camera2.CameraDevice.StateCallback#onDisconnected(android.hardware.camera2.CameraDevice) onDisconnected()} が呼び出されます。
-</li>
-<li>適切なカメラ ハードウェア付きの端末では、別のアプリケーション プロセスを独立して開き、別のカメラ端末を同時に使用できます。
-ただし、同時アクセスによってパフォーマンスや開いているカメラ端末の性能が著しく低下するマルチプロセスの使用が検出可能になり、カメラ サービスでは許可されなくなりました。
-
-この変更によって、同じカメラ端末にアクセスしようとしているアプリが他になくても、優先度の低いクライアントによる使用が中断される場合があります。
-
-
-</li>
-<li>
-現在のユーザーを変更すると、アプリ内で前のユーザー アカウントで所有していたアクティブなカメラ クライアントが中断させられることになります。
-カメラへのアクセスは、現在の端末ユーザーが所有するユーザー プロファイルのみに制限されます。つまり、ユーザーが別のアカウントに切り替えた場合、"ゲスト" アカウントはカメラのサブシステムを使用するプロセスを実行したまま去ることはできません。
-
-
-</li>
-</ul>
-
-<h2 id="behavior-art-runtime">ART ランタイム</h2>
-<p>ART ランタイムで、
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} メソッドに対するアクセスルールを正常に実装できるようになりました。この変更によって、以前のバージョンで Dalvik がアクセス ルールを正しく確認できなかった問題が解決しました。アプリで
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} メソッドを使用していて、アクセス チェックをオーバーライドしたい場合は、 {@link java.lang.reflect.Constructor#setAccessible(boolean) setAccessible()} メソッドを使って入力パラメータを {@code true} に設定します。
-
-
-
-
-アプリで
-<a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7 appcompat ライブラリ</a>や
-<a href="{@docRoot}tools/support-library/features.html#v7-recyclerview">v7 recyclerview ライブラリ</a>を使用する場合は、これらのライブラリの最新バージョンを使用するようアプリをアップデートする必要があります。
-アップデートしない場合は、XML から参照するカスタム クラスがアップデートされていて、クラス コンストラクタがアクセス可能であることを確認しておく必要があります。
-</p>
-
-<p>このプレビューでは、動的リンクの動作がアップデートされました。動的リンクでは、ライブラリの {@code soname} とそのパス（<a href="https://code.google.com/p/android/issues/detail?id=6670" class="external-link">
-public bug 6670</a>）の違いを認識でき、{@code soname} が実装されています。
-
-
-以前動作していたアプリで間違った {@code DT_NEEDED} エントリを持つもの（ビルドマシンのファイル システムの絶対パスなど）は、読み込み時に失敗する場合があります。
-</p>
-
-<p>{@code dlopen(3) RTLD_LOCAL} フラグは正常に実装されました。
-{@code RTLD_LOCAL} はデフォルトのため、
-{@code RTLD_LOCAL} を明示的に使用しない {@code dlopen(3)} への呼び出しは影響を受けます（アプリで明示的に {@code RTLD_GLOBAL} を使用している場合を除く）。
-{@code RTLD_LOCAL} では、後に
-{@code dlopen(3)} への呼び出しで読み込まれたライブラリで記号は使用できません（{@code DT_NEEDED} エントリによって参照された場合とは逆）。</p>
-</p>
-
-<h2 id="behavior-apk-validation">APK の検証</h2>
-<p>プラットフォームでより厳しい APK の検証が行われるようになりました。APK がマニフェスト ファイルで宣言されているにもかかわらず、APK 自体に存在しない場合、その APK は破損しているとみなされます。
-コンテンツが一部でも削除された場合は、APK の再署名が必要になります。
-</p>
-
-<h2 id="behavior-afw">Android for Work の変更点</h2>
-<p>このプレビューには、次のような Android for Work に関する動作の変更点が含まれています。</p>
-<ul>
-<li><strong>個人のコンテキストでの仕事用の連絡先</strong>ユーザーが過去の通話履歴を表示したときに、Google Dialer
-Call Log に仕事用の連絡先が表示されるようになりました。{@code DevicePolicyManager.setCrossProfileCallerIdDisabled()} を {@code true} に設定すると、Google Dialer Call Log に仕事用プロファイルの連絡先は表示されなくなります。
-
-{@code DevicePolicyManager.setBluetoothContactSharingDisabled()} を {@code false} に設定した場合のみ、Bluetooth 経由で端末に仕事用の連絡先と個人用の連絡先を表示できます。
-
-デフォルトでは、{@code true} に設定されています。
-
-</li>
-<li><strong>WiFi 設定の削除:</strong>プロファイル オーナーによって追加された WiFi 設定（@link android.net.wifi.WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
-addNetwork()} メソッドへの呼び出しなどを介して）は、その仕事用プロファイルが削除されると同時に削除されます。
-
-</li>
-<li><strong>WiFi 設定のロック:</strong>アクティブなデバイス オーナーによって作成された WiFi 設定は、ユーザーが修正したり削除したりできなくなりました。
-ユーザーに {@link android.os.UserManager} 定数
-{@link android.os.UserManager#DISALLOW_CONFIG_WIFI} が設定されていない限り、ユーザー自身の WiFi 設定を作成、修正することはできます。
-</li>
-<li><strong>Google アカウントの追加経由での Work Policy Controller のダウンロード:</strong>Work Policy Controller（WPC）アプリ経由で管理する必要のある Google アカウントがマネージド コンテキスト外で端末に追加されると、アカウントの追加フローでユーザーに適切な WPC をインストールするよう要求します。この動作は、初期の端末のセットアップ ウィザードでの
-<strong>[設定]&gt; [アカウント]</strong> で追加されるアカウントにも適用されます。
-
-
-</li>
-<li><strong>特定の DevicePolicyManager API の動作の変更点: </strong>
-{@link android.app.admin.DevicePolicyManager#setCameraDisabled(android.content.ComponentName,boolean) setCameraDisabled()} メソッドの呼び出しは、呼び出し元のユーザーのカメラにのみ影響を与えます。マネージド プロファイルから呼び出した場合は、プライマリ ユーザーで実行しているカメラ アプリに影響はありません。
-
-さらに、
-{@link android.app.admin.DevicePolicyManager#setKeyguardDisabledFeatures(android.content.ComponentName,int) setKeyguardDisabledFeatures()} メソッドは、デバイス オーナーに加えてプロファイル オーナーでも利用可能になりました。
-プロファイル オーナーは、これらのキーガード制限を設定できます:
-
-<ul>
-<li>プロファイルの親ユーザーのキーガード設定に影響を与える {@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_TRUST_AGENTS} と {@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_FINGERPRINT}。
-
-</li>
-<li>マネージド プロファイルのアプリケーションで生成された通知のみに影響を与える {@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS}。
-</li>
-</ul>
-</li>
-</ul>
diff --git a/docs/html-intl/intl/ja/preview/download.jd b/docs/html-intl/intl/ja/preview/download.jd
deleted file mode 100644
index 7f6f499..0000000
--- a/docs/html-intl/intl/ja/preview/download.jd
+++ /dev/null
@@ -1,360 +0,0 @@
-page.title=ダウンロード
-page.image=images/cards/card-download_16-9_2x.png
-
-@jd:body
-
-<div style="position:relative; min-height:600px">
-
-  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
-
-    <p class="sdk-terms-intro">Android Preview SDK のコンポーネントをダウンロード、インストールする前に、次の利用規約に同意する必要があります。
-</p>
-
-    <h2 class="norule">利用規約</h2>
-
-    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
-以下は、Android SDK Preview の使用許諾契約です（以下「本契約」）。
-
-1.はじめに
-
-1.1 Android SDK Preview（以下、本契約で「Preview」という。具体的には利用可能な場合には Android システム ファイル、パッケージ型 API、Preview ライブラリ ファイルを含む）は、本契約の規定に従ってライセンス許可されます。本契約では、デベロッパーの Preview の使用に関して、デベロッパーと Google の間で法的拘束力のある契約を結びます。
-
-1.2 「Android」とは、Android オープン ソース プロジェクト（http://source.android.com/ にて随時更新）にて利用可能な、端末向けの Android ソフトウェア スタックを意味します。
-
-1.3 「Google」とは、1600 Amphitheatre Parkway, Mountain View, CA 94043, United States に主たる事業所を有するデラウェア州法人である Google Inc. を意味します。
-
-2.本契約の同意
-
-2.1 Preview を使用するには、まず本契約に同意する必要があります。本契約に同意しない場合は Preview を使用できません。
-
-2.2 同意するかまたは Preview を使用するためにクリックすると、本契約に同意したことになります。
-
-2.3 米国またはその他の国（デベロッパーが居住している国かまたはデベロッパーが Preview を使用する国を含む）の法律により Preview の使用を禁止されている人である場合、Preview を使用することも、使用許諾契約に同意することもできません。
-
-2.4 雇用主またはその他の事業体を代表または代理して本契約に拘束されることに同意し Preview を企業または組織の内部で使用する場合、担当者の雇用主またはその他の事業体を本契約に法的に拘束する完全な法的権限を有していることを表明および保証するものとします。担当者が必要な権限を有していない場合は、担当者の雇用主またはその他の事業体を代表または代理して、本契約に同意することも、Preview を使用することもできません。
-
-3.Google Preview ライセンス
-
-3.1 本契約の規定に従い、Google は Android プラットフォーム上で実行するアプリケーションの開発に Preview を個人的にもしくは企業または組織の内部で使用するための、ロイヤリティ フリーな、譲渡不可で、非排他的な、サブライセンス不可の、限定された、取り消し可能なライセンスを付与するものとします。
-
-3.2 Preview に関するすべての法的権利、所有権、利益（Preview に含まれる知的財産権を含む）は Google またはサードパーティが所有するものとします。「知的財産権」とは、特許法、著作権法、営業秘密法、商標法、不当競争防止法に基づいて発生するすべての権利、およびその他のすべての所有権を意味します。デベロッパーに明示的に付与されていない権利は、すべて Google が所有します。
-
-3.3 本契約で明示的に許可されている目的以外においては、Preview を使用できません。当該のサードパーティのライセンスで必要とされる場合を除き、デベロッパーは、（a） Preview または Preview の一部をコピー（バックアップ目的を除く）、修正、改造、再配布、逆コンパイル、リバース エンジニアリング、逆アセンブルまたは派生物の作成、または（b）モバイル ハンドセットまたは個人用 PC 以外のハードウェア端末への Preview の読み込み、Preview と他のソフトウェアとの結合、または Preview の一部を組み込んだソフトウェアや端末の配布はできません。
-
-3.4 デベロッパーは、Android の断片化につながるような行為をしないことに同意します。これには、Preview から派生したソフトウェア開発キットの配布、作成への参加、宣伝を含みます（ただし必ずしもこれらには限定されません）。
-
-3.5 オープンソース ソフトウェア ライセンス下でライセンス付与された Preview のコンポーネントの使用、複製、配布は、本契約ではなく、そのオープンソース ソフトウェアのライセンスに準拠するものとします。デベロッパーは、許諾されるすべての権利下で、そのようなオープンソース ソフトウェア ライセンスに対して、優良ライセンシーのままでいることに同意し、そのような権利を終了、停止、または違反する可能性のあるいかなる行為も差し控えることに同意するものとします。
-
-3.6 デベロッパーは、Google が提供する Preview の形式および性質は事前の通知なしに変更される場合があり、今後リリースされる Preview のバージョンでは、以前のバージョンの Preview で開発されたアプリケーションとの互換性がない可能性があることに同意します。デベロッパーは、Google が事前の通知なく、Google の単独の裁量でデベロッパーまたはユーザーへの Preview（または Preview 内の一部の機能）の提供を（恒久的または一時的に）停止する場合があることに同意します。
-
-3.7 本契約のいかなる部分も、Google のいかなる商標名、商標、サービスマーク、ロゴ、ドメイン名、またはその他のブランド識別表示を使用する権利もデベロッパーに付与するものではありません。
-
-3.8 デベロッパーは、Preview に添付または収録されているすべての知的財産権に関する通知（著作権および商標の通知を含む）の削除、隠ぺい、改ざんを行わないことに同意します。
-
-4.デベロッパーによる Preview の使用
-
-4.1 Google は、本契約に基づき Preview を使用してデベロッパーが開発したソフトウェア アプリケーションに関して、デベロッパー（またはデベロッパーのライセンサー）からいかなる権利、所有権、または利益（当該アプリケーションに含まれる知的財産権を含む）も取得するものではないことに同意します。
-
-4.2 デベロッパーは、Preview を（a）本契約、および（b）該当する司法管轄区における適用される法律、規則、または一般に認められた慣行またはガイドライン（米国またはその他の該当国におけるデータまたはソフトウェアの輸出入に関する法律を含む）で認められている目的にのみ使用することに同意します。
-
-4.3 Preview を使用してアプリケーションを開発する場合、デベロッパーはユーザーのプライバシーおよび法的権利を保護することに同意します。ユーザーからデベロッパーにユーザー名、パスワード、またはその他のログイン情報または個人情報が提供される場合、デベロッパーは、情報がデベロッパーのアプリケーションに提供されることをユーザーに認識させ、当該ユーザーについてプライバシーに関する法的に十分な通知および保護を行わなければなりません。デベロッパーのアプリケーションに個人情報または秘密情報が保存される場合、この保存は保護された方法で行われなければなりません。ユーザーからデベロッパーのアプリケーションに Google アカウントの情報が提供された場合、デベロッパーのアプリケーションでは、ユーザーが許可したタイミングで、かつユーザーが許可した限定された目的にのみ、当該情報を使用してユーザーの Google アカウントにアクセスすることが認められるものとします。
-
-4.4 デベロッパーは、Preview に関して、第三者（Google、およびあらゆる携帯電話会社を含むが、これらに限定されない）のサーバー、ネットワーク、またはその他の財産またはサービスへの妨害、中断、損害、または許可されていない態様でのアクセスとなる行為（そのような行為に該当する対象製品の開発または販売 / 配布を含む）に関与しないことに同意します。
-
-4.5 デベロッパーは、デベロッパーが Android および Android のアプリケーションを介して作成、送信、表示するデータ、コンテンツ、リソース、および自身の行為の結果（Google に発生する可能性のあるあらゆる損失および損害を含む）について、自身が単独で責任を負うこと（および Google がこれについてデベロッパーまたはいかなる第三者に対しても一切責任を負わないこと）に同意します。
-
-4.6 デベロッパーは、本契約、適用される第三者の契約もしくは利用規約、または適用される法律もしくは規則に基づく自身の義務に違反したこと、および当該違反の結果（Google または第三者に発生したあらゆる損失および損害を含む）について、自身が単独で責任を負うこと（および Google がこれについてデベロッパーまたはいかなる第三者に対しても一切責任を負わないこと）に同意します。
-
-4.7 Preview は開発中であり、デベロッパーによるテスティングやフィードバックは開発プロセスの重要な一部となります。デベロッパーは、Preview の使用により、一部の機能の実装が開発中であると認識し、Preview が安定したリリースの完全な機能性を持つことに依存すべきでないことを認識するものとします。本 Preview は、公式の Android SDK のリリース後はサポート対象でなくなるため、デベロッパーは、Preview を使用するいかなるアプリケーションも公然と配布または引き渡さないことに同意するものとします。
-
-5.デベロッパーの資格情報
-
-5.1 デベロッパーは、Google が発行した、またはデベロッパー自身で選択した、自身のデベロッパー用資格情報の秘密を保持する責任を負うこと、および自身のデベロッパー用資格情報のもとで開発されたすべてのアプリケーションについて単独で責任を負うことに同意します。
-
-6.プライバシーおよび情報
-
-6.1 Google は、Preview の継続的な技術革新と改良のために、ソフトウェアから特定の使用状況統計情報（一意識別子、関連する IP アドレス、ソフトウェアのバージョン番号、Preview のどのツール/サービスがどのように使用されているかに関する情報を含むが、これらに限定されない）を収集できます。この情報が収集される前に、Preview に通知が表示され、デベロッパーの同意が求められます。デベロッパーが同意しない場合は、情報は収集されません。
-
-6.2 収集されるデータは、Preview の改良のために集約された形で精査され、Google のプライバシー ポリシー（http://www.google.com/policies/privacy/）に従って管理されます。
-
-7.第三者のアプリケーション
-
-7.1 デベロッパーが、Preview を使用して第三者が開発したアプリケーションを実行する、あるいは第三者から提供されたデータ、コンテンツ、リソースにアクセスする場合、デベロッパーは、Google がそれらのアプリケーション、データ、コンテンツ、リソースについて責任を負わないことに同意します。デベロッパーは、そのような第三者のアプリケーションを介してアクセスするすべてのデータ、コンテンツ、リソースについては、それらを生成した者が単独で責任を負うものであり、Google はそれらの第三者のアプリケーション、データ、コンテンツ、またはリソースの使用もしくはアクセスによって生じたあらゆる損失および損害について一切責任を負わないことを理解します。
-
-7.2 デベロッパーは、そのような第三者のアプリケーションを介して表示されるデータ、コンテンツ、リソースは、提供者（あるいは代理の第三者または事業体）が所有する知的財産権で保護されている場合があることを認識するものとします。デベロッパーは、当該所有者からの明確な許可がない限り、それらのデータ、コンテンツ、リソース（全体または一部）の変更、貸与、賃貸、担保、配布または派生物の作成を行うことはできません。
-
-7.3 デベロッパーは、そのような第三者のアプリケーション、データ、コンテンツまたはリソースの使用が、デベロッパーと当該第三者間の別の規約に従うものであることを認識するものとします。
-
-8.Google API の使用
-
-8.1 Google API
-
-8.1.1 API を使用して Google からデータを取得する場合、デベロッパーは、そのデータは、Google またはデータを提供する事業体（あるいは代理の第三者または事業体）が所有する知的財産権で保護されている場合があることを認識するものとします。そのような API の使用は追加の利用規約に従うものとします。デベロッパーは、当該の利用規約による許可がない限り、そのデータ（全体または一部）の変更、貸与、賃貸、担保、配布または派生物の作成を行うことはできません。
-
-8.1.2 デベロッパーは、API を使用して Google からユーザーのデータを取得する場合、ユーザーが明示的に同意した場合のみ、およびユーザーが許可したタイミングとその目的にのみ、データを取得できることを理解し、同意します。
-
-9.本契約の終了
-
-9.1 本契約は、下記の規定に従ってデベロッパーまたは Google のいずれかによって解約されるまで、継続して適用されるものとします。
-
-9.2 デベロッパーが本契約の解約を希望する場合は、Preview および関連するデベロッパー資格情報の使用を停止することで、契約を終了するものとします。
-
-9.3 Google は、理由の有無にかかわらず、書面で通知することでいつでもデベロッパーとの本契約を解約することができます。
-
-9.4 本契約は事前の通知またはその他の措置なく、次のうち早い方に自動的に終了します。
-（A）Google が、デベロッパーが居住している国またはデベロッパーがサービスを使用する国での Preview または Preview の一部の配布を停止したとき。
-（B）Google が Android SDK の最終バージョンをリリースしたとき。
-
-9.5 本契約が終了すると、本契約で付与されていたライセンスは終了し、デベロッパーは速やかに Preview のすべての使用を停止するものとし、第 10 条、第 11 条、第 12 条、第 14 条の規定は無期限に効力を有するものとします。
-
-10.免責事項
-
-10.1 デベロッパーは、デベロッパーによる Preview の使用はデベロッパー自身の責任において行うものであること、および Preview は「現状有姿」かつ「提供可能な限りにおいて」、Google からのいかなる種類の保証もなく提供されるものであることを明示的に理解し、これに同意します。
-
-10.2 デベロッパーによる Preview および Preview の使用を通じてダウンロードまたはその他の方法で取得されたマテリアルの使用は、デベロッパー自身の裁量および責任において行うものであり、当該使用の結果として生じるデベロッパーのコンピュータ システムもしくはその他の端末への損害またはデータの喪失についての責任はデベロッパーが単独で負います。前述を制限することなく、Preview は安定したリリースではなく、コンピュータやその他の端末の利用の完全な回復不可能な損失を含む、重大な損害を引き起こす可能性のあるエラー、欠陥、およびセキュリティ上の脆弱性が含まれている可能性があることを理解します。
-
-10.3 Google はまた、商品性、特定目的への適合性、および権利侵害がないことの黙示的な保証および条件を含む（ただしこれらに限定されない）、明示的か黙示的かを問わずあらゆる種類のすべての保証および条件を明示的に否定します。
-
-11.責任の制限
-
-11.1 デベロッパーは、Google、その子会社および関連会社、ならびにそのライセンサーが、デベロッパーに発生した直接損害、間接損害、偶発的損害、特別損害、結果的損害、または懲罰的損害（データの喪失を含む）について、Google またはその代表者が当該損失が発生する可能性について告知されていたかどうか、または知っていたはずであるかどうかにかかわらず、いかなる責任法理のもとでもデベロッパーに対して責任を負わないことを明示的に理解し、これに同意します。
-
-12.補償
-
-12.1 法律で認められる最大限の範囲内において、デベロッパーは、（a）デベロッパーが Preview を使用したこと、および（b）デベロッパーが Preview で開発したアプリケーションが他者のいかなる知的財産権を侵害していること、または他者の名誉を毀損している、もしくは他者のパブリシティ権もしくはプライバシー権を侵害していること、および（c）デベロッパーが本契約に違反したことから発生したあらゆる申し立て、普通法上の訴訟、衡平法上の訴訟、または法的手続き、ならびにあらゆる損失、責任、損害、費用、および経費（合理的な弁護士報酬を含む）について、Google、その関連会社、ならびに当該各社の取締役、役員、従業員、代理人を防御し、補償し、免責することに同意します。
-
-13.契約の変更
-
-13.1 Google は、Preview の新しいバージョンを配布することにより、いつでも本契約を変更することができます。変更が生じた場合、Google は、Preview の提供ウェブサイト上に使用許諾契約の改訂版を公開します。
-
-14.法的一般条項
-
-14.1 本契約は、デベロッパーと Google の間の法的な合意のすべてを表し、デベロッパーによる Preview の使用（別の契約下で Google が提供するサービスを除く）に適用され、Preview に関するデベロッパーと Google の間のあらゆる事前の合意に完全に取って代わるものです。
-
-14.2 デベロッパーは、Google が本契約に定める（または適用される法律のもとで Google が享受できる）法的な権利または救済措置を行使または執行しなかった場合でも、Google の権利が正式に放棄されたとはみなされないこと、および Google が以後も引き続き当該権利および救済措置を行使または執行できることに同意します。
-
-14.3 本件について判断を下す管轄権を有する司法裁判所によって、本契約のいずれかの条項が無効と判断された場合、当該条項は、本契約の残りの部分に影響を与えることなく本契約から削除されるものとします。本契約の残りの条項は、以後も引き続き有効かつ執行可能であるものとします。
-
-14.4 デベロッパーは、Google が親会社となっている各グループ企業が、本契約の第三受益者となること、および当該企業が、当該企業に利益（または受益権）を付与する本契約の条項を直接執行する、また当該条項に依拠する権利を有することを了承し、これに同意します。上記以外のいかなる人または法人も、本契約の第三受益者とはならないものとします。
-
-14.5 輸出規制。Preview は、米国輸出管理法令の対象です。デベロッパーは、Preview に適用されるすべての国内および国際の輸出管理法令に従わなければなりません。これらの法律には、仕向け地、ユーザー、および最終用途に関する制限が含まれます。
-
-14.6 デベロッパーは、Google から事前に書面で承認を得ずに、本契約を譲渡または移転することはできません。また、そのような承認を得ずに計画された譲渡はすべて無効になります。デベロッパーは、Google から事前に書面で承認を得ずに、本契約に基づく自身の責任または義務を他者に委任してはなりません。
-
-14.7 本契約あるいは本契約に基づくデベロッパーと Google の関係から発生または関連するすべての申し立ては、米国カリフォルニア州の抵触法を除いて、カリフォルニア州法に準拠するものとします。デベロッパーおよび Google は、本契約あるいは本契約に基づくデベロッパーと Google の関係から発生または関連する法的事項の解決について、米国カリフォルニア州サンタクララ郡に所在の連邦裁判所または州立裁判所が専属管轄権を有することに合意します。上記にかかわらず、デベロッパーは、Google が任意の司法管轄区において差し止め命令による救済（または同等の緊急法的救済）を求める申し立てを行うことが認められることに同意します。
-  </div><!-- sdk terms -->
-
-
-
-    <div id="sdk-terms-form">
-      <p>
-        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
-        <label id="agreeLabel" for="agree">上記の利用規約を読み、同意します。</label>
-      </p>
-      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
-    </div>
-
-
-  </div><!-- end TOS -->
-
-
-  <div id="landing">
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本書の内容</h2>
-      <ol>
-        <li><a href="#sdk">Android 6.0 SDK</a></li>
-        <li><a href="#docs">デベロッパー ドキュメント</a></li>
-        <li><a href="#images">ハードウェアのシステム イメージ</a></li>
-      </ol>
-
-     <h2>Legacy downloads</h2>
-        <ol>
-           <li><a href="{@docRoot}preview/download_mp1.html">Developer Preview 1</a></li>
-           <li><a href="{@docRoot}preview/download_mp2.html">Developer Preview 2</a></li>
-        </ol>
-  </div>
-</div>
-
-
-<p>
-  Android M Preview SDK には、アプリとプラットフォームの次期リリースで提供される新しい API とのテストに役立つ開発ツール、Android システム ファイル、ライブラリ ファイルが含まれています。
-このドキュメントでは、アプリのテスト用にダウンロードできる Preview のコンポーネントを入手する方法について説明します。
-
-</p>
-
-
-<h2 id="sdk">Android 6.0 SDK</h2>
-
-<p>
-  Preview SDK <a href="{@docRoot}tools/help/sdk-manager.html">Android SDK マネージャー</a>経由でダウンロードできます。Preview SDK のダウンロードと設定の詳細については、<a href="{@docRoot}preview/setup-sdk.html#downloadSdk">Set Up the Preview SDK</a> をご覧ください。
-
-</p>
-
-
-<h2 id="docs">デベロッパー ドキュメント</h2>
-
-<p>
-  デベロッパー ドキュメントのダウンロード パッケージでは、詳細な Preview の API リファレンス情報や API の比較レポートが提供されます。
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Description</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="docs-dl">
-    <td>Android M Preview 3<br>Developer Docs</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >m-preview-3-developer-docs.zip</a><br>
-      MD5: d99b14b0c06d31c8dfecb25072654ca3<br>
-      SHA-1: 9cefeeda07676130da606a1796e1c00fffc667c1 
-    </td>
-  </tr>
-</table>
-
-<h2 id="images">ハードウェアのシステム イメージ</h2>
-
-<p>
-  これらのシステム イメージでは、テスト用に物理端末にプラットフォームのプレビュー バージョンをインストールできます。
-端末にこれらのイメージを 1 つ以上設定すると、アプリをインストールして、プラットフォームの次期バージョンでアプリがどのように動作するかをテストできます。
-端末にシステム イメージをインストールするプロセスでは、<em>端末からすべてのデータが削除</em>されるため、システム イメージのインストール前にデータをバックアップする必要があります。
-
-
-</p>
-
-<p class="warning">
-  <b>警告:</b> 次の Android システム イメージはプレビュー版であり、今後変更される可能性があります。デベロッパーによるシステム イメージの使用は、Android SDK Preview 使用許諾契約に準拠するものとします。
-Android Preview システム イメージは安定したリリースではなく、お使いのコンピュータ システム、端末、データに影響を与える可能性のあるエラーや欠陥が含まれている場合があります。
-
-プレビュー版の Android システム イメージは工場出荷版の OS と同等のテストを受けておらず、お使いの電話やインストールされているサービス、アンインストールの動作停止を引き起こす場合があります。
-
-
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Device</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="hammerhead">
-    <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >hammerhead-MPA44I-preview-2ebbc049.tgz</a><br>
-      MD5: 91a924fb0c9f8e716e3b4c9954fd0dbb<br>
-      SHA-1: 2ebbc049b68c4da8baeee3e42bb94d7a965ba4a3
-    </td>
-  </tr>
-  <tr id="shamu">
-    <td>Nexus 6 <br>"shamu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >shamu-MPA44I-preview-62b9c486.tgz</a><br>
-      MD5: ac6e58da86125073d9c395257fd42664<br>
-      SHA-1: 62b9c486fd7a5020e228d53ca5acd5c1857e48ff
-    </td>
-  </tr>
-  <tr id="volantis">
-    <td>Nexus 9 <br>"volantis"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >volantis-MPA44I-preview-5c30a6e2.tgz</a><br>
-      MD5: 7f83768757913d3fea945a661020d185<br>
-      SHA-1: 5c30a6e2acd11a81f4105b12d23ff654f534f699
-    </td>
-  </tr>
-
-  <tr id="fugu">
-    <td>Nexus Player <br>"fugu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >fugu-MPA44I-preview-2860040a.tgz</a><br>
-      MD5: 438da8d37da9e341a69cfb16a4001ac5<br>
-      SHA-1: 2860040a326582f1ff5f702bf9a1ef002717fc98
-    </td>
-  </tr>
-
-</table>
-
-<h3 id="install-image">端末にイメージをインストールする</h3>
-
-<p>
-  テスト用に端末イメージを使用するには、互換性のある端末にインストールする必要があります。次の手順に従って、システム イメージをインストールします。
-
-</p>
-
-<ol>
-  <li>この一覧の中からいずれかのシステム イメージ パッケージをダウンロードして、解凍します。</li>
-  <li>保持するデータを端末からバックアップします。</li>
-  <li>
-<a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
- の手順に従って端末にイメージをフラッシュします。</li>
-</ol>
-
-<p class="note">
-  <strong>注:</strong> 開発用端末に Preview のシステム イメージをフラッシュすると、OTA アップデートを通じて次のプレビュー リリースに自動的にアップグレードされます。
-
-</p>
-
-<h3 id="revertDevice">端末を工場出荷時の仕様に戻す</h3>
-
-<p>
-  Preview をアンインストールして、工場出荷時の仕様に戻すには、
-<a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a> にアクセス
-して、端末にフラッシュするイメージをダウンロードします。同じページの手順に従って端末にイメージをフラッシュします。
-
-</p>
-
-  </div><!-- landing -->
-
-</div><!-- relative wrapper -->
-
-
-
-<script>
-  var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
-  function onDownload(link) {
-
-    $("#downloadForRealz").html("Download " + $(link).text());
-    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
-
-    $("#tos").fadeIn('fast');
-    $("#landing").fadeOut('fast');
-
-    return true;
-  }
-
-
-  function onAgreeChecked() {
-    /* verify that the TOS is agreed */
-    if ($("input#agree").is(":checked")) {
-      /* reveal the download button */
-      $("a#downloadForRealz").removeClass('disabled');
-    } else {
-      $("a#downloadForRealz").addClass('disabled');
-    }
-  }
-
-  function onDownloadForRealz(link) {
-    if ($("input#agree").is(':checked')) {
-    /*
-      $("#tos").fadeOut('fast');
-      $("#landing").fadeIn('fast');
-    */
-
-      ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
-
-    /*
-      location.hash = "";
-    */
-      return true;
-    } else {
-      return false;
-    }
-  }
-
-  $(window).hashchange( function(){
-    if (location.hash == "") {
-      location.reload();
-    }
-  });
-
-</script>
diff --git a/docs/html-intl/intl/ja/preview/features/app-linking.jd b/docs/html-intl/intl/ja/preview/features/app-linking.jd
deleted file mode 100644
index 92da0b42..0000000
--- a/docs/html-intl/intl/ja/preview/features/app-linking.jd
+++ /dev/null
@@ -1,123 +0,0 @@
-page.title=App Links
-page.image=images/cards/card-app-linking_2x.png
-page.keywords=applinking,deeplinks,intents
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本書の内容</h2>
-      <ol>
-        <li><a href="#web-assoc">ウェブサイトの関連を宣言する</a></li>
-        <li><a href="#verfy-links">App Link の検証を要求する</a></li>
-        <li><a href="#user-manage">App Link 設定を管理する</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Android インテント システムは、アプリでコンテンツや要求を処理できるようにする柔軟なメカニズムです。
-  複数のアプリが、それぞれのインテント フィルタに一致する URI パターンを宣言できます。デフォルトのローンチ ハンドラを持たないウェブリンクをユーザーがクリックしたとき、一致するインテント フィルタが宣言されているアプリの一覧から選択するダイアログがプラットフォームによってユーザーに表示されます。
-
-
-</p>
-
-<p>
-  Android M Developer Preview でサポートされる App Links では、既存のリンク処理が改善され、アプリ開発者が所有するウェブドメインとアプリを関連付けられるようになりました。
-デベロッパーがこの関連を作成すると、プラットフォームが特定のウェブリンクの処理に使用するデフォルトのアプリを自動的に決めることができ、ユーザーにアプリを選択させる操作をスキップできます。
-
-
-</p>
-
-
-<h2 id="web-assoc">ウェブサイトの関連付けを宣言する</h2>
-
-<p>
-  ウェブサイトのオーナーは、アプリのリンクを設定するための関連を宣言する必要があります。サイトのオーナーは、ドメインのよく知られた場所で {@code statements.json} という名前の JSON ファイルをホストすることで、アプリとの関係を宣言します。
-
-
-</p>
-
-<pre>http://&lt;domain&gt;:&lt;optional port&gt;/.well-known/statements.json</pre>
-
-<p class="note">
-  <strong>注:</strong> 
-  M Developer Preview の間、JSON ファイルは http プロトコルを介して検証されます。プラットフォームの正式リリースでは、ファイルは暗号化された https プロトコルで検証されます。
-
-</p>
-
-<p>
-  この JSON ファイルは、このドメイン下の URL のデフォルトのハンドラとして使用する必要のある Android アプリを示します。
-アプリは、次のフィールドに基づいて識別されます。
-</p>
-
-<ul>
-  <li>{@code package_name}:アプリのマニフェストで宣言されたパッケージ名。</li>
-
-  <li>{@code sha256_cert_fingerprints}:アプリの署名証明書の SHA256 のフィンガープリント。
-    Java Keytool を使用して、次のコマンドでフィンガープリントを生成できます。
-    <pre>keytool -list -v -keystore my-release-key.keystore</pre>
-  </li>
-</ul>
-
-<p>
-  次のファイル一覧は、
-{@code statements.json} ファイルのコンテンツと形式の例を示しています。
-</p>
-
-<pre>
-[{
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": "<strong>&lt;package name&gt;</strong>",
-    "sha256_cert_fingerprints": ["<strong>6C:EC:C5:0E:34:AE....EB:0C:9B</strong>"]
-  }
-}]
-</pre>
-
-
-<h2 id="verfy-links">App Link の検証を要求する</h2>
-
-<p>
-  アプリから、インテント フィルタのデータ エレメントのホスト名で定義されたアプリのリンクを、それぞれのウェブドメインでホストされる {@code statements.json} ファイルに対してプラットフォームが自動的に検証するよう要求できます。
-
-アプリリンクの検証を要求するには、次のマニフェスト コード スニペットのように {@code android:autoVerify}
- 属性をマニフェスト内の目的のインテント フィルタに追加します。
-
-</p>
-
-<pre>
-&lt;activity ...&gt;
-    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-        &lt;action android:name="android.intent.action.VIEW" /&gt;
-        &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-        &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-        &lt;data android:scheme="http" android:host="www.android.com" /&gt;
-        &lt;data android:scheme="https" android:host="www.android.com" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/activity&gt;
-</pre>
-
-<p>
-  {@code android:autoVerify} 属性がアプリ マニフェストに存在する場合、プラットフォームはアプリのインストール時にアプリのリンクを検証しようとします。
-プラットフォームがアプリのリンクを正常に検証できない場合、アプリはウェブリンクの処理に適したアプリとして設定されません。
-次回ユーザーがいずれかのリンクを開いたとき、プラットフォームはユーザーに再度ダイアログを表示します。
-
-
-</p>
-
-<p class="note">
-  <strong>注:</strong> テスト時に、ユーザーがシステムの設定アプリを使ってサポートされているリンクを開くアプリを明示的に有効にしていると、誤検出が原因で検証が失敗する場合があります。この場合、ダイアログは表示されず、リンクは直接アプリに送られますが、これは検証が成功したからではなく、ユーザーの設定に基づいて動作したからです。
-
-
-
-</p>
-
-
-<h2 id="user-manage">App Link 設定を管理する</h2>
-
-<p>
-  ユーザーが希望する方法で URL を処理するように、ユーザー側でアプリのリンク設定を変更できます。アプリのリンクは、システムの設定アプリの <strong>[設定] &gt; [アプリ] &gt; [アプリ情報] &gt; [デフォルトでの起動]</strong> で確認、管理できます。
-
-
-</p>
diff --git a/docs/html-intl/intl/ja/preview/features/runtime-permissions.jd b/docs/html-intl/intl/ja/preview/features/runtime-permissions.jd
deleted file mode 100644
index f582756..0000000
--- a/docs/html-intl/intl/ja/preview/features/runtime-permissions.jd
+++ /dev/null
@@ -1,794 +0,0 @@
-page.title=パーミッション
-page.tags=previewresources, androidm
-page.keywords=パーミッション,実行時,プレビュー
-page.image={@docRoot}preview/features/images/permissions_check.png
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>クイックビュー</h2>
-    <ul>
-      <li>アプリのターゲットが M Preview SDK の場合、インストール時ではなく実行時に、パーミッションを付与するようユーザーに求めます。
-</li>
-      <li>ユーザーはいつでもアプリの [設定] 画面からパーミッションを取り消すことができます。
-</li>
-      <li>アプリは実行時に毎回、必要なパーミッションがあることを確認する必要があります。
-</li>
-    </ul>
-
-    <h2>本書の内容</h2>
-    <ol>
-      <li><a href="#overview">概要</a></li>
-      <li><a href="#coding">実行時のパーミッションのコード</a></li>
-      <li><a href="#testing">実行時のパーミッションをテストする</a></li>
-      <li><a href="#best-practices">ベスト プラクティス</a></li>
-    </ol>
-
-<!--
-  <h2>Related Samples</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-
-<!--
-  <h2>See also</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-  </div> <!-- qv -->
-</div> <!-- qv-wrapper -->
-
-
-<p>
-  M Developer Preview では、アプリをインストールしてアップグレードするユーザーのプロセスを効率化する新しいアプリのパーミッション モデルが導入されました。
-M Preview で実行しているアプリで新しいパーミッション モデルがサポートされている場合、ユーザーはアプリをインストールまたはアップグレードするときにパーミッションを付与する必要はありません。その代わりに、アプリは必要になるとパーミッションを要求し、パーミッションを確認するよう求めるダイアログが表示されます。
-
-
-
-
-</p>
-
-<p>
-  アプリで新しいパーミッション モデルがサポートされている場合、以前のバージョンの Android を実行している端末で、以前のパーミッション モデルを使ってインストールして実行することもできます。
-
-
-</p>
-
-<h2 id="overview">
-  概要
-</h2>
-
-<p>
-  M Developer Preview とともに、プラットフォームでは新しいアプリのパーミッション モデルが導入されました。
-この新しいモデルの主要なコンポーネントの概要を次に示します。
-</p>
-
-<ul>
-  <li>
-    <strong>パーミッションを宣言する:</strong> アプリは、以前の Android プラットフォームと同様に、マニフェストで必要なすべてのパーミッションを宣言します。
-
-  </li>
-
-  <li>
-    <strong>パーミッション グループ:</strong> パーミッションは、その機能に基づいて<em>パーミッション グループ</em>に分けられます。
-たとえば、<code>CONTACTS</code> パーミッション グループにはユーザーの連絡先とプロフィール情報を読み書きするパーミッションが含まれます。
-
-
-  </li>
-
-  <li>
-    <p><strong>インストール時に付与される制限付きのパーミッション:</strong> ユーザーがアプリをインストールまたはアップデートするとき、{@link
-    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL} に該当する、アプリが要求するすべてのパーミッションがアプリに付与されます。
-
-
-    たとえば、目覚まし時計とインターネットのパーミッションは {@link
-    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL} に該当するため、インストール時に自動的にそれらのパーミッションが付与されます。
-
-    </p>
-
-    <p>システムは、<a href="#system-apps">システムアプリと署名のパーミッション</a>に記載のとおり、アプリの署名とシステムのパーミッションも付与することがあります。
-
-ユーザーは、インストール時にパーミッションを付与するように促すメッセージは表示<em>されません</em>。
-</p>
-  </li>
-
-  <li>
-    <strong>実行時にユーザーがパーミッションを付与する:</strong> アプリがパーミッションを要求すると、ユーザーにダイアログが表示されます。その後、アプリのコールバック関数を呼び出して、パーミッションが付与されているかどうかを知らせます。
-
-ユーザーがパーミッションを付与する場合、アプリ マニフェストで宣言されたパーミッションの機能領域にあるすべてのパーミッションがアプリに付与されます。
-
-
-  </li>
-
-</ul>
-
-<p>
-  このパーミッション モデルにより、パーミッションを要求する機能に対するアプリの動作方法が変わります。
-このモデルに合わせるために、従う必要のある開発プラクティスの概要を次に示します。
-
-</p>
-
-<ul>
-
-  <li>
-    <strong>常にパーミッションを確認する:</strong> アプリがパーミッションを必要とするアクションを実行する必要があるとき、まずパーミッションが既にあるかどうかを確認する必要があります。
-
-パーミッションがない場合、そのパーミッションを付与するよう要求します。
-
-  </li>
-
-  <li>
-    <strong>パーミッションの不足をスムーズに処理する:</strong> アプリに適切なパーミッションが付与されていない場合、エラーが完全に処理される必要があります。
-
-    たとえば、追加機能に対してのみパーミッションが必要な場合、アプリはその機能を無効にできます。
-アプリが機能するためにパーミッションが必須である場合、アプリはすべての機能を無効にしてパーミッションを付与する必要があることをユーザーに知らせることがあります。
-
-
-  </li>
-
-  <div class="figure" style="width:220px" id="fig-perms-screen">
-    <img src="{@docRoot}preview/features/images/app-permissions-screen_2x.png" srcset="{@docRoot}preview/features/images/app-permissions-screen.png 1x, {@docRoot}preview/features/images/app-permissions-screen_2x.png 2x" alt="" width="220">
-    <p class="img-caption">
-      <strong>図 1.</strong>アプリの [設定] のパーミッション画面。
-    </p>
-  </div>
-
-  <li>
-    <strong>パーミッションは取り消し可能:</strong> ユーザーはいつでもアプリのパーミッションを取り消すことができます。
-アプリのパーミッションをオフにすると、アプリに通知<em>されません</em>。
-アプリは制限されたアクションを実行する前に、必要なパーミッションがあることを確認する必要があります。
-
-  </li>
-</ul>
-
-<p class="note">
-  <strong>注:</strong> アプリのターゲットが M Developer Preview の場合、新しいパーミッション モデルを使う<em>必要があります</em>。
-
-</p>
-
-<p>
-  M Developer Preview のローンチ時点では、すべての Google アプリで新しいパーミッション モデルが完全に実装されているわけではありません。
-Google はこれらのアプリを M Developer Preview 中にアップデートして、パーミッションの切り替え設定を完全に実装します。
-
-
-</p>
-
-<p class="note">
-  <strong>注:</strong> アプリに独自の API サーフェスがある場合、まず呼び出し側にそのデータへのアクセスに必要なパーミッションがあることを確認しないままパーミッションをプロキシしないでください。
-
-
-</p>
-
-<h3 id="system-apps">
-  システムアプリと署名のパーミッション
-</h3>
-
-<p>
-  本来、ユーザーがアプリをインストールするとき、システムはアプリに
-  {@link android.content.pm.PermissionInfo#PROTECTION_NORMAL
-  PROTECTION_NORMAL} のみを付与します。ただし、特定の環境では、アプリにより多くのパーミッションが付与されます。
-
-</p>
-
-<ul>
-  <li>アプリがシステム イメージの一部である場合、そのマニフェストにリストされているすべてのパーミッションが自動的に付与されます。
-
-  </li>
-
-  <li>アプリが {@link
-  android.content.pm.PermissionInfo#PROTECTION_SIGNATURE PROTECTION_SIGNATURE} に該当するマニフェストでパーミッションを要求し、アプリがこれらのパーミッションを宣言したアプリと同じ証明書で署名される場合、要求しているアプリに対してこれらのパーミッションがインストール時に付与されます。
-
-
-
-  </li>
-</ul>
-
-<p>
-
-
-どちらの場合でも、ユーザーはシステムの [<strong>設定</strong>] 画面に移動して [<strong>アプリ</strong>] &gt;  <i>[app_name]</i> &gt; [<strong>パーミッション</strong>] を選ぶと、いつでもパーミッションを取り消すことができます。アプリは実行時にパーミッションを継続して確認し、必要に応じて要求する必要があります。
-
-
-</p>
-
-<h3 id="compatibility">
-  上方互換と下方互換
-</h3>
-
-<p>
-  アプリのターゲットが M Developer Preview 以外の場合、M Preview 端末でも以前のパーミッション モデルを引き続き使います。
-ユーザーがアプリをインストールするとき、ユーザーはアプリのマニフェストでリストされているすべてのパーミッションを付与するように要求されます。
-
-
-</p>
-
-<p class="note">
-  <strong>注:</strong> M Developer Preview を実行している端末で、ユーザーはアプリの [設定] 画面から従来のアプリを含むすべてのアプリのパーミッションをオフにできます。
-
-従来のアプリに対してパーミッションをオフにすると、適切な機能がサイレント状態で無効になります。
-アプリがそのパーミッションを必要とする操作を実行しようとするとき、その操作によって必ずしも例外が発生するとは限りません。
-
-代わりに、空のデータセットを返す、エラーを示す、または予期しない動作を返すことがあります。
-たとえば、パーミッションなしでカレンダーを照会すると、メソッドは空のデータセットを返します。
-
-</p>
-
-<p>
-  M Preview を実行していない端末で新しいパーミッション モデルを使ってアプリをインストールする場合、他のすべてのアプリと同様に扱われ、インストール時に、すべての宣言されたパーミッションを付与するようユーザーに求めます。
-
-
-
-</p>
-
-<p class="note">
-  <strong>注:</strong> Preview リリースの場合、M Preview SDK に SDK の最小バージョンを設定して Preview SDK でコンパイルする必要があります。
-つまり、Developer Preview 中は従来のプラットフォームでそのようなアプリをテストできません。
-
-
-</p>
-
-<h3 id="perms-vs-intents">パーミッションとインテント</h3>
-
-<p>
-  多くの場合、アプリがタスクを実行するには 2 つの方法から選択できます。
-アプリ自体が操作を実行するパーミッションを要求できます。
-アプリでインテントを使うようにして、別のアプリがそのタスクを実行するようにすることもできます。
-
-</p>
-
-<p>
-  たとえば、端末のカメラで写真を撮る機能がアプリに必要だとします。
-アプリは <code>android.permission.CAMERA</code> パーミッションをリクエストでき、それによりアプリが直接カメラにアクセスできるようになります。
-
-そのとき、アプリはカメラの API を使ってカメラを制御し、写真を撮ります。
-このアプローチにより、アプリが写真のプロセスを完全に制御し、カメラの UI をアプリに組み込むことができます。
-
-
-</p>
-
-<p>
-  ただし、そのような制御が不要な場合は、{@link
-  android.provider.MediaStore#ACTION_IMAGE_CAPTURE ACTION_IMAGE_CAPTURE} インテントを使うだけで画像を要求できます。
-インテントを開始すると、カメラアプリ（デフォルトのカメラアプリがない場合）を選んでアプリで写真を撮るよう求めるメッセージが表示されます。
-
-カメラアプリはアプリの {@link
-  android.app.Activity#onActivityResult onActivityResult()} メソッドに写真を返します。
-</p>
-
-<p>
-  同様に、ユーザーの連絡先にアクセスするなどして電話をかける必要がある場合、適切なインテントを作成するか、パーミッションを要求して適切なオブジェクトに直接アクセスできます。
-
-各アプローチにはメリットとデメリットがあります。
-
-</p>
-
-<p>
-  パーミッションを使う場合:
-</p>
-
-<ul>
-  <li>操作を実行するとき、アプリによってユーザーの操作感が完全に制御されます。
-ただし、そのような幅広い制御により、適切な UI を設計する必要があるため、タスクが複雑化します。
-
-  </li>
-
-  <li>操作を初めて実行するときに、ユーザーに一度だけパーミッションの付与を求めるメッセージが表示されます。
-その後、アプリはユーザーからの介入は必要とせずに操作を実行できます。
-ただし、ユーザーがパーミッションを付与しない（または後でパーミッションを取り消す）場合、アプリは操作を一切実行できなくなります。
-
-
-  </li>
-</ul>
-
-<p>
-  インテントを使う場合:
-</p>
-
-<ul>
-  <li>操作用に UI を設計する必要はありません。インテントを処理するアプリでは UI が提供されますが、これはユーザーの操作感を制御できないことを意味します。
-
-ユーザーはこれまでに見たことのないアプリと相互操作することになります。
-
-  </li>
-
-  <li>操作に対してデフォルトのアプリを持たないユーザーの場合、ユーザーにアプリの選択を求めるメッセージが表示されます。ユーザーがデフォルトのハンドラを指定しない場合、操作のたびに別のダイアログで指定する必要があることがあります。
-
-
-
-  </li>
-</ul>
-
-<h2 id="coding">実行時のパーミッションのコード</h2>
-
-<p>
-  アプリのターゲットが新しい M Developer Preview の場合、新しいパーミッション モデルを使う必要があります。
-つまり、マニフェストで必要なパーミッションを宣言する他に、実行時にパーミッションがあることを確認し、まだパーミッションがない場合にはパーミッションを要求します。
-
-
-
-</p>
-
-<h3 id="enabling">
-  新しいパーミッション モデルを有効にする
-</h3>
-
-<p>
-  新しい M Developer Preview パーミッション モデルを有効にするには、アプリの <code>targetSdkVersion</code> 属性を <code>"MNC"</code> に、<code>compileSdkVersion</code> を <code>"android-MNC"</code> に設定します。
-
-このように設定することで、新しいパーミッション機能すべてが有効になります。
-
-</p>
-
-<p>
-  Preview リリースの場合、<code>minSdkVersion</code> を <code>"MNC"</code> に設定して Preview SDK でコンパイルする必要があります。
-
-</p>
-
-<h3 id="m-only-perm">
-  M Preview のみに対するパーミッションの設計
-</h3>
-
-<p>
-  アプリ マニフェストで新しい <code>&lt;uses-permission-sdk-m&gt;</code> 要素を使って、M Developer Preview のみで必要なパーミッションを表示できます。
-このようにしてパーミッションを宣言すると、アプリを以前の端末にインストールする場合はユーザーにメッセージが表示されないか、アプリにパーミッションが付与されません。<code>&lt;uses-permission-sdk-m&gt;</code> 要素を使うと、新しいパーミッションを追加してインストールをアップデートするときにパーミッションの付与を強制せずにアプリのバージョンがアップデートされます。
-
-
-
-
-
-
-</p>
-
-<p>
-  M Developer Preview を使ってアプリが端末で実行されている場合、<code>&lt;uses-permission-sdk-m&gt;</code> は <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> と同じように動作します。
-
-
-  アプリをインストールするとき、パーミッションの付与を求めるメッセージは表示されず、アプリは必要なときにパーミッションを要求します。
-
-</p>
-
-<h3 id="prompting">
-  パーミッションについてのダイアログを表示する
-</h3>
-
-<p>
-  アプリで新しい M Developer Preview パーミッション モデルが使われている場合、M Preview を実行している端末でアプリを初めて起動するとき、すべての権限を付与する必要はありません。
-
-その代わりに、アプリは必要なときにパーミッションを要求します。
-アプリがパーミッションを要求すると、ユーザーにダイアログが表示されます。
-
-</p>
-
-<p>
-  SDK 22 以降がインストールされた端末でアプリを実行する場合、アプリでは以前のパーミッション モデルが使われます。
-ユーザーがアプリをインストールすると、アプリがそのマニフェストで要求するすべてのパーミッションの付与を求めるメッセージが表示されます。ただし、<code>&lt;uses-permission-sdk-m&gt;</code> というラベルの付いたパーミッションは例外です。
-
-
-</p>
-
-<h4 id="check-platform">アプリが実行されているプラットフォームを確認する</h4>
-
-<p>
-  このパーミッション モデルは、M Developer Preview を実行している端末でのみサポートされます。
-これらのメソッドのいずれかを呼び出す前に、アプリは {@link android.os.Build.VERSION#CODENAME
-  Build.VERSION.CODENAME} の値を確認してどのプラットフォーム上で実行されているのかを確認する必要があります。
-
-端末で M Developer Preview が実行されている場合、{@link android.os.Build.VERSION#CODENAME CODENAME} は <code>"MNC"</code> です。
-
-</p>
-
-<h4 id="check-for-permission">アプリに必要なパーミッションがあるかどうかを確認する</h4>
-
-<p>ユーザーがパーミッションを要求する動作を行うと、アプリは現在この操作を実行するためのパーミッションがあるかどうかを確認します。
-
-
-確認するために、アプリは <code>Context.checkSelfPermission(<i>permission_name</i>)</code> を呼び出します。ユーザーが既にパーミッションを付与していることをアプリが認識している場合でも、ユーザーはいつでもアプリのパーミッションを取り消すことができるため、この確認が行われます。
-
-
-たとえば、ユーザーがアプリを使って写真を撮る場合、アプリは <code>Context.checkSelfPermission(Manifest.permission.CAMERA)</code> を呼び出します。
-
-</p>
-
-<p class="table-caption" id="permission-groups">
-  <strong>表 1.</strong>パーミッションとパーミッション グループ。</p>
-<table>
-  <tr>
-    <th scope="col">パーミッション グループ</th>
-    <th scope="col">パーミッション</th>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CALENDAR</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CALENDAR</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.WRITE_CALENDAR</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CAMERA</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.CAMERA</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CONTACTS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_PROFILE</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_PROFILE</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.LOCATION</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.ACCESS_FINE_LOCATION</code>
-        </li>
-        <li>
-          <code>android.permission.ACCESS_COARSE_LOCATION</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.MICROPHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.RECORD_AUDIO</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.PHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_PHONE_STATE</code>
-        </li>
-        <li>
-          <code>android.permission.CALL_PHONE</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CALL_LOG</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CALL_LOG</code>
-        </li>
-        <li>
-          <code>com.android.voicemail.permission.ADD_VOICEMAIL</code>
-        </li>
-        <li>
-          <code>android.permission.USE_SIP</code>
-        </li>
-        <li>
-          <code>android.permission.PROCESS_OUTGOING_CALLS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SENSORS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.BODY_SENSORS</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.USE_FINGERPRINT</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SMS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.SEND_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_WAP_PUSH</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_MMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CELL_BROADCASTS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-</table>
-
-<h4 id="request-permissions">必要に応じてパーミッションを要求する</h4>
-
-<p>アプリに必要なパーミッションがない場合、アプリは <code>Activity.requestPermissions(String[], int)</code> メソッドを呼び出して適切なパーミッションを要求します。
-
-アプリは必要なパーミッションと整数の「要求コード」を渡します。
-
-  このメソッドは非同期に機能します。このメソッドはすぐに返され、ユーザーがダイアログ ボックスに応答した後、システムはその結果と一緒にアプリのコールバック メソッドを呼び出し、アプリが <code>requestPermissions()</code> に渡すのと同じ「要求コード」を渡します。
-
-
-</p>
-
-  <p>次のコードは、ユーザーの連絡先を読み込むパーミッションがアプリにあることを確認し、必要に応じてパーミッションを要求します。
-</p>
-
-<pre>
-if (checkSelfPermission(Manifest.permission.READ_CONTACTS)
-        != PackageManager.PERMISSION_GRANTED) {
-    requestPermissions(new String[]{Manifest.permission.READ_CONTACTS},
-            MY_PERMISSIONS_REQUEST_READ_CONTACTS);
-
-    // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
-    // app-defined int constant
-
-    return;
-}
-</pre>
-
-<h4 id="handle-response">パーミッションの要求への応答を処理する</h4>
-
-<p>
-  アプリがパーミッションを要求すると、システムによってダイアログ ボックスが表示されます。
-ユーザーが応答すると、システムはアプリの <code>Activity.onRequestPermissionsResult(int, String[], int[])</code> を呼び出し、ユーザーの応答を渡します。
-
-アプリはそのメソッドをオーバーライドする必要があります。コールバックには開発者が <code>requestPermissions()</code> に渡したのと同じ要求コードが渡されます。
-
-たとえばアプリが <code>READ_CONTACTS</code> アクセスを要求する場合、次のコールバック メソッドが含まれる可能性があります。
-
-
-</p>
-
-<pre>
-&#64;Override
-public void onRequestPermissionsResult(int requestCode,
-        String permissions[], int[] grantResults) {
-    switch (requestCode) {
-        case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
-            if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
-
-                // permission was granted, yay! do the
-                // calendar task you need to do.
-
-            } else {
-
-                // permission denied, boo! Disable the
-                // functionality that depends on this permission.
-            }
-            return;
-        }
-
-        // other 'switch' lines to check for other
-        // permissions this app might request
-    }
-}
-</pre>
-
-  <p>ユーザーがパーミッションを付与すると、システムは、機能領域のアプリ マニフェストがリストするすべてのパーミッションを付与します。
-ユーザーが要求を拒否する場合は、適切なアクションを取ってください。
-たとえば、このパーミッションに応じて、すべてのメニュー アクションを無効にできます。
-
-  </li>
-</p>
-
-<p>
-  ユーザーにパーミッションの付与を確認するとき、ユーザーにそのパーミッションについて再度確認しないようにするオプションがあります。
-この場合、アプリが <code>requestPermissions()</code> を使ってパーミッションを確認すると、システムはその要求をすぐに拒否します。
-
-この場合、システムはユーザーが要求を再度明示的に拒否する場合と同様に <code>onRequestPermissionsResult()</code> を呼び出します。
-
-このため、アプリではユーザーとの直接的なやり取りが発生することが想定されません。
-
-</p>
-
-<h2 id="testing">実行時のパーミッションをテストする</h2>
-
-
-<p>
-  アプリのターゲットが M Developer Preview の場合、パーミッションが正しく処理されることをテストする必要があります。
-アプリ起動時に特定のパーミッションがアプリにあることは想定できません。
-アプリが初めて起動されるとき、パーミッションがない可能性が高く、ユーザーはいつでもパーミッションを取り消すまたは復元できます。
-
-
-</p>
-
-<p>
-  アプリがすべてのパーミッションの状況下で確実に正しく動作することをテストしてください。
-M Preview SDK とともに、新しい <a href="{@docRoot}tools/help/adb.html">Android デバッグ ブリッジ（adb）</a>コマンドが導入され、試す必要のあるあらゆるパーミッション設定でアプリをテストできます。
-
-
-
-</p>
-
-<h3>
-  新しい adb コマンドとオプション
-</h3>
-
-<p>
-  M Preview SDK Platform-tools では、アプリがパーミッションをどう処理するかをテストするための、いくつかの新しいコマンドが導入されました
-
-</p>
-
-<h4>
-  パーミッション付きでインストールする
-</h4>
-
-<p>
-  <a href="{@docRoot}tools/help/adb.html#move"><code>adb
-  install</code></a> コマンドの新しい <code>-g</code> オプションを使ってアプリをインストールし、そのマニフェストにリストされるすべてのパーミッションを付与できます。
-
-</p>
-
-<pre class="no-pretty-print">
-$ adb install -g &lt;path_to_apk&gt;
-</pre>
-
-<h4>
-  パーミッションの付与と取り消し
-</h4>
-
-<p>
-  新しい ADB <a href="{@docRoot}tools/help/adb.html#pm">Package Manager（pm）</a>コマンドを使って、インストールされているアプリにパーミッションを付与したり取り消したりできます。この機能は自動化されたテストに役立ちます。
-
-
-</p>
-
-<p>
-  パーミッションを付与するには、Package Manager の <code>grant</code> コマンドを使います。
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<p>
-  たとえば、com.example.myapp パッケージ パーミッションを付与してオーディオを録音するには、このコマンドを使います。
-
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant com.example.myapp android.permission.RECORD_AUDIO
-</pre>
-
-<p>
-  パーミッションを取り消すには、Package Manager の <code>revoke</code> コマンドを使います。
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm revoke &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<h2 id="best-practices">ベスト プラクティス</h2>
-
-<p>
-  新しいパーミッション モデルにより、ユーザーはよりスムーズな操作感を得られ、アプリを簡単にインストールできるようになり、アプリが実行している内容に満足します。
-
-新しいモデルを最大限に活用するために、次のベスト プラクティスをお勧めします。
-
-</p>
-
-
-<h3 id="bp-what-you-need">必要なパーミッションのみを要求する</h3>
-
-<p>
-  パーミッションを要求するたびに、ユーザーに決定するよう強制します。
-  ユーザーが要求を却下すると、アプリの機能が低下します。
-  これらの要求回数は最小限にしてください。
-</p>
-
-<p>
-  たとえば、アプリがパーミッションを要求する代わりに、<a href="{@docRoot}guide/components/intents-filters.html">インテント</a>を使って必要な機能を取得できる場合がよくあります。
-
-アプリが携帯電話のカメラで写真を撮る必要がある場合、そのアプリでは {@link
-  android.provider.MediaStore#ACTION_IMAGE_CAPTURE
-  MediaStore.ACTION_IMAGE_CAPTURE} インテントを使用できます。
-アプリがインテントを実行すると、写真を撮るためのインストール済みのカメラアプリを選ぶようユーザーに促します。
-
-
-</p>
-
-<h3 id="bp-dont-overwhelm">
-  ユーザーを疲れさせない
-</h3>
-
-<p>
-  ユーザーにパーミッションをたくさん要求すると、ユーザーを疲れさせてしまい、アプリが終了される原因になります。代わりに、ユーザーには必要なパーミッションのみを要求してください。
-
-
-</p>
-
-<p>
-  アプリ対して 1 つ以上のパーミッションが必須である場合もあります。その場合は、アプリの起動後すぐに、すべてのパーミッションを要求することが合理的である場合があります。
-
-たとえば、カメラアプリを作成する場合、アプリは端末のカメラにアクセスする必要があります。
-アプリを初めて起動するときにカメラの使用についてのパーミッションを求められても驚かないはずです。
-
-ただし、同じアプリにユーザーの連絡先と写真を共有する機能もある場合は、最初の起動時にパーミッションを要求<em>しない</em>方が無難です。
-
-その代わりに、ユーザーが「共有」機能を使うまで待ち、そのときにパーミッションを要求します。
-
-</p>
-
-<p>
-  アプリにチュートリアルが含まれる場合は、チュートリアルのシーケンスの最後で、アプリに必須のパーミッションを要求する方が合理的です。
-
-</p>
-
-<h3 id="bp-explain">
-  パーミッションが必要な理由を説明する
-</h3>
-
-<p>
-  <code>requestPermissions()</code> を呼び出すとき、システムによって表示されるパーミッション ダイアログにはアプリが必要としているパーミッションは表示されますが、理由は表示されません。
-
-これによりユーザーが困惑する場合もあります。
-  <code>requestPermissions()</code> を呼び出す前に、アプリがパーミッションを必要としている理由をユーザーに説明するのはよい方法です。
-
-</p>
-
-<p>
-  たとえば、カメラアプリでは、位置情報サービスを使って写真に位置情報タグを付けられるようにする場合があります。
-通常のユーザーは、写真に位置情報が含まれる場合があることを認識していない可能性があり、なぜカメラアプリで位置情報が必要なのか困惑する可能性があります。
-
-この場合、アプリが <code>requestPermissions()</code> を呼び出す<em>前</em>に、この機能についてユーザーに知らせることをお勧めします。
-
-
-</p>
-
-<p>
-  その方法として、これらの要求をアプリのチュートリアルに組み込むこともできます。チュートリアルでは、アプリの各機能を順番に表示できるので、必要なパーミッションを説明できます。
-
-たとえば、カメラアプリのチュートリアルでは、「連絡先と写真を共有する」機能について説明し、ユーザーの連絡先を参照するためにアプリにパーミッションが必要であることをユーザーに知らせることができます。
-
-
-その後、アプリは <code>requestPermissions()</code> を呼び出して、ユーザーにそのアクセスを求めることができます。
-もちろん、すべてのユーザーがチュートリアルに従うわけではないため、アプリの通常操作中にパーミッションを確認して要求することも必要です。
-
-
-</p>
diff --git a/docs/html-intl/intl/ja/preview/index.jd b/docs/html-intl/intl/ja/preview/index.jd
deleted file mode 100644
index 2e84aa3..0000000
--- a/docs/html-intl/intl/ja/preview/index.jd
+++ /dev/null
@@ -1,71 +0,0 @@
-page.title=Android M Developer Preview
-page.tags="preview",
-meta.tags="preview, M preview", androidm
-fullpage=true
-section.landing=true
-header.hide=1
-footer.hide=1
-@jd:body
-
-<section class="dac-expand dac-hero dac-light" >
-  <div class="wrap">
-    <div class="cols dac-hero-content">
-      <div class="col-9of16 col-push-7of16 dac-hero-figure">
-        <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png" srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
-             {@docRoot}images/home/devices-hero_620px_2x.png 2x">
-      </div>
-      <div class="col-7of16 col-pull-9of16">
-        <h1 class="dac-hero-title">Android M Developer Preview</h1>
-        <p class="dac-hero-description">
-          次期バージョンの Android に向けて準備しましょう。Nexus 5、6、9、Nexus Player でアプリをテストします。
-<strong>実行時パーミッション</strong>、          <strong>Doze</strong>、<strong>App Standby</strong> 省電力機能、新しい          <strong>サポート テクノロジー</strong>などの新機能をご覧ください。
-
-
-        </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/overview.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          スタートガイド
-        </a><br>
-
-         <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-      </div>
-    </div>
-    <div class="dac-section dac-small">
-      <div class="resource-widget resource-flow-layout col-16"
-           data-query="collection:preview/landing/resources"
-           data-cardSizes="6x2"
-           data-maxResults="6"></div>
-    </div>
-  </div>
-</section>
-
-<section class="dac-section dac-gray"><div class="wrap">
-  <h1 class="dac-section-title">リソース</h1>
-  <div class="dac-section-subtitle">
-    Android M 向けにアプリを用意する際に役立つ必須情報をご提供します。
-  </div>
-
-  <div class="resource-widget resource-flow-layout col-16"
-       data-query="collection:preview/landing/more"
-       data-cardSizes="6x6"
-       data-maxResults="16"></div>
-
-    <ul class="dac-section-links">
-      <li class="dac-section-link">
-        <a href="https://code.google.com/p/android-developer-preview/">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          問題の報告
-        </a>
-      </li>
-      <li class="dac-section-link"><a href="http://g.co/dev/AndroidMDevPreview">
-        <span class="dac-sprite dac-auto-chevron"></span>
-        Join G+ コミュニティ
-        </a>
-      </li>
-    </ul>
-  </div>
-</section>
-
diff --git a/docs/html-intl/intl/ja/preview/license.jd b/docs/html-intl/intl/ja/preview/license.jd
deleted file mode 100644
index 1e29b52..0000000
--- a/docs/html-intl/intl/ja/preview/license.jd
+++ /dev/null
@@ -1,143 +0,0 @@
-page.title=使用許諾契約
-
-@jd:body
-
-<p>
-Android SDK Preview をインストールする前に、次の利用規約に同意する必要があります。
-以下に記載するとおり、これは、Android SDK のプレビュー バージョンであり、変更される可能性があります。デベロッパーご自身の責任においてご使用ください。Android SDK Preview は安定したリリースではなく、お使いのコンピュータ システム、端末、データに深刻な影響を与える可能性のあるエラーまたは欠陥が含まれている場合があります。
-</p>
-
-<p>
-以下は、Android SDK Preview の使用許諾契約です（以下「本契約」）。
-</p>
-<div class="sdk-terms" style="height:auto;border:0;padding:0;width:700px">
-1.はじめに
-
-1.1 Android SDK Preview（以下、本契約で「Preview」という。具体的には利用可能な場合には Android システム ファイル、パッケージ型 API、Preview ライブラリ ファイルを含む）は、本契約の規定に従ってライセンス許可されます。本契約では、デベロッパーの Preview の使用に関して、デベロッパーと Google の間で法的拘束力のある契約を結びます。
-
-1.2 「Android」とは、Android オープン ソース プロジェクト（http://source.android.com/ にて随時更新）にて利用可能な、端末向けの Android ソフトウェア スタックを意味します。
-
-1.3 「Google」とは、1600 Amphitheatre Parkway, Mountain View, CA 94043, United States に主たる事業所を有するデラウェア州法人である Google Inc. を意味します。
-
-2.本契約の同意
-
-2.1 Preview を使用するには、まず本契約に同意する必要があります。本契約に同意しない場合は Preview を使用できません。
-
-2.2 同意するかまたは Preview を使用するためにクリックすると、本契約に同意したことになります。
-
-2.3 米国またはその他の国（デベロッパーが居住している国かまたはデベロッパーが Preview を使用する国を含む）の法律により Preview の使用を禁止されている人である場合、Preview を使用することも、使用許諾契約に同意することもできません。
-
-2.4 雇用主またはその他の事業体を代表または代理して本契約に拘束されることに同意し Preview を企業または組織の内部で使用する場合、担当者の雇用主またはその他の事業体を本契約に法的に拘束する完全な法的権限を有していることを表明および保証するものとします。担当者が必要な権限を有していない場合は、担当者の雇用主またはその他の事業体を代表または代理して、本契約に同意することも、Preview を使用することもできません。
-
-3.Google Preview ライセンス
-
-3.1 本契約の規定に従い、Google は Android プラットフォーム上で実行するアプリケーションの開発に Preview を個人的にもしくは企業または組織の内部で使用するための、ロイヤリティ フリーな、譲渡不可で、非排他的な、サブライセンス不可の、限定された、取り消し可能なライセンスを付与するものとします。
-
-3.2 Preview に関するすべての法的権利、所有権、利益（Preview に含まれる知的財産権を含む）は Google またはサードパーティが所有するものとします。「知的財産権」とは、特許法、著作権法、営業秘密法、商標法、不当競争防止法に基づいて発生するすべての権利、およびその他のすべての所有権を意味します。デベロッパーに明示的に付与されていない権利は、すべて Google が所有します。
-
-3.3 本契約で明示的に許可されている目的以外においては、Preview を使用できません。当該のサードパーティのライセンスで必要とされる場合を除き、デベロッパーは、（a） Preview または Preview の一部をコピー（バックアップ目的を除く）、修正、改造、再配布、逆コンパイル、リバース エンジニアリング、逆アセンブルまたは派生物の作成、または（b）モバイル ハンドセットまたは個人用 PC 以外のハードウェア端末への Preview の読み込み、Preview と他のソフトウェアとの結合、または Preview の一部を組み込んだソフトウェアや端末の配布はできません。
-
-3.4 デベロッパーは、Android の断片化につながるような行為をしないことに同意します。これには、Preview から派生したソフトウェア開発キットの配布、作成への参加、宣伝を含みます（ただし必ずしもこれらには限定されません）。
-
-3.5 オープンソース ソフトウェア ライセンス下でライセンス付与された Preview のコンポーネントの使用、複製、配布は、本契約ではなく、そのオープンソース ソフトウェアのライセンスに準拠するものとします。デベロッパーは、許諾されるすべての権利下で、そのようなオープンソース ソフトウェア ライセンスに対して、優良ライセンシーのままでいることに同意し、そのような権利を終了、停止、または違反する可能性のあるいかなる行為も差し控えることに同意するものとします。
-
-3.6 デベロッパーは、Google が提供する Preview の形式および性質は事前の通知なしに変更される場合があり、今後リリースされる Preview のバージョンでは、以前のバージョンの Preview で開発されたアプリケーションとの互換性がない可能性があることに同意します。デベロッパーは、Google が事前の通知なく、Google の単独の裁量でデベロッパーまたはユーザーへの Preview（または Preview 内の一部の機能）の提供を（恒久的または一時的に）停止する場合があることに同意します。
-
-3.7 本契約のいかなる部分も、Google のいかなる商標名、商標、サービスマーク、ロゴ、ドメイン名、またはその他のブランド識別表示を使用する権利もデベロッパーに付与するものではありません。
-
-3.8 デベロッパーは、Preview に添付または収録されているすべての知的財産権に関する通知（著作権および商標の通知を含む）の削除、隠ぺい、改ざんを行わないことに同意します。
-
-4.デベロッパーによる Preview の使用
-
-4.1 Google は、本契約に基づき Preview を使用してデベロッパーが開発したソフトウェア アプリケーションに関して、デベロッパー（またはデベロッパーのライセンサー）からいかなる権利、所有権、または利益（当該アプリケーションに含まれる知的財産権を含む）も取得するものではないことに同意します。
-
-4.2 デベロッパーは、Preview を（a）本契約、および（b）該当する司法管轄区における適用される法律、規則、または一般に認められた慣行またはガイドライン（米国またはその他の該当国におけるデータまたはソフトウェアの輸出入に関する法律を含む）で認められている目的にのみ使用することに同意します。
-
-4.3 Preview を使用してアプリケーションを開発する場合、デベロッパーはユーザーのプライバシーおよび法的権利を保護することに同意します。ユーザーからデベロッパーにユーザー名、パスワード、またはその他のログイン情報または個人情報が提供される場合、デベロッパーは、情報がデベロッパーのアプリケーションに提供されることをユーザーに認識させ、当該ユーザーについてプライバシーに関する法的に十分な通知および保護を行わなければなりません。デベロッパーのアプリケーションに個人情報または秘密情報が保存される場合、この保存は保護された方法で行われなければなりません。ユーザーからデベロッパーのアプリケーションに Google アカウントの情報が提供された場合、デベロッパーのアプリケーションでは、ユーザーが許可したタイミングで、かつユーザーが許可した限定された目的にのみ、当該情報を使用してユーザーの Google アカウントにアクセスすることが認められるものとします。
-
-4.4 デベロッパーは、Preview に関して、第三者（Google、およびあらゆる携帯電話会社を含むが、これらに限定されない）のサーバー、ネットワーク、またはその他の財産またはサービスへの妨害、中断、損害、または許可されていない態様でのアクセスとなる行為（そのような行為に該当する対象製品の開発または販売 / 配布を含む）に関与しないことに同意します。
-
-4.5 デベロッパーは、デベロッパーが Android および Android のアプリケーションを介して作成、送信、表示するデータ、コンテンツ、リソース、および自身の行為の結果（Google に発生する可能性のあるあらゆる損失および損害を含む）について、自身が単独で責任を負うこと（および Google がこれについてデベロッパーまたはいかなる第三者に対しても一切責任を負わないこと）に同意します。
-
-4.6 デベロッパーは、本契約、適用される第三者の契約もしくは利用規約、または適用される法律もしくは規則に基づく自身の義務に違反したこと、および当該違反の結果（Google または第三者に発生したあらゆる損失および損害を含む）について、自身が単独で責任を負うこと（および Google がこれについてデベロッパーまたはいかなる第三者に対しても一切責任を負わないこと）に同意します。
-
-4.7 Preview は開発中であり、デベロッパーによるテスティングやフィードバックは開発プロセスの重要な一部となります。デベロッパーは、Preview の使用により、一部の機能の実装が開発中であると認識し、Preview が安定したリリースの完全な機能性を持つことに依存すべきでないことを認識するものとします。本 Preview は、公式の Android SDK のリリース後はサポート対象でなくなるため、デベロッパーは、Preview を使用するいかなるアプリケーションも公然と配布または引き渡さないことに同意するものとします。
-
-5.デベロッパーの資格情報
-
-5.1 デベロッパーは、Google が発行した、またはデベロッパー自身で選択した、自身のデベロッパー用資格情報の秘密を保持する責任を負うこと、および自身のデベロッパー用資格情報のもとで開発されたすべてのアプリケーションについて単独で責任を負うことに同意します。
-
-6.プライバシーおよび情報
-
-6.1 Google は、Preview の継続的な技術革新と改良のために、ソフトウェアから特定の使用状況統計情報（一意識別子、関連する IP アドレス、ソフトウェアのバージョン番号、Preview のどのツール/サービスがどのように使用されているかに関する情報を含むが、これらに限定されない）を収集できます。この情報が収集される前に、Preview に通知が表示され、デベロッパーの同意が求められます。デベロッパーが同意しない場合は、情報は収集されません。
-
-6.2 収集されるデータは、Preview の改良のために集約された形で精査され、Google のプライバシー ポリシー（http://www.google.com/policies/privacy/）に従って管理されます。
-
-7.第三者のアプリケーション
-
-7.1 デベロッパーが、Preview を使用して第三者が開発したアプリケーションを実行する、あるいは第三者から提供されたデータ、コンテンツ、リソースにアクセスする場合、デベロッパーは、Google がそれらのアプリケーション、データ、コンテンツ、リソースについて責任を負わないことに同意します。デベロッパーは、そのような第三者のアプリケーションを介してアクセスするすべてのデータ、コンテンツ、リソースについては、それらを生成した者が単独で責任を負うものであり、Google はそれらの第三者のアプリケーション、データ、コンテンツ、またはリソースの使用もしくはアクセスによって生じたあらゆる損失および損害について一切責任を負わないことを理解します。
-
-7.2 デベロッパーは、そのような第三者のアプリケーションを介して表示されるデータ、コンテンツ、リソースは、提供者（あるいは代理の第三者または事業体）が所有する知的財産権で保護されている場合があることを認識するものとします。デベロッパーは、当該所有者からの明確な許可がない限り、それらのデータ、コンテンツ、リソース（全体または一部）の変更、貸与、賃貸、担保、配布または派生物の作成を行うことはできません。
-
-7.3 デベロッパーは、そのような第三者のアプリケーション、データ、コンテンツまたはリソースの使用が、デベロッパーと当該第三者間の別の規約に従うものであることを認識するものとします。
-
-8.Google API の使用
-
-8.1 Google API
-
-8.1.1 API を使用して Google からデータを取得する場合、デベロッパーは、そのデータは、Google またはデータを提供する事業体（あるいは代理の第三者または事業体）が所有する知的財産権で保護されている場合があることを認識するものとします。そのような API の使用は追加の利用規約に従うものとします。デベロッパーは、当該の利用規約による許可がない限り、そのデータ（全体または一部）の変更、貸与、賃貸、担保、配布または派生物の作成を行うことはできません。
-
-8.1.2 デベロッパーは、API を使用して Google からユーザーのデータを取得する場合、ユーザーが明示的に同意した場合のみ、およびユーザーが許可したタイミングとその目的にのみ、データを取得できることを理解し、同意します。
-
-9.本契約の終了
-
-9.1 本契約は、下記の規定に従ってデベロッパーまたは Google のいずれかによって解約されるまで、継続して適用されるものとします。
-
-9.2 デベロッパーが本契約の解約を希望する場合は、Preview および関連するデベロッパー資格情報の使用を停止することで、契約を終了するものとします。
-
-9.3 Google は、理由の有無にかかわらず、書面で通知することでいつでもデベロッパーとの本契約を解約することができます。
-
-9.4 本契約は事前の通知またはその他の措置なく、次のうち早い方に自動的に終了します。
-（A）Google が、デベロッパーが居住している国またはデベロッパーがサービスを使用する国での Preview または Preview の一部の配布を停止したとき。
-（B）Google が Android SDK の最終バージョンをリリースしたとき。
-
-9.5 本契約が終了すると、本契約で付与されていたライセンスは終了し、デベロッパーは速やかに Preview のすべての使用を停止するものとし、第 10 条、第 11 条、第 12 条、第 14 条の規定は無期限に効力を有するものとします。
-
-10.免責事項
-
-10.1 デベロッパーは、デベロッパーによる Preview の使用はデベロッパー自身の責任において行うものであること、および Preview は「現状有姿」かつ「提供可能な限りにおいて」、Google からのいかなる種類の保証もなく提供されるものであることを明示的に理解し、これに同意します。
-
-10.2 デベロッパーによる Preview および Preview の使用を通じてダウンロードまたはその他の方法で取得されたマテリアルの使用は、デベロッパー自身の裁量および責任において行うものであり、当該使用の結果として生じるデベロッパーのコンピュータ システムもしくはその他の端末への損害またはデータの喪失についての責任はデベロッパーが単独で負います。前述を制限することなく、Preview は安定したリリースではなく、コンピュータやその他の端末の利用の完全な回復不可能な損失を含む、重大な損害を引き起こす可能性のあるエラー、欠陥、およびセキュリティ上の脆弱性が含まれている可能性があることを理解します。
-
-10.3 Google はまた、商品性、特定目的への適合性、および権利侵害がないことの黙示的な保証および条件を含む（ただしこれらに限定されない）、明示的か黙示的かを問わずあらゆる種類のすべての保証および条件を明示的に否定します。
-
-11.責任の制限
-
-11.1 デベロッパーは、Google、その子会社および関連会社、ならびにそのライセンサーが、デベロッパーに発生した直接損害、間接損害、偶発的損害、特別損害、結果的損害、または懲罰的損害（データの喪失を含む）について、Google またはその代表者が当該損失が発生する可能性について告知されていたかどうか、または知っていたはずであるかどうかにかかわらず、いかなる責任法理のもとでもデベロッパーに対して責任を負わないことを明示的に理解し、これに同意します。
-
-12.補償
-
-12.1 法律で認められる最大限の範囲内において、デベロッパーは、（a）デベロッパーが Preview を使用したこと、および（b）デベロッパーが Preview で開発したアプリケーションが他者のいかなる知的財産権を侵害していること、または他者の名誉を毀損している、もしくは他者のパブリシティ権もしくはプライバシー権を侵害していること、および（c）デベロッパーが本契約に違反したことから発生したあらゆる申し立て、普通法上の訴訟、衡平法上の訴訟、または法的手続き、ならびにあらゆる損失、責任、損害、費用、および経費（合理的な弁護士報酬を含む）について、Google、その関連会社、ならびに当該各社の取締役、役員、従業員、代理人を防御し、補償し、免責することに同意します。
-
-13.契約の変更
-
-13.1 Google は、Preview の新しいバージョンを配布することにより、いつでも本契約を変更することができます。変更が生じた場合、Google は、Preview の提供ウェブサイト上に使用許諾契約の改訂版を公開します。
-
-14.法的一般条項
-
-14.1 本契約は、デベロッパーと Google の間の法的な合意のすべてを表し、デベロッパーによる Preview の使用（別の契約下で Google が提供するサービスを除く）に適用され、Preview に関するデベロッパーと Google の間のあらゆる事前の合意に完全に取って代わるものです。
-
-14.2 デベロッパーは、Google が本契約に定める（または適用される法律のもとで Google が享受できる）法的な権利または救済措置を行使または執行しなかった場合でも、Google の権利が正式に放棄されたとはみなされないこと、および Google が以後も引き続き当該権利および救済措置を行使または執行できることに同意します。
-
-14.3 本件について判断を下す管轄権を有する司法裁判所によって、本契約のいずれかの条項が無効と判断された場合、当該条項は、本契約の残りの部分に影響を与えることなく本契約から削除されるものとします。本契約の残りの条項は、以後も引き続き有効かつ執行可能であるものとします。
-
-14.4 デベロッパーは、Google が親会社となっている各グループ企業が、本契約の第三受益者となること、および当該企業が、当該企業に利益（または受益権）を付与する本契約の条項を直接執行する、また当該条項に依拠する権利を有することを了承し、これに同意します。上記以外のいかなる人または法人も、本契約の第三受益者とはならないものとします。
-
-14.5 輸出規制。Preview は、米国輸出管理法令の対象です。デベロッパーは、Preview に適用されるすべての国内および国際の輸出管理法令に従わなければなりません。これらの法律には、仕向け地、ユーザー、および最終用途に関する制限が含まれます。
-
-14.6 デベロッパーは、Google から事前に書面で承認を得ずに、本契約を譲渡または移転することはできません。また、そのような承認を得ずに計画された譲渡はすべて無効になります。デベロッパーは、Google から事前に書面で承認を得ずに、本契約に基づく自身の責任または義務を他者に委任してはなりません。
-
-14.7 本契約あるいは本契約に基づくデベロッパーと Google の関係から発生または関連するすべての申し立ては、米国カリフォルニア州の抵触法を除いて、カリフォルニア州法に準拠するものとします。デベロッパーおよび Google は、本契約あるいは本契約に基づくデベロッパーと Google の関係から発生または関連する法的事項の解決について、米国カリフォルニア州サンタクララ郡に所在の連邦裁判所または州立裁判所が専属管轄権を有することに合意します。上記にかかわらず、デベロッパーは、Google が任意の司法管轄区において差し止め命令による救済（または同等の緊急法的救済）を求める申し立てを行うことが認められることに同意します。
-
-
-</div>
\ No newline at end of file
diff --git a/docs/html-intl/intl/ja/preview/overview.jd b/docs/html-intl/intl/ja/preview/overview.jd
deleted file mode 100644
index c5390ef..0000000
--- a/docs/html-intl/intl/ja/preview/overview.jd
+++ /dev/null
@@ -1,389 +0,0 @@
-page.title=プログラム概要
-page.metaDescription=Android M Developer Preview では、Android の次のバージョンでアプリをテストして最適化するためのすべてを備えています。
-page.image=images/cards/card-preview_16-9_2x.png
-page.tags="preview", "developer", "android"
-
-@jd:body
-
-<div class="cols" style=
-"background-color:#ffebc3; padding: 5px 0;margin-bottom:1em; text-align:center;">
-<h3>
-    Developer Preview 2 is now available
-  </h3>
-
- <ul class="dac-section-links">
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-notes">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Read the Notes</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-get">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Get the Update</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="https://code.google.com/p/android-developer-preview/">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Report Issues</a>
-    </li>
-  </ul>
-</div>
-
-<p>
-  <strong>Android M Developer Preview</strong> では、Android の次のバージョンでアプリをテストして最適化するためのすべてを備えています。
-
-M Developer Preview ツールをダウンロードするだけで、無料ですぐにご利用いただけます。
-
-</p>
-
-<div style="background-color:#eceff1;padding:1em;">
-<div class="wrap">
-  <div class="cols">
-    <div class="col-4of12">
-      <h5>
-        ハードウェアとエミュレータのシステム イメージ
-      </h5>
-
-      <p>
-        Nexus 5、6、9、Nexus Player（TV 向け）やエミュレータでアプリをテストしましょう。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        最新プラットフォーム コード
-      </h5>
-
-      <p>
-        プレビューで複数のアップデートが提供されますので、最新プラットフォームの変更に応じてテストできます。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        OTA でのアップデート
-      </h5>
-
-      <p>
-        デバイスに初期プレビューをコピーしたら、無線経由でアップデートを入手できます。
-
-      </p>
-    </div>
-  </div>
-
-  <div class="cols">
-
-
-    <div class="col-4of12">
-      <h5>
-        新しい動作と機能
-      </h5>
-
-      <p>
-        新しい実行時パーミッション モデルや省電力機能など、新しいプラットフォームの動作をあらかじめサポートする
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        開発者が報告した問題に対する優先度ウィンドウ
-      </h5>
-
-      <p>
-        最初の数週間で開発者から報告のあった問題について優先度を設定し、可能な限り早くテストを行いフィードバックを提供できるようにします。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        フィードバックとサポート
-      </h5>
-
-      <p>
-        <a href="https://code.google.com/p/android-developer-preview/">Issue Tracker</a> で問題を報告し、フィードバックをお送りください。
-        <a href="http://g.co/dev/AndroidMDevPreview">M&nbsp;Developer コミュニティ</a> で他の開発者とつながりましょう。
-
-      </p>
-    </div>
-  </div>
-</div>
-</div>
-
-<!--
-<p>
-  With the M Developer Preview, you'll get an early start on testing your apps,
-  with enough time to make adjustments before the public platform release later
-  in the year. We'll provide several updates to the Preview tools in the weeks
-  ahead, so you can keep in sync with the latest changes as the platform moves
-  toward launch.
-</p>
-<img src="{@docRoot}preview/images/m-preview-timeline.png" alt=
-"Preview program timeline" id="timeline">
-<p>
-  You can help us improve the platform by <a href=
-  "https://code.google.com/p/android-developer-preview/">reporting issues</a>
-  through our feedback channels. This is especially
-  critical in the first month of the preview, when we’ll be giving priority to
-  developer-reported issues and feedback.
-</p> -->
-
-
-<h2 id="timeline">
-  タイムラインとアップデート
-</h2>
-<img src="{@docRoot}preview/images/m-preview-timeline-crop.png" alt="Preview program timeline" id="timeline">
-<p>
-  M Developer Preview は 5 月 28 日から最終の Android M SDK まで実行されます。Android M SDK はまもなく、2015 年第三四半期に予定されている正式公開の前にリリースされます。
-
-
-</p>
-
-<p>
-  開発の主なマイルストーンごとにテスト端末へアップデートを配信する予定としています。
-  暫定マイルストーンは以下のとおりです。
-</p>
-
-<ul>
-  <li>
-    <strong>Preview&nbsp;1</strong>（初期プレビュー リリース、5 月下旬）
-  </li>
-
-  <li>
-    <strong>Preview&nbsp;2</strong>（6 月下旬/7 月上旬）
-  </li>
-
-  <li>
-    <strong>Preview&nbsp;3</strong>（最終近く、7 月下旬）
-  </li>
-</ul>
-
-<p>
-  アップデートは第三四半期後半に予定されている<strong>最終 SDK</strong> で終了します。最終版では新しい Android に対する正式な API や最終的なシステム動作や機能が提供されます。
-
-
-</p>
-
-<p>
-  Android M でのテストや開発に際しては、Preview アップデートがリリースされるたびに<strong>開発環境を最新に保つ</strong>ことを強くお勧めします。
-
-  プロセスをより容易にするため、既に Preview ビルドがインストールされた端末に<strong>無線経由でアップデート（OTA）</strong>を配信します。また手動でダウンロードして展開できるシステム イメージもご提供します。
-
-
-</p>
-<p class="note">
-  <strong>注:</strong> 最終 SDK とシステム イメージは OTA では配信できません。代わりにテスト端末に<strong>手動でコピー</strong>する必要があります。</strong>
-
-
-</p>
-
-<p>
-  Preview アップデートをご利用いただけるようになった際は <a href="http://android-developers.blogspot.com/">Android デベロッパー ブログ</a>、このサイト、<a href="http://g.co/dev/AndroidMDevPreview">Android M デベロッパー コミュニティ</a>でお知らせします。
-
-
-</p>
-
-<h2 id="preview_tools">
-  Preview の内容
-</h2>
-
-<p>
-  M Developer Preview では、ご利用のアプリをさまざまな画面サイズ、ネットワーク、テクノロジー、CPU や GPU チップセット、ハードウェア設計でテストするために必要なあらゆるものを備えています。
-
-
-</p>
-
-<h4>
-  SDK ツール
-</h4>
-
-<p>
-  各コンポーネントは <a href="{@docRoot}sdk/installing/adding-packages.html">Android Studio</a> の SDK Manager でダウンロードできます。
-</p>
-
-<ul>
-  <li>M Developer Preview <strong>SDK ツール</strong>
-  </li>
-
-  <li>M Developer Preview <strong>エミュレータ システム イメージ</strong>（32 ビット版と 64 ビット版）
-
-  </li>
-
-  <li>M Developer Preview <strong>Android TV 版エミュレータ システム イメージ</strong>（32 ビット版）
-
-  </li>
-</ul>
-
-<h4>
-  ハードウェアのシステム イメージ
-</h4>
-
-<p>
-  Nexus 端末向けハードウェア システム イメージは、<a href="download.html">ダウンロード ページ</a>からダウンロードできます。
-
-</p>
-
-<ul>
-  <li>
-    <strong>Nexus 5</strong>（GSM と LTE）“hammerhead” 端末システム イメージ
-  </li>
-
-  <li>
-    <strong>Nexus 6</strong> “shamu” 端末システム イメージ
-  </li>
-
-  <li>
-    <strong>Nexus 9</strong>（Wi-Fi）“volantis” 端末システム イメージ
-  </li>
-
-  <li>
-    <strong>Nexus Player</strong>（AndroidTV）“fugu” 端末システム イメージ
-  </li>
-</ul>
-
-<h4>
-  ドキュメントとサンプル コード
-</h4>
-
-<p>
-  次のドキュメント リソースで Preview についての詳細をご確認いただけます。
-</p>
-
-<ul>
-  <li>
-    <a href="setup-sdk.html">SDK のセットアップ</a>では、はじめの手順をステップ バイ ステップでご説明しています。
-
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/testing/guide.html">Testing Guide</a> と <a href="behavior-changes.html">Behavior Changes</a> では、テストでカバーされる主な分野について示しています。
-  </li>
-
-  <li>新しい API のドキュメントである <a href="api-overview.html">API 概要</a>、ダウンロード可能な <a href="{@docRoot}preview/download.html#docs">API リファレンス</a>や、主な機能のデベロッパー ガイドである<a href="{@docRoot}preview/features/runtime-permissions.html">パーミッション</a>、<a href="{@docRoot}preview/backup/index.html">アプリのバックアップ</a>などをご提供しています。
-
-
-
-
-  </li>
-
-  <li>
-    パーミッションや他の新しい機能をサポートする方法について、<a href="{@docRoot}preview/samples.html">サンプル コード</a>でお試しいただけます。
-
-  </li>
-
-  <li>
-    現行バージョンの<a href="{@docRoot}preview/support.html#release-notes">リリース ノート</a>で M Developer Preview の変更メモや差分レポートなどをご覧いただけます。
-
-  </li>
-</ul>
-
-<h4>
-  サポート リソース
-</h4>
-
-<p>
-  M Developer Preview でのテストや開発について、次のサポート リソースをご確認いただけます。
-
-</p>
-
-<ul>
-  <li><a href="https://code.google.com/p/android-developer-preview/">M Developer Preview Issue Tracker</a> は、<strong>主なフィードバック チャンネル</strong>としてご利用になれます。
-
-バグやパフォーマンスの問題、一般的なフィードバックなど Issue Tracker からご連絡いただけます。
-また、<a href="https://code.google.com/p/android-developer-preview/wiki/KnownIssues">既知の問題</a>
-やその回避策をご確認いただけます。
-  </li>
-
-  <li><a href="http://g.co/dev/AndroidMDevPreview">Android M Developer コミュニティ</a>は Google+ のコミュニティで、Android M を使っている<strong>他のデベロッパーとつながる</strong>ことができます。Android M に関する現象や考えを共有したり、疑問点を解消したりできます。
-
-
-
-  </li>
-</ul>
-
-
-<h2 id="preview_apis_and_publishing">
-  対象、プレビュー API、公開
-</h2>
-
-<p>
-  Android M Developer Preview は開発リリースのみであり、<strong>標準 API レベルはありません</strong>。
-アプリのテストで互換性の問題は除外する場合（強く推奨します）、アプリの<code><a href=
-  "/guide/topics/manifest/uses-sdk-element.html">targetSdkVersion</a></code> を <code>“MNC”</code> に設定することで M Developer Preview を対象にできます。
-
-
-
-</p>
-
-<p>
-  Android M Developer Preview では<strong>プレビュー API</strong> を配信しています。現在 2015 年度第三四半期に予定されている最終 SDK がリリースされるまで、API は正式版ではありません。
-
-つまり、時間がたつにつれて <strong>API の細かな変更</strong>が見込まれます（特にプログラムの最初の数週間）。
-
-Android M Developer Preview でアップデートがあればその都度変更の概要をご提供します。
-
-</p>
-
-<p class="note">
-  プレビュー API は変更される可能性がありますが、実行時パーミッションや省電力機能などのシステムの基幹にかかわる機能には変更はありませんので、すぐにテストしていただけます。
-
-
-</p>
-
-<p>
-  公開に関して、Google Play では <strong>M Developer Preview 対象アプリは公開できません</strong>。
-Android M 最終 SDK が利用可能になれば正式な Android M API レベルを対象にして、Google Play でアプリを公開できるようになります。
-
-それまでは、Android M 対象のアプリをテスターに配布する場合は電子メールで送付したりご自分のサイトから直接ダウンロードしてもらったりしてください。
-
-
-</p>
-
-<h2 id="get_started">
-  開始するには
-</h2>
-
-<p>
-  アプリのテストをはじめるには:
-</p>
-
-<ol>
-  <li><a href="{@docRoot}preview/api-overview.html">API 概要</a>や <a href="{@docRoot}preview/behavior-changes.html">Behavior Changes</a> で新しい機能やご自分のアプリへの影響についてご確認ください。
-
-特に、<a href="{@docRoot}preview/features/runtime-permissions.html">実行時パーミッション</a> モデルや省電力機能、自動バックアップ機能についてお確かめください。
-
-
-  </li>
-
-  <li><a href="{@docRoot}preview/setup-sdk.html">Setting up the Preview SDK</a> の手順に従い、ご利用の環境をセットアップしてテスト端末を構成してください。
-
-
-  </li>
-
-  <li><a href="https://developers.google.com/android/nexus/images">コピー手順</a>に従い、最新の M Developer Preview システム イメージを Nexus 5、6、9、Nexus Player にコピーします。
-
-1 度開発端末に Preview 環境をコピーすると、アップデートが無線経由（OTA）で配信されます。</a>
-
-  </li>
-
-  <li><a href="{@docRoot}preview/download.html#docs">M Preview API リファレンス</a>や<a href="{@docRoot}preview/samples.html">M Preview サンプル</a>をダウンロードして、新しい API の機能についてさらに学び、ご自分のアプリで活用する方法についてご確認ください。
-
-
-
-  </li>
-
-  <li><a href="http://g.co/dev/AndroidMDevPreview">Android M Developer コミュニティ</a>に参加して最新のニュースを入手し、Preview に取り組んでいる他のデベロッパーとつながってください。
-
-
-  </li>
-</ol>
-
-<p>
-  Android M Developer Preview プログラムへのご参加ありがとうございます。
-</p>
diff --git a/docs/html-intl/intl/ja/preview/samples.jd b/docs/html-intl/intl/ja/preview/samples.jd
deleted file mode 100644
index 6c44f4d..0000000
--- a/docs/html-intl/intl/ja/preview/samples.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=サンプル
-page.image=images/cards/samples-new_2x.png
-@jd:body
-
-<p>
-  以下のコードサンプルは、M Developer Preview 用に提供しています。サンプルを Android Studio でダウンロードするには、<b>[File] &gt; [Import Samples]</b> メニュー オプションを選択します。
-
-</p>
-
-<p class="note">
-  <strong>注:</strong> 以下のダウンロード可能なプロジェクトは、Gradle と Android Studio でご利用いただくために提供しています。
-
-</p>
-
-
-<h3 id="RuntimePermissions">実行時パーミッション</h3>
-
-<p>
- Android M では、システムのパーミッションの仕組みが変わります。ユーザーは、パーミッション要求の承認をインストール時ではなく、実行時に求められるようになります。
-このサンプルでは、このパーミッションの要求方法を紹介しています。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-RuntimePermissions">GitHub でサンプルを入手</a></p>
-
-<h3 id="ConfirmCredentials">資格情報の確認</h3>
-
-<p>
- このサンプルでは、アプリで端末の資格情報を認証手段として使用する方法を紹介しています。
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ConfirmCredential">GitHub でサンプルを入手</a>
-</p>
-
-<h3 id="FingerprintDialog">指紋ダイアログ</h3>
-
-<p>
- このサンプルでは、ユーザーを認証するために登録された指紋をアプリで識別する方法を紹介しています。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-FingerprintDialog">GitHub でサンプルを入手</a></p>
-
-<h3 id="AutomaticBackup">アプリの自動バックアップ</h3>
-
-<p>
- Android M では、アプリの設定の自動バックアップが導入されました。このサンプルでは、設定のバックアップを管理するためにアプリにフィルタリング ルールを追加する方法を紹介しています。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-AutoBackupForApps">GitHub でサンプルを入手</a></p>
-
-<h3 id="CameraRaw">Camera 2 Raw</h3>
-
-<p>
-  このサンプルでは、<code>Camera2</code> API を使用して、RAW カメラバッファをキャプチャし、<code>DNG</code> ファイルとして保存する方法を紹介しています。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-Camera2Raw">GitHub でサンプルを入手</a></p>
-
-<h3 id="ActiveNotification">アクティブ通知</h3>
-
-<p>
-  このサンプルでは、その時点でアプリに表示されている通知の数を <a href="{@docRoot}reference/android/app/NotificationManager.html"><code>NotificationManager</code></a> を使って調べる方法を紹介しています。
-
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ActiveNotifications">GitHub でサンプルを入手</a></p>
diff --git a/docs/html-intl/intl/ja/preview/setup-sdk.jd b/docs/html-intl/intl/ja/preview/setup-sdk.jd
deleted file mode 100644
index b4fe2e0..0000000
--- a/docs/html-intl/intl/ja/preview/setup-sdk.jd
+++ /dev/null
@@ -1,207 +0,0 @@
-page.title=Preview SDK のセットアップ
-page.image=images/cards/card-set-up_16-9_2x.png
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本書の内容</h2>
-      <ol>
-        <li><a href="#get-as13">Android Studio 1.3 を入手する</a></li>
-        <li><a href="#get-sdk">Preview SDK を入手する</a></li>
-        <li><a href="#create-update">プロジェクトを作成または更新する</a></li>
-        <li><a href="#setup-test">テスト用にセットアップする</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>M Developer Preview SDK は、Android SDK Manager から入手できます。このドキュメントは、Android SDK Manager の使用方法やプロジェクトの作成方法などの Android アプリ開発についての知識をお持ちの方を対象にしています。
-
-Android アプリを初めて開発する場合は、まず <a href="{@docRoot}training/basics/firstapp/index.html">Building Your First App</a> のトレーニング レッスンをご覧ください。</a>
-
-</p>
-
-<h2 id="get-as13">Android Studio 1.3 を入手する</h2>
-
-<p>Developer Preview は、現在プレビュー段階にある Android Studio 1.3 に最適化されています。
-Preview SDK をご使用になる場合は、Android Studio 1.3 のプレビュー版をインストールすることをお勧めします。
-</p>
-
-<p class="caution"><strong>注意:</strong> Android Studio 1.3 の Canary プレビューは、現在も開発中です。
-メインの開発用マシンを Developer Preview のテストに使用する場合、テスト用に 2 つ目の Android Studio をインストールできます。
-
-</p>
-
-<p>Android Studio 1.3 プレビューをインストールするには: </p>
-
-<ol>
-  <li><a href="{@docRoot}tools/studio/index.html">Android Studio</a> をダウンロードして起動します。
-
-  </li>
-
-  <li>[<strong>Settings</strong>] ウィンドウを開きます（Windows では、 <strong>[File] &gt; [Settings]</strong> を選択すると開くことができます）。
-<strong>[Appearance &amp; Behavior] &gt; [System Settings] &gt; [Updates]</strong> を選択します。
-
-
-
-    <p class="aside">OSX では、Android Studio の [<strong>Preferences</strong>] ウィンドウで、[<strong>Appearance &amp; Behavior</strong>] パネルを見つけることができます。
-
-</p>
-  </li>
-
-  <li> [<strong>Updates</strong>] パネルで、<strong>[Automatically check updates for:] に
-[Canary Channel]</strong> を選択します。
-  </li>
-
-  <li>[<strong>Updates</strong>] パネルで、[<strong>Check Now</strong>] を選択して最新の Canary ビルドの有無を確認します。
-メッセージが表示されたら、最新の Canary ビルドをダウンロードしてインストールします。
-
-  </li>
-</ol>
-
-<h2 id="get-sdk">Preview SDK を入手する</h2>
-
-<p>開発環境に Preview SDK コンポーネントを追加するには: </p>
-
-<ol>
-  <li>Android Studio 1.3 プレビューを起動します。
-  </li>
-
-  <li>[<strong>Settings</strong>] ウィンドウを開きます（Windows では、 <strong>[File] &gt; [Settings]</strong> を選択すると開くことができます）。
-<strong>[Appearance &amp; Behavior] &gt; [System Settings] &gt; [Updates]</strong> を選択します。
-
-
-
-    <p class="aside">OSX では、Android Studio の [<strong>Preferences</strong>] ウィンドウで、[<strong>Appearance &amp; Behavior</strong>] パネルを見つけることができます。
-
-</p>
-  </li>
-
-  <li>[<strong>Updates</strong>] パネルで、<strong>[Automatically check updates for:] に
-[Canary Channel]</strong> を、<strong>[Automatically check updates for Android SDK:] に
-[Preview Channel]</strong> を選択します。
-  </li>
-
-  <li>[<strong>Android SDK Manager</strong>] を起動します。（Android Studio 1.3 では、SDK Manager はスタンドアロン アプリケーションではなくなり Android Studio に統合されました。）
-
-
-  </li>
-
-  <li>[<strong>Platforms</strong>] セクションで、[<strong>Android MNC Preview</strong>] を選択します。
-
-  </li>
-
-  <li>[<strong>Tools</strong>] セクションで、最新の Android [<strong>SDK Tools</strong>]、[<strong>Platform-tools</strong>]、[<strong>Build-tools</strong>] を選択します。
-
-
-  </li>
-
-  <li>[<strong>Install packages</strong>] をクリックし、すべてのパッケージの使用許諾契約に同意します。
-
-  </li>
-
-  <li>[<strong>Settings</strong>] ウィンドウを開き、<strong>[Appearance &amp; Behavior] &gt; [System Settings] &gt; [Android SDK]</strong> を選択し、M Developer Preview がインストールされていることを確認します。
-
-</li>
-
-  <li>[<strong>Android SDK</strong>] パネルで、[<strong>SDK Platforms</strong>] を選択します。
-[<strong>Android MNC Preview</strong>] が [<em>Installed</em>] と表示されているはずです。
-また、[<strong>SDK Tools</strong>] タブを開き、最新のツールがインストールされていることを確認します。
-
-
-  </li>
-</ol>
-<p>上記の手順を完了すると、開発環境でプレビュー コンポーネントを利用できるようになります。
- </p>
-
-
-<h2 id="create-update">プロジェクトを作成または更新する</h2>
-
-<p>
-  プレビュー API を使用するには、プレビュー コンポーネントを使用するために開発プロジェクトを作成または更新する必要があります。
-
-</p>
-
-
-<h3 id="create">新しいプロジェクトを作成する</h3>
-
-<p>
-  Preview SDK を使用してプロジェクトを作成するときには、Android Studio を使用することをお勧めします。<a href="{@docRoot}sdk/installing/create-project.html">Creating a Project</a> に記載されている手順に従い、プロジェクト ウィザードで [<em>Form Factors</em>] 画面が表示されるまで操作を進めます。
-
-次に、以下の手順に従い、Preview SDK 用に構成されたプロジェクトを作成します。
-
-</p>
-
-<ul>
-  <li>[<strong>Phone and Tablet</strong>] をチェックします。</li>
-  <li>[<strong>Minimum SDK</strong>] で、[<strong>MNC: Android M (Preview)</strong>] を選択します。
-</li>
-</ul>
-
-
-<h3 id="update">既存のプロジェクトを更新する</h3>
-
-<p>
-  既存のプロジェクトを使用する場合は、プロジェクト構成を変更してプレビュー API を有効にする必要があります。開発環境で、モジュールの <code>build.gradle</code> ファイルを開き、次のように値を設定します。
-
-
-</p>
-
-<ul>
-  <li><code>compileSdkVersion</code> に <code>'android-MNC'</code> を設定します。</li>
-  <li><code>minSdkVersion</code> に <code>'MNC'</code> を設定します。</li>
-  <li><code>targetSdkVersion</code> に <code>'MNC'</code> を設定します。</li>
-</ul>
-
-
-<h2 id="setup-test">テスト用にセットアップする</h2>
-
-<p>
-  Preview SDK でアプリをテストするには、プレビュー版のプラットフォームを使用して構成した端末または仮想端末が必要です。
-互換端末をお持ちの場合、テスト用にプレビュー プラットフォームをインストールできます。
-互換端末をお持ちでない場合は、テスト用に仮想端末を構成できます。
-</p>
-
-<h3 id="setup-device">物理端末をセットアップする</h3>
-
-<p>
-  Nexus 5、Nexus 6、Nexus 9、Android TV をお持ちの場合は、アプリのテスト用にこれらの端末にプレビュー システム イメージをインストールできます。Android Virtual Device Manager ツールを使用すると、Android Studio 内から仮想端末をプレビュー版のプラットフォームでセットアップできます。
-
-
-
-</p>
-
-<p class="caution">
-  <strong>重要:</strong> 端末にプレビュー イメージをインストールすると、<em>端末からすべてのデータが削除されます</em>。そのため、プレビュー イメージをインストールする前にすべてのデータをバックアップする必要があります。
-
-</p>
-
-<h3 id="setupAVD">仮想端末をセットアップする</h3>
-
-<p>
-  Android Virtual Device Manager ツールを使用すると、Android Studio 内からプレビュー版のプラットフォームで仮想端末をセットアップできます。
-
-</p>
-
-<p>AVD マネージャーで AVD を作成するには: </p>
-
-<ol>
-  <li><a href="{@docRoot}preview/setup-sdk.html">Preview SDK のセットアップ</a>の説明に従って、開発環境に Preview SDK をインストールします。
-
-</li>
-  <li><a href="{@docRoot}tools/devices/managing-avds.html">Managing AVDs with AVD Manager</a> の手順に従います。
-
-以下の設定を使用します。
-    <ul>
-      <li><strong>端末:</strong> Nexus 5、Nexus 6、Nexus 9、Android TV</li>
-      <li><strong>対象:</strong> 
-       Android M (Preview) - API Level M</li>
-      <li><strong>ABI:</strong> x86</li>
-    </ul>
-  </li>
-</ol>
-
-<p>
-  テスト用の仮想端末の作成についての詳細は、<a href="{@docRoot}tools/devices/index.html">Managing Virtual Devices</a> をご覧ください。
-</p>
diff --git a/docs/html-intl/intl/ja/preview/testing/guide.jd b/docs/html-intl/intl/ja/preview/testing/guide.jd
deleted file mode 100644
index b70e04d..0000000
--- a/docs/html-intl/intl/ja/preview/testing/guide.jd
+++ /dev/null
@@ -1,187 +0,0 @@
-page.title=テストガイド
-page.image=images/cards/card-build_16x9_2x.png
-page.keywords=プレビュー リソース,Android M,テスト,パーミッション
-
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本書の内容</h2>
-      <ol>
-        <li><a href="#runtime-permissions">パーミッションをテストする</a></li>
-        <li><a href="#doze-standby">Doze と App Standby をテストする</a></li>
-        <li><a href="#ids">自動バックアップと端末識別子</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Android M Developer Preview を利用すると、次期バージョンのプラットフォームでアプリが動作するか確認できます。
-Android M Developer Preview には、<a href="{@docRoot}preview/api-overview.html">API の概要</a>と<a href="{@docRoot}preview/behavior-changes.html">動作の変更点</a>に記載されているように、アプリに影響を与える可能性のある多くの API と動作の変更が含まれています。
-
-Android M Developer Preview でアプリをテストする時には、アプリの良好な使用感を確保するために、システムのいくつかの変更点に特に注意する必要があります。
-
-
-</p>
-
-<p>
-  このガイドでは、アプリで Android M Developer Preview の機能の何をどのようにテストすればよいか説明します。以下の機能は、アプリの動作に大きな影響を与える可能性があるので、優先してテストする必要があります。
-
-
-</p>
-
-<ul>
-  <li><a href="#runtime-permissions">パーミッション</a>
-  </li>
-  <li><a href="#doze-standby">Doze と App Standby</a>
-  </li>
-  <li><a href="#ids">自動バックアップと端末識別子</a></li>
-</ul>
-
-<p>
-  テスト用のプレビュー システム イメージを使用した端末または仮想端末のセットアップ方法の詳細については、<a href="{@docRoot}preview/setup-sdk.html">Preview SDK のセットアップ</a>をご覧ください。
-
-</p>
-
-
-<h2 id="runtime-permissions">パーミッションをテストする</h2>
-
-<p>
-  <a href="{@docRoot}preview/features/runtime-permissions.html">パーミッション</a> モデルの変更により、ユーザーがアプリにパーミッションを付与する方法が変わりました。
-アプリでは、インストール時にすべてのパーミッションを要求するのではなく、実行時に個々のパーミッションをユーザーに要求する必要があります。
-
-これにより、ユーザーは、各アプリのアクティビティをより細かくコントロールできるようになるだけではなく、アプリが各パーミッションを要求する理由をこれまでよりもよく理解できるようになります。
-ユーザーは、いつでもアプリに個別にパーミッションを付与したり、付与したパーミッションを個別に取り消したりできます。
-この機能は、アプリの動作に大きな影響を与える可能性があり、アプリの一部の機能が動作しなくなったり、限定された機能しか使えなくなったりする可能性もあります。
-
-
-</p>
-
-<p class="caution">
-  この変更は、アプリがこの新しいバージョンを対象にしているかどうかにかかわらず、この新しいプラットフォーム上で実行されるすべてのアプリに影響します。
-このプラットフォームはレガシーアプリに限定的な互換動作を提供しますが、公式版のプラットフォームのリリースに合わせてアップデート版のアプリを公開できるように、新しいパーミッション モデルに対応させるためのアプリの移行を今から計画することを強くお勧めします。
-
-
-</p>
-
-
-<h3 id="permission-test-tips">テストのヒント</h3>
-
-<p>
-  以下のテストのヒントを活用して、アプリでの新しいパーミッション動作のテストを計画し、実行してください。
-
-</p>
-
-<ul>
-  <li>アプリの現在のパーミッションと関連するコードパスを確認します。</li>
-  <li>パーミッションで保護されているサービスとデータ間のユーザーフローをテストします。</li>
-  <li>付与されたパーミッションと取り消されたパーミッションのさまざまな組み合わせをテストします。</li>
-  <li>{@code adb} ツールを使用して、コマンドラインからパーミッションを管理します。
-    <ul>
-      <li>パーミッションとステータスをグループ化して表示します。
-        <pre>adb shell pm list permissions -d -g</pre>
-      </li>
-      <li>以下の構文を使用して 1 つまたは複数のパーミッションを付与または取り消します。<br>
-        <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
-      </li>
-    </ul>
-  </li>
-  <li>アプリでパーミッションを使用しているサービスを分析します。</li>
-</ul>
-
-<h3 id="permission-test-strategy">テスト方針</h3>
-
-<p>
-  このパーミッションの変化は、アプリの構造と設計、ユーザーが体験する使用感とフローに影響を与えます。
-アプリの現在のパーミッション利用の状況を調査し、新しいフローの検討を開始する必要があります。
-このプラットフォームの公式リリースは互換動作を提供しますが、互換動作に頼ることなくアプリのアップデートを計画することを強くお勧めします。
-
-
-</p>
-
-<p>
-  まずアプリが実際に必要とし使用しているパーミッションを特定してから、パーミッションで保護されたサービスを使用している各コードパスを探してください。
-これには、新しいプラットフォーム上でのテストと、コードの解析が必要です。
-テストでは、アプリの {@code targetSdkVersion} をこのプレビュー版に変えて、実行時パーミッションのオプトインに重点的にテストする必要があります。
-詳細については、<a href="{@docRoot}preview/setup-sdk.html#">Preview SDK のセットアップ</a>をご覧ください。
-
-</p>
-
-<p>
-  パーミッションの取り消しと追加のさまざまな組み合わせをテストし、パーミッションに依存するユーザーフローを確認します。
-パーミッションへの依存性が明白または論理的ではない箇所では、依存性を取り除くため、またはパーミッションが必要な理由を明白にするために、フローのリファクタリングまたはコンパートメント化を検討する必要があります。
-
-
-</p>
-
-<p>
-  実行時パーミッションの動作、テスト、ベスト プラクティスについては、Developer Preview ページの<a href="{@docRoot}preview/features/runtime-permissions.html">パーミッション</a>をご覧ください。
-
-
-</p>
-
-
-<h2 id="doze-standby">Doze と App Standby をテストする</h2>
-
-<p>
-  省電力機能である Doze と App Standby により、端末がアイドル状態のときやそのアプリにフォーカスがないときに、アプリが実行できるバックグラウンド処理の量が制限されます。
-システムによってアプリに加えられる可能性のある制限には、ネットワーク アクセスの制限や停止、バックグラウンド タスクの停止、通知の停止、ウェイク リクエストの無視、アラームなどがあります。
-
-これらの省電力のための最適化が行われた状態で確実にアプリが適切に動作するように、これらの省電力状態をシミュレートしてアプリをテストする必要があります。
-
-
-</p>
-
-<h4 id="doze">アプリで Doze をテストする</h4>
-
-<p>アプリで Doze をテストするには: </p>
-
-<ol>
-<li>M Preview のシステム イメージを使用して、ハードウェア端末または仮想端末を構成します。</li>
-<li>端末を開発マシンに接続し、アプリをインストールします。</li>
-<li>アプリを実行し、アクティブ状態のままにします。</li>
-<li>以下のコマンドを実行して、端末の Doze モードへの移行をシミュレートします。
-
-<pre>
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-
-  </li>
-  <li>端末がアクティブ状態に戻ったときのアプリの動作を観察します。端末が Doze モードから抜けるときに、アプリがスムーズに復帰することを確認します。
-</li>
-</ol>
-
-
-<h4 id="standby">アプリで App Standby をテストする</h4>
-
-<p>アプリで App Standby モードをテストするには: </p>
-
-<ol>
-  <li>M Preview のシステム イメージを使用して、ハードウェア端末または仮想端末を構成します。</li>
-  <li>端末を開発マシンに接続し、アプリをインストールします。</li>
-  <li>アプリを実行し、アクティブ状態のままにします。</li>
-  <li>以下のコマンドを実行して、アプリのスタンバイ モードへの移行をシミュレートします。
-
-<pre>
-$ adb shell am broadcast -a android.os.action.DISCHARGING
-$ adb shell am set-idle &lt;packageName&gt; true
-</pre>
-
-  </li>
-  <li>以下のコマンドを使用して、アプリのウェイクをシミュレートします。
-    <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
-  </li>
-  <li>アプリがウェイク状態に戻ったときのアプリの動作を観察します。アプリがスタンバイ モードからスムーズに復帰することを確認します。
-特に、アプリの通知とバックグラウンド ジョブが想定通りの動作を続けているかを確認する必要があります。
-</li>
-</ol>
-
-<h2 id="ids">アプリの自動バックアップと端末固有識別子</h2>
-
-<p>アプリが、Google Cloud Messaging の登録 ID などの何らかの端末固有の識別子を内部ストレージに保持している場合、<a href="{@docRoot}preview/backup/index.html">アプリの自動バックアップ</a>の説明に従って、そのストレージのロケーションを自動バックアップの対象から除外してください。
-
-
-
- </p>
diff --git a/docs/html-intl/intl/ja/preview/testing/performance.jd b/docs/html-intl/intl/ja/preview/testing/performance.jd
deleted file mode 100644
index 1c3ae02..0000000
--- a/docs/html-intl/intl/ja/preview/testing/performance.jd
+++ /dev/null
@@ -1,656 +0,0 @@
-page.title=表示パフォーマンスのテスト
-page.image=images/cards/card-test-performance_2x.png
-page.keywords=パフォーマンス,fps,ツール
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本書の内容</h2>
-      <ol>
-        <li><a href="#measure">UI のパフォーマンスを測定する</a>
-          <ul>
-            <li><a href="#aggregate">フレームのデータを集計する</a></li>
-            <li><a href="#timing-info">正確なフレーム タイミング情報</a></li>
-            <li><a href="#timing-dump">簡易フレーム タイミング ダンプ</a></li>
-            <li><a href="#collection-window">データ収集用のウィンドウを制御する</a></li>
-            <li><a href="#diagnose">パフォーマンスの低下を診断する</a></li>
-            <li><a href="#resources">追加リソース</a></li>
-          </ul>
-        </li>
-        <li><a href="#automate">UI パフォーマンス テストを自動化する</a>
-          <ul>
-            <li><a href="#ui-tests">UI テストをセットアップする</a></li>
-            <li><a href="#automated-tests">自動化された UI テストをセットアップする</a></li>
-            <li><a href="#triage">見つけた問題を選別し解決する</a></li>
-          </ul>
-        </li>
-      </ol>
-  </div>
-</div>
-
-
-<p>
-  ユーザー インターフェース（UI）のパフォーマンスをテストすることで、アプリが機能面での要件に合うだけでなく、ユーザーがアプリをスムーズに操作でき、毎秒安定して 60 フレーム（<a href="https://www.youtube.com/watch?v=CaMTIgxCSqU&amp;index=25&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">why 60fps?</a>）で、フレームのドロップや遅延なしで、言い換えれば<em>ジャンク</em>なしで実行されるようにします。
-
-
-このドキュメントでは、UI のパフォーマンスを測定することができるツールについて説明し、UI パフォーマンスの測定値をテストで活用する方法を提示します。
-
-
-</p>
-
-
-<h2 id="measure">UI のパフォーマンスを測定する</h2>
-
-<p>
-  パフォーマンスを改善するには、まずシステムのパフォーマンスを測定し、次にパイプラインのさまざまな箇所で発生している問題を診断し識別する必要があります。
-
-
-</p>
-
-<p>
-  <em><a href="https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></em> は端末上で動作し、システム サービスの状態についての情報をダンプする Android ツールです。
-
-<em>gfxinfo</em> コマンドを dumpsys に渡すと、記録中に実行されたアニメーションのフレームに関連するパフォーマンス情報が logcat に出力されます。
-
-
-</p>
-
-<pre>
-&gt; adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt;
-</pre>
-
-<p>
-  このコマンドは、フレーム タイミング データの複数の異なるバリアントを生成することがあります。
-</p>
-
-<h3 id="aggregate">フレームのデータを集計する</h3>
-
-<p>
-  M Preview では、このコマンドは、プロセスの生存期間全体を通して収集したフレームのデータの集計結果を logcat に出力します。
-次に例を示します。
-</p>
-
-<pre class="noprettyprint">
-Stats since: 752958278148ns
-Total frames rendered: 82189
-Janky frames: 35335 (42.99%)
-90th percentile: 34ms
-95th percentile: 42ms
-99th percentile: 69ms
-Number Missed Vsync: 4706
-Number High input latency: 142
-Number Slow UI thread: 17270
-Number Slow bitmap uploads: 1542
-Number Slow draw: 23342
-</pre>
-
-<p>
-  これらのデータは、アプリのレンダリングのパフォーマンスと多くのフレームの全体での安定性を大まかに示します。
-
-</p>
-
-
-<h3 id="timing-info">正確なフレーム タイミング情報</h3>
-
-<p>
-  M Preview では、gfxinfo のための新しいコマンド、<em>framestats</em> が採用され、最新のフレームのフレーム タイミングのきわめて詳細な情報を提供します。そのため、より正確に問題を追跡しデバッグできるようになります。
-
-
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats
-</pre>
-
-<p>
-  このコマンドは、アプリによって生成された最新 120 フレームのフレーム タイミング情報を、ナノ秒の精度を持つタイムスタンプを使用して出力します。以下は、adb dumpsys gfxinfo
-  &lt;PACKAGE_NAME&gt; framestats による未加工の出力例です。
-
-</p>
-
-<pre class="noprettyprint">
-0,49762224585003,49762241251670,9223372036854775807,0,49762257627204,49762257646058,49762257969704,49762258002100,49762265541631,49762273951162,49762300914808,49762303675954,
-0,49762445152142,49762445152142,9223372036854775807,0,49762446678818,49762446705589,49762447268818,49762447388037,49762453551527,49762457134131,49762474889027,49762476150120,
-0,49762462118845,49762462118845,9223372036854775807,0,49762462595381,49762462619287,49762462919964,49762462968454,49762476194547,49762476483454,49762480214964,49762480911527,
-0,49762479085548,49762479085548,9223372036854775807,0,49762480066370,49762480099339,49762481013089,49762481085850,49762482232152,49762482478350,49762485657620,49762486116683,
-</pre>
-
-<p>
-  この出力の各行が、アプリによって生成される 1 つのフレームを示します。各ラインは、フレームを生成するパイプラインの各段階で費やされた時間を出力する固定された数の列を持ちます。
-次のセクションでは、各列が何を示しているかも含めて、フォーマットを詳細に説明します。
-
-</p>
-
-
-<h4 id="fs-data-format">Framestats データ形式</h4>
-
-<p>
-  データは CSV 形式で出力されるため、お好みのスプレッドシート ツールに簡単に貼り付けたり、スクリプトで簡単に集計して解析したりできます。
-以下のリストは、出力データ列のフォーマットを説明しています。
-すべてのタイムスタンプはナノ秒単位で出力されます。
-</p>
-
-<ul>
-  <li>FLAGS
-    <ul>
-      <li>FLAGS 列が「0」の行には、FRAME_COMPLETED 列から INTENDED_VSYNC 列を引いて計算されたフレームの総処理時間が示されます。
-
-      </li>
-
-      <li>FLAGS 列が「0」以外の場合、そのフレームは通常のパフォーマンスからの外れ値であると定められているのでその行は無視する必要があります。この場合、レイアウトと描画に 16 ミリ秒よりも長くかかることが想定されています。
-
-これは、以下の原因で起きることがあります。
-        <ul>
-          <li>ウィンドウのレイアウトが変更された（アプリケーションの最初のフレームの場合や画面が回転された後など）。
-
-          </li>
-
-          <li>フレームが省略された。この場合、いくつかの値には不適切なタイムスタンプが含まれます。
-たとえば 60 fps よりも速く実行されている場合や、画面上にダーティで終わったものが何もない場合など、フレームは省略することができます。これは必ずしもアプリに問題がある兆候ではありません。
-
-
-          </li>
-        </ul>
-      </li>
-    </ul>
-  </li>
-
-  <li>INTENDED_VSYNC
-    <ul>
-      <li>フレームの意図された開始ポイント。この値が VSYNC と異なる場合、vsync 信号にすぐに応答することを阻止する動作が UI スレッド上で発生していたことを意味します。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>VSYNC
-    <ul>
-      <li>すべての vsync リスナーとフレームの描画（Choreographer フレーム コールバック、アニメーション、View.getDrawingTime() など）で使用された時間の値。
-
-      </li>
-
-      <li>VSYNC と VSYNC のアプリケーションへの影響の詳細については、<a href="https://www.youtube.com/watch?v=1iaHxmfZGGc&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=23">Understanding VSYNC</a> のビデオをご覧ください。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>OLDEST_INPUT_EVENT
-    <ul>
-      <li>入力キューの最も古い入力イベントのタイムスタンプ。フレームの入力イベントが存在しない場合は、Long.MAX_VALUE。
-
-      </li>
-
-      <li>この値は、主にプラットフォームの動作のパフォーマンスを示すことを意図しており、アプリのデベロッパーが活用できる場面は限定されます。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>NEWEST_INPUT_EVENT
-    <ul>
-      <li>入力キューの最も新しい入力イベントのタイムスタンプ。フレームの入力イベントが存在しない場合は、0。
-
-      </li>
-
-      <li>この値は、主にプラットフォームの動作のパフォーマンスを示すことを意図しており、アプリのデベロッパーが活用できる場面は限定されます。
-
-      </li>
-
-      <li>ただし、FRAME_COMPLETED から NEWEST_INPUT_EVENT を引いた値を確認することによって、そのアプリが増やす待ち時間がどれくらいか大まかに知ることができます。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>HANDLE_INPUT_START
-    <ul>
-      <li>入力イベントがアプリケーションにディスパッチされるときのタイムスタンプ。
-      </li>
-
-      <li>この値と ANIMATION_START との間の時間を確認することで、アプリケーションが入力イベントを処理するために費やした時間を測定することができます。
-
-      </li>
-
-      <li>この値が大きい（&gt; 2 ミリ秒）の場合、View.onTouchEvent() などの入力イベントを処理するためにアプリが長い時間を費やしていることを意味します。これは、この動作の最適化または別のスレッドへの移行が必要なことを示している場合があります。
-
-新しいアクティビティやそれに類するものを起動するクリック イベントなどの一部のシナリオでは、この値が大きいことは想定済みであり許容範囲内です。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>ANIMATION_START
-    <ul>
-      <li>Choreographer を使用して登録されたアニメーションが実行されたときのタイムスタンプ。
-      </li>
-
-      <li>この値と PERFORM_TRANVERSALS_START の間の時間を確認することで、実行中のすべてのアニメーター（ObjectAnimator、ViewPropertyAnimator、共通の遷移となっている Transitions）を評価するのにかかった時間を確認することができます。
-
-
-      </li>
-
-      <li>この値が大きい（&gt; 2 ミリ秒）の場合、アプリがカスタム アニメーターを記述していないか、また ObjectAnimators がアニメーション化しているのがどの項目かを確認して、それらがアニメーションに適しているかどうか確かめてください。
-
-
-      </li>
-
-      <li>Choreographer についての詳細は、<a href="https://developers.google.com/events/io/sessions/325418001">For Butter or Worse</a> のビデオをご覧ください。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>PERFORM_TRAVERSALS_START
-    <ul>
-      <li>この値から DRAW_START を引くと、レイアウトと測定のフェーズが完了するまでにかかる時間を知ることができます（スクロールまたはアニメーションの間は、この時間がゼロに近いことが望ましいことにご注意ください）。
-
-
-      </li>
-
-      <li>レンダリング パイプラインのレイアウトと測定のフェーズについての詳細は、<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">Invalidations, Layouts and Performance</a> のビデオをご覧ください。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>DRAW_START
-    <ul>
-      <li>performTraversals の描画のフェーズが開始された時間。これは、無効化されているビューのディスプレイ リストを記録する開始ポイントです。
-
-      </li>
-
-      <li>この値と SYNC_START の間の時間は、ツリー内のすべての無効化されているビュー上で View.draw() を呼び出すのにかかった時間を示します。
-
-      </li>
-
-      <li>描画モデルに関する詳細は、<a href="{@docRoot}guide/topics/graphics/hardware-accel.html#hardware-model">Hardware Acceleration</a> または <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">Invalidations, Layouts and Performance</a> のビデオをご覧ください。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>SYNC_START
-    <ul>
-      <li>描画の同期フェーズが開始された時間。
-      </li>
-
-      <li>この値と ISSUE_DRAW_COMMANDS_START の間の時間が非常に大きい場合（&gt; 0.4 ミリ秒またはこれに近い値）、通常は、GPU にアップロードする必要がある多くの新しい Bitmaps が描画されたこと意味します。
-
-
-      </li>
-
-      <li>同期フェーズについての詳細は、<a href="https://www.youtube.com/watch?v=VzYkVL1n4M8&amp;index=24&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">Profile GPU Rendering</a> のビデオをご覧ください。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>ISSUE_DRAW_COMMANDS_START
-    <ul>
-      <li>ハードウェア レンダラーが、GPU への描画コマンドの発行を開始した時間。
-      </li>
-
-      <li>この値と FRAME_COMPLETED の間の時間により、そのアプリがどれくらいの量の GPU 作業を生じさせているのか大まかに知ることができます。
-オーバードローが多すぎたりまたはレンダリング効果が不十分だったりという問題がある場合は、この時間にあらわれます。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>SWAP_BUFFERS
-    <ul>
-      <li>eglSwapBuffers が呼び出された時間。プラットフォーム作業関連以外では、あまり重要ではない値です。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>FRAME_COMPLETED
-    <ul>
-      <li>すべてが完了した時間です。そのフレームを処理するのにかかった時間の合計は、FRAME_COMPLETED から INTENDED_VSYNC を引くと計算できます。
-
-      </li>
-    </ul>
-  </li>
-
-</ul>
-
-<p>
-  このデータは、別の方法でも使用できます。たとえば、さまざまな遅延バケットでのフレームの処理にかかった時間（FRAME_COMPLETED - INTENDED_VSYNC）の分布を示す下記のヒストグラムは、単純ですが役に立ちます。
-
-このグラフを一目見るだけで、大部分のフレームは 16 ミリ秒の限界線（赤色の線）を大きく下回った良好な状態であるけれども、いくつかのフレームが限界線を著しく上回っていることがわかります。
-
-ヒストグラムで時間の経過に伴う変化を確認することで、大規模な変化が起きているのか、新しい外れ値が作成されているのか知ることができます。
-また、データに含まれる多くのタイムスタンプに基づいて、入力待ち時間、レイアウトにかかった時間、その他のこれに類する興味を引く指標をグラフにできます。
-
-
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-framestats.png">
-
-
-<h3 id="timing-dump">簡易フレーム タイミング ダンプ</h3>
-
-<p>
-  [開発者向けオプション] で [<strong>GPUレンダリングのプロフィール作成</strong>] を [<strong>adb shell dumpsys gfxinfo</strong>] に設定すると、<code>adb shell dumpsys gfxinfo</code> コマンドにより、最新の 120 フレームのタイミング情報が、いくつかの異なるカテゴリに分かれて、タブ区切りで出力されます。
-
-
-このデータは、描画パイプラインのどの部分の処理が遅いのかを大まかに知るのに役に立ちます。
-
-</p>
-
-<p>
-  上記の <a href="#fs-data-format">framestats</a> と同様に、お好みのスプレッドシート ツールに簡単に貼り付けたり、スクリプトで簡単に集計し解析したりできます。
-
-以下のグラフは、アプリによって生成された多くのフレームが時間を費やした箇所の内訳を示しています。
-
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-frame-latency.png">
-
-<p>
-  このグラフは、gfxinfo を実行し、出力結果をコピーし、スプレッドシート アプリケーションに貼り付け、データを積み上げ棒グラフにしたものです。
-
-</p>
-
-<p>
-  各縦棒は、アニメーションの 1 フレームを示し、その高さはそのフレームを処理するのにかかるミリ秒の数を示しています。
-また、縦棒の色分けされた各部分は、レンダリング パイプラインの各段階を示しています。これにより、ボトルネックを生んでいる可能性があるのはアプリケーションのどの箇所か確認できます。
-
-レンダリング パイプラインとその最適化方法に関する詳細は、<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;index=27&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">Invalidations, Layouts and Performance</a> のビデオをご覧ください。
-
-
-</p>
-
-
-<h3 id="collection-window">データ収集用のウィンドウを制御する</h3>
-
-<p>
-  Framestats と簡易フレーム タイミングの両方とも、非常に短いウィンドウを通じて、約 2 秒相当のレンダリングについてデータを収集しています。
-たとえば、収集するデータを特定のアニメーションだけに限定したい場合、このタイミング データ収集用ウィンドウを正確にコントロールするには、すべてのカウンタをリセットし収集したデータを集計します。
-
-
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; reset
-</pre>
-
-<p>
-  これは、ダンプ コマンドとあわせて使用することもでき、フレームの 2 秒未満のウィンドウを続けてキャプチャしながら、通常の流れで収集しリセットできます。
-
-
-</p>
-
-
-<h3 id="diagnose">パフォーマンスの低下を診断する</h3>
-
-<p>
-  パフォーマンスの低下を見つけることは、問題を見つけだし、アプリケーションの状態を良好に維持するための最初のステップです。
-ただし、dumpsys は、ただ問題の存在とその相対的な深刻度を明らかにするだけです。
-さらに、パフォーマンスの問題の具体的な原因を突き止め、解決するための適切な方法を見つける必要があります。
-それには、<a href="{@docRoot}tools/help/systrace.html">systrace</a> ツールを利用することをお勧めします。
-
-</p>
-
-
-<h3 id="resources">追加リソース</h3>
-
-<p>
-  Android のレンダリング パイプラインの仕組み、一般的な問題、それらの問題の修正方法についての詳細は、以下の資料が役に立ちます。
-
-
-</p>
-
-<ul>
-  <li>Rendering Performance 101
-  </li>
-  <li>Why 60fps?
-  </li>
-  <li>Android UI and the GPU
-  </li>
-  <li>Invalidations Layouts and performance
-  </li>
-  <li>Analyzing UI Performance with Systrace
-  </li>
-</ul>
-
-
-<h2 id="automate">UI パフォーマンス テストを自動化する</h2>
-
-<p>
-  UI パフォーマンスのテスト手法の 1 つに、対象のアプリ上で一連のユーザー操作を人間のテスターに実行してもらい、目視でジャンクを探すかツール主体の手法を使用して長い時間を費やしてジャンクを見つけるかのいずれかの方法をとるというものがあります。
-
-ただし、この人の力による方法は危険を伴います。フレームレートの変化に気付く能力は、人によって大きく異なります。また、この方法は、多くの時間が必要で単調で退屈なものであり、ミスも起こりがちです。
-
-
-</p>
-
-<p>
-  より効率的な手法は、自動化された UI テストにより主要なパフォーマンス指標のログを取って解析することです。
-Android M Developer Preview には、アプリケーションのアニメーションに対するジャンクの量と深刻度を簡単に確認することができ、現在のパフォーマンスを確認し将来のパフォーマンス目標を実現するための適切なプロセスを構築するために使用できる新しいログ記録機能が含まれています。
-
-
-
-</p>
-
-<p>
-  このドキュメントでは、この新しいログ機能によるデータを使用してパフォーマンス テストを自動化するための手法について紹介します。
-
-</p>
-
-<p>
-  この手法には、鍵となるアクションが 2 つあります。何をどのようにテストするかということを明確にすることと、自動化されたテスト環境をセットアップし管理することです。
-
-
-</p>
-
-
-<h3 id="ui-tests">UI テストをセットアップする</h3>
-
-<p>
-  自動化されたテストを実行する前に、テストの仕様や必要になる可能性があるものを適切に把握するために、いくつかの大まかな決定をしておくことが重要です。
-
-</p>
-
-<h4>
-  テストする重要なアニメーションやフローを明確にする
-</h4>
-
-<p>
-  パフォーマンスの低さがユーザーの目に最も多く触れるのは、アニメーションのスムーズさが失われる場合です。
-そのため、どのタイプの UI アクションをテストするか決めるときに、ユーザーが最もよく見る重要なアニメーションまたはユーザーの使用感にとって最も重要なアニメーションにフォーカスすると効果があります。
-
-以下にいくつかの一般的なシナリオをご紹介します。
-</p>
-
-<ul>
-  <li>プライマリ ListView または RecyclerView のスクロール
-  </li>
-
-  <li>非同期処理待ちサイクル中のアニメーション
-  </li>
-
-  <li>ビットマップを読み込んだり操作したりするアニメーション
-  </li>
-
-  <li>アルファブレンドを含むアニメーション
-  </li>
-
-  <li>キャンバスを使用して描画するカスタムビュー
-  </li>
-</ul>
-
-<p>
-  チームのエンジニア、デザイナー、プロダクト マネージャーと連携して、テスト範囲のこれらの重要な製品アニメーションの優先順位を決めてください。
-
-</p>
-
-<h4>
-  将来の目標を決め、実現を目指す
-</h4>
-
-<p>
-  具体的なパフォーマンス目標を明確にし、その目標に合わせてテストを作成しデータを収集することが重要な場合もあります。
-次に例を示します。
-</p>
-
-<ul>
-  <li>詳細を知るために、初めて UI パフォーマンスの追跡を開始したいだけですか。
-  </li>
-
-  <li>将来発生する可能性のあるパフォーマンスの低下を防止したいですか。
-  </li>
-
-  <li>現在のフレームのスムーズ度合いは 90% で、今四半期中に 98 % にしたいと考えていますか。
-  </li>
-
-  <li>現在のフレームのスムーズ度合い 98% を低下させたくないと考えていますか。
-  </li>
-
-  <li>ローエンド端末でのパフォーマンスを改善することが目標ですか。
-  </li>
-</ul>
-
-<p>
-  上記のすべての場合で、複数のバージョンのアプリケーションでのパフォーマンスを示すヒストリカル トラッキングが必要です。
-
-</p>
-
-<h4>
-  テストする端末を明確にする
-</h4>
-
-<p>
-  アプリケーションのパフォーマンスは、そのアプリケーションが実行される端末によって異なります。端末によっては、メモリが少なく、GPU のパワーが低く、CPU チップが遅いものもあります。
-つまり、あるハードウェアでスムーズに実行できるアニメーションが別のハードウェアではうまく実行できなかったり、さらに悪い場合は、パイプラインの別の箇所にボトルネックを生んだりすることになります。
-
-そのため、このようなハードウェアの違いに対処するために、最新のハイエンド端末と、ローエンド端末、タブレットなどの幅広い端末を選んでテストを実行する必要があります。
-
-さまざまな CPU 性能、RAM、画面密度、サイズ等の端末を用意してください。
-ハイエンド端末でうまくいったテストが、ローエンド端末では失敗することがあります。
-
-</p>
-
-<h4>
-  UI のテストの基本的なフレームワーク
-</h4>
-
-<p>
-  <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a> や <a href="{@docRoot}training/testing/ui-testing/espresso-testing.html">Espresso</a> といったツールが、ユーザーがアプリケーション内を移動する動作を自動処理にするために用意されています。
-
-これらは、端末でのユーザーの操作を模倣するシンプルなフレームワークです。
-これらのフレームワークを使用するには、一連のユーザー アクションを実行する独自のスクリプトを作成して、端末上で実行します。
-
-
-</p>
-
-<p>
-  <code>dumpsys gfxinfo</code> と、これらの自動化されたテストを組み合わせることで、テストを実行できる再現可能なシステムを簡単に作成して、特定の条件でのパフォーマンス情報を測定できます。
-
-
-</p>
-
-
-<h3 id="automated-tests">自動化された UI テストをセットアップする</h3>
-
-<p>
-  UI テストを実行する機能と、1 つのテストからデータを集めるためのパイプラインを用意したら、次の重要なステップは、複数の端末で、そのテストを複数回実行でき、開発チームの解析用にパフォーマンス データを集計できるフレームワークを用意することです。
-
-
-
-</p>
-
-<h4>
-  テスト自動化のためのフレームワーク
-</h4>
-
-<p>
-  UI テストのフレームワーク（<a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a> など）は、対象の端末やエミュレータ上で直接実行されます。
-<em>dumpsys gfxinfo</em> によるパフォーマンス情報の収集はホストマシンによって行われますが、コマンドの送信は ADB を通じて行われます。
-これらの別々に分かれている処理の自動化を橋渡しするために、<a href="{@docRoot}tools/help/monkeyrunner_concepts.html">MonkeyRunner</a> フレームワークは開発されました。このフレームワークは、ホストマシンで動作するスクリプティング システムで、接続されている端末にコマンドを発行できるとともに、それらの端末からデータを受け取ることもできます。
-
-
-
-</p>
-
-<p>
-  UI パフォーマンス テストの適切な自動化のためのスクリプトを作成することで、少なくとも、以下のタスクを MonkeyRunner を利用して実行することが可能になります。
-
-</p>
-
-<ul>
-  <li>対象の端末（1 台または複数台）またはエミュレータに任意の APK をロードして起動する
-  </li>
-
-  <li>UI Automator UI テストを起動して、実行できるようにする
-  </li>
-
-  <li><em>dumpsys gfxinfo</em>を通じて情報を収集する。<em></em>
-  </li>
-
-  <li>情報を集計し、デベロッパーに役に立つ形で表示する。
-  </li>
-</ul>
-
-
-<h3 id="triage">見つけた問題を選別し解決する</h3>
-
-<p>
-  問題のパターンまたはパフォーマンスの低下を確認したら、次に必要なことは問題の解決方法を見つけその方法を実行することです。
-その自動化されたテスト フレームワークがフレームの正確なタイミングの内訳を保存している場合、最近行われたコードやレイアウトの疑わしい変更を調べたり（パフォーマンスが低下している場合）、手作業での調査に切り替えたときにシステムのどの箇所を解析するか絞り込んだりするのに役立ちます。
-
-
-手作業での調査は、まず <a href="{@docRoot}tools/help/systrace.html">systrace</a> から開始することをお勧めします。systrace は、システムのレンダリング パイプラインのすべての段階、すべてのスレッド、コア、およびテスト担当者が定義したカスタム イベントについての正確なタイミング情報を表示します。
-
-
-</p>
-
-<h4>
-  一時的なタイミングを適切にプロファイリングする
-</h4>
-
-<p>
-  レンダリング パフォーマンスのタイミングを取得し測定することには困難を伴います。
-これらの数値は、その本質として、決定的なものではなく、多くの場合、システムの状態、利用可能なメモリ量、サーマル・スロットリング、その地域に最後に日照があった時間などに応じて変動します。
-
-つまり同じテストを 2 度実行した場合、近似するが完全に同じではない、わずかに異なる結果が出ることがあるということです。
-
-
-</p>
-
-<p>
-  この方法で適切にデータを集めプロファイリングするには、同じテストを複数回実行し、結果を平均値または中間値として集計します（以下では、この処理を「バッチ」と記載します）。これにより、テストのパフォーマンスの大まかな数字を、正確なタイミングを必要とすることなく取得できます。
-
-
-
-</p>
-
-<p>
-  バッチは、コード変更の合間にも、それらの変更がパフォーマンスにもたらす相対的な影響を確認するために使用できます。
-変更前のバッチの平均フレームレートが変更後のバッチよりも大きい場合、通常、WRT パフォーマンスが全面的に改善したと言えます。
-
-
-</p>
-
-<p>
-  つまり、自動化された UI テストでは、この考え方を取り入れることと、テスト中に発生する可能性のある異常を把握しておくことが必要です。
-たとえば、アプリケーションのパフォーマンスが、そのアプリケーションではなく何らかの端末の問題により突然低下した場合、通常時のタイミングを取得するためにバッチを再度実行した方がよいことがあります。
-
-
-
-</p>
-
-<p>
-  それでは、測定値を意味のあるものにするには、何回テストを実行すればよいでしょうか。少なくとも 10 回は必要であり、50 回や 100 回などのように回数が多いほど正確な結果が得られます（もちろん、時間と正確さはトレードオフの関係にあります）。
-
-
-</p>
diff --git a/docs/html-intl/intl/ja/sdk/index.jd b/docs/html-intl/intl/ja/sdk/index.jd
new file mode 100644
index 0000000..f7454c0
--- /dev/null
+++ b/docs/html-intl/intl/ja/sdk/index.jd
@@ -0,0 +1,432 @@
+page.title=Android Studio と SDK Tools のダウンロード
+page.tags=sdk, android studio
+page.template=sdk
+page.image=images/cards/android-studio_2x.png
+header.hide=1
+page.metaDescription=公式 Android IDE とデベロッパー ツールをダウンロードして、Android 版のモバイル端末、タブレット、ウェアラブル端末、TV などの端末向けのアプリをビルドする。
+
+@jd:body
+
+<style type="text/css">
+  .offline {display:none;}
+  h2.feature {
+    padding-top:30px;
+    margin-top:0;
+    clear:both;
+  }
+  .feature-blurb {
+  margin:0px; font-size:16px; font-weight:300;
+  padding-top:40px;
+  }
+
+  .landing-button .small {
+    font-size: 12px;
+    font-weight: normal;
+    line-height: 12px;
+    display: block;
+  }
+
+  h1.studio-logo {
+    width:226px;
+    height:78px;
+    display:block;
+    padding:0;
+    white-space: nowrap;
+    text-indent: -10000px;
+    font-size:0px;
+    background: url({@docRoot}images/tools/studio-logo.png);
+    background-image: -webkit-image-set(url({@docRoot}images/tools/studio-logo.png) 1x, url({@docRoot}images/tools/studio-logo_2x.png) 2x);
+    background-size: 226px 78px;
+  }
+
+</style>
+
+
+
+
+
+<div style="position:relative;">
+
+
+<div class="wrap" id="tos" style="display:none;width:inherit;height:650px">
+<div class="col-13" style="margin:0;">&nbsp;</div><!-- provides top margin for content -->
+
+<h1 id="tos-header" style="margin-top:0">ダウンロード</h1>
+
+<p class="sdk-terms-intro">Android Studio またはスタンドアロンの SDK Tools をインストールする前に、次の利用規約に同意する必要があります。
+</p>
+
+<div class="sdk-terms" onfocus="this.blur()">
+<h2 class="norule">利用規約</h2>
+以下は、Android Software Development Kit の使用許諾契約です。
+
+
+<h3>1. Introduction</h3>
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+
+<h3>2. Accepting this License Agreement</h3>
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
+
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
+
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+
+
+<h3>3. SDK License from Google</h3>
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
+
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
+
+3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
+
+
+<h3>4. Use of the SDK by You</h3>
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+
+<h3>5. Your Developer Credentials</h3>
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+
+<h3>6. Privacy and Information</h3>
+6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy.
+
+
+<h3>7. Third Party Applications</h3>
+7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
+
+
+<h3>8. Using Android APIs</h3>
+8.1 Google Data APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+
+<h3>9. Terminating this License Agreement</h3>
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
+(B) Google is required to do so by law; or
+(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
+(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
+
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+
+
+<h3>10. DISCLAIMER OF WARRANTIES</h3>
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+
+<h3>11. LIMITATION OF LIABILITY</h3>
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+
+<h3>12. Indemnification</h3>
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
+
+
+<h3>13. Changes to the License Agreement</h3>
+13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available.
+
+
+<h3>14. General Legal Terms</h3>
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+
+<em>November 20, 2015</em>
+</div>
+
+
+
+
+
+<div id="next-steps" style="display:none;position:absolute;width:inherit">
+  <p>数ステップで、Android 向けアプリのビルドを開始できます。</p>
+  <p>まもなく、<a id="next-link" href="{@docRoot}sdk/installing/index.html">Installing the Android SDK</a>へリダイレクトします。
+</p>
+
+</div><!-- end next-steps -->
+
+
+
+<div id="sdk-terms-form">
+<p>
+<input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+<label id="agreeLabel" for="agree">上記の利用規約を読み、同意します。</label>
+</p>
+<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+</div>
+
+
+</div><!-- end TOS -->
+
+
+
+
+
+
+<div id="landing">
+
+<div class="col-13">&nbsp;</div><!-- provides top margin for content -->
+
+<img src="{@docRoot}images/tools/studio-hero.png" srcset="{@docRoot}images/tools/studio-hero_2x.png 2x, {@docRoot}images/tools/studio-hero.png 1x" width="760" height="400" />
+
+
+<div style="color: #fff; width:226px; height:0; overflow:visible; position:absolute; top:40px; left:25px">
+
+<h1 class="studio-logo" style="margin:0 0 35px !important">Android Studio</h1>
+
+<p style="font-size: 16px; color:#bbb; position: absolute;left: 297px; top: 5px; display: block;
+width: 400px;text-align: center;">公式 Android IDE</p>
+
+<ul style="font-size:12px;line-height:19px;">
+<li>Android Studio IDE</li>
+<li>Android SDK Tools</li>
+<li>Android 6.0（Marshmallow）プラットフォーム</li>
+<li>Google API を使用した Android 6.0 エミュレータのシステム イメージ</li>
+</ul>
+
+<a class="online landing-button green download-bundle-button"
+href="#Other" >Download Android Studio<br/><span class='small'></span></a>
+
+<!-- this appears when viewing the offline docs -->
+<p class="offline">
+Android Studio または スタンドアロンの SDK Tools を入手するには、<a href="http://developer.android.com/sdk/index.html">developer.android.com/sdk/</a> へアクセスしてください。
+</p>
+</div>
+
+<ul>
+  <li><a href="#Requirements">システム要件</a></li>
+  <li><a href="#Other">他のダウンロード オプション</a></li>
+  <li><a href="{@docRoot}sdk/installing/migrate.html">Android Studio への移行</a></li>
+  <li><a href="https://docs.google.com/a/google.com/forms/d/1mjsyfzv3HAnDY-_Kfj-3QJKdpuksyMFs9e73CRwmT6Q/viewform" target="_blank">アンケートに回答する</a></li>
+</ul>
+
+
+
+
+
+<div class="cols">
+<h2 class="feature norule col-13" >インテリジェント コード エディタ</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-code.png" srcset="{@docRoot}images/tools/studio-hero-code_2x.png 2x, {@docRoot}images/tools/studio-hero-code.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android Studio の中核であるインテリジェント コード エディタは、高度なコード補完機能、リファクタリング機能、解析機能を備えています。
+</p>
+  <p>このパワフルなコード エディタは、Android アプリ デベロッパーの生産性を高めます。</p>
+</div>
+
+
+
+
+
+<h2 class="feature norule">コード テンプレートと GitHub との統合</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-import.png" srcset="{@docRoot}images/tools/studio-hero-import_2x.png 2x, {@docRoot}images/tools/studio-hero-import.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>新しいプロジェクト ウィザードでは、これまで以上に簡単に新規プロジェクトを開始できます。</p>
+
+  <p>ナビゲーション ドロワーやビュー ページャーなどのパターンにテンプレート コードを使用してプロジェクトを開始できます。加えて GitHub から Google のコード サンプルをインポートできます。
+</p>
+</div>
+
+
+
+
+<h2 class="feature norule">マルチスクリーン アプリの開発</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-screens.png" srcset="{@docRoot}images/tools/studio-hero-screens_2x.png 2x, {@docRoot}images/tools/studio-hero-screens.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android 携帯電話、タブレット、Android Wear、Android TV、Android Auto、Google Glass 向けのアプリをビルドできます。
+</p>
+  <p>Android Studio の新しい Android プロジェクト ビューとモジュールのサポートによって、アプリのプロジェクト管理やリソース管理がさらに簡単になります。
+
+</div>
+
+
+
+
+<h2 class="feature norule">あらゆる形状の端末をサポートする仮想デバイス</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-avds.png" srcset="{@docRoot}images/tools/studio-hero-avds_2x.png 2x, {@docRoot}images/tools/studio-hero-avds.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android Studio には最適化されたエミュレータ イメージが事前構成されています。</p>
+  <p>アップデートされ合理化された仮想デバイス マネージャーには、一般的な Android 端末向けにあらかじめ定義されたプロファイルが用意されています。
+</p>
+</div>
+
+
+
+
+<h2 class="feature norule">
+Gradle で進化する Android のビルド</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-gradle.png" srcset="{@docRoot}images/tools/studio-hero-gradle_2x.png 2x, {@docRoot}images/tools/studio-hero-gradle.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>1 つのプロジェクトで、Android アプリのための、異なる機能を持つ複数の APK を作成できます。</p>
+  <p>Maven を使用してアプリの依存関係を管理します。</p>
+  <p>APK は Android Studio でもコマンドラインでもビルドできます。</p>
+</div>
+
+
+
+<h2 class="feature norule">Android Studio のその他の特徴</h2>
+<div style="background:#424242;padding:30px; color:#fff;margin:0 0 15px;">
+
+<a class="online landing-button green download-bundle-button" style="margin:0 0 40px 60px;float:right" href="">Download</a>
+
+  <ul>
+  <li>人気の高い JetBrains の Java IDE である IntelliJ IDEA Community Edition が基盤</li>
+  <li>Gradle ベースの柔軟なビルドシステム</li>
+  <li>ビルド バリアントと複数の APK 生成機能</li>
+  <li>Google サービスやさまざまな端末向けのテンプレート サポートの拡充</li>
+  <li>テーマの編集が可能なレイアウト エディタ</li>
+  <li>パフォーマンス、ユーザビリティ、バージョン互換性、その他の問題を検出する Lint ツール</li>
+  <li>ProGuard とアプリの署名機能</li>
+  <li>Google Cloud Messaging や App Engine との統合をサポートする Google Cloud プラットフォームの組み込みサポート
+</li>
+  </ul>
+
+<p style="margin:0">
+Android Studio の機能の詳細については、「<a href="{@docRoot}tools/studio/index.html">Android Studio の基礎</a>」をご覧ください。
+</p>
+</div>
+
+
+<p>Eclipse で ADT を使用している場合、Android Studio が Android の公式 IDE になったため、Android Studio に移行して IDE の最新アップデートを入手する必要があります。
+
+プロジェクトの移行については、「<a href="{@docRoot}sdk/installing/migrate.html">Migrating to Android Studio</a>」をご覧ください。
+
+</p>
+
+
+
+
+
+
+
+<h2 id="Requirements">システム要件</h2>
+
+<h3>Windows の場合</h3>
+
+<ul>
+<li>Microsoft&reg; Windows&reg; 8/7/Vista/2003（32-bit 版または 64-bit 版）</li>
+<li>2 GB 以上のシステム メモリ（RAM）、4 GB 以上を推奨</li>
+<li>400 MB の空き容量のあるハードディスク</li>
+<li>Android SDK、エミュレータのシステム イメージ、キャッシュ用には少なくとも 1 GB 以上</li>
+<li>1280 x 800 以上の画面解像度</li>
+<li>Java Development Kit (JDK) 7 </li>
+<li>エミュレータ アクセラレータ向け（任意）: Intel® VT-x、Intel® EM64T（Intel® 64）、Execute Disable（XD）ビット機能対応の Intel® プロセッサ
+</li>
+</ul>
+
+
+<h3>Mac OS X の場合</h3>
+
+<ul>
+<li>Mac &reg;OS X&reg; 10.8.5 以降、10.9（Mavericks）まで</li>
+<li>2 GB 以上のシステム メモリ（RAM）、4 GB 以上を推奨</li>
+<li>400 MB の空き容量のあるハードディスク</li>
+<li>Android SDK、エミュレータのシステム イメージ、キャッシュ用には少なくとも 1 GB 以上</li>
+<li>1280 x 800 以上の画面解像度</li>
+<li>Java Runtime Environment (JRE) 6</li>
+<li>Java Development Kit (JDK) 7</li>
+<li>エミュレータ アクセラレータ向け（任意）: Intel® VT-x、Intel® EM64T（Intel® 64）、Execute Disable（XD）ビット機能対応の Intel® プロセッサ
+</li>
+</ul>
+
+<p>Mac OSで最適化されたフォントのレンダリングを使用するには、Android Studio を Java Runtime Environment (JRE) 6 と共に実行する必要があります。
+その後、Java Development Kit（JDK）6 または JDK 7 を使用するようプロジェクトを構成できます。</p>
+
+
+
+<h3>Linux の場合</h3>
+
+<ul>
+<li>GNOME または KDE デスクトップ</li>
+<li>GNU C Library (glibc) 2.15 以降</li>
+<li>2 GB 以上のシステム メモリ（RAM）、4 GB 以上を推奨</li>
+<li>400 MB の空き容量のあるハードディスク</li>
+<li>Android SDK、エミュレータのシステム イメージ、キャッシュ用には少なくとも 1 GB 以上</li>
+<li>1280 x 800 以上の画面解像度</li>
+<li>Oracle&reg; Java Development Kit (JDK) 7 </li>
+</ul>
+<p>Ubuntu&reg; 14.04、Trusty Tahr（32-bit 版アプリケーションを実行可能な 64-bit 版）でテスト済み。
+</p>
+
+
+
+
+<h2 id="Other" style="clear:left">他のダウンロード オプション</h2>
+
+<!-- alternative SDK options follows -->
diff --git a/docs/html-intl/intl/ja/sdk/installing/adding-packages.jd b/docs/html-intl/intl/ja/sdk/installing/adding-packages.jd
new file mode 100644
index 0000000..af5dcd0
--- /dev/null
+++ b/docs/html-intl/intl/ja/sdk/installing/adding-packages.jd
@@ -0,0 +1,227 @@
+page.title=SDK パッケージの追加
+
+page.tags=sdk manager
+helpoutsWidget=true
+
+@jd:body
+
+<style>
+ol.large {
+  margin-left:0;
+}
+ol.large > li {
+  list-style-position: inside;
+  list-style-type:none;
+  margin:30px 0 0 0;
+  padding:30px 20px;
+  background:#eee;
+}
+ol.large > li:nth-child(odd) {
+}
+ol.large > li:before {
+  display:inline;
+  left:-40px;
+  float:left;
+  width:20px;
+  font-size:20px;
+  line-height:20px;
+}
+ol.large > li > h2 {
+  font-size:20px;
+  line-height:20px;
+  padding:0 0 0 20px;
+  margin:0 0 20px 0;
+  display:inline;
+  font-weight:normal;
+}
+ol.large > li:nth-child(1):before {
+  content:"1. ";
+}
+ol.large > li:nth-child(2):before {
+  content:"2. ";
+}
+ol.large > li:nth-child(3):before {
+  content:"3. ";
+}
+ol.large > li:nth-child(4):before {
+  content:"4. ";
+}
+ol.large > li:nth-child(5):before {
+  content:"5. ";
+}
+ol.large > li:nth-child(6):before {
+  content:"6. ";
+}
+</style>
+
+
+<p>
+Android SDK では、デフォルトの状態で、開発の開始に必要なすべてのものが用意されているわけではありません。
+Android SDK では、ツール、プラットフォーム、その他のコンポーネントがパッケージに分けられており、<a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a> を使って必要に応じてダウンロードできます。
+
+
+そのため、開始前に、Android SDK にいくつかのパッケージを追加する必要があります。</p>
+
+<p>パッケージの追加を開始するには、次のいずれかの方法で Android SDK Manager を起動します。</p>
+<ul>
+  <li>Android Studio で、ツールバーの [<strong>SDK Manager</strong>] <img src="{@docRoot}images/tools/sdk-manager-studio.png" style="vertical-align:bottom;margin:0;height:17px" /> をクリックします。
+</li>
+  <li>Android Studio を使用しない場合: 
+    <ul>
+      <li>Windows の場合: Android SDK のルート ディレクトリにある <code>SDK Manager.exe</code> ファイルをダブルクリックします。
+</li>
+      <li>Mac または Linux の場合: ターミナルを開いて Android SDK がインストールされているロケーションの <code>tools/</code> ディレクトリに移動し、<code>android sdk</code> を実行します。
+</li>
+    </ul>
+  </li>
+</ul>
+
+<p>SDK Manager を初めて開く場合、いくつかのパッケージがデフォルトで選択されています。
+この選択はそのままにしますが、開始に必要なすべてのものが揃っているか、次の手順でご確認ください。
+</p>
+
+
+<ol class="large">
+<li>
+  <h2 id="GetTools" class="norule">最新の SDK Tools を入手する</h2>
+
+<img src="/images/sdk_manager_packages.png" alt="" width="350" style="float:right;margin-left:20px" />
+
+  <p>Android SDK をセットアップする場合、少なくとも最新の SDK Tools と Android プラットフォームのダウンロードが必要です。
+</p>
+  <ol>
+   <li>[Tools] ディレクトリを開き、以下のツールを選択します。
+     <ul>
+       <li><strong>Android SDK Tools</strong></li>
+       <li><strong>Android SDK Platform-tools</strong></li>
+       <li><strong>Android SDK Build-tools</strong>（最新バージョンのもの）</li>
+     </ul>
+   </li>
+   <li>1 番上の [Android X.X] フォルダ（最新バージョンのフォルダ）を開き、以下を選択します。
+     <ul>
+      <li><strong>SDK Platform</strong></li>
+      <li>「<strong>ARM EABI v7a System Image</strong>」などのエミュレータ用のシステム イメージ<br>
+</li>
+     </ul>
+   </li>
+  </ol>
+</li>
+
+<li>
+  <h2 id="GetSupportLib" class="norule">追加 API 用のサポート ライブラリを取得する</h2>
+
+  <div class="sidebox">
+    <p>以下を使用するには、サポート ライブラリが必要です。</p>
+    <ul>
+      <li><a href="{@docRoot}wear/index.html">Android Wear</a></li>
+      <li><a href="{@docRoot}tv/index.html">Android TV</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+    </ul>
+
+    <p>サポート ライブラリは、以下の人気の API も提供しています。</p>
+    <ul>
+      <li><a href="{@docRoot}reference/android/support/v4/widget/DrawerLayout.html">ナビゲーション ドロワー</a>
+</li>
+      <li><a href="{@docRoot}reference/android/support/v4/view/ViewPager.html">スワイプビュー</a></li>
+      <li><a href="{@docRoot}reference/android/support/v7/app/ActionBar.html">下位互換のアクションバー</a>
+</li>
+    </ul>
+  </div>
+
+  <p><a href="{@docRoot}tools/support-library/features.html">Android サポート ライブラリ</a> は、大部分のバージョンの Android に対応する API の拡張セットを提供しています。
+</p>
+
+  <p>[<strong>Extras</strong>] ディレクトリを開き、以下を選択します。</p>
+     <ul>
+       <li><strong>Android Support Repository</strong></li>
+       <li><strong>Android Support Library</strong></li>
+     </ul>
+
+  <p>&nbsp;</p>
+  <p>&nbsp;</p>
+
+</li>
+
+
+<li>
+  <h2 id="GetGoogle" class="norule">その他の API 用の Google Play サービスを入手する</h2>
+
+  <div class="sidebox">
+
+    <p>Google Play services API は、Android アプリのための次のようなバラエティに富んだ機能やサービスを提供しています。
+</p>
+    <ul>
+      <li><a href="{@docRoot}google/play-services/plus.html">ユーザー認証</a></li>
+      <li><a href="{@docRoot}google/play-services/maps.html">Google マップ</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+      <li><a href="{@docRoot}google/play-services/games.html">ゲームの実績とリーダーボード</a>
+</li>
+      <li><a href="{@docRoot}google/play-services/index.html">その他多数の機能</a></li>
+    </ul>
+  </div>
+
+  <p>Google API を利用して開発を行うには、Google Play サービス パッケージが必要です。</p>
+  <p>[<strong>Extras</strong>] ディレクトリを開き、以下を選択します。</p>
+     <ul>
+       <li><strong>Google Repository</strong></li>
+       <li><strong>Google Play サービス</strong></li>
+     </ul>
+
+  <p class="note"><strong>注:</strong> Google Play services API は、Android が搭載されたすべての端末で利用できるわけではありませんが、Google Play ストアを使用するとすべての端末で利用できます。
+これらの API を Android エミュレータで使用するには、SDK Manager の最新の [Android X.X] ディレクトリから <strong>Google API</strong> のシステム イメージもインストールする必要があります。
+
+</p>
+</li>
+
+
+<li>
+  <h2 id="Install" class="norule">パッケージをインストールする</h2>
+  <p>必要なパッケージをすべて選択したら、インストールを続行します。</p>
+  <ol>
+   <li>[<strong>Install X packages</strong>] をクリックします。</li>
+   <li>次のウィンドウで、左側のパッケージ名を 1 つずつダブルクリックし、各パッケージの使用許諾契約に同意します。
+</li>
+   <li>[<strong>Install</strong>] をクリックします。</li>
+  </ol>
+  <p>SDK Manager のウィンドウの 1 番下に、ダウンロードの進捗状況が表示されます。
+  <strong>SDK Manager を終了しないでください</strong>。SDK Manager を終了すると、ダウンロードはキャンセルされます。</p>
+</li>
+
+<li>
+  <h2 id="Build" class="norule">アプリを作成する</h2>
+
+<p>Android SDK にインストールしたパッケージを使用して、アプリを作成できるようになりました。
+新しいツールとその他の API を入手できるようになった場合は、SDK Manager を起動して SDK に新しいパッケージをダウンロードしてください。
+</p>
+
+<p>必要に応じて以下を参考にしてください。</p>
+
+<div class="cols" style="padding:10px 0">
+<div class="col-4">
+<h3>スタートガイド</h3>
+<p>Android 開発が初めての場合は、Android アプリの基本を<strong><a href="{@docRoot}training/basics/firstapp/index.html">初めてのアプリ作成</a></strong>に関するガイドに従って学習してください。
+</p>
+
+</div>
+<div class="col-4 box">
+<h3>ウェアラブル端末向けにアプリを作成する</h3>
+<p>Android ウェアラブル端末向けにアプリを開発するには、「<strong><a href="{@docRoot}wear/preview/start.html">Android Wear アプリの作成</a></strong>」のガイドをご覧ください。
+</p>
+
+</div>
+<div class="col-4 box">
+<h3>Google API を使用する</h3>
+<p>マップや Play ゲーム サービスなどの Google API の使用を開始するには、「<strong><a href="{@docRoot}google/play-services/setup.html">Setting Up Google Play Services</a></strong>」のガイドをご覧ください。
+
+
+</p>
+
+</div>
+</div><!-- end cols -->
+
+
+</li>
+
+</ol>
+
+
diff --git a/docs/html-intl/intl/ja/training/material/animations.jd b/docs/html-intl/intl/ja/training/material/animations.jd
new file mode 100644
index 0000000..460147c
--- /dev/null
+++ b/docs/html-intl/intl/ja/training/material/animations.jd
@@ -0,0 +1,550 @@
+page.title=カスタム アニメーションの定義
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>このレッスンでの学習内容</h2>
+<ol>
+  <li><a href="#Touch">タッチ フィードバックをカスタマイズする</a></li>
+  <li><a href="#Reveal">出現エフェクトを使用する</a></li>
+  <li><a href="#Transitions">アクティビティ遷移をカスタマイズする</a></li>
+  <li><a href="#ViewState">ビューの状態遷移にアニメーションを付ける</a></li>
+  <li><a href="#AnimVector">ベクター型ドローアブルにアニメーションを付ける</a></li>
+</ol>
+<h2>関連ドキュメント</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">マテリアル デザインの仕様</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android でのマテリアル デザイン</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>マテリアル デザインのアニメーションは、ユーザーの操作に応じて反応し、アプリの操作にともない連続した動きを見せます。
+マテリアル テーマでは、ボタンやアクティビティの遷移にデフォルトのアニメーションが用意されており、Android 5.0（API レベル 21）以降では次のようなアニメーションをカスタマイズして新しいアニメーションを作成できます。
+
+</p>
+
+<ul>
+<li>タッチ フィードバック</li>
+<li>円形状の出現</li>
+<li>アクティビティ遷移</li>
+<li>曲線モーション</li>
+<li>ビューの状態遷移</li>
+</ul>
+
+
+<h2 id="Touch">タッチ フィードバックをカスタマイズする</h2>
+
+<p>マテリアル デザインのタッチ フィードバックは、ユーザーが UI 要素に触れて操作した時点で、視覚的な反応を瞬時に表します。
+ボタンに対するデフォルトのタッチ フィードバック アニメーションでは、新しい {@link android.graphics.drawable.RippleDrawable} クラスを使用して、状態の切り替わりをリップル（波紋）効果で表現しています。
+
+</p>
+
+<p>ほとんどの場合、次のようにビューの背景を指定することでビュー XML にこの機能を適用できます。
+</p>
+
+<ul>
+<li>範囲が限定された波紋: <code>?android:attr/selectableItemBackground</code>。</li>
+<li>ビューの範囲外まで広がる波紋: <code>?android:attr/selectableItemBackgroundBorderless</code>。
+これは、背景が null ではない最も近くにある親ビュー上に表示されますが、その外側にはみ出ることはありません。
+</li>
+</ul>
+
+<p class="note"><strong>注:</strong> <code>selectableItemBackgroundBorderless</code> は API レベル 21 で導入された新しい属性です。
+</p>
+
+
+<p>または、<code>ripple</code> 要素を使って {@link android.graphics.drawable.RippleDrawable}
+を XML リソースとしても定義できます。</p>
+
+<p>{@link android.graphics.drawable.RippleDrawable} オブジェクトには、色を割り当てることができます。タッチ フィードバックのデフォルトの色を変更するには、テーマの <code>android:colorControlHighlight</code>
+属性を使用します。
+</p>
+
+<p>詳細については、API リファレンスの {@link
+android.graphics.drawable.RippleDrawable} クラスをご覧ください。</p>
+
+
+<h2 id="Reveal">出現エフェクトを使用する</h2>
+
+<p>Reveal（出現）アニメーションを使用すると、UI 要素のグループを表示したり非表示にしたりするときに連続した印象をユーザーに与えます。
+{@link android.view.ViewAnimationUtils#createCircularReveal
+ViewAnimationUtils.createCircularReveal()} メソッドでは、ビューを表示したり非表示にしたりする際に円形のアニメーションを付けることができます。
+</p>
+
+<p>この効果を使って、非表示のビューを表示するには:</p>
+
+<pre>
+// previously invisible view
+View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the final radius for the clipping circle
+int finalRadius = Math.max(myView.getWidth(), myView.getHeight());
+
+// create the animator for this view (the start radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius);
+
+// make the view visible and start the animation
+myView.setVisibility(View.VISIBLE);
+anim.start();
+</pre>
+
+<p>この効果を使って、表示されているビューを非表示にするには: </p>
+
+<pre>
+// previously visible view
+final View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the initial radius for the clipping circle
+int initialRadius = myView.getWidth();
+
+// create the animation (the final radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, initialRadius, 0);
+
+// make the view invisible when the animation is done
+anim.addListener(new AnimatorListenerAdapter() {
+    &#64;Override
+    public void onAnimationEnd(Animator animation) {
+        super.onAnimationEnd(animation);
+        myView.setVisibility(View.INVISIBLE);
+    }
+});
+
+// start the animation
+anim.start();
+</pre>
+
+
+<h2 id="Transitions">アクティビティ遷移をカスタマイズする</h2>
+
+<!-- shared transition video -->
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay="">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.webm">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.ogv">
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <p class="img-caption" style="margin-top:3px;margin-bottom:10px"><strong>図 1</strong> - 共有要素を使った画面遷移。
+</p>
+    <em>端末の画像をクリックすると動画を再生できます</em>
+  </div>
+</div>
+
+<p>マテリアル デザイン アプリの Activity transitions （アクティビティ遷移）では、共通する要素の間での動作や変化を通じて、状態の切り替えに視覚的なつながりを持たせます。
+Enter と Exit の遷移や、アクティビティ間での Shared elements 遷移にカスタム アニメーションを指定できます。
+</p>
+
+<ul>
+<li><strong>Enter</strong>（入口）遷移は、アクティビティのビューがどのように画面に入ってくるかを決定します。
+たとえば <em>Explode</em> の Enter 遷移の場合、ビューが画面外から画面の中心に向かって飛び込むように現れます。
+</li>
+
+<li><strong>Exit</strong> 遷移は、アクティビティのビューがどのように画面から出ていくかを決定します。同じく <em>Explode</em> の Exit 遷移の場合、画面の中心から外側に向かってビューが出ていきます。
+
+</li>
+
+<li><strong>Shared Elements</strong> 遷移は、2 つのアクティビティで共有されているビューが、各アクティビティの間でどのように遷移するかを決定します。
+たとえば、2 つのアクティビティで同じ画像を異なる位置とサイズで使用している場合、<em>changeImageTransform</em> 共有要素の遷移によって、2 つのアクティビティの間でスムーズに画像が変換されスケーリングされます。
+
+</li>
+</ul>
+
+<p>Android 5.0（API レベル 21）では、次の Enter 遷移と Exit 遷移がサポートされています。</p>
+
+<ul>
+<li><em>explode</em> （爆発状） - ビューをシーン中心から外側へ移動したり外側から中心へ移動したりします。</li>
+<li><em>slide</em> （スライド） - ビューをシーンの端から移動したり端へ移動したりします。</li>
+<li><em>fade</em> （フェード） - 不透明度を変化させながらビューをシーンに追加したりシーンから削除したりします。</li>
+</ul>
+
+<p>{@link android.transition.Visibility} クラスを拡張する Transition はすべて、EnterTransition または ExitTransition としてサポートされます。
+詳細については、API リファレンスの 
+{@link android.transition.Transition} クラスをご覧ください。</p>
+
+<p>Android 5.0（API レベル 21）では、次の共有要素遷移もサポートしています。</p>
+
+<ul>
+<li><em>changeBounds</em> - 対象ビューのレイアウト範囲での変化にアニメーションを付けます。</li>
+<li><em>changeClipBounds</em> - 対象ビューのクリップ範囲での変化にアニメーションを付けます。</li>
+<li><em>changeTransform</em> - 対象ビューのスケールや向きの変化にアニメーションを付けます。</li>
+<li><em>changeImageTransform</em> - 対象画像のサイズやスケールの変化にアニメーションを付けます。</li>
+</ul>
+
+<p>アプリにアクティビティ遷移を適用すると、アクティビティの開始と終了の間でデフォルトのクロス フェーディング遷移が有効になります。
+</p>
+
+<img src="{@docRoot}training/material/images/SceneTransition.png" alt="" width="600" height="405" style="margin-top:20px" />
+<p class="img-caption">
+  <strong>図 2</strong> - 1 つの共有要素とシーンの遷移。
+</p>
+
+<h3>カスタム遷移を指定する</h3>
+
+<p>まず、マテリアル テーマから継承したスタイルを定義するときに、<code>android:windowContentTransitions</code>
+ 属性で windowContentTransitions を有効にします。また、次のように Enter、Exit、Shared Element の Transitions をスタイルの定義で指定できます。
+</p>
+
+<pre>
+&lt;style name="BaseAppTheme" parent="android:Theme.Material">
+  &lt;!-- enable window content transitions -->
+  &lt;item name="android:windowContentTransitions">true&lt;/item>
+
+  &lt;!-- specify enter and exit transitions -->
+  &lt;item name="android:windowEnterTransition">@transition/explode&lt;/item>
+  &lt;item name="android:windowExitTransition">@transition/explode&lt;/item>
+
+  &lt;!-- specify shared element transitions -->
+  &lt;item name="android:windowSharedElementEnterTransition">
+    &#64;transition/change_image_transform&lt;/item>
+  &lt;item name="android:windowSharedElementExitTransition">
+    &#64;transition/change_image_transform&lt;/item>
+&lt;/style>
+</pre>
+
+<p>この例の <code>change_image_transform</code> 遷移は、次のように定義されています。</p>
+
+<pre>
+&lt;!-- res/transition/change_image_transform.xml -->
+&lt;!-- (see also Shared Transitions below) -->
+&lt;transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;changeImageTransform/>
+&lt;/transitionSet>
+</pre>
+
+<p><code>changeImageTransform</code> 要素は 
+{@link android.transition.ChangeImageTransform} クラスに対応します。詳細については、API リファレンスの {@link android.transition.Transition} をご覧ください。
+</p>
+
+<p>代わりに、コードで windowContentTransitions を有効にするには、
+{@link android.view.Window#requestFeature Window.requestFeature()} メソッドを呼び出します。</p>
+
+<pre>
+// inside your activity (if you did not enable transitions in your theme)
+getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+
+// set an exit transition
+getWindow().setExitTransition(new Explode());
+</pre>
+
+<p>コードで遷移を指定するには、{@link
+android.transition.Transition} オブジェクトで次のメソッドを呼び出します。</p>
+
+<ul>
+  <li>{@link android.view.Window#setEnterTransition Window.setEnterTransition()}</li>
+  <li>{@link android.view.Window#setExitTransition Window.setExitTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementEnterTransition
+      Window.setSharedElementEnterTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementExitTransition
+      Window.setSharedElementExitTransition()}</li>
+</ul>
+
+<p>{@link android.view.Window#setExitTransition setExitTransition()} と {@link
+android.view.Window#setSharedElementExitTransition setSharedElementExitTransition()} メソッドは、呼び出し元のアクティビティの ExitTransition を定義します。
+{@link android.view.Window#setEnterTransition
+setEnterTransition()} と {@link android.view.Window#setSharedElementEnterTransition
+setSharedElementEnterTransition()} メソッドは、呼び出し先のアクティビティの EnterTransition を定義します。</p>
+
+<p>遷移の効果を完全に表すには、呼び出し元と呼び出し先のアクティビティ双方で windowContentTransitions を有効にする必要があります。
+有効にしていないと、呼び出し元のアクティビティが Exit 遷移を開始したあと、window 遷移（スケールやフェードなど）が起きます。
+</p>
+
+<p>Enter 遷移をできるだけ早く開始するには、呼び出し先のアクティビティで 
+{@link android.view.Window#setAllowEnterTransitionOverlap Window.setAllowEnterTransitionOverlap()}
+ メソッドを使用します。これにより、さらに印象的な Enter 遷移になります。</p>
+
+<h3>遷移を使ってアクティビティを開始する</h3>
+
+<p>遷移を有効にしてアクティビティで ExitTransition を設定した場合、次のように別のアクティビティを開始したときに Exit 遷移がアクティベートされます。
+</p>
+
+<pre>
+startActivity(intent,
+              ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
+</pre>
+
+<p>2 つ目のアクティビティに EnterTransition を設定している場合は、そのアクティビティの開始時に Enter 遷移も発生します。
+別のアクティビティ開始時の遷移を無効にするには、<code>null</code> のオプション バンドルを付与します。
+</p>
+
+<h3>共有要素を使ってアクティビティを開始する</h3>
+
+<p>共有要素を持つ 2 つのアクティビティの間で画面遷移のアニメーションを作成するには: </p>
+
+<ol>
+<li>テーマで windowContentTransitions を有効にします。</li>
+<li>スタイルで SharedElementsTransition を指定します。</li>
+<li>遷移を XML リソースとして定義します。</li>
+<li>
+<code>android:transitionName</code> 属性を用いて、双方のレイアウトで共有要素に同じ名前を割り当てます。</li>
+<li>{@link android.app.ActivityOptions#makeSceneTransitionAnimation
+ActivityOptions.makeSceneTransitionAnimation()} メソッドを使用します。</li>
+</ol>
+
+<pre>
+// get the element that receives the click event
+final View imgContainerView = findViewById(R.id.img_container);
+
+// get the common element for the transition in this activity
+final View androidRobotView = findViewById(R.id.image_small);
+
+// define a click listener
+imgContainerView.setOnClickListener(new View.OnClickListener() {
+    &#64;Override
+    public void onClick(View view) {
+        Intent intent = new Intent(this, Activity2.class);
+        // create the transition animation - the images in the layouts
+        // of both activities are defined with android:transitionName="robot"
+        ActivityOptions options = ActivityOptions
+            .makeSceneTransitionAnimation(this, androidRobotView, "robot");
+        // start the new activity
+        startActivity(intent, options.toBundle());
+    }
+});
+</pre>
+
+<p>コードで生成した共有の動的ビューでは、
+{@link android.view.View#setTransitionName View.setTransitionName()} メソッドを使用して両方のアクティビティに共通の要素名を指定します。
+</p>
+
+<p>2 つ目のアクティビティが終了したときにシーンの切り替えアニメーションを逆回転させるには、{@link android.app.Activity#finish Activity.finish()} の代わりに 
+{@link android.app.Activity#finishAfterTransition Activity.finishAfterTransition()}
+ メソッドを呼び出します。</p>
+
+<h3>複数の共有要素を使ってアクティビティを開始する</h3>
+
+<p>複数の共有要素を持つ 2 つのアクティビティの間にシーンの切り替えアニメーションを付けるには、双方のレイアウトで <code>android:transitionName</code>
+属性を使用（または双方のアクティビティで {@link android.view.View#setTransitionName View.setTransitionName()} メソッドを使用）して共有要素を定義して、次のように {@link android.app.ActivityOptions} オブジェクトを作成します。
+
+</p>
+
+<pre>
+ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(this,
+        Pair.create(view1, "agreedName1"),
+        Pair.create(view2, "agreedName2"));
+</pre>
+
+
+<h2 id="CurvedMotion">曲線モーションを使用する</h2>
+
+<p>マテリアル デザインのアニメーションは、時間的な間を補ったり立体的な動作パターンを表現するために曲線を多く用いています。
+Android 5.0（API レベル 21）以降では、カスタムのタイミングで描かれる曲線や曲線モーションのパターンをアニメーションで定義できます。
+</p>
+
+<p>{@link android.view.animation.PathInterpolator} クラスはベジェ曲線や {@link android.graphics.Path} オブジェクトに基づく新しい Interpolator（補間）です。
+この Interpolator は 1x1 の正方形に動作曲線を指定します。アンカー ポイントは（0,0）と（1,1）、制御点はコンストラクタ引数を使用して指定します。
+
+または、PathInterpolator を XML リソースとしても定義できます。</p>
+
+<pre>
+&lt;pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
+    android:controlX1="0.4"
+    android:controlY1="0"
+    android:controlX2="1"
+    android:controlY2="1"/>
+</pre>
+
+<p>マテリアル デザインの仕様では、次の 3 つの基本的な曲線を XML リソースとして提供しています。
+</p>
+
+<ul>
+  <li><code>&#64;interpolator/fast_out_linear_in.xml</code></li>
+  <li><code>&#64;interpolator/fast_out_slow_in.xml</code></li>
+  <li><code>&#64;interpolator/linear_out_slow_in.xml</code></li>
+</ul>
+
+<p>{@link android.view.animation.PathInterpolator} オブジェクトは {@link
+android.animation.Animator#setInterpolator Animator.setInterpolator()} メソッドに渡すことができます。</p>
+
+<p>{@link android.animation.ObjectAnimator} クラスには新しいコンストラクタがあり、一度に 2 つ以上のプロパティを使用して経路に沿ったアニメーションを作ることができます。
+たとえば、次の animator では {@link android.graphics.Path} オブジェクトを使ってビューの X と Y プロパティを指定しています。
+</p>
+
+<pre>
+ObjectAnimator mAnimator;
+mAnimator = ObjectAnimator.ofFloat(view, View.X, View.Y, path);
+...
+mAnimator.start();
+</pre>
+
+
+<h2 id="ViewState">ビューの状態遷移にアニメーションを付ける</h2>
+
+<p>{@link android.animation.StateListAnimator} クラスを使って、ビューの状態が変化したときに実行されるアニメーションを定義できます。
+次の例は、{@link
+android.animation.StateListAnimator} を XML リソースとして定義する方法を示しています。</p>
+
+<pre>
+&lt;!-- animate the translationZ property of a view when pressed -->
+&lt;selector xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;item android:state_pressed="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="@android:integer/config_shortAnimTime"
+        android:valueTo="2dp"
+        android:valueType="floatType"/>
+        &lt;!-- you could have other objectAnimator elements
+             here for "x" and "y", or other properties -->
+    &lt;/set>
+  &lt;/item>
+  &lt;item android:state_enabled="true"
+    android:state_pressed="false"
+    android:state_focused="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="100"
+        android:valueTo="0"
+        android:valueType="floatType"/>
+    &lt;/set>
+  &lt;/item>
+&lt;/selector>
+</pre>
+
+<p>ビューの状態についてのカスタム アニメーションをビューに付与するには、この例のように XML リソース ファイルの
+<code>selector</code> 要素を使用して animator を定義し、それを <code>android:stateListAnimator</code> 属性でビューに割り当てます。
+コードで StateListAnimator をビューに割り当てるには、{@link android.animation.AnimatorInflater#loadStateListAnimator
+AnimationInflater.loadStateListAnimator()} メソッドを使用して
+{@link android.view.View#setStateListAnimator View.setStateListAnimator()} メソッドでビューに animator を割り当てます。
+</p>
+
+<p>テーマがマテリアル テーマに拡張されると、ボタンにはデフォルトで Z アニメーションが設定されます。これを避けるためには、<code>android:stateListAnimator</code> 属性を
+<code>@null</code> に設定します。
+</p>
+
+<p>{@link android.graphics.drawable.AnimatedStateListDrawable} クラスを使用すると、関連するビューの状態遷移にアニメーションを表示するドローアブルを作成できます。
+Android 5.0 の一部のシステム ウィジェットでは、デフォルトでこれらのアニメーションを使用しています。
+次の例は、{@link android.graphics.drawable.AnimatedStateListDrawable} を XML リソースとして定義する方法を示しています。
+</p>
+
+<pre>
+&lt;!-- res/drawable/myanimstatedrawable.xml -->
+&lt;animated-selector
+    xmlns:android="http://schemas.android.com/apk/res/android">
+
+    &lt;!-- provide a different drawable for each state-->
+    &lt;item android:id="@+id/pressed" android:drawable="@drawable/drawableP"
+        android:state_pressed="true"/>
+    &lt;item android:id="@+id/focused" android:drawable="@drawable/drawableF"
+        android:state_focused="true"/>
+    &lt;item android:id="@id/default"
+        android:drawable="@drawable/drawableD"/>
+
+    &lt;!-- specify a transition -->
+    &lt;transition android:fromId="@+id/default" android:toId="@+id/pressed">
+        &lt;animation-list>
+            &lt;item android:duration="15" android:drawable="@drawable/dt1"/>
+            &lt;item android:duration="15" android:drawable="@drawable/dt2"/>
+            ...
+        &lt;/animation-list>
+    &lt;/transition>
+    ...
+&lt;/animated-selector>
+</pre>
+
+
+<h2 id="AnimVector">ベクター型ドローアブルにアニメーションを付ける</h2>
+
+<p><a href="{@docRoot}training/material/drawables.html#VectorDrawables">ベクター型ドローアブル</a>は定義を失わずにスケールできます。
+{@link android.graphics.drawable.AnimatedVectorDrawable}
+クラスを使うと、ベクター型ドローアブルのプロパティを指定してアニメーションを付けられます。</p>
+
+<p>通常は、次に示す 3 つの XML ファイルで AnimatedVectorDrawable を定義します。</p>
+
+<ul>
+<li><code>res/drawable/</code> の
+<code>&lt;vector&gt;</code> 要素を持つ vectordrawable の xml ファイル</li>
+<li><code>res/drawable/</code> の
+<code>&lt;animated-vector&gt;</code> 要素を持つ AnimatedVectorDrawable の xml ファイル</li>
+<li><code>res/anim/</code> の
+<code>&lt;objectAnimator&gt;</code> 要素を持つ 1 つ以上の ObjectAnimator の xml ファイル</li>
+</ul>
+
+<p>AnimatedVectorDrawable では、<code>&lt;group&gt;</code> 要素と
+<code>&lt;path&gt;</code> 要素の属性にアニメーションを付けることができます。<code>&lt;group&gt;</code> 要素は一連の経路やサブグループを定義し、<code>&lt;path&gt;</code> 要素は描く経路を定義します。
+</p>
+
+<p>アニメーションを付けたいベクター型ドローアブルを定義するときは、<code>android:name</code>
+属性を使用してグループや経路に一意の名前を割り当てれば animator の定義からそれらを参照できるようになります。
+以下に例を示します。</p>
+
+<pre>
+&lt;!-- res/drawable/vectordrawable.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="64dp"
+    android:width="64dp"
+    android:viewportHeight="600"
+    android:viewportWidth="600">
+    &lt;group
+        <strong>android:name="rotationGroup"</strong>
+        android:pivotX="300.0"
+        android:pivotY="300.0"
+        android:rotation="45.0" >
+        &lt;path
+            <strong>android:name="v"</strong>
+            android:fillColor="#000000"
+            android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
+    &lt;/group>
+&lt;/vector>
+</pre>
+
+<p>AnimatedVectorDrawable の定義では、次のようにベクター型ドローアブルのグループや経路をその名前で参照します。
+</p>
+
+<pre>
+&lt;!-- res/drawable/animvectordrawable.xml -->
+&lt;animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+  android:drawable="@drawable/vectordrawable" >
+    &lt;target
+        android:name="rotationGroup"
+        android:animation="@anim/rotation" />
+    &lt;target
+        android:name="v"
+        android:animation="@anim/path_morph" />
+&lt;/animated-vector>
+</pre>
+
+<p>アニメーションの定義は {@link android.animation.ObjectAnimator} オブジェクトか {@link
+android.animation.AnimatorSet} オブジェクトを示します。この例の最初の animator は、次のように対象グループを 360 度回転させています。
+</p>
+
+<pre>
+&lt;!-- res/anim/rotation.xml -->
+&lt;objectAnimator
+    android:duration="6000"
+    android:propertyName="rotation"
+    android:valueFrom="0"
+    android:valueTo="360" />
+</pre>
+
+<p>この例の 2 つ目の animator は、ベクター型ドローアブルの経路をある形から別の形へと変化させています。
+両方の経路が形の変化に対応できる必要があります。つまり同じ数のコマンドと、各コマンドで同じ数のパラメーターを保持している必要があります。
+</p>
+
+<pre>
+&lt;!-- res/anim/path_morph.xml -->
+&lt;set xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;objectAnimator
+        android:duration="3000"
+        android:propertyName="pathData"
+        android:valueFrom="M300,70 l 0,-70 70,70 0,0   -70,70z"
+        android:valueTo="M300,70 l 0,-70 70,0  0,140 -70,0 z"
+        android:valueType="pathType" />
+&lt;/set>
+</pre>
+
+<p>詳細については、API リファレンスの {@link
+android.graphics.drawable.AnimatedVectorDrawable} をご覧ください。</p>
diff --git a/docs/html-intl/intl/ja/training/material/compatibility.jd b/docs/html-intl/intl/ja/training/material/compatibility.jd
new file mode 100644
index 0000000..0f8922f
--- /dev/null
+++ b/docs/html-intl/intl/ja/training/material/compatibility.jd
@@ -0,0 +1,168 @@
+page.title=互換性の維持
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>このレッスンでの学習内容</h2>
+<ol>
+  <li><a href="#Theme">別のスタイルを定義する</a></li>
+  <li><a href="#Layouts">別のレイアウトを提供する</a></li>
+  <li><a href="#SupportLib">サポート ライブラリを使用する</a></li>
+  <li><a href="#CheckVersion">システム バージョンを確認する</a></li>
+</ol>
+<h2>関連ドキュメント</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">マテリアル デザインの仕様</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android でのマテリアル デザイン</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>マテリアル テーマやカスタムのアクティビティ遷移など、マテリアル デザインの一部の機能は Android5.0（API レベル21）以降のみで利用できます。
+ただし、マテリアル デザインをサポートし、以前のバージョンの Android を実行している端末と互換性がある端末でこれらの機能が実行されている場合は、機能を使用できるようにアプリを設計することが可能です。
+
+</p>
+
+
+<h2 id="Theme">別のスタイルを定義する</h2>
+
+<p>マテリアル テーマをサポートしている端末ではマテリアル テーマを使用するようにアプリを構成できますが、同時に次のようにして以前のバージョンの Android を実行する端末向けに以前のテーマに戻すことができます。
+</p>
+
+<ol>
+<li>
+<code>res/values/styles.xml</code> で、以前のテーマ（Holo など）から継承するテーマを定義します。</li>
+<li>
+<code>res/values-v21/styles.xml</code> で、マテリアル テーマから継承するテーマを上記と同じ名前で定義します。</li>
+<li>マニフェスト ファイルでこのテーマをアプリのテーマとして設定します。</li>
+</ol>
+
+<p class="note"><strong>注:</strong> この方法で別のテーマを用意せずマテリアル テーマだけを使う場合、そのアプリは 5.0 よりも前のバージョンの Android では実行できません。
+
+
+</p>
+
+
+<h2 id="Layouts">別のレイアウトを提供する</h2>
+
+<p>マテリアル デザインのガイドラインに沿って設計したレイアウトでも、Android 5.0（API レベル 21）で導入された新しい XML 属性を一切使用していない場合は、以前のバージョンの Android でも問題なく表示されます。
+
+新しい XML 属性を使用している場合は、別のレイアウトを用意できます。以前のバージョンの Android でアプリが表示される方法をカスタマイズする目的で別のレイアウトを用意することも可能です。
+</p>
+
+<p>Android 5.0（API レベル 21）向けのレイアウト ファイルを <code>res/layout-v21/</code> に作成し、以前のバージョンの Android 向けの別のレイアウト ファイルを
+<code>res/layout/</code> に作成します。
+たとえば、<code>res/layout/my_activity.xml</code> は <code>res/layout-v21/my_activity.xml</code> の代替レイアウトになります。
+</p>
+
+<p>コードの重複を避けるには、<code>res/values/</code> でスタイルを定義して <code>res/values-v21/</code> で新しい API 用にスタイルを修正します。それからスタイル継承を用いて、基本スタイルを <code>res/values/</code> で定義して、そのスタイルを <code>res/values-v21/</code> で継承します。
+
+</p>
+
+
+<h2 id="SupportLib">サポート ライブラリを使用する</h2>
+
+<p><a href="{@docRoot}tools/support-library/features.html#v7">v7 サポート ライブラリ</a> r21 以降には、次のマテリアル デザイン機能が含まれています。
+</p>
+
+<ul>
+<li><code>Theme.AppCompat</code> テーマのいずれかを適用した場合の、システム ウィジェット用の<a href="{@docRoot}training/material/theme.html">マテリアル デザインのスタイル</a>。
+</li>
+<li><code>Theme.AppCompat</code> テーマの<a href="{@docRoot}training/material/theme.html#ColorPalette">カラーパレット テーマ属性</a>。
+</li>
+<li><a href="{@docRoot}training/material/lists-cards.html#RecyclerView">データ コレクションを表示する</a> {@link android.support.v7.widget.RecyclerView} ウィジェット。
+</li>
+<li><a href="{@docRoot}training/material/lists-cards.html#CardView">カードを作成する</a> {@link android.support.v7.widget.CardView} ウィジェット。</li>
+<li><a href="{@docRoot}training/material/drawables.html#ColorExtract">画像から代表色を抽出する</a> {@link android.support.v7.graphics.Palette} クラス。
+</li>
+</ul>
+
+<h3>システム ウィジェット</h3>
+
+<p><code>Theme.AppCompat</code> テーマでは、次のウィジェット向けにマテリアル デザインのスタイルが提供されています。</p>
+
+<ul>
+  <li>{@link android.widget.EditText}</li>
+  <li>{@link android.widget.Spinner}</li>
+  <li>{@link android.widget.CheckBox}</li>
+  <li>{@link android.widget.RadioButton}</li>
+  <li>{@link android.support.v7.widget.SwitchCompat}</li>
+  <li>{@link android.widget.CheckedTextView}</li>
+</ul>
+
+<h3>カラーパレット</h3>
+
+<p>Android v7 サポート ライブラリでマテリアル デザインのスタイルを入手し、カラーパレットをカスタマイズするには、次のように <code>Theme.AppCompat</code> テーマのいずれかを適用します。
+</p>
+
+<pre>
+&lt;!-- extend one of the Theme.AppCompat themes -->
+&lt;style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
+    &lt;!-- customize the color palette -->
+    &lt;item name="colorPrimary">@color/material_blue_500&lt;/item>
+    &lt;item name="colorPrimaryDark">@color/material_blue_700&lt;/item>
+    &lt;item name="colorAccent">@color/material_green_A200&lt;/item>
+&lt;/style>
+</pre>
+
+<h3>リストとカード</h3>
+
+<p>{@link android.support.v7.widget.RecyclerView} ウィジェットや {@link
+android.support.v7.widget.CardView} ウィジェットは Android v7 サポート ライブラリを通じて以前のバージョンの Android でも使用できますが、次のような制限があります。
+</p>
+<ul>
+<li>{@link android.support.v7.widget.CardView} は、付加的なパディングを使い、プログラムでシャドウを実装するものになります。
+</li>
+<li>{@link android.support.v7.widget.CardView} によって、丸い角と交差する子ビューがクリップされることはありません。
+</li>
+</ul>
+
+
+<h3>依存関係</h3>
+
+<p>5.0（API レベル 21）より前のバージョンの Android でこれらの機能を使用するには、Android v7 サポート ライブラリを <a href="{@docRoot}/sdk/installing/studio-build.html#dependencies">Gradle 依存関係</a>としてプロジェクトに含めます。
+</p>
+
+<pre>
+dependencies {
+    compile 'com.android.support:appcompat-v7:21.0.+'
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
+
+
+<h2 id="CheckVersion">システム バージョンを確認する</h2>
+
+<p>次の機能は、Android 5.0（API レベル 21）以降でのみ使用できます。</p>
+
+<ul>
+<li>アクティビティ遷移</li>
+<li>タッチ フィードバック</li>
+<li>出現アニメーション</li>
+<li>経路ベースのアニメーション</li>
+<li>ベクター型ドローアブル</li>
+<li>ドローアブルによる着色</li>
+</ul>
+
+<p>以前のバージョンの Android との互換性を維持するには、上記の機能に対する API を起動する前に、システム {@link
+android.os.Build.VERSION#SDK_INT version} を実行時に確認します。
+</p>
+
+<pre>
+// Check if we're running on Android 5.0 or higher
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+    // Call some material design APIs here
+} else {
+    // Implement this feature without material design
+}
+</pre>
+
+<p class="note"><strong>注: </strong>アプリがサポートする Android のバージョンを指定するには、マニフェスト ファイルで <code>android:minSdkVersion</code> 属性と <code>android:targetSdkVersion</code>
+属性を使用します。
+Android 5.0 でマテリアル デザインの機能を使用するには、<code>android:targetSdkVersion</code> 属性を <code>21</code> に設定します。
+詳細については、<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt; API ガイド</a>をご覧ください。
+
+</p>
diff --git a/docs/html-intl/intl/ja/training/material/drawables.jd b/docs/html-intl/intl/ja/training/material/drawables.jd
new file mode 100644
index 0000000..adb7279
--- /dev/null
+++ b/docs/html-intl/intl/ja/training/material/drawables.jd
@@ -0,0 +1,126 @@
+page.title=ドローアブルの使用
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>このレッスンでの学習内容</h2>
+<ol>
+  <li><a href="#DrawableTint">ドローアブル リソースに色を付ける</a></li>
+  <li><a href="#ColorExtract">画像から代表色を抽出する</a></li>
+  <li><a href="#VectorDrawables">ベクター型ドローアブルを作成する</a></li>
+</ol>
+<h2>関連ドキュメント</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">マテリアル デザインの仕様</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android でのマテリアル デザイン</a></li>
+</ul>
+</div>
+</div>
+
+<p>アプリにマテリアル デザインを実装する際は、Drawable （ドローアブル）の次の機能を活用できます。</p>
+
+<ul>
+<li>ドローアブルによる着色</li>
+<li>代表色の抽出</li>
+<li>ベクター型ドローアブル</li>
+</ul>
+
+<p>このレッスンでは、アプリでのこれらの機能を使用する方法について説明します。</p>
+
+
+<h2 id="DrawableTint">ドローアブル リソースに色を付ける</h2>
+
+<p>Android 5.0（API レベル 21）以降では、アルファ マスクとして定義されたビットマップや 9-patch に色を付けることができます。
+着色には、カラーリソースまたはカラーリソースに変換されるテーマ属性を使用できます（<code>?android:attr/colorPrimary</code> など）。
+通常は、これらのアセットを一度作成するだけで、テーマに合うように自動的に着色されます。
+</p>
+
+<p>{@code setTint()} メソッドを使用して {@link android.graphics.drawable.BitmapDrawable} オブジェクトか {@link
+android.graphics.drawable.NinePatchDrawable} オブジェクトに色を適用できます。また、<code>android:tint</code> 属性や
+<code>android:tintMode</code> 属性を使ってレイアウトで色やモードを設定できます。
+</p>
+
+
+<h2 id="ColorExtract">画像から代表色を抽出する</h2>
+
+<p>Android サポート ライブラリ r21 以降には、画像から代表色を抽出できる {@link
+android.support.v7.graphics.Palette} クラスが含まれています。
+</p>
+
+<ul>
+<li>Vibrant （鮮やか）</li>
+<li>Vibrant dark （鮮やかな暗色）</li>
+<li>Vibrant light （鮮やかな明色）</li>
+<li>Muted （控えめ）</li>
+<li>Muted dark （控えめな暗色）</li>
+<li>Muted light （控えめな明色）</li>
+</ul>
+
+<p>これらの色を抽出するには、画像を読み込むバックグラウンド スレッドで {@link android.graphics.Bitmap} オブジェクトを
+{@link android.support.v7.graphics.Palette#generate Palette.generate()} の静的メソッドに渡します。
+スレッドを使用できない場合は、代わりに
+{@link android.support.v7.graphics.Palette#generateAsync Palette.generateAsync()} メソッドを呼び出してリスナーを提供します。
+</p>
+
+<p>
+<code>Palette</code> クラスで、<code>Palette.getVibrantColor</code> などの getter メソッドを使って画像から代表色を取得できます。</p>
+
+<p>プロジェクトで {@link android.support.v7.graphics.Palette} クラスを使用するには、アプリのモジュールに次の
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Gradle 依存関係</a>を追加します。
+</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:palette-v7:21.0.0'
+}
+</pre>
+
+<p>詳細については、API リファレンスの {@link android.support.v7.graphics.Palette} クラスをご覧ください。
+</p>
+
+
+<h2 id="VectorDrawables">ベクター型ドローアブルを作成する</h2>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=wlFVIIstKmA" style="margin-top:18px">
+<div>
+    <h3>ビデオ</h3>
+    <p>Android ベクター グラフィック</p>
+</div>
+</a>
+
+<p>Android 5.0（API レベル 21）以降では、ベクター型ドローアブルを定義できます。このドローアブルは定義を失わずに拡張できます。
+ビットマップ画像では画面密度ごとにアセット ファイルが必要ですが、ベクター画像で必要なアセット ファイルは 1 つのみです。
+ベクター画像を作成するには、<code>&lt;vector&gt;</code> XML 要素で図形の詳細を定義します。
+</p>
+
+<p>次の例では、ハート型のベクター画像を定義しています。</p>
+
+<pre>
+&lt;!-- res/drawable/heart.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    &lt;!-- intrinsic size of the drawable -->
+    android:height="256dp"
+    android:width="256dp"
+    &lt;!-- size of the virtual canvas -->
+    android:viewportWidth="32"
+    android:viewportHeight="32">
+
+  &lt;!-- draw a path -->
+  &lt;path android:fillColor="#8fff"
+      android:pathData="M20.5,9.5
+                        c-1.955,0,-3.83,1.268,-4.5,3
+                        c-0.67,-1.732,-2.547,-3,-4.5,-3
+                        C8.957,9.5,7,11.432,7,14
+                        c0,3.53,3.793,6.257,9,11.5
+                        c5.207,-5.242,9,-7.97,9,-11.5
+                        C25,11.432,23.043,9.5,20.5,9.5z" />
+&lt;/vector>
+</pre>
+
+<p>Android ではベクター画像は {@link android.graphics.drawable.VectorDrawable}
+ オブジェクトとして表示されます。<code>pathData</code> 構文の詳細については、<a href="http://www.w3.org/TR/SVG11/paths.html#PathData">SVG パス リファレンス</a>をご覧ください。ベクター型ドローアブルのアニメーションの詳細については、
+<a href="{@docRoot}training/material/animations.html#AnimVector">ベクター ドローアブルのアニメーション</a>をご覧ください。
+</p>
diff --git a/docs/html-intl/intl/ja/training/material/get-started.jd b/docs/html-intl/intl/ja/training/material/get-started.jd
new file mode 100644
index 0000000..2de6744
--- /dev/null
+++ b/docs/html-intl/intl/ja/training/material/get-started.jd
@@ -0,0 +1,171 @@
+page.title=スタートガイド
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>このレッスンでの学習内容</h2>
+<ol>
+  <li><a href="#ApplyTheme">マテリアル テーマを適用する</a></li>
+  <li><a href="#Layouts">レイアウトを設計する</a></li>
+  <li><a href="#Depth">ビューでエレベーションを指定する</a></li>
+  <li><a href="#ListsCards">リストとカードを作成する</a></li>
+  <li><a href="#Animations">アニメーションをカスタマイズする</a></li>
+</ol>
+<h2>関連ドキュメント</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">マテリアル デザインの仕様</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android でのマテリアル デザイン</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>マテリアル デザインでアプリを作成するには: </p>
+
+<ol>
+  <li style="margin-bottom:10px">
+    <a href="http://www.google.com/design/spec">マテリアル デザインの仕様</a>を確認します。</li>
+  <li style="margin-bottom:10px">
+    マテリアル <strong>テーマ</strong>をアプリに適用します。</li>
+  <li style="margin-bottom:10px">
+    マテリアル デザインのガイドラインに沿って<strong>レイアウト</strong>を作成します。</li>
+  <li style="margin-bottom:10px">
+    ビューの<strong>エレベーション</strong>を設定してシャドウを付与します。</li>
+  <li style="margin-bottom:10px">
+    リストやカードにシステム<strong>ウィジェット</strong>を使用します。</li>
+  <li style="margin-bottom:10px">
+    アプリで<strong>アニメーション</strong>をカスタマイズします。</li>
+</ol>
+
+<h3>下方互換性を維持する</h3>
+
+<p>Android 5.0 より前のバージョンとの互換性を維持しながら、マテリアル デザインのさまざまな機能をアプリに追加できます。
+詳細については、
+<a href="{@docRoot}training/material/compatibility.html">互換性の維持</a>をご覧ください。</p>
+
+<h3>マテリアル デザインでアプリをアップデートする</h3>
+
+<p>既存のアプリをアップデートしてマテリアル デザインを組み込むには、マテリアル デザインのガイドラインに沿ってレイアウトをアップデートします。
+深度、タッチ フィードバック、アニメーションを組み込んでいることも確認してください。
+</p>
+
+<h3>マテリアル デザインで新しいアプリを作成する</h3>
+
+<p>マテリアル デザインの機能を使って新しいアプリを作成すると、<a href="http://www.google.com/design/spec">マテリアル デザインのガイドライン</a>から凝縮したデザイン フレームワークが得られます。
+ガイドラインに従い、Android フレームワークの新しい機能を使ってアプリを設計、開発してください。
+</p>
+
+
+<h2 id="ApplyTheme">マテリアル テーマを適用する</h2>
+
+<p>アプリでマテリアル テーマを適用するには、次のように
+<code>android:Theme.Material</code> から継承したスタイルを指定します。</p>
+
+<pre>
+&lt;!-- res/values/styles.xml -->
+&lt;resources>
+  &lt;!-- your theme inherits from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- theme customizations -->
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<p>マテリアル テーマはアップデートされたシステム ウィジェットを提供しています。これにより、タッチ フィードバックやアクティビティ遷移のためのカラーパレットやデフォルトのアニメーションを指定できます。
+詳細については、
+<a href="{@docRoot}training/material/theme.html">マテリアル テーマの使用</a>をご覧ください。</p>
+
+
+<h2 id="Layouts">レイアウトを設計する</h2>
+
+<p>マテリアル テーマを適用したり、カスタマイズしたりすることに加えて、レイアウトが<a href="http://www.google.com/design/spec">マテリアル デザインのガイドライン</a>に準拠している必要があります。
+レイアウトを設計するときは、次の項目に特に注意してください。
+</p>
+
+<ul>
+<li>ベースライン グリッド</li>
+<li>キーライン</li>
+<li>空白スペース</li>
+<li>タッチ ターゲット サイズ</li>
+<li>レイアウト構成</li>
+</ul>
+
+
+<h2 id="Depth">ビューでエレベーションを指定する</h2>
+
+<p>ビューにはシャドウを付与できます。ビューのエレベーションの値によって、付与されるシャドウのサイズと表示される順序が決まります。
+ビューのエレベーションを設定するには、次のようにレイアウトの
+<code>android:elevation</code> 属性を使用します。</p>
+
+<pre>
+&lt;TextView
+    android:id="&#64;+id/my_textview"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="&#64;string/next"
+    android:background="&#64;color/white"
+    android:elevation="5dp" />
+</pre>
+
+<p>新しい <code>translationZ</code> プロパティを使用すると、ビューのエレベーションの一時的な変更が反映されるアニメーションを作成できます。
+エレベーションの変更は、
+<a href="{@docRoot}training/material/animations.html#ViewState">タッチ操作に応答</a>するときに便利です。
+</p>
+
+<p>詳細については、<a href="{@docRoot}training/material/shadows-clipping.html">シャドウとクリッピング ビューの定義</a>をご覧ください。
+</p>
+
+
+<h2 id="ListsCards">リストとカードを作成する</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} は {@link
+android.widget.ListView} のさらに柔軟なバージョンで、異なるレイアウト タイプをサポートしてパフォーマンスを向上します。
+{@link android.support.v7.widget.CardView} を使用すると、あらゆるアプリで一貫した外観でカードの中に情報を表示できます。
+次のコードは、レイアウトに
+{@link android.support.v7.widget.CardView} を含める方法の一例です。</p>
+
+<pre>
+&lt;android.support.v7.widget.CardView
+    android:id="&#64;+id/card_view"
+    android:layout_width="200dp"
+    android:layout_height="200dp"
+    card_view:cardCornerRadius="3dp">
+    ...
+&lt;/android.support.v7.widget.CardView>
+</pre>
+
+<p>詳細については、<a href="{@docRoot}training/material/lists-cards.html">リストとカードの作成</a>をご覧ください。
+</p>
+
+
+<h2 id="Animations">アニメーションをカスタマイズする</h2>
+
+<p>Android 5.0（API レベル 21）には、アプリでカスタム アニメーションを作成する新たな API が含まれています。
+たとえば次のように、アクティビティ遷移を有効にしてアクティビティ内部で ExitTransition を定義できます。
+</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // enable transitions
+        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+        setContentView(R.layout.activity_my);
+    }
+
+    public void onSomeButtonClicked(View view) {
+        getWindow().setExitTransition(new Explode());
+        Intent intent = new Intent(this, MyOtherActivity.class);
+        startActivity(intent,
+                      ActivityOptions
+                          .makeSceneTransitionAnimation(this).toBundle());
+    }
+}
+</pre>
+
+<p>このアクティビティから別のアクティビティを開始するときに Exit 遷移がアクティベートされます。</p>
+
+<p>新しいアニメーション API の詳細については、<a href="{@docRoot}training/material/animations.html">カスタム アニメーションの定義</a>をご覧ください。</p>
diff --git a/docs/html-intl/intl/ja/training/material/index.jd b/docs/html-intl/intl/ja/training/material/index.jd
new file mode 100644
index 0000000..9f6d187
--- /dev/null
+++ b/docs/html-intl/intl/ja/training/material/index.jd
@@ -0,0 +1,61 @@
+page.title=デベロッパーのためのマテリアル デザイン
+page.type=デザイン
+page.image=images/cards/material_2x.png
+page.metaDescription=アプリにマテリアル デザインを適用する方法を学習する
+
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>必要な知識と前提条件</h2>
+  <ul>
+    <li>Android 5.0（API レベル 21）</li>
+  </ul>
+</div>
+</div>
+
+<p>マテリアル デザインは、複数のプラットフォームや端末の視覚、モーション、インタラクション デザインの包括的な指針です。
+Android アプリでマテリアル デザインを使うには、
+<a href="http://www.google.com/design/spec/material-design/introduction.html">マテリアル デザインの仕様</a>で説明されているガイドラインに従い、Android 5.0（API レベル 21）の新しいコンポーネントや機能を使用します。
+
+
+</p>
+
+<p>ここでは、次の要素を用いてマテリアル デザイン アプリを作成する方法について説明します。</p>
+
+<ul>
+<li>マテリアル テーマ</li>
+<li>カードやリストのウィジェット</li>
+<li>カスタム シャドウとビューのクリッピング</li>
+<li>ベクター型ドローアブル</li>
+<li>カスタム アニメーション</li>
+</ul>
+
+<p>さらに、アプリでマテリアル デザインの機能を使うときに Android 5.0（API レベル 21）より前のバージョンとの互換性を維持する方法についても説明します。
+</p>
+
+<h2>レッスン</h2>
+
+<dl>
+  <dt><a href="{@docRoot}training/material/get-started.html">スタートガイド</a></dt>
+  <dd>マテリアル デザインの機能でアプリを更新する方法について学習します。</dd>
+
+  <dt><a href="{@docRoot}training/material/theme.html">マテリアル テーマの使用</a></dt>
+  <dd>マテリアル デザインのスタイルをアプリに適用する方法について学習します。</dd>
+
+  <dt><a href="{@docRoot}training/material/lists-cards.html">リストとカードの作成</a></dt>
+  <dd>システム ウィジェットを使って、一貫した外観や使用感のリストやカードを作成する方法について学習します。</dd>
+
+  <dt><a href="{@docRoot}training/material/shadows-clipping.html">シャドウとクリッピング ビューの定義</a></dt>
+  <dd>ビューのエレベーションを設定してカスタム シャドウを作成する方法やビューをクリップする方法について学習します。</dd>
+
+  <dt><a href="{@docRoot}training/material/drawables.html">ドローアブルの使用</a></dt>
+  <dd>ベクター型ドローアブルを作成する方法やドローアブル リソースに色を付ける方法について学習します。</dd>
+
+  <dt><a href="{@docRoot}training/material/animations.html">カスタム アニメーションの定義</a></dt>
+  <dd>ビューのカスタム アニメーションや共有要素とアクティビティ遷移を作成する方法について学習します。</dd>
+
+  <dt><a href="{@docRoot}training/material/compatibility.html">互換性の維持</a></dt>
+  <dd>Android 5.0 より前のバージョンのプラットフォームとの互換性を維持する方法について学習します。</dd>
+</dl>
diff --git a/docs/html-intl/intl/ja/training/material/lists-cards.jd b/docs/html-intl/intl/ja/training/material/lists-cards.jd
new file mode 100644
index 0000000..3d84d5d
--- /dev/null
+++ b/docs/html-intl/intl/ja/training/material/lists-cards.jd
@@ -0,0 +1,266 @@
+page.title=リストとカードの作成
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>このレッスンでの学習内容</h2>
+<ol>
+  <li><a href="#RecyclerView">リストを作成する</a></li>
+  <li><a href="#CardView">カードを作成する</a></li>
+  <li><a href="#Dependencies">依存関係を追加する</a></li>
+</ol>
+<h2>関連ドキュメント</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">マテリアル デザインの仕様</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android でのマテリアル デザイン</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>マテリアル デザインのスタイルを適用した複雑なリストやカードをアプリで作成するには、
+{@link android.support.v7.widget.RecyclerView} ウィジェットや {@link android.support.v7.widget.CardView}
+ ウィジェットを使用します。</p>
+
+
+<h2 id="RecyclerView">リストを作成する</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} ウィジェットは、{@link android.widget.ListView} をさらに進化させて柔軟にしたものです。
+このウィジェットは、大きなデータセットを表示するためのコンテナであり、限られたビューを維持することで非常に効率的にスクロールできます。
+ユーザーのアクションやネットワークのイベントに基づいて、実行時に要素が変わるデータ コレクションを持つ場合には、
+{@link android.support.v7.widget.RecyclerView} ウィジェットを使用してください。
+</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} クラスは次の機能を提供することで、簡単に大きなデータセットを表示したり処理したりできます。
+</p>
+
+<ul>
+  <li>アイテムの位置調整を行うレイアウト マネージャー</li>
+  <li>アイテムの削除や追加のような一般的な操作のデフォルト アニメーション</li>
+</ul>
+
+<p>また、{@link
+android.support.v7.widget.RecyclerView} ウィジェットのカスタム レイアウト マネージャーやアニメーションも柔軟に定義できます。</p>
+
+<img src="{@docRoot}training/material/images/RecyclerView.png" alt="" width="550" height="106" />
+<p class="img-caption">
+<strong>図 1</strong> <code>RecyclerView</code> ウィジェット。
+</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} ウィジェットを使用するには、アダプターとレイアウト マネージャーを指定する必要があります。
+アダプターを作成するには、{@link
+android.support.v7.widget.RecyclerView.Adapter RecyclerView.Adapter} クラスを拡張します。具体的な実装方法は、データセットの詳細やビューの種類によって異なります。
+詳細については、下記の<a href="#RVExamples">例</a>をご覧ください。
+</p>
+
+<div style="float:right">
+<img src="{@docRoot}design/material/images/list_mail.png" alt="" width="250" height="426" />
+<p class="img-caption" style="margin-left:8px">
+<strong>図 2</strong> - <code>RecyclerView</code> を使ったリスト。
+</p>
+</div>
+
+<p><strong>レイアウト マネージャー</strong>は、{@link
+android.support.v7.widget.RecyclerView} 内でアイテムビューを位置付けし、ユーザーから見えなくなったアイテムビューを再利用するタイミングを決定します。
+ビューを再利用（または<em>リサイクル</em>）するために、レイアウト マネージャーからアダプターにデータセットの異なる要素でビューの内容を入れ替えるよう求められることがあります。
+このようにビューをリサイクルすることで、不要なビューを作成したりコストのかかる {@link android.app.Activity#findViewById findViewById()} のルックアップをしたりせずに済み、パフォーマンスが向上します。
+
+</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} には、次のレイアウト マネージャーが組み込まれています。</p>
+
+<ul>
+<li>{@link android.support.v7.widget.LinearLayoutManager} は、アイテムを縦方向か横方向のスクロール リストに表示します。
+</li>
+<li>{@link android.support.v7.widget.GridLayoutManager} は、アイテムをグリッドに表示します。</li>
+<li>{@link android.support.v7.widget.StaggeredGridLayoutManager} は、アイテムをスタッガード グリッドに表示します。</li>
+</ul>
+
+<p>カスタム レイアウト マネージャーを作成するには、{@link
+android.support.v7.widget.RecyclerView.LayoutManager RecyclerView.LayoutManager} クラスを拡張します。</p>
+
+<h3>アニメーション</h3>
+
+<p>{@link
+android.support.v7.widget.RecyclerView} では、アイテムの追加や削除のアニメーションがデフォルトで有効になっています。これらのアニメーションをカスタマイズするには、
+{@link android.support.v7.widget.RecyclerView.ItemAnimator RecyclerView.ItemAnimator} クラスを拡張し、{@link android.support.v7.widget.RecyclerView#setItemAnimator RecyclerView.setItemAnimator()}
+ メソッドを使用します。
+</p>
+
+<h3 id="RVExamples">例</h3>
+
+<p>次のコードは、レイアウトに
+{@link android.support.v7.widget.RecyclerView} を追加する方法の一例です。</p>
+
+<pre>
+&lt;!-- A RecyclerView with some commonly used attributes -->
+&lt;android.support.v7.widget.RecyclerView
+    android:id="@+id/my_recycler_view"
+    android:scrollbars="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
+</pre>
+
+<p>レイアウトに {@link android.support.v7.widget.RecyclerView} ウィジェットを追加したら、オブジェクトのハンドルを取得してレイアウト マネージャーに接続し、表示するデータのアダプターを添付します。
+
+</p>
+
+<pre>
+public class MyActivity extends Activity {
+    private RecyclerView mRecyclerView;
+    private RecyclerView.Adapter mAdapter;
+    private RecyclerView.LayoutManager mLayoutManager;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.my_activity);
+        mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);
+
+        // use this setting to improve performance if you know that changes
+        // in content do not change the layout size of the RecyclerView
+        mRecyclerView.setHasFixedSize(true);
+
+        // use a linear layout manager
+        mLayoutManager = new LinearLayoutManager(this);
+        mRecyclerView.setLayoutManager(mLayoutManager);
+
+        // specify an adapter (see also next example)
+        mAdapter = new MyAdapter(myDataset);
+        mRecyclerView.setAdapter(mAdapter);
+    }
+    ...
+}
+</pre>
+
+<p>アダプターによって、データセット内の各項目にアクセスしたり、アイテムのビューを作成したり、元のアイテムが見えなくなったときにビューのコンテンツの一部を新しいデータアイテムと入れ替えたりできます。
+
+次のコードはデータセットを実装する簡易な例です。このデータセットは、{@link android.widget.TextView} ウィジェットを使用して表示した文字列の配列で構成されています。
+</p>
+
+<pre>
+public class MyAdapter extends RecyclerView.Adapter&lt;MyAdapter.ViewHolder> {
+    private String[] mDataset;
+
+    // Provide a reference to the views for each data item
+    // Complex data items may need more than one view per item, and
+    // you provide access to all the views for a data item in a view holder
+    public static class ViewHolder extends RecyclerView.ViewHolder {
+        // each data item is just a string in this case
+        public TextView mTextView;
+        public ViewHolder(TextView v) {
+            super(v);
+            mTextView = v;
+        }
+    }
+
+    // Provide a suitable constructor (depends on the kind of dataset)
+    public MyAdapter(String[] myDataset) {
+        mDataset = myDataset;
+    }
+
+    // Create new views (invoked by the layout manager)
+    &#64;Override
+    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
+                                                   int viewType) {
+        // create a new view
+        View v = LayoutInflater.from(parent.getContext())
+                               .inflate(R.layout.my_text_view, parent, false);
+        // set the view's size, margins, paddings and layout parameters
+        ...
+        ViewHolder vh = new ViewHolder(v);
+        return vh;
+    }
+
+    // Replace the contents of a view (invoked by the layout manager)
+    &#64;Override
+    public void onBindViewHolder(ViewHolder holder, int position) {
+        // - get element from your dataset at this position
+        // - replace the contents of the view with that element
+        holder.mTextView.setText(mDataset[position]);
+
+    }
+
+    // Return the size of your dataset (invoked by the layout manager)
+    &#64;Override
+    public int getItemCount() {
+        return mDataset.length;
+    }
+}
+</pre>
+
+
+<div style="float:right;margin-top:15px;margin-left:30px">
+<img src="{@docRoot}design/material/images/card_travel.png" alt="" width="225" height="383">
+<p class="img-caption" style="margin-left:12px">
+<strong>図 3</strong> カードの例。
+</p>
+</div>
+
+<h2 id="CardView">カードを作成する</h2>
+
+<p>{@link android.support.v7.widget.CardView} は {@link android.widget.FrameLayout} クラスを拡張して、あらゆるプラットフォームで統一された外観のカード内に情報を表示できます。
+{@link
+android.support.v7.widget.CardView} ウィジェットは、シャドウを付けたり角を丸くしたりできます。</p>
+
+<p>シャドウ付きのカードを作成するには、<code>card_view:cardElevation</code> 属性を使用します。
+{@link android.support.v7.widget.CardView} は Android 5.0（API レベル 21）以降ではリアルなエレベーションや動きのあるシャドウを使用し、それより前のバージョンではプログラム的なシャドウを使用します。
+
+詳細については、<a href="{@docRoot}training/material/compatibility.html">互換性の維持</a>をご覧ください。
+</p>
+
+<p>
+{@link android.support.v7.widget.CardView} ウィジェットの外観をカスタマイズするには、次のプロパティを使用します。</p>
+
+<ul>
+  <li>レイアウトで角の丸みを設定するには、<code>card_view:cardCornerRadius</code> 属性を使用します。
+</li>
+  <li>コードで角の丸みを設定するには、<code>CardView.setRadius</code> メソッドを使用します。</li>
+  <li>カードの背景色を設定するには、<code>card_view:cardBackgroundColor</code> 属性を使用します。
+</li>
+</ul>
+
+<p>次のコードは、レイアウトに {@link android.support.v7.widget.CardView}
+ ウィジェットを含める方法の一例です。</p>
+
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    xmlns:card_view="http://schemas.android.com/apk/res-auto"
+    ... >
+    &lt;!-- A CardView that contains a TextView -->
+    &lt;android.support.v7.widget.CardView
+        xmlns:card_view="http://schemas.android.com/apk/res-auto"
+        android:id="@+id/card_view"
+        android:layout_gravity="center"
+        android:layout_width="200dp"
+        android:layout_height="200dp"
+        card_view:cardCornerRadius="4dp">
+
+        &lt;TextView
+            android:id="@+id/info_text"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+    &lt;/android.support.v7.widget.CardView>
+&lt;/LinearLayout>
+</pre>
+
+<p>詳細については、API リファレンスの {@link android.support.v7.widget.CardView} をご覧ください。</p>
+
+
+<h2 id="Dependencies">依存関係を追加する</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} ウィジェットと {@link android.support.v7.widget.CardView} ウィジェットは、<a href="{@docRoot}tools/support-library/features.html#v7">v7 サポート ライブラリ</a>の一部です。
+
+プロジェクトでこれらのウィジェットを使うには、次のようにアプリのモジュールに
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Gradle 依存関係</a>を追加します。
+</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
diff --git a/docs/html-intl/intl/ja/training/material/shadows-clipping.jd b/docs/html-intl/intl/ja/training/material/shadows-clipping.jd
new file mode 100644
index 0000000..981a4d1
--- /dev/null
+++ b/docs/html-intl/intl/ja/training/material/shadows-clipping.jd
@@ -0,0 +1,133 @@
+page.title=シャドウとクリッピング ビューの定義
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>このレッスンでの学習内容</h2>
+<ol>
+  <li><a href="#Elevation">ビューにエレベーションを割り当てる</a></li>
+  <li><a href="#Shadows">ビューシャドウとアウトラインをカスタマイズする</a></li>
+  <li><a href="#Clip">ビューをクリップする</a></li>
+</ol>
+<h2>関連ドキュメント</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">マテリアル デザインの仕様</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android でのマテリアル デザイン</a></li>
+</ul>
+</div>
+</div>
+
+<p>マテリアル デザインでは、UI 要素に Elevation（エレベーション、高度）を導入しています。エレベーションによって、ユーザーは 1 つの要素が他の要素と比べて重要であることを理解でき、目前の作業に集中できるようになります。
+</p>
+
+<p>ビューのエレベーションは Z プロパティで表され、シャドウビューの見た目を決定します。Z 値が高くなればシャドウも大きく、滑らかになります。
+Z 値が高いビューは Z 値が低いビューを覆い隠しますが、Z 値がビューのサイズに影響することはありません。
+</p>
+
+<p>シャドウは、エレベーションが設定された親ビューによって描かれ、標準的なビュー クリッピングの対象になります。デフォルトでは親ビューによってクリップされます。
+</p>
+
+<p>エレベーションは、何らかのアクションでビューの平面上にウィジェットが浮き上がるようなアニメーションを作成する際にも役立ちます。
+</p>
+
+<p>マテリアル デザインのエレベーションの詳細については、
+<a href="http://www.google.com/design/spec/what-is-material/objects-in-3d-space.html">3D スペースのオブジェクト</a>をご覧ください。
+</p>
+
+
+<h2 id="Elevation">ビューにエレベーションを割り当てる</h2>
+
+<p>ビューの Z 値には次の 2 つのコンポーネントがあります。
+
+<ul>
+<li>Elevation （エレベーション）: 静的なコンポーネントです。</li>
+<li>Translation （トランスレーション）: アニメーションに使われる動的なコンポーネントです。</li>
+</ul>
+
+<p><code>Z = elevation + translationZ</code></p>
+
+<img src="{@docRoot}training/material/images/shadows-depth.png" width="580" height="261" alt="" />
+<p class="img-caption"><strong>図 1</strong> - 異なるビュー エレベーションのシャドウ。</p>
+
+<p>レイアウトの定義でビューのエレベーションを設定するには、<code>android:elevation</code>
+ 属性を使用します。アクティビティのコードでビューのエレベーションを設定するには、
+{@link android.view.View#setElevation View.setElevation()} メソッドを使用します。</p>
+
+<p>ビューのトランスレーションを設定するには、{@link android.view.View#setTranslationZ
+View.setTranslationZ()} メソッドを使用します。</p>
+
+<p>新しい {@link android.view.ViewPropertyAnimator#z ViewPropertyAnimator.z()} メソッドや {@link
+android.view.ViewPropertyAnimator#translationZ ViewPropertyAnimator.translationZ()} メソッドを使用すると、ビューのエレベーションに簡単にアニメーションを付けられます。
+詳細については、API リファレンスの
+{@link android.view.ViewPropertyAnimator} と、デベロッパー ガイドの<a href="{@docRoot}guide/topics/graphics/prop-animation.html">プロパティ アニメーション</a>をご覧ください。
+</p>
+
+<p>また、{@link android.animation.StateListAnimator} を使用してアニメーションを宣言的に指定することも可能です。
+これは、ユーザーがボタンを押したときなど、状態の変化によってアニメーションを動作する場合に特に役立ちます。
+詳細については、
+<a href="{@docRoot}training/material/animations.html#ViewState">ビューの状態遷移にアニメーションを付ける</a>をご覧ください。</p>
+
+<p>Z 値は dp（密度非依存ピクセル）で測られます。</p>
+
+
+<h2 id="Shadows">ビューシャドウとアウトラインをカスタマイズする</h2>
+
+<p>ビュー背景のドローアブルの範囲によってシャドウのデフォルトの形状が決まります。
+<strong>Outlines</strong> はグラフィック オブジェクトの外形を表し、タッチ フィードバックのリップル（波紋）の領域を定義します。
+</p>
+
+<p>背景ドローアブルで定義されたビューについて考えてみます。</p>
+
+<pre>
+&lt;TextView
+    android:id="@+id/myview"
+    ...
+    android:elevation="2dp"
+    android:background="@drawable/myrect" />
+</pre>
+
+<p>背景ドローアブルが角が丸い長方形として定義されます。</p>
+
+<pre>
+&lt;!-- res/drawable/myrect.xml -->
+&lt;shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+    &lt;solid android:color="#42000000" />
+    &lt;corners android:radius="5dp" />
+&lt;/shape>
+</pre>
+
+<p>背景ドローアブルによってビューの外形が定義されるため、このビューは角が丸いシャドウを付与します。
+カスタム アウトラインを使えば、ビューシャドウのデフォルトの形状を更新できます。</p>
+
+<p>コードでビューのカスタム アウトラインを定義するには: <p>
+
+<ol>
+<li>{@link android.view.ViewOutlineProvider} クラスを拡張します。</li>
+<li>{@link android.view.ViewOutlineProvider#getOutline getOutline()} メソッドを上書きします。</li>
+<li>{@link
+android.view.View#setOutlineProvider View.setOutlineProvider()} メソッドで、ビューに新しい OutlineProvider を割り当てます。</li>
+</ol>
+
+<p>
+{@link android.graphics.Outline} クラスのメソッドを使用して、楕円形や角が丸い長方形のアウトラインを作成できます。ビューのデフォルトの OutlineProvider は、ビューの背景から外形を決定します。
+ビューがシャドウを付与しないようにするには、OutlineProvider を <code>null</code> に設定します。
+</p>
+
+
+<h2 id="Clip">ビューをクリップする</h2>
+
+<p>ビューをクリップすると、ビューの形を簡単に変更できます。ビューをクリップすることで、他のデザイン要素との統一性を保ったり、ユーザーのインプットに応じてビューの形を変えたりできます。
+
+{@link android.view.View#setClipToOutline
+View.setClipToOutline()} メソッドか <code>android:clipToOutline</code> 属性を使用すると、ビューをそのアウトラインの範囲にクリップできます。
+{@link android.graphics.Outline#canClip Outline.canClip()} メソッドで指定されているように、クリップがサポートされるのは長方形、円形、角が丸い長方形のみです。
+</p>
+
+<p>上述のように、ドローアブルの範囲でビューをクリップするには、ドローアブルをビューの背景として設定し、{@link android.view.View#setClipToOutline View.setClipToOutline()}
+メソッドを呼び出します。
+</p>
+
+<p>ビューのクリップは負荷の高い操作であるため、ビューのクリップに使用する形状にはアニメーションを付けないでください。
+この効果を発揮させるには、<a href="{@docRoot}training/material/animations.html#Reveal">出現エフェクト</a>アニメーションを使用します。</p>
diff --git a/docs/html-intl/intl/ja/training/material/theme.jd b/docs/html-intl/intl/ja/training/material/theme.jd
new file mode 100644
index 0000000..43e5c6c
--- /dev/null
+++ b/docs/html-intl/intl/ja/training/material/theme.jd
@@ -0,0 +1,131 @@
+page.title=マテリアル テーマの使用
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>このレッスンでの学習内容</h2>
+<ol>
+  <li><a href="#ColorPalette">カラーパレットをカスタマイズする</a></li>
+  <li><a href="#StatusBar">ステータスバーをカスタマイズする</a></li>
+  <li><a href="#Inheritance">テーマ個別のビュー</a></li>
+</ol>
+<h2>関連ドキュメント</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">マテリアル デザインの仕様</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android でのマテリアル デザイン</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>新しいマテリアル テーマでは、次のものが提供されます。</p>
+
+<ul>
+  <li>カラーパレットを設定できるシステム ウィジェット</li>
+  <li>システム ウィジェットのタッチ フィードバック アニメーション</li>
+  <li>アクティビティ遷移アニメーション</li>
+</ul>
+
+<p>マテリアル テーマの外観は、ブランド イメージにあわせて自分のカラーパレットでカスタマイズできます。
+<a href="#fig3">図 3</a> のように、アクションバーやステータスバーにテーマ属性で色を付けることができます。
+</p>
+
+<p>システム ウィジェットには、新しいデザインやタッチ フィードバックがあります。カラーパレット、タッチ フィードバック、アクティビティ遷移は、自分のアプリ向けにカスタマイズできます。
+</p>
+
+<p>マテリアル テーマは次のように定義されます。</p>
+
+<ul>
+  <li><code>@android:style/Theme.Material</code> （暗色バージョン）</li>
+  <li><code>@android:style/Theme.Material.Light</code> （明色バージョン）</li>
+  <li><code>@android:style/Theme.Material.Light.DarkActionBar</code></li>
+</ul>
+
+<p>使用できるマテリアル スタイルのリストについては、API リファレンスの
+{@link android.R.style R.style} をご覧ください。</p>
+
+<!-- two columns, dark/light material theme example -->
+<div style="width:700px;margin-top:25px;margin-bottom:10px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>図 1</strong> 暗い色のマテリアル テーマ</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>図 2</strong> 明るい色のマテリアル テーマ</p>
+  </div>
+</div>
+<br style="clear:left">
+</div>
+
+<p class="note">
+<strong>注: </strong>マテリアル テーマは、Android 5.0（API レベル 21）以降でのみ使用できます。
+<a href="{@docRoot}tools/support-library/features.html#v7">v7 サポート ライブラリ</a>は、一部のウィジェットに対してマテリアル デザイン スタイルでテーマを提供し、カラーパレットのカスタマイズをサポートしています。
+
+詳細については、
+<a href="{@docRoot}training/material/compatibility.html">互換性の維持</a>をご覧ください。
+</p>
+
+
+<h2 id="ColorPalette">カラーパレットをカスタマイズする</h2>
+
+<p style="margin-bottom:30px">ブランド イメージに合うようにテーマの基本色をカスタマイズするには、次の例に示すようにマテリアル テーマから継承する場合、テーマ属性を使ってカスタムカラーを定義します。
+</p>
+
+<pre>
+&lt;resources>
+  &lt;!-- inherit from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- Main theme colors -->
+    &lt;!--   your app branding color for the app bar -->
+    &lt;item name="android:colorPrimary">@color/primary&lt;/item>
+    &lt;!--   darker variant for the status bar and contextual app bars -->
+    &lt;item name="android:colorPrimaryDark">@color/primary_dark&lt;/item>
+    &lt;!--   theme UI controls like checkboxes and text fields -->
+    &lt;item name="android:colorAccent">@color/accent&lt;/item>
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<div style="float:right;margin-left:25px;margin-top:20px;margin-bottom:10px" id="fig3">
+<img src="{@docRoot}training/material/images/ThemeColors.png" width="250" height="445" />
+<p class="img-caption" style="margin-bottom:0px">
+<strong>図 3</strong> マテリアル テーマのカスタマイズ</p>
+</div>
+
+
+<h2 id="StatusBar">ステータスバーをカスタマイズする</h2>
+
+<p>マテリアル テーマを使うと、ステータスバーを簡単にカスタマイズできます。ブランド イメージに合わせて、またコントラストで白色のステータス アイコンを際立たせて色を設定できます。
+ステータスバーのカスタムカラーを設定するには、マテリアル テーマを拡張するときに <code>android:statusBarColor</code> 属性を使用します。
+
+デフォルトでは <code>android:statusBarColor</code> は <code>android:colorPrimaryDark</code> の値を継承します。
+</p>
+
+<p>また、ステータスバーの背景を描くこともできます。たとえば、白色のステータス アイコンが見にくくならないように薄い暗色のグラデーションを付けて、ステータスバーを写真の上に透過的に表示したい場合、
+
+<code>android:statusBarColor</code> 属性に
+<code>&#64;android:color/transparent</code> を指定してウィンドウ フラグを必要に応じて調整します。アニメーションやフェードには、{@link android.view.Window#setStatusBarColor Window.setStatusBarColor()} メソッドも使用できます。
+
+</p>
+
+<p class="note">
+<strong>注: </strong>ステータスバーはメインのツールバーと明確に分かれている必要があります。ただし、背景に画面の端から端まで表示される鮮やかな画像やメディア コンテンツを使用したり、アイコンが見にくくならないようにグラデーションを使用する場合は例外です。
+
+
+</p>
+
+<p>ナビケーションとステータスバーをカスタマイズするときは、どちらも透過的にするか、ステータスバーだけを変更します。
+その他のケースではナビゲーション バーは黒色のままにする必要があります。</p>
+
+
+<h2 id="Inheritance">テーマ個別のビュー</h3>
+
+<p>XML レイアウト定義の各要素では、テーマのリソースを参照する <code>android:theme</code> 属性を指定できます。
+この属性は、要素や子要素のテーマを変更し、インターフェースの一定の割合を占めるテーマ カラーパレットを変更する場合に役立ちます。
+
+</p>
diff --git a/docs/html-intl/intl/ko/design/get-started/principles.jd b/docs/html-intl/intl/ko/design/get-started/principles.jd
index aba8a9b..b7ca66e 100644
--- a/docs/html-intl/intl/ko/design/get-started/principles.jd
+++ b/docs/html-intl/intl/ko/design/get-started/principles.jd
@@ -1,8 +1,8 @@
 page.title=Android 디자인 원칙
 @jd:body
 
-<p>이러한 디자인 원칙은 사용자의 이익을 가장 염두에 두고 Android
-사용자 환경 팀(User Experience Team)에 의해서와 이 팀을 위해 개발되었습니다. Android 개발자 및 디자이너를
+<p>이 디자인 원칙은 사용자의 이익을 가장 염두에 두고 Android
+사용자 환경 팀(User Experience Team)에 의해 이 팀을 위해 개발되었습니다. Android 개발자 및 디자이너를
 위해 Android 사용자 환경 팀은 계속해서 여러
 유형의 기기를 위한 상세한 디자인 가이드라인의
 기저를 이루고 있습니다.</p>
@@ -14,8 +14,8 @@
 
 <h2 id="enchant-me">황홀하게 만들기</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="delight-me">놀라운 방식으로 기쁨을 주기</h4>
 <p>아름다운 표면, 신중하게 위치한 애니메이션 또는 시간적으로 잘 짜여진 소리 효과는 사람들에게 즐거운
@@ -23,7 +23,7 @@
 힘을 가지고 있다고 느끼게 해줍니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_delight.png">
 
@@ -32,15 +32,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="real-objects-more-fun">버튼 및 메뉴보다 더 흥미로운 실제 사물</h4>
 <p>사람들이 직접 앱 내 사물을 터치하고 조작할 수 있게 해보세요. 이는 태스크를 수행할 때
 필요한 인지 노력을 줄이는 동시에 정서적인 만족을 가져다 줍니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_real_objects.png">
 
@@ -49,8 +49,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-it-mine">내 것으로 만들게 하기</h4>
 <p>사람들은 개인적인 취향을 더하고 싶어 하는데, 그렇게 하면 마음이 편안해지고 통제할 수 있다고 느끼게 되기 때문입니다. 합리적이고
@@ -58,7 +58,7 @@
 주요 태스크를 저해하지 않는 범위에서 재미있고, 선택 가능한 맞춤 기능을 제공할 것을 고려해 보십시오.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_it_mine.png">
 
@@ -67,15 +67,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="get-to-know-me">사용자에 대해 파악하기</h4>
 <p>시간이 지남에 따라 사람들이 선호하는 것을 알아보세요. 똑같은 선택을 매번
 하도록 요구하기 보다는 이전 선택을 쉽게 접근할 수 있는 곳에 둡니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_get_to_know_me.png">
 
@@ -84,14 +84,14 @@
 
 <h2 id="simplify-my-life">사용자의 생활을 단순하게 만들기</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="keep-it-brief">간결하게 만들기</h4>
 <p>간단한 단어로 이루어진 짧은 문구를 사용하세요. 문장이 길면 사람들이 보지 않고 넘길 가능성이 커집니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_keep_it_brief.png">
 
@@ -100,15 +100,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="pictures-faster-than-words">말보다 빠른 사진</h4>
 <p>생각을 전달하는 데 사진을 이용할 것을 고려해 보세요. 사람들의 시선을 끌고 말보다
 더 효과적일 수 있습니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_pictures.png">
 
@@ -117,15 +117,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="decide-for-me">사용자를 대신해서 결정해 주되 최종 결정권은 사용자에게 주기</h4>
 <p>먼저 물어보기 보다는 최선의 추측을 하고 조치를 취해 보세요. 선택하고 결정해야 하는 사항이 너무 많으면 사람들이
 짜증을 내게 됩니다. 만약을 대비해 '실행 취소' 기능을 제공합니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_decide_for_me.png">
 
@@ -134,15 +134,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="only-show-when-i-need-it">사용자가 필요로 할 때 필요한 사항만 보여주기</h4>
 <p>사람들은 한 번에 너무 많은 것을 보면 버거워합니다. 태스크 및 정보를 소화 가능한
 작은 크기로 나누세요. 현재 필요하지 않은 옵션은 숨기고 사람들의 작업 진행에 맞게 옵션을 표시하세요.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_information_when_need_it.png">
 
@@ -151,15 +151,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="always-know-where-i-am">사용자 자신이 현재 어디에 있는지 항상 알도록 하기</h4>
 <p>사람들에게 현재 자신이 어디에 있는지에 대한 확신을 주어야 합니다. 앱에서 장소가 명확하게 표시되게 하고,
 전환을 사용하여 화면 간 관계를 보여줍니다. 현재 작업 중인 태스크에 대한 피드백을 제공합니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_navigation.png">
 
@@ -168,8 +168,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="never-lose-my-stuff">사용자가 가지고 있는 것들을 절대 잃어버리지 않도록 하기</h4>
 <p>사람들이 공들여 만든 것을 저장하고 어디서든지 액세스할 수 있게 합니다. 휴대폰, 태블릿 및 컴퓨터에 걸쳐 설정,
@@ -177,7 +177,7 @@
 가장 쉬워집니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_never_lose_stuff.png">
 
@@ -186,15 +186,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="looks-same-should-act-same">똑같이 보이면 똑같이 동작되도록 하기</h4>
 <p>기능을 시각적으로 단순하게 만들기 보다는 눈에 띄게 만들어 사람들이 기능적 차이를 알아볼 수 있게 합니다.
 비슷하게 보이는 장소지만 같은 입력에 대해 다르게 실행되는 모드는 피하도록 합니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_looks_same.png">
 
@@ -203,15 +203,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="interrupt-only-if-important">중요할 때만 작업을 중단하기</h4>
 <p>유능한 개인 비서와 같이 중요하지 않은 일로 사람들의 작업을 중단하지 않도록 합니다. 사람들은
 작업에 계속 집중하기를 바라며, 중요하고 시간을 다투는 일을 제외하고는 작업이 중단되면 부담스럽고 짜증이 날 수 있습니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_important_interruption.png">
 
@@ -220,8 +220,8 @@
 
 <h2 id="make-me-amazing">사용자를 놀래킬 수 있는 환경 만들기</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="give-me-tricks">어디서든 적용될 수 있는 팁 제공하기</h4>
 <p>사람들은 스스로 알아내는 것을 좋아합니다. 다른 Android 앱의 시각적 패턴과 머슬 메모리(muscle memory)를 활용하여
@@ -229,7 +229,7 @@
 좋은 탐색 지름길이 될 수 있습니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_tricks.png">
 
@@ -238,16 +238,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="its-not-my-fault">사용자가 자기 탓으로 느끼지 않게 하기</h4>
 <p>사람들의 실수를 바로잡아 줄 때는 부드럽게 합니다. 사람들은
-앱을 사용할 때 스마트하게 느끼고 싶어 합니다. 뭔가 잘못될 경우, 명확한 복구 지침을 제공하되, 기술적인 세부 사항은 제공하지 않습니다.
-사람들 모르게 복구할 수 있으면 더 좋습니다.</p>
+앱을 사용할 때 자신이 스마트하다고 느끼고 싶어 합니다. 뭔가 잘못될 경우, 명확한 복구 지침을 제공하되, 기술적인 세부 사항은 그들에게 맡기세요.
+눈치채지 않게 복구할 수 있으면 더 좋습니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_error.png">
 
@@ -256,15 +256,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="sprinkle-encouragement">격려하기</h4>
 <p>복잡한 태스크를 쉽게 완료할 수 있도록 여러 단계로 나눕니다. 미묘한 반짝임일지라도
 작업에 대해서 피드백을 줍니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png">
 
@@ -273,8 +273,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="do-heavy-lifting-for-me">힘든 건 대신해주기</h4>
 <p>초보자들이 할 수 있을 것이라 생각하지 못한 일들을 해서 전문가처럼 느낄 수 있게 합니다. 예를
@@ -282,7 +282,7 @@
 겨우 몇 단계를 거치는 것만으로 멋진 사진으로 보이게 할 수 있습니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_heavy_lifting.png">
 
@@ -291,15 +291,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-important-things-fast">중요한 일은 빨리 해결되도록 하기</h4>
 <p>모든 작업이 같지는 않습니다. 앱에서 가장 중요한 것이 무엇인지 결정한 후 쉽게 찾을 수 있고
 빨리 사용할 수 있도록 합니다. 일례로 카메라의 셔터 버튼이나 음악 플레이어의 일시정지 버튼이 이에 해당됩니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_important_fast.png">
 
diff --git a/docs/html-intl/intl/ko/design/material/index.jd b/docs/html-intl/intl/ko/design/material/index.jd
index 31992fa..b24c668 100644
--- a/docs/html-intl/intl/ko/design/material/index.jd
+++ b/docs/html-intl/intl/ko/design/material/index.jd
@@ -1,7 +1,7 @@
-page.title=머티어리얼 디자인
+page.title=Android용 머티리얼 디자인
 page.tags=Material,design
 page.type=design
-page.image=design/material/images/MaterialLight.png
+page.image=images/cards/design-material-for-android_2x.jpg
 
 @jd:body
 
@@ -9,7 +9,7 @@
 <a class="notice-developers right" href="{@docRoot}training/material/index.html">
   <div>
     <h3>개발자 문서</h3>
-    <p>머티어리얼 디자인으로 앱 생성</p>
+    <p>머티리얼 디자인으로 앱 생성</p>
   </div>
 </a>
 
@@ -17,7 +17,7 @@
 <a class="notice-developers-video" href="https://www.youtube.com/watch?v=p4gmvHyuZzw">
 <div>
     <h3>비디오</h3>
-    <p>머티어리얼 디자인 소개</p>
+    <p>머티리얼 디자인 소개</p>
 </div>
 </a>
 
@@ -25,7 +25,7 @@
 <a class="notice-developers-video" href="https://www.youtube.com/watch?v=YaG_ljfzeUw">
 <div>
     <h3>비디오</h3>
-    <p>종이와 잉크: 중요한 머티어리얼</p>
+    <p>종이와 잉크: 중요한 머티리얼</p>
 </div>
 </a>
 
@@ -33,19 +33,19 @@
 <a class="notice-developers-video" href="https://www.youtube.com/watch?v=XOcCOBe8PTc">
 <div>
     <h3>비디오</h3>
-    <p>Google I/O 앱 내 머티어리얼 디자인</p>
+    <p>Google I/O 앱 내 머티리얼 디자인</p>
 </div>
 </a>
 
 
 
-<p itemprop="description">머티어리얼 디자인은 플랫폼 및 기기 전반의 표현 방식, 모션 및
+<p itemprop="description">머티리얼 디자인은 플랫폼 및 기기 전반의 표현 방식, 모션 및
 상호 작용 디자인에 대한 종합적인 지침입니다. Android에는 이제
-머티어리얼 디자인 앱에 대한 지원이 포함되었습니다. Android 앱에서 머티어리얼 디자인을 사용하려면 <a href="http://www.google.com/design/spec">머티어리얼 디자인 사양</a>에
+머티리얼 디자인 앱에 대한 지원이 포함되었습니다. Android 앱에서 머티리얼 디자인을 사용하려면 <a href="http://www.google.com/design/spec">머티리얼 디자인 사양</a>에
 규정되어 있는 지침을 따르세요. 또한 Android 5.0(API 레벨 21) 이상에서 제공하는
 새 구성 요소 및 기능을 사용하세요.</p>
 
-<p>Android는 머티어리얼 디자인 앱을 구축하는 데 사용할 수 있는 다음 요소를 제공합니다.</p>
+<p>Android는 머티리얼 디자인 앱을 구축하는 데 사용할 수 있는 다음 요소를 제공합니다.</p>
 
 <ul>
   <li>새로운 테마</li>
@@ -53,13 +53,13 @@
   <li>사용자 지정 그림자 및 애니메이션을 위한 새로운 API</li>
 </ul>
 
-<p>Android에서 머티어리얼 디자인을 구현하는 방법에 대한 자세한 내용은
-<a href="{@docRoot}training/material/index.html">머티어리얼 디자인으로 앱 생성</a>을 참조하세요.</p>
+<p>Android에서 머티리얼 디자인을 구현하는 방법에 대한 자세한 내용은
+<a href="{@docRoot}training/material/index.html">머티리얼 디자인으로 앱 생성</a>을 참조하세요.</p>
 
 
-<h3>머티어리얼 테마</h3>
+<h3>머티리얼 테마</h3>
 
-<p>머티어리얼 테마는 앱에 사용할 수 있는 새로운 스타일, 색상표를
+<p>머티리얼 테마는 앱에 사용할 수 있는 새로운 스타일, 색상표를
 설정할 수 있는 시스템 위젯, 그리고 터치 피드백 및 액티비티 전환을 위한 기본 애니메이션을 제공합니다.</p>
 
 <!-- two columns -->
@@ -67,25 +67,25 @@
 <div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
   <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238" />
   <div style="width:140px;margin:0 auto">
-  <p style="margin-top:8px">어두운 머티어리얼 테마</p>
+  <p style="margin-top:8px">어두운 머티리얼 테마</p>
   </div>
 </div>
 <div style="float:left;width:250px;margin-right:0px;">
   <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238" />
   <div style="width:140px;margin:0 auto">
-  <p style="margin-top:8px">밝은 머티어리얼 테마</p>
+  <p style="margin-top:8px">밝은 머티리얼 테마</p>
   </div>
 </div>
 <br style="clear:left"/>
 </div>
 
-<p>자세한 내용은 <a href="{@docRoot}training/material/theme.html">머티어리얼
+<p>자세한 내용은 <a href="{@docRoot}training/material/theme.html">머티리얼
 테마 사용</a>을 참조하세요.</p>
 
 
 <h3>목록 및 카드</h3>
 
-<p>Android는 머티어리얼 디자인 스타일
+<p>Android는 머티리얼 디자인 스타일
 및 애니메이션으로 카드 및 목록을 표시하는 데 사용할 수 있는 두 개의 새로운 위젯을 제공합니다.</p>
 
 <!-- two columns -->
@@ -126,7 +126,7 @@
   </video>
   </div>
   <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
-    <em>영화를 재생하려면 기기 화면을 클릭합니다.</em>
+    <em>영화를 재생하려면 기기 화면을 클릭하세요.</em>
   </div>
 </div>
 
@@ -171,7 +171,7 @@
 
 <h3>드로어블</h3>
 
-<p>드로어블에 대한 다음과 같은 새 기능을 통해 머티어리얼 디자인 앱을 쉽게 구현할 수 있습니다.</p>
+<p>드로어블에 대한 다음과 같은 새 기능을 통해 머티리얼 디자인 앱을 쉽게 구현할 수 있습니다.</p>
 
 <ul>
 <li><strong>벡터 드로어블</strong>은 단색 인앱 아이콘에
@@ -182,5 +182,5 @@
 비트맵 이미지에서 주요 색상을 자동으로 추출할 수 있게 해줍니다.</li>
 </ul>
 
-<p>자세한 내용은 <a href="{@docRoot}training/material/drawables.html">Drawable
+<p>자세한 내용은 <a href="{@docRoot}training/material/drawables.html">드로어블
 사용</a>을 참조하세요.</p>
diff --git a/docs/html-intl/intl/ko/design/patterns/compatibility.jd b/docs/html-intl/intl/ko/design/patterns/compatibility.jd
new file mode 100644
index 0000000..a87a8f2
--- /dev/null
+++ b/docs/html-intl/intl/ko/design/patterns/compatibility.jd
@@ -0,0 +1,70 @@
+page.title=이전 버전과의 호환성
+page.tags="support"
+page.metaDescription=Android 4.x에서 어떤 방식으로 이전 버전의 하드웨어 및 OS용으로 디자인된 UI를 적용하는지에 대한 설명입니다.
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/basics/supporting-devices/index.html">
+  <div>
+    <h3>개발자 문서</h3>
+    <p>다양한 기기 지원</p>
+  </div>
+</a>
+
+<p>Android 3.0에서 중요한 변경 사항은 다음과 같습니다.</p>
+<ul>
+<li>가상 컨트롤(Back, Home, Recents)을 통한 탐색 처리
+에 편리하도록 탐색 하드웨어 키(Back, Menu, Search, Home) 사용 중단.</li>
+<li>작업 모음에서 메뉴 사용을 위한 견고한 패턴.</li>
+</ul>
+<p>Android 4.0은 태블릿의 이러한 변경 사항들을 휴대폰 플랫폼에 적용합니다.</p>
+
+<h2 id="older-hardware">이전 하드웨어 및 앱에 Android 4.0 적용</h2>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>가상 탐색 컨트롤이 있는 휴대폰</h4>
+<p>Android 3.0 이상의 버전용으로 작성된 Android 앱은 작업 모음에 작업을 표시합니다. 작업 모음에 적합하지 않거나 최상위에 표시될 만큼 중요하지 않은 작업은 작업 오버플로우에 나타납니다.
+
+</p>
+<p>사용자는 작업 모음에서 작업 오버플로를 터치하는 방식으로 액세스합니다.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_virtual_nav.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>실제 탐색 키가 있는 휴대폰</h4>
+<p>탐색 하드웨어 키가 있는 기존 Android 휴대폰은 화면 하단에 가상 탐색 모음을 표시하지 않습니다.
+ 대신 메뉴 하드웨어 키에서 작업 오버플로를 이용할 수 있습니다. 나타나는 작업 팝업은 이전의 예와 스타일은 같지만 화면 하단에 표시됩니다.
+</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_physical_buttons.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>가상 탐색 컨트롤이 있는 휴대폰의 레거시 앱</h4>
+<p>Android 2.3 이하 버전용으로 작성된 앱을 가상 탐색 컨트롤이 있는 휴대폰에서 실행하면 가상 탐색 모음의 오른쪽에 작업 오버플로가 나타납니다.
+ 이 컨트롤을 터치하여 기존 Android 메뉴 스타일로 앱의 작업을 표시할 수 있습니다.
+</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_legacy_apps.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/ko/design/patterns/confirming-acknowledging.jd b/docs/html-intl/intl/ko/design/patterns/confirming-acknowledging.jd
index 2444b0e..304a655 100644
--- a/docs/html-intl/intl/ko/design/patterns/confirming-acknowledging.jd
+++ b/docs/html-intl/intl/ko/design/patterns/confirming-acknowledging.jd
@@ -1,51 +1,51 @@
-page.title=확인 및 승인하기
+page.title=확인 및 승인
 page.tags=dialog,toast,notification
 @jd:body
 
 <p>사용자가 앱에서 작업을 호출할 때와 같은 몇몇 상황에서는 텍스트를 통해 해당 작업을 <em>확인</em>하거나 <em>승인</em>하는 것이 좋습니다.</p>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_confirming.png">
-    <p><strong>확인하기</strong>란, 사용자에게 방금 호출한 작업을 정말로 진행할 것인지 묻는 것입니다. 경우에 따라 확인은 고려해야 할 작업과 관련된 경고 또는 중요한 정보와 함께 표시됩니다.</p>
+    <p><strong>확인</strong>이란, 사용자에게 방금 호출한 작업을 정말로 진행할 것인지 묻는 것입니다. 경우에 따라 확인은 고려해야 할 작업과 관련된 경고 또는 중요한 정보와 함께 표시됩니다.</p>
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_acknowledge.png">
-    <p><strong>승인하기</strong>란, 사용자에게 방금 호출한 작업이 완료되었음을 알리는 텍스트를 표시하는 것입니다. 이는 시스템이 수행하는 암시적인 작업에 대한 불확실성을 제거해 줍니다. 경우에 따라 승인은 작업의 실행을 취소하는 옵션과 함께 표시됩니다.</p>
+    <p><strong>승인</strong>이란, 사용자에게 방금 호출한 작업이 완료되었음을 알리는 텍스트를 표시하는 것입니다. 이는 시스템이 수행하는 암시적인 작업에 대한 불확실성을 제거해 줍니다. 경우에 따라 승인은 작업의 실행을 취소하는 옵션과 함께 표시됩니다.</p>
   </div>
 </div>
 
-<p>이런 방식의 사용자와의 소통은 이미 일어난 일이나 일어날 일에 대한 불확실성을 완화시키는 데 도움이 될 수 있습니다. 또한, 확인하기 또는 승인하기는 사용자가 후회할지도 모르는 실수를 미연에 방지합니다.</p>
+<p>이런 방식의 사용자와의 소통은 이미 일어난 일이나 일어날 일에 대한 불확실성을 완화시키는 데 도움이 될 수 있습니다. 또한, 확인 또는 승인은 사용자가 후회할지도 모르는 실수를 미연에 방지합니다.</p>
 
-<h2>사용자 작업을 확인 또는 승인하기 적절한 경우</h2>
+<h2>사용자 작업 확인 또는 승인이 적절한 경우</h2>
 <p>모든 작업에 확인 또는 승인이 적합한 것은 아닙니다. 다음 순서도를 참고하여 디자인을 결정하는 데 도움을 받으세요.</p>
 <img src="{@docRoot}design/media/confirm_ack_flowchart.png">
 
-<h2>확인하기</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<h2>확인</h2>
+<div class="cols">
+  <div class="col-6">
     <h4>예: Google Play 도서</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_books.png">
     <p>이 예에서는 사용자가 Google Play 라이브러리에서 도서 삭제를 요청했습니다. 이 작업을 확인하기 위해 <a href="{@docRoot}design/building-blocks/dialogs.html#alerts">경고</a>가 나타납니다. 왜냐하면 해당 도서를 더 이상 어떠한 기기에서도 이용할 수 없다는 것을 알려야 하기 때문입니다.</p>
     <p>확인 대화 상자를 작성할 때, 요청된 작업을 반향하여 제목을 의미 있게 만듭니다.</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>예: Android Beam</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_beam.png">
     <p>확인을 두 개의 버튼을 포함한 경고로 표시할 필요는 없습니다. Android Beam을 시작하면 사용자에게 공유할 콘텐츠를 터치하라는 메시지가 표시됩니다(이 예의 경우 사진). 진행하지 않기로 결정한 경우에는 휴대폰에서 벗어나면 됩니다.</p>
   </div>
 </div>
 
-<h2>승인하기</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<h2>승인</h2>
+<div class="cols">
+  <div class="col-6">
     <h4>예: 방치된 Gmail 초안 저장</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png">
     <p>이 예에서는 사용자가 Gmail의 메일 작성 화면에서 뒤로 또는 위로 탐색을 수행하면 예상치 못한 일이 일어나는데, 그건 바로 현재 초안이 자동으로 저장되는 것입니다. 승인은 알림 메시지 형식으로 나타납니다. 그리고 몇 초 후 사라집니다.</p>
     <p>이때, 저장이 사용자가 아닌 앱에 의해 이뤄졌기 때문에 실행 취소는 적합하지 않습니다. 그리고 초안 목록으로 이동하면 쉽고 빠르게 메일 작성을 재개할 수 있습니다.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <h4>예: Gmail 대화 삭제</h4>
     <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png">
     <p>사용자가 Gmail 목록에서 대화를 삭제하면, 승인이 실행 취소 옵션과 함께 표시됩니다. 승인은 사용자가 목록을 스크롤하는 등의 관련 없는 작업을 수행하기 전까지 그대로 남아 있습니다.</p>
@@ -53,14 +53,14 @@
 </div>
 
 <h2>확인 또는 승인이 필요 없는 경우</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>예: +1 누르기</h4>
     <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png">
     <p><strong>확인이 필요 없습니다</strong>. 사용자가 실수로 +1을 누른 경우, 별문제가 되지 않습니다. 버튼을 다시 터치하여 해당 작업의 실행을 취소하면 됩니다.</p>
     <p><strong>승인이 필요 없습니다</strong>. 사용자는 +1 버튼이 바운스되고 빨간색으로 바뀌는 것을 볼 수 있습니다. 이는 매우 분명한 신호입니다.</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>예: 홈 화면에서 앱 제거하기</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png">
     <p><strong>확인이 필요 없습니다</strong>. 이는 의도적인 작업으로, 사용자는 상대적으로 크고 고립된 대상으로 항목을 끌어다 놓을 것입니다. 따라서 실수가 발생할 가능성이 매우 낮습니다. 하지만 사용자가 이 결정을 후회하는 경우, 다시 복구하는 데는 몇 초면 됩니다.</p>
diff --git a/docs/html-intl/intl/ko/design/patterns/navigation.jd b/docs/html-intl/intl/ko/design/patterns/navigation.jd
index 8e5c30b..5f335d5 100644
--- a/docs/html-intl/intl/ko/design/patterns/navigation.jd
+++ b/docs/html-intl/intl/ko/design/patterns/navigation.jd
@@ -1,4 +1,4 @@
-page.title=뒤로 및 위로 탐색 기능이 포함된 탐색
+page.title=Back 탐색과 Up 탐색
 page.tags="navigation","activity","task","up navigation","back navigation"
 page.image=/design/media/navigation_between_siblings_gmail.png
 @jd:body
@@ -6,41 +6,41 @@
 <a class="notice-developers" href="{@docRoot}training/implementing-navigation/index.html">
   <div>
     <h3>개발자 문서</h3>
-    <p>효과적인 탐색 구현하기</p>
+    <p>효과적인 탐색 구현</p>
   </div>
 </a>
 
 <p itemprop="description">일관적인 탐색 기능은 전반적인 사용자 환경에 필수적인 요소입니다. 일관성 없고 예상대로 진행되지 않는 기본 탐색은
 사용자에게 많은 실망을 줍니다. Android 3.0에서는
-글로벌 탐색 동작에 중요한 변경 사항을 도입했습니다. 뒤로 및 위로 탐색에 대한
+글로벌 탐색 동작에 중요한 변경 사항을 도입했습니다. Back 및 Up 탐색에 대한
 가이드라인을 꼼꼼히 따르면 사용자가 예상 가능하고 신뢰할 수 있는 탐색 기능이 탑재된 앱을 만들 수 있습니다.</p>
-<p>Android 2.3 이하 버전에서는
-앱 내 탐색 기능을 지원하기 위해 시스템의 <em>뒤로</em> 버튼에 의존했습니다. Android 3.0에서는 작업 모음을 도입함으로써 앱 아이콘 및 왼쪽 방향 캐럿으로 이루어진 2차 탐색 메커니즘인
-<em>위로</em> 버튼이 추가되었습니다.</p>
+<p>Android 2.3 이하 버전에서는 앱 내 탐색 기능을 지원하기 위해 시스템의 <em>Back</em> 버튼에
+의존했습니다. Android 3.0에서는 작업 모음을 도입함으로써 앱 아이콘 및 왼쪽 방향 캐럿으로 이루어진
+2차 탐색 메커니즘인<em>Up</em> 버튼이 추가되었습니다.</p>
 
 <img src="{@docRoot}design/media/navigation_with_back_and_up.png">
 
-<h2 id="up-vs-back">위로 및 뒤로 비교</h2>
+<h2 id="up-vs-back">Up과 Back</h2>
 
-<p>위로 버튼은 화면
+<p>Up 버튼은 화면
 간의 계층적 관계를 기반으로 앱 내에서 탐색할 때 사용됩니다. 예를 들어, 화면 A에 표시된 항목 목록에서 항목을 선택하면 항목에 대한 세부 정보를 표시하는 화면 B로 이동하게 되는데, 이때
 화면 B는 화면 A로
-돌아가는 위로 버튼을 제공해야 합니다.</p>
-<p>화면이 앱의 최상단에 있는 경우(즉, 앱의 홈인 경우), 위로
+돌아가는 Up 버튼을 제공해야 합니다.</p>
+<p>화면이 앱의 최상단에 있는 경우(즉, 앱의 홈인 경우), Up
 버튼이 표시되지 않아야 합니다.</p>
 
-<p>시스템의 뒤로 버튼은 사용자가 최근에 작업한 화면
+<p>시스템의 Back 버튼은 사용자가 최근에 작업한 화면
 기록을 역순으로 탐색할 때 사용됩니다. 일반적으로 이 버튼은 앱의 계층 구조가 아닌 화면
 간의 일시적인 관계를 기반으로 합니다.</p>
 
 <p>또한, 앞서 본 화면이 현재 화면의 계층적 상위 화면일 경우
-뒤로 버튼을 누르는 것과 위로 버튼을 누르는 것의 결과가 동일하며, 이는 흔하게
-발생하는 동작입니다. 하지만 사용자가 앱 내에 머무는 위로 버튼과 달리, 뒤로
+Back 버튼을 누르는 것과 Up 버튼을 누르는 것의 결과가 동일하며, 이는 흔하게
+발생하는 동작입니다. 하지만 사용자가 앱 내에 머무는 Up 버튼과 달리, Back
 버튼을 누르면 홈 화면 또는 다른 앱으로 돌아갈 수 있습니다.</p>
 
 <img src="{@docRoot}design/media/navigation_up_vs_back_gmail.png">
 
-<p>뒤로 버튼은 화면 간 탐색과 직접적으로 관련 없는 몇 가지 동작도 지원합니다.
+<p>Back 버튼은 화면 간 탐색과 직접적으로 관련 없는 몇 가지 동작도 지원합니다.
 </p>
 <ul>
 <li>부동 창 해제(대화 상자, 팝업)</li>
@@ -49,13 +49,13 @@
 </ul>
 <h2 id="within-app">앱 내 탐색</h2>
 
-<h4>진입 지점이 여러 개인 화면으로 이동하기</h4>
+<h4>여러 진입 지점을 통한 화면 탐색</h4>
 <p>일부 화면은 앱의 계층 구조 내에서 엄격한 위치를 가지고 있지 않는 경우가 있으며, 이 경우 여러 진입 지점을
 통해서 접근할 수 있습니다. 예를 들어 설정 화면은 앱
-내의 다른 어떤 화면에서도 접근이 가능합니다. 이러한 경우, 위로 버튼을 누르면 뒤로 버튼과
-동일하게 참조하는 화면으로 돌아가게 됩니다.</p>
-<h4>화면 내에서 뷰 변경하기</h4>
-<p>화면의 뷰 옵션 변경은 위로 또는 뒤로 버튼의 동작을 변경하지 않습니다. 이는 화면이 앱 계층 구조 내에서 여전히 동일한 위치에
+내의 다른 어떤 화면에서도 접근이 가능합니다. 이러한 경우, Up 버튼을 누르면 Back 버튼과 동일하게
+참조하는 화면으로 돌아가게 됩니다.</p>
+<h4>화면 내에서 뷰 변경</h4>
+<p>화면의 뷰 옵션 변경은 Up 또는 Back 버튼의 동작을 변경하지 않습니다. 이는 화면이 앱 계층 구조 내에서 여전히 동일한 위치에
 있고, 어떠한 탐색 기록도 새로 생성되지 않기 때문입니다.</p>
 <p>이러한 뷰 변경의 예는 다음과 같습니다.</p>
 <ul>
@@ -70,21 +70,21 @@
 항목으로 직접 이동할 수 있도록 지원하는 것이 바람직한
 경우도 있습니다. 예를 들어 Gmail의 대화에서 왼쪽 또는 오른쪽으로 간단하게 스와이프하여 동일한 받은 편지함에 있는 신규 또는 이전 메일을
 볼 수 있습니다. 화면 내에서 뷰를 변경하는 것과 마찬가지로,
-탐색은 위로 또는 뒤로 버튼의 동작을 바꾸지 않습니다.</p>
+탐색은 Up 또는 Back 버튼의 동작을 바꾸지 않습니다.</p>
 
 <img src="{@docRoot}design/media/navigation_between_siblings_gmail.png">
 
 <p>하지만 참조 목록으로 같이
 묶여 있지 않은 연관된 상세 뷰 사이를 탐색할 때는 주목할 만한 예외적인 상황이 발생합니다. 예를 들어, Play Store에서
 동일한 개발자가 만든 여러 앱 또는 동일한 아티스트의 여러 앨범을 탐색하는 경우가 그렇습니다. 이러한 경우, 링크를 따라갈 때마다
-기록이 생성되므로, 뒤로 버튼을 누르면 이전에 본 화면으로 이동합니다. 위로 버튼을 누르면 계속해서 이러한 연관된 화면을
+기록이 생성되므로, Back 버튼을 누르면 이전에 본 화면으로 이동합니다. Up 버튼을 누르면 계속해서 이러한 연관된 화면을
 거치지 않고 가장 최근에 본 컨테이너 화면으로 이동합니다.</p>
 
 <img src="{@docRoot}design/media/navigation_between_siblings_market1.png">
 
 <p>상세
-뷰에 대한 지식을 바탕으로 더욱 스마트한 위로 버튼 동작을 구현할 수 있습니다. 위에서 설명한 Play Store 예를 확장하여 사용자가
-마지막으로 본 도서에서 해당 도서를 각색한 영화의 세부 정보 화면으로 이동했다고 가정해 봅니다. 그러한 경우, 위로 버튼을 누르면 사용자가 이전에 탐색한 적이 없는
+뷰에 대한 지식을 바탕으로 더욱 스마트한 Up 버튼 동작을 구현할 수 있습니다. 위에서 설명한 Play Store 예를 확장하여 사용자가
+마지막으로 본 도서에서 해당 도서를 각색한 영화의 세부 정보 화면으로 이동했다고 가정해 봅니다. 그러한 경우, Up 버튼을 누르면 사용자가 이전에 탐색한 적이 없는
 컨테이너(영화)로 이동할 수 있습니다.</p>
 
 <img src="{@docRoot}design/media/navigation_between_siblings_market2.png">
@@ -95,22 +95,22 @@
 있는 화면으로 바로 이동할 수 있게 할 수 있습니다. 예를 들어, Gmail의 받은 편지함 위젯과 새 메시지 알림은
 모두 받은 편지함 화면을 건너뛰고 사용자가 해당 메일로 바로 이동할 수 있게 해줍니다.</p>
 
-<p>이러한 두 경우 모두 위로 버튼을 다음과 같이 처리합니다.</p>
+<p>이러한 두 경우 모두 Up 버튼을 다음과 같이 처리합니다.</p>
 
 <ul>
 <li><em>일반적으로 목적지 화면이
-앱 내의 특정 화면에서 출발한 경우</em>, 위로 버튼은 해당 화면으로 이동해야 합니다.</li>
-<li><em>그 외의 경우</em>, 위로 버튼은 앱의 최상위("홈") 화면으로 이동해야 합니다.</li>
+앱 내의 특정 화면에서 출발한 경우</em>, Up 버튼은 해당 화면으로 이동해야 합니다.</li>
+<li><em>그 외의 경우</em>, Up 버튼은 앱의 최상위("홈") 화면으로 이동해야 합니다.</li>
 </ul>
 
-<p>뒤로 버튼의 경우,
+<p>Back 버튼의 경우,
 앱의 최상위 화면으로 이동하는 완전한 상위 탐색 경로를 태스크의 백 스택에 삽입하여 탐색을 더욱 예측 가능하게 만들어야 합니다. 이는 앱에 어떻게 진입했는지 잊어버린
 사용자가 앱에서 나가기
 전에 앱의 최상위 화면으로 이동할 수 있게 해줍니다.</p>
 
 <p>예를 들어 Gmail의 홈 화면 위젯은 메일 작성
-화면으로 바로 진입할 수 있는 버튼을 제공합니다. 메일 작성 화면에서 위로 또는
-뒤로 버튼을 누르면 받은 편지함으로 이동하게 되고, 받은 편지함에서 뒤로 버튼을 누르면 홈으로 돌아가게 됩니다.</p>
+화면으로 바로 진입할 수 있는 버튼을 제공합니다. 메일 작성 화면에서 Up 또는
+Back 버튼을 누르면 받은 편지함으로 이동하게 되고, 받은 편지함에서 Back 버튼을 누르면 홈으로 돌아가게 됩니다.</p>
 
 <img src="{@docRoot}design/media/navigation_from_outside_back.png">
 
@@ -118,20 +118,20 @@
 
 <p>앱이 동시에 다양한 이벤트 정보를 제공해야 하는 경우, 사용자를 틈새 화면(interstitial screen)으로 이동하게 하는
 단일 알림을 사용할 수 있습니다. 이 화면은
-이러한 이벤트를 요약하고, 사용자가 앱을 세부적으로 탐색할 수 있는 경로를 제공합니다. 이러한 스타일의 알림을 <em>간접 알림</em>이라고
-합니다.</p>
+이러한 이벤트를 요약하고, 사용자가 앱을 세부적으로 탐색할 수 있는 경로를 제공합니다. 이러한 스타일의 알림을
+<em>간접 알림</em>이라고 합니다.</p>
 
 <p>기본(직접) 알림과 달리, 간접 알림의
-틈새 화면에서 뒤로 버튼을 누르면 백 스택에 다른 화면이
+틈새 화면에서 Back 버튼을 누르면 백 스택에 다른 화면이
 추가되지 않고 알림이 트리거된 지점으로 사용자를 이동시킵니다. 사용자가
-틈새 화면에서 앱으로 들어가면, 위로 버튼 및 뒤로 버튼은 위에서 설명한 바와 같이 틈새 화면으로 돌아가지 않고, 기본 알림과 마찬가지로 앱 내에서
+틈새 화면에서 앱으로 들어가면, Up 버튼 및 Back 버튼은 위에서 설명한 바와 같이 틈새 화면으로 돌아가지 않고, 기본 알림과 마찬가지로 앱 내에서
 탐색을 수행합니다.</p>
 
 <p>예를 들어 Gmail을 사용 중인 사용자가 캘린더로부터 간접 알림을 받았다고 가정해 봅니다. 해당
 알림을 터치하면 틈새 화면이 열립니다. 이 화면에는 다른
-여러 이벤트에 대한 알림도 표시됩니다. 틈새 화면에서 뒤로 버튼을 터치하면 Gmail로 돌아갑니다. 특정
+여러 이벤트에 대한 알림도 표시됩니다. 틈새 화면에서 Back 버튼을 터치하면 Gmail로 돌아갑니다. 특정
 이벤트를 터치하면 사용자를 틈새 화면에서 나오게 하여
-해당 이벤트의 세부 정보를 보여주는 완전한 캘린더 앱으로 이동하게 됩니다. 이벤트 세부 정보 화면에서 위로 버튼과 뒤로 버튼을 누르면 캘린더의 최상위 뷰로 이동하게 됩니다.</p>
+해당 이벤트의 세부 정보를 보여주는 완전한 캘린더 앱으로 이동하게 됩니다. 이벤트 세부 정보 화면에서 Up 버튼과 Back 버튼을 누르면 캘린더의 최상위 뷰로 이동하게 됩니다.</p>
 
 <img src="{@docRoot}design/media/navigation_indirect_notification.png">
 
@@ -144,20 +144,20 @@
 초대를 사용자에게 알리기 위해 이러한 스타일의 알림을 사용하며, 이 초대는 몇 초 후에 자동으로 만료됩니다.</p>
 
 <p>탐색 동작 측면에서, 팝업 알림은 간접
-알림의 틈새 화면 동작을 상당히 많이 따릅니다. 뒤로 버튼을 누르면 팝업 알림이 해제됩니다. 사용자가 팝업을
-통해 앱으로 이동하면, 위로 및 뒤로 버튼은 기본 알림의 규칙에 따라 앱 내에서
+알림의 틈새 화면 동작을 상당히 많이 따릅니다. Back 버튼을 누르면 팝업 알림이 해제됩니다. 사용자가 팝업을
+통해 앱으로 이동하면, Up 및 Back 버튼은 기본 알림의 규칙에 따라 앱 내에서
 탐색합니다.</p>
 
 <img src="{@docRoot}design/media/navigation_popup_notification.png">
 
 <h2 id="between-apps">앱 간 탐색</h2>
 
-<p>Android 시스템의 기본이 되는 강점 중 하나는 앱이
-다른 앱을 실행할 수 있다는 점이며, 이로 인해 사용자는 한 앱에서 다른 앱으로 직접 이동할 수 있습니다. 예를 들어, 사진을 캡처해야 하는
-앱은 카메라 앱을 작동시킬 수 있으며, 카메라 앱은 사진을 해당 앱으로
-돌려줍니다. 이러한 기능은 개발자와 사용자 모두에게 매우 유용합니다. 왜냐하면 개발자는 쉽게 다른 앱의
-코드를 활용할 수 있고, 사용자는 흔히 수행하는
-작업을 일관된 환경으로 즐길 수 있기 때문입니다.</p>
+<p>Android 시스템의 본질적인 강점 중 하나는 앱이 
+다른 앱을 실행할 수 있다는 점이며, 이로 인해 사용자는 한 앱에서 다른 앱으로 직접 이동할 수 있습니다. 예를 들어,
+사진을 캡처해야 하는 앱은 카메라 앱을 작동시킬 수 있으며, 카메라 앱은 사진을
+해당 앱으로 돌려줍니다. 이러한 기능은 개발자와 사용자 모두에게 매우 유용합니다.
+왜냐하면 개발자는 쉽게 다른 앱의 코드를 활용할 수 있고, 사용자는 흔히 수행하는 작업을 일관된 환경으로
+즐길 수 있기 때문입니다.</p>
 
 <p>앱 간 탐색을 이해하려면 아래에서
 설명하는 Android 프레임워크 동작을 알아야 합니다.</p>
@@ -179,9 +179,9 @@
 
 <h4>예: "공유하기"를 지원하는 앱 간에 탐색하기</h4>
 
-<p>액티비티, 태스크, 인텐트가 어떻게 같이 동작하는지 이해하려면 한 앱이 다른 앱을 사용하여 콘텐츠
-공유를 어떻게 가능하게 하는지 생각해 보세요. 예를 들어, 홈에서 Play Store 앱을 실행하면
-새로운 태스크 A가 시작됩니다(아래 그림 참조). Play Store에서 탐색하다가 홍보 도서의 세부 정보를
+<p>액티비티, 태스크, 인텐트가 어떻게 같이 동작하는지 이해하려면 앱이 어떻게 사용자가 다른 앱을 사용하여 콘텐츠를
+공유할 수 있도록 하는지 생각해 보세요. 예를 들어, 홈에서 Play 스토어 앱을 실행하면 새로운 태스크
+A가 시작됩니다(아래 그림 참조). Play 스토어에서 탐색하다가 홍보 도서의 세부 정보를
 보기 위해 터치하면, 다른 액티비티를 추가하여 태스크를 연장하는 방식으로 사용자는 동일한 태스크에 머물게 됩니다. 공유하기
 작업을 트리거하면 공유하기 인텐트를 처리하도록
 등록된 액티비티(다양한 앱에서 제공)가 나열된 목록을 보여주는 대화 상자가 표시됩니다.</p>
@@ -192,15 +192,15 @@
 태스크 A의 연장으로 Gmail의 메일 작성 액티비티가 추가됩니다. Gmail의 백그라운드에서 실행되는 자체적인 태스크가 있을 경우, 해당 태스크는 아무런
 영향도 받지 않습니다.</p>
 
-<p>메일 작성 액티비티에서 메시지를 보내거나 뒤로 버튼을 터치하면, 사용자는
-도서 세부 정보 액티비티로 돌아가게 됩니다. 뒤로 버튼을 연이어 터치하면 Play
+<p>메일 작성 액티비티에서 메시지를 보내거나 Back 버튼을 터치하면, 사용자는
+도서 세부 정보 액티비티로 돌아가게 됩니다. Back 버튼을 연이어 터치하면 Play
 Store에서 탐색한 페이지로 되돌아가게 되어 결국에는 홈 화면에 이르게 됩니다.</p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_back.png">
 
-<p>하지만 사용자가 메일 작성 액티비티에서 위로 버튼을 터치하는 것은
+<p>하지만 사용자가 메일 작성 액티비티에서 Up 버튼을 터치하는 것은
 Gmail에 남아 있고자 하는 의지를 보이는 것입니다. 따라서, 이 경우 Gmail의 대화 목록 액티비티가 표시되고, 새로운 태스크 B가 생성됩니다. 새로운 태스크는
-항상 홈에 기반을 두고 있기 때문에, 대화 목록에서 뒤로 버튼을 터치하면 홈으로 되돌아가게 됩니다.</p>
+항상 홈에 기반을 두고 있기 때문에, 대화 목록에서 Back 버튼을 터치하면 홈으로 되돌아가게 됩니다.</p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_up.png">
 
@@ -208,6 +208,6 @@
 최근 앱 화면을 통해). Gmail에 이미 백그라운드에서 실행 중인 자체적인 태스크가 있을 경우,
 해당 태스크는 태스크 B로 대체됩니다. 이전 컨텍스트는 사용자의 새로운 목적에 따라 제거됩니다.</p>
 
-<p>앱 계층 구조 내의 액티비티에서 인텐트를 처리하도록 앱에서 등록하는 경우, 위로 탐색을 지정하는 방법에 대한 지침을 확인하려면
+<p>앱 계층 구조 내의 액티비티에서 인텐트를 처리하도록 앱에서 등록하는 경우, Up 탐색을 지정하는 방법에 대한 지침을 확인하려면
 <a href="#into-your-app">홈 화면 위젯 및
 알림을 통한 앱 탐색</a>을 참조하세요.</p>
diff --git a/docs/html-intl/intl/ko/distribute/index.jd b/docs/html-intl/intl/ko/distribute/index-ko.jd
similarity index 100%
rename from docs/html-intl/intl/ko/distribute/index.jd
rename to docs/html-intl/intl/ko/distribute/index-ko.jd
diff --git a/docs/html-intl/intl/ko/guide/components/activities.jd b/docs/html-intl/intl/ko/guide/components/activities.jd
new file mode 100644
index 0000000..001982f
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/activities.jd
@@ -0,0 +1,756 @@
+page.title=작업
+page.tags=activity,intent
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>이 문서의 내용</h2>
+<ol>
+  <li><a href="#Creating">액티비티 생성하기</a>
+    <ol>
+      <li><a href="#UI">사용자 인터페이스 구현하기</a></li>
+      <li><a href="#Declaring">매니페스트에서 액티비티 선언하기</a></li>
+    </ol>
+  </li>
+  <li><a href="#StartingAnActivity">액티비티 시작하기</a>
+    <ol>
+      <li><a href="#StartingAnActivityForResult">결과에 대한 액티비티 시작하기</a></li>
+    </ol>
+  </li>
+  <li><a href="#ShuttingDown">액티비티 종료하기</a></li>
+  <li><a href="#Lifecycle">액티비티 수명 주기 관리하기</a>
+    <ol>
+      <li><a href="#ImplementingLifecycleCallbacks">수명 주기 콜백 구현하기</a></li>
+      <li><a href="#SavingActivityState">액티비티 상태 저장하기</a></li>
+      <li><a href="#ConfigurationChanges">구성 변경 처리하기</a></li>
+      <li><a href="#CoordinatingActivities">액티비티 조정하기</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Key 클래스</h2>
+<ol>
+  <li>{@link android.app.Activity}</li>
+</ol>
+
+<h2>참고 항목</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/tasks-and-back-stack.html">작업 및 백
+스택</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+<p>{@link android.app.Activity}는 일종의 애플리케이션 구성 요소로서, 
+사용자와 상호작용할 수 있는 화면을 제공하여 전화 걸기, 사진 찍기, 이메일 보내기 또는 지도 보기 등의 일을 할 수 
+있습니다. 액티비티마다 창이 하나씩 주어져 이곳에 사용자 인터페이스를 끌어올 수 있습니다. 이 창은 
+일반적으로 화면을 가득 채우지만, 작은 창으로 만들어 다른 창 위에 띄울 수도 
+있습니다.</p>
+
+<p> 하나의 애플리케이션은 보통 여러 개의 액티비티가 느슨하게 서로 묶여 있는 형태로 
+구성됩니다. 통상 한 애플리케이션 내에서 하나의 액티비티가 "주요" 액티비티로 지정되며, 
+사용자가 이 애플리케이션을 처음 실행할 때 이 액티비티가 사용자에게 표시됩니다. 그런 후 
+각각의 액티비티는 여러 가지 작업을 수행하기 위해 또 다른 액티비티를 시작할 수 있습니다. 새로운
+액티비티가 시작될 때마다 이전 액티비티는 중단되지만 시스템은 해당 액티비티를
+스택("백 스택")에 보존합니다. 새로운 액티비티가 시작되면, 이것이 백 스택 위로 밀려와 사용자의 
+시선을 끕니다. 백 스택은 기본적인 "후입선출" 방식을 지키므로, 
+사용자가 현재 액티비티를 끝내고 <em>뒤로</em> 버튼을 누르면 해당 액티비티가 
+스택에서 튀어나와(소멸되고) 이전 액티비티를 재개합니다 (백 스택은
+<a href="{@docRoot}guide/components/tasks-and-back-stack.html">작업
+및 백 스택</a> 문서에서 상세하게 논의합니다).</p>
+
+<p>한 액티비티가 새로운 액티비티의 시작으로 인해 중단된 경우, 이 상태 변경은
+액티비티의 수명 주기 콜백 메서드를 통해 알려집니다. 
+액티비티가 시스템 액티비티를 생성, 중단, 재시작, 제거하는 등의 상태 변화로 인해 받을 수 있는 콜백 메서드는 여러 가지가 있습니다.
+
+ 각 콜백은 상태 변화에 알맞은 특정 작업을 수행할 기회를 제공합니다.
+ 예를 들어 액티비티가 중단되면 네트워크 또는 데이터베이스 연결과 같이 
+큰 개체는 모두 해제해야 합니다. 액티비티가 재개되면, 필요한 리소스를 
+다시 획득하여 중단된 작업을 재개할 수 있습니다. 이러한 상태 전환은
+모두 액티비티 수명 주기의 일부입니다.</p>
+
+<p>이 문서의 남은 부분에서는 다양한 액티비티 상태 사이의 전환을 적절히 관리할 수 있도록 액티비티 수명 주기가 작동하는 방식을 자세히 논하는 등,
+액티비티를 구축하고 사용하는 기본적 방법을
+설명합니다.</p>
+
+
+
+<h2 id="Creating">액티비티 생성하기</h2>
+
+<p>액티비티를 생성하려면 {@link android.app.Activity}의 하위 클래스(또는 이의
+기존 하위 클래스)를 생성해야 합니다. 하위 클래스에서는
+액티비티 생성, 중단, 재개, 소멸 시기 등과 같은
+수명 주기의 다양한 상태 간 액티비티가 전환될 때 시스템이 호출하는 콜백 메서드를 구현해야 합니다. 가장 중요한 두 가지 콜백 메서드는 
+다음과 같습니다.</p>
+
+<dl>
+  <dt>{@link android.app.Activity#onCreate onCreate()}</dt>
+  <dd>이 메서드는 반드시 구현해야 합니다. 시스템은 액티비티를 생성할 때 이것을 호출합니다.
+ 구현하는 중에 액티비티의 필수 구성 요소를 초기화해야 
+합니다.
+    무엇보다도 중요한 점은, 바로 여기서 {@link android.app.Activity#setContentView
+    setContentView()}를 호출해야 액티비티의 사용자 인터페이스 레이아웃을 정의할 수 있다는 점입니다.</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>시스템이 이 메서드를 호출하는 것은 사용자가 액티비티를 떠난다는 
+첫 번째 신호입니다(다만 이것이 항상 액티비티가 소멸 중이라는 뜻은 아닙니다). 현재 사용자 세션을 넘어서 
+지속되어야 하는 변경 사항을 커밋하려면 보통 이곳에서 해아 합니다(사용자가 
+돌아오지 않을 수 있기 때문입니다).</dd>
+</dl>
+
+<p>여러 액티비티 사이에서 원활한 사용자 경험을 제공하고, 액티비티 중단이나 심지어 
+소멸을 초래할 수도 있는 예상치 못한 간섭을 처리하기 위해 사용해야 하는 다른 수명 주기 
+콜백 메서드도 여러 가지 있습니다. 모든 수명 주기 콜백 메서드는 나중에 
+<a href="#Lifecycle">액티비티 수명 주기 관리</a> 섹션에서 자세히 논의할 것입니다.</p>
+
+
+
+<h3 id="UI">사용자 인터페이스 구현하기</h3>
+
+<p> 한 액티비티에 대한 사용자 인터페이스는 보기 계층&mdash;즉, 
+{@link android.view.View} 클래스에서 파생된 개체가 제공합니다.  각 보기는 액티비티 창 안의 특정한 직사각형 공간을
+ 제어하며 사용자 상호 작용에 대응할 수 있습니다. 예를 들어, 어떤 보기는 사용자가 터치하면 
+작업을 시작하는 버튼일 수 있습니다.</p>
+
+<p>Android는 레이아웃을 디자인하고 정리하는 데 사용할 수 있도록 여러 가지 보기를 미리 만들어 
+제공합니다. "위젯"이란 화면에 시각적(이자 대화형) 요소를 제공하는 보기입니다. 예를 들어 
+버튼, 텍스트 필드, 확인란이나 그저 하나의 이미지일 수도 있습니다. "레이아웃"은 선형 레이아웃, 격자형 레이아웃, 상대적 레이아웃과 같이 하위 레이아웃에 대해 독특한 레이아웃 모델을 제공하는 {@link
+android.view.ViewGroup}에서 파생된
+보기입니다. 또한, {@link android.view.View}와
+{@link android.view.ViewGroup} 클래스(또는 기존 하위 클래스)의 아래로 내려가서 위젯과 레이아웃을 생성하고
+이를 액티비티 레이아웃에 적용할 수 있습니다.</p>
+
+<p>보기를 사용하여 레이아웃을 정의하는 가장 보편적인 방식은 애플리케이션 리소스에 저장된 
+XML 레이아웃 파일을 사용하는 것입니다. 이렇게 하면 액티비티의 동작을 정의하는
+소스 코드와 별개로 사용자 인터페이스 디자인을 유지할 수 있습니다. 
+{@link android.app.Activity#setContentView(int) setContentView()}로 액티비티의 UI로서 레이아웃을 설정하고,
+해당 레이아웃의 리소스 ID를 전달할 수 있습니다. 그러나 액티비티 코드에 새로운 {@link android.view.View}를 생성하고
+ 새로운 {@link
+android.view.View}를 {@link android.view.ViewGroup}에 삽입하여 보기 계층을 구축한 뒤 루트 
+{@link android.view.ViewGroup}을 {@link android.app.Activity#setContentView(View)
+setContentView()}에 전달해도 해당 레이아웃을 사용할 수 있습니다.</p>
+
+<p>사용자 인터페이스 생성에 관한 정보는 <a href="{@docRoot}guide/topics/ui/index.html">사용자 인터페이스</a> 문서를 참조하십시오.</p>
+
+
+
+<h3 id="Declaring">매니페스트에서 액티비티 선언하기</h3>
+
+<p>시스템에서 액티비티에 액세스할 수 있게 하려면 이를 매니페스트 파일에서 
+선언해야만 합니다. 액티비티를 선언하려면 매니페스트 파일을 열고 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 요소를
+ <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+요소의 하위 항목으로 추가합니다. 예:</p>
+
+<pre>
+&lt;manifest ... &gt;
+  &lt;application ... &gt;
+      &lt;activity android:name=".ExampleActivity" /&gt;
+      ...
+  &lt;/application ... &gt;
+  ...
+&lt;/manifest &gt;
+</pre>
+
+<p>액티비티 레이블, 액티비티 아이콘 또는 액티비티 UI 스타일용 테마와 같이
+이 요소에 포함할 수 있는 속성이 여러 가지 있습니다.
+ <a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">{@code android:name}</a>
+ 속성이 유일한 필수 속성입니다. 이것이 액티비티의 클래스 이름을 지정합니다. 일단
+ 애플리케이션을 게시하고 나면 이 이름을 변경해서는 안 됩니다. 이름을 변경하면
+애플리케이션 바로 가기와 같은 일부 기능이 고장 날 수 있습니다(블로그 게시물의 <a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">바꿀 수 없는
+항목</a>을 참조하십시오).</p>
+
+<p>매니페스트에서 액티비티를 선언하는 것에 관한 자세한 정보는 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 요소
+ 참고 자료를 참조하십시오.</p>
+
+
+<h4>인텐트 필터 사용하기</h4>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> 요소 또한 여러 가지 인텐트 필터를 지정할 수 있습니다. 다른 애플리케이션 구성 요소가 이를 활성화하는 방법을 선언하기 위해 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a>를 사용하는 
+것입니다.</p>
+
+<p>Android SDK 도구를 사용하여 새 애플리케이션을 생성하는 경우, 개발자를 위해 
+생성되어 있는 스텁 액티비티에 자동으로 인텐트 필터가 포함되어 있어 "주요" 동작에 
+응답하는 액티비티를 선언하며, 이는 "시작 관리자" 범주에 배치해야 합니다. 인텐트 필터는 다음과 
+같은 형태를 띱니다.</p>
+
+<pre>
+&lt;activity android:name=".ExampleActivity" android:icon="@drawable/app_icon"&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 요소는 이것이 애플리케이션으로 가는 "주요" 진입 지점이라는 것을 나타냅니다. <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 요소는 이 액티비티가 시스템의 
+애플리케이션 시작 관리자에 목록으로 나열되어야 한다는 것을 나타냅니다(사용자가 이 액티비티를 시작할 수 있도록 해줌).</p>
+
+<p>애플리케이션이 자체 포함 방식이기를 원하고 다른 애플리케이션이 이 
+애플리케이션의 액티비티를 활성화하도록 허용하지 않고자 하면, 달리 인텐트 필터가 더 필요하지 않습니다. "주요" 동작과 "시작 관리자" 범주가 있는 
+액티비티는 하나뿐이어야 합니다(이전 예시 참조). 다른 애플리케이션에서 
+사용할 수 없게 하고자 하는 액티비티에는 인텐트 필터가 있으면 안 됩니다. 
+이러한 액티비티는 명시적인 인텐트를 사용해 직접 시작할 수 있습니다(이 내용은 다음 섹션에서 논의).</p>
+
+<p>그러나, 액티비티가 다른 애플리케이션(및 본인의 애플리케이션)에서 
+전달된 암시적 인텐트에 응답하도록 하려면 액티비티에 추가로 인텐트 필터를 정의해야만 
+합니다. 응답하게 하고자 하는 각 인텐트 유형별로 
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 요소를 포함하는 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a>를 하나씩 포함시켜야 하며, 선택 사항으로 <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 요소 및/또는 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a> 요소를 포함시킬 수 있습니다. 이와 같은 요소는 액티비티가 응답할 수 있는 인텐트의 유형을 
+나타냅니다.</p>
+
+<p>액티비티가 인텐트에 응답하는 방식에 관한 자세한 정보는 <a href="{@docRoot}guide/components/intents-filters.html">인텐트 및 인텐트 필터</a>
+문서를 참조하십시오.</p>
+
+
+
+<h2 id="StartingAnActivity">액티비티 시작하기</h2>
+
+<p>다른 액티비티를 시작하려면 {@link android.app.Activity#startActivity
+ startActivity()}를 호출한 다음 이에 시작하고자 하는 액티비티를 설명하는 {@link android.content.Intent}를 
+전달하면 됩니다. 인텐트는 시작하고자 하는 액티비티를 정확히 나타내거나, 수행하고자 하는 작업의 
+유형을 설명하는 것입니다(시스템이 적절한 액티비티를 선택하며, 
+이는
+ 다른 애플리케이션에서 가져온 것일 수도 있습니다). 인텐트는 소량의 데이터를 운반하여 시작된 액티비티에서
+ 사용할 수 있습니다.</p>
+
+<p>본인의 애플리케이션 안에서 작업하는 경우에는, 알려진 액티비티를 시작하기만 하면 되는 경우가 잦습니다.
+ 이렇게 하려면 시작하고자 하는 액티비티를 명시적으로 정의하는 인텐트를 클래스 이름을 
+사용하여 생성하면 됩니다. 예를 들어, 다음은 한 액티비티가 {@code
+SignInActivity}라는 이름의 다른 액티비티를 시작하는 방법입니다.</p>
+
+<pre>
+Intent intent = new Intent(this, SignInActivity.class);
+startActivity(intent);
+</pre>
+
+<p>그러나, 애플리케이션이 다른 몇 가지 동작을 수행하고자 할 수도 있습니다. 예를 들어 이메일 보내기, 문자 
+메시지 보내기 또는 상태 업데이트 등을 액티비티의 데이터를 사용하여 수행하는 것입니다. 이 경우, 본인의 애플리케이션에 
+그러한 동작을 수행할 자체 액티비티가 없을 수도 있습니다. 따라서 기기에 있는 다른 애플리케이션이 
+제공하는 액티비티를 대신 활용하여 동작을 수행하도록 할 수 있습니다. 바로 이 부분에서 
+인텐트의 진가가 발휘됩니다. 수행하고자 하는 동작을 설명하는 인텐트를 생성하면 
+시스템이 적절한 액티비티를
+ 다른 애플리케이션에서 시작하는 것입니다. 해당 인텐트를
+ 처리할 수 있는 액티비티가 여러 개 있는 경우, 사용자가 어느 것을 사용할지 선택합니다. 예를
+ 들어 사용자가 이메일 메시지를 보낼 수 있게 하려면, 다음과 같은 인텐트를 
+생성하면 됩니다.</p>
+
+<pre>
+Intent intent = new Intent(Intent.ACTION_SEND);
+intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);
+startActivity(intent);
+</pre>
+
+<p>인텐트에 추가된 {@link android.content.Intent#EXTRA_EMAIL} 추가 사항은 이메일이 전송되어야 할 이메일 주소의
+ 문자열 배열입니다. 이메일 애플리케이션이 이 인텐트에 
+응답하면, 애플리케이션은 추가 사항이 제공한 문자열 배열을 읽어낸 다음 이를 이메일 작성 양식의
+ "수신" 필드에 배치합니다. 이 상황에서 이메일 애플리케이션의 액티비티가 시작되고 사용자가
+ 작업을 끝내면 본인의 액티비티가 재개되는 것입니다.</p>
+
+
+
+
+<h3 id="StartingAnActivityForResult">결과에 대한 액티비티 시작하기</h3>
+
+<p>때로는 시작한 액티비티에서 결과를 받고 싶을 수도 있습니다. 그런 경우,
+ ({@link android.app.Activity#startActivity
+ startActivity()} 대신) {@link android.app.Activity#startActivityForResult
+ startActivityForResult()}를 호출해서 액티비티를 시작합니다. 그런 다음 후속 액티비티에서 결과를 
+받으려면, {@link android.app.Activity#onActivityResult onActivityResult()} 콜백
+ 메서드를 구현합니다. 해당 후속 액티비티가 완료되면, 이것이 {@link
+android.content.Intent} 형식으로 결과를 {@link android.app.Activity#onActivityResult onActivityResult()}
+ 메서드에 반환합니다.</p>
+
+<p>예를 들어 사용자가 연락처 중에서 하나를 고를 수 있도록 하고 싶을 수 있습니다. 
+즉 여러분의 액티비티가 해당 연락처의 정보로 무언가 할 수 있도록 하는 것입니다. 그와 같은 인텐트를 생성하고 결과를 처리하려면 
+다음과 같이 하면 됩니다.</p>
+
+<pre>
+private void pickContact() {
+    // Create an intent to "pick" a contact, as defined by the content provider URI
+    Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
+    startActivityForResult(intent, PICK_CONTACT_REQUEST);
+}
+
+&#64;Override
+protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+    // If the request went well (OK) and the request was PICK_CONTACT_REQUEST
+    if (resultCode == Activity.RESULT_OK &amp;&amp; requestCode == PICK_CONTACT_REQUEST) {
+        // Perform a query to the contact's content provider for the contact's name
+        Cursor cursor = getContentResolver().query(data.getData(),
+        new String[] {Contacts.DISPLAY_NAME}, null, null, null);
+        if (cursor.moveToFirst()) { // True if the cursor is not empty
+            int columnIndex = cursor.getColumnIndex(Contacts.DISPLAY_NAME);
+            String name = cursor.getString(columnIndex);
+            // Do something with the selected contact's name...
+        }
+    }
+}
+</pre>
+
+<p>이 예시는 액티비티 결과를 처리하기 위해 {@link
+android.app.Activity#onActivityResult onActivityResult()} 메서드에서 사용해야 할 기본 논리를
+ 나타낸 것입니다. 첫 번째 조건은 요청이 성공적인지 확인합니다. 요청에 성공했다면
+{@code resultCode}가 {@link android.app.Activity#RESULT_OK}가 됩니다. 또한, 이 결과가 응답하는 요청이 
+알려져 있는지도 확인합니다. 이 경우에는 {@code requestCode}가
+{@link android.app.Activity#startActivityForResult
+startActivityForResult()}와 함께 전송된 두 번째 매개변수와 일치합니다. 여기서부터 코드가
+{@link android.content.Intent}({@code data} 매개변수)로 반환된 데이터를 쿼리하여 액티비티 결과를 처리합니다.</p>
+
+<p>그러면 {@link
+android.content.ContentResolver}가 콘텐츠 제공자에 대한 쿼리를 수행하고, 콘텐츠 제공자는 쿼리된 데이터를 읽을 수 있게 허용하는
+{@link android.database.Cursor}를 반환합니다. 자세한 내용은
+<a href="{@docRoot}guide/topics/providers/content-providers.html">콘텐츠 제공자</a> 문서를 참조하십시오.</p>
+
+<p>인텐트 사용에 관한 자세한 정보는 <a href="{@docRoot}guide/components/intents-filters.html">인텐트 및 인텐트
+ 필터</a>문서를 참조하십시오.</p>
+
+
+<h2 id="ShuttingDown">액티비티 종료하기</h2>
+
+<p>액티비티를 종료하려면 해당 액티비티의 {@link android.app.Activity#finish
+finish()} 메서드를 호출하면 됩니다. 
+{@link android.app.Activity#finishActivity finishActivity()}를 호출하여 이전에 시작한 별도의 액티비티를 종료할 수도 있습니다.</p>
+
+<p class="note"><strong>참고:</strong> 대부분의 경우, 이와 같은 메서드를 사용하여 액티비티를 명시적으로 
+종료해서는 안 됩니다. 다음 섹션에서 액티비티 수명 주기에 관해 논의한 바와 같이, 
+Android 시스템이 액티비티의 수명을 대신 관리해주므로 직접 액티비티를 종료하지 
+않아도 됩니다. 이와 같은 메서드를 호출하면 예상되는 사용자 
+환경에 부정적인 영향을 미칠 수 있으며, 따라서 사용자가 액티비티의 이 인스턴스에 돌아오는 것을 절대 바라지 않는 경우에만 
+사용해야 합니다.</p>
+
+
+<h2 id="Lifecycle">액티비티 수명 주기 관리하기</h2>
+
+<p>콜백 메서드를 구현하여 액티비티의 수명 주기를 관리하는 것은 
+강력하고 유연한 애플리케이션 개발에 
+대단히 중요한 역할을 합니다. 액티비티의 수명 주기는 다른 액티비티와의 관계, 
+액티비티의 작업과 백 스택 등에 직접적으로 영향을 받습니다.</p>
+
+<p>액티비티는 기본적으로 세 가지 상태로 존재할 수 있습니다.</p>
+
+<dl>
+  <dt><i>재개됨</i></dt>
+    <dd>액티비티가 화면 전경에 있으며 사용자의 초점이 맞춰져 있습니다 (이 상태를 때로는 
+"실행 중"이라고 일컫기도 합니다).</dd>
+
+  <dt><i>일시정지됨</i></dt>
+    <dd>다른 액티비티가 전경에 나와 있고 사용자의 시선을 집중시키고 있지만, 이 액티비티도 여전히 표시되어 있습니다. 다시 말해,
+다른 액티비티가 이 액티비티 위에 표시되어 있으며 해당 액티비티는 부분적으로 투명하거나 
+전체 화면을 덮지 않는 상태라는 뜻입니다. 일시정지된 액티비티는 완전히 살아있지만({@link android.app.Activity}
+개체가 메모리에 보관되어 있고, 모든 상태 및 구성원 정보를 유지하며, 
+창 관리자에 붙어 있는 상태로 유지됨), 메모리가 극히 부족한 경우 시스템이 중단시킬 수 있습니다.</dd>
+
+  <dt><i>정지됨</i></dt>
+    <dd>이 액티비티가 다른 액티비티에 완전히 가려진 상태입니다(액티비티가 이제 
+"배경"에 위치함). 중단된 액티비티도 여전히 살아 있기는 마찬가지입니다({@link android.app.Activity}
+개체가 메모리에 보관되어 있고, 모든 상태와 구성원 정보를 유지하시만 창 관리자에 붙어 있지 <em>않음</em>
+). 그러나, 이는 더 이상 사용자에게 표시되지 않으며 
+다른 곳에 메모리가 필요하면 시스템이 종료시킬 수 있습니다.</dd>
+</dl>
+
+<p>액티비티가 일시정지 또는 중단된 상태이면, 시스템이 이를 메모리에서 삭제할 수 있습니다. 이러기 위해서는 
+종료를 요청하거나({@link android.app.Activity#finish finish()} 메서드를 호출) 단순히 이 액티비티의 프로세스를 중단시키면 
+됩니다.  액티비티가 다시 열릴 때에는(종료 또는 중단된 후에) 처음부터 다시 생성해야 
+합니다.</p>
+
+
+
+<h3 id="ImplementingLifecycleCallbacks">수명 주기 콜백 구현하기</h3>
+
+<p>위에서 설명한 바와 같이 액티비티가 여러 가지 상태를 오가며 전환되면, 이와 같은 내용이 
+여러 가지 콜백 메서드를 통해 통지됩니다. 콜백 메서드는 모두 후크로서, 
+액티비티 상태가 변경될 때 적절한 작업을 하기 위해 이를 재정의할 수 있습니다. 다음의 골격 
+액티비티에는 기본 수명 주기 메서드가 각각 하나씩 포함되어 있습니다.</p>
+
+
+<pre>
+public class ExampleActivity extends Activity {
+    &#64;Override
+    public void {@link android.app.Activity#onCreate onCreate}(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // The activity is being created.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStart onStart()} {
+        super.onStart();
+        // The activity is about to become visible.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onResume onResume()} {
+        super.onResume();
+        // The activity has become visible (it is now "resumed").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onPause onPause()} {
+        super.onPause();
+        // Another activity is taking focus (this activity is about to be "paused").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStop onStop()} {
+        super.onStop();
+        // The activity is no longer visible (it is now "stopped")
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onDestroy onDestroy()} {
+        super.onDestroy();
+        // The activity is about to be destroyed.
+    }
+}
+</pre>
+
+<p class="note"><strong>참고:</strong> 이와 같은 수명 주기 메서드를 구현하려면, 항상
+ 슈퍼클래스 구현을 호출한 다음에만 다른 작업을 시작할 수 있습니다(위의 예시 참조).</p>
+
+<p>이와 같은 메서드를 모두 합쳐 한 액티비티의 수명 주기 전체를 정의합니다. 이러한 메서드를 구현함으로써 
+액티비티 수명 주기 내의 세 가지 중첩된 루프를 모니터링할 수 있습니다. </p>
+
+<ul>
+<li>한 액티비티의 <b>전체 수명</b>은 {@link
+android.app.Activity#onCreate onCreate()} 호출과 {@link
+android.app.Activity#onDestroy} 호출 사이를 말합니다. 액티비티는 {@link android.app.Activity#onCreate onCreate()}에서 
+"전체" 상태(레이아웃 정의 등)의 설정을 수행한 다음 나머지 리소스를 
+모두 {@link android.app.Activity#onDestroy}에 해제해야 합니다. 예를 들어, 
+액티비티에 네트워크에서 데이터를 다운로드하기 위해 배경에서 실행 중인 스레드가 있는 경우, 이는 
+해당 스레드를 {@link android.app.Activity#onCreate onCreate()}에서 생성한 다음 {@link
+android.app.Activity#onDestroy}에서 그 스레드를 중단할 수 있습니다.</li>
+
+<li><p>액티비티의 <b>가시적 수명</b>은 {@link
+android.app.Activity#onStart onStart()} 호출에서 {@link
+android.app.Activity#onStop onStop()} 호출 사이를 말합니다. 이 기간 중에는 사용자가 액티비티를 화면에서 보고 이와 
+상호작용할 수 있습니다. 예컨대 {@link android.app.Activity#onStop onStop()}이 호출되어
+ 새 액티비티가 시작되면 이 액티비티는 더 이상 표시되지 않게 됩니다. 이와 같은 두 가지 메서드 중에서 
+사용자에게 액티비티를 표시하는 데 필요한 리소스를 유지하면 됩니다. 예를 들어,
+{@link
+android.app.Activity#onStart onStart()}에서 {@link android.content.BroadcastReceiver}를 등록하고 UI에 영향을 미치는 변화를 모니터링하고
+{@link android.app.Activity#onStop onStop()}에서 등록을 해제하면 사용자는 여러분이 무엇을 표시하고 있는지 더 이상 볼 수 
+없게 됩니다. 시스템은 액티비티의 전체 수명 내내 {@link android.app.Activity#onStart onStart()} 및 {@link
+android.app.Activity#onStop onStop()}을 여러 번 호출할 수 있으며, 이때 
+액티비티는 사용자에게 표시되었다 숨겨지는 상태를 오가게 됩니다.</p></li>
+
+<li><p>액티비티의 <b>전경 수명</b>은 {@link
+android.app.Activity#onResume onResume()} 호출에서 {@link android.app.Activity#onPause
+onPause()} 호출 사이를 말합니다. 이 기간 중에는 이 액티비티가 화면에서 다른 모든 액티비티 앞에 표시되며 사용자 입력도 
+여기에 집중됩니다.  액티비티는 전경에 나타났다 숨겨지는 전환을 자주 반복할 수 있습니다. 예를 들어
+, 기기가 절전 모드에 들어가거나 대화 상자가 
+나타나면 {@link android.app.Activity#onPause onPause()}가 호출됩니다. 이 상태는 자주 전환될 수 있으므로, 이 두 가지 메서드의 코드는 
+상당히 가벼워야 합니다. 그래야 전환이 느려 사용자를 기다리게 하는 일을 피할 수 있습니다.</p></li>
+</ul>
+
+<p>그림 1은 액티비티가 상태 사이에서 취할 수 있는 이와 같은 루프와 경로를 나타낸 것입니다.
+직사각형이 액티비티가 여러 상태 사이를 전환할 때 작업을 수행하도록 
+구현할 수 있는 콜백 메서드를 나타냅니다. <p>
+
+<img src="{@docRoot}images/activity_lifecycle.png" alt="" />
+<p class="img-caption"><strong>그림 1.</strong> 액티비티 수명 주기입니다.</p>
+
+<p>같은 수명 주기 콜백 메서드가 표 1에 나열되어 있으며, 이 표는 각 콜백 
+메서드를 더욱 상세하게 설명하며 액티비티의 전반적인 
+수명 주기 내에서 각 메서드의 위치를 나타내기도 합니다. 여기에는 콜백 메서드가 완료된 다음 
+시스템이 액티비티를 중단시킬 수 있는지 여부도 포함되어 있습니다.</p>
+
+<p class="table-caption"><strong>표 1.</strong> 액티비티 수명 주기
+콜백 메서드의 요약입니다.</p>
+
+<table border="2" width="85%" frame="hsides" rules="rows">
+<colgroup align="left" span="3"></colgroup>
+<colgroup align="left"></colgroup>
+<colgroup align="center"></colgroup>
+<colgroup align="center"></colgroup>
+
+<thead>
+<tr><th colspan="3">메서드</th> <th>설명</th> <th>완료 후 중단 가능?</th> <th>다음</th></tr>
+</thead>
+
+<tbody>
+<tr>
+  <td colspan="3" align="left"><code>{@link android.app.Activity#onCreate onCreate()}</code></td>
+  <td>액티비티가 처음 생성되었을 때 호출됩니다.
+      이곳에서 일반적인 정적 설정을 모두 수행해야 합니다. 
+즉 보기 생성, 목록에 데이터 바인딩하기 등을 말합니다.  이 메서드에는 
+액티비티의 이전 상태가 캡처된 경우 해당 상태를 포함한 
+번들 개체가 전달됩니다(이 문서 나중에 나오는 <a href="#actstate">액티비티 상태 저장하기</a>를 참조하십시오
+).
+      <p>이 뒤에는 항상 {@code onStart()}가 따라옵니다.</p></td>
+  <td align="center">아니요</td>
+      <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td rowspan="5" style="border-left: none; border-right: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onRestart
+onRestart()}</code></td>
+   <td>액티비티가 중단되었다가 다시 시작되기 직전에
+호출됩니다.
+       <p>이 뒤에는 항상 {@code onStart()}가 따라옵니다.</p></td>
+   <td align="center">아니요</td>
+   <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStart onStart()}</code></td>
+   <td>액티비티가 사용자에게 표시되기 직전에 호출됩니다.
+       <p>액티비티가 전경으로 나오면 {@code onResume()}이 뒤에 따라오고,
+액티비티가 숨겨지면 {@code onStop()}이 뒤에 따라옵니다.</p></td>
+    <td align="center">아니요</td>
+    <td align="center">{@code onResume()} <br/>또는<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td rowspan="2" style="border-left: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td align="left"><code>{@link android.app.Activity#onResume onResume()}</code></td>
+   <td>액티비티가 시작되고 사용자와 상호 작용하기 직전에
+호출됩니다.  이 시점에서 액티비티는 액티비티 
+스택의 맨 위에 있으며, 사용자 입력이 입력되고 있습니다.
+       <p>이 뒤에는 항상 {@code onPause()}가 따라옵니다.</p></td>
+   <td align="center">아니요</td>
+   <td align="center">{@code onPause()}</td>
+</tr>
+
+<tr>
+   <td align="left"><code>{@link android.app.Activity#onPause onPause()}</code></td>
+   <td>시스템이 다른 액티비티를 재개하기 직전에 
+호출됩니다.  이 메서드는 일반적으로 데이터를 유지하기 위해 저장되지 않은 변경 사항을 
+커밋하는 데, 애니메이션을 비롯하여 CPU를 소모하는 기타 작업을 중단하는 등 
+여러 가지 용도에 사용됩니다.  이 메서드는 무슨 일을 하든 매우 빨리 끝내야 합니다. 
+이것이 반환될 때까지 다음 액티비티가 재개되지 않기 때문입니다.
+       <p>액티비티가 다시 전경으로 돌아오면 {@code onResume()}이 뒤에 따라오고
+액티비티가 사용자에게 보이지 않게 되면{@code onStop()}이 뒤에 따라옵니다.
+</td>
+   <td align="center"><strong style="color:#800000">예</strong></td>
+   <td align="center">{@code onResume()} <br/>또는<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStop onStop()}</code></td>
+   <td>액티비티가 더 이상 사용자에게 표시되지 않게 되면 호출됩니다.  이것은
+ 액티비티가 소멸되고 있기 때문에 일어날 수도 있고, 다른 액티비티
+(기존 것이든 새로운 것이든)가 재개되어 이것을 덮고 있기 때문일 수도 있습니다.
+       <p>액티비티가 다시 사용자와 상호 작용하면
+{@code onRestart()}가 뒤에 따라오고 액티비티가 사라지면
+{@code onDestroy()}가 뒤에 따라옵니다.</p></td>
+   <td align="center"><strong style="color:#800000">예</strong></td>
+   <td align="center">{@code onRestart()} <br/>또는<br/> {@code onDestroy()}</td>
+</tr>
+
+<tr>
+   <td colspan="3" align="left"><code>{@link android.app.Activity#onDestroy
+onDestroy()}</code></td>
+   <td>액티비티가 소멸되기 전에 호출됩니다.  이것이 액티비티가 받는 
+마지막 호출입니다.  이것이 호출될 수 있는 경우는 액티비티가 
+완료되는 중이라서(누군가가 여기에 <code>{@link android.app.Activity#finish
+       finish()}</code>를 호출해서)일 수도 있고, 시스템이 공간을 절약하기 위해 액티비티의 이 인스턴스를 일시적으로 소멸시키는 
+중이기 때문일 수도 있습니다.  이와 같은 
+두 가지 시나리오는 <code>{@link
+       android.app.Activity#isFinishing isFinishing()}</code> 메서드로 구분할 수 있습니다.</td>
+   <td align="center"><strong style="color:#800000">예</strong></td>
+   <td align="center"><em>없음</em></td>
+</tr>
+</tbody>
+</table>
+
+<p>"완료 후 중단 가능?"이라는 레이블이 붙은 열은
+ 시스템이 <em>메서드가 반환된 후</em> 액티비티 코드의 다른 줄을 실행하지 않고도 
+언제든 이 액티비티를 호스팅하는 프로세스를 중단시킬 수 있는지 여부를 나타냅니다.  다음 세 가지 메서드가 "예"로 표시되어 있습니다({@link
+android.app.Activity#onPause
+onPause()}, {@link android.app.Activity#onStop onStop()} 및 {@link android.app.Activity#onDestroy
+onDestroy()}). {@link android.app.Activity#onPause onPause()}가 세 가지 메서드 중에서
+첫 번째이므로, 액티비티가 생성되면 {@link android.app.Activity#onPause onPause()}는 프로세스가 <em>지워지기 전에</em>
+반드시 호출되는 마지막 메서드입니다. 
+시스템이 비상 시에 메모리를 복구해야 할 경우, {@link
+android.app.Activity#onStop onStop()}와 {@link android.app.Activity#onDestroy onDestroy()}는
+호출되지 않을 수도 있습니다. 따라서, 중요한 영구적 데이터(사용자 편집 등)를 보관하기 위해 작성하는 경우에는 {@link android.app.Activity#onPause onPause()}를 사용해야 
+합니다. 그러나, {@link android.app.Activity#onPause onPause()} 중에 
+어느 정보를 유지해야 할지는 조심해서 선택해야 합니다. 이 메서드에 차단 절차가 있으면 
+다음 액티비티로의 전환을 차단하고 사용자 경험을 느려지게 할 수 있기 
+때문입니다.</p>
+
+<p> <b>중단 가능한</b> 열에 "아니요"로 표시된 메서드는 액티비티를 호스팅하는 프로세스를 
+보호하여 호출된 즉시 중단되지 않도록 방지합니다.  따라서 액티비티는 
+{@link android.app.Activity#onPause onPause()}가 반환되는 시기부터 
+{@link android.app.Activity#onResume onResume()}이 호출되는 시기 사이에 중단시킬 수 있습니다. 다시 중단시킬 수 있는 상태가 되려면 
+{@link android.app.Activity#onPause onPause()}가 다시 호출되어 반환되어야 합니다. </p>
+
+<p class="note"><strong>참고:</strong> 표 1에 나타난 이런 정의에 
+따르면 엄밀히 말해 "중단 가능한" 것이 아닌 액티비티라도 시스템이 중단시킬 수는 있습니다. 다만 이것은 다른 리소스가 없는 
+극단적인 상황에서만 발생합니다. 액티비티가 중단될 수 있는 시기가 
+언제인지는 <a href="{@docRoot}guide/components/processes-and-threads.html">프로세스 및
+ 스레딩</a> 문서에서 보다 자세히 논의합니다.</p>
+
+
+<h3 id="SavingActivityState">액티비티 상태 저장하기</h3>
+
+<p><a href="#Lifecycle">액티비티 수명 주기 관리하기</a> 도입부에서는 액티비티가 
+일시중지되거나 
+중단되었더라도 액티비티의 상태는 그대로 유지된다고 잠시 언급한 바 있습니다. 이것은 
+{@link android.app.Activity} 개체가 일시중지되거나 중단된 경우에도 
+메모리 안에 그대로 보관되었기 때문에 가능합니다. 즉 이 액티비티의 구성원과 현재 상태에 대한 모든 정보가 아직 살아 있다는 뜻입니다. 따라서, 사용자가 
+액티비티 내에서 변경한 모든 내용도 그대로 유지되어 액티비티가 전경으로 
+돌아갈 때("재개"될 때) 그와 같은 변경 사항도 그대로 존재하게 됩니다.</p>
+
+<p>그러나 시스템이 메모리를 복구하기 위해 액티비티를 소멸시키는 경우에는 {@link
+android.app.Activity} 개체가 소멸되므로 시스템이 액티비티의 상태를 온전히 유지한 채로 간단하게 재개할 수 없게 
+됩니다. 대신, 사용자가 다시 이 액티비티로 이동해 오면 시스템이 {@link android.app.Activity} 개체를 
+다시 생성해야 합니다. 하지만, 사용자는 시스템이 
+해당 액티비티를 소멸시켰다가 다시 생성했다는 것을 모릅니다. 
+따라서 액티비티가 예전과 똑같을 것이라고 예상할 것입니다. 이런 상황에서는
+액티비티 상태에 관한 정보를 저장할 수 있는 추가 콜백 메서드
+{@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}를 구현하여 액티비티 상태에 관한 중요한 정보를 보존할 수 있습니다.</p>
+
+<p>시스템이 {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+를 호출한 다음에 액티비티를 소멸되기 쉽게 만듭니다. 시스템은 {@link
+android.os.Bundle#putString putString()}와 {@link
+android.os.Bundle#putInt putInt()} 같은 메서드를 사용하여, 이 메서드에
+액티비티에 관한 정보를 이름-값 쌍으로 저장할 수 있는 {@link android.os.Bundle}을 전달합니다.
+ 그리고 시스템이 애플리케이션 프로세스를 지우고
+사용자가 액티비티로 다시 돌아오면, 시스템이 액티비티를 다시 생성하고
+{@link android.os.Bundle}을 {@link android.app.Activity#onCreate onCreate()}와 {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}에게 전달합니다. 이들 메서드 중
+하나를 사용하여 {@link android.os.Bundle}에서 저장된 상태를 추출하고 액티비티 상태
+를 복원할 수 있습니다. 복구할 상태 정보가 없는 경우, 여러분에게 전달되는 {@link
+android.os.Bundle}은 null입니다(액티비티가 처음 생성되었을 때 이런 경우가 
+발생합니다).</p>
+
+<img src="{@docRoot}images/fundamentals/restore_instance.png" alt="" />
+<p class="img-caption"><strong>그림 2.</strong> 액티비티의 상태가 온전한 채로 사용자의 
+초점에 다시 돌아오는 데에는 두 가지 방식이 있습니다. 하나는 액티비티가 소멸되었다가 다시 생성되어 액티비티가 
+이전에 저장된 상태를 복구해야 하는 경우, 다른 하나는 액티비티가 중단되었다가 재개되었으며 
+액티비티 상태가 온전히 유지된 경우입니다.</p>
+
+<p class="note"><strong>참고:</strong> 상태를 저장할 필요가 없는 경우도 있으므로 액티비티가 소멸되기 전에 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}가 호출된다는 보장은 없습니다
+
+(예컨대 사용자가 
+명시적으로
+액티비티를 닫기 위해 <em>뒤로</em> 버튼을 눌러서 액티비티를 떠날 때가 이에 해당합니다). 시스템이 {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()}를 호출하는 경우, {@link
+android.app.Activity#onStop onStop()} 전에 호출하는 것이 일반적이며 {@link android.app.Activity#onPause
+onPause()} 전에 호출할 가능성도 높습니다.</p>
+
+<p>그러나 아무것도 하지 않고 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}를 구현하지 않더라도,
+{@link android.app.Activity} 클래스의 기본 구현 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}가 일부 액티비티 상태를 복구합니다. 특히, 기본
+구현은 레이아웃에서 {@link
+android.view.View}가 나올 때마다 해당하는 {@link
+android.view.View#onSaveInstanceState onSaveInstanceState()} 메서드를 호출하고, 이 때문에 각 보기가 저장해야 하는 자체 관련 정보를 제공할 수 
+있게 해줍니다. Android 프레임워크를 사용하는 위젯은 거의 대부분 이 메서드를 
+필요에 따라 구현하므로, UI에 눈에 보이는 변경이 있으면 모두 자동으로 저장되며 액티비티를 다시 
+생성하면 복구됩니다. 예를 들어, {@link android.widget.EditText} 위젯은 사용자가 입력한 모든 텍스트
+를 저장하고 {@link android.widget.CheckBox} 위젯은 확인 여부를 저장합니다.
+ 여러분이 해야 할 유일한 작업은 상태를 저장하고자 하는 각 위젯에 고유 ID(<a href="{@docRoot}guide/topics/resources/layout-resource.html#idvalue">{@code android:id}</a>
+속성 포함)를 제공하는 것입니다. 위젯에 ID가 없으면 시스템이 그 위젯의 상태를
+저장할 수 없습니다.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<p>또한, 
+{@link android.R.attr#saveEnabled android:saveEnabled} 속성을 {@code "false"}로 설정하거나 
+{@link android.view.View#setSaveEnabled setSaveEnabled()} 메서드를 호출해서 레이아웃의 보기가 상태를 저장하지 못하도록 명시적으로 막을 수 있습니다. 보통은 이것을 비활성화해서는 
+안 되지만, 액티비티 UI의 상태를 다르게 복구하고자 하는 경우 그렇게 할 수도 있습니다.</p>
+</div>
+</div>
+
+<p>{@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}의 기본 구현이 액티비티 UI의 유용한 정보를 저장하지만
+추가 정보를 저장하려면 이를 재설정해야 할 수도 있습니다.
+예를 들어, 액티비티 수명에서 변경된 구성원 값을 변경해야 할 수도 있습니다(
+UI에서 복구된 값과 상관관계가 있을 수 있지만 이런 UI 값을 보유한 구성원은 기본적으로 복구되지 않습니다
+).</p>
+
+<p>{@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}의 기본 구현이 UI 상태를 저장하는 데 도움이 되기 때문에, 
+추가 상태 정보를 저장하기 위해 이 메서드를 재정의하려면 
+작업을 하기 전에 항상{@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}의 슈퍼클래스 구현
+을 호출해야 합니다. 이와 마찬가지로 {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}를 재정의하는 경우, 이것의 슈퍼클래스 구현을 호출해야 하기도 합니다. 
+이렇게 해야 기본 구현이 보기 상태를 복구할 수 있습니다.</p>
+
+<p class="note"><strong>참고:</strong> {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()}의 호출이 보장되지 않으므로
+ 이것은 액티비티의 일시적 상태(UI의 상태
+)를 기록하는 데에만 사용하고, 영구 데이터를 보관하는 데 사용해서는 안 됩니다.  대신, 사용자가 액티비티를 떠날 때 영구적인 데이터(데이터베이스에 저장되어야 
+하는 데이터 등)를 저장하려면 {@link
+android.app.Activity#onPause onPause()}를 사용해야 합니다.</p>
+
+<p>애플리케이션의 상태 저장 기능을 시험하는 좋은 방법은 기기를 회전해보고 화면 방향이
+바뀌는지 확인하는 것입니다. 화면 방향이 바뀌면 시스템은 액티비티를 
+소멸시켰다가 다시 생성하여 새 화면 구성에서 이용할 수 있을지 모르는 대체 
+리소스를 적용합니다. 이 이유 하나만으로도 액티비티가 다시 생성되었을 때 상태를 
+완전히 복구할 수 있어야 한다는 점이 대단히 중요합니다. 사용자는 애플리케이션을 사용하면서 화면을 
+자주 돌리기 때문입니다.</p>
+
+
+<h3 id="ConfigurationChanges">구성 변경 처리하기</h3>
+
+<p>몇몇 기기 구성은 런타임 중에 변경될 수 있습니다(예: 화면 방향, 키보드 가용성
+ 및 언어 등). 이러한 변경이 발생하면 Android는 실행 중인 액티비티를 다시 생성합니다
+(시스템이 {@link android.app.Activity#onDestroy}를 호출하고 즉시 {@link
+android.app.Activity#onCreate onCreate()}를 호출합니다). 이런 동작은
+여러분이 제공한 대체 리소스로 애플리케이션을 자동으로 다시 로딩함으로써 새로운 구성에 애플리케이션이 적응하는 것을 돕도록
+설계되었습니다
+(예: 다양한 화면 방향과 크기에 대한 다양한 레이아웃).</p>
+
+<p>액티비티를 적절히 설계하여 화면 방향 변경으로 인한 재시작을 감당할 수 있으며 
+위에 설명한 것처럼 액티비티 상태를 복구할 수 있도록 하면, 애플리케이션이 액티비티 수명 주기에서 
+예기치 못한 이벤트가 일어나도 더욱 탄력적으로 복구될 수 있습니다.</p>
+
+<p>이러한 재시작을 처리하는 가장 좋은 방법은 이전 섹션에서 논의한 바와 같이
+{@link
+ android.app.Activity#onSaveInstanceState onSaveInstanceState()}와 {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}(또는 {@link
+android.app.Activity#onCreate onCreate()})를 사용하여 액티비티 상태를 저장하고 복구하는 것입니다.</p>
+
+<p>런타임에 발생하는 구성 변경과 그 처리 방법에 대한 자세한 정보는 
+<a href="{@docRoot}guide/topics/resources/runtime-changes.html">런타임 변경 
+처리하기</a>에 대한 가이드를 읽어보십시오.</p>
+
+
+
+<h3 id="CoordinatingActivities">액티비티 조정하기</h3>
+
+ <p>한 액티비티가 다른 액티비티를 시작하면, 둘 모두 수명 주기 전환을 겪습니다. 첫 번째 액티비티는 
+일시중지하고 중단되는 반면(배경에서 계속 보이는 경우에는 중단되지 않습니다만), 다른 액티비티는 
+생성되는 것입니다. 이와 같은 액티비티가 디스크 또는 다른 속에 저장된 데이터를 공유하는 경우, 
+첫 번째 액티비티는 두 번째 액티비티가 생성되기 전에 완전히 중단되지 않는다는 점을 이해하는 것이 중요합니다. 
+그렇다기보다는, 두 번째 액티비티의 시작 과정이 첫 번째 액티비티 중단 과정과 겹쳐 일어납니다.
+</p>
+
+<p>수명 주기 콜백은 분명히 정의된 순서가 있으며 특히 두 개의 액티비티가 
+같은 프로세스 안에 있으면서 하나가 다른 하나를 시작하는 경우 순서가 더욱 확실합니다. 다음은 액티비티 A가
+액티비티 B를 시작할 때 발생하는 작업 순서입니다. </p>
+
+<ol>
+<li>액티비티 A의 {@link android.app.Activity#onPause onPause()} 메서드가 실행됩니다.</li>
+
+<li>액티비티 B의 {@link android.app.Activity#onCreate onCreate()}, {@link
+android.app.Activity#onStart onStart()}, {@link android.app.Activity#onResume onResume()}
+메서드가 순차적으로 실행됩니다 (이제 사용자는 액티비티 B에 시선을 집중합니다).</li>
+
+<li>그런 다음, 액티비티 A가 더 이상 화면에 표시되지 않는 경우 이 액티비티의 {@link
+android.app.Activity#onStop onStop()} 메서드가 실행됩니다.</li>
+</ol>
+
+ <p>이처럼 수명 주기 콜백의 순서를 예측할 수 있기 때문에 한 액티비티에서 다른 액티비티로 전환되는
+ 정보를 관리할 수 있습니다. 예를 들어 첫 번째 액티비티가 중단될 때 데이터베이스에 
+내용을 작성해서 다음 액티비티가 그 내용을 읽을 수 있도록 하려면, 데이터베이스에는 
+{@link android.app.Activity#onPause onPause()} 중에({@link
+android.app.Activity#onStop onStop()} 중이 아니라) 쓰기 작업을 해야 합니다.</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how Android maintains a history of activities and
+enables user multitasking, continue with the <b><a
+href="{@docRoot}guide/components/tasks-and-back-stack.html">Tasks and Back
+Stack</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/ko/guide/components/bound-services.jd b/docs/html-intl/intl/ko/guide/components/bound-services.jd
new file mode 100644
index 0000000..bf97b26
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/bound-services.jd
@@ -0,0 +1,658 @@
+page.title=바인딩된 서비스
+parent.title=서비스
+parent.link=services.html
+@jd:body
+
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>이 문서의 내용</h2>
+<ol>
+  <li><a href="#Basics">기본 정보</a></li>
+  <li><a href="#Creating">바인딩된 서비스 생성</a>
+    <ol>
+      <li><a href="#Binder">바인더 클래스 확장</a></li>
+      <li><a href="#Messenger">메신저 사용</a></li>
+    </ol>
+  </li>
+  <li><a href="#Binding">서비스에 바인딩</a></li>
+  <li><a href="#Lifecycle">바인딩된 서비스 수명 주기 관리</a></li>
+</ol>
+
+<h2>Key 클래스</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.content.ServiceConnection}</li>
+  <li>{@link android.os.IBinder}</li>
+</ol>
+
+<h2>샘플</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+      RemoteService}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>참고 항목</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/services.html">서비스</a></li>
+</ol>
+</div>
+
+
+<p>바인딩된 서비스란 클라이언트 서버 인터페이스 안의 서버를 말합니다. 바인딩된 서비스를 사용하면 구성 요소(활동 등)를 
+서비스에 바인딩되게 하거나, 요청을 보내고 응답을 수신하며 심지어는 
+프로세스간 통신(IPC)까지 수행할 수 있게 됩니다. 일반적으로 바인딩된 서비스는 다른 애플리케이션
+구성 요소를 도울 때까지만 살고 배경에서 무한히 실행되지 않습니다.</p>
+
+<p>이 문서는 다른 애플리케이션 구성 요소의
+서비스에 바인딩하는 방법을 포함하여 바인딩된 서비스를 만드는 방법을 보여줍니다. 하지만 일반적인 서비스에 관한 정보도 알아두는 것이 좋습니다. 
+서비스에서 알림을 전달하는 방법이나 서비스를 전경에서 실행되도록 설정하는 방법 등 여러 가지 
+추가 정보를 알아보려면 <a href="{@docRoot}guide/components/services.html">서비스</a> 문서를 참조하십시오.</p>
+
+
+<h2 id="Basics">기본 정보</h2>
+
+<p>바인딩된 서비스란 일종의 {@link android.app.Service} 클래스 구현으로, 
+이를 통해 다른 애플리케이션이 이 서비스에 바인딩하여 상호 작용할 수 있도록 해주는 것입니다. 한 서비스에 대한 바인딩을 제공하려면, 
+{@link android.app.Service#onBind onBind()} 콜백 메서드를 구현해야 합니다. 
+이 메서드는 클라이언트가 서비스와 상호 작용하는 데 사용하는 프로그래밍 인터페이스를 정의하는 {@link android.os.IBinder} 개체를
+반환합니다.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>시작된 서비스에 바인딩</h3>
+
+<p><a href="{@docRoot}guide/components/services.html">서비스</a>
+문서에서 논의된 바와 같이, 시작되었으면서도 바인딩된 서비스를 만들 수 있습니다. 다시 말해, 
+{@link android.content.Context#startService startService()}를 호출하여 서비스를 시작할 수 있으며 
+이를 통해 서비스가 무한히 실행되도록 할 수 있으며, {@link
+android.content.Context#bindService bindService()}를 호출하면 클라이언트가 해당 서비스에 바인딩되도록 할 수 있다는 것입니다.
+  <p>서비스를 시작되고 바인딩되도록 허용한 다음 서비스가 시작되면 
+시스템은 클라이언트가 모두 바인딩을 해제해도 서비스를 소멸시키지 <em>않습니다</em>. 대신, 
+직접 서비스를 확실히 중단시켜야 합니다. 그러려면 {@link android.app.Service#stopSelf stopSelf()} 또는 {@link
+android.content.Context#stopService stopService()}를 호출하면 됩니다.</p>
+
+<p>보통은 {@link android.app.Service#onBind onBind()}
+<em>또는</em> {@link android.app.Service#onStartCommand onStartCommand()}
+중 한 가지만 구현하지만, 둘 모두 구현해야 할 때도 있습니다. 예를 들어, 음악 플레이어의 경우 서비스를 무한히 실행하면서 
+바인딩도 제공하도록 허용하는 것이 유용하다는 결론을 내릴 수 있습니다. 이렇게 하면, 한 액티비티가 서비스로 하여금 음악을 재생하도록 
+시작한 다음 사용자가 애플리케이션을 떠나더라도 음악을 계속 재생하도록 할 수 있습니다. 그런 다음, 사용자가 애플리케이션으로 
+다시 돌아오면 이 액티비티가 서비스를 바인딩하여 재생 제어권을 다시 획득할 수 있습니다.</p>
+
+<p><a href="#Lifecycle">바인딩된 서비스 수명 주기 관리
+</a> 관련 섹션을 꼭 읽어보십시오. 시작된 서비스에 바인딩을 
+추가할 때 서비스 수명 주기에 관한 자세한 정보를 얻을 수 있습니다.</p>
+</div>
+</div>
+
+<p>클라이언트가 서비스에 바인딩하려면 {@link android.content.Context#bindService
+bindService()}를 호출하면 됩니다. 이 때, 반드시 {@link
+android.content.ServiceConnection}의 구현을 제공해야 하며 이것이 서비스와의 연결을 모니터링합니다. {@link
+android.content.Context#bindService bindService()} 메서드는 값 없이 즉시 반환됩니다. 
+그러나 Android 시스템이 클라이언트와 서비스 사이의 
+연결을 만드는 경우, 시스템은 {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()}를 {@link
+android.content.ServiceConnection}에서 호출하여 클라이언트가 서비스와 통신하는 데 사용할 수 있도록 {@link android.os.IBinder}를 
+전달하게 됩니다.</p>
+
+<p>여러 클라이언트가 한 번에 서비스에 연결될 수 있습니다. 그러나, 시스템이 서비스의 
+{@link android.app.Service#onBind onBind()} 메서드를 호출하여 {@link android.os.IBinder}를 검색하는 경우는 첫 번째 클라이언트가 
+바인딩되는 경우뿐입니다. 시스템은 그 후 같은 {@link android.os.IBinder}를 바인딩되는 추가 
+클라이언트 모두에 전달하며 이때는 {@link android.app.Service#onBind onBind()}를 다시 호출하지 않습니다.</p>
+
+<p>마지막 클라이언트가 서비스에서 바인딩을 해제하면 시스템은 서비스를 소멸시킵니다(
+{@link android.content.Context#startService startService()}가 서비스를 시작했을 경우 제외).</p>
+
+<p>바인딩된 서비스를 구현할 때 가장 중요한 부분은
+{@link android.app.Service#onBind onBind()} 콜백 메서드가 반환하는 인터페이스를 정의하는 것입니다. 
+서비스의 {@link android.os.IBinder} 인터페이스를 정의하는 방법에는 몇 가지가 있고, 다음
+섹션에서는 각 기법에 관해 논의합니다.</p>
+
+
+
+<h2 id="Creating">바인딩된 서비스 생성</h2>
+
+<p>바인딩을 제공하는 서비스를 생성할 때는 클라이언트가 서비스와 상호 작용하는 데 사용할 수 있는 프로그래밍 인터페이스를 제공하는 {@link android.os.IBinder}
+를 제공해야 합니다. 
+인터페이스를 정의하는 방법은 세 가지가 있습니다.</p>
+
+<dl>
+  <dt><a href="#Binder">바인더 클래스 확장</a></dt>
+  <dd>서비스가 본인의 애플리케이션 전용이며 클라이언트와 같은 과정으로 실행되는 
+경우(이런 경우가 흔함), 인터페이스를 생성할 때 {@link android.os.Binder} 클래스를
+ 확장하고 그 인스턴스를 
+{@link android.app.Service#onBind onBind()}에서 반환하는 방식을 사용해야 합니다. 클라이언트가 {@link android.os.Binder}를 받으며, 
+이를 사용하여 {@link android.os.Binder} 구현 또는 심지어 {@link android.app.Service}에서 
+사용할 수 있는 공개 메서드에 직접 액세스할 수 있습니다.
+  <p>이것은 서비스가 본인의 애플리케이션을 위해 단순히 배경에서 작동하는 요소에 그치는 경우 
+선호되는 기법입니다. 인터페이스를 생성할 때 이 방식을 사용하지 않는 유일한 이유는 
+서비스를 다른 애플리케이션에서나 별도의 프로세스에 걸쳐 사용하고 있는 경우뿐입니다.</dd>
+
+  <dt><a href="#Messenger">메신저 사용</a></dt>
+  <dd>인터페이스를 여러 프로세스에 걸쳐 적용되도록 해야 하는 경우, 서비스에 대한 
+인터페이스를 {@link android.os.Messenger}로 생성할 수 있습니다. 
+이 방식을 사용하면 서비스가 여러 가지 유형의 {@link
+android.os.Message} 개체에 응답하는 {@link android.os.Handler}를 정의합니다. 이 {@link android.os.Handler}
+가 {@link android.os.Messenger}의 기초이며, 이를 통해 클라이언트와 함께 {@link android.os.IBinder}
+를 공유할 수 있게 되어 클라이언트가 {@link
+android.os.Message} 개체를 사용해 서비스에 명령을 보낼 수 있게 해줍니다. 이외에도, 클라이언트가 자체적으로 {@link android.os.Messenger}를 
+정의하여 서비스가 메시지를 돌려보낼 수 있도록 할 수도 있습니다.
+  <p>이것이 프로세스간 통신(IPC)을 수행하는 가장 간단한 방법입니다. {@link
+android.os.Messenger}가 모든 요청을 단일 스레드에 대기하게 해서, 서비스를 스레드로부터 안전하게 
+설계하지 않아도 되기 때문입니다.</p>
+  </dd>
+
+  <dt>AIDL 사용하기</dt>
+  <dd>AIDL(Android Interface Definition Language)은 개체를 운영 체제가 이해할 수 있는 
+원시 데이터로 구성 해제한 다음 여러 프로세스에 걸쳐 집결하여 IPC를 수행하기 위해 
+필요한 모든 작업을 수행합니다. 이전 기법은 {@link android.os.Messenger}를 사용했는데, 
+사실 그 기본 구조가 AIDL을 기반으로 하고 있는 것입니다. 위에서 언급한 바와 같이 {@link android.os.Messenger}는 단일 스레드에 모든 클라이언트 요청
+대기열을 생성하므로 서비스는 한 번에 요청을 하나씩 수신합니다. 그러나, 
+서비스가 동시에 여러 요청을 처리하도록 하고 싶은 경우에는 AIDL을 직접 사용해도 
+됩니다. 이 경우, 서비스가 다중 스레딩을 할 수 있어야 하며 스레드로부터 안전하게 구축되었어야 합니다.
+  <p>AIDL을 직접 사용하려면
+프로그래밍 인터페이스를 정의하는 {@code .aidl} 파일을 생성해야 합니다. Android SDK 도구는
+이 파일을 사용하여 인터페이스를 구현하고 IPC를 처리하는 추상 클래스를 생성하고,
+그러면 개발자가 직접 이것을 서비스 내에서 확장하면 됩니다.</p>
+  </dd>
+</dl>
+
+  <p class="note"><strong>참고:</strong> 대부분의 애플리케이션의 경우, 
+바인딩된 서비스를 생성하기 위해 AIDL를 사용해서는 <strong>안 됩니다</strong>. 
+그러려면 다중 스레딩 기능이 필요할 수 있고, 따라서 더 복잡한 구현을 초래할 수 있기 때문입니다. 따라서 AIDL은 
+대부분의 애플리케이션에 적합하지 않으므로 이 문서에서는 여러분의 서비스에 이를 이용하는 방법에 대해 다루지 않습니다. AIDL을 직접 사용해야 한다는 확신이 드는 경우, 
+<a href="{@docRoot}guide/components/aidl.html">AIDL</a> 문서를 참조하십시오.
+</p>
+
+
+
+
+<h3 id="Binder">바인더 클래스 확장</h3>
+
+<p>서비스를 사용하는 것이 로컬 애플리케이션뿐이고 여러 프로세스에 걸쳐 작동할 필요가 없는 경우,
+나름의 {@link android.os.Binder} 클래스를 구현하여 
+클라이언트로 하여금 서비스 내의 공개 메서드에 직접 액세스할 수 있도록 할 수도 있습니다.</p>
+
+<p class="note"><strong>참고:</strong> 이것은 클라이언트와 서비스가 
+같은 애플리케이션 및 프로세스에 있는 경우에만 통하며, 이 경우가 가장 보편적입니다. 이 방식이 잘 통하는 경우를 예로 들면, 
+음악 애플리케이션에서 자체 서비스에 액티비티를 바인딩하여 배경에서 음악을 재생하도록 해야 하는 
+경우가 있습니다.</p>
+
+<p>이렇게 설정하는 방법은 다음과 같습니다.</p>
+<ol>
+  <li>서비스에서 다음 중 한 가지에 해당하는 {@link android.os.Binder}의 인스턴스를 생성합니다.
+    <ul>
+      <li>클라이언트가 호출할 수 있는 공개 메서드 포함</li>
+      <li>클라이언트가 호출할 수 있는 공개 메서드가 있는 현재{@link android.app.Service} 
+인스턴스를 반환</li>
+      <li>클라이언트가 호출할 수 있는 공개 메서드가 포함된 서비스가 호스팅하는 다른 클래스의 인스턴스를 반환
+</li>
+    </ul>
+  <li>{@link
+android.app.Service#onBind onBind()} 콜백 메서드에서 이 {@link android.os.Binder}의 인스턴스를 반환합니다.</li>
+  <li>클라이언트의 경우, {@link android.os.Binder}를 {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} 
+콜백 메서드에서 받아 제공된 메서드를 사용해 서비스를 바인딩하기 위해 호출합니다.</li>
+</ol>
+
+<p class="note"><strong>참고:</strong> 서비스와 클라이언트가 같은 애플리케이션에 
+있어야 하는 것은 그래야만 클라이언트가 반환된 개체를 캐스팅하여 해당 API를 적절하게 호출할 수 있기 때문입니다. 또한 
+서비스와 클라이언트는 같은 프로세스에 있어야 하기도 합니다. 이 기법에서는 
+여러 프로세스에 걸친 집결 작업을 전혀 수행하지 않기 때문입니다.</p>
+
+<p>예컨대, 어떤 서비스가 클라이언트에게 {@link android.os.Binder} 구현을 통해 서비스 내의 
+메서드에 액세스할 수 있도록 한다고 합시다.</p>
+
+<pre>
+public class LocalService extends Service {
+    // Binder given to clients
+    private final IBinder mBinder = new LocalBinder();
+    // Random number generator
+    private final Random mGenerator = new Random();
+
+    /**
+     * Class used for the client Binder.  Because we know this service always
+     * runs in the same process as its clients, we don't need to deal with IPC.
+     */
+    public class LocalBinder extends Binder {
+        LocalService getService() {
+            // Return this instance of LocalService so clients can call public methods
+            return LocalService.this;
+        }
+    }
+
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        return mBinder;
+    }
+
+    /** method for clients */
+    public int getRandomNumber() {
+      return mGenerator.nextInt(100);
+    }
+}
+</pre>
+
+<p>{@code LocalBinder}는 클라이언트에게 {@code LocalService}의 현재 인스턴스를 검색하기 위한 {@code getService()} 메서드
+를 제공합니다. 이렇게 하면 클라이언트가 서비스 내의 공개 메서드를 호출할 수 있습니다.
+ 클라이언트는 예컨대 서비스에서 {@code getRandomNumber()}를 호출할 수 있습니다.</p>
+
+<p>다음은 버튼을 클릭했을 때 {@code LocalService}에 바인딩되며 {@code getRandomNumber()}
+를 호출하는 액티비티를 나타낸 것입니다.</p>
+
+<pre>
+public class BindingActivity extends Activity {
+    LocalService mService;
+    boolean mBound = false;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to LocalService
+        Intent intent = new Intent(this, LocalService.class);
+        bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+
+    /** Called when a button is clicked (the button in the layout file attaches to
+      * this method with the android:onClick attribute) */
+    public void onButtonClick(View v) {
+        if (mBound) {
+            // Call a method from the LocalService.
+            // However, if this call were something that might hang, then this request should
+            // occur in a separate thread to avoid slowing down the activity performance.
+            int num = mService.getRandomNumber();
+            Toast.makeText(this, "number: " + num, Toast.LENGTH_SHORT).show();
+        }
+    }
+
+    /** Defines callbacks for service binding, passed to bindService() */
+    private ServiceConnection mConnection = new ServiceConnection() {
+
+        &#64;Override
+        public void onServiceConnected(ComponentName className,
+                IBinder service) {
+            // We've bound to LocalService, cast the IBinder and get LocalService instance
+            LocalBinder binder = (LocalBinder) service;
+            mService = binder.getService();
+            mBound = true;
+        }
+
+        &#64;Override
+        public void onServiceDisconnected(ComponentName arg0) {
+            mBound = false;
+        }
+    };
+}
+</pre>
+
+<p>위 예시는 클라이언트가 
+{@link android.content.ServiceConnection} 구현과 {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} 콜백을 사용하여 서비스에 바인딩하는 방법을 보여줍니다. 다음 
+섹션에서는 서비스에 바인딩하는 이러한 과정에 대해 좀 더 자세한 정보를 제공합니다.</p>
+
+<p class="note"><strong>참고:</strong> 위 예시에서는 서비스에서 분명히 바인딩을 해제하지는 않습니다. 
+그러나 모든 클라이언트는 적절한 시점에 바인딩을 해제해야 합니다(액티비티가 일시 중지될 때 등).</p>
+
+<p>더 많은 샘플 코드를 보려면 <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a>에서 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+LocalService.java}</a> 클래스와 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.html">{@code
+LocalServiceActivities.java}</a> 클래스를 참조하십시오.</p>
+
+
+
+
+
+<h3 id="Messenger">메신저 사용</h3>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h4>AIDL과 비교</h4>
+  <p>IPC를 수행해야 할 경우, 인터페이스에 대해 {@link android.os.Messenger}를 사용하는 것이
+AIDL로 구현하는 것보다 간단합니다. 왜냐하면 {@link android.os.Messenger}는
+모든 호출을 서비스에 대기시키지만 순수한 AIDL 인터페이스는 
+서비스에 동시에 요청을 전송하여 다중 스레딩을 처리해야 하기 때문입니다.</p>
+  <p>대부분의 애플리이션에서는 서비스가 다중 스레딩을 수행할 필요가 없으므로 {@link
+android.os.Messenger}를 사용하면 호출을 한 번에 하나씩 처리할 수 있습니다. 서비스가 
+다중 스레딩되는 것이 중요한 경우, 인터페이스를 정의하는 데 <a href="{@docRoot}guide/components/aidl.html">AIDL</a>을 사용해야 합니다.</p>
+</div>
+</div>
+
+<p>서비스가 원격 프로세스와 통신해야 한다면 서비스에 인터페이스를 제공하는 데 
+{@link android.os.Messenger}를 사용하면 됩니다. 이 기법을 사용하면 
+AIDL을 쓰지 않고도 프로세스간 통신(IPC)을 수행할 수 있게 해줍니다.</p>
+
+<p>다음은 {@link android.os.Messenger} 사용 방법을 간략하게 요약한 것입니다.</p>
+
+<ul>
+  <li>서비스가 클라이언트로부터 각 호출에 대해 콜백을 받는 {@link android.os.Handler}를 
+구현합니다.</li>
+  <li>{@link android.os.Handler}를 사용하여 {@link android.os.Messenger} 개체를 생성합니다
+(이것은 {@link android.os.Handler}에 대한 참조입니다).</li>
+  <li>{@link android.os.Messenger}가 {@link android.os.IBinder}를 생성하여 서비스가 
+{@link android.app.Service#onBind onBind()}로부터 클라이언트에게 반환하도록 합니다.</li>
+  <li>클라이언트는 {@link android.os.IBinder}를 사용하여 {@link android.os.Messenger}
+(서비스의 {@link android.os.Handler}를 참조)를 인스턴트화하고, 이를 이용하여
+{@link android.os.Message} 개체를 서비스에 전송합니다.</li>
+  <li>서비스가 각 {@link android.os.Message}를 {@link
+android.os.Handler}로 수신합니다. 구체적으로는 {@link android.os.Handler#handleMessage
+handleMessage()} 메서드를 사용합니다.</li>
+</ul>
+
+
+<p>이렇게 하면, 클라이언트가 서비스에서 호출할 "메서드"가 없습니다. 대신 클라이언트는 
+"메시지"({@link android.os.Message} 개체)를 전달하여 서비스가 
+{@link android.os.Handler}로 받을 수 있도록 합니다.</p>
+
+<p>다음은 {@link android.os.Messenger} 인터페이스를 사용하는 간단한 예시 서비스입니다.</p>
+
+<pre>
+public class MessengerService extends Service {
+    /** Command to the service to display a message */
+    static final int MSG_SAY_HELLO = 1;
+
+    /**
+     * Handler of incoming messages from clients.
+     */
+    class IncomingHandler extends Handler {
+        &#64;Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_SAY_HELLO:
+                    Toast.makeText(getApplicationContext(), "hello!", Toast.LENGTH_SHORT).show();
+                    break;
+                default:
+                    super.handleMessage(msg);
+            }
+        }
+    }
+
+    /**
+     * Target we publish for clients to send messages to IncomingHandler.
+     */
+    final Messenger mMessenger = new Messenger(new IncomingHandler());
+
+    /**
+     * When binding to the service, we return an interface to our messenger
+     * for sending messages to the service.
+     */
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        Toast.makeText(getApplicationContext(), "binding", Toast.LENGTH_SHORT).show();
+        return mMessenger.getBinder();
+    }
+}
+</pre>
+
+<p>{@link android.os.Handler}의 {@link android.os.Handler#handleMessage handleMessage()} 메서드에서
+서비스가 수신되는 {@link android.os.Message}를 받고
+{@link android.os.Message#what} 구성원에 기초하여 무엇을 할지 결정한다는 점을 눈여겨 보십시오.</p>
+
+<p>클라이언트는 서비스가 반환한 {@link
+android.os.IBinder}에 기초하여 {@link android.os.Messenger}를 생성하고 {@link
+android.os.Messenger#send send()}로 메시지를 전송하기만 하면 됩니다. 예를 들어, 다음은 
+서비스에 바인딩하여 {@code MSG_SAY_HELLO} 메시지를 서비스에 전달하는 간단한 액티비티입니다.</p>
+
+<pre>
+public class ActivityMessenger extends Activity {
+    /** Messenger for communicating with the service. */
+    Messenger mService = null;
+
+    /** Flag indicating whether we have called bind on the service. */
+    boolean mBound;
+
+    /**
+     * Class for interacting with the main interface of the service.
+     */
+    private ServiceConnection mConnection = new ServiceConnection() {
+        public void onServiceConnected(ComponentName className, IBinder service) {
+            // This is called when the connection with the service has been
+            // established, giving us the object we can use to
+            // interact with the service.  We are communicating with the
+            // service using a Messenger, so here we get a client-side
+            // representation of that from the raw IBinder object.
+            mService = new Messenger(service);
+            mBound = true;
+        }
+
+        public void onServiceDisconnected(ComponentName className) {
+            // This is called when the connection with the service has been
+            // unexpectedly disconnected -- that is, its process crashed.
+            mService = null;
+            mBound = false;
+        }
+    };
+
+    public void sayHello(View v) {
+        if (!mBound) return;
+        // Create and send a message to the service, using a supported 'what' value
+        Message msg = Message.obtain(null, MessengerService.MSG_SAY_HELLO, 0, 0);
+        try {
+            mService.send(msg);
+        } catch (RemoteException e) {
+            e.printStackTrace();
+        }
+    }
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to the service
+        bindService(new Intent(this, MessengerService.class), mConnection,
+            Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+}
+</pre>
+
+<p>이 예시에는 서비스가 클라이언트에 응답하는 방식이 나타나 있지 않다는 것을 유념하십시오. 서비스가 응답하게 하려면
+ 클라이언트에도 {@link android.os.Messenger}를 생성해야 합니다. 
+클라이언트가 {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()} 콜백을 받으면 {@link android.os.Messenger#send send()}메서드의 {@link android.os.Message#replyTo} 매개변수에서 클라이언트의 {@link android.os.Messenger}를 포함하는 {@link android.os.Message}를
+서비스에 전송합니다.
+</p>
+
+<p>양방향 메시지를 제공하는 방법의 예시는 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerService.html">{@code
+MessengerService.java}</a>(서비스) 및 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.html">{@code
+MessengerServiceActivities.java}</a>(클라이언트) 예시를 참조하십시오.</p>
+
+
+
+
+
+<h2 id="Binding">서비스에 바인딩</h2>
+
+<p>애플리케이션 구성 요소(클라이언트)를 서비스에 바인딩하려면 
+{@link android.content.Context#bindService bindService()}를 호출하면 됩니다. 그러면 Android
+system이 서비스의 {@link android.app.Service#onBind
+onBind()} 메서드를 호출하고, 이는 서비스와의 상호 작용을 위해 {@link android.os.IBinder}를 반환합니다.</p>
+
+<p>바인딩은 비동기식입니다. {@link android.content.Context#bindService
+bindService()}는 즉시 반환하고 클라이언트에게 {@link android.os.IBinder}를 반환하지 <em>않습니다</em>.
+ {@link android.os.IBinder}를 수신하려면 클라이언트는 {@link
+android.content.ServiceConnection}의 인스턴스를 생성하여 이를 {@link android.content.Context#bindService
+bindService()}에 전달해야 합니다. {@link android.content.ServiceConnection}에는
+{@link android.os.IBinder}를 전달하기 위해 시스템이 호출하는 콜백 메서드가 포함됩니다.</p>
+
+<p class="note"><strong>참고:</strong> 서비스에 바인딩할 수 있는 것은 액티비티, 서비스 및 
+콘텐츠 제공자뿐입니다. 브로드캐스트 수신자로부터는 서비스에 바인딩할 수 <strong>없습니다</strong>.</p>
+
+<p>따라서, 클라이언트로부터 서비스에 바인딩하려면 다음과 같이 해야 합니다. </p>
+<ol>
+  <li>{@link android.content.ServiceConnection}을 구현합니다.
+    <p>이 구현으로 두 가지 콜백 메서드를 재정의해야 합니다.</p>
+    <dl>
+      <dt>{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}</dt>
+        <dd>시스템이 이것을 호출하여 서비스의 
+{@link android.app.Service#onBind onBind()} 메서드가 반환한 {@link android.os.IBinder}를 전달합니다.</dd>
+      <dt>{@link android.content.ServiceConnection#onServiceDisconnected
+onServiceDisconnected()}</dt>
+        <dd>Android 시스템이 이것을 호출하는 경우는 서비스로의 연결이 
+예기치 못하게 끊어졌을 때, 즉 서비스가 충돌했거나 중단되었을 때 등입니다. 
+클라이언트가 바인딩을 해제한다고 이것이 호출되지는 <em>않습니다</em>.</dd>
+    </dl>
+  </li>
+  <li>{@link
+android.content.Context#bindService bindService()}를 호출하고 {@link
+android.content.ServiceConnection} 구현을 전달합니다. </li>
+  <li>시스템이 {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()} 콜백 메서드를 호출하면, 인터페이스가 정의한 메서드를 사용하여 
+서비스에 호출을 시작해도 됩니다.</li>
+  <li>서비스로부터 연결을 해제하려면 {@link
+android.content.Context#unbindService unbindService()}를 호출합니다.
+    <p>클라이언트가 소멸되면 이는 서비스에서 바인딩을 해제하게 되지만, 
+서비스와 상호 작용을 마쳤을 때 또는 액티비티가 일시 중지되었을 때에는 항상 바인딩을 해제해야 합니다. 
+이렇게 해야 서비스가 사용 중이 아닐 때에는 중지할 수 있습니다 
+(바인딩과 바인딩 해제의 적절한 시기는 아래에서 좀 더 논의합니다).</p>
+  </li>
+</ol>
+
+<p>예를 들어, 다음 코드 조각은 위와 같이 
+<a href="#Binder">바인더 클래스를 확장해서</a> 생성한 서비스와 클라이언트를 연결합니다. 그러므로 이것이 해야 하는 일은 반환된 
+{@link android.os.IBinder}를 {@code LocalService} 클래스에 캐스팅하고 {@code
+LocalService} 인스턴스를 요청하는 것뿐입니다.</p>
+
+<pre>
+LocalService mService;
+private ServiceConnection mConnection = new ServiceConnection() {
+    // Called when the connection with the service is established
+    public void onServiceConnected(ComponentName className, IBinder service) {
+        // Because we have bound to an explicit
+        // service that is running in our own process, we can
+        // cast its IBinder to a concrete class and directly access it.
+        LocalBinder binder = (LocalBinder) service;
+        mService = binder.getService();
+        mBound = true;
+    }
+
+    // Called when the connection with the service disconnects unexpectedly
+    public void onServiceDisconnected(ComponentName className) {
+        Log.e(TAG, "onServiceDisconnected");
+        mBound = false;
+    }
+};
+</pre>
+
+<p>이 {@link android.content.ServiceConnection}이 있으면 클라이언트는 
+이것을 {@link android.content.Context#bindService bindService()}에 전달하여 서비스에 바인딩할 수 있습니다. 예:</p>
+
+<pre>
+Intent intent = new Intent(this, LocalService.class);
+bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+</pre>
+
+<ul>
+  <li>{@link android.content.Context#bindService bindService()}의 첫 번째 매개변수는 바인딩할 서비스를 명시적으로 명명하는 
+{@link android.content.Intent}입니다(인텐트는 
+암시적일 수 있음).</li>
+<li>두 번째 매개변수는 {@link android.content.ServiceConnection} 개체입니다.</li>
+<li>세 번째 매개변수는 바인딩 옵션을 나타내는 플래그입니다. 서비스를 생성하기 위해 보통은 {@link
+android.content.Context#BIND_AUTO_CREATE}를 사용합니다(이미 살아 있는 상태가 아닌 경우). 
+가능한 기타 값은 {@link android.content.Context#BIND_DEBUG_UNBIND}
+ 및 {@link android.content.Context#BIND_NOT_FOREGROUND}, 또는 값이 없는 경우 {@code 0}입니다.</li>
+</ul>
+
+
+<h3>추가 참고 사항</h3>
+
+<p>다음은 서비스에 바인딩하는 데 관한 몇 가지 중요한 참고 사항입니다.</p>
+<ul>
+  <li>항상 {@link android.os.DeadObjectException} 예외를 트래핑해야 합니다. 
+이것은 연결이 끊어지면 발생합니다. 원격 메서드에 의해 발생하는 예외는 이것뿐입니다.</li>
+  <li>개체는 여러 프로세스에 걸쳐 감안된 참조입니다. </li>
+  <li>일반적으로, 클라이언트의 수명 주기를
+결합하고 분해하는 순간을 일치시키면서 바인딩과 바인딩 해제를 페어링해야 합니다. 예:
+    <ul>
+      <li>액티비티가 눈에 보이는 동안에만 서비스와 상호 작용해야 한다면 
+{@link android.app.Activity#onStart onStart()}에는 바인딩하고 {@link
+android.app.Activity#onStop onStop()}에는 바인딩을 해제해야 합니다.</li>
+      <li>
+배경에서 중단되었을 때도 액티비티가 응답을 받게 하고 싶다면 {@link android.app.Activity#onCreate onCreate()}에는 바인딩하고
+{@link android.app.Activity#onDestroy onDestroy()} 중에는 바인딩을 해제합니다. 
+이때, 사용자의 액티비티가 서비스가 실행되는 시간 전체에서(배경에서라도) 서비스를 사용한다는 것을 유념해야 합니다. 
+서비스가 다른 프로세스에 있을 경우, 사용자가 프로세스의 가중치를 높이면 시스템이
+이를 중단할 가능성이 높아집니다.</li>
+    </ul>
+    <p class="note"><strong>참고:</strong> 일반적으로는, 액티비티의 {@link android.app.Activity#onResume onResume()}와 {@link
+android.app.Activity#onPause onPause()}에는 바인딩하거나 바인딩을 해제하지 <strong>말아야</strong> 합니다. 이러한 콜백은 모든 수명 주기 전환에서 발생하고
+이런 전환에서 발생하는 처리는
+최소한으로 유지해야 하기 때문입니다. 또한, 
+사용자 애플리케이션의 여러 액티비티가 동일한 서비스에 바인딩되었고 
+두 액티비티 사이에 전환이 있을 경우, 현재 액티비티의 바인딩이 해제된 후(일시중지 중) 다음 액티비티가 바인딩하기 전(재개 중)에
+서비스가 제거되었다가 다시 생성될 수 있습니다 (수명 주기를 조절하기 위한 이러한 액티비티 전환은
+<a href="{@docRoot}guide/components/activities.html#CoordinatingActivities">액티비티</a>
+문서에 설명되어 있습니다).</p>
+</ul>
+
+<p>더 많은 샘플 코드를 보려면 <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a>의 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+RemoteService.java}</a> 클래스를 참조하십시오.</p>
+
+
+
+
+
+<h2 id="Lifecycle">바인딩된 서비스 수명 주기 관리</h2>
+
+<p>서비스가 모든 클라이언트로부터 바인딩 해제되면, Android 시스템이 이를 소멸시킵니다(다만 
+{@link android.app.Service#onStartCommand onStartCommand()}와도 함께 시작된 경우는 예외). 
+따라서, 서비스가 순전히 바인딩된 서비스일 경우에는 해당 서비스의 수명 주기를 관리하지 않아도 됩니다.
+클라이언트에 바인딩되었는지를 근거로 Android 시스템이 대신 관리해주기 때문입니다.</p>
+
+<p>그러나 {@link android.app.Service#onStartCommand
+onStartCommand()} 콜백 메서드를 구현하기로 선택하는 경우라면 서비스를 확실히 중지해야 합니다.
+서비스가 현재 <em>시작된 것</em>으로 간주되기 때문입니다. 이런 경우, 서비스는 클라이언트에 바인딩되었는지 여부와 관계없이
+{@link android.app.Service#stopSelf()}와 함께 스스로 중단되거나 다른 구성 요소가{@link
+android.content.Context#stopService stopService()}를 호출할 때까지 실행됩니다.
+</p>
+
+<p>또한, 서비스가 시작되고 바인딩을 허용할 경우 시스템이
+{@link android.app.Service#onUnbind onUnbind()} 메서드를 호출하면
+{@code true}를 선택적으로 반환할 수 있습니다. 다음에 클라이언트가 서비스에 바인딩할 때({@link
+android.app.Service#onBind onBind()}에 대한 호출을 수신하지 않고) {@link android.app.Service#onRebind
+onRebind()}에 대한 호출을 받을지 여부에 따라 결정됩니다. {@link android.app.Service#onRebind
+onRebind()}가 void를 반환하였지만 클라이언트가
+{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()} 콜백에서 {@link android.os.IBinder}를 여전히 수신합니다.
+아래 그림 1은 이런 수명 주기의 논리를 나타냅니다.</p>
+
+
+<img src="{@docRoot}images/fundamentals/service_binding_tree_lifecycle.png" alt="" />
+<p class="img-caption"><strong>그림 1.</strong> 시작되었으며 바인딩도 허용하는 서비스의 수명 주기입니다.
+</p>
+
+
+<p>시작된 서비스의 수명 주기에 관한 자세한 정보는 <a href="{@docRoot}guide/components/services.html#Lifecycle">서비스</a> 문서를 참조하십시오.</p>
+
+
+
+
diff --git a/docs/html-intl/intl/ko/guide/components/fragments.jd b/docs/html-intl/intl/ko/guide/components/fragments.jd
new file mode 100644
index 0000000..a41250c
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/fragments.jd
@@ -0,0 +1,812 @@
+page.title=프래그먼트
+parent.title=액티비티
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>이 문서의 내용</h2>
+  <ol>
+    <li><a href="#Design">디자인 철학</a></li>
+    <li><a href="#Creating">프래그먼트 생성</a>
+      <ol>
+        <li><a href="#UI">사용자 인터페이스 추가하기</a></li>
+        <li><a href="#Adding">액티비티에 프래그먼트 추가</a></li>
+      </ol>
+    </li>
+    <li><a href="#Managing">프래그먼트 관리</a></li>
+    <li><a href="#Transactions">프래그먼트 트랜잭션 수행</a></li>
+    <li><a href="#CommunicatingWithActivity">액티비티와 통신</a>
+      <ol>
+        <li><a href="#EventCallbacks">액티비티로의 이벤트 콜백 생성</a></li>
+        <li><a href="#ActionBar">작업 모음에 항목 추가</a></li>
+      </ol>
+    </li>
+    <li><a href="#Lifecycle">프래그먼트 수명 주기 처리</a>
+      <ol>
+        <li><a href="#CoordinatingWithActivity">액티비티 수명 주기와 조화</a></li>
+      </ol>
+    </li>
+    <li><a href="#Example">예</a></li>
+  </ol>
+
+  <h2>Key 클래스</h2>
+  <ol>
+    <li>{@link android.app.Fragment}</li>
+    <li>{@link android.app.FragmentManager}</li>
+    <li>{@link android.app.FragmentTransaction}</li>
+  </ol>
+  
+  <h2>참고 항목</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/fragments/index.html">프래그먼트로 동적 UI 구축하기</a></li>
+    <li><a href="{@docRoot}guide/practices/tablets-and-handsets.html">태블릿
+및 핸드셋 지원</a></li>
+  </ol>
+</div>
+</div>
+
+<p>{@link android.app.Fragment}는 동작 또는 
+{@link android.app.Activity} 내에서 사용자 인터페이스의 일부를 나타냅니다. 여러 개의 프래그먼트를 하나의 액티비티에 
+조합하여 창이 여러 개인 UI를 구축할 수 있으며, 하나의 프래그먼트를 여러 액티비티에서 재사용할 수 있습니다. 프래그먼트는 자체 수명 주기를 가지고, 자체 입력 이벤트를 받으며, 
+액티비티 실행 중에 추가 및 제거가 가능한 액티비티의 모듈식 섹션이라고 
+생각하면 됩니다(다른 액티비티에 
+재사용할 수 있는 "하위 액티비티"와 같은 개념).</p>
+
+<p>프래그먼트는 항상 액티비티 내에 포함되어 있어야 하며 해당 프래그먼트의 수명 주기는 
+호스트 액티비티의 수명 주기에 직접적으로 영향을 받습니다. 예를 들어 액티비티가 일시정지되는 경우, 그 안의 모든 프래그먼트도 
+일시정지되며 액티비티가 소멸되면 모든 프래그먼트도 마찬가지로 소멸됩니다. 그러나 액티비티가 실행 중인 
+동안에는(<em>재개됨</em> <a href="{@docRoot}guide/components/activities.html#Lifecycle">수명 주기 상태</a>에 있을 때를 말합니다) 
+각 프래그먼트를 추가 또는 제거하는 등 개별적으로 조작할 수 있습니다. 그와 같은 프래그먼트 트랜잭션을 
+수행할 때에는 이를 액티비티가 관리하는 백 스택에도 
+추가할 수 있습니다. 각 백 스택 항목이 발생한 프래그먼트 트랜잭션의 
+기록이 됩니다. 이 백 스택을 사용하면 사용자가 프래그먼트 트랜잭션을 거꾸로 돌릴 수 있습니다(뒤로 이동).
+이때 <em>뒤로</em> 버튼을 누르면 됩니다.</p>
+
+<p>프래그먼트를 액티비티 레이아웃의 일부로 추가하는 경우, 이는 액티비티의 보기 계층 내부의 {@link
+android.view.ViewGroup} 안에 살며, 해당 프래그먼트가 자신의 보기 
+레이아웃을 정의합니다.
+프래그먼트를 액티비티 레이아웃에 삽입하려면 해당 프래그먼트를 
+액티비티의 레이아웃 파일에서 {@code &lt;fragment&gt;} 요소로 선언하거나, 애플리케이션 코드에서 이를 
+기존의 {@link android.view.ViewGroup}에 추가하면 됩니다. 그러나 프래그먼트가 
+액티비티 레이아웃의 일부분이어야만 하는 것은 아닙니다. 나름의 UI가 없는 프래그먼트도 액티비티를 위한 
+보이지 않는 작업자로 사용할 수 있습니다.</p>
+
+<p>이 문서에서는 프래그먼트를 사용하도록 애플리케이션을 구축하는 법을 
+설명합니다. 그중에는 프래그먼트를 액티비티의 백 스택에 추가했을 때 프래그먼트가 자신의 상태를 유지하는 방법, 
+액티비티 및 액티비티 내의 다른 프래그먼트와 이벤트를 공유하는 방법과 액티비티의 
+작업 모음에 참가하는 법 등등 여러 가지가 포함됩니다.</p>
+
+
+<h2 id="Design">디자인 철학</h2>
+
+<p>Android가 프래그먼트를 처음 도입한 것은 Android 3.0(API 레벨 11)부터입니다. 기본적으로 
+태블릿과 같은 큰 화면에서 보다 역동적이고 유연한 UI 디자인을 지원하는 것이 목적이었습니다. 태블릿의 화면은 
+핸드셋 화면보다 훨씬 크기 때문에 UI 구성 요소를 조합하고 상호 교환할 공간이 
+더 많습니다. 프래그먼트는 개발자가 보기 계층에 복잡한 변경 내용을 관리하지 않아도 
+그러한 디자인을 사용할 수 있도록 해주는 것입니다. 한 액티비티의 레이아웃을 여러 프래그먼트로 나누면 
+런타임에 액티비티의 외관을 수정할 수도 있고 그러한 변경 내용을 해당 액티비티가 관리하는 
+백 스택에 보존할 수도 있습니다.</p>
+
+<p>예를 들어 뉴스 애플리케이션이라면 하나의 프래그먼트를 사용하여 
+왼쪽에 기사 목록을 표시하도록 하고 또 다른 프래그먼트로 오른쪽에 기사 내용을 표시하도록 할 수 있습니다. 두 프래그먼트 모두 
+한 액티비티에서 양쪽으로 나란히 나타나며, 각 프래그먼트에 나름의 수명 주기 콜백 메서드가 있고 
+각자 사용자 입력 이벤트를 따로 처리하게 됩니다. 따라서, 사용자는 기사를 선택하는 데 한 액티비티를 쓰고 
+기사를 읽는 데 또 다른 액티비티를 선택하는 대신에 같은 액티비티 안에서 기사를 선택하고 읽는 과정을 
+모두 끝낼 수 있는 것입니다. 이것은 그림 1에 나타낸 태블릿 레이아웃과 같습니다.</p>
+
+<p>프래그먼트를 디자인할 때에는 각 프래그먼트를 모듈식이며 재사용 가능한 액티비티 구성 요소로 만들어야 합니다. 
+다시 말해, 각 프래그먼트가 나름의 레이아웃을 따로 정의하고 자기만의 수명 주기 콜백으로 자기 나름의 동작을 정의하기 때문에 
+한 프래그먼트를 여러 액티비티에 포함시킬 수 있습니다. 그러므로 재사용을 염두에 두고 디자인하며 
+한 프래그먼트를 또 다른 프래그먼트로부터 직접 조작하는 것은 삼가야 합니다. 이것은 특히 모듈식 프래그먼트를 사용하면 
+프래그먼트 조합을 여러 가지 화면 크기에 맞춰 변경할 수 있도록 해주기 때문에 중요한 요점입니다. 태블릿과 핸드셋을 모두 지원하는 
+애플리케이션을 디자인하는 경우, 사용 가능한 화면 공간을 토대로 사용자 경험을 최적화하도록 프래그먼트를 
+여러 레이아웃 구성에 재사용할 수 있습니다. 예를 들어 핸드셋에서의 경우 
+프래그먼트를 분리해서 단일 창 UI를 제공하도록 해야할 수 있습니다. 같은 액티비티 안에 하나 이상이 들어가지 않을 수 
+있기 때문입니다.</p>
+
+<img src="{@docRoot}images/fundamentals/fragments.png" alt="" />
+<p class="img-caption"><strong>그림 1.</strong> 프래그먼트가 정의한 두 가지 UI 모듈이 
+태블릿 디자인에서는 하나의 액티비티로 조합될 수 있는 반면 핸드셋 디자인에서는 분리될 수 있다는 것을 
+예시로 나타낸 것입니다.</p>
+
+<p>예를 들어&mdash;뉴스 애플리케이션 예시를 계속 사용하겠습니다&mdash;이 애플리케이션을 태블릿 크기의 기기에서 실행하는 경우, 
+애플리케이션 내의 <em>액티비티 A</em> 안에 두 개의 프래그먼트를 포함시킬 수 있습니다. 그러나 
+핸드셋 크기의 화면에서라면 두 프래그먼트를 모두 쓸 만큼 공간이 충분치 않습니다. 
+따라서 <em>액티비티 A</em>에는 기사 목록에 해당되는 프래그먼트만 포함하고, 사용자가 기사를 하나 선택하면 이것이 
+<em>액티비티 B</em>를 시작합니다. 여기에 기사를 읽을 두 번째 프래그먼트가 포함되어 있습니다. 따라서 이 애플리케이션은 
+서로 다른 조합으로 프래그먼트를 재사용함으로써 태블릿과 핸드셋을 둘 다 지원하는 
+것입니다(그림 1 참조).</p>
+
+<p>여러 가지 화면 구성에 맞게 여러 가지 프래그먼트 조합으로 애플리케이션을 디자인하는 법에 대한 자세한 정보는 
+<a href="{@docRoot}guide/practices/tablets-and-handsets.html">태블릿 및 핸드셋 지원</a>에 대한 가이드를 참조하십시오.</p>
+
+
+
+<h2 id="Creating">프래그먼트 생성</h2>
+
+<div class="figure" style="width:327px">
+<img src="{@docRoot}images/fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>그림 2.</strong> 프래그먼트의 수명 주기(
+소속 액티비티가 실행 중일 때).</p>
+</div>
+
+<p>프래그먼트를 생성하려면 {@link android.app.Fragment}의 하위 클래스(또는 이의 기존
+하위 클래스)를 생성해야 합니다. {@link android.app.Fragment} 클래스에는 
+{@link android.app.Activity}와 아주 유사해 보이는 코드가 있습니다. 여기에는 액티비티와 비슷한 콜백 메서드가 들어 있습니다. 
+예를 들어 {@link android.app.Fragment#onCreate onCreate()}, {@link android.app.Fragment#onStart onStart()},
+{@link android.app.Fragment#onPause onPause()} 및 {@link android.app.Fragment#onStop onStop()} 등입니다. 사실, 
+기존 Android 애플리케이션을 변환하여 프래그먼트를 사용하도록 하려면 그저 
+액티비티의 콜백 메서드에서 프래그먼트에 해당되는 콜백 메서드로 코드를 옮기기만 하면 
+될 수도 있습니다.</p>
+
+<p>보통은 최소한 다음과 같은 수명 주기 메서드를 구현해야 합니다.</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onCreate onCreate()}</dt>
+  <dd>시스템은 프래그먼트를 생성할 때 이것을 호출합니다. 구현 내에서 프래그먼트의 기본 구성 요소 중 
+프래그먼트가 일시정지되거나 중단되었다가 재개되었을 때 유지하고자 하는 것을 
+초기화해야 합니다.</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+  <dd>시스템은 프래그먼트가 자신의 사용자 인터페이스를 처음으로 그릴 시간이 되면 
+이것을 호출합니다. 프래그먼트에 맞는 UI를 그리려면 메서드에서 {@link android.view.View}를 반환해야 합니다. 
+이 메서드는 프래그먼트 레이아웃의 루트입니다. 프래그먼트가 UI를 제공하지 않는 경우 null을 반환하면 
+됩니다.</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>시스템이 이 메서드를 호출하는 것은 사용자가 프래그먼트를 떠난다는 
+첫 번째 신호입니다(다만 이것이 항상 프래그먼트가 소멸 중이라는 뜻은 아닙니다). 현재 사용자 세션을 넘어서 
+지속되어야 하는 변경 사항을 커밋하려면 보통 이곳에서 해아 합니다(사용자가 
+돌아오지 않을 수 있기 때문입니다).</dd>
+</dl>
+
+<p>대부분의 애플리케이션은 각각의 프래그먼트에 이와 같은 메서드를 최소한 세 개씩 
+구현해야 하지만, 프래그먼트 수명 주기의 여러 단계를 처리하려면 사용해야 하는 다른 콜백 메서드도 
+많이 있습니다. 모든 수명 주기 콜백 메서드는 나중에 
+<a href="#Lifecycle">프래그먼트 수명 주기 처리</a> 섹션에서 더욱 상세히 논의할 것입니다.</p>
+
+
+<p>이외에도, 기본적인 {@link
+android.app.Fragment} 클래스 대신 확장하고자 하는 하위 클래스도 몇 개 있을 수 있습니다.</p>
+
+<dl>
+  <dt>{@link android.app.DialogFragment}</dt>
+  <dd>부동 대화 창을 표시합니다. 이 클래스를 사용하여 대화를 생성하면 
+{@link android.app.Activity} 클래스의 대화 도우미 메서드를 사용하는 것의 
+좋은 대안책이 됩니다. 이렇게 하면 프래그먼트 대화를 액티비티가 관리하는 프래그먼트의 백 스택에 통합시킬 수 있어, 
+사용자가 무시된 프래그먼트를 반환할 수 있도록 해주기 때문입니다.</dd>
+
+  <dt>{@link android.app.ListFragment}</dt>
+  <dd>어댑터가 관리하는 항목의 목록(예: {@link
+android.widget.SimpleCursorAdapter})을 표시하며, {@link android.app.ListActivity}와 비슷합니다. 
+이것은 목록 보기를 관리하는 데 쓰는 몇 가지 메서드를 제공합니다. 예를 들어 {@link
+android.app.ListFragment#onListItemClick(ListView,View,int,long) onListItemClick()} 콜백을 
+제공하여 클릭 이벤트를 처리하는 것 등입니다.</dd>
+
+  <dt>{@link android.preference.PreferenceFragment}</dt>
+  <dd>{@link android.preference.Preference} 객체의 계층을 목록으로 표시하며, 
+{@link android.preference.PreferenceActivity}와 비슷합니다. 이것은 
+애플리케이션에 대한 "설정" 액티비티를 생성할 때 유용합니다.</dd>
+</dl>
+
+
+<h3 id="UI">사용자 인터페이스 추가하기</h3>
+
+<p>프래그먼트는 일반적으로 액티비티에 속한 사용자 인터페이스의 일부분으로 사용되며 
+자기 나름의 레이아웃으로 액티비티에 참가합니다.</p>
+
+<p>프래그먼트에 대해 레이아웃을 제공하려면 반드시 {@link
+android.app.Fragment#onCreateView onCreateView()} 콜백 메서드를 구현해야 합니다. 
+이것은 프래그먼트가 자신의 레이아웃을 그릴 때가 되면 Android 시스템이 호출하는 것입니다. 이 메서드의 구현은 반드시 
+{@link android.view.View}를 반환해야 합니다. 이것은 프래그먼트 레이아웃의 루트입니다.</p>
+
+<p class="note"><strong>참고:</strong> 프래그먼트가 {@link
+android.app.ListFragment}의 하위 클래스인 경우, 기본 구현이 
+{@link android.app.Fragment#onCreateView onCreateView()}로부터 {@link android.widget.ListView}를 반환하므로 이를 구현하지 않아도 됩니다.</p>
+
+<p>{@link
+android.app.Fragment#onCreateView onCreateView()}로부터 레이아웃을 반환하려면 이를 XML에서 정의된 <a href="{@docRoot}guide/topics/resources/layout-resource.html">레이아웃 리소스</a>로부터 팽창시키면 됩니다. 이를 돕기 위해 
+{@link android.app.Fragment#onCreateView onCreateView()}가 
+{@link android.view.LayoutInflater} 객체를 제공합니다.</p>
+
+<p>예를 들어 다음은 {@link android.app.Fragment}의 하위 클래스입니다. 이것이 
+{@code example_fragment.xml} 파일로부터 레이아웃을 로딩합니다.</p>
+
+<pre>
+public static class ExampleFragment extends Fragment {
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+                             Bundle savedInstanceState) {
+        // Inflate the layout for this fragment
+        return inflater.inflate(R.layout.example_fragment, container, false);
+    }
+}
+</pre>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>레이아웃 생성</h3>
+  <p>위의 샘플에서 {@code R.layout.example_fragment}는 
+애플리케이션 리소스에 저장된 {@code example_fragment.xml}이라는 레이아웃 리소스에 대한 참조입니다. 레이아웃을 
+XML로 생성하는 방법에 대한 정보는 <a href="{@docRoot}guide/topics/ui/index.html">사용자 인터페이스</a>
+ 문서를 참조하십시오.</p>
+</div>
+</div>
+
+<p>{@link android.app.Fragment#onCreateView
+onCreateView()}로 전달된 {@code container} 매개변수가 상위 {@link android.view.ViewGroup}이며(액티비티의 레이아웃으로부터), 
+이 안에 프래그먼트 레이아웃이 삽입됩니다.
+ {@code savedInstanceState} 매개변수는 일종의 {@link android.os.Bundle}로, 
+이것은 프래그먼트가 재개되는 중인 경우 프래그먼트의 이전 인스턴스에 대한 데이터를 
+제공합니다(상태를 복원하는 것은 <a href="#Lifecycle">프래그먼트 수명 주기 
+처리</a>에서 좀 더 논의합니다).</p>
+
+<p>{@link android.view.LayoutInflater#inflate(int,ViewGroup,boolean) inflate()} 메서드는 
+다음과 같은 세 개의 인수를 취합니다.</p>
+<ul>
+  <li>팽창시키고자 하는 레이아웃의 리소스 ID.</li>
+  <li>팽창된 레이아웃의 상위가 될 {@link android.view.ViewGroup}. {@code
+container}를 전달해야 시스템이 레이아웃 매개변수를 팽창된 레이아웃의 루트 보기에 실행 중인 상위 보기에서 지정한 것과 같이 
+적용할 수 있으므로 이는 중요한 부분입니다.</li>
+  <li>팽창된 레이아웃이 팽창 중에 {@link
+android.view.ViewGroup}(두 번째 매개변수)에 첨부되어야 하는지를 나타내는 부울 값 (이 경우, 
+이것은 거짓입니다. 시스템이 이미 팽창된 레이아웃을 {@code
+container} 안에 삽입하고 있기 때문입니다. 참을 전달하면 최종 레이아웃에 중복된 보기 그룹을 생성하게 됩니다).</li>
+</ul>
+
+<p>이제 레이아웃을 제공하는 프래그먼트 생성하는 법을 알게 되셨습니다. 다음은 프래그먼트를 
+액티비티에 추가해야 합니다.</p>
+
+
+
+<h3 id="Adding">액티비티에 프래그먼트 추가</h3>
+
+<p>프래그먼트는 보통 UI의 일부분으로 호스트 액티비티에 참가합니다. 이는 해당 액티비티의 
+전반적인 보기 계층의 일부분으로 포함되게 됩니다. 프래그먼트를 액티비티 레이아웃에 추가하는 데에는 두 가지 방법이 
+있습니다.</p>
+
+<ul>
+  <li><b>프래그먼트를 액티비티의 레이아웃 파일 안에서 선언합니다.</b>
+<p>이 경우, 프래그먼트에 대한 레이아웃 속성을 마치 
+보기인 것처럼 나타낼 수 있습니다. 예를 들어 다음은 프래그먼트가 두 개 있는 
+한 액티비티에 대한 레이아웃 파일을 나타낸 것입니다.</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
+    &lt;fragment android:name="com.example.news.ArticleListFragment"
+            android:id="@+id/list"
+            android:layout_weight="1"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+    &lt;fragment android:name="com.example.news.ArticleReaderFragment"
+            android:id="@+id/viewer"
+            android:layout_weight="2"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+&lt;/LinearLayout&gt;
+</pre>
+  <p>{@code &lt;fragment&gt;} 안의 {@code android:name} 속성이 레이아웃 안에서 인스턴트화할 {@link
+android.app.Fragment} 클래스를 나타냅니다.</p>
+
+<p>시스템은 이 액티비티 레이아웃을 생성할 때 레이아웃에서 지정된 각 프래그먼트를 인스턴트화하며 각각에 대해 
+{@link android.app.Fragment#onCreateView onCreateView()} 메서드를 
+호출하여 각 프래그먼트의 레이아웃을 검색합니다. 시스템은 프래그먼트가 반환한 {@link android.view.View}를 
+{@code &lt;fragment&gt;} 요소 자리에 곧바로 삽입합니다.</p>
+
+<div class="note">
+  <p><strong>참고:</strong> 각 프래그먼트에는 액티비티가 재시작되는 경우 
+프래그먼트를 복구하기 위해 시스템이 사용할 수 있는 고유한 식별자가 필요합니다(그리고, 개발자는 이것을 사용하여 프래그먼트를 캡처해 
+이를 제거하는 등 여러 가지 트랜잭션을 수행할 수 있습니다). 프래그먼트에 ID를 제공하는 데에는 
+다음과 같은 세 가지 방법이 있습니다.</p>
+  <ul>
+    <li>고유한 ID와 함께 {@code android:id} 속성을 제공합니다.</li>
+    <li>고유한 문자열과 함께 {@code android:tag} 속성을 제공합니다.</li>
+    <li>위의 두 가지 중 어느 것도 제공하지 않으면, 시스템은 컨테이너 보기의 ID를 
+사용합니다.</li>
+  </ul>
+</div>
+  </li>
+
+  <li><b>또는, 프로그래밍 방식으로 프래그먼트를 기존의 {@link android.view.ViewGroup}에 추가합니다.</b>
+<p>액티비티가 실행 중인 동안에는 언제든 액티비티 레이아웃에 프래그먼트를 추가할 수 있습니다. 그저 프래그먼트를 배치할 
+{@link
+android.view.ViewGroup}를 지정하기만 하면 됩니다.</p>
+  <p>액티비티 내에서 프래그먼트 트랜잭션을 수행하려면(프래그먼트 추가, 제거 또는 
+교체 등), {@link android.app.FragmentTransaction}에서 가져온 API를 사용해야 합니다. 
+{@link android.app.FragmentTransaction}의 인스턴스를 {@link android.app.Activity}에서 가져오는 방법은 다음과 같습니다.</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()}
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>그런 다음 {@link
+android.app.FragmentTransaction#add(int,Fragment) add()} 메서드를 사용하여 프래그먼트를 추가하고, 추가할 프래그먼트와 이를 삽입할 
+보기를 지정하면 됩니다. 예:</p>
+
+<pre>
+ExampleFragment fragment = new ExampleFragment();
+fragmentTransaction.add(R.id.fragment_container, fragment);
+fragmentTransaction.commit();
+</pre>
+
+  <p>{@link android.app.FragmentTransaction#add(int,Fragment) add()}에 
+전달되는 첫 인수가 {@link android.view.ViewGroup}입니다. 
+여기에 프래그먼트가 리소스 ID가 지정한 바와 같이 배치되어야 하며, 두 번째 매개변수는 추가할 프래그먼트입니다.</p>
+  <p>
+{@link android.app.FragmentTransaction}을 변경하고 나면, 반드시 
+{@link android.app.FragmentTransaction#commit}을 호출해야 변경 내용이 적용됩니다.</p>
+  </li>
+</ul>
+
+
+<h4 id="AddingWithoutUI">UI 없이 프래그먼트 추가</h4>
+
+<p>위의 예시에서는 UI를 제공하기 위해 프래그먼트를 액티비티에 추가하는 방법을 보여드렸습니다. 하지만 
+추가로 UI를 제시하지 않고 액티비티에 대한 배경 동작을 제공하는 데에도 프래그먼트를 사용할 수 
+있습니다.</p>
+
+<p>UI 없이 프래그먼트를 추가하려면 액티비티로부터 가져온 프래그먼트를 {@link
+android.app.FragmentTransaction#add(Fragment,String)}을 사용하여 추가합니다(이때, 프래그먼트에 대해 
+보기 ID보다는 고유한 문자열 "태그"를 제공합니다). 이렇게 하면 프래그먼트가 추가되지만, 
+이것은 액티비티 레이아웃 안에 있는 보기와 연관되어 있지 않기 때문에 {@link
+android.app.Fragment#onCreateView onCreateView()}로의 호출은 받지 않습니다. 따라서 그 메서드는 구현하지 않아도 됩니다.</p>
+
+<p>프래그먼트에 대해 문자열 태그를 제공하는 것은 엄밀히 말해 비 UI 프래그먼트에만 해당되는 것은 아닙니다. UI가 있는 
+프래그먼트에도 문자열 태그를 제공할 수 있습니다. 하지만 프래그먼트에 
+UI가 없는 경우라면 이를 식별할 방법은 문자열 태그뿐입니다. 액티비티에서 나중에 
+프래그먼트를 가져오고자 하는 경우, {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}를 사용해야 합니다.</p>
+
+<p>예를 들어 어떤 액티비티에서 UI 없이 프래그먼트를 배경 작업자로 사용한다고 가정해봅시다. 이것의 예로 {@code
+FragmentRetainInstance.java} 샘플을 들 수 있으며 
+이는 SDK 샘플에 포함되어 있고(Android SDK Manager를 통해 이용 가능), 시스템에는 
+<code>&lt;sdk_root&gt;/APIDemos/app/src/main/java/com/example/android/apis/app/FragmentRetainInstance.java</code>로 찾을 수 있습니다.</p>
+
+
+
+<h2 id="Managing">프래그먼트 관리</h2>
+
+<p>액티비티 내의 프래그먼트를 관리하려면 {@link android.app.FragmentManager}를 사용해야 합니다. 이것을 
+가져오려면 액티비티에서 {@link android.app.Activity#getFragmentManager()}를 호출하십시오.</p>
+
+<p>{@link android.app.FragmentManager}를 가지고 할 수 있는 여러 가지 일 중에 예를 들면 다음과 같습니다.</p>
+
+<ul>
+  <li>액티비티 내에 존재하는 프래그먼트를 {@link
+android.app.FragmentManager#findFragmentById findFragmentById()}로 가져오기(액티비티 레이아웃 내에서 
+UI를 제공하는 프래그먼트의 경우) 또는 {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}로 가져오기(UI를 제공하거나 하지 않는 프래그먼트의 경우).</li> 
+  <li>백 스택에서 프래그먼트를 {@link
+android.app.FragmentManager#popBackStack()}을 사용하여 튀어나오게 하기(사용자가 내린 <em>뒤로</em> 명령을 시뮬레이트함).</li>
+  <li>백 스택에 변경 내용이 있는지 알아보기 위해 {@link
+android.app.FragmentManager#addOnBackStackChangedListener addOnBackStackChangedListener()}로 수신기 등록하기.</li>
+</ul>
+
+<p>이와 같은 메서드와 그 외 다른 메서드에 대한 자세한 정보는 {@link
+android.app.FragmentManager} 클래스 관련 문서를 참조하십시오.</p>
+
+<p>이전 섹션에서 설명한 바와 같이 {@link android.app.FragmentManager}를 
+사용해서도 {@link android.app.FragmentTransaction}
+을 열 수 있습니다. 이렇게 하면 프래그먼트 추가 및 제거 등 트랜잭션을 수행할 수 있게 해줍니다.</p>
+
+
+<h2 id="Transactions">프래그먼트 트랜잭션 수행</h2>
+
+<p>액티비티에서 프래그먼트를 사용하는 경우 특히 유용한 점은 사용자 상호 작용에 응답하여 추가, 
+제거, 교체 및 다른 작업을 수행할 수 있다는 것입니다. 액티비티에 적용한 
+변경 내용의 집합을 하나의 트랜잭션이라 칭합니다. 이것을 수행하려면 {@link
+android.app.FragmentTransaction} 내의 API를 사용하면 됩니다. 해당 액티비티가 관리하는 백 스택에 행해진 각 트랜잭션을 
+저장할 수도 있습니다. 이렇게 하면 사용자가 프래그먼트 변경 내역을 거쳐 뒤로 탐색할 수 있습니다(액티비티를 통과해 
+뒤로 탐색하는 것과 비슷합니다).</p>
+
+<p>{@link android.app.FragmentTransaction}의 인스턴스를 {@link
+android.app.FragmentManager}로부터 가져오는 방법은 다음과 같습니다.</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()};
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>각 트랜잭션은 동시에 수행하고자 하는 여러 변경을 집합적으로 일컫는 말입니다. 주어진 
+트랜잭션에 대해 수행하고자 하는 모든 변경 사항을 설정하려면 {@link
+android.app.FragmentTransaction#add add()}, {@link android.app.FragmentTransaction#remove remove()},
+및 {@link android.app.FragmentTransaction#replace replace()}와 같은 메서드를 사용하면 됩니다. 그런 다음, 
+트랜잭션을 액티비티에 적용하려면 반드시 {@link android.app.FragmentTransaction#commit()}을 호출해야 합니다.</p>
+</dl>
+
+<p>하지만 {@link
+android.app.FragmentTransaction#commit()}을 호출하기 전에 먼저 호출해야 할 것이 있습니다. 바로 {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}입니다. 
+이렇게 해야 트랜잭션을 프래그먼트 트랜잭션의 백 스택에 추가할 수 있습니다. 이 백 스택을 액티비티가 관리하며, 
+이를 통해 사용자가 이전 프래그먼트 상태로 되돌아갈 수 있습니다. 이때 <em>뒤로</em> 버튼을 누르면 됩니다.</p>
+
+<p>예를 들어 다음은 한 프래그먼트를 다른 것으로 교체하고 이전 상태를 백 스택에 보존하는 법을 
+나타낸 것입니다.</p>
+
+<pre>
+// Create new fragment and transaction
+Fragment newFragment = new ExampleFragment();
+FragmentTransaction transaction = getFragmentManager().beginTransaction();
+
+// Replace whatever is in the fragment_container view with this fragment,
+// and add the transaction to the back stack
+transaction.replace(R.id.fragment_container, newFragment);
+transaction.addToBackStack(null);
+
+// Commit the transaction
+transaction.commit();
+</pre>
+
+<p>이 예시에서 {@code newFragment}가 현재 레이아웃 컨테이너에 있는 
+프래그먼트(있는 경우)를 교체합니다. 이는 {@code R.id.fragment_container} ID로 식별할 수 있습니다. {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}를 호출하면 교체 트랜잭션이 
+백 스택에 저장되고, 따라서 사용자가 트랜잭션을 거꾸로 수행하여 
+이전 프래그먼트를 도로 가져올 수 있습니다. <em>뒤로</em> 버튼을 사용하면 됩니다.</p>
+
+<p>트랜잭션에 여러 개의 변경을 추가하고(예를 들어 또 다른 {@link
+android.app.FragmentTransaction#add add()} 또는 {@link android.app.FragmentTransaction#remove
+remove()}) {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}을 호출하면, {@link android.app.FragmentTransaction#commit commit()}을 호출하기 전에 적용된 모든 변경 내용이 
+백 스택에 하나의 트랜잭션으로 추가되며, <em>뒤로</em> 버튼을 누르면 
+모두 한꺼번에 역행하게 됩니다.</p>
+
+<p>{@link android.app.FragmentTransaction}에 변경 내용을 추가하는 순서는 중요하지 않습니다. 
+다만 다음과 같은 예외가 있습니다.</p>
+<ul>
+  <li>{@link android.app.FragmentTransaction#commit()}을 마지막으로 호출해야만 합니다.</li>
+  <li>같은 컨테이너에 여러 개의 프래그먼트를 추가하는 경우, 이를 추가하는 순서가 이들이 
+보기 계층에 나타나는 순서를 결정 짓습니다.</li>
+</ul>
+
+<p>프래그먼트를 제거하는 트랜잭션을 수행하면서 {@link android.app.FragmentTransaction#addToBackStack(String)
+addToBackStack()}을 호출하지 않는 경우, 
+해당 프래그먼트는 트랜잭션이 적용되면 소멸되고 사용자가 이를 되짚어 탐색할 수 없게 됩니다. 반면에 
+프래그먼트를 제거하면서 {@link android.app.FragmentTransaction#addToBackStack(String) addToBackStack()}을 호출하면, 
+해당 프래그먼트는 <em>중단</em>되고 사용자가 뒤로 탐색하면 
+재개됩니다.</p>
+
+<p class="note"><strong>팁:</strong> 각 프래그먼트 트랜잭션에 대해 전환 애니메이션을 적용하려면 
+커밋하기 전에 {@link android.app.FragmentTransaction#setTransition setTransition()}을 
+호출하면 됩니다.</p>
+
+<p>{@link android.app.FragmentTransaction#commit()}을 호출해도 그 즉시 트랜잭션을 수행하지는 
+않습니다. 그보다는, 액티비티의 UI 스레드("주요" 스레드)를 스레드가 할 수 있는 한 빨리 
+이 트랜잭션을 수행하도록 일정을 예약하는 것에 가깝습니다. 하지만 필요한 경우 UI 스레드로부터 {@link
+android.app.FragmentManager#executePendingTransactions()}를 호출하면 
+{@link android.app.FragmentTransaction#commit()}이 제출한 트랜잭션을 즉시 실행할 수 있습니다. 트랜잭션이 
+다른 스레드의 작업에 대한 종속성이 아니라면 굳이 이렇게 해야만 하는 것은 아닙니다.</p>
+
+<p class="caution"><strong>주의:</strong> 트랜잭션을 적용할 때 {@link
+android.app.FragmentTransaction#commit commit()}을 사용해도 되는 것은 액티비티가 <a href="{@docRoot}guide/components/activities.html#SavingActivityState">그 상태를 
+저장</a>하기 전뿐입니다(사용자가 액티비티를 떠날 때). 그 시점 이후에 적용하려고 하면 예외가 
+발생합니다. 이것은 액티비티를 복원해야 하는 경우 적용 이후의 상태가 손실될 수 
+있기 때문입니다. 적용이 손실되어도 괜찮은 상황이라면, {@link
+android.app.FragmentTransaction#commitAllowingStateLoss()}를 사용하십시오.</p>
+
+
+
+
+<h2 id="CommunicatingWithActivity">액티비티와 통신</h2>
+
+<p>{@link android.app.Fragment}는 
+{@link android.app.Activity}로부터 독립적인 객체로 구현되었고 여러 개의 액티비티 안에서 사용할 수 있는 것이 사실이지만, 
+프래그먼트의 주어진 인스턴스는 그것을 포함하고 있는 액티비티에 직접적으로 연결되어 있습니다.</p>
+
+<p>구체적으로 말하면, 이 프래그먼트는 {@link
+android.app.Fragment#getActivity()}를 사용하여 {@link android.app.Activity} 인스턴스에 액세스하여 
+액티비티 레이아웃에서 보기를 찾는 것과 같은 작업을 손쉽게 수행할 수 있습니다.</p>
+
+<pre>
+View listView = {@link android.app.Fragment#getActivity()}.{@link android.app.Activity#findViewById findViewById}(R.id.list);
+</pre>
+
+<p>이와 마찬가지로, 액티비티도 프래그먼트 안의 메서드를 호출할 수 있습니다. 그러려면 {@link android.app.FragmentManager}로부터의 
+{@link android.app.Fragment}에 대한 참조를 가져와야 하며, 이때 {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} 또는 {@link
+android.app.FragmentManager#findFragmentByTag findFragmentByTag()}를 사용합니다. 예:</p>
+
+<pre>
+ExampleFragment fragment = (ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment);
+</pre>
+
+
+<h3 id="EventCallbacks">액티비티로의 이벤트 콜백 생성</h3>
+
+<p>어떤 경우에는 프래그먼트로 하여금 액티비티와 이벤트를 공유하게 해야 할 수 있습니다. 이렇게 하기 위한 
+한 가지 좋은 방법은 프래그먼트 내부의 콜백 인터페이스를 정의한 다음 해당 호스트 액티비티가 이를 구현하도록 
+하는 것입니다. 액티비티가 인터페이스를 통해 콜백을 수신하면, 필요에 따라 그 정보를 레이아웃 내의 
+다른 프래그먼트와 공유할 수 있습니다.</p>
+
+<p>예를 들어 어떤 뉴스 애플리케이션에서 액티비티 하나에 프래그먼트가 두 개 있습니다. 
+ 하나는 기사 목록을 표시(프래그먼트 A)하고 다른 하나는 기사 하나를 표시(프래그먼트 B)하는 경우 목록 항목이 선택되면 
+프래그먼트 A가 액티비티에 알려야 프래그먼트 B에 해당 기사를 표시하라고 알릴 수 있습니다. 이 경우, 
+{@code OnArticleSelectedListener} 인터페이스는 프래그먼트 A 내부에 선언됩니다.</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    ...
+    // Container Activity must implement this interface
+    public interface OnArticleSelectedListener {
+        public void onArticleSelected(Uri articleUri);
+    }
+    ...
+}
+</pre>
+
+<p>그러면 프래그먼트를 호스팅하는 액티비티가 {@code OnArticleSelectedListener}
+ 인터페이스를 
+구현하고 {@code onArticleSelected()}를 재정의하여 프래그먼트 A로부터 일어난 이벤트를 
+프래그먼트 B에 알립니다. 호스트 액티비티가 이 인터페이스를 구현하도록 
+확실히 하려면 프래그먼트 A의 {@link
+android.app.Fragment#onAttach onAttach()} 콜백 메서드(프래그먼트를 액티비티에 추가할 때 시스템이 호출하는 것)가 {@code OnArticleSelectedListener}의 인스턴스를 인스턴트화해야 합니다. 이때 {@link android.app.Fragment#onAttach
+onAttach()} 안으로 전달된 {@link android.app.Activity}를 
+캐스팅하는 방법을 씁니다.</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        try {
+            mListener = (OnArticleSelectedListener) activity;
+        } catch (ClassCastException e) {
+            throw new ClassCastException(activity.toString() + " must implement OnArticleSelectedListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>액티비티가 인터페이스를 구현하지 않은 경우, 프래그먼트가 
+{@link java.lang.ClassCastException}을 발생시킵니다. 
+성공 시, {@code mListener} 구성원이 액티비티의 
+{@code OnArticleSelectedListener} 구현에 대한 참조를 보유하므로, 프래그먼트 A가 액티비티와 이벤트를 공유할 수 있습니다. 
+이때 {@code OnArticleSelectedListener} 인터페이스가 정의한 메서드를 호출하는 방법을 씁니다. 예를 들어 프래그먼트 A가 
+{@link android.app.ListFragment}의 확장인 경우, 
+사용자가 목록 항목을 클릭할 때마다 시스템이 프래그먼트 안의 {@link android.app.ListFragment#onListItemClick
+onListItemClick()}을 호출하고, 그러면 이것이 {@code onArticleSelected()}를 호출하여 
+해당 이벤트를 액티비티와 공유하는 것입니다.</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onListItemClick(ListView l, View v, int position, long id) {
+        // Append the clicked item's row ID with the content provider Uri
+        Uri noteUri = ContentUris.{@link android.content.ContentUris#withAppendedId withAppendedId}(ArticleColumns.CONTENT_URI, id);
+        // Send the event and Uri to the host activity
+        mListener.onArticleSelected(noteUri);
+    }
+    ...
+}
+</pre>
+
+<p>{@link
+android.app.ListFragment#onListItemClick onListItemClick()}에 전달된 {@code id} 매개변수가 클릭한 항목의 행 ID이며, 
+액티비티(또는 다른 프래그먼트)가 이것을 사용해 애플리케이션의 {@link
+android.content.ContentProvider}에서 기사를 가져옵니다.</p>
+
+<p><!--To see a complete implementation of this kind of callback interface, see the <a
+href="{@docRoot}resources/samples/NotePad/index.html">NotePad sample</a>. -->콘텐츠 제공자 사용법에 대한 자세한 정보는 
+<a href="{@docRoot}guide/topics/providers/content-providers.html">콘텐츠 제공자</a> 문서에서 이용하실 수 있습니다.</p>
+
+
+
+<h3 id="ActionBar">작업 모음에 항목 추가</h3>
+
+<p>프래그먼트는 액티비티의 <a href="{@docRoot}guide/topics/ui/menus.html#options-menu">옵션 메뉴</a>에(결과적으로 <a href="{@docRoot}guide/topics/ui/actionbar.html">작업 모음</a>에도) 메뉴 항목으로 참가할 수 있습니다. 이때 
+{@link android.app.Fragment#onCreateOptionsMenu(Menu,MenuInflater) onCreateOptionsMenu()}를 구현하는 방법을 씁니다. 이 메서드가 
+호출을 수신하도록 하려면, {@link
+android.app.Fragment#onCreate(Bundle) onCreate()} 중에 {@link
+android.app.Fragment#setHasOptionsMenu(boolean) setHasOptionsMenu()}를 호출하여 프래그먼트가 
+옵션 메뉴에 항목을 추가하고자 한다는 것을 나타내야 합니다(그렇지 않으면 해당 프래그먼트가 
+{@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()}로의 호출을 받지 못하게 됩니다).</p>
+
+<p>그런 다음 프래그먼트로부터 옵션 메뉴에 추가하는 모든 항목은 기존의 메뉴 항목에 
+추가됩니다. 해당 프래그먼트는 메뉴 항목을 선택하면 {@link
+android.app.Fragment#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}로의 콜백도 
+수신하게 됩니다.</p>
+
+<p>또한 프래그먼트 레이아웃에 보기를 등록하여 컨텍스트 메뉴를 제공하도록 할 수도 있습니다. 이때 {@link
+android.app.Fragment#registerForContextMenu(View) registerForContextMenu()}를 호출하면 됩니다. 사용자가 컨텍스트 메뉴를 열면, 
+해당 프래그먼트가 {@link
+android.app.Fragment#onCreateContextMenu(ContextMenu,View,ContextMenu.ContextMenuInfo)
+onCreateContextMenu()}로의 호출을 받습니다. 사용자가 항목을 하나 선택하면, 해당 프래그먼트는 {@link
+android.app.Fragment#onContextItemSelected(MenuItem) onContextItemSelected()}로의 호출을 받습니다.</p>
+
+<p class="note"><strong>참고:</strong> 프래그먼트는 추가한 각 메뉴 항목에 대해 '항목 선택됨' 콜백을 
+하나씩 받게 되지만, 사용자가 메뉴 항목을 선택할 때 그에 상응하는 콜백을 가장 처음 받는 것은 
+액티비티입니다. 액티비티가 구현한 '항목 선택됨' 콜백이 선택된 항목을 다루지 않는 경우, 
+해당 이벤트는 프래그먼트의 콜백으로 전달됩니다. 이것은 
+옵션 메뉴와 컨텍스트 메뉴에 모두 참입니다.</p>
+
+<p>메뉴에 대한 더 자세한 정보는 <a href="{@docRoot}guide/topics/ui/menus.html">메뉴</a> 및 <a href="{@docRoot}guide/topics/ui/actionbar.html">작업 모음</a> 개발자 가이드를 참조하십시오.</p>
+
+
+
+
+<h2 id="Lifecycle">프래그먼트 수명 주기 처리</h2>
+
+<div class="figure" style="width:350px">
+<img src="{@docRoot}images/activity_fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>그림 3.</strong> 액티비티 수명 주기가 프래그먼트 수명 주기에 미치는 
+영향입니다.</p>
+</div>
+
+<p>프래그먼트의 수명 주기를 관리하는 것은 액티비티의 수명 주기를 관리하는 것과 매우 비슷합니다. 액티비티와 마찬가지로 
+프래그먼트는 세 가지 상태로 존재할 수 있습니다.</p>
+
+<dl>
+  <dt><i>재개됨</i></dt>
+    <dd>프래그먼트가 실행 중인 액티비티에 표시됩니다.</dd>
+
+  <dt><i>일시정지됨</i></dt>
+    <dd>또 다른 액티비티가 전경에 나와 있고 사용자가 이에 초점을 맞추고 있지만, 
+이 프래그먼트가 있는 액티비티도 여전히 표시되어 있습니다(전경의 액티비티가 부분적으로 투명하거나 
+전체 화면을 뒤덮지 않습니다).</dd>
+
+  <dt><i>정지됨</i></dt>
+    <dd>프래그먼트가 표시되지 않습니다. 호스트 액티비티가 정지되었거나 
+프래그먼트가 액티비티에서 제거되었지만 백 스택에 추가되었습니다. 정지된 프래그먼트도 
+여전히 표시는 됩니다(모든 상태 및 구성원 정보를 시스템이 보존합니다). 하지만, 사용자에게는 
+더 이상 표시되지 않으며 액티비티를 종료하면 이것도 종료됩니다.</dd>
+</dl>
+
+<p>이번에도 액티비티와 마찬가지로, 프래그먼트의 상태를 보존하려면 {@link
+android.os.Bundle}을 사용합니다. 이는 혹시나 액티비티의 프로세스가 종료되고 액티비티를 
+다시 만들 때 해당 프래그먼트의 상태를 복구해야 할 필요가 있을 때를 대비하는 것입니다. 상태를 저장하려면 프래그먼트의 {@link
+android.app.Fragment#onSaveInstanceState onSaveInstanceState()} 콜백 중에 저장할 수 있고, 복구는 
+{@link android.app.Fragment#onCreate onCreate()}, {@link
+android.app.Fragment#onCreateView onCreateView()} 또는 {@link
+android.app.Fragment#onActivityCreated onActivityCreated()} 중 한 가지가 진행되는 동안 할 수 있습니다. 상태 저장에 관한 자세한 정보는 
+<a href="{@docRoot}guide/components/activities.html#SavingActivityState">액티비티</a>
+문서를 참조하십시오.</p>
+
+<p>액티비티와 프래그먼트의 수명 주기에서 가장 중대한 차이점은 
+해당되는 백 스택에 저장되는 방법입니다. 액티비티는 중단되었을 때 시스템이 관리하는 
+액티비티 백 스택 안에 배치되는 것이 기본입니다(따라서 사용자가 <em>뒤로</em> 버튼을 사용하여 다시 이 액티비티로 
+뒤로 탐색할 수 있습니다. 이 내용은 <a href="{@docRoot}guide/components/tasks-and-back-stack.html">작업 및 백 스택</a>에서 설명하였습니다). 
+하지만, 프래그먼트가 호스트 액티비티가 관리하는 백 스택 안에 배치되는 것은 해당 인스턴스를 저장하라고 명시적으로 요청하는 경우뿐입니다. 
+이때 프래그먼트를 제거하는 트랜잭션 중 {@link
+android.app.FragmentTransaction#addToBackStack(String) addToBackStack()}을 
+호출합니다.</p>
+
+<p>이것만 제외하면, 프래그먼트 수명 주기를 관리하는 것은 액티비티의 수명 주기를 관리하는 것과 
+아주 비슷합니다. 따라서, <a href="{@docRoot}guide/components/activities.html#Lifecycle">액티비티 
+수명 주기 관리</a>에 쓰이는 실례가 프래그먼트에도 똑같이 적용되는 것입니다. 하지만 또 한 가지 이해해두어야 하는 것이 있습니다. 즉, 
+액티비티의 수명이 프래그먼트의 수명에 어떤 영향을 미치는지를 알아두어야 합니다.</p>
+
+<p class="caution"><strong>주의:</strong> {@link android.app.Fragment} 내에서 {@link android.content.Context} 
+객체가 필요한 경우, {@link android.app.Fragment#getActivity()}를 호출하면 됩니다. 
+그러나 {@link android.app.Fragment#getActivity()}를 호출하는 것은 프래그먼트가 액티비티에
+ 첨부되어 있는 경우뿐이니 유의하십시오. 프래그먼트가 아직 첨부되지 않았거나 수명 주기가 끝날 무렵 분리된 경우, 
+{@link android.app.Fragment#getActivity()}가 null을 반환합니다.</p>
+
+
+<h3 id="CoordinatingWithActivity">액티비티 수명 주기와 조화</h3>
+
+<p>프래그먼트가 있는 액티비티의 수명 주기는 해당 프래그먼트의 수명 주기에 직접적인 
+영향을 미칩니다. 따라서 액티비티에 대한 각 수명 주기 콜백이 각 프래그먼트에 대한 비슷한 콜백을 
+유발합니다. 예를 들어 액티비티가 {@link android.app.Activity#onPause}를 받으면, 
+해당 액티비티 내의 각 프래그먼트가 {@link android.app.Fragment#onPause}를 받습니다.</p>
+
+<p>하지만 프래그먼트에는 몇 가지 수명 주기 콜백이 더 있습니다. 이것은 액티비티와의 
+고유한 상호 작용을 다루어 프래그먼트의 UI를 구축하고 소멸시키는 것과 같은 
+작업을 수행합니다. 이러한 추가적인 콜백 메서드를 예로 들면 다음과 같습니다.</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onAttach onAttach()}</dt>
+    <dd>프래그먼트가 액티비티와 연관되어 있었던 경우 호출됩니다(여기에서 {@link
+android.app.Activity}가 전달됩니다).</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+    <dd>프래그먼트와 연관된 보기 계층을 생성하기 위해 호출됩니다.</dd>
+  <dt>{@link android.app.Fragment#onActivityCreated onActivityCreated()}</dt>
+    <dd>액티비티의 {@link android.app.Activity#onCreate
+onCreate()} 메서드가 반환되면 호출됩니다.</dd>
+  <dt>{@link android.app.Fragment#onDestroyView onDestroyView()}</dt>
+    <dd>프래그먼트와 연관된 보기 계층이 제거되는 중일 때 호출됩니다.</dd>
+  <dt>{@link android.app.Fragment#onDetach onDetach()}</dt>
+    <dd>프래그먼트가 액티비티와 연결이 끊어지는 중일 때 호출됩니다.</dd>
+</dl>
+
+<p>호스트 액티비티의 영향을 받을 프래그먼트 수명 주기의 흐름은 그림 3에서 
+확인하십시오. 이 그림을 보면 액티비티의 각 연속된 상태가 프래그먼트가 어느 
+콜백 메서드를 받게 되는지 결정 짓는다는 것을 볼 수 있습니다. 예를 들어 액티비티가 자신의 {@link
+android.app.Activity#onCreate onCreate()} 콜백을 받은 경우, 해당 액티비티 안에 있는 프래그먼트는 
+{@link android.app.Fragment#onActivityCreated onActivityCreated()} 콜백을 받을 뿐입니다.</p>
+
+<p>액티비티가 재개된 상태에 도달하면 자유자재로 프래그먼트를 액티비티에 추가하거나 액티비티에서 
+제거해도 됩니다. 따라서, 액티비티가 재개된 상태에 있는 동안에만 프래그먼트의 수명 주기를 
+독립적으로 변경할 수 있는 것입니다.</p>
+
+<p>그러나 액티비티가 재개된 상태를 떠나면 액티비티는 다시 프래그먼트를 그 수명 주기 안으로 
+밀어넣습니다.</p>
+
+
+
+
+<h2 id="Example">예</h2>
+
+<p>이 문서에서 논의한 모든 것을 한 번에 모아 보기 위해, 다음은 두 개의 프래그먼트를 사용하여 
+창이 두 개인 레이아웃을 생성하는 액티비티를 예시로 나타낸 것입니다. 아래의 액티비티에 포함된 
+한 프래그먼트는 셰익스피어 희곡 제목 목록을 표시하고, 또 다른 하나는 목록에서 선택했을 때 
+해당 희곡의 요약을 표시합니다. 또한 화면 구성을 근거로 프래그먼트를 여러 가지로 구성하여 제공하는 방법도 
+보여줍니다.</p>
+
+<p class="note"><strong>참고:</strong> 이 액티비티에 대한 완전한 소스 코드는 
+<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html">{@code
+FragmentLayout.java}</a>에서 이용하실 수 있습니다.</p>
+
+<p>주요 액티비티는 {@link
+android.app.Activity#onCreate onCreate()} 중에 일반적인 방식으로 레이아웃을 적용합니다.</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java main}
+
+<p>적용된 레이아웃은 {@code fragment_layout.xml}입니다.</p>
+
+{@sample development/samples/ApiDemos/res/layout-land/fragment_layout.xml layout}
+
+<p>시스템은 이 레이아웃을 사용하여 액티비티가 레이아웃을 로딩하자마자 {@code TitlesFragment}를 초기화합니다(이것이 희곡 제목을 
+목록으로 나열합니다). 반면 {@link android.widget.FrameLayout}
+(희곡 요약을 표시하는 프래그먼트가 배치될 곳)은 화면 오른쪽에 있는 
+공간을 차지하기는 하지만 처음에는 텅 빈 상태로 유지됩니다. 아래에서 볼 수 있듯이, 사용자가 해당 목록에서 
+항목을 하나 선택해야만 프래그먼트가 {@link android.widget.FrameLayout} 안에 배치됩니다.</p>
+
+<p>그러나 희곡 목록과 요약을 둘 다 나란히 표시할 만큼 너비가 넓지 않은 
+화면 구성도 있습니다. 따라서 위의 레이아웃은 가로 방향 화면 구성에만 사용되며, 
+이를 {@code res/layout-land/fragment_layout.xml}에 저장하여 씁니다.</p>
+
+<p>그러므로 화면이 세로 방향으로 구성된 경우, 시스템은 다음 레이아웃을 적용합니다. 이것은 
+{@code res/layout/fragment_layout.xml}에 저장되어 있습니다.</p>
+
+{@sample development/samples/ApiDemos/res/layout/fragment_layout.xml layout}
+
+<p>이 레이아웃에는 {@code TitlesFragment}만 포함되어 있습니다. 이는 다시 말해 기기가 세로 방향인 경우에는 
+희곡 제목 목록만 표시된다는 뜻입니다. 따라서 사용자가 이 구성에서 목록 항목을 하나 클릭하면, 
+애플리케이션이 두 번째 프래그먼트를 로딩하는 대신 새 액티비티를 시작하여 요약을 
+표시하게 됩니다.</p>
+
+<p>다음으로, 프래그먼트 클래스에서 이것을 달성하는 방법을 보시겠습니다. 첫 번째가 {@code
+TitlesFragment}로, 셰익스피어 희곡 제목 목록을 표시하는 것입니다. 이 프래그먼트는 {@link
+android.app.ListFragment}를 확장하며 목록 보기 작업의 대부분을 처리하기 위해 여기에 의존합니다.</p>
+
+<p>이 코드를 살펴보면서 사용자가 목록 항목을 클릭하면 일어날 수 있는 두 가지 동작이 
+있다는 점을 눈여겨 보십시오. 두 레이아웃 중 어느 것이 활성화 상태인지에 따라 
+같은 액티비티 내에서 세부 사항을 표시하기 위해 새 프래그먼트를 생성하거나 표시할 수도 있고(프래그먼트를 {@link
+android.widget.FrameLayout}에 추가함으로써), 새 액티비티를 시작할 수도 있습니다(프래그먼트를 표시할 수 있는 곳).</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java titles}
+
+<p>두 번째 프래그먼트인 {@code DetailsFragment}는 {@code TitlesFragment}에서 가져온 목록에서 선택한 항목에 대한 희곡 요약을 
+표시하는 것입니다.</p>
+ 
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java details}
+
+<p>{@code TitlesFragment} 클래스에서 다룬 것을 되살려 보면, 사용자가 목록 항목을 클릭하고 
+현재 레이아웃이 {@code R.id.details} 보기를 포함하지 <em>않는</em> 경우(이 보기가 
+{@code DetailsFragment}가 속하는 곳임), 애플리케이션은 항목의 내용을 표시하기 위해 {@code DetailsActivity}
+ 액티비티를 시작하게 됩니다.</p>
+
+<p>다음은 화면이 세로 방향으로 구성되어 있을 때 선택한 희곡의 요약을 표시하기 위해 단순히 {@code DetailsFragment}를
+ 포함할 뿐인 {@code DetailsActivity}입니다.</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java
+details_activity}
+ 
+<p>이 액티비티는 구성이 가로 방향인 경우 알아서 종료한다는 점을 눈여겨 보십시오. 따라서 
+주요 액티비티가 작업을 인계 받아 {@code DetailsFragment}를 {@code TitlesFragment}와 함께 표시할 수 있는 것입니다.
+이것은 사용자가 세로 방향 구성에서 {@code DetailsActivity}를 시작했지만 
+그런 다음 가로 방향으로 돌리는 경우(현재 액티비티를 다시 시작함) 일어날 수 있습니다.</p>
+
+
+<p>프래그먼트 사용에 대한 더 많은 샘플(및 이 예시에 대한 완전한 소스 파일)을 보시려면 
+<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Fragment">
+ApiDemos</a>에서 이용할 수 있는 API Demos 샘플 앱을 참조하십시오(<a href="{@docRoot}resources/samples/get.html">샘플 SDK 구성 요소</a>에서 다운로드할 수 있습니다).</p>
+
+
diff --git a/docs/html-intl/intl/ko/guide/components/fundamentals.jd b/docs/html-intl/intl/ko/guide/components/fundamentals.jd
new file mode 100644
index 0000000..608b5a2c
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/fundamentals.jd
@@ -0,0 +1,480 @@
+page.title=애플리케이션 기본 항목
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>이 문서의 내용</h2>
+<ol>
+<li><a href="#Components">앱 구성 요소</a>
+  <ol>
+    <li><a href="#ActivatingComponents">구성 요소 활성화</a></li>
+  </ol>
+</li>
+<li><a href="#Manifest">매니페스트 파일</a>
+  <ol>
+    <li><a href="#DeclaringComponents">구성 요소 선언</a></li>
+    <li><a href="#DeclaringRequirements">앱 요구 사항 선언</a></li>
+  </ol>
+</li>
+<li><a href="#Resources">앱 리소스</a></li>
+</ol>
+</div>
+</div>
+
+<p>Android 앱은 Java 프로그래밍 언어로 작성됩니다. Android SDK 도구는 
+코드를 컴파일링하여 모든 데이터 및 리소스 파일과 함께 하나의 APK로 만듭니다. 이것은 즉, <i>Android 패키지</i>
+를 뜻하며, 이는 일종의 {@code .apk} 접미사가 있는 아카이브 파일입니다. 한 개의 APK 파일에는 
+Android 앱의 모든 콘텐츠가 들어 있으며 이 파일이 바로 Android로 구동하는 기기가 앱을 설치할 때 사용하는 파일입니다.</p>
+
+<p>Android 앱은 일단 기기에 설치되고 나면 각자 나름의 보안 샌드박스 안에 살게 됩니다. </p>
+
+<ul>
+ <li>Android 운영 체제는 멀티 사용자 Linux 시스템으로, 여기서 각 앱은 각기 다른 사용자와 
+같습니다.</li>
+
+<li>기본적으로 시스템이 각 앱에 고유한 Linux ID를 할당합니다(이 ID는 시스템만 
+사용할 수 있으며 앱은 이것을 알지 못합니다). 시스템은 앱 안의 모든 파일에 대해 권한을 설정하여 
+해당 앱에 할당된 사용자 ID만 이에 액세스할 수 있도록 합니다. </li>
+
+<li>각 프로세스에는 나름의 가상 머신(VM)이 있고, 그렇기 때문에 한 앱의 코드가 다른 여러 앱과는 격리된 상태로 
+실행됩니다.</li>
+
+<li>기본적으로 모든 앱이 나름의 Linux 프로세스에서 실행됩니다. Android는 앱의 구성 요소 중 
+어느 것이라도 실행해야 하는 경우 프로세스를 시작하고, 이것이 더 이상 필요 없어지거나 시스템이 다른 앱을 위해 
+메모리를 회복해야 하는 경우 해당 프로세스를 종료합니다.</li>
+</ul>
+
+<p>Android 시스템은 이런 방식으로 <em>최소 특권의 원리</em>를 구현하는 것입니다. 다시 말해, 
+각 앱은 기본적으로 자신의 작업을 수행하기 위해 필요한 구성 요소에만 액세스 권한을 가지고 
+그 이상은 허용되지 않습니다. 이렇게 하면 대단히 안전한 환경이 만들어져 앱이 시스템에서 
+자신이 권한을 부여 받지 못한 부분에는 액세스할 수 없게 됩니다.</p>
+
+<p>그러나, 앱이 다른 여러 앱과 데이터를 공유하는 것과 앱이 시스템 서비스에 액세스하는 데에는 
+여러 가지 방법이 있습니다.</p>
+
+<ul>
+  <li>두 개의 앱이 같은 Linux 사용자 ID를 공유하도록 설정할 수도 있습니다. 이 경우 
+두 앱은 서로의 파일에 액세스할 수 있게 됩니다.  시스템 리소스를 절약하려면, 같은 사용자 ID를 가진 앱이 
+같은 Linux 프로세스에서 실행되도록 설정하고 같은 VM을 공유하도록 할 수도 있습니다(이들 앱은 같은 인증서로 
+서명해야 합니다).</li>
+  <li>앱은 사용자의 연락처, SMS 메시지, 마운트 가능한 저장소(SD 카드), 
+카메라, Bluetooth를 비롯하여 이외에도 여러 가지 기기 데이터에 액세스할 권한을 요청할 수 있습니다. 모든 
+앱 권한은 설치 시점에 사용자가 허용해야 합니다.</li>
+</ul>
+
+<p>이렇게 해서 Android 앱이 시스템 내에 어떤 식으로 존재하는지 기본 정보를 알아보았습니다. 이 문서의 
+나머지 부분에서 소개될 내용은 다음과 같습니다.</p>
+<ul>
+  <li>앱을 정의하는 핵심 프레임워크 구성 요소.</li>
+  <li>구성 요소를 선언하고 앱에 맞는 필수 기기 특징을 선언할 수 있는 매니페스트 
+파일.</li>
+  <li>앱 코드로부터 별도로 분리되어 있으며 앱이 다양한 기기 구성에 맞게 자신의 행동을 
+안정적으로 최적화할 수 있도록 해주는 리소스.</li>
+</ul>
+
+
+
+<h2 id="Components">앱 구성 요소</h2>
+
+<p>앱 구성 요소는 Android 앱을 이루는 가장 기본적인 구성 단위입니다. 각 
+구성 요소는 시스템이 앱으로 들어올 수 있는 각기 다른 통과 지점을 나타냅니다. 구성 요소 중에는 
+실제 사용자가 쓸 수 있는 진입 지점이 아닌 것도 있고, 일부는 서로에게 의존하지만, 
+각각의 구성 요소는 따로 떨어진 엔티티로서 존재하며 각기 특정한 역할을 수행합니다. 즉 하나하나가 
+앱의 전반적인 행동을 정의하는 데 유용한 고유한 구성 단위인 것입니다.</p>
+
+<p>앱 구성 요소에는 네 가지 서로 다른 유형이 있습니다. 각 유형이 뚜렷한 목적을 가지고 있으며 
+각자 나름의 수명 주기가 있어 구성 요소의 생성 및 소멸 방식을 정의합니다.</p>
+
+<p>다음은 네 가지 유형의 앱 구성 요소를 나타낸 것입니다.</p>
+
+<dl>
+
+<dt><b>액티비티</b></dt>
+
+<dd>통상 <i>액티비티</i> 라고 하면, 사용자 인터페이스가 있는 화면 하나를 나타냅니다. 예를 들어 
+이메일 앱이라면 새 이메일 목록을 표시하는 액티비티가 하나 있고, 
+이메일을 작성하는 액티비티가 또 하나, 그리고 이메일을 읽는 데 쓰는 액티비티가 또 하나 있을 수 있습니다. 여러 
+액티비티가 함께 작동하여 해당 이메일 앱에서 짜임새 있는 사용자 환경을 형성하는 것은 사실이지만, 각자 서로와는 
+독립적인 형태입니다. 따라서, 다른 앱이 이와 같은 액티비티 중 어느 것이라도 하나만 
+시작할 수 있습니다(이메일 앱이 그렇게 하도록 허용하는 경우). 예를 들어, 카메라 앱이라면 이메일 앱 안의 
+액티비티를 시작하여 새 메일을 작성하도록 해서 사용자가 사진을 공유하도록 할 수 있습니다.
+
+<p>액티비티는 {@link android.app.Activity}의 하위 클래스로 구현되며 이에 대한 더 자세한 내용은 
+<a href="{@docRoot}guide/components/activities.html">액티비티</a>
+개발자 가이드에서 확인하실 수 있습니다.</p>
+</dd>
+
+
+<dt><b>서비스</b></dt>
+
+<dd>통상 <i>서비스</i> 라고 하면 배경에서 실행되는 구성 요소로, 오랫동안 실행되는 
+작업을 수행하거나 원격 프로세스를 위한 작업을 수행하는 것입니다. 서비스는 
+사용자 인터페이스를 제공하지 않습니다. 예를 들어 서비스는 사용자가 다른 앱에 있는 동안에 배경에서 음악을 재생할 수도 있고, 
+아니면 사용자와 액티비티 사이의 상호 작용을 차단하지 않고 네트워크를 가로질러 
+데이터를 가져올 수도 있습니다. 또 다른 구성 요소(예: 액티비티)가 서비스를 시작한 다음 
+실행되도록 두거나 자신에게 바인딩하여 상호 작용하도록 할 수도 있습니다.
+
+<p>서비스는 {@link android.app.Service}의 하위 클래스로 구현되며 이에 대한 더 자세한 내용은 
+<a href="{@docRoot}guide/components/services.html">서비스</a>
+개발자 가이드에서 확인하실 수 있습니다.</p>
+</dd>
+
+
+<dt><b>콘텐츠 제공자</b></dt>
+
+<dd>통상 <i>콘텐츠 제공자</i> 는 공유된 앱 데이터 집합을 관리합니다. 데이터는 파일 시스템이나 SQLite 데이터베이스, 
+또는 웹이나 기타 영구적인 저장소 위치 중 앱이 액세스할 수 있는 곳이라면 어디에든 저장할 수 
+있습니다. 다른 여러 앱은 콘텐츠 제공자를 통해 해당 데이터를 쿼리하거나, 심지어는 수정할 수도 
+있습니다(콘텐츠 제공자가 그렇게 하도록 허용하는 경우). 예를 들어, Android 시스템은 사용자의 연락처 정보를 
+관리하는 콘텐츠 제공자를 제공합니다. 따라서, 적절한 권한을 가진 앱이라면 
+어떤 것이든 해당 콘텐츠 제공자의 일부를 쿼리하여(예를 들어 {@link
+android.provider.ContactsContract.Data} 등) 특정한 사람에 대한 정보를 읽고 쓸 수 있습니다.
+
+<p>콘텐츠 제공자는 앱에서 비공개이며 공유되지 않는 데이터를 읽고 쓰는 데에도 
+유용합니다. 예를 들어 <a href="{@docRoot}resources/samples/NotePad/index.html">메모장</a> 샘플 앱은 메모한 내용을 저장하는 데 
+콘텐츠 제공자를 사용합니다.</p>
+
+<p>콘텐츠 제공자는 {@link android.content.ContentProvider}의
+하위 클래스로 구현되며, 다른 앱이 트랜잭션을 수행할 수 있도록 활성화하는 표준 API 집합을 
+구현해야 합니다. 자세한 내용은 <a href="{@docRoot}guide/topics/providers/content-providers.html">콘텐츠 제공자</a> 개발자
+가이드를 참조하십시오.</p>
+</dd>
+
+
+<dt><b>브로드캐스트 수신기</b></dt>
+
+<dd>통상 <i>브로드캐스트 수신기</i> 는 시스템 전체에 대한 브로드캐스트 공지에 응답하는 구성 요소를 
+말합니다.  대다수의 브로드캐스트는 시스템에서 시작합니다. 예를 들어, 화면이 꺼졌다거나 
+배터리 잔량이 부족하다거나, 사진을 캡처했다는 것을 알리는 브로드캐스트가 있습니다.
+앱도 브로드캐스트를 시작합니다. 예를 들어, 기기에 몇 가지 데이터를 다운로드하여 다른 앱도 사용할 수 있다는 
+사실을 다른 여러 앱에게 알리는 것입니다. 브로드캐스트 수신기는 사용자 인터페이스를 표시하지 않지만, 
+<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">상태 표시줄 알림을 생성</a>하여 
+사용자에게 브로드캐스트 이벤트가 발생했다고 알릴 수 있습니다. 다만 브로드캐스트 수신기는 
+그저 다른 구성 요소로의 "게이트웨이"인 경우가 더 보편적이고, 극소량의 작업만 수행하도록 만들어진 경우가 많습니다. 예컨대 
+서비스를 시작하여 이벤트를 근거로 한 어떤 작업을 수행하도록 할 수 있습니다.
+
+<p>브로드캐스트 수신기는 {@link android.content.BroadcastReceiver}의 
+하위 클래스로 구현되며 각 브로드캐스트는 {@link android.content.Intent} 객체로 전달됩니다. 자세한 정보는 
+{@link android.content.BroadcastReceiver} 클래스를 참조하십시오.</p>
+</dd>
+
+</dl>
+
+
+
+<p>Android 시스템 디자인의 독특한 점으로 어떤 앱이든 다른 앱의 구성 요소를 시작할 수 있다는 점을 
+들 수 있습니다. 예를 들어 사용자가 기기 카메라로 사진을 캡처하기를 바라는 경우, 
+그런 작업을 수행하는 또 다른 앱이 있을 가능성이 높습니다. 그러면 사진을 캡처하는 액티비티를 직접 개발하는 대신 
+여러분의 앱이 그 앱을 사용하도록 하면 됩니다. 카메라 앱에 
+통합하기는커녕 카메라 앱의 코드에 연결시킬 필요조차도 없습니다.
+그 대신, 그저 사진을 캡처하는 카메라 앱 안의 해당 액티비티를 시작하기만 하면 
+됩니다. 작업이 완료되면 사진이 앱으로 반환되기까지 하여 바로 사용할 수 있습니다. 사용자에게는, 
+마치 카메라가 여러분의 앱의 일부분인 것처럼 보입니다.</p>
+
+<p>시스템이 구성 요소를 시작하는 경우, 그 앱에 대한 프로세스를 시작하는 것이며(이미 
+실행 중이지 않은 경우), 해당 구성 요소에 필요한 클래스를 인스턴트화하는 것입니다. 예를 들어 여러분의 앱이 
+카메라 앱 내에서 사진을 캡처하는 액티비티를 시작한다고 하면, 해당 액티비티는 
+여러분 앱의 프로세스가 아니라 카메라 앱에 속한 프로세스에서 실행됩니다. 
+따라서 대부분의 다른 시스템에서와는 달리 Android 앱에는 단일한 진입 
+지점이 없습니다(예를 들어 {@code main()} 기능이 없습니다).</p>
+
+<p>시스템이 각 앱을 별도의 프로세스에서 실행하며 다른 앱에 대한 액세스를 제한하는 
+파일 권한을 가지고 실행하기 때문에 여러분의 앱은 또 다른 앱에서 곧바로 구성 요소를 
+활성화할 수는 없습니다. 하지만 Android 시스템은 할 수 있습니다. 그래서 또 다른 앱에 있는 
+구성 요소를 활성화하려면 시스템에 메시지를 전달하여 특정 구성 요소를 시작하고자 하는 <em>인텐트</em>를 
+밝혀야 합니다. 그러면 시스템이 대신 해당 구성 요소를 활성화해줍니다.</p>
+
+
+<h3 id="ActivatingComponents">구성 요소 활성화</h3>
+
+<p>네 가지 구성 요소 중 세 가지&mdash;액티비티, 서비스 및 
+브로드캐스트 수신기&mdash;는 일명 <em>인텐트</em>라고 하는 비동기식 메시지가 활성화합니다.
+인텐트는 각각의 구성 요소를 런타임에 서로 바인딩하며(다른 구성 요소로부터 작업을 요청하는 
+일종의 메신저로 생각하면 됩니다), 이는 구성 요소가 여러분의 앱에 속하든 아니든 
+무관합니다.</p>
+
+<p>인텐트는 {@link android.content.Intent} 객체로 생성되며, 이것이 
+특정 구성 요소를 활성화할지 아니면 구성 요소의 특정 <em>유형</em>을 활성화할지를 나타내는 메시지를 정의합니다. 인텐트는 
+각각 명시적이거나 암시적일 수 있습니다.</p>
+
+<p>액티비티와 서비스의 경우, 인텐트는 수행할 작업을 정의하며(예를 들어 무언가를 '보기" 또는 
+"보내기"), 작업을 수행할 데이터의 URI를 나타낼 수 있습니다(시작되는 구성 요소가 알아야 할 것은 
+이외에도 많이 있습니다). 예를 들어, 인텐트는 액티비티에 이미지를 표시하거나 웹 페이지를 열라는 요청을 
+전달할 수 있습니다. 어떤 경우에는 액티비티를 시작하여 
+결과를 받아오도록 할 수 있습니다. 이런 경우 이 액티비티는 
+{@link android.content.Intent}로 결과를 반환하기도 합니다(예를 들어, 사용자가 
+개인적인 연락처를 선택하도록 한 다음 그것을 반환하도록 하는 인텐트를 발행할 수 있습니다&mdash;반환 인텐트에 
+선택한 연락처를 가리키는 URI가 포함됩니다).</p>
+
+<p>브로드캐스트 수신기의 경우, 인텐트는 단순히 브로드캐스트될 알림을 
+정의할 뿐입니다(예를 들어, 기기 배터리 잔량이 낮다는 것을 나타내는 브로드캐스트에는 
+"배터리 부족"을 나타내는 알려진 작업 문자열만 포함됩니다).</p>
+
+<p>남은 하나의 구성 요소 유형, 즉 콘텐츠 제공자는 인텐트가 활성화하지 않습니다. 그보다는 
+{@link android.content.ContentResolver}로부터의 요청으로 지정되면 활성화됩니다. 콘텐츠 
+확인자는 콘텐츠 제공자와의 모든 직접적인 트랜잭션을 처리하여 
+제공자와의 트랜잭션을 수행하는 구성 요소가 그런 일을 하지 않아도 되게 하고, 그 대신 {@link
+android.content.ContentResolver} 객체에서 메서드를 호출합니다. 이렇게 되면 콘텐츠 제공자와 
+정보를 요청하는 구성 요소 사이에 추상화 계층이 하나 남습니다(보안 목적).</p>
+
+<p>각 유형의 구성 요소를 활성화하는 데에는 각기 별도의 메서드가 있습니다.</p>
+<ul>
+  <li>액티비티를 시작하려면(아니면 무언가 새로운 할 일을 주려면) 
+{@link android.content.Intent}를 {@link android.content.Context#startActivity
+startActivity()} 또는 {@link android.app.Activity#startActivityForResult startActivityForResult()}에 
+전달하면 됩니다(액티비티가 결과를 반환하기를 원하는 경우).</li>
+  <li>서비스를 시작하려면(또는 진행 중인 서비스에 새로운 지침을 주려면) 
+{@link android.content.Intent}를 {@link android.content.Context#startService
+startService()}에 전달하면 됩니다. 아니면 {@link android.content.Intent}를 
+{@link android.content.Context#bindService bindService()}에 전달하여 서비스에 바인딩할 수도 있습니다.</li>
+  <li>브로드캐스트를 시작하려면 {@link android.content.Intent}를 
+{@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}, {@link
+android.content.Context#sendOrderedBroadcast(Intent, String) sendOrderedBroadcast()} 또는 {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}와 같은 메서드에 전달하면 됩니다.</li>
+  <li>콘텐츠 제공자에 쿼리를 수행하려면 {@link android.content.ContentResolver}에서 {@link
+android.content.ContentProvider#query query()}를 호출하면 됩니다.</li>
+</ul>
+
+<p>인텐트 사용에 관한 자세한 정보는 <a href="{@docRoot}guide/components/intents-filters.html">인텐트 및 
+인텐트 필터</a>문서를 참조하십시오. 특정 구성 요소를 활성화하는 데 관한 자세한 정보 또한 다음 문서에 
+제공되어 있습니다. <a href="{@docRoot}guide/components/activities.html">액티비티</a>, <a href="{@docRoot}guide/components/services.html">서비스</a>, {@link
+android.content.BroadcastReceiver} 및 <a href="{@docRoot}guide/topics/providers/content-providers.html">콘텐츠 제공자</a>.</p>
+
+
+<h2 id="Manifest">매니페스트 파일</h2>
+
+<p>Android 시스템이 앱 구성 요소를 시작하려면 시스템은 우선 해당 구성 요소가 
+존재하는지 알아야 합니다. 그러기 위해 앱의 {@code AndroidManifest.xml} 파일을 읽습니다(즉 "매니페스트"
+파일). 앱은 이 파일 안에 모든 구성 요소를 선언해야 하며, 이 파일은 앱 프로젝트 디렉터리의 루트에 
+있어야 합니다.</p>
+
+<p>매니페스트는 앱의 구성 요소를 선언하는 것 이외에도 수많은 역할을 합니다.
+예를 들면 다음과 같습니다.</p>
+<ul>
+  <li>앱이 요구하는 모든 사용자 권한 식별(예: 인터넷 액세스 또는 사용자의 연락처로의 
+읽기 액세스)</li>
+  <li>앱이 어느 API를 사용하는지를 근거로 하여 앱에서 요구하는 최소 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API 레벨</a>
+선언</li>
+  <li>앱에서 사용하거나 필요로 하는 하드웨어 및 소프트웨어 기능 선언(예: 카메라, 
+블루투스 서비스 또는 멀티터치 화면 등)</li>
+  <li>앱이 링크되어야 하는 API 라이브러리(Android 프레임워크 
+API 제외)(예: <a href="http://code.google.com/android/add-ons/google-apis/maps-overview.html">Google Maps
+라이브러리</a>)</li>
+  <li>그 외 기타 등등</li>
+</ul>
+
+
+<h3 id="DeclaringComponents">구성 요소 선언</h3>
+
+<p>매니페스트의 주요 작업은 시스템에 앱의 구성 요소에 대해 알리는 것입니다. 예를 들어 
+매니페스트 파일은 액티비티를 다음과 같이 선언할 수 있습니다. </p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest ... &gt;
+    &lt;application android:icon="@drawable/app_icon.png" ... &gt;
+        &lt;activity android:name="com.example.project.ExampleActivity"
+                  android:label="@string/example_label" ... &gt;
+        &lt;/activity&gt;
+        ...
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p><code><a
+href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+요소에서 {@code android:icon} 속성은 앱을 식별하는 아이콘에 대한 리소스를 
+가리킵니다.</p>
+
+<p><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 요소에서는, 
+{@code android:name} 속성이 {@link
+android.app.Activity} 하위 클래스의 완전히 정규화된 클래스 이름을 나타내며 {@code android:label} 속성은 액티비티의 
+사용자에게 표시되는 레이블로 사용할 문자열을 나타냅니다.</p>
+
+<p>모든 앱 구성 요소를 이렇게 선언해야 합니다.</p>
+<ul>
+  <li>액티비티는 
+<code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 요소</li>
+  <li>서비스는 
+<code><a
+href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> 요소</li>
+  <li>브로드캐스트 수신기는 
+<code><a
+href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code> 요소</li>
+  <li>콘텐츠 제공자는 
+<code><a
+href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code> 요소</li>
+</ul>
+
+<p>액티비티, 서비스를 비롯하여 소스에는 포함시키지만 매니페스트에서는 선언하지 않는 
+콘텐츠 제공자는 시스템에 표시되지 않으며, 따라서 실행될 수 없습니다.  그러나 
+브로드캐스트
+ 수신기는 매니페스트에서 선언해도 되고 코드를 사용해(
+{@link android.content.BroadcastReceiver} 객체로) 동적으로 생성한 다음 시스템에 등록해도 됩니다. 이때 
+{@link android.content.Context#registerReceiver registerReceiver()}를 호출하는 방법을 씁니다.</p>
+
+<p>앱에 맞는 매니페스트 파일을 구성하는 방법에 대한 자세한 내용은 <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">AndroidManifest.xml 파일</a>을
+ 참조하십시오. </p>
+
+
+
+<h3 id="DeclaringComponentCapabilities">구성 요소 기능 선언</h3>
+
+<p>위에서 논한 바와 같이, <a href="#ActivatingComponents">활성화 상태의 구성 요소</a>에서는 
+{@link android.content.Intent}를 사용하여 액티비티, 서비스 및 브로드캐스트 수신기를 시작할 수 있습니다. 그렇게 하려면 
+대상 구성 요소를 인텐트 내에서 명시적으로 명명하면 됩니다(구성 요소 클래스 이름을 사용). 그러나, 
+인텐트의 진정한 힘은 <em>암시적 인텐트</em>의 개념에서 발휘됩니다. 암시적 인텐트는 
+그저 수행할 작업의 유형을 설명할 뿐이며(또한, 선택 사항으로, 해당 작업을 수행하고자 하는 
+데이터 위치도) 시스템에 기기에서 작업을 수행할 수 있는 구성 요소를 찾아 
+시작하도록 해줍니다. 인텐트가 설명한 작업을 수행할 수 있는 구성 요소가 여러 개인 경우, 
+어느 것을 사용할지 사용자가 선택합니다.</p>
+
+<p>시스템이 인텐트에 응답할 수 있는 구성 요소를 식별하는 방법은 수신한 인텐트를 
+ <i>인텐트 필터</i> 와 비교하는 것입니다. 이 인텐트 필터는 기기의 다른 여러 앱의 매니페스트 
+파일이 제공합니다.</p>
+
+<p>앱의 매니페스트에서 액티비티를 선언하는 경우, 선택 사항으로 
+해당 액티비티의 기능을 선언하는 인텐트 필터를 포함시켜서 다른 앱으로부터의 인텐트에 
+응답할 수 있도록 할 수 있습니다. 구성 요소에 대한 인텐트 필터를 선언하려면 
+<a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> 요소를 해당 구성 요소의 선언 요소 하위로 추가하면 됩니다.</p>
+
+<p>예를 들어, 새 이메일을 작성하는 데 쓰는 액티비티가 있는 이메일 앱을 구축했다고 가정합시다. 이때 "전송" 인텐트에 
+응답하는 인텐트 필터를 선언하려면(새 이메일을 전송하기 위해) 다음과 같이 하면 됩니다.</p>
+<pre>
+&lt;manifest ... >
+    ...
+    &lt;application ... &gt;
+        &lt;activity android:name="com.example.project.ComposeEmailActivity">
+            &lt;intent-filter>
+                &lt;action android:name="android.intent.action.SEND" />
+                &lt;data android:type="*/*" />
+                &lt;category android:name="android.intent.category.DEFAULT" />
+            &lt;/intent-filter>
+        &lt;/activity>
+    &lt;/application&gt;
+&lt;/manifest>
+</pre>
+
+<p>그런 다음, 다른 앱이 {@link
+android.content.Intent#ACTION_SEND} 작업을 가진 인텐트를 생성하여 그것을 {@link android.app.Activity#startActivity
+startActivity()}로 전달하면 시스템이 여러분의 액티비티를 시작하여 사용자가 이메일을 임시 보관하고 전송할 수 
+있습니다.</p>
+
+<p>인텐트 필터 생성에 관한 자세한 내용은 <a href="{@docRoot}guide/components/intents-filters.html">인텐트 및 인텐트 필터</a> 문서를 참조하십시오.
+</p>
+
+
+
+<h3 id="DeclaringRequirements">앱 요구 사항 선언</h3>
+
+<p>Android로 구동되는 기기는 수없이 많지만 모두 똑같은 특징을 갖고 같은 
+기능을 제공하는 것은 아닙니다. 앱이 필요로 하는 기능이 부족한 기기에 앱을 설치하게 되는 불상사를 방지하려면, 
+앱이 지원하는 기기 유형에 대한 프로필을 명확하게 정의하는 것이 중요합니다. 
+그러려면 매니페스트 파일에 기기와 소프트웨어 요구 사항을 
+선언하면 됩니다. 이와 같은 선언은 대부분 정보성일 뿐이며 시스템은 이를 읽지 않는 것이 일반적이지만, 
+Google Play와 같은 외부 서비스는 사용자가 본인의 기기에서 앱을 검색할 때 필터링을 제공하기 위해 
+이와 같은 선언도 읽습니다.</p>
+
+<p>예를 들어, 앱에 카메라가 필요하고 Android 2.1부터 도입된 API를 사용하는 경우(<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API 레벨</a> 7) 
+이과 같은 내용을 매니페스트 파일에 요구 사항으로 선언하려면 다음과 같이 합니다.</p> 
+
+<pre>
+&lt;manifest ... >
+    &lt;uses-feature android:name="android.hardware.camera.any"
+                  android:required="true" />
+    &lt;uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" />
+    ...
+&lt;/manifest>
+</pre>
+
+<p>이제 카메라가 <em>없고</em> Android 버전이 2.1 <em>이하</em>인 기기는 
+Google Play에서 여러분의 앱을 설치할 수 없습니다.</p>
+
+<p>그러나, 앱이 카메라를 사용하기는 하지만 꼭 
+<em>필요한</em> 것은 아니라고 선언할 수도 있습니다. 이 경우에는, 앱이 <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#required">{@code required}</a>
+ 속성을 {@code "false"}에 설정하고 런타임을 확인하여 
+해당 기기에 카메라가 있는지, 경우에 따라 모든 카메라 기능을 비활성화할 수 있는지 알아봅니다.</p>
+
+<p>여러 가지 기기와 앱의 호환성을 관리하는 방법에 대한 자세한 정보는 
+<a href="{@docRoot}guide/practices/compatibility.html">기기 호환성</a>
+ 문서를 참조하십시오.</p>
+
+
+
+<h2 id="Resources">앱 리소스</h2>
+
+<p>Android 앱을 이루는 것은 코드만이 아닙니다. 소스 코드와는 별개인 여러 리소스가 필요합니다.
+예를 들어 이미지, 오디오 파일과 앱을 시각적으로 표현하는 것과 관련된 모든 것들이 있습니다. 
+예컨대 애니메이션, 메뉴, 스타일, 색상과 액티비티 사용자 인터페이스의 레이아웃을 XML 파일로 
+정의해야 합니다. 앱 리소스를 사용하면 앱의 다양한 특성을 
+쉽게 업데이트할 수 있으며 코드를 수정하지 않아도 되고 일련의 대체 리소스를 
+제공함으로써 다양한 기기 구성에 맞게 앱을 
+최적화할 수도 있습니다(예: 여러 가지 언어 및 화면 크기).</p>
+
+<p>Android 프로젝트에 포함시키는 리소스마다 SDK 빌드 도구가 고유한 
+정수 ID를 정의하므로, 이를 사용하여 앱 코드에서의 리소스나 XML로 정의된 
+다른 리소스에서 참조할 수 있습니다. 예를 들어 앱에 {@code
+logo.png}라는 이름의 이미지 파일이 들어 있다고 하면({@code res/drawable/} 디렉터리에 저장됨) SDK 도구가 
+{@code R.drawable.logo}라는 리소스 ID를 생성합니다. 이것을 사용하여 이미지를 참조하고 사용자 인터페이스에 
+삽입할 수 있습니다.</p>
+
+<p>소스 코드와는 별개로 리소스를 제공하는 것의 가장 중요한 측면 중 하나는 
+여러 가지 기기 구성에 맞게 대체 리소스를 제공할 능력을 갖추게 
+됩니다. 예를 들어 UI 문자열을 XML로 정의하면 이러한 문자열을 다른 언어로 변환한 뒤 
+그러한 문자열을 별개의 파일에 저장할 수 있습니다. 그런 다음, 리소스 디렉터리 이름에 추가한 언어 <em>한정자</em>
+(예를 들어 프랑스어 문자열 값의 경우 {@code res/values-fr/}) 및 
+사용자의 언어 설정을 근거로 하여 Android 시스템이 적절한 언어 문자열을 UI에 
+적용하는 것입니다.</p>
+
+<p>Android는 대체 리소스에 대해 다양한 <em>한정자</em>를 지원합니다. 한정자란
+ 리소스 디렉터리의 이름에 포함시키는 짧은 문자열로, 이를 사용해 해당 리소스를 사용할 기기 구성을 
+정의합니다. 또 다른 예를 들자면, 
+기기의 화면 방향과 크기에 따라 액티비티에 여러 가지 레이아웃을 생성해야 할 때가 
+많습니다. 예를 들어 기기 화면이 세로 
+방향(키가 큼)인 경우, 버튼이 세로 방향으로 되어 있는 레이아웃을 사용하는 것이 좋지만 화면이 
+가로 방향(폭이 넓음)인 경우, 버튼이 가로 방향으로 정렬되어야 합니다. 방향에 따라 레이아웃을 변경하려면, 
+서로 다른 두 가지 레이아웃을 정의하여 적절한 한정자를 각각의 레이아웃의 디렉터리 이름에 
+적용하면 됩니다. 그러면 시스템이 현재 기기 방향에 따라 적절한 레이아웃을 
+자동으로 적용합니다.</p>
+
+<p>애플리케이션에 포함할 수 있는 여러 가지 종류의 리소스와, 각기 다른 기기 구성에 따라 
+대체 리소스를 생성하는 방법에 대한 자세한 내용은 <a href="{@docRoot}guide/topics/resources/providing-resources.html">리소스 제공</a>을 읽어보십시오.</p>
+
+
+
+<div class="next-docs">
+<div class="col-6">
+  <h2 class="norule">계속 읽기:</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/components/intents-filters.html">인텐트 및 인텐트 필터</a>
+    </dt>
+    <dd>{@link android.content.Intent} API를 사용하여 
+앱 구성 요소(예: 액티비티 및 서비스 등)를 활성화하는 방법, 앱 구성 요소를 다른 여러 앱이 사용할 수 있도록 하는 방법 
+등에 관한 정보입니다.</dd>
+    <dt><a href="{@docRoot}guide/components/activities.html">액티비티</a></dt>
+    <dd>{@link android.app.Activity} 클래스의 인스턴스를 생성하는 방법에 관한 정보로, 
+애플리케이션에 사용자 인터페이스가 있는 독특한 화면을 제공합니다.</dd>
+    <dt><a href="{@docRoot}guide/topics/resources/providing-resources.html">리소스 제공</a></dt>
+    <dd>Android 앱이 앱 코드와는 별개의 앱 리소스에 대해 구조화된 방식에 관한 정보로, 
+특정 기기 구성에 맞게 대체 리소스를 제공하는 방법도 포함되어 
+있습니다.
+    </dd>
+  </dl>
+</div>
+<div class="col-6">
+  <h2 class="norule">혹시 다음과 같은 내용에도 흥미가 있으신가요?</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/practices/compatibility.html">기기 호환성</a></dt>
+    <dd>여러 가지 유형의 기기에서 Android의 작동 방식과 앱을 각 기기에 맞춰 최적화하는 방법 
+또는 여러 가지 기기에 대해 앱의 가용성을 제한하는 방법 등에 관한 
+정보입니다.</dd>
+    <dt><a href="{@docRoot}guide/topics/security/permissions.html">시스템 권한</a></dt>
+    <dd>Android가 특정 API에 대한 앱의 액세스를 제한하기 위해 권한 시스템을 
+사용하는 방법으로, 그러한 API를 사용하려면 앱에 대해 사용자의 승인이 필요합니다.</dd>
+  </dl>
+</div>
+</div>
+
diff --git a/docs/html-intl/intl/ko/guide/components/index.jd b/docs/html-intl/intl/ko/guide/components/index.jd
new file mode 100644
index 0000000..3662632
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/index.jd
@@ -0,0 +1,57 @@
+page.title=앱 구성 요소
+page.landing=true
+page.landing.intro=Android의 애플리케이션 프레임워크는 일련의 재사용 가능한 구성 요소를 사용하여 풍성하고 혁신적인 앱을 생성할 수 있습니다. 이 섹션에서는 앱의 구성 단위를 정의 내리는 구성 요소를 구축하는 방법과 인텐트를 사용하여 이와 같은 구성 요소를 연결시키는 법을 설명합니다. 
+page.metaDescription=Android의 애플리케이션 프레임워크는 일련의 재사용 가능한 구성 요소를 사용하여 풍성하고 혁신적인 앱을 생성할 수 있습니다. 이 섹션에서는 앱의 구성 단위를 정의 내리는 구성 요소를 구축하는 방법과 인텐트를 사용하여 이와 같은 구성 요소를 연결시키는 법을 설명합니다. 
+page.landing.image=images/develop/app_components.png
+page.image=images/develop/app_components.png
+
+@jd:body
+
+<div class="landing-docs">
+
+  <div class="col-6">
+    <h3>블로그 문서</h3>
+    
+    <a href="http://android-developers.blogspot.com/2012/05/using-dialogfragments.html">
+      <h4>DialogFragment 사용하기</h4>
+      <p>이 포스트에서는 v4 지원 라이브러리와 함께 DialogFragment를 사용하여(Honeycomb 이전 기기에서 이전 버전과의 호환성을 위해) 간단한 편집 대화를 표시하고 인터페이스를 사용하여 호출 중인 액티비티에 결과를 반환하는 법을 보여드립니다.</p>
+    </a>
+
+    <a href="http://android-developers.blogspot.com/2011/03/fragments-for-all.html">
+      <h4>모두를 위한 프래그먼트</h4>
+      <p>Google에서는 오늘 같은 프래그먼트 API를 노출하는 정적 라이브러리를 출시했습니다(새로운 LoaderManager와 몇 가지 다른 클래스도 포함). 이 덕분에 Android 1.6 이후 버전과 호환되는 애플리케이션이 프래그먼트를 사용하여 태블릿과 호환되는 사용자 인터페이스를 생성할 수 있게 되었습니다. </p>
+    </a>
+    
+    <a href="http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html">
+      <h4>성능을 위한 다중 스레딩</h4>
+      <p>반응형 애플리케이션을 생성할 때에는 주요 UI 스레드가 최소한의 작업만 
+하도록 하는 것이 좋습니다. 애플리케이션을 중단시킬 수 있는, 
+길어질 수 있는 작업은 모두 다른 스레드에서 처리해야 합니다.</p>
+    </a>
+  </div>
+
+  <div class="col-6">
+    <h3>교육</h3>
+    
+    <a href="http://developer.android.com/training/basics/activity-lifecycle/index.html">
+      <h4>액티비티 수명 주기 관리하기</h4>
+      <p>이 클래스에서는 각각의 액티비티 
+인스턴스가 수신하는 중요한 수명 주기 콜백 메서드를 설명합니다. 또한 이러한 콜백 메서드를 사용하여 액티비티가 
+사용자가 원하는 작업을 하고, 액티비티가 필요로 하지 않을 때 시스템 리소스 사용을 방지하는 방법에 대해서도 설명합니다.</p>
+    </a>
+
+    <a href="http://developer.android.com/training/basics/fragments/index.html">
+      <h4>프래그먼트로 동적 UI 구축하기</h4>
+      <p>이 클래스에서는 Android 1.6만큼 오래된 버전을 실행하는 기기도 
+계속 지원하면서 프래그먼트로 동적 사용자 경험을 생성하고, 기기의 화면 크기에 따라 앱의 사용자 환경을 
+최적화할 수 있는 방법을 보여줍니다.</p>
+    </a>
+
+    <a href="http://developer.android.com/training/sharing/index.html">
+      <h4>콘텐츠 공유하기</h4>
+      <p>이 클래스는 인텐트 API와 ActionProvider 객체를 사용하여 여러 애플리케이션 사이에서 
+콘텐츠를 전송하고 수신하는 몇 가지 보편적인 방법을 다룹니다.</p>
+    </a>
+  </div>
+
+</div>
diff --git a/docs/html-intl/intl/ko/guide/components/intents-filters.jd b/docs/html-intl/intl/ko/guide/components/intents-filters.jd
new file mode 100644
index 0000000..1488a1d
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/intents-filters.jd
@@ -0,0 +1,899 @@
+page.title=인텐트 및 인텐트 필터
+page.tags="IntentFilter"
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>이 문서의 내용</h2>
+<ol>
+  <li><a href="#Types">인텐트 유형</a></li>
+  <li><a href="#Building">인텐트 구축</a>
+    <ol>
+      <li><a href="#ExampleExplicit">명시적 인텐트 예시</a></li>
+      <li><a href="#ExampleSend">암시적 인텐트 예시</a></li>
+      <li><a href="#ForceChooser">앱 선택기 강제 적용하기</a></li>
+    </ol>
+  </li>
+  <li><a href="#Receiving">암시적 인텐트 수신하기</a>
+    <ol>
+      <li><a href="#ExampleFilters">필터 예시</a></li>
+    </ol>
+  </li>
+  <li><a href="#PendingIntent">보류 인텐트 사용하기</a></li>
+  <li><a href="#Resolution">인텐트 확인</a>
+    <ol>
+      <li><a href="#ActionTest">작업 테스트</a></li>
+      <li><a href="#CategoryTest">카테고리 테스트</a></li>
+      <li><a href="#DataTest">데이터 테스트</a></li>
+      <li><a href="#imatch">인텐트 일치</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>참고 항목</h2>
+<ol>
+<li><a href="{@docRoot}training/basics/intents/index.html">다른 앱과 상호 작용하기</a></li>
+<li><a href="{@docRoot}training/sharing/index.html">콘텐츠 공유하기</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+
+<p>{@link android.content.Intent}는 일종의 메시지 객체입니다. 이것을 사용해 다른
+<a href="{@docRoot}guide/components/fundamentals.html#Components">앱 구성 요소</a>로부터 작업을 요청할 수 있습니다.
+인텐트가 여러 구성 요소 사이의 통신을 용이하게 하는 데에는 몇 가지 방법이 있지만,
+기본적인 사용 사례는 다음과 같은 세 가지입니다.</p>
+
+<ul>
+<li><b>액티비티 시작하기:</b>
+<p>{@link android.app.Activity}는 앱 안의 화면 하나를 나타냅니다.
+{@link android.app.Activity}의 새 인스턴스를 시작하려면 {@link android.content.Intent}를
+{@link android.content.Context#startActivity startActivity()}로 전달하면 됩니다. {@link android.content.Intent}는
+시작할 액티비티를 설명하고 모든 필수 데이터를 담고 있습니다.</p>
+
+<p>액티비티가 완료되었을 때 결과를 수신하려면,
+{@link android.app.Activity#startActivityForResult
+startActivityForResult()}를 호출합니다. 액티비티는 해당 결과를 액티비티의 {@link
+android.app.Activity#onActivityResult onActivityResult()} 콜백에서 별도의
+{@link android.content.Intent} 객체로 수신합니다.
+자세한 정보는 <a href="{@docRoot}guide/components/activities.html">액티비티</a> 가이드를 참조하십시오.</p></li>
+
+<li><b>서비스 시작하기:</b>
+<p>{@link android.app.Service}는 사용자 인터페이스 없이
+배경에서 작업을 수행하는 구성 요소입니다. 서비스를 시작하여 일회성 작업을 수행하도록 하려면(예: 파일 다운로드)
+{@link android.content.Intent}를
+{@link android.content.Context#startService startService()}에 전달하면 됩니다. {@link android.content.Intent}는
+ 시작할 서비스를 설명하고 모든 필수 데이터를 담고 있습니다.</p>
+
+<p>서비스가 클라이언트-서버 인터페이스로 설계된 경우, 다른 구성 요소로부터
+서비스에 바인딩하려면 {@link android.content.Intent}를 {@link
+android.content.Context#bindService bindService()}에 전달하면 됩니다.</code> 자세한 정보는 <a href="{@docRoot}guide/components/services.html">서비스</a> 가이드를 참조하십시오.</p></li>
+
+<li><b>브로드캐스트 전달하기:</b>
+<p>브로드캐스트는 모든 앱이 수신할 수 있는 메시지입니다. 시스템은 여러 시스템 이벤트에 대해 다양한
+브로드캐스트를 전달합니다. 예를 들어 시스템이 부팅될 때 또는 기기가 변경되기 시작할 때 등이 해당됩니다.
+다른 여러 앱에 브로드캐스트를 전달하려면 {@link android.content.Intent}를
+{@link android.content.Context#sendBroadcast(Intent) sendBroadcast()},
+{@link android.content.Context#sendOrderedBroadcast(Intent, String)
+sendOrderedBroadcast()} 또는 {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}에 전달하면 됩니다.</p>
+</li>
+</ul>
+
+
+
+
+<h2 id="Types">인텐트 유형</h2>
+
+<p>인텐트에는 두 가지 유형이 있습니다.</p>
+
+<ul>
+<li><b>명시적 인텐트</b>는 시작할 구성 요소를 이름으로 지정합니다(완전히
+정규화된 클래스 이름). 명시적 인텐트는 일반적으로 본인의 앱 안에서 구성 요소를 시작할 때 씁니다.
+시작하고자 하는 액티비티 또는 서비스의 클래스 이름을 알고 있기 때문입니다. 예를 들어,
+사용자 작업에 응답하여 새 액티비티를 시작하거나 배경에서 파일을 다운로드하기 위해
+서비스를 시작하는 것 등이 여기에 해당됩니다.</li>
+
+<li><b>암시적 인텐트</b>는 특정 구성 요소의 이름을 대지 않지만, 그 대신 수행할 일반적일 작업을
+선언하여 또 다른 앱의 구성 요소가 이를 처리할 수 있도록 해줍니다. 예를 들어, 사용자에게 지도에 있는 한 위치를
+표시해주고자 하는 경우, 암시적 인텐트를 사용하여 다른, 해당 기능을 갖춘 앱이
+지정된 위치를 지도에 표시하도록 요청할 수 있습니다.</li>
+</ul>
+
+<p>명시적 인텐트를 생성하여 액티비티나 서비스를 시작하도록 하면, 시스템이 즉시
+{@link android.content.Intent} 객체에서 지정된 앱 구성 요소를 시작합니다.</p>
+
+<div class="figure" style="width:446px">
+<img src="{@docRoot}images/components/intent-filters@2x.png" width="446" alt="" />
+<p class="img-caption"><strong>그림 1.</strong> 암시적 인텐트가 시스템을 통해 전달되어
+다른 액티비티를 시작하게 하는 방법을 그림으로 나타낸 것입니다. <b>[1]</b> <em>액티비티 A</em>가 작업 설명이 들어 있는
+{@link android.content.Intent}를 생성하여 이를 {@link
+android.content.Context#startActivity startActivity()}에 전달합니다. <b>[2]</b> Android 시스템이
+해당 인텐트와 일치하는 인텐트 필터를 찾아 모든 앱을 검색합니다. 일치하는 것을 찾으면, <b>[3]</b> 시스템이
+일치하는 액티비티(<em>액티비티 B</em>)를 시작하기 위해 그 액티비티의 {@link
+android.app.Activity#onCreate onCreate()} 메서드를 호출하여 이를 {@link android.content.Intent}에 전달합니다.
+</p>
+</div>
+
+<p>암시적 인텐트를 생성하면 Android 시스템이 시작시킬 적절한 구성 요소를 찾습니다.
+이때 인텐트의 내용을 기기에 있는 다른 여러 앱의 <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">매니페스트 파일</a>에서 선언된 <em>인텐트 필터</em>와 비교하는 방법을
+씁니다. 해당 인텐트와 일치하는 인텐트 필터가 있으면 시스템이 해당 구성 요소를 시작하고 이에
+{@link android.content.Intent} 객체를 전달합니다. 호환되는 인텐트 필터가 여러 개인 경우, 시스템은
+대화를 표시하여 사용자가 어느 앱을 사용할지 직접 선택할 수 있게 합니다.</p>
+
+<p>인텐트 필터란 앱의 매니페스트 파일에 들어 있는 표현으로,
+해당 구성 요소가 수신하고자 하는 인텐트의 유형을
+나타낸 것입니다. 예를 들어 액티비티에 대한 인텐트 필터를 선언하면
+다른 여러 앱이 특정한 종류의 인텐트를 가지고 여러분의 액티비티를 직접 시작할 수 있습니다.
+이와 마찬가지로, 액티비티에 대한 인텐트 필터를 전혀 선언하지 <em>않으면</em> 명시적 인텐트로만
+시작할 수 있습니다.</p>
+
+<p class="caution"><strong>주의:</strong> 앱의 보안을 보장하려면
+{@link android.app.Service}를 시작할 때에는 항상 명시적 인텐트만 사용하고 서비스에 대한 인텐트 필터는
+선언하지 마십시오. 암시적 인텐트를 사용하여 서비스를 시작하면
+보안 위험을 초래합니다. 인텐트에 어느 서비스가 응답할 것인지 확신할 수 없고, 사용자가
+어느 서비스가 시작되는지 볼 수 없기 때문입니다. Android 5.0(API 레벨 21)부터 시스템은 개발자가 암시적 인텐트로
+{@link android.content.Context#bindService bindService()}를
+호출하면 예외를 발생시킵니다.</p>
+
+
+
+
+
+<h2 id="Building">인텐트 구축</h2>
+
+<p>{@link android.content.Intent} 객체에는 Android 시스템이
+어느 구성 요소를 시작할지 판별하는 데 사용하는 정보가 담겨 있습니다(예를 들어 정확한 구성 요소 이름 또는 인텐트를
+수신해야 하는 구성 요소 카테고리 등). 또한 수신자 구성 요소가 작업을 적절히 수행하기 위해
+사용할 정보(예: 수행할 작업 및 조치를 취할 데이터 위치 등)도 이 안에 담겨 있습니다.</p>
+
+
+<p>{@link android.content.Intent} 내에 들어 있는 기본 정보는 다음과 같습니다.</p>
+
+<dl>
+
+<dt><b>구성 요소 이름</b></dt>
+<dd>시작할 구성 요소의 이름입니다.
+
+<p>이것은 선택 항목이지만, 이것이 바로 인텐트를
+<b>명시적</b>인 것으로 만들어주는 중요한 정보입니다. 다시 말해 이 인텐트는 구성 요소 이름이 정의한 앱 구성 요소에만
+전달되어야 한다는 뜻입니다. 구성 요소 이름이 없으면 해당 인텐트는 <b>암시적</b>이며,
+인텐트를 수신해야 하는 구성 요소는 다른 인텐트 정보를 기반으로 시스템이
+결정합니다(예를 들어 작업, 데이터 및 카테고리 &mdash; 아래 설명 참조). 따라서 앱에서 특정한 구성 요소를
+시작해야 하는 경우에는, 구성 요소 이름을 지정해야 합니다.</p>
+
+<p class="note"><strong>참고:</strong> {@link android.app.Service}를 시작하는 경우,
+<strong>항상 구성 요소 이름을 지정</strong>해야 합니다. 그렇지 않으면 인텐트에 어느 서비스가 응답할지 확신할 수 없고,
+사용자도 어느 서비스가 시작되는지 볼 수 없게 됩니다.</p>
+
+<p>{@link android.content.Intent}의 필드는
+{@link android.content.ComponentName} 객체로, 이것을 지정하려면 대상 구성 요소의 완전히
+정규화된 클래스 이름(앱의 패키지 이름 포함)을 사용해야 합니다. 예를 들면
+{@code com.example.ExampleActivity}를 쓰십시오. 구성 요소 이름을 설정하려면 {@link
+android.content.Intent#setComponent setComponent()}, {@link android.content.Intent#setClass
+setClass()}, {@link android.content.Intent#setClassName(String, String) setClassName()}을 사용하거나, 아니면
+{@link android.content.Intent} 생성자를 사용하면 됩니다.</p>
+
+</dd>
+
+<p><dt><b>작업</b></dt>
+<dd>수행할 일반적인 작업을 나타내는 문자열입니다(예: <em>보기</em> 또는 <em>선택</em>).
+
+<p>브로드캐스트 인텐트의 경우, 이것이 발생한 작업이자 보고되는 것이기도 합니다.
+인텐트의 나머지 부분이 어떻게 구조화될지는 대부분 작업이 결정합니다. 특히,
+데이터 안에 들어 있는 것과 추가 항목 등이 해당됩니다.
+
+<p>본인의 앱 내에 있는 인텐트가 사용할 작업(또는 다른 앱이 사용하여
+본인의 앱 안의 구성 요소를 호출하도록 함)을 직접 지정할 수도 있지만, 보통은
+{@link android.content.Intent} 클래스나 다른 프레임워크 클래스가 정의한 작업 상수를 써야 합니다. 다음은
+액티비티를 시작하는 데 쓰이는 보편적인 작업입니다.</p>
+
+<dl>
+<dt>{@link android.content.Intent#ACTION_VIEW}</dt>
+   <dd>이 작업은 액티비티가 사용자에게 표시할 수 있는 어떤 정보를 가지고 있을 때 {@link
+   android.content.Context#startActivity startActivity()}가 있는 인텐트에서
+사용합니다. 예를 들어 갤러리 앱에서 볼 사진이나 지도 앱에서 볼 주소 등이
+이에 해당됩니다.</dd>
+
+<dt>{@link android.content.Intent#ACTION_SEND}</dt>
+   <dd>이것은 다른 이름으로 "공유" 인텐트라고도 합니다. 이것은 사용자가 다른 앱을 통해 공유할 수 있는 데이터를 가지고 있을 때 {@link
+   android.content.Context#startActivity startActivity()}가 있는 인텐트에서 사용합니다. 예를 들어
+이메일 앱 또는 소셜 공유 앱 등이 이에 해당됩니다.</dd>
+</dl>
+
+<p>일반적인 작업을 정의하는 상수에 대한 자세한 내용은 {@link android.content.Intent} 클래스
+참조를 확인하십시오.  다른 작업은 Android 프레임워크의 다른 곳에서 정의됩니다. 예를 들어
+시스템의 설정 앱에서 특정 화면을 여는 작업의 경우 {@link android.provider.Settings}에서
+정의됩니다.</p>
+
+<p>인텐트에 대한 작업을 지정하려면 {@link android.content.Intent#setAction
+setAction()} 또는 {@link android.content.Intent} 생성자를 사용하면 됩니다.</p>
+
+<p>나름의 작업을 직접 정의하는 경우, 앱의 패키지 이름을 접두사로 포함시켜야
+합니다. 예:</p>
+<pre>static final String ACTION_TIMETRAVEL = "com.example.action.TIMETRAVEL";</pre>
+</dd>
+
+<dt><b>데이터</b></dt>
+<dd>작업을 수행할 데이터 및/또는 해당 데이터의 MIME 유형을 참조하는 URI({@link android.net.Uri}
+객체)입니다. 제공된 데이터의 유형을 나타내는 것은 일반적으로 인텐트의 작업입니다. 예를 들어
+인텐트가 {@link android.content.Intent#ACTION_EDIT}인 경우, 데이터에
+편집할 문서의 URI가 들어있어야 합니다.
+
+<p>인텐트를 생성할 때에는
+URI외에도 데이터의 유형(MIME 유형)을 지정하는 것이 중요한 경우가 많습니다.
+예를 들어, 이미지를 표시할 수 있는 액티비티는 아마도 오디오 파일을 재생할 수 없을 가능성이
+큽니다. 두 가지 기능의 URI 형식은 비슷할지라도 말입니다.
+그러므로 데이터의 MIME 유형을 지정해두면 Android 시스템이
+인텐트를 수신할 최상의 구성 요소를 찾는 데 도움이 됩니다.
+하지만, MIME 유형은 URI에서 추론되는 경우도 종종 있습니다. 특히 데이터가
+{@code content:} URI인 경우 더욱 그러한데, 이는 데이터가 기기에 위치하고 있으며
+{@link android.content.ContentProvider}가 제어한다는 것을 나타내어 해당 데이터 MIME 유형이 시스템에 표시되도록 합니다.</p>
+
+<p>데이터 URI만 설정하려면 {@link android.content.Intent#setData setData()}를 호출하십시오.
+MIME 유형만 설정하려면, {@link android.content.Intent#setType setType()}을 호출합니다. 필요한 경우,
+두 가지를 모두 명시적으로 설정해도 됩니다. 이때는 {@link
+android.content.Intent#setDataAndType setDataAndType()}을 사용하십시오.</p>
+
+<p class="caution"><strong>주의:</strong> URI와 MIME 유형을 둘 다 설정하고자 하는 경우, {@link android.content.Intent#setData setData()} 및
+{@link android.content.Intent#setType setType()}을 호출하면
+<strong>안 됩니다</strong>. 이 둘은 서로의 값을 무효화하기 때문입니다. URI와 MIME 유형을 둘 모두 설정하려면
+항상 {@link android.content.Intent#setDataAndType setDataAndType()}을
+사용하십시오.</p>
+</dd>
+
+<p><dt><b>카테고리</b></dt>
+<dd>인텐트를 처리해야 하는 구성 요소의 종류에 관한 추가 정보를 담은
+문자열입니다.  인텐트 안에는 카테고리 설명이
+얼마든지 들어있을 수 있지만, 대부분의 인텐트에는 카테고리가 없어도 됩니다.
+다음은 몇 가지 보편적인 카테고리입니다.
+
+<dl>
+<dt>{@link android.content.Intent#CATEGORY_BROWSABLE}</dt>
+  <dd>대상 액티비티가 스스로 웹 브라우저가 자신을 시작해도 되도록 허용하여
+링크로 참조된 데이터를 표시하게 합니다. 예컨대 이미지나 이메일 메시지 등이 이에 해당합니다.
+  </dd>
+<dt>{@link android.content.Intent#CATEGORY_LAUNCHER}</dt>
+  <dd>이 액티비티가 작업의 최초 액티비티이며, 이것이 시스템의 애플리케이션 시작 관리자에
+목록으로 게재되어 있습니다.
+  </dd>
+</dl>
+
+<p>카테고리의 전체 목록을 보려면 {@link android.content.Intent}
+클래스 설명을 참조하십시오.</p>
+
+<p>카테고리를 지정하려면 {@link android.content.Intent#addCategory addCategory()}를 사용하면 됩니다.</p>
+</dd>
+</dl>
+
+
+<p>위에 목록으로 나열된 이러한 특성(구성 요소 이름, 작업, 데이터 및 카테고리)은 인텐트를 정의하는 특성을
+나타냅니다. Android 시스템은 이와 같은 속성을 읽어
+어느 앱 구성 요소를 시작해야 할지 확인할 수 있습니다.</p>
+
+<p>그러나 인텐트는 앱 구성 요소로 확인되는 방법에 영향을 미치지 않는
+추가 정보도 담고 있을 수 있습니다. 인텐트가 제공할 수 있는 기타 정보는 다음과 같습니다.</p>
+
+<dl>
+<dt><b>추가 사항</b></dt>
+<dd>요청한 작업을 수행하기 위해 필요한 추가 정보를 담고 있는 키-값 쌍입니다.
+몇몇 작업이 특정한 종류의 데이터 URI를 사용하는 것과 마찬가지로, 몇몇 작업은 특정한 추가 사항도 사용합니다.
+
+<p>추가 데이터를 추가하려면 여러 가지 {@link android.content.Intent#putExtra putExtra()} 메서드를
+사용할 수 있습니다. 이들은 각기 두 개의 매개변수를 허용합니다. 즉 키 이름과 값입니다.
+모든 추가 데이터를 가진 {@link android.os.Bundle} 객체를 생성할 수도 있고, 그런 다음
+{@link android.os.Bundle}을 {@link android.content.Intent}에 {@link
+android.content.Intent#putExtras putExtras()}로 삽입해도 됩니다.</p>
+
+<p>예를 들어
+{@link android.content.Intent#ACTION_SEND}로 이메일을 전송할 인텐트를 생성하는 경우 "받는 사람" 수신자를 지정할 때
+{@link android.content.Intent#EXTRA_EMAIL} 키를 사용한 다음 "제목"은
+{@link android.content.Intent#EXTRA_SUBJECT} 키로 지정하면 됩니다.</p>
+
+<p>{@link android.content.Intent} 클래스는 표준화된 데이터 유형에 대해 수많은 {@code EXTRA_*} 상수를
+지정합니다. 나름의 추가 키를 선언해야 하는 경우(본인의 앱이 수신할
+인텐트에 대하여), 앱의 패키지 이름을 접두사로 포함시커야
+합니다. 예:</p>
+<pre>static final String EXTRA_GIGAWATTS = "com.example.EXTRA_GIGAWATTS";</pre>
+</dd>
+
+<dt><b>플래그</b></dt>
+<dd>{@link android.content.Intent} 클래스에서 정의된 플래그로, 인텐트에 대한 메타데이터와 같은 기능을
+합니다. 이런 플래그는 Android 시스템에 액티비티를 시작할 방법에 대한 지침을 줄 수도 있고(예를 들어 액티비티가 어느
+<a href="{@docRoot}guide/components/tasks-and-back-stack.html">작업</a>에 소속되어야 하는지 등)
+ 액티비티를 시작한 다음에 어떻게 처리해야 하는지도 알려줄 수 있습니다(예를 들어 해당 액티비티가 최근
+액티비티 목록에 소속되는지 여부).
+
+<p>자세한 정보는 {@link android.content.Intent#setFlags setFlags()} 메서드를 참조하십시오.</p>
+</dd>
+
+</dl>
+
+
+
+
+<h3 id="ExampleExplicit">명시적 인텐트 예시</h3>
+
+<p>명시적 인텐트는 특정한 앱 구성 요소를 시작하기 위해 사용하는 것입니다. 예를 들어 앱 내의
+특정 액티비티나 서비스를 말합니다. 명시적 인텐트를 생성하려면
+{@link android.content.Intent} 객체에 대한 구성 요소 이름을 정의합니다. 다른
+인텐트 속성은 모두 선택 사항입니다.</p>
+
+<p>예를 들어 앱 안에 {@code DownloadService}라는 서비스를 구축했다고 합시다.
+이 서비스는 웹 상에서 파일을 다운로드하도록 설계된 것입니다. 이것을 시작하려면 다음과 같은 코드를 사용하면 됩니다.</p>
+
+<pre>
+// Executed in an Activity, so 'this' is the {@link android.content.Context}
+// The fileUrl is a string URL, such as "http://www.example.com/image.png"
+Intent downloadIntent = new Intent(this, DownloadService.class);
+downloadIntent.setData({@link android.net.Uri#parse Uri.parse}(fileUrl));
+startService(downloadIntent);
+</pre>
+
+<p>{@link android.content.Intent#Intent(Context,Class)}
+ 생성자가 앱에 {@link android.content.Context}를 제공하고
+구성 요소에 {@link java.lang.Class} 객체를 제공합니다. 이처럼,
+이 인텐트는 앱 내의 {@code DownloadService} 클래스를 명시적으로 시작합니다.</p>
+
+<p>서비스를 구축하고 시작하는 데 대한 자세한 정보는
+<a href="{@docRoot}guide/components/services.html">서비스</a> 가이드를 참조하십시오.</p>
+
+
+
+
+<h3 id="ExampleSend">암시적 인텐트 예시</h3>
+
+<p>암시적 인텐트는 작업을 지정하여 기기에서 해당 작업을 수행할 수 있는 모든 앱을 호출할 수
+있도록 합니다. 암시적 인텐트를 사용하면 본인의 앱은 작업을 수행할 수 없지만 다른 앱은 아마도 할 수 있을 때,
+그리고 사용자로 하여금 어느 앱을 사용할지 선택하도록 하고자 할 때 유용합니다.</p>
+
+<p>예를 들어 사용자가 다른 사람들과 공유했으면 하는 콘텐츠를 가지고 있는 경우,
+{@link android.content.Intent#ACTION_SEND} 작업이 있는 인텐트를 생성한 다음
+공유할 콘텐츠를 지정하는 추가 정보를 추가하면 됩니다. 해당 인텐트로
+{@link android.content.Context#startActivity startActivity()}를 호출하면
+사용자가 어느 앱을 통해 콘텐츠를 공유할지 선택할 수 있습니다.</p>
+
+<p class="caution"><strong>주의:</strong> 개발자가 {@link android.content.Context#startActivity
+startActivity()}로 전송한 암시적 인텐트를 처리할 앱이 사용자에게 <em>전혀</em>
+표시되지 않을 수도 있습니다. 이런 일이 발생하면, 호출이 실패하고 앱 작동이 중단됩니다. 어느 액티비티든
+이 인텐트를 수신하도록 확실히 하려면, {@link android.content.Intent} 객체의 {@link android.content.Intent#resolveActivity
+resolveActivity()}를 호출합니다. 결과가 null이 아닌 경우,
+인텐트를 처리할 수 있는 앱이 최소한 하나는 있다는 뜻이며
+{@link android.content.Context#startActivity startActivity()}를 호출해도 안전합니다. 결과가 null이면,
+해당 인텐트를 사용해서는 안 되며 가능한 경우 해당 인텐트를 발생시키는 기능을 비활성화해야
+합니다.</p>
+
+
+<pre>
+// Create the text message with a string
+Intent sendIntent = new Intent();
+sendIntent.setAction(Intent.ACTION_SEND);
+sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
+sendIntent.setType("text/plain");
+
+// Verify that the intent will resolve to an activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(sendIntent);
+}
+</pre>
+
+<p class="note"><strong>참고:</strong> 이 경우에서는 URI를 사용하지 않았지만 인텐트의 데이터 유형이 정의되어
+추가 정보가 담고 있는 콘텐츠를 지정하였습니다.</p>
+
+
+<p>{@link android.content.Context#startActivity startActivity()}를 호출하면 시스템이
+설치된 앱을 모두 살펴보고 이런 종류의 인텐트를 처리할 수 있는 앱이 어느 것인지 알아봅니다(
+{@link android.content.Intent#ACTION_SEND} 작업이 있는 인텐트이며 "텍스트/일반"
+데이터가 담긴 것). 이것을 처리할 수 있는 앱이 하나뿐이면, 해당 앱이 즉시 열리고 이 앱에 인텐트가
+주어집니다. 인텐트를 허용하는 액티비티가 여러 개인 경우, 시스템은
+대화를 표시하여 사용자가 어느 앱을 사용할지 직접 선택할 수 있게 합니다.</p>
+
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/training/basics/intent-chooser.png" alt="">
+  <p class="img-caption"><strong>그림 2.</strong> 선택기 대화입니다.</p>
+</div>
+
+<h3 id="ForceChooser">앱 선택기 강제 적용하기</h3>
+
+<p>암시적 인텐트에 응답하는 앱이 하나 이상인 경우,
+사용자가 어느 앱을 사용할지 선택할 수 있으며 해당 앱을 이 작업에 대한 기본 선택으로 만들 수
+있습니다. 이는 사용자가 이제부터 계속 같은 앱을 사용하고자 할 것이라고 추정되는 작업을
+수행할 때 좋습니다. 예를 들어 웹 페이지를 열 때가 이에 해당됩니다(대다수 사용자가
+웹 브라우저는 하나만 사용하는 것을 선호합니다).</p>
+
+<p>그러나, 인텐트에 응답할 수 있는 앱이 여러 개이고 사용자가 매번 다른 앱을 사용하기를 원할 수도 있는
+경우라면, 선택기 대화를 명시적으로 표시해야 합니다. 선택기 대화 상자는
+사용자가 작업에 사용할 앱을 매번 선택하도록 물어봅니다(사용자는 작업에 사용할
+기본 앱을 선택할 수 없습니다). 예를 들어 앱이 {@link
+android.content.Intent#ACTION_SEND} 작업에 "공유"를 수행하는 경우, 사용자는 각자의 현재 상황에 따라 여러 가지 다른 앱을 사용하여 공유하기를
+원할 수도 있습니다. 따라서 항상 선택기 대화를 사용해야 합니다(그림 2 참조).</p>
+
+
+
+
+<p>선택기를 표시하려면 {@link
+android.content.Intent#createChooser createChooser()}를 사용하여 {@link android.content.Intent}를 생성한 후 {@link
+android.app.Activity#startActivity startActivity()}에 전달합니다. 예:</p>
+
+<pre>
+Intent sendIntent = new Intent(Intent.ACTION_SEND);
+...
+
+// Always use string resources for UI text.
+// This says something like "Share this photo with"
+String title = getResources().getString(R.string.chooser_title);
+// Create intent to show the chooser dialog
+Intent chooser = Intent.createChooser(sendIntent, title);
+
+// Verify the original intent will resolve to at least one activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(chooser);
+}
+</pre>
+
+<p>이 예시는 {@link
+android.content.Intent#createChooser createChooser()} 메서드에 전달된 인텐트에 응답하는 앱 목록이 포함된 대화 상자를 표시하고 제공된 텍스트를
+대화 상자 제목으로 사용합니다.</p>
+
+
+
+
+
+
+
+
+
+<h2 id="Receiving">암시적 인텐트 수신하기</h2>
+
+<p>본인의 앱이 수신할 수 있는 암시적 인텐트가 어느 것인지 알리려면,
+각 앱 구성 요소에 대한 하나 이상의 인텐트 필터를 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+ 요소로 <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">매니페스트 파일</a>에 선언합니다.
+각 인텐트 필터가 인텐트의 작업, 데이터 및 카테고리를 근거로 어느 유형의 인텐트를
+허용하는지 나타냅니다. 시스템이 앱 구성 요소에 암시적 인텐트를 전달하는 것은 인텐트가 개발자의 인텐트 필터 중 하나를
+통과해 지나갈 수 있는 경우뿐입니다.</p>
+
+<p class="note"><strong>참고:</strong> 명시적 인텐트는 항상 자신의 대상에 전달되며,
+이는 구성 요소가 어떤 인텐트 필터를 선언하든 무관합니다.</p>
+
+<p>앱 구성 요소는 자신이 수행할 수 있는 각 고유한 작업에 대해 별도의 필터를 선언해야 합니다.
+예를 들어 이미지 갤러리 앱에 있는 한 액티비티에 두 개의 필터가 있을 수 있습니다. 필터 하나는
+이미지를 보고, 또 다른 필터는 이미지를 편집하는 것입니다. 액티비티가 시작되면, 이는
+{@link android.content.Intent}를 검사한 다음
+{@link android.content.Intent}에 있는 정보를 근거로 어떻게 동작할 것인지 결정합니다(편집기 제어 항목을 표시할 것인지 말 것인지 등).</p>
+
+<p>각 인텐트 필터는 앱의 매니페스트 파일에 있는 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+요소가 정의하며, 이는 상응하는 앱 구성 요소에 중첩되어
+있습니다(예: <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+요소). <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a> 내부에서는
+다음과 같은 세 가지 요소 중 하나 이상을 사용하여 허용할 인텐트 유형을 지정할 수
+있습니다.</p>
+
+<dl>
+<dt><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a></dt>
+  <dd>허용된 인텐트 작업을 {@code name} 속성에서 선언합니다. 이 값은
+어떤 작업의 리터럴 문자열 값이어야 하며, 클래스 상수가 아닙니다.</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a></dt>
+  <dd>허용된 데이터 유형을 선언합니다. 이때
+데이터 URI(<code>scheme</code>, <code>host</code>, <code>port</code>,
+<code>path</code> 등)와 MIME 유형의 여러 가지 측면을 나타내는 하나 이상의 속성을 사용하는 방법을 씁니다.</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a></dt>
+  <dd>허용된 인텐트 카테고리를 {@code name} 속성에서 선언합니다. 이 값은
+어떤 작업의 리터럴 문자열 값이어야 하며, 클래스 상수가 아닙니다.
+
+  <p class="note"><strong>참고:</strong> 암시적 인텐트를 수신하려면 인텐트 필터 안에
+
+{@link android.content.Intent#CATEGORY_DEFAULT} 카테고리를 <strong>반드시 포함</strong>해야 합니다.
+{@link android.app.Activity#startActivity startActivity()} 및
+{@link android.app.Activity#startActivityForResult startActivityForResult()} 메서드는
+모든 인텐트를 마치 {@link android.content.Intent#CATEGORY_DEFAULT} 카테고리를 선언한 것처럼 취급합니다.
+  이 카테고리를 인텐트 필터에서 선언하지 않으면 액티비티에 어떤 암시적 인텐트도
+확인되지 않습니다.</p>
+  </dd>
+</dl>
+
+<p>예를 들어, 다음은 데이터 유형이 텍스트인 경우
+{@link android.content.Intent#ACTION_SEND} 인텐트를 수신할 인텐트 필터가 있는 액티비티 선언입니다.</p>
+
+<pre>
+&lt;activity android:name="ShareActivity">
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a>,
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> 또는
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a>의 인스턴스가 하나 이상 포함된 필터를 생성해도 됩니다.
+그렇게 하는 경우, 그저 해당 구성 요소가 그와 같은 필터 요소의 모든 조합을 처리할 수 있도록
+확실히 하기만 하면 됩니다.</p>
+
+<p>여러 가지 종류의 인텐트를 처리하고자 하되 특정 조합의 작업, 데이터 및 카테고리 유형으로만 한정하고자 한다면
+여러 가지 인텐트 필터를 생성해야 합니다.</p>
+
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>구성 요소로의 액세스 제한</h2>
+<p>인텐트 필터를 사용하는 것은 다른 앱이 여러분의 구성 요소를 시작하지 못하도록 방지하기에
+안전한 방식은 아닙니다. 인텐트 필터는 구성 요소로 하여금 특정한 종류의 암시적 인텐트에만
+응답하도록 제한하기는 하지만, 다른 앱이 여러분의 앱 구성 요소를 시작할 가능성도 있습니다.
+해당 개발자가 여러분의 구성 요소 이름을 알아내는 경우 명시적 인텐트를 사용하면 됩니다.
+구성 요소 중 하나를 시작하는 것은 <em>오직 본인 소유의 앱</em>으로 한정하는 것이 중요한 경우, 해당 구성 요소에 대하여
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#exported">{@code
+exported}</a> 속성을 {@code "false"}로 설정하십시오.
+</p>
+</div>
+</div>
+
+<p>암시적 인텐트를 필터에 대해 테스트하려면 인텐트를 세 가지 요소에 대해 각기
+비교합니다. 인텐트가 구성 요소에 전달되려면 해당 인텐트는 세 개의 테스트를 모두 통과해야 합니다.
+하나라도 일치하지 못하고 실패하면 Android 시스템이 해당 인텐트를 구성 요소에 전달하지
+않습니다.  그러나 구성 요소에는 여러 개의 인텐트 필터가 있을 수도 있으므로, 구성 요소의
+필터 중 하나를 통과하지 않는 인텐트도 다른 필터를 통하면 성공할 수 있습니다.
+시스템이 인텐트를 확인하는 방법에 대한 자세한 정보는
+<a href="#Resolution">인텐트 확인</a>에 대해 다룬 아래 섹션에 제공되어 있습니다.</p>
+
+<p class="caution"><strong>주의:</strong> 부주의로 다른 앱의
+{@link android.app.Service}를 실행하는 일을 피하려면, 항상 명시적 인텐트를 사용하여 본인의 서비스를 시작하고 서비스에 대한
+인텐트 필터는 선언하지 마십시오.</p>
+
+<p class="note"><strong>참고:</strong>
+액티비티 전체에 대해 인텐트 필터를 매니페스트 파일에서 선언해야 합니다.
+다만 브로드캐스트 수신기에 대한 필터의 경우 동적으로 등록할 수도 있습니다.
+{@link android.content.Context#registerReceiver(BroadcastReceiver, IntentFilter, String,
+Handler) registerReceiver()}를 호출하면 됩니다. 그런 다음 해당 수신기를 등록 해제하려면 {@link
+android.content.Context#unregisterReceiver unregisterReceiver()}를 사용하십시오. 이렇게 하면 앱이
+실행되는 동안에 정해진 기간 동안 특정한 브로드캐스트에 대해 수신 대기할 수
+있습니다.</p>
+
+
+
+
+
+
+
+<h3 id="ExampleFilters">필터 예시</h3>
+
+<p>몇 가지 인텐트 필터 동작에 대해 이해를 돕기 위해 소셜 공유 앱의 매니페스트 파일에서
+가져온 다음 조각을 참조하십시오.</p>
+
+<pre>
+&lt;activity android:name="MainActivity">
+    &lt;!-- This activity is the main entry, should appear in app launcher -->
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.MAIN" />
+        &lt;category android:name="android.intent.category.LAUNCHER" />
+    &lt;/intent-filter>
+&lt;/activity>
+
+&lt;activity android:name="ShareActivity">
+    &lt;!-- This activity handles "SEND" actions with text data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter&gt;
+    &lt;!-- This activity also handles "SEND" and "SEND_MULTIPLE" with media data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;action android:name="android.intent.action.SEND_MULTIPLE"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="application/vnd.google.panorama360+jpg"/>
+        &lt;data android:mimeType="image/*"/>
+        &lt;data android:mimeType="video/*"/>
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>첫 번째 액티비티인 {@code MainActivity}는 앱의 주요 진입 지점입니다. 즉 이것이
+사용자가 시작 관리자 아이콘을 사용하여 앱을 처음 시작할 때 열리는 액티비티입니다.</p>
+<ul>
+  <li>{@link android.content.Intent#ACTION_MAIN} 작업은
+이것이 주요 진입 지점이며 어느 인텐트 데이터도 기대하지 않는다는 것을 나타냅니다.</li>
+  <li>{@link android.content.Intent#CATEGORY_LAUNCHER} 카테고리는
+이 액티비티의 아이콘이 시스템의 앱 시작 관리자에 배치되어야 한다는 것을 나타냅니다. <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 요소가
+아이콘을 {@code icon}으로 지정하지 않은 경우, 시스템은 <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+ 요소로부터 가져온 아이콘을 사용합니다.</li>
+</ul>
+<p>이들 두 가지가 함께 페어링되어야 액티비티가 앱 시작 관리자에 나타날 수 있습니다.</p>
+
+<p>두 번째 액티비티인 {@code ShareActivity}는 텍스트와 미디어 콘텐츠 공유를
+용이하게 할 목적으로 만들어진 것입니다. 사용자가 {@code MainActivity}에서 이 액티비티를 향해 이동하다가 이 안에 진입할 수도 있지만,
+두 가지 인텐트 필터 중 하나와 일치하는 암시적 인텐트를 발생시키는 또 다른 앱에서 {@code ShareActivity}에 직접 진입할 수도
+있습니다.</p>
+
+<p class="note"><strong>참고:</strong> MIME 유형, 즉
+<a href="https://developers.google.com/panorama/android/">{@code
+application/vnd.google.panorama360+jpg}</a>는 파노라마 사진을 나타내는
+특수 데이터 유형으로, 이것은 <a href="{@docRoot}reference/com/google/android/gms/panorama/package-summary.html">Google
+파노라마</a> API로 처리할 수 있습니다.</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+<h2 id="PendingIntent">보류 인텐트 사용하기</h2>
+
+<p>{@link android.app.PendingIntent} 객체는 {@link
+android.content.Intent} 객체 주변을 감싸는 래퍼입니다. {@link android.app.PendingIntent}의
+기본 목적은 외래 애플리케이션에 권한을 허가하여 안에 들어 있는
+{@link android.content.Intent}를
+마치 본인 앱의 자체 프로세스에서 실행하는 것처럼 사용하게 하는 것입니다.</p>
+
+<p>보류 인텐트의 주요 사용 사례는 다음과 같습니다.</p>
+<ul>
+  <li>사용자가 여러분의 <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">알림</a>으로
+작업을 수행할 때 인텐트가 실행되도록 선언합니다(Android 시스템의 {@link android.app.NotificationManager}가
+{@link android.content.Intent}를 실행합니다).
+  <li>사용자가 여러분의
+<a href="{@docRoot}guide/topics/appwidgets/index.html">앱 위젯</a>으로
+작업을 수행할 때 인텐트가 실행되도록 선언합니다(메인 스크린 앱이 {@link android.content.Intent}를 실행합니다).
+  <li>향후 지정된 시간에 인텐트가 실행되도록 선언합니다(Android
+시스템의 {@link android.app.AlarmManager}가 {@link android.content.Intent}를 실행합니다).
+</ul>
+
+<p>각 {@link android.content.Intent} 객체는 특정한 유형의
+앱 구성 요소가({@link android.app.Activity}, {@link android.app.Service} 또는
+{@link android.content.BroadcastReceiver}) 처리하도록 설계되어 있기 때문에, {@link android.app.PendingIntent}도
+같은 고려 사항을 염두에 두고 생성해야 합니다. 보류 인텐트를 사용하는 경우, 여러분의 앱은
+{@link android.content.Context#startActivity
+startActivity()}와 같은 호출이 있는 앱을 실행하지 않게 됩니다. 대신
+{@link android.app.PendingIntent}를 생성할 때 원래 의도한 구성 요소 유형을 선언해야 합니다. 이때 각각의 생성자 메서드를 호출하는 방법을 씁니다.</p>
+
+<ul>
+  <li>{@link android.app.Activity}를 시작하는 {@link android.content.Intent}의 경우,
+{@link android.app.PendingIntent#getActivity PendingIntent.getActivity()}</li>
+  <li>{@link android.app.Service}를 시작하는 {@link android.content.Intent}의 경우,
+{@link android.app.PendingIntent#getService PendingIntent.getService()}</li>
+  <li>{@link android.content.BroadcastReceiver}를 시작하는 {@link android.content.Intent}의 경우,
+{@link android.app.PendingIntent#getBroadcast PendingIntent.getBroadcast()}</li>
+</ul>
+
+<p>여러분의 앱이 다른 여러 앱에서 보류 인텐트를 <em>수신</em>하는 것이 아닌 한,
+위의 메서드를 사용하여 {@link android.app.PendingIntent}를 생성하는 것이 아마도 여러분에게 필요한 유일한
+{@link android.app.PendingIntent} 메서드일 것입니다.</p>
+
+<p>각 메서드는 현재 앱의 {@link android.content.Context}, 래핑하고자 하는
+{@link android.content.Intent}와 인텐트의 적절한 사용 방식을 나타내는
+ 하나 이상의 플래그(인텐트를 한 번 이상 사용할 수 있는지 등) 등을 취합니다.</p>
+
+<p>보류 인텐트 사용에 관한 자세한 정보는 각 해당되는 사용 사례에 대한 문서에
+제공되어 있습니다. 예를 들어 <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">알림</a>
+ 및 <a href="{@docRoot}guide/topics/appwidgets/index.html">앱 위젯</a> API 가이드가 이에 해당됩니다.</p>
+
+
+
+
+
+
+
+<h2 id="Resolution">인텐트 확인</h2>
+
+
+<p>시스템이 액티비티를 시작하라는 암시적 인텐트를 수신하면, 시스템은 해당 인텐트에 대한 최선의 액티비티를 검색합니다.
+이때 다음과 같은 세 가지 측면을 근거로 인텐트를 인텐트 필터에 비교해 보는 방법을 씁니다.</p>
+
+<ul>
+  <li>인텐트 작업
+  <li>인텐트 데이터(URI와 데이터 유형 둘 다)
+  <li>인텐트 카테고리
+</ul>
+
+<p>다음 섹션에서는 인텐트 필터가 앱의 매니페스트 파일에서 어떻게 선언되었는지와 관련하여
+인텐트가 적절한 구성 요소에 일치되는 방식을 설명합니다.</p>
+
+
+<h3 id="ActionTest">작업 테스트</h3>
+
+<p>허용된 인텐트 작업을 나타내려면 인텐트 필터는 0개 이상의
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 요소를 선언할 수 있습니다.  예:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.VIEW" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>이 필터를 통과하려면 {@link android.content.Intent}에
+지정된 작업이 필터에 목록으로 나열된 작업 중 하나와 일치해야만 합니다.</p>
+
+<p>필터에 목록으로 나열된 작업이 없는 경우, 인텐트가 일치될 대상이 아무것도 없으므로
+모든 인텐트가 테스트에 실패합니다. 그러나, {@link android.content.Intent}가
+작업을 지정하지 않는 경우, 테스트를 통과하게 됩니다(필터에 최소한 한 개 이상의 작업이
+들어있지 않은 한).</p>
+
+
+
+<h3 id="CategoryTest">카테고리 테스트</h3>
+
+<p>허용된 인텐트 카테고리를 나타내려면 인텐트 필터는 0개 이상의
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 요소를 선언할 수 있습니다.  예:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+    &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>인텐트가 카테고리 테스트를 통과하려면 {@link android.content.Intent} 내의
+모든 카테고리가 필터 내의 카테고리에 일치해야 합니다. 이 반대로는 반드시 성립하지 않아도 됩니다. 인텐트 필터가
+{@link android.content.Intent}에서 지정된 것보다 더 많은 카테고리를 선언할 수도 있지만 그래도
+{@link android.content.Intent}는 통과합니다. 그러므로, 카테고리가 없는 인텐트라면 이 테스트를 항상 통과하는 것이 맞습니다.
+이는 필터에 어떤 카테고리가 선언되어 있는지와는 무관합니다.</p>
+
+<p class="note"><strong>참고:</strong>
+Android는 {@link android.content.Intent#CATEGORY_DEFAULT} 카테고리를
+{@link
+android.content.Context#startActivity startActivity()} 및 {@link
+android.app.Activity#startActivityForResult startActivityForResult()}에 전달된 모든 암시적 인텐트에 적용합니다.
+따라서 액티비티가 암시적 인텐트를 수신하기를 원하는 경우,
+그 인텐트 필터 내에 {@code "android.intent.category.DEFAULT"}에 대한 카테고리가 반드시 포함되어 있어야 합니다(이전의
+{@code &lt;intent-filter&gt;} 예시에서 표시된 내용 참조).</p>
+
+
+
+<h3 id="DataTest">데이터 테스트</h3>
+
+<p>허용된 인텐트 데이터를 나타내려면 인텐트 필터는 0개 이상의
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a> 요소를 선언할 수 있습니다.  예:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="video/mpeg" android:scheme="http" ... /&gt;
+    &lt;data android:mimeType="audio/mpeg" android:scheme="http" ... /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>각 <code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+요소는 URI 구조와 데이터 유형(MIME 미디어 유형)을 나타낼 수 있습니다.  URI의 각 부분에 대해 별도의
+속성&mdash;{@code scheme}, {@code host}, {@code port}
+및 {@code path}&mdash;이 있습니다.
+</p>
+
+<p style="margin-left: 2em">{@code &lt;scheme&gt;://&lt;host&gt;:&lt;port&gt;/&lt;path&gt;}</p>
+
+<p>
+예:
+</p>
+
+<p style="margin-left: 2em">{@code content://com.example.project:200/folder/subfolder/etc}</p>
+
+<p>이 URI에서 구성표는 {@code content}이고 호스트는 {@code com.example.project},
+포트는 {@code 200}이며 경로는 {@code folder/subfolder/etc}입니다.
+</p>
+
+<p>이와 같은 속성은 각각 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> 요소에서 선택 항목이지만,
+이들 사이에 선형적 종속 관계가 있습니다.</p>
+<ul>
+  <li>구성표가 지정되지 않으면 호스트가 무시됩니다.</li>
+  <li>호스트가 지정되지 않으면 포트가 무시됩니다.</li>
+  <li>구성표와 호스트가 둘 다 지정되지 않으면 경로가 무시됩니다.</li>
+</ul>
+
+<p>인텐트 안의 URI가 필터 안의 URI 사양에 비교되는 경우, 이것은 필터 내에 포함된 URI의
+몇몇 부분에만 비교되는 것입니다. 예:</p>
+<ul>
+  <li>필터가 구성표만 지정하는 경우, 해당 구성표가 있는 모든 URI가 필터와
+일치합니다.</li>
+  <li>필터가 구성표와 권한은 지정하지만 경로는 지정하지 않는 경우, 같은 구성표와 권한이 있는
+모든 URI가 경로와 관계 없이 필터를 통과합니다.</li>
+  <li>필터가 구성표, 권한과 경로를 지정하는 경우 같은 구성표,
+권한과 경로가 있는 URI만 해당 필터를 통과합니다.</li>
+</ul>
+
+<p class="note"><strong>참고:</strong> 경로 사양에는 경로 이름이
+부분적으로만 일치하도록 요구하기 위해 와일드카드 별표(*)가 들어 있을 수 있습니다.</p>
+
+<p>데이터 테스트는 인텐트 안의 URI와 MIME 유형 둘 모두를 필터 안에서
+지정된 MIME 유형과 비교합니다.  규칙은 다음과 같습니다.
+</p>
+
+<ol type="a">
+<li>URI도 MIME 유형도 들어 있지 않은 인텐트가 테스트를 통과하는 것은
+필터가 URI나 MIME 유형을 전혀 지정하지 않은 경우뿐입니다.</li>
+
+<li>URI는 들어 있지만 MIME 유형은 없는 인텐트(URI로부터는
+명시적이지도 않고 추론할 수도 없음)가 테스트를 통과하는 것은 그 URI가 필터의 URI 형식과 일치하며
+필터가 인텐트와 마찬가지로 MIME 유형을 지정하지 않는 경우뿐입니다.</li>
+
+<li>MIME 유형은 들어 있지만 URI는 없는 인텐트가 테스트를 통과하는 것은
+해당 필터가 같은 MIME 유형을 목록으로 나열하지만 URI 형식은 지정하지 않은 경우뿐입니다.</li>
+
+<li>URI와 MIME 유형이 둘 다 들어 있는 인텐트(URI로부터는
+명시적이지도 않고 추론할 수도 없음)가 테스트의 MIME 유형 부분을 통과하는 것은 해당 유형이
+필터 내에 목록으로 나열된 한 유형에 일치하는 경우뿐입니다.  이것이 테스트의 URI 부분을 통과하는 것은
+URI가 필터 내의 URI와 일치하거나, {@code content:}
+ 또는 {@code file:} URI가 있고 필터가 URI를 지정하지 않은 경우뿐입니다. 달리 말하면,
+구성 요소는 필터가 MIME 유형 <em>하나만</em> 목록으로 나열하는 경우 {@code content:} 및 {@code file:} 데이터를
+지원하는 것으로 간주한다는 뜻입니다.</p></li>
+</ol>
+
+<p>
+마지막 규칙인 규칙 (d)는
+구성 요소가 파일이나 콘텐츠 제공자로부터 로컬 파일을 가져올 수 있는지에 대한 기대 수준을 반영합니다.
+따라서 이러한 필터는 데이터 유형만 목록으로 나열해도 되고,
+{@code content:} 및 {@code file:} 구성표의 이름을 명시적으로 제시하지 않아도 됩니다.
+이것이 일반적인 경우입니다.  예를 들어, 다음 예시와 같은 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> 요소는
+Android에 구성 요소가 콘텐츠 제공자에서 이미지 데이터를 가져와 표시할 수 있다고
+알립니다.
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="image/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+<p>
+대부분의 사용 가능한 데이터는 콘텐츠 제공자가 제공하는 것이므로, 데이터 유형은
+지정하지만 URI는 지정하지 않는 필터가 아마 가장 보편적인 유형일 것입니다.
+</p>
+
+<p>
+또 다른 보편적인 구성을 예로 들자면 구성표와 데이터 유형을 가진 필터가 있겠습니다.  예를 들어
+다음 예시와 같은 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>
+ 요소는 Android에 구성 요소가
+작업을 수행하기 위해 네트워크에서 비디오 데이터를 검색할 수 있다고 알립니다.
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:scheme="http" android:type="video/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+
+
+<h3 id="imatch">인텐트 일치</h3>
+
+<p>인텐트를 인텐트 필터에 비교해 일치시키면 활성화할 대상 구성 요소를
+찾아낼 수 있을 뿐만 아니라, 기기에 있는 일련의 구성 요소에 대해
+무언가 알아낼 수도 있습니다.  예를 들어 홈 앱이 앱 시작 관리자를 채우려면
+
+{@link android.content.Intent#ACTION_MAIN} 작업과
+{@link android.content.Intent#CATEGORY_LAUNCHER} 카테고리를 지정하는 인텐트 필터를 가진 액티비티를 모두 찾아야 합니다.</p>
+
+<p>여러분의 애플리케이션도 인텐트 일치를 이와 비슷한 방식으로 사용할 수 있습니다.
+{@link android.content.pm.PackageManager}에는 {@code query...()}
+ 메서드 집합이 있어 특정 인텐트를 허용하는 구성 요소를 모두 반환할 수 있고,
+이와 유사한 일련의 {@code resolve...()} 메서드도 있어 한 인텐트에 응답하는 데
+가장 좋은 구성 요소를 판별할 수 있습니다.  예를 들어,
+{@link android.content.pm.PackageManager#queryIntentActivities
+queryIntentActivities()}는 인수로 통과한
+인텐트를 수행할 수 있는 모든 액티비티의 목록을 반환하며 {@link
+android.content.pm.PackageManager#queryIntentServices
+queryIntentServices()}는 이와 비슷한 서비스 목록을 반환합니다.
+양쪽 메서드 모두 구성 요소를 활성화하지는 않습니다. 다만 응답할 수 있는 것들을 목록으로
+나열할 뿐입니다.  이와 비슷한 메서드인
+{@link android.content.pm.PackageManager#queryBroadcastReceivers
+queryBroadcastReceivers()}는 브로드캐스트 수신기에 쓰입니다.
+</p>
+
+
+
+
diff --git a/docs/html-intl/intl/ko/guide/components/loaders.jd b/docs/html-intl/intl/ko/guide/components/loaders.jd
new file mode 100644
index 0000000..cfbbb91
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/loaders.jd
@@ -0,0 +1,494 @@
+page.title=로더
+parent.title=액티비티
+parent.link=activities.html
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>이 문서의 내용</h2>
+    <ol>
+    <li><a href="#summary">로더 API 요약</a></li>
+    <li><a href="#app">애플리케이션 안에서 로더 사용하기</a>
+      <ol>
+        <li><a href="#requirements"></a></li>
+        <li><a href="#starting">로더 시작</a></li>
+        <li><a href="#restarting">로더 다시 시작</a></li>
+        <li><a href="#callback">LoaderManager 콜백 사용하기</a></li>
+      </ol>
+    </li>
+    <li><a href="#example">예</a>
+       <ol>
+         <li><a href="#more_examples">추가 예</a></li>
+        </ol>
+    </li>
+  </ol>
+    
+  <h2>Key 클래스</h2>
+    <ol>
+      <li>{@link android.app.LoaderManager}</li>
+      <li>{@link android.content.Loader}</li>
+
+    </ol>   
+    
+    <h2>관련 샘플</h2>
+   <ol>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a></li>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html">
+LoaderThrottle</a></li>
+   </ol>
+  </div>
+</div>
+
+<p>로더는 Android 3.0부터 도입된 것으로, 액티비티 또는 프래그먼트에서 비동기식으로 데이터를 쉽게 
+로딩할 수 있게 합니다. 로더의 특성은 다음과 같습니다.</p>
+  <ul>
+    <li>모든 {@link android.app.Activity}와 {@link
+android.app.Fragment}에 사용할 수 있습니다.</li>
+    <li>데이터의 비동기식 로딩을 제공합니다.</li>
+    <li>데이터의 출처를 모니터링하여 그 콘텐츠가 변경되면 새 결과를 
+전달합니다.</li>
+    <li>구성 변경 후에 재생성된 경우, 마지막 로더의 커서로 자동으로 
+다시 연결됩니다. 따라서 데이터를 다시 쿼리하지 않아도 
+됩니다.</li>
+  </ul>
+ 
+<h2 id="summary">로더 API 요약</h2>
+
+<p>애플리케이션 안에서 로더를 사용하는 데 관련된 클래스와 인터페이스는 
+여러 가지가 있습니다. 다음 표에서 요약되어 있습니다.</p>
+
+<table>
+  <tr>
+    <th>클래스/인터페이스</th>
+    <th>설명</th>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager}</td>
+    <td>{@link android.app.Activity} 또는 
+{@link android.app.Fragment}와 연관된 추상 클래스로, 하나 이상의 {@link
+android.content.Loader} 인스턴스를 관리하는 데 쓰입니다. 이것을 사용하면 애플리케이션이 
+{@link android.app.Activity}
+ 또는 {@link android.app.Fragment} 수명 주기와 함께 실행 시간이 긴 작업을 관리하는 데 도움이 됩니다. 이것의 가장 보편적인 용법은 
+{@link android.content.CursorLoader}와 함께 사용하는 것이지만, 
+다른 유형의 데이터를 로드하기 위해 애플리케이션이 자체 로더를 작성하는 것도 얼마든지 가능합니다.
+    <br />
+    <br />
+    액티비티 또는 프래그먼트당 {@link android.app.LoaderManager}는 하나씩밖에 없습니다. 하지만 {@link android.app.LoaderManager}에는 로더가 여러 개 있어도 
+됩니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager.LoaderCallbacks}</td>
+    <td>클라이언트에 대해 {@link
+android.app.LoaderManager}와 상호 작용하도록 하는 콜백 인터페이스입니다. 예를 들어 {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+콜백 메서드를 사용하여 새 로더를 생성할 수 있습니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.Loader}</td>
+    <td>데이터의 비동기식 로딩을 수행하는 추상 클래스입니다. 이것이 로더의 기본 
+클래스입니다. 보통은 {@link
+android.content.CursorLoader}를 사용하기 마련이지만, 자신만의 하위 클래스를 구현해도 됩니다. 로더가 활성 상태인 동안에는 
+소속 데이터의 출처를 모니터링하고 콘텐츠가 변경되면 새 결과를 
+전달하는 것이 정상입니다. </td>
+  </tr>
+  <tr>
+    <td>{@link android.content.AsyncTaskLoader}</td>
+    <td>작업을 수행할 {@link android.os.AsyncTask}를 제공하는 추상 로더입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.CursorLoader}</td>
+    <td>{@link android.content.AsyncTaskLoader}의 하위 클래스로, 이것이 
+{@link android.content.ContentResolver}를 쿼리하고 {@link
+android.database.Cursor}를 반환합니다. 이 클래스는 커서 쿼리에 대한 표준 방식으로 {@link
+android.content.Loader} 프로토콜을 구현하며, 
+{@link android.content.AsyncTaskLoader}에 구축되어 
+배경 스레드에서 커서 쿼리를 수행하므로 애플리케이션의 UI를 차단하지 않습니다. 
+이 로더를 사용하는 것이 프래그먼트나 액티비티의 API를 통해 관리된 쿼리를 수행하는 대신 {@link
+android.content.ContentProvider}에서 
+비동기식으로 데이터를 로딩하는 최선의 방법입니다.</td>
+  </tr>
+</table>
+
+<p>위의 표에 나열된 클래스와 인터페이스가 애플리케이션 내에서 로더를 구현하는 데 
+사용할 기본적인 구성 요소입니다. 생성하는 로더마다 
+이 모든 것이 다 필요한 것은 아니지만, 로더를 초기화하려면 항상 {@link
+android.app.LoaderManager}를 참조해야 하고 {@link
+android.content.CursorLoader}와 같은 {@link android.content.Loader} 
+클래스도 구현해야 합니다. 다음 몇 섹션에서는 애플리케이션 안에서 이와 같은 
+클래스와 인터페이스를 사용하는 법을 보여줍니다.</p>
+
+<h2 id ="app">애플리케이션 안에서 로더 사용하기</h2>
+<p>이 섹션에서는 Android 애플리케이션 내에서 로더를 사용하는 방법을 설명합니다. 로더를 
+사용하는 애플리케이션에는 보통 다음이 포함되어 있습니다.</p>
+<ul>
+  <li>{@link android.app.Activity} 또는 {@link android.app.Fragment}.</li>
+  <li>{@link android.app.LoaderManager}의 인스턴스.</li>
+  <li>{@link
+android.content.ContentProvider}가 지원하는 데이터를 로딩할 {@link android.content.CursorLoader}. 아니면, 개발자 나름의 
+{@link android.content.Loader} 또는 {@link android.content.AsyncTaskLoader} 하위 클래스를 구현하여 
+다른 출처에서 데이터를 로딩해도 됩니다.</li>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks}의 구현.
+여기에서 새 로더를 생성하고 기존 로더에 대한 참조를 
+관리합니다.</li> 
+<li>로더의 데이터를 표시하는 방법(예: {@link
+android.widget.SimpleCursorAdapter})</li>
+  <li>{@link android.content.ContentProvider}와 같은 데이터 출처로, 
+{@link android.content.CursorLoader}를 사용하는 경우에 해당.</li>
+</ul>
+<h3 id="starting">로더 시작</h3>
+
+<p>{@link android.app.LoaderManager}는 {@link android.app.Activity} 또는 
+{@link android.app.Fragment} 내에서 하나 이상의 {@link
+android.content.Loader} 인스턴스를 관리합니다. 액티비티 또는 프래그먼트당 {@link
+android.app.LoaderManager}는 하나씩밖에 없습니다.</p> 
+
+<p>보통은 
+액티비티의 {@link
+android.app.Activity#onCreate onCreate()} 메서드 내에서, 또는 프래그먼트의 
+{@link android.app.Fragment#onActivityCreated onActivityCreated()} 메서드 내에서 {@link android.content.Loader}를 초기화합니다. 이렇게 하려면 
+다음과 같은 방법을 따릅니다.</p>
+
+<pre>// Prepare the loader.  Either re-connect with an existing one,
+// or start a new one.
+getLoaderManager().initLoader(0, null, this);</pre>
+
+<p>{@link android.app.LoaderManager#initLoader initLoader()} 메서드는 
+다음과 같은 인수를 취합니다.</p>
+<ul>
+  <li>로더를 식별하는 고유한 ID. 이 예시에서 ID는 0입니다.</li>
+<li>생성 시 로더에 제공할 선택적 인수
+(이 예시에서는 <code>null</code>).</li> 
+
+<li>{@link android.app.LoaderManager.LoaderCallbacks} 구현. 로더 이벤트를 보고하기 위해 
+{@link android.app.LoaderManager}가 이것을 호출합니다. 이 예시에서는
+ 로컬 클래스가 {@link
+android.app.LoaderManager.LoaderCallbacks} 인터페이스를 구현하여 자신에 대한 참조인 
+{@code this}를 통과합니다.</li> 
+</ul>
+<p>{@link android.app.LoaderManager#initLoader initLoader()} 호출로 로더가 초기화되었고 활성 상태이도록 
+확실히 합니다. 이로써 발생할 수 있는 결과가 두 가지 있습니다.</p>
+<ul>
+  <li>ID가 지정한 로더가 이미 존재하는 경우, 마지막으로 생성된 로더를 
+재사용합니다.</li>
+  <li>ID가 지정한 로더가 존재하지 <em>않는</em> 경우, 
+{@link android.app.LoaderManager#initLoader initLoader()}가 
+{@link android.app.LoaderManager.LoaderCallbacks} 메서드 {@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}를 발생시킵니다. 
+여기에서 인스턴트화할 코드를 구현하고 새 로더를 반환합니다.
+자세한 논의는 <a href="#onCreateLoader">onCreateLoader</a> 섹션을 참조하십시오.</li>
+</ul>
+<p>어떤 경우에든 주어진 {@link android.app.LoaderManager.LoaderCallbacks}
+구현은 해당 로더와 연관되어 있으며, 로더 상태가 변경되면 
+이것이 호출됩니다.  이 호출의 그러한 시점에서 발신자가 
+시작된 상태에 있으며 요청한 로더가 이미 존재하고 자신의 데이터를 
+생성해 놓은 경우, 시스템은 즉시 {@link
+android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}를 
+호출합니다({@link android.app.LoaderManager#initLoader initLoader()} 도중). 
+따라서 이런 일이 발생할 것에 대비해두어야만 합니다. 이 콜백에 대한 자세한 논의는 <a href="#onLoadFinished">
+onLoadFinished</a>를 참조하십시오.</p>
+
+<p>{@link android.app.LoaderManager#initLoader initLoader()}
+메서드는 생성된 {@link android.content.Loader}를 반환하지만, 이에 대한 참조를 캡처하지 않아도 된다는 점을 
+유의하십시오. {@link android.app.LoaderManager}는 로더의 수명을 
+자동으로 관리합니다. {@link android.app.LoaderManager}는 
+필요에 따라 로딩을 시작하고 중단하며, 로더와 그에 연관된 콘텐츠의 상태를 
+유지관리합니다. 이것이 시사하는 바와 같이, 로더와 직접적으로 
+상호 작용하는 경우는 극히 드뭅니다(다만, 로더의 행동을 미세하게 조정하기 위해 로더 메서드를 사용하는 사례를 알아보려면 
+<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a> 샘플을 참조하면 좋습니다). 
+가장 보편적으로 사용되는 메서드는 {@link
+android.app.LoaderManager.LoaderCallbacks}로, 이를 사용해 특정한 이벤트가 일어났을 때 
+로딩 프로세스에 개입하게 됩니다. 이 주제에 대한 자세한 논의는 <a href="#callback">LoaderManager 콜백 사용하기</a>를 참조하십시오.</p>
+
+<h3 id="restarting">로더 다시 시작</h3>
+
+<p>위에서 나타난 것과 같이 {@link android.app.LoaderManager#initLoader initLoader()}를 사용하는 경우, 
+이것은 지정된 ID에 해당되는 기존 로더가 있으면 그것을 사용합니다. 
+없으면, 하나 생성합니다. 하지만 때로는 오래된 데이터를 폐기하고 새로 시작하고 싶을 때가 
+있습니다.</p>
+
+<p>오래된 데이터를 폐기하려면 {@link
+android.app.LoaderManager#restartLoader restartLoader()}를 사용합니다. 예를 들어, 다음의 
+{@link android.widget.SearchView.OnQueryTextListener} 구현은 
+사용자의 쿼리가 변경되면 로더를 다시 시작합니다. 로더를 다시 시작해야 수정된 검색 필터를 사용하여 
+새 쿼리를 수행할 수 있습니다.</p>
+
+<pre>
+public boolean onQueryTextChanged(String newText) {
+    // Called when the action bar search text has changed.  Update
+    // the search filter, and restart the loader to do a new query
+    // with this filter.
+    mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+    getLoaderManager().restartLoader(0, null, this);
+    return true;
+}</pre>
+
+<h3 id="callback">LoaderManager 콜백 사용하기</h3>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks}는 클라이언트가 
+{@link android.app.LoaderManager}와 상호 작용할 수 있게 해주는 콜백 인터페이스입니다. </p>
+<p>로더, 특히 {@link android.content.CursorLoader}는 중단된 후에도 
+자신의 데이터를 유지할 것으로 기대됩니다. 이 때문에 애플리케이션이 
+액티비티 또는 프래그먼트의 @link android.app.Activity#onStop
+onStop()} 및 {@link android.app.Activity#onStart onStart()}를 가로질러 데이터를 유지할 수 있고, 
+따라서 사용자가 애플리케이션에 되돌아오면 데이터가 다시 로딩되기를 기다리지 
+않아도 됩니다. 새 로더를 언제 생성해야 할지 알아보려면 {@link android.app.LoaderManager.LoaderCallbacks} 
+메서드를 사용합니다. 또한 로더의 데이터 사용을 중단할 때가 되면 
+이를 애플리케이션에 알리는 데에도 이것을 사용할 수 있습니다.</p>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks}에는 다음과 같은 메서드가 
+포함됩니다.</p>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()} -
+주어진 ID에 대하여 인스턴트화하고 새 {@link android.content.Loader}를 반환합니다.
+</li></ul>
+<ul>
+  <li> {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+- 이전에 생성된 로더가 로딩을 완료하면 호출됩니다.
+</li></ul>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onLoaderReset onLoaderReset()}
+- 이전에 생성된 로더가 휴식 중이라서 해당되는 데이터를 사용할 수 없을 경우 
+호출됩니다.
+</li>
+</ul>
+<p>이러한 메서드는 다음 섹션에 보다 자세하게 설명되어 있습니다.</p>
+
+<h4 id ="onCreateLoader">onCreateLoader</h4>
+
+<p>로더에 액세스하려 시도하는 경우(예를 들어 {@link
+android.app.LoaderManager#initLoader initLoader()}를 통해), 로더는 해당 ID가 지정하는 로더가 존재하는지 
+여부를 확인합니다. 그런 로더가 없으면, {@link
+android.app.LoaderManager.LoaderCallbacks} 메서드 {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}를 발생시킵니다. 여기에서 
+새 로더를 생성합니다. 이것은 보통 {@link
+android.content.CursorLoader}이지만, 개발자 나름대로 {@link
+android.content.Loader} 하위 클래스를 구현해도 됩니다. </p>
+
+<p>이 예시에서는, {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+ 콜백 메서드가 {@link android.content.CursorLoader}를 생성합니다. 
+{@link android.content.CursorLoader}를 자체 생성자 메서드를 사용하여 구축해야 합니다. 이것은 
+{@link
+android.content.ContentProvider}로 쿼리를 수행하기 위해 필요한 모든 정보 집합을 필요로 합니다. 구체적으로 필요한 것은 다음과 같습니다.</p>
+<ul>
+  <li><em>uri</em> — 검색할 콘텐츠의 URI입니다. </li>
+  <li><em>예측</em> — 반환할 열 목록입니다. 
+<code>null</code>을 전달하면 모든 열을 반환하며, 이는 비효율적입니다. </li>
+  <li><em>선택</em> — 반환할 행을 선언하는 필터로, 
+SQL WHERE 절로 형식이 설정됩니다(WHERE 자체는 제외). 
+<code>null</code>을 반환하면 주어진 URI에 대한 모든 행을 반환합니다. </li>
+  <li><em>selectionArgs</em> — 선택에 ?를 포함해도 됩니다. 이렇게 하면 
+이것이 <em>selectionArgs</em>에서 가져온 값으로 교체되며, 이때 선택에 표시되는 
+순서를 따릅니다. 값은 문자열로 바인딩됩니다. </li>
+  <li><em>sortOrder</em> — SQL ORDER BY 절 형식으로 설정된 
+행의 순서 지정 방법입니다(ORDER BY 자체는 제외). <code>null</code>을 
+전달하면 기본 정렬 순서를 사용하는데, 이는 순서가 없습니다.</li>
+</ul>
+<p>예:</p>
+<pre>
+ // If non-null, this is the current filter the user has provided.
+String mCurFilter;
+...
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+    // This is called when a new Loader needs to be created.  This
+    // sample only has one Loader, so we don't care about the ID.
+    // First, pick the base URI to use depending on whether we are
+    // currently filtering.
+    Uri baseUri;
+    if (mCurFilter != null) {
+        baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                  Uri.encode(mCurFilter));
+    } else {
+        baseUri = Contacts.CONTENT_URI;
+    }
+
+    // Now create and return a CursorLoader that will take care of
+    // creating a Cursor for the data being displayed.
+    String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+            + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+            + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+    return new CursorLoader(getActivity(), baseUri,
+            CONTACTS_SUMMARY_PROJECTION, select, null,
+            Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+}</pre>
+<h4 id="onLoadFinished">onLoadFinished</h4>
+
+<p>이 메서드는 이전에 생성된 로더가 로딩을 완료하면 호출됩니다. 
+이 로더에 대해 제공된 마지막 데이터가 릴리스되기 전에 틀림없이 
+이 메서드가 호출됩니다.  이 시점에서 오래된 데이터의 
+사용 내용을 모두 제거해야 하지만(곧 릴리스될 것이므로), 데이터 릴리스를 직접 수행해서는 안 됩니다. 해당 데이터는 
+로더의 소유이며, 로더가 알아서 처리할 것이기 때문입니다.</p>
+
+
+<p>로더는 애플리케이션이 데이터를 더 이상 사용하지 않는다는 사실을 알게 되면 곧바로 해당 데이터를 
+릴리스할 것입니다.  예를 들어 데이터가 {@link
+android.content.CursorLoader}의 커서인 경우, 거기에서 직접 {@link
+android.database.Cursor#close close()}를 호출하면 안 됩니다. 커서가 
+{@link android.widget.CursorAdapter}에 배치되는 경우, {@link
+android.widget.SimpleCursorAdapter#swapCursor swapCursor()} 메서드를 사용해야 합니다. 그래야 
+오래된 {@link android.database.Cursor}가 종료되지 않습니다. 예:</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.<br
+/>SimpleCursorAdapter mAdapter;
+...
+
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+    // Swap the new cursor in.  (The framework will take care of closing the
+    // old cursor once we return.)
+    mAdapter.swapCursor(data);
+}</pre>
+
+<h4 id="onLoaderReset">onLoaderReset</h4>
+
+<p>이 메서드는 이전에 생성된 로더가 휴식 중이라서 해당되는 데이터를 사용할 수 없는 경우 
+호출됩니다. 이 콜백을 사용하면 데이터가 언제 릴리스될지 알아낼 수 있어 
+이에 대한 참조를 직접 제거할 수 있습니다.  </p>
+<p>이 구현은 
+{@link android.widget.SimpleCursorAdapter#swapCursor swapCursor()}를 호출하며, 
+이때 값은 <code>null</code>을 씁니다.</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.
+SimpleCursorAdapter mAdapter;
+...
+
+public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+    // This is called when the last Cursor provided to onLoadFinished()
+    // above is about to be closed.  We need to make sure we are no
+    // longer using it.
+    mAdapter.swapCursor(null);
+}</pre>
+
+
+<h2 id="example">예</h2>
+
+<p>일례를 제시하기 위해 아래에 {@link android.widget.ListView}를 표시하는 {@link
+android.app.Fragment}의 전체 구현을 나타내었습니다. 여기에는 
+연락처 콘텐츠 제공자에 대한 쿼리 결과가 들어 있습니다. 이것은 {@link
+android.content.CursorLoader}를 사용하여 제공자에 대한 쿼리를 관리합니다.</p>
+ 
+<p>이 예시에서 나타낸 바와 같이 애플리케이션이 사용자의 연락처에 액세스하려면 
+애플리케이션의 매니페스트에 
+{@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS} 권한이 포함되어 있어야 합니다.</p>
+
+<pre>
+public static class CursorLoaderListFragment extends ListFragment
+        implements OnQueryTextListener, LoaderManager.LoaderCallbacks&lt;Cursor&gt; {
+
+    // This is the Adapter being used to display the list's data.
+    SimpleCursorAdapter mAdapter;
+
+    // If non-null, this is the current filter the user has provided.
+    String mCurFilter;
+
+    @Override public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+
+        // Give some text to display if there is no data.  In a real
+        // application this would come from a resource.
+        setEmptyText(&quot;No phone numbers&quot;);
+
+        // We have a menu item to show in action bar.
+        setHasOptionsMenu(true);
+
+        // Create an empty adapter we will use to display the loaded data.
+        mAdapter = new SimpleCursorAdapter(getActivity(),
+                android.R.layout.simple_list_item_2, null,
+                new String[] { Contacts.DISPLAY_NAME, Contacts.CONTACT_STATUS },
+                new int[] { android.R.id.text1, android.R.id.text2 }, 0);
+        setListAdapter(mAdapter);
+
+        // Prepare the loader.  Either re-connect with an existing one,
+        // or start a new one.
+        getLoaderManager().initLoader(0, null, this);
+    }
+
+    @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+        // Place an action bar item for searching.
+        MenuItem item = menu.add(&quot;Search&quot;);
+        item.setIcon(android.R.drawable.ic_menu_search);
+        item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+        SearchView sv = new SearchView(getActivity());
+        sv.setOnQueryTextListener(this);
+        item.setActionView(sv);
+    }
+
+    public boolean onQueryTextChange(String newText) {
+        // Called when the action bar search text has changed.  Update
+        // the search filter, and restart the loader to do a new query
+        // with this filter.
+        mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+        getLoaderManager().restartLoader(0, null, this);
+        return true;
+    }
+
+    @Override public boolean onQueryTextSubmit(String query) {
+        // Don't care about this.
+        return true;
+    }
+
+    @Override public void onListItemClick(ListView l, View v, int position, long id) {
+        // Insert desired behavior here.
+        Log.i(&quot;FragmentComplexList&quot;, &quot;Item clicked: &quot; + id);
+    }
+
+    // These are the Contacts rows that we will retrieve.
+    static final String[] CONTACTS_SUMMARY_PROJECTION = new String[] {
+        Contacts._ID,
+        Contacts.DISPLAY_NAME,
+        Contacts.CONTACT_STATUS,
+        Contacts.CONTACT_PRESENCE,
+        Contacts.PHOTO_ID,
+        Contacts.LOOKUP_KEY,
+    };
+    public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+        // This is called when a new Loader needs to be created.  This
+        // sample only has one Loader, so we don't care about the ID.
+        // First, pick the base URI to use depending on whether we are
+        // currently filtering.
+        Uri baseUri;
+        if (mCurFilter != null) {
+            baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                    Uri.encode(mCurFilter));
+        } else {
+            baseUri = Contacts.CONTENT_URI;
+        }
+
+        // Now create and return a CursorLoader that will take care of
+        // creating a Cursor for the data being displayed.
+        String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+                + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+                + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+        return new CursorLoader(getActivity(), baseUri,
+                CONTACTS_SUMMARY_PROJECTION, select, null,
+                Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+    }
+
+    public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+        // Swap the new cursor in.  (The framework will take care of closing the
+        // old cursor once we return.)
+        mAdapter.swapCursor(data);
+    }
+
+    public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+        // This is called when the last Cursor provided to onLoadFinished()
+        // above is about to be closed.  We need to make sure we are no
+        // longer using it.
+        mAdapter.swapCursor(null);
+    }
+}</pre>
+<h3 id="more_examples">추가 예</h3>
+
+<p>로더를 사용하는 법을 보여주는 몇 가지 다른 예가 <strong>ApiDemos</strong>에 
+소개되어 있습니다.</p>
+<ul>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a> — 위에 표시된 코드 조각의 완전한 
+버전입니다.</li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a> — 데이터가 변경될 때 콘텐츠 제공자가 
+수행하는 쿼리의 수를 줄이기 위해 제한을 사용하는 방법을 예시로 나타낸 것입니다.</li>
+</ul>
+
+<p>SDK 샘플을 다운로드하고 설치하는 데 대한 정보는 <a href="http://developer.android.com/resources/samples/get.html">샘플 
+가져오기</a>를 참조하십시오. </p>
+
diff --git a/docs/html-intl/intl/ko/guide/components/processes-and-threads.jd b/docs/html-intl/intl/ko/guide/components/processes-and-threads.jd
new file mode 100644
index 0000000..850d55c
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/processes-and-threads.jd
@@ -0,0 +1,411 @@
+page.title=프로세스 및 스레드
+page.tags=수명 주기, 배경
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>이 문서의 내용</h2>
+<ol>
+<li><a href="#Processes">프로세스</a>
+  <ol>
+    <li><a href="#Lifecycle">프로세스 수명 주기</a></li>
+  </ol>
+</li>
+<li><a href="#Threads">스레드</a>
+  <ol>
+    <li><a href="#WorkerThreads">작업자 스레드</a></li>
+    <li><a href="#ThreadSafe">스레드로부터 안전한 메서드</a></li>
+  </ol>
+</li>
+<li><a href="#IPC">프로세스 간 통신</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>애플리케이션 구성 요소가 시작되고 애플리케이션에 실행 중인 다른 구성 요소가 없으면
+Android 시스템은 하나의 실행 스레드로 애플리케이션의 Linux 프로세스를
+시작합니다. 기본적으로 같은 애플리케이션의 모든 구성 요소는 같은 프로세스와 스레드에서 실행됩니다
+("기본" 스레드라고 합니다). 애플리케이션 구성 요소가 시작되고 (애플리케이션의 다른 구성 요소가 존재해서) 
+해당 애플리케이션의 프로세스가 이미 존재하면 해당 구성 요소는
+프로세스 내에서 시작되고 같은 실행 스레드를 사용합니다. 하지만 애플리케이션 내의 
+여러 가지 구성 요소가 각자 별도의 프로세스에서 실행되도록 할 수도 있고, 어느 프로세스에든 추가 스레드를 
+만들 수 있습니다.</p>
+
+<p>이 문서는 프로세스와 스레드가 Android 애플리케이션에서 작동하는 방식을 설명합니다.</p>
+
+
+<h2 id="Processes">프로세스</h2>
+
+<p>기본적으로 같은 애플리케이션의 모든 구성 요소는 같은 프로세스와 스레드에서 실행되고,
+대부분의 애플리케이션은 이를 바꿔서는 안 됩니다. 그러나 어느 프로세스가 특정 구성 요소에 속하는지
+확인해야 할 경우 매니페스트 파일에서 확인할 수 있습니다.</p>
+
+<p>구성 요소 &mdash;<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>와 <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code
+&lt;service&gt;}</a>, <a href="{@docRoot}guide/topics/manifest/receiver-element.html">{@code
+&lt;receiver&gt;}</a> 및 <a href="{@docRoot}guide/topics/manifest/provider-element.html">{@code
+&lt;provider&gt;}</a>&mdash;의 각 유형에 대한 매니페스트 항목은 구성 요소를 실행할 프로세스를 지정하는 {@code android:process} 속성을 지원합니다.
+ 이러한 속성을 설정하여 각 구성 요소를 자체 프로세스에서 실행시키거나 
+다른 구성 요소를 제외한 일부 구성 요소만 프로세스를 공유하게 할 수 있습니다  또한, 
+{@code android:process}를 설정하여 다른 애플리케이션의 구성 요소를 같은 프로세스에서 실행시킬 수 있습니다.
+단, 이는 애플리케이션이 같은 Linux 사용자 ID를 공유하고 같은 인증서에
+서명되었을 경우에 한합니다.</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/application-element.html">{@code
+&lt;application&gt;}</a> 요소도 {@code android:process} 속성을 지원하여,
+모든 구성 요소에 적용되는 기본값을 설정합니다.</p>
+
+<p>Android는 어느 시점엔가 프로세스를 종료하기로 결정할 수도 있습니다. 즉 메모리가 부족하거나, 사용자에게 더욱 즉각적인 서비스를 제공하는 
+다른 프로세스가 이 프로세스의 중단을 필요로 하는 경우 등입니다. 그러면 중단된 
+프로세스에서 실행되고 있던 애플리케이션 구성 요소도 따라서 소멸됩니다.  그와 같은 구성 요소가 할 작업이 다시 생기면 
+그에 대한 프로세스도 다시 시작됩니다.</p>
+
+<p>어느 프로세스를 삭제할지 결정할 때, Android 시스템은 
+사용자에 대한 이들의 상대적 중요성을 가늠합니다.  예를 들어, 눈에 보이는 액티비티를 호스팅하는 프로세스와 비교하여 
+화면에 보이지 않는 액티비티를 호스팅하는 프로세스를 쉽게 종료할 수 있습니다. 프로세스 종료 결정은 
+해당 프로세스에서 실행되는 구성 요소의 상태에 따라 달라집니다. 종료할 
+프로세스를 결정하는 데 사용하는 규칙은 아래에 설명되어 있습니다. </p>
+
+
+<h3 id="Lifecycle">프로세스 수명 주기</h3>
+
+<p>Android 시스템은 최대한 오래 애플리케이션 프로세스를 유지하려고 시도하지만,
+결국 오래된 프로세스를 제거하고 새 프로세스나 더 중요한 프로세스에 사용할 메모리를 확보해야 합니다.  유지할 
+프로세스와 종료할 프로세스를 결정하기 위해
+시스템은 프로세스에서 실행되는 구성 요소와 해당 구성 요소의 상태에 기초하여 각 프로세스에 
+"중요 계층"을 부여합니다.  중요도가 낮은 
+프로세스가 먼저 제거되고, 그 다음으로 중요도가 낮은 프로세스를 제거하는 식으로
+필요에 따라 시스템 리소스를 회복하는 것입니다.</p>
+
+<p>중요 계층에는 다섯 가지 단계가 있습니다. 다음 목록은 
+중요도 순서에 따른 프로세스 유형을 나타낸 것입니다(첫 번째 프로세스가 <em>가장 중요하고</em> 
+<em>마지막으로 종료됩니다)</em>.</p>
+
+<ol>
+  <li><b>전경 프로세스</b>
+    <p>사용자가 현재 진행하는 작업에 필요한 프로세스입니다.  다음 조건 중 
+하나가 참일 경우 프로세스가 전경에 있는 것으로 간주합니다.</p>
+
+      <ul>
+        <li>사용자와 상호 작용하는 {@link android.app.Activity}를 호스팅할 경우({@link
+android.app.Activity}의 {@link android.app.Activity#onResume onResume()} 메서드가 호출되었을 경우
+).</li>
+
+        <li>사용자와 상호 작용하는 액티비티에 바인딩된 {@link android.app.Service}를 호스팅할 경우.
+</li>
+
+        <li>"전경에서" 실행되는 {@link android.app.Service}를 호스팅할 경우(
+해당 서비스가 {@link android.app.Service#startForeground startForeground()}를 호출했을 경우).
+
+        <li>수명 주기 콜백 중 하나를 실행하는 {@link android.app.Service}를 호스팅할 경우
+({@link android.app.Service#onCreate onCreate()}, {@link android.app.Service#onStart
+onStart()} 또는 {@link android.app.Service#onDestroy onDestroy()}).</li>
+
+        <li>{@link
+android.content.BroadcastReceiver#onReceive onReceive()} 메서드를 실행하는 {@link android.content.BroadcastReceiver}를 호스팅할 경우.</li>
+    </ul>
+
+    <p>일반적으로, 주어진 시간에 존재하는 전경 프로세스는 몇 개밖에 되지 않습니다.  이들은 최후의 
+수단으로서만 종료됩니다. 즉, 메모리가 너무 부족해 계속 실행할 수 없는 경우를 말합니다.  일반적으로 그 시점이 되면 
+기기가 메모리 페이징 상태에 도달한 것이므로 전경 프로세스 몇 개를 중단해야만 
+사용자 인터페이스의 반응성을 유지할 수 있습니다.</p></li>
+
+  <li><b>가시적 프로세스</b>
+    <p>전경 구성 요소는 없지만 
+사용자가 화면에서 보는 것에 영향을 미칠 수 있는 프로세스입니다. 다음 조건 중 하나가 참이면 
+가시적 프로세스로 간주합니다.</p>
+
+      <ul>
+        <li>전경에 있지는 않지만 사용자에게 보이는 {@link android.app.Activity}를 호스팅할 경우
+({@link android.app.Activity#onPause onPause()} 메서드가 호출되었을 경우). 
+예를 들어 이것은 전경 액티비티가 대화를 시작하여 이전 액티비티가 그 뒤에 보일 경우
+ 발생합니다.</li>
+
+        <li>눈에 보이는(또는 전경) 액티비티에 바인딩된 {@link android.app.Service}를 호스팅할 경우.
+</li>
+      </ul>
+
+      <p>가시적인 프로세스는 매우 중요도가 높은 것으로 취급하고 모든 전경 프로세스를 실행하는 데 필요할 경우에만 
+종료됩니다. </p>
+    </li>
+
+  <li><b>서비스 프로세스</b>
+    <p>{@link
+android.content.Context#startService startService()} 메서드로 시작되었지만 두 개의 상위 계층 분류에 
+들어가지 않는 서비스를 실행하는 프로세스입니다. 서비스 프로세스는 사용자가 보는 것과 직접 연결되어 있지는 않지만, 
+일반적으로 사용자가 신경 쓰는 작업을 하므로(배경에서 음악 재생 또는 네트워크에서 데이터 다운로드) 
+시스템은 모든 전경 및 가시적 프로세스와 함께 실행할 만큼 메모리가 충분하지 않을 경우에만 
+프로세스를 중단합니다. </p>
+  </li>
+
+  <li><b>배경 프로세스</b>
+    <p>현재 사용자에게 보이지 않는 액티비티를 보유한 프로세스입니다(액티비티의 
+{@link android.app.Activity#onStop onStop()} 메서드가 호출되었습니다). 이와 같은 프로세스는 
+사용자 환경에 직접적 영향을 미치지 않고, 시스템은 언제든 이 프로세스를 중단시켜 
+전경,
+가시적 또는 서비스 프로세스를 위한 메모리를 확보할 수 있습니다. 보통 한번에 실행 중인 배경 프로세스가 많은 편이므로 이들은 
+LRU(최저 사용 빈도) 목록에 보관하여 사용자가 가장 최근에 본 액티비티가 있는 
+프로세스가 가장 마지막에 중단되도록 합니다. 액티비티가 수명 주기 메서드를 올바르게 구현하고 
+자신의 현재 상태를 저장할 경우, 사용자가 액티비티로 다시 이동할 때 액티비티가 모든 가시적 상태를 
+복원하므로 프로세스를 중단시키더라도 사용자 환경에는 눈에 띄게 영향을 미치지 
+않습니다. 상태 저장과 복원에 관한 정보는 <a href="{@docRoot}guide/components/activities.html#SavingActivityState">액티비티</a>
+문서를 참조하십시오.</p>
+  </li>
+
+  <li><b>빈 프로세스</b>
+    <p>활성 애플리케이션 구성 요소를 보유하지 않은 프로세스입니다.  이런 프로세스를 
+유지하는 유일한 이유는 다음에 내부 구성 요소를 실행할 때 시작 시간을 절약하기 위한 캐싱 
+때문입니다.  시스템은 프로세스 캐시와 기본 커널 캐시 사이에서 전반적인 시스템 리소스의 균형을 맞추기 위해
+이 프로세스를 중단시키는 경우가 많습니다.</p>
+  </li>
+</ol>
+
+
+  <p>Android는 프로세스에서 현재 활성 상태인 구성 요소의 중요도에 따라 
+프로세스에 가장 높은 수준을 부여합니다.  예를 들어, 프로세스가 서비스와 가시적 액티비티를 호스팅할 경우, 
+해당 프로세스는 서비스 프로세스가 아니라 가시적 프로세스 등급이 부여됩니다.</p>
+
+  <p>또한, 프로세스의 등급은 다른 프로세스가 이에 의존할 경우 상승할 수 있습니다.
+즉, 다른 프로세스에 서비스를 제공하는 프로세스가 서비스 제공 대상 프로세스보다 
+등급이 낮은 경우는 있을 수 없습니다. 예를 들어 프로세스 A의 콘텐츠 제공자가 프로세스 B의 클라이언트에 서비스를 제공하거나 
+프로세스 A의 서비스가 프로세스 B의 구성 요소에 바인딩되어 있을 경우 프로세스 A는 항상 중요도가 
+프로세스 B와 같거나 그보다 높습니다.</p>
+
+  <p>서비스를 실행하는 프로세스가 배경 액티비티가 포함된 프로세스보다 높으므로, 
+장기 작업을 시작하는 액티비티는 작업자 스레드만 생성하기보다는 해당 작업에 대한 <a href="{@docRoot}guide/components/services.html">서비스</a>를 시작하는 것이 좋습니다.
+이는 특히 작업이 해당 액티비티보다 오래 지속될 경우 더욱 중요합니다. 
+예를 들어, 웹사이트에 사진을 업로드하는 액티비티가 업로드를 수행하는 서비스를 시작해야 
+사용자가 액티비티를 떠나더라도 배경에서 업로드를 지속할 수 있습니다. 
+서비스를 사용하면 액티비티에 어떤 일이 발생하든 해당 작업에 반드시 
+"서비스 프로세스" 우선 순위 이상이 부여됩니다. 이것이 브로드캐스트 수신기가 시간이 오래 걸리는 작업을 
+스레드에 넣기보다는 서비스를 사용해야 하는 것과 같은 이유입니다.</p>
+
+
+
+
+<h2 id="Threads">스레드</h2>
+
+<p> 애플리케이션이 시작되면 시스템이 애플리케이션에 대한 실행의 스레드를 생성하며, 이를 
+"기본"이라고 합니다. 이 스레드는 드로어블 이벤트를 포함하여 적절한 사용자 인터페이스 위젯에 
+이벤트를 발송하는 역할을 맡기 때문에 중요합니다. 이것은 Android UI 도구 키트의 구성 요소({@link
+android.widget}과 {@link android.view} 패키지의 구성 요소)와 개발자의 애플리케이션이
+상호 작용하는 스레드이기도 합니다. 따라서 기본 스레드는 
+UI 스레드라고 불릴 때도 있습니다.</p>
+
+<p>시스템은 구성 요소의 각 인스턴스에 대해 별도의 스레드를 생성하지 <em>않습니다</em>. 같은 
+프로세스에서 실행되는 모든 구성 요소는 UI 스레드에서 시작되고, 각 구성 요소를 호출하는 시스템이
+해당 스레드에서 발송됩니다. 따라서 
+시스템 콜백에 응답하는 메서드(사용자 작업을 보고하는 {@link android.view.View#onKeyDown onKeyDown()} 또는 
+수명 주기 콜백 메서드)는 항상 프로세스의 UI 스레드에서 실행됩니다.</p>
+
+<p>예를 들어, 사용자가 화면의 버튼을 터치하면, 앱 UI 스레드가 위젯에 터치 이벤트를 발송하고,
+위젯은 눌린 상태를 설정하고 이벤트 대기열에 
+무효화 요청을 게시합니다. UI 스레드가 이 요청을 대기열에서 해제하고 위젯에 스스로를 다시 
+그려야 한다고 알립니다.</p>
+
+<p>앱이 사용자 상호작용에 응답하여 집약적인 작업을 수행할 때는 이 단일 스레드 모델은
+애플리케이션을 제대로 구현하지 않으면 낮은 성능을 보일 수 있습니다. 특히,
+모든 것이 UI 스레드에서 발생하고 네트워크 액세스나 데이터 베이스 쿼리 등의 긴 작업을 수행하면 
+UI가 통째로 차단됩니다. 스레드가 차단되면 드로잉 이벤트를 포함하여 
+모든 이벤트가 발송되지 않습니다. 사용자가 보기에는 애플리케이션이 
+중단된 것처럼 보입니다. 더 나쁜 경우, UI 스레드가 몇 초 이상 차단되어 있으면
+(현재 약 5초) 사용자에게 악명 높은 "<a href="http://developer.android.com/guide/practices/responsiveness.html">애플리케이션이 응답하지 
+않습니다</a>"(ANR) 대화가 표시됩니다. 그러면 사용자가 여러분의 애플리케이션을 종료 할 수도 있고, 불만족한 경우 앱을 
+제거할 수도 있습니다.</p>
+
+<p>또한, Andoid UI 도구 키트는 스레드로부터 안전하지 <em>않습니다</em>. 따라서 UI를 
+작업자 스레드에서 조작해서는 안 됩니다. 사용자 인터페이스 조작 작업은 모두 UI 
+스레드에서 해야만 합니다. 결론적으로, Android의 단일 스레드 모델에는 두 가지 단순한 규칙이 있습니다.</p>
+
+<ol>
+<li>UI 스레드를 차단하지 마십시오.
+<li>Ui 스레드 외부에서 Android UI 도구 키트에 액세스하지 마십시오.
+</ol>
+
+<h3 id="WorkerThreads">작업자 스레드</h3>
+
+<p>위에 설명한 단일 스레드 모델로 인해, 애플리케이션 UI의 반응성을 위해서는 
+UI 스레드를 차단하지 않는 것이 매우 중요합니다. 수행해야 할 작업이 있는데 
+이들이 즉각적인 조치를 요하지 않는 경우, 이런 작업은 반드시 별도의 스레드에서 수행해야 합니다("배경" 또는 
+"작업자" 스레드).</p>
+
+<p>예를 들어, 아래는 별도의 스레드에서 이미지를 다운로드하고 이를 
+{@link android.widget.ImageView}에 표시하는 클릭 수신기에 대한 몇 가지 코드입니다.</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            Bitmap b = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.setImageBitmap(b);
+        }
+    }).start();
+}
+</pre>
+
+<p>처음에는 네트워크 작업을 처리하기 위한 새 스레드를 생성하므로 
+아무 문제 없이 작동하는 것처럼 보입니다. 하지만, 이것은 단일 스레드된 모델의 두 번째 규칙 즉, '<em>UI 스레드 외부에서 
+Android UI 도구 키트에 액세스하지 마세요.</em>'를 위반합니다. 이 샘플은 UI 스레드 대신 작업자 스레드에서 {@link
+android.widget.ImageView}를 수정합니다. 이렇게 되면 
+정의되지 않고 예기치 못한 동작이 발생하는 결과를 초래할 수 있고, 이는 추적하기 어려워 시간도 오래 걸립니다.</p>
+
+<p>이 문제를 해결하기 위해 Android는 다른 스레드에서 UI 스레드에 액세스하는 여러 가지 방식을
+제안합니다. 다음은 몇 가지 유용한 메서드 목록입니다.</p>
+
+<ul>
+<li>{@link android.app.Activity#runOnUiThread(java.lang.Runnable)
+Activity.runOnUiThread(Runnable)}</li>
+<li>{@link android.view.View#post(java.lang.Runnable) View.post(Runnable)}</li>
+<li>{@link android.view.View#postDelayed(java.lang.Runnable, long) View.postDelayed(Runnable,
+long)}</li>
+</ul>
+
+<p>예를 들어 위의 코드를 수정하려면 {@link
+android.view.View#post(java.lang.Runnable) View.post(Runnable)} 메서드를 사용하면 됩니다.</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            final Bitmap bitmap = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.post(new Runnable() {
+                public void run() {
+                    mImageView.setImageBitmap(bitmap);
+                }
+            });
+        }
+    }).start();
+}
+</pre>
+
+<p>이 구현은 이제 스레드로부터 안전합니다. 네트워크 작업은 별도의 스레드에서 수행된 반면 
+{@link android.widget.ImageView}는 UI 스레드에서 조작되었기 때문입니다.</p>
+
+<p>그러나, 작업이 복잡해질수록 이런 종류의 코드가 더 복잡해질 수 있고 유지 관리하기 
+까다로워질 수 있습니다. 더 복잡한 상호 작용을 작업자 스레드로 처리하려면, 작업자 스레드에서 
+{@link android.os.Handler}를 사용하여 UI 스레드에서 전달 받은 메시지를 처리하는 방안을 
+고려해보십시오. 하지만 최선의 해결책은 {@link android.os.AsyncTask} 클래스를 확장하는 방법일 것입니다. 
+이것은 UI와 상호 작용해야 하는 작업자 스레드 작업의 실행을 단순화합니다.</p>
+
+
+<h4 id="AsyncTask">AsyncTask 사용</h4>
+
+<p>{@link android.os.AsyncTask}를 사용하면 사용자 인터페이스에서 비동기식 작업을 수행할 수 
+있게 해줍니다. 이것은 작업자 스레드에서 차단 작업을 수행하고 그런 다음 그 결과를 UI 스레드에 
+게시하며, 개발자가 직접 스레드 및/또는 처리기를 처리할 필요가 없습니다.</p>
+
+<p>이를 사용하려면 우선 {@link android.os.AsyncTask}를 하위 클래스로 한 다음 {@link
+android.os.AsyncTask#doInBackground doInBackground()} 콜백 메서드를 구현해야 합니다. 이것은 여러 가지 
+배경 스레드에서 실행됩니다. UI를 업데이트하려면 {@link
+android.os.AsyncTask#onPostExecute onPostExecute()}를 구현해야 합니다. 이는 {@link
+android.os.AsyncTask#doInBackground doInBackground()}로부터의 결과를 전달하며 UI 스레드에서 실행되므로, 
+안전하게 UI를 업데이트할 수 있습니다. 그런 다음 UI 스레드에서 {@link android.os.AsyncTask#execute execute()}를 
+호출하여 해당 작업을 실행하면 됩니다.</p>
+
+<p>예를 들어, 이런 방식으로 {@link android.os.AsyncTask}를 사용하여
+이전의 예시를 구현할 수 있습니다.</p>
+
+<pre>
+public void onClick(View v) {
+    new DownloadImageTask().execute("http://example.com/image.png");
+}
+
+private class DownloadImageTask extends AsyncTask&lt;String, Void, Bitmap&gt; {
+    /** The system calls this to perform work in a worker thread and
+      * delivers it the parameters given to AsyncTask.execute() */
+    protected Bitmap doInBackground(String... urls) {
+        return loadImageFromNetwork(urls[0]);
+    }
+    
+    /** The system calls this to perform work in the UI thread and delivers
+      * the result from doInBackground() */
+    protected void onPostExecute(Bitmap result) {
+        mImageView.setImageBitmap(result);
+    }
+}
+</pre>
+
+<p>이제 UI는 안전하고 코드는 더욱 단순해졌습니다. 작업을 작업자 스레드에서 수행되어야 하는 
+부분과 UI 스레드에서 수행되어야 하는 부분으로 구분하기 때문입니다.</p>
+
+<p>이 클래스를 사용하는 법을 완전히 숙지하려면 {@link android.os.AsyncTask} 참조를 
+읽어보시는 것이 좋습니다. 개괄적인 작동 방식은 아래에 간략히 소개해 놓았습니다.</p>
+
+<ul>
+<li>매개 변수의 유형, 진행률 값과 작업의 최종 값을 제네릭을 사용하여 
+지정할 수 있습니다.</li>
+<li>메서드 {@link android.os.AsyncTask#doInBackground doInBackground()}는 작업자 스레드에서 자동으로
+실행됩니다.</li>
+<li>{@link android.os.AsyncTask#onPreExecute onPreExecute()}, {@link
+android.os.AsyncTask#onPostExecute onPostExecute()} 및 {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()}는 모두 UI 스레드에서 호출됩니다.</li>
+<li>{@link android.os.AsyncTask#doInBackground doInBackground()}가 반환한 값이 
+{@link android.os.AsyncTask#onPostExecute onPostExecute()}로 전송됩니다.</li>
+<li>언제든 {@link android.os.AsyncTask#publishProgress publishProgress()}를 {@link
+android.os.AsyncTask#doInBackground doInBackground()}에서 호출하여 UI 스레드에서 {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()}를 실행하도록 할 수 있습니다.</li>
+<li>모든 스레드에서 언제든 작업을 취소할 수 있습니다.</li>
+</ul>
+
+<p class="caution"><strong>주의:</strong> 작업자 스레드를 사용할 때 마주칠 수 있는 또 한 가지 문제는 
+<a href="{@docRoot}guide/topics/resources/runtime-changes.html">런타임 구성 변경</a>으로 인해 액티비티가 예기치 못하게 다시 시작되는 것입니다
+(예를 들어 사용자가 화면 방향을 바꾸는 경우). 이 경우 작업자 스레드를 소멸시킬 수 있습니다. 
+스레드가 재시작될 때 작업을 지속하는 방법과 액티비티가 제거되었을 때 작업을 적절히 취소하는 방법은
+<a href="http://code.google.com/p/shelves/">Shelves</a> 샘플 애플리케이션의 소스 코드를 참조하십시오.</p>
+
+
+<h3 id="ThreadSafe">스레드로부터 안전한 메서드</h3>
+
+<p> 어떤 경우에는 구현하는 메서드가 하나 이상의 스레드에서 호출되는 일도 있습니다. 따라서 
+이를 스레드로부터 안전하게 작성해야만 합니다. </p>
+
+<p>이것은 주로 원격으로 호출할 수 있는 메서드에 대해 참입니다. 예를 들어 <a href="{@docRoot}guide/components/bound-services.html">바인딩된 서비스</a> 내의 메서드 등이 해당됩니다. 
+{@link android.os.IBinder}에서 구현된 메서드가 
+{@link android.os.IBinder IBinder}가 실행되는 프로세스에서 호출될 경우, 해당 메서드는 발신자의 스레드에서 실행됩니다. 
+그러나 호출이 다른 프로세스에서 발생하면, 해당 메서드는 시스템이 
+{@link android.os.IBinder
+IBinder}와 같은 프로세스에 유지하는 스레드 풀에서 선택된 스레드에서 실행됩니다(프로세스의 UI 스레드에서 실행되지 않습니다).  예를 들어, 어느 서비스의 
+{@link android.app.Service#onBind onBind()} 메서드는 해당 서비스 
+프로세스의 UI 스레드에서 호출되고, {@link android.app.Service#onBind
+onBind()}가 반환하는 객체에서 구현된 메서드는(예: RPC 메서드를 구현하는 하위 클래스) 해당 풀 안의 여러 스레드에서 
+호출되게 됩니다. 서비스에 클라이언트가 하나 이상 있을 수 있으므로, 하나 이상의 풀이
+동시에 같은 {@link android.os.IBinder IBinder} 메서드에 참여할 수 있습니다. 그러므로 {@link android.os.IBinder
+IBinder} 메서드는 스레드로부터 안전하게 구현되어야 합니다.</p>
+
+<p> 마찬가지로 콘텐츠 제공자는 다른 프로세스에서 발생한 데이터 요청을 수신할 수 있습니다.
+{@link android.content.ContentResolver}와 {@link android.content.ContentProvider}
+클래스가 세부적인 프로세스 간 통신의 관리 방식을 숨길 수는 있지만, 이러한 요청에 응답하는 {@link
+android.content.ContentProvider} 메서드(&mdash;{@link
+android.content.ContentProvider#query query()}, {@link android.content.ContentProvider#insert
+insert()}, {@link android.content.ContentProvider#delete delete()}, {@link
+android.content.ContentProvider#update update()} 및 {@link android.content.ContentProvider#getType
+getType()} 메서드&mdash;)가 프로세스의 UI 스레드가 아니라
+콘텐츠 제공자 프로세스의 스레드 풀에서 호출됩니다.  이러한 메서드가 동시에 몇 개의 스레드에서 호출될 수 있으므로,
+스레드로부터 안전하게 구현되어야 합니다. </p>
+
+
+<h2 id="IPC">프로세스 간 통신</h2>
+
+<p>Android는 원격 프로시저 호출(RPC)을 사용한 프로세스 간 통신(IPC) 메커니즘을 제공합니다. 
+여기서 메서드는 액티비티나 다른 애플리케이션 구성 요소에 호출되지만 
+원격으로 (또 다른 프로세스에서) 실행되고, 결과는 모두 발신자에게 되돌려 
+보냅니다. 메서드 호출과 메서드의 데이터는 운영 체제가 이해할 수 있는 수준으로 분해되고, 
+로컬 프로세스와 주소 공간에서 원격 프로세스와 주소 공간으로 전송된 다음 
+다시 결합되어 여기서 호출에 다시 응답합니다.  그런 다음 반환 값이 
+반대 방향으로 전송됩니다.  Android가 이와 같은 IPC 트랜잭션을 수행하는 데 필요한 
+모든 코드를 제공하므로, 개발자는 그저 RPC 프로그래밍 인터페이스를 정의하고 구현하는 데에만 집중하면 됩니다. </p>
+
+<p>IPC를 수행하려면 애플리케이션이 반드시 서비스에 바인딩되어야만 하며, 이때 {@link
+android.content.Context#bindService bindService()}를 사용해야 합니다. 자세한 정보는 <a href="{@docRoot}guide/components/services.html">서비스</a> 개발자 가이드를 참조하십시오.</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For information about how to perform work in the background for an indefinite period of time
+(without a user interface), continue with the <b><a
+href="{@docRoot}guide/components/services.html">Services</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/ko/guide/components/recents.jd b/docs/html-intl/intl/ko/guide/components/recents.jd
new file mode 100644
index 0000000..cba3c45
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/recents.jd
@@ -0,0 +1,256 @@
+page.title=개요 화면
+page.tags="recents","overview"
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>이 문서의 내용</h2>
+  <ol>
+    <li><a href="#adding">개요 화면에 작업 추가</a>
+      <ol>
+        <li><a href="#flag-new-doc">작업 추가에 인텐트 플래그 사용</a></li>
+        <li><a href="#attr-doclaunch">작업 추가에 액티비티 특성 사용</a></li>
+      </ol>
+    </li>
+    <li><a href="#removing">작업 제거</a>
+      <ol>
+        <li><a href="#apptask-remove">작업 제거에 AppTask 클래스 사용</a></li>
+        <li><a href="#retain-finished">완료된 작업 보존</a></li>
+      </ol>
+    </li>
+  </ol>
+
+  <h2>Key 클래스</h2>
+  <ol>
+    <li>{@link android.app.ActivityManager.AppTask}</li>
+    <li>{@link android.content.Intent}</li>
+  </ol>
+
+  <h2>샘플 코드</h2>
+  <ol>
+    <li><a href="{@docRoot}samples/DocumentCentricApps/index.html">문서 중심 앱</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>개요 화면(다른 말로 최근 사용 화면, 최근 작업 목록 또는 최근 앱이라고도 함)은
+시스템 수준 UI로, 최근에 액세스한 <a href="{@docRoot}guide/components/activities.html">
+액티비티</a> 및 <a href="{@docRoot}guide/components/tasks-and-back-stack.html">작업</a>을 목록으로 나열한 것입니다. 사용자는 
+목록을 가로질러 이동하며 작업을 선택해서 재개할 수도 있고, 아니면 
+목록에서 한 작업을 스와이프하여 밀어내어 목록에서 제거할 수도 있습니다. Android 5.0 릴리스(API 레벨 21)의 경우, 같은 액티비티의 여러 인스턴스에 
+각기 다른 문서가 담겨 있는 경우 이들이 개요 화면에 작업으로 나타날 수 있습니다. 예를 들어 
+Google Drive에 여러 개의 Google 문서 각각에 대한 작업이 있을 수 있습니다. 각 문서는 개요 화면에 하나의 
+작업으로 나타납니다.</p>
+
+<img src="{@docRoot}images/components/recents.png" alt="" width="284" />
+<p class="img-caption"><strong>그림 1.</strong> 세 개의 Google Drive 문서가 각기 별도의 
+작업을 나타내는 모습을 표시한 개요 화면입니다.</p>
+
+<p>보통은 개요 화면에 작업과 액티비티가 어떻게 표현될지는 시스템이 
+정의하도록 두어야 합니다. 이 행동을 개발자가 수정할 필요도 없습니다. 
+하지만, 개요 화면에 액티비티가 언제, 어떻게 나타날지는 앱이 결정할 수 있습니다. 
+{@link android.app.ActivityManager.AppTask} 클래스를 사용하면 작업을 관리할 수 있게 해주고, 
+{@link android.content.Intent} 클래스의 액티비티 플래그를 사용하면 개요 화면에서 액티비티가 추가되거나 제거되는 시점을 
+지정할 수 있습니다. 또한, <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> 특성을 사용하면 매니페스트에서의 동작을 설정할 수 있습니다.</p>
+
+<h2 id="adding">개요 화면에 작업 추가</h2>
+
+<p>{@link android.content.Intent} 클래스의 플래그를 사용하여 작업을 추가하면 
+개요 화면에서 문서가 열리거나 다시 열리는 시점과 방법을 보다 철저히 통제할 수 있습니다. 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ 특성을 사용하는 경우, 문서를 항상 새 작업에서 여는 방법과 기존 작업을 해당 문서에 다시 사용하는 방법 중에서 
+선택할 수 있습니다.</p>
+
+<h3 id="flag-new-doc">작업 추가에 인텐트 플래그 사용</h3>
+
+<p>액티비티를 위해 새 문서를 생성하는 경우, 
+{@link android.app.ActivityManager.AppTask} 클래스의 
+{@link android.app.ActivityManager.AppTask#startActivity(android.content.Context, android.content.Intent, android.os.Bundle) startActivity()}
+ 메서드를 호출하고, 이것을 액티비티를 시작하는 인텐트에 전달하면 됩니다. 논리적인 중단을 삽입하여 시스템이 개요 화면에서 액티비티를 
+새 작업으로 처리하도록 하려면, {@link android.content.Intent}의 
+{@link android.content.Intent#addFlags(int) addFlags()} 메서드에 있는 {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} 
+플래그를 전달하여 액티비티를 시작하도록 합니다.</p>
+
+<p class="note"><strong>참고:</strong> {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+플래그가 {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET} 플래그를 
+대체합니다. 이것은 Android 5.0(API 레벨 21)부터 사용이 중단되었습니다.</p>
+
+<p>새 문서를 생성하면서 {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 플래그를 설정하는 경우, 
+시스템은 항상 대상 액티비티를 루트로 하여 새 작업을 만듭니다. 
+이렇게 설정하면 같은 문서를 하나 이상의 작업에서 열 수 있습니다. 다음 코드는 기본 액티비티가 이 작업을 수행하는 방법을 
+보여줍니다.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+public void createNewDocument(View view) {
+      final Intent newDocumentIntent = newDocumentIntent();
+      if (useMultipleTasks) {
+          newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
+      }
+      startActivity(newDocumentIntent);
+  }
+
+  private Intent newDocumentIntent() {
+      boolean useMultipleTasks = mCheckbox.isChecked();
+      final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+      newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT);
+      newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+      return newDocumentIntent;
+  }
+
+  private static int incrementAndGet() {
+      Log.d(TAG, "incrementAndGet(): " + mDocumentCounter);
+      return mDocumentCounter++;
+  }
+}
+</pre>
+
+<p class="note"><strong>참고:</strong> {@code FLAG_ACTIVITY_NEW_DOCUMENT}
+ 플래그로 시작된 액티비티의 경우, 반드시 매니페스트에 {@code android:launchMode="standard"} 특성 값(기본)이 설정되어 
+있어야 합니다.</p>
+
+<p>기본 액티비티가 새 액티비티를 시작하면 시스템은 기존의 작업을 검색하여 그 중 
+해당 액티비티에 대한 인텐트 구성 요소 이름과 인텐트 데이터와 일치하는 인텐트를 가진 작업을 찾습니다. 그러한 작업을 
+찾을 수 없거나 {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}
+ 플래그에 들어 있는 인텐트를 찾을 수 없는 경우, 해당 액티비티를 루트로 하여 새 작업이 생성됩니다. 원하는 항목을 찾으면, 시스템은 해당 작업을 전경으로 가지고 와 
+새 인텐트를 {@link android.app.Activity#onNewIntent onNewIntent()}에 전달합니다. 
+새 액티비티가 인텐트를 받아 개요 화면에서 새 문서를 생성하며, 이는 다음 예시에 나타낸 
+것과 같습니다.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+&#64;Override
+protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_new_document);
+    mDocumentCount = getIntent()
+            .getIntExtra(DocumentCentricActivity.KEY_EXTRA_NEW_DOCUMENT_COUNTER, 0);
+    mDocumentCounterTextView = (TextView) findViewById(
+            R.id.hello_new_document_text_view);
+    setDocumentCounterText(R.string.hello_new_document_counter);
+}
+
+&#64;Override
+protected void onNewIntent(Intent intent) {
+    super.onNewIntent(intent);
+    /* If FLAG_ACTIVITY_MULTIPLE_TASK has not been used, this activity
+    is reused to create a new document.
+     */
+    setDocumentCounterText(R.string.reusing_document_counter);
+}
+</pre>
+
+
+<h3 id="#attr-doclaunch">작업 추가에 액티비티 특성 사용</h3>
+
+<p>액티비티는 자신의 매니페스트에 새 작업을 시작할 때는 항상 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ 특성, <a href="{@docRoot}guide/topics/manifest/activity-element.html#dlmode">
+{@code android:documentLaunchMode}</a>를 사용한다고 나타낼 수도 있습니다. 이 특성에는 네 가지 값이 있어 사용자가 애플리케이션으로 문서를 열면 
+다음과 같은 효과를 발생시킵니다.</p>
+
+<dl>
+  <dt>"{@code intoExisting}"</dt>
+  <dd>액티비티가 문서에 대해 기존의 작업을 재사용합니다. 이것은 
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} 플래그를 설정할 때 
+{@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 플래그 <em>없이</em> 설정하는 것과 같습니다. 
+이는 위의 <a href="#flag-new-doc">작업 추가에 인텐트 플래그 사용</a>에서 설명한 것과 같습니다.</dd>
+
+  <dt>"{@code always}"</dt>
+  <dd>액티비티가 문서에 대해 새 작업을 생성하며, 이는 문서가 이미 열려 있는 경우라도 마찬가지입니다. 이 값을 
+사용하는 것은 {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+ 및 {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 플래그를 둘 다 설정하는 것과 같습니다.</dd>
+
+  <dt>"{@code none”}"</dt>
+  <dd>액티비티가 문서에 대해 새 작업을 생성하지 않습니다. 개요 화면은 액티비티를 기본 상태에서와 
+같이 다룹니다. 즉 앱에 대한 하나의 작업을 표시하며, 이때 사용자가 
+마지막으로 호출한 작업이 무엇이든 관계 없이 그 작업에서부터 재개합니다.</dd>
+
+  <dt>"{@code never}"</dt>
+  <dd>액티비티가 문서에 대해 새 작업을 생성하지 않습니다. 이 값을 설정하면 
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+ 및 {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 플래그의 행동을 
+재정의합니다(이들 중 하나가 인텐트에서 설정되어 있는 경우). 개요 화면은 앱에 대한 하나의 작업을 표시하고, 
+이것이 사용자가 마지막으로 호출한 액티비티가 무엇이든 그것부터 재개합니다.</dd>
+</dl>
+
+<p class="note"><strong>참고:</strong> {@code none} 및 {@code never}를 제외한 다른 값의 경우, 
+액티비티를 {@code launchMode="standard"}로 정의해야 합니다. 이 특성을 지정하지 않으면 
+{@code documentLaunchMode="none"}이 사용됩니다.</p>
+
+<h2 id="removing">작업 제거</h2>
+
+<p>기본적으로 문서 작업은 해당되는 액티비티가 완료되면 자동으로 개요 화면에서 
+제거됩니다. 이 행동을 재정의하려면 {@link android.app.ActivityManager.AppTask} 클래스를 사용합니다. 이때 
+{@link android.content.Intent} 플래그 또는 <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> 특성을 함께 사용하십시오.</p>
+
+<p>개요 화면에서 작업을 완전히 제외하려면 언제든 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+특성, <a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">
+{@code android:excludeFromRecents}</a>를 {@code true}로 설정합니다.</p>
+
+<p>개요 화면에서 앱이 포함할 수 있는 작업의 최대 개수를 설정하려면 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ 특성 <a href="{@docRoot}guide/topics/manifest/activity-element.html#maxrecents">{@code android:maxRecents}
+</a>를 정수 값으로 설정합니다. 기본은 16개입니다. 작업의 최대 대수에 도달하면 가장 예전에 사용된 작업이 개요 화면에서 
+제거됩니다. {@code android:maxRecents} 최대값은 
+50입니다(메모리 용량이 적은 기기에서는 25). 1 미만의 값은 유효하지 않습니다.</p>
+
+<h3 id="#apptask-remove">작업 제거에 AppTask 클래스 사용</h3>
+
+<p>개요 화면에서 새 작업을 생성하는 액티비티에서는 작업을 언제 제거할 것인지와 
+그와 관련된 모든 액티비티를 언제 완료할 것인지 지정할 수 있습니다. 
+{@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()} 메서드를 호출하면 됩니다.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+public void onRemoveFromRecents(View view) {
+    // The document is no longer needed; remove its task.
+    finishAndRemoveTask();
+}
+</pre>
+
+<p class="note"><strong>참고:</strong> 
+{@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()} 메서드를 
+사용하면 {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} 태그 사용을 재정의합니다. 
+이 내용은 아래에서 설명합니다.</p>
+
+<h3 id="#retain-finished">완료된 작업 보존</h3>
+
+<p>작업을 개요 화면에 보존하려면(액티비티가 완료되었더라도), 
+액티비티를 시작하는 인텐트의 {@link android.content.Intent#addFlags(int) addFlags()} 메서드에 있는 
+{@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} 플래그를 전달합니다.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+private Intent newDocumentIntent() {
+    final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+    newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT |
+      android.content.Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS);
+    newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+    return newDocumentIntent;
+}
+</pre>
+
+<p>같은 효과를 얻기 위해 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ 특성 <a href="{@docRoot}guide/topics/manifest/activity-element.html#autoremrecents">
+{@code android:autoRemoveFromRecents}</a>를 {@code false}로 설정해도 됩니다. 기본 값은 문서 액티비티의 경우 {@code true}
+이고, 일반 액티비티의 경우 {@code false}입니다. 이 특성을 사용하면 이전에 논한 것과 같이 
+{@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} 플래그를 재정의하게 됩니다.</p>
+
+
+
+
+
+
+
diff --git a/docs/html-intl/intl/ko/guide/components/services.jd b/docs/html-intl/intl/ko/guide/components/services.jd
new file mode 100644
index 0000000..fb95ea5
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/services.jd
@@ -0,0 +1,813 @@
+page.title=서비스
+@jd:body
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>이 문서의 내용</h2>
+<ol>
+<li><a href="#Basics">기본 정보</a></li>
+<ol>
+  <li><a href="#Declaring">매니페스트에서 서비스 선언하기</a></li>
+</ol>
+<li><a href="#CreatingAService">시작된 서비스 생성하기</a>
+  <ol>
+    <li><a href="#ExtendingIntentService">IntentService 클래스 확장하기</a></li>
+    <li><a href="#ExtendingService">서비스 클래스 확장하기</a></li>
+    <li><a href="#StartingAService">서비스 시작</a></li>
+    <li><a href="#Stopping">서비스 중단</a></li>
+  </ol>
+</li>
+<li><a href="#CreatingBoundService">바인딩된 서비스 생성</a></li>
+<li><a href="#Notifications">사용자에게 알림 전송</a></li>
+<li><a href="#Foreground">전경에서 서비스 실행하기</a></li>
+<li><a href="#Lifecycle">서비스 수명 주기 관리</a>
+<ol>
+  <li><a href="#LifecycleCallbacks">수명 주기 콜백 구현하기</a></li>
+</ol>
+</li>
+</ol>
+
+<h2>Key 클래스</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.app.IntentService}</li>
+</ol>
+
+<h2>샘플</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.html">{@code
+      ServiceStartArguments}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>참고 항목</h2>
+<ol>
+<li><a href="{@docRoot}guide/components/bound-services.html">바인딩된 서비스</a></li>
+</ol>
+
+</div>
+
+
+<p>{@link android.app.Service}는 배경에서 오래 실행되는 작업을 
+수행할 수 있는 애플리케이션 구성 요소이며 사용자 인터페이스를 제공하지 않습니다. 또 다른 
+애플리케이션 구성 요소가 서비스를 시작할 수 있으며, 이는 사용자가 또 다른 
+애플리케이션으로 전환하더라도 배경에서 계속해서 실행됩니다. 이외에도, 구성 요소를 서비스에 바인딩하여 
+서비스와 상호 작용할 수 있으며, 심지어는 프로세스 간 통신(IPC)도 수행할 수 있습니다. 예를 들어 한 서비스는 
+네트워크 트랜잭션을 처리하고, 음악을 재생하고 파일 I/O를 수행하거나 콘텐츠 제공자와 상호 작용할 수 있으며 
+이 모든 것을 배경에서 수행할 수 있습니다.</p>
+
+<p>서비스는 본질적으로 두 가지 형식을 취합니다.</p>
+
+<dl>
+  <dt>시작됨</dt>
+  <dd>서비스가 "시작된" 상태가 되려면 애플리케이션 구성 요소(예: 액티비티)가 
+{@link android.content.Context#startService startService()}를 호출하여 시작하면 됩니다. 서비스는 한 번 시작되고 나면 
+배경에서 무기한으로 실행될 수 있으며, 이는 해당 서비스를 시작한 구성 요소가 소멸되었더라도 무관합니다. 보통, 
+시작된 서비스는 한 작업을 수행하고 결과를 발신자에게 반환하지 않습니다.
+예를 들어 네트워크에서 파일을 다운로드하거나 업로드할 수 있습니다. 작업을 완료하면, 해당 서비스는 
+알아서 중단되는 것이 정상입니다.</dd>
+  <dt>바인딩됨</dt>
+  <dd>서비스가 "바인딩된" 상태가 되려면 애플리케이션 구성 요소가 {@link
+android.content.Context#bindService bindService()}를 사용하여 해당 서비스에 바인딩되면 됩니다. 바인딩된 서비스는 클라이언트-서버 
+인터페이스를 제공하여 구성 요소가 서비스와 상호 작용할 수 있도록 해주며, 결과를 가져올 수도 있고 심지어 
+이와 같은 작업을 여러 프로세스에 걸쳐 프로세스 간 통신(IPC)으로 수행할 수도 있습니다. 바인딩된 서비스는 또 다른 애플리케이션 구성 요소가 
+이에 바인딩되어 있는 경우에만 실행됩니다. 여러 개의 구성 요소가 서비스에 한꺼번에 바인딩될 수 있지만, 
+이 모든 것이 바인딩을 해제하면 해당 서비스는 소멸됩니다.</dd>
+</dl>
+
+<p>이 문서는 주로 이러한 두 가지 유형의 서비스를 따로따로 논하지만, 서비스는 
+두 가지 방식 모두로 작동할 수 있습니다. 즉 서비스가 시작될 수도 있고(나아가 무기한으로 실행되고) 바인딩도 허용할 수 있다는 뜻입니다.
+이는 그저 두어 가지 콜백 메서드의 구현 여부에 달린 문제입니다. {@link
+android.app.Service#onStartCommand onStartCommand()}를 사용하면 구성 요소가 서비스를 시작할 수 있게 허용하고, {@link
+android.app.Service#onBind onBind()}를 사용하면 바인딩을 허용합니다.</p>
+
+<p>애플리케이션이 시작되었든, 바인딩되었든 아니면 양쪽 모두이든 모든 애플리케이션 구성 요소가
+해당 서비스를 사용할 수 있으며(별도의 애플리케이션에서라도), 이는 어느 구성 요소든 액티비티를 
+사용할 수 있는 것과 같습니다. 이를 {@link android.content.Intent}로 시작하면 됩니다. 그러나, 
+매니페스트에서 서비스를 비공개로 선언하고 다른 애플리케이션으로부터의 액세스를 차단할 수도 있습니다. 이것은 
+<a href="#Declaring">매니페스트에서 서비스 
+선언하기</a>에 관한 섹션에서 더 자세히 이야기합니다.</p>
+
+<p class="caution"><strong>주의:</strong> 서비스는 자신의 호스팅 프로세스의 
+기본 스레드에서 실행됩니다. 서비스는 자신의 스레드를 직접 생성하지 <strong>않으며</strong>, 
+별도의 프로세스에서 실행되지도 <strong>않습니다</strong>(별도로 지정하는 경우는 예외). 이것은 즉, 
+서비스가 CPU 집약적인 작업을 수행할 예정이거나 차단적인 작업을 수행할 예정인 경우(예를 들어 MP3 
+재생 또는 네트워킹 등), 서비스 내에 새 스레드를 생성하여 해당 작업을 수행하도록 해야 한다는 뜻입니다. 별도의 스레드를 사용하면 
+'애플리케이션이 응답하지 않습니다(ANR)' 오류가 일어날 위험을 줄일 수 있으며 
+애플리케이션의 기본 스레드는 액티비티와 사용자 상호 작용 전용으로 유지될 수 있습니다.</p>
+
+
+<h2 id="Basics">기본 정보</h2>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>서비스와 스레드 중 어느 것을 사용해야 할까요?</h3>
+  <p>서비스는 그저 배경에서 실행될 수 있는 구성 요소일 뿐입니다. 이는 사용자가 
+애플리케이션과 상호 작용하지 않아도 관계 없이 해당됩니다. 따라서, 서비스를 생성하는 것은 꼭 그것이 필요할 때만으로 국한되어야 
+합니다.</p>
+  <p>기본 스레드 외부에서 작업을 수행해야 하지만 사용자가 애플리케이션과 상호 작용 중인 
+동안에만 수행하면 되는 경우라면, 서비스가 아니라 그 대신 새 스레드를 생성해야 합니다. 예를 들어 
+액티비티가 실행되는 중에만 음악을 재생하고자 하는 경우, 
+{@link android.app.Activity#onCreate onCreate()} 안에 스레드를 생성하고 이를 {@link
+android.app.Activity#onStart onStart()}에서 실행하기 시작한 다음 {@link android.app.Activity#onStop
+onStop()}에서 중단하면 됩니다. 또한, 기존의 {@link java.lang.Thread} 클래스 대신 
+{@link android.os.AsyncTask} 또는 {@link android.os.HandlerThread}를 사용하는 방안도 고려하십시오. 스레드에 관한 자세한 정보는 <a href="{@docRoot}guide/components/processes-and-threads.html#Threads">프로세스 및 
+스레딩</a> 문서를 참조하십시오.</p>
+  <p>서비스를 사용하는 경우 기본적으로 애플리케이션의 기본 스레드에서 
+계속 실행되므로 서비스가 집약적이거나 차단적인 작업을 수행하는 경우 여전히 서비스 내에 
+새 스레드를 생성해야 한다는 점을 명심하십시오.</p>
+</div>
+</div>
+
+<p>서비스를 생성하려면 {@link android.app.Service}의 하위 클래스를 생성해야 합니다(아니면 이의 
+기존 하위 클래스 중 하나). 구현에서는 서비스 수명 주기의 주요 측면을 처리하는 콜백 메서드를 
+몇 가지 재정의해야 하며 서비스에 바인딩할 구성 요소에 대한 메커니즘을 
+제공해야 합니다(해당되는 경우). 재정의해야 하는 가장 중요한 콜백 메서드는 다음과 같습니다.</p>
+
+<dl>
+  <dt>{@link android.app.Service#onStartCommand onStartCommand()}</dt>
+    <dd>시스템이 이 메서드를 호출하는 것은 또 다른 구성 요소(예: 액티비티)가 서비스를 
+시작하도록 요청하는 경우입니다. 이때 {@link android.content.Context#startService
+startService()}를 호출하는 방법을 씁니다. 이 메서드가 실행되면 서비스가 시작되고 배경에서 무기한으로 실행될 수 
+있습니다. 이것을 구성하면 서비스의 작업이 완료되었을 때 해당 서비스를 중단하는 것은 
+개발자 본인의 책임입니다. 이때 {@link android.app.Service#stopSelf stopSelf()} 또는 {@link
+android.content.Context#stopService stopService()}를 호출하면 됩니다 (바인딩만 제공하고자 하는 경우, 이 메서드를 구현하지 
+않아도 됩니다).</dd>
+  <dt>{@link android.app.Service#onBind onBind()}</dt>
+    <dd>시스템이 이 메서드를 호출하는 것은 또 다른 구성 요소가 해당 서비스에 바인딩되고자 하는 경우
+(예를 들어 RPC를 수행하기 위해)입니다. 이때 {@link android.content.Context#bindService
+bindService()}를 호출하는 방법을 씁니다. 이 메서드를 구현할 때에는 클라이언트가 서비스와 통신을 주고받기 위해 사용할 
+인터페이스를 제공해야 합니다. 이때 {@link android.os.IBinder}를 반환하면 됩니다. 이 메서드는 항상 
+구현해야 하지만, 바인딩을 허용하지 않고자 하면 null을 반환해야 합니다.</dd>
+  <dt>{@link android.app.Service#onCreate()}</dt>
+    <dd>시스템이 이 메서드를 호출하는 것은 서비스가 처음 생성되어 일회성 설정 
+절차를 수행하는 경우입니다({@link android.app.Service#onStartCommand onStartCommand()} 또는 
+{@link android.app.Service#onBind onBind()}를 호출하기 전에). 서비스가 이미 실행 중인 경우, 이 메서드는 호출되지 
+않습니다.</dd>
+  <dt>{@link android.app.Service#onDestroy()}</dt>
+    <dd>시스템이 이 메서드를 호출하는 것은 해당 서비스를 더 이상 사용하지 않고 소멸시키는 경우입니다. 
+서비스에 이것을 구현해야 스레드, 등록된 각종 수신기(listener, receiver) 등 
+모든 리소스를 정리할 수 있습니다. 이것이 서비스가 수신하는 마지막 호출입니다.</dd>
+</dl>
+
+<p>한 구성 요소가 {@link
+android.content.Context#startService startService()}를 호출하여 서비스를 시작하면({@link
+android.app.Service#onStartCommand onStartCommand()}로의 호출을 초래함), 해당 서비스는 
+알아서 {@link android.app.Service#stopSelf()}로 스스로를 중단할 때까지 또는 
+또 다른 구성 요소가 {@link android.content.Context#stopService stopService()}를 호출하여 서비스를 중단시킬 때까지 실행 중인 상태로 유지됩니다.</p>
+
+<p>한 구성 요소가 
+{@link android.content.Context#bindService bindService()}를 호출하여 서비스를 생성하는 경우(그리고 {@link
+android.app.Service#onStartCommand onStartCommand()}를 호출하지 <em>않은</em> 경우), 해당 서비스는 
+해당 구성 요소가 바인딩되어 있는 경우에만 실행됩니다. 서비스가 모든 클라이언트로부터 바인딩 해제되면 시스템이 이를 
+소멸시킵니다.</p>
+
+<p>Android 시스템이 서비스를 강제 중단시키는 것은 메모리가 부족하여 사용자가 초점을 집중하고 있는 
+액티비티를 위해 시스템 리소스를 회복해야만 하는 경우로만 국한됩니다. 해당 서비스가 사용자의 주목을 
+끌고 있는 액티비티에 바인딩되어 있다면 중단될 가능성이 낮고, 서비스가 <a href="#Foreground">전경에서 실행</a>된다고 선언된 경우(나중에 자세히 논함), 거의 절대 중단되지 않습니다. 
+그렇지 않으면, 서비스가 시작되었고 오랫동안 실행되는 경우 
+시간이 지나면서 시스템이 배경 작업 목록에서의 이 서비스의 위치를 점점 낮추고 
+서비스는 중단되기 매우 쉬워집니다. 서비스가 시작되었다면 이를 시스템에 의한 재시작을 정상적으로 
+처리하도록 디자인해야 합니다. 시스템이 서비스를 중단시키는 경우, 리소스를 다시 사용할 수 있게 되면 
+시스템이 가능한 한 빨리 이를 다시 시작합니다(다만 이것은 개발자가 {@link
+android.app.Service#onStartCommand onStartCommand()}에서 반환하는 값에도 좌우됩니다. 이 내용은 나중에 논합니다). 시스템이 서비스를 
+소멸시킬 수 있는 경우에 대한 자세한 정보는 <a href="{@docRoot}guide/components/processes-and-threads.html">프로세스 및 스레딩</a>
+문서를 참조하십시오.</p>
+
+<p>다음 섹션에서는 각 유형의 서비스를 생성하는 방법과 다른 애플리케이션 구성 요소에서 
+이를 사용하는 방법을 배우게 됩니다.</p>
+
+
+
+<h3 id="Declaring">매니페스트에서 서비스 선언하기</h3>
+
+<p>액티비티(및 다른 구성 요소)와 마찬가지로, 서비스는 모두 애플리케이션의 매니페스트 
+파일에서 선언해야 합니다.</p>
+
+<p>서비스를 선언하려면 <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 요소를 
+<a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+ 요소의 하위로 추가하면 됩니다. 예:</p>
+
+<pre>
+&lt;manifest ... &gt;
+  ...
+  &lt;application ... &gt;
+      &lt;service android:name=".ExampleService" /&gt;
+      ...
+  &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>매니페스트에서 서비스를 선언하는 데 대한 자세한 정보는 <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 
+요소 참조를 확인하십시오.</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 요소에 포함시킬 수 있는 다른 속성도 있습니다. 
+이를 포함시켜 서비스를 시작하는 데 필요한 권한과 서비스가 실행되어야 하는 프로세스 등의 
+속성을 정의할 수 있습니다. <a href="{@docRoot}guide/topics/manifest/service-element.html#nm">{@code android:name}</a>
+속성이 유일한 필수 속성입니다. 이것은 서비스의 클래스 이름을 나타냅니다. 일단 애플리케이션을 
+게시하고 나면 이 이름을 변경해서는 안 됩니다. 이름을 변경하면 
+서비스를 시작하거나 바인딩할 명시적 인텐트에 대한 종속성으로 인해 코드를 단절시킬 위험이 있기 때문입니다(블로그 게시물의 <a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">
+바꿀 수 없는 항목</a>을 참조하십시오).
+
+<p>앱의 보안을 보장하려면 <strong>
+{@link android.app.Service}을 시작하거나 바인딩할 때 항상 명시적 인텐트를 사용하고</strong> 서비스에 대한 인텐트 필터는 선언하지 마십시오. 어느 
+서비스를 시작할지 어느 정도 모호성을 허용하는 것이 중요한 경우, 서비스에 대해 
+인텐트 필터를 제공하고 구성 요소 이름을 {@link
+android.content.Intent}에서 배제할 수 있지만, 그러면 해당 인텐트에 대한 패키지를 {@link
+android.content.Intent#setPackage setPackage()}로 설정하여 대상 서비스에 대해 충분한 명확화를 
+제공하도록 해야 합니다.</p>
+
+<p>이외에도 서비스를 본인의 앱에만 사용 가능하도록 보장할 수도 있습니다. 
+<a href="{@docRoot}guide/topics/manifest/service-element.html#exported">{@code android:exported}</a>
+ 속성을 포함시킨 뒤 이를 {@code "false"}로 설정하면 됩니다. 이렇게 하면 다른 앱이 여러분의 서비스를 시작하지 못하도록 효과적으로 방지해주며, 
+이는 명시적 인텐트를 사용하는 경우에도 문제 없이 적용됩니다.</p>
+
+
+
+
+<h2 id="CreatingStartedService">시작된 서비스 생성하기</h2>
+
+<p>시작된 서비스란 다른 구성 요소가 {@link
+android.content.Context#startService startService()}를 호출하여 시작하고, 그 결과 서비스의 
+{@link android.app.Service#onStartCommand onStartCommand()} 메서드를 호출하는 결과를 초래한 것을 말합니다.</p>
+
+<p>서비스가 시작되면 이를 시작한 구성 요소와 독립된 자신만의 
+수명 주기를 가지며 해당 서비스는 배경에서 무기한으로 실행될 수 있습니다. 이는 해당 서비스를 
+시작한 구성 요소가 소멸되었더라도 무관합니다. 따라서, 서비스는 작업이 완료되면 
+{@link android.app.Service#stopSelf stopSelf()}를 호출하여 스스로 알아서 중단되는 것이 정상이며 아니면 다른 구성 요소가 
+{@link android.content.Context#stopService stopService()}를 호출하여 중단시킬 수도 있습니다.</p>
+
+<p>애플리케이션 구성 요소(예: 액티비티)가 서비스를 시작하려면 {@link
+android.content.Context#startService startService()}를 호출하고, {@link android.content.Intent}를 
+전달하면 됩니다. 이것은 서비스를 나타내고 서비스가 사용할 모든 데이터를 포함합니다. 서비스는 이 
+{@link android.content.Intent}를 {@link android.app.Service#onStartCommand
+onStartCommand()} 메서드에서 수신합니다.</p>
+
+<p>예를 들어 어느 액티비티가 온라인 데이터베이스에 데이터를 약간 저장해야 한다고 가정합니다. 액티비티가 
+동반자 서비스를 시작하여 저장할 데이터를 이에 전달할 수 있습니다. 이때 인텐트를 {@link
+android.content.Context#startService startService()}에 전달하면 됩니다. 서비스는 이 인텐트를 {@link
+android.app.Service#onStartCommand onStartCommand()}에서 수신하고 인터넷에 연결한 다음 데이터베이스 
+트랜잭션을 수행합니다. 작업을 완료하면, 해당 서비스는 알아서 스스로 중단되고 
+소멸됩니다.</p>
+
+<p class="caution"><strong>주의:</strong> 서비스는 기본적으로 자신이 선언된 애플리케이션의 같은 
+프로세스에서 실행되기도 하고 해당 애플리케이션의 기본 스레드에서 실행되기도 합니다. 따라서, 사용자가 
+같은 애플리케이션의 액티비티와 상호 작용하는 동안 서비스가 집약적이거나 차단적인 작업을 수행하는 경우, 
+해당 서비스 때문에 액티비티 성능이 느려지게 됩니다. 애플리케이션 성능에 영향을 미치는 것을 방지하려면, 
+서비스 내에서 새 스레드를 시작해야 합니다.</p>
+
+<p>기존에는 시작된 서비스를 생성하기 위해 확장할 수 있는 클래스가 두 개 있었습니다.</p>
+<dl>
+  <dt>{@link android.app.Service}</dt>
+  <dd>이것이 모든 서비스의 기본 클래스입니다. 이 클래스를 확장하는 경우, 서비스의 모든 작업을 수행할 
+새 스레드를 만드는 것이 중요합니다. 서비스가 기본적으로 애플리케이션의 기본 스레드를 사용하기 
+때문인데, 이로 인해 애플리케이션이 실행 중인 모든 액티비티의 성능이 
+느려질 수 있기 때문입니다.</dd>
+  <dt>{@link android.app.IntentService}</dt>
+  <dd>이것은 {@link android.app.Service}의 하위 클래스로, 작업자 스레드를 
+사용하여 모든 시작 요청을 처리하되 한 번에 하나씩 처리합니다. 서비스가 여러 개의 요청을 
+동시에 처리하지 않아도 되는 경우 이것이 최선의 옵션입니다. 해야 할 일은 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}를 구현하는 것뿐으로, 이것이 각 시작 요청에 대한 인텐트를 수신하여 
+개발자는 배경 작업을 수행할 수 있습니다.</dd>
+</dl>
+
+<p>다음 섹션에서는 이와 같은 클래스 중 하나를 사용하여 서비스를 구현하는 방법을 
+설명합니다.</p>
+
+
+<h3 id="ExtendingIntentService">IntentService 클래스 확장하기</h3>
+
+<p>대부분의 시작된 서비스는 여러 개의 요청을 동시에 처리하지 않아도 되기 때문에
+(이는 사실 위험한 다중 스레딩 시나리오일 수 있습니다), 서비스를 구현할 때에는 
+{@link android.app.IntentService} 클래스를 사용하는 것이 최선의 방안일 것입니다.</p>
+
+<p>{@link android.app.IntentService}는 다음과 같은 작업을 수행합니다.</p>
+
+<ul>
+  <li>애플리케이션의 기본 스레드와는 별도로 {@link
+android.app.Service#onStartCommand onStartCommand()}에 전달된 모든 인텐트를 실행하는 기본 작업자 스레드를 
+생성합니다.</li>
+  <li>한 번에 인텐트를 하나씩 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} 구현에 전달하는 작업 대기열을 생성하므로 다중 스레딩에 대해 염려할 필요가 
+전혀 없습니다.</li>
+  <li>시작 요청이 모두 처리된 후 서비스를 중단하므로 개발자가 
+{@link android.app.Service#stopSelf}를 호출할 필요가 전혀 없습니다.</li>
+  <li>{@link android.app.IntentService#onBind onBind()}의 기본 구현을 제공하여 null을 
+반환하도록 합니다.</li>
+  <li>{@link android.app.IntentService#onStartCommand
+onStartCommand()}의 기본 구현을 제공하여 인텐트를 작업 대기열에 보내고, 다음으로 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} 구현에 보내도록 합니다.</li>
+</ul>
+
+<p>이 모든 것은 결론적으로 개발자가 직접 할 일은 클라이언트가 제공한 작업을 수행할 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}를 구현하는 것뿐이라는 사실로 
+이어집니다. (다만, 서비스에 대해 작은 생성자를 제공해야 하기도 합니다.)</p>
+
+<p>다음은 {@link android.app.IntentService}의 구현을 예시로 나타낸 것입니다.</p>
+
+<pre>
+public class HelloIntentService extends IntentService {
+
+  /**
+   * A constructor is required, and must call the super {@link android.app.IntentService#IntentService}
+   * constructor with a name for the worker thread.
+   */
+  public HelloIntentService() {
+      super("HelloIntentService");
+  }
+
+  /**
+   * The IntentService calls this method from the default worker thread with
+   * the intent that started the service. When this method returns, IntentService
+   * stops the service, as appropriate.
+   */
+  &#64;Override
+  protected void onHandleIntent(Intent intent) {
+      // Normally we would do some work here, like download a file.
+      // For our sample, we just sleep for 5 seconds.
+      long endTime = System.currentTimeMillis() + 5*1000;
+      while (System.currentTimeMillis() &lt; endTime) {
+          synchronized (this) {
+              try {
+                  wait(endTime - System.currentTimeMillis());
+              } catch (Exception e) {
+              }
+          }
+      }
+  }
+}
+</pre>
+
+<p>필요한 것은 이게 전부입니다. 생성자 하나와 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} 구현뿐이죠.</p>
+
+<p>다른 콜백 메서드도 재정의하기로 결정하는 경우-예를 들어 {@link
+android.app.IntentService#onCreate onCreate()}, {@link
+android.app.IntentService#onStartCommand onStartCommand()} 또는 {@link
+android.app.IntentService#onDestroy onDestroy()}-슈퍼 구현을 꼭 호출해야 합니다. 
+그래야 {@link android.app.IntentService}가 작업자 스레드의 수명을 적절하게 처리할 수 있습니다.</p>
+
+<p>예를 들어 {@link android.app.IntentService#onStartCommand onStartCommand()}는 반드시 
+기본 구현을 반환해야 합니다(이로써 인텐트가 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}로 전달되는 것입니다).</p>
+
+<pre>
+&#64;Override
+public int onStartCommand(Intent intent, int flags, int startId) {
+    Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+    return super.onStartCommand(intent,flags,startId);
+}
+</pre>
+
+<p>{@link android.app.IntentService#onHandleIntent onHandleIntent()} 외에 슈퍼 클래스를 
+호출하지 않아도 되는 유일한 메서드는 {@link android.app.IntentService#onBind
+onBind()}입니다(다만 이를 구현하는 것은 서비스가 바인딩을 허용할 때에만 필요합니다).</p>
+
+<p>다음 섹션에서는 기본 {@link android.app.Service} 
+클래스를 확장할 때 같은 종류의 서비스를 구현하는 방법을 배우게 됩니다. 이때에는 코드가 훨씬 많이 필요하지만, 
+동시 시작 요청을 처리해야 하는 경우 이것이 적절할 수 있습니다.</p>
+
+
+<h3 id="ExtendingService">서비스 클래스 확장하기</h3>
+
+<p>이전 섹션에서 본 것과 같이 {@link android.app.IntentService}를 사용하면 
+시작된 서비스 구현이 매우 단순해집니다. 하지만 서비스가 다중 스레딩을 
+수행해야 하는 경우(작업 대기열을 통해 시작 요청을 처리하는 대신), 그때는 
+{@link android.app.Service} 클래스를 확장하여 각 인텐트를 처리하게 할 수 있습니다.</p>
+
+<p>비교를 위해 다음 예시의 코드를 보겠습니다. 이는 {@link
+android.app.Service} 클래스의 구현으로, 위의 예시에서 {@link
+android.app.IntentService}를 사용하여 수행한 것과 똑같은 작업을 수행합니다. 바꿔 말하면 각 시작 요청에 대해 
+작업자 스레드를 사용하여 작업을 수행하고 한 번에 요청을 하나씩만 처리한다는 뜻입니다.</p>
+
+<pre>
+public class HelloService extends Service {
+  private Looper mServiceLooper;
+  private ServiceHandler mServiceHandler;
+
+  // Handler that receives messages from the thread
+  private final class ServiceHandler extends Handler {
+      public ServiceHandler(Looper looper) {
+          super(looper);
+      }
+      &#64;Override
+      public void handleMessage(Message msg) {
+          // Normally we would do some work here, like download a file.
+          // For our sample, we just sleep for 5 seconds.
+          long endTime = System.currentTimeMillis() + 5*1000;
+          while (System.currentTimeMillis() &lt; endTime) {
+              synchronized (this) {
+                  try {
+                      wait(endTime - System.currentTimeMillis());
+                  } catch (Exception e) {
+                  }
+              }
+          }
+          // Stop the service using the startId, so that we don't stop
+          // the service in the middle of handling another job
+          stopSelf(msg.arg1);
+      }
+  }
+
+  &#64;Override
+  public void onCreate() {
+    // Start up the thread running the service.  Note that we create a
+    // separate thread because the service normally runs in the process's
+    // main thread, which we don't want to block.  We also make it
+    // background priority so CPU-intensive work will not disrupt our UI.
+    HandlerThread thread = new HandlerThread("ServiceStartArguments",
+            Process.THREAD_PRIORITY_BACKGROUND);
+    thread.start();
+
+    // Get the HandlerThread's Looper and use it for our Handler
+    mServiceLooper = thread.getLooper();
+    mServiceHandler = new ServiceHandler(mServiceLooper);
+  }
+
+  &#64;Override
+  public int onStartCommand(Intent intent, int flags, int startId) {
+      Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+
+      // For each start request, send a message to start a job and deliver the
+      // start ID so we know which request we're stopping when we finish the job
+      Message msg = mServiceHandler.obtainMessage();
+      msg.arg1 = startId;
+      mServiceHandler.sendMessage(msg);
+
+      // If we get killed, after returning from here, restart
+      return START_STICKY;
+  }
+
+  &#64;Override
+  public IBinder onBind(Intent intent) {
+      // We don't provide binding, so return null
+      return null;
+  }
+
+  &#64;Override
+  public void onDestroy() {
+    Toast.makeText(this, "service done", Toast.LENGTH_SHORT).show();
+  }
+}
+</pre>
+
+<p>보시다시피 {@link android.app.IntentService}를 사용할 때보다 훨씬 손이 많이 갑니다.</p>
+
+<p>그러나, 각 호출을 {@link android.app.Service#onStartCommand
+onStartCommand()}로 직접 처리할 수 있기 때문에 여러 개의 요청을 동시에 수행할 수 있습니다. 이 예시는 그것을 
+보여주는 것은 아니지만, 그런 작업을 원하는 경우 각 요청에 대해 새 스레드를 
+하나씩 생성한 다음 곧바로 실행하면 됩니다(이전 요청이 끝날 때까지 기다리는 대신).</p>
+
+<p>{@link android.app.Service#onStartCommand onStartCommand()} 메서드가 반드시 
+정수를 반환해야 한다는 사실을 유의하십시오. 정수는 시스템이 서비스를 중단시킨 경우 시스템이 해당 서비스를 
+계속하는 방법에 대해 설명하는 값입니다(위에서 논한 바와 같이 {@link
+android.app.IntentService}의 기본 구현이 이것을 개발자 대신 처리해줍니다. 개발자가 이를 수정할 수도 있습니다). 
+{@link android.app.Service#onStartCommand onStartCommand()}로부터의 반환 값은 반드시 
+다음 상수 중 하나여야 합니다.</p>
+
+<dl>
+  <dt>{@link android.app.Service#START_NOT_STICKY}</dt>
+    <dd>시스템이 서비스를 {@link android.app.Service#onStartCommand
+onStartCommand()} 반환 후에 중단시키면 서비스를 재생성하면 <em>안 됩니다.</em> 다만 전달할 
+보류 인텐트가 있는 경우는 예외입니다. 이것은 서비스가 불필요하게 실행되는 일을 피할 수 있는 가장 안전한 옵션이며, 
+애플리케이션이 완료되지 않은 모든 작업을 단순히 재시작할 수 있을 때 좋습니다.</dd>
+  <dt>{@link android.app.Service#START_STICKY}</dt>
+    <dd>시스템이 서비스를 {@link android.app.Service#onStartCommand
+onStartCommand()} 반환 후에 중단시키는 경우, 서비스를 재생성하고 {@link
+android.app.Service#onStartCommand onStartCommand()}를 호출하되 마지막 인텐트를 다시 전달하지는 <em>마십시오.</em> 
+그 대신, 시스템이 null 인텐트로 {@link android.app.Service#onStartCommand onStartCommand()}를 
+호출합니다. 다만 서비스를 시작할 보류 인텐트가 있는 경우만은 예외이며, 이럴 때에는 
+그러한 인텐트를 전달합니다. 이것은 명령을 실행하지는 않지만 무기한으로 실행 중이며 작업을 기다리고 있는 
+미디어 플레이어(또는 그와 비슷한 서비스)에 적합합니다.</dd>
+  <dt>{@link android.app.Service#START_REDELIVER_INTENT}</dt>
+    <dd>시스템이 서비스를 {@link android.app.Service#onStartCommand
+onStartCommand()} 반환 후에 중단시키는 경우, 서비스를 재생성하고 서비스에 전달된 마지막 인텐트로 {@link
+android.app.Service#onStartCommand onStartCommand()}를 
+호출하십시오. 모든 보류 인텐트가 차례로 전달됩니다. 이것은 즉시 재개되어야 하는 작업을 
+능동적으로 수행 중인 서비스(예를 들어 파일 다운로드 등)에 적합합니다.</dd>
+</dl>
+<p>이러한 반환 값에 대한 자세한 내용은 각 상수에 대해 링크로 연결된 참조 문서를 
+확인하십시오.</p>
+
+
+
+<h3 id="StartingAService">서비스 시작</h3>
+
+<p>액티비티나 다른 구성 요소에서 서비스를 시작하려면 
+{@link android.content.Intent}를(시작할 서비스를 나타냄) {@link
+android.content.Context#startService startService()}에 전달하면 됩니다. Android 시스템이 서비스의 {@link
+android.app.Service#onStartCommand onStartCommand()} 메서드를 호출하여 여기에 {@link
+android.content.Intent}를 전달합니다. ({@link android.app.Service#onStartCommand
+onStartCommand()}를 직접 호출하면 절대로 안 됩니다.)</p>
+
+<p>예를 들어 이전 섹션의 예시 서비스({@code
+HelloService})를 액티비티가 시작하려면 {@link android.content.Context#startService
+startService()}로 명시적 인텐트를 사용하면 됩니다.</p>
+
+<pre>
+Intent intent = new Intent(this, HelloService.class);
+startService(intent);
+</pre>
+
+<p>{@link android.content.Context#startService startService()} 메서드가 즉시 반환되며 
+Android 시스템이 서비스의 {@link android.app.Service#onStartCommand
+onStartCommand()} 메서드를 호출합니다. 서비스가 이미 실행 중이지 않은 경우, 시스템은 우선 {@link
+android.app.Service#onCreate onCreate()}를 호출하고, 다음으로 {@link android.app.Service#onStartCommand
+onStartCommand()}를 호출합니다.</p>
+
+<p>서비스가 바인딩도 제공하지 않는 경우, {@link
+android.content.Context#startService startService()}와 함께 전달된 인텐트가 애플리케이션 구성 요소와 서비스 사이의 
+유일한 통신 방법입니다. 그러나 서비스가 결과를 돌려보내기를 원하는 경우, 서비스를 시작한 
+클라이언트가 브로드캐스트를 위해 {@link android.app.PendingIntent}를 
+만들 수 있고({@link android.app.PendingIntent#getBroadcast getBroadcast()} 사용) 이를 서비스를 시작한 
+{@link android.content.Intent} 내의 서비스에 전달할 수 있습니다. 그러면 서비스가 
+이 브로드캐스트를 사용하여 결과를 전달할 수 있게 됩니다.</p>
+
+<p>서비스를 시작하기 위한 여러 개의 요청은 서비스의 
+{@link android.app.Service#onStartCommand onStartCommand()}로의 상응하는 여러 개의 호출이라는 결과를 낳습니다. 하지만, 서비스를 중단하려면 
+이를 중단하라는 요청 하나({@link android.app.Service#stopSelf stopSelf()} 또는 {@link
+android.content.Context#stopService stopService()} 사용)만 있으면 됩니다.</p>
+
+
+<h3 id="Stopping">서비스 중단</h3>
+
+<p>시작된 서비스는 자신만의 수명 주기를 직접 관리해야 합니다. 다시 말해, 시스템이 
+서비스를 중단하거나 소멸시키지 않는다는 뜻입니다. 다만 시스템 메모리를 회복해야 하고 서비스가 
+{@link android.app.Service#onStartCommand onStartCommand()} 반환 후에도 계속 실행되는 경우는 예외입니다. 따라서, 
+서비스는 {@link android.app.Service#stopSelf stopSelf()}를 호출하여 스스로 중단시켜야 하고, 아니면 
+다른 구성 요소가 {@link android.content.Context#stopService stopService()}를 호출하여 이를 중단시킬 수 있습니다.</p>
+
+<p>일단 {@link android.app.Service#stopSelf stopSelf()} 또는 {@link
+android.content.Context#stopService stopService()}로 중단하기를 요청하고 나면 시스템이 서비스를 가능한 한 빨리 
+소멸시킵니다.</p>
+
+<p>그러나, 서비스가 {@link
+android.app.Service#onStartCommand onStartCommand()}로의 요청을 동시에 여러 개 처리하기를 바라는 경우라면 시작 요청 처리를 완료한 뒤에도 
+서비스를 중단하면 안 됩니다. 그 이후 새 시작 요청을 받았을 수 있기 
+때문입니다(첫 요청 종료 시에 중단하면 두 번째 요청을 종료시킵니다). 이 문제를 
+피하려면, {@link android.app.Service#stopSelf(int)}를 사용하여 서비스를 
+중단시키라는 개발자의 요청이 항상 최신 시작 요청에 기반하도록 해야 합니다. 다시 말해, {@link
+android.app.Service#stopSelf(int)}를 호출할 때면 시작 요청의 ID({@link android.app.Service#onStartCommand onStartCommand()}에 전달된 
+<code>startId</code>)를 전달하게 됩니다. 여기에 중단 요청이 
+부합됩니다. 그런 다음 개발자가 {@link
+android.app.Service#stopSelf(int)}를 호출할 수 있기 전에 서비스가 새 시작 요청을 받은 경우, ID가 일치하지 않게 되고 서비스는 중단되지 않습니다.</p>
+
+<p class="caution"><strong>주의:</strong> 서비스가 작업을 완료한 다음 애플리케이션이 
+소속 서비스를 중단할 수 있어야 한다는 점이 중요합니다. 그래야 시스템 리소스 낭비를 피하고 배터리 전력 소모를 줄일 수 있습니다. 필요한 경우 
+다른 구성 요소도 서비스를 중단시킬 수 있습니다. {@link
+android.content.Context#stopService stopService()}를 호출하면 됩니다. 서비스에 대해 바인딩을 활성화하더라도, 
+서비스가 {@link
+android.app.Service#onStartCommand onStartCommand()}로의 호출을 한 번이라도 받았으면 항상 서비스를 직접 중단시켜야 합니다.</p>
+
+<p>서비스의 수명 주기에 대한 자세한 정보는 아래에 있는 <a href="#Lifecycle">서비스 수명 주기 관리</a>에 관한 섹션을 참고하세요.</p>
+
+
+
+<h2 id="CreatingBoundService">바인딩된 서비스 생성</h2>
+
+<p>바인딩된 서비스는 애플리케이션 구성 요소가 자신에게 바인딩될 수 있도록 허용하는 서비스로, 이때 {@link
+android.content.Context#bindService bindService()}를 호출하여 오래 지속되는 연결을 생성합니다
+(또한 보통은 구성 요소가 {@link
+android.content.Context#startService startService()}를 호출하여 서비스를 <em>시작</em>하는 것을 허용하지 않습니다).</p>
+
+<p>액티비티와 애플리케이션의 다른 구성 요소에서 서비스와 상호 작용하기를 원하는 경우 
+바인딩된 서비스를 생성해야 합니다. 아니면 애플리케이션의 기능 몇 가지를 프로세스 간 통신(IPC)을 통해 
+다른 애플리케이션에 노출하고자 하는 경우에도 좋습니다.</p>
+
+<p>바인딩된 서비스를 생성하려면 {@link
+android.app.Service#onBind onBind()} 콜백 메서드를 구현하여 서비스와의 통신을 위한 인터페이스를 정의하는 
+{@link android.os.IBinder}를 반환하도록 해야 합니다. 그러면 다른 애플리케이션 구성 요소가 
+{@link android.content.Context#bindService bindService()}를 호출하여 해당 인터페이스를 검색하고, 서비스에 있는 메서드를 
+호출하기 시작할 수 있습니다. 서비스는 자신에게 바인딩된 애플리케이션 구성 요소에게 도움이 되기 위해서만 
+존재하는 것이므로, 서비스에 바인딩된 구성 요소가 없으면 시스템이 이를 소멸시킵니다(바인딩된 서비스는 시작된 서비스처럼 
+{@link android.app.Service#onStartCommand onStartCommand()}를 통해 
+중단시키지 <em>않아도</em> 됩니다).</p>
+
+<p>바인딩된 서비스를 생성하려면 가장 먼저 해야 할 일은 클라이언트가 서비스와 
+통신할 수 있는 방법을 나타내는 인터페이스를 정의하는 것입니다. 서비스와 클라이언트 사이에서 쓰이는 이 인터페이스는 
+반드시 {@link android.os.IBinder}의 구현이어야 하며 이를 
+서비스가 {@link android.app.Service#onBind
+onBind()} 콜백 메서드에서 반환해야 합니다. 클라이언트가 {@link android.os.IBinder}를 수신하면 해당 인터페이스를 통해 서비스와 
+상호 작용을 시작할 수 있습니다.</p>
+
+<p>여러 클라이언트가 서비스에 한꺼번에 바인딩될 수 있습니다. 클라이언트가 서비스와의 상호 작용을 완료하면 이는 
+{@link android.content.Context#unbindService unbindService()}를 호출하여 바인딩을 해제합니다. 서비스에 
+바인딩된 클라이언트가 하나도 없으면 시스템이 해당 서비스를 소멸시킵니다.</p>
+
+<p>바인딩된 서비스를 구현하는 데에는 여러 가지 방법이 있으며 그러한 구현은 시작된 서비스보다 
+훨씬 복잡합니다. 따라서 바인딩된 서비스 논의는 
+<a href="{@docRoot}guide/components/bound-services.html">바인딩된 서비스</a>에 관한 별도의 문서에서 다룹니다.</p>
+
+
+
+<h2 id="Notifications">사용자에게 알림 전송</h2>
+
+<p>서비스는 일단 실행되고 나면 사용자에게 <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">알림 메시지</a> 또는 <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">상태 표시줄 알림</a> 등을 사용해 이벤트를 알릴 수 있습니다.</p>
+
+<p>알림 메시지란 현재 창의 표면에 잠시 나타났다가 사라지는 메시지이고, 
+상태 표시줄 알림은 상태 표시줄에 메시지가 담긴 아이콘을 제공하여 사용자가 이를 선택하여 
+조치를 취할 수 있게 하는 것입니다(예: 액티비티 시작).</p>
+
+<p>보통, 일종의 배경 작업이 완료되었고
+(예: 파일 다운로드 완료) 이제 사용자가 그에 대해 조치를 취할 수 있는 경우 상태 표시줄 알림이 
+최선의 기법입니다. 사용자가 확장된 보기에서 알림을 선택하면, 
+해당 알림이 액티비티를 시작할 수 있습니다(예: 다운로드한 파일 보기).</p>
+
+<p>자세한 정보는 <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">알림 메시지</a> 또는 <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">상태 표시줄 알림</a>
+개발자 가이드를 참조하십시오.</p>
+
+
+
+<h2 id="Foreground">전경에서 서비스 실행하기</h2>
+
+<p>전경 서비스는 사용자가 능동적으로 인식하고 있으므로 메모리 부족 시에도 
+시스템이 중단할 후보로 고려되지 않는 서비스를 말합니다. 전경 
+서비스는 상태 표시줄에 대한 알림을 제공해야 합니다. 이것은 
+"진행 중" 제목 아래에 배치되며, 이는 곧 해당 알림은 서비스가 중단되었거나 
+전경에서 제거되지 않은 이상 무시할 수 없다는 뜻입니다.</p>
+
+<p>예를 들어 서비스에서 음악을 재생하는 음악 플레이어는 전경에서 
+실행되도록 설정해야 합니다. 사용자가 이것의 작동을 분명히 인식하고 있기 
+때문입니다. 상태 표시줄에 있는 알림은 현재 노래를 나타내고 
+사용자로 하여금 음악 플레이어와 상호 작용할 액티비티를 시작하게 해줄 수도 있습니다.</p>
+
+<p>서비스가 전경에서 실행되도록 요청하려면 {@link
+android.app.Service#startForeground startForeground()}를 호출하면 됩니다. 이 메서드는 두 개의 매개변수를 취합니다. 
+그 중 하나는 해당 알림을 고유하게 식별하는 정수이고 다른 하나는 상태 표시줄에 해당되는 {@link
+android.app.Notification}입니다. 예:</p>
+
+<pre>
+Notification notification = new Notification(R.drawable.icon, getText(R.string.ticker_text),
+        System.currentTimeMillis());
+Intent notificationIntent = new Intent(this, ExampleActivity.class);
+PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
+notification.setLatestEventInfo(this, getText(R.string.notification_title),
+        getText(R.string.notification_message), pendingIntent);
+startForeground(ONGOING_NOTIFICATION_ID, notification);
+</pre>
+
+<p class="caution"><strong>주의:</strong> {@link
+android.app.Service#startForeground startForeground()}에 부여하는 정수 ID가 0이면 안 됩니다.</p>
+
+
+<p>서비스를 전경에서 제거하려면 {@link
+android.app.Service#stopForeground stopForeground()}를 호출하면 됩니다. 이 메서드는 부울 값을 취하며, 이것이 
+상태 표시줄 알림도 제거할지 여부를 나타냅니다. 이 메서드는 서비스를 중단시키지 <em>않습니다</em>.
+ 그러나, 서비스가 전경에서 실행 중인 동안 서비스를 중단시키면 
+알림도 마찬가지로 제거됩니다.</p>
+
+<p>알림에 대한 자세한 정보는 <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">상태 표시줄 
+알림 생성</a>을 참조하십시오.</p>
+
+
+
+<h2 id="Lifecycle">서비스 수명 주기 관리</h2>
+
+<p>서비스의 수명 주기는 액티비티의 수명 주기보다 훨씬 간단합니다. 하지만, 서비스를 생성하고 
+소멸시키는 방법에 특히 주의를 기울여야 한다는 면에서 중요도는 이쪽이 더 높습니다. 서비스는 사용자가 모르는 채로 
+배경에서 실행될 수 있기 때문입니다.</p>
+
+<p>서비스 수명 주기&mdash;생성되었을 때부터 소멸될 때까지&mdash;는 두 가지 서로 다른 경로를 
+따를 수 있습니다.</p>
+
+<ul>
+<li>시작된 서비스
+  <p>서비스는 또 다른 구성 요소가 {@link
+android.content.Context#startService startService()}를 호출하면 생성됩니다. 그러면 서비스가 무기한으로 실행될 수 있으며 
+스스로 알아서 중단되어야 합니다. 이때 {@link
+android.app.Service#stopSelf() stopSelf()}를 호출하는 방법을 씁니다. 또 다른 구성 요소도 서비스를 중단시킬 수 
+있습니다. {@link android.content.Context#stopService
+stopService()}를 호출하면 됩니다. 서비스가 중단되면 시스템이 이를 소멸시킵니다.</p></li>
+
+<li>바인딩된 서비스
+  <p>서비스는 또 다른 구성 요소(클라이언트)가 {@link
+android.content.Context#bindService bindService()}를 호출하면 생성됩니다. 그러면 클라이언트가 
+{@link android.os.IBinder} 인터페이스를 통해 서비스와 통신을 주고받을 수 있습니다. 클라이언트가 연결을 종료하려면 
+{@link android.content.Context#unbindService unbindService()}를 호출하면 됩니다. 여러 클라이언트가 같은 서비스에 
+바인딩될 수 있으며, 이 모두가 바인딩을 해제하면 시스템이 해당 서비스를 소멸시킵니다 (서비스가 스스로를 중단시키지 
+<em>않아도</em> 됩니다).</p></li>
+</ul>
+
+<p>이와 같은 두 가지 경로는 완전히 별개의 것은 아닙니다. 다시 말해, 이미 
+{@link android.content.Context#startService startService()}로 시작된 서비스에 바인딩할 수도 있다는 뜻입니다. 예를 
+들어, 배경 음악 서비스를 시작하려면 {@link android.content.Context#startService
+startService()}를 호출하되 재생할 음악을 식별하는 {@link android.content.Intent}를 사용하면 됩니다. 나중에, 
+아마도 사용자가 플레이어에 좀 더 많은 통제권을 발휘하고자 하거나 
+현재 노래에 대한 정보를 얻고자 할 때, 액티비티가 서비스에 바인딩될 수 있습니다. {@link
+android.content.Context#bindService bindService()}를 사용하면 됩니다. 이런 경우에는 {@link
+android.content.Context#stopService stopService()} 또는 {@link android.app.Service#stopSelf
+stopSelf()}도 클라이언트가 모두 바인딩 해제될 때까지 실제로 서비스를 중단시키지 않습니다. </p>
+
+
+<h3 id="LifecycleCallbacks">수명 주기 콜백 구현하기</h3>
+
+<p>액티비티와 마찬가지로 서비스에도 수명 주기 콜백 메서드가 있어 이를 구현하면 서비스의 
+상태 변경 내용을 모니터링할 수 있고 적절한 시기에 작업을 수행할 수 있습니다. 다음의 골격 
+서비스는 각 수명 주기 메서드를 설명한 것입니다.</p>
+
+<pre>
+public class ExampleService extends Service {
+    int mStartMode;       // indicates how to behave if the service is killed
+    IBinder mBinder;      // interface for clients that bind
+    boolean mAllowRebind; // indicates whether onRebind should be used
+
+    &#64;Override
+    public void {@link android.app.Service#onCreate onCreate}() {
+        // The service is being created
+    }
+    &#64;Override
+    public int {@link android.app.Service#onStartCommand onStartCommand}(Intent intent, int flags, int startId) {
+        // The service is starting, due to a call to {@link android.content.Context#startService startService()}
+        return <em>mStartMode</em>;
+    }
+    &#64;Override
+    public IBinder {@link android.app.Service#onBind onBind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()}
+        return <em>mBinder</em>;
+    }
+    &#64;Override
+    public boolean {@link android.app.Service#onUnbind onUnbind}(Intent intent) {
+        // All clients have unbound with {@link android.content.Context#unbindService unbindService()}
+        return <em>mAllowRebind</em>;
+    }
+    &#64;Override
+    public void {@link android.app.Service#onRebind onRebind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()},
+        // after onUnbind() has already been called
+    }
+    &#64;Override
+    public void {@link android.app.Service#onDestroy onDestroy}() {
+        // The service is no longer used and is being destroyed
+    }
+}
+</pre>
+
+<p class="note"><strong>참고:</strong> 액티비티 수명 주기 콜백 메서드와는 달리 이와 같은 콜백 메서드를 구현하는 데에는 
+슈퍼클래스 구현을 호출하지 <em>않아도</em> 됩니다.</p>
+
+<img src="{@docRoot}images/service_lifecycle.png" alt="" />
+<p class="img-caption"><strong>그림 2.</strong> 서비스 수명 주기입니다. 왼쪽의 다이어그램은 
+서비스가 {@link android.content.Context#startService
+startService()}로 생성된 경우의 수명 주기를 나타내며 오른쪽의 다이어그램은 서비스가 
+{@link android.content.Context#bindService bindService()}로 생성된 경우의 수명 주기를 나타낸 것입니다.</p>
+
+<p>이와 같은 메서드를 구현함으로써, 서비스 수명 주기의 두 가지 중첩된 루프를 모니터링할 수 있습니다. </p>
+
+<ul>
+<li>서비스의 <strong>수명 주기 전체</strong>는 {@link
+android.app.Service#onCreate onCreate()}가 호출된 시점과 {@link
+android.app.Service#onDestroy}가 반환된 시점 사이에 일어납니다. 액티비티와 마찬가지로 서비스는 자신의 초기 설정을 
+{@link android.app.Service#onCreate onCreate()}에서 수행하며 남은 리소스를 모두 {@link
+android.app.Service#onDestroy onDestroy()}에 릴리스합니다.  예를 들어 
+음악 재생 서비스의 경우 음악이 재생될 스레드를 {@link
+android.app.Service#onCreate onCreate()}로 생성하고, 그럼 다음 해당 스레드를 중단할 때에는 {@link
+android.app.Service#onDestroy onDestroy()}에서 할 수도 있습니다.
+
+<p>{@link android.app.Service#onCreate onCreate()}와 {@link android.app.Service#onDestroy
+onDestroy()} 메서드는 모든 서비스에 대해 호출됩니다. 이는 서비스가 
+{@link android.content.Context#startService startService()}로 생성되었든 {@link
+android.content.Context#bindService bindService()}로 생성되었든 관계 없이 적용됩니다.</p></li>
+
+<li>서비스의 <strong>활성 수명 주기</strong>는 {@link
+android.app.Service#onStartCommand onStartCommand()} 또는 {@link android.app.Service#onBind onBind()}로의 호출과 함께 시작됩니다. 
+각 메서드에 {@link
+android.content.Intent}가 전달되는데 이것은 각각 {@link android.content.Context#startService
+startService()} 또는 {@link android.content.Context#bindService bindService()} 중 하나에 전달된 것입니다.
+<p>서비스가 시작되면 수명 주기 전체가 종료되는 것과 동시에 활성 수명 주기도 종료됩니다
+(서비스는 {@link android.app.Service#onStartCommand
+onStartCommand()}가 반환된 뒤에도 여전히 활성 상태입니다). 서비스가 바인딩된 경우, 활성 수명 주기는 {@link
+android.app.Service#onUnbind onUnbind()}가 반환되면 종료됩니다.</p>
+</li>
+</ul>
+
+<p class="note"><strong>참고:</strong> 시작된 서비스를 중단하려면 
+{@link android.app.Service#stopSelf stopSelf()} 또는 {@link
+android.content.Context#stopService stopService()}를 호출하면 되지만, 서비스에 대한 상응하는 콜백은 
+없습니다(즉 {@code onStop()} 콜백이 없습니다). 그러므로, 서비스가 클라이언트에 바인딩되어 있지 않은 한 
+시스템은 서비스가 중단되면 이를 소멸시킵니다. 수신되는 콜백은 {@link
+android.app.Service#onDestroy onDestroy()}가 유일합니다.</p>
+
+<p>그림 2는 서비스에 대한 일반적인 콜백 메서드를 나타낸 것입니다. 이 그림에서는 
+{@link android.content.Context#startService startService()}로 생성된 서비스와 
+{@link android.content.Context#bindService bindService()}로 생성된 서비스를 
+구분하고 있지만, 어떤 식으로 시작되었든 모든 서비스는 클라이언트가 자신에 바인딩되도록 허용할 수 있다는 점을 명심하십시오.
+말하자면, {@link android.app.Service#onStartCommand
+onStartCommand()}로 처음 시작된 서비스(클라이언트가 {@link android.content.Context#startService startService()}를 호출해서)라고 해도 
+여전히 {@link android.app.Service#onBind onBind()}로의 호출을 받을 수 있습니다(클라이언트가 
+{@link android.content.Context#bindService bindService()}를 호출하는 경우).</p>
+
+<p>바인딩을 제공하는 서비스 생성에 대한 자세한 내용은 <a href="{@docRoot}guide/components/bound-services.html">바인딩된 서비스</a> 문서를 참조하십시오. 이 안에는 {@link android.app.Service#onRebind onRebind()}
+콜백 메서드에 대한 자세한 정보가 <a href="{@docRoot}guide/components/bound-services.html#Lifecycle">바인딩된 서비스의 
+수명 주기 관리</a>에 관한 섹션에 
+담겨 있습니다.</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>To learn how to query data from the system or other applications (such as contacts or media
+stored on the device), continue with the <b><a
+href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a></b>
+document.</p>
+-->
diff --git a/docs/html-intl/intl/ko/guide/components/tasks-and-back-stack.jd b/docs/html-intl/intl/ko/guide/components/tasks-and-back-stack.jd
new file mode 100644
index 0000000..6b896f9
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/components/tasks-and-back-stack.jd
@@ -0,0 +1,578 @@
+page.title=작업 및 백 스택
+parent.title=액티비티
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>이 문서의 내용</h2>
+<ol>
+<li><a href="#ActivityState">액티비티 상태 저장하기</a></li></li>
+<li><a href="#ManagingTasks">작업 관리하기</a>
+  <ol>
+    <li><a href="#TaskLaunchModes">시작 모드 정의하기</a></li>
+    <li><a href="#Affinities">유사성 처리하기</a></li>
+    <li><a href="#Clearing">백 스택 지우기</a></li>
+    <li><a href="#Starting">작업 시작하기</a></li>
+  </ol>
+</li>
+</ol>
+
+<h2>글</h2>
+<ol>
+  <li><a href="http://android-developers.blogspot.com/2010/04/multitasking-android-way.html">
+Android식 멀티태스킹</a></li>
+</ol>
+
+<h2>참고 항목</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/navigation.html">Android 디자인:
+탐색</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;} 매니페스트
+요소</a></li>
+  <li><a href="{@docRoot}guide/components/recents.html">개요 화면</a></li>
+</ol>
+</div>
+</div>
+
+
+<p>하나의 애플리케이션에는 보통 여러 개의 <a href="{@docRoot}guide/components/activities.html">액티비티</a>가 들어있습니다. 각 액티비티는 
+사용자가 수행할 수 있는 특정한 종류의 작업을 중심으로 디자인되어야 하며 다른 액티비티를 
+시작할 수 있는 기능이 있습니다. 예를 들어 이메일 애플리케이션에는 새 메시지 목록을 표시하는 하나의 액티비티가 있을 수 있습니다.
+사용자가 메시지를 하나 선택하면, 새 액티비티가 열려 해당 메시지를 볼 수 있게 합니다.</p>
+
+<p>액티비티는 기기에서 다른 애플리케이션에 존재하는 액티비티를 시작할 수도 있습니다. 예를 들어 
+애플리케이션이 이메일 메시지를 보내고자 하는 경우, "전송" 작업을 수행할 인텐트를 
+정의하여 이메일 주소와 메시지 등의 몇 가지 데이터를 포함시키면 됩니다. 그러면 다른 애플리케이션에서 가져온 액티비티 중 
+이러한 종류의 인텐트를 처리한다고 스스로 선언한 것이 열립니다. 이 경우, 이 인텐트는 
+이메일을 전송하기 위한 것이므로 이메일 애플리케이션의 "작성" 액티비티가 시작됩니다(같은 인텐트를 
+지원하는 액티비티가 여러 개 있는 경우, 시스템은 사용자에게 어느 것을 사용할지 선택하도록 합니다). 이메일이 전송되면 
+액티비티가 재개되고 해당 이메일 액티비티가 애플리케이션의 일부였던 것처럼 보입니다. 액티비티는 
+서로 다른 애플리케이션에서 온 것일 수 있지만, Android는 두 액티비티를 
+모두 같은 <em>작업</em> 안에 유지하여 이처럼 막힘 없는 사용자 환경을 유지합니다.</p>
+
+<p>작업이란 액티비티 컬렉션을 일컫는 말로, 사용자가 특정 작업을 수행할 때 이것과 
+상호 작용합니다. 액티비티는 스택 안에 정렬되며(<em>백 스택</em>), 이때 
+순서는 각 액티비티가 열린 순서와 같습니다.</p>
+
+<!-- SAVE FOR WHEN THE FRAGMENT DOC IS ADDED
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h3>Adding fragments to a task's back stack</h3>
+
+<p>Your activity can also include {@link android.app.Fragment}s to the back stack. For example,
+suppose you have a two-pane layout using fragments, one of which is a list view (fragment A) and the
+other being a layout to display an item from the list (fragment B). When the user selects an item
+from the list, fragment B is replaced by a new fragment (fragment C). In this case, it might be
+desireable for the user to navigate back to reveal fragment B, using the <em>Back</em> button.</p>
+<p>In order to add fragment B to the back stack so that this is possible, you must call {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} before you {@link
+android.app.FragmentTransaction#commit()} the transaction that replaces fragment B with fragment
+C.</p>
+<p>For more information about using fragments and adding them to the back stack, see the {@link
+android.app.Fragment} class documentation.</p>
+
+</div>
+</div>
+-->
+
+<p>기기 메인 스크린이 대다수 작업의 시작 지점입니다. 사용자가 
+애플리케이션 
+시작 관리자에 있는 아이콘(또는 메인 스크린의 바로 가기)을 터치하면 해당 애플리케이션의 작업이 전경으로 나옵니다. 해당 애플리케이션에 대한 
+작업이 존재하지 않으면(이 애플리케이션을 최근에 사용한 적이 없는 경우), 새 작업이 생성되고 
+해당 애플리케이션의 "기본" 액티비티가 스택에 있는 루트 액티비티로 열립니다.</p>
+
+<p>현재 액티비티가 또 다른 액티비티를 시작하는 경우, 새 액티비티가 스택의 맨 위로 밀어올려지고 
+사용자의 초점이 이에 맞춰집니다. 이전 액티비티는 스택에 유지되지만, 중단됩니다. 액티비티가 중단되면 
+시스템은 이 액티비티의 사용자 인터페이스의 현재 상태를 보존합니다. 사용자가 
+<em>뒤로</em>
+ 버튼을 누르면, 현재 액티비티가 스택의 맨 위에서 튀어나오고(해당 액티비티는 소멸됩니다) 
+이전 액티비티가 재개됩니다(이것의 UI 이전 상태가 복원됩니다). 스택에 있는 액티비티는 
+결코 다시 정렬되지 않습니다. 다만 스택에서 밀어올려지거나 튀어나올 뿐입니다. 즉, 현재 액티비티에 의해 
+시작되면 스택 위로 밀어올려지고, 사용자가 <em>뒤로</em> 버튼을 사용하여 액티비티를 떠나면 튀어나와 사라지는 것입니다. 따라서, 
+백 스택은 
+일종의 "후입선출" 객체 구조로서 작동한다고 할 수 있습니다. 그림 1은 
+이 행동을 시간 표시 막대와 함께 표시하여 여러 액티비티 사이의 진행률을 보여주며, 
+각 시점에서 현재 백 스택의 모습을 나타낸 것입니다.</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack.png" alt="" />
+<p class="img-caption"><strong>그림 1.</strong> 작업에 있는 각각의 새 액티비티가 백 스택에 항목을 추가하는 
+방법을 나타낸 것입니다. 사용자가 <em>뒤로</em> 버튼을 누르면 현재 
+액티비티가 
+소멸되고 이전 액티비티가 재개됩니다.</p>
+
+
+<p>사용자가 계속해서 <em>뒤로</em> 버튼을 누르면, 스택에 있는 각 액티비티가 하나씩 튀어나가 
+이전 것을 
+드러내고, 마침내는 사용자가 메인 스크린으로 되돌아가게 됩니다(아니면 작업이 시작되었을 때 
+실행 중이던 액티비티가 무엇이든 그것으로 되돌아갑니다). 스택에서 모든 액티비티가 제거되면 이 작업은 더 이상 존재하지 않게 됩니다.</p>
+
+<div class="figure" style="width:287px">
+<img src="{@docRoot}images/fundamentals/diagram_multitasking.png" alt="" /> <p
+class="img-caption"><strong>그림 2.</strong> 두 개의 작업: 작업 B가 전경에서 사용자 상호 작용을 수신하는 한편, 
+작업 A는 배경에서 재개되기를 기다립니다.</p>
+</div>
+<div class="figure" style="width:215px">
+  <img src="{@docRoot}images/fundamentals/diagram_multiple_instances.png" alt="" /> <p
+class="img-caption"><strong>그림 3.</strong> 하나의 액티비티가 여러 번 인스턴트화됩니다.</p>
+</div>
+
+<p>작업이란 하나의 잘 짜여진 단위로 사용자가 새 작업을 시작할 때 "배경"으로 이동할 수도 있고 
+<em>홈</em> 버튼을 통해 메인 스크린으로 이동할 수도 있습니다. 작업의 모든 액티비티는 배경에 있는 동안은 
+중단되지만
+, 해당 작업에 대한 백 스택은 그대로 변함 없이 유지됩니다. 이 작업은 또 다른 작업이 발생하는 동안 
+초점을 잃을 뿐입니다(그림 2 참조). 그런 다음 작업이 "전경"으로 되돌아와 사용자가 
+이전에 하던 일을 계속할 수 있습니다. 예를 들어 현재 작업(작업 A)의 스택에 세 개의 액티비티가 있다고 
+가정하면 그 중 둘은 현재 액티비티 아래에 있습니다. 사용자가 <em>홈</em>
+ 버튼을 누른 다음 
+애플리케이션 시작 관리자로부터 새 애플리케이션을 시작합니다. 메인 스크린이 나타나면 작업 A는 
+배경으로 이동합니다. 새 애플리케이션이 시작되면 시스템은 해당 애플리케이션에 대한 작업을 시작하며
+(작업 B) 여기에는 나름의 액티비티 스택이 딸려 있습니다. 해당 애플리케이션과 
+상호 작용한 후, 사용자는 다시 홈으로 돌아와 원래 작업 A를 시작한 
+애플리케이션을 선택합니다. 이제 작업 A가 전경으로 옵니다.
+이 스택에 있는 액티비티 세 개는 모두 멀쩡하고, 스택 맨 위에 있는 액티비티가 
+재개됩니다. 이 시점에서 
+사용자는 작업 B로 도로 전환할 수도 있습니다. 홈으로 이동하여 해당 작업을 
+시작한 애플리케이션 아이콘을 선택하면 됩니다(아니면 
+<a href="{@docRoot}guide/components/recents.html">개요 화면</a>에서 해당 앱의 작업을 선택해도 됩니다). 
+이것이 Android에서 멀티태스킹을 하는 작업의 예시입니다.</p>
+
+<p class="note"><strong>참고:</strong> 여러 개의 작업을 배경에 한꺼번에 대기시킬 수 있습니다. 
+하지만, 사용자가 수많은 배경 작업을 동시에 실행하면 시스템이 메모리를 복원하기 위해 
+배경 액티비티를 소멸시키기 시작할 수 있고, 그러면 액티비티 상태가 손실됩니다. 
+다음의 <a href="#ActivityState">액티비티 상태</a>에 관한 섹션을 참조하십시오.</p>
+
+<p>백 스택에 있는 액티비티는 결코 다시 정렬되지 않으므로, 애플리케이션에서 
+사용자에게 하나 이상의 액티비티로부터 특정 액티비티를 시작하도록 허용하는 경우, 해당 액티비티의 새 인스턴스가 
+생성되어 스택 위로 밀려옵니다(해당 액티비티의 기존 인스턴스를 
+맨 위로 가져오는 대신). 따라서, 애플리케이션 안의 한 액티비티가 여러 번 
+인스턴트화될 수 있으며(서로 다른 작업으로부터도 가능), 이를 나타낸 것이 그림 3입니다. 이 때문에 사용자가 
+<em>뒤로</em> 버튼을 사용하여 뒤로 이동하는 경우, 액티비티의 각 인스턴스가 열린 순서대로 드러납니다
+(각자 나름의 
+UI 상태를 가지고). 다만, 액티비티가 한 번 이상 인스턴트화되는 것을 원치 않으면 이 행동은 수정할 수 
+있습니다. 그 방법에 대해서는 <a href="#ManagingTasks">작업 관리하기</a>에 관한 이후 섹션에서 이야기합니다.</p>
+
+
+<p>액티비티 및 작업에 대한 기본 행동을 요약하려면 다음과 같이 합니다.</p>
+
+<ul>
+  <li>액티비티 A가 액티비티 B를 시작하면 액티비티 A는 중단되지만, 시스템이 그 상태를
+(예: 스크롤 위치 및 양식에 입력된 텍스트 등) 보존합니다.
+사용자가 액티비티 B에 있는 동안 <em>뒤로</em> 버튼을 누르면 액티비티 A가 재개되며 상태도 
+복원됩니다.</li>
+  <li>사용자가 <em>홈</em> 버튼을 눌러 작업을 떠나면 현재 액티비티가 
+중단되고 
+그 소속 작업이 배경으로 들어갑니다. 시스템은 작업에 속한 모든 액티비티의 상태를 보존합니다. 사용자가 
+나중에 작업을 시작한 시작 관리자 아이콘을 선택하여 해당 작업을 재개하면, 그 작업이 
+전경으로 나오고 스택 맨 위에서 액티비티를 재개합니다.</li>
+  <li>사용자가 <em>뒤로</em> 버튼을 누르면, 현재 액티비티가 스택에서 튀어나오고 
+소멸됩니다.
+ 스택에 있던 이전 액티비티가 재개됩니다. 액티비티가 소멸되면, 시스템은 그 액티비티의 상태를 
+보존하지 <em>않습니다.</em></li>
+  <li>액티비티는 여러 번 인스턴트화할 수 있으며, 다른 작업에서도 이를 수행할 수 있습니다.</li>
+</ul>
+
+
+<div class="note design">
+<p><strong>탐색 디자인</strong></p>
+  <p>Android에서 앱 탐색의 작동 원리를 자세히 알아보려면, Android 디자인의 <a href="{@docRoot}design/patterns/navigation.html">탐색</a> 가이드를 읽어보십시오.</p>
+</div>
+
+
+<h2 id="ActivityState">액티비티 상태 저장하기</h2>
+
+<p>위에서 논한 바와 같이, 시스템의 기본 행동은 액티비티가 중단되면 그 상태를 보존해두는 
+것입니다. 이렇게 하면, 사용자가 이전 액티비티로 도로 이동했을 때 그에 속한 사용자 인터페이스가 이전 상태 
+그대로 표시됩니다. 그러나 액티비티의 상태를 미리 보존할 수도 있으며 사전에 이렇게 <strong>해야 합니다.</strong>
+이때에는, 액티비티가 소멸되고 다시 만들어야 하는 경우를 대비해 
+콜백 메서드를 사용합니다.</p>
+
+<p>시스템이 액티비티 중 하나를 중단시키는 경우(예를 들어 새 액티비티가 시작되었을 때 또는 작업이 
+배경으로 이동하는 경우), 시스템은 시스템 메모리를 회복해야 하는 경우 액티비티를 
+완전히 소멸시켜버릴 수도 있습니다. 이런 상황이 벌어지면, 액티비티 상태에 대한 정보는 손실됩니다. 이런 일이 벌어지더라도, 
+시스템은 여전히 
+백 스택에 해당 액티비티의 자리가 있다는 것을 알고 있습니다. 다만 액티비티가 스택 맨 위로 올라오면 
+시스템이 이를 (재개하는 것이 아니라) 재생성해야만 합니다. 사용자의 작업 내용을 
+잃어버리는 불상사를 피하려면 그 내용을 미리 보존해두어야 합니다. 이때 액티비티의 
+{@link android.app.Activity#onSaveInstanceState onSaveInstanceState()} 콜백 
+메서드를 구현하는 방법을 씁니다.</p>
+
+<p>액티비티 상태를 저장하는 방법에 대한 자세한 정보는 <a href="{@docRoot}guide/components/activities.html#SavingActivityState">액티비티</a>
+문서를 참조하십시오.</p>
+
+
+
+<h2 id="ManagingTasks">작업 관리하기</h2>
+
+<p>Android가 작업과 백 스택을 관리하는 방식은 위에 설명된 바와 같고&mdash;같은 작업 안에서 
+연이어 시작된 모든 작업을 한곳에 배치하되 "후입선출" 스택에 두는 것&mdash;이 방식은 
+대부분의 애플리케이션에 아주 효과적입니다. 여러분은 액티비티가 작업과 연관된 방식이나 
+백 스택에서의 존재 방식에 대해 염려하지 않아도 됩니다. 그러나, 정상적인 동작을 인터럽트하기로 결정할 수도 
+있습니다. 애플리케이션의 액티비티 하나가 시작되면 새 작업을 시작하려 
+할 수도 있습니다(현재 작업 내에 배치되는 것 대신에). 아니면, 액티비티를 시작하면 그것의 
+기존 인스턴스 하나를 앞으로 가져오고자 할 수도 있습니다(백 스택 맨 위에서 새 인스턴스를 
+생성하는 것 대신에). 또는 백 스택에서 사용자가 작업을 떠날 때의 루트 액티비티를 제외하고 
+모든 액티비티를 지우고자 할 수도 있습니다.</p>
+
+<p>이 모든 것과 그 외에도 많은 것을 할 수 있는 것이 바로 
+<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+매니페스트 요소 안에 있는 속성과, 
+{@link android.app.Activity#startActivity startActivity()}에 전달한 인텐트에 있는 플래그입니다.</p>
+
+<p>이런 면에서, 여러분이 사용할 수 있는 주요 <a href="{@docRoot}guide/topics/manifest/activity-element.html">
+{@code &lt;activity&gt;}</a> 속성은 다음과 같습니다.</p>
+
+<ul class="nolist">
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">
+  {@code taskAffinity}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">
+  {@code launchMode}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+  {@code allowTaskReparenting}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">
+  {@code clearTaskOnLaunch}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+  {@code alwaysRetainTaskState}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">
+  {@code finishOnTaskLaunch}</a></li>
+</ul>
+
+<p>그리고 다음은 여러분이 사용할 수 있는 주요 인텐트 플래그입니다.</p>
+
+<ul class="nolist">
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</li>
+</ul>
+
+<p>다음 섹션에서는 이와 같은 매니페스트 속성과 인텐트 플래그를 사용하여 
+액티비티가 작업과 연관되는 방식을 정의하고 백 스택에서 액티비티가 동작하는 방식을 정의하는 방법을 배우게 됩니다.</p>
+
+<p>이외에도 별도로 작업과 액티비티를 표시하는 방법에 대한 고려 사항과 
+개요 화면에서의 관리 방법을 논합니다. 자세한 정보는 <a href="{@docRoot}guide/components/recents.html">개요 화면</a>을 
+참조하십시오. 보통은 개요 화면에 작업과 액티비티가 어떻게 표현될지는 
+시스템이 정의하도록 두어야 합니다. 이 동작을 개발자가 수정할 필요도 없습니다.</p>
+
+<p class="caution"><strong>주의:</strong> 대부분의 애플리케이션은 액티비티와 작업에 대한 
+기본 동작을 인터럽트하지 않는 것이 정상입니다. 액티비티가 기본 동작을 수정하는 것이 필요하다는 
+판단이 서면, 시작 과정 중에 액티비티의 유용성을 테스트하십시오. 
+또한 다른 액티비티와 작업에서 <em>뒤로</em> 버튼을 써서 해당 액티비티로 돌아올 때에도 유용성을 테스트해야 합니다.
+사용자의 예상되는 동작과 충돌할 가능성이 있는 탐색 동작을 꼭 테스트하십시오.</p>
+
+
+<h3 id="TaskLaunchModes">시작 모드 정의하기</h3>
+
+<p>시작 모드를 사용하면 액티비티의 새 인스턴스가 현재 작업과 연관된 방식을 정의할 수 있게 
+해줍니다. 여러 가지 시작 모드를 두 가지 방식으로 정의할 수 있습니다.</p>
+<ul class="nolist">
+  <li><a href="#ManifestForTasks">매니페스트 파일 사용하기</a>
+    <p>매니페스트 파일에서 액티비티를 선언하는 경우, 액티비티가 시작될 때 여러 작업과 어떤 식으로 
+연관을 맺어야 하는지 지정할 수 있습니다.</li>
+  <li><a href="#IntentFlagsForTasks">인텐트 플래그 사용하기</a>
+    <p>{@link android.app.Activity#startActivity startActivity()}를 호출하는 경우 
+{@link android.content.Intent}에 플래그를 포함시켜 새 액티비티가 현재 작업과 어떻게 연관되어야 할지(또는 
+애초에 연관을 맺을지 아닐지) 선언하도록 할 수 있습니다.</p></li>
+</ul>
+
+<p>따라서, 액티비티 A가 액티비티 B를 시작하면 액티비티 B는 자신의 매니페스트에서 
+현재 작업과 연관을 맺는 데 적당한 방식(연관을 맺어야 한다면)을 정의할 수 있고 액티비티 A 또한 
+액티비티 B가 현재 작업과 연관을 맺는 방식을 요청할 수 있습니다. 두 액티비티가 모두 액티비티 B가 작업과 
+연관되는 방식을 정의하는 경우, 액티비티 A의 요청(인텐트에 정의된 바를 따름)을 액티비티 B의 
+요청(자신의 매니페스트에서 정의)보다 우위로 인식합니다.</p>
+
+<p class="note"><strong>참고:</strong> 매니페스트 파일에 사용할 수 있는 시작 모드 중에는 
+인텐트의 플래그로 사용할 수는 없는 것도 있으며, 이와 마찬 가지로 인텐트의 플래그로 사용할 수 있는 시작 모드 중에는 
+매니페스트에서 정의할 수 없는 것도 있습니다.</p>
+
+
+<h4 id="ManifestForTasks">매니페스트 파일 사용하기</h4>
+
+<p>매니페스트 파일에서 액티비티를 선언하는 경우, 액티비티가 작업과 
+어떤 식으로 연관되어야 할지 지정하려면 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+요소의 <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> 속성을 사용하면 됩니다.</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> 속성은 액티비티가 작업 안으로 들어가며 시작되는 방법에 대한 지침을 
+나타냅니다. 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">launchMode</a></code>
+속성에 할당할 수 있는 시작 모드는 네 가지가 있습니다.</p>
+
+<dl>
+<dt>{@code "standard"} (기본 모드)</dt>
+  <dd>기본입니다. 시스템이 액티비티가 시작된 작업에서 액티비티의 새 인스턴스를 만들고 
+인텐트의 경로를 이것으로 지정합니다. 액티비티는 여러 번 인스턴트화될 수 있고, 
+각 인스턴스는 서로 다른 작업에 속할 수 있으며 한 작업에 여러 개의 인스턴스가 있을 수 있습니다.</dd>
+<dt>{@code "singleTop"}</dt>
+  <dd>액티비티의 인스턴스가 이미 현재 작업의 맨 위에 존재하는 경우, 시스템은 인텐트의 경로를 
+해당 인스턴스로 지정합니다. 이때 액티비티의 새 인스턴스를 만들기보다는 해당 인스턴스의 {@link
+android.app.Activity#onNewIntent onNewIntent()} 메서드를 호출하는 방법을 
+통합니다. 액티비티는 여러 번 인스턴트화될 수 있고, 각 인스턴스는 서로 다른 작업에 
+속할 수 있으며 한 작업에 여러 개의 인스턴스가 있을 수 있습니다(다만 백 스택의 맨 위에 있는 
+액티비티가 액티비티의 기존 인스턴스가 <em>아닌</em> 경우에만 이것이 적용됩니다).
+  <p>예를 들어 어느 작업의 백 스택이 루트 액티비티 A와 액티비티 B, C, 그리고 맨 위의 액티비티 D로 
+구성되어 있다고 가정합니다(이 스택은 A-B-C-D 형태를 띠며 D가 맨 위에 있습니다). 유형 D의 액티비티에 대한 인텐트가 도착합니다.
+D에 기본 {@code "standard"} 시작 모드가 있는 경우, 클래스의 새 인스턴스가 시작되고 이 스택은 
+A-B-C-D-D가 됩니다. 하지만, D의 시작 모드가 {@code "singleTop"}인 경우, D의 
+기존 인스턴스가 해당 인텐트를 {@link
+android.app.Activity#onNewIntent onNewIntent()}를 통해 받게 됩니다. 이것이 스택의 맨 위에 있기 때문입니다. 스택은 
+계속 A-B-C-D로 유지됩니다. 그러나 유형 B의 액티비티에 대한 인텐트가 도착하는 경우, 
+B의 새 인스턴스가 스택에 추가되며 이는 액티비티의 시작 모드가 {@code "singleTop"}이더라도 무관하게 적용됩니다.</p>
+  <p class="note"><strong>참고:</strong> 어느 액티비티의 새 인스턴스가 생성되면, 
+사용자가 <em>뒤로</em> 버튼을 눌러 이전 액티비티로 되돌아갈 수 있게 됩니다. 그러나 액티비티의 기존 
+인스턴스가 
+새 인텐트를 처리하는 경우, 사용자가 <em>뒤로</em> 버튼을 눌러도 새 인텐트가 {@link android.app.Activity#onNewIntent
+onNewIntent()}에 도착하기 전의 액티비티 
+상태로 
+되돌아갈 수 없습니다.</p>
+</dd>
+
+<dt>{@code "singleTask"}</dt>
+  <dd>시스템이 새 작업을 만들고 새 작업의 루트에 있는 액티비티를 인스턴트화합니다.
+하지만, 액티비티의 인스턴스가 이미 별개의 작업에 존재하는 경우, 시스템은 인텐트의 경로를 
+기존 인스턴스로 지정합니다. 이때 새 인스턴스를 만들기보다 해당 인스턴스의 {@link
+android.app.Activity#onNewIntent onNewIntent()} 메서드를 호출하는 방법을 통합니다. 한 번에 
+액티비티 인스턴스 한 개씩만 존재할 수 있습니다.
+  <p class="note"><strong>참고:</strong> 액티비티가 새 작업에서 시작되더라도, 
+<em>뒤로</em> 버튼을 누르면 여전히 사용자를 이전 액티비티로 돌려보냅니다.</p></dd>
+<dt>{@code "singleInstance"}.</dt>
+  <dd>{@code "singleTask"}와 같습니다. 다만 시스템이 인스턴스를 보유하고 있는 작업 안으로 
+다른 어떤 액티비티도 시작하지 않는다는 것은 예외입니다. 액티비티는 언제나 자신의 작업의 유일무이한 구성원입니다. 
+이것으로 시작한 액티비티는 모두 별개의 작업에서 열립니다.</dd>
+</dl>
+
+
+<p>또 다른 예로 Android 브라우저 애플리케이션이 있습니다. 이것은 웹 브라우저 액티비티가 항상 
+자신만의 작업에서 열려야 한다고 선언합니다. 이때 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 요소에 {@code singleTask} 시작 모드를 지정하는 방법을 씁니다. 
+다시 말해 애플리케이션이 Android 브라우저를 열라는 인텐트를 발행하면 
+브라우저의 액티비티가 애플리케이션과 같은 작업에 배치되지 <em>않는다</em>는 
+뜻입니다. 그 대신, 브라우저에 대한 새 작업이 시작되거나, 브라우저에 이미 
+배경에서 실행 중인 작업이 있는 경우 해당 작업이 전경으로 불려나와 새 인텐트를 처리하게 
+됩니다.</p>
+
+<p>액티비티가 새 작업에서 시작되었든 액티비티를 시작한 것과 같은 작업에서 시작되었든 관계 없이 
+<em>뒤로</em> 버튼을 사용하면 언제나 사용자를 이전 액티비티로 돌려보냅니다. 다만, 
+{@code singleTask} 시작 모드를 나타내는 액티비티를 시작한 다음 해당 
+액티비티의 인스턴스가 이미 배경 작업에 존재하는 경우, 그 작업 전체가 전경에 불려나옵니다. 이 시점에서 
+백 스택에는 이제 앞으로 가져온 작업에서 가져온 모든 액티비티가 포함되어 있으며, 이는 스택의 
+맨 위에 위치합니다. 그림 4는 이와 같은 유형의 시나리오를 나타낸 것입니다.</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack_singletask_multiactivity.png" alt="" />
+<p class="img-caption"><strong>그림 4.</strong> 시작 모드가 "singleTask"인 액티비티가 
+백 스택에 추가되는 방법을 표현한 것입니다. 이 액티비티가 이미 자신의 백 스택을 가지고 있는 
+배경 작업의 일부인 경우, 해당 백 스택도 모두 전경으로 
+불려나오며, 이는 현재 작업 위에 배치됩니다.</p>
+
+<p>매니페스트 파일에서 시작 모드를 사용하는 것에 대한 자세한 정보는 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+요소 문서를 참조하십시오. 여기에서 {@code launchMode} 속성과 허용된 값을 더 자세히 
+논합니다.</p>
+
+<p class="note"><strong>참고:</strong> 액티비티에 대하여 <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 속성으로 지정한 동작을 
+재정의하려면 액티비티를 시작한 인텐트에 포함된 플래그를 사용하면 됩니다. 이 내용은 
+다음 섹션에서 논합니다.</p>
+
+
+
+<h4 id="#IntentFlagsForTasks">인텐트 플래그 사용하기</h4>
+
+<p>액티비티를 시작할 때면, 액티비티가 자신의 작업과 연관되는 기본 방식을 수정할 수 있습니다. 
+{@link
+android.app.Activity#startActivity startActivity()}에 전달한 인텐트 안에 있는 플래그를 포함시키면 됩니다. 기본 동작을 수정하는 데 사용할 수 있는 
+플래그는 다음과 같습니다.</p>
+
+<p>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</dt>
+    <dd>액티비티를 새 작업에서 시작합니다. 지금 시작하고 있는 액티비티에 대해 이미 실행 중인 작업이 있으면, 
+해당 작업의 마지막 상태를 복원하여 전경으로 불려나오고 액티비티는 새 인텐트를 
+{@link android.app.Activity#onNewIntent onNewIntent()}에서 수신합니다.
+    <p>이렇게 하면 {@code "singleTask"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 값에서와 같은 동작을 발생시키며, 
+이는 이전 섹션에서 논한 것과 같습니다.</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</dt>
+    <dd>시작되고 있는 액티비티가 현재 액티비티인 경우(백 스택 맨 위에 있는), 해당 액티비티의 새 인스턴스를 생성하는 대신 기존 
+인스턴스가 {@link android.app.Activity#onNewIntent onNewIntent()}에 
+대한 호출을 받습니다.
+    <p>이렇게 하면 {@code "singleTop"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 값에서와 같은 동작을 발생시키며, 
+이는 이전 섹션에서 논한 것과 같습니다.</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</dt>
+    <dd>시작되고 있는 액티비티가 이미 현재 작업에서 실행 중인 경우, 해당 액티비티의 
+새 인스턴스를 시작하는 대신 그 위에 있는 모든 다른 액티비티가 
+소멸되고 이 인텐트는 해당 액티비티(이제 맨 위로 올라옴)의 재개된 인스턴스로, 
+{@link android.app.Activity#onNewIntent onNewIntent()}를 통해 전달됩니다.
+    <p>이 동작을 발생시키는 <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+속성에 대한 값은 없습니다.</p>
+    <p>{@code FLAG_ACTIVITY_CLEAR_TOP}는 
+{@code FLAG_ACTIVITY_NEW_TASK}와 함께 쓰이는 경우가 가장 보편적입니다. 
+이들 플래그를 함께 사용하면 다른 작업에 있는 기존 액티비티의 위치를 
+찾아 이를 인텐트에 응답할 수 있는 위치에 놓을 한 가지 방편이 됩니다. </p>
+    <p class="note"><strong>참고:</strong> 지정된 액티비티의 시작 모드가 
+{@code "standard"}인 경우, 
+이것 또한 스택에서 제거되고 그 자리에 새 인스턴스가 대신 생성되어 수신되는 인텐트를 
+처리하게 됩니다.  이는 시작 모드가 
+{@code "standard"}인 경우, 새 인텐트에 대해서는 항상 새 인스턴스가 생성되기 때문입니다. </p>
+</dd>
+</dl>
+
+
+
+
+
+<h3 id="Affinities">유사성 처리하기</h3>
+
+<p><em>유사성</em>이란 액티비티가 어느 작업에 소속되기를 선호하는지를 나타내는 것입니다. 기본적으로, 
+같은 애플리케이션에서 나온 액티비티는 서로 유사성을 지니고 있습니다. 따라서, 기본적으로 
+같은 애플리케이션 안에 있는 모든 액티비티는 같은 작업 안에 있는 것을 선호합니다. 하지만 액티비티에 대한 기본 유사성은 개발자가 
+수정할 수 있습니다. 각기 다른 애플리케이션에서 정의된 
+액티비티가 하나의 유사성을 공유할 수도 있고, 같은 애플리케이션에서 정의된 여러 액티비티에 
+서로 다른 작업 유사성을 할당할 수도 있습니다.</p>
+
+<p>어느 액티비티라도 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+요소의 <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a> 속성을 
+사용하여 유사성을 수정할 수 있습니다.</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+속성은 문자열 값을 취합니다. 이는 
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">
+{@code &lt;manifest&gt;}
+</a> 요소에서 선언한 기본 패키지 이름과 달리 고유해야 합니다. 왜냐하면 시스템이 이 이름을 사용하여 애플리케이션의 기본 작업 유사성을 
+식별하기 때문입니다.</p>
+
+<p>유사성이 역할을 갖는 것은 다음과 같은 두 가지 상황에서입니다.</p>
+<ul>
+  <li>액티비티를 시작한 인텐트에 
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}
+ 플래그가 들어 있는 경우.
+
+<p>새로운 액티비티는 기본적으로 
+{@link android.app.Activity#startActivity startActivity()}를 호출한 액티비티의 작업 안으로 들어가며 시작됩니다. 이것은 발신자와 같은 
+백 스택 위로 밀어내집니다.  하지만 
+{@link android.app.Activity#startActivity startActivity()}에 
+전달된 인텐트에 {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}
+ 플래그가 들어있는 경우, 시스템은 새 액티비티를 담을 다른 작업을 찾습니다. 이는 새 작업인 경우가 많습니다.
+그렇지만 꼭 그래야 하는 것은 아닙니다.  새 액티비티와 같은 유사성을 가진 기존 작업이 이미 존재하는 경우, 
+해당 액티비티는 그 작업 안으로 들어가며 시작됩니다.  그렇지 않으면, 새 작업을 시작합니다.</p>
+
+<p>이 플래그 때문에 액티비티가 새 작업을 시작하게 되고 사용자가 <em>홈</em> 버튼을 눌러 이 액티비티를 
+떠나고자 
+하는 경우, 사용자가 작업으로 도로 이동할 방법이 있어야 합니다. 엔티티 중에는(예를 들어 
+알림 관리자) 액티비티를 항상 외부 작업으로만 시작하고 자신의 일부로서는 절대 시작하지 않는 것이 있습니다. 
+따라서 이들은 {@code FLAG_ACTIVITY_NEW_TASK}를 
+{@link android.app.Activity#startActivity startActivity()}에 전달하는 인텐트에 포함시킵니다. 
+이 플래그를 사용할 수 있는 외부 엔티티가 
+호출할 수 있는 액티비티를 가지고 있는 경우, 사용자가 시작된 작업에 돌아갈 수 있는 
+방법을 따로 가지고 있어야 합니다. 예를 들어 시작 관리자 아이콘을 이용한다든지 하는 방법입니다(작업의 루트 액티비티에 
+{@link android.content.Intent#CATEGORY_LAUNCHER} 인텐트 필터가 있습니다. 아래의 <a href="#Starting">작업 시작하기</a> 섹션을 참조하십시오).</p>
+</li>
+
+  <li>액티비티의 <a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+{@code allowTaskReparenting}</a> 속성이 {@code "true"}로 설정된 경우.
+  <p>이 경우, 액티비티는 자신이 시작한 작업에서 벗어나 유사성을 가진 다른 작업이 전경으로 
+나오면 그 작업으로 이동할 수 있습니다.</p>
+  <p>예를 들어 선택한 몇몇 도시에서 기상 상태를 예보하는 어느 액티비티가 
+여행 애플리케이션의 일부로 정의되어 있다고 가정합니다.  이것은 같은 애플리케이션에 있는 
+다른 여러 액티비티와 같은 유사성을 가지며(기본 애플리케이션 유사성) 이 속성으로 상위 재지정을 허용하기도 합니다. 
+액티비티 중 하나가 일기 예보 액티비티를 시작하면, 이는 처음에는 액티비티와 같은 작업에 
+속합니다. 하지만 여행 애플리케이션의 작업이 전경으로 불려나오면 
+일기 예보 액티비티는 그 작업에 다시 할당되며 그 안에 표시됩니다.</p>
+</li>
+</ul>
+
+<p class="note"><strong>팁:</strong> {@code .apk} 파일에 사용자 쪽에서 보기에 하나 이상의 "애플리케이션"이 
+들어있는 경우, <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+속성을 사용하여 각 "애플리케이션"과 연관된 액티비티에 서로 다른 유사성을 할당하는 것이 좋습니다.</p>
+
+
+
+<h3 id="Clearing">백 스택 지우기</h3>
+
+<p>사용자가 작업을 오랜 시간 동안 떠나 있으면, 시스템이 루트 액티비티만 빼고 모든 액티비티를 
+해당 작업에서 지웁니다.  사용자가 다시 작업으로 돌아오면, 루트 액티비티만 복원됩니다. 
+시스템이 이런 식으로 동작하는 것은 오랜 시간이 지난 다음에는 사용자가 전에 하던 일을 중단하고 
+새로운 일을 시작하기 위해 작업에 돌아올 가능성이 크기 때문입니다. </p>
+
+<p>이 동작을 수정하는 데 사용할 수 있는 액티비티 속성이 몇 가지 있습니다. </p>
+
+<dl>
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#always">alwaysRetainTaskState</a></code>
+</dt>
+<dd>이 속성이 작업의 루트 액티비티 안에서 {@code "true"}로 설정되어 있는 경우, 
+방금 설명한 기본 동작이 일어나지 않습니다. 
+작업은 오랜 시간이 지난 뒤에도 자신의 스택에 있는 모든 액티비티를 유지합니다.</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#clear">clearTaskOnLaunch</a></code></dt>
+<dd>이 속성이 작업의 루트 액티비티 안에서 {@code "true"}로 설정되어 있는 경우, 
+사용자가 작업을 떠났다가 다시 돌아올 때마다 스택을 루트 액티비티까지 
+지웁니다.  바꿔 말하면, 이것은 
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+{@code alwaysRetainTaskState}</a>와 정반대입니다. 사용자는 항상 작업의 초기 상태로 돌아오게 되며, 
+이는 아주 잠깐 동안만 작업을 떠난 경우에도 마찬가지입니다.</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#finish">finishOnTaskLaunch</a></code>
+</dt>
+<dd>이 속성은 <a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">{@code clearTaskOnLaunch}</a>와 같지만, 
+작업 전체가 아니라 
+하나의 액티비티에서 작동합니다.  이것은 루트 액티비티를 포함한 모든 액티비티가 없어지게 
+하기도 합니다.  이것을 {@code "true"}로 설정하면, 
+액티비티는 현재 세션에 대해서만 작업의 일부로 유지됩니다.  사용자가 작업을 떠났다가 
+다시 돌아오면 이 작업은 더 이상 존재하지 않습니다.</dd>
+</dl>
+
+
+
+
+<h3 id="Starting">작업 시작하기</h3>
+
+<p>액티비티를 작업의 진입 지점으로 설정하려면 여기에 작업에서 지정한 대로 
+{@code "android.intent.action.MAIN"}이 있는 인텐트 필터를 부여하고 
+{@code "android.intent.category.LAUNCHER"}를 
+지정된 카테고리로 설정하면 됩니다. 예:</p>
+
+<pre>
+&lt;activity ... &gt;
+    &lt;intent-filter ... &gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+    ...
+&lt;/activity&gt;
+</pre>
+
+<p>이런 종류의 인텐트 필터를 사용하면 액티비티에 대한 아이콘과 레이블이 
+애플리케이션 시작 관리자에 표시되어 사용자에게 액티비티를 시작할 방법을 부여하며, 
+액티비티를 시작하고 나면 이것이 생성한 작업에 언제든 돌아올 수 있게 됩니다.
+</p>
+
+<p>이 두 번째 능력이 중요합니다. 사용자는 작업을 떠났다가 이 액티비티 시작 관리자를 사용하여 나중에 작업에 
+돌아올 수 있어야 합니다. 이러한 이유로, 액티비티가 항상 작업을 시작하는 것으로 표시하는 <a href="#LaunchModes">시작
+모드</a> 두 가지, 즉 {@code "singleTask"}와 
+{@code "singleInstance"}는 액티비티에 
+{@link android.content.Intent#ACTION_MAIN}
+ 및 {@link android.content.Intent#CATEGORY_LAUNCHER} 필터가 있을 때에만 사용해야 합니다. 예를 들어 필터가 누락되면 다음과 같은 일이 
+발생합니다. 어느 인텐트가 {@code "singleTask"} 액티비티를 시작하여 새 작업을 시작하고, 
+사용자가 이 작업에서 일하며 어느 정도 시간을 보냅니다. 그런 다음 사용자가 <em>홈</em>
+ 버튼을 누릅니다. 이제 이 작업은 배경으로 전송되었으며 눈에 보이지 않습니다. 이제 사용자가 작업으로 되돌아갈 
+방법이 없어졌습니다. 이는 애플리케이션 시작 관리자에 표시되지 않기 때문입니다.</p>
+
+<p>사용자가 액티비티로 되돌아갈 수 있도록 하는 것을 원치 않는 경우, 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ 요소의 
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">{@code finishOnTaskLaunch}</a>
+를 {@code "true"}로 설정하면 됩니다(<a href="#Clearing">스택 지우기</a>를 참조하십시오).</p>
+
+<p>작업과 액티비티가 개요 화면에서 어떻게 표시되고 관리되는지에 대한 
+자세한 정보는 <a href="{@docRoot}guide/components/recents.html">
+개요 화면</a>에서 확인하실 수 있습니다.</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how to use intents to
+activate other application components and publish the intents to which your components
+respond, continue with the <b><a
+href="{@docRoot}guide/components/intents-filters.html">Intents and Intent
+Filters</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/ko/guide/index.jd b/docs/html-intl/intl/ko/guide/index.jd
new file mode 100644
index 0000000..73af3df
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/index.jd
@@ -0,0 +1,74 @@
+page.title=Android 소개
+
+@jd:body
+
+
+<div class="sidebox" style="width:220px"><!-- width to match col-4 below -->
+<p>앱의 작동 원리를 배워보고자 한다면, 우선 
+<a href="{@docRoot}guide/components/fundamentals.html">앱 기본 항목</a>부터 시작하십시오.</p>
+<p>바로 코딩을 시작하려면, <a href="{@docRoot}training/basics/firstapp/index.html">첫 앱 구축하기</a>를 읽어보십시오.</p>
+</div>
+
+<p>Android는 풍성한 애플리케이션 프레임워크를 제공하여 Java 언어 환경에서 실행되는 
+모바일 기기에서 사용할 혁신적인 앱과 게임을 구축할 수 있습니다. 왼쪽 탐색 영역에 목록으로 나열된 
+여러 문서에서 Android의 다양한 API를 사용하여 앱을 구축하는 방법에 대한 상세한 정보를 제공합니다.</p>
+
+<p>Android 개발을 처음 시도하신다면, 다음과 같은 
+Android 앱 프레임워크 기본 개념을 숙지하는 것이 중요합니다.</p>
+
+
+<div class="landing-banner">
+
+<div class="col-6">
+
+<h4>앱은 여러 개의 진입 지점을 제공합니다.</h4>
+
+<p>Android 앱은 여러 가지 고유한 구성 요소들의 조합으로 구축되며, 이러한 구성 요소는 개별적으로 
+호출할 수도 있습니다. 예를 들어 어떤 하나의 <em>액티비티</em>가 사용자 인터페이스를 위한 
+화면을 하나 제공하고, <em>서비스</em>가 배경에서 독립적으로 작업을 수행할 
+수 있습니다.</p>
+
+<p>한 구성 요소에서 또 다른 구성 요소를 시작하려면 <em>인텐트</em>를 사용하면 됩니다. 심지어 다른 앱에서도 
+구성 요소를 시작할 수 있습니다. 지도 앱에서 주소를 표시하는 액티비티를 시작하는 것이 좋은 예입니다. 이 모델은 
+하나의 앱에 대한 여러 개의 진입 지점을 제공하여 어느 앱이라도 다른 여러 앱이 호출할 수 있는 작업에 대해 
+사용자의 "기본" 앱 역할을 합니다.</p>
+
+
+<p><b>자세히 알아보기:</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/components/fundamentals.html">앱 기본 항목</a>
+<li><a href="{@docRoot}guide/components/intents-filters.html">인텐트 및 인텐트 필터</a>
+<li><a href="{@docRoot}guide/components/activities.html">액티비티</a>
+</ul>
+
+</div>
+
+
+<div class="col-6">
+
+<h4>앱은 여러 가지 기기에 맞게 변경됩니다.</h4>
+
+<p>Android는 적응형 앱 프레임워크를 제공하여 여러 가지 기기 구성에 맞게 
+고유한 리소스를 제공할 수 있습니다. 예를 들어, 여러 가지 화면 크기에 맞춰 각기 다른 XML 
+레이아웃 파일을 생성하면 시스템이 현재 기기의 화면 크기를 근거로 
+어느 레이아웃을 적용할지 결정합니다.</p>
+
+<p>앱 기능이 특정한 하드웨어(예: 카메라)를 필요로 하는 경우 런타임에 
+기기 특징의 기능을 쿼리할 수 있습니다. 필요하다면 앱이 필요로 하는 기능을 선언할 수도 있습니다. 
+그러면 Google Play Store와 같은 앱 마켓에서 해당 기능을 지원하지 않는 기기에서 
+설치를 허용하지 않습니다.</p>
+
+
+<p><b>자세히 알아보기:</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/practices/compatibility.html">기기 호환성</a>
+<li><a href="{@docRoot}guide/topics/resources/overview.html">리소스 개요</a>
+<li><a href="{@docRoot}guide/topics/ui/overview.html">사용자 인터페이스 개요</a>
+</ul>
+
+</div>
+
+</div><!-- end landing-banner -->
+
+
+
diff --git a/docs/html-intl/intl/ko/guide/topics/manifest/manifest-intro.jd b/docs/html-intl/intl/ko/guide/topics/manifest/manifest-intro.jd
new file mode 100644
index 0000000..c3550d0
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/manifest/manifest-intro.jd
@@ -0,0 +1,517 @@
+page.title=앱 매니페스트
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>이 문서의 내용</h2>
+<ol>
+<li><a href="#filestruct">매니페스트 파일의 구조</a></li>
+<li><a href="#filec">파일 규칙</a>
+<li><a href="#filef">파일 기능</a>
+	<ol>
+	<li><a href="#ifs">인텐트 필터</a></li>
+	<li><a href="#iconlabel">아이콘 및 레이블</a></li>
+	<li><a href="#perms">권한</a></li>
+	<li><a href="#libs">라이브러리</a></li>
+	</ol></li>
+</ol>
+</div>
+</div>
+
+<p>
+  모든 애플리케이션에는 루트 라이브러리에 AndroidManifest.xml 파일(정확히 
+이 이름으로)이 있어야 합니다. <span itemprop="description">매니페스트 파일은 
+Android 시스템에 대한 여러분의 앱 관련 필수 정보를 나타냅니다. 
+즉 앱의 코드를 실행하기 전에 시스템이 반드시 필요로 하는 정보를 
+말합니다.</span> 매니페스트가 하는 일에는 여러 가지가 있지만, 그 중에서 몇 가지만 소개하면 다음과 같습니다.
+</p>
+
+<ul>
+<li>애플리케이션에 대한 Java 패키지의 이름을 나타냅니다. 
+패키지 이름이 애플리케이션에 대한 고유한 식별자 역할을 합니다.</li>
+
+<li>애플리케이션의 구성 요소를 설명합니다. 액티비티, 
+서비스, 브로드캐스트 수신기 및 콘텐츠 제공자 등 애플리케이션을 이루는 여러 항목을 
+말합니다.  이것은 각 구성 요소를 구현하는 클래스의 이름을 나타내고 
+각각의 기능을 게시합니다(예를 들어 처리할 수 있는 {@link android.content.Intent 
+Intent} 메시지 종류 등).  이러한 선언을 통해 Android 시스템이 여러 구성 요소가 
+각각 무엇인지 알게 되고, 어떤 조건에서 시작해야 하는지 알 수 있습니다.</li>
+
+<li>어느 프로세스가 애플리케이션 구성 요소를 호스팅할 것인지 결정합니다.</li>  
+
+<li>API의 보호된 부분에 액세스하여 다른 애플리케이션과 상호 작용하려면 
+애플리케이션에 어느 권한이 꼭 필요한지 선언합니다.</li>  
+
+<li>또한, 이 애플리케이션의 구성 요소와 상호 작용하려면 다른 애플리케이션이 
+반드시 가지고 있어야 하는 권한도 선언합니다.</li>
+
+<li>이는 애플리케이션이 실행 중일 때 프로파일링과 기타 정보를 제공하는 
+{@link android.app.Instrumentation} 클래스를 목록으로 표시합니다.  이러한 선언이 매니페스트에 나타나는 것은 
+애플리케이션이 개발 중이고 테스트되는 단계에만 국한됩니다. 
+이들은 애플리케이션이 게시되기 전에 제거됩니다.</li>
+
+<li>이는 애플리케이션이 필요로 하는 Android API의 최소 레벨을 
+선언합니다.</li>
+
+<li>애플리케이션이 연결되어야 하는 라이브러리를 목록으로 표시합니다.</li>
+</ul>
+
+
+<h2 id="filestruct">매니페스트 파일의 구조</h2>
+
+<p>
+아래의 다이어그램은 매니페스트 파일의 일반적인 구조와 매니페스트 파일에 
+들어있을 수 있는 모든 요소를 표시한 것입니다.  각 요소와 각각의 속성을 모두 문서화한 
+전문은 별도의 파일에서 확인하실 수 있습니다.  어떤 요소에 대해서든 
+상세한 정보를 보려면 다이어그램에서 해당 요소 이름을 클릭하십시오. 
+이름은 다이어그램 뒤에 나오는 요소 목록(알파벳 순) 또는 
+요소 이름이 언급되는 기타 영역 어디서든 클릭할 수 있습니다. 
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration /&gt;</a>  <!-- ##api level 3## -->
+    <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html">&lt;compatible-screens /&gt;</a>  <!-- ##api level 9## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-gl-texture-element.html">&lt;supports-gl-texture /&gt;</a>  <!-- ##api level 11## -->
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;/activity&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;/activity-alias&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data/&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;/service&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;/receiver&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/path-permission-element.html">&lt;path-permission /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;/provider&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library /&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;/application&gt;</a>
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;/manifest&gt;</a>
+</pre>
+
+<p>
+매니페스트 파일에 표시될 수 있는 모든 요소는 아래에 알파벳 순서로 
+목록으로 표시되어 있습니다.  합법적인 요소는 이들이 전부입니다. 개발자 나름대로 요소 또는 속성을 
+추가해서는 안 됩니다.  
+</p>
+
+<p style="margin-left: 2em">
+<code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration&gt;</a></code>  <!-- ##api level 3## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></code>
+</p>
+
+
+    
+
+<h2 id="filec">파일 규칙</h2>
+
+<p>
+몇몇 규칙과 규정은 매니페스트 내의 모든 요소와 속성에 전반적으로 
+적용됩니다.
+</p>
+
+<dl>
+<dt><b>요소</b></dt>
+<dd>필수 요소는 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 및 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 요소뿐으로, 
+이들은 각기 따로 표시되어야 하며 한 번씩만 발생할 수 있습니다.  
+나머지는 대부분 여러 번 발생할 수 있거나 전혀 발생하지 않기도 합니다. 다만, 
+그 중 최소한 몇몇은 있어야 매니페스트가 무엇이든 의미 있는 작업을 
+달성할 수 있습니다.
+
+<p>
+요소에 무엇이든 들어있기만 하면 다른 요소가 그 요소에 들어 있는 것입니다.  
+모든 값은 요소 내의 문자 데이터로서가 아니라 속성을 통해 설정됩니다.
+</p>
+
+<p>
+같은 레벨에 있는 여러 요소는 보통 순서가 지정되지 않습니다.  예를 들어 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>, 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code> 및 
+<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> 
+요소는 어떤 순서로든 서로 섞여도 됩니다  (이 규칙에서 
+<code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+요소는 예외입니다.  이것은 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>의 별칭이므로 
+이를 반드시 따라야 합니다).
+</p></dd>
+
+<dt><b>속성</b></dt>
+<dd>공식적인 의미에서 모든 속성은 선택 항목입니다.  그러나, 요소가 목적을 달성하기 
+위해서 반드시 지정되어야 하는 것이 몇 가지 있습니다.  관련 문서를 
+지침으로 사용하십시오.  정말로 선택적인 속성의 경우, 기본 값을 언급하거나 
+사양이 없으면 어떤 일이 벌어지는지 진술합니다.
+
+<p>루트 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 
+요소의 몇 가지 속성을 제외하고 모든 속성 이름은 {@code android:alwaysRetainTaskState} 접두사로 시작합니다.
+예를 들어, {@code android:}와 같습니다.  이 접두사는 범용이기 때문에 
+속성을 이름으로 참조하는 경우 관련 문서가 이를 생략하는 경우가 
+일반적입니다.</p></dd>
+
+<dt><b>클래스 이름 선언</b></dt>
+<dd>대다수의 요소가 Java 객체에 상응합니다. 여기에는 
+애플리케이션 자체에 대한 요소가 포함되며(
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+요소), 그것의 주 구성 요소도 포함됩니다. 즉, 액티비티 
+(<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>), 
+서비스
+(<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>), 
+브로드캐스트 수신기
+(<code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>) 및 
+콘텐츠 제공자
+(<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>) 등이 이에 해당됩니다.  
+
+<p>
+하위 클래스를 정의하는 경우 구성 요소 클래스
+({@link android.app.Activity}, {@link android.app.Service}, 
+{@link android.content.BroadcastReceiver} 및 {@link android.content.ContentProvider})는 거의 항상 이렇게 하게 되는데, 
+이때 하위 클래스는 {@code name} 속성을 통해 선언됩니다.  이 이름에 반드시 
+완전한 패키지 지정이 포함되어 있어야 합니다.  
+예를 들어, {@link android.app.Service} 하위 클래스를 선언하려면 다음과 같이 할 수 있습니다.
+</p>
+
+<pre>&lt;manifest . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name="com.example.project.SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+그러나 일종의 줄임으로서 문자열의 첫 번째 글자가 마침표인 경우, 해당 
+문자열은 애플리케이션의 패키지 이름에 추가됩니다(
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 
+요소의 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html#package">package</a></code> 
+속성에서 지정한 바와 같이).  다음 할당은 위의 것과 같습니다. 
+</p>
+
+<pre>&lt;manifest package="com.example.project" . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name=".SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+Android는 구성 요소를 시작할 때 이름이 명명된 하위 클래스의 인스턴스를 생성합니다.  
+하위 클래스가 지정되지 않은 경우, 기본 클래스의 인스턴스를 생성합니다.
+</p></dd>
+
+<dt><b>여러 개의 값</b></dt>
+<dd>하나 이상의 값을 지정할 수 있는 경우, 해당 요소는 
+한 요소 안에 여러 개의 값을 목록으로 표시하기보다 거의 항상 반복됩니다.  
+예를 들어 한 인텐트 필터가 여러 개의 작업을 목록으로 표시할 수 있습니다.
+
+<pre>&lt;intent-filter . . . &gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.INSERT" /&gt;
+    &lt;action android:name="android.intent.action.DELETE" /&gt;
+    . . .
+&lt;/intent-filter&gt;</pre></dd>
+
+<dt><b>리소스 값</b></dt>
+<dd>몇몇 속성에는 사용자에게 표시될 수 있는 값이 있습니다. 예를 들어 
+액티비티에 대한 레이블과 아이콘 등이 이에 해당됩니다.  이러한 속성의 값은 
+지역화해야 하며 따라서 리소스나 테마에서 설정됩니다.  리소스 
+값은 다음과 같은 형식으로 표현됩니다.</p>
+
+<p style="margin-left: 2em">{@code @[<i>패키지</i>:]<i>유형</i>:<i>이름</i>}</p>
+
+<p>
+여기에서 <i>패키지</i> 이름은 리소스가 애플리케이션과 같은 패키지에 있으면 생략할 수 있고,
+ <i>유형</i> 은 "문자열" 또는 "그릴 수 있음" 같은 리소스 유형입니다. 그리고
+ <i>이름</i> 은 특정 리소스를 식별하는 이름입니다.  
+예:
+</p>
+
+<pre>&lt;activity android:icon="@drawable/smallPic" . . . &gt</pre>
+
+<p>
+테마에서 가져온 값도 비슷한 방식으로 표현되지만, 처음 부분에 '{@code ?}'를 사용합니다
+('{@code @}' 대신).
+</p>
+
+<p style="margin-left: 2em">{@code ?[<i>패키지</i>:]<i>유형</i>:<i>이름</i>}
+</p></dd>
+
+<dt><b>문자열 값</b></dt>
+<dd>속성 값이 문자열인 경우, 이중 백슬래시('{@code \\}')를 사용하여 
+문자 이스케이프를 수행해야 합니다. 예를 들어 줄바꿈에는 {@code \\n}, 
+유니코드 문자에는 '{@code \\uxxxx}'를 쓰십시오.</dd>
+</dl>
+
+
+<h2 id="filef">파일 기능</h2>
+
+<p>
+다음 섹션에서는 Android 기능을 매니페스트 파일에 반영하는 
+몇 가지 방식을 설명합니다.
+</p>
+
+
+<h3 id="ifs">인텐트 필터</h3>
+
+<p>
+애플리케이션의 핵심 구성 요소(액티비티, 서비스 및 브로드캐스트 
+수신기)를 활성화하는 것은 <i>인텐트</i>입니다.  인텐트는 
+원하는 작업을 설명하는 정보 묶음입니다({@link android.content.Intent} 객체).
+여기에는 작업을 수행할 데이터, 작업을 수행할 구성 요소의 카테고리와 
+기타 관련 지침 등이 포함됩니다.  
+Android는 인텐트에 응답할 적절한 구성 요소를 찾아 필요한 경우 구성 요소의 
+새 인스턴스를 시작하고, 이것을 인텐트 객체에 
+전달합니다.
+</p>
+
+<p>
+구성 요소는 자신의 능력을 알립니다. 즉, 자신이 응답할 수 있는 
+인텐트 종류를 밝힙니다. 이때 사용하는 것이 <i>인텐트 필터</i>입니다.  Android 시스템은 
+구성 요소를 시작하기 전에 해당 구성 요소가 처리할 수 있는 인텐트에 대해 학습해야 하기 때문에, 
+인텐트 필터는 매니페스트 파일에 
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code> 
+요소로 지정됩니다.  구성 요소 하나에 필터는 얼마든지 있을 수 있으며, 각각 서로 다른 기능을 
+설명하게 됩니다.
+</p>
+
+<p>
+대상 구성 요소를 명시적으로 지명하는 인텐트가 해당 구성 요소를 활성화합니다.
+필터는 아무런 역할을 하지 않습니다.  하지만 대상을 이름으로 지정하지 않는 인텐트의 경우에는 
+자신이 구성 요소의 필터 중 하나를 통과할 수 있을 때에만 해당 구성 요소를 활성화할 수 
+있습니다.
+</p>
+
+<p>
+인텐트 객체를 인텐트 필터에 대해 테스트하는 방법에 대한 자세한 방법은 
+별도의 문서인 
+<a href="{@docRoot}guide/components/intents-filters.html">인텐트 
+및 인텐트 필터</a>를 참조하십시오.
+</p>
+
+
+<h3 id="iconlabel">아이콘 및 레이블</h3>
+
+<p>
+대다수의 요소에 {@code icon}과 {@code label} 속성이 있으며 
+이것으로 사용자에게 표시될 수 있는 작은 아이콘과 텍스트 레이블을 나타냅니다.  몇몇 요소에는 
+{@code description} 속성도 있어 좀 더 긴 설명 텍스트를 나타낼 수 있고, 이것 또한 화면에 
+표시될 수 있습니다.  예를 들어 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+요소는 이와 같은 속성을 셋 모두 가지고 있어 사용자가 이를 요청한 애플리케이션에 대한 
+권한을 허가할 것인지 여부를 물으면 해당 권한, 
+권한의 이름과 그에 수반되는 내용에 대한 설명을 
+사용자에게 표시할 수 있습니다.
+</p>
+
+<p>
+어떤 경우에든, 요소에서 설정된 아이콘과 레이블이 해당 컨테이너의 모든 하위 요소에 대한 기본 
+{@code icon}과 {@code label} 설정이 됩니다.  
+따라서 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+요소에서 설정된 아이콘과 레이블이 애플리케이션의 각 요소에 대한 기본 아이콘과 레이블입니다.  
+이와 유사하게, 구성 요소에 대해 설정된 아이콘과 레이블이 &mdash; 예를 들어 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 
+요소 &mdash; 각 구성 요소의 
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code> 
+요소에 대한 기본 설정입니다.  
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+요소가 레이블을 설정하지만 액티비티와 그 인텐트 필터는 이를 설정하지 않는 경우, 
+애플리케이션 레이블을 액티비티와 인텐트 필터 양쪽 모두의 레이블인 것으로 
+취급합니다.
+</p>
+
+<p>
+인텐트 필터에 대해 설정된 아이콘과 레이블은 구성 요소가 사용자에게 
+표시될 때마다 구성 요소를 나타내는 데 사용되며, 이는 필터가 알린 기능을 
+충족하는 것입니다.  예를 들어 
+"{@code android.intent.action.MAIN}" 및 
+"{@code android.intent.category.LAUNCHER}"가 설정된 필터는 
+액티비티를 애플리케이션을 초기화하는 주역으로 알립니다. 다시 말해, 
+애플리케이션 시작 관리자에 표시되어야 하는 것이 됩니다.  따라서 필터에서 설정된 아이콘과 레이블이 
+시작 관리자에 표시되는 아이콘과 레이블입니다.
+</p>
+
+
+<h3 id="perms">권한</h3>
+
+<p>
+통상 <i>권한</i> 이란 기기에서 코드의 일부분 또는 데이터에 대한 액세스를 한정하는 
+제한입니다.   이런 한계를 부과하는 것은 중요한 데이터와 코드를 보호하여 
+이들이 남용되어서 사용자 환경을 왜곡하거나 손상시키지 않도록 하기 위해서입니다.  
+</p>
+
+<p>
+각 권한은 고유한 레이블로 식별할 수 있습니다.  레이블을 보면 자신이 어떤 작업을 제한하는지 
+나타내는 경우가 잦습니다.  예를 들어 다음은 Android가 정의하는 몇 가지 권한을 나타낸 
+것입니다.
+</p>
+
+<p style="margin-left: 2em">{@code android.permission.CALL_EMERGENCY_NUMBERS}
+<br/>{@code android.permission.READ_OWNER_DATA}
+<br/>{@code android.permission.SET_WALLPAPER}
+<br/>{@code android.permission.DEVICE_POWER}</p>
+
+<p>
+하나의 기능을 보호하는 데에는 권한 하나면 충분합니다.
+</p>
+
+<p>
+애플리케이션에서 권한으로 보호하는 기능에 액세스해야 하는 경우, 
+해당 권한이 필요하다고 매니페스트의 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 
+요소로 선언해야 합니다.  그런 다음, 해당 애플리케이션이 기기에 설치되고 나면 
+설치 관리자가 요청한 권한을 허가할지 여부를 판별합니다. 
+이때 애플리케이션의 인증서를 서명한 권한을 확인하고 어떤 경우에는 사용자에게 
+묻기도 합니다.  
+권한이 허가되면 해당 애플리케이션은 보호된 기능을 사용할 수 
+있습니다.  허가되지 않으면, 그러한 기능에 액세스하려는 애플리케이션의 시도가 단순히 실패하고 사용자에게는 
+아무런 알림도 표시되지 않습니다. 
+</p>
+
+<p>
+애플리케이션은 권한을 사용하여 자신의 구성 요소를(액티비티, 서비스, 
+브로드캐스트 수신기 및 콘텐츠 제공자) 보호할 수도 있습니다.  Android가 정의한 
+권한이라면 어떤 것이든 사용할 수 있고(
+{@link android.Manifest.permission android.Manifest.permission}에 목록으로 나열), 
+아니면 다른 애플리케이션이 선언한 권한을 사용해도 됩니다.  아예 직접 자신만의 권한을 정의해도 됩니다.  새 권한을 선언할 때에는 
+
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+요소를 사용합니다.  예를 들어 액티비티를 보호하려면 다음과 같이 하면 됩니다.
+</p>
+
+<pre>
+&lt;manifest . . . &gt;
+    &lt;permission android:name="com.example.project.DEBIT_ACCT" . . . /&gt;
+    &lt;uses-permission android:name="com.example.project.DEBIT_ACCT" /&gt;
+    . . .
+    &lt;application . . .&gt;
+        &lt;activity android:name="com.example.project.FreneticActivity"
+                  android:permission="com.example.project.DEBIT_ACCT"
+                  . . . &gt;
+            . . .
+        &lt;/activity&gt;
+    &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>
+이 예시에서는 {@code DEBIT_ACCT} 권한이 
+
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+요소로 선언하였을 뿐만 아니라, 해당 권한의 사용 또한 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 
+요소로 요청되었다는 점을 눈여겨 보십시오.  이것의 사용을 요청해야 애플리케이션의 다른 구성 요소가 보호된 
+액티비티를 시작할 수 있습니다. 이는 해당 보호를 애플리케이션 자신이 부과한 것이더라도 
+관계 없이 적용됩니다.  
+</p>
+
+<p>
+같은 예시에서, {@code permission} 속성이 다른 곳에서 
+선언한 권한에 설정된 경우
+(예: {@code android.permission.CALL_EMERGENCY_NUMBERS}), 이것을 
+
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+요소를 사용하여 다시 선언할 필요가 없습니다.  하지만 해당 권한의 사용은 여전히 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>로 요청해야 합니다. 
+</p>
+
+<p>
+
+<code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code> 
+요소는 코드로 정의될 권한 그룹에 대한 네임스페이스를 
+선언합니다.  그리고 
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+가 권한 집합에 대한 레이블을 정의합니다(매니페스트에 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+요소로 선언한 것과 다른 곳에서 선언한 것 양쪽 모두).  이것은 권한이 사용자에게 표시될 때 
+그룹 지정될 방식에만 영향을 미칩니다.  
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+요소는 그룹에 어느 권한이 속해 있는지 지정하는 것이 아니라, 그저 
+그룹에 이름을 부여할 뿐입니다.  그룹에 권한을 배치하려면 그룹 이름을 
+
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+요소의 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html#pgroup">permissionGroup</a></code> 
+속성에 할당하면 됩니다.
+</p>
+
+
+<h3 id="libs">라이브러리</h3>
+
+<p>
+모든 애플리케이션은 기본 Android 라이브러리에 연결되어 있습니다. 여기에는 
+애플리케이션 구축을 위한 기본적인 패키지(액티비티, 서비스, 
+인텐트, 보기, 버튼, 애플리케이션, ContentProvider 등 보편적인 클래스 포함)가 포함되어 
+있습니다.
+</p>
+
+<p>
+그러나 패키지 가운데에는 자신만의 라이브러리에 속한 것도 있습니다.  애플리케이션이 
+사용하는 코드의 출처가 이러한 패키지 가운데 어느 한 가지에 해당되는 경우, 해당 패키지에 연결되도록 
+명시적으로 요청해야만 합니다.  매니페스트에는 별도의 
+<code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code> 
+요소가 들어 있어 각 라이브러리의 이름을 나타내야 합니다  (라이브러리 이름은 패키지에 대한 
+관련 문서에서 찾을 수 있습니다).
+</p>
diff --git a/docs/html-intl/intl/ko/guide/topics/providers/calendar-provider.jd b/docs/html-intl/intl/ko/guide/topics/providers/calendar-provider.jd
new file mode 100644
index 0000000..4d69b60
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/providers/calendar-provider.jd
@@ -0,0 +1,1184 @@
+page.title=캘린더 제공자
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>이 문서의 내용</h2>
+    <ol>
+  <li><a href="#overview">기본 정보</a></li>
+  <li><a href="#manifest">사용자 권한</a></li>
+  <li><a href="#calendar">캘린더 테이블</a>
+<ol>
+      <li><a href="#query">캘린더 쿼리</a></li>
+      <li><a href="#modify-calendar">캘린더 수정</a></li>
+      <li><a href="#insert-calendar">캘린더 삽입</a></li>
+    </ol>
+  </li>
+  <li><a href="#events">이벤트 테이블</a>
+<ol>
+      <li><a href="#add-event">이벤트 추가</a></li>
+      <li><a href="#update-event">이벤트 업데이트</a></li>
+      <li><a href="#delete-event">이벤트 삭제</a></li>
+    </ol>
+  </li>
+  <li><a href="#attendees">참석자 테이블</a>
+<ol>
+      <li><a href="#add-attendees">참석자 추가</a></li>
+    </ol>
+  </li>
+  <li><a href="#reminders">알림 테이블</a>
+<ol>
+      <li><a href="#add-reminders">알림 추가</a></li>
+    </ol>
+  </li>
+  <li><a href="#instances">인스턴스 테이블</a>
+  <ol>
+      <li><a href="#query-instances">인스턴스 테이블 쿼리</a></li>
+  </ol></li>
+  <li><a href="#intents">캘린더 인텐트</a>
+  <ol>
+      <li><a href="#intent-insert">인텐트를 사용하여 이벤트 삽입</a></li>
+      <li><a href="#intent-edit">인텐트를 사용하여 이벤트 편집</a></li>
+      <li><a href="#intent-view">인텐트를 사용하여 캘린더 데이터 보기</a></li>
+    </ol>
+  </li>
+  
+  <li><a href="#sync-adapter">동기화 어댑터</a></li>
+</ol>
+
+    <h2>Key 클래스</h2>
+    <ol>
+      <li>{@link android.provider.CalendarContract.Calendars}</li>
+      <li>{@link android.provider.CalendarContract.Events}</li>
+      <li>{@link android.provider.CalendarContract.Attendees}</li>
+      <li>{@link android.provider.CalendarContract.Reminders}</li>
+    </ol>
+</div>
+</div>
+
+<p>캘린더 제공자는 사용자의 캘린더 이벤트를 저장하는 리포지토리입니다. 
+캘린더 제공자 API를 사용하면 캘린더, 이벤트, 참석자, 알림 등의 쿼리, 삽입, 업데이트 및 
+삭제 등의 작업을 수행할 수 있습니다.</p>
+
+
+<p>캘린더 제공자 API는 애플리케이션과 동기화 어댑터에서 사용할 수 있습니다. 
+어떤 유형의 프로그램이 호출을 하는 주체인지에 따라 규칙이 각기 다릅니다. 
+이 문서는 주로 캘린더 제공자 API를 애플리케이션으로 사용하는 것에 주안점을 두었습니다. 
+여러 동기화 어댑터가 서로 어떻게 다른지 논의한 내용은 
+<a href="#sync-adapter">동기화 어댑터</a>를 참조하십시오.</p>
+
+
+<p>캘린더 데이터를 읽거나 쓰려면 보통 애플리케이션의 매니페스트에 
+적절한 권한이 포함되어 있어야 합니다. 이는 <a href="#manifest">사용자 
+권한</a>에 설명되어 있습니다. 공통 작업을 쉽게 수행하기 위해 캘린더
+제공자는 <a href="#intents">캘린더
+인텐트</a>에 설명된 바와 같이 인텐트 집합을 제공합니다. 이와 같은 인텐트는 사용자를 캘린더 애플리케이션으로 이동시켜 
+이벤트 삽입, 보기 및 편집을 할 수 있게 해줍니다. 사용자는 캘린더 애플리케이션과 상호 작용한 다음 
+원래 애플리케이션으로 돌아옵니다. 따라서, 여러분의 애플리케이션이 이벤트를 보거나 
+생성하기 위해 권한 허가를 요청할 필요도 없고 사용자 인터페이스를 제공할 필요도 없는 것입니다.</p>
+
+<h2 id="overview">기본 정보</h2>
+
+<p><a href="{@docRoot}guide/topics/providers/content-providers.html">콘텐츠 제공자</a>는 데이터를 저장하여 애플리케이션에서 
+이에 액세스할 수 있도록 합니다. 일반적으로, Android 플랫폼에서 제공하는 콘텐츠 제공자(캘린더 제공자 포함)는
+관계 데이터베이스 모델에 기초하여 테이블 집합으로 데이터를 노출합니다. 이 모델에서 각 행은 레코드이고,
+각 열은 특정한 유형과 의미를 가진 데이터입니다. 애플리케이션과 동기화 어댑터는 
+캘린더 제공자 API를 통해 사용자의 캘린더 데이터를 보관하고 있는 데이터베이스 테이블에 
+읽기/쓰기 액세스 권한을 얻을 수 있습니다.</p>
+
+<p>모든 콘텐츠 제공자는 데이터 세트를 고유하게 식별하는 공개 URI(
+{@link android.net.Uri} 
+개체로 래핑됨)를 노출합니다.  여러 데이터 세트(여러 테이블)를 제어하는 콘텐츠 제공자는
+각 데이터 세트에 별도의 URI를 노출합니다.  
+제공자에 대한 URI는 모두 문자열 "content://"로 시작합니다.  
+이것을 보면 데이터를 콘텐츠 제공자가 제어하고 있다는 것을 알아볼 수 있습니다. 
+캘린더 제공자가 각각의 클래스(테이블)에 대한 URI의 상수를 정의합니다. 
+이와 같은 URI는 <code><em>&lt;class&gt;</em>.CONTENT_URI</code> 형식을 취합니다. 
+예를 들면 다음과 같습니다. {@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}</p>
+
+<p>그림 1은 캘린더 제공자 데이터 모델을 그림으로 나타낸 것입니다. 
+이 그림에는 메인 테이블과이들을 서로 연결하는 필드가 표시되어 있습니다.</p>
+
+<img src="{@docRoot}images/providers/datamodel.png" alt="Calendar Provider Data Model" />
+<p class="img-caption"><strong>그림 1.</strong> 캘린더 제공자 데이터 모델.</p>
+
+<p>한 사용자가 여러 개의 캘린더를 가질 수 있으며, 여러 가지 캘린더는 각기 다른 유형의 계정(Google 캘린더, Exchange 등)과 연결될 수 있습니다.</p>
+
+<p>{@link android.provider.CalendarContract}가 캘린더의 데이터 모델과 이벤트 관련 정보를 정의합니다. 이 데이터는 아래에 나열한 것과 같은 여러 테이블에 저장됩니다.</p>
+
+<table>
+  <tr>
+    <th>테이블(클래스)</th>
+    <th>설명</th>
+  </tr>
+  <tr>
+    <td><p>{@link android.provider.CalendarContract.Calendars}</p></td>
+    
+    <td>이 테이블에는 캘린더별 정보가 담겨 있습니다.
+ 이 테이블의 행마다 한 캘린더의 세부 정보, 
+예를 들어 이름, 색상, 동기화 정보 등이 들어갑니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Events}</td>
+    
+    <td>이 테이블에는 이벤트별 정보가 담겨 있습니다.
+ 이 테이블의 행마다 한 이벤트의 세부 정보
+예를 들어 이벤트 제목, 위치, 시작 시간, 종료 시간 등의 정보가 들어갑니다.
+ 이벤트는 일회성일 수도 있고 여러 번 반복될 수도 있습니다. 
+참석자, 알림 및 확장된 속성 등은 별도의 테이블에 저장됩니다. 
+이들 테이블에는 각기 {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}가 있어 
+이벤트 테이블의 {@link android.provider.BaseColumns#_ID}를 참조합니다.</td>
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances}</td>
+    
+    <td>이 테이블에는 각 이벤트 발생의 시작 시간과 종료 시간이 
+담겨 있습니다. 이 테이블의 각 행이 하나의 이벤트 발생을 나타냅니다.
+ 일회성 이벤트의 경우, 이벤트에 대한 1:1 인스턴스 매핑이 있습니다.
+ 반복되는 이벤트의 경우, 해당 이벤트가 여러 번 발생하는 것에 맞추어 
+자동으로 여러 행이 생성됩니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Attendees}</td>
+    
+    <td>이 테이블에는 이벤트 참석자(게스트) 정보가 담겨 있습니다.
+ 각 행이 주어진 이벤트의 게스트 한 사람을 나타냅니다.
+ 이것이 게스트의 유형과, 이벤트에 대한 해당 게스트의 참석 여부 응답을 
+나타냅니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Reminders}</td>
+    
+    <td>이 테이블에는 경고/알림 데이터가 담겨 있습니다.
+ 각 행이 주어진 이벤트에 대한 경고 하나를 나타냅니다. 
+이벤트 하나에 여러 개의 알림이 있을 수 있습니다. 이벤트당 최대 알림 개수는
+
+{@link android.provider.CalendarContract.CalendarColumns#MAX_REMINDERS}에서 지정되고, 
+이는 주어진 캘린더를 소유한 동기화 어댑터가 설정합니다.
+ 알림은 이벤트 몇 분 전에 지정되며 사용자에게 어떻게 경고할 것인지를 
+결정하는 메서드를 가지고 있습니다.</td>
+  </tr>
+  
+</table>
+
+<p>캘린더 제공자 API는 유연성과 강력함을 염두에 두고 만들어진 것입니다. 
+그와 동시에 우수한 최종 사용자 경험을 제공하고 캘린더와 그 데이터의 
+무결성을 보호하는 것 또한 중요합니다. 이를 위해서
+API를 사용할 때 유념해야 할 사항은 다음과 같습니다.</p>
+
+<ul>
+
+<li><strong>캘린더 이벤트 삽입, 업데이트 및 보기.</strong> 캘린더 제공자로부터 직접 이벤트를 삽입, 변경하고 읽으려면 적절한 <a href="#manifest">권한</a>이 필요합니다. 그러나, 완전한 캘린더 애플리케이션 또는 동기화 어댑터를 구축하는 경우가 아니라면 이와 같은 권한을 요청할 필요가 없습니다. 대신 Android의 캘린더 애플리케이션이 지원하는 인텐트를 사용하여 해당 애플리케이션에 읽기 및 쓰기 작업을 분배하면 됩니다. 인텐트를 사용하면, 애플리케이션이 사용자를 캘린더 애플리케이션으로 보내 사전에 작성된 양식으로 원하는 작업을 
+수행하게 합니다. 작업이 끝나면 사용자는 애플리케이션으로 돌아옵니다. 
+캘린더를 통해 공통 작업을 수행하도록 애플리케이션을 설계함으로써 사용자에게 일관되고 강력한 
+사용자 인터페이스를 제공하는 것입니다. 이것이 권장 방법입니다.
+ 자세한 정보는 <a href="#intents">캘린더
+인텐트</a>를 참조하십시오.</p>
+
+
+<li><strong>동기화 어댑터.</strong> 
+동기화 어댑터는 사용자의 기기에 있는 캘린더 데이터를 다른 서버 또는 데이터 소스와 동기화합니다. 
+{@link android.provider.CalendarContract.Calendars}와
+{@link android.provider.CalendarContract.Events} 테이블에는
+동기화 어댑터가 사용하도록 예약된 열이 있습니다.
+제공자와 애플리케이션은 이를 수정해서는 안 됩니다. 사실, 동기화 어댑터로 액세스하지 않는 한 
+이 열이 표시되지 않습니다. 
+동기화 어댑터에 대한 자세한 정보는 <a href="#sync-adapter">동기화 어댑터</a>를 참조하십시오.</li>
+
+</ul>
+
+
+<h2 id="manifest">사용자 권한</h2>
+
+<p>캘린더 데이터를 읽으려면 애플리케이션의 매니페스트 파일에 {@link
+android.Manifest.permission#READ_CALENDAR} 권한이 포함되어 있어야 합니다. 
+캘린더 데이터를 삭제, 삽입 또는 업데이트하려면{@link android.Manifest.permission#WRITE_CALENDAR} 
+권한이 포함되어 있어야 합니다.</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;...&gt;
+    &lt;uses-sdk android:minSdkVersion=&quot;14&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.READ_CALENDAR&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.WRITE_CALENDAR&quot; /&gt;
+    ...
+&lt;/manifest&gt;
+</pre>
+
+
+<h2 id="calendar">캘린더 테이블</h2>
+
+<p>{@link android.provider.CalendarContract.Calendars} 
+테이블에는 각각의 캘린더에 대한 세부 정보가 들어 있습니다. 
+다음 캘린더 열은 애플리케이션과 <a href="#sync-adapter">동기화 어댑터</a> 모두 쓸 수 있는 것입니다. 
+지원되는 필드의 전체 목록은 
+{@link android.provider.CalendarContract.Calendars} 참조를 확인하십시오.</p>
+<table>
+  <tr>
+    <th>상수</th>
+    <th>설명</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#NAME}</td>
+    <td>캘린더 이름입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#CALENDAR_DISPLAY_NAME}</td>
+    <td>사용자에게 표시되는 이 캘린더의 이름입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#VISIBLE}</td>
+    
+    <td>캘린더를 표시하기로 선택했는지를 나타내는 부울입니다. 
+값이 0이면 이 캘린더와 연관된 이벤트는 표시하면 안 된다는 뜻입니다.
+  값이 1이면 이 캘린더와 연관된 이벤트를 표시해야 한다는 뜻입니다.
+ 이 값이 {@link
+android.provider.CalendarContract.Instances} 테이블의 행 생성에 영향을 미칩니다.</td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.CalendarColumns#SYNC_EVENTS}</td>
+    
+    <td>캘린더를 동기화하고 이 캘린더의 이벤트를 기기에 저장해야할지를 
+나타내는 부울입니다. 값이 0이면 이 캘린더를 동기화하거나 이에 속한 이벤트를 
+기기에 저장하면 안 된다는 뜻입니다.  값이 1이면 이 캘린더에 대한 이벤트를 동기화하고 이에 속한 
+이벤트를 기기에 저장하라는 뜻입니다.</td>
+  </tr>
+</table>
+
+<h3 id="query">캘린더 쿼리</h3>
+
+<p>다음은 특정한 사용자가 소유한 캘린더를 가져오는 법을 나타낸 예시입니다.
+ 이 예시에서는 단순하게 나타내기 위해 쿼리 작업을 사용자 인터페이스 스레드("주 스레드")에 표시했습니다.
+ 실제로는, 이 작업은 주 스레드 대신 비동기화 스레드에서 해야 합니다.
+ 자세한 논의는 
+<a href="{@docRoot}guide/components/loaders.html">로더</a>를 참조하십시오. 데이터를 읽기만 하는 것이 아니라 변경도 하는 경우라면, 
+{@link android.content.AsyncQueryHandler}를 참조하십시오.
+</p>
+
+
+<pre>
+// Projection array. Creating indices for this array instead of doing
+// dynamic lookups improves performance.
+public static final String[] EVENT_PROJECTION = new String[] {
+    Calendars._ID,                           // 0
+    Calendars.ACCOUNT_NAME,                  // 1
+    Calendars.CALENDAR_DISPLAY_NAME,         // 2
+    Calendars.OWNER_ACCOUNT                  // 3
+};
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_ACCOUNT_NAME_INDEX = 1;
+private static final int PROJECTION_DISPLAY_NAME_INDEX = 2;
+private static final int PROJECTION_OWNER_ACCOUNT_INDEX = 3;</pre>
+  
+
+<div class="sidebox-wrapper"> <div class="sidebox"> <h3>
+ACCOUNT_TYPE을 반드시 포함시켜야 하는 이유는 무엇일까요?</h3> <p>{@link
+android.provider.CalendarContract.Calendars#ACCOUNT_NAME
+Calendars.ACCOUNT_NAME}에 대해 쿼리하는 경우, 해당 선택에 
+{@link android.provider.CalendarContract.Calendars#ACCOUNT_TYPE Calendars.ACCOUNT_TYPE}
+도 포함시켜야 합니다. 이는 주어진 계정을 고유하다고 간주하는 것은 해당 계정의 
+<code>ACCOUNT_NAME</code> 및 
+<code>ACCOUNT_TYPE</code>이 모두 있을 때뿐이기 때문입니다. <code>ACCOUNT_TYPE</code>은 계정이 
+
+{@link android.accounts.AccountManager}로 등록되었을 때 사용된 계정 인증자에 상응하는 문자열입니다. 기기와 연관되지 않은 캘린더에 적용되는 특별한 유형의 계정도 있으며 이를 {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}이라고 합니다.
+{@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} 계정은 동기화되지 않습니다.
+</p> </div> </div> 
+
+
+<p> 다음 예시에서는 여러분이 직접 나름의 쿼리를 생성해보십시오. 선택 영역이 쿼리의 기준을 나타냅니다.
+ 이 예시에서 쿼리는 
+<code>ACCOUNT_NAME</code>
+"sampleuser@google.com", <code>ACCOUNT_TYPE</code>
+"com.google" 및 <code>OWNER_ACCOUNT</code>
+"sampleuser@google.com"을 가지고 있는 캘린더를 찾고 있습니다. 사용자가 소유한 캘린더뿐만 아니라 사용자가 전에 본 캘린더까지 모두 확인하려면 
+<code>OWNER_ACCOUNT</code>를 생략합니다. 
+쿼리가 {@link android.database.Cursor}
+개체를 반환하여 이를 시용하면 데이터베이스 쿼리가 반환한 결과 집합을 트래버스할 수 있습니다.
+ 콘텐츠 제공자에서 쿼리를 사용하는 법에 대한 자세한 논의는 
+<a href="{@docRoot}guide/topics/providers/content-providers.html">콘텐츠 제공자</a>를 참조하십시오.</p>
+
+
+<pre>// Run query
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+Uri uri = Calendars.CONTENT_URI;   
+String selection = "((" + Calendars.ACCOUNT_NAME + " = ?) AND (" 
+                        + Calendars.ACCOUNT_TYPE + " = ?) AND ("
+                        + Calendars.OWNER_ACCOUNT + " = ?))";
+String[] selectionArgs = new String[] {"sampleuser@gmail.com", "com.google",
+        "sampleuser@gmail.com"}; 
+// Submit the query and get a Cursor object back. 
+cur = cr.query(uri, EVENT_PROJECTION, selection, selectionArgs, null);</pre>
+
+<p>다음에 표시된 섹션에서는 커서를 사용하여 결과 집합을 단계별로 살펴봅니다. 
+여기에서는 예시의 시작 부분에서 설정된 상수를 사용하여 각 필드에 대한 값을 반환합니다.
+</p>
+    
+<pre>// Use the cursor to step through the returned records
+while (cur.moveToNext()) {
+    long calID = 0;
+    String displayName = null;
+    String accountName = null;
+    String ownerName = null;
+      
+    // Get the field values
+    calID = cur.getLong(PROJECTION_ID_INDEX);
+    displayName = cur.getString(PROJECTION_DISPLAY_NAME_INDEX);
+    accountName = cur.getString(PROJECTION_ACCOUNT_NAME_INDEX);
+    ownerName = cur.getString(PROJECTION_OWNER_ACCOUNT_INDEX);
+              
+    // Do something with the values...
+
+   ...
+}
+</pre>
+  
+<h3 id="modify-calendar">캘린더 수정</h3>
+
+<p>캘린더 업데이트를 수행하려면 캘린더의 {@link
+android.provider.BaseColumns#_ID}를 
+URI에 추가된 ID로
+
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}), 또는 첫 번째 선택 항목으로 제공하면 됩니다.
+ 
+선택은 <code>&quot;_id=?&quot;</code>로 시작해야 하며, 첫 번째 
+<code>selectionArg</code>는 캘린더의 {@link
+android.provider.BaseColumns#_ID}여야 합니다. 
+또한 ID를 URI에 인코딩해서도 업데이트를 수행할 수 있습니다. 이 예시에서는 캘린더의 표시 이름을 
+
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()})
+방식으로 변경하였습니다.</p>
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long calID = 2;
+ContentValues values = new ContentValues();
+// The new display name for the calendar
+values.put(Calendars.CALENDAR_DISPLAY_NAME, &quot;Trevor's Calendar&quot;);
+Uri updateUri = ContentUris.withAppendedId(Calendars.CONTENT_URI, calID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);</pre>
+
+<h3 id="insert-calendar">캘린더 삽입</h2>
+
+<p>캘린더는 주로 동기화 어댑터가 관리하도록 설계되어 있습니다. 따라서 새 캘린더는 
+동기화 어댑터로서만 삽입해야 합니다. 대다수의 경우 애플리케이션은 캘린더에 
+표면적인 사항만 변경할 수 있게 되어 있습니다(예: 표시 이름 변경 등). 
+어떤 애플리케이션이 로컬 캘린더를 생성해야 하는 경우, 캘린더 삽입을 동기화 어댑터로 수행하면 됩니다. 
+이때 {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}의 {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE}을 사용합니다.
+{@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}
+은 기기 계정과 연관되지 않은 캘린더에 적용되는 특별한 유형의 계정입니다.
+ 이 유형의 캘린더는 서버에 동기화되지 않습니다. 
+동기화 어댑터에 대한 논의는 <a href="#sync-adapter">동기화 어댑터</a>를 참조하십시오.</p>
+
+<h2 id="events">이벤트 테이블</h2>
+
+<p>{@link android.provider.CalendarContract.Events} 
+테이블에는 각각의 이벤트에 대한 세부 정보가 들어 있습니다. 이벤트를 추가, 업데이트 또는 삭제하려면 애플리케이션의 
+<a href="#manifest">매니페스트 파일</a>에 {@link android.Manifest.permission#WRITE_CALENDAR}
+권한이 포함되어 있어야 합니다.</p>
+
+<p>다음 이벤트 열은 애플리케이션과 
+동기화 어댑터 모두 쓸 수 있는 것입니다. 지원되는 필드의 전체 목록은 {@link
+android.provider.CalendarContract.Events} 참조를 확인하십시오.</p>
+
+<table>
+  <tr>
+    <th>상수</th>
+    <th>설명</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#CALENDAR_ID}</td>
+    <td>이벤트가 속한 캘린더의 {@link android.provider.BaseColumns#_ID}입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ORGANIZER}</td>
+    <td>이벤트 조직자(소유자)의 이메일입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE}</td>
+    <td>이벤트 제목입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION}</td>
+    <td>이벤트가 일어나는 장소입니다. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION}</td>
+    <td>이벤트 설명입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTSTART}</td>
+    <td>이벤트가 시작되는 시간을 Epoch 이후 UTC 밀리초 단위로 나타낸 것입니다. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTEND}</td>
+    <td>이벤트가 종료되는 시간을 Epoch 이후 UTC 밀리초 단위로 나타낸 것입니다. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}</td>
+    <td>이벤트의 표준 시간대입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_END_TIMEZONE}</td>
+    <td>이벤트 종료 시간의 표준 시간대입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DURATION}</td>
+    
+    <td>이벤트 기간을 <a href="http://tools.ietf.org/html/rfc5545#section-3.8.2.5">RFC5545</a> 형식으로 나타낸 것입니다.
+예를 들어 <code>&quot;PT1H&quot;</code> 값을 보면 이벤트가 한 시간 지속될 것임을 알 수 있고, 
+<code>&quot;P2W&quot;</code>는 2주의 지속 기간을 나타냅니다.
+ </td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ALL_DAY}</td>
+    
+    <td>값이 1이면 이 이벤트가 현지 시간대에서 정의한 바에 의해 하루 종일 걸린다는 것을 나타냅니다.
+ 값이 0이면 이것이 하루 중 언제라도 시작하고 종료될 수 있는 정기 이벤트라는 것을 나타냅니다.
+</td>
+
+    
+  </tr>
+  
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RRULE}</td>
+    
+    <td>이벤트 형식의 반복 규칙입니다. 
+예를 들면 다음과 같습니다. <code>&quot;FREQ=WEEKLY;COUNT=10;WKST=SU&quot;</code> 더 많은 예시를 확인하려면 
+<a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.3">여기</a>를 참조하십시오.</td>
+    
+  </tr>
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RDATE}</td>
+    <td>이벤트의 반복 날짜입니다. 
+일반적으로 {@link android.provider.CalendarContract.EventsColumns#RDATE}
+를 {@link android.provider.CalendarContract.EventsColumns#RRULE}
+과 함께 사용하여 반복되는 발생의 집계 집합을 정의하게 됩니다.
+ 자세한 논의는 <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.2">RFC5545 사양</a>을 참조하십시오.</td>
+</tr>
+ 
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY}</td>
+    
+    <td>이 이벤트가 사용 중인 시간으로 간주되는지, 다시 일정을 예약할 수 있는 자유 시간으로 간주되는지를 나타냅니다.
+ </td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_MODIFY}</td>
+    <td>게스트가 이벤트를 수정할 수 있는지를 나타냅니다. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_INVITE_OTHERS}</td>
+    <td>게스트가 다른 게스트를 초대할 수 있는지를 나타냅니다. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_SEE_GUESTS}</td>
+    <td>게스트가 참석자 목록을 볼 수 있는지를 나타냅니다.</td>
+  </tr>
+</table>
+
+<h3 id="add-event">이벤트 추가</h3>
+
+<p>애플리케이션이 새 이벤트를 추가하는 경우, 
+{@link android.content.Intent#ACTION_INSERT INSERT} 인텐트를 사용하는 것이 좋습니다. 이때 <a href="#intent-insert">인텐트를 사용하여 이벤트 삽입</a>에서 설명한 대로 따릅니다. 그러나, 필요한 경우 직접 이벤트를 삽입해도 됩니다.
+ 이 섹션에서는 이렇게 하는 방법을 설명합니다.
+</p>
+
+
+<p>다음은 새 이벤트를 삽입할 때 따라야 하는 규칙입니다. </p>
+<ul>
+
+  <li>{@link
+android.provider.CalendarContract.EventsColumns#CALENDAR_ID}와 {@link
+android.provider.CalendarContract.EventsColumns#DTSTART}를 포함해야 합니다.</li>
+
+<li>{@link
+android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}을 포함해야 합니다. 
+시스템에 설치된 표준 시간대 ID 목록을 가져오려면 {@link
+java.util.TimeZone#getAvailableIDs()}를 사용하십시오. 이 규칙은 <a href="#intent-insert">인텐트를 사용하여 이벤트 삽입</a>에서 설명한 바와 같이
+{@link
+android.content.Intent#ACTION_INSERT INSERT} 인텐트를 통해서 이벤트를 삽입할 경우에는 적용되지 않습니다. 이 시나리오의 경우,
+기본 시간대가 제공됩니다.</li>
+  
+  <li>비반복적인 이벤트의 경우, {@link
+android.provider.CalendarContract.EventsColumns#DTEND}를 포함해야 합니다. </li>
+  
+  
+  <li>반복적인 이벤트의 경우 {@link
+android.provider.CalendarContract.EventsColumns#DURATION}과 {@link
+android.provider.CalendarContract.EventsColumns#RRULE} 또는 {@link
+android.provider.CalendarContract.EventsColumns#RDATE}를 포함해야 합니다. 이 규칙은 <a href="#intent-insert">인텐트를 사용하여 이벤트 삽입</a>에서 설명한 바와 같이
+{@link
+android.content.Intent#ACTION_INSERT INSERT} 인텐트를 통해서 이벤트를 삽입할 경우에는 적용되지 않습니다. 
+이 시나리오에서는 {@link android.provider.CalendarContract.EventsColumns#DTSTART} 및 {@link android.provider.CalendarContract.EventsColumns#DTEND}와 함께 {@link
+android.provider.CalendarContract.EventsColumns#RRULE}를 사용할 수 있고, 캘린더 애플리케이션이 이것을 기간으로 자동 변환해줍니다.
+</li>
+  
+</ul>
+
+<p>다음은 이벤트 삽입의 예입니다. 단순하게 나타내기 위해 UI 스레드에서 수행한 것입니다.
+ 실제로, 삽입과 업데이트는 비동기화 스레드에서 수행해야 작업을 배경 스레드로 이동시킬 수 있습니다.
+ 
+자세한 정보는 {@link android.content.AsyncQueryHandler}를 참조하십시오.</p>
+
+
+<pre>
+long calID = 3;
+long startMillis = 0; 
+long endMillis = 0;     
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 9, 14, 7, 30);
+startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 9, 14, 8, 45);
+endMillis = endTime.getTimeInMillis();
+...
+
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Events.DTSTART, startMillis);
+values.put(Events.DTEND, endMillis);
+values.put(Events.TITLE, &quot;Jazzercise&quot;);
+values.put(Events.DESCRIPTION, &quot;Group workout&quot;);
+values.put(Events.CALENDAR_ID, calID);
+values.put(Events.EVENT_TIMEZONE, "America/Los_Angeles");
+Uri uri = cr.insert(Events.CONTENT_URI, values);
+
+// get the event ID that is the last element in the Uri
+long eventID = Long.parseLong(uri.getLastPathSegment());
+// 
+// ... do something with event ID
+//
+//</pre>
+
+<p class="note"><strong>참고:</strong> 이벤트가 생성된 다음 이 예시가 이벤트 ID를 캡처하는 법을 눈여겨 보십시오.
+ 이것이 이벤트 ID를 가져오는 가장 쉬운 방법입니다. 
+다른 캘린더 작업을 수행하기 위해 이벤트 ID가 필요한 경우가 자주 있습니다. 예를 들어 이벤트에 참석자나 알림을 추가하는 데 필요합니다.
+</p>
+
+
+<h3 id="update-event">이벤트 업데이트</h3>
+
+<p>애플리케이션이 사용자에게 이벤트 편집을 허용할 경우, <a href="#intent-edit">인텐트로 이벤트 편집</a>에서 설명한 바와 같이
+{@link android.content.Intent#ACTION_EDIT EDIT} 인텐트
+를 사용하는 것이 좋습니다.
+그러나 필요한 경우 직접 이벤트를 편집해도 됩니다. 
+이벤트 업데이트를 수행하려면 이벤트의 <code>_ID</code>를 URI에 추가된 ID로({@link
+android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 
+또는 첫 번째 선택 항목으로 제공하면 됩니다.
+ 
+선택은 <code>&quot;_id=?&quot;</code>로 시작해야 하며, 첫 번째 
+<code>selectionArg</code>는 이벤트의 <code>_ID</code>여야 합니다. 
+ID 없이 선택을 사용해도 업데이트를 수행할 수 있습니다. 다음은 이벤트 업데이트의 예입니다.
+ 여기에서는 이벤트 제목을 변경할 때 
+{@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}
+ 방법을 사용합니다.</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 188;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri updateUri = null;
+// The new title for the event
+values.put(Events.TITLE, &quot;Kickboxing&quot;); 
+updateUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);  </pre>
+
+<h3 id="delete-event">이벤트 삭제</h3>
+
+<p>이벤트를 삭제하려면 이벤트의 {@link
+android.provider.BaseColumns#_ID}를 URI에 추가된 ID로 써도 되고, 표준 선택을 사용해도 됩니다.
+ 추가된 ID를 사용하는 경우, 선택도 할 수 없습니다.
+삭제에는 두 가지 버전이 있습니다. 애플리케이션으로 삭제와 동기화 어댑터로의 삭제입니다. 
+애플리케이션 삭제의 경우 <em>삭제된</em> 열을 1로 설정합니다. 
+이것은 동기화 어댑터에 행이 삭제되었다고 알리는 플래그이며, 
+이 삭제를 서버에 알려야 한다는 것을 나타내기도 합니다. 
+동기화 어댑터 삭제의 경우, 이벤트를 연관된 데이터 일체와 함께 데이터베이스에서 제거합니다. 
+다음은 애플리케이션이 이벤트를 {@link android.provider.BaseColumns#_ID}를 통해 삭제하는 예입니다.</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 201;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri deleteUri = null;
+deleteUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().delete(deleteUri, null, null);
+Log.i(DEBUG_TAG, &quot;Rows deleted: &quot; + rows);  
+</pre>
+
+<h2 id="attendees">참석자 테이블</h2>
+
+<p>{@link android.provider.CalendarContract.Attendees} 테이블의 각 행은
+이벤트의 참석자 또는 게스트 하나를 나타냅니다. 
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()}
+를호출하면 주어진 
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}와 함께 해당 이벤트의 참석자 목록을 반환합니다. 
+이 {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}는
+ 특정 이벤트의 {@link
+android.provider.BaseColumns#_ID}와 반드시 일치해야 합니다.</p> 
+
+<p>다음 표는 쓸 수 있는 필드를 목록으로 나열한 것입니다.
+ 새 참석자를 삽입하는 경우 이 모두를 포함해야 하며, 
+단 <code>ATTENDEE_NAME</code>은 예외입니다.
+</p>
+
+
+<table>
+  <tr>
+    <th>상수</th>
+    <th>설명</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}</td>
+    <td>이벤트 ID입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_NAME}</td>
+    <td>참석자 이름입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_EMAIL}</td>
+    <td>참석자 이메일 주소입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_RELATIONSHIP}</td>
+    <td><p>참석자와 이벤트의 관계입니다. 다음 중 하나로 정해집니다.</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ATTENDEE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ORGANIZER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_PERFORMER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_SPEAKER}</li>
+    </ul>
+    </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_TYPE}</td>
+    <td><p>참석자 유형입니다. 다음 중 하나로 정해집니다. </p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_REQUIRED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_OPTIONAL}</li>
+    </ul></td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS}</td>
+    <td><p>참석자의 참석 상태입니다. 다음 중 하나로 정해집니다.</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_ACCEPTED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_DECLINED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_INVITED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_TENTATIVE}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-attendees">참석자 추가</h3>
+
+<p>다음은 이벤트에 참석자 한 명을 추가하는 예입니다. 
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}
+가 필수인 점을 유념하십시오.</p>
+
+<pre>
+long eventID = 202;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Attendees.ATTENDEE_NAME, &quot;Trevor&quot;);
+values.put(Attendees.ATTENDEE_EMAIL, &quot;trevor@example.com&quot;);
+values.put(Attendees.ATTENDEE_RELATIONSHIP, Attendees.RELATIONSHIP_ATTENDEE);
+values.put(Attendees.ATTENDEE_TYPE, Attendees.TYPE_OPTIONAL);
+values.put(Attendees.ATTENDEE_STATUS, Attendees.ATTENDEE_STATUS_INVITED);
+values.put(Attendees.EVENT_ID, eventID);
+Uri uri = cr.insert(Attendees.CONTENT_URI, values);
+</pre>
+
+<h2 id="reminders">알림 테이블</h2>
+
+<p>{@link android.provider.CalendarContract.Reminders} 
+테이블의 각 행은 이벤트의 알림 하나를 나타냅니다. 
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()} 를 호출하면
+
+주어진 {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}와 함께 이벤트 알림 목록을 반환합니다.</p>
+
+
+<p>다음 표는 알림의 쓸 수 있는 필드를 목록으로 나열한 것입니다. 새 알림을 삽입하는 경우 이 모두를 포함해야 합니다.
+ 동기화 어댑터가 {@link
+android.provider.CalendarContract.Calendars} 테이블에서 지원하는 알림을 나타낸다는 점을 눈여겨 보십시오.
+ 자세한 내용은
+{@link android.provider.CalendarContract.CalendarColumns#ALLOWED_REMINDERS} 
+를 참조하십시오.</p>
+
+
+<table>
+  <tr>
+    <th>상수</th>
+    <th>설명</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#EVENT_ID}</td>
+    <td>이벤트 ID입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#MINUTES}</td>
+    <td>이벤트 몇 분 전에 알림을 보내야 하는지 나타냅니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#METHOD}</td>
+    <td><p>알림 메서드이며, 서버에서 설정한 대로 따릅니다. 다음 중 하나로 정해집니다.</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_ALERT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_DEFAULT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_EMAIL}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_SMS}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-reminders">알림 추가</h3>
+
+<p>이 예시는 이벤트에 알림을 추가하는 것입니다. 알림이 이벤트 15분 전에 발송됩니다.
+</p>
+<pre>
+long eventID = 221;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Reminders.MINUTES, 15);
+values.put(Reminders.EVENT_ID, eventID);
+values.put(Reminders.METHOD, Reminders.METHOD_ALERT);
+Uri uri = cr.insert(Reminders.CONTENT_URI, values);</pre>
+
+<h2 id="instances">인스턴스 테이블</h2>
+
+<p>
+{@link android.provider.CalendarContract.Instances} 테이블에는 
+이벤트 발생의 시작 및 종료 시간이 담겨 있습니다. 이 테이블의 각 행이 하나의 이벤트 발생을 나타냅니다.
+ 이 인스턴스 테이블은 쓸 수 없으며 이벤트 발생 쿼리 방법을 제공할 뿐입니다.
+ </p>
+
+<p>다음 표에는 인스턴스에 대해 쿼리할 수 있는 몇 가지 필드를 목록으로 나열하였습니다. 
+표준 시간대가 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_TYPE}
+ 및 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_INSTANCES}에 의해 정의된다는 점을 눈여겨 보십시오.</p>
+
+
+<table>
+  <tr>
+    <th>상수</th>
+    <th>설명</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#BEGIN}</td>
+    <td>인스턴스 시작 시간을 UTC 밀리초로 나타낸 것입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END}</td>
+    <td>인스턴스 종료 시간을 UTC 밀리초로 나타낸 것입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_DAY}</td>
+    
+    <td>인스턴스의 율리우스력 종료 날짜를 캘린더의 시간대에 비례하여 나타낸 것입니다.
+ 
+    
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_MINUTE}</td>
+    
+    <td>인스턴스의 종료 시간(분 단위)을 캘린더 시간대의 자정부터 측정한 것입니다.
+</td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#EVENT_ID}</td>
+    <td>이 인스턴스에 대한 이벤트의 <code>_ID</code>입니다.</td>
+  </tr>
+    <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_DAY}</td>
+    <td>인스턴스의 율리우스력 시작 날짜를 캘린더의 시간대에 비례하여 나타낸 것입니다. 
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_MINUTE}</td>
+    
+    <td>인스턴스의 시작 시간(분 단위)을 캘린더 시간대에 비례하여 자정부터 측정한 것입니다.
+ 
+</td>
+    
+  </tr>
+
+</table>
+
+<h3 id="query-instances">인스턴스 테이블 쿼리</h3>
+
+<p>인스턴스 테이블을 쿼리하려면, 해당 쿼리에 대한 범위 시간을 URI에 지정해야 합니다.
+ 이 예시에서는 {@link android.provider.CalendarContract.Instances}
+가 {@link
+android.provider.CalendarContract.EventsColumns#TITLE} 필드에 액세스 권한을 얻으며, 이때 
+{@link android.provider.CalendarContract.EventsColumns} 인터페이스의 구현을 통합니다. 
+바꿔 말하면, {@link
+android.provider.CalendarContract.EventsColumns#TITLE}이 
+데이터베이스 보기를 통해 반환되며 원시 {@link
+android.provider.CalendarContract.Instances} 테이블 쿼리를 통해서가 아니라는 뜻입니다.</p>
+
+<pre>
+private static final String DEBUG_TAG = "MyActivity";
+public static final String[] INSTANCE_PROJECTION = new String[] {
+    Instances.EVENT_ID,      // 0
+    Instances.BEGIN,         // 1
+    Instances.TITLE          // 2
+  };
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_BEGIN_INDEX = 1;
+private static final int PROJECTION_TITLE_INDEX = 2;
+...
+
+// Specify the date range you want to search for recurring
+// event instances
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2011, 9, 23, 8, 0);
+long startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2011, 10, 24, 8, 0);
+long endMillis = endTime.getTimeInMillis();
+  
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+
+// The ID of the recurring event whose instances you are searching
+// for in the Instances table
+String selection = Instances.EVENT_ID + " = ?";
+String[] selectionArgs = new String[] {"207"};
+
+// Construct the query with the desired date range.
+Uri.Builder builder = Instances.CONTENT_URI.buildUpon();
+ContentUris.appendId(builder, startMillis);
+ContentUris.appendId(builder, endMillis);
+
+// Submit the query
+cur =  cr.query(builder.build(), 
+    INSTANCE_PROJECTION, 
+    selection, 
+    selectionArgs, 
+    null);
+   
+while (cur.moveToNext()) {
+    String title = null;
+    long eventID = 0;
+    long beginVal = 0;    
+    
+    // Get the field values
+    eventID = cur.getLong(PROJECTION_ID_INDEX);
+    beginVal = cur.getLong(PROJECTION_BEGIN_INDEX);
+    title = cur.getString(PROJECTION_TITLE_INDEX);
+              
+    // Do something with the values. 
+    Log.i(DEBUG_TAG, "Event:  " + title); 
+    Calendar calendar = Calendar.getInstance();
+    calendar.setTimeInMillis(beginVal);  
+    DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
+    Log.i(DEBUG_TAG, "Date: " + formatter.format(calendar.getTime()));    
+    }
+ }</pre>
+
+<h2 id="intents">캘린더 인텐트</h2>
+<p>캘린더 데이터를 읽고 쓰려면 애플리케이션에 <a href="#manifest">권한</a>이 없어도 됩니다. 대신 Android의 캘린더 애플리케이션이 지원하는 인텐트를 사용하여 해당 애플리케이션에 읽기 및 쓰기 작업을 분배하면 됩니다. 다음 표는 캘린더 제공자가 지원하는 인텐트를 목록으로 나열한 것입니다.</p>
+<table>
+  <tr>
+    <th>동작</th>
+    <th>URI</th>
+
+    <th>설명</th>
+    <th>추가</th>
+  </tr>
+  <tr>
+    <td><br>
+    {@link android.content.Intent#ACTION_VIEW VIEW} <br></td>
+    <td><p><code>content://com.android.calendar/time/&lt;ms_since_epoch&gt;</code></p>
+    
+{@link android.provider.CalendarContract#CONTENT_URI CalendarContract.CONTENT_URI}로도 URI를 참조할 수 있습니다. 
+이 인텐트 사용법의 예시를 보려면 <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">인텐트를 사용하여 캘린더 데이터 보기</a>를 참조하십시오. 
+
+    </td>
+    <td>캘린더를 <code>&lt;ms_since_epoch&gt;</code>에 의해 지정된 시간으로 엽니다.</td>
+    <td>없음.</td>
+  </tr>
+  <tr>
+    <td><p>{@link android.content.Intent#ACTION_VIEW VIEW} </p>
+
+     </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+    
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}로도 URI를 참조할 수 있습니다. 
+이 인텐트 사용법의 예시를 보려면 <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">인텐트를 사용하여 캘린더 데이터 보기</a>를 참조하십시오.
+    
+    </td>
+    <td><code>&lt;event_id&gt;</code>에 의해 지정된 이벤트를 봅니다.</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+  
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}로도 URI를 참조할 수 있습니다. 
+이 인텐트 사용법의 예시를 보려면 <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-edit">인텐트를 사용하여 이벤트 편집</a>을 참조하십시오.
+    
+    
+    </td>
+    <td><code>&lt;event_id&gt;</code>에 의해 지정된 이벤트를 편집합니다.</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} <br>
+    <br>
+    {@link android.content.Intent#ACTION_INSERT INSERT} </td>
+    <td><p><code>content://com.android.calendar/events</code></p>
+    
+   
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}로도 URI를 참조할 수 있습니다. 
+이 인텐트 사용법의 예시를 보려면 <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-insert">인텐트를 사용하여 이벤트 삽입</a>을 참조하십시오.
+    
+    </td>
+
+    <td>이벤트를 생성합니다.</td>
+    <td>아래 테이블에 목록으로 표시된 추가 사항 모두입니다.</td>
+  </tr>
+</table>
+
+<p>다음 표에는 캘린더 제공자가 지원하는 인텐트 추가 사항이 목록으로 나열되어 있습니다.
+</p>
+<table>
+  <tr>
+    <th>인텐트 추가 사항</th>
+    <th>설명</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE Events.TITLE}</td>
+    <td>이벤트의 이름입니다.</td>
+  </tr>
+  <tr>
+  
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME}</td>
+    <td>이벤트 시작 시간을 Epoch로부터 밀리초 단위로 나타낸 것입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME}</td>
+    
+    <td>이벤트 종료 시간을 Epoch로부터 밀리초 단위로 나타낸 것입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_ALL_DAY
+CalendarContract.EXTRA_EVENT_ALL_DAY}</td>
+    
+    <td>이벤트가 종일 이벤트인지 나타내는 부울입니다. 값은 
+<code>true</code> 또는 <code>false</code>가 될 수 있습니다.</td> </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION
+Events.EVENT_LOCATION}</td>
+    
+    <td>이벤트 위치입니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION
+Events.DESCRIPTION}</td>
+    
+    <td>이벤트 설명입니다.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}</td>
+    <td>초대할 사람의 이메일 주소를 쉼표로 구분한 목록입니다.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#RRULE Events.RRULE}</td>
+    <td>이벤트의 반복 규칙입니다.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#ACCESS_LEVEL
+Events.ACCESS_LEVEL}</td>
+    
+    <td>이벤트가 비공개인지 공개인지 나타냅니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY
+Events.AVAILABILITY}</td>
+    
+    <td>이 이벤트가 사용 중인 시간으로 간주되는지, 다시 일정을 예약할 수 있는 자유 시간으로 간주되는지를 나타냅니다.</td>
+    
+</table> 
+<p>아래 섹션에서는 이와 같은 인텐트의 사용법을 설명합니다.</p>
+
+
+<h3 id="intent-insert">인텐트를 사용하여 이벤트 삽입</h3>
+
+<p>{@link android.content.Intent#ACTION_INSERT INSERT} 인텐트를 사용하면 
+캘린더에 이벤트 삽입 작업을 분배할 수 있습니다.
+이 방법을 사용하는 경우, 애플리케이션의 <a href="#manifest">매니페스트 파일</a>에 {@link
+android.Manifest.permission#WRITE_CALENDAR} 권한을 포함할 필요가 없습니다.</p>
+
+  
+<p>사용자가 이 방법을 사용하는 애플리케이션을 실행하면 해당 애플리케이션이
+사용자를 캘린더로 보내 이벤트 추가를 완료합니다. {@link
+android.content.Intent#ACTION_INSERT INSERT} 인텐트는 추가 필드를 사용하여
+캘린더에 있는 이벤트 세부 정보로 양식을 미리 채웁니다. 
+그러면 사용자가 이벤트를 취소하거나 양식을 필요에 따라 편집할 수 있고, 
+이벤트를 본인의 캘린더에 저장할 수도 있습니다.</p>
+  
+
+
+<p>다음은 2012년 1월 19일에 이벤트 일정을 예약하는 코드 조각으로, 
+이는 오전 7:30~오전 8:30까지 실행됩니다. 이 코드 조각에 관해서는 다음 내용을 주의하십시오.</p>
+
+<ul>
+  <li>이것은 {@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}를 URI로 지정합니다.
+</li>
+  
+  <li>이것은 {@link
+android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME} 및 {@link
+android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME} 추가 필드를 사용하여 이벤트 시간으로 양식을 미리 채웁니다.
+ 이러한 시간에 해당하는 값은 Epoch로부터 UTC 밀리초 단위로 표시해야 합니다.
+</li>
+  
+  <li>이것은 {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}
+추가 필드를 사용하여 쉼표로 구분된 초청인 목록을 제공하며, 이는 이메일 주소로 나타납니다.</li>
+  
+</ul>
+<pre>
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 0, 19, 7, 30);
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 0, 19, 8, 30);
+Intent intent = new Intent(Intent.ACTION_INSERT)
+        .setData(Events.CONTENT_URI)
+        .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
+        .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
+        .putExtra(Events.TITLE, &quot;Yoga&quot;)
+        .putExtra(Events.DESCRIPTION, &quot;Group class&quot;)
+        .putExtra(Events.EVENT_LOCATION, &quot;The gym&quot;)
+        .putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)
+        .putExtra(Intent.EXTRA_EMAIL, &quot;rowan@example.com,trevor@example.com&quot;);
+startActivity(intent);
+</pre>
+
+<h3 id="intent-edit">인텐트를 사용하여 이벤트 편집</h3>
+
+<p><a href="#update-event">이벤트 업데이트</a>에서 설명한 바와 같이 이벤트를 직접 업데이트할 수 있습니다. 그러나 {@link
+android.content.Intent#ACTION_EDIT EDIT} 인텐트를 사용하면 
+캘린더 애플리케이션에 이벤트 편집을 분배할 권한이 없는 애플리케이션을 허용합니다.
+사용자가 캘린더에서 이벤트 편집을 마치면 원래 애플리케이션으로 돌아오게 됩니다.
+</p> <p>다음은 지정된 이벤트에 새 제목을 설정하여 사용자에게 캘린더에서 이벤트를 편집할 수 있도록 해주는 인텐트의 예입니다.
+</p>
+
+
+<pre>long eventID = 208;
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_EDIT)
+    .setData(uri)
+    .putExtra(Events.TITLE, &quot;My New Title&quot;);
+startActivity(intent);</pre>
+
+<h3 id="intent-view">인텐트를 사용하여 캘린더 데이터 보기</h3>
+<p>캘린더 제공자는 {@link android.content.Intent#ACTION_VIEW VIEW} 인텐트를 사용하는 두 가지 방식을 제공합니다.</p>
+<ul>
+  <li>캘린더를 특정 날짜에 여는 방식</li>
+  <li>이벤트를 보는 방식</li>
+
+</ul>
+<p>다음은 캘린더를 특정 날짜에 여는 방법을 보여주는 예입니다.</p>
+<pre>// A date-time specified in milliseconds since the epoch.
+long startMillis;
+...
+Uri.Builder builder = CalendarContract.CONTENT_URI.buildUpon();
+builder.appendPath(&quot;time&quot;);
+ContentUris.appendId(builder, startMillis);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+    .setData(builder.build());
+startActivity(intent);</pre>
+
+<p>다음은 이벤트를 보기 위해 여는 방법을 나타낸 예입니다.</p>
+<pre>long eventID = 208;
+...
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+   .setData(uri);
+startActivity(intent);
+</pre>
+
+
+<h2 id="sync-adapter">동기화 어댑터</h2>
+
+
+<p>애플리케이션과 동기화 어댑터가 캘린더 제공자에 액세스하는 방식에는 사소한 차이만이 있을 뿐입니다.
+</p>
+
+<ul>
+  <li>동기화 어댑터는 {@link android.provider.CalendarContract#CALLER_IS_SYNCADAPTER}를 <code>true</code>로 설정하여 이것이 동기화 어댑터라는 것을 나타내야 합니다.</li>
+  
+  
+  <li>동기화 어댑터는 URI에서 쿼리 매개변수로 {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_NAME}과 {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE}을 제공해야 합니다. </li>
+  
+  <li>동기화 어댑터에는 애플리케이션 또는 위젯에 비해 더 많은 열에 대한 쓰기 액세스 권한이 있습니다.
+  예를 들어, 애플리케이션은 캘린더의 몇 가지 특성만 수정할 수 있습니다. 
+즉 이름, 표시 이름, 가시성 설정 및 캘린더 동기화 여부 등만 해당됩니다.
+ 이에 비해 동기화 어댑터의 경우 이 열만이 아니라 다른 수많은 열에도 액세스할 수 있습니다.
+예를 들어 캘린더 색상, 표준 시간대, 액세스 수준 등이 해당됩니다.
+다만, 동기화 어댑터는 지정된 <code>ACCOUNT_NAME</code> 및 
+<code>ACCOUNT_TYPE</code>에 한정됩니다.</li> </ul>
+
+<p>다음은 URI를 반환하여 동기화 어댑터와 사용하도록 할 때 쓸 수 있는 도우미 메서드입니다.</p>
+<pre> static Uri asSyncAdapter(Uri uri, String account, String accountType) {
+    return uri.buildUpon()
+        .appendQueryParameter(android.provider.CalendarContract.CALLER_IS_SYNCADAPTER,&quot;true&quot;)
+        .appendQueryParameter(Calendars.ACCOUNT_NAME, account)
+        .appendQueryParameter(Calendars.ACCOUNT_TYPE, accountType).build();
+ }
+</pre>
+<p>동기화 어댑터의 샘플 구현(캘린더에 구체적으로 관련된 것이 아님)은 
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdpater</a>를 참조하십시오.
diff --git a/docs/html-intl/intl/ko/guide/topics/providers/contacts-provider.jd b/docs/html-intl/intl/ko/guide/topics/providers/contacts-provider.jd
new file mode 100644
index 0000000..94d3295
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/providers/contacts-provider.jd
@@ -0,0 +1,2356 @@
+page.title=연락처 제공자
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<h2>간략히 보기</h2>
+<ul>
+    <li>사람들 관련 정보를 저장한 Android의 리포지토리입니다.</li>
+    <li>
+        웹과 동기화합니다.
+    </li>
+    <li>
+        소셜 스트림 데이터와 통합됩니다.
+    </li>
+</ul>
+<h2>이 문서의 내용</h2>
+<ol>
+    <li>
+        <a href="#InformationTypes">연락처 제공자 조직</a>
+    </li>
+    <li>
+        <a href="#RawContactBasics">원시 연락처</a>
+    </li>
+    <li>
+        <a href="#DataBasics">데이터</a>
+    </li>
+    <li>
+        <a href="#ContactBasics">연락처</a>
+    </li>
+    <li>
+        <a href="#Sources">동기화 어댑터의 데이터</a>
+    </li>
+    <li>
+        <a href="#Permissions">필수 권한</a>
+    </li>
+    <li>
+        <a href="#UserProfile">사용자 프로필</a>
+    </li>
+    <li>
+        <a href="#ContactsProviderMetadata">연락처 제공자 메타데이터</a>
+    </li>
+    <li>
+        <a href="#Access">연락처 제공자 액세스</a>
+    <li>
+    </li>
+    <li>
+        <a href="#SyncAdapters">연락처 제공자 동기화 어댑터</a>
+    </li>
+    <li>
+        <a href="#SocialStream">소셜 스트림 데이터</a>
+    </li>
+    <li>
+        <a href="#AdditionalFeatures">추가 연락처 제공자 기능</a>
+    </li>
+</ol>
+<h2>Key 클래스</h2>
+<ol>
+    <li>{@link android.provider.ContactsContract.Contacts}</li>
+    <li>{@link android.provider.ContactsContract.RawContacts}</li>
+    <li>{@link android.provider.ContactsContract.Data}</li>
+    <li>{@code android.provider.ContactsContract.StreamItems}</li>
+</ol>
+<h2>관련 샘플</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}resources/samples/ContactManager/index.html">
+        연락처 관리자
+        </a>
+    </li>
+    <li>
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+            샘플 동기화 어댑터</a>
+    </li>
+</ol>
+<h2>참고 항목</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        콘텐츠 제공자 기본 정보
+        </a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    콘텐츠 제공자는 기기의 사람에 대한 중앙 데이터 리포지토리를 관리하는 강력하고 유연한
+Android 구성 요소입니다. 콘텐츠 제공자는 기기의 연락처 애플리케이션에서 개발자에게 표시되는 
+데이터의 출처입니다. 여기의 데이터에는 개발자 자신의 애플리케이션에서 
+액세스하여 기기와 온라인 서비스 사이에서 데이터를 전송할 수도 있습니다. 제공자는 
+광범위한 데이터 소스를 수용하며 각 인물에 대해 가능한 한 많은 데이터를 관리하여야 하므로, 그 결과 조직이 무척 
+복잡합니다. 이 때문에 이 제공자의 API에는 
+광범위한 계약 클래스와 인터페이스 세트가 포함되어 있어 데이터 검색과 수정을 모두 한층 
+용이하게 해줍니다.
+</p>
+<p>
+    이 가이드에서 설명하는 내용은 다음과 같습니다.
+</p>
+    <ul>
+        <li>
+            기본적인 제공자 구조.
+        </li>
+        <li>
+            제공자에서 데이터를 검색하는 방법.
+        </li>
+        <li>
+            제공자에서 데이터를 수정하는 방법.
+        </li>
+        <li>
+            동기화 어댑터를 작성하여 서버에서 가져온 데이터를 연락처 제공자와 
+동기화하는 방법.
+        </li>
+    </ul>
+<p>
+    이 가이드는 독자가 Android 콘텐츠 제공자의 기본 정보를 알고 있는 것으로 간주합니다. Android 콘텐츠 제공자에 
+관한 자세한 내용은 
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+콘텐츠 제공자 기본 정보</a> 가이드를 읽어보십시오. 
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">샘플 동기화 어댑터</a>
+샘플 앱은 동기화 어댑터를 사용하여 연락처 제공자와 Google Web Services가 호스팅하는 샘플 애플리케이션 사이에서
+데이터를 전송하는 동기화 어댑터의 사용 예시입니다.
+</p>
+<h2 id="InformationTypes">연락처 제공자 조직</h2>
+<p>
+    연락처 제공자는 Android 콘텐츠 제공자 구성 요소입니다. 이것은 한 사람에 대해 
+각기 세 가지 유형의 데이터를 관리합니다. 각 데이터는 그림 1에서 설명하는 바와 같이 제공자가 제공하는 
+각 테이블에 상응합니다.
+</p>
+<img src="{@docRoot}images/providers/contacts_structure.png" alt="" height="364" id="figure1" />
+<p class="img-caption">
+  <strong>그림 1.</strong> 연락처 제공자 테이블 구조입니다.
+</p>
+<p>
+    이 세 개의 테이블은 보통 자신의 계약 클래스의 이름으로 불립니다. 이들 클래스는 
+테이블에서 사용하는 콘텐츠 URI, 열 이름 및 열 값의 상수를 정의합니다.
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Contacts} 테이블
+    </dt>
+    <dd>
+        행은 원시 연락처 행의 집계에 기초하여 각기 다른 사람을 나타냅니다.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.RawContacts} 테이블
+    </dt>
+    <dd>
+        사용자 계정과 유형을 기준으로, 한 사람에 대한 데이터 요약이 들어있는 행입니다.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data} 테이블
+    </dt>
+    <dd>
+        이메일 주소나 전화 번호와 같은 원시 연락처의 세부 정보가 들어있는 행입니다.
+    </dd>
+</dl>
+<p>
+    {@link android.provider.ContactsContract}의 계약 클래스가 대표하는 다른 테이블은 
+보조 테이블로, 연락처 제공자는 이들을 사용하여 작업을 관리하거나 기기의 연락처에 있는 
+특정 기능 또는 전화 통신 애플리케이션 등을 지원합니다.
+</p>
+<h2 id="RawContactBasics">원시 연락처</h2>
+<p>
+    원시 연락처는 단일 계정 유형과 계정 이름에서 가져오는 
+한 사람의 데이터를 나타냅니다. 연락처 제공자는 한 사람에 대해 하나 이상의 온라인 서비스를 데이터의 출처로 허용하므로, 
+연락처 제공자에서는 같은 사람에 대해 여러 개의 원시 연락처를 허용합니다.
+    원시 연락처를 여러 개 사용하면 사용자가 같은 계정 유형의 하나 이상의 계정에서 가져온 
+한 사람의 여러 데이터를 조합할 수 있습니다.
+</p>
+<p>
+    원시 연락처의 데이터 대부분은 
+{@link android.provider.ContactsContract.RawContacts} 테이블에 저장되지 않습니다. 대신, 
+{@link android.provider.ContactsContract.Data} 테이블에서 하나 이상의 행에 저장됩니다. 각 데이터 행에는
+상위 {@link android.provider.ContactsContract.RawContacts} 행의 {@code android.provider.BaseColumns#_ID RawContacts._ID} 값을 포함하는 
+열 {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID Data.RAW_CONTACT_ID}가 
+있습니다.
+</p>
+<h3 id="RawContactsColumns">중요한 원시 연락처 열</h3>
+<p>
+    {@link android.provider.ContactsContract.RawContacts} 테이블의 중요한 열은 
+표 1에 나열되어 있습니다. 표 뒤에 이어지는 참고 사항을 꼭 읽어주십시오.
+</p>
+<p class="table-caption" id="table1">
+    <strong>표 1.</strong> 중요한 원시 연락처 열입니다.
+</p>
+<table>
+    <tr>
+        <th scope="col">열 이름</th>
+        <th scope="col">용도</th>
+        <th scope="col">참고</th>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_NAME}
+        </td>
+        <td>
+            이 원시 연락처의 소스인 계정 유형에 대한 계정 이름입니다.
+            예를 들어, Google 계정의 계정 이름은 
+기기 소유자의 Gmail 주소 중 하나입니다. 자세한 정보는 
+{@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}의 
+다음 항목을 참조하십시오.
+        </td>
+        <td>
+            이 이름의 형식은 각자의 계정 유형별로 다릅니다. 이것은 꼭 
+이메일 주소여야 하는 것은 아닙니다.
+        </td>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}
+        </td>
+        <td>
+            이 원시 연락처의 소스인 계정 유형입니다. 예를 들어, Google 계정의 
+계정 유형은 <code>com.google</code>입니다. 계정 유형을 정규화할 때에는 항상 
+본인이 소유하거나 제어하는 도메인의 도메인 식별자를 사용하십시오. 이렇게 하면 계정 유형이 고유한 것이도록 
+확실히 해둘 수 있습니다.
+        </td>
+        <td>
+            연락처 데이터를 제공하는 계정 유형은 대개 연락처 제공자와 동기화되는 동기화 어댑터와 
+연관되어 있습니다.
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.RawContactsColumns#DELETED}
+        </td>
+        <td>
+            원시 연락처에 대한 "삭제됨" 플래그입니다.
+        </td>
+        <td>
+            이 플래그를 사용하면 연락처 제공자가 해당 행을 내부에 계속 유지할 수 있습니다. 
+이는 동기화 어댑터가 해당 행을 자신의 서버에서 삭제하고 마침내는 행을 리포지토리에서도 삭제할 수 있을 
+때까지만입니다.
+        </td>
+    </tr>
+</table>
+<h4>참고</h4>
+<p>
+    다음은 
+{@link android.provider.ContactsContract.RawContacts} 테이블에 관한 중요한 참고 사항입니다.
+</p>
+<ul>
+    <li>
+        원시 연락처의 이름은 
+{@link android.provider.ContactsContract.RawContacts}에 있는 자신의 행에 저장되지 않습니다. 대신, 
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 행에 있는 
+{@link android.provider.ContactsContract.Data} 테이블에 저장됩니다. 원시 연락처 하나에는 
+{@link android.provider.ContactsContract.Data} 테이블에서 이런 유형의 행이 하나씩만 있습니다.
+    </li>
+    <li>
+        <strong>주의:</strong> 원시 연락처에서 본인의 계정 데이터를 사용하려면 이를 우선 
+{@link android.accounts.AccountManager}로 등록해야 합니다. 이렇게 하려면, 
+사용자에게 계정 유형과 본인의 계정 이름을 계정 목록에 추가하라는 프롬프트를 표시하십시오. 이렇게 하지 않으면, 
+연락처 제공자가 원시 연락처 행을 자동으로 삭제합니다.
+        <p>
+            예를 들어, 앱에서 도메인 {@code com.example.dataservice}로 웹 베이스 서비스에 대한 연락처 데이터를 유지하고 
+서비스에 대한 사용자 계정이 
+{@code becky.sharp@dataservice.example.com}이라면, 사용자는 앱이 원시 연락처 행을 추가하기 전에 
+계정 "유형"({@code com.example.dataservice})과 계정 "이름"
+({@code becky.smart@dataservice.example.com})을 먼저 추가해야 합니다.
+            이 요구 사항을 사용자에게 설명하려면 관련 문서를 사용해도 되고, 아니면 사용자에게 
+유형과 이름을 추가하라는 프롬프트를 표시해도 되고 두 가지 방법을 다 써도 됩니다. 계정 유형과 계정 이름은 
+다음 섹션에서 더 자세히 설명되어 있습니다.
+    </li>
+</ul>
+<h3 id="RawContactsExample">원시 연락처 데이터 소스</h3>
+<p>
+    원시 연락처의 작동 원리를 이해하기 위해, 다음과 같이 기기에서 정의한 사용자 계정 세 가지를 보유한 사용자 "Emily Dickinson"이 있다고 
+가정해 봅시다.
+</p>
+<ul>
+    <li><code>emily.dickinson@gmail.com</code></li>
+    <li><code>emilyd@gmail.com</code></li>
+    <li>Twitter 계정 "belle_of_amherst"</li>
+</ul>
+<p>
+    이 사용자는 <em>계정</em> 설정에서 모든 세 가지 계정에 대해 <em>연락처 동기화</em>를
+활성화했습니다.
+</p>
+<p>
+    Emily Dickinson이 브라우저 창을 열고, 
+Gmail에 <code>emily.dickinson@gmail.com</code>으로 로그인하고,
+연락처를 열어서 "Thomas Higginson"을 추가한다고 가정하겠습니다. 이 사용자는 나중에 Gmail에 
+<code>emilyd@gmail.com</code>으로 로그인하고 "Thomas Higginson"에게 이메일을 전송합니다. 
+이렇게 하면 이 사람을 자동으로 연락처로 추가합니다. Emily는 Twitter에서 "colonel_tom"(Thomas Higginson의 Twitter ID)도 
+팔로우합니다.
+</p>
+<p>
+    연락처 제공자는 이 작업의 결과로 원시 연락처를 세 개 생성합니다.
+</p>
+<ol>
+    <li>
+        <code>emily.dickinson@gmail.com</code>과 연관된 "Thomas Higginson"의 원시 연락처입니다.
+        사용자 계정 유형은 Google입니다.
+    </li>
+    <li>
+        <code>emilyd@gmail.com</code>과 연관된 "Thomas Higginson"의 두 번째 원시 연락처입니다.
+        사용자 계정 유형은 마찬가지로 Google입니다. 이름이 이전 이름과 똑같더라도 두 번째 원시 연락처가 
+더해집니다. 왜냐하면 이 사람은 아까와 다른 
+사용자 계정에 추가되었기 때문입니다.
+    </li>
+    <li>
+        "belle_of_amherst"와 연관된 "Thomas Higginson"의 세 번째 원시 연락처입니다. 사용자 
+계정 유형은 Twitter입니다.
+    </li>
+</ol>
+<h2 id="DataBasics">데이터</h2>
+<p>
+    이전에 언급한 바와 같이, 원시 연락처의 데이터는
+원시 연락처의 <code>_ID</code> 값과 연결된{@link android.provider.ContactsContract.Data} 행에 
+저장됩니다. 이렇게 하면 하나의 원시 연락처에 같은 유형의 데이터의 인스턴스가 여러 개 있을 수 있게 됩니다. 
+예를 들어 이메일 주소 또는 전화 번호 등이 이에 해당됩니다. 예를 들어, 
+{@code emilyd@gmail.com}에 대한 "Thomas Higginson"(Google 계정 <code>emilyd@gmail.com</code>과 연관된 Thomas Higginson의
+원시 연락처)에는 
+<code>thigg@gmail.com</code>이라는 집 이메일 주소와
+<code>thomas.higginson@gmail.com</code>이라는 직장 이메일 주소가 있고, 연락처 제공자는 두 개의 이메일 주소 행을 저장하고
+원시 연락처에 두 가지를 연결합니다.
+</p>
+<p>
+    이 테이블 하나에 여러 가지 유형의 데이터가 저장된 점에 주의하십시오. 표시 이름, 
+전화 번호, 이메일, 우편 주소, 사진 및 웹사이트 세부 정보 행은 모두 
+{@link android.provider.ContactsContract.Data} 테이블에서 찾을 수 있습니다. 이런 데이터 관리를 돕기 위해 
+{@link android.provider.ContactsContract.Data} 테이블에는 설명이 포함된 이름이 있는 열이 몇 개 있고 
+일반적 이름이 포함된 열도 몇 개 있습니다. 설명이 포함된 이름 열의 콘텐츠는 행 안의 데이터 유형과 관계 없이 모두 의미가 같고, 
+일반적인 이름 열의 콘텐츠는 데이터 유형에 따라 
+서로 의미가 다릅니다.
+</p>
+<h3 id="DescriptiveColumns">설명이 포함된 열 이름</h3>
+<p>
+    다음은 설명이 포함된 열 이름의 몇 가지 예시입니다.
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Data#RAW_CONTACT_ID}
+    </dt>
+    <dd>
+        이 데이터에 대한 원시 연락처의 <code>_ID</code> 열 값입니다.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data#MIMETYPE}
+    </dt>
+    <dd>
+        이 행에 저장되는 데이터 유형으로, 사용자 지정 MIME 유형으로 표현됩니다. 연락처 제공자는 
+{@link android.provider.ContactsContract.CommonDataKinds}의 하위 클래스에서 정의된 
+MIME 유형을 사용합니다. 이러한 MIME 유형은 오픈 소스이고, 
+연락처 제공자와 함께 사용할 수 있는 모든 애플리케이션 또는 동기화 어댑터가 사용할 수 있습니다.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY}
+    </dt>
+    <dd>
+        이 유형의 데이터 행이 원시 연락처에서 한 번 이상 발생하는 경우,
+{@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} 열은 
+해당 유형의 기본 데이터가 들어있는 데이터 행을 플래그로 표시합니다. 예를 들어, 
+사용자가 연락처의 전화 번호를 길게 누르고 <strong>기본값으로 설정</strong>을 선택하면 
+그 번호가 들어있는 {@link android.provider.ContactsContract.Data} 행이
+{@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} 열을 
+0이 아닌 값으로 설정합니다.
+    </dd>
+</dl>
+<h3 id="GenericColumns">일반 열 이름</h3>
+<p>
+    15개의 일반 열 중에서 <code>DATA1</code>부터 
+<code>DATA15</code>까지는 일반적으로 이용할 수 있고 이외에 추가로 마련된 네 개의 일반 
+열, 즉 <code>SYNC1</code>부터 <code>SYNC4</code>까지는 
+동기화 어댑터 전용입니다. 일반 열 이름 상수는 해당 행에 들어있는 데이터 유형과 관계 없이 
+언제나 통합니다.
+</p>
+<p>
+    <code>DATA1</code> 열은 색인됩니다.  연락처 제공자는 제공자가 가장 자주 쿼리의 대상이 될 것으로 예상하는 
+데이터에 대해 항상 이 열을 사용합니다. 예컨대 
+이메일 행의 경우, 이 열에 실제 이메일 주소가 들어있습니다.
+</p>
+<p>
+    규칙에 따라 열 <code>DATA15</code>는 사진 미리 보기와 같은 BLOB(Binary Large Object)
+데이터를 저장할 목적으로 예약되어 있습니다.
+</p>
+<h3 id="TypeSpecificNames">유형별 열 이름</h3>
+<p>
+    특정 유형의 행에 대한 열과의 작업을 돕기 위해, 연락처 제공자는 
+ 유형별 열 이름 상수도 제공합니다. 이는 
+{@link android.provider.ContactsContract.CommonDataKinds}의 하위 클래스에서 정의합니다. 이 상수는 그저 같은 열 이름에 
+서로 다른 상수 이름을 부여할 뿐이며, 이렇게 하면 개발자가 특정 유형의 행에 있는 데이터에 
+액세스하기 쉽습니다.
+</p>
+<p>
+    예를 들어, {@link android.provider.ContactsContract.CommonDataKinds.Email} 클래스는 
+MIME 유형{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+Email.CONTENT_ITEM_TYPE}을 갖는
+{@link android.provider.ContactsContract.Data} 행에 
+대한 유형별 열 이름 상수를 정의합니다. 이 클래스에는 이메일 주소 열에 대한
+ 상수 {@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS}가 
+들어있습니다. 
+{@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS}의 실제 값은 
+"data1"이고, 이는 열의 일반 이름과 같습니다.
+</p>
+<p class="caution">
+    <strong>주의:</strong> 개발자 본인의 사용자 지정 데이터를 
+{@link android.provider.ContactsContract.Data} 테이블에 
+추가할 때 제공자의 미리 정의된 MIME 유형 중 하나가 있는 행을 사용하면 안 됩니다. 그렇게 하면 데이터가 손실되거나 제공자의 오작동을 
+유발할 수 있습니다. 예를 들어, MIME 유형 
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+    Email.CONTENT_ITEM_TYPE} 안에 
+<code>DATA1</code> 열에 있는 이메일 주소 대신 사용자 이름이 들어있는 행은 추가하면 안 됩니다. 해당 행에 개발자 나름의 사용자 지정 MIME 유형을 사용하는 경우 
+본인만의 유형별 열 이름을 자유자재로 정의하고 이러한 열을 마음대로 사용해도 됩니다.
+</p>
+<p>
+    그림 2는 
+{@link android.provider.ContactsContract.Data} 행에서 설명 열과 데이터 열이 나타나는 방식과 유형별 열 이름이 
+일반 열 이름에 "오버레이"되는 방식을 나타낸 것입니다.
+</p>
+<img src="{@docRoot}images/providers/data_columns.png" alt="How type-specific column names map to generic column names" height="311" id="figure2" />
+<p class="img-caption">
+  <strong>그림 2.</strong> 유형별 열 이름과 일반 열 이름입니다.
+</p>
+<h3 id="ColumnMaps">유형별 열 이름 클래스</h3>
+<p>
+    표 2는 가장 보편적으로 사용되는 유형별 열 이름 클래스를 목록으로 나열한 것입니다.
+</p>
+<p class="table-caption" id="table2">
+  <strong>표 2.</strong> 유형별 열 이름 클래스</p>
+<table>
+  <tr>
+    <th scope="col">매핑 클래스</th>
+    <th scope="col">데이터 유형</th>
+    <th scope="col">참고</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredName}</td>
+    <td>이 데이터 행과 연관된 원시 연락처의 이름 데이터입니다.</td>
+    <td>하나의 원시 연락처에는 이러한 행이 딱 하나만 있습니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Photo}</td>
+    <td>이 데이터 행과 연관된 원시 연락처의 기본 사진입니다.</td>
+    <td>하나의 원시 연락처에는 이러한 행이 딱 하나만 있습니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Email}</td>
+    <td>이 데이터 행과 연관된 원시 연락처의 이메일 주소입니다.</td>
+    <td>하나의 원시 연락처에는 여러 개의 이메일 주소가 있을 수 있습니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal}</td>
+    <td>이 데이터 행과 연관된 원시 연락처의 우편 주소입니다.</td>
+    <td>하나의 원시 연락처에는 여러 개의 우편 주소가 있을 수 있습니다.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}</td>
+    <td>원시 연락처를 연락처 제공자의 그룹 중 하나와 연결하는 식별자입니다.</td>
+    <td>
+        그룹은 계정 유형과 계정 이름의 선택적 기능입니다. 이러한 내용은 
+<a href="#Groups">연락처 그룹</a> 섹션에 자세히 설명되어 있습니다.
+    </td>
+  </tr>
+</table>
+<h3 id="ContactBasics">연락처</h3>
+<p>
+    연락처 제공자는 모든 계정 유형과 계정 이름을 통틀어 원시 연락처 행을 조합하여 
+하나의 <strong>연락처</strong>를 형성합니다. 이렇게 하면 사용자가 한 사람에 대해 수집한 
+모든 데이터를 표시하고 수정하기 쉽습니다. 연락처 제공자는 새 연락처 행의 생성을 관리하고 
+원시 연락처를 기존 연락처 행과 통합하기도 합니다. 애플리케이션과 
+동기화 어댑터는 모두 연락처를 추가할 수 없으며, 연락처 행에 있는 열 중 몇몇은 읽기 전용입니다.
+</p>
+<p class="note">
+    <strong>참고:</strong> 연락처 제공자에 연락처를 추가하려고 
+{@link android.content.ContentResolver#insert(Uri,ContentValues) insert()}를 사용하는 경우, 
+{@link java.lang.UnsupportedOperationException} 예외가 발생합니다. "읽기 전용"으로 표시된 열을 업데이트하려고 하면 
+그 업데이트는 무시됩니다.
+</p>
+<p>
+    연락처 제공자는 기존 연락처 어느 것과도 일치하지 않는 새로운 원시 연락처가 추가되면 
+새로운 연락처를 생성합니다. 제공자가 이 작업을 하는 또 다른 경우는 
+기존 원시 연락처의 데이터가 변경되어 이전에 첨부되어 있던 연락처에 더 이상 일치하지 않는 
+경우입니다. 애플리케이션이나 동기화 어댑터가 
+기존 연락처와 <em>일치하는</em> 새로운 원시 연락처를 생성하면, 새로운 원시 연락처는
+기존 연락처에 통합됩니다.
+</p>
+<p>
+    연락처 제공자는
+{@link android.provider.ContactsContract.Contacts Contacts} 테이블에 있는 연락처 행의 <code>_ID</code> 열로 
+연락처 행과 원시 연락처 행를 연결합니다. 원시 연락처 테이블 {@link android.provider.ContactsContract.RawContacts}의 <code>CONTACT_ID</code> 행에는 
+각 원시 연락처 행과 관련된 연락처 행에 대한 <code>_ID</code> 값이 
+들어있습니다.
+</p>
+<p>
+    {@link android.provider.ContactsContract.Contacts} 테이블에는 연락처 행에 대한 "영구" 링크인
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} 열도
+있습니다. 연락처 제공자가 연락처를 자동으로 관리하므로, 
+통합이나 동기화에 응답하여 연락처 행의 {@code android.provider.BaseColumns#_ID} 값을 
+변경할 수도 있습니다. 이런 일이 발생한다 하더라도 콘텐츠 URI 
+{@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI}와 
+연락처의 {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}는 여전히 
+연락처 행을 가리키므로, 
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}를 
+사용하여 "즐겨찾기" 연락처에 대한 연결 등을 그대로 유지할 수 있습니다. 이 열에는 
+{@code android.provider.BaseColumns#_ID} 열의 형식과 관련이 없는 나름의 형식이 있습니다.
+</p>
+<p>
+    그림 3은 세 가지 기본 테이블이 서로 관련되는 방식을 나타낸 것입니다.
+</p>
+<img src="{@docRoot}images/providers/contacts_tables.png" alt="Contacts provider main tables" height="514" id="figure4" />
+<p class="img-caption">
+  <strong>그림 3.</strong> 연락처, 원시 연락처 및 세부 사항 테이블의 관계입니다.
+</p>
+<h2 id="Sources">동기화 어댑터의 데이터</h2>
+<p>
+    사용자가 연락처 데이터를 기기에 직접 입력하기도 하지만, 데이터는 웹 서비스에서 
+<strong>동기화 어댑터</strong>를 통해 연락처 제공자로 흘러들어가기도 합니다. 이것이 기기와 
+서비스 사이에서 데이터의 전송을 자동화하는 것입니다. 동기화 어댑터는 시스템의 제어를 받으며 
+배경에서 실행되고, {@link android.content.ContentResolver} 메서드를 
+호출하여 데이터를 관리합니다.
+</p>
+<p>
+    Android에서 동기화 어댑터와 함께 작업하는 웹 서비스는 계정 유형으로 식별됩니다.
+    각 동기화 어댑터는 계정 유형 하나에 통하지만, 그 유형에 대한 여러 개의 계정이름을 
+지원할 수 있습니다. 계정 유형과 계정 이름은 
+<a href="#RawContactsExample">원시 연락처 데이터 소스</a> 섹션에 간단히 설명되어 있습니다. 다음 정의는 좀 더 자세한 내용을 제공하며, 
+계정 유형과 이름이 동기화 어댑터와 서비스에 관련되는 방식을 설명합니다.
+</p>
+<dl>
+    <dt>
+        계정 유형
+    </dt>
+    <dd>
+        사용자가 데이터를 저장해둔 서비스를 식별합니다. 대부분의 경우, 사용자가 
+서비스로 인증해야 합니다. 예를 들어, Google 주소록은 계정 유형이고, 이는 
+코드 <code>google.com</code>으로 식별됩니다. 이 값은 
+{@link android.accounts.AccountManager}가 사용하는 계정 유형에 상응합니다.
+    </dd>
+    <dt>
+        계정 이름
+    </dt>
+    <dd>
+        하나의 계정 유형에 대한 특정 계정 또는 로그인을 식별합니다. Google 주소록 계정은 
+Google 계정과 같고, 이는 계정 이름으로 이메일 주소를 사용합니다.
+        다른 서비스는 한 단어로 된 사용자 이름이나 숫자 ID를 사용할 수 있습니다.
+    </dd>
+</dl>
+<p>
+    계정 유형은 고유하지 않아도 됩니다. 한 사람의 사용자가 여러 개의 Google 주소록을 구성할 수 있고 
+그 데이터를 연락처 제공자에 다운로드할 수 있습니다. 이런 일은 사용자에게 
+개인용 계정 이름에 대한 개인용 연락처가 한 세트 있고, 업무용으로 또 한 세트가 있는 경우 일어납니다. 계정 이름은 보통 
+고유합니다. 이 둘은 함께 사용되어 연락처 제공자와 외부 서비스 사이의 특정 데이터 
+흐름을 식별합니다.
+</p>
+<p>
+    서비스의 데이터를 연락처 제공자에 전송하려면, 나름의 
+동기화 어댑터를 작성해야 합니다. 이 내용은 
+<a href="#SyncAdapters">연락처 제공자 동기화 어댑터</a> 섹션에 자세히 설명되어 있습니다.
+</p>
+<p>
+    그림 4는 연락처 제공자가 사람에 대한 데이터 흐름에 
+어떻게 들어맞는지 나타낸 것입니다. "동기화 어댑터"라고 표시된 상자에서, 각 어댑터에는 계정 유형에 따라 레이블이 붙어 있습니다.
+</p>
+<img src="{@docRoot}images/providers/ContactsDataFlow.png" alt="Flow of data about people" height="252" id="figure5" />
+<p class="img-caption">
+  <strong>그림 4.</strong> 연락처 제공자의 데이터 흐름입니다.
+</p>
+<h2 id="Permissions">필수 권한</h2>
+<p>
+    연락처 제공자에 액세스하고자 하는 애플리케이션은 다음 권한을 
+요청해야 합니다.
+</p>
+<dl>
+    <dt>하나 이상의 테이블에 대한 읽기 액세스</dt>
+    <dd>
+        {@link android.Manifest.permission#READ_CONTACTS}, 
+<code>AndroidManifest.xml</code>에서 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> 요소와 함께 
+<code>&lt;uses-permission android:name="android.permission.READ_CONTACTS"&gt;</code>로 지정된 것.
+    </dd>
+    <dt>하나 이상의 테이블에 대한 쓰기 액세스</dt>
+    <dd>
+        {@link android.Manifest.permission#WRITE_CONTACTS}, 
+<code>AndroidManifest.xml</code>에서 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> 요소와 함께 
+<code>&lt;uses-permission android:name="android.permission.WRITE_CONTACTS"&gt;</code>로 지정된 것.
+    </dd>
+</dl>
+<p>
+    이들 권한은 사용자 프로필 데이터로 확대되지 않습니다. 사용자 프로필과 
+필수 권한은 
+다음 섹션인 <a href="#UserProfile">사용자 프로필</a>에서 논의합니다.
+</p>
+<p>
+    사용자의 연락처 데이터는 중요한 개인 정보라는 사실을 명심하십시오. 사용자는 자신의 
+개인정보보호를 중요하게 생각하고 신경 쓰기 때문에 애플리케이션이 자신이나 자신의 연락처에 관한 정보를 수집하는 것을 바라지 않습니다.
+    사용자의 연락처 데이터에 액세스할 권한이 필요한 이유가 분명하지 않으면 여러분의 
+애플리케이션에 낮은 순위를 매기거나 설치를 거부할 수도 있습니다.
+</p>
+<h2 id="UserProfile">사용자 프로필</h2>
+<p>
+    {@link android.provider.ContactsContract.Contacts} 테이블에 있는 한 개의 행에는 기기의 사용자에 대한 프로필 
+데이터가 담겨 있습니다. 이 데이터는 사용자의 연락처 중 하나라기보다는 기기의 <code>user</code>를 
+설명하는 것입니다. 프로필 연락처 행은 
+프로필을 사용하는 각 시스템에 대한 원시 연락처 행에 연결되어 있습니다.
+    각 프로필 원시 연락처 행에는 여러 개의 데이터 행이 있을 수 있습니다. 사용자 프로필에 액세스하기 위한 상수는 
+{@link android.provider.ContactsContract.Profile} 클래스에서 이용할 수 있습니다.
+</p>
+<p>
+    사용자 프로필에 액세스하려면 특수 권한이 필요합니다. 읽기와 쓰기에 필요한 
+{@link android.Manifest.permission#READ_CONTACTS}와
+{@link android.Manifest.permission#WRITE_CONTACTS} 권한 외에도, 
+사용자 프로필에 액세스하려면 각각 읽기와 쓰기 액세스를 위한{@code android.Manifest.permission#READ_PROFILE}과 
+{@code android.Manifest.permission#WRITE_PROFILE} 권한이 
+필요합니다.
+</p>
+<p>
+    사용자의 프로필은 중요한 정보로 간주해야 한다는 점을 명심하십시오. 
+{@code android.Manifest.permission#READ_PROFILE}권한을 사용하면 개발자가 기기 사용자의 
+개인 식별 데이터에 액세스할 수 있게 해줍니다. 애플리케이션 설명에서 
+사용자에게 왜 여러분이 사용자 프로필 권한을 필요로 하는지 밝혀두어야 합니다.
+</p>
+<p>
+    사용자 프로필이 포함된 연락처 행을 검색하려면,
+{@link android.content.ContentResolver#query(Uri,String[], String, String[], String)
+ContentResolver.query()}를 호출합니다. 콘텐츠 URI 를
+{@link android.provider.ContactsContract.Profile#CONTENT_URI}로 설정하고 
+선택 기준은 아무것도 제공하지 마십시오. 이 콘텐츠 URI는 원시 연락처 또는 프로필에 대한 데이터를 검색하기 위한 
+기본 URI로도 쓸 수 있습니다. 예를 들어, 이 코드 조각은 프로필에 대한 데이터를 검색합니다.
+</p>
+<pre>
+// Sets the columns to retrieve for the user profile
+mProjection = new String[]
+    {
+        Profile._ID,
+        Profile.DISPLAY_NAME_PRIMARY,
+        Profile.LOOKUP_KEY,
+        Profile.PHOTO_THUMBNAIL_URI
+    };
+
+// Retrieves the profile from the Contacts Provider
+mProfileCursor =
+        getContentResolver().query(
+                Profile.CONTENT_URI,
+                mProjection ,
+                null,
+                null,
+                null);
+</pre>
+<p class="note">
+    <strong>참고:</strong> 여러 개의 연락처 행을 검색하고 그 중 하나가 
+사용자 프로필인지 판별하고자 하는 경우, 
+행의 {@link android.provider.ContactsContract.ContactsColumns#IS_USER_PROFILE} 열을 테스트합니다. 이 열은 
+해당 연락처가 사용자 프로필이면 "1"로 설정됩니다.
+</p>
+<h2 id="ContactsProviderMetadata">연락처 제공자 메타데이터</h2>
+<p>
+    연락처 제공자는 리포지토리에서 연락처 데이터 상태를 
+추적하는 데이터를 관리합니다. 이 리포지토리 관련 데이터는 
+원시 연락처, 데이터 및 연락처 테이블 행,
+{@link android.provider.ContactsContract.Settings} 테이블 및 
+{@link android.provider.ContactsContract.SyncState} 테이블 등의 여러 장소에 저장됩니다. 다음 표는 각 메타데이터 조각이 미치는 
+영향을 나타낸 것입니다.
+</p>
+<p class="table-caption" id="table3">
+  <strong>표 3.</strong> 연락처 제공자의 메타데이터</p>
+<table>
+    <tr>
+        <th scope="col">테이블</th>
+        <th scope="col">열</th>
+        <th scope="col">값</th>
+        <th scope="col">의미</th>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.RawContacts}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.SyncColumns#DIRTY}</td>
+        <td>"0" - 마지막 동기화 이후로 변경되지 않았습니다.</td>
+        <td rowspan="2">
+            기기에서 변경되었고 서버로 다시 동기화되어야 하는 원시 데이터를 
+표시합니다. 이 값은 Android 애플리케이션이 행을 업데이트하면 연락처 제공자가 
+자동으로 설정합니다.
+            <p>
+                원시 연락처나 데이터 테이블을 수정하는 동기화 어댑터는 
+언제나 문자열 {@link android.provider.ContactsContract#CALLER_IS_SYNCADAPTER}를 
+자신이 사용하는 콘텐츠 URI에 추가해야 합니다. 이렇게 하면 제공자가 행을 변경(dirty)으로 표시하지 못하게 방지합니다.
+                그렇지 않으면, 동기화 어댑터 수정이 로컬 수정으로 나타나며 
+서버가 수정의 근원이었다 하더라도 이 내용이 다시 서버로 전송됩니다.
+            </p>
+        </td>
+    </tr>
+    <tr>
+            <td>"1" - 마지막 동기화 이후 변경되었고, 서버에 다시 동기화해야 합니다.</td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#VERSION}</td>
+        <td>이 행의 버전 번호입니다.</td>
+        <td>
+            연락처 제공자는 행이나 관련 데이터가 변경될 때마다 이 값을 자동으로 
+증가시킵니다.
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.Data}</td>
+        <td>{@link android.provider.ContactsContract.DataColumns#DATA_VERSION}</td>
+        <td>이 행의 버전 번호입니다.</td>
+        <td>
+            연락처 제공자는 데이터 행이 변경될 때마다 이 값을 자동으로 
+증가시킵니다.
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}</td>
+        <td>
+            이 원시 연락처를 자신이 생성된 계정에 대해 고유하게 식별하는 
+문자열 값입니다.
+        </td>
+        <td>
+            동기화 어댑터가 새로운 원시 연락처를 생성하면, 이 열이 
+해당 원시 연락처에 대한 서버의 고유 ID로 설정되어야 합니다. Android 애플리케이션이 새로운 원시 연락처를 생성하면, 
+애플리케이션은 이 열을 빈 채로 두어야 합니다. 이것은 동기화 어댑터에 
+서버에 새 원시 데이터를 생성해야 한다고 신호하고, 
+{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}에 대한 값을 가져오라고 알립니다.
+            <p>
+                특히, 소스 ID는 각 계정 유형에 대해 <strong>고유</strong>해야 하고 
+동기화 전체에서 안정적이어야 합니다.
+            </p>
+                <ul>
+                    <li>
+                        고유: 하나의 계정에 대한 각 원시 연락처에는 나름의 소스 ID가 있어야 합니다. 개발자가 
+이것을 강제 적용하지 않으면 연락처 애플리케이션에 문제를 유발하게 됩니다.
+                        같은 계정 <em>유형</em>에 대한 두 개의 원시 연락처는 소스 ID가 
+같을 수 있다는 점을 유의하십시오. 예를 들어, 
+{@code emily.dickinson@gmail.com} 계정에 대한 원시 연락처 "Thomas Higginson"은 
+{@code emilyd@gmail.com} 계정에 대한 
+원시 연락처 "Thomas Higginson"과 소스 ID가 같을 수 있습니다.
+                    </li>
+                    <li>
+                        안정적: 소스 ID는 원시 연락처에 대한 온라인 서비스의 데이터 중 영구적인 
+부분입니다. 예를 들어, 사용자가 앱 설정에서 연락처 저장소를 삭제하고 다시 동기화하면 
+복원된 원시 연락처의 소스 ID는 전과 같아야 
+합니다. 개발자가 이것을 강제 적용하지 않으면 바로 가기가 더 이상
+ 작동하지 않습니다.
+                    </li>
+                </ul>
+        </td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Groups}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.GroupsColumns#GROUP_VISIBLE}</td>
+        <td>"0" - 이 그룹의 연락처는 Android 애플리케이션 UI에 표시되지 않아야 합니다.</td>
+        <td>
+            이 열은 사용자가 특정 그룹에 연락처를 숨길 수 있게 해주는 서버와의 
+호환성을 위한 것입니다.
+        </td>
+    </tr>
+    <tr>
+        <td>"1" - 이 그룹의 연락처는 애플리케이션 UI에 표시되어도 됩니다.</td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Settings}</td>
+        <td rowspan="2">
+            {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE}</td>
+        <td>
+            "0" - 이 계정과 계정 유형의 경우, 그룹에 속하지 않는 연락처는 Android 애플리케이션 UI에 
+표시되지 않습니다.
+        </td>
+        <td rowspan="2">
+            기본적으로, 연락처에 그룹에 속한 원시 데이터가 하나도 없는 경우 이는 표시되지 않습니다(원시 연락처의 그룹 구성원은 
+{@link android.provider.ContactsContract.Data} 테이블에서 
+하나 이상의 {@link android.provider.ContactsContract.CommonDataKinds.GroupMembership} 행으로 
+표시됩니다).
+            계정 유형과 계정에 대한 {@link android.provider.ContactsContract.Settings} 테이블 행에서 
+이 플래그를 설정하면 그룹이 없는 연락처가 표시되도록 강제할 수 있습니다.
+            이 플래그의 용도 중 하나는 그룹을 사용하지 않는 서버로부터 가져온 연락처를 표시하는 것입니다.
+        </td>
+    </tr>
+    <tr>
+        <td>
+            "1" - 이 계정과 계정 유형의 경우, 그룹에 속하지 않는 연락처가 애플리케이션 UI에 
+표시됩니다.
+        </td>
+
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.SyncState}</td>
+        <td>(모두)</td>
+        <td>
+            이 테이블을 사용하여 동기화 어댑터의 메타데이터를 저장합니다.
+        </td>
+        <td>
+            이 테이블을 사용하면 동기화 상태와 기타 동기화 관련 데이터를 기기에 영구적으로 
+저장할 수 있습니다.
+        </td>
+    </tr>
+</table>
+<h2 id="Access">연락처 제공자 액세스</h2>
+<p>
+    이 섹션은 연락처 제공자에서 가져온 데이터에 액세스하는 법에 대한 지침을 제공하며, 
+요점은 다음과 같습니다.
+</p>
+<ul>
+    <li>
+        엔티티 쿼리.
+    </li>
+    <li>
+        일괄 수정.
+    </li>
+    <li>
+        인텐트로 검색 및 수정.
+    </li>
+    <li>
+        데이터 무결성.
+    </li>
+</ul>
+<p>
+    동기화 어댑터에서 수정하는 방법은 
+<a href="#SyncAdapters">연락처 제공자 동기화 어댑터</a> 섹션에도 자세히 설명되어 있습니다.
+</p>
+<h3 id="Entities">엔티티 쿼리</h3>
+<p>
+    연락처 제공자 테이블은 계층을 사용하여 조직화되어 있으므로, 
+행과 그 행에 연결된 모든 "하위" 행을 검색하는 것이 유용할 때가 많습니다. 예를 들어, 
+어떤 개인의 모든 정보를 표시하려면 
+하나의 {@link android.provider.ContactsContract.Contacts} 행에 대한 모든 
+{@link android.provider.ContactsContract.RawContacts} 행을 검색하거나 하나의 
+{@link android.provider.ContactsContract.RawContacts} 행에 대한 모든 
+{@link android.provider.ContactsContract.CommonDataKinds.Email} 행을 검색하는 것이 좋습니다. 이를 용이하게 하기 위해, 
+연락처 제공자는 테이블 사이를 연결하는 데이터베이스 역할을 하는 <strong>엔티티</strong> 구조를 
+제공합니다.
+</p>
+<p>
+    하나의 엔티티는 마치 상위 테이블과 그 하위 테이블에서 가져온 선택된 몇 개의 열로 이루어진 테이블과 같습니다.
+    엔티티를 쿼리하는 경우, 해당 엔티티에서 사용할 수 있는 열을 기반으로 하여 예측과 검색 
+기준을 제공합니다. 그 결과도 도출되는 것이 {@link android.database.Cursor}이며, 
+여기에 검색된 각 하위 테이블에 대해 행이 하나씩 들어있습니다. 예를 들어 연락처 이름에 대해 
+{@link android.provider.ContactsContract.Contacts.Entity}를 쿼리하고 
+그 이름에 대한 모든 원시 연락처에 대한 모든 {@link android.provider.ContactsContract.CommonDataKinds.Email} 행을 쿼리하면 
+{@link android.database.Cursor}를 돌려받게 되며 이 안에 
+각 {@link android.provider.ContactsContract.CommonDataKinds.Email}행에 대한 행이 하나씩 들어있습니다.
+</p>
+<p>
+    엔티티는 쿼리를 단순화합니다. 엔티티를 사용하면 연락처나 원시 연락처에 대한 모든 연락처 데이터를 
+한꺼번에 검색할 수 있습니다. 즉 우선 상위 테이블을 검색하여 ID를 가져오고, 그런 다음 
+하위 테이블을 그 ID로 검색하지 않아도 된다는 뜻입니다. 또한, 연락처 제공자에는 엔티티에 대한 쿼리를 
+하나의 트랜잭션으로 처리하므로, 검색된 데이터가 내부적으로 일관성을 유지하도록 
+보장합니다.
+</p>
+<p class="note">
+    <strong>참고:</strong> 하나의 엔티티에 상위 및 하위 테이블의 모든 열이 들어있지는 않은 것이 
+보통입니다. 엔티티에 대한 열 이름 상수 목록에 없는 열 이름으로 작업하려 시도하면, 
+{@link java.lang.Exception}이 발생합니다.
+</p>
+<p>
+    다음 조각은 하나의 연락처에 대해 모든 원시 연락처 행을 검색하는 방법을 나타낸 것입니다. 이 조각은 
+두 개의 액티비티, 즉 "기본"과 "세부"를 가진 더 큰 애플리케이션의 일부입니다. 기본 액티비티는 
+연락처 행 목록을 보여줍니다. 사용자가 하나를 선택하면, 이 액티비티가 해당 목록의 ID를 
+세부 액티비티에 전송합니다. 세부 액티비티는 {@link android.provider.ContactsContract.Contacts.Entity}를 사용하여 
+선택된 연락처와 연관된 모든 원시 연락처에서 
+모든 데이터 행을 표시합니다.
+</p>
+<p>
+    이 조각은 "세부" 액티비티에서 가져온 것입니다.
+</p>
+<pre>
+...
+    /*
+     * Appends the entity path to the URI. In the case of the Contacts Provider, the
+     * expected URI is content://com.google.contacts/#/entity (# is the ID value).
+     */
+    mContactUri = Uri.withAppendedPath(
+            mContactUri,
+            ContactsContract.Contacts.Entity.CONTENT_DIRECTORY);
+
+    // Initializes the loader identified by LOADER_ID.
+    getLoaderManager().initLoader(
+            LOADER_ID,  // The identifier of the loader to initialize
+            null,       // Arguments for the loader (in this case, none)
+            this);      // The context of the activity
+
+    // Creates a new cursor adapter to attach to the list view
+    mCursorAdapter = new SimpleCursorAdapter(
+            this,                        // the context of the activity
+            R.layout.detail_list_item,   // the view item containing the detail widgets
+            mCursor,                     // the backing cursor
+            mFromColumns,                // the columns in the cursor that provide the data
+            mToViews,                    // the views in the view item that display the data
+            0);                          // flags
+
+    // Sets the ListView's backing adapter.
+    mRawContactList.setAdapter(mCursorAdapter);
+...
+&#64;Override
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+
+    /*
+     * Sets the columns to retrieve.
+     * RAW_CONTACT_ID is included to identify the raw contact associated with the data row.
+     * DATA1 contains the first column in the data row (usually the most important one).
+     * MIMETYPE indicates the type of data in the data row.
+     */
+    String[] projection =
+        {
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID,
+            ContactsContract.Contacts.Entity.DATA1,
+            ContactsContract.Contacts.Entity.MIMETYPE
+        };
+
+    /*
+     * Sorts the retrieved cursor by raw contact id, to keep all data rows for a single raw
+     * contact collated together.
+     */
+    String sortOrder =
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID +
+            " ASC";
+
+    /*
+     * Returns a new CursorLoader. The arguments are similar to
+     * ContentResolver.query(), except for the Context argument, which supplies the location of
+     * the ContentResolver to use.
+     */
+    return new CursorLoader(
+            getApplicationContext(),  // The activity's context
+            mContactUri,              // The entity content URI for a single contact
+            projection,               // The columns to retrieve
+            null,                     // Retrieve all the raw contacts and their data rows.
+            null,                     //
+            sortOrder);               // Sort by the raw contact ID.
+}
+</pre>
+<p>
+    로딩이 완료되면, {@link android.app.LoaderManager}가 
+{@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished(Loader, D)
+onLoadFinished()}에 대한 콜백을 호출합니다. 이 메서드로 수신되는 인수 중 하나가 
+{@link android.database.Cursor}로, 여기에 쿼리 결과도 함께 들어옵니다. 개발자 본인의 앱에서는, 이 
+{@link android.database.Cursor}에서 데이터를 가져와 이를 표시할 수도 있고 여기에 작업을 더할 수도 있습니다.
+</p>
+<h3 id="Transactions">일괄 수정</h3>
+<p>
+    연락처 제공자에서 데이터를 삽입, 업데이트 및 삭제하는 경우 가급적이면 
+"일괄 모드"를 쓰는 것이 좋습니다. 이때 
+{@link android.content.ContentProviderOperation} 객체의 {@link java.util.ArrayList}를 생성하고 
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}를 호출하면 됩니다. 연락처 제공자는 
+
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}에서의 모든 작업을 
+하나의 트랜잭션으로 수행하기 때문에, 수정한 내용이 일관되지 않은 상태로 연락처 리포지토리를 
+떠날 일이 결코 없습니다. 일괄 수정을 사용하면 원시 연락처와 그 세부 데이터를 동시에 삽입하는 것도 
+쉽습니다.
+</p>
+<p class="note">
+    <strong>참고:</strong> <em>하나의</em> 원시 연락처를 수정하려면 수정 작업을 앱에서 처리하는 것보다는 
+인텐트를 기기의 연락처 애플리케이션에 보내는 방안을 고려하십시오. 
+이렇게 하는 방법이 
+<a href="#Intents">인텐트로 검색 및 수정</a> 섹션에 자세히 설명되어 있습니다.
+</p>
+<h4>양보 지점</h4>
+<p>
+    대량의 작업이 들어있는 일괄 수정은 다른 프로세스를 차단하므로, 
+그 결과 전반적으로 불량한 사용자 환경을 유발할 수 있습니다. 수행하고자 하는 모든 수정 작업을 가능한 한 
+적은 수의 별도의 목록으로 정리하고 그와 동시에 이 작업이 시스템을 차단하지 못하도록 방지하려면 
+하나 이상의 작업에 <strong>양보 지점</strong>을 설정해야 합니다.
+    양보 지점은 {@link android.content.ContentProviderOperation#isYieldAllowed()} 값이 <code>true</code>로 설정된 {@link android.content.ContentProviderOperation} 객체입니다.
+
+ 연락처 제공자가 양보 지점을 만나면 
+다른 프로세스가 실행되도록 작업을 잠시 멈추고 현재 트랜잭션을 종료합니다. 제공자가 다시 시작되면, 이는 
+{@link java.util.ArrayList}에서 다음 작업을 계속 진행하고 
+새 트랜잭션을 시작합니다.
+</p>
+<p>
+    양보 지점을 사용하면 그 결과 
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}로의 호출 한 건당 하나 이상의 트랜잭션이 생기는 것은 사실입니다. 이 때문에, 
+ 양보 지점은 관련된 행 한 세트에서 마지막 작업에 설정해야 합니다.
+    예를 들어, 원시 연락처 행과 관련된 데이터 행을 추가하는 세트의 마지막 작업에 
+양보 지점을 설정하거나, 하나의 연락처와 관련된 행 한 세트의 
+마지막 작업에 양보 지점을 설정해야 합니다.
+</p>
+<p>
+    양보 지점은 원자성 작업의 단위이기도 합니다. 두 개의 양보 지점 사이를 향한 액세스는 모두 
+한 가지 단위로서 성공 또는 실패합니다. 양보 지점을 설정하지 않는 경우, 가장 작은 
+원자성 작업은 작업 전체가 됩니다. 양보 지점을 사용하면, 작업이 
+시스템 성능을 저하하지 않도록 방지하는 동시에 작업의 하위 세트가 원자성 작업이도록 
+보장할 수 있습니다.
+</p>
+<h4>수정 역참조</h4>
+<p>
+    새로운 원시 연락처 행과 관련 데이터 행을 
+일련의 {@link android.content.ContentProviderOperation} 개체로 삽입할 때는, 
+ 원시 연락처의 
+{@code android.provider.BaseColumns#_ID} 값을
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID} 값으로 삽입하여 데이터 행과 원시 연락처 행을 연결해야 합니다. 그러나, 이 값은 
+데이터 행에 대하여 {@link android.content.ContentProviderOperation}을 
+생성하는 경우에는 사용할 수 없습니다. 원시 연락처 행에 대해 {@link android.content.ContentProviderOperation}
+을 아직 적용하지 않았기 때문입니다. 이 문제를 해결하려면 
+{@link android.content.ContentProviderOperation.Builder} 클래스에
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()} 메서드가 있어야 합니다.
+    이 메서드를 사용하면 열을 이전 작업의 결과로 삽입 또는 수정할 수 
+있습니다.
+</p>
+<p>
+    {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+메서드에는 인수가 두 가지 있습니다.
+</p>
+    <dl>
+        <dt>
+            <code>key</code>
+        </dt>
+        <dd>
+            키-값 쌍의 키입니다. 이 인수의 값은 수정하는 테이블의 
+열 이름이어야 합니다.
+        </dd>
+        <dt>
+            <code>previousResult</code>
+        </dt>
+        <dd>
+            
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}의 {@link android.content.ContentProviderResult} 객체 배열에 있는
+값의 0 기반 색인입니다. 
+일괄 작업이 적용되면 각 작업의 결과가 
+결과의 중간 배열에 저장됩니다. <code>previousResult</code> 값은 
+이러한 결과 중 하나의 색인이고, 이는 <code>key</code> 값으로 
+검색 및 저장됩니다. 이것을 사용하면 새 원시 연락처 레코드를 삽입하고
+{@code android.provider.BaseColumns#_ID} 값을 다시 가져온 뒤, 
+{@link android.provider.ContactsContract.Data} 행을 추가할 때 해당 값을 "역참조"할 수 있게 해줍니다.
+            <p>
+                
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}를 처음 호출할 때, 
+개발자가 제공하는 {@link android.content.ContentProviderOperation} 객체의 {@link java.util.ArrayList} 크기와 같은 크기로 
+전체 결과 배열이 생성됩니다. 그러나 
+결과 배열의 모든 요소는 <code>null</code>로 설정되고, 
+아직 적용되지 않은 작업 결과에 대한 역참조를 수행하려 시도하면 
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}가
+{@link java.lang.Exception}을 발생시킵니다.
+
+            </p>
+        </dd>
+    </dl>
+<p>
+    다음 조각은 새로운 원시 연락처와 데이터를 일괄 삽입하는 방법을 나타낸 것입니다. 여기에는 
+양보 지점을 지정하고 역참조를 사용하는 코드가 포함되어 있습니다. 이 조각은 
+<code>createContacEntry()</code> 메서드의 확장 버전이며, 이는 
+<code><a href="{@docRoot}resources/samples/ContactManager/index.html">
+    Contact Manager</a></code> 샘플 애플리케이션에 있는 <code>ContactAdder</code> 클래스의 
+일부입니다.
+</p>
+<p>
+    첫 번째 조각은 UI에서 연락처 데이터를 검색합니다. 이 시점에서 사용자는 이미 
+새로운 원시 연락처를 추가할 계정을 선택하였습니다.
+</p>
+<pre>
+// Creates a contact entry from the current UI values, using the currently-selected account.
+protected void createContactEntry() {
+    /*
+     * Gets values from the UI
+     */
+    String name = mContactNameEditText.getText().toString();
+    String phone = mContactPhoneEditText.getText().toString();
+    String email = mContactEmailEditText.getText().toString();
+
+    int phoneType = mContactPhoneTypes.get(
+            mContactPhoneTypeSpinner.getSelectedItemPosition());
+
+    int emailType = mContactEmailTypes.get(
+            mContactEmailTypeSpinner.getSelectedItemPosition());
+</pre>
+<p>
+    다음 조각은 
+{@link android.provider.ContactsContract.RawContacts} 테이블에 원시 연락처 행을 삽입하는 작업을 생성합니다.
+</p>
+<pre>
+    /*
+     * Prepares the batch operation for inserting a new raw contact and its data. Even if
+     * the Contacts Provider does not have any data for this person, you can't add a Contact,
+     * only a raw contact. The Contacts Provider will then add a Contact automatically.
+     */
+
+     // Creates a new array of ContentProviderOperation objects.
+    ArrayList&lt;ContentProviderOperation&gt; ops =
+            new ArrayList&lt;ContentProviderOperation&gt;();
+
+    /*
+     * Creates a new raw contact with its account type (server type) and account name
+     * (user's account). Remember that the display name is not stored in this row, but in a
+     * StructuredName data row. No other data is required.
+     */
+    ContentProviderOperation.Builder op =
+            ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI)
+            .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType())
+            .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    그런 다음, 코드가 표시 이름, 전화 및 이메일 행에 대한 데이터 행을 생성합니다.
+</p>
+<p>
+    각 작업 빌더 개체는 
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}를 
+사용하여
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}를 가져옵니다. 참조는 
+첫 번째 작업의 {@link android.content.ContentProviderResult} 객체를 다시 가리키고, 
+이것이 원시 연락처 행을 추가한 뒤 이의 새 {@code android.provider.BaseColumns#_ID}
+값을 반환합니다. 그 결과, 각 데이터 행은 자동으로 자신의 
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}
+에 의해 자신이 속하는 새 {@link android.provider.ContactsContract.RawContacts} 행에 연결됩니다.
+</p>
+<p>
+    이메일 행을 추가하는 {@link android.content.ContentProviderOperation.Builder} 객체는 
+양보 지점을 설정하는 {@link android.content.ContentProviderOperation.Builder#withYieldAllowed(boolean)
+withYieldAllowed()}로 플래그 표시합니다.
+</p>
+<pre>
+    // Creates the display name for the new raw contact, as a StructuredName data row.
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * withValueBackReference sets the value of the first argument to the value of
+             * the ContentProviderResult indexed by the second argument. In this particular
+             * call, the raw contact ID column of the StructuredName data row is set to the
+             * value of the result returned by the first operation, which is the one that
+             * actually adds the raw contact row.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to StructuredName
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
+
+            // Sets the data row's display name to the name in the UI.
+            .withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified phone number and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Phone
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
+
+            // Sets the phone number and type
+            .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, phone)
+            .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, phoneType);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified email and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Email
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE)
+
+            // Sets the email address and type
+            .withValue(ContactsContract.CommonDataKinds.Email.ADDRESS, email)
+            .withValue(ContactsContract.CommonDataKinds.Email.TYPE, emailType);
+
+    /*
+     * Demonstrates a yield point. At the end of this insert, the batch operation's thread
+     * will yield priority to other threads. Use after every set of operations that affect a
+     * single contact, to avoid degrading performance.
+     */
+    op.withYieldAllowed(true);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    마지막 조각은 새로운 원시 연락처와 데이터 행을 삽입하는 
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}에 대한 호출을 
+나타낸 것입니다.
+</p>
+<pre>
+    // Ask the Contacts Provider to create a new contact
+    Log.d(TAG,"Selected account: " + mSelectedAccount.getName() + " (" +
+            mSelectedAccount.getType() + ")");
+    Log.d(TAG,"Creating contact: " + name);
+
+    /*
+     * Applies the array of ContentProviderOperation objects in batch. The results are
+     * discarded.
+     */
+    try {
+
+            getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
+    } catch (Exception e) {
+
+            // Display a warning
+            Context ctx = getApplicationContext();
+
+            CharSequence txt = getString(R.string.contactCreationFailure);
+            int duration = Toast.LENGTH_SHORT;
+            Toast toast = Toast.makeText(ctx, txt, duration);
+            toast.show();
+
+            // Log exception
+            Log.e(TAG, "Exception encountered while inserting contact: " + e);
+    }
+}
+</pre>
+<p>
+    일괄 작업을 사용하면 <strong>낙관적 동시성 제어</strong>도 구현할 수 있습니다. 
+이것은 기본 리포지토리를 잠그지 않고도 수정 트랜잭션을 적용할 수 있는 메서드입니다.
+    이 메서드를 사용하려면 트랜잭션을 적용하고 동시에 발생한 
+다른 수정 사항이 있는지 확인합니다. 부합하지 않는 수정이 발생한 것을 발견하면 
+트랜잭션을 롤백하고 다시 시도합니다.
+</p>
+<p>
+    낙관적 동시성 제어는 한 번에 한 명의 사용자만 존재하고 데이터 리포지토리에 대한 동시 액세스가 드문 모바일 기기에 
+유용합니다. 잠금을 사용하지 않으므로 
+잠금을 설정하거나 다른 트랜잭션이 잠금을 해제하기를 기다리면서 시간을 낭비하지 않습니다.
+</p>
+<p>
+    하나의 
+{@link android.provider.ContactsContract.RawContacts} 행을 업데이트하면서 동시에 낙관적 동시성 제어를 사용하려면, 다음 단계를 따르십시오.
+</p>
+<ol>
+    <li>
+        검색하는 다른 데이터와 함께 행 연락처의 {@link android.provider.ContactsContract.SyncColumns#VERSION}을 
+검색합니다.
+    </li>
+    <li>
+        제약을 강제 적용하는 데 적합한 
+{@link android.content.ContentProviderOperation.Builder} 객체를 하나 생성하되 
+{@link android.content.ContentProviderOperation#newAssertQuery(Uri)} 메서드를 사용합니다. 콘텐츠 URI의 경우, 
+{@link android.provider.ContactsContract.RawContacts#CONTENT_URI
+        RawContacts.CONTENT_URI}를 사용하되 
+이에 추가된 원시 데이터의 {@code android.provider.BaseColumns#_ID}를 함께 씁니다.
+    </li>
+    <li>
+        {@link android.content.ContentProviderOperation.Builder} 개체의 경우,
+{@link android.content.ContentProviderOperation.Builder#withValue(String, Object)
+withValue()}를 호출하여 방금 검색한 버전 번호와 {@link android.provider.ContactsContract.SyncColumns#VERSION} 열을
+비교합니다.
+    </li>
+    <li>
+        같은 {@link android.content.ContentProviderOperation.Builder}의 경우,
+{@link android.content.ContentProviderOperation.Builder#withExpectedCount(int)
+withExpectedCount()}를 호출하여 이 어설션이 테스트하는 행이 하나뿐이도록 보장합니다.
+    </li>
+    <li>
+        {@link android.content.ContentProviderOperation.Builder#build()}를 호출하여
+{@link android.content.ContentProviderOperation} 객체를 생성하고, 이 객체를
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}에 전달하는 {@link java.util.ArrayList}의 첫 번째 객체로 추가합니다.
+
+    </li>
+    <li>
+        일괄 트랜잭션을 적용합니다.
+    </li>
+</ol>
+<p>
+    행을 읽고 수정하려고 시도하는 사이에 다른 작업이 원시 연락처 행을 업데이트하면,
+"어설션" {@link android.content.ContentProviderOperation}은 
+실패하고 전체 일괄 작업이 취소됩니다. 그러면 일괄 작업을 다시 시도하거나 
+다른 조치를 취하기로 선택할 수 있습니다.
+</p>
+<p>
+    다음 조각은 {@link android.content.CursorLoader}를 사용하여 단일 원시 연락처를 쿼리한 후 
+"어설션" {@link android.content.ContentProviderOperation}을 
+생성하는 방법을 나타낸 것입니다.
+</p>
+<pre>
+/*
+ * The application uses CursorLoader to query the raw contacts table. The system calls this method
+ * when the load is finished.
+ */
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor cursor) {
+
+    // Gets the raw contact's _ID and VERSION values
+    mRawContactID = cursor.getLong(cursor.getColumnIndex(BaseColumns._ID));
+    mVersion = cursor.getInt(cursor.getColumnIndex(SyncColumns.VERSION));
+}
+
+...
+
+// Sets up a Uri for the assert operation
+Uri rawContactUri = ContentUris.withAppendedId(RawContacts.CONTENT_URI, mRawContactID);
+
+// Creates a builder for the assert operation
+ContentProviderOperation.Builder assertOp = ContentProviderOperation.netAssertQuery(rawContactUri);
+
+// Adds the assertions to the assert operation: checks the version and count of rows tested
+assertOp.withValue(SyncColumns.VERSION, mVersion);
+assertOp.withExpectedCount(1);
+
+// Creates an ArrayList to hold the ContentProviderOperation objects
+ArrayList ops = new ArrayList&lt;ContentProviderOperationg&gt;;
+
+ops.add(assertOp.build());
+
+// You would add the rest of your batch operations to "ops" here
+
+...
+
+// Applies the batch. If the assert fails, an Exception is thrown
+try
+    {
+        ContentProviderResult[] results =
+                getContentResolver().applyBatch(AUTHORITY, ops);
+
+    } catch (OperationApplicationException e) {
+
+        // Actions you want to take if the assert operation fails go here
+    }
+</pre>
+<h3 id="Intents">인텐트로 검색 및 수정</h3>
+<p>
+    기기 연락처 애플리케이션에 인텐트를 전송하면 연락처 제공자에 
+간접적으로 액세스할 수 있습니다. 인텐트는 기기의 연락처 애플리케이션 UI를 시작하고, 여기서 사용자는 
+연락처 관련 작업을 할 수 있습니다. 사용자가 이런 액세스 유형을 가지고 할 수 있는 일은 다음과 같습니다.
+    <ul>
+        <li>목록에서 연락처를 선택하고 추가 작업을 위해 앱에 반환시킵니다.</li>
+        <li>기존 연락처의 데이터를 편집합니다.</li>
+        <li>새 원시 데이터를 해당되는 계정 중 아무 곳에나 삽입합니다.</li>
+        <li>연락처 또는 연락처 데이터를 삭제합니다.</li>
+    </ul>
+<p>
+    사용자가 데이터를 삽입하거나 업데이트하고 있다면, 먼저 데이터를 수집하고 
+인텐트의 일부로 전송할 수 있습니다.
+</p>
+<p>
+    인텐트를 사용하여 기기의 연락처 애플리케이션을 통해 연락처 제공자에 액세스하는 경우 
+제공자에 액세스하기 위해 개발자 나름의 UI나 코드를 작성하지 않아도 됩니다. 제공자에 대한 읽기 또는 쓰기 권한도 요청하지 않아도 
+됩니다. 기기 연락처 애플리케이션은 
+연락처에 대한 읽기 권한을 위임할 수 있고, 다른 애플리케이션을 통해 수정하기 때문에 
+쓰기 권한도 필요 없습니다.
+</p>
+<p>
+    제공자에 액세스하기 위해 인텐트를 전송하는 일반적인 과정은 
+"인텐트를 통한 데이터 액세스" 섹션의 <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+콘텐츠 제공자 기본 정보</a> 가이드에 상세히 설명되어 있습니다. 이용 가능한 작업에 대해 사용하는 동작, 
+MIME 유형 및 데이터 값은 표 4에 요약되어 있고,
+
+{@link android.content.Intent#putExtra(String, String) putExtra()}와 함께 사용할 수 있는 추가 값은
+{@link android.provider.ContactsContract.Intents.Insert}의 참조 문서에 나열되어 있습니다.
+</p>
+<p class="table-caption" id="table4">
+  <strong>표 4.</strong> 연락처 제공자 인텐트
+</p>
+<table style="width:75%">
+    <tr>
+        <th scope="col" style="width:10%">작업</th>
+        <th scope="col" style="width:5%">동작</th>
+        <th scope="col" style="width:10%">데이터</th>
+        <th scope="col" style="width:10%">MIME 유형</th>
+        <th scope="col" style="width:25%">참고</th>
+    </tr>
+    <tr>
+        <td><strong>목록에서 연락처 선택</strong></td>
+        <td>{@link android.content.Intent#ACTION_PICK}</td>
+        <td>
+            다음 중 하나로 정해집니다.
+            <ul>
+                <li>
+{@link android.provider.ContactsContract.Contacts#CONTENT_URI Contacts.CONTENT_URI}, 
+이는 연락처 목록을 표시합니다.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Phone#CONTENT_URI Phone.CONTENT_URI}, 
+이는 원시 연락처에 대한 전화 번호 목록을 표시합니다.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal#CONTENT_URI
+StructuredPostal.CONTENT_URI}, 
+이는 원시 연락처에 대한 우편 주소 목록을 표시합니다.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_URI Email.CONTENT_URI}, 
+이는 원시 연락처에 대한 이메일 주소 목록을 표시합니다.
+                </li>
+            </ul>
+        </td>
+        <td>
+            사용하지 않음
+        </td>
+        <td>
+            개발자가 제공하는 콘텐츠 URI에 따라 원시 연락처 목록이나 원시 연락처에서 가져온 
+데이터 목록을 표시합니다.
+            <p>
+                
+{@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()} 호출, 
+이는 선택한 행의 콘텐츠 URI를 반환합니다. URI의 형태는 
+테이블의 콘텐츠 URI에 행의 <code>LOOKUP_ID</code>를 추가한 것입니다.
+                기기의 연락처 앱은 액티비티 수명 동안 이 콘텐츠 URI에 
+읽기 및 쓰기 권한을 위임합니다. 자세한 내용은 
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+콘텐츠 제공자 기본 정보</a> 가이드를 참조하십시오.
+            </p>
+        </td>
+    </tr>
+    <tr>
+        <td><strong>새 원시 연락처 삽입</strong></td>
+        <td>{@link android.provider.ContactsContract.Intents.Insert#ACTION Insert.ACTION}</td>
+        <td>N/A</td>
+        <td>
+            {@link android.provider.ContactsContract.RawContacts#CONTENT_TYPE
+RawContacts.CONTENT_TYPE}, 일련의 원시 연락처에 대한 MIME 유형입니다.
+        </td>
+        <td>
+            기기의 연락처 애플리케이션의 <strong>연락처 추가</strong> 화면을 표시합니다. 개발자가 
+인텐트에 추가하는 추가 사항 값이 표시됩니다. 
+{@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()}와 함께 전송되는 경우,
+새로 추가된 원시 연락처의 콘텐츠 URI는 
+"데이터" 필드의 {@link android.content.Intent} 인수에 있는 액티비티의 {@link android.app.Activity#onActivityResult(int, int, Intent) onActivityResult()}
+콜백 메서드로 
+다시 전달됩니다. 값을 가져오려면, {@link android.content.Intent#getData()}를 호출합니다.
+        </td>
+    </tr>
+    <tr>
+        <td><strong>연락처 편집</strong></td>
+        <td>{@link android.content.Intent#ACTION_EDIT}</td>
+        <td>
+            연락처에 대한 
+{@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI}입니다. 편집자 액티비티를 사용하면 사용자가 이 연락처와 관련된 데이터를 어느 것이든 
+편집할 수 있습니다.
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE
+Contacts.CONTENT_ITEM_TYPE}, 하나의 연락처입니다.</td>
+        <td>
+            연락처 애플리케이션에 연락처 편집 화면을 표시합니다. 개발자가 
+인텐트에 추가하는 추가 사항 값이 표시됩니다. 사용자가 <strong>완료</strong>를 클릭하여 편집 내용을 저장하면, 
+액티비티가 전경으로 돌아옵니다.
+        </td>
+    </tr>
+    <tr>
+        <td><strong>데이터를 추가할 수 있는 선택기를 표시합니다.</strong></td>
+        <td>{@link android.content.Intent#ACTION_INSERT_OR_EDIT}</td>
+        <td>
+            N/A
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE}
+        </td>
+         <td>
+            이 인텐트는 항상 연락처 앱의 선택기 화면을 표시합니다. 사용자는 
+편집할 연락처를 선택하거나 새 연락처를 추가할 수 있습니다. 사용자의 선택에 따라 
+편집 또는 추가 화면이 나타나고 개발자가 인텐트에 전달하는 추가 사항 데이터가 
+표시됩니다. 앱이 이메일이나 전화 번호 등의 연락처 데이터를 표시하는 경우, 
+이 인텐트를 사용하면 사용자가 기존 연락처에 데이터를 추가할 수 
+있습니다.
+            <p class="note">
+                <strong>참고:</strong> 이 인텐트의 추가 사항에서는 이름 값을 전송하지 않아도 됩니다. 
+사용자가 항상 기존의 이름을 선택하거나 새 이름을 추가하기 때문입니다. 게다가, 
+개발자가 이름을 전송하고 사용자가 편집을 선택하면 연락처 앱은 개발자가 전송한 이름을 표시하면서 
+이전 값을 재정의하게 됩니다. 사용자가 
+이를 눈치채지 못하고 편집 내용을 저장하면 이전 값은 손실됩니다.
+            </p>
+         </td>
+    </tr>
+</table>
+<p>
+    기기의 연락처 앱은 개발자가 인텐트로 원시 연락처 또는 그에 속한 모든 데이터를 삭제하도록 
+허용하지 않습니다. 대신, 원시 연락처를 삭제하려면 
+{@link android.content.ContentResolver#delete(Uri, String, String[]) ContentResolver.delete()} 
+또는 {@link android.content.ContentProviderOperation#newDelete(Uri)
+ContentProviderOperation.newDelete()}를 사용합니다.
+</p>
+<p>
+    다음 조각은 새로운 원시 연락처와 
+데이터를 삽입하는 인텐트를 구성, 전송하는 방법을 나타낸 것입니다.
+</p>
+<pre>
+// Gets values from the UI
+String name = mContactNameEditText.getText().toString();
+String phone = mContactPhoneEditText.getText().toString();
+String email = mContactEmailEditText.getText().toString();
+
+String company = mCompanyName.getText().toString();
+String jobtitle = mJobTitle.getText().toString();
+
+// Creates a new intent for sending to the device's contacts application
+Intent insertIntent = new Intent(ContactsContract.Intents.Insert.ACTION);
+
+// Sets the MIME type to the one expected by the insertion activity
+insertIntent.setType(ContactsContract.RawContacts.CONTENT_TYPE);
+
+// Sets the new contact name
+insertIntent.putExtra(ContactsContract.Intents.Insert.NAME, name);
+
+// Sets the new company and job title
+insertIntent.putExtra(ContactsContract.Intents.Insert.COMPANY, company);
+insertIntent.putExtra(ContactsContract.Intents.Insert.JOB_TITLE, jobtitle);
+
+/*
+ * Demonstrates adding data rows as an array list associated with the DATA key
+ */
+
+// Defines an array list to contain the ContentValues objects for each row
+ArrayList&lt;ContentValues&gt; contactData = new ArrayList&lt;ContentValues&gt;();
+
+
+/*
+ * Defines the raw contact row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues rawContactRow = new ContentValues();
+
+// Adds the account type and name to the row
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType());
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+// Adds the row to the array
+contactData.add(rawContactRow);
+
+/*
+ * Sets up the phone number data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues phoneRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+phoneRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
+);
+
+// Adds the phone number and its type to the row
+phoneRow.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phone);
+
+// Adds the row to the array
+contactData.add(phoneRow);
+
+/*
+ * Sets up the email data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues emailRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+emailRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE
+);
+
+// Adds the email address and its type to the row
+emailRow.put(ContactsContract.CommonDataKinds.Email.ADDRESS, email);
+
+// Adds the row to the array
+contactData.add(emailRow);
+
+/*
+ * Adds the array to the intent's extras. It must be a parcelable object in order to
+ * travel between processes. The device's contacts app expects its key to be
+ * Intents.Insert.DATA
+ */
+insertIntent.putParcelableArrayListExtra(ContactsContract.Intents.Insert.DATA, contactData);
+
+// Send out the intent to start the device's contacts app in its add contact activity.
+startActivity(insertIntent);
+</pre>
+<h3 id="DataIntegrity">데이터 무결성</h3>
+<p>
+    연락처 리포지토리에는 사용자 측에서 올바르고 최신일 것으로 기대하는 중요하고 민감한 데이터가 들어있으므로 
+연락처 제공자는 데이터 무결성에 대한 잘 정의된 규칙이 있습니다. 개발자 
+여러분에게는 연락처 데이터를 수정할 때 이와 같은 규칙을 준수할 의무가 있습니다. 아래에는 중요한 규칙을 
+몇 가지 나열해 놓았습니다.
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.RawContacts} 행을 추가할 때마다 언제나 
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 행을 추가합니다.
+    </dt>
+    <dd>
+        {@link android.provider.ContactsContract.Data} 테이블에 {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 행이 없는 {@link android.provider.ContactsContract.RawContacts} 행이 있으면 
+통합 과정에서
+문제가 발생할 수 있습니다.
+
+    </dd>
+    <dt>
+        언제나 새로운 {@link android.provider.ContactsContract.Data} 행을 
+해당 상위 {@link android.provider.ContactsContract.RawContacts} 행에 연결합니다.
+    </dt>
+    <dd>
+        {@link android.provider.ContactsContract.RawContacts}에 연결되지 않은 {@link android.provider.ContactsContract.Data} 행은 
+기기 연락처 애플리케이션에 표시되지 않고, 
+동기화 어댑터에서 문제를 발생시킬 수 있습니다.
+    </dd>
+    <dt>
+        개발자 본인의 소유인 원시 연락처에 대한 데이터만 변경하십시오.
+    </dt>
+    <dd>
+        연락처 제공자는 보통 여러 가지 서로 다른 계정 유형/온라인 서비스에서 가져온 
+데이터를 관리한다는 점을 명심하십시오. 개발자의 애플리케이션은 본인에게 
+속한 행에 대한 데이터만 수정 또는 삭제하도록 확실히 해두어야 하며, 데이터를 삽입할 때에도 개발자 본인이 
+제어하는 계정 유형과 이름만 사용해야 합니다.
+    </dd>
+    <dt>
+        권한, 콘텐츠 URI, URI 경로, 열 이름, MIME 유형 및 
+{@link android.provider.ContactsContract.CommonDataKinds.CommonColumns#TYPE} 값에 대해서는 항상 
+{@link android.provider.ContactsContract} 및 그 하위 클래스에서 정의한 상수를 사용합니다.
+    </dt>
+    <dd>
+        이런 상수를 사용하면 오류를 피하는 데 도움이 됩니다. 이런 상수 중 하나라도 사용하지 않게 되는 경우 컴파일러로부터 
+알림을 받기도 합니다.
+    </dd>
+</dl>
+<h3 id="CustomData">사용자 지정 데이터 행</h3>
+<p>
+    사용자 지정 MIME 유형을 생성하여 사용하면,
+{@link android.provider.ContactsContract.Data} 테이블에 있는 본인의 데이터 행을 삽입, 편집, 삭제 및 검색할 수 있습니다. 개발자의 행은 
+{@link android.provider.ContactsContract.DataColumns}에서 
+정의된 열만 사용하도록 제한되어 있습니다. 다만 나름의 유형별 열 이름을 
+기본 열 이름에 매핑할 수는 있습니다. 기기의 연락처 애플리케이션에서는 
+개발자의 행에 대한 데이터가 표시는 되지만 편집이나 삭제는 할 수 없고, 사용자가 추가 데이터를 
+추가할 수도 없습니다. 사용자가 개발자의 사용자 지정 데이터 행을 수정하도록 허용하려면, 본인의 애플리케이션에 
+편집기 액티비티를 제공해야 합니다.
+</p>
+<p>
+    개발자의 사용자 지정 데이터를 표시하려면, <code>&lt;ContactsAccountType&gt;</code> 요소와 하나 이상의 <code>&lt;ContactsDataKind&gt;</code> 하위 요소를 포함하는 <code>contacts.xml</code> 파일을 
+제공합니다.
+ 이 내용은 
+<a href="#SocialStreamDataKind"><code>&lt;ContactsDataKind&gt; element</code></a> 섹션에 자세히 설명되어 있습니다.
+</p>
+<p>
+    사용자 지정 MIME 유형에 대해 자세히 알아보려면,
+<a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+콘텐츠 제공자 생성</a> 가이드를 참조하십시오.
+</p>
+<h2 id="SyncAdapters">연락처 제공자 동기화 어댑터</h2>
+<p>
+    연락처 제공자는 기기와 온라인 서비스 사이에서 연락처 데이터의 <strong>동기화</strong>를 
+처리한다는 구체적인 목적을 두고 디자인된 것입니다. 이것을 사용하면 사용자가 기존의 
+데이터를 새 기기에 다운로드할 수도 있고, 기존의 데이터를 새 계정에 업로드할 수도 있습니다.
+    동기화를 사용하면 사용자가 추가나 변경의 출처와 관계 없이 최신 데이터를 
+편리하게 사용할 수 있게 보장하기도 합니다. 동기화의 또 다른 장점은 
+기기가 네트워크에 연결되어 있지 않더라도 연락처 데이터를 사용할 수 있다는 것입니다.
+</p>
+<p>
+    다양한 방식으로 동기화를 구현할 수 있지만, Android 시스템은 
+플러그인 동기화 프레임워크를 제공하여 다음과 같은 작업들을 자동화해줍니다.
+    <ul>
+
+    <li>
+        네트워크 가용성을 확인합니다.
+    </li>
+    <li>
+        사용자 기본 설정에 따라 동기화를 예약하고 실행합니다.
+    </li>
+    <li>
+        중단된 동기화를 다시 시작합니다.
+    </li>
+    </ul>
+<p>
+    이 프레임워크를 사용하려면 동기화 어댑터 플러그인은 개발자가 직접 제공해야 합니다. 동기화 어댑터는 
+서비스와 콘텐츠 제공자마다 각기 다르지만, 같은 서비스에 대해 여러 개의 계정 이름을 처리할 수 있습니다. 이 
+프레임워크 또한 같은 서비스와 제공자에 대해 여러 개의 동기화 어댑터를 허용합니다.
+</p>
+<h3 id="SyncClassesFiles">동기화 어댑터 클래스 및 파일</h3>
+<p>
+    동기화 어댑터를 
+{@link android.content.AbstractThreadedSyncAdapter}의 
+하위 클래스로 구현하고 이를Android 애플리케이션의 일부로 설치합니다. 시스템은 애플리케이션 매니페스트의 요소와 매니페스트가 가리키는 
+특수 XML 파일에서 동기화 어댑터에 관한 정보를 얻습니다. XML 파일은 
+온라인 서비스와 콘텐츠 제공자의 권한에 대한 계정 유형을 정의하고, 
+이들이 함께 어댑터를 고유하게 식별합니다. 동기화 어댑터가 활성화되려면 사용자가 
+동기화 어댑터의 계정 유형에 대해 계정을 추가하고 해당 동기화 어댑터와 동기화하는 콘텐츠 제공자의 동기화를 
+활성화해야 합니다.  이 시점에서, 시스템이 어댑터 관리를 시작하고, 
+콘텐츠 제공자와 서버 사이에서 동기화가 필요할 때 이를 호출합니다.
+</p>
+<p class="note">
+    <strong>참고:</strong> 계정 유형을 동기화 어댑터 식별의 일부로 사용하면 
+시스템이 동일한 같은 조직에서 여러 서비스에 액세스하는 동기화 어댑터를 
+감지하고 그룹화할 수 있습니다. 예를 들어, Google 온라인 서비스의 동기화 어댑터는 계정 유형이 모두 
+<code>com.google</code>로 같습니다. 사용자가 기기에 Google 계정을 추가하면, 
+Google 서비스에 설치된 모든 동기화 어댑터가 함께 목록으로 표시됩니다. 목록에 게재된 각 동기화는 
+기기에서 각기 다른 콘텐츠 제공자와 동기화합니다.
+</p>
+<p>
+    대부분의 서비스에서는 사용자가 데이터에 액세스하기 전에 
+ID를 확인해야 하기 때문에 Android에서는 동기화 어댑터 프레임워크와 비슷하면서 종종 이와 함께 쓰이기도 하는 
+인증 프레임워크를 제공합니다. 인증 프레임워크는 
+{@link android.accounts.AbstractAccountAuthenticator}의 하위 클래스인 
+플러그인 인증자를 사용합니다. 인증자는 다음 절차에 따라 
+사용자의 ID를 확인합니다.
+    <ol>
+        <li>
+            사용자 이름, 암호 또는 유사한 정보(사용자의 
+<strong>자격 증명</strong>)를 수집합니다.
+        </li>
+        <li>
+            자격 증명을 서비스로 전송합니다.
+        </li>
+        <li>
+            서비스의 회신을 검토합니다.
+        </li>
+    </ol>
+<p>
+    서비스가 자격 증명을 수락하면 
+인증자가 자격 증명을 저장하여 나중에 사용할 수 있습니다. 플러그인 인증자 프레임워크로 인해, 
+{@link android.accounts.AccountManager}는 Oauth2 authToken과 같이 인증자가 지원하고 노출하기로 선택하는 모든 authToken에 액세스를 
+제공합니다.
+</p>
+<p>
+    인증이 꼭 필요한 것은 아니지만, 대부분의 연락처 서비스는 이를 사용합니다.
+    다만, 인증을 수행하기 위해 꼭 Android 인증 프레임워크를 사용해야 하는 것은 아닙니다.
+</p>
+<h3 id="SyncAdapterImplementing">동기화 어댑터 구현</h3>
+<p>
+    연락처 제공자에 대한 동기화 어댑터를 구현하려면, 
+다음이 들어있는 Android 애플리케이션을 생성하는 것으로 시작합니다.
+</p>
+    <dl>
+        <dt>
+            시스템의 요청에 응답하여 동기화 어댑터에 바인딩하는 {@link android.app.Service} 
+구성 요소.
+        </dt>
+        <dd>
+            시스템이 동기화를 실행하고자 하는 경우, 이는 
+서비스의 {@link android.app.Service#onBind(Intent) onBind()} 메서드를 호출하여
+동기화 어댑터의 {@link android.os.IBinder}를 가져옵니다. 이렇게 하면 시스템이 어댑터의 
+메서드에 대해 프로세스간 호출을 수행할 수 있습니다.
+            <p>
+                <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+샘플 동기화 어댑터</a> 샘플 앱에서 이 서비스의 클래스 이름은
+<code>com.example.android.samplesync.syncadapter.SyncService</code>입니다.
+            </p>
+        </dd>
+        <dt>
+            {@link android.content.AbstractThreadedSyncAdapter}의 
+하위 클래스로 구현된 실제 동기화 어댑터.
+        </dt>
+        <dd>
+            이 클래스는 서버에서 데이터를 다운로드하고, 기기에서 데이터를 업로드하고, 
+충돌을 해결하는 작업을 수행합니다. 어댑터의 주요 작업은 
+{@link android.content.AbstractThreadedSyncAdapter#onPerformSync(
+Account, Bundle, String, ContentProviderClient, SyncResult)
+onPerformSync()} 메서드에서 실행합니다. 이 클래스는 반드시 단일 항목으로 인스턴트화해야 합니다.
+            <p>
+                <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+샘플 동기화 어댑터</a> 샘플 앱에서 동기화 어댑터는 
+<code>com.example.android.samplesync.syncadapter.SyncAdapter</code> 클래스에서 정의됩니다.
+            </p>
+        </dd>
+        <dt>
+            {@link android.app.Application}의 하위 클래스.
+        </dt>
+        <dd>
+            이 클래스는 동기화 어댑터 단일 항목의 팩터리 역할을 합니다. 
+{@link android.app.Application#onCreate()} 메서드는 
+동기화 어댑터를 인스턴트화하고, 단일 항목을 동기화 어댑터 서비스의 
+{@link android.app.Service#onBind(Intent) onBind()} 메서드에 반환할 정적 "getter" 메서드를 제공하는 데 
+사용하십시오.
+        </dd>
+        <dt>
+            <strong>선택 항목:</strong> 사용자 인증에 대한 시스템으로부터의 요청에 응답하는 {@link android.app.Service} 
+구성 요소.
+        </dt>
+        <dd>
+            {@link android.accounts.AccountManager}가 이 서비스를 시작하여 인증 
+절차를 시작합니다. 서비스의 {@link android.app.Service#onCreate()} 메서드가 
+인증자 객체를 인스턴트화합니다. 시스템이 애플리케이션 동기화 어댑터의 사용자 계정을 인증하고자 하는 경우, 
+시스템은 서비스의 
+{@link android.app.Service#onBind(Intent) onBind()} 메서드를 호출하여 
+인증자의 {@link android.os.IBinder}를 가져옵니다. 이렇게 하면 시스템이 인증자의 
+메서드에 대해 프로세스간 호출을 수행할 수 있습니다.
+            <p>
+                <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+샘플 동기화 어댑터</a> 샘플 앱에서 이 서비스의 클래스 이름은
+<code>com.example.android.samplesync.authenticator.AuthenticationService</code>입니다.
+            </p>
+        </dd>
+        <dt>
+            <strong>선택 항목:</strong> 인증에 대한 요청을 처리하는 
+{@link android.accounts.AbstractAccountAuthenticator}의 구체적인 
+하위 클래스.
+        </dt>
+        <dd>
+            이 클래스는 {@link android.accounts.AccountManager}가 
+서버로 사용자 자격 증명 인증을 호출하는 메서드를 제공합니다. 인증 절차의 세부 사항은 
+사용하는 서버 기술에 따라 매우 차이가 있습니다. 인증에 대한 
+자세한 정보는 각자의 서버 소프트웨어에 해당되는 관련 문서를 참조하십시오.
+            <p>
+                <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+샘플 동기화 어댑터</a> 샘플 앱에서 인증자는 
+<code>com.example.android.samplesync.authenticator.Authenticator</code> 클래스에서 정의됩니다.
+            </p>
+        </dd>
+        <dt>
+            동기화 어댑터와 서버의 인증자를 정의하는 XML 파일.
+        </dt>
+        <dd>
+            이전에 설명한 동기화 어댑터와 인증자 서비스 구성 요소는 
+애플리케이션 매니페스트의 
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/service-element.html">service</a>&gt;</code> 요소에서 
+정의합니다. 이런 요소에는 
+시스템에 특정 데이터를 제공하는 
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+하위 요소가 
+들어있습니다.
+            <ul>
+                <li>
+                    동기화 어댑터 서비스에 대한 
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+요소는 
+XML 파일 <code>res/xml/syncadapter.xml</code>을 가리킵니다. 그런가 하면 
+이 파일은 연락처 제공자와 동기화될 웹 서비스에 대한 URI와 웹 서비스에 대한 계정 유형을 
+나타냅니다.
+                </li>
+                <li>
+                    <strong>선택 항목:</strong> 인증자의 
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+요소는 XML 파일 
+<code>res/xml/authenticator.xml</code>을 가리킵니다. 이 파일은 다시 
+이 인증이 지원하는 계정 유형과, 인증 과정 중에 표시되는 UI 리소스를 
+나타냅니다. 이 요소에서 지정한 계정 유형은 반드시 
+동기화 어댑터에 대해 지정된 계정 유형과 
+같아야 합니다.
+                </li>
+            </ul>
+        </dd>
+    </dl>
+<h2 id="SocialStream">소셜 스트림 데이터</h2>
+<p>
+    {@code android.provider.ContactsContract.StreamItems}와 
+{@code android.provider.ContactsContract.StreamItemPhotos} 테이블은 
+소셜 네트워크에서 수신하는 데이터를 관리합니다. 개발자는 본인의 네트워크의 스트림 데이터를 이 테이블에 추가하는 
+동기화 어댑터를 작성할 수도 있고, 이 테이블에서 스트림 데이터를 읽어서 
+본인의 애플리케이션에 표시할 수도 있으며 두 가지를 모두 해도 됩니다. 이 기능을 사용하면 소셜 네트워킹 
+서비스와 애플리케이션을 Android의 소셜 네트워킹 환경에 통합할 수 있습니다.
+</p>
+<h3 id="StreamText">소셜 스트림 텍스트</h3>
+<p>
+    스트림 항목은 항상 원시 연락처와 연관됩니다. 
+{@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID}는 
+원시 연락처의 <code>_ID</code> 값과 연관됩니다. 원시 연락처의 계정 유형과 계정 이름도 
+스트림 항목 행에 저장됩니다.
+</p>
+<p>
+    스트림에서 가져온 데이터는 다음 열에 저장합니다.
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_TYPE}
+    </dt>
+    <dd>
+        <strong>필수입니다.</strong> 이 스트림 항목과 연관된 원시 연락처에 대한 
+사용자 계정입니다. 스트림 항목을 삽입할 때 이 값을 설정하는 것을 잊지 마십시오.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_NAME}
+    </dt>
+    <dd>
+        <strong>필수입니다.</strong> 이 스트림 항목과 연관된 원시 연락처에 대한 
+사용자 계정 이름입니다. 스트림 항목을 삽입할 때 이 값을 설정하는 것을 잊지 마십시오.
+    </dd>
+    <dt>
+        식별자 열
+    </dt>
+    <dd>
+        <strong>필수입니다.</strong> 스트림 항목을 삽입할 때 
+다음 식별자 열을 삽입해야 합니다.
+        <ul>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_ID}: 이 
+스트림 항목과 연관된 연락처의 {@code android.provider.BaseColumns#_ID} 
+값입니다.
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_LOOKUP_KEY}: 이 
+스트림 항목과 연관된 연락처의 {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} 
+값입니다.
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID}: 이 
+스트림 항목과 연관된 원시 연락처의 {@code android.provider.BaseColumns#_ID} 
+값입니다.
+            </li>
+        </ul>
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#COMMENTS}
+    </dt>
+    <dd>
+        선택 사항입니다. 스트림 항목의 시작 부분에 표시할 수 있는 요약 정보를 저장합니다.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TEXT}
+    </dt>
+    <dd>
+        스트림 항목의 텍스트로, 항목의 소스가 게시한 콘텐츠 또는 
+스트림 항목을 생성하는 작업의 설명 중 하나입니다. 이 열에는 
+{@link android.text.Html#fromHtml(String) fromHtml()}가 렌더링할 수 있는 모든 서식과 포함된 리소스 이미지가 
+들어있을 수 있습니다. 제공자는 긴 콘텐츠를 
+자르거나 생략할 수 있지만, 가능하면 태그를 손상시키는 것은 피하려 듭니다.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}
+    </dt>
+    <dd>
+        스트림 항목이 삽입되거나 업데이트된 시간이 들어있는 텍스트 문자열로, 형식은 
+epoch 이후 <em>밀리초</em> 형태를 취합니다. 이 열을 관리할 책임은 
+스트림 항목을 삽입 또는 업데이트하는 애플리케이션에 있으며, 이것은 연락처 제공자가 자동으로 
+유지 관리하지 않습니다.
+    </dd>
+</dl>
+<p>
+    스트림 항목의 식별 정보를 표시하려면
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_ICON},
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_LABEL},
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_PACKAGE}를 사용하여 애플리케이션에서
+리소스를 연결하십시오.
+</p>
+<p>
+    {@code android.provider.ContactsContract.StreamItems} 테이블에도 
+동기화 어댑터가 독점적으로 사용하는 {@code android.provider.ContactsContract.StreamItemsColumns#SYNC1}에서
+{@code android.provider.ContactsContract.StreamItemsColumns#SYNC4}까지의 열이 
+들어있습니다.
+</p>
+<h3 id="StreamPhotos">소셜 스트림 사진</h3>
+<p>
+   {@code android.provider.ContactsContract.StreamItemPhotos} 테이블은 스트림 항목과 연관된 
+사진을 저장합니다. 테이블의 
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#STREAM_ITEM_ID} 열은
+{@code android.provider.ContactsContract.StreamItems} 테이블의 {@code android.provider.BaseColumns#_ID} 열에 있는 값과 
+연결됩니다. 사진 참조는 
+다음 열의 테이블에 저장됩니다.
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotos#PHOTO} 열(BLOB).
+    </dt>
+    <dd>
+        사진의 바이너리 표현으로, 제공자가 저장하고 표시하기 위해 크기를 조정한 것입니다.
+        이 열은 사진을 저장하는 데 사용한 연락처 제공자의 이전 버전과 
+호환됩니다. 그러나 현재 버전에서는 
+이 열을 사진 저장에 사용하면 안 됩니다. 대신, 
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID} 또는 
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}(
+다음 항목에서 두 가지 모두 설명)를 사용하여 사진을 파일로 저장합니다. 지금 이 열에는 
+사진의 미리 보기가 들어있어 읽기 작업에 사용할 수 있습니다.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID}
+    </dt>
+    <dd>
+        원시 연락처에 대한 사진의 숫자 식별자입니다. 이 값을 
+상수 {@link android.provider.ContactsContract.DisplayPhoto#CONTENT_URI DisplayPhoto.CONTENT_URI}에 추가하여 
+하나의 사진 파일을 가리키는 콘텐츠 URI를 가져온 다음, 
+{@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+openAssetFileDescriptor()}를 호출하여 사진 파일에 대한 핸들을 가져옵니다.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}
+    </dt>
+    <dd>
+        이 행이 나타내는 사진에 대한 사진 파일을 직접 가리키는 콘텐츠 URI입니다.
+        이 URI로 {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+openAssetFileDescriptor()}를 호출하면 사진 파일에 대한 핸들을 가져올 수 있습니다.
+    </dd>
+</dl>
+<h3 id="SocialStreamTables">소셜 스트림 테이블 사용</h3>
+<p>
+    이들 테이블은 연락처 제공자의 다른 주요 테이블과 똑같이 작동하지만, 다음 예외가 적용됩니다.
+</p>
+    <ul>
+        <li>
+            이 테이블에는 추가 액세스 권한이 필요합니다. 여기서 읽기 작업을 수행하려면 애플리케이션에
+{@code android.Manifest.permission#READ_SOCIAL_STREAM} 권한이 있어야 합니다. 여기서 수정 작업을 수행하려면 
+애플리케이션에
+{@code android.Manifest.permission#WRITE_SOCIAL_STREAM} 권한이 있어야 합니다.
+        </li>
+        <li>
+            {@code android.provider.ContactsContract.StreamItems} 테이블의 경우, 각 원시 연락처에 저장되는 
+행 개수가 제한되어 있습니다. 이 한계에 도달하면, 
+연락처 제공자가 새 스트림 항목 열에 필요한 공간을 만들어야 합니다.
+이때 가장 오래된 {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}가 
+있는 행부터 자동으로 삭제하는 방법을 씁니다. 이 한계를 
+가져오려면, 콘텐츠 URI 
+{@code android.provider.ContactsContract.StreamItems#CONTENT_LIMIT_URI}에 쿼리를 발행합니다. 콘텐츠 
+URI를 뺀 나머지 모든 인수는 <code>null</code>로 설정한 채 두면 됩니다. 이 쿼리는 
+행이 하나 들어 있는 커서를 반환하며, 
+{@code android.provider.ContactsContract.StreamItems#MAX_ITEMS} 열 하나가 수반됩니다.
+        </li>
+    </ul>
+
+<p>
+    {@code android.provider.ContactsContract.StreamItems.StreamItemPhotos} 클래스는 
+스트림 항목 하나의 사진 행을 포함하는 {@code android.provider.ContactsContract.StreamItemPhotos}의 
+하위 테이블을 정의합니다.
+</p>
+<h3 id="SocialStreamInteraction">소셜 스트림 상호 작용</h3>
+<p>
+    연락처 제공자가 기기 연락처 애플리케이션과 함께 관리하는 소셜 스트림 데이터는 
+소셜 네트워킹 시스템과 
+기존 연락처를 연결하는 강력한 방법을 제공합니다. 사용할 수 있는 기능은 다음과 같습니다.
+</p>
+    <ul>
+        <li>
+            소셜 네트워킹 서비스를 동기화 어댑터로 연락처 제공자에 동기화함으로써, 
+사용자 연락처의 최근 활동을 검색하고 이를 
+{@code android.provider.ContactsContract.StreamItems} 및 
+{@code android.provider.ContactsContract.StreamItemPhotos} 테이블에 저장해 두어 나중에 사용할 수 있습니다.
+        </li>
+        <li>
+            정기 동기화 외에도 사용자가 볼 연락처를 선택하면 동기화 어댑터를 트리거하여 
+추가 데이터를 검색하게 할 수 있습니다. 이렇게 하면 동기화 어댑터가 
+해당 연락처의 고해상도 사진과 가장 최근 스트림 항목을 검색할 수 있습니다.
+        </li>
+        <li>
+            기기 연락처 애플리케이션과 연락처 제공자에 알림을 등록하면, 
+연락처가 열람될 때 인텐트를 <em>수신</em>하고, 
+그 시점에 개발자의 서비스로부터 연락처의 상태를 업데이트할 수 있습니다. 이 방법을 사용하면 동기화 어댑터로 
+완전 동기화를 수행하는 것보다 빠르고 대역폭도 적게 사용합니다.
+        </li>
+        <li>
+            사용자는 기기의 연락처 애플리케이션을 보면서 여러분의 소셜 네트워킹 서비스에 
+연락처를 추가할 수 있습니다. 이는 "연락처 초대" 기능으로 사용할 수 있습니다. 
+연락처 초대 기능은 기존 연락처를 네트워크에 추가하는 액티비티와 
+기기의 연락처 애플리케이션을 제공하는 XML 파일, 
+애플리케이션의 세부 정보가 포함된 연락처 제공자를 조합하여 활성화합니다.
+        </li>
+    </ul>
+<p>
+    연락처 제공자로 스트림 항목을 정기 동기화하는 방법은 
+다른 동기화와 같습니다. 동기화에 관한 자세한 내용은 
+<a href="#SyncAdapters">연락처 제공자 동기화 어댑터</a> 섹션을 참조하십시오. 알림을 등록하고 연락처를 초대하는 방법은 
+다음 두 섹션에서 다룰 것입니다.
+</p>
+<h4>소셜 네트워킹 보기를 처리하기 위한 등록</h4>
+<p>
+    동기화 어댑터를 등록하여 사용자가 동기화 어댑터에서 관리하는 연락처를 볼 때 알림을 
+수신하는 방법:
+</p>
+<ol>
+    <li>
+        프로젝트의 <code>res/xml/</code> 디렉터리에 <code>contacts.xml</code> 파일을 
+만듭니다. 이미 이 파일이 있다면 이 절차를 건너뛰어도 됩니다.
+    </li>
+    <li>
+        이 파일에서, 
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code> 요소를 추가합니다.
+        이 요소가 이미 존재한다면 이 절차를 건너뛰어도 됩니다.
+    </li>
+    <li>
+        사용자가 기기의 연락처 애플리케이션에서 
+연락처 세부 정보 페이지를 열면 알림을 보내는 서비스를 등록하려면,
+<code>viewContactNotifyService="<em>serviceclass</em>"</code> 속성을 요소에 추가합니다. 
+이 요소에서 <code><em>serviceclass</em></code>는 기기의 연락처 애플리케이션에서 인텐트를 수신하는 서비스의 
+완전히 정규화된 클래스 이름입니다. 알림 서비스의 경우, 
+{@link android.app.IntentService}를 확장하는 클래스를 사용하여 서비스가 인텐트를 수신하도록 
+허용합니다. 수신되는 인텐트의 데이터에는 
+사용자가 클릭한 원시 연락처의 콘텐츠 URI가 들어있습니다. 알림 서비스에서 동기화 어댑터에 바인딩한 다음 동기화 어댑터를 호출하여 
+원시 연락처의 데이터를 업데이트할 수 있습니다.
+    </li>
+</ol>
+<p>
+    사용자가 스트림 항목이나 사진, 또는 그 두 가지를 모두 클릭할 때 호출할 액티비티를 등록하는 방법:
+</p>
+<ol>
+    <li>
+        프로젝트의 <code>res/xml/</code> 디렉터리에 <code>contacts.xml</code> 파일을 
+만듭니다. 이미 이 파일이 있다면 이 절차를 건너뛰어도 됩니다.
+    </li>
+    <li>
+        이 파일에서, 
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code> 요소를 추가합니다.
+        이 요소가 이미 존재한다면 이 절차를 건너뛰어도 됩니다.
+    </li>
+    <li>
+        사용자가 기기의 연락처 애플리케이션에서 스트림 항목을 클릭했을 때 
+처리할 액티비티를 등록하려면, 
+<code>viewStreamItemActivity="<em>activityclass</em>"</code> 속성을 요소에 추가합니다. 
+이 요소에서 <code><em>activityclass</em></code>는 기기의 연락처 애플리케이션에서 인텐트를 수신하는 액티비티의 
+완전히 정규화된 클래스 이름입니다.
+    </li>
+    <li>
+        사용자가 기기의 연락처 애플리케이션에서 스트림 사진을 클릭했을 때 
+처리할 액티비티를 등록하려면,
+<code>viewStreamItemPhotoActivity="<em>activityclass</em>"</code> 속성을 요소에 추가합니다.
+이 요소에서 <code><em>activityclass</em></code>는 기기의 연락처 애플리케이션에서 인텐트를 수신하는 액티비티의 
+완전히 정규화된 클래스 이름입니다.
+    </li>
+</ol>
+<p>
+    <code>&lt;ContactsAccountType&gt;</code> 요소는 
+<a href="#SocialStreamAcctType">&lt;ContactsAccountType&gt; 요소</a> 섹션에 자세히 설명되어 있습니다.
+</p>
+<p>
+    수신되는 인텐트에 사용자가 클릭한 항목 또는 사진의 콘텐츠 URI가 들어있습니다.
+    텍스트 항목과 사진에 각기 별도의 액티비티를 적용하려면, 두 속성을 모두 같은 파일에서 사용하십시오.
+</p>
+<h4>소셜 네트워킹 서비스로 상호 작용</h4>
+<p>
+    사용자는 소셜 네트워킹 사이트에 연락처를 초대할 때 
+기기의 연락처 애플리케이션을 떠나지 않아도 됩니다. 대신, 개발자가 기기의 연락처 앱에 액티비티 중 하나로 연락처를 초대하는 인텐트를 
+보내게 할 수 있습니다. 이렇게 설정하는 방법은 다음과 같습니다.
+</p>
+<ol>
+    <li>
+        프로젝트의 <code>res/xml/</code> 디렉터리에 <code>contacts.xml</code> 파일을 
+만듭니다. 이미 이 파일이 있다면 이 절차를 건너뛰어도 됩니다.
+    </li>
+    <li>
+        이 파일에서, 
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code> 요소를 추가합니다.
+        이 요소가 이미 존재한다면 이 절차를 건너뛰어도 됩니다.
+    </li>
+    <li>
+        다음 속성을 추가합니다.
+        <ul>
+            <li><code>inviteContactActivity="<em>activityclass</em>"</code></li>
+            <li>
+                <code>inviteContactActionLabel="&#64;string/<em>invite_action_label</em>"</code>
+            </li>
+        </ul>
+        <code><em>activityclass</em></code> 값은 인텐트를 수신해야 하는 액티비티의 
+완전히 정규화된 클래스 이름입니다. <code><em>invite_action_label</em></code>
+값은 기기의 연락처 애플리케이션에 있는 <strong>연결 추가</strong> 메뉴에 
+표시되는 텍스트 문자열입니다.
+    </li>
+</ol>
+<p class="note">
+    <strong>참고:</strong> <code>ContactsSource</code>는 
+<code>ContactsAccountType</code>에 대하여 이제 사용하지 않는 태그 이름입니다.
+</p>
+<h3 id="ContactsFile">contacts.xml 참조</h3>
+<p>
+    <code>contacts.xml</code> 파일에는 XML 요소가 들어있어 개발자의 동기화 어댑터와 
+애플리케이션, 연락처 애플리케이션과 연락처 제공자 사이의 상호 작용을 제어합니다. 이런 
+요소는 다음 섹션에 설명되어 있습니다.
+</p>
+<h4 id="SocialStreamAcctType">&lt;ContactsAccountType&gt; 요소</h4>
+<p>
+    <code>&lt;ContactsAccountType&gt;</code>요 요소는 개발자의 애플리케이션과 
+연락처 애플리케이션 사이의 상호 작용을 제어합니다. 이 요소에는 다음 구문이 있습니다.
+</p>
+<pre>
+&lt;ContactsAccountType
+        xmlns:android="http://schemas.android.com/apk/res/android"
+        inviteContactActivity="<em>activity_name</em>"
+        inviteContactActionLabel="<em>invite_command_text</em>"
+        viewContactNotifyService="<em>view_notify_service</em>"
+        viewGroupActivity="<em>group_view_activity</em>"
+        viewGroupActionLabel="<em>group_action_text</em>"
+        viewStreamItemActivity="<em>viewstream_activity_name</em>"
+        viewStreamItemPhotoActivity="<em>viewphotostream_activity_name</em>"&gt;
+</pre>
+<p>
+    <strong>포함 장소:</strong>
+</p>
+<p>
+    <code>res/xml/contacts.xml</code>
+</p>
+<p>
+    <strong>포함 가능 요소:</strong>
+</p>
+<p>
+    <strong><code>&lt;ContactsDataKind&gt;</code></strong>
+</p>
+<p>
+    <strong>설명:</strong>
+</p>
+<p>
+    사용자가 연락처 중 하나를 소셜 네트워크에 초대하고, 
+소셜 네트워킹 스트림이 업데이트되면 사용자에게 알리는 등의 작업을 허용하는 
+Android 구성 요소와 UI 레이블을 선언합니다.
+</p>
+<p>
+    속성 접두사 <code>android:</code>는 
+<code>&lt;ContactsAccountType&gt;</code>의 속성에는 필요하지 않다는 점을 눈여겨보십시오.
+</p>
+<p>
+    <strong>속성:</strong>
+</p>
+<dl>
+    <dt>{@code inviteContactActivity}</dt>
+    <dd>
+        사용자가 기기의 연락처 애플리케이션에서 
+<strong>연결 추가</strong>를 선택했을 때 활성화하고자 하는 
+애플리케이션 액티비티의 완전히 정규화된 클래스 이름입니다.
+    </dd>
+    <dt>{@code inviteContactActionLabel}</dt>
+    <dd>
+        <strong>연결 추가</strong> 메뉴의 
+{@code inviteContactActivity}에서 지정된 액티비티에 대해 표시되는 텍스트 문자열입니다.
+        예를 들어, 문자열 "제 네트워크를 팔로우하세요"를 사용할 수 있습니다. 이 레이블에 대한 문자열 리소스 
+식별자를 사용할 수 있습니다.
+    </dd>
+    <dt>{@code viewContactNotifyService}</dt>
+    <dd>
+        사용자가 연락처를 볼 때 알림을 수신해야 하는 
+애플리케이션 서비스의 완전히 정규화된 클래스 이름입니다. 이 알림은 
+기기의 연락처 애플리케이션이 전송합니다. 이것을 사용하면 개발자의 애플리케이션이 데이터 집약적인 작업을 필요할 때까지 
+연기할 수 있습니다. 예를 들어, 개발자의 애플리케이션은 
+연락처의 고해상도 사진과 가장 최근 소셜 스트림 항목을 읽어서 표시함으로써 
+이 알림에 응답할 수 있습니다. 이 기능은 
+<a href="#SocialStreamInteraction">소셜 스트림 상호 작용</a>에 상세히 설명되어 있습니다. 알림 서비스의 예시를 
+보려면 <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a>
+ 샘플 앱에 있는 <code>NotifierService.java</code> 파일을 
+확인합니다.
+    </dd>
+    <dt>{@code viewGroupActivity}</dt>
+    <dd>
+        그룹 정보를 표시할 수 있는 애플리케이션 액티비티의 
+완전히 정규화된 클래스 이름입니다. 사용자가 기기의 연락처 애플리케이션에서 그룹 레이블을 클릭하면, 
+이 액티비티의 UI가 표시됩니다.
+    </dd>
+    <dt>{@code viewGroupActionLabel}</dt>
+    <dd>
+        사용자가 개발자의 애플리케이션에서 그룹을 살펴볼 수 있도록 해주는 UI 제어에 대해 
+연락처 애플리케이션이 표시하는 레이블입니다.
+        <p>
+            예를 들어, 기기에 Google+ 애플리케이션을 설치하고 
+Google+를 연락처 애플리케이션과 동기화하면, Google+ 서클이 
+연락처 애플리케이션의 <strong>그룹</strong> 탭에 표시되는 것을 볼 수 있습니다. Google+ 서클을 
+클릭하면 해당 서클에서 "그룹"으로 표시된 사람들을 볼 수 있습니다. 이 표시의 맨 위에 
+Google+ 아이콘이 표시되며, 이것을 클릭하면 제어가 
+Google+ 앱으로 전환됩니다. 연락처 애플리케이션은 이 작업을 
+{@code viewGroupActivity}로 수행하며, Google+ 아이콘을 
+{@code viewGroupActionLabel}의 값으로 사용합니다.
+        </p>
+        <p>
+            이 속성에서는 문자열 리소스 식별자가 허용됩니다.
+        </p>
+    </dd>
+    <dt>{@code viewStreamItemActivity}</dt>
+    <dd>
+        사용자가 원시 연락처의 스트림 항목을 클릭할 때 기기의 연락처 애플리케이션이 시작하는 
+애플리케이션 액티비티의 완전히 정규화된 클래스 이름입니다.
+    </dd>
+    <dt>{@code viewStreamItemPhotoActivity}</dt>
+    <dd>
+        사용자가 원시 연락처 스트림 항목의 사진을 클릭할 때 
+기기의 연락처 애플리케이션이 시작하는 애플리케이션 액티비티의 
+완전히 정규화된 클래스 이름입니다.
+    </dd>
+</dl>
+<h4 id="SocialStreamDataKind">&lt;ContactsDataKind&gt; 요소</h4>
+<p>
+    <code>&lt;ContactsDataKind&gt;</code> 요소는 연락처 애플리케이션 UI에서 애플리케이션의 사용자 지정 데이터 행 표시를 
+제어합니다. 이 요소에는 다음 구문이 있습니다.
+</p>
+<pre>
+&lt;ContactsDataKind
+        android:mimeType="<em>MIMEtype</em>"
+        android:icon="<em>icon_resources</em>"
+        android:summaryColumn="<em>column_name</em>"
+        android:detailColumn="<em>column_name</em>"&gt;
+</pre>
+<p>
+    <strong>포함 장소:</strong>
+</p>
+<code>&lt;ContactsAccountType&gt;</code>
+<p>
+    <strong>설명:</strong>
+</p>
+<p>
+    이 요소를 사용하여 연락처 애플리케이션이 사용자 지정 데이터 행의 콘텐츠를 
+원시 연락처 세부 정보의 일부로 표시하게 합니다. <code>&lt;ContactsAccountType&gt;</code>의 각 <code>&lt;ContactsDataKind&gt;</code> 하위 요소는 
+동기화 어댑터가 {@link android.provider.ContactsContract.Data}에 추가하는 
+사용자 지정 데이터 행의 유형을 나타냅니다. 개발자가 사용하는 사용자 지정 MIME 유형 하나마다 
+<code>&lt;ContactsDataKind&gt;</code> 요소를 하나씩 추가합니다. 데이터를 
+표시하는 것을 원치 않는 사용자 지정 데이터 행이 있으면, 이 요소를 추가하지 않아도 됩니다.
+</p>
+<p>
+    <strong>속성:</strong>
+</p>
+<dl>
+    <dt>{@code android:mimeType}</dt>
+    <dd>
+        {@link android.provider.ContactsContract.Data} 테이블에서 
+사용자 지정 데이터 행 유형 중 하나로 지정한 사용자 지정 MIME 유형입니다. 예를 들어, 
+<code>vnd.android.cursor.item/vnd.example.locationstatus</code> 값은 연락처의 마지막으로 알려진 위치를 기록하는 
+데이터 행에 대한 사용자 지정 MIME 유형이 될 수 있습니다.
+    </dd>
+    <dt>{@code android:icon}</dt>
+    <dd>
+        연락처 애플리케이션이 개발자의 데이터 옆에 표시하는 
+Android <a href="{@docRoot}guide/topics/resources/drawable-resource.html">드로어블 리소스</a>
+입니다. 이 리소스를 사용하여 사용자에게 
+데이터 출처가 개발자의 서비스임을 나타내는 것입니다.
+    </dd>
+    <dt>{@code android:summaryColumn}</dt>
+    <dd>
+        데이터 행에서 검색한 두 개 값 중에서 첫 번째 값에 대한 열 이름입니다. 이 값은 
+이 데이터 행에 대한 항목의 첫 번째 줄로 표시됩니다. 첫 번째 줄은 
+데이터 요약으로 사용되는 것이 본 목적이지만, 이것은 선택 사항입니다. 
+<a href="#detailColumn">android:detailColumn</a>도 참조하십시오.
+    </dd>
+    <dt>{@code android:detailColumn}</dt>
+    <dd>
+        데이터 행에서 검색한 두 개 값 중에서 두 번째 값에 대한 열 이름입니다. 이 값은
+이 데이터 행에 대한 항목의 두 번째 줄로 표시됩니다. 
+{@code android:summaryColumn}도 참조하십시오.
+    </dd>
+</dl>
+<h2 id="AdditionalFeatures">추가 연락처 제공자 기능</h2>
+<p>
+    이전 섹션에서 설명한 주요 기능 외에도 연락처 제공자는 연락처 데이터를 다루는 데 
+유용한 기능을 많이 제공합니다. 예를 들면 다음과 같습니다.
+</p>
+    <ul>
+       <li>연락처 그룹</li>
+       <li>사진 기능</li>
+    </ul>
+<h3 id="Groups">연락처 그룹</h3>
+<p>
+    연락처 제공자는 관련된 연락처 컬렉션에 
+<strong>그룹</strong> 데이터로 레이블을 붙이기로 선택할 수 있습니다. 사용자 계정과 연관된 서버에서 
+그룹을 관리하고자 하는 경우, 계정의 계정 유형에 대한 동기화 어댑터가 
+연락처 제공자와 서버 사이에서 그룹 데이터를 전송해야 합니다. 사용자가 해당 서버에 새 연락처를 추가하고 
+이 연락처를 새 그룹에 넣으면, 동기화 어댑터가 해당 새 그룹을
+{@link android.provider.ContactsContract.Groups} 테이블에 추가해야 합니다. 원시 연락처가 속한 그룹(또는 여러 그룹)은 
+{@link android.provider.ContactsContract.Data} 테이블에 저장되며, 이때 
+{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership} MIME 유형을 사용합니다.
+</p>
+<p>
+    개발자가 서버에서 가져온 원시 연락처 데이터를 연락처 제공자에 추가할 
+동기화 어댑터를 디자인하는 중이고 그룹은 사용하지 않는다면, 
+제공자 쪽에 데이터를 표시하라고 지시해야 합니다. 사용자가 기기에 계정을 추가했을 때 실행되는 코드에서 
+연락처 제공자가 계정에 추가하는{@link android.provider.ContactsContract.Settings} 행을 
+업데이트하십시오. 이 행에서 
+{@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE
+Settings.UNGROUPED_VISIBLE} 열의 값을 1로 설정합니다. 이렇게 하면 연락처 제공자가 
+개발자의 연락처 데이터를 항상 표시하게 되고, 이는 그룹을 사용하지 않더라도 관계 없습니다.
+</p>
+<h3 id="Photos">연락처 사진</h3>
+<p>
+    {@link android.provider.ContactsContract.Data} 테이블은
+{@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+Photo.CONTENT_ITEM_TYPE} MIME 유형으로 사진을 행에 저장합니다. 이 행의 
+{@link android.provider.ContactsContract.RawContactsColumns#CONTACT_ID} 열은 
+행이 속한 원시 연락처의 {@code android.provider.BaseColumns#_ID} 열과 연결됩니다.
+    클래스 {@link android.provider.ContactsContract.Contacts.Photo}는 
+연락처 기본 사진의 사진 정보가 들어있는 {@link android.provider.ContactsContract.Contacts} 하위 테이블을 정의합니다. 
+연락처의 기본 사진은 연락처 기본 원시 연락처의 기본 사진입니다. 마찬가지로, 
+{@link android.provider.ContactsContract.RawContacts.DisplayPhoto} 클래스는
+원시 연락처의 기본 사진의 사진 정보가 들어있는 {@link android.provider.ContactsContract.RawContacts} 하위 테이블을
+정의합니다.
+</p>
+<p>
+    {@link android.provider.ContactsContract.Contacts.Photo} 및 
+{@link android.provider.ContactsContract.RawContacts.DisplayPhoto}에 대한 참조 문서에 
+사진 정보를 검색하는 예시가 들어있습니다. 원시 연락처에 대한 기본 미리 보기를 검색하는 데 쓰이는 
+편의 클래스는 없습니다. 하지만 
+{@link android.provider.ContactsContract.Data} 테이블에 쿼리를 보내 원시 연락처의 
+{@code android.provider.BaseColumns#_ID}, 
+    {@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+    Photo.CONTENT_ITEM_TYPE}, 및 {@link android.provider.ContactsContract.Data#IS_PRIMARY}
+ 열을 선택하면 해당 원시 연락처의 기본 사진 행을 찾을 수 있습니다.
+</p>
+<p>
+    한 사람의 소셜 스트림 데이터에도 사진이 포함되어 있을 수 있습니다. 이런 사진은 
+{@code android.provider.ContactsContract.StreamItemPhotos} 테이블에 저장되며, 이 내용은 
+<a href="#StreamPhotos">소셜 스트림 사진</a>에 더 자세하게 설명되어 있습니다.
+</p>
diff --git a/docs/html-intl/intl/ko/guide/topics/providers/content-provider-basics.jd b/docs/html-intl/intl/ko/guide/topics/providers/content-provider-basics.jd
new file mode 100644
index 0000000..953f92a
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/providers/content-provider-basics.jd
@@ -0,0 +1,1196 @@
+page.title=콘텐츠 제공자 기본 정보
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<!-- In this document -->
+<h2>이 문서의 내용</h2>
+<ol>
+    <li>
+        <a href="#Basics">개요</a>
+        <ol>
+            <li>
+                <a href="#ClientProvider">제공자 액세스</a>
+            </li>
+            <li>
+                <a href="#ContentURIs">콘텐츠 URI</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#SimpleQuery">제공자에서 데이터 검색</a>
+        <ol>
+            <li>
+                <a href="#RequestPermissions">읽기 액세스 권한 요청</a>
+            </li>
+            <li>
+                <a href="#Query">쿼리 구성</a>
+            </li>
+            <li>
+                <a href="#DisplayResults">쿼리 결과 표시</a>
+            </li>
+            <li>
+                <a href="#GettingResults">쿼리 결과에서 데이터 가져오기</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#Permissions">콘텐츠 제공자 권한</a>
+    </li>
+    <li>
+        <a href="#Modifications">데이터 삽입, 업데이트 및 삭제</a>
+        <ol>
+            <li>
+                <a href="#Inserting">데이터 삽입</a>
+            </li>
+            <li>
+                <a href="#Updating">데이터 업데이트</a>
+            </li>
+            <li>
+                <a href="#Deleting">데이터 삭제</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#DataTypes">제공자 데이터 유형</a>
+    </li>
+    <li>
+        <a href="#AltForms">제공자 액세스의 대체 형식</a>
+        <ol>
+            <li>
+                <a href="#Batch">일괄 액세스</a>
+            </li>
+            <li>
+                <a href="#Intents">인텐트를 통한 데이터 액세스</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClasses">계약 클래스</a>
+    </li>
+    <li>
+        <a href="#MIMETypeReference">MIME 유형 참조</a>
+    </li>
+</ol>
+
+    <!-- Key Classes -->
+<h2>Key 클래스</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.content.ContentResolver}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+
+    <!-- Related Samples -->
+<h2>관련 샘플</h2>
+    <ol>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        커서(피플)</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        커서(전화)</a>
+        </li>
+    </ol>
+
+    <!-- See also -->
+<h2>참고 항목</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+        콘텐츠 제공자 생성</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+        캘린더 제공자</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+    <!-- Intro paragraphs -->
+<p>
+    콘텐츠 제공자는 데이터의 중앙 리포지토리로의 액세스를 관리합니다. 
+제공자는 Android 애플리케이션의 일부이며, 이는 종종 나름의 UI를 제공하여 데이터에 작용하도록 합니다.
+ 그러나 콘텐츠 제공자는 기본적으로 다른 애플리케이션이 사용하도록 만들어진 것입니다. 
+이들은 제공자 클라이언트 개체를 사용하여 제공자에 액세스합니다. 
+제공자와 제공자 클라이언트가 결합되면 데이터에 하나의 일관적인 표준 인터페이스를 제공하여 
+이것이 프로세스간 통신과 보안 데이터 액세스도 처리합니다.
+</p>
+<p>
+    이 주제에서는 다음의 기본 정보를 설명합니다.
+</p>
+    <ul>
+        <li>콘텐츠 제공자의 작동 원리</li>
+        <li>콘텐츠 제공자에서 데이터를 검색할 때 사용하는 API</li>
+        <li>콘텐츠 제공자 내의 데이터를 삽입, 업데이트 및 삭제하는 데 사용하는 API</li>
+        <li>제공자를 다루는 데 도움이 되는 기타 API 기능</li>
+    </ul>
+
+    <!-- Basics -->
+<h2 id="Basics">개요</h2>
+<p>
+    콘텐츠 제공자는 외부 애플리케이션에 데이터를 표시하며, 이때 데이터는 
+관계형 데이터베이스에서 찾을 수 있는 테이블과 유사한 하나 이상의 테이블로서 표시됩니다. 
+한 행은 제공자가 수집하는 어떤 유형의 데이터 인스턴스를 나타내며, 
+행 안의 각 열은 인스턴스에 대해 수집된 개별적인 데이터를 나타냅니다.
+</p>
+<p>
+    예를 들어 Android 플랫폼 안에 내장된 여러 제공자 중에 사용자 사전이라는 것이 있습니다. 
+이것은 사용자가 보관하고 싶어하는 비표준 단어의 철자를 저장합니다. 표 1은 이 제공자의 테이블에서 
+데이터가 어떤 형태를 띨 수 있는지를 나타낸 것입니다.
+</p>
+<p class="table-caption">
+    <strong>표 1:</strong> 샘플 사용자 사전 테이블입니다.
+</p>
+<table id="table1" style="width: 50%;">
+    <tr>
+        <th style="width:20%" align="center" scope="col">단어</th>
+        <th style="width:20%" align="center" scope="col">앱 ID</th>
+        <th style="width:20%" align="center" scope="col">빈도</th>
+        <th style="width:20%" align="center" scope="col">로케일</th>
+        <th style="width:20%" align="center" scope="col">_ID</th>
+    </tr>
+    <tr>
+        <td align="center" scope="row">mapreduce</td>
+        <td align="center">user1</td>
+        <td align="center">100</td>
+        <td align="center">en_US</td>
+        <td align="center">1</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">precompiler</td>
+        <td align="center">user14</td>
+        <td align="center">200</td>
+        <td align="center">fr_FR</td>
+        <td align="center">2</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">applet</td>
+        <td align="center">user2</td>
+        <td align="center">225</td>
+        <td align="center">fr_CA</td>
+        <td align="center">3</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">const</td>
+        <td align="center">user1</td>
+        <td align="center">255</td>
+        <td align="center">pt_BR</td>
+        <td align="center">4</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">int</td>
+        <td align="center">user5</td>
+        <td align="center">100</td>
+        <td align="center">en_UK</td>
+        <td align="center">5</td>
+    </tr>
+</table>
+<p>
+    표 1에서, 각 행은 일반적인 사전에 나오지 않는 단어의 인스턴스를 
+나타냅니다. 각 열은 해당 단어에 대한 일부 데이터를 나타냅니다. 예를 들어 
+단어가 처음 나온 로케일 등을 들 수 있습니다. 열 헤더는 제공자에 저장된
+열 이름입니다. 행의 로케일을 참조하려면 그 행의 <code>locale</code> 열을 참조합니다. 
+이 제공자의 경우, <code>_ID</code> 열은 제공자가 자동으로 유지하는 "기본 키" 열
+역할을 합니다.
+</p>
+<p class="note">
+    <strong>참고:</strong> 제공자에 기본 키가 꼭 있어야 하는 것은 아니고, 
+기본 키가 있는 경우 <code>_ID</code>를 열 이름으로 사용하지 않아도 됩니다. 그러나 제공자의 데이터를 
+{@link android.widget.ListView}에 바인딩하려면 
+열 이름 중 하나는<code>_ID</code>여야 합니다. 이 요구 사항은
+<a href="#DisplayResults">쿼리 결과 표시</a> 섹션에 자세히 설명되어 있습니다.
+</p>
+<h3 id="ClientProvider">제공자 액세스</h3>
+<p>
+    애플리케이션은 콘텐츠 제공자로부터의 데이터에 
+{@link android.content.ContentResolver} 클라이언트 개체로 액세스합니다. 
+이 개체에는 제공자 개체 내의 같은 이름을 가진 메서드를 호출하는 메서드가 있습니다. 
+이는 {@link android.content.ContentProvider}의 구체적인 하위 클래스 중 하나의 인스턴스입니다. 
+{@link android.content.ContentResolver} 메서드는 
+영구적 저장소의 기본적인 "CRUD"(생성, 검색, 업데이트 및 삭제) 기능을 제공합니다.
+</p>
+<p>
+    클라이언트 애플리케이션의 프로세스 내에 있는 {@link android.content.ContentResolver} 개체와
+ 제공자를 소유하는 애플리케이션 내의 {@link android.content.ContentProvider} 개체가 
+자동으로 프로세스간 통신을 처리합니다.
+{@link android.content.ContentProvider} 또한 
+콘텐츠 제공자의 데이터 리포지토리와 외부에 테이블로 표시되는 데이터 모습 사이에서 추상화 계층 역할을 합니다.
+</p>
+<p class="note">
+    <strong>참고:</strong> 제공자에 액세스하려면 보통은 애플리케이션이 
+제공자의 매니페스트 파일에 있는 특정 권한을 요청해야 합니다. 이것은 
+<a href="#Permissions">콘텐츠 제공자 권한</a> 섹션에 더 자세히 설명되어 있습니다.
+</p>
+<p>
+    예를 들어 사용자 사전 제공자로부터 단어와 그에 해당하는 로케일 목록을 가져오려면,
+{@link android.content.ContentResolver#query ContentResolver.query()}를 호출하면 됩니다.
+    {@link android.content.ContentResolver#query query()} 메서드는 사용자 사전 제공자가 정의한
+{@link android.content.ContentProvider#query ContentProvider.query()} 메서드를
+호출합니다. 다음 몇 줄의 코드는 
+{@link android.content.ContentResolver#query ContentResolver.query()} 호출을 나타낸 것입니다.
+<p>
+<pre>
+// Queries the user dictionary and returns results
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,   // The content URI of the words table
+    mProjection,                        // The columns to return for each row
+    mSelectionClause                    // Selection criteria
+    mSelectionArgs,                     // Selection criteria
+    mSortOrder);                        // The sort order for the returned rows
+</pre>
+<p>
+    표 2는
+{@link android.content.ContentResolver#query
+query(Uri,projection,selection,selectionArgs,sortOrder)}에 대한 인수가 SQL SELECT 문과 일치하는 방식을 나타낸 것입니다.
+</p>
+<p class="table-caption">
+    <strong>표 2:</strong> Query()를 SQL 쿼리에 비교한 것입니다.
+</p>
+<table id="table2" style="width: 75%;">
+    <tr>
+        <th style="width:25%" align="center" scope="col">query() 인수</th>
+        <th style="width:25%" align="center" scope="col">SELECT 키워드/매개변수</th>
+        <th style="width:50%" align="center" scope="col">참고</th>
+    </tr>
+    <tr>
+        <td align="center"><code>Uri</code></td>
+        <td align="center"><code>FROM <em>table_name</em></code></td>
+        <td><code>Uri</code>가 <em>table_name</em>이라 불리는 제공자에 있는 테이블에 매핑됩니다.</td>
+    </tr>
+    <tr>
+        <td align="center"><code>projection</code></td>
+        <td align="center"><code><em>col,col,col,...</em></code></td>
+        <td>
+            <code>projection</code>은 검색된 각 행에 포함되어야 하는 일련의 열입니다.
+
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>selection</code></td>
+        <td align="center"><code>WHERE <em>col</em> = <em>value</em></code></td>
+        <td><code>selection</code>은 행을 선택하는 기준을 나타냅니다.</td>
+    </tr>
+    <tr>
+        <td align="center"><code>selectionArgs</code></td>
+        <td align="center">
+            (정확한 등가는 없습니다. 선택 인수는 선택 절에 있는 <code>?</code>
+ 자리 표시자를 대체합니다.)
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>sortOrder</code></td>
+        <td align="center"><code>ORDER BY <em>col,col,...</em></code></td>
+        <td>
+            <code>sortOrder</code>는 반환된 
+{@link android.database.Cursor} 내에 행이 나타나는 순서를 지정합니다.
+        </td>
+    </tr>
+</table>
+<h3 id="ContentURIs">콘텐츠 URI</h3>
+<p>
+    <strong>콘텐츠 URI</strong>는 제공자에서 데이터를 식별하는 URI입니다. 
+콘텐츠 URI에는 전체 제공자의 상징적인 이름(제공자의 <strong>권한</strong>)과
+테이블을 가리키는 이름(<strong>경로</strong>)이 포함됩니다. 
+제공자 내의 테이블에 액세스하기 위해 클라이언트 메서드를 호출하는 경우,
+그 테이블에 대한 콘텐츠 URI는 인수 중 하나입니다.
+</p>
+<p>
+    앞선 몇 줄의 코드에서 상수
+{@link android.provider.UserDictionary.Words#CONTENT_URI}에 
+사용자 사전의 "단어" 테이블의 콘텐츠 URI가 들어있습니다. {@link android.content.ContentResolver}
+ 개체가 이 URI의 권한을 구문 분석한 다음, 이를 이용해 제공자를 "확인"합니다. 즉 이 권한을 알려진 제공자로 이루어진 시스템 테이블과 비교하는 것입니다.
+ 
+그러면 {@link android.content.ContentResolver}가 쿼리 인수를 
+올바른 제공자에게 발송할 수 있습니다.
+</p>
+<p>
+    {@link android.content.ContentProvider}는 콘텐츠 URI의 경로 부분을 사용하여
+액세스할 테이블을 선택합니다. 제공자에는 보통 제공자가 노출하는 테이블마다 <strong>경로</strong>가 있습니다.
+</p>
+<p>
+    앞선 몇 줄의 코드에서 "단어" 테이블에 대한 전체 URI는 다음과 같습니다.
+</p>
+<pre>
+content://user_dictionary/words
+</pre>
+<p>
+    여기에서 <code>user_dictionary</code> 문자열은 제공자의 권한이고
+<code>words</code> 문자열은 테이블의 경로입니다. 문자열
+<code>content://</code>(<strong>구성표</strong>)는 언제나 표시되며,
+이것을 콘텐츠 URI로 식별합니다.
+</p>
+<p>
+    대다수의 제공자에서는 URI의 맨 끝에 ID 값을 추가하면 
+테이블 내 하나의 행에 액세스할 수 있게 해줍니다. 예를 들어 <code>_ID</code>가 
+사용자 사전의 <code>4</code>인 행을 검색하려면, 이 콘텐츠 URI를 사용하면 됩니다.
+</p>
+<pre>
+Uri singleUri = ContentUris.withAppendedId(UserDictionary.Words.CONTENT_URI,4);
+</pre>
+<p>
+    일련의 행을 검색한 다음 그 중 하나를 업데이트하거나 삭제하고자 하는 경우 종종 ID 값을 
+이용하곤 합니다.
+</p>
+<p class="note">
+    <strong>참고:</strong> {@link android.net.Uri}와 
+{@link android.net.Uri.Builder} 클래스에는 문자열에서 잘 구성된(Well-Formed) URI 개체를 구성하기 위한 편의 메서드가 들어 있습니다. 
+{@link android.content.ContentUris}에는 URI에 ID 값을 추가하기 위한 편의 메서드가 들어 있습니다.
+이전 조각은 {@link android.content.ContentUris#withAppendedId
+withAppendedId()}를 사용하여 UserDictionary 콘텐츠 URI에 ID를 추가합니다.
+</p>
+
+
+    <!-- Retrieving Data from the Provider -->
+<h2 id="SimpleQuery">제공자에서 데이터 검색</h2>
+<p>
+    이 섹션은 사용자 사전 제공자를 예시로 사용하여 제공자에서 데이터를 검색하는
+방법을 설명합니다.
+</p>
+<p class="note">
+    명확히 나타내기 위해 이 섹션의 코드 조각은 
+{@link android.content.ContentResolver#query ContentResolver.query()}를 "UI 스레드"에서 호출합니다. 
+그러나 실제 코드의 경우 쿼리는 별도의 스레드에서 비동기식으로 수행해야 합니다. 이를 위한 한 가지 방식으로
+{@link android.content.CursorLoader} 
+클래스를 쓰는 것을 들 수 있습니다. 이 내용은 <a href="{@docRoot}guide/components/loaders.html">
+로더</a> 가이드에 더 자세히 설명되어 있습니다. 또한, 이 코드 줄은 조각일 뿐이며 애플리케이션을 전체적으로 표시한 것이 아닙니다.
+
+</p>
+<p>
+    제공자에서 데이터를 검색하려면 다음과 같은 기본 단계를 따르십시오.
+</p>
+<ol>
+   <li>
+        제공자에 대한 읽기 액세스 권한을 요청합니다.
+   </li>
+   <li>
+        제공자에게 쿼리를 보내는 코드를 정의합니다.
+   </li>
+</ol>
+<h3 id="RequestPermissions">읽기 액세스 권한 요청</h3>
+<p>
+    제공자에서 데이터를 검색하려면 애플리케이션에 해당 제공자에 대한 "읽기 액세스 권한"이 필요합니다.
+ 런타임에는 이 권한을 요청할 수 없습니다. 대신 이 권한이 필요하다는 것을 매니페스트에 나타내야 합니다. 이때, 
+
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+ 요소와 제공자가 정의한 정확한 권한 이름을 사용하면 됩니다.
+ 매니페스트에서 이 요소를 지정하는 것은 사실상 애플리케이션을 위해 이 권한을 "요청"하는 것과 
+같습니다. 사용자가 애플리케이션을 설치할 때면, 이 요청을 암시적으로 허용하게 됩니다.
+
+</p>
+<p>
+    사용 중인 제공자에 대한 읽기 액세스 권한의 정확한 이름과 해당 제공자가 사용하는 
+다른 액세스 권한의 이름을 찾아보려면 제공자의 문서를 살펴보십시오.
+
+</p>
+<p>
+    제공자에 액세스하는 데 있어 권한이 어떤 역할을 하는지는 
+<a href="#Permissions">콘텐츠 제공자 권한</a> 섹션에 더 자세하게 설명되어 있습니다.
+</p>
+<p>
+    사용자 사전 제공자는 
+<code>android.permission.READ_USER_DICTIONARY</code> 권한을 자신의 매니페스트 파일에 정의합니다. 따라서 해당 제공자에서 
+읽기 작업을 하고자 하는 애플리케이션은 반드시 이 권한을 요청해야 합니다.
+</p>
+<!-- Constructing the query -->
+<h3 id="Query">쿼리 구성</h3>
+<p>
+    제공자에서 데이터를 검색할 때 다음 단계는 쿼리를 구성하는 것입니다. 다음의 첫 번째 조각은 
+사용자 사전 제공자에 액세스하는 데 필요한 몇 가지 변수를 정의한 것입니다.
+</p>
+<pre class="prettyprint">
+
+// A "projection" defines the columns that will be returned for each row
+String[] mProjection =
+{
+    UserDictionary.Words._ID,    // Contract class constant for the _ID column name
+    UserDictionary.Words.WORD,   // Contract class constant for the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant for the locale column name
+};
+
+// Defines a string to contain the selection clause
+String mSelectionClause = null;
+
+// Initializes an array to contain selection arguments
+String[] mSelectionArgs = {""};
+
+</pre>
+<p>
+    다음 조각은 사용자 사전 제공자를 예시로 사용하여 
+{@link android.content.ContentResolver#query ContentResolver.query()}를
+ 사용하는 방법을 나타낸 것입니다. 제공자 클라이언트 쿼리는 SQL 쿼리와 비슷하며, 
+반환할 열 집합과 선택 기준 집합, 그리고 정렬 순서가 이 안에 들어 있습니다.
+</p>
+<p>
+    쿼리가 반환해야 할 열 집합을 <strong>프로젝션</strong>
+(변수<code>mProjection</code>)이라고 합니다.
+</p>
+<p>
+    검색할 행을 나타내는 식은 선택 절과 선택 인수로 분할되어 있습니다.
+ 선택 절은 논리와 부울 식, 열 이름과 값
+(변수 <code>mSelectionClause</code>)을 조합한 것입니다. 
+값 대신 대체 가능한 매개변수 <code>?</code>를 지정하면, 
+쿼리 메서드가 그 값을 선택 인수 배열에서 검색합니다(변수 <code>mSelectionArgs</code>).
+</p>
+<p>
+    다음 조각의 경우, 사용자가 단어를 입력하지 않으면 선택 절이 
+<code>null</code>로 설정되고, 쿼리는 제공자 안의 모든 단어를 반환합니다. 
+사용자가 단어를 입력하면 선택 절은 <code>UserDictionary.Words.WORD + " = ?"</code>로 설정되며
+선택 인수의 첫 번째 요소가 사용자가 입력한 단어로 설정됩니다.
+</p>
+<pre class="prettyprint">
+/*
+ * This defines a one-element String array to contain the selection argument.
+ */
+String[] mSelectionArgs = {""};
+
+// Gets a word from the UI
+mSearchString = mSearchWord.getText().toString();
+
+// Remember to insert code here to check for invalid or malicious input.
+
+// If the word is the empty string, gets everything
+if (TextUtils.isEmpty(mSearchString)) {
+    // Setting the selection clause to null will return all words
+    mSelectionClause = null;
+    mSelectionArgs[0] = "";
+
+} else {
+    // Constructs a selection clause that matches the word that the user entered.
+    mSelectionClause = UserDictionary.Words.WORD + " = ?";
+
+    // Moves the user's input string to the selection arguments.
+    mSelectionArgs[0] = mSearchString;
+
+}
+
+// Does a query against the table and returns a Cursor object
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,  // The content URI of the words table
+    mProjection,                       // The columns to return for each row
+    mSelectionClause                   // Either null, or the word the user entered
+    mSelectionArgs,                    // Either empty, or the string the user entered
+    mSortOrder);                       // The sort order for the returned rows
+
+// Some providers return null if an error occurs, others throw an exception
+if (null == mCursor) {
+    /*
+     * Insert code here to handle the error. Be sure not to use the cursor! You may want to
+     * call android.util.Log.e() to log this error.
+     *
+     */
+// If the Cursor is empty, the provider found no matches
+} else if (mCursor.getCount() &lt; 1) {
+
+    /*
+     * Insert code here to notify the user that the search was unsuccessful. This isn't necessarily
+     * an error. You may want to offer the user the option to insert a new row, or re-type the
+     * search term.
+     */
+
+} else {
+    // Insert code here to do something with the results
+
+}
+</pre>
+<p>
+    이 쿼리는 SQL 문에 대한 아날로그입니다.
+</p>
+<pre>
+SELECT _ID, word, locale FROM words WHERE word = &lt;userinput&gt; ORDER BY word ASC;
+</pre>
+<p>
+    이 SQL 문에서는 계약 클래스 상수 대신 실제 열 이름을 사용하였습니다.
+</p>
+<h4 id="Injection">악의적인 입력에 대한 보호</h4>
+<p>
+    콘텐츠 제공자가 관리하는 데이터가 SQL 데이터베이스에 있는 경우, 
+원시 SQL 문에 외부의 신뢰할 수 없는 데이터를 포함시키면 SQL 삽입을 초래할 수 있습니다.
+</p>
+<p>
+    이 선택 절을 예로 들어 봅시다.
+</p>
+<pre>
+// Constructs a selection clause by concatenating the user's input to the column name
+String mSelectionClause =  "var = " + mUserInput;
+</pre>
+<p>
+    이렇게 하면 사용자로 하여금 여러분의 SQL 문에 악의적인 SQL을 연결할 수 있도록 허용합니다.
+    예를 들어 사용자가 <code>mUserInput</code>에 대해 "nothing; DROP TABLE *;"을 입력할 수 있습니다. 
+그러면 그 결과로 선택 절 <code>var = nothing; DROP TABLE *;</code>이 나옵니다. 
+선택 절이 일종의 SQL 문으로 취급되었기 때문에 제공자가 기본 SQLite 데이터베이스에서 테이블을 
+모두 삭제하는 결과를 낳을 수도 있습니다(제공자가 <a href="http://en.wikipedia.org/wiki/SQL_injection">SQL 삽입</a> 
+시도를 잡아내도록 설정된 경우는 예외입니다).
+</p>
+<p>
+    이 문제를 피하려면 <code>?</code>를 대체 가능한 매개변수로 사용하는 선택 절과, 
+별도의 선택 인수 배열을 사용하면 됩니다. 이렇게 하면, 사용자 입력이 SQL 문의 일부로 해석되기보다 쿼리에 직접 바인딩됩니다.
+
+    이것은 SQL로 취급되지 않기 때문에 사용자 입력이 악의적인 SQL을 삽입할 수 없습니다. 
+사용자 입력을 포함하는 데 연결을 사용하는 대신 다음 선택 절을 사용합니다.
+</p>
+<pre>
+// Constructs a selection clause with a replaceable parameter
+String mSelectionClause =  "var = ?";
+</pre>
+<p>
+    선택 인수 배열을 이렇게 설정합니다.
+</p>
+<pre>
+// Defines an array to contain the selection arguments
+String[] selectionArgs = {""};
+</pre>
+<p>
+    선택 인수 배열에 값을 입력할 때는 이렇게 합니다.
+</p>
+<pre>
+// Sets the selection argument to the user's input
+selectionArgs[0] = mUserInput;
+</pre>
+<p>
+    <code>?</code>를 대체 가능한 매개변수로 사용하는 선택 절과 
+선택 인수 배열을 사용하는 것이 선택을 지정하는 데 선호되는 방법입니다. 
+이는 제공자가 SQL 데이터베이스 기반이 아닐 때에도 마찬가지입니다.
+</p>
+<!-- Displaying the results -->
+<h3 id="DisplayResults">쿼리 결과 표시</h3>
+<p>
+    {@link android.content.ContentResolver#query ContentResolver.query()} 
+클라이언트 메서드는 언제나 쿼리 선택 기준과 일치하는 행에 대해 쿼리 프로젝션이 지정한 열을 포함하는
+{@link android.database.Cursor}를 반환합니다. 
+{@link android.database.Cursor} 개체가 자신이 포함한 행과 열에 무작위 읽기 액세스를 제공합니다.
+ {@link android.database.Cursor} 메서드를 사용하면 행을 결과에서 반복할 수 있고, 
+각 열의 데이터 유형을 결정하며 열에서 데이터를 꺼내거나 결과의 다른 속성을 검토할 수도 있습니다.
+ 일부 {@link android.database.Cursor} 구현은 제공자의 데이터가 변경될 경우,
+{@link android.database.Cursor}가 변경될 때 관찰자 개체 내의 메서드를 트리거하는 경우 
+또는 두 가지가 한 번에 발생할 경우 자동으로 개체를 업데이트합니다.
+</p>
+<p class="note">
+    <strong>참고:</strong> 제공자는 쿼리를 수행하는 개체의 성격을 근거로 
+열에 대한 액세스를 제한할 수 있습니다. 예를 들어 연락처 제공자는 동기화 어댑터로의 몇몇 열에 대한 액세스를 제한합니다. 
+이렇게 해야 액티비티 또는 서비스에 열을 반환하지 않기 때문입니다.
+</p>
+<p>
+    선택 기준에 일치하는 행이 없으면, 제공자는 
+{@link android.database.Cursor} 개체를 반환합니다. 이 개체의 
+{@link android.database.Cursor#getCount Cursor.getCount()}는 0(빈 커서)입니다.
+</p>
+<p>
+    내부 오류가 발생하는 경우, 쿼리 결과는 특정 제공자에 따라 달라집니다. 
+<code>null</code>을 반환하기로 선택할 수도 있고, {@link java.lang.Exception}을 발생시킬 수도 있습니다.
+</p>
+<p>
+    {@link android.database.Cursor}는 행의 "목록"이므로,
+{@link android.database.Cursor}의 콘텐츠를 표시하는 좋은 방법은 {@link android.widget.SimpleCursorAdapter}를 통해 {@link android.widget.ListView}에
+연결하는 것입니다.
+</p>
+<p>
+    다음 조각은 이전 조각으로부터 코드를 계속 이어가는 것입니다. 
+이는 해당 쿼리가 검색한 {@link android.database.Cursor}가 들어 있는
+{@link android.widget.SimpleCursorAdapter} 개체를 생성하며, 이 개체를 
+{@link android.widget.ListView}에 대한 어댑터로 설정합니다.
+</p>
+<pre class="prettyprint">
+// Defines a list of columns to retrieve from the Cursor and load into an output row
+String[] mWordListColumns =
+{
+    UserDictionary.Words.WORD,   // Contract class constant containing the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant containing the locale column name
+};
+
+// Defines a list of View IDs that will receive the Cursor columns for each row
+int[] mWordListItems = { R.id.dictWord, R.id.locale};
+
+// Creates a new SimpleCursorAdapter
+mCursorAdapter = new SimpleCursorAdapter(
+    getApplicationContext(),               // The application's Context object
+    R.layout.wordlistrow,                  // A layout in XML for one row in the ListView
+    mCursor,                               // The result from the query
+    mWordListColumns,                      // A string array of column names in the cursor
+    mWordListItems,                        // An integer array of view IDs in the row layout
+    0);                                    // Flags (usually none are needed)
+
+// Sets the adapter for the ListView
+mWordList.setAdapter(mCursorAdapter);
+</pre>
+<p class="note">
+    <strong>참고:</strong> {@link android.database.Cursor}로 {@link android.widget.ListView}를 뒷받침하려면,
+커서에 <code>_ID</code>라는 열이 포함되어야 합니다.
+    이것 때문에 이전에 표시된 쿼리가 "단어" 테이블에 대하여 <code>_ID</code> 열을 
+검색하며, {@link android.widget.ListView}가 이를 표시하지 않더라도 무관합니다.
+    이 제한은 대부분의 제공자에 각 테이블에 대한 <code>_ID</code> 열이 있는 이유를 설명해주기도 합니다.
+
+</p>
+
+        <!-- Getting data from query results -->
+<h3 id="GettingResults">쿼리 결과에서 데이터 가져오기</h3>
+<p>
+    쿼리 결과를 단순히 표시만 하는 것보다 이를 다른 작업에 사용할 수 있습니다. 
+예를 들어, 사용자 사전에서 철자를 검색한 다음 이것을 다른 제공자 내에서 찾아볼 수 있습니다.
+ 이렇게 하려면, {@link android.database.Cursor}에서 행을 계속 반복하면 됩니다.
+</p>
+<pre class="prettyprint">
+
+// Determine the column index of the column named "word"
+int index = mCursor.getColumnIndex(UserDictionary.Words.WORD);
+
+/*
+ * Only executes if the cursor is valid. The User Dictionary Provider returns null if
+ * an internal error occurs. Other providers may throw an Exception instead of returning null.
+ */
+
+if (mCursor != null) {
+    /*
+     * Moves to the next row in the cursor. Before the first movement in the cursor, the
+     * "row pointer" is -1, and if you try to retrieve data at that position you will get an
+     * exception.
+     */
+    while (mCursor.moveToNext()) {
+
+        // Gets the value from the column.
+        newWord = mCursor.getString(index);
+
+        // Insert code here to process the retrieved word.
+
+        ...
+
+        // end of while loop
+    }
+} else {
+
+    // Insert code here to report an error if the cursor is null or the provider threw an exception.
+}
+</pre>
+<p>
+    {@link android.database.Cursor} 구현에는 
+여러 개의 "가져오기" 메서드가 들어 있어 개체로부터 여러 가지 유형의 데이터를 검색합니다. 예를 들어 이전 조각에서는 
+{@link android.database.Cursor#getString getString()}을 사용합니다. 
+여기에는 해당 열의 데이터 유형을 나타내는 값을 반환하는 
+{@link android.database.Cursor#getType getType()} 메서드도 있습니다.
+</p>
+
+
+    <!-- Requesting permissions -->
+<h2 id="Permissions">콘텐츠 제공자 권한</h2>
+<p>
+    제공자의 애플리케이션은 해당 제공자의 데이터에 액세스하려면 다른 애플리케이션이 반드시 가지고 있어야 하는 
+권한을 지정할 수 있습니다. 이와 같은 권한을 통해 사용자는 한 애플리케이션이 어느 데이터에 액세스하려 시도할지 
+알 수 있습니다. 다른 애플리케이션은 제공자의 요구 사항을 근거로 해당 제공자에 액세스하기 위해 필요한 
+권한을 요청합니다. 최종 사용자는 애플리케이션을 설치할 때 요청된 권한을 보게 됩니다.
+
+</p>
+<p>
+    제공자의 애플리케이션이 아무 권한도 지정하지 않은 경우, 다른 애플리케이션은 해당 제공자의 
+데이터에 액세스할 수 없습니다. 그러나 제공자의 애플리케이션 내에 있는 구성 요소는 
+지정된 권한과 무관하게 항상 읽기 및 쓰기 액세스 권한을 모두 가지고 있습니다.
+</p>
+<p>
+    이전에 언급한 것과 같이 사용자 사전 제공자에서 데이터를 검색하려면 
+<code>android.permission.READ_USER_DICTIONARY</code> 권한이 필요합니다.
+    이 제공자에게는 데이터 삽입, 업데이트 또는 삭제에 각각 별도의 <code>android.permission.WRITE_USER_DICTIONARY</code>
+권한이 있습니다.
+</p>
+<p>
+    제공자에 액세스하는 데 필요한 권한을 얻으려면 애플리케이션은 
+자신의 매니페스트 파일에 있는 <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+으로 그러한 권한을 요청합니다. Android 패키지 관리자가 애플리케이션을 설치하는 경우, 
+사용자는 애플리케이션이 요청하는 권한을 모두 승인해야 합니다. 사용자가 이를 모두 승인하면
+패키지 관리자가 설치를 계속하지만, 사용자가 이를 승인하지 않으면 패키지 관리자는 설치를 중단합니다.
+
+</p>
+<p>
+    
+다음 <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+ 요소는 사용자 사전 제공자에 읽기 액세스 권한을 요청하는 것입니다.
+</p>
+<pre>
+    &lt;uses-permission android:name="android.permission.READ_USER_DICTIONARY"&gt;
+</pre>
+<p>
+    제공자 액세스 권한이 미치는 영향은 
+<a href="{@docRoot}guide/topics/security/security.html">보안 및 권한</a> 가이드에 좀 더 자세히 설명되어 있습니다.
+</p>
+
+
+<!-- Inserting, Updating, and Deleting Data -->
+<h2 id="Modifications">데이터 삽입, 업데이트 및 삭제</h2>
+<p>
+    제공자로부터 데이터를 검색하는 것과 같은 방식으로, 데이터를 수정할 때에도 제공자 클라이언트와 제공자의 
+{@link android.content.ContentProvider} 사이의 상호작용을 사용합니다.
+    {@link android.content.ContentResolver}의 메서드를 호출하면서 
+{@link android.content.ContentProvider}의 상응하는 메서드로 전달된 인수를 사용합니다. 
+제공자와 제공자의 클라이언트가 보안과 프로세스간 통신을 자동으로 처리합니다.
+</p>
+<h3 id="Inserting">데이터 삽입</h3>
+<p>
+    데이터를 제공자 안으로 삽입하려면, 
+{@link android.content.ContentResolver#insert ContentResolver.insert()}
+ 메서드를 호출합니다. 이 메서드는 제공자에 새로운 행을 삽입하고 해당 열에 대한 콘텐츠 URI를 반환합니다.
+    이 조각은 사용자 사전 제공자에 새 단어를 삽입하는 방법을 나타낸 것입니다.
+</p>
+<pre class="prettyprint">
+// Defines a new Uri object that receives the result of the insertion
+Uri mNewUri;
+
+...
+
+// Defines an object to contain the new values to insert
+ContentValues mNewValues = new ContentValues();
+
+/*
+ * Sets the values of each column and inserts the word. The arguments to the "put"
+ * method are "column name" and "value"
+ */
+mNewValues.put(UserDictionary.Words.APP_ID, "example.user");
+mNewValues.put(UserDictionary.Words.LOCALE, "en_US");
+mNewValues.put(UserDictionary.Words.WORD, "insert");
+mNewValues.put(UserDictionary.Words.FREQUENCY, "100");
+
+mNewUri = getContentResolver().insert(
+    UserDictionary.Word.CONTENT_URI,   // the user dictionary content URI
+    mNewValues                          // the values to insert
+);
+</pre>
+<p>
+    새로운 행에 대한 데이터는 단일 행 커서와 형태가 유사한 단일 {@link android.content.ContentValues} 개체로
+이동합니다. 이 개체 내의 열은 모두 같은 데이터 유형을 가지지 않아도 됩니다. 
+또한 아예 값을 지정하고 싶지 않은 경우라면 열을 <code>null</code>로 설정할 수 있습니다. 
+이때 {@link android.content.ContentValues#putNull ContentValues.putNull()}을 사용하면 됩니다.
+</p>
+<p>
+    조각은 <code>_ID</code> 열을 추가하지 않습니다. 이 열은 자동으로 유지관리되기 때문입니다.
+ 제공자는 추가된 모든 열마다 고유한 <code>_ID</code> 값을 할당합니다.
+ 제공자는 보통 이 값을 테이블의 기본 키로 사용합니다.
+</p>
+<p>
+    <code>newUri</code>에 반환된 콘텐츠 URI는 다음과 같은 형식으로 새로 추가된 행을 식별합니다.
+
+</p>
+<pre>
+content://user_dictionary/words/&lt;id_value&gt;
+</pre>
+<p>
+    <code>&lt;id_value&gt;</code>는 새로운 행에 대한 <code>_ID</code>의 콘텐츠입니다.
+    대부분의 제공자는 이런 형태의 콘텐츠 URI를 자동으로 감지할 수 있으며, 그런 다음 해당 행에서 요청된 작업을 수행합니다.
+
+</p>
+<p>
+    반환된 {@link android.net.Uri}에서 <code>_ID</code> 값을 가져오려면
+{@link android.content.ContentUris#parseId ContentUris.parseId()}를 호출합니다.
+</p>
+<h3 id="Updating">데이터 업데이트</h3>
+<p>
+    행을 업데이트하려면 업데이트된 값과 함께 {@link android.content.ContentValues} 개체를 사용합니다. 
+이때 값은 삽입할 때와 똑같고, 선택 기준은 쿼리할 때와 같습니다.
+    사용하는 클라이언트 메서드는
+{@link android.content.ContentResolver#update ContentResolver.update()}입니다. 
+값을 추가하는 것은 업데이트 중인 열에 대한 {@link android.content.ContentValues} 개체에만 하면 됩니다. 
+열의 콘텐츠를 삭제하려면, 값을 <code>null</code>로 설정하십시오.
+</p>
+<p>
+    다음 조각에서는 로케일이 언어 "en"인 행 모두를 로케일 <code>null</code>을 가지도록 변경합니다.
+ 반환 값이 업데이트된 행 수입니다.
+</p>
+<pre>
+// Defines an object to contain the updated values
+ContentValues mUpdateValues = new ContentValues();
+
+// Defines selection criteria for the rows you want to update
+String mSelectionClause = UserDictionary.Words.LOCALE +  "LIKE ?";
+String[] mSelectionArgs = {"en_%"};
+
+// Defines a variable to contain the number of updated rows
+int mRowsUpdated = 0;
+
+...
+
+/*
+ * Sets the updated value and updates the selected words.
+ */
+mUpdateValues.putNull(UserDictionary.Words.LOCALE);
+
+mRowsUpdated = getContentResolver().update(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mUpdateValues                       // the columns to update
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    
+{@link android.content.ContentResolver#update ContentResolver.update()}를 호출하는 경우에는 사용자 입력도 삭제해야 합니다. 이 내용에 관해 자세히 알아보려면
+<a href="#Injection">악의적인 입력에 대한 보호</a> 섹션을 읽어 보십시오.
+</p>
+<h3 id="Deleting">데이터 삭제</h3>
+<p>
+    행을 삭제하는 것은 행 데이터를 검색하는 것과 비슷합니다. 즉, 삭제하고자 하는 행에 대한 선택 기준을 지정하면 
+클라이언트 메서드가 삭제된 행 수를 반환하는 식입니다.
+    다음 조각은 앱 ID가 "user"와 일치하는 행을 삭제합니다. 메서드가 삭제된 행 수를 반환합니다.
+
+</p>
+<pre>
+
+// Defines selection criteria for the rows you want to delete
+String mSelectionClause = UserDictionary.Words.APP_ID + " LIKE ?";
+String[] mSelectionArgs = {"user"};
+
+// Defines a variable to contain the number of rows deleted
+int mRowsDeleted = 0;
+
+...
+
+// Deletes the words that match the selection criteria
+mRowsDeleted = getContentResolver().delete(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    {@link android.content.ContentResolver#delete ContentResolver.delete()}를 
+호출하는 경우에는 사용자 입력도 삭제해야 합니다. 이 내용에 관해 자세히 알아보려면
+<a href="#Injection">악의적인 입력에 대한 보호</a> 섹션을 읽어 보십시오.
+</p>
+<!-- Provider Data Types -->
+<h2 id="DataTypes">제공자 데이터 유형</h2>
+<p>
+    콘텐츠 제공자는 아주 다양한 데이터 유형을 제공할 수 있습니다. 
+사용자 사전 제공자는 텍스트만 제공하지만, 제공자는 다음과 같은 형식도 제공할 수 있습니다.
+</p>
+    <ul>
+        <li>
+            정수
+        </li>
+        <li>
+            긴 정수(Long)
+        </li>
+        <li>
+            부동 소수점 수
+        </li>
+        <li>
+            긴 부동 소수점 수(double)
+        </li>
+    </ul>
+<p>
+    제공자가 종종 사용하는 또 다른 데이터 유형은 64KB 바이트 배열로 구현되는 BLOB(Binary Large OBject)입니다.
+ 이용 가능한 데이터 유형을 확인하려면 
+{@link android.database.Cursor} 클래스 "가져오기" 메서드를 살펴보면 됩니다.
+</p>
+<p>
+    제공자 내의 각 열에 대한 데이터 유형은 보통 자신의 문서에 목록으로 나열되어 있습니다.
+    사용자 사전 제공자의 데이터 유형은 제공자의 계약 클래스 
+{@link android.provider.UserDictionary.Words}의 참조 문서에 나열되어 있습니다(계약 클래스는
+<a href="#ContractClasses">계약 클래스</a> 섹션에 설명되어 있습니다).
+    @link android.database.Cursor#getType
+    Cursor.getType()}을 호출해서도 데이터 유형을 결정할 수 있습니다.
+</p>
+<p>
+    제공자는 스스로 정의하는 각 콘텐츠 URI의 MIME 데이터 유형 정보도 유지관리합니다. 
+MIME 유형 정보를 사용하면 애플리케이션이 제공자가 제공하는 데이터를 처리할 수 있을지 알아낼 수도 있고, 
+MIME 유형을 근거로 처리 유형을 선택할 수도 있습니다. 
+MIME 유형이 필요한 시점은 주로 복잡한 데이터 구조 또는 파일이 들어 있는 제공자를 다룰 때입니다.
+ 예를 들어 연락처 제공자 내의 {@link android.provider.ContactsContract.Data}
+ 테이블은 MIME 유형을 사용하여 각 행에 저장된 연락처 데이터의 유형에 레이블을 붙입니다.
+ 콘텐츠 URI에 상응하는 MIME 유형을 가져오려면 
+{@link android.content.ContentResolver#getType ContentResolver.getType()}을 호출하십시오.
+</p>
+<p>
+    <a href="#MIMETypeReference">MIME 유형 참조</a> 섹션에서 표준 및 사용자 지정 MIME 유형의 
+두 가지를 모두 설명하고 있습니다.
+</p>
+
+
+<!-- Alternative Forms of Provider Access -->
+<h2 id="AltForms">제공자 액세스의 대체 형식</h2>
+<p>
+    애플리케이션 개발에 있어 중요한 제공자 액세스의 대체 형식에는 다음과 같은 세 가지가 있습니다.
+</p>
+<ul>
+    <li>
+        <a href="#Batch">일괄 액세스</a>: {@link android.content.ContentProviderOperation}
+ 클래스에 있는 메서드로 일괄 액세스 호출을 생성하고
+{@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()}로 이를 적용할 수 있습니다.
+    </li>
+    <li>
+        비동기식 쿼리: 쿼리는 별도의 스레드에서 수행해야 합니다. 이 작업을 수행하는 한 가지 방법으로 
+{@link android.content.CursorLoader} 개체를 사용하는 것이 있습니다. 이 사용 방법은 
+<a href="{@docRoot}guide/components/loaders.html">로더</a> 가이드에 있는 예시에서 설명합니다.
+
+    </li>
+    <li>
+        <a href="#Intents">인텐트를 통한 데이터 액세스</a>: 
+인텐트를 제공자에 직접 보낼 수는 없지만, 인텐트를 제공자의 애플리케이션에 보낼 수는 있습니다.
+보통은 이것이 제공자의 데이터를 수정하기에 가장 좋습니다.
+    </li>
+</ul>
+<p>
+    일괄 액세스와 인텐트를 통한 수정은 다음 섹션에서 설명되어 있습니다.
+</p>
+<h3 id="Batch">일괄 액세스</h3>
+<p>
+    제공자에 일괄 액세스를 하면 많은 수의 행을 삽입할 때, 같은 메서드 호출 내에서 여러 개의 테이블에 여러 행을 삽입할 때 
+또는 전반적으로, 프로세스 경계를 가로질러 일련의 작업을 수행하는 경우(원자성 작업) 유용합니다.
+
+</p>
+<p>
+    "일괄 모드"로 제공자에 액세스하려면
+{@link android.content.ContentProviderOperation} 개체의 배열을 생성한 다음 이를 콘텐츠 제공자에게 
+{@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()}로
+ 발송하면 됩니다. 
+이 메서드에는 특정한 콘텐츠 URI보다는 콘텐츠 제공자의 <em>권한</em>을 전달합니다.
+이렇게 하면 배열 내의 각 {@link android.content.ContentProviderOperation} 개체가 
+서로 다른 테이블에 대해 작용하도록 할 수 있습니다. {@link android.content.ContentResolver#applyBatch
+    ContentResolver.applyBatch()}를 호출하면 일련의 결과를 반환합니다.
+</p>
+<p>
+    {@link android.provider.ContactsContract.RawContacts} 계약 클래스의 설명에
+ 일괄 삽입을 설명하는 코드 조각이 포함되어 있습니다. 
+<a href="{@docRoot}resources/samples/ContactManager/index.html">연락처 관리자</a>
+샘플 애플리케이션에는 <code>ContactAdder.java</code>
+소스 파일의 일괄 액세스 예시가 포함되어 있습니다.
+</p>
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>도우미 앱을 사용한 데이터 표시</h2>
+<p>
+    애플리케이션에 액세스 권한이 <em>있더라도</em> 
+다른 애플리케이션에 데이터를 표시할 인텐트를 사용하고자 할 수 있습니다. 예를 들어 캘린더 애플리케이션은 
+특정 날짜나 이벤트를 표시하는 {@link android.content.Intent#ACTION_VIEW}를 허용합니다.
+    이 때문에 나름의 UI를 직접 생성하지 않고도 캘린더 정보를 표시할 수 있습니다.
+이 기능에 대한 자세한 정보는 
+<a href="{@docRoot}guide/topics/providers/calendar-provider.html">캘린더 제공자</a> 가이드를 참조하십시오.
+</p>
+<p>
+    인텐트를 보낼 목적지인 애플리케이션은 제공자와 연관된 애플리케이션이 아니어도 됩니다.
+ 예를 들어 연락처 제공자에서 연락처를 검색한 다음, 해당 연락처의 이미지에 대한 콘텐츠 URI가 들어 있는 
+{@link android.content.Intent#ACTION_VIEW} 인텐트를 
+이미지 뷰어로 보낼 수 있습니다.
+</p>
+</div>
+</div>
+<h3 id="Intents">인텐트를 통한 데이터 액세스</h3>
+<p>
+    인텐트는 콘텐츠 제공자에 간접 액세스를 제공할 수 있습니다. 애플리케이션에 액세스 권한이 없는데도 
+사용자에게 제공자 내의 데이터에 액세스 권한을 허가하려면, 권한을 가지고 있는 애플리케이션에서 결과 인텐트를 다시 가져오거나 
+권한이 있는 애플리케이션을 활성화한 다음 사용자에게 그 애플리케이션에서 작업하도록 하면 됩니다.
+
+</p>
+<h4>임시 권한으로 액세스 얻기</h4>
+<p>
+    적절한 액세스 권한이 없더라도 콘텐츠 제공자 내의 데이터에 액세스할 수는 있습니다. 
+권한을 가지고 있는 애플리케이션에 인텐트를 보내 "URI" 권한이 들어 있는 결과 인텐트를 돌려받으면 됩니다.
+
+    이들 권한은 특정 콘텐츠 URI에 대한 권한으로, 이를 수신하는 액티비티가 완료될 때까지 유지됩니다.
+ 영구 권한을 가지고 있는 애플리케이션은 결과 인텐트에 다음과 같이 플래그를 설정하여 임시 권한을 허가합니다.
+
+</p>
+<ul>
+    <li>
+        <strong>읽기 권한:</strong>
+{@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}
+    </li>
+    <li>
+        <strong>쓰기 권한:</strong>
+{@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION}
+    </li>
+</ul>
+<p class="note">
+    <strong>참고:</strong> 이와 같은 플래그는 콘텐츠 URI에 권한이 들어 있는 제공자에 일반적인 읽기 또는 쓰기 액세스 
+권한을 부여하지는 않습니다. 이 액세스는 URI 자체에만 해당됩니다.
+</p>
+<p>
+    제공자는 자신의 매니페스트 내의 콘텐츠 URI에 대한 URI 권한을 정의합니다. 이때 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+ 요소의 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">android:grantUriPermission</a></code>
+ 속성을 사용하며, 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+ 요소의 
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+ 하위 요소도 사용합니다. 
+URI 권한 메커니즘은 "URI 권한" 섹션의 <a href="{@docRoot}guide/topics/security/security.html">보안 및 권한</a> 가이드에
+자세히 설명되어 있습니다.
+</p>
+<p>
+    예를 들어, {@link android.Manifest.permission#READ_CONTACTS} 권한이 없더라도
+연락처 제공자 내의 연락처에 대한 데이터를 검색할 수 있습니다. 
+이 작업을 하면 좋은 예로, 연락처에 기재된 사람의 생일에 전자 축하 카드를 보내주는 애플리케이션을 들 수 있습니다. 
+{@link android.Manifest.permission#READ_CONTACTS}를 요청하면 
+사용자의 연락처 전체와 해당 정보 일체에 대한 액세스를 부여하므로, 그 대신 애플리케이션에서 어느 연락처를 사용할지 사용자가 직접 제어하도록 해주는 편이 낫습니다.
+ 이렇게 하려면, 다음 절차를 사용합니다.
+</p>
+<ol>
+    <li>
+        애플리케이션이{@link android.app.Activity#startActivityForResult
+startActivityForResult()} 메서드를 사용해서
+{@link android.content.Intent#ACTION_PICK} 작업과 "contacts" MIME 유형
+{@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE}이 들어 있는 인텐트를 보냅니다.
+
+    </li>
+    <li>
+        이 인텐트는 피플 앱의 "선택" 액티비티에 대한 인텐트 필터와 일치하기 때문에, 이 액티비티가 전경으로 나옵니다.
+
+    </li>
+    <li>
+        선택 액티비티에서 사용자가 업데이트할 연락처를 선택합니다.
+ 이렇게 되면 선택 액티비티가 
+{@link android.app.Activity#setResult setResult(resultcode, intent)}
+를 호출하여 애플리케이션에 돌려줄 인텐트를 설정합니다. 
+이 인텐트에 사용자가 선택한 연락처의 콘텐츠 URI와 "추가" 플래그 
+{@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}이 들어 있습니다. 
+이러한 플래그가 URI에 앱으로의 권한을 허가하여 콘텐츠 URI가 가리킨 연락처에 대한 데이터를 읽을 수 있도록 합니다. 
+그런 다음 선택 액티비티는 {@link android.app.Activity#finish()}를 호출하여 
+애플리케이션에 제어를 반환합니다.
+    </li>
+    <li>
+        액티비티가 전경으로 돌아오고, 시스템은 액티비티의
+{@link android.app.Activity#onActivityResult onActivityResult()} 메서드를
+호출합니다. 이 메서드가 피플 앱의 선택 액티비티가 생성한 결과 인텐트를 수신합니다.
+
+    </li>
+    <li>
+        결과 인텐트로부터 받은 콘텐츠 URI를 사용하면 연락처 제공자에서 연락처의 데이터를 읽을 수 있습니다.
+이것은 매니페스트에서 제공자로의 영구 읽기 액세스 권한을 요청하지 않았어도 적용됩니다.
+ 그러면 연락처의 생일 정보나 당사자의 이메일 주소를 가져와 전자 축하 카드를 보낼 수 있게 됩니다.
+
+    </li>
+</ol>
+<h4>다른 애플리케이션 사용</h4>
+<p>
+    개발자에게 액세스 권한이 없는 데이터를 사용자가 수정할 수 있도록 허용하는 간단한 방법은 
+해당 권한을 가지고 있는 애플리케이션을 활성화한 다음 사용자에게 그곳에서 작업하도록 해주는 것입니다.
+</p>
+<p>
+    예를 들어, 캘린더 애플리케이션은
+애플리케이션의 삽입 UI를 활성화해주는 {@link android.content.Intent#ACTION_INSERT} 인텐트를 수락합니다. 애플리케이션이 UI를 미리 채우는 데 사용하는 이 인텐트의 "extras" 데이터를
+전달할 수 있게 됩니다. 반복적인 이벤트의 구문은 복잡하므로
+캘린더 제공자에 이벤트를 삽입하기 좋은 방법은
+{@link android.content.Intent#ACTION_INSERT}로 캘린더 앱을 활성화하고 사용자에게 그곳에서 이벤트를
+삽입하게 하는 것입니다.
+</p>
+<!-- Contract Classes -->
+<h2 id="ContractClasses">계약 클래스</h2>
+<p>
+    계약 클래스는 애플리케이션이 콘텐츠 URI, 열 이름, 인텐트 작업 및 콘텐츠 제공자의 다른 기능과
+작업할 수 있게 도와주는 상수를 정의합니다. 계약 클래스는 제공자와 함께 자동으로 포함되지 않습니다. 
+해당 제공자의 개발자가 이를 정의한 다음 다른 개발자가 사용할 수 있도록 해야 합니다.
+ Android 플랫폼 내에 포함된 제공자는 대부분 패키지 
+{@link android.provider} 안에 상응하는 계약 클래스를 가지고 있습니다.
+</p>
+<p>
+    예를 들어, 사용자 사전 제공자에는 콘텐츠 URI와 열 이름 상수가 들어 있는
+{@link android.provider.UserDictionary} 계약 클래스가 있습니다. 
+"단어" 테이블에 대한 콘텐츠 URI는 상수
+{@link android.provider.UserDictionary.Words#CONTENT_URI UserDictionary.Words.CONTENT_URI}에 정의됩니다.
+    {@link android.provider.UserDictionary.Words} 클래스에도 
+열 이름 상수가 들어 있으며, 이는 이 가이드의 예시 조각에서 사용됩니다. 
+예를 들어 쿼리 프로젝션은 다음과 같이 정의될 수 있습니다.
+</p>
+<pre>
+String[] mProjection =
+{
+    UserDictionary.Words._ID,
+    UserDictionary.Words.WORD,
+    UserDictionary.Words.LOCALE
+};
+</pre>
+<p>
+    또 다른 계약 클래스는 연락처 제공자의 {@link android.provider.ContactsContract}입니다.
+    이 클래스에 대한 참조 문서에는 예시 코드 조각이 포함되어 있습니다. 
+이것의 하위 클래스 중 하나인 {@link android.provider.ContactsContract.Intents.Insert}는
+ 인텐트와 인텐트 데이터의 상수가 들어 있는 계약 클래스입니다.
+</p>
+
+
+<!-- MIME Type Reference -->
+<h2 id="MIMETypeReference">MIME 유형 참조</h2>
+<p>
+    콘텐츠 제공자는 표준 MIME 미디어 유형이나 사용자 지정 MIME 유형 문자열, 또는 그 두 가지를 모두 반환할 수 있습니다.
+</p>
+<p>
+    MIME 유형의 형식은 다음과 같습니다.
+</p>
+<pre>
+<em>type</em>/<em>subtype</em>
+</pre>
+<p>
+    예를 들어, 잘 알려진 MIME 유형 <code>text/html</code>에는 <code>text</code> 유형과
+<code>html</code> 하위 유형이 있습니다. 제공자가 URI에 대해 이 유형을 반환하면,
+해당 URI를 사용하는 쿼리가 HTML 태그가 들어 있는 텍스트를 반환할 것이라는 뜻입니다.
+</p>
+<p>
+    사용자 지정 MIME 유형 문자열은 "공급업체별" MIME 유형이라고도 불리며 
+이쪽의 <em>유형</em>과 <em>하위 유형</em> 값이 더 복잡합니다. <em>유형</em> 값은 경우에 따라 항상 다음과 같습니다.
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>
+</pre>
+<p>
+    (여러 행의 경우)
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>
+</pre>
+<p>
+    (하나의 행의 경우).
+</p>
+<p>
+    <em>하위 유형</em>은 제공자별로 다릅니다. Android 내장 제공자는 보통 단순한 하위 유형을 가지고 있습니다.
+ 예를 들어 연락처 애플리케이션이 전화 번호에 대한 행을 생성한다고 합니다. 이때 애플리케이션은 해당 행에 다음과 같은 MIME 유형을 설정하게 됩니다.
+
+</p>
+<pre>
+vnd.android.cursor.item/phone_v2
+</pre>
+<p>
+    하위 유형 값은 단순히 <code>phone_v2</code>인 것을 눈여겨 보십시오.
+</p>
+<p>
+    다른 제공자 개발자도 해당 제공자의 권한과 테이블 이름을 근거로 나름의 하위 유형 패턴을 만들 수 있습니다.
+ 예를 들어 기차 시간표가 들어 있는 제공자가 있다고 생각해 보겠습니다.
+    제공자의 권한은 <code>com.example.trains</code>이고 이 안에 테이블
+Line1, Line2, Line3이 들어 있습니다. 다음과 같은 콘텐츠 URI에 대응하는 방식을 살펴보십시오.
+</p>
+<p>
+<pre>
+content://com.example.trains/Line1
+</pre>
+<p>
+    테이블 Line1의 경우, 제공자는 다음과 같은 MIME 유형을 반환합니다.
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.example.line1
+</pre>
+<p>
+     다음과 같은 콘텐츠 URI에 대응하는 방식을 살펴보십시오.
+</p>
+<pre>
+content://com.example.trains/Line2/5
+</pre>
+<p>
+    테이블 Line2의 행 5에 대해 제공자가 반환하는 MIME 유형은 다음과 같습니다.
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.example.line2
+</pre>
+<p>
+    대부분의 콘텐츠 제공자는 자신이 사용하는 MIME 유형에 대한 계약 클래스 상수를 정의합니다. 
+예를 들어, 연락처 제공자 계약 클래스 {@link android.provider.ContactsContract.RawContacts}는
+단일 연락처 행의 MIME 유행에 대한
+ 상수 {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE}을
+정의합니다.
+</p>
+<p>
+    한 행에 대한 콘텐츠 URI는 
+<a href="#ContentURIs">콘텐츠 URI</a> 섹션에 설명되어 있습니다.
+</p>
diff --git a/docs/html-intl/intl/ko/guide/topics/providers/content-provider-creating.jd b/docs/html-intl/intl/ko/guide/topics/providers/content-provider-creating.jd
new file mode 100644
index 0000000..6757194
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/providers/content-provider-creating.jd
@@ -0,0 +1,1214 @@
+page.title=        콘텐츠 제공자 생성
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<h2>이 문서의 내용</h2>
+<ol>
+    <li>
+        <a href="#DataStorage">데이터 저장소 설계</a>
+    </li>
+    <li>
+        <a href="#ContentURI">콘텐츠 URI 설계</a>
+    </li>
+    <li>
+        <a href="#ContentProvider">ContentProvider 클래스 구현</a>
+        <ol>
+            <li>
+                <a href="#RequiredAccess">필수 메서드</a>
+            </li>
+            <li>
+                <a href="#Query">query() 메서드 구현</a>
+            </li>
+            <li>
+                <a href="#Insert">insert() 메서드 구현</a>
+            </li>
+            <li>
+                <a href="#Delete">delete() 메서드 구현</a>
+            </li>
+            <li>
+                <a href="#Update">update() 메서드 구현</a>
+            </li>
+            <li>
+                <a href="#OnCreate">onCreate() 메서드 구현</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#MIMETypes">콘텐츠 제공자 MIME 유형 구현</a>
+        <ol>
+            <li>
+                <a href="#TableMIMETypes">테이블의 MIME 유형</a>
+            </li>
+            <li>
+                <a href="#FileMIMETypes">파일의 MIME 유형</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClass">계약 클래스 구현</a>
+    </li>
+    <li>
+        <a href="#Permissions">콘텐츠 제공자 권한 구현</a>
+    </li>
+    <li>
+        <a href="#ProviderElement">&lt;provider&gt; 요소</a>
+    </li>
+    <li>
+        <a href="#Intents">인텐트 및 데이터 액세스</a>
+    </li>
+</ol>
+<h2>Key 클래스</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+<h2>관련 샘플</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/NotePad/index.html">
+                메모장 샘플 애플리케이션
+            </a>
+        </li>
+    </ol>
+<h2>참고 항목</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        콘텐츠 제공자 기본 정보</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+        캘린더 제공자</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+
+<p>
+    콘텐츠 제공자는 데이터의 중앙 리포지토리로의 액세스를 관리합니다. Android 애플리케이션에서는 
+제공자를 하나 이상의 클래스로, 매니페스트 파일에 있는 요소와 함께 구현합니다.
+ 클래스 중 하나가 하위 클래스 
+{@link android.content.ContentProvider}를 구현하며, 
+이것이 제공자와 다른 애플리케이션 사이의 인터페이스입니다. 콘텐츠 제공자는 다른 애플리케이션에 데이터를 사용할 수 있게 해주도록 만들어져 있지만, 
+물론 애플리케이션 내에 사용자로 하여금 제공자가 관리하는 데이터를 쿼리하고 수정할 수 있게 허용하는 
+액티비티가 있을 수도 있습니다.
+</p>
+<p>
+    이 주제의 나머지 부분은 콘텐츠 제공자를 구축하기 위한 기본 단계 목록과 
+사용할 API 목록으로 이루어져 있습니다.
+</p>
+
+
+<!-- Before You Start Building -->
+<h2 id="BeforeYouStart">구축을 시작하기 전에</h2>
+<p>
+    제공자 구축을 시작하기 전에 우선 다음 단계를 수행하십시오.
+</p>
+<ol>
+    <li>
+        <strong>콘텐츠 제공자가 필요한지 결정합니다</strong>. 다음 기능 중 하나 이상을 제공하려면
+콘텐츠 제공자를 구축해야 합니다.
+        <ul>
+            <li>다른 애플리케이션에 복잡한 데이터나 파일을 제공하고자 하는 경우</li>
+            <li>사용자로 하여금 개발자의 앱에서 다른 앱으로 복잡한 데이터를 복사하도록 허용하고자 하는 경우</li>
+            <li>검색 프레임워크를 사용한 사용자 지정 검색 제안을 제공하고자 하는 경우</li>
+        </ul>
+    <p>
+        용도가 본인의 애플리케이션 안에서로 완전히 한정되어 있는 경우에는 
+제공자가 SQLite 데이터베이스를 사용하도록 하지 <em>않아도</em> 됩니다.
+    </p>
+    </li>
+    <li>
+        아직 읽지 않았다면, 지금 바로 
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+콘텐츠 제공자 기본 정보</a>를 읽고 제공자에 대해 자세히 알아보십시오.
+    </li>
+</ol>
+<p>
+    그런 다음, 다음 단계를 따라 제공자를 구축합니다.
+</p>
+<ol>
+    <li>
+        데이터를 위한 원시 저장소를 설계합니다. 콘텐츠 제공자는 두 가지 방식으로 데이터를 제공합니다.
+        <dl>
+            <dt>
+                파일 데이터
+            </dt>
+            <dd>
+                일반적으로 사진, 오디오 또는 동영상과 같은
+파일에 들어가는 데이터입니다. 이런 파일을 애플리케이션의 비공개 
+공간에 저장합니다. 제공자는 다른 애플리케이션으로부터 온 파일 요청에 응답하여 
+해당 파일로의 핸들을 제공할 수 있습니다.
+            </dd>
+            <dt>
+                "구조적" 데이터
+            </dt>
+            <dd>
+                일반적으로 데이터베이스, 배열 또는 유사 구조에 들어가는 데이터입니다.
+                이 데이터를 행과 열로 이루어진 테이블과 호환되는 형식으로 저장합니다. 
+행은 사람이나 인벤토리의 항목과 같은 엔티티를 나타냅니다. 
+열은 해당 엔티티에 대한 몇 가지 데이터, 예를 들어 사람 이름이나 항목 가격 등을 나타냅니다. 
+이 유형의 데이터를 저장하는 보편적인 방법은 SQLite 데이터베이스 안에 저장하는 것이지만,
+모든 유형의 영구적인 저장소를 사용해도 됩니다. Android 시스템에서 사용할 수 있는 저장소 유형에 대해 자세히 알아보려면,
+<a href="#DataStorage">
+데이터 저장소 설계</a> 섹션을 참조하십시오.
+            </dd>
+        </dl>
+    </li>
+    <li>
+        {@link android.content.ContentProvider} 클래스와
+필수 메서드의 구체적인 구현을 정의합니다. 이 클래스는 데이터와 나머지 Android 시스템 사이의
+인터페이스입니다. 이 클래스에 관한 자세한 정보는
+<a href="#ContentProvider">ContentProvider 클래스 구현</a> 섹션을 참조하십시오.
+    </li>
+    <li>
+        제공자의 권한 문자열, 그 콘텐츠 URI 및 열 이름을 정의합니다. 
+제공자 애플리케이션이 인텐트를 처리하게 하려면, 인텐트 작업과 추가 데이터 및
+플래그도 정의합니다. 데이터에 액세스하기를 원하는 애플리케이션에 요구할 권한도 
+정의합니다. 이 모든 값은 별도의 계약 클래스에서 상수로 정의하는 것을 고려해보는 
+것이 좋습니다. 이 클래스를 나중에 다른 개발자에게 노출할 수 있습니다. 
+콘텐츠 URI에 관한 자세한 정보는
+<a href="#ContentURI">콘텐츠 URI 설계</a> 섹션을 참조하십시오.
+        인텐트에 관한 자세한 정보는
+<a href="#Intents">인텐트 및 데이터 액세스</a> 섹션을 참조하십시오.
+    </li>
+    <li>
+        샘플 데이터, 또는 제공자와 클라우드 기반 데이터 사이에서
+데이터를 동기화할 수 있는 {@link android.content.AbstractThreadedSyncAdapter} 구현 등과 같이
+다른 선택적 조각을 추가합니다.
+    </li>
+</ol>
+
+
+<!-- Designing Data Storage -->
+<h2 id="DataStorage">데이터 저장소 설계</h2>
+<p>
+    콘텐츠 제공자는 구조화된 형식으로 저장된 데이터로의 인터페이스입니다. 
+인터페이스를 생성하기 전에 우선 데이터 저장 방식부터 결정해야 합니다. 
+데이터는 원하는 형식 아무 것으로나 저장할 수 있으며 그런 다음에 필요에 따라 해당 데이터를 읽고 쓸 인터페이스를 설계합니다.
+</p>
+<p>
+    다음은 Android에서 사용할 수 있는 몇 가지 데이터 저장소 기술입니다.
+</p>
+<ul>
+    <li>
+        Android 시스템에는 Android 자체 제공자가 테이블 지향적 데이터를
+저장하는 데 사용하는 SQLite 데이터베이스 API가 포함됩니다. 
+{@link android.database.sqlite.SQLiteOpenHelper} 클래스는 데이터베이스를 생성할 수 있게 돕고,
+{@link android.database.sqlite.SQLiteDatabase} 클래스는 데이터베이스 액세스를 위한
+기본 클래스입니다.
+        <p>
+            리포지토리를 구현하기 위해 데이터베이스를 사용하지 않아도 된다는 점을 기억하십시오. 
+제공자는 외부에 테이블 집합으로 나타나 관계적 데이터베이스와 비슷해 보이지만, 
+이것은 제공자의 내부 구현에 필요한 것은 아닙니다.
+        </p>
+    </li>
+    <li>
+        파일 데이터를 저장하는 데 있어 Android에는 다양한 파일 지향적 API가 있습니다.
+        파일 저장소에 관해 자세히 알아보려면
+<a href="{@docRoot}guide/topics/data/data-storage.html">데이터 저장소</a> 주제를 읽어 보십시오. 
+음악이나 동영상 등 미디어 관련 데이터를 제공하는 제공자를 설계하는 경우, 
+제공자가 테이블 데이터와 파일을 조합 할 수 있습니다.
+    </li>
+    <li>
+        네트워크 기반 데이터를 다루는 경우, {@link java.net} 및 
+{@link android.net} 내의 클래스를 사용하십시오. 네트워크 기반 데이터를 
+데이터베이스와 같은 로컬 데이터 스토어와 동기화한 다음, 해당 데이터를 테이블이나 파일로 제공할 수도 있습니다.
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+샘플 동기화 어댑터</a> 샘플 애플리케이션이 이런 유형의 동기화를 보여줍니다.
+    </li>
+</ul>
+<h3 id="DataDesign">
+    데이터 설계 시 고려할 사항
+</h3>
+<p>
+    다음은 제공자의 데이터 구조를 설계할 때 유용한 몇 가지 팁입니다.
+</p>
+<ul>
+    <li>
+        테이블 데이터는 언제나 제공자가 유지관리하는 "기본 키" 열을
+각 행의 고유한 숫자 값으로 보유하고 있어야 합니다. 이 값을 사용하여 해당 행을 다른 테이블의 
+관련 행에 연결시킬 수 있습니다(이를 "외래 키"로 사용). 이 열에는 어느 이름이든 사용할 수 있지만
+{@link android.provider.BaseColumns#_ID BaseColumns._ID}를 사용하는 것이 가장 좋습니다.
+왜냐하면 제공자 쿼리 결과를
+{@link android.widget.ListView}에 연결하려면 검색된 열 중 하나가
+<code>_ID</code>라는 이름을 사용해야 하기 때문입니다.
+    </li>
+    <li>
+        비트맵 이미지나 파일 지향적 데이터의 매우 큰 조각을 제공하려면
+테이블 안에 직접 저장하기보다는 파일에 데이터를 저장한 뒤 
+간접적으로 제공합니다. 이렇게 하는 경우, 제공자의 사용자들에게 데이터에 액세스하려면 
+{@link android.content.ContentResolver} 파일 메서드를 사용해야 한다고 알려야 합니다.
+    </li>
+    <li>
+        BLOB(Binary Large OBject) 데이터 유형을 사용하여 크기가 다르거나
+구조가 다양한 데이터를 저장합니다. 예를 들어, BLOB 열을 사용하여
+<a href="http://code.google.com/p/protobuf">프로토콜 버퍼</a> 또는
+<a href="http://www.json.org">JSON 구조</a>를 저장할 수 있습니다.
+        <p>
+            BLOB를 사용하여 <em>스키마에 종속되지 않은</em> 테이블을 구현할 수도 있습니다. 
+이 유형의 테이블에서는, 기본 키 열, MIME 유형 열 및 하나 이상의 일반적인 열을 BLOB로 정의합니다.
+ 
+BLOB 열에 있는 데이터의 의미는 MIME 유형 열에 있는 값으로 나타냅니다. 
+이렇게 하면 같은 테이블에 여러 가지 행 유형을 저장할 수 있습니다. 연락처 제공자의 "데이터" 테이블 
+{@link android.provider.ContactsContract.Data}가 
+스키마에 종속되지 않은 테이블의 한 가지 예입니다.
+        </p>
+    </li>
+</ul>
+<!-- Designing Content URIs -->
+<h2 id="ContentURI">콘텐츠 URI 설계</h2>
+<p>
+    <strong>콘텐츠 URI</strong>는 제공자에서 데이터를 식별하는 URI입니다. 
+콘텐츠 URI에는 전체 제공자의 상징적인 이름(제공자의 <strong>권한</strong>)과
+테이블 또는 파일을 가리키는 이름(<strong>경로</strong>)이 포함됩니다. 
+선택 항목 ID 부분은 테이블 내의 개별적인 행을 가리킵니다. 
+{@link android.content.ContentProvider}의 모든 데이터 액세스 메서드는 
+콘텐츠 URI를 인수로 가집니다. 이를 통해 액세스할 테이블, 행 또는 파일을 결정할 수 있습니다.
+</p>
+<p>
+    콘텐츠 URI의 기본 정보는
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+콘텐츠 제공자 기본 정보</a>에 설명되어 있습니다.
+</p>
+<h3>권한 설계</h3>
+<p>
+    제공자에는 보통 하나의 권한이 있으며, 이것이 Android 내부 이름 역할을 합니다. 
+다른 제공자와의 충돌을 피하려면, 제공자 권한의 기반으로 인터넷 도메인 소유권(역방향)을
+사용해야 합니다. 이 권장 사항은 Android 패키지 이름에도 적용되므로, 
+제공자 권한을 제공자가 들어 있는 패키지의 이름 확장자로 정의해도 됩니다.
+ 예를 들어, Android 패키지 이름이
+<code>com.example.&lt;appname&gt;</code>라면, 제공자에게
+<code>com.example.&lt;appname&gt;.provider</code> 권한을 부여해야 합니다.
+</p>
+<h3>경로 구조 설계</h3>
+<p>
+    개발자는 보통 권한으로부터 콘텐츠 URI를 생성할 때 개별적인 테이블을 가리키는 
+경로를 추가하는 방식을 사용합니다. 예를 들어, <em>table1</em>과
+<em>table2</em>라는 테이블이 있다면, 이전 예시의 권한을 조합하여
+콘텐츠 URI<code>com.example.&lt;appname&gt;.provider/table1</code>와 
+<code>com.example.&lt;appname&gt;.provider/table2</code>를 도출합니다.
+ 
+경로는 하나의 세그먼트에 국한되지 않으며, 경로의 각 수준에 대한 테이블이 아니어도 됩니다.
+</p>
+<h3>콘텐츠 URI ID 처리</h3>
+<p>
+    규칙에 의하면, 제공자는 URI 맨 끝에서 행에 대한 ID 값이 있는 콘텐츠 URI를 허용하여 
+테이블 내 하나의 행으로의 액세스를 제공합니다. 또한 규칙에 의해 제공자는 
+이 ID 값을 테이블의 <code>_ID</code> 열에 일치시켜야 하며, 
+일치한 행에 대하여 요청된 액세스 허가를 수행해야 합니다.
+</p>
+<p>
+    이 규칙은 제공자에 액세스하는 앱을 위한 공통 설계 패턴을 세우는 데 유용합니다. 
+앱이 제공자에 대한 쿼리를 수행하고 그 결과로 나온 {@link android.database.Cursor}를
+{@link android.widget.ListView}에 {@link android.widget.CursorAdapter}를 사용하여 표시합니다.
+    {@link android.widget.CursorAdapter}의 정의에 따르면 
+{@link android.database.Cursor} 안의 열 중 하나는 <code>_ID</code>여야 합니다.
+</p>
+<p>
+    그러면 사용자가 데이터를 살펴보거나 수정하기 위하여 
+UI에서 표시된 여러 행 중 하나를 선택합니다. 앱은 {@link android.widget.ListView}를 지원하는 {@link android.database.Cursor}에서 해당하는 열을 가져오고,
+해당 열에 대한 <code>_ID</code> 값을 가져와서
+콘텐츠 URI에 추가하고, 제공자에 액세스 요청을 전송합니다. 그런 다음 제공자는 
+사용자가 선택한 바로 그 행에 대해 쿼리 또는 수정 작업을 수행할 수 있습니다.
+</p>
+<h3>콘텐츠 URI 패턴</h3>
+<p>
+    수신되는 콘텐츠 URI에 대해 어떤 조치를 취할지 선택하는 데 도움이 되도록 하기 위해 제공자 API에 
+편의 클래스 {@link android.content.UriMatcher}가 
+포함되어 있습니다. 이는 콘텐츠 URI "패턴"을 정수값으로 매핑합니다. 이 정수값은 특정 패턴에 일치하는 
+콘텐츠 URI 또는 여러 URI에 대해 원하는 작업을 선택하는 데 <code>switch</code> 문에서 사용할 수 있습니다.
+</p>
+<p>
+    콘텐츠 URI 패턴은 와일드카드 문자를 사용하는 콘텐츠 URI와 일치합니다.
+</p>
+    <ul>
+        <li>
+            <strong><code>*</code>:</strong> 모든 길이의 모든 유효한 문자로 구성된 문자열과 일치합니다.
+        </li>
+        <li>
+            <strong><code>#</code>:</strong> 모든 길이의 숫자 문자로 구성된 문자열과 일치합니다.
+        </li>
+    </ul>
+<p>
+    콘텐츠 URI 처리의 설계와 코딩에 대한 예시로서 임의의 제공자를 들어 보겠습니다. 
+이 제공자에는 권한 <code>com.example.app.provider</code>가 있고 
+이 권한이 테이블을 가리키는 다음 콘텐츠 URI를 인식합니다.
+</p>
+<ul>
+    <li>
+        <code>content://com.example.app.provider/table1</code>: <code>table1</code>이라는 테이블입니다.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset1</code>: 
+<code>dataset1</code>이라는 테이블입니다.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset2</code>: 
+<code>dataset2</code>라는 테이블입니다.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table3</code>: <code>table3</code>이라는 테이블입니다.
+    </li>
+</ul>
+<p>
+    제공자는 추가된 행 ID가 있으면 이런 콘텐츠 URI도 인식합니다.
+예를 들어, <code>table3</code>에서 <code>1</code>이 식별한 행에 대한 
+<code>content://com.example.app.provider/table3/1</code>이 이에 해당됩니다.
+</p>
+<p>
+    가능한 콘텐츠 URI 패턴은 다음과 같습니다.
+</p>
+<dl>
+    <dt>
+        <code>content://com.example.app.provider/*</code>
+    </dt>
+    <dd>
+        제공자에 있는 모든 콘텐츠 URI와 일치합니다.
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table2/*</code>:
+    </dt>
+    <dd>
+        테이블 <code>dataset1</code>과
+<code>dataset2</code>의 콘텐츠 URI와 일치하지만 <code>table1</code>이나
+<code>table3</code>에 대한 콘텐츠 URI와 일치하지 않습니다.
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table3/#</code>: 
+<code>table3</code>의 단일 행에 대한 콘텐츠 URI와 일치합니다. 예를 들어,
+<code>6</code>이 식별한 행에 대한 <code>content://com.example.app.provider/table3/6</code>이 이에 해당됩니다.
+
+    </dt>
+</dl>
+<p>
+    다음 코드 조각은 {@link android.content.UriMatcher} 작업에서 메서드의 작용 원리를 나타낸 것입니다.
+    이 코드는 테이블에 대한 콘텐츠 URI 패턴 <code>content://&lt;authority&gt;/&lt;path&gt;</code>와 
+단일 행에 대한 콘텐츠 URI 패턴 <code>content://&lt;authority&gt;/&lt;path&gt;/&lt;id&gt;</code>를 사용하여 
+단일 행에 대한 URI와 전체 테이블에 대한 URI를 서로 다르게 처리합니다.
+
+</p>
+<p>
+    {@link android.content.UriMatcher#addURI(String, String, int) addURI()} 메서드는
+권한과 경로를 정수값으로 매핑합니다. 메서드 {@link android.content.UriMatcher#match(Uri)
+match()}는 URI에 대한 정수값을 반환합니다. <code>switch</code> 문이
+전체 테이블을 쿼리할 것인지, 하나의 레코드를 쿼리할 것인지 선택합니다.
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider {
+...
+    // Creates a UriMatcher object.
+    private static final UriMatcher sUriMatcher;
+...
+    /*
+     * The calls to addURI() go here, for all of the content URI patterns that the provider
+     * should recognize. For this snippet, only the calls for table 3 are shown.
+     */
+...
+    /*
+     * Sets the integer value for multiple rows in table 3 to 1. Notice that no wildcard is used
+     * in the path
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3", 1);
+
+    /*
+     * Sets the code for a single row to 2. In this case, the "#" wildcard is
+     * used. "content://com.example.app.provider/table3/3" matches, but
+     * "content://com.example.app.provider/table3 doesn't.
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3/#", 2);
+...
+    // Implements ContentProvider.query()
+    public Cursor query(
+        Uri uri,
+        String[] projection,
+        String selection,
+        String[] selectionArgs,
+        String sortOrder) {
+...
+        /*
+         * Choose the table to query and a sort order based on the code returned for the incoming
+         * URI. Here, too, only the statements for table 3 are shown.
+         */
+        switch (sUriMatcher.match(uri)) {
+
+
+            // If the incoming URI was for all of table3
+            case 1:
+
+                if (TextUtils.isEmpty(sortOrder)) sortOrder = "_ID ASC";
+                break;
+
+            // If the incoming URI was for a single row
+            case 2:
+
+                /*
+                 * Because this URI was for a single row, the _ID value part is
+                 * present. Get the last path segment from the URI; this is the _ID value.
+                 * Then, append the value to the WHERE clause for the query
+                 */
+                selection = selection + "_ID = " uri.getLastPathSegment();
+                break;
+
+            default:
+            ...
+                // If the URI is not recognized, you should do some error handling here.
+        }
+        // call the code to actually do the query
+    }
+</pre>
+<p>
+    또 다른 클래스, {@link android.content.ContentUris}가 
+콘텐츠 URI의 <code>id</code> 부분을 다루기 위한 편의 메서드를 제공합니다. 클래스 {@link android.net.Uri}와
+{@link android.net.Uri.Builder}에는
+기존 {@link android.net.Uri} 개체를 구문 분석하고 새로운 개체를 구축하기 위한 편의 메서드가 포함되어 있습니다.
+</p>
+
+<!-- Implementing the ContentProvider class -->
+<h2 id="ContentProvider">ContentProvider 클래스 구현</h2>
+<p>
+    {@link android.content.ContentProvider} 인스턴스는
+다른 애플리케이션으로부터의 요청을 처리하여 구조화된 데이터 세트로의 액세스를 관리합니다. 
+모든 형태의 액세서가 궁극적으로 {@link android.content.ContentResolver}를 호출하며, 
+그러면 이것이 액세스 권한을 얻기 위해 구체적인 {@link android.content.ContentProvider} 메서드를 호출합니다.
+</p>
+<h3 id="RequiredAccess">필수 메서드</h3>
+<p>
+    추상 클래스 {@link android.content.ContentProvider}는 
+개발자가 나름의 구체적인 하위 클래스의 일부분으로 구현해야만 하는 여섯 가지 추상 메서드를 정의합니다. 이와 같은 메서드는 모두 
+({@link android.content.ContentProvider#onCreate() onCreate()}는 예외) 
+콘텐츠 제공자에 액세스하려 시도 중인 클라이언트 애플리케이션이 호출합니다.
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+query()}
+    </dt>
+    <dd>
+        제공자에서 데이터를 검색합니다. 인수를 사용하여 쿼리할 테이블과 반환할 열/행, 결과의 정렬 순서를 선택합니다.
+
+        데이터를 {@link android.database.Cursor} 개체로 반환합니다.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}
+    </dt>
+    <dd>
+        제공자에 새로운 행을 삽입합니다. 인수를 사용하여 대상 테이블을 선택하고 
+사용할 열 값을 가져옵니다. 
+새로 삽입된 행에 대한 콘텐츠 URI를 반환합니다.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+update()}
+    </dt>
+    <dd>
+        제공자 내의 기존 행을 업데이트합니다. 인수를 사용하여 
+업데이트할 테이블과 행을 선택하고 업데이트한 열 값을 가져옵니다. 업데이트한 행 개수를 반환합니다.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+    </dt>
+    <dd>
+        제공자에서 행을 삭제합니다. 인수를 사용하여 삭제할 테이블과 행을 선택합니다.
+ 삭제한 행 개수를 반환합니다.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        콘텐츠 URI에 상응하는 MIME 유형을 반환합니다. 이 메서드는 
+<a href="#MIMETypes">콘텐츠 제공자 MIME 유형</a> 섹션에 더 자세하게 설명되어 있습니다.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#onCreate() onCreate()}
+    </dt>
+    <dd>
+        제공자를 초기화합니다. Android 시스템은 제공자를 생성한 직후 
+이 메서드를 호출합니다. 
+{@link android.content.ContentResolver} 개체가 제공자에 액세스하려고 시도할 때까지는 제공자가 생성된 것이 아니라는 점을 유의하십시오.
+    </dd>
+</dl>
+<p>
+    이와 같은 메서드에는 동일하게 이름 붙여진 
+{@link android.content.ContentResolver} 메서드와 같은 서명이 있다는 것을 눈여겨 보십시오.
+</p>
+<p>
+    이러한 메서드의 구현에는 다음과 같은 내용을 감안해야 합니다.
+</p>
+<ul>
+    <li>
+        이런 메서드는 모두({@link android.content.ContentProvider#onCreate() onCreate()}는 예외)
+ 한꺼번에 여러 스레드가 호출할 수 있으므로, 스레드로부터 안전해야 합니다. 
+다중 스레드에 대한 자세한 내용은 
+<a href="{@docRoot}guide/components/processes-and-threads.html">
+프로세스 및 스레드</a> 주제를 참조하십시오.
+    </li>
+    <li>
+        {@link android.content.ContentProvider#onCreate()
+onCreate()}에서는 긴 작업을 수행하는 것을 삼가는 것이 좋습니다. 실제로 필요할 때까지 초기화 작업을 미뤄두십시오.
+        이 내용은 <a href="#OnCreate">onCreate() 메서드 구현</a>
+섹션에서 더욱 자세히 논의합니다.
+    </li>
+    <li>
+        이와 같은 메서드는 반드시 구현해야 하는 것이지만, 
+예상되는 데이터 유형을 반환하는 것 외에 달리 코드가 해야 할 일은 없습니다. 
+예를 들어 몇몇 테이블에 다른 애플리케이션이 데이터를 삽입하지 못하도록 방지하려고 합니다. 이렇게 하려면,
+{@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}로의 
+호출을 무시하고 0을 반환하면 됩니다.
+    </li>
+</ul>
+<h3 id="Query">query() 메서드 구현</h3>
+<p>
+    
+{@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+ContentProvider.query()} 메서드는 {@link android.database.Cursor} 개체를 반환해야 하고, 그렇지 못할 경우
+{@link java.lang.Exception}을 발생시킵니다. SQLite 데이터베이스를 데이터 저장소로 사용하는 경우,
+{@link android.database.sqlite.SQLiteDatabase} 클래스의 <code>query()</code> 메서드 중 하나로 반환되는 {@link android.database.Cursor}를
+반환하기만 하면 됩니다.
+    쿼리가 어느 행에도 일치하지 않으면, {@link android.database.Cursor#getCount()} 메서드가 0을 반환하는
+{@link android.database.Cursor} 인스턴스를 반환해야 합니다.
+    <code>null</code>을 반환하는 것은 쿼리 과정 중에 내부 오류가 발생했을 때뿐입니다.
+</p>
+<p>
+    SQLite 데이터베이스를 데이터 저장소로 사용하지 않는 경우, {@link android.database.Cursor}의
+ 구체적인 하위 클래스 중 하나를 사용하십시오. 예를 들어, {@link android.database.MatrixCursor} 클래스는
+각 행이 {@link java.lang.Object} 배열인 커서를 구현합니다. 이 클래스에서는
+{@link android.database.MatrixCursor#addRow(Object[]) addRow()}를 사용하여 새 행을 추가합니다.
+</p>
+<p>
+    Android 시스템이 프로세스 경계를 가로질러 {@link java.lang.Exception}을
+ 통신으로 전달할 수 있어야 한다는 점을 유의하십시오. Android가 이 작업을 할 수 있는 경우는 
+쿼리 오류 처리에 유용할 수 있는 다음과 같은 예외에 해당될 때입니다.
+</p>
+<ul>
+    <li>
+        {@link java.lang.IllegalArgumentException}
+(제공자가 유효하지 않은 콘텐츠 URI를 수신할 경우 이 예외를 발생시킬 수 있습니다.)
+    </li>
+    <li>
+        {@link java.lang.NullPointerException}
+    </li>
+</ul>
+<h3 id="Insert">insert() 메서드 구현</h3>
+<p>
+    {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} 메서드는
+{@link android.content.ContentValues} 인수의 값을 이용하여
+적절한 테이블에 새 행을 추가합니다. 열 이름이 {@link android.content.ContentValues} 인수에 없는 경우,
+제공자 코드 또는 데이터베이스 스키마 내에 그에 대한 기본값을 제공하는 것이 좋을 수도 있습니다.
+
+</p>
+<p>
+    이 메서드가 새 행에 대한 콘텐츠 URI를 반환하는 것이 정상입니다. 이것을 구성하려면 새 행의 
+<code>_ID</code>(또는 다른 기본 키) 값을 테이블의 콘텐츠 URI에 추가하며, 이때 
+{@link android.content.ContentUris#withAppendedId(Uri, long) withAppendedId()}를 사용합니다.
+</p>
+<h3 id="Delete">delete() 메서드 구현</h3>
+<p>
+    {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} 메서드의 경우
+ 데이터 저장소에서 물리적으로 행을 삭제하지 않아도 됩니다. 
+제공자와 동기화 어댑터를 함께 사용하고 있는 경우, 
+삭제된 행을 완전히 제거하기보다는 "삭제" 플래그로 표시하는 방법을 고려해볼 만합니다. 
+동기화 어댑터가 삭제된 행을 확인한 다음, 이를 제공자에서 삭제하기 전에 우선 서버에서 제거합니다.
+</p>
+<h3 id="Update">Update() 메서드 구현</h3>
+<p>
+    {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+update()} 메서드는{@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}가 사용하는 것과 같은 {@link android.content.ContentValues} 인수와
+
+{@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}와 {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+ContentProvider.query()}가 사용하는 것과 같은 <code>selection</code> 및 <code>selectionArgs</code> 인수를
+취합니다.
+ 이 때문에 이와 같은 메서드 사이에서 코드를 다시 사용할 수 있게 해주기도 합니다.
+</p>
+<h3 id="OnCreate">onCreate() 메서드 구현</h3>
+<p>
+    Android 시스템은 제공자를 시작할 때 {@link android.content.ContentProvider#onCreate()
+onCreate()}를 호출합니다. 이 메서드에서는 빠르게 실행되는 초기화만 수행해야 하며, 
+데이터베이스 생성과 데이터 로딩은 제공자가 실제로 데이터에 대한 요청을 받을 때까지 미뤄두어야 합니다.
+ 
+{@link android.content.ContentProvider#onCreate() onCreate()}에서 긴 작업을 수행하면
+제공자의 시동 속도가 느려집니다. 이 때문에 제공자에서 다른 애플리케이션으로 전달되는 응답도 따라서 느려집니다.
+
+</p>
+<p>
+    예를 들어, SQLite 데이터베이스를 사용하는 경우
+{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()}에서 
+새로운 {@link android.database.sqlite.SQLiteOpenHelper} 개체를 생성하고,
+그런 다음 데이터베이스를 처음 열 때 SQL 테이블을 생성할 수 있습니다. 이를 용이하게 하기 위해
+{@link android.database.sqlite.SQLiteOpenHelper#getWritableDatabase
+getWritableDatabase()}를 처음 호출하면 이것이 자동으로 
+{@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+SQLiteOpenHelper.onCreate()} 메서드를 호출합니다.
+</p>
+<p>
+    다음 두 개의 조각은
+{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()}와
+{@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+SQLiteOpenHelper.onCreate()} 사이의 상호 작용을 나타낸 것입니다. 첫 번째 조각은
+{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()}의 구현입니다.
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider
+
+    /*
+     * Defines a handle to the database helper object. The MainDatabaseHelper class is defined
+     * in a following snippet.
+     */
+    private MainDatabaseHelper mOpenHelper;
+
+    // Defines the database name
+    private static final String DBNAME = "mydb";
+
+    // Holds the database object
+    private SQLiteDatabase db;
+
+    public boolean onCreate() {
+
+        /*
+         * Creates a new helper object. This method always returns quickly.
+         * Notice that the database itself isn't created or opened
+         * until SQLiteOpenHelper.getWritableDatabase is called
+         */
+        mOpenHelper = new MainDatabaseHelper(
+            getContext(),        // the application context
+            DBNAME,              // the name of the database)
+            null,                // uses the default SQLite cursor
+            1                    // the version number
+        );
+
+        return true;
+    }
+
+    ...
+
+    // Implements the provider's insert method
+    public Cursor insert(Uri uri, ContentValues values) {
+        // Insert code here to determine which table to open, handle error-checking, and so forth
+
+        ...
+
+        /*
+         * Gets a writeable database. This will trigger its creation if it doesn't already exist.
+         *
+         */
+        db = mOpenHelper.getWritableDatabase();
+    }
+}
+</pre>
+<p>
+    그 다음 조각은
+도우미 클래스를 포함한 {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+SQLiteOpenHelper.onCreate()}의 구현입니다.
+</p>
+<pre class="prettyprint">
+...
+// A string that defines the SQL statement for creating a table
+private static final String SQL_CREATE_MAIN = "CREATE TABLE " +
+    "main " +                       // Table's name
+    "(" +                           // The columns in the table
+    " _ID INTEGER PRIMARY KEY, " +
+    " WORD TEXT"
+    " FREQUENCY INTEGER " +
+    " LOCALE TEXT )";
+...
+/**
+ * Helper class that actually creates and manages the provider's underlying data repository.
+ */
+protected static final class MainDatabaseHelper extends SQLiteOpenHelper {
+
+    /*
+     * Instantiates an open helper for the provider's SQLite data repository
+     * Do not do database creation and upgrade here.
+     */
+    MainDatabaseHelper(Context context) {
+        super(context, DBNAME, null, 1);
+    }
+
+    /*
+     * Creates the data repository. This is called when the provider attempts to open the
+     * repository and SQLite reports that it doesn't exist.
+     */
+    public void onCreate(SQLiteDatabase db) {
+
+        // Creates the main table
+        db.execSQL(SQL_CREATE_MAIN);
+    }
+}
+</pre>
+
+
+<!-- Implementing ContentProvider MIME Types -->
+<h2 id="MIMETypes">ContentProvider MIME 유형 구현</h2>
+<p>
+    {@link android.content.ContentProvider} 클래스에는 MIME 유형을 반환하는 두 가지 메서드가 있습니다.
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        모든 제공자에 대해 구현해야 하는 필수 메서드 중 하나입니다.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    </dt>
+    <dd>
+        제공자가 파일을 제공하는 경우 구현해야 하는 메서드입니다.
+    </dd>
+</dl>
+<h3 id="TableMIMETypes">테이블의 MIME 유형</h3>
+<p>
+    {@link android.content.ContentProvider#getType(Uri) getType()} 메서드는
+콘텐츠 URI 인수가 반환하는 데이터 유형을 설명하는 MIME 형식의 {@link java.lang.String}을 반환합니다.
+ {@link android.net.Uri} 인수는 특정 URI라기보다 패턴일 수 있습니다.
+이 경우, 이 패턴과 일치하는 콘텐츠 URI와 연관된 유형의 데이터를 반환해야 합니다.
+
+</p>
+<p>
+    텍스트, HTML 또는 JPEG와 같은 보편적인 유형의 데이터라면
+{@link android.content.ContentProvider#getType(Uri) getType()}이 
+해당 데이터에 대한 표준 MIME 유형을 반환하는 것이 정상입니다. 이러한 표준 유형의 전체 목록은
+<a href="http://www.iana.org/assignments/media-types/index.htm">IANA MIME 미디어 유형</a>
+웹사이트에서 확인할 수 있습니다.
+</p>
+<p>
+    테이블 데이터의 행 하나 또는 여러 행을 가리키는 콘텐츠 URI의 경우,
+{@link android.content.ContentProvider#getType(Uri) getType()}이 Android의 공급업체별 MIME 형식에서
+MIME 형식을 반환해야 합니다.
+</p>
+<ul>
+    <li>
+        유형 부분: <code>vnd</code>
+    </li>
+    <li>
+        하위 유형 부분:
+        <ul>
+            <li>
+    URI 패턴이 하나의 행에 대한 것일 경우: <code>android.cursor.<strong>item</strong>/</code>
+            </li>
+            <li>
+    URI 패턴이 하나 이상의 행에 대한 것일 경우: <code>android.cursor.<strong>dir</strong>/</code>
+            </li>
+        </ul>
+    </li>
+    <li>
+        제공자별 부분: <code>vnd.&lt;name&gt;</code>.<code>&lt;type&gt;</code>
+        <p>
+            개발자가 <code>&lt;name&gt;</code>과 <code>&lt;type&gt;</code>을 제공합니다.
+            <code>&lt;name&gt;</code> 값은 전체적으로 고유해야 하고,
+<code>&lt;type&gt;</code> 값은 상응하는 URI 패턴에 고유해야
+합니다. <code>&lt;name&gt;</code>으로 좋은 예는 회사 이름이나 
+애플리케이션의 Android 패키지 이름을 들 수 있습니다. 
+<code>&lt;type&gt;</code>으로 좋은 예는 URI와 연관된 테이블을 식별하는 
+문자열을 들 수 있습니다.
+        </p>
+
+    </li>
+</ul>
+<p>
+    예를 들어 어떤 제공자의 권한이 
+<code>com.example.app.provider</code>이고, 이것이 
+<code>table1</code>이라는 테이블을 노출하는 경우, <code>table1</code>의 여러 행에 대한 MIME 유형은 다음과 같습니다.
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.com.example.provider.table1
+</pre>
+<p>
+    <code>table1</code>의 행 하나의 경우, MIME 유형은 다음과 같습니다.
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.com.example.provider.table1
+</pre>
+<h3 id="FileMIMETypes">파일의 MIME 유형</h3>
+<p>
+    제공자가 파일을 제공하는 경우,
+{@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}를 구현합니다.
+    이 메서드는 제공자가 주어진 콘텐츠 URI에 대해 반환할 수 있는 파일에 대한 MIME 유형의 {@link java.lang.String} 배열을 반환합니다. 
+제공하는 MIME 유형을 MIME 유형 필터 인수 기준으로 필터링해야 
+클라이언트가 처리하고자 하는 MIME 유형만 반환할 수 있습니다.
+</p>
+<p>
+    예를 들어, 사진 이미지를 <code>.jpg</code>,
+<code>.png</code> 및 <code>.gif</code> 형식의 파일로 제공하는 제공자가 있다고 하겠습니다.
+    애플리케이션이 필터 문자열 <code>image/*</code>("이미지"인 어떤 것)로 {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+ContentResolver.getStreamTypes()}를 호출하면
+
+{@link android.content.ContentProvider#getStreamTypes(Uri, String)
+ContentProvider.getStreamTypes()} 메서드가 다음과 같은 배열을 반환하는 것이 정상입니다.
+</p>
+<pre>
+{ &quot;image/jpeg&quot;, &quot;image/png&quot;, &quot;image/gif&quot;}
+</pre>
+<p>
+    앱이 <code>.jpg</code> 파일에만 관심이 있는 경우에는 
+필터 문자열 <code>*\/jpeg</code>으로 {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()}를 호출할 수 있습니다. 그러면 
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()}가 다음과 같이 반환하는 것이 정상입니다.
+<pre>
+{&quot;image/jpeg&quot;}
+</pre>
+<p>
+    제공자가 필터 문자열에서 요청한 MIME 유형 중 제공하는 것이 없는 경우, 
+{@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}가
+ <code>null</code>을 반환하는 것이 정상입니다.
+</p>
+
+
+<!--  Implementing a Contract Class -->
+<h2 id="ContractClass">계약 클래스 구현</h2>
+<p>
+    계약 클래스는 <code>public final</code> 클래스로, 이 안에 URI, 열 이름, MIME 유형의 
+상수 정의 및 제공자에 관련된 다른 메타 데이터가 들어 있습니다. 
+이 클래스는 URI, 열 이름 등의 실제 값에 변경된 내용이 있더라도
+ 제공자에 올바르게 액세스할 수 있도록 보장하여 제공자와 
+다른 애플리케이션 사이의 계약을 확립합니다.
+</p>
+<p>
+    계약 클래스가 개발자에게 유용한 이유는 또 있습니다. 이 클래스는 보통 자신의 상수 이름으로 
+니모닉 이름을 가지기 때문에 개발자가 열 이름 또는 URI에 잘못된 값을 사용할 가능성이 덜합니다. 
+이것도 클래스의 일종이기 때문에 Javadoc 문서를 포함할 수 있습니다. 
+Eclipse와 같은 통합 개발 환경은 계약 클래스의 상수 이름을 자동 완성하고
+해당 상수에 대한 Javadoc을 표시할 수 있습니다.
+</p>
+<p>
+    개발자가 애플리케이션에서 계약 클래스의 클래스 파일에 액세스할 수는 없지만 
+여러분이 제공하는 <code>.jar</code> 파일에서 이를 애플리케이션 안으로 정적으로 컴파일링할 수 있습니다.
+</p>
+<p>
+    {@link android.provider.ContactsContract} 클래스와 
+이에 중첩된 클래스가 계약 클래스의 예시입니다.
+</p>
+<h2 id="Permissions">콘텐츠 제공자 권한 구현</h2>
+<p>
+    Android 시스템의 모든 측면에 대한 권한과 액세스는
+<a href="{@docRoot}guide/topics/security/security.html">보안 및 권한</a> 주제에 설명되어 있습니다.
+    <a href="{@docRoot}guide/topics/data/data-storage.html">데이터 저장소</a> 주제에서도 
+다양한 유형의 저장소에 적용되는 보안 및 권한을 설명하고 있습니다.
+    간략히 말해 요점은 다음과 같습니다.
+</p>
+<ul>
+    <li>
+        기본적으로, 기기의 내부 저장소에 저장된 데이터 파일은 
+본인의 애플리케이션과 제공자 전용입니다.
+    </li>
+    <li>
+        본인이 생성한 {@link android.database.sqlite.SQLiteDatabase} 데이터베이스는 
+본인의 애플리케이션과 제공자만의 비공개 데이터입니다.
+    </li>
+    <li>
+        기본적으로 외부 저장소에 저장하는 데이터 파일은 <em>공개</em>이고
+<em>누구나 읽을 수 있습니다</em>. 외부 저장소에 있는 파일로의 액세스를 제공하는 데 콘텐츠 제공자를 쓸 수는 
+없습니다. 다른 애플리케이션이 다른 API 호출을 사용하여 해당 파일을 읽고 쓸 수 있기 때문입니다.
+    </li>
+    <li>
+        기기의 내부 저장소에 있는 파일 또는 SQLite 데이터베이스를 열거나 생성하기 위한 메서드 호출은
+다른 모든 애플리케이션에 읽기 및 쓰기 액세스 권한을 허가할 가능성이 있습니다. 
+내부 파일이나 데이터베이스를 제공자의 리포지토리로 사용하고
+"누구나 읽을 수 있는" 또는 "누구나 쓸 수 있는" 액세스를 부여하면 
+매니페스트에서 제공자에 대해 설정한 권한이 데이터를 보호하지 못합니다. 
+내부 저장소 안에 있는 파일과 데이터베이스에 대한기본 액세스는 "비공개"이며, 제공자의 리포지토리가 이것을 변경하면 안 됩니다.
+    </li>
+</ul>
+<p>
+    데이터로의 액세스를 제어하기 위해 콘텐츠 제공자 권한을 쓰고자 하는 경우, 
+데이터를 내부 파일, SQLite 데이터베이스 또는 "클라우드"(예: 원격 서버) 안의 
+내부 파일로 저장해야 하고, 파일과 데이터베이스를 애플리케이션만의 비공개로 유지해야 합니다.
+</p>
+<h3>권한 구현</h3>
+<p>
+    기본 데이터가 비공개라고 하더라도 모든 애플리케이션이 제공자를 읽고 제공자에 쓸 수 있습니다. 
+기본적으로 제공자에는 권한이 설정되어 있지 않기 때문입니다. 이를 변경하려면,
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code> 요소의 속성이나 하위 요소를 사용하여
+매니페스트 파일에 있는 제공자의 권한을 설정합니다. 권한은 제공자 전체에 적용되도록 설정할 수도 있고, 
+특정 테이블에, 또는 심지어 특정 레코드에 적용되게 할 수도 있고 세 가지 모두를 택할 수도 있습니다.
+</p>
+<p>
+    제공자에 대한 권한은 매니페스트 파일에 있는 하나 이상의 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">
+    &lt;permission&gt;</a></code> 요소로 정의합니다. 
+제공자에 고유한 권한을 설정하려면
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html#nm">
+    android:name</a></code> 속성에 Java 스타일 범위를 사용합니다. 예를 들어 읽기 권한의 이름을
+<code>com.example.app.provider.permission.READ_PROVIDER</code>로 지정합니다.
+
+</p>
+<p>
+    다음 목록은 제공자 권한의 범위를 설명한 것입니다. 
+제공자 전체에 적용되는 권한부터 시작하여 점차 세분화된 권한이 됩니다.
+    보다 세부화된 권한이 범위가 큰 것보다 우선합니다.
+</p>
+<dl>
+    <dt>
+        단일 읽기-쓰기 제공자 수준 권한
+    </dt>
+    <dd>
+        제공자 전체로의 읽기와 쓰기 액세스 양쪽 모두를 제어하는 하나의 권한으로, 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 요소의 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code> 속성으로 지정됩니다.
+    </dd>
+    <dt>
+        별도의 읽기 및 쓰기 제공자 수준 권한
+    </dt>
+    <dd>
+        제공자 전체에 대한 읽기 권한과 쓰기 권한입니다. 이들 권한은
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 요소의 <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+        android:readPermission</a></code>와
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+        android:writePermission</a></code> 속성으로
+지정합니다. 이들이
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code>에서 요구하는 권한보다 우선합니다.
+    </dd>
+    <dt>
+        경로 수준 권한
+    </dt>
+    <dd>
+        제공자의 콘텐츠 URI에 대한 읽기, 쓰기 또는 읽기/쓰기 권한입니다. 제어하고자 하는 각 URI를 직접 지정하되, 
+이때 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 요소의 
+<code><a href="{@docRoot}guide/topics/manifest/path-permission-element.html">
+        &lt;path-permission&gt;</a></code> 하위 요소를 사용합니다. 지정하는 콘텐츠 URI마다 
+읽기/쓰기 권한, 읽기 권한 또는 쓰기 권한을 하나씩 지정하거나 셋 모두를 지정할 수 있습니다. 
+읽기 및 쓰기 권한이 읽기/쓰기 권한보다 우선합니다. 
+또한, 경로 수준 권한이 제공자 수준 권한보다 우선합니다.
+    </dd>
+    <dt>
+        임시 권한
+    </dt>
+    <dd>
+        애플리케이션에 임시 액세스를 허용하는 권한 수준입니다.
+해당 애플리케이션에 일반적으로 요구되는 권한이 없더라도 무관합니다. 
+임시 액세스 기능은 매니페스트에서 요청해야 하는
+권한과 애플리케이션 개수를 줄여줍니다. 임시 권한을 사용하는 경우, 
+제공자에 대하여 "영구" 권한을 필요로하는 애플리케이션은 
+모든 데이터에 지속적으로 액세스하는 것들뿐입니다.
+        <p>
+            이메일 제공자와 앱을 구현할 때 필요한 권한을 예로 들어 보겠습니다. 
+외부 이미지 뷰어 애플리케이션으로 하여금 제공자에서 보낸 사진 첨부 파일을 
+표시하도록 허용하고자 한다고 가정합니다. 권한을 요구하지 않고 이미지 뷰어에 필수 액세스를 부여하려면, 
+사진에 대한 콘텐츠 URI에 해단되는 임시 권한을 설정하십시오. 
+사용자가 사진을 표시하기를 원할 때 앱이 사진의 콘텐츠 URI와 권한 플래그를 포함하는 인텐트를
+이미지 뷰어에 보내도록 이메일 앱을 설계합니다. 그러면 해당 이미지 뷰어가 
+이메일 제공자에 사진 검색을 쿼리할 수 있으며, 이 뷰어에 제공자에 대한 정상적인 읽기 권한이 없더라도 무방합니다.
+
+        </p>
+        <p>
+            임시 권한을 사용하려면,
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 요소의 <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> 속성을 설정하거나
+하나 이상의
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> 하위 요소를
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 요소에 추가하면 됩니다. 임시 권한을 사용하는 경우, 
+제공자에서 콘텐츠 URI에 대한 지원을 제거할 때마다 {@link android.content.Context#revokeUriPermission(Uri, int)
+            Context.revokeUriPermission()}을 호출해야 합니다. 
+그러면 콘텐츠 URI가 임시 권한과 연관됩니다.
+        </p>
+        <p>
+            속성의 값에 따라 제공자에 액세스 가능한 정도가 결정됩니다.
+            속성이 <code>true</code>로 설정되어 있는 경우라면 
+시스템이 제공자 전체에 임시 권한을 허용하며, 제공자 수준 또는 
+경로 수준 권한에서 요구하는 다른 모든 권한을 재정의합니다.
+        </p>
+        <p>
+            이 플래그가 <code>false</code>로 설정되면, 반드시 
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> 하위 요소를
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 요소에 추가해야 합니다. 각 하위 요소는 임시 권한을 허용한 
+콘텐츠 URI(하나 또는 여러 개)를 나타냅니다.
+        </p>
+        <p>
+            애플리케이션에 임시 액세스를 위임하려면, 인텐트에
+{@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION} 또는
+{@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION} 플래그, 또는 둘 모두가 들어 있어야 합니다. 이들은 
+{@link android.content.Intent#setFlags(int) setFlags()} 메서드로 설정됩니다.
+        </p>
+        <p>
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> 속성이 존재하지 않으면
+<code>false</code>인 것으로 가정합니다.
+        </p>
+    </dd>
+</dl>
+
+
+
+<!-- The Provider Element -->
+<h2 id="ProviderElement">&lt;provider&gt; 요소</h2>
+<p>
+    {@link android.app.Activity}와 {@link android.app.Service} 구성 요소와 마찬가지로,
+{@link android.content.ContentProvider}의 하위 클래스는
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code> 요소를 사용하여 매니페스트 파일에서
+애플리케이션에 대해 정의되어야 합니다. Android 시스템이
+해당 요소에서 다음과 같은 정보를 가져옵니다.
+<dl>
+    <dt>
+        권한
+(<a href="{@docRoot}guide/topics/manifest/provider-element.html#auth">{@code
+android:authorities}</a>)
+    </dt>
+    <dd>
+        시스템 내에서 제공자 전체를 식별하는 상징적 이름입니다. 이 속성은
+
+<a href="#ContentURI">콘텐츠 URI 설계</a> 섹션에서 자세히 설명되어 있습니다.
+    </dd>
+    <dt>
+        제공자 클래스 이름
+(<code>
+<a href="{@docRoot}guide/topics/manifest/provider-element.html#nm">android:name</a>
+        </code>)
+    </dt>
+    <dd>
+        {@link android.content.ContentProvider}를 구현하는 클래스입니다. 이 클래스는
+
+<a href="#ContentProvider">ContentProvider 클래스 구현</a> 섹션에 자세히 설명되어 있습니다.
+    </dd>
+    <dt>
+        권한
+    </dt>
+    <dd>
+        제공자의 데이터에 액세스하기 위해 다른 애플리케이션이 
+반드시 가지고 있어야 하는 권한을 나타내는 속성입니다.
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+                android:grantUriPermssions</a></code>: 임시 권한 플래그입니다.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+                android:permission</a></code>: 단일 제공자 전범위 읽기/쓰기 권한입니다.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+                android:readPermission</a></code>: 제공자 전범위 읽기 권한입니다.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+                android:writePermission</a></code>: 제공자 전범위 쓰기 권한입니다.
+            </li>
+        </ul>
+        <p>
+            각종 권한과 그에 상응하는 속성은 
+
+<a href="#Permissions">콘텐츠 제공자 권한 구현</a> 섹션에 자세히 설명되어 있습니다.
+        </p>
+    </dd>
+    <dt>
+        시작 및 제어 속성
+    </dt>
+    <dd>
+        이와 같은 속성은 Android 시스템이 제공자를 시작하는 방법과 시점, 
+제공자의 프로세스 특징과 기타 런타임 설정 등을 결정합니다.
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#enabled">
+                android:enabled</a></code>: 시스템이 제공자를 시작할 수 있게 해주는 플래그입니다.
+            </li>
+              <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#exported">
+                android:exported</a></code>: 다른 애플리케이션이 이 제공자를 사용할 수 있게 해주는 플래그입니다.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#init">
+                android:initOrder</a></code>: 같은 프로세스 내의 다른 제공자와 비교하여 
+이 제공자가 시작되어야 하는 순서입니다.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#multi">
+                android:multiProcess</a></code>: 클라이언트를 호출하는 것과 
+같은 프로세스에서 시스템이 제공자를 시작할 수 있게 해주는 플래그입니다.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#proc">
+                android:process</a></code>: 제공자가 실행해야 하는 프로세스의
+이름입니다.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#sync">
+                android:syncable</a></code>: 제공자의 데이터가 
+서버에 있는 데이터와 동기화될 예정임을 나타내는 플래그입니다.
+            </li>
+        </ul>
+        <p>
+            이 속성은
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>
+요소에 대한 개발자 가이드 주제에 상세하게 기록되어 있습니다.
+        </p>
+    </dd>
+    <dt>
+        정보 속성
+    </dt>
+    <dd>
+        제공자에 대한 선택 항목 아이콘 및 레이블입니다.
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#icon">
+                android:icon</a></code>: 제공자의 아이콘이 들어 있는 드로어블 리소스입니다.
+                이 아이콘은 
+<em>설정</em> &gt; <em>앱</em> &gt; <em>모두</em>에 있는 앱 목록에서 제공자의 레이블 옆에 표시됩니다.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#label">
+                android:label</a></code>: 제공자 또는 그 데이터, 또는 둘 모두를 설명하는 정보 레이블입니다.
+ 이 레이블은
+<em>설정</em> &gt; <em>앱</em> &gt; <em>모두</em>에 있는 앱 목록에 표시됩니다.
+            </li>
+        </ul>
+        <p>
+            이 속성은
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>요소에 대한 개발자 가이드 주제에 상세하게 기록되어 있습니다.
+        </p>
+    </dd>
+</dl>
+
+<!-- Intent Access -->
+<h2 id="Intents">인텐트 및 데이터 액세스</h2>
+<p>
+    애플리케이션이 콘텐츠 제공자에 간접적으로 액세스하려면 {@link android.content.Intent}를 사용하면 됩니다.
+    이 애플리케이션은 {@link android.content.ContentResolver} 또는 
+{@link android.content.ContentProvider}의 메서드 중 어느 하나도 호출하지 않습니다. 
+대신, 액티비티를 시작하는 인텐트를 전송합니다. 이 인텐트는 제공자가 소유한 애플리케이션의 일부인 경우가 많습니다. 
+대상 액티비티가 데이터를 자체 UI에서 검색하고 표시하는 역할을 맡습니다. 
+인텐트의 동작에 따라 대상 액티비티가 사용자에게 프롬프트를 표시하여 제공자의 데이터를 수정하도록 할 수도 있습니다.
+    인텐트에는 대상 액티비티가 UI에 표시하는 "추가" 데이터가 들어 있을 수도 있습니다.
+그러면 사용자에게 이 데이터를 변경할 수 있는 옵션이 주어지고, 그런 다음 이를 사용하여 
+제공자 내의 데이터를 수정할 수 있습니다.
+</p>
+<p>
+
+</p>
+<p>
+    데이터 무결성을 보장하는 데 유용한 것을 원하면 인텐트 액세스를 사용하는 것이 좋습니다. 
+엄격하게 정의된 비즈니스 논리에 따라 데이터가 삽입, 업데이트되고 삭제되는 것이 제공자를 크게 좌우할 수도 있습니다. 
+이런 경우에 해당되면, 다른 애플리케이션에 데이터를 직접 수정하도록 허용하면 데이터가 잘못되는 
+결과를 초래할 수 있습니다. 개발자들에게 인텐트 액세스 사용을 허용하려면, 그 내용을 철저히 기록해두어야 합니다.
+    개발자들에게 자기 애플리케이션의 UI를 사용한 인텐트 액세스가 
+코드로 데이터를 수정하려 시도하는 것보다 나은 이유를 설명해주십시오.
+</p>
+<p>
+    제공자의 데이터를 수정하고자 하는 수신되는 인텐트 처리도 다른 인텐트 처리와 다를 바가 없습니다.
+ 인텐트 사용에 대한 자세한 내용은 
+<a href="{@docRoot}guide/components/intents-filters.html">인텐트 및 인텐트 필터</a> 주제를 읽으면 확인할 수 있습니다.
+</p>
diff --git a/docs/html-intl/intl/ko/guide/topics/providers/content-providers.jd b/docs/html-intl/intl/ko/guide/topics/providers/content-providers.jd
new file mode 100644
index 0000000..ce98840
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/providers/content-providers.jd
@@ -0,0 +1,108 @@
+page.title=콘텐츠 제공자
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<!-- In this document -->
+<h2>주제</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        콘텐츠 제공자 기본 정보</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+        콘텐츠 제공자 생성</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/calendar-provider.html">캘린더 제공자</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/contacts-provider.html">연락처 제공자</a>
+    </li>
+</ol>
+
+    <!-- Related Samples -->
+<h2>관련 샘플</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/ContactManager/index.html">
+            연락처 관리자</a> 애플리케이션
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        "커서(피플 애플리케이션)"
+        </a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        "커서(전화)"</a>
+        </li>
+        <li>
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+            샘플 동기화 어댑터</a>
+        </li>
+    </ol>
+</div>
+</div>
+<p>
+    콘텐츠 제공자는 구조화된 데이터 세트로의 액세스를 관리합니다. 
+데이터를 캡슐화하여 데이터 보안을 정의하는 데 필요한 메커니즘을 제공하기도 합니다. 
+콘텐츠 제공자는 한 프로세스의 데이터에 다른 프로세스에서 실행 중인 코드를 연결하는 표준 인터페이스입니다.
+</p>
+<p>
+    콘텐츠 제공자 내의 데이터에 액세스하고자 하는 경우, 
+애플리케이션의 {@link android.content.Context}에 있는
+{@link android.content.ContentResolver} 개체를 사용하여 클라이언트로서 제공자와 통신을 주고받으면 됩니다.
+    {@link android.content.ContentResolver} 개체가 제공자 개체와 통신하며, 이 개체는 
+{@link android.content.ContentProvider}를 구현하는 클래스의 인스턴스입니다. 
+제공자 개체가 클라이언트로부터 데이터 요청을 받아 요청된 작업을 수행하며 결과를 반환합니다.
+
+</p>
+<p>
+    데이터를 다른 애플리케이션과 공유할 생각이 없으면 나름의 제공자를 개발하지 않아도 됩니다.
+ 그러나, 자체 애플리케이션에서 사용자 지정 검색 제안을 제공하려면 나름의 제공자가 꼭 필요합니다.
+ 또한, 복잡한 데이터나 파일을 자신의 애플리케이션에서 다른 애플리케이션으로 복사하여 붙여넣고자 하는 경우에도 
+나름의 제공자가 필요합니다.
+</p>
+<p>
+    Android 자체에 오디오, 동영상, 이미지 및 개인 연락처 정보 등의 데이터를 관리하는 콘텐츠 제공자가 
+포함되어 있습니다. 그중 몇 가지를 목록으로 나열한 것을 
+
+<code><a href="{@docRoot}reference/android/provider/package-summary.html">android.provider</a>
+    </code> 패키지에 대한 참조 문서에서 확인할 수 있습니다. 이와 같은 제공자는 몇 가지 제약이 있지만, 
+어느 Android 애플리케이션에나 액세스할 수 있습니다.
+</p><p>
+    다음 주제에서는 콘텐츠 제공자에 대해 좀 더 자세히 설명합니다.
+</p>
+<dl>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        콘텐츠 제공자 기본 정보</a></strong>
+    </dt>
+    <dd>
+        데이터가 여러 개의 표로 정리되어 있을 때 콘텐츠 제공자 내의 데이터에 액세스하는 방법입니다.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+        콘텐츠 제공자 생성</a></strong>
+    </dt>
+    <dd>
+        나름의 콘텐츠 제공자를 직접 만드는 방법입니다.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+        캘린더 제공자</a></strong>
+    </dt>
+    <dd>
+        Android 플랫폼의 일부인 캘린더 제공자에 액세스하는 방법입니다.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/contacts-provider.html">
+        연락처 제공자</a></strong>
+    </dt>
+    <dd>
+        Android 플랫폼의 일부인 연락처 제공자에 액세스하는 방법입니다.
+    </dd>
+</dl>
diff --git a/docs/html-intl/intl/ko/guide/topics/providers/document-provider.jd b/docs/html-intl/intl/ko/guide/topics/providers/document-provider.jd
new file mode 100644
index 0000000..e356e22
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/providers/document-provider.jd
@@ -0,0 +1,916 @@
+page.title=저장소 액세스 프레임워크
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>이 문서의 내용
+ <a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
+        <span class="more">더 많은 결과 보기</span>
+        <span class="less" style="display:none">결과 숨기기</span></a></h2>
+<ol id="toc44" class="hide-nested">
+    <li>
+        <a href="#overview">개요</a>
+    </li>
+    <li>
+        <a href="#flow">제어 흐름</a>
+    </li>
+    <li>
+        <a href="#client">클라이언트 앱 작성</a>
+        <ol>
+        <li><a href="#search">문서 검색</a></li>
+        <li><a href="#process">결과 처리</a></li>
+        <li><a href="#metadata">문서 메타데이터 살펴보기</a></li>
+        <li><a href="#open">문서 열기</a></li>
+        <li><a href="#create">새 문서 생성하기</a></li>
+        <li><a href="#delete">문서 삭제하기</a></li>
+        <li><a href="#edit">문서 편집하기</a></li>
+        <li><a href="#permissions">권한 유지</a></li>
+        </ol>
+    </li>
+    <li><a href="#custom">사용자 지정 문서 제공자 작성하기</a>
+        <ol>
+        <li><a href="#manifest">매니페스트</a></li>
+        <li><a href="#contract">계약</a></li>
+        <li><a href="#subclass">하위 클래스 DocumentsProvider</a></li>
+        <li><a href="#security">보안</a></li>
+        </ol>
+    </li>
+
+</ol>
+<h2>Key 클래스</h2>
+<ol>
+    <li>{@link android.provider.DocumentsProvider}</li>
+    <li>{@link android.provider.DocumentsContract}</li>
+</ol>
+
+<h2>비디오</h2>
+
+<ol>
+    <li><a href="http://www.youtube.com/watch?v=zxHVeXbK1P4">
+DevBytes: Android 4.4 저장소 액세스 프레임워크: 제공자</a></li>
+     <li><a href="http://www.youtube.com/watch?v=UFj9AEz0DHQ">
+DevBytes: Android 4.4 저장소 액세스 프레임워크: 클라이언트</a></li>
+</ol>
+
+
+<h2>코드 샘플</h2>
+
+<ol>
+    <li><a href="{@docRoot}samples/StorageProvider/index.html">
+저장소 제공자</a></li>
+     <li><a href="{@docRoot}samples/StorageClient/index.html">
+StorageClient</a></li>
+</ol>
+
+<h2>참고 항목</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        콘텐츠 제공자 기본 정보
+        </a>
+    </li>
+</ol>
+
+</div>
+</div>
+
+
+<p>Android 4.4(API 레벨 19)에서는 저장소 액세스 프레임워크(SAF)를 처음 도입하게 되었습니다. SAF는 
+사용자가 선호하는 문서 저장소 제공자 전체를 걸쳐 문서, 이미지 및 각종 다른 파일을 
+탐색하고 여는 작업을 간편하게 만들어줍니다. 표준형의, 사용하기 쉬운 UI로 
+사용자가 각종 앱과 제공자에 걸쳐 일관된 방식으로 파일을 탐색하고 최근 내용에 액세스할 수 있게 해줍니다.</p>
+
+<p>클라우드 또는 로컬 저장소 서비스가 이 에코시스템에 참가하려면 자신의 서비스를 캡슐화하는 
+{@link android.provider.DocumentsProvider}를 구현하면 됩니다. 
+제공자의 문서에 액세스해야 하는 클라이언트 앱의 경우 단 몇 줄의 코드만으로 
+SAF와 통합할 수 있습니다.</p>
+
+<p>SAF에는 다음과 같은 항목이 포함됩니다.</p>
+
+<ul>
+<li><strong>문서 제공자</strong>&mdash;일종의 콘텐츠 제공자로
+저장소 서비스(예: Google Drive 등)로 하여금 자신이 관리하는 파일을 드러내도록 허용합니다. 문서 제공자는 
+{@link android.provider.DocumentsProvider} 클래스의 하위 클래스로 구현됩니다. 
+문서 제공자 스키마는 기존의 파일 계층을 근거로 하지만, 
+문서 제공자가 데이터를 저장하는 물리적인 방법은 개발자가 선택하기 나름입니다. 
+Android 플랫폼에는 내장된 문서 제공자가 여러 개 있습니다. 
+예를 들어 다운로드, 이미지 및 비디오 등입니다.</li>
+
+<li><strong>클라이언트 앱</strong>&mdash;일종의 사용자 지정 앱으로
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 및/또는
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT} 인텐트를 호출하고, 
+문서 제공자가 반환하는 파일을 수신합니다.</li>
+
+<li><strong>선택기</strong>&mdash;일종의 시스템 UI로 사용자가 클라이언트 앱의 
+검색 기준을 만족하는 모든 문서 제공자에서 문서에 액세스할 수 있도록 해줍니다.</li>
+</ul>
+
+<p>SAF가 제공하는 기능을 몇 가지 예로 들면 다음과 같습니다.</p>
+<ul>
+<li>사용자들로 하여금 하나의 앱만이 아니라 모든 문서 제공자에서 콘텐츠를 탐색할 수 있게 해줍니다.</li>
+<li>여러분의 앱이 문서 제공자가 소유한 문서에 대한 장기적, 영구적 액세스 권한을 가질 수 있도록 
+해줍니다. 이 액세스 권한을 통해 사용자가 제공자에 있는 파일을 추가, 편집, 
+저장 및 삭제할 수 있습니다.</li>
+<li>여러 개의 사용자 계정을 지원하며 USB 저장소 제공자와 같은 임시 루트도 지원합니다. 
+이는 드라이브가 연결되어 있을 때만 나타납니다. </li>
+</ul>
+
+<h2 id ="overview">개요</h2>
+
+<p>SAF는 {@link android.provider.DocumentsProvider} 클래스의 
+하위 클래스인 콘텐츠 제공자를 중심으로 둘러싸고 있습니다. 데이터는 <em>문서 제공자</em> 내에서 일반적인 파일 계층으로 
+구조화됩니다.</p>
+<p><img src="{@docRoot}images/providers/storage_datamodel.png" alt="data model" /></p>
+<p class="img-caption"><strong>그림 1.</strong> 문서 제공자 데이터 모델입니다. 루트 하나가 하나의 문서를 가리키며, 
+이는 다시 트리 전체의 팬아웃을 시작합니다.</p>
+
+<p>다음 내용을 참고하십시오.</p>
+<ul>
+
+<li>각 문서 제공자는 하나 이상의 "루트"를 보고합니다. 
+이는 문서 트리 속을 탐색할 시작 지점입니다.
+각 루트에는 고유한 {@link android.provider.DocumentsContract.Root#COLUMN_ROOT_ID}가 있으며, 
+이는 해당 루트 아래의 콘텐츠를 나타내는 문서(디렉터리)를 
+가리킵니다.
+루트는 설계상 동적으로 만들어져 있어 여러 개의 계정, 임시 USB 저장소 기기 
+또는 사용자 로그인/로그아웃 등과 같은 경우를 지원하도록 되어 있습니다.</li>
+
+<li>각 루트 아래에 문서가 하나씩 있습니다. 해당 문서는 1부터 <em>N</em>까지의 문서를 가리키는데, 
+이는 각각 1부터 <em>N</em>의 문서를 가리킬 수 있습니다. </li>
+
+<li>각 저장소의 백엔드가 
+개별적인 파일과 디렉터리를 고유한 
+{@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID}로 
+참조하여 드러냅니다.문서 ID는 고유해야 하며 한 번 발행되고 나면 변경되지 않습니다. 
+이들은 기기 재부팅을 통괄하여 영구적인 URI 허가에 사용되기 때문입니다.</li>
+
+
+<li>문서는 열 수 있는 파일이거나(특정 MIME 유형으로), 
+추가 문서가 들어있는 디렉터리일 수 있습니다(
+{@link android.provider.DocumentsContract.Document#MIME_TYPE_DIR} MIME 유형으로).</li>
+
+<li>각 문서는 서로 다른 기능을 가지고 있을 수 있습니다. 이는 
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS COLUMN_FLAGS}에서 설명한 것과 같습니다. 
+ 예를 들어 {@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_WRITE}, 
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE} 및 
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_THUMBNAIL} 등입니다. 
+같은 {@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID}가 
+여러 디렉터리에 포함되어 있을 수도 있습니다.</li>
+</ul>
+
+<h2 id="flow">제어 흐름</h2>
+<p>위에서 언급한 바와 같이, 문서 제공자 데이터 모델은 일반적인 
+파일 계층을 기반으로 합니다. 그러나, 데이터를 물리적으로 저장하는 방식은 마음대로 선택할 수 있습니다. 다만 
+{@link android.provider.DocumentsProvider} API를 통해 액세스할 수 있기만 하면 됩니다. 
+예를 들어, 데이터를 저장하기 위해 태그 기반 클라우드 저장소를 사용해도 됩니다.</p>
+
+<p>그림 2는 사진 앱이 SAF를 사용하여 저장된 데이터에 액세스할 수 있는 방법을 
+예시로 나타낸 것입니다.</p>
+<p><img src="{@docRoot}images/providers/storage_dataflow.png" alt="app" /></p>
+
+<p class="img-caption"><strong>그림 2.</strong> 저장소 액세스 프레임워크 흐름</p>
+
+<p>다음 내용을 참고하십시오.</p>
+<ul>
+
+<li>SAF에서는 제공자와 클라이언트가 직접 상호 작용하지 않습니다.
+ 클라이언트가 파일과 상호 작용하기 위한 권한을 요청합니다(다시 말해, 
+파일을 읽고, 편집하고 생성 또는 삭제할 권한을 말합니다).</li>
+
+<li>상호 작용은 애플리케이션(이 예시에서는 주어진 사진 앱)이 인텐트 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 또는 {@link android.content.Intent#ACTION_CREATE_DOCUMENT}를 실행시키면 시작합니다. 이 인텐트에는 
+기준을 한층 더 정밀하게 하기 위한 필터가 포함될 수 있습니다. 예를 들어, "열 수 있는 파일 중에서 
+'이미지' MIME 유형을 가진 파일을 모두 주세요"라고 할 수 있습니다.</li>
+
+<li>인텐트가 실행되면 시스템 선택기가 각각의 등록된 제공자로 이동하여 사용자에게 
+일치하는 콘텐츠 루트를 보여줍니다.</li>
+
+<li>선택기는 사용자에게 문서에 액세스하는 데 쓰는 표준 인터페이스를 부여합니다. 이는 
+기본 문서 제공자 사이에 큰 차이가 있더라도 무관합니다. 예를 들어, 그림 2는 
+Google Drive 제공자, USB 제공자와 클라우드 제공자를 나타낸 것입니다.</li>
+</ul>
+
+<p>그림 3은 이미지를 검색 중인 사용자가 Google Drive 계정을 선택한 
+선택기를 나타낸 것입니다.</p>
+
+<p><img src="{@docRoot}images/providers/storage_picker.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>그림 3.</strong> 선택기</p>
+
+<p>사용자가 Google Drive를 선택하면 이미지가 그림 4에 나타난 것처럼 
+표시됩니다. 그때부터 사용자는 제공자와 클라이언트 앱이 지원하는 방식이라면 어떤 식으로든 
+이들 이미지와 상호 작용할 수 있게 됩니다.
+
+<p><img src="{@docRoot}images/providers/storage_photos.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>그림 4.</strong> 이미지</p>
+
+<h2 id="client">클라이언트 앱 작성</h2>
+
+<p>Android 4.3 이하에서는 앱이 또 다른 앱에서 파일을 검색할 수 있도록 하려면 
+ {@link android.content.Intent#ACTION_PICK}
+ 또는 {@link android.content.Intent#ACTION_GET_CONTENT}와 같은 인텐트를 호출해야만 했습니다. 그런 다음 
+파일을 선택할 앱을 하나 선택하고, 선택한 앱이 사용자 인터페이스를 제공하여야 사용자가 
+이용 가능한 파일 중에서 탐색하고 선택할 수 있었습니다. </p>
+
+<p>Android 4.4 이상에는 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 인텐트를 사용할 수 있다는 추가 옵션이 있습니다. 
+이는 시스템이 제어하는 선택기를 표시하여 사용자가 다른 앱에서 이용할 수 있게 만든 파일을 
+모두 탐색할 수 있게 해줍니다. 이 하나의 UI로부터 
+사용자는 지원되는 모든 앱에서 파일을 선택할 수 있는 것입니다.</p>
+
+<p>{@link android.content.Intent#ACTION_OPEN_DOCUMENT}는 
+{@link android.content.Intent#ACTION_GET_CONTENT}를 
+대체할 목적으로 만들어진 것이 아닙니다. 어느 것을 사용해야 할지는 각자의 앱에 필요한 것이 무엇인지에 좌우됩니다.</p>
+
+<ul>
+<li>앱이 단순히 데이터를 읽고/가져오기만을 바란다면 
+{@link android.content.Intent#ACTION_GET_CONTENT}를 사용하십시오. 
+이 방식을 사용하면 앱은 이미지 파일과 같은 데이터 사본을 가져오게 됩니다.</li>
+
+<li>앱이 문서 제공자가 보유한 문서에 장기적, 영구적 액세스 권한을 가지기를 바라는 경우 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT}를 사용하십시오.
+ 일례로 사용자들에게 문서 제공자에 저장된 이미지를 편집할 수 있게 해주는 
+사진 편집 앱을 들 수 있겠습니다. </li>
+
+</ul>
+
+
+<p>이 섹션에서는 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 및 
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT} 인텐트를 근거로 클라이언트 앱을 작성하는 방법을 설명합니다.</p>
+
+
+<h3 id="search">문서 검색</h3>
+
+<p>
+다음 조각에서는 {@link android.content.Intent#ACTION_OPEN_DOCUMENT}를 
+사용하여 이미지 파일이 들어 있는 문서 제공자를 
+검색합니다.</p>
+
+<pre>private static final int READ_REQUEST_CODE = 42;
+...
+/**
+ * Fires an intent to spin up the &quot;file chooser&quot; UI and select an image.
+ */
+public void performFileSearch() {
+
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's file
+    // browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones)
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only images, using the image MIME data type.
+    // If one wanted to search for ogg vorbis files, the type would be &quot;audio/ogg&quot;.
+    // To search for all documents available via installed storage providers,
+    // it would be &quot;*/*&quot;.
+    intent.setType(&quot;image/*&quot;);
+
+    startActivityForResult(intent, READ_REQUEST_CODE);
+}</pre>
+
+<p>다음 내용을 참고하십시오.</p>
+<ul>
+<li>앱이 {@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+ 인텐트를 실행시키면 이는 일치하는 문서 제공자를 모두 표시하는 선택기를 시작합니다.</li>
+
+<li>{@link android.content.Intent#CATEGORY_OPENABLE} 카테고리를 
+인텐트에 추가하면 결과를 필터링하여 이미지 파일 등 열 수 있는 문서만 표시합니다.</li>
+
+<li>{@code intent.setType("image/*")} 문으로 한층 더 필터링을 수행하여
+MIME 데이터 유형이 이미지인 문서만 표시하도록 합니다.</li>
+</ul>
+
+<h3 id="results">결과 처리</h3>
+
+<p>사용자가 선택기에서 문서를 선택하면 
+{@link android.app.Activity#onActivityResult onActivityResult()}가 호출됩니다. 
+선택한 문서를 가리키는 URI는 {@code resultData}
+매개변수 안에 들어있습니다. 이 URI를 {@link android.content.Intent#getData getData()}를 사용하여 추출합니다. 
+일단 이것을 가지게 되면 이를 사용하여 사용자가 원하는 문서를 검색하면 됩니다. 예:
+</p>
+
+<pre>&#64;Override
+public void onActivityResult(int requestCode, int resultCode,
+        Intent resultData) {
+
+    // The ACTION_OPEN_DOCUMENT intent was sent with the request code
+    // READ_REQUEST_CODE. If the request code seen here doesn't match, it's the
+    // response to some other intent, and the code below shouldn't run at all.
+
+    if (requestCode == READ_REQUEST_CODE && resultCode == Activity.RESULT_OK) {
+        // The document selected by the user won't be returned in the intent.
+        // Instead, a URI to that document will be contained in the return intent
+        // provided to this method as a parameter.
+        // Pull that URI using resultData.getData().
+        Uri uri = null;
+        if (resultData != null) {
+            uri = resultData.getData();
+            Log.i(TAG, "Uri: " + uri.toString());
+            showImage(uri);
+        }
+    }
+}
+</pre>
+
+<h3 id="metadata">문서 메타데이터 살펴보기</h3>
+
+<p>문서의 URI를 얻은 다음에는 그 문서의 메타데이터에 액세스할 수 있습니다. 이 
+조각은 해당 URI가 나타내는 문서의 메타데이터를 가져와 다음과 같이 기록합니다.</p>
+
+<pre>public void dumpImageMetaData(Uri uri) {
+
+    // The query, since it only applies to a single document, will only return
+    // one row. There's no need to filter, sort, or select fields, since we want
+    // all fields for one document.
+    Cursor cursor = getActivity().getContentResolver()
+            .query(uri, null, null, null, null, null);
+
+    try {
+    // moveToFirst() returns false if the cursor has 0 rows.  Very handy for
+    // &quot;if there's anything to look at, look at it&quot; conditionals.
+        if (cursor != null &amp;&amp; cursor.moveToFirst()) {
+
+            // Note it's called &quot;Display Name&quot;.  This is
+            // provider-specific, and might not necessarily be the file name.
+            String displayName = cursor.getString(
+                    cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
+            Log.i(TAG, &quot;Display Name: &quot; + displayName);
+
+            int sizeIndex = cursor.getColumnIndex(OpenableColumns.SIZE);
+            // If the size is unknown, the value stored is null.  But since an
+            // int can't be null in Java, the behavior is implementation-specific,
+            // which is just a fancy term for &quot;unpredictable&quot;.  So as
+            // a rule, check if it's null before assigning to an int.  This will
+            // happen often:  The storage API allows for remote files, whose
+            // size might not be locally known.
+            String size = null;
+            if (!cursor.isNull(sizeIndex)) {
+                // Technically the column stores an int, but cursor.getString()
+                // will do the conversion automatically.
+                size = cursor.getString(sizeIndex);
+            } else {
+                size = &quot;Unknown&quot;;
+            }
+            Log.i(TAG, &quot;Size: &quot; + size);
+        }
+    } finally {
+        cursor.close();
+    }
+}
+</pre>
+
+<h3 id="open-client">문서 열기</h3>
+
+<p>문서의 URI를 얻은 다음에는 문서를 열 수도 있고 원하는 대로 무엇이든 
+할 수 있습니다.</p>
+
+<h4>비트맵</h4>
+
+<p>다음은 {@link android.graphics.Bitmap}을 여는 방법을 예시로 나타낸 것입니다.</p>
+
+<pre>private Bitmap getBitmapFromUri(Uri uri) throws IOException {
+    ParcelFileDescriptor parcelFileDescriptor =
+            getContentResolver().openFileDescriptor(uri, "r");
+    FileDescriptor fileDescriptor = parcelFileDescriptor.getFileDescriptor();
+    Bitmap image = BitmapFactory.decodeFileDescriptor(fileDescriptor);
+    parcelFileDescriptor.close();
+    return image;
+}
+</pre>
+
+<p>이 작업을 UI 스레드에서 해서는 안 된다는 점을 유의하십시오. 이것은 배경에서 하되, 
+{@link android.os.AsyncTask}를 사용합니다. 비트맵을 열고 나면 이를 
+{@link android.widget.ImageView}로 표시할 수 있습니다.
+</p>
+
+<h4>InputStream 가져오기</h4>
+
+<p>다음은 URI에서 {@link java.io.InputStream}을 가져오는 방법을 예시로 나타낸 것입니다. 이 조각에서 
+파일의 줄이 문자열로 읽히고 있습니다.</p>
+
+<pre>private String readTextFromUri(Uri uri) throws IOException {
+    InputStream inputStream = getContentResolver().openInputStream(uri);
+    BufferedReader reader = new BufferedReader(new InputStreamReader(
+            inputStream));
+    StringBuilder stringBuilder = new StringBuilder();
+    String line;
+    while ((line = reader.readLine()) != null) {
+        stringBuilder.append(line);
+    }
+    fileInputStream.close();
+    parcelFileDescriptor.close();
+    return stringBuilder.toString();
+}
+</pre>
+
+<h3 id="create">새 문서 생성하기</h3>
+
+<p>개발자의 앱은 문서 제공자에서 새 문서를 생성할 수 있습니다. 이때 
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT}
+ 인텐트를 사용하면 됩니다. 파일을 생성하려면 인텐트에 MIME 유형과 파일 이름을 부여하고, 
+고유한 요청 코드로 이를 시작하면 됩니다. 나머지는 여러분 대신 알아서 해드립니다.</p>
+
+
+<pre>
+// Here are some examples of how you might call this method.
+// The first parameter is the MIME type, and the second parameter is the name
+// of the file you are creating:
+//
+// createFile("text/plain", "foobar.txt");
+// createFile("image/png", "mypicture.png");
+
+// Unique request code.
+private static final int WRITE_REQUEST_CODE = 43;
+...
+private void createFile(String mimeType, String fileName) {
+    Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as
+    // a file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Create a file with the requested MIME type.
+    intent.setType(mimeType);
+    intent.putExtra(Intent.EXTRA_TITLE, fileName);
+    startActivityForResult(intent, WRITE_REQUEST_CODE);
+}
+</pre>
+
+<p>새 문서를 생성하고 나면 
+{@link android.app.Activity#onActivityResult onActivityResult()}에서 URI를 가져와 거기에 계속해서 
+쓸 수 있습니다.</p>
+
+<h3 id="delete">문서 삭제하기</h3>
+
+<p>어느 문서에 대한 URI가 있고 해당 문서의 
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS Document.COLUMN_FLAGS}
+에 
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE SUPPORTS_DELETE}가 들어 있는 경우,
+해당 문서를 삭제할 수 있습니다. 예:</p>
+
+<pre>
+DocumentsContract.deleteDocument(getContentResolver(), uri);
+</pre>
+
+<h3 id="edit">문서 편집하기</h3>
+
+<p>준비된 텍스트 문서를 편집하는 데 SAF를 사용할 수 있습니다.
+이 조각은 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 인텐트를 실행하며 
+{@link android.content.Intent#CATEGORY_OPENABLE} 카테고리를 사용해 
+열 수 있는 문서만 표시하도록 합니다. 이것을 한층 더 필터링하여 텍스트 파일만 표시하게 하려면 다음과 같이 합니다.</p>
+
+<pre>
+private static final int EDIT_REQUEST_CODE = 44;
+/**
+ * Open a file for writing and append some text to it.
+ */
+ private void editDocument() {
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's
+    // file browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only text files.
+    intent.setType(&quot;text/plain&quot;);
+
+    startActivityForResult(intent, EDIT_REQUEST_CODE);
+}
+</pre>
+
+<p>다음으로, {@link android.app.Activity#onActivityResult onActivityResult()}
+(<a href="#results">결과 처리</a> 참조)에서 코드를 호출하여 편집 작업을 수행하도록 하면 됩니다. 
+다음 조각은 {@link android.content.ContentResolver}에서 {@link java.io.FileOutputStream}
+을 가져온 것입니다. 이것은 기본적으로 "쓰기" 모드를 사용합니다. 
+필요한 최소 수량의 액세스만을 요청하는 것이 가장 좋으니 쓰기만 필요하다면 
+읽기/쓰기를 요청하지 마십시오.</p>
+
+<pre>private void alterDocument(Uri uri) {
+    try {
+        ParcelFileDescriptor pfd = getActivity().getContentResolver().
+                openFileDescriptor(uri, "w");
+        FileOutputStream fileOutputStream =
+                new FileOutputStream(pfd.getFileDescriptor());
+        fileOutputStream.write(("Overwritten by MyCloud at " +
+                System.currentTimeMillis() + "\n").getBytes());
+        // Let the document provider know you're done by closing the stream.
+        fileOutputStream.close();
+        pfd.close();
+    } catch (FileNotFoundException e) {
+        e.printStackTrace();
+    } catch (IOException e) {
+        e.printStackTrace();
+    }
+}</pre>
+
+<h3 id="permissions">권한 유지</h3>
+
+<p>앱이 읽기 또는 쓰기 작업에 대한 파일을 열면 시스템이 앱에 해당 파일에 대한 URI 권한 허가를 
+부여합니다. 이것은 사용자의 장치를 다시 시작할 때까지 유지됩니다.
+하지만 만일 앱이 이미지 편집 앱이고, 사용자가 여러분의 앱에서 바로 편집한 5개의 이미지에 
+액세스할 수 있도록 하고자 한다고 가정해봅시다. 사용자의 기기가 재시작되면 
+여러분이 사용자에게 시스템 선택기를 다시 보내 해당 파일을 검색하도록 해야 할 텐데, 
+이것은 물론 이상적인 것과는 거리가 멉니다.</p>
+
+<p>이런 일이 일어나지 않도록 방지하기 위해 시스템이 앱에 부여한 권한을 유지할 수 있습니다.
+여러분의 앱은 시스템이 제공하는 유지 가능한 URI 권한 허가를 
+효율적으로 "받아들입니다". 이렇게 하면 사용자가 여러분의 앱을 통해 파일에 지속적인 액세스 권한을 가질 수 있으며, 
+이는 기기가 다시 시작되더라도 관계 없습니다.</p>
+
+
+<pre>final int takeFlags = intent.getFlags()
+            &amp; (Intent.FLAG_GRANT_READ_URI_PERMISSION
+            | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
+// Check for the freshest data.
+getContentResolver().takePersistableUriPermission(uri, takeFlags);</pre>
+
+<p>마지막 한 단계가 남았습니다. 여러분의 앱이 액세스한 가장 최근의 URI를 
+저장해두었을 수 있지만, 이는 더 이상 유효하지 않을 수 있습니다. 또 다른 앱이 문서를 
+삭제하거나 수정했을 수 있기 때문입니다. 따라서, 항상 
+{@code getContentResolver().takePersistableUriPermission()}을 
+호출하여 최신 데이터를 확인해야 합니다.</p>
+
+<h2 id="custom">사용자 지정 문서 제공자 작성하기</h2>
+
+<p>
+파일용 저장소 서비스를 제공하는 앱을 개발 중인 경우(예를 들어 
+클라우드 저장 서비스 등), SAF를 통해 파일을 사용할 수 있도록 하려면 사용자 지정 문서 제공자를 
+작성하면 됩니다.  이 섹션에서는 이렇게 하는 방법을 설명합니다.
+</p>
+
+
+<h3 id="manifest">매니페스트</h3>
+
+<p>사용자 지정 문서 제공자를 구현하려면 애플리케이션의 매니페스트에 다음과 같은 항목을 
+추가하십시오.</p>
+<ul>
+
+<li>API 레벨 19 이상의 대상.</li>
+
+<li>사용자 지정 저장소 제공자를 선언하는 <code>&lt;provider&gt;</code> 
+요소. </li>
+
+<li>제공자의 이름은 그 클래스 이름이며 여기에 패키지 이름도 포함됩니다. 
+예: <code>com.example.android.storageprovider.MyCloudProvider</code></li>
+
+<li>권한의 이름, 이는 패키지 이름과 같으며(이 예시에서는 
+<code>com.example.android.storageprovider</code>)여기에 콘텐츠 제공자 유형을 더합니다
+(<code>documents</code>). 예: {@code com.example.android.storageprovider.documents}</li>
+
+<li><code>android:exported</code> 속성을 <code>&quot;true&quot;</code>로 설정.
+제공자를 내보내 다른 앱이 볼 수 있도록 해야 합니다.</li>
+
+<li><code>android:grantUriPermissions</code> 속성을 
+<code>&quot;true&quot;</code>로 설정. 이렇게 설정하면 시스템이 여러분의 제공자 안에 있는 콘텐츠에 액세스하도록 다른 앱에 
+권한을 허가할 수 있게 해줍니다. 특정 문서에 대한 권한 부여를 유지하는 방법에 대한 논의는 
+<a href="#permissions">권한 유지</a>를 참조하십시오.</li>
+
+<li>{@code MANAGE_DOCUMENTS} 권한. 기본적으로 제공자는 누구나 이용할 수 있습니다.
+ 이 권한을 추가하면 여러분의 제공자를 시스템에 제한하게 됩니다. 
+이 제한은 보안상 매우 중요합니다.</li>
+
+<li>{@code android:enabled} 속성을 리소스 파일에서 정의한 부울 값으로 
+설정합니다. 이 속성의 목적은 Android 4.3 이하에서 실행되는 기기에서 제공자를 비활성화하는 데 있습니다. 
+예를 들어 {@code android:enabled="@bool/atLeastKitKat"} 등입니다. 이 속성을 
+매니페스트에 추가하는 것 이외에도 다음과 같은 작업을 해야 합니다.
+<ul>
+<li>{@code res/values/} 아래의 {@code bool.xml} 리소스 파일에 
+이 라인을 추가합니다. <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>{@code res/values-v19/} 아래의 {@code bool.xml} 리소스 파일에 
+이 라인을 추가합니다. <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;true&lt;/bool&gt;</pre></li>
+</ul></li>
+
+<li>
+{@code android.content.action.DOCUMENTS_PROVIDER} 동작을 포함한 인텐트 필터가 있어야 
+시스템이 제공자를 검색할 때 여러분의 제공자가 선택기에 나타날 수 있습니다.</li>
+
+</ul>
+<p>다음은 제공자를 포함한 샘플 매니페스트에서 발췌한 것입니다.</p>
+
+<pre>&lt;manifest... &gt;
+    ...
+    &lt;uses-sdk
+        android:minSdkVersion=&quot;19&quot;
+        android:targetSdkVersion=&quot;19&quot; /&gt;
+        ....
+        &lt;provider
+            android:name=&quot;com.example.android.storageprovider.MyCloudProvider&quot;
+            android:authorities=&quot;com.example.android.storageprovider.documents&quot;
+            android:grantUriPermissions=&quot;true&quot;
+            android:exported=&quot;true&quot;
+            android:permission=&quot;android.permission.MANAGE_DOCUMENTS&quot;
+            android:enabled=&quot;&#64;bool/atLeastKitKat&quot;&gt;
+            &lt;intent-filter&gt;
+                &lt;action android:name=&quot;android.content.action.DOCUMENTS_PROVIDER&quot; /&gt;
+            &lt;/intent-filter&gt;
+        &lt;/provider&gt;
+    &lt;/application&gt;
+
+&lt;/manifest&gt;</pre>
+
+<h4 id="43">Android 4.3 이하에서 실행되는 기기 지원</h4>
+
+<p>
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 인텐트는 
+Android 4.4 이상에서 실행되는 기기에서만 사용할 수 있습니다. 
+애플리케이션이 {@link android.content.Intent#ACTION_GET_CONTENT}를 지원하도록 하여 
+Android 4.3 이하에서 실행되는 기기에도 적용되도록 하려면 Android 4.4 이상에서 실행되는 기기용 매니페스트에 있는 
+{@link android.content.Intent#ACTION_GET_CONTENT}
+ 인텐트 필터를 비활성화해야 합니다. 
+문서 제공자와 {@link android.content.Intent#ACTION_GET_CONTENT}는 상호 배타적인 것으로 
+간주해야 합니다. 둘을 모두 동시에 지원하는 경우, 앱이 시스템 선택기 UI에 
+두 번 나타나 저장된 데이터에 액세스할 두 가지 서로 다른 방법을 제안하게 됩니다.
+ 이렇게 되면 사용자에게 혼동을 주게 되겠죠.</p>
+
+<p>다음은 Android 버전 4.4 이상에서 실행되는 기기용 
+{@link android.content.Intent#ACTION_GET_CONTENT} 인텐트 필터를 
+비활성화하는 데 권장되는 방법입니다.</p>
+
+<ol>
+<li>{@code res/values/} 아래의 {@code bool.xml} 리소스 파일에 
+이 라인을 추가합니다. <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;true&lt;/bool&gt;</pre></li>
+
+<li>{@code res/values-v19/} 아래의 {@code bool.xml} 리소스 파일에 
+이 라인을 추가합니다. <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>
+<a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">액티비티 
+별칭</a>을 추가하여 버전 4.4(API 레벨 19) 이상을 대상으로 한 {@link android.content.Intent#ACTION_GET_CONTENT} 
+인텐트 필터를 비활성화합니다. 예:
+
+<pre>
+&lt;!-- This activity alias is added so that GET_CONTENT intent-filter
+     can be disabled for builds on API level 19 and higher. --&gt;
+&lt;activity-alias android:name=&quot;com.android.example.app.MyPicker&quot;
+        android:targetActivity=&quot;com.android.example.app.MyActivity&quot;
+        ...
+        android:enabled=&quot;@bool/atMostJellyBeanMR2&quot;&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name=&quot;android.intent.action.GET_CONTENT&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.OPENABLE&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.DEFAULT&quot; /&gt;
+        &lt;data android:mimeType=&quot;image/*&quot; /&gt;
+        &lt;data android:mimeType=&quot;video/*&quot; /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity-alias&gt;
+</pre>
+</li>
+</ol>
+<h3 id="contract">계약</h3>
+
+<p>사용자 지정 제공자를 작성할 때면 일반적으로 수반되는 작업 중 하나가 
+계약 클래스를 구현하는 것입니다. 이는 
+<a href="{@docRoot}guide/topics/providers/content-provider-creating.html#ContractClass">
+콘텐츠 제공자</a> 개발자 가이드에서 설명한 것과 같습니다. 계약 클래스는 {@code public final} 클래스로, 
+이 안에 URI에 대한 상수 정의, 열 이름, MIME 유형 및 제공자에 관련된 
+다른 메타 데이터가 들어 있습니다. SAF가 
+이와 같은 계약 클래스를 대신 제공해주므로 직접 쓰지 않아도 
+됩니다.</p>
+
+<ul>
+   <li>{@link android.provider.DocumentsContract.Document}</li>
+   <li>{@link android.provider.DocumentsContract.Root}</li>
+</ul>
+
+<p>예를 들어 다음은 여러분의 문서 제공자가 문서 또는 루트에 대해 쿼리된 경우 
+커서로 반환할 수 있는 열을 나타낸 것입니다.</p>
+
+<pre>private static final String[] DEFAULT_ROOT_PROJECTION =
+        new String[]{Root.COLUMN_ROOT_ID, Root.COLUMN_MIME_TYPES,
+        Root.COLUMN_FLAGS, Root.COLUMN_ICON, Root.COLUMN_TITLE,
+        Root.COLUMN_SUMMARY, Root.COLUMN_DOCUMENT_ID,
+        Root.COLUMN_AVAILABLE_BYTES,};
+private static final String[] DEFAULT_DOCUMENT_PROJECTION = new
+        String[]{Document.COLUMN_DOCUMENT_ID, Document.COLUMN_MIME_TYPE,
+        Document.COLUMN_DISPLAY_NAME, Document.COLUMN_LAST_MODIFIED,
+        Document.COLUMN_FLAGS, Document.COLUMN_SIZE,};
+</pre>
+
+<h3 id="subclass">하위 클래스 DocumentsProvider</h3>
+
+<p>사용자 지정 문서 제공자를 작성하기 위한 다음 단계는 
+추상 클래스 {@link android.provider.DocumentsProvider}를 하위 클래스로 만드는 것입니다. 최소한 다음과 같은 메서드를 구현해야 합니다.
+</p>
+
+<ul>
+<li>{@link android.provider.DocumentsProvider#queryRoots queryRoots()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryDocument queryDocument()}</li>
+
+<li>{@link android.provider.DocumentsProvider#openDocument openDocument()}</li>
+</ul>
+
+<p>꼭 구현해야만 하는 메서드는 이들뿐이지만, 개발자 여러분이 구현하고자 하는 메서드는 이보다 
+훨씬 많을 수도 있습니다. 자세한 내용은{@link android.provider.DocumentsProvider} 
+를 참조하십시오.</p>
+
+<h4 id="queryRoots">QueryRoots 구현</h4>
+
+<p>{@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} 구현은 반드시 {@link android.database.Cursor}를 반환해야 하며, 
+이는 문서 제공자의 모든 루트 디렉터리를 가리켜야 합니다. 이때 
+{@link android.provider.DocumentsContract.Root}에서 정의한 열을 사용합니다.</p>
+
+<p>다음 조각에서 {@code projection} 매개변수는 
+발신자가 돌려받고자 하는 특정 필드를 나타냅니다. 이 조각은 새 커서를 생성하며
+그에 하나의 행을 추가합니다. 하나의 루트, 
+다운로드 또는 이미지와 같은 최상위 레벨 디렉터리가 해당됩니다.  대부분의 제공자에는 루트가 하나뿐입니다. 하나 이상이 있을 수도 있습니다. 
+예를 들어 사용자 계정이 여러 개인 경우가 있습니다. 그런 경우에는 커서에 두 번째 행을 
+추가하면 됩니다.</p>
+
+<pre>
+&#64;Override
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+
+    // Create a cursor with either the requested fields, or the default
+    // projection if "projection" is null.
+    final MatrixCursor result =
+            new MatrixCursor(resolveRootProjection(projection));
+
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+    }
+
+    // It's possible to have multiple roots (e.g. for multiple accounts in the
+    // same app) -- just add multiple cursor rows.
+    // Construct one row for a root called &quot;MyCloud&quot;.
+    final MatrixCursor.RowBuilder row = result.newRow();
+    row.add(Root.COLUMN_ROOT_ID, ROOT);
+    row.add(Root.COLUMN_SUMMARY, getContext().getString(R.string.root_summary));
+
+    // FLAG_SUPPORTS_CREATE means at least one directory under the root supports
+    // creating documents. FLAG_SUPPORTS_RECENTS means your application's most
+    // recently used documents will show up in the &quot;Recents&quot; category.
+    // FLAG_SUPPORTS_SEARCH allows users to search all documents the application
+    // shares.
+    row.add(Root.COLUMN_FLAGS, Root.FLAG_SUPPORTS_CREATE |
+            Root.FLAG_SUPPORTS_RECENTS |
+            Root.FLAG_SUPPORTS_SEARCH);
+
+    // COLUMN_TITLE is the root title (e.g. Gallery, Drive).
+    row.add(Root.COLUMN_TITLE, getContext().getString(R.string.title));
+
+    // This document id cannot change once it's shared.
+    row.add(Root.COLUMN_DOCUMENT_ID, getDocIdForFile(mBaseDir));
+
+    // The child MIME types are used to filter the roots and only present to the
+    //  user roots that contain the desired type somewhere in their file hierarchy.
+    row.add(Root.COLUMN_MIME_TYPES, getChildMimeTypes(mBaseDir));
+    row.add(Root.COLUMN_AVAILABLE_BYTES, mBaseDir.getFreeSpace());
+    row.add(Root.COLUMN_ICON, R.drawable.ic_launcher);
+
+    return result;
+}</pre>
+
+<h4 id="queryChildDocuments">QueryChildDocuments 구현</h4>
+
+<p>
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}
+ 구현은 반드시 {@link android.database.Cursor}를 반환해야 하며, 
+이는 지정된 디렉터리 내의 모든 파일을 가리켜야 합니다. 이때 
+{@link android.provider.DocumentsContract.Document}에서 정의한 열을 사용합니다.</p>
+
+<p>이 메서드는 선택기 UI에서 애플리케이션 루트를 선택하는 경우 호출됩니다. 
+이는 해당 루트 아래 디렉터리의 하위 문서를 가져옵니다.  이것은 루트에서뿐만 아니라 파일 계층의 어느 레벨에서나 
+호출할 수 있습니다. 이 조각은 요청한 열로 새 커서를 만든 다음, 
+상위 디렉터리에 있는 모든 직속 하위에 대한 정보를 커서에 추가합니다.
+하위는 이미지, 또 다른 디렉터리가 될 수도 있고
+어느 파일이라도 될 수 있습니다.</p>
+
+<pre>&#64;Override
+public Cursor queryChildDocuments(String parentDocumentId, String[] projection,
+                              String sortOrder) throws FileNotFoundException {
+
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    final File parent = getFileForDocId(parentDocumentId);
+    for (File file : parent.listFiles()) {
+        // Adds the file's display name, MIME type, size, and so on.
+        includeFile(result, null, file);
+    }
+    return result;
+}
+</pre>
+
+<h4 id="queryDocument">QueryDocuments 구현</h4>
+
+<p>
+{@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+ 구현은 반드시 {@link android.database.Cursor}를 반환해야 하며, 
+이는 지정된 파일을 가리켜야 합니다. 이때 {@link android.provider.DocumentsContract.Document}에서 정의한 열을 사용합니다.
+</p>
+
+<p>{@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+ 메서드는 
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}에서 
+전달된 것과 같은 정보를 반환하지만, 특정한 파일에만 해당됩니다.</p>
+
+
+<pre>&#64;Override
+public Cursor queryDocument(String documentId, String[] projection) throws
+        FileNotFoundException {
+
+    // Create a cursor with the requested projection, or the default projection.
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    includeFile(result, documentId, null);
+    return result;
+}
+</pre>
+
+<h4 id="openDocument">OpenDocument 구현</h4>
+
+<p>지정된 파일을 나타내는 
+{@link android.os.ParcelFileDescriptor}를 반환하려면 {@link android.provider.DocumentsProvider#openDocument
+openDocument()}를 구현해야 합니다. 다른 앱들이 반환된 {@link android.os.ParcelFileDescriptor}를
+ 사용하여 데이터를 스트리밍할 수 있습니다. 시스템은 사용자가 파일을 선택하고 
+클라이언트 앱이 이에 대한 액세스를 요청하면서 
+{@link android.content.ContentResolver#openFileDescriptor openFileDescriptor()}를 사용할 때 이 메서드를 호출합니다. 
+예를 들면 다음과 같습니다.</p>
+
+<pre>&#64;Override
+public ParcelFileDescriptor openDocument(final String documentId,
+                                         final String mode,
+                                         CancellationSignal signal) throws
+        FileNotFoundException {
+    Log.v(TAG, &quot;openDocument, mode: &quot; + mode);
+    // It's OK to do network operations in this method to download the document,
+    // as long as you periodically check the CancellationSignal. If you have an
+    // extremely large file to transfer from the network, a better solution may
+    // be pipes or sockets (see ParcelFileDescriptor for helper methods).
+
+    final File file = getFileForDocId(documentId);
+
+    final boolean isWrite = (mode.indexOf('w') != -1);
+    if(isWrite) {
+        // Attach a close listener if the document is opened in write mode.
+        try {
+            Handler handler = new Handler(getContext().getMainLooper());
+            return ParcelFileDescriptor.open(file, accessMode, handler,
+                        new ParcelFileDescriptor.OnCloseListener() {
+                &#64;Override
+                public void onClose(IOException e) {
+
+                    // Update the file with the cloud server. The client is done
+                    // writing.
+                    Log.i(TAG, &quot;A file with id &quot; +
+                    documentId + &quot; has been closed!
+                    Time to &quot; +
+                    &quot;update the server.&quot;);
+                }
+
+            });
+        } catch (IOException e) {
+            throw new FileNotFoundException(&quot;Failed to open document with id &quot;
+            + documentId + &quot; and mode &quot; + mode);
+        }
+    } else {
+        return ParcelFileDescriptor.open(file, accessMode);
+    }
+}
+</pre>
+
+<h3 id="security">보안</h3>
+
+<p>여러분의 문서 제공자가 암호로 보호된 클라우드 저장소 서비스이고
+여러분은 사용자가 파일을 공유하기 전에 우선 로그인부터 하도록 확실히 해두고 싶다고 가정합니다. 
+사용자가 로그인되지 않은 경우 앱은 어떻게 해야 합니까?  해법은 
+{@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} 구현에서 루트를 반환하지 않는 것입니다. 다시 말해, 텅 빈 루트 커서를 반환하는 것입니다.</p>
+
+<pre>
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+...
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+}
+</pre>
+
+<p>또 다른 단계는 {@code getContentResolver().notifyChange()}를 호출하는 것입니다.
+{@link android.provider.DocumentsContract}를 기억하십니까?  이것을 사용하는 이유는 
+바로 이 URI를 만들기 위해서입니다. 다음 조각은 사용자의 로그인 상태가 변경될 때마다 
+시스템이 문서 제공자의 루트를 쿼리하도록 지시하고 있습니다. 사용자가 로그인되어 있지 않은 상태에서 
+{@link android.provider.DocumentsProvider#queryRoots queryRoots()}를 호출하면 
+위에서 나타낸 것과 같이 빈 커서를 반환합니다. 이렇게 하면 사용자가 제공자에 로그인되었을 때만 
+제공자의 문서를 사용할 수 있도록 보장할 수 있습니다.</p>
+
+<pre>private void onLoginButtonClick() {
+    loginOrLogout();
+    getContentResolver().notifyChange(DocumentsContract
+            .buildRootsUri(AUTHORITY), null);
+}
+</pre>
\ No newline at end of file
diff --git a/docs/html-intl/intl/ko/guide/topics/resources/accessing-resources.jd b/docs/html-intl/intl/ko/guide/topics/resources/accessing-resources.jd
new file mode 100644
index 0000000..be9dd6b
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/resources/accessing-resources.jd
@@ -0,0 +1,337 @@
+page.title=리소스 액세스
+parent.title=애플리케이션 리소스
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>간략히 보기</h2>
+  <ul>
+    <li>리소스는 {@code R.java}의 정수를 사용하는 코드, 예를 들어 
+{@code R.drawable.myimage}에서 참조할 수 있습니다.</li>
+    <li>리소스는 특수 XML 구문을 사용하는 리소스, 예를 들어 {@code
+&#64;drawable/myimage}에서 참조할 수 있습니다.</li>
+    <li>
+{@link android.content.res.Resources}의 메서드로 앱 리소스에 액세스할 수도 있습니다.</li>
+  </ul>
+
+  <h2>Key 클래스</h2>
+  <ol>
+    <li>{@link android.content.res.Resources}</li>
+  </ol>
+
+  <h2>이 문서의 내용</h2>
+  <ol>
+    <li><a href="#ResourcesFromCode">코드에서 리소스 액세스</a></li>
+    <li><a href="#ResourcesFromXml">XML에서 리소스 액세스</a>
+      <ol>
+        <li><a href="#ReferencesToThemeAttributes">스타일 속성 참조</a></li>
+      </ol>
+    </li>
+    <li><a href="#PlatformResources">플랫폼 리소스 액세스</a></li>
+  </ol>
+
+  <h2>참고 항목</h2>
+  <ol>
+    <li><a href="providing-resources.html">리소스 제공</a></li>
+    <li><a href="available-resources.html">리소스 유형</a></li>
+  </ol>
+</div>
+</div>
+
+
+
+
+<p>일단 어떤 리소스를 애플리케이션에 제공한 다음에는(<a href="providing-resources.html">리소스 제공</a>에서 논의), 
+해당 리소스의 리소스 ID를 참조함으로써 이를 적용할 수 있습니다. 모든 리소스 ID는 
+{@code aapt} 도구가 자동으로 생성하는 프로젝트의 {@code R} 클래스에서 정의됩니다.</p>
+
+<p>애플리케이션이 컴파일링되면, {@code aapt}가 {@code R} 클래스를 생성하며, 이 클래스 안에 {@code
+res/} 디렉터리에 있는 모든 리소스의 
+리소스 ID가 들어있습니다. 각 리소스 유형에는 {@code R} 하위 클래스가 있고(예: 모든 드로어블 리소스에 대한 
+{@code R.drawable}), 해당 유형의 각 리소스에는 정적
+정수가 있습니다(예: {@code R.drawable.icon}). 이 정수가 
+리소스를 검색하는 데 사용할 수 있는 리소스 ID입니다.</p>
+
+<p>{@code R} 클래스가 리소스 ID가 지정되는 곳이기는 하지만, 리소스 ID를 찾기 위해 
+이곳을 볼 필요는 전혀 없습니다. 하나의 리소스 ID는 항상 다음과 같이 구성됩니다.</p>
+<ul>
+  <li><em>리소스 유형</em>: 각 리소스는 "유형"으로 그룹화됩니다. 예: {@code
+string}, {@code drawable} 및 {@code layout} 다양한 유형에 관한 자세한 정보는 <a href="available-resources.html">리소스 유형</a>을 참조하십시오.
+  </li>
+  <li><em>리소스 이름</em>: 
+리소스가 단순 값(예: 문자열 등)일 경우, 
+확장자를 제외한 파일 이름이나 XML {@code android:name} 속성 값 중 하나입니다.</li>
+</ul>
+
+<p>리소스에 액세스하는 방법은 두 가지가 있습니다.</p>
+<ul>
+  <li><strong>코드 내부에서:</strong> {@code R}
+클래스의 하위 클래스에서 정적 정수를 사용합니다. 예:
+    <pre class="classic no-pretty-print">R.string.hello</pre>
+    <p>{@code string}은 리소스 유형이고 {@code hello}는 리소스 이름입니다. 리소스 ID를 이 형식으로 제공하면 리소스에 액세스할 수 있는 
+Android API가 많습니다. 
+<a href="#ResourcesFromCode">코드 내 리소스 액세스</a>를 참조하십시오.</p>
+  </li>
+  <li><strong>XML 내부에서:</strong> {@code R} 클래스에서 정의된 
+리소스 ID에 상응하기도 하는 특수 XML 구문을 사용합니다. 예:
+    <pre class="classic no-pretty-print">&#64;string/hello</pre>
+    <p>{@code string}은 리소스 유형이고 {@code hello}는 리소스 이름입니다. 이 
+구문은 리소스로 값을 제공할 것으로 예상되는 어느 곳에서나 XML 리소스 형태로 사용할 수 있습니다. <a href="#ResourcesFromXml">XML에서 리소스 액세스</a>를 참조하십시오.</p>
+  </li>
+</ul>
+
+
+
+<h2 id="ResourcesFromCode">코드 내 리소스 액세스 </h2>
+
+<p>리소스 ID를 메서드 매개변수로 전달하면 코드 내 리소스를 사용할 수 있습니다. 예를 들어
+, {@link android.widget.ImageView}를 설정하여 {@link android.widget.ImageView#setImageResource(int) setImageResource()}를 사용하는 {@code res/drawable/myimage.png}
+리소스를 사용할 수 있습니다.</p>
+<pre>
+ImageView imageView = (ImageView) findViewById(R.id.myimageview);
+imageView.setImageResource(<strong>R.drawable.myimage</strong>);
+</pre>
+
+<p>{@link
+android.content.res.Resources}에서 메서드를 사용하는 개별 리소스를 검색할 수도 있으며, 이는 
+{@link android.content.Context#getResources()}로 인스턴스를 가져올 수 있습니다.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>원본 파일에 액세스</h2>
+
+<p>흔한 일은 아니지만, 원본 파일과 디렉터리에 액세스해야 하는 경우가 있습니다. 이 경우에는 
+{@code res/}에 파일을 저장하더라도 소용이 없습니다. 
+{@code res/}에서 리소스를 읽는 방법은 리소스 ID를 사용하는 것뿐이기 때문입니다. 그 대신 리소스를 
+{@code assets/} 디렉터리에 저장하면 됩니다.</p>
+<p>{@code assets/} 디렉터리에 저장된 파일은 리소스
+ID가 부여되지 <em>않으므로</em>, 이와 같은 리소스는 {@code R} 클래스나 XML 리소스에서 참조할 수 없습니다. 그 대신 
+일반 파일 시스템처럼 {@code assets/} 디렉터리에 파일을 쿼리하고 
+{@link android.content.res.AssetManager}를 사용하여 원시 데이터를 읽을 수 있습니다.</p>
+<p>하지만 필요한 것이 원시 데이터(동영상 또는 오디오 파일 등)를 읽는 능력뿐인 경우라면,
+파일을 {@code res/raw/} 디렉터리에 저장한 다음 일련의 바이트 스트림을 {@link
+android.content.res.Resources#openRawResource(int) openRawResource()}를 사용하여 읽으면 됩니다.</p>
+
+</div>
+</div>
+
+
+<h3>구문</h3>
+
+<p>다음은 코드로 리소스를 참조하는 데 쓰는 구문입니다.</p>
+
+<pre class="classic no-pretty-print">
+[<em>&lt;package_name&gt;</em>.]R.<em>&lt;resource_type&gt;</em>.<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li><em>{@code &lt;package_name&gt;}</em>은(는) 리소스가 위치한 패키지의 이름입니다(
+자체 패키지의 리소스를 참조할 경우에는 필요하지 않습니다).</li>
+  <li><em>{@code &lt;resource_type&gt;}</em>은(는) 해당 리소스 유형의 {@code R} 하위 클래스입니다.</li>
+  <li><em>{@code &lt;resource_name&gt;}</em>은(는) 확장자가 없는 리소스 파일 이름이거나
+XML 요소의 {@code android:name} 속성 값입니다(단순
+값의 경우).</li>
+</ul>
+<p>각 리소스 유형과 참조 방법에 관한 자세한 내용은 <a href="available-resources.html">리소스 유형</a>
+을 참조하십시오.</p>
+
+
+<h3>사용 사례</h3>
+
+<p>리소스 ID 매개변수를 허용하는 메서드가 많이 있고, {@link android.content.res.Resources}에서 메서드를
+ 사용하여 리소스를 검색할 수 있습니다. {@link android.content.Context#getResources
+Context.getResources()}로 {@link
+android.content.res.Resources}의 인스턴스를 가져올 수 있습니다.</p>
+
+
+<p>다음은 코드로 리소스에 액세스한 몇 가지 예시입니다.</p>
+
+<pre>
+// Load a background for the current screen from a drawable resource
+{@link android.app.Activity#getWindow()}.{@link
+android.view.Window#setBackgroundDrawableResource(int)
+setBackgroundDrawableResource}(<strong>R.drawable.my_background_image</strong>) ;
+
+// Set the Activity title by getting a string from the Resources object, because
+//  this method requires a CharSequence rather than a resource ID
+{@link android.app.Activity#getWindow()}.{@link android.view.Window#setTitle(CharSequence)
+setTitle}(getResources().{@link android.content.res.Resources#getText(int)
+getText}(<strong>R.string.main_title</strong>));
+
+// Load a custom layout for the current screen
+{@link android.app.Activity#setContentView(int)
+setContentView}(<strong>R.layout.main_screen</strong>);
+
+// Set a slide in animation by getting an Animation from the Resources object
+mFlipper.{@link android.widget.ViewAnimator#setInAnimation(Animation)
+setInAnimation}(AnimationUtils.loadAnimation(this,
+        <strong>R.anim.hyperspace_in</strong>));
+
+// Set the text on a TextView object using a resource ID
+TextView msgTextView = (TextView) findViewById(<strong>R.id.msg</strong>);
+msgTextView.{@link android.widget.TextView#setText(int)
+setText}(<strong>R.string.hello_message</strong>);
+</pre>
+
+
+<p class="caution"><strong>주의:</strong> 손으로 {@code
+R.java} 파일을 수정해서는 안 됩니다.&mdash;이것은 프로젝트가
+컴파일되었을 때 {@code aapt} 도구가 생성한 파일입니다. 모든 변경 사항은 다음 번 컴파일에서 재정의됩니다.</p>
+
+
+
+<h2 id="ResourcesFromXml">XML에서 리소스 액세스</h2>
+
+<p>기존 리소스에 대한 참조를 사용하여
+일부 XML 속성과 요소의 값을 정의할 수 있습니다. 이 작업은 레이아웃 파일을 생성할 때 위젯에 문자열과 이미지를 제공하기 위해 
+자주 하게 됩니다.</p>
+
+<p>예를 들어, 레이아웃에 {@link android.widget.Button}을 추가하면 
+해당 버튼 텍스트에 <a href="string-resource.html">문자열 리소스</a>를 사용해야 합니다.</p>
+
+<pre>
+&lt;Button
+    android:layout_width="fill_parent"
+    android:layout_height="wrap_content"
+    android:text="<strong>@string/submit</strong>" /&gt;
+</pre>
+
+
+<h3>구문</h3>
+
+<p>다음은 XML 리소스로 리소스를 참조하는 데 쓰는 구문입니다.</p>
+
+<pre class="classic no-pretty-print">
+&#64;[<em>&lt;package_name&gt;</em>:]<em>&lt;resource_type&gt;</em>/<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li>{@code &lt;package_name&gt;}은(는) 리소스가 위치한 패키지의 이름입니다(
+같은 패키지의 리소스를 참조할 경우에는 필요하지 않습니다).</li>
+  <li>{@code &lt;resource_type&gt;}은(는) 해당 리소스 유형의 
+{@code R} 하위 클래스입니다.</li>
+  <li>{@code &lt;resource_name&gt;}은(는) 확장자가 없는 리소스 파일 이름이거나
+XML 요소의 {@code android:name} 속성 값입니다(단순
+값의 경우).</li>
+</ul>
+
+<p>각 리소스 유형과 참조 방법에 관한 자세한 내용은 <a href="available-resources.html">리소스 유형</a>
+을 참조하십시오.</p>
+
+
+<h3>사용 사례</h3>
+
+<p>몇몇 경우에는 값에 대한 리소스를 반드시 XML로 사용해야 하지만(예: 위젯에 드로어블 이미지를
+ 적용하기 위해), 단순 값을 허용하는 곳이라면 어디서든 XML로 리소스를 사용할 수도 있습니다. 예를 들어
+, <a href="more-resources.html#Color">색상 리소스</a>와 <a href="string-resource.html">문자열 리소스</a>를 포함한 다음과 같은 리소스 파일을 가지고 있다고 합시다.</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+   &lt;color name="opaque_red">#f00&lt;/color>
+   &lt;string name="hello">Hello!&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>텍스트 색상과 
+텍스트 문자열을 설정하는 데 이와 같은 리소스를 다음의 레이아웃 파일에서 사용할 수 있습니다.</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;color/opaque_red</strong>&quot;
+    android:text=&quot;<strong>&#64;string/hello</strong>&quot; /&gt;
+</pre>
+
+<p>이 경우, 리소스를 자체 패키지에서 가져왔으므로 리소스 참조에 패키지 이름을
+지정하지 않아도 됩니다. 
+시스템 리소스를 참조하려면 패키지 이름을 포함해야 합니다. 예:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;android:color/secondary_text_dark</strong>&quot;
+    android:text=&quot;&#64;string/hello&quot; /&gt;
+</pre>
+
+<p class="note"><strong>참고:</strong> 항상 문자열 리소스를 사용해야
+사용자의 애플리케이션이 다른 언어에 맞게 지역화될 수 있습니다. 
+대체
+리소스(예: 지역화된 문자열) 생성에 관한 자세한 정보는 <a href="providing-resources.html#AlternativeResources">대체
+리소스 제공</a>을 참조하십시오. 다른 언어로 애플리케이션을 지역화하기 위한 전체 지침은
+<a href="localization.html">지역화</a>를 참조하십시오.</p>
+
+<p>XML의 리소스를 사용하여 별명을 생성할 수도 있습니다. 예를 들어, 드로어블 리소스이면서 
+또 다른 드로어블 리소스의 별명인 것을 생성할 수 있습니다.</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/other_drawable" />
+</pre>
+
+<p>이것은 일견 중복되는 것처럼 들리지만, 대체 리소스를 사용할 때 매우 유용하게 쓰일 수 있습니다. 
+<a href="providing-resources.html#AliasResources">별명 리소스 생성</a>에 관해 자세히 알아보십시오.</p>
+
+
+
+<h3 id="ReferencesToThemeAttributes">스타일 속성 참조</h3>
+
+<p>스타일 속성 리소스는 현재 적용된 테마의 속성 값을
+참조할 수 있게 해줍니다. 스타일 속성을 참조하면 
+하드 코드로 작성된 값을 제공하는 것 대신에 UI 요소의 외관을 사용자 지정하여 
+현재 테마에서 제공한 표준 변형에 맞춰 스타일링할 수 있습니다. 스타일 속성을 참조하는 것은 
+기본적으로 "이 속성이 정의한 스타일을 현재 테마로 사용하라"는 말과 같습니다.</p>
+
+<p>스타일 속성을 참조하는 경우, 이름 구문은 보통 
+리소스와 거의 똑같습니다. 다만 앳 기호({@code @})를 사용하는 대신 물음표({@code ?})를 사용하며, 
+리소스 유형 부분이 선택 사항이라는 점만이 다릅니다. 예:</p>
+
+<pre class="classic">
+?[<em>&lt;package_name&gt;</em>:][<em>&lt;resource_type&gt;</em>/]<em>&lt;resource_name&gt;</em>
+</pre>
+
+<p>예컨대 다음은 텍스트 색상을 시스템 테마의 "기본" 텍스트 색상에 
+일치하도록 설정하기 위해 속성을 참조하는 방법을 나타낸 것입니다.</p>
+
+<pre>
+&lt;EditText id=&quot;text&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;wrap_content&quot;
+    android:textColor=&quot;<strong>?android:textColorSecondary</strong>&quot;
+    android:text=&quot;&#64;string/hello_world&quot; /&gt;
+</pre>
+
+<p>여기서 {@code android:textColor} 속성이 주어진 스타일 속성의 이름을 현재 테마대로 
+지정합니다. Android는 이제 {@code android:textColorSecondary}
+스타일 속성에 적용된 값을 이 위젯의 {@code android:textColor}에 대한 값으로 사용합니다. 시스템
+리소스 도구는 속성 리소스가 이 컨텍스트에서 예상된다는 것을 알기 때문에
+유형(
+<code>?android:attr/textColorSecondary</code>)을 명시적으로 선언하지 않아도 됩니다.&mdash;{@code attr} 유형은 배제해도 됩니다.</p>
+
+
+
+
+<h2 id="PlatformResources">플랫폼 리소스 액세스</h2>
+
+<p>Android에는 스타일, 테마 및 레이아웃 등 여러 가지 표준 리소스가 포함되어 있습니다. 
+이와 같은 리소스에 액세스하려면 
+<code>android</code> 패키지 이름으로 리소스 참조를 한정합니다. 예를 들어 Android는 
+{@link android.widget.ListAdapter}의 목록 항목으로 사용할 수 있는 레이아웃 리소스를 제공합니다.</p>
+
+<pre>
+{@link android.app.ListActivity#setListAdapter(ListAdapter)
+setListAdapter}(new {@link
+android.widget.ArrayAdapter}&lt;String&gt;(this, <strong>android.R.layout.simple_list_item_1</strong>, myarray));
+</pre>
+
+<p>이 예시에서 {@link android.R.layout#simple_list_item_1}은 
+{@link android.widget.ListView}의 항목에 대해 플랫폼이 정의한 레이아웃 리소스입니다. 목록 항목에 대해 나름의 레이아웃을 
+만드는 대신 이것을 사용해도 됩니다. 자세한 내용은 
+<a href="{@docRoot}guide/topics/ui/layout/listview.html">목록 보기</a> 개발자 가이드를 참조하십시오.</p>
+
diff --git a/docs/html-intl/intl/ko/guide/topics/resources/overview.jd b/docs/html-intl/intl/ko/guide/topics/resources/overview.jd
new file mode 100644
index 0000000..e98a677
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/resources/overview.jd
@@ -0,0 +1,103 @@
+page.title=리소스 개요
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>주제</h2>
+  <ol>
+    <li><a href="providing-resources.html">리소스 제공</a></li>
+    <li><a href="accessing-resources.html">리소스 액세스</a></li>
+    <li><a href="runtime-changes.html">런타임 변경 처리</a></li>
+    <li><a href="localization.html">지역화</a></li>
+  </ol>
+
+  <h2>참조</h2>
+  <ol>
+    <li><a href="available-resources.html">리소스 유형</a></li>
+  </ol>
+</div>
+</div>
+
+
+<p>이미지나 문자열 같은 리소스는 항상 애플리케이션 코드에서 
+외부화하여 독립적으로 유지해야 합니다. 리소스를 외부화하면 
+다양한 언어나 화면 크기와 같은 특정 기기 구성을 지원하는
+대체 리소스를 제공할 수 있습니다. 이러한 기능은 Android 구동 장치를
+다양한 구성에서 이용하게 되면서 점점 더 중요해지고 있습니다. 여러 가지 구성에 
+호환성을 제공하려면 프로젝트의 
+{@code res/} 디렉터리 안에 리소스를 정리해야 합니다. 이때 여러 가지 하위 디렉터리를 사용하여 리소스를 유형과 구성 
+기준으로 그룹화하면 좋습니다.</p>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram1.png" height="167" alt="" />
+<p class="img-caption">
+<strong>그림 1.</strong> 각각 기본 레이아웃을 사용하는 서로 다른 두 개의 기기입니다
+(앱에서 대체 레이아웃을 제공하지 않습니다).</p>
+</div>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>그림 2.</strong> 서로 다른 두 개의 기기로, 각각 다른 화면 크기에 맞게 제공된 서로 다른 
+레이아웃을 사용하고 있습니다.</p>
+</div>
+
+<p>어떤 유형의 리소스든 애플리케이션에 맞게<em>기본값</em>과 여러
+<em>대체</em> 리소스를 지정할 수 있습니다.</p>
+<ul>
+  <li>기본 리소스는 기기 구성에 관계없이 항상 사용하거나
+기존 구성에 일치하는 대체 리소스가 없을 때 
+사용합니다.</li>
+  <li>대체 리소스는 특정 구성에서 사용하기 위해 개발자가 특별히 디자인한 것을 
+말합니다. 리소스 그룹을 특정 구성용으로 지정하려면, 
+디렉터리 이름에 적절한 구성 한정자를 추가하십시오.</li>
+</ul>
+
+<p>예를 들어 기본 UI 레이아웃은 
+{@code res/layout/} 디렉터리에 저장되어 있더라도 화면이 가로 방향일 때 사용할 
+다른 레이아웃을 지정할 수도 있습니다. 이를 {@code res/layout-land/}
+디렉터리에 저장하면 됩니다. Android는
+기기의 현재 구성을 리소스 디렉터리 이름과 일치시켜서 적절한 리소스를 적용합니다.</p>
+
+<p>그림 1은 이용 가능한 대체 리소스가 없을 경우 시스템이 서로 다른 두 개의 기기에 
+같은 레이아웃을 적용하는 방법을 보여줍니다. 그림 2는 
+같은 애플리케이션에 큰 화면용 레이아웃 리소스를 추가한 모습을 나타낸 것입니다.</p>
+
+<p>다음 문서는 대체 리소스를 체계화하고, 
+대체 리소스를 지정하고, 애플리케이션에 액세스 하는 등의 방법에 관한 완전한 지침을 제공합니다.</p>
+
+<dl>
+  <dt><strong><a href="providing-resources.html">리소스 제공</a></strong></dt>
+  <dd>앱에 포함할 수 있는 여러 가지 종류의 리소스와, 이러한 리소스를 저장하는 장소, 특정 기기 구성에 대한 
+대체 리소스를 생성하는 방법입니다.</dd>
+  <dt><strong><a href="accessing-resources.html">리소스 액세스</a></strong></dt>
+  <dd>제공한 리소스를 사용하는 방법입니다. 이를 애플리케이션 코드에서 참조하거나 
+다른 XML 리소스에서 참조하는 방식을 씁니다.</dd>
+  <dt><strong><a href="runtime-changes.html">런타임 변경 처리</a></strong></dt>
+  <dd>액티비티가 실행 중인 동안 발생한 구성 변경을 관리하는 방법입니다.</dd>
+  <dt><strong><a href="localization.html">지역화</a></strong></dt>
+  <dd>대체 리소스를 사용하여 애플리케이션을 지역화하는 방법에 대한 상세한 가이드입니다. 이것은 대체 
+리소스를 사용하는 한 가지 방법에 불과하지만, 더 많은 사용자에게 도달하려면 매우 중요한 
+방법입니다.</dd>
+  <dt><strong><a href="available-resources.html">리소스 유형</a></strong></dt>
+  <dd>개발자가 제공할 수 있는 다양한 리소스 유형의 참조로, 각각의 XML 요소, 
+속성과 구문을 설명하는 것입니다. 예를 들어, 이 참조는 애플리케이션 메뉴와 드로어블 리소스, 
+애니메이션에 대한 리소스를 생성하는 법을 보여줍니다.</dd>
+</dl>
+
+<!--
+<h2>Raw Assets</h2>
+
+<p>An alternative to saving files in {@code res/} is to save files in the {@code
+assets/} directory. This should only be necessary if you need direct access to original files and
+directories by name. Files saved in the {@code assets/} directory will not be given a resource
+ID, so you can't reference them through the {@code R} class or from XML resources. Instead, you can
+query data in the {@code assets/} directory like an ordinary file system, search through the
+directory and
+read raw data using {@link android.content.res.AssetManager}. For example, this can be more useful
+when dealing with textures for a game. However, if you only need to read raw data from a file
+(such as a video or audio file), then you should save files into the {@code res/raw/} directory and
+then read a stream of bytes using {@link android.content.res.Resources#openRawResource(int)}. This
+is uncommon, but if you need direct access to original files in {@code assets/}, refer to the {@link
+android.content.res.AssetManager} documentation.</p>
+-->
diff --git a/docs/html-intl/intl/ko/guide/topics/resources/providing-resources.jd b/docs/html-intl/intl/ko/guide/topics/resources/providing-resources.jd
new file mode 100644
index 0000000..681cbb3
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/resources/providing-resources.jd
@@ -0,0 +1,1094 @@
+page.title=리소스 제공
+parent.title=애플리케이션 리소스
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>간략히 보기</h2>
+  <ul>
+    <li>{@code res/}의 여러 가지 하위 디렉터리에 속한 여러 가지 유형의 리소스</li>
+    <li>구성별 리소스 파일을 제공하는 대체 리소스</li>
+    <li>항상 기본 리소스를 포함해야 앱이 특정 기기 구성에 
+좌우되지 않습니다.</li>
+  </ul>
+  <h2>이 문서의 내용</h2>
+  <ol>
+    <li><a href="#ResourceTypes">리소스 유형 그룹화</a></li>
+    <li><a href="#AlternativeResources">대체 리소스 제공</a>
+      <ol>
+        <li><a href="#QualifierRules">한정자 이름 규칙</a></li>
+        <li><a href="#AliasResources">별명 리소스 생성</a></li>
+      </ol>
+    </li>
+    <li><a href="#Compatibility">리소스와 연관된 최선의 기기 호환성 제공</a></li>
+    <li><a href="#BestMatch">Android가 가장 잘 일치하는 리소스를 찾는 방법</a></li>
+  </ol>
+
+  <h2>참고 항목</h2>
+  <ol>
+    <li><a href="accessing-resources.html">리소스 액세스</a></li>
+    <li><a href="available-resources.html">리소스 유형</a></li>
+    <li><a href="{@docRoot}guide/practices/screens_support.html">다중 
+화면 지원</a></li>
+  </ol>
+</div>
+</div>
+
+<p>이미지나 문자열과 같은 애플리케이션 리소스는 항상 코드에서 외부화해야 합니다. 
+그래야 이들을 독립적으로 유지관리할 수 있습니다. 특정 기기 구성에 대한 대체 리소스도 
+제공해야 합니다. 이것은 특별하게 명명한 리소스 디렉터리에 그룹화하는 방법을 씁니다. Android는 
+런타임에 현재 구성을 근거로 적절한 리소스를 사용합니다. 예를 들어 
+여러 가지 화면 크기에 따라 여러 가지 UI 레이아웃을 제공하거나 언어 설정에 따라 
+각기 다른 문자열을 제공하고자 할 수 있습니다.</p>
+
+<p>애플리케이션 리소스를 외부화하면
+프로젝트 {@code R} 클래스에서 발생하는 리소스 ID로 액세스할 수 있습니다. 애플리케이션에서
+리소스를 사용하는 방법은 <a href="accessing-resources.html">리소스
+액세스</a>에서 설명합니다. 이 문서에서는 Android 프로젝트에서 리소스를 그룹화하는 방법과 특정 기기 구성에 대한 
+대체 리소스를 제공하는 법을 보여드립니다.</p>
+
+
+<h2 id="ResourceTypes">리소스 유형 그룹화</h2>
+
+<p>프로젝트
+{@code res/} 디렉터리의 특정 하위 디렉터리에 각 유형의 리소스를 배치해야 합니다. 예를 들어, 다음은 간단한 프로젝트의 파일 계층입니다.</p>
+
+<pre class="classic no-pretty-print">
+MyProject/
+    src/  <span style="color:black">
+        MyActivity.java  </span>
+    res/
+        drawable/  <span style="color:black">
+            graphic.png  </span>
+        layout/  <span style="color:black">
+            main.xml
+            info.xml</span>
+        mipmap/  <span style="color:black">
+            icon.png </span>
+        values/  <span style="color:black">
+            strings.xml  </span>
+</pre>
+
+<p>이 예시에서 {@code res/} 디렉터리가 모든 리소스(이미지 리소스, 레이아웃 리소스 두 개, 시작 관리자 아이콘용 {@code mipmap/} 디렉터리,
+ 문자열 리소스 파일)를 (하위 디렉터리에
+) 포함하는 것을 볼 수 있습니다. 리소스 디렉터리 이름은
+중요하며 표1에 설명되어 있습니다.</p>
+
+<p class="note"><strong>참고:</strong> Mipmap 폴더를 사용하는 자세한 방법은 
+<a href="{@docRoot}tools/projects/index.html#mipmap">프로젝트 관리 개요</a>를 참조하십시오.</p>
+
+<p class="table-caption" id="table1"><strong>표 1</strong>. 프로젝트 
+{@code res/} 디렉터리 내부에서 지원하는 리소스 디렉터리입니다.</p>
+
+<table>
+  <tr>
+    <th scope="col">디렉터리</th>
+    <th scope="col">리소스 유형</th>
+  </tr>
+
+  <tr>
+    <td><code>animator/</code></td>
+    <td><a href="{@docRoot}guide/topics/graphics/prop-animation.html">속성 
+애니메이션</a>을 정의하는 XML 파일입니다.</td>
+  </tr>
+
+  <tr>
+    <td><code>anim/</code></td>
+    <td><a href="{@docRoot}guide/topics/graphics/view-animation.html#tween-animation">tween 
+애니메이션</a>을 정의하는 XML 파일입니다 (속성 애니메이션도 이 디렉터리에 저장할 수 있지만
+두 가지 유형을 구분하기 위해 속성 애니메이션에는 {@code animator/} 디렉터리가 기본 설정됩니다
+).</td>
+  </tr>
+
+  <tr>
+    <td><code>color/</code></td>
+    <td>색상의 상태 목록을 정의하는 XML 파일입니다. <a href="color-list-resource.html">색상 상태
+목록 리소스</a>를 참조하십시오.</td>
+  </tr>
+
+  <tr>
+    <td><code>drawable/</code></td>
+
+    <td><p>다음 드로어블 리소스 하위 유형으로 컴파일 되는 비트맵 파일({@code .png}, {@code .9.png}, {@code .jpg}, {@code .gif}) 또는 XML 파일입니다.
+</p>
+      <ul>
+        <li>비트맵 파일</li>
+        <li>나인 패치(크기 조절 가능한 비트맵)</li>
+        <li>상태 목록</li>
+        <li>형태</li>
+        <li>드로어블 애니메이션</li>
+        <li>기타 드로어블</li>
+      </ul>
+      <p><a href="drawable-resource.html">드로어블 리소스</a>를 참조하십시오.</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>mipmap/</code></td>
+    <td>각기 다른 시작 관리자 아이콘 밀도에 대한 드로어블 파일입니다. 
+{@code mipmap/} 폴더로 시작 관리자 아이콘을 관리하는 자세한 방법은 
+<a href="{@docRoot}tools/project/index.html#mipmap">프로젝트 관리 개요</a>를 참조하십시오.</td>
+  </tr>
+
+  <tr>
+    <td><code>layout/</code></td>
+    <td>사용자 인터페이스 레이아웃을 정의하는 XML 파일입니다.
+        <a href="layout-resource.html">레이아웃 리소스</a>를 참조하십시오.</td>
+  </tr>
+
+  <tr>
+    <td><code>menu/</code></td>
+    <td>옵션 메뉴, 컨텍스트 메뉴 또는 하위 
+메뉴 등과 같은 애플리케이션 메뉴를 정의하는 XML입니다. <a href="menu-resource.html">메뉴 리소스</a>를 참조하십시오.</td>
+  </tr>
+
+  <tr>
+    <td><code>raw/</code></td>
+    <td><p>원시 형태로 저장하기 위한 임의의 파일입니다. 원시 
+{@link java.io.InputStream}으로 이런 리소스를 열려면 리소스 ID, {@code R.raw.<em>filename</em>}으로 {@link android.content.res.Resources#openRawResource(int)
+Resources.openRawResource()}를 호출합니다.</p>
+      <p>그러나 원본 파일 이름과 파일 계층에 액세스해야 하는 경우, 
+({@code res/raw/}가 아니라) {@code
+assets/} 디렉터리에 몇몇 리소스를 저장해두는 것을 고려해 볼 수 있습니다. {@code assets/}에 있는 파일에는 
+리소스 ID가 주어지지 않으므로, 이들을 읽는 유일한 방법은 {@link android.content.res.AssetManager}를 사용하는 것뿐입니다.</p></td>
+  </tr>
+
+  <tr>
+    <td><code>values/</code></td>
+    <td><p>문자열, 정수 및 색과 같은 단순 값이 들어있는 XML 파일입니다.</p>
+      <p>다른 {@code res/} 하위 디렉터리에 있는 XML 리소스 파일은 XML 파일 이름을 근거로 
+하나의 리소스를 정의하는 반면, {@code values/} 디렉터리에 있는 파일은 여러 개의 리소스를 설명합니다.
+이 디렉터리 안에 있는 파일의 경우, {@code &lt;resources&gt;} 요소의 각 하위 요소가 리소스를 하나씩 
+정의합니다. 예를 들어 {@code &lt;string&gt;} 요소는 
+{@code R.string} 리소스를 생성하고 {@code &lt;color&gt;} 요소는 {@code R.color}
+ 리소스를 생성합니다.</p>
+      <p>각 리소스가 자체 XML 요소로 정의되므로, 원하는 대로 파일을 정의하고 하나의 파일에 여러 가지 리소스 유형을
+배정할 수 있습니다. 하지만 명확히 하려면 여러 가지 파일에 
+각기 고유한 리소스를 배치하는 것이 좋을 수도 있습니다. 예를 들어, 다음은 이 디렉터리에서 생성할 수 있는 리소스를 위한
+파일 이름 명명법입니다.</p>
+      <ul>
+        <li>리소스 배열을 위한 arrays.xml(<a href="more-resources.html#TypedArray">입력 배열</a>).</li>
+        <li><a href="more-resources.html#Color">색상 값</a>을 위한 colors.xml</li>
+        <li><a href="more-resources.html#Dimension">치수 값</a>을 위한 dimens.xml</li>
+        <li><a href="string-resource.html">문자열
+값</a>을 위한 strings.xml</li>
+        <li><a href="style-resource.html">스타일</a>을 위한 styles.xml</li>
+      </ul>
+      <p><a href="string-resource.html">문자열 리소스</a>,
+<a href="style-resource.html">스타일 리소스</a> 및 
+<a href="more-resources.html">자세한 리소스 유형</a>을 참조하십시오.</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>xml/</code></td>
+    <td>런타임에 읽을 수 있는 임의의 XML 파일로, 이때 {@link
+android.content.res.Resources#getXml(int) Resources.getXML()}을 호출하는 방법을 씁니다. 다양한 XML 구성 파일을 여기에 저장해야 합니다. 예를 들어 
+<a href="{@docRoot}guide/topics/search/searchable-config.html">검색 가능한 구성</a> 등이 이에 해당됩니다.
+<!-- or preferences configuration. --></td>
+  </tr>
+</table>
+
+<p class="caution"><strong>주의:</strong> 리소스 파일을 
+{@code res/} 디렉터리에 직접 저장하면 절대로 안 됩니다. 컴파일러 오류를 초래하게 됩니다.</p>
+
+<p>특정 유형의 리소스에 관한 자세한 정보는 <a href="available-resources.html">리소스 유형</a> 문서를 참조하십시오.</p>
+
+<p>표1에 정의된 하위 디렉터리에 저장하는 리소스는 "기본"
+리소스입니다. 다시 말해, 이러한 리소스가 애플리케이션의 기본 디자인과 콘텐츠를 정의한다는 뜻입니다. 
+그러나, 여러 가지 유형의 Android 구동 기기는 각기 다른 유형의 리소스를 호출할 수도 있습니다.
+예를 들어 어느 기기의 화면이 보통보다 큰 편이라면, 추가적인 화면 공간의 이점을 활용할 수 있는 
+다른 레이아웃 리소스를 제공해야 합니다. 또는, 기기에 다른 언어 설정이 있을 경우
+해당 텍스트를 사용자 인터페이스에 번역하는 다른 문자열 리소스를
+제공해야 합니다. 여러 가지 기기 구성에 여러 가지 리소스를 제공하려면,
+기본 리소스 외에 대체 리소스를
+제공해야 합니다.</p>
+
+
+<h2 id="AlternativeResources">대체 리소스 제공</h2>
+
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>그림 1.</strong> 서로 다른 두 개의 기기로, 서로 다른 레이아웃 리소스를 사용합니다.</p>
+</div>
+
+<p>거의 모든 애플리케이션이 특정 기기 구성을 지원하는 
+대체 리소스를 제공해야 합니다. 예를 들어 여러 가지 화면 밀도에 맞는 대체 드로어블 리소스를 
+포함시켜야 하며 여러 가지 언어에 맞게 대체 문자열 리소스도 포함시켜야 합니다. Android는 런타임에 
+현재 기기 구성을 감지하고 애플리케이션에 대해 적절한 리소스를 
+로드합니다.</p>
+
+<p>리소스 세트에 대하여 구성별로 적절한 대체를 지정하려면 다음과 같이 합니다.</p>
+<ol>
+  <li>{@code res/}에 {@code
+<em>&lt;resources_name&gt;</em>-<em>&lt;config_qualifier&gt;</em>} 형식으로 이름을 지정한 새 디렉터리를 만듭니다.
+    <ul>
+      <li><em>{@code &lt;resources_name&gt;}</em>은 해당 기본 리소스의 디렉터리 이름입니다(표1에 정의).
+</li>
+      <li><em>{@code &lt;qualifier&gt;}</em>는 리소스를 사용할 개별 구성을 지정하는
+이름입니다(표2에 정의).</li>
+    </ul>
+    <p>하나 이상의 <em>{@code &lt;qualifier&gt;}</em>를 추가할 수 있습니다. 각기 대시로 
+구분합니다.</p>
+    <p class="caution"><strong>주의:</strong> 여러 한정자를 추가할 때는
+표2에 나열된 것과 같은 순서로 배치해야 합니다. 한정자의 순서가 잘못 지정되면 
+해당 리소스가 무시됩니다.</p>
+  </li>
+  <li>해당되는 각 대체 리소스를 이 새 디렉터리에 저장하십시오. 이 리소스 파일은 기본 리소스 파일과 
+똑같은 이름을 지정해야 합니다.</li>
+</ol>
+
+<p>예를 들어 다음은 기본 리소스와 대체 리소스입니다.</p>
+
+<pre class="classic no-pretty-print">
+res/
+    drawable/   <span style="color:black">
+        icon.png
+        background.png    </span>
+    drawable-hdpi/  <span style="color:black">
+        icon.png
+        background.png  </span>
+</pre>
+
+<p>{@code hdpi} 한정자는 해당 디렉터리의 리소스가
+고화질 화면 기기용이라는 것을 나타냅니다. 각 드로어블 디렉터리의 이미지는 특정 화면 화질에 맞추어 
+크기가 지정되었으나 파일 이름은
+똑같습니다. 이렇게 하면 {@code icon.png} 또는 {@code
+background.png} 이미지를 참조하는 데 사용하는 리소스 ID는 항상 같지만 Android가 각 리소스 중에서 현재 기기에 가장 잘 일치하는 
+버전을 선택하게 됩니다. 이때 리소스 디렉터리 이름의 한정자를 기기 구성 정보와 
+비교하는 방법을 씁니다.</p>
+
+<p>Android는 여러 가지 구성 한정자를 지원하며 한 디렉터리 이름에 
+여러 개의 한정자를 추가할 수 있습니다. 각 한정자를 대시로 구분하면 됩니다. 표 2는 
+유효한 구성 한정자를 우선 순위대로 나열한 것입니다. 리소스 디렉터리에 여러 개의 
+한정자를 사용하는 경우, 해당 한정자를 디렉터리 이름에 추가할 때 이 표에 나열된 것과 같은 
+순서로 추가해야 합니다.</p>
+
+
+<p class="table-caption" id="table2"><strong>표 2.</strong> 구성 한정자 
+이름입니다.</p>
+<table>
+    <tr>
+        <th>구성</th>
+        <th>한정자 값</th>
+        <th>설명</th>
+    </tr>
+    <tr id="MccQualifier">
+      <td>MCC 및 MNC</td>
+      <td>예:<br/>
+        <code>mcc310</code><br/>
+        <code><nobr>mcc310-mnc004</nobr></code><br/>
+        <code>mcc208-mnc00</code><br/>
+        등.
+      </td>
+      <td>
+        <p>이동통신 국가 코드(MCC)에 선택적으로 이동통신 네트워크 코드(MNC)가 이어지는 형태로, 
+기기의 SIM 카드에서 가져옵니다. 예를 들어, <code>mcc310</code>은 모든 이동통신사를 포함한 미국이고,
+<code>mcc310-mnc004</code>는 Verizon을 사용하는 미국, <code>mcc208-mnc00</code>은 Orange를 사용하는
+프랑스입니다.</p>
+        <p>기기가 무선 연결(GSM 전화)을 사용할 경우, MCC와 MNC 값은
+SIM 카드에서 가져옵니다.</p>
+        <p>MCC만 단독으로 사용할 수도 있습니다(예를 들어, 애플리케이션에 국가별 합법적 리소스를
+ 포함하는 경우). 언어에 기초해서만 지정해야 할 경우,
+<em>언어 및 지역</em> 한정자를 대신 사용합니다(아래에 설명). MCC와 
+MNC 한정자를 사용할 경우, 조심해서 사용하고 예상한 대로 작동하는지 테스트해야 합니다.</p>
+        <p>또한, 구성 필드 {@link
+android.content.res.Configuration#mcc}와 {@link
+android.content.res.Configuration#mnc}를 참조하십시오. 이 구성 필드는 각각 이동통신 국가 코드와 
+이동통신 네트워크 코드를 나타냅니다.</p>
+      </td>
+    </tr>
+    <tr id="LocaleQualifier">
+      <td>언어 및 지역</td>
+      <td>예:<br/>
+        <code>en</code><br/>
+        <code>fr</code><br/>
+        <code>en-rUS</code><br/>
+        <code>fr-rFR</code><br/>
+        <code>fr-rCA</code><br/>
+        등.
+      </td>
+      <td><p>언어는 두 글자의 <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php">ISO
+639-1</a> 언어 코드로 정의되고, 
+뒤이어 두 글자의 <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html">ISO
+3166-1-alpha-2</a> 지역 코드가 선택적으로 따라옵니다(소문자 "{@code r}" 뒤에 붙음).
+        </p><p>
+        코드는 대소문자를 구별하지 <em>않습니다</em>. {@code r} 접두사는 
+지역 부분을 구별하기 위해 사용합니다.
+        지역만 지정할 수는 없습니다.</p>
+        <p>사용자가 시스템 설정에서 언어를 변경할 경우 
+애플리케이션 수명 중에 변경될 수 있습니다. 런타임에서 애플리케이션에 어떤 영향을 미치는지 자세히 알아보려면 <a href="runtime-changes.html">런타임 변경 처리</a>를 참조하십시오.
+</p>
+        <p>다른 여러 언어에 맞게 애플리케이션을 지역화하기 위한 전체 지침은
+<a href="localization.html">지역화</a>를 참조하십시오.</p>
+        <p>또한, 현재 로케일을 나타내는 {@link android.content.res.Configuration#locale} 구성 필드도 
+참조하십시오.</p>
+      </td>
+    </tr>
+    <tr id="LayoutDirectionQualifier">
+      <td>레이아웃 방향</td>
+      <td><code>ldrtl</code><br/>
+        <code>ldltr</code><br/>
+      </td>
+      <td><p>애플리케이션의 레이아웃 방향입니다. {@code ldrtl}는 "오른쪽에서 왼쪽 방향 레이아웃"을 나타냅니다.
+{@code ldltr}는 "왼쪽에서 오른쪽 방향 레이아웃"을 나타내고 기본 암시적 값입니다.
+      </p>
+      <p>이는 레이아웃이나 드로어블, 값 등의 모든 리소스에 적용할 수 있습니다.
+      </p>
+      <p>예를 들어, 아랍어에 대한 특정 레이아웃을 제공하고
+다른 "오른쪽에서 왼쪽으로 쓰는" 언어(히브리어 또는 페르시아어)에 제네릭 레이아웃을 제공하고 싶다면 다음과 같이 해야 합니다.
+      </p>
+<pre class="classic no-pretty-print">
+res/
+    layout/   <span style="color:black">
+        main.xml  </span>(Default layout)
+    layout-ar/  <span style="color:black">
+        main.xml  </span>(Specific layout for Arabic)
+    layout-ldrtl/  <span style="color:black">
+        main.xml  </span>(Any "right-to-left" language, except
+                  for Arabic, because the "ar" language qualifier
+                  has a higher precedence.)
+</pre>
+        <p class="note"><strong>참고:</strong> 앱에서 오른쪽에서 왼쪽 레이아웃 기능을 활성화하려면
+<a href="{@docRoot}guide/topics/manifest/application-element.html#supportsrtl">{@code
+supportsRtl}</a>을 {@code "true"}로 설정하고 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>을 17 이상으로 설정해야 합니다.</p>
+        <p><em>API 레벨 17에서 추가되었습니다.</em></p>
+      </td>
+    </tr>
+    <tr id="SmallestScreenWidthQualifier">
+      <td>smallestWidth</td>
+      <td><code>sw&lt;N&gt;dp</code><br/><br/>
+        예:<br/>
+        <code>sw320dp</code><br/>
+        <code>sw600dp</code><br/>
+        <code>sw720dp</code><br/>
+        등.
+      </td>
+      <td>
+        <p>화면의 기본 크기로, 사용 가능한 화면 영역의 가장 짧은 치수가 
+나타냅니다. 구체적으로 기기의 smallestWidth는 해당 화면의 이용 가능한 높이와 너비의 
+가장 짧은 치수를 말합니다(이것을 화면에 대한 "가능한 한 가장 좁은 너비"로 생각해도 됩니다). 이 한정자를 사용하면 
+화면의 현재 방향에 관계 없이 
+애플리케이션이 해당 UI에서 이용 가능한 너비 중 최소 {@code &lt;N&gt;}dps를 확보하도록 할 수 있습니다.</p>
+        <p>예를 들어, 레이아웃에 언제나 
+600dp 이상의 화면 최소 치수가 필요하다면, 이 한정자를 사용하여 레이아웃 리소스, {@code
+res/layout-sw600dp/}를 만들 수 있습니다. 시스템이 이러한 리소스를 사용하는 것은 사용 가능한 화면의 최소 치수가 적어도 600dp가 
+되는 경우뿐이며, 이때 600dp라는 크기가 사용자 쪽에서 보기에 높이이든 너비이든 
+관계 없습니다. 이 smallestWidth는 기기의 고정된 화면 크기 특성입니다. <strong>
+기기의 smallestWidth는 화면 방향이 변경되어도 바뀌지 않습니다</strong>.</p>
+        <p>기기의 smallestWidth는 화면 장식과 시스템 UI를 감안합니다. 예를 들어,
+화면 상에서 최소 너비의 축 주변 공간을 차지하는 영구 UI 요소가 있다면,
+시스템은 smallestWidth를 실제 화면 크기보다 작게 선언합니다. 
+이것은 개발자의 UI가 사용할 수 없는 화면 픽셀이기 때문입니다. 따라서 개발자가 사용하는 값은 
+<em>레이아웃에서 요구하는</em> 실제 최소 치수여야 합니다(일반적으로 이 값은 화면의 현재 방향과 관계없이 
+레이아웃이 지원하는 "최소 너비"가 됩니다.).</p>
+        <p>다음의 몇몇 값은 보편적인 화면 크기에 대하여 사용할 수 있습니다.</p>
+        <ul>
+          <li>화면 크기 320에 화면 구성이 아래와 같은 기기:
+            <ul>
+              <li>240x320ldpi(QVGA 핸드셋)</li>
+              <li>320x480mdpi(핸드셋)</li>
+              <li>480x800hdpi(고화질 핸드셋)</li>
+            </ul>
+          </li>
+          <li>480x800mdpi(태블릿/핸드셋) 등의 화면에는 480을 사용합니다.</li>
+          <li>600x1024mdpi (7인치 태블릿) 등의 화면에는 600을 사용합니다.</li>
+          <li>720x1280mdpi (10인치 태블릿) 등의 화면에는 720을 사용합니다.</li>
+        </ul>
+        <p>애플리케이션이 
+smallestWidth 한정자의 여러 값이 포함된 여러 리소스 디렉터리를 제공하면, 시스템은 
+기기의 smallestWidth에 가장 가까운(그러나 이를 초과하지 않는) 값을 사용합니다. </p>
+        <p><em>API 레벨 13에서 추가되었습니다.</em></p>
+        <p>이외에도 애플리케이션과 호환되는 최소한의 smallestWidth를 선언하는 <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html#requiresSmallest">{@code
+android:requiresSmallestWidthDp}</a> 속성과 
+기기의 smallestWidth 값을 보유한 {@link
+android.content.res.Configuration#smallestScreenWidthDp} 
+구성 필드도 참조하십시오.</p>
+        <p>여러 가지 화면에 맞는 디자인과 한정자 사용에 관한 자세한 정보는 
+<a href="{@docRoot}guide/practices/screens_support.html">다중 화면
+지원</a> 개발자 가이드를 참조하십시오.</p>
+      </td>
+    </tr>
+    <tr id="ScreenWidthQualifier">
+      <td>이용 가능한 너비</td>
+      <td><code>w&lt;N&gt;dp</code><br/><br/>
+        예:<br/>
+        <code>w720dp</code><br/>
+        <code>w1024dp</code><br/>
+        등.
+      </td>
+      <td>
+        <p>리소스를 사용해야 하는 {@code dp} 단위에서 최소 이용 가능한 화면 너비를 지정합니다. 
+이는 <code>&lt;N&gt;</code> 값이 정의합니다.  이 구성 
+값은 현재 실제 너비에 맞추기 위해 화면 방향이 가로와 세로 사이를 오가며 바뀔 때 
+변경됩니다.</p>
+        <p>애플리케이션이 이 구성에 대해 서로 다른 값이 포함된 여러 개의 리소스 디렉터리를 제공하면,
+시스템은 기기의 현재 화면 너비에 가장 가까운(그러나 이를 초과하지 않는) 
+값을 사용합니다.  이 값은 
+화면 장식을 감안한 것이므로, 기기의 왼쪽이나 오른쪽 가장자리에 
+영구 UI 요소가 있을 경우, 기기는 
+이러한 UI 요소를 감안하여 애플리케이션의 이용 가능한 공간을 줄여서
+ 실제 화면 크기보다 작은 너비 값을 사용합니다.</p>
+        <p><em>API 레벨 13에서 추가되었습니다.</em></p>
+        <p>현재 화면 너비를 보유한 {@link android.content.res.Configuration#screenWidthDp}
+ 구성 필드도 참조하십시오.</p>
+        <p>여러 가지 화면에 맞는 디자인과 한정자 사용에 관한 자세한 정보는 
+<a href="{@docRoot}guide/practices/screens_support.html">다중 화면
+지원</a> 개발자 가이드를 참조하십시오.</p>
+      </td>
+    </tr>
+    <tr id="ScreenHeightQualifier">
+      <td>이용 가능한 높이</td>
+      <td><code>h&lt;N&gt;dp</code><br/><br/>
+        예:<br/>
+        <code>h720dp</code><br/>
+        <code>h1024dp</code><br/>
+        등.
+      </td>
+      <td>
+        <p>리소스가 사용되어야 하는 최소한의 사용 가능한 화면 높이를 "dp" 단위로 나타냅니다. 
+이는 <code>&lt;N&gt;</code> 값이 정의합니다.  이 구성 
+값은 현재 실제 높이에 맞추기 위해 화면 방향이 가로와 세로 사이를 오가며 바뀔 때 
+변경됩니다.</p>
+        <p>애플리케이션이 이 구성에 대해 서로 다른 값이 포함된 여러 개의 리소스 디렉터리를 제공하면,
+시스템은 기기의 현재 화면 높이에 가장 가까운(그러나 이를 초과하지 않는) 
+값을 사용합니다.  이 값은 
+화면 장식을 감안한 것이므로, 기기의 상단이나 하단 가장자리에 
+영구 UI 요소가 있을 경우, 기기는 
+이러한 UI 요소를 감안하여 애플리케이션의 이용 가능한 공간을 줄여서
+ 실제 화면 크기보다 작은 높이 값을 사용합니다.  
+상태 표시줄에 고정되지 않은 화면 장식(예를 들어 
+전화 상태 표시줄은 전체 화면에서 숨길 수 있음)은 여기에서 감안하지 <em>않았고</em>, 
+제목 표시줄이나 작업 모음 등의 창 장식도 감안되지 않았으므로, 애플리케이션 입장에서는 자신이 지정한 것보다 어느 정도 작은 공간을 
+받아들일 대비를 해야 합니다.
+        <p><em>API 레벨 13에서 추가되었습니다.</em></p>
+        <p>현재 화면 너비를 보유한 {@link android.content.res.Configuration#screenHeightDp}
+ 구성 필드도 참조하십시오.</p>
+        <p>여러 가지 화면에 맞는 디자인과 한정자 사용에 관한 자세한 정보는 
+<a href="{@docRoot}guide/practices/screens_support.html">다중 화면
+지원</a> 개발자 가이드를 참조하십시오.</p>
+      </td>
+    </tr>
+    <tr id="ScreenSizeQualifier">
+      <td>화면 크기</td>
+      <td>
+        <code>small</code><br/>
+        <code>normal</code><br/>
+        <code>large</code><br/>
+        <code>xlarge</code>
+      </td>
+      <td>
+        <ul class="nolist">
+        <li>{@code small}: 저밀도 QVGA 화면과 비슷한 
+크기의 화면입니다. 작은 화면의 최소 레이아웃 크기는
+약 320x426 dp단위입니다.  이 화면의 예시로는 QVGA 저밀도 및 VGA 고밀도가 
+있습니다.</li>
+        <li>{@code normal}: 중밀도 HVGA 화면과 
+비슷한 크기의 화면입니다. 정상 화면의
+ 최소 레이아웃 크기는 약 320x470 dp 단위입니다.  이 화면의 예로는 
+WQVGA 저밀도, HVGA 중밀도, WVGA 고밀도 등이 있습니다.
+</li>
+        <li>{@code large}: 중밀도 VGA 화면과 
+비슷한 크기의 화면입니다.
+        큰 화면의 최소 레이아웃 크기는 약 480x640 dp 단위입니다.
+        이 화면의 예시로는 VGA 및 WVGA 중밀도 화면이 있습니다.</li>
+        <li>{@code xlarge}: 일반적인 중밀도 HVGA 화면보다 상당히 큰 화면을 
+말합니다. 초대형 화면의
+ 최소 레이아웃 크기는 약 720x960 dp 단위입니다.  대부분의 경우, 초대형 화면 기기는 
+주머니에 넣어 다니기에 너무 큽니다. 따라서 태블릿 스타일의 기기일 가능성이 
+높습니다. <em>API 레벨 9에서 추가되었습니다.</em></li>
+        </ul>
+        <p class="note"><strong>참고:</strong> 크기 한정자를 사용하더라도 해당 리소스가 그 크기의 화면 
+<em>전용</em>이라는 뜻은 아닙니다. 현재 기기 구성과 더욱 잘 맞는 한정자가 포함된 대체 리소스를 
+제공하지 않으면, 
+시스템이 <a href="#BestMatch">가장 잘 일치하는</a> 리소스를 사용합니다.</p>
+        <p class="caution"><strong>주의:</strong> 모든 리소스가 현재 화면보다
+<em>큰</em> 크기 한정자를 사용하는 경우, 시스템은 리소스를 사용하지 <strong>않으며</strong> 애플리케이션은 런타임에 작동이 중단됩니다(예를 들어, 모든 레이아웃 리소스에 {@code
+xlarge} 한정자가 태그되어 있지만 기기는 일반 크기 화면일 경우
+).</p>
+        <p><em>API 레벨 4에서 추가되었습니다.</em></p>
+        
+        <p>자세한 정보는 <a href="{@docRoot}guide/practices/screens_support.html">다중 화면 
+지원</a>을 참조하십시오.</p>
+        <p>{@link android.content.res.Configuration#screenLayout} 구성 필드도 참조하십시오. 
+이것은 화면이 소형, 일반 크기 또는 
+대형인지를 나타냅니다.</p>
+      </td>
+    </tr>
+    <tr id="ScreenAspectQualifier">
+      <td>화면 비율</td>
+      <td>
+        <code>long</code><br/>
+        <code>notlong</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code long}: WQVGA, WVGA, FWVGA 등의 긴 화면</li>
+          <li>{@code notlong}: QVGA, HVGA 및 VGA 등의 길지 않은 화면</li>
+        </ul>
+        <p><em>API 레벨 4에서 추가되었습니다.</em></p>
+        <p>이것은 순전히 화면 비율에만 기초합니다("긴" 화면이 더 넓습니다). 이는 
+화면 방향과 관계가 없습니다.</p>
+        <p>{@link android.content.res.Configuration#screenLayout}도 참조하십시오. 
+이것은 화면이 긴 화면인지 여부를 나타냅니다.</p>
+      </td>
+    </tr>
+    <tr id="OrientationQualifier">
+      <td>화면 방향</td>
+      <td>
+        <code>port</code><br/>
+        <code>land</code>  <!-- <br/>
+        <code>square</code>  -->
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code port}: 기기가 세로 방향(수직)입니다.</li>
+          <li>{@code land}: 기기가 가로 방향(수평)입니다.</li>
+          <!-- Square mode is currently not used. -->
+        </ul>
+        <p>이것은 사용자가 화면을 돌리는 경우 애플리케이션 수명 중에 
+변경될 수 있습니다. 이것이 런타임에 애플리케이션에 어떤 영향을 미치는지 알아보려면 
+<a href="runtime-changes.html">런타임 변경 처리</a>를 참조하십시오.</p>
+        <p>{@link android.content.res.Configuration#orientation} 구성 필드도 참조하십시오. 
+이는 현재 기기 방향을 나타냅니다.</p>
+      </td>
+    </tr>
+    <tr id="UiModeQualifier">
+      <td>UI 모드</td>
+      <td>
+        <code>car</code><br/>
+        <code>desk</code><br/>
+        <code>television</code><br/>
+        <code>appliance</code>
+        <code>watch</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code car}: 기기가 차량용 도크에서 표시되고 있습니다.</li>
+          <li>{@code desk}: 기기가 데스크용 도크에서 표시되고 있습니다.</li>
+          <li>{@code television}: 기기가 텔레비전에서 표시되고 있으며, 
+UI가 큰 화면에 있고 사용자가 여기에서 멀리 떨어져 있는 
+"텐 풋(ten foot)" 환경을 제공하고 있습니다. 이는 주로 DPAD 또는 
+기타 비-포인터 상호 작용 주변을 가리킵니다.</li>
+          <li>{@code appliance}: 기기가 가전 제품 역할을 하고 있으며, 디스플레이 
+화면이 없습니다.</li>
+          <li>{@code watch}: 기기에 디스플레이 화면이 있고 손목에 착용됩니다.</li>
+        </ul>
+        <p><em>API 레벨 8에서 추가되었고, 텔레비전은 API 13에서, 시계는 API 20에서 추가되었습니다.</em></p>
+        <p>기기가 도크에 삽입되거나 제거될 때 앱이 응답하는 방식에 관한 정보는 
+<a href="{@docRoot}training/monitoring-device-state/docking-monitoring.html">도킹 상태 및 유형 
+판별과 모니터링</a>을 읽어보십시오.</p>
+        <p>이것은 사용자가 기기를 도크에 놓는 경우 애플리케이션 수명 중에 
+변경될 수 있습니다. 이러한 모드 중 몇 가지는 {@link
+android.app.UiModeManager}를 사용하여 활성화 또는 비활성화할 수 있습니다. 이것이 런타임에 애플리케이션에 어떤 영향을 미치는지 알아보려면 <a href="runtime-changes.html">런타임 변경 처리</a>를 
+참조하십시오.</p>
+      </td>
+    </tr>
+    <tr id="NightQualifier">
+      <td>야간 모드</td>
+      <td>
+        <code>night</code><br/>
+        <code>notnight</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code night}: 야간</li>
+          <li>{@code notnight}: 주간</li>
+        </ul>
+        <p><em>API 레벨 8에서 추가되었습니다.</em></p>
+        <p>이것은 야간 모드가 자동 모드인 상태(기본)에서 애플리케이션의 수명 중에 
+변경될 수 있습니다. 이 경우 모드는 하루 중 시간대를 기반으로 변경됩니다.  이 모드는 
+{@link android.app.UiModeManager}를 사용하여 활성화 또는 비활성화할 수 있습니다. 이것이 런타임 중 애플리케이션에 어떤 영향을 미치는지 알아보려면 <a href="runtime-changes.html">런타임 변경 처리</a>를 
+참조하십시오.</p>
+      </td>
+    </tr>
+    <tr id="DensityQualifier">
+      <td>화면 픽셀 밀도(dpi)</td>
+      <td>
+        <code>ldpi</code><br/>
+        <code>mdpi</code><br/>
+        <code>hdpi</code><br/>
+        <code>xhdpi</code><br/>
+        <code>xxhdpi</code><br/>
+        <code>xxxhdpi</code><br/>
+        <code>nodpi</code><br/>
+        <code>tvdpi</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code ldpi}: 저밀도 화면, 약 120dpi.</li>
+          <li>{@code mdpi}: 중밀도(일반적인 HVGA에서) 화면, 약
+160dpi.</li>
+          <li>{@code hdpi}: 고밀도 화면, 약 240dpi.</li>
+          <li>{@code xhdpi}: 초고밀도 화면, 약 320dpi. <em>API 레벨 8에서 
+추가되었습니다.</em></li>
+          <li>{@code xxhdpi}: 슈퍼 초고밀도 화면, 약 480dpi. <em>API 레벨 16에서 
+추가되었습니다.</em></li>
+          <li>{@code xxxhdpi}: 울트라 슈퍼 초고밀도 화면 사용(시작 관리자 아이콘만 해당, 
+<em>다중 화면 지원</em>의 
+<a href="{@docRoot}guide/practices/screens_support.html#xxxhdpi-note">참고</a>를 참조하십시오), 약 640dpi. <em>API 레벨 18에서 
+추가되었습니다.</em></li>
+          <li>{@code nodpi}: 이것은 기기 밀도에 일치하도록 크기를 조정하고자 하지 않는 비트맵 리소스에 
+사용할 수 있습니다.</li>
+          <li>{@code tvdpi}: Mdpi와 hdpi 사이 어딘가에 해당되는 화면, 약 213dpi. 이것은 
+"기본" 밀도 그룹으로 간주되지 않습니다. 이는 대체로 텔레비전용으로 만들어진 것이며 
+대부분의 앱에는 필요하지 않는 것이 정상입니다. mdpi 및 hdpi만 제공하면 대부분의 앱에는 충분하고 
+시스템이 필요에 따라 크기를 조정해줍니다. 이 한정자는 API 레벨 13과 함께 도입되었습니다.</li>
+        </ul>
+        <p>여섯 가지 기본 밀도간에 3:4:6:8:12:16 비율 척도가 있습니다(tvdpi 밀도는 
+무시). 그러므로 ldpi의 9x9 비트맵은 mdpi에서 12x12이고, hdpi에서 18x18, xhdpi에서 24x24 등, 이런 식으로 적용됩니다.
+</p>
+        <p>이미지 리소스가 텔레비전이나 특정 기기에서 제대로 보이지 않는다고 결정하고 
+tvdpi 리소스를 사용하려 할 경우, 배율은 1.33*mdpi입니다. 예를 들어,
+mdpi 화면의 100px x 100px 이미지는 tvdpi에서 133px x 133px가 되어야 합니다.</p>
+        <p class="note"><strong>참고:</strong> 밀도 한정자를 사용하더라도 해당 리소스가 그 밀도의 화면 
+<em>전용</em>이라는 뜻은 아닙니다. 현재 기기 구성과 더욱 잘 맞는 한정자가 포함된 대체 리소스를 
+제공하지 않으면, 
+시스템이 <a href="#BestMatch">가장 잘 일치하는</a> 리소스를 사용합니다.</p>
+        <p>다양한 화질을 처리하는 방법과 
+Android가 현재 화질에 맞춰 비트맵을 축소하는 방법에 관한 자세한 정보는 <a href="{@docRoot}guide/practices/screens_support.html">다중 화면 
+지원</a>을 참조하십시오.</p>
+       </td>
+    </tr>
+    <tr id="TouchscreenQualifier">
+      <td>터치 스크린 유형</td>
+      <td>
+        <code>notouch</code><br/>
+        <code>finger</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code notouch}: 기기에 터치 스크린이 없습니다.</li>
+          <li>{@code finger}: 기기에 터치 스크린이 있으며 이를 
+사용자의 손가락을 사용한 방향 지시 상호 작용을 통해 쓰도록 되어 있습니다.</li>
+        </ul>
+        <p>{@link android.content.res.Configuration#touchscreen} 구성 필드도 참조하십시오. 
+이는 기기에서 사용되는 터치 스크린의 유형을 나타냅니다.</p>
+      </td>
+    </tr>
+    <tr id="KeyboardAvailQualifier">
+      <td>키보드 가용성</td>
+      <td>
+        <code>keysexposed</code><br/>
+        <code>keyshidden</code><br/>
+        <code>keyssoft</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code keysexposed}: 기기에서 키보드를 사용할 수 있습니다. 키보드에 
+소프트웨어 키보드가 활성화되어 있으면(이럴 가능성이 큽니다), 하드웨어 키보드가 사용자에게 노출되어 있지 
+<em>않거나</em> 기기에 하드웨어 키보드가 없더라도 이 리소스를 사용할 수 있습니다. 소프트웨어 
+키보드가 제공되어 있지 않거나 비활성화되어 있는 경우 이것은 하드웨어 키보드가 노출되어 있을 때에만 
+사용할 수 있습니다.</li>
+          <li>{@code keyshidden}: 기기에서 하드웨어 키보드를 사용할 수 있지만 
+숨겨져 있고 <em>이에 더하여</em> 기기에 소프트웨어 키보드가 활성화되어 있지 <em>않습니다</em>.</li>
+          <li>{@code keyssoft}: 기기에 활성화된 소프트웨어 키보드가 있습니다(표시 여부는 
+무관).</li>
+        </ul>
+        <p><code>keysexposed</code> 리소스를 제공하지만 <code>keyssoft</code>
+리소스는 제공하지 않는다면, 시스템은 소프트웨어 키보드가 활성화되어 있는 동안은 키보드가 보이는지 여부와 관계없이 <code>keysexposed</code> 
+리소스를 사용합니다.</p>
+        <p>이것은 사용자가 하드웨어 키보드를 여는 경우 애플리케이션 수명 중에 
+변경될 수 있습니다. 이것이 런타임에 애플리케이션에 어떤 영향을 미치는지 알아보려면 <a href="runtime-changes.html">런타임 변경 처리</a>를 
+참조하십시오.</p>
+        <p>또한, 구성 필드 {@link
+android.content.res.Configuration#hardKeyboardHidden}과 {@link
+android.content.res.Configuration#keyboardHidden}을 참조하십시오. 이 필드는 각각 하드웨어 키보드의 가시성과 
+모든 종류의 키보드(소프트웨어 포함)의 가시성을 나타냅니다.</p>
+      </td>
+    </tr>
+    <tr id="ImeQualifier">
+      <td>기본 텍스트 입력 메서드</td>
+      <td>
+        <code>nokeys</code><br/>
+        <code>qwerty</code><br/>
+        <code>12key</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nokeys}: 기기에 텍스트 입력을 위한 하드웨어 키가 없습니다.</li>
+          <li>{@code qwerty}: 기기에 하드웨어 쿼티 키보드가 있습니다(이것이 
+사용자
+에게 표시되는지 여부는 무관).</li>
+          <li>{@code 12key}: 기기에 하드웨어 12-키 키보드가 있습니다(이것이 사용자에게 표시되는지 여부는 
+무관).</li>
+        </ul>
+        <p>{@link android.content.res.Configuration#keyboard} 구성 필드도 참조하십시오. 
+이는 기본 텍스트 입력 메서드를 사용할 수 있는지 여부를 나타냅니다.</p>
+      </td>
+    </tr>
+    <tr id="NavAvailQualifier">
+      <td>탐색 키 가용성</td>
+      <td>
+        <code>navexposed</code><br/>
+        <code>navhidden</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code navexposed}: 사용자가 탐색 키를 사용할 수 있습니다.</li>
+          <li>{@code navhidden}: 탐색 키를 사용할 수 없습니다(예: 닫힌 뚜껑 뒤에 있는 
+경우).</li>
+        </ul>
+        <p>이것은 사용자가 탐색 키를 드러내는 경우 애플리케이션 수명 중에 
+변경될 수 있습니다. 이것이 런타임에 애플리케이션에 어떤 영향을 미치는지 알아보려면 <a href="runtime-changes.html">런타임 변경 처리</a>를 
+참조하십시오.</p>
+        <p>{@link android.content.res.Configuration#navigationHidden} 구성 
+필드도 참조하십시오. 이는 탐색 키가 숨겨져 있는지 여부를 나타냅니다.</p>
+      </td>
+    </tr>
+    <tr id="NavigationQualifier">
+      <td>기본 비터치 탐색 메서드</td>
+      <td>
+        <code>nonav</code><br/>
+        <code>dpad</code><br/>
+        <code>trackball</code><br/>
+        <code>wheel</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nonav}: 기기에 터치 스크린을 제외하고 다른 탐색 기능이 
+없습니다.</li>
+          <li>{@code dpad}: 기기에 탐색용 방향 패드(d-pad)가 있습니다.</li>
+          <li>{@code trackball}: 기기에 탐색용 트랙볼이 있습니다.</li>
+          <li>{@code wheel}: 기기에 탐색용 방향 휠이 있습니다.</li>
+        </ul>
+        <p>{@link android.content.res.Configuration#navigation} 구성 필드도 참조하십시오. 
+이는 사용 가능한 탐색 메서드의 유형을 나타냅니다.</p>
+      </td>
+    </tr>
+<!-- DEPRECATED
+    <tr>
+      <td>Screen dimensions</td>
+      <td>Examples:<br/>
+        <code>320x240</code><br/>
+        <code>640x480</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>The larger dimension must be specified first. <strong>This configuration is deprecated
+and should not be used</strong>. Instead use "screen size," "wider/taller screens," and "screen
+orientation" described above.</p>
+      </td>
+    </tr>
+-->
+    <tr id="VersionQualifier">
+      <td>플랫폼 버전(API 레벨)</td>
+      <td>예:<br/>
+        <code>v3</code><br/>
+        <code>v4</code><br/>
+        <code>v7</code><br/>
+        등.</td>
+      <td>
+        <p>기기에서 지원하는 API 레벨입니다. 예를 들어, <code>v1</code>는 API 레벨
+1용이고(Android 1.0 이상 기기), <code>v4</code>는 API 레벨 4용(Android
+1.6 이상 기기)입니다. 이러한 값에 관한 자세한 정보는 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Android API 레벨</a> 문서를
+참조하십시오.</p>
+      </td>
+    </tr>
+</table>
+
+
+<p class="note"><strong>참고:</strong> 일부 구성 한정자는 Android
+1.0 이후부터 추가되었으므로 모든 Android 버전이 모든 한정자를 지원하는 것은 아닙니다. 새로운 한정자를 사용하면 암시적으로 
+플랫폼 버전 한정자도 추가하므로 구형 기기가 이를 무시하게 됩니다. 예를 들어 
+<code>w600dp</code> 한정자를 사용하면 자동적으로 <code>v13</code> 한정자를 포함합니다. 
+사용 가능한 너비 한정자가 API 레벨 13부터 새로 도입되었기 때문입니다. 문제를 애초에 피하려면, 항상 
+기본 리소스를 한 세트 포함하세요(<em>한정자 없는</em> 리소스 한 세트). 자세한 정보는 
+<a href="#Compatibility">리소스와 연관된 최선의 기기 호환성 제공
+</a>을 참조하십시오.</p>
+
+
+
+<h3 id="QualifierRules">한정자 이름 규칙</h3>
+
+<p>다음은 구성 한정자 이름 사용에 관한 규칙입니다.</p>
+
+<ul>
+    <li>한 가지 리소스 세트에 여러 개의 한정자를 사용할 수 있으며, 이를 대시로 구분하면 됩니다. 예를 들어,
+<code>drawable-en-rUS-land</code>는 수평 방향의 
+US-English 기기에 적용합니다.</li>
+    <li>한정자는 <a href="#table2">표2</a>에 나열된 순서를 따라야 합니다. 예:
+
+      <ul>
+        <li>잘못된 배열: <code>drawable-hdpi-port/</code></li>
+        <li>맞는 배열: <code>drawable-port-hdpi/</code></li>
+      </ul>
+    </li>
+    <li>대체 리소스 디렉터리는 중첩될 수 없습니다. 예를 들어, 
+<code>res/drawable/drawable-en/</code>는 있을 수 없습니다.</li>
+    <li>값은 대소문자를 구분하지 않습니다.  리소스 컴파일러가 처리 전에 디렉터리 이름을 
+소문자로 바꿔 대소문자를 구분하지 않는 
+파일 시스템에서 문제를 일으키지 않도록 방지합니다. 이름에 대문자가 있는 것은 오로지 가독성을 향상하기 위해서입니다.</li>
+    <li>각 한정자 유형마다 한 개의 값만 지원됩니다. 예를 들어, 스페인과 프랑스에 
+같은 드로어블 파일을 사용하고자 하는 경우 디렉터리 이름이 
+<code>drawable-rES-rFR/</code>이면 <em>안 됩니다.</em> 대신 
+<code>drawable-rES/</code>와 <code>drawable-rFR/</code> 같이 적절한 파일이 포함된 두 개의 리소스 디렉터리가 필요합니다.
+그러나 두 위치에서 같은 파일을 실제로 복제할 필요는 없습니다. 대신 
+리소스에 별명을 만들면 됩니다. 아래의 <a href="#AliasResources">별명 리소스
+생성</a>을 참조하십시오.</li>
+</ul>
+
+<p>이런 한정자로 이름을 지은 디렉터리에 대체 리소스를 저장하고 나면 
+Android가 현재 기기 구성에 기초하여 애플리케이션에 자동으로 리소스를 적용합니다.
+ 리소스가 요청될 때마다 Android가 요청한 리소스 파일이 들어있는
+대체 리소스 디렉터리를 확인하고, 그런 다음 <a href="#BestMatch">가장 잘 일치하는 
+리소스를 찾습니다</a>(아래에서 논함). 특정 기기 구성에 일치하는 대체 리소스가 없는 경우, 
+Android는 상응하는 기본 리소스(구성 한정자를 포함하지 않는
+특정 리소스 유형에 대한 리소스 세트
+)를 사용합니다.</p>
+
+
+
+<h3 id="AliasResources">별명 리소스 생성</h3>
+
+<p>어떤 리소스를 하나 이상의 기기 구성에서 사용하고자 하는 경우(그렇지만 
+이를 기본 리소스를 제공하는 것은 원치 않는 경우), 같은 리소스를 하나 이상의 대체 리소스 디렉터리에 
+넣지 않아도 됩니다. 대신, 기본 리소스 디렉터리에 저장된 리소스에 대해 별명 역할을 하는 
+대체 
+리소스를 만들면 됩니다(경우에 따라).</p>
+
+<p class="note"><strong>참고:</strong> 모든 리소스가 다른 리소스에 대한 
+별명을 생성할 수 있는 메커니즘을 제공하는 것은 아닙니다. 특히, {@code xml/} 디렉터리의 애니메이션, 메뉴, 원시 및 기타 지정되지 않은 
+리소스는 이 기능을 제공하지 않습니다.</p>
+
+<p>예를 들어, 애플리케이션 아이콘 {@code icon.png}이 있고 서로 다른 로케일에서 이 아이콘의 고유 버전이 
+필요한 경우가 있습니다. 그러나 두 로케일, English-Canadian과 French-Canadian은 같은 버전을 
+사용해야 합니다. 같은 이미지를 English-Canadian과 French-Canadian 양쪽 
+모두에 대한 리소스 디렉터리에 복사해야 한다고 생각할 수 있지만, 실은 
+그렇지 않습니다. 대신, 두 로케일에서 사용하는 이미지를 {@code icon_ca.png}(
+{@code icon.png} 이외에 어떤 이름이든 가능)로 저장하고 이를 
+기본 {@code res/drawable/} 디렉터리에 넣으면 됩니다. 그런 다음 {@code icon.xml} 파일을 {@code icon_ca.png}
+리소스를 참조하는 {@code
+res/drawable-en-rCA/} 및 {@code res/drawable-fr-rCA/}로 생성합니다. 이때, {@code &lt;bitmap&gt;} 요소를 사용하면 됩니다. 이렇게 하면 
+PNG 파일 버전 하나와 그것을 가리키는 작은 XML 파일 두 개만 저장할 수 있습니다. (XML 파일 예시는 아래와 같습니다.)</p>
+
+
+<h4>드로어블</h4>
+
+<p>기존 드로어블에 별명을 생성하려면 {@code &lt;bitmap&gt;} 요소를 사용합니다. 
+예를 들면 다음과 같습니다.</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/icon_ca" />
+</pre>
+
+<p>파일을 (
+{@code res/drawable-en-rCA/}와 같은 대체 리소스 디렉터리에) {@code icon.xml}로 저장하면,
+{@code R.drawable.icon}으로 참조할 수 있지만 실제로는 {@code
+R.drawable.icon_ca} 리소스({@code res/drawable/}에 저장됨)의 별명인 리소스로 컴파일링됩니다.</p>
+
+
+<h4>레이아웃</h4>
+
+<p>기존 레이아웃에 별명을 생성하려면 {@code &lt;merge&gt;}로 래핑되어 있는 {@code &lt;include&gt;}
+요소를 사용합니다. 예:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;merge>
+    &lt;include layout="@layout/main_ltr"/>
+&lt;/merge>
+</pre>
+
+<p>파일을 {@code main.xml}로 저장하면, {@code R.layout.main}으로 참조할 수 있지만 실제로는 {@code R.layout.main_ltr}
+ 리소스의 별명인 리소스로 
+컴파일링됩니다.</p>
+
+
+<h4>문자열 및 기타 단순 값</h4>
+
+<p>기존 문자열에 별명을 생성하려면 원하는 문자열의 리소스 ID를 
+새 문자열의 값으로 사용하면 됩니다. 예:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;string name="hello">Hello&lt;/string>
+    &lt;string name="hi">@string/hello&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>이제 {@code R.string.hi} 리소스는 {@code R.string.hello}의 별명입니다.</p>
+
+<p> <a href="{@docRoot}guide/topics/resources/more-resources.html">기타 단순 값도</a> 같은 방식으로 
+동작합니다. 예를 들면 색상은 다음과 같습니다.</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;color name="yellow">#f00&lt;/color>
+    &lt;color name="highlight">@color/red&lt;/color>
+&lt;/resources>
+</pre>
+
+
+
+
+<h2 id="Compatibility">리소스와 연관된 최선의 기기 호환성 제공</h2>
+
+<p>애플리케이션이 여러 기기 구성을 지원하게 하려면, 
+언제나 애플리케이션이 사용하는 각 유형의 리소스에 기본 리소스를 제공하는 것이 매우 중요합니다.</p>
+
+<p>예를 들어 애플리케이션이 여러 언어를 지원할 경우, 항상 <em>언어 및 지역 한정자</em> <a href="#LocaleQualifier">없이</a> {@code
+values/} 디렉터리(여기에 문자열 저장)를 포함시켜야 합니다. 그렇게 하지 않고 언어와 지역 한정자가 있는 디렉터리에 
+모든 문자열을 넣으면, 문자열이 지원하지 않는 언어로 설정된 기기에서 애플리케이션을 
+실행하면 작동이 중단됩니다. 그러나 기본 
+{@code values/} 리소스를 제공하는 한은 애플리케이션이 제대로 실행됩니다(사용자가 이해하지 못하는 
+언어로라도 작동합니다. 작동 중단보다 낫습니다.)</p>
+
+<p>마찬가지로 화면 방향에 기초하여 여러 가지 레이아웃 리소스를 제공하는 경우 
+하나의 방향을 기본값으로 선택해야 합니다. 예를 들어 가로 방향에는 {@code
+layout-land/}로, 세로 방향에는 {@code layout-port/}로 레이아웃 리소스를 제공하는 대신 하나를 기본으로 남겨두십시오. 
+가로 방향에 {@code layout/}, 세로 방향에 {@code layout-port/}와 같은 식으로 하면 됩니다.</p>
+
+<p>애플리케이션이 예상치 못한 구성에서 실행될 수 있을 뿐만 아니라 
+Android의 새 버전에서 이전 버전에서는 지원하지 않는 구성 한정자를 추가할 수도 있으므로, 
+기본 리소스를 제공하는 것이 중요합니다. 새 리소스 한정자를 사용하지만, 
+Android 이전 버전과 코드 호환성은 유지한 경우, 그 후 Android 이전 버전이
+애플리케이션을 실행하면 새로운 한정자로 이름을 지정한 리소스를 사용할 수 없으므로 기본 리소스를 제공하지 않으면 
+애플리케이션 작동이 중단됩니다. 예를 들어, <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
+minSdkVersion}</a>이 4로 설정되고 <a href="#NightQualifier">야간 모드</a>(API 레벨 8에서 추가된 {@code night} 또는 {@code notnight})를 사용하는 모든 드로어블 리소스를 한정할 경우, API 레벨 4 기기는 
+드로어블 리소스에 액세스하지 못하고 사용이 중단됩니다. 이 경우, 
+{@code notnight}를 기본 리소스로 제공하는 것이 좋습니다. 그래야 해당 한정자를 배제하고 
+드로어블 리소스가 {@code drawable/} 또는 {@code drawable-night/}이 됩니다.</p>
+
+<p>그러므로 최선의 기기 호환성을 제공하려면 언제나 
+애플리케이션에서 반드시 제대로 수행해야 하는 리소스에 대해 기본 리소스를 제공하십시오. 그런 다음 구성 한정자를 사용하여 
+특정 기기 구성에 대해 대체 리소스를 생성하면 됩니다.</p>
+
+<p>이 규칙에는 한 가지 예외가 있습니다. 애플리케이션의 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> 이 4 이상이면 
+<a href="#DensityQualifier">화면 밀도</a> 한정자로 대체 드로어블 리소스를 제공할 때 기본 드로어블 
+리소스가 <em>없어도 됩니다</em>. 기본 
+드로어블 리소스가 없더라도 Android가 대체 화면 화질 중에서 가장 잘 맞는 리소스를 찾고 
+필요에 따라 비트맵을 축소합니다. 그러나 모든 유형의 기기에서 최상의 경험을 제공하려면, 
+모든 세 가지 유형의 밀도에 대해 대체 드로어블을 제공해야 합니다.</p>
+
+
+
+<h2 id="BestMatch">Android가 가장 잘 일치하는 리소스를 찾는 방법</h2>
+
+<p>개발자가 자신이 대체를 제공하는 리소스를 요청하면 Android가 런타임에 어느 대체 리소스를 
+사용할지 현대 기기 구성에 따라 여러 가지로 선택합니다. Android가 
+대체 리소스를 선택하는 방법을 보여주기 위해 다음 드로어블 디렉터리에 각각 같은 이미지의 
+서로 다른 버전이 들어있다고 가정하겠습니다.</p>
+
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+drawable-fr-rCA/
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+
+<p>그리고 기기 구성은 다음과 같다고 가정해봅시다.</p>
+
+<p style="margin-left:1em;">
+로케일 = <code>en-GB</code> <br/>
+화면 방향 = <code>port</code> <br/>
+화면 픽셀 밀도 = <code>hdpi</code> <br/>
+터치 스크린 유형 = <code>notouch</code> <br/>
+기본 텍스트 입력 메서드 = <code>12key</code>
+</p>
+
+<p>Android는 기기 구성을 이용 가능한 대체 리소스와 비교하여, 
+{@code drawable-en-port}에서 드로어블을 선택합니다.</p>
+
+<p>시스템은 다음과 같은 논리에 따라 
+어느 리소스를 사용할지 결정합니다.</p>
+
+
+<div class="figure" style="width:371px">
+<img src="{@docRoot}images/resources/res-selection-flowchart.png" alt="" height="471" />
+<p class="img-caption"><strong>그림 2.</strong> Android가 가장 잘 일치하는 리소스를 찾는 방법을 나타낸 
+흐름도입니다.</p>
+</div>
+
+
+<ol>
+  <li>기기 구성과 충돌하는 리소스 파일을 제거합니다.
+    <p><code>drawable-fr-rCA/</code>는
+<code>en-GB</code> 로케일과 충돌하므로 제거되었습니다.</p>
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+<strike>drawable-fr-rCA/</strike>
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+<p class="note"><strong>예외:</strong> 화면 픽셀 밀도 한정자 하나만은 충돌을 이유로 제거되지 
+않습니다. 기기의 화면 밀도가 hdpi라도, 
+현 시점에서는 모든 화면 밀도가 일치로 간주되므로 <code>drawable-port-ldpi/</code>를 제거하지 않습니다.
+ 자세한 정보는 <a href="{@docRoot}guide/practices/screens_support.html">다중 화면 
+지원</a> 문서에서 이용하실 수 있습니다.</p></li>
+
+  <li>목록(<a href="#table2">표2</a>)에서 (그 다음으로) 우선 순위가 가장 높은 한정자를 선택합니다
+(MCC부터 시작하여 아래로 내려가십시오). </li>
+  <li>리소스 디렉터리 중에 이 한정자를 포함한 것이 있나요?  </li>
+    <ul>
+      <li>없는 경우, 2단계로 돌아가 다음 한정자를 살펴보십시오 (이 예시의 경우 
+언어 한정자에 도달할 때까지 답은 "없습니다"입니다).</li>
+      <li>있는 경우, 4단계로 계속 진행합니다.</li>
+    </ul>
+  </li>
+
+  <li>이 한정자를 포함하지 않는 디렉터리를 제거합니다. 이 예시에서는 시스템이 
+언어 한정자를 포함하지 않는 디렉터리를 모두 제거합니다.</li>
+<pre class="classic no-pretty-print">
+<strike>drawable/</strike>
+drawable-en/
+drawable-en-port/
+drawable-en-notouch-12key/
+<strike>drawable-port-ldpi/</strike>
+<strike>drawable-port-notouch-12key/</strike>
+</pre>
+<p class="note"><strong>예외:</strong> 문제의 한정자가 화면 픽셀 밀도라면, 
+Android는 기기 화면 밀도와 가장 가깝게 일치하는 옵션을 선택합니다. 
+일반적으로, Android는 작은 원본 이미지를 확대하는 것보다
+큰 원본 이미지를 축소하는 것을 선호합니다. <a href="{@docRoot}guide/practices/screens_support.html">다중 화면 
+지원</a>을 참조하십시오.</p>
+  </li>
+
+  <li>뒤로 돌아가 디렉터리가 한 개만 남을 때까지 2, 3 및 4단계를 반복합니다. 이 예시에서, 일치하는 것이 있는 다음 한정자는 
+화면 방향입니다. 
+그러므로 화면 방향을 지정하지 않는 리소스가 제거됩니다.
+<pre class="classic no-pretty-print">
+<strike>drawable-en/</strike>
+drawable-en-port/
+<strike>drawable-en-notouch-12key/</strike>
+</pre>
+<p>남은 디렉터리는 {@code drawable-en-port}입니다.</p>
+  </li>
+</ol>
+
+<p>이 절차는 요청된 각 리소스에 대해 실행하지만, 시스템이 몇 가지 측면을 추가로 
+최적화합니다. 그러한 최적화 가운데에는 일단 기기 구성을 알게 되고 나면 절대 일치할 가능성이 없는 
+대체 리소스를 시스템이 제거할 수 있다는 점도 있습니다. 예를 들어, 구성 언어가 
+영어("en")이고 영어 이외의 다른 언어 한정자로 설정된 리소스 디렉터리는 
+절대 확인된 리소스 풀에 포함되지 않습니다(
+언어 한정자가 포함되지 <em>않는</em> 리소스 디렉터리는 여전히 포함됩니다).</p>
+
+<p>화면 크기 한정자에 기초하여 리소스를 선택할 때 시스템은 가장 잘 일치하는 리소스가 없다면
+현재 화면보다 작은 화면에 지정된 리소스를 사용합니다
+(예를 들어, 큰 화면은 필요에 따라 일반 크기 화면 리소스를 사용합니다). 그러나 
+이용 가능한 리소스가 현재 화면보다 <em>큰</em> 리소스뿐이라면, 시스템은
+이를 사용하지 <strong>않고</strong>, 기기 구성에 일치하는 리소스가 없으면 애플리케이션 사용이 중단됩니다
+(예를 들어 모든 레이아웃 리소스가 {@code xlarge} 한정자에 태그되어 있지만,
+기기가 보통 크기 화면일 경우).</p>
+
+<p class="note"><strong>참고:</strong> 한정자의 <em>우선 순위</em>(<a href="#table2">표 2</a> 참조)가 기기와 정확하게 일치하는 
+한정자 수보다 더 중요합니다. 예를 들어 위의 4단계에서 
+목록의 마지막 선택에 기기와 정확히 일치하는 한정자가 세 개 포함되어 있지만(방향, 터치 스크린
+유형 및 입력 메서드), <code>drawable-en</code>에는 일치하는 매개변수가 
+하나뿐입니다(언어). 다만, 언어가 이러한 다른 한정자보다 우선 순위가 높기 때문에 
+<code>drawable-port-notouch-12key</code>는 탈락합니다.</p>
+
+<p>애플리케이션에서 리소스를 사용하는 것에 대한 자세한 정보는 <a href="accessing-resources.html">리소스 액세스</a>로 계속 진행하여 알아보십시오.</p>
diff --git a/docs/html-intl/intl/ko/guide/topics/resources/runtime-changes.jd b/docs/html-intl/intl/ko/guide/topics/resources/runtime-changes.jd
new file mode 100644
index 0000000..a5e7f5b
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/resources/runtime-changes.jd
@@ -0,0 +1,281 @@
+page.title=런타임 변경 처리하기
+page.tags=액티비티, 수명 주기
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>이 문서의 내용</h2>
+  <ol>
+    <li><a href="#RetainingAnObject">구성 변경 중에 객체 보존하기</a></li>
+    <li><a href="#HandlingTheChange">구성 변경 직접 처리하기</a>
+  </ol>
+
+  <h2>참고 항목</h2>
+  <ol>
+    <li><a href="providing-resources.html">리소스 제공</a></li>
+    <li><a href="accessing-resources.html">리소스 액세스</a></li>
+    <li><a href="http://android-developers.blogspot.com/2009/02/faster-screen-orientation-change.html">더 빠른
+ 화면 방향 변경</a></li>
+  </ol>
+</div>
+</div>
+
+<p>몇몇 기기 구성은 런타임 중에 변경될 수 있습니다
+(예: 화면 방향, 키보드 가용성 및 언어 등). 그러한 변경이 일어나는 경우, 
+Android는 실행 중인 
+{@link android.app.Activity}를 다시 시작합니다({@link android.app.Activity#onDestroy()} 호출, 뒤이어 {@link
+android.app.Activity#onCreate(Bundle) onCreate()} 호출). 이런 동작은 여러분이 제공한 
+대체 리소스로 애플리케이션을 자동으로 다시 로딩함으로써 새로운 기기 구성에 애플리케이션이 적응하는 것을 돕도록
+설계되었습니다(예: 다양한 화면 방향과 크기에 대한 다양한 레이아웃).</p>
+
+<p>다시 시작을 적절히 처리하려면 액티비티가 정상적인 
+<a href="{@docRoot}guide/components/activities.html#Lifecycle">액티비티
+수명 주기</a>를 통해 이전 상태를 복원하는 것이 중요합니다. 여기에서 Android는 
+{@link android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()}를 호출한 다음에 액티비티를 소멸시켜 
+애플리케이션 상태에 대한 데이터를 저장할 수 있습니다. 그러면 
+{@link android.app.Activity#onCreate(Bundle) onCreate()} 또는 {@link
+android.app.Activity#onRestoreInstanceState(Bundle) onRestoreInstanceState()} 중에 상태를 복원할 수 있습니다.</p>
+
+<p>애플리케이션이 애플리케이션 상태를 그대로 유지한 채 스스로 다시 시작할 수 있는지 시험해 보려면, 
+구성 변경을 일으켜보아야 합니다(예를 들어 화면 방향 변경 등). 이는 애플리케이션에서 여러 가지 작업을 수행하는 
+동안 해봅니다. 애플리케이션이 언제든 사용자 데이터나 상태를 손실하지 않고 
+다시 시작할 수 있어야 합니다. 그래야 구성 변경과 같은 이벤트를 처리할 수 있기 때문입니다. 그렇지 않으면 
+사용자가 걸려오는 전화를 받은 다음 한참 후에 애플리케이션으로 돌아오면 애플리케이션 프로세스가 이미 
+소멸되어 있을 수 있습니다. 액티비티 상태를 복원하는 방법을 배우려면, <a href="{@docRoot}guide/components/activities.html#Lifecycle">액티비티 수명 주기</a>에 관해 읽어보십시오.</p>
+
+<p>하지만, 애플리케이션을 다시 시작하고 상당량의 데이터를 복원하면 비용도 많이 들고 
+불량한 사용자 환경이 만들어지는 상황에 직면할 수도 있습니다. 그러한 상황이라면, 
+두 가지 다른 옵션이 있습니다.</p>
+
+<ol type="a">
+  <li><a href="#RetainingAnObject">구성 변경 중에 객체 보존하기</a>
+  <p>구성이 변경되는 중에 액티비티가 다시 시작될 수 있게 허용하되, 액티비티의 새 인스턴스에 상태 
+저장 객체를 넣습니다.</p>
+
+  </li>
+  <li><a href="#HandlingTheChange">구성 변경 직접 처리하기</a>
+  <p>특정 구성 변경 중에 시스템이 액티비티를 다시 시작하도록 하지 못하게 방지하되, 
+구성이 실제로 변경되면 콜백을 수신하도록 하여 필요에 따라 액티비티를 수동으로 업데이트할 수 
+있도록 합니다.</p>
+  </li>
+</ol>
+
+
+<h2 id="RetainingAnObject">구성 변경 중에 객체 보존하기</h2>
+
+<p>액티비티를 다시 시작하려면 많은 수의 데이터 세트를 복구해야 하는 경우, 네트워크 연결을 
+다시 설정하거나 다른 집약적 작업을 수행한 다음 완전히 다시 시작하십시오. 
+구성 변경 때문에 사용자 환경이 느려질 수 있습니다. 또한, 액티비티 상태를 완전히 복원하려면 
+{@link android.os.Bundle}을 사용할 수도 있습니다. 이것은 시스템이 개발자 대신 {@link
+android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} 콜백으로 저장해두는 것입니다. 이것은 대형 객체(예: 비트맵)를 담도록 
+디자인된 것이 아니며 이 안의 데이터는 반드시 직렬화했다가 다시 역직렬화해야 합니다. 이렇게 하면 
+메모리를 아주 많이 소모할 수 있으며 구성 변경이 느려질 수 있습니다. 이와 같은 상황에서는 
+액티비티를 다시 초기화해야 한다는 부담을 해결하기 위해 액티비티가 구성 변경으로 인해 다시 시작되었을 때 {@link
+android.app.Fragment}를 보존하면 됩니다. 이 프래그먼트에는 
+보존하고자 하는 상태 저장 객체에 대한 참조를 담을 수 있습니다.</p>
+
+<p>Android 시스템이 구성 변경으로 인하여 액티비티를 종료시킬 때, 액티비티에서 보존하기로 표시해둔 
+프래그먼트는 소멸되지 않습니다. 그러한 프래그먼트를 액티비티에 추가하면 
+상태 저장 객체를 보존할 수 있습니다.</p>
+
+<p>런타임 구성 변경 중에 상태 저장 객체를 프래그먼트에 보존해두는 방법은 다음과 같습니다.</p>
+
+<ol>
+  <li>{@link android.app.Fragment} 클래스를 확장하고 상태 저장 
+객체에 참조를 선언합니다.</li>
+  <li>프래그먼트가 생성되면 {@link android.app.Fragment#setRetainInstance(boolean)}를 호출합니다.
+      </li>
+  <li>해당 프래그먼트를 액티비티에 추가합니다.</li>
+  <li>{@link android.app.FragmentManager}를 사용하여 액티비티가 다시 시작될 때 프래그먼트를 
+검색합니다.</li>
+</ol>
+
+<p>예를 들어 프래그먼트를 다음과 같이 정의합니다.</p>
+
+<pre>
+public class RetainedFragment extends Fragment {
+
+    // data object we want to retain
+    private MyDataObject data;
+
+    // this method is only called once for this fragment
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // retain this fragment
+        setRetainInstance(true);
+    }
+
+    public void setData(MyDataObject data) {
+        this.data = data;
+    }
+
+    public MyDataObject getData() {
+        return data;
+    }
+}
+</pre>
+
+<p class="caution"><strong>주의:</strong> 어느 객체든 저장할 수 있지만, 
+{@link android.app.Activity}에 묶여 있는 객체는 절대로 전달하면 안 됩니다. 예를 들어 {@link
+android.graphics.drawable.Drawable}, {@link android.widget.Adapter}, {@link android.view.View}
+ 또는 {@link android.content.Context}와 연관된 기타 모든 객체가 이에 해당됩니다. 이런 것을 전달하면, 
+원래 액티비티 인스턴스의 모든 보기와 리소스를 몽땅 누출시킵니다. (리소스 누출이란 
+애플리케이션이 리소스에 대한 보유권을 유지하고 있어 가비지 수집의 대상이 될 수 없고, 따라서 엄청난 양의 메모리가 
+손실된다는 뜻입니다.)</p>
+
+<p>그런 다음 {@link android.app.FragmentManager}를 사용하여 프래그먼트를 액티비티에 추가합니다. 
+프래그먼트에서 데이터 객체를 가져오려면 런타임 구성 변경 중에 액티비티가 다시 시작될 때 
+가져오면 됩니다. 예를 들어, 액티비티를 다음과 같이 정의합니다.</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    private RetainedFragment dataFragment;
+
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+
+        // find the retained fragment on activity restarts
+        FragmentManager fm = getFragmentManager();
+        dataFragment = (DataFragment) fm.findFragmentByTag(“data”);
+
+        // create the fragment and data the first time
+        if (dataFragment == null) {
+            // add the fragment
+            dataFragment = new DataFragment();
+            fm.beginTransaction().add(dataFragment, “data”).commit();
+            // load the data from the web
+            dataFragment.setData(loadMyData());
+        }
+
+        // the data is available in dataFragment.getData()
+        ...
+    }
+
+    &#64;Override
+    public void onDestroy() {
+        super.onDestroy();
+        // store the data in the fragment
+        dataFragment.setData(collectMyLoadedData());
+    }
+}
+</pre>
+
+<p>이 예시에서 {@link android.app.Activity#onCreate(Bundle) onCreate()}는 프래그먼트를 추가하거나 
+이에 대한 참조를 복원합니다. {@link android.app.Activity#onCreate(Bundle) onCreate()} 또한 
+프래그먼트 인스턴스 안에 상태 저장 객체를 저장합니다. 
+{@link android.app.Activity#onDestroy() onDestroy()}는 보존된 
+프래그먼트 인스턴스 내부의 상태 저장 객체를 업데이트합니다.</p>
+
+
+
+
+
+<h2 id="HandlingTheChange">구성 변경 직접 처리하기</h2>
+
+<p>애플리케이션이 특정 구성 변경 중에 리소스를 업데이트하지 않아도 되고 
+그와 <em>동시에</em> 성능 한계가 있어 액티비티 다시 시작을 피해야 하는 경우, 
+액티비티가 구성 변경을 알아서 처리한다고 선언하면 됩니다. 
+이렇게 하면 시스템이 액티비티를 다시 시작하지 않도록 방지할 수 있습니다.</p>
+
+<p class="note"><strong>참고:</strong> 구성 변경을 직접 처리하면 대체 리소스를 사용하는 것이 
+훨씬 더 까다로워질 수 있습니다. 시스템이 개발자 대신 자동으로 이를 적용해주지 않기 
+때문입니다. 이 기법은 구성 변경으로 인한 재시작을 반드시 피해야만 하는 경우 최후의 수단으로서만 
+고려해야 하며 대부분의 애플리케이션에는 권장하지 않습니다.</p>
+
+<p>액티비티가 구성 변경을 직접 처리한다고 선언하려면, 매니페스트 파일의 적절한 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 요소를 편집하여 
+처리하고자 하는 구성을 나타내는 값이 있는 <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> 속성을 포함하도록 
+합니다. 가능한 값은 <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> 속성에 대한 관련 문서에 목록으로 나열되어 있습니다(가장 보편적으로 사용되는 값은 화면 방향이 변경될 때 다시 시작을 방지하는 {@code "orientation"}과 
+키보드 가용성이 변경될 때 다시 시작을 방지하는 {@code "keyboardHidden"}
+입니다).  이 속성에는 여러 개의 구성 값을 선언할 수 있습니다. 각각을 
+파이프 {@code |} 문자로 구분하면 됩니다.</p>
+
+<p>예를 들어 다음 매니페스트 코드는 화면 방향 변경과 키보드 가용성 변경을 둘 다 
+처리하는 액티비티를 선언하는 것입니다.</p>
+
+<pre>
+&lt;activity android:name=".MyActivity"
+          android:configChanges="orientation|keyboardHidden"
+          android:label="@string/app_name">
+</pre>
+
+<p>이제 이러한 구성 중 하나가 변경되어도 {@code MyActivity}는 다시 시작하지 않습니다. 
+그 대신, {@code MyActivity}가 {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}로의 호출을 받습니다. 이 메서드는 
+{@link android.content.res.Configuration} 객체로 전달되며, 이는 새 기기 구성을 
+나타냅니다. {@link android.content.res.Configuration}의 필드를 읽어보면 
+새 구성을 판별할 수 있고 적절한 변경을 할 수 있습니다. 그러려면 인터페이스에 사용된 리소스를 
+업데이트하면 됩니다. 이 메서드가 
+호출되면, 액티비티의 {@link android.content.res.Resources} 객체가 
+업데이트되어 새 구성에 기반한 리소스를 반환하며, 따라서 시스템이 액티비티를 다시 시작하지 않아도 
+UI의 요소를 손쉽게 재설정할 수 있게 됩니다.</p>
+
+<p class="caution"><strong>주의:</strong> Android 3.2(API 레벨 13)부터 기기가 
+세로 방향 및 가로 방향 사이를 전환할 때 <strong>"화면 크기"도 
+같이 변경됩니다</strong>. 따라서, 
+API 레벨 13 이상(<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> 및 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>
+ 속성에서 선언한 내용에 따름)을 대상으로 개발하는 경우 방향 변경으로 인한 런타임 다시 시작을 방지하고자 하면, {@code
+"orientation"} 값 외에 {@code "screenSize"} 값도 포함시켜야 합니다. 다시 말해, {@code
+android:configChanges="orientation|screenSize"}를 선언해야 합니다. 하지만, 애플리케이션이 API 레벨 12 이하를 
+대상으로 하는 경우라면 애플리케이션이 언제든 이 구성 변경을 알아서 처리합니다(이 구성 변경은 
+액티비티를 다시 시작하지 않습니다. 이는 Android 3.2 이상 기기에서 실행되는 경우에도 마찬가지입니다).</p>
+
+<p>예를 들어, 다음 {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} 구현은 
+현재 기기의 방향을 확인합니다.</p>
+
+<pre>
+&#64;Override
+public void onConfigurationChanged(Configuration newConfig) {
+    super.onConfigurationChanged(newConfig);
+
+    // Checks the orientation of the screen
+    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
+        Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
+    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
+        Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
+    }
+}
+</pre>
+
+<p>{@link android.content.res.Configuration} 객체는 변경된 것만이 아니라 현재 
+구성 전체를 나타냅니다. 대부분의 경우에는 구성이 정확히 어떻게 
+변경되었는지에는 관심이 없고 처리 중인 구성에 대체 리소스를 제공하는 모든 리소스를 그저 
+재할당하기만 하면 됩니다. 예를 들어 이제 {@link
+android.content.res.Resources} 객체가 업데이트되었으니 {@link android.widget.ImageView#setImageResource(int)
+setImageResource()}가 있는 모든 
+{@link android.widget.ImageView}와 
+새 구성에 대한 적절한 리소스를 재설정할 수 있습니다(<a href="providing-resources.html#AlternateResources">리소스 제공</a>에 설명된 바와 같음).</p>
+
+<p>{@link
+android.content.res.Configuration} 필드에서 가져온 값이 
+{@link android.content.res.Configuration} 클래스에서 가져온 특정 상수와 일치하는 정수라는 점을 눈여겨 보십시오. 각 필드에 
+어느 상수를 써야 하는지에 대한 관련 문서는 {@link
+android.content.res.Configuration} 참조에 있는 적절한 필드를 참조하십시오.</p>
+
+<p class="note"><strong>명심할 점:</strong> 액티비티가 직접 구성 변경을 처리한다고 선언하는 경우, 
+대체를 제공하는 모든 요소에 대해 본인이 직접 책임을 지게 됩니다. 액티비티가 직접 
+방향 변경을 처리하고 가로 및 세로 방향 사이에서 바뀌어야 하는 이미지가 있는 경우, 
+각 리소스를 각 요소에 재할당해야 하며 이를 {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} 중에 수행해야 합니다.</p>
+
+<p>이러한 구성 변경을 기반으로 애플리케이션을 업데이트하지 않아도 되는 경우, 
+대신 {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}를 구현하지 <em>않으면</em> 됩니다. 이런 
+경우, 구성 변경 전에 쓰였던 리소스가 모두 그대로 사용되고 액티비티의 다시 시작만 
+피한 것이 됩니다. 그러나, 애플리케이션은 
+언제든 종료되고 이전 상태를 그대로 유지한 채 다시 시작될 수 있어야 합니다 정상적인 액티비티 
+수명 주기 중에 상태 유지에서의 탈출 방안으로 이 기법을 고려해서는 안 됩니다. 이는 애플리케이션이 
+다시 시작되지 않도록 방지할 수 없는, 다른 구성 변경도 여럿 있어서일뿐만 아니라, 사용자가 
+애플리케이션을 떠났을 경우 해당 사용자가 다시 돌아오기 전에 소멸되는 것과 같은 이벤트를 처리해야 하기 때문이라는 
+이유도 있습니다.</p>
+
+<p>액티비티 내에서 처리할 수 있는 구성 변경이 무엇인지에 대한 자세한 내용은 <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> 관련 문서와 {@link android.content.res.Configuration}
+클래스를 참조하십시오.</p>
diff --git a/docs/html-intl/intl/ko/guide/topics/ui/controls.jd b/docs/html-intl/intl/ko/guide/topics/ui/controls.jd
new file mode 100644
index 0000000..bf87398
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/ui/controls.jd
@@ -0,0 +1,90 @@
+page.title=입력 제어
+parent.title=사용자 인터페이스
+parent.link=index.html
+@jd:body
+
+<div class="figure" style="margin:0">
+  <img src="{@docRoot}images/ui/ui-controls.png" alt="" style="margin:0" />
+</div>
+
+<p>입력 제어는 앱의 사용자 인터페이스에 있는 대화형 구성 요소입니다. 
+Android는 버튼, 텍스트 필드, 찾기 막대, 확인란, 확대 버튼, 전환 버튼 등과 같이
+UI에서 사용할 수 있도록 매우 다양한 제어를 제공합니다.</p>
+
+<p>UI에 입력 제어를 추가하려면 단순히 <a href="{@docRoot}guide/topics/ui/declaring-layout.html">XML 레이아웃</a>에 XML 요소를 하나 추가하기만 하면 됩니다. 
+다음은 텍스트 필드와 버튼이 있는 레이아웃을 예시로 나타낸 것입니다.</p>
+
+<pre style="clear:right">
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+    android:orientation="horizontal">
+    &lt;EditText android:id="@+id/edit_message"
+        android:layout_weight="1"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:hint="@string/edit_message" />
+    &lt;Button android:id="@+id/button_send"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/button_send"
+        android:onClick="sendMessage" />
+&lt;/LinearLayout>
+</pre>
+
+<p>각 입력 제어는 특정한 입력 이벤트를 지원하므로, 사용자가 텍스트를 입력할 때 또는 버튼을 터치할 때 
+이벤트를 처리할 수 있게 해줍니다.</p>
+
+
+<h2 id="CommonControls">보편적인 제어</h2>
+<p>다음은 앱에서 사용할 수 있는 몇 가지 보편적인 제어를 목록으로 나열한 것입니다. 링크를 따라가면 각 제어에 대해 
+좀 더 자세히 알아볼 수 있습니다.</p>
+
+<p class="note"><strong>참고:</strong> Android는 여기에 나열된 것보다 몇 가지 더 많은 제어를 제공합니다.
+ 더 많은 내용을 알아보려면 {@link android.widget} 패키지를 탐색해보십시오. 
+앱에 특정한 종류의 입력 제어가 필요한 경우, 나름의 <a href="{@docRoot}guide/topics/ui/custom-components.html">사용자 지정 구성 요소</a>를 직접 구축해도 됩니다.</p>
+
+<table>
+    <tr>
+        <th scope="col">제어 유형</th>
+        <th scope="col">설명</th>
+	<th scope="col">관련 클래스</th>
+    </tr>
+    <tr>
+        <td><a href="controls/button.html">버튼</a></td>
+        <td>사용자가 누르거나 클릭하여 작업을 수행할 수 있는 누름 버튼입니다.</td>
+	<td>{@link android.widget.Button Button} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/text.html">텍스트 필드</a></td>
+        <td>편집 가능한 텍스트 필드입니다. <code>AutoCompleteTextView</code> 위젯을 사용하면 자동 완성 제안을 제공하는 텍스트 입력 위젯을 만들 수 있습니다.</td>
+	<td>{@link android.widget.EditText EditText}, {@link android.widget.AutoCompleteTextView}</td>
+    </tr>
+    <tr>
+        <td><a href="controls/checkbox.html">확인란</a></td>
+        <td>사용자가 전환할 수 있는 켜기/끄기 스위치입니다. 확인란은 사용자에게 선택 가능한 옵션 그룹을 제시할 때 사용합니다. 이들 옵션은 상호 배타적이지 않아야 합니다.</td>
+	<td>{@link android.widget.CheckBox CheckBox} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/radiobutton.html">무선 버튼</a></td>
+        <td>확인란과 비슷하지만, 예외가 있다면 그룹 내에서 하나만 선택할 수 있다는 점입니다.</td>
+	<td>{@link android.widget.RadioGroup RadioGroup} 
+	<br>{@link android.widget.RadioButton RadioButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/togglebutton.html" style="white-space:nowrap">전환 버튼</a></td>
+        <td>조명 표시기가 있는 켜기/끄기 버튼입니다.</td>
+	<td>{@link android.widget.ToggleButton ToggleButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/spinner.html">회전자</a></td>
+        <td>드롭다운 목록으로, 이것을 사용하면 사용자가 주어진 집합에서 하나의 값을 선택할 수 있습니다.</td>
+	<td>{@link android.widget.Spinner Spinner} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/pickers.html">선택기</a></td>
+        <td>사용자를 위한 대화로, 위/아래 버튼을 사용하거나 스와이프 동작을 사용하여 주어진 집합에 대한 하나의 값을 선택할 수 있게 해줍니다. 날짜(월, 일, 연도) 값을 입력하려면 <code>DatePicker</code>코드&gt; 위젯을 사용하면 되고, 아니면 시간(시, 분, 오전/오후) 값을 입력하는 데 <code>TimePicker</code> 위젯을 사용해도 됩니다. 이렇게 하면 사용자의 로케일에 맞게 자동으로 형식을 설정합니다.</td>
+	<td>{@link android.widget.DatePicker}, {@link android.widget.TimePicker}</td>
+    </tr>
+</table>
diff --git a/docs/html-intl/intl/ko/guide/topics/ui/declaring-layout.jd b/docs/html-intl/intl/ko/guide/topics/ui/declaring-layout.jd
new file mode 100644
index 0000000..7883236
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/ui/declaring-layout.jd
@@ -0,0 +1,492 @@
+page.title=레이아웃
+page.tags=view,viewgroup
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>이 문서의 내용</h2>
+<ol>
+  <li><a href="#write">XML 쓰기</a></li>
+  <li><a href="#load">XML 리소스 로딩</a></li>
+  <li><a href="#attributes">속성</a>
+    <ol>
+      <li><a href="#id">ID</a></li>
+      <li><a href="#layout-params">레이아웃 매개변수</a></li>
+    </ol>
+  </li>
+  <li><a href="#Position">레이아웃 위치</a></li>
+  <li><a href="#SizePaddingMargins">크기, 안쪽 여백 및 여백</a></li>
+  <li><a href="#CommonLayouts">보편적인 레이아웃</a></li>
+  <li><a href="#AdapterViews">어댑터로 레이아웃 구축하기</a>
+    <ol>
+      <li><a href="#FillingTheLayout">데이터로 어댑터 보기 채우기</a></li>
+      <li><a href="#HandlingUserSelections">클릭 이벤트 처리</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>Key 클래스</h2>
+  <ol>
+    <li>{@link android.view.View}</li>
+    <li>{@link android.view.ViewGroup}</li>
+    <li>{@link android.view.ViewGroup.LayoutParams}</li>
+  </ol>
+
+  <h2>참고 항목</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/firstapp/building-ui.html">간단한 사용자 
+인터페이스 구축</a></li> </div>
+</div>
+
+<p>레이아웃은 사용자 인터페이스에 대한 시각적 구조를 정의합니다. 예컨대 <a href="{@docRoot}guide/components/activities.html">액티비티</a> 또는 <a href="{@docRoot}guide/topics/appwidgets/index.html">앱 위젯</a>에 대한 UI가 이에 해당됩니다.
+레이아웃을 선언하는 데에는 다음과 같은 두 가지 방법이 있습니다.</p>
+<ul>
+<li><strong>UI 요소를 XML로 선언</strong>. Android가 위젯과 레이아웃 등과 같이 
+보기 클래스와 하위 클래스에 상응하는 간단한 XML 어휘를 제공합니다.</li>
+<li><strong>런타임에 레이아웃 요소를 인스턴트화</strong>. 애플리케이션이
+ 프로그래밍 방법으로 보기 및 ViewGroup객체를 만들 수 있습니다(그리고 그 속성을 조작하기도 합니다). </li>
+</ul>
+
+<p>Android 프레임워크에서는 이와 같이 애플리케이션의 UI를 선언하고 관리하기 위한 메서드를 둘 중 하나만, 또는 둘 모두 사용할 수 있는 유연성을 부여합니다. 예를 들어, 애플리케이션의 기본 레이아웃을 XML로 선언하면서 그 안에 나타날 화면 요소와 그 속성을 포함할 수 있습니다. 그러면 이제 애플리케이션에 코드를 추가하여 화면 객체의 상태를 수정하도록 할 수 있으며, 여기에는 런타임에 XML로 선언된 것도 포함됩니다. </p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <ul>
+  <li><a href="{@docRoot}tools/sdk/eclipse-adt.html">Eclipse용 ADT
+ 플러그인</a>이 XML의 레이아웃 미리보기를 제공합니다. &mdash;
+XML 파일이 열린 상태에서 <strong>레이아웃</strong> 탭을 선택하십시오.</li>
+  <li>또한, 
+<a href="{@docRoot}tools/debugging/debugging-ui.html#hierarchyViewer">계층 뷰어</a> 도구로 
+레이아웃 디버깅도 시도해 보아야 합니다.&mdash;이것은 레이아웃 속성 값을 드러내고, 
+내부 여백/여백 표시기가 있는 와이어프레임을 그리며 개발자가 에뮬레이터 또는 기기에서 디버깅하는 동안 
+완전히 렌더링된 보기를 제공합니다.</li>
+  <li><a href="{@docRoot}tools/debugging/debugging-ui.html#layoutopt">layoutopt</a> 도구를
+ 사용하면 레이아웃과 계층을 비효율성 또는 다른 문제에 대하여 재빨리 분석할 수 있게 해줍니다.</li>
+</div>
+</div>
+
+<p>UI를 XML로 선언하는 것의 이점은 이렇게 하면 애플리케이션을 그 행동을 제어하는 코드로부터 따로 표시하기가 더 좋다는 것입니다. UI 설명은 애플리케이션 코드의 외부에 있습니다. 이는 다시 말해 소스 코드를 수정하고 다시 컴파일링하지 않아도 이를 수정 또는 변경할 수 있다는 뜻입니다. 예를 들어, 서로 다른 화면 방향, 사로 다른 기기 화면 크기 및 서로 다른 언어에 대해 XML 레이아웃을 생성할 수 있습니다. 이외에도 레이아웃을 XML로 선언하면 UI의 구조를 시각화하기가 더 쉬우므로 문제를 디버깅하기도 더 쉽습니다. 따라서, 이 문서는 레이아웃을 XML로 선언하는 방법을 가르치는 데 주안점을 두고 있습니다. 런타임에 보기 객체를 인스턴트화하는 것에 흥미가 있는 경우, 
+{@link android.view.ViewGroup} 및 
+{@link android.view.View} 클래스 참조를 참조하십시오.</p>
+
+<p>일반적으로 UI 요소를 선언하는 데 쓰이는 XML 어휘는 클래스와 메서드 명명을 충실히 따릅니다. 여기에서 요소 이름은 클래스 이름에 상응하며 속성 이름은 메서드에 상응합니다. 사실 이러한 일치성은 아주 직접적인 경우가 잦아 어느 XML 속성이 클래스 메서드에 상응하는지를 추측할 수 있고, 어느 클래스가 주어진 XML 요소에 상응하는지도 추측할 수 있습니다. 다만 모든 어휘가 다 같지는 않다는 점을 유의하십시오. 몇몇 경우에는 명명에 약간의 차이점이 있습니다. 예를 들어, 
+EditText 요소에는 <code>text</code> 속성이 있으며 이는 
+<code>EditText.setText()</code>에 상응합니다. </p>
+
+<p class="note"><strong>팁:</strong> 여러 가지 레이아웃 유형에 대해서는 <a href="{@docRoot}guide/topics/ui/layout-objects.html">보편적인
+레이아웃 객체</a>를 참조하십시오. 여러 가지 레이아웃을 구축하는 데 대한 튜토리얼 모음도 있습니다. 
+<a href="{@docRoot}resources/tutorials/views/index.html">Hello 보기</a> 튜토리얼 가이드를 참조하십시오.</p>
+
+<h2 id="write">XML 쓰기</h2>
+
+<p>Android의 XML 어휘를 사용하면 UI 레이아웃과 그 안에 들어있는 화면 요소를 HTML에서 웹 페이지를 디자인할 때와 같은 방식으로 신속하게 디자인할 수 있습니다. 즉 일련의 중첩된 요소를 사용하는 것입니다. </p>
+
+<p>각 레이아웃 파일에는 반드시 딱 하나의 루트 요소만 있어야 하며, 이는 보기 또는 ViewGroup 객체여야 합니다. 루트 요소를 정의했으면, 하위 요소로 더 많은 레이아웃 요소 또는 위젯을 추가하여 점층적으로 레이아웃을 정의할 보기 계층을 구축할 수 있습니다. 예를 들어, 다음은 수직 {@link android.widget.LinearLayout}을
+ 사용하여 {@link android.widget.TextView} 및 {@link android.widget.Button}을 보유하는 XML 레이아웃을 나타낸 것입니다.</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="Hello, I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="Hello, I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>레이아웃을 XML로 선언하고 나면 그 파일을 Android 프로젝트의 <code>res/layout/</code> 디렉터리 내에 
+<code>.xml</code> 확장자로 저장하여 적절하게 컴파일링되도록 합니다. </p>
+
+<p>레이아웃 XML 파일의 구문에 대한 자세한 정보는 <a href="{@docRoot}guide/topics/resources/layout-resource.html">레이아웃 리소스</a> 문서에서 확인할 수 있습니다.</p>
+
+<h2 id="load">XML 리소스 로딩</h2>
+
+<p>애플리케이션을 컴파일링하는 경우, 각 XML 레이아웃 파일이 
+{@link android.view.View} 리소스 안에 컴파일링됩니다. 애플리케이션 코드로부터 가져온 레이아웃 리소스는 
+{@link android.app.Activity#onCreate(android.os.Bundle) Activity.onCreate()} 콜백 
+구현에 로딩해야 합니다.
+이렇게 하려면 <code>{@link android.app.Activity#setContentView(int) setContentView()}</code>를 호출한 다음, 이를 
+<code>R.layout.<em>layout_file_name</em></code> 형태로 레이아웃 리소스의 참조에 전달합니다.
+ 예를 들어, XML 레이아웃이 <code>main_layout.xml</code>로 저장된 경우, 이것을 액티비티에 대해 로딩하려면 
+다음과 같이 하면 됩니다.</p>
+<pre>
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.main_layout);
+}
+</pre>
+
+<p>액티비티 내의 <code>onCreate()</code> 콜백 메서드는 액티비티가 시작될 때 
+Android 프레임워크가 호출합니다(수명 주기에 대한 논의는 
+<a href="{@docRoot}guide/components/activities.html#Lifecycle">액티비티</a>
+ 문서에서 확인하십시오).</p>
+
+
+<h2 id="attributes">속성</h2>
+
+<p>모든 보기 및 ViewGroup 객체는 각자 나름대로의 다양한 XML 속성을 지원합니다.
+몇몇 속성은 보기 객체에만 특화되어 있지만(예를 들어, TextView는 <code>textSize</code>
+속성을 지원), 이와 같은 속성은 이 클래스를 확장할 수 있는 모든 보기 객체가 상속하기도 합니다.
+모든 보기 객체에 공통으로 쓰이는 것도 몇 가지 있습니다. 왜냐하면 이들은 루트 보기 클래스에서 상속된 것이기 때문입니다(예:
+<code>id</code> 속성). 그리고 나머지 속성은 "레이아웃 매개변수"로 간주됩니다. 
+이들은 보기 객체의 특정한 레이아웃 방향을 설명하는 것으로, 이는 해당 객체의 상위 VeiwGroup 객체에서 
+정의된 바에 따릅니다.</p>
+
+<h3 id="id">ID</h3>
+
+<p>모든 보기 객체에는 연관된 정수 ID가 있을 수 있습니다. 이는 트리 내에서 해당 보기를 고유하게 식별하기 위한 것입니다.
+애플리케이션이 컴파일링되면 이 ID가 정수로 참조되지만, ID는 
+일반적으로 레이아웃 XML 파일에 문자열로 할당되며, <code>id</code> 속성으로 쓰입니다. 
+이것은 모든 보기 객체에 공통적인 XML 속성으로
+({@link android.view.View} 클래스가 정의) 이것을 매우 자주 사용하게 됩니다.
+ID에 대한, XML 태그 내에 있는 구문은 다음과 같습니다.</p>
+<pre>android:id="&#64;+id/my_button"</pre>
+
+<p>문자열 시작 부분에 있는 앳 기호(@)는 XML 파서가 ID 문자열의 나머지를 구문 분석하고 확장하여 
+ID 리소스로 식별해야 한다는 것을 나타냅니다. 더하기 기호(+)는 이것이 새 리소스 이름이며, 
+이것을 반드시 생성하여 우리 리소스에 추가해야 한다는 것을 뜻합니다(<code>R.java</code> 파일에서). Android 프레임워크는 다른 ID 리소스도 아주 많이 
+제공합니다. Android 리소스 ID를 참조할 때에는 더하기 기호는 필요하지 않지만 
+<code>android</code> 패키지 네임스페이스를 다음과 같이 반드시 추가해야 합니다.</p>
+<pre>android:id="&#64;android:id/empty"</pre>
+<p><code>android</code> 패키지 네임스페이스를 제자리에 넣으면 이제 ID를 로컬 리소스 클래스에서가 아니라 <code>android.R</code>
+ 리소스 클래스에서 참조하고 있는 것이 됩니다.</p>
+
+<p>보기를 생성하고 이를 애플리케이션에서 참조하는 데 쓰이는 보편적인 패턴은 다음과 같습니다.</p>
+<ol>
+  <li>레이아웃 파일에서 보기/위젯을 정의한 다음 이를 고유한 ID에 할당합니다.
+<pre>
+&lt;Button android:id="&#64;+id/my_button"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="&#64;string/my_button_text"/>
+</pre>
+  </li>
+  <li>그런 다음 보기 객체의 인스턴스를 생성하고 이를 레이아웃에서 캡처합니다
+(일반적으로 <code>{@link android.app.Activity#onCreate(Bundle) onCreate()}</code> 메서드에서).
+<pre>
+Button myButton = (Button) findViewById(R.id.my_button);
+</pre>
+  </li>
+</ol>
+<p>{@link android.widget.RelativeLayout}을 생성할 때에는 보기 객체의 ID를 정의하는 것이 중요합니다. 
+관계 레이아웃에서는 형제 보기가 또 다른 형제 보기와 관련된 자신의 레이아웃을 정의할 수 있으며, 
+이를 고유한 ID로 참조하게 됩니다.</p>
+<p>ID는 트리 전체를 통틀어 고유할 필요는 없지만, 트리에서 검색하고 있는 부분 내에서는 
+고유해야 합니다(이것이 트리 전체인 경우가 잦으므로, 가급적이면 완전히 
+고유한 것을 쓰는 것이 가장 좋습니다).</p>
+
+
+<h3 id="layout-params">레이아웃 매개변수</h3>
+
+<p><code>layout_<em>something</em></code>이라는 XML 레이아웃 속성이 
+보기가 상주하는 ViewGroup에 대해 적절한 보기의 레이아웃 매개변수를 정의합니다.</p>
+
+<p>모든 ViewGroup 클래스가 중첩된 클래스를 하나씩 구현하며 이것이 {@link
+android.view.ViewGroup.LayoutParams}를 확장합니다. 이 하위 클래스에는 
+각 하위 보기의 크기와 위치를 보기 그룹에 적절한 방식으로 정의하는 
+속성 유형이 들어 있습니다. 그림 1에서 볼 수 있듯이, 상위 보기 그룹이 
+각 하위 보기의 레이아웃 매개변수를 정의합니다(하위 보기 그룹 포함).</p>
+
+<img src="{@docRoot}images/layoutparams.png" alt="" />
+<p class="img-caption"><strong>그림 1.</strong> 각 보기와 연관된 레이아웃 매개변수가 
+있는 보기 계층을 시각화한 것입니다.</p>
+
+<p>모든 LayoutParams 하위 클래스에는 설정 값에 대한 각기 자신만의 구문이 있다는 점을 
+눈여겨 보십시오. 각 하위 요소는 자신의 상위에 적합한 LayoutParams를 정의해야 합니다. 
+다만 이것은 자신의 하위에 대해 각기 다른 LayoutParams도 정의할 수 있습니다. </p>
+
+<p>모든 보기 그룹에는 너비와 높이가 포함되며(<code>layout_width</code> 및 
+<code>layout_height</code>), 각 보기는 이들을 반드시 정의해야 합니다. 선택 사항으로 
+여백과 테두리도 포함하는 LayoutParams도 많습니다. <p>
+
+<p>너비와 높이는 정확한 치수로 지정할 수 있습니다. 다만 이것은 자주 하지 
+않는 것이 좋습니다. 그보다는 다음과 같은 상수 중 하나를 사용하여 너비 또는 높이를 설정하는 경우가 
+더 많습니다. </p>
+
+<ul>
+  <li><var>wrap_content</var> 보기에 콘텐츠에 필요한 치수대로 알아서 
+크기를 조정하라고 합니다.</li>
+  <li><var>match_parent</var> (다른 이름은 <var>fill_parent</var> 로, API 레벨 8 이전에 해당)
+보기에 상위 보기 그룹이 허용하는 한 최대한으로 커지라고 합니다.</li>
+</ul>
+
+<p>일반적으로 픽셀과 같이 절대적인 단위를 사용하여 레이아웃 너비와 높이를 지정하는 것은 
+권장하지 않습니다. 그 대신, 밀도 독립적인 픽셀 단위와 같이 상대적인 측정치를 
+사용하는 것(<var>dp</var>), <var>wrap_content</var>, 또는
+<var>match_parent</var>등이 더 낫습니다. 이렇게 하면 
+애플리케이션이 다양한 기기 화면 크기에 걸쳐서도 적절하게 표시되도록 보장하는 데 도움이 되기 때문입니다.
+허용된 측정 유형은 
+<a href="{@docRoot}guide/topics/resources/available-resources.html#dimension">
+사용 가능한 리소스</a>에 정의되어 있습니다.</p>
+
+
+<h2 id="Position">레이아웃 위치</h2>
+   <p>
+   보기의 모양은 직사각형입니다. 보기에는 위치가 있으며, 이는
+ 한 쌍의 <em>왼쪽</em> 및 <em>상단</em> 좌표, 그리고 두 개의 치수가 너비와 높이를 나타내는 
+형식으로 표현됩니다. 위치와 치수의 단위는 픽셀입니다.
+
+   </p>
+
+   <p>
+   보기의 위치를 검색할 수 있습니다. 
+{@link android.view.View#getLeft()} 및 {@link android.view.View#getTop()} 메서드를 호출하면 됩니다. 전자는 보기를 
+나타내는 직사각형의 왼쪽, 즉 X 좌표를 반환합니다. 후자는 보기를 
+나타내는 직사각형의 상단, 즉 Y 좌표를 반환합니다. 이들 메서드는 둘 다 
+보기의 위치를 해당 보기의 상위와 관련지어 반환합니다. 예를 들어, 
+<code>getLeft()</code>가 20을 반환하는 경우 이는 해당 보기가 그 보기의 바로 상위의 왼쪽 가장자리에서 
+오른쪽으로 20픽셀 떨어진 곳에 있다는 뜻입니다.
+   </p>
+
+   <p>
+   이외에도 불필요한 계산을 피하기 위해 여러 가지 편의 메서드가 제공됩니다. 
+구체적으로 {@link android.view.View#getRight()} 및 {@link android.view.View#getBottom()}을 들 수 있습니다.
+   이들 메서드는 해당 보기를 나타내는 직사각형의 오른쪽과 하단 가장자리의 좌표를 반환합니다.
+ 예를 들어 {@link android.view.View#getRight()}를
+ 호출하는 것은 다음 계산과 비슷합니다. <code>getLeft() + getWidth()</code>
+   </p>
+
+
+<h2 id="SizePaddingMargins">크기, 안쪽 여백 및 여백</h2>
+   <p>
+   보기의 크기는 너비와 높이로 표현됩니다. 사실 하나의 보기는 
+두 쌍의 너비 및 높이 값을 소유합니다.
+   </p>
+
+   <p>
+   첫 번째 쌍을 <em>측정된 너비</em> 및 
+<em>측정된 높이</em>라고 합니다. 이들 치수는 보기가 
+상위 내에서 얼마나 커지고자 하는지를 정의합니다. 측정된 
+치수를 가져오려면 {@link android.view.View#getMeasuredWidth()}
+ 및 {@link android.view.View#getMeasuredHeight()}를 호출하면 됩니다.
+   </p>
+
+   <p>
+   두 번째 쌍은 단순히 <em>너비</em> 및 <em>높이</em>라고 일컬으며, 
+때로는 <em>그리기 너비</em> 및 <em>그리기 높이</em>로 부를 때도 있습니다. 이러한 
+치수는 그리기 시간 및 레이아웃 후에 보기가 화면에 표시되는 실제 크기를 
+정의합니다. 이들 값은 측정된 너비 및 높이와 달라도 되지만 
+꼭 달라야 하는 것은 아닙니다. 너비와 높이를 가져오려면 
+{@link android.view.View#getWidth()} 및 {@link android.view.View#getHeight()}를 호출하면 됩니다.
+   </p>
+
+   <p>
+   보기의 치수를 측정하려면 보기는 자신의 안쪽 여백을 감안합니다. 안쪽 여백은 
+보기의 왼쪽, 상단, 오른쪽 및 하단 부분에 대해 픽셀로 표시됩니다.
+   안쪽 여백은 정해진 픽셀 수를 사용하여 보기의 콘텐츠를 오프셋하는 데 쓰일 수도 
+있습니다. 예를 들어 왼쪽 안쪽 여백을 2로 설정하면 해당 보기의 콘텐츠를 왼쪽 가장자리에서 
+오른쪽으로 2픽셀 밀어냅니다. 안쪽 여백을 설정할 때에는 
+{@link android.view.View#setPadding(int, int, int, int)} 메서드를 사용하면 되고, 이를 쿼리하려면 
+{@link android.view.View#getPaddingLeft()}, {@link android.view.View#getPaddingTop()}, 
+{@link android.view.View#getPaddingRight()} 및 {@link android.view.View#getPaddingBottom()}을 사용하면 됩니다.
+   </p>
+
+   <p>
+   보기가 안쪽 여백을 정의할 수는 있지만, 여백에 대한 지원은 전혀 제공하지 
+않습니다. 다만 보기 그룹이 그와 같은 지원을 제공합니다. 자세한 정보는 
+{@link android.view.ViewGroup} 및 
+{@link android.view.ViewGroup.MarginLayoutParams}를 참조하십시오.
+   </p>
+
+   <p>치수에 대한 자세한 정보는 
+<a href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">치수 값</a>을 참조하십시오.
+   </p>
+
+
+
+
+
+
+<style type="text/css">
+div.layout {
+  float:left;
+  width:200px;
+  margin:0 0 20px 20px;
+}
+div.layout.first {
+  margin-left:0;
+  clear:left;
+}
+</style>
+
+
+
+
+<h2 id="CommonLayouts">보편적인 레이아웃</h2>
+
+<p>{@link android.view.ViewGroup} 클래스의 각 하위 클래스는 각기 고유한 방식으로 자신 안에 
+중첩한 보기를 표시합니다. 아래는 Android 플랫폼에서 기본 제공되는, 보다 보편적인 레이아웃 유형을 
+몇 가지 나타낸 것입니다.</p>
+
+<p class="note"><strong>참고:</strong> 하나 이상의 레이아웃을 또 다른 레이아웃에 중첩하여 
+UI 디자인을 이룰 수도 있지만, 레이아웃 계층을 가능한 한 얕게 유지하도록 
+애써야 합니다. 중첩된 레이아웃이 적을수록 레이아웃이 더욱 빠르게 그려집니다(가로로 넓은 보기 계층이 
+깊은 보기 계층보다 낫습니다).</p>
+
+<!--
+<h2 id="framelayout">FrameLayout</h2>
+<p>{@link android.widget.FrameLayout FrameLayout} is the simplest type of layout
+object. It's basically a blank space on your screen that you can
+later fill with a single object &mdash; for example, a picture that you'll swap in and out.
+All child elements of the FrameLayout are pinned to the top left corner of the screen; you cannot
+specify a different location for a child view. Subsequent child views will simply be drawn over
+previous ones,
+partially or totally obscuring them (unless the newer object is transparent).
+</p>
+-->
+
+
+<div class="layout first">
+  <h4><a href="layout/linear.html">선형 레이아웃</a></h4>
+  <a href="layout/linear.html"><img src="{@docRoot}images/ui/linearlayout-small.png" alt="" /></a>
+  <p>여러 하위를 하나의 가로 방향 또는 세로 방향 행으로 정리하는 레이아웃. 이것은 
+창의 길이가 화면 길이를 웃도는 경우 스크롤 막대를 만듭니다.</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/relative.html">관계 레이아웃</a></h4>
+  <a href="layout/relative.html"><img src="{@docRoot}images/ui/relativelayout-small.png" alt="" /></a>
+  <p>여러 하위 객체의 위치를 서로 관련지어 나타내거나(하위 A가 
+하위 B의 왼쪽), 상위와 관련지어 나타낼 수 있도록 해줍니다(상위의 맨 위에 맞춰 정렬).</p>
+</div>
+
+<div class="layout">
+  <h4><a href="{@docRoot}guide/webapps/webview.html">웹 보기</a></h4>
+  <a href="{@docRoot}guide/webapps/webview.html"><img src="{@docRoot}images/ui/webview-small.png" alt="" /></a>
+  <p>웹 페이지를 표시합니다.</p>
+</div>
+
+
+
+
+<h2 id="AdapterViews" style="clear:left">어댑터로 레이아웃 구축하기</h2>
+
+<p>레이아웃의 콘텐츠가 동적이거나 미리 정의되지 않은 경우, 
+{@link android.widget.AdapterView}의 하위 클래스가 되는 레이아웃을 사용하여 런타임에 보기로 레이아웃을 채울 수 있습니다. 
+{@link android.widget.AdapterView} 클래스의 하위 클래스는 {@link android.widget.Adapter}를 
+사용하여 자신의 레이아웃에 데이터를 바인딩합니다. {@link android.widget.Adapter}가 데이터 소스와 {@link android.widget.AdapterView}
+ 레이아웃 사이의 중개자 역할을 합니다. &mdash;{@link android.widget.Adapter}가
+ 데이터를 검색하여(배열 또는 데이터베이스 쿼리와 같은 소스로부터) 
+각 항목을 보기로 변환해서 {@link android.widget.AdapterView} 레이아웃에 추가될 수 있도록 합니다.</p>
+
+<p>어댑터로 지원되는 보편적인 레이아웃의 몇 가지 예는 다음과 같습니다.</p>
+
+<div class="layout first">
+  <h4><a href="layout/listview.html">목록 보기</a></h4>
+  <a href="layout/listview.html"><img src="{@docRoot}images/ui/listview-small.png" alt="" /></a>
+  <p>스크롤로 내리는 하나의 열 목록을 표시합니다.</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/gridview.html">눈금 보기</a></h4>
+  <a href="layout/gridview.html"><img src="{@docRoot}images/ui/gridview-small.png" alt="" /></a>
+  <p>스크롤로 내리는 열과 행의 눈금을 표시합니다.</p>
+</div>
+
+
+
+<h3 id="FillingTheLayout" style="clear:left">데이터로 어댑터 보기 채우기</h3>
+
+<p>{@link android.widget.ListView} 또는 
+{@link android.widget.GridView}와 같은 {@link android.widget.AdapterView}를 채우려면 {@link android.widget.AdapterView} 인스턴스를 
+{@link android.widget.Adapter}에 바인딩하면 됩니다. 이는 외부 소스로부터 데이터를 검색하여 각 데이터 항목을 나타내는 {@link
+android.view.View}를 생성합니다.</p>
+
+<p>Android는 {@link android.widget.Adapter}의 하위 클래스를 여러 개 제공합니다. 
+이는 여러 가지 종류의 데이터를 검색하고 {@link android.widget.AdapterView}에 대한 보기를 구축하는 데 유용합니다. 
+가장 보편적인 어댑터 두 가지를 예로 들면 다음과 같습니다.</p>
+
+<dl>
+  <dt>{@link android.widget.ArrayAdapter}</dt>
+    <dd>이 어댑터는 데이터 소스가 배열일 때 사용하십시오. 기본적으로 {@link
+android.widget.ArrayAdapter}가 각 항목에서 {@link
+java.lang.Object#toString()}를 호출하고 그 콘텐츠를 {@link
+android.widget.TextView}에 배치함으로써 각 배열 항목에 대한 보기를 생성합니다.
+      <p>예를 들어, {@link
+android.widget.ListView}로 문자열 배열을 표시하고자 하는 경우, 생성자를 사용하여 
+새로운 {@link android.widget.ArrayAdapter}를 초기화해서 각 문자열과 문자열 배열에 대한 레이아웃을 지정하면 됩니다.</p>
+<pre>
+ArrayAdapter&lt;String> adapter = new ArrayAdapter&lt;String>(this,
+        android.R.layout.simple_list_item_1, myStringArray);
+</pre>
+<p>이 생성자에 대한 인수는 다음과 같습니다.</p>
+<ul>
+  <li>개발자의 앱 {@link android.content.Context}</li>
+  <li>배열에 있는 각 문자열에 대한 {@link android.widget.TextView}가 들어있는 레이아웃</li>
+  <li>문자열 배열</li>
+</ul>
+<p>그런 다음 {@link android.widget.ListView}에서 
+{@link android.widget.ListView#setAdapter setAdapter()}를 호출하기만 하면 됩니다.</p>
+<pre>
+ListView listView = (ListView) findViewById(R.id.listview);
+listView.setAdapter(adapter);
+</pre>
+
+      <p>각 항목의 외관을 사용자 지정하려면 배열의 객체에 대한 {@link
+java.lang.Object#toString()} 메서드를 재정의하면 됩니다. 아니면, 각 항목에 대하여
+{@link android.widget.TextView}가 아닌 다른 보기를 생성하고자 하는 경우(예를 들어 각 배열 항목에 
+{@link android.widget.ImageView}를 원하는 경우), {@link
+android.widget.ArrayAdapter} 클래스를 확장하고 {@link android.widget.ArrayAdapter#getView
+getView()}를 재정의하여 각 항목에 대해 원하는 유형의 보기를 반환하도록 할 수 있습니다.</p>
+
+</dd>
+
+  <dt>{@link android.widget.SimpleCursorAdapter}</dt>
+    <dd>이 어댑터는 데이터 출처가 {@link android.database.Cursor}일 때 사용하십시오. 
+{@link android.widget.SimpleCursorAdapter}를 사용하는 경우, 
+{@link android.database.Cursor}에 있는 각 행에 대하여 사용할 레이아웃을 지정해야 합니다. 또한 {@link android.database.Cursor}
+의 어느 열이 레이아웃의 어느 보기에 삽입되어야 할지도 지정해야 합니다. 예를 들어 사람 이름과 
+전화번호로 이루어진 목록을 생성하고자 하는 경우, 각 사람에 대해 행이 하나씩 있고 이름과 번호에 대해 열이 들어있는 {@link
+android.database.Cursor}를 반환하는 쿼리를 수행하면 됩니다.
+ 그런 다음 레이아웃에서 각 결과에 대하여 {@link
+android.database.Cursor}의 어느 열을 원하는지 지정하는 문자열 배열을 만들 수 있고, 각 열이 배치되어야 하는 
+상응하는 보기를 지정하는 정수 배열을 만들면 됩니다.</p>
+<pre>
+String[] fromColumns = {ContactsContract.Data.DISPLAY_NAME,
+                        ContactsContract.CommonDataKinds.Phone.NUMBER};
+int[] toViews = {R.id.display_name, R.id.phone_number};
+</pre>
+<p>{@link android.widget.SimpleCursorAdapter}를 인스턴트화하는 경우, 각 결과에 대해 사용할 레이아웃과 
+결과가 들어있는 {@link android.database.Cursor}, 그리고 다음의 두 배열을 전달합니다.</p>
+<pre>
+SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
+        R.layout.person_name_and_number, cursor, fromColumns, toViews, 0);
+ListView listView = getListView();
+listView.setAdapter(adapter);
+</pre>
+<p>그러면 {@link android.widget.SimpleCursorAdapter}가 
+{@link android.database.Cursor}에 있는 각 행에 대한 보기를 하나씩 생성합니다. 이때 상응하는 {@code toViews} 보기 안에 각 {@code
+fromColumns} 항목을 삽입함으로써 제공된 레이아웃을 사용합니다.</p>.</dd>
+</dl>
+
+
+<p>애플리케이션의 수명이 진행되는 동안에 어댑터가 읽는 기본 데이터를 변경하는 경우, 
+{@link android.widget.ArrayAdapter#notifyDataSetChanged()}를 호출해야 합니다. 
+이렇게 하면 첨부된 보기에 데이터가 변경되었으며 스스로 새로 고쳐야 한다는 사실을 알려줍니다.</p>
+
+
+
+<h3 id="HandlingUserSelections">클릭 이벤트 처리</h3>
+
+<p>{@link android.widget.AdapterView}에 있는 각 항목에서의 클릭 이벤트에 응답하려면 
+{@link android.widget.AdapterView.OnItemClickListener} 인터페이스를 구현하면 됩니다. 예:</p>
+
+<pre>
+// Create a message handling object as an anonymous class.
+private OnItemClickListener mMessageClickedHandler = new OnItemClickListener() {
+    public void onItemClick(AdapterView parent, View v, int position, long id) {
+        // Do something in response to the click
+    }
+};
+
+listView.setOnItemClickListener(mMessageClickedHandler);
+</pre>
+
+
+
diff --git a/docs/html-intl/intl/ko/guide/topics/ui/dialogs.jd b/docs/html-intl/intl/ko/guide/topics/ui/dialogs.jd
new file mode 100644
index 0000000..23e92c9
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/ui/dialogs.jd
@@ -0,0 +1,798 @@
+page.title=대화
+page.tags=alertdialog,dialogfragment
+
+@jd:body
+
+
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>이 문서의 내용</h2>
+<ol>
+  <li><a href="#DialogFragment">대화 프래그먼트 생성</a></li>
+  <li><a href="#AlertDialog">경고 대화 구축</a>
+    <ol>
+      <li><a href="#AddingButtons">버튼 추가</a></li>
+      <li><a href="#AddingAList">목록 추가</a></li>
+      <li><a href="#CustomLayout">사용자 지정 레이아웃 생성</a></li>
+    </ol>
+  </li>
+  <li><a href="#PassingEvents">이벤트를 대화의 호스트에 다시 전달</a></li>
+  <li><a href="#ShowingADialog">대화 표시</a></li>
+  <li><a href="#FullscreenDialog">대화를 전체 화면으로 또는 포함된 프래그먼트로 표시</a>
+    <ol>
+      <li><a href="#ActivityAsDialog">액티비티를 큰 화면에 대화로 표시</a></li>
+    </ol>
+  </li>
+  <li><a href="#DismissingADialog">대화 무시</a></li>
+</ol>
+
+    <h2>Key 클래스</h2>
+    <ol>
+      <li>{@link android.app.DialogFragment}</li>
+      <li>{@link android.app.AlertDialog}</li>
+    </ol>
+    
+    <h2>참고 항목</h2>
+    <ol>
+      <li><a href="{@docRoot}design/building-blocks/dialogs.html">대화 디자인 가이드</a></li>
+      <li><a href="{@docRoot}guide/topics/ui/controls/pickers.html">선택기</a>(날짜/시간 대화)</li>
+    </ol>
+  </div>
+</div>
+
+<p>대화는 사용자에게 결정을 내리거나 추가 정보를 입력하라는 
+프롬프트를 보내는 작은 창입니다. 대화는 화면을 가득 채우지 않으며 보통 사용자가 
+다음으로 계속 진행하기 전에 조치를 취해야 하는 모달 이벤트에 쓰입니다.</p>
+
+<div class="note design">
+<p><strong>대화 디자인</strong></p>
+  <p>언어 권장 사항을 비롯한 여러 가지 대화 디자인 방법에 관련된 정보는 
+<a href="{@docRoot}design/building-blocks/dialogs.html">대화</a> 디자인 가이드를 읽어보십시오.</p>
+</div>
+
+<img src="{@docRoot}images/ui/dialogs.png" />
+
+<p>{@link android.app.Dialog} 클래스가 대화의 기본 클래스이지만, 
+{@link android.app.Dialog}를 직접 인스턴트화하는 것은 삼가야 합니다.
+대신 다음 하위 클래스 중 하나를 사용하십시오.</p>
+<dl>
+  <dt>{@link android.app.AlertDialog}</dt>
+  <dd>제목 하나, 최대 세 개의 버튼, 선택 가능한 품목 목록 또는 
+사용자 지정 레이아웃을 표시할 수 있는 대화입니다.</dd>
+  <dt>{@link android.app.DatePickerDialog} 또는 {@link android.app.TimePickerDialog}</dt>
+  <dd>미리 정의된 UI가 있는 대화로 사용자로 하여금 날짜 또는 시간을 선택할 수 있게 해줍니다.</dd>
+</dl>
+
+<div class="sidebox">
+<h2>ProgressDialog 피하기</h2>
+<p>Android에는 
+{@link android.app.ProgressDialog}라고 하는 또 다른 대화 클래스가 있습니다. 이것은 진행률 표시줄이 있는 대화를 표시하는 것입니다. 그러나, 
+로딩이나 확정되지 않은 진행률을 나타내야 하는 경우 이 대신 <a href="{@docRoot}design/building-blocks/progress.html">진행률 및 
+액티비티</a>에 대한 디자인 지침을 따르고, 
+레이아웃의 {@link android.widget.ProgressBar}를 사용해야 합니다.</p>
+</div>
+
+<p>이러한 클래스가 대화의 스타일과 구조를 정의하지만, 대화의 컨테이너로는 
+{@link android.support.v4.app.DialogFragment}를 사용해야 합니다.
+{@link android.support.v4.app.DialogFragment}
+ 클래스는 대화를 만들고 그 외관을 관리하는 데 필요한 모든 제어를 제공합니다. 
+{@link android.app.Dialog} 객체에서 메서드를 호출하는 것 대신입니다.</p>
+
+<p>대화를 관리하기 위해 {@link android.support.v4.app.DialogFragment}를 사용하면 
+사용자가 <em>뒤로</em> 버튼을 누르거나 화면을 돌릴 때 등 
+수명 주기 이벤트를 올바르게 처리하도록 보장할 수 있습니다. {@link
+android.support.v4.app.DialogFragment} 클래스를 사용하면 대화의 UI를 더 큰 UI에 
+포함시킬 수 있는 구성 요소로 다시 사용할 수 있게 해주기도 합니다. 이것은 기존의 {@link
+android.support.v4.app.Fragment}와 똑같습니다(대화 UI를 크고 작은 화면에서 서로 다르게 
+나타나도록 하고자 하는 경우 등).</p>
+
+<p>이 가이드의 다음 섹션에서는 {@link
+android.support.v4.app.DialogFragment}를 {@link android.app.AlertDialog}
+ 객체와 함께 조합하여 사용하는 방법을 설명합니다. 날짜 또는 시간 선택기를 생성하고자 하는 경우, 대신 
+<a href="{@docRoot}guide/topics/ui/controls/pickers.html">선택기</a> 가이드를 읽으십시오.</p>
+
+<p class="note"><strong>참고:</strong>
+{@link android.app.DialogFragment} 클래스는 원래 
+Android 3.0(API 레벨 11)에 추가되었기 때문에 이 문서에서는 <a href="{@docRoot}tools/support-library/index.html">지원 라이브러리</a>와 함께 제공된 {@link
+android.support.v4.app.DialogFragment} 클래스를 사용하는 법을 설명합니다. 이 라이브러리를 앱에 추가하면 Android 1.6 이상을 실행하는 기기에서 
+{@link android.support.v4.app.DialogFragment}를 비롯하여 
+다른 API도 다양하게 사용할 수 있습니다. 앱의 최소 버전이 
+API 레벨 11 이상인 경우, {@link
+android.app.DialogFragment}의 프레임워크 버전을 사용해도 되지만, 이 문서에 있는 링크는 
+지원 라이브러리 API를 대상으로 한 것이라는 점을 유의하십시오. 지원 라이브러리를 사용할 때에는 
+<code>android.support.v4.app.DialogFragment</code>
+ 클래스를 가져와야 합니다. <code>android.app.DialogFragment</code>가 <em>아닙니다</em>.</p>
+
+
+<h2 id="DialogFragment">대화 프래그먼트 생성</h2>
+
+<p>대단히 다양한 대화 디자인을 만들 수 있습니다. 사용자 지정 레이아웃은 물론 
+<a href="{@docRoot}design/building-blocks/dialogs.html">대화</a>
+디자인 가이드에서 설명한 것도 포함합니다. 
+{@link android.support.v4.app.DialogFragment}를 확장하고 {@link android.support.v4.app.DialogFragment#onCreateDialog
+onCreateDialog()} 콜백 메서드에 {@link android.app.AlertDialog}를
+ 생성하면 됩니다.</p>
+
+<p>예를 들어 다음은 {@link android.app.AlertDialog}로, 이는 
+{@link android.support.v4.app.DialogFragment} 내에서 관리되는 것입니다.</p>
+
+<pre>
+public class FireMissilesDialogFragment extends DialogFragment {
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Use the Builder class for convenient dialog construction
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // FIRE ZE MISSILES!
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // User cancelled the dialog
+                   }
+               });
+        // Create the AlertDialog object and return it
+        return builder.create();
+    }
+}
+</pre>
+
+<div class="figure" style="width:290px;margin:0 0 0 20px">
+<img src="{@docRoot}images/ui/dialog_buttons.png" alt="" />
+<p class="img-caption"><strong>그림 1.</strong>
+메시지 하나와 작업 버튼 두 개가 있는 대화입니다.</p>
+</div>
+
+<p>이 클래스의 인스턴스를 생성하고 해당 객체에서 {@link
+android.support.v4.app.DialogFragment#show show()}를 호출하면 대화는 
+그림 1에 표시된 것처럼 나타납니다.</p>
+
+<p>다음 섹션에서는 {@link android.app.AlertDialog.Builder}
+API를 사용하여 대화를 생성하는 것에 대해 좀 더 자세히 설명합니다.</p>
+
+<p>대화가 얼마나 복잡한지에 따라 
+{@link android.support.v4.app.DialogFragment}에서 여러 가지 다른 콜백 메서드를 구현할 수 있습니다. 그중에는 기본적인 
+<a href="{@docRoot}guide/components/fragments.html#Lifecycle">조각 수명 주기 메서드</a>도 포함됩니다.
+
+
+
+
+
+<h2 id="AlertDialog">경고 대화 구축</h2>
+
+
+<p>{@link android.app.AlertDialog} 클래스를 사용하면 
+여러 가지 대화 디자인을 구축할 수 있으며, 필요한 대화 클래스는 이것뿐인 경우도 많습니다. 
+그림 2에 표시된 것과 같이 경고 대화에는 세 가지 영역이 있습니다.</p>
+
+<div class="figure" style="width:311px;margin-top:0">
+<img src="{@docRoot}images/ui/dialogs_regions.png" alt="" style="margin-bottom:0" />
+<p class="img-caption"><strong>그림 2.</strong> 대화의 레이아웃입니다.</p>
+</div>
+
+<ol>
+<li><b>제목</b>
+  <p>이것은 선택 항목이며 콘텐츠 영역에 상세한 메시지, 목록 또는 
+사용자 지정 레이아웃이 채워져 있는 경우에만 사용해야 합니다. 단순한 메시지 또는 
+질문(그림 1의 대화처럼)을 진술해야 하는 경우, 제목은 없어도 됩니다.</li>
+<li><b>콘텐츠 영역</b>
+  <p>이것은 메시지, 목록 또는 다른 사용자 지정 레이아웃을 표시할 수 있습니다.</p></li>
+<li><b>작업 버튼</b>
+  <p>대화 하나에 작업 버튼은 세 개 이상 있으면 안 됩니다.</p></li>
+</ol>
+
+<p>{@link android.app.AlertDialog.Builder}
+ 클래스가 이와 같은 종류의 콘텐츠가 있는 {@link android.app.AlertDialog}를
+ 생성할 수 있게 해주는 API를 제공하며, 여기에 사용자 지정 레이아웃도 포함됩니다.</p>
+
+<p>{@link android.app.AlertDialog}를 구축하려면 다음과 같이 하면 됩니다.</p>
+
+<pre>
+<b>// 1. Instantiate an {@link android.app.AlertDialog.Builder} with its constructor</b>
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+
+<b>// 2. Chain together various setter methods to set the dialog characteristics</b>
+builder.setMessage(R.string.dialog_message)
+       .setTitle(R.string.dialog_title);
+
+<b>// 3. Get the {@link android.app.AlertDialog} from {@link android.app.AlertDialog.Builder#create()}</b>
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>다음 주제는 
+{@link android.app.AlertDialog.Builder} 클래스를 사용하여 다양한 대화 속성을 정의하는 방법을 나타낸 것입니다.</p>
+
+
+
+
+<h3 id="AddingButtons">버튼 추가</h3>
+
+<p>그림 2에 표시된 것과 같은 작업 버튼을 추가하려면 
+{@link android.app.AlertDialog.Builder#setPositiveButton setPositiveButton()} 및 
+{@link android.app.AlertDialog.Builder#setNegativeButton setNegativeButton()} 메서드를 호출하면 됩니다.</p>
+
+<pre style="clear:right">
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+// Add the buttons
+builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User clicked OK button
+           }
+       });
+builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User cancelled the dialog
+           }
+       });
+// Set other dialog properties
+...
+
+// Create the AlertDialog
+AlertDialog dialog = builder.create();
+</pre>
+
+<p><code>set...Button()</code> 메서드에는 버튼의 제목이 필요하고(
+<a href="{@docRoot}guide/topics/resources/string-resource.html">문자열 리소스</a>가 제공), 사용자가 버튼을 눌렀을 때 수행할 작업을 정의하는 
+{@link android.content.DialogInterface.OnClickListener}가 
+필요합니다.</p>
+
+<p>추가할 수 있는 작업 버튼은 다음과 같은 세 가지가 있습니다.</p>
+<dl>
+  <dt>긍정적</dt>
+  <dd>이것은 수락하고 작업을 계속하는 데 사용해야 합니다("확인(OK)" 작업).</dd>
+  <dt>부정적</dt>
+  <dd>이것은 작업을 취소하는 데 사용해야 합니다.</dd>
+  <dt>중립적</dt>
+  <dd>이것은 사용자가 작업을 계속하고 싶지 않을 수 있지만 
+취소하고자 한다고 볼 수 없을 때 사용해야 합니다. 이것은 긍정적 버튼과 부정적 버튼 사이에 나타납니다.
+ 이런 작업을 예로 들면 "나중에 알림" 등이 있습니다.</dd> 
+</dl>
+
+<p>{@link
+android.app.AlertDialog}에는 각 버튼 유형을 하나씩만 추가할 수 있습니다. 다시 말해, "긍정적" 버튼이 한 개 이상 있으면 안 됩니다.</p>
+
+
+
+<div class="figure" style="width:290px;margin:0 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_list.png" alt="" />
+<p class="img-caption"><strong>그림 3.</strong>
+제목과 목록이 있는 대화입니다.</p>
+</div>
+
+<h3 id="AddingAList">목록 추가</h3>
+
+<p>{@link android.app.AlertDialog} API와 함께 사용 가능한 목록은 세 가지 종류가 있습니다.</p>
+<ul>
+<li>일반적인 단일 선택 목록</li>
+<li>영구적인 단일 선택 목록(무선 버튼)</li>
+<li>영구적인 다중 선택 목록(확인란)</li>
+</ul>
+
+<p>그림 3에 표시된 것과 같은 단일 선택 목록을 생성하려면 
+{@link android.app.AlertDialog.Builder#setItems setItems()} 메서드를 사용하면 됩니다.</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    builder.setTitle(R.string.pick_color)
+           .setItems(R.array.colors_array, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int which) {
+               // The 'which' argument contains the index position
+               // of the selected item
+           }
+    });
+    return builder.create();
+}
+</pre>
+
+<p>목록은 대화의 콘텐츠 영역에 나타나므로, 
+대화는 메시지와 목록을 둘 다 표시할 수 없습니다. 대화에는 
+{@link android.app.AlertDialog.Builder#setTitle setTitle()}로 제목을 설정해야 합니다. 
+목록에 대한 항목을 지정하려면 {@link
+android.app.AlertDialog.Builder#setItems setItems()}를 호출하여 배열을 하나 전달합니다.
+아니면 {@link
+android.app.AlertDialog.Builder#setAdapter setAdapter()}를 사용하여 목록을 지정해도 됩니다. 이렇게 하면 동적인 데이터가 있는 목록(예: 데이터베이스에서 가져온 것)을 
+{@link android.widget.ListAdapter}로 지원할 수 있게 해줍니다.</p>
+
+<p>{@link android.widget.ListAdapter}로 목록을 지원하기로 선택하는 경우, 
+항상 {@link android.support.v4.content.Loader}를 사용해야 콘텐츠가 비동기식으로 
+로딩됩니다. 
+이것은 <a href="{@docRoot}guide/topics/ui/declaring-layout.html#AdapterViews">어댑터로 레이아웃 
+구축하기</a> 및 <a href="{@docRoot}guide/components/loaders.html">로더</a>
+ 가이드에 더 자세히 설명되어 있습니다.</p>
+
+<p class="note"><strong>참고:</strong> 기본적으로 목록 항목을 터치하면 대화를 무시하게 됩니다. 
+다만 다음과 같은 영구적인 선택 목록 중 하나를 사용하는 경우는 예외입니다.</p>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_checkboxes.png" />
+<p class="img-caption"><strong>그림 4.</strong>
+다중 선택 항목의 목록입니다.</p>
+</div>
+
+
+<h4 id="Checkboxes">영구적 다중 선택 또는 단일 선택 목록 추가</h4>
+
+<p>다중 선택 항목 목록을 추가하거나(확인란) 
+단일 선택 목록을 추가하려면(무선 버튼), 각각 
+{@link android.app.AlertDialog.Builder#setMultiChoiceItems(Cursor,String,String,
+DialogInterface.OnMultiChoiceClickListener) setMultiChoiceItems()} 또는 
+{@link android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()} 메서드를 사용합니다.</p>
+
+<p>예를 들어 다음은 그림 4에 표시된 것과 같이 다중 선택 목록을 생성하는 방법입니다. 
+이것은 선택한 항목을 
+{@link java.util.ArrayList}에 저장합니다.</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    mSelectedItems = new ArrayList();  // Where we track the selected items
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Set the dialog title
+    builder.setTitle(R.string.pick_toppings)
+    // Specify the list array, the items to be selected by default (null for none),
+    // and the listener through which to receive callbacks when items are selected
+           .setMultiChoiceItems(R.array.toppings, null,
+                      new DialogInterface.OnMultiChoiceClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int which,
+                       boolean isChecked) {
+                   if (isChecked) {
+                       // If the user checked the item, add it to the selected items
+                       mSelectedItems.add(which);
+                   } else if (mSelectedItems.contains(which)) {
+                       // Else, if the item is already in the array, remove it 
+                       mSelectedItems.remove(Integer.valueOf(which));
+                   }
+               }
+           })
+    // Set the action buttons
+           .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // User clicked OK, so save the mSelectedItems results somewhere
+                   // or return them to the component that opened the dialog
+                   ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   ...
+               }
+           });
+
+    return builder.create();
+}
+</pre>
+
+<p>일반적인 목록과 무선 버튼이 있는 목록 양쪽 모두 "단일 선택" 작업을 
+제공하지만, 사용자의 선택을 유지하고자 하는 경우 {@link
+android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()}를 사용해야 합니다. 
+다시 말해, 대화를 나중에 다시 여는 경우 사용자의 현재 선택이 무엇인지 나타내야 하며, 
+그러면 무선 버튼으로 목록을 생성할 수 있습니다.</p>
+
+
+
+
+
+<h3 id="CustomLayout">사용자 지정 레이아웃 생성</h3>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_custom.png" alt="" />
+<p class="img-caption"><strong>그림 5.</strong> 사용자 지정 대화 레이아웃입니다.</p>
+</div>
+
+<p>대화에서 사용자 지정 레이아웃을 원하는 경우, 레이아웃을 생성한 다음 이를 
+{@link android.app.AlertDialog}에 추가하면 됩니다. 이때 {@link
+android.app.AlertDialog.Builder#setView setView()} on your {@link
+android.app.AlertDialog.Builder} 객체를 호출하는 방법을 씁니다.</p>
+
+<p>기본적으로 사용자 지정 레이아웃이 대화창을 가득 채우지만, 여전히 
+{@link android.app.AlertDialog.Builder} 메서드를 사용하여 버튼과 제목을 추가할 수 있습니다.</p>
+
+<p>예를 들어 다음은 그림 5에 표시된 대화에 대한 레이아웃 파일입니다.</p>
+
+<p style="clear:right" class="code-caption">res/layout/dialog_signin.xml</p>
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content">
+    &lt;ImageView
+        android:src="@drawable/header_logo"
+        android:layout_width="match_parent"
+        android:layout_height="64dp"
+        android:scaleType="center"
+        android:background="#FFFFBB33"
+        android:contentDescription="@string/app_name" />
+    &lt;EditText
+        android:id="@+id/username"
+        android:inputType="textEmailAddress"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="16dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="4dp"
+        android:hint="@string/username" />
+    &lt;EditText
+        android:id="@+id/password"
+        android:inputType="textPassword"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="4dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="16dp"
+        android:fontFamily="sans-serif"
+        android:hint="@string/password"/>
+&lt;/LinearLayout>
+</pre>
+
+<p class="note"><strong>팁:</strong> 기본적으로 {@link android.widget.EditText}
+ 요소를 설정하여 {@code "textPassword"} 입력 유형을 사용하고자 하는 경우, 글꼴 패밀리가 고정 폭으로 설정되어 있으므로 
+글꼴 패밀리를 {@code "sans-serif"}로 변경해야 합니다. 그래야 양쪽 텍스트 필드가 모두 일치하는 글꼴 스타일을 
+사용할 수 있습니다.</p>
+
+<p>{@link android.support.v4.app.DialogFragment} 안의 레이아웃을 팽창시키려면, 
+{@link android.view.LayoutInflater}를 
+{@link android.app.Activity#getLayoutInflater()}로 가져와 
+{@link android.view.LayoutInflater#inflate inflate()}를 호출합니다. 
+여기서 첫 번째 매개변수가 레이아웃 리소스 ID이고 두 번째 매개변수가 레이아웃의 상위 보기입니다.
+그러므로 그런 다음 {@link android.app.AlertDialog#setView setView()}를
+ 호출하여 레이아웃을 대화에 배치할 수 있습니다.</p>
+
+<pre>
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Get the layout inflater
+    LayoutInflater inflater = getActivity().getLayoutInflater();
+
+    // Inflate and set the layout for the dialog
+    // Pass null as the parent view because its going in the dialog layout
+    builder.setView(inflater.inflate(R.layout.dialog_signin, null))
+    // Add action buttons
+           .setPositiveButton(R.string.signin, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // sign in the user ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int id) {
+                   LoginDialogFragment.this.getDialog().cancel();
+               }
+           });      
+    return builder.create();
+}
+</pre>
+
+<div class="note">
+<p><strong>팁:</strong> 사용자 지정 대화를 원하는 경우, 
+{@link android.app.Activity}를 대신 표시해도 됩니다. 이는 
+{@link android.app.Dialog} API 대신 대화로 표시하는 것입니다. 단순히 액티비티를 하나 생성한 다음 그 테마를 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> 매니페스트 요소에 있는 
+{@link android.R.style#Theme_Holo_Dialog Theme.Holo.Dialog}로
+ 설정하면 됩니다.</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.Dialog" >
+</pre>
+<p>완료되었습니다. 이제 액티비티가 대화를 전체 화면이 아니라 대화창으로 표시합니다.</p>
+</div>
+
+
+
+<h2 id="PassingEvents">이벤트를 대화의 호스트에 다시 전달</h2>
+
+<p>사용자가 대화의 작업 버튼 중 하나를 터치하거나 목록에서 항목을 하나 선택하면, 
+{@link android.support.v4.app.DialogFragment}가 
+필요한 작업을 알아서 수행할 수도 있지만 대부분의 경우 이벤트를 대화를 연 액티비티 또는 프래그먼트에 직접 전달하고자 할 수 있습니다.
+ 이렇게 하려면 각 클릭 이벤트의 유형별로 메서드가 있는 인터페이스를 정의합니다. 
+ 그런 다음 해당 인터페이스를 대화로부터 작업 이벤트를 수신할 
+호스트 구성 요소에 구현하면 됩니다.</p>
+
+<p>예를 들어 다음은 인터페이스를 정의하는 {@link android.support.v4.app.DialogFragment}입니다. 
+이 인터페이스를 통해 이벤트를 호스트 액티비티에 도로 전달하게 됩니다.</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    
+    /* The activity that creates an instance of this dialog fragment must
+     * implement this interface in order to receive event callbacks.
+     * Each method passes the DialogFragment in case the host needs to query it. */
+    public interface NoticeDialogListener {
+        public void onDialogPositiveClick(DialogFragment dialog);
+        public void onDialogNegativeClick(DialogFragment dialog);
+    }
+    
+    // Use this instance of the interface to deliver action events
+    NoticeDialogListener mListener;
+    
+    // Override the Fragment.onAttach() method to instantiate the NoticeDialogListener
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        // Verify that the host activity implements the callback interface
+        try {
+            // Instantiate the NoticeDialogListener so we can send events to the host
+            mListener = (NoticeDialogListener) activity;
+        } catch (ClassCastException e) {
+            // The activity doesn't implement the interface, throw exception
+            throw new ClassCastException(activity.toString()
+                    + " must implement NoticeDialogListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>대화를 호스팅하는 액티비티는 대화의 인스턴스를 만듭니다. 
+이때 대화 프래그먼트의 생성자를 사용하며, 
+{@code NoticeDialogListener} 인터페이스 구현을 통해 대화의 이벤트를 수신하게 됩니다.</p>
+
+<pre>
+public class MainActivity extends FragmentActivity
+                          implements NoticeDialogFragment.NoticeDialogListener{
+    ...
+    
+    public void showNoticeDialog() {
+        // Create an instance of the dialog fragment and show it
+        DialogFragment dialog = new NoticeDialogFragment();
+        dialog.show(getSupportFragmentManager(), "NoticeDialogFragment");
+    }
+
+    // The dialog fragment receives a reference to this Activity through the
+    // Fragment.onAttach() callback, which it uses to call the following methods
+    // defined by the NoticeDialogFragment.NoticeDialogListener interface
+    &#64;Override
+    public void onDialogPositiveClick(DialogFragment dialog) {
+        // User touched the dialog's positive button
+        ...
+    }
+
+    &#64;Override
+    public void onDialogNegativeClick(DialogFragment dialog) {
+        // User touched the dialog's negative button
+        ...
+    }
+}
+</pre>
+
+<p>액티비티가 {@code NoticeDialogListener}를 구현하기 때문에&mdash;위에 표시된 {@link android.support.v4.app.Fragment#onAttach onAttach()}
+ 콜백 메서드가 강제 적용&mdash;해당 대화 프래그먼트는 
+인터페이스 콜백 메서드를 사용하여 액티비티에 대한 클릭 이벤트를 
+전달할 수 있습니다.</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    ...
+
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Build the dialog and set up the button click handlers
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the positive button event back to the host activity
+                       mListener.onDialogPositiveClick(NoticeDialogFragment.this);
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the negative button event back to the host activity
+                       mListener.onDialogNegativeClick(NoticeDialogFragment.this);
+                   }
+               });
+        return builder.create();
+    }
+}
+</pre>
+
+
+
+<h2 id="ShowingADialog">대화 표시</h2>
+
+<p>대화를 표시하고자 하는 경우, {@link
+android.support.v4.app.DialogFragment}의 인스턴스를 생성한 다음 {@link android.support.v4.app.DialogFragment#show
+show()}를 호출하여 {@link android.support.v4.app.FragmentManager}와 대화 프래그먼트에 대한 
+태그 이름을 전달합니다.</p>
+
+<p>{@link android.support.v4.app.FragmentManager}를 가져오려면 
+{@link android.support.v4.app.FragmentActivity}에서 
+{@link android.support.v4.app.FragmentActivity#getSupportFragmentManager()}를 호출하거나 {@link
+android.support.v4.app.Fragment}로부터 {@link
+android.support.v4.app.Fragment#getFragmentManager()}를 호출합니다. 예:</p>
+
+<pre>
+public void confirmFireMissiles() {
+    DialogFragment newFragment = new FireMissilesDialogFragment();
+    newFragment.show(getSupportFragmentManager(), "missiles");
+}
+</pre>
+
+<p>두 번째 인수 {@code "missiles"}는 시스템이 
+필요에 따라 프래그먼트의 상태를 저장하고 복원하는 데 사용하는 고유한 태그 이름입니다. 이 태그를 사용하면 {@link android.support.v4.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}를 호출하여 해당 프래그먼트를 파악할 수도 있습니다.
+</p>
+
+
+
+
+<h2 id="FullscreenDialog">대화를 전체 화면으로 또는 포함된 프래그먼트로 표시</h2>
+
+<p>UI 디자인에서, 몇몇 상황 하에서는 UI의 한 조각을 대화로 나타내지만 
+다른 상황에서는 전체 화면이나 포함된 프래그먼트로 나타내고자 하는 경우가 있을 수 
+있습니다(이는 어쩌면 기기 화면이 대형인지 소형인지에 따라 달라질 수도 있습니다). {@link android.support.v4.app.DialogFragment}
+클래스에서 이런 유연성을 제공하는 것은 이것이 여전히 포함 가능한 {@link
+android.support.v4.app.Fragment} 역할을 할 수 있기 때문입니다.</p>
+
+<p>그러나 이 경우에는 대화를 구축하는 데 {@link android.app.AlertDialog.Builder AlertDialog.Builder}
+또는 다른 {@link android.app.Dialog} 객체를 사용하면 안 됩니다. 
+{@link android.support.v4.app.DialogFragment}를 포함 가능한 상태로 만들려면, 
+레이아웃 안에 있는 대화의 UI를 정의해야 합니다. 그런 다음 레이아웃을 
+{@link android.support.v4.app.DialogFragment#onCreateView
+onCreateView()} 콜백에 로딩합니다.</p>
+
+<p>다음은 대화 또는 포함 가능한 프래그먼트 중 어느 쪽으로든 표시될 수 있는 
+{@link android.support.v4.app.DialogFragment} 예시입니다(<code>purchase_items.xml</code>이라는 레이아웃 사용).</p>
+
+<pre>
+public class CustomDialogFragment extends DialogFragment {
+    /** The system calls this to get the DialogFragment's layout, regardless
+        of whether it's being displayed as a dialog or an embedded fragment. */
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        // Inflate the layout to use as dialog or embedded fragment
+        return inflater.inflate(R.layout.purchase_items, container, false);
+    }
+  
+    /** The system calls this only when creating the layout in a dialog. */
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // The only reason you might override this method when using onCreateView() is
+        // to modify any dialog characteristics. For example, the dialog includes a
+        // title by default, but your custom layout might not need it. So here you can
+        // remove the dialog title, but you must call the superclass to get the Dialog.
+        Dialog dialog = super.onCreateDialog(savedInstanceState);
+        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
+        return dialog;
+    }
+}
+</pre>
+
+<p>그리고 다음은 프래그먼트를 대화로 표시할지 전체 화면 UI로 표시할지 화면 크기를 근거로 결정하는 몇 가지 코드입니다.
+</p>
+
+<pre>
+public void showDialog() {
+    FragmentManager fragmentManager = getSupportFragmentManager();
+    CustomDialogFragment newFragment = new CustomDialogFragment();
+    
+    if (mIsLargeLayout) {
+        // The device is using a large layout, so show the fragment as a dialog
+        newFragment.show(fragmentManager, "dialog");
+    } else {
+        // The device is smaller, so show the fragment fullscreen
+        FragmentTransaction transaction = fragmentManager.beginTransaction();
+        // For a little polish, specify a transition animation
+        transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
+        // To make it fullscreen, use the 'content' root view as the container
+        // for the fragment, which is always the root view for the activity
+        transaction.add(android.R.id.content, newFragment)
+                   .addToBackStack(null).commit();
+    }
+}
+</pre>
+
+<p>프래그먼트 트랜잭션을 수행하는 것에 대한 자세한 내용은 
+<a href="{@docRoot}guide/components/fragments.html">프래그먼트</a> 가이드를 참조하십시오.</p>
+
+<p>이 예시에서는 <code>mIsLargeLayout</code> 부울이 현재 기기가 앱의 큰 레이아웃 디자인을 써야 할지를
+ 나타냅니다(따라서 이 프래그먼트를 전체 화면보다는 대화로 표시).
+ 이런 종류의 부울을 설정하는 가장 좋은 방법은 
+<a href="{@docRoot}guide/topics/resources/more-resources.html#Bool">부울 리소스 값</a>을
+여러 가지 화면 크기에 대한 <a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">대체 리소스</a> 값으로 선언하는 것입니다. 
+예를 들어 다음은 여러 가지 화면 크기에 대한 두 가지 버전의 부울 리소스입니다.</p>
+
+<p class="code-caption">res/values/bools.xml</p>
+<pre>
+&lt;!-- Default boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">false&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p class="code-caption">res/values-large/bools.xml</p>
+<pre>
+&lt;!-- Large screen boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">true&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p>그러면 액티비티의 
+{@link android.app.Activity#onCreate onCreate()} 메서드 중에 {@code mIsLargeLayout} 값을 초기화할 수 있습니다.</p>
+
+<pre>
+boolean mIsLargeLayout;
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_main);
+
+    mIsLargeLayout = getResources().getBoolean(R.bool.large_layout);
+}
+</pre>
+
+
+
+<h3 id="ActivityAsDialog">액티비티를 큰 화면에 대화로 표시</h3>
+
+<p>작은 화면의 경우 대화를 전체 화면 UI로 표시하는 대신, 큰 화면에 있을 때에는 
+{@link android.app.Activity}를 대화로 표시함으로써 같은 결과를 얻을 수 있습니다.
+ 어느 방식을 사용할 것인지는 앱 디자인에 따라 달라지지만, 
+액티비티를 대화로 표시하면 앱이 이미 작은 화면용으로 디자인된 상태에서 
+태블릿에서의 환경을 개선하기 위해 일시적인 액티비티를 대화로 표시하는 경우 
+유용할 때가 많습니다.</p>
+
+<p>큰 화면의 경우 액티비티를 대화로만 표시하려면, 
+{@link android.R.style#Theme_Holo_DialogWhenLarge Theme.Holo.DialogWhenLarge}
+ 테마를 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> 매니페스트 요소에 적용하면 됩니다.</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.DialogWhenLarge" >
+</pre>
+
+<p>액티비티를 여러 가지 테마로 스타일링하는 법에 대한 자세한 정보는 <a href="{@docRoot}guide/topics/ui/themes.html">스타일 및 테마</a> 가이드를 참조하십시오.</p>
+
+
+
+<h2 id="DismissingADialog">대화 무시</h2>
+
+<p>사용자가 
+{@link android.app.AlertDialog.Builder}로 생성한 작업 버튼 중 하나라도 터치하면 시스템이 대화를 대신 무시합니다.</p>
+
+<p>시스템은 사용자가 대화 목록에서 항목을 터치하는 경우에도 대화를 무시합니다. 
+다만 목록이 무선 버튼이나 확인란을 사용하는 경우에는 예외입니다. 
+그렇지 않으면 대화를 수동으로 무시할 수도 있습니다. {@link
+android.support.v4.app.DialogFragment}에서 {@link android.support.v4.app.DialogFragment#dismiss()}를 호출하면 됩니다.</p>
+
+<p>
+대화가 사라질 때 특정 작업을 수행해야 하는 경우, {@link
+android.support.v4.app.DialogFragment}에서 @link
+android.support.v4.app.DialogFragment#onDismiss onDismiss()}를 구현하면 됩니다.</p>
+
+<p>또한 대화를 <em>취소</em>할 수도 있습니다. 이것은 사용자가 작업을 완료하지 않고 대화를 
+분명히 떠났다는 것을 나타내는 특수 이벤트입니다. 이것은 사용자가 
+<em>뒤로</em> 버튼을 누르거나 대화 영역 바깥의 화면을 터치하거나, 
+개발자가 {@link
+android.app.Dialog}에서 명시적으로 {@link android.app.Dialog#cancel()}을 호출한 경우 발생합니다(예: 대화의 "취소" 버튼에 대한 응답으로).</p>
+
+<p>위의 예시에 나타난 바와 같이 취소 이벤트에 응답하려면 {@link
+android.support.v4.app.DialogFragment} 클래스에서 
+{@link android.support.v4.app.DialogFragment#onCancel onCancel()}을 구현하면 됩니다.</p>
+
+<p class="note"><strong>참고:</strong> 시스템은 
+{@link android.support.v4.app.DialogFragment#onCancel onCancel()} 콜백을 불러오는 이벤트가 발생할 때마다 
+{@link android.support.v4.app.DialogFragment#onDismiss onDismiss()}를 호출합니다. 
+그러나 {@link android.app.Dialog#dismiss Dialog.dismiss()} 또는 {@link
+android.support.v4.app.DialogFragment#dismiss DialogFragment.dismiss()}를 호출하면 
+시스템은 {@link android.support.v4.app.DialogFragment#onDismiss onDismiss()}는 호출하지만 {@link android.support.v4.app.DialogFragment#onCancel onCancel()}은 
+호출하지 <em>않습니다</em>. 따라서 사용자가 대화를 보기에서 제거하기 위해 대화에 있는 
+<em>긍정적인</em> 버튼을 누르는 경우, 일반적으로 {@link android.support.v4.app.DialogFragment#dismiss dismiss()}를 
+사용해야 합니다.</p>
+
+
diff --git a/docs/html-intl/intl/ko/guide/topics/ui/menus.jd b/docs/html-intl/intl/ko/guide/topics/ui/menus.jd
new file mode 100644
index 0000000..c115c2a
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/ui/menus.jd
@@ -0,0 +1,1031 @@
+page.title=메뉴
+parent.title=사용자 인터페이스
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>이 문서의 내용</h2>
+<ol>
+  <li><a href="#xml">XML로 메뉴 정의</a></li>
+  <li><a href="#options-menu">옵션 메뉴 만들기</a>
+    <ol>
+      <li><a href="#RespondingOptionsMenu">클릭 이벤트 처리</a></li>
+      <li><a href="#ChangingTheMenu">런타임에 메뉴 항목 변경</a></li>
+    </ol>
+  </li>
+  <li><a href="#context-menu">상황별 메뉴 만들기</a>
+    <ol>
+      <li><a href="#FloatingContextMenu">부동 컨텍스트 메뉴 만들기</a></li>
+      <li><a href="#CAB">상황별 동작 모드 사용</a></li>
+    </ol>
+  </li>
+  <li><a href="#PopupMenu">팝업 메뉴 만들기</a>
+    <ol>
+      <li><a href="#PopupEvents">클릭 이벤트 처리</a></li>
+    </ol>
+  </li>
+  <li><a href="#groups">메뉴 그룹 만들기</a>
+    <ol>
+      <li><a href="#checkable">확인 가능한 메뉴 항목 사용</a></li>
+    </ol>
+  </li>
+  <li><a href="#intents">인텐트에 기반한 메뉴 항목 추가</a>
+    <ol>
+      <li><a href="#AllowingToAdd">다른 메뉴에 액티비티 추가 허용</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>Key 클래스</h2>
+  <ol>
+    <li>{@link android.view.Menu}</li>
+    <li>{@link android.view.MenuItem}</li>
+    <li>{@link android.view.ContextMenu}</li>
+    <li>{@link android.view.ActionMode}</li>
+  </ol>
+
+  <h2>참고 항목</h2>
+  <ol>
+    <li><a href="{@docRoot}guide/topics/ui/actionbar.html">작업 모음</a></li>
+    <li><a href="{@docRoot}guide/topics/resources/menu-resource.html">메뉴 리소스</a></li>
+    <li><a href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">
+메뉴 버튼에 작별을 고하세요</a></li>
+  </ol>
+</div>
+</div>
+
+<p>메뉴는 수많은 유형의 애플리케이션에서 사용되는 보편적인 사용자 인터페이스 구성 요소입니다. 친숙하고 일관적인
+사용자 경험을 제공하기 위해 액티비티에서 사용자 작업과 다른 옵션을 제시하는 {@link android.view.Menu} API를
+사용해야 합니다.</p>
+
+<p>Android 3.0(API 레벨 11)부터 Android 구성 기기는
+전용 <em>메뉴</em> 버튼을 하지 않아도 됩니다. 이번 변경 사항부터 Android 앱은
+종래의 6항목 메뉴 패널에 의존하지 않고 작업 모음을 사용하여
+공통 사용자 작업을 표현합니다.</p>
+
+<p>일부 메뉴 항목의 디자인과 사용자 경험이 변경되었지만, 작업과 옵션 세트를 정의하는
+의미 체계 세트는 여전히 {@link android.view.Menu} API를 기초로 사용합니다. 이 가이드는
+모든 버전의 Android에서 세 가지 기본적인 유형의 메뉴나 작업 표시를
+생성하는 법을 보여줍니다.</p>
+
+<dl>
+  <dt><strong>옵션 메뉴 및 작업 모음</strong></dt>
+    <dd><a href="#options-menu">옵션 메뉴</a>는 액티비티에 대한 기본 메뉴 항목 컬렉션
+입니다. 
+이곳에 "검색", "이메일 작성" 및 "설정"과 같이 앱에 전체적인 영향을 미치는 작업을 배치해야 합니다.
+  <p>Android 2.3 이하를 대상으로 개발하는 경우 사용자는
+<em>메뉴</em> 버튼을 눌러서 옵션 메뉴 패널을 표시할 수 있습니다.</p>
+  <p>Android 3.0 이상의 경우, 옵션 메뉴의 항목은 <a href="{@docRoot}guide/topics/ui/actionbar.html">작업 모음</a>에서 화면 작업 항목과 오버플로 옵션의 조합으로
+표시됩니다. Android 3.0부터 <em>메뉴</em> 버튼의 사용이 중단되므로(일부
+기기는
+메뉴 버튼이 없습니다), 작업과 다른 옵션에 대한 액세스를 제공하려면 작업 모음을
+사용하기 시작해야 합니다.</p>
+  <p><a href="#options-menu">옵션 메뉴 만들기</a> 섹션을 참조하십시오.</p>
+    </dd>
+    
+  <dt><strong>컨텍스트 메뉴 및 상황별 작업 모드</strong></dt>
+  
+   <dd>컨텍스트 메뉴는 사용자가 요소를 길게 클릭하면 나타나는 <a href="#FloatingContextMenu">부동 메뉴</a>
+입니다. 이것은 선택한 콘텐츠나 컨텍스트 프레임에
+영향을 주는 작업을 제공합니다.
+  <p>Android 3.0 이상을 대상으로 개발하는 경우, <a href="#CAB">상황별 작업 모드</a>를 사용하여 선택한 콘텐츠의 작업을 활성화해야 합니다. 이 모드는
+화면 위에 있는 막대에서 선택된 콘텐츠에 영향을 미치는 작업 항목을 표시하고 사용자가
+여러 항목을 선택할 수 있습니다.</p>
+  <p><a href="#context-menu">상황별 메뉴 만들기</a>에 관한 섹션을 참조하십시오.</p>
+</dd>
+    
+  <dt><strong>팝업 메뉴</strong></dt>
+    <dd>팝업 메뉴는 메뉴를 호출하는 보기에 고정된 수직 목록에서 항목 목록을
+표시합니다. 이것은 정 콘텐츠와 관련이 되는 작업의 오버플로를 제공하거나
+명령의 두 번째 부분에 대한 옵션을 제공하는 데 좋습니다. 팝업 메뉴의 작업은
+해당 콘텐츠에 직접적 영향을 미쳐서는 <strong>안 됩니다</strong>. 이는 상황별 작업의 역할입니다.
+ 팝업 메뉴는 그보다는 티비티의 콘텐츠 영역과 관련이 있는
+확장 작업을 위한 것입니다.
+  <p><a href="#PopupMenu">팝업 메뉴 만들기</a> 섹션을 참조하십시오.</p>
+</dd>
+</dl>
+
+
+
+<h2 id="xml">XML로 메뉴 정의</h2>
+
+<p>모든 메뉴 유형에 대하여, Android는 표준 XML 형식으로 메뉴 항목을 정의합니다.
+액티비티 코드에서 메뉴를 구축하는 대신
+XML <a href="{@docRoot}guide/topics/resources/menu-resource.html">메뉴 리소스</a>에서 메뉴와 모든 항목을 정의해야 합니다. 그러면 
+액티비티나 프래그먼트에서 메뉴 리소스를 팽창시킬 수 있습니다({@link android.view.Menu} 개체로 로딩하면 됩니다).
+</p>
+
+<p>메뉴 리소스를 사용하는 것이 좋은 이유로 다음과 같은 몇 가지를 들 수 있습니다.</p>
+<ul>
+  <li>메뉴 구조를 XML로 시작화하면 다른 방식보다 쉽습니다.</li>
+  <li>애플리케이션의 동작 코드에서 메뉴의 콘텐츠를 분리합니다.</li>
+  <li><a href="{@docRoot}guide/topics/resources/index.html">앱 리소스</a> 프레임워크를 활용하여 다양한 플랫폼 버전, 화면 크기 및 기타 구성에 대한
+대체 메뉴 프레임워크를 생성할 수 있습니다.</li>
+</ul>
+
+<p>메뉴를 정의하려면 프로젝트의 <code>res/menu/</code>
+디렉터리에서 XML 파일을 생성하고 다음 요소로 메뉴를 구축합니다.</p>
+<dl>
+  <dt><code>&lt;menu></code></dt>
+    <dd>메뉴 항목의 컨테이너인 {@link android.view.Menu}를 정의합니다. 
+<code>&lt;menu></code> 요소는 파일의 루트 노드여야 하고 하나 이상의
+<code>&lt;item></code>와 <code>&lt;group></code> 요소를 보유할 수 있습니다.</dd>
+
+  <dt><code>&lt;item></code></dt>
+    <dd>메뉴 안의 항목 하나를 나타내는 {@link android.view.MenuItem}을 생성합니다. 
+이 요소 안에는 하위 메뉴를 생성하기 위한 중첩 <code>&lt;menu></code> 요소가 들어있을 수 있습니다.</dd>
+    
+  <dt><code>&lt;group></code></dt>
+    <dd>{@code &lt;item&gt;} 요소를 위한 선택적인 투명 컨테이너입니다. 이것을 사용하면 활성 상태와 가시성 등의 속성을 공유할 수 있도록
+메뉴 항목을 분류하도록 해줍니다. 
+자세한 정보를 보려면 <a href="#groups">메뉴 그룹 만들기</a>를 참조하십시오.</dd>
+</dl>
+
+
+<p>다음은 <code>game_menu.xml</code>이라는 메뉴의 예시입니다.</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/new_game"
+          android:icon="@drawable/ic_new_game"
+          android:title="@string/new_game"
+          android:showAsAction="ifRoom"/&gt;
+    &lt;item android:id="@+id/help"
+          android:icon="@drawable/ic_help"
+          android:title="@string/help" /&gt;
+&lt;/menu&gt;
+</pre>
+
+<p><code>&lt;item></code> 요소는 항목의 외관과 동작을
+정의하는 데 사용할 수 있는 여러 속성을 지원합니다. 위 메뉴의 항목에는 다음 속성이 포함되어 있습니다.</p>
+
+<dl>
+  <dt>{@code android:id}</dt>
+    <dd>항목에 고유한 리소스 ID입니다. 사용자가 항목을 선택하면
+애플리케이션이 이것으로 해당 항목을 인식할 수 있게 해줍니다.</dd>
+  <dt>{@code android:icon}</dt>
+    <dd>항목의 아이콘으로 사용할 수 있는 드로어블에 대한 참조입니다.</dd>
+  <dt>{@code android:title}</dt>
+    <dd>항목의 제목으로 사용할 문자열에 대한 참조입니다.</dd>
+  <dt>{@code android:showAsAction}</dt>
+    <dd><a href="{@docRoot}guide/topics/ui/actionbar.html">작업 모음</a>에서 작업 항목을 나타낼 시기와 방법을 나타냅니다.</dd>
+</dl>
+
+<p>이들이 여러분이 꼭 사용해야 할 가장 중요한 속성이지만, 사용할 수 있는 요소는 이외에도 많이 있습니다.
+모든 지원 속성에 관한 정보는 <a href="{@docRoot}guide/topics/resources/menu-resource.html">메뉴 리소스</a> 문서를 참조하십시오.</p>
+
+<p>{@code &lt;menu&gt;} 요소를
+{@code &lt;item&gt;}의 요소로 추가하면 어떤 메뉴 항목이든 하위 메뉴를 추가할 수 있습니다(하위 메뉴 제외). 하위 메뉴는 애플리케이션에 PC 애플리케이션의 메뉴 막대(파일,
+편집, 보기 등)의 항목과 같이 주제별로 체계화할 수 있는 기능이 많을 때
+유용합니다. 예:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/file"
+          android:title="@string/file" &gt;
+        &lt;!-- "file" submenu --&gt;
+        &lt;menu&gt;
+            &lt;item android:id="@+id/create_new"
+                  android:title="@string/create_new" /&gt;
+            &lt;item android:id="@+id/open"
+                  android:title="@string/open" /&gt;
+        &lt;/menu&gt;
+    &lt;/item&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>액티비티에서 메뉴를 사용하려면
+{@link android.view.MenuInflater#inflate(int,Menu)
+MenuInflater.inflate()}를 사용하여 메뉴 리소스를 팽창해야 합니다(XML 리소스를 프로그램 가능 개체로 변환). 다음 섹션에서는 각 메뉴 유형에 대해
+메뉴를 팽창하는 방법을 보여줍니다.</p>
+
+
+
+<h2 id="options-menu">옵션 메뉴 만들기</h2>
+
+<div class="figure" style="width:200px;margin:0">
+  <img src="{@docRoot}images/options_menu.png" height="333" alt="" />
+  <p class="img-caption"><strong>그림 1.</strong> Android 2.3에서 실행되는 
+브라우저의 옵션 메뉴입니다.</p>
+</div>
+
+<p>옵션 메뉴에 "검색", "이메일 작성" 및 "설정"과 같이
+현재 액티비티 컨텍스트와 관련이 있는 작업과 다른 옵션을 포함해야 합니다.</p>
+
+<p>화면의 옵션 메뉴에 항목이 나타나는 위치는
+개발자가 애플리케이션을 어느 버전에서 개발했는지에 따라 달라집니다.</p>
+
+<ul>
+  <li><strong>Android 2.3.x(API 레벨 10)
+이하</strong>에서 애플리케이션을 개발했을 경우,
+그림 1과 같이 사용자가 <em>메뉴</em> 버튼을 누르면 화면 아래에 옵션 메뉴의 콘텐츠가 나타납니다. 이것이 열렸을 때 가장 먼저 보이는 부분은 
+아이콘
+메뉴이고, 이는 최대 여섯 개의 메뉴 항목을 보유합니다. 메뉴에 여섯 개를 넘는 항목이 포함되어 있는 경우, Android는 
+여섯 번째 항목과 나머지 항목을 더보기 메뉴에 배치합니다. 이것은 사용자가 
+<em>더보기</em>를 선택하면 열 수 있습니다.</li>
+
+  <li><strong>Android 3.0(API 레벨 11)
+이상</strong>에서 애플리케이션을 개발했을 경우, 옵션 메뉴의 항목은 <a href="{@docRoot}guide/topics/ui/actionbar.html">작업 모음</a>에서 이용할 수 있습니다. 기본적으로 시스템은 모든 항목을 작업 더보기에 배치합니다.
+사용자는 작업 모음 오른쪽에 있는
+작업 더보기 아이콘으로 이를 표시할 수 있습니다(또는 이용할 수 있을 경우 기기 <em>메뉴</em> 버튼을 누르면 됩니다). 
+중요한 작업에 대한 빠른 액세스를
+ 활성화하려면
+{@code android:showAsAction="ifRoom"}을 해당 {@code &lt;item&gt;} 요소에 추가하여 몇 가지 항목이 작업 모음에 표시되도록 수준을 올립니다(그림
+2 참조). <p>작업 항목과 다른 작업 모음 동작에 관한 자세한 정보는 <a href="{@docRoot}guide/topics/ui/actionbar.html">작업 모음</a> 가이드를 참조하십시오. </p>
+<p class="note"><strong>참고:</strong> Andoid 3.0 이상을 대상으로 개발하지 <em>않더라도</em> 
+개발자 나름의 작업 모음 레이아웃을 구축하여 비슷한 효과를 낼 수 있습니다. 예를 들어,
+작업 모음이 포함된 Android 이전 버전을 지원하는 방법은 <a href="{@docRoot}resources/samples/ActionBarCompat/index.html">작업 모음 호환성</a>
+샘플을 참조하십시오.</p>
+</li>
+</ul>
+
+<img src="{@docRoot}images/ui/actionbar.png" alt="" />
+<p class="img-caption"><strong>그림 2.</strong> <a href="{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb 갤러리</a> 앱의 작업 모음으로
+탐색 탭과 카메라 작업 항목(및 작업 더보기 버튼)을 표시합니다.</p>
+
+<p>{@link android.app.Activity}
+하위 클래스나 {@link android.app.Fragment} 하위 클래스에서 옵션 메뉴용 항목을 선언할 수 있습니다. 액티비티와 프래그먼트가 모두
+옵션 메뉴용 항목을 선언할 경우, 이들은 UI에서 조합됩니다. 액티비티의 항목이 먼저 나타나고, 
+뒤이어 각 프래그먼트의 항목이 나타나며 이때 순서는 각 프래그먼트가 액티비티에 추가된 순서를 
+따릅니다. 필요한 경우 이동해야 하는 각 {@code &lt;item&gt;}에서{@code android:orderInCategory} 속성이 포함된
+메뉴 항목을 다시 정렬할 수 있습니다.</p>
+
+<p>액티비티에 대한 옵션 메뉴를 지정하려면 {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}를 재정의합니다(프래그먼트는 
+자신만의 {@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()} 콜백을 제공합니다). 이 메서드에서
+(<a href="#xml">XML에서 정의된</a>) 메뉴 리소스를 콜백에서 제공된 {@link
+android.view.Menu}로 팽창할 수 있습니다. 예:</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu) {
+    MenuInflater inflater = {@link android.app.Activity#getMenuInflater()};
+    inflater.inflate(R.menu.game_menu, menu);
+    return true;
+}
+</pre>
+
+<p>또한, {@link android.view.Menu#add(int,int,int,int)
+add()}를 사용하여 메뉴 항목을 추가하고 {@link android.view.Menu#findItem findItem()}로 항목을 검색하여
+{@link android.view.MenuItem} API로 속성을 수정할 수 있습니다.</p>
+
+<p>Android 2.3.x 이하를 대상으로 애플리케이션을 개발했을 경우, 사용자가 처음으로 메뉴를 열었을 때 시스템이 {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}를
+호출합니다. Android 3.0 이상을 대상으로 개발할 경우,
+액티비티를 시작할 때 작업 모음에 항목을 보여주기 위해 시스템이 {@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}를
+호출합니다.</p>
+
+
+
+<h3 id="RespondingOptionsMenu">클릭 이벤트 처리</h3>
+
+<p>사용자가 옵션 메뉴에서 항목을 선택하면(작업 모음의 작업 항목 포함),
+시스템이 액티비티의 {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} 메서드를 호출합니다. 이 메서드가 선택한 {@link android.view.MenuItem}을 전달합니다. 항목을 식별하려면 
+{@link android.view.MenuItem#getItemId()}을 호출하면 됩니다. 이 메서드는(메뉴 리소스의 {@code android:id} 속성으로 지정되거나
+{@link android.view.Menu#add(int,int,int,int) add()} 메서드에 제공된 정수가 포함된) 메뉴 항목에 대한 고유 ID를 반환합니다
+. 이 ID와
+알려진 메뉴 항목을 일치시켜 적절한 작업을 수행할 수 있습니다. 예:</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    // Handle item selection
+    switch (item.getItemId()) {
+        case R.id.new_game:
+            newGame();
+            return true;
+        case R.id.help:
+            showHelp();
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>메뉴 항목을 성공적으로 처리하면 {@code true}를 반환합니다. 메뉴 항목을
+처리하지 않으면, {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}의 슈퍼 클래스 구현을 호출해야 합니다(기본
+구현은 '거짓'을 반환합니다).</p>
+
+<p>액티비티에 프래그먼트가 포함되어 있으면, 액티비티에 대해 {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}를 호출하고, 그 다음에는
+하나의 프래그먼트가
+{@code true}를 반환하거나 모든 프래그먼트가 호출될 때까지 (각 프래그먼트가 추가된 순서대로) 각 프래그먼트에 대해 해당 메서드를 호출합니다.</p>
+
+<p class="note"><strong>팁:</strong> Android 3.0에는
+{@code android:onClick} 속성을 사용하여 XML에 있는 메뉴 항목에 대한 온-클릭 동작을 정의하는 기능이 추가됩니다. 
+속성 값은 메뉴를 사용하여 액티비티가 정의한 메서드의 이름이어야 합니다. 메서드는
+공개여야 하며 하나의 {@link android.view.MenuItem} 매개변수를 수락해야 합니다. 시스템이 이 메서드를 호출하면
+메서드가 선택한 메뉴 항목을 전달합니다. 자세한 정보와 예시는 <a href="{@docRoot}guide/topics/resources/menu-resource.html">메뉴 리소스</a> 문서를 참조하십시오.</p>
+
+<p class="note"><strong>팁:</strong> 애플리케이션에 여러 액티비티가 포함되어 있고, 그 중 몇몇이 같은 옵션 메뉴를 제공할 경우,
+
+{@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()}와 {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} 메서드를 제외하고 아무것도 구현하지 않는 액티비티를 만드는 것을 고려해보십시오. 그런 다음 이 클래스를 같은 옵션 메뉴를 공유해야 하는 각 액티비티에 대해 
+확장하면 됩니다. 이렇게 하면 메뉴 작업을 처리하는 코드 세트 하나를 관리할 수 있고,
+각 하위 클래스가 메뉴 동작을 상속합니다.
+이런 하위 액티비티 중 하나에 메뉴 항목을 추가하려면,
+해당 액티비티에서 {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()}를 재정의하십시오. {@code super.onCreateOptionsMenu(menu)}를 호출하여
+원래 메뉴 항목을 생성하고, {@link
+android.view.Menu#add(int,int,int,int) menu.add()}이 포함된 새로운 메뉴 항목을 추가합니다. 각각의 메뉴 항목에 대한 슈퍼클래스의 동작을 
+재정의할 수도 있습니다.</p>
+
+
+<h3 id="ChangingTheMenu">런타임에 메뉴 항목 변경</h3>
+
+<p>시스템이 {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()}를 호출하면, 개발자가 채우는 {@link android.view.Menu}의 인스턴스를 유지하고
+어떤 이유로 메뉴가 무효화되지 않으면{@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}를
+호출하지 않습니다. 그러나 {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}는 초기
+메뉴 상태를 생성할 때만 사용하고, 액티비티 수명 주기에서 변경할 때는 사용하지 않습니다.</p>
+
+<p>액티비티 수명 주기에서 발생하는 이벤트에
+기반하여 옵션을 수정하고자 할 경우, 이는
+{@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()} 메서드에서 할 수 있습니다. 이
+메서드는 현재 존재하는 상태대로 {@link android.view.Menu} 개체를 전달하므로,
+항목을 추가, 삭제, 비활성화하는 등의 수정을 할 수 있습니다 (프래그먼트도 {@link
+android.app.Fragment#onPrepareOptionsMenu onPrepareOptionsMenu()} 콜백을 제공합니다).</p>
+
+<p>Android 2.3.x 이하에서는, 사용자가 옵션 메뉴를 열 때마다(<em>메뉴</em>
+버튼 누름) 시스템이{@link
+android.app.Activity#onPrepareOptionsMenu(Menu)
+onPrepareOptionsMenu()}를 호출합니다.</p>
+
+<p>Android 3.0 이상에서는 메뉴 항목이 작업 모음에 표시되어 있을 때마다
+옵션 메뉴는 항상 열려 있는 것으로 간주됩니다. 이벤트가 발생하고 메뉴 업데이트를 수행하고자 하는 경우,
+{@link android.app.Activity#invalidateOptionsMenu invalidateOptionsMenu()}를 호출하여
+시스템이 {@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}를 호출하도록 요청해야 합니다.</p>
+
+<p class="note"><strong>참고:</strong> 
+현재 초점이 맞춰져 있는 {@link android.view.View}를 기반으로 한 
+옵션 메뉴의 항목을 절대로 변경해서는 안 됩니다. 터치 모드에서는(사용자가 트랙볼이나 d-패드를 사용하지 않는 경우), 
+보기가 초점을 취할 수 없으므로 옵션 메뉴에 있는 항목을 수정할 
+근거로 초점을 사용해서는 결코 안 됩니다. {@link
+android.view.View}의 컨텍스트에 민감한 메뉴를 제공하고자 하는 경우, <a href="#context-menu">컨텍스트 메뉴</a>를 사용하십시오.</p>
+
+
+
+
+<h2 id="context-menu">상황별 메뉴 만들기</h2>
+
+<div class="figure" style="width:420px;margin-top:-1em">
+  <img src="{@docRoot}images/ui/menu-context.png" alt="" />
+  <p class="img-caption"><strong>그림 3.</strong> 부동 컨텍스트 메뉴(왼쪽)
+와 상황별 작업 모음(오른쪽)의 스크린샷입니다.</p>
+</div>
+
+<p>상황별 메뉴는 UI에서 특정 항목이나 컨텍스트 프레임에 영향을 미치는 작업을 제공합니다.
+컨텍스트 메뉴는 어느 보기에나 제공할 수 있지만, {@link
+android.widget.ListView}나 {@link android.widget.GridView}, 사용자가 각 항목에서 직접 작업을 수행하는 기타 보기 컬렉션의
+항목에 가장 자주 사용합니다.</p>
+
+<p>상황별 작업을 제공하는 방법에는 두 가지가 있습니다.</p>
+<ul>
+  <li><a href="#FloatingContextMenu">부동 컨텍스트 메뉴</a>를 사용합니다. 사용자가 컨텍스트 메뉴에 대한 지원을 선언하는 보기를 길게 클릭하면
+(대화와 유사한) 메뉴 항목의 부동 목록이
+나타납니다. 사용자는 한 항목에서 한 번에 하나의 상황별 
+작업을 수행할 수 있습니다.</li>
+
+  <li><a href="#CAB">상황별 작업 모드</a>를 사용합니다. 이 모드는 화면 위에 있는 막대에서 선택된 항목에 영향을 미치는 작업 항목이 포함된 <em>상황별 작업 막대</em>를 표시하는
+{@link android.view.ActionMode}의 시스템 구현입니다.
+ 이 모드가 활성 상태이면 사용자는 
+여러 개의 항목에서 한 작업을 한꺼번에 수행할 수 있습니다(앱이 이를 허용하는 경우).</li>
+</ul>
+
+<p class="note"><strong>참고:</strong> 상황별 작업 모드는 Android 3.0(API
+레벨 11) 이상에서 이용할 수 있으며, 이용 가능할 때 컨텍스트 작업 표시용으로 기본 설정된 기술입니다.
+ 앱이 3.0 이하의 버전을 지원할 경우 해당 기기에서는 
+부동 컨텍스트 메뉴로 돌아가야 합니다.</p>
+
+
+<h3 id="FloatingContextMenu">부동 컨텍스트 메뉴 만들기</h3>
+
+<p>부동 컨텍스트 메뉴를 제공하려면 다음과 같이 합니다.</p>
+<ol>
+  <li>컨텍스트 메뉴가 연관되어야 하는 {@link android.view.View}를 등록합니다. 그러려면 
+{@link android.app.Activity#registerForContextMenu(View) registerForContextMenu()}를 호출하고 여기에 
+{@link android.view.View}를 전달하면 됩니다.
+  <p>액티비티가 {@link android.widget.ListView} 또는 {@link android.widget.GridView}를 사용하고
+각 항목이 같은 컨텍스트 메뉴를 제공하게 하고 싶을 경우,
+{@link android.widget.ListView}나 {@link android.widget.GridView}를 {@link
+android.app.Activity#registerForContextMenu(View) registerForContextMenu()}에 전달하여 컨텍스트 메뉴에 모든 항목을 등록합니다.</p>
+</li>
+
+  <li>{@link android.app.Activity}나 {@link android.app.Fragment}에서 {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()} 메서드를 
+구현합니다.
+  <p>등록된 보기가 롱-클릭 이벤트를 수신하면, 시스템이 {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()}
+메서드를 호출합니다. 이곳이 바로 메뉴 항목을 정의하는 곳입니다. 주로 메뉴 리소스를 팽창시키는 방법을 씁니다. 예:
+</p>
+<pre>
+&#64;Override
+public void onCreateContextMenu(ContextMenu menu, View v,
+                                ContextMenuInfo menuInfo) {
+    super.onCreateContextMenu(menu, v, menuInfo);
+    MenuInflater inflater = getMenuInflater();
+    inflater.inflate(R.menu.context_menu, menu);
+}
+</pre>
+
+<p>{@link android.view.MenuInflater}를 사용하면 <a href="{@docRoot}guide/topics/resources/menu-resource.html">메뉴 리소스</a>에서 컨텍스트 메뉴를 팽창하게 해줍니다. 콜백 메서드
+매개변수에는 사용자가 선택한 {@link android.view.View}와
+선택한 항목에 대한 추가 정보를 제공하는 {@link android.view.ContextMenu.ContextMenuInfo} 객체가 
+포함됩니다. 액티비티에 여러 개의 보기가 있고 이들이 각각 서로 다른 컨텍스트 메뉴를 제공하는 경우, 
+이와 같은 매개변수를 사용하여 팽창할 컨텍스트 메뉴가 무엇인지 
+판별할 수 있습니다.</p>
+</li>
+
+<li>{@link android.app.Activity#onContextItemSelected(MenuItem)
+onContextItemSelected()}를 구현합니다.
+  <p>사용자가 메뉴 항목을 선택할 경우, 시스템이 이 메서드를 호출하여
+적절한 작업을 수행하게 해줍니다. 예:</p>
+
+<pre>
+&#64;Override
+public boolean onContextItemSelected(MenuItem item) {
+    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
+    switch (item.getItemId()) {
+        case R.id.edit:
+            editNote(info.id);
+            return true;
+        case R.id.delete:
+            deleteNote(info.id);
+            return true;
+        default:
+            return super.onContextItemSelected(item);
+    }
+}
+</pre>
+
+<p>{@link android.view.MenuItem#getItemId()} 메서드는 선택된 메뉴 항목의 ID를 쿼리하고,
+<a href="#xml">
+XML에서 메뉴 정의</a> 섹션에 나타난 바와 같이 {@code
+android:id} 속성을 사용하여 XML의 각 메뉴 항목에 이를 할당해야 합니다.</p>
+
+<p>메뉴 항목을 성공적으로 처리하면 {@code true}를 반환합니다. 메뉴 항목을 처리하지 않는 경우, 
+해당 메뉴 항목을 슈퍼클래스 구현에 전달해야 합니다. 액티비티에 프래그먼트가 포함되어 있는 경우 
+해당 액티비티가 첫 번째로 이 콜백을 수신합니다. 처리되지 않을 때 슈퍼클래스를 호출하면 시스템이
+이벤트를 각 프래그먼트의 각 콜백 메서드에 전달합니다.
+{@code true} 또는 {@code false}가 반환될 때까지 (각 프래그먼트가 추가된 순서대로) 한 번에 하나씩 전달됩니다 (
+{@link android.app.Activity}와 {@code android.app.Fragment}의 기본 구현이 {@code
+false}를 반환하므로 처리되지 않을 때는 언제나 슈퍼 클래스를 호출해야 합니다).</p>
+</li>
+</ol>
+
+
+<h3 id="CAB">상황별 동작 모드 사용</h3>
+
+<p>상황별 작업 모드는 사용자 상호 작용을 컨텍스트 작업 수행에 집중시키는 {@link android.view.ActionMode}의
+시스템 구현입니다. 사용자가 항목을 선택하여 
+이 모드를 활성화하면, <em>상황별 작업 모음</em>이 화면 위에 나타나서
+사용자가 현재 선택된 항목에서 수행할 수 있는 작업을 표시합니다. 이 모드가
+활성화되면 사용자는 여러 항목을 선택하고(개발자가 이를 허용하는 경우), 항목을 선택 해제하고, 액티비티 내에서
+탐색을 계속합니다(개발자가 허용하고자 하는 만큼). 사용자가 모든 항목에서 선택을 해제하고, '뒤로' 버튼을 누르거나
+
+작업 모음 왼쪽의 <em>완료</em> 작업을 누르면 작업 모드가 비활성화되고 상황별 작업 모음이 사라집니다.</p>
+
+<p class="note"><strong>참고:</strong> 상황별 작업 모음이 
+반드시 <a href="{@docRoot}guide/topics/ui/actionbar.html">작업 모음</a>과 연관되어 있는 것은 아닙니다. 이들은 서로 
+독립적으로 작동합니다. 이는 겉으로 보기에는 상황별 작업 모음이 작업 모음의 위치를 능가하는 것으로 
+보이더라도 적용됩니다.</p>
+
+<p>Android 3.0 (API level 11) 이상을 대상으로 개발하는 경우, 
+일반적으로 상황별 작업 모드를 사용하여 <a href="#FloatingContextMenu">부동 컨텍스트 메뉴</a>가 아닌 상황별 작업을 표시합니다.</p>
+
+<p>상황별 작업을 제공하는 보기의 경우, 일반적으로 두 이벤트 중 하나(또는 두 가지 모두)에서 상황별 작업 모드를 
+호출해야 합니다.</p>
+<ul>
+  <li>사용자가 보기에서 롱-클릭을 수행합니다.</li>
+  <li>사용자가 보기에서 확인란 또는 그와 유사한 UI 구성 요소를 선택합니다.</li>
+</ul>
+
+<p>애플리케이션이 상황별 작업 모드를 호출하고 디자인에 따라 각 작업의 동작을
+정의합니다. 기본적으로 두 가지 디자인이 있습니다.</p>
+<ul>
+  <li>개별적인 임의의 보기에 대한 상황별 작업의 경우.</li>
+  <li>{@link
+android.widget.ListView} 또는 {@link android.widget.GridView}에서 항목 그룹의 일괄 상황별 작업의 경우(사용자가 여러 항목을
+선택하도록 허용하고 모든 항목에서 작업을 수행).</li>
+</ul>
+
+<p>다음 섹션은 각 시나리오에 필요한 설정을 설명합니다.</p>
+
+
+<h4 id="CABforViews">각각의 보기에 대한 상황별 작업 모드의 활성화</h4>
+
+<p>사용자가 특정 보기를 선택했을 때만 상황별 작업 모드를 호출하고자 하는 경우 
+다음과 같이 해야 합니다.</p>
+<ol>
+  <li>{@link android.view.ActionMode.Callback} 인터페이스를 구현합니다. 콜백 메서드에서 
+상황별 작업 모음의 작업을 지정하고, 작업 항목에 대한 클릭 이벤트에 응답하고, 작업 모드에 대한 
+다른 수명 주기 이벤트를 처리합니다.</li>
+  <li>모음을 표시하고자 하는 경우{@link android.app.Activity#startActionMode startActionMode()}를 호출합니다
+(사용자가 보기를 롱-클릭하는 경우).</li>
+</ol>
+
+<p>예:</p>
+
+<ol>
+  <li>{@link android.view.ActionMode.Callback ActionMode.Callback} 인터페이스를 구현합니다.
+<pre>
+private ActionMode.Callback mActionModeCallback = new ActionMode.Callback() {
+
+    // Called when the action mode is created; startActionMode() was called
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate a menu resource providing context menu items
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context_menu, menu);
+        return true;
+    }
+
+    // Called each time the action mode is shown. Always called after onCreateActionMode, but
+    // may be called multiple times if the mode is invalidated.
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        return false; // Return false if nothing is done
+    }
+
+    // Called when the user selects a contextual menu item
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        switch (item.getItemId()) {
+            case R.id.menu_share:
+                shareCurrentItem();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    // Called when the user exits the action mode
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        mActionMode = null;
+    }
+};
+</pre>
+
+<p>이벤트 콜백은 <a href="#options-menu">옵션 메뉴</a>의 콜백과 거의 똑같다는 점을 눈여겨 보십시오. 단, 각 콜백은 이벤트와 연결된 {@link
+android.view.ActionMode} 객체를 전달합니다. {@link
+android.view.ActionMode} API를 사용하여
+{@link android.view.ActionMode#setTitle setTitle()}과 {@link
+android.view.ActionMode#setSubtitle setSubtitle()}이 포함된 제목과 하위 제목을 수정하는 등과 같이 CAB를 다양하게 변경합니다(몇 개의 
+항목이 선택되었는지 나타낼 때 유용합니다).</p>
+
+<p>또한, 위 샘플은 작업 모드가 소멸될 때 {@code mActionMode} 변수를 null로
+설정한다는 점도 유의하십시오. 다음 단계에서는 액티비티나 프래그먼트의 구성원 변수를 초기화하고 저장하는 방법을 
+볼 수 있습니다.</p>
+</li>
+
+  <li>{@link android.app.Activity#startActionMode startActionMode()}를 호출하여
+{@link
+android.view.View}를 롱-클릭했을 경우와 같이 상황에 따라 상황별 작업 모드를 활성화합니다.</p>
+
+<pre>
+someView.setOnLongClickListener(new View.OnLongClickListener() {
+    // Called when the user long-clicks on someView
+    public boolean onLongClick(View view) {
+        if (mActionMode != null) {
+            return false;
+        }
+
+        // Start the CAB using the ActionMode.Callback defined above
+        mActionMode = getActivity().startActionMode(mActionModeCallback);
+        view.setSelected(true);
+        return true;
+    }
+});
+</pre>
+
+<p>{@link android.app.Activity#startActionMode startActionMode()}를 호출하면 시스템이
+생성된 {@link android.view.ActionMode}를 반환합니다. 이것을 구성원 변수에 저장하면 
+다른 이벤트에 대한 응답으로 상황별 작업 모음을 변경할 수 있습니다. 위 샘플에서
+{@link android.view.ActionMode}를 사용하여 {@link android.view.ActionMode} 인스턴스가 이미 활성화되었을 경우
+작업 모드를 시작하기 전에 구성원이 null인지 여부를 점검하여 
+해당 인스턴스가 재생성되지 않게 합니다.</p>
+</li>
+</ol>
+
+
+
+<h4 id="CABforListView">ListView 또는 GridView에서 일괄 상황별 작업 활성화</h4>
+
+<p>{@link android.widget.ListView} 또는 {@link
+android.widget.GridView}(또는 {@link android.widget.AbsListView}의 또 다른 확장)에 항목 컬렉션이 있고 
+사용자가 일괄 작업을 수행하도록 허용하려면 다음과 같이 해야 합니다.</p>
+
+<ul>
+  <li>{@link android.widget.AbsListView.MultiChoiceModeListener} 인터페이스를 구현하고 이를 
+{@link android.widget.AbsListView#setMultiChoiceModeListener
+setMultiChoiceModeListener()}가 있는 보기 그룹에 대해 설정합니다. 수신기 콜백 메서드에서 상황별 작업 모음에 대한 
+작업을 지정하고, 작업 항목에 대한 클릭 이벤트에 대응하고,
+{@link android.view.ActionMode.Callback} 인터페이스에서 상속한 다른 콜백을 처리할 수 있습니다.</li>
+
+  <li>{@link
+android.widget.AbsListView#CHOICE_MODE_MULTIPLE_MODAL} 인수로 {@link android.widget.AbsListView#setChoiceMode setChoiceMode()}를 호출합니다.</li>
+</ul>
+
+<p>예:</p>
+
+<pre>
+ListView listView = getListView();
+listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
+listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
+
+    &#64;Override
+    public void onItemCheckedStateChanged(ActionMode mode, int position,
+                                          long id, boolean checked) {
+        // Here you can do something when items are selected/de-selected,
+        // such as update the title in the CAB
+    }
+
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        // Respond to clicks on the actions in the CAB
+        switch (item.getItemId()) {
+            case R.id.menu_delete:
+                deleteSelectedItems();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate the menu for the CAB
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context, menu);
+        return true;
+    }
+
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        // Here you can make any necessary updates to the activity when
+        // the CAB is removed. By default, selected items are deselected/unchecked.
+    }
+
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        // Here you can perform updates to the CAB due to
+        // an {@link android.view.ActionMode#invalidate} request
+        return false;
+    }
+});
+</pre>
+
+<p>완료되었습니다. 이제 사용자가 롱-클릭하여 항목을 선택하면 시스템이 {@link
+android.widget.AbsListView.MultiChoiceModeListener#onCreateActionMode onCreateActionMode()}
+메서드를 호출하고 지정된 작업으로 상황별 작업 모음을 표시합니다. 상황별 작업 모음이 표시되는 동안
+사용자가 추가 항목을 선택할 수 있습니다.</p>
+
+<p>상황별 작업이 공통 작업 항목을 제공하는 몇몇 경우, 
+확인란이나 그와 비슷한 UI요소를 추가하여 사용자가 항목을 선택할 수 있도록 해주는 것이 좋습니다. 
+사용자가 롱-클릭 동작을 발견하지 못할 수도 있기 때문입니다. 사용자가 확인란을 선택하면 
+{@link android.widget.AbsListView#setItemChecked setItemChecked()}로 
+확인된 상태에 각 목록 항목을 설정하여 상황별 작업 모드를 호출할 수 있습니다.</p>
+
+
+
+
+<h2 id="PopupMenu">팝업 메뉴 만들기</h2>
+
+<div class="figure" style="width:220px">
+<img src="{@docRoot}images/ui/popupmenu.png" alt="" />
+<p><strong>그림 4.</strong> Gmail 앱의 팝업 메뉴는 오른쪽 위에 있는 더보기 
+버튼에 고정되어 있습니다.</p>
+</div>
+
+<p>{@link android.widget.PopupMenu}는 {@link android.view.View}에 고정된 모달 메뉴입니다.
+이것은 앵커 보기 아래에 공간이 있으면 아래에, 없으면 보기 위에 나타납니다. 이것은 다음과 같은 상황에 유용합니다.</p>
+<ul>
+  <li>특정 콘텐츠와 <em>관련된</em> 작업에 대한 더보기 스타일 메뉴를 제공합니다(예: 
+그림 4의 Gmail 이메일 헤더 등).
+    <p class="note"><strong>참고:</strong> 이것은 컨텍스트 메뉴와는 다릅니다. 컨텍스트 메뉴는 
+일반적으로 선택된 콘텐츠에 <em>영향을 미치는</em> 작업입니다. 선택된
+콘텐츠에 영향을 미치는 작업의 경우, <a href="#CAB">상황별 작업 모드</a> 또는 <a href="#FloatingContextMenu">부동 컨텍스트 메뉴</a>를 사용하십시오.</p></li>
+  <li>명령문의 두 번째 부분을 제공합니다(예: "추가"라고 표시된 버튼으로, 
+각기 다른 "추가" 옵션이 있는 팝업 메뉴를 발생시킵니다).</li>
+  <li>영구적인 선택이 포함되지 않은 {@link android.widget.Spinner}와 유사한 드롭다운을 제공합니다.
+</li>
+</ul>
+
+
+<p class="note"><strong>참고:</strong> {@link android.widget.PopupMenu}는 API
+레벨 11 이상에서 이용할 수 있습니다.</p>
+
+<p><a href="#xml">XML로 메뉴를 정의</a>하는 경우, 팝업 메뉴를 표시하는 방법은 다음과 같습니다.</p>
+<ol>
+  <li>자신의 생성자로 {@link android.widget.PopupMenu}를 인스턴트화합니다. 생성자는 
+현재 애플리케이션 {@link android.content.Context} 및 {@link android.view.View}를 
+메뉴를 고정시켜야 하는 곳에 가져갑니다.</li>
+  <li>{@link android.view.MenuInflater}를 사용하여{@link
+android.widget.PopupMenu#getMenu() PopupMenu.getMenu()}가 반환한 {@link
+android.view.Menu} 객체에 메뉴 리소스를 팽창합니다. API 레벨 14 이상에서는 이 대신 
+{@link android.widget.PopupMenu#inflate PopupMenu.inflate()}를 사용할 수 있습니다.</li>
+  <li>{@link android.widget.PopupMenu#show() PopupMenu.show()}를 호출합니다.</li>
+</ol>
+
+<p>예를 들어, 다음은 팝업 메뉴를 표시하는 {@link android.R.attr#onClick android:onClick} 속성이 
+있는 버튼입니다.</p>
+
+<pre>
+&lt;ImageButton
+    android:layout_width="wrap_content" 
+    android:layout_height="wrap_content" 
+    android:src="@drawable/ic_overflow_holo_dark"
+    android:contentDescription="@string/descr_overflow_button"
+    android:onClick="showPopup" />
+</pre>
+
+<p>그러면 액티비티가 이렇게 팝업 메뉴를 표시할 수 있습니다.</p>
+
+<pre>
+public void showPopup(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+    MenuInflater inflater = popup.getMenuInflater();
+    inflater.inflate(R.menu.actions, popup.getMenu());
+    popup.show();
+}
+</pre>
+
+<p>API 레벨 14 이상의 경우, {@link
+android.widget.PopupMenu#inflate PopupMenu.inflate()}로 메뉴를 팽창하는 두 개의 줄을 결합시킬 수 있습니다.</p>
+
+<p>사용자가 항목을 선택하거나 메뉴 영역 바깥쪽을 터치하면 이 메뉴는 
+무시됩니다. {@link
+android.widget.PopupMenu.OnDismissListener}를 사용하여 무시 이벤트를 수신 대기할 수 있습니다.</p>
+
+<h3 id="PopupEvents">클릭 이벤트 처리</h3>
+
+<p>사용자가 메뉴 항목을 선택할 때 작업을 수행하려면,{@link android.widget.PopupMenu#setOnMenuItemClickListener
+setOnMenuItemclickListener()}를 호출하여
+{@link
+android.widget.PopupMenu.OnMenuItemClickListener} 인터페이스를 구현하고 {@link
+android.widget.PopupMenu}를 등록합니다. 사용자가 항목을 선택하면 시스템이 인터페이스에서 {@link
+android.widget.PopupMenu.OnMenuItemClickListener#onMenuItemClick onMenuItemClick()} 콜백을
+호출합니다.</p>
+
+<p>예:</p>
+
+<pre>
+public void showMenu(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+
+    // This activity implements OnMenuItemClickListener
+    popup.setOnMenuItemClickListener(this);
+    popup.inflate(R.menu.actions);
+    popup.show();
+}
+
+&#64;Override
+public boolean onMenuItemClick(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.archive:
+            archive(item);
+            return true;
+        case R.id.delete:
+            delete(item);
+            return true;
+        default:
+            return false;
+    }
+}
+</pre>
+
+
+<h2 id="groups">메뉴 그룹 만들기</h2>
+
+<p>메뉴 그룹은 특정한 특성을 공유하는 메뉴 항목의 컬렉션입니다. 그룹으로 다음과 같은 작업을 
+할 수 있습니다.</p>
+<ul>
+  <li>{@link android.view.Menu#setGroupVisible(int,boolean)
+setGroupVisible()}로 모든 항목 표시 또는 숨기기</li>
+  <li>{@link android.view.Menu#setGroupEnabled(int,boolean)
+setGroupEnabled()}로 모든 항목 활성화 또는 비활성화</li>
+  <li>{@link
+android.view.Menu#setGroupCheckable(int,boolean,boolean) setGroupCheckable()}로 모든 항목이 확인 가능한지 여부 지정</li>
+</ul>
+
+<p>메뉴 리소스의 {@code &lt;group&gt;} 요소 안에 {@code &lt;item&gt;} 요소를 중첩시키거나
+{@link
+android.view.Menu#add(int,int,int,int) add()} 메서드로 그룹 ID를 지정하여 그룹을 생성할 수 있습니다.</p>
+
+<p>다음은 그룹을 포함하는 메뉴 리소스의 예시입니다.</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/menu_save"
+          android:icon="@drawable/menu_save"
+          android:title="@string/menu_save" /&gt;
+    &lt;!-- menu group --&gt;
+    &lt;group android:id="@+id/group_delete"&gt;
+        &lt;item android:id="@+id/menu_archive"
+              android:title="@string/menu_archive" /&gt;
+        &lt;item android:id="@+id/menu_delete"
+              android:title="@string/menu_delete" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>그룹에 있는 항목은 첫 항목과 같은 레벨에서 표시됩니다. 메뉴 안에 있는 세 가지 항목은 모두 
+형제입니다. 그러나 이 그룹에 있는 항목 두 개의 특성을 개발자가 수정할 수 있습니다. 
+그룹 ID를 참조하고 위에 나령된 메서드를 사용하면 됩니다. 시스템 또한 
+그룹화된 항목은 절대 분리하지 않습니다. 예를 들어, 각 항목에 대해 {@code
+android:showAsAction="ifRoom"}을 선언하면, 두 가지 모두 작업 모음에 나타나거나 
+작업 더보기에 나타납니다.</p>
+
+
+<h3 id="checkable">확인 가능한 메뉴 항목 사용</h3>
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/radio_buttons.png" height="333" alt="" />
+  <p class="img-caption"><strong>그림 5.</strong> 확인 가능한 
+항목이 있는 하위 메뉴의 스크린샷입니다.</p>
+</div>
+
+<p>메뉴는 옵션을 켜고 끄거나, 독립적 옵션에 대한 확인란으로 사용하거나, 
+상호 배타적인 옵션의 그룹에 대한 무선 버튼으로 사용하기 위한 인터페이스로 
+유용합니다. 그림 5는 무선 버튼이 있으며 확인 가능한 항목이 포함된 하위 메뉴를
+표시합니다.</p>
+
+<p class="note"><strong>참고:</strong> (옵션 메뉴의) 아이콘 메뉴의 메뉴 항목은 
+확인란이나 무선 버튼을 표시할 수 없습니다. 확인 가능한 아이콘 메뉴에서 항목을 만들기로 선택하는 경우, 
+상태가 변경될 때마다 아이콘 및/또는 텍스트를 교체하여 
+확인된 상태를 수동으로 나타내야 합니다.</p>
+
+<p>{@code &lt;item&gt;} 요소의 {@code
+android:checkable} 속성을 사용하여 개별 메뉴 항목에 대한 확인 가능한 동작을 정의하거나
+{@code &lt;group&gt;} 요소에서 {@code android:checkableBehavior} 속성으로 전체 그룹에 대한 확인 가능한 동작을 사용할 수 있습니다. 
+예를 들어, 이 메뉴 그룹의 모든 항목은 무선 버튼으로 확인할 수 있습니다.</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;group android:checkableBehavior="single"&gt;
+        &lt;item android:id="@+id/red"
+              android:title="@string/red" /&gt;
+        &lt;item android:id="@+id/blue"
+              android:title="@string/blue" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>{@code android:checkableBehavior} 속성은 다음 중 하나를 수락합니다.
+<dl>
+  <dt>{@code single}</dt>
+    <dd>그룹의 한 항목만 확인할 수 있습니다(무선 버튼).</dd>
+  <dt>{@code all}</dt>
+    <dd>모든 항목을 확인할 수 있습니다(확인란).</dd>
+  <dt>{@code none}</dt>
+    <dd>확인할 수 있는 항목이 없습니다.</dd>
+</dl>
+
+<p>{@code &lt;item&gt;} 요소의 {@code android:checked} 속성을 이용하여 항목에 기본 확인된 상태를 적용하고 
+{@link
+android.view.MenuItem#setChecked(boolean) setChecked()} 메서드로 코드 내에서 이를 변경할 수 있습니다.</p>
+
+<p>확인 가능한 항목이 선택되면, 시스템이 각 항목이 선택된 콜백 메서드를 호출합니다
+(예: {@link android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}). 바로 여기에서 
+확인란의 상태를 설정해야 합니다. 확인란이나 무선 버튼은 자신의 상태를 자동으로 
+변경하지 않기 때문입니다. 
+{@link android.view.MenuItem#isChecked()}로 항목의 현재 상태를 (사용자가 이를 선택하기 전 상태 그대로) 쿼리하고 그런 다음 
+{@link android.view.MenuItem#setChecked(boolean) setChecked()}로 확인된 상태를 설정할 수 있습니다. 예:</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.vibrate:
+        case R.id.dont_vibrate:
+            if (item.isChecked()) item.setChecked(false);
+            else item.setChecked(true);
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>이런 방식으로 확인된 상태를 설정하지 않으면, 사용자가 선택했을 때 항목의 가시적 상태(확인란 또는 무선 버튼)가
+변경되지 않습니다.
+ 상태를 설정할 경우, 액티비티는 항목의 확인된 상태를 보존해서
+사용자가 나중에 메뉴를 열었을 때 개발자가 설정한 확인된 상태가
+보이게 합니다.</p>
+
+<p class="note"><strong>참고:</strong>
+확인 가능한 메뉴 항목은 세션별 기준으로만 사용하도록 만들어져 있으며 애플리케이션이 소멸된 후에는 
+저장되지 않습니다. 사용자에 대해 저장하고자 하는 애플리케이션 설정이 있으면,
+<a href="{@docRoot}guide/topics/data/data-storage.html#pref">공유 기본 설정</a>으로 해당 데이터를 저장해야 합니다.</p>
+
+
+
+<h2 id="intents">인텐트에 기반한 메뉴 항목 추가</h2>
+
+<p>{@link android.content.Intent}를 이용하여
+액티비티를 시작하는 메뉴 항목을 원할 수도 있습니다(액티비티가 본인의 애플리케이션 안에 있는 것이든 또 다른 애플리케이션에 있는 것이든 무관합니다). 사용하고자 하는 인텐트를 알고 
+인텐트를 시작해야 하는 특정 메뉴 항목이 있을 경우,
+항목에 대해 선택된 적절한 콜백 메서드에서 {@link android.app.Activity#startActivity(Intent) startActivity()}가 
+포함된 인텐트를 실행합니다(예: {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} 콜백).</p>
+
+<p>그러나 사용자 기기에 
+해당 인텐트를 처리하는 애플리케이션이 있는지 모르는 경우, 이를 호출하는 메뉴 항목을 추가하면
+해당 인텐트가 액티비티에 대해 확인되지 못해서 메뉴 항목이 기능하지 못할 수도 있습니다.
+ 이것을 해결하기 위해 Android는 개발자가 동적으로 자신의 메뉴에 메뉴 항목을 추가할 수 있도록 허용합니다. 
+이는 Android가 기기에서 개발자의 인텐트를 처리하는 액티비티를 찾을 경우에 해당됩니다.</p>
+
+<p>인텐트를 수락하는 이용 가능한 액티비티에 기반하여 메뉴 항목을 추가하려면 다음과 같이 합니다.</p>
+<ol>
+  <li>
+카테고리 {@link android.content.Intent#CATEGORY_ALTERNATIVE} 및/또는
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE}, 기타 요구 사항으로 인텐트를 정의합니다.</li>
+  <li>{@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+Menu.addIntentOptions()}을 호출합니다. 그러면 Android가 인텐트를 수행하는 애플리케이션을 검색하고 
+이들을 개발자의 메뉴에 추가합니다.</li>
+</ol>
+
+<p>인텐트를 만족하는 애플리케이션이 설치되어 있지 않으면, 
+메뉴 항목이 추가되지 않습니다.</p>
+
+<p class="note"><strong>참고:</strong>
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} 를 사용하여 화면에서 현재 선택된 
+요소를 처리합니다. 그러므로 이것은 {@link
+android.app.Activity#onCreateContextMenu(ContextMenu,View,ContextMenuInfo)
+onCreateContextMenu()}에서 메뉴를 생성할 때만 사용해야 합니다.</p>
+
+<p>예:</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu){
+    super.onCreateOptionsMenu(menu);
+
+    // Create an Intent that describes the requirements to fulfill, to be included
+    // in our menu. The offering app must include a category value of Intent.CATEGORY_ALTERNATIVE.
+    Intent intent = new Intent(null, dataUri);
+    intent.addCategory(Intent.CATEGORY_ALTERNATIVE);
+
+    // Search and populate the menu with acceptable offering applications.
+    menu.addIntentOptions(
+         R.id.intent_group,  // Menu group to which new items will be added
+         0,      // Unique item ID (none)
+         0,      // Order for the items (none)
+         this.getComponentName(),   // The current activity name
+         null,   // Specific items to place first (none)
+         intent, // Intent created above that describes our requirements
+         0,      // Additional flags to control items (none)
+         null);  // Array of MenuItems that correlate to specific items (none)
+
+    return true;
+}</pre>
+
+<p>정의된 인텐트와 일치하는 인텐트 필터를 제공하는 것으로 발견된 각 액티비티에
+인텐트 필터의 <code>android:label</code>를
+메뉴 항목 제목으로, 애플리케이션 아이콘을 메뉴 항목 아이콘으로 사용하여 메뉴 항목을 추가합니다. 
+{@link android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} 메서드는 추가된 메뉴 항목 개수를 반환합니다.</p>
+
+<p class="note"><strong>참고:</strong> {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()}을 호출할 때 첫 번째 인수에서 지정된 메뉴 그룹이 모든 메뉴 항목을
+재정의합니다.</p>
+
+
+<h3 id="AllowingToAdd">다른 메뉴에 액티비티 추가 허용</h3>
+
+<p>본인의 액티비티의 서비스를 다른 애플리케이션에 제공하여 다른 
+애플리케이션의 메뉴에 본인의 애플리케이션이 추가되도록 할 수도 있습니다(위에서 설명한 것과 역할이 반대입니다).</p>
+
+<p>다른 애플리케이션 메뉴에 추가되려면, 인텐트 필터는 평소와 같이 
+정의해야 하지만, 인텐트 필터 카테고리에 {@link android.content.Intent#CATEGORY_ALTERNATIVE}
+및/또는{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} 값을
+반드시 포함해야 합니다. 예:</p>
+<pre>
+&lt;intent-filter label="&#64;string/resize_image">
+    ...
+    &lt;category android:name="android.intent.category.ALTERNATIVE" />
+    &lt;category android:name="android.intent.category.SELECTED_ALTERNATIVE" />
+    ...
+&lt;/intent-filter>
+</pre>
+
+<p>인텐트 필터 작성에 관한 자세한 내용은 
+<a href="/guide/components/intents-filters.html">인텐트와 인텐트 필터</a> 문서를 참조하십시오.</p>
+
+<p>이 기법을 사용하는 샘플 애플리케이션은 
+<a href="{@docRoot}resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html">Note
+Pad</a> 샘플 코드를 참조하십시오.</p>
diff --git a/docs/html-intl/intl/ko/guide/topics/ui/notifiers/notifications.jd b/docs/html-intl/intl/ko/guide/topics/ui/notifiers/notifications.jd
new file mode 100644
index 0000000..db55424
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/ui/notifiers/notifications.jd
@@ -0,0 +1,979 @@
+page.title=알림
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>이 문서의 내용</h2>
+<ol>
+  <li><a href="#Design">디자인 고려 사항</a></li>
+  <li><a href="#CreateNotification">알림 생성</a>
+    <ol>
+      <li><a href="#Required">필수 알림 콘텐츠</a></li>
+      <li><a href="#Optional">선택적 알림 콘텐츠 및 설정</a></li>
+      <li><a href="#Actions">알림 작업</a></li>
+      <li><a href="#Priority">알림 우선 순위</a></li>
+      <li><a href="#SimpleNotification">단순 알림 만들기</a></li>
+      <li><a href="#ApplyStyle">알림에 확장 레이아웃 적용</a></li>
+      <li><a href="#Compatibility">처리 호환성</a></li>
+    </ol>
+  </li>
+  <li><a href="#Managing">알림 관리</a>
+    <ol>
+      <li><a href="#Updating">알림 업데이트</a></li>
+      <li><a href="#Removing">알림 제거</a></li>
+    </ol>
+  </li>
+  <li><a href="#NotificationResponse">액티비티를 시작할 때 탐색 보존</a>
+    <ol>
+      <li><a href="#DirectEntry">정규 액티비티 PendingIntent 설정</a></li>
+      <li><a href="#ExtendedNotification">특수 액티비티 PendingIntent 설정</a></li>
+    </ol>
+  </li>
+  <li><a href="#Progress">알림에서 진행 상태 표시</a>
+    <ol>
+      <li><a href="#FixedProgress">고정 기간 진행 상태 표시기 표시</a></li>
+      <li><a href="#ActivityIndicator">지속적 액티비티 표시기 표시</a></li>
+    </ol>
+  </li>
+  <li><a href="#metadata">알림 메타데이터</a></li>
+  <li><a href="#Heads-up">헤드업 알림</a></li>
+  <li><a href="#lockscreenNotification">잠금 화면 알림</a></li>
+    <ol>
+      <li><a href="#visibility">가시성 설정</a></li>
+      <li><a href="#controllingMedia">잠금 화면에서 미디어 재생 제어</a></li>
+    </ol>
+  <li><a href="#CustomNotification">사용자 지정 알림 레이아웃</a></li>
+</ol>
+
+    <h2>Key 클래스</h2>
+    <ol>
+        <li>{@link android.app.NotificationManager}</li>
+        <li>{@link android.support.v4.app.NotificationCompat}</li>
+    </ol>
+    <h2>비디오</h2>
+    <ol>
+        <li>
+            <a href="http://www.youtube.com/watch?v=Yc8YrVc47TI&amp;feature=player_detailpage#t=1672s">
+            4.1의 알림</a>
+        </li>
+    </ol>
+<h2>참고 항목</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}design/patterns/notifications.html">Android 디자인: 알림</a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    알림은 애플리케이션의 정상 UI 외부에서 사용자에게 표시할 수 있는 메시지입니다.
+시스템에 알림을 실행하라고 명령하면
+처음에 <strong>알림 영역</strong>에서 아이콘으로 나타납니다. 알림 세부 정보를 보려면 사용자는
+<strong>알림 창</strong>을 열어야 합니다. 알림 영역과 알림 창은
+사용자가 언제든 볼 수 있는, 시스템이 제어하는 영역입니다.
+</p>
+<img id="figure1" src="{@docRoot}images/ui/notifications/notification_area.png" height="" alt="" />
+<p class="img-caption">
+    <strong>그림 1.</strong> 알림 영역에 있는 알림입니다.
+</p>
+<img id="figure2" src="{@docRoot}images/ui/notifications/notification_drawer.png" width="280px" alt="" />
+<p class="img-caption">
+    <strong>그림 2.</strong> 알림 창에 있는 알림입니다.
+</p>
+
+<p class="note"><strong>참고:</strong> 따로 언급된 부분을 제외하고 이 가이드는 
+버전 4 <a href="{@docRoot}tools/support-library/index.html">지원 라이브러리</a>의 {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} 클래스를 
+참조합니다.
+클래스 {@link android.app.Notification.Builder Notification.Builder}는 Android
+3.0(API 레벨 11)에 추가되었습니다.</p>
+
+<h2 id="Design">디자인 고려 사항</h2>
+
+<p>Android 사용자 인터페이스의 중요한 부분인 알림에는 자체적인 디자인 지침이 있습니다.
+Android 5.0(API 레벨 21)부터 도입된 머티어리얼 디자인 변경 사항은
+특히 중요하며, 자세한 정보를 보려면 <a href="{@docRoot}training/material/index.html">재료 디자인</a>
+교육을 검토해야 합니다. 알림과 그 상호작용을 디자인하는 방법을 알아보려면
+<a href="{@docRoot}design/patterns/notifications.html">알림</a> 디자인 가이드를 읽어보십시오.</p>
+
+<h2 id="CreateNotification">알림 생성</h2>
+
+<p>
+{@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} 개체에서 알림에 대한 UI 정보와 작업을 지정합니다.
+알림 자체를 생성하려면
+{@link android.support.v4.app.NotificationCompat.Builder#build NotificationCompat.Builder.build()}를 호출합니다.
+이는 사양이 포함된 {@link android.app.Notification} 객체를 반환합니다. 알림을 발행하려면
+
+{@link android.app.NotificationManager#notify NotificationManager.notify()}를 호출해서 시스템에 {@link android.app.Notification} 객체를 전달합니다.</p>
+
+<h3 id="Required">필수 알림 콘텐츠</h3>
+<p>
+    {@link android.app.Notification} 객체는 다음을 <em>반드시</em> 포함해야 합니다.
+</p>
+<ul>
+    <li>
+        
+{@link android.support.v4.app.NotificationCompat.Builder#setSmallIcon setSmallIcon()}이 설정한 작은 아이콘
+    </li>
+    <li>
+        
+{@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()}이 설정한 제목
+    </li>
+    <li>
+        
+{@link android.support.v4.app.NotificationCompat.Builder#setContentText setContentText()}이 설정한 세부 텍스트
+    </li>
+</ul>
+<h3 id="Optional">선택적 알림 콘텐츠 및 설정</h3>
+<p>
+    다른 모든 알림 설정 및 콘텐츠는 선택 사항입니다. 이들에 관해 자세히 알아보려면
+{@link android.support.v4.app.NotificationCompat.Builder}의 참조 문서를 참조하십시오.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Actions">알림 작업</h3>
+<p>
+    선택 항목이기는 하지만 알림에 작업을 하나 이상 추가해야 합니다.
+    작업은 사용자가 알림에서 
+애플리케이션의 {@link android.app.Activity}로 바로 갈 수 있게 하고, 여기에서 사용자는 하나 이상의 이벤트를 보거나 
+더 많은 작업을 할 수 있습니다.
+</p>
+<p>
+    하나의 알림은 여러 개의 작업을 제공할 수 있습니다. 사용자가 알림을 클릭했을 때 트리거되는 작업을 항상 정의해야 합니다.
+일반적으로 작업은
+애플리케이션의 {@link android.app.Activity}를 엽니다. 또한, 알람 다시 알림이나 텍스트 메시지에 즉시 답장 등과 같은 추가 작업을 수행하는
+알림 버튼을 추가할 수 있습니다.
+이 기능은 Android 4.1부터 사용할 수 있습니다. 추가 작업 버튼을 사용할 경우, 
+앱의 {@link android.app.Activity}에서 해당 기능을 사용할 수 있게 해야 합니다. 
+자세한 정보는 <a href="#Compatibility">처리 호환성</a> 섹션을 참조하십시오.
+</p>
+<p>
+    {@link android.app.Notification}에서 작업 자체는 
+애플리케이션에서 {@link android.app.Activity}를 시작하는 
+{@link android.content.Intent}가 포함된 
+{@link android.app.PendingIntent}가 정의합니다. 
+{@link android.app.PendingIntent}를 동작과 연관시키려면
+{@link android.support.v4.app.NotificationCompat.Builder}의 적절한 메서드를 호출합니다. 예를 들어,
+사용자가 알림 창의 알림 텍스트를 클릭했을 때 {@link android.app.Activity}를 시작하려면,
+
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()}를 호출하여 {@link android.app.PendingIntent}를 추가합니다.
+</p>
+<p>
+    사용자가 알림을 클릭했을 때 {@link android.app.Activity}를 시작하는 동작이 가장 보편적인 작업
+시나리오입니다. 또한, 사용자가 알림을 무시했을 때 {@link android.app.Activity}를 
+시작할 수도 있습니다. Android 4.1 이후부터는 
+{@link android.app.Activity}를 작업 버튼에서 시작할 수 있습니다. 자세한 내용을 알아보려면
+{@link android.support.v4.app.NotificationCompat.Builder} 참조 가이드를 읽어보십시오.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Priority">알림 우선 순위</h3>
+<p>
+    원한다면, 알림에 우선 순위를 설정할 수 있습니다. 우선 순위는 
+기기 UI에 알림 표시 방식을 암시하는 역할을 합니다.
+    알림 우선 순위를 설정하려면, {@link
+android.support.v4.app.NotificationCompat.Builder#setPriority(int)
+NotificationCompat.Builder.setPriority()}를 호출하고 {@link
+android.support.v4.app.NotificationCompat} 우선 순위 상수 중 하나에 전달합니다. 
+우선 순위 수준은 {@link
+android.support.v4.app.NotificationCompat#PRIORITY_MIN}(-2)에서 {@link
+android.support.v4.app.NotificationCompat#PRIORITY_MAX}(2)까지 다섯 개가 있습니다. 별도의 설정이 없을 경우,
+우선 순위 기본값은 {@link
+android.support.v4.app.NotificationCompat#PRIORITY_DEFAULT}(0)으로 설정됩니다.
+</p>
+<p> 적절한 우선 순위 수준 설정에 관한 정보는 <a href="{@docRoot}design/patterns/notifications.html">알림</a> 디자인 가이드에서 "알림 우선 순위 올바르게 설정하고 관리하기"를
+참조하십시오.
+
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="SimpleNotification">단순 알림 만들기</h3>
+<p>
+    다음 조각은 사용자가 알림을 클릭하면 알리는 
+액티비티를 지정하는 단순한 알림을 나타냅니다. 이 코드는
+{@link android.support.v4.app.TaskStackBuilder} 객체를 생성하고 이를 사용하여 
+해당 작업의 {@link android.app.PendingIntent}를 생성합니다. 이 패턴은 
+<a href="#NotificationResponse">
+액티비티를 시작할 때 탐색 보존</a> 섹션에서 자세히 설명합니다.
+</p>
+<pre>
+NotificationCompat.Builder mBuilder =
+        new NotificationCompat.Builder(this)
+        .setSmallIcon(R.drawable.notification_icon)
+        .setContentTitle("My notification")
+        .setContentText("Hello World!");
+// Creates an explicit intent for an Activity in your app
+Intent resultIntent = new Intent(this, ResultActivity.class);
+
+// The stack builder object will contain an artificial back stack for the
+// started Activity.
+// This ensures that navigating backward from the Activity leads out of
+// your application to the Home screen.
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack for the Intent (but not the Intent itself)
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent that starts the Activity to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(
+            0,
+            PendingIntent.FLAG_UPDATE_CURRENT
+        );
+mBuilder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// mId allows you to update the notification later on.
+mNotificationManager.notify(mId, mBuilder.build());
+</pre>
+<p>완료되었습니다. 이제 사용자에게 알림이 전달되었습니다.</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ApplyStyle">알림에 확장 레이아웃 적용</h3>
+<p>
+    확장된 보기에 알림을 나타나게 하려면, 
+먼저 원하는 일반 보기 옵션으로 {@link android.support.v4.app.NotificationCompat.Builder} 객체를
+생성합니다. 다음에는 확장된 레이아웃 객체의 인수로 {@link android.support.v4.app.NotificationCompat.Builder#setStyle
+Builder.setStyle()}을 호출합니다.
+</p>
+<p>
+    확장 알림은 Android 4.1 이전 플랫폼에서 사용할 수 없다는 것을 명심하십시오. 
+Android 4.1 이하 플랫폼에서 알림을 처리하는 방법은
+<a href="#Compatibility">처리 호환성</a> 섹션을 참조하십시오.
+</p>
+<p>
+    예를 들어, 다음 코드 조각은
+이전 조각에서 생성된 알림을 변경하여 확장 레이아웃을 사용하는 방법을 나타냅니다.
+</p>
+<pre>
+NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
+    .setSmallIcon(R.drawable.notification_icon)
+    .setContentTitle("Event tracker")
+    .setContentText("Events received")
+NotificationCompat.InboxStyle inboxStyle =
+        new NotificationCompat.InboxStyle();
+String[] events = new String[6];
+// Sets a title for the Inbox in expanded layout
+inboxStyle.setBigContentTitle("Event tracker details:");
+...
+// Moves events into the expanded layout
+for (int i=0; i &lt; events.length; i++) {
+
+    inboxStyle.addLine(events[i]);
+}
+// Moves the expanded layout object into the notification object.
+mBuilder.setStyle(inBoxStyle);
+...
+// Issue the notification here.
+</pre>
+
+<h3 id="Compatibility">처리 호환성</h3>
+
+<p>
+    
+알림 기능을 설정하는 메서드가
+지원 라이브러리 클래스 {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}에 있더라도 모든 알림 기능을 특정 버전에서 사용할 수 있는 것은 아닙니다.
+    예를 들어, 확장 알림에 따라 달라지는 작업 버튼은 Android
+4.1 이상에만 나타납니다. 확장 알림 자체를
+Android 4.1 이상에서만 이용할 수 있기 때문입니다.
+</p>
+<p>
+    최상의 호환성을 보장하기 위해
+알림은 {@link android.support.v4.app.NotificationCompat NotificationCompat}와 하위 클래스,
+특히 {@link android.support.v4.app.NotificationCompat.Builder
+NotificationCompat.Builder}를 이용해서 알림을 생성합니다. 또한, 알림을 구현할 때 이 절차를 따릅니다.
+</p>
+<ol>
+    <li>
+        사용하는 버전에 관계없이
+모든 사용자에게 모든 알림 기능을 제공합니다. 이를 위해서
+앱의 {@link android.app.Activity}에서 모든 기능을 이용할 수 있는지 검증합니다. 그러려면
+새로운 {@link android.app.Activity}를 추가해야 할 수도 있습니다.
+        <p>
+            예를 들어,
+여러분이{@link android.support.v4.app.NotificationCompat.Builder#addAction addAction()}을 사용하여
+미디어 재생을 중지하고 시작하는 제어를 제공하고 싶다면
+먼저 앱의 {@link android.app.Activity}에 이 제어를 구현합니다.
+        </p>
+    </li>
+    <li>
+        사용자가 알림을 클릭하면 알림을 시작시키는 방식으로 모든 사용자에게 {@link android.app.Activity}에서 알림 기능을
+사용할 수 있게 합니다. 이를 위해,
+
+{@link android.app.Activity}를 위한 {@link android.app.PendingIntent}를 생성합니다. 
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+setContentIntent()}를 호출하여 알림에 {@link android.app.PendingIntent}를 추가합니다.
+    </li>
+    <li>
+        이제 알림에서 사용하고자 하는 확장 알림 기능을 추가합니다. 또한, 사용자가 알림을 클릭하면 시작되는
+{@link android.app.Activity}에서 개발자가 추가한 모든 기능을 
+사용할 수 있어야 합니다.
+    </li>
+</ol>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Managing">알림 관리</h2>
+<p>
+    같은 유형의 이벤트에서 알림을 여러 번 발행해야 할 경우, 
+완전히 새로운 알림을 만드는 것은 삼가야 합니다. 대신, 일부 값을 변경하거나 추가하거나, 두 가지 조치를 모두 취하여
+이전 알림을 업데이트하는 것이 좋습니다.
+</p>
+<p>
+    예를 들어, Gmail은 읽지 않은 메시지 개수를 올리고 각 이메일의 요약을 알림에 추가하여
+새 이메일 도착을 알립니다. 이것을 일명 
+알림을 "쌓는다"고 하며, 이는 
+<a href="{@docRoot}design/patterns/notifications.html">알림</a> 디자인 가이드에 자세히 설명되어 있습니다.
+</p>
+<p class="note">
+    <strong>참고:</strong> 이 Gmail 기능에는 "받은편지함" 확장 레이아웃이 필요한데, 
+이것은 Android 4.1부터 이용할 수 있는 확장 알림 기능의 일부입니다.
+</p>
+<p>
+    다음 섹션은 알림 업데이트 방법과 삭제 방법을 설명합니다.
+</p>
+<h3 id="Updating">알림 업데이트</h3>
+<p>
+    알림이 업데이트되도록 설정하려면,
+{@link android.app.NotificationManager#notify(int, android.app.Notification) NotificationManager.notify()}를 호출하여 알림 ID와 함께 발행합니다.
+    알림을 발행한 후에 업데이트하려면, 
+{@link android.support.v4.app.NotificationCompat.Builder} 객체를 업데이트하거나 생성하고, 
+{@link android.app.Notification} 객체를 구축하고, 
+이전에 사용한 것과 같은 ID로 {@link android.app.Notification}을 발행합니다. 이전 알림이 
+여전히 표시되는 경우, 시스템은
+{@link android.app.Notification} 객체의 콘텐츠에서 알림을 업데이트합니다. 이전 알림을 무시할 경우, 
+대신 새로운 알림이 생성됩니다.
+</p>
+<p>
+    다음 코드 조각은 발생한 이벤트 개수를 반영하여 
+업데이트된 알림을 나타낸 것입니다. 이것은 알림을 쌓아 요약을 표시합니다.
+</p>
+<pre>
+mNotificationManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Sets an ID for the notification, so it can be updated
+int notifyID = 1;
+mNotifyBuilder = new NotificationCompat.Builder(this)
+    .setContentTitle("New Message")
+    .setContentText("You've received new messages.")
+    .setSmallIcon(R.drawable.ic_notify_status)
+numMessages = 0;
+// Start of a loop that processes data and then notifies the user
+...
+    mNotifyBuilder.setContentText(currentText)
+        .setNumber(++numMessages);
+    // Because the ID remains unchanged, the existing notification is
+    // updated.
+    mNotificationManager.notify(
+            notifyID,
+            mNotifyBuilder.build());
+...
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Removing">알림 제거</h3>
+<p>
+    알림은 다음 중 하나가 발생할 때까지 계속 표시된 상태로 유지됩니다.
+</p>
+<ul>
+    <li>
+        사용자가 개별적으로 삭제하거나 "모두 삭제"를 사용하여 알림을 무시합니다(
+알림을 지울 수 있는 경우).
+    </li>
+    <li>
+        사용자가 알림을 클릭하고, 알림을 생성했을 때
+{@link android.support.v4.app.NotificationCompat.Builder#setAutoCancel setAutoCancel()} 을 호출했을 경우입니다.
+
+    </li>
+    <li>
+        특정 알림 ID에 대해 {@link android.app.NotificationManager#cancel(int) cancel()}을 호출합니다.
+이 메서드도 현재 진행 중인 알림을 삭제합니다.
+    </li>
+    <li>
+        {@link android.app.NotificationManager#cancelAll() cancelAll()}을 호출합니다. 
+이것은 이전에 발행한 알림을 모두 제거합니다.
+    </li>
+</ul>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="NotificationResponse">액티비티를 시작할 때 탐색 보존</h2>
+<p>
+    알림에서 {@link android.app.Activity}를 시작할 때는 사용자의 예상 탐색 경험을 
+보존해야 합니다. <i>'뒤로'를 클릭하면</i> 사용자를 애플리케이션의 정상 작업 흐름을 거쳐 메인 스크린으로 보내고, 
+ <i>'최근'을 클릭하면</i> 
+{@link android.app.Activity}를 별개의 작업으로 표시합니다. 탐색 경험을 보존하려면
+새 작업에서 {@link android.app.Activity}를 시작해야 합니다. 새로운 작업을 부여하기 위한
+{@link android.app.PendingIntent} 설정 방법은 시작하는
+{@link android.app.Activity}의 성격에 따라 달라집니다. 여기에는 두 가지 일반적인 상황이 있습니다.
+</p>
+<dl>
+    <dt>
+        정규 액티비티
+    </dt>
+    <dd>
+        애플리케이션의 정상적 작업 흐름의 일부인 {@link android.app.Activity}를 
+시작합니다. 이 상황에서 {@link android.app.PendingIntent}를 설정하여
+새 작업을 시작하고 애플리케이션의
+정상적인 <i>'뒤로' </i>동작을 재현하는 백 스택으로 {@link android.app.PendingIntent}를 제공합니다.
+        <p>
+            Gmail 앱에서 보낸 알림이 이것을 잘 보여줍니다. 하나의 이메일 메시지에 대한 
+알림을 클릭하면 메시지 자체를 보게 됩니다. <b>뒤로</b>를 터치하면 
+알림에서 들어간 것이 아니라 메인 스크린에서
+Gmail에 들어간 것처럼 Gmail을 통해 메인 스크린으로 돌아갑니다.
+        </p>
+        <p>
+            이것은 알림을 터치하기만 하면 어느 애플리케이션에 있든 관계 없이 발생하는 
+일입니다. 예를 들어, Gmail에서 메시지를 작성하다가 
+한 이메일에 대한 알림을 클릭하면 해당 이메일로 바로 이동합니다. <i>뒤로</i>
+를 터치하면
+작성 중인 메시지가 아니라 받은편지함과 메인 스크린으로 돌아갑니다.
+        </p>
+    </dd>
+    <dt>
+        특수 액티비티
+    </dt>
+    <dd>
+        {@link android.app.Activity}가 알림에서 시작될 경우 사용자에게는 이것만 보입니다.
+        {@link android.app.Activity}는 알림 자체에서 표시하기 어려운 정보를 제공하므로 
+어떤 면에서는 알림을 확장하는 셈입니다. 이 상황에서는, 
+{@link android.app.PendingIntent}를 설정하고 새로운 작업에서 시작합니다. 
+시작된 {@link android.app.Activity}는 
+애플리케이션 액티비티 흐름의 일부가 아니므로 백 스택을 생성하지 않아도 됩니다. <i>뒤로</i>를 클릭하면 사용자는 여전히 
+메인 스크린으로 돌아갑니다.
+    </dd>
+</dl>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="DirectEntry">정규 액티비티 PendingIntent 설정</h3>
+<p>
+    직접 진입 
+{@link android.app.Activity}를 시작하는 {@link android.app.PendingIntent}를 설정하려면 다음과 같은 단계를 따르십시오.
+</p>
+<ol>
+    <li>
+        매니페스트에서 애플리케이션의 {@link android.app.Activity} 계층을 정의합니다.
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Android 4.0.3 이전에 대한 지원을 추가합니다. 이렇게 하려면 
+
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+요소를
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>의 하위 요소로 추가하여 개발자가 시작하는 {@link android.app.Activity}의 상위 요소를 지정합니다.
+                <p>
+                    이 요소의 경우,
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a>="android.support.PARENT_ACTIVITY"</code>를 설정합니다.
+                    <code>&lt;parent_activity_name&gt;</code>가
+상위 요소 <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+에 대한
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a></code>의 값인
+
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#val">android:value</a>="&lt;parent_activity_name&gt;"</code>
+를 시작합니다. 다음 XML을 예시로 참조하십시오.
+                </p>
+            </li>
+            <li>
+                Android 4.1 이후에 대한 지원도 추가합니다. 이렇게 하려면 개발자가 시작하는 {@link android.app.Activity}의
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ 요소에
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#parent">android:parentActivityName</a></code>
+속성을 추가합니다.
+            </li>
+        </ol>
+        <p>
+            최종 XML은 이런 모습을 띠는 것이 정상입니다.
+        </p>
+<pre>
+&lt;activity
+    android:name=".MainActivity"
+    android:label="&#64;string/app_name" &gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+&lt;activity
+    android:name=".ResultActivity"
+    android:parentActivityName=".MainActivity"&gt;
+    &lt;meta-data
+        android:name="android.support.PARENT_ACTIVITY"
+        android:value=".MainActivity"/&gt;
+&lt;/activity&gt;
+</pre>
+    </li>
+    <li>
+        {@link android.app.Activity}를 시작하는 {@link android.content.Intent}에 기초하여
+백 스택을 생성합니다.
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                {@link android.content.Intent}를 생성하여 {@link android.app.Activity}를 생성합니다.
+            </li>
+            <li>
+                {@link android.app.TaskStackBuilder#create
+TaskStackBuilder.create()}를 호출하여 스택 빌더를 생성합니다.
+            </li>
+            <li>
+                
+{@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}을 호출하여 스택 빌더를 백 스택에 추가합니다.
+                매니페스트에서 정의한 계층의 각 {@link android.app.Activity}의 경우,
+백 스택에
+{@link android.app.Activity}를 시작하는 {@link android.content.Intent} 객체가 포함됩니다. 이 메서드는 새로운 작업에서 
+스택을 시작하는 플래그도 추가합니다.
+                <p class="note">
+                    <strong>참고:</strong> 
+{@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}에 대한 인수가
+시작된 {@link android.app.Activity}의 참조이기는 하지만, 이 메서드 호출은 
+
+{@link android.app.Activity}를 시작하는 {@link android.content.Intent}를 추가하지 않습니다. 대신, 그 부분은 다음 단계에서 해결합니다.
+                </p>
+            </li>
+            <li>
+                
+{@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}를 호출하여 {@link android.app.Activity}를 시작하는 {@link android.content.Intent}를 
+추가합니다.
+                첫 번째 단계에서 생성한 {@link android.content.Intent}를
+
+{@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}에 대한 인수로 전달합니다.
+            </li>
+            <li>
+                필요할 경우 
+{@link android.support.v4.app.TaskStackBuilder#editIntentAt
+TaskStackBuilder.editIntentAt()}을 호출하여 스택에서{@link android.content.Intent} 객체에 대한 인수를 추가합니다. 이것은 사용자가
+
+<i>'뒤로'</i>를 사용하여 탐색할 때 대상{@link android.app.Activity}가 의미 있는 데이터를 표시하도록 보장하기 위해 때때로 필요한 절차입니다.
+            </li>
+            <li>
+                이 백 스택에 대한 {@link android.app.PendingIntent}를 가져옵니다. 이때 
+{@link android.support.v4.app.TaskStackBuilder#getPendingIntent getPendingIntent()}를 호출하는 방법을 씁니다.
+                그러면 이 {@link android.app.PendingIntent}를 
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+setContentIntent()}에 대한 인수로 사용할 수 있습니다.
+            </li>
+        </ol>
+     </li>
+</ol>
+<p>
+    다음 코드 조각은 이 과정을 나타낸 것입니다.
+</p>
+<pre>
+...
+Intent resultIntent = new Intent(this, ResultActivity.class);
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+// Gets a PendingIntent containing the entire back stack
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
+...
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+builder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mNotificationManager.notify(id, builder.build());
+</pre>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ExtendedNotification">특수 액티비티 PendingIntent 설정</h3>
+<p>
+    다음 섹션에서는 특수 액티비티 
+{@link android.app.PendingIntent}를 설정하는 법을 설명합니다.
+</p>
+<p>
+    특수 {@link android.app.Activity}에는 백 스택이 필요하지 않습니다. 따라서 매니페스트에서 이것의 
+{@link android.app.Activity} 계층을 정의하지 않아도 되고, 
+백 스택을 구축하기 위해 
+{@link android.support.v4.app.TaskStackBuilder#addParentStack  addParentStack()}을 
+호출하지 않아도 됩니다. 대신 매니페스트를 사용하여 {@link android.app.Activity} 작업 옵션을 설정하고, 
+{@link android.app.PendingIntent}를 생성하십시오. 이때 
+{@link android.app.PendingIntent#getActivity getActivity()}를 호출하는 방법을 씁니다.
+</p>
+<ol>
+    <li>
+        매니페스트에서 다음 속성을 {@link android.app.Activity}에 대한 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+요소에 추가합니다.
+        <dl>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">android:name</a>="<i>activityclass</i>"</code>
+            </dt>
+            <dd>
+                액티비티의 완전히 정규화된 클래스 이름입니다.
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">android:taskAffinity</a>=""</code>
+            </dt>
+            <dd>
+                이것은 개발자가 코드에서 설정하는 
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK} 플래그와 더불어 
+이 {@link android.app.Activity}가 
+애플리케이션의 기본 작업으로 들어가지 않게 보장합니다. 애플리케이션의 기본 유사성을 
+가지고 있는 기존 작업은 모두 영향을 받지 않습니다.
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">android:excludeFromRecents</a>="true"</code>
+            </dt>
+            <dd>
+                새 작업을 <i>최근</i>에서 배제하여 사용자가 우연히
+이곳으로 다시 이동하지 못하게 합니다.
+            </dd>
+        </dl>
+        <p>
+            이 조각은 해당 요소를 나타낸 것입니다.
+        </p>
+<pre>
+&lt;activity
+    android:name=".ResultActivity"
+...
+    android:launchMode="singleTask"
+    android:taskAffinity=""
+    android:excludeFromRecents="true"&gt;
+&lt;/activity&gt;
+...
+</pre>
+    </li>
+    <li>
+        알림을 구축 및 발행합니다.
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                
+{@link android.app.Activity}를 시작하는 {@link android.content.Intent}를 생성합니다.
+            </li>
+            <li>
+                {@link android.app.Activity}가 새로운, 빈 작업에서 시작되도록 설정합니다. 이때 
+{@link android.content.Intent#setFlags setFlags()}를 
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK}
+ 및 
+{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TASK FLAG_ACTIVITY_CLEAR_TASK} 플래그와 함께 호출하면 됩니다.
+            </li>
+            <li>
+                {@link android.content.Intent}에 필요한 다른 모든 옵션을 설정합니다.
+            </li>
+            <li>
+                {@link android.app.PendingIntent}를 {@link android.content.Intent}로부터 
+생성합니다. 이때 {@link android.app.PendingIntent#getActivity getActivity()}를 호출하면 됩니다.
+                그러면 이 {@link android.app.PendingIntent}를 
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+setContentIntent()}에 대한 인수로 사용할 수 있습니다.
+            </li>
+        </ol>
+    <p>
+        다음 코드 조각은 이 과정을 나타낸 것입니다.
+    </p>
+<pre>
+// Instantiate a Builder object.
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+// Creates an Intent for the Activity
+Intent notifyIntent =
+        new Intent(this, ResultActivity.class);
+// Sets the Activity to start in a new, empty task
+notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
+                        | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+// Creates the PendingIntent
+PendingIntent notifyPendingIntent =
+        PendingIntent.getActivity(
+        this,
+        0,
+        notifyIntent,
+        PendingIntent.FLAG_UPDATE_CURRENT
+);
+
+// Puts the PendingIntent into the notification builder
+builder.setContentIntent(notifyPendingIntent);
+// Notifications are issued by sending them to the
+// NotificationManager system service.
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Builds an anonymous Notification object from the builder, and
+// passes it to the NotificationManager
+mNotificationManager.notify(id, builder.build());
+</pre>
+    </li>
+</ol>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Progress">알림에서 진행 상태 표시</h2>
+<p>
+    알림에는 사용자에게 진행 중인 작업의 상태를 보여주는 
+애니메이션 진행 표시기를 포함할 수 있습니다. 작업이 얼마나 걸릴지, 주어진 시점에 어느 정도 완료되었는지를 추정할 수 있는 경우 
+표시기의 "확정적" 형태(진행률 표시줄)를 
+사용하십시오. 작업의 길이를 추정할 수 없으면, 표시기의 
+"비확정적" 형태(액티비티 표시기)를 사용하십시오.
+</p>
+<p>
+    진행 상태 표시기는 
+{@link android.widget.ProgressBar} 클래스의 플랫폼 구현으로 표시됩니다.
+</p>
+<p>
+    Android 4.0부터 시작되는 플랫폼에서 진행 상태 표시기를 사용하려면, 
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}를 호출하십시오. 이전 
+버전의 경우, 개발자 나름의 사용자 지정 알림 레이아웃을 생성해야 하며 여기에 
+{@link android.widget.ProgressBar} 보기가 포함되어 있어야 합니다.
+</p>
+<p>
+    다음 섹션은 
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}를 사용하여 알림의 진행 상태를 표시하는 법을 설명합니다.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="FixedProgress">고정 기간 진행 상태 표시기 표시</h3>
+<p>
+    확정적인 진행률 표시줄을 표시하려면
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress
+setProgress(max, progress, false)}를 호출하여 표시줄을 알림에 추가하고, 그 다음에 알림을 발행합니다. 작업이 진행되는 동안 
+<code>progress</code>를 증가시키고 알림을 업데이트합니다. 작업이 끝날 무렵 
+<code>progress</code>가 <code>max</code>와 같아야 합니다. 
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}를 호출하는 보편적인 방법은
+<code>max</code>를 100에 설정하고 작업에 대한 "완료 비율" 값에 따라 <code>progress</code>를
+증가시키는 것입니다.
+</p>
+<p>
+    작업이 완료되면 진행률 표시줄이 표시되는 상태로 둘 수도 있고, 제거할 수도 있습니다. 어느 경우를 택하더라도 
+알림 텍스트를 업데이트하여 작업이 완료되었다고 표시하는 것을 잊지 마십시오.
+    진행률 표시줄을 제거하려면,
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress
+setProgress(0, 0, false)}를 호출합니다. 예:
+</p>
+<pre>
+...
+mNotifyManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mBuilder = new NotificationCompat.Builder(this);
+mBuilder.setContentTitle("Picture Download")
+    .setContentText("Download in progress")
+    .setSmallIcon(R.drawable.ic_notification);
+// Start a lengthy operation in a background thread
+new Thread(
+    new Runnable() {
+        &#64;Override
+        public void run() {
+            int incr;
+            // Do the "lengthy" operation 20 times
+            for (incr = 0; incr &lt;= 100; incr+=5) {
+                    // Sets the progress indicator to a max value, the
+                    // current completion percentage, and "determinate"
+                    // state
+                    mBuilder.setProgress(100, incr, false);
+                    // Displays the progress bar for the first time.
+                    mNotifyManager.notify(0, mBuilder.build());
+                        // Sleeps the thread, simulating an operation
+                        // that takes time
+                        try {
+                            // Sleep for 5 seconds
+                            Thread.sleep(5*1000);
+                        } catch (InterruptedException e) {
+                            Log.d(TAG, "sleep failure");
+                        }
+            }
+            // When the loop is finished, updates the notification
+            mBuilder.setContentText("Download complete")
+            // Removes the progress bar
+                    .setProgress(0,0,false);
+            mNotifyManager.notify(ID, mBuilder.build());
+        }
+    }
+// Starts the thread by calling the run() method in its Runnable
+).start();
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ActivityIndicator">지속적 액티비티 표시기 표시</h3>
+<p>
+    비확정적 액티비티 표시기를 표시하려면,
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, true)}으로 알림에 표시기를 추가하고(처음의 인수 두 개는 무시합니다)
+, 알림을 발행합니다. 그 결과로 
+진행률 표시줄과 같은 스타일의 표시기가 나타납니다. 다만 이것은 애니메이션이 계속 진행 중입니다.
+</p>
+<p>
+    작업을 시작할 때 알림을 발행합니다. 애니메이션은 
+알림을 수정할 때까지 실행됩니다. 작업이 완료되면, 
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, false)}를 호출하고
+알림을 업데이트하여 액티비티 표시기를 제거합니다.
+    이 작업은 항상 해야 합니다. 하지 않으면, 작업이 완료되더라도 애니메이션이 계속 실행됩니다. 또한, 
+알림 텍스트를 변경하여 작업이 완료되었음을 나타내는 것을 잊지 마십시오.
+</p>
+<p>
+    액티비티 표시기의 작동 원리를 알아보려면 이어지는 코드 조각을 참조하십시오. 다음 줄을 찾을 수 있습니다.
+</p>
+<pre>
+// Sets the progress indicator to a max value, the current completion
+// percentage, and "determinate" state
+mBuilder.setProgress(100, incr, false);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+<p>
+    찾은 줄을 다음 줄로 교체하십시오.
+</p>
+<pre>
+ // Sets an activity indicator for an operation of indeterminate length
+mBuilder.setProgress(0, 0, true);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+
+<h2 id="metadata">알림 메타데이터</h2>
+
+<p>알림은 
+다음 {@link android.support.v4.app.NotificationCompat.Builder} 메서드로 할당된 메타데이터에 따라 정렬할 수 있습니다.</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setCategory(java.lang.String) setCategory()}는 
+기기가 우선 순위 모드일 때 앱 알림을 처리하는 방법을 시스템에 전달합니다
+(예를 들어, 알림이 수신 전화나 채팅 메시지, 알람 등을 나타낼 경우).</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setPriority(int) setPriority()}는 
+우선 순위 필드가 포함된 알림을 {@code PRIORITY_MAX} 또는 {@code PRIORITY_HIGH}로 설정하고, 
+알림에 소리나 진동이 포함되어 있을 경우 작은 부동 창에 나타나게 합니다.</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#addPerson(java.lang.String) addPerson()}을 
+사용하면 알림에 사람 목록을 추가할 수 있게 해줍니다. 개발자의 앱은 이 신호를 사용하여 
+시스템에 지정된 사람들로부터 받은 알림을 함께 그룹화해야 한다고 알리거나, 이런 사람들로부터 받은 알림을 
+더욱 중요한 것으로 순위를 높일 수 있습니다.</li>
+</ul>
+
+<div class="figure" style="width:230px">
+  <img src="{@docRoot}images/ui/notifications/heads-up.png" alt="" width="" height="" id="figure3" />
+  <p class="img-caption">
+    <strong>그림 3.</strong> 헤드업 알림을 표시하고 있는 전체 화면 액티비티
+  </p>
+</div>
+
+<h2 id="Heads-up">헤드업 알림</h2>
+
+<p>Android 5.0(API 레벨 21)에서는 알림을 작은 부동 창에 나타낼 수 있습니다
+(다른 말로 <em>헤드업 알림</em>이라고 부릅니다). 이것은 기기가 활성 상태일 때(즉, 
+기기가 잠금 해제 상태이며 화면에 켜져 있는 경우) 해당됩니다. 이와 같은 알림은 
+외견상 일반적인 알림의 소형 형태와 비슷해 보이지만, 
+해드업 알림에서는 작업 버튼도 표시한다는 점이 다릅니다. 사용자는 현재 앱을 떠나지 않고도 
+헤드업 알림에 조치를 취하거나 이를 무시할 수 있습니다.</p>
+
+<p>헤드업 알림을 트리거할 수 있는 조건의 예시를 몇 가지 소개하면 다음과 같습니다.</p>
+
+<ul>
+  <li>사용자 액티비티가 전체 화면 모드이거나(앱이
+{@link android.app.Notification#fullScreenIntent}를 사용할 경우)</li>
+  <li>알림의 우선 순위가 높고 
+벨소리나 진동을 사용할 경우</li>
+</ul>
+
+<h2 id="lockscreenNotification">잠금 화면 알림</h2>
+
+<p>Android 5.0 (API 레벨 21) 릴리스부터 알림이 잠금 화면에도 
+나타날 수 있게 되었습니다. 앱은 이 기능을 사용하면 미디어 재생 제어와 다른 보편적인 작업을 
+제공할 수 있습니다. 사용자는 설정을 통해 잠금 화면에 알림 표시 여부를 선택할 수 있고, 
+개발자는 앱의 알림이 잠금 화면에 표시될지 여부를 지정할 수 있습니다.</p>
+
+<h3 id="visibility">가시성 설정</h3>
+
+<p>보안 잠금 화면에 알림이 얼마나 상세하게 표시될 것인지 그 수준을 앱이 제어할 수 
+있습니다. {@link android.support.v4.app.NotificationCompat.Builder#setVisibility(int) setVisibility()}를 호출하고 
+다음 값 중 하나를 지정합니다.</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC}은 
+알림의 전체 콘텐츠를 표시합니다.</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_SECRET}은 
+이 알림의 어떤 부분도 화면에 표시하지 않습니다.</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE}은 
+알림 아이콘과 콘텐츠 제목 등의 기본 정보는 표시하지만 알림의 전체 콘텐츠는 숨깁니다.</li>
+</ul>
+
+<p>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE}으로 설정하면 ,
+알림 콘텐츠의 대체 버전을 제공할 수도 있습니다. 이렇게 하면 특정 세부 사항만 숨깁니다. 예를 들어, 
+SMS 앱에서 <em>3개의 새 문자 메시지가 있습니다.</em>라고 표시하면서도 
+문자 메시지의 내용과 발신자는 숨길 수 있습니다. 이 대체 알림을 제공하려면, 우선 대체 알림을 생성합니다. 이때 
+{@link android.support.v4.app.NotificationCompat.Builder}를 사용합니다. 비공개 알림 객체를 
+생성하는 경우, 대체 알림을 이에 첨부할 때 
+{@link android.support.v4.app.NotificationCompat.Builder#setPublicVersion(android.app.Notification) setPublicVersion()}
+메서드를 통합니다.</p>
+
+<h3 id="controllingMedia">잠금 화면에서 미디어 재생 제어</h3>
+
+<p>Android 5.0(API 레벨 21)의 잠금 화면에서는 더 이상 
+{@link android.media.RemoteControlClient}를 기반으로 한 미디어 제어를 표시하지 않습니다. 이는 사용되지 않고 있기 때문입니다. 대신, 
+{@link android.app.Notification.MediaStyle} 템플릿을 
+{@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()}
+메서드와 함께 사용하십시오. 이 메서드는 작업을 클릭할 수 있는 아이콘으로 변환해줍니다.</p>
+
+<p class="note"><strong>참고:</strong> 이 템플릿과 {@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()} 
+메서드는 지원 라이브러리에 포함되어 있지 않으므로 이 기능은 Android 5.0 이상에서만 
+실행됩니다.</p>
+
+<p>Android 5.0의 잠금 화면에서 미디어 재생 제어를 표시하려면, 
+위에 설명한 바와 같이 가시성을 {@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC}으로 설정합니다. 그런 다음 다음 샘플 코드에서 설명한 바와 같이 작업을 추가하고 
+{@link android.app.Notification.MediaStyle} 템플릿을 설정합니다.
+</p>
+
+<pre>
+Notification notification = new Notification.Builder(context)
+    // Show controls on lock screen even when user hides sensitive content.
+    .setVisibility(Notification.VISIBILITY_PUBLIC)
+    .setSmallIcon(R.drawable.ic_stat_player)
+    // Add media control buttons that invoke intents in your media service
+    .addAction(R.drawable.ic_prev, "Previous", prevPendingIntent) // #0
+    .addAction(R.drawable.ic_pause, "Pause", pausePendingIntent)  // #1
+    .addAction(R.drawable.ic_next, "Next", nextPendingIntent)     // #2
+    // Apply the media style template
+    .setStyle(new Notification.MediaStyle()
+    .setShowActionsInCompactView(1 /* #1: pause button */)
+    .setMediaSession(mMediaSession.getSessionToken())
+    .setContentTitle("Wonderful music")
+    .setContentText("My Awesome Band")
+    .setLargeIcon(albumArtBitmap)
+    .build();
+</pre>
+
+<p class="note"><strong>참고:</strong> {@link android.media.RemoteControlClient}를 
+사용하지 않게 된 것은 미디어 제어에 이외에도 더 많은 영향을 미칩니다. 미디어 세션을 관리하고 재생을 제어하기 위한 새 API에 관한 자세한 정보는
+<a href="{@docRoot}about/versions/android-5.0.html#MediaPlaybackControl">미디어 재생 제어</a>를
+ 참조하십시오.</p>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="CustomNotification">사용자 지정 알림 레이아웃</h2>
+<p>
+    알림 프레임워크를 사용하면 사용자 지정 레이아웃을 정의할 수 있습니다. 
+사용자 지정 레이아웃은 {@link android.widget.RemoteViews} 객체에서 알림의 외관을 정의합니다.
+    사용자 지정 레이아웃 알림은 일반적인 알림과 비슷하지만, 이들은 XML 레이아웃 파일에서
+ 정의한 {@link android.widget.RemoteViews}에 기초합니다.
+</p>
+<p>
+    사용자 지정 알림 레이아웃에 사용할 수 있는 높이는 알림 보기에 따라 다릅니다. 일반 
+보기 레이아웃은 64dp로 제한되어 있으며 확장 보기 레이아웃은 256dp로 제한되어 있습니다.
+</p>
+<p>
+    사용자 지정 레이아웃을 정의하려면 
+XML 레이아웃 파일을 팽창하는 {@link android.widget.RemoteViews} 객체를 인스턴트화하는 것부터 시작합니다. 그런 다음, 
+
+{@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()}과 같은 메서드를 호출하는 대신 
+{@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}를 호출합니다. 사용자 지정 알림에서 
+콘텐츠 세부 정보를 설정하려면
+{@link android.widget.RemoteViews}의 메서드를 사용하여 보기의 하위 요소에 대한 값을 설정합니다.
+</p>
+<ol>
+    <li>
+        알림에 대한 XML 레이아웃은 별도의 파일에 생성하십시오. 파일 이름은 원하는 대로 
+아무 것이나 사용해도 좋지만, 확장자는 <code>.xml</code>을 사용해야 합니다.
+    </li>
+    <li>
+        앱에서 {@link android.widget.RemoteViews} 메서드를 사용하여 알림의 아이콘과 텍스트를 
+정의합니다. 이 {@link android.widget.RemoteViews} 객체를 
+{@link android.support.v4.app.NotificationCompat.Builder} 안에 넣으십시오. 
+{@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}를 호출하면 됩니다. 배경 
+{@link android.graphics.drawable.Drawable}을 
+{@link android.widget.RemoteViews} 객체에서 설정하는 것은 삼가하십시오. 텍스트 색상을 읽을 수 없게 될 수도 있습니다.
+    </li>
+</ol>
+<p>
+    {@link android.widget.RemoteViews} 클래스에도 개발자가 손쉽게 사용할 수 있는 여러 가지 메서드가 포함되어 있습니다. 이를 이용해 
+{@link android.widget.Chronometer} 또는 {@link android.widget.ProgressBar}를 
+알림의 레이아웃에 추가하면 됩니다. 알림의 사용자 지정 레이아웃 생성에 관한 자세한 정보는
+{@link android.widget.RemoteViews} 참조 문서를 참조하십시오.
+</p>
+<p class="caution">
+    <strong>주의:</strong> 사용자 지정 레이아웃을 사용하는 경우, 
+사용자 지정 레이아웃이 다양한 기기 방향과 해상도에서 작동하는지 각별히 주의를 기울여 확인하십시오. 이 조언은 
+모든 보기 레이아웃에 공통적으로 적용되지만, 특히 알림에 중요한 의미를 지닙니다. 
+알림 창에서는 공간이 굉장히 제한되어 있기 때문입니다. 사용자 지정 레이아웃을 너무 복잡하게 만들지 마시고, 
+여러 가지 구성에서 테스트하는 것을 잊지 마십시오.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h4>사용자 지정 알림 텍스트에 스타일 리소스 사용</h4>
+<p>
+    사용자 지정 알림의 텍스트에는 항상 스타일 리소스를 사용하십시오. 알림의 배경 색상은 기기와 버전별로 다를 수 있습니다. 
+스타일 리소스를 사용하면 이러한 차이를 
+감안하는 데 도움이 됩니다. Android 2.3부터 시스템은 
+표준 알림 레이아웃 텍스트의 스타일을 정의했습니다. Android 2.3 이상을 대상으로 하는 
+애플리케이션에서와 같은 스타일을 사용하면 텍스트가 디스플레이 배경에서도 잘 보이도록 할 수 있습니다.
+</p>
diff --git a/docs/html-intl/intl/ko/guide/topics/ui/overview.jd b/docs/html-intl/intl/ko/guide/topics/ui/overview.jd
new file mode 100644
index 0000000..eb288f1
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/ui/overview.jd
@@ -0,0 +1,71 @@
+page.title=UI 개요
+@jd:body
+
+
+<p>Android 앱의 모든 사용자 인터페이스 요소는 {@link android.view.View}와
+{@link android.view.ViewGroup} 개체를 사용하여 구축합니다. {@link android.view.View}는 사용자가 상호 작용할 수 있는 무언가를 
+화면에 그리는 객체입니다. {@link android.view.ViewGroup}은 
+인터페이스 레이아웃을 정의하기 위해 다른 {@link android.view.View}(및{@link android.view.ViewGroup}) 객체를 
+보유하는 객체입니다.</p>
+
+<p>Android는 공통 입력 제어(버튼 및 텍스트 필드)와 다양한 레이아웃 모델(선형 또는 관계 레이아웃)을 제공하는 {@link android.view.View}와 {@link
+android.view.ViewGroup} 하위 클래스의
+컬렉션을 제공합니다.</p>
+
+
+<h2 id="Layout">사용자 인터페이스 레이아웃</h2>
+
+<p>앱의 각 구성 요소에 대한 사용자 인터페이스는 그림 1에서 나타난 바와 같이 {@link
+android.view.View}와 {@link android.view.ViewGroup} 객체의 계층으로 정의됩니다. 각 보기 그룹은 
+하위 보기를 체계화하는 투명한 컨테이너이고, 
+하위 보기는 UI의 일부분을 그리는 제어나 다른 위젯일 수 있습니다. 
+이 계층 트리는 개발자에게 필요한 만큼 단순하거나 복잡하게 
+만들 수 있습니다(다만 단순한 것이 성능에는 가장 좋습니다).</p>
+
+<img src="{@docRoot}images/viewgroup.png" alt="" />
+<p class="img-caption"><strong>그림 1.</strong> 보기 계층을 나타낸 것으로, 이것이 
+UI 레이아웃을 정의합니다.</p>
+
+<p>레이아웃을 선언하려면 코드의 {@link android.view.View} 객체를 인스턴트화하고 트리를 구축하기 시작하면 되지만, 
+레이아웃을 정의하는 가장 쉽고 효과적인 방법은 XML 파일을 사용하는 것입니다. 
+XML은 HTML과 유사한, 인간이 읽을 수 있는 레이아웃 구조를 제공합니다.</p>
+
+<p>보기의 XML 요소 이름은 해당 요소가 나타내는 각각의 Android 클래스를 따릅니다. 말하자면 
+<code>&lt;TextView&gt;</code> 요소가 UI에서 {@link android.widget.TextView} 위젯을 생성하고,
+<code>&lt;LinearLayout&gt;</code> 요소는 {@link android.widget.LinearLayout} 보기 
+그룹을 생성하는 것입니다. </p>
+
+<p>예를 들어, 텍스트 보기와 버튼 하나가 있는 단순한 수직 레이아웃은 이런 모습을 띱니다.</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="fill_parent" 
+              android:layout_height="fill_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>앱에 레이아웃 리소스를 로드하면 Android가 레이아웃의 각 노드를 초기화하여 
+추가 동작을 정의하거나, 객체 상태를 쿼리 또는 레이아웃을 수정하는 데 쓸 수 있는 런타임 객체로 
+초기화합니다.</p>
+
+<p>UI 레이아웃 생성에 대한 완전한 가이드는 <a href="declaring-layout.html">XML 
+레이아웃</a>을 참조하십시오.
+
+  
+<h2 id="UIComponents">사용자 인터페이스 구성 요소</h2>
+
+<p>UI를 구축할 때 모두 {@link android.view.View} 및 {@link
+android.view.ViewGroup} 객체를 사용해야 하는 것은 아닙니다. Android가 표준형 UI 레이아웃을 제공하는 앱 구성 요소를 여러 개 제공하고 있으니, 
+개발자 여러분은 이에 대한 콘텐츠만 정의하면 됩니다. 이와 같은 UI 구성 요소에는 각각 
+고유한 API 세트가 있습니다. 이들은 <a href="{@docRoot}guide/topics/ui/actionbar.html">작업 모음</a>, <a href="{@docRoot}guide/topics/ui/dialogs.html">대화</a> 및 <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">상태 알림</a> 등 각각 다른 문서에서 설명하였습니다.</p>
+
+
diff --git a/docs/html-intl/intl/ko/guide/topics/ui/settings.jd b/docs/html-intl/intl/ko/guide/topics/ui/settings.jd
new file mode 100644
index 0000000..36204e0
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/ui/settings.jd
@@ -0,0 +1,1202 @@
+page.title=설정
+page.tags=preference,preferenceactivity,preferencefragment
+
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>이 문서의 내용</h2>
+<ol>
+  <li><a href="#Overview">개요</a>
+    <ol>
+      <li><a href="#SettingTypes">기본 설정</a></li>
+    </ol>
+  </li>
+  <li><a href="#DefiningPrefs">XML로 기본 설정 정의하기</a>
+    <ol>
+      <li><a href="#Groups">설정 그룹 만들기</a></li>
+      <li><a href="#Intents">인텐트 사용하기</a></li>
+    </ol>
+  </li>
+  <li><a href="#Activity">기본 설정 액티비티 만들기</a></li>
+  <li><a href="#Fragment">기본 설정 프래그먼트 사용하기</a></li>
+  <li><a href="#Defaults">설정 기본 값</a></li>
+  <li><a href="#PreferenceHeaders">기본 설정 헤더 사용하기</a>
+    <ol>
+      <li><a href="#CreateHeaders">헤더 파일 만들기</a></li>
+      <li><a href="#DisplayHeaders">헤더 표시하기</a></li>
+      <li><a href="#BackCompatHeaders">기본 설정 헤더로 이전 버전 지원하기</a></li>
+    </ol>
+  </li>
+  <li><a href="#ReadingPrefs">기본 설정 읽기</a>
+    <ol>
+      <li><a href="#Listening">기본 설정 변경 수신 대기</a></li>
+    </ol>
+  </li>
+  <li><a href="#NetworkUsage">네트워크 사용량 관리하기</a></li>
+  <li><a href="#Custom">사용자 지정 기본 설정 구축하기</a>
+    <ol>
+      <li><a href="#CustomSelected">사용자 인터페이스 지정하기</a></li>
+      <li><a href="#CustomSave">설정의 값 저장하기</a></li>
+      <li><a href="#CustomInitialize">현재 값 초기화하기</a></li>
+      <li><a href="#CustomDefault">기본 값 제공하기</a></li>
+      <li><a href="#CustomSaveState">기본 설정의 상태 저장 및 복원하기</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Key 클래스</h2>
+<ol>
+  <li>{@link android.preference.Preference}</li>
+  <li>{@link android.preference.PreferenceActivity}</li>
+  <li>{@link android.preference.PreferenceFragment}</li>
+</ol>
+
+
+<h2>참고 항목</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/settings.html">설정 디자인 가이드</a></li>
+</ol>
+</div>
+</div>
+
+
+
+
+<p>애플리케이션에는 종종 설정이 포함되어 있어 사용자가 앱 기능과 행동을 수정할 수 있게 해줍니다. 예를 들어 
+몇몇 앱은 사용자에게 알림을 활성화할지 여부를 지정하거나 애플리케이션이 
+클라우드와 데이터를 동기화할 빈도를 지정할 수 있게 해줍니다.</p>
+
+<p>자신의 앱에 설정을 제공하고자 하는 경우, Android의 
+{@link android.preference.Preference} API를 사용하여 다른 Android 앱(시스템 설정 포함)의 사용자 환경과 
+일관성을 유지하는 인터페이스를 구축할 수 있게 해야 합니다. 이 문서에서는 
+{@link android.preference.Preference} API를 사용하여 앱 설정을 구축하는 방법을 설명합니다.</p>
+
+<div class="note design">
+<p><strong>설정 디자인</strong></p>
+  <p>설정을 디자인하는 방법에 관련된 정보는 <a href="{@docRoot}design/patterns/settings.html">설정</a> 디자인 가이드를 읽어보십시오.</p>
+</div>
+
+
+<img src="{@docRoot}images/ui/settings/settings.png" alt="" width="435" />
+<p class="img-caption"><strong>그림 1.</strong> Android 메시지 앱의 설정에서 가져온 
+스크린샷입니다. {@link android.preference.Preference}가 정의한 항목을 선택하면 
+인터페이스가 열려 설정을 변경할 수 있게 됩니다.</p>
+
+
+
+
+<h2 id="Overview">개요</h2>
+
+<p>사용자 인터페이스를 구축할 때에는 {@link android.view.View} 객체를 사용하지만, 설정은 그 대신 
+{@link android.preference.Preference} 클래스의 다양한 하위 클래스를 사용하여 구축합니다. 
+이와 같은 하위 클래스는 XML 파일에서 선언합니다.</p>
+
+<p>{@link android.preference.Preference} 객체는 하나의 설정을 이루는 기본 
+단위입니다. 각각의 {@link android.preference.Preference}는 목록의 항목으로 
+나타나며 사용자가 설정을 수정하기에 적절한 UI를 제공합니다. 예를 들어 {@link
+android.preference.CheckBoxPreference}는 확인란을 표시하는 목록 항목을 만들고, {@link
+android.preference.ListPreference}는 선택 목록이 있는 대화를 여는 항목을 만듭니다.</p>
+
+<p>각각의 {@link android.preference.Preference}를 추가할 때마다 상응하는 키-값 쌍이 있어 
+시스템이 이를 사용하여 해당 설정을 앱의 설정에 대한 기본 {@link android.content.SharedPreferences}
+파일에 저장합니다. 사용자가 설정을 변경하면 시스템이 
+{@link android.content.SharedPreferences} 파일에 있는 상응하는 값을 개발자 대신 업데이트합니다. 개발자가 직접 
+연관된 {@link android.content.SharedPreferences} 파일과 상호 작용을 해야 하는 경우는 
+사용자의 설정을 기반으로 앱의 동작을 결정하기 위해 값을 읽어야 할 때뿐입니다.</p>
+
+<p>각 설정에 대하여 {@link android.content.SharedPreferences}에 저장된 값은 다음과 같은 
+데이터 유형 중 한 가지를 취할 수 있습니다.</p>
+
+<ul>
+  <li>Boolean</li>
+  <li>Float</li>
+  <li>Int</li>
+  <li>Long</li>
+  <li>String</li>
+  <li>String {@link java.util.Set}</li>
+</ul>
+
+<p>앱의 설정 UI는 
+{@link android.view.View} 객체 대신 
+{@link android.preference.Preference} 객체를 사용하여 구축되기 때문에, 목록 설정을 표시하려면 특수 {@link android.app.Activity} 또는 
+{@link android.app.Fragment} 하위 클래스를 사용해야 합니다.</p>
+
+<ul>
+  <li>앱이 Android 3.0 이전 버전(API 레벨 10 이하)을 지원하는 경우, 액티비티를 구축할 때 
+{@link android.preference.PreferenceActivity} 클래스의 확장으로 구축해야 합니다.</li>
+  <li>Android 3.0 이후의 경우에는 대신 기존의 {@link android.app.Activity}를 
+사용해야 합니다. 이것은 앱 설정을 표시하는 {@link android.preference.PreferenceFragment}를 호스팅합니다. 
+하지만, 여러 개의 설정 그룹이 있는 경우 {@link android.preference.PreferenceActivity}를 사용하여 
+대형 화면에 맞는 창 두 개짜리 레이아웃을 만들 수도 있습니다.</li>
+</ul>
+
+<p>{@link android.preference.PreferenceActivity}와 {@link
+android.preference.PreferenceFragment}의 인스턴스를 설정하는 방법은 <a href="#Activity">기본 설정 액티비티 만들기</a>와 <a href="#Fragment">기본 설정 
+프래그먼트 사용하기</a>에 관련된 섹션에서 논합니다.</p>
+
+
+<h3 id="SettingTypes">기본 설정</h3>
+
+<p>앱에 대한 설정은 모두 {@link
+android.preference.Preference} 클래스의 특정 하위 클래스로 표현됩니다. 각 하위 클래스에 핵심 속성이 한 세트씩 포함되어 있어 
+설정의 제목과 기본 값 등과 같은 것을 지정할 수 있게 해줍니다. 각 하위 클래스는 또한 자신만의 
+특수 속성과 사용자 인터페이스도 제공합니다. 예를 들어, 그림 1에서는 메시지 앱의 설정에서 
+가져온 스크린샷을 나타낸 것입니다. 설정 화면에 있는 각 목록 항목은 각기 서로 다른 {@link
+android.preference.Preference} 객체로 지원됩니다.</p>
+
+<p>가장 보편적인 기본 설정을 몇 가지만 소개하면 다음과 같습니다.</p>
+
+<dl>
+  <dt>{@link android.preference.CheckBoxPreference}</dt>
+  <dd>활성화되었거나 비활성화된 설정에 대한 확인란이 있는 항목을 표시합니다. 저장된 값은 
+부울입니다(확인란이 선택된 경우 <code>true</code>).</dd>
+
+  <dt>{@link android.preference.ListPreference}</dt>
+  <dd>무선 버튼 목록이 있는 대화를 엽니다. 저장된 값은 
+지원되는 값 유형(위에 목록으로 나열) 중 어느 것이라도 될 수 있습니다.</dd>
+
+  <dt>{@link android.preference.EditTextPreference}</dt>
+  <dd>{@link android.widget.EditText} 위젯이 있는 대화를 엽니다. 저장된 값은 {@link
+java.lang.String}입니다.</dd>
+</dl>
+
+<p>다른 모든 하위 클래스와 이에 상응하는 속성의 목록을 보려면 {@link android.preference.Preference}
+ 클래스를 참조하십시오.</p>
+
+<p>물론 기본 제공 클래스만으로는 필요한 것을 모두 충족할 수 없고 앱에 무언가 좀 더 특수한 것이 
+필요할 수도 있습니다. 예를 들어 플랫폼은 현재 숫자나 날짜를 선택할 수 있는 {@link
+android.preference.Preference} 클래스를 제공하지 않습니다. 따라서 개발자 나름대로 
+{@link android.preference.Preference} 하위 클래스를 정의해야 할 수도 있습니다. 이 작업을 수행하는 데 유용한 내용인 <a href="#Custom">사용자 지정 기본 설정 구축하기</a>에 관한 섹션을 참조하십시오.</p>
+
+
+
+<h2 id="DefiningPrefs">XML로 기본 설정 정의하기</h2>
+
+<p>새로운 {@link android.preference.Preference} 객체를 런타임에 인스턴트화하는 것도 가능하지만, 
+설정 목록을 정의할 때에는 {@link android.preference.Preference}
+객체의 계층과 함께 XML을 사용해야 합니다. 설정 컬렉션을 정의하는 데 XM 파일을 사용하는 것이 선호되는 이유는 이 파일이 
+읽기 쉬운 구조를 제공하여 업데이트가 단순하기 때문입니다. 또한, 앱의 설정은 보통 
+미리 정의되어 있습니다. 다만 개발자도 여전히 런타임에 설정 컬렉션을 수정할 수 있습니다.</p>
+
+<p>각 {@link android.preference.Preference} 하위 클래스는 클래스 이름에 일치하는 XML 요소로 
+선언하면 됩니다. 예를 들면 {@code &lt;CheckBoxPreference&gt;}가 이에 해당됩니다.</p>
+
+<p>이 XML 파일은 반드시 {@code res/xml/} 디렉터리에 저장해야 합니다. 파일의 이름은 무엇이든 원하는 대로 지정할 수 있지만, 
+일반적으로는 {@code preferences.xml}이라고 명명합니다. 파일은 하나만 필요한 것이 보통입니다. 
+왜냐하면 계층에 있는 분기(자신만의 설정 목록을 엶)는 
+{@link android.preference.PreferenceScreen}의 중첩된 인스턴스를 사용하여 선언되기 때문입니다.</p>
+
+<p class="note"><strong>참고:</strong> 설정에 다중 창 레이아웃을 만들고자 하는 경우, 
+각 프래그먼트에 대해 별도의 XML 파일이 필요합니다.</p>
+
+<p>XML 파일의 루트 노드는 반드시 {@link android.preference.PreferenceScreen
+&lt;PreferenceScreen&gt;} 요소여야 합니다. 바로 이 요소 내에 각 {@link
+android.preference.Preference}를 추가하는 것입니다. 
+{@link android.preference.PreferenceScreen &lt;PreferenceScreen&gt;} 요소 내에 추가하는 각 하위는 설정 목록에서 
+각기 항목 하나씩으로 나타납니다.</p>
+
+<p>예:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;CheckBoxPreference
+        android:key="pref_sync"
+        android:title="@string/pref_sync"
+        android:summary="@string/pref_sync_summ"
+        android:defaultValue="true" />
+    &lt;ListPreference
+        android:dependency="pref_sync"
+        android:key="pref_syncConnectionType"
+        android:title="@string/pref_syncConnectionType"
+        android:dialogTitle="@string/pref_syncConnectionType"
+        android:entries="@array/pref_syncConnectionTypes_entries"
+        android:entryValues="@array/pref_syncConnectionTypes_values"
+        android:defaultValue="@string/pref_syncConnectionTypes_default" />
+&lt;/PreferenceScreen>
+</pre>
+
+<p>이 예시에서는 {@link android.preference.CheckBoxPreference}와 {@link
+android.preference.ListPreference}가 하나씩 있습니다. 두 항목 모두 다음과 같은 세 가지 속성을 포함하고 있습니다.</p>
+
+<dl>
+  <dt>{@code android:key}</dt>
+  <dd>이 속성은 데이터 값을 유지하는 기본 설정에 필수입니다. 이것은 고유키(문자)를 
+나타내며, 시스템이 이것을 사용하여 이 설정의 값을 {@link
+android.content.SharedPreferences}에 저장합니다. 
+  <p>이 속성이 <em>필요하지 않은</em> 인스턴스는 기본 설정이 
+{@link android.preference.PreferenceCategory} 또는 {@link android.preference.PreferenceScreen}인 경우, 또는 
+기본 설정이 {@link android.content.Intent}를 호출할 것을 나타내거나(<a href="#Intents">{@code &lt;intent&gt;}</a> 요소로) {@link android.app.Fragment}를 표시하도록 지정하는 경우(<a href="{@docRoot}reference/android/preference/Preference.html#attr_android:fragment">{@code
+android:fragment}</a> 속성으로)뿐입니다.</p>
+  </dd>
+  <dt>{@code android:title}</dt>
+  <dd>이것은 설정에 대하여 사용자가 볼 수 있는 이름을 제공합니다.</dd>
+  <dt>{@code android:defaultValue}</dt>
+  <dd>이것은 시스템이 {@link
+android.content.SharedPreferences} 파일에 설정해야 하는 초기 값을 나타냅니다. 모든 설정에 기본 값을 제공해야 
+합니다.</dd>
+</dl>
+
+<p>다른 모든 지원되는 속성에 대해서는 {@link
+android.preference.Preference}(및 각각의 하위 클래스) 관련 문서를 참조하십시오.</p>
+
+
+<div class="figure" style="width:300px">
+  <img src="{@docRoot}images/ui/settings/settings-titles.png" alt="" />
+  <p class="img-caption"><strong>그림 2.</strong> 제목이 있는 설정
+카테고리입니다. <br/><b>1.</b> 카테고리는 {@link
+android.preference.PreferenceCategory &lt;PreferenceCategory&gt;} 요소가 지정합니다. <br/><b>2.</b> 제목은 
+{@code android:title} 속성으로 지정합니다.</p>
+</div>
+
+
+<p>설정 목록이 약 10개 항목을 초과하면 제목을 추가하여 
+설정 그룹을 정의하거나, 해당 그룹을 별도의 
+화면에 표시하는 것이 좋을 수도 있습니다. 이러한 옵션은 다음 섹션에 설명되어 있습니다.</p>
+
+
+<h3 id="Groups">설정 그룹 만들기</h3>
+
+<p>10개 이상의 설정 목록을 제시하는 경우, 사용자가 
+이들을 둘러보고 이해하며 처리하는 데 어려움을 겪을 수 있습니다. 이 문제를 해결하려면 
+설정의 일부 또는 모두를 그룹으로 나누어 사실상 하나의 긴 목록을 여러 개의 더 짧은 목록으로 
+바꿔주면 됩니다. 관련된 설정 그룹 하나를 나타낼 때에는 다음과 같은 두 가지 방식 중 하나를 택하면 됩니다.</p>
+
+<ul>
+  <li><a href="#Titles">제목 사용하기</a></li>
+  <li><a href="#Subscreens">보조 화면 사용하기</a></li>
+</ul>
+
+<p>이와 같은 그룹화 기법 중 하나 또는 둘 모두를 사용하여 앱의 설정을 조직화할 수 있습니다. 어느 것을 
+사용할지, 설정을 어떻게 나눌지 결정할 때에는 Android 
+디자인의 <a href="{@docRoot}design/patterns/settings.html">설정</a> 가이드에 있는 지침을 따라야 합니다.</p>
+
+
+<h4 id="Titles">제목 사용하기</h4>
+
+<p>여러 개의 설정 그룹 사이에 구분선과 제목을 제공하고자 하는 경우(그림 2에 표시된 것과 같이), 
+각 {@link android.preference.Preference} 객체 그룹을 {@link
+android.preference.PreferenceCategory} 내부에 배치합니다.</p>
+
+<p>예:</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;PreferenceCategory 
+        android:title="&#64;string/pref_sms_storage_title"
+        android:key="pref_key_storage_settings">
+        &lt;CheckBoxPreference
+            android:key="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_auto_delete"
+            android:title="&#64;string/pref_title_auto_delete"
+            android:defaultValue="false"... />
+        &lt;Preference 
+            android:key="pref_key_sms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_sms_delete"... />
+        &lt;Preference 
+            android:key="pref_key_mms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_mms_delete" ... />
+    &lt;/PreferenceCategory>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h4 id="Subscreens">보조 화면 사용하기</h4>
+
+<p>설정 그룹 여러 개를 보조 화면에 배치하고자 하는 경우(그림 3에 표시된 것과 같이), 해당 
+{@link android.preference.Preference} 객체 그룹을 {@link
+android.preference.PreferenceScreen} 안에 배치합니다.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-subscreen.png" alt="" />
+<p class="img-caption"><strong>그림 3.</strong> 설정 보조 화면입니다. {@code
+&lt;PreferenceScreen&gt;} 요소가 
+항목을 만들며, 이 항목이 선택되면 별도의 목록이 열려 중첩된 설정을 표시합니다.</p>
+
+<p>예:</p>
+
+<pre>
+&lt;PreferenceScreen  xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;!-- opens a subscreen of settings -->
+    &lt;PreferenceScreen
+        android:key="button_voicemail_category_key"
+        android:title="&#64;string/voicemail"
+        android:persistent="false">
+        &lt;ListPreference
+            android:key="button_voicemail_provider_key"
+            android:title="&#64;string/voicemail_provider" ... />
+        &lt;!-- opens another nested subscreen -->
+        &lt;PreferenceScreen
+            android:key="button_voicemail_setting_key"
+            android:title="&#64;string/voicemail_settings"
+            android:persistent="false">
+            ...
+        &lt;/PreferenceScreen>
+        &lt;RingtonePreference
+            android:key="button_voicemail_ringtone_key"
+            android:title="&#64;string/voicemail_ringtone_title"
+            android:ringtoneType="notification" ... />
+        ...
+    &lt;/PreferenceScreen>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h3 id="Intents">인텐트 사용하기</h3>
+
+<p>어떤 경우에는 기본 설정 항목을 사용하여 설정 화면 대신 여러 가지 액티비티를 
+열고자 할 수도 있습니다. 예를 들어 웹 브라우저를 열어 웹 페이지를 보는 것이 이에 해당됩니다. 사용자가 기본 설정 항목을 선택할 때 {@link
+android.content.Intent}를 호출하도록 하려면, {@code &lt;intent&gt;}
+요소를 상응하는 {@code &lt;Preference&gt;} 요소의 하위로 추가하면 됩니다.</p>
+
+<p>예를 들어 다음은 기본 설정 항목을 사용하여 웹 페이지를 열도록 하는 방법입니다.</p>
+
+<pre>
+&lt;Preference android:title="@string/prefs_web_page" >
+    &lt;intent android:action="android.intent.action.VIEW"
+            android:data="http://www.example.com" />
+&lt;/Preference>
+</pre>
+
+<p>다음 속성을 사용하여 명시적 인텐트와 암시적 인텐트 두 가지를 모두 만들 수 있습니다.</p>
+
+<dl>
+  <dt>{@code android:action}</dt>
+    <dd>할당할 작업이며, {@link android.content.Intent#setAction setAction()}
+메서드를 따릅니다.</dd>
+  <dt>{@code android:data}</dt>
+    <dd>할당할 데이터이며, {@link android.content.Intent#setData setData()} 메서드를 따릅니다.</dd>
+  <dt>{@code android:mimeType}</dt>
+    <dd>할당할 MIME 유형이며, {@link android.content.Intent#setType setType()}
+메서드를 따릅니다.</dd>
+  <dt>{@code android:targetClass}</dt>
+    <dd>구성 요소 이름의 클래스 부분이며, {@link android.content.Intent#setComponent
+setComponent()} 메서드를 따릅니다.</dd>
+  <dt>{@code android:targetPackage}</dt>
+    <dd>구성 요소 이름의 패키지 부분이며, {@link
+android.content.Intent#setComponent setComponent()} 메서드를 따릅니다.</dd>
+</dl>
+
+
+
+<h2 id="Activity">기본 설정 액티비티 만들기</h2>
+
+<p>설정을 액티비티에서 표시하려면 {@link
+android.preference.PreferenceActivity} 클래스를 확장하면 됩니다. 이것은 일반적인 {@link
+android.app.Activity} 클래스 확장의 일종입니다. 이는 {@link
+android.preference.Preference} 객체의 계층에 기반한 설정 목록을 표시합니다. {@link android.preference.PreferenceActivity}는 
+사용자가 변경 작업을 하면 각 {@link
+android.preference.Preference}와 연관된 설정을 유지합니다.</p>
+
+<p class="note"><strong>참고:</strong> Android 3.0 이상에 맞춰 애플리케이션을 개발하는 경우, 
+대신 {@link android.preference.PreferenceFragment}를 사용해야 합니다. 다음 섹션의 
+<a href="#Fragment">기본 설정 프래그먼트 사용하기</a> 관련 내용을 참조하십시오.</p>
+
+<p>여기서 기억해야 할 가장 중요한 점은 {@link
+android.preference.PreferenceActivity#onCreate onCreate()} 콜백 중에 보기 레이아웃을 로딩해서는 안 된다는 것입니다. 그 대신 {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()}를 호출하여 
+XML 파일에서 선언한 기본 설정을 액티비티에 추가합니다. 예를 들어 다음은 기능적인 
+{@link android.preference.PreferenceActivity}에 필요한 가장 최소한의 코드를 나타낸 것입니다.</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        addPreferencesFromResource(R.xml.preferences);
+    }
+}
+</pre>
+
+<p>사실 이 코드만으로 몇몇 앱에는 충분합니다. 사용자가 기본 설정을 수정하자마자 
+시스템이 해당 변경을 기본 {@link android.content.SharedPreferences} 파일에 저장하여, 
+사용자의 설정을 확인해야 할 때 다른 애플리케이션 구성 요소가 이를 읽을 수 있도록 하기 때문입니다. 하지만 
+대다수의 앱은 기본 설정에 일어나는 변경을 수신 대기하기 위해 약간의 코드가 더 필요합니다.
+{@link android.content.SharedPreferences} 파일에 일어나는 변경을 수신 대기하는 데 관한 
+자세한 정보는 <a href="#ReadingPrefs">기본 설정 읽기</a>에 관한 섹션을 참조하십시오.</p>
+
+
+
+
+<h2 id="Fragment">기본 설정 프래그먼트 사용하기</h2>
+
+<p>Android 3.0(API 레벨 11) 이상에 맞춰 개발하는 경우, {@link
+android.preference.PreferenceFragment}를 사용하여 {@link android.preference.Preference}
+객체 목록을 표시해야 합니다. {@link android.preference.PreferenceFragment}는 모든 액티비티에 추가할 수 있습니다. 즉, 
+{@link android.preference.PreferenceActivity}를 사용하지 않아도 됩니다.</p>
+
+<p><a href="{@docRoot}guide/components/fragments.html">프래그먼트</a>는 액티비티만 
+사용하는 것에 비해 애플리케이션에 보다 유연한 아키텍처를 제공하며, 이는 구축하는 
+액티비티의 종류와 무관하게 적용됩니다. 따라서 설정 표시를 제어하는 데에는 {@link
+android.preference.PreferenceFragment}를 {@link
+android.preference.PreferenceActivity} 대신 사용하는 방안을 권장합니다(가능한 경우).</p>
+
+<p>{@link android.preference.PreferenceFragment} 구현은 매우 간단합니다.
+{@link android.preference.PreferenceFragment#onCreate onCreate()} 메서드를 정의하여 기본 설정 파일을 
+{@link android.preference.PreferenceFragment#addPreferencesFromResource
+addPreferencesFromResource()}로 로딩하도록 하기만 하면 됩니다. 예:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Load the preferences from an XML resource
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+}
+</pre>
+
+<p>그런 다음 이 프래그먼트를 {@link android.app.Activity}에 추가하기만 하면 되고, 이는 다른 모든 
+{@link android.app.Fragment}에서와 마찬가지입니다. 예:</p>
+
+<pre>
+public class SettingsActivity extends Activity {
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Display the fragment as the main content.
+        getFragmentManager().beginTransaction()
+                .replace(android.R.id.content, new SettingsFragment())
+                .commit();
+    }
+}
+</pre>
+
+<p class="note"><strong>참고:</strong> {@link android.preference.PreferenceFragment}에는 자신만의 
+{@link android.content.Context} 객체가 없습니다. {@link android.content.Context}
+객체가 필요한 경우, {@link android.app.Fragment#getActivity()}를 호출하면 됩니다. 하지만, 
+{@link android.app.Fragment#getActivity()}를 호출하는 것은 프래그먼트가 액티비티에 첨부되어 있는 경우만으로 국한시켜야 한다는 점을 유의하십시오. 프래그먼트가 
+아직 첨부되지 않았거나 수명 주기가 끝날 무렵 분리된 경우, {@link
+android.app.Fragment#getActivity()}가 null을 반환합니다.</p>
+
+
+<h2 id="Defaults">설정 기본 값</h2>
+
+<p>여러분이 만드는 기본 설정은 애플리케이션에 중요한 동작을 정의하는 경우가 많을 것입니다. 따라서 
+연관된 {@link android.content.SharedPreferences} 파일을 
+각 {@link android.preference.Preference}에 대한 기본 값으로 초기화하여 사용자가 애플리케이션을 처음 열 때 
+적용하는 것이 중요합니다.</p>
+
+<p>가장 먼저 해야 할 일은 XML 파일 내의 각 {@link
+android.preference.Preference}
+객체에 대해 기본 값을 지정하는 것입니다. 이때 {@code android:defaultValue} 속성을 사용합니다. 이 값은 상응하는 
+{@link android.preference.Preference} 객체에 대해 적절한 어느 데이터 유형이라도 될 수 있습니다. 예:
+</p>
+
+<pre>
+&lt;!-- default value is a boolean -->
+&lt;CheckBoxPreference
+    android:defaultValue="true"
+    ... />
+
+&lt;!-- default value is a string -->
+&lt;ListPreference
+    android:defaultValue="@string/pref_syncConnectionTypes_default"
+    ... />
+</pre>
+
+<p>그런 다음, 애플리케이션의 기본 액티비티에 있는 {@link android.app.Activity#onCreate onCreate()} 
+메서드로부터&mdash;또한 사용자가 애플리케이션에 처음으로 들어올 통로가 될 수 있는 
+다른 모든 액티비티도 포함&mdash;{@link android.preference.PreferenceManager#setDefaultValues
+setDefaultValues()}를 호출합니다.</p>
+
+<pre>
+PreferenceManager.setDefaultValues(this, R.xml.advanced_preferences, false);
+</pre>
+
+<p>이것을 {@link android.app.Activity#onCreate onCreate()} 중에 호출하면 
+애플리케이션이 기본 설정으로 적절히 초기화되도록 보장할 수 있습니다. 이것은 애플리케이션이 
+몇 가지 동작을 결정하기 위해 읽어야 할 수도 있습니다(예를 들어 셀룰러 네트워크에서 데이터를 
+다운로드할지 여부 등).</p>
+
+<p>이 메서드는 다음과 같은 세 개의 인수를 취합니다.</p>
+<ul>
+  <li>애플리케이션 {@link android.content.Context}.</li>
+  <li>기본 값을 설정하고자 하는 기본 설정 XML 파일에 대한 리소스 ID입니다.</li>
+  <li>기본 값을 한 번 이상 설정해야 하는지 여부를 나타내는 부울 값입니다.
+<p><code>false</code>인 경우, 시스템은 이 메서드가 전에 한 번도 호출된 적이 없을 경우에만 
+기본 값을 설정합니다(아니면 기본 값을 공유한 기본 설정 파일에 있는 {@link android.preference.PreferenceManager#KEY_HAS_SET_DEFAULT_VALUES}
+가 안전합니다).</p></li>
+</ul>
+
+<p>세 번째 인수를 <code>false</code>로 설정해 두는 한 이 메서드를 액티비티가 시작될 때마다 
+안전하게 호출할 수 있으며, 그렇게 해도 사용자의 저장된 기본 설정을 기본값으로 초기화하여 
+재정의하지 않습니다. 하지만 이를 <code>true</code>로 설정하면, 이전의 모든 값을 
+기본 값으로 재정의하게 됩니다.</p>
+
+
+
+<h2 id="PreferenceHeaders">기본 설정 헤더 사용하기</h2>
+
+<p>드문 경우지만 설정을 디자인할 때 첫 화면에는 
+<a href="#Subscreens">보조 화면</a> 목록만 표시하도록 하고자 할 수도 있습니다(예: 시스템 설정 앱, 
+그림 4와 5 참조). 그러한 디자인을 Android 3.0 이상을 대상으로 개발하는 경우, Android 3.0에 있는 
+새로운 "헤더" 기능을 사용해야 합니다. 이것이 중첩된 
+{@link android.preference.PreferenceScreen} 요소를 사용하여 보조 화면을 구축하는 방안을 대신합니다.</p>
+
+<p>헤더를 사용하여 설정을 구축하려면 다음과 같이 해야 합니다.</p>
+<ol>
+  <li>각 설정 그룹을 별개의 {@link
+android.preference.PreferenceFragment} 인스턴스로 구분합니다. 다시 말해, 설정 그룹마다 별도의 XML 파일이 하나씩 있어야 한다는 
+뜻입니다.</li>
+  <li>각 설정 그룹을 목록으로 나열하는 XML 헤더 파일을 생성하고 어느 프래그먼트에 
+상응하는 설정 목록이 들어있는지 선언합니다.</li>
+  <li>{@link android.preference.PreferenceActivity} 클래스를 확장하여 설정을 호스팅하도록 합니다.</li>
+  <li>{@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} 콜백을 구현하여 헤더 파일을 
+나타냅니다.</li>
+</ol>
+
+<p>이 디자인을 사용하는 데 있어 커다란 이점은 {@link android.preference.PreferenceActivity}가 
+(앱이) 대형 화면에서 실행될 때 그림 4에서 나타낸 것과 같이 창 두 개짜리 레이아웃을 자동으로 표시한다는 것입니다.</p>
+
+<p>애플리케이션이 Android 3.0 이전 버전을 지원한다 하더라도 애플리케이션이 
+{@link android.preference.PreferenceFragment}를 사용하여 
+신형 기기에서 창 두 개짜리 표시를 지원하도록 하면서도 구형 기기에서는 일반적인 다중 화면 계층을 
+여전히 지원하도록 할 수도 있습니다(<a href="#BackCompatHeaders">기본 설정 헤더로 
+이전 버전 지원하기</a>를 참조하십시오).</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-tablet.png" alt="" />
+<p class="img-caption"><strong>그림 4.</strong> 헤더가 있는 창 두 개짜리 레이아웃입니다. <br/><b>1.</b> 헤더는 
+XML 헤더 파일로 정의됩니다. <br/><b>2.</b> 각 설정 그룹은 
+{@link android.preference.PreferenceFragment}가 정의하며, 이는 헤더 파일에 있는 {@code &lt;header&gt;} 요소가 
+지정합니다.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-handset.png" alt="" />
+<p class="img-caption"><strong>그림 5.</strong> 설정 헤더가 있는 핸드셋 기기입니다. 항목을 선택하면 
+연관된 {@link android.preference.PreferenceFragment}가 헤더를 
+대체합니다.</p>
+
+
+<h3 id="CreateHeaders" style="clear:left">헤더 파일 만들기</h3>
+
+<p>헤더 목록에 있는 각 설정 그룹은 루트 {@code &lt;preference-headers&gt;} 
+요소 안에 있는 {@code &lt;header&gt;} 요소 하나로 나타냅니다. 예:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;!-- key/value pairs can be included as arguments for the fragment. -->
+        &lt;extra android:name="someKey" android:value="someHeaderValue" />
+    &lt;/header>
+&lt;/preference-headers>
+</pre>
+
+<p>각 헤더는 {@code android:fragment} 속성으로 {@link
+android.preference.PreferenceFragment} 예를 선언하며 이는 사용자가 헤더를 선택하면 열려야 합니다.</p>
+
+<p>{@code &lt;extras&gt;} 요소를 사용하면 키-값 쌍을 {@link
+android.os.Bundle} 내의 프래그먼트에 전달할 수 있게 해줍니다. 이 프래그먼트가 인수를 검색하려면 {@link
+android.app.Fragment#getArguments()}를 호출하면 됩니다. 인수를 프래그먼트에 전달하는 데에는 여러 가지 이유가 있을 수 있지만, 
+한 가지 중요한 이유를 예로 들면 각 그룹에 대해 {@link
+android.preference.PreferenceFragment}의 같은 하위 클래스를 재사용하고, 이 인수를 사용하여 해당 프래그먼트가 로딩해야 하는 
+기본 설정 XML 파일이 무엇인지 나타낼 수 있다는 점입니다.</p>
+
+<p>예를 들어 다음은 여러 가지 설정 그룹에 재사용할 수 있는 프래그먼트입니다. 이것은 
+각 헤더가 {@code "settings"} 키로 {@code &lt;extra&gt;} 인수를 정의하는 경우를 나타낸 것입니다.</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        String settings = getArguments().getString("settings");
+        if ("notifications".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_wifi);
+        } else if ("sync".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_sync);
+        }
+    }
+}
+</pre>
+
+
+
+<h3 id="DisplayHeaders">헤더 표시하기</h3>
+
+<p>기본 설정 헤더를 표시하려면 {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} 콜백 메서드를 구현하고 
+{@link android.preference.PreferenceActivity#loadHeadersFromResource
+loadHeadersFromResource()}를 호출해야 합니다. 예:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onBuildHeaders(List&lt;Header> target) {
+        loadHeadersFromResource(R.xml.preference_headers, target);
+    }
+}
+</pre>
+
+<p>사용자가 헤더 목록에서 항목을 하나 선택하면 시스템이 연관된 {@link
+android.preference.PreferenceFragment}를 엽니다.</p>
+
+<p class="note"><strong>참고:</strong> 기본 설정 헤더를 사용하는 경우, {@link
+android.preference.PreferenceActivity}의 하위 클래스가 {@link
+android.preference.PreferenceActivity#onCreate onCreate()} 메서드를 구현하지 않아도 됩니다. 액티비티에 대한 필수 작업은 
+헤더를 로딩하는 것뿐이기 때문입니다.</p>
+
+
+<h3 id="BackCompatHeaders">기본 설정 헤더로 이전 버전 지원하기</h3>
+
+<p>애플리케이션이 Android 3.0 이전 버전을 지원하는 경우에도 여전히 헤더를 사용하여 
+Android 3.0 이상에서 창 두 개짜리 레이아웃을 제공하도록 할 수 있습니다. 개발자가 해야 할 일은 추가로 기본 설정 XML 파일을 
+생성하는 것뿐입니다. 이 파일은 마치 헤더 항목처럼 동작하는 기본적인 {@link android.preference.Preference
+&lt;Preference&gt;} 요소를 사용합니다(이것을 이전 Android 버전이 사용하도록 
+할 예정).</p>
+
+<p>하지만 새로운 {@link android.preference.PreferenceScreen}을 여는 대신 각 {@link
+android.preference.Preference &lt;Preference&gt;} 요소가 {@link android.content.Intent}를 하나씩 
+{@link android.preference.PreferenceActivity}에 전송합니다. 이것이 로딩할 XML 파일이 무엇인지를 
+나타냅니다.</p>
+
+<p>예를 들어 다음은 Android 3.0 이상에서 사용되는 기본 설정 헤더에 대한 
+XML 파일입니다({@code res/xml/preference_headers.xml}).</p> 
+
+<pre>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" />
+&lt;/preference-headers>
+</pre>
+
+<p>그리고 다음은, Android 3.0 이전 버전에 같은 헤더를 제공하는 기본 설정 
+파일입니다({@code res/xml/preference_headers_legacy.xml}).</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;Preference 
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one"  >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_ONE" />
+    &lt;/Preference>
+    &lt;Preference 
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_TWO" />
+    &lt;/Preference>
+&lt;/PreferenceScreen>
+</pre>
+
+<p>{@code &lt;preference-headers&gt;}에 대한 지원이 Android 3.0에서 추가되었기 때문에 시스템이 
+{@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()}를 {@link
+android.preference.PreferenceActivity}에서 호출하는 것은 Android 3.0 이상에서 실행될 때뿐입니다. "레거시" 헤더 파일을 
+로딩하려면({@code preference_headers_legacy.xml}) 반드시 Android 
+버전을 확인해야 하며, 해당 버전이 Android 3.0 이전인 경우({@link
+android.os.Build.VERSION_CODES#HONEYCOMB}), {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()}를 호출하여 
+레거시 헤더 파일을 로딩해야 합니다. 예:</p>
+
+<pre>
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    ...
+
+    if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+
+// Called only on Honeycomb and later
+&#64;Override
+public void onBuildHeaders(List&lt;Header> target) {
+   loadHeadersFromResource(R.xml.preference_headers, target);
+}
+</pre>
+
+<p>이제 남은 할 일이라고는 {@link android.content.Intent}를 처리하는 것뿐입니다. 이것은 
+액티비티로 전달되어 어느 기본 설정 파일을 로딩해야 하는지 식별하는 데 쓰입니다. 그럼 이제 인텐트의 작업을 검색하여 기본 설정 XML의 
+{@code &lt;intent&gt;} 태그에서 사용한 알려진 작업 문자열에 비교해보겠습니다.</p>
+
+<pre>
+final static String ACTION_PREFS_ONE = "com.example.prefs.PREFS_ONE";
+...
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+
+    String action = getIntent().getAction();
+    if (action != null &amp;&amp; action.equals(ACTION_PREFS_ONE)) {
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+
+    else if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+</pre>
+
+<p>{@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()}를 연이어 호출하면 
+모든 기본 설정을 하나의 목록에 쌓게 된다는 점을 유의하십시오. 따라서 이것은 'Else-if' 문이 있는 조건을 변경하여 딱 한 번만 
+호출하도록 주의해야 합니다.</p>
+
+
+
+
+
+<h2 id="ReadingPrefs">기본 설정 읽기</h2>
+
+<p>기본적으로 앱의 기본 설정은 모두 
+애플리케이션 내의 어디서든 정적 메서드 {@link
+android.preference.PreferenceManager#getDefaultSharedPreferences
+PreferenceManager.getDefaultSharedPreferences()}를 호출하면 액세스할 수 있는 파일에 저장됩니다. 이것은 {@link
+android.content.SharedPreferences} 객체를 반환하며, 여기에 {@link
+android.preference.PreferenceActivity}에서 사용한 {@link android.preference.Preference} 객체와 
+연관된 모든 키-값 쌍이 들어있습니다.</p>
+
+<p>예를 들어 다음은 기본 설정 값 중 하나를 애플리케이션 내의 다른 모든 액티비티에서 읽는 방법을 
+나타낸 것입니다.</p>
+
+<pre>
+SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
+String syncConnPref = sharedPref.getString(SettingsActivity.KEY_PREF_SYNC_CONN, "");
+</pre>
+
+
+
+<h3 id="Listening">기본 설정 변경 수신 대기</h3>
+
+<p>사용자가 기본 설정 중 하나를 변경하자마자 이에 대해 알림을 받는 것이 좋은 데에는 몇 가지 
+이유가 있습니다. 기본 설정 중 어느 하나에라도 변경이 발생했을 때 콜백을 받으려면, 
+{@link android.content.SharedPreferences.OnSharedPreferenceChangeListener
+SharedPreference.OnSharedPreferenceChangeListener} 인터페이스를 구현하고 
+{@link android.content.SharedPreferences} 객체에 대한 수신기를 등록합니다. 이때 {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}를 호출하면 됩니다.</p>
+
+<p>이 인터페이스에는 콜백 메서드가 {@link
+android.content.SharedPreferences.OnSharedPreferenceChangeListener#onSharedPreferenceChanged
+onSharedPreferenceChanged()} 하나뿐이며, 인터페이스를 액티비티의 일부분으로 구현하는 것이 
+가장 쉬운 방법일 공산이 큽니다. 예:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity
+                              implements OnSharedPreferenceChangeListener {
+    public static final String KEY_PREF_SYNC_CONN = "pref_syncConnectionType";
+    ...
+
+    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
+        String key) {
+        if (key.equals(KEY_PREF_SYNC_CONN)) {
+            Preference connectionPref = findPreference(key);
+            // Set summary to be the user-description for the selected value
+            connectionPref.setSummary(sharedPreferences.getString(key, ""));
+        }
+    }
+}
+</pre>
+
+<p>이 예시에서 메서드는 변경된 설정이 알려진 기본 설정 키에 대한 것인지 여부를 확인합니다. 이것은 
+{@link android.preference.PreferenceActivity#findPreference findPreference()}를 호출하여 
+변경된 {@link android.preference.Preference} 객체를 가져오는데, 이렇게 해야 항목의 요약을 수정하여 
+사용자의 선택에 대한 설명이 되도록 할 수 있습니다. 다시 말해, 설정이 {@link
+android.preference.ListPreference} 또는 다른 다중 선택 설정인 경우, 설정이 변경되어 현재 상태를 표시하도록 하면 {@link
+android.preference.Preference#setSummary setSummary()}를 호출해야 한다는 뜻입니다(예를 들어 
+그림 5에 표시된 절전 모드 설정과 같음).</p>
+
+<p class="note"><strong>참고:</strong> Android 디자인 문서의 <a href="{@docRoot}design/patterns/settings.html">설정</a> 관련 내용에서 설명한 바와 같이, 사용자가 기본 설정을 변경할 때마다 
+{@link android.preference.ListPreference}의 요약을 업데이트하는 것을 권장합니다. 이렇게 하여 현재 설정을 
+나타내는 것입니다.</p>
+
+<p>액티비티에서 적절한 수명 주기 관리를 수행하려면 
+{@link android.content.SharedPreferences.OnSharedPreferenceChangeListener}를 등록하고 등록 해제하는 작업은 각각 {@link
+android.app.Activity#onResume} 및 {@link android.app.Activity#onPause} 콜백 중에 수행하는 것을 권장합니다.</p>
+
+<pre>
+&#64;Override
+protected void onResume() {
+    super.onResume();
+    getPreferenceScreen().getSharedPreferences()
+            .registerOnSharedPreferenceChangeListener(this);
+}
+
+&#64;Override
+protected void onPause() {
+    super.onPause();
+    getPreferenceScreen().getSharedPreferences()
+            .unregisterOnSharedPreferenceChangeListener(this);
+}
+</pre>
+
+<p class="caution"><strong>주의:</strong> {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}를 호출하면 
+현재의 경우, 기본 설정 관리자가 수신기에 대한 강력한 참조를 저장하지 않습니다. 반드시 수신기에 대한 강력한 
+참조를 저장해야 합니다. 그렇지 않으면 가비지 수집의 대상이 될 가능성이 높습니다. 권장 사항으로는 
+수신기를 객체의 인스턴스 데이터 안에 보관하는 것을 추천합니다. 이 객체는 
+수신기를 필요로 하는 기간만큼 오래 존재할 것이 확실해야 합니다.</p>
+
+<p>예를 들어 다음 코드에서 발신자는 수신기에 대한 참조를 
+보관하지 않습니다. 그 결과 해당 수신기가 가비지 수집의 대상이 되며 
+향후 언젠가 알 수 없는 시점에 고장을 일으키게 될 것입니다.</p>
+
+<pre>
+prefs.registerOnSharedPreferenceChangeListener(
+  // Bad! The listener is subject to garbage collection!
+  new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+});
+</pre>
+
+<p>대신, 수신기에 대한 참조를 수신기가 필요한 기간만큼 오래 존재할 것이 확실한 객체의 
+인스턴스 데이터 필드에 저장하십시오.</p>
+
+<pre>
+SharedPreferences.OnSharedPreferenceChangeListener listener =
+    new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+};
+prefs.registerOnSharedPreferenceChangeListener(listener);
+</pre>
+
+<h2 id="NetworkUsage">네트워크 사용량 관리하기</h2>
+
+
+<p>Android 4.0부터 시스템의 설정 애플리케이션을 사용하면 사용자가 
+애플리케이션이 전경과 배경에 있는 동안 각각 얼마나 많은 네트워크 데이터를 사용하는지 알아볼 수 있게 되었습니다. 그런 다음 
+사용자는 각각의 앱에 대해 배경 데이터 사용을 비활성화할 수 있습니다. 사용자가 여러분의 앱이 배경에서 
+데이터에 액세스하는 기능을 비활성화하는 사태를 피하려면 데이터 연결을 효율적으로 사용하고 
+사용자가 애플리케이션 설정을 통하여 앱의 데이터 사용량을 미세 조정할 수 있도록 허용해야 합니다.<p>
+
+<p>예를 들어 사용자에게 앱의 데이터 동기화 빈도를 제어하도록 허용할 수 있습니다. 앱이 Wi-Fi에 있을 때에만 
+업로드/다운로드를 수행하도록 할지 여부, 앱이 로밍 중에 데이터를 사용하도록 할지 여부 등을 이렇게 조절합니다. 사용자가 
+이러한 제어 기능을 사용할 수 있게 되면 시스템 설정에서 설정한 한도에 가까워지고 
+있을 때 앱의 데이터 액세스를 비활성화할 가능성이 낮아집니다. 그 대신 앱이 사용하는 데이터 양을 
+정밀하게 제어할 수 있기 때문입니다.</p>
+
+<p>일단 필요한 기본 설정을 {@link android.preference.PreferenceActivity}에 
+추가하여 앱의 데이터 습관을 제어하도록 했으면, 다음으로 매니페스트 파일에 있는 {@link
+android.content.Intent#ACTION_MANAGE_NETWORK_USAGE}에 대한 인텐트 필터를 추가해야 합니다. 예:</p>
+
+<pre>
+&lt;activity android:name="SettingsActivity" ... >
+    &lt;intent-filter>
+       &lt;action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
+       &lt;category android:name="android.intent.category.DEFAULT" />
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>이 인텐트 필터는 이것이 애플리케이션의 데이터 사용량을 제어하는 액티비티라는 
+사실을 시스템에 나타내는 역할을 합니다. 따라서, 사용자가 시스템의 설정 앱에서 여러분의 앱이 
+얼마나 많은 데이터를 사용하는지 알아볼 때면 <em>애플리케이션 설정 보기</em> 버튼을 사용할 수 있어 
+{@link android.preference.PreferenceActivity}를 시작하게 됩니다. 그러면 사용자는 
+앱이 사용할 데이터 양을 미세하게 조정할 수 있습니다.</p>
+
+
+
+
+
+
+
+<h2 id="Custom">사용자 지정 기본 설정 구축하기</h2>
+
+<p>Android 프레임워크에는 다양한 {@link android.preference.Preference} 하위 클래스가 포함되어 있어 
+여러 가지 설정 유형에 맞게 UI를 구축할 수 있습니다. 
+하지만, 기본 제공 솔루션이 없는 설정이 필요하게 되는 경우도 있습니다. 예를 들어 숫자 선택기 또는 
+날짜 선택기 등이 이에 해당됩니다. 그러한 경우에는 사용자 지정 기본 설정을 만들어야 합니다. 이때 
+{@link android.preference.Preference} 클래스 또는 다른 하위 클래스 중 하나를 확장하는 방법을 씁니다.</p>
+
+<p>{@link android.preference.Preference} 클래스를 확장하는 경우, 다음과 같이 
+몇 가지 중요한 해야 할 일이 있습니다.</p>
+
+<ul>
+  <li>사용자가 설정을 선택하면 나타나는 사용자 인터페이스를 지정합니다.</li>
+  <li>필요에 따라 설정의 값을 저장합니다.</li>
+  <li>{@link android.preference.Preference}가 보이게 되면 
+이를 현재(또는 기본) 값으로 초기화합니다.</li>
+  <li>시스템이 요청하는 경우 기본 값을 제공합니다.</li>
+  <li>{@link android.preference.Preference}가 나름의 UI(예: 대화)를 제공하는 경우, 상태를 
+저장하고 복원하여 수명 주기 변경을 처리할 수 있도록 합니다(예: 사용자가 화면을 돌리는 경우).</li>
+</ul>
+
+<p>다음 섹션에서는 이와 같은 각각의 작업을 수행하는 방법을 설명합니다.</p>
+
+
+
+<h3 id="CustomSelected">사용자 인터페이스 지정하기</h3>
+
+  <p>{@link android.preference.Preference} 클래스를 직접 확장하는 경우, 
+{@link android.preference.Preference#onClick()}을 구현하여 사용자가 
+항목을 선택할 때 일어날 동작을 정의해야 합니다. 그러나, 대부분의 사용자 지정 설정은 {@link android.preference.DialogPreference}를 확장하여 
+대화를 표시하도록 합니다. 이렇게 하면 절차가 단순해집니다. {@link
+android.preference.DialogPreference}를 확장하는 경우에는 클래스 생성자 중에 반드시 {@link
+android.preference.DialogPreference#setDialogLayoutResource setDialogLayoutResourcs()}를 호출하여 
+대화에 대한 레이아웃을 지정해야 합니다.</p>
+
+  <p>예를 들어 다음은 레이아웃을 선언하는 사용자 지정 {@link
+android.preference.DialogPreference}와 기본 
+긍정적 및 부정적 대화 버튼에 대한 텍스트를 지정하는 생성자입니다.</p>
+
+<pre>
+public class NumberPickerPreference extends DialogPreference {
+    public NumberPickerPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        
+        setDialogLayoutResource(R.layout.numberpicker_dialog);
+        setPositiveButtonText(android.R.string.ok);
+        setNegativeButtonText(android.R.string.cancel);
+        
+        setDialogIcon(null);
+    }
+    ...
+}
+</pre>
+
+
+
+<h3 id="CustomSave">설정의 값 저장하기</h3>
+
+<p>설정에 대한 값은 언제든 저장할 수 있습니다. {@link
+android.preference.Preference} 클래스의 {@code persist*()} 메서드 중 하나를 호출하기만 하면 됩니다. 예를 들어 설정의 값이 정수인 경우 {@link
+android.preference.Preference#persistInt persistInt()}를, 부울을 저장하려면 
+{@link android.preference.Preference#persistBoolean persistBoolean()}을 호출하십시오.</p>
+
+<p class="note"><strong>참고:</strong> 각각의 {@link android.preference.Preference}는 데이터 유형 하나씩만 
+저장할 수 있으므로, 사용자 지정 
+{@link android.preference.Preference}에서 사용한 데이터 유형에 적절한 {@code persist*()} 메서드를 사용해야 합니다.</p>
+
+<p>설정을 유지하기로 선택하는 시점은 확장하는 지점이 {@link
+android.preference.Preference} 클래스인지에 좌우될 수 있습니다. {@link
+android.preference.DialogPreference}를 확장하면 값을 유지하는 것은 대화가 긍정적인 결과로 인해 
+닫히는 경우만으로 국한해야 합니다(사용자가 "확인(OK)" 버튼을 선택하는 경우).</p>
+
+<p>{@link android.preference.DialogPreference}가 닫히면 시스템이 {@link
+android.preference.DialogPreference#onDialogClosed onDialogClosed()} 메서드를 호출합니다. 이 메서드에는 
+부울 인수가 포함되어 있어 사용자의 결과가 "긍정적"인지 아닌지를 나타냅니다. 이 값이 
+<code>true</code>인 경우, 사용자가 긍정적 버튼을 선택한 것이고 새 값을 저장해야 합니다. 예:
+</p>
+
+<pre>
+&#64;Override
+protected void onDialogClosed(boolean positiveResult) {
+    // When the user selects "OK", persist the new value
+    if (positiveResult) {
+        persistInt(mNewValue);
+    }
+}
+</pre>
+
+<p>이 예시에서 <code>mNewValue</code>는 설정의 현재 값을 보유한 클래스 
+구성원입니다. {@link android.preference.Preference#persistInt persistInt()}를 호출하면 
+{@link android.content.SharedPreferences} 파일에 대한 값을 저장합니다(이 
+{@link android.preference.Preference}에 대하여 XML 파일에 지정된 키를 자동으로 사용합니다).</p>
+
+
+<h3 id="CustomInitialize">현재 값 초기화하기</h3>
+
+<p>시스템이 {@link android.preference.Preference}를 화면에 추가하는 경우, 이는 
+{@link android.preference.Preference#onSetInitialValue onSetInitialValue()}를 호출하여 
+설정에 유지된 값이 있는지 없는지를 알립니다. 유지된 값이 없는 경우, 이 호출은 기본 값을 
+제공합니다.</p>
+
+<p>{@link android.preference.Preference#onSetInitialValue onSetInitialValue()} 메서드는 
+부울 값 <code>restorePersistedValue</code>를 전달하여 해당 설정에 대해 이미 어떤 값이 유지되었는지 
+아닌지를 나타냅니다. 만일 이것이 <code>true</code>라면, 유지된 값을 검색하되 
+{@link
+android.preference.Preference} 클래스의 {@code getPersisted*()} 메서드 중 하나를 호출하는 방법을 써야 합니다. 예를 들어 정수 값이라면 {@link
+android.preference.Preference#getPersistedInt getPersistedInt()}를 사용합니다. 보통은 
+유지된 값을 검색하여, UI에 이전에 저장된 값을 반영하여 이를 적절하게 업데이트할 수 
+있도록 하는 것이 좋습니다.</p>
+
+<p><code>restorePersistedValue</code>가 <code>false</code>인 경우, 
+두 번째 인수로 전달된 기본 값을 사용해야 합니다.</p>
+
+<pre>
+&#64;Override
+protected void onSetInitialValue(boolean restorePersistedValue, Object defaultValue) {
+    if (restorePersistedValue) {
+        // Restore existing state
+        mCurrentValue = this.getPersistedInt(DEFAULT_VALUE);
+    } else {
+        // Set default state from the XML attribute
+        mCurrentValue = (Integer) defaultValue;
+        persistInt(mCurrentValue);
+    }
+}
+</pre>
+
+<p>각 {@code getPersisted*()} 메서드는 기본 값을 나타내는 인수를 취하여 
+사실은 유지된 값이 전혀 없거나 키 자체가 존재하지 않는 경우 사용하도록 합니다. 위의 
+예시에서는 혹시 {@link
+android.preference.Preference#getPersistedInt getPersistedInt()}가 유지된 값을 반환할 수 없는 경우에 사용하도록 기본 값을 나타내는 데 로컬 상수를 사용하였습니다.</p>
+
+<p class="caution"><strong>주의:</strong> {@code getPersisted*()} 메서드에서는 
+<code>defaultValue</code>를 기본 값으로 사용하면 <strong>안 됩니다</strong>. 이것의 값은 
+<code>restorePersistedValue</code>가 <code>true</code>이면 항상 null이기 때문입니다.</p>
+
+
+<h3 id="CustomDefault">기본 값 제공하기</h3>
+
+<p>{@link android.preference.Preference} 클래스의 인스턴스가 기본 값을 나타내는 경우
+({@code android:defaultValue} 속성으로), 시스템은 
+값을 검색하기 위해 객체를 인스턴트화할 때 {@link android.preference.Preference#onGetDefaultValue
+onGetDefaultValue()}를 호출합니다. 이 메서드를 구현해야 
+시스템이 {@link
+android.content.SharedPreferences}에 있는 기본 값을 저장할 수 있습니다. 예:</p>
+
+<pre>
+&#64;Override
+protected Object onGetDefaultValue(TypedArray a, int index) {
+    return a.getInteger(index, DEFAULT_VALUE);
+}
+</pre>
+
+<p>이 메서드 인수가 여러분에게 필요한 모든 것을 제공합니다. 즉 속성 배열과 
+{@code android:defaultValue}의 위치로, 이는 반드시 검색해야 합니다. 이 메서드를 
+반드시 구현하여 속성에서 기본 값을 추출해야만 하는 이유는 값이 정의되지 않은 경우, 속성에 대한 
+로컬 기본 값을 꼭 지정해야 하기 때문입니다.</p>
+
+
+
+<h3 id="CustomSaveState">기본 설정의 상태 저장 및 복원하기</h3>
+
+<p>레이아웃에서의 {@link android.view.View}와 마찬가지로 {@link android.preference.Preference}
+하위 클래스가 액티비티 또는 프래그먼트가 재시작했을 때 
+그 상태를 저장하고 복원하는 역할을 맡습니다(예를 들어 사용자가 화면을 돌리는 경우 등). 
+{@link android.preference.Preference} 클래스의 상태를 적절하게 저장하고 복원하려면, 
+수명 주기 콜백 메서드 {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} 및 {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()}를 구현해야 합니다.</p>
+
+<p>{@link android.preference.Preference}의 상태를 정의하는 것은 
+{@link android.os.Parcelable} 인터페이스를 구현하는 객체입니다. Android 프레임워크는 
+그러한 객체를 제공하여 상태 객체를 정의하는 데 일종의 시작 지점으로 사용하도록 하고 있습니다. 즉 {@link
+android.preference.Preference.BaseSavedState} 클래스가 이에 해당됩니다.</p>
+
+<p>{@link android.preference.Preference} 클래스가 자신의 상태를 저장하는 방법을 정의하려면 
+{@link android.preference.Preference.BaseSavedState} 클래스를 확장해야 합니다. 아주 약간의 메서드를 재정의하고 
+{@link android.preference.Preference.BaseSavedState#CREATOR}
+객체를 정의해야 합니다.</p>
+
+<p>대부분의 앱에서는 다음과 같은 구현을 복사한 다음, 
+{@code value}를 처리하는 줄만 변경하면 됩니다. 이는 {@link android.preference.Preference} 하위 클래스가 정수보다는 데이터 
+유형을 저장하는 경우 해당됩니다.</p>
+
+<pre>
+private static class SavedState extends BaseSavedState {
+    // Member that holds the setting's value
+    // Change this data type to match the type saved by your Preference
+    int value;
+
+    public SavedState(Parcelable superState) {
+        super(superState);
+    }
+
+    public SavedState(Parcel source) {
+        super(source);
+        // Get the current preference's value
+        value = source.readInt();  // Change this to read the appropriate data type
+    }
+
+    &#64;Override
+    public void writeToParcel(Parcel dest, int flags) {
+        super.writeToParcel(dest, flags);
+        // Write the preference's value
+        dest.writeInt(value);  // Change this to write the appropriate data type
+    }
+
+    // Standard creator object using an instance of this class
+    public static final Parcelable.Creator&lt;SavedState> CREATOR =
+            new Parcelable.Creator&lt;SavedState>() {
+
+        public SavedState createFromParcel(Parcel in) {
+            return new SavedState(in);
+        }
+
+        public SavedState[] newArray(int size) {
+            return new SavedState[size];
+        }
+    };
+}
+</pre>
+
+<p>위의 {@link android.preference.Preference.BaseSavedState} 구현을 앱에 
+추가하고 나면(주로 {@link android.preference.Preference} 하위 클래스의 하위 클래스로), 이제 
+{@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} 및 {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()} 메서드를 구현해야 합니다. 이것은 
+{@link android.preference.Preference} 하위 클래스를 위한 것입니다.</p>
+
+<p>예:</p>
+
+<pre>
+&#64;Override
+protected Parcelable onSaveInstanceState() {
+    final Parcelable superState = super.onSaveInstanceState();
+    // Check whether this Preference is persistent (continually saved)
+    if (isPersistent()) {
+        // No need to save instance state since it's persistent,
+        // use superclass state
+        return superState;
+    }
+
+    // Create instance of custom BaseSavedState
+    final SavedState myState = new SavedState(superState);
+    // Set the state's value with the class member that holds current
+    // setting value
+    myState.value = mNewValue;
+    return myState;
+}
+
+&#64;Override
+protected void onRestoreInstanceState(Parcelable state) {
+    // Check whether we saved the state in onSaveInstanceState
+    if (state == null || !state.getClass().equals(SavedState.class)) {
+        // Didn't save the state, so call superclass
+        super.onRestoreInstanceState(state);
+        return;
+    }
+
+    // Cast state to custom BaseSavedState and pass to superclass
+    SavedState myState = (SavedState) state;
+    super.onRestoreInstanceState(myState.getSuperState());
+    
+    // Set this Preference's widget to reflect the restored state
+    mNumberPicker.setValue(myState.value);
+}
+</pre>
+
diff --git a/docs/html-intl/intl/ko/guide/topics/ui/ui-events.jd b/docs/html-intl/intl/ko/guide/topics/ui/ui-events.jd
new file mode 100644
index 0000000..b059bd2
--- /dev/null
+++ b/docs/html-intl/intl/ko/guide/topics/ui/ui-events.jd
@@ -0,0 +1,291 @@
+page.title=입력 이벤트
+parent.title=사용자 인터페이스
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>이 문서의 내용</h2>
+  <ol>
+    <li><a href="#EventListeners">이벤트 수신기</a></li>
+    <li><a href="#EventHandlers">이벤트 처리기</a></li>
+    <li><a href="#TouchMode">터치 모드</a></li>
+    <li><a href="#HandlingFocus">초점 처리하기</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>Android에는 사용자와 애플리케이션의 상호 작용으로부터 이벤트를 가로채는 방법이 여러 가지 있습니다. 
+사용자 인터페이스 내의 이벤트가 관련된 경우, 이러한 방식은 이벤트를 사용자가 상호 작용하는 
+특정 보기 객체로부터 캡처하는 것입니다. 이에 필요한 수단은 보기 클래스가 제공합니다.</p>
+
+<p>레이아웃을 작성하는 데 사용하게 되는 여러 가지 보기 클래스 안을 보면 UI 이벤트에 유용해 보이는 공개 콜백 
+메서드가 여러 개 있는 것이 눈에 띕니다. 이러한 메서드는 해당 객체에서 각각의 작업이 발생할 때 Android 프레임워크가 
+호출하는 것입니다. 예를 들어 보기(예: 버튼)를 하나 터치하면 
+해당 객체에서 <code>onTouchEvent()</code> 메서드가 호출됩니다. 그러나 이것을 가로채려면 클래스를 확장하고 
+메서드를 재정의해야 합니다. 다만 그런 이벤트를 처리하기 위해 모든 보기 객체를 
+다 확장하는 것은 타당성이 없습니다. 이 때문에 보기 클래스에 
+일련의 중첩된 인터페이스가 있고 거기에 훨씬 쉽게 정의할 수 있는 콜백에 있습니다. 이와 같은 
+인터페이스를 일명 <a href="#EventListeners">이벤트 수신기</a>라고 하는데, 이것이 UI와 사용자 상호 작용을 캡처하는 데 아주 적합합니다.</p>
+
+<p>사용자 상호 작용을 수신 대기하는 데에는 이벤트 수신기를 사용하는 것이 좀 더 보편적이지만, 사용자 지정 
+구성 요소를 구축하기 위해 보기 클래스를 확장하고자 하는 상황이 올 수도 있습니다. 
+어쩌면 {@link android.widget.Button}
+클래스를 확장하여 무언가 더 복잡한 것을 만들고자 할 수도 있습니다. 이런 경우, 클래스에 대한 기본 이벤트 행동을 클래스 
+<a href="#EventHandlers">이벤트 처리기</a>를 사용하여 정의할 수 있습니다.</p>
+
+
+<h2 id="EventListeners">이벤트 수신기</h2>
+
+<p>이벤트 수신기란 {@link android.view.View} 클래스 내에 있는 일종의 인터페이스로, 이 안에 하나의 
+콜백 메서드가 들어있습니다. 이러한 메서드는 수신기가 등록된 보기가 UI 안의 항목과 사용자의 상호 작용으로 인하여 트리거되었을 때 
+Android 프레임워크가 호출하는 것입니다.</p>
+
+<p>이벤트 수신기 인터페이스에 포함된 콜백 메서드는 다음과 같습니다.</p>
+
+<dl>
+  <dt><code>onClick()</code></dt>
+    <dd>{@link android.view.View.OnClickListener}에서 온 것입니다. 
+이것이 호출되는 것은 사용자가 항목을 터치하거나
+(터치 모드에 있을 때), 탐색 키 또는 트랙볼을 사용하여 해당 항목에 초점을 맞추고 있으면서 
+적절한 "엔터" 키를 누르거나 트랙볼을 꾹 누를 때입니다.</dd>
+  <dt><code>onLongClick()</code></dt>
+    <dd>{@link android.view.View.OnLongClickListener}에서 온 것입니다. 
+이것이 호출되는 것은 사용자가 항목을 길게 누르거나(터치 모드에 있을 때), 
+탐색 키 또는 트랙볼을 사용하여 해당 항목에 초점을 맞추고 있으면서 
+적절한 "엔터" 키를 누르거나 트랙볼을 꾹 누를 때입니다(일 초간).</dd>
+  <dt><code>onFocusChange()</code></dt>
+    <dd>{@link android.view.View.OnFocusChangeListener}에서 온 것입니다. 
+이것이 호출되는 것은 사용자가 탐색 키 또는 트랙볼을 사용하여 항목 쪽으로 이동하거나 항목에서 멀어질 때입니다.</dd>
+  <dt><code>onKey()</code></dt>
+    <dd>{@link android.view.View.OnKeyListener}에서 온 것입니다. 
+이것이 호출되는 것은 사용자가 항목에 초점을 맞추고 있으면서 기기에 있는 하드웨어 키를 누르거나 키에서 손을 떼는 경우입니다.</dd>
+  <dt><code>onTouch()</code></dt>
+    <dd>{@link android.view.View.OnTouchListener}에서 온 것입니다. 
+이것이 호출되는 것은 사용자가 터치 이벤트로서의 자격을 만족하는 작업을 수행하는 경우로, 여기에 
+누르기, 손 떼기와 화면에서 이루어지는 모든 움직임 동작(항목의 경계 내에서)이 포함됩니다.</dd>
+  <dt><code>onCreateContextMenu()</code></dt>
+    <dd>{@link android.view.View.OnCreateContextMenuListener}에서 온 것입니다. 
+이것을 호출하는 것은 컨텍스트 메뉴가 구축되는 중일 때입니다(정체된 "롱 클릭"의 결과로). 
+<a href="{@docRoot}guide/topics/ui/menus.html#context-menu">메뉴</a>
+ 개발자 가이드에 있는 컨텍스트 메뉴 관련 논의를 참조하십시오.</dd>
+</dl>
+
+<p>이러한 메서드는 각자의 인터페이스 안에 거주하는 유일한 주민입니다. 이러한 메서드 중 하나를 
+정의하고 이벤트를 처리하려면 액티비티 내의 중첩된 인터페이스를 구현하거나 익명의 클래스로 정의하면 됩니다. 
+그런 다음 구현의 인스턴스 하나를 
+각각의 <code>View.set...Listener()</code> 메서드에 전달하십시오 (예: 
+<code>{@link android.view.View#setOnClickListener(View.OnClickListener) setOnClickListener()}</code>를 
+호출한 다음 이를 {@link android.view.View.OnClickListener OnClickListener}의 구현에 전달합니다).</p>
+
+<p>아래의 예시는 버튼에 대하여 온-클릭 수신기를 등록하는 방법을 나타낸 것입니다. </p>
+
+<pre>
+// Create an anonymous implementation of OnClickListener
+private OnClickListener mCorkyListener = new OnClickListener() {
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+};
+
+protected void onCreate(Bundle savedValues) {
+    ...
+    // Capture our button from layout
+    Button button = (Button)findViewById(R.id.corky);
+    // Register the onClick listener with the implementation above
+    button.setOnClickListener(mCorkyListener);
+    ...
+}
+</pre>
+
+<p>OnClickListener를 액티비티의 일부로 구현하는 것이 더 편리할 수도 있습니다.
+이렇게 하면 클래스 부하와 객체 할당이 추가되는 것을 피할 수 있습니다. 예:</p>
+<pre>
+public class ExampleActivity extends Activity implements OnClickListener {
+    protected void onCreate(Bundle savedValues) {
+        ...
+        Button button = (Button)findViewById(R.id.corky);
+        button.setOnClickListener(this);
+    }
+
+    // Implement the OnClickListener callback
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+    ...
+}
+</pre>
+
+<p>위의 예시에서 <code>onClick()</code> 콜백에는 
+반환 값이 없지만 다른 이벤트 수신기 메서드 중에는 부울 값을 반환해야만 하는 것도 있다는 점을 유의하십시오. 그 이유는 이벤트에 따라 
+다릅니다. 이런 필수 사항이 적용되는 몇몇 메서드의 경우, 이유는 다음과 같습니다.</p>
+<ul>
+  <li><code>{@link android.view.View.OnLongClickListener#onLongClick(View) onLongClick()}</code> - 
+이것은 부울 값을 반환하여 이벤트를 완전히 사용하였으며 더 이상 이를 담지 않아도 되는지 여부를 나타냅니다. 
+다시 말해, <em>참</em>을 반환하면 이벤트를 처리했으며 여기에서 중단해야 한다는 것을 의미하며 
+<em>거짓</em>을 반환하면 이벤트가 아직 미처리 상태이며/거나 이 이벤트를 다른 
+온-클릭 수신기로 계속 진행해야 할지 나타내는 것입니다.</li>
+  <li><code>{@link android.view.View.OnKeyListener#onKey(View,int,KeyEvent) onKey()}</code> - 
+이것은 부울 값을 반환하여 이벤트를 완전히 사용하였으며 더 이상 이를 담지 않아도 되는지 여부를 나타냅니다.
+    다시 말해, <em>참</em>을 반환하면 이벤트를 처리했으며 여기에서 중단해야 한다는 것을 의미하며 
+<em>거짓</em>을 반환하면 이벤트가 아직 미처리 상태이며/거나 이 이벤트를 다른 
+온-키 수신기로 계속 진행해야 할지 나타내는 것입니다.</li>
+  <li><code>{@link android.view.View.OnTouchListener#onTouch(View,MotionEvent) onTouch()}</code> - 
+이것은 부울 값을 반환하여 수신기가 이 이벤트를 사용하는지 아닌지를 나타냅니다. 여기서 중요한 점은 
+이 이벤트에는 서로 연달아 발생하는 여러 개의 작업이 있을 수 있다는 것입니다. 그러므로 '아래로' 작업 이벤트를 수신했을 때 <em>거짓</em>을 반환하면, 
+해당 이벤트를 사용하지 않았으며 이 이벤트로부터 이어지는 이후의 작업에 
+흥미가 없음을 나타내는 것이 됩니다. 따라서 이 이벤트 내의 다른 모든 작업에 대해 
+호출되지 않습니다(예: 손가락 동작 또는 최종적인 '위로' 작업 이벤트 등).</li>
+</ul>
+
+<p>하드웨어 키 이벤트는 항상 현재 초점의 중심에 있는 보기로 전달된다는 점을 명심하십시오. 이들은 보기 계층의 맨 위에서 시작하여 
+아래 방향으로 발송되어 적절한 목적지에 도달할 때까지 계속합니다. 보기(또는 보기의 하위)에 
+현재 초점이 맞춰져 있으면, 이벤트가 <code>{@link android.view.View#dispatchKeyEvent(KeyEvent)
+dispatchKeyEvent()}</code> 메서드를 통과하여 이동하는 것을 확인할 수 있습니다. 보기를 통해 키 이벤트를 캡처하는 대신, 액티비티 내부의 모든 이벤트를 <code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>및 
+
+<code>{@link android.app.Activity#onKeyUp(int,KeyEvent) onKeyUp()}</code>을 사용하여 수신할 수도 있습니다.</p>
+
+<p>또한, 애플리케이션에 대한 텍스트 입력의 경우 대다수의 기기에는 소프트웨어 입력 메서드만 있다는 사실을 
+명심하십시오. 그러한 메서드는 반드시 키 기반이 아니어도 됩니다. 음성 입력, 손글씨 등을 사용하는 것도 있습니다. 입력 
+메서드가 키보드 같은 인터페이스를 표시하더라도 일반적으로 
+<code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code> 이벤트군을 트리거하지는 <strong>않습니다</strong>. 특정 키 누름을 
+제어해야만 하는 UI는 절대 구축하면 안 됩니다. 이렇게 하면 애플리케이션이 하드웨어 키보드가 있는 
+기기에만 한정됩니다. 특히, 사용자가 리턴 키를 누르면 입력의 유효성을 검사하는 데 이와 같은 메서드에 
+의존해서는 안 됩니다. 대신, {@link android.view.inputmethod.EditorInfo#IME_ACTION_DONE}과 같은 작업을 사용하여 애플리케이션이 반응할 것으로 기대되는 방식에 해당되는 
+입력 메서드를 신호하여 의미 있는 방식으로 UI를 변경할 수 있게 하는 것이 좋습니다. 소프트웨어 입력 메서드가 
+어떻게 작동할지 임의로 추정하지 마시고, 이미 서식 지정된 텍스트를 애플리케이션에 제공해줄 것이라 믿으면 됩니다.</p>
+
+<p class="note"><strong>참고:</strong> Androids는 우선 이벤트 처리기부터 호출하고, 그 다음에 클래스 정의로부터 가져온 
+적절한 기본 처리기를 두 번째로 호출합니다. 따라서, 이와 같은 이벤트 수신기에서 <em>참</em>을 반환하면 이벤트가 
+다른 이벤트 수신기로 전파되는 것을 중지시킬 뿐만 아니라 보기에 있는 
+기본 이벤트 처리기로의 콜백도 차단하게 됩니다. 따라서 <em>참</em>을 반환하는 경우 해당 이벤트를 종료하고 싶은 것인지 확신해야 합니다.</p>
+
+
+<h2 id="EventHandlers">이벤트 처리기</h2>
+
+<p>보기에서 사용자 지정 구성 요소를 구축하는 경우, 기본 이벤트 처리기로 사용될 콜백 메서드를 
+여러 개 정의할 수 있게 됩니다.
+<a href="{@docRoot}guide/topics/ui/custom-components.html">사용자 지정
+구성 요소</a>에 대한 문서를 보면 이벤트 처리에 사용되는 몇 가지 보편적인 콜백을 확인할 수 있습니다. 
+다음은 그 몇 가지 예입니다.</p>
+<ul>
+  <li><code>{@link  android.view.View#onKeyDown}</code> - 새로운 키 이벤트가 발생하면 호출합니다.</li>
+  <li><code>{@link  android.view.View#onKeyUp}</code> - 새로운 키 '위로' 이벤트가 발생하면 호출합니다.</li>
+  <li><code>{@link  android.view.View#onTrackballEvent}</code> - 트랙볼 동작 이벤트가 발생하면 호출합니다.</li>
+  <li><code>{@link  android.view.View#onTouchEvent}</code> - 터치 스크린 동작 이벤트가 발생하면 호출합니다.</li>
+  <li><code>{@link  android.view.View#onFocusChanged}</code> - 보기가 초점을 취하거나 이를 잃으면 호출합니다.</li>
+</ul>
+<p>개발자 여러분이 알아두어야 하는 다른 메서드가 몇 가지 더 있습니다. 이들은 보기 클래스의 일부분이 아니지만, 
+이벤트를 처리할 수 있는 방식에 직접적으로 영향을 미칠 수 있는 것들입니다. 그러니, 레이아웃 안에서 좀 더 복잡한 이벤트를 관리하는 경우, 
+이와 같은 다른 메서드도 고려하십시오.</p>
+<ul>
+  <li><code>{@link  android.app.Activity#dispatchTouchEvent(MotionEvent)
+    Activity.dispatchTouchEvent(MotionEvent)}</code> - 이것을 사용하면 {@link 
+    android.app.Activity}로 하여금 모든 터치 이벤트가 창으로 발송되기 전에 이들을 가로채도록 할 수 있습니다.</li>
+  <li><code>{@link  android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)
+    ViewGroup.onInterceptTouchEvent(MotionEvent)}</code> - 이것을 사용하면 {@link
+    android.view.ViewGroup}으로 하여금 이벤트가 하위 보기로 발송되는 것을 지켜보도록 할 수 있습니다.</li>
+  <li><code>{@link  android.view.ViewParent#requestDisallowInterceptTouchEvent(boolean)
+    ViewParent.requestDisallowInterceptTouchEvent(boolean)}</code> - 이것을 
+호출하는 것은 상위 보기에 <code>{@link 
+    android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)}</code>가 있는 터치 이벤트를 가로채면 안 된다고 나타낼 때입니다.</li>
+</ul>
+
+<h2 id="TouchMode">터치 모드</h2>
+<p>
+사용자가 방향 키 또는 트랙볼을 사용하여 사용자 인터페이스를 탐색하고 있는 경우, 
+조치 가능한 항목(예: 버튼)에 초점을 맞춰 어느 것이 입력을 허용할지 사용자가 
+볼 수 있도록 해야 합니다.  하지만 기기에 터치 기능이 있고 사용자가 
+인터페이스를 터치하여 인터페이스와의 상호 작용을 시작하는 경우라면, 더 이상 항목을 강조 표시하거나 
+특정 보기에 초점을 맞추지 않아도 됩니다.  따라서 "터치 모드"라고 불리는 상호 작용에 대한 
+모드가 따로 있습니다. 
+</p>
+<p>
+터치 기능이 있는 기기의 경우, 사용자가 화면을 터치하면 기기가 터치 모드에 
+진입하게 됩니다.  이 시점부터는 
+{@link android.view.View#isFocusableInTouchMode}가 참인 보기에만 초점을 맞출 수 있습니다. 예를 들어 텍스트 편집 위젯이 이에 해당됩니다. 
+버튼처럼 터치할 수 있는 다른 보기의 경우 터치해도 주의를 끌 수 없으며 이를 누르면 그저 
+온-클릭 수신기를 실행시키기만 합니다.
+</p>
+<p>
+사용자가 방향 키를 누르거나 트랙볼로 스크롤 동작을 할 때마다 기기가 
+터치 모드를 종료하고 초점을 맞출 보기를 찾습니다. 이제 사용자는 사용자 인터페이스와 
+상호 작용을 재개해도 되며, 화면을 터치하지 않아도 됩니다.
+</p>
+<p>
+터치 모드 상태는 시스템 전체를 통틀어 유지됩니다(모든 창과 액티비티 포함). 
+현재 상태를 쿼리하려면 
+{@link android.view.View#isInTouchMode}를 호출하여 기기가 현재 터치 모드에 있는지 확인하면 됩니다.
+</p>
+
+
+<h2 id="HandlingFocus">초점 처리하기</h2>
+
+<p>프레임워크가 사용자 입력에 응답하여 일상적인 초점 이동을 처리합니다. 
+여기에는 보기가 제거되거나 숨겨지는 것, 또는 새 보기를 사용할 수 있게 됨에 따라 
+초점을 변경하는 것이 포함됩니다. 보기는 초점을 취하고자 하는 의향을 
+<code>{@link android.view.View#isFocusable()}</code> 메서드를 통해 나타냅니다. 보기가 초점을 취할 수 있는지 여부를 변경하려면 
+<code>{@link android.view.View#setFocusable(boolean) setFocusable()}</code>을 호출합니다.  터치 모드에 있는 경우, 
+어느 보기가 <code>{@link android.view.View#isFocusableInTouchMode()}</code>로 초점을 취하는 것을 허용하는지 여부를 쿼리할 수 있습니다. 
+이것은 <code>{@link android.view.View#setFocusableInTouchMode(boolean) setFocusableInTouchMode()}</code>로 변경하면 됩니다.
+</p>
+
+<p>초점 이동은 주어진 방향에서 가장 가까운 이웃을 찾아내는 알고리즘을 기반으로 
+합니다. 드문 일이지만 기본 알고리즘이 개발자가 의도한 행동과 일치하지 않는 
+경우도 있습니다. 이러한 상황이라면, 레이아웃 파일에서 다음과 같은 XML 속성을 
+사용하여 명시적 재정의를 제공하면 됩니다.
+<var>nextFocusDown</var>, <var>nextFocusLeft</var>, <var>nextFocusRight</var>, 및
+<var>nextFocusUp</var>입니다. 이와 같은 속성 중 한 가지를 초점이 <em>떠나고</em> 있는 보기에 
+추가합니다. 속성의 값을 초점을 
+<em>맞춰야 할</em> 보기의 ID가 되도록 정의합니다. 예:</p>
+<pre>
+&lt;LinearLayout
+    android:orientation="vertical"
+    ... >
+  &lt;Button android:id="@+id/top"
+          android:nextFocusUp="@+id/bottom"
+          ... />
+  &lt;Button android:id="@+id/bottom"
+          android:nextFocusDown="@+id/top"
+          ... />
+&lt;/LinearLayout>
+</pre>
+
+<p>보통은 이런 수직 레이아웃에서 첫 버튼부터 위로 이동하면 아무 데도 갈 수 없고, 
+두 번째 버튼에서 아래로 이동해도 마찬가지입니다. 이제 맨 위 버튼이 맨 아래 버튼을 다음과 같이 
+정의했습니다. <var>nextFocusUp</var> (반대쪽도 마찬가지) 따라서 이동 초점은 위에서 아래로 갔다가 
+아래에서 위로 순환하게 됩니다.</p>
+
+<p>보기를 UI에서 초점을 맞출 수 있는 것으로 선언하고자 하는 경우(일반적으로는 그렇지 않음), 
+보기에 레이아웃 선언에서 <code>android:focusable</code> XML 속성을 추가합니다. 
+이 값을 <var>참</var>으로 설정합니다. 터치 모드에 있을 때에도 보기를 초점을 맞출 수 있는 것으로 
+선언할 수 있습니다. <code>android:focusableInTouchMode</code>를 사용하면 됩니다.</p>
+<p>특정 보기에 초점을 맞추기를 요청하려면, <code>{@link android.view.View#requestFocus()}</code>를 호출하십시오.</p>
+<p>초점 이벤트를 수신 대기하려면(어떤 보기에 초점이 맞춰지거나 이를 잃는 경우 알림을 받으려면), 
+<code>{@link android.view.View.OnFocusChangeListener#onFocusChange(View,boolean) onFocusChange()}</code>를 사용하면 됩니다. 
+이는 위의 <a href="#EventListeners">이벤트 수신기</a> 섹션에서 이야기한 바와 같습니다.</p>
+
+
+
+<!--
+<h2 is="EventCycle">Event Cycle</h2>
+   <p>The basic cycle of a View is as follows:</p>
+   <ol>
+    <li>An event comes in and is dispatched to the appropriate View. The View
+    handles the event and notifies any listeners.</li>
+    <li>If, in the course of processing the event, the View's bounds may need
+    to be changed, the View will call {@link android.view.View#requestLayout()}.</li>
+    <li>Similarly, if in the course of processing the event the View's appearance
+    may need to be changed, the View will call {@link android.view.View#invalidate()}.</li>
+    <li>If either {@link android.view.View#requestLayout()} or {@link android.view.View#invalidate()} were called,
+    the framework will take care of measuring, laying out, and drawing the tree
+    as appropriate.</li>
+   </ol>
+   
+   <p class="note"><strong>Note:</strong> The entire View tree is single threaded. You must always be on
+   the UI thread when calling any method on any View.
+   If you are doing work on other threads and want to update the state of a View
+   from that thread, you should use a {@link android.os.Handler}.
+   </p>
+-->
diff --git a/docs/html-intl/intl/ko/index.jd b/docs/html-intl/intl/ko/index.jd
index d95d698..01c8587 100644
--- a/docs/html-intl/intl/ko/index.jd
+++ b/docs/html-intl/intl/ko/index.jd
@@ -5,42 +5,81 @@
 
 @jd:body
 
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
 
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="/preview/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
   <div class="wrap" style="max-width:1100px;margin-top:0">
-    <div class="cols dac-hero-content">
-      <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
-      </div>
-      <div class="col-8of16 col-pull-7of16">
-        <div class="dac-hero-tag"></div>
-
-        <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
-        <p class="dac-hero-description">Android의 다음 버전을 만나볼 준비가
-        되셨습니까? 여러분의 앱을 Nexus 5, 6, 9 및 Player에서 테스트해보십시오. </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/index.html">
+    <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+      <a href="{@docRoot}preview/index.html">
+        <h1 class="dac-hero-title">Android N Developer Preview</h1>
+        <p class="dac-hero-description">
+          Get ready for the next version of Android!
+          <strong>Test your apps</strong> on Nexus and other devices. Support new system
+          behaviors to <strong>save power and memory</strong>.
+          Extend your apps with <strong>multi-window UI</strong>,
+          <strong>direct reply notifications</strong> and more.
+        </p>
+        <a class="dac-hero-cta" href="/preview/index.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          지금 시작하세요!
-        </a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
+          Learn more
+        </a><!--<br>
+        <a class="dac-hero-cta" href="/preview/support.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-      </div>
+          Update to Developer Preview (final SDK)
+        </a><br>-->
+      </a>
+    </div>
+    <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+      <a href="{@docRoot}preview/index.html">
+        <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+             srcset="/images/home/n-preview-hero.png 1x,
+             /images/home/n-preview-hero_2x.png 2x">
+        </a>
     </div>
   </div>
-</a>
-</article></section>
+</section>
 
-<div class="actions-bar dac-expand dac-invert">
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
   <div class="wrap dac-offset-parent">
     <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
       <i class="dac-sprite dac-arrow-down-gray"></i>
     </a>
+    <ul class="dac-actions">
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}sdk/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Get the SDK
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}samples/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Browse sample code
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}distribute/stories/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Watch stories
+        </a>
+      </li>
+    </ul>
+  </div><!-- end .wrap -->
+</div><!-- end .dac-actions -->
+
+<div id="useOldTemplates" style="display:none" class="actions-bar dac-expand dac-invert">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button="" href="#build-apps">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
     <div class="actions">
       <div><a href="{@docRoot}sdk/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
@@ -50,17 +89,15 @@
         <span class="dac-sprite dac-auto-chevron-large"></span>
         Browse Samples
       </a></div>
-      <div><a href="//www.youtube.com/user/androiddevelopers">
+      <div><a href="{@docRoot}distribute/stories/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
-        Watch Videos
+        Watch Stories
       </a></div>
     </div><!-- end .actions -->
   </div><!-- end .wrap -->
-</div><!-- end .actions-bar -->
+</div>
 
-
-
-<section class="dac-section dac-section-light" id="build-apps"><div class="wrap">
+<section class="dac-section dac-light" id="build-apps"><div class="wrap">
   <h1 class="dac-section-title">Build Beautiful Apps</h1>
   <div class="dac-section-subtitle">
     Resources to get you started with designing and developing for Android.
diff --git a/docs/html-intl/intl/ko/preview/api-overview.jd b/docs/html-intl/intl/ko/preview/api-overview.jd
deleted file mode 100644
index f9308b1..0000000
--- a/docs/html-intl/intl/ko/preview/api-overview.jd
+++ /dev/null
@@ -1,521 +0,0 @@
-page.title=API 개요
-page.keywords=미리 보기, SDK, 호환성
-page.tags=previewresources, androidm
-sdk.platform.apiLevel=22-mnc
-page.image=images/cards/card-api-overview_16-9_2x.png
-@jd:body
-
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>이 문서의 내용
-    <a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
-        <span class="more">더 보기</span>
-        <span class="less" style="display:none">숨기기</span></a></h2>
-
-<ol id="toc44" class="hide-nested">
-  <li><a href="#app-linking">앱 연결</a></li>
-  <li><a href="#backup">앱용 자동 백업</a></li>
-  <li><a href="#authentication">인증</a>
-    <ol>
-      <li><a href="#fingerprint-authentication">지문 인증</a></li>
-      <li><a href="#confirm-credential">확인 자격 증명</a></li>
-    </ol>
-  </li>
-  <li><a href="#direct-share">직접 공유</a></li>
-  <li><a href="#voice-interactions">음성 상호작용</a></li>
-  <li><a href="#assist">지원 API</a></li>
-  <li><a href="#notifications">알림</a></li>
-  <li><a href="#bluetooth-stylus">블루투스 스타일러스 지원</a></li>
-  <li><a href="#ble-scanning">블루투스 저전력 스캔 개선</a></li>
-  <li><a href="#hotspot">핫스팟 2.0 릴리스 1 지원</a></li>
-  <li><a href="#4K-display">4K 디스플레이 모드</a></li>
-  <li><a href="#behavior-themeable-colorstatelists">테마 지정 가능 ColorStateLists</a></li>
-  <li><a href="#audio">오디오 기능</a></li>
-  <li><a href="#video">비디오 기능</a></li>
-  <li><a href="#camera">카메라 기능</a>
-    <ol>
-      <li><a href="#flashlight">Flashlight API</a></li>
-      <li><a href="#reprocessing">카메라 재처리</a></li>
-    </ol>
-  </li>
-  <li><a href="#afw">Android for Work 기능</a></li>
-</ol>
-
-<h2>API 차이점</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">M 미리 보기에 대한 API 레벨 22 &raquo;</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>M 개발자 미리 보기에서는 다가오는 Android 플랫폼 릴리스를 미리 볼 수 있도록 하였습니다. 이 릴리스는 사용자와 앱 개발자를 위한 여러 가지 새 기능을 제공합니다.
-
- 이 문서에서는 가장 중요한 API를 몇 가지 소개합니다.</p>
-
-<p>M 개발자 미리 보기는 <strong>개발자 얼리 어답터</strong>와 <strong>테스터</strong>를 위해 마련된 것입니다.
- Android 프레임워크가 나아갈 방향에 영향을 미치는 데 관심이 있으시다면, <a href="{@docRoot}preview/setup-sdk.html">M 개발자 미리 보기를 시도해 보시고</a> 피드백을 보내주세요!
-
-
-</p>
-
-<p class="caution"><strong>주의:</strong> M 개발자 미리 보기를 사용하는 앱을 Google Play 스토어에 게시하지 마세요.
-</p>
-
-<p class="note"><strong>참고:</strong> 이 문서에서 종종 언급하는 클래스와 메서드 중에는 아직 <a href="{@docRoot}">developer.android.com</a>에서 참조 자료로 이용할 수 없는 것도 있습니다.
- 이와 같은 API 요소는 이 문서에서 {@code code style}로 형식 지정되어 있습니다(하이퍼링크 없이).
- 이러한 요소에 대한 임시 API 관련 문서가 필요한 경우, <a href="{@docRoot}preview/download.html#docs">미리 보기 참조</a>를 다운로드하세요.
-</p>
-
-<h3>중요한 동작 변경</h3>
-
-<p>이전에 Android용 앱을 게시한 적이 있는 경우, 플랫폼 변경으로 인해 앱이 영향받을 수 있다는 점을 유의하세요.
-</p>
-
-<p>완전한 정보는 <a href="behavior-changes.html">동작 변경</a>을 참조하세요.</p>
-
-<h2 id="app-linking">앱 연결</h2>
-<p>이 미리 보기는 더욱 강력한 앱 연결을 제공하여 Android의 인텐트 시스템을 한층 강화합니다. 이 기능을 사용하면 앱을 본인이 소유한 웹 도메인과 연관시킬 수 있습니다.
- 플랫폼은 이 연관 관계를 근거로 특정한 웹 링크를 처리하는 데 사용할 기본 앱을 결정할 수 있고 사용자에게 앱을 선택하라는 메시지를 건너뛸 수 있습니다. 이 기능을 구현하는 방법을 알아보려면 <a href="{@docRoot}preview/features/app-linking.html">앱 연결</a>을 참조하세요.
-
-
-
-
-<h2 id="backup">앱용 자동 백업</h2>
-<p>시스템에서 이제 앱에 대한 완전한 데이터 백업과 복원을 자동으로 수행합니다. 이 동작은 앱 대상 지정 M 미리 보기에 대한 기본으로 활성화되며, 추가 코드를 전혀 추가하지 않아도 됩니다.
- 사용자가 Google 계정을 삭제하면 계정의 백업 데이터도 함께 삭제됩니다.
- 이 기능의 작동 원리와 파일 시스템에서 백업 내용 구성하는 방법에 대해 알아보려면 <a href="{@docRoot}preview/backup/index.html">앱용 자동 백업</a>을 참조하세요.
-
-</p>
-
-<h2 id="authentication">인증</h2>
-<p>이 미리 보기에서는 사용자를 인증할 때 지원되는 기기에서 지문 스캔을 사용하도록 해주는 새로운 API를 제공합니다. 또한 기기 잠금 해제 메커니즘(예: 화면 잠금 비밀번호)을 사용해 사용자의 마지막 인증 시간을 확인할 수도 있습니다.
-
- 이러한 API는 <a href="{@docRoot}training/articles/keystore.html">Android Keystore 시스템</a>과 함께 사용하세요.
-</p>
-
-<h3 id="fingerprint-authentication">지문 인증</h3>
-
-<p>지문 스캔을 통해 사용자를 인증하려면 새로운 {@code android.hardware.fingerprint.FingerprintManager} 클래스의 인스턴스를 가져와 {@code FingerprintManager.authenticate()} 메서드를 호출하세요.
-
- 앱이 지문 센서가 있는 호환되는 기기에서 실행되고 있어야 합니다.
- 지문 인증 흐름에 대한 사용자 인터페이스를 앱에 구현해야 하며, UI에 표준 Android 지문 아이콘을 사용해야 합니다. 이 Android 지문 아이콘({@code c_fp_40px.png})은 <a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">샘플 앱</a>에 포함되어 있습니다. 지문 인증을 사용하는 앱을 여러 개 개발하는 경우, 각 앱이 사용자의 지문을 따로따로 인증해야 한다는 사실을 명심하세요.
-
-
-
-
-</p>
-
-<p>앱에서 이 기능을 사용하려면 우선 매니페스트에 {@code USE_FINGERPRINT} 권한을 추가해야 합니다.
-</p>
-
-<pre>
-&lt;uses-permission
-        android:name="android.permission.USE_FINGERPRINT" /&gt;
-</pre>
-
-<img src="{@docRoot}preview/images/fingerprint-screen.png" srcset="{@docRoot}preview/images/fingerprint-screen.png 1x, {@docRoot}preview/images/fingerprint-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-
-<p>지문 인증의 앱 구현을 확인하려면, <a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">지문 대화 샘플</a>을 참조하세요.
-
-</p>
-
-<p>이 기능을 테스트하는 경우, 다음 단계를 따르면 됩니다.</p>
-<ol>
-<li>아직 Android SDK 도구 수정 버전 24.3을 설치합니다(설치하지 않은 경우).</li>
-<li>에뮬레이터에 새 지문을 등록하려면 <strong>설정 &gt; 보안 &gt; 지문</strong>으로 이동한 다음, 등록 지침을 따르면 됩니다.
-</li>
-<li>에뮬레이터를 사용하여 지문 터치 이벤트를 에뮬레이트하되 다음 명령을 사용하세요.
- 잠금 화면이나 앱에서 지문 터치 이벤트를 에뮬레이트할 때에도 같은 명령을 사용합니다.
-
-<pre class="no-prettyprint">
-adb -e emu finger touch &lt;finger_id&gt;
-</pre>
-<p>Windows에서는 {@code telnet 127.0.0.1 <emulator-id>}에 뒤이어 {@code finger touch <finger_id>}를 실행해야 할 수도 있습니다.
-
-</p>
-</li>
-</ol>
-
-<h3 id="confirm-credential">확인 자격 증명</h3>
-<p>앱에서 사용자를 인증할 때 해당 사용자가 기기를 마지막으로 잠금 해제한 시간을 근거로 할 수 있습니다. 이 기능을 사용하면 사용자가 앱에 따라 각기 다른 비밀번호를 기억할 필요가 없어지고, 개발자는 자신만의 인증 사용자 인터페이스를 구현하지 않아도 됩니다.
-
- 앱에서 이 기능을 사용하려면 사용자 인증에 대한 공개 또는 비밀 키 구현과 함께 사용해야 합니다.
-</p>
-
-<p>사용자를 성공적으로 인증한 다음 같은 키를 재사용하기 위한 시간 초과 기간을 설정하려면, 새로운 {@code android.security.keystore.KeyGenParameterSpec.setUserAuthenticationValidityDurationSeconds()} 메서드를 호출하세요. {@link javax.crypto.KeyGenerator} 또는 {@link java.security.KeyPairGenerator}를 설정할 때 사용하면 됩니다.
-
-
-
- 현재 이 기능은 대칭형 암호화 작동에 맞게 작동합니다.
-</p>
-
-<p>재인증 대화창을 과도하게 표시하는 것을 삼가세요. 우선 앱에서 암호화 객체 사용을 시도해보고, 제한 시간이 만료되면 {@link android.app.KeyguardManager#createConfirmDeviceCredentialIntent(java.lang.CharSequence, java.lang.CharSequence) createConfirmDeviceCredentialIntent()} 메서드를 사용해 앱 내에서 해당 사용자를 재인증하면 됩니다.
-
-
-
-</p>
-
-<p>이 기능의 앱 구현을 확인하려면, <a href="https://github.com/googlesamples/android-ConfirmCredential" class="external-link">확인 자격 증명 샘플</a>를 참조하세요.
-
-</p>
-
-<h2 id="direct-share">직접 공유</h2>
-
-<img src="{@docRoot}preview/images/direct-share-screen.png" srcset="{@docRoot}preview/images/direct-share-screen.png 1x, {@docRoot}preview/images/direct-share-screen_2x.png 2x" style="float:right; margin:0 0 20px 30px" width="312" height="329" />
-
-<p>이 미리 보기에서는 사용자가 공유 기능을 간편하고 신속하게 이용할 수 있도록 해주는 API를 제공합니다. 이제 앱에서 특정 액티비티를 시작하는 <em>직접 공유 대상</em>을 정의할 수 있습니다. 이와 같은 직접 공유 대상은 <em>공유</em> 메뉴를 통해 사용자에게 노출됩니다.
-
- 이 기능을 사용하면 사용자가 다른 앱 내의 대상(예: 연락처)에 대해 콘텐츠를 공유할 수 있습니다.
- 예를 들어, 직접 공유 대상이 다른 소셜 네트워크 앱에서 액티비티를 시작하면 사용자가 해당 앱에 있는 특정 친구나 커뮤니티와 콘텐츠를 공유할 수 있습니다.
-
-</p>
-
-<p>직접 공유 대상을 활성화하려면 반드시 {@code android.service.}
- <br>
-{@code chooser.ChooserTargetService} 클래스를 확장하는 클래스를 정의해야 합니다. 매니페스트에서 {@code ChooserTargetService}를 선언하고
- 해당 선언 내에서 {@code BIND_CHOOSER_TARGET_SERVICE} 권한을 지정하고 {@code SERVICE_INTERFACE} 작업으로 인텐트 필터를 지정합니다.
-
-</p>
-<p>다음 예는 매니페스트에서 {@code ChooserTargetService}를 선언할 수 있는 방법입니다.
-</p>
-<pre>
-&lt;service android:name=".ChooserTargetService"
-        android:label="&#64;string/service_name"
-        android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE"&gt;
-    &lt;intent-filter&gt;
-        &lt;action android:name="android.service.chooser.ChooserTargetService" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/service&gt;
-</pre>
-
-<p>{@code ChooserTargetService}에 노출하고자 하는 액티비티마다 {@code <meta-data>} 요소를 하나씩 추가하고, 앱 매니페스트에 {@code "android.service.chooser.chooser_target_service"} 이름을 추가합니다.
-
-
-</p>
-
-<pre>
-&lt;activity android:name=".MyShareActivity”
-        android:label="&#64;string/share_activity_label"&gt;
-    &lt;intent-filter>
-        &lt;action android:name="android.intent.action.SEND" /&gt;
-    &lt;/intent-filter>
-&lt;meta-data
-        android:name="android.service.chooser.chooser_target_service"
-        android:value=".ChooserTargetService" /&gt;
-&lt;/activity>
-</pre>
-
-<h2 id="voice-interactions">음성 상호작용</h2>
-<p>
-이 미리 보기에서 제공하는 새로운 음성 상호작용 API는 <a href="https://developers.google.com/voice-actions/" class="external-link">음성 액션</a>과 같이 앱에 대화형 음성 환경을 구축할 수 있도록 합니다.
-
- {@code android.app.Activity.isVoiceInteraction()} 메서드를 호출하여 액티비티가 음성 액션에 대응하여 시작된 것인지 알아보세요.
-
- 이 경우에 해당되면, 앱이 {@code android.app.VoiceInteractor} 클래스를 사용하여 사용자로부터 음성 확인을 요청하거나, 선택 항목 목록에서 선택하게 하는 등 여러 가지 일을 할 수 있습니다.
-
- 음성 액션 구현에 대한 자세한 정보는 <a href="https://developers.google.com/voice-actions/interaction/" class="external-link">음성 액션 개발자 사이트</a>를 참조하세요.
-
-</p>
-
-<h2 id="assist">지원 API</h2>
-<p>
-이 미리 보기에서는 사용자가 도우미를 통해 앱에 참여하게 하는 새로운 방식을 제시합니다. 이 기능을 사용하려면, 사용자가 현재 컨텍스트를 사용하기 위해 도우미를 활성화해야 합니다.
- 일단 활성화하고 나면 <strong>홈</strong> 버튼을 길게 눌러 해당 도우미를 어느 앱에서나 불러낼 수 있습니다.
-</p>
-<p>앱이 현재 컨텍스트를 도우미와 공유하지 않기로 선택하는 경우, {@link android.view.WindowManager.LayoutParams#FLAG_SECURE} 플래그를 설정하면 됩니다.
- 플랫폼이 도우미에게 전달하는 일반적인 일련의 정보 외에도 앱이 추가적인 정보를 공유할 수 있도록 하려면 새로 나온 {@code android.app.Activity.AssistContent} 클래스를 사용할 수 있습니다.
-
-</p>
-
-<p>도우미에게 앱에서 가져온 추가 컨텍스트를 제공하려면, 다음 단계를 따르면 됩니다.</p>
-
-<ol>
-<li>{@link android.app.Application.OnProvideAssistDataListener} 인터페이스를 구현합니다.</li>
-<li>{@link android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener) registerOnProvideAssistDataListener()}를 사용하여 이 수신기를 등록합니다.
-</li>
-<li>액티비티에 따라 각기 다른 상황별 정보를 제공하려면 {@link android.app.Activity#onProvideAssistData(android.os.Bundle) onProvideAssistData()} 콜백을 재정의하고, 선택 사항으로 새로운 {@code Activity.onProvideAssistContent()} 콜백도 재정의합니다.
-
-
-</ol>
-
-<h2 id="notifications">알림</h2>
-<p>이 미리 보기에서는 알림 기능에 다음과 같은 API 변경을 추가합니다.</p>
-<ul>
-  <li>새 {@code NotificationListenerService.INTERRUPTION_FILTER_ALARMS} 필터 수준이 추가되었습니다. 이것은 새로운 <em>알람 전용</em> 방해 금지 모드에 상응하는 것입니다.
-</li>
-  <li>새 {@code Notification.CATEGORY_REMINDER} 카테고리 값이 추가되었습니다. 이것은 다른 이벤트로부터 사용자가 일정을 지정한 미리 알림({@link android.app.Notification#CATEGORY_EVENT}) 및 알람({@link android.app.Notification#CATEGORY_ALARM})를 구분하는 데 사용됩니다.
-
-
-</li>
-  <li>새 {@code android.graphics.drawable.Icon} 클래스가 추가되었습니다. 이것은 {@code Notification.Builder.setSmallIcon(Icon)} 및 {@code Notification.Builder.setLargeIcon(Icon)} 메서드를 통해 알림에 첨부할 수 있습니다.
-
-</li>
-  <li>새 {@code NotificationManager.getActiveNotifications()} 메서드가 추가되었습니다. 이것을 사용하면 앱이 자신의 알림 중 현재 활성 상태인 것이 무엇인지 알아낼 수 있습니다.
- 이 기능을 사용하는 앱 구현을 확인하려면 <a href="https://github.com/googlesamples/android-ActiveNotifications" class="external-link">활성 알림 샘플</a>을 참조하세요.
-</li>
-</ul>
-
-<h2 id="bluetooth-stylus">블루투스 스타일러스 지원</h2>
-<p>이 미리 보기에서는 블루투스 스타일러스를 사용하는 사용자 입력에 대한 지원을 개선하여 제공합니다. 사용자는 전화기나 태블릿을 호환되는 블루투스 스타일러스와 페어링하고 이에 연결할 수 있습니다.
-  연결된 동안 터치 스크린에서 가져온 위치 정보가 스타일러스에서 가져온 압력 및 버튼 정보와 합쳐져 하나의 터치 스크린을 사용할 때보다 훨씬 폭넓은 표현을 제공합니다.
-
- 앱이 스타일러스 버튼 누르기를 수신 대기하고 보조 작업을 수행하도록 하려면, 액티비티에 새로운 {@code View.onStylusButtonPressListener} 및 {@code GestureDetector.OnStylusButtonPressListener} 콜백을 등록하면 됩니다.
-
-
-</p>
-
-<p>스타일러스 버튼 상호작용을 감지하려면 {@link android.view.MotionEvent} 메서드와 상수를 사용하세요.
-</p>
-<ul>
-<li>사용자가 앱의 화면에 있는 버튼으로 스타일러스를 터치하면 {@link android.view.MotionEvent#getToolType(int) getTooltype()} 메서드가 {@link android.view.MotionEvent#TOOL_TYPE_STYLUS}를 반환합니다.
-
-</li>
-<li>M 미리 보기를 대상으로 삼는 앱의 경우, {@link android.view.MotionEvent#getButtonState() getButtonState()} 메서드는 사용자가 기본 스타일러스 버튼을 누르면 {@code MotionEvent.STYLUS_BUTTON_PRIMARY}를 반환합니다.
-
-
- 스타일러스에 두 번째 버튼이 있는 경우, 사용자가 그것을 누르면 같은 메서드가 {@code MotionEvent.STYLUS_BUTTON_SECONDARY}를 반환합니다.
- 사용자가 두 버튼을 동시에 누르는 경우, 이 메서드는 두 값을 'OR'로 함께 묶어 모두 반환합니다({@code STYLUS_BUTTON_PRIMARY|STYLUS_BUTTON_SECONDARY}).
-
-</li>
-<li>
-더 낮은 플랫폼 버전을 대상으로 하는 앱의 경우, {@link android.view.MotionEvent#getButtonState() getButtonState()} 메서드가 {@link android.view.MotionEvent#BUTTON_SECONDARY}(기본 스타일러스 버튼 누름)를 반환하고, {@link android.view.MotionEvent#BUTTON_TERTIARY}(보조 스타일러스 버튼 누름)를 반환하거나 둘 모두를 반환합니다.
-
-
-
-</li>
-</ul>
-
-<h2 id="ble-scanning">블루투스 저전력 스캔 개선</h2>
-<p>
-앱이 블루투스 저전력 스캔을 수행하는 경우, 새로운 {@code android.bluetooth.le.ScanSettings.Builder.setCallbackType()} 메서드를 사용해 콜백에 알림을 원하는 시점을 지정할 수 있습니다.즉, 정해진 {@link android.bluetooth.le.ScanFilter}에 일치하는 광고 패킷을 처음 찾았을 때와 이것을 일정한 시간 동안 확인하지 못했을 때에만 콜백에 알리도록 하면 됩니다.
-
-
-
- 스캔 기능에 대해 이런 식으로 접근하면 이전 버전의 플랫폼에서 제공되었던 것에 비해 훨씬 전력 효율적입니다.
-
-</p>
-
-<h2 id="hotspot">핫스팟 2.0 릴리스 1 지원</h2>
-<p>
-이 미리 보기에서는 Nexus 6 및 Nexus 9 기기에서의 핫스팟 2.0 릴리스 1 사양에 대한 지원을 추가합니다. 앱에 핫스팟 2.0 자격 증명을 프로비저닝하려면 {@link android.net.wifi.WifiEnterpriseConfig} 클래스의 새 메서드를 사용할 수 있습니다(예: {@code setPlmn()} 및 {@code setRealm()}).
-
-
- {@link android.net.wifi.WifiConfiguration} 객체에서는 {@link android.net.wifi.WifiConfiguration#FQDN} 및 {@code providerFriendlyName} 필드를 설정하면 됩니다. 새로 나온 {@code ScanResult.PasspointNetwork} 속성이 감지된 네트워크가 핫스팟 2.0 액세스 지점을 나타내는지 여부를 알려줍니다.
-
-
-
-</p>
-
-<h2 id="4K-display">4K 디스플레이 모드</h2>
-<p>이제 플랫폼에서 앱이 호환되는 하드웨어에서 디스플레이 해상도를 4K 렌더링으로 업그레이드하도록 요청할 수 있습니다.
- 현재의 물리적 해상도를 쿼리하려면 새로운 {@code android.view.Display.Mode} API를 사용할 수 있습니다.
- UI가 더 낮은 논리적 해상도에서 그려졌고 더 큰 물리적 해상도에 맞춰 확장된 경우, {@code Display.Mode.getPhysicalWidth()} 메서드가 반환하는 물리적 해상도가 {@link android.view.Display#getSize(android.graphics.Point) getSize()}가 보고하는 논리적 해상도와 다를 수 있다는 점을 유의하세요.
-
-
-</p>
-
-<p>앱이 실행되는 중에 시스템에 물리적 해상도를 변경하도록 요청할 수도 있습니다. 앱의 창에서 {@code WindowManager.LayoutParams.preferredDisplayModeId} 속성을 설정하면 됩니다.
-  이 기능은 4K 디스플레이 해상도로 전환하고자 하는 경우 무척 유용합니다.
- 4K 디스플레이 모드에서 UI는 계속 원래 해상도(예: 1080p)에서 렌더링되며 4K로 확장되지만, {@link android.view.SurfaceView} 객체는 원래 해상도에서 콘텐츠를 표시할 수 있습니다.
-
-</p>
-
-<h2 id="behavior-themeable-colorstatelists">테마 지정 가능 ColorStateLists</h2>
-<p>이제 M 미리 보기를 실행하는 기기에 대해 테마 속성이 {@link android.content.res.ColorStateList}에서 지원됩니다.
- {@link android.content.res.Resources#getColorStateList(int) getColorStateList()} 및 {@link android.content.res.Resources#getColor(int) getColor()} 메서드는 사용이 중단되었습니다.
-
- 이러한 API를 호출하려면, 대신 새로운 {@code Context.getColorStateList()} 또는 {@code Context.getColor()} 메서드를 호출하세요.
-
- 이 두 메서드는 v4 AppCompat 라이브러리에서도 {@link android.support.v4.content.ContextCompat}를 통해 이용할 수 있습니다.
-</p>
-
-<h2 id="audio">오디오 기능</h2>
-
-<p>이 미리 보기에서는 Android에서의 오디오 처리에 개선점을 더했습니다. </p>
-<ul>
-  <li><a href="http://en.wikipedia.org/wiki/MIDI" class="external-link">MIDI</a> 프로토콜을 지원하는 새로운 {@code android.media.midi} API를 추가했습니다.
- 이와 같은 API를 사용하면 MIDI 이벤트를 전송 및 수신할 수 있습니다.
-</li>
-  <li>새 {@code android.media.AudioRecord.Builder} 및 {@code android.media.AudioTrack.Builder} 클래스를 추가하여 각각 디지털 오디오 캡처와 재생 객체를 생성하고, 오디오 소스와 싱크 속성을 구성하여 시스템 기본 설정을 재정의하도록 하였습니다.
-
-</li>
-  <li>오디오 및 입력 기기를 연관시키기 위한 API Hook이 추가되었습니다. 이것은 특히 앱이 사용자에게 게임 컨트롤러 또는 Android TV에 연결된 리모컨에서 음성을 검색하는 데 유용합니다. 사용자가 검색을 시작하면 시스템이 새로운 {@code android.app.Activity.onSearchRequested()} 콜백을 호출합니다.
-
-
- 사용자의 입력 기기에 마이크가 내장되어 있는지 판별하려면, 해당 콜백에서 {@link android.view.InputDevice} 객체를 검색한 다음 새 {@code InputDevice.hasMic()} 메서드를 호출하면 됩니다.
-
-</li>
-  <li>새 {@code android.media.AudioDevicesManager} 클래스를 추가하여 첨부된 소스와 싱크 오디오 기기 전체 목록을 검색할 수 있습니다.
- 이외에도, {@code android.media.OnAudioDeviceConnectionListener} 객체를 지정하여 오디오 기기가 연결되거나 연결 해제되었을 때 앱에 알릴 수도 있습니다.
-
-</li>
-</ul>
-
-<h2 id="video">비디오 기능</h2>
-<p>이 미리 보기에서는 비디오 처리 API에 새로운 기능을 추가합니다.</p>
-<ul>
-<li>새 {@code android.media.MediaSync} 클래스를 추가하여 여러 애플리케이션이 오디오와 비디오 스트림을 동기적으로 렌더링하는 데 지원하도록 하였습니다.
- 오디오 버퍼는 비블로킹 방식으로 제출된 다음 콜백을 통해 반환됩니다.
- 이것은 동적 재생 속도도 지원합니다.
-</li>
-<li>새 {@code MediaDrm.EVENT_SESSION_RECLAIMED} 이벤트를 추가하여 앱이 연 세션을 리소스 관리자가 회수했다는 내용을 나타낼 수 있습니다.
- 앱이 DRM 세션을 사용하는 경우, 이 이벤트를 처리해야 하고 회수된 세션을 사용하지 않도록 해야 합니다.
-
-</li>
-<li>새 {@code MediaCodec.CodecException.ERROR_RECLAIMED} 오류 코드를 추가했습니다. 이것은 코덱이 사용하는 미디어 리소스를 리소스 관리자가 회수했다는 내용을 나타냅니다.
- 이런 경우를 예외로 하고, 코덱은 종료 상태로 이동하면서 해제되어야 합니다.
-
-</li>
-<li>새 {@code MediaCodecInfo.CodecCapabilities.getMaxSupportedInstances()} 인터페이스를 추가하여 지원되는 동시 코덱 인스턴스의 최대 수에 대한 힌트를 얻을 수 있습니다.
-
-</li>
-<li>새 {@code MediaPlayer.setPlaybackParams()} 메서드로는 빠른 재생 또는 느린 동작 재생에 대한 미디어 재생 속도를 설정할 수 있습니다.
- 이는 또한 비디오와 함께 오디오 재생을 자동으로 늘리거나 속도를 높이기도 합니다.
-</li>
-</ul>
-
-<h2 id="camera">카메라 기능</h2>
-<p>이 미리 보기에는 다음과 같은 새 API를 제공하여 카메라의 플래시에 액세스하고 이미지를 재처리하는 카메라에 액세스할 수 있도록 했습니다.
-</p>
-
-<h3 id="flashlight">Flashlight API</h3>
-<p>카메라 기기에 플래시 장치가 있는 경우, {@code CameraManager.setTorchMode()} 메서드를 호출하여 카메라 기기를 열지 않고도 플래시 장치의 Torch 모드를 켜거나 끌 수 있습니다.
- 앱에는 플래시 장치 또는 카메라 기기에 대한 독점적인 소유권이 없습니다.
- Torch 모드는 꺼져 있다가 카메라 기기를 이용할 수 없게 될 때마다 이용 불가능한 상태가 되고, Torch 모드를 켜진 상태로 유지하던 다른 카메라 리소스를 이용할 수 없게 되면 이용 불가능하게 됩니다.
-
- 다른 앱도 {@code setTorchMode()}를 호출하여 Torch 모드를 끌 수 있습니다.
- Torch 모드를 켠 마지막 앱이 종료되면 Troch 모드도 꺼집니다.
-</p>
-
-<p>Torch 모드 상태에 대해 알림을 받기 위한 콜백을 등록하려면 {@code CameraManager.registerTorchCallback()} 메서드를 호출하면 됩니다.
- 콜백을 처음 등록하면 그 즉시, 현재 알려진 모든 카메라 기기(플래시 장치가 있는)의 Torch 모드 상태와 함께 호출됩니다.
-
- Torch 모드가 성공적으로 켜지거나 꺼지면 {@code CameraManager.TorchCallback.onTorchModeChanged()} 메서드가 불려나옵니다.
-</p>
-
-<h3 id="reprocessing">재처리 API</h3>
-<p>{@link android.hardware.camera2 Camera2} API를 확장하여 YUV를 지원하고 비공개 불투명 형식 이미지 재처리를 지원하게 되었습니다.
- 앱은 재처리 기능을 이용할 수 있는지 알아보기 위해 {@code CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES}를 통합니다.
- 기기가 재처리를 지원하는 경우, 재처리 가능한 카메라 캡처 세션을 생성하려면 {@code CameraDevice.createReprocessableCaptureSession()}을 호출하고 입력 버퍼 재처리를 위한 요청을 생성하면 됩니다.
-
-
-</p>
-
-<p>{@code ImageWriter} 클래스를 사용하여 카메라 재처리 입력에 입력 버퍼 흐름을 연결시키세요.
- 빈 버퍼를 가져오려면 다음과 같은 프로그래밍 모델을 따르면 됩니다.</p>
-
-<ol>
-<li>{@code ImageWriter.dequeueInputImage()} 메서드를 호출합니다.</li>
-<li>입력 버퍼에 이 데이터를 채웁니다.</li>
-<li>{@code ImageWriter.queueInputImage()} 메서드를 호출하여 해당 버퍼를 카메라에 전송합니다.</li>
-</ol>
-
-<p>{@code ImageWriter} 객체와 {@code android.graphics.ImageFormat.PRIVATE} 이미지를 함께 사용하는 경우, 앱이 이미지 데이터에 직접 액세스할 수 없습니다.
-
- 대신, 버퍼 사본 없이 {@code ImageWriter.queueInputImage()} 메서드를 호출하여 {@code ImageFormat.PRIVATE} 이미지를 {@code ImageWriter}에 직접 전달하면 됩니다.
-
-</p>
-
-<p>이제 {@code ImageReader} 클래스가 {@code android.graphics.ImageFormat.PRIVATE} 형식 이미지 스트림을 지원합니다.
- 이로써 앱이 {@code ImageReader} 출력 이미지의 원형 이미지 대기열을 유지하고 하나 이상의 이미지를 선택하여 이들을 {@code ImageWriter}에 보내 카메라 재처리를 할 수 있습니다.
-
-</p>
-
-<h2 id="afw">Android for Work 기능</h2>
-<p>이 미리 보기에는 다음과 같은 Android for Work에 대한 새 API가 포함되어 있습니다.</p>
-<ul>
-  <li><strong>회사 소유, 일회용 기기 제어 능력 향상:</strong> 이제 기기 소유자가 다음과 같은 설정을 제어하여 회사 소유, 일회용(COSU) 기기 관리를 한층 개선할 수 있습니다.
-
-
-  <ul>
-    <li>키가드를 비활성화하거나 다시 활성화하려면 {@code DevicePolicyManager.setKeyguardEnabledState()} 메서드를 사용하세요.
-</li>
-    <li>상태 표시줄(빠른 설정, 알림과 Google Now를 시작하는 탐색 스와이프 업 동작 포함)을 비활성화하거나 다시 활성화하려면 {@code DevicePolicyManager.setStatusBarEnabledState()} 메서드를 사용하세요.
-
-</li>
-    <li>안전 부팅을 비활성화하거나 다시 활성화하려면 {@link android.os.UserManager} 상수 {@code DISALLOW_SAFE_BOOT}를 사용하세요.
-</li>
-    <li>플러그인 상태에서 화면이 꺼지지 않도록 방지하려면 {@link android.provider.Settings.Global} 상수 {@code STAY_ON_WHILE_PLUGGED_IN}을 사용하세요.
-</li>
-  </ul>
-  </li>
-  <li><strong>기기 소유자의 앱 자동 설치 및 설치 제거:</strong> 이제 기기 소유자가 애플리케이션을 자동으로 설치하고 제거할 수 있습니다. 업무용 Google Play와는 따로 {@link android.content.pm.PackageInstaller} API를 사용하면 됩니다.
-
- 이제 사용자 상호작용 없이도 앱을 가져오고 설치하는 기기 소유자를 통해 기기를 프로비저닝할 수 있습니다.
- 이 기능은 Google 계정을 활성화하지 않고도 키오스크 또는 그와 같은 다른 기기를 원터치 방식으로 프로비저닝하는 데 유용합니다.
-</li>
-<li><strong>자동 엔터프라이즈 인증서 액세스: </strong> 사용자에게 인증서를 선택하라는 메시지가 표시되기 전에 앱이{@link android.security.KeyChain#choosePrivateKeyAlias(android.app.Activity,android.security.KeyChainAliasCallback,java.lang.String[],java.security.Principal[],java.lang.String,int,java.lang.String) choosePrivateKeyAlias()}를 호출하는 경우, 이제 프로필 또는 기기 소유자가 {@code DeviceAdminReceiver.onChoosePrivateKeyAlias()}를 호출하여 요청하는 애플리케이션에 자동으로 별칭을 제공할 수 있습니다.
-
-
-
- 이 기능을 사용하면 관리된 앱에 사용자 상호작용 없이도 인증서에 대한 액세스 권한을 부여할 수 있습니다.
-</li>
-<li><strong>시스템 업데이트 자동 수락:</strong> 시스템 업데이트 정책을 {@code DevicePolicyManager.setSystemUpdatePolicy()}로 설정하면, 이제 기기 소유자가 자동으로 시스템 업데이트를 수락할 수 있습니다(예: 키오스크 기기의 경우). 또는 업데이트를 연기하거나 사용자가 업데이트를 수행하지 못하도록 최대 30일까지 막을 수 있습니다.
-
-
- 이에 더해, 관리자가 매일 시간 창을 설정하여 여기에서 업데이트를 수행하도록 할 수 있습니다. 예를 들어, 키오스크 기기를 사용하지 않는 시간 중에 업데이트하도록 합니다.
- 시스템 업데이트를 사용할 수 있게 되면 시스템이 작업 정책 컨트롤러 앱에 시스템 업데이트 정책이 설정되어 있는지 확인하고, 그에 따라 동작합니다.
-
-
-</li>
-<li>
-<strong>인증서 설치 위임:</strong> 이제 프로필 또는 기기 소유자가 타사 앱에 권한을 부여하여 다음과 같은 {@link android.app.admin.DevicePolicyManager} 인증서 관리 API를 호출할 수 있습니다.
-
-
-<ul>
-  <li>{@link android.app.admin.DevicePolicyManager#getInstalledCaCerts(android.content.ComponentName)
-getInstalledCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#hasCaCertInstalled(android.content.ComponentName,byte[])
-hasCaCertInstalled()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installCaCert(android.content.ComponentName,byte[])
-installCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallCaCert(android.content.ComponentName,byte[])
-uninstallCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallAllUserCaCerts(android.content.ComponentName)
-uninstallAllUserCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installKeyPair(android.content.ComponentName,java.security.PrivateKey,java.security.cert.Certificate,java.lang.String)
-installKeyPair()}</li>
-</ul>
-</li>
-<li><strong>엔터프라이즈 공장 재설정 보호:</strong> 기기 소유자를 프로비저닝하는 경우, 이제 {@code DeviceManagerPolicy.EXTRA_PROVISIONING_RESET_PROTECTION_PARAMETERS} 번들을 설정하여 공장 재설정 보호(FRP)를 잠금 해제하는 데 사용되는 매개변수를 구성할 수 있습니다.
-
- 이와 같은 매개변수는 기기를 재설정하여 FRP를 잠금 해제하도록 하고 기기를 프로비저닝하기로 한 다음에 NFC 프로그래머 앱이 제공할 수 있으며, 이전에 구성한 Google 계정도 필요하지 않습니다.
-
- 이와 같은 매개변수를 수정하지 않으면 FRP가 제자리에 유지되어 이전에 활성화한 Google 자격 증명 없이는 기기가 활성화되지 않도록 방지합니다.
-
-
-<p>이외에도 Google Play 서비스에 앱 제한을 설정하면 기기 소유자가 기기에서 활성화된 것을 대신할 대체 Google 계정을 지정하여 FRP를 잠금 해제하는 데 사용할 수 있습니다.
-</p>
-</li>
-<img src="{@docRoot}preview/images/work-profile-screen.png" srcset="{@docRoot}preview/images/work-profile-screen.png 1x, {@docRoot}preview/images/work-profile-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-<li><strong>데이터 사용량 추적:</strong> 새로운 {@code android.app.usage.NetworkStatsManager} 메서드를 사용하여 이제 프로필 또는 기기 소유자가 <strong>설정 &gt; 데이터</strong>에 표시되는 데이터 사용량 통계를 쿼리할 수 있습니다.
-
- 프로필 소유자에게는 자신이 관리하는 프로필에서 데이터를 쿼리할 권한이 자동으로 부여되는 반면, 기기 소유자의 경우에는 관리된 기본 사용자의 사용량 데이터에 대한 액세스 권한이 주어집니다.
-
-</li>
-<li><strong>런타임 권한 관리:</strong>
-<p>프로필 또는 기기 소유자는 모든 애플리케이션의 모든 런타임 요청에 대해 권한 정책을 설정할 수 있습니다. {@code DevicePolicyManager.setPermissionPolicy()}를 사용해 사용자에게 정상적으로 권한을 부여하라는 메시지를 표시하거나, 자동으로 권한을 허용하거나 해당 권한을 자동으로 거부하도록 할 수도 있습니다.
-
-
- 후자의 정책이 설정된 경우, 사용자는 앱의 <strong>설정</strong> 내에 있는 권한 화면 안에서 프로필 또는 기기 소유자가 선택한 내용을 수정할 수 없습니다.
-
-</p></li>
-<li><strong>설정 VPN:</strong> 이제 VPN 앱이 <strong>설정 &gt; 더 보기 &gt; VPN</strong>에 표시됩니다. 이외에도, VPN 사용량에 수반되는 알림은 이제 VPN 구성 방식만 구체적으로 다루게 되었습니다.
-
-
- 프로필 소유자의 경우, 이러한 알림은 VPN이 관리된 프로필에 대해 구성되었는지, 아니면 개인 프로필에 구성되었거나 둘 모두에 구성되었는지 여부에 한정됩니다.
- 기기 소유자의 경우, 이 알림은 VPN이 기기 전체에 대해 구성되었는지 여부만 나타냅니다.
-</li>
-<li><strong>작업 상태 알림:</strong> 이제 관리된 프로필에서 온 앱에 전경에 있는 액티비티가 있을 때마다 상태 표시줄 서류가방 아이콘이 나타납니다.
- 또한, 기기가 관리된 프로필 내 앱의 액티비티에 대해 직접 잠금 해제된 경우, 알림 메시지가 표시되어 사용자에게 지금 작업 프로필 내에 있다는 사실을 알려주기도 합니다.
-
-
-</li>
-</ul>
-
-<p class="note">
-  M 개발자 미리 보기의 모든 API 변경 내용에 대한 상세한 정보는 <a href="{@docRoot}preview/download.html">API 차이점 보고서</a>를 참조하세요.
-</p>
diff --git a/docs/html-intl/intl/ko/preview/backup/index.jd b/docs/html-intl/intl/ko/preview/backup/index.jd
deleted file mode 100644
index b3952d5..0000000
--- a/docs/html-intl/intl/ko/preview/backup/index.jd
+++ /dev/null
@@ -1,327 +0,0 @@
-page.title=앱용 자동 백업
-page.tags=backup, previewresources, androidm
-page.keywords=백업, 자동 백업, 미리 보기
-page.image=images/cards/card-auto-backup_2x.png
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>이 문서의 내용</h2>
-      <ol>
-        <li><a href="#overview">개요</a></li>
-        <li><a href="#configuring">데이터 백업 구성</a></li>
-        <li><a href="#testing">백업 구성 테스트</a></li>
-        <li><a href="#issues">알려진 문제</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  사용자는 앱 내에서 데이터를 생성하고 기본 설정을 설정하는 데 상당한 시간과 노력을 들이는 경우가 빈번합니다.
- 사용자가 고장 난 기기를 교체하거나 새것으로 업그레이드하면 그러한 데이터를 보존해 두는 것이 훌륭한 사용자 환경을 보장하는 데 중요한 부분을 차지합니다.
- Android M 미리 보기 시스템에서 실행되는 기기는 이러한 상황에서 사용자에게 좋은 환경을 보장하는 데 도움을 주기 위해 앱 데이터를 Google Drive에 자동으로 백업합니다.
-
- 이런 앱 데이터는 사용자가 기기를 바꾸거나 업그레이드하면 자동으로 복원됩니다.
-
-</p>
-
-<p>
-  자동 백업 기능은 Android M 미리 보기에서 실행되는 기기에 설치된 모든 앱에 활성화되어 있습니다. 달리 앱 코드를 추가하지 않아도 됩니다.
- 시스템은 사용자에게 자동 데이터 백업에서 옵트아웃할 수도 있습니다.
- 앱에서 어떤 데이터를 백업할지 제한하는 쪽을 선택할 수도 있습니다.
-</p>
-
-<p>
-  이 문서에서는 새로운 시스템 동작과 앱에 대해 어느 데이터를 백업할지 지정하는 방법을 설명합니다.
-
-</p>
-
-<h2 id="overview">개요</h2>
-
-<p>
-  자동 백업 기능은 앱이 사용자 기기에서 생성한 데이터를 보존하기 위해 해당 데이터를 사용자의 Google Drive 계정에 업로드하고 암호화합니다.
- 데이터 저장에 대해 개발자나 사용자에게 아무런 요금도 부과하지 않고, 저장된 데이터는 사용자 개인의 Drive 할당량을 사용한 것으로 감안하지 않습니다.
- M 미리 보기 시행 기간 중 사용자는 Android 앱 한 개당 최대 25MB까지 저장할 수 있습니다.
-
-</p>
-
-<p>
-  자동 백업은 24시간마다 한 번씩, 기기가 유휴 상태일 때, 충전 중일 때 및 Wi-Fi 네트워크에 연결될 때마다 수행합니다.
- 이러한 조건에 부합하면 백업 관리자 서비스가 이용 가능한 모든 백업 데이터를 클라우드에 업로드합니다.
- 사용자가 새 기기로 전환하거나 백업된 앱을 제거했다가 다시 설치하면 복원 작업이 백업된 데이터를 새로 설치된 앱의 데이터 디렉터리 안에 복사합니다.
-
-
-</p>
-
-<p class="note">
-  <strong>참고:</strong> 레거시 <a href="{@docRoot}google/backup/index.html">Android 백업 서비스</a>를 이용하는 앱의 경우, 이 새 동작이 적용되지 않고 기존 백업 동작이 평소처럼 작동합니다.
-
-
-</p>
-
-
-<h3 id="auto-exclude">자동으로 배제된 데이터 파일</h3>
-
-<p>
-  데이터 중에는 예를 들어 임시 파일과 캐시 등 백업하지 않아도 되는 것도 있습니다. 따라서 자동 백업 서비스는 특정 데이터 파일을 기본적으로 배제합니다.
-
-</p>
-
-<ul>
-  <li>디렉터리 내의 파일 중 {@link android.content.Context#getCacheDir
-    getCacheDir()} 및 {@link android.content.ContextWrapper#getCodeCacheDir getCodeCacheDir()}
- 메서드로 참조되는 파일.
-  </li>
-
-  <li>외부 저장소에 위치한 파일 중(디렉터리에 상주하는 것이 아닌 한) 
-{@link android.content.Context#getExternalFilesDir getExternalFilesDir()}
- 메서드로 참조되는 파일.
-  </li>
-
-  <li>디렉터리에 위치한 파일 중 
-{@link android.content.Context#getNoBackupFilesDir getNoBackupFilesDir()} 메서드로 참조되는 파일.
-  </li>
-</ul>
-
-<h2 id="configuring">데이터 백업 구성</h2>
-
-<p>
-  M 미리 보기 기기에 설치된 앱이 생성한 데이터는 모두 백업됩니다. 다만 이전 섹션에서 나열한 자동으로 배제되는 파일만은 예외입니다.
- 앱에서 어느 데이터를 백업할지 좀 더 상세하게 제한하고 구성하려면 앱 매니페스트에 있는 설정을 사용하면 됩니다.
-
-</p>
-
-<h3 id="include-exclude">데이터 포함 또는 배제</h3>
-
-<p>
-  앱에 필요한 데이터가 무엇이며 어떤 식으로 저장하는지에 따라 특정 파일이나 디렉터리를 포함 또는 배제하기 위해 특정한 규칙을 설정해야 할 수 있습니다.
- 자동 백업 서비스는 이러한 백업 규칙 설정을 지원하는 데 XML 구성 파일과 앱 매니페스트를 사용하는 방식을 씁니다.
-
- 앱 매니페스트에서는 다음 예에서 표시된 것처럼 백업 구성표 구성 파일을 지정하면 됩니다.
-
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:fullBackupContent="&#64;xml/mybackupscheme"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-<p>
-  이 예시 코드에서는 <code>android:fullBackupContent</code> 특성이 XML 파일을 나타냅니다. 이는 앱 개발 프로젝트의 <code>res/xml/</code> 디렉터리 내에 위치하며, 일명 <code>mybackupscheme.xml</code>이라고 합니다.
-
- 이 구성 파일에는 어느 파일이 백업되는지에 대한 규칙이 포함되어 있습니다.
- 다음 예시 코드는 특정 파일을 백업에서 배제하는 구성 파일을 나타낸 것입니다.
-
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;full-backup-content&gt;
-    &lt;exclude domain="database" path="device_info.db"/&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  이 예에서의 백업 구성은 특정 데이터베이스 파일만 백업되지 않게 배제합니다.
-  나머지 파일은 모두 백업됩니다.
-</p>
-
-<h4>백업 구성 구문</h4>
-
-<p>
-  백업 서비스 구성을 사용하면 구체적으로 어느 파일을 백업에 포함시키고 백업에서 배제할지 지정할 수 있게 해줍니다.
- 데이터 백업 구성 XML 파일에 사용되는 구문은 다음과 같습니다.
-</p>
-
-<pre>
-&lt;full-backup-content&gt;
-    &lt;include domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-    &lt;exclude domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  다음의 요소와 특성을 사용하면 어느 파일을 백업에 포함시키거나 백업에서 배제할지 지정할 수 있게 해줍니다.
-
-</p>
-
-<ul>
-  <li>
-  <code>&lt;include&gt;</code>. 이 요소는 일련의 리소스를 백업하기로 지정하는 경우 사용하십시오. 시스템이 기본적으로 앱 안의 모든 데이터를 백업하는 대신 이 방식을 쓰면 됩니다.
- 예를 들어 <code>&lt;include&gt;</code> 태그를 지정하면 시스템은 이 요소로 <em>지정된 리소스만</em> 백업합니다.
-
-
-  </li>
-
-  <li>
-  <code>&lt;exclude&gt;</code>. 이 요소는 일련의 리소스를 백업에서 배제하기로 지정하는 데 사용하세요.
- 시스템이 앱 안의 모든 데이터를 백업하되, 이 요소로 지정된 리소스만 제외합니다.
-
-  </li>
-
-  <li>
-  <code>domain.</code> 백업에 포함시키거나 백업에서 배제하고자 하는 리소스 유형입니다. 이 특성에 대해 지정할 수 있는 유효한 값에는 다음과 같은 것들이 있습니다.
-
-  </li>
-
-  <li style="list-style: none">
-  <ul>
-    <li>
-    <code>root</code>. 리소스가 앱의 루트 디렉터리에 있음을 나타냅니다.
-    </li>
-
-    <li>
-    <code>file</code>. 디렉터리 내에 있는 리소스 중 
-    {@link android.content.Context#getFilesDir getFilesDir()} 메서드에 의해 반환된 것에 상응합니다.
-    </li>
-
-    <li>
-    <code>database</code>. 
-    {@link android.content.Context#getDatabasePath getDatabasePath()} 메서드에 의해, 또는 
-    {@link android.database.sqlite.SQLiteOpenHelper} 클래스를 사용하여 반환된 데이터베이스에 상응합니다.
-    </li>
-
-    <li>
-    <code>sharedpref</code>. {@link android.content.Context#getSharedPreferences getSharedPreferences()}
- 메서드에 의해 반환된 {@link android.content.SharedPreferences} 객체에
- 상응합니다.
-    </li>
-
-    <li>
-    <code>external</code>. 리소스가 외부 저장소에 있으며, 디렉터리 내의 파일 중 {@link android.content.Context#getExternalFilesDir getExternalFilesDir()} 메서드에 의해 반환된 것에 상응합니다.
-
-
-    </li>
-
-    <li>
-    <code>path</code>. 백업에 포함시키거나 백업에서 배제하고자 하는 리소스로 이어지는 파일 경로입니다.
-
-    </li>
-  </ul>
-  </li>
-</ul>
-
-
-<h3 id="prohibit">데이터 백업 금지하기</h3>
-
-<p>
-  앱 데이터 중 어떤 것이라도 자동 백업을 방지하기로 선택할 수도 있습니다. 매니페스트의 앱 요소에서 <code>android:allowBackup</code> 특성을 <code>false</code>로 설정하면 됩니다.
-
- 이 설정은 다음 예시 코드로 설명해 놓았습니다.
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:allowBackup="false"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-
-<h2 id="testing">백업 구성 테스트</h2>
-
-<p>
-  백업 구성을 만들었으면 앱이 데이터를 저장하고 제대로 복구되는지 확인하기 위해 테스트해보는 것이 좋습니다.
-
-</p>
-
-
-<h4>백업 로깅 활성화</h4>
-
-<p>
-  백업 기능이 XML 파일을 구문 분석하는 방법을 결정하는 데 도움이 되는 방법으로 테스트 백업을 수행하기 전에 로깅을 활성화하는 방안이 있습니다.
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell setprop log.tag.BackupXmlParserLogging VERBOSE
-</pre>
-
-<h4>백업 테스트</h4>
-
-<p>수동으로 백업을 실행하려면, 우선 다음과 같은 명령을 호출하여 백업 관리자를 초기화해야 합니다.
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr run
-</pre>
-
-<p>
-  다음으로, 다음과 같은 명령을 사용하여 애플리케이션을 수동으로 백업하되 앱의 패키지 이름을 <code>&lt;PACKAGE&gt;</code> 매개변수로 지정합니다.
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr fullbackup &lt;PACKAGE&gt;</pre>
-
-
-<h4>복구 테스트</h4>
-
-<p>
-  앱 데이터를 백업한 다음 수동으로 복구를 시작하려면, 다음 명령을 호출하되, 앱에 대한 패키지 이름을 <code>&lt;PACKAGE&gt;</code> 매개변수로 지정하십시오.
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr restore &lt;PACKAGE&gt;
-</pre>
-
-<p class="warning">
-  <b>경고:</b> 이 작업을 수행하면 앱이 중지되고 복구 작업을 수행하기 전에 데이터를 지워버립니다.
-
-</p>
-
-<p>
-  앱의 복구 프로세스를 시작하려면 앱을 제거했다가 다시 설치하면 됩니다. 앱 데이터는 앱 설치가 완료되면 클라우드에서 자동으로 복원됩니다.
-
-</p>
-
-
-<h4>백업 문제 해결</h4>
-
-<p>
-  문제에 직면하면 백업 데이터와 관련 메타데이터를 지우면 됩니다. 그러려면 <strong>설정 &gt; 백업</strong>에서 백업을 껐다가 켜거나, 기기를 공장 재설정하거나 아니면 다음의 명령을 호출하십시오.
-
-
-</p>
-
-<pre>$ adb shell bmgr wipe &lt;TRANSPORT&gt; &lt;PACKAGE&gt;</pre>
-
-<p>
-  <code>&lt;TRANSPORT&gt;</code> 값이 <code>com.google.android.gms</code>로 접두사가 붙어있어야 합니다.
-  전송 목록을 가져오려면 다음과 같은 명령을 호출하면 됩니다.
-</p>
-
-<pre>$ adb shell bmgr list transports</pre>
-
-<h2 id="issues">알려진 문제</h2>
-
-<p>다음은 자동 백업 서비스에 대해 알려진 문제입니다.</p>
-
-<ul>
-  <li><strong>Google Cloud 메시지</strong> - 푸시 알림에 Google Cloud 메시지를 사용하는 앱의 경우, Google Cloud 메시지 등록에 의해 반환된 등록 ID를 백업하면 복원된 앱에 대한 푸시 알림을 끊게 되는 문제가 알려져 있습니다. 새 기기에 설치된 다음에는 새 등록 ID에 대하여 API를 쿼리하는 것이 중요합니다. 이것은 기존 등록 ID가 백업된 경우는 해당되지 않습니다.
-
-
-
-
- 이 문제를 피하려면 백업된 파일 집합에서 등록 ID를 배제하십시오.
-
-  </li>
-</ul>
diff --git a/docs/html-intl/intl/ko/preview/behavior-changes.jd b/docs/html-intl/intl/ko/preview/behavior-changes.jd
deleted file mode 100644
index fa95070..0000000
--- a/docs/html-intl/intl/ko/preview/behavior-changes.jd
+++ /dev/null
@@ -1,402 +0,0 @@
-page.title=동작 변경
-page.keywords=미리 보기, SDK, 호환성
-sdk.platform.apiLevel=MNC
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>이 문서의 내용</h2>
-
-<ol id="toc44" class="hide-nested">
-    <li><a href="#behavior-runtime-permissions">런타임 권한</a></li>
-    <li><a href="#behavior-power">절전 최적화</a>
-        <ol>
-            <li><a href="#behavior-doze">Doze</a></li>
-            <li><a href="#behavior-app-standby">앱 대기 모드</a></li>
-        </ol>
-    </li>
-    <li><a href="#behavior-adoptable-storage">채택 가능한 저장소 기기</a></li>
-    <li><a href="#behavior-apache-http-client">Apache HTTP 클라이언트 제거</a></li>
-    <li><a href="#behavior-audiomanager-Changes">AudioManager 변경</a></li>
-    <li><a href="#behavior-test-selection">텍스트 선택</a></li>
-    <li><a href="#behavior-keystore">Android 키노트 변경</a></li>
-    <li><a href="#behavior-network">Wi-Fi 및 네트워킹 변경</a></li>
-    <li><a href="#behavior-camera">카메라 서비스 변경</a></li>
-    <li><a href="#behavior-art-runtime">ART 런타임</a></li>
-    <li><a href="#behavior-apk-validation">APK 유효성 검사</a></li>
-    <li><a href="#behavior-afw">Android for Work 변경</a></li>
-</ol>
-
-<h2>API 차이점</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">M 미리 보기에 대한 API 레벨 22 &raquo;</a> </li>
-</ol>
-
-
-<h2>참고 항목</h2>
-<ol>
-<li><a href="{@docRoot}preview/api-overview.html">M 개발자 미리 보기 API 개요</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>M 개발자 미리 보기에는 새로운 기능 및 특징과 더불어 다양한 시스템 변경과 API 동작 변경 내용이 포함되어 있습니다.
- 이 문서에서는 개발자 여러분이 숙지해야 하고 앱을 개발할 때 감안해야 하는 몇 가지 주요 변경 내용을 소개하겠습니다.
-</p>
-
-<p>이전에 Android용 앱을 게시한 적이 있는 경우, 이와 같은 플랫폼 변경으로 인해 앱이 영향을 받을 수 있다는 점을 유의하세요.
-</p>
-
-<h2 id="behavior-runtime-permissions">런타임 권한</h1>
-<p>이 미리 보기에서는 새 권한 모델을 소개합니다. 여기에서는 이제 사용자가 런타임에 직접 앱 권한을 관리할 수 있게 됩니다.
- 이 모델을 사용하면 사용자에게 개선된 가시성과 권한에 대한 제어권을 부여하는 한편 앱 개발자에게는 설치와 자동 업데이트 과정을 간소화해줍니다. 사용자는 설치된 여러 앱에 대해 따로따로 권한을 허용하거나 취소할 수 있습니다.
-
- </p>
-
-<p>M 미리 보기를 대상으로 하는 앱을 개발하는 경우, 권한 확인과 요청은 런타임에 해야 합니다.
- 앱에 어떤 권한이 허용되었는지 판단하려면, 새로운 {@code Context.checkSelfPermission()} 메서드를 호출하면 됩니다.
- 권한을 요청하려면 새 {@code Activity.requestPermission()} 메서드를 호출하세요.
- 앱이 M을 대상으로 하지 않더라도, 앱을 새 권한 모델에서 테스트해보는 것이 좋습니다.
-</p>
-
-<p>앱에서 새 권한 모델을 지원하는 방법에 대한 자세한 내용은 <a href="{@docRoot}preview/features/runtime-permissions.html">권한</a> 개발자 미리 보기 페이지를 참조하세요.
-
- 앱에 미친 영향을 평가하는 방법에 대한 팁은 <a href="{@docRoot}preview/testing/guide.html#runtime-permissions">테스트 가이드</a>를 참조하세요.
-</p>
-
-<h2 id="behavior-power">절전 최적화</h2>
-<p>이 미리 보기에서는 유휴 상태의 기기 및 앱에 대한 새로운 절전 최적화 기능을 소개합니다.</p>
-
-<h3 id="behavior-doze">Doze</h3>
-<p>기기의 플러그가 뽑히고 화면이 꺼진 채로 일정 시간 동안 변화 없는 상태로 유지되면, <em>Doze</em> 상태로 들어갑니다. 이 상태에서는 기기가 시스템을 절전 모드 상태로 유지하려 시도합니다.
- 이 모드에서 기기는 정기적으로 잠시 동안 정상 작동을 재개하여 앱 동기화가 일어날 수 있도록 하고 보류된 작업이 있으면 시스템이 이를 수행할 수 있도록 합니다.
-
-</p>
-
-<p>앱이 Doze 상태에 있는 동안 다음과 같은 제한 사항이 적용됩니다.</p>
-<ul>
-<li>네트워크 액세스가 비활성화됩니다. 다만 앱이 우선 순위가 높은 Google Cloud 메시지 Tickle을 받을 때는 예외입니다.
-</li>
-<li><a href="{@docRoot}reference/android/os/PowerManager.WakeLock.html">절전 모드 해제 잠금</a>이 무시됩니다.</li>
-<li>{@link android.app.AlarmManager} 클래스로 일정이 예약된 알람이 비활성화됩니다. 다만 {@link android.app.AlarmManager#setAlarmClock setAlarmClock()} 메서드 및 {@code AlarmManager.setAndAllowWhileIdle()}로 설정한 알람은 예외입니다.
-
-</li>
-<li>WiFi 스캔을 수행하지 않습니다.</li>
-<li>동기화 어댑터와 {@link android.app.job.JobScheduler}의 동기화와 작업 실행이 금지됩니다.
-</li>
-</ul>
-</p>
-<p>기기가 Doze 모드를 종료하면 보류되어 있던 작업과 동기화를 모두 실행합니다.</p>
-<p>이 기능을 테스트하려면 개발 머신에 M 미리 보기를 실행하는 기기를 연결하여 다음과 같은 명령을 호출하면 됩니다.
-
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-<p class="note"><strong>참고:</strong> 다가오는 <a href="https://developers.google.com/cloud-messaging/" class="external-link">Google Cloud 메시지</a> 릴리스에서는 개발자에게 우선 순위가 높은 메시지를 지정하게 해줍니다.
-
-
- 앱이 우선 순위가 높은 GCM 메시지를 수신하면 이 앱에는 기기가 Doze 모드에 있더라도 잠시 네트워크 액세스가 허용됩니다.
-
-</p>
-
-<p>앱에서 Doze를 테스트하는 방법에 대한 팁은 <a href="{@docRoot}preview/testing/guide.html#doze-standby">테스트 가이드</a>를 참조하세요.
-
- </p>
-
-<h3 id="behavior-app-standby">앱 대기 모드</h3>
-<p>이 미리 보기에서는 시스템이 보기에 앱이 활성 사용 중이 아닌 경우 해당 앱은 유휴 상태라고 판별할 수 있습니다.
- 일정 시간이 지나면 앱이 유휴 상태인 것으로 간주되는데, 시스템이 다음과 같은 신호 중 하나를 감지하는 경우는 예외입니다.
-</p>
-
-<ul>
-<li>사용자가 명시적으로 앱을 시작했습니다.</li>
-<li>앱에 현재 전경에 있는 프로세스가 있습니다(액티비티 또는 전경 서비스 중 하나의 형태로, 또는 다른 액티비티나 전경 서비스가 사용 중인 상태로).
-</li>
-<li>앱이 알림을 생성하여 사용자가 그것을 잠금 화면에서 보거나 알림 트레이에서 확인합니다.
-</li>
-<li><strong>설정</strong>을 통해 사용자가 명시적으로 앱이 최적화에서 면제되도록 요청합니다.
-</li>
-</ul>
-
-<p>기기의 플러그가 뽑혀 있는 경우, 유휴 상태인 것으로 간주된 앱은 자신의 네트워크 액세스를 비활성화하고 동기화와 작업을 일시 중단시킵니다.
- 기기가 전원 공급 장치에 연결되면 이와 같은 앱에 네트워크 액세스가 허용되며 보류 중이었던 작업과 동기화를 모두 실행할 수 있습니다.
- 기기가 오랜 시간 동안 유휴 상태인 경우, 유휴 앱에는 하루에 한 번 정도 네트워크 액세스가 허용됩니다.
-</p>
-
-<p>이 기능을 테스트하려면 개발 머신에 M 미리 보기를 실행하는 기기를 연결하여 다음과 같은 명령을 호출하면 됩니다.
-
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell am set-idle &lt;packageName&gt; true
-$ adb shell am set-idle &lt;packageName&gt; false
-$ adb shell am get-idle &lt;packageName&gt;
-</pre>
-
-<p class="note"><strong>참고:</strong> 다가오는 <a href="https://developers.google.com/cloud-messaging/" class="external-link">Google Cloud 메시지</a>(GCM) 릴리스에서는 개발자에게 우선 순위가 높은 메시지를 지정할 수 있습니다.
-
-
- 앱이 우선 순위가 높은 GCM 메시지를 수신하면 이 앱에는 앱이 유휴 상태에 있더라도 잠시 네트워크 액세스가 허용됩니다.
-
-</p>
-
-<p>앱에서 앱 대기 모드를 테스트하는 방법에 대한 팁은 <a href="{@docRoot}preview/testing/guide.html#doze-standby">테스트 가이드</a>를 참조하세요.
-
- </p>
-
-<h2 id="behavior-adoptable-storage">채택 가능한 저장소 기기</h2>
-<p>
-이 미리 보기에서는 사용자가 SD 카드와 같은 외부 저장소 기기를 <em>채택</em>할 수 있습니다. 외부 저장소 기기를 채택하면 기기를 암호화하고 포맷하여 내부 저장소처럼 작동하도록 합니다.
- 이 기능을 사용하면 사용자가 앱과 해당 앱의 비공개 데이터를 여러 저장소 기기 사이에서 이동시킬 수 있습니다.
- 앱을 이동시키는 경우, 시스템은 매니페스트의 <a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a> 기본 설정을 사용합니다.
-
-
-</p>
-
-<p>앱이 다음과 같은 API 또는 필드에 액세스하는 경우, 앱이 내부 및 외부 저장소 기기 사이를 이동하면서 반환하는 파일 경로가 급격하게 달라진다는 점을 유의하세요. 파일 경로를 구축할 때에는 이와 같은 API를 항상 동적으로 호출하는 것을 강력히 권장합니다. 하드코드된 파일 경로를 사용하거나 이전에 구축된 정규화된 파일 경로를 유지하지 마세요.
-
-
-</p>
-
-<ul>
-<li>{@link android.content.Context} 메서드:
-    <ul>
-        <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
-        <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
-        <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
-        <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
-        <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
-        <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
-        <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
-        <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
-        <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
-    </ul>
-</li>
-<li>{@link android.content.pm.ApplicationInfo} 필드:
-    <ul>
-        <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
-    </ul>
-</li>
-</ul>
-
-<p>개발자 미리 보기에서 이 기능을 디버그하려면, 다음 명령을 실행하여 USB On-The-Go(OTG) 케이블을 통해 Android 기기에 연결된 USB 드라이브 채택을 활성화하면 됩니다.
-</p>
-
-<pre class="no-prettyprint">
-$ adb shell sm set-force-adoptable true
-</pre>
-
-<h2 id="behavior-apache-http-client">Apache HTTP 클라이언트 제거</h2>
-<p>이 미리 보기에서는 Apache HTTP 클라이언트에 대한 지원을 제거합니다. 앱이 이 클라이언트를 사용하고 Android 2.3(API 레벨 9) 이상을 대상으로 하는 경우, {@link java.net.HttpURLConnection} 클래스를 대신 사용하세요.
-
- 이는 투명한 압축과 응답 캐싱을 통해 네트워크 사용량을 줄이고 전력 소모를 최소화하기 때문에 API가 더 효율적입니다.
- Apache HTTP API를 계속 사용하려면 우선 다음과 같은 컴파일-시간 종속성을 {@code build.gradle} 파일에서 선언해야 합니다.
-
-</p>
-<pre>
-android {
-    useLibrary 'org.apache.http.legacy'
-}
-</pre>
-<p>Android는 OpenSSL에서 <a href="https://boringssl.googlesource.com/boringssl/" class="external-link">BoringSSL</a> 라이브러리로 옮겨갑니다.
-
- 앱에서 Android NDK를 사용하는 경우, NDK API의 일부분이 아닌 암호화 라이브러리에 대해 링크를 연결하지 마세요(예:{@code libcrypto.so} 및 {@code libssl.so}).
- 이러한 라이브러리는 공개 API가 아니며, 여러 릴리스와 기기에 걸쳐 통보 없이 변경되거나 중단될 수 있으며 스스로를 보안 취약점에 노출시킬 수도 있습니다.
-
- 대신에 원래 코드를 수정하여 JNI를 통해 Java 암호화 API를 호출하도록 하거나, 직접 선택한 암호화 라이브러리에 대해 정적으로 연결하도록 하세요.
-
-</p>
-
-<h2 id="behavior-audiomanager-Changes">AudioManager 변경</h2>
-<p>볼륨을 직접 설정하거나 특정 스트림을 {@link android.media.AudioManager} 클래스를 통해 음소거하는 것은 이제 더 이상 지원되지 않습니다.
- {@link android.media.AudioManager#setStreamSolo(int,boolean)
-setStreamSolo()} 메서드는 사용이 중단되었으며, 그 대신 {@code AudioManager.requestAudioFocus()} 메서드를 호출해야 합니다.
- 이와 마찬가지로, {@link android.media.AudioManager#setStreamMute(int,boolean) setStreamMute()} 메서드도 사용이 중단되었습니다. 그 대신 {@code AudioManager.adjustStreamVolume()} 메서드를 호출하고 방향 값 {@code ADJUST_MUTE} 또는 {@code ADJUST_UNMUTE}에서 전달해야 합니다.
-
-
-</p>
-
-<h2 id="behavior-test-selection">텍스트 선택</h2>
-
-<img src="{@docRoot}preview/images/text-selection.gif" style="float:right; margin:0 0 20px 30px" width="360" height="640" />
-
-<p>사용자가 앱에서 텍스트를 선택하면 이제 텍스트 선택 작업을 표시할 수 있습니다. 예를 들어 <em>잘라내기</em>, <em>복사</em> 및 <em>붙여넣기</em>를 <a href="http://www.google.com/design/spec/patterns/selection.html#selection-text-selection" class="external-link">부동 도구 모음</a>으로 표시하게 됩니다.
-
- 이 사용자 상호작용 구현은 상황별 작업 모음에서와 비슷합니다. 이 내용은 <a href="{@docRoot}guide/topics/ui/menus.html#CABforViews">각각의 보기에 대한 상황별 작업 모드의 활성화</a>에 설명되어 있습니다.
-
-
-</p>
-
-<p>텍스트 선택을 위해 부동 도구 모음을 구현하려면 기존 앱에 다음과 같은 변경을 적용하면 됩니다.
-</p>
-<ol>
-<li>{@link android.view.View} 또는 {@link android.app.Activity} 객체에서 {@link android.view.ActionMode} 호출을 {@code startActionMode(Callback)}에서 {@code startActionMode(Callback, ActionMode.TYPE_FLOATING)}로 변경합니다.
-
-</li>
-<li>기존 {@code ActionMode.Callback} 구현을 변경하여 대신 {@code ActionMode.Callback2}를 확장합니다.
-</li>
-<li>{@code Callback2.onGetContentRect()} 메서드를 재정의하여 보기에서 콘텐츠 {@link android.graphics.Rect} 객체(예: 텍스트 선택 직사각형)의 좌표를 제공합니다.
-</li>
-<li>직사각형 위치 지정이 더 이상 유효하지 않고, 무효화할 요소가 이것뿐인 경우 {@code ActionMode.invalidateContentRect()} 메서드를 호출합니다.
-</li>
-</ol>
-
-<p><a href="{@docRoot}tools/support-library/index.html">Android 지원 라이브러리</a> 수정 버전 22.2를 사용하는 경우, 부동 도구 모음은 이전 버전과 호환되지 않으며 AppCompat이 기본적으로 {@link android.view.ActionMode} 객체의 제어권을 넘겨받는다는 점을 유의하세요.
-
-
- 이렇게 하면 부동 도구 모음이 표시되지 않도록 방지합니다. {@link android.support.v7.app.AppCompatActivity}에서 {@link android.view.ActionMode}를 활성화하려면, {@code android.support.v7.app.AppCompatActivity.getDelegate()}를 호출한 다음 {@code android.support.v7.app.AppCompatDelegate.setHandleNativeActionModesEnabled()}를 반환된 {@link android.support.v7.app.AppCompatDelegate} 객체에서 호출하고 입력 매개변수를 {@code false}로 설정하세요.
-
-
-
-
-
- 이 호출은 {@link android.view.ActionMode} 객체의 제어권을 프레임워크에 돌려줍니다.
- M 미리 보기를 실행하는 기기에서 이렇게 하면 프레임워크가 {@link android.support.v7.app.ActionBar} 또는 부동 도구 모음 모드를 지원할 수 있고, 한편 M 미리 보기 이전 기기에서는 {@link android.support.v7.app.ActionBar} 모드만 지원됩니다.
-
-</p>
-
-<h2 id="behavior-keystore">Android 키노트 변경</h2>
-<p>이 미리 보기에서는 <a href="{@docRoot}training/articles/keystore.html">Android 키노트 제공자</a>가 더 이상 DSA를 지원하지 않습니다.
-
- ECDSA는 여전히 지원됩니다.</p>
-
-<p>휴식 중일 때 암호화가 필요하지 않은 키도 보안 잠금 화면이 비활성화되거나 재설정될 때(예: 사용자가 또는 기기 관리자가 재설정) 더 이상 삭제되지 않습니다.
- 휴식 중일 때 암호화가 필요한 키는 이러한 이벤트 중에 삭제됩니다.
-</p>
-
-<h2 id="behavior-network">Wi-Fi 및 네트워킹 변경</h2>
-
-<p>이 미리 보기에서는 Wi-Fi와 네트워킹 API에 다음과 같은 동작 변경을 도입합니다.</p>
-<ul>
-<li>이제 앱이 {@link android.net.wifi.WifiConfiguration} 객체의 상태를 변경할 수 있는 것은 개발자가 이와 같은 객체를 생성한 경우뿐입니다.
- 사용자 또는 다른 앱이 생성한 {@link android.net.wifi.WifiConfiguration} 객체는 개발자가 수정하거나 삭제할 권한이 없습니다.
-
-</li>
-<li>
-이전에는 앱이 기기에 강제로 특정 Wi-Fi 네트워크에 연결하도록 하는 경우, 즉{@link android.net.wifi.WifiManager#enableNetwork(int,boolean) enableNetwork()}를 {@code disableAllOthers=true} 설정으로 사용하면 기기가 셀룰러 데이터와 같은 다른 네트워크에서는 연결을 해제했습니다.
-
-
- 이 미리 보기에서는 기기가 그러한 다른 네트워크에서 더 이상 연결을 해제하지 않습니다. 앱의 {@code targetSdkVersion}이 {@code “20”} 이하인 경우, 이것은 선택한 Wi-Fi 네트워크에 고정되어 있습니다.
-
- 앱의 {@code targetSdkVersion}이 {@code “21”} 이상인 경우, 멀티네트워크 API를 사용합니다(예: {@link android.net.Network#openConnection(java.net.URL) openConnection()}, {@link android.net.Network#bindSocket(java.net.Socket) bindSocket()} 및 새로운 {@code ConnectivityManager.bindProcessToNetwork()} 메서드). 이렇게 하면 네트워크 트래픽이 선택한 네트워크에서 전송되도록 보장할 수 있습니다.
-
-
-
-
-</li>
-</ul>
-
-<h2 id="behavior-camera">카메라 서비스 변경</h2>
-<p>이 미리 보기에서는 카메라 서비스에서 공유된 리소스에 액세스하는 모델이 이전의 "선착순" 액세스 모델에서 바뀌어 우선 순위가 높은 프로세스를 선호하는 액세스 모델로 변경되었습니다.
-
-  서비스 동작에 대한 변경 내용은 다음과 같습니다.</p>
-<ul>
-<li>카메라 하위 시스템 리소스(카메라 기기 열기 및 구성하기 포함)에 대한 액세스 권한은 클라이언트 애플리케이션 프로세스의 "우선 순위"를 기반으로 부여됩니다.
- 대개는 사용자에게 표시되는 액티비티 또는 전경 액티비티가 있는 애플리케이션 프로세스에 높은 우선 순위가 부여되어 카메라 리소스 획득과 사용에 좀 더 신뢰감을 더합니다.
-
-</li>
-<li>우선 순위가 낮은 앱에 대한 활성 카메라 클라이언트는 우선 순위가 더 높은 애플리케이션이 카메라를 사용하려 시도하면 "제거"될 수 있습니다.
-  사용이 중단된 {@link android.hardware.Camera} API의 경우, 이 때문에 {@link android.hardware.Camera.ErrorCallback#onError(int,android.hardware.Camera) onError()}가 제거된 클라이언트에 대해 호출되는 결과를 초래합니다.
-
-
- {@link android.hardware.camera2 Camera2} API에서는 제거된 클라이언트에 대해 {@link android.hardware.camera2.CameraDevice.StateCallback#onDisconnected(android.hardware.camera2.CameraDevice) onDisconnected()}가 호출됩니다.
-
-</li>
-<li>적절한 카메라 하드웨어를 갖춘 기기에서는 별도의 애플리케이션 프로세스가 각자 따로따로 열려 동시에 각기 다른 카메라 기기를 사용할 수 있습니다.
- 하지만 여러 프로세스를 사용하는 경우 동시에 액세스하면 열려 있는 카메라 기기 모두의 성능 또는 기능이 대폭 저하되는 결과를 유발했었는데, 이런 경우도 이제 카메라 서비스가 감지하여 허용하지 않게 됩니다.
-
- 이러한 변경으로 인해, 같은 카메라 기기에 직접 액세스하려 시도하는 앱이 없는 경우에도 우선 순위가 낮은 클라이언트를 "제거"하는 결과를 초래할 수도 있습니다.
-
-
-</li>
-<li>
-현재 사용자를 변경하면 앱 내에서 이전 사용자 계정이 소유하는 활성 카메라 클라이언트를 제거하는 결과를 유발할 수 있습니다.
-  카메라에 대한 액세스는 현재 기기 사용자가 소유한 사용자 프로필에게만 국한됩니다. 이것은 실제로 예를 들면, 사용자가 다른 계정으로 전환하면 "Guest" 계정은 카메라 시스템을 사용하는 실행 중인 프로세스에서 나갈 수 없게 된다는 뜻입니다.
-
-
-</li>
-</ul>
-
-<h2 id="behavior-art-runtime">ART 런타임</h2>
-<p>이제 ART 런타임이 {@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} 메서드에 대한 액세스 규칙을 제대로 구현할 수 있습니다.
- 이 변경 덕분에 이전 버전에서는 Dalvik이 액세스 규칙을 잘못 확인하던 문제를 해결했습니다. 앱이 {@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} 메서드를 사용하고 액세스 확인을 재정의하고자 하는 경우, {@link java.lang.reflect.Constructor#setAccessible(boolean) setAccessible()} 메서드를 호출하되 입력 매개변수를 {@code true}로 설정한 상태로 사용합니다.
-
-
-
-
-
- 앱이 <a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7 AppCompat 라이브러리</a> 또는 <a href="{@docRoot}tools/support-library/features.html#v7-recyclerview">v7 RecyclerView 라이브러리</a>를 사용하는 경우, 앱을 업데이트하여 이러한 라이브러리의 최신 버전을 사용하도록 해야 합니다.
-
-
- 그렇지 않으면, XML에서 참조되는 모든 사용자 지정 클래스가 업데이트되도록 확인하여 그 클래스 생성자에 액세스할 수 있도록 해야 합니다.
-</p>
-
-<p>이 미리 보기에서는 동적 링커의 동작을 업데이트합니다. 동적 링커는 이제 라이브러리의 {@code soname}과 그 경로(<a href="https://code.google.com/p/android/issues/detail?id=6670" class="external-link">공개 버그 6670</a>) 사이의 차이점을 숙지하고 있으며, 이제 {@code soname} 기준 검색도 구현되었습니다.
-
-
-
- 이전에 작동한 앱 중에서 {@code DT_NEEDED} 항목이 있는 경우(주로 빌드 머신의 파일 시스템에 있는 절대 경로) 로딩했을 때 실패할 수 있습니다.
-</p>
-
-<p>이제 {@code dlopen(3) RTLD_LOCAL} 플래그를 올바르게 구현했습니다. 이때 {@code RTLD_LOCAL}이 기본이므로 {@code dlopen(3)}에 대한 호출 중에서 {@code RTLD_LOCAL}을 명시적으로 사용하지 않으면 영향받을 수 있다는 점을 유의하세요(다만 앱이 명시적으로 {@code RTLD_GLOBAL}을 사용한 경우는 예외입니다).
-
- {@code RTLD_LOCAL}의 경우, 나중에 {@code dlopen(3)}으로 한 호출로 인해 로딩된 라이브러리에서는 기호를 이용할 수 없게 됩니다({@code DT_NEEDED} 항목에 의해 참조된 것과는 반대입니다).
-
-</p>
-</p>
-
-<h2 id="behavior-apk-validation">APK 유효성 검사</h2>
-<p>이제 플랫폼이 APK에 대해 좀 더 엄격한 유효성 검사를 수행합니다. APK는 파일이 매니페스트에서는 선언되었지만 APK 자체에는 없는 경우 손상된 것으로 간주됩니다.
- 콘텐츠가 하나라도 제거되면 APK를 다시 서명해야 합니다.
-</p>
-
-<h2 id="behavior-afw">Android for Work 변경</h2>
-<p>이 미리 보기에는 Android for Work에 대해 다음과 같은 동작 변경을 포함합니다.</p>
-<ul>
-<li><strong>업무용 연락처를 개인적인 맥락에서 이용.</strong> 이제 Google 다이얼러 통화 기록에서 사용자가 이전 통화 목록을 볼 때 업무용 연락처를 표시합니다. {@code DevicePolicyManager.setCrossProfileCallerIdDisabled()}를 {@code true}로 설정하면 Google 다이얼러 통화 기록에서 업무용 프로필 연락처를 숨길 수 있습니다.
-
-
- {@code DevicePolicyManager.setBluetoothContactSharingDisabled()}를 {@code false}로 설정했을 때에만 블루투스를 통해 기기에 업무용 연락처를 개인용 연락처와 함께 표시합니다.
-
- 이것은 기본적으로 {@code true}로 설정되어 있습니다.
-
-</li>
-<li><strong>WiFi 구성 제거:</strong> 프로필 소유자가 추가한 WiFi 구성(예를 들어 {@link android.net.wifi.WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
-addNetwork()} 메서드로의 호출을 통해)은 이제 해당 작업 프로필이 삭제되면 함께 제거됩니다.
-
-</li>
-<li><strong>WiFi 구성 잠금:</strong> 이제 활성 기기 소유자가 생성한 WiFi 구성이라면 사용자는 임의의 구성을 수정 또는 삭제할 수 없습니다.
- 사용자는 여전히 본인의 WiFi 구성을 생성하고 수정할 수 있습니다. 해당 사용자에 대해 {@link android.os.UserManager} 상수 {@link android.os.UserManager#DISALLOW_CONFIG_WIFI}가 설정되지만 않았으면 됩니다.
-
-</li>
-<li><strong>Google 계정 추가를 통해 작업 정책 컨트롤러 다운로드:</strong> 작업 정책 컨트롤러(WPC) 앱을 통해 관리해야 하는 Google 계정이 관리된 맥락을 벗어나 기기에 추가되는 경우, 이제 추가 계정 흐름이 사용자에게 메시지를 표시하여 적절한 WPC를 설치하도록 합니다. 이 동작은 최초 기기 설정 마법사의 <strong>설정 &gt; 계정</strong>을 통해서 추가되는 계정에도 적용됩니다.
-
-
-
-</li>
-<li><strong>특정 DevicePolicyManager API 동작에 적용된 변경:</strong> {@link android.app.admin.DevicePolicyManager#setCameraDisabled(android.content.ComponentName,boolean) setCameraDisabled()} 메서드를 호출하면 호출한 사용자에 대한 카메라에만 영향을 미칩니다. 이것을 관리된 프로필에서 호출하면 기본 사용자에서 실행 중인 카메라 앱에 영향을 미치지 않습니다.
-
-
- 또한, 이제 {@link android.app.admin.DevicePolicyManager#setKeyguardDisabledFeatures(android.content.ComponentName,int) setKeyguardDisabledFeatures()} 메서드를 기기 소유자뿐만 아니라 프로필 소유자에 대해서도 이용할 수 있습니다.
-
- 프로필 소유자는 다음과 같은 키가드 제한 사항을 설정할 수 있습니다.
-
-<ul>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_TRUST_AGENTS} 및 {@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_FINGERPRINT}를 설정하면 프로필의 상위 사용자에 대한 키가드 설정에 영향을 미칩니다.
-
-</li>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS}를 설정하면 관리된 프로필에 있는 애플리케이션이 생성한 알림에만 영향을 미칩니다.
-</li>
-</ul>
-</li>
-</ul>
diff --git a/docs/html-intl/intl/ko/preview/download.jd b/docs/html-intl/intl/ko/preview/download.jd
deleted file mode 100644
index d92453a..0000000
--- a/docs/html-intl/intl/ko/preview/download.jd
+++ /dev/null
@@ -1,361 +0,0 @@
-page.title=다운로드
-page.image=images/cards/card-download_16-9_2x.png
-
-@jd:body
-
-<div style="position:relative; min-height:600px">
-
-  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
-
-    <p class="sdk-terms-intro">Android 미리 보기 SDK의 구성 요소를 다운로드하고 설치하기 전에 우선 다음과 같은 사용 약관에 동의해야 합니다.
-</p>
-
-    <h2 class="norule">사용 약관</h2>
-
-    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
-이것은 Android SDK 미리 보기 라이선스 계약서입니다(이하 "라이선스 계약").
-
-1. 개요
-
-1.1 Android SDK 미리 보기(본 라이선스 계약에서는 "미리 보기"라고 칭하며, 구체적으로 Android 시스템 파일, 패키지 API 및 미리 보기 라이브러리 파일이 이용 가능한 경우 및 이용 가능하게 전환된 경우 이를 포함한 것을 가리킴)는 본 라이선스 계약 조건에 따라 계약자에게 사용을 허여합니다. 본 라이선스 계약은 미리 보기 사용과 관련하여 계약자와 Google 간에 법적 구속력이 있는 계약을 체결합니다.
-
-1.2 "Android"는 기기를 위한 Android 소프트웨어 스택을 의미합니다. 이는 http://source.android.com/ URL에 위치하며 수시로 업데이트되는 Android 오픈 소스 프로젝트에서 제공됩니다.
-
-1.3 "Google"은 미국 1600 Amphitheatre Parkway, Mountain View, CA 94043에 본사를 두고 있는 델라웨어주 법인인 Google Inc.를 의미합니다.
-
-2. 라이선스 계약에 동의
-
-2.1 이 미리 보기를 사용하려면, 먼저 라이선스 계약에 동의해야 합니다. 이 라이선스 계약에 동의하지 않고 미리 보기를 사용해서는 안 됩니다.
-
-2.2 수락을 클릭하고/거나 미리 보기를 사용하면 본 라이선스 계약 조건에 동의하는 것으로 간주됩니다.
-
-2.3 미국법 또는 현재 거주 중이거나 미리 보기를 사용하는 국가를 포함하여 다른 국가의 법에 따라 미리 보기를 받는 것이 금지된 경우, 미리 보기를 사용할 수 없으며 본 라이선스 계약을 수락할 수 없습니다.
-
-2.4 회사 또는 단체 내에서 내부적으로 미리 보기를 사용하며 고용주 또는 기타 단체를 대신하여 본 라이선스 계약 준수에 동의하는 경우, 계약자의 고용주나 그 단체에 본 라이선스 계약에 대한 구속력을 부여할 수 있는 모든 법적 권한을 계약자가 갖고 있음을 진술하고 보증합니다. 구속력을 부여할 수 있는 법적 권한이 없을 경우, 고용주 또는 기타 단체를 대신하여 본 라이선스 계약에 동의하거나 미리 보기를 사용할 수 없습니다.
-
-3. Google이 허하는 미리 보기 라이선스
-
-3.1 본 라이선스 계약의 조건에 따라 Google은 계약자에게 로열티 없고 양도 불가능하며 비독점적이고 2차 인가를 불허하며, 한정되고 무효화할 수 있는 미리 보기 사용 권한을 허용하여 회사 또는 조직 내에서 개인적 또는 내부적으로 사용할 수 있도록 합니다. 이는 Android 플랫폼에서 실행되는 애플리케이션을 개발할 목적으로만 사용해야 합니다.
-
-3.2 계약자는 SDK에 존재하는 지적 재산권을 포함한 SDK에 대한 모든 법적인 권리, 소유권 및 이익이 Google 또는 제3자에게 있음에 동의합니다 "지적 재산권"은 모든 특허법, 저작권법, 영업비밀법, 상표법상 존재하는 모든 권리 및 기타 모든 재산권을 의미합니다. Google은 계약자에게 명시적으로 부여하지 않은 모든 권리를 보유합니다.
-
-3.3 본 라이선스 계약에 명시적으로 허용된 용도 외에는 미리 보기를 사용할 수 없습니다. 해당 제3자 라이선스 요건이 허용하는 범위를 제외하고 계약자는 미리 보기의 일부분을 (a) 복사(백업 목적 제외), 수정, 개작, 재배포, 역컴파일, 리버스 엔지니어링, 분해하거나 이를 통해 파생물을 생성하거나 (b) 개인 컴퓨터를 제외한 모바일 단말기 또는 기타 모든 하드웨어 기기에 미리 보기의 일부를 로드하거나, 미리 보기의 일부를 다른 소프트웨어와 결합하거나 미리 보기의 일부가 통합된 일체의 소프트웨어나 기기를 배포해서는 안 됩니다.
-
-3.4 계약자는 미리 보기에서 파생된 소프트웨어 개발 키트의 배포, 이러한 키트 생성에 참여 또는 홍보를 포함하되 이에 국한되지 않고, Android의 단편화를 야기하는 어떠한 행동도 취하지 않을 것임에 동의합니다.
-
-3.5 오픈 소스 소프트웨어 라이선스에 의거한 미리 보기 구성요소의 사용, 재생산, 배포에는 본 라이선스 계약이 아닌, 해당 오픈 소스 소프트웨어 라이선스의 조건이 적용됩니다. 계약자는 허용된 모든 권한 하에서 그러한 오픈 소스 소프트웨어 라이선스에 관해 충실한 피허가자로서의 자세를 견지할 것이며 그러한 권한을 종료, 일시 중단 또는 침해하는 행위를 삼갈 것을 동의합니다.
-
-3.6 계약자는 Google이 제공하는 SDK의 형태 및 특성이 사전 통지 없이 변경될 수 있음에 동의하며, 이전 버전의 미리 보기에서 개발된 애플리케이션이 이후 버전의 SDK와 호환되지 않을 수 있음에 동의합니다. 계약자는 계약자 또는 사용자에게 사전 통지 없이 SDK(또는 SDK에 포함된 기능) 제공을(영구적 또는 일시적으로) 중단할 수 있는 권한이 Google에게 있음에 동의합니다.
-
-3.7 본 라이선스 계약은 계약자에게 Google의 상표명, 상표, 서비스 표시, 로고, 도메인 이름, 기타 독특한 브랜드 특징에 대한 사용 권한을 부여하지 않습니다.
-
-3.8 계약자는 SDK에 부착되어 있거나 포함되어 있는 모든 소유권 고지 사항(저작권 및 상표 고지 사항 포함)을 제거, 변경 또는 불분명하게 만들지 않을 것에 동의합니다.
-
-4. 계약자의 미리 보기 사용
-
-4.1 Google은 본 라이선스 계약의 어떤 조항도 계약자(또는 계약자의 사용 허가자)가 미리 보기를 사용하여 개발한 소프트웨어 애플리케이션에 대한 권리, 소유권 또는 이익, 그리고 해당 애플리케이션에 존재하는 모든 지적 재산권을 부여하지 않는다는 점에 동의합니다.
-
-4.2 계약자는 (a) 본 라이선스 계약 그리고 (b) 모든 준거법, 규정 또는 관련 관할권 내에서 일반적으로 수용되는 관행 또는 지침(미국 또는 기타 관련 국가로/에서의 데이터 또는 소프트웨어 수출과 관련된 모든 법률 포함)에서 허용하는 용도에 한하여 미리 보기를 사용하고 애플리케이션을 작성하는 것에 동의합니다.
-
-4.3 계약자는 일반 대중 사용자를 대상으로 미리 보기를 사용하여 애플리케이션을 개발하는 경우, 해당 사용자의 프라이버시 및 법적 권리를 보호하는 것에 동의합니다. 사용자가 계약자에게 사용자 이름, 비밀번호 또는 기타 로그인 정보나 개인 정보를 제공하는 경우, 계약자는 제공된 정보가 자신의 애플리케이션에 제공된다는 사실을 사용자에게 알려야 하며, 반드시 법적으로 적절한 개인정보 보호정책 고지 및 보호를 해당 사용자에게 제공해야 합니다. 애플리케이션에서 사용자가 제공한 개인정보나 민감한 정보를 저장하는 경우, 이를 안전하게 처리해야 합니다. 사용자들이 애플리케이션에 Google 계정 정보를 제공하는 경우, 애플리케이션은 해당 사용자의 Google 계정에 액세스하는 목적으로만, 그리고 각 사용자가 허용한 범위 내의 한정된 목적으로만 이러한 정보를 사용해야 합니다.
-
-4.4 계약자는 Google 또는 기타 모든 타사의 서버, 네트워크 또는 기타 모든 재산 또는 서비스를 허가 없이 방해, 교란, 손상 또는 액세스하는 애플리케이션의 개발 또는 배포를 포함한 하등의 행위에 미리 보기를 이용하지 않을 것임을 동의합니다.
-
-4.5 계약자는 자신이 Android 및/또는 Android용 애플리케이션을 통해 생성, 전송 또는 표시하는 모든 데이터, 콘텐츠 또는 리소스 그리고 그로 인한 결과(Google이 입을 수 있는 모든 피해나 손실 포함)에 대해 전적으로 책임이 있다는 것(그리고 Google은 계약자 또는 모든 제3자에 대한 책임이 없다는 것)에 동의합니다.
-
-4.6 계약자는 본 라이선스 계약, 모든 해당 제3자 계약 또는 서비스 약관, 또는 모든 준거법 또는 규정에 의거한 계약자 의무 위반, 그리고 그로 인한 결과(Google 또는 제3자가 입을 수 있는 모든 피해나 손실 포함)에 전적으로 책임이 있다는 것(그리고 Google은 계약자 또는 모든 제3자에 대한 책임이 없다는 것)에 동의합니다.
-
-4.7 이 미리 보기는 현재 개발 단계에 있으며, 계약자의 테스트와 피드백은 그러한 개발 과정에 중요한 부분을 차지합니다. 미리 보기를 사용함으로써 계약자는 일부 기능의 구현은 아직 개발 중인 상태이며 미리 보기가 안정된 릴리스처럼 완벽하게 기능할 것이라 믿고 사용해서는 안 된다는 점을 인지하는 것으로 간주합니다. 계약자는 이 미리 보기를 사용한 애플리케이션을 공개적으로 배포 또는 배송하지 않기로 동의합니다. 이 미리 보기는 공식 Android SDK가 출시된 이후에는 더 이상 지원되지 않기 때문입니다.
-
-5. 계약자의 개발자 자격 증명
-
-5.1 계약자는 Google이 발급했거나 자신이 선택한 모든 개발자 자격 증명에 대한 기밀성을 유지할 책임이 있으며 계약자의 개발자 자격 증명 하에 개발된 모든 애플리케이션에 대한 전적인 책임이 있음에 동의합니다.
-
-6. 개인정보 보호정책 및 정보
-
-6.1 미리 보기를 지속적으로 혁신하고 개선하기 위해, Google은 고유 식별자, 관련 IP 주소, 소프트웨어 버전 번호, 미리 보기에서 사용 중인 도구 및/또는 서비스와 도구의 사용법에 대한 정보를 포함하되 이에 국한되지 않고 소프트웨어에서 특정 사용량 통계 정보를 수집할 수 있습니다. 그러한 정보를 수집하기 전에 미리 보기는 계약자에게 이를 통지하고 동의를 구할 것입니다. 계약자가 동의하지 않을 경우 정보를 수집하지 않습니다.
-
-6.2 수집된 데이터는 모두 취합된 형태로 미리 보기 개선을 위해 검토되며, Google의 개인정보 보호정책에 따라 유지 관리됩니다. 이 정보는 http://www.google.com/policies/privacy/를 참조하십시오.
-
-7. 제3자 애플리케이션
-
-7.1 제3자가 개발한 애플리케이션을 실행하거나 제3자가 제공한 데이터, 콘텐츠 또는 리소스에 액세스하기 위해 미리 보기를 사용하는 경우, 계약자는 Google이 그러한 애플리케이션, 데이터, 콘텐츠 또는 리소스에 대한 책임이 없음에 동의합니다. 계약자는 그러한 제3자 애플리케이션을 통해 자신이 액세스한 모든 데이터, 콘텐츠 또는 리소스에 대한 책임은 그것을 만든 사람에게 있음에 동의합니다. 또한 계약자가 그러한 모든 제3자 애플리케이션, 데이터, 콘텐츠 또는 리소스를 사용하거나 액세스함으로써 비롯된 모든 피해나 손실에 대한 책임이 Google에게 없음에 동의합니다.
-
-7.2 그러한 제3자 애플리케이션을 통해 계약자에게 제공된 데이터, 콘텐츠 그리고 리소스는 그것을 제공한 제공자(또는 제공자를 대신하는 기타 개인 또는 기업)가 소유한 지적 재산권에 의해 보호될 수 있음을 유의해야 합니다. 그러한 데이터, 콘텐츠 또는 리소스(전부 또는 일부)를 수정, 임대, 리스, 대여, 판매, 배포하거나 이를 기반으로 파생물을 생성해서는 안 됩니다. 단, 관련 소유자로부터 그러한 작업을 수행해도 좋다는 허락을 받은 경우에는 예외입니다.
-
-7.3 계약자는 그러한 제3자 애플리케이션, 데이터, 콘텐츠 또는 리소스의 사용은 계약자와 관련 제3자 간에 체결하는 별도의 계약 조건의 적용을 받는다는 것을 인정합니다.
-
-8. Google API 사용
-
-8.1 Google Data API
-
-8.1.1 Google에서 데이터를 검색하기 위해 API를 사용하는 경우, 그러한 데이터가 Google 또는 데이터를 제공하는 당사자(또는 당사자를 대신하는 기타 개인 또는 기업)가 소유한 지적 재산권에 의해 보호될 수 있음을 인정합니다. 그러한 API를 사용하는 경우, 추가적인 서비스 약관의 적용을 받을 수 있습니다. 관련 서비스 약관에 허용되지 않은 한, 그러한 데이터(전부 또는 일부)를 변경, 임대, 리스, 대여, 판매, 배포하거나 이를 기반으로 파생물을 생성해서는 안 됩니다.
-
-8.1.2 Google에서 사용자 데이터를 검색하기 위해 API를 사용하는 경우, 계약자는 사용자로부터 명시적인 동의를 얻은 경우에 한하여, 그리고 해당 사용자가 허용한 범위 내의 한정된 목적으로만 데이터를 검색해야 합니다.
-
-9. 라이선스 계약 종료
-
-9.1 본 라이선스 계약은 계약자 또는 Google에 의해 아래와 같은 조건 하에 종료될 때까지 계속 적용됩니다.
-
-9.2 계약자가 라이선스 계약을 종료하고자 하는 경우, 미리 보기 및 관련 개발자 자격 증명 일체의 사용을 중단하는 것으로 그러한 의사를 피력할 수 있습니다.
-
-9.3 Google은 언제든 이유 여하를 불문하고 계약자에게 통고하여 라이선스 계약을 종료할 수 있습니다.
-
-9.4 본 라이선스 계약은 통보 또는 여타의 행위 없이도 자동으로 종료됩니다. 이에 해당되려면 다음과 같은 조건이 수반되어야 합니다.
-(A) Google이 계약자가 거주하는 국가 또는 계약자가 서비스를 사용하는 지역에서 미리 보기 또는 미리 보기의 특정 부분 제공을 중지하는 경우 및
-(B) Google이 Android SDK의 최종 릴리스 버전을 발행하는 경우.
-
-9.5 본 라이선스 계약이 종료되면 라이선스 계약으로 계약자에게 허용한 라이선스가 취소되며, 이에 따라 계약자는 미리 보기 사용을 즉시 모두 중단해야 하고 제 10, 11, 12 및 14절의 조항이 기한 없이 유지됩니다.
-
-10. 면책 조항
-
-10.1 계약자는 미리 보기 이용에 대한 위험 부담이 전적으로 본인에게 있으며, Google이 일체의 보증 없이 미리 보기를 "있는 그대로" 그리고 "이용 가능한" 상태로 제공한다는 것을 분명히 이해하고 동의합니다.
-
-10.2 미리 보기 이용 및 이용 과정에서 다운로드하거나 얻게 되는 모든 자료를 사용하는 것은 본인의 재량에 따르며 이에 대한 위험 부담이 전적으로 본인에게 있으며, 그러한 사용으로 인해 발생하는 컴퓨터 시스템 또는 다른 기기의 손상 또는 데이터 손실에 대한 책임은 전적으로 본인에게 있습니다. 전술한 조항을 제한하지 않는 범위 내에서 계약자는 미리 보기가 안정된 릴리스가 아니며 오류, 결함 및 보안 취약성이 포함되어 있을 수 있어 그 결과로 중대한 손상을 유발할 수 있다는 점을 이해하는 것으로 간주합니다. 여기에는 계약자의 컴퓨터 시스템 또는 기타 기기의 완전하고 돌이킬 수 없는 손실도 포함됩니다.
-
-10.3 더 나아가, Google은 상품성, 특정 목적에 대한 적합성 및 비침해의 묵시적 보증 등을 포함하되 이에 국한되지 않고 명시적이든 묵시적이든 모든 종류의 보증 및 조건을 명시적으로 부인합니다.
-
-11. 책임 한계
-
-11.1 계약자는 계약자에게 발생할 수 있는 직접, 간접, 부수적, 특별, 결과적 또는 징벌적 손해에 대해 그 어떤 책임 이론에 근거해서도 Google, 해당 자회사, 계열사 및 사용 허가자가 어떠한 책임도 지지 아니함을 분명히 이해하고 동의합니다. 이러한 손해에는 Google 또는 해당 대리자가 이러한 손실 발생 가능성에 대해 통지를 받았거나 이러한 사항을 인식했는지에 상관없이 모든 데이터 손실이 포함됩니다.
-
-12. 면책
-
-12.1 법률에 의해 허용되는 최대한의 범위 안에서 계약자는 (a) 미리 보기 사용, (b) 계약자가 미리 보기에서 개발한 일체의 애플리케이션에서 초래된 모든 사람의 저작권, 상표, 영업비밀, 트레이드 드레스, 특허 또는 기타 지적 재산권의 침해, 또는 어떤 사람의 명예를 훼손하거나 초상권 또는 개인정보 보호정책을 침해함 또는 (C)계약자 본인이 본 라이선스 계약을 위반함으로써 발생하거나 생기는 모든 청구, 조치, 소송 또는 절차, 그리고 모든 손실, 책임, 손해, 경비(합리적인 변호사 비용 포함)로부터 Google을 옹호하고, 면책시키고, Google이 손해를 입지 않도록 하는 데 동의합니다.
-
-13. 라이선스 계약 변경
-
-13.1 미리 보기의 새로운 버전을 배포할 때, Google은 본 라이선스 계약의 내용을 변경할 수 있습니다. 그러한 변경이 이뤄진 경우, Google은 미리 보기가 제공되는 웹사이트에 새로운 라이선스 계약 버전을 게재할 것입니다.
-
-14. 일반 법적 조건
-
-14.1 본 라이선스 계약은 계약자와 Google 간의 모든 법적 계약을 구성하며, 계약자의 미리 보기 사용을 규제하고(별도의 서면 계약을 통해 Google이 계약자에게 제공하는 모든 서비스는 제외), 미리 보기와 관련하여 이전에 계약자와 Google이 맺은 모든 계약을 완전히 대체합니다.
-
-14.2 계약자는 Google이 라이선스 계약에 포함된(또는 관련 법률에 의해 Google이 향유하는) 법적 권리 또는 구제수단을 행사하거나 집행하지 않더라도, Google이 권리를 공식적으로 포기한 것으로 간주하지 않으며, Google이 계속해서 그러한 권리 또는 구제수단을 이용할 수 있음에 동의합니다.
-
-14.3 본 라이선스 계약의 조항이 무효라고 이 사안에 관한 판결을 할 수 있는 관할권을 가진 법원이 판결할 경우, 그 조항은 라이선스 계약의 나머지 조항에 영향을 미치지 않는 형태로 라이선스 계약에서 제거됩니다. 본 라이선스 계약의 나머지 조항은 여전히 유효하며 집행 가능합니다.
-
-14.4 계약자는 Google이 모회사가 되는 회사 그룹에 속한 각 회사가 본 라이선스 계약의 제3수익자이며, 그러한 다른 회사들이 그들에게 이익(또는 유리한 권리)을 부여하는 본 라이선스 계약의 모든 조항을 직접 행사하고 적용할 수 있는 권리를 가진다는 데 동의합니다. 그 외에는 다른 어떤 개인이나 회사도 본 라이선스 계약의 제3수익자가 될 수 없습니다.
-
-14.5 수출 규제. 미리 보기는 미국의 수출법과 규정의 적용을 받습니다. 계약자는 미리 보기에 적용되는 모든 국내 및 국제 수출법과 규정을 준수해야 합니다. 그러한 법에는 수출 대상국, 최종 사용자 및 최종 용도에 대한 제한이 포함됩니다.
-
-14.6 계약자 또는 Google은 상대 당사자의 사전 서면 승인 없이 본 라이선스 계약에서 부여된 권리를 제3자에게 양도하거나 이전할 수 없으며, 그러한 승인 없이 이루어진 양도 시도는 모두 무효입니다. 계약자는 Google의 사전 승인 없이 본 라이선스 계약 상의 책임 또는 의무를 위임할 수 없습니다.
-
-14.7 본 라이선스 계약, 그리고 본 라이선스 계약 상의 계약자와 Google의 관계는 법률 조항 간의 충돌과는 무관하게 캘리포니아주법에 의한 규제를 받습니다. 계약자와 Google은 본 라이선스 계약으로부터 발생하는 모든 법적 문제 해결을 캘리포니아주 산타 클라라(Santa Clara) 카운티 내에 소재한 전속 관할 법원에 의뢰하는 것에 동의합니다. 위 규정에도 불구하고, 계약자는 Google이 여전히 모든 관할권에서 강제 구제책(또는 동등한 유형의 긴급 법적 구제)을 신청할 수 있음에 동의합니다.
-  </div><!-- sdk terms -->
-
-
-
-    <div id="sdk-terms-form">
-      <p>
-        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
-        <label id="agreeLabel" for="agree">본인은 상기 사용 약관을 읽었으며 이에 동의합니다.</label>
-      </p>
-      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
-    </div>
-
-
-  </div><!-- end TOS -->
-
-
-  <div id="landing">
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>이 문서의 내용</h2>
-      <ol>
-        <li><a href="#sdk">Android 6.0 SDK</a></li>
-        <li><a href="#docs">개발자 관련 문서</a></li>
-        <li><a href="#images">하드웨어 시스템 이미지</a></li>
-      </ol>
-
-     <h2>Legacy downloads</h2>
-        <ol>
-           <li><a href="{@docRoot}preview/download_mp1.html">Developer Preview 1</a></li>
-           <li><a href="{@docRoot}preview/download_mp2.html">Developer Preview 2</a></li>
-        </ol>
-  </div>
-</div>
-
-
-<p>
-  Android M 미리 보기 SDK에는 개발 도구, Android 시스템 파일 및 라이브러리 파일이 포함되어 있어 앱을 테스트하고 플랫폼의 다음 릴리스에 도입되는 새 API를 테스트하는 데 유용합니다.
- 이 문서에서는 미리 보기의 다운로드할 수 있는 구성 요소를 가져와 앱을 테스트하는 방법에 대해 설명합니다.
-
-</p>
-
-
-<h2 id="sdk">Android 6.0 SDK</h2>
-
-<p>
-  미리 보기 SDK는 <a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>를 통해 다운로드할 수 있습니다. 미리 보기 SDK를 다운로드하고 구성하는 데 관한 자세한 정보는 <a href="{@docRoot}preview/setup-sdk.html#downloadSdk">미리 보기 SDK 설정하기</a>를 참조하십시오.
-
-</p>
-
-
-<h2 id="docs">개발자 관련 문서</h2>
-
-<p>
-  개발자 관련 문서 다운로드 패키지에서는 자세한 API 참조 정보와 미리 보기에 대한 API 차이점 보고서를 제공합니다.
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Description</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="docs-dl">
-    <td>Android M Preview 3<br>Developer Docs</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >m-preview-3-developer-docs.zip</a><br>
-      MD5: d99b14b0c06d31c8dfecb25072654ca3<br>
-      SHA-1: 9cefeeda07676130da606a1796e1c00fffc667c1
-    </td>
-  </tr>
-</table>
-
-
-<h2 id="images">하드웨어 시스템 이미지</h2>
-
-<p>
-  이러한 시스템 이미지를 사용하면 물리적인 기기에서 플랫폼의 미리 보기 버전을 설치하여 테스트할 수 있게 해줍니다.
- 이러한 이미지 중 한 가지로 기기를 구성하면, 앱을 설치하고 테스트하여 앱이 플랫폼의 다음 버전에서 어떤 성능을 보일지 확인할 수 있습니다.
- 기기에 시스템 이미지를 설치하는 과정은<em>기기에서 모든 데이터를 제거하므로</em>, 시스템 이미지를 설치하기에 앞서 데이터를 백업하는 것이 좋습니다.
-
-
-</p>
-
-<p class="warning">
-  <b>경고:</b> 다음 Android 시스템 이미지는 미리 보기이며 사정에 따라 변동될 수 있습니다. 이러한 시스템 이미지를 사용할 때에는 Android SDK 미리 보기 라이선스 계약을 따라야 합니다.
- Android 미리 보기 시스템 이미지는 안정된 릴리스가 아니며, 오류나 결함이 들어있을 수 있고 이 때문에 컴퓨터 시스템, 기기 및 데이터에 손상을 초래할 수 있습니다.
-
- 미리 보기 Android 시스템 이미지는 공장 OS와 같은 테스트를 거치며 전화기 및 설치된 서비스와 애플리케이션의 작동이 중단되는 결과를 낳을 수 있습니다.
-
-
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Device</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="hammerhead">
-    <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >hammerhead-MPA44I-preview-2ebbc049.tgz</a><br>
-      MD5: 91a924fb0c9f8e716e3b4c9954fd0dbb<br>
-      SHA-1: 2ebbc049b68c4da8baeee3e42bb94d7a965ba4a3
-    </td>
-  </tr>
-  <tr id="shamu">
-    <td>Nexus 6 <br>"shamu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >shamu-MPA44I-preview-62b9c486.tgz</a><br>
-      MD5: ac6e58da86125073d9c395257fd42664<br>
-      SHA-1: 62b9c486fd7a5020e228d53ca5acd5c1857e48ff
-    </td>
-  </tr>
-  <tr id="volantis">
-    <td>Nexus 9 <br>"volantis"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >volantis-MPA44I-preview-5c30a6e2.tgz</a><br>
-      MD5: 7f83768757913d3fea945a661020d185<br>
-      SHA-1: 5c30a6e2acd11a81f4105b12d23ff654f534f699
-    </td>
-  </tr>
-
-  <tr id="fugu">
-    <td>Nexus Player <br>"fugu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >fugu-MPA44I-preview-2860040a.tgz</a><br>
-      MD5: 438da8d37da9e341a69cfb16a4001ac5<br>
-      SHA-1: 2860040a326582f1ff5f702bf9a1ef002717fc98
-    </td>
-  </tr>
-
-</table>
-
-<h3 id="install-image">기기에 이미지 설치</h3>
-
-<p>
-  기기 이미지를 테스트용으로 사용하려면, 이를 호환되는 기기에 설치해야만 합니다. 시스템 이미지를 설치하려면 아래의 지침을 따르십시오.
-
-</p>
-
-<ol>
-  <li>여기 목록에 나열된 시스템 이미지 중 하나를 다운로드하여 압축을 해제합니다.</li>
-  <li>기기에서 보존하고자 하는 데이터를 모두 백업합니다.</li>
-  <li>이미지를 기기에 플래시하려면 <a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>에 있는 지침을 따릅니다.
-
-</li>
-</ol>
-
-<p class="note">
-  <strong>참고:</strong> 일단 개발 기기에 미리 보기 시스템 이미지를 플래시하고 나면 이것은 OTA(over-the-air) 업데이트를 통해 다음 미리 보기 릴리스에 맞춰 자동으로 업그레이드됩니다.
-
-</p>
-
-<h3 id="revertDevice">기기를 공장 사양으로 되돌리기</h3>
-
-<p>
-  미리 보기의 설치를 제거하고 기기를 공장 사양으로 되돌리고자 하는 경우, <a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a>를 방문하여 기기에 플래시하고자 하는 이미지를 다운로드하십시오.
-
- 해당 페이지에 있는 지침을 따라 기기에 이미지를 플래시하면 됩니다.
-
-</p>
-
-  </div><!-- landing -->
-
-</div><!-- relative wrapper -->
-
-
-
-<script>
-  var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
-  function onDownload(link) {
-
-    $("#downloadForRealz").html("Download " + $(link).text());
-    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
-
-    $("#tos").fadeIn('fast');
-    $("#landing").fadeOut('fast');
-
-    return true;
-  }
-
-
-  function onAgreeChecked() {
-    /* verify that the TOS is agreed */
-    if ($("input#agree").is(":checked")) {
-      /* reveal the download button */
-      $("a#downloadForRealz").removeClass('disabled');
-    } else {
-      $("a#downloadForRealz").addClass('disabled');
-    }
-  }
-
-  function onDownloadForRealz(link) {
-    if ($("input#agree").is(':checked')) {
-    /*
-      $("#tos").fadeOut('fast');
-      $("#landing").fadeIn('fast');
-    */
-
-      ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
-
-    /*
-      location.hash = "";
-    */
-      return true;
-    } else {
-      return false;
-    }
-  }
-
-  $(window).hashchange( function(){
-    if (location.hash == "") {
-      location.reload();
-    }
-  });
-
-</script>
diff --git a/docs/html-intl/intl/ko/preview/features/app-linking.jd b/docs/html-intl/intl/ko/preview/features/app-linking.jd
deleted file mode 100644
index 0e23801..0000000
--- a/docs/html-intl/intl/ko/preview/features/app-linking.jd
+++ /dev/null
@@ -1,123 +0,0 @@
-page.title=앱 링크
-page.image=images/cards/card-app-linking_2x.png
-page.keywords=applinking, 딥 링크, 인텐트
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>이 문서의 내용</h2>
-      <ol>
-        <li><a href="#web-assoc">웹사이트 연관 선언</a></li>
-        <li><a href="#verfy-links">앱 링크 확인 요청</a></li>
-        <li><a href="#user-manage">앱 링크 설정 관리</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Android 인텐트 시스템은 유연한 메커니즘이라 앱이 콘텐츠와 요청을 처리할 수 있습니다.
-  여러 개의 앱이 자신의 인텐트 필터에서 모두 일치하는 URI 패턴을 선언할 수 있습니다. 사용자가 기본 시작 처리자가 없는 웹 링크를 클릭하는 경우 플랫폼이 대화창을 표시하여 해당 사용자가 일치하는 인텐트 필터를 선언한 앱 목록에서 선택 할 수 있습니다.
-
-
-</p>
-
-<p>
-  Android M 개발자 미리 보기에서는 앱 링크에 대한 지원을 도입합니다. 이를 통해 앱 개발자들이 앱을 본인이 소유한 웹 도메인과 연관시켜 기존의 링크 처리를 한 단계 개선합니다.
- 개발자가 이 연관 관계를 생성하면 플랫폼이 특정 웹 링크를 처리하는 데 사용된 기본 앱을 알아서 판단하여 사용자에게 물어보는 과정을 건너뛸 수 있습니다.
-
-
-</p>
-
-
-<h2 id="web-assoc">웹사이트 연관 선언</h2>
-
-<p>
-  웹사이트 소유자가 앱 링크를 설정하려면 앱과의 연관 관계를 선언해야 합니다. 사이트 소유자는 앱에 대한 이러한 관계를 선언하는 데 JSON 파일을 호스팅하는 방식을 씁니다. 일명 {@code statements.json}이라는 파일을 도메인에서 잘 알려진 위치에 선언합니다.
-
-
-</p>
-
-<pre>http://&lt;domain&gt;:&lt;optional port&gt;/.well-known/statements.json</pre>
-
-<p class="note">
-  <strong>참고:</strong>
-  M 개발자 미리 보기 기간 중에는 JSON 파일을 http 프로토콜을 통해 확인합니다. 플랫폼이 공식적으로 출시되면 이 파일을 암호화된 https 프로토콜에서 확인하게 됩니다.
-
-</p>
-
-<p>
-  이 JSON 파일은 이 도메인 아래에서 URL에 대한 기본 처리자로 사용되어야 하는 Android 앱을 나타냅니다.
- 이것이 앱을 식별하는 기반은 다음과 같은 필드입니다.
-</p>
-
-<ul>
-  <li>{@code package_name}: 앱의 매니페스트에 선언된 패키지 이름입니다.</li>
-
-  <li>{@code sha256_cert_fingerprints}: 앱의 서명 인증서의 SHA256 지문입니다.
-    Java keytool을 사용하여 이 지문을 생성하려면 다음과 같은 명령을 사용십시오.
-    <pre>keytool -list -v -keystore my-release-key.keystore</pre>
-  </li>
-</ul>
-
-<p>
-  다음 파일 목록은
-{@code statements.json} 파일의 콘텐츠와 형식을 예를 들어 나타낸 것입니다.
-</p>
-
-<pre>
-[{
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": "<strong>&lt;package name&gt;</strong>",
-    "sha256_cert_fingerprints": ["<strong>6C:EC:C5:0E:34:AE....EB:0C:9B</strong>"]
-  }
-}]
-</pre>
-
-
-<h2 id="verfy-links">앱 링크 확인 요청</h2>
-
-<p>
-  앱은 플랫폼에 자신의 인텐트 필터의 데이터 요소 내에서 호스트 이름으로 정의된 모든 앱 링크를 자동으로 확인해달라고 요청할 수 있습니다. 이때 비교 대상은 각각의 웹 도메인에서 호스팅된 {@code statements.json} 파일입니다.
-
- 앱 링크 확인을 요청하려면 매니페스트에서 원하는 인텐트 필터 각각에 {@code android:autoVerify}
-특성을 하나씩 추가하면 됩니다. 다음 매니페스트 코드 조각에 나타낸 내용을 참고하십시오.
-
-</p>
-
-<pre>
-&lt;activity ...&gt;
-    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-        &lt;action android:name="android.intent.action.VIEW" /&gt;
-        &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-        &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-        &lt;data android:scheme="http" android:host="www.android.com" /&gt;
-        &lt;data android:scheme="https" android:host="www.android.com" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/activity&gt;
-</pre>
-
-<p>
-  앱 매니페스트에 {@code android:autoVerify} 특성이 있으면, 플랫폼은 앱이 설치된 시점에 앱 링크를 확인하려 시도합니다.
- 플랫폼이 앱 링크를 성공적으로 확인하지 못하면 해당 앱은 웹 링크를 처리하기 위한 기본 설정 앱으로 설정되지 않습니다.
- 다음번에 사용자가 그런 링크 중 하나를 열면, 플랫폼은 사용자에게 메시지를 표시하는 방식으로 변경합니다.
-
-
-</p>
-
-<p class="note">
-  <strong>참고:</strong> 테스트 중에는 확인에 실패하고 나서 거짓 긍정 결과가 나올 가능성이 있지만, 사용자가 앱에 물어보지 않고 지원되는 링크를 열도록 명시적으로 활성화해 놓았고 이때 시스템 설정 앱을 사용한 경우, 대화창이 표시되지 않고 링크는 개발자 본인의 앱으로 이동하지만 이는 순전히 사용자 설정 때문이고 확인이 성공해서가 아닙니다.
-
-
-
-</p>
-
-
-<h2 id="user-manage">앱 링크 설정 관리</h2>
-
-<p>
-  사용자가 앱 링크 설정을 변경하여 URL을 본인이 선호하는 방식으로 처리하도록 할 수 있습니다. 앱 링크를 검토하고 관리하려면 <strong>설정 &gt; 앱 &gt; 앱 정보 &gt; 기본으로 열기</strong> 아래의 시스템 설정 앱에서 하면 됩니다.
-
-
-</p>
diff --git a/docs/html-intl/intl/ko/preview/features/runtime-permissions.jd b/docs/html-intl/intl/ko/preview/features/runtime-permissions.jd
deleted file mode 100644
index 20c5232..0000000
--- a/docs/html-intl/intl/ko/preview/features/runtime-permissions.jd
+++ /dev/null
@@ -1,794 +0,0 @@
-page.title=권한
-page.tags=previewresources, androidm
-page.keywords=권한, 런타임, 미리 보기
-page.image={@docRoot}preview/features/images/permissions_check.png
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>간략히 보기</h2>
-    <ul>
-      <li>앱이 M 미리 보기 SDK를 대상으로 하는 경우, 앱은 사용자에게 설치 시점이 아닌 런타임에 권한을 허용하도록 메시지를 표시합니다.
-</li>
-      <li>사용자는 앱 설정 화면에서 언제든 권한을 취소할 수 있습니다.
-</li>
-      <li>앱은 실행될 때마다 자신에게 필요한 권한이 있는지 확인해야 합니다.
-</li>
-    </ul>
-
-    <h2>이 문서의 내용</h2>
-    <ol>
-      <li><a href="#overview">개요</a></li>
-      <li><a href="#coding">런타임 권한에 대한 코딩</a></li>
-      <li><a href="#testing">런타임 권한 테스트</a></li>
-      <li><a href="#best-practices">모범 사례</a></li>
-    </ol>
-
-<!--
-  <h2>Related Samples</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-
-<!--
-  <h2>See also</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-  </div> <!-- qv -->
-</div> <!-- qv-wrapper -->
-
-
-<p>
-  M 개발자 미리 보기에서는 새로운 앱 권한 모델을 소개하여 사용자가 앱을 설치하고 업그레이드하는 과정을 간소화할 수 있습니다.
- M 미리 보기에서 실행되는 앱이 새 권한 모델을 지원하는 경우, 사용자가 앱을 설치하거나 업그레이드할 때 아무런 권한을 허용하지 않아도 됩니다. 그 대신, 앱이 필요할 때마다 권한을 요청하고 시스템이 사용자에게 해당 권한을 요청하는 대화창을 표시합니다.
-
-
-
-
-</p>
-
-<p>
-  앱이 새 권한 모델을 지원하는 경우, Android 이전 버전을 실행하는 기기에서도 설치 및 실행할 수 있는 것은 변하지 않습니다. 이 경우, 그러한 기기의 기존 권한 모델을 사용합니다.
-
-
-</p>
-
-<h2 id="overview">
-  개요
-</h2>
-
-<p>
-  M 개발자 미리 보기에서는 플랫폼에 새로운 권한 모델을 도입합니다.
- 이 새로운 모델의 주요 구성 요소를 다음과 같이 요약해 보았습니다.
-</p>
-
-<ul>
-  <li>
-    <strong>권한 선언:</strong> 이전 Android 플랫폼에서와 같이 앱은 자신이 필요로 하는 권한을 모두 매니페스트에서 선언합니다.
-
-  </li>
-
-  <li>
-    <strong>권한 그룹:</strong> 권한은 각자의 기능을 기반으로 <em>권한 그룹</em>으로 나뉩니다.
- 예를 들어 <code>CONTACTS</code> 권한 그룹에는 사용자의 연락처와 프로필 정보를 읽고 쓰는 데 필요한 권한이 들어있습니다.
-
-
-  </li>
-
-  <li>
-    <p><strong>설치 시점에 제한된 권한 허용:</strong> 사용자가 앱을 설치 또는 업데이트하면 시스템이 해당 앱에 앱이 요청하는 권한 중 {@link android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}에 포함되는 것을 모두 허용합니다.
-
-
-
-    예를 들어 알람 시계와 인터넷 권한은 {@link android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}에 속하므로 이들 권한은 설치 시점에 자동으로 허용됩니다.
-
-
-    </p>
-
-    <p>시스템은 이외에도 앱 서명과 시스템 권한을 허용할 수도 있습니다. 이 내용은 <a href="#system-apps">시스템 앱 및 서명 권한</a>에 설명되어 있습니다.
-
- 설치 시 사용자에게 권한을 허용하라는 메시지가 표시되지 <em>않습니다.</em>
-</p>
-  </li>
-
-  <li>
-    <strong>사용자가 런타임에 권한 허용:</strong> 앱이 권한을 요청하면, 시스템이 사용자에게 대화창을 표시한 다음 앱의 콜백 기능을 호출해 권한이 허용되었는지를 알려줍니다.
-
- 사용자가 권한을 허용하는 경우, 앱에는 앱 매니페스트에서 선언한 해당 권한의 기능 영역에 관한 모든 권한이 부여됩니다.
-
-
-  </li>
-
-</ul>
-
-<p>
-  이 권한 모델은 앱이 권한을 필요로 하는 기능에 대해 동작하는 방식을 바꾸어 놓습니다.
- 다음은 이 모델에 적응하기 위한 몇 가지 개발 사례를 요약했습니다.
-
-</p>
-
-<ul>
-
-  <li>
-    <strong>항상 권한을 확인:</strong> 앱이 권한을 필요로 하는 작업을 수행해야 할 때마다, 우선 앱에 해당 권한이 있는지 확인해야 합니다.
-
- 권한이 없는 경우, 해당 권한을 허용해도록 요청합니다.
-
-  </li>
-
-  <li>
-    <strong>권한 부족을 안정적으로 처리:</strong> 앱이 적절한 권한을 허용받지 못하면, 실패를 깔끔하게 처리할 수 있어야 합니다.
-
-    예를 들어 권한에 기능만 추가하면 되는 것이었다면, 앱이 해당 기능을 비활성화하면 됩니다.
- 해당 권한이 앱이 제대로 기능하는 데 꼭 필요한 것이라면, 앱이 자신의 기능을 모두 비활성화하고 사용자에게 그 권한을 허용해야 한다고 알릴 수도 있습니다.
-
-
-  </li>
-
-  <div class="figure" style="width:220px" id="fig-perms-screen">
-    <img src="{@docRoot}preview/features/images/app-permissions-screen_2x.png" srcset="{@docRoot}preview/features/images/app-permissions-screen.png 1x, {@docRoot}preview/features/images/app-permissions-screen_2x.png 2x" alt="" width="220">
-    <p class="img-caption">
-      <strong>그림 1.</strong> 앱의 '설정'에 있는 권한 화면.
-    </p>
-  </div>
-
-  <li>
-    <strong>취소 가능한 권한:</strong> 사용자는 언제든 앱의 권한을 취소할 수 있습니다.
- 사용자가 앱의 권한을 끄면 해당 앱에 그 사실을 알리지 <em>않습니다.</em>
- 이런 경우, 앱이 제한된 작업을 수행하려면 필요한 권한이 있다는 점을 다시 확인해야 합니다.
-
-  </li>
-</ul>
-
-<p class="note">
-  <strong>참고:</strong> 앱이 M 개발자 미리 보기를 대상으로 하는 경우, <em>반드시</em> 새 권한 모델을 사용해야 합니다.
-
-</p>
-
-<p>
-  M 개발자 미리 보기 시작 시점에는 Google 앱 중에 새 권한 모델을 완전히 구현하지 않는 앱도 있습니다.
- Google은 이러한 앱을 M 개발자 미리 보기를 시행하면서 시간을 두고 업데이트하여 권한 설정/해제 설정을 제대로 사용하도록 할 예정입니다.
-
-
-</p>
-
-<p class="note">
-  <strong>참고:</strong> 앱에 자체 API 표면이 있는 경우, 권한을 대리로 허가하기 전에 우선 발신자에게 해당 데이터에 액세스할 필수 권한이 있는지 확인해야 합니다.
-
-
-</p>
-
-<h3 id="system-apps">
-  시스템 앱 및 서명 권한
-</h3>
-
-<p>
-  보통 사용자가 앱을 설치하면 시스템이 앱에 {@link android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}만 허용합니다.
-
- 하지만 시스템이 앱에 더 많은 권한을 허용하는 경우도 몇 가지 있습니다.
-
-</p>
-
-<ul>
-  <li>앱이 시스템 이미지의 일부분인 경우, 이 앱의 매니페스트에 목록으로 표시된 권한을 자동으로 모두 허용합니다.
-
-  </li>
-
-  <li>앱이 매니페스트에서 권한을 요청했는데 그것이 {@link android.content.pm.PermissionInfo#PROTECTION_SIGNATURE PROTECTION_SIGNATURE}에 속하며 해당 앱이 그러한 권한을 선언한 앱과 같은 인증서로 서명되어 있는 경우, 시스템은 요청하는 앱을 설치할 때 그러한 권한을 허용합니다.
-
-
-
-
-  </li>
-</ul>
-
-<p>
-  두 가지 경우 모두, 사용자가 언제든 권한을 취소할 수 있는 것은 변하지 않습니다. 시스템의 <strong>설정</strong> 화면으로 이동하여 <strong>앱 &gt;</strong>
-
- <i>app_name</i> <strong>&gt; 권한</strong>을 선택하면 됩니다. 이 앱은 계속해서 런타임에 권한을 확인하고 필요한 경우 해당 권한을 요청해야 합니다.
-
-
-</p>
-
-<h3 id="compatibility">
-  이전 및 이후 버전과의 호환성
-</h3>
-
-<p>
-  앱이 M 개발자 미리 보기를 대상으로 하지 않더라도, 앱은 M 미리 보기 기기에서도 기존 권한 모델을 계속 사용합니다.
- 사용자가 앱을 설치하면 시스템이 사용자에게 앱의 매니페스트에 목록으로 표시된 권한을 모두 허용하도록 요청합니다.
-
-
-</p>
-
-<p class="note">
-  <strong>참고:</strong> M 개발자 미리 보기를 실행하는 기기에서는 사용자가 어느 앱에 대해서든(레거시 앱 포함) 앱의 설정 화면에서 권한을 끌 수 있습니다.
-
- 사용자가 레거시 앱에 대한 권한을 끄면, 시스템이 자동으로 적절한 기능을 비활성화합니다.
- 앱이 해당 권한을 필요로 하는 작업을 수행하려 시도한다고 해도 그 작업이 반드시 예외를 발생시키는 것은 아닙니다.
-
- 그 대신에 빈 데이터 세트를 반환하거나 오류를 신호하거나, 기타 예기치 못한 동작을 선보일 수 있습니다.
- 예를 들어 권한 없이 캘린더를 쿼리하면 해당 메서드가 빈 데이터 세트를 반환합니다.
-
-</p>
-
-<p>
-  M 미리 보기를 실행하지 않는 기기에서 새 권한 모델을 사용하는 앱을 설치하면 시스템은 해당 앱을 다른 앱과 똑같이 다룹니다. 즉, 설치 시점에 시스템에 사용자에게 선언된 권한 모두를 허용하도록 요청합니다.
-
-
-
-</p>
-
-<p class="note">
-  <strong>참고:</strong> 미리 보기 릴리스에서는 최소 SDK 버전을 M 미리 보기 SDK로 설정해야 미리 보기 SDK와 컴파일할 수 있습니다.
- 즉, 개발자 미리 보기 시행 중에는 그러한 앱을 기존 플랫폼에서 테스트할 수 없다는 뜻입니다.
-
-
-</p>
-
-<h3 id="perms-vs-intents">권한과 인텐트 비교</h3>
-
-<p>
-  대부분의 경우, 앱에게 어떤 작업을 수행하도록 하려면 두 가지 방식 중 하나를 선택할 수 있습니다.
- 첫째로 앱이 작업을 직접 수행하도록 권한을 요청할 수 있습니다.
- 또는, 앱에 인텐트를 사용하도록 하여 또 다른 앱이 해당 작업을 수행하도록 할 수 있습니다.
-
-</p>
-
-<p>
-  예를 들어 앱이 기기 카메라로 사진을 촬영할 수 있어야 한다고 가정합시다.
- 그러면 앱은 <code>android.permission.CAMERA</code> 권한을 요청할 수 있습니다. 이렇게 하면 앱이 카메라에 직접 액세스할 수 있습니다.
-
- 그런 다음 앱이 카메라 API를 사용하여 카메라를 제어하고 사진을 촬영합니다.
- 이 방식을 사용하면 앱에 사진 촬영 과정에 대해 완전한 제어권을 부여하고, 카메라 UI를 앱에 통합할 수 있습니다.
-
-
-</p>
-
-<p>
-  하지만, 그러한 제어권이 필요하지 않은 경우라면 그저 {@link android.provider.MediaStore#ACTION_IMAGE_CAPTURE ACTION_IMAGE_CAPTURE} 인텐트를 사용해 이미지를 요청하면 됩니다.
-
- 이 인텐트를 시작하면 사용자에게 카메라 앱을 선택하라는 메시지가 표시되고(기본 카메라 앱이 이미 있는 경우) 그 앱이 사진을 촬영합니다.
-
- 이 카메라 앱은 촬영한 사진을 개발자의 앱의 {@link android.app.Activity#onActivityResult onActivityResult()} 메서드에 반환합니다.
-
-</p>
-
-<p>
-  이와 마찬가지로, 전화를 걸어야 하거나 사용자의 연락처에 액세스해야 하는 경우 등에는 적절한 인텐트를 만들거나 적절한 객체에 직접 액세스하도록 권한을 요청할 수 있습니다.
-
- 이 두 가지 방식에는 각각 장단점이 있습니다.
-
-</p>
-
-<p>
-  권한을 사용하는 경우:
-</p>
-
-<ul>
-  <li>개발자가 직접 작업을 수행하는 경우 본인의 앱이 사용자 환경을 완전히 제어합니다.
- 다만, 그렇게 포괄적인 제어권을 가지면 적절한 UI를 디자인해야 하므로 작업이 복잡해집니다.
-
-  </li>
-
-  <li>사용자에게 권한을 부여하라는 메시지는 작업을 처음 수행할 때만 표시됩니다.
- 그 다음부터는 앱이 사용자로부터 더 이상의 상호작용을 요청하지 않아도 작업을 수행할 수 있습니다.
- 다만, 사용자가 해당 권한을 허용하지 않는 경우(또는 나중에 취소하는 경우), 앱은 해당 작업을 수행할 수 없게 됩니다.
-
-
-  </li>
-</ul>
-
-<p>
-  인텐트를 사용하는 경우:
-</p>
-
-<ul>
-  <li>작업을 위해 UI를 디자인하지 않아도 됩니다. 이는 인텐트를 처리하는 앱이 UI를 제공하기 때문입니다. 하지만, 이것은 즉 개발자에게 사용자 환경에 대한 제어권이 전혀 없다는 뜻이기도 합니다.
-
- 사용자는 어쩌면 개발자가 본 적도 없는 앱과 상호작용하고 있을지 모릅니다.
-
-  </li>
-
-  <li>사용자에게 해당 작업에 대한 기본 앱이 없는 경우, 시스템은 사용자에게 앱을 선택하라는 메시지를 표시합니다. 사용자가 기본 처리기를 지정하지 않으면 해당 작업을 수행할 때마다 추가 대화창을 거쳐야 할 수도 있습니다.
-
-
-
-  </li>
-</ul>
-
-<h2 id="coding">런타임 권한에 대한 코딩</h2>
-
-<p>
-  새로운 M 개발자 미리 보기를 대상으로 앱을 개발하는 경우, 새 권한 모델을 사용해야 합니다.
- 이는 즉, 매니페스트에 필요한 권한을 선언하는 것 말고도 런타임에 자신이 해당 권한을 가지고 있는지도 확인해야 하며, 그러한 권한을 이미 가지고 있지 않으면 권한을 요청해야 한다는 뜻입니다.
-
-
-
-</p>
-
-<h3 id="enabling">
-  새 권한 모델 활성화하기
-</h3>
-
-<p>
-  새로운 M 개발자 미리 보기 권한 모델을 활성화하려면 앱의 <code>targetSdkVersion</code> 특성을 <code>"MNC"</code>로 설정하고, <code>compileSdkVersion</code>은 <code>"android-MNC"</code>로 설정하세요.
-
- 이렇게 하면 새 권한 기능이 모두 활성화됩니다.
-
-</p>
-
-<p>
-  미리 보기 릴리스에서는 <code>minSdkVersion</code>을 <code>"MNC"</code>로 설정해야만 미리 보기 SDK와 컴파일할 수 있습니다.
-
-</p>
-
-<h3 id="m-only-perm">
-  M 미리 보기 전용 권한 지정하기
-</h3>
-
-<p>
-  새 <code>&lt;uses-permission-sdk-m&gt;</code> 요소를 앱 매니페스트에 사용하여 권한이 M 개발자 미리 보기에서만 필요하다는 것을 나타낼 수 있습니다.
- 권한을 이런 식으로 선언하면 앱이 이전 버전의 기기에 설치될 때마다 시스템에서 사용자에게 메시지를 표시하지도 않고 앱에 권한을 허용하지도 않습니다. <code>&lt;uses-permission-sdk-m&gt;</code> 요소를 사용하면 새 권한을 앱의 업데이트된 버전에 추가하면서도 사용자가 업데이트를 설치할 때 권한을 허용하라고 강제로 시키지 않아도 됩니다.
-
-
-
-
-
-
-</p>
-
-<p>
-  앱이 M 개발자 미리 보기를 갖춘 기기에서 실행되는 경우, <code>&lt;uses-permission-sdk-m&gt;</code>은 <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>과 똑같이 동작합니다.
-
-
-  시스템은 사용자가 앱을 설치할 때 권한을 허용하라는 메시지를 표시하지 않고, 앱이 필요할 때마다 권한을 요청하게 됩니다.
-
-</p>
-
-<h3 id="prompting">
-  권한에 대한 메시지 표시하기
-</h3>
-
-<p>
-  앱이 새로운 M 개발자 미리 보기 권한 모델을 사용하는 경우, 앱이 M 미리 보기에서 실행되는 기기에서 처음 시작되었을 때 사용자에게 모든 권한을 허용하도록 요청하지 않습니다.
-
- 대신, 앱은 필요할 때마다 권한을 요청합니다.
- 앱이 권한을 요청하면 시스템이 사용자에게 대화창으로 표시합니다.
-
-</p>
-
-<p>
-  앱이 SDK 22 이하를 탑재한 기기에서 실행되는 경우, 앱은 기존 권한 모델을 사용합니다.
- 사용자가 앱을 설치하면 앱이 자신의 매니페스트에서 요청하는 모든 권한을 허용하라는 메시지가 표시되는데, 이때 <code>&lt;uses-permission-sdk-m&gt;</code>이라는 레이블이 붙은 권한은 예외입니다.
-
-
-</p>
-
-<h4 id="check-platform">앱이 실행되는 플랫폼 확인</h4>
-
-<p>
-  이 권한 모델은 M 개발자 미리 보기를 실행하는 기기에서만 지원됩니다.
- 이러한 메서드 중에서 호출하려면 앱은 우선 {@link android.os.Build.VERSION#CODENAME Build.VERSION.CODENAME} 값을 확인하여 자신이 어느 플랫폼에서 실행 중인지 확인해야 합니다.
-
-
- 기기가 M 개발자 미리 보기에서 실행 중인 경우, {@link android.os.Build.VERSION#CODENAME CODENAME}은 <code>"MNC"</code>입니다.
-
-</p>
-
-<h4 id="check-for-permission">앱에 필요한 권한이 있는지 확인</h4>
-
-<p>사용자가 권한을 필요로 하는 무언가를 하려고 시도하면, 앱은 자신이 현재 이 작업을 수행하는 데 필요한 권한을 가지고 있는지 확인합니다.
- 이렇게 하기 위해 앱은 <code>Context.checkSelfPermission( )</code>을 호출합니다.
-
-<i>permission_name</i> 사용자가 앱의 권한을 언제든 취소할 수 있기 때문에 앱은 사용자가 해당 권한을 이미 허용했다는 것을 알고 있더라도 확인 작업을 수행해야 합니다.
-
-
- 예를 들어, 사용자가 사진 촬영 앱을 사용하고자 한다면 앱은 <code>Context.checkSelfPermission(Manifest.permission.CAMERA)</code>를 호출합니다.
-
-</p>
-
-<p class="table-caption" id="permission-groups">
-  <strong>표 1.</strong> 권한과 권한 그룹.</p>
-<table>
-  <tr>
-    <th scope="col">권한 그룹</th>
-    <th scope="col">권한</th>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CALENDAR</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CALENDAR</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.WRITE_CALENDAR</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CAMERA</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.CAMERA</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CONTACTS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_PROFILE</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_PROFILE</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.LOCATION</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.ACCESS_FINE_LOCATION</code>
-        </li>
-        <li>
-          <code>android.permission.ACCESS_COARSE_LOCATION</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.MICROPHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.RECORD_AUDIO</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.PHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_PHONE_STATE</code>
-        </li>
-        <li>
-          <code>android.permission.CALL_PHONE</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CALL_LOG</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CALL_LOG</code>
-        </li>
-        <li>
-          <code>com.android.voicemail.permission.ADD_VOICEMAIL</code>
-        </li>
-        <li>
-          <code>android.permission.USE_SIP</code>
-        </li>
-        <li>
-          <code>android.permission.PROCESS_OUTGOING_CALLS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SENSORS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.BODY_SENSORS</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.USE_FINGERPRINT</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SMS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.SEND_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_WAP_PUSH</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_MMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CELL_BROADCASTS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-</table>
-
-<h4 id="request-permissions">필요한 경우 권한 요청</h4>
-
-<p>앱이 자신에게 필요한 권한을 이미 가지고 있지 않은 경우, 앱은 <code>Activity.requestPermissions(String[], int)</code> 메서드를 호출하여 적절한 권한(여러 개일 수 있음)을 요청합니다.
-
- 앱은 원하는 권한을 요청하면서 정수 "요청 코드"를 요청합니다.
-
-  이 메서드는 비동기화 방식으로 기능합니다. 이는 즉각적으로 반환되며, 사용자가 대화 상자에 응답한 다음에는 시스템이 결과를 가지고 앱의 콜백 메서드를 호출하여 앱이 <code>requestPermissions()</code>에 전달한 "요청 코드"와 같은 코드를 전달합니다.
-
-
-</p>
-
-  <p>다음 코드는 앱에 사용자의 연락처를 읽을 권한이 있는지 코드 확인을 하고, 필요한 경우 해당 권한을 요청합니다.
-</p>
-
-<pre>
-if (checkSelfPermission(Manifest.permission.READ_CONTACTS)
-        != PackageManager.PERMISSION_GRANTED) {
-    requestPermissions(new String[]{Manifest.permission.READ_CONTACTS},
-            MY_PERMISSIONS_REQUEST_READ_CONTACTS);
-
-    // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
-    // app-defined int constant
-
-    return;
-}
-</pre>
-
-<h4 id="handle-response">권한 요청 응답 처리하기</h4>
-
-<p>
-  앱이 권한을 요청하면 시스템이 사용자에게 대화 상자를 표시합니다.
- 사용자가 응답하면 시스템은 앱의 <code>Activity.onRequestPermissionsResult(int, String[], int[])</code>를 불러내 이를 사용자 응답에 전달합니다.
-
- 앱은 해당 메서드를 재정의해야 합니다. 이 콜백에는 개발자가 <code>requestPermissions()</code>에 전달한 것과 같은 요청 코드가 전달됩니다.
-
- 예를 들어 어느 앱이 <code>READ_CONTACTS</code> 액세스를 요청한다면 다음과 같은 콜백 메서드를 가지고 있을 수 있습니다.
-
-
-</p>
-
-<pre>
-&#64;Override
-public void onRequestPermissionsResult(int requestCode,
-        String permissions[], int[] grantResults) {
-    switch (requestCode) {
-        case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
-            if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
-
-                // permission was granted, yay! do the
-                // calendar task you need to do.
-
-            } else {
-
-                // permission denied, boo! Disable the
-                // functionality that depends on this permission.
-            }
-            return;
-        }
-
-        // other 'switch' lines to check for other
-        // permissions this app might request
-    }
-}
-</pre>
-
-  <p>사용자가 권한을 허용하면 시스템은 앱 매니페스트에 그 기능 영역에 대해 목록으로 표시된 모든 권한을 해당 앱에 부여합니다.
- 사용자가 요청을 거부하면 적절한 조치를 취해야 합니다.
- 예를 들어 이 권한에 좌우되는 메뉴 작업을 모두 비활성화할 수 있습니다.
-
-  </li>
-</p>
-
-<p>
-  시스템이 사용자에게 권한을 허용하도록 요청하면 사용자에게는 시스템에 해당 권한을 다시 요청하지 말라고 지시할 선택권이 있습니다.
- 그런 경우, 앱이 해당 권한을 요청하기 위해 <code>requestPermissions()</code>를 사용하면 시스템이 즉시 요청을 거부합니다.
-
- 이 경우 시스템은 사용자가 명시적으로 개발자의 요청을 다시 거부한 것처럼 <code>onRequestPermissionsResult()</code>를 호출합니다.
-
- 이러한 이유로, 앱은 사용자와의 직접적인 상호작용이 일어났다고 가정해서는 안 됩니다.
-
-</p>
-
-<h2 id="testing">런타임 권한 테스트</h2>
-
-
-<p>
-  M 개발자 미리 보기를 대상으로 삼고 앱을 개발하는 경우, 이 앱이 권한을 적절하게 처리하는지 테스트해보아야 합니다.
- 앱이 실행될 때 특정 권한을 가지고 있다고 가정해서는 안 됩니다.
- 앱을 처음 시작할 때에는 아무런 권한도 없을 가능성이 높고, 사용자가 언제든 권한을 취소하거나 복원할 수 있기 때문입니다.
-
-
-</p>
-
-<p>
-  앱을 테스트하여 모든 권한 관련 상황에서 제대로 작동하는지 확인하는 것이 좋습니다.
- M 미리 보기 SDK에서는 새로운 <a href="{@docRoot}tools/help/adb.html">Android 디버그 브리지(adb)</a> 명령을 제공하여 여러분이 시도해 보아야 하는 권한 설정이 무엇이든 앱을 테스트할 수 있도록 하였습니다.
-
-
-
-</p>
-
-<h3>
-  새로운 adb 명령 및 선택 사항
-</h3>
-
-<p>
-  M 미리 보기 SDK 플랫폼 도구에서는 여러 가지 새로운 명령을 제공하여 앱이 권한을 처리하는 방식을 테스트해볼 수 있습니다.
-
-</p>
-
-<h4>
-  권한으로 설치
-</h4>
-
-<p>
-  <a href="{@docRoot}tools/help/adb.html#move"><code>adb
-  install</code></a> 명령의 새로운 <code>-g</code> 선택 항목을 사용하면 앱을 설치하고 해당 앱의 매니페스트에 목록으로 표시된 모든 권한을 허용합니다.
-
-</p>
-
-<pre class="no-pretty-print">
-$ adb install -g &lt;path_to_apk&gt;
-</pre>
-
-<h4>
-  권한 허용 및 취소
-</h4>
-
-<p>
-  새로운 ADB <a href="{@docRoot}tools/help/adb.html#pm">패키지 관리자(pm)</a> 명령을 사용하면 설치된 앱에 권한을 허용하고 취소할 수 있습니다. 이 기능은 자동화 설정에서 유용하게 쓰일 수 있습니다.
-
-
-</p>
-
-<p>
-  권한을 허용하려면, 패키지 관리자의 <code>grant</code> 명령을 사용하세요.
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<p>
-  예를 들어 com.example.myapp 패키지 권한을 허용하여 오디오를 녹음하려면 이 명령을 사용하면 됩니다.
-
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant com.example.myapp android.permission.RECORD_AUDIO
-</pre>
-
-<p>
-  권한을 취소하려면, 패키지 관리자의 <code>revoke</code> 명령을 사용하세요.
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm revoke &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<h2 id="best-practices">모범 사례</h2>
-
-<p>
-  새 권한 모델을 사용하면 사용자에게 보다 원활한 환경을 제공하고, 앱을 더욱 쉽게 설치하며 앱이 어떤 작업을 하고 있는지 바로 확인할 수 있습니다.
-
- 새 모델의 장점을 최대한 활용할 수 있도록 다음과 같은 모범 사례를 추천해 드립니다.
-
-</p>
-
-
-<h3 id="bp-what-you-need">필요한 권한만 요청</h3>
-
-<p>
-  권한을 요청할 때마다 사용자에게는 결정을 내리라는 강요를 하는 셈입니다.
-  사용자가 요청을 거절하면 앱의 기능이 저하됩니다.
-  때문에 이러한 요청을 하는 횟수를 최소한으로 줄이는 것이 좋습니다.
-</p>
-
-<p>
-  예를 들어 앱이 권한을 요청하는 대신 <a href="{@docRoot}guide/components/intents-filters.html">인텐트</a>를 사용해 필요한 기능을 얻을 수 있는 경우도 꽤 많습니다.
-
- 앱이 전화기의 카메라를 사용해 사진을 촬영해야 하는 경우, 앱은 {@link android.provider.MediaStore#ACTION_IMAGE_CAPTURE MediaStore.ACTION_IMAGE_CAPTURE} 인텐트를 사용할 수 있습니다.
-
-
- 앱이 인텐트를 실행하면 시스템이 사용자에게 메시지를 표시해 이미 설치된 카메라 앱을 선택하여 사진을 촬영하도록 합니다.
-
-
-</p>
-
-<h3 id="bp-dont-overwhelm">
-  사용자에게 부담을 주지 말 것
-</h3>
-
-<p>
-  사용자에게 엄청나게 많은 수의 권한 요청을 한꺼번에 들이밀면 사용자가 부담을 느끼고 앱을 종료해버리는 결과를 초래할 수 있습니다. 대신 권한이 필요할 때마다 요청하는 것이 좋습니다.
-
-
-</p>
-
-<p>
-  일부 경우에는 앱에 절대적으로 꼭 필요한 권한이 한 개 이상 있을 수도 있습니다. 그런 경우에는 앱이 시작되자마자 해당 권한을 모두 요청하는 것을 권장합니다.
-
- 예를 들어 사진 앱을 만들면 앱이 기기 카메라로 액세스할 수 있는 권한이 필요합니다.
- 사용자가 앱을 처음으로 시작할 때 카메라를 사용할 권한을 요청받아도 놀라지는 않을 것입니다.
-
- 하지만 같은 앱에 사용자의 연락처과 사진을 공유하는 기능도 있다고 가정한다면 이 경우 해당 권한을 첫 시작 시점에 요청하는 것은 별로 권장할 만한 일이 <em>아닙니다.</em>
-
- 대신, 사용자가 "공유" 기능을 요청하려 할 때까지 기다렸다가 그 때 해당 권한을 요청하면 됩니다.
-
-</p>
-
-<p>
-  앱이 튜토리얼을 제공하는 경우, 튜토리얼 시퀀스가 다 끝날 무렵에 앱의 필수 권한을 요청하는 것이 이치에 맞을 수 있습니다.
-
-</p>
-
-<h3 id="bp-explain">
-  권한이 필요한 이유 설명
-</h3>
-
-<p>
-  개발자가 <code>requestPermissions()</code>를 호출하면 시스템이 표시하는 권한 대화창에는 앱이 원하는 권한이 무엇인지는 나타나 있지만 그것이 필요한 이유는 설명하지 않습니다.
-
- 사용자가 이런 것을 의아하게 여기는 경우가 있을 수 있습니다.
-  우선 사용자에게 앱이 왜 그런 권한을 원하는지 설명한 다음 <code>requestPermissions()</code>를 호출하는 것이 좋습니다.
-
-</p>
-
-<p>
-  예를 들어 사진 앱인 경우 위치 서비스를 이용하고자 할 수 있습니다. 그래야 사진에 지오태그를 표시할 수 있기 때문입니다.
- 일반적인 사용자는 사진에 위치 정보를 담을 수 있다는 점을 모를 수도 있고, 그러면 사진 앱이 왜 위치를 알고 싶어 하는지 의아하게 여길 수 있습니다.
-
- 그러므로 이런 경우에는 앱이 사용자에게 이런 기능에 대해 <em>미리</em> 알려드린 후 <code>requestPermissions()</code>를 호출하는 것이 좋습니다.
-
-
-</p>
-
-<p>
-  이를 수행하기 위한 한 가지 방법은 이러한 요청을 앱 튜토리얼에 넣는 것입니다. 튜토리얼에는 앱의 각 기능을 표시할 수 있고, 그러면서 어느 권한이 필요한지 설명할 수도 있기 때문입니다.
-
- 예를 들어 사진 앱의 튜토리얼에서 "연락처 목록의 지인들과 사진 공유" 기능을 시연한 다음 사용자에게 앱이 사용자의 연락처를 보려면 권한을 부여해야 한다고 알리면 됩니다.
-
-
- 그런 다음, 앱이 <code>requestPermissions()</code>를 호출하여 사용자에게 해당 액세스를 요청합니다.
- 물론 튜토리얼을 따르지 않는 사용자도 있게 마련이므로 앱의 정상 작동 중에 권한을 확인하고 요청해야 합니다.
-
-
-</p>
diff --git a/docs/html-intl/intl/ko/preview/index.jd b/docs/html-intl/intl/ko/preview/index.jd
deleted file mode 100644
index badb9f6..0000000
--- a/docs/html-intl/intl/ko/preview/index.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=Android M 개발자 미리 보기
-page.tags="preview",
-meta.tags="preview, M preview", androidm
-fullpage=true
-section.landing=true
-header.hide=1
-footer.hide=1
-@jd:body
-
-<section class="dac-expand dac-hero dac-light" >
-  <div class="wrap">
-    <div class="cols dac-hero-content">
-      <div class="col-9of16 col-push-7of16 dac-hero-figure">
-        <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png" srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
-             {@docRoot}images/home/devices-hero_620px_2x.png 2x">
-      </div>
-      <div class="col-7of16 col-pull-9of16">
-        <h1 class="dac-hero-title">Android M 개발자 미리 보기</h1>
-        <p class="dac-hero-description">
-          Android의 다음 버전을 만나볼 준비가 되셨습니까? 여러분의 앱을 Nexus 5, 6, 9 및 Player에서 테스트해보십시오.
- 새로운 내용은 무엇인지 둘러보십시오. <strong>런타임 권한</strong>, <strong>Doze</strong> 및 <strong>앱 대기 모드</strong> 절전 기능, 새로 나온 <strong>지원 기술</strong>, 이외에도 많은 것이 있습니다.
-
-
-        </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/overview.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          지금 시작하세요!
-</a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-      </div>
-    </div>
-    <div class="dac-section dac-small">
-      <div class="resource-widget resource-flow-layout col-16"
-           data-query="collection:preview/landing/resources"
-           data-cardSizes="6x2"
-           data-maxResults="6"></div>
-    </div>
-  </div>
-</section>
-
-<section class="dac-section dac-gray"><div class="wrap">
-  <h1 class="dac-section-title">리소스</h1>
-  <div class="dac-section-subtitle">
-    앱을 Android M에 대비시키는 데 유용한 중요 정보입니다.
-  </div>
-
-  <div class="resource-widget resource-flow-layout col-16"
-       data-query="collection:preview/landing/more"
-       data-cardSizes="6x6"
-       data-maxResults="16"></div>
-
-    <ul class="dac-section-links">
-      <li class="dac-section-link">
-        <a href="https://code.google.com/p/android-developer-preview/">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          문제 보고
-</a>
-      </li>
-      <li class="dac-section-link"><a href="http://g.co/dev/AndroidMDevPreview">
-        <span class="dac-sprite dac-auto-chevron"></span>
-        G+ 커뮤니티 가입
-</a>
-      </li>
-    </ul>
-  </div>
-</section>
-
diff --git a/docs/html-intl/intl/ko/preview/license.jd b/docs/html-intl/intl/ko/preview/license.jd
deleted file mode 100644
index 71c9d45..0000000
--- a/docs/html-intl/intl/ko/preview/license.jd
+++ /dev/null
@@ -1,143 +0,0 @@
-page.title=라이선스 계약
-
-@jd:body
-
-<p>
-Android SDK 미리보기를 시작하려면 우선 다음과 같은 사용 약관에 동의해야 합니다. 아래에 설명한 바와 같이, 이것은 Android SDK의 미리 보기 버전이며 변경될 가능성이 있고 이를 사용하는 위험 부담은 계약자 본인에게 있음을 유의하십시오.
-  Android SDK 미리보기는 안정된 릴리스가 아니며, 오류나 결함이 들어있을 수 있고 이 때문에 컴퓨터 시스템, 기기 및 데이터에 심각한 손상을 초래할 수 있습니다.
-</p>
-
-<p>
-이것은 Android SDK 미리 보기 라이선스 계약서입니다(이하 "라이선스 계약").
-</p>
-<div class="sdk-terms" style="height:auto;border:0;padding:0;width:700px">
-1. 개요 
-
-1.1 Android SDK 미리 보기(본 라이선스 계약에서는 "미리 보기"라고 칭하며, 구체적으로 Android 시스템 파일, 패키지 API 및 미리 보기 라이브러리 파일이 이용 가능한 경우 및 이용 가능하게 전환된 경우 이를 포함한 것을 가리킴)는 본 라이선스 계약 조건에 따라 계약자에게 사용을 허여합니다. 본 라이선스 계약은 미리 보기 사용과 관련하여 계약자와 Google 간에 법적 구속력이 있는 계약을 체결합니다.
-
-1.2 "Android"는 기기를 위한 Android 소프트웨어 스택을 의미합니다. 이는 http://source.android.com/ URL에 위치하며 수시로 업데이트되는 Android 오픈 소스 프로젝트에서 제공됩니다.
-
-1.3 "Google"은 미국 1600 Amphitheatre Parkway, Mountain View, CA 94043에 본사를 두고 있는 델라웨어주 법인인 Google Inc.를 의미합니다.
-
-2. 라이선스 계약에 동의 
-
-2.1 이 미리 보기를 사용하려면, 먼저 라이선스 계약에 동의해야 합니다. 이 라이선스 계약에 동의하지 않고 미리 보기를 사용해서는 안 됩니다. 
-
-2.2 수락을 클릭하고/거나 미리 보기를 사용하면 본 라이선스 계약 조건에 동의하는 것으로 간주됩니다.
-
-2.3 미국법 또는 현재 거주 중이거나 미리 보기를 사용하는 국가를 포함하여 다른 국가의 법에 따라 미리 보기를 받는 것이 금지된 경우, 미리 보기를 사용할 수 없으며 본 라이선스 계약을 수락할 수 없습니다.
-
-2.4 회사 또는 단체 내에서 내부적으로 미리 보기를 사용하며 고용주 또는 기타 단체를 대신하여 본 라이선스 계약 준수에 동의하는 경우, 계약자의 고용주나 그 단체에 본 라이선스 계약에 대한 구속력을 부여할 수 있는 모든 법적 권한을 계약자가 갖고 있음을 진술하고 보증합니다. 구속력을 부여할 수 있는 법적 권한이 없을 경우, 고용주 또는 기타 단체를 대신하여 본 라이선스 계약에 동의하거나 미리 보기를 사용할 수 없습니다.
-
-3. Google이 허하는 미리 보기 라이선스 
-
-3.1 본 라이선스 계약의 조건에 따라 Google은 계약자에게 로열티 없고 양도 불가능하며 비독점적이고 2차 인가를 불허하며, 한정되고 무효화할 수 있는 미리 보기 사용 권한을 허용하여 회사 또는 조직 내에서 개인적 또는 내부적으로 사용할 수 있도록 합니다. 이는 Android 플랫폼에서 실행되는 애플리케이션을 개발할 목적으로만 사용해야 합니다. 
-
-3.2 계약자는 SDK에 존재하는 지적 재산권을 포함한 SDK에 대한 모든 법적인 권리, 소유권 및 이익이 Google 또는 제3자에게 있음에 동의합니다 "지적 재산권"은 모든 특허법, 저작권법, 영업비밀법, 상표법상 존재하는 모든 권리 및 기타 모든 재산권을 의미합니다. Google은 계약자에게 명시적으로 부여하지 않은 모든 권리를 보유합니다.
-
-3.3 본 라이선스 계약에 명시적으로 허용된 용도 외에는 미리 보기를 사용할 수 없습니다. 해당 제3자 라이선스 요건이 허용하는 범위를 제외하고 계약자는 미리 보기의 일부분을 (a) 복사(백업 목적 제외), 수정, 개작, 재배포, 역컴파일, 리버스 엔지니어링, 분해하거나 이를 통해 파생물을 생성하거나 (b) 개인 컴퓨터를 제외한 모바일 단말기 또는 기타 모든 하드웨어 기기에 미리 보기의 일부를 로드하거나, 미리 보기의 일부를 다른 소프트웨어와 결합하거나 미리 보기의 일부가 통합된 일체의 소프트웨어나 기기를 배포해서는 안 됩니다.
-
-3.4 계약자는 미리 보기에서 파생된 소프트웨어 개발 키트의 배포, 이러한 키트 생성에 참여 또는 홍보를 포함하되 이에 국한되지 않고, Android의 단편화를 야기하는 어떠한 행동도 취하지 않을 것임에 동의합니다.
-
-3.5 오픈 소스 소프트웨어 라이선스에 의거한 미리 보기 구성요소의 사용, 재생산, 배포에는 본 라이선스 계약이 아닌, 해당 오픈 소스 소프트웨어 라이선스의 조건이 적용됩니다. 계약자는 허용된 모든 권한 하에서 그러한 오픈 소스 소프트웨어 라이선스에 관해 충실한 피허가자로서의 자세를 견지할 것이며 그러한 권한을 종료, 일시 중단 또는 침해하는 행위를 삼갈 것을 동의합니다. 
-
-3.6 계약자는 Google이 제공하는 SDK의 형태 및 특성이 사전 통지 없이 변경될 수 있음에 동의하며, 이전 버전의 미리 보기에서 개발된 애플리케이션이 이후 버전의 SDK와 호환되지 않을 수 있음에 동의합니다. 계약자는 계약자 또는 사용자에게 사전 통지 없이 SDK(또는 SDK에 포함된 기능) 제공을(영구적 또는 일시적으로) 중단할 수 있는 권한이 Google에게 있음에 동의합니다.
-
-3.7 본 라이선스 계약은 계약자에게 Google의 상표명, 상표, 서비스 표시, 로고, 도메인 이름, 기타 독특한 브랜드 특징에 대한 사용 권한을 부여하지 않습니다.
-
-3.8 계약자는 SDK에 부착되어 있거나 포함되어 있는 모든 소유권 고지 사항(저작권 및 상표 고지 사항 포함)을 제거, 변경 또는 불분명하게 만들지 않을 것에 동의합니다.
-
-4. 계약자의 미리 보기 사용 
-
-4.1 Google은 본 라이선스 계약의 어떤 조항도 계약자(또는 계약자의 사용 허가자)가 미리 보기를 사용하여 개발한 소프트웨어 애플리케이션에 대한 권리, 소유권 또는 이익, 그리고 해당 애플리케이션에 존재하는 모든 지적 재산권을 부여하지 않는다는 점에 동의합니다.
-
-4.2 계약자는 (a) 본 라이선스 계약 그리고 (b) 모든 준거법, 규정 또는 관련 관할권 내에서 일반적으로 수용되는 관행 또는 지침(미국 또는 기타 관련 국가로/에서의 데이터 또는 소프트웨어 수출과 관련된 모든 법률 포함)에서 허용하는 용도에 한하여 미리 보기를 사용하고 애플리케이션을 작성하는 것에 동의합니다. 
-
-4.3 계약자는 일반 대중 사용자를 대상으로 미리 보기를 사용하여 애플리케이션을 개발하는 경우, 해당 사용자의 프라이버시 및 법적 권리를 보호하는 것에 동의합니다. 사용자가 계약자에게 사용자 이름, 비밀번호 또는 기타 로그인 정보나 개인 정보를 제공하는 경우, 계약자는 제공된 정보가 자신의 애플리케이션에 제공된다는 사실을 사용자에게 알려야 하며, 반드시 법적으로 적절한 개인정보 보호정책 고지 및 보호를 해당 사용자에게 제공해야 합니다. 애플리케이션에서 사용자가 제공한 개인정보나 민감한 정보를 저장하는 경우, 이를 안전하게 처리해야 합니다. 사용자들이 애플리케이션에 Google 계정 정보를 제공하는 경우, 애플리케이션은 해당 사용자의 Google 계정에 액세스하는 목적으로만, 그리고 각 사용자가 허용한 범위 내의 한정된 목적으로만 이러한 정보를 사용해야 합니다.
-
-4.4 계약자는 Google 또는 기타 모든 타사의 서버, 네트워크 또는 기타 모든 재산 또는 서비스를 허가 없이 방해, 교란, 손상 또는 액세스하는 애플리케이션의 개발 또는 배포를 포함한 하등의 행위에 미리 보기를 이용하지 않을 것임을 동의합니다.
-
-4.5 계약자는 자신이 Android 및/또는 Android용 애플리케이션을 통해 생성, 전송 또는 표시하는 모든 데이터, 콘텐츠 또는 리소스 그리고 그로 인한 결과(Google이 입을 수 있는 모든 피해나 손실 포함)에 대해 전적으로 책임이 있다는 것(그리고 Google은 계약자 또는 모든 제3자에 대한 책임이 없다는 것)에 동의합니다.
-
-4.6 계약자는 본 라이선스 계약, 모든 해당 제3자 계약 또는 서비스 약관, 또는 모든 준거법 또는 규정에 의거한 계약자 의무 위반, 그리고 그로 인한 결과(Google 또는 제3자가 입을 수 있는 모든 피해나 손실 포함)에 전적으로 책임이 있다는 것(그리고 Google은 계약자 또는 모든 제3자에 대한 책임이 없다는 것)에 동의합니다.
-
-4.7 이 미리 보기는 현재 개발 단계에 있으며, 계약자의 테스트와 피드백은 그러한 개발 과정에 중요한 부분을 차지합니다. 미리 보기를 사용함으로써 계약자는 일부 기능의 구현은 아직 개발 중인 상태이며 미리 보기가 안정된 릴리스처럼 완벽하게 기능할 것이라 믿고 사용해서는 안 된다는 점을 인지하는 것으로 간주합니다. 계약자는 이 미리 보기를 사용한 애플리케이션을 공개적으로 배포 또는 배송하지 않기로 동의합니다. 이 미리 보기는 공식 Android SDK가 출시된 이후에는 더 이상 지원되지 않기 때문입니다. 
-
-5. 계약자의 개발자 자격 증명
-
-5.1 계약자는 Google이 발급했거나 자신이 선택한 모든 개발자 자격 증명에 대한 기밀성을 유지할 책임이 있으며 계약자의 개발자 자격 증명 하에 개발된 모든 애플리케이션에 대한 전적인 책임이 있음에 동의합니다.
-
-6. 개인정보 보호정책 및 정보
-
-6.1 미리 보기를 지속적으로 혁신하고 개선하기 위해, Google은 고유 식별자, 관련 IP 주소, 소프트웨어 버전 번호, 미리 보기에서 사용 중인 도구 및/또는 서비스와 도구의 사용법에 대한 정보를 포함하되 이에 국한되지 않고 소프트웨어에서 특정 사용량 통계 정보를 수집할 수 있습니다. 그러한 정보를 수집하기 전에 미리 보기는 계약자에게 이를 통지하고 동의를 구할 것입니다. 계약자가 동의하지 않을 경우 정보를 수집하지 않습니다.
-
-6.2 수집된 데이터는 모두 취합된 형태로 미리 보기 개선을 위해 검토되며, Google의 개인정보 보호정책에 따라 유지 관리됩니다. 이 정보는 http://www.google.com/policies/privacy/를 참조하십시오.
-
-7. 제3자 애플리케이션
-
-7.1 제3자가 개발한 애플리케이션을 실행하거나 제3자가 제공한 데이터, 콘텐츠 또는 리소스에 액세스하기 위해 미리 보기를 사용하는 경우, 계약자는 Google이 그러한 애플리케이션, 데이터, 콘텐츠 또는 리소스에 대한 책임이 없음에 동의합니다. 계약자는 그러한 제3자 애플리케이션을 통해 자신이 액세스한 모든 데이터, 콘텐츠 또는 리소스에 대한 책임은 그것을 만든 사람에게 있음에 동의합니다. 또한 계약자가 그러한 모든 제3자 애플리케이션, 데이터, 콘텐츠 또는 리소스를 사용하거나 액세스함으로써 비롯된 모든 피해나 손실에 대한 책임이 Google에게 없음에 동의합니다.
-
-7.2 그러한 제3자 애플리케이션을 통해 계약자에게 제공된 데이터, 콘텐츠 그리고 리소스는 그것을 제공한 제공자(또는 제공자를 대신하는 기타 개인 또는 기업)가 소유한 지적 재산권에 의해 보호될 수 있음을 유의해야 합니다. 그러한 데이터, 콘텐츠 또는 리소스(전부 또는 일부)를 수정, 임대, 리스, 대여, 판매, 배포하거나 이를 기반으로 파생물을 생성해서는 안 됩니다. 단, 관련 소유자로부터 그러한 작업을 수행해도 좋다는 허락을 받은 경우에는 예외입니다.
-
-7.3 계약자는 그러한 제3자 애플리케이션, 데이터, 콘텐츠 또는 리소스의 사용은 계약자와 관련 제3자 간에 체결하는 별도의 계약 조건의 적용을 받는다는 것을 인정합니다.
-
-8. Google API 사용
-
-8.1 Google Data API
-
-8.1.1 Google에서 데이터를 검색하기 위해 API를 사용하는 경우, 그러한 데이터가 Google 또는 데이터를 제공하는 당사자(또는 당사자를 대신하는 기타 개인 또는 기업)가 소유한 지적 재산권에 의해 보호될 수 있음을 인정합니다. 그러한 API를 사용하는 경우, 추가적인 서비스 약관의 적용을 받을 수 있습니다. 관련 서비스 약관에 허용되지 않은 한, 그러한 데이터(전부 또는 일부)를 변경, 임대, 리스, 대여, 판매, 배포하거나 이를 기반으로 파생물을 생성해서는 안 됩니다.
-
-8.1.2 Google에서 사용자 데이터를 검색하기 위해 API를 사용하는 경우, 계약자는 사용자로부터 명시적인 동의를 얻은 경우에 한하여, 그리고 해당 사용자가 허용한 범위 내의 한정된 목적으로만 데이터를 검색해야 합니다.
-
-9. 라이선스 계약 종료
-
-9.1 본 라이선스 계약은 계약자 또는 Google에 의해 아래와 같은 조건 하에 종료될 때까지 계속 적용됩니다.
-
-9.2 계약자가 라이선스 계약을 종료하고자 하는 경우, 미리 보기 및 관련 개발자 자격 증명 일체의 사용을 중단하는 것으로 그러한 의사를 피력할 수 있습니다.
-
-9.3 Google은 언제든 이유 여하를 불문하고 계약자에게 통고하여 라이선스 계약을 종료할 수 있습니다.
-
-9.4 본 라이선스 계약은 통보 또는 여타의 행위 없이도 자동으로 종료됩니다. 이에 해당되려면 다음과 같은 조건이 수반되어야 합니다.
-(A) Google이 계약자가 거주하는 국가 또는 계약자가 서비스를 사용하는 지역에서 미리 보기 또는 미리 보기의 특정 부분 제공을 중지하는 경우 및
-(B) Google이 Android SDK의 최종 릴리스 버전을 발행하는 경우.
-
-9.5 본 라이선스 계약이 종료되면 라이선스 계약으로 계약자에게 허용한 라이선스가 취소되며, 이에 따라 계약자는 미리 보기 사용을 즉시 모두 중단해야 하고 제 10, 11, 12 및 14절의 조항이 기한 없이 유지됩니다.
-
-10. 면책 조항
-
-10.1 계약자는 미리 보기 이용에 대한 위험 부담이 전적으로 본인에게 있으며, Google이 일체의 보증 없이 미리 보기를 "있는 그대로" 그리고 "이용 가능한" 상태로 제공한다는 것을 분명히 이해하고 동의합니다.
-
-10.2 미리 보기 이용 및 이용 과정에서 다운로드하거나 얻게 되는 모든 자료를 사용하는 것은 본인의 재량에 따르며 이에 대한 위험 부담이 전적으로 본인에게 있으며, 그러한 사용으로 인해 발생하는 컴퓨터 시스템 또는 다른 기기의 손상 또는 데이터 손실에 대한 책임은 전적으로 본인에게 있습니다. 전술한 조항을 제한하지 않는 범위 내에서 계약자는 미리 보기가 안정된 릴리스가 아니며 오류, 결함 및 보안 취약성이 포함되어 있을 수 있어 그 결과로 중대한 손상을 유발할 수 있다는 점을 이해하는 것으로 간주합니다. 여기에는 계약자의 컴퓨터 시스템 또는 기타 기기의 완전하고 돌이킬 수 없는 손실도 포함됩니다.
-
-10.3 더 나아가, Google은 상품성, 특정 목적에 대한 적합성 및 비침해의 묵시적 보증 등을 포함하되 이에 국한되지 않고 명시적이든 묵시적이든 모든 종류의 보증 및 조건을 명시적으로 부인합니다.
-
-11. 책임 한계
-
-11.1 계약자는 계약자에게 발생할 수 있는 직접, 간접, 부수적, 특별, 결과적 또는 징벌적 손해에 대해 그 어떤 책임 이론에 근거해서도 Google, 해당 자회사, 계열사 및 사용 허가자가 어떠한 책임도 지지 아니함을 분명히 이해하고 동의합니다. 이러한 손해에는 Google 또는 해당 대리자가 이러한 손실 발생 가능성에 대해 통지를 받았거나 이러한 사항을 인식했는지에 상관없이 모든 데이터 손실이 포함됩니다.
-
-12. 면책
-
-12.1 법률에 의해 허용되는 최대한의 범위 안에서 계약자는 (a) 미리 보기 사용, (b) 계약자가 미리 보기에서 개발한 일체의 애플리케이션에서 초래된 모든 사람의 저작권, 상표, 영업비밀, 트레이드 드레스, 특허 또는 기타 지적 재산권의 침해, 또는 어떤 사람의 명예를 훼손하거나 초상권 또는 개인정보 보호정책을 침해함 또는 (C)계약자 본인이 본 라이선스 계약을 위반함으로써 발생하거나 생기는 모든 청구, 조치, 소송 또는 절차, 그리고 모든 손실, 책임, 손해, 경비(합리적인 변호사 비용 포함)로부터 Google을 옹호하고, 면책시키고, Google이 손해를 입지 않도록 하는 데 동의합니다.
-
-13. 라이선스 계약 변경
-
-13.1 미리 보기의 새로운 버전을 배포할 때, Google은 본 라이선스 계약의 내용을 변경할 수 있습니다. 그러한 변경이 이뤄진 경우, Google은 미리 보기가 제공되는 웹사이트에 새로운 라이선스 계약 버전을 게재할 것입니다.
-
-14. 일반 법적 조건
-
-14.1 본 라이선스 계약은 계약자와 Google 간의 모든 법적 계약을 구성하며, 계약자의 미리 보기 사용을 규제하고(별도의 서면 계약을 통해 Google이 계약자에게 제공하는 모든 서비스는 제외), 미리 보기와 관련하여 이전에 계약자와 Google이 맺은 모든 계약을 완전히 대체합니다.
-
-14.2 계약자는 Google이 라이선스 계약에 포함된(또는 관련 법률에 의해 Google이 향유하는) 법적 권리 또는 구제수단을 행사하거나 집행하지 않더라도, Google이 권리를 공식적으로 포기한 것으로 간주하지 않으며, Google이 계속해서 그러한 권리 또는 구제수단을 이용할 수 있음에 동의합니다.
-
-14.3 본 라이선스 계약의 조항이 무효라고 이 사안에 관한 판결을 할 수 있는 관할권을 가진 법원이 판결할 경우, 그 조항은 라이선스 계약의 나머지 조항에 영향을 미치지 않는 형태로 라이선스 계약에서 제거됩니다. 본 라이선스 계약의 나머지 조항은 여전히 유효하며 집행 가능합니다.
-
-14.4 계약자는 Google이 모회사가 되는 회사 그룹에 속한 각 회사가 본 라이선스 계약의 제3수익자이며, 그러한 다른 회사들이 그들에게 이익(또는 유리한 권리)을 부여하는 본 라이선스 계약의 모든 조항을 직접 행사하고 적용할 수 있는 권리를 가진다는 데 동의합니다. 그 외에는 다른 어떤 개인이나 회사도 본 라이선스 계약의 제3수익자가 될 수 없습니다.
-
-14.5 수출 규제. 미리 보기는 미국의 수출법과 규정의 적용을 받습니다. 계약자는 미리 보기에 적용되는 모든 국내 및 국제 수출법과 규정을 준수해야 합니다. 그러한 법에는 수출 대상국, 최종 사용자 및 최종 용도에 대한 제한이 포함됩니다.
-
-14.6 계약자 또는 Google은 상대 당사자의 사전 서면 승인 없이 본 라이선스 계약에서 부여된 권리를 제3자에게 양도하거나 이전할 수 없으며, 그러한 승인 없이 이루어진 양도 시도는 모두 무효입니다. 계약자는 Google의 사전 승인 없이 본 라이선스 계약 상의 책임 또는 의무를 위임할 수 없습니다. 
-
-14.7 본 라이선스 계약, 그리고 본 라이선스 계약 상의 계약자와 Google의 관계는 법률 조항 간의 충돌과는 무관하게 캘리포니아주법에 의한 규제를 받습니다. 계약자와 Google은 본 라이선스 계약으로부터 발생하는 모든 법적 문제 해결을 캘리포니아주 산타 클라라(Santa Clara) 카운티 내에 소재한 전속 관할 법원에 의뢰하는 것에 동의합니다. 위 규정에도 불구하고, 계약자는 Google이 여전히 모든 관할권에서 강제 구제책(또는 동등한 유형의 긴급 법적 구제)을 신청할 수 있음에 동의합니다.
-
-
-</div>
\ No newline at end of file
diff --git a/docs/html-intl/intl/ko/preview/overview.jd b/docs/html-intl/intl/ko/preview/overview.jd
deleted file mode 100644
index 04febc7..0000000
--- a/docs/html-intl/intl/ko/preview/overview.jd
+++ /dev/null
@@ -1,389 +0,0 @@
-page.title=프로그램 개요
-page.metaDescription=Android M 개발자 미리 보기를 시작하신 여러분, 환영합니다. 이 프로그램은 Android의 다음 버전에 대해 앱을 테스트하고 최적화하는 데 필요한 모든 것을 제공해 드립니다.
-page.image=images/cards/card-preview_16-9_2x.png
-page.tags="preview", "developer", "android"
-
-@jd:body
-
-<div class="cols" style=
-"background-color:#ffebc3; padding: 5px 0;margin-bottom:1em; text-align:center;">
-<h3>
-    Developer Preview 2 is now available
-  </h3>
-
- <ul class="dac-section-links">
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-notes">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Read the Notes</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-get">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Get the Update</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="https://code.google.com/p/android-developer-preview/">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Report Issues</a>
-    </li>
-  </ul>
-</div>
-
-<p>
-  <strong>Android M 개발자 미리 보기</strong>를 시작하신 여러분, 환영합니다. 이 프로그램은 Android의 다음 버전에 대해 앱을 테스트하고 최적화하는 데 필요한 모든 것을 제공해 드립니다.
-
- 이 프로그램은 무료이며, M 개발자 미리 보기 도구만 다운로드하면 시작하실 수 있습니다.
-
-</p>
-
-<div style="background-color:#eceff1;padding:1em;">
-<div class="wrap">
-  <div class="cols">
-    <div class="col-4of12">
-      <h5>
-        하드웨어 및 에뮬레이터 시스템 이미지
-      </h5>
-
-      <p>
-        Nexus 5, 6, 9, Player(TV용)와 에뮬레이터에서 앱을 실행하고 테스트해 보세요.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        최신 플랫폼 코드
-      </h5>
-
-      <p>
-        미리 보기 시행 중에 여러 번의 업데이트를 제공할 예정입니다. 이로써 여러분은 항상 최신 플랫폼 변경에 대해 테스트할 수 있습니다.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        업데이트를 OTA로 전달
-      </h5>
-
-      <p>
-        일단 기기를 최초 미리 보기에 플래시하고 나면 OTA로 업데이트를 받을 수 있습니다.
-
-      </p>
-    </div>
-  </div>
-
-  <div class="cols">
-
-
-    <div class="col-4of12">
-      <h5>
-        새 동작 및 기능
-      </h5>
-
-      <p>
-        작업을 일찍 시작하여 새 런타임 권한 모델과 절전 기능 등 새로운 플랫폼 동작을 지원합니다.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        개발자가 보고한 문제에 대한 우선 순위 창
-      </h5>
-
-      <p>
-        Google에서는 처음 몇 주 동안 개발자가 보고한 문제에 우선 순위를 부여할 예정입니다. 가능한 빨리 테스트하고 피드백을 보내 주세요.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        피드백 및 지원
-      </h5>
-
-      <p>
-        문제를 보고하고 Google의 <a href="https://code.google.com/p/android-developer-preview/">문제 추적기</a>를 사용해 피드백을 보내 주세요.
-        <a href="http://g.co/dev/AndroidMDevPreview">M&nbsp;개발자 커뮤니티</a>를 이용하면 다른 개발자들과 의견을 주고받을 수 있습니다.
-
-      </p>
-    </div>
-  </div>
-</div>
-</div>
-
-<!--
-<p>
-  With the M Developer Preview, you'll get an early start on testing your apps,
-  with enough time to make adjustments before the public platform release later
-  in the year. We'll provide several updates to the Preview tools in the weeks
-  ahead, so you can keep in sync with the latest changes as the platform moves
-  toward launch.
-</p>
-<img src="{@docRoot}preview/images/m-preview-timeline.png" alt=
-"Preview program timeline" id="timeline">
-<p>
-  You can help us improve the platform by <a href=
-  "https://code.google.com/p/android-developer-preview/">reporting issues</a>
-  through our feedback channels. This is especially
-  critical in the first month of the preview, when we’ll be giving priority to
-  developer-reported issues and feedback.
-</p> -->
-
-
-<h2 id="timeline">
-  일정 및 업데이트
-</h2>
-<img src="{@docRoot}preview/images/m-preview-timeline-crop.png" alt="Preview program timeline" id="timeline">
-<p>
-  M 개발자 미리 보기는 5월 28일부터 최종 Android M SDK가 출시될 때까지 실행됩니다. 최종 버전은 2015년 3사분기 중으로 예정된 공개 릴리스 직전에 출시할 계획입니다.
-
-
-</p>
-
-<p>
-  개발 중 중요 단계에 다다를 때마다 여러분의 테스트 기기를 위해 업데이트를 전달해 드리겠습니다.
-  잠정적인 중요 단계는 다음과 같습니다.
-</p>
-
-<ul>
-  <li>
-    <strong>미리 보기&nbsp;1</strong>(최초 미리 보기 릴리스, 5월 말)
-  </li>
-
-  <li>
-    <strong>미리 보기&nbsp;2</strong>(6월 말/7월 초)
-  </li>
-
-  <li>
-    <strong>미리 보기&nbsp;3</strong>(최종 버전 출시 직전, 7월 말)
-  </li>
-</ul>
-
-<p>
-  이러한 업데이트는 <strong>최종 SDK</strong>(3사분기 후반)로 막을 내릴 것이며, 이것으로 Android 새 버전에 대한 공식 API뿐만 아니라 최종 시스템 동작 및 기능도 제공하게 됩니다.
-
-
-</p>
-
-<p>
-  Android M에서 테스트와 개발을 수행하는 동안 미리 보기 업데이트가 출시되는 것에 맞춰 <strong>개발 환경을 최신 상태로 유지</strong>할 것을 강력히 권장합니다.
-
-  이 과정을 보다 단순화하기 위해 이미 미리 보기 빌드에 플래시한 기기에는 <strong>OTA(over-the-air) 업데이트</strong>를 제공할 예정이며, 이외에도 수동으로 다운로드하고 플래시할 수 있는 시스템 이미지도 제공할 계획입니다.
-
-
-</p>
-<p class="note">
-  <strong>참고:</strong> 최종 SDK와 시스템 이미지는 OTA로 전달할 수 없습니다. 그 대신 개발자 본인의 테스트 기기에서 <strong>수동으로 플래시</strong>해야 합니다.</strong>
-
-
-</p>
-
-<p>
-  미리 보기 업데이트를 이용할 수 있게 될 때마다 <a href="http://android-developers.blogspot.com/">Android 개발자 블로그</a>, 해당 사이트 및 <a href="http://g.co/dev/AndroidMDevPreview">Android M 개발자 커뮤니티</a>를 통해서 알려드릴 것입니다.
-
-
-</p>
-
-<h2 id="preview_tools">
-  미리 보기 내용
-</h2>
-
-<p>
-  M 개발자 미리 보기에는 기존 앱을 여러 가지 화면 크기, 네트워크 기술, CPU/GPU 칩세트 및 하드웨어 아키텍처에서 테스트하는 데 필요한 모든 것이 포함되어 있습니다.
-
-
-</p>
-
-<h4>
-  SDK 도구
-</h4>
-
-<p>
-  이러한 구성 요소는 <a href="{@docRoot}sdk/installing/adding-packages.html">Android Studio</a>에서 SDK Manager를 통해 다운로드할 수 있습니다.
-</p>
-
-<ul>
-  <li>M 개발자 미리 보기 <strong>SDK 도구</strong>
-  </li>
-
-  <li>M 개발자 미리 보기 <strong>에뮬레이터 시스템 이미지</strong>(32비트 및 64비트)
-
-  </li>
-
-  <li>M 개발자 미리 보기 <strong>Android TV용 에뮬레이터 시스템 이미지</strong>(32비트)
-
-  </li>
-</ul>
-
-<h4>
-  하드웨어 시스템 이미지
-</h4>
-
-<p>
-  Nexus 기기에 대한 다음과 같은 하드웨어 시스템 이미지는 <a href="download.html">다운로드 페이지</a>에서 다운로드할 수 있습니다.
-
-</p>
-
-<ul>
-  <li>
-    <strong>Nexus 5</strong>(GSM/LTE) “hammerhead” 기기 시스템 이미지
-  </li>
-
-  <li>
-    <strong>Nexus 6</strong> “shamu” 기기 시스템 이미지
-  </li>
-
-  <li>
-    <strong>Nexus 9</strong>(Wi-Fi) “volantis” 기기 시스템 이미지
-  </li>
-
-  <li>
-    <strong>Nexus Player</strong>(Android TV) “fugu” 기기 시스템 이미지
-  </li>
-</ul>
-
-<h4>
-  관련 문서 및 샘플 코드
-</h4>
-
-<p>
-  다음과 같은 관련 문서 리소스는 미리 보기에 대해 익히는 데 유용합니다.
-</p>
-
-<ul>
-  <li>
-    <a href="setup-sdk.html">SDK 설정</a>에는 시작하는 데 필요한 단계별 지침이 들어 있습니다.
-
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/testing/guide.html">테스트 가이드</a>와 <a href="behavior-changes.html">동작 변경</a>에서는 테스트해야 할 주요 영역을 알려줍니다.
-  </li>
-
-  <li>새 API 관련 문서 중에서 <a href="api-overview.html">API 개요</a>, 다운로드할 수 있는 <a href="{@docRoot}preview/download.html#docs">API 참조</a>와 자세한 개발자 가이드(<a href="{@docRoot}preview/features/runtime-permissions.html">권한</a>, <a href="{@docRoot}preview/backup/index.html">앱 백업</a> 등 주요 기능에 대한 내용)도 참조하세요.
-
-
-
-
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/samples.html">샘플 코드</a>는 권한과 기타 새로운 기능을 지원하는 방법을 설명합니다.
-
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/support.html#release-notes">릴리스 노트</a>를 보면 M 개발자 미리 보기의 현재 버전에 대해 변경 내용 참고 사항과 차이점 보고서 등 관련 정보를 확인할 수 있습니다.
-
-  </li>
-</ul>
-
-<h4>
-  지원 리소스
-</h4>
-
-<p>
-  M 개발자 미리 보기에서 테스트하고 개발하는 데 유용한 지원 리소스를 소개합니다.
-
-</p>
-
-<ul>
-  <li><a href="https://code.google.com/p/android-developer-preview/">M 개발자 미리 보기 문제 추적기</a>가 여러분의 <strong>기본 피드백 채널</strong>입니다.
-
- 문제 추적기를 통해 버그와 성능 문제를 보고하고 전반적인 피드백을 주시면 됩니다.
- 이를 통해 <a href="https://code.google.com/p/android-developer-preview/wiki/KnownIssues">알려진 문제</a>를 확인하고 해결 방법 단계를 찾아볼 수도 있습니다.
-
-  </li>
-
-  <li><a href="http://g.co/dev/AndroidMDevPreview">Android M 개발자 커뮤니티</a>는 일종의 Google+ 커뮤니티로, 여기에서 여러분은 Android M을 가지고 작업하는 <strong>다른 개발자들과 이야기</strong>를 나눌 수 있습니다. 서로의 의견이나 아이디어를 나누고 Android M 관련 질문에 대한 대답을 찾을 수도 있습니다.
-
-
-
-  </li>
-</ul>
-
-
-<h2 id="preview_apis_and_publishing">
-  대상 지정, 미리 보기 API 및 게시
-</h2>
-
-<p>
-  Android M 개발자 미리 보기는 개발 전용 릴리스이며 <strong>표준 API 레벨이 없습니다</strong>.
- 앱을 테스트하기 위해 호환성 동작에서 옵트아웃하고자 하는 경우(강력히 권장함), M 개발자 미리 보기를 대상으로 지정하면 됩니다. 앱의 <code><a href=
-  "/guide/topics/manifest/uses-sdk-element.html">targetSdkVersion</a></code>을 <code>“MNC”</code>로 지정하세요.
-
-
-
-</p>
-
-<p>
-  Android M 개발자 미리 보기에서는 <strong>미리 보기 API</strong>를 제공합니다. &mdash;이 API는 최종 SDK가 출시될 때까지 공식적인 버전으로 인정되지 않습니다. 최종 SDK 릴리스는 현재 2015년 삼사분기 무렵으로 예정되어 있습니다.
-
- 이는 즉, 시간이 지나면서 <strong>사소한 API 변경</strong>이 있을 것이라는 점을 예상해야 한다는 뜻입니다. 특히 프로그램 초반 몇 주 동안은 유의해야 합니다.
-
- Android M 개발자 미리 보기를 업데이트할 때마다 변경 내용을 요약해서 제공해 드릴 것입니다.
-
-</p>
-
-<p class="note">
-  미리 보기 API는 변경될 수 있지만, 런타임 권한과 절전 기능과 같은 기본 시스템 동작은 안정적이며 지금 바로 테스트 가능한 상태입니다.
-
-
-</p>
-
-<p>
-  게시에 관해서는, Google Play에서는 <strong>M 개발자 미리 보기를 대상으로 삼는 앱의 게시를 방지합니다.</strong>
- Android M 최종 SDK를 이용할 수 있게 되면 공식 Android M API 레벨을 대상으로 지정할 수 있고, 그때 Google Play에 앱을 게시하면 됩니다.
-
- 그때까지는 테스터들에게 Android M을 대상으로 지정한 앱을 배포하고자 하는 경우 이메일이나 본인의 사이트에서 직접 다운로드를 통해 하시면 됩니다.
-
-
-</p>
-
-<h2 id="get_started">
-  시작 방법
-</h2>
-
-<p>
-  앱 테스트를 시작하려면
-</p>
-
-<ol>
-  <li><a href="{@docRoot}preview/api-overview.html">API 개요</a>와 <a href="{@docRoot}preview/behavior-changes.html">동작 변경</a>을 검토해 새로운 내용과 이것이 본인의 앱에 미치는 영향에 대해 알고 있어야 합니다.
-
- 특히, 새로운 <a href="{@docRoot}preview/features/runtime-permissions.html">런타임 권한</a> 모델, 절전 기능과 자동 백업에 대해 숙지하는 것이 좋습니다.
-
-
-  </li>
-
-  <li>환경을 설정할 때에는 <a href="{@docRoot}preview/setup-sdk.html">미리 보기 SDK 설정</a>과 테스트 기기를 구성하는 데 관련된 지침을 따르세요.
-
-
-  </li>
-
-  <li><a href="https://developers.google.com/android/nexus/images">플래시 지침</a>을 따라 최신 M 개발자 미리 보기 시스템 이미지를 Nexus 5, 6, 9 및 Player에 플래시하세요.
-
- 일단 개발 기기를 플래시하고 나면, 미리 보기 업데이트가 OTA(over-the-air) 업데이트를 통해 전달됩니다.</a>
-
-  </li>
-
-  <li><a href="{@docRoot}preview/download.html#docs">M 미리 보기 API 참조</a>와 <a href="{@docRoot}preview/samples.html">M 미리 보기 샘플</a>을 다운로드하면 새로운 API 기능과 앱에서 그러한 기능을 사용하는 방법에 대해 좀 더 자세히 파악할 수 있습니다.
-
-
-
-  </li>
-
-  <li><a href="http://g.co/dev/AndroidMDevPreview">Android M 개발자 커뮤니티</a>에 가입하여 최신 소식을 알아보고, 새 플랫폼으로 작업하는 다른 개발자들과 이야기를 나눠보세요.
-
-
-  </li>
-</ol>
-
-<p>
-  Android M 개발자 미리 보기 프로그램에 참가해 주셔서 대단히 감사합니다!
-</p>
diff --git a/docs/html-intl/intl/ko/preview/samples.jd b/docs/html-intl/intl/ko/preview/samples.jd
deleted file mode 100644
index aeb8fc2..0000000
--- a/docs/html-intl/intl/ko/preview/samples.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=샘플
-page.image=images/cards/samples-new_2x.png
-@jd:body
-
-<p>
-  다음 코드 샘플은 M 개발자 미리 보기를 위해 제공된 것입니다. Android Studio에서 샘플을 다운로드하려면 <b>파일 &gt; 샘플 가져오기</b> 메뉴 옵션을 선택하십시오.
-
-</p>
-
-<p class="note">
-  <strong>참고:</strong> 이러한 다운로드 가능한 프로젝트는 Gradle 및 Android Studio와 함께 쓰도록 만들어진 것입니다.
-
-</p>
-
-
-<h3 id="RuntimePermissions">런타임 권한</h3>
-
-<p>
- Android M은 시스템 권한이 작동하는 방식을 확 바꾸어 놓습니다. 사용자는 설치 중이 아니라 런타임에 권한 요청을 승인해 달라는 요청을 받습니다.
- 이 샘플은 이와 같은 권한을 요청하는 방법을 나타낸 것입니다.
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-RuntimePermissions">GitHub에서 가져오기</a></p>
-
-<h3 id="ConfirmCredentials">확인 자격 증명</h3>
-
-<p>
- 이 샘플은 앱에서 기기 자격 증명을 인증 방법으로 사용하는 법을 나타낸 것입니다.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ConfirmCredential">GitHub에서 가져오기</a>
-</p>
-
-<h3 id="FingerprintDialog">지문 대화창</h3>
-
-<p>
- 이 샘플은 앱에서 사용자를 인증하기 위해 등록된 지문을 인식하는 방법을 나타낸 것입니다.
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-FingerprintDialog">GitHub에서 가져오기</a></p>
-
-<h3 id="AutomaticBackup">앱용 자동 백업</h3>
-
-<p>
- Android M은 앱 설정에서 사용할 수 있는 자동 백업을 도입합니다. 이 샘플은 설정 백업을 관리하기 위해 앱에 필터링 규칙을 추가하는 방법을 나타낸 것입니다.
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-AutoBackupForApps">GitHub에서 가져오기</a></p>
-
-<h3 id="CameraRaw">카메라 2 RAW</h3>
-
-<p>
-  <code>Camera2</code> API를 사용해 RAW 카메라 버퍼를 캡처하고 이를 <code>DNG</code> 파일로 저장하는 법을 나타낸 것입니다.
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-Camera2Raw">GitHub에서 가져오기</a></p>
-
-<h3 id="ActiveNotification">활성 알림</h3>
-
-<p>
-  이 샘플은 <a href="{@docRoot}reference/android/app/NotificationManager.html"><code>NotificationManager</code></a>를 사용하여 앱이 현재 표시하고 있는 알림 수가 몇 개인지 알게 되는 원리를 나타낸 것입니다.
-
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ActiveNotifications">GitHub에서 가져오기</a></p>
diff --git a/docs/html-intl/intl/ko/preview/setup-sdk.jd b/docs/html-intl/intl/ko/preview/setup-sdk.jd
deleted file mode 100644
index cf3084b..0000000
--- a/docs/html-intl/intl/ko/preview/setup-sdk.jd
+++ /dev/null
@@ -1,207 +0,0 @@
-page.title=미리 보기 SDK 설정하기
-page.image=images/cards/card-set-up_16-9_2x.png
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>이 문서의 내용</h2>
-      <ol>
-        <li><a href="#get-as13">Android Studio 1.3 가져오기</a></li>
-        <li><a href="#get-sdk">미리 보기 SDK 가져오기</a></li>
-        <li><a href="#create-update">프로젝트 생성 또는 업데이트</a></li>
-        <li><a href="#setup-test">테스트를 위해 설정</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>M 개발자 미리 보기 SDK는 Android SDK Manager에서 이용할 수 있습니다. 이 문서에서는 독자 여러분이 Android 앱 개발, 예를 들어 Android SDK Manager 사용이나 프로젝트 생성 등에 익숙하다고 가정합니다.
-
- Android를 처음 사용하시는 경우, 우선 <a href="{@docRoot}training/basics/firstapp/index.html">첫 앱 구축하기</a> 학습 단원부터 참조하십시오.</a>
-
-</p>
-
-<h2 id="get-as13">Android Studio 1.3 가져오기</h2>
-
-<p>개발자 미리 보기는 역시 미리 보기 상태인 Android Studio 1.3과 함께 사용하는 것이 가장 좋습니다.
- Android Studio 1.3의 미리 보기 버전을 설치하여 미리 보기 SDK 작업에 사용하는 것을 적극 추천합니다.
-</p>
-
-<p class="caution"><strong>주의:</strong> Android Studio 1.3의 카나리아 미리 보기는 아직도 활발히 개발 중인 상태입니다.
- 기본 개발 머신을 사용하여 개발자 미리 보기를 테스트하는 경우, 두 번째 Android Studio 설치를 하나 더 생성해 테스트에 사용하면 됩니다.
-
-</p>
-
-<p>Android Studio 1.3 미리 보기를 설치하려면 다음과 같이 하면 됩니다.</p>
-
-<ol>
-  <li><a href="{@docRoot}tools/studio/index.html">Android Studio</a>를 다운로드하여 시작합니다.
-
-  </li>
-
-  <li><strong>설정</strong> 창을 엽니다(또는 Windows의 경우 <strong>파일 &gt; 설정</strong>을 선택해도 됩니다).
- <strong>외관 및 동작 &gt; 시스템 &gt; 설정 &gt; 업데이트</strong> 패널을 선택하십시오.
-
-
-
-    <p class="aside">OSX의 경우, <strong>외관 및 동작</strong> 패널은 Android Studio의 <strong>기본 설정</strong> 창에 있습니다.
-
-</p>
-  </li>
-
-  <li> <strong>업데이트</strong> 패널에서 <strong>다음에 대해 업데이트 자동 확인:
- Canary 채널</strong>이라는 선택 사항을 선택합니다.
-  </li>
-
-  <li><strong>업데이트</strong> 패널에서 <strong>지금 확인</strong>을 선택하여 최신 카나리아 빌드를 확인합니다.
- 메시지가 표시되면 빌드를 다운로드하고 설치하십시오.
-
-  </li>
-</ol>
-
-<h2 id="get-sdk">미리 보기 SDK 가져오기</h2>
-
-<p>개발 환경에 미리 보기 SDK 구성 요소를 추가하려면 다음과 같이 하면 됩니다.</p>
-
-<ol>
-  <li>Android Studio 1.3 미리 보기를 시작합니다.
-  </li>
-
-  <li><strong>설정</strong> 창을 엽니다(또는 Windows의 경우 <strong>파일 &gt; 설정</strong>을 선택해도 됩니다).
- <strong>외관 및 동작 &gt; 시스템 &gt; 설정 &gt; 업데이트</strong> 패널을 선택하십시오.
-
-
-
-    <p class="aside">OSX의 경우, <strong>외관 및 동작</strong> 패널은 Android Studio의 <strong>기본 설정</strong> 창에 있습니다.
-
-</p>
-  </li>
-
-  <li><strong>업데이트</strong> 패널에서 <strong>다음에 대해 업데이트 자동 확인:
- Canary 채널</strong> 및 <strong>Android SDK에 대한 업데이트 자동 확인:
- 미리 보기 채널</strong> 선택 사항을 선택합니다.
-  </li>
-
-  <li><strong>Android SDK Manager</strong>를 시작합니다 (Android Studio 1.3에서는 SDK Manager가 독립 실행형 애플리케이션이 아니고 Android Studio에 통합되어 있습니다).
-
-
-  </li>
-
-  <li><strong>플랫폼</strong> 섹션 아래에서 <strong>Android MNC 미리 보기</strong>를 선택하십시오.
-
-  </li>
-
-  <li><strong>도구</strong> 섹션에서 최신 Android <strong>SDK 도구</strong>, <strong>플랫폼-도구</strong>, 및 <strong>빌드-도구</strong>를 선택합니다.
-
-
-  </li>
-
-  <li><strong>패키지 설치</strong>를 클릭하고 패키지 전체에 대해 라이선스 사용 계약을 수락합니다.
-
-  </li>
-
-  <li>M 개발자 미리 보기가 설치되었는지 확인하려면 <strong>설정</strong> 창을 열고 <strong>외관 및 동작 &gt; 시스템 설정 &gt; Android SDK</strong> 패널을 선택하면 됩니다.
-
-</li>
-
-  <li><strong>Android SDK</strong> 패널에서 <strong>SDK 플랫폼</strong> 탭을 선택합니다.
- <strong>Android MNC 미리 보기</strong>가 <em>설치됨</em> 아래 목록으로 나열되어 있는 것이 정상입니다.
- 또한, <strong>SDK 도구</strong> 탭을 열어 최신 도구가 설치되었는지 확인하십시오.
-
-
-  </li>
-</ol>
-<p>이러한 단계를 완료하고 나면 미리 보기 구성 요소를 본인의 개발 환경에서 이용할 수 있습니다.
- </p>
-
-
-<h2 id="create-update">프로젝트 생성 또는 업데이트</h2>
-
-<p>
-  미리 보기 API를 사용하려면 개발 프로젝트를 하나 생성하거나 업데이트하여 미리 보기 구성 요소를 사용해야 합니다.
-
-</p>
-
-
-<h3 id="create">새 프로젝트 생성하기</h3>
-
-<p>
-  미리 보기로 프로젝트를 생성하려면 Android Studio를 사용할 것을 권장합니다. <a href="{@docRoot}sdk/installing/create-project.html">프로젝트 생성하기</a>에 설명되어 있는 단계를 쭉 따라가다 보면 프로젝트 마법사의 <em>폼 팩터</em> 화면에 도달합니다.
-
- 그러면 다음과 같은 단계를 따라 미리 보기에 맞게 구성된 프로젝트를 생성하면 됩니다.
-
-</p>
-
-<ul>
-  <li><strong>전화기 및 태블릿</strong>을 확인합니다.</li>
-  <li><strong>MNC: Android M(미리 보기)</strong>를 선택합니다. 이것은 <strong>최소 SDK</strong> 안에 있습니다.
-</li>
-</ul>
-
-
-<h3 id="update">기존 프로젝트 업데이트</h3>
-
-<p>
-  기존 프로젝트의 경우, 미리 보기 API를 활성화하려면 프로젝트 구성을 수정해야 합니다. 개발 환경에서 본인의 모듈에 대한 <code>build.gradle</code> 파일을 열고 다음의 값을 다음과 같이 설정합니다.
-
-
-</p>
-
-<ul>
-  <li><code>compileSdkVersion</code>을 <code>'android-MNC'</code>로 설정</li>
-  <li><code>minSdkVersion</code>을 <code>'MNC'</code>로 설정</li>
-  <li><code>targetSdkVersion</code>을 <code>'MNC'</code>로 설정</li>
-</ul>
-
-
-<h2 id="setup-test">테스트를 위해 설정</h2>
-
-<p>
-  앱을 미리 보기로 테스트하려면 플랫폼의 미리 보기 버전으로 구성한 기기 또는 가상 기기가 있어야 합니다.
- 호환되는 기기를 가지고 있으면 미리 보기 플랫폼을 설치하여 테스트에 쓰면 됩니다.
- 그렇지 않은 경우, 가상 기기를 구성하여 테스트에 사용할 수도 있습니다.
-</p>
-
-<h3 id="setup-device">물리적 기기 설정</h3>
-
-<p>
-  Nexus 5, Nexus 6, Nexus 9 또는 Android TV를 가지고 있는 경우, 이들 기기에 미리 보기 시스템 이미지를 설치하여 앱을 테스트하는 데 쓸 수 있습니다. 플랫폼의 미리 보기 버전으로 가상 기기를 설정하려면 Android Studio 내에서 해당 버전을 다운로드하면 됩니다. 이때 Android 가상 기기 관리자 도구를 사용하십시오.
-
-
-
-</p>
-
-<p class="caution">
-  <strong>중요:</strong> 기기에 미리 보기 이미지를 설치하면 <em>기기에서 모든 데이터를 제거하므로</em>, 미리 보기 이미지를 설치하기에 앞서 데이터를 모두 백업하는 것이 좋습니다.
-
-</p>
-
-<h3 id="setupAVD">가상 기기 설정</h3>
-
-<p>
-  플랫폼의 미리 보기 버전으로 가상 기기를 설정하려면 Android Studio 내에서 해당 버전을 다운로드하면 됩니다. 이때 Android 가상 기기 관리자 도구를 사용하십시오.
-
-</p>
-
-<p>AVD Manager로 AVD를 생성하려면 다음과 같이 하면 됩니다.</p>
-
-<ol>
-  <li><a href="{@docRoot}preview/setup-sdk.html">미리 보기 SDK 설정하기</a>에 설명된 바에 따라 개발 환경에 미리 보기 SDK를 설치합니다.
-
-</li>
-  <li><a href="{@docRoot}tools/devices/managing-avds.html">AVD Manager로 AVD 관리하기</a>에 나온 단계를 따르십시오.
-
- 다음과 같은 설정을 사용하면 됩니다.
-    <ul>
-      <li><strong>기기:</strong> Nexus 5, Nexus 6, Nexus 9 또는 Android TV</li>
-      <li><strong>대상:</strong>
-       Android M(미리 보기) - API 레벨 M</li>
-      <li><strong>ABI:</strong> x86</li>
-    </ul>
-  </li>
-</ol>
-
-<p>
-  테스트를 위해 가상 기기를 생성하는 데 대한 자세한 정보는 <a href="{@docRoot}tools/devices/index.html">가상 기기 관리하기</a>를 참조하십시오.
-</p>
diff --git a/docs/html-intl/intl/ko/preview/testing/guide.jd b/docs/html-intl/intl/ko/preview/testing/guide.jd
deleted file mode 100644
index 7f17071..0000000
--- a/docs/html-intl/intl/ko/preview/testing/guide.jd
+++ /dev/null
@@ -1,187 +0,0 @@
-page.title=테스트 가이드
-page.image=images/cards/card-build_16x9_2x.png
-page.keywords=previewresources,androidm,testing,permissions
-
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>이 문서의 내용</h2>
-      <ol>
-        <li><a href="#runtime-permissions">권한 테스트</a></li>
-        <li><a href="#doze-standby">Doze 및 앱 대기 모드 테스트</a></li>
-        <li><a href="#ids">자동 백업 및 기기 식별자</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Android M 개발자 미리 보기에서는 앱이 플랫폼의 다음 버전에서 제대로 작동할 것인지 확인해볼 기회를 부여합니다.
- 이 미리 보기에는 앱에 영향을 미칠 수 있는 수많은 API와 동작 변경 내용이 포함되어 있습니다.이 내용은 <a href="{@docRoot}preview/api-overview.html">API 개요</a>와 <a href="{@docRoot}preview/behavior-changes.html">동작 변경</a>에 설명해 놓았습니다.
-
- 미리 보기로 앱을 테스트할 때에는 사용자에게 좋은 환경을 제공하기 위해 개발자 여러분이 꼭 주안점을 두어야 할 몇 가지 특정한 시스템 변경 내용이 있습니다.
-
-
-</p>
-
-<p>
-  이 가이드는 앱에서 테스트할 미리 보기 기능은 어떤 것이고, 테스트 방법은 어떤지에 대해 설명한 것입니다. 이와 같은 특정 미리 보기 기능을 먼저 테스트하는 것이 좋습니다. 이들은 앱의 동작에 미치는 영향이 클 가능성이 높기 때문입니다.
-
-
-</p>
-
-<ul>
-  <li><a href="#runtime-permissions">권한</a>
-  </li>
-  <li><a href="#doze-standby">Doze 및 앱 대기 모드</a>
-  </li>
-  <li><a href="#ids">자동 백업 및 기기 식별자</a></li>
-</ul>
-
-<p>
-  테스트용 미리 보기 시스템 이미지로 기기 또는 가상 기기를 설정하는 방법에 대한 자세한 정보는 <a href="{@docRoot}preview/setup-sdk.html">미리 보기 SDK 설정하기</a>를 참조하십시오.
-
-</p>
-
-
-<h2 id="runtime-permissions">권한 테스트</h2>
-
-<p>
-  새로운 <a href="{@docRoot}preview/features/runtime-permissions.html">권한</a> 모델은 사용자가 여러분의 앱에 권한을 할당하는 방법을 바꿔 놓습니다.
- 설치 절차 중에 모든 권한을 허용하는 것이 아니라, 앱이 런타임에 사용자에게 각각의 권한을 요청해야 합니다.
-
- 사용자 입장에서는 이러한 동작으로 각 앱의 액티비티에 대해 더 세분화된 제어권을 행사할 수 있을 뿐만 아니라 이 앱이 어째서 특정한 권한을 요청하고 있는 것인지 맥락을 더 잘 이해할 수 있게 되기도 합니다.
- 사용자는 언제든 앱에 개별적으로 권한을 허용할 수 있고, 이를 취소할 수도 있습니다.
- 미리 보기의 이러한 기능은 앱의 동작에 영향을 미칠 가능성이 가장 높고, 앱의 몇 가지 기능이 작동하지 않도록 막거나 저하된 상태로 작동하게 할 수도 있습니다.
-
-
-</p>
-
-<p class="caution">
-  이 변경 내용은 새 플랫폼에서 실행되는 모든 앱에 영향을 비치며, 새 플랫폼 버전을 대상으로 하지 않는 앱도 예외가 아닙니다.
- 레거시 앱에 대해 플랫폼이 제한된 호환성 동작을 제공하기는 하지만, 지금 바로 새 권한 모델로 앱의 마이그레이션 계획을 시작하는 편이 좋습니다. 플랫폼이 공식적으로 출시될 때에 맞춰 앱의 업데이트된 버전을 게시하는 것을 목표로 하십시오.
-
-
-</p>
-
-
-<h3 id="permission-test-tips">테스트 팁</h3>
-
-<p>
-  다음은 새 권한 동작에 대해 앱 테스트를 계획하고 실행하는 데 유용한 몇 가지 테스트 팁입니다.
-
-</p>
-
-<ul>
-  <li>앱의 현재 권한과 관련된 코드 경로를 확인합니다.</li>
-  <li>권한 보호된 서비스 및 데이터 전반에 걸친 사용자 흐름을 테스트합니다.</li>
-  <li>허용된/취소된 권한을 여러 가지로 조합하여 테스트합니다.</li>
-  <li>명령줄에서 권한을 관리할 때 {@code adb} 도구를 사용합니다.
-    <ul>
-      <li>권한과 상태를 그룹별로 목록으로 나열합니다.
-        <pre>adb shell pm list permissions -d -g</pre>
-      </li>
-      <li>하나 이상의 권한을 다음과 같은 구문을 사용하여 허용하거나 취소합니다.<br>
-        <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
-      </li>
-    </ul>
-  </li>
-  <li>권한을 사용하는 서비스에 대해 앱을 분석해봅니다.</li>
-</ul>
-
-<h3 id="permission-test-strategy">테스트 전략</h3>
-
-<p>
-  권한을 변경하면 앱의 구조와 디자인은 물론 사용자 환경과, 개발자가 사용자에게 제공하는 흐름에도 영향을 미칩니다.
- 앱의 현재 권한 사용 내용을 평가한 다음 제공하고자 하는 새로운 흐름을 계획하기 시작해야 합니다.
- 플랫폼의 공식 릴리스에서 호환성 동작을 제공할 예정이지만, 이와 같은 동작에만 의존하지 말고 앱 업데이트를 계획하는 것이 좋습니다.
-
-
-</p>
-
-<p>
-  앱이 실제로 필요로 하고 사용하는 권한을 확인한 다음, 권한 보호된 서비스를 사용하는 여러 가지 코드 경로를 찾습니다.
- 이렇게 하려면 새 플랫폼에서 여러 가지로 조합한 테스트를 거치고 코드 분석을 통해야 합니다.
- 테스트에서는 런타임 권한에 옵트인하는 것에 주안점을 두는 것이 좋습니다. 앱의 {@code targetSdkVersion}을 미리 보기 버전으로 변경하세요.
- 자세한 정보는 <a href="{@docRoot}preview/setup-sdk.html#">미리 보기 SDK 설정하기</a>를 참조하십시오.
-
-</p>
-
-<p>
-  불러내고 추가한 여러 가지 권한들을 다양하게 조합해서 테스트해보면 권한에 좌우되는 사용자 흐름을 강조할 수 있습니다.
- 종속성이 분명하지 않거나 논리적인 경우, 리팩터링을 고려해 보거나 해당 흐름을 구분하여 종속성을 제거, 또는 해당 권한이 왜 필요한지 분명히 하는 방안을 고려해야 합니다.
-
-
-</p>
-
-<p>
-  런타임 권한의 동작, 테스트 및 모범 사례에 대한 자세한 정보는 <a href="{@docRoot}preview/features/runtime-permissions.html">권한</a> 개발자 미리 보기 페이지를 참조하십시오.
-
-
-</p>
-
-
-<h2 id="doze-standby">Doze 및 앱 대기 모드 테스트</h2>
-
-<p>
-  Doze 및 앱 대기 모드의 절전 기능은 기기가 유휴 상태에 있을 때 또는 사용자가 앱에 초점을 맞추고 있지 않을 때 앱이 수행할 수 있는 배경 처리의 양을 제한합니다.
- 시스템이 앱에 부과할 수 있는 제한 사항에는 네트워크 액세스를 제한하거나 없애기, 배경 작업을 일시 중지시키기, 알림 일시 중지, 절전 모드 해제 및 알람 요청 무시 등이 포함됩니다.
-
- 이러한 절전 기능에 앱이 적절히 동작하도록 확실히 해 두려면 이와 같은 저전력 상태를 시뮬레이트하여 앱을 테스트해보아야 합니다.
-
-
-</p>
-
-<h4 id="doze">앱에서 Doze 테스트하기</h4>
-
-<p>앱으로 Doze 기능을 테스트하려면 다음과 같이 하면 됩니다.</p>
-
-<ol>
-<li>하드웨어 기기 또는 가상 기기를 M 미리 보기 시스템 이미지로 구성합니다.</li>
-<li>기기를 개발 머신에 연결시키고 앱을 설치합니다.</li>
-<li>앱을 실행시킨 다음 활성 상태로 그냥 둡니다.</li>
-<li>기기가 Doze 모드에 들어가는 것을 시뮬레이트하려면 다음 명령을 실행하십시오.
-
-<pre>
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-
-  </li>
-  <li>기기가 다시 활성화되면 앱이 어떻게 동작하는지 살펴보십시오. 기기가 Doze 모드를 종료할 때 정상적으로 복구되는지 확인해야 합니다.
-</li>
-</ol>
-
-
-<h4 id="standby">앱에서 앱 대기 모드 테스트하기</h4>
-
-<p>앱으로 앱 대기 모드를 테스트하려면 다음과 같이 하면 됩니다.</p>
-
-<ol>
-  <li>하드웨어 기기 또는 가상 기기를 M 미리 보기 시스템 이미지로 구성합니다.</li>
-  <li>기기를 개발 머신에 연결시키고 앱을 설치합니다.</li>
-  <li>앱을 실행시킨 다음 활성 상태로 그냥 둡니다.</li>
-  <li>앱이 대기 모드에 들어가는 것을 시뮬레이트하려면 다음 명령을 실행하십시오.
-
-<pre>
-$ adb shell am broadcast -a android.os.action.DISCHARGING
-$ adb shell am set-idle &lt;packageName&gt; true
-</pre>
-
-  </li>
-  <li>앱이 절전 모드 해제되는 상태를 시뮬레이트하려면 다음 명령을 사용하면 됩니다.
-    <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
-  </li>
-  <li>앱이 절전 모드에서 해제되면서 어떻게 동작하는지 살펴보십시오. 대기 모드에서 정상적으로 복구되는지 확인해야 합니다.
- 특히, 앱의 알림과 배경 작업이 계속 예상했던 대로 기능하는지 확인해야 합니다.
-</li>
-</ol>
-
-<h2 id="ids">앱용 자동 백업 및 기기별 식별자</h2>
-
-<p>앱이 내부 저장소에서 각 기기에 따라 다른 식별자를 유지하는 경우(예: Google Cloud 메시지 등록 ID), 모범 사례를 따라 저장소 위치를 자동 백업에서 배제해야 합니다. 이 내용은 <a href="{@docRoot}preview/backup/index.html">앱용 자동 백업</a>에 설명되어 있습니다.
-
-
-
- </p>
diff --git a/docs/html-intl/intl/ko/preview/testing/performance.jd b/docs/html-intl/intl/ko/preview/testing/performance.jd
deleted file mode 100644
index ce2bf27..0000000
--- a/docs/html-intl/intl/ko/preview/testing/performance.jd
+++ /dev/null
@@ -1,656 +0,0 @@
-page.title=표시 성능 테스트
-page.image=images/cards/card-test-performance_2x.png
-page.keywords=성능, FPS, 도구
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>이 문서의 내용</h2>
-      <ol>
-        <li><a href="#measure">UI 성능 측정</a>
-          <ul>
-            <li><a href="#aggregate">프레임 상태 집계</a></li>
-            <li><a href="#timing-info">정확한 프레임 타이밍 정보</a></li>
-            <li><a href="#timing-dump">단순한 프레임 타이밍 덤프</a></li>
-            <li><a href="#collection-window">상태 수집 창 제어</a></li>
-            <li><a href="#diagnose">성능 저하 진단</a></li>
-            <li><a href="#resources">추가 리소스</a></li>
-          </ul>
-        </li>
-        <li><a href="#automate">UI 성능 테스트 자동화</a>
-          <ul>
-            <li><a href="#ui-tests">UI 테스트 설정</a></li>
-            <li><a href="#automated-tests">자동화된 UI 테스트 설정</a></li>
-            <li><a href="#triage">관측된 문제 심사 및 수정</a></li>
-          </ul>
-        </li>
-      </ol>
-  </div>
-</div>
-
-
-<p>
-  사용자 인터페이스(UI) 성능 테스트를 수행하면 앱이 기능적인 요건에 부합할 뿐만 아니라 사용자가 앱과 부드럽고 매끈하게 상호작용하며 초당 60 프레임의 일관된 속도로(<a href="https://www.youtube.com/watch?v=CaMTIgxCSqU&amp;index=25&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">왜 60fps일까요?</a>) 생략되거나 지연된 프레임, 또는 전문 용어로 <em>jank</em>(프레임이 넘어가는 현상)가 없이 실행되게 보장할 수 있습니다.
-
-
- 이 문서에서는 UI 성능을 측정하는 데 사용할 수 있는 몇 가지 도구를 설명하고, 테스트 방법에 UI 성능 측정법을 통합하는 데 쓰이는 접근법을 보여드립니다.
-
-
-</p>
-
-
-<h2 id="measure">UI 성능 측정</h2>
-
-<p>
-  성능을 개선하려면 우선 시스템의 성능을 측정할 수 있는 능력부터 갖추고, 그 다음에 파이프라인의 여러 부분에서 나올 수 있는 다양한 문제를 진단하고 식별해야 합니다.
-
-
-</p>
-
-<p>
-  <em><a href="https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></em>는 Android 도구의 일종으로 기기에서 실행되면서 시스템 서비스의 상태에 대한 흥미로운 정보를 덤프하는 역할을 합니다.
-
- <em>gfxinfo</em> 명령을 dumpsys에 전달하면 기록 단계 중에 발생하는 애니메이션 프레임과 관련된 성능 정보가 담긴 logcat으로 출력을 제공합니다.
-
-
-</p>
-
-<pre>
-&gt; adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt;
-</pre>
-
-<p>
-  이 명령은 프레임 타이밍 데이터의 서로 다른 변형을 여러 개 작성할 수 있습니다.
-</p>
-
-<h3 id="aggregate">프레임 상태 집계</h3>
-
-<p>
-  M 미리 보기에서 이 명령은 프레임 데이터의 집계된 분석을 logcat으로 출력합니다. 이는 프로세스의 전 수명을 통틀어 수집한 것입니다.
- 예를 들면 다음과 같습니다.
-</p>
-
-<pre class="noprettyprint">
-Stats since: 752958278148ns
-Total frames rendered: 82189
-Janky frames: 35335 (42.99%)
-90th percentile: 34ms
-95th percentile: 42ms
-99th percentile: 69ms
-Number Missed Vsync: 4706
-Number High input latency: 142
-Number Slow UI thread: 17270
-Number Slow bitmap uploads: 1542
-Number Slow draw: 23342
-</pre>
-
-<p>
-  이와 같은 높은 레벨의 통계는 레벨이 높을 때 앱의 렌더링 성능을 나타내며, 이외에도 여러 프레임에 걸친 앱의 안정성을 나타내기도 합니다.
-
-</p>
-
-
-<h3 id="timing-info">정확한 프레임 타이밍 정보</h3>
-
-<p>
-  M 미리 보기에서는 gfxinfo에 사용할 수 있는 새 명령어를 도입했습니다. 바로 <em>framestats</em>로, 이는 최근 프레임으로부터 극히 상세한 프레임 타이밍 정보를 제공하여 문제를 더욱 정확하게 추적하고 디버그할 수 있습니다.
-
-
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats
-</pre>
-
-<p>
-  이 명령은 프레임 타이밍 정보를 나노초 타임스탬프로 출력하며, 그 출처는 앱이 만든 마지막 120개의 프레임입니다. 아래는 adb dumpsys gfxinfo
-  &lt;PACKAGE_NAME&gt; framestats에서 가져온 원시 출력을 예로 나타낸 것입니다.
-
-</p>
-
-<pre class="noprettyprint">
-0,49762224585003,49762241251670,9223372036854775807,0,49762257627204,49762257646058,49762257969704,49762258002100,49762265541631,49762273951162,49762300914808,49762303675954,
-0,49762445152142,49762445152142,9223372036854775807,0,49762446678818,49762446705589,49762447268818,49762447388037,49762453551527,49762457134131,49762474889027,49762476150120,
-0,49762462118845,49762462118845,9223372036854775807,0,49762462595381,49762462619287,49762462919964,49762462968454,49762476194547,49762476483454,49762480214964,49762480911527,
-0,49762479085548,49762479085548,9223372036854775807,0,49762480066370,49762480099339,49762481013089,49762481085850,49762482232152,49762482478350,49762485657620,49762486116683,
-</pre>
-
-<p>
-  이 출력의 각 줄은 앱이 만든 프레임을 나타냅니다. 각 줄에는 정해진 숫자의 열이 있으며 이 열은 프레임 제작 파이프라인의 각 단계에서 소요한 시간을 나타냅니다.
- 다음 섹션에서는 각 열이 무엇을 나타내는지 등, 이 형식에 대해 좀 더 자세히 다뤄보겠습니다.
-
-</p>
-
-
-<h4 id="fs-data-format">Framestats 데이터 형식</h4>
-
-<p>
-  데이터 블록은 CSV 형식으로 출력되기 때문에 이를 개발자가 선택한 스프레드시트 도구에 붙여넣거나 수집해서 스크립트로 구문 분석하기 등의 작업이 매우 단도직입적입니다.
- 다음 표는 출력 데이터 열의 형식을 설명한 것입니다.
- 타임스탬프는 모두 나노초 단위입니다.
-</p>
-
-<ul>
-  <li>플래그
-    <ul>
-      <li>플래그 열에 '0'이 기재되어 있는 행의 경우, 총 프레임 시간을 계산하려면 FRAME_COMPLETED 열에서 INTENDED_VSYNC 열을 빼면 됩니다.
-
-      </li>
-
-      <li>이것이 0이 아니면 그 행은 무시해야 합니다. 해당 프레임이 정상 성능의 이상값인 것으로 판별되었기 때문이며, 여기에서는 레이아웃과 그리기에 16ms 이상이 걸릴 것으로 예상됩니다.
-
- 다음은 이런 일이 일어나는 몇 가지 이유입니다.
-        <ul>
-          <li>창 레이아웃이 변경되었습니다(애플리케이션의 첫 프레임 또는 한 회 회전 이후).
-
-          </li>
-
-          <li>프레임을 건너뛰었을 가능성도 있습니다. 이 경우 몇몇 값에 가비지 타임스탬프가 있을 것입니다.
- 프레임을 건너뛰는 것은 해당 프레임이 60fps를 초과하는 경우 또는 화상에 나타난 것 중 아무 것도 변한 것이 없을 때 등이며, 이는 반드시 앱에 문제가 있음을 나타내는 징후는 아닙니다.
-
-
-          </li>
-        </ul>
-      </li>
-    </ul>
-  </li>
-
-  <li>INTENDED_VSYNC
-    <ul>
-      <li>프레임에 대한 원래 의도한 시작 지점입니다. 이 값이 VSYNC와 다른 경우, UI 스레드에서 발생한 작업이 있어 이것이 vsync 신호에 적절한 시간 내에 응답하지 못하도록 한 것입니다.
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>VSYNC
-    <ul>
-      <li>Vsync 수신기 전체와 프레임에 대한 드로잉에서 사용된 시간 값입니다.(Choreographer 프레임 콜백, 애니메이션, View.getDrawingTime() 등)
-
-      </li>
-
-      <li>VSYNC와 이것이 애플리케이션에 미치는 영향에 대해 더 자세히 알아보려면 <a href="https://www.youtube.com/watch?v=1iaHxmfZGGc&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=23">VSYNC 이해하기</a> 비디오를 확인하십시오.
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>OLDEST_INPUT_EVENT
-    <ul>
-      <li>입력 대기열에서 가장 오래된 입력 이벤트의 타임스탬프 또는 프레임에 대한 입력 이벤트가 없는 경우 Long.MAX_VALUE입니다.
-
-      </li>
-
-      <li>이 값은 기본적으로 플랫폼 작업을 위해 의도된 것이며 앱 개발자에게는 한정된 정도로 유용한 값입니다.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>NEWEST_INPUT_EVENT
-    <ul>
-      <li>입력 대기열에서 가장 최근 입력 이벤트의 타임스탬프 또는 프레임에 대한 입력 이벤트가 없는 경우 Long.MAX_VALUE입니다.
-
-      </li>
-
-      <li>이 값은 기본적으로 플랫폼 작업을 위해 의도된 것이며 앱 개발자에게는 한정된 정도로 유용한 값입니다.
-
-      </li>
-
-      <li>다만 앱이 얼마나 긴 대기 시간을 추가하고 있는지를 대략적으로 알아볼 수는 있습니다. (FRAME_COMPLETED - NEWEST_INPUT_EVENT)를 살펴보면 됩니다.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>HANDLE_INPUT_START
-    <ul>
-      <li>입력 이벤트가 애플리케이션에 발송된 시점의 타임스탬프입니다.
-      </li>
-
-      <li>이것과 ANIMATION_START 사이의 시간을 보면 애플리케이션이 입력 이벤트를 처리하느라 보낸 시간을 측정할 수 있습니다.
-
-      </li>
-
-      <li>이 숫자가 크면(2ms 초과) 이는 앱이 입력 이벤트를 처리하느라 보기 드물게 긴 시간을 소요한다는 뜻입니다. 예를 들어 View.onTouchEvent()는 이 작업을 최적화해야 하거나 다른 스레드로 오프로드해야 한다는 뜻일 수 있습니다.
-
- 다른 시나리오도 몇 가지 있을 수 있다는 점을 유의하십시오. 예를 들어 새 액티비티를 시작하는 클릭 이벤트나 그와 비슷한 것의 경우, 이 숫자가 클 것을 예상하고 받아들일 수 있습니다.
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>ANIMATION_START
-    <ul>
-      <li>Choreographer에 등록된 애니메이션이 실행된 시점의 타임스탬프입니다.
-      </li>
-
-      <li>이것과 PERFORM_TRANVERSALS_START 사이의 시간을 보면 실행 중인 애니메니터 전체((ObjectAnimator, ViewPropertyAnimator 및 Transitions가 보편적인 것들임)를 평가하는 데 시간이 얼마나 걸렸는지 판단할 수 있습니다.
-
-
-      </li>
-
-      <li>이 숫자가 크면(2ms 초과), 앱이 사용자 지정 애니메이터를 작성한 적이 있는지 확인하십시오. 아니면 ObjectAnimators가 애니메이션 효과를 실행하는 필드가 어느 것인지 알아보고 이들이 애니메이션에 대해 적절한지 확인해야 합니다.
-
-
-      </li>
-
-      <li>Choreographer에 대한 자세한 정보는 <a href="https://developers.google.com/events/io/sessions/325418001">버터거나 나쁘거나(For Butter or Worse)</a> 비디오를 참조하십시오.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>PERFORM_TRAVERSALS_START
-    <ul>
-      <li>이 값에서 DRAW_START를 빼면 레이아웃과 측정 단계를 완료하는 데 얼마나 걸렸는지 추출할 수 있습니다(스크롤 또는 애니메이션 중에는 이 값이 0에 가까울 것이라는 예상이 나와야 한다는 점을 유의하십시오).
-
-
-      </li>
-
-      <li>렌더링 파이프라인의 측정 및 레이아웃 단계에 대한 자세한 정보는 <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">무효화, 레이아웃 및 성능</a> 비디오를 참조하십시오.
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>DRAW_START
-    <ul>
-      <li>PerformTraversals의 그리기 단계가 시작된 시점입니다. 이것은 무효화된 모든 보기의 표시 목록을 기록하는 시작 지점입니다.
-
-      </li>
-
-      <li>이것과 SYNC_START 사이의 시간이 트리의 모든 무효화된 보기에서 View.draw()를 호출하는 데 걸린 시간입니다.
-
-      </li>
-
-      <li>드로잉 모델에 대한 자세한 정보는 <a href="{@docRoot}guide/topics/graphics/hardware-accel.html#hardware-model">하드웨어 가속</a> 또는 <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">무효화, 레이아웃 및 성능</a> 비디오를 참조하십시오.
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>SYNC_START
-    <ul>
-      <li>드로잉의 동기화 단계가 시작된 시점입니다.
-      </li>
-
-      <li>이것과 ISSUE_DRAW_COMMANDS_START 사이의 시간이 상당히 큰 값인 경우(0.4ms 초과 또는 그와 유사), 일반적으로 새로운 비트맵이 많이 그려져서 이를 GPU에 업로드해야 한다는 뜻입니다.
-
-
-      </li>
-
-      <li>동기화 단계에 대해 더 자세히 알아보려면 <a href="https://www.youtube.com/watch?v=VzYkVL1n4M8&amp;index=24&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">프로필 GPU 렌더링</a> 비디오를 참조하십시오.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>ISSUE_DRAW_COMMANDS_START
-    <ul>
-      <li>하드웨어 렌더러가 GPU에 드로잉 명령을 발행하기 시작한 시점입니다.
-      </li>
-
-      <li>이것과 FRAME_COMPLETED 사이의 시간을 보면 앱이 얼마나 많은 GPU 작업을 생성하고 있는지 대략적으로 알 수 있습니다.
- Overdraw가 너무 많거나 렌더링 효과가 비효율적인 것 등의 문제가 여기에 나타납니다.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>SWAP_BUFFERS
-    <ul>
-      <li>EglSwapBuffers가 호출된 시점으로, 플랫폼 작업 외에는 비교적 흥미롭지 않습니다.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>FRAME_COMPLETED
-    <ul>
-      <li>모두 끝났습니다! 이 프레임에 작업하느라 소요된 총 시간을 계산하려면 FRAME_COMPLETED - INTENDED_VSYNC를 수행하면 됩니다.
-
-      </li>
-    </ul>
-  </li>
-
-</ul>
-
-<p>
-  이 데이터는 여러 가지 방법으로 사용할 수 있습니다. 한 가지 단순하면서도 유용한 시각화는 프레임 시간의 분배(FRAME_COMPLETED - INTENDED_VSYNC)를 여러 가지 대기 시간 버킷에서 표시한 히스토그램을 예로 들 수 있습니다. 아래 그림을 참조하십시오.
-
- 이 그래프를 보면 한 눈에 대부분의 프레임이 아주 양호했다는 것을 알아볼 수 있습니다. 대부분 16ms 최종 기한(빨간색으로 표시)보다 한참 아래에 있지만, 최종 기한을 크게 넘어선 프레임도 몇 개 있습니다.
-
- 이 히스토그램에서 시간 경과에 따른 변화를 살펴보면 대규모 이동이나 새 이상값이 생성되는 것을 확인할 수 있습니다.
- 이외에도 데이터 내의 수많은 타임스탬프를 근거로 입력 대기 시간, 레이아웃에서 보낸 시간 또는 여타 비슷한 흥미로운 메트릭도 그래프로 표현할 수 있습니다.
-
-
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-framestats.png">
-
-
-<h3 id="timing-dump">단순한 프레임 타이밍 덤프</h3>
-
-<p>
-  <strong>프로필 GPU 렌더링</strong>이 개발자 옵션에서 <strong>adb 셸의 dumpsys gfxinfo</strong>로 설정된 경우, <code>adb shell dumpsys gfxinfo</code> 명령이 가장 최근의 120개 프레임에 대한 타이밍 정보를 출력하되, 몇 개의 서로 다른 카테고리로 나누어 탭으로 구분된 값을 담아 표현합니다.
-
-
- 이 데이터를 사용하면 드로잉 파이프라인의 어떤 부분이 레벨이 높을 때 느려지는지 나타내는 데 유용합니다.
-
-</p>
-
-<p>
-  위의 <a href="#fs-data-format">framestats</a>와 마찬가지로, 이것을 개발자가 선택한 스프레드시트 도구에 붙여넣거나 수집해서 스크립트로 구문 분석하는 작업은 매우 단도직입적입니다.
-
- 다음 그래프는 앱이 생성한 수많은 프레임이 어디에서 시간을 보내는지 분석한 내용을 표시한 것입니다.
-
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-frame-latency.png">
-
-<p>
-  Gfxinfo를 실행한 결과, 그 출력을 복사하여 이를 스프레드시트 애플리케이션에 붙여넣은 다음 데이터를 누적 가로 막대형 그래프로 나타내는 것입니다.
-
-</p>
-
-<p>
-  각 세로 막대는 애니메이션 한 프레임을 나타냅니다. 그 막대의 높이가 해당 애니메이션 프레임을 계산하는 데 걸린 밀리초 수를 나타냅니다.
- 막대에서 색이 지정된 각 세그먼트는 렌더링 파이프라인의 각기 다른 단계를 나타내므로, 개발자는 이것을 보고 애플리케이션의 어떤 부분이 병목 현상을 유발하고 있는지 확인할 수 있습니다.
-
- 렌더링 파이프라인을 잘 이해하고 이에 맞게 최적화하는 법에 대한 자세한 내용은 <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;index=27&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">무효화 레이아웃 및 성능</a> 비디오를 참조하십시오.
-
-
-</p>
-
-
-<h3 id="collection-window">상태 수집 창 제어</h3>
-
-<p>
-  Framestats와 단순한 프레임 타이밍은 양쪽 모두 아주 짧은 시간 범위 동안 데이터를 수집합니다. 렌더링 약 2초에 상당하는 시간입니다.
- 이 시간 범위를 정확하게 제어하려면(예: 데이터를 특정 애니메이션에 제한), 카운터를 모두 초기화한 다음 수집한 통계를 집계하면 됩니다.
-
-
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; reset
-</pre>
-
-<p>
-  이 방법은 명령 자체를 덤프하는 방법과 함께 써서 정기적인 간격을 두고 수집과 초기화를 반복하여 계속해서 2초 미만의 프레임 창을 캡처하도록 하는 데 쓰일 수도 있습니다.
-
-
-</p>
-
-
-<h3 id="diagnose">성능 저하 진단</h3>
-
-<p>
-  성능이 저하된 것을 알아내는 것은 문제를 추적하고 애플리케이션의 건강 상태를 높은 수준으로 유지 관리하는 데 좋은 첫 단계입니다.
- 그러나 dumpsys는 문제의 존재 여부와 상대적인 심각도만 식별하는 데 그치지 않습니다.
- 각 성능 문제의 제각기 다른 원인을 진단하고 이를 해결하기 위해 적절한 방법을 찾아야 하는 것은 변하지 않습니다.
- 이를 위해, <a href="{@docRoot}tools/help/systrace.html">systrace</a> 도구를 사용하는 것을 적극적으로 추천합니다.
-
-</p>
-
-
-<h3 id="resources">추가 리소스</h3>
-
-<p>
-  Android의 렌더링 파이프라인의 작동 원리나 여기에서 마주칠 수 있는 보편적인 문제와 그 해결 방법에 대한 자세한 정보를 원하시면, 다음 리소스 중 몇 가지를 유용하게 쓸 수 있습니다.
-
-
-</p>
-
-<ul>
-  <li>렌더링 성능의 기초
-  </li>
-  <li>왜 60fps일까요?
-  </li>
-  <li>Android UI와 GPU
-  </li>
-  <li>무효화 레이아웃 및 성능
-  </li>
-  <li>Systrace로 UI 성능 분석하기
-  </li>
-</ul>
-
-
-<h2 id="automate">UI 성능 테스트 자동화</h2>
-
-<p>
-  UI 성능 테스트에 대한 한 가지 관점은 그저 인간 테스터가 대상 앱에서 일련의 사용자 작업을 수행하도록 하는 것입니다. 그러면서 육안으로 jank가 있는지 살펴보든가, 아니면 오랜 시간을 들여 도구 중심적인 관점으로 jank를 찾아내는 것입니다.
-
- 하지만 이와 같은 수동식 방법은 위험 투성이입니다. 프레임 속도 변화를 인지하는 사람의 능력에는 개인차가 극명하고, 시간도 오래 걸릴 뿐더러 지루하고 오류가 발생할 가능성이 높습니다.
-
-
-</p>
-
-<p>
-  보다 효율적인 접근 방식은 자동화된 UI 테스트로부터 가져온 주요 성능 메트릭을 기록하고 분석하는 것입니다.
- Android M 개발자 미리 보기에는 새로운 로깅 기능이 포함되어 있어 애플리케이션 애니메이션의 jank의 양과 심각도를 판별하기 쉽고, 이를 사용해 현재 성능을 판단하고 앞으로의 성능 목표를 추적하기 위해 철저한 프로세스를 구축할 수도 있습니다.
-
-
-
-</p>
-
-<p>
-  이 글에서는 그러한 데이터를 사용하여 성능 테스트를 자동화하는 데 권장되는 방안을 찬찬히 알려드립니다.
-
-</p>
-
-<p>
-  이것은 주로 두 가지 주요 작업으로 나뉘어 있습니다. 첫째로 무엇을 테스트할지, 어떻게 테스트할지를 확인합니다. 그런 다음 두 번째로 자동화된 테스트 환경을 설정하고 유지 관리하는 것입니다.
-
-
-</p>
-
-
-<h3 id="ui-tests">UI 테스트 설정</h3>
-
-<p>
-  자동화된 테스트를 시작하기 전에 우선 몇 가지 수준 높은 결정을 내려야 합니다. 그래야 테스트 공간과 스스로에게 필요한 부분을 제대로 숙지할 수 있습니다.
-
-</p>
-
-<h4>
-  테스트할 주요 애니메이션/흐름 알아내기
-</h4>
-
-<p>
-  성능이 불량한 것이 사용자에게 가장 눈에 띄는 것은 애니메이션이 원활히 작동하지 않을 때라는 점을 명심하십시오.
- 따라서, 테스트할 UI 작업 유형을 식별할 때에는 사용자가 가장 많이 접하게 되는 애니메이션이나 사용자 환경에 가장 중요한 것에 주안점을 두면 유용합니다.
-
- 예를 들어 다음은 이처럼 식별하는 데 유용하게 쓰일 수 있는 몇 가지 보편적인 시나리오입니다.
-</p>
-
-<ul>
-  <li>기본 ListView 또는 RecyclerView를 스크롤링
-  </li>
-
-  <li>비동기 대기 주기 동안 표시되는 애니메이션
-  </li>
-
-  <li>비트맵 로딩/조작이 들어 있을 수 있는 모든 애니메이션
-  </li>
-
-  <li>알파 혼합이 포함된 애니메이션
-  </li>
-
-  <li>Canvas로 사용자 지정 보기 드로잉
-  </li>
-</ul>
-
-<p>
-  팀 구성원인 엔지니어, 디자이너와 제품 관리자와 협력하여 이와 같이 테스트 대상 범위에 넣어야 하는 주요 제품 애니메이션의 우선 순위를 지정하십시오.
-
-</p>
-
-<h4>
-  앞으로의 목표를 정의하고 그것을 추적하기
-</h4>
-
-<p>
-  레벨이 높을 때에는 특정한 성능 목표를 알아내고 테스트 작성에 집중하며, 그에 관한 데이터를 수집하는 것이 매우 중요할 수 있습니다.
- 예를 들면 다음과 같습니다.
-</p>
-
-<ul>
-  <li>처음에만 UI 성능을 추적하여 좀 더 자세히 알아보기만 했으면 합니까?
-  </li>
-
-  <li>앞으로 마주치게 될 성능 저하를 방지하고자 합니까?
-  </li>
-
-  <li>지금은 매끄러운 프레임 비율이 약 90% 정도이지만 이번 사분기 내에 98%까지 올리고자 합니까?
-  </li>
-
-  <li>지금 매끄러운 프레임이 약 98%이고 성능이 저하되지 않기를 바랍니까?
-  </li>
-
-  <li>저사양 기기에서 성능을 개선하는 것이 목표입니까?
-  </li>
-</ul>
-
-<p>
-  이 모든 경우, 애플리케이션의 여러 버전에 걸쳐 성능을 나타내주는 사용 기록 추적을 수행하는 것이 좋습니다.
-
-</p>
-
-<h4>
-  테스트할 기기 정하기
-</h4>
-
-<p>
-  애플리케이션의 성능은 어느 기기에서 실행되는지에 따라 여러 가지로 달라집니다. 메모리 용량이 적고 GPU 파워가 딸리거나 CPU 칩 속도가 느린 기기도 있습니다.
- 이는 즉 한 가지 하드웨어 세트에서는 잘 작동하는 애니메이션이 다른 곳에서는 그렇지 않을 수도 있다는 뜻입니다. 더 나쁜 경우로는 파이프라인의 서로 다른 부분에서 병목 현상이 일어나는 결과를 초래할 수도 있습니다.
-
- 따라서, 사용자가 볼 수도 있는 이러한 변형을 감안하기 위해 테스트를 실행할 기기를 여러 가지로 선택하는 것이 중요합니다. 최신 고사양 기기, 저사양 기기, 태블릿 등 양쪽 측면을 모두 고려하십시오.
-
- CPU 성능, RAM, 화면 밀도, 크기 등의 변형을 잘 살피십시오.
- 고사양 기기를 통과하는 테스트가 저사양 기기에서는 실패할 수도 있습니다.
-
-</p>
-
-<h4>
-  UI 테스트의 기본 프레임워크
-</h4>
-
-<p>
-  <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a>와 <a href="{@docRoot}training/testing/ui-testing/espresso-testing.html">Espresso</a> 등의 도구 스위트는 개발자의 애플리케이션을 통과하는 사용자의 동작을 자동화하는 데 도움이 되도록 구축된 것입니다.
-
- 이들은 단순한 프레임워크로, 사용자와 기기의 상호작용을 흉내 냅니다.
- 이러한 프레임워크를 사용하려면, 사실상 개발자가 나름의 고유한 스크립트를 생성해야 합니다. 이는 일련의 사용자-동작을 통해 실행되고, 이를 기기 자체에서 재생합니다.
-
-
-</p>
-
-<p>
-  이렇게 자동화된 테스트를 여러 가지로 조합하여 <code>dumpsys gfxinfo</code>와 함께 사용하면 재현 가능한 시스템을 재빨리 만들어내 테스트를 실행하고 해당 조건 하에서 성능 정보를 측정할 수 있습니다.
-
-
-</p>
-
-
-<h3 id="automated-tests">자동화된 UI 테스트 설정</h3>
-
-<p>
-  UI 테스트를 실행할 수 있게 되고, 한 번의 테스트로부터 데이터를 수집할 파이프라인을 갖추게 되면 다음으로 중요한 단계는 해당 테스트를 여러 번, 여러 기기에 걸쳐 실행하고 그 결과 도출된 성능 데이터를 집계하여 개발 팀이 한층 더 상세하게 분석할 수 있게 해주는 프레임워크를 채택하는 것입니다.
-
-
-
-</p>
-
-<h4>
-  테스트 자동화를 위한 프레임워크
-</h4>
-
-<p>
-  UI 테스트 프레임워크(예: <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a>)는 대상 기기/에뮬레이터에서 직접 실행된다는 점에 주목할 만한 가치가 있습니다.
- 반면 <em>dumpsys gfxinfo</em>에 의해 완료되는 성능 수집 정보는 호스트 머신이 구동하여 ADB를 통해 명령을 전송합니다.
- 이러한 각각의 항목 자동화를 연결하는 데 도움을 주기 위해 <a href="{@docRoot}tools/help/monkeyrunner_concepts.html">MonkeyRunner</a> 프레임워크가 개발되었습니다. 이것은 호스트 머신에서 실행되는 스크립팅 시스템으로, 일련의 연결된 기기에 명령을 발행하기도 하고 이들로부터 데이터를 수신할 수도 있습니다.
-
-
-
-</p>
-
-<p>
-  UI 성능 테스트를 제대로 자동화하기 위해 최소한의 수준으로 일련의 스크립트를 구축하는 경우, 다음과 같은 작업을 수행하기 위해 monkeyRunner를 활용할 수 있어야 합니다.
-
-</p>
-
-<ul>
-  <li>원하는 APK를 대상 기기(하나 이상일 수 있음) 또는 에뮬레이터에 로드하여 시작합니다.
-  </li>
-
-  <li>UI Automator UI 테스트를 시작하고 실행되도록 허용하십시오.
-  </li>
-
-  <li><em>dumpsys gfxinfo</em><em></em>를 통해 성능 정보를 수집합니다.
-  </li>
-
-  <li>정보를 집계하고 이를 다시 유용한 방식으로 표시해 개발자에게 보여줍니다.
-  </li>
-</ul>
-
-
-<h3 id="triage">관측된 문제 심사 및 수정</h3>
-
-<p>
-  문제의 패턴이나 성능 저하를 확인했으면, 다음 단계는 해결 방법을 알아내어 적용합니다.
- 자동화된 테스트 프레임워크가 프레임에 대해 정확한 타이밍 분석을 유지하는 경우, 최근의 의심스러운 코드/레이아웃 변경 내용을 꼼꼼히 훑어보거나(성능 저하의 경우) 수동 조사로 전환했을 때 시스템의 어느 부분을 분석할지 범위를 좁히는 데 도움이 될 수 있습니다.
-
-
- 수동 조사의 경우, <a href="{@docRoot}tools/help/systrace.html">systrace</a>부터 시작하는 것이 좋습니다. 이렇게 하면 렌더링 파이프라인의 모든 단계, 시스템에 있는 모든 스레드와 코어는 물론 개발자가 정의한 사용자 지정 이벤트 마커 일체에 대해 정확한 타이밍 정보를 나타내주기 때문입니다.
-
-
-</p>
-
-<h4>
-  임시 타이밍을 적절하게 프로파일링하기
-</h4>
-
-<p>
-  렌더링 성능에서 타이밍을 가져와 이를 측정하는 데 수반되는 몇 가지 어려움을 알아두는 것이 중요합니다.
- 이와 같은 숫자는 본래 결정적인 것이 아니고 시스템 상태, 이용 가능한 메모리 용량, 열 제한 및 개발자가 사는 지역에 태양 플레어가 마지막으로 영향을 미친 시점 등에 따라 변동폭이 큽니다.
-
- 요점은 같은 테스트를 두 번 실행하면서 서로 근사치이지만 완전히 똑같지는 않은, 약간 다른 숫자를 얻어내는 데 있습니다.
-
-
-</p>
-
-<p>
-  이런 식으로 데이터를 제대로 수집하고 프로파일링한다는 것은 같은 테스트를 여러 번 거듭 실행하면서 얻어지는 결과를 평균 또는 중간값(너무 복잡해지니 이것을 '배치(batch)'라고 부르기로 합시다)으로 누적한다는 것을 뜻합니다. 이렇게 하면 테스트 성과를 대략적으로 어림잡을 수 있으면서 정확한 타이밍은 없어도 됩니다.
-
-
-
-</p>
-
-<p>
-  이러한 배치를 코드 변경 사이사이에 사용하여 그러한 변경 내용이 성능에 미치는 상대적인 영향을 알아볼 수도 있습니다.
- 변경 전 배치의 평균 프레임 속도가 변경 후 배치에서보다 빠른 경우, 해당 변경에 대해 전반적으로 좋은 WRT 성능을 성취했다는 뜻입니다.
-
-
-</p>
-
-<p>
-  이는 즉 개발자가 수행하는 자동화된 UI 테스트는 모두 이 개념을 감안해야 한다는 뜻이기도 하고, 테스트 중에 일어나는 모든 변칙적인 부분 또한 감안해야 한다는 뜻입니다.
- 예를 들어 애플리케이션 성능이 일종의 기기 문제(본인의 애플리케이션에서 기인한 것이 아님) 때문에 갑자기 뚝 떨어지는 경우라면 해당 배치를 다시 실행하여 조금 덜 혼란스러운 타이밍을 얻어야 할 수도 있습니다.
-
-
-
-</p>
-
-<p>
-  그렇다면 측정값이 의의를 지니려면 테스트를 몇 번이나 수행하는 것이 좋습니까? 최소한 10번은 해야 합니다. 실행 횟수가 50이나 100처럼 커질수록 더욱 정확한 경과를 도출할 수 있습니다(물론, 이제는 정확도와 시간을 맞바꿔야 하는 셈입니다).
-
-
-</p>
diff --git a/docs/html-intl/intl/ko/sdk/index.jd b/docs/html-intl/intl/ko/sdk/index.jd
new file mode 100644
index 0000000..d68d736
--- /dev/null
+++ b/docs/html-intl/intl/ko/sdk/index.jd
@@ -0,0 +1,431 @@
+page.title=Android Studio 및 SDK 도구 다운로드
+page.tags=sdk, android studio
+page.template=sdk
+page.image=images/cards/android-studio_2x.png
+header.hide=1
+page.metaDescription=Android 휴대폰, 태블릿, 웨어러블, TV 등을 위한 앱을 구축하는 데 사용할 수 있는 공식 Android IDE 및 개발자 도구를 다운로드하세요.
+
+@jd:body
+
+<style type="text/css">
+  .offline {display:none;}
+  h2.feature {
+    padding-top:30px;
+    margin-top:0;
+    clear:both;
+  }
+  .feature-blurb {
+  margin:0px; font-size:16px; font-weight:300;
+  padding-top:40px;
+  }
+
+  .landing-button .small {
+    font-size: 12px;
+    font-weight: normal;
+    line-height: 12px;
+    display: block;
+  }
+
+  h1.studio-logo {
+    width:226px;
+    height:78px;
+    display:block;
+    padding:0;
+    white-space: nowrap;
+    text-indent: -10000px;
+    font-size:0px;
+    background: url({@docRoot}images/tools/studio-logo.png);
+    background-image: -webkit-image-set(url({@docRoot}images/tools/studio-logo.png) 1x, url({@docRoot}images/tools/studio-logo_2x.png) 2x);
+    background-size: 226px 78px;
+  }
+
+</style>
+
+
+
+
+
+<div style="position:relative;">
+
+
+<div class="wrap" id="tos" style="display:none;width:inherit;height:650px">
+<div class="col-13" style="margin:0;">&nbsp;</div><!-- provides top margin for content -->
+
+<h1 id="tos-header" style="margin-top:0">다운로드</h1>
+
+<p class="sdk-terms-intro">Android Studio 또는 독립 실행형 SDK 도구를 설치하려면,
+먼저 다음 사용 약관에 동의해야 합니다.</p>
+
+<div class="sdk-terms" onfocus="this.blur()">
+<h2 class="norule">사용 약관</h2>
+이것은 Android SDK(소프트웨어 개발 키트)에 대한 라이선스 계약입니다.
+
+
+<h3>1. Introduction</h3>
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+
+<h3>2. Accepting this License Agreement</h3>
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
+
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
+
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+
+
+<h3>3. SDK License from Google</h3>
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
+
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
+
+3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
+
+
+<h3>4. Use of the SDK by You</h3>
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+
+<h3>5. Your Developer Credentials</h3>
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+
+<h3>6. Privacy and Information</h3>
+6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy.
+
+
+<h3>7. Third Party Applications</h3>
+7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
+
+
+<h3>8. Using Android APIs</h3>
+8.1 Google Data APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+
+<h3>9. Terminating this License Agreement</h3>
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
+(B) Google is required to do so by law; or
+(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
+(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
+
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+
+
+<h3>10. DISCLAIMER OF WARRANTIES</h3>
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+
+<h3>11. LIMITATION OF LIABILITY</h3>
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+
+<h3>12. Indemnification</h3>
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
+
+
+<h3>13. Changes to the License Agreement</h3>
+13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available.
+
+
+<h3>14. General Legal Terms</h3>
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+
+<em>November 20, 2015</em>
+</div>
+
+
+
+
+
+<div id="next-steps" style="display:none;position:absolute;width:inherit">
+  <p>이제 금방 Android용 앱 구축을 시작할 수 있게 됩니다!</p>
+  <p>곧
+<a id="next-link" href="{@docRoot}sdk/installing/index.html">Android SDK 설치하기</a> 페이지로 이동됩니다.</p>
+
+</div><!-- end next-steps -->
+
+
+
+<div id="sdk-terms-form">
+<p>
+<input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+<label id="agreeLabel" for="agree">본인은 상기 사용 약관을 읽었으며 이에 동의합니다.</label>
+</p>
+<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+</div>
+
+
+</div><!-- end TOS -->
+
+
+
+
+
+
+<div id="landing">
+
+<div class="col-13">&nbsp;</div><!-- provides top margin for content -->
+
+<img src="{@docRoot}images/tools/studio-hero.png" srcset="{@docRoot}images/tools/studio-hero_2x.png 2x, {@docRoot}images/tools/studio-hero.png 1x" width="760" height="400"/>
+
+<div style="color: #fff; width:226px; height:0; overflow:visible; position:absolute; top:40px; left:25px">
+
+<h1 class="studio-logo" style="margin:0 0 35px !important">Android Studio</h1>
+
+<p style="font-size: 16px; color:#bbb; position: absolute;left: 297px; top: 5px; display: block;
+width: 400px;text-align: center;">공식 Android IDE</p>
+
+<ul style="font-size:12px;line-height:19px;">
+<li>Android Studio IDE</li>
+<li>Android SDK Tools</li>
+<li>Android 6.0(Marshmallow) 플랫폼</li>
+<li>Google API를 사용하는 Android 6.0 에뮬레이터 시스템 이미지</li>
+</ul>
+
+<a class="online landing-button green download-bundle-button"
+href="#Other" >Download Android Studio<br/><span class='small'></span></a>
+
+<!-- this appears when viewing the offline docs -->
+<p class="offline">
+Android Studio 또는 독립 실행형 SDK 도구를 얻으려면 <a href="http://developer.android.com/sdk/index.html">developer.android.com/sdk/</a> 페이지를 방문하십시오.
+</p>
+</div>
+
+<ul>
+  <li><a href="#Requirements">시스템 요건</a></li>
+  <li><a href="#Other">기타 다운로드 옵션</a></li>
+  <li><a href="{@docRoot}sdk/installing/migrate.html">Android Studio로 마이그레이션</a></li>
+  <li><a href="https://docs.google.com/a/google.com/forms/d/1mjsyfzv3HAnDY-_Kfj-3QJKdpuksyMFs9e73CRwmT6Q/viewform" target="_blank">설문조사 참여</a></li>
+</ul>
+
+
+
+
+
+<h2 class="feature norule" >지능형 코드 편집기</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-code.png" srcset="{@docRoot}images/tools/studio-hero-code_2x.png 2x, {@docRoot}images/tools/studio-hero-code.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android Studio의 핵심에는 고급 코드 작성, 리팩터링, 코드 분석이 가능한 지능형
+코드 편집기가 있습니다.</p>
+  <p>이 강력한 코드 편집기를 사용하면 여러분이 더욱 생산적인 Android 앱 개발자가 되는 데 도움이 됩니다.</p>
+</div>
+
+
+
+
+
+<h2 class="feature norule">코드 템플릿 및 GitHub 통합</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-import.png" srcset="{@docRoot}images/tools/studio-hero-import_2x.png 2x, {@docRoot}images/tools/studio-hero-import.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>새 프로젝트 마법사를 통해 새로운 프로젝트를 더욱 쉽게 시작할 수 있습니다.</p>
+
+  <p>탐색 드로어 및 보기 호출기와 같은 패턴에 대한 템플릿 코드를 사용해 프로젝트를 시작하고,
+GitHub에서 Google 코드 샘플을 가져올 수도 있습니다.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">다중 화면 앱 개발</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-screens.png" srcset="{@docRoot}images/tools/studio-hero-screens_2x.png 2x, {@docRoot}images/tools/studio-hero-screens.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android 휴대폰, 태블릿, Android Wear, Android TV,
+Android Auto 그리고 Google Glass용 앱을 구축할 수 있습니다.</p>
+  <p>Android Studio의 새로운 Android 프로젝트 보기 및 모듈 지원 기능을 통해
+앱 프로젝트 및 리소스 관리를 더욱 쉽게 수행할 수 있습니다.
+</div>
+
+
+
+
+<h2 class="feature norule">모든 모양 및 크기를 지원하는 가상 기기</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-avds.png" srcset="{@docRoot}images/tools/studio-hero-avds_2x.png 2x, {@docRoot}images/tools/studio-hero-avds.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android Studio는 최적화된 에뮬레이터 이미지로 사전 구성된 형태로 제공됩니다.</p>
+  <p>업데이트되고 간소화된 Virtual Device Manager는 일반 Android 기기에 대해
+사전 정의된 기기 프로필을 제공합니다.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">
+Gradle을 통해 진화된 Android 빌드</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-gradle.png" srcset="{@docRoot}images/tools/studio-hero-gradle_2x.png 2x, {@docRoot}images/tools/studio-hero-gradle.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>동일한 프로젝트를 사용하여 다양한 기능을 갖춘 Android 앱을 위한 여러 APK를 생성할 수 있습니다.</p>
+  <p>Maven을 통해 앱 종속관계를 관리할 수 있습니다.</p>
+  <p>Android Studio 또는 명령줄에서 APK를 구축할 수 있습니다.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">Android Studio에 대한 추가 정보</h2>
+<div style="background:#424242;padding:30px; color:#fff;margin:0 0 15px;">
+
+<a class="online landing-button green download-bundle-button" style="margin:0 0 40px 60px;float:right" href="">Download</a>
+
+  <ul>
+  <li>JetBrains에서 제공하는 인기 있는 Java IDE인 IntelliJ IDEA Community Edition 기반</li>
+  <li>유연한 Gradle 기반 빌드 시스템</li>
+  <li>빌드 변형 및 여러 APK 생성</li>
+  <li>템플릿 지원 확대를 통해 Google Services 및 다양한 기기 유형 지원</li>
+  <li>테마 편집을 지원하는 고급 레이아웃 편집기</li>
+  <li>성능, 유용성, 버전 호환성 및 기타 문제를 파악하는 Lint 도구</li>
+  <li>ProGuard 및 앱 서명 기능</li>
+  <li>Google Cloud Messaging 및 App Engine의 통합을 용이하게 하는 Google Cloud Platform에 대한
+기본 지원 기능</li>
+  </ul>
+
+<p style="margin:0">
+Android Studio에서 사용할 수 있는 기능에 대한 자세한 내용은
+<a href="{@docRoot}tools/studio/index.html">Android Studio 개요</a> 가이드를 참조하세요.</p>
+</div>
+
+
+<p>ADT와 함께 Eclipse를 사용하고 있었다면 현재 Android의 공식 IDE는
+Android Studio이므로, 모든 최신 IDE 업데이트를 받을 수 있도록 Android Studio로
+마이그레이션해야 합니다. 프로젝트 이동에 대한 도움말은
+<a href="{@docRoot}sdk/installing/migrate.html">Migrating to Android
+Studio</a>를 참조하세요.</p>
+
+
+
+
+
+
+
+<h2 id="Requirements">시스템 요건</h2>
+
+<h3>Windows</h3>
+
+<ul>
+<li>Microsoft&reg; Windows&reg; 8/7/Vista/2003(32비트 또는 64비트)</li>
+<li>최소 2GB RAM, 4GB RAM 권장</li>
+<li>400MB 하드 디스크 공간</li>
+<li>Android SDK, 에뮬레이터 시스템 이미지 및 캐시용 최소 1GB</li>
+<li>1280 x 800 이상의 화면 해상도</li>
+<li>JDK(Java Development Kit) 7 </li>
+<li>가속 에뮬레이터를 위한 선택 사항: Intel® VT-x, Intel® EM64T(Intel® 64) 및 XD(Execute Disable) Bit
+기능 지원 Intel® 프로세서</li>
+</ul>
+
+
+<h3>Mac OS X</h3>
+
+<ul>
+<li>Mac&reg; OS X&reg; 10.8.5 이상, 최대 10.9(Mavericks)</li>
+<li>최소 2GB RAM, 4GB RAM 권장</li>
+<li>400MB 하드 디스크 공간</li>
+<li>Android SDK, 에뮬레이터 시스템 이미지 및 캐시용 최소 1GB</li>
+<li>1280 x 800 이상의 화면 해상도</li>
+<li>JRE(Java Runtime Environment) 6</li>
+<li>JDK(Java Development Kit) 7</li>
+<li>가속 에뮬레이터를 위한 선택 사항: Intel® VT-x, Intel® EM64T(Intel® 64) 및 XD(Execute Disable) Bit
+기능 지원 Intel® 프로세서</li>
+</ul>
+
+<p>Mac OS에서는 최적화된 글꼴 렌더링을 위해 JRE(Java Runtime Environment) 6에서 Android Studio를
+실행하십시오. 그런 다음, JDK(Java Development Kit) 6 또는 JDK 7을 사용하여 프로젝트를 구성할 수 있습니다.</p>
+
+
+
+<h3>Linux</h3>
+
+<ul>
+<li>GNOME 또는 KDE 데스크톱</li>
+<li>GNU C Library(glibc) 2.15 이상</li>
+<li>최소 2GB RAM, 4GB RAM 권장</li>
+<li>400MB 하드 디스크 공간</li>
+<li>Android SDK, 에뮬레이터 시스템 이미지 및 캐시용 최소 1GB</li>
+<li>1280 x 800 이상의 화면 해상도</li>
+<li>Oracle&reg; JDK(Java Development Kit) 7 </li>
+</ul>
+<p>Ubuntu&reg; 14.04, Precise Pangolin(32비트 애플리케이션 실행 가능 64비트 버전)에서
+테스트됨</p>
+
+
+
+
+<h2 id="Other" style="clear:left">기타 다운로드 옵션</h2>
+
+<!-- alternative SDK options follows -->
diff --git a/docs/html-intl/intl/ko/sdk/installing/adding-packages.jd b/docs/html-intl/intl/ko/sdk/installing/adding-packages.jd
new file mode 100644
index 0000000..b935d87
--- /dev/null
+++ b/docs/html-intl/intl/ko/sdk/installing/adding-packages.jd
@@ -0,0 +1,226 @@
+page.title=SDK 패키지 추가하기
+
+page.tags=sdk manager
+
+@jd:body
+
+<style>
+ol.large {
+  margin-left:0;
+}
+ol.large > li {
+  list-style-position: inside;
+  list-style-type:none;
+  margin:30px 0 0 0;
+  padding:30px 20px;
+  background:#eee;
+}
+ol.large > li:nth-child(odd) {
+}
+ol.large > li:before {
+  display:inline;
+  left:-40px;
+  float:left;
+  width:20px;
+  font-size:20px;
+  line-height:20px;
+}
+ol.large > li > h2 {
+  font-size:20px;
+  line-height:20px;
+  padding:0 0 0 20px;
+  margin:0 0 20px 0;
+  display:inline;
+  font-weight:normal;
+}
+ol.large > li:nth-child(1):before {
+  content:"1. ";
+}
+ol.large > li:nth-child(2):before {
+  content:"2. ";
+}
+ol.large > li:nth-child(3):before {
+  content:"3. ";
+}
+ol.large > li:nth-child(4):before {
+  content:"4. ";
+}
+ol.large > li:nth-child(5):before {
+  content:"5. ";
+}
+ol.large > li:nth-child(6):before {
+  content:"6. ";
+}
+</style>
+
+
+<p>
+기본적으로 Android SDK에는 개발을 시작하는 데 필요한 모든 것이 포함되어 있지 않습니다. 
+SDK는 도구, 플랫폼과 기타 구성요소를 여러 개의 
+패키지로 구분하여 필요에 따라 
+<a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>를 사용하여 다운로드할 수 있습니다.
+따라서 시작하기 전에 Android SDK에 추가해야 하는 패키지가 몇 개 있습니다.</p>
+
+<p>패키지를 추가하려면, 다음 중 한 가지 방법을 사용하여 Android SDK Manager를 시작합니다.</p>
+<ul>
+  <li>Android Studio의 도구 모음에서 <strong>SDK Manager</strong>
+<img src="{@docRoot}images/tools/sdk-manager-studio.png" style="vertical-align:bottom;margin:0;height:17px" />를 클릭합니다.</li>
+  <li>Android Studio를 사용하지 않는 경우:
+    <ul>
+      <li>Windows: Android
+ SDK 디렉터리의 루트에 있는 <code>SDK Manager.exe</code> 파일을 더블 클릭합니다.</li>
+      <li>Mac/Linux: 터미널을 열고 Android SDK가 설치된 <code>tools/</code> 디렉터리로
+이동한 후 <code>android sdk</code>를 실행합니다.</li>
+    </ul>
+  </li>
+</ul>
+
+<p>SDK Manager를 처음 열 때에는, 여러 개의 패키지가 기본적으로 선택되어 
+있습니다. 이들은 선택된 상태로 두십시오. 다만 다음 단계를 따라 시작하는 데 필요한 모든 것을 
+갖추고 있는지 확인해야 합니다.</p>
+
+
+<ol class="large">
+<li>
+  <h2 id="GetTools" class="norule">최신 SDK 도구 다운로드</h2>
+
+<img src="/images/sdk_manager_packages.png" alt="" width="350" style="float:right;margin-left:20px" />
+
+  <p>Android SDK를 설정할 때는 
+최신 도구와 Android 플랫폼 다운로드가 최소한의 준비 사항입니다.</p>
+  <ol>
+   <li>도구 디렉터리를 열고 다음을 선택합니다.
+     <ul>
+       <li><strong>Android SDK Tools</strong></li>
+       <li><strong>Android SDK Platform-tools</strong></li>
+       <li><strong>Android SDK Build-tools</strong>(최상위 버전)</li>
+     </ul>
+   </li>
+   <li>첫 번째 Android X.X 폴더(최신 버전)를 열고 다음을 선택합니다.
+     <ul>
+      <li><strong>SDK Platform</strong></li>
+      <li>에뮬레이터용 시스템 이미지(다음 예시 참조) <br>
+      <strong>ARM EABI v7a 시스템 이미지</strong></li>
+     </ul>
+   </li>
+  </ol>
+</li>
+
+<li>
+  <h2 id="GetSupportLib" class="norule">추가 API를 위한 지원 라이브러리 가져오기</h2>
+
+  <div class="sidebox">
+    <p>지원 라이브러리는 다음 용도에 필요합니다.</p>
+    <ul>
+      <li><a href="{@docRoot}wear/index.html">Android Wear</a></li>
+      <li><a href="{@docRoot}tv/index.html">Android TV</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+    </ul>
+
+    <p>또한 다음과 같은 인기 API를 제공하기도 합니다.</p>
+    <ul>
+      <li><a href="{@docRoot}reference/android/support/v4/widget/DrawerLayout.html">탐색
+창</a></li>
+      <li><a href="{@docRoot}reference/android/support/v4/view/ViewPager.html">보기 스와이프</a></li>
+      <li><a href="{@docRoot}reference/android/support/v7/app/ActionBar.html">이전 버전 호환
+동작 막대</a></li>
+    </ul>
+  </div>
+
+  <p><a href="{@docRoot}tools/support-library/features.html">Android 지원 라이브러리</a>는
+ 대부분의 Android 버전과 호환되는 광범위한 집합의 API를 제공합니다.</p>
+
+  <p><strong>Extras</strong> 디렉터리를 열고 다음을 선택합니다.</p>
+     <ul>
+       <li><strong>Android 지원 리포지토리</strong></li>
+       <li><strong>Android 지원 라이브러리</strong></li>
+     </ul>
+
+  <p>&nbsp;</p>
+  <p>&nbsp;</p>
+
+</li>
+
+
+<li>
+  <h2 id="GetGoogle" class="norule">더 많은 API를 위해 Google Play 서비스 가져오기</h2>
+
+  <div class="sidebox">
+
+    <p>Google Play 서비스 API는 Android
+ 앱에 다음과 같이 다양한 기능과 서비스를 제공합니다.</p>
+    <ul>
+      <li><a href="{@docRoot}google/play-services/plus.html">사용자 인증</a></li>
+      <li><a href="{@docRoot}google/play-services/maps.html">Google Maps</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+      <li><a href="{@docRoot}google/play-services/games.html">게임 도전 과제 및
+ 리더보드</a></li>
+      <li><a href="{@docRoot}google/play-services/index.html">그 외 다수</a></li>
+    </ul>
+  </div>
+
+  <p>Google API로 개발하려면 Google Play 서비스 패키지가 필요합니다.</p>
+  <p><strong>Extras</strong> 디렉터리를 열고 다음을 선택합니다.</p>
+     <ul>
+       <li><strong>Google Repository</strong></li>
+       <li><strong>Google Play 서비스</strong></li>
+     </ul>
+
+  <p class="note"><strong>참고:</strong> Google Play 서비스를 모든 Android 구동 기기에서 
+사용할 수 있는 것은 아니지만, Google Play Store가 있는 기기에서는 모두 사용할 수 있습니다. 이와 같은 API를 
+Android 에뮬레이터에서 사용하려면, SDK Manager의 최신 Android X.X 디렉터리에서 <strong>Google API</strong>
+ 시스템 이미지도 설치해야 합니다.</p>
+</li>
+
+
+<li>
+  <h2 id="Install" class="norule">패키지 설치</h2>
+  <p>원하는 패키지를 모두 선택하면 계속 진행하여 설치합니다.</p>
+  <ol>
+   <li><strong>X 패키지 설치</strong>를 클릭합니다.</li>
+   <li>다음 창에서, 왼쪽에 있는 각 패키지 이름을 더블 클릭하여 각각의 
+라이선스 동의서를 수락합니다.</li>
+   <li><strong>설치</strong>를 클릭합니다.</li>
+  </ol>
+  <p>다운로드 진행률이 SDK Manager 창 맨 아래에 표시됩니다.
+  <strong>SDK Manager를 종료하지 마십시오</strong>. 다운로드가 취소됩니다.</p>
+</li>
+
+<li>
+  <h2 id="Build" class="norule">뭐든 구축하세요!</h2>
+
+<p>이제 Android SDK에 위의 패키지를 설치했으니 Android용 앱을 구축할 준비가 끝난 
+셈입니다. 새로운 도구와 다른 API를 사용할 수 있게 되면, SDK Manager를 시작하여 
+사용자의 SDK에 새 패키지를 다운로드할 수 있습니다.</p>
+
+<p>진행 방법에 대한 몇 가지 옵션을 소개합니다.</p>
+
+<div class="cols" style="padding:10px 0">
+<div class="col-4">
+<h3>시작하기</h3>
+<p>Android 개발이 처음인 경우, Android 앱의 기초를 배울 수 있는 
+<strong><a href="{@docRoot}training/basics/firstapp/index.html">첫 앱 구축하기</a></strong> 가이드를 참조하십시오.</p>
+
+</div>
+<div class="col-4 box">
+<h3>웨어러블용 앱 구축하기</h3>
+<p>Android 웨어러블용 앱을 구축할 준비가 되었다면 
+<strong><a href="{@docRoot}wear/preview/start.html">Android Wear용 앱 구축하기</a></strong> 가이드를 참조하십시오.</p>
+
+</div>
+<div class="col-4 box">
+<h3>Google API 사용</h3>
+<p>Maps 또는 Play Game 서비스와 같은 
+Google API를 사용하려면 
+<strong><a href="{@docRoot}google/play-services/setup.html">Google Play
+서비스 설정하기</a></strong> 가이드를 참조하십시오.</p>
+
+</div>
+</div><!-- end cols -->
+
+
+</li>
+
+</ol>
+
+
diff --git a/docs/html-intl/intl/ko/training/material/animations.jd b/docs/html-intl/intl/ko/training/material/animations.jd
new file mode 100644
index 0000000..e8c6267
--- /dev/null
+++ b/docs/html-intl/intl/ko/training/material/animations.jd
@@ -0,0 +1,550 @@
+page.title=사용자지정 애니메이션의 정의
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>이 과정에서 다루는 내용</h2>
+<ol>
+  <li><a href="#Touch">사용자지정 터치 피드백</a></li>
+  <li><a href="#Reveal">표시 효과 사용</a></li>
+  <li><a href="#Transitions">사용자지정 액티비티 전환</a></li>
+  <li><a href="#ViewState">뷰 상태 변경 애니메이트</a></li>
+  <li><a href="#AnimVector">벡터 드로어블 애니메이트</a></li>
+</ol>
+<h2>필독 항목</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">머티리얼 디자인 사양</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android의 머티리얼 디자인</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>머티리얼 디자인에서 애니메이션은 사용자에게 자신의 동작에 대한 피드백을 제공하고, 앱과 상호작용할 때 시각적 연속성을 제공합니다.
+ 머티리얼 테마는 버튼 및 액티비티 전환을 위한 몇 가지 기본 애니메이션을 제공합니다. Android 5.0(API 레벨 21) 이상에서는 이러한 애니메이션을 사용자가 지정하거나 새로운 애니메이션을 만들 수 있습니다.
+
+</p>
+
+<ul>
+<li>터치 피드백</li>
+<li>회전하며 나타나기</li>
+<li>액티비티 전환</li>
+<li>커브 모션</li>
+<li>뷰 상태 변경</li>
+</ul>
+
+
+<h2 id="Touch">사용자지정 터치 피드백</h2>
+
+<p>머티리얼 디자인의 터치 피드백은 사용자가 UI 요소와 상호작용하는 시점에서 즉시 시각적으로 확인할 수 있습니다.
+ 버튼의 기본 터치 피드백 애니메이션은 물결 효과를 통해 서로 다른 상태 간에 전환하는 새 {@link android.graphics.drawable.RippleDrawable} 클래스를 사용합니다.
+
+</p>
+
+<p>대부분의 경우, 다음과 같이 뷰 배경을 지정하는 방식으로 뷰 XML에서 이 기능을 적용해야 합니다.
+</p>
+
+<ul>
+<li>제한된 물결의 경우, <code>?android:attr/selectableItemBackground</code></li>
+<li>뷰를 넘어 확장되는 물결의 경우, <code>?android:attr/selectableItemBackgroundBorderless</code> 
+ 이 경우 물결이 null이 아닌 배경을 가진 뷰의 가장 가까운 상위 요소 위에 그려지고 해당 상위 요소까지로 제한됩니다.
+</li>
+</ul>
+
+<p class="note"><strong>참고:</strong> <code>selectableItemBackgroundBorderless</code>는 API 레벨 21에서 새로 도입된 특성입니다.
+</p>
+
+
+<p>또는 <code>ripple</code> 요소를 사용하여 {@link android.graphics.drawable.RippleDrawable}
+을 XML 리소스로 정의할 수 있습니다.</p>
+
+<p>{@link android.graphics.drawable.RippleDrawable} 객체에 색상을 지정할 수 있습니다. 기본 터치 피드백 색상을 변경하려면 테마의 <code>android:colorControlHighlight</code>
+특성을 사용합니다.
+</p>
+
+<p>자세한 내용은 {@link
+android.graphics.drawable.RippleDrawable} 클래스의 API 레퍼런스를 참조하세요.</p>
+
+
+<h2 id="Reveal">표시 효과 사용</h2>
+
+<p>표시 애니메이션은 UI 요소 그룹을 표시하거나 숨길 때 사용자에게 시각적 연속성을 제공합니다.
+ {@link android.view.ViewAnimationUtils#createCircularReveal
+ViewAnimationUtils.createCircularReveal()} 메서드를 사용하면 클리핑 서클을 애니메이트하여 뷰를 표시하거나 숨길 수 있습니다.
+</p>
+
+<p>이 효과를 사용하여 이전에 보이지 않았던 뷰를 표시하려면:</p>
+
+<pre>
+// previously invisible view
+View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the final radius for the clipping circle
+int finalRadius = Math.max(myView.getWidth(), myView.getHeight());
+
+// create the animator for this view (the start radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius);
+
+// make the view visible and start the animation
+myView.setVisibility(View.VISIBLE);
+anim.start();
+</pre>
+
+<p>이 효과를 사용하여 이전에 보였던 뷰를 숨기려면:</p>
+
+<pre>
+// previously visible view
+final View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the initial radius for the clipping circle
+int initialRadius = myView.getWidth();
+
+// create the animation (the final radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, initialRadius, 0);
+
+// make the view invisible when the animation is done
+anim.addListener(new AnimatorListenerAdapter() {
+    &#64;Override
+    public void onAnimationEnd(Animator animation) {
+        super.onAnimationEnd(animation);
+        myView.setVisibility(View.INVISIBLE);
+    }
+});
+
+// start the animation
+anim.start();
+</pre>
+
+
+<h2 id="Transitions">사용자지정 액티비티 전환</h2>
+
+<!-- shared transition video -->
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay="">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.webm">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.ogv">
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <p class="img-caption" style="margin-top:3px;margin-bottom:10px"><strong>그림 1</strong> - 
+    공유 요소를 이용한 전환.</p>
+    <em>영화를 재생하려면 기기 화면을 클릭하세요.</em>
+  </div>
+</div>
+
+<p>머티리얼 디자인 앱의 액티비티 전환은 공통 요소 간의 모션 및 변환을 통해 서로 다른 상태 간에 시각적 연결을 제공합니다.
+ 들어가기 및 나가기 전환과 액티비티 간 공유 요소의 전환을 위한 사용자지정 애니메이션을 지정할 수 있습니다.
+</p>
+
+<ul>
+<li><strong>들어가기</strong> 전환은 액티비티에서 뷰가 장면 속으로 들어가는 방식을 결정합니다. 예를 들어, <em>explode</em> 들어가기 전환의 경우, 뷰가 밖에서 장면 속으로 들어가며 화면의 중앙으로 향합니다.
+
+</li>
+
+<li><strong>나가기</strong> 전환은 액티비티의 뷰가 장면을 나가는 방식을 결정합니다. 예를 들어, 나가기 전환으로 <em>explode</em>를 지정하면 뷰가 중앙에서부터 화면을 벗어납니다.
+
+</li>
+
+<li><strong>공유 요소</strong> 전환은 두 액티비티 간에 공유되는 뷰가 이 두 액티비티 간에 전환되는 방식을 결정합니다.
+ 예를 들어 두 액티비티에서 사용하는 동일한 이미지가 다른 위치에 있고 크기도 다를 경우, <em>changeImageTransform</em> 공유 요소 전환은 두 액티비티 간에 이미지를 매끄럽게 변환하고 배율을 조정합니다.
+
+</li>
+</ul>
+
+<p>Android 5.0(API 레벨 21)은 다음 들어가기 및 나가기 전환을 지원합니다.</p>
+
+<ul>
+<li><em>explode</em> - 뷰를 장면의 중앙에서 안이나 밖으로 이동합니다.</li>
+<li><em>slide</em> - 뷰를 장면의 가장자리 중 하나에서 안이나 밖으로 이동합니다.</li>
+<li><em>fade</em> - 불투명도를 변경하여 뷰를 추가하거나 장면에서 제거합니다.</li>
+</ul>
+
+<p>{@link android.transition.Visibility} 클래스를 확장하는 모든 전환은 들어가기 또는 나가기 전환으로 지원됩니다.
+ 자세한 내용은
+{@link android.transition.Transition} 클래스의 API 레퍼런스를 참조하세요.</p>
+
+<p>Android 5.0(API 레벨 21)은 다음의 공유 요소 전환도 지원합니다.</p>
+
+<ul>
+<li><em>changeBounds</em> - 대상 뷰의 레이아웃 경계에서 변경을 애니메이트합니다.</li>
+<li><em>changeClipBounds</em> - 대상 뷰의 클리핑 경계에서 변경을 애니메이트합니다.</li>
+<li><em>changeTransform</em> - 대상 뷰의 배율 및 회전 변경을 애니메이트합니다.</li>
+<li><em>changeImageTransform</em> - 대상 이미지의 크기 및 배율 변경을 애니메이트합니다.</li>
+</ul>
+
+<p>앱에서 액티비티 전환을 활성화할 경우, 들어가기 및 나가기 액티비티 간에 기본 크로스페이딩(cross-fading) 전환이 활성화됩니다.
+</p>
+
+<img src="{@docRoot}training/material/images/SceneTransition.png" alt="" width="600" height="405" style="margin-top:20px" />
+<p class="img-caption">
+  <strong>그림 2</strong> - 하나의 공유 요소로 장면 전환.
+</p>
+
+<h3>사용자지정 전환 지정</h3>
+
+<p>먼저 머티리얼 테마에서 상속하는 스타일을 정의할 때, <code>android:windowContentTransitions</code>
+특성을 통해 창 콘텐츠 전환을 활성화합니다. 들어가기, 나가기 및 공유 요소 전환도 스타일 정의에서 지정할 수 있습니다.
+</p>
+
+<pre>
+&lt;style name="BaseAppTheme" parent="android:Theme.Material">
+  &lt;!-- enable window content transitions -->
+  &lt;item name="android:windowContentTransitions">true&lt;/item>
+
+  &lt;!-- specify enter and exit transitions -->
+  &lt;item name="android:windowEnterTransition">@transition/explode&lt;/item>
+  &lt;item name="android:windowExitTransition">@transition/explode&lt;/item>
+
+  &lt;!-- specify shared element transitions -->
+  &lt;item name="android:windowSharedElementEnterTransition">
+    &#64;transition/change_image_transform&lt;/item>
+  &lt;item name="android:windowSharedElementExitTransition">
+    &#64;transition/change_image_transform&lt;/item>
+&lt;/style>
+</pre>
+
+<p>이 예에서 <code>change_image_transform</code> 전환은 다음과 같이 정의됩니다.</p>
+
+<pre>
+&lt;!-- res/transition/change_image_transform.xml -->
+&lt;!-- (see also Shared Transitions below) -->
+&lt;transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;changeImageTransform/>
+&lt;/transitionSet>
+</pre>
+
+<p><code>changeImageTransform</code> 요소는
+{@link android.transition.ChangeImageTransform} 클래스에 해당합니다. 자세한 내용은 {@link android.transition.Transition}의 API 레퍼런스를 참조하세요.
+</p>
+
+<p>코드에서 창 콘텐츠 전환을 활성화하려면
+{@link android.view.Window#requestFeature Window.requestFeature()} 메서드를 호출합니다.</p>
+
+<pre>
+// inside your activity (if you did not enable transitions in your theme)
+getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+
+// set an exit transition
+getWindow().setExitTransition(new Explode());
+</pre>
+
+<p>코드에서 전환을 지정하려면 {@link
+android.transition.Transition} 객체를 사용하여 다음과 같은 메서드를 호출합니다.</p>
+
+<ul>
+  <li>{@link android.view.Window#setEnterTransition Window.setEnterTransition()}</li>
+  <li>{@link android.view.Window#setExitTransition Window.setExitTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementEnterTransition
+      Window.setSharedElementEnterTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementExitTransition
+      Window.setSharedElementExitTransition()}</li>
+</ul>
+
+<p>{@link android.view.Window#setExitTransition setExitTransition()} 및 {@link
+android.view.Window#setSharedElementExitTransition setSharedElementExitTransition()} 메서드는 호출하는 액티비티의 나가기 전환을 정의합니다.
+ {@link android.view.Window#setEnterTransition
+setEnterTransition()} 및 {@link android.view.Window#setSharedElementEnterTransition
+setSharedElementEnterTransition()} 메서드는 호출되는 액티비티의 들어가기 전환을 정의합니다.</p>
+
+<p>전환 효과를 극대화하려면 호출하는 액티비티와 호출되는 액티비티 모두에서 창 콘텐츠 전환을 활성화해야 합니다.
+ 그렇지 않으면 호출하는 액티비티가 나가기 전환을 시작하지만, 배율 또는 페이드와 같은 창 전환이 나타납니다.
+</p>
+
+<p>들어가기 전환을 최대한 빨리 시작하려면 호출되는 액티비티에서 
+{@link android.view.Window#setAllowEnterTransitionOverlap Window.setAllowEnterTransitionOverlap()}
+ 메서드를 사용하세요. 그러면 더욱 인상적인 들어가기 전환이 가능합니다.</p>
+
+<h3>전환을 사용하여 액티비티 시작</h3>
+
+<p>전환을 활성화하고 액티비티에 대해 나가기 전환을 설정한 경우, 다음과 같이 다른 액티비티를 시작하면 전환이 활성화됩니다.
+</p>
+
+<pre>
+startActivity(intent,
+              ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
+</pre>
+
+<p>두 번째 액티비티에 대해 들어가기 전환을 설정한 경우, 액티비티가 시작되면 전환도 활성화됩니다.
+ 다른 액티비티를 시작할 때 전환을 비활성화하려면 <code>null</code> 옵션 번들을 제공하십시오.
+</p>
+
+<h3>공유 요소를 가진 액티비티 시작</h3>
+
+<p>공유 요소를 가진 두 액티비티 간에 화면 전환 애니메이션을 만들려면:</p>
+
+<ol>
+<li>테마에서 창 콘텐츠 전환을 활성화합니다.</li>
+<li>스타일에서 공유 요소 전환을 지정합니다.</li>
+<li>전환을 XML 리소스로 정의합니다.</li>
+<li>
+ <code>android:transitionName</code> 특성을 사용하여 두 레이아웃의 공유 요소에 공통 이름을 지정합니다.</li>
+<li>{@link android.app.ActivityOptions#makeSceneTransitionAnimation
+ActivityOptions.makeSceneTransitionAnimation()} 메서드를 사용합니다.</li>
+</ol>
+
+<pre>
+// get the element that receives the click event
+final View imgContainerView = findViewById(R.id.img_container);
+
+// get the common element for the transition in this activity
+final View androidRobotView = findViewById(R.id.image_small);
+
+// define a click listener
+imgContainerView.setOnClickListener(new View.OnClickListener() {
+    &#64;Override
+    public void onClick(View view) {
+        Intent intent = new Intent(this, Activity2.class);
+        // create the transition animation - the images in the layouts
+        // of both activities are defined with android:transitionName="robot"
+        ActivityOptions options = ActivityOptions
+            .makeSceneTransitionAnimation(this, androidRobotView, "robot");
+        // start the new activity
+        startActivity(intent, options.toBundle());
+    }
+});
+</pre>
+
+<p>코드에서 생성하는 공유된 동적 뷰의 경우, 
+{@link android.view.View#setTransitionName View.setTransitionName()} 메서드를 사용하여 두 액티비티의 공통 요소 이름을 지정합니다.
+</p>
+
+<p>두 번째 액티비티 종료 시, 장면 전환 애니메이션을 되돌리려면 {@link android.app.Activity#finish Activity.finish()} 대신
+{@link android.app.Activity#finishAfterTransition Activity.finishAfterTransition()}
+ 메서드를 호출합니다.</p>
+
+<h3>여러 공유 요소를 가진 액티비티 시작</h3>
+
+<p>2개 이상의 공유 요소를 가진 두 액티비티 간에 적용할 장면 전환 애니메이션을 만들려면 <code>android:transitionName</code>
+특성으로 (또는 두 액티비티에서{@link android.view.View#setTransitionName View.setTransitionName()} 메서드를 사용하여) 두 레이아웃의 공유 요소를 정의하고 다음과 같이 {@link android.app.ActivityOptions} 개체를 생성합니다.
+
+</p>
+
+<pre>
+ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(this,
+        Pair.create(view1, "agreedName1"),
+        Pair.create(view2, "agreedName2"));
+</pre>
+
+
+<h2 id="CurvedMotion">커브 모션 사용</h2>
+
+<p>머티리얼 디자인의 애니메이션은 시간 보간 및 공간 이동 패턴에서 커브를 사용합니다.
+ Android 5.0(API 레벨 21) 이상에서 애니메이션의 사용자지정 타이밍 커브 및 커브 모션 패턴을 정의할 수 있습니다.
+</p>
+
+<p>{@link android.view.animation.PathInterpolator} 클래스는 베지어 곡선 또는 {@link android.graphics.Path} 개체를 기반으로 하는 새 보간기입니다.
+ 이 보간기는 생성자 인수를 사용하여 지정된 기준점 (0,0) 및 (1,1)과 제어점으로 모션 커브를 1x1 정사각형 안에 지정합니다.
+
+ 또한 경로 보간기를 XML 리소스로 정의할 수도 있습니다.</p>
+
+<pre>
+&lt;pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
+    android:controlX1="0.4"
+    android:controlY1="0"
+    android:controlX2="1"
+    android:controlY2="1"/>
+</pre>
+
+<p>시스템은 머티리얼 디자인 사양에서 세 가지 기본 커브에 대한 XML 리소스를 제공합니다.
+</p>
+
+<ul>
+  <li><code>&#64;interpolator/fast_out_linear_in.xml</code></li>
+  <li><code>&#64;interpolator/fast_out_slow_in.xml</code></li>
+  <li><code>&#64;interpolator/linear_out_slow_in.xml</code></li>
+</ul>
+
+<p>{@link android.view.animation.PathInterpolator} 객체를 {@link
+android.animation.Animator#setInterpolator Animator.setInterpolator()} 메서드에 전달할 수 있습니다.</p>
+
+<p>{@link android.animation.ObjectAnimator} 클래스에는 한 번에 2개 이상의 속성을 사용하여 경로를 따라 좌표를 애니메이트할 수 있는 새 생성자가 있습니다.
+ 예를 들어 다음 애니메이터는 뷰의 X 및 Y 속성을 애니메이트하기 위해 {@link android.graphics.Path} 객체를 사용합니다.
+</p>
+
+<pre>
+ObjectAnimator mAnimator;
+mAnimator = ObjectAnimator.ofFloat(view, View.X, View.Y, path);
+...
+mAnimator.start();
+</pre>
+
+
+<h2 id="ViewState">뷰 상태 변경 애니메이트</h2>
+
+<p>{@link android.animation.StateListAnimator} 클래스를 사용하면 뷰의 상태가 변경될 때 실행되는 애니메이터를 정의할 수 있습니다.
+ 다음 예는 {@link
+android.animation.StateListAnimator}를 XML 리소스로 정의하는 방법을 보여줍니다.</p>
+
+<pre>
+&lt;!-- animate the translationZ property of a view when pressed -->
+&lt;selector xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;item android:state_pressed="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="@android:integer/config_shortAnimTime"
+        android:valueTo="2dp"
+        android:valueType="floatType"/>
+        &lt;!-- you could have other objectAnimator elements
+             here for "x" and "y", or other properties -->
+    &lt;/set>
+  &lt;/item>
+  &lt;item android:state_enabled="true"
+    android:state_pressed="false"
+    android:state_focused="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="100"
+        android:valueTo="0"
+        android:valueType="floatType"/>
+    &lt;/set>
+  &lt;/item>
+&lt;/selector>
+</pre>
+
+<p>사용자지정 뷰 상태 애니메이션을 뷰에 첨부하려면 이 예와 같이 XML 리소스 파일의 
+<code>selector</code> 요소를 사용하여 애니메이터를 정의한 후에 <code>android:stateListAnimator</code> 특성을 통해 뷰에 할당합니다.
+ 코드에서 뷰에 상태 목록 애니메이터를 할당하려면 {@link android.animation.AnimatorInflater#loadStateListAnimator
+AnimationInflater.loadStateListAnimator()} 메서드를 사용하고,
+{@link android.view.View#setStateListAnimator View.setStateListAnimator()} 메서드로 애니메이터를 뷰에 할당합니다.
+</p>
+
+<p>머티리얼 테마를 확장하는 테마의 경우, 버튼은 기본적으로 Z 애니메이션을 가집니다. 버튼에서 이러한 동작을 피하려면 <code>android:stateListAnimator</code> 특성을
+<code>@null</code>로 설정합니다.
+</p>
+
+<p>{@link android.graphics.drawable.AnimatedStateListDrawable} 클래스를 사용하면 연관된 뷰의 상태 변경 사이에 애니메이션을 보여주는 Drawable을 생성할 수 있습니다.
+ Android 5.0의 일부 시스템 위젯은 이러한 애니메이션을 기본적으로 사용합니다.
+ 다음 예는 {@link android.graphics.drawable.AnimatedStateListDrawable}를 XML 리소스로 정의하는 방법을 보여줍니다.
+</p>
+
+<pre>
+&lt;!-- res/drawable/myanimstatedrawable.xml -->
+&lt;animated-selector
+    xmlns:android="http://schemas.android.com/apk/res/android">
+
+    &lt;!-- provide a different drawable for each state-->
+    &lt;item android:id="@+id/pressed" android:drawable="@drawable/drawableP"
+        android:state_pressed="true"/>
+    &lt;item android:id="@+id/focused" android:drawable="@drawable/drawableF"
+        android:state_focused="true"/>
+    &lt;item android:id="@id/default"
+        android:drawable="@drawable/drawableD"/>
+
+    &lt;!-- specify a transition -->
+    &lt;transition android:fromId="@+id/default" android:toId="@+id/pressed">
+        &lt;animation-list>
+            &lt;item android:duration="15" android:drawable="@drawable/dt1"/>
+            &lt;item android:duration="15" android:drawable="@drawable/dt2"/>
+            ...
+        &lt;/animation-list>
+    &lt;/transition>
+    ...
+&lt;/animated-selector>
+</pre>
+
+
+<h2 id="AnimVector">벡터 드로어블 애니메이트</h2>
+
+<p><a href="{@docRoot}training/material/drawables.html#VectorDrawables">벡터 드로어블</a>은 정의를 잃지 않고 확대할 수 있습니다.
+ {@link android.graphics.drawable.AnimatedVectorDrawable}
+클래스를 사용하면 Vector Drawable의 속성을 애니메이트할 수 있습니다.</p>
+
+<p>일반적으로 애니메이트된 벡터 드로어블은 다음 3개의 XML 파일에서 정의합니다.</p>
+
+<ul>
+<li>
+<code>res/drawable/</code>의 <code>&lt;vector&gt;</code> 요소를 가진 벡터 드로어블</li>
+<li>
+<code>res/drawable/</code>의 <code>&lt;animated-vector&gt;</code> 요소를 가진 애니메이트된 벡터 드로어블</li>
+<li>
+<code>res/anim/</code>의 <code>&lt;objectAnimator&gt;</code> 요소를 가진 하나 이상의 객체 애니메이터</li>
+</ul>
+
+<p>애니메이트된 벡터 드로어블은 <code>&lt;group&gt;</code> 및
+<code>&lt;path&gt;</code> 요소의 특성을 애니메이트할 수 있습니다. <code>&lt;group&gt;</code> 요소는 경로 또는 하위 그룹 집합을 정의하며, <code>&lt;path&gt;</code> 요소는 그릴 경로를 정의합니다.
+</p>
+
+<p>애니메이트할 벡터 드로어블을 정의하는 경우, 애니메이터 정의에서 참조할 수 있도록 <code>android:name</code>
+특성을 사용하여 그룹 및 경로에 고유한 이름을 할당합니다.
+ 예:</p>
+
+<pre>
+&lt;!-- res/drawable/vectordrawable.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="64dp"
+    android:width="64dp"
+    android:viewportHeight="600"
+    android:viewportWidth="600">
+    &lt;group
+        <strong>android:name="rotationGroup"</strong>
+        android:pivotX="300.0"
+        android:pivotY="300.0"
+        android:rotation="45.0" >
+        &lt;path
+            <strong>android:name="v"</strong>
+            android:fillColor="#000000"
+            android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
+    &lt;/group>
+&lt;/vector>
+</pre>
+
+<p>애니메이트된 벡터 드로어블 정의는 벡터 드로어블의 그룹 및 경로를 이름으로 참조합니다.
+</p>
+
+<pre>
+&lt;!-- res/drawable/animvectordrawable.xml -->
+&lt;animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+  android:drawable="@drawable/vectordrawable" >
+    &lt;target
+        android:name="rotationGroup"
+        android:animation="@anim/rotation" />
+    &lt;target
+        android:name="v"
+        android:animation="@anim/path_morph" />
+&lt;/animated-vector>
+</pre>
+
+<p>애니메이션 정의는 {@link android.animation.ObjectAnimator} 또는 {@link
+android.animation.AnimatorSet} 객체를 나타냅니다. 이 예의 첫 번째 애니메이터는 대상 그룹을 360도 회전합니다.
+</p>
+
+<pre>
+&lt;!-- res/anim/rotation.xml -->
+&lt;objectAnimator
+    android:duration="6000"
+    android:propertyName="rotation"
+    android:valueFrom="0"
+    android:valueTo="360" />
+</pre>
+
+<p>두 번째 애니메이터는 벡터 드로어블의 경로를 다른 모양으로 모핑합니다.
+ 두 경로 모두 모핑이 가능해야 하며, 같은 수의 명령어와 각 명령어에 대해 같은 수의 매개변수가 있어야 합니다.
+</p>
+
+<pre>
+&lt;!-- res/anim/path_morph.xml -->
+&lt;set xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;objectAnimator
+        android:duration="3000"
+        android:propertyName="pathData"
+        android:valueFrom="M300,70 l 0,-70 70,70 0,0   -70,70z"
+        android:valueTo="M300,70 l 0,-70 70,0  0,140 -70,0 z"
+        android:valueType="pathType" />
+&lt;/set>
+</pre>
+
+<p>자세한 내용은 {@link
+android.graphics.drawable.AnimatedVectorDrawable}의 API 레퍼런스를 참조하세요.</p>
diff --git a/docs/html-intl/intl/ko/training/material/compatibility.jd b/docs/html-intl/intl/ko/training/material/compatibility.jd
new file mode 100644
index 0000000..266cd7c
--- /dev/null
+++ b/docs/html-intl/intl/ko/training/material/compatibility.jd
@@ -0,0 +1,168 @@
+page.title=호환성 유지
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>이 과정에서 다루는 내용</h2>
+<ol>
+  <li><a href="#Theme">대체 스타일 정의</a></li>
+  <li><a href="#Layouts">대체 레이아웃 제공</a></li>
+  <li><a href="#SupportLib">지원 라이브러리 사용</a></li>
+  <li><a href="#CheckVersion">시스템 버전 확인</a></li>
+</ol>
+<h2>필독 항목</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">머티리얼 디자인 사양</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android의 머티리얼 디자인</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>머티리얼 테마 및 사용자지정 액티비티 전환과 같은 일부 머티리얼 디자인 기능은 Android 5.0(API 레벨 21) 이상에서만 이용할 수 있습니다.
+ 그러나 머티리얼 디자인을 지원하는 기기에서 실행할 경우 이러한 기능을 사용하면서도 이전 버전의 Android를 실행하는 기기와도 호환되도록 앱을 디자인할 수 있습니다.
+
+</p>
+
+
+<h2 id="Theme">대체 스타일 정의</h2>
+
+<p>머티리얼 테마를 지원하는 기기에서 해당 테마를 사용하고, 이전 버전의 Android를 실행하는 기기에서 구버전의 테마로 되돌리도록 앱을 구성할 수 있습니다.
+</p>
+
+<ol>
+<li>
+<code>res/values/styles.xml</code>에서 구버전의 테마에서 상속된 테마(Holo 등)를 정의합니다.</li>
+<li>
+<code>res/values-v21/styles.xml</code>에서 머티리얼 테마에서 상속된, 같은 이름을 가진 테마를 정의합니다.</li>
+<li>매니페스트 파일에서 이 테마를 앱의 테마로 설정합니다.</li>
+</ol>
+
+<p class="note"><strong>참고:</strong>
+앱이 머티리얼 테마를 사용하지만 이러한 방식으로 대체 테마를 제공하지 않으면 Android 5.0 이전 버전에서는 앱이 실행되지 않습니다.
+
+</p>
+
+
+<h2 id="Layouts">대체 레이아웃 제공</h2>
+
+<p>머티리얼 디자인 지침에 따라 디자인한 레이아웃이 Android 5.0(API 레벨 21)에서 새로 도입된 XML 특성을 사용하지 않는 경우, 해당 레이아웃은 이전 버전의 Android에서 실행됩니다.
+
+ 그렇지 않은 경우 대체 레이아웃을 제공할 수 있습니다. 또한 이전 버전의 Android에서 앱이 표시되는 방식을 사용자가 지정할 수 있는 대체 레이아웃을 제공할 수도 있습니다.
+</p>
+
+<p><code>res/layout-v21/</code> 안에서 Android 5.0(API 레벨 21)의 레이아웃 파일을 생성하고, <code>res/layout/</code> 안에서 이전 버전의 Android를 위한 대체 레이아웃 파일을 생성합니다.
+예를 들어, <code>res/layout/my_activity.xml</code>은
+<code>res/layout-v21/my_activity.xml</code>의 대체 레이아웃입니다.
+</p>
+
+<p>코드의 중복을 피하기 위해 <code>res/values/</code> 안에서 스타일을 정의하고, 새 API에 대해 <code>res/values-v21/</code>에서 스타일을 수정하고, 스타일 상속을 사용하여 <code>res/values/</code>에서 기본 스타일을 정의하고 <code>res/values-v21/</code>에서 해당 스타일로부터 상속합니다.
+
+</p>
+
+
+<h2 id="SupportLib">지원 라이브러리 사용</h2>
+
+<p><a href="{@docRoot}tools/support-library/features.html#v7">v7 Support Libraries</a>
+ r21 이상에는 다음과 같은 머티리얼 디자인 기능이 포함되어 있습니다.</p>
+
+<ul>
+<li><code>Theme.AppCompat</code> 테마 중 하나를 적용할 때 일부 시스템 위젯에
+대한 <a href="{@docRoot}training/material/theme.html">머티리얼 디자인 스타일</a></li>
+<li><code>Theme.AppCompat</code> 테마의 <a href="{@docRoot}training/material/theme.html#ColorPalette">색상표 테마 특성</a>
+</li>
+<li><a href="{@docRoot}training/material/lists-cards.html#RecyclerView">데이터 컬렉션 표시</a>를 위한 {@link android.support.v7.widget.RecyclerView} 위젯
+</li>
+<li><a href="{@docRoot}training/material/lists-cards.html#CardView">카드 생성</a>을 위한 {@link android.support.v7.widget.CardView} 위젯</li>
+<li><a href="{@docRoot}training/material/drawables.html#ColorExtract">이미지에서 주요 색상을 추출</a>하기 위한 {@link android.support.v7.graphics.Palette} 클래스
+</li>
+</ul>
+
+<h3>시스템 위젯</h3>
+
+<p><code>Theme.AppCompat</code> 테마는 다음 위젯에 대한 머티리얼 디자인 스타일을 제공합니다.</p>
+
+<ul>
+  <li>{@link android.widget.EditText}</li>
+  <li>{@link android.widget.Spinner}</li>
+  <li>{@link android.widget.CheckBox}</li>
+  <li>{@link android.widget.RadioButton}</li>
+  <li>{@link android.support.v7.widget.SwitchCompat}</li>
+  <li>{@link android.widget.CheckedTextView}</li>
+</ul>
+
+<h3>색상표</h3>
+
+<p>Android v7 지원 라이브러리에서 머티리얼 디자인 스타일을 가져와서 색상표를 사용자지정하려면 <code>Theme.AppCompat</code> 테마 중 하나를 적용합니다.
+</p>
+
+<pre>
+&lt;!-- extend one of the Theme.AppCompat themes -->
+&lt;style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
+    &lt;!-- customize the color palette -->
+    &lt;item name="colorPrimary">@color/material_blue_500&lt;/item>
+    &lt;item name="colorPrimaryDark">@color/material_blue_700&lt;/item>
+    &lt;item name="colorAccent">@color/material_green_A200&lt;/item>
+&lt;/style>
+</pre>
+
+<h3>목록 및 카드</h3>
+
+<p>{@link android.support.v7.widget.RecyclerView} 및 {@link
+android.support.v7.widget.CardView} 위젯은 Android v7 지원 라이브러리를 통해 이전 버전의 Android에서 사용할 수 있지만, 다음과 같은 제약이 있습니다.
+</p>
+<ul>
+<li>{@link android.support.v7.widget.CardView}는 추가 패딩을 사용하여 프로그래밍 방식의 그림자 구현으로 환원됩니다.
+</li>
+<li>{@link android.support.v7.widget.CardView}는 둥근 모서리와 교차하는 하위 뷰를 클리핑하지 않습니다.
+</li>
+</ul>
+
+
+<h3>종속 사항</h3>
+
+<p>Android 5.0(API 레벨 21) 이전 버전에서 이러한 기능을 사용하려면 프로젝트에 Android v7 지원 라이브러리를 <a href="{@docRoot}/sdk/installing/studio-build.html#dependencies">Gradle 종속 사항</a>으로 포함합니다.
+</p>
+
+<pre>
+dependencies {
+    compile 'com.android.support:appcompat-v7:21.0.+'
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
+
+
+<h2 id="CheckVersion">시스템 버전 확인</h2>
+
+<p>다음 기능은 Android 5.0(API 레벨 21) 이상에서만 사용할 수 있습니다.</p>
+
+<ul>
+<li>액티비티 전환</li>
+<li>터치 피드백</li>
+<li>애니메이션 표시</li>
+<li>경로기반 애니메이션</li>
+<li>벡터 드로어블</li>
+<li>드로어블 색조 적용</li>
+</ul>
+
+<p>이전 버전 Android와 호환성을 유지하려면, 이러한 기능을 위한 API를 호출하기 전에 런타임에 시스템 {@link
+android.os.Build.VERSION#SDK_INT version}을 확인하세요.
+</p>
+
+<pre>
+// Check if we're running on Android 5.0 or higher
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+    // Call some material design APIs here
+} else {
+    // Implement this feature without material design
+}
+</pre>
+
+<p class="note"><strong>참고:</strong> 앱에서 어떤 버전의 Android를 지원할지 지정하려면 매니페스트 파일에서 <code>android:minSdkVersion</code> 및 <code>android:targetSdkVersion</code>
+특성을 사용하세요.
+ Android 5.0에서 머티어리얼 디자인 기능을 사용하려면 <code>android:targetSdkVersion</code> 특성을 <code>21</code>로 설정하세요.
+ 자세한 내용은 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt; API 가이드</a>를 참조하세요.
+
+</p>
diff --git a/docs/html-intl/intl/ko/training/material/drawables.jd b/docs/html-intl/intl/ko/training/material/drawables.jd
new file mode 100644
index 0000000..18d5bf8
--- /dev/null
+++ b/docs/html-intl/intl/ko/training/material/drawables.jd
@@ -0,0 +1,126 @@
+page.title=드로어블 사용
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>이 과정에서 다루는 내용</h2>
+<ol>
+  <li><a href="#DrawableTint">드로어블 리소스 색조 적용</a></li>
+  <li><a href="#ColorExtract">이미지에서 주요 색상 추출</a></li>
+  <li><a href="#VectorDrawables">벡터 드로어블 생성</a></li>
+</ol>
+<h2>필독 항목</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">머티리얼 디자인 사양</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android의 머티리얼 디자인</a></li>
+</ul>
+</div>
+</div>
+
+<p>드로어블의 다음 기능은 앱에서 머티리얼 디자인을 구현하는 데 도움이 됩니다.</p>
+
+<ul>
+<li>드로어블 색조 적용</li>
+<li>주요 색상 추출</li>
+<li>벡터 드로어블</li>
+</ul>
+
+<p>이 과정은 앱에서 이러한 기능을 사용하는 방법을 보여줍니다.</p>
+
+
+<h2 id="DrawableTint">드로어블 리소스 색조 적용</h2>
+
+<p>Android 5.0(API 레벨 21) 이상에서는 알파 마스크로 정의된 비트맵 및 나인패치에 색조를 적용할 수 있습니다.
+ 색상 리소스 또는 색상 리소스로 변환되는 테마 특성(예: <code>?android:attr/colorPrimary</code>)을 사용하여 색조를 적용할 수 있습니다.
+ 일반적으로 이러한 자산은 한 번만 생성하며 자동으로 채색되어 테마와 일치하게 됩니다.
+</p>
+
+<p>{@code setTint()} 메서드를 사용하여 {@link android.graphics.drawable.BitmapDrawable} 또는 {@link
+android.graphics.drawable.NinePatchDrawable} 객체에 색조를 적용할 수 있습니다. 또한
+<code>android:tint</code> 및 <code>android:tintMode</code> 특성으로 레이아웃에 색조 색상과 모드를 설정할 수 있습니다.
+</p>
+
+
+<h2 id="ColorExtract">이미지에서 주요 색상 추출</h2>
+
+<p>Android 지원 라이브러리 r21 이상에는 이미지에서 주요 색상을 추출할 수 있는 {@link
+android.support.v7.graphics.Palette} 클래스가 있습니다. 이 클래스는 다음과 같은 주요 색상을 추출합니다.
+</p>
+
+<ul>
+<li>생생한 색상</li>
+<li>생생한 어두운 색상</li>
+<li>생생한 밝은 색상</li>
+<li>차분한 색상</li>
+<li>차분하고 어두운 색상</li>
+<li>차분하고 밝은 색상</li>
+</ul>
+
+<p>이러한 색상을 추출하려면, 이미지를 불러올 배경 스레드에서
+{@link android.support.v7.graphics.Palette#generate Palette.generate()} 정적 메서드로 {@link android.graphics.Bitmap} 객체를 전달합니다.
+ 스레드를 사용할 수 없는 경우, 대신
+{@link android.support.v7.graphics.Palette#generateAsync Palette.generateAsync()} 메서드를 호출하고 Listener를 제공합니다.
+</p>
+
+<p><code>Palette.getVibrantColor</code>와 같은
+<code>Palette</code> 클래스의 getter 메서드를 사용하여 이미지에서 주요 색상을 추출할 수 있습니다.</p>
+
+<p>프로젝트에서 {@link android.support.v7.graphics.Palette} 클래스를 사용하려면 다음
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Gradle 종속 사항을</a>를 앱의 모듈에 추가합니다.
+</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:palette-v7:21.0.0'
+}
+</pre>
+
+<p>자세한 내용은 {@link android.support.v7.graphics.Palette}
+클래스의 API 레퍼런스를 참조하세요.</p>
+
+
+<h2 id="VectorDrawables">벡터 드로어블 생성</h2>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=wlFVIIstKmA" style="margin-top:18px">
+<div>
+    <h3>비디오</h3>
+    <p>Android 벡터 그래픽</p>
+</div>
+</a>
+
+<p>Android 5.0(API 레벨 21) 이상에서는 정의를 잃지 않고 배율을 조정하는 벡터 드로어블을 정의할 수 있습니다.
+ 비트맵 이미지의 경우 각 화면 밀도마다 자산 파일이 필요한 반면, 벡터 이미지의 경우에는 하나의 자산 파일만 필요합니다.
+ 벡터 이미지를 생성하려면 <code>&lt;vector&gt;</code> XML 요소 안에 모양의 세부정보를 정의합니다.
+</p>
+
+<p>다음 예에서는 하트 모양을 가진 벡터 이미지를 정의합니다.</p>
+
+<pre>
+&lt;!-- res/drawable/heart.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    &lt;!-- intrinsic size of the drawable -->
+    android:height="256dp"
+    android:width="256dp"
+    &lt;!-- size of the virtual canvas -->
+    android:viewportWidth="32"
+    android:viewportHeight="32">
+
+  &lt;!-- draw a path -->
+  &lt;path android:fillColor="#8fff"
+      android:pathData="M20.5,9.5
+                        c-1.955,0,-3.83,1.268,-4.5,3
+                        c-0.67,-1.732,-2.547,-3,-4.5,-3
+                        C8.957,9.5,7,11.432,7,14
+                        c0,3.53,3.793,6.257,9,11.5
+                        c5.207,-5.242,9,-7.97,9,-11.5
+                        C25,11.432,23.043,9.5,20.5,9.5z" />
+&lt;/vector>
+</pre>
+
+<p>벡터 이미지는 Android에서 {@link android.graphics.drawable.VectorDrawable}
+객체로 나타납니다. <code>pathData</code> 구문에 대한 자세한 내용은 <a href="http://www.w3.org/TR/SVG11/paths.html#PathData">SVG Path reference</a>를 참조하세요. 벡터 드로어블의 속성 애니메이트에 대한 자세한 내용은
+<a href="{@docRoot}training/material/animations.html#AnimVector">벡터 드로어블 애니메이트</a>를 참조하세요.
+</p>
diff --git a/docs/html-intl/intl/ko/training/material/get-started.jd b/docs/html-intl/intl/ko/training/material/get-started.jd
new file mode 100644
index 0000000..be1fca2
--- /dev/null
+++ b/docs/html-intl/intl/ko/training/material/get-started.jd
@@ -0,0 +1,171 @@
+page.title=시작하기
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>이 과정에서 다루는 내용</h2>
+<ol>
+  <li><a href="#ApplyTheme">머티리얼 테마 적용</a></li>
+  <li><a href="#Layouts">레이아웃 디자인</a></li>
+  <li><a href="#Depth">뷰에서 엘리베이션 지정</a></li>
+  <li><a href="#ListsCards">목록 및 카드 생성</a></li>
+  <li><a href="#Animations">애니메이션 사용자지정</a></li>
+</ol>
+<h2>필독 항목</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">머티리얼 디자인 사양</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android의 머티리얼 디자인</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>머티리얼 디자인으로 앱을 생성하려면:</p>
+
+<ol>
+  <li style="margin-bottom:10px">
+    <a href="http://www.google.com/design/spec">머티리얼 디자인 사양</a>을 검토합니다.</li>
+  <li style="margin-bottom:10px">
+    앱에 머티리얼 <strong>테마</strong>를 적용합니다.</li>
+  <li style="margin-bottom:10px">
+    머티리얼 디자인 지침에 따라 <strong>레이아웃</strong>을 생성합니다.</li>
+  <li style="margin-bottom:10px">
+    그림자를 드리우기 위한 뷰의 <strong>엘리베이션</strong>을 지정합니다.</li>
+  <li style="margin-bottom:10px">
+    목록 및 카드에는 시스템 <strong>위젯</strong>을 사용합니다.</li>
+  <li style="margin-bottom:10px">
+    앱에서 <strong>애니메이션</strong>을 사용자지정합니다.</li>
+</ol>
+
+<h3>이전 버전과의 호환성 유지</h3>
+
+<p>Android 5.0 이전 버전과의 호환성을 유지하면서 다양한 머티리얼 디자인 기능을 앱에 추가할 수 있습니다.
+ 자세한 내용은
+<a href="{@docRoot}training/material/compatibility.html">호환성 유지</a>를 참조하세요.</p>
+
+<h3>머티리얼 디자인으로 앱 업데이트</h3>
+
+<p>머티리얼 디자인을 통합하기 위해 기존 앱을 업데이트하려면 머티리얼 디자인 지침에 따라 레이아웃을 업데이트하세요.
+ 또한 깊이, 터치 피드백, 애니메이션도 통합하세요.
+</p>
+
+<h3>머티리얼 디자인으로 새 앱 생성</h3>
+
+<p>머티리얼 디자인 기능으로 새 앱을 생성하는 경우, <a href="http://www.google.com/design/spec">머티리얼 디자인 지침</a>은 효율적인 디자인 프레임워크를 제공합니다.
+ 앱 디자인 및 개발 시 이 지침을 따르고 Android 프레임워크의 새로운 기능을 사용하세요.
+</p>
+
+
+<h2 id="ApplyTheme">머티리얼 테마 적용</h2>
+
+<p>머티리얼 테마를 앱에 적용하려면
+<code>android:Theme.Material</code>에서 상속하는 스타일을 지정합니다.</p>
+
+<pre>
+&lt;!-- res/values/styles.xml -->
+&lt;resources>
+  &lt;!-- your theme inherits from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- theme customizations -->
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<p>머티리얼 테마는 터치 피드백 및 액티비티 전환을 위한 색상표 및 기본 애니메이션을 설정할 수 있는 업데이트된 시스템 위젯을 제공합니다.
+ 자세한 내용은
+<a href="{@docRoot}training/material/theme.html">머티리얼 테마 사용</a>을 참조하세요.</p>
+
+
+<h2 id="Layouts">레이아웃 디자인</h2>
+
+<p>머티리얼 테마를 적용하고 사용자지정하는 것과 더불어, 레이아웃이 <a href="http://www.google.com/design/spec">머티리얼 디자인 지침</a>을 따라야 합니다.
+ 레이아웃 디자인 시 다음 사항에 특히 주의하세요.
+</p>
+
+<ul>
+<li>기준선 그리드</li>
+<li>키라인</li>
+<li>간격</li>
+<li>터치 대상 크기</li>
+<li>레이아웃 구조</li>
+</ul>
+
+
+<h2 id="Depth">뷰에서 엘리베이션 지정</h2>
+
+<p>뷰는 그림자를 드리울 수 있으며 뷰의 엘리베이션 값은 그림자 크기 및 그리는 순서를 결정합니다.
+ 뷰의 엘리베이션을 설정하려면 레이아웃에서
+<code>android:elevation</code> 특성을 사용하세요.</p>
+
+<pre>
+&lt;TextView
+    android:id="&#64;+id/my_textview"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="&#64;string/next"
+    android:background="&#64;color/white"
+    android:elevation="5dp" />
+</pre>
+
+<p>새 <code>translationZ</code> 속성을 사용하여 뷰 엘리베이션의 일시적 변경을 반영하는 애니메이션을 생성할 수 있습니다.
+ 엘리베이션 변경은
+<a href="{@docRoot}training/material/animations.html#ViewState">터치
+제스처에 반응</a>할 때 유용하게 쓰일 수 있습니다.</p>
+
+<p>자세한 내용은 <a href="{@docRoot}training/material/shadows-clipping.html">그림자 정의 및 뷰 클리핑</a>을 참조하세요.
+</p>
+
+
+<h2 id="ListsCards">목록 및 카드 생성</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView}는 {@link
+android.widget.ListView}의 플러그 기능이 개선된 버전으로, 다양한 레이아웃 유형을 지원하고 향상된 성능을 제공합니다.
+{@link android.support.v7.widget.CardView}를 사용하면 모든 앱에서 일관된 모습으로 카드 안의 정보를 표시할 수 있습니다.
+ 다음 코드 예는 {@link android.support.v7.widget.CardView}를 레이아웃에
+포함시키는 방법을 보여줍니다.</p>
+
+<pre>
+&lt;android.support.v7.widget.CardView
+    android:id="&#64;+id/card_view"
+    android:layout_width="200dp"
+    android:layout_height="200dp"
+    card_view:cardCornerRadius="3dp">
+    ...
+&lt;/android.support.v7.widget.CardView>
+</pre>
+
+<p>자세한 내용은 <a href="{@docRoot}training/material/lists-cards.html">목록 및 카드 생성</a>을 참조하세요.
+</p>
+
+
+<h2 id="Animations">애니메이션 사용자지정</h2>
+
+<p>Android 5.0(API 레벨 21)에는 앱에서 사용자지정 애니메이션 생성을 위한 새 API가 포함되어 있습니다. 예를 들어, 액티비티 전환을 활성화하고 액티비티 내부에서 나가기 전환을 정의할 수 있습니다.
+
+</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // enable transitions
+        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+        setContentView(R.layout.activity_my);
+    }
+
+    public void onSomeButtonClicked(View view) {
+        getWindow().setExitTransition(new Explode());
+        Intent intent = new Intent(this, MyOtherActivity.class);
+        startActivity(intent,
+                      ActivityOptions
+                          .makeSceneTransitionAnimation(this).toBundle());
+    }
+}
+</pre>
+
+<p>이 액티비티에서 다른 액티비티를 시작하면 나가기 전환이 활성화됩니다.</p>
+
+<p>새 애니메이션 API에 대한 자세한 내용은 <a href="{@docRoot}training/material/animations.html">사용자지정 애니메이션 정의</a>를 참조하세요.</p>
diff --git a/docs/html-intl/intl/ko/training/material/index.jd b/docs/html-intl/intl/ko/training/material/index.jd
new file mode 100644
index 0000000..3dfb514
--- /dev/null
+++ b/docs/html-intl/intl/ko/training/material/index.jd
@@ -0,0 +1,61 @@
+page.title=개발자를 위한 머티리얼 디자인
+page.type=design
+page.image=images/cards/material_2x.png
+page.metaDescription=Learn how to apply material design to your apps.
+
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>종속 사항 및 전제조건</h2>
+  <ul>
+    <li>Android 5.0(API 레벨 21)</li>
+  </ul>
+</div>
+</div>
+
+<p>머티리얼 디자인은 플랫폼 및 기기 전반의 표현 방식, 모션 및 상호 작용 디자인에 대한 종합적인 지침입니다.
+ Android 앱에서 머티리얼 디자인을 사용하려면
+<a href="http://www.google.com/design/spec/material-design/introduction.html">머티리얼 디자인 사양</a>에 설명된 지침을 따르고 Android 5.0(API 레벨 21)에서 제공되는 새 구성 요소 및 기능들을 활용하세요.
+
+
+</p>
+
+<p>이 클래스에서는 다음 요소를 사용하여 머티리얼 디자인 앱을 만드는 방법을 보여줍니다.</p>
+
+<ul>
+<li>머티리얼 테마</li>
+<li>목록 및 카드용 위젯</li>
+<li>사용자지정 그림자 및 뷰 클리핑</li>
+<li>벡터 드로어블</li>
+<li>사용자지정 애니메이션</li>
+</ul>
+
+<p>또한 이 클래스에서는 앱에서 머티리얼 디자인 기능을 사용할 때
+Android 5.0(API 레벨 21) 이전 버전과의 호환성을 유지하는 방법도 배웁니다.</p>
+
+<h2>과정</h2>
+
+<dl>
+  <dt><a href="{@docRoot}training/material/get-started.html">시작하기</a></dt>
+  <dd>머티리얼 디자인 기능을 사용하여 앱을 업데이트하는 방법을 배웁니다.</dd>
+
+  <dt><a href="{@docRoot}training/material/theme.html">머티리얼 테마 사용</a></dt>
+  <dd>앱에 머티리얼 디자인 스타일을 적용하는 방법을 배웁니다.</dd>
+
+  <dt><a href="{@docRoot}training/material/lists-cards.html">목록 및 카드 생성</a></dt>
+  <dd>시스템 위젯을 사용하여 일관된 모양과 느낌을 가진 목록과 카드를 만드는 방법을 배웁니다.</dd>
+
+  <dt><a href="{@docRoot}training/material/shadows-clipping.html">그림자 정의 및 뷰 클리핑</a></dt>
+  <dd>뷰에 대한 엘리베이션을 설정하여 사용자지정 그림자를 생성하는 방법과 뷰를 클리핑하는 방법을 배웁니다.</dd>
+
+  <dt><a href="{@docRoot}training/material/drawables.html">드로어블 사용</a></dt>
+  <dd>벡터 드로어블을 생성하는 방법과 드로어블 리소스를 채색하는 방법을 배웁니다.</dd>
+
+  <dt><a href="{@docRoot}training/material/animations.html">사용자지정 애니메이션 정의</a></dt>
+  <dd>공유 요소를 사용하여 뷰 및 액티비티 전환을 위한 사용자지정 애니메이션을 생성하는 방법을 배웁니다.</dd>
+
+  <dt><a href="{@docRoot}training/material/compatibility.html">호환성 유지</a></dt>
+  <dd>Android 5.0 이전 버전 플랫폼과의 호환성을 유지하는 방법을 배웁니다.</dd>
+</dl>
diff --git a/docs/html-intl/intl/ko/training/material/lists-cards.jd b/docs/html-intl/intl/ko/training/material/lists-cards.jd
new file mode 100644
index 0000000..28fdf22
--- /dev/null
+++ b/docs/html-intl/intl/ko/training/material/lists-cards.jd
@@ -0,0 +1,266 @@
+page.title=목록 및 카드 생성
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>이 과정에서 다루는 내용</h2>
+<ol>
+  <li><a href="#RecyclerView">목록 생성</a></li>
+  <li><a href="#CardView">카드 생성</a></li>
+  <li><a href="#Dependencies">종속 사항 추가</a></li>
+</ol>
+<h2>필독 항목</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">머티리얼 디자인 사양</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android의 머티리얼 디자인</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>앱에서 머티리얼 디자인 스타일로 복잡한 목록과 카드를 생성하려면
+{@link android.support.v7.widget.RecyclerView} 및 {@link android.support.v7.widget.CardView}
+위젯을 사용하세요.</p>
+
+
+<h2 id="RecyclerView">목록 생성</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} 위젯은 {@link android.widget.ListView}의 더욱 향상되고 유연해진 버전입니다.
+ 이 위젯은 한정된 수의 뷰를 유지함으로써 매우 효율적으로 스크롤할 수 있는 큰 데이터 집합을 표시하기 위한 컨테이너입니다.
+ 사용자 작업 또는 네트워크 이벤트에 따라 런타임에 요소가 변경되는 데이터 컬렉션이 있는 경우
+{@link android.support.v7.widget.RecyclerView} 위젯을 사용하세요.
+</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} 클래스는 다음 기능을 제공하여 큰 데이터 집합의 표시 및 취급 작업을 단순화합니다.
+</p>
+
+<ul>
+  <li>항목 위치 지정을 위한 레이아웃 관리자</li>
+  <li>항목 제거 및 추가와 같은 공통 항목 작업을 위한 기본 애니메이션</li>
+</ul>
+
+<p>또한 필요에 따라 {@link
+android.support.v7.widget.RecyclerView} 위젯을 위한 사용자지정 레이아웃 관리자 및 애니메이션을 정의할 수도 있습니다.</p>
+
+<img src="{@docRoot}training/material/images/RecyclerView.png" alt="" width="550" height="106" />
+<p class="img-caption">
+<strong>그림 1</strong>. <code>RecyclerView</code> 위젯.
+</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} 위젯을 사용하려면 어댑터와 레이아웃 관리자를 지정해야 합니다.
+ 어댑터를 생성하려면 {@link
+android.support.v7.widget.RecyclerView.Adapter RecyclerView.Adapter} 클래스를 확장하세요. 구현 세부사항은 데이터 집합의 사양 및 뷰 유형에 의해 결정됩니다.
+ 자세한 내용은 아래의 <a href="#RVExamples">예</a>를 참조하세요.
+</p>
+
+<div style="float:right">
+<img src="{@docRoot}design/material/images/list_mail.png" alt="" width="250" height="426" />
+<p class="img-caption" style="margin-left:8px">
+<strong>그림 2</strong> - <code>RecyclerView</code>를 사용한 목록.
+</p>
+</div>
+
+<p><strong>레이아웃 관리자</strong>는 항목 뷰를 {@link
+android.support.v7.widget.RecyclerView}내에 배치하고, 사용자에게는 더 이상 보이지 않는 항목 뷰를 언제 재사용할지 결정합니다.
+ 뷰를 재사용 (또는 <em>재활용</em>)하기 위해, 레이아웃 관리자는 어댑터에게 뷰의 콘텐츠를 데이터 집합의 다른 요소로 교체하도록 요청할 수 있습니다.
+ 이런 방식으로 뷰를 재활용하면 불필요한 뷰 생성이나 리소스를 많이 소모하는 {@link android.app.Activity#findViewById findViewById()} 조회를 수행하지 않아도 되므로 성능이 개선됩니다.
+
+</p>
+
+<p>{@link android.support.v7.widget.RecyclerView}는 다음과 같은 내장 레이아웃 관리자를 제공합니다.</p>
+
+<ul>
+<li>{@link android.support.v7.widget.LinearLayoutManager}는 항목을 가로 또는 세로 스크롤 목록으로 표시합니다.
+</li>
+<li>{@link android.support.v7.widget.GridLayoutManager}는 그리드 형식으로 항목을 표시합니다.</li>
+<li>{@link android.support.v7.widget.StaggeredGridLayoutManager}는 지그재그형의 그리드 형식으로 항목을 표시합니다.</li>
+</ul>
+
+<p>사용자지정 레이아웃 관리자를 생성하려면 {@link
+android.support.v7.widget.RecyclerView.LayoutManager RecyclerView.LayoutManager} 클래스를 확장하십시오.</p>
+
+<h3>애니메이션</h3>
+
+<p>항목 추가 및 제거를 위한 애니메이션은 {@link
+android.support.v7.widget.RecyclerView}에서 기본적으로 활성화됩니다. 이러한 애니메이션을 사용자지정하려면
+{@link android.support.v7.widget.RecyclerView.ItemAnimator RecyclerView.ItemAnimator} 클래스를
+확장하고 {@link android.support.v7.widget.RecyclerView#setItemAnimator RecyclerView.setItemAnimator()}
+메서드를 사용하세요.</p>
+
+<h3 id="RVExamples">예:</h3>
+
+<p>다음 코드 예는
+{@link android.support.v7.widget.RecyclerView}를 레이아웃에 추가하는 방법을 보여줍니다.</p>
+
+<pre>
+&lt;!-- A RecyclerView with some commonly used attributes -->
+&lt;android.support.v7.widget.RecyclerView
+    android:id="@+id/my_recycler_view"
+    android:scrollbars="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
+</pre>
+
+<p>{@link android.support.v7.widget.RecyclerView} 위젯을 레이아웃에 추가한 후, 객체 핸들을 얻어 레이아웃 관리자에 연결하고, 표시할 데이터의 어댑터를 첨부합니다.
+
+</p>
+
+<pre>
+public class MyActivity extends Activity {
+    private RecyclerView mRecyclerView;
+    private RecyclerView.Adapter mAdapter;
+    private RecyclerView.LayoutManager mLayoutManager;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.my_activity);
+        mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);
+
+        // use this setting to improve performance if you know that changes
+        // in content do not change the layout size of the RecyclerView
+        mRecyclerView.setHasFixedSize(true);
+
+        // use a linear layout manager
+        mLayoutManager = new LinearLayoutManager(this);
+        mRecyclerView.setLayoutManager(mLayoutManager);
+
+        // specify an adapter (see also next example)
+        mAdapter = new MyAdapter(myDataset);
+        mRecyclerView.setAdapter(mAdapter);
+    }
+    ...
+}
+</pre>
+
+<p>어댑터는 데이터 집합의 항목에 액세스할 수 있게 해주며, 항목 뷰를 생성하고, 원래의 항목이 더 이상 보이지 않을 경우 일부 뷰의 콘텐츠를 새 데이터 항목으로 교체합니다.
+
+ 다음 코드 예는 {@link android.widget.TextView} 위젯을 사용하여 표시된 문자열 배열로 이루어진 데이터 집합의 간단한 구현을 보여줍니다.
+</p>
+
+<pre>
+public class MyAdapter extends RecyclerView.Adapter&lt;MyAdapter.ViewHolder> {
+    private String[] mDataset;
+
+    // Provide a reference to the views for each data item
+    // Complex data items may need more than one view per item, and
+    // you provide access to all the views for a data item in a view holder
+    public static class ViewHolder extends RecyclerView.ViewHolder {
+        // each data item is just a string in this case
+        public TextView mTextView;
+        public ViewHolder(TextView v) {
+            super(v);
+            mTextView = v;
+        }
+    }
+
+    // Provide a suitable constructor (depends on the kind of dataset)
+    public MyAdapter(String[] myDataset) {
+        mDataset = myDataset;
+    }
+
+    // Create new views (invoked by the layout manager)
+    &#64;Override
+    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
+                                                   int viewType) {
+        // create a new view
+        View v = LayoutInflater.from(parent.getContext())
+                               .inflate(R.layout.my_text_view, parent, false);
+        // set the view's size, margins, paddings and layout parameters
+        ...
+        ViewHolder vh = new ViewHolder(v);
+        return vh;
+    }
+
+    // Replace the contents of a view (invoked by the layout manager)
+    &#64;Override
+    public void onBindViewHolder(ViewHolder holder, int position) {
+        // - get element from your dataset at this position
+        // - replace the contents of the view with that element
+        holder.mTextView.setText(mDataset[position]);
+
+    }
+
+    // Return the size of your dataset (invoked by the layout manager)
+    &#64;Override
+    public int getItemCount() {
+        return mDataset.length;
+    }
+}
+</pre>
+
+
+<div style="float:right;margin-top:15px;margin-left:30px">
+<img src="{@docRoot}design/material/images/card_travel.png" alt="" width="225" height="383">
+<p class="img-caption" style="margin-left:12px">
+<strong>그림 3</strong>. 카드 예.
+</p>
+</div>
+
+<h2 id="CardView">카드 생성</h2>
+
+<p>{@link android.support.v7.widget.CardView}는 {@link android.widget.FrameLayout} 클래스를
+확장하고 카드 내의 정보를 플랫폼에서 일관된 모습으로 표시할 수 있도록 합니다. {@link
+android.support.v7.widget.CardView} 위젯은 그림자와 둥근 모서리를 가질 수 있습니다.</p>
+
+<p>그림자가 있는 카드를 생성하려면 <code>card_view:cardElevation</code> 특성을 사용합니다. 
+{@link android.support.v7.widget.CardView}는 Android 5.0(API 레벨 21) 이상에서 실제 엘리베이션 및 동적 그림자를 사용하며, 이전 버전에서는 이전의 프로그래밍 방식의 그림자 구현으로 환원됩니다. 자세한 내용은 <a href="{@docRoot}training/material/compatibility.html">호환성 유지</a>를 참조하세요.
+
+
+</p>
+
+<p>이러한 속성을 사용하여
+{@link android.support.v7.widget.CardView} 위젯의 모습을 사용자지정합니다.</p>
+
+<ul>
+  <li>레이아웃에 모서리 반지름을 설정하려면 <code>card_view:cardCornerRadius</code>
+특성을 사용합니다.</li>
+  <li>코드에서 모서리 반지름을 설정하려면 <code>CardView.setRadius</code> 메서드를 사용합니다.</li>
+  <li>카드의 배경색을 설정하려면 <code>card_view:cardBackgroundColor</code>
+특성을 사용합니다.</li>
+</ul>
+
+<p>다음 코드 예는 {@link android.support.v7.widget.CardView}
+위젯을 레이아웃에 포함시키는 방법을 보여줍니다.</p>
+
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    xmlns:card_view="http://schemas.android.com/apk/res-auto"
+    ... >
+    &lt;!-- A CardView that contains a TextView -->
+    &lt;android.support.v7.widget.CardView
+        xmlns:card_view="http://schemas.android.com/apk/res-auto"
+        android:id="@+id/card_view"
+        android:layout_gravity="center"
+        android:layout_width="200dp"
+        android:layout_height="200dp"
+        card_view:cardCornerRadius="4dp">
+
+        &lt;TextView
+            android:id="@+id/info_text"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+    &lt;/android.support.v7.widget.CardView>
+&lt;/LinearLayout>
+</pre>
+
+<p>자세한 내용은 {@link android.support.v7.widget.CardView}의 API 레퍼런스를 참조하세요.</p>
+
+
+<h2 id="Dependencies">종속 사항 추가</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} 및 {@link android.support.v7.widget.CardView}
+위젯은 <a href="{@docRoot}tools/support-library/features.html#v7">v7 지원 라이브러리</a>의 일부입니다.
+ 이러한 위젯을 프로젝트에서 사용하려면 다음
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Gradle 종속 사항</a>을 앱의 모듈에 추가하세요.
+</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
diff --git a/docs/html-intl/intl/ko/training/material/shadows-clipping.jd b/docs/html-intl/intl/ko/training/material/shadows-clipping.jd
new file mode 100644
index 0000000..e04d0c5
--- /dev/null
+++ b/docs/html-intl/intl/ko/training/material/shadows-clipping.jd
@@ -0,0 +1,133 @@
+page.title=그림자 정의 및 뷰 클리핑
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>이 과정에서 다루는 내용</h2>
+<ol>
+  <li><a href="#Elevation">뷰에 엘리베이션 지정</a></li>
+  <li><a href="#Shadows">뷰 그림자 및 윤곽선 사용자지정</a></li>
+  <li><a href="#Clip">뷰 클리핑</a></li>
+</ol>
+<h2>필독 항목</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">머티리얼 디자인 사양</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android의 머티리얼 디자인</a></li>
+</ul>
+</div>
+</div>
+
+<p>머티어리얼 디자인은 UI 요소에 엘리베이션을 도입합니다. 엘리베이션은 사용자가 각 요소의 상대적 중요성을 이해하고 현재 직면한 작업에 집중할 수 있도록 도와줍니다.
+</p>
+
+<p>Z 속성으로 표현되는 뷰의 엘리베이션은 그림자의 시각적인 모양을 결정합니다. 예를 들어, 더 높은 Z값을 가진 뷰는 더 크고 부드러운 그림자를 드리웁니다.
+ 높은 Z값을 가진 뷰는 낮은 Z값을 가진 뷰를 가립니다. 하지만 뷰의 Z값이 뷰의 크기에 영향을 주지는 않습니다.
+</p>
+
+<p>그림자는 엘리베이트된 뷰의 상위 요소에 의해 그려지며, 따라서 기본적으로 상위 요소에 의해 클리핑되는 표준 뷰 클리핑이 적용됩니다.
+</p>
+
+<p>엘리베이션은 특정 작업 수행 시 위젯이 일시적으로 뷰 평면 위로 올라오는 애니메이션을 생성하는 경우에도 유용합니다.
+</p>
+
+<p>머티리얼 디자인의 엘리베이션에 대한 자세한 내용은
+<a href="http://www.google.com/design/spec/what-is-material/objects-in-3d-space.html">3D 공간의 개체</a>를 참조하세요.
+</p>
+
+
+<h2 id="Elevation">뷰에 엘리베이션 지정</h2>
+
+<p>뷰의 Z 값은 2개의 구성요소를 가집니다.
+
+<ul>
+<li>엘리베이션: 정적 구성요소.</li>
+<li>변환: 애니메이션에 사용되는 동적 구성요소.</li>
+</ul>
+
+<p><code>Z = elevation + translationZ</code></p>
+
+<img src="{@docRoot}training/material/images/shadows-depth.png" width="580" height="261" alt="" />
+<p class="img-caption"><strong>그림 1</strong> - 서로 다른 뷰 엘리베이션의 그림자.</p>
+
+<p>레이아웃 정의에서 뷰의 엘리베이션을 설정하려면 <code>android:elevation</code>
+특성을 사용합니다. 액티비티의 코드에서 뷰의 엘리베이션을 설정하려면
+{@link android.view.View#setElevation View.setElevation()} 메서드를 사용합니다.</p>
+
+<p>뷰의 변환을 설정하려면 {@link android.view.View#setTranslationZ
+View.setTranslationZ()} 메서드를 사용합니다.</p>
+
+<p>새 {@link android.view.ViewPropertyAnimator#z ViewPropertyAnimator.z()} 및 {@link
+android.view.ViewPropertyAnimator#translationZ ViewPropertyAnimator.translationZ()} 메서드를 사용하면 뷰의 엘리베이션을 손쉽게 애니메이트할 수 있습니다.
+ 자세한 내용은
+{@link android.view.ViewPropertyAnimator}의 API 레퍼런스와 <a href="{@docRoot}guide/topics/graphics/prop-animation.html">속성 애니메이션</a> 개발자 가이드를 참조하세요.
+</p>
+
+<p>{@link android.animation.StateListAnimator}를 사용해서 이러한 애니메이션을 선언적 방식으로 지정할 수도 있습니다.
+ 이는 사용자가 버튼을 누를 때와 같이 상태 변경이 애니메이션을 트리거하는 경우에 특히 유용합니다.
+ 자세한 내용은
+<a href="{@docRoot}training/material/animations.html#ViewState">뷰 상태 변경 애니메이트</a>를 참조하세요.</p>
+
+<p>Z 값은 dp(밀도 독립적 픽셀)로 측정됩니다.</p>
+
+
+<h2 id="Shadows">뷰 그림자 및 윤곽선 사용자지정</h2>
+
+<p>뷰의 배경 드로어블의 경계는 해당 그림자의 기본 모양을 결정합니다.
+<strong>윤곽선</strong>은 그래픽 객체의 바깥쪽 모양을 나타내고 터치 피드백의 물결 영역을 정의합니다.
+</p>
+
+<p>배경 드로어블을 사용하여 정의된 다음 뷰를 살펴봅시다.</p>
+
+<pre>
+&lt;TextView
+    android:id="@+id/myview"
+    ...
+    android:elevation="2dp"
+    android:background="@drawable/myrect" />
+</pre>
+
+<p>배경 드로어블은 둥근 모서리를 가진 직사각형으로 정의됩니다.</p>
+
+<pre>
+&lt;!-- res/drawable/myrect.xml -->
+&lt;shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+    &lt;solid android:color="#42000000" />
+    &lt;corners android:radius="5dp" />
+&lt;/shape>
+</pre>
+
+<p>배경 드로어블이 뷰의 윤곽선을 정의하기 때문에 뷰는 둥근 모서리를 가진 그림자를 드리웁니다.
+ 사용자지정 윤곽선을 제공하면 뷰 그림자의 기본 모양이 재정의됩니다.</p>
+
+<p>코드에서 뷰의 사용자지정 윤곽선을 정의하려면:<p>
+
+<ol>
+<li>{@link android.view.ViewOutlineProvider} 클래스를 확장합니다.</li>
+<li>{@link android.view.ViewOutlineProvider#getOutline getOutline()} 메서드를 재정의합니다.</li>
+<li>{@link
+android.view.View#setOutlineProvider View.setOutlineProvider()} 메서드를 사용하여 새로운 윤곽선 공급자를 뷰에 할당합니다.</li>
+</ol>
+
+<p>{@link android.graphics.Outline} 클래스의 메서드를 사용하여 둥근 모서리를 가진 타원형 및 직사각형 윤곽선을 생성할 수 있습니다.
+ 뷰의 기본 윤곽선 공급자는 뷰의 배경에서 윤곽선을 가져옵니다.
+ 뷰에 그림자가 드리우는 것을 원치 않으면 뷰의 윤곽선 공급자를 <code>null</code>로 설정하세요.
+</p>
+
+
+<h2 id="Clip">뷰 클리핑</h2>
+
+<p>뷰를 클리핑하면 뷰의 모양을 손쉽게 바꿀 수 있습니다. 다른 디자인 요소와의 일관성을 위해, 또는 사용자 입력에 응답하여 뷰의 모양을 바꾸기 위해 뷰를 클리핑할 수 있습니다. {@link android.view.View#setClipToOutline
+View.setClipToOutline()} 메서드나 <code>android:clipToOutline</code> 특성을 사용하여 뷰를 해당 윤곽선 영역까지 클리핑할 수 있습니다.
+
+ 
+{@link android.graphics.Outline#canClip Outline.canClip()} 메서드에서 결정된 대로 사각형, 원형 및 둥근 사각형의 윤곽선만 클리핑을 지원합니다.
+</p>
+
+<p>드로어블 모양으로 뷰를 클리핑하려면 위와 같이 드로어블을 뷰의 배경으로
+설정하고 {@link android.view.View#setClipToOutline View.setClipToOutline()}
+메서드를 호출합니다.</p>
+
+<p>뷰 클리핑은 리소스 소모가 많은 작업이므로,뷰를 클리핑하는 데 사용하는 모양을 애니메이트하지 마세요.
+ 이 효과를 얻으려면 <a href="{@docRoot}training/material/animations.html#Reveal">표시 효과</a> 애니메이션을 사용하세요.</p>
diff --git a/docs/html-intl/intl/ko/training/material/theme.jd b/docs/html-intl/intl/ko/training/material/theme.jd
new file mode 100644
index 0000000..ef4ff58
--- /dev/null
+++ b/docs/html-intl/intl/ko/training/material/theme.jd
@@ -0,0 +1,131 @@
+page.title=머티리얼 테마 사용
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>이 과정에서 다루는 내용</h2>
+<ol>
+  <li><a href="#ColorPalette">색상표 사용자지정</a></li>
+  <li><a href="#StatusBar">상태 표시줄 사용자지정</a></li>
+  <li><a href="#Inheritance">개별 뷰의 테마 지정</a></li>
+</ol>
+<h2>필독 항목</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">머티리얼 디자인 사양</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android의 머티리얼 디자인</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>새 머티리얼 테마는 다음과 같은 기능을 제공합니다.</p>
+
+<ul>
+  <li>색상표를 설정할 수 있는 시스템 위젯</li>
+  <li>시스템 위젯의 터치 피드백 애니메이션</li>
+  <li>액티비티 전환 애니메이션</li>
+</ul>
+
+<p>제어 중인 색상표로 브랜드 ID에 따라 머티리얼 테마의 모습을 사용자지정할 수 있습니다.
+ <a href="#fig3">그림 3</a>과 같이 테마 특성을 사용하여 작업 표시줄 및 상태 표시줄에 색조를 적용할 수 있습니다.
+</p>
+
+<p>시스템 위젯에는 새 디자인 및 터치 피드백 애니메이션이 있습니다. 앱에서 색상표, 터치 피드백 애니메이션, 액티비티 전환을 사용자지정할 수 있습니다.
+</p>
+
+<p>머티리얼 테마는 다음과 같이 정의됩니다.</p>
+
+<ul>
+  <li><code>@android:style/Theme.Material</code> (어두운 버전)</li>
+  <li><code>@android:style/Theme.Material.Light</code> (밝은 버전)</li>
+  <li><code>@android:style/Theme.Material.Light.DarkActionBar</code></li>
+</ul>
+
+<p>사용가능한 머티리얼 스타일 목록은
+{@link android.R.style R.style}의 API 레퍼런스를 참조하세요.</p>
+
+<!-- two columns, dark/light material theme example -->
+<div style="width:700px;margin-top:25px;margin-bottom:10px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>그림 1</strong>. 어두운 머티리얼 테마</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>그림 2</strong>. 밝은 머티리얼 테마</p>
+  </div>
+</div>
+<br style="clear:left">
+</div>
+
+<p class="note">
+<strong>참고:</strong> 머티리얼 테마는 Android 5.0(API 레벨 21) 이상에서만 사용할 수 있습니다.
+ <a href="{@docRoot}tools/support-library/features.html#v7">v7 지원 라이브러리</a>
+는 일부 위젯에 머티리얼 디자인 스타일의 테마를 제공하고 색상표 사용자지정을 지원합니다.
+ 자세한 내용은
+<a href="{@docRoot}training/material/compatibility.html">호환성 유지</a>를 참조하세요.
+</p>
+
+
+<h2 id="ColorPalette">색상표 사용자지정</h2>
+
+<p style="margin-bottom:30px">테마의 기본 색상을 브랜드에 맞게 사용자지정하려면 머티리얼 테마에서 상속 시 테마 특성을 사용하여 사용자지정 색상을 정의합니다.
+</p>
+
+<pre>
+&lt;resources>
+  &lt;!-- inherit from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- Main theme colors -->
+    &lt;!--   your app branding color for the app bar -->
+    &lt;item name="android:colorPrimary">@color/primary&lt;/item>
+    &lt;!--   darker variant for the status bar and contextual app bars -->
+    &lt;item name="android:colorPrimaryDark">@color/primary_dark&lt;/item>
+    &lt;!--   theme UI controls like checkboxes and text fields -->
+    &lt;item name="android:colorAccent">@color/accent&lt;/item>
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<div style="float:right;margin-left:25px;margin-top:20px;margin-bottom:10px" id="fig3">
+<img src="{@docRoot}training/material/images/ThemeColors.png" width="250" height="445" />
+<p class="img-caption" style="margin-bottom:0px">
+<strong>그림 3.</strong> 머티리얼 테마 사용자자정</p>
+</div>
+
+
+<h2 id="StatusBar">상태 표시줄 사용자지정</h2>
+
+<p>머티리얼 테마를 사용하면 손쉽게 상태 표시줄을 사용자지정할 수 있습니다. 따라서 브랜드에 맞는 색상을 지정하고 흰색 상태 아이콘이 보이도록 충분한 대비를 제공할 수 있습니다.
+ 상태 표시줄의 사용자지정 색상을 설정하려면 머티리얼 테마를 확장할 때 <code>android:statusBarColor</code> 특성을 사용합니다.
+
+ 기본적으로 <code>android:statusBarColor</code>는 <code>android:colorPrimaryDark</code>의 값을 상속합니다.
+</p>
+
+<p>직접 상태 표시줄 뒤에 그릴 수도 있습니다. 예를 들어 사진 위에 상태 표시줄이 투명하게 표시되도록 하려면, 희미하게 어두운 그라데이션으로 흰색 상태 아이콘이 보이게 합니다.
+
+ 그렇게 하려면 <code>android:statusBarColor</code> 특성을
+<code>&#64;android:color/transparent</code>로 설정하고 필요한 경우 창 플래그를 조정합니다. 또한 {@link android.view.Window#setStatusBarColor Window.setStatusBarColor()} 메서드를 사용하여 애니메이션 또는 페이드 효과를 줄 수도 있습니다.
+
+</p>
+
+<p class="note">
+<strong>참고:</strong> 상태 표시줄은 거의 언제나 기본 도구모음과 경계가 분명히 식별되어야 합니다. 단, 이러한 표시줄 뒤에 다채로운 가장자리 이미지 또는 미디어 콘텐츠를 표시하는 경우나 아이콘이 계속 보이도록 그라데이션을 사용하는 경우는 제외됩니다.
+
+
+</p>
+
+<p>탐색 표시줄과 상태 표시줄을 사용자지정하는 경우, 둘 다 투명하게 만들거나 상태 표시줄만 수정합니다.
+ 그 밖의 경우 탐색 표시줄은 항상 검은색을 유지해야 합니다.</p>
+
+
+<h2 id="Inheritance">개별 뷰의 테마 지정</h3>
+
+<p>XML 레이아웃 정의에 있는 요소는 테마 리소스를 참조하는 <code>android:theme</code> 특성을 지정할 수 있습니다.
+ 이 특성은 요소와 모든 하위 요소의 테마를 수정하며, 인터페이스의 특정 부분에서 테마 색상표를 바꿀 때 유용합니다.
+
+</p>
diff --git a/docs/html-intl/intl/pt-br/design/get-started/principles.jd b/docs/html-intl/intl/pt-br/design/get-started/principles.jd
index 46af758..82e28cc 100644
--- a/docs/html-intl/intl/pt-br/design/get-started/principles.jd
+++ b/docs/html-intl/intl/pt-br/design/get-started/principles.jd
@@ -9,13 +9,13 @@
 
 <p>
 Considere estes princípios ao aplicar 
-suas próprias criatividade e mentalidade de projeto. Desvie-se de forma objetiva.
+sua criatividade e sua mentalidade de projeto. Desvie-se de forma objetiva.
 </p>
 
 <h2 id="enchant-me">Encante-me</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="delight-me">Agrade-me de formas surpreendentes</h4>
 <p>Uma bela superfície, uma animação cuidadosamente posicionada ou um efeito sonoro no momento certo 
@@ -23,7 +23,7 @@
 poderoso está à mão.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_delight.png">
 
@@ -32,15 +32,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="real-objects-more-fun">Objetos reais são mais divertidos que botões e menus</h4>
 <p>Deixe que as pessoas manipulem e toquem diretamente em objetos no seu aplicativo. Isso reduz o esforço cognitivo
 necessário para realizar uma tarefa e torna o aplicativo mais emocionalmente satisfatório.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_real_objects.png">
 
@@ -49,16 +49,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="make-it-mine">Deixe-me torná-lo meu</h4>
+<h4 id="make-it-mine">Deixe-me dar meu toque pessoal</h4>
 <p>As pessoas adoram adicionar toques pessoais, pois isso as ajuda a se sentirem à vontade e em controle. Forneça
 padrões sensatos e belos, mas também considere personalizações divertidas e opcionais que não
 prejudiquem as tarefas principais.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_it_mine.png">
 
@@ -67,15 +67,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="get-to-know-me">Conheça-me</h4>
 <p>Conheça as preferências das pessoas no decorrer do tempo. Em vez de pedir que façam as mesmas escolhas repetidamente,
 coloque escolhas anteriores em alcance fácil.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_get_to_know_me.png">
 
@@ -84,14 +84,14 @@
 
 <h2 id="simplify-my-life">Simplifique minha vida</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="keep-it-brief">Seja breve</h4>
 <p>Use frases curtas com palavras simples. As pessoas provavelmente ignorarão frases longas.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_keep_it_brief.png">
 
@@ -100,15 +100,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="pictures-faster-than-words">Imagens são mais rápidas que palavras</h4>
 <p>Considere usar imagens para explicar ideias. Elas chamam a atenção das pessoas e podem ser muito mais eficientes
 que palavras.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_pictures.png">
 
@@ -117,15 +117,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="decide-for-me">Decida por mim, mas deixe que eu tenha a palavra final</h4>
 <p>Faça a melhor suposição e tome uma ação, em vez de primeiro perguntar. Escolhas e decisões demais deixam as pessoas
 incomodadas. Caso suponha errado, permita "desfazer".</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_decide_for_me.png">
 
@@ -134,15 +134,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="only-show-when-i-need-it">Mostre só o que preciso, quando eu precisar</h4>
+<h4 id="only-show-when-i-need-it">Mostre só o que é preciso, quando eu precisar</h4>
 <p>As pessoas se sentem oprimidas quando veem coisas demais de uma vez. Detalhe tarefas e informações em partes
 pequenas e digeríveis. Oculte opções que não sejam essenciais no momento e ensine as pessoas à medida que avançam.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_information_when_need_it.png">
 
@@ -151,15 +151,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="always-know-where-i-am">Eu sempre devo saber onde estou</h4>
 <p>Dê às pessoas a confiança de saberem o que fazer. Faça com que os locais no seu aplicativo pareçam distintos
 e use transições para mostrar relacionamentos entre telas. Forneça feedback sobre tarefas em andamento.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_navigation.png">
 
@@ -168,8 +168,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="never-lose-my-stuff">Nunca perca as minhas coisas</h4>
 <p>Salve o que as pessoas criaram e deixe que elas acessem de qualquer lugar. Lembre-se de configurações,
@@ -177,7 +177,7 @@
 coisa mais fácil do mundo.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_never_lose_stuff.png">
 
@@ -186,15 +186,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="looks-same-should-act-same">Se parece igual, deve agir da mesma forma</h4>
 <p>Ajude as pessoas a discernir diferenças funcionais tornando-as visualmente distintas, em vez de sutis.
 Evite que modos locais que agem de forma diferente sobre a mesma entrada se pareçam.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_looks_same.png">
 
@@ -203,15 +203,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="interrupt-only-if-important">Só me interrompa se for importante</h4>
 <p>Como um bom assistente pessoal, proteja as pessoas de informações não importantes. As pessoas querem ficar
 concentradas e, a não ser que seja crítica e dependente de tempo, uma interrupção pode ser irritante e frustrante.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_important_interruption.png">
 
@@ -220,8 +220,8 @@
 
 <h2 id="make-me-amazing">Faça com que eu seja incrível</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="give-me-tricks">Dê-me truques que funcionem em qualquer lugar</h4>
 <p>As pessoas se sentem ótimas quando descobrem coisas sozinhas. Torne seu aplicativo mais inteligível ao
@@ -229,7 +229,7 @@
 pode ser um bom atalho de navegação.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_tricks.png">
 
@@ -238,8 +238,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="its-not-my-fault">Não é culpa minha</h4>
 <p>Seja gentil sobre como solicita correções a pessoas. Elas querem se sentir inteligentes ao usar o seu
@@ -247,7 +247,7 @@
 Se for possível corrigir em segundo plano, melhor ainda.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_error.png">
 
@@ -256,15 +256,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="sprinkle-encouragement">Espalhe motivação</h4>
 <p>Divida tarefas complexas em passos menores que possam ser realizados facilmente. Dê feedback sobre ações,
 mesmo que seja um brilho sutil.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png">
 
@@ -273,8 +273,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="do-heavy-lifting-for-me">Faça o trabalho pesado por mim</h4>
 <p>Faça com que novatos se sintam peritos possibilitando que façam coisas que nunca acharam possíveis. Por
@@ -282,7 +282,7 @@
 com apenas alguns passos.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_heavy_lifting.png">
 
@@ -291,15 +291,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-important-things-fast">Torne coisas importantes rápidas</h4>
 <p>Nem todas as ações são iguais. Decida o que é mais importante em seu aplicativo e torne fácil de encontrar e
 rápido de usar, como o botão do obturador em uma câmera ou o botão de pausa em um reprodutor de música.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_important_fast.png">
 
diff --git a/docs/html-intl/intl/pt-br/design/material/index.jd b/docs/html-intl/intl/pt-br/design/material/index.jd
index 60289a3..5368d2d 100644
--- a/docs/html-intl/intl/pt-br/design/material/index.jd
+++ b/docs/html-intl/intl/pt-br/design/material/index.jd
@@ -1,7 +1,7 @@
-page.title=Material Design
+page.title=Material Design para Android
 page.tags=Material,design
 page.type=design
-page.image=design/material/images/MaterialLight.png
+page.image=images/cards/design-material-for-android_2x.jpg
 
 @jd:body
 
@@ -162,7 +162,7 @@
 </li>
 </ul>
 
-<p>Animações de feedback de toque são integradas em várias vistas padrões, como botões. As novas APIs
+<p>Animações de feedback de toque são integradas em várias vistas padrão, como botões. As novas APIs
 permitem personalizar essas animações e adicioná-las às vistas personalizadas.</p>
 
 <p>Para obter mais informações, consulte <a href="{@docRoot}training/material/animations.html">Como definir 
diff --git a/docs/html-intl/intl/pt-br/design/patterns/compatibility.jd b/docs/html-intl/intl/pt-br/design/patterns/compatibility.jd
new file mode 100644
index 0000000..775af0c
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/design/patterns/compatibility.jd
@@ -0,0 +1,70 @@
+page.title=Compatibilidade com versões anteriores
+page.tags="support"
+page.metaDescription=Observações sobre como o Android 4.x adapta IUs projetadas para versões de SO e hardware mais antigos.
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/basics/supporting-devices/index.html">
+  <div>
+    <h3>Documentos do desenvolvedor</h3>
+    <p>Suporte a diferentes dispositivos</p>
+  </div>
+</a>
+
+<p>Mudanças significativas no Android 3.0 incluem:</p>
+<ul>
+<li>Obsolescência de teclas de navegação do hardware (Voltar, Menu, Pesquisar, Página inicial) em favor do tratamento da navegação
+  com controles virtuais (Voltar, Página inicial, Recentes).</li>
+<li>Padrão robusto para o uso de menus em barras de ações.</li>
+</ul>
+<p>O Android 4.0 leva essas mudanças para tablets à plataforma de telefone.</p>
+
+<h2 id="older-hardware">Adaptação do Android 4.0 a hardware e aplicativos mais antigos</h2>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Telefones com controles de navegação virtuais</h4>
+<p>Aplicativos Android escritos para o Android 3.0 e posteriores exibem ações na barra de ações. Ações que não cabem
+na barra de ações ou não são importantes o suficiente para serem exibidas no nível superior aparecem nas
+ações adicionais.</p>
+<p>Os usuários acessam as ações adicionais tocando na barra de ações.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_virtual_nav.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Telefones com teclas de navegação físicas</h4>
+<p>Telefones Android com teclas de navegação de hardware tradicionais não exigem a barra de navegação virtual na
+parte inferior da tela. Em vez disso, as ações adicionais estão disponíveis na tecla de hardware de menu. A janela pop-up
+de ações resultante tem o mesmo estilo que no exemplo anterior, mas é exibida na parte inferior da tela.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_physical_buttons.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Aplicativos legados em telefones com controles de navegação virtuais</h4>
+<p>Ao executar um aplicativo que foi desenvolvido para Android 2.3 ou anterior em um telefone com controles de 
+navegação virtuais, um controle de ações adicionais é exibido no lado direito da barra de navegação virtual. É possível
+tocar no controle para exibir as ações do aplicativo no estilo tradicional de menu do Android.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_legacy_apps.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/pt-br/design/patterns/confirming-acknowledging.jd b/docs/html-intl/intl/pt-br/design/patterns/confirming-acknowledging.jd
index 934dbdd..237c719 100644
--- a/docs/html-intl/intl/pt-br/design/patterns/confirming-acknowledging.jd
+++ b/docs/html-intl/intl/pt-br/design/patterns/confirming-acknowledging.jd
@@ -4,12 +4,12 @@
 
 <p>Em algumas situações, quando um usuário invoca uma ação em seu aplicativo, é uma boa ideia <em>confirmar</em> ou <em>reconhecer</em> essa ação com texto.</p>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_confirming.png">
     <p><strong>Confirmar</strong> é pedir ao usuário que verifique se realmente quer prosseguir com a ação que acabou de invocar. Em alguns casos, a confirmação é apresentada com uma advertência ou informações críticas relacionadas à ação que ele precisa considerar.</p>
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_acknowledge.png">
     <p><strong>Reconhecer</strong> é exibir texto para avisar ao usuário que a ação que acabou de ser invocada foi concluída. Isso remove a incerteza sobre operações implícitas que o sistema adota. Em alguns casos, o reconhecimento é apresentado com uma opção para desfazer a ação.</p>
   </div>
@@ -22,14 +22,14 @@
 <img src="{@docRoot}design/media/confirm_ack_flowchart.png">
 
 <h2>Confirmação</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
-    <h4>Exemplo: livros do Google Play</h4>
+<div class="cols">
+  <div class="col-6">
+    <h4>Exemplo: Livros do Google Play</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_books.png">
     <p>Nesse exemplo, o usuário solicitou a exclusão de um livro da biblioteca do Google Play. Um <a href="{@docRoot}design/building-blocks/dialogs.html#alerts">alerta</a> aparece para confirmar essa ação porque é importante entender que o livro não estará mais disponível em nenhum dispositivo.</p>
     <p>Ao montar uma caixa de diálogo de confirmação, use um título significativo que ecoe a ação solicitada.</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>Exemplo: Android Beam</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_beam.png">
     <p>As confirmações não necessariamente precisam ser apresentadas em um alerta com dois botões. Depois de iniciar o Android Beam, o usuário é solicitado a tocar no conteúdo a ser compartilhado (nesse exemplo, uma foto). Se ele decidir não prosseguir, simplesmente afastará o celular.</p>
@@ -37,30 +37,30 @@
 </div>
 
 <h2>Reconhecimento</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
-    <h4>Exemplo: abandonar rascunho salvo do Gmail</h4>
+<div class="cols">
+  <div class="col-6">
+    <h4>Exemplo: Abandonar rascunho salvo do Gmail</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png">
     <p>Nesse exemplo, se o usuário navegar para trás ou para cima na tela de composição do Gmail, alguma coisa possivelmente inesperada acontecerá: o rascunho atual será salvo automaticamente. Um reconhecimento na forma de aviso torna isso aparente. Ele desaparece depois de alguns segundos.</p>
-    <p>Desfazer não é adequado aqui, pois o ato de salvar foi iniciado pelo aplicativo, não pelo usuário, Além de ser rápido e fácil retomar a composição da mensagem navegando para a lista de rascunhos.</p>
+    <p>Desfazer não é adequado aqui, pois o ato de salvar foi iniciado pelo aplicativo, não pelo usuário, além de ser rápido e fácil retomar a composição da mensagem navegando para a lista de rascunhos.</p>
 
   </div>
-  <div class="layout-content-col span-6">
-    <h4>Exemplo: conversa do Gmail excluída</h4>
+  <div class="col-6">
+    <h4>Exemplo: Conversa do Gmail excluída</h4>
     <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png">
     <p>Depois que o usuário exclui uma conversa da lista no Gmail, um reconhecimento aparece com a opção de desfazer. O reconhecimento permanece até que o usuário tome uma ação não relacionada, como rolar a lista.</p>
   </div>
 </div>
 
 <h2>Sem confirmação nem reconhecimento</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>Exemplo: +1</h4>
     <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png">
     <p><strong>A confirmação é desnecessária.</strong> Se o usuário usar +1 por acidente, não é um problema. Poderá simplesmente tocar no botão novamente para desfazer a ação.</p>
     <p><strong>O reconhecimento é desnecessário.</strong> O usuário verá o botão +1 oscilar e ficar vermelho. Esse é um sinal muito claro.</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>Exemplo: Remover um aplicativo da tela inicial</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png">
     <p><strong>A confirmação é desnecessária.</strong> Essa é uma ação deliberada: o usuário precisa arrastar e soltar um item em um alvo relativamente grande e isolado. Portanto, acidentes são altamente improváveis. Mas, se o usuário se arrepender da decisão, levará apenas alguns segundos para trazê-lo de volta.</p>
diff --git a/docs/html-intl/intl/pt-br/design/patterns/navigation.jd b/docs/html-intl/intl/pt-br/design/patterns/navigation.jd
index 920ccec..8ed12f7 100644
--- a/docs/html-intl/intl/pt-br/design/patterns/navigation.jd
+++ b/docs/html-intl/intl/pt-br/design/patterns/navigation.jd
@@ -20,13 +20,13 @@
 
 <img src="{@docRoot}design/media/navigation_with_back_and_up.png">
 
-<h2 id="up-vs-back">Para Cima vs. Voltar</h2>
+<h2 id="up-vs-back">Para Cima vs Voltar</h2>
 
 <p>O botão Para Cima é usado para navegar dentro de um aplicativo com base nos relacionamentos hierárquicos
-entre telas. Por exemplo, se a tela A exibe uma lista de itens e, selecionar um item leva à
-tela B (que apresenta aquele item em mais detalhes), então a tela B deve oferecer um botão Para Cima que
+entre telas. Por exemplo, se a tela A exibe uma lista de itens e selecionar um item leva à
+tela B (que apresenta aquele item em mais detalhes), a tela B deve oferecer um botão Para Cima que
 volte à tela A.</p>
-<p>Se determinada tela é a superior na hierarquia de um aplicativo (ou seja, a página inicial do aplicativo), ela não deve apresentar um botão
+<p>Se determinada tela é a superior na hierarquia de um aplicativo (ou seja, a tela inicial do aplicativo), ela não deve apresentar um botão
 Para Cima.</p>
 
 <p>O botão Voltar do sistema é usado para navegar, em ordem cronológica inversa, pelo histórico
@@ -50,9 +50,9 @@
 <h2 id="within-app">Navegação dentro do seu aplicativo</h2>
 
 <h4>Navegação para telas com vários pontos de entrada</h4>
-<p>Algumas vezes, uma tela não tem uma posição estrita dentro da hierarquia do aplicativo e pode ser atingida
-de vários pontos de entrada &mdash; como uma tela de configurações que pode ser atingida de qualquer outra tela
-do aplicativo. Nesse caso, o botão Para Cima deve escolher voltar para a tela anterior, comportando-se
+<p>Algumas vezes, uma tela não tem uma posição rigorosa dentro da hierarquia do aplicativo e pode ser acessada
+de vários pontos de entrada &mdash; como uma tela de configurações que pode ser acessada de qualquer outra tela
+no aplicativo. Nesse caso, o botão Para Cima deve escolher voltar à tela anterior, comportando-se
 de forma idêntica a Voltar.</p>
 <h4>Mudança de vista dentro de uma tela</h4>
 <p>Mudar opções de vista de uma tela não muda o comportamento de Para Cima nem de Voltar: a tela ainda
@@ -60,7 +60,7 @@
 <p>Exemplos de tais mudanças de vista são:</p>
 <ul>
 <li>Alternar vistas usando guias e/ou deslizando para a esquerda e para a direita</li>
-<li>Alternar vistas usando um menu suspenso (também chamados de abas recolhidas)</li>
+<li>Alternar vistas usando um menu suspenso (também chamadas de abas recolhidas)</li>
 <li>Filtrar uma lista</li>
 <li>Classificar uma lista</li>
 <li>Mudar características de exibição (como mudar o zoom)</li>
@@ -78,7 +78,7 @@
 vinculadas pela lista de referência &mdash; por exemplo, ao navegar na Play Store entre aplicativos
 do mesmo desenvolvedor ou álbuns do mesmo artista. Nesses casos, seguir cada link cria
 um histórico, fazendo com que o botão Voltar passe por cada tela visualizada anteriormente. Para Cima deve continuar a
-ignorar essas relacionadas e navegar para a tela do contêiner visualizada mais recentemente.</p>
+ignorar essas telas relacionadas e navegar para a tela do contêiner visualizada mais recentemente.</p>
 
 <img src="{@docRoot}design/media/navigation_between_siblings_market1.png">
 
@@ -89,9 +89,9 @@
 
 <img src="{@docRoot}design/media/navigation_between_siblings_market2.png">
 
-<h2 id="into-your-app">Navegação para o seu aplicativo pelos widgets de página inicial e notificações</h2>
+<h2 id="into-your-app">Navegação para o seu aplicativo pelos widgets de tela inicial e notificações</h2>
 
-<p>Você pode usar widget de página inicial ou notificações para ajudar seus usuários a navegar diretamente para telas
+<p>Você pode usar widgets de tela inicial ou notificações para ajudar os usuários a navegar diretamente para telas
 profundas na hierarquia do seu aplicativo. Por exemplo, o widget Caixa de Entrada do Gmail e a notificação de nova mensagem podem
 ignorar a tela Caixa de Entrada, levando o usuário diretamente a uma vista de conversa.</p>
 
@@ -100,17 +100,17 @@
 <ul>
 <li><em>Se a tela de destino é normalmente acessada de uma determinada tela dentro do
 aplicativo</em>, Para Cima deve navegar para essa tela.</li>
-<li><em>Caso contrário</em>, Para Cima deve navegar para a tela superior ("Página inicial") do aplicativo.</li>
+<li><em>Caso contrário</em>, Para Cima deve navegar para a tela superior ("Tela inicial") do aplicativo.</li>
 </ul>
 
 <p>No caso do botão Voltar, você deve tornar a navegação mais previsível inserindo o caminho de navegação para cima
-completo na pilha de retorno da tarefa, até a tela superior do aplicativo. Isso permite que usuários
+completo na pilha de retorno da tarefa até a tela superior do aplicativo. Isso permite que usuários
 que se esqueceram de como entraram no aplicativo naveguem para a tela superior do aplicativo
 antes de saírem.</p>
 
-<p>Como exemplo, o widget da Página inicial do Gmail tem um botão para mergulhar diretamente para a tela
+<p>Como exemplo, o widget da Tela inicial do Gmail tem um botão para mergulhar diretamente para a tela
 de composição. Para Cima ou Voltar na tela de composição deve levar o usuário à Caixa de Entrada e, de lá, o
-botão Voltar continua até a Página inicial.</p>
+botão Voltar continua até a Tela inicial.</p>
 
 <img src="{@docRoot}design/media/navigation_from_outside_back.png">
 
@@ -123,7 +123,7 @@
 
 <p>Diferentemente de em notificações padrão (diretas), pressionar Voltar em uma tela intersticial da
 notificação indireta retorna o usuário ao ponto em que a notificação foi acionada &mdash; nenhuma
-tela adicional é inserida na pilha de retorno. Quando o usuário prossegue para o aplicativo a partir da
+tela adicional é inserida na pilha de retorno. Quando o usuário prossegue para o aplicativo da
 tela intersticial, Para Cima e Voltar se comportam como em notificações padrão, como descrito acima:
 navegando dentro do aplicativo em vez de voltar à tela intersticial.</p>
 
@@ -166,13 +166,13 @@
 
 <p>No Android, uma <strong>atividade</strong> é um componente do aplicativo que define uma tela de
 informações e todas as ações associadas que o usuário pode executar. Seu aplicativo é uma coleção de
-atividades, consistindo em atividades que você cria e aquelas que reutiliza de outros aplicativos.</p>
+atividades, consistindo em atividades que você cria e naquelas que reutiliza de outros aplicativos.</p>
 
 <p>Uma <strong>tarefa</strong> é a sequência de atividades que um usuário segue para atingir um objetivo. Uma
 única tarefa pode usar atividades apenas de um aplicativo ou pode retirar atividades de uma série 
 de outros aplicativos.</p>
 
-<p>Uma <strong>intenção</strong> é um mecanismo para que um aplicativo sinalize que gostaria da assistência de outro
+<p>Uma <strong>intenção</strong> é um mecanismo para que um aplicativo sinalize que gostaria a assistência de outro
 aplicativo para realizar uma ação. As atividades de um aplicativo podem indicar a que intenções
 ele responde. Para intenções comuns, como "Compartilhar", o usuário pode ter vários aplicativos
 instalados que atendam a essa solicitação.</p>
@@ -180,7 +180,7 @@
 <h4>Exemplo: navegação entre aplicativos para suporte a compartilhamento</h4>
 
 <p>Para entender como atividades, tarefas e intenções funcionam juntas, entenda como um aplicativo permite que usuários
-compartilhem conteúdo usando outro aplicativo. Por exemplo, executar o aplicativo Play Store na tela inicial inicia
+compartilhem conteúdo usando outro aplicativo. Por exemplo, executar o aplicativo Play Store na tela inicial começa
 uma nova Tarefa A (veja a figura baixo). Depois de navegar pela Play Store e tocar em um livro em promoção
 para ver os detalhes, o usuário permanecerá na mesma tarefa, estendendo-a ao adicionar atividades. Acionar
 a ação Compartilhar exibe ao usuário uma caixa de diálogo listando cada uma das atividades (de diferentes aplicativos)
@@ -209,5 +209,5 @@
 pela Tarefa B &mdash; o contexto anterior é abandonado em favor do novo objetivo do usuário.</p>
 
 <p>Quando o aplicativo é registrado para tratar intenções com uma atividade em um ponto profundo da hierarquia do aplicativo,
-consulte <a href="#into-your-app">Navegação para o seu aplicativo pelos widgets de página 
+consulte <a href="#into-your-app">Navegação para o seu aplicativo pelos widgets de tela 
 inicial e notificações</a> para ver orientações sobre como especificar a navegação Para Cima.</p>
diff --git a/docs/html-intl/intl/pt-br/guide/components/activities.jd b/docs/html-intl/intl/pt-br/guide/components/activities.jd
new file mode 100644
index 0000000..71986ab
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/activities.jd
@@ -0,0 +1,756 @@
+page.title=Atividades
+page.tags=atividade,intenção
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Neste documento</h2>
+<ol>
+  <li><a href="#Creating">Criação de uma atividade</a>
+    <ol>
+      <li><a href="#UI">Implementação de uma interface do usuário</a></li>
+      <li><a href="#Declaring">Declaração de uma atividade no manifesto</a></li>
+    </ol>
+  </li>
+  <li><a href="#StartingAnActivity">Início de uma atividade</a>
+    <ol>
+      <li><a href="#StartingAnActivityForResult">Início de uma atividade de um resultado</a></li>
+    </ol>
+  </li>
+  <li><a href="#ShuttingDown">Encerramento de uma atividade</a></li>
+  <li><a href="#Lifecycle">Gerenciamento do ciclo de vida da atividade</a>
+    <ol>
+      <li><a href="#ImplementingLifecycleCallbacks">Implementação de retornos de chamada do ciclo de vida</a></li>
+      <li><a href="#SavingActivityState">Gravação do estado da atividade</a></li>
+      <li><a href="#ConfigurationChanges">Manipulação de alterações de configuração</a></li>
+      <li><a href="#CoordinatingActivities">Coordenação de atividades</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Classes principais</h2>
+<ol>
+  <li>{@link android.app.Activity}</li>
+</ol>
+
+<h2>Veja também</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/tasks-and-back-stack.html">Tarefas e pilha
+de retorno</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+<p>{@link android.app.Activity} é um componente de aplicativo que fornece uma tela com a qual
+os usuários podem interagir para fazer algo, como discar um número no telefone, tirar uma foto, enviar um e-mail
+ou ver um mapa. Cada atividade recebe uma janela que exibe a interface do usuário. Geralmente, a janela
+preenche a tela, mas pode ser menor que a tela e flutuar
+sobre outras janelas.</p>
+
+<p> Aplicativos geralmente possuem várias atividades pouco vinculadas
+entre si. Normalmente, uma atividade em um aplicativo é especificada como "principal",
+que é a apresentada ao usuário ao iniciar o aplicativo pela primeira vez. Cada
+atividade pode, então, iniciar outra atividade para executar diferentes ações. Ao iniciar uma nova
+atividade, a atividade anterior é interrompida, mas o sistema conserva a atividade
+em uma pilha (a "pilha de retorno"). Quando uma atividade inicia, ela é enviada para a pilha de retorno
+e obtém o foco do usuário. A pilha de retorno segue o mecanismo básico de pilha UEPS (o último que entra é o primeiro que sai).
+Assim, quando o usuário terminar a atividade atual e apertar o botão <em>Voltar</em>,
+ela sairá da pilha (é destruída) e a atividade anterior será retomada (a pilha de retorno
+é discutida em mais detalhes no documento <a href="{@docRoot}guide/components/tasks-and-back-stack.html">Tarefas
+e Pilha de Retorno</a>).</p>
+
+<p>Quando uma atividade é interrompida devido ao início de uma nova atividade, ela é notificada acerca dessa alteração de estado
+por meio de métodos de retorno de chamada do ciclo de vida da atividade.
+Há diversos métodos de retorno de chamada que uma atividade pode receber devido a uma alteração
+em seu estado &mdash; quando o sistema a está criando, interrompendo, retomando ou destruindo &mdash; e cada
+retorno de chamada oferece uma oportunidade de executar trabalhos específicos
+adequados a essa alteração de estado. Por exemplo: quando interrompida, a atividade deve liberar
+todos os objetos grandes, como conexões com a rede ou com um banco de dados. Quando a atividade for retomada, será possível
+readquirir os recursos necessários e retomar as ações interrompidas. Essas transições de estado
+são parte do ciclo de vida da atividade.</p>
+
+<p>O restante deste documento discute o básico sobre a compilação e o uso de uma atividade,
+incluindo uma discussão completa sobre o funcionamento do ciclo de vida da atividade para gerenciar adequadamente
+a transição entre os diversos estados da atividade.</p>
+
+
+
+<h2 id="Creating">Criação de uma atividade</h2>
+
+<p>Para criar uma atividade, é preciso criar uma subclasse de {@link android.app.Activity}
+(ou uma respectiva subclasse existente). Na subclasse, é preciso implementar um método de retorno de chamada
+que o sistema chama quando ocorre a transição entre os diversos estados de seu ciclo de vida,
+como na criação, interrupção, retomada ou destruição da atividade. Os dois métodos mais importantes
+de retorno de chamada são:</p>
+
+<dl>
+  <dt>{@link android.app.Activity#onCreate onCreate()}</dt>
+  <dd>É preciso implementar esse método. O sistema o chama ao criar
+a atividade. Na implementação, é preciso inicializar os componentes essenciais
+da atividade.
+    E, fundamentalmente, é quando se deve chamar {@link android.app.Activity#setContentView
+setContentView()} para definir o layout da interface do usuário da atividade.</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>O sistema chama esse método como o primeiro indício de que o usuário está saindo
+da atividade (embora não seja sempre uma indicação de que a atividade será destruída). É quando geralmente
+se deve confirmar qualquer alteração que deva persistir além da sessão do usuário atual (porque
+o usuário pode não retornar).</dd>
+</dl>
+
+<p>Há outros métodos de retorno de chamada do ciclo de vida que se pode usar para oferecer
+uma experiência fluida ao usuário entre atividades e manipular interrupções inesperadas que venham a parar
+ou até a destruir a atividade. Todos os métodos de retorno de chamada do ciclo de vida serão discutidos mais adiante
+na seção sobre <a href="#Lifecycle">Gerenciamento do ciclo de vida da atividade</a>.</p>
+
+
+
+<h3 id="UI">Implementação de uma interface do usuário</h3>
+
+<p> A interface do usuário de uma atividade é fornecida por uma hierarquia de objetos &mdash; de vistas derivados
+da classe {@link android.view.View}.  Cada vista controla um espaço retangular específico
+dentro da janela da atividade e pode responder à interação com o usuário. Por exemplo: uma vista pode ser
+um botão que inicia uma ação quando o usuário toca nele.</p>
+
+<p>O Android oferece algumas vistas prontas que podem ser usadas para projetar e organizar
+o layout. "Widgets" são vistas que fornecem elementos visuais (e interativos) à tela,
+como um botão, um campo de texto, uma caixa de seleção ou apenas uma imagem. "Layouts" são vistas derivadas de {@link
+android.view.ViewGroup} que oferecem um modelo de layout exclusivo para suas vistas filhas,
+como um layout linear, um layout em grade ou um layout relativo. Também é possível definir como subclasse as classes
+{@link android.view.View} e {@link android.view.ViewGroup} (ou subclasses existentes) para criar widgets e layouts próprios
+e aplicá-los no layout da atividade.</p>
+
+<p>A forma mais comum de definir um layout usando vistas é com um arquivo de layout XML salvo
+nos recursos do aplicativo. Assim, é possível manter o projeto da interface do usuário separado
+do código fonte que define o comportamento da atividade. É possível definir o layout como a IU da atividade
+com {@link android.app.Activity#setContentView(int) setContentView()}, passando
+o ID de recurso do layout. No entanto, também é possível criar novas {@link android.view.View}s
+no código da atividade e compilar uma hierarquia de vistas inserindo novas {@link
+android.view.View}s em um {@link android.view.ViewGroup} e, em seguida, usar esse layout passando a raiz
+{@link android.view.ViewGroup} para {@link android.app.Activity#setContentView(View)
+setContentView()}.</p>
+
+<p>Para obter mais informações sobre a criação de uma interface do usuário, consulte a documentação <a href="{@docRoot}guide/topics/ui/index.html">Interface do Usuário</a>.</p>
+
+
+
+<h3 id="Declaring">Declaração de uma atividade no manifesto</h3>
+
+<p>É preciso declarar a atividade no arquivo de manifesto para torná-la
+acessível para o sistema. Para declarar a atividade, abra o arquivo de manifesto e adicione um elemento <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+como filho do elemento
+<a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>. Por exemplo:</p>
+
+<pre>
+&lt;manifest ... &gt;
+  &lt;application ... &gt;
+      &lt;activity android:name=".ExampleActivity" /&gt;
+      ...
+  &lt;/application ... &gt;
+  ...
+&lt;/manifest &gt;
+</pre>
+
+<p>Existem outros atributos que podem ser incluídos nesse elemento para definir propriedades
+como o rótulo da atividade, um ícone para a atividade ou um tema para estilizar a IU da atividade.
+ O atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">{@code android:name}</a>
+ é o único atributo obrigatório &mdash; ele especifica o nome de classe da atividade. Depois
+de publicar o aplicativo, não se deve alterar-lhe o nome porque, se isso acontecer, podem ocorrer danos
+em algumas funcionalidades, como os atalhos do aplicativo (leia a publicação do blogue <a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Coisas
+que não podem mudar</a>).</p>
+
+<p>Consulte a referência do elemento <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+para obter mais informações sobre como declarar a atividade no manifesto.</p>
+
+
+<h4>Uso de filtros de intenções</h4>
+
+<p>Um elemento <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> também pode especificar vários filtros de intenções &mdash; usando o elemento <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> &mdash; para declarar o modo com que os componentes de aplicativo
+podem ativá-lo.</p>
+
+<p>Ao criar um novo aplicativo com as ferramentas do Android SDK, o esboço da atividade
+criado contém automaticamente um filtro de intenção que declara que a atividade responde
+à ação "main" (principal) e deve ser colocada na categoria "launcher” (inicializador). O filtro de intenção
+tem a seguinte aparência:</p>
+
+<pre>
+&lt;activity android:name=".ExampleActivity" android:icon="@drawable/app_icon"&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>O elemento <a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> especifica que este é o “principal” ponto de entrada do aplicativo. O elemento <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> especifica que essa atividade deve ser listada no inicializador do aplicativo
+do sistema (para permitir que os usuários iniciem essa atividade).</p>
+
+<p>Se pretende-se que o aplicativo seja autônomo e que não permita que outros aplicativos ativem
+suas atividades, não será necessário nenhum outro filtro de intenção. Só uma atividade deve ter
+a ação "main" e a categoria "launcher", como no exemplo anterior. As atividades
+que não devem estar disponíveis a outros aplicativos não devem ter filtros de intenção, já que é possível
+iniciá-las por meio de intenções explícitas (conforme discutido na seção a seguir).</p>
+
+<p>No entanto, se a atividade deve responder a intenções implícitas derivadas de outros aplicativos
+(e do aplicativo em questão), é preciso definir filtros de intenções adicionais
+para a atividade. Para cada tipo de intenção que deve responder, é preciso incluir um <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> que contenha um elemento
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> e, opcionalmente, um elemento <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> e/ou um elemento <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a>. Esses elementos especificam o tipo de intenção a que a atividade pode
+responder.</p>
+
+<p>Para obter mais informações sobre a forma com que as atividades podem responder a intenções, consulte o documento
+<a href="{@docRoot}guide/components/intents-filters.html">Intenções e filtros de intenções</a>.</p>
+
+
+
+<h2 id="StartingAnActivity">Início de uma atividade</h2>
+
+<p>Para iniciar outra atividade, é possível chamar {@link android.app.Activity#startActivity
+startActivity()} passando uma {@link android.content.Intent} que descreva a atividade
+que se deseja iniciar. A intenção especifica a atividade exata que deve ser iniciada ou descreve o tipo
+de ação que ela deve executar (e o sistema seleciona a atividade adequada,
+que
+pode ser até de um outro aplicativo). Uma intenção também pode portar pequenas quantidades de dados
+a serem usados pela atividade iniciada.</p>
+
+<p>Ao trabalhar no aplicativo, frequentemente será necessário iniciar uma atividade conhecida.
+ Para isso, pode-se criar uma intenção que defina explicitamente a atividade que deve ser iniciada
+por meio de um nome de classe. Por exemplo, a seguir é demonstrado como uma atividade inicia outra atividade de nome {@code
+SignInActivity}:</p>
+
+<pre>
+Intent intent = new Intent(this, SignInActivity.class);
+startActivity(intent);
+</pre>
+
+<p>No entanto, o aplicativo também pode ter que executar algumas ações, como enviar um e-mail,
+mensagem de texto ou atualização de status usando os dados da atividade em questão. Nesse caso, o aplicativo
+pode não ter suas próprias atividades para executar tais ações; para isso, pode-se aproveitar as atividades
+fornecidas por outros aplicativos do dispositivo que podem executar essas ações. Esses são os casos
+em que as intenções são muito importantes &mdash; é possível criar uma intenção que descreva
+uma ação a executar para que o sistema
+inicie a atividade apropriada de outro aplicativo. Se houver
+mais de uma atividade que possa manipular a intenção, o usuário poderá escolher qual usará. Por exemplo:
+ se quiser que o usuário envie uma mensagem de e-mail, é possível criar
+a seguinte intenção:</p>
+
+<pre>
+Intent intent = new Intent(Intent.ACTION_SEND);
+intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);
+startActivity(intent);
+</pre>
+
+<p>O {@link android.content.Intent#EXTRA_EMAIL} adicionado à intenção é uma matriz de sequência
+de endereços de e-mail para os quais o e-mail poderá ser enviado. Quando um aplicativo de e-mail responde à essa intenção,
+ele lê a matriz de sequência fornecida no extra e a coloca no campo "para"
+do formulário de composição do e-mail. Nessa situação, a atividade do aplicativo de e-mail inicia e, quando o usuário termina o trabalho,
+sua atividade é retomada.</p>
+
+
+
+
+<h3 id="StartingAnActivityForResult">Início de uma atividade para um resultado</h3>
+
+<p>Às vezes, é necessário receber um resultado de alguma atividade iniciada. Nesse caso,
+ inicie a atividade chamando {@link android.app.Activity#startActivityForResult
+startActivityForResult()} (em vez de {@link android.app.Activity#startActivity
+ startActivity()}). Para receber o resultado de uma atividade
+subsequente, implemente o método de retorno de chamada
+{@link android.app.Activity#onActivityResult onActivityResult()}. Quando a atividade subsequente estiver concluída, ela retornará um resultado em uma {@link
+android.content.Intent} para o método
+{@link android.app.Activity#onActivityResult onActivityResult()}.</p>
+
+<p>Por exemplo, talvez você queira que o usuário escolha um dos contatos dele, deste modo, a atividade poderá
+fazer algo com as informações naquele contato. A seguir expõe-se como criar uma intenção desse tipo
+e manipular o resultado:</p>
+
+<pre>
+private void pickContact() {
+    // Create an intent to "pick" a contact, as defined by the content provider URI
+    Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
+    startActivityForResult(intent, PICK_CONTACT_REQUEST);
+}
+
+&#64;Override
+protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+    // If the request went well (OK) and the request was PICK_CONTACT_REQUEST
+    if (resultCode == Activity.RESULT_OK &amp;&amp; requestCode == PICK_CONTACT_REQUEST) {
+        // Perform a query to the contact's content provider for the contact's name
+        Cursor cursor = getContentResolver().query(data.getData(),
+        new String[] {Contacts.DISPLAY_NAME}, null, null, null);
+        if (cursor.moveToFirst()) { // True if the cursor is not empty
+            int columnIndex = cursor.getColumnIndex(Contacts.DISPLAY_NAME);
+            String name = cursor.getString(columnIndex);
+            // Do something with the selected contact's name...
+        }
+    }
+}
+</pre>
+
+<p>Esse exemplo mostra a lógica básica que deve ser usada no método {@link
+android.app.Activity#onActivityResult onActivityResult()} para manipular
+o resultado de uma atividade. A primeira condição verifica se a solicitação foi bem-sucedida &mdash; se for,
+o {@code resultCode} será {@link android.app.Activity#RESULT_OK} &mdash; e se a solicitação
+a que esse resultado responderá for desconhecida &mdash;, nesse caso, o {@code requestCode} corresponderá
+ao segundo parâmetro com {@link android.app.Activity#startActivityForResult
+startActivityForResult()}. A partir daí, o código manipula o resultado da atividade com uma consulta
+dos dados retornados em uma {@link android.content.Intent} (o parâmetro {@code data}).</p>
+
+<p>Nesse momento, um {@link
+android.content.ContentResolver} executa uma consulta em um provedor de conteúdo, que retorna
+um {@link android.database.Cursor} que permite a leitura dos dados consultados. Para obter mais informações,
+consulte o documento <a href="{@docRoot}guide/topics/providers/content-providers.html">Provedores de conteúdo</a>.</p>
+
+<p>Para obter mais informações sobre intenções, consulte o documento
+<a href="{@docRoot}guide/components/intents-filters.html">Intenções e filtros de intenções</a>.</p>
+
+
+<h2 id="ShuttingDown">Encerramento de uma atividade</h2>
+
+<p>Para encerrar uma atividade, chame o método {@link android.app.Activity#finish
+finish()}. Também é possível encerrar uma atividade separada iniciada anteriormente chamando
+{@link android.app.Activity#finishActivity finishActivity()}.</p>
+
+<p class="note"><strong>Observação:</strong> na maioria dos casos, não se deve finalizar explicitamente
+uma atividade usando esses métodos. Conforme discutido na seção anterior sobre o ciclo de vida da atividade,
+o sistema Android gerencia a vida de uma atividade, portanto não é necessário finalizar
+as atividades. Chamar esses métodos poderia afetar negativamente a experiência
+do usuário esperada e isso só deve ser usado quando realmente não se desejar que o usuário
+retorne a essa instância da atividade.</p>
+
+
+<h2 id="Lifecycle">Gerenciamento do ciclo de vida da atividade</h2>
+
+<p>O gerenciamento do ciclo de vida das atividades por meio da implementação
+de métodos de retorno de chamada
+é essencial para desenvolver um aplicativo flexível. O ciclo de vida de uma atividade é diretamente afetado
+por sua associação a outras atividades, sua tarefa e sua pilha de retorno.</p>
+
+<p>Uma atividade pode existir essencialmente em três estados:</p>
+
+<dl>
+  <dt><i>Retomada</i></dt>
+    <dd>A atividade está em primeiro plano na tela e tem o foco do usuário (em geral,
+chama-se esse estado de "em execução”).</dd>
+
+  <dt><i>Pausada</i></dt>
+    <dd>A atividade ainda está visível, mas outra atividade está em primeiro plano e tem o foco. Ou seja,
+outra atividade está visível por cima desta e está parcialmente transparente
+ou não cobre inteiramente a tela. Uma atividade pausada está totalmente ativa (o objeto
+{@link android.app.Activity} está retido na memória, mantém todas as informações de estado e do membro e permanece anexado
+ao gerenciador de janela), mas pode ser eliminada pelo sistema em situações de memória extremamente baixa.</dd>
+
+  <dt><i>Interrompida</i></dt>
+    <dd>A atividade está totalmente suplantada por outra (a atividade passa para
+"segundo plano"). Uma atividade interrompida ainda está ativa (o objeto
+{@link android.app.Activity} está retido na memória, mantém todas as informações de estado e do membro, mas <em>não</em> está
+anexado ao gerenciador de janelas). No entanto, ela não fica mais visível para o usuário
+e pode ser eliminada pelo sistema se a memória for necessária em outro processo.</dd>
+</dl>
+
+<p>Se uma atividade estiver pausada ou interrompida, o sistema poderá descartá-la da memória solicitando a
+finalização do processo (chamando seu método {@link android.app.Activity#finish finish()}) ou simplesmente
+eliminando-o.  Quando a atividade for reaberta (depois de finalizada ou eliminada), ele deverá ser
+totalmente recriada.</p>
+
+
+
+<h3 id="ImplementingLifecycleCallbacks">Implementação de retornos de chamada do ciclo de vida</h3>
+
+<p>Quando uma atividade transita entre os diferentes estados descritos acima, ela é notificada
+por meio de vários métodos de retorno de chamada. Todos os métodos de retorno de chamada são ganchos
+que podem ser substituídos para executar um trabalho adequado quando o estado da atividade muda. O esqueleto de atividade
+a seguir contém cada um dos métodos do ciclo de vida fundamentais:</p>
+
+
+<pre>
+public class ExampleActivity extends Activity {
+    &#64;Override
+    public void {@link android.app.Activity#onCreate onCreate}(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // The activity is being created.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStart onStart()} {
+        super.onStart();
+        // The activity is about to become visible.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onResume onResume()} {
+        super.onResume();
+        // The activity has become visible (it is now "resumed").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onPause onPause()} {
+        super.onPause();
+        // Another activity is taking focus (this activity is about to be "paused").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStop onStop()} {
+        super.onStop();
+        // The activity is no longer visible (it is now "stopped")
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onDestroy onDestroy()} {
+        super.onDestroy();
+        // The activity is about to be destroyed.
+    }
+}
+</pre>
+
+<p class="note"><strong>Observação:</strong> a implementação desses métodos do ciclo de vida
+deve sempre chamar a implementação da superclasse antes de realizar qualquer trabalho, conforme ilustrado no exemplo acima.</p>
+
+<p>Juntos, esses métodos definem todo o ciclo de vida da atividade. Ao implementá-los,
+é possível monitorar três loops aninhados no ciclo de vida da atividade: </p>
+
+<ul>
+<li><b>Todo o tempo de vida</b> de uma atividade acontece entre a chamada de {@link
+android.app.Activity#onCreate onCreate()} e a chamada de {@link
+android.app.Activity#onDestroy}. A atividade deve executar configuração
+de estado "global" (como definindo layout) em {@link android.app.Activity#onCreate onCreate()}
+e liberar todos os recursos restantes em {@link android.app.Activity#onDestroy}. Por exemplo: se a sua atividade
+tiver um encadeamento em execução em segundo plano para baixar dados da rede, ela pode
+criá-lo em {@link android.app.Activity#onCreate onCreate()} e, em seguida, interrompê-lo em {@link
+android.app.Activity#onDestroy}.</li>
+
+<li><p>O <b>tempo de vida visível</b> de uma atividade acontece entre a chamada de {@link
+android.app.Activity#onStart onStart()} e a chamada de {@link
+android.app.Activity#onStop onStop()}. Durante esse tempo, o usuário pode ver a atividade
+na tela e interagir com ela. Por exemplo: {@link android.app.Activity#onStop onStop()} é chamado
+quando uma nova atividade inicia e esta não fica mais visível. Entre esses dois métodos, é possível
+manter os recursos necessários para exibir a atividade ao usuário. Por exemplo: você pode registrar
+um {@link android.content.BroadcastReceiver} em {@link
+android.app.Activity#onStart onStart()} para monitorar as alterações que afetem a IU e cancelar o registro
+ em {@link android.app.Activity#onStop onStop()} quando o usuário não puder mais ver
+o que você está exibindo. O sistema pode chamar {@link android.app.Activity#onStart onStart()} e {@link
+android.app.Activity#onStop onStop()} várias vezes durante todo o tempo de vida de uma atividade
+enquanto ela alterna entre visível e oculta ao usuário.</p></li>
+
+<li><p>O <b>tempo de vida em primeiro plano</b> de uma atividade ocorre entre a chamada de {@link
+android.app.Activity#onResume onResume()} e a chamada de {@link android.app.Activity#onPause
+onPause()}. Durante esse tempo, a atividade está na frente de todas as outras atividades na tela
+e tem o foco de interação do usuário.  Frequentemente, uma atividade pode transitar entre o primeiro e
+o segundo plano &mdash; por exemplo, {@link android.app.Activity#onPause onPause()} é chamado quando o dispositivo está em suspensão
+ou quando uma caixa de diálogo é exibida. Como esse estado pode transitar frequentemente, o código nesses dois métodos deve
+ser bem leve para evitar transições lentas que façam o usuário esperar.</p></li>
+</ul>
+
+<p>A figura 1 ilustra esses loops e os caminhos que uma atividade pode tomar entre os estados.
+Os retângulos representam os métodos de retorno de chamada que podem ser implementados para executar operações
+quando a atividade transita entre estados. <p>
+
+<img src="{@docRoot}images/activity_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Figura 1.</strong> Ciclo de vida da atividade.</p>
+
+<p>Os mesmos métodos de retorno de chamada do ciclo de vida são listados na tabela 1, que descreve cada um deles
+em mais detalhes e localiza cada um dentro
+do ciclo de vida geral da atividade, inclusive se o sistema puder eliminar a atividade depois
+da conclusão do método de retorno de chamada.</p>
+
+<p class="table-caption"><strong>Tabela 1.</strong> Resumo dos métodos de retorno de chamada
+do ciclo de vida da atividade.</p>
+
+<table border="2" width="85%" frame="hsides" rules="rows">
+<colgroup align="left" span="3"></colgroup>
+<colgroup align="left"></colgroup>
+<colgroup align="center"></colgroup>
+<colgroup align="center"></colgroup>
+
+<thead>
+<tr><th colspan="3">Método</th> <th>Descrição</th> <th>Eliminável depois de?</th> <th>Próximo</th></tr>
+</thead>
+
+<tbody>
+<tr>
+  <td colspan="3" align="left"><code>{@link android.app.Activity#onCreate onCreate()}</code></td>
+  <td>Chamado quando a atividade é criada pela primeira vez.
+      É quando deve-se fazer toda a configuração estática normal &mdash;
+criar vistas, vincular dados a listas etc.  Esse método recebe
+um objeto Bundle (pacote) contendo o estado anterior da atividade, se esse
+estado for capturado (consulte <a href="#actstate">Gravação do estado da atividade</a>
+mais adiante).
+      <p>Sempre seguido de {@code onStart()}.</p></td>
+  <td align="center">Não</td>
+      <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td rowspan="5" style="border-left: none; border-right: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onRestart
+onRestart()}</code></td>
+   <td>Chamado depois que atividade tiver sido interrompida, logo antes de ser
+reiniciada.
+       <p>Sempre seguido de {@code onStart()}.</p></td>
+   <td align="center">Não</td>
+   <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStart onStart()}</code></td>
+   <td>Chamado logo antes de a atividade se tornar visível ao usuário.
+       <p>Seguido de {@code onResume()} se a atividade
+for para segundo plano ou {@code onStop()} se ficar oculta.</p></td>
+    <td align="center">Não</td>
+    <td align="center">{@code onResume()} <br/>ou<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td rowspan="2" style="border-left: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td align="left"><code>{@link android.app.Activity#onResume onResume()}</code></td>
+   <td>Chamado logo antes de a atividade iniciar
+a interação com o usuário.  Nesse ponto, a atividade estará
+no topo da pilha de atividades com a entrada do usuário direcionada a ela.
+       <p>Sempre seguido de {@code onPause()}.</p></td>
+   <td align="center">Não</td>
+   <td align="center">{@code onPause()}</td>
+</tr>
+
+<tr>
+   <td align="left"><code>{@link android.app.Activity#onPause onPause()}</code></td>
+   <td>Chamado quando o sistema está prestes a retomar
+outra atividade.  Esse método normalmente é usado para confirmar alterações
+não salvas a dados persistentes, animações interrompidas e outras coisas que talvez
+estejam consumindo CPU e assim por diante.  Ele sempre deve fazer tudo bem rapidamente porque
+a próxima atividade não será retomada até ela retornar.
+       <p>Seguido de {@code onResume()} se a atividade
+retornar para a frente ou de {@code onStop()} se ficar
+invisível ao usuário.</td>
+   <td align="center"><strong style="color:#800000">Sim</strong></td>
+   <td align="center">{@code onResume()} <br/>ou<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStop onStop()}</code></td>
+   <td>Chamado quando a atividade não está mais visível ao usuário.  Isso
+pode acontecer porque ela está sendo destruída ou porque outra atividade
+(uma existente ou uma nova) foi retomada e está cobrindo-a.
+       <p>Seguido de {@code onRestart()} se a atividade
+estiver voltando a interagir com o usuário
+ou {@code onDestroy()} se estiver saindo.</p></td>
+   <td align="center"><strong style="color:#800000">Sim</strong></td>
+   <td align="center">{@code onRestart()} <br/>ou<br/> {@code onDestroy()}</td>
+</tr>
+
+<tr>
+   <td colspan="3" align="left"><code>{@link android.app.Activity#onDestroy
+onDestroy()}</code></td>
+   <td>Chamado antes de a atividade ser destruída.  É a última chamada
+que a atividade receberá.  Pode ser chamado porque a atividade
+está finalizando (alguém chamou <code>{@link android.app.Activity#finish
+       finish()}</code> nela) ou porque o sistema está destruindo temporariamente essa instância
+da atividade para poupar espaço.  É possível distinguir
+entre essas duas situações com o método <code>{@link
+       android.app.Activity#isFinishing isFinishing()}</code>.</td>
+   <td align="center"><strong style="color:#800000">Sim</strong></td>
+   <td align="center"><em>nada</em></td>
+</tr>
+</tbody>
+</table>
+
+<p>A coluna de nome "Eliminável depois de?" indica se o sistema pode ou não
+eliminar o processo que hospeda a atividade a qualquer momento <em>após o método retornar</em>
+sem executar outra linha de código da atividade.  Estes três métodos são marcados como "sim": ({@link
+android.app.Activity#onPause
+onPause()}, {@link android.app.Activity#onStop onStop()} e {@link android.app.Activity#onDestroy
+onDestroy()}). Como {@link android.app.Activity#onPause onPause()} é o primeiro
+dos três, assim que a atividade é criada, {@link android.app.Activity#onPause onPause()} é
+o último método que certamente será chamado antes que o processo <em>possa</em> ser eliminado &mdash;
+se o sistema precisar recuperar memória em uma emergência, {@link
+android.app.Activity#onStop onStop()} e {@link android.app.Activity#onDestroy onDestroy()} poderão
+não ser chamados. Portanto, deve-se usar {@link android.app.Activity#onPause onPause()} para gravar
+dados persistentes cruciais (como edições do usuário) no armazenamento. No entanto, deve-se sempre ser seletivo
+acerca das informações que devem ser retidas durante {@link android.app.Activity#onPause onPause()} porque
+qualquer procedimento de bloqueio nesse método bloqueará a transição para a próxima atividade e retardará
+a experiência do usuário.</p>
+
+<p> Os métodos marcados como "Não" na coluna <b>Elimináveis</b> protegem o processo que hospeda
+a atividade. evitando a eliminação dele no momento em que é chamado.  Assim, uma atividade é eliminável
+do momento em que {@link android.app.Activity#onPause onPause()} retorna ao momento em que
+{@link android.app.Activity#onResume onResume()} é chamado. Ela não será eliminável novamente até que
+{@link android.app.Activity#onPause onPause()} seja chamado e retorne novamente. </p>
+
+<p class="note"><strong>Observação:</strong> uma atividade tecnicamente não "eliminável”, por essa definição
+na tabela 1, ainda pode ser eliminada pelo sistema &mdash; mas isso só ocorreria
+em circunstâncias extremas, quando não houvesse outra opção. A possibilidade de uma atividade ser eliminada
+é discutida em mais detalhes no documento <a href="{@docRoot}guide/components/processes-and-threads.html">Processos
+e encadeamentos</a>.</p>
+
+
+<h3 id="SavingActivityState">Gravação do estado da atividade</h3>
+
+<p>A introdução a <a href="#Lifecycle">Gerenciamento do ciclo de vida da atividade</a> menciona brevemente
+que,
+quando uma atividade é pausada ou interrompida, o estado da atividade é retido. Isso acontece porque
+o objeto {@link android.app.Activity} continua mantido na memória quando a atividade está pausada
+ou interrompida &mdash; todas as informações sobre seus membros e estado atual ainda estão ativas. Assim, todas as alterações
+feitas pelo usuário dentro da atividade são retidas, de forma que, quando a atividade retornar
+ao primeiro plano (quando é "retomada"), essas alterações ainda estejam lá.</p>
+
+<p>No entanto, quando o sistema destrói uma atividade para recuperar memória, o objeto {@link
+android.app.Activity} é destruído, por isso o sistema não pode simplesmente retomá-la com seu estado
+intacto. Em vez disso, o sistema tem que recriar o objeto {@link android.app.Activity} se o usuário
+navegar de volta a ele. Ainda assim, o usuário não estará ciente
+de que o sistema destruiu a atividade e recriou-a e, assim, provavelmente
+esperará que a atividade esteja exatamente como antes. Nessa situação, para garantir que
+as informações importantes sobre o estado da atividade sejam preservadas, implementa-se um método
+adicional de retorno de chamada que permite salvar as informações sobre o estado da atividade: {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}.</p>
+
+<p>O sistema chama {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+antes de deixar a mensagem vulnerável à destruição. O sistema passa a esse método
+um {@link android.os.Bundle} no qual é possível salvar
+informações de estado acerca da atividade, como pares nome-valor, usando métodos como {@link
+android.os.Bundle#putString putString()} e {@link
+android.os.Bundle#putInt putInt()}. Em seguida, se o sistema eliminar o processo
+do aplicativo e o usuário voltar à atividade, o sistema recriará a atividade e passará
+o {@link android.os.Bundle} a {@link android.app.Activity#onCreate onCreate()} e a {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}. Usando qualquer um desses métodos,
+é possível extrair o estado salvo de {@link android.os.Bundle} e restaurar
+o estado da atividade. Se não houver informações de estado a restaurar, o {@link
+android.os.Bundle} passado será nulo (que é o caso quando a atividade é criada
+pela primeira vez).</p>
+
+<img src="{@docRoot}images/fundamentals/restore_instance.png" alt="" />
+<p class="img-caption"><strong>Figura 2.</strong> As duas formas pelas quais uma atividade retorna ao foco
+do usuário com seu estado intacto: ou a atividade é destruída e recriada em seguida — e ela deve restaurar
+o estado salvo anteriormente —, ou a atividade é interrompida e retomada em seguida — e o estado dela
+permanece intacto.</p>
+
+<p class="note"><strong>Observação:</strong> não há garantia nenhuma de que {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} será chamado antes de a atividade
+ser destruída porque há casos em que não será necessário salvar o estado
+(como quando o usuário sai da atividade usando o botão <em>Voltar</em>) porque o usuário está fechando
+explicitamente
+a atividade). Se o sistema chamar {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()}, ele o fará antes de {@link
+android.app.Activity#onStop onStop()} e possivelmente antes de {@link android.app.Activity#onPause
+onPause()}.</p>
+
+<p>No entanto, mesmo se você não fizer nada e não implementar {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}, parte do estado da atividade
+será restaurada pela implementação padrão da classe {@link android.app.Activity} de {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}. Especificamente, a implementação
+padrão chama o método {@link
+android.view.View#onSaveInstanceState onSaveInstanceState()} correspondente para cada {@link
+android.view.View} no layout, o que permite que cada vista forneça informações próprias sobre o que
+deve ser salvo. Quase todo widget na estrutura do Android implementa esse método
+conforme o necessário, de forma que qualquer alteração visível na IU seja automaticamente salva e restaurada
+ao criar a atividade. Por exemplo, o widget {@link android.widget.EditText} salva qualquer texto
+inserido pelo usuário e o widget {@link android.widget.CheckBox} salva independente
+de verificação. O único trabalho necessário será fornecer um ID exclusivo (com
+o atributo <a href="{@docRoot}guide/topics/resources/layout-resource.html#idvalue">{@code android:id}</a>) para cada widget que for salvar seu estado. Se o widget não salvar nenhum ID, o sistema
+não poderá salvar seu estado.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<p>Para fazer com que uma vista deixe explicitamente de salvar seu estado, defina o atributo
+{@link android.R.attr#saveEnabled android:saveEnabled} como {@code "false"} ou chame
+o método {@link android.view.View#setSaveEnabled setSaveEnabled()}. Geralmente, não se deve
+desativar isso, mas é possível caso se deseje restaurar o estado da IU da atividade de forma diferente.</p>
+</div>
+</div>
+
+<p>Embora a implementação padrão de {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} salve informações úteis sobre
+a IU da atividade, talvez ainda seja necessário substituí-la para salvar informações adicionais.
+Por exemplo: pode ser necessário salvar valores de membro alterados durante a vida da atividade (possivelmente
+correlacionados a valores restaurados na IU, mas os membros que retêm esses valores de IU, por padrão,
+não são restaurados).</p>
+
+<p>Como a implementação padrão de {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} ajuda a salvar o estado da IU,
+se o método for substituído para salvar informações de estado adicionais, deve-se sempre chamar a implementação
+da superclasse de {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+antes de fazer qualquer trabalho. Da mesma forma, deve-se também chamar a implementação da superclasse de {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} se ela for substituída para que
+a implementação padrão possa restaurar estados da vista.</p>
+
+<p class="note"><strong>Observação:</strong> Como nem sempre {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()} é chamado,
+deve-se usá-lo somente para registrar o estado temporário da atividade (o estado
+da IU) &mdash; nunca se deve usá-lo para armazenar dados persistentes.  Em vez disso, deve-se usar {@link
+android.app.Activity#onPause onPause()} para armazenar dados persistentes (como dados que devem ser salvos
+em um banco de dados) quando o usuário sair da atividade.</p>
+
+<p>Uma boa forma de testar a capacidade do aplicativo de restaurar seu estado é girar
+o dispositivo para alterar a orientação da tela. Quando a orientação de tela muda, o sistema
+destrói e recria a atividade para aplicar recursos alternativos que podem ser disponibilizados
+para a nova configuração de tela. Por esse motivo somente, é muito importante que a atividade
+restaure completamente seu estado quando for recriada porque os usuários normalmente giram a tela
+ao usar aplicativos.</p>
+
+
+<h3 id="ConfigurationChanges">Manipulação de alterações de configuração</h3>
+
+<p>Algumas configurações do dispositivo podem mudar em tempo de execução (como A orientação da tela, disponibilidade
+do teclado e idioma). Quando ocorre uma alteração, o Android recria a atividade em execução
+(o sistema chama {@link android.app.Activity#onDestroy} e, em seguida, chama {@link
+android.app.Activity#onCreate onCreate()} imediatamente). Esse comportamento foi projetado
+para ajudar o aplicativo a se adaptar a novas configurações recarregando-o automaticamente
+com recursos alternativos fornecidos pelo programador (como diferentes layouts
+para orientações e tamanhos de telas diferentes).</p>
+
+<p>Se você projetar adequadamente a atividade para manipular um reinício devido a uma alteração na orientação da tela
+e restaurar o estado da atividade conforme descrito acima, o aplicativo será mais resiliente a outros
+eventos inesperados no ciclo de vida da atividade.</p>
+
+<p>A melhor forma de manipular um reinício desse tipo
+é salvar e restaurar o estado da atividade com {@link
+ android.app.Activity#onSaveInstanceState onSaveInstanceState()} e {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} (ou com {@link
+android.app.Activity#onCreate onCreate()}), conforme abordado na seção anterior.</p>
+
+<p>Para obter mais informações sobre alterações de configuração que podem ocorrer em tempo de execução e como manipulá-las,
+leia o guia em <a href="{@docRoot}guide/topics/resources/runtime-changes.html">Tratamento de
+alterações em tempo de execução</a>.</p>
+
+
+
+<h3 id="CoordinatingActivities">Coordenação de atividades</h3>
+
+ <p>Quando uma atividade inicia outra, ambas passam por transições no ciclo de vida. A primeira atividade
+é pausada e interrompida (embora ela não seja interrompida se ainda estiver visível em segundo plano) enquanto a outra
+atividade é criada. Caso essas atividades compartilhem dados salvos em disco ou em outro lugar, é importante
+compreender que a primeira atividade não é totalmente interrompida antes da criação da segunda.
+Em vez disso, o processo de iniciar a segunda se sobrepõe ao processo de interromper
+a primeira.</p>
+
+<p>A ordem dos retornos de chamada do ciclo de vida é bem definida, especialmente quando as duas atividades estão
+no mesmo processo e uma está iniciando a outra. A seguir há a ordem das operações que ocorrem quando a atividade A
+inicia a atividade B: </p>
+
+<ol>
+<li>O método {@link android.app.Activity#onPause onPause()} da atividade A é executado.</li>
+
+<li>Os métodos {@link android.app.Activity#onCreate onCreate()}, {@link
+android.app.Activity#onStart onStart()} e {@link android.app.Activity#onResume onResume()}
+da atividade B são executados em sequência (a atividade B agora tem o foco do usuário).</li>
+
+<li>Em seguida, se a atividade A não estiver mais visível na tela, seu método {@link
+android.app.Activity#onStop onStop()} é executado.</li>
+</ol>
+
+ <p>Essa sequência previsível de retornos de chamada do ciclo de vida permite gerenciar a transição
+de informações de uma atividade para outra. Por exemplo: se você for gravar em um banco de dados o momento em que
+a primeira atividade é interrompida para que a atividade a seguir possa lê-lo, é preciso realizar a gravação
+no banco de dados durante {@link android.app.Activity#onPause onPause()} e não durante {@link
+android.app.Activity#onStop onStop()}.</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how Android maintains a history of activities and
+enables user multitasking, continue with the <b><a
+href="{@docRoot}guide/components/tasks-and-back-stack.html">Tasks and Back
+Stack</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/pt-br/guide/components/bound-services.jd b/docs/html-intl/intl/pt-br/guide/components/bound-services.jd
new file mode 100644
index 0000000..aa02494
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/bound-services.jd
@@ -0,0 +1,658 @@
+page.title=Serviços vinculados
+parent.title=Serviços
+parent.link=services.html
+@jd:body
+
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>Neste documento</h2>
+<ol>
+  <li><a href="#Basics">Conceitos básicos</a></li>
+  <li><a href="#Creating">Criação de um serviço vinculado</a>
+    <ol>
+      <li><a href="#Binder">Extensão da classe Binder</a></li>
+      <li><a href="#Messenger">Uso de um mensageiro</a></li>
+    </ol>
+  </li>
+  <li><a href="#Binding">Vinculação a um serviço</a></li>
+  <li><a href="#Lifecycle">Gerenciamento do ciclo de vida de um serviço vinculado</a></li>
+</ol>
+
+<h2>Classes principais</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.content.ServiceConnection}</li>
+  <li>{@link android.os.IBinder}</li>
+</ol>
+
+<h2>Exemplos</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+      RemoteService}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>Veja também</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/services.html">Serviços</a></li>
+</ol>
+</div>
+
+
+<p>Um serviço vinculado é o servidor em uma interface servidor-cliente. Um serviço vinculado permite que componentes
+(como atividades) sejam vinculados ao serviço, enviem solicitações, recebam respostas e até estabeleçam
+comunicação entre processos (IPC). Um serviço vinculado, geralmente, vive somente enquanto serve
+outro componente do aplicativo e não é executado em segundo plano indefinidamente.</p>
+
+<p>Este documento mostra como criar um serviço vinculado, inclusive como criar vínculos
+com o serviço a partir de outros componentes do aplicativo. No entanto, você também deve consultar a documentação <a href="{@docRoot}guide/components/services.html">Serviços</a> para obter
+informações adicionais sobre serviços de forma geral, por exemplo: como enviar notificações de um serviço,
+como definir o serviço a ser executado em primeiro plano etc.</p>
+
+
+<h2 id="Basics">Conceitos básicos</h2>
+
+<p>Um serviço vinculado é uma implementação da classe {@link android.app.Service} que permite
+que outros aplicativos sejam vinculados e interajam com ele. Para fornecer a vinculação
+a um serviço, você deve implementar o método de retorno de chamada {@link android.app.Service#onBind onBind()}. Este método
+retorna um objeto {@link android.os.IBinder} que define a interface de programação
+que os clientes podem usar para interagir com o serviço.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Vinculação com um serviço iniciado</h3>
+
+<p>Como discutido na documentação <a href="{@docRoot}guide/components/services.html">Serviços</a>,
+é possível criar um serviço que já foi iniciado e vinculado. Ou seja, o serviço pode
+ser iniciado chamando {@link android.content.Context#startService startService()}, que permite que ele
+permaneça em execução indefinidamente e também permite que um cliente vincule-o chamando {@link
+android.content.Context#bindService bindService()}.
+  <p>Se você permitir que o serviço seja iniciado e vinculado, então, quando ele
+for iniciado, o sistema <em>não</em> o destruirá quando todos os clientes desfizerem a vínculo. Em vez disso, você deve
+interromper o serviço explicitamente chamando {@link android.app.Service#stopSelf stopSelf()} ou {@link
+android.content.Context#stopService stopService()}.</p>
+
+<p>Apesar de normalmente se implementar {@link android.app.Service#onBind onBind()}
+<em>ou</em> {@link android.app.Service#onStartCommand onStartCommand()}, às vezes
+é necessário implementar ambos. Por exemplo, um reprodutor de música pode achar útil permitir que o seu serviço
+permaneça em execução indefinidamente, além de fornecer vinculação. Desta forma, uma atividade pode iniciar o serviço
+para reproduzir algumas músicas e a música continuará em reprodução mesmo quando o usuário sair do aplicativo. Em seguida, quando o usuário
+voltar ao aplicativo, a atividade poderá vincular-se ao serviço para retomar o controle da reprodução.</p>
+
+<p>Certifique-se de ler a seção sobre <a href="#Lifecycle">Gerenciamento do ciclo de vida de um serviço
+vinculado</a> para obter mais informações sobre o ciclo de vida do serviço ao adicionar vinculação
+a um serviço iniciado.</p>
+</div>
+</div>
+
+<p>Um cliente pode vincular-se ao serviço chamando {@link android.content.Context#bindService
+bindService()}. Quando isto ocorre, é preciso fornecer uma implementação de {@link
+android.content.ServiceConnection}, que monitora a conexão com o serviço. O método {@link
+android.content.Context#bindService bindService()} retorna imediatamente sem um valor,
+mas quando o sistema Android cria a conexão entre
+o cliente e o serviço, ele chama {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} em {@link
+android.content.ServiceConnection} para fornecer o {@link android.os.IBinder}
+que o cliente pode usar para comunicar-se com o serviço.</p>
+
+<p>Vários clientes podem conectar-se ao serviço de uma vez. No entanto, o sistema chama o método
+{@link android.app.Service#onBind onBind()} do serviço para recuperar o {@link android.os.IBinder}
+somente quando o primeiro cliente é vinculado. Em seguida, o sistema entrega o mesmo {@link android.os.IBinder}
+para quaisquer clientes adicionais que vincularem-se, sem chamar {@link android.app.Service#onBind onBind()} novamente.</p>
+
+<p>Quando o último cliente desvincular-se do serviço, o sistema destruirá o serviço
+(a não ser que ele também seja iniciado por {@link android.content.Context#startService startService()}).</p>
+
+<p>Ao implementar o serviço vinculado, o mais importante é definir a interface
+que o método de retorno de chamada {@link android.app.Service#onBind onBind()} retornará. Há poucas maneiras diferentes
+de definir a interface {@link android.os.IBinder} do serviço e a
+seção a seguir discute cada técnica.</p>
+
+
+
+<h2 id="Creating">Criação de um serviço vinculado</h2>
+
+<p>Ao criar um serviço que fornece vinculação, você deve fornecer um {@link android.os.IBinder}
+que ofereça a interface de programação que os clientes podem usar para interagir com o serviço. Há três maneiras
+possíveis de definir a interface:</p>
+
+<dl>
+  <dt><a href="#Binder">Extensão da classe Binder</a></dt>
+  <dd>Se o serviço for privado para o próprio aplicativo e for executado no mesmo processo que o cliente
+(o que é comum), deve-se criar a interface estendendo-se a classe {@link android.os.Binder}
+e retornando uma instância dela a partir de
+{@link android.app.Service#onBind onBind()}. O cliente receberá {@link android.os.Binder}
+e poderá usá-lo para acessar os métodos públicos disponíveis na implementação de {@link android.os.Binder}
+ou até em {@link android.app.Service} diretamente.
+  <p>Esta é a técnica preferencial quando o serviço é meramente um trabalhador de segundo plano
+para o aplicativo. O único motivo pelo qual não se criaria a interface desta maneira
+é porque o serviço está sendo usado por outros aplicativos ou em processos separados.</dd>
+
+  <dt><a href="#Messenger">Uso de um mensageiro</a></dt>
+  <dd>Caso precise que a interface funcione em diferentes processos, é possível
+criar uma interface para o serviço com {@link android.os.Messenger}. Desta maneira, o serviço
+define um {@link android.os.Handler} que responde a diferentes tipos de objetos {@link
+android.os.Message}. Este {@link android.os.Handler}
+é a base para {@link android.os.Messenger}, que pode então compartilhar um {@link android.os.IBinder}
+com o cliente, permitindo que ele envie comandos ao serviço usando objetos {@link
+android.os.Message}. Além disso, o cliente pode definir o próprio {@link android.os.Messenger}
+para que o serviço possa enviar as mensagens de volta.
+  <p>Esta é a maneira mais simples de estabelecer comunicação entre processos (IPC), pois o {@link
+android.os.Messenger} coloca todas as solicitações em fila em um único encadeamento para que você não precise
+projetar o serviço de modo que seja seguro para encadeamentos.</p>
+  </dd>
+
+  <dt>Uso de AIDL</dt>
+  <dd>O AIDL (Android Interface Definition Language, linguagem de definição de interface do Android) realiza todo o trabalho de decomposição de objetos
+em primitivos para que o sistema operacional possa entendê-los e dispô-los em processos
+para realizar a IPC. A técnica anterior, usando o {@link android.os.Messenger}, tem base em AIDL
+como a estrutura fundamental. Como mencionado acima, o {@link android.os.Messenger} cria uma fila
+de todas as solicitações de cliente em um único encadeamento para que o serviço receba uma solicitação por vez. Se, no entanto,
+você quiser que o serviço lide com várias solicitações simultaneamente, é possível usar a AIDL
+diretamente. Neste caso, o serviço deverá ser capaz de realizar vários encadeamentos e ser programado de forma segura para encadeamentos.
+  <p>Para usar a AIDL diretamente, deve-se
+criar um arquivo {@code .aidl} que defina a interface de programação. As ferramentas SDK do Android
+usam este arquivo para gerar uma classe abstrata que implemente a interface e lide com a IPC,
+que pode ser estendida dentro do serviço.</p>
+  </dd>
+</dl>
+
+  <p class="note"><strong>Observação:</strong> a maioria dos aplicativos <strong>não deve</strong> usar a AIDL
+para criar um serviço vinculado, pois isto requer capacidade de se trabalhar com encadeamentos múltiplos
+e pode resultar em uma implementação mais complicada. Portanto, a AIDL não é adequada para a maioria dos aplicativos
+e este documento não discute o seu uso para o serviço. Caso tenha certeza de que
+precisa usar a AIDL diretamente, consulte a documentação
+<a href="{@docRoot}guide/components/aidl.html">AIDL</a>.</p>
+
+
+
+
+<h3 id="Binder">Extensão da classe Binder</h3>
+
+<p>Se o serviço for usado somente pelo aplicativo local e não precisar trabalhar entre processos,
+então será possível implementar a própria classe {@link android.os.Binder} que fornece ao cliente
+acesso direto aos métodos públicos no serviço.</p>
+
+<p class="note"><strong>Observação:</strong> isto funciona somente se o cliente e o serviço
+estiverem no mesmo aplicativo e processo, o que é muito comum. Por exemplo, isto funcionaria bem para um
+aplicativo de música que precise vincular uma atividade ao próprio serviço que está
+reproduzindo música em segundo plano.</p>
+
+<p>Como configurar:</p>
+<ol>
+  <li>No serviço, crie uma instância de {@link android.os.Binder} que:
+    <ul>
+      <li>contenha métodos públicos que o cliente possa chamar</li>
+      <li>retorne ao cliente a instância {@link android.app.Service}, que tenha métodos públicos
+que ele possa chamar</li>
+      <li>ou retorne uma instância de outra classe hospedada pelo serviço com métodos públicos
+que o cliente possa chamar</li>
+    </ul>
+  <li>Retorne esta instância de {@link android.os.Binder} a partir do método de retorno de chamada {@link
+android.app.Service#onBind onBind()}.</li>
+  <li>No cliente, receba o {@link android.os.Binder} a partir do método de retorno de chamada {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()}
+e faça chamadas para o serviços vinculados usando os métodos fornecidos.</li>
+</ol>
+
+<p class="note"><strong>Observação:</strong> o motivo pelo qual o serviço e o cliente devem estar no mesmo aplicativo
+é para que o cliente possa lançar o objeto retornado e chamar as APIs adequadamente. O serviço e o cliente
+também devem estar no mesmo processo, pois esta técnica não possui
+nenhuma ingerência entre processos.</p>
+
+<p>Por exemplo, a seguir há um serviço que fornece aos clientes acesso aos métodos no serviço
+por meio de uma implementação de {@link android.os.Binder}:</p>
+
+<pre>
+public class LocalService extends Service {
+    // Binder given to clients
+    private final IBinder mBinder = new LocalBinder();
+    // Random number generator
+    private final Random mGenerator = new Random();
+
+    /**
+     * Class used for the client Binder.  Because we know this service always
+     * runs in the same process as its clients, we don't need to deal with IPC.
+     */
+    public class LocalBinder extends Binder {
+        LocalService getService() {
+            // Return this instance of LocalService so clients can call public methods
+            return LocalService.this;
+        }
+    }
+
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        return mBinder;
+    }
+
+    /** method for clients */
+    public int getRandomNumber() {
+      return mGenerator.nextInt(100);
+    }
+}
+</pre>
+
+<p>O {@code LocalBinder} fornece o método {@code getService()} para que os clientes
+recuperem a instância atual de {@code LocalService}. Isto permite que os clientes chamem métodos públicos
+no serviço. Por exemplo, eles podem chamar {@code getRandomNumber()} a partir do serviço.</p>
+
+<p>Abaixo há uma atividade que vincula-se a {@code LocalService} e chama {@code getRandomNumber()}
+quando um botão é pressionado:</p>
+
+<pre>
+public class BindingActivity extends Activity {
+    LocalService mService;
+    boolean mBound = false;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to LocalService
+        Intent intent = new Intent(this, LocalService.class);
+        bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+
+    /** Called when a button is clicked (the button in the layout file attaches to
+      * this method with the android:onClick attribute) */
+    public void onButtonClick(View v) {
+        if (mBound) {
+            // Call a method from the LocalService.
+            // However, if this call were something that might hang, then this request should
+            // occur in a separate thread to avoid slowing down the activity performance.
+            int num = mService.getRandomNumber();
+            Toast.makeText(this, "number: " + num, Toast.LENGTH_SHORT).show();
+        }
+    }
+
+    /** Defines callbacks for service binding, passed to bindService() */
+    private ServiceConnection mConnection = new ServiceConnection() {
+
+        &#64;Override
+        public void onServiceConnected(ComponentName className,
+                IBinder service) {
+            // We've bound to LocalService, cast the IBinder and get LocalService instance
+            LocalBinder binder = (LocalBinder) service;
+            mService = binder.getService();
+            mBound = true;
+        }
+
+        &#64;Override
+        public void onServiceDisconnected(ComponentName arg0) {
+            mBound = false;
+        }
+    };
+}
+</pre>
+
+<p>O exemplo acima mostra como o cliente vincula um serviço usando uma implementação
+de {@link android.content.ServiceConnection} e o retorno de chamada {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()}. A próxima seção
+fornece mais informações sobre este processo de vinculação ao serviço.</p>
+
+<p class="note"><strong>Observação:</strong> o exemplo acima não desfaz a vinculação explicitamente a partir do serviço,
+mas todos os clientes devem fazê-lo no momento adequado (como quando a atividade pausa).</p>
+
+<p>Para obter mais códigos de exemplo, consulte a classe <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+LocalService.java}</a> e a classe <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.html">{@code
+LocalServiceActivities.java}</a> em <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a>.</p>
+
+
+
+
+
+<h3 id="Messenger">Uso de um mensageiro</h3>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h4>Comparado ao AIDL</h4>
+  <p>Quando é necessário fazer uma IPC, usar o {@link android.os.Messenger} para a interface
+é mais simples do que implementá-la com AIDL, pois o {@link android.os.Messenger} enfileira
+todas as chamadas do serviço, enquanto que uma interface de AIDL pura envia solicitações simultâneas
+ao serviço, que deve então lidar com vários encadeamentos.</p>
+  <p>Para a maioria dos aplicativos, o serviço não precisa realizar vários encadeamentos. Portanto, usar {@link
+android.os.Messenger} permite que o serviço lide com uma chamada por vez. Caso seja importante
+que o serviço realize vários encadeamentos, deve-se usar a <a href="{@docRoot}guide/components/aidl.html">AIDL</a> para definir a interface.</p>
+</div>
+</div>
+
+<p>Caso precise que o serviço comunique-se com processos remotos, é possível usar 
+o {@link android.os.Messenger} para fornecer a interface ao serviço. Esta técnica permite
+estabelecer comunicação entre processos (IPC) sem precisar usar a AIDL.</p>
+
+<p>A seguir há um resumo sobre como usar um {@link android.os.Messenger}:</p>
+
+<ul>
+  <li>O serviço implementa um {@link android.os.Handler} que recebe um retorno de chamada
+para cada chamada de um cliente.</li>
+  <li>O {@link android.os.Handler} é usado para criar um objeto {@link android.os.Messenger}
+(que é uma referência para o {@link android.os.Handler}).</li>
+  <li>O {@link android.os.Messenger} cria um {@link android.os.IBinder} que o serviço
+retorna aos clientes a partir de {@link android.app.Service#onBind onBind()}.</li>
+  <li>Os clientes usam {@link android.os.IBinder} para instanciar o {@link android.os.Messenger}
+(que menciona o {@link android.os.Handler} do serviço), que usam para enviar objetos 
+{@link android.os.Message} para o serviço.</li>
+  <li>O serviço recebe cada {@link android.os.Message} em seu {@link
+android.os.Handler} &mdash; especificamente, no método {@link android.os.Handler#handleMessage
+handleMessage()}.</li>
+</ul>
+
+
+<p>Desta forma, não há "métodos" para o cliente chamar no serviço. Em vez disso, o cliente
+envia "mensagens" (objetos {@link android.os.Message}) que o serviço recebe
+no {@link android.os.Handler}.</p>
+
+<p>Abaixo há um exemplo simples de serviço que usa uma interface {@link android.os.Messenger}:</p>
+
+<pre>
+public class MessengerService extends Service {
+    /** Command to the service to display a message */
+    static final int MSG_SAY_HELLO = 1;
+
+    /**
+     * Handler of incoming messages from clients.
+     */
+    class IncomingHandler extends Handler {
+        &#64;Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_SAY_HELLO:
+                    Toast.makeText(getApplicationContext(), "hello!", Toast.LENGTH_SHORT).show();
+                    break;
+                default:
+                    super.handleMessage(msg);
+            }
+        }
+    }
+
+    /**
+     * Target we publish for clients to send messages to IncomingHandler.
+     */
+    final Messenger mMessenger = new Messenger(new IncomingHandler());
+
+    /**
+     * When binding to the service, we return an interface to our messenger
+     * for sending messages to the service.
+     */
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        Toast.makeText(getApplicationContext(), "binding", Toast.LENGTH_SHORT).show();
+        return mMessenger.getBinder();
+    }
+}
+</pre>
+
+<p>Observe que o método {@link android.os.Handler#handleMessage handleMessage()}
+no {@link android.os.Handler} é onde o serviço recebe a {@link android.os.Message}
+e decide o que fazer, com base no membro {@link android.os.Message#what}.</p>
+
+<p>Tudo que o cliente precisa fazer é criar um {@link android.os.Messenger} com base no {@link
+android.os.IBinder} retornado pelo serviço e enviar uma mensagem usando {@link
+android.os.Messenger#send send()}. Por exemplo, a seguir há uma atividade simples que vincula-se
+ao serviço e envia a mensagem {@code MSG_SAY_HELLO} a ele:</p>
+
+<pre>
+public class ActivityMessenger extends Activity {
+    /** Messenger for communicating with the service. */
+    Messenger mService = null;
+
+    /** Flag indicating whether we have called bind on the service. */
+    boolean mBound;
+
+    /**
+     * Class for interacting with the main interface of the service.
+     */
+    private ServiceConnection mConnection = new ServiceConnection() {
+        public void onServiceConnected(ComponentName className, IBinder service) {
+            // This is called when the connection with the service has been
+            // established, giving us the object we can use to
+            // interact with the service.  We are communicating with the
+            // service using a Messenger, so here we get a client-side
+            // representation of that from the raw IBinder object.
+            mService = new Messenger(service);
+            mBound = true;
+        }
+
+        public void onServiceDisconnected(ComponentName className) {
+            // This is called when the connection with the service has been
+            // unexpectedly disconnected -- that is, its process crashed.
+            mService = null;
+            mBound = false;
+        }
+    };
+
+    public void sayHello(View v) {
+        if (!mBound) return;
+        // Create and send a message to the service, using a supported 'what' value
+        Message msg = Message.obtain(null, MessengerService.MSG_SAY_HELLO, 0, 0);
+        try {
+            mService.send(msg);
+        } catch (RemoteException e) {
+            e.printStackTrace();
+        }
+    }
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to the service
+        bindService(new Intent(this, MessengerService.class), mConnection,
+            Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+}
+</pre>
+
+<p>Observe que este exemplo não mostra como o serviço pode responder ao cliente. Caso queira que o serviço responda,
+é necessário criar um {@link android.os.Messenger} no cliente também. Em seguida,
+quando o cliente receber o retorno de chamada de {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()}, ele enviará uma {@link android.os.Message} para o serviço que inclui
+o {@link android.os.Messenger} no parâmetro {@link android.os.Message#replyTo}
+do método {@link android.os.Messenger#send send()}.</p>
+
+<p>É possível ver um exemplo de como fornecer mensagens de duas vias nos exemplos <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerService.html">{@code
+MessengerService.java}</a> (serviço) e <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.html">{@code
+MessengerServiceActivities.java}</a> (cliente).</p>
+
+
+
+
+
+<h2 id="Binding">Vinculação a um serviço</h2>
+
+<p>Um componente de aplicativo (cliente) pode vincular-se a um serviço chamando
+{@link android.content.Context#bindService bindService()}. O sistema Android, em seguida,
+chama o método {@link android.app.Service#onBind
+onBind()} do serviço, que retorna um {@link android.os.IBinder} para interagir com o serviço.</p>
+
+<p>A vinculação é assíncrona. {@link android.content.Context#bindService
+bindService()} retorna imediatamente e <em>não</em> retorna o {@link android.os.IBinder}
+ao cliente. Para receber {@link android.os.IBinder}, o cliente deve criar uma instância de {@link
+android.content.ServiceConnection} e passá-la para {@link android.content.Context#bindService
+bindService()}. O {@link android.content.ServiceConnection} inclui um método de retorno de chamada
+que o sistema chama para entregar o {@link android.os.IBinder}.</p>
+
+<p class="note"><strong>Observação:</strong> somente atividades, serviços e provedores de conteúdo
+podem vincular-se a um serviço &mdash; você <strong>não</strong> pode fazer isto a partir de um receptor de transmissão.</p>
+
+<p>Portanto, para vincular-se a um serviço a partir do cliente, deve-se: </p>
+<ol>
+  <li>Implementar {@link android.content.ServiceConnection}.
+    <p>Sua implementação deve substituir dois métodos de retorno de chamada:</p>
+    <dl>
+      <dt>{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}</dt>
+        <dd>O sistema chama isto para entregar o {@link android.os.IBinder} retornado
+pelo método {@link android.app.Service#onBind onBind()} do serviço.</dd>
+      <dt>{@link android.content.ServiceConnection#onServiceDisconnected
+onServiceDisconnected()}</dt>
+        <dd>O sistema Android chama isto quando a conexão ao serviço é perdida inesperadamente,
+ como quando o serviço apresenta problemas ou é fechado repentinamente. Isto <em>não</em> é chamado quando
+o cliente desfaz o vínculo.</dd>
+    </dl>
+  </li>
+  <li>Chamar {@link
+android.content.Context#bindService bindService()}, passando a implementação {@link
+android.content.ServiceConnection}. </li>
+  <li>Quando o sistema chamar o método de retorno de chamada {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()}, é possível fazer chamadas para o serviço
+usando os métodos definidos pela interface.</li>
+  <li>Para desconectar-se de um serviço, chamar {@link
+android.content.Context#unbindService unbindService()}.
+    <p>Quando um cliente é destruído, o vínculo com o serviço acaba. No entanto, sempre desvincule-se
+ao terminar a interação com o serviço ou quando a atividade pausar para que o serviço
+possa ser encerrado enquanto não estiver em uso (os momentos adequados para vincular ou desvincular
+são abordados mais abaixo).</p>
+  </li>
+</ol>
+
+<p>Por exemplo, o fragmento a seguir conecta o cliente ao serviço criado acima 
+<a href="#Binder">estendendo a classe Binder</a> para que tudo que ele tenha que fazer seja lançar
+o {@link android.os.IBinder} retornado para a classe {@code LocalService} e solicitar a instância de {@code
+LocalService}:</p>
+
+<pre>
+LocalService mService;
+private ServiceConnection mConnection = new ServiceConnection() {
+    // Called when the connection with the service is established
+    public void onServiceConnected(ComponentName className, IBinder service) {
+        // Because we have bound to an explicit
+        // service that is running in our own process, we can
+        // cast its IBinder to a concrete class and directly access it.
+        LocalBinder binder = (LocalBinder) service;
+        mService = binder.getService();
+        mBound = true;
+    }
+
+    // Called when the connection with the service disconnects unexpectedly
+    public void onServiceDisconnected(ComponentName className) {
+        Log.e(TAG, "onServiceDisconnected");
+        mBound = false;
+    }
+};
+</pre>
+
+<p>Com este {@link android.content.ServiceConnection}, o cliente pode vincular-se a um serviço
+passando-o para {@link android.content.Context#bindService bindService()}. Por exemplo:</p>
+
+<pre>
+Intent intent = new Intent(this, LocalService.class);
+bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+</pre>
+
+<ul>
+  <li>O primeiro parâmetro de {@link android.content.Context#bindService bindService()}
+é uma {@link android.content.Intent} que nomeia explicitamente o serviço que será vinculado (apesar de a intenção
+poder ser implícita).</li>
+<li>O segundo parâmetro é o objeto {@link android.content.ServiceConnection}.</li>
+<li>O terceiro parâmetro é um sinalizador que indica as opções de vinculação. Geralmente, ele deve ser {@link
+android.content.Context#BIND_AUTO_CREATE} para criar o serviço se não estiver ativo ainda.
+Outros possíveis valores são {@link android.content.Context#BIND_DEBUG_UNBIND}
+e {@link android.content.Context#BIND_NOT_FOREGROUND}, ou {@code 0} para nada.</li>
+</ul>
+
+
+<h3>Observações adicionais</h3>
+
+<p>A seguir há algumas observações importantes sobre a vinculação com um serviço:</p>
+<ul>
+  <li>Deve-se sempre capturar exceções{@link android.os.DeadObjectException}, que são lançadas
+quando a conexão apresenta erros. Esta é a única exceção lançada por métodos remotos.</li>
+  <li>Objetos são referências contadas em todos os processos. </li>
+  <li>Geralmente, alterna-se entre a vinculação e a desvinculação
+durante os momentos crescentes e decrescentes do ciclo de vida do cliente. Por exemplo:
+    <ul>
+      <li>Caso precise interagir com o serviço enquanto a atividade estiver visível,
+deve-se vincular durante {@link android.app.Activity#onStart onStart()} e desvincular durante {@link
+android.app.Activity#onStop onStop()}.</li>
+      <li>Caso queira que a atividade receba mensagens mesmo quando for interrompida
+em segundo plano, é possível vincular durante {@link android.app.Activity#onCreate onCreate()}
+e desvincular durante {@link android.app.Activity#onDestroy onDestroy()}. Cuidado, pois isto significa que a atividade
+precisa usar o serviço durante todo o tempo de execução (mesmo em segundo plano).
+Portanto, se o serviço estiver em outro processo, o peso do processo será aumentado
+e é mais provável que o sistema elimine-o.</li>
+    </ul>
+    <p class="note"><strong>Observação:</strong> geralmente, <strong>não</strong> se realiza o vínculo e o seu rompimento
+durante o {@link android.app.Activity#onResume onResume()} e o {@link
+android.app.Activity#onPause onPause()} da atividade, pois esses retornos de chamada ocorrem em todas as transições do ciclo de vida
+e deve-se usar menos processamento possível nessas transações. Além disso,
+se várias atividades no aplicativo vincularem-se ao mesmo serviço e houver uma transação entre duas
+dessas atividades, o serviço poderá ser destruído e recriado à medida que a atividade desvincula-se,
+durante a pausa, antes do próximo vínculo, durante a retomada (esta transição de atividade
+para como as atividades coordenam os ciclos de vida é descrita no documento <a href="{@docRoot}guide/components/activities.html#CoordinatingActivities">Atividades</a>
+).</p>
+</ul>
+
+<p>Para obter mais códigos de exemplo mostrando como vincular a um serviço, consulte a classe <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+RemoteService.java}</a> no <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a>.</p>
+
+
+
+
+
+<h2 id="Lifecycle">Gerenciamento do ciclo de vida de um serviço vinculado</h2>
+
+<p>Quando um serviço é desvinculado de todos os clientes, o sistema Android o destrói (a não ser que ele
+também tenha sido inicializado com {@link android.app.Service#onStartCommand onStartCommand()}). Portanto, não é necessário
+gerenciar o ciclo de vida do serviço se ele for puramente um serviço vinculado
+&mdash; o sistema Android o gerencia com base nos vínculos com os clientes.</p>
+
+<p>No entanto, se você escolher implementar o método de retorno de chamada {@link android.app.Service#onStartCommand
+onStartCommand()}, interrompa o serviço explicitamente, pois o serviço
+já terá sido considerado como <em>iniciado</em>. Neste caso, o serviço permanece em execução até
+ser interrompido com {@link android.app.Service#stopSelf()} ou outras chamadas de componente {@link
+android.content.Context#stopService stopService()}, independente de vínculo
+com qualquer cliente.</p>
+
+<p>Além disso, se o serviço for iniciado e aceitar vínculos, quando o sistema chamar
+o método {@link android.app.Service#onUnbind onUnbind()}, será possível retornar 
+{@code true} opcionalmente se você quiser receber uma chamada de {@link android.app.Service#onRebind
+onRebind()} na próxima vez em que um cliente vincular-se ao serviço (em vez de receber uma chamada de {@link
+android.app.Service#onBind onBind()}). {@link android.app.Service#onRebind
+onRebind()} retorna vazio, mas o cliente ainda recebe {@link android.os.IBinder}
+no retorno de chamada {@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}.
+Abaixo, a figura 1 ilustra a lógica para este tipo de ciclo de vida.</p>
+
+
+<img src="{@docRoot}images/fundamentals/service_binding_tree_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Figura 1.</strong> O ciclo de vida para um serviço que é iniciado
+e também permite vínculos.</p>
+
+
+<p>Para obter mais informações sobre o ciclo de vida de um serviço iniciado, consulte o documento <a href="{@docRoot}guide/components/services.html#Lifecycle">Serviços</a>.</p>
+
+
+
+
diff --git a/docs/html-intl/intl/pt-br/guide/components/fragments.jd b/docs/html-intl/intl/pt-br/guide/components/fragments.jd
new file mode 100644
index 0000000..7b1acf9e
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/fragments.jd
@@ -0,0 +1,812 @@
+page.title=Fragmentos
+parent.title=Atividades
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Neste documento</h2>
+  <ol>
+    <li><a href="#Design">Filosofia do projeto</a></li>
+    <li><a href="#Creating">Criação de um fragmento</a>
+      <ol>
+        <li><a href="#UI">Adição de uma interface do usuário</a></li>
+        <li><a href="#Adding">Adição de um fragmento a uma atividade</a></li>
+      </ol>
+    </li>
+    <li><a href="#Managing">Gerenciamento de fragmentos</a></li>
+    <li><a href="#Transactions">Realização de operações com fragmentos</a></li>
+    <li><a href="#CommunicatingWithActivity">Comunicação com a atividade</a>
+      <ol>
+        <li><a href="#EventCallbacks">Criação de eventos de retornos de chamada para a atividade</a></li>
+        <li><a href="#ActionBar">Adição de itens à barra de ação</a></li>
+      </ol>
+    </li>
+    <li><a href="#Lifecycle">Tratamento do ciclo de vida dos fragmentos</a>
+      <ol>
+        <li><a href="#CoordinatingWithActivity">Coordenação com o ciclo de vida da atividade</a></li>
+      </ol>
+    </li>
+    <li><a href="#Example">Exemplo</a></li>
+  </ol>
+
+  <h2>Classes principais</h2>
+  <ol>
+    <li>{@link android.app.Fragment}</li>
+    <li>{@link android.app.FragmentManager}</li>
+    <li>{@link android.app.FragmentTransaction}</li>
+  </ol>
+  
+  <h2>Veja também</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/fragments/index.html">Construção de uma IU dinâmica com Fragmentos</a></li>
+    <li><a href="{@docRoot}guide/practices/tablets-and-handsets.html">Compatibilidade com
+tablets e celulares</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Um {@link android.app.Fragment} representa o comportamento ou uma parte da interface do usuário em um
+{@link android.app.Activity}. É possível combinar vários fragmentos em uma única atividade para compilar
+uma IU de painéis múltiplos e reutilizar um fragmento em diversas atividades. Um fragmento
+é como uma seção modular de uma atividade, que tem o próprio ciclo de vida, recebe os próprios eventos de entrada
+e que pode ser adicionado ou removido com a atividade em execução (uma espécie de "sub-atividade"
+que pode ser reutilizada em diferentes atividades).</p>
+
+<p>Um fragmento deve sempre ser embutido em uma atividade e o ciclo de vida dele
+é diretamente impactado pelo ciclo de vida da atividade do host. Por exemplo, quando a atividade é pausada, todos os fragmentos
+também são e, quando a atividade é destruída, todos os fragmentos também são. No entanto, enquanto
+uma atividade estiver em execução (estiver no <em>estado do ciclo de vida</em> <a href="{@docRoot}guide/components/activities.html#Lifecycle">retomado</a>), é possível
+manipular cada fragmento independentemente, como adicionar ou removê-los. Ao realizar tal operação com fragmentos,
+também é possível adicioná-los a uma pilha de retorno que é gerenciada pela
+atividade &mdash; cada entrada da pilha de retorno na atividade é um registro da operação de fragmento
+que ocorreu. A pilha de retorno permite que o usuário inverta uma operação de fragmento (navegue ao contrário),
+pressionando o botão <em>Voltar</em>.</p>
+
+<p>Ao adicionar um fragmento como parte do layout da atividade, ele viverá em um {@link
+android.view.ViewGroup} dentro da hierarquia de vistas e o fragmento definirá o próprio
+layout da vista.
+É possível inserir um fragmento no layout, declarando-o no arquivo de layout
+da atividade, como um elemento {@code &lt;fragment&gt;} ou a partir do código do aplicativo adicionando-o
+a um {@link android.view.ViewGroup} existente. No entanto, não é necessário que um fragmento faça parte
+do layout da atividade; também é possível usar um fragmento sem a IU como um trabalhador invisível
+da atividade.</p>
+
+<p>Este documento descreve como compilar o aplicativo para usar fragmentos,
+incluindo como os fragmentos podem manter seu estado ao serem adicionados à pilha de retorno da atividade,
+como compartilhar eventos com a atividade e com outros fragmentos da atividade, como contribuir para a barra de ação
+da atividade e muito mais.</p>
+
+
+<h2 id="Design">Filosofia do projeto</h2>
+
+<p>O Android introduziu os fragmentos no Android 3.0 (API de nível 11), principalmente para suportar
+mais projetos de IU flexíveis e dinâmicos em telas grandes, como em tablets. Como a tela de um tablet
+é muito maior que a de um celular, há mais espaço para combinar
+e alternar componentes da IU. Os fragmentos permitem tais projetos sem haver a necessidade de gerenciar
+alterações complexas na hierarquia de vistas. Ao dividir o layout de uma atividade em fragmentos, é possível
+modificar a aparência da atividade em tempo de execução e preservar essas alterações na pilha de retorno,
+que é gerenciada por esta atividade.</p>
+
+<p>Por exemplo, um aplicativo de notícias pode usar um fragmento para exibir uma lista de artigos
+na esquerda e outro fragmento para exibir um artigo na direita &mdash; ambos os fragmentos aparecem
+em uma atividade, lado a lado, e cada fragmento possui o próprio conjunto de métodos de retorno de chamada do ciclo de vida e lidam
+com os próprios eventos de entrada do usuário. Portanto, em vez de usar uma atividade para selecionar um artigo
+e outra atividade para lê-lo, o usuário pode selecionar um artigo e lê-lo por completo dentro
+da mesma atividade, como ilustrado no layout do tablet na figura 1.</p>
+
+<p>Você deve projetar cada fragmento como um componente modular e reutilizável da atividade. Ou seja, como cada fragmento
+define seu próprio layout e comportamento com os próprios retornos de chamada do ciclo de vida, é possível
+incluir um fragmento em várias atividades para poder projetá-lo para reutilização e evitar
+a manipulação direta de um fragmento a partir de outro fragmento. Isto é especialmente importante porque
+um fragmento modular permite alterar as combinações de fragmentos para tamanhos de tela diferentes. Ao projetar o aplicativo
+para ser compatível com tablets e celulares, você poderá reutilizar os fragmentos em diferentes configurações
+de layout para otimizar a experiência do usuário com base no espaço de tela disponível. Por exemplo,
+em um celular, talvez seja necessário separar os fragmentos para fornecer uma IU de painel único
+quando mais de um não se encaixar dentro da mesma atividade.</p>
+
+<img src="{@docRoot}images/fundamentals/fragments.png" alt="" />
+<p class="img-caption"><strong>Figura 1.</strong> Um exemplo de como dois módulos de IU definidos
+pelos fragmentos podem ser combinados em uma atividade de um projeto para tablet mas separados
+em um projeto para celular.</p>
+
+<p>Por exemplo, &mdash; continuando com o exemplo do aplicativo de notícias &mdash; o aplicativo pode embutir
+dois fragmentos na <em>atividade A</em>, quando executado em um dispositivo do tamanho de um tablet. No entanto,
+em uma tela de tamanho de celular, não há espaço suficiente para ambos os fragmentos, então a <em>atividade A</em> inclui
+somente o fragmento da lista de artigos e, quando o usuário seleciona um artigo, ele inicia
+a <em>atividade B</em>, que inclui o segundo fragmento para ler o artigo. Portanto, o aplicativo
+é compatível com tablets e celulares através da reutilização dos fragmentos em combinações diferentes, como ilustrado
+na figura 1.</p>
+
+<p>Para obter mais informações sobre o projeto de aplicativos com diferentes combinações de fragmentos
+para configurações de tela diferentes, consulte o guia <a href="{@docRoot}guide/practices/tablets-and-handsets.html">Compatibilidade com tablets e celulares</a>.</p>
+
+
+
+<h2 id="Creating">Criação de um fragmento</h2>
+
+<div class="figure" style="width:327px">
+<img src="{@docRoot}images/fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Figura 2.</strong> O ciclo de vida de um fragmento
+(enquanto sua atividade está em execução).</p>
+</div>
+
+<p>Para criar um fragmento, é preciso criar uma subclasse de {@link android.app.Fragment} (ou uma respectiva
+subclasse existente). A classe {@link android.app.Fragment} tem um código que é muito parecido
+com o de uma {@link android.app.Activity}. Ele contém métodos de retorno de chamada semelhantes aos de uma atividade,
+como {@link android.app.Fragment#onCreate onCreate()}, {@link android.app.Fragment#onStart onStart()},
+{@link android.app.Fragment#onPause onPause()} e {@link android.app.Fragment#onStop onStop()}. Na verdade,
+caso esteja convertendo um aplicativo do Android existente para usar os fragmentos, basta mover
+o código dos métodos de retorno de chamada da atividade para os respectivos métodos de retorno de chamada
+do fragmento.</p>
+
+<p>Geralmente, deve-se implementar pelo menos os seguintes métodos de ciclo de vida:</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onCreate onCreate()}</dt>
+  <dd>O sistema o chama ao criar o fragmento. Dentro da implementação,
+deve-se inicializar os componentes essenciais do fragmento que deseja-se reter quando o fragmento
+for pausado ou interrompido e, em seguida, retomado.</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+  <dd>O sistema chama isto quando é o momento de o fragmento desenhar a interface do usuário
+pela primeira vez. Para desenhar uma IU para o fragmento, você deve retornar uma {@link android.view.View}
+deste método, que é a raiz do layout do fragmento. É possível retornar como nulo se o fragmento
+não fornecer uma IU.</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>O sistema chama esse método como o primeiro indício de que o usuário está saindo
+do fragmento (embora não seja sempre uma indicação de que o fragmento está sendo destruído). É quando geralmente
+deve-se confirmar qualquer alteração que deva se manter além da sessão atual do usuário (porque
+o usuário pode não retornar).</dd>
+</dl>
+
+<p>A maioria dos aplicativos deve implementar pelo menos três destes métodos para cada fragmento,
+mas há vários outros métodos de retorno de chamada que você deve usar para lidar com diversos estágios
+do ciclo de vida do fragmento. Todos os métodos de retorno de chamada do ciclo de vida são abordados com mais detalhes na seção
+<a href="#Lifecycle">Tratamento do ciclo de vida dos fragmentos</a>.</p>
+
+
+<p>Há também algumas subclasses que você pode querer estender, em vez de a classe {@link
+android.app.Fragment} de base:</p>
+
+<dl>
+  <dt>{@link android.app.DialogFragment}</dt>
+  <dd>Exibe uma caixa de diálogo flutuante. Usar esta classe para criar uma caixa de diálogo é uma boa alternativa
+para usar métodos auxiliares das caixas de diálogo na classe {@link android.app.Activity},
+pois é possível incorporar uma caixa de diálogo de fragmento na pilha de retorno dos fragmentos gerenciados pela atividade,
+permitindo que o usuário retorne a um fragmento dispensado.</dd>
+
+  <dt>{@link android.app.ListFragment}</dt>
+  <dd>Exibe uma lista de itens que são gerenciados por um adaptador (como um {@link
+android.widget.SimpleCursorAdapter}), semelhante à {@link android.app.ListActivity}. Ele fornece vários métodos
+para gerenciar uma vista de lista, como o retorno de chamada {@link
+android.app.ListFragment#onListItemClick(ListView,View,int,long) onListItemClick()}
+para lidar com eventos de clique.</dd>
+
+  <dt>{@link android.preference.PreferenceFragment}</dt>
+  <dd>Exibe uma hierarquia de objetos {@link android.preference.Preference} como uma lista,
+parecido com {@link android.preference.PreferenceActivity}. Isto é útil ao criar uma atividade
+de "configurações" para o aplicativo.</dd>
+</dl>
+
+
+<h3 id="UI">Adição de uma interface do usuário</h3>
+
+<p>Um fragmento é geralmente usado como parte de uma interface do usuário da atividade e contribui
+para a atividade com seu próprio layout.</p>
+
+<p>Para fornecer um layout para um fragmento, você deve implementar o método de retorno de chamada {@link
+android.app.Fragment#onCreateView onCreateView()}, que o sistema Android chama
+no momento em que o fragmento deve desenhar o layout. A implementação deste método deve retornar
+uma {@link android.view.View}, que é a raiz do layout do fragmento.</p>
+
+<p class="note"><strong>Observação:</strong> se o fragmento for uma subclasse de {@link
+android.app.ListFragment}, a implementação padrão retornará uma {@link android.widget.ListView}
+de {@link android.app.Fragment#onCreateView onCreateView()}, então não será necessário implementá-lo.</p>
+
+<p>Para retornar um layout de {@link
+android.app.Fragment#onCreateView onCreateView()}, é possível inflá-lo a partir de um <a href="{@docRoot}guide/topics/resources/layout-resource.html">recurso de layout</a> definido no XML. Para ajudar
+a fazer isto, o {@link android.app.Fragment#onCreateView onCreateView()} fornece
+um objeto {@link android.view.LayoutInflater}.</p>
+
+<p>Por exemplo, a seguir há uma subclasse de {@link android.app.Fragment} que carrega um layout
+do arquivo {@code example_fragment.xml}:</p>
+
+<pre>
+public static class ExampleFragment extends Fragment {
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+                             Bundle savedInstanceState) {
+        // Inflate the layout for this fragment
+        return inflater.inflate(R.layout.example_fragment, container, false);
+    }
+}
+</pre>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Criação de um layout</h3>
+  <p>No exemplo acima, {@code R.layout.example_fragment} é uma referência para um recurso de layout
+chamado {@code example_fragment.xml}, salvo nos recursos do aplicativo. Para obter informações sobre
+como criar um layout no XML, consulte a documentação <a href="{@docRoot}guide/topics/ui/index.html">Interface do usuário</a>
+.</p>
+</div>
+</div>
+
+<p>O parâmetro {@code container} passado para {@link android.app.Fragment#onCreateView
+onCreateView()} é o pai de {@link android.view.ViewGroup} (do layout da atividade)
+em que o layout do fragmento
+será inserido. O parâmetro {@code savedInstanceState} é um {@link android.os.Bundle}
+que fornece dados sobre a instância anterior do fragmento, se o fragmento estiver sendo retomado
+(a restauração de estado é abordada mais detalhadamente na seção <a href="#Lifecycle">Tratamento do ciclo
+de vida dos fragmentos</a>).</p>
+
+<p>O método {@link android.view.LayoutInflater#inflate(int,ViewGroup,boolean) inflate()}
+usa três argumentos:</p>
+<ul>
+  <li>O ID de recurso do layout que você quer inflar.</li>
+  <li>O {@link android.view.ViewGroup} que será pai do layout inflado. Passar o {@code
+container} é importante para que o sistema aplique os parâmetros de layout à vista raiz
+do layout inflado, especificado pela vista pai em que está ocorrendo.</li>
+  <li>Um booleano que indica se o layout inflado deve ser anexado a {@link
+android.view.ViewGroup} (o segundo parâmetro) durante a inflação (neste caso,
+isto é falso, pois o sistema já está inserindo o layout inflado no {@code
+container} &mdash; retornar como verdadeiro criaria um grupo de vistas redundante no layout final).</li>
+</ul>
+
+<p>Este é o modo de criar um fragmento que fornece um layout. A seguir,
+é preciso adicionar o fragmento à atividade.</p>
+
+
+
+<h3 id="Adding">Adição de um fragmento a uma atividade</h3>
+
+<p>Geralmente, um fragmento contribui com a atividade do host com uma parte da IU, que é embutida como parte
+da hierarquia de vistas geral da atividade. Há duas formas de adicionar um fragmento ao layout
+da atividade:</p>
+
+<ul>
+  <li><b>Declarar o fragmento dentro do arquivo de layout da atividade.</b>
+<p>Neste caso,
+é possível especificar as propriedades do layout para o fragmento como se fosse uma vista. Por exemplo, a seguir há o arquivo de layout
+para uma atividade com dois fragmentos:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
+    &lt;fragment android:name="com.example.news.ArticleListFragment"
+            android:id="@+id/list"
+            android:layout_weight="1"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+    &lt;fragment android:name="com.example.news.ArticleReaderFragment"
+            android:id="@+id/viewer"
+            android:layout_weight="2"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+&lt;/LinearLayout&gt;
+</pre>
+  <p>O atributo {@code android:name} em {@code &lt;fragment&gt;} especifica a classe {@link
+android.app.Fragment} a instanciar no layout.</p>
+
+<p>Quando o sistema cria este layout de atividade, ele instancia cada fragmento especificado
+no layout e chama o método {@link android.app.Fragment#onCreateView onCreateView()} para cada um
+para recuperar o layout de cada fragmento. O sistema insere a {@link android.view.View} retornada
+pelo fragmento diretamente no lugar do elemento {@code &lt;fragment&gt;}.</p>
+
+<div class="note">
+  <p><strong>Observação:</strong> cada fragmento requer um identificador único
+que o sistema possa usar para restaurá-lo se a atividade for reiniciada (e que possa ser usado
+para capturar o fragmento para realizar operações, como a remoção). Há três maneiras de fornecer
+um ID para um fragmento:</p>
+  <ul>
+    <li>Fornecer o atributo {@code android:id} com um ID único.</li>
+    <li>Fornecer o atributo {@code android:tag} com uma string única.</li>
+    <li>Caso não forneça nenhuma das alternativas anteriores, o sistema usará o ID da vista
+do recipiente.</li>
+  </ul>
+</div>
+  </li>
+
+  <li><b>Ou adicionar programaticamente o fragmento a um {@link android.view.ViewGroup} existente.</b>
+<p>A qualquer momento, enquanto a atividade está em execução, é possível adicionar fragmentos ao layout da atividade. Você precisa
+apenas especificar um {@link
+android.view.ViewGroup} para posicionar o fragmento.</p>
+  <p>Para realizar operações de fragmentos na atividade (como adicionar, remover ou substituir
+um fragmento), você deve usar APIs de {@link android.app.FragmentTransaction}. É possível adquirir
+uma instância de {@link android.app.FragmentTransaction} da {@link android.app.Activity} desta maneira:</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()}
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>É possível adicionar um fragmento usando o método {@link
+android.app.FragmentTransaction#add(int,Fragment) add()}, especificando o fragmento que será adicionado
+e a vista em que será inserido. Por exemplo:</p>
+
+<pre>
+ExampleFragment fragment = new ExampleFragment();
+fragmentTransaction.add(R.id.fragment_container, fragment);
+fragmentTransaction.commit();
+</pre>
+
+  <p>O primeiro argumento passado para {@link android.app.FragmentTransaction#add(int,Fragment) add()}
+é {@link android.view.ViewGroup}, onde o fragmento deve ser colocado, especificado
+pelo ID de recurso e o segundo parâmetro é o fragmento a ser adicionado.</p>
+  <p>Ao realizar as alterações
+com {@link android.app.FragmentTransaction},
+deve-se chamar{@link android.app.FragmentTransaction#commit} para que as alterações entrem em vigor.</p>
+  </li>
+</ul>
+
+
+<h4 id="AddingWithoutUI">Adição de um fragmento sem IU</h4>
+
+<p>O exemplo acima mostra como adicionar um fragmento à atividade para fornecer uma IU. No entanto,
+é possível também usar um fragmento para fornecer o comportamento de segundo plano para a atividade sem apresentar
+IU adicional.</p>
+
+<p>Para adicionar um fragmento sem uma IU, adicione o fragmento da atividade usando {@link
+android.app.FragmentTransaction#add(Fragment,String)} (fornecendo uma "tag" de string única
+para o fragmento, em vez de um ID de vista). Isto adiciona o fragmento, mas, como ele não está associado
+a uma vista no layout da atividade, não recebe uma chamada de {@link
+android.app.Fragment#onCreateView onCreateView()}. Portanto, não é necessário implementar este método.</p>
+
+<p>Fornecer uma tag de string para o fragmento não é algo estrito para fragmentos que não sejam de IU &mdash; é possível também
+fornecer tags de string para fragmentos que possuam uma IU &mdash; mas, se o fragmento não possuir uma IU,
+a tag de string é a única maneira de identificá-lo. Caso queira obter o fragmento da atividade posteriormente,
+você precisará usar {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}.</p>
+
+<p>Para ver uma atividade de exemplo que usa um fragmento como um trabalhador de segundo plano, sem uma IU, consulte o exemplo de {@code
+FragmentRetainInstance.java}, incluso nos exemplos do SDK (disponibilizados pelo 
+Android SDK Manager) e localizado no sistema como 
+<code>&lt;sdk_root&gt;/APIDemos/app/src/main/java/com/example/android/apis/app/FragmentRetainInstance.java</code>.</p>
+
+
+
+<h2 id="Managing">Gerenciamento de fragmentos</h2>
+
+<p>Para gerenciar os fragmentos na atividade, você precisa usar {@link android.app.FragmentManager}. Para adquiri-lo,
+chame {@link android.app.Activity#getFragmentManager()} a partir da atividade.</p>
+
+<p>Algumas das coisas que você pode fazer com {@link android.app.FragmentManager} incluem:</p>
+
+<ul>
+  <li>Adquirir fragmentos existentes na atividade, com {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} (para fragmentos que forneçam uma IU
+no layout da atividade) ou {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()} (para fragmentos que forneçam ou não uma IU).</li> 
+  <li>Retire os fragmentos da pilha de retorno com {@link
+android.app.FragmentManager#popBackStack()} (simulando um comando de <em>Voltar</em> do usuário).</li>
+  <li>Registre uma escuta para as alterações na pilha de retorno com {@link
+android.app.FragmentManager#addOnBackStackChangedListener addOnBackStackChangedListener()}.</li>
+</ul>
+
+<p>Para obter mais informações sobre esses e outros métodos, consulte a documentação da classe {@link
+android.app.FragmentManager}.</p>
+
+<p>Como demonstrado na seção anterior, é possível usar o {@link android.app.FragmentManager}
+para abrir uma {@link android.app.FragmentTransaction}, que permite realizar operações,
+como adicionar e remover fragmentos.</p>
+
+
+<h2 id="Transactions">Realização de operações com fragmentos</h2>
+
+<p>Um grande recurso fornecido por fragmentos em atividades é a possibilidade de adicionar, remover, substituir
+e realizar outras ações com eles em resposta à interação do usuário. Cada conjunto de alterações que forem realizadas
+na atividade é chamado de operação e podem ser feitas usando APIs em {@link
+android.app.FragmentTransaction}. Também é possível salvar cada operação em uma pilha de retorno gerenciada pela atividade,
+permitindo que o usuário navegue inversamente por meio de alterações de fragmento (semelhante à navegação
+inversa por meio de atividades).</p>
+
+<p>É possível adquirir uma instância de {@link android.app.FragmentTransaction} a partir do {@link
+android.app.FragmentManager} da seguinte forma:</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()};
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>Cada operação é um conjunto de alterações que você deseja realizar ao mesmo tempo. É possível definir
+todas as alterações desejadas para uma operação usando métodos como {@link
+android.app.FragmentTransaction#add add()}, {@link android.app.FragmentTransaction#remove remove()}
+e {@link android.app.FragmentTransaction#replace replace()}. Em seguida, para aplicar a operação
+à atividade, deve-se chamar {@link android.app.FragmentTransaction#commit()}.</p>
+</dl>
+
+<p>Antes de chamar {@link
+android.app.FragmentTransaction#commit()}, no entanto, você pode querer chamar {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} para adicionar a operação
+a uma pilha de retorno de operações de fragmentos. A pilha de retorno é gerenciada pela atividade
+e permite que o usuário retorne ao estado anterior do fragmento, ao pressionar o botão <em>Voltar</em>.</p>
+
+<p>Por exemplo, a seguir é apresentado o modo de substituir um fragmento por outro e preservar
+o estado anterior da pilha de retorno:</p>
+
+<pre>
+// Create new fragment and transaction
+Fragment newFragment = new ExampleFragment();
+FragmentTransaction transaction = getFragmentManager().beginTransaction();
+
+// Replace whatever is in the fragment_container view with this fragment,
+// and add the transaction to the back stack
+transaction.replace(R.id.fragment_container, newFragment);
+transaction.addToBackStack(null);
+
+// Commit the transaction
+transaction.commit();
+</pre>
+
+<p>Neste exemplo, {@code newFragment} substitui qualquer fragmento (se houver) que estiver
+no recipiente do layout identificado pelo ID {@code R.id.fragment_container}. Ao chamar {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}, a operação de substituição
+é salva na pilha de retorno para que o usuário possa reverter a operação
+e voltar ao fragmento anterior pressionando o botão <em>Voltar</em>.</p>
+
+<p>Se você adicionar várias alterações à operação (como outro {@link
+android.app.FragmentTransaction#add add()} ou {@link android.app.FragmentTransaction#remove
+remove()}) e chamar {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}, todas as alterações aplicadas
+antes de chamar {@link android.app.FragmentTransaction#commit commit()} serão adicionadas
+à pilha de retorno como uma única operação e o botão <em>Voltar</em> reverterá todas elas juntas.</p>
+
+<p>A ordem em que você adicionar as alterações em {@link android.app.FragmentTransaction} não importa,
+exceto que:</p>
+<ul>
+  <li>Você deve chamar {@link android.app.FragmentTransaction#commit()} por último</li>
+  <li>Caso esteja adicionando vários fragmentos ao mesmo recipiente, a ordem em que
+adicioná-los determina a ordem em que eles aparecerão na hierarquia de vistas</li>
+</ul>
+
+<p>Caso você não chame {@link android.app.FragmentTransaction#addToBackStack(String)
+addToBackStack()} ao realizar uma operação que remove um fragmento, este fragmento
+será destruído quando a operação for realizada e o usuário não poderá navegar de volta a ele. Considerando que,
+se você não chamar {@link android.app.FragmentTransaction#addToBackStack(String) addToBackStack()}
+ao remover um fragmento, o fragmento será <em>interrompido</em> e será retomado se o usuário
+navegar de volta.</p>
+
+<p class="note"><strong>Dica:</strong> para cada operação de fragmento, é possível aplicar uma animação
+de transição, chamando {@link android.app.FragmentTransaction#setTransition setTransition()}
+antes da realização.</p>
+
+<p>Chamar {@link android.app.FragmentTransaction#commit()} não realiza a operação
+imediatamente. Em vez disso, o parâmetro agenda a execução no encadeamento da IU da atividade (o encadeamento “main”, ou principal)
+assim que possível. Se necessário, no entanto, é possível chamar {@link
+android.app.FragmentManager#executePendingTransactions()} a partir do encadeamento da IU para executar imediatamente
+as operações enviadas por {@link android.app.FragmentTransaction#commit()}. Tal medida, geralmente,
+não é necessária, a não ser que a operação represente uma dependência para trabalhos em outros encadeamentos.</p>
+
+<p class="caution"><strong>Atenção:</strong> É possível realizar uma operação usando {@link
+android.app.FragmentTransaction#commit commit()} somente antes da atividade <a href="{@docRoot}guide/components/activities.html#SavingActivityState">salvar
+seu estado</a> (quando o usuário deixa a atividade). Caso tente efetivas as alterações após este ponto,
+uma exceção será lançada. Isto acontece porque o estado após a efetivação pode ser perdido se a atividade
+precisar ser restaurada. Para situações em que não haja problema em perder a efetivação, use {@link
+android.app.FragmentTransaction#commitAllowingStateLoss()}.</p>
+
+
+
+
+<h2 id="CommunicatingWithActivity">Comunicação com a atividade</h2>
+
+<p>Apesar de {@link android.app.Fragment} ser implementado como um objeto independente
+de uma {@link android.app.Activity} e poder ser usado dentro de várias atividades, uma dada instância
+de um fragmento é diretamente vinculada à atividade que o contém.</p>
+
+<p>Especificamente, o fragmento pode acessar a instância {@link android.app.Activity} com {@link
+android.app.Fragment#getActivity()} e realizar facilmente tarefas como encontrar uma vista
+no layout da atividade:</p>
+
+<pre>
+View listView = {@link android.app.Fragment#getActivity()}.{@link android.app.Activity#findViewById findViewById}(R.id.list);
+</pre>
+
+<p>Do mesmo modo, a atividade pode chamar métodos no fragmento adquirindo uma referência
+para o {@link android.app.Fragment} a partir do {@link android.app.FragmentManager} usando {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} ou {@link
+android.app.FragmentManager#findFragmentByTag findFragmentByTag()}. Por exemplo:</p>
+
+<pre>
+ExampleFragment fragment = (ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment);
+</pre>
+
+
+<h3 id="EventCallbacks">Criação de retornos de chamada de evento para a atividade</h3>
+
+<p>Em alguns casos, um fragmento que compartilhe eventos com a atividade pode ser necessário. Uma boa maneira de fazer isto
+é definir uma interface de retorno de chamada dentro do fragmento e solicitar que a atividade do host
+implemente-a. Quando a atividade recebe um retorno de chamada por meio da interface, ela pode compartilhar as informações
+com outros fragmentos no layout conforme necessário.</p>
+
+<p>Por exemplo, se um aplicativo de notícias em uma atividade tiver dois fragmentos &mdash; um para exibir uma lista
+de artigos (fragmento A) e outro para exibir um artigo (fragmento B) &mdash; então o fragmento A
+deve informar à atividade quando um item de lista é selecionado para que ela possa instruir o fragmento B a exibir o artigo. Neste caso,
+ a interface {@code OnArticleSelectedListener} é declarada dentro do fragmento A:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    ...
+    // Container Activity must implement this interface
+    public interface OnArticleSelectedListener {
+        public void onArticleSelected(Uri articleUri);
+    }
+    ...
+}
+</pre>
+
+<p>Portanto, a atividade que hospeda o fragmento implementa a interface {@code OnArticleSelectedListener}
+e suspende
+{@code onArticleSelected()} para notificar o fragmento B do evento do fragmento A. Para garantir
+que a atividade do host implemente esta interface, o método de retorno de chamada de {@link
+android.app.Fragment#onAttach onAttach()} do fragmento A (que o sistema chama ao adicionar
+o fragmento à atividade) instanciará {@code OnArticleSelectedListener}
+lançando a {@link android.app.Activity}, que é passada para {@link android.app.Fragment#onAttach
+onAttach()}:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        try {
+            mListener = (OnArticleSelectedListener) activity;
+        } catch (ClassCastException e) {
+            throw new ClassCastException(activity.toString() + " must implement OnArticleSelectedListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>Se a atividade não implementar a interface, o fragmento lançará
+{@link java.lang.ClassCastException}.
+Se for bem-sucedida, o membro {@code mListener} reterá uma referência da implementação da atividade
+de {@code OnArticleSelectedListener}, para que o fragmento A possa compartilhar os eventos com a atividade
+chamando métodos definidos pela interface {@code OnArticleSelectedListener}. Por exemplo, se o fragmento A
+for uma extensão de {@link android.app.ListFragment}, sempre
+que o usuário clicar em um item de lista, o sistema chamará {@link android.app.ListFragment#onListItemClick
+onListItemClick()} no fragmento que, em seguida, chamará {@code onArticleSelected()} para compartilhar
+o evento com a atividade:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onListItemClick(ListView l, View v, int position, long id) {
+        // Append the clicked item's row ID with the content provider Uri
+        Uri noteUri = ContentUris.{@link android.content.ContentUris#withAppendedId withAppendedId}(ArticleColumns.CONTENT_URI, id);
+        // Send the event and Uri to the host activity
+        mListener.onArticleSelected(noteUri);
+    }
+    ...
+}
+</pre>
+
+<p>O parâmetro {@code id} passado para {@link
+android.app.ListFragment#onListItemClick onListItemClick()} é o ID da linha do item clicado
+que a atividade (ou outro fragmento) usa para resgatar o artigo do {@link
+android.content.ContentProvider} do aplicativo.</p>
+
+<p><!--To see a complete implementation of this kind of callback interface, see the <a
+href="{@docRoot}resources/samples/NotePad/index.html">NotePad sample</a>. -->Mais informações sobre
+como usar o provedor de conteúdo estão disponíveis na documentação <a href="{@docRoot}guide/topics/providers/content-providers.html">Provedores de conteúdo</a>.</p>
+
+
+
+<h3 id="ActionBar">Adição de itens à barra de ação</h3>
+
+<p>Os fragmentos podem contribuir com itens de menu para o <a href="{@docRoot}guide/topics/ui/menus.html#options-menu">menu de opções</a> da atividade (e, consequentemente, para a <a href="{@docRoot}guide/topics/ui/actionbar.html">barra de ação</a>) implementando 
+{@link android.app.Fragment#onCreateOptionsMenu(Menu,MenuInflater) onCreateOptionsMenu()}. Para que este método
+receba chamadas, no entanto, você deve chamar {@link
+android.app.Fragment#setHasOptionsMenu(boolean) setHasOptionsMenu()} durante {@link
+android.app.Fragment#onCreate(Bundle) onCreate()} para indicar que o fragmento
+gostaria de adicionar itens ao menu de opções (caso contrário, o fragmento não receberá uma chamada
+para {@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()}).</p>
+
+<p>Quaisquer itens adicionados ao menu de opções do fragmento são anexados
+aos itens de menu existentes. O fragmento também recebe retornos de chamada para {@link
+android.app.Fragment#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} quando um item de menu
+é selecionado.</p>
+
+<p>Também é possível registrar uma vista no layout do fragmento para fornecer um menu de contexto chamando {@link
+android.app.Fragment#registerForContextMenu(View) registerForContextMenu()}. Quando o usuário
+abre o menu de contexto, o fragmento recebe uma chamada de {@link
+android.app.Fragment#onCreateContextMenu(ContextMenu,View,ContextMenu.ContextMenuInfo)
+onCreateContextMenu()}. Quando o usuário seleciona um item, o fragmento recebe uma chamada de {@link
+android.app.Fragment#onContextItemSelected(MenuItem) onContextItemSelected()}.</p>
+
+<p class="note"><strong>Observação:</strong> apesar de o fragmento receber um retorno de chamada selecionado no item
+para cada item de menu que adiciona, a atividade é a primeira a receber o respectivo retorno de chamada quando o usuário
+seleciona um item de menu. Se a implementação da atividade do retorno de chamada selecionado no item não
+lida com o item selecionado, o evento é passado para o retorno de chamada do fragmento. Isto é verdadeiro
+para o menu de opções e os menus de contexto.</p>
+
+<p>Para obter mais informações sobre menus, consulte os guias do desenvolvedor <a href="{@docRoot}guide/topics/ui/menus.html">Menus</a> e <a href="{@docRoot}guide/topics/ui/actionbar.html">Barra de ação</a>.</p>
+
+
+
+
+<h2 id="Lifecycle">Tratamento do ciclo de vida dos fragmentos</h2>
+
+<div class="figure" style="width:350px">
+<img src="{@docRoot}images/activity_fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Figura 3.</strong> O efeito do ciclo de vida da atividade no ciclo de vida
+do fragmento.</p>
+</div>
+
+<p>Gerenciar o ciclo de vida de um fragmento é muito parecido com gerenciar o ciclo de vida de uma atividade. Como uma atividade,
+um fragmento pode existir em três estados:</p>
+
+<dl>
+  <dt><i>Retomado</i></dt>
+    <dd>O fragmento é visível na atividade em execução.</dd>
+
+  <dt><i>Pausado</i></dt>
+    <dd>Outra atividade está em primeiro plano, mas a atividade em que este fragmento
+vive ainda está visível (a atividade de primeiro plano é parcialmente transparente
+ou não cobre a tela inteira).</dd>
+
+  <dt><i>Interrompido</i></dt>
+    <dd>O fragmento não é visível. A atividade do host foi interrompida
+ou o fragmento foi removido da atividade mas adicionado à pilha de retorno. Um fragmento interrompido
+ainda está vivo (todas as informações do membro e de estado estão retidas no sistema). No entanto,
+não está mais visível e será eliminado se a atividade também for.</dd>
+</dl>
+
+<p>Além disso, como uma atividade, é possível reter o estado de um fragmento usando um {@link
+android.os.Bundle}, caso o processo da atividade seja eliminado e você precise restaurar
+o estado do fragmento quando a atividade for recriada. É possível salvar o estado durante o retorno de chamada {@link
+android.app.Fragment#onSaveInstanceState onSaveInstanceState()} do fragmento e restaurá-lo
+durante {@link android.app.Fragment#onCreate onCreate()}, {@link
+android.app.Fragment#onCreateView onCreateView()} ou {@link
+android.app.Fragment#onActivityCreated onActivityCreated()}. Para obter mais informações sobre
+como salvar o estado, consulte a documentação <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Atividades</a>
+.</p>
+
+<p>A diferença mais significante entre o ciclo de vida de uma atividade e de um fragmento
+é o armazenamento em suas respectivas pilhas de retorno. Por padrão, uma atividade é colocada de volta na pilha de retorno de atividades,
+que é gerenciada pelo sistema, quando interrompida (para que o usuário possa navegar
+a ela com o botão <em>Voltar</em>, como discutido em <a href="{@docRoot}guide/components/tasks-and-back-stack.html">Tarefas e pilha de retorno</a>).
+No entanto, um fragmento é posicionado em uma pilha de retorno gerenciada pela atividade do host somente
+ao solicitar explicitamente que a instância seja salva chamando {@link
+android.app.FragmentTransaction#addToBackStack(String) addToBackStack()} durante uma operação
+que remove o fragmento.</p>
+
+<p>Caso contrário, gerenciar o ciclo de vida do fragmento é muito semelhante a gerenciar
+o ciclo de vida da atividade. Portanto, as mesmas práticas para <a href="{@docRoot}guide/components/activities.html#Lifecycle">gerenciar o ciclo de vida
+da atividade</a> aplicam-se aos fragmentos. O que você também precisa entender, no entanto, é como a vida
+da atividade afeta a vida do fragmento.</p>
+
+<p class="caution"><strong>Atenção:</strong> caso precise de um objeto {@link android.content.Context}
+dentro do {@link android.app.Fragment}, é possível chamar {@link android.app.Fragment#getActivity()}.
+No entanto, tome cuidado para chamar {@link android.app.Fragment#getActivity()} somente quando o fragmento
+estiver anexado a uma atividade. Quando o fragmento ainda não estiver anexado, ou tiver sido desvinculado durante o fim
+do seu ciclo de vida, {@link android.app.Fragment#getActivity()} retornará como nulo.</p>
+
+
+<h3 id="CoordinatingWithActivity">Coordenação do ciclo de vida da atividade</h3>
+
+<p>O ciclo de vida da atividade em que o fragmento vive afeta diretamente o ciclo de vida
+do fragmento, da mesma forma que um retorno de chamada de cada ciclo de vida da atividade resulta em um retorno de chamada semelhante
+de cada fragmento. Por exemplo, quando a atividade receber {@link android.app.Activity#onPause},
+cada fragmento na atividade receberá {@link android.app.Fragment#onPause}.</p>
+
+<p>Os fragmentos têm alguns retornos de chamada do ciclo de vida extras. No entanto, isto trata da interação única
+com a atividade para realizar ações como compilar e destruir a IU do fragmento. Esses
+métodos adicionais de retorno de chamada são:</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onAttach onAttach()}</dt>
+    <dd>Chamado quando o fragmento tiver sido associado à atividade ({@link
+android.app.Activity} é passado aqui).</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+    <dd>Chamado para criar a hierarquia de vistas associada ao fragmento.</dd>
+  <dt>{@link android.app.Fragment#onActivityCreated onActivityCreated()}</dt>
+    <dd>Chamado quando o método {@link android.app.Activity#onCreate
+onCreate()} da atividade tiver retornado.</dd>
+  <dt>{@link android.app.Fragment#onDestroyView onDestroyView()}</dt>
+    <dd>Chamado quando a hierarquia de vistas associada ao fragmento estiver sendo removida.</dd>
+  <dt>{@link android.app.Fragment#onDetach onDetach()}</dt>
+    <dd>Chamado quando o fragmento estiver sendo desassociado da atividade.</dd>
+</dl>
+
+<p>O fluxo do ciclo de vida do fragmento, afetado pela atividade do host, como ilustrado
+pela figura 3. Nesta figura, é possível ver como cada estado sucessivo da atividade determina
+qual método de retorno de chamada um fragmento pode receber. Por exemplo, quando a atividade recebe o retorno de chamada {@link
+android.app.Activity#onCreate onCreate()}, um fragmento na atividade recebe nada mais
+do que o retorno de chamada {@link android.app.Fragment#onActivityCreated onActivityCreated()}.</p>
+
+<p>Quando a atividade atinge o estado retomado, é possível adicionar e remover fragmentos
+dela livremente. Portanto, somente quando a atividade estiver no estado retomado, o ciclo de vida
+de um fragmento poderá alterar-se de forma independente.</p>
+
+<p>No entanto, quando a atividade deixa o estado retomado, o fragmento é novamente forçado
+a passar pelo ciclo de vida pela atividade.</p>
+
+
+
+
+<h2 id="Example">Exemplo</h2>
+
+<p>Para juntar tudo que foi discutido neste documento, abaixo há um exemplo de uma atividade
+que usa dois fragmentos para criar um layout de dois painéis. A atividade abaixo inclui um fragmento
+para exibir uma lista de títulos de peças de Shakespeare e outra para exibir um resumo da peça,
+quando selecionada na lista. Ela também determina como fornecer diferentes configurações de fragmentos,
+com base na configuração da tela.</p>
+
+<p class="note"><strong>Observação:</strong> O código fonte completo desta atividade está disponível em
+<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html">{@code
+FragmentLayout.java}</a>.</p>
+
+<p>A atividade principal aplica-se de maneira comum, durante {@link
+android.app.Activity#onCreate onCreate()}:</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java main}
+
+<p>O layout aplicado é {@code fragment_layout.xml}:</p>
+
+{@sample development/samples/ApiDemos/res/layout-land/fragment_layout.xml layout}
+
+<p>Usando este layout, o sistema instancia {@code TitlesFragment} (que lista os títulos
+das peças) assim que a atividade carrega o layout, enquanto que {@link android.widget.FrameLayout}
+(onde o fragmento para exibir o resumo da peça aparecerá) consome o espaço do lado direito da tela,
+ mas primeiramente permanece vazio. Como verá abaixo, ele não estará visível até que o usuário selecione um item
+na lista em que um fragmento esteja posicionado no {@link android.widget.FrameLayout}.</p>
+
+<p>No entanto, nem todas as configurações de tela são grandes o suficiente para exibir a lista
+de peças e o resumo, lado a lado. Portanto, o layout acima é usado somente para configuração
+de tela de paisagem, salvando-o em {@code res/layout-land/fragment_layout.xml}.</p>
+
+<p>Por isso, quando a tela está na orientação de retrato, o sistema aplica o seguinte layout,
+que é salvo em {@code res/layout/fragment_layout.xml}:</p>
+
+{@sample development/samples/ApiDemos/res/layout/fragment_layout.xml layout}
+
+<p>Este layout inclui somente {@code TitlesFragment}. Isto significa que, quando o dispositivo
+está na orientação de retrato, somente a lista de título das peças está disponível. Portanto, quando o usuário clicar
+em um item da lista nesta configuração, o aplicativo iniciará uma nova atividade para exibir o resumo,
+em vez de carregar um segundo fragmento.</p>
+
+<p>A seguir, é possível ver como isto é realizado com classes de fragmento. Primeiro, {@code
+TitlesFragment}, que exibe a lista de peças de Shakespeare. Este fragmento estende {@link
+android.app.ListFragment} e confia nele para lidar com grande parte do trabalho da vista de lista.</p>
+
+<p>Enquanto inspeciona este código, observe que há dois possíveis comportamentos quando um usuário
+clica em um item de lista: dependendo de qual dos dois layouts está ativo, ele pode criar e exibir
+um novo fragmento para exibir os detalhes na mesma atividade (adicionando o fragmento {@link
+android.widget.FrameLayout}), ou iniciar uma nova atividade (onde o fragmento possa ser exibido).</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java titles}
+
+<p>O segundo fragmento, {@code DetailsFragment}, exibe o resumo da peça para o item selecionado
+na lista de {@code TitlesFragment}:</p>
+ 
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java details}
+
+<p>Uma nova chamada da classe {@code TitlesFragment}, ou seja, se o usuário clicar em um item de lista
+e o layout original <em>não</em> incluir a vista {@code R.id.details} (a que
+{@code DetailsFragment} pertence), o aplicativo iniciará a atividade {@code DetailsActivity}
+para exibir o conteúdo do item.</p>
+
+<p>A seguir há {@code DetailsActivity}, que simplesmente embute {@code DetailsFragment} para exibir
+o resumo da peça selecionada quando a tela está na orientação de retrato:</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java
+details_activity}
+ 
+<p>Observe que esta atividade finaliza-se se a configuração for de paisagem,
+pois a atividade principal pode tomar o controle e exibir {@code DetailsFragment} juntamente com {@code TitlesFragment}.
+Isto pode acontecer se o usuário iniciar {@code DetailsActivity} enquanto estiver na orientação de retrato,
+mas alternar para orientação de paisagem (o que reinicia a atividade atual).</p>
+
+
+<p>Para obter mais exemplos do uso de fragmentos (e arquivos fonte completos deste exemplo),
+consulte o aplicativo de exemplo API Demos disponível em <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Fragment">
+ApiDemos</a> (disponível para download em <a href="{@docRoot}resources/samples/get.html">Exemplos de componentes do SDK</a>).</p>
+
+
diff --git a/docs/html-intl/intl/pt-br/guide/components/fundamentals.jd b/docs/html-intl/intl/pt-br/guide/components/fundamentals.jd
new file mode 100644
index 0000000..47b9845
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/fundamentals.jd
@@ -0,0 +1,480 @@
+page.title=Fundamentos de aplicativos
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Neste documento</h2>
+<ol>
+<li><a href="#Components">Componentes de aplicativo</a>
+  <ol>
+    <li><a href="#ActivatingComponents">Ativação de componentes</a></li>
+  </ol>
+</li>
+<li><a href="#Manifest">O arquivo de manifesto</a>
+  <ol>
+    <li><a href="#DeclaringComponents">Declaração de componentes</a></li>
+    <li><a href="#DeclaringRequirements">Declaração de requisitos do aplicativo</a></li>
+  </ol>
+</li>
+<li><a href="#Resources">Recursos do aplicativo</a></li>
+</ol>
+</div>
+</div>
+
+<p>Os aplicativos do Android são programados em linguagem de programação Java. As ferramentas Android SDK compilam
+o código &mdash; em conjunto com todos os arquivos de dados e recursos &mdash; em um APK, que é o <i>pacote do Android</i>,
+um arquivo de arquivamento com sufixo {@code .apk}. Os arquivos de APK contêm todo o conteúdo
+de um aplicativo do Android e são os arquivos que os dispositivos desenvolvidos para Android usam para instalar o aplicativo.</p>
+
+<p>Depois de instalado em um dispositivo, cada aplicativo do Android é ativado em sua própria área de segurança: </p>
+
+<ul>
+ <li>O sistema operacional Android é um sistema Linux multiusuário em que cada aplicativo
+é um usuário diferente.</li>
+
+<li>Por padrão, o sistema atribui a cada aplicativo um ID de usuário do Linux exclusivo (o ID é usado somente
+pelo sistema e é desconhecido para o aplicativo). O sistema define permissões para todos os arquivos
+em um aplicativo, de modo que somente o ID de usuário atribuído àquele aplicativo pode acessá-los. </li>
+
+<li>Cada processo tem sua própria máquina virtual (VM), portanto o código de um aplicativo é executado isoladamente
+de outros aplicativos.</li>
+
+<li>Por padrão, cada aplicativo é executado em seu próprio processo Linux. O Android inicia o processo quando é preciso
+executar algum componente do aplicativo; em seguida, encerra-o quando não mais é
+necessário ou quando o sistema precisa recuperar memória para outros aplicativos.</li>
+</ul>
+
+<p>Assim, o sistema Android implementa o <em>princípio do privilégio mínimo</em>. Ou seja,
+cada aplicativo, por padrão, tem acesso somente aos componentes necessários para a execução do seu trabalho
+e nada mais. Isso cria um ambiente muito seguro em que o aplicativo não pode acessar partes
+do sistema para o qual não tem permissão.</p>
+
+<p>No entanto, sempre existe uma maneira de um aplicativo compartilhar dados com outros aplicativos
+e acessar serviços do sistema:</p>
+
+<ul>
+  <li>É impossível fazer com que dois aplicativos compartilhem o mesmo ID de usuário do Linux, caso em que
+eles são capazes de acessar os arquivos um do outro.  Para preservar os recursos do sistema, os aplicativos com o mesmo
+ID de usuário também podem ser combinados para serem executados no mesmo processo Linux e compartilhar a mesma VM
+(também é preciso atribuir o mesmo certificado aos aplicativos).</li>
+  <li>Um aplicativo pode solicitar permissão para acessar dados de dispositivo como
+contatos do usuário, mensagens SMS, o sistema montável (cartão SD), câmera, Bluetooth etc. Todas
+as permissões de aplicativo devem ser concedidas pelo usuário no momento da instalação.</li>
+</ul>
+
+<p>Essas são as informações básicas de como um aplicativo do Android existe dentro do sistema. O restante
+deste documento apresenta o leitor a:</p>
+<ul>
+  <li>Componentes fundamentais de estrutura que definem o aplicativo.</li>
+  <li>O arquivo de manifesto em que os componentes são declarados e os recursos de dispositivo necessários
+ao aplicativo.</li>
+  <li>Recursos separados do código do aplicativo que permitem
+otimizar o comportamento de uma variedade de configurações de dispositivo.</li>
+</ul>
+
+
+
+<h2 id="Components">Componentes de aplicativo</h2>
+
+<p>Os componentes de aplicativo são os blocos de construção fundamentais de um aplicativo do Android.
+Cada componente é um ponto diferente pelo qual o sistema pode entrar no aplicativo. Nem todos
+os componentes são pontos de entrada reais para o usuário e alguns dependem uns dos outros, mas cada um existe
+como uma entidade independente e desempenha uma função específica &mdash; cada um é um bloco de construção exclusivo
+que ajuda a definir o comportamento geral do aplicativo.</p>
+
+<p>Há quatro tipos diferentes de componentes de aplicativo. Cada tipo tem uma finalidade distinta
+e tem um ciclo de vida específico que define a forma pela qual o componente é criado e destruído.</p>
+
+<p>A seguir apresentam-se os quatro tipos de componentes de aplicativos:</p>
+
+<dl>
+
+<dt><b>Atividades</b></dt>
+
+<dd>As <i>atividades</i> representam uma tela única com uma interface do usuário. Por exemplo:
+um aplicativo de e-mails pode ter uma atividade que mostra uma lista de novos
+e-mails, outra atividade que compõe um e-mail e outra ainda que lê e-mails. Embora
+essas atividades funcionem juntas para formar uma experiência de usuário coesa no aplicativo de e-mails,
+elas são independentes entre si. Portanto, um aplicativo diferente pode iniciar qualquer uma
+dessas atividades (se o aplicativo de e-mails permitir). Por exemplo: um aplicativo de câmera pode iniciar
+a atividade no aplicativo de e-mail que compõe o novo e-mail para que o usuário compartilhe uma foto.
+
+<p>Uma atividade é implementada como uma subclasse de {@link android.app.Activity} — saiba mais sobre isso
+no guia do desenvolvedor
+<a href="{@docRoot}guide/components/activities.html">Atividades</a>.</p>
+</dd>
+
+
+<dt><b>Serviços</b></dt>
+
+<dd>Os <i>serviços</i> são componentes executados em segundo plano para realizar operações
+de execução longa ou para realizar trabalho para processos remotos. Eles
+não apresentam uma interface do usuário. Por exemplo: um serviço pode tocar música em segundo plano
+enquanto o usuário está em um aplicativo diferente ou buscar dados na rede sem bloquear
+a interação do usuário com uma atividade. Outro componente, como uma atividade, pode iniciar
+o serviço e deixá-lo executar ou vincular-se a ele para interagir.
+
+<p>Um serviço é implementado como uma subclasse de {@link android.app.Service} — saiba mais sobre isso
+no guia do desenvolvedor
+<a href="{@docRoot}guide/components/services.html">Serviços</a>.</p>
+</dd>
+
+
+<dt><b>Provedores de conteúdo</b></dt>
+
+<dd>Os <i>provedores de conteúdo</i> gerenciam um conjunto compartilhado de dados do aplicativo. É possível armazenar os dados
+no sistema de arquivos, em um banco de dados SQLite ou em qualquer local de armazenamento persistente
+que o aplicativo possa acessar. Por meio do provedor de conteúdo, outros aplicativos podem consultar ou até modificar
+os dados (se o provedor de conteúdo permitir). Por exemplo: o sistema Android oferece um provedor
+de conteúdo que gerencia as informações de contato do usuário. Assim, qualquer aplicativo
+com as permissões adequadas pode consultar parte do provedor de conteúdo (como {@link
+android.provider.ContactsContract.Data}) para ler e gravar informações sobre uma pessoa específica.
+
+<p>Os provedores de conteúdo são úteis para ler e gravar dados privados
+no aplicativo e não compartilhados. Por exemplo: o exemplo de aplicativo <a href="{@docRoot}resources/samples/NotePad/index.html">Note Pad</a> usa
+um provedor de conteúdo para salvar notas.</p>
+
+<p>Um provedor de conteúdo é implementado como uma subclasse de {@link android.content.ContentProvider}
+e precisa implementar um conjunto padrão de APIs que permitem a outros aplicativos
+realizar transações. Para obter mais informações, consulte o guia de desenvolvedor
+<a href="{@docRoot}guide/topics/providers/content-providers.html">Provedores de conteúdo</a>.</p>
+</dd>
+
+
+<dt><b>Receptores de transmissão</b></dt>
+
+<dd>Os <i>receptores de transmissão</i> são componentes que respondem a anúncios de transmissão
+por todo o sistema.  Muitas transmissões se originam do sistema &mdash; por exemplo, uma transmissão que anuncia
+que uma tela foi desligada, a bateria está baixa ou uma tela foi capturada.
+Os aplicativos também podem iniciar transmissões &mdash; por exemplo, para comunicar a outros dispositivos
+que alguns dados foram baixados no dispositivo e estão disponíveis para uso. Embora os receptores
+de transmissão não exibam nenhuma interface do usuário, eles podem <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">criar uma notificação na barra de status</a>
+para alertar ao usuário quando ocorre uma transmissão. Mais comumente, no entanto, um receptor de transmissão
+é somente um "portal" para outros componentes e realiza uma quantidade mínima de trabalho. Por
+exemplo: ele pode iniciar um serviço para executar um trabalho baseado no evento.
+
+<p>Os receptores de transmissão são implementados como subclasses de {@link android.content.BroadcastReceiver}
+e cada transmissão é entregue como um objeto {@link android.content.Intent}. Para obter mais informações,
+consulte a classe {@link android.content.BroadcastReceiver}.</p>
+</dd>
+
+</dl>
+
+
+
+<p>Um aspecto exclusivo do projeto do sistema Android é que qualquer aplicativo pode iniciar
+um componente de outro aplicativo. Por exemplo: se você quiser que o usuário capture
+uma foto com a câmera do dispositivo, provavelmente haverá outro aplicativo que faz isso
+e o seu aplicativo poderá usá-lo, ou seja, não será necessário desenvolver uma atividade para capturar uma foto. Não é
+necessário incorporar nem mesmo vinculá-lo do aplicativo da câmera ao código.
+Em vez disso, basta iniciar a atividade no aplicativo da câmera que captura
+uma foto. Quando concluída, a foto até retorna ao aplicativo em questão para ser usada. Para o usuário,
+parece que a câmera é realmente parte do aplicativo.</p>
+
+<p>Quando o sistema inicia um componente, ele inicia o processo daquele aplicativo (se ele já
+não estiver em execução) e instancia as classes necessárias para o componente. Por exemplo: se o aplicativo
+iniciar a atividade no aplicativo da câmera que captura uma foto, aquele aplicativo
+é executado no processo que pertence ao aplicativo da câmera e não no processo do aplicativo.
+Portanto, ao contrário dos aplicativos na maioria dos outros sistemas, os aplicativos do Android não têm um ponto
+de entrada único (não há a função {@code main()}, por exemplo).</p>
+
+<p>Como o sistema executa cada aplicativo em um processo separado com permissões de arquivo
+que restringem o acesso a outros aplicativos, o aplicativo não pode ativar diretamente um componente
+a partir de outro aplicativo. No entanto, o sistema Android pode. Portanto, para ativar um componente
+em outro aplicativo, é preciso enviar uma mensagem ao sistema que especifique a <em>intenção</em>
+de iniciar um componente específico. Em seguida, o sistema ativa o componente.</p>
+
+
+<h3 id="ActivatingComponents">Ativação de componentes</h3>
+
+<p>Três dos quatro tipos de componente &mdash; atividades, serviços
+e receptores de transmissão &mdash; são ativados por uma mensagem assíncrona chamada <em>intenção</em>.
+As intenções vinculam componentes individuais entre si em tempo de execução (como
+mensageiros que solicitam uma ação de outros componentes), seja o componente pertencente
+ao aplicativo ou não.</p>
+
+<p>A intenção é criada com um objeto {@link android.content.Intent}, que define uma mensagem
+para ativar um componente específico ou um <em>tipo</em> específico de componente &mdash; as intenções
+podem ser explícitas ou implícitas, respectivamente.</p>
+
+<p>Para atividades e serviços, as intenções definem a ação a executar (por exemplo, "exibir" ou
+"enviar" algo) e podem especificar a URI dos dados usados na ação (entre outras coisas
+que o componente a iniciar precisa saber). Por exemplo: uma intenção pode transmitir uma solicitação
+de uma atividade para exibir uma imagem ou abrir uma página da web. Em alguns casos, é preciso iniciar
+uma atividade para receber um resultado; nesse caso, a atividade também retorna
+o resultado em um {@link android.content.Intent} (por exemplo, é possível emitir uma intenção para
+que o usuário selecione um contato pessoal e o retorne a você &mdash; a intenção de retorno contém
+uma URI que aponta para o contato selecionado).</p>
+
+<p>Para receptores de transmissão, a intenção simplesmente define
+o anúncio que está sendo transmitido (por exemplo, uma transmissão para indicar que a bateria do dispositivo está acabando
+contém uma string de ação conhecida que indica "nível baixo da bateria").</p>
+
+<p>O outro tipo de componente, o provedor de conteúdo, não é ativado por intenções. Em vez disso,
+ele é ativado por uma solicitação de um {@link android.content.ContentResolver}. O resolvedor
+de conteúdo manipula todas as transações diretas com o provedor de conteúdo para que o componente
+que executa as transações com o provedor não precise e, em vez disso, chama os métodos no objeto {@link
+android.content.ContentResolver}. Isso deixa uma camada de abstração entre o provedor
+de conteúdo e o componente que solicita informações (por segurança).</p>
+
+<p>Há dois métodos separados para ativar cada tipo de componente:</p>
+<ul>
+  <li>É possível iniciar uma atividade (ou dar-lhe algo novo para fazer)
+passando uma {@link android.content.Intent} a {@link android.content.Context#startActivity
+startActivity()} ou {@link android.app.Activity#startActivityForResult startActivityForResult()}
+(para que, quando desejado, a atividade retorne um resultado).</li>
+  <li>É possível iniciar um dispositivo (ou dar novas instruções a um serviço em andamento)
+passando uma {@link android.content.Intent} a {@link android.content.Context#startService
+startService()}. Ou então, é possível vincular ao serviço passando uma{@link android.content.Intent}
+a {@link android.content.Context#bindService bindService()}.</li>
+  <li>É possível iniciar uma transmissão passando uma{@link android.content.Intent} a métodos como
+{@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}, {@link
+android.content.Context#sendOrderedBroadcast(Intent, String) sendOrderedBroadcast()} ou {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}.</li>
+  <li>É possível iniciar uma consulta a um provedor de conteúdo chamando {@link
+android.content.ContentProvider#query query()} em um {@link android.content.ContentResolver}.</li>
+</ul>
+
+<p>Para obter mais informações sobre intenções, consulte o documento
+<a href="{@docRoot}guide/components/intents-filters.html">Intenções e filtros de intenções</a>. Veja mais informações sobre a ativação de componentes específicos
+nos seguintes documentos: <a href="{@docRoot}guide/components/activities.html">Atividades</a>, <a href="{@docRoot}guide/components/services.html">Serviços</a>, {@link
+android.content.BroadcastReceiver} e <a href="{@docRoot}guide/topics/providers/content-providers.html">Provedores de conteúdo</a>.</p>
+
+
+<h2 id="Manifest">O arquivo de manifesto</h2>
+
+<p>Antes de o sistema Android iniciar um componente de aplicativo, é preciso ler o arquivo {@code AndroidManifest.xml}
+(o arquivo de "manifesto")
+do aplicativo para que o sistema saiba se o componente existe. O aplicativo precisa declarar todos os seus componentes nesse arquivo, que deve estar na raiz
+do diretório do projeto do aplicativo.</p>
+
+<p>O manifesto faz outras coisas além de declarar os componentes do aplicativo,
+por exemplo:</p>
+<ul>
+  <li>Identifica todas as permissões do usuário de que o aplicativo precisa, como acesso à internet
+ou acesso de somente leitura aos contatos do usuário.</li>
+  <li>Declara o <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">nível de API</a> mínimo
+exigido pelo aplicativo com base nas APIs que o aplicativo usa.</li>
+  <li>Declara os recursos de hardware e software usados ou exigidos pelo aplicativo, como câmera,
+serviços de bluetooth ou tela multitoque.</li>
+  <li>As bibliotecas de API às quais o aplicativo precisa vincular-se (outras além das APIs
+de estrutura do Android), como a <a href="http://code.google.com/android/add-ons/google-apis/maps-overview.html">biblioteca
+Google Maps</a>.</li>
+  <li>E outros.</li>
+</ul>
+
+
+<h3 id="DeclaringComponents">Declaração de componentes</h3>
+
+<p>A principal tarefa do manifesto é informar ao sistema os componentes do aplicativo. Por
+exemplo: um arquivo de manifesto pode declarar uma atividade da seguinte forma: </p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest ... &gt;
+    &lt;application android:icon="@drawable/app_icon.png" ... &gt;
+        &lt;activity android:name="com.example.project.ExampleActivity"
+                  android:label="@string/example_label" ... &gt;
+        &lt;/activity&gt;
+        ...
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>No elemento <code><a
+href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+, o atributo {@code android:icon} aponta para recursos de um ícone que identifica
+o aplicativo.</p>
+
+<p>No elemento <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>,
+o atributo {@code android:name} especifica o nome da classe totalmente qualificada da subclasse de {@link
+android.app.Activity} e o atributo {@code android:label} especifica uma string
+a usar como a etiqueta da atividade visível ao usuário.</p>
+
+<p>É preciso declarar todos os componentes desta forma:</p>
+<ul>
+  <li>Elementos <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+para atividades</li>
+  <li>Elementos <code><a
+href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+para serviços</li>
+  <li>Elementos <code><a
+href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+para receptores de transmissão</li>
+  <li>Elementos <code><a
+href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+para provedores de conteúdo</li>
+</ul>
+
+<p>Atividades, serviços e provedores de conteúdo incluídos na fonte, mas não declarados
+no manifesto, não ficam visíveis para o sistema e, consequentemente, podem não ser executados.  No entanto, receptores
+de transmissão
+podem ser declarados no manifesto dinamicamente no código (como objetos
+{@link android.content.BroadcastReceiver}) e registrados no sistema chamando-se
+{@link android.content.Context#registerReceiver registerReceiver()}.</p>
+
+<p>Para obter mais informações sobre a estrutura do arquivo de manifesto de aplicativos, consulte a documentação
+<a href="{@docRoot}guide/topics/manifest/manifest-intro.html">O arquivo AndroidManifest.xml</a>. </p>
+
+
+
+<h3 id="DeclaringComponentCapabilities">Declaração de recursos de componentes</h3>
+
+<p>Conforme abordado acima, em <a href="#ActivatingComponents">Ativação de componentes</a>, é possível usar
+uma {@link android.content.Intent} para iniciar atividades, serviços e receptores de transmissão. Isso pode ser feito
+nomeando-se explicitamente o componente-alvo (usando o nome da classe do componente) na intenção. No entanto,
+a verdadeira força das intenções reside no conceito de <em>intenções implícitas</em>. As intenções implícitas
+descrevem simplesmente o tipo de ação a executar (e, opcionalmente, os dados em que
+a ação deve ser executada) e permitem ao sistema encontrar e iniciar um componente no dispositivo que pode executar
+a ação. Se houver mais de um componente que possa executar a ação descrita
+pela intenção, o usuário selecionará qual deles usar.</p>
+
+<p>Para o sistema identificar os componentes que podem responder a uma intenção, compara-se
+a intenção recebida com os <i>filtros de intenções</i> fornecidos no arquivo de manifesto de outros aplicativos
+do dispositivo.</p>
+
+<p>Ao declarar uma atividade no manifesto do aplicativo, pode-se incluir
+filtros de intenções que declarem os recursos da atividade para que ela responda
+a intenções de outros aplicativos. Para declarar um filtro de intenções no componentes,
+adiciona-se um elemento <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> como filho do elemento de declaração do componente.</p>
+
+<p>Por exemplo: se você estiver programando um aplicativo de e-mail com uma atividade de compor um novo e-mail,
+é possível declarar um filtro de intenções para responder a intenções "enviar" (para enviar um novo e-mail), assim:</p>
+<pre>
+&lt;manifest ... >
+    ...
+    &lt;application ... &gt;
+        &lt;activity android:name="com.example.project.ComposeEmailActivity">
+            &lt;intent-filter>
+                &lt;action android:name="android.intent.action.SEND" />
+                &lt;data android:type="*/*" />
+                &lt;category android:name="android.intent.category.DEFAULT" />
+            &lt;/intent-filter>
+        &lt;/activity>
+    &lt;/application&gt;
+&lt;/manifest>
+</pre>
+
+<p>Em seguida, se outro aplicativo criar uma intenção com a ação {@link
+android.content.Intent#ACTION_SEND} e passá-la para {@link android.app.Activity#startActivity
+startActivity()}, o sistema poderá iniciar a atividade de forma que o usuário possa rascunhar e enviar
+um e-mail.</p>
+
+<p>Para obter mais informações sobre filtros de intenções, consulte o documento <a href="{@docRoot}guide/components/intents-filters.html">Intenções e filtros de intenções</a>.
+</p>
+
+
+
+<h3 id="DeclaringRequirements">Declaração de requisitos do aplicativo</h3>
+
+<p>Existem vários dispositivos desenvolvidos para Android e nem todos apresentam os mesmos
+recursos e características. Para evitar que o aplicativo seja instalado em dispositivos
+que não contenham os recursos que o aplicativo necessita, é importante definir um perfil
+para os tipos de dispositivo compatíveis com o aplicativo. É preciso declarar os requisitos de dispositivo e software
+no arquivo de manifesto. A maior parte dessas declarações é somente informativa e o sistema não as lê,
+mas serviços externos, como o Google Play, as leem para oferecer uma filtragem
+aos usuários quando buscam esses aplicativos para seu dispositivo.</p>
+
+<p>Por exemplo: se o aplicativo exige uma câmera e usa APIs introduzidas no Android 2.1 (<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API de nível</a> 7),
+deve-se declarar esses requisitos no arquivo de manifesto da seguinte forma:</p> 
+
+<pre>
+&lt;manifest ... >
+    &lt;uses-feature android:name="android.hardware.camera.any"
+                  android:required="true" />
+    &lt;uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" />
+    ...
+&lt;/manifest>
+</pre>
+
+<p>Assim, dispositivos que <em>não</em> tenham câmera e tenham
+versão Android <em>anterior</em> a 2.1 não poderão instalar o aplicativo a partir do Google Play.</p>
+
+<p>No entanto, também é possível declarar que o aplicativo usa a câmera como recurso 
+<em>não obrigatório</em>. Nesse caso, o aplicativo precisa definir o atributo <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#required">{@code required}</a>
+ como {@code "false"} e verificar em tempo de execução
+se o dispositivo tem câmera e desativar os recursos da câmera conforme o necessário.</p>
+
+<p>Veja mais informações sobre o gerenciamento da compatibilidade do aplicativo com diferentes dispositivos
+no documento <a href="{@docRoot}guide/practices/compatibility.html">Compatibilidade
+do dispositivo</a>.</p>
+
+
+
+<h2 id="Resources">Recursos do aplicativo</h2>
+
+<p>Os aplicativos Android são compostos por mais do que somente códigos &mdash; eles requerem recursos
+separados do código-fonte, como imagens, arquivos de áudio e tudo o que se relaciona
+com a apresentação visual do aplicativo. Por exemplo: deve-se definir animações, menus, estilos, cores
+e o layout das interfaces do usuário da atividade com arquivos XML. O uso de recursos de aplicativo facilita
+a atualização de diversas características do aplicativo sem a necessidade de modificar
+o código e &mdash; fornecendo conjuntos de recursos alternativos &mdash; permite otimizar o aplicativo
+para diversas configurações de dispositivo (como idiomas e tamanhos de tela diferentes).</p>
+
+<p>Para todo recurso incluído no projeto Android, as ferramentas de programação SDK definem
+um ID inteiro exclusivo que o programador pode usar para referenciar o recurso do código do aplicativo
+ou de outros recursos definidos no XML. Por exemplo: se o aplicativo contiver um arquivo de imagem de nome {@code
+logo.png} (salvo no diretório {@code res/drawable/}), as ferramentas de SDK gerarão um ID de recurso
+chamado {@code R.drawable.logo}, que pode ser usado para referenciar a imagem e inseri-la
+na interface do usuário.</p>
+
+<p>Um dos aspectos mais importantes de fornecer recursos separados do código-fonte
+é a capacidade de fornecer recursos alternativos para diferentes configurações
+de dispositivo. Por exemplo: ao definir strings de IU em XML, é possível converter as strings em outros
+idiomas e salvá-las em arquivos separados. Em seguida, com base em um <em>qualificador</em> de idioma
+acrescentado ao nome do diretório do recurso (como {@code res/values-fr/} para valores
+de string em francês) e a configuração de idioma do usuário, o sistema Android aplica as strings de idioma adequadas
+à IU.</p>
+
+<p>O Android aceita vários <em>qualificadores</em> para recursos alternativos. O qualificador
+é uma string curta incluída no nome dos diretórios de recurso para definir
+a configuração de dispositivo em que esses recursos serão usados. Outro exemplo:
+deve-se criar diferentes layouts para as atividades conforme a orientação
+e o tamanho da tela do dispositivo. Por exemplo: quando a tela do dispositivo está em orientação
+retrato (vertical), pode ser desejável um layout com botões na vertical, mas, quando a tela está em orientação
+paisagem (horizontal), os botões devem estar alinhados horizontalmente. Para alterar o layout
+conforme a orientação, pode-se definir dois layouts diferentes e aplicar o qualificador
+adequado ao nome do diretório de cada layout. Em seguida, o sistema aplica automaticamente o layout adequado
+conforme a orientação atual do dispositivo.</p>
+
+<p>Para obter mais informações sobre os diferentes tipos de recursos a incluir no aplicativo
+e como criar recursos alternativos para diferentes configurações de dispositivo, leia <a href="{@docRoot}guide/topics/resources/providing-resources.html">Como fornecer recursos</a>.</p>
+
+
+
+<div class="next-docs">
+<div class="col-6">
+  <h2 class="norule">Continue lendo sobre:</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/components/intents-filters.html">Intenções e filtros de intenções</a>
+    </dt>
+    <dd>Informações sobre o uso de APIs {@link android.content.Intent} para
+ativar componentes de aplicativos, como atividades e serviços, e como disponibilizar componentes
+de aplicativo para uso em outros aplicativos.</dd>
+    <dt><a href="{@docRoot}guide/components/activities.html">Atividades</a></dt>
+    <dd>Informações sobre a criação de uma instância da classe {@link android.app.Activity},
+que permite uma tela diferente no aplicativo com uma interface do usuário.</dd>
+    <dt><a href="{@docRoot}guide/topics/resources/providing-resources.html">Como fornecer recursos</a></dt>
+    <dd>Informações sobre a estrutura de aplicativos Android para recursos de aplicativo separados do código-fonte
+, inclusive como fornecer recursos alternativos para configurações
+de dispositivo específicas.
+    </dd>
+  </dl>
+</div>
+<div class="col-6">
+  <h2 class="norule">Você também pode se interessar por:</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/practices/compatibility.html">Compatibilidade do dispositivo</a></dt>
+    <dd>Informações sobre como o Android funciona em diferentes tipos de dispositivo e uma introdução
+a como otimizar o aplicativo para cada dispositivo ou restringir a disponibilidade
+a diferentes dispositivos.</dd>
+    <dt><a href="{@docRoot}guide/topics/security/permissions.html">Permissões do sistema</a></dt>
+    <dd>Informações sobre como o aplicativo restringe o acesso do Android a determinadas APIs sem um
+sistema de permissão que exija o consentimento do usuário para que o aplicativo use essas APIs.</dd>
+  </dl>
+</div>
+</div>
+
diff --git a/docs/html-intl/intl/pt-br/guide/components/index.jd b/docs/html-intl/intl/pt-br/guide/components/index.jd
new file mode 100644
index 0000000..02fcaa6
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/index.jd
@@ -0,0 +1,57 @@
+page.title=Componentes do aplicativo
+page.landing=true
+page.landing.intro=A estrutura de aplicativo do Android permite criar aplicativos ricos e inovadores usando um conjunto de componentes reutilizáveis. Esta seção explica como criar os componentes que definem os blocos de construção do aplicativo e como conectá-los usando intenções. 
+page.metaDescription=A estrutura de aplicativo do Android permite criar aplicativos ricos e inovadores usando um conjunto de componentes reutilizáveis. Esta seção mostra como criar os componentes que definem os blocos de construção do aplicativo e como conectá-los usando intenções. 
+page.landing.image=images/develop/app_components.png
+page.image=images/develop/app_components.png
+
+@jd:body
+
+<div class="landing-docs">
+
+  <div class="col-6">
+    <h3>Artigos de blogue</h3>
+    
+    <a href="http://android-developers.blogspot.com/2012/05/using-dialogfragments.html">
+      <h4>Uso de DialogFragments</h4>
+      <p>Nesta publicação, mostrarei como usar DialogFragments com a biblioteca de suporte v4 (para compatibilidade retroativa em dispositivos anteriores a Honeycomb) para mostrar uma caixa de diálogo de edição simples e retornar um resultado para a Atividade chamadora usando uma interface.</p>
+    </a>
+
+    <a href="http://android-developers.blogspot.com/2011/03/fragments-for-all.html">
+      <h4>Fragmentos para todos</h4>
+      <p>Hoje, lançamos uma biblioteca estática que expõe a mesma API Fragments (bem como o novo LoaderManager e algumas outras classes) para que aplicativos compatíveis com Android 1.6 e posteriores possam usar fragmentos para criar interfaces de usuário compatíveis com tablets. </p>
+    </a>
+    
+    <a href="http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html">
+      <h4>Multiencadeamento para desempenho</h4>
+      <p>Uma boa prática para criar aplicativos responsivos é garantir que o encadeamento principal da IU
+realize uma quantidade mínima de trabalho. Qualquer tarefa possivelmente longa que possa travar o aplicativo deve ser tratada
+em um encadeamento diferente.</p>
+    </a>
+  </div>
+
+  <div class="col-6">
+    <h3>Treinamento</h3>
+    
+    <a href="http://developer.android.com/training/basics/activity-lifecycle/index.html">
+      <h4>Gerenciamento do ciclo de vida da atividade</h4>
+      <p>Essa lição explica a importância dos métodos de retorno de chamada do ciclo de vida que cada instância de
+Atividade recebe e como utilizá-los para que a atividade faça o que o usuário espera e não consuma recursos 
+do sistema quando não estiver em uso.</p>
+    </a>
+
+    <a href="http://developer.android.com/training/basics/fragments/index.html">
+      <h4>Como construir uma IU dinâmica com Fragmentos</h4>
+      <p>Esta classe mostra como criar uma experiência dinâmica para o usuário com fragmentos e como otimizar
+a experiência do aplicativo ao usuário para dispositivos com diferentes tamanhos de tela e ainda manter compatibilidade com dispositivos que executem versões
+de plataforma tão antigas quanto o Android 1.6.</p>
+    </a>
+
+    <a href="http://developer.android.com/training/sharing/index.html">
+      <h4>Compartilhamento de conteúdo</h4>
+      <p>Esta classe aborda algumas formas comuns para enviar e receber conteúdo entre
+aplicativos usando APIs de Intenção e o objeto ActionProvider.</p>
+    </a>
+  </div>
+
+</div>
diff --git a/docs/html-intl/intl/pt-br/guide/components/intents-filters.jd b/docs/html-intl/intl/pt-br/guide/components/intents-filters.jd
new file mode 100644
index 0000000..80e3f08
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/intents-filters.jd
@@ -0,0 +1,899 @@
+page.title=Intenções e filtros de intenções
+page.tags="IntentFilter"
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Neste documento</h2>
+<ol>
+  <li><a href="#Types">Tipos de intenções</a></li>
+  <li><a href="#Building">Criação de uma intenção</a>
+    <ol>
+      <li><a href="#ExampleExplicit">Exemplo de intenção explícita</a></li>
+      <li><a href="#ExampleSend">Exemplo de intenção implícita</a></li>
+      <li><a href="#ForceChooser">Forçar um seletor de aplicativo</a></li>
+    </ol>
+  </li>
+  <li><a href="#Receiving">Recepção de uma intenção implícita</a>
+    <ol>
+      <li><a href="#ExampleFilters">Exemplos de filtros</a></li>
+    </ol>
+  </li>
+  <li><a href="#PendingIntent">Uso de uma intenção pendente</a></li>
+  <li><a href="#Resolution">Resolução de intenções</a>
+    <ol>
+      <li><a href="#ActionTest">Teste de ação</a></li>
+      <li><a href="#CategoryTest">Teste de categoria</a></li>
+      <li><a href="#DataTest">Teste de dados</a></li>
+      <li><a href="#imatch">Correspondência de intenções</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Veja também</h2>
+<ol>
+<li><a href="{@docRoot}training/basics/intents/index.html">Interação com outros aplicativos</a></li>
+<li><a href="{@docRoot}training/sharing/index.html">Compartilhamento de conteúdo</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+
+<p>A {@link android.content.Intent} é um objeto de mensagem que pode ser usado para solicitar uma ação
+de outro <a href="{@docRoot}guide/components/fundamentals.html#Components">componente de aplicativo</a>.
+Embora as intenções facilitem a comunicação entre componentes de diversos modos, há três
+casos de uso fundamentais:</p>
+
+<ul>
+<li><b>Para iniciar uma atividade:</b>
+<p>A {@link android.app.Activity} representa uma única tela em um aplicativo. É possível iniciar uma nova
+instância de uma {@link android.app.Activity} passando uma {@link android.content.Intent}
+a {@link android.content.Context#startActivity startActivity()}. A {@link android.content.Intent}
+descreve a atividade a iniciar e carrega todos os dados necessários.</p>
+
+<p>Se você deseja receber um resultado da atividade quando ela finalizar,
+chame {@link android.app.Activity#startActivityForResult
+startActivityForResult()}. Sua atividade recebe o resultado
+como um objeto {@link android.content.Intent} separado no retorno de chamada de {@link
+android.app.Activity#onActivityResult onActivityResult()} da atividade.
+Para obter mais informações, consulte o guia <a href="{@docRoot}guide/components/activities.html">Atividades</a>.</p></li>
+
+<li><b>Para iniciar um serviço:</b>
+<p>O {@link android.app.Service} é um componente que realiza operações em segundo plano
+sem interface de usuário. É possível iniciar um serviço para realizar uma operação que acontece uma vez
+(como baixar um arquivo) passando uma {@link android.content.Intent}
+a {@link android.content.Context#startService startService()}. A {@link android.content.Intent}
+descreve o serviço a iniciar e carrega todos os dados necessários.</p>
+
+<p>Se o serviço for projetado com uma interface servidor-cliente, é possível vincular ao serviço
+a partir de outro componente passando uma {@link android.content.Intent} a {@link
+android.content.Context#bindService bindService()}</code>. Para obter mais informações, consulte o guia <a href="{@docRoot}guide/components/services.html">Serviços</a>.</p></li>
+
+<li><b>Para fornecer uma transmissão:</b>
+<p>Transmissão é uma mensagem que qualquer aplicativo pode receber. O sistema fornece diversas
+transmissões para eventos do sistema, como quando o sistema inicializa ou o dispositivo inicia o carregamento.
+Você pode fornecer uma transmissão a outros aplicativos passando uma {@link android.content.Intent}
+a {@link android.content.Context#sendBroadcast(Intent) sendBroadcast()},
+{@link android.content.Context#sendOrderedBroadcast(Intent, String)
+sendOrderedBroadcast()} ou {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}.</p>
+</li>
+</ul>
+
+
+
+
+<h2 id="Types">Tipos de intenções</h2>
+
+<p>Há dois tipos de intenções:</p>
+
+<ul>
+<li>As <b>intenções explícitas</b> especificam o componente a iniciar pelo nome
+(o nome de classe totalmente qualificado). Normalmente, usa-se uma intenção explícita para iniciar um componente
+no próprio aplicativo porque se sabe o nome de classe da atividade ou serviço que se deseja iniciar.
+Por exemplo, iniciar uma nova atividade em resposta a uma ação do usuário ou iniciar um serviço para baixar
+um arquivo em segundo plano.</li>
+
+<li>As <b>intenções implícitas</b> não nomeiam nenhum componente específico, mas declaram uma ação geral
+a realizar, o que permite que um componente de outro aplicativo a trate. Por exemplo: se você deseja
+exibir ao usuário uma localização em um mapa, pode usar uma intenção implícita para solicitar que outro aplicativo
+capaz exiba uma localização especificada no mapa.</li>
+</ul>
+
+<p>Ao criar uma intenção explícita para iniciar uma atividade ou serviço, o sistema inicia imediatamente
+o componente do aplicativo especificado no objeto {@link android.content.Intent} .</p>
+
+<div class="figure" style="width:446px">
+<img src="{@docRoot}images/components/intent-filters@2x.png" width="446" alt="" />
+<p class="img-caption"><strong>Figura 1.</strong> Ilustração de como uma intenção implícita
+é fornecida pelo sistema para iniciar outra atividade: <b>[1]</b> <em>A atividade A</em> cria uma
+{@link android.content.Intent} com uma descrição de ação e passa-a para {@link
+android.content.Context#startActivity startActivity()}. <b>[2]</b> O sistema Android busca, em todos
+os aplicativos, um filtro de intenções que corresponda à intenção. Ao encontrar uma correspondência, <b>[3]</b> o sistema
+inicia a atividade correspondente (<em>atividade B</em>) chamando seu método {@link
+android.app.Activity#onCreate onCreate()} e passando a {@link android.content.Intent} para ele.
+</p>
+</div>
+
+<p>Ao criar uma intenção implícita, o sistema Android encontra o componente adequado para iniciar,
+comparando o conteúdo da intenção aos <em>filtros de intenções</em> declarados no <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">arquivo de manifesto</a> de outros aplicativos
+no dispositivo. Se a intenção corresponder a um filtro de intenções, o sistema iniciará esse componente e entregará
+o objeto {@link android.content.Intent}. Se diversos filtros de intenções corresponderem, o sistema
+exibirá uma caixa de diálogo para que o usuário selecione o aplicativo que deseja usar.</p>
+
+<p>O filtro de intenções é uma expressão em um arquivo de manifesto do aplicativo
+que especifica o tipo de intenções que o componente
+gostaria de receber. Por exemplo, ao declarar um filtro de intenções para uma atividade,
+outros aplicativos se tornam capazes de iniciar diretamente sua atividade com o determinado tipo de intenção.
+Do mesmo modo, se você <em>não</em> declarar nenhum filtro de intenções para uma atividade, ela poderá ser iniciada
+somente com uma intenção explícita.</p>
+
+<p class="caution"><strong>Atenção:</strong> para garantir a segurança do seu aplicativo, sempre use uma intenção
+explícita ao iniciar um {@link android.app.Service} e não
+declare filtros de intenções para os serviços. O uso de uma intenção implícita para iniciar um serviço representa
+um risco de segurança porque não é possível determinar qual serviço responderá à intenção
+e o usuário não poderá ver que serviço é iniciado. A partir do Android 5.0 (API de nível 21), o sistema
+lança uma exceção ao chamar {@link android.content.Context#bindService bindService()}
+com uma intenção implícita.</p>
+
+
+
+
+
+<h2 id="Building">Criação de uma intenção</h2>
+
+<p>Um objeto {@link android.content.Intent} carrega informações que o sistema Android usa
+para determinar o componente a iniciar (como o nome exato do componente ou categoria
+do componente que deve receber a intenção), além de informações que o componente receptor usa para
+realizar a ação adequadamente (como a ação a tomar e os dados a usar).</p>
+
+
+<p>As informações principais contidas em uma {@link android.content.Intent} são as seguintes:</p>
+
+<dl>
+
+<dt><b>Nome do componente</b></dt>
+<dd>O nome do componente a iniciar.
+
+<p>É opcional, mas é a informação fundamental que torna uma intenção
+<b>explícita</b>, o que significa que a intenção deve ser entregue somente ao componente do aplicativo
+definido pelo nome do componente. Sem nome de componente, a intenção será <b>implícita</b>
+e o sistema decidirá qual componente deve receber a intenção, com base nas informações de outra intenção
+(como a ação, os dados e a categoria &mdash; descritos abaixo). Portanto, se for necessário iniciar
+um componente específico no seu aplicativo, deve-se especificar o nome do componente.</p>
+
+<p class="note"><strong>Observação:</strong> ao iniciar um {@link android.app.Service}, deve-se
+<strong>sempre especificar o nome do componente</strong>. Caso contrário, não será possível determinar qual serviço
+responderá à intenção e o usuário não poderá ver que serviço é iniciado.</p>
+
+<p>Esse campo da {@link android.content.Intent} é um
+objeto {@link android.content.ComponentName} que pode ser especificado usando um nome
+de classe totalmente qualificado do componente-alvo, inclusive o nome do pacote do aplicativo. Por exemplo,
+{@code com.example.ExampleActivity}. É possível definir o nome do componente com {@link
+android.content.Intent#setComponent setComponent()}, {@link android.content.Intent#setClass
+setClass()}, {@link android.content.Intent#setClassName(String, String) setClassName()} ou com
+o construtor de {@link android.content.Intent}.</p>
+
+</dd>
+
+<p><dt><b>Ação</b></dt>
+<dd>String que especifica a ação genérica a realizar (como <em>exibir</em> ou <em>selecionar</em>).
+
+<p>No caso de uma intenção de transmissão, essa é a ação que entrou em vigor e que está sendo relatada.
+A ação determina amplamente como o resto da intenção é estruturado &mdash; especificamente,
+o que está contido nos dados e em extras.
+
+<p>É possível especificar as ações para uso por intenções dentro do aplicativo (ou para uso por outros
+aplicativos para chamar componentes no seu aplicativo), mas normalmente usam-se constantes de ação
+definidas pela classe {@link android.content.Intent} ou por outras classes de estrutura. A seguir há algumas
+ações comuns para iniciar uma atividade:</p>
+
+<dl>
+<dt>{@link android.content.Intent#ACTION_VIEW}</dt>
+   <dd>Use essa ação em uma intenção com {@link
+   android.content.Context#startActivity startActivity()} quando houver informações que
+   uma atividade possa exibir ao usuário, como uma foto para exibição em um aplicativo de galeria ou um endereço
+   para exibição em um aplicativo de mapa.</dd>
+
+<dt>{@link android.content.Intent#ACTION_SEND}</dt>
+   <dd>Também conhecida como a intenção de "compartilhamento", ela deve ser usada em uma intenção com {@link
+   android.content.Context#startActivity startActivity()} quando houver alguns dados que o usuário possa
+   compartilhar por meio de outro aplicativo, como um aplicativo de e-mail ou de compartilhamento social.</dd>
+</dl>
+
+<p>Consulte a referência da classe {@link android.content.Intent} para obter mais
+constantes que definem ações genéricas.  Outras ações são definidas
+em outros locais na estrutura do Android, como nas {@link android.provider.Settings} para ações
+que abrem telas específicas no aplicativo de Configurações do sistema.</p>
+
+<p>É possível especificar a ação para uma intenção com {@link android.content.Intent#setAction
+setAction()} ou com um construtor de {@link android.content.Intent}.</p>
+
+<p>Se você definir as próprias ações, certifique-se de incluir o nome do pacote do seu aplicativo
+como prefixo. Por exemplo:</p>
+<pre>static final String ACTION_TIMETRAVEL = "com.example.action.TIMETRAVEL";</pre>
+</dd>
+
+<dt><b>Dados</b></dt>
+<dd>A URI (um objeto {@link android.net.Uri}) que referencia os dados a serem aproveitados e/ou o
+tipo MIME desses dados. O tipo dos dados fornecidos geralmente é determinado pela ação da intenção.
+Por exemplo: se a ação for {@link android.content.Intent#ACTION_EDIT}, os dados devem conter
+a URI do documento a editar.
+
+<p>Ao criar uma intenção,
+em geral, é importante especificar o tipo de dados (seu tipo MIME) em adição à URI.
+Por exemplo: uma atividade capaz de exibir imagens provavelmente não será capaz
+de reproduzir um arquivo de áudio, mesmo que os formatos da URI sejam similares.
+Portanto, especificar o tipo MIME dos dados ajuda o sistema
+Android a encontrar o melhor componente para receber a intenção.
+Contudo, o tipo MIME, às vezes, pode ser inferido a partir da URI &mdash; especificamente quando os dados são
+uma URI de {@code content:}, indicando que os dados se localizam no dispositivo e são controlados
+por um {@link android.content.ContentProvider}, que torna o tipo MIME dos dados visíveis para o sistema.</p>
+
+<p>Para definir somente a URI de dados, chame {@link android.content.Intent#setData setData()}.
+Para definir somente o tipo MIME, chame {@link android.content.Intent#setType setType()}. Se necessário,
+é possível definir ambos explicitamente com {@link
+android.content.Intent#setDataAndType setDataAndType()}.</p>
+
+<p class="caution"><strong>Atenção:</strong> se você deseja definir a URI e o tipo MIME,
+<strong>não</strong> chame {@link android.content.Intent#setData setData()}
+e {@link android.content.Intent#setType setType()}, pois eles anulam seus valores mutuamente.
+Sempre use {@link android.content.Intent#setDataAndType setDataAndType()} para definir
+a URI e o tipo MIME juntos.</p>
+</dd>
+
+<p><dt><b>Categoria</b></dt>
+<dd>String que contém informações adicionais sobre o tipo de componente
+que deve tratar da intenção.  Qualquer número de descrições de categoria pode ser
+inserido em uma intenção, mas a maioria das intenções não requer nenhuma categoria.
+A seguir há algumas categorias comuns:
+
+<dl>
+<dt>{@link android.content.Intent#CATEGORY_BROWSABLE}</dt>
+  <dd>A atividade-alvo permite seu início por um navegador da web para exibir dados
+       referenciados por um link &mdash; como uma imagem ou uma mensagem de e-mail.
+  </dd>
+<dt>{@link android.content.Intent#CATEGORY_LAUNCHER}</dt>
+  <dd>A atividade é a atividade inicial de uma tarefa e é listada
+       no inicializador do aplicativo do sistema.
+  </dd>
+</dl>
+
+<p>Consulte a descrição da classe {@link android.content.Intent} para obter a lista completa
+de categorias.</p>
+
+<p>É possível especificar uma categoria com {@link android.content.Intent#addCategory addCategory()}.</p>
+</dd>
+</dl>
+
+
+<p>As propriedades listadas abaixo (nome do componente, ação, dados e categoria) representam
+as características de definição de uma intenção. Ao ler estas propriedades, o sistema Android
+será capaz de definir o componente de aplicativo que ele deve iniciar.</p>
+
+<p>Contudo, uma intenção pode carregar informações adicionais que não afetam
+o modo com que é tratada para um componente do aplicativo. As intenções também podem fornecer:</p>
+
+<dl>
+<dt><b>Extras</b></dt>
+<dd>Pares de valores-chave que carregam informações adicionais exigidas para realizar a ação solicitada.
+Assim, como algumas ações usam determinados tipos de URIs de dados, outras também usam determinados extras.
+
+<p>É possível adicionar dados extras com diversos métodos {@link android.content.Intent#putExtra putExtra()},
+cada um aceitando dois parâmetros: o nome principal e o valor.
+Também é possível criar um objeto {@link android.os.Bundle} com todos os dados extras e, em seguida, inserir
+o {@link android.os.Bundle} na {@link android.content.Intent} com {@link
+android.content.Intent#putExtras putExtras()}.</p>
+
+<p>Por exemplo: ao criar uma intenção para enviar um e-mail com
+{@link android.content.Intent#ACTION_SEND}, é possível especificar o recipiente "para" com
+a chave {@link android.content.Intent#EXTRA_EMAIL} e especificar o "assunto" com
+a chave {@link android.content.Intent#EXTRA_SUBJECT}.</p>
+
+<p>A classe {@link android.content.Intent} especifica diversas constantes {@code EXTRA_*}
+para tipos de dados padronizados. Se for necessário declarar chaves extras (para intenções que
+seu aplicativo receba), certifique-se de incluir o nome do pacote do aplicativo
+como prefixo. Por exemplo:</p>
+<pre>static final String EXTRA_GIGAWATTS = "com.example.EXTRA_GIGAWATTS";</pre>
+</dd>
+
+<dt><b>Sinalizadores</b></dt>
+<dd>Sinalizadores definidos na classe {@link android.content.Intent} que funcionam como metadados
+para a intenção. Os sinalizadores podem instruir o sistema Android sobre como inicializar uma atividade (por exemplo, a qual
+<a href="{@docRoot}guide/components/tasks-and-back-stack.html">tarefa</a> a atividade deve
+pertencer) e como tratá-la após sua inicialização (por exemplo, se ela pertencer a uma lista de atividades
+recentes).
+
+<p>Para obter mais informações, consulte o método {@link android.content.Intent#setFlags setFlags()}.</p>
+</dd>
+
+</dl>
+
+
+
+
+<h3 id="ExampleExplicit">Exemplo de intenção explícita</h3>
+
+<p>A intenção explícita é usada para inicializar um componente específico de um aplicativo, como
+uma atividade ou serviço em particular, no seu aplicativo. Para criar uma intenção explícita, defina
+o nome do componente para o objeto {@link android.content.Intent} &mdash; todas
+as outras propriedades da intenção são opcionais.</p>
+
+<p>Por exemplo: se você criar um serviço no aplicativo, chamado {@code DownloadService} e
+projetado para baixar um arquivo da web, poderá iniciá-lo com o código a seguir:</p>
+
+<pre>
+// Executed in an Activity, so 'this' is the {@link android.content.Context}
+// The fileUrl is a string URL, such as "http://www.example.com/image.png"
+Intent downloadIntent = new Intent(this, DownloadService.class);
+downloadIntent.setData({@link android.net.Uri#parse Uri.parse}(fileUrl));
+startService(downloadIntent);
+</pre>
+
+<p>O construtor {@link android.content.Intent#Intent(Context,Class)}
+ fornece {@link android.content.Context} ao aplicativo
+e um objeto {@link java.lang.Class} ao componente. Assim,
+essa intenção inicia explicitamente a classe {@code DownloadService} no aplicativo.</p>
+
+<p>Para obter mais informações sobre a criação e inicialização de um serviço, consulte
+o guia <a href="{@docRoot}guide/components/services.html">Serviços</a>.</p>
+
+
+
+
+<h3 id="ExampleSend">Exemplo de intenção implícita</h3>
+
+<p>A intenção implícita especifica uma ação que possa chamar qualquer aplicativo no dispositivo capaz
+de realizar a ação. A intenção implícita é útil quando o aplicativo não pode realizar
+a ação, mas outros aplicativos provavelmente podem e o usuário seleciona que aplicativo usar.</p>
+
+<p>Por exemplo: se você tem o conteúdo que deseja que o usuário compartilhe com outras pessoas, crie uma intenção
+com a ação {@link android.content.Intent#ACTION_SEND}
+e adicione extras que especifiquem o conteúdo a compartilhar. Ao chamar
+{@link android.content.Context#startActivity startActivity()} com esta intenção, o usuário poderá
+selecionar um aplicativo pelo qual deseja compartilhar o conteúdo.</p>
+
+<p class="caution"><strong>Atenção:</strong> é possível que um usuário não tenha <em>nenhum</em>
+aplicativo que trate da intenção implícita enviada a {@link android.content.Context#startActivity
+startActivity()}. Se isso acontecer, a chamada e seu aplicativo falharão. Para verificar
+se uma atividade receberá a intenção, chame {@link android.content.Intent#resolveActivity
+resolveActivity()} no objeto {@link android.content.Intent}. Se o resultado não for nulo,
+há pelo menos um aplicativo que pode tratar da intenção e será seguro chamar
+{@link android.content.Context#startActivity startActivity()}. Se o resultado for nulo,
+você não deve usar a intenção e, se possível, deve desativar o recurso que emite
+a intenção.</p>
+
+
+<pre>
+// Create the text message with a string
+Intent sendIntent = new Intent();
+sendIntent.setAction(Intent.ACTION_SEND);
+sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
+sendIntent.setType("text/plain");
+
+// Verify that the intent will resolve to an activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(sendIntent);
+}
+</pre>
+
+<p class="note"><strong>Observação:</strong> nesse caso, não será usada nenhuma URI, mas o tipo de dados da intenção
+será declarado para especificar o conteúdo carregado pelos extras.</p>
+
+
+<p>Quando {@link android.content.Context#startActivity startActivity()} é chamada, o sistema
+avalia todos os aplicativos instalados para determinar quais deles podem tratar esse tipo de intenção
+(uma intenção com a ação {@link android.content.Intent#ACTION_SEND} e que carrega dados
+de "texto/simples". Se houver somente um aplicativo que possa tratá-la, o aplicativo abre imediatamente e recebe
+a intenção. Se diversas atividades aceitarem a intenção, o sistema
+exibirá uma caixa de diálogo para que o usuário selecione que aplicativo usar.</p>
+
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/training/basics/intent-chooser.png" alt="">
+  <p class="img-caption"><strong>Figura 2.</strong> Caixa de diálogo seletora.</p>
+</div>
+
+<h3 id="ForceChooser">Forçar um seletor de aplicativo</h3>
+
+<p>Quando há mais de um aplicativo que responde à intenção implícita,
+o usuário pode selecionar o aplicativo que deseja usar e tornar este aplicativo a escolha padrão para
+a ação. Isso é positivo ao executar uma ação para a qual o usuário
+deseja usar o mesmo aplicativo todas as vezes, como quando abre uma página da web (os usuários
+geralmente usam apenas um navegador).</p>
+
+<p>Contudo, se diversos aplicativos podem responder à intenção e o usuário deve ficar livre para usar um aplicativo
+diferente em cada vez, é preciso exibir uma caixa de diálogo seletora explicitamente. A caixa de diálogo seletora pede que
+o usuário selecione o aplicativo desejado para a ação todas as vezes (o usuário não pode selecionar um aplicativo padrão para
+a ação). Por exemplo: quando o aplicativo realiza "compartilhar" com a ação {@link
+android.content.Intent#ACTION_SEND}, os usuários podem querer compartilhar usando um aplicativo diferente
+conforme a situação, portanto deve-se sempre usar a caixa de diálogo seletora, como ilustrado na figura 2.</p>
+
+
+
+
+<p>Para exibir o seletor, crie uma {@link android.content.Intent} usando {@link
+android.content.Intent#createChooser createChooser()} e passe-a para {@link
+android.app.Activity#startActivity startActivity()}. Por exemplo:</p>
+
+<pre>
+Intent sendIntent = new Intent(Intent.ACTION_SEND);
+...
+
+// Always use string resources for UI text.
+// This says something like "Share this photo with"
+String title = getResources().getString(R.string.chooser_title);
+// Create intent to show the chooser dialog
+Intent chooser = Intent.createChooser(sendIntent, title);
+
+// Verify the original intent will resolve to at least one activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(chooser);
+}
+</pre>
+
+<p>Isso exibe uma caixa de diálogo com uma lista de aplicativos que respondem à intenção transmitida ao método {@link
+android.content.Intent#createChooser createChooser()} e utiliza o texto fornecido como
+título da caixa de diálogo.</p>
+
+
+
+
+
+
+
+
+
+<h2 id="Receiving">Recepção de uma intenção implícita</h2>
+
+<p>Para anunciar quais intenções implícitas o aplicativo pode receber, declare um ou mais filtros de intenções
+para cada um dos componentes do aplicativo com um elemento
+<a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a> no <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">arquivo de manifesto</a>.
+Cada filtro de intenções especifica o tipo de intenções aceito com base na ação
+nos dados e na categoria da intenção. O sistema fornecerá uma intenção implícita ao componente do seu aplicativo somente se ela
+puder passar por um dos filtros de intenções.</p>
+
+<p class="note"><strong>Observação:</strong> a intenção explícita é sempre entregue ao alvo
+independentemente dos filtros de intenções que o componente declare.</p>
+
+<p>Os componentes de um aplicativo devem declarar filtros separados para cada trabalho exclusivo que podem fazer.
+Por exemplo, uma atividade em um aplicativo de galeria de imagens pode ter dois filtros: um filtro
+para visualizar uma imagem e outro para editar uma imagem. Quando a atividade inicia,
+ela inspeciona a {@link android.content.Intent} e decide como se comportar com base nas informações
+na {@link android.content.Intent} (como para exibir ou não os controles do editor).</p>
+
+<p>Cada filtro de intenções é definido por um elemento <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+no arquivo de manifesto do aplicativo, aninhado no componente correspondente do aplicativo (como
+um elemento
+<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>). Dentro de <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>,
+é possível especificar o tipo de intenções aceitas usando um ou mais
+dos três elementos a seguir:</p>
+
+<dl>
+<dt><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a></dt>
+  <dd>Declara a ação da intenção aceita, no atributo {@code name}. O valor
+  deve ser o valor literal da string de uma ação, e não a constante da classe.</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a></dt>
+  <dd>Declara o tipo de dados aceitos usando um ou mais atributos que especificam diversos
+  aspectos da URI de dados (<code>scheme</code>, <code>host</code>, <code>port</code>,
+<code>path</code> etc.) e do tipo MIME.</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a></dt>
+  <dd>Declara a categoria da intenção aceita, no atributo {@code name}. O valor
+  deve ser o valor literal da string de uma ação, e não a constante da classe.
+
+  <p class="note"><strong>Observação:</strong> para receber intenções implícitas,
+  <strong>é preciso incluir</strong> a
+  categoria {@link android.content.Intent#CATEGORY_DEFAULT} no filtro de intenções. Os métodos
+{@link android.app.Activity#startActivity startActivity()} e
+{@link android.app.Activity#startActivityForResult startActivityForResult()} tratam de todas as intenções
+  como se eles declarassem a categoria {@link android.content.Intent#CATEGORY_DEFAULT}.
+  Se você não a declarar no filtro de intenções, nenhuma intenção implícita retomará
+  a sua atividade.</p>
+  </dd>
+</dl>
+
+<p>Por exemplo, abaixo há uma declaração de atividade com um filtro de intenções para receber
+uma intenção {@link android.content.Intent#ACTION_SEND} quando o tipo de dados for texto:</p>
+
+<pre>
+&lt;activity android:name="ShareActivity">
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>Não há problemas em criar um filtro que inclua mais de uma instância de
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a>,
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> ou
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a>.
+Se você o fizer, basta certificar-se de que o componente possa tratar todas e quaisquer combinações
+daqueles elementos do filtro.</p>
+
+<p>Para tratar de diversos tipos de intenções, mas somente em combinações específicas
+de ações, dados e tipos de categoria, será necessário criar diversos filtros de intenções.</p>
+
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Restrição de acesso a componentes</h2>
+<p>O uso de filtros de intenção não é um modo seguro de evitar que outros aplicativos iniciem
+componentes. Embora os filtros de intenções restrinjam um componente a responder somente
+a determinados tipos de intenções implícitas, outro aplicativo pode iniciar o componente do aplicativo
+usando uma intenção explícita se o desenvolvedor determinar os nomes dos componentes.
+Se for importante que <em>somente determinado aplicativo</em> inicie um dos seus componentes,
+defina o atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#exported">{@code
+exported}</a> como {@code "false"} para o componente em questão.
+</p>
+</div>
+</div>
+
+<p>As intenções implícitas são testadas em relação a um filtro por meio da comparação da intenção com cada um
+dos três elementos. Para ser entregue ao componente, a intenção deve passar por todos os três testes.
+Se ela falhar em algum deles, o sistema Android não entregará a intenção
+ao componente.  No entanto, como um componente poder ter diversos filtros de intenções, uma intenção que não
+passe por um dos filtros de um componente pode passar por outro filtro.
+Veja mais informações sobre como o sistema resolve intenções na seção abaixo
+sobre <a href="#Resolution">Resolução de intenções</a>.</p>
+
+<p class="caution"><strong>Atenção:</strong> para evitar a execução involuntária de um {@link android.app.Service}
+diferente do aplicativo, sempre use uma intenção explícita para iniciar o próprio serviço
+e não declare filtros de intenções para ele.</p>
+
+<p class="note"><strong>Observação:</strong>
+para todas as atividades, é necessário declarar os filtros de intenções no arquivo de manifesto.
+Contudo, os filtros para receptores de transmissão podem ser registrados dinamicamente chamando
+{@link android.content.Context#registerReceiver(BroadcastReceiver, IntentFilter, String,
+Handler) registerReceiver()}. Assim, será possível cancelar o registro do receptor com {@link
+android.content.Context#unregisterReceiver unregisterReceiver()}. Isso permitirá que o aplicativo
+receba transmissões específicas durante um período de tempo especificado apenas quando o aplicativo
+estiver em execução.</p>
+
+
+
+
+
+
+
+<h3 id="ExampleFilters">Exemplos de filtros</h3>
+
+<p>Para compreender melhor alguns dos comportamentos do filtro de intenções, veja o fragmento a seguir
+do arquivo de manifesto de um aplicativo de compartilhamento social.</p>
+
+<pre>
+&lt;activity android:name="MainActivity">
+    &lt;!-- This activity is the main entry, should appear in app launcher -->
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.MAIN" />
+        &lt;category android:name="android.intent.category.LAUNCHER" />
+    &lt;/intent-filter>
+&lt;/activity>
+
+&lt;activity android:name="ShareActivity">
+    &lt;!-- This activity handles "SEND" actions with text data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter&gt;
+    &lt;!-- This activity also handles "SEND" and "SEND_MULTIPLE" with media data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;action android:name="android.intent.action.SEND_MULTIPLE"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="application/vnd.google.panorama360+jpg"/>
+        &lt;data android:mimeType="image/*"/>
+        &lt;data android:mimeType="video/*"/>
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>A primeira atividade, {@code MainActivity}, é o ponto de entrada principal do aplicativo &mdash; a atividade
+que abre quando o usuário inicializa o aplicativo pela primeira vez com o ícone de inicialização:</p>
+<ul>
+  <li>A ação {@link android.content.Intent#ACTION_MAIN}
+  indica que este é o ponto de entrada principal e não espera nenhum dado de intenção.</li>
+  <li>A categoria {@link android.content.Intent#CATEGORY_LAUNCHER} indica que esse ícone
+  da atividade deve ser colocado no inicializador de aplicativo do sistema. Se o elemento <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+  não especificar um ícone com {@code icon}, o sistema usará o ícone do elemento
+  <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>.</li>
+</ul>
+<p>Esses dois devem ser pareados juntos para que a atividade apareça no inicializador do aplicativo.</p>
+
+<p>A segunda atividade, {@code ShareActivity}, destina-se a facilitar o compartilhamento de conteúdo de texto
+e mídia. Apesar de os usuários poderem acessar essa atividade pela {@code MainActivity},
+eles também podem acessar {@code ShareActivity} diretamente de outro aplicativo que emita uma intenção
+implícita que corresponda a um dos dois filtros de intenções.</p>
+
+<p class="note"><strong>Observação:</strong> o tipo MIME,
+<a href="https://developers.google.com/panorama/android/">{@code
+application/vnd.google.panorama360+jpg}</a>, é um tipo de dados especial que especifica
+fotos panorâmicas que podem ser tratadas com as APIs do <a href="{@docRoot}reference/com/google/android/gms/panorama/package-summary.html">Google
+Panorama</a>.</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+<h2 id="PendingIntent">Uso de uma intenção pendente</h2>
+
+<p>Um objeto {@link android.app.PendingIntent} é um agrupador em torno de um objeto {@link
+android.content.Intent}. A principal finalidade de uma {@link android.app.PendingIntent}
+ é conceder permissão a um aplicativo externo
+para usar a {@link android.content.Intent} contida como se ela fosse executada a partir
+do processo do próprio aplicativo.</p>
+
+<p>Os principais casos de uso de uma intenção pendente são:</p>
+<ul>
+  <li>Declarar uma intenção a ser executada quando o usuário realiza uma ação com a <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Notificação</a>
+  (o {@link android.app.NotificationManager} do sistema Android
+  executa a {@link android.content.Intent}).
+  <li>Declarar uma intenção a ser executada quando o usuário realiza uma ação com o
+  <a href="{@docRoot}guide/topics/appwidgets/index.html">Widget do aplicativo</a>
+  (o aplicativo de tela inicial executa a {@link android.content.Intent}).
+  <li>Declarar uma intenção a ser executada em um momento específico no futuro (o {@link android.app.AlarmManager}
+  do sistema Android executa a {@link android.content.Intent}).
+</ul>
+
+<p>Como cada objeto {@link android.content.Intent} é projetado para ser tratado por um tipo
+específico de componentes do aplicativo (uma {@link android.app.Activity}, um {@link android.app.Service}
+ou um {@link android.content.BroadcastReceiver}), uma {@link android.app.PendingIntent}
+deve ser criada com a mesma consideração. Ao usar uma intenção pendente, o aplicativo
+não executará a intenção com uma chamada como de {@link android.content.Context#startActivity
+startActivity()}. Em vez disso, deve-se declarar o tipo do componente pretendido ao criar
+a {@link android.app.PendingIntent} chamando o respectivo método criador:</p>
+
+<ul>
+  <li>{@link android.app.PendingIntent#getActivity PendingIntent.getActivity()} para uma
+  {@link android.content.Intent} que inicia uma {@link android.app.Activity}.</li>
+  <li>{@link android.app.PendingIntent#getService PendingIntent.getService()} para uma
+  {@link android.content.Intent} que inicia um {@link android.app.Service}.</li>
+  <li>{@link android.app.PendingIntent#getBroadcast PendingIntent.getBroadcast()} para uma
+  {@link android.content.Intent} que inicia um {@link android.content.BroadcastReceiver}.</li>
+</ul>
+
+<p>A menos que o aplicativo esteja <em>recebendo</em> intenções pendentes de outros aplicativos,
+os métodos acima para criar uma {@link android.app.PendingIntent} são provavelmente
+os únicos métodos de {@link android.app.PendingIntent} necessários.</p>
+
+<p>Cada método toma o {@link android.content.Context} do aplicativo atual,
+a {@link android.content.Intent} que você deseja agrupar e um ou mais sinalizadores que especificam
+como a intenção deve ser usada (como se a intenção pudesse ser usada mais de uma vez).</p>
+
+<p>Veja mais informações sobre o uso de intenções pendentes na documentação
+dos respectivos casos de uso, como nos guias das APIs de <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Notificações</a>
+e <a href="{@docRoot}guide/topics/appwidgets/index.html">Widget do aplicativo</a>.</p>
+
+
+
+
+
+
+
+<h2 id="Resolution">Resolução de intenções</h2>
+
+
+<p>Quando o sistema recebe uma intenção implícita para iniciar uma atividade, ele busca
+as melhores atividades para a intenção comparando-a com os filtros de intenções com base em três aspectos:</p>
+
+<ul>
+  <li>A ação da intenção
+  <li>Os dados da intenção (URI e tipo de dados)
+  <li>A categoria da intenção
+</ul>
+
+<p>As seções a seguir descrevem como uma intenção é combinada com os componentes apropriados
+em termos de como o filtro de intenções é declarado no arquivo de manifesto de um aplicativo.</p>
+
+
+<h3 id="ActionTest">Teste de ação</h3>
+
+<p>Para especificar ações de intenções aceitas, um filtro de intenções pode declarar zero ou mais
+elementos <a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a>.  Por exemplo:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.VIEW" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Para passar por este filtro, a ação especificada na {@link android.content.Intent}
+  deve corresponder a uma das ações listadas no filtro.</p>
+
+<p>Se o filtro não listar nenhuma ação, não há nada a que
+uma intenção corresponda, portanto todas as intenções falharão no teste. Contudo, se uma {@link android.content.Intent}
+não especificar nenhuma ação, ela passará no teste (desde que o filtro
+contenha pelo menos uma ação).</p>
+
+
+
+<h3 id="CategoryTest">Teste de categoria</h3>
+
+<p>Para especificar as categorias de intenção aceitas, um filtro de intenções pode declarar zero ou mais
+elementos <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a>.  Por exemplo:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+    &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Para que uma intenção passe no teste de categoria, cada categoria na {@link android.content.Intent}
+deve corresponder a uma categoria no filtro. O inverso não é necessário &mdash; o filtro de intenções pode
+declarar mais categorias das especificadas na {@link android.content.Intent} e
+a {@link android.content.Intent} ainda passará no teste. Portanto, uma intenção sem categorias sempre
+passará nesse teste independentemente das categorias declaradas no filtro.</p>
+
+<p class="note"><strong>Observação:</strong>
+O Android aplica automaticamente a categoria {@link android.content.Intent#CATEGORY_DEFAULT}
+para todas as intenções implícitas passadas a {@link
+android.content.Context#startActivity startActivity()} e {@link
+android.app.Activity#startActivityForResult startActivityForResult()}.
+Por isso, se você deseja que a atividade receba intenções implícitas, ela deve
+conter uma categoria de {@code "android.intent.category.DEFAULT"} nos filtros de intenções (como
+exibido no exemplo de {@code &lt;intent-filter&gt;} anterior).</p>
+
+
+
+<h3 id="DataTest">Teste de dados</h3>
+
+<p>Para especificar dados de intenções aceitas, um filtro de intenções pode declarar zero ou mais
+elementos <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a>.  Por exemplo:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="video/mpeg" android:scheme="http" ... /&gt;
+    &lt;data android:mimeType="audio/mpeg" android:scheme="http" ... /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Cada elemento
+<code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code> pode especificar uma estrutura de URI e um tipo de dados (tipo de mídia MIME).  Há atributos
+separados &mdash; {@code scheme}, {@code host}, {@code port} e
+{@code path} &mdash; para cada parte da URI:
+</p>
+
+<p style="margin-left: 2em">{@code &lt;scheme&gt;://&lt;host&gt;:&lt;port&gt;/&lt;path&gt;}</p>
+
+<p>
+Por exemplo:
+</p>
+
+<p style="margin-left: 2em">{@code content://com.example.project:200/folder/subfolder/etc}</p>
+
+<p>Nessa URI, o esquema é {@code content}, o host é {@code com.example.project},
+a porta é {@code 200} e o caminho é {@code folder/subfolder/etc}.
+</p>
+
+<p>Cada um desses atributos é opcional em um elemento <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>,
+mas há dependências lineares:</p>
+<ul>
+  <li>Se não houver esquema especificado, o host será ignorado.</li>
+  <li>Se não houver host especificado, a porta será ignorada.</li>
+  <li>Se não houver esquema nem host especificado, o caminho será ignorado.</li>
+</ul>
+
+<p>Quando a URI em uma intenção é comparada a uma especificação de URI em um filtro,
+a comparação é feita somente com as partes da URI incluídas no filtro. Por exemplo:</p>
+<ul>
+  <li>Se um filtro especificar somente um esquema, todas as URIs com esse esquema atenderão
+ao filtro.</li>
+  <li>Se um filtro especificar um esquema e uma autoridade, mas não um caminho, todas as URIs
+com o mesmo esquema e autoridade passarão pelo filtro independentemente dos caminhos.</li>
+  <li>Se um filtro especificar um esquema, uma autoridade e um caminho, somente URIs com o mesmo esquema,
+autoridade e caminho passarão pelo filtro.</li>
+</ul>
+
+<p class="note"><strong>Observação:</strong> a especificação de caminho pode
+conter um asterisco especial (*) para exigir somente uma correspondência parcial do nome do caminho.</p>
+
+<p>O teste de dados compara a URI e o tipo MIME da intenção com uma URI
+e um tipo MIME especificados no filtro.  As regras são as seguintes:
+</p>
+
+<ol type="a">
+<li>A intenção que não contiver URI nem tipo MIME passará
+no teste somente se o filtro não especificar nenhuma URI nem tipo MIME.</li>
+
+<li>A intenção que contiver URI mas nenhum tipo MIME (nem explícito, nem inferível a partir
+da URI) passará pelo teste somente se a URI corresponder ao formato de URI do filtro
+e se o filtro, igualmente, não especificar um tipo MIME.</li>
+
+<li>A intenção que contiver tipo MIME mas nenhuma URI passará pelo teste
+somente se o filtro listar o mesmo tipo MIME e não especificar nenhum formato de URI.</li>
+
+<li>A intenção que contiver URI e tipo MIME (explícito ou inferível a partir
+da URI) passará a parte do tipo MIME do teste somente se esse
+tipo corresponder a um tipo listado no filtro.  A parte da URI passará no teste
+se corresponder a uma URI no filtro ou se tiver uma URI de {@code content:}
+ou {@code file:} e se o filtro não especificar nenhuma URI. Em outras palavras,
+presume-se que um componente seja compatível com dados de {@code content:} e de {@code file:} se
+o filtro listar <em>somente</em> um tipo MIME.</p></li>
+</ol>
+
+<p>
+Essa última regra (d) reflete a expectativa
+de que os componentes sejam capazes de obter dados de local de um arquivo ou provedor de conteúdo.
+Portanto, os filtros podem listar somente um tipo de dados e não precisam nomear
+explicitamente os esquemas {@code content:} e {@code file:}.
+Este é um caso típico.  Um elemento <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>
+como o seguinte, por exemplo, informa ao Android que o componente pode obter dados de imagem de um provedor
+de conteúdo e exibi-los:
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="image/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+<p>
+Como a maioria dos dados disponíveis é dispensada pelos provedores de conteúdo, os filtros
+que especificam um tipo de dados mas não uma URI são, talvez, os mais comuns.
+</p>
+
+<p>
+Outra configuração comum é: filtros com um esquema e um tipo de dados.  Por
+exemplo, um elemento
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>, como o seguinte, informa ao Android
+que o componente pode recuperar dados de vídeo da rede para realizar a ação:
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:scheme="http" android:type="video/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+
+
+<h3 id="imatch">Correspondência de intenções</h3>
+
+<p>Intenções são correspondidas a filtros de intenções não somente para descobrir
+um componente-alvo a ativar, mas também para descobrir algo sobre o conjunto
+de componentes do dispositivo.  Por exemplo: o aplicativo Home preenche o inicializador do aplicativo
+encontrando todas as atividades com filtros de intenções que especifiquem
+a ação {@link android.content.Intent#ACTION_MAIN} e
+a categoria {@link android.content.Intent#CATEGORY_LAUNCHER}.</p>
+
+<p>O aplicativo pode usar a correspondência de intenções de modo similar.
+O {@link android.content.pm.PackageManager} tem um conjunto de métodos
+{@code query...()}, que retornam todos os componentes que podem aceitar uma determinada intenção
+e uma série de métodos {@code resolve...()} similares, que determinam o melhor
+componente para responder a uma intenção.  Por exemplo:
+{@link android.content.pm.PackageManager#queryIntentActivities
+queryIntentActivities()} retorna uma lista de todas as atividades que podem realizar
+a intenção passada como um argumento e {@link
+android.content.pm.PackageManager#queryIntentServices
+queryIntentServices()} retorna uma lista de serviços semelhantes.
+Nenhum dos métodos ativa os componentes — eles apenas listam aqueles que
+podem responder.  Há um método semelhante
+para receptores de transmissão — o {@link android.content.pm.PackageManager#queryBroadcastReceivers
+queryBroadcastReceivers()}.
+</p>
+
+
+
+
diff --git a/docs/html-intl/intl/pt-br/guide/components/loaders.jd b/docs/html-intl/intl/pt-br/guide/components/loaders.jd
new file mode 100644
index 0000000..f3c4209
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/loaders.jd
@@ -0,0 +1,494 @@
+page.title=Carregadores
+parent.title=Atividades
+parent.link=activities.html
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>Neste documento</h2>
+    <ol>
+    <li><a href="#summary">Resumo de API de carregador</a></li>
+    <li><a href="#app">Uso de carregadores em um aplicativo</a>
+      <ol>
+        <li><a href="#requirements"></a></li>
+        <li><a href="#starting">Início de um carregador</a></li>
+        <li><a href="#restarting">Reinício de um carregador</a></li>
+        <li><a href="#callback">Uso dos retornos de chamada de LoaderManager</a></li>
+      </ol>
+    </li>
+    <li><a href="#example">Exemplo</a>
+       <ol>
+         <li><a href="#more_examples">Mais exemplos</a></li>
+        </ol>
+    </li>
+  </ol>
+    
+  <h2>Classes principais</h2>
+    <ol>
+      <li>{@link android.app.LoaderManager}</li>
+      <li>{@link android.content.Loader}</li>
+
+    </ol>   
+    
+    <h2>Exemplos relacionados</h2>
+   <ol>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a></li>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html">
+LoaderThrottle</a></li>
+   </ol>
+  </div>
+</div>
+
+<p>Introduzidos no Android 3.0, os carregadores facilitam o carregamento assíncrono de dados
+em uma atividade ou fragmento. Os carregadores têm as seguintes características:</p>
+  <ul>
+    <li>Eles estão disponíveis para cada {@link android.app.Activity} e {@link
+android.app.Fragment}.</li>
+    <li>Eles fornecem carregamento assíncrono de dados.</li>
+    <li>Eles monitoram a origem dos dados e fornecem novos resultados
+quando o conteúdo é alterado.</li>
+    <li>Eles reconectam-se automaticamente ao cursor do último carregador
+quando são recriados após uma alteração de configuração. Portanto, eles não precisam reconsultar
+os dados.</li>
+  </ul>
+ 
+<h2 id="summary">Resumo da API de carregador</h2>
+
+<p>Há várias classes e interfaces que podem ser envolvidas no uso
+de carregadores em um aplicativo. Elas são resumidas nesta tabela:</p>
+
+<table>
+  <tr>
+    <th>Classe/Interface</th>
+    <th>Descrição</th>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager}</td>
+    <td>Uma classe abstrata associada a {@link android.app.Activity} ou
+{@link android.app.Fragment} para gerenciar uma ou mais instâncias de {@link
+android.content.Loader}. Isto ajuda um aplicativo a gerenciar
+operações executadas por longos períodos juntamente com o ciclo de vida de {@link android.app.Activity}
+ou {@link android.app.Fragment}; o uso mais comum disto é com 
+{@link android.content.CursorLoader}. No entanto, os aplicativos têm a liberdade de criar
+os próprios carregadores para outros tipos de dados.
+    <br />
+    <br />
+    Há apenas um {@link android.app.LoaderManager} por atividade ou fragmento. No entanto, um {@link android.app.LoaderManager} pode ter
+vários carregadores.</td>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager.LoaderCallbacks}</td>
+    <td>Uma interface de retorno de chamada para um cliente interagir com {@link
+android.app.LoaderManager}. Por exemplo, usa-se o método de retorno de chamada {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+para criar um novo carregador.</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.Loader}</td>
+    <td>Uma classe abstrata que realiza carregamento assíncrono de dados. Esta é a classe de base
+de um carregador. Geralmente, você usaria {@link
+android.content.CursorLoader}, mas é possível implementar subclasse própria. Enquanto os carregadores
+estiverem ativos, devem monitorar a origem dos dados e fornecer
+novos resultados quando o conteúdo for alterado. </td>
+  </tr>
+  <tr>
+    <td>{@link android.content.AsyncTaskLoader}</td>
+    <td>Um carregador abstrato que fornece uma {@link android.os.AsyncTask} para realizar o trabalho.</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.CursorLoader}</td>
+    <td>Uma subclasse de {@link android.content.AsyncTaskLoader} que consulta
+{@link android.content.ContentResolver} e retorna um {@link
+android.database.Cursor}. Esta classe implementa o protocolo {@link
+android.content.Loader} de forma padrão para cursores de consulta,
+compilando em {@link android.content.AsyncTaskLoader} para realizar a consulta de cursor
+em um encadeamento de segundo plano para que a IU do aplicativo não seja bloqueada. Usar
+este carregador é a melhor maneira de carregar dados de forma assíncrona a partir de um {@link
+android.content.ContentProvider}, em vez de realizar uma consulta gerenciada pelas
+APIs da atividade ou do fragmento.</td>
+  </tr>
+</table>
+
+<p>As classes e interfaces na tabela acima são os componentes essenciais
+que você usará para implementar um carregador no aplicativo. Você não precisará de todos eles
+para cada carregador criado, mas sempre precisará de uma referência a {@link
+android.app.LoaderManager} para inicializar um carregador e uma implementação
+de uma classe {@link android.content.Loader}, como {@link
+android.content.CursorLoader}. As seguintes seções mostram como usar
+essas classes e interfaces em um aplicativo.</p>
+
+<h2 id ="app">Uso de carregadores em um aplicativo</h2>
+<p>Esta seção descreve como usar os carregadores em um aplicativo do Android. Um aplicativo
+que usa os carregadores, geralmente, inclui o seguinte:</p>
+<ul>
+  <li>Uma {@link android.app.Activity} ou um {@link android.app.Fragment}.</li>
+  <li>Uma instância de {@link android.app.LoaderManager}.</li>
+  <li>Um {@link android.content.CursorLoader} para carregar dados baseados em um {@link
+android.content.ContentProvider}. Alternativamente, é possível implementar a própria subclasse
+de {@link android.content.Loader} ou {@link android.content.AsyncTaskLoader}
+para carregar dados de outra origem.</li>
+  <li>Uma implementação de {@link android.app.LoaderManager.LoaderCallbacks}.
+É aqui que é possível criar novos carregadores e gerenciar as referências
+a carregadores existentes.</li> 
+<li>Uma maneira de exibir os dados do carregador, como um {@link
+android.widget.SimpleCursorAdapter}.</li>
+  <li>Uma origem de dados, como um {@link android.content.ContentProvider}, ao usar
+{@link android.content.CursorLoader}.</li>
+</ul>
+<h3 id="starting">Início de um carregador</h3>
+
+<p>O {@link android.app.LoaderManager} gerencia uma ou mais instâncias de {@link
+android.content.Loader} dentro de uma {@link android.app.Activity}
+ou um {@link android.app.Fragment}. Há apenas um {@link
+android.app.LoaderManager} por atividade ou fragmento.</p> 
+
+<p>Geralmente,
+inicializa-se um {@link android.content.Loader} dentro do método {@link
+android.app.Activity#onCreate onCreate()} da atividade, ou dentro do método
+{@link android.app.Fragment#onActivityCreated onActivityCreated()} do fragmento. Faça
+isso da seguinte maneira:</p>
+
+<pre>// Prepare the loader.  Either re-connect with an existing one,
+// or start a new one.
+getLoaderManager().initLoader(0, null, this);</pre>
+
+<p>O método {@link android.app.LoaderManager#initLoader initLoader()}
+recebe os seguintes parâmetros:</p>
+<ul>
+  <li>Um ID único que identifica o carregador. Neste exemplo, o ID é 0.</li>
+<li>Argumentos opcionais para fornecer ao carregador
+em construção (<code>null</code> neste exemplo).</li> 
+
+<li>Uma implementação de {@link android.app.LoaderManager.LoaderCallbacks},
+que {@link android.app.LoaderManager} chama para relatar eventos do carregador. Nesse exemplo,
+ a classe local implementa a interface de {@link
+android.app.LoaderManager.LoaderCallbacks}, para que ela passe uma referência
+para si, {@code this}.</li> 
+</ul>
+<p>A chamada de {@link android.app.LoaderManager#initLoader initLoader()} garante que o carregador
+foi inicializado e que está ativo. Ela possui dois possíveis resultados:</p>
+<ul>
+  <li>Se o carregador especificado pelo ID já existir, o último carregador
+criado será usado novamente.</li>
+  <li>Se o carregador especificado pelo ID <em>não</em> existir,
+{@link android.app.LoaderManager#initLoader initLoader()} ativará o método
+{@link android.app.LoaderManager.LoaderCallbacks} {@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}.
+É aqui que você implementa o código para instanciar e retornar um novo carregador.
+Para obter mais informações, consulte a seção <a href="#onCreateLoader">onCreateLoader</a>.</li>
+</ul>
+<p>Em qualquer um dos casos, a implementação de {@link android.app.LoaderManager.LoaderCallbacks}
+fornecida é associada ao carregador e será chamada quando o estado
+do carregador mudar.  Se, no momento desta chamada, o autor dela
+estiver no estado inicializado e o carregador solicitado já existir e tiver
+gerado seus dados, o sistema chamará {@link
+android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+imediatamente (durante{@link android.app.LoaderManager#initLoader initLoader()}),
+então prepare-se para tais situações. Consulte <a href="#onLoadFinished">
+onLoadFinished</a> para obter mais informações sobre este retorno de chamada</p>
+
+<p>Observe que o método {@link android.app.LoaderManager#initLoader initLoader()}
+retorna o {@link android.content.Loader} que é criado, mas você não precisará
+capturar uma referência para ele. O {@link android.app.LoaderManager} gerencia
+a vida do carregador automaticamente. O {@link android.app.LoaderManager}
+inicia e interrompe o carregamento quando necessário, além de manter o estado do carregador
+e do conteúdo associado. À medida que isso ocorre, você raramente interage com os carregadores
+diretamente (para ver um exemplo de métodos para aprimorar o comportamento
+de um carregador, consulte o exemplo de <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a>). 
+Geralmente, usam-se os métodos {@link
+android.app.LoaderManager.LoaderCallbacks} para intervir no processo de carregamento
+quando determinados eventos ocorrem. Para obter mais informações sobre este assunto, consulte <a href="#callback">Uso dos retornos de chamada de LoaderManager</a>.</p>
+
+<h3 id="restarting">Reinício de um carregador</h3>
+
+<p>Ao usar {@link android.app.LoaderManager#initLoader initLoader()},
+como mostrado acima, ele usará um carregador existente com o ID especificado, se houver um.
+Caso contrário, um carregador será criado. No entanto, às vezes, você quer descartar os dados antigos
+e começar do início.</p>
+
+<p>Para descartar os dados antigos, use {@link
+android.app.LoaderManager#restartLoader restartLoader()}. Por exemplo,
+esta implementação de {@link android.widget.SearchView.OnQueryTextListener} reinicia
+o carregador quando a consulta do usuário é alterada. O carregador precisa ser reiniciado
+para que possa usar o filtro de busca revisado para realizar uma nova consulta:</p>
+
+<pre>
+public boolean onQueryTextChanged(String newText) {
+    // Called when the action bar search text has changed.  Update
+    // the search filter, and restart the loader to do a new query
+    // with this filter.
+    mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+    getLoaderManager().restartLoader(0, null, this);
+    return true;
+}</pre>
+
+<h3 id="callback">Uso dos retornos de chamada de LoaderManager</h3>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} é uma interface de retorno de chamada
+que permite que um cliente interaja com o {@link android.app.LoaderManager}. </p>
+<p>Carregadores, em determinado {@link android.content.CursorLoader}, devem
+reter os dados após serem interrompidos. Isto permite que os aplicativos
+mantenham os dados dos métodos {@link android.app.Activity#onStop
+onStop()} e {@link android.app.Activity#onStart onStart()} do fragmento ou da atividade
+para que, quando os usuários voltarem a um aplicativo, não tenham que esperar
+o recarregamento dos dados. Você usa os métodos {@link android.app.LoaderManager.LoaderCallbacks}
+para saber quando deve criar um novo carregador, e para dizer ao aplicativo quando
+ deve interromper o uso dos dados de um carregador.</p>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} inclui
+esses métodos:</p>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}  —
+instancia e retorna um novo {@link android.content.Loader} para o ID fornecido.
+</li></ul>
+<ul>
+  <li> {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+— chamado quando um carregador anteriormente criado termina o seu carregamento.
+</li></ul>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onLoaderReset onLoaderReset()}  
+    — chamado quando um carregador anteriormente criado é reiniciado,
+tornando os dados indisponíveis.
+</li>
+</ul>
+<p>Esses métodos são descritos com mais informações nas seguintes seções.</p>
+
+<h4 id ="onCreateLoader">onCreateLoader</h4>
+
+<p>Ao tentar acessar um carregador (por exemplo, por meio de {@link
+android.app.LoaderManager#initLoader initLoader()}), ele verifica
+se o carregador especificado pelo ID existe. Se não existir, ele ativa o método {@link
+android.app.LoaderManager.LoaderCallbacks} {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}. É aqui
+que você pode criar um novo carregador. Geralmente, será um {@link
+android.content.CursorLoader}, mas é possível implementar a própria subclasse de {@link
+android.content.Loader}. </p>
+
+<p>Nesse exemplo, o método de retorno de chamada de {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+cria um {@link android.content.CursorLoader}. Você deve compilar
+{@link android.content.CursorLoader} usando o método construtor,
+que exige um conjunto completo de informações necessárias para realizar uma consulta ao {@link
+android.content.ContentProvider}. Especificamente, ele precisa de:</p>
+<ul>
+  <li><em>uri</em> — a URI do conteúdo a ser recuperado. </li>
+  <li><em>projection</em> — uma lista de quais colunas devem ser retornadas. Passar
+<code>null</code> retornará todas as colunas, o que é ineficiente. </li>
+  <li><em>selection</em> — um filtro que declara quais linhas devem retornar,
+formatado por uma cláusula SQL WHERE (excluindo WHERE). Passar
+<code>null</code> retornará todas as linhas da URI em questão. </li>
+  <li><em>selectionArgs</em> — é possível incluir interrogações na seleção,
+que serão substituídas pelos valores de <em>selectionArgs</em>, na ordem em que aparecem
+na seleção. Os valores serão vinculados como Strings. </li>
+  <li><em>sortOrder</em> — como ordenar as linhas, formatadas em uma cláusula SQL
+ORDER BY (excluindo ORDER BY). Passar <code>null</code>
+usará a ordem de classificação padrão, que pode ser desordenada.</li>
+</ul>
+<p>Por exemplo:</p>
+<pre>
+ // If non-null, this is the current filter the user has provided.
+String mCurFilter;
+...
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+    // This is called when a new Loader needs to be created.  This
+    // sample only has one Loader, so we don't care about the ID.
+    // First, pick the base URI to use depending on whether we are
+    // currently filtering.
+    Uri baseUri;
+    if (mCurFilter != null) {
+        baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                  Uri.encode(mCurFilter));
+    } else {
+        baseUri = Contacts.CONTENT_URI;
+    }
+
+    // Now create and return a CursorLoader that will take care of
+    // creating a Cursor for the data being displayed.
+    String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+            + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+            + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+    return new CursorLoader(getActivity(), baseUri,
+            CONTACTS_SUMMARY_PROJECTION, select, null,
+            Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+}</pre>
+<h4 id="onLoadFinished">onLoadFinished</h4>
+
+<p>Este método é chamado quando um carregador anteriormente criado terminar o seu carregamento.
+Este método certamente será chamado antes da liberação dos últimos dados
+que forem fornecidos por este carregador.  Neste ponto, você deve remover todo o uso
+dos dados antigos (já que serão liberados em breve), mas não deve fazer
+a liberação dos dados, já que pertencem ao carregador e ele lidará com isso.</p>
+
+
+<p>O carregador liberará os dados quando souber
+que o aplicativo não está mais usando-os.  Por exemplo, se os dados forem um cursor de um {@link
+android.content.CursorLoader}, você não deve chamar {@link
+android.database.Cursor#close close()} por conta própria. Se o cursor estiver
+sendo colocado em um {@link android.widget.CursorAdapter}, você deve usar o método {@link
+android.widget.SimpleCursorAdapter#swapCursor swapCursor()}  para que o antigo
+{@link android.database.Cursor} não seja fechado. Por exemplo:</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.<br
+/>SimpleCursorAdapter mAdapter;
+...
+
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+    // Swap the new cursor in.  (The framework will take care of closing the
+    // old cursor once we return.)
+    mAdapter.swapCursor(data);
+}</pre>
+
+<h4 id="onLoaderReset">onLoaderReset</h4>
+
+<p>Este método é chamado quando um carregador anteriormente criado é reiniciado,
+tornando os dados indisponíveis. Este retorno de chamada permite que você descubra quando os dados
+estão prestes a serem liberados para que seja possível remover a referência a eles.  </p>
+<p>Esta implementação chama 
+{@link android.widget.SimpleCursorAdapter#swapCursor swapCursor()}
+com um valor de <code>null</code>:</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.
+SimpleCursorAdapter mAdapter;
+...
+
+public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+    // This is called when the last Cursor provided to onLoadFinished()
+    // above is about to be closed.  We need to make sure we are no
+    // longer using it.
+    mAdapter.swapCursor(null);
+}</pre>
+
+
+<h2 id="example">Exemplo</h2>
+
+<p>Como exemplo, a seguir há uma implementação completa de um {@link
+android.app.Fragment} que exibe uma {@link android.widget.ListView} contendo
+os resultados de uma consulta aos provedores de conteúdo de contatos. Ela usa um {@link
+android.content.CursorLoader} para gerenciar a consulta no provedor.</p>
+ 
+<p>Para um aplicativo acessar os contatos de um usuário, como neste exemplo,
+o manifesto deverá incluir a permissão
+{@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS}.</p>
+
+<pre>
+public static class CursorLoaderListFragment extends ListFragment
+        implements OnQueryTextListener, LoaderManager.LoaderCallbacks&lt;Cursor&gt; {
+
+    // This is the Adapter being used to display the list's data.
+    SimpleCursorAdapter mAdapter;
+
+    // If non-null, this is the current filter the user has provided.
+    String mCurFilter;
+
+    @Override public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+
+        // Give some text to display if there is no data.  In a real
+        // application this would come from a resource.
+        setEmptyText(&quot;No phone numbers&quot;);
+
+        // We have a menu item to show in action bar.
+        setHasOptionsMenu(true);
+
+        // Create an empty adapter we will use to display the loaded data.
+        mAdapter = new SimpleCursorAdapter(getActivity(),
+                android.R.layout.simple_list_item_2, null,
+                new String[] { Contacts.DISPLAY_NAME, Contacts.CONTACT_STATUS },
+                new int[] { android.R.id.text1, android.R.id.text2 }, 0);
+        setListAdapter(mAdapter);
+
+        // Prepare the loader.  Either re-connect with an existing one,
+        // or start a new one.
+        getLoaderManager().initLoader(0, null, this);
+    }
+
+    @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+        // Place an action bar item for searching.
+        MenuItem item = menu.add(&quot;Search&quot;);
+        item.setIcon(android.R.drawable.ic_menu_search);
+        item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+        SearchView sv = new SearchView(getActivity());
+        sv.setOnQueryTextListener(this);
+        item.setActionView(sv);
+    }
+
+    public boolean onQueryTextChange(String newText) {
+        // Called when the action bar search text has changed.  Update
+        // the search filter, and restart the loader to do a new query
+        // with this filter.
+        mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+        getLoaderManager().restartLoader(0, null, this);
+        return true;
+    }
+
+    @Override public boolean onQueryTextSubmit(String query) {
+        // Don't care about this.
+        return true;
+    }
+
+    @Override public void onListItemClick(ListView l, View v, int position, long id) {
+        // Insert desired behavior here.
+        Log.i(&quot;FragmentComplexList&quot;, &quot;Item clicked: &quot; + id);
+    }
+
+    // These are the Contacts rows that we will retrieve.
+    static final String[] CONTACTS_SUMMARY_PROJECTION = new String[] {
+        Contacts._ID,
+        Contacts.DISPLAY_NAME,
+        Contacts.CONTACT_STATUS,
+        Contacts.CONTACT_PRESENCE,
+        Contacts.PHOTO_ID,
+        Contacts.LOOKUP_KEY,
+    };
+    public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+        // This is called when a new Loader needs to be created.  This
+        // sample only has one Loader, so we don't care about the ID.
+        // First, pick the base URI to use depending on whether we are
+        // currently filtering.
+        Uri baseUri;
+        if (mCurFilter != null) {
+            baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                    Uri.encode(mCurFilter));
+        } else {
+            baseUri = Contacts.CONTENT_URI;
+        }
+
+        // Now create and return a CursorLoader that will take care of
+        // creating a Cursor for the data being displayed.
+        String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+                + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+                + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+        return new CursorLoader(getActivity(), baseUri,
+                CONTACTS_SUMMARY_PROJECTION, select, null,
+                Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+    }
+
+    public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+        // Swap the new cursor in.  (The framework will take care of closing the
+        // old cursor once we return.)
+        mAdapter.swapCursor(data);
+    }
+
+    public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+        // This is called when the last Cursor provided to onLoadFinished()
+        // above is about to be closed.  We need to make sure we are no
+        // longer using it.
+        mAdapter.swapCursor(null);
+    }
+}</pre>
+<h3 id="more_examples">Mais exemplos</h3>
+
+<p>Há alguns exemplos variados na <strong>ApiDemos</strong>
+que ilustra o uso de carregadores:</p>
+<ul>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a> — uma versão completa do
+fragmento exibido acima.</li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a> — um exemplo de como usar o regulador
+para reduzir o número de consultas que o provedor de conteúdo realiza quando os dados são alterados.</li>
+</ul>
+
+<p>Para obter mais informações sobre o download e a instalação de exemplos de SDK, consulte <a href="http://developer.android.com/resources/samples/get.html">Obtenção
+dos exemplos</a>. </p>
+
diff --git a/docs/html-intl/intl/pt-br/guide/components/processes-and-threads.jd b/docs/html-intl/intl/pt-br/guide/components/processes-and-threads.jd
new file mode 100644
index 0000000..c8e636d
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/processes-and-threads.jd
@@ -0,0 +1,411 @@
+page.title=Processos e encadeamentos
+page.tags=lifecycle,background
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Neste documento</h2>
+<ol>
+<li><a href="#Processes">Processos</a>
+  <ol>
+    <li><a href="#Lifecycle">Ciclo de vida dos processos</a></li>
+  </ol>
+</li>
+<li><a href="#Threads">Encadeamentos</a>
+  <ol>
+    <li><a href="#WorkerThreads">Encadeamentos de trabalho</a></li>
+    <li><a href="#ThreadSafe">Métodos seguros de encadeamento</a></li>
+  </ol>
+</li>
+<li><a href="#IPC">Comunicação entre processos</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>Quando um componente de aplicativo inicia e o aplicativo não tem nenhum outro componente em execução,
+o sistema Android inicia um novo processo no Linux para o aplicativo com um único encadeamento
+de execução. Por padrão, todos os componentes do mesmo aplicativo são executados no mesmo processo
+e encadeamento (chamado de encadeamento "principal"). Se um componente de aplicativo iniciar e já existir um processo
+para este aplicativo (pois outro componente do aplicativo já existe), ele será iniciado
+dentro deste processo e usará o mesmo encadeamento de execução. No entanto, é possível organizar para que vários componentes
+no aplicativo sejam executados em processos separados e criar encadeamentos
+adicionais para qualquer processo.</p>
+
+<p>Este documento discute como os processos e os encadeamentos funcionam em um aplicativo do Android.</p>
+
+
+<h2 id="Processes">Processos</h2>
+
+<p>Por padrão, todos os componentes do mesmo aplicativo são executados no mesmo processo
+e a maioria dos aplicativos não deve alterar isso. No entanto, se achar que precisa de controle sobre o processo a que um certo
+componente pertence, é possível fazer isto no arquivo de manifesto.</p>
+
+<p>A entrada do manifesto para cada tipo de elemento de componente &mdash; <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>, <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code
+&lt;service&gt;}</a>, <a href="{@docRoot}guide/topics/manifest/receiver-element.html">{@code
+&lt;receiver&gt;}</a> e <a href="{@docRoot}guide/topics/manifest/provider-element.html">{@code
+&lt;provider&gt;}</a> &mdash; é compatível com um atributo {@code android:process} que pode especificar
+um processo em que este componente deverá ser executado. É possível definir este atributo para que cada componente
+seja executado em seu próprio processo ou para que alguns componentes compartilhem um processo, enquanto que outros não.  Também é possível definir
+{@code android:process} para que os componentes de aplicativos diferentes sejam executados no mesmo
+processo &mdash; fornecido para que os aplicativos compartilhem o mesmo ID de usuário do Linux e sejam assinados
+com os mesmos certificados.</p>
+
+<p>O elemento <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code
+&lt;application&gt;}</a> também suporta um atributo {@code android:process}
+para definir um valor padrão que se aplique a todos os elementos.</p>
+
+<p>O Android pode decidir desativar um processo em certo ponto, quando a memória estiver baixa e for necessária
+para outros processos que atendem o usuário de forma mais imediata. Os componentes
+de aplicativo em execução no processo que é eliminado são consequentemente eliminados.  Um processo é iniciado
+novamente para aqueles componentes quando houver trabalho para eles.</p>
+
+<p>Ao decidir que processo eliminar, o sistema Android avalia a importância relativa dele
+para o usuário.  Por exemplo, ele fechará mais prontamente um processo que hospede atividades que não estejam mais
+visíveis na tela, comparado a um processo que hospede atividades visíveis. A decisão
+é exterminar processo ou não, portanto, depende do estado dos componentes em execução neste processo. As regras
+usadas para decidir quais processos serão exterminados são discutidas abaixo. </p>
+
+
+<h3 id="Lifecycle">Ciclo de vida dos processos</h3>
+
+<p>O sistema Android tenta manter um processo do aplicativo pelo maior período possível,
+mas eventualmente precisa remover processos antigos para recuperar memória para processos novos e mais importantes.  Para determinar
+quais processos manter
+e quais exterminar, o sistema posiciona cada um em uma "hierarquia de importância" com base
+nos componentes em execução e no estado deles.  Processos com menos importância
+serão eliminados primeiro e, em seguida, aqueles com a menor importância depois deles também serão, consecutivamente, até que os recursos
+do sistema sejam recuperados.</p>
+
+<p>Há cinco níveis na hierarquia de importância. A lista a seguir mostra os tipos
+de processo em ordem de importância (o primeiro processo é o <em>mais importante</em>
+e o <em>eliminado por último</em>):</p>
+
+<ol>
+  <li><b>Processos em primeiro plano</b>
+    <p>Um processo necessário para o que o usuário está fazendo.  Considera-se
+      um processo como em primeiro plano se qualquer uma das condições for verdadeira:</p>
+
+      <ul>
+        <li>Se ele hospedar uma {@link android.app.Activity} com a qual o usuário esteja interagindo (se o método {@link android.app.Activity#onResume onResume()} de {@link
+android.app.Activity}
+for chamado).</li>
+
+        <li>Se ele hospedar um {@link android.app.Service} vinculado à atividade com a qual o usuário
+esteja interagindo.</li>
+
+        <li>Se ele hospedar um {@link android.app.Service} em execução "em primeiro plano"&mdash; se o serviço
+tiver chamado {@link android.app.Service#startForeground startForeground()}.
+
+        <li>Se ele hospedar um {@link android.app.Service} que esteja executando um de seus retornos de chamada
+do ciclo de vida ({@link android.app.Service#onCreate onCreate()}, {@link android.app.Service#onStart
+onStart()}, ou {@link android.app.Service#onDestroy onDestroy()}).</li>
+
+        <li>Se ele hospedar um {@link android.content.BroadcastReceiver} que esteja executando seu método {@link
+        android.content.BroadcastReceiver#onReceive onReceive()}.</li>
+    </ul>
+
+    <p>Geralmente, somente poucos processos em primeiro plano existem em um determinado momento.  Eles serão eliminados
+somente como último recurso &mdash; se a memória estiver baixa demais para suportar a execução de todos.  Geralmente, neste ponto,
+o dispositivo atingiu o estado de paginação de memória. Portanto, eliminar alguns processos em primeiro plano
+é necessário para que a interface permaneça responsiva.</p></li>
+
+  <li><b>Processos visíveis</b>
+    <p>Um processo que não tenha nenhum componente em primeiro plano,
+      mas que ainda possa afetar o que o usuário vê na tela. Um processo é considerado visível
+      se uma das condições a seguir for verdadeira:</p>
+
+      <ul>
+        <li>Se ele hospedar um {@link android.app.Activity} que não esteja em primeiro plano,
+mas ainda seja visível para o usuário (o seu método {@link android.app.Activity#onPause onPause()} tiver sido chamado). 
+Isto poderá ocorrer, por exemplo, se a atividade em primeiro plano iniciar um diálogo, o que permitirá
+que a atividade anterior seja vista por trás dela.</li>
+
+        <li>Se ele hospedar um {@link android.app.Service} que esteja vinculado a uma atividade visível
+(ou em primeiro plano).</li>
+      </ul>
+
+      <p>Um processo visível é considerado extremamente importante e não será eliminado a não ser
+que seja necessário para manter em execução os processos em primeiro plano. </p>
+    </li>
+
+  <li><b>Processos de serviço</b>
+    <p>Um processo que esteja executando um serviço que tenha sido iniciado com o método {@link
+android.content.Context#startService startService()} e não
+esteja em uma das duas categorias mais altas. Apesar de processos de serviço não estarem diretamente ligados a tudo o que os usuários veem,
+eles estão geralmente fazendo coisas com que o usuário se importa (como reproduzindo música em segundo plano
+ou baixando dados na rede), então o sistema os mantém em execução a não ser que haja memória suficiente
+para retê-los juntamente com todos os processos visíveis e em primeiro plano. </p>
+  </li>
+
+  <li><b>Processos em segundo plano</b>
+    <p>Um processo que mantenha uma atividade que não esteja atualmente visível para o usuário (se o método
+{@link android.app.Activity#onStop onStop()} da atividade tiver sido chamado). Esses processos não têm impacto direto
+na experiência do usuário e o sistema poderá eliminá-los a qualquer momento para recuperar memória para processos
+em primeiro plano,
+visíveis ou de serviço. Geralmente há vários processos em segundo plano em execução e eles são mantidos
+em uma lista LRU (least recently used - menos usados recentemente) para garantir que o processo com a atividade
+que foi mais vista recentemente pelo usuário seja a última a ser eliminada. Se uma atividade implementar o seu método de ciclo de vida
+corretamente e salvar o estado atual, eliminar o seu processo não terá efeito visível
+na experiência do usuário, pois quando ele navegar de volta à atividade, ela restaurará
+todo o estado visível. Consulte o documento <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Atividades</a>
+para obter informações sobre os estados de restauração e de gravação.</p>
+  </li>
+
+  <li><b>Processos vazios</b>
+    <p>Um processo que não possui nenhum componente de aplicativo ativo.  O único motivo para manter este tipo de processo
+ativo é para armazenamento em cache, para aprimorar o tempo de inicialização
+na próxima vez em que um componente precisar executá-lo.  O sistema frequentemente elimina esses processos para equilibrar os recursos do sistema em geral
+entre os armazenamentos em cache do processo e os de núcleo subjacente.</p>
+  </li>
+</ol>
+
+
+  <p>O Android coloca o processo no maior nível possível, com base na importância dos componentes
+atualmente ativos no processo.  Por exemplo, se um processo hospedar um serviço e uma atividade visível
+, ele terá a classificação de um processo visível, e não a de um processo de serviço.</p>
+
+  <p>Além disso, a classificação de um processo pode ser elevada porque outros processos
+dependem dele &mdash; um processo que está servindo a outro processo nunca pode ter classificação menor
+do que a do processo que está sendo servido. Por exemplo, se um provedor de conteúdo no processo A estiver servindo um cliente no processo B,
+ou se um serviço no processo A estiver vinculado a um componente no processo B, o processo A será sempre considerado
+menos importante do que o processo B.</p>
+
+  <p>Como um processo que executa um serviço tem classificação maior do que um processo com atividades em segundo plano,
+uma atividade que iniciar uma operação de longo prazo poderá também iniciar um <a href="{@docRoot}guide/components/services.html">serviço</a> para esta operação, em vez de simplesmente
+criar um encadeamento de trabalho &mdash; especificamente se a operação exceder a atividade.
+Por exemplo, uma atividade que esteja fazendo upload de uma imagem para um site deverá iniciar um serviço
+para fazer o upload para que ele possa continuar em segundo plano mesmo se o usuário deixar a atividade.
+Usar um serviço garante que a operação tenha pelo menos a prioridade "processo de serviço",
+independente do que acontecer à atividade. Este é o mesmo motivo pelo qual os receptores de transmissão devem
+empregar serviços em vez de simplesmente usar operações que consomem tempo em um encadeamento.</p>
+
+
+
+
+<h2 id="Threads">Encadeamentos</h2>
+
+<p>Quando um aplicativo é executado, o sistema cria um encadeamento de execução para ele,
+chamado de "principal". Este encadeamento é muito importante, pois está encarregado de despachar eventos
+para os widgets adequados da interface do usuário, incluindo eventos de desenho. É também o encadeamento
+em que o aplicativo interage com componentes do kit de ferramentas da IU do Android (componentes dos pacotes {@link
+android.widget} e {@link android.view}). Portanto, o encadeamento principal, às vezes,
+também chama o encadeamento da IU.</p>
+
+<p>O sistema <em>não</em> cria um encadeamento separado para cada instância de um componente. Todos os componentes
+executados no mesmo processo são instanciados no encadeamento da IU, e as chamadas do sistema
+para cada componente são despachadas deste encadeamento. Consequentemente, métodos que respondam aos retornos de chamada
+(como {@link android.view.View#onKeyDown onKeyDown()} para informar ações de usuário
+ou um método de retorno de chamada do ciclo de vida) sempre serão executados no encadeamento da IU do processo.</p>
+
+<p>Por exemplo, quando o usuário toca em um botão na tela, o encadeamento da IU do aplicativo despacha
+o evento de toque para o widget que, em troca, ativa o seu estado pressionado e publica uma solicitação de invalidação
+à fila do evento. O encadeamento da IU retira a solicitação da fila e notifica o widget de que ele deve
+desenhar novamente por conta própria.</p>
+
+<p>Quando o aplicativo realiza trabalho intenso em resposta à interação do usuário, este modelo de único encadeamento
+pode produzir desempenho inferior a não ser que você implemente o aplicativo adequadamente. Especificamente, se tudo estiver
+acontecendo no encadeamento da IU, realizar operações longas, como acesso à rede
+ou consultas a banco de dados, bloqueará toda a IU. Quando o encadeamento é bloqueado, nenhum evento pode ser despachado,
+incluindo eventos de desenho. Da perspectiva do usuário,
+o aplicativo parece travar. Pior ainda, se o encadeamento da IU for bloqueado por mais do que alguns segundos
+(cerca de 5 segundos atualmente), o usuário receberá a vergonhosa mensagem "<a href="http://developer.android.com/guide/practices/responsiveness.html">aplicativo
+não respondendo</a>" (ANR). O usuário poderá, então, decidir fechar o aplicativo e desinstalá-lo
+se estiver descontente.</p>
+
+<p>Além disso, o kit de ferramentas de IU do Android <em>não</em> é seguro para encadeamentos. Portanto, você não deve manipular a IU
+a partir de um encadeamento de trabalho &mdash; deve-se realizar toda a manipulação para a interface do usuário
+a partir do encadeamento da IU. Com isso dito, há duas regras simples para o modelo de encadeamento único do Android:</p>
+
+<ol>
+<li>Não bloquear o encadeamento da IU
+<li>Não acessar o kit de ferramentas de IU do Android fora do encadeamento da IU
+</ol>
+
+<h3 id="WorkerThreads">Encadeamentos de trabalho</h3>
+
+<p>Por causa do modelo de encadeamento único descrito acima, é essencial para a capacidade de resposta da IU do aplicativo
+que você não bloqueie o encadeamento da IU. Caso tenha operações a realizar
+que não sejam instantâneas, deverá certificar-se de fazê-las em encadeamentos separados (encadeamentos de "segundo plano"
+ou "de trabalho").</p>
+
+<p>Por exemplo, abaixo apresenta-se o código de uma escuta de clique que baixa uma imagem de um encadeamento separado
+e exibe-a em uma {@link android.widget.ImageView}:</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            Bitmap b = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.setImageBitmap(b);
+        }
+    }).start();
+}
+</pre>
+
+<p>À primeira vista, parece não apresentar problemas, pois ele cria um novo encadeamento para lidar
+com a operação de rede. No entanto, ele viola a segunda regra do modelo de encadeamento único: <em>não acessar o kit de ferramentas de IU do Android
+de fora do encadeamento da IU</em> &mdash; este exemplo modifica o {@link
+android.widget.ImageView} a partir do encadeamento de trabalho em vez de o encadeamento da IU. Isto pode resultar em comportamentos
+inesperados e indefinidos, que podem ser difíceis de rastrear e consumir bastante tempo.</p>
+
+<p>Para resolver este problema, o Android oferece várias maneiras de acessar o encadeamento da IU a partir
+de outros encadeamentos. Abaixo há uma lista dos métodos que podem ajudar:</p>
+
+<ul>
+<li>{@link android.app.Activity#runOnUiThread(java.lang.Runnable)
+Activity.runOnUiThread(Runnable)}</li>
+<li>{@link android.view.View#post(java.lang.Runnable) View.post(Runnable)}</li>
+<li>{@link android.view.View#postDelayed(java.lang.Runnable, long) View.postDelayed(Runnable,
+long)}</li>
+</ul>
+
+<p>Por exemplo, é possível resolver o código acima usando o método {@link
+android.view.View#post(java.lang.Runnable) View.post(Runnable)}:</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            final Bitmap bitmap = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.post(new Runnable() {
+                public void run() {
+                    mImageView.setImageBitmap(bitmap);
+                }
+            });
+        }
+    }).start();
+}
+</pre>
+
+<p>Agora esta implementação é segura para encadeamentos: a operação de rede é concluída a partir de um encadeamento separado
+enquanto que a {@link android.widget.ImageView} é manipulada a partir do encadeamento da IU.</p>
+
+<p>No entanto, à medida que a complexidade da operação aumenta, este tipo de código pode tornar-se complexo
+e difícil demais para ser mantido. Para lidar com interações mais complexas com um encadeamento de trabalho, considere
+usar um {@link android.os.Handler} nele para processar as mensagens entregues
+pelo encadeamento da IU. Apesar de que, talvez, a melhor solução seja estender a classe {@link android.os.AsyncTask},
+que simplifica a execução das tarefas do encadeamento de trabalho que precisam interagir com a IU.</p>
+
+
+<h4 id="AsyncTask">Uso de AsyncTask</h4>
+
+<p>{@link android.os.AsyncTask} permite que você trabalhe de forma assíncrona
+na interface do usuário. Ela realiza operações de bloqueio em um encadeamento de trabalho e, em seguida, publica os resultados
+no encadeamento da IU, sem que você precise lidar com os encadeamentos e/ou os manipuladores.</p>
+
+<p>Para usá-la, você deve atribuir a subclasse {@link android.os.AsyncTask} e implementar o método de retorno de chamada {@link
+android.os.AsyncTask#doInBackground doInBackground()}, que executa uma série
+de encadeamentos de segundo plano. Para atualizar a IU, deve-se implementar {@link
+android.os.AsyncTask#onPostExecute onPostExecute()}, que entrega o resultado de {@link
+android.os.AsyncTask#doInBackground doInBackground()} e é executado no encadeamento da IU para que seja possível
+atualizar a IU de forma segura. É possível, em seguida, executar a tarefa chamando {@link android.os.AsyncTask#execute execute()}
+a partir do encadeamento da IU.</p>
+
+<p>Por exemplo, é possível implementar o exemplo anterior usando {@link android.os.AsyncTask}
+da seguinte forma:</p>
+
+<pre>
+public void onClick(View v) {
+    new DownloadImageTask().execute("http://example.com/image.png");
+}
+
+private class DownloadImageTask extends AsyncTask&lt;String, Void, Bitmap&gt; {
+    /** The system calls this to perform work in a worker thread and
+      * delivers it the parameters given to AsyncTask.execute() */
+    protected Bitmap doInBackground(String... urls) {
+        return loadImageFromNetwork(urls[0]);
+    }
+    
+    /** The system calls this to perform work in the UI thread and delivers
+      * the result from doInBackground() */
+    protected void onPostExecute(Bitmap result) {
+        mImageView.setImageBitmap(result);
+    }
+}
+</pre>
+
+<p>Agora a IU está segura e o código está mais simples, pois ele separa o trabalho
+em uma parte que deve ser feita em um encadeamento de trabalho e outra parte que deve ser feita no encadeamento da IU.</p>
+
+<p>Leia a referência {@link android.os.AsyncTask} para compreender melhor
+o uso desta classe, mas a seguir há uma visão geral rápida sobre como ela funciona:</p>
+
+<ul>
+<li>É possível especificar o tipo dos parâmetros, valores de progresso e valor final
+da tarefa, usando genéricos</li>
+<li>O método {@link android.os.AsyncTask#doInBackground doInBackground()} é executado automaticamente
+em um encadeamento de trabalho</li>
+<li>{@link android.os.AsyncTask#onPreExecute onPreExecute()}, {@link
+android.os.AsyncTask#onPostExecute onPostExecute()} e {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} são invocados no encadeamento da IU</li>
+<li>O valor retornado por {@link android.os.AsyncTask#doInBackground doInBackground()}
+é enviado para {@link android.os.AsyncTask#onPostExecute onPostExecute()}</li>
+<li>É possível chamar {@link android.os.AsyncTask#publishProgress publishProgress()} a qualquer momento em {@link
+android.os.AsyncTask#doInBackground doInBackground()} para executar {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} no encadeamento da IU</li>
+<li>É possível cancelar a tarefa a qualquer momento, a partir de qualquer encadeamento</li>
+</ul>
+
+<p class="caution"><strong>Atenção:</strong> outro problema que pode ocorrer ao usar
+um encadeamento de trabalho são reinicializações inesperadas da atividade devido a <a href="{@docRoot}guide/topics/resources/runtime-changes.html">alterações na configuração em tempo de execução</a>
+(como quando o usuário altera a orientação da tela), que podem eliminar o encadeamento de trabalho. Para ver como é possível
+manter uma tarefa durante uma dessas reinicializações e como cancelar adequadamente a tarefa
+quando a atividade for eliminada, consulte o código fonte do aplicativo <a href="http://code.google.com/p/shelves/">Prateleiras</a> de exemplo.</p>
+
+
+<h3 id="ThreadSafe">Métodos seguros de encadeamento</h3>
+
+<p> Em algumas situações, os métodos implementados podem ser chamados a partir de mais de um encadeamento e, portanto,
+devem ser programados para serem seguros para encadeamento. </p>
+
+<p>Isto é especialmente verdadeiro para métodos que podem ser cancelados remotamente &mdash; como métodos em um <a href="{@docRoot}guide/components/bound-services.html">serviço vinculado</a>. Quando uma chamada
+de um método implementado em um {@link android.os.IBinder} tiver origem no mesmo processo
+em que {@link android.os.IBinder IBinder} estiver em execução, o método será executado no encadeamento do autor da chamada.
+No entanto, quando a chamada tiver origem em outro processo, o método será executado em um encadeamento
+escolhido a partir de uma série de encadeamentos que o sistema mantém no mesmo processo que {@link android.os.IBinder
+IBinder} (ele não será executado no encadeamento da IU do processo).  Por exemplo, enquanto o método
+{@link android.app.Service#onBind onBind()} de um serviço seria chamado a partir de um encadeamento da IU do processo
+de um serviço, os métodos implementados no objeto que {@link android.app.Service#onBind
+onBind()} retorna (por exemplo, uma subclasse que implementa métodos de RPC) seriam chamados
+a partir dos encadeamentos no conjunto. Como um serviço pode ter mais de um cliente, mais de um encadeamento no conjunto
+pode envolver o mesmo método {@link android.os.IBinder IBinder} ao mesmo tempo. Os métodos {@link android.os.IBinder
+IBinder} devem, portanto, ser implementados para serem seguros para encadeamentos.</p>
+
+<p> De forma semelhante, um provedor de conteúdo pode receber solicitações de dados que tenham origem em outros processos.
+Apesar de as classes {@link android.content.ContentResolver} e {@link android.content.ContentProvider}
+ocultarem os detalhes de como a comunicação entre processos é gerenciada, os métodos {@link
+android.content.ContentProvider} que respondem a essas solicitações &mdash; os métodos {@link
+android.content.ContentProvider#query query()}, {@link android.content.ContentProvider#insert
+insert()}, {@link android.content.ContentProvider#delete delete()}, {@link
+android.content.ContentProvider#update update()} e {@link android.content.ContentProvider#getType
+getType()} &mdash; serão chamados de um conjunto de encadeamentos no processo do provedor de conteúdo, não no encadeamento da IU
+para o processo.  Como esses métodos podem ser chamados a partir de qualquer quantidade de encadeamentos
+ao mesmo tempo, eles também devem ser implementados para serem seguros para encadeamento. </p>
+
+
+<h2 id="IPC">Comunicação entre processos</h2>
+
+<p>O Android oferece um mecanismo para comunicação entre processos (IPC) usando chamadas de procedimento remoto (RPCs),
+onde um método é chamado por uma atividade ou outro componente de aplicativo, mas é executado
+remotamente (em outro processo), com qualquer resultado retornado
+de volta ao autor da chamada. Isto acarreta na decomposição de uma chamada de método e de seus dados para um nível em que o sistema operacional
+possa entender, transmitindo-a do processo local e do espaço de endereço ao processo remoto
+e ao espaço de endereço e, em seguida, remontando e restabelecendo a chamada lá.  Os valores de retorno
+são transmitidos na direção oposta.  O Android fornece todo o código para realizar essas operações
+de IPC para que você possa concentrar-se em definir e implementar a interface de programação de RPC. </p>
+
+<p>Para realizar o IPC, o aplicativo deve vincular-se a um serviço usando {@link
+android.content.Context#bindService bindService()}. Para obter mais informações, consulte o guia do desenvolvedor <a href="{@docRoot}guide/components/services.html">Serviços</a>.</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For information about how to perform work in the background for an indefinite period of time
+(without a user interface), continue with the <b><a
+href="{@docRoot}guide/components/services.html">Services</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/pt-br/guide/components/recents.jd b/docs/html-intl/intl/pt-br/guide/components/recents.jd
new file mode 100644
index 0000000..467f620
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/recents.jd
@@ -0,0 +1,256 @@
+page.title=Tela de visão geral
+page.tags="recents","overview"
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>Neste documento</h2>
+  <ol>
+    <li><a href="#adding">Adição de tarefas à tela de visão geral</a>
+      <ol>
+        <li><a href="#flag-new-doc">Uso do sinalizador Intent para adicionar uma tarefa</a></li>
+        <li><a href="#attr-doclaunch">Uso do atributo Activity para adicionar uma tarefa</a></li>
+      </ol>
+    </li>
+    <li><a href="#removing">Remoção de tarefas</a>
+      <ol>
+        <li><a href="#apptask-remove">Uso da classe AppTask para remover tarefas</a></li>
+        <li><a href="#retain-finished">Retenção de tarefas terminadas</a></li>
+      </ol>
+    </li>
+  </ol>
+
+  <h2>Classes principais</h2>
+  <ol>
+    <li>{@link android.app.ActivityManager.AppTask}</li>
+    <li>{@link android.content.Intent}</li>
+  </ol>
+
+  <h2>Exemplo de código</h2>
+  <ol>
+    <li><a href="{@docRoot}samples/DocumentCentricApps/index.html">Aplicativos centralizados em documentos</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>A tela de visão geral (também chamada de tela de recentes, lista de tarefas recentes ou aplicativos recentes)
+é uma IU de nível de sistema que lista <a href="{@docRoot}guide/components/activities.html">
+atividades</a> e <a href="{@docRoot}guide/components/tasks-and-back-stack.html">tarefas</a> acessadas recentemente. O
+usuário pode navegar pela lista e selecionar uma tarefa a retomar ou remover uma tarefa da
+lista deslizando-a para fora. Com a versão 5.0 do Android (API de nível 21), várias instâncias da
+mesma atividade contendo diferentes documentos podem aparecer como tarefas na tela de visão geral. Por exemplo, o 
+Google Drive pode ter uma tarefa para cada um dos vários documentos do Google. Cada documento aparece como uma
+tarefa na tela de visão geral.</p>
+
+<img src="{@docRoot}images/components/recents.png" alt="" width="284" />
+<p class="img-caption"><strong>Figura 1.</strong> A tela de visão geral mostrando três documentos do Google Drive,
+cada um representado como uma tarefa separada.</p>
+
+<p>Normalmente, você deve permitir que o sistema defina como as tarefas e as
+atividades são representadas na tela de visão geral e não precisa modificar esse comportamento.
+No entanto, o seu aplicativo pode determinar como e quando as atividades aparecem na tela de visão geral. A
+classe {@link android.app.ActivityManager.AppTask} permite gerenciar tarefas e os sinalizadores de atividade da classe
+{@link android.content.Intent} permitem especificar quando uma atividade é adicionada ou removida da
+tela de visão geral. Além disso, os atributos <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> permitem definir o comportamento no manifesto.</p>
+
+<h2 id="adding">Adição de tarefas à tela de visão geral</h2>
+
+<p>Usar os sinalizadores da classe {@link android.content.Intent} para adicionar uma tarefa permite maior controle sobre
+quando e como um documento é aberto ou reaberto na tela de visão geral. Ao usar os atributos
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>,
+é possível escolher entre sempre abrir o documento em uma nova tarefa ou reutilizar uma
+tarefa existente para o documento.</p>
+
+<h3 id="flag-new-doc">Uso do sinalizador Intent para adicionar uma tarefa</h3>
+
+<p>Ao criar um novo documento para a atividade, você chama o método
+{@link android.app.ActivityManager.AppTask#startActivity(android.content.Context, android.content.Intent, android.os.Bundle) startActivity()}
+da classe {@link android.app.ActivityManager.AppTask}, passando a ele a intenção que
+inicia a atividade. Para inserir uma quebra lógica para que o sistema trate a atividade como uma nova
+tarefa na tela de visão geral, passe o sinalizador {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+no método {@link android.content.Intent#addFlags(int) addFlags()} da {@link android.content.Intent}
+que inicia a atividade.</p>
+
+<p class="note"><strong>Observação:</strong> o sinalizador {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+substitui o sinalizador {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET},
+obsoleto a partir do Android 5.0 (API de nível 21).</p>
+
+<p>Se você usar o sinalizador {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} ao criar
+o novo documento, o sistema sempre criará uma nova tarefa com a atividade-alvo como raiz.
+Essa configuração permite que o mesmo documento seja aberto em mais de uma tarefa. O código a seguir demonstra
+como a atividade principal faz isso:</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+public void createNewDocument(View view) {
+      final Intent newDocumentIntent = newDocumentIntent();
+      if (useMultipleTasks) {
+          newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
+      }
+      startActivity(newDocumentIntent);
+  }
+
+  private Intent newDocumentIntent() {
+      boolean useMultipleTasks = mCheckbox.isChecked();
+      final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+      newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT);
+      newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+      return newDocumentIntent;
+  }
+
+  private static int incrementAndGet() {
+      Log.d(TAG, "incrementAndGet(): " + mDocumentCounter);
+      return mDocumentCounter++;
+  }
+}
+</pre>
+
+<p class="note"><strong>Observação:</strong> Atividades iniciadas com o sinalizador {@code FLAG_ACTIVITY_NEW_DOCUMENT}
+devem ter o valor do atributo {@code android:launchMode="standard"} (o padrão) definido no
+manifesto.</p>
+
+<p>Quando a atividade principal inicia uma nova atividade, o sistema procura nas tarefas existentes uma
+cuja intenção corresponda ao nome do componente da intenção e aos dados de Intent para a atividade. Se a tarefa
+não for encontrada ou se a intenção continha o sinalizador {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK},
+uma nova tarefa será criada com a atividade como raiz. Se o sistema encontrar uma tarefa, ele a trará
+para a frente e passará a nova intenção para {@link android.app.Activity#onNewIntent onNewIntent()}.
+A nova atividade receberá a intenção e criará um novo documento na tela de visão geral, como no
+exemplo a seguir:</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+&#64;Override
+protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_new_document);
+    mDocumentCount = getIntent()
+            .getIntExtra(DocumentCentricActivity.KEY_EXTRA_NEW_DOCUMENT_COUNTER, 0);
+    mDocumentCounterTextView = (TextView) findViewById(
+            R.id.hello_new_document_text_view);
+    setDocumentCounterText(R.string.hello_new_document_counter);
+}
+
+&#64;Override
+protected void onNewIntent(Intent intent) {
+    super.onNewIntent(intent);
+    /* If FLAG_ACTIVITY_MULTIPLE_TASK has not been used, this activity
+    is reused to create a new document.
+     */
+    setDocumentCounterText(R.string.reusing_document_counter);
+}
+</pre>
+
+
+<h3 id="#attr-doclaunch">Uso do atributo Activity para adicionar uma tarefa</h3>
+
+<p>Uma atividade também pode especificar em seu manifesto que sempre iniciará uma nova tarefa usando
+o atributo <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>,
+ <a href="{@docRoot}guide/topics/manifest/activity-element.html#dlmode">
+{@code android:documentLaunchMode}</a>. Esse atributo tem quatro valores que produzem os seguintes
+efeitos quando o usuário abre um documento com o aplicativo:</p>
+
+<dl>
+  <dt>"{@code intoExisting}"</dt>
+  <dd>A atividade reutiliza uma tarefa existente para o documento. Isso é o mesmo que configurar o
+  sinalizador {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} <em>sem</em> configurar 
+  o sinalizador {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}, como descrito em 
+  <a href="#flag-new-doc">Uso do sinalizador Intent para adicionar uma tarefa</a> acima.</dd>
+
+  <dt>"{@code always}"</dt>
+  <dd>A atividade cria uma nova tarefa para o documento, mesmo se o mesmo já estiver aberto. Usar
+  esse valor é o mesmo que configurar os sinalizadores {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+  e {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}.</dd>
+
+  <dt>"{@code none”}"</dt>
+  <dd>A atividade não cria uma nova tarefa para o documento. A tela de visão geral trata a
+  atividade como aconteceria por padrão: ela exibe uma tarefa para o aplicativo, que 
+  retoma a atividade invocada por último pelo usuário.</dd>
+
+  <dt>"{@code never}"</dt>
+  <dd>A atividade não cria uma nova tarefa para o documento. Definir esse valor substitui o
+  comportamento dos sinalizadores {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+  e {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}, caso um deles esteja definido
+  na intenção, e a tela de visão geral exibe uma tarefa para o aplicativo, que retoma a
+  atividade invocada por último pelo usuário.</dd>
+</dl>
+
+<p class="note"><strong>Observação:</strong> para valores diferentes de {@code none} e {@code never}, a
+atividade deve ser definida com {@code launchMode="standard"}. Se esse atributo não for especificado,
+{@code documentLaunchMode="none"} será usado.</p>
+
+<h2 id="removing">Remoção de tarefas</h2>
+
+<p>Por padrão, uma tarefa de documento é automaticamente removida da tela de visão geral quando a atividade
+termina. Esse comportamento pode ser substituído com a classe {@link android.app.ActivityManager.AppTask},
+com um sinalizador {@link android.content.Intent} ou com um atributo <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code>.</p>
+
+<p>É possível excluir inteiramente uma tarefa da tela de visão geral definindo o
+atributo <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>,
+ <a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">
+{@code android:excludeFromRecents}</a> como {@code true}.</p>
+
+<p>É possível definir o número máximo de tarefas que o aplicativo pode incluir na tela de visão geral definindo
+o atributo <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#maxrecents">{@code android:maxRecents}
+</a> como um valor inteiro. O padrão é 16. Quando o número máximo de tarefas é atingido, a tarefa usada menos
+recentemente é removida da tela de visão geral. O valor máximo de {@code android:maxRecents}
+é 50 (25 em dispositivos com pouca memória); valores menores que 1 não são válidos.</p>
+
+<h3 id="#apptask-remove">Uso da classe AppTask para remover tarefas</h3>
+
+<p>Na atividade que cria uma nova tarefa na tela de visão geral, é possível 
+especificar quando remover a tarefa e terminar todas as atividades associadas a ela chamando
+o método {@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()}.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+public void onRemoveFromRecents(View view) {
+    // The document is no longer needed; remove its task.
+    finishAndRemoveTask();
+}
+</pre>
+
+<p class="note"><strong>Observação:</strong> o uso
+do método {@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()}
+substitui o uso do sinalizador {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS}
+discutido abaixo.</p>
+
+<h3 id="#retain-finished">Retenção de tarefas terminadas</h3>
+
+<p>Se você deseja reter uma tarefa na tela de visão geral, mesmo que a atividade tenha terminado, passe
+o sinalizador {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} no
+método {@link android.content.Intent#addFlags(int) addFlags()} da Intent que inicia a atividade.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+private Intent newDocumentIntent() {
+    final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+    newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT |
+      android.content.Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS);
+    newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+    return newDocumentIntent;
+}
+</pre>
+
+<p>Para obter o mesmo efeito, defina o
+atributo <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#autoremrecents">
+{@code android:autoRemoveFromRecents}</a> como {@code false}. O valor padrão é {@code true}
+para atividades de documentos e {@code false} para atividades comuns. Usar esse atributo substitui
+o sinalizador {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} discutido anteriormente.</p>
+
+
+
+
+
+
+
diff --git a/docs/html-intl/intl/pt-br/guide/components/services.jd b/docs/html-intl/intl/pt-br/guide/components/services.jd
new file mode 100644
index 0000000..123d90a
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/services.jd
@@ -0,0 +1,813 @@
+page.title=Serviços
+@jd:body
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>Neste documento</h2>
+<ol>
+<li><a href="#Basics">Conceitos básicos</a></li>
+<ol>
+  <li><a href="#Declaring">Declaração de serviço no manifesto</a></li>
+</ol>
+<li><a href="#CreatingAService">Criação de serviço iniciado</a>
+  <ol>
+    <li><a href="#ExtendingIntentService">Extensão da classe IntentService</a></li>
+    <li><a href="#ExtendingService">Extensão da classe Service</a></li>
+    <li><a href="#StartingAService">Início de serviço</a></li>
+    <li><a href="#Stopping">Interrupção de serviço</a></li>
+  </ol>
+</li>
+<li><a href="#CreatingBoundService">Criação de serviço vinculado</a></li>
+<li><a href="#Notifications">Envio de notificações ao usuário</a></li>
+<li><a href="#Foreground">Execução de serviço em primeiro plano</a></li>
+<li><a href="#Lifecycle">Gerenciamento do ciclo de vida de um serviço</a>
+<ol>
+  <li><a href="#LifecycleCallbacks">Implementação dos retornos de chamada do ciclo de vida</a></li>
+</ol>
+</li>
+</ol>
+
+<h2>Classes principais</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.app.IntentService}</li>
+</ol>
+
+<h2>Exemplos</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.html">{@code
+      ServiceStartArguments}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>Veja também</h2>
+<ol>
+<li><a href="{@docRoot}guide/components/bound-services.html">Serviços vinculados</a></li>
+</ol>
+
+</div>
+
+
+<p>Um {@link android.app.Service} é um componente do aplicativo que pode realizar
+operações longas e não fornece uma interface do usuário. Outro componente do aplicativo
+pode iniciar um serviço e ele continuará em execução em segundo plano mesmo que o usuário
+alterne para outro aplicativo. Além disso, um componente poderá vincular-se a um serviço
+para interagir com ele e até estabelecer comunicação entre processos (IPC). Por exemplo, um serviço pode lidar
+com operações de rede, reproduzir música, executar E/S de arquivos, ou interagir com um provedor de conteúdo,
+tudo a partir do segundo plano.</p>
+
+<p>Um serviço pode essencialmente ter duas formas:</p>
+
+<dl>
+  <dt>Iniciado</dt>
+  <dd>Um serviço é "iniciado" quando um componente do aplicativo (como um atividade)
+inicia-o chamando {@link android.content.Context#startService startService()}. Quando iniciado, um serviço
+pode ficar em execução em segundo plano indefinidamente, mesmo que o componente que o iniciou seja destruído. Geralmente,
+um serviço iniciado realiza uma única operação e não retorna um resultado para o autor da chamada.
+Por exemplo, ele pode fazer download ou upload de um arquivo pela rede. Quando a operação for concluída,
+o serviço deverá ser interrompido.</dd>
+  <dt>Vinculado</dt>
+  <dd>Um serviço é "vinculado" quando um componente do aplicativo o vincula chamando {@link
+android.content.Context#bindService bindService()}. Um serviço vinculado oferece uma interface
+servidor-cliente que permite que os componentes interajam com a interface, enviem solicitações, obtenham resultados,
+mesmo em processos com comunicação interprocessual (IPC). Um serviço vinculado permanece em execução somente enquanto
+outro componente do aplicativo estiver vinculado a ele. Vários componentes podem ser vinculados ao serviço de uma só vez,
+mas quando todos desfizerem o vínculo, o serviço será destruído.</dd>
+</dl>
+
+<p>Apesar de esta documentação discutir os dois tipos de serviços separadamente,
+um serviço pode funcionar das duas maneiras &mdash; ele pode ser iniciado (para permanecer em execução indefinidamente) e também permitir a vinculação.
+Basta você implementar alguns métodos de retorno de chamada: {@link
+android.app.Service#onStartCommand onStartCommand()} para permitir que os componentes iniciem o serviço e {@link
+android.app.Service#onBind onBind()} para permitir a vinculação.</p>
+
+<p>Se o aplicativo for iniciado, vinculado ou ambos, qualquer componente do aplicativo
+poderá usar o serviço (mesmo a partir de um aplicativo separado), da mesma forma que qualquer componente poderá usar
+uma atividade &mdash; iniciando com uma {@link android.content.Intent}. No entanto, é possível declarar
+o serviço como privado, no arquivo do manifesto, e bloquear o acesso de outros aplicativos. Isto é discutido com mais detalhes
+na seção <a href="#Declaring">Declaração do serviço
+no manifesto</a>.</p>
+
+<p class="caution"><strong>Atenção:</strong> um serviço é executado
+no encadeamento principal em seu processo de hospedagem &mdash; o serviço <strong>não</strong> cria seu próprio encadeamento
+e <strong>não</strong> é executado em um processo separado (salvo se especificado). Isso significa que,
+ se o serviço for realizar qualquer trabalho intensivo de CPU ou operações de bloqueio (como reprodução
+de MP3 ou rede), você deve criar um novo encadeamento dentro do serviço. Usando um encadeamento separado,
+você reduzirá o risco da ocorrência de erros de Aplicativo não respondendo (ANR)
+e o encadeamento principal do aplicativo poderá permanecer dedicado à interação do usuário com as atividades.</p>
+
+
+<h2 id="Basics">Conceitos básicos</h2>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Você deve usar um serviço ou um encadeamento?</h3>
+  <p>Um serviço é simplesmente um componente que pode ser executado em segundo plano mesmo quando o usuário
+não está interagindo com o aplicativo. Portanto, um serviço deve ser criado somente
+se for realmente necessário.</p>
+  <p>Caso precise realizar trabalhos fora do encadeamento principal, mas somente enquanto o usuário estiver interagindo
+com o aplicativo, então você deve criar um novo encadeamento e não um serviço. Por exemplo,
+se quiser reproduzir músicas, mas somente enquanto a atividade estiver em execução, você pode criar um encadeamento
+em {@link android.app.Activity#onCreate onCreate()}, iniciando a execução em {@link
+android.app.Activity#onStart onStart()}, e interrompendo em {@link android.app.Activity#onStop
+onStop()}. Considere também usar {@link android.os.AsyncTask} ou {@link android.os.HandlerThread},
+em vez de a classe tradicional {@link java.lang.Thread}. Consulte o documento <a href="{@docRoot}guide/components/processes-and-threads.html#Threads">Processos e
+encadeamentos</a> para obter mais informações sobre encadeamentos.</p>
+  <p>Lembre-se de que, se usar um serviço, ele ainda será executado no encadeamento principal do aplicativo por padrão,
+portanto deve-se criar um novo encadeamento dentro do serviço se ele realizar operações
+intensivas ou de bloqueio.</p>
+</div>
+</div>
+
+<p>Para criar um serviço, você deve criar uma subclasse de {@link android.app.Service}
+(ou uma das subclasses existentes). Na implementação, será necessário substituir alguns métodos de retorno de chamada
+que lidem com aspectos essenciais do ciclo de vida do serviço e forneçam um mecanismo para vincular
+componentes ao serviço, se apropriado. Os dois métodos mais importantes de retorno de chamada que você deve substituir são:</p>
+
+<dl>
+  <dt>{@link android.app.Service#onStartCommand onStartCommand()}</dt>
+    <dd>O sistema chama este método quando outro componente, como uma atividade,
+solicita que o serviço seja iniciado, chamando {@link android.content.Context#startService
+startService()}. Quando este método é executado, o serviço é iniciado e pode ser executado
+em segundo plano indefinidamente. Se implementar isto, é de sua responsabilidade interromper o serviço
+quando o trabalho for concluído, chamando {@link android.app.Service#stopSelf stopSelf()} ou {@link
+android.content.Context#stopService stopService()} (caso queira somente fornecer a vinculação,
+não é necessário implementar este método).</dd>
+  <dt>{@link android.app.Service#onBind onBind()}</dt>
+    <dd>O sistema chama este método quando outro componente quer vincular-se
+ao serviço (como para realizações de RPC) chamando {@link android.content.Context#bindService
+bindService()}. Na implementação deste método, você deve fornecer uma interface que os clientes
+usem para comunicar-se com o serviço, retornando um {@link android.os.IBinder}. Você sempre deve implementar este método,
+mas, se não quiser permitir a vinculação, retorne nulo.</dd>
+  <dt>{@link android.app.Service#onCreate()}</dt>
+    <dd>O sistema chama este método quando o serviço é criado pela primeira vez para realizar procedimentos únicos
+de configuração (antes de chamar {@link android.app.Service#onStartCommand onStartCommand()} ou
+{@link android.app.Service#onBind onBind()}). Se o serviço já estiver em execução, este método
+não é chamado.</dd>
+  <dt>{@link android.app.Service#onDestroy()}</dt>
+    <dd>O sistema chama este método quando o serviço não é mais usado e está sendo destruído.
+O serviço deve implementar isto para limpar quaisquer recursos, como encadeamentos, escutas
+registradas, receptores etc. Esta é a última chamada que o serviço recebe.</dd>
+</dl>
+
+<p>Se um componente iniciar o serviço chamando {@link
+android.content.Context#startService startService()} (o que resulta em uma chamada para {@link
+android.app.Service#onStartCommand onStartCommand()}),
+o serviço permanecerá em execução até ser interrompido por conta própria com {@link android.app.Service#stopSelf()} ou por outro componente
+chamando {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Se um componente
+chamar {@link android.content.Context#bindService bindService()} para criar o serviço (e {@link
+android.app.Service#onStartCommand onStartCommand()} <em>não</em> for chamado), o serviço será executado
+somente enquanto o componente estiver vinculado a ele. Quando o serviço for desvinculado de todos os clientes,
+o sistema o destruirá.</p>
+
+<p>O sistema Android forçará a interrupção de um serviço somente quando a memória estiver baixa e precisar
+recuperar os recursos do sistema para a atividade com que o usuário estiver interagindo. Se o serviço estiver vinculado a uma atividade que o usuário
+tenha atribuído foco, é menos provável que ele seja eliminado. E, se o serviço for declarado para <a href="#Foreground">ser executado em primeiro plano</a> (discutido posteriormente), então ele quase nunca será eliminado.
+Caso contrário, se o serviço for iniciado e estiver em uma longa execução, o sistema reduzirá sua posição
+na lista de tarefas de segundo plano no decorrer do tempo e o serviço se tornará altamente suscetível
+à eliminação &mdash; se o serviço for iniciado, então você deve programá-lo para lidar
+com reinicializações pelo sistema. Se o sistema eliminar o seu serviço, ele reiniciará assim que os recursos
+estiverem disponíveis novamente (apesar de isto também depender do valor que você retornar de {@link
+android.app.Service#onStartCommand onStartCommand()}, como discutido a seguir). Para obter mais informações sobre
+quando o sistema deve destruir um serviço, consulte o documento <a href="{@docRoot}guide/components/processes-and-threads.html">Processos e encadeamentos</a>
+.</p>
+
+<p>Nas seguintes seções, você verá como é possível criar cada tipo de serviço e como
+usá-los a partir de outros componentes do aplicativo.</p>
+
+
+
+<h3 id="Declaring">Declaração de serviço no manifesto</h3>
+
+<p>Como atividades (e outros componentes), você deve declarar todos os serviços no arquivo de manifesto
+do aplicativo.</p>
+
+<p>Para declarar o serviço, adicione um elemento <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 
+como filho do elemento <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+. Por exemplo:</p>
+
+<pre>
+&lt;manifest ... &gt;
+  ...
+  &lt;application ... &gt;
+      &lt;service android:name=".ExampleService" /&gt;
+      ...
+  &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>Consulte a referência de elemento <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a>
+para obter mais informações sobre como declarar o serviço no manifesto.</p>
+
+<p>É possível incluir outros atributos no elemento <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a>
+para definir propriedades como permissões necessárias para iniciar o serviço e o processo
+em que o serviço deve ser executado. O atributo <a href="{@docRoot}guide/topics/manifest/service-element.html#nm">{@code android:name}</a>
+é o único necessário &mdash; ele especifica o nome da classe do serviço. Ao publicar o aplicativo,
+ não deve-se alterar-lhe o nome porque, se isso acontecer, há riscos de ocorrência de erros
+de código devido à dependência de intenções explícitas para iniciar ou vincular o serviço (leia a publicação do blogue, <a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Coisas
+que não podem mudar</a>).
+
+<p>Para garantir a segurança do aplicativo, <strong>sempre use uma intenção explícita ao iniciar ou vincular
+{@link android.app.Service}</strong> e não declare filtros de intenção para o serviço. Caso seja essencial permitir alguma ambiguidade, como qual serviço deve ser usado para iniciar,
+é possível fornecer filtros de intenções
+para os serviços e excluir o nome do componente de {@link
+android.content.Intent}, mas é preciso definir o pacote para a intenção com {@link
+android.content.Intent#setPackage setPackage()}, que fornece desambiguidade suficiente para
+o serviço alvo.</p>
+
+<p>Além disso, é possível garantir que o serviço esteja disponível somente para o aplicativo
+incluindo o atributo <a href="{@docRoot}guide/topics/manifest/service-element.html#exported">{@code android:exported}</a>
+e definindo-o como {@code "false"}. Isto impede efetivamente que outros aplicativos iniciem o serviço,
+ mesmo usando uma intenção explícita.</p>
+
+
+
+
+<h2 id="CreatingStartedService">Criação de um serviço iniciado</h2>
+
+<p>Um serviço iniciado é o que outro componente inicia chamando {@link
+android.content.Context#startService startService()}, resultando em uma chamada para o método
+{@link android.app.Service#onStartCommand onStartCommand()} do serviço.</p>
+
+<p>Quando um serviço é iniciado, ele tem um ciclo de vida que não depende do componente
+que o iniciou. Além disso, o serviço pode ser executado em segundo plano indefinidamente,
+mesmo se o componente que o iniciou for eliminado. Além disso, o serviço deve ser interrompido quando o seu trabalho
+for realizado, chamando {@link android.app.Service#stopSelf stopSelf()}. Outros componentes podem interrompê-lo
+chamando {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Um componente do aplicativo, como uma atividade, pode iniciar o serviço chamando {@link
+android.content.Context#startService startService()} e passando {@link android.content.Intent},
+que especifica o serviço e inclui os dados para o serviço usar. O serviço
+recebe esta {@link android.content.Intent} no método {@link android.app.Service#onStartCommand
+onStartCommand()}.</p>
+
+<p>Por exemplo, presuma que uma atividade precise salvar alguns dados em um banco de dados on-line. A atividade pode iniciar
+um serviço de acompanhamento e entregar a ele os dados a salvar passando uma intenção para {@link
+android.content.Context#startService startService()}. O serviço recebe a intenção em {@link
+android.app.Service#onStartCommand onStartCommand()}, conecta-se à Internet e realiza
+a transação no banco de dados. Quando a operação é concluída, o serviço é interrompido
+e destruído.</p>
+
+<p class="caution"><strong>Atenção:</strong> um serviço é executado no mesmo processo que o aplicativo
+em que ele é declarado e no encadeamento principal do aplicativo, por padrão. Portanto, se o serviço
+realizar operações intensivas ou de bloqueio quando o usuário interagir com uma atividade do mesmo aplicativo,
+diminuirá o desempenho da atividade. Para evitar impacto no desempenho do aplicativo,
+deve-se iniciar um novo encadeamento dentro do serviço.</p>
+
+<p>Geralmente, há duas classes que podem ser estendidas para criar um serviço iniciado:</p>
+<dl>
+  <dt>{@link android.app.Service}</dt>
+  <dd>Esta é a classe de base para todos os serviços. Ao estender esta classe, é importante
+criar um novo encadeamento para fazer todo o trabalho do serviço, pois o serviço usa
+o encadeamento principal do aplicativo, por padrão, o que deve diminuir o desempenho de qualquer atividade
+que o aplicativo estiver executando.</dd>
+  <dt>{@link android.app.IntentService}</dt>
+  <dd>Esta é uma subclasse de {@link android.app.Service} que usa um encadeamento de trabalho para lidar
+com todas as solicitações de inicialização, uma por vez. Esta é a melhor opção se não quiser que o serviço
+lide com várias solicitações simultaneamente. Tudo que precisa fazer é implementar {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}, que recebe a intenção para cada solicitação
+de início para que você possa realizar o trabalho de segundo plano.</dd>
+</dl>
+
+<p>As seguintes seções descrevem como é possível implementar o serviço usando
+uma dessas classes.</p>
+
+
+<h3 id="ExtendingIntentService">Extensão da classe IntentService</h3>
+
+<p>Como a maioria dos serviços não precisam lidar com várias solicitações simultaneamente
+(o que pode ser perigoso para situações de vários encadeamentos), é melhor
+se o serviço for implementado usando a classe {@link android.app.IntentService}.</p>
+
+<p>O {@link android.app.IntentService} faz o seguinte:</p>
+
+<ul>
+  <li>Cria um encadeamento de trabalho padrão que executa todas as intenções entregues a {@link
+android.app.Service#onStartCommand onStartCommand()} separado do encadeamento principal
+do aplicativo.</li>
+  <li>Cria uma fila de trabalho que passa uma intenção por vez à implementação {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}, para que nunca seja necessário
+preocupar-se com vários encadeamentos.</li>
+  <li>Interrompe o serviço depois que todas as solicitações forem resolvidas para que não seja necessário chamar
+{@link android.app.Service#stopSelf}.</li>
+  <li>Fornece implementações padrão de {@link android.app.IntentService#onBind onBind()}
+que retornam como nulo.</li>
+  <li>Fornece uma implementação padrão de {@link android.app.IntentService#onStartCommand
+onStartCommand()} que envia a intenção para a fila de trabalho e, em seguida, para a implementação de {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}.</li>
+</ul>
+
+<p>Tudo isso adiciona-se ao fato de que basta implementar {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} para fazer o trabalho fornecido
+pelo cliente (embora também seja necessário fornecer um pequeno construtor para o serviço).</p>
+
+<p>A seguir há um exemplo de implementação de {@link android.app.IntentService}:</p>
+
+<pre>
+public class HelloIntentService extends IntentService {
+
+  /**
+   * A constructor is required, and must call the super {@link android.app.IntentService#IntentService}
+   * constructor with a name for the worker thread.
+   */
+  public HelloIntentService() {
+      super("HelloIntentService");
+  }
+
+  /**
+   * The IntentService calls this method from the default worker thread with
+   * the intent that started the service. When this method returns, IntentService
+   * stops the service, as appropriate.
+   */
+  &#64;Override
+  protected void onHandleIntent(Intent intent) {
+      // Normally we would do some work here, like download a file.
+      // For our sample, we just sleep for 5 seconds.
+      long endTime = System.currentTimeMillis() + 5*1000;
+      while (System.currentTimeMillis() &lt; endTime) {
+          synchronized (this) {
+              try {
+                  wait(endTime - System.currentTimeMillis());
+              } catch (Exception e) {
+              }
+          }
+      }
+  }
+}
+</pre>
+
+<p>É tudo que você precisa: um construtor e uma implementação de {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}.</p>
+
+<p>Caso decida substituir outros métodos de retorno de chamada, como {@link
+android.app.IntentService#onCreate onCreate()}, {@link
+android.app.IntentService#onStartCommand onStartCommand()} ou {@link
+android.app.IntentService#onDestroy onDestroy()}, certifique-se de chamar a super-implementação
+para que o {@link android.app.IntentService} possa lidar adequadamente com a vida do encadeamento de trabalho.</p>
+
+<p>Por exemplo, {@link android.app.IntentService#onStartCommand onStartCommand()} deve retornar
+a implementação padrão (que é como a intenção é entregue para {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}):</p>
+
+<pre>
+&#64;Override
+public int onStartCommand(Intent intent, int flags, int startId) {
+    Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+    return super.onStartCommand(intent,flags,startId);
+}
+</pre>
+
+<p>Além de {@link android.app.IntentService#onHandleIntent onHandleIntent()}, o único método
+que não precisa ser usado para chamar a superclasse é {@link android.app.IntentService#onBind
+onBind()} (mas é necessário implementá-lo se o serviço permitir vinculações).</p>
+
+<p>Na próxima seção, você verá como o mesmo tipo de serviço é implementado ao estender
+a classe de base {@link android.app.Service}, que possui muito mais códigos, mas que pode
+ser apropriada para lidar com solicitações de inicialização simultâneas.</p>
+
+
+<h3 id="ExtendingService">Extensão da classe Service</h3>
+
+<p>Como você viu na seção anterior, o uso de {@link android.app.IntentService}
+torna a implementação de um serviço iniciado muito simples. Se, no entanto, você precisa do serviço
+para realizar vários encadeamentos (em vez de processar as solicitações de inicialização por meio de uma fila de trabalho),
+é possível estender a classe {@link android.app.Service} para lidar com cada intenção.</p>
+
+<p>Para efeito de comparação, o seguinte exemplo de código é uma implementação da classe {@link
+android.app.Service} que realiza exatamente o mesmo trabalho que o exemplo acima usando {@link
+android.app.IntentService}. Ou seja, para cada solicitação de inicialização, ela usa um encadeamento
+de trabalho para realizar o trabalho e processa apenas uma solicitação por vez.</p>
+
+<pre>
+public class HelloService extends Service {
+  private Looper mServiceLooper;
+  private ServiceHandler mServiceHandler;
+
+  // Handler that receives messages from the thread
+  private final class ServiceHandler extends Handler {
+      public ServiceHandler(Looper looper) {
+          super(looper);
+      }
+      &#64;Override
+      public void handleMessage(Message msg) {
+          // Normally we would do some work here, like download a file.
+          // For our sample, we just sleep for 5 seconds.
+          long endTime = System.currentTimeMillis() + 5*1000;
+          while (System.currentTimeMillis() &lt; endTime) {
+              synchronized (this) {
+                  try {
+                      wait(endTime - System.currentTimeMillis());
+                  } catch (Exception e) {
+                  }
+              }
+          }
+          // Stop the service using the startId, so that we don't stop
+          // the service in the middle of handling another job
+          stopSelf(msg.arg1);
+      }
+  }
+
+  &#64;Override
+  public void onCreate() {
+    // Start up the thread running the service.  Note that we create a
+    // separate thread because the service normally runs in the process's
+    // main thread, which we don't want to block.  We also make it
+    // background priority so CPU-intensive work will not disrupt our UI.
+    HandlerThread thread = new HandlerThread("ServiceStartArguments",
+            Process.THREAD_PRIORITY_BACKGROUND);
+    thread.start();
+
+    // Get the HandlerThread's Looper and use it for our Handler
+    mServiceLooper = thread.getLooper();
+    mServiceHandler = new ServiceHandler(mServiceLooper);
+  }
+
+  &#64;Override
+  public int onStartCommand(Intent intent, int flags, int startId) {
+      Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+
+      // For each start request, send a message to start a job and deliver the
+      // start ID so we know which request we're stopping when we finish the job
+      Message msg = mServiceHandler.obtainMessage();
+      msg.arg1 = startId;
+      mServiceHandler.sendMessage(msg);
+
+      // If we get killed, after returning from here, restart
+      return START_STICKY;
+  }
+
+  &#64;Override
+  public IBinder onBind(Intent intent) {
+      // We don't provide binding, so return null
+      return null;
+  }
+
+  &#64;Override
+  public void onDestroy() {
+    Toast.makeText(this, "service done", Toast.LENGTH_SHORT).show();
+  }
+}
+</pre>
+
+<p>Como pode ver, é muito mais trabalhoso do que usar {@link android.app.IntentService}.</p>
+
+<p>No entanto, como você lida com cada chamada de {@link android.app.Service#onStartCommand
+onStartCommand()}, é possível realizar várias solicitações simultaneamente. Isso não é o que este exemplo faz,
+mas, se for o que quer, é possível criar um novo encadeamento
+para cada solicitação e executá-las na hora (em vez de esperar que a solicitação anterior seja concluída).</p>
+
+<p>Observe que o método {@link android.app.Service#onStartCommand onStartCommand()} deve retornar
+um número inteiro. O número inteiro é um valor que descreve como o sistema deve continuar o serviço
+no evento em que o sistema o eliminar (como discutido acima, a implementação padrão de {@link
+android.app.IntentService} lida com isto, apesar de ser possível modificá-lo). O valor de retorno
+de {@link android.app.Service#onStartCommand onStartCommand()} deve ser uma das seguintes
+constantes:</p>
+
+<dl>
+  <dt>{@link android.app.Service#START_NOT_STICKY}</dt>
+    <dd>Se o sistema eliminar o serviço após o retorno de {@link android.app.Service#onStartCommand
+onStartCommand()}, <em>não</em> recrie o serviço, a não ser que tenha
+intenções pendentes para entregar. Esta é a opção mais segura para evitar executar o serviço quando desnecessário
+e quando o aplicativo puder simplesmente reiniciar qualquer trabalho incompleto.</dd>
+  <dt>{@link android.app.Service#START_STICKY}</dt>
+    <dd>Se o sistema eliminar o serviço após o retorno de {@link android.app.Service#onStartCommand
+onStartCommand()}, recrie o serviço e chame {@link
+android.app.Service#onStartCommand onStartCommand()}, mas <em>não</em> entregue novamente a última intenção.
+Em vez disso, o sistema chama {@link android.app.Service#onStartCommand onStartCommand()} com intenção nula,
+a não ser que tenha intenções pendentes para iniciar o serviço e,
+nesse caso, essas intenções são entregues. Isto é adequado para reprodutores de mídia (ou serviços semelhantes)
+que não estejam executando comandos, mas estejam em execução indefinidamente e aguardando um trabalho.</dd>
+  <dt>{@link android.app.Service#START_REDELIVER_INTENT}</dt>
+    <dd>Se o sistema eliminar o serviço após o retorno de {@link android.app.Service#onStartCommand
+onStartCommand()}, recrie o serviço e chame {@link
+android.app.Service#onStartCommand onStartCommand()} com a última intenção que foi entregue
+ao serviço. Quaisquer intenções pendentes são entregues, por sua vez. Isto é adequado para serviços que estejam realizando
+um trabalho ativamente que deva ser retomado imediatamente, como o download de um arquivo.</dd>
+</dl>
+<p>Para obter mais informações sobre esses valores de retorno, veja a documentação de referência vinculada
+a cada constante.</p>
+
+
+
+<h3 id="StartingAService">Início de um serviço</h3>
+
+<p>É possível iniciar um dispositivo de uma atividade ou outro componente do aplicativo passando uma 
+{@link android.content.Intent} a {@link
+android.content.Context#startService startService()}. O sistema Android chama o método {@link
+android.app.Service#onStartCommand onStartCommand()} do serviço e passa a ele a {@link
+android.content.Intent} (nunca deve-se chamar {@link android.app.Service#onStartCommand
+onStartCommand()} diretamente).</p>
+
+<p>Por exemplo, uma atividade pode iniciar o serviço de exemplo na seção anterior ({@code
+HelloSevice}) usando uma intenção explícita com {@link android.content.Context#startService
+startService()}:</p>
+
+<pre>
+Intent intent = new Intent(this, HelloService.class);
+startService(intent);
+</pre>
+
+<p>O método {@link android.content.Context#startService startService()} retorna imediatamente
+e o sistema Android chama o método {@link android.app.Service#onStartCommand
+onStartCommand()} do serviço. Se o serviço não estiver em execução, o sistemo primeiro chama {@link
+android.app.Service#onCreate onCreate()} e, em seguida, chama {@link android.app.Service#onStartCommand
+onStartCommand()}.</p>
+
+<p>Se o serviço não fornecer vinculação, a intenção entregue com {@link
+android.content.Context#startService startService()} é o único modo de comunicação entre
+o componente do aplicativo e o serviço. No entanto, se quiser que o serviço envie um resultado de volta,
+o cliente que iniciar o serviço poderá criar um {@link android.app.PendingIntent} para uma transmissão
+(com {@link android.app.PendingIntent#getBroadcast getBroadcast()}) e entregá-la ao serviço
+na {@link android.content.Intent} que iniciar o serviço. O serviço pode então
+usar a transmissão para entregar um resultado.</p>
+
+<p>Várias solicitações para iniciar o serviço resultam em diversas chamadas correspondentes
+ao {@link android.app.Service#onStartCommand onStartCommand()} do serviço. No entanto, somente uma solicitação para interromper
+o serviço (com {@link android.app.Service#stopSelf stopSelf()} ou {@link
+android.content.Context#stopService stopService()}) é necessária para interrompê-lo.</p>
+
+
+<h3 id="Stopping">Interrupção de um serviço</h3>
+
+<p>Um serviço iniciado deve gerenciar seu próprio ciclo de vida. Ou seja, o sistema não interrompe
+ou elimina o serviço, a não ser que tenha que recuperar a memória do sistema e o serviço
+continuar em execução depois que {@link android.app.Service#onStartCommand onStartCommand()} retornar. Portanto,
+o serviço deve ser interrompido chamando {@link android.app.Service#stopSelf stopSelf()} ou outro
+componente pode interrompê-lo chamando {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Ao solicitar o interrompimento com {@link android.app.Service#stopSelf stopSelf()} ou {@link
+android.content.Context#stopService stopService()}, o sistema elimina o serviço
+assim que possível.</p>
+
+<p>No entanto, se o serviço lida com várias solicitações para {@link
+android.app.Service#onStartCommand onStartCommand()} ao mesmo tempo, não se deve interromper
+o serviço ao terminar o processamento de uma solicitação de inicialização, pois é possível
+que uma nova solicitação de inicialização tenha ocorrido (interromper no final da primeira solicitação eliminaria a segunda). Para evitar este problema,
+é possível usar {@link android.app.Service#stopSelf(int)} para garantir que a solicitação
+que interrompe o serviço sempre se baseie na solicitação de inicialização mais recente. Ou seja, ao chamar {@link
+android.app.Service#stopSelf(int)}, você passa o ID da solicitação de inicialização (o <code>startId</code>
+entregue a {@link android.app.Service#onStartCommand onStartCommand()}) para aquele que solicitação de interrompimento
+corresponde. Em seguida, se o serviço receber uma nova solicitação de inicialização antes de ser possível chamar {@link
+android.app.Service#stopSelf(int)}, o ID não corresponderá e o serviço não será interrompido.</p>
+
+<p class="caution"><strong>Atenção:</strong> é importante que um aplicativo interrompa seus serviços
+quando terminar os trabalhos para evitar o desperdício dos recursos do sistema e consumo da bateria. Se necessário,
+outros componentes podem interromper o serviço chamando {@link
+android.content.Context#stopService stopService()}. Mesmo se for possível vincular-se ao serviço,
+deve-se sempre interrompê-lo por conta própria se ele tiver recebido uma chamada de {@link
+android.app.Service#onStartCommand onStartCommand()}.</p>
+
+<p>Para obter mais informações sobre o ciclo de vida de um serviço, consulte a seção <a href="#Lifecycle">Gerenciamento do ciclo de vida de um serviço</a> abaixo.</p>
+
+
+
+<h2 id="CreatingBoundService">Criação de um serviço vinculado</h2>
+
+<p>Um serviço vinculado permite que componentes de aplicativo sejam vinculados chamando {@link
+android.content.Context#bindService bindService()} para criar uma conexão de longo prazo
+(e, geralmente, não permite que os componentes o <em>iniciem</em> chamando {@link
+android.content.Context#startService startService()}).</p>
+
+<p>Deve-se criar um serviço vinculado quando se deseja interagir com o serviço a partir de atividades
+e outros componentes no aplicativo ou para expor algumas das funcionalidades do aplicativo
+para outros aplicativos, por meio de comunicação entre processos (IPC).</p>
+
+<p>Para criar um serviço vinculado, você deve implementar o método de retorno de chamada {@link
+android.app.Service#onBind onBind()} para retornar um {@link android.os.IBinder}
+que define a interface para a comunicação com o serviço. Outros componentes de aplicativo podem chamar
+{@link android.content.Context#bindService bindService()} para recuperar a interface
+e começar a chamar métodos no serviço. O serviço vive somente para servir o componente do aplicativo
+ao qual ele está vinculado. Portanto, quando não houver componentes vinculados ao serviço, o sistema o eliminará
+(<em>não</em> é necessário interromper um serviço vinculado da mesma maneira que quando o serviço é iniciado
+por meio de {@link android.app.Service#onStartCommand onStartCommand()}).</p>
+
+<p>Para criar um serviço vinculado, a primeira coisa a se fazer é definir a interface que especifica
+como um cliente pode comunicar-se com o servidor. Esta interface entre o serviço
+e um cliente deve ser uma implementação de {@link android.os.IBinder} e é o que o serviço deve retornar
+a partir do método de retorno de chamada {@link android.app.Service#onBind
+onBind()}. Quando o cliente receber {@link android.os.IBinder}, ele poderá começar
+a interagir com o serviço por meio da interface.</p>
+
+<p>Vários clientes podem vincular-se ao serviço por vez. Quando um cliente terminar de interagir com o serviço,
+ ele chamará {@link android.content.Context#unbindService unbindService()} para desvincular-se. Quando não houver
+clientes vinculados ao serviço, o sistema o eliminará.</p>
+
+<p>Há várias maneiras de implementar um serviço vinculado e a implementação é mais complicada
+que um serviço iniciado. Logo, a discussão sobre serviços vinculados aparece em um documento separado
+sobre <a href="{@docRoot}guide/components/bound-services.html">Serviços vinculados</a>.</p>
+
+
+
+<h2 id="Notifications">Enviar notificações ao usuário</h2>
+
+<p>Quando em execução, um serviço pode notificar o usuário sobre eventos usando <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">Notificações de aviso</a> ou <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Notificações da barra de status</a>.</p>
+
+<p>Uma notificação de aviso é uma mensagem que aparece na superfície da janela atual
+por um breve momento antes de desaparecer, enquanto que uma notificação da barra de status fornece um ícone na barra de status
+com uma mensagem que o usuário pode selecionar para realizar uma ação (como iniciar uma atividade).</p>
+
+<p>Geralmente, uma notificação da barra de status é a melhor técnica quando um trabalho de segundo plano é concluído
+(como download
+de arquivo completo) e o usuário pode agir a partir dele. Quando o usuário seleciona a notificação a partir
+da vista expandida, ela pode iniciar uma atividade (como a vista do arquivo baixado).</p>
+
+<p>Consulte os guias de desenvolvedor <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">Notificações de aviso</a> ou <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Notificações da barra de status</a>
+para obter mais informações.</p>
+
+
+
+<h2 id="Foreground">Execução de serviço em primeiro plano</h2>
+
+<p>Um serviço de primeiro plano é aquele
+com que o usuário está ativamente interagindo e não é uma opção para o sistema eliminá-lo quando a memória estiver baixa. Um serviço de primeiro plano
+deve fornecer uma notificação para a barra de status, que é colocada sob
+"o cabeçalho "Em andamento", o que significa que a notificação não pode ser dispensada a não ser que o serviço
+seja interrompido ou removido do primeiro plano.</p>
+
+<p>Por exemplo, um reprodutor de música que reproduz a partir de um serviço deve ser configurado
+para permanecer em execução em primeiro plano, pois o usuário está
+prestando atenção em sua operação explicitamente. A notificação na barra de status pode indicar a música atual
+e permitir que o usuário inicie uma atividade para interagir com o reprodutor de música.</p>
+
+<p>Para solicitar que o serviço seja executado em primeiro plano, chame {@link
+android.app.Service#startForeground startForeground()}. Este método usa dois parâmetros: um número inteiro
+que identifica unicamente a notificação e {@link
+android.app.Notification} para a barra de status. Por exemplo:</p>
+
+<pre>
+Notification notification = new Notification(R.drawable.icon, getText(R.string.ticker_text),
+        System.currentTimeMillis());
+Intent notificationIntent = new Intent(this, ExampleActivity.class);
+PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
+notification.setLatestEventInfo(this, getText(R.string.notification_title),
+        getText(R.string.notification_message), pendingIntent);
+startForeground(ONGOING_NOTIFICATION_ID, notification);
+</pre>
+
+<p class="caution"><strong>Atenção:</strong> O ID do número inteiro fornecido para {@link
+android.app.Service#startForeground startForeground()} não deve ser zero.</p>
+
+
+<p>Para remover o serviço do primeiro plano, chame {@link
+android.app.Service#stopForeground stopForeground()}. Este método usa um booleano,
+indicando se deve remover também a notificação da barra de status. Este método <em>não</em> interrompe
+o serviço. No entanto, se você interromper o serviço enquanto estiver em execução em primeiro plano,
+a notificação também será removida.</p>
+
+<p>Para obter mais informações sobre notificações, consulte <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Criação de notificações
+da barra de status</a>.</p>
+
+
+
+<h2 id="Lifecycle">Gerenciamento do ciclo de vida de um serviço</h2>
+
+<p>O ciclo de vida de um serviço é muito mais simples do que o de uma atividade. No entanto, é ainda mais importante
+que você preste muita atenção em como o serviço é criado e eliminado, pois ele
+pode ser executado em primeiro plano sem que o usuário esteja ciente.</p>
+
+<p>O ciclo de vida do serviço &mdash; desde quando é criado até ser eliminado &mdash; pode seguir
+dois caminhos:</p>
+
+<ul>
+<li>Um serviço iniciado
+  <p>O serviço é criado quando outro componente chama {@link
+android.content.Context#startService startService()}. Depois, o serviço permanece em execução indefinidamente e deve
+interromper-se chamando {@link
+android.app.Service#stopSelf() stopSelf()}. Outro componente também pode interromper
+o serviço chamando {@link
+android.content.Context#stopService stopService()}. Quando o serviço é interrompido, o sistema o elimina.</p></li>
+
+<li>Um serviço vinculado
+  <p>O serviço é criado quando outro componente (um cliente) chama {@link
+android.content.Context#bindService bindService()}. O cliente comunica-se com o serviço
+pela interface {@link android.os.IBinder}. O cliente pode escolher encerrar a conexão chamando
+{@link android.content.Context#unbindService unbindService()}. Vários clientes podem ser vinculados
+ao mesmo serviço e, quando todos os vínculos terminam, o sistema destrói o serviço (o serviço
+<em>não</em> precisa ser interrompido).</p></li>
+</ul>
+
+<p>Esses dois caminhos não são inteiramente separados. Ou seja, é possível vincular um serviço
+que já foi iniciado com {@link android.content.Context#startService startService()}. Por exemplo, um serviço de música
+de segundo plano pode ser iniciado chamando {@link android.content.Context#startService
+startService()} com uma {@link android.content.Intent} que identifica a música reproduzida. Depois,
+possivelmente quando o usuário quiser exercer mais controle sobre o reprodutor ou obter informações
+sobre a música em reprodução, uma atividade pode ser vinculada ao serviço chamando {@link
+android.content.Context#bindService bindService()}. Em casos como esse, {@link
+android.content.Context#stopService stopService()} ou {@link android.app.Service#stopSelf
+stopSelf()} não interrompe o serviço até que todos os clientes sejam desvinculados. </p>
+
+
+<h3 id="LifecycleCallbacks">Implementação de retornos de chamada do ciclo de vida</h3>
+
+<p>Como uma atividade, um serviço tem um método de ciclo de vida que é possível implementar
+para monitorar as alterações no estado do serviço e realizar trabalhos em momentos adequados. O seguinte serviço de esqueleto
+demonstra cada um dos métodos de ciclo de vida:</p>
+
+<pre>
+public class ExampleService extends Service {
+    int mStartMode;       // indicates how to behave if the service is killed
+    IBinder mBinder;      // interface for clients that bind
+    boolean mAllowRebind; // indicates whether onRebind should be used
+
+    &#64;Override
+    public void {@link android.app.Service#onCreate onCreate}() {
+        // The service is being created
+    }
+    &#64;Override
+    public int {@link android.app.Service#onStartCommand onStartCommand}(Intent intent, int flags, int startId) {
+        // The service is starting, due to a call to {@link android.content.Context#startService startService()}
+        return <em>mStartMode</em>;
+    }
+    &#64;Override
+    public IBinder {@link android.app.Service#onBind onBind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()}
+        return <em>mBinder</em>;
+    }
+    &#64;Override
+    public boolean {@link android.app.Service#onUnbind onUnbind}(Intent intent) {
+        // All clients have unbound with {@link android.content.Context#unbindService unbindService()}
+        return <em>mAllowRebind</em>;
+    }
+    &#64;Override
+    public void {@link android.app.Service#onRebind onRebind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()},
+        // after onUnbind() has already been called
+    }
+    &#64;Override
+    public void {@link android.app.Service#onDestroy onDestroy}() {
+        // The service is no longer used and is being destroyed
+    }
+}
+</pre>
+
+<p class="note"><strong>Observação:</strong> diferentemente dos métodos de retorno de chamada do ciclo de vida da atividade,
+você <em>não</em> precisa chamar a implementação da superclasse.</p>
+
+<img src="{@docRoot}images/service_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Figura 2.</strong> Ciclo de vida do serviço. O diagrama à esquerda
+mostra o ciclo de vida quando o serviço é criado com {@link android.content.Context#startService
+startService()} e o diagrama à direita mostra o ciclo de vida quando o serviço
+é criado com {@link android.content.Context#bindService bindService()}.</p>
+
+<p>Ao implementar esses métodos, é possível monitorar dois retornos (loops) aninhados no ciclo de vida do serviço: </p>
+
+<ul>
+<li><strong>Todo o ciclo de vida</strong> de um serviço acontece entre o momento em que {@link
+android.app.Service#onCreate onCreate()} é chamado e em que {@link
+android.app.Service#onDestroy} retorna. Como uma atividade, um serviço faz a sua configuração inicial
+em {@link android.app.Service#onCreate onCreate()} e libera todos os recursos restantes em {@link
+android.app.Service#onDestroy onDestroy()}.  Por exemplo,
+um serviço de reprodução de música pode criar um encadeamento onde a música será reproduzida em {@link
+android.app.Service#onCreate onCreate()}, e interromperá o encadeamento em {@link
+android.app.Service#onDestroy onDestroy()}.
+
+<p>Os métodos {@link android.app.Service#onCreate onCreate()} e {@link android.app.Service#onDestroy
+onDestroy()} são chamados para todos os serviços,
+se tiverem sido criados por {@link android.content.Context#startService startService()} ou {@link
+android.content.Context#bindService bindService()}.</p></li>
+
+<li>O <strong>ciclo de vida ativo</strong> de um serviço começa com uma chamada de {@link
+android.app.Service#onStartCommand onStartCommand()} ou {@link android.app.Service#onBind onBind()}.
+Cada método entrega a {@link
+android.content.Intent} que foi passada para {@link android.content.Context#startService
+startService()} ou {@link android.content.Context#bindService bindService()}, respectivamente.
+<p>Se o serviço for iniciado, o ciclo de vida ativo terminará no mesmo momento
+em que o ciclo de vida inteiro terminar (o serviço permanece ativo mesmo após o retorno de {@link android.app.Service#onStartCommand
+onStartCommand()}). Se o serviço estiver vinculado, o ciclo de ida ativo acabará quando {@link
+android.app.Service#onUnbind onUnbind()} retornar.</p>
+</li>
+</ul>
+
+<p class="note"><strong>Observação:</strong> apesar de um serviço iniciado ser interrompido com uma chamada
+de {@link android.app.Service#stopSelf stopSelf()} ou {@link
+android.content.Context#stopService stopService()}, não há um retorno de chamada respectivo
+para o serviço (não há retorno de chamada de {@code onStop()}). Portanto, a não ser que o serviço esteja vinculado a um cliente,
+o sistema o eliminará quando for interrompido &mdash; {@link
+android.app.Service#onDestroy onDestroy()} será o único retorno de chamada recebido.</p>
+
+<p>A figura 2 ilustra os métodos de retorno de chamada tradicionais para um serviço. Apesar de a figura separar
+os serviços que são criados por {@link android.content.Context#startService startService()}
+daqueles que são criados por {@link android.content.Context#bindService bindService()},
+observe que qualquer serviço, não importa como foi iniciado, pode permitir a vinculação de clientes.
+Portanto, um serviço que já foi iniciado com {@link android.app.Service#onStartCommand
+onStartCommand()} (por um cliente chamando  {@link android.content.Context#startService startService()})
+ainda pode receber uma chamada de {@link android.app.Service#onBind onBind()} (quando um cliente chama
+{@link android.content.Context#bindService bindService()}).</p>
+
+<p>Para obter mais informações sobre como criar um serviço que forneça vinculação, consulte o documento <a href="{@docRoot}guide/components/bound-services.html">Serviços vinculados</a>,
+que aborda mais profundamente o método de retorno de chamada {@link android.app.Service#onRebind onRebind()}
+na seção sobre <a href="{@docRoot}guide/components/bound-services.html#Lifecycle">Gerenciamento do ciclo de vida
+de um serviço vinculado</a>.</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>To learn how to query data from the system or other applications (such as contacts or media
+stored on the device), continue with the <b><a
+href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a></b>
+document.</p>
+-->
diff --git a/docs/html-intl/intl/pt-br/guide/components/tasks-and-back-stack.jd b/docs/html-intl/intl/pt-br/guide/components/tasks-and-back-stack.jd
new file mode 100644
index 0000000..d309c67
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/components/tasks-and-back-stack.jd
@@ -0,0 +1,578 @@
+page.title=Tarefas e pilhas de retorno
+parent.title=Atividades
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Neste documento</h2>
+<ol>
+<li><a href="#ActivityState">Gravação do estado da atividade</a></li></li>
+<li><a href="#ManagingTasks">Gerenciamento de tarefas</a>
+  <ol>
+    <li><a href="#TaskLaunchModes">Definição de modos de inicialização</a></li>
+    <li><a href="#Affinities">Tratamento de afinidades</a></li>
+    <li><a href="#Clearing">Apagar a pilha de retorno</a></li>
+    <li><a href="#Starting">Início de uma tarefa</a></li>
+  </ol>
+</li>
+</ol>
+
+<h2>Artigos</h2>
+<ol>
+  <li><a href="http://android-developers.blogspot.com/2010/04/multitasking-android-way.html">
+  Multitarefa do modo Android</a></li>
+</ol>
+
+<h2>Veja também</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/navigation.html">Projeto para Android:
+Navegação</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html">Elemento de manifesto
+{@code &lt;activity&gt;}</a></li>
+  <li><a href="{@docRoot}guide/components/recents.html">Tela de visão geral</a></li>
+</ol>
+</div>
+</div>
+
+
+<p>Os aplicativos normalmente contêm diversas <a href="{@docRoot}guide/components/activities.html">atividades</a>. Cada atividade
+deve ser projetada com relação a tipos específicos de ações que o usuário pode realizar e que podem iniciar outras
+atividades. Por exemplo: um aplicativo de e-mail pode ter uma atividade para exibir uma lista de novas mensagens.
+Quando o usuário seleciona uma mensagem, uma nova atividade abre para exibir essa mensagem.</p>
+
+<p>As atividades podem também iniciar atividades existentes em outros aplicativos no dispositivo. Por
+exemplo: se o seu aplicativo deseja enviar um e-mail, é possível definir uma intenção para realizar
+uma ação de "enviar" e incluir alguns dados, como um endereço de e-mail e uma mensagem. Uma atividade de outro
+aplicativo que se declara para tratar deste tipo de intenções, então, abre-se. Nesse caso, a intenção
+destina-se ao envio de e-mails, portanto inicia-se uma atividade de “composição" do aplicativo de e-mail (se diversas atividades
+forem compatíveis com a mesma intenção, o sistema permitirá que o usuário selecione qual usar). Quando o e-mail é
+enviado, sua atividade reinicia, parecendo que a atividade de e-mail faz parte do seu aplicativo. Apesar
+de as atividades serem de aplicativos diferentes, o Android mantém essa experiência
+do usuário retilínea mantendo ambas as atividades na mesma <em>tarefa</em>.</p>
+
+<p>Tarefas são coleções de atividades com as quais os usuários interagem
+ao realizar determinado trabalho. As atividades são organizadas em uma pilha (a <em>pilha de retorno</em>)
+na ordem em que cada atividade é aberta.</p>
+
+<!-- SAVE FOR WHEN THE FRAGMENT DOC IS ADDED
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h3>Adding fragments to a task's back stack</h3>
+
+<p>Your activity can also include {@link android.app.Fragment}s to the back stack. For example,
+suppose you have a two-pane layout using fragments, one of which is a list view (fragment A) and the
+other being a layout to display an item from the list (fragment B). When the user selects an item
+from the list, fragment B is replaced by a new fragment (fragment C). In this case, it might be
+desireable for the user to navigate back to reveal fragment B, using the <em>Back</em> button.</p>
+<p>In order to add fragment B to the back stack so that this is possible, you must call {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} before you {@link
+android.app.FragmentTransaction#commit()} the transaction that replaces fragment B with fragment
+C.</p>
+<p>For more information about using fragments and adding them to the back stack, see the {@link
+android.app.Fragment} class documentation.</p>
+
+</div>
+</div>
+-->
+
+<p>A tela inicial do dispositivo é o ponto de partida para a maioria das tarefas. Quando o usuário toca em um ícone no inicializador do 
+aplicativo
+ (ou em um atalho na tela inicial), essa tarefa do aplicativo acontece em primeiro plano. Se não
+existir nenhuma tarefa para o aplicativo (se o aplicativo não tiver sido usado recentemente), uma nova tarefa
+será criada e a atividade "principal" daquele aplicativo abrirá como a atividade raiz na pilha.</p>
+
+<p>Quando a atividade atual inicia outra, a nova atividade é colocada no topo da pilha
+e recebe foco. A atividade anterior permanece na pilha, mas é interrompida. Quando uma atividade
+para, o sistema retém o estado atual da interface do usuário. Quando o usuário pressiona o botão 
+<em>Voltar</em>
+, a atividade atual é retirada do topo da pilha (a atividade é destruída)
+e a atividade anterior reinicia (o estado anterior da IU é restaurado). Atividades na pilha nunca
+são reorganizadas, somente colocadas e retiradas da pilha &mdash; colocadas na pilha quando iniciadas
+pela atividade atual e retiradas quando o usuário se retira dela usando o botão <em>Voltar</em>. Desse modo, a pilha
+de retorno
+opera como uma estrutura de objeto UEPS (último que entra, primeiro que sai). A figura 1
+ilustra esse comportamento com uma linha cronológica exibindo o progresso entre atividades junto com a pilha de retorno
+atual em cada ponto no tempo.</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack.png" alt="" />
+<p class="img-caption"><strong>Figura 1.</strong> Representação de como cada nova atividade
+em uma tarefa adiciona um item à pilha de retorno. Quando o usuário pressiona o botão <em>Voltar</em>,
+a atividade atual é
+destruída e a atividade anterior reinicia.</p>
+
+
+<p>Se o usuário continua pressionando <em>Voltar</em>, cada atividade na pilha é retirada para 
+revelar
+a anterior até que o usuário retorne à tela inicial (ou a qualquer atividade que estivesse em execução
+no começo da tarefa). Quando todas as atividades forem removidas da pilha, a tarefa não existirá mais.</p>
+
+<div class="figure" style="width:287px">
+<img src="{@docRoot}images/fundamentals/diagram_multitasking.png" alt="" /> <p
+class="img-caption"><strong>Figura 2.</strong> Duas tarefas: a tarefa B recebe a interação do usuário
+em primeiro plano enquanto a tarefa A está em segundo plano aguardando para ser retomada.</p>
+</div>
+<div class="figure" style="width:215px">
+  <img src="{@docRoot}images/fundamentals/diagram_multiple_instances.png" alt="" /> <p
+class="img-caption"><strong>Figura 3.</strong> Uma única atividade é instanciada diversas vezes.</p>
+</div>
+
+<p>As tarefas são unidades coesas que podem mover-se para "segundo plano" quando usuário inicia uma nova tarefa
+ou ir para a tela inicial por meio do botão <em>Página inicial</em>. Quando em segundo plano, todas as atividades
+da tarefa são
+interrompidas, mas a pilha de retorno das tarefas continua intacta &mdash; a tarefa simplesmente perdeu o foco,
+que foi para outra tarefa, como ilustrado na figura 2. Uma tarefa pode, então, retornar ao "primeiro plano" para que os usuários
+continuem de onde pararam. Suponha, por exemplo, que a tarefa atual (tarefa A) tenha três
+atividades na sua pilha &mdash; duas sob a atividade atual. O usuário pressiona o botão <em>Página inicial</em> e,
+em seguida,
+inicia um novo aplicativo no inicializador do aplicativo. Quando a tela inicial aparece, a tarefa A
+vai para segundo plano. Quando o novo aplicativo inicia, o sistema inicia uma tarefa para este aplicativo
+(tarefa B) com sua própria pilha de atividades. Após interagir
+com este aplicativo, o usuário retorna à Página inicial novamente e seleciona o aplicativo que originalmente
+iniciou a tarefa A. Agora, a tarefa A fica
+em primeiro plano &mdash; todas as três atividades nas pilhas estão intactas e a atividade no topo
+da pilha reinicia. Nesse
+momento, o usuário pode alternar para a tarefa B acessando a Página inicial e selecionando o ícone do aplicativo
+que iniciou essa tarefa (ou selecionando a tarefa do aplicativo
+na <a href="{@docRoot}guide/components/recents.html">tela de visão geral</a>).
+Esse é um exemplo de multitarefas no Android.</p>
+
+<p class="note"><strong>Observação:</strong> várias tarefas podem ser mantidas em segundo plano simultaneamente.
+Contudo, se o usuário estiver executando diversas tarefas em segundo plano ao mesmo tempo, o sistema pode começar
+a destruir atividades de segundo plano para recuperar memória, fazendo com que o estado das atividades seja perdido.
+Consulte a seção a seguir sobre <a href="#ActivityState">Estado de atividades</a>.</p>
+
+<p>Como as atividades na pilha de retorno nunca são reorganizadas, se o seu aplicativo permitir que
+usuários iniciem uma determinada atividade a partir de mais de uma atividade, uma nova instância
+dela será criada e colocada na pilha (em vez de trazer qualquer instância anterior
+dela para o topo). Assim, uma atividade no aplicativo pode ser instanciada diversas
+vezes (mesmo a partir de diferentes tarefas), como ilustrado na figura 3. Assim, se o usuário navegar inversamente
+usando o botão <em>Voltar</em>, as instâncias da atividade serão revelada na ordem em que foram
+abertas (cada uma
+com o próprio estado da IU). No entanto, é possível modificar esse comportamento se você não deseja que uma atividade seja
+instanciada mais de uma vez. Esse assunto é abordado na próxima seção sobre <a href="#ManagingTasks">Gerenciamento de tarefas</a>.</p>
+
+
+<p>Para resumir o comportamento padrão de atividades e tarefas:</p>
+
+<ul>
+  <li>Quando a atividade A inicia a atividade B, a atividade A é interrompida, mas o sistema retém seu estado
+(como posição de rolagem e texto inserido em formulários).
+Se o usuário pressionar o botão <em>Voltar</em> na atividade B, a atividade A reiniciará com seu estado
+restaurado.</li>
+  <li>Quando o usuário se retira de uma tarefa pressionando o botão <em>Página inicial</em>, a atividade atual é
+interrompida
+e sua tarefa fica em segundo plano. O sistema retém o estado de cada atividade na tarefa. Se,
+mais tarde, o usuário reiniciar a tarefa selecionando o ícone de inicialização que a inicia, ela ficará
+em primeiro plano e reiniciará a atividade no topo da pilha.</li>
+  <li>Se o usuário pressionar o botão <em>Voltar</em>, a atividade atual será retirada da pilha
+e
+destruída. A atividade anterior na pilha é retomada. Quando uma atividade é destruída, o sistema
+<em>não</em> retém seu estado.</li>
+  <li>As atividades podem ser instanciadas diversas vezes mesmo a partir de outras tarefas.</li>
+</ul>
+
+
+<div class="note design">
+<p><strong>Projeto de navegação</strong></p>
+  <p>Para saber mais sobre o funcionamento da navegação de aplicativos no Android, leia o guia <a href="{@docRoot}design/patterns/navigation.html">Navegação</a> do Projeto do Android.</p>
+</div>
+
+
+<h2 id="ActivityState">Gravação do estado da atividade</h2>
+
+<p>Como discutido acima, o comportamento padrão do sistema preserva o estado de uma atividade quando ela é
+interrompida. Desse modo, quando usuários navegam inversamente a uma atividade anterior, a interface do usuário aparece
+na forma em que foi deixada. Entretanto, é possível &mdash; e <strong>recomendável</strong> &mdash; reter proativamente
+o estado das atividades usando métodos de retorno de chamada nos casos em que a atividade é destruída e deve
+ser recriada.</p>
+
+<p>Quando o sistema interrompe uma das atividades (como quando uma nova atividade inicia ou a tarefa
+se move para segundo plano), o sistema pode destruir esta atividade completamente se precisar recuperar
+a memória do sistema. Quando isso ocorre, as informações sobre o estado da atividade são perdidas. Se isso acontecer,
+o sistema ainda
+saberá que a atividade tem um lugar na pilha de retorno, mas quando a atividade for levada
+ao topo da pilha, o sistema precisará recriá-la (em vez de reiniciá-la). Para
+evitar perder o trabalho do usuário, deve-se retê-la proativamente implementando
+métodos de retorno de chamada {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+na atividade.</p>
+
+<p>Para obter mais informações sobre a gravação do estado da atividade, consulte o documento
+<a href="{@docRoot}guide/components/activities.html#SavingActivityState">Atividades</a>.</p>
+
+
+
+<h2 id="ManagingTasks">Gerenciamento de tarefas</h2>
+
+<p>O modo com que o Android gerencia tarefas e a pilha de retorno, como descrito abaixo &mdash; posicionando todas
+as atividades iniciadas em sucessão na mesma tarefa em uma pilha UEPS (último que entra, primeiro que sai) &mdash; funciona
+muito bem para a maioria dos aplicativo e não é preciso preocupar-se com a associação das atividades
+a tarefas ou como elas estão organizadas na pilha de retorno. No entanto, pode-se decidir interromper
+o comportamento normal. Talvez você deseje que uma atividade inicie uma nova tarefa no aplicativo ao ser
+iniciada (em vez de ser colocada dentro da tarefa atual); ou, quando você inicia uma atividade, deseja
+apresentar uma instância dela existente (em vez de criar uma nova
+instância no topo da pilha de retorno); ou talvez você deseje que a pilha apague
+todas as atividades, exceto a atividade raiz, quando o usuário sai da tarefa.</p>
+
+<p>É possível fazer tudo isso e muito mais com atributos
+no elemento <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> do manifesto
+ e com sinalizadores na intenção passada
+a {@link android.app.Activity#startActivity startActivity()}.</p>
+
+<p>Com relação a isso, os principais atributos <a href="{@docRoot}guide/topics/manifest/activity-element.html">
+{@code &lt;activity&gt;}</a> que podem ser usados são:</p>
+
+<ul class="nolist">
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">
+  {@code taskAffinity}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">
+  {@code launchMode}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+  {@code allowTaskReparenting}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">
+  {@code clearTaskOnLaunch}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+  {@code alwaysRetainTaskState}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">
+  {@code finishOnTaskLaunch}</a></li>
+</ul>
+
+<p>E os principais sinalizadores de intenção que podem ser usados são:</p>
+
+<ul class="nolist">
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</li>
+</ul>
+
+<p>Nas seções a seguir, você verá como usar esses atributos de manifesto e sinalizadores
+de intenção para definir como as atividades são associadas a tarefas e como elas se comportam na pilha de retorno.</p>
+
+<p>Além disso, são discutidas separadamente as considerações sobre como tarefas e atividades podem ser representadas
+e gerenciadas na tela de visão geral. Consulte <a href="{@docRoot}guide/components/recents.html">Tela de visão geral</a>
+para obter mais informações. Normalmente, é preciso permitir que o sistema defina como as tarefas
+e as atividades são representadas na tela de visão geral e não é necessário modificar esse comportamento.</p>
+
+<p class="caution"><strong>Atenção:</strong> a maioria dos aplicativos não deve interromper o comportamento
+padrão de atividades e tarefas. Se você determinar que é necessário modificar os comportamentos padrão
+da atividade, seja prudente e certifique-se de testar a capacidade de uso da atividade durante
+a inicialização e ao navegar de volta para ela de outras atividades e tarefas com o botão <em>Voltar</em>.
+Certifique-se de testar os comportamentos de navegação que podem entrar em conflito com o comportamento esperado pelo usuário.</p>
+
+
+<h3 id="TaskLaunchModes">Definição de modos de inicialização</h3>
+
+<p>Os modos de inicialização permitem definir a forma com que uma nova instância de uma atividade é associada
+à tarefa atual. Pode-se definir diferentes modos de inicialização de duas maneiras:</p>
+<ul class="nolist">
+  <li><a href="#ManifestForTasks">Usando o arquivo de manifesto</a>
+    <p>Ao declarar uma atividade em um arquivo de manifesto, pode-se especificar como a atividade
+deve associar-se a tarefas quando ela inicia.</li>
+  <li><a href="#IntentFlagsForTasks">Usando sinalizadores de intenção</a>
+    <p>Ao chamar {@link android.app.Activity#startActivity startActivity()},
+é possível incluir um sinalizador na {@link android.content.Intent} que declara como
+(ou se) a nova atividade deve associar-se à tarefa atual.</p></li>
+</ul>
+
+<p>Assim, se a atividade A iniciar a atividade B, a atividade B poderá definir no manifesto como
+deve associar-se à tarefa atual (se ocorrer) e a atividade A poderá solicitar o modo pelo qual a atividade
+B deverá associar-se à tarefa atual. Se ambas as atividades definem como a atividade B
+deve associar-se a uma tarefa, a solicitação da atividade A (como definido na intenção) sobrepõe
+a solicitação da atividade B (como definido no seu manifesto).</p>
+
+<p class="note"><strong>Observação:</strong> Alguns modos de inicialização disponíveis para o arquivo de manifesto
+não estão disponíveis como sinalizadores para uma intenção e, do mesmo modo, alguns modos de inicialização disponíveis como sinalizadores
+de uma intenção não podem ser definidos no manifesto.</p>
+
+
+<h4 id="ManifestForTasks">Uso do arquivo de manifesto</h4>
+
+<p>Ao declarar uma atividade no arquivo de manifesto, pode-se especificar como a atividade
+deve associar-se a tarefas usando o atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> do elemento
+<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>.</p>
+
+<p>O atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> especifica uma instrução sobre como a atividade deve ser inicializada
+em uma tarefa. Há quatro modos diferentes de inicialização que podem ser designados ao atributo 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">launchMode</a></code>:
+</p>
+
+<dl>
+<dt>{@code "standard"} (o modo padrão)</dt>
+  <dd>Padrão. O sistema cria uma nova instância da atividade na tarefa
+pela qual foi iniciada e encaminha-lhe a intenção. A atividade pode ser instanciada diversas vezes;
+cada instância pode pertencer a diferentes tarefas e uma tarefa pode ter diversas instâncias.</dd>
+<dt>{@code "singleTop"}</dt>
+  <dd>Se uma instância da atividade já existir no topo da tarefa atual, o sistema
+encaminhará a intenção àquela instância por meio de uma chamada do método {@link
+android.app.Activity#onNewIntent onNewIntent()} em vez de criar uma nova instância
+da atividade. A atividade pode ser instanciada diversas vezes; cada instância pode
+pertencer a diferentes tarefas e uma tarefa pode ter diversas instâncias (mas somente se
+a atividade no topo da pilha de retorno <em>não</em> for uma instância existente da atividade).
+  <p>Por exemplo: suponhamos que uma pilha de retorno da tarefa consista na atividade raiz A com as atividades B, C e
+D no topo (a pilha é A-B-C-D, com D no topo). Uma intenção chega de uma atividade de tipo D.
+Se D for o modo de inicialização {@code "standard"} padrão, uma nova instância da classe será inicializada
+e a tarefa se tornará A-B-C-D-D. Entretanto, se o modo de inicialização de D for {@code "singleTop"}, a instância existente
+de D receberá a intenção por {@link
+android.app.Activity#onNewIntent onNewIntent()} porque ela está no topo da pilha &mdash;
+a pilha permanece A-B-C-D. Contudo, se uma intenção chegar de uma atividade de tipo B, uma nova
+instância de B será adicionada à pilha, mesmo que o modo de inicialização seja {@code "singleTop"}.</p>
+  <p class="note"><strong>Observação:</strong> quando uma nova instância de uma atividade é criada,
+o usuário pode pressionar o botão <em>Voltar</em> para retornar à atividade anterior. Porém, quando uma
+instância
+existente de uma atividade trata de uma nova intenção, o usuário não pode pressionar o botão <em>Voltar</em> para retornar
+ao estado
+da atividade antes que a nova intenção chegue em {@link android.app.Activity#onNewIntent
+onNewIntent()}.</p>
+</dd>
+
+<dt>{@code "singleTask"}</dt>
+  <dd>O sistema cria uma nova tarefa e instancia a atividade em sua raiz.
+Entretanto, se uma instância da atividade já existir em uma tarefa separada, o sistema encaminhará
+a intenção àquela instância por meio de uma chamada do método {@link
+android.app.Activity#onNewIntent onNewIntent()} em vez de criar uma nova instância. Somente
+uma instância da atividade pode existir por vez.
+  <p class="note"><strong>Observação:</strong> embora a atividade inicie em uma nova tarefa, o botão 
+<em>Voltar</em> ainda direciona o usuário à atividade anterior.</p></dd>
+<dt>{@code "singleInstance"}.</dt>
+  <dd>Igual à {@code "singleTask"}, exceto que o sistema não inicializa nenhuma outra atividade
+na tarefa que contém a instância. A atividade é sempre o único e exclusivo membro de sua tarefa;
+toda atividade iniciada por ela abre em uma tarefa separada.</dd>
+</dl>
+
+
+<p>Outro exemplo: o aplicativo Navegador do Android declara que a atividade do navegador da web deve
+sempre abrir na própria tarefa &mdash; especificando o modo de inicialização {@code singleTask} no elemento <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>.
+Isso significa que, se o aplicativo emite uma
+intenção para abrir o navegador do Android, sua atividade <em>não</em> é colocada na mesma
+tarefa do aplicativo. Em vez disso, uma nova tarefa inicia para o navegador ou, se o navegador
+já possui uma tarefa em execução em segundo plano, essa tarefa é colocada em primeiro plano para tratar a nova
+intenção.</p>
+
+<p>Se uma atividade inicia em uma nova tarefa ou na mesma tarefa que a atividade que
+a iniciou, o botão <em>Voltar</em> sempre direciona o usuário à atividade anterior. Porém, se você
+iniciar uma atividade que especifica o modo de inicialização {@code singleTask} e se uma instância
+dessa atividade existir em uma tarefa de segundo plano, toda a tarefa será colocada em primeiro plano. Nesse
+momento, a pilha de retorno conterá todas as atividades da tarefa colocada em primeiro plano
+no topo. A figura 4 ilustra essa situação.</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack_singletask_multiactivity.png" alt="" />
+<p class="img-caption"><strong>Figura 4.</strong> Representação de como uma atividade
+com modo de inicialização "singleTask" é adicionada à pilha de retorno. Se a atividade já for parte de uma tarefa
+de segundo plano com a própria pilha de retorno, toda a pilha também virá
+para primeiro plano, no topo da tarefa atual.</p>
+
+<p>Para obter mais informações sobre o uso de modos de inicialização no arquivo de manifesto, consulte a documentação do elemento
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, onde o atributo {@code launchMode} e os valores aceitos
+são discutidos mais aprofundadamente.</p>
+
+<p class="note"><strong>Observação:</strong> os comportamentos a especificar para a atividade com o atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+ podem ser neutralizados por sinalizadores incluídos na intenção que inicia a atividade, conforme abordado
+na próxima seção.</p>
+
+
+
+<h4 id="#IntentFlagsForTasks">Uso de sinalizadores de intenção</h4>
+
+<p>Ao iniciar uma atividade, é possível modificar a associação padrão de uma atividade à tarefa
+incluindo sinalizadores na intenção fornecida a {@link
+android.app.Activity#startActivity startActivity()}. Os sinalizadores que podem ser usados para modificar
+o comportamento padrão são:</p>
+
+<p>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</dt>
+    <dd>Inicia a atividade em uma nova tarefa. Se uma tarefa já estiver em execução para a atividade que você está
+iniciando agora, ela será colocada em primeiro plano com o último estado restaurado e a atividade
+receberá a nova intenção em {@link android.app.Activity#onNewIntent onNewIntent()}.
+    <p>Isso produz o mesmo comportamento que o valor {@code "singleTask"} do <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>,
+abordado na seção anterior.</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</dt>
+    <dd>Se a atividade iniciada for a atual (no topo da pilha de retorno),
+a instância existente receberá uma chamada de {@link android.app.Activity#onNewIntent onNewIntent()}
+em vez de criar uma nova instância da atividade.
+    <p>Isso produz o mesmo comportamento que o valor {@code "singleTop"} do <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+abordado na seção anterior.</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</dt>
+    <dd>Se a atividade iniciada já estiver em execução na tarefa atual, em vez
+de lançar uma nova instância daquela atividade, todas as outras atividades no topo dela serão
+destruídas e essa intenção será entregue à instância reiniciada da atividade (agora no topo)
+por {@link android.app.Activity#onNewIntent onNewIntent()}.
+    <p>Não há nenhum valor para o atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+ que produza esse comportamento.</p>
+    <p>{@code FLAG_ACTIVITY_CLEAR_TOP} é mais usado em conjunto com
+    {@code FLAG_ACTIVITY_NEW_TASK}.
+Quando usados juntos, estes sinalizadores são o modo de localizar uma atividade existente
+em outra tarefa e colocá-la em uma posição em que possa responder à intenção. </p>
+    <p class="note"><strong>Observação:</strong> se o modo de inicialização da atividade designada for
+{@code "standard"},
+ela também será removida da pilha e uma nova instância será iniciada em seu lugar para tratar
+a intenção recebida.  Isso se deve ao fato de que uma nova instância é sempre criada para uma nova intenção quando o
+modo de inicialização é {@code "standard"}. </p>
+</dd>
+</dl>
+
+
+
+
+
+<h3 id="Affinities">Tratamento de afinidades</h3>
+
+<p>A <em>afinidade</em> indica a que tarefa uma atividade prefere pertencer. Por padrão, todas
+as atividades do mesmo aplicativo têm afinidade entre si. Assim, por padrão, todas
+as atividades no mesmo aplicativo preferem estar na mesma tarefa. Contudo, é possível modificar
+a afinidade padrão de uma atividade. Atividades definidas
+em aplicativos diferentes podem compartilhar uma afinidade, ou atividades definidas no mesmo aplicativo podem ter
+diferentes afinidades de tarefa atribuídas.</p>
+
+<p>É possível modificar a afinidade de qualquer atividade com o atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+ do elemento
+<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>.</p>
+
+<p>O atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+ recebe um valor de string que deve ser exclusivo do nome do pacote padrão
+declarado no elemento <a href="{@docRoot}guide/topics/manifest/manifest-element.html">
+{@code &lt;manifest&gt;}
+</a> porque o sistema usa esse nome para identificar a afinidade
+de tarefa padrão do aplicativo.</p>
+
+<p>A afinidade tem relevância em duas circunstâncias:</p>
+<ul>
+  <li>Quando a intenção que inicializa uma atividade contém
+  o sinalizador
+  {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}.
+
+<p>Uma nova atividade é, por padrão, inicializada na tarefa da atividade
+que chamou {@link android.app.Activity#startActivity startActivity()}. Ela é colocada na mesma
+pilha de retorno do autor da chamada.  Contudo, se a intenção passada a
+{@link android.app.Activity#startActivity startActivity()}
+contiver o sinalizador {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}
+, o sistema procurará uma tarefa diferente para comportar a nova atividade. Na maioria das vezes, é uma nova tarefa.
+Porém, isso não é obrigatório.  Se já houver uma tarefa com a mesma afinidade
+da nova atividade, ela será inicializada naquela tarefa.  Caso contrário, ela iniciará uma nova tarefa.</p>
+
+<p>Se esse sinalizador fizer com que uma atividade inicie uma nova tarefa e se o usuário pressionar o botão <em>Página inicial</em>
+para sair dela,
+ será necessário ter um modo de o usuário navegar de volta à tarefa. Algumas entidades (como
+o gerenciador de notificação) sempre iniciam atividades em tarefas externas, nunca como parte de si mesmas, por isso
+elas sempre colocam {@code FLAG_ACTIVITY_NEW_TASK} nas intenções que passam
+a {@link android.app.Activity#startActivity startActivity()}.
+Se você tiver uma atividade que possa ser chamada
+por uma entidade externa que possa usar este sinalizador, certifique-se de que o usuário tenha um modo independente
+de voltar à tarefa iniciada, como com um ícone de inicialização (a atividade raiz da tarefa
+tem um filtro de intenções {@link android.content.Intent#CATEGORY_LAUNCHER}; consulte a seção <a href="#Starting">Início de uma tarefa</a> abaixo).</p>
+</li>
+
+  <li>Quando uma atividade tem o atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+{@code allowTaskReparenting}</a> definido como {@code "true"}.
+  <p>Nesse caso, a atividade pode mover-se da tarefa que iniciou para a tarefa afim
+quando for colocada em primeiro plano.</p>
+  <p>Por exemplo: suponhamos que uma atividade que relate condições do clima em cidades selecionadas seja
+definida como parte de um aplicativo de viagens.  Ela tem a mesma afinidade que outras atividades no mesmo
+aplicativo (a afinidade padrão do aplicativo) e permite a redefinição da hierarquia com esse atributo.
+Quando uma das atividades inicia a atividade de notificação de clima, ela inicialmente pertence à mesma
+tarefa de sua atividade. Porém, quando a tarefa do aplicativo de viagens é colocada em primeiro plano,
+a atividade de notificação de clima é reatribuída a essa tarefa e exibida dentro dela.</p>
+</li>
+</ul>
+
+<p class="note"><strong>Dica:</strong> se um arquivo {@code .apk} contiver mais de um "aplicativo"
+do ponto de vista do usuário, você provavelmente desejará usar o atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+ para designar diferentes afinidades às atividades associadas a cada "aplicativo".</p>
+
+
+
+<h3 id="Clearing">Apagar a pilha de retorno</h3>
+
+<p>Se o usuário sair de uma tarefa por muito tempo, o sistema apagará a tarefa de todas as atividades exceto
+a da atividade raiz.  Quando o usuário retornar à tarefa, somente a atividade raiz será restaurada.
+O sistema comporta-se dessa maneira porque, após longo tempo de uso, os usuários provavelmente abandonaram
+o que estavam fazendo antes e são direcionados de volta à tarefa para começar algo novo. </p>
+
+<p>Há alguns atributos de atividade que podem ser usados para modificar esse comportamento: </p>
+
+<dl>
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#always">alwaysRetainTaskState</a></code>
+</dt>
+<dd>Se esse atributo for definido como {@code "true"} na atividade raiz de uma tarefa,
+o comportamento padrão descrito não acontecerá.
+A tarefa reterá todas as atividades em sua pilha mesmo após um longo período.</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#clear">clearTaskOnLaunch</a></code></dt>
+<dd>Se esse atributo for definido como {@code "true"} na atividade raiz de uma tarefa,
+a pilha será apagada da atividade raiz sempre que o usuário sair da tarefa
+e retornar a ela.  Em outras palavras, é o oposto de 
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+{@code alwaysRetainTaskState}</a>. O usuário sempre retorna à tarefa
+no estado inicial, mesmo ao retirar-se da tarefa somente por um momento.</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#finish">finishOnTaskLaunch</a></code>
+</dt>
+<dd>Esse atributo é como <a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">{@code clearTaskOnLaunch}</a>,
+mas opera
+em uma única atividade, e não em uma tarefa inteira.  Ele também apaga todas as atividades,
+inclusive a atividade raiz.  Quando definido como {@code "true"},
+a atividade permanece parte da tarefa somente para a sessão atual.  Se o usuário
+retirar-se e, em seguida, retornar à tarefa, ela não estará mais presente.</dd>
+</dl>
+
+
+
+
+<h3 id="Starting">Início de uma tarefa</h3>
+
+<p>É possível configurar uma atividade como ponto de entrada de uma tarefa fornecendo-lhe um filtro de intenções
+com {@code "android.intent.action.MAIN"} como a ação especificada
+e {@code "android.intent.category.LAUNCHER"}
+como a categoria especificada. Por exemplo:</p>
+
+<pre>
+&lt;activity ... &gt;
+    &lt;intent-filter ... &gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+    ...
+&lt;/activity&gt;
+</pre>
+
+<p>Um filtro de intenções desse tipo faz com que um ícone e o rótulo
+da atividade sejam exibidos no inicializador do aplicativo, fornecendo aos usuários um modo de inicializar a atividade
+e de retornar à tarefa criada a qualquer tempo após sua inicialização.
+</p>
+
+<p>Este segundo recurso é importante: é preciso que os usuários possam sair de uma tarefa e voltar a ela
+mais tarde usando esse inicializador de atividades. Por isso, os dois <a href="#LaunchModes">modos
+de inicialização</a> que marcam atividades como sempre iniciando uma tarefa ({@code "singleTask"} e
+{@code "singleInstance"}) devem ser usados somente quando a atividade tiver um filtro
+{@link android.content.Intent#ACTION_MAIN}
+e um {@link android.content.Intent#CATEGORY_LAUNCHER}. Imagine, por exemplo, o que
+aconteceria se o filtro não estivesse presente: uma intenção inicializaria uma atividade {@code "singleTask"}, iniciando uma
+nova tarefa, e o usuário perderia algum tempo trabalhando nessa tarefa. O usuário, então, pressiona o botão
+<em>Página inicial</em>. A tarefa é enviada para segundo plano e não fica mais visível. O usuário não tem como voltar
+à tarefa porque ela não é representada no inicializador do aplicativo.</p>
+
+<p>Para esses casos em que se deseja que o usuário não seja capaz de retornar a uma atividade, defina 
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">{@code finishOnTaskLaunch}</a>
+ do elemento 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+como {@code "true"} (consulte <a href="#Clearing">Apagar a pilha</a>).</p>
+
+<p>Veja mais informações sobre a representação e o gerenciamento de atividades 
+na tela de visão geral em <a href="{@docRoot}guide/components/recents.html">
+Tela de visão geral</a>.</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how to use intents to
+activate other application components and publish the intents to which your components
+respond, continue with the <b><a
+href="{@docRoot}guide/components/intents-filters.html">Intents and Intent
+Filters</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/pt-br/guide/index.jd b/docs/html-intl/intl/pt-br/guide/index.jd
new file mode 100644
index 0000000..ab39647
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/index.jd
@@ -0,0 +1,74 @@
+page.title=Introdução ao Android
+
+@jd:body
+
+
+<div class="sidebox" style="width:220px"><!-- width to match col-4 below -->
+<p>Para saber como os aplicativos funcionam, comece com
+<a href="{@docRoot}guide/components/fundamentals.html">Fundamentos do aplicativo</a>.</p>
+<p>Para começar a programar imediatamente, leia <a href="{@docRoot}training/basics/firstapp/index.html">Criação do primeiro aplicativo</a>.</p>
+</div>
+
+<p>O Android fornece uma estrutura de aplicativo rica que permite criar aplicativos e jogos inovadores
+para dispositivos móveis em um ambiente de linguagem Java. Os documentos listados na navegação
+à esquerda fornecem detalhes da criação de aplicativos usando as várias APIs do Android.</p>
+
+<p>Se você é novo no desenvolvimento para Android, é importante que entenda
+os seguintes conceitos fundamentais sobre a estrutura de aplicativos do Android:</p>
+
+
+<div class="landing-banner">
+
+<div class="col-6">
+
+<h4>Aplicativos oferecem vários pontos de entrada</h4>
+
+<p>Aplicativos para Android são criados como uma combinação de componentes distintos que podem ser invocados
+individualmente. Por exemplo, uma <em>atividade</em> individual fornece uma única
+tela para a interface de usuário e um <em>serviço</em> realiza trabalho
+em segundo plano de forma independente.</p>
+
+<p>De um componente, é possível executar outro componente usando uma <em>intenção</em>. É possível até mesmo
+iniciar um componente em um aplicativo diferente, como uma atividade em um aplicativo de mapas para mostrar um endereço. Esse modelo 
+fornece vários pontos de entrada para um único aplicativo e permite que qualquer aplicativo se comporte como o "padrão" de um usuário
+para uma ação que outros aplicativos podem invocar.</p>
+
+
+<p><b>Saiba mais:</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/components/fundamentals.html">Fundamentos de aplicativos</a>
+<li><a href="{@docRoot}guide/components/intents-filters.html">Intenções e filtros de intenções</a>
+<li><a href="{@docRoot}guide/components/activities.html">Atividades</a>
+</ul>
+
+</div>
+
+
+<div class="col-6">
+
+<h4>Os aplicativos se adaptam a diferentes dispositivos</h4>
+
+<p>O Android fornece uma estrutura de aplicativo adaptativa que permite fornecer recursos exclusivos para
+diferentes configurações de dispositivos. Por exemplo, é possível criar diferentes arquivos XML
+de layout para diversos tamanhos de tela e o sistema
+determina qual layout deverá aplicar com base no tamanho da tela do dispositivo atual.</p>
+
+<p>Você pode consultar a disponibilidade dos recursos do dispositivo em tempo de execução se qualquer recurso do 
+aplicativo exigir hardware específico, como uma câmera. Se necessário, também é possível declarar recursos que o aplicativo exige,
+para que mercados como a Google Play Store não permitam a instalação em dispositivos que não sejam compatíveis
+com aquele recurso.</p>
+
+
+<p><b>Saiba mais:</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/practices/compatibility.html">Compatibilidade do dispositivo</a>
+<li><a href="{@docRoot}guide/topics/resources/overview.html">Visão geral dos recursos</a>
+<li><a href="{@docRoot}guide/topics/ui/overview.html">Visão geral da interface do usuário</a>
+</ul>
+
+</div>
+
+</div><!-- end landing-banner -->
+
+
+
diff --git a/docs/html-intl/intl/pt-br/guide/topics/manifest/manifest-intro.jd b/docs/html-intl/intl/pt-br/guide/topics/manifest/manifest-intro.jd
new file mode 100644
index 0000000..e337796
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/manifest/manifest-intro.jd
@@ -0,0 +1,517 @@
+page.title=Manifesto do aplicativo
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Neste documento</h2>
+<ol>
+<li><a href="#filestruct">Estrutura do arquivo de manifesto</a></li>
+<li><a href="#filec">Convenções de arquivos</a>
+<li><a href="#filef">Características do arquivo</a>
+	<ol>
+	<li><a href="#ifs">Filtros de intenções</a></li>
+	<li><a href="#iconlabel">Ícones e etiquetas</a></li>
+	<li><a href="#perms">Permissões</a></li>
+	<li><a href="#libs">Bibliotecas</a></li>
+	</ol></li>
+</ol>
+</div>
+</div>
+
+<p>
+  Todo aplicativo tem que ter um arquivo AndroidManifest.xml (precisamente
+com esse nome) no seu diretório raiz. <span itemprop="description">O arquivo de manifesto
+apresenta informações essenciais sobre o aplicativo ao sistema Android,
+necessárias para o sistema antes que ele possa executar o código
+do aplicativo.</span> Entre outras coisas, o manifesto serve para:
+</p>
+
+<ul>
+<li>Nomear o pacote Java para o aplicativo.
+O nome do pacote serve como identificador exclusivo para o aplicativo.</li>
+
+<li>Descrever os componentes do aplicativo &mdash; as atividades,
+os serviços, os receptores de transmissão e os provedores de conteúdo que compõem
+o aplicativo.  Nomear as classes que implementam os componentes
+e publicam seus recursos (por exemplo, que mensagens {@link android.content.Intent 
+Intent} eles podem tratar).  Essas declarações permitem ao sistema Android
+saber quais são os componentes e em que condições eles podem ser iniciados.</li>
+
+<li>Determinar que processos hospedarão componentes de aplicativo.</li>  
+
+<li>Declarar as permissões que o aplicativo deve ter para acessar
+partes protegidas da API e interagir com outros aplicativos.</li>  
+
+<li>Declarar também as permissões que outros devem ter
+para interagir com os componentes do aplicativo.</li>
+
+<li>Listar as classes {@link android.app.Instrumentation} que fornecem
+geração de perfil e outras informações durante a execução do aplicativo.  Essas declarações
+estão presentes no manifesto somente enquanto o aplicativo está em desenvolvimento
+e teste — elas são removidas antes da publicação do aplicativo.</li>
+
+<li>Declarar o nível mínimo da API do Android que o aplicativo
+exige.</li>
+
+<li>Listar as bibliotecas às quais o aplicativo deve se vincular.</li>
+</ul>
+
+
+<h2 id="filestruct">Estrutura do arquivo de manifesto</h2>
+
+<p>
+O diagrama ilustra a estrutura geral do arquivo de manifesto e cada
+elemento que ele pode conter.  Cada elemento e seus atributos
+são documentados na totalidade em um arquivo separado.  Para exibir informações detalhadas
+sobre cada elemento, clique no nome do elemento no diagrama,
+na lista de elementos em ordem alfabética que acompanha o diagrama
+ou em qualquer outra menção ao nome do elemento. 
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration /&gt;</a>  <!-- ##api level 3## -->
+    <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html">&lt;compatible-screens /&gt;</a>  <!-- ##api level 9## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-gl-texture-element.html">&lt;supports-gl-texture /&gt;</a>  <!-- ##api level 11## -->
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;/activity&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;/activity-alias&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data/&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;/service&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;/receiver&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/path-permission-element.html">&lt;path-permission /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;/provider&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library /&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;/application&gt;</a>
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;/manifest&gt;</a>
+</pre>
+
+<p>
+Todos os elementos que podem aparecer no arquivo de manifesto estão
+relacionados abaixo em ordem alfabética.  Estes são os únicos elementos legais. Não é possível
+adicionar elementos ou atributos próprios.  
+</p>
+
+<p style="margin-left: 2em">
+<code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration&gt;</a></code>  <!-- ##api level 3## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></code>
+</p>
+
+
+    
+
+<h2 id="filec">Convenções de arquivos</h2>
+
+<p>
+Algumas convenções e regras se aplicam geralmente a todos os elementos e atributos
+no manifesto:
+</p>
+
+<dl>
+<dt><b>Elementos</b></dt>
+<dd>Somente os elementos
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+e <code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+são necessários — eles devem estar presentes e ocorrer somente uma vez.  
+A maioria dos outros pode ocorrer diversas vezes ou nunca &mdash; embora
+pelo menos alguns deles devam estar presentes para que o manifesto
+realize algo significativo.
+
+<p>
+Se um elemento contiver qualquer coisa, ele conterá outros elementos.  
+Todos os valores são definidos por meio de atributos, e não como dados de caracteres dentro de um elemento.
+</p>
+
+<p>
+Elementos de mesmo nível geralmente não são ordenados.  Por exemplo: os elementos
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>, 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+e <code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> 
+podem ser combinados entre si em qualquer sequência.  (O elemento 
+<code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+é uma exceção a essa regra:  ele deve seguir o 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 
+para o qual é alias.)
+</p></dd>
+
+<dt><b>Atributos</b></dt>
+<dd>Formalmente, todos os atributos são opcionais.  No entanto, alguns deles
+devem ser especificados para um elemento para cumprir a sua finalidade.  Use
+a documentação como guia.  Para atributos verdadeiramente opcionais, ele menciona
+um valor padrão ou declara o que acontece na ausência de uma especificação.
+
+<p>Exceto por alguns atributos do elemento 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+raiz, todos os nomes de atributo têm um prefixo {@code android:} &mdash; 
+por exemplo, {@code android:alwaysRetainTaskState}.  Como o prefixo é universal,
+a documentação geralmente o omite ao referir-se a atributos
+pelo nome.</p></dd>
+
+<dt><b>Declaração de nomes de classe</b></dt>
+<dd>Muitos elementos correspondem a objetos Java, inclusive elementos do próprio
+aplicativo (o elemento 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+) e seus componentes principais &mdash; atividades 
+(<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>), 
+serviços 
+(<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>), 
+receptores de transmissão 
+(<code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>) 
+e provedores de conteúdo 
+(<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>).  
+
+<p>
+Se uma subclasse for definida, como quase sempre acontece para classes de componentes 
+({@link android.app.Activity}, {@link android.app.Service}, 
+{@link android.content.BroadcastReceiver} e {@link android.content.ContentProvider}), 
+a subclasse será declarada por meio de um atributo {@code name}.  O nome deve conter
+toda a designação do pacote.  
+Por exemplo: uma subclasse {@link android.app.Service} pode ser declarada assim:
+</p>
+
+<pre>&lt;manifest . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name="com.example.project.SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+No entanto, para encurtar, se o primeiro caractere da string for um ponto,
+a string será acrescentada ao nome do pacote do aplicativo (conforme especificado pelo atributo 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html#package">package</a></code> 
+ do elemento 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 
+).  A seguinte atribuição é igual à atribuição acima: 
+</p>
+
+<pre>&lt;manifest package="com.example.project" . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name=".SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+Ao iniciar um componente, o Android cria uma instância da subclasse nomeada.  
+Se nenhuma subclasse for especificada, ele criará uma instância da classe base.
+</p></dd>
+
+<dt><b>Vários valores</b></dt>
+<dd>Se for especificado mais de um valor, o elemento sempre será repetido
+em vez de listar os vários valores dentro de um único elemento.  
+Por exemplo, um filtro de intenção pode listar algumas ações:
+
+<pre>&lt;intent-filter . . . &gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.INSERT" /&gt;
+    &lt;action android:name="android.intent.action.DELETE" /&gt;
+    . . .
+&lt;/intent-filter&gt;</pre></dd>
+
+<dt><b>Valores de recurso</b></dt>
+<dd>Alguns atributos têm valores que podem ser exibidos aos usuários &mdash; por exemplo,
+uma etiqueta e um ícone de uma atividade.  Os valores desses atributos
+devem ser localizados e, por tanto, definidos a partir de um recurso ou tema.  Os valores 
+de recurso são expressos no formato a seguir:</p>
+
+<p style="margin-left: 2em">{@code @[<i>pacote</i>:]<i>tipo</i>:<i>nome</i>}</p>
+
+<p>
+em que o nome do <i>pacote</i> pode ser omitido se o recurso estiver no mesmo pacote
+que o aplicativo <i>tipo</i> é um tipo de recurso &mdash; como uma "string" ou 
+"drawable" (desenhável) &mdash; e <i>nome</i> é o nome que identifica o recurso específico.  
+Por exemplo:
+</p>
+
+<pre>&lt;activity android:icon="@drawable/smallPic" . . . &gt</pre>
+
+<p>
+Os valores de um tema são expressos de forma semelhante, mas, com um '{@code ?}' 
+em vez de '{@code @}':
+</p>
+
+<p style="margin-left: 2em">{@code ?[<i>pacote</i>:]<i>tipo</i>:<i>nome</i>}
+</p></dd>
+
+<dt><b>Valores de string</b></dt>
+<dd>Quando o valor de um atributo é uma string, devem-se usar duas barras invertidas ('{@code \\}') 
+para caracteres de escape &mdash; por exemplo, '{@code \\n}' para 
+uma nova linha ou '{@code \\uxxxx}' para um caractere Unicode.</dd>
+</dl>
+
+
+<h2 id="filef">Características do arquivo</h2>
+
+<p>
+As seções a seguir descrevem como alguns recursos do Android se refletem
+no arquivo de manifesto.
+</p>
+
+
+<h3 id="ifs">Filtros de intenções</h3>
+
+<p>
+Os componentes fundamentais de um aplicativo (suas atividades, serviços e receptores
+de transmissão) são ativados por <i>intenções</i>.  Intenções são
+pacotes de informações (objetos {@link android.content.Intent}) que descrevem
+uma ação desejada &mdash; inclusive os dados usados em ações, a categoria
+do componente que deve executar a ação e outras instruções pertinentes.  
+O Android localiza um componente adequado para responder à intenção, inicia
+uma nova instância do componente se necessário e passa-o
+ao objeto da intenção.
+</p>
+
+<p>
+Os componentes anunciam seus recursos &mdash; os tipos de intenção aos quais eles podem
+responder &mdash; por meio de <i>filtros de intenções</i>.  Como o sistema Android
+precisa saber que intenções um componente pode tratar antes de iniciá-lo, os filtros
+de intenções são especificados no manifesto como elementos 
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+.  Os componentes podem ter qualquer quantidade de filtros, em que cada um descreve
+um recurso diferente.
+</p>
+
+<p>
+A intenção que nomeia explicitamente um componente alvo ativará
+aquele componente — o filtro não desempenha nenhuma função.  Porém, uma intenção que não especifica nenhum alvo
+pelo nome pode ativar um componente somente se ele puder passar por um dos filtros
+do componente.
+</p>
+
+<p>
+Para ver como os objetos de intenção são testados em relação aos filtros de intenções,
+consulte o documento 
+<a href="{@docRoot}guide/components/intents-filters.html">Intenções 
+e filtros de intenções</a> em separado.
+</p>
+
+
+<h3 id="iconlabel">Ícones e etiquetas</h3>
+
+<p>
+Alguns elementos têm atributos {@code icon} e {@code label} de um pequeno ícone
+e uma etiqueta de texto que pode ficar visível para os usuários.  Alguns deles também têm um atributo 
+{@code description} para um texto explicativo mais longo que também pode ser 
+exibido na tela.  Por exemplo: o elemento 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+tem todos os três atributos; assim, quando o usuário é consultado para dar 
+permissão a um aplicativo que a solicitou, serão apresentados ao usuário um ícone 
+que representa a permissão, o nome da permissão e uma descrição 
+de tudo o que está envolvido.
+</p>
+
+<p>
+Em todo caso, o ícone e a etiqueta definidos em um elemento recipiente se tornam as configurações 
+{@code icon} e {@code label} padrão de todos os subelementos do contêiner.  
+Assim, o ícone e a etiqueta definidos no elemento 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+são o ícone e a etiqueta padrão para cada um dos componentes do aplicativo.  
+Da mesma forma, o ícone e a etiqueta definidos para um componente &mdash; por exemplo, um elemento 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 
+ &mdash; são as configurações padrão para cada um dos elementos 
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code> 
+do componente.  Se um elemento
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+define uma etiqueta, mas uma atividade e seu filtro de intenção não definem, 
+a etiqueta do aplicativo é tratada como a etiqueta de atividade 
+e do filtro de intenção.
+</p>
+
+<p>
+O ícone e a etiqueta definidos para um filtro de intenção são usados para representar um componente 
+apresentado para o usuário para preencher a função
+anunciada pelo filtro.  Por exemplo: um filtro com as configurações 
+"{@code android.intent.action.MAIN}" e 
+"{@code android.intent.category.LAUNCHER}" anuncia uma atividade 
+como uma que inicia um aplicativo &mdash; ou seja,
+que deve ser exibida no inicializador do aplicativo.  O ícone e a etiqueta 
+definidos no filtro são, portanto, as exibidas no inicializador.
+</p>
+
+
+<h3 id="perms">Permissões</h3>
+
+<p>
+As <i>permissões</i> são restrições que limitam o acesso a parte do código 
+ou aos dados de um dispositivo.   A limitação é imposta para proteger dados 
+essenciais que podem sofrer mau uso e distorções ou prejudicar a experiência do usuário.  
+</p>
+
+<p>
+Cada permissão é identificada por uma etiqueta exclusiva.  Geralmente a etiqueta indica 
+a ação que foi restringida.  A seguir há alguns exemplos de permissões definidas 
+pelo Android:
+</p>
+
+<p style="margin-left: 2em">{@code android.permission.CALL_EMERGENCY_NUMBERS}
+<br/>{@code android.permission.READ_OWNER_DATA}
+<br/>{@code android.permission.SET_WALLPAPER}
+<br/>{@code android.permission.DEVICE_POWER}</p>
+
+<p>
+Um recurso pode ser protegido por, no máximo, uma permissão.
+</p>
+
+<p>
+Se um aplicativo precisar de acesso a um recurso protegido por uma permissão, 
+ele deve declarar que precisa da permissão com um elemento 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 
+no manifesto.  Assim, quando o aplicativo é instalado 
+no dispositivo, o instalador determina se concederá ou não a permissão 
+solicitada, marcando as autoridades que assinaram os certificados 
+do aplicativo e, em alguns casos, perguntando ao usuário.  
+Se a permissão for concedida, o aplicativo será capaz de usar os recursos 
+protegidos.  Caso contrário, sua tentativa de acessar esses recursos simplesmente falhará 
+sem nenhuma notificação ao usuário. 
+</p>
+
+<p>
+Um aplicativo também pode proteger seus componentes (atividades, serviços, 
+receptores de transmissão e provedores de conteúdo) com permissões.  Ele pode empregar 
+qualquer uma das permissões definidas pelo Android (listadas em 
+{@link android.Manifest.permission android.Manifest.permission}) ou declaradas 
+por outros aplicativos.  Ou então, ele pode definir as suas próprias.  As novas permissões são declaradas 
+com o elemento 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>.
+  Por exemplo: uma atividade pode ser protegida da seguinte forma:
+</p>
+
+<pre>
+&lt;manifest . . . &gt;
+    &lt;permission android:name="com.example.project.DEBIT_ACCT" . . . /&gt;
+    &lt;uses-permission android:name="com.example.project.DEBIT_ACCT" /&gt;
+    . . .
+    &lt;application . . .&gt;
+        &lt;activity android:name="com.example.project.FreneticActivity"
+                  android:permission="com.example.project.DEBIT_ACCT"
+                  . . . &gt;
+            . . .
+        &lt;/activity&gt;
+    &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>
+Observe que, nesse exemplo, a permissão {@code DEBIT_ACCT}, além de declarada
+com o elemento 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+, tem seu uso solicitado com o elemento 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>.
+  Ela deve ser solicitada para que outros componentes do aplicativo
+iniciem a atividade protegida, mesmo que a proteção 
+seja imposta pelo próprio aplicativo.  
+</p>
+
+<p>
+Se, no mesmo exemplo, o atributo {@code permission} fosse definido
+como uma permissão declarada em outro lugar 
+(como {@code android.permission.CALL_EMERGENCY_NUMBERS}), não seria
+necessário declará-la novamente com um elemento 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>.
+  No entanto, ainda seria necessário solicitar seu uso com 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>. 
+</p>
+
+<p>
+O elemento 
+<code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code> 
+declara um espaço de nome de um grupo de permissões que será definido 
+no código.  E 
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+define um etiqueta de um conjunto de permissões (os dois declarados no manifesto com elementos 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+e as declaradas em outro lugar).  Ele afeta somente a forma com que as permissões estão 
+agrupadas quando apresentadas ao usuário.  O elemento 
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+não especifica que permissões pertencem ao grupo; 
+ele só dá um nome ao grupo.  Para incluir uma permissão no grupo,
+designa-se o nome do grupo ao atributo 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html#pgroup">permissionGroup</a></code> 
+ do elemento 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>.
+
+</p>
+
+
+<h3 id="libs">Bibliotecas</h3>
+
+<p>
+Todo aplicativo está vinculado à biblioteca Android padrão, que 
+contém os pacotes básicos para programar aplicativos (com classes comuns 
+tais como Activity, Service, Intent, View, Button, Application, ContentProvider
+etc.).
+</p>
+
+<p>
+No entanto, alguns pacotes residem em suas próprias bibliotecas.  Se o aplicativo 
+usar código de algum desses pacotes, ele deve receber solicitação explícita para ser 
+vinculado a eles.  O manifesto deve conter um elemento 
+<code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
+ separado para nomear cada uma das bibliotecas  (o nome da biblioteca se encontra 
+na documentação do pacote).
+</p>
diff --git a/docs/html-intl/intl/pt-br/guide/topics/providers/calendar-provider.jd b/docs/html-intl/intl/pt-br/guide/topics/providers/calendar-provider.jd
new file mode 100644
index 0000000..ce72b7d
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/providers/calendar-provider.jd
@@ -0,0 +1,1184 @@
+page.title=Provedor de agenda
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>Neste documento</h2>
+    <ol>
+  <li><a href="#overview">Conceitos básicos</a></li>
+  <li><a href="#manifest">Permissões do usuário</a></li>
+  <li><a href="#calendar">Tabela de agenda</a>
+<ol>
+      <li><a href="#query">Consulta em uma agenda</a></li>
+      <li><a href="#modify-calendar">Modificação de uma agenda</a></li>
+      <li><a href="#insert-calendar">Inserção de uma agenda</a></li>
+    </ol>
+  </li>
+  <li><a href="#events">Tabelas de eventos</a>
+<ol>
+      <li><a href="#add-event">Adição de eventos</a></li>
+      <li><a href="#update-event">Atualização de eventos</a></li>
+      <li><a href="#delete-event">Exclusão de eventos</a></li>
+    </ol>
+  </li>
+  <li><a href="#attendees">Tabela de participantes</a>
+<ol>
+      <li><a href="#add-attendees">Adição de participantes</a></li>
+    </ol>
+  </li>
+  <li><a href="#reminders">Tabela de lembretes</a>
+<ol>
+      <li><a href="#add-reminders">Adição de lembretes</a></li>
+    </ol>
+  </li>
+  <li><a href="#instances">Tabela de instâncias</a>
+  <ol>
+      <li><a href="#query-instances">Consulta na tabela de instâncias</a></li>
+  </ol></li>
+  <li><a href="#intents">Intenções do Agenda</a>
+  <ol>
+      <li><a href="#intent-insert">Uso de uma intenção para inserir um evento</a></li>
+      <li><a href="#intent-edit">Uso de uma intenção para editar um evento</a></li>
+      <li><a href="#intent-view">Uso de intenções para exibir dados de agenda</a></li>
+    </ol>
+  </li>
+  
+  <li><a href="#sync-adapter">Adaptadores de sincronização</a></li>
+</ol>
+
+    <h2>Classes principais</h2>
+    <ol>
+      <li>{@link android.provider.CalendarContract.Calendars}</li>
+      <li>{@link android.provider.CalendarContract.Events}</li>
+      <li>{@link android.provider.CalendarContract.Attendees}</li>
+      <li>{@link android.provider.CalendarContract.Reminders}</li>
+    </ol>
+</div>
+</div>
+
+<p>O Provedor de agenda é um repositório para eventos da agenda do usuário. A
+API do Provedor de Agenda permite consultar, inserir, atualizar e excluir
+operações em agendas, eventos, participantes, lembretes etc.</p>
+
+
+<p>A API do Provedor de Agenda pode ser usada por aplicativos e adaptadores de sincronização. As regras
+variam conforme o tipo de programa que realiza as chamadas. Este documento
+se concentra principalmente no uso da API do Provedor de Agenda como um aplicativo. Veja
+uma discussão sobre as diferenças entre adaptadores de sincronização em
+<a href="#sync-adapter">Adaptadores de sincronização</a>.</p>
+
+
+<p>Normalmente, para ler ou programar dados da agenda, o manifesto de um aplicativo deve
+conter as permissões adequadas descritas em <a href="#manifest">Permissões
+do usuário</a>. Para facilitar a realização de operações comuns, o Provedor
+de Agenda fornece um conjunto de intenções conforme descrito em <a href="#intents">Intenções
+do Agenda</a>. Essas intenções levam os usuários ao aplicativo Agenda para inserir, exibir
+e editar eventos. O usuário interage com o aplicativo Agenda e, em seguida,
+retorna ao aplicativo original. Assim, o aplicativo não precisa solicitar permissões
+nem fornecer uma interface gráfica para exibir ou criar eventos.</p>
+
+<h2 id="overview">Conceitos básicos</h2>
+
+<p>Os <a href="{@docRoot}guide/topics/providers/content-providers.html">provedores de conteúdo</a> armazenam dados e disponibilizam-nos
+para aplicativos. Os provedores de conteúdo oferecidos pela plataforma do Android (inclusive o Provedor de Agenda) normalmente expõem dados como um conjunto de tabelas baseadas em
+um modelo de banco de dados relacional, em que cada linha é um registro e cada coluna são dados
+de um tipo e significado específico. Por meio da API do Provedor de Agenda, aplicativos
+e adaptadores de sincronização podem obter acesso de leitura/gravação às tabelas do banco de dados que armazenam
+dados da agenda do usuário.</p>
+
+<p>Cada provedor de conteúdo expõe uma URI pública (agrupada como
+um objeto {@link android.net.Uri}
+) que identifica exclusivamente seu conjunto de dados.  Um provedor de conteúdo que controla
+diversos conjuntos de dados (diversas tabelas) expõe uma URI separada para cada um.  Todas as
+URIs de provedores começam com a string "content://".  Ela
+identifica os dados como controlados por um provedor de conteúdo. O Provedor
+de Agenda define constantes para as URIs de cada uma das classes (tabelas). Essas
+URIs têm o formato <code><em>&lt;class&gt;</em>.CONTENT_URI</code>. Por exemplo:
+ {@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}.</p>
+
+<p>A figura 1 exibe uma representação gráfica do modelo de dados do Provedor de Agenda. Ela ilustra
+as tabelas e os campos principais que as vinculam entre si.</p>
+
+<img src="{@docRoot}images/providers/datamodel.png" alt="Calendar Provider Data Model" />
+<p class="img-caption"><strong>Figura 1.</strong> Modelo de dados do Provedor de Agenda.</p>
+
+<p>Cada usuário pode ter diversas agendas e diferentes agendas podem ser associadas a diferentes tipos de conta (Google Agenda, Exchange etc.).</p>
+
+<p>O {@link android.provider.CalendarContract} define o modelo de dados de informações relacionadas a eventos e agendas. Esses dados são armazenados em diversas tabelas, que são listadas a seguir.</p>
+
+<table>
+  <tr>
+    <th>Tabela (classe)</th>
+    <th>Descrição</th>
+  </tr>
+  <tr>
+    <td><p>{@link android.provider.CalendarContract.Calendars}</p></td>
+    
+    <td>Essa tabela contém
+as informações específicas da agenda. Cada linha nessa tabela contém os detalhes
+de uma única agenda, como nome, cor, informações de sincronização etc.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Events}</td>
+    
+    <td>Essa tabela contém
+as informações específicas do evento. Cada linha nessa tabela tem as informações de um único
+evento &mdash; por exemplo: título do evento, local, horário de início, horário
+de término etc. O evento pode ocorrer uma vez ou diversas vezes. Os participantes,
+lembretes e propriedades estendidas são armazenados em tabelas separadas. 
+Cada um deles tem um {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}
+que referencia o {@link android.provider.BaseColumns#_ID} na tabela de eventos.</td>
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances}</td>
+    
+    <td>Essa tabela contém os
+horários de início e término para cada ocorrência em um evento. Cada linha nessa tabela
+representa uma única ocorrência do evento. Para eventos de ocorrência única, há um mapeamento 1:1
+de instâncias para eventos. Para eventos recorrentes, diversas linhas correspondentes
+a diversas ocorrências daquele evento são geradas automaticamente.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Attendees}</td>
+    
+    <td>Essa tabela contém
+as informações dos participantes (convidados) do evento. Cada linha representa um único convidado
+de um evento. Ela especifica o tipo de convidado e a resposta quanto à participação do convidado
+no evento.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Reminders}</td>
+    
+    <td>Essa tabela contém os
+dados de alerta/notificação. Cada linha representa um único alerta de um evento. Um evento
+pode ter vários lembretes. O número máximo de lembretes por evento
+é especificado em
+{@link android.provider.CalendarContract.CalendarColumns#MAX_REMINDERS},
+que é definido pelo adaptador de sincronização
+que possui a agenda fornecida. Os lembretes são especificados em minutos antes do evento
+e têm um método que determina a forma de alertar o usuário.</td>
+  </tr>
+  
+</table>
+
+<p>A API do Provedor de Agenda é projetada para ser flexível e poderosa. Ao mesmo tempo,
+é importante fornecer uma boa experiência ao usuário final
+e proteger a integridade da agenda e de seus dados. Para isso, a seguir apresentam-se
+alguns pontos a considerar ao usar a API:</p>
+
+<ul>
+
+<li><strong>Inserção, atualização e exibição de eventos da agenda.</strong> Para inserir, modificar e ler eventos diretamente do provedor de agenda, é necessário ter as <a href="#manifest">permissões</a> apropriadas. Contudo, se o aplicativo em criação não for um aplicativo de agenda totalmente desenvolvido nem um adaptador de sincronização, não será necessário solicitar essas permissões. Em vez disso, podem-se usar intenções compatíveis com o aplicativo Agenda do Android para entregar operações de leitura e gravação a esse aplicativo. Ao usar as intenções, o aplicativo envia usuários ao aplicativo Agenda para realizar a operação desejada
+em um formulário pré-preenchido. Após finalizarem a operação, eles serão direcionados de volta ao aplicativo.
+Ao projetar seu aplicativo para realizar operações comuns através do Agenda,
+os usuários têm uma experiência em uma interface robusta e consistente. Essa é
+a abordagem recomendada. Para obter mais informações, consulte <a href="#intents">Intenções
+do Agenda</a>.</p>
+
+
+<li><strong>Adaptadores de sincronização.</strong> Os adaptadores de sincronização sincronizam os dados da agenda
+em um dispositivo do usuário com outro servidor ou fonte de dados. Nas tabelas
+{@link android.provider.CalendarContract.Calendars}
+e {@link android.provider.CalendarContract.Events},
+há colunas reservadas para o uso dos adaptadores de sincronização.
+O provedor e os aplicativos não devem modificá-las. De fato, elas não são
+visíveis a menos que sejam acessadas como um adaptador de sincronização. Para obter mais informações sobre
+adaptadores de sincronização, consulte <a href="#sync-adapter">Adaptadores de sincronização</a>.</li>
+
+</ul>
+
+
+<h2 id="manifest">Permissões do usuário</h2>
+
+<p>Para ler dados da agenda, o aplicativo deve conter a permissão {@link
+android.Manifest.permission#READ_CALENDAR} no arquivo de manifesto. Ele
+deve conter a permissão {@link android.Manifest.permission#WRITE_CALENDAR}
+para excluir, inserir ou atualizar dados da agenda:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;...&gt;
+    &lt;uses-sdk android:minSdkVersion=&quot;14&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.READ_CALENDAR&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.WRITE_CALENDAR&quot; /&gt;
+    ...
+&lt;/manifest&gt;
+</pre>
+
+
+<h2 id="calendar">Tabela de agendas</h2>
+
+<p>A tabela {@link android.provider.CalendarContract.Calendars} contém detalhes
+de agendas individuais. As colunas
+Agendas a seguir são graváveis tanto por aplicativos quanto por <a href="#sync-adapter">adaptadores de sincronização</a>. 
+Para obter uma lista completa de campos compatíveis, consulte
+a referência {@link android.provider.CalendarContract.Calendars}</p>
+<table>
+  <tr>
+    <th>Constante</th>
+    <th>Descrição</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#NAME}</td>
+    <td>O nome da agenda.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#CALENDAR_DISPLAY_NAME}</td>
+    <td>O nome desta agenda que é exibido ao usuário.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#VISIBLE}</td>
+    
+    <td>Um booleano indicando se a agenda foi selecionada para ser exibida. Um valor
+de 0 indica que eventos associados a essa agenda não devem ser
+exibidos.  Um valor de 1 indica que eventos associados a essa agenda devem
+ser exibidos. Esse valor afeta a geração de linhas na tabela {@link
+android.provider.CalendarContract.Instances}.</td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.CalendarColumns#SYNC_EVENTS}</td>
+    
+    <td>Um booleano que indica se a agenda deve ser sincronizada e ter
+os eventos armazenados no dispositivo. Um valor de 0 indica a não sincronização dessa agenda
+e o não armazenamento dos eventos no dispositivo.  Um valor de 1 indica a sincronização dos eventos dessa agenda
+e o armazenamento dos eventos no dispositivo.</td>
+  </tr>
+</table>
+
+<h3 id="query">Consulta em uma agenda</h3>
+
+<p>A seguir há um exemplo que mostra como obter as agendas de propriedade de determinado
+usuário. Para simplificar o exemplo, a operação de consulta é exibida no
+encadeamento da interface do usuário ("encadeamento principal"). Na prática, isso deve ser feito em um encadeamento
+assíncrono em vez de no encadeamento principal. Para ver mais discussões, consulte 
+<a href="{@docRoot}guide/components/loaders.html">Carregadores</a>. Se você não estiver somente
+lendo dados, mas modificando-os, consulte {@link android.content.AsyncQueryHandler}.
+</p>
+
+
+<pre>
+// Projection array. Creating indices for this array instead of doing
+// dynamic lookups improves performance.
+public static final String[] EVENT_PROJECTION = new String[] {
+    Calendars._ID,                           // 0
+    Calendars.ACCOUNT_NAME,                  // 1
+    Calendars.CALENDAR_DISPLAY_NAME,         // 2
+    Calendars.OWNER_ACCOUNT                  // 3
+};
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_ACCOUNT_NAME_INDEX = 1;
+private static final int PROJECTION_DISPLAY_NAME_INDEX = 2;
+private static final int PROJECTION_OWNER_ACCOUNT_INDEX = 3;</pre>
+  
+
+<div class="sidebox-wrapper"> <div class="sidebox"> <h3>Por que incluir
+ACCOUNT_TYPE?</h3> <p>Ao consultar um {@link
+android.provider.CalendarContract.Calendars#ACCOUNT_NAME
+Calendars.ACCOUNT_NAME}, é necessário incluir
+{@link android.provider.CalendarContract.Calendars#ACCOUNT_TYPE Calendars.ACCOUNT_TYPE}
+na seleção. Isso porque determinada conta
+só é considerada exclusiva devido a seus <code>ACCOUNT_NAME</code>
+e <code>ACCOUNT_TYPE</code>. <code>ACCOUNT_TYPE</code> é a string correspondente
+ao autenticador da conta que foi usado quando ela foi registrada com
+o {@link android.accounts.AccountManager}. Há também um tipo especial de conta chamado {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} para agendas
+não associadas a nenhuma conta do dispositivo. Contas {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} não são
+sincronizadas.</p> </div> </div> 
+
+
+<p> Na próxima parte do exemplo, você construirá a consulta. A seleção
+especifica os critérios da consulta. Neste exemplo, a consulta busca
+agendas que tenham o <code>ACCOUNT_NAME</code>
+"sampleuser@google.com", o <code>ACCOUNT_TYPE</code>
+"com.google" e o <code>OWNER_ACCOUNT</code>
+"sampleuser@google.com". Para ver todas as agendas que um usuário
+tenha exibido, não somente as que ele possui, omita o <code>OWNER_ACCOUNT</code>.
+A consulta retorna um objeto {@link android.database.Cursor}
+que pode ser usado para cruzar o conjunto de resultados retornado pela consulta
+do banco de dados. Para ver mais informações sobre o uso de consultas em provedores de conteúdo,
+consulte <a href="{@docRoot}guide/topics/providers/content-providers.html">Provedores de conteúdo</a>.</p>
+
+
+<pre>// Run query
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+Uri uri = Calendars.CONTENT_URI;   
+String selection = "((" + Calendars.ACCOUNT_NAME + " = ?) AND (" 
+                        + Calendars.ACCOUNT_TYPE + " = ?) AND ("
+                        + Calendars.OWNER_ACCOUNT + " = ?))";
+String[] selectionArgs = new String[] {"sampleuser@gmail.com", "com.google",
+        "sampleuser@gmail.com"}; 
+// Submit the query and get a Cursor object back. 
+cur = cr.query(uri, EVENT_PROJECTION, selection, selectionArgs, null);</pre>
+
+<p>Essa próxima seção usa o cursor para avançar pelo conjunto de resultados. Ele usa
+as constantes definidas no início do exemplo para retornar os valores
+de cada campo.</p>
+    
+<pre>// Use the cursor to step through the returned records
+while (cur.moveToNext()) {
+    long calID = 0;
+    String displayName = null;
+    String accountName = null;
+    String ownerName = null;
+      
+    // Get the field values
+    calID = cur.getLong(PROJECTION_ID_INDEX);
+    displayName = cur.getString(PROJECTION_DISPLAY_NAME_INDEX);
+    accountName = cur.getString(PROJECTION_ACCOUNT_NAME_INDEX);
+    ownerName = cur.getString(PROJECTION_OWNER_ACCOUNT_INDEX);
+              
+    // Do something with the values...
+
+   ...
+}
+</pre>
+  
+<h3 id="modify-calendar">Modificação de uma agenda</h3>
+
+<p>Para realizar uma atualização de uma agenda, é possível fornecer o {@link
+android.provider.BaseColumns#_ID} da agenda como um ID anexado à
+URI
+
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()})
+ou como o primeiro item de seleção. A seleção
+deve iniciar com <code>&quot;_id=?&quot;</code> e o primeiro
+<code>selectionArg</code> deve ser o {@link
+android.provider.BaseColumns#_ID} da agenda. 
+Também é possível realizar atualizações com codificações do ID na URI. Este exemplo altera
+o nome de exibição de uma agenda usando a
+abordagem
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}):</p>
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long calID = 2;
+ContentValues values = new ContentValues();
+// The new display name for the calendar
+values.put(Calendars.CALENDAR_DISPLAY_NAME, &quot;Trevor's Calendar&quot;);
+Uri updateUri = ContentUris.withAppendedId(Calendars.CONTENT_URI, calID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);</pre>
+
+<h3 id="insert-calendar">Inserção de uma agenda</h2>
+
+<p>Agendas são projetadas para serem gerenciadas principalmente por um adaptador de sincronização, por isso
+deve-se inserir somente novas agendas como um adaptador de sincronização. Para a maior parte,
+aplicativos só podem efetuar mudanças superficiais em agendas, como mudar o nome de exibição. Se
+um aplicativo precisa criar uma agenda local, pode fazê-lo realizando
+a inserção da agenda como um adaptador de sincronização usando um {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} de {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}.
+{@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}
+é um tipo de conta especial para agendas
+não associado a nenhuma conta do dispositivo. Agendas desse tipo não são sincronizadas com um servidor. Para 
+ver discussões sobre adaptadores de sincronização, consulte <a href="#sync-adapter">Adaptadores de sincronização</a>.</p>
+
+<h2 id="events">Tabela de eventos</h2>
+
+<p>A tabela {@link android.provider.CalendarContract.Events} contém detalhes
+de eventos individuais. Para adicionar, atualizar ou excluir eventos, um aplicativo deve
+conter a permissão {@link android.Manifest.permission#WRITE_CALENDAR} 
+no <a href="#manifest">arquivo de manifesto</a>.</p>
+
+<p>As colunas de Eventos a seguir são graváveis tanto por um aplicativo quanto por um adaptador
+de sincronização. Para obter uma lista completa de campos compatíveis, consulte a referência de {@link
+android.provider.CalendarContract.Events}.</p>
+
+<table>
+  <tr>
+    <th>Constante</th>
+    <th>Descrição</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#CALENDAR_ID}</td>
+    <td>O {@link android.provider.BaseColumns#_ID} da agenda à qual o evento pertence.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ORGANIZER}</td>
+    <td>E-mail do organizador (dono) do evento.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE}</td>
+    <td>O título do evento.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION}</td>
+    <td>Onde o evento acontece. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION}</td>
+    <td>A descrição do evento.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTSTART}</td>
+    <td>O horário de início do evento em milissegundos em UTC desde a época. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTEND}</td>
+    <td>O horário de término do evento em milissegundos em UTC desde a época. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}</td>
+    <td>O fuso horário do evento.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_END_TIMEZONE}</td>
+    <td>O fuso horário do horário de término do evento.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DURATION}</td>
+    
+    <td>A duração do evento em formato <a href="http://tools.ietf.org/html/rfc5545#section-3.8.2.5">RCF5545</a>.
+Por exemplo, um valor de <code>&quot;PT1H&quot;</code> indica que o evento
+deve durar uma hora, e um valor de <code>&quot;P2W&quot;</code> indica
+uma duração de 2 semanas. </td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ALL_DAY}</td>
+    
+    <td>Um valor de 1 indica que esse evento ocupa o dia inteiro, como definido
+pelo fuso horário local. Um valor de 0 indica que é um evento comum que pode iniciar
+e terminar a qualquer momento durante um dia.</td>
+
+    
+  </tr>
+  
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RRULE}</td>
+    
+    <td>A regra de recorrência do formato do evento. Por
+exemplo, <code>&quot;FREQ=WEEKLY;COUNT=10;WKST=SU&quot;</code>. Veja
+mais exemplos <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.3">aqui</a>.</td>
+    
+  </tr>
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RDATE}</td>
+    <td>As datas de recorrência do evento. 
+    Normalmente, usa-se {@link android.provider.CalendarContract.EventsColumns#RDATE} 
+    em conjunto com {@link android.provider.CalendarContract.EventsColumns#RRULE} 
+    para definir um conjunto agregado
+de ocorrências repetidas. Para ver mais discussões, consulte <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.2">Especificação RFC5545</a>.</td>
+</tr>
+ 
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY}</td>
+    
+    <td>Se esse evento considera tempo ocupado ou se há tempo livre que pode ser
+reagendado. </td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_MODIFY}</td>
+    <td>Se convidados podem modificar o evento. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_INVITE_OTHERS}</td>
+    <td>Se convidados podem convidar outros. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_SEE_GUESTS}</td>
+    <td>Se convidados podem ver a lista de participantes.</td>
+  </tr>
+</table>
+
+<h3 id="add-event">Adição de eventos</h3>
+
+<p>Quando o aplicativo insere um novo evento, recomenda-se usar
+uma intenção {@link android.content.Intent#ACTION_INSERT INSERT}, como descrito em <a href="#intent-insert">Uso de uma intenção para inserir um evento</a>. Contudo, se for
+necessário, é possível inserir eventos diretamente. Esta seção descreve como
+fazê-lo.</p>
+
+
+<p>Abaixo apresentam-se as regras para inserção de um novo evento: </p>
+<ul>
+
+  <li>É necessário incluir {@link
+android.provider.CalendarContract.EventsColumns#CALENDAR_ID} e {@link
+android.provider.CalendarContract.EventsColumns#DTSTART}.</li>
+
+<li>É necessário incluir um {@link
+android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}. Para obter uma lista
+dos IDs de fuso horário instalados do sistema, use {@link
+java.util.TimeZone#getAvailableIDs()}. Observe que essa regra não se aplica
+a inserções de evento pela intenção {@link
+android.content.Intent#ACTION_INSERT INSERT} descrita em <a href="#intent-insert">Uso de uma intenção para inserir um evento</a> &mdash; nesta
+situação, é fornecido um fuso horário padrão.</li>
+  
+  <li>Para eventos não recorrentes, é preciso incluir {@link
+android.provider.CalendarContract.EventsColumns#DTEND}. </li>
+  
+  
+  <li>Para eventos recorrentes, é necessário incluir uma {@link
+android.provider.CalendarContract.EventsColumns#DURATION} além de uma {@link
+android.provider.CalendarContract.EventsColumns#RRULE} ou {@link
+android.provider.CalendarContract.EventsColumns#RDATE}. Observe que essa regra não se aplica
+a inserções de evento pela intenção {@link
+android.content.Intent#ACTION_INSERT INSERT} descrita em <a href="#intent-insert">Uso de uma intenção para inserir um evento</a> &mdash; nessa situação,
+é possível usar uma {@link
+android.provider.CalendarContract.EventsColumns#RRULE} em conjunto com {@link android.provider.CalendarContract.EventsColumns#DTSTART} e {@link android.provider.CalendarContract.EventsColumns#DTEND}. Desta forma, o aplicativo Agenda
+a converte em uma duração automaticamente.</li>
+  
+</ul>
+
+<p>A seguir há um exemplo de inserção de um evento: para simplificar, isso está sendo realizado
+no encadeamento da IU. Na prática, inserções e atualizações devem ser feitas
+em um encadeamento assíncrono para mover a ação para um encadeamento de segundo plano. Para obter
+mais informações, consulte {@link android.content.AsyncQueryHandler}.</p>
+
+
+<pre>
+long calID = 3;
+long startMillis = 0; 
+long endMillis = 0;     
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 9, 14, 7, 30);
+startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 9, 14, 8, 45);
+endMillis = endTime.getTimeInMillis();
+...
+
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Events.DTSTART, startMillis);
+values.put(Events.DTEND, endMillis);
+values.put(Events.TITLE, &quot;Jazzercise&quot;);
+values.put(Events.DESCRIPTION, &quot;Group workout&quot;);
+values.put(Events.CALENDAR_ID, calID);
+values.put(Events.EVENT_TIMEZONE, "America/Los_Angeles");
+Uri uri = cr.insert(Events.CONTENT_URI, values);
+
+// get the event ID that is the last element in the Uri
+long eventID = Long.parseLong(uri.getLastPathSegment());
+// 
+// ... do something with event ID
+//
+//</pre>
+
+<p class="note"><strong>Observação:</strong> veja como este exemplo captura o ID
+do evento depois que o evento é criado. Este é o modo mais fácil de obter um ID de evento. Muitas vezes o ID do evento
+é necessário para realizar outras operações de agenda &mdash; por exemplo, adicionar
+participantes ou lembretes a um evento.</p>
+
+
+<h3 id="update-event">Atualização de eventos</h3>
+
+<p>Quando o aplicativo deseja permitir que o usuário edite um evento, é recomendável
+usar uma intenção {@link android.content.Intent#ACTION_EDIT EDIT}, como
+descrito em <a href="#intent-edit">Uso de uma intenção para editar um evento</a>.
+Contudo, se for necessário, é possível editar eventos diretamente. Para realizar uma atualização
+de um evento, é possível fornecer o <code>_ID</code>
+do evento como um ID anexado à URI ({@link
+android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()})
+ou como o primeiro item de seleção. 
+A seleção deve iniciar com <code>&quot;_id=?&quot;</code> e o primeiro
+<code>selectionArg</code> deve ser o <code>_ID</code> do evento. Você também
+pode realizar atualizações usando uma seleção sem ID. A seguir há um exemplo de como atualizar
+um evento. É possível mudar o título do evento usando
+a abordagem
+{@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}:</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 188;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri updateUri = null;
+// The new title for the event
+values.put(Events.TITLE, &quot;Kickboxing&quot;); 
+updateUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);  </pre>
+
+<h3 id="delete-event">Exclusão de eventos</h3>
+
+<p>Pode-se excluir um evento tanto pelo {@link
+android.provider.BaseColumns#_ID} como um ID anexado na URI quanto usando-se
+a seleção padrão. Ao usar um ID anexado, não é possível fazer seleções.
+Há duas versões de exclusão: como aplicativo e como adaptador de sincronização. 
+A exclusão por um aplicativo define as colunas <em>excluídas</em> como 1. Esse sinalizador é que diz
+ao adaptador de sincronização que a linha foi excluída e que essa exclusão deve ser
+propagada para o servidor. A exclusão por um adaptador de sincronização remove o evento
+do banco de dados junto com todos os dados associados. A seguir há um exemplo de um aplicativo
+excluindo um evento pelo seu {@link android.provider.BaseColumns#_ID}:</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 201;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri deleteUri = null;
+deleteUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().delete(deleteUri, null, null);
+Log.i(DEBUG_TAG, &quot;Rows deleted: &quot; + rows);  
+</pre>
+
+<h2 id="attendees">Tabela de participantes</h2>
+
+<p>Cada linha da tabela {@link android.provider.CalendarContract.Attendees}
+representa um único participante ou convidado de um evento. Chamar
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()}
+retorna uma lista de participantes para
+o evento com o {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} dado. 
+Esse {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}
+deve corresponder ao {@link
+android.provider.BaseColumns#_ID} de determinado evento.</p> 
+
+<p>A tabela a seguir lista
+os campos graváveis. Ao inserir um novo participante, é necessário incluir todos eles
+exceto <code>ATTENDEE_NAME</code>.
+</p>
+
+
+<table>
+  <tr>
+    <th>Constante</th>
+    <th>Descrição</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}</td>
+    <td>O ID do evento.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_NAME}</td>
+    <td>O nome do participante.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_EMAIL}</td>
+    <td>O endereço de e-mail do participante.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_RELATIONSHIP}</td>
+    <td><p>A relação do participante com o evento. Uma das seguintes:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ATTENDEE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ORGANIZER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_PERFORMER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_SPEAKER}</li>
+    </ul>
+    </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_TYPE}</td>
+    <td><p>O tipo de participante. Uma das seguintes: </p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_REQUIRED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_OPTIONAL}</li>
+    </ul></td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS}</td>
+    <td><p>O status de participação do participante. Uma das seguintes:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_ACCEPTED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_DECLINED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_INVITED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_TENTATIVE}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-attendees">Adição de participantes</h3>
+
+<p>A seguir há um exemplo que adiciona um único participante a um evento. Observe que
+o {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}
+é obrigatório:</p>
+
+<pre>
+long eventID = 202;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Attendees.ATTENDEE_NAME, &quot;Trevor&quot;);
+values.put(Attendees.ATTENDEE_EMAIL, &quot;trevor@example.com&quot;);
+values.put(Attendees.ATTENDEE_RELATIONSHIP, Attendees.RELATIONSHIP_ATTENDEE);
+values.put(Attendees.ATTENDEE_TYPE, Attendees.TYPE_OPTIONAL);
+values.put(Attendees.ATTENDEE_STATUS, Attendees.ATTENDEE_STATUS_INVITED);
+values.put(Attendees.EVENT_ID, eventID);
+Uri uri = cr.insert(Attendees.CONTENT_URI, values);
+</pre>
+
+<h2 id="reminders">Tabela de lembretes</h2>
+
+<p>Cada linha da tabela {@link android.provider.CalendarContract.Reminders}
+representa um único lembrete de um evento. Chamar
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()} retorna uma lista de lembretes para
+o evento com o dado
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}.</p>
+
+
+<p>A tabela a seguir relaciona os campos graváveis de lembretes. Todos eles devem
+ser incluídos ao inserir um novo lembrete. Observe que adaptadores de sincronização especificam
+os tipos de lembretes compatíveis na tabela {@link
+android.provider.CalendarContract.Calendars}. Consulte
+{@link android.provider.CalendarContract.CalendarColumns#ALLOWED_REMINDERS}
+para obter detalhes.</p>
+
+
+<table>
+  <tr>
+    <th>Constante</th>
+    <th>Descrição</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#EVENT_ID}</td>
+    <td>O ID do evento.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#MINUTES}</td>
+    <td>Os minutos antes do evento em que o lembrete deve disparar.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#METHOD}</td>
+    <td><p>O método de alarme, como definido no servidor. Uma das seguintes:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_ALERT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_DEFAULT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_EMAIL}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_SMS}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-reminders">Adição de lembretes</h3>
+
+<p>Este exemplo adiciona um lembrete para um evento. O lembrete dispara
+15 minutos antes do evento.</p>
+<pre>
+long eventID = 221;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Reminders.MINUTES, 15);
+values.put(Reminders.EVENT_ID, eventID);
+values.put(Reminders.METHOD, Reminders.METHOD_ALERT);
+Uri uri = cr.insert(Reminders.CONTENT_URI, values);</pre>
+
+<h2 id="instances">Tabela de instâncias</h2>
+
+<p>A tabela 
+{@link android.provider.CalendarContract.Instances} contém
+os horários de início e término das ocorrência de um evento. Cada linha nessa tabela
+representa uma única ocorrência do evento. A tabela de instâncias não é gravável e fornece
+somente um modo de consultar ocorrências de eventos. </p>
+
+<p>A tabela a seguir relaciona alguns dos campos passíveis de consulta de uma instância. Observe
+que o fuso horário é definido por
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_TYPE}
+e 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_INSTANCES}.</p>
+
+
+<table>
+  <tr>
+    <th>Constante</th>
+    <th>Descrição</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#BEGIN}</td>
+    <td>O horário de início da instância, em milissegundos UTC.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END}</td>
+    <td>O horário de término da instância, em milissegundos UTC.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_DAY}</td>
+    
+    <td>O dia final juliano da instância relativo ao fuso horário
+do Agenda. 
+    
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_MINUTE}</td>
+    
+    <td>O minuto final da instância calculado a partir de meia-noite
+no fuso horário do Agenda.</td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#EVENT_ID}</td>
+    <td>O <code>_ID</code> do evento para essa instância.</td>
+  </tr>
+    <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_DAY}</td>
+    <td>O dia inicial juliano da instância relativo ao fuso horário do Agenda. 
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_MINUTE}</td>
+    
+    <td>O minuto inicial da instância calculado a partir de meia-noite, relativo
+ao fuso horário do Agenda. 
+</td>
+    
+  </tr>
+
+</table>
+
+<h3 id="query-instances">Consulta na tabela de instâncias</h3>
+
+<p>Para consultar a Tabela de instâncias, é necessário especificar um intervalo de tempo para a consulta
+na URI. Neste exemplo, {@link android.provider.CalendarContract.Instances}
+obtém acesso ao campo {@link
+android.provider.CalendarContract.EventsColumns#TITLE} por meio
+da sua implementação da interface {@link android.provider.CalendarContract.EventsColumns}. 
+Em outras palavras, {@link
+android.provider.CalendarContract.EventsColumns#TITLE} é retornado por uma
+vista do banco de dados, não pela consulta da tabela {@link
+android.provider.CalendarContract.Instances} bruta.</p>
+
+<pre>
+private static final String DEBUG_TAG = "MyActivity";
+public static final String[] INSTANCE_PROJECTION = new String[] {
+    Instances.EVENT_ID,      // 0
+    Instances.BEGIN,         // 1
+    Instances.TITLE          // 2
+  };
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_BEGIN_INDEX = 1;
+private static final int PROJECTION_TITLE_INDEX = 2;
+...
+
+// Specify the date range you want to search for recurring
+// event instances
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2011, 9, 23, 8, 0);
+long startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2011, 10, 24, 8, 0);
+long endMillis = endTime.getTimeInMillis();
+  
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+
+// The ID of the recurring event whose instances you are searching
+// for in the Instances table
+String selection = Instances.EVENT_ID + " = ?";
+String[] selectionArgs = new String[] {"207"};
+
+// Construct the query with the desired date range.
+Uri.Builder builder = Instances.CONTENT_URI.buildUpon();
+ContentUris.appendId(builder, startMillis);
+ContentUris.appendId(builder, endMillis);
+
+// Submit the query
+cur =  cr.query(builder.build(), 
+    INSTANCE_PROJECTION, 
+    selection, 
+    selectionArgs, 
+    null);
+   
+while (cur.moveToNext()) {
+    String title = null;
+    long eventID = 0;
+    long beginVal = 0;    
+    
+    // Get the field values
+    eventID = cur.getLong(PROJECTION_ID_INDEX);
+    beginVal = cur.getLong(PROJECTION_BEGIN_INDEX);
+    title = cur.getString(PROJECTION_TITLE_INDEX);
+              
+    // Do something with the values. 
+    Log.i(DEBUG_TAG, "Event:  " + title); 
+    Calendar calendar = Calendar.getInstance();
+    calendar.setTimeInMillis(beginVal);  
+    DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
+    Log.i(DEBUG_TAG, "Date: " + formatter.format(calendar.getTime()));    
+    }
+ }</pre>
+
+<h2 id="intents">Intenções do Agenda</h2>
+<p>O aplicativo não precisa de <a href="#manifest">permissões</a> para ler e gravar dados de agenda. Em vez disso, ele pode usar intenções compatíveis com o aplicativo Agenda do Android para entregar operações de leitura e gravação. A tabela a seguir lista as intenções compatíveis com o Provedor de Agenda.</p>
+<table>
+  <tr>
+    <th>Ação</th>
+    <th>URI</th>
+
+    <th>Descrição</th>
+    <th>Extras</th>
+  </tr>
+  <tr>
+    <td><br>
+    {@link android.content.Intent#ACTION_VIEW VIEW} <br></td>
+    <td><p><code>content://com.android.calendar/time/&lt;ms_since_epoch&gt;</code></p>
+    Também pode-se consultar a URI com
+{@link android.provider.CalendarContract#CONTENT_URI CalendarContract.CONTENT_URI}. 
+Para ver um exemplo do uso dessa intenção, consulte <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">Uso de intenções para exibir dados de calendários</a>. 
+
+    </td>
+    <td>Abre a agenda no horário especificado por <code>&lt;ms_since_epoch&gt;</code>.</td>
+    <td>Nenhum.</td>
+  </tr>
+  <tr>
+    <td><p>{@link android.content.Intent#ACTION_VIEW VIEW} </p>
+
+     </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+    Também é possível consultar a URI com
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Para ver um exemplo do uso dessa intenção, consulte <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">Uso de intenções para exibir dados de calendários</a>.
+    
+    </td>
+    <td>Exibe o evento especificado por <code>&lt;event_id&gt;</code>.</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+  Também é possível consultar a URI com
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Para ver um exemplo do uso dessa intenção, consulte <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-edit">Uso de uma intenção para editar um evento</a>.
+    
+    
+    </td>
+    <td>Edita o evento especificado por <code>&lt;event_id&gt;</code>.</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} <br>
+    <br>
+    {@link android.content.Intent#ACTION_INSERT INSERT} </td>
+    <td><p><code>content://com.android.calendar/events</code></p>
+    
+   Também é possível consultar a URI com
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Para ver um exemplo do uso dessa intenção, consulte <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-insert">Uso de uma intenção para inserir um evento</a>.
+    
+    </td>
+
+    <td>Cria um evento.</td>
+    <td>Qualquer um dos extras listados na tabela abaixo.</td>
+  </tr>
+</table>
+
+<p>A tabela a seguir lista os extras de intenção compatíveis com o Provedor de Agenda:
+</p>
+<table>
+  <tr>
+    <th>Extra de intenção</th>
+    <th>Descrição</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE Events.TITLE}</td>
+    <td>Nome do evento.</td>
+  </tr>
+  <tr>
+  
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME}</td>
+    <td>Horário de início do evento em milissegundos a partir da época.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME}</td>
+    
+    <td>Horário de término do evento em milissegundos a partir da época.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_ALL_DAY
+CalendarContract.EXTRA_EVENT_ALL_DAY}</td>
+    
+    <td>Um booleano que indica que um evento acontece o dia inteiro. O valor pode ser
+<code>true</code> ou <code>false</code>.</td> </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION
+Events.EVENT_LOCATION}</td>
+    
+    <td>Local do evento.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION
+Events.DESCRIPTION}</td>
+    
+    <td>Descrição do evento.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}</td>
+    <td>Endereços de e-mail daqueles a convidar em forma de lista com termos separados por vírgula.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#RRULE Events.RRULE}</td>
+    <td>A regra de recorrência do evento.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#ACCESS_LEVEL
+Events.ACCESS_LEVEL}</td>
+    
+    <td>Se o evento é privado ou público.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY
+Events.AVAILABILITY}</td>
+    
+    <td>Se esse evento considera tempo ocupado na contagem ou se há tempo livre que pode ser reagendado.</td>
+    
+</table> 
+<p>As seções a seguir descrevem como usar estas intenções.</p>
+
+
+<h3 id="intent-insert">Uso de uma intenção para inserir um evento</h3>
+
+<p>A intenção {@link android.content.Intent#ACTION_INSERT INSERT}
+permite que o aplicativo entregue a tarefa de inserção de eventos ao próprio aplicativo Agenda.
+Com essa abordagem, o aplicativo não precisará ter a permissão {@link
+android.Manifest.permission#WRITE_CALENDAR} contida no <a href="#manifest">arquivo de manifesto</a>.</p>
+
+  
+<p>Quando usuários executam um aplicativo que usa essa abordagem, ele os direciona
+ao Agenda para finalizar a adição do evento. A intenção {@link
+android.content.Intent#ACTION_INSERT INSERT} usa campos extras para
+pré-preencher um formulário com os detalhes do evento na Agenda. Os usuários podem,
+então, cancelar o evento, editar o formulário conforme o necessário ou salvar o evento nas suas
+agendas.</p>
+  
+
+
+<p>A seguir há um fragmento de código que agenda um evento em 19 de janeiro de 2012, que acontece
+das 7h30 às 8h30. Observe o exposto a seguir sobre esse fragmento de código:</p>
+
+<ul>
+  <li>Ele especifica {@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}
+ como a URI.</li>
+  
+  <li>Ele usa os campos extras {@link
+android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME} e {@link
+android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME} para pré-preencher o formulário
+com o horário do evento. Os valores desses horários devem estar em milissegundos UTC
+da época.</li>
+  
+  <li>Ele usa o campo extra {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}
+ para fornecer uma lista de termos separados por vírgula de convidados, especificados por endereço de e-mail.</li>
+  
+</ul>
+<pre>
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 0, 19, 7, 30);
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 0, 19, 8, 30);
+Intent intent = new Intent(Intent.ACTION_INSERT)
+        .setData(Events.CONTENT_URI)
+        .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
+        .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
+        .putExtra(Events.TITLE, &quot;Yoga&quot;)
+        .putExtra(Events.DESCRIPTION, &quot;Group class&quot;)
+        .putExtra(Events.EVENT_LOCATION, &quot;The gym&quot;)
+        .putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)
+        .putExtra(Intent.EXTRA_EMAIL, &quot;rowan@example.com,trevor@example.com&quot;);
+startActivity(intent);
+</pre>
+
+<h3 id="intent-edit">Uso de uma intenção para editar um evento</h3>
+
+<p>É possível atualizar um evento diretamente, como descrito em <a href="#update-event">Atualização de eventos</a>. Porém, o uso da intenção {@link
+android.content.Intent#ACTION_EDIT EDIT} permite que um aplicativo
+sem permissão forneça a edição de eventos ao aplicativo Agenda.
+Quando usuários finalizam a edição do evento no Agenda, retornam
+ao aplicativo original.</p> <p>A seguir há um exemplo de uma intenção que define um novo
+título para o evento especificado e permite aos usuários editar o evento no Agenda.</p>
+
+
+<pre>long eventID = 208;
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_EDIT)
+    .setData(uri)
+    .putExtra(Events.TITLE, &quot;My New Title&quot;);
+startActivity(intent);</pre>
+
+<h3 id="intent-view">Uso de intenções para exibir dados de agenda</h3>
+<p>O Provedor de Agenda oferece dois modos diferentes de usar a intenção {@link android.content.Intent#ACTION_VIEW VIEW}:</p>
+<ul>
+  <li>Para abrir o Agenda em uma data específica.</li>
+  <li>Para exibir um evento.</li>
+
+</ul>
+<p>A seguir há um exemplo que mostra como abrir o Agenda em uma data específica:</p>
+<pre>// A date-time specified in milliseconds since the epoch.
+long startMillis;
+...
+Uri.Builder builder = CalendarContract.CONTENT_URI.buildUpon();
+builder.appendPath(&quot;time&quot;);
+ContentUris.appendId(builder, startMillis);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+    .setData(builder.build());
+startActivity(intent);</pre>
+
+<p>Abaixo há um exemplo que mostra como abrir um evento para exibição:</p>
+<pre>long eventID = 208;
+...
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+   .setData(uri);
+startActivity(intent);
+</pre>
+
+
+<h2 id="sync-adapter">Adaptadores de sincronização</h2>
+
+
+<p>Há pequenas diferenças apenas nos modos de acesso ao Provedor de Agenda
+via aplicativo e via adaptador de sincronização:</p>
+
+<ul>
+  <li>Um adaptador de sincronização precisa especificar que é um adaptador de sincronização que define {@link android.provider.CalendarContract#CALLER_IS_SYNCADAPTER} como <code>true</code>.</li>
+  
+  
+  <li>Os adaptadores de sincronização precisam fornecer um {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_NAME} e um {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} como parâmetros da consulta na URI. </li>
+  
+  <li>Os adaptadores de sincronização têm acesso de gravação a mais colunas do que um aplicativo ou widget.
+  Por exemplo: um aplicativo só pode modificar algumas características de uma agenda,
+como nome, nome de exibição, configurações de visibilidade e se a agenda está
+sincronizada. Por comparação, um adaptador de sincronização pode acessar não somente essas colunas, mas muitas outras,
+como cores da agenda, fuso horário, nível de acesso, local etc.
+No entanto, um adaptador de sincronização é restrito ao <code>ACCOUNT_NAME</code>
+e ao <code>ACCOUNT_TYPE</code> que especificou.</li> </ul>
+
+<p>A seguir há um método auxiliar que pode ser usado para retornar uma URI para uso com um adaptador de sincronização:</p>
+<pre> static Uri asSyncAdapter(Uri uri, String account, String accountType) {
+    return uri.buildUpon()
+        .appendQueryParameter(android.provider.CalendarContract.CALLER_IS_SYNCADAPTER,&quot;true&quot;)
+        .appendQueryParameter(Calendars.ACCOUNT_NAME, account)
+        .appendQueryParameter(Calendars.ACCOUNT_TYPE, accountType).build();
+ }
+</pre>
+<p>Para obter uma implementação de exemplo de um adaptador de sincronização (não especificamente relacionada ao Agenda), consulte 
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a>.
diff --git a/docs/html-intl/intl/pt-br/guide/topics/providers/contacts-provider.jd b/docs/html-intl/intl/pt-br/guide/topics/providers/contacts-provider.jd
new file mode 100644
index 0000000..0d42d2d
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/providers/contacts-provider.jd
@@ -0,0 +1,2356 @@
+page.title=Provedor de Contatos
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Visualização rápida</h2>
+<ul>
+    <li>Repositório de informações sobre pessoas do Android.</li>
+    <li>
+        Sincronização com a web.
+    </li>
+    <li>
+        Integração de dados de fluxos sociais.
+    </li>
+</ul>
+<h2>Neste documento</h2>
+<ol>
+    <li>
+        <a href="#InformationTypes">Organização do Provedor de Contatos</a>
+    </li>
+    <li>
+        <a href="#RawContactBasics">Contatos brutos</a>
+    </li>
+    <li>
+        <a href="#DataBasics">Dados</a>
+    </li>
+    <li>
+        <a href="#ContactBasics">Contatos</a>
+    </li>
+    <li>
+        <a href="#Sources">Dados de adaptadores de sincronização</a>
+    </li>
+    <li>
+        <a href="#Permissions">Permissões necessárias</a>
+    </li>
+    <li>
+        <a href="#UserProfile">O perfil do usuário</a>
+    </li>
+    <li>
+        <a href="#ContactsProviderMetadata">Metadados do Provedor de Contatos</a>
+    </li>
+    <li>
+        <a href="#Access">Acesso ao Provedor de Contatos</a>
+    <li>
+    </li>
+    <li>
+        <a href="#SyncAdapters">Adaptadores de sincronização do Provedor de Contatos</a>
+    </li>
+    <li>
+        <a href="#SocialStream">Dados de fluxos sociais</a>
+    </li>
+    <li>
+        <a href="#AdditionalFeatures">Recursos adicionais do Provedor de Contatos</a>
+    </li>
+</ol>
+<h2>Classes principais</h2>
+<ol>
+    <li>{@link android.provider.ContactsContract.Contacts}</li>
+    <li>{@link android.provider.ContactsContract.RawContacts}</li>
+    <li>{@link android.provider.ContactsContract.Data}</li>
+    <li>{@code android.provider.ContactsContract.StreamItems}</li>
+</ol>
+<h2>Exemplos relacionados</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}resources/samples/ContactManager/index.html">
+        Gerente de contatos
+        </a>
+    </li>
+    <li>
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+        Exemplo de adaptador de sincronização</a>
+    </li>
+</ol>
+<h2>Veja também</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Preceitos do provedor de conteúdo
+        </a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    O Provedor de Contatos é um componente poderoso e flexível do Android que gerencia
+o principal repositório de dados sobre pessoas do dispositivo. O Provedor de Contatos é a fonte dos dados
+    vistos nos aplicativos de contatos do dispositivo e, por ele, também é possível acessar os dados
+    no próprio aplicativo e transferi-los entre o dispositivo e serviços on-line. O provedor fornece
+    uma grande variedade de fontes de dados e tenta gerenciar o máximo de dados possíveis para cada pessoa,
+    uma vez que organizá-los é algo complexo. Por isso, a API do provedor contém
+    um conjunto extensivo de classes e interfaces de contrato que facilitam a recuperação e a modificação
+    dos dados.
+</p>
+<p>
+    Este guia descreve o seguinte:
+</p>
+    <ul>
+        <li>
+            A estrutura básica do provedor.
+        </li>
+        <li>
+            Como recuperar dados por um provedor.
+        </li>
+        <li>
+            Como modificar dados no provedor.
+        </li>
+        <li>
+            Como criar um adaptador de sincronização para sincronizar dados do servidor com
+o Provedor de Contatos.
+        </li>
+    </ul>
+<p>
+    Este guia considera que o leitor conhece os preceitos dos provedores de conteúdo do Android. Para saber mais
+    sobre provedores de conteúdo do Android, leia o guia
+    <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+    Preceitos do provedor de conteúdo</a>. 
+    O aplicativo <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">Exemplo de adaptador de sincronização</a>
+    é um exemplo de uso de um adaptador de sincronização que transfere dados entre o Provedor
+    de contatos e um aplicativo de amostra hospedado pelo Google Web Services.
+</p>
+<h2 id="InformationTypes">Organização do Provedor de Contatos</h2>
+<p>
+    O Provedor de Contatos é um componente do provedor de conteúdo do Android. Ele mantém três tipos de 
+    dados sobre uma pessoa, sendo cada um deles correspondente a uma tabela fornecida pelo provedor, como
+    ilustrado na figura 1:
+</p>
+<img src="{@docRoot}images/providers/contacts_structure.png" alt="" height="364" id="figure1" />
+<p class="img-caption">
+  <strong>Figura 1.</strong> Estrutura da tabela do Provedor de Contatos.
+</p>
+<p>
+    As três tabelas são comumente identificadas pelo nome de suas classes de contrato. As classes
+    definem constantes para URIs de conteúdo e nomes e valores de colunas usados pela tabela:
+</p>
+<dl>
+    <dt>
+        Tabela {@link android.provider.ContactsContract.Contacts}
+    </dt>
+    <dd>
+        As linhas representam pessoas diferentes com base em agregações de linhas de contatos brutos.
+    </dd>
+    <dt>
+        Tabela {@link android.provider.ContactsContract.RawContacts}
+    </dt>
+    <dd>
+        As linhas contêm um resumo dos dados de uma pessoa, específicos a um tipo e uma conta de usuário.
+    </dd>
+    <dt>
+        Tabela {@link android.provider.ContactsContract.Data}
+    </dt>
+    <dd>
+        As linhas contêm os detalhes dos contatos brutos, como endereços de e-mail ou números de telefone.
+    </dd>
+</dl>
+<p>
+    As outras tabelas representadas pelas classes de contrato em {@link android.provider.ContactsContract}
+    são tabelas auxiliares que o Provedor de Contatos usa para gerenciar suas operações ou compatibilizar
+    funções específicas nos contatos do dispositivo ou em aplicativos de telefonia.
+</p>
+<h2 id="RawContactBasics">Contatos brutos</h2>
+<p>
+    Os contatos brutos representam os dados de uma pessoa provenientes de um tipo único de conta e um nome
+    de conta. Como o Provedor de Contatos permite mais de um serviço on-line como fonte
+de dados de uma pessoa, ele permite diversos contatos brutos para a mesma pessoa.
+    Diversos contatos brutos também permitem que um usuário combine os dados de uma pessoa de mais de uma conta
+    a partir do mesmo tipo de conta.
+</p>
+<p>
+    A maioria dos dados de um contato bruto não é armazenada
+    na tabela {@link android.provider.ContactsContract.RawContacts}. Em vez disso, é armazenada em uma ou mais
+    linhas na tabela {@link android.provider.ContactsContract.Data}. Cada linha de dados tem uma coluna
+    {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID Data.RAW_CONTACT_ID} que
+    contém o valor {@code android.provider.BaseColumns#_ID RawContacts._ID} de sua
+    linha {@link android.provider.ContactsContract.RawContacts} pai.
+</p>
+<h3 id="RawContactsColumns">Colunas importantes de contatos brutos</h3>
+<p>
+    As colunas importantes na tabela {@link android.provider.ContactsContract.RawContacts} são
+    listadas na tabela 1. Leia as observações que se seguem após a tabela:
+</p>
+<p class="table-caption" id="table1">
+    <strong>Tabela 1.</strong> Importantes colunas de contatos brutos.
+</p>
+<table>
+    <tr>
+        <th scope="col">Nome da coluna</th>
+        <th scope="col">Uso</th>
+        <th scope="col">Observações</th>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_NAME}
+        </td>
+        <td>
+            O nome da conta para o tipo de conta que é a fonte desse contato bruto.
+            Por exemplo: o nome da conta de uma conta da Google é um dos endereços do Gmail do proprietário
+    do dispositivo. Para obter mais informações,
+            acesse o próximo item
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}.
+        </td>
+        <td>
+            O formato desse nome é específico deste tipo de conta. 
+            Não se trata necessariamente de um endereço de e-mail.
+        </td>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}
+        </td>
+        <td>
+            O tipo de conta que é a fonte desse contato bruto. Por exemplo: o tipo
+            de conta de uma conta da Google é <code>com.google</code>. Sempre qualifique o tipo de conta
+            com um identificador de domínio para um domínio que você controla ou possui. Isso garantirá que seu
+            tipo de conta seja único.
+        </td>
+        <td>
+            Os tipos de conta que fornecem dados de contatos normalmente têm um adaptador de sincronização associado que
+            sincroniza-se com o Provedor de Contatos.
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.RawContactsColumns#DELETED}
+        </td>
+        <td>
+            O sinalizador "excluído" de um contato bruto.
+        </td>
+        <td>
+            Esse sinalizador permite que o Provedor de Contatos mantenha a linha internamente até
+            que os adaptadores de sincronização possam excluí-la dos servidores e, em seguida, excluí-la
+            do repositório.
+        </td>
+    </tr>
+</table>
+<h4>Observações</h4>
+<p>
+    As observações a seguir sobre a tabela
+    {@link android.provider.ContactsContract.RawContacts} são importantes:
+</p>
+<ul>
+    <li>
+        O nome de um contato bruto não é armazenado em sua linha em
+        {@link android.provider.ContactsContract.RawContacts}. Em vez disso, é armazenado na 
+        tabela {@link android.provider.ContactsContract.Data}, em uma
+        linha {@link android.provider.ContactsContract.CommonDataKinds.StructuredName}. Os contatos brutos
+        têm apenas uma linha desse tipo na tabela {@link android.provider.ContactsContract.Data}.
+    </li>
+    <li>
+        <strong>Atenção:</strong> para usar os dados da própria conta em uma linha de contato bruto, é necessário
+        registrá-la primeiro com o {@link android.accounts.AccountManager}. Para isso, faça com que
+        os usuários adicionem o tipo e o nome da conta à lista de contas. Caso
+        contrário, o Provedor de Contatos excluirá a linha do contato bruto automaticamente.
+        <p>
+            Por exemplo: se quiser que o aplicativo mantenha dados de contato do seu serviço baseado em web
+            com o {@code com.example.dataservice} de domínio e com a conta do usuário do serviço
+            {@code becky.sharp@dataservice.example.com}, o usuário precisa, primeiramente, adicionar o "tipo"
+            de conta ({@code com.example.dataservice}) e o "nome" da conta
+            ({@code becky.smart@dataservice.example.com}) antes que o aplicativo adicione linhas de contato bruto.
+            Você pode explicar esse requisito ao usuário em documentações ou pode exigir que o
+            usuário adicione o tipo ou o nome ou ambos. Tipos e nomes de conta
+            são descritos com mais detalhes na próxima seção.
+    </li>
+</ul>
+<h3 id="RawContactsExample">Fontes de dados de contatos brutos</h3>
+<p>
+    Para compreender como os contatos brutos funcionam, considere a usuária "Emily Dickinson" que tem as seguintes
+    três contas de usuário definidas no seu dispositivo:
+</p>
+<ul>
+    <li><code>emily.dickinson@gmail.com</code></li>
+    <li><code>emilyd@gmail.com</code></li>
+    <li>Conta do twitter "belle_of_amherst"</li>
+</ul>
+<p>
+    Essa usuária ativou <em>Sincronizar contatos</em> para todas as três contas nas
+    Configurações da <em>conta</em>.
+</p>
+<p>
+    Suponhamos que Emily Dickinson abra uma janela do navegador, acesse o Gmail como 
+    <code>emily.dickinson@gmail.com</code>, abra
+    Contatos e adicione "Thomas Higginson". Mais tarde, ela acessa o Gmail como
+    <code>emilyd@gmail.com</code> e envia um e-mail para "Thomas Higginson", o que automaticamente
+    o adiciona como um contato. Ela também segue "colonel_tom" (ID do twitter de Thomas Higginson) no
+    Twitter.
+</p>
+<p>
+    O Provedor de Contatos cria três contatos brutos como resultado desse trabalho:
+</p>
+<ol>
+    <li>
+        Um contato bruto de "Thomas Higginson" associado a <code>emily.dickinson@gmail.com</code>.
+        O tipo de conta do usuário é Google.
+    </li>
+    <li>
+        Um segundo contato bruto de "Thomas Higginson" associado a <code>emilyd@gmail.com</code>.
+        O tipo de conta do usuário também é Google. Há um segundo contato bruto,
+        embora o nome seja idêntico a um nome anterior porque a pessoa foi adicionada
+        a uma conta de usuário diferente.
+    </li>
+    <li>
+        Um terceiro contato bruto de "Thomas Higginson" associado a "belle_of_amherst". O tipo
+        de conta de usuário é Twitter.
+    </li>
+</ol>
+<h2 id="DataBasics">Dados</h2>
+<p>
+    Como observado anteriormente, os dados de um contato bruto são armazenados
+    em uma linha {@link android.provider.ContactsContract.Data} vinculada ao valor <code>_ID</code>
+    do contato bruto. Isso permite que um único contato bruto tenha diversas instâncias do mesmo
+    tipo de dados, como endereços de e-mail ou números de telefone. Por exemplo: se
+    "Thomas Higginson" para {@code emilyd@gmail.com}  (a linha do contato bruto de Thomas Higginson
+    associada à conta Google <code>emilyd@gmail.com</code>) tem um endereço de e-mail pessoal
+    <code>thigg@gmail.com</code> e um de trabalho 
+    <code>thomas.higginson@gmail.com</code>, o Provedor de Contatos armazena as duas linhas de endereço de e-mail
+    e vincula ambas ao contato bruto.
+</p>
+<p>
+    Observe que diferentes tipos de dados são armazenados nessa única tabela. Linhas de nome de exibição,
+    número de telefone, e-mail, endereço postal, foto e detalhes de site são encontradas
+    na tabela {@link android.provider.ContactsContract.Data}. Para ajudar a gerenciar isso,
+    a tabela {@link android.provider.ContactsContract.Data} tem algumas colunas com nomes descritivos
+    e outras com nomes genéricos. O conteúdo de uma coluna de nome descritivo tem o mesmo significado
+    independente do tipo de dado da linha, enquanto o conteúdo de uma coluna de nome genérico tem
+    diferentes significados dependendo do tipo de dados.
+</p>
+<h3 id="DescriptiveColumns">Nomes de coluna descritiva</h3>
+<p>
+    A seguir há alguns exemplos de nomes descritivos de colunas:
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Data#RAW_CONTACT_ID}
+    </dt>
+    <dd>
+        O valor da coluna <code>_ID</code> do contato bruto para estes dados.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data#MIMETYPE}
+    </dt>
+    <dd>
+        O tipo de dado armazenado nessa linha, expresso como um tipo MIME personalizado. O Provedor de Contatos
+        usa os tipos MIME definidos nas subclasses de
+        {@link android.provider.ContactsContract.CommonDataKinds}. Esses tipos MIME têm código aberto
+        e podem ser usados por qualquer aplicativo ou adaptador de sincronização que funcione com o Provedor de Contatos.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY}
+    </dt>
+    <dd>
+        Se esse tipo de linha de dados puder ocorrer mais do que uma vez em um contato bruto,
+        a coluna {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} sinaliza
+        a linha de dados que contém os dados primários do tipo. Por exemplo: se
+        o usuário pressionar por algum tempo um número de telefone de um contato e selecionar <strong>Definir padrão</strong>,
+        a linha {@link android.provider.ContactsContract.Data} que contém esse número
+        tem sua coluna {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} definida
+        como um valor diferente de zero.
+    </dd>
+</dl>
+<h3 id="GenericColumns">Nomes de coluna genérica</h3>
+<p>
+    Há 15 colunas genéricas de nome <code>DATA1</code> a
+    <code>DATA15</code> que estão, em geral, disponíveis e quatro colunas genéricas
+     adicionais <code>SYNC1</code> a <code>SYNC4</code> que devem ser usadas somente por adaptadores
+    de sincronização. As constantes de nome da coluna genérica sempre funcionam independentemente do tipo
+    de dados que a linha contenha.
+</p>
+<p>
+    A coluna <code>DATA1</code> é indexada.  O Provedor de Contatos sempre usa essa coluna para
+    os dados que o provedor espera serem os alvos mais frequentes de uma consulta. Por exemplo:
+    em uma linha de e-mail, essa coluna contém o endereço de e-mail atual.
+</p>
+<p>
+    Por convenção, a coluna <code>DATA15</code> é reservada para armazenar dados de BLOBs
+    (Binary Large Object), como miniaturas de fotos.
+</p>
+<h3 id="TypeSpecificNames">Nomes de coluna de tipo específico</h3>
+<p>
+    Para facilitar o trabalho com as colunas para um tipo específico de linha, o Provedor de Contatos
+    também fornece constantes de nome de colunas de tipo específico, definidas em subclasses de
+    {@link android.provider.ContactsContract.CommonDataKinds}. As constantes simplesmente dão
+    um nome de constante diferente para o mesmo nome de coluna, o que ajuda no acesso aos dados em uma linha
+    de um tipo específico.
+</p>
+<p>
+    Por exemplo: a classe {@link android.provider.ContactsContract.CommonDataKinds.Email} define
+    constantes de nome de coluna de tipo específico para uma linha {@link android.provider.ContactsContract.Data}
+    que tem o tipo MIME
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+    Email.CONTENT_ITEM_TYPE}. A classe contém a constante
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} para a coluna de endereço
+    de e-mail. O valor atual
+    de {@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} é "data1", que é
+    igual ao nome genérico da coluna.
+</p>
+<p class="caution">
+    <strong>Atenção:</strong> não adicione seus dados personalizados
+    à tabela {@link android.provider.ContactsContract.Data} usando uma linha que tenha um dos
+    tipos de MIME predefinidos do provedor. Caso contrário, há o risco de perda de dados ou mau funcionamento
+    do provedor. Por exemplo: não se deve adicionar uma linha com o tipo MIME
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+    Email.CONTENT_ITEM_TYPE} que contenha um nome de usuário em vez de um endereço de e-mail na
+    coluna <code>DATA1</code>. Se for usado um tipo MIME personalizado para a linha, será possível
+    definir os próprios nomes de coluna de tipo específico e usar as colunas como quiser.
+</p>
+<p>
+    A figura 2 mostra como colunas descritivas e colunas de dados aparecem
+    em uma linha {@link android.provider.ContactsContract.Data} e como os nomes de coluna de tipo específico se "sobrepõem"
+    aos nomes de coluna genérica.
+</p>
+<img src="{@docRoot}images/providers/data_columns.png" alt="How type-specific column names map to generic column names" height="311" id="figure2" />
+<p class="img-caption">
+  <strong>Figura 2.</strong> Nomes de coluna de tipo específico e nomes de coluna genérica.
+</p>
+<h3 id="ColumnMaps">Classes de nome de coluna de tipo específico</h3>
+<p>
+    A tabela 2 lista as classes de nome de coluna de tipo específico mais usadas:
+</p>
+<p class="table-caption" id="table2">
+  <strong>Tabela 2.</strong> Classes de nome de coluna de tipo específico</p>
+<table>
+  <tr>
+    <th scope="col">Classes de mapeamento</th>
+    <th scope="col">Tipo de dados</th>
+    <th scope="col">Observações</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredName}</td>
+    <td>Os dados de nome do contato bruto associados a essa linha de dados.</td>
+    <td>Os contatos brutos têm apenas uma dessas linhas.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Photo}</td>
+    <td>A foto principal do contato bruto associada a essa linha de dados.</td>
+    <td>Os contatos brutos têm apenas uma dessas linhas.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Email}</td>
+    <td>Um endereço de e-mail do contato bruto associado a essa linha de dados.</td>
+    <td>Os contatos brutos podem ter diversos endereços de e-mail.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal}</td>
+    <td>Um endereço postal do contato bruto associado a essa linha de dados.</td>
+    <td>Os contatos brutos podem ter diversos endereços postais.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}</td>
+    <td>Um identificador que vincula o contato bruto a um dos grupos no Provedor de Contatos.</td>
+    <td>
+        Grupos são um recurso opcional de um tipo e um nome de conta. Eles são descritos
+        mais detalhadamente na seção <a href="#Groups">Grupos de contato</a>.
+    </td>
+  </tr>
+</table>
+<h3 id="ContactBasics">Contatos</h3>
+<p>
+    O Provedor de Contatos combina as linhas do contato bruto entre todos os tipos e nomes de conta
+    para formar um <strong>contato</strong>. Isso facilita a exibição e modificação de todos os dados de uma pessoa que um
+    usuário tenha coletado. O Provedor de Contatos gerencia a criação de linhas
+    de novos contatos e a agregação de contatos brutos a uma linha de contato existente. Nem os aplicativos, nem
+    os adaptadores de sincronização têm permissão para adicionar contatos, e algumas colunas em uma linha de contato são de somente leitura.
+</p>
+<p class="note">
+    <strong>Observação:</strong> a tentativa de adicionar um contato ao Provedor de Contatos com um
+    {@link android.content.ContentResolver#insert(Uri,ContentValues) insert()} gerará
+    uma exceção {@link java.lang.UnsupportedOperationException}. A tentativa de atualizar uma coluna
+    listada como "somente leitura" será ignorada.
+</p>
+<p>
+    O Provedor de Contatos cria um novo contato em resposta à adição de um novo contato bruto
+    que não corresponda a nenhum contato existente. O provedor também faz isso se os dados de um
+    contato bruto existente mudam de modo a não corresponder mais ao contato
+    inserido anteriormente. Se um aplicativo ou um adaptador de sincronização criar um novo contato bruto que
+    <em>corresponda</em> a um contato existente, o novo contato bruto será agregado ao contato
+    existente.
+</p>
+<p>
+    O Provedor de Contatos liga uma linha do contato às linhas do contato bruto com a coluna <code>_ID</code>
+    da linha do contato na tabela
+    {@link android.provider.ContactsContract.Contacts Contacts}. A coluna <code>CONTACT_ID</code> da tabela de contatos brutos
+    {@link android.provider.ContactsContract.RawContacts} contém valores <code>_ID</code> para
+    a linha dos contatos associados a cada linha dos contatos brutos.
+</p>
+<p>
+    A tabela {@link android.provider.ContactsContract.Contacts} também tem a coluna
+    {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}, que é
+    um vínculo "permanente" com a linha do contato. Como o Provedor de Contatos mantém contatos
+    automaticamente, ele pode mudar o valor de {@code android.provider.BaseColumns#_ID} da linha do contato
+    em resposta a uma agregação ou sincronização. Mesmo que isso aconteça, a URI de conteúdo
+    {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI} combinada com
+    {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} do contato continuará
+    apontado para a linha do contato para permitir o uso de
+    {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}
+    e manter ligações com contatos "favoritos" e assim por diante. Essa coluna tem o próprio formato, que 
+    não tem nenhuma relação com o formato da coluna {@code android.provider.BaseColumns#_ID}.
+</p>
+<p>
+    A figura 3 mostra como as três tabelas principais se relacionam entre si.
+</p>
+<img src="{@docRoot}images/providers/contacts_tables.png" alt="Contacts provider main tables" height="514" id="figure4" />
+<p class="img-caption">
+  <strong>Figura 3.</strong> Contatos, contatos brutos e relacionamentos da tabela de detalhes.
+</p>
+<h2 id="Sources">Dados de adaptadores de sincronização</h2>
+<p>
+    Os usuários inserem dados de contato diretamente no dispositivo, mas os dados também são direcionados ao Provedor
+    de Contatos a partir de serviços web via <strong>adaptadores de sincronização</strong>, que automatizam
+    a transferência de dados entre dispositivo e serviços. Adaptadores de sincronização funcionam em segundo plano,
+    controlados pelo sistema, e chamam métodos {@link android.content.ContentResolver}
+    para gerenciar os dados.
+</p>
+<p>
+    No Android, o serviço web com o qual um adaptador de sincronização trabalha é identificado por um tipo de conta.
+    Cada adaptador de sincronização funciona com um tipo de conta, mas é compatível com diversos nomes de conta
+    para o tipo em questão. Tipos e nomes de conta são descritos brevemente na seção
+    <a href="#RawContactsExample">Fontes de dados de contatos brutos</a>. As definições a seguir fornecem
+    mais detalhes e descrevem como o tipo e o nome de conta se relacionam com adaptadores de sincronização e serviços.
+</p>
+<dl>
+    <dt>
+        Tipo de conta
+    </dt>
+    <dd>
+        Identifica um serviço em que o usuário tenha armazenado dados. Na maior parte do tempo, o usuário deve
+        autenticar com o serviço. Por exemplo: Google Contacts é um tipo de conta, identificado
+        pelo código <code>google.com</code>. Esse valor corresponde ao tipo de conta usado pelo
+        {@link android.accounts.AccountManager}.
+    </dd>
+    <dt>
+        Nome da conta
+    </dt>
+    <dd>
+        Identifica uma conta ou login específico de um tipo de conta. As contas Google Contacts
+        são idênticas às contas Google, que têm um endereço de e-mail como nome da conta.
+        Outros serviços podem usar um nome de usuário com só uma palavra ou ID numérico.
+    </dd>
+</dl>
+<p>
+    Os tipos de conta não precisam ser exclusivos. Um usuário pode configurar diversas contas Google Contacts
+    e baixar os dados dela para o Provedor de Contatos. Isso pode acontecer se o usuário tiver um grupo de
+    contatos pessoais para um nome de conta pessoal e outro grupo para um de conta de trabalho. Nomes de conta normalmente
+    são exclusivos. Juntos, eles identificam um fluxo de dados específicos entre o Provedor de Contatos e
+    um serviço externo.
+</p>
+<p>
+    Se você desejar transferir os dados do serviço ao Provedor de Contatos, precisará criar seu
+    próprio adaptador de sincronização. Isso é descrito com mais detalhes na seção
+    <a href="#SyncAdapters">Adaptadores de sincronização do Provedor de Contatos</a>.
+</p>
+<p>
+    A figura 4 mostra como o Provedor de Contatos se insere no fluxo de dados
+    sobre pessoas. Na caixa marcada "adaptadores de sincronização", cada adaptador é etiquetado pelo tipo de conta.
+</p>
+<img src="{@docRoot}images/providers/ContactsDataFlow.png" alt="Flow of data about people" height="252" id="figure5" />
+<p class="img-caption">
+  <strong>Figura 4.</strong> Fluxo de dados do Provedor de Contatos.
+</p>
+<h2 id="Permissions">Permissões necessárias</h2>
+<p>
+    Os aplicativos que queiram acessar o Provedor de Contatos devem solicitar as seguintes
+    permissões:
+</p>
+<dl>
+    <dt>Acesso de leitura a uma ou mais tabelas</dt>
+    <dd>
+        {@link android.Manifest.permission#READ_CONTACTS}, especificado em
+        <code>AndroidManifest.xml</code> com
+        o elemento <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code>
+        como <code>&lt;uses-permission android:name="android.permission.READ_CONTACTS"&gt;</code>.
+    </dd>
+    <dt>Acesso de gravação a uma ou mais tabelas</dt>
+    <dd>
+        {@link android.Manifest.permission#WRITE_CONTACTS}, especificado em
+        <code>AndroidManifest.xml</code> com
+        o elemento <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code>
+        como <code>&lt;uses-permission android:name="android.permission.WRITE_CONTACTS"&gt;</code>.
+    </dd>
+</dl>
+<p>
+    Essas permissões não se estendem aos dados do perfil do usuário. O perfil do usuário
+        e suas permissões necessárias são abordados na seção a seguir:
+        <a href="#UserProfile">O perfil do usuário</a>.
+</p>
+<p>
+    Lembre-se de que os dados de contato do usuário são pessoais e confidenciais. Os usuários se preocupam
+    com a privacidade e, por isso, não querem aplicativos que coletem dados sobre eles ou seus contatos.
+    Se não for óbvio o motivo da necessidade de permissões para acessar os dados de contato de um usuário, eles podem atribuir
+    avaliações ruins ao seu aplicativo ou simplesmente não instalá-lo.
+</p>
+<h2 id="UserProfile">O perfil do usuário</h2>
+<p>
+    A tabela {@link android.provider.ContactsContract.Contacts} tem uma única linha contendo
+    os dados do perfil do usuário do dispositivo. Esses dados descrevem o <code>user</code> do dispositivo em vez
+    de um dos contatos do usuário. A linha de contatos do perfil é vinculada a uma linha
+    de contatos brutos para cada sistema que usa um perfil.
+    Cada linha de contato bruto de perfil pode ter diversas linhas de dados. Constantes de acesso ao perfil
+    do usuário estão disponíveis na classe {@link android.provider.ContactsContract.Profile}.
+</p>
+<p>
+    O acesso ao perfil do usuário exige permissões especiais. Além das permissões
+    {@link android.Manifest.permission#READ_CONTACTS} e
+    {@link android.Manifest.permission#WRITE_CONTACTS} necessárias para ler e gravar, o acesso
+    ao perfil do usuário requer as permissões {@code android.Manifest.permission#READ_PROFILE} e
+    {@code android.Manifest.permission#WRITE_PROFILE}, respectivamente, para ler e
+    gravar.
+</p>
+<p>
+    Lembre-se de que é preciso considerar a confidencialidade de um perfil do usuário. A permissão
+    {@code android.Manifest.permission#READ_PROFILE} permite o acesso aos dados de identificação
+    pessoal do usuário do dispositivo. Certifique-se de informar ao usuário o motivo
+    da necessidade de permissões de acesso ao perfil do usuário na descrição do aplicativo.
+</p>
+<p>
+    Para recuperar a linha de contato que contém o perfil do usuário,
+    chame {@link android.content.ContentResolver#query(Uri,String[], String, String[], String)
+    ContentResolver.query()}. Defina a URI de conteúdo como
+    {@link android.provider.ContactsContract.Profile#CONTENT_URI} e não forneça nenhum
+    critério de seleção. Também é possível usar essa URI de conteúdo como base para recuperar
+    contatos brutos ou dados do perfil. Por exemplo, esse fragmento recupera dados do perfil:
+</p>
+<pre>
+// Sets the columns to retrieve for the user profile
+mProjection = new String[]
+    {
+        Profile._ID,
+        Profile.DISPLAY_NAME_PRIMARY,
+        Profile.LOOKUP_KEY,
+        Profile.PHOTO_THUMBNAIL_URI
+    };
+
+// Retrieves the profile from the Contacts Provider
+mProfileCursor =
+        getContentResolver().query(
+                Profile.CONTENT_URI,
+                mProjection ,
+                null,
+                null,
+                null);
+</pre>
+<p class="note">
+    <strong>Observação:</strong> se você recuperar diversas linhas de contato e quiser determinar se uma delas
+    é o perfil do usuário, teste a coluna
+    {@link android.provider.ContactsContract.ContactsColumns#IS_USER_PROFILE} da linha. Essa coluna
+    é definida como "1" se o contato for o perfil do usuário.
+</p>
+<h2 id="ContactsProviderMetadata">Metadados do Provedor de Contatos</h2>
+<p>
+    O Provedor de Contatos gerencia dados que acompanham o estado dos dados de contatos
+    no repositório. Esses metadados sobre o repositório são armazenados em vários locais, inclusive
+    os contatos brutos, os dados e as linhas da tabela de contatos,
+    a tabela {@link android.provider.ContactsContract.Settings}
+    e a tabela {@link android.provider.ContactsContract.SyncState}. A tabela a seguir mostra
+    o efeito de cada uma dessas partes de metadados:
+</p>
+<p class="table-caption" id="table3">
+  <strong>Tabela 3.</strong> Metadados no Provedor de Contatos</p>
+<table>
+    <tr>
+        <th scope="col">Tabela</th>
+        <th scope="col">Coluna</th>
+        <th scope="col">Valores</th>
+        <th scope="col">Significado</th>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.RawContacts}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.SyncColumns#DIRTY}</td>
+        <td>"0" - sem modificação desde a última sincronização.</td>
+        <td rowspan="2">
+            Sinaliza contatos brutos que não mudaram no dispositivo e devem ser sincronizados com
+            o servidor. O valor é definido automaticamente pelo Provedor de Contatos quando os aplicativos
+            do Android atualizam uma linha.
+            <p>
+                Adaptadores de sincronização que modificam o contato bruto ou as tabelas de dados sempre devem anexar a
+                string {@link android.provider.ContactsContract#CALLER_IS_SYNCADAPTER}
+                à URI de conteúdo usada. Isso evita que o provedor sinalize alguma linha como suja.
+                Caso contrário, as modificações do adaptador de sincronização parecem ser modificações locais e são
+                enviadas ao servidor, mesmo que o servidor seja a origem da modificação.
+            </p>
+        </td>
+    </tr>
+    <tr>
+            <td>"1" - modificado desde a última sincronização, precisa ser sincronizado com o servidor.</td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#VERSION}</td>
+        <td>O número da versão dessa linha.</td>
+        <td>
+            O Provedor de Contatos incrementa esse valor automaticamente sempre que a linha ou
+            os dados relacionados a ela mudam.
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.Data}</td>
+        <td>{@link android.provider.ContactsContract.DataColumns#DATA_VERSION}</td>
+        <td>O número da versão dessa linha.</td>
+        <td>
+            O Provedor de Contatos incrementa esse valor automaticamente sempre que a linha de dados
+            é modificada.
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}</td>
+        <td>
+            Valor de string que identifica exclusivamente esse contato bruto para a conta em
+            que foi criado.
+        </td>
+        <td>
+            Quando um adaptador de sincronização cria um novo contato bruto, essa coluna deve ser definida como
+            o ID exclusivo do servidor para o contato bruto. Quando um aplicativo do Android cria um novo
+            contato bruto, o aplicativo deve deixar essa coluna vazia. Isso sinaliza ao adaptador
+            de sincronização que ele deve criar um novo contato bruto no servidor e obter
+            um valor para o {@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}.
+            <p>
+                Em particular, o ID de origem deve ser <strong>exclusivo</strong> de cada tipo
+            de conta e estável em sincronizações:
+            </p>
+                <ul>
+                    <li>
+                        Exclusivo: cada contato bruto de uma conta deve ter o próprio ID de origem. Se isso
+                        não for aplicado, haverá problemas no aplicativo de contatos.
+                        Observe que dois contatos brutos do mesmo <em>tipo</em> de conta podem ter
+                        o mesmo ID de origem. Por exemplo: o contato bruto "Thomas Higginson" da
+                        conta {@code emily.dickinson@gmail.com} pode ter o mesmo ID
+                        de origem do contato bruto "Thomas Higginson" da conta
+                        {@code emilyd@gmail.com}.
+                    </li>
+                    <li>
+                        Estável: IDs de origem são uma parte permanente dos dados do serviço on-line para
+                        o contato bruto. Por exemplo: se o usuário apaga o Armazenamento de Contatos
+                        nas configurações dos aplicativos e ressincroniza, os contatos brutos restaurados devem ter os mesmos
+                        IDs de origem de antes. Se isso não for aplicado, os atalhos
+                        deixarão de funcionar.
+                    </li>
+                </ul>
+        </td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Groups}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.GroupsColumns#GROUP_VISIBLE}</td>
+        <td>"0" - os contatos nesse grupo não devem ser visíveis em IUs do aplicativo do Android.</td>
+        <td>
+            Essa coluna se destina à compatibilidade com servidores, que permitem que um usuário oculte contatos
+            em determinados grupos.
+        </td>
+    </tr>
+    <tr>
+        <td>"1" - os contatos nesse grupo podem ser visíveis nas IUs do aplicativo.</td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Settings}</td>
+        <td rowspan="2">
+            {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE}</td>
+        <td>
+            "0" - para essa conta e esse tipo de conta, os contatos que não pertencem a um grupo são
+            invisíveis nas IUs do aplicativo do Android.
+        </td>
+        <td rowspan="2">
+            Por padrão, os contatos são invisíveis se nenhum dos contatos brutos pertencer a algum grupo
+            (a associação de grupo de um contato bruto é indicada por uma ou mais
+            linhas {@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}
+            na tabela {@link android.provider.ContactsContract.Data}).
+            Por padrão, é possível fazer com que contatos sem grupos sejam visíveis
+            por meio desse sinalizador na linha da tabela {@link android.provider.ContactsContract.Settings} para um tipo de conta e uma conta.
+            Esse sinalizador serve para exibir contatos de servidores que não usam grupos.
+        </td>
+    </tr>
+    <tr>
+        <td>
+            "1" - para essa conta e esse tipo de conta, os contatos que não pertencem a um grupo são
+            visíveis nas IUs do aplicativo.
+        </td>
+
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.SyncState}</td>
+        <td>(todos)</td>
+        <td>
+            Use essa tabela para armazenar metadados do seu adaptador de sincronização.
+        </td>
+        <td>
+            Com essa tabela, é possível armazenar o estado de sincronização e outros dados relacionados à sincronização persistentes
+            no dispositivo.
+        </td>
+    </tr>
+</table>
+<h2 id="Access">Acesso ao Provedor de Contatos</h2>
+<p>
+    Esta seção descreve orientações quanto ao acesso a dados do Provedor de Contatos, com foco
+    no seguinte:
+</p>
+<ul>
+    <li>
+        Consultas de entidade.
+    </li>
+    <li>
+        Modificação em lote.
+    </li>
+    <li>
+        Recuperação e modificação com intenções.
+    </li>
+    <li>
+        Integridade dos dados.
+    </li>
+</ul>
+<p>
+    A realização de modificações de um adaptador de sincronização também é abordada na seção
+    <a href="#SyncAdapters">Adaptadores de sincronização do Provedor de Contatos</a>.
+</p>
+<h3 id="Entities">Consultas de entidades</h3>
+<p>
+    A organização hierárquica das tabelas do Provedor de Contatos é muito útil
+    para recuperar uma linha e todas as linhas "filhas" vinculadas. Por exemplo: para exibir
+    todas as informações de uma pessoa, você pode querer recuperar todas
+    as linhas {@link android.provider.ContactsContract.RawContacts} de uma única
+    linha {@link android.provider.ContactsContract.Contacts} ou todas
+    as linhas {@link android.provider.ContactsContract.CommonDataKinds.Email} de uma única
+    linha {@link android.provider.ContactsContract.RawContacts}. Para facilitar isso, o Provedor
+    de contatos oferece a ideia de <strong>entidade</strong>, que atua como uma junção dos bancos de dados entre
+    tabelas.
+</p>
+<p>
+    Entidade é como uma tabela composta de colunas selecionadas de uma tabela pai e uma tabela filha.
+    Ao consultar uma entidade, fornece-se uma projeção e buscam-se critérios com base nas colunas
+    disponíveis da entidade. O resultado é um {@link android.database.Cursor} que contém
+    uma linha para cada linha recuperada da tabela filha. Por exemplo: ao consultar
+    {@link android.provider.ContactsContract.Contacts.Entity} de um nome de contato
+    e todas as linhas {@link android.provider.ContactsContract.CommonDataKinds.Email} de todos os
+    contatos brutos por esse nome, você obterá um {@link android.database.Cursor} contendo uma linha
+    para cada linha {@link android.provider.ContactsContract.CommonDataKinds.Email}.
+</p>
+<p>
+    As entidades simplificam as consultas. Usando uma entidade, é possível recuperar todos os dados de contatos
+    de um contato ou contato bruto de uma vez, sem precisar consultar primeiro a tabela pai para obter
+    um ID e, em seguida, ter que consultar a tabela filha com esse ID. Além disso, o Provedor de Contatos processa
+    uma consulta com uma entidade em uma transação única, o que garante que os dados recuperados
+    sejam consistentes internamente.
+</p>
+<p class="note">
+    <strong>Observação:</strong> uma entidade normalmente não contém todas as colunas da tabela pai e
+    da tabela filha. Se você tentar trabalhar com um nome de coluna que não esteja na lista de constantes de nomes de coluna
+    da entidade, será gerada uma {@link java.lang.Exception}.
+</p>
+<p>
+    O fragmento a seguir mostra como recuperar todas as linhas de contato bruto de um contato. O fragmento
+    é parte de um aplicativo maior que tem duas atividades: "principal" e “de detalhes". A atividade principal
+    exibe uma lista de linhas de contato. Quando um usuário seleciona uma delas, a atividade envia o ID correspondente à atividade
+    de detalhes. A atividade de detalhes usa {@link android.provider.ContactsContract.Contacts.Entity}
+    para exibir todas as linhas de dados de todos os contatos brutos associados ao contato
+    selecionado.
+</p>
+<p>
+    Esse fragmento é extraído da atividade "de detalhes":
+</p>
+<pre>
+...
+    /*
+     * Appends the entity path to the URI. In the case of the Contacts Provider, the
+     * expected URI is content://com.google.contacts/#/entity (# is the ID value).
+     */
+    mContactUri = Uri.withAppendedPath(
+            mContactUri,
+            ContactsContract.Contacts.Entity.CONTENT_DIRECTORY);
+
+    // Initializes the loader identified by LOADER_ID.
+    getLoaderManager().initLoader(
+            LOADER_ID,  // The identifier of the loader to initialize
+            null,       // Arguments for the loader (in this case, none)
+            this);      // The context of the activity
+
+    // Creates a new cursor adapter to attach to the list view
+    mCursorAdapter = new SimpleCursorAdapter(
+            this,                        // the context of the activity
+            R.layout.detail_list_item,   // the view item containing the detail widgets
+            mCursor,                     // the backing cursor
+            mFromColumns,                // the columns in the cursor that provide the data
+            mToViews,                    // the views in the view item that display the data
+            0);                          // flags
+
+    // Sets the ListView's backing adapter.
+    mRawContactList.setAdapter(mCursorAdapter);
+...
+&#64;Override
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+
+    /*
+     * Sets the columns to retrieve.
+     * RAW_CONTACT_ID is included to identify the raw contact associated with the data row.
+     * DATA1 contains the first column in the data row (usually the most important one).
+     * MIMETYPE indicates the type of data in the data row.
+     */
+    String[] projection =
+        {
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID,
+            ContactsContract.Contacts.Entity.DATA1,
+            ContactsContract.Contacts.Entity.MIMETYPE
+        };
+
+    /*
+     * Sorts the retrieved cursor by raw contact id, to keep all data rows for a single raw
+     * contact collated together.
+     */
+    String sortOrder =
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID +
+            " ASC";
+
+    /*
+     * Returns a new CursorLoader. The arguments are similar to
+     * ContentResolver.query(), except for the Context argument, which supplies the location of
+     * the ContentResolver to use.
+     */
+    return new CursorLoader(
+            getApplicationContext(),  // The activity's context
+            mContactUri,              // The entity content URI for a single contact
+            projection,               // The columns to retrieve
+            null,                     // Retrieve all the raw contacts and their data rows.
+            null,                     //
+            sortOrder);               // Sort by the raw contact ID.
+}
+</pre>
+<p>
+    Quando o carregamento é finalizado, {@link android.app.LoaderManager} invoca um retorno de chamada para
+    {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished(Loader, D)
+    onLoadFinished()}. Um dos argumentos de entrada nesse método é um
+    {@link android.database.Cursor} com os resultados da consulta. No seu aplicativo, você pode obter os
+    dados desse {@link android.database.Cursor} para exibi-los ou trabalhar com eles posteriormente.
+</p>
+<h3 id="Transactions">Modificação em lote</h3>
+<p>
+    Sempre que possível, deve-se inserir, atualizar e excluir dados no Provedor de Contatos
+    em "modo de lote", criando um {@link java.util.ArrayList} de
+    objetos {@link android.content.ContentProviderOperation} e chamando
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. Como
+    o Provedor de Contatos realiza todas as operações em um
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} em uma única
+    transação, as modificações nunca deixarão o repositório de contatos em um estado
+    inconsistente. As modificações em lote também facilitam a inserção de um contato bruto e seus dados de detalhe
+    ao mesmo tempo.
+</p>
+<p class="note">
+    <strong>Observação:</strong> para modificar um contato bruto <em>exclusivo</em>, considere enviar uma intenção ao
+    aplicativo de contatos do dispositivo em vez de realizar a modificação no aplicativo.
+    Na seção <a href="#Intents">Recuperação e modificação com intenções</a> há mais detalhes
+    sobre como fazer isso.
+</p>
+<h4>Pontos de rendimento</h4>
+<p>
+    As modificações em lote que contiverem muitas operações podem bloquear outros processos,
+    resultando em uma experiência geral ruim para o usuário. Para organizar todas as modificações
+    a realizar no menor número de listas separadas possível e, ao mesmo tempo, evitar
+    o bloqueio do sistema, é preciso definir <strong>pontos de rendimento</strong> para uma ou mais operações.
+    Pontos de rendimento são objetos {@link android.content.ContentProviderOperation} que têm seu
+    valor {@link android.content.ContentProviderOperation#isYieldAllowed()} definido como
+    <code>true</code>. Quando o Provedor de Contatos encontra um ponto de rendimento, ele pausa o trabalho
+    para permitir a execução de outros processos e encerra a transação em curso. Quando o provedor retorna, ele
+    continua na próxima operação da {@link java.util.ArrayList} e inicia
+    uma nova transação.
+</p>
+<p>
+    Os pontos de rendimento resultam em mais de uma transação por chamada de
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. Por isso,
+    é preciso definir um ponto de rendimento para a última operação de um conjunto de linhas relacionadas.
+    Por exemplo: é preciso definir um ponto de rendimento para a última operação em um conjunto que adicione
+    linhas de um contato bruto e linhas de dados associados a ele, ou para a última operação de um conjunto de linhas relacionadas
+    a um único contato.
+</p>
+<p>
+    Os pontos de rendimento também são uma unidade de operação atômica. Todos os acessos entre dois pontos de rendimento
+    terão sucesso ou fracasso como uma unidade. Se não houver pontos de rendimento definidos, a menor
+    operação atômica será todo o lote de operações. Se forem usados pontos de rendimento, eles evitarão
+    que as operações prejudiquem o desempenho do sistema e, ao mesmo tempo, garantirá que o subconjunto
+    de operações seja atômico.
+</p>
+<h4>Referências de retorno da modificação</h4>
+<p>
+    Ao inserir uma nova linha de contato bruto e as linhas de dados associados como um conjunto
+    de objetos {@link android.content.ContentProviderOperation}, é preciso vincular as linhas de dados
+    à linha de contato bruto pela inserção do valor
+    {@code android.provider.BaseColumns#_ID} do contato bruto como
+    o valor {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}. Contudo, esse
+    valor não está disponível ao criar a {@link android.content.ContentProviderOperation}
+    para a linha de dados porque 
+    {@link android.content.ContentProviderOperation} ainda não foi aplicada à linha de contato bruto. Para trabalhar com isso,
+    a classe {@link android.content.ContentProviderOperation.Builder} tem o método
+    {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}.
+    Esse método permite a inserção ou modificação de uma coluna com
+    o resultado de uma operação anterior.
+</p>
+<p>
+    O método {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+    tem dois argumentos:
+</p>
+    <dl>
+        <dt>
+            <code>key</code>
+        </dt>
+        <dd>
+            O principal de um par de valores principais. O valor desse argumento deve ser o nome de uma coluna
+            na tabela que será modificada.
+        </dd>
+        <dt>
+            <code>previousResult</code>
+        </dt>
+        <dd>
+            O índice com base 0 de um valor em uma matriz
+            de objetos {@link android.content.ContentProviderResult}
+de             {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. Quando
+            as operações em lote são aplicadas, o resultado de cada operação é armazenado
+            em uma matriz intermediária de resultados. O valor <code>previousResult</code> é o índice
+            de um desses resultados, que é recuperado e armazenado com o valor
+            <code>key</code>. Isso permite a inserção de um novo registro de contato bruto e a recuperação do seu
+            valor {@code android.provider.BaseColumns#_ID}, seguido de uma "referência de retorno" ao
+            valor ao adicionar uma linha {@link android.provider.ContactsContract.Data}.
+            <p>
+                Toda a matriz de resultados é criada ao chamar
+                {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} pela primeira vez,
+                com tamanho igual ao da {@link java.util.ArrayList}
+                de objetos {@link android.content.ContentProviderOperation} fornecidos. No entanto, todos
+                os elementos na matriz de resultados são definidos como <code>null</code> e, se houver uma tentativa
+                de referência de retorno a um resultado de uma operação ainda não realizada,
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+                gera uma {@link java.lang.Exception}.
+
+            </p>
+        </dd>
+    </dl>
+<p>
+    Os fragmentos a seguir mostram como inserir um novo contato bruto e dados em lote. Eles
+    contém o código que estabelece um ponto de rendimento e usam uma referência de retorno. Os fragmentos são
+    uma versão expandida do método <code>createContacEntry()</code>, que é parte
+    da classe <code>ContactAdder</code>
+    no aplicativo de exemplo de <code><a href="{@docRoot}resources/samples/ContactManager/index.html">
+    Contact Manager</a></code>.
+</p>
+<p>
+    O primeiro fragmento recupera dados de contato da IU. Nesse momento, o usuário já
+    selecionou a conta na qual o novo contato bruto deve ser adicionado.
+</p>
+<pre>
+// Creates a contact entry from the current UI values, using the currently-selected account.
+protected void createContactEntry() {
+    /*
+     * Gets values from the UI
+     */
+    String name = mContactNameEditText.getText().toString();
+    String phone = mContactPhoneEditText.getText().toString();
+    String email = mContactEmailEditText.getText().toString();
+
+    int phoneType = mContactPhoneTypes.get(
+            mContactPhoneTypeSpinner.getSelectedItemPosition());
+
+    int emailType = mContactEmailTypes.get(
+            mContactEmailTypeSpinner.getSelectedItemPosition());
+</pre>
+<p>
+    O próximo fragmento cria uma operação para inserir a linha de contato bruto
+    na tabela {@link android.provider.ContactsContract.RawContacts}:
+</p>
+<pre>
+    /*
+     * Prepares the batch operation for inserting a new raw contact and its data. Even if
+     * the Contacts Provider does not have any data for this person, you can't add a Contact,
+     * only a raw contact. The Contacts Provider will then add a Contact automatically.
+     */
+
+     // Creates a new array of ContentProviderOperation objects.
+    ArrayList&lt;ContentProviderOperation&gt; ops =
+            new ArrayList&lt;ContentProviderOperation&gt;();
+
+    /*
+     * Creates a new raw contact with its account type (server type) and account name
+     * (user's account). Remember that the display name is not stored in this row, but in a
+     * StructuredName data row. No other data is required.
+     */
+    ContentProviderOperation.Builder op =
+            ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI)
+            .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType())
+            .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    Em seguida, o código cria linhas de dados para as linhas de nome de exibição, telefone e e-mail.
+</p>
+<p>
+    Cada objeto construtor de operações usa
+    {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+    para obter
+    o {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}. Os pontos de referência
+    voltam ao objeto {@link android.content.ContentProviderResult} a partir da primeira operação,
+    que adiciona a linha de contato bruto e retorna seu novo valor
+    {@code android.provider.BaseColumns#_ID}. Como resultado, cada linha de dados é automaticamente vinculada por meio do
+    {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}
+    à nova linha {@link android.provider.ContactsContract.RawContacts} à qual ela pertence.
+</p>
+<p>
+    O objeto {@link android.content.ContentProviderOperation.Builder} que adiciona a linha de e-mail é
+    sinalizado com {@link android.content.ContentProviderOperation.Builder#withYieldAllowed(boolean)
+    withYieldAllowed()}, que define um ponto de rendimento:
+</p>
+<pre>
+    // Creates the display name for the new raw contact, as a StructuredName data row.
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * withValueBackReference sets the value of the first argument to the value of
+             * the ContentProviderResult indexed by the second argument. In this particular
+             * call, the raw contact ID column of the StructuredName data row is set to the
+             * value of the result returned by the first operation, which is the one that
+             * actually adds the raw contact row.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to StructuredName
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
+
+            // Sets the data row's display name to the name in the UI.
+            .withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified phone number and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Phone
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
+
+            // Sets the phone number and type
+            .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, phone)
+            .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, phoneType);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified email and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Email
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE)
+
+            // Sets the email address and type
+            .withValue(ContactsContract.CommonDataKinds.Email.ADDRESS, email)
+            .withValue(ContactsContract.CommonDataKinds.Email.TYPE, emailType);
+
+    /*
+     * Demonstrates a yield point. At the end of this insert, the batch operation's thread
+     * will yield priority to other threads. Use after every set of operations that affect a
+     * single contact, to avoid degrading performance.
+     */
+    op.withYieldAllowed(true);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    O último fragmento exibe a chamada
+    a {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} que
+    insere as novas linhas de contato bruto e de dados.
+</p>
+<pre>
+    // Ask the Contacts Provider to create a new contact
+    Log.d(TAG,"Selected account: " + mSelectedAccount.getName() + " (" +
+            mSelectedAccount.getType() + ")");
+    Log.d(TAG,"Creating contact: " + name);
+
+    /*
+     * Applies the array of ContentProviderOperation objects in batch. The results are
+     * discarded.
+     */
+    try {
+
+            getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
+    } catch (Exception e) {
+
+            // Display a warning
+            Context ctx = getApplicationContext();
+
+            CharSequence txt = getString(R.string.contactCreationFailure);
+            int duration = Toast.LENGTH_SHORT;
+            Toast toast = Toast.makeText(ctx, txt, duration);
+            toast.show();
+
+            // Log exception
+            Log.e(TAG, "Exception encountered while inserting contact: " + e);
+    }
+}
+</pre>
+<p>
+    As operações de lote também permitem a implementação de <strong>controle otimista de simultaneidade</strong>,
+    um método de aplicar transações de modificação sem precisar bloquear o repositório subjacente.
+    Para usar esse método, aplique a transação e, em seguida, verifique se há outras modificações que
+    possam ter sido realizadas ao mesmo tempo. Se ficar determinado que houve uma modificação incoerente,
+    reverte-se a transação e tenta-se novamente.
+</p>
+<p>
+    O controle otimista de simultaneidade é útil para dispositivos móveis em que haja somente um usuário
+    de uma vez e que sejam raros os acessos simultâneos a um repositório de dados. Como os bloqueios não são usados,
+    não há tempo gasto em bloqueios de configuração nem espera para que outras transações liberem os respectivos bloqueios.
+</p>
+<p>
+    Para usar o controle otimista de simultaneidade ao atualizar uma única
+    linha {@link android.provider.ContactsContract.RawContacts}, siga estas etapas:
+</p>
+<ol>
+    <li>
+        Recupere a coluna {@link android.provider.ContactsContract.SyncColumns#VERSION}
+        do contato bruto em conjunto com os outros dados recuperados.
+    </li>
+    <li>
+        Crie um objeto {@link android.content.ContentProviderOperation.Builder} adequado para
+        forçar uma restrição com o método
+        {@link android.content.ContentProviderOperation#newAssertQuery(Uri)}. Para a URI de conteúdo,
+        use {@link android.provider.ContactsContract.RawContacts#CONTENT_URI
+        RawContacts.CONTENT_URI}
+        com o {@code android.provider.BaseColumns#_ID} do contato bruto anexado a ela.
+    </li>
+    <li>
+        Para o objeto {@link android.content.ContentProviderOperation.Builder}, chame
+        {@link android.content.ContentProviderOperation.Builder#withValue(String, Object)
+        withValue()} para comparar a coluna
+        {@link android.provider.ContactsContract.SyncColumns#VERSION} com o número da versão recém-recuperado.
+    </li>
+    <li>
+        Para o mesmo {@link android.content.ContentProviderOperation.Builder}, chame
+        {@link android.content.ContentProviderOperation.Builder#withExpectedCount(int)
+        withExpectedCount()} para garantir que somente uma linha seja testada por essa instrução.
+    </li>
+    <li>
+        Chame {@link android.content.ContentProviderOperation.Builder#build()} para criar
+        o objeto {@link android.content.ContentProviderOperation}; em seguida, adicione esse objeto como
+        o primeiro objeto na {@link java.util.ArrayList} passada para
+        {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}.
+    </li>
+    <li>
+        Aplique a transação em lote.
+    </li>
+</ol>
+<p>
+    Se a linha de contato bruto for atualizada por outra operação entre o momento da leitura da linha
+       e o momento de sua modificação, a "assert" {@link android.content.ContentProviderOperation}
+        falhará e todo o lote de operações será cancelado. Depois disso, as opções são tentar novamente
+        ou tomar outra medida.
+</p>
+<p>
+    O fragmento a seguir demonstra como criar uma "assert"
+        {@link android.content.ContentProviderOperation} após consultar um contato bruto exclusivo usando
+    um {@link android.content.CursorLoader}:
+</p>
+<pre>
+/*
+ * The application uses CursorLoader to query the raw contacts table. The system calls this method
+ * when the load is finished.
+ */
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor cursor) {
+
+    // Gets the raw contact's _ID and VERSION values
+    mRawContactID = cursor.getLong(cursor.getColumnIndex(BaseColumns._ID));
+    mVersion = cursor.getInt(cursor.getColumnIndex(SyncColumns.VERSION));
+}
+
+...
+
+// Sets up a Uri for the assert operation
+Uri rawContactUri = ContentUris.withAppendedId(RawContacts.CONTENT_URI, mRawContactID);
+
+// Creates a builder for the assert operation
+ContentProviderOperation.Builder assertOp = ContentProviderOperation.netAssertQuery(rawContactUri);
+
+// Adds the assertions to the assert operation: checks the version and count of rows tested
+assertOp.withValue(SyncColumns.VERSION, mVersion);
+assertOp.withExpectedCount(1);
+
+// Creates an ArrayList to hold the ContentProviderOperation objects
+ArrayList ops = new ArrayList&lt;ContentProviderOperationg&gt;;
+
+ops.add(assertOp.build());
+
+// You would add the rest of your batch operations to "ops" here
+
+...
+
+// Applies the batch. If the assert fails, an Exception is thrown
+try
+    {
+        ContentProviderResult[] results =
+                getContentResolver().applyBatch(AUTHORITY, ops);
+
+    } catch (OperationApplicationException e) {
+
+        // Actions you want to take if the assert operation fails go here
+    }
+</pre>
+<h3 id="Intents">Recuperação e modificação com intenções</h3>
+<p>
+    Enviar uma intenção ao aplicativo de contatos do dispositivo permite o acesso indireto ao Provedor
+    de contatos. A intenção inicia a IU do aplicativo de contatos do dispositivo, na qual os usuários podem
+    fazer tarefas relacionadas a contatos. Com esse tipo de acesso, os usuários podem:
+    <ul>
+        <li>Selecionar um contato de uma lista e retorná-lo ao aplicativo para trabalhos futuros.</li>
+        <li>Editar dados de um contato existente.</li>
+        <li>Inserir um novo contato bruto para quaisquer das suas contas.</li>
+        <li>Excluir um contato ou dados dos contatos.</li>
+    </ul>
+<p>
+    Se o usuário estiver inserindo ou atualizando dados, é possível coletar os dados antes e enviá-los como
+    parte da intenção.
+</p>
+<p>
+    Ao usar intenções para acessar o Provedor de Contatos por meio do aplicativo de contatos do dispositivo,
+    não é necessário criar a própria IU ou código para acessar o provedor. Também não é necessário
+    solicitar permissão de leitura e gravação ao provedor. O aplicativo de contatos do dispositivo pode
+    delegar a você permissões de leitura de um contato e, pelo fato de você fazer modificações
+    no provedor por meio de outro aplicativo, não é necessário ter permissões de gravação.
+</p>
+<p>
+    O processo geral de envio de uma intenção para acessar um provedor é descrito detalhadamente
+    no guia<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+Preceitos do provedor de conteúdo</a>, seção "Acesso a dados via intenções". Os valores
+    de ação, do tipo MIME e dos dados usados para as tarefas disponíveis são resumidos na tabela 4
+    e os valores extras que podem ser usados com
+    {@link android.content.Intent#putExtra(String, String) putExtra()} são listados na
+    documentação de referência de {@link android.provider.ContactsContract.Intents.Insert}:
+</p>
+<p class="table-caption" id="table4">
+  <strong>Tabela 4.</strong> Intenções do Provedor de Contatos
+</p>
+<table style="width:75%">
+    <tr>
+        <th scope="col" style="width:10%">Tarefa</th>
+        <th scope="col" style="width:5%">Ação</th>
+        <th scope="col" style="width:10%">Dados</th>
+        <th scope="col" style="width:10%">Tipo MIME</th>
+        <th scope="col" style="width:25%">Observações</th>
+    </tr>
+    <tr>
+        <td><strong>Selecionar um contato de uma lista</strong></td>
+        <td>{@link android.content.Intent#ACTION_PICK}</td>
+        <td>
+            Um dos seguintes:
+            <ul>
+                <li>
+{@link android.provider.ContactsContract.Contacts#CONTENT_URI Contacts.CONTENT_URI},
+                    que exibe uma lista de contatos.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Phone#CONTENT_URI Phone.CONTENT_URI},
+                    que exibe uma lista de números de telefone de um contato bruto.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal#CONTENT_URI
+StructuredPostal.CONTENT_URI},
+                    que exibe uma lista de endereços postais de um contato bruto.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_URI Email.CONTENT_URI},
+                    que exibe uma lista de endereços de e-mail de um contato bruto.
+                </li>
+            </ul>
+        </td>
+        <td>
+            Não usado
+        </td>
+        <td>
+            Exibe uma lista de contatos brutos ou uma lista de dados de um contato bruto conforme
+            o tipo da URI de conteúdo fornecido.
+            <p>
+                Chame
+         {@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()},
+                que retorna a URI de conteúdo da linha selecionada. O formulário da URI é a
+                URI de conteúdo da tabela com o <code>LOOKUP_ID</code> da linha anexado a ela.
+                O aplicativo de contatos do dispositivo delega permissões de leitura e gravação a essa URI de conteúdo
+                pelo tempo que a atividade durar. Consulte
+                o guia<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+                Preceitos do provedor de conteúdo</a> para obter mais detalhes.
+            </p>
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Inserir um novo contato bruto</strong></td>
+        <td>{@link android.provider.ContactsContract.Intents.Insert#ACTION Insert.ACTION}</td>
+        <td>Não aplicável</td>
+        <td>
+            {@link android.provider.ContactsContract.RawContacts#CONTENT_TYPE
+            RawContacts.CONTENT_TYPE}, tipo MIME para um grupo de contatos brutos.
+        </td>
+        <td>
+            Exibe a tela <strong>Adicionar contato</strong> do aplicativo de contatos do dispositivo. 
+            São exibidos os valores extras adicionados à intenção. Se enviada com
+        {@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()},
+            a URI de conteúdo do contato bruto recentemente adicionado é passada de volta
+            ao método de retorno de chamada
+            {@link android.app.Activity#onActivityResult(int, int, Intent) onActivityResult()}no argumento {@link android.content.Intent},
+no campo "dados". Para obter o valor, chame {@link android.content.Intent#getData()}.
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Editar um contato</strong></td>
+        <td>{@link android.content.Intent#ACTION_EDIT}</td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI}
+            do contato. A atividade do editor permitirá que o usuário edite os dados associados
+            a esse contato.
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE
+            Contacts.CONTENT_ITEM_TYPE}, um único contato.</td>
+        <td>
+            Exibe a tela Editar contato no aplicativo de contatos. São exibidos os valores extras
+            adicionados à intenção. Quando o usuário clica em <strong>Concluído</strong> para salvar
+            as edições, a atividade retorna ao primeiro plano.
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Exibir um seletor que também pode adicionar dados.</strong></td>
+        <td>{@link android.content.Intent#ACTION_INSERT_OR_EDIT}</td>
+        <td>
+            Não aplicável
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE}
+        </td>
+         <td>
+            Essa intenção sempre exibe a tela do seletor do aplicativo de contatos. </strong>O usuário pode
+            selecionar um contato para editar ou adicionar um novo. É exibida a tela de edição ou de adição,
+            conforme a escolha do usuário e são exibidos os dados extras passados
+            para a intenção. Se o aplicativo exibe dados de contato como um e-mail ou número de telefone, use
+            essa intenção para permitir que o usuário adicione os dados a um contato existente.
+
+            <p class="note">
+                <strong>Observação:</strong> Não é necessário enviar nenhum valor de nome dos extras da intenção
+            porque o usuário sempre seleciona um nome existente ou adiciona um novo. Além disso,
+            se você enviar um nome e o usuário escolher editar, o aplicativo de contatos
+            exibirá o nome enviado, substituindo o valor anterior. Se o usuário
+            não notar isso e salvar a edição, o valor antigo será perdido.
+            </p>
+         </td>
+    </tr>
+</table>
+<p>
+    O aplicativo de contatos do dispositivo não permite a exclusão de um contato bruto ou de seus dados
+    com uma intenção. Em vez disso, para excluir um contato bruto, use
+    {@link android.content.ContentResolver#delete(Uri, String, String[]) ContentResolver.delete()}
+    ou {@link android.content.ContentProviderOperation#newDelete(Uri)
+    ContentProviderOperation.newDelete()}.
+</p>
+<p>
+    O fragmento a seguir mostra como construir e enviar uma intenção que insira um novo
+    contato bruto e dados:
+</p>
+<pre>
+// Gets values from the UI
+String name = mContactNameEditText.getText().toString();
+String phone = mContactPhoneEditText.getText().toString();
+String email = mContactEmailEditText.getText().toString();
+
+String company = mCompanyName.getText().toString();
+String jobtitle = mJobTitle.getText().toString();
+
+// Creates a new intent for sending to the device's contacts application
+Intent insertIntent = new Intent(ContactsContract.Intents.Insert.ACTION);
+
+// Sets the MIME type to the one expected by the insertion activity
+insertIntent.setType(ContactsContract.RawContacts.CONTENT_TYPE);
+
+// Sets the new contact name
+insertIntent.putExtra(ContactsContract.Intents.Insert.NAME, name);
+
+// Sets the new company and job title
+insertIntent.putExtra(ContactsContract.Intents.Insert.COMPANY, company);
+insertIntent.putExtra(ContactsContract.Intents.Insert.JOB_TITLE, jobtitle);
+
+/*
+ * Demonstrates adding data rows as an array list associated with the DATA key
+ */
+
+// Defines an array list to contain the ContentValues objects for each row
+ArrayList&lt;ContentValues&gt; contactData = new ArrayList&lt;ContentValues&gt;();
+
+
+/*
+ * Defines the raw contact row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues rawContactRow = new ContentValues();
+
+// Adds the account type and name to the row
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType());
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+// Adds the row to the array
+contactData.add(rawContactRow);
+
+/*
+ * Sets up the phone number data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues phoneRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+phoneRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
+);
+
+// Adds the phone number and its type to the row
+phoneRow.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phone);
+
+// Adds the row to the array
+contactData.add(phoneRow);
+
+/*
+ * Sets up the email data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues emailRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+emailRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE
+);
+
+// Adds the email address and its type to the row
+emailRow.put(ContactsContract.CommonDataKinds.Email.ADDRESS, email);
+
+// Adds the row to the array
+contactData.add(emailRow);
+
+/*
+ * Adds the array to the intent's extras. It must be a parcelable object in order to
+ * travel between processes. The device's contacts app expects its key to be
+ * Intents.Insert.DATA
+ */
+insertIntent.putParcelableArrayListExtra(ContactsContract.Intents.Insert.DATA, contactData);
+
+// Send out the intent to start the device's contacts app in its add contact activity.
+startActivity(insertIntent);
+</pre>
+<h3 id="DataIntegrity">Integridade dos dados</h3>
+<p>
+    Como o repositório de contatos contém dados importantes e confidenciais que usuários esperam que estejam
+    corretos e atualizados, o Provedor de Contatos tem regras bem definidas para a integridade dos dados. É de
+    sua responsabilidade adequar-se a essas regras ao modificar dados de contatos. As regras
+    importantes são listadas a seguir:
+</p>
+<dl>
+    <dt>
+        Sempre adicione uma linha {@link android.provider.ContactsContract.CommonDataKinds.StructuredName}
+        para cada linha {@link android.provider.ContactsContract.RawContacts} adicionada.
+    </dt>
+    <dd>
+        Uma linha {@link android.provider.ContactsContract.RawContacts} sem uma
+        linha {@link android.provider.ContactsContract.CommonDataKinds.StructuredName}
+        na tabela {@link android.provider.ContactsContract.Data} pode causar problemas durante
+        a agregação.
+    </dd>
+    <dt>
+        Sempre conecte novas linhas {@link android.provider.ContactsContract.Data} às respectivas
+        linhas pai {@link android.provider.ContactsContract.RawContacts}.
+    </dt>
+    <dd>
+        Uma linha {@link android.provider.ContactsContract.Data} que não esteja conectada a um
+        {@link android.provider.ContactsContract.RawContacts} não será visível no aplicativo
+        de contatos do dispositivo, o que pode causar problemas com adaptadores de sincronização.
+    </dd>
+    <dt>
+        Altere dados somente para os seus contatos brutos.
+    </dt>
+    <dd>
+        Lembre-se de que o Provedor de Contatos normalmente gerencia dados de diversos tipos de conta
+        e serviços on-line diferentes. É preciso garantir que o aplicativo modifique
+        ou exclua somente dados de linhas que pertencem a você e que ele insira dados apenas
+        com um tipo e nome de conta que você controla.
+    </dd>
+    <dt>
+        Sempre use as constantes definidas em {@link android.provider.ContactsContract} e suas
+        subclasses de autoridades, URIs de conteúdo, caminhos de URI, nomes de coluna, tipos MIME e
+        valores {@link android.provider.ContactsContract.CommonDataKinds.CommonColumns#TYPE}.
+    </dt>
+    <dd>
+        O uso dessas constantes ajuda a evitar erros. Você também será notificado com avisos
+        do compilador se uma das constantes não for aprovada.
+    </dd>
+</dl>
+<h3 id="CustomData">Linhas de dados personalizados</h3>
+<p>
+    Ao criar e usar seus próprios tipos MIME personalizados, você pode inserir, editar, excluir e recuperar
+    suas linhas de dados na tabela {@link android.provider.ContactsContract.Data}. As linhas
+    são limitadas a usar a coluna definida em
+    {@link android.provider.ContactsContract.DataColumns}, embora seja possível mapear
+    os nomes de coluna de tipo específico para os nomes de coluna padrão. No aplicativo de contatos do dispositivo,
+    os dados das linhas são exibidos, mas não podem ser editados nem excluídos e os usuários não podem inserir
+    dados adicionais. Para permitir que usuários modifiquem suas linhas de dados personalizados, é necessário fornecer
+    uma atividade do editor no próprio aplicativo.
+</p>
+<p>
+    Para exibir os dados personalizados, forneça um arquivo <code>contacts.xml</code> contendo
+    um elemento <code>&lt;ContactsAccountType&gt;</code> ou um ou mais
+    dos elementos filho <code>&lt;ContactsDataKind&gt;</code>. Isso é abordado com mais detalhes na
+    seção <a href="#SocialStreamDataKind"><code>&lt;ContactsDataKind&gt; element</code></a>.
+</p>
+<p>
+    Para saber mais sobre tipos MIME personalizados, leia o
+    guia <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+    Criação de um provedor de conteúdo</a>.
+</p>
+<h2 id="SyncAdapters">Adaptadores de sincronização do Provedor de Contatos</h2>
+<p>
+    O Provedor de Contatos foi projetado especificamente para tratar a <strong>sincronização</strong>
+    de dados de contatos entre um dispositivo e um serviço on-line. Isso permite que usuários baixem
+    dados existentes em um novo dispositivo e transfiram dados existentes a uma nova conta.
+    A sincronização também garante que usuários tenham os dados mais recentes à mão, independentemente
+    da origem de adições e alterações. Outra vantagem da sincronização é
+    a disponibilidade dos dados dos contatos mesmo quando o dispositivo não está conectado à rede.
+</p>
+<p>
+    Embora seja possível implementar a sincronização de diversos modos, o sistema Android fornece 
+    uma estrutura de sincronização de extensão que automatiza as seguintes tarefas:
+    <ul>
+
+    <li>
+        Verificação da disponibilidade da rede.
+    </li>
+    <li>
+        Agendamento e execução de sincronizações, com base nas preferências do usuário.
+    </li>
+    <li>
+        Reinicialização de sincronizações que foram interrompidas.
+    </li>
+    </ul>
+<p>
+    Para usar essa estrutura, deve-se fornecer uma extensão do adaptador de sincronização. Cada adaptador de sincronização é exclusivo
+    de um serviço e um provedor de conteúdo, mas pode tratar diversos nomes de conta do mesmo serviço. 
+    A estrutura também permite diversos adaptadores de sincronização para o mesmo serviço e provedor.
+</p>
+<h3 id="SyncClassesFiles">Classes e arquivos do adaptador de sincronização</h3>
+<p>
+    O adaptador de sincronização é implementado como uma subclasse
+    de {@link android.content.AbstractThreadedSyncAdapter} e instalado como parte do aplicativo
+    do Android. O sistema coleta dados do adaptador de sincronização a partir de elementos no manifesto
+    do aplicativo e de um arquivo XML especial direcionado pelo manifesto. O arquivo XML define
+    o tipo de conta do serviço on-line e a autoridade do provedor de conteúdo que, juntos,
+    identificam exclusivamente o adaptador. O adaptador de sincronização não fica ativo até que o usuário adicione
+    uma conta para o tipo de conta do adaptador de sincronização e habilite a sincronização para
+    o provedor de conteúdo com o qual o adaptador se sincroniza.  Nesse ponto, o sistema começa a gerenciar o adaptador,
+    chamando-o quando necessário para estabelecer a sincronização entre o provedor de conteúdo e o servidor.
+</p>
+<p class="note">
+    <strong>Observação:</strong> usar um tipo de conta como parte da identificação do adaptador de sincronização permite
+    que o sistema detecte e agrupe adaptadores de sincronização que acessam diferentes serviços
+    da mesma organização. Por exemplo, todos os adaptadores de sincronização dos serviços on-line da Google têm o mesmo
+    tipo de conta <code>com.google</code>. Quando o usuário adiciona uma conta Google aos dispositivos, todos
+    os adaptadores de sincronização dos serviços Google instalados são listados juntos; cada um
+    dos listados sincroniza-se com um provedor de conteúdo diferente no dispositivo.
+</p>
+<p>
+    Como a maioria dos serviços exige que usuários verifiquem a identidade antes de acessar
+    os dados, o sistema Android oferece uma estrutura de autenticação similar à estrutura
+    dos adaptadores de sincronização e muitas vezes usada junto com eles. A estrutura de autenticação usa
+    autenticadores de extensão que são subclasses
+    de {@link android.accounts.AbstractAccountAuthenticator}. Um autenticador verifica
+    a identidade do usuário nas seguintes etapas:
+    <ol>
+        <li>
+            Coleta nome, senha ou informação similar do usuário (as <strong>credenciais</strong>
+            do usuário).
+        </li>
+        <li>
+            Envia as credenciais para o serviço
+        </li>
+        <li>
+            Avalia a resposta do serviço.
+        </li>
+    </ol>
+<p>
+    Se o serviço aceitar as credenciais, o autenticador pode
+    armazená-las para uso futuro. Devido à estrutura do autenticador de extensão,
+    o {@link android.accounts.AccountManager} pode conferir acesso a quaisquer tokens de autenticação compatíveis com
+    um autenticador que escolha expô-los, como os tokens de autenticação OAuth2.
+</p>
+<p>
+    Embora as autenticações não sejam necessárias, a maioria dos serviços de contato as usam.
+    Contudo, não é obrigatório usar a estrutura de autenticação do Android para efetuá-las.
+</p>
+<h3 id="SyncAdapterImplementing">Implementação do adaptador de sincronização</h3>
+<p>
+    Para implementar um adaptador de sincronização para o Provedor de Contatos, primeiramente é necessário criar
+    um aplicativo do Android que contenha o seguinte:
+</p>
+    <dl>
+        <dt>
+            Um componente {@link android.app.Service} que responda a solicitações do sistema para
+            vincular ao adaptador de sincronização.
+        </dt>
+        <dd>
+            Quando o sistema quer executar uma sincronização, ele chama o método
+            {@link android.app.Service#onBind(Intent) onBind()} do serviço para obter
+            um {@link android.os.IBinder} para o adaptador de sincronização. Isso permite que o sistema efetue chamadas
+            entre processos aos métodos do adaptador.
+            <p>
+                No aplicativo
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">Exemplo de adaptador de sincronização</a>, o nome de classe desse serviço é
+                <code>com.example.android.samplesync.syncadapter.SyncService</code>.
+            </p>
+        </dd>
+        <dt>
+            O adaptador de sincronização atual, implementado como uma subclasse concreta de
+                {@link android.content.AbstractThreadedSyncAdapter}.
+        </dt>
+        <dd>
+            Essa classe realiza o trabalho de baixar dados do servidor, atualizar dados
+                do dispositivo e resolver conflitos. A principal tarefa do adaptador é
+                feita no método {@link android.content.AbstractThreadedSyncAdapter#onPerformSync(
+            Account, Bundle, String, ContentProviderClient, SyncResult)
+            onPerformSync()}. Essa classe deve ser instanciada como um singleton.
+            <p>
+                No aplicativo
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">Exemplo de adaptador de sincronização</a>, o adaptador de sincronização é definido na classe
+                <code>com.example.android.samplesync.syncadapter.SyncAdapter</code>.
+            </p>
+        </dd>
+        <dt>
+            Uma subclasse de {@link android.app.Application}.
+        </dt>
+        <dd>
+            Essa classe atua como uma fábrica para o singleton do adaptador de sincronização. Use
+            o método {@link android.app.Application#onCreate()} para instanciar o adaptador de sincronização
+            e fornecer um método "coletor" estático para retornar o singleton ao
+            método {@link android.app.Service#onBind(Intent) onBind()} do serviço do adaptador
+            de sincronização.
+        </dd>
+        <dt>
+            <strong>Opcional:</strong> um componente {@link android.app.Service} que responda a
+            solicitações do sistema para autenticação do usuário.
+        </dt>
+        <dd>
+            O {@link android.accounts.AccountManager} ativa esse serviço para iniciar o processo
+            de autenticação. O método {@link android.app.Service#onCreate()} do serviço instancia
+            um objeto autenticador. Quando o sistema quer autenticar uma conta de usuário para
+            o adaptador de sincronização do aplicativo, ele chama o método
+            {@link android.app.Service#onBind(Intent) onBind()} do serviço para obter um
+            {@link android.os.IBinder} para o autenticador. Isso permite que o sistema efetue chamadas
+            entre processos aos métodos do autenticador.
+            <p>
+                No aplicativo
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">Exemplo de adaptador de sincronização</a>, o nome de classe desse serviço é
+                <code>com.example.android.samplesync.authenticator.AuthenticationService</code>.
+            </p>
+        </dd>
+        <dt>
+            <strong>Opcional:</strong> uma subclasse concreta de
+            {@link android.accounts.AbstractAccountAuthenticator} que trate de solicitações de
+            autenticação.
+        </dt>
+        <dd>
+            Essa classe fornece métodos que chamam {@link android.accounts.AccountManager}
+            para autenticar as credenciais do usuário no servidor. Os detalhes
+            desse processo de autenticação variam amplamente, com base na tecnologia em uso no servidor. Consulte
+            a documentação do software do servidor para ver mais informações sobre autenticação.
+            <p>
+                No aplicativo
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">Exemplo de adaptador de sincronização</a>, o autenticador é definido na classe
+                <code>com.example.android.samplesync.authenticator.Authenticator</code>.
+            </p>
+        </dd>
+        <dt>
+            Os arquivos XML que definem o adaptador de sincronização e o autenticador para o sistema.
+        </dt>
+        <dd>
+            Os componentes de serviço do adaptador de sincronização e do autenticador descritos anteriormente são
+            definidos em
+elementos <code>&lt;<a href="{@docRoot}guide/topics/manifest/service-element.html">service</a>&gt;</code>
+ no manifesto do aplicativo. Esses elementos
+            contêm
+elementos filho <code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+que fornecem dados específicos ao
+            sistema:
+            <ul>
+                <li>
+                    O
+elemento <code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+ de serviço do adaptador de sincronização direciona-se
+            ao <code>res/xml/syncadapter.xml</code> do arquivo XML. Em troca, esse arquivo especifica
+                    uma URI para o serviço web que será sincronizado com o Provedor de Contatos
+                    e um tipo de conta.
+                </li>
+                <li>
+                    <strong>Opcional:</strong> o
+elemento <code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+ do autenticador aponta para o arquivo XML
+                    <code>res/xml/authenticator.xml</code>. Em troca, esse arquivo especifica
+                    o tipo de conta compatível com esse autenticador, bem como recursos de IU
+                    que aparecem durante o processo de autenticação. O tipo de conta especificado
+                    nesse elemento deve ser o mesmo que o especificado para
+                    o adaptador de sincronização.
+                </li>
+            </ul>
+        </dd>
+    </dl>
+<h2 id="SocialStream">Dados de fluxos sociais</h2>
+<p>
+    As tabelas {@code android.provider.ContactsContract.StreamItems}
+    e {@code android.provider.ContactsContract.StreamItemPhotos}
+    gerenciam dados advindos de redes sociais. É possível criar um adaptador de sincronização que adicione dados de fluxo
+    da sua própria rede a essas tabelas ou ler dados de fluxo dessas tabelas
+    e exibi-los no seu aplicativo, ou ambos. Com esses recursos, os serviços e aplicativos
+    de redes sociais podem ser integrados na experiência das redes sociais no Android.
+</p>
+<h3 id="StreamText">Textos de fluxos sociais</h3>
+<p>
+    Itens de fluxo sempre são associados a um contato bruto. 
+    O {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID} conecta-se ao
+    valor <code>_ID</code> do contato bruto. O tipo e o nome da conta do contato
+    bruto também são armazenados na linha do item de fluxo.
+</p>
+<p>
+    Armazene os dados do seu fluxo nas colunas a seguir:
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_TYPE}
+    </dt>
+    <dd>
+        <strong>Obrigatório.</strong> O tipo de conta do usuário do contato bruto associado a esse
+        item de fluxo. Lembre-se de definir esse valor ao inserir um item de fluxo.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_NAME}
+    </dt>
+    <dd>
+        <strong>Obrigatório.</strong> O nome de conta do usuário do contato bruto associado
+        a esse item de fluxo. Lembre-se de definir esse valor ao inserir um item de fluxo.
+    </dd>
+    <dt>
+        Colunas identificadoras
+    </dt>
+    <dd>
+        <strong>Obrigatório.</strong> É necessário inserir as colunas identificadoras a seguir
+        ao inserir um item de fluxo:
+        <ul>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_ID}: 
+                o valor {@code android.provider.BaseColumns#_ID} do contato ao qual esse item
+                de fluxo está associado.
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_LOOKUP_KEY}: 
+                o valor{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} do
+                contato ao qual esse item de fluxo está associado.
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID}: 
+                o valor {@code android.provider.BaseColumns#_ID} do contato bruto ao qual esse item
+                de fluxo está associado.
+            </li>
+        </ul>
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#COMMENTS}
+    </dt>
+    <dd>
+        Opcional. Armazena informações resumidas que podem ser exibidas no início do item de fluxo.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TEXT}
+    </dt>
+    <dd>
+        O texto do item de fluxo, o conteúdo que foi publicado pela fonte do item
+                ou uma descrição de alguma ação que gerou o item de fluxo. Essa coluna pode conter
+                imagens de recurso incorporadas e de qualquer formato que possam ser renderizadas
+        {@link android.text.Html#fromHtml(String) fromHtml()}. O provedor pode truncar
+        ou abreviar conteúdos longos, mas ele tentará evitar quebrar as tags.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}
+    </dt>
+    <dd>
+        Uma string de texto contendo o tempo em que o item de fluxo foi inserido ou atualizado, em forma
+        de <em>milissegundos</em> desde a época. Aplicativos que inserem ou atualizam itens de fluxo são
+        responsáveis por manter essa coluna, ela não é mantida automaticamente pelo
+        Provedor de Contatos.
+    </dd>
+</dl>
+<p>
+    Para exibir informações de identificação para os itens de fluxo, use
+    {@code android.provider.ContactsContract.StreamItemsColumns#RES_ICON},
+    {@code android.provider.ContactsContract.StreamItemsColumns#RES_LABEL} e
+    {@code android.provider.ContactsContract.StreamItemsColumns#RES_PACKAGE} para vincular a recursos
+    no aplicativo.
+</p>
+<p>
+    A tabela {@code android.provider.ContactsContract.StreamItems} também contém as colunas
+    {@code android.provider.ContactsContract.StreamItemsColumns#SYNC1} por meio de
+    {@code android.provider.ContactsContract.StreamItemsColumns#SYNC4} para uso exclusivo
+    dos adaptadores de sincronização.
+</p>
+<h3 id="StreamPhotos">Fotos de fluxos sociais</h3>
+<p>
+   A tabela {@code android.provider.ContactsContract.StreamItemPhotos} armazena fotos associadas
+    a um item de fluxo. A coluna
+    {@code android.provider.ContactsContract.StreamItemPhotosColumns#STREAM_ITEM_ID} da tabela
+    vincula-se a valores na coluna {@code android.provider.BaseColumns#_ID}
+    da tabela {@code android.provider.ContactsContract.StreamItems}. Referências de fotografias são armazenadas
+    na tabela nessas colunas:
+</p>
+<dl>
+    <dt>
+        Coluna {@code android.provider.ContactsContract.StreamItemPhotos#PHOTO} (um BLOB).
+    </dt>
+    <dd>
+        Representação binária da foto, redimensionada pelo provedor para armazenar e exibir.
+        Essa coluna está disponível para compatibilidade retroativa com versões anteriores do Provedor
+        de Contatos que a usavam para armazenar fotos. Contudo, na versão atual,
+        não se deve usar essa coluna para armazenar fotos. Em vez disso, use
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID} ou
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI} (ambas são
+        descritas nos pontos a seguir) para armazenar fotos em um arquivo. Essa coluna
+        passa a conter uma miniatura da foto, que estará disponível para leitura.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID}
+    </dt>
+    <dd>
+        Identificador numérico de uma foto de um contato bruto. Anexe esse valor à constante
+        {@link android.provider.ContactsContract.DisplayPhoto#CONTENT_URI DisplayPhoto.CONTENT_URI}
+        para obter uma URI de conteúdo direcionada para um único arquivo de foto e, em seguida, chame
+        {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+        openAssetFileDescriptor()} para obter um identificador para o arquivo de foto.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}
+    </dt>
+    <dd>
+        URI de conteúdo direcionada diretamente para o arquivo de foto da foto representada por essa linha.
+        Chame {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+        openAssetFileDescriptor()} com essa URI para obter um identificador para o arquivo de foto.
+    </dd>
+</dl>
+<h3 id="SocialStreamTables">Uso de tabelas de fluxos sociais</h3>
+<p>
+    Essas tabelas funcionam como as outras tabelas principais do Provedor de Contatos, exceto que:
+</p>
+    <ul>
+        <li>
+            Exigem permissões de acesso adicionais. Para ler o conteúdo delas, o aplicativo
+            deve ter a permissão {@code android.Manifest.permission#READ_SOCIAL_STREAM}. Para
+            modificá-las, o aplicativo precisa ter a permissão
+            {@code android.Manifest.permission#WRITE_SOCIAL_STREAM}.
+        </li>
+        <li>
+            Para a tabela {@code android.provider.ContactsContract.StreamItems}, o número de linhas
+            armazenadas para cada contato bruto é limitado. Ao atingir o limite,
+            o Provedor de Contatos abre espaço para novas linhas de itens de fluxo excluindo automaticamente
+            as linhas que têm
+            o {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP} mais antigo. Para conhecer
+            o limite, faça uma consulta à URI de conteúdo
+            {@code android.provider.ContactsContract.StreamItems#CONTENT_LIMIT_URI}. É possível deixar
+            todos os argumentos, exceto a URI de conteúdo, definidos como <code>null</code>. A consulta
+            retorna um Cursor contendo uma linha única com a coluna única
+            {@code android.provider.ContactsContract.StreamItems#MAX_ITEMS}.
+        </li>
+    </ul>
+
+<p>
+    A classe {@code android.provider.ContactsContract.StreamItems.StreamItemPhotos} define
+    uma subtabela de {@code android.provider.ContactsContract.StreamItemPhotos} que contém as linhas
+    de foto de um único item de fluxo.
+</p>
+<h3 id="SocialStreamInteraction">Interações de fluxos sociais</h3>
+<p>
+    Os dados de fluxos sociais gerenciados pelo Provedor de Contatos, em conjunto com o
+    aplicativo de contatos do dispositivo, oferecem um método poderoso de conexão ao sistema de redes sociais
+    com contatos existentes. Os seguintes recursos estão disponíveis:
+</p>
+    <ul>
+        <li>
+            Ao sincronizar seu serviço de rede social com o Provedor de Contatos com um adaptador
+            de sincronização, é possível recuperar atividades recentes de contatos de um usuário e armazená-las
+            nas tabelas {@code android.provider.ContactsContract.StreamItems}
+            e {@code android.provider.ContactsContract.StreamItemPhotos} para uso posterior.
+        </li>
+        <li>
+            Além da sincronização regular, é possível ativar o adaptador de sincronização para recuperar
+            dados adicionais quando o usuário seleciona um contato para exibir. Isso permite que o adaptador de sincronização
+            recupere fotos de alta resolução e os itens de fluxo mais recentes do contato.
+        </li>
+        <li>
+            Ao registrar uma notificação com o aplicativo de contatos do dispositivo e o Provedor
+            de Contatos, é possível <em>recuperar</em> uma intenção quando um contato é exibido e, nesse ponto,
+            atualizar o status do contato pelo serviço. Essa abordagem pode ser mais rápida e usar menos
+            largura de banda do que realizar uma sincronização completa com um adaptador de sincronização.
+        </li>
+        <li>
+            Os usuários podem adicionar um contato ao seu serviço de rede social enquanto exibem-no
+            no aplicativo de contatos do dispositivo. É possível ativar isso com o recurso "convidar contato",
+            que é ativado com uma combinação de uma atividade que adiciona um contato existente à sua
+            rede, um arquivo XML que fornece o aplicativo de contatos do dispositivo
+            e o Provedor de Contatos com os detalhes do aplicativo.
+        </li>
+    </ul>
+<p>
+    A sincronização regular de itens de fluxo com o Provedor de Contatos é igual
+    a outras sincronizações. Para saber mais sobre sincronizações, consulte a seção
+    <a href="#SyncAdapters">Adaptadores de sincronização do Provedor de Contatos</a>. O registro de notificações
+    e o convite a contatos são abordados nas próximas duas seções.
+</p>
+<h4>Registro para manipular exibições de redes sociais</h4>
+<p>
+    Para registrar o adaptador de sincronização para receber notificações quando o usuário exibe um contato que é
+    gerenciado pelo adaptador de sincronização:
+</p>
+<ol>
+    <li>
+        Crie um arquivo chamado <code>contacts.xml</code> no diretório <code>res/xml/</code>
+        do projeto. Se você já tiver esse arquivo, pule esta etapa.
+    </li>
+    <li>
+        Nesse arquivo, adicione o elemento
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Se esse elemento já existir, pule esta etapa.
+    </li>
+    <li>
+        Para registrar um serviço que seja notificado quando o usuário abre uma página de detalhes do contato
+        no aplicativo de contatos do dispositivo, adicione o atributo
+        <code>viewContactNotifyService="<em>serviceclass</em>"</code> ao elemento, em que
+        <code><em>serviceclass</em></code> é o nome de classe totalmente qualificado do serviço
+        que deve receber a intenção do aplicativo de contatos do dispositivo. Para o serviço
+        de notificação, use a classe que estende {@link android.app.IntentService} para permitir que o serviço
+        receba intenções. Os dados nas intenções recebidas contêm a URI de conteúdo do contato
+        bruto em que o usuário clicou. No serviço de notificação, é possível vincular e chamar
+        o adaptador de sincronização para atualizar os dados do contato bruto.
+    </li>
+</ol>
+<p>
+    Para registrar uma atividade a ser chamada quando o usuário clica em um item de fluxo ou foto, ou ambos:
+</p>
+<ol>
+    <li>
+        Crie um arquivo chamado <code>contacts.xml</code> no diretório <code>res/xml/</code>
+        do projeto. Se você já tiver esse arquivo, pule esta etapa.
+    </li>
+    <li>
+        Nesse arquivo, adicione o elemento
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Se esse elemento já existir, pule esta etapa.
+    </li>
+    <li>
+        Para registrar uma das atividades para tratar do usuário que clica em um item de fluxo
+        no aplicativo de contatos do dispositivo, adicione o atributo
+        <code>viewStreamItemActivity="<em>activityclass</em>"</code> ao elemento, em que
+        <code><em>activityclass</em></code> é o nome de classe totalmente qualificado da atividade
+        que deve receber a intenção do aplicativo de contatos do dispositivo.
+    </li>
+    <li>
+        Para registrar uma das atividades para tratar do usuário que clica em uma foto de fluxo
+        no aplicativo de contatos do dispositivo, adicione o atributo
+        <code>viewStreamItemPhotoActivity="<em>activityclass</em>"</code> ao elemento, em que
+        <code><em>activityclass</em></code> é o nome de classe totalmente qualificado da atividade
+        que deve receber a intenção do aplicativo de contatos do dispositivo.
+    </li>
+</ol>
+<p>
+    O elemento <code>&lt;ContactsAccountType&gt;</code> é descrito em mais detalhes
+        na seção <a href="#SocialStreamAcctType">Elemento &lt;ContactsAccountType&gt;</a>.
+</p>
+<p>
+    A intenção recebida contém a URI de conteúdo do item ou foto em que o usuário clicou.
+    Para ter atividades separadas para itens de texto e para fotos, use os dois atributos no mesmo arquivo.
+</p>
+<h4>Interação com o serviço de redes sociais</h4>
+<p>
+    Os usuários não precisam sair do aplicativo de contatos do dispositivo para convidar um contato para
+        seu site de contatos. Em vez disso, o aplicativo de contatos do dispositivo pode enviar uma intenção de convidar
+        o contato para uma das atividades. Para configurar isso:
+</p>
+<ol>
+    <li>
+        Crie um arquivo chamado <code>contacts.xml</code> no diretório <code>res/xml/</code>
+        do projeto. Se você já tiver esse arquivo, pule esta etapa.
+    </li>
+    <li>
+        Nesse arquivo, adicione o elemento
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Se esse elemento já existir, pule esta etapa.
+    </li>
+    <li>
+        Adicione os seguintes atributos:
+        <ul>
+            <li><code>inviteContactActivity="<em>activityclass</em>"</code></li>
+            <li>
+                <code>inviteContactActionLabel="&#64;string/<em>invite_action_label</em>"</code>
+            </li>
+        </ul>
+        O valor <code><em>activityclass</em></code> é o nome de classe totalmente qualificado
+        da atividade que deve receber a intenção. O valor <code><em>invite_action_label</em></code>
+        é uma string de texto exibida no menu <strong>Adicionar conexão</strong>
+        no aplicativo de contatos do dispositivo.
+    </li>
+</ol>
+<p class="note">
+    <strong>Observação:</strong> <code>ContactsSource</code> é um nome de tag reprovado para
+    <code>ContactsAccountType</code>.
+</p>
+<h3 id="ContactsFile">Referência do contacts.xml</h3>
+<p>
+    O arquivo <code>contacts.xml</code> contém elementos XML que controlam a interação
+    do adaptador de sincronização e o aplicativo com o aplicativo de contatos e o Provedor de Contatos. Esses
+    elementos são descritos nas seções a seguir.
+</p>
+<h4 id="SocialStreamAcctType">Elemento &lt;ContactsAccountType&gt;</h4>
+<p>
+    O elemento <code>&lt;ContactsAccountType&gt;</code> controla a interação
+    do aplicativo com o aplicativo de contatos. Ele tem a seguinte sintaxe:
+</p>
+<pre>
+&lt;ContactsAccountType
+        xmlns:android="http://schemas.android.com/apk/res/android"
+        inviteContactActivity="<em>activity_name</em>"
+        inviteContactActionLabel="<em>invite_command_text</em>"
+        viewContactNotifyService="<em>view_notify_service</em>"
+        viewGroupActivity="<em>group_view_activity</em>"
+        viewGroupActionLabel="<em>group_action_text</em>"
+        viewStreamItemActivity="<em>viewstream_activity_name</em>"
+        viewStreamItemPhotoActivity="<em>viewphotostream_activity_name</em>"&gt;
+</pre>
+<p>
+    <strong>contido em:</strong>
+</p>
+<p>
+    <code>res/xml/contacts.xml</code>
+</p>
+<p>
+    <strong>pode conter:</strong>
+</p>
+<p>
+    <strong><code>&lt;ContactsDataKind&gt;</code></strong>
+</p>
+<p>
+    <strong>Descrição:</strong>
+</p>
+<p>
+    Declara componentes e etiquetas da IU do Android que permitem aos usuários convidar um dos seus contatos a
+    uma rede social, notificar usuários quando um dos seus fluxos de redes sociais é atualizado
+    etc.
+</p>
+<p>
+    Observe que o prefixo <code>android:</code> do atributo não é necessário para os atributos
+    de <code>&lt;ContactsAccountType&gt;</code>.
+</p>
+<p>
+    <strong>Atributos:</strong>
+</p>
+<dl>
+    <dt>{@code inviteContactActivity}</dt>
+    <dd>
+        O nome de classe totalmente qualificado da atividade no aplicativo que você deseja
+        ativar quando o usuário seleciona <strong>Adicionar conexão</strong> no aplicativo
+        de contatos do dispositivo.
+    </dd>
+    <dt>{@code inviteContactActionLabel}</dt>
+    <dd>
+        Uma string de texto exibida para a atividade especificada
+        em {@code inviteContactActivity}, no menu <strong>Adicionar conexão</strong>.
+        Por exemplo: você pode usar a string "Siga-me na rede". Você pode usar um identificador
+        do recurso da string nessa etiqueta.
+    </dd>
+    <dt>{@code viewContactNotifyService}</dt>
+    <dd>
+        O nome de classe totalmente qualificado de um serviço no aplicativo que deve receber
+        notificações de quando o usuário exibe um contato. Essa notificação é enviada pelo aplicativo
+        de contatos do dispositivo, isso permite que o aplicativo adie operações de dados intensivos
+        até que elas sejam necessárias. Por exemplo: o aplicativo pode responder a essa notificação
+        lendo e exibindo a foto de alta resolução do contato e os itens de fluxo social
+        mais recentes. Esse recurso é descrito com mais detalhes na seção
+        <a href="#SocialStreamInteraction">Interações de fluxos sociais</a>. É possível ver
+        um exemplo de serviço de notificação no arquivo <code>NotifierService.java</code>
+        no aplicativo de exemplo
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a>.
+    </dd>
+    <dt>{@code viewGroupActivity}</dt>
+    <dd>
+        O nome de classe totalmente qualificado de uma atividade no aplicativo que pode exibir
+        informações de grupo. Quando o usuário clica na etiqueta do grupo no aplicativo
+        de contatos do dispositivo, a IU dessa atividade é exibida.
+    </dd>
+    <dt>{@code viewGroupActionLabel}</dt>
+    <dd>
+        A etiqueta que o aplicativo de contatos exibe para um controle de IU que permite
+ que o usuário veja grupos no seu aplicativo.
+        <p>
+            Por exemplo: se você instalar o aplicativo do Google+ no dispositivo e sincronizá-lo
+        com o aplicativo de contatos, verá os círculos do Google+ listados como grupos
+        na aba <strong>Grupos</strong> do aplicativo de contatos. Ao clicar
+        em um círculo do Google+, você verá pessoas nesse círculo listadas como um "grupo". Na parte superior
+        da tela, você verá um ícone do Google+; ao clicar nele, o controle muda para
+        o aplicativo do Google+. O aplicativo de contatos faz isso com
+        {@code viewGroupActivity} usando o ícone como o valor
+            de {@code viewGroupActionLabel}.
+        </p>
+        <p>
+            Um identificador de recurso de string é permitido para esse atributo.
+        </p>
+    </dd>
+    <dt>{@code viewStreamItemActivity}</dt>
+    <dd>
+        O nome de classe totalmente qualificado de uma atividade no aplicativo que
+        o aplicativo de contatos do dispositivo executa quando o usuário clica em um item de fluxo de um contato bruto.
+    </dd>
+    <dt>{@code viewStreamItemPhotoActivity}</dt>
+    <dd>
+        O nome de classe totalmente qualificado de uma atividade no aplicativo que
+        o aplicativo de contatos do dispositivo executa quando o usuário clica em uma foto no item de fluxo
+        de um contato bruto.
+    </dd>
+</dl>
+<h4 id="SocialStreamDataKind">Elemento &lt;ContactsDataKind&gt;</h4>
+<p>
+    O elemento <code>&lt;ContactsDataKind&gt;</code> controla a tela das linhas de dados
+        personalizados do aplicativo na IU do aplicativo de contatos. Ele tem a seguinte sintaxe:
+</p>
+<pre>
+&lt;ContactsDataKind
+        android:mimeType="<em>MIMEtype</em>"
+        android:icon="<em>icon_resources</em>"
+        android:summaryColumn="<em>column_name</em>"
+        android:detailColumn="<em>column_name</em>"&gt;
+</pre>
+<p>
+    <strong>contido em:</strong>
+</p>
+<code>&lt;ContactsAccountType&gt;</code>
+<p>
+    <strong>Descrição:</strong>
+</p>
+<p>
+    Use esse elemento para que o aplicativo de contatos exiba o conteúdo de uma linha de dados personalizados como
+        parte dos detalhes de um contato bruto. Cada elemento filho <code>&lt;ContactsDataKind&gt;</code>
+    de <code>&lt;ContactsAccountType&gt;</code> representa um tipo de linha de dados personalizados que o adaptador
+    de sincronização adiciona à tabela {@link android.provider.ContactsContract.Data}. Adicione
+    um elemento <code>&lt;ContactsDataKind&gt;</code> para cada tipo MIME personalizado usado. Não será necessário
+    adicionar o elemento se você tiver uma linha de dados personalizados para a qual não deseja exibir dados.
+</p>
+<p>
+    <strong>Atributos:</strong>
+</p>
+<dl>
+    <dt>{@code android:mimeType}</dt>
+    <dd>
+        O tipo MIME personalizado definido para um dos tipos de linha de dados personalizados
+        na tabela {@link android.provider.ContactsContract.Data}. Por exemplo: o valor
+        <code>vnd.android.cursor.item/vnd.example.locationstatus</code> poderia ser um tipo MIME
+        personalizado para uma linha de dados que registra a última localização conhecida do contato.
+    </dd>
+    <dt>{@code android:icon}</dt>
+    <dd>
+        
+        <a href="{@docRoot}guide/topics/resources/drawable-resource.html">Recurso desenhável</a> do Android
+        que o aplicativo de contatos exibe próximo aos dados. Use isso para indicar
+        ao usuário que os dados são advindos do seu serviço.
+    </dd>
+    <dt>{@code android:summaryColumn}</dt>
+    <dd>
+        O nome de coluna do primeiro de dois valores recuperados da linha de dados. 
+        O valor é exibido como a primeira linha da entrada para essa linha de dados. A primeira linha
+        destina-se ao uso como um resumo dos dados, mas isso é opcional. Veja também
+        <a href="#detailColumn">android:detailColumn</a>.
+    </dd>
+    <dt>{@code android:detailColumn}</dt>
+    <dd>
+        O nome de coluna do segundo de dois valores recuperados da linha de dados. O valor é
+        exibido como a segunda linha da entrada dessa linha de dados. Veja também
+        {@code android:summaryColumn}.
+    </dd>
+</dl>
+<h2 id="AdditionalFeatures">Recursos adicionais do Provedor de Contatos</h2>
+<p>
+    Além dos principais recursos descritos nas seções anteriores, o Provedor de Contatos oferece
+        estes recursos úteis para trabalhar com dados de contatos:
+</p>
+    <ul>
+       <li>Grupos de contatos</li>
+       <li>Recursos de foto</li>
+    </ul>
+<h3 id="Groups">Grupos de contatos</h3>
+<p>
+    O Provedor de Contatos pode, opcionalmente, etiquetar grupos de contatos relacionados com
+    dados de <strong>grupo</strong>. Se o servidor associado a uma conta de usuário
+    deseja manter grupos, o adaptador de sincronização para o tipo da conta deve transferir
+    dados de grupo entre o Provedor de Contatos e o servidor. Quando o usuário adiciona um novo contato
+    ao servidor e, em seguida, coloca este contato em um novo grupo, o adaptador de sincronização deve adicionar o novo grupo
+    na tabela {@link android.provider.ContactsContract.Groups}. O grupo ou grupos a que um contato
+    bruto pertence são armazenados na tabela {@link android.provider.ContactsContract.Data}, usando
+    o tipo MIME {@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}.
+</p>
+<p>
+    Se estiver projetando um adaptador de sincronização que adicionará dados de contato bruto ao Provedor de Contatos
+    a partir de servidores e não estiver usando grupos, será necessário fazer com que
+    o provedor torne os dados visíveis. No código que é executado quando um usuário adiciona uma conta
+    ao dispositivo, atualize a linha {@link android.provider.ContactsContract.Settings}
+    que o Provedor de Contatos adicionou para a conta. Nessa linha, defina o valor da
+    coluna {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE
+    Settings.UNGROUPED_VISIBLE} como 1. Ao fazê-lo, o Provedor de Contatos sempre
+    deixará os dados de contatos visíveis, mesmo sem usar grupos.
+</p>
+<h3 id="Photos">Fotos de contatos</h3>
+<p>
+    A tabela {@link android.provider.ContactsContract.Data} armazena fotos como linhas com tipo MIME
+    {@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+    Photo.CONTENT_ITEM_TYPE}. A coluna
+    {@link android.provider.ContactsContract.RawContactsColumns#CONTACT_ID} da linha é vinculada
+    à coluna {@code android.provider.BaseColumns#_ID} do contato bruto à qual pertence.
+    A classe {@link android.provider.ContactsContract.Contacts.Photo} define uma subtabela de
+    {@link android.provider.ContactsContract.Contacts} contendo informações de foto
+    de uma foto principal do contato, que é a foto principal do contato bruto principal do contato. Da mesma forma,
+    a classe {@link android.provider.ContactsContract.RawContacts.DisplayPhoto} define uma subtabela
+    de {@link android.provider.ContactsContract.RawContacts} contendo informações de foto
+    de uma foto principal do contato bruto.
+</p>
+<p>
+    A documentação de referência de {@link android.provider.ContactsContract.Contacts.Photo} e
+    {@link android.provider.ContactsContract.RawContacts.DisplayPhoto} contém exemplos
+    de recuperação de informações de foto. Não há classe conveniente para recuperar a miniatura
+    principal de um contato bruto, mas é possível enviar uma consulta
+    à tabela {@link android.provider.ContactsContract.Data}, selecionando no {@code android.provider.BaseColumns#_ID}
+    do contato bruto, o
+    {@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+    Photo.CONTENT_ITEM_TYPE} e a coluna
+    {@link android.provider.ContactsContract.Data#IS_PRIMARY} para encontrar a linha da foto principal do contato bruto.
+</p>
+<p>
+    Dados de fluxos sociais de uma pessoa também podem conter fotos. Elas são armazenadas
+    na tabela {@code android.provider.ContactsContract.StreamItemPhotos}, que é descrita com mais
+    detalhes na seção <a href="#StreamPhotos">Fotos de fluxos sociais</a>.
+</p>
diff --git a/docs/html-intl/intl/pt-br/guide/topics/providers/content-provider-basics.jd b/docs/html-intl/intl/pt-br/guide/topics/providers/content-provider-basics.jd
new file mode 100644
index 0000000..5005f92
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/providers/content-provider-basics.jd
@@ -0,0 +1,1196 @@
+page.title=Preceitos do provedor de conteúdo
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<!-- In this document -->
+<h2>Neste documento</h2>
+<ol>
+    <li>
+        <a href="#Basics">Visão geral</a>
+        <ol>
+            <li>
+                <a href="#ClientProvider">Acesso a um provedor</a>
+            </li>
+            <li>
+                <a href="#ContentURIs">URIs de conteúdo</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#SimpleQuery">Recuperação de dados do provedor</a>
+        <ol>
+            <li>
+                <a href="#RequestPermissions">Solicitação de permissão de acesso para leitura</a>
+            </li>
+            <li>
+                <a href="#Query">Construção da consulta</a>
+            </li>
+            <li>
+                <a href="#DisplayResults">Exibição dos resultados da consulta</a>
+            </li>
+            <li>
+                <a href="#GettingResults">Obtenção de dados de resultados da consulta</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#Permissions">Permissões do provedor de conteúdo</a>
+    </li>
+    <li>
+        <a href="#Modifications">Inserção, atualização e exclusão de dados</a>
+        <ol>
+            <li>
+                <a href="#Inserting">Inserção de dados</a>
+            </li>
+            <li>
+                <a href="#Updating">Atualização de dados</a>
+            </li>
+            <li>
+                <a href="#Deleting">Exclusão de dados</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#DataTypes">Tipos de dados do provedor</a>
+    </li>
+    <li>
+        <a href="#AltForms">Formas alternativas de acesso ao provedor</a>
+        <ol>
+            <li>
+                <a href="#Batch">Acesso em lote</a>
+            </li>
+            <li>
+                <a href="#Intents">Acesso a dados via intenções</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClasses">Classes de contrato</a>
+    </li>
+    <li>
+        <a href="#MIMETypeReference">Referência de tipo MIME</a>
+    </li>
+</ol>
+
+    <!-- Key Classes -->
+<h2>Classes principais</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.content.ContentResolver}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+
+    <!-- Related Samples -->
+<h2>Exemplos relacionados</h2>
+    <ol>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        Cursor (Pessoas)</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        Cursor (Telefones)</a>
+        </li>
+    </ol>
+
+    <!-- See also -->
+<h2>Veja também</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+            Criação de um Provedor de conteúdo</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+            Provedor de agenda</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+    <!-- Intro paragraphs -->
+<p>
+    O provedor de conteúdo gerencia o acesso a um repositório central de dados. Um provedor
+    é parte de um aplicativo do Android, que, em geral, fornece a própria IU para trabalhar com
+    os dados. Contudo, provedores de conteúdo destinam-se principalmente ao uso por outros
+    aplicativos, que acessam o provedor usando um objeto cliente do provedor. Juntos, provedores
+    e clientes do provedor oferecem interface padronizada e consistente para dados que também lidam com
+    comunicação em processos internos e garantem acesso a dados.
+</p>
+<p>
+    Esse tópico descreve os conceitos básicos do seguinte:
+</p>
+    <ul>
+        <li>Como os provedores de conteúdo funcionam.</li>
+        <li>A API usada para recuperar dados de um provedor de conteúdo.</li>
+        <li>A API usada para inserir, atualizar ou excluir dados em um provedor de conteúdo.</li>
+        <li>Outros recursos de API que facilitam o trabalho com provedores.</li>
+    </ul>
+
+    <!-- Basics -->
+<h2 id="Basics">Visão geral</h2>
+<p>
+    O provedor de conteúdo apresenta dados a aplicativos externos na forma de uma ou mais tabelas
+    similares às tabelas encontradas em um banco de dados relacional. Uma linha representa uma instância de algum tipo
+    de dados que o provedor coleta e cada coluna na linha representa uma parte individual de
+    dados coletados por uma instância.
+</p>
+<p>
+    Por exemplo: um dos provedores embutidos na plataforma do Android é o dicionário do usuário, que
+    armazena as grafias de palavras incomuns que o usuário deseja manter. A tabela 1 ilustra
+    como podem ser os dados nesta tabela do provedor:
+</p>
+<p class="table-caption">
+    <strong>Tabela 1:</strong> Tabela de dicionário do usuário de exemplo.
+</p>
+<table id="table1" style="width: 50%;">
+    <tr>
+        <th style="width:20%" align="center" scope="col">palavra</th>
+        <th style="width:20%" align="center" scope="col">id do aplicativo</th>
+        <th style="width:20%" align="center" scope="col">frequência</th>
+        <th style="width:20%" align="center" scope="col">localidade</th>
+        <th style="width:20%" align="center" scope="col">_ID</th>
+    </tr>
+    <tr>
+        <td align="center" scope="row">reduçãodomapa</td>
+        <td align="center">usuário1</td>
+        <td align="center">100</td>
+        <td align="center">en_US</td>
+        <td align="center">1</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">pré-compilador</td>
+        <td align="center">usuário14</td>
+        <td align="center">200</td>
+        <td align="center">fr_FR</td>
+        <td align="center">2</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">applet</td>
+        <td align="center">usuário2</td>
+        <td align="center">225</td>
+        <td align="center">fr_CA</td>
+        <td align="center">3</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">const</td>
+        <td align="center">usuário1</td>
+        <td align="center">255</td>
+        <td align="center">pt_BR</td>
+        <td align="center">4</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">int</td>
+        <td align="center">usuário5</td>
+        <td align="center">100</td>
+        <td align="center">en_UK</td>
+        <td align="center">5</td>
+    </tr>
+</table>
+<p>
+    Na tabela 1, cada linha representa uma instância de uma palavra que pode não ser
+    encontrada em um dicionário comum. Cada coluna representa alguns dados dessa palavra, como
+    a localidade em que foi encontrada pela primeira vez. Os cabeçalhos da coluna são nomes de coluna armazenados
+    no provedor. Para consultar a localidade de uma linha, consulte a sua coluna <code>locale</code>. Para
+    esse provedor, a coluna <code>_ID</code> serve como uma coluna de "chave principal" que
+    o provedor mantém automaticamente.
+</p>
+<p class="note">
+    <strong>Observação:</strong> os provedores não precisam ter uma chave principal e não precisam
+    usar <code>_ID</code> como o nome de coluna de uma chave principal se uma for apresentada. Contudo,
+    se você deseja agrupar dados de um provedor em um {@link android.widget.ListView}, um dos
+    nomes de coluna deve ser <code>_ID</code>. Esse requisito é explicado com mais detalhes
+    na seção <a href="#DisplayResults">Exibição dos resultados da consulta</a>.
+</p>
+<h3 id="ClientProvider">Acesso a um provedor</h3>
+<p>
+    Os aplicativos acessam dados a partir de um provedor de conteúdo
+    com um objeto cliente {@link android.content.ContentResolver}. Esse objeto tem métodos que chamam
+    métodos de nome idêntico no objeto do provedor, uma instância de uma das subclasses
+    concretas de {@link android.content.ContentProvider}. 
+    Os métodos {@link android.content.ContentResolver} fornecem as funções básicas
+    do "CRUD" (criar, recuperar, atualizar e excluir) de armazenamento persistente.
+</p>
+<p>
+    O objeto {@link android.content.ContentResolver} no processo do aplicativo
+    cliente e o objeto {@link android.content.ContentProvider} no aplicativo que possui
+    o provedor lidam automaticamente com a comunicação de processos internos.
+    {@link android.content.ContentProvider} também age como uma camada de abstração entre
+    ser repositório de dados e a aparência externa de dados na forma de tabelas.
+</p>
+<p class="note">
+    <strong>Observação:</strong> para acessar um provedor, o aplicativo normalmente precisa solicitar permissões
+    específicas no arquivo de manifesto. Isso é descrito com mais detalhes na seção
+    <a href="#Permissions">Permissões do provedor de conteúdo</a>.
+</p>
+<p>
+    Por exemplo: para obter uma lista das palavras e respectivas localidades do Provedor de dicionário do usuário,
+    chama-se {@link android.content.ContentResolver#query ContentResolver.query()}.
+    O método {@link android.content.ContentResolver#query query()} chama
+    o método {@link android.content.ContentProvider#query ContentProvider.query()} definido pelo
+    Provedor de dicionário do usuário. As linhas de código a seguir exibem
+    uma chamada {@link android.content.ContentResolver#query ContentResolver.query()}:
+<p>
+<pre>
+// Queries the user dictionary and returns results
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,   // The content URI of the words table
+    mProjection,                        // The columns to return for each row
+    mSelectionClause                    // Selection criteria
+    mSelectionArgs,                     // Selection criteria
+    mSortOrder);                        // The sort order for the returned rows
+</pre>
+<p>
+    A tabela 2 mostra como os argumentos para
+    {@link android.content.ContentResolver#query 
+    query(Uri,projection,selection,selectionArgs,sortOrder)} correspondem a uma declaração SQL SELECT:
+</p>
+<p class="table-caption">
+    <strong>Tabela 2:</strong> Query() comparada à consulta SQL.
+</p>
+<table id="table2" style="width: 75%;">
+    <tr>
+        <th style="width:25%" align="center" scope="col">Argumento query()</th>
+        <th style="width:25%" align="center" scope="col">Palavra-chave/parâmetro de SELEÇÃO</th>
+        <th style="width:50%" align="center" scope="col">Observações</th>
+    </tr>
+    <tr>
+        <td align="center"><code>Uri</code></td>
+        <td align="center"><code>FROM <em>table_name</em></code></td>
+        <td><code>Uri</code> mapeia para a tabela no provedor chamado <em>table_name</em>.</td>
+    </tr>
+    <tr>
+        <td align="center"><code>projection</code></td>
+        <td align="center"><code><em>col,col,col,...</em></code></td>
+        <td>
+            <code>projection</code> é uma matriz de colunas que devem ser incluídas para cada linha
+            recuperada.
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>selection</code></td>
+        <td align="center"><code>WHERE <em>col</em> = <em>value</em></code></td>
+        <td><code>selection</code> especifica o critério para a seleção de linhas.</td>
+    </tr>
+    <tr>
+        <td align="center"><code>selectionArgs</code></td>
+        <td align="center">
+            (Não exatamente equivalente. Argumentos de seleção substituem marcadores de posição <code>?</code>
+            na cláusula de seleção.)
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>sortOrder</code></td>
+        <td align="center"><code>ORDER BY <em>col,col,...</em></code></td>
+        <td>
+            <code>sortOrder</code> especifica a ordem em que as linhas aparecem
+            no {@link android.database.Cursor} retornado.
+        </td>
+    </tr>
+</table>
+<h3 id="ContentURIs">URIs de conteúdo</h3>
+<p>
+    <strong>URI de conteúdo</strong> é uma URI que identifica dados em um provedor. URIs de conteúdo
+    contêm o nome simbólico de todo o provedor (sua <strong>autoridade</strong>)
+    e um nome que aponta para uma tabela (um <strong>caminho</strong>). Ao chamar
+    um método cliente para acessar uma tabela em um provedor, a URI de conteúdo da tabela é
+    um dos argumentos.
+</p>
+<p>
+    Nas linhas de código anteriores, a constante
+    {@link android.provider.UserDictionary.Words#CONTENT_URI} contém a URI de conteúdo
+    da tabela de "palavras" do dicionário do usuário. O objeto {@link android.content.ContentResolver}
+    analisa a autoridade da URI e usa-na para "determinar" o provedor
+    comparando a autoridade a uma tabela de provedores conhecidos do sistema. 
+    O {@link android.content.ContentResolver} pode, então, enviar os argumentos da consulta ao provedor
+    correto.
+</p>
+<p>
+    O {@link android.content.ContentProvider} usa o caminho que é parte da URI de conteúdo para escolher
+    a tabela para acessar. Os provedores normalmente têm um <strong>caminho</strong> para cada tabela exposta.
+</p>
+<p>
+    Nas linhas de código anteriores, a URI completa da tabela de "palavras" é:
+</p>
+<pre>
+content://user_dictionary/words
+</pre>
+<p>
+    onde a string <code>user_dictionary</code> é a autoridade do provedor e
+    a string <code>words</code> é o caminho da tabela. A string
+    <code>content://</code> (o <strong>esquema</strong>) está sempre presente
+    e identifica isso como uma URI de conteúdo.
+</p>
+<p>
+    Muitos provedores permitem acesso a uma única linha em uma tabela, por meio da anexação do valor de um ID
+    no fim da URI. Por exemplo, para recuperar uma linha em que <code>_ID</code> seja
+    <code>4</code> do dicionário do usuário, é possível usar essa URI de conteúdo:
+</p>
+<pre>
+Uri singleUri = ContentUris.withAppendedId(UserDictionary.Words.CONTENT_URI,4);
+</pre>
+<p>
+    Normalmente usam-se valores de ID ao recuperar um conjunto de linhas e, em seguida, é necessário atualizar ou excluir
+    uma delas.
+</p>
+<p class="note">
+    <strong>Observação:</strong> as classes {@link android.net.Uri} e {@link android.net.Uri.Builder}
+    contêm métodos convenientes para a construção de objetos de URI bem formados a partir de strings. 
+    As {@link android.content.ContentUris} contêm métodos conveniente para anexar valores de ID
+    a uma URI. O fragmento anterior usa {@link android.content.ContentUris#withAppendedId
+    withAppendedId()} para anexar um ID à URI de conteúdo UserDictionary.
+</p>
+
+
+    <!-- Retrieving Data from the Provider -->
+<h2 id="SimpleQuery">Recuperação de dados pelo Provedor</h2>
+<p>
+    Esta seção descreve como recuperar dados de um provedor usando o Provedor de dicionário do usuário
+    como um exemplo.
+</p>
+<p class="note">
+    Por uma questão de clareza, os fragmentos de código nesta seção chamam
+    {@link android.content.ContentResolver#query ContentResolver.query()} no "encadeamento da IU". 
+    No código atual, contudo, deve-se realizar consultas assincronamente em um encadeamento separado. Um modo de fazê-lo
+    é usar a classe {@link android.content.CursorLoader}, descrita
+    com mais detalhes no guia <a href="{@docRoot}guide/components/loaders.html">
+    Carregadores</a>. Além disso, as linhas de código são somente fragmentos — não mostram um aplicativo
+    completo.
+</p>
+<p>
+    Para recuperar dados de um provedor, siga essas etapas básicas:
+</p>
+<ol>
+   <li>
+        Solicite a permissão de acesso para leitura para um provedor.
+   </li>
+   <li>
+        Defina o código que envia uma consulta ao provedor.
+   </li>
+</ol>
+<h3 id="RequestPermissions">Solicitação de permissão de acesso para leitura</h3>
+<p>
+    Para recuperar dados de um provedor, o aplicativo precisa de "permissão de acesso a leitura"
+    para o provedor. Não é possível solicitar essa permissão em tempo de execução. Em vez disso, deve-se especificar
+    que precisa dessa permissão no manifesto com o elemento
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+    e o nome da permissão exata definida
+    pelo provedor. Ao especificar esse elemento no manifesto, você está efetivamente "solicitando" essa
+    permissão para o aplicativo. Quando usuários instalam seu aplicativo, eles concedem essa solicitação
+    implicitamente.
+</p>
+<p>
+    Para encontrar o nome exato da permissão de acesso para leitura do provedor que está usando, bem
+    como os nomes de outras permissões de acesso usadas pelo provedor, consulte a documentação
+    do provedor.
+</p>
+<p>
+    O papel das permissões no acesso a provedores é descrito com mais detalhes na seção
+    <a href="#Permissions">Permissões do provedor de conteúdo</a>.
+</p>
+<p>
+    O Provedor de Dicionário do Usuário define a permissão
+    <code>android.permission.READ_USER_DICTIONARY</code> no arquivo de manifesto, portanto, se um
+    aplicativo quiser ler pelo provedor, deve solicitar essa permissão.
+</p>
+<!-- Constructing the query -->
+<h3 id="Query">Construção da consulta</h3>
+<p>
+    A próxima etapa na recuperação de dados de um provedor é construir uma consulta. Este primeiro fragmento
+    define algumas variáveis para acessar o Provedor de Dicionário do Usuário:
+</p>
+<pre class="prettyprint">
+
+// A "projection" defines the columns that will be returned for each row
+String[] mProjection =
+{
+    UserDictionary.Words._ID,    // Contract class constant for the _ID column name
+    UserDictionary.Words.WORD,   // Contract class constant for the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant for the locale column name
+};
+
+// Defines a string to contain the selection clause
+String mSelectionClause = null;
+
+// Initializes an array to contain selection arguments
+String[] mSelectionArgs = {""};
+
+</pre>
+<p>
+    O próximo fragmento mostra como usar
+    {@link android.content.ContentResolver#query ContentResolver.query()} usando o Provedor de
+    Dicionário do Usuário como exemplo. Uma consulta cliente do provedor é similar a uma consulta SQL e contém um
+    conjunto de colunas para retornar, um conjunto de critérios de seleção e uma classificação ordenada.
+</p>
+<p>
+    O conjunto de colunas que a consulta deve retornar é chamado de <strong>projeção</strong>
+    (a variável <code>mProjection</code>).
+</p>
+<p>
+    A expressão que especifica as linhas a recuperar é dividida em uma cláusula de seleção
+    e em argumentos de seleção. A cláusula de seleção é uma combinação de expressões lógicas e booleanas
+    e nomes e valores de colunas (a variável <code>mSelectionClause</code>). Ao especificar
+    o parâmetro <code>?</code> substituível em vez de um valor, o método da consulta recupera o valor
+    da matriz de argumentos de seleção (a variável <code>mSelectionArgs</code>).
+</p>
+<p>
+    No próximo fragmento, se o usuário não inserir nenhuma palavra, a cláusula de seleção será definida como
+    <code>null</code> e a consulta retornará todas as palavras no provedor. Se o usuário inserir
+    uma palavra, a cláusula de seleção será definida como <code>UserDictionary.Words.WORD + " = ?"</code>
+    e o primeiro elemento da matriz de argumentos de seleção é definida como a palavra que o usuário inserir.
+</p>
+<pre class="prettyprint">
+/*
+ * This defines a one-element String array to contain the selection argument.
+ */
+String[] mSelectionArgs = {""};
+
+// Gets a word from the UI
+mSearchString = mSearchWord.getText().toString();
+
+// Remember to insert code here to check for invalid or malicious input.
+
+// If the word is the empty string, gets everything
+if (TextUtils.isEmpty(mSearchString)) {
+    // Setting the selection clause to null will return all words
+    mSelectionClause = null;
+    mSelectionArgs[0] = "";
+
+} else {
+    // Constructs a selection clause that matches the word that the user entered.
+    mSelectionClause = UserDictionary.Words.WORD + " = ?";
+
+    // Moves the user's input string to the selection arguments.
+    mSelectionArgs[0] = mSearchString;
+
+}
+
+// Does a query against the table and returns a Cursor object
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,  // The content URI of the words table
+    mProjection,                       // The columns to return for each row
+    mSelectionClause                   // Either null, or the word the user entered
+    mSelectionArgs,                    // Either empty, or the string the user entered
+    mSortOrder);                       // The sort order for the returned rows
+
+// Some providers return null if an error occurs, others throw an exception
+if (null == mCursor) {
+    /*
+     * Insert code here to handle the error. Be sure not to use the cursor! You may want to
+     * call android.util.Log.e() to log this error.
+     *
+     */
+// If the Cursor is empty, the provider found no matches
+} else if (mCursor.getCount() &lt; 1) {
+
+    /*
+     * Insert code here to notify the user that the search was unsuccessful. This isn't necessarily
+     * an error. You may want to offer the user the option to insert a new row, or re-type the
+     * search term.
+     */
+
+} else {
+    // Insert code here to do something with the results
+
+}
+</pre>
+<p>
+    Essa consulta é análoga à declaração SQL:
+</p>
+<pre>
+SELECT _ID, word, locale FROM words WHERE word = &lt;userinput&gt; ORDER BY word ASC;
+</pre>
+<p>
+    Nesta declaração SQL, os nomes de coluna reais são usados no lugar de constantes de classes de contrato.
+</p>
+<h4 id="Injection">Proteção contra inserções mal-intencionadas</h4>
+<p>
+    Se os dados gerenciados pelo provedor de conteúdo estiverem em um banco de dados SQL, inclusive dados não confiáveis
+    externos nas declarações SQL brutas, existe a possibilidade de haver uma injeção de SQL.
+</p>
+<p>
+    Considere esta cláusula de seleção:
+</p>
+<pre>
+// Constructs a selection clause by concatenating the user's input to the column name
+String mSelectionClause =  "var = " + mUserInput;
+</pre>
+<p>
+    Se você fizer isso, estará permitindo que o usuário concatene SQL mal-intencionados na sua declaração SQL.
+    Por exemplo: o usuário poderia inserir "nada; REMOVER TABELA *;" para <code>mUserInput</code>, o que
+    resultaria na cláusula de seleção <code>var = nothing; DROP TABLE *;</code>. Como
+    a cláusula de seleção é tratada como uma declaração SQL, isso pode fazer com que o provedor apague todas
+    as tabelas no banco de dados SQLite em questão (a menos que o provedor esteja configurado para capturar
+    tentativas de <a href="http://en.wikipedia.org/wiki/SQL_injection">injeção de SQL</a>).
+</p>
+<p>
+    Para evitar este problema, use uma cláusula de seleção que use <code>?</code> como um parâmetro
+    substituível e uma matriz de argumentos de seleção separada. Ao fazer isso, a inserção de dados do usuário
+    limita-se diretamente à consulta em vez de ser interpretada como parte de uma declaração SQL.
+    Pelo fato de não ser tratada como SQL, a inserção de dados do usuário não injeta SQL mal-intencionados. Em vez de usar
+    a concatenação para incluir a inserção de dados do usuário, use esta cláusula de seleção:
+</p>
+<pre>
+// Constructs a selection clause with a replaceable parameter
+String mSelectionClause =  "var = ?";
+</pre>
+<p>
+    Configure a matriz de argumentos de seleção desta maneira:
+</p>
+<pre>
+// Defines an array to contain the selection arguments
+String[] selectionArgs = {""};
+</pre>
+<p>
+    Insira um valor na matriz de argumentos de seleção desta maneira:
+</p>
+<pre>
+// Sets the selection argument to the user's input
+selectionArgs[0] = mUserInput;
+</pre>
+<p>
+    Usar uma cláusula de seleção que use <code>?</code> como um parâmetro substituível e uma matriz
+    de argumentos de seleção é o melhor modo de especificar uma seleção, mesmo que o provedor se baseie
+    base em um banco de dados SQL.
+</p>
+<!-- Displaying the results -->
+<h3 id="DisplayResults">Exibição dos resultados da consulta</h3>
+<p>
+    O método cliente {@link android.content.ContentResolver#query ContentResolver.query()} sempre
+    retorna um {@link android.database.Cursor} contendo as colunas especificadas pela projeção
+    da consulta para as linhas que atendem aos critérios de seleção da consulta. 
+    Um objeto {@link android.database.Cursor} fornece acesso para leitura aleatório para as linhas e colunas que
+    contém. Usando métodos {@link android.database.Cursor}, é possível repetir as linhas
+    nos resultados, determinar o tipo dos dados de cada coluna, extrair os dados de uma coluna e examinar
+    outras propriedades dos resultados. Algumas implementações do {@link android.database.Cursor} atualizam o objeto
+    automaticamente quando os dados do provedor mudam ou acionam métodos em um objeto observador
+    quando o {@link android.database.Cursor} muda, ou ambos.
+</p>
+<p class="note">
+    <strong>Observação:</strong> os provedores podem restringir acesso a colunas com base na natureza
+    do objeto que realiza a consulta. Por exemplo: o Provedor de Contatos restringe o acesso de algumas colunas
+    a adaptadores de sincronização, por isso ela não os retornará a uma atividade ou serviço.
+</p>
+<p>
+    Se nenhuma linha atender aos critérios de seleção, o provedor
+    retorna um objeto {@link android.database.Cursor} para o qual
+    {@link android.database.Cursor#getCount Cursor.getCount()} é 0 (um cursor vazio).
+</p>
+<p>
+    Se ocorrer um erro interno, os resultados da consulta dependem do provedor determinado. Ele pode
+    escolher retornar <code>null</code> ou pode gerar uma {@link java.lang.Exception}.
+</p>
+<p>
+    Já que {@link android.database.Cursor} é uma "lista" de linhas, um bom modo de exibir
+    o conteúdo de um {@link android.database.Cursor} é vinculá-lo a uma {@link android.widget.ListView}
+    por meio de um {@link android.widget.SimpleCursorAdapter}.
+</p>
+<p>
+    O fragmento a seguir continua o código do fragmento anterior. Ele cria
+    um objeto {@link android.widget.SimpleCursorAdapter} contendo o {@link android.database.Cursor}
+    recuperado pela consulta e configura esse objeto para ser o adaptador de uma
+    {@link android.widget.ListView}:
+</p>
+<pre class="prettyprint">
+// Defines a list of columns to retrieve from the Cursor and load into an output row
+String[] mWordListColumns =
+{
+    UserDictionary.Words.WORD,   // Contract class constant containing the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant containing the locale column name
+};
+
+// Defines a list of View IDs that will receive the Cursor columns for each row
+int[] mWordListItems = { R.id.dictWord, R.id.locale};
+
+// Creates a new SimpleCursorAdapter
+mCursorAdapter = new SimpleCursorAdapter(
+    getApplicationContext(),               // The application's Context object
+    R.layout.wordlistrow,                  // A layout in XML for one row in the ListView
+    mCursor,                               // The result from the query
+    mWordListColumns,                      // A string array of column names in the cursor
+    mWordListItems,                        // An integer array of view IDs in the row layout
+    0);                                    // Flags (usually none are needed)
+
+// Sets the adapter for the ListView
+mWordList.setAdapter(mCursorAdapter);
+</pre>
+<p class="note">
+    <strong>Observação:</strong> para retornar uma {@link android.widget.ListView} com um
+    {@link android.database.Cursor}, o cursor deve conter uma coluna chamada <code>_ID</code>.
+    Por isso, a consulta exibida anteriormente recupera a coluna <code>_ID</code> da
+    tabelas de "palavras", mesmo que a {@link android.widget.ListView} não a exiba.
+    Essa restrição também explica por que a maioria dos provedores tem uma coluna <code>_ID</code> para cada
+    tabela.
+</p>
+
+        <!-- Getting data from query results -->
+<h3 id="GettingResults">Obtenção de dados de resultados da consulta</h3>
+<p>
+    Em vez de simplesmente exibir resultados da consulta, é possível usá-los para outras tarefas. Por
+    exemplo: é possível recuperar grafias de um dicionário do usuário e, em seguida, procurá-los
+    em outros provedores. Para isso, repetem-se as linhas no {@link android.database.Cursor}:
+</p>
+<pre class="prettyprint">
+
+// Determine the column index of the column named "word"
+int index = mCursor.getColumnIndex(UserDictionary.Words.WORD);
+
+/*
+ * Only executes if the cursor is valid. The User Dictionary Provider returns null if
+ * an internal error occurs. Other providers may throw an Exception instead of returning null.
+ */
+
+if (mCursor != null) {
+    /*
+     * Moves to the next row in the cursor. Before the first movement in the cursor, the
+     * "row pointer" is -1, and if you try to retrieve data at that position you will get an
+     * exception.
+     */
+    while (mCursor.moveToNext()) {
+
+        // Gets the value from the column.
+        newWord = mCursor.getString(index);
+
+        // Insert code here to process the retrieved word.
+
+        ...
+
+        // end of while loop
+    }
+} else {
+
+    // Insert code here to report an error if the cursor is null or the provider threw an exception.
+}
+</pre>
+<p>
+    As implementações {@link android.database.Cursor} contêm diversos métodos "get" (obter)
+    para recuperar diferentes tipos de dados do objeto. Por exemplo, o fragmento anterior
+    usa {@link android.database.Cursor#getString getString()}. Elas também têm
+    um método {@link android.database.Cursor#getType getType()} que retorna um valor indicando
+    o tipo dos dados da coluna.
+</p>
+
+
+    <!-- Requesting permissions -->
+<h2 id="Permissions">Permissões do provedor de conteúdo</h2>
+<p>
+    Um aplicativo do provedor pode especificar permissões que outros aplicativos devem ter para
+    acessar os dados do provedor. Essas permissões garantem que o usuário saiba quais dados
+    um aplicativo tentará acessar. Com base nos requisitos do provedor, outros aplicativos
+    solicitam as permissões de que precisam para acessar o provedor. Usuários finais veem as permissões
+    solicitadas quando instalam o aplicativo.
+</p>
+<p>
+    Se um aplicativo do provedor não especificar nenhuma permissão, outros aplicativos não terão
+    acesso aos dados do provedor. No entanto, os componentes no aplicativo do provedor sempre têm
+    acesso total para leitura e gravação, independentemente das permissões especificadas.
+</p>
+<p>
+    Como observado anteriormente, o Provedor de Dicionário do Usuário requer
+    a permissão <code>android.permission.READ_USER_DICTIONARY</code> para recuperar dados dele.
+    O provedor tem a permissão <code>android.permission.WRITE_USER_DICTIONARY</code>
+    separadamente para inserção, atualização ou exclusão de dados.
+</p>
+<p>
+    Para obter as permissões necessárias para acessar um provedor, um aplicativo as solicita
+como um elemento <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+    no arquivo de manifesto. Quando o Android Package Manager (gerente de pacotes do Android) instala o aplicativo, o usuário
+    precisa aprovar todas as permissões que o aplicativo solicita. Se o usuário aprovar todas elas,
+    o gerente de pacotes continua a instalação; se o usuário não as aprovar, o gerente de pacotes
+    aborta a instalação.
+</p>
+<p>
+    O elemento
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> a seguir
+     solicita acesso para leitura ao Provedor de Dicionário do Usuário:
+</p>
+<pre>
+    &lt;uses-permission android:name="android.permission.READ_USER_DICTIONARY"&gt;
+</pre>
+<p>
+    O impacto das permissões no acesso ao provedor é explicado com mais detalhes
+    no guia <a href="{@docRoot}guide/topics/security/security.html">Permissões e segurança</a>.
+</p>
+
+
+<!-- Inserting, Updating, and Deleting Data -->
+<h2 id="Modifications">Inserção, atualização e exclusão de dados</h2>
+<p>
+    Do mesmo modo que se recupera dados de um provedor, também usa-se a interação entre
+    um cliente do provedor e o {@link android.content.ContentProvider} do provedor para modificar dados.
+    Chama-se um método de {@link android.content.ContentResolver} com argumentos que são passados para
+    o método correspondente de {@link android.content.ContentProvider}. O provedor e o cliente
+    do provedor tratam automaticamente da segurança e da comunicação de processos internos.
+</p>
+<h3 id="Inserting">Inserção de dados</h3>
+<p>
+    Para inserir dados em um provedor, chame
+    o método
+{@link android.content.ContentResolver#insert ContentResolver.insert()}. Esse método insere uma nova linha no provedor e retorna uma URI de conteúdo dessa linha.
+    Este fragmento mostra como inserir uma nova palavra no Provedor de Dicionário do Usuário:
+</p>
+<pre class="prettyprint">
+// Defines a new Uri object that receives the result of the insertion
+Uri mNewUri;
+
+...
+
+// Defines an object to contain the new values to insert
+ContentValues mNewValues = new ContentValues();
+
+/*
+ * Sets the values of each column and inserts the word. The arguments to the "put"
+ * method are "column name" and "value"
+ */
+mNewValues.put(UserDictionary.Words.APP_ID, "example.user");
+mNewValues.put(UserDictionary.Words.LOCALE, "en_US");
+mNewValues.put(UserDictionary.Words.WORD, "insert");
+mNewValues.put(UserDictionary.Words.FREQUENCY, "100");
+
+mNewUri = getContentResolver().insert(
+    UserDictionary.Word.CONTENT_URI,   // the user dictionary content URI
+    mNewValues                          // the values to insert
+);
+</pre>
+<p>
+    Os dados da nova linha vão para um objeto {@link android.content.ContentValues} único, que
+    tem forma semelhante a um cursor de uma linha. As colunas nesse objeto não precisam ter
+    o mesmo tipo de dados e, se você não quiser especificar um valor, pode definir uma coluna
+    como <code>null</code> usando {@link android.content.ContentValues#putNull ContentValues.putNull()}.
+</p>
+<p>
+    O fragmento não adiciona a coluna <code>_ID</code> porque essa coluna é mantida
+    automaticamente. O provedor atribui um valor exclusivo de <code>_ID</code> para cada linha
+    adicionada. Os provedores normalmente usam esse valor como a chave principal da tabela.
+</p>
+<p>
+    A URI de conteúdo retornada em <code>newUri</code> identifica a linha recentemente adicionada com
+    o seguinte formato:
+</p>
+<pre>
+content://user_dictionary/words/&lt;id_value&gt;
+</pre>
+<p>
+    O <code>&lt;id_value&gt;</code> é o conteúdo de <code>_ID</code> da nova linha.
+    A maioria dos provedores pode detectar essa forma de URI de conteúdo automaticamente e, em seguida, realizar a operação
+    solicitada naquela linha.
+</p>
+<p>
+    Para obter o valor de <code>_ID</code> do {@link android.net.Uri} retornado, chame
+    {@link android.content.ContentUris#parseId ContentUris.parseId()}.
+</p>
+<h3 id="Updating">Atualização de dados</h3>
+<p>
+    Para atualizar uma linha, use um objeto {@link android.content.ContentValues} com os valores
+    e os critérios de seleção atualizados, como se faz com uma inserção e em uma consulta, respectivamente.
+    O método cliente usado é
+    {@link android.content.ContentResolver#update ContentResolver.update()}. Só é necessário adicionar
+    valores ao objeto {@link android.content.ContentValues} das colunas que forem atualizadas. Se você
+    deseja apagar o conteúdo de uma coluna, defina o valor como <code>null</code>.
+</p>
+<p>
+    O fragmento a seguir altera todas as linhas cuja localidade tem o idioma "en" para
+    terem uma localidade de <code>null</code>. O valor de retorno é o número de linhas que foram atualizadas:
+</p>
+<pre>
+// Defines an object to contain the updated values
+ContentValues mUpdateValues = new ContentValues();
+
+// Defines selection criteria for the rows you want to update
+String mSelectionClause = UserDictionary.Words.LOCALE +  "LIKE ?";
+String[] mSelectionArgs = {"en_%"};
+
+// Defines a variable to contain the number of updated rows
+int mRowsUpdated = 0;
+
+...
+
+/*
+ * Sets the updated value and updates the selected words.
+ */
+mUpdateValues.putNull(UserDictionary.Words.LOCALE);
+
+mRowsUpdated = getContentResolver().update(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mUpdateValues                       // the columns to update
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    Você também deve filtrar a inserção de dados do usuário ao chamar
+    {@link android.content.ContentResolver#update ContentResolver.update()}. Para saber mais sobre
+    isso, leia a seção <a href="#Injection">Proteção contra inserções mal-intencionadas</a>.
+</p>
+<h3 id="Deleting">Exclusão de dados</h3>
+<p>
+    Excluir linhas é semelhante a recuperar dados de linhas: especificam-se critérios de seleção para as linhas
+    que se deseja excluir e o método cliente retorna o número de linhas excluídas.
+    O fragmento a seguir exclui linhas cujo appid (id do aplicativo) corresponda a "usuário". O método retorna
+    o número de linhas excluídas.
+</p>
+<pre>
+
+// Defines selection criteria for the rows you want to delete
+String mSelectionClause = UserDictionary.Words.APP_ID + " LIKE ?";
+String[] mSelectionArgs = {"user"};
+
+// Defines a variable to contain the number of rows deleted
+int mRowsDeleted = 0;
+
+...
+
+// Deletes the words that match the selection criteria
+mRowsDeleted = getContentResolver().delete(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    Também se deve filtrar a inserção de dados do usuário ao chamar
+    {@link android.content.ContentResolver#delete ContentResolver.delete()}. Para saber mais sobre
+    isso, leia a seção <a href="#Injection">Proteção contra inserções mal-intencionadas</a>.
+</p>
+<!-- Provider Data Types -->
+<h2 id="DataTypes">Tipos de dados do provedor</h2>
+<p>
+    Provedores de conteúdo podem oferecer muitos tipos de dados diferentes. O Provedor de Dicionário do Usuário oferece somente
+    texto, mas provedores também podem oferecer os seguintes formatos:
+</p>
+    <ul>
+        <li>
+            número inteiro
+        </li>
+        <li>
+            número inteiro longo (longo)
+        </li>
+        <li>
+            ponto flutuante
+        </li>
+        <li>
+            ponto flutuante longo (duplo)
+        </li>
+    </ul>
+<p>
+    Outros tipos de dados que provedores usam com frequência são objetos binários largos (BLOB) implementados como uma
+    matriz de byte de 64 kB. É possível ver os tipos de dados disponíveis consultando
+    os métodos "get" da classe {@link android.database.Cursor}.
+</p>
+<p>
+    O tipo dos dados para cada coluna em um provedor normalmente é listado na documentação do provedor.
+    Os tipos de dados do Provedor de Dicionário do Usuário são listados na documentação de referência
+    para sua classe de contrato {@link android.provider.UserDictionary.Words} (classes de contrato são
+    descritas na seção <a href="#ContractClasses">Classes de contrato</a>).
+    Também é possível determinar o tipo dos dados chamando {@link android.database.Cursor#getType
+    Cursor.getType()}.
+</p>
+<p>
+    Os provedores também mantêm informações do tipo MIME de dados para cada URI de conteúdo que definem. É possível
+    usar as informações do tipo MIME para descobrir se o aplicativo pode tratar de dados que
+    o provedor fornece ou para escolher um tipo de tratamento com base no tipo MIME. Normalmente é necessário ter
+    o tipo MIME ao trabalhar com um provedor que contenha estruturas
+    complexas de dados ou arquivos. Por exemplo: a tabela {@link android.provider.ContactsContract.Data}
+    no Provedor de contatos usa tipos MIME para etiquetar o tipo dos dados de contato armazenados em cada
+    linha. Para obter o tipo MIME correspondente a uma URI de conteúdo, chame
+    {@link android.content.ContentResolver#getType ContentResolver.getType()}.
+</p>
+<p>
+    A seção <a href="#MIMETypeReference">Referência de tipo MIME</a> descreve
+    a sintaxe de tipos MIME padrão e personalizados.
+</p>
+
+
+<!-- Alternative Forms of Provider Access -->
+<h2 id="AltForms">Formas alternativas de acessar o provedor</h2>
+<p>
+    Três formas alternativas de acesso ao provedor são importantes no desenvolvimento do aplicativo:
+</p>
+<ul>
+    <li>
+        <a href="#Batch">Acesso em lote</a>: É possível criar um lote de chamadas de acesso com métodos na
+        classe {@link android.content.ContentProviderOperation} e, em seguida, aplicá-los com
+        {@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()}.
+    </li>
+    <li>
+        Consultas assíncronas: Devem-se realizar consultas em um encadeamento separado. Um modo de fazer isso é
+        usar um objeto {@link android.content.CursorLoader}. Os exemplos
+        no guia <a href="{@docRoot}guide/components/loaders.html">Carregadores</a> demonstram
+        como fazer isso.
+    </li>
+    <li>
+        <a href="#Intents">Acesso a dados via intenções</a> Embora não seja possível enviar uma intenção
+        diretamente a um provedor, é possível enviar uma intenção ao aplicativo do provedor, que
+        normalmente é o recomendável para modificar os dados do provedor.
+    </li>
+</ul>
+<p>
+    O acesso em lote e a modificação via intenções são descritos nas seções a seguir.
+</p>
+<h3 id="Batch">Acesso em lote</h3>
+<p>
+    O acesso em lote a um provedor é útil para inserir uma grande quantidade de linhas ou para inserir
+    linhas em diversas tabelas na mesma chamada de método ou, em geral, para realizar um conjunto de
+    operações dentre limites de processo como uma transação (uma operação atômica).
+</p>
+<p>
+    Para acessar um provedor em "modo de lote",
+    cria-se uma matriz de objetos {@link android.content.ContentProviderOperation} e, em seguida,
+    envia-os a um provedor de conteúdo com
+    {@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()}. Confere-se a 
+    <em>autoridade</em> do provedor de conteúdo para esse método em vez de para uma URI de conteúdo específica.
+    Isso permite que cada objeto {@link android.content.ContentProviderOperation} na matriz trabalhe
+    com uma tabela diferente. Chamar {@link android.content.ContentResolver#applyBatch
+    ContentResolver.applyBatch()} retorna uma matriz de resultados.
+</p>
+<p>
+    A descrição da classe de contrato {@link android.provider.ContactsContract.RawContacts}
+    contém um fragmento de código que demonstra a inserção em lote. 
+O aplicativo de exemplo do <a href="{@docRoot}resources/samples/ContactManager/index.html">Gerente de contato</a>
+    contém um exemplo de acesso em lote em seu
+    arquivo de origem <code>ContactAdder.java</code>.
+</p>
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Exibição de dados usando um aplicativo auxiliar</h2>
+<p>
+    Se o seu aplicativo <em>tem</em> permissões de acesso, ainda é possível usar
+    uma intenção para exibir dados em outro aplicativo. Por exemplo: o aplicativo Agenda aceita
+    uma intenção {@link android.content.Intent#ACTION_VIEW} que exibe uma data ou evento específico.
+    Isso permite a exibição de informações da agenda sem precisar criar a própria IU.
+    Para saber mais sobre esse recurso, consulte
+    o guia <a href="{@docRoot}guide/topics/providers/calendar-provider.html">Provedor de agenda</a>.
+</p>
+<p>
+    O aplicativo para o qual você enviou uma intenção não precisa ser o aplicativo
+    associado ao provedor. Por exemplo: você pode recuperar um contato
+    do Provedor de Contatos e, em seguida, enviar uma intenção {@link android.content.Intent#ACTION_VIEW}
+    que contém a URI de conteúdo da imagem do contato para um visualizador de imagens.
+</p>
+</div>
+</div>
+<h3 id="Intents">Acesso a dados via intenções</h3>
+<p>
+    Intenções podem fornecer acesso indireto a um provedor de conteúdo. Basta permitir que o usuário acesse
+    dados em um provedor mesmo se o aplicativo não tiver permissões de acesso, tanto
+    retornando uma intenção de resultado de um aplicativo que tem permissões quanto ativando
+    um aplicativo que tem permissões e permitindo que o usuário trabalhe nele.
+</p>
+<h4>Obtenção de acesso com permissões temporárias</h4>
+<p>
+    É possível acessar dados em um provedor de conteúdo, mesmo sem s permissões
+    de acesso adequadas. Basta enviar uma intenção a um aplicativo que tenha as permissões e
+    receber de volta uma intenção de resultado contendo permissões da "URI".
+    Essas são permissões para uma URI de conteúdo específica que duram enquanto durar a atividade
+    que as recebeu. O aplicativo que tem permissões permanentes concedem permissões
+    temporárias ativando um sinalizador na intenção de resultado:
+</p>
+<ul>
+    <li>
+        <strong>Permissão de leitura:</strong>
+        {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}
+    </li>
+    <li>
+        <strong>Permissão de gravação:</strong>
+        {@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION}
+    </li>
+</ul>
+<p class="note">
+    <strong>Observação:</strong> esses sinalizadores não fornecem acesso geral de leitura ou gravação ao provedor
+    cuja autoridade esteja contida na URI de conteúdo. O acesso destina-se somente à URI.
+</p>
+<p>
+    Um provedor define permissões de URI para URIs de conteúdo no manifesto usando o atributo
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">android:grantUriPermission</a></code>
+    do elemento
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>,
+    bem como o elemento filho
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+    do elemento
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+. O mecanismo das permissões de URI é explicado com mais detalhes
+    no guia <a href="{@docRoot}guide/topics/security/security.html">Permissões e segurança</a>,
+    na seção "Permissões da URI".
+</p>
+<p>
+    Por exemplo: é possível recuperar dados de um contato no Provedor de Contatos, mesmo sem
+    a permissão {@link android.Manifest.permission#READ_CONTACTS}. Você pode desejar fazer
+    isso em um aplicativo que envie e-mails de parabenização a um contato no aniversário dele. Em vez de
+    solicitar {@link android.Manifest.permission#READ_CONTACTS}, que fornece acesso a todos
+    os contatos do usuário e suas informações, é preferível deixar que o usuário controle quais
+    contatos serão usados pelo seu aplicativo. Para isso, use o processo a seguir:
+</p>
+<ol>
+    <li>
+        O aplicativo envia uma intenção contendo a ação
+    {@link android.content.Intent#ACTION_PICK} e o tipo MIME
+    {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE} dos "contatos" usando
+    o método {@link android.app.Activity#startActivityForResult
+        startActivityForResult()}.
+    </li>
+    <li>
+        Como essa intenção corresponde ao filtro de intenções da
+        atividade de "seleção" do aplicativo Pessoas, a atividade ficará em primeiro plano.
+    </li>
+    <li>
+        Na atividade de seleção, o usuário seleciona
+        um contato para atualizar. Quando isso acontece, a atividade de seleção chama
+        {@link android.app.Activity#setResult setResult(resultcode, intent)}
+        para configurar uma intenção para retornar ao aplicativo. A intenção contém a URI de conteúdo
+        do contato que o usuário selecionou e os sinalizadores "extras"
+        {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}. Esses sinalizadores concedem
+        permissão de URI para que o aplicativo leia dados do contato apontados pela
+        URI de conteúdo. A atividade de seleção, em seguida, chama {@link android.app.Activity#finish()} para
+        retornar o controle para o aplicativo.
+    </li>
+    <li>
+        A atividade volta ao primeiro plano e o sistema chama o
+        método {@link android.app.Activity#onActivityResult onActivityResult()}
+        da sua atividade. Esse método recebe a intenção de resultado criada pela atividade de seleção
+        no aplicativo Pessoas.
+    </li>
+    <li>
+        Com a URI de conteúdo da intenção de resultado, é possível ler os dados do contato
+        a partir do Provedor de Contatos, mesmo que não tenha solicitado permissão permanente de acesso a leitura
+        para o provedor no manifesto. Pode-se, então, pode obter as informações de data de nascimento do contato
+        ou seu endereço de e-mail e, assim, enviar um e-mail de parabenização.
+    </li>
+</ol>
+<h4>Uso de outro aplicativo</h4>
+<p>
+    Um modo simples que permite ao usuário modificar dados para os quais você não tem permissões de acesso é
+    ativar um aplicativo que tenha permissões e deixar o usuário fazer o resto.
+</p>
+<p>
+    Por exemplo: o aplicativo Agenda aceita uma
+    intenção {@link android.content.Intent#ACTION_INSERT} que permite a ativação da
+    IU de inserção do aplicativo. Você pode passar dados "extras" nessa intenção que o aplicativo
+    usa para "pré-preencher" a IU. como os eventos recorrentes têm sintaxe complexa, o modo
+    recomendado de inserir eventos no Provedor de Agenda é ativar o aplicativo Agenda com um
+    {@link android.content.Intent#ACTION_INSERT} e, em seguida, deixar o usuário inserir o evento.
+</p>
+<!-- Contract Classes -->
+<h2 id="ContractClasses">Classes de contrato</h2>
+<p>
+    As classes de contrato definem constantes que ajudam os aplicativos a trabalhar com URIs de conteúdo, nomes
+    de colunas, ações de intenções e outros recursos de um provedor de conteúdo. Elas não estão
+    automaticamente inclusas em um provedor; o desenvolvedor do provedor deve defini-las e
+    disponibilizá-las a outros desenvolvedores. Muitos dos provedores incluídos na plataforma
+    do Android têm classes de contrato correspondentes no pacote {@link android.provider}.
+</p>
+<p>
+    Por exemplo: o Provedor de Dicionário do Usuário tem uma classe de contrato
+    {@link android.provider.UserDictionary} que contém constantes de URI de conteúdo e de nome de coluna. 
+    A URI de conteúdo da tabela de "palavras" é definida na constante
+    {@link android.provider.UserDictionary.Words#CONTENT_URI UserDictionary.Words.CONTENT_URI}.
+    A classe {@link android.provider.UserDictionary.Words} também contém constantes de nome de coluna
+    que são usadas nos fragmentos de exemplo neste guia. Por exemplo, uma projeção de consulta pode ser
+    definida como:
+</p>
+<pre>
+String[] mProjection =
+{
+    UserDictionary.Words._ID,
+    UserDictionary.Words.WORD,
+    UserDictionary.Words.LOCALE
+};
+</pre>
+<p>
+    Outra classe de contrato é {@link android.provider.ContactsContract} para o Provedor de Contatos.
+    A documentação de referência desta classe contém fragmentos de código de exemplo. Uma das suas
+    subclasses, {@link android.provider.ContactsContract.Intents.Insert}, é uma classe
+    de contrato que contém constantes para intenções e dados da intenção.
+</p>
+
+
+<!-- MIME Type Reference -->
+<h2 id="MIMETypeReference">Referência do tipo MIME</h2>
+<p>
+    Provedores de conteúdo podem retornar tipos MIME de mídia, strings de tipos MIME personalizados ou ambos.
+</p>
+<p>
+    Tipos MIME têm o formato
+</p>
+<pre>
+<em>type</em>/<em>subtype</em>
+</pre>
+<p>
+    Por exemplo: o tipo MIME <code>text/html</code> conhecido tem o tipo <code>text</code>
+    e o subtipo <code>html</code>. Se o provedor retornar esse tipo para uma URI,
+    uma consulta usando essa URI retornará um texto que contém tags HTML.
+</p>
+<p>
+    Strings de tipo MIME personalizado, também chamadas de tipos MIME "específicos do fornecedor" (vendor-specific), têm mais
+    valores de <em>tipo</em> e <em>subtipo</em> complexos. O valor de <em>tipo</em> é sempre
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>
+</pre>
+<p>
+    para diversas linhas ou
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>
+</pre>
+<p>
+    para uma única linha.
+</p>
+<p>
+    O <em>subtipo</em> é específico do provedor. Os provedores embutidos do Android normalmente têm um subtipo
+    simples. Por exemplo, quando o aplicativo de contatos cria uma linha para um número de telefone,
+    ele configura o seguinte tipo MIME na linha:
+</p>
+<pre>
+vnd.android.cursor.item/phone_v2
+</pre>
+<p>
+    Observe que o valor do subtipo é simplesmente <code>phone_v2</code>.
+</p>
+<p>
+    Outros desenvolvedores de provedor podem criar os próprios padrões de subtipos com base
+    na autoridade do provedor e nos nomes da tabela. Por exemplo: considere um provedor que contenha horários de trens.
+    A autoridade do provedor é <code>com.example.trains</code> e ele contém as tabelas
+    Linha1, Linha2 e Linha3. Em resposta à URI de conteúdo
+</p>
+<p>
+<pre>
+content://com.example.trains/Line1
+</pre>
+<p>
+    para a tabela Linha1, o provedor retorna o tipo MIME
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.example.line1
+</pre>
+<p>
+     Em resposta à URI de conteúdo
+</p>
+<pre>
+content://com.example.trains/Line2/5
+</pre>
+<p>
+    da linha 5 na tabela Linha2, o provedor retorna o tipo MIME
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.example.line2
+</pre>
+<p>
+    A maioria dos provedores define constantes de classe de contrato para os tipos MIME que usam. 
+    A classe de contrato {@link android.provider.ContactsContract.RawContacts} do Provedor de Contatos,
+    por exemplo, define a constante
+    {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE} para o tipo MIME
+    de uma linha exclusiva do contato bruto.
+</p>
+<p>
+    URIs de conteúdo de linhas exclusivas são descritas na seção
+    <a href="#ContentURIs">URIs de conteúdo</a>.
+</p>
diff --git a/docs/html-intl/intl/pt-br/guide/topics/providers/content-provider-creating.jd b/docs/html-intl/intl/pt-br/guide/topics/providers/content-provider-creating.jd
new file mode 100644
index 0000000..11ad4c3
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/providers/content-provider-creating.jd
@@ -0,0 +1,1214 @@
+page.title=Criação de um Provedor de Conteúdo
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<h2>Neste documento</h2>
+<ol>
+    <li>
+        <a href="#DataStorage">Projeto de armazenamento de dados</a>
+    </li>
+    <li>
+        <a href="#ContentURI">Projeto de URIs de conteúdo</a>
+    </li>
+    <li>
+        <a href="#ContentProvider">Implementação da classe ContentProvider</a>
+        <ol>
+            <li>
+                <a href="#RequiredAccess">Métodos obrigatórios</a>
+            </li>
+            <li>
+                <a href="#Query">Implementação do método query()</a>
+            </li>
+            <li>
+                <a href="#Insert">Implementação do método insert()</a>
+            </li>
+            <li>
+                <a href="#Delete">Implementação do método delete()</a>
+            </li>
+            <li>
+                <a href="#Update">Implementação do método update()</a>
+            </li>
+            <li>
+                <a href="#OnCreate">Implementação do método onCreate()</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#MIMETypes">Implementação de tipos MIME do Provedor de Conteúdo</a>
+        <ol>
+            <li>
+                <a href="#TableMIMETypes">Tipos MIME para tabelas</a>
+            </li>
+            <li>
+                <a href="#FileMIMETypes">Tipos MIME para arquivos</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClass">Implementação de uma classe de contrato</a>
+    </li>
+    <li>
+        <a href="#Permissions">Implementação de permissões do Provedor de Conteúdo</a>
+    </li>
+    <li>
+        <a href="#ProviderElement">O elemento &lt;provider&gt;</a>
+    </li>
+    <li>
+        <a href="#Intents">Intenções e acesso a dados</a>
+    </li>
+</ol>
+<h2>Classes principais</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+<h2>Exemplos relacionados</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/NotePad/index.html">
+                Aplicativo de exemplo do Bloco de Notas
+            </a>
+        </li>
+    </ol>
+<h2>Veja também</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+            Preceitos do provedor de conteúdo</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+            Provedor de agenda</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+
+<p>
+    O provedor de conteúdo gerencia o acesso a um repositório central de dados. Implementa-se
+    um provedor como uma ou mais classes em um aplicativo do Android, em conjunto com elementos
+    no arquivo de manifesto. Uma das classes implementa uma subclasse
+    {@link android.content.ContentProvider}, que é a interface entre o provedor
+    e outros aplicativos. Embora provedores de conteúdo se destinem a disponibilizar dados a outros
+    aplicativos, naturalmente é possível ter atividades no aplicativo que permitam ao usuário
+    consultar e modificar os dados gerenciados pelo provedor.
+</p>
+<p>
+    O restante deste tópico é uma lista básica de etapas para a criação de um provedor de conteúdo e uma lista
+    de APIs para usar.
+</p>
+
+
+<!-- Before You Start Building -->
+<h2 id="BeforeYouStart">Antes de começar a criar</h2>
+<p>
+    Antes de começar a criar um provedor, faça o seguinte:
+</p>
+<ol>
+    <li>
+        <strong>Avalie se você precisa de um provedor de conteúdo</strong>. É necessário criar um provedor
+        de conteúdo para fornecer um ou mais dos recursos a seguir:
+        <ul>
+            <li>Oferecer dados ou arquivos complexos a outros aplicativos.</li>
+            <li>Permitir que usuários copiem dados complexos do seu aplicativo para outros aplicativos.</li>
+            <li>Fornecer sugestões de pesquisa personalizada usando a estrutura de pesquisa.</li>
+        </ul>
+    <p>
+        <em>Não</em> é necessário um provedor para usar um banco de dados SQLite se o uso for inteiramente dentro
+        do próprio aplicativo.
+    </p>
+    </li>
+    <li>
+        Se você ainda não tiver feito isso, leia o tópico
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Preceitos do provedor de conteúdo</a> para saber mais sobre provedores.
+    </li>
+</ol>
+<p>
+    A seguir, siga estas etapas para criar seu provedor:
+</p>
+<ol>
+    <li>
+        Projete o armazenamento bruto dos dados. Os provedores de conteúdo oferecem dados de duas maneiras:
+        <dl>
+            <dt>
+                Dados de arquivo
+            </dt>
+            <dd>
+                Dados que normalmente transitam em arquivos, como
+                fotos, áudio ou vídeos. Armazene os arquivos no espaço privado
+                do seu aplicativo. Em resposta a uma solicitação de um arquivo por outro aplicativo,
+                o provedor pode oferecer um identificador para o arquivo.
+            </dd>
+            <dt>
+                Dados "estruturados"
+            </dt>
+            <dd>
+                Dados que normalmente transitam em um banco de dados, uma matriz ou estrutura similar.
+                Armazene os dados de forma compatível com tabelas de linhas e colunas. Cada linha
+                representa uma entidade, como uma pessoa ou um item em um inventário. Cada coluna representa
+                alguns dados da entidade, como o nome da pessoa ou o preço do item. Um modo comum de
+                armazenar esse tipo de dados é em um banco de dados SQLite, mas é possível usar qualquer tipo
+                de armazenamento persistente. Para saber mais sobre os tipos de armazenamento disponíveis
+                no sistema Android, consulte a seção <a href="#DataStorage">
+Projeto de armazenamento de dados</a>.
+            </dd>
+        </dl>
+    </li>
+    <li>
+        Defina uma implementação sólida da classe {@link android.content.ContentProvider}
+        e seus métodos obrigatórios. Essa classe é a interface entre seus dados e o restante
+        do sistema Android. Para obter mais informações sobre essa classe, consulte a seção
+        <a href="#ContentProvider">Implementação da classe ContentProvider</a>.
+    </li>
+    <li>
+        Defina a string de autoridade do provedor, suas URIs de conteúdo e seus nomes de coluna. Se você deseja que
+        o aplicativo do provedor trate de intenções, defina também ações de intenção, dados extras
+        e sinalizadores. Também defina as permissões necessárias para aplicativos que queiram
+        acessar seus dados. Deve-se considerar definir todos esses valores como constantes
+        em uma classe de contrato separada; posteriormente, será possível expor essa classe a outros desenvolvedores. Para
+        obter mais informações sobre URIs de conteúdo, consulte
+        a seção <a href="#ContentURI">Projeto de URIs de conteúdo</a>.
+        Para obter mais informações sobre intenções, consulte
+        a seção <a href="#Intents">Intenções e acesso a dados</a>.
+    </li>
+    <li>
+        Adicione outras partes opcionais, como dados de exemplo ou uma implementação
+        de {@link android.content.AbstractThreadedSyncAdapter} que possa sincronizar dados entre
+        o provedor e os dados com base em nuvem.
+    </li>
+</ol>
+
+
+<!-- Designing Data Storage -->
+<h2 id="DataStorage">Projeto de armazenamento de dados</h2>
+<p>
+    Os provedores de conteúdo são a interface para dados salvos em um formato estruturado. Antes de criar
+    a interface, é preciso decidir como armazenar os dados. É possível armazená-los da forma que
+    quiser e, em seguida, projetar a interface para ler e gravar os dados conforme o necessário.
+</p>
+<p>
+    Essas são algumas das tecnologias de armazenamento de dados disponíveis no Android:
+</p>
+<ul>
+    <li>
+        O sistema Android contém uma API de banco de dados SQLite que os provedores do Android usam
+    para armazenar dados orientados a tabela. 
+        A classe {@link android.database.sqlite.SQLiteOpenHelper} ajuda a criar bancos de dados
+        e a classe {@link android.database.sqlite.SQLiteDatabase} é a classe de base para acessar
+        banco de dados.
+        <p>
+            Lembre-se de que não é necessário usar nenhum banco de dados para implementar o repositório. Um provedor
+            aparece externamente como um conjunto de tabelas, semelhante a um banco de dados relacional, mas isso não
+            é um requisito para a implementação interna do provedor.
+        </p>
+    </li>
+    <li>
+        Para armazenar dados de arquivos, o Android tem diversas APIs orientadas a arquivo.
+        Para saber mais sobre armazenamento de arquivos, leia o tópico
+        <a href="{@docRoot}guide/topics/data/data-storage.html">Armazenamento de dados</a>. Se você estiver
+        projetando um provedor que oferece dados relacionados a mídia como música ou vídeos, é possível
+        ter um provedor que combine dados de tabela e de arquivos.
+    </li>
+    <li>
+        Para trabalhar com dados com base em rede, use classes em {@link java.net}
+        e em {@link android.net}. É possível, também, sincronizar dados com base em rede com uma armazenagem
+        local de dados, como um banco de dados e, em seguida, fornecer os dados na forma de tabelas ou arquivos.
+        O exemplo de aplicativo <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+        Exemplo de adaptador de sincronização</a>  demonstra o tipo de sincronização.
+    </li>
+</ul>
+<h3 id="DataDesign">
+    Considerações para projetar dados
+</h3>
+<p>
+    A seguir há algumas dicas para projetar a estrutura de dados do seu provedor:
+</p>
+<ul>
+    <li>
+        Os dados de tabela sempre devem ter uma coluna de "chave principal" que o provedor mantém
+        como um valor numérico exclusivo para cada linha. É possível usar esse valor para vincular a linha a linhas
+        relacionadas em outras tabelas (usando-o como uma "chave externa"). Embora seja possível usar qualquer nome
+        para essa coluna, é melhor usar {@link android.provider.BaseColumns#_ID BaseColumns._ID}
+        porque a vinculação dos resultados de uma consulta de provedor com uma
+        {@link android.widget.ListView} requer que uma das colunas tenha o nome
+        <code>_ID</code>.
+    </li>
+    <li>
+        Se você deseja fornecer imagens bitmap ou outras partes muito grandes de dados orientados a arquivo, armazene
+        os dados em um arquivo e, em seguida, forneça-o indiretamente em vez de armazená-lo diretamente em uma
+        tabela. Ao fazer isso, será necessário informar aos usuários do provedor que eles precisam usar
+        um método de arquivo {@link android.content.ContentResolver} para acessar os dados.
+    </li>
+    <li>
+        Use objeto grande binário (BLOB) como tipo de dados para armazenar dados que variam em tamanho ou que tenham
+        estrutura variável. Por exemplo: é possível usar uma coluna de BLOB para armazenar
+        um <a href="http://code.google.com/p/protobuf">buffer de protocolo</a> ou
+        uma <a href="http://www.json.org">estrutura JSON</a>.
+        <p>
+            Pode-se usar um BLOB para implementar uma tabela <em>independente de esquema</em>. Nesse
+            tipo de tabela, define-se uma coluna de chave principal, uma coluna de tipo MIME e uma
+            ou mais colunas genéricas como BLOB. O significado dos dados nas colunas BLOB é indicado
+            pelo valor na coluna de tipo MIME. Isso permite o armazenamento de diferentes tipos de linha
+            na mesma tabela. A tabela de "dados" {@link android.provider.ContactsContract.Data}
+            do Provedor de contatos é um exemplo de uma tabela
+            independente de esquema.
+        </p>
+    </li>
+</ul>
+<!-- Designing Content URIs -->
+<h2 id="ContentURI">Projeto de URIs de conteúdo</h2>
+<p>
+    <strong>URI de conteúdo</strong> é uma URI que identifica dados em um provedor. URIs de conteúdo
+    contêm o nome simbólico de todo o provedor (sua <strong>autoridade</strong>) e um
+    nome que aponta para uma tabela ou arquivo (um <strong>caminho</strong>). Parte do ID opcional aponta para
+    uma linha individual em uma tabela. Cada método de acesso aos dados
+    {@link android.content.ContentProvider} de tem uma URI de conteúdo como um argumento. Isso permite
+    determinar a tabela, a linha ou o arquivo a acessar.
+</p>
+<p>
+    Os conceitos básicos de URIs de conteúdo são escritos no tópico
+    <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+    Preceitos do provedor de conteúdo</a>.
+</p>
+<h3>Projeto de uma autoridade</h3>
+<p>
+    Os provedores normalmente têm uma única autoridade, que serve como seu nome interno do Android. Para
+    evitar conflitos com outros provedores, deve-se usar a propriedade de domínio da internet (ao contrário)
+    como a base da autoridade do provedor. Em virtude de esta recomendação ser verdadeira para nomes
+    de pacote do Android, é possível definir a autoridade do provedor como uma extensão do nome
+    do pacote que contém o provedor. Por exemplo: se o nome do pacote do Android for
+    <code>com.example.&lt;appname&gt;</code>, deve-se atribuir ao provedor
+    a autoridade <code>com.example.&lt;appname&gt;.provider</code>.
+</p>
+<h3>Projeto de uma estrutura de caminho</h3>
+<p>
+    Desenvolvedores normalmente criam URIs de conteúdo a partir da autoridade anexando caminhos que apontam para
+    tabelas individuais. Por exemplo: se você tiver duas tabelas (<em>tabela1</em> e
+    <em>tabela2</em>), combine a autoridade do exemplo anterior para produzir
+    as URIs de conteúdo
+    <code>com.example.&lt;appname&gt;.provider/table1</code> e
+    <code>com.example.&lt;appname&gt;.provider/table2</code>. Caminhos não
+    se limitam a um único segmento e não precisa ter uma tabela para cada nível do caminho.
+</p>
+<h3>Identificação de IDs de URIs de conteúdo</h3>
+<p>
+    Por convenção, provedores fornecem acesso a uma linha exclusiva em uma tabela aceitando uma URI de conteúdo
+    com um valor de ID para a linha no fim da URI. Também por convenção, provedores combinam
+    o valor do ID com a coluna <code>_ID</code> da tabela e realizam o acesso solicitado
+    na linha correspondente.
+</p>
+<p>
+    Essa convenção facilita a padronização comum do projeto para aplicativos que acessam um provedor. O aplicativo
+    realiza uma consulta no provedor e exibe o {@link android.database.Cursor}
+    resultante em uma {@link android.widget.ListView} usando um {@link android.widget.CursorAdapter}.
+    A definição de {@link android.widget.CursorAdapter} requer que uma das colunas
+    no {@link android.database.Cursor} seja <code>_ID</code>
+</p>
+<p>
+    Em seguida, o usuário seleciona uma das linhas exibidas na IU para visualizar ou modificar
+    os dados. O aplicativo tem a linha correspondente do {@link android.database.Cursor} apoiando
+    a {@link android.widget.ListView}, obtém o valor <code>_ID</code> para essa linha, anexa-o
+    à URI de conteúdo e envia a solicitação de acesso ao provedor. O provedor, então, pode realizar
+    a consulta ou modificação na exata linha que o usuário selecionou.
+</p>
+<h3>Padrões de URI de conteúdo</h3>
+<p>
+    Para ajudar a escolher que ação tomar para uma URI de conteúdo recebida, a API do provedor contém
+    a classe de conveniência {@link android.content.UriMatcher}, que mapeia "padrões" de URI de conteúdo
+    como valores de número inteiro. É possível usar os valores de número inteiro em uma declaração <code>switch</code> que
+    escolha a ação desejada para a URI de conteúdo ou URIs que atendam ao padrão determinado.
+</p>
+<p>
+    Um padrão de URI de conteúdo corresponde a URIs de conteúdo que usam caracteres especiais:
+</p>
+    <ul>
+        <li>
+            <strong><code>*</code>:</strong> Corresponde a uma string de qualquer caractere válido de qualquer comprimento.
+        </li>
+        <li>
+            <strong><code>#</code>:</strong> Corresponde a uma string de caracteres numéricos de qualquer comprimento.
+        </li>
+    </ul>
+<p>
+    Como um exemplo de projeto e codificação da identificação de URIs de conteúdo, considere um provedor
+    com a autoridade <code>com.example.app.provider</code> que reconheça as URIs de conteúdo
+    que apontam para tabelas:
+</p>
+<ul>
+    <li>
+        <code>content://com.example.app.provider/table1</code>: Uma tabela chamada <code>table1</code>.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset1</code>: Uma tabela chamada
+        <code>dataset1</code>.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset2</code>: Uma tabela chamada
+        <code>dataset1</code>.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table3</code>: Uma tabela chamada <code>table3</code>.
+    </li>
+</ul>
+<p>
+    O provedor também reconhece essas URIs de conteúdo se elas tiverem um ID de linha anexado, como
+    <code>content://com.example.app.provider/table3/1</code> para a linha identificada por
+    <code>1</code> em <code>table3</code>.
+</p>
+<p>
+    Os seguintes padrões de URI de conteúdo seriam possíveis:
+</p>
+<dl>
+    <dt>
+        <code>content://com.example.app.provider/*</code>
+    </dt>
+    <dd>
+        Corresponde a qualquer URI de conteúdo no provedor.
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table2/*</code>:
+    </dt>
+    <dd>
+        Corresponde a uma URI de conteúdo das tabelas <code>dataset1</code>
+        e <code>dataset2</code>, mas não a URIs de conteúdo de <code>table1</code>
+        nem <code>table3</code>.
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table3/#</code>: Corresponde a uma URI de conteúdo
+        para linhas exclusivas em <code>table3</code>, como
+        <code>content://com.example.app.provider/table3/6</code> da linha identificada por
+        <code>6</code>.
+    </dt>
+</dl>
+<p>
+    O fragmento de código a seguir mostra como funcionam os métodos em {@link android.content.UriMatcher}.
+    Esse código identifica URIs para toda uma tabela, diferentemente das URIs
+    para uma linha exclusiva, usando o padrão de URI de conteúdo
+    <code>content://&lt;authority&gt;/&lt;path&gt;</code> para tabelas e
+    <code>content://&lt;authority&gt;/&lt;path&gt;/&lt;id&gt;</code> para linhas exclusivas.
+</p>
+<p>
+    O método {@link android.content.UriMatcher#addURI(String, String, int) addURI()} mapeia
+    uma autoridade e um caminho como um valor de número inteiro. O método {@link android.content.UriMatcher#match(Uri)
+    match()} retorna o valor de número inteiro para a URI. Uma declaração <code>switch</code>
+    escolhe entre consultar a tabela inteira e consultar um único registro:
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider {
+...
+    // Creates a UriMatcher object.
+    private static final UriMatcher sUriMatcher;
+...
+    /*
+     * The calls to addURI() go here, for all of the content URI patterns that the provider
+     * should recognize. For this snippet, only the calls for table 3 are shown.
+     */
+...
+    /*
+     * Sets the integer value for multiple rows in table 3 to 1. Notice that no wildcard is used
+     * in the path
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3", 1);
+
+    /*
+     * Sets the code for a single row to 2. In this case, the "#" wildcard is
+     * used. "content://com.example.app.provider/table3/3" matches, but
+     * "content://com.example.app.provider/table3 doesn't.
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3/#", 2);
+...
+    // Implements ContentProvider.query()
+    public Cursor query(
+        Uri uri,
+        String[] projection,
+        String selection,
+        String[] selectionArgs,
+        String sortOrder) {
+...
+        /*
+         * Choose the table to query and a sort order based on the code returned for the incoming
+         * URI. Here, too, only the statements for table 3 are shown.
+         */
+        switch (sUriMatcher.match(uri)) {
+
+
+            // If the incoming URI was for all of table3
+            case 1:
+
+                if (TextUtils.isEmpty(sortOrder)) sortOrder = "_ID ASC";
+                break;
+
+            // If the incoming URI was for a single row
+            case 2:
+
+                /*
+                 * Because this URI was for a single row, the _ID value part is
+                 * present. Get the last path segment from the URI; this is the _ID value.
+                 * Then, append the value to the WHERE clause for the query
+                 */
+                selection = selection + "_ID = " uri.getLastPathSegment();
+                break;
+
+            default:
+            ...
+                // If the URI is not recognized, you should do some error handling here.
+        }
+        // call the code to actually do the query
+    }
+</pre>
+<p>
+    Outra classe, {@link android.content.ContentUris}, fornece métodos convenientes para trabalhar
+    com a parte <code>id</code> das URIs de conteúdo. As classes {@link android.net.Uri}
+    e {@link android.net.Uri.Builder} contêm métodos convenientes para analisar objetos
+    {@link android.net.Uri} existentes e criar novos.
+</p>
+
+<!-- Implementing the ContentProvider class -->
+<h2 id="ContentProvider">Implementação da classe ContentProvider</h2>
+<p>
+    A instância {@link android.content.ContentProvider} gerencia o acesso
+    a um conjunto de dados estruturado lidando com solicitações de outros aplicativos. Todas as formas
+    de acesso ocasionalmente chamam {@link android.content.ContentResolver} que, em seguida, chama um método
+    concreto de {@link android.content.ContentProvider} para obter acesso.
+</p>
+<h3 id="RequiredAccess">Métodos obrigatórios</h3>
+<p>
+    A classe abstrata {@link android.content.ContentProvider} define seis métodos abstratos
+    que devem ser implementados como parte das subclasses concretas. Todos esses métodos, exceto
+    {@link android.content.ContentProvider#onCreate() onCreate()}, são chamados por um aplicativo cliente
+    que está tentando acessar seu provedor de conteúdo:
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+        query()}
+    </dt>
+    <dd>
+        Recupere dados do provedor. Use os argumentos para selecionar a tabela
+        para consultar as linhas e colunas a retornar e a ordem de classificação do resultado.
+        Retorne os dados como um objeto {@link android.database.Cursor}.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}
+    </dt>
+    <dd>
+        Insira uma nova linha no provedor. Use os argumentos para selecionar
+        a tabela de destino e obter os valores de coluna a usar. Retorne uma URI de conteúdo para
+        a linha recentemente inserida.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+        update()}
+    </dt>
+    <dd>
+        Atualize as linhas existentes no provedor. Use os argumentos para selecionar a tabela e linhas
+        para atualizar e obter os valores de coluna atualizados. Retorne o número de linhas atualizadas.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+    </dt>
+    <dd>
+        Exclua linhas do provedor. Use os argumentos para selecionar a tabela e as linhas
+        a excluir. Retorne o número de linhas excluídas.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        Retorne o tipo MIME correspondente a uma URI de conteúdo. Esse método é descrito com mais
+        detalhes na seção <a href="#MIMETypes">Implementação de tipos MIME do Provedor de Conteúdo</a>.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#onCreate() onCreate()}
+    </dt>
+    <dd>
+        Inicializar o provedor. O sistema Android chama esse método imediatamente
+        após criar o provedor. Observe que o provedor não é criado até que
+        um objeto {@link android.content.ContentResolver} tente acessá-lo.
+    </dd>
+</dl>
+<p>
+    Observe que esses métodos têm a mesma assinatura dos métodos 
+        {@link android.content.ContentResolver} de mesmo nome.
+</p>
+<p>
+    A implementação desses métodos deve levar em conta o seguinte:
+</p>
+<ul>
+    <li>
+        Todos esses métodos, exceto {@link android.content.ContentProvider#onCreate() onCreate()},
+        podem ser chamados por diversos encadeamentos simultaneamente, então devem ter encadeamento seguro. Para saber
+        mais sobre encadeamentos múltiplos, consulte o tópico
+        <a href="{@docRoot}guide/components/processes-and-threads.html">
+        Processos e encadeamentos</a>.
+    </li>
+    <li>
+        Evite realizar longas operações em {@link android.content.ContentProvider#onCreate()
+        onCreate()}. Adie tarefas de inicialização até que sejam realmente necessárias.
+        A seção <a href="#OnCreate">Implementação do método onCreate()</a>
+        aborda o assunto mais detalhadamente.
+    </li>
+    <li>
+        Embora seja preciso implementar esses métodos, o código não precisa fazer nada além
+        de retornar o tipo de dados esperado. Por exemplo: você pode querer evitar que outros aplicativos
+        insiram dados em algumas tabelas. Para tanto, pode-se ignorar a chamada de
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} e retornar
+        0.
+    </li>
+</ul>
+<h3 id="Query">Implementação do método query()</h3>
+<p>
+    
+    O método {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()} precisa retornar um objeto {@link android.database.Cursor}  ou, se
+    falhar, gerar uma {@link java.lang.Exception}. Se você estiver usando um banco de dados SQLite
+    como armazenamento de dados, pode simplesmente retornar o {@link android.database.Cursor} retornado
+    por um dos métodos <code>query()</code> da classe {@link android.database.sqlite.SQLiteDatabase}.
+    Se a consulta não corresponder a nenhuma linha, deve-se retornar uma instância {@link android.database.Cursor}
+cujo método {@link android.database.Cursor#getCount()} retorne 0.
+    Deve-se retornar <code>null</code> somente se ocorrer um erro interno durante o processo de consulta.
+</p>
+<p>
+    Se você não estiver usando um banco de dados SQLite como modo de armazenamento de dados, use uma das subclasses concretas
+    de {@link android.database.Cursor}. Por exemplo, a classe {@link android.database.MatrixCursor}
+    implementa um cursor em que cada linha é uma matriz de {@link java.lang.Object}. Com essa classe,
+    use {@link android.database.MatrixCursor#addRow(Object[]) addRow()} para adicionar uma nova linha.
+</p>
+<p>
+    Lembre-se de que o sistema Android deve ser capaz de se comunicar com {@link java.lang.Exception}
+    entre limites de processo. O Android pode fazer isso para as exceções a seguir, que podem ser úteis
+    para tratar de erros de consulta:
+</p>
+<ul>
+    <li>
+        {@link java.lang.IllegalArgumentException} (é possível escolher lançar isso se o provedor
+        receber uma URI de conteúdo inválida)
+    </li>
+    <li>
+        {@link java.lang.NullPointerException}
+    </li>
+</ul>
+<h3 id="Insert">Implementação do método insert()</h3>
+<p>
+    O método {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} adiciona
+    uma nova linha à tabela apropriada usando os valores no argumento
+    {@link android.content.ContentValues}. Se um nome de coluna não estiver no argumento {@link android.content.ContentValues},
+    talvez seja necessário fornecer um valor padrão para ele tanto no código do provedor quanto no esquema
+    do banco de dados.
+</p>
+<p>
+    Esse método deve retornar a URI de conteúdo da nova linha. Para construir isso, anexe o valor <code>_ID</code>
+    da nova linha (ou outra chave principal) à URI de conteúdo da tabela usando
+    {@link android.content.ContentUris#withAppendedId(Uri, long) withAppendedId()}.
+</p>
+<h3 id="Delete">Implementação do método delete()</h3>
+<p>
+    O método {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+    não precisa excluir linhas fisicamente do armazenamento de dados. Se você estiver usando um adaptador de sincronização
+    com o provedor, considere marcar uma linha excluída
+    com um sinalizador "excluir" em vez de removê-la totalmente. O adaptador de sincronização pode
+    verificar se há linhas excluídas e removê-las do servidor antes de excluí-las do provedor.
+</p>
+<h3 id="Update">Implementação do método update()</h3>
+<p>
+    O método {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+    update()} usa o mesmo argumento {@link android.content.ContentValues} usado por
+    {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}, e os
+    mesmos argumentos <code>selection</code> e <code>selectionArgs</code> usados por
+    {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} e
+    {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()}. Isso deve permitir a reutilização do código entre esses métodos.
+</p>
+<h3 id="OnCreate">Implementação do método onCreate()</h3>
+<p>
+    O sistema Android chama {@link android.content.ContentProvider#onCreate()
+    onCreate()} quando inicia o provedor. Nesse método, devem-se realizar apenas tarefas de inicialização
+    de execução rápida e adiar a criação do banco de dados e o carregamento dos dados até que o provedor
+    receba efetivamente uma solicitação de acesso aos dados. Se houver tarefas longas
+    em {@link android.content.ContentProvider#onCreate() onCreate()}, a inicialização do provedor
+    ficará lenta. Consequentemente, isso diminuirá a rapidez da resposta do provedor
+    a outros aplicativos.
+</p>
+<p>
+    Por exemplo: se você estiver usando um banco de dados SQLite, é possível criar
+    um novo objeto {@link android.database.sqlite.SQLiteOpenHelper}
+    em {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()}
+    e, em seguida, criar as tabelas SQL na primeira vez em que o banco de dados for aberto. Para facilitar isso,
+    a primeira vez que chamar {@link android.database.sqlite.SQLiteOpenHelper#getWritableDatabase
+    getWritableDatabase()}, ele automaticamente chamará
+    o método {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()}
+</p>
+<p>
+    Os dois fragmentos a seguir demonstram a interação
+    entre {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()}
+    e {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()}. O primeiro fragmento é a implementação de
+    {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()}.
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider
+
+    /*
+     * Defines a handle to the database helper object. The MainDatabaseHelper class is defined
+     * in a following snippet.
+     */
+    private MainDatabaseHelper mOpenHelper;
+
+    // Defines the database name
+    private static final String DBNAME = "mydb";
+
+    // Holds the database object
+    private SQLiteDatabase db;
+
+    public boolean onCreate() {
+
+        /*
+         * Creates a new helper object. This method always returns quickly.
+         * Notice that the database itself isn't created or opened
+         * until SQLiteOpenHelper.getWritableDatabase is called
+         */
+        mOpenHelper = new MainDatabaseHelper(
+            getContext(),        // the application context
+            DBNAME,              // the name of the database)
+            null,                // uses the default SQLite cursor
+            1                    // the version number
+        );
+
+        return true;
+    }
+
+    ...
+
+    // Implements the provider's insert method
+    public Cursor insert(Uri uri, ContentValues values) {
+        // Insert code here to determine which table to open, handle error-checking, and so forth
+
+        ...
+
+        /*
+         * Gets a writeable database. This will trigger its creation if it doesn't already exist.
+         *
+         */
+        db = mOpenHelper.getWritableDatabase();
+    }
+}
+</pre>
+<p>
+    O próximo fragmento é a implementação de
+    {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()}, inclusive uma classe auxiliar:
+</p>
+<pre class="prettyprint">
+...
+// A string that defines the SQL statement for creating a table
+private static final String SQL_CREATE_MAIN = "CREATE TABLE " +
+    "main " +                       // Table's name
+    "(" +                           // The columns in the table
+    " _ID INTEGER PRIMARY KEY, " +
+    " WORD TEXT"
+    " FREQUENCY INTEGER " +
+    " LOCALE TEXT )";
+...
+/**
+ * Helper class that actually creates and manages the provider's underlying data repository.
+ */
+protected static final class MainDatabaseHelper extends SQLiteOpenHelper {
+
+    /*
+     * Instantiates an open helper for the provider's SQLite data repository
+     * Do not do database creation and upgrade here.
+     */
+    MainDatabaseHelper(Context context) {
+        super(context, DBNAME, null, 1);
+    }
+
+    /*
+     * Creates the data repository. This is called when the provider attempts to open the
+     * repository and SQLite reports that it doesn't exist.
+     */
+    public void onCreate(SQLiteDatabase db) {
+
+        // Creates the main table
+        db.execSQL(SQL_CREATE_MAIN);
+    }
+}
+</pre>
+
+
+<!-- Implementing ContentProvider MIME Types -->
+<h2 id="MIMETypes">Implementação de tipos MIME de ContentProvider</h2>
+<p>
+    A classe {@link android.content.ContentProvider} tem dois métodos para retornar tipos MIME:
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        Um dos métodos obrigatórios que devem ser implementados em qualquer provedor.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    </dt>
+    <dd>
+        Um método que deve ser implementado se o provedor fornecer arquivos.
+    </dd>
+</dl>
+<h3 id="TableMIMETypes">Tipos MIME para tabelas</h3>
+<p>
+    O método {@link android.content.ContentProvider#getType(Uri) getType()} retorna
+    uma {@link java.lang.String} em formato MIME que descreve o tipo de dados retornado pelo argumento
+    da URI de conteúdo. O argumento {@link android.net.Uri} pode ser um padrão em vez de uma URI específica;
+    nesse caso, deve-se retornar o tipo de dados associado a URIs de conteúdo que correspondam
+    ao padrão.
+</p>
+<p>
+    Para tipos de dados comuns como texto, HTML ou JPEG,
+    {@link android.content.ContentProvider#getType(Uri) getType()} deve retornar o tipo MIME
+    padrão daqueles dados. Há uma lista completa desse tipos de padrão
+    no site de 
+    <a href="http://www.iana.org/assignments/media-types/index.htm">Tipos de mídia MIME IANA</a>.
+</p>
+<p>
+    Para obter URIs de conteúdo que apontam para uma linha ou linhas de dados de tabela,
+    {@link android.content.ContentProvider#getType(Uri) getType()} deve retornar
+    um tipo MIME no formato MIME específico do fornecedor do Android:
+</p>
+<ul>
+    <li>
+        Parte do tipo: <code>vnd</code>
+    </li>
+    <li>
+        Parte do subtipo:
+        <ul>
+            <li>
+    Se um padrão de URI se destinar a uma única linha: <code>android.cursor.<strong>item</strong>/</code>
+            </li>
+            <li>
+    Se um padrão de URI se destinar a mais de uma linha: <code>android.cursor.<strong>dir</strong>/</code>
+            </li>
+        </ul>
+    </li>
+    <li>
+        Parte específica do provedor: <code>vnd.&lt;name&gt;</code>.<code>&lt;type&gt;</code>
+        <p>
+            Fornecem-se <code>&lt;name&gt;</code> e o <code>&lt;type&gt;</code>.
+            O valor <code>&lt;name&gt;</code> deve ser globalmente exclusivo
+            e o <code>&lt;type&gt;</code> deve ser exclusivo para o padrão de URI
+            correspondente. Uma boa escolha para <code>&lt;name&gt;</code> é o nome da empresa
+            ou alguma parte do nome do pacote do Android do seu aplicativo. Uma boa escolha para
+            <code>&lt;type&gt;</code> é uma string que identifique a tabela associada
+            à URI.
+        </p>
+
+    </li>
+</ul>
+<p>
+    Por exemplo: se a autoridade de um provedor
+    for <code>com.example.app.provider</code> e ele expuser uma tabela chamada
+    <code>table1</code>, o tipo MIME de diversas linhas em <code>table1</code> será:
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.com.example.provider.table1
+</pre>
+<p>
+    Para uma única linha de <code>table1</code>, o tipo MIME será:
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.com.example.provider.table1
+</pre>
+<h3 id="FileMIMETypes">Tipos MIME para arquivos</h3>
+<p>
+    Se o provedor oferecer arquivos, implemente
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}.
+    O método retorna uma matriz {@link java.lang.String} de tipos MIME para os arquivos que o provedor
+    pode retornar de uma dada URI de conteúdo. É preciso filtrar os tipos MIME oferecidos pelo argumento do filtro
+    de tipo MIME para retornar somente os tipos MIME que o cliente quer tratar.
+</p>
+<p>
+    Por exemplo: considere um provedor que ofereça imagens de foto como arquivos em formatos <code>.jpg</code>,
+    <code>.gif</code> e <code>.png</code>.
+    Se um aplicativo chama {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()} com a string de filtro <code>image/*</code> (algo que
+    seja uma "imagem"),
+    o método {@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()} deve retornar a matriz:
+</p>
+<pre>
+{ &quot;image/jpeg&quot;, &quot;image/png&quot;, &quot;image/gif&quot;}
+</pre>
+<p>
+    Se o aplicativo estiver interessado apenas em arquivos <code>.jpg</code>, ele pode chamar
+    {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()} com a string de filtro <code>*\/jpeg</code>
+    e {@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()} deve retornar:
+<pre>
+{&quot;image/jpeg&quot;}
+</pre>
+<p>
+    Se o provedor não oferecer nenhum tipo MIME solicitado na string de filtro,
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    deve retornar <code>null</code>.
+</p>
+
+
+<!--  Implementing a Contract Class -->
+<h2 id="ContractClass">Implementação de uma classe de contrato</h2>
+<p>
+    Uma classe de contrato é uma classe <code>public final</code> que contém definições de constantes para
+    os nomes de coluna das URIs, dos tipos MIME e de outros metadados que pertencem ao provedor. A classe
+    estabelece um contrato entre o provedor e outros aplicativos, garantindo que o provedor
+    possa ser corretamente acessado mesmo se houver mudanças nos valores atuais de URIs, nomes de coluna
+    etc.
+</p>
+<p>
+    As classes de contrato também ajudam os desenvolvedores porque normalmente suas constantes têm nomes mnemônicos e,
+    por isso, os desenvolvedores têm menos chance de usar valores incorretos para nomes de coluna ou URIs. Já que é
+    uma classe, ela pode conter documentação Javadoc. Ambientes de desenvolvimento integrados, como
+    o Eclipse, podem preencher automaticamente os nomes de constantes da classe de contrato e exibir Javadoc para
+    as constantes.
+</p>
+<p>
+    Os desenvolvedores não podem acessar o arquivo de classe da classe de contrato do aplicativo, mas podem
+    compilá-lo estaticamente no aplicativo a partir de um arquivo <code>.jar</code> que você fornece.
+</p>
+<p>
+    A classe {@link android.provider.ContactsContract} e classes aninhadas são exemplos
+    de classes de contrato.
+</p>
+<h2 id="Permissions">Implementação de permissões do Provedor de Conteúdo</h2>
+<p>
+    Permissões e acesso, para todos os aspectos do sistema Android, são descritos detalhadamente no
+    tópico <a href="{@docRoot}guide/topics/security/security.html">Permissões e segurança</a>.
+    O tópico <a href="{@docRoot}guide/topics/data/data-storage.html">Armazenamento de dados</a> também
+    descreve segurança e permissões em vigor para diversos tipos de armazenamento.
+    Em resumo, os pontos importantes são:
+</p>
+<ul>
+    <li>
+        Por padrão, arquivos de dados armazenados no armazenamento interno do dispositivo são privados em relação
+        ao aplicativo e ao provedor.
+    </li>
+    <li>
+        Os bancos de dados {@link android.database.sqlite.SQLiteDatabase} criados são privados em relação
+        ao aplicativo e ao provedor.
+    </li>
+    <li>
+        Por padrão, arquivos de dados salvos em armazenamentos externos são <em>públicos</em>
+        e <em>legíveis para todos</em>. Não é possível usar um provedor de conteúdo para restringir o acesso a arquivos
+        em um armazenamento externo porque outros aplicativos podem usar chamadas de outra API para lê-los e gravar neles.
+    </li>
+    <li>
+        O método que chama a abertura ou criação de arquivos ou bancos de dados SQLite no armazenamento
+        interno do seu dispositivo podem fornecer acesso de leitura e gravação a todos os outros aplicativos. Se você
+        usar um arquivo ou banco de dados interno como o repositório do provedor e conceder-lhe
+        acesso "legível para todos" ou "gravável por todos", as permissões definidas para o provedor
+        no manifesto não protegerão os dados. O acesso padrão de arquivos e bancos de dados
+        no armazenamento interno é "privado" e, para o repositório do provedor, não é recomendável alterar isso.
+    </li>
+</ul>
+<p>
+    Se você deseja usar permissões do provedor de conteúdo para controlar o acesso aos dados, deve
+    armazená-los em arquivos internos, bancos de dados SQLite ou em "nuvem" (por exemplo,
+    em um servidor remoto) e mantê-los privados em relação ao aplicativo.
+</p>
+<h3>Implementação de permissões</h3>
+<p>
+    Todos os aplicativos podem ler ou gravar no provedor, mesmo que os dados em questão
+    sejam privados porque, por padrão, o provedor não tem permissões definidas. Para mudar isso,
+    defina permissões do provedor no arquivo de manifesto por meio de atributos ou elementos
+    filho do elemento <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code>. É possível definir permissões que se apliquem a todo o provedor,
+    a determinadas tabelas, a registros específicos ou a todos os três.
+</p>
+<p>
+    As permissões são definidas para o provedor com um ou mais
+    elementos <code><a href="{@docRoot}guide/topics/manifest/permission-element.html">
+    &lt;permission&gt;</a></code> no arquivo de manifesto. Para tornar
+    a permissão exclusiva para o provedor, use escopo de estilo Java para
+    o atributo <code><a href="{@docRoot}guide/topics/manifest/permission-element.html#nm">
+    android:name</a></code>. Por exemplo: nomeie a permissão de leitura
+    <code>com.example.app.provider.permission.READ_PROVIDER</code>.
+
+</p>
+<p>
+    A lista a seguir descreve o escopo de permissões do provedor, começando
+    com as permissões que se aplicam a todo o provedor e seguindo para as mais específicas.
+    Permissões mais específicas têm precedência sobre as de escopo maior:
+</p>
+<dl>
+    <dt>
+        Única permissão de leitura e gravação no nível do provedor
+    </dt>
+    <dd>
+        Uma permissão que controla os acessos de leitura e gravação a todo o provedor, especificada
+        com o atributo <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code>
+        do elemento <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>.
+    </dd>
+    <dt>
+        Permissões de leitura e gravação separadas no nível do provedor
+    </dt>
+    <dd>
+        Uma permissão de leitura e uma permissão de gravação para todo o provedor. São especificadas
+        com os atributos <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+        android:readPermission</a></code>
+        e <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+        android:writePermission</a></code>
+        do elemento <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>. Elas têm precedência sobre a permissão exigida
+        por <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code>.
+    </dd>
+    <dt>
+        Permissão no nível do caminho
+    </dt>
+    <dd>
+        Permissão de leitura, gravação ou leitura/gravação para uma URI de conteúdo no provedor. Especifica-se
+        cada URI que se deseja controlar
+        com um elemento filho <code><a href="{@docRoot}guide/topics/manifest/path-permission-element.html">
+        &lt;path-permission&gt;</a></code> 
+        do elemento <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>. Para cada URI de conteúdo, pode-se especificar
+        uma permissão de leitura/gravação, uma permissão de leitura, uma permissão de gravação ou as três. As permissões
+        de leitura e gravação têm precedência sobre a permissão de leitura/gravação. Além disso,
+        permissões no nível do caminho têm precedência sobre permissões no nível do provedor.
+    </dd>
+    <dt>
+        Permissão temporária
+    </dt>
+    <dd>
+        Nível de permissão que concede acesso temporário a um aplicativo mesmo que ele
+        não tenha as permissões normalmente exigidas. O recurso de acesso
+        temporário reduz o número de permissões que um aplicativo deve solicitar
+        no manifesto. Ao ativar permissões temporárias, os únicos aplicativos que precisam de
+        permissões "permanentes" para seu provedor são os que têm acesso contínuo
+        a todos os dados.
+        <p>
+            Considere as permissões necessárias para implementar um provedor e um aplicativo de e-mail
+        ao permitir um aplicativo visualizador de imagens externas para exibir anexos de fotos
+        do provedor. Para conceder o acesso necessário ao visualizador de imagens sem as permissões exigidas,
+        configure permissões temporárias das URIs de conteúdo de fotos. Projete o aplicativo de e-mail
+        para que, quando o usuário quiser exibir uma foto, o aplicativo envie uma intenção
+        com a URI de conteúdo da foto e sinalizadores de permissão para o visualizador de imagens. O visualizador de imagens poderá,
+        então, consultar o provedor de e-mail para recuperar a foto mesmo que ele
+        não tenha a permissão normal de leitura para o provedor.
+        </p>
+        <p>
+            Para ativar permissões temporárias, defina
+        o atributo <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code>
+        do elemento <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> ou adicione um ou mais
+        elementos filhos <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code>
+        ao elemento <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>. Se forem usadas permissões temporárias, será necessário chamar
+                    {@link android.content.Context#revokeUriPermission(Uri, int)
+            Context.revokeUriPermission()} sempre que remover suporte a URI de conteúdo do
+            provedor, e a URI de conteúdo será associada a uma permissão temporária.
+        </p>
+        <p>
+            O valor do atributo determina o nível de acessibilidade do provedor.
+            Se o atributo estiver definido como <code>true</code>, o sistema concederá permissão
+            temporária a todo o provedor, sobrepondo todas as outras permissões exigidas
+            pelas permissões no nível do provedor ou no nível do caminho.
+        </p>
+        <p>
+            Se esse sinalizador estiver definido como <code>false</code>, será necessário adicionar
+            elementos filhos <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code>
+            ao elemento <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>. Cada elemento filho especifica a URI ou URIs
+            de conteúdo para as quais o acesso temporário é concedido.
+        </p>
+        <p>
+            Para delegar o acesso temporário a um aplicativo, a intenção deve conter
+            os sinalizadores {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION},
+            {@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION} ou ambos. Eles
+            são definidos com o método {@link android.content.Intent#setFlags(int) setFlags()}.
+        </p>
+        <p>
+            Se o atributo <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> não estiver presente, presume-se que ele seja
+            <code>false</code>.
+        </p>
+    </dd>
+</dl>
+
+
+
+<!-- The Provider Element -->
+<h2 id="ProviderElement">O elemento &lt;provider&gt;</h2>
+<p>
+    Como os componentes {@link android.app.Activity} e {@link android.app.Service},
+            a subclasse de {@link android.content.ContentProvider}
+            deve ser definida no arquivo de manifesto do aplicativo
+            pelo elemento <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code>. O sistema Android obtém as seguintes informações
+            do elemento:
+<dl>
+    <dt>
+        Autoridade
+            (<a href="{@docRoot}guide/topics/manifest/provider-element.html#auth">{@code
+        android:authorities}</a>)
+    </dt>
+    <dd>
+        Nomes simbólicos que identificam todo o provedor dentro do sistema. Esse
+        atributo é descrito com mais detalhes na seção
+        <a href="#ContentURI">Projeto de URIs de conteúdo</a>.
+    </dd>
+    <dt>
+        Nome da classe do provedor
+        (<code>
+<a href="{@docRoot}guide/topics/manifest/provider-element.html#nm">android:name</a>
+        </code>)
+    </dt>
+    <dd>
+        A classe que implementa {@link android.content.ContentProvider}. Esta classe é
+        abordada com mais detalhes na seção
+        <a href="#ContentProvider">Implementação da classe ContentProvider</a>.
+    </dd>
+    <dt>
+        Permissões
+    </dt>
+    <dd>
+        Atributos que especificam as permissões que outros aplicativos precisam ter para acessar
+        os dados do provedor:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+                android:grantUriPermssions</a></code>: Sinalizador de permissão temporária.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+                android:permission</a></code>: Permissão única de leitura/gravação por todo o provedor.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+                android:readPermission</a></code>: Permissão de leitura por todo o provedor.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+                android:writePermission</a></code>: Permissão de gravação por todo o provedor.
+            </li>
+        </ul>
+        <p>
+            As permissões e os atributos correspondentes são abordados com mais
+            detalhes na seção
+            <a href="#Permissions">Implementação de permissões do Provedor de conteúdo</a>.
+        </p>
+    </dd>
+    <dt>
+        Atributos de início e controle
+    </dt>
+    <dd>
+        Esses atributos determinam como e quando o sistema Android inicia o provedor,
+        as características do processo do provedor e outras configurações de tempo de execução:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#enabled">
+                android:enabled</a></code>: sinalizador que permite ao sistema iniciar o provedor.
+            </li>
+              <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#exported">
+                android:exported</a></code>: sinalizador que permite a outros aplicativos usarem esse provedor.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#init">
+                android:initOrder</a></code>: a ordem em que esse provedor deve ser iniciado,
+                relativa a outros provedores no mesmo processo.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#multi">
+                android:multiProcess</a></code>: sinalizador que permite ao sistema iniciar o provedor
+                no mesmo processo que o cliente chama.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#proc">
+                android:process</a></code>: o nome do processo em que o provedor deve
+                ser executado.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#sync">
+                android:syncable</a></code>: sinalizador que indica que os dados do provedor devem ser
+                sincronizados com os dados em um servidor.
+            </li>
+        </ul>
+        <p>
+            os atributos estão totalmente documentados no tópico do guia de desenvolvimento
+            do elemento
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>.
+        </p>
+    </dd>
+    <dt>
+        Atributos informacionais
+    </dt>
+    <dd>
+        Um ícone e um rótulo opcionais para o provedor:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#icon">
+                android:icon</a></code>: um recurso desenhável contendo um ícone para o provedor.
+                O ícone aparece próximo ao rótulo do provedor na lista de aplicativos
+                em <em>Configurações</em> &gt; <em>Aplicativos</em> &gt; <em>Todos</em>.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#label">
+                android:label</a></code>: um rótulo informacional que descreve o provedor,
+                seus dados ou ambos. O rótulo aparece na lista de aplicativos
+                em <em>Configurações</em> &gt; <em>Aplicativos</em> &gt; <em>Todos</em>.
+            </li>
+        </ul>
+        <p>
+            Os atributos estão totalmente documentados no tópico do guia de desenvolvimento
+            do elemento <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>.
+        </p>
+    </dd>
+</dl>
+
+<!-- Intent Access -->
+<h2 id="Intents">Intenções e acesso a dados</h2>
+<p>
+    Os aplicativos podem acessar um provedor de conteúdo indiretamente com uma {@link android.content.Intent}.
+    O aplicativo não chama nenhum método de {@link android.content.ContentResolver}
+    nem de {@link android.content.ContentProvider}. Em vez disso, ele envia uma intenção que inicia uma atividade,
+    que, em geral, é parte do aplicativo do próprio provedor. A atividade de destino é responsável
+    pela recuperação e exibição dos dados na IU. Conforme a ação na intenção,
+    a atividade de destino também pode levar o usuário a realizar modificações nos dados do provedor.
+    Uma intenção também pode conter dados "extras" que a atividade de destino exibe
+    na IU; o usuário terá, então, a opção de alterar esses dados antes de usá-los para modificar
+    os dados no provedor.
+</p>
+<p>
+
+</p>
+<p>
+    Pode ser necessário usar acesso de intenções para ajudar a garantir a integridade deles. O provedor pode depender
+    de ter dados inseridos, atualizados e excluídos de acordo com a lógica de negócio rigorosamente definida. Se
+    for o caso, a permissão para que outros aplicativos modifiquem os dados diretamente pode levar
+    à invalidação dos dados. Se você deseja que os desenvolvedores usem o acesso via intenções, certifique-se de documentá-lo minuciosamente.
+    Explique por que o acesso via intenções pela IU do aplicativo é melhor do que tentar
+    modificar os dados com códigos.
+</p>
+<p>
+    O tratamento das intenções recebidas com a intenção de modificar os dados do provedor não é diferente
+    de tratar de outras intenções. Para saber mais sobre o uso de intenções, leia o tópico
+    <a href="{@docRoot}guide/components/intents-filters.html">Intenções e filtros de intenções</a>.
+</p>
diff --git a/docs/html-intl/intl/pt-br/guide/topics/providers/content-providers.jd b/docs/html-intl/intl/pt-br/guide/topics/providers/content-providers.jd
new file mode 100644
index 0000000..c9574f6
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/providers/content-providers.jd
@@ -0,0 +1,108 @@
+page.title=Provedores de conteúdo
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<!-- In this document -->
+<h2>Tópicos</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Preceitos do provedor de conteúdo        </a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+            Criação de um Provedor de conteúdo</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/calendar-provider.html">Provedor de agenda</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/contacts-provider.html">Provedor de contatos</a>
+    </li>
+</ol>
+
+    <!-- Related Samples -->
+<h2>Exemplos relacionados</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/ContactManager/index.html">
+            Aplicativo Gerenciador de contatos</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        "Cursor (pessoas)"
+</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        "Cursor (telefones)"</a>
+        </li>
+        <li>
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+        Exemplo de adaptador de sincronização</a>
+        </li>
+    </ol>
+</div>
+</div>
+<p>
+    Provedores de conteúdo gerenciam o acesso a um conjunto estruturado de dados. Eles encapsulam os
+dados e fornecem mecanismos para definir a segurança dos dados. Provedores de conteúdo são a interface
+ padrão que conecta dados em um processo com código em execução em outro processo.
+</p>
+<p>
+    Quando desejar acessar dados em um provedor de conteúdo, você usa o 
+    objeto {@link android.content.ContentResolver} no 
+    {@link android.content.Context} do aplicativo para se comunicar com o provedor como cliente.
+    O objeto {@link android.content.ContentResolver} se comunica com o objeto provedor, uma
+    instância de uma classe que implementa {@link android.content.ContentProvider}. O objeto
+    provedor recebe solicitações de dados de clientes, realiza a ação solicitada e 
+    devolve os resultados.
+</p>
+<p>
+    Não é preciso desenvolver o próprio provedor se você não pretende compartilhar seus dados com
+    outros aplicativos. No entanto, precisará do próprio provedor para fornecer sugestões de pesquisa
+    personalizada em seu aplicativo. Também precisará do próprio provedor se quiser copiar e colar
+    dados complexos ou arquivos de seu aplicativo em outros aplicativos.
+</p>
+<p>
+    O Android propriamente dito inclui provedores de conteúdo que gerenciam dados como áudio, vídeo, imagens e
+    informações de contato pessoais. Alguns deles estão listados na documentação de 
+    referência do 
+    pacote <code><a href="{@docRoot}reference/android/provider/package-summary.html">android.provider</a>
+    </code>. Com algumas restrições, esses provedores podem ser acessados por qualquer aplicativo 
+    Android.
+</p><p>
+    Os tópicos a seguir descrevem provedores de conteúdo em mais detalhes:
+</p>
+<dl>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Preceitos do provedor de conteúdo</a></strong>
+    </dt>
+    <dd>
+        Como acessar dados em um provedor de conteúdo quando os dados estão organizados em tabelas.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+Criação de um Provedor de conteúdo</a></strong>
+    </dt>
+    <dd>
+        Como criar o próprio provedor de conteúdo.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+Provedor de agenda</a></strong>
+    </dt>
+    <dd>
+        Como acessar o Provedor de agenda que é parte da plataforma Android.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/contacts-provider.html">
+Provedor de contatos</a></strong>
+    </dt>
+    <dd>
+        Como acessar o Provedor de contatos que é parte da plataforma Android.
+    </dd>
+</dl>
diff --git a/docs/html-intl/intl/pt-br/guide/topics/providers/document-provider.jd b/docs/html-intl/intl/pt-br/guide/topics/providers/document-provider.jd
new file mode 100644
index 0000000..25aab7a
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/providers/document-provider.jd
@@ -0,0 +1,916 @@
+page.title=Estrutura de acesso ao armazenamento
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Neste documento
+ <a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
+        <span class="more">mostrar mais</span>
+        <span class="less" style="display:none">mostrar menos</span></a></h2>
+<ol id="toc44" class="hide-nested">
+    <li>
+        <a href="#overview">Visão geral</a>
+    </li>
+    <li>
+        <a href="#flow">Controlar fluxo</a>
+    </li>
+    <li>
+        <a href="#client">Programação de um aplicativo cliente</a>
+        <ol>
+        <li><a href="#search">Busca de documentos</a></li>
+        <li><a href="#process">Processamento de resultados</a></li>
+        <li><a href="#metadata">Examinação de metadados de documentos</a></li>
+        <li><a href="#open">Abertura de um documento</a></li>
+        <li><a href="#create">Criação de um novo documento</a></li>
+        <li><a href="#delete">Exclusão de um documento</a></li>
+        <li><a href="#edit">Edição de um documento</a></li>
+        <li><a href="#permissions">Manutenção de permissões</a></li>
+        </ol>
+    </li>
+    <li><a href="#custom">Criação de um provedor de documentos personalizado</a>
+        <ol>
+        <li><a href="#manifest">Manifesto</a></li>
+        <li><a href="#contract">Contratos</a></li>
+        <li><a href="#subclass">Subclasse DocumentsProvider</a></li>
+        <li><a href="#security">Segurança</a></li>
+        </ol>
+    </li>
+
+</ol>
+<h2>Classes principais</h2>
+<ol>
+    <li>{@link android.provider.DocumentsProvider}</li>
+    <li>{@link android.provider.DocumentsContract}</li>
+</ol>
+
+<h2>Vídeos</h2>
+
+<ol>
+    <li><a href="http://www.youtube.com/watch?v=zxHVeXbK1P4">
+DevBytes: estrutura de acesso ao armazenamento do Android 4.4: Provedor</a></li>
+     <li><a href="http://www.youtube.com/watch?v=UFj9AEz0DHQ">
+DevBytes: estrutura de acesso ao armazenamento do Android 4.4: Cliente</a></li>
+</ol>
+
+
+<h2>Amostras de código</h2>
+
+<ol>
+    <li><a href="{@docRoot}samples/StorageProvider/index.html">
+Provedor de armazenamento</a></li>
+     <li><a href="{@docRoot}samples/StorageClient/index.html">
+StorageClient</a></li>
+</ol>
+
+<h2>Veja também</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Preceitos do provedor de conteúdo
+        </a>
+    </li>
+</ol>
+
+</div>
+</div>
+
+
+<p>O Android 4.4 (API de nível 19) introduz a Estrutura de Acesso ao Armazenamento (SAF). A SAF
+ simplifica para os usuários a busca e abertura de documentos, imagens e outros arquivos
+dentre todos os provedores de armazenamento de documentos de preferência. A interface gráfica padrão é fácil de usar
+e permite aos usuários buscar arquivos e acessar arquivos recentes de modo coerente em todos os aplicativos e provedores.</p>
+
+<p>Serviços de armazenamento local ou em nuvem podem participar desse ecossistema por meio da implementação
+de um {@link android.provider.DocumentsProvider} que encapsula os serviços. Aplicativos
+clientes que precisam acessar documentos de um provedor podem integrar-se com a SAF com apenas algumas
+linhas de código.</p>
+
+<p>A SAF contém:</p>
+
+<ul>
+<li><strong>Provedor de documentos</strong> &mdash; Provedor de conteúdo que oferece
+um serviço de armazenamento (como o Google Drive) para exibir os arquivos que gerencia. O provedor de documentos
+é implementado como uma subclasse da classe {@link android.provider.DocumentsProvider}.
+O esquema do provedor de documento se baseia em uma hierarquia de arquivo tradicional,
+embora o modo de armazenamento físico de dados do provedor de documentos seja definido pelo programador.
+A plataforma do Android contém diversos provedores de documento embutidos, como
+Downloads, Imagens e Vídeos.</li>
+
+<li><strong>Aplicativo cliente</strong> &mdash; Aplicativo personalizado que chama a intenção
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+e/ou {@link android.content.Intent#ACTION_CREATE_DOCUMENT} e recebe
+os arquivos retornados pelos provedores de documentos.</li>
+
+<li><strong>Seletor</strong> &mdash; IU de sistema que permite aos usuários acessar documentos de todos
+os provedores de documentos que satisfazem os critérios de busca do aplicativo cliente.</li>
+</ul>
+
+<p>A seguir há alguns recursos oferecidos pela SAF:</p>
+<ul>
+<li>Permitir que usuários busquem conteúdo de todos os provedores de documentos, não somente de um único aplicativo.</li>
+<li>Possibilitar ao aplicativo a obtenção de acesso persistente e de longo prazo
+a documentos de propriedade de um provedor de documentos. Por meio deste acesso, os usuários podem adicionar, editar,
+ salvar e excluir arquivos no provedor.</li>
+<li>É compatível com diversas contas de usuário e raízes transitórias como provedores
+de armazenamento USB, que só aparecem se o dispositivo estiver plugado. </li>
+</ul>
+
+<h2 id ="overview">Visão geral</h2>
+
+<p>A SAF consiste em um provedor de conteúdo que é uma
+subclasse da classe {@link android.provider.DocumentsProvider}. Dentro de um <em>provedor de documentos</em>, os dados
+são estruturados como uma hierarquia de arquivo tradicional:</p>
+<p><img src="{@docRoot}images/providers/storage_datamodel.png" alt="data model" /></p>
+<p class="img-caption"><strong>Figura 1.</strong> Modelo de dados do provedor de documentos Uma Raiz aponta para um único Documento,
+que então inicia o fan-out de toda a árvore.</p>
+
+<p>Observe o seguinte:</p>
+<ul>
+
+<li>Cada provedor de documentos relata uma ou mais
+"raízes", que são pontos de partida na exploração de uma árvore de documentos.
+Cada raiz tem um {@link android.provider.DocumentsContract.Root#COLUMN_ROOT_ID} exclusivo
+e ele aponta para um documento (um diretório)
+representando o conteúdo sob essa raiz.
+As raízes têm um projeto dinâmico para oferecer compatibilidade a casos de uso como diversas contas,
+dispositivos de armazenamento USB transitórios ou login/logout do usuário.</li>
+
+<li>Sob cada raiz há um documento único. Esse documento indica 1 a <em>N</em> documentos,
+cada um deles, por sua vez, podem indicar 1 a <em>N</em> documentos. </li>
+
+<li>Cada back-end de armazenamento apresenta
+arquivos e diretórios individuais referenciando-os com um 
+{@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} exclusivo.
+IDs de documentos devem ser exclusivos e não podem mudar depois de emitidos, pois são usados para concessões persistentes
+da URI em reinicializações do dispositivo.</li>
+
+
+<li>Documentos podem ser um arquivo ou um diretório que pode ser aberto (com um tipo MIME específico)
+ contendo documentos adicionais (com
+o tipo MIME{@link android.provider.DocumentsContract.Document#MIME_TYPE_DIR}).</li>
+
+<li>Cada documento tem diferentes recursos, como descrito por
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS COLUMN_FLAGS}.
+Por exemplo,{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_WRITE},
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE}
+e {@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_THUMBNAIL}.
+O mesmo {@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} pode ser
+incluído em diversos diretórios.</li>
+</ul>
+
+<h2 id="flow">Controle de fluxo</h2>
+<p>Como indicado anteriormente, o modelo de dados do provedor de documentos se baseia
+em uma hierarquia de arquivo tradicional. Contudo, é possível armazenar os dados fisicamente como quiser desde
+que eles possam ser acessados pela API {@link android.provider.DocumentsProvider}. Por exemplo: seria
+possível usar armazenamento em nuvem com base em tag para os dados.</p>
+
+<p>A figura 2 ilustra um exemplo de um aplicativo de foto que usa a SAF
+para acessar dados armazenados:</p>
+<p><img src="{@docRoot}images/providers/storage_dataflow.png" alt="app" /></p>
+
+<p class="img-caption"><strong>Figura 2.</strong> Fluxo da estrutura de acesso ao armazenamento</p>
+
+<p>Observe o seguinte:</p>
+<ul>
+
+<li>Na SAF, provedores e clientes não interagem
+diretamente. O cliente solicita permissão para interagir
+com arquivos (ou seja, para ler, editar, criar ou excluir arquivos).</li>
+
+<li>A interação começa quando um aplicativo (neste exemplo, um aplicativo de foto) dispara a intenção
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} ou {@link android.content.Intent#ACTION_CREATE_DOCUMENT}. A intenção pode conter filtros
+para refinar ainda mais os critérios &mdash; por exemplo: "quero todos os arquivos que podem ser abertos
+e que tenham o tipo MIME de tal imagem".</li>
+
+<li>Ao disparar a intenção, o seletor do sistema contata cada provedor registrado
+e exibe as raízes de conteúdo correspondentes ao usuário.</li>
+
+<li>O seletor fornece aos usuários uma interface padrão para acessar documentos,
+embora os provedores de documentos subjacentes possam ser bem diferentes. Por exemplo: a figura 2
+exibe um provedor do Google Drive, um provedor USB e um provedor de nuvem.</li>
+</ul>
+
+<p>A figura 3 exibe um seletor em que um usuário em busca de imagens selecionou
+uma conta do Google Drive:</p>
+
+<p><img src="{@docRoot}images/providers/storage_picker.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>Figura 3.</strong> Seletor</p>
+
+<p>Quando o usuário seleciona o Google Drive, as imagens são exibidas como ilustrado
+na figura 4. Desse momento em diante, o usuário poderá interagir com eles de todos os modos
+compatíveis com o provedor e o aplicativo cliente.
+
+<p><img src="{@docRoot}images/providers/storage_photos.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>Figura 4.</strong> Imagens</p>
+
+<h2 id="client">Programação de um aplicativo cliente</h2>
+
+<p>No Android 4.3 e em versões anteriores, para o aplicativo recuperar um arquivo de outro
+aplicativo, ele precisa chamar uma intenção como {@link android.content.Intent#ACTION_PICK}
+ou {@link android.content.Intent#ACTION_GET_CONTENT}. Em seguida, o usuário deve selecionar
+um único aplicativo do qual deseja retirar um arquivo e o aplicativo selecionado deve fornecer uma interface
+do usuário para a busca e a seleção dos arquivos disponíveis. </p>
+
+<p>No Android 4.4 e em versões posteriores, existe a opção adicional de usar
+a intenção {@link android.content.Intent#ACTION_OPEN_DOCUMENT},
+que exibe uma IU do seletor controlada pelo sistema que permite ao usuário
+buscar todos os arquivos que outros aplicativos disponibilizaram. Nessa IU exclusiva,
+o usuário pode selecionar um arquivo de qualquer aplicativo compatível.</p>
+
+<p>{@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+não substitui {@link android.content.Intent#ACTION_GET_CONTENT}.
+O uso de cada um deles depende da necessidade do aplicativo:</p>
+
+<ul>
+<li>Use {@link android.content.Intent#ACTION_GET_CONTENT} se deseja que o aplicativo
+simplesmente leia ou importe dados. Nessa abordagem, o aplicativo importa uma cópia dos dados,
+assim como um arquivo de imagem.</li>
+
+<li>Use {@link android.content.Intent#ACTION_OPEN_DOCUMENT} se deseja que o aplicativo
+tenha acesso persistente e de longo prazo a documentos de propriedade de um provedor
+de documentos. Um exemplo seria um aplicativo de edição de fotos que permite aos usuários editar
+imagens armazenadas em um provedor de documentos. </li>
+
+</ul>
+
+
+<p>Esta seção descreve como programar aplicativos clientes com base nas intenções 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+e {@link android.content.Intent#ACTION_CREATE_DOCUMENT}.</p>
+
+
+<h3 id="search">Busca de documentos</h3>
+
+<p>
+O fragmento a seguir usa {@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+para buscar provedores de documentos
+que contenham arquivos de imagem:</p>
+
+<pre>private static final int READ_REQUEST_CODE = 42;
+...
+/**
+ * Fires an intent to spin up the &quot;file chooser&quot; UI and select an image.
+ */
+public void performFileSearch() {
+
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's file
+    // browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones)
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only images, using the image MIME data type.
+    // If one wanted to search for ogg vorbis files, the type would be &quot;audio/ogg&quot;.
+    // To search for all documents available via installed storage providers,
+    // it would be &quot;*/*&quot;.
+    intent.setType(&quot;image/*&quot;);
+
+    startActivityForResult(intent, READ_REQUEST_CODE);
+}</pre>
+
+<p>Observe o seguinte:</p>
+<ul>
+<li>Quando o aplicativo dispara a intenção
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT}, ele aciona um seletor que exibe todos os provedores de documentos compatíveis.</li>
+
+<li>A adição da categoria {@link android.content.Intent#CATEGORY_OPENABLE}
+à intenção filtra os resultados, que exibem somente documentos que podem ser abertos, como os arquivos de imagem.</li>
+
+<li>A declaração {@code intent.setType("image/*")} filtra ainda mais
+para exibir somente documentos que têm o tipo de dados MIME da imagem.</li>
+</ul>
+
+<h3 id="results">Processamento de resultados</h3>
+
+<p>Quando o usuário seleciona um documento no seletor,
+{@link android.app.Activity#onActivityResult onActivityResult()} é chamado.
+A URI direcionada ao documento selecionado está presente no parâmetro
+{@code resultData}. Extraia a URI usando {@link android.content.Intent#getData getData()}.
+Depois, será possível usá-la para recuperar o documento que o usuário deseja. Por
+exemplo:</p>
+
+<pre>&#64;Override
+public void onActivityResult(int requestCode, int resultCode,
+        Intent resultData) {
+
+    // The ACTION_OPEN_DOCUMENT intent was sent with the request code
+    // READ_REQUEST_CODE. If the request code seen here doesn't match, it's the
+    // response to some other intent, and the code below shouldn't run at all.
+
+    if (requestCode == READ_REQUEST_CODE && resultCode == Activity.RESULT_OK) {
+        // The document selected by the user won't be returned in the intent.
+        // Instead, a URI to that document will be contained in the return intent
+        // provided to this method as a parameter.
+        // Pull that URI using resultData.getData().
+        Uri uri = null;
+        if (resultData != null) {
+            uri = resultData.getData();
+            Log.i(TAG, "Uri: " + uri.toString());
+            showImage(uri);
+        }
+    }
+}
+</pre>
+
+<h3 id="metadata">Examinação de metadados de documentos</h3>
+
+<p>Quando tiver a URI de um documento, você terá acesso aos seus metadados. Este
+fragmento apanha os metadados de um documento especificado pela URI e registra-os:</p>
+
+<pre>public void dumpImageMetaData(Uri uri) {
+
+    // The query, since it only applies to a single document, will only return
+    // one row. There's no need to filter, sort, or select fields, since we want
+    // all fields for one document.
+    Cursor cursor = getActivity().getContentResolver()
+            .query(uri, null, null, null, null, null);
+
+    try {
+    // moveToFirst() returns false if the cursor has 0 rows.  Very handy for
+    // &quot;if there's anything to look at, look at it&quot; conditionals.
+        if (cursor != null &amp;&amp; cursor.moveToFirst()) {
+
+            // Note it's called &quot;Display Name&quot;.  This is
+            // provider-specific, and might not necessarily be the file name.
+            String displayName = cursor.getString(
+                    cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
+            Log.i(TAG, &quot;Display Name: &quot; + displayName);
+
+            int sizeIndex = cursor.getColumnIndex(OpenableColumns.SIZE);
+            // If the size is unknown, the value stored is null.  But since an
+            // int can't be null in Java, the behavior is implementation-specific,
+            // which is just a fancy term for &quot;unpredictable&quot;.  So as
+            // a rule, check if it's null before assigning to an int.  This will
+            // happen often:  The storage API allows for remote files, whose
+            // size might not be locally known.
+            String size = null;
+            if (!cursor.isNull(sizeIndex)) {
+                // Technically the column stores an int, but cursor.getString()
+                // will do the conversion automatically.
+                size = cursor.getString(sizeIndex);
+            } else {
+                size = &quot;Unknown&quot;;
+            }
+            Log.i(TAG, &quot;Size: &quot; + size);
+        }
+    } finally {
+        cursor.close();
+    }
+}
+</pre>
+
+<h3 id="open-client">Abertura de um documento</h3>
+
+<p>Assim que tiver a URI de um documento, você poderá abri-lo ou fazer o que
+quiser com ele.</p>
+
+<h4>Bitmap</h4>
+
+<p>A seguir há um exemplo de como abrir um {@link android.graphics.Bitmap}:</p>
+
+<pre>private Bitmap getBitmapFromUri(Uri uri) throws IOException {
+    ParcelFileDescriptor parcelFileDescriptor =
+            getContentResolver().openFileDescriptor(uri, "r");
+    FileDescriptor fileDescriptor = parcelFileDescriptor.getFileDescriptor();
+    Bitmap image = BitmapFactory.decodeFileDescriptor(fileDescriptor);
+    parcelFileDescriptor.close();
+    return image;
+}
+</pre>
+
+<p>Observe que não se deve realizar essa operação no encadeamento da IU. Faça isso
+em segundo plano usando {@link android.os.AsyncTask}. Assim que abrir o bitmap, você
+poderá exibi-lo em uma {@link android.widget.ImageView}.
+</p>
+
+<h4>Obter uma InputStream</h4>
+
+<p>Abaixo há um exemplo de como obter uma {@link java.io.InputStream} dessa URI.
+Neste fragmento, as linhas do arquivo estão sendo lidas em uma string:</p>
+
+<pre>private String readTextFromUri(Uri uri) throws IOException {
+    InputStream inputStream = getContentResolver().openInputStream(uri);
+    BufferedReader reader = new BufferedReader(new InputStreamReader(
+            inputStream));
+    StringBuilder stringBuilder = new StringBuilder();
+    String line;
+    while ((line = reader.readLine()) != null) {
+        stringBuilder.append(line);
+    }
+    fileInputStream.close();
+    parcelFileDescriptor.close();
+    return stringBuilder.toString();
+}
+</pre>
+
+<h3 id="create">Criação de um novo documento</h3>
+
+<p>O aplicativo pode criar um novo documento em um provedor de documentos usando
+a intenção
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT}. Para criar um arquivo, deve-se fornecer um tipo MIME e um nome para o arquivo à intenção
+e ativá-la com um código de solicitação exclusivo. O resto você não precisa fazer:</p>
+
+
+<pre>
+// Here are some examples of how you might call this method.
+// The first parameter is the MIME type, and the second parameter is the name
+// of the file you are creating:
+//
+// createFile("text/plain", "foobar.txt");
+// createFile("image/png", "mypicture.png");
+
+// Unique request code.
+private static final int WRITE_REQUEST_CODE = 43;
+...
+private void createFile(String mimeType, String fileName) {
+    Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as
+    // a file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Create a file with the requested MIME type.
+    intent.setType(mimeType);
+    intent.putExtra(Intent.EXTRA_TITLE, fileName);
+    startActivityForResult(intent, WRITE_REQUEST_CODE);
+}
+</pre>
+
+<p>Ao criar um novo documento, é possível obter sua URI
+em {@link android.app.Activity#onActivityResult onActivityResult()} para que
+seja possível continuar a gravar nele.</p>
+
+<h3 id="delete">Exclusão de um documento</h3>
+
+<p>Se você tem uma URI de um documento
+e os {@link android.provider.DocumentsContract.Document#COLUMN_FLAGS Document.COLUMN_FLAGS} do documento
+ contêm
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE SUPPORTS_DELETE},
+você pode excluir o documento. Por exemplo:</p>
+
+<pre>
+DocumentsContract.deleteDocument(getContentResolver(), uri);
+</pre>
+
+<h3 id="edit">Edição de um documento</h3>
+
+<p>Você pode usar a SAF para editar o documento de texto no local em que está armazenado.
+Esse fragmento dispara
+a intenção {@link android.content.Intent#ACTION_OPEN_DOCUMENT} e usa
+a categoria {@link android.content.Intent#CATEGORY_OPENABLE} para exibir somente
+documentos que possam ser abertos. Ela filtra ainda mais para exibir somente arquivos de texto:</p>
+
+<pre>
+private static final int EDIT_REQUEST_CODE = 44;
+/**
+ * Open a file for writing and append some text to it.
+ */
+ private void editDocument() {
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's
+    // file browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only text files.
+    intent.setType(&quot;text/plain&quot;);
+
+    startActivityForResult(intent, EDIT_REQUEST_CODE);
+}
+</pre>
+
+<p>Em seguida, de {@link android.app.Activity#onActivityResult onActivityResult()}
+(consulte <a href="#results">Processar resultados</a>), você pode chamar o código para realizar a edição.
+O fragmento a seguir obtém um {@link java.io.FileOutputStream}
+do {@link android.content.ContentResolver}. Por padrão, ele usa o modo de "gravação".
+Recomenda-se solicitar a menor quantidade de acesso necessária, portanto não solicite
+acesso de leitura e programação se só for necessária a programação:</p>
+
+<pre>private void alterDocument(Uri uri) {
+    try {
+        ParcelFileDescriptor pfd = getActivity().getContentResolver().
+                openFileDescriptor(uri, "w");
+        FileOutputStream fileOutputStream =
+                new FileOutputStream(pfd.getFileDescriptor());
+        fileOutputStream.write(("Overwritten by MyCloud at " +
+                System.currentTimeMillis() + "\n").getBytes());
+        // Let the document provider know you're done by closing the stream.
+        fileOutputStream.close();
+        pfd.close();
+    } catch (FileNotFoundException e) {
+        e.printStackTrace();
+    } catch (IOException e) {
+        e.printStackTrace();
+    }
+}</pre>
+
+<h3 id="permissions">Manutenção de permissões</h3>
+
+<p>Quando o aplicativo abre um arquivo para leitura ou programação, o sistema lhe fornece
+uma concessão da permissão da URI para tal arquivo. Ela vigora até a reinicialização do dispositivo do usuário.
+Contudo, suponhamos que seu aplicativo seja de edição de imagens e você queira que os usuários
+acessem as últimas 5 imagens que editaram diretamente do aplicativo. Se o dispositivo do usuário
+reiniciou, você teria que enviar o usuário de volta ao seletor do sistema para encontrar
+os arquivos, o que, obviamente, não é o ideal.</p>
+
+<p>Para evitar que isso aconteça, você pode manter as permissões que o sistema
+forneceu ao aplicativo. Efetivamente, o aplicativo "toma" a concessão de permissão da URI persistente
+que o sistema está oferecendo. Isso concede ao usuário um acesso contínuo aos arquivos 
+por meio do aplicativo mesmo se o dispositivo for reiniciado:</p>
+
+
+<pre>final int takeFlags = intent.getFlags()
+            &amp; (Intent.FLAG_GRANT_READ_URI_PERMISSION
+            | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
+// Check for the freshest data.
+getContentResolver().takePersistableUriPermission(uri, takeFlags);</pre>
+
+<p>Há uma etapa final. Você pode ter salvo as URIs
+mais recentes acessadas pelo seu aplicativo, mas elas não serão mais válidas &mdash; outro aplicativo
+pode ter excluído ou modificado um documento. Portanto, deve-se sempre chamar
+{@code getContentResolver().takePersistableUriPermission()} para verificar
+se há dados mais recentes.</p>
+
+<h2 id="custom">Criação de um provedor de documentos personalizado</h2>
+
+<p>
+Se você está desenvolvimento um aplicativo que fornece serviços de armazenamento para arquivos (como
+um serviço de armazenamento em nuvem), é possível disponibilizar os arquivos
+pela SAF criando um provedor de documentos personalizado.  Esta seção mostra
+como fazê-lo.</p>
+
+
+<h3 id="manifest">Manifesto</h3>
+
+<p>Para implementar um provedor de documentos personalizado, adicione ao manifesto
+do aplicativo:</p>
+<ul>
+
+<li>Um alvo de API de nível 19 ou posterior.</li>
+
+<li>Um elemento <code>&lt;provider&gt;</code> que declare o provedor de armazenamento
+personalizado. </li>
+
+<li>O nome do provedor, que é o nome da classe, inclusive o nome do pacote.
+Por exemplo: <code>com.example.android.storageprovider.MyCloudProvider</code>.</li>
+
+<li>O nome da autoridade, que é o nome do pacote (neste exemplo,
+<code>com.example.android.storageprovider</code>) e o tipo de provedor de conteúdo
+(<code>documents</code>). Por exemplo: {@code com.example.android.storageprovider.documents}.</li>
+
+<li>O atributo <code>android:exported</code> definido como <code>&quot;true&quot;</code>.
+É necessário exportar o provedor para que outros aplicativos possam vê-lo.</li>
+
+<li>O atributo <code>android:grantUriPermissions</code> definido como
+<code>&quot;true&quot;</code>. Essa configuração permite ao sistema conceder acesso ao conteúdo
+no provedor a outros aplicativos. Para ver como manter uma concessão
+para determinado documento, consulte <a href="#permissions">Manutenção de permissões</a>.</li>
+
+<li>A permissão {@code MANAGE_DOCUMENTS}. Por padrão, um provedor está disponível
+para todos. A adição dessa permissão restringirá o provedor em relação ao sistema.
+Essa restrição é importante em termos de segurança.</li>
+
+<li>O atributo {@code android:enabled} definido como um valor booleano determinado em um arquivo
+de recursos. Esse atributo visa desativar o provedor em dispositivos que executam o Android 4.3 ou versões anteriores.
+Por exemplo: {@code android:enabled="@bool/atLeastKitKat"}. Além
+disso, para incluir esse atributo no manifesto, deve-se fazer o seguinte:
+<ul>
+<li>No arquivo de recursos {@code bool.xml} em {@code res/values/}, adicione
+esta linha: <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>No arquivo de recursos {@code bool.xml} em {@code res/values-v19/}, adicione
+esta linha: <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;true&lt;/bool&gt;</pre></li>
+</ul></li>
+
+<li>Um filtro de intenções que contenha
+a ação {@code android.content.action.DOCUMENTS_PROVIDER} para que o provedor
+apareça no seletor quando o sistema procurar provedores.</li>
+
+</ul>
+<p>Abaixo há alguns excertos de amostra de um manifesto que contém um provedor:</p>
+
+<pre>&lt;manifest... &gt;
+    ...
+    &lt;uses-sdk
+        android:minSdkVersion=&quot;19&quot;
+        android:targetSdkVersion=&quot;19&quot; /&gt;
+        ....
+        &lt;provider
+            android:name=&quot;com.example.android.storageprovider.MyCloudProvider&quot;
+            android:authorities=&quot;com.example.android.storageprovider.documents&quot;
+            android:grantUriPermissions=&quot;true&quot;
+            android:exported=&quot;true&quot;
+            android:permission=&quot;android.permission.MANAGE_DOCUMENTS&quot;
+            android:enabled=&quot;&#64;bool/atLeastKitKat&quot;&gt;
+            &lt;intent-filter&gt;
+                &lt;action android:name=&quot;android.content.action.DOCUMENTS_PROVIDER&quot; /&gt;
+            &lt;/intent-filter&gt;
+        &lt;/provider&gt;
+    &lt;/application&gt;
+
+&lt;/manifest&gt;</pre>
+
+<h4 id="43">Compatibilidade com dispositivos que executam Android 4.3 ou anterior</h4>
+
+<p>
+A intenção {@link android.content.Intent#ACTION_OPEN_DOCUMENT} está disponível somente
+em dispositivos que executam o Android 4.4 ou posteriores.
+Se você deseja que o aplicativo seja compatível com {@link android.content.Intent#ACTION_GET_CONTENT}
+para adaptar-se a dispositivos que executam o Android 4.3 ou versões anteriores, é necessário
+desativar o filtro de intenção {@link android.content.Intent#ACTION_GET_CONTENT}
+no manifesto para dispositivos que executam Android 4.4 ou versões posteriores. 
+Um provedor de documentos e {@link android.content.Intent#ACTION_GET_CONTENT} devem ser avaliados
+de forma mutuamente exclusiva. Se houver compatibilidade com ambos simultaneamente, o aplicativo
+aparecerá duas vezes na IU do seletor do sistema, oferecendo dois meios de acesso
+diferentes aos dados armazenados. Isso pode confundir os usuários.</p>
+
+<p>A seguir apresenta-se a forma recomendada de desativar
+o filtro de intenções {@link android.content.Intent#ACTION_GET_CONTENT} para dispositivos
+que executam o Android 4.4 ou versões posteriores:</p>
+
+<ol>
+<li>No arquivo de recursos {@code bool.xml} em {@code res/values/}, adicione
+esta linha: <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;true&lt;/bool&gt;</pre></li>
+
+<li>No arquivo de recursos {@code bool.xml} em {@code res/values-v19/}, adicione
+esta linha: <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>Adicione
+um <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">alias
+de atividade</a> para desativar o filtro de intenções
+{@link android.content.Intent#ACTION_GET_CONTENT} para versões 4.4 (API de nível 19) e posteriores. Por exemplo:
+
+<pre>
+&lt;!-- This activity alias is added so that GET_CONTENT intent-filter
+     can be disabled for builds on API level 19 and higher. --&gt;
+&lt;activity-alias android:name=&quot;com.android.example.app.MyPicker&quot;
+        android:targetActivity=&quot;com.android.example.app.MyActivity&quot;
+        ...
+        android:enabled=&quot;@bool/atMostJellyBeanMR2&quot;&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name=&quot;android.intent.action.GET_CONTENT&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.OPENABLE&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.DEFAULT&quot; /&gt;
+        &lt;data android:mimeType=&quot;image/*&quot; /&gt;
+        &lt;data android:mimeType=&quot;video/*&quot; /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity-alias&gt;
+</pre>
+</li>
+</ol>
+<h3 id="contract">Contratos</h3>
+
+<p>Normalmente, ao criar um provedor de conteúdo personalizado, uma das tarefas
+é implementar classes de contrato, como descrito
+no guia dos desenvolvedores de<a href="{@docRoot}guide/topics/providers/content-provider-creating.html#ContractClass">
+Provedores de conteúdo</a>. Classe de contrato é uma classe {@code public final}
+que contém definições constantes das URIs, nomes de coluna, tipos MIME
+e outros metadados que pertencem ao provedor. A SAF
+fornece essas classes de contrato, portanto não é necessário
+programá-las:</p>
+
+<ul>
+   <li>{@link android.provider.DocumentsContract.Document}</li>
+   <li>{@link android.provider.DocumentsContract.Root}</li>
+</ul>
+
+<p>Por exemplo, eis as colunas que podem retornar em um cursor
+ao consultar documentos ou a raiz do provedor de documentos:</p>
+
+<pre>private static final String[] DEFAULT_ROOT_PROJECTION =
+        new String[]{Root.COLUMN_ROOT_ID, Root.COLUMN_MIME_TYPES,
+        Root.COLUMN_FLAGS, Root.COLUMN_ICON, Root.COLUMN_TITLE,
+        Root.COLUMN_SUMMARY, Root.COLUMN_DOCUMENT_ID,
+        Root.COLUMN_AVAILABLE_BYTES,};
+private static final String[] DEFAULT_DOCUMENT_PROJECTION = new
+        String[]{Document.COLUMN_DOCUMENT_ID, Document.COLUMN_MIME_TYPE,
+        Document.COLUMN_DISPLAY_NAME, Document.COLUMN_LAST_MODIFIED,
+        Document.COLUMN_FLAGS, Document.COLUMN_SIZE,};
+</pre>
+
+<h3 id="subclass">Subclasse DocumentsProvider</h3>
+
+<p>A próxima etapa na criação de um provedor de documentos personalizado é atribuir uma subclasse à
+classe {@link android.provider.DocumentsProvider} abstrata. No mínimo, é necessário
+implementar os seguintes métodos:</p>
+
+<ul>
+<li>{@link android.provider.DocumentsProvider#queryRoots queryRoots()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryDocument queryDocument()}</li>
+
+<li>{@link android.provider.DocumentsProvider#openDocument openDocument()}</li>
+</ul>
+
+<p>Esses são os únicos métodos que obrigatoriamente devem ser implementados, mas há
+muitos outros que podem ser usados. Consulte {@link android.provider.DocumentsProvider}
+para ver mais detalhes.</p>
+
+<h4 id="queryRoots">Implementação de queryRoots</h4>
+
+<p>A implementação de {@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} deve retornar um {@link android.database.Cursor} que aponta para todos
+os diretórios raiz dos provedores de documentos, usando colunas definidas
+em {@link android.provider.DocumentsContract.Root}.</p>
+
+<p>No fragmento a seguir, o parâmetro {@code projection} representa
+os campos específicos que o autor da chamada quer receber de volta. O fragmento cria um novo cursor
+e adiciona-lhe uma linha &mdash; uma raiz, um diretório de nível superior, como
+Downloads ou Imagens.  A maioria dos provedores tem somente uma raiz. É possível ter mais de uma,
+por exemplo, no caso de diversas contas de usuário. Nesse caso, adicione somente
+uma segunda linha ao cursor.</p>
+
+<pre>
+&#64;Override
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+
+    // Create a cursor with either the requested fields, or the default
+    // projection if "projection" is null.
+    final MatrixCursor result =
+            new MatrixCursor(resolveRootProjection(projection));
+
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+    }
+
+    // It's possible to have multiple roots (e.g. for multiple accounts in the
+    // same app) -- just add multiple cursor rows.
+    // Construct one row for a root called &quot;MyCloud&quot;.
+    final MatrixCursor.RowBuilder row = result.newRow();
+    row.add(Root.COLUMN_ROOT_ID, ROOT);
+    row.add(Root.COLUMN_SUMMARY, getContext().getString(R.string.root_summary));
+
+    // FLAG_SUPPORTS_CREATE means at least one directory under the root supports
+    // creating documents. FLAG_SUPPORTS_RECENTS means your application's most
+    // recently used documents will show up in the &quot;Recents&quot; category.
+    // FLAG_SUPPORTS_SEARCH allows users to search all documents the application
+    // shares.
+    row.add(Root.COLUMN_FLAGS, Root.FLAG_SUPPORTS_CREATE |
+            Root.FLAG_SUPPORTS_RECENTS |
+            Root.FLAG_SUPPORTS_SEARCH);
+
+    // COLUMN_TITLE is the root title (e.g. Gallery, Drive).
+    row.add(Root.COLUMN_TITLE, getContext().getString(R.string.title));
+
+    // This document id cannot change once it's shared.
+    row.add(Root.COLUMN_DOCUMENT_ID, getDocIdForFile(mBaseDir));
+
+    // The child MIME types are used to filter the roots and only present to the
+    //  user roots that contain the desired type somewhere in their file hierarchy.
+    row.add(Root.COLUMN_MIME_TYPES, getChildMimeTypes(mBaseDir));
+    row.add(Root.COLUMN_AVAILABLE_BYTES, mBaseDir.getFreeSpace());
+    row.add(Root.COLUMN_ICON, R.drawable.ic_launcher);
+
+    return result;
+}</pre>
+
+<h4 id="queryChildDocuments">Implementação de queryChildDocuments</h4>
+
+<p>A implementação
+de {@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}
+deve retornar um {@link android.database.Cursor} que aponta para todos os arquivos
+no diretório especificado com colunas definidas em
+{@link android.provider.DocumentsContract.Document}.</p>
+
+<p>Esse método é chamado quando uma raiz do aplicativo é escolhida na IU do seletor.
+Ele coleta os documentos filhos de um diretório na raiz.  Ele pode ser chamado em qualquer nível
+na hierarquia de arquivos, não somente na raiz. Esse fragmento
+cria um novo cursor com as colunas solicitadas e, em seguida, adiciona informações ao cursor
+sobre cada filho imediato no diretório pai.
+O filho pode ser uma imagem, outro diretório &mdash; qualquer arquivo:</p>
+
+<pre>&#64;Override
+public Cursor queryChildDocuments(String parentDocumentId, String[] projection,
+                              String sortOrder) throws FileNotFoundException {
+
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    final File parent = getFileForDocId(parentDocumentId);
+    for (File file : parent.listFiles()) {
+        // Adds the file's display name, MIME type, size, and so on.
+        includeFile(result, null, file);
+    }
+    return result;
+}
+</pre>
+
+<h4 id="queryDocument">Implementação de queryDocument</h4>
+
+<p>A implementação de
+{@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+deve retornar um {@link android.database.Cursor} que aponta para o arquivo especificado
+com colunas definidas em {@link android.provider.DocumentsContract.Document}.
+</p>
+
+<p>O método {@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+retorna as mesmas informações passadas em
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()},
+mas para um arquivo específico.</p>
+
+
+<pre>&#64;Override
+public Cursor queryDocument(String documentId, String[] projection) throws
+        FileNotFoundException {
+
+    // Create a cursor with the requested projection, or the default projection.
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    includeFile(result, documentId, null);
+    return result;
+}
+</pre>
+
+<h4 id="openDocument">Implementação de openDocument</h4>
+
+<p>Deve-se implementar {@link android.provider.DocumentsProvider#openDocument
+openDocument()} para retornar um {@link android.os.ParcelFileDescriptor} que represente
+o arquivo especificado. Outros aplicativos podem usar o {@link android.os.ParcelFileDescriptor} retornado
+para transmitir dados. O sistema chama esse método quando o usuário seleciona um arquivo
+e o aplicativo cliente solicita acesso a ele chamando
+{@link android.content.ContentResolver#openFileDescriptor openFileDescriptor()}.
+Por exemplo:</p>
+
+<pre>&#64;Override
+public ParcelFileDescriptor openDocument(final String documentId,
+                                         final String mode,
+                                         CancellationSignal signal) throws
+        FileNotFoundException {
+    Log.v(TAG, &quot;openDocument, mode: &quot; + mode);
+    // It's OK to do network operations in this method to download the document,
+    // as long as you periodically check the CancellationSignal. If you have an
+    // extremely large file to transfer from the network, a better solution may
+    // be pipes or sockets (see ParcelFileDescriptor for helper methods).
+
+    final File file = getFileForDocId(documentId);
+
+    final boolean isWrite = (mode.indexOf('w') != -1);
+    if(isWrite) {
+        // Attach a close listener if the document is opened in write mode.
+        try {
+            Handler handler = new Handler(getContext().getMainLooper());
+            return ParcelFileDescriptor.open(file, accessMode, handler,
+                        new ParcelFileDescriptor.OnCloseListener() {
+                &#64;Override
+                public void onClose(IOException e) {
+
+                    // Update the file with the cloud server. The client is done
+                    // writing.
+                    Log.i(TAG, &quot;A file with id &quot; +
+                    documentId + &quot; has been closed!
+                    Time to &quot; +
+                    &quot;update the server.&quot;);
+                }
+
+            });
+        } catch (IOException e) {
+            throw new FileNotFoundException(&quot;Failed to open document with id &quot;
+            + documentId + &quot; and mode &quot; + mode);
+        }
+    } else {
+        return ParcelFileDescriptor.open(file, accessMode);
+    }
+}
+</pre>
+
+<h3 id="security">Segurança</h3>
+
+<p>Suponha que o provedor de documentos seja um serviço de armazenamento em nuvem protegido por senha
+e que você queira certificar-se de que os usuários estejam conectados antes de iniciar o compartilhamento dos arquivos.
+O que o aplicativo deve fazer se o usuário não estiver conectado?  A solução é retornar
+zero raiz na implementação de {@link android.provider.DocumentsProvider#queryRoots
+queryRoots()}, ou seja, um cursor de raiz vazio:</p>
+
+<pre>
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+...
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+}
+</pre>
+
+<p>A outra etapa é chamar {@code getContentResolver().notifyChange()}.
+Lembra-se do {@link android.provider.DocumentsContract}?  Estamos usando-o para criar
+esta URI. O fragmento a seguir pede ao sistema que consulte as raízes
+do provedor de documentos sempre que o status de login do usuário mudar. Se o usuário não estiver
+conectado, uma chamada de {@link android.provider.DocumentsProvider#queryRoots queryRoots()} retornará um
+cursor vazio, como exibido anteriormente. Isso garante que os documentos do provedor estejam
+disponíveis somente se o usuário tiver acesso ao provedor.</p>
+
+<pre>private void onLoginButtonClick() {
+    loginOrLogout();
+    getContentResolver().notifyChange(DocumentsContract
+            .buildRootsUri(AUTHORITY), null);
+}
+</pre>
\ No newline at end of file
diff --git a/docs/html-intl/intl/pt-br/guide/topics/resources/accessing-resources.jd b/docs/html-intl/intl/pt-br/guide/topics/resources/accessing-resources.jd
new file mode 100644
index 0000000..f196dfe
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/resources/accessing-resources.jd
@@ -0,0 +1,337 @@
+page.title=Acesso aos recursos
+parent.title=Recursos de aplicativos
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Visualização rápida</h2>
+  <ul>
+    <li>Recursos podem ser referenciados a partir do código usando números inteiros de {@code R.java}, como
+{@code R.drawable.myimage}</li>
+    <li>Recursos podem ser referenciados de recursos usando uma sintaxe XML especial, como {@code
+&#64;drawable/myimage}</li>
+    <li>Também é possível acessar os recursos do aplicativo com métodos em 
+{@link android.content.res.Resources}</li>
+  </ul>
+
+  <h2>Classes principais</h2>
+  <ol>
+    <li>{@link android.content.res.Resources}</li>
+  </ol>
+
+  <h2>Neste documento</h2>
+  <ol>
+    <li><a href="#ResourcesFromCode">Acesso aos recursos do código</a></li>
+    <li><a href="#ResourcesFromXml">Acesso aos recursos do XML</a>
+      <ol>
+        <li><a href="#ReferencesToThemeAttributes">Referência a atributos de estilo</a></li>
+      </ol>
+    </li>
+    <li><a href="#PlatformResources">Acesso aos recursos da plataforma</a></li>
+  </ol>
+
+  <h2>Veja também</h2>
+  <ol>
+    <li><a href="providing-resources.html">Fornecimento de recursos</a></li>
+    <li><a href="available-resources.html">Tipos de recursos</a></li>
+  </ol>
+</div>
+</div>
+
+
+
+
+<p>Depois de fornecer um recurso no aplicativo (discutido em <a href="providing-resources.html">Fornecimento de recursos</a>), é possível aplicá-lo
+referenciando seu ID de recurso. Todos os IDs de recursos são definidos na classe {@code R} do projeto, que 
+a ferramenta {@code aapt} gera automaticamente.</p>
+
+<p>Quando o aplicativo é compilado, {@code aapt} gera a classe {@code R}, que contém 
+IDs de recursos para todos os recursos no diretório {@code
+res/}. Para cada tipo de recurso, há uma subclasse {@code R} (por exemplo,
+{@code R.drawable} para todos os recursos desenháveis) e, para cada recurso daquele tipo, há um número inteiro
+estático (por exemplo, {@code R.drawable.icon}). Esse número inteiro é o ID do recurso que pode ser usado para
+recuperá-lo.</p>
+
+<p>Apesar de a classe {@code R} ser o local onde os IDs de recursos são especificados, não deve nunca ser necessário
+verificá-la para descobrir um ID de recurso. Ele é sempre composto de:</p>
+<ul>
+  <li>O <em>tipo de recurso</em>: cada recurso é agrupado em um "tipo", como {@code
+string}, {@code drawable} e {@code layout}. Para saber mais sobre os diferentes tipos, consulte <a href="available-resources.html">Tipos de recursos</a>.
+  </li>
+  <li>O <em>nome do recurso</em>, que é: o nome do arquivo,
+excluindo a extensão; ou o valor no atributo {@code android:name} do XML, se o 
+recurso for um valor simples (como uma string).</li>
+</ul>
+
+<p>Há duas formas de acessar um recurso:</p>
+<ul>
+  <li><strong>No código:</strong> Usando um número inteiro estático de uma subclasse de sua classe {@code R},
+como:
+    <pre class="classic no-pretty-print">R.string.hello</pre>
+    <p>{@code string} é o tipo de recurso e {@code hello} é o nome do recurso. Há muitas
+APIs do Android que podem acessar os seus recursos quando você fornece um ID de recurso nesse formato. Consulte
+<a href="#ResourcesFromCode">Acesso aos recursos no código</a>.</p>
+  </li>
+  <li><strong>No XML:</strong> usando uma sintaxe XML especial que também corresponde ao
+ID de recurso definido em sua classe {@code R}, como:
+    <pre class="classic no-pretty-print">&#64;string/hello</pre>
+    <p>{@code string} é o tipo de recurso e {@code hello} é o nome do recurso. Você pode usar essa
+sintaxe em um recurso XML em qualquer lugar em que um valor é esperado e que seja fornecido em um recurso. Consulte <a href="#ResourcesFromXml">Acesso aos recursos do XML</a>.</p>
+  </li>
+</ul>
+
+
+
+<h2 id="ResourcesFromCode">Acesso aos recursos no código </h2>
+
+<p>Você pode usar um recurso no código passando o ID do recurso como um parâmetro do método. Por
+exemplo, é possível definir uma {@link android.widget.ImageView} para usar o recurso {@code res/drawable/myimage.png}
+usando {@link android.widget.ImageView#setImageResource(int) setImageResource()}:</p>
+<pre>
+ImageView imageView = (ImageView) findViewById(R.id.myimageview);
+imageView.setImageResource(<strong>R.drawable.myimage</strong>);
+</pre>
+
+<p>Também é possível recuperar recursos individuais usando métodos em {@link
+android.content.res.Resources}, dos quais é possível obter uma instância
+com {@link android.content.Context#getResources()}.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Acesso aos arquivos originais</h2>
+
+<p>Apesar de ser incomum, pode ser necessário acessar os arquivos e os diretórios originais. Nesse caso, 
+salvar os arquivos em {@code res/} não funcionará, pois a única forma de ler um recurso de
+{@code res/} é com o ID do recurso. Em vez disso, é possível salvar os recursos no
+diretório {@code assets/}.</p>
+<p>Arquivos salvos no diretório {@code assets/} <em>não</em> recebem um ID de recurso,
+portanto, não é possível referenciá-los com a classe {@code R} nem de recursos XML. Em vez disso, é possível
+consultar arquivos no diretório {@code assets/} como um sistema de arquivos normal e ler dados brutos usando o
+{@link android.content.res.AssetManager}.</p>
+<p>No entanto, se você só precisa da capacidade de ler dados brutos (como um arquivo de vídeo ou áudio),
+salve o arquivo no diretório {@code res/raw/} e leia um fluxo de bytes usando {@link
+android.content.res.Resources#openRawResource(int) openRawResource()}.</p>
+
+</div>
+</div>
+
+
+<h3>Sintaxe</h3>
+
+<p>Esta é a sintaxe para referenciar um recurso no código:</p>
+
+<pre class="classic no-pretty-print">
+[<em>&lt;package_name&gt;</em>.]R.<em>&lt;resource_type&gt;</em>.<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li><em>{@code &lt;package_name&gt;}</em> é o nome do pacote no qual o recurso está localizado (não
+é obrigatório ao referenciar recursos de seu próprio pacote).</li>
+  <li><em>{@code &lt;resource_type&gt;}</em> é a subclasse {@code R} do tipo de recurso.</li>
+  <li><em>{@code &lt;resource_name&gt;}</em> é o nome do arquivo do recurso
+sem a extensão ou o valor do atributo {@code android:name} no elemento XML (para valores
+simples).</li>
+</ul>
+<p>Consulte <a href="available-resources.html">Tipos de recursos</a> para
+obter mais informações sobre cada tipo de recurso e como referenciá-los.</p>
+
+
+<h3>Casos de uso</h3>
+
+<p>Há muitos métodos que aceitam um parâmetro de ID de recurso e você pode recuperar recursos usando 
+métodos em {@link android.content.res.Resources}. É possível obter uma instância de {@link
+android.content.res.Resources} com {@link android.content.Context#getResources
+Context.getResources()}.</p>
+
+
+<p>Abaixo há alguns exemplos do acesso aos recursos no código:</p>
+
+<pre>
+// Load a background for the current screen from a drawable resource
+{@link android.app.Activity#getWindow()}.{@link
+android.view.Window#setBackgroundDrawableResource(int)
+setBackgroundDrawableResource}(<strong>R.drawable.my_background_image</strong>) ;
+
+// Set the Activity title by getting a string from the Resources object, because
+//  this method requires a CharSequence rather than a resource ID
+{@link android.app.Activity#getWindow()}.{@link android.view.Window#setTitle(CharSequence)
+setTitle}(getResources().{@link android.content.res.Resources#getText(int)
+getText}(<strong>R.string.main_title</strong>));
+
+// Load a custom layout for the current screen
+{@link android.app.Activity#setContentView(int)
+setContentView}(<strong>R.layout.main_screen</strong>);
+
+// Set a slide in animation by getting an Animation from the Resources object
+mFlipper.{@link android.widget.ViewAnimator#setInAnimation(Animation)
+setInAnimation}(AnimationUtils.loadAnimation(this,
+        <strong>R.anim.hyperspace_in</strong>));
+
+// Set the text on a TextView object using a resource ID
+TextView msgTextView = (TextView) findViewById(<strong>R.id.msg</strong>);
+msgTextView.{@link android.widget.TextView#setText(int)
+setText}(<strong>R.string.hello_message</strong>);
+</pre>
+
+
+<p class="caution"><strong>Atenção:</strong> nunca modifique o arquivo {@code
+R.java} manualmente &mdash; ele é gerado pela ferramenta {@code aapt} quando o projeto é 
+compilado. As alterações serão sobrepostas na próxima compilação.</p>
+
+
+
+<h2 id="ResourcesFromXml">Acesso aos recursos do XML</h2>
+
+<p>Você pode definir valores para alguns atributos e elementos XML usando uma
+referência a um recurso existente. Isso será feito com frequência ao criar arquivos de layout
+para fornecer strings e imagens para os widgets.</p>
+
+<p>Por enviar mensagem de texto, se você adicionar um {@link android.widget.Button} ao layout, deverá usar
+um <a href="string-resource.html">recurso de string</a> para o texto do botão:</p>
+
+<pre>
+&lt;Button
+    android:layout_width="fill_parent"
+    android:layout_height="wrap_content"
+    android:text="<strong>@string/submit</strong>" /&gt;
+</pre>
+
+
+<h3>Sintaxe</h3>
+
+<p>Esta é a sintaxe para referenciar um recurso em um recurso XML:</p>
+
+<pre class="classic no-pretty-print">
+&#64;[<em>&lt;package_name&gt;</em>:]<em>&lt;resource_type&gt;</em>/<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li>{@code &lt;package_name&gt;} é o nome do pacote no qual o recurso está localizado (não
+é obrigatório ao referenciar recursos do mesmo pacote).</li>
+  <li>{@code &lt;resource_type&gt;} é a subclasse 
+{@code R} do tipo de recurso.</li>
+  <li>{@code &lt;resource_name&gt;} é o nome do arquivo do recurso
+sem a extensão ou o valor do atributo {@code android:name} no elemento XML (para valores
+simples).</li>
+</ul>
+
+<p>Consulte <a href="available-resources.html">Tipos de recursos</a> para
+obter mais informações sobre cada tipo de recurso e como referenciá-los.</p>
+
+
+<h3>Casos de uso</h3>
+
+<p>Em alguns casos, é preciso usar um recurso para um valor em XML (por exemplo, para aplicar uma imagem desenhável
+a um widget), mas você também pode usar um recurso em XML em qualquer lugar que aceite um valor simples. Por
+exemplo, se você tiver o seguinte arquivo de recursos que inclui um <a href="more-resources.html#Color">recurso de cor</a> e um <a href="string-resource.html">recurso de string</a>:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+   &lt;color name="opaque_red">#f00&lt;/color>
+   &lt;string name="hello">Hello!&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>É possível usar esses recursos no arquivo de layout a seguir para definir a cor to texto e a
+string do texto:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;color/opaque_red</strong>&quot;
+    android:text=&quot;<strong>&#64;string/hello</strong>&quot; /&gt;
+</pre>
+
+<p>Nesse caso, não é preciso especificar o nome do pacote na referência do recurso porque os
+recursos são de seu próprio pacote. Para
+referenciar um recurso do sistema, é preciso incluir o nome do pacote. Por exemplo:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;android:color/secondary_text_dark</strong>&quot;
+    android:text=&quot;&#64;string/hello&quot; /&gt;
+</pre>
+
+<p class="note"><strong>Observação:</strong> você deve usar recursos de string
+o tempo inteiro para que o seu aplicativo possa ser localizado para outros idiomas. 
+Para obter informações sobre a criação de recursos
+alternativos (como strings localizadas), consulte <a href="providing-resources.html#AlternativeResources">Fornecimento de recursos 
+alternativos</a>. Para obter um guia completo para localizar o aplicativo para outros idiomas, 
+consulte <a href="localization.html">Localização</a>.</p>
+
+<p>Você pode até mesmo usar recursos em XML para criar alias. Por exemplo, é possível criar um recurso
+desenhável que seja um alias para outro recurso desenhável:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/other_drawable" />
+</pre>
+
+<p>Isso parece redundante, mas pode ser muito útil ao usar um recurso alternativo. Leia mais sobre
+<a href="providing-resources.html#AliasResources">Criação de recursos de alias</a>.</p>
+
+
+
+<h3 id="ReferencesToThemeAttributes">Referência a atributos de estilo</h3>
+
+<p>Um recurso de atributo de estilo permite referenciar o valor
+de um atributo no tema atualmente aplicado. Referenciar um atributo de estilo permite
+personalizar a aparência de elementos da IU deixando-os com estilo que corresponda a variações padrão fornecidas pelo
+tema atual, em vez de fornecer um valor codificado. Referenciar um atributo de estilo
+essencialmente significa "usar o estilo que é definido por esse atributo no tema atual".</p>
+
+<p>Para referenciar um atributo de estilo, a sintaxe do nome é quase idêntica ao formato normal de recurso,
+mas, em vez de o símbolo arroba ({@code @}), use um ponto de interrogação ({@code ?}). Além disso, 
+a parte do tipo de recurso é opcional. Por exemplo:</p>
+
+<pre class="classic">
+?[<em>&lt;package_name&gt;</em>:][<em>&lt;resource_type&gt;</em>/]<em>&lt;resource_name&gt;</em>
+</pre>
+
+<p>Por exemplo, abaixo apresenta-se como você pode referenciar um atributo para definir a cor do texto para que corresponda à 
+cor "principal" do texto do tema do sistema:</p>
+
+<pre>
+&lt;EditText id=&quot;text&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;wrap_content&quot;
+    android:textColor=&quot;<strong>?android:textColorSecondary</strong>&quot;
+    android:text=&quot;&#64;string/hello_world&quot; /&gt;
+</pre>
+
+<p>Aqui, o atributo {@code android:textColor} especifica o nome de um atributo de estilo
+no tema atual. O Android agora usa o valor aplicado ao atributo de estilo {@code android:textColorSecondary}
+como o valor para {@code android:textColor} nesse widget. Como a ferramenta de recursos
+do sistema sabe que um recurso de atributo é esperado nesse contexto,
+não é preciso declarar explicitamente o tipo (que seria
+<code>?android:attr/textColorSecondary</code>) &mdash; você pode excluir o tipo de {@code attr}.</p>
+
+
+
+
+<h2 id="PlatformResources">Acesso aos recursos da plataforma</h2>
+
+<p>O Android contém uma série de recursos padrão, como estilos, temas e layouts. Para
+acessá-los, qualifique a referência de recurso com o 
+nome do pacote <code>android</code>. Por exemplo, o Android fornece um recurso de layout que pode ser usado para
+listar itens em um {@link android.widget.ListAdapter}:</p>
+
+<pre>
+{@link android.app.ListActivity#setListAdapter(ListAdapter)
+setListAdapter}(new {@link
+android.widget.ArrayAdapter}&lt;String&gt;(this, <strong>android.R.layout.simple_list_item_1</strong>, myarray));
+</pre>
+
+<p>Nesse exemplo, {@link android.R.layout#simple_list_item_1} é um recurso de layout definido pela
+plataforma para itens em uma {@link android.widget.ListView}. Você pode usá-lo em vez de criar o
+próprio layout para itens de lista. Para obter mais informações, consulte o
+guia do desenvolvedor de <a href="{@docRoot}guide/topics/ui/layout/listview.html">Vista de lista</a>.</p>
+
diff --git a/docs/html-intl/intl/pt-br/guide/topics/resources/overview.jd b/docs/html-intl/intl/pt-br/guide/topics/resources/overview.jd
new file mode 100644
index 0000000..5bf37e6
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/resources/overview.jd
@@ -0,0 +1,103 @@
+page.title=Visão geral dos recursos
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Tópicos</h2>
+  <ol>
+    <li><a href="providing-resources.html">Fornecimento de recursos</a></li>
+    <li><a href="accessing-resources.html">Acesso aos recursos</a></li>
+    <li><a href="runtime-changes.html">Tratamento de alterações em tempo de execução</a></li>
+    <li><a href="localization.html">Localização</a></li>
+  </ol>
+
+  <h2>Referência</h2>
+  <ol>
+    <li><a href="available-resources.html">Tipos de recursos</a></li>
+  </ol>
+</div>
+</div>
+
+
+<p>Deve-se sempre exteriorizar os recursos do aplicativo, como imagens e strings do código do aplicativo,
+para que você possa mantê-los independentemente. Exteriorizar os recursos
+também permite fornecer recursos alternativos que sejam compatíveis com configurações
+de dispositivos específicos, como idiomas ou tamanhos de tela diferentes, que se tornam cada vez
+mais importantes à medida que mais dispositivos com Android são disponibilizados com configurações diferentes. Para fornecer
+compatibilidade com diferentes configurações, é preciso organizar recursos no 
+diretório {@code res/} de seu projeto usando vários subdiretórios que agrupem recursos por tipo e 
+configuração.</p>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram1.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Figura 1.</strong> Dois dispositivos diferentes, cada um usando o layout padrão
+(o aplicativo não fornece layouts alternativos).</p>
+</div>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Figura 2.</strong> Dois dispositivos diferentes, cada um usando um layout diferente fornecido
+para diferentes tamanhos de tela.</p>
+</div>
+
+<p>Para qualquer tipo de recurso, é possível especificar recursos <em>padrão</em> e vários recursos
+<em>alternativos</em> para o aplicativo:</p>
+<ul>
+  <li>Recursos padrão são aqueles que devem ser usados independentemente
+da configuração do dispositivo ou quando não há recursos alternativos que correspondam à
+configuração atual.</li>
+  <li>Recursos alternativos são aqueles projetados para uso com uma configuração
+específica. Para definir que um grupo de recursos é para uma configuração específica,
+anexe um qualificador de configuração apropriado ao nome do diretório.</li>
+</ul>
+
+<p>Por exemplo, enquanto o layout da IU padrão
+é salvo no diretório {@code res/layout/}, é possível especificar um layout diferente
+a ser usado quando a tela está na orientação de paisagem salvando-o no diretório {@code res/layout-land/}
+. O Android automaticamente aplica os recursos adequados correspondendo
+a configuração atual do dispositivo com os nomes de diretórios de recursos.</p>
+
+<p>A figura 1 ilustra como o sistema aplica o mesmo layout para dois
+dispositivos diferentes quando não há recursos alternativos disponíveis. A figura 2 mostra
+o mesmo aplicativo quando é adicionado um recurso de layout alternativo para telas maiores.</p>
+
+<p>Os documentos a seguir fornecem um guia completo sobre como organizar os recursos do aplicativo,
+especificar recursos alternativos, acessá-los no aplicativo e muito mais:</p>
+
+<dl>
+  <dt><strong><a href="providing-resources.html">Como fornecer recursos</a></strong></dt>
+  <dd>Os tipos de recursos que você pode fornecer no aplicativo, onde salvá-los e como criar
+recursos alternativos para configurações específicas de dispositivos.</dd>
+  <dt><strong><a href="accessing-resources.html">Acesso aos recursos</a></strong></dt>
+  <dd>Como usar os recursos que você forneceu referenciando-os no código do aplicativo
+ou de outros recursos XML.</dd>
+  <dt><strong><a href="runtime-changes.html">Tratar alterações no tempo de execução</a></strong></dt>
+  <dd>Como gerenciar alterações de configuração que ocorrem enquanto a Atividade está em execução.</dd>
+  <dt><strong><a href="localization.html">Localização</a></strong></dt>
+  <dd>Um guia ascendente para localizar o aplicativo usando recursos alternativos. Apesar de esse ser
+apenas um uso específico de recursos alternativos, ele é muito importante para atingir mais
+usuários.</dd>
+  <dt><strong><a href="available-resources.html">Tipos de recursos</a></strong></dt>
+  <dd>Uma referência a vários tipos de recursos que você pode fornecer, descrevendo os elementos XML,
+os atributos e a sintaxe. Por exemplo, esta referência mostra como criar um recurso
+para menus do aplicativo, desenháveis, animações e mais.</dd>
+</dl>
+
+<!--
+<h2>Raw Assets</h2>
+
+<p>An alternative to saving files in {@code res/} is to save files in the {@code
+assets/} directory. This should only be necessary if you need direct access to original files and
+directories by name. Files saved in the {@code assets/} directory will not be given a resource
+ID, so you can't reference them through the {@code R} class or from XML resources. Instead, you can
+query data in the {@code assets/} directory like an ordinary file system, search through the
+directory and
+read raw data using {@link android.content.res.AssetManager}. For example, this can be more useful
+when dealing with textures for a game. However, if you only need to read raw data from a file
+(such as a video or audio file), then you should save files into the {@code res/raw/} directory and
+then read a stream of bytes using {@link android.content.res.Resources#openRawResource(int)}. This
+is uncommon, but if you need direct access to original files in {@code assets/}, refer to the {@link
+android.content.res.AssetManager} documentation.</p>
+-->
diff --git a/docs/html-intl/intl/pt-br/guide/topics/resources/providing-resources.jd b/docs/html-intl/intl/pt-br/guide/topics/resources/providing-resources.jd
new file mode 100644
index 0000000..1118fd5
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/resources/providing-resources.jd
@@ -0,0 +1,1094 @@
+page.title=Fornecimento de recursos
+parent.title=Recursos de aplicativo
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Visualização rápida</h2>
+  <ul>
+    <li>Tipos diferentes de recursos pertencem a subdiretórios diferentes de {@code res/}</li>
+    <li>Recursos alternativos fornecem arquivos de recurso específicos de configuração</li>
+    <li>Sempre inclua recursos padrão para que o aplicativo não dependa de configurações
+específicas do dispositivo</li>
+  </ul>
+  <h2>Neste documento</h2>
+  <ol>
+    <li><a href="#ResourceTypes">Agrupamento de tipos de recursos</a></li>
+    <li><a href="#AlternativeResources">Fornecimento de recursos alternativos</a>
+      <ol>
+        <li><a href="#QualifierRules">Regras de nome do qualificador</a></li>
+        <li><a href="#AliasResources">Criação de recursos de alias</a></li>
+      </ol>
+    </li>
+    <li><a href="#Compatibility">Fornecimento da melhor compatibilidade de dispositivo com recursos</a></li>
+    <li><a href="#BestMatch">Como o Android encontra o melhor recurso compatível</a></li>
+  </ol>
+
+  <h2>Veja também</h2>
+  <ol>
+    <li><a href="accessing-resources.html">Acesso aos recursos</a></li>
+    <li><a href="available-resources.html">Tipos de recursos</a></li>
+    <li><a href="{@docRoot}guide/practices/screens_support.html">Compatibilidade com
+várias telas</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Deve-se sempre exteriorizar os recursos do aplicativo, como imagens e strings do código,
+para que você possa mantê-los independentemente. Deve-se também fornecer recursos alternativos para
+configurações específicas do dispositivo, agrupando-os em diretórios de recursos especialmente nomeados. Em
+tempo de execução, o Android usa o recurso adequado com base na configuração atual. Por
+exemplo, você pode querer fornecer um layout de IU diferente dependendo do tamanho da tela ou
+strings diferentes dependendo da configuração de idioma.</p>
+
+<p>Ao exteriorizar os recursos do aplicativo, é possível acessá-los
+usando IDs de recurso que são gerados na classe {@code R} do projeto. O procedimento para usar
+recursos no aplicativo é discutido em <a href="accessing-resources.html">Acesso aos
+recursos</a>. Este documento mostra como agrupar os recursos no projeto do Android
+e fornecer recursos alternativos para configurações específicas do dispositivo.</p>
+
+
+<h2 id="ResourceTypes">Agrupamento de tipos de recursos</h2>
+
+<p>Você deve posicionar cada tipo de recurso em um subdiretório específico do diretório
+{@code res/} do projeto. Por exemplo, abaixo está a hierarquia de arquivos para um projeto simples:</p>
+
+<pre class="classic no-pretty-print">
+MyProject/
+    src/  <span style="color:black">
+        MyActivity.java  </span>
+    res/
+        drawable/  <span style="color:black">
+            graphic.png  </span>
+        layout/  <span style="color:black">
+            main.xml
+            info.xml</span>
+        mipmap/  <span style="color:black">
+            icon.png </span>
+        values/  <span style="color:black">
+            strings.xml  </span>
+</pre>
+
+<p>Como pode ver neste exemplo, o diretório {@code res/} contém todos os recursos (em subdiretórios):
+um recurso de imagem, dois recursos de layout, diretórios {@code mipmap/} para ícones de 
+inicialização e um arquivo de recurso de string. Os nomes dos diretórios
+de recursos são importantes e são descritos na tabela 1.</p>
+
+<p class="note"><strong>Observação:</strong> para obter mais informações sobre o uso de pastas de mipmap, consulte
+<a href="{@docRoot}tools/projects/index.html#mipmap">Visão geral do gerenciamento de projetos</a>.</p>
+
+<p class="table-caption" id="table1"><strong>Tabela 1.</strong> Os diretórios de recursos
+compatíveis dentro do diretório {@code res/} do projeto.</p>
+
+<table>
+  <tr>
+    <th scope="col">Diretório</th>
+    <th scope="col">Tipo de recurso</th>
+  </tr>
+
+  <tr>
+    <td><code>animator/</code></td>
+    <td>Arquivos XML que definem as <a href="{@docRoot}guide/topics/graphics/prop-animation.html">animações
+da propriedade</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>anim/</code></td>
+    <td>Arquivos XML que definem as <a href="{@docRoot}guide/topics/graphics/view-animation.html#tween-animation">animações
+intermediárias</a>. (As animações de propriedade também podem ser salvas neste diretório,
+mas o diretório {@code animator/} é o preferencial para animações de propriedade para distinguir os dois
+tipos.)</td>
+  </tr>
+
+  <tr>
+    <td><code>color/</code></td>
+    <td>Arquivos XML que definem uma lista de estado de cores. Consulte <a href="color-list-resource.html">Recurso de
+lista de estado de cores</a></td>
+  </tr>
+
+  <tr>
+    <td><code>drawable/</code></td>
+
+    <td><p>Os arquivos Bitmap ({@code .png}, {@code .9.png}, {@code .jpg}, {@code .gif}) ou arquivos XML
+são compilados nos seguintes subtipos de recurso desenhável:</p>
+      <ul>
+        <li>Arquivos Bitmap</li>
+        <li>Nine-Patch (bitmaps redimensionáveis)</li>
+        <li>Listas de estado</li>
+        <li>Formatos</li>
+        <li>Desenháveis de animação</li>
+        <li>Outros desenháveis</li>
+      </ul>
+      <p>Veja <a href="drawable-resource.html">Recursos desenháveis</a>.</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>mipmap/</code></td>
+    <td>Arquivos desenháveis para diferentes densidades do ícone do inicializador. Para obter mais informações sobre o gerenciamento de
+    ícones do inicializador com pastas {@code mipmap/}, consulte
+    <a href="{@docRoot}tools/project/index.html#mipmap">Visão geral do gerenciamento de projetos</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>layout/</code></td>
+    <td>Arquivos XML que definem um layout de interface do usuário.
+        Consulte <a href="layout-resource.html">Recurso de layout</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>menu/</code></td>
+    <td>Arquivos XML que definem os menus do aplicativo, como Menu de opções, Menu de contexto
+ou Submenu. Consulte <a href="menu-resource.html">Recurso de menu</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>raw/</code></td>
+    <td><p>Arquivos arbitrários para salvar na forma bruta. Para abrir esses recursos
+com {@link java.io.InputStream} bruto, chame {@link android.content.res.Resources#openRawResource(int)
+Resources.openRawResource()} com o ID do recurso, que é {@code R.raw.<em>filename</em>}.</p>
+      <p>No entanto, caso precise de acesso aos nomes e à hierarquia dos arquivos originais, considere salvar
+alguns recursos no diretório {@code
+assets/} (em vez de {@code res/raw/}). Os arquivos em {@code assets/} não recebem um ID de recurso,
+então é possível lê-los usando apenas o {@link android.content.res.AssetManager}.</p></td>
+  </tr>
+
+  <tr>
+    <td><code>values/</code></td>
+    <td><p>Arquivos XML que contêm valores simples, como strings, números inteiros e cores.</p>
+      <p>Enquanto os arquivos de recurso XML estiverem em outros subdiretórios {@code res/}, defina um único recurso
+com base no nome do arquivo XML, os arquivos no diretório {@code values/} descrevem vários recursos.
+Para cada arquivo neste diretório, cada filho do elemento {@code &lt;resources&gt;} define um único
+recurso. Por exemplo, um elemento {@code &lt;string&gt;} cria
+um recurso {@code R.string} e um elemento {@code &lt;color&gt;} cria um recurso 
+{@code R.color}.</p>
+      <p>Como cada recurso é definido com seu próprio elemento XML, é possível nomear o arquivo
+da forma que quiser e colocar tipos de recurso variados em um arquivo. No entanto, para esclarecer, você pode
+querer colocar tipos de recursos únicos em arquivos diferentes. Por exemplo, a seguir há algumas convenções
+de nome de arquivo para recursos que podem ser criados neste diretório:</p>
+      <ul>
+        <li>arrays.xml para matriz de recurso (<a href="more-resources.html#TypedArray">matriz digitadas</a>).</li>
+        <li>colors.xml para <a href="more-resources.html#Color">valores de cor</a></li>
+        <li>dimens.xml para <a href="more-resources.html#Dimension">valores de dimensão</a>.</li>
+        <li>strings.xml para <a href="string-resource.html">valores
+de string</a>.</li>
+        <li>styles.xml para <a href="style-resource.html">estilos</a>.</li>
+      </ul>
+      <p>Consulte <a href="string-resource.html">Recursos de string</a>,
+        <a href="style-resource.html">Recurso de estilo</a>
+        e <a href="more-resources.html">Mais tipos de recursos</a>.</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>xml/</code></td>
+    <td>Arquivos arbitrários XML que podem ser lidos em tempo de execução chamando {@link
+android.content.res.Resources#getXml(int) Resources.getXML()}. Vários arquivos de configuração XML
+devem ser salvos aqui, como uma <a href="{@docRoot}guide/topics/search/searchable-config.html">configuração buscável</a>.
+<!-- or preferences configuration. --></td>
+  </tr>
+</table>
+
+<p class="caution"><strong>Atenção:</strong> nunca salve arquivos de recurso diretamente no diretório
+{@code res/} &mdash; isto provocará um erro ao compilador.</p>
+
+<p>Para obter mais informações sobre determinados tipos de recursos, consulte a documentação <a href="available-resources.html">Tipos de recursos</a>.</p>
+
+<p>Os recursos salvos nos subdiretórios definidos na tabela 1 são os recursos
+"padrão". Ou seja, esses recursos definem projeto e conteúdo padrão para o aplicativo.
+No entanto, tipos diferentes de dispositivos com Android podem chamar diferentes tipos de recursos.
+Por exemplo: se um dispositivo tiver uma tela maior do que o normal, deve-se fornecer
+recursos de layout diferentes que aproveitem o espaço extra na tela. Ou, se um dispositivo tiver
+uma configuração de idioma diferente, deve-se fornecer recursos de string diferentes que traduzam
+o texto na interface do usuário. Para fornecer esses diferentes recursos para configurações de dispositivo
+diferentes, você precisa fornecer recursos alternativos, além dos recursos
+padrão.</p>
+
+
+<h2 id="AlternativeResources">Fornecimento de recursos alternativos</h2>
+
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Figura 1.</strong> Dois dispositivos diferentes, cada um usando recursos diferentes de layout.</p>
+</div>
+
+<p>Quase todos os aplicativos devem fornecer recursos alternativos para suportar
+configurações específicas do dispositivo. Por exemplo: deve-se incluir recursos desenháveis alternativos para densidades
+de tela diferentes e recursos alternativos de string para idiomas diferentes. Em tempo de execução,
+o Android detecta a configuração atual do dispositivo e carrega os recursos
+adequados para o aplicativo.</p>
+
+<p>Para especificar as alternativas de configuração específica para um conjunto de recursos:</p>
+<ol>
+  <li>Crie um novo diretório no {@code res/} nomeado na forma de {@code
+<em>&lt;resources_name&gt;</em>-<em>&lt;config_qualifier&gt;</em>}.
+    <ul>
+      <li><em>{@code &lt;resources_name&gt;}</em> é o nome do diretório dos recursos padrão correspondentes
+(definido na tabela 1).</li>
+      <li><em>{@code &lt;qualifier&gt;}</em> é um nome que especifica uma configuração individual
+para a qual esses recursos destinam-se (definido na tabela 2).</li>
+    </ul>
+    <p>É possível anexar mais de um <em>{@code &lt;qualifier&gt;}</em>. Separe cada
+um com um travessão.</p>
+    <p class="caution"><strong>Atenção:</strong> ao anexar vários qualificadores, deve-se
+colocá-los na mesma ordem em que foram listados na tabela 2. Se os qualificadores forem ordenados
+de forma incorreta, os recursos serão ignorados.</p>
+  </li>
+  <li>Salve os respectivos recursos alternativos neste novo diretório. Os arquivos de recurso devem ser
+nomeados exatamente da mesma forma que os arquivos de recurso padrão.</li>
+</ol>
+
+<p>Por exemplo, a seguir há alguns recursos alternativos e outros padrão:</p>
+
+<pre class="classic no-pretty-print">
+res/
+    drawable/   <span style="color:black">
+        icon.png
+        background.png    </span>
+    drawable-hdpi/  <span style="color:black">
+        icon.png
+        background.png  </span>
+</pre>
+
+<p>O qualificador {@code hdpi} indica que os recursos neste diretório são para os dispositivos
+com tela de alta densidade. As imagens em cada um desses diretórios desenháveis são dimensionadas para uma densidade de tela
+específica, mas os nomes dos arquivos
+são exatamente os mesmos. Desta maneira, o ID de recurso usado para referenciar {@code icon.png} ou a imagem {@code
+background.png} é sempre o mesmo, mas o Android seleciona
+a versão de cada arquivo que melhor compatibiliza-se com o dispositivo atual, comparando as informações de configuração
+com os qualificadores no nome do diretório do recurso.</p>
+
+<p>O Android é compatível com vários qualificadores de configuração e é possível
+adicionar vários qualificadores a um nome de diretório separando cada qualificador com um travessão. A tabela 2
+lista os qualificadores de configuração válidos, em ordem de precedência &mdash; caso use vários
+qualificadores para um diretório de recursos, você deve adicioná-los ao nome do diretório na ordem que foram listados
+na tabela.</p>
+
+
+<p class="table-caption" id="table2"><strong>Tabela 2.</strong> Nomes de qualificadores
+de configuração.</p>
+<table>
+    <tr>
+        <th>Configuração</th>
+        <th>Valores do qualificador</th>
+        <th>Descrição</th>
+    </tr>
+    <tr id="MccQualifier">
+      <td>MCC e MNC</td>
+      <td>Exemplos:<br/>
+        <code>mcc310</code><br/>
+        <code><nobr>mcc310-mnc004</nobr></code><br/>
+        <code>mcc208-mnc00</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>O código de dispositivos móveis do país (MCC), opcionalmente seguido do código de rede móvel (MNC)
+        do cartão SIM no dispositivo. Por exemplo, <code>mcc310</code> é dos E.U.A. em qualquer operadora,
+        <code>mcc310-mnc004</code> é dos E.U.A., em Verizon, e <code>mcc208-mnc00</code> é da França,
+        em Orange.</p>
+        <p>Se o dispositivo usar uma conexão de rádio (telefone GSM), os valores MCC e MNC serão
+        os do cartão SIM.</p>
+        <p>Você também pode usar somente o MCC (por exemplo, para incluir recursos legais específicos do país
+no aplicativo). Caso precise especificar com base somente no idioma, use o qualificador
+de <em>idioma e região</em> (discutido a seguir). Caso decida usar o qualificador
+de MCC e MNC, tome cuidado e teste o seu funcionamento.</p>
+        <p>Veja também os campos de configuração {@link
+android.content.res.Configuration#mcc} e {@link
+android.content.res.Configuration#mnc}, que indicam o código de dispositivos móveis do país atual
+e o código de rede móvel, respectivamente.</p>
+      </td>
+    </tr>
+    <tr id="LocaleQualifier">
+      <td>Idioma e região</td>
+      <td>Exemplos:<br/>
+        <code>en</code><br/>
+        <code>fr</code><br/>
+        <code>en-rUS</code><br/>
+        <code>fr-rFR</code><br/>
+        <code>fr-rCA</code><br/>
+        etc.
+      </td>
+      <td><p>O idioma é definido por um código de idioma<a href="http://www.loc.gov/standards/iso639-2/php/code_list.php">ISO
+              639-1</a> de duas letras, opcionalmente seguido por um código da região
+              <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html">ISO
+              3166-1-alpha-2</a> (precedido de "{@code r}" em minúsculo).
+        </p><p>
+        Os códigos <em>não</em> diferenciam maiúsculas e minúsculas; o prefixo {@code r} é usado
+        para distinguir a parte da região.
+        Não é possível especificar uma região só.</p>
+        <p>Isto pode mudar durante a vida útil
+do aplicativo se o usuário mudar o idioma nas configurações do sistema. Consulte <a href="runtime-changes.html">Tratamento de alterações em tempo de execução</a> para obter informações
+sobre como isto pode afetar o aplicativo em tempo de execução.</p>
+        <p>Consulte <a href="localization.html">Localização</a> para obter um guia completo para localizar
+os aplicativos para outros idiomas.</p>
+        <p>Veja também o campo de configuração {@link android.content.res.Configuration#locale},
+que indica a localidade atual.</p>
+      </td>
+    </tr>
+    <tr id="LayoutDirectionQualifier">
+      <td>Direção do layout</td>
+      <td><code>ldrtl</code><br/>
+        <code>ldltr</code><br/>
+      </td>
+      <td><p>A direção do layout do aplicativo. {@code ldrtl} significa "layout-direction-right-to-left" (direção do layout da direita para a esquerda).
+      {@code ldltr} significa "layout-direction-left-to-right" (direção do layout da esquerda para a direita) e é o valor implícito padrão.
+      </p>
+      <p>Isto pode aplicar-se a qualquer recurso, como layouts, desenháveis ou valores.
+      </p>
+      <p>Por exemplo, caso queira fornecer um layout específico para o idioma arábico e
+      layouts genéricos para outros idiomas que seguem a leitura da direita para a esquerda, como os idiomas hebreu e persa, então você teria:
+      </p>
+<pre class="classic no-pretty-print">
+res/
+    layout/   <span style="color:black">
+        main.xml  </span>(Default layout)
+    layout-ar/  <span style="color:black">
+        main.xml  </span>(Specific layout for Arabic)
+    layout-ldrtl/  <span style="color:black">
+        main.xml  </span>(Any "right-to-left" language, except
+                  for Arabic, because the "ar" language qualifier
+                  has a higher precedence.)
+</pre>
+        <p class="note"><strong>Observação:</strong> para ativar recursos de layout de leitura da direita para a esquerda
+        para o aplicativo, você deve definir <a href="{@docRoot}guide/topics/manifest/application-element.html#supportsrtl">{@code
+        supportsRtl}</a> como {@code "true"} e <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> como 17 ou maior.</p>
+        <p><em>Adicionado à API de nível 17.</em></p>
+      </td>
+    </tr>
+    <tr id="SmallestScreenWidthQualifier">
+      <td>smallestWidth</td>
+      <td><code>sw&lt;N&gt;dp</code><br/><br/>
+        Exemplos:<br/>
+        <code>sw320dp</code><br/>
+        <code>sw600dp</code><br/>
+        <code>sw720dp</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>O tamanho fundamental de uma tela, como indicado pela menor dimensão da área da tela
+disponível. Especificamente, o valor smallestWidth do dispositivo é o menor da altura e largura
+da tela (pode-se também interpretar isso como a "menor largura possível" da tela). É possível
+usar este qualificador para garantir que, independentemente da orientação atual da tela,
+o aplicativo tenha pelo menos {@code &lt;N&gt;} dps de largura disponível para a IU.</p>
+        <p>Por exemplo, se o seu layout exigir que a menor dimensão da área da tela seja de pelo menos
+600 dp, é possível usar o seguinte qualificador para criar os recursos do layout: {@code
+res/layout-sw600dp/}. O sistema usará esses recursos somente quando a menor dimensão
+da tela disponível for de pelo menos 600 dp, independentemente se o lado de 600 dp é a altura ou a largura
+percebida pelo usuário. O valor smallestWidth é uma característica fixa do tamanho da tela do dispositivo;<strong>o valor smallestWidth
+do dispositivo não altera quando a orientação da tela muda</strong>.</p>
+        <p>O smallestWidth de um dispositivo considera a IU do sistema e as decorações da tela. Por exemplo,
+se o dispositivo tiver alguns elementos de IU persistentes na tela que considera o espaço ao longo do eixo
+de smallestWidth, o sistema declara que smallestWidth é menor do que o tamanho
+atual da tela, pois são pixels de tela não disponíveis para a IU. Portanto, o valor usado
+deve ser a dimensão real menor <em>necessária para o layout</em> (geralmente, este valor
+é a "menor largura" compatível com o layout, independente da orientação atual da tela).</p>
+        <p>Alguns dos valores que você pode usar para tamanhos de tela comuns:</p>
+        <ul>
+          <li>320, para dispositivos com configurações de tela como:
+            <ul>
+              <li>240 x 320 ldpi (celular QVGA)</li>
+              <li>320 x 480 mdpi (celular)</li>
+              <li>480 x 800 hdpi (celular de alta densidade)</li>
+            </ul>
+          </li>
+          <li>480, para telas como 480 x 800 mdpi (tablet/celular).</li>
+          <li>600, para telas como 600 x 1024 mdpi (tablet de 7 polegadas).</li>
+          <li>720, para telas como 720 x 1280 mdpi (tablet de 10 polegadas).</li>
+        </ul>
+        <p>Quando o aplicativo fornece vários diretórios de recursos com valores diferentes
+          para o qualificador smallestWidth, o sistema usa o mais próximo (sem exceder) ao
+de smallestWidth do dispositivo. </p>
+        <p><em>Adicionado à API de nível 13.</em></p>
+        <p>Veja também o atributo <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html#requiresSmallest">{@code
+android:requiresSmallestWidthDp}</a>, que declara a smallestWidth mínima compatível
+com o aplicativo e o campo de configuração {@link
+android.content.res.Configuration#smallestScreenWidthDp}, que retém
+o valor de smallestWidth do dispositivo.</p>
+        <p>Para obter mais informações sobre como projetar para telas diferentes e usar
+este qualificador, consulte o guia do desenvolvedor <a href="{@docRoot}guide/practices/screens_support.html">Compatibilidade com
+várias telas</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenWidthQualifier">
+      <td>Largura disponível</td>
+      <td><code>w&lt;N&gt;dp</code><br/><br/>
+        Exemplos:<br/>
+        <code>w720dp</code><br/>
+        <code>w1024dp</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>Especifica uma largura mínima disponível da tela, em unidades {@code dp} em que o recurso
+          deve ser usado &mdash; definido pelo valor <code>&lt;N&gt;</code>.  Este valor
+          de configuração mudará quando a orientação
+          alternar entre paisagem e retrato para corresponder à largura atual.</p>
+        <p>Quando o aplicativo fornece vários diretórios de recurso com valores diferentes
+          para esta configuração, o sistema usa o mais próximo (sem exceder)
+          da largura atual da tela do dispositivo.  O
+          valor aqui considera as decorações da tela. Portanto, se o dispositivo tiver alguns
+          elementos de IU persistentes na borda esquerda ou direita da tela, ele usa
+          um valor para a largura menor do que o tamanho atual da tela, considerando
+          esses elementos de IU e reduzindo o espaço disponível do aplicativo.</p>
+        <p><em>Adicionado à API de nível 13.</em></p>
+        <p>Veja também o campo de configuração {@link android.content.res.Configuration#screenWidthDp},
+          que possui a largura atual da tela.</p>
+        <p>Para obter mais informações sobre como projetar para telas diferentes e usar
+este qualificador, consulte o guia do desenvolvedor <a href="{@docRoot}guide/practices/screens_support.html">Compatibilidade com
+várias telas</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenHeightQualifier">
+      <td>Altura disponível</td>
+      <td><code>h&lt;N&gt;dp</code><br/><br/>
+        Exemplos:<br/>
+        <code>h720dp</code><br/>
+        <code>h1024dp</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>Especifica uma altura mínima disponível da tela, em unidades "dp" em que o recurso
+          deve ser usado &mdash; definido pelo valor <code>&lt;N&gt;</code>.  Este valor
+          de configuração mudará quando a orientação
+          alternar entre paisagem e retrato para corresponder à altura atual.</p>
+        <p>Quando o aplicativo fornece vários diretórios de recursos com valores diferentes
+          para esta configuração, o sistema usa o mais próximo (sem exceder)
+          da altura atual da tela do dispositivo.  O
+          valor aqui considera as decorações da tela. Portanto, se o dispositivo tiver alguns
+          elementos de IU persistentes na borda superior ou inferior da tela, ele usa
+          um valor para a altura menor do que o tamanho atual da tela, considerando
+          esses elementos da IU e reduzindo o espaço disponível do aplicativo.  As decorações da tela
+          que não forem fixas (como uma barra de status do telefone que pode ser
+          ocultada com tela cheia) <em>não</em> são consideradas aqui, assim como
+          as decorações da janela, como a barra de título ou a barra de ação. Portanto, os aplicativos devem ser preparados para
+          lidar com o espaço um pouco menor do que especificam.
+        <p><em>Adicionado à API de nível 13.</em></p>
+        <p>Veja também o campo de configuração {@link android.content.res.Configuration#screenHeightDp},
+          que possui a largura atual da tela.</p>
+        <p>Para obter mais informações sobre como projetar para telas diferentes e usar
+este qualificador, consulte o guia do desenvolvedor <a href="{@docRoot}guide/practices/screens_support.html">Compatibilidade com
+várias telas</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenSizeQualifier">
+      <td>Tamanho da tela</td>
+      <td>
+        <code>small</code><br/>
+        <code>normal</code><br/>
+        <code>large</code><br/>
+        <code>xlarge</code>
+      </td>
+      <td>
+        <ul class="nolist">
+        <li>{@code small}: Telas de tamanho semelhante
+        à tela de pouca densidade QVGA. O tamanho mínimo do layout para uma tela pequena
+        é de aproximadamente 320 x 426 unidades dp.  Exemplos são QVGA de pouca densidade e VGA de alta
+        densidade.</li>
+        <li>{@code normal}: Telas de tamanho semelhante
+        à tela de média densidade HVGA. O tamanho mínimo do layout para uma tela normal
+        é de aproximadamente 320 x 470 unidades dp.  Exemplos
+        de tais delas são as WQVGA de pouca densidade, HVGA de média densidade e WVGA
+        de alta densidade.</li>
+        <li>{@code large}: Telas de tamanho semelhante
+        à tela de média densidade VGA.
+        O tamanho mínimo do layout para uma tela grande é de aproximadamente 480 x 640 unidades dp.
+        Exemplos são as telas de densidade média VGA e WVGA.</li>
+        <li>{@code xlarge}: Telas que são consideravelmente maiores do que a
+        tela tradicional de média densidade HVGA. O tamanho mínimo do layout para uma tela muito grande
+        é de aproximadamente 720x960 unidades dp.  Na maioria dos casos, dispositivos com telas
+        muito grandes seriam grandes demais para serem carregados em bolsos e, provavelmente,
+        seriam dispositivos no estilo tablet. <em>Adicionado à API de nível 9.</em></li>
+        </ul>
+        <p class="note"><strong>Observação:</strong> usar um qualificador de tamanho não significa
+que os recursos sejam <em>apenas</em> para telas deste tamanho. Caso não forneça recursos
+alternativos com qualificadores que melhor correspondem à configuração atual do dispositivo, o sistema poderá usar
+quaisquer recursos que representarem a <a href="#BestMatch">melhor correspondência</a>.</p>
+        <p class="caution"><strong>Atenção:</strong> se todos os recursos usarem um qualificador de tamanho
+<em>maior</em> do que a tela atual, o sistema <strong>não</strong> os usará
+e o aplicativo apresentará um erro em tempo de execução (por exemplo, se todos os recursos de layout receberem tag com o qualificador {@code
+xlarge}, mas o dispositivo tiver uma tela de tamanho normal).</p>
+        <p><em>Adicionado à API de nível 4.</em></p>
+        
+        <p>Consulte <a href="{@docRoot}guide/practices/screens_support.html">Compatibilidade com
+várias telas</a> para obter mais informações.</p>
+        <p>Consulte também o campo de configuração {@link android.content.res.Configuration#screenLayout},
+que indica se a tela é pequena, normal
+ou grande.</p>
+      </td>
+    </tr>
+    <tr id="ScreenAspectQualifier">
+      <td>Aspecto da tela</td>
+      <td>
+        <code>long</code><br/>
+        <code>notlong</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code long}: Telas grandes, como WQVGA, WVGA, FWVGA</li>
+          <li>{@code notlong}: Telas que não são grandes, como QVGA, HVGA e VGA</li>
+        </ul>
+        <p><em>Adicionado à API de nível 4.</em></p>
+        <p>Isto baseia-se puramente na relação de aspecto da tela (uma tela "grande" é mais larga). Isto
+não está relacionado à orientação da tela.</p>
+        <p>Consulte também o campo de configuração {@link android.content.res.Configuration#screenLayout},
+que indica se a tela é grande.</p>
+      </td>
+    </tr>
+    <tr id="OrientationQualifier">
+      <td>Orientação da tela</td>
+      <td>
+        <code>port</code><br/>
+        <code>land</code>  <!-- <br/>
+        <code>square</code>  -->
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code port}: O dispositivo está na orientação de retrato (vertical)</li>
+          <li>{@code land}: O dispositivo está na orientação de paisagem (horizontal)</li>
+          <!-- Square mode is currently not used. -->
+        </ul>
+        <p>Isto pode mudar durante a vida útil do aplicativo se o usuário girar
+a tela. Consulte <a href="runtime-changes.html">Tratamento de alterações em tempo de execução</a> para obter informações
+sobre como isto pode afetar o aplicativo em tempo de execução.</p>
+        <p>Veja também o campo de configuração {@link android.content.res.Configuration#orientation},
+que indica a orientação atual do dispositivo.</p>
+      </td>
+    </tr>
+    <tr id="UiModeQualifier">
+      <td>Modo de IU</td>
+      <td>
+        <code>car</code><br/>
+        <code>desk</code><br/>
+        <code>television</code><br/>
+        <code>appliance</code>
+        <code>watch</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code car}: O dispositivo está exibindo em uma estação de acoplamento de carro</li>
+          <li>{@code desk}: O dispositivo está exibindo em uma estação de acoplamento de mesa</li>
+          <li>{@code television}: O dispositivo está exibindo em uma televisão, fornecendo
+          uma experiência à distância, onde a IU é em tela grande,
+          o usuário está longe, orientado principalmente por um controle direcional ou por outro tipo de
+          interação sem indicador</li>
+          <li>{@code appliance}: O dispositivo está servindo como uma aplicação,
+          sem tela</li>
+          <li>{@code watch}: O dispositivo tem uma tela que é usada no braço</li>
+        </ul>
+        <p><em>Adicionado à API de nível 8, televisão adicionada à API de nível 13 e relógio adicionado à API de nível 20.</em></p>
+        <p>Para obter informações sobre como o aplicativo pode responder quando o dispositivo é inserido
+        ou removido de um dock, consulte <a href="{@docRoot}training/monitoring-device-state/docking-monitoring.html">Determinação
+e monitoramento do tipo e do estado do dock</a>.</p>
+        <p>Isto pode mudar durante a vida útil do aplicativo se o usuário colocar o dispositivo
+em um dock. É possível ativar ou desativar alguns desses modos usando {@link
+android.app.UiModeManager}. Consulte <a href="runtime-changes.html">Tratamento de alterações em tempo de execução</a> para obter informações
+sobre como isto pode afetar o aplicativo em tempo de execução.</p>
+      </td>
+    </tr>
+    <tr id="NightQualifier">
+      <td>Modo noturno</td>
+      <td>
+        <code>night</code><br/>
+        <code>notnight</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code night}: Noite</li>
+          <li>{@code notnight}: Dia</li>
+        </ul>
+        <p><em>Adicionado à API de nível 8.</em></p>
+        <p>Isto pode mudar durante a vida útil do aplicativo se o modo noturno for deixado
+no modo automático (padrão), em que o modo altera-se com base no horário.  É possível ativar
+ou desativar este modo usando {@link android.app.UiModeManager}. Consulte <a href="runtime-changes.html">Tratamento de alterações em tempo de execução</a> para obter informações
+sobre como isto pode afetar o aplicativo em tempo de execução.</p>
+      </td>
+    </tr>
+    <tr id="DensityQualifier">
+      <td>Densidade de pixel da tela (dpi)</td>
+      <td>
+        <code>ldpi</code><br/>
+        <code>mdpi</code><br/>
+        <code>hdpi</code><br/>
+        <code>xhdpi</code><br/>
+        <code>xxhdpi</code><br/>
+        <code>xxxhdpi</code><br/>
+        <code>nodpi</code><br/>
+        <code>tvdpi</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code ldpi}: Telas de pouca densidade, aproximadamente 120 dpi.</li>
+          <li>{@code mdpi}: Telas de média densidade (em HVGA tradicional); aproximadamente
+160 dpi.</li>
+          <li>{@code hdpi}: Telas de alta densidade, aproximadamente 240 dpi.</li>
+          <li>{@code xhdpi}: Telas de densidade extra-alta, aproximadamente 320 dpi. <em>Adicionado à API de
+nível 8</em></li>
+          <li>{@code xxhdpi}: Telas de densidade extra-extra-alta, aproximadamente 480 dpi. <em>Adicionado à API de
+nível 16</em></li>
+          <li>{@code xxxhdpi}: Usos de densidade extra-extra-extra-alta (somente ícone do inicializador, consulte a 
+            <a href="{@docRoot}guide/practices/screens_support.html#xxxhdpi-note">observação</a> 
+            em <em>Compatibilidade com várias telas</em>), aproximadamente 640 dpi. <em>Adicionado à API de
+nível 18</em></li>
+          <li>{@code nodpi}: Isto pode ser usado para recursos de bitmap que você não deseja dimensionar
+para corresponder à densidade do dispositivo.</li>
+          <li>{@code tvdpi}: Telas entre mdpi e hdpi, aproximadamente 213 dpi. Não é considerado
+um grupo de densidade "principal". Geralmente usado para televisões
+e a maioria dos aplicativos não precisam &mdash; fornecer recursos mdpi e hdpi é o suficiente para a maioria dos aplicativos
+e o sistema dimensionará de forma adequada. Este qualificador foi introduzido com a API de nível 13.</li>
+        </ul>
+        <p>Há uma razão de dimensionamento de 3:4:6:8:12:16 entre as seis densidades principais (ignorando
+a densidade tvdpi). Então, um bitmap de 9 x 9 em ldpi é 12 x 12 em mdpi, 18 x 18 em hdpi, 24 x 24 em xhdpi e por aí em diante.
+</p>
+        <p>Caso decida que os recursos de imagem não parecem suficientemente bons para uma televisão
+ou outros dispositivos e queira testar recursos tvdpi, o fator de dimensionamento é 1,33*mdpi. Por exemplo:
+uma imagem de 100 px x 100 px para telas mdpi deve ser de 133 px x 133 px para tvdpi.</p>
+        <p class="note"><strong>Observação:</strong> usar um qualificador de densidade não significa
+que os recursos sejam <em>apenas</em> para telas desta densidade. Caso não forneça recursos
+alternativos com qualificadores que melhor correspondem à configuração atual do dispositivo, o sistema poderá usar
+quaisquer recursos que representarem a <a href="#BestMatch">melhor correspondência</a>.</p>
+        <p>Consulte <a href="{@docRoot}guide/practices/screens_support.html">Compatibilidade com
+várias telas</a> para obter mais informações sobre como lidar com as diferentes densidades de tela e como o Android
+pode dimensionar os bitmaps para encaixá-los na densidade atual.</p>
+       </td>
+    </tr>
+    <tr id="TouchscreenQualifier">
+      <td>Tipo de tela sensível ao toque</td>
+      <td>
+        <code>notouch</code><br/>
+        <code>finger</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code notouch}: Os dispositivos não têm uma tela sensível ao toque.</li>
+          <li>{@code finger}: O dispositivo tem uma tela sensível ao toque que destina-se
+          à interação direcional do dedo do usuário.</li>
+        </ul>
+        <p>Veja também o campo de configuração {@link android.content.res.Configuration#touchscreen},
+que indica o tipo de tela sensível ao toque no dispositivo.</p>
+      </td>
+    </tr>
+    <tr id="KeyboardAvailQualifier">
+      <td>Disponibilidade de teclado</td>
+      <td>
+        <code>keysexposed</code><br/>
+        <code>keyshidden</code><br/>
+        <code>keyssoft</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code keysexposed}: O dispositivo tem um teclado disponível. Se o dispositivo tiver um teclado de software
+ativo (o que é provável), ele deve ser usado mesmo quando o teclado de hardware
+<em>não</em> estiver exposto ao usuário, mesmo se o dispositivo não tiver teclado de hardware. Caso nenhum teclado de software
+seja fornecido ou esteja desativado, então isto será usado apenas quando um teclado de hardware
+for exposto.</li>
+          <li>{@code keyshidden}: O dispositivo tem um teclado de hardware disponível,
+mas está oculto <em>e</em> o dispositivo <em>não</em> tem um teclado de software ativo.</li>
+          <li>{@code keyssoft}: O dispositivo tem um teclado de software ativo,
+visível ou não.</li>
+        </ul>
+        <p>Se você fornecer os recursos <code>keysexposed</code>, mas não os recursos <code>keyssoft</code>,
+ o sistema usará os recursos <code>keysexposed</code> independente da visibilidade
+do teclado, contanto que o sistema tenha um teclado de software ativo.</p>
+        <p>Isto pode mudar durante a vida útil do aplicativo se o usuário abrir um teclado
+de hardware. Consulte <a href="runtime-changes.html">Tratamento de alterações em tempo de execução</a> para obter informações
+sobre como isto pode afetar o aplicativo em tempo de execução.</p>
+        <p>Veja também os campos de configuração {@link
+android.content.res.Configuration#hardKeyboardHidden} e {@link
+android.content.res.Configuration#keyboardHidden}, que indicam a visibilidade de um teclado de hardware
+e a visibilidade de qualquer tipo de teclado (incluindo software), respectivamente.</p>
+      </td>
+    </tr>
+    <tr id="ImeQualifier">
+      <td>Método principal de entrada de texto</td>
+      <td>
+        <code>nokeys</code><br/>
+        <code>qwerty</code><br/>
+        <code>12key</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nokeys}: O dispositivo não tem teclas de hardware para entradas de texto.</li>
+          <li>{@code qwerty}: O dispositivo tem um teclado QWERTY de hardware, esteja ele visível ao
+usuário
+ou não.</li>
+          <li>{@code 12key}: O dispositivo tem um teclado de hardware de 12 teclas, esteja ele visível ao usuário
+ou não.</li>
+        </ul>
+        <p>Veja também o campo de configuração {@link android.content.res.Configuration#keyboard},
+que indica o método de entrada de texto principal disponível.</p>
+      </td>
+    </tr>
+    <tr id="NavAvailQualifier">
+      <td>Disponibilidade da chave de navegação</td>
+      <td>
+        <code>navexposed</code><br/>
+        <code>navhidden</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code navexposed}: As teclas de navegação estão disponíveis para o usuário.</li>
+          <li>{@code navhidden}: As teclas de navegação não estão disponíveis (como as que ficam atrás
+de uma tampa fechada).</li>
+        </ul>
+        <p>Isto pode mudar durante a vida útil do aplicativo se o usuário revelar
+as teclas de navegação. Consulte <a href="runtime-changes.html">Tratamento de alterações em tempo de execução</a> para obter informações
+sobre como isto pode afetar o aplicativo em tempo de execução.</p>
+        <p>Consulte também o campo de configuração {@link android.content.res.Configuration#navigationHidden},
+que indica se as teclas de navegação estão ocultas.</p>
+      </td>
+    </tr>
+    <tr id="NavigationQualifier">
+      <td>Método principal de navegação sem toque</td>
+      <td>
+        <code>nonav</code><br/>
+        <code>dpad</code><br/>
+        <code>trackball</code><br/>
+        <code>wheel</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nonav}: O dispositivo não tem recursos de navegação além
+da tela sensível ao toque.</li>
+          <li>{@code dpad}: O dispositivo tem um teclado direcional (d-pad) para navegação.</li>
+          <li>{@code trackball}: O dispositivo tem um cursor de bola para navegação.</li>
+          <li>{@code wheel}: O dispositivo tem rodas direcionais para navegação (incomum).</li>
+        </ul>
+        <p>Veja também o campo de configuração {@link android.content.res.Configuration#navigation},
+que indica o tipo de método de navegação disponível.</p>
+      </td>
+    </tr>
+<!-- DEPRECATED
+    <tr>
+      <td>Screen dimensions</td>
+      <td>Examples:<br/>
+        <code>320x240</code><br/>
+        <code>640x480</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>The larger dimension must be specified first. <strong>This configuration is deprecated
+and should not be used</strong>. Instead use "screen size," "wider/taller screens," and "screen
+orientation" described above.</p>
+      </td>
+    </tr>
+-->
+    <tr id="VersionQualifier">
+      <td>Versão da plataforma (nível de API)</td>
+      <td>Exemplos:<br/>
+        <code>v3</code><br/>
+        <code>v4</code><br/>
+        <code>v7</code><br/>
+        etc.</td>
+      <td>
+        <p>O nível de API suportado pelo dispositivo. Por exemplo, <code>v1</code> para a API de nível 1
+(dispositivos com Android 1.0 ou mais recente) e <code>v4</code> para API de nível 4 (dispositivos com Android
+1.6 ou mais recente). Veja o documento <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Níveis de API do Android</a> para obter mais informações
+sobre esses valores.</p>
+      </td>
+    </tr>
+</table>
+
+
+<p class="note"><strong>Observação:</strong> alguns qualificadores de configuração foram adicionados desde o Android 1.0,
+ então nem todas as versões do Android suportam todos eles. Usar um novo qualificador
+adiciona implicitamente um qualificador da versão de plataforma, então dispositivos mais antigos com certeza o ignorarão. Por exemplo, usar
+um qualificador <code>w600dp</code> incluirá automaticamente o qualificador <code>v13</code>,
+pois o qualificador de largura disponível era novo na API de nível 13. Para evitar quaisquer problemas, sempre inclua um conjunto
+de recursos padrão (um conjunto de recursos <em>sem qualificadores</em>). Para obter mais informações, consulte
+a seção <a href="#Compatibility">Fornecimento da melhor compatibilidade de dispositivo com
+recursos</a>.</p>
+
+
+
+<h3 id="QualifierRules">Regras de nome do qualificador</h3>
+
+<p>A seguir há algumas regras sobre como usar nomes de qualificador de configuração:</p>
+
+<ul>
+    <li>É possível especificar vários qualificadores para um único conjunto de recursos, separados por travessões. Por exemplo,
+<code>drawable-en-rUS-land</code> aplica-se aos dispositivos em inglês dos E.U.A.
+na orientação de paisagem.</li>
+    <li>Os qualificador devem estar na ordem listada na <a href="#table2">tabela 2</a>. Por
+exemplo:
+      <ul>
+        <li>Incorreto: <code>drawable-hdpi-port/</code></li>
+        <li>Correto: <code>drawable-port-hdpi/</code></li>
+      </ul>
+    </li>
+    <li>Os diretórios de recursos alternativos não podem ser aninhados. Por exemplo, não é possível ter
+<code>res/drawable/drawable-en/</code>.</li>
+    <li>Os valores não diferenciam letras maiúsculas e minúsculas.  O compilador de recursos converte nomes de diretório
+    para letras minúsculas antes de processar para evitar problemas nos sistemas de arquivo
+    que não diferenciam maiúsculas e minúsculas. Qualquer letra maiúscula nos nomes é apenas para o benefício da leitura.</li>
+    <li>Somente um valor para cada tipo de qualificador é suportado. Por exemplo, se quiser usar
+os mesmos arquivos desenháveis para Espanha e França, <em>não</em> é possível ter um diretório chamado 
+<code>drawable-rES-rFR/</code>. Em vez disso, você precisa de dois diretórios de recursos, como
+<code>drawable-rES/</code> e <code>drawable-rFR/</code>, que contenham arquivos adequados.
+No entanto, não é necessário duplicar os mesmos arquivos em ambos os locais. Em vez disso,
+é possível criar um alias para um recurso. Consulte <a href="#AliasResources">Criação de recursos
+de alias</a> abaixo.</li>
+</ul>
+
+<p>Após salvar os recursos alternativos nos diretórios nomeados
+com esses qualificadores, o Android aplicará automaticamente os recursos no aplicativo com base
+na configuração atual do dispositivo. Sempre que um recurso for solicitado, o Android verificará diretórios de recursos alternativos
+que contenham o arquivo de recurso solicitado e, em seguida,<a href="#BestMatch">encontrará o melhor
+recurso correspondente</a> (discutido abaixo). Se não houver recursos alternativos que correspondam
+a uma configuração de dispositivo específica, o Android usará os recursos padrão correspondentes
+(o conjunto de recursos para um tipo de recurso específico que não inclua um qualificador
+de configuração).</p>
+
+
+
+<h3 id="AliasResources">Criação de recursos de alias</h3>
+
+<p>Quando estiver com um recurso que gostaria de usar para mais
+de uma configuração de dispositivo, mas não quer fornecê-lo como um recurso padrão), não será necessário usar o mesmo
+recurso em mais de um diretório de recursos alternativos. Em vez disso, é possível (em alguns casos) criar um
+recurso
+alternativo que age como um alias para um recurso salvo no diretório de recurso padrão.</p>
+
+<p class="note"><strong>Observação:</strong> nem todos os recursos oferecem um mecanismo que possibilita
+criar um alias para outro recurso. Em particular, recursos de animação, de menu, brutos
+e de outros tipos no diretório {@code xml/} não oferecem esta função.</p>
+
+<p>Por exemplo, imagine que você possui um ícone do aplicativo, {@code icon.png}, e precisa da versão exclusiva
+para diferentes localidades. No entanto, duas localidades, inglês canadense e francês canadense,
+precisam usar a mesma versão. Você pode presumir que precisa copiar a mesma imagem
+para o diretório do recurso do inglês canadense e do francês canadense,
+mas não é verdade. Em vez disso, é possível salvar a imagem que é usada para ambos como {@code icon_ca.png} (qualquer
+nome que não seja {@code icon.png}) e colocá-la
+no diretório {@code res/drawable/} padrão. Em seguida, crie um arquivo {@code icon.xml} em {@code
+res/drawable-en-rCA/} e em {@code res/drawable-fr-rCA/} que mencione o recurso {@code icon_ca.png}
+usando o elemento {@code &lt;bitmap&gt;}. Isto permite que você armazene apenas uma versão do arquivo
+PNG e dois arquivos XML pequenos que apontam para ele. (Um exemplo de arquivo XML é exibido abaixo)</p>
+
+
+<h4>Desenhável</h4>
+
+<p>Para criar um alias para um desenhável existente, use o elemento {@code &lt;bitmap&gt;}.
+Por exemplo:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/icon_ca" />
+</pre>
+
+<p>Se salvar esse arquivo como {@code icon.xml} (em um diretório de recursos alternativos,
+como {@code res/drawable-en-rCA/}), ele será compilado em um recurso
+que pode ser mencionado como {@code R.drawable.icon}, mas é um alias para o recurso {@code
+R.drawable.icon_ca}, que é salvo em{@code res/drawable/}.</p>
+
+
+<h4>Layout</h4>
+
+<p>Para criar um alias para um layout existente, use o elemento {@code &lt;include&gt;}
+, agrupado em um {@code &lt;merge&gt;}. Por exemplo:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;merge>
+    &lt;include layout="@layout/main_ltr"/>
+&lt;/merge>
+</pre>
+
+<p>Se salvar esse arquivo como {@code main.xml}, ele será compilado em um recurso
+que pode ser mencionado como {@code R.layout.main}, mas é um alias para o recurso {@code R.layout.main_ltr}
+.</p>
+
+
+<h4>Strings e outros valores simples</h4>
+
+<p>Para criar um alias para uma string existente, basta usar o ID de recurso da string
+desejado como o valor para a nova string. Por exemplo:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;string name="hello">Hello&lt;/string>
+    &lt;string name="hi">@string/hello&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>O recurso {@code R.string.hi} é agora um alias para {@code R.string.hello}.</p>
+
+<p> <a href="{@docRoot}guide/topics/resources/more-resources.html">Outros valores simples</a> funcionam
+da mesma forma. Por exemplo, uma cor:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;color name="yellow">#f00&lt;/color>
+    &lt;color name="highlight">@color/red&lt;/color>
+&lt;/resources>
+</pre>
+
+
+
+
+<h2 id="Compatibility">Fornecimento da melhor compatibilidade de dispositivo com recursos</h2>
+
+<p>Para o aplicativo suportar várias configurações de dispositivo, é muito importante
+que você sempre forneça recursos padrão para cada tipo de recurso que o aplicativo usar.</p>
+
+<p>Por exemplo, se o aplicativo suportar vários idiomas, sempre inclua um diretório {@code
+values/} (em que as strings sejam salvas) <em>sem</em> um <a href="#LocaleQualifier">qualificador de região e idioma</a>. Se colocar todos os arquivos de string
+em diretórios que têm qualificadores de região e idioma, o aplicativo apresentará erros ao entrar em execução
+em dispositivo configurado para um idioma que as strings não suportem. Mas, contanto que você forneça recursos
+{@code values/} padrão, o aplicativo será executado sem problemas (mesmo que o usuário
+não entenda o idioma &mdash; é melhor do que apresentar erros).</p>
+
+<p>Do mesmo modo, se você fornecer recursos de layout diferentes com base na orientação da tela, deve
+escolher uma orientação como a padrão. Por exemplo, em vez de fornecer recursos de layout em {@code
+layout-land/} para paisagem e {@code layout-port/} para retrato, deixe uma como padrão, como
+{@code layout/} para paisagem e {@code layout-port/} para retrato.</p>
+
+<p>Fornecer recursos padrão é importante não só porque o aplicativo pode ser executado
+em uma configuração que você não tenha antecipado, mas também as novas versões do Android, às vezes, adicionam
+qualificadores de configuração que as versões mais antigas não suportam. Se usar um novo qualificador de recurso,
+mas mantiver a compatibilidade do código com versões mais antigas do Android, quando uma versão mais antiga
+do Android executar seu aplicativo, ocorrerá um erro caso você não forneça os recursos padrão, pois ele
+não poderá usar os recursos nomeados com o novo qualificador. Por exemplo, se <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
+minSdkVersion}</a> estiver definido como 4 e você qualificar todos os recursos desenháveis usando o <a href="#NightQualifier">modo noturno</a> ({@code night} ou {@code notnight}, que foram adicionados à API de nível 8),
+então o dispositivo com API de nível 4 não poderá acessar os recursos desenháveis e apresentará erro. Neste caso,
+você provavelmente quererá que {@code notnight} seja o recurso padrão, então deverá excluir esse qualificador
+para que os recursos desenháveis fiquem em {@code drawable/} ou {@code drawable-night/}.</p>
+
+<p>Então, para fornecer a melhor compatibilidade de dispositivo, sempre forneça os recursos
+padrão para os recursos imprescindíveis para o aplicativo para obter o desempenho adequado. Em seguida,
+crie recursos para configurações específicas de dispositivo usando os qualificadores de configuração.</p>
+
+<p>Há uma exceção a esta regra: Se a <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> do aplicativo for 4
+ou maior, você <em>não</em> precisará de recursos desenháveis padrão ao fornecer recursos desenháveis alternativos
+com o qualificador de <a href="#DensityQualifier">densidade da tela</a>. Mesmo sem os recursos desenháveis
+padrão, o Android poderá encontrar a melhor correspondência dentre as densidades de tela alternativas e dimensionar
+os bitmaps conforme necessário. No entanto, para obter a melhor experiência em todos os tipos de dispositivo,
+você deve fornecer desenháveis alternativos para todos os três tipos de densidade.</p>
+
+
+
+<h2 id="BestMatch">Como o Android encontra o melhor recurso correspondente</h2>
+
+<p>Ao solicitar um recurso para o qual você fornece alternativas, o Android seleciona
+quais recursos alternativos usar em tempo de execução, dependendo da configuração do dispositivo atual. Para demonstrar
+como o Android seleciona um recurso alternativo, presuma que os seguintes diretórios desenháveis
+contenham versões diferentes das mesmas imagens:</p>
+
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+drawable-fr-rCA/
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+
+<p>E presuma que a configuração do dispositivo é a seguinte:</p>
+
+<p style="margin-left:1em;">
+Localidade = <code>en-GB</code> <br/>
+Orientação da tela = <code>port</code> <br/>
+Densidade de pixel da tela = <code>hdpi</code> <br/>
+Tipo de tela sensível ao toque = <code>notouch</code> <br/>
+Método principal de entrada de texto = <code>12key</code>
+</p>
+
+<p>Ao comparar a configuração do dispositivo com os recursos alternativos disponíveis, o Android seleciona
+desenháveis de {@code drawable-en-port}.</p>
+
+<p>O sistema chega à conclusão de quais recursos deve usar
+com a seguinte lógica:</p>
+
+
+<div class="figure" style="width:371px">
+<img src="{@docRoot}images/resources/res-selection-flowchart.png" alt="" height="471" />
+<p class="img-caption"><strong>Figura 2.</strong> Fluxograma de como o Android
+encontra o melhor recurso correspondente.</p>
+</div>
+
+
+<ol>
+  <li>Elimine os arquivos de recurso que contradizem a configuração do dispositivo.
+    <p>O diretório <code>drawable-fr-rCA/</code> é eliminado,
+pois contradiz a localidade <code>en-GB</code>.</p>
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+<strike>drawable-fr-rCA/</strike>
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+<p class="note"><strong>Exceção:</strong> a densidade de pixel da tela é a que o qualificador
+não eliminou devido a uma contradição. Apesar de a densidade da tela do dispositivo ser hdpi,
+<code>drawable-port-ldpi/</code> não é eliminado, pois todas as densidades de telas
+são consideradas uma correspondência neste ponto. Obtenha mais informações no documento <a href="{@docRoot}guide/practices/screens_support.html">Compatibilidade com
+várias telas</a>.</p></li>
+
+  <li>Escolha o (próximo) qualificador de maior precedência na lista (<a href="#table2">tabela 2</a>).
+(Comece com MCC e, em seguida, siga para baixo.) </li>
+  <li>Algum dos diretórios de recurso incluem este qualificador?  </li>
+    <ul>
+      <li>Se não, volte à etapa 2 e veja o próximo qualificador. (Neste exemplo,
+  a resposta é "não" até que o qualificador de idioma seja alcançado.)</li>
+      <li>Se sim, prossiga para a etapa 4.</li>
+    </ul>
+  </li>
+
+  <li>Elimine os diretórios de recurso que não incluem este qualificador. No exemplo, o sistema
+elimina todos os diretórios que não incluem um qualificador de idioma:</li>
+<pre class="classic no-pretty-print">
+<strike>drawable/</strike>
+drawable-en/
+drawable-en-port/
+drawable-en-notouch-12key/
+<strike>drawable-port-ldpi/</strike>
+<strike>drawable-port-notouch-12key/</strike>
+</pre>
+<p class="note"><strong>Exceção:</strong> se o qualificador em questão for a densidade de pixel da tensidade da tela
+do dispositivo de forma mais aproximada.
+Geralmente, o Android prefere dimensionar uma imagem original maior
+em vez de uma maior. Consulte <a href="{@docRoot}guide/practices/screens_support.html">Compatibilidade com
+várias telas</a>.</p>
+  </li>
+
+  <li>Volte e repita as etapas 2, 3 e 4 até que reste apenas um diretório. No exemplo, a orientação da tela
+é o próximo qualificador, onde há várias correspondências.
+Portanto, os recursos que não especificarem uma orientação de tela serão eliminados:
+<pre class="classic no-pretty-print">
+<strike>drawable-en/</strike>
+drawable-en-port/
+<strike>drawable-en-notouch-12key/</strike>
+</pre>
+<p>O diretório restante é {@code drawable-en-port}.</p>
+  </li>
+</ol>
+
+<p>Apesar de este processo ser executado para cada recurso solicitado, o sistema posteriormente aprimora
+alguns aspectos. Tal otimização, quando a configuração do dispositivo é conhecida,
+pode eliminar os recursos alternativos que nunca correspondem. Por exemplo, se o idioma
+da configuração for inglês ("en"), então qualquer diretório de recurso que tiver um qualificador de idioma definido para
+outro idioma que não seja inglês nunca será incluído no conjunto de recursos verificados (apesar de um
+diretório de recursos <em>sem</em> o qualificador de idioma ainda ser incluído).</p>
+
+<p>Ao selecionar os recursos com base nos qualificadores de tamanho da tela, o sistema usará os recursos
+projetados para uma tela menor do que a tela atual, caso não tenha recursos que correspondam de forma mais eficaz
+(por exemplo: uma tela de tamanho grande usará os recursos de tela de tamanho normal se necessário). No entanto,
+se os únicos recursos disponíveis forem <em>maiores</em> do que a tela atual, o sistema
+<strong>não</strong> os usará e o aplicativo apresentará erros se nenhum outro recurso corresponder à configuração
+do dispositivo (por exemplo, se todos os recursos de layout estiverem com a tag do qualificador {@code xlarge},
+mas o dispositivo tiver uma tela de tamanho normal).</p>
+
+<p class="note"><strong>Observação:</strong> a <em>precedência</em> do qualificador (na <a href="#table2">tabela 2</a>) é mais importante
+do que o número de qualificadores que correspondem exatamente ao dispositivo. Por exemplo, na etapa 4 acima, a última
+escolha na lista inclui três qualificadores que correspondem exatamente ao dispositivo (orientação, tipo de
+tela sensível ao toque e método de entrada), enquanto que <code>drawable-en</code> possui apenas um parâmetro que corresponde
+(idioma). No entanto, o idioma tem uma precedência maior que esses outros qualificadores, então 
+<code>drawable-port-notouch-12key</code> está fora.</p>
+
+<p>Para obter mais informações sobre como usar os recursos no aplicativo, acesse <a href="accessing-resources.html">Acesso aos recursos</a>.</p>
diff --git a/docs/html-intl/intl/pt-br/guide/topics/resources/runtime-changes.jd b/docs/html-intl/intl/pt-br/guide/topics/resources/runtime-changes.jd
new file mode 100644
index 0000000..366ce0d
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/resources/runtime-changes.jd
@@ -0,0 +1,281 @@
+page.title=Tratar alterações no tempo de execução
+page.tags=atividade,ciclo de vida
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>Neste documento</h2>
+  <ol>
+    <li><a href="#RetainingAnObject">Retenção de um objeto durante uma alteração de configuração</a></li>
+    <li><a href="#HandlingTheChange">Tratar você mesmo da alteração de configuração</a>
+  </ol>
+
+  <h2>Veja também</h2>
+  <ol>
+    <li><a href="providing-resources.html">Fornecimento de recursos</a></li>
+    <li><a href="accessing-resources.html">Acesso aos recursos</a></li>
+    <li><a href="http://android-developers.blogspot.com/2009/02/faster-screen-orientation-change.html">Alteração
+mais rápida da orientação da tela</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Algumas configurações do dispositivo podem mudar durante o tempo de execução
+(como orientação de tela, disponibilidade do teclado e idioma). Quando ocorre uma alteração,
+o Android precisa reiniciar a execução
+de {@link android.app.Activity} ({@link android.app.Activity#onDestroy()} é chamado, seguido de {@link
+android.app.Activity#onCreate(Bundle) onCreate()}). O comportamento de reinício foi projetado para ajudar
+o aplicativo a se adaptar a novas configurações recarregando automaticamente o aplicativo
+com recursos alternativos que correspondam com a configuração do dispositivo.</p>
+
+<p>Para tratar adequadamente um reinício, é importante que a atividade se restaure
+ao estado anterior por meio do <a href="{@docRoot}guide/components/activities.html#Lifecycle">ciclo de vida
+da atividade</a>, no qual o Android chama
+{@link android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} antes de destruir
+a atividade para que seja possível salvar os dados acerca do estado do aplicativo. Em seguida, é possível restaurar o estado
+durante {@link android.app.Activity#onCreate(Bundle) onCreate()} ou {@link
+android.app.Activity#onRestoreInstanceState(Bundle) onRestoreInstanceState()}.</p>
+
+<p>Para testar se o aplicativo se reinicia com o estado de aplicativo intacto, deve-se
+invocar as alterações de configuração (como alterações na orientação da tela) enquanto executa diversas
+tarefas no aplicativo. O aplicativo deve ser capaz de reiniciar a qualquer momento sem perda
+de dados do usuário ou estado para tratar eventos como alterações de configuração ou quando o usuário recebe
+uma chamada telefônica e, em seguida, retorna ao aplicativo bem depois
+de destruído o processo do aplicativo. Para ver como restaurar o estado da atividade, leia sobre o <a href="{@docRoot}guide/components/activities.html#Lifecycle">Ciclo de vida da atividade</a>.</p>
+
+<p>No entanto, pode-se encontrar uma situação em que o reinício do aplicativo
+e a restauração representem quantidades significativas de dados que podem ser custosos e prejudicar a experiência do usuário. Nessa situação,
+temos duas opções:</p>
+
+<ol type="a">
+  <li><a href="#RetainingAnObject">Reter um objeto durante uma alteração de configuração</a>
+  <p>Permita que a atividade reinicie quando uma configuração muda, mas transporte um objeto
+de estado para a nova instância da atividade.</p>
+
+  </li>
+  <li><a href="#HandlingTheChange">Tratar você mesmo da alteração de configuração</a>
+  <p>Evite que o sistema reinicie a atividade durante certas alterações
+de configuração, mas receba um retorno de chamada quando as configurações se alteram, para que você atualize manualmente
+a atividade conforme necessário.</p>
+  </li>
+</ol>
+
+
+<h2 id="RetainingAnObject">Retenção de um objeto durante uma alteração de configuração</h2>
+
+<p>Se a retenção da atividade exigir a recuperação de grandes conjuntos de dados, restabelecer uma conexão
+de rede ou executar outras operações intensivas, um reinício completo devido a uma alteração
+de configuração pode prejudicar a experiência do usuário. Além disso, pode não ser possível restaurar completamente
+o estado da atividade com o {@link android.os.Bundle} que o sistema salva com o retorno de chamada {@link
+android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} &mdash; ele
+não foi projetado para transportar objetos grandes (como bitmaps) e os dados contidos devem ser serializados
+e, em seguida, desserializados, o que pode consumir muita memória e retardar a alteração de configuração. Nesse caso,
+para aliviar o peso de reinicializar a atividade, pode-se reter um {@link
+android.app.Fragment} quando a atividade for reiniciada devido a uma alteração de configuração. Esse fragmento
+pode conter referências a objetos com estado que seja preciso reter.</p>
+
+<p>Quando o sistema Android encerra a atividade devido a uma alteração de configuração, os fragmentos
+da atividade marcados para serem retidos não são destruídos. É possível adicionar esses fragmentos
+à atividade para preservar objetos de estado.</p>
+
+<p>Para reter objetos de estado em um fragmento durante uma alteração de configuração em tempo de execução:</p>
+
+<ol>
+  <li>Estenda a classe {@link android.app.Fragment} e declare referências aos objetos
+de estado.</li>
+  <li>Chame {@link android.app.Fragment#setRetainInstance(boolean)} quando o fragmento for criado.
+      </li>
+  <li>Acrescente o fragmento à atividade.</li>
+  <li>Use {@link android.app.FragmentManager} para recuperar o fragmento quando a atividade for
+reiniciada.</li>
+</ol>
+
+<p>Por exemplo: defina o fragmento da seguinte forma:</p>
+
+<pre>
+public class RetainedFragment extends Fragment {
+
+    // data object we want to retain
+    private MyDataObject data;
+
+    // this method is only called once for this fragment
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // retain this fragment
+        setRetainInstance(true);
+    }
+
+    public void setData(MyDataObject data) {
+        this.data = data;
+    }
+
+    public MyDataObject getData() {
+        return data;
+    }
+}
+</pre>
+
+<p class="caution"><strong>Atenção:</strong> ao restaurar qualquer objeto,
+não se deve nunca passar um objeto vinculado a {@link android.app.Activity}, como um {@link
+android.graphics.drawable.Drawable}, um {@link android.widget.Adapter}, um {@link android.view.View}
+ou qualquer outro objeto associado a um {@link android.content.Context}. Se o fizer,
+ele vazará todas as vistas e recursos da instância da atividade original (vazar recursos
+significa que o aplicativo mantém a retenção deles, que não podem ser recolhidos, o que
+causa perda de memória).</p>
+
+<p>Em seguida, use {@link android.app.FragmentManager} para adicionar o fragmento à atividade. 
+É possível obter o objeto de dados do fragmento quando a atividade reiniciar durante as alterações
+de configuração em tempo de execução. Por exemplo: defina a atividade da seguinte forma:</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    private RetainedFragment dataFragment;
+
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+
+        // find the retained fragment on activity restarts
+        FragmentManager fm = getFragmentManager();
+        dataFragment = (DataFragment) fm.findFragmentByTag(“data”);
+
+        // create the fragment and data the first time
+        if (dataFragment == null) {
+            // add the fragment
+            dataFragment = new DataFragment();
+            fm.beginTransaction().add(dataFragment, “data”).commit();
+            // load the data from the web
+            dataFragment.setData(loadMyData());
+        }
+
+        // the data is available in dataFragment.getData()
+        ...
+    }
+
+    &#64;Override
+    public void onDestroy() {
+        super.onDestroy();
+        // store the data in the fragment
+        dataFragment.setData(collectMyLoadedData());
+    }
+}
+</pre>
+
+<p>Nesse exemplo, {@link android.app.Activity#onCreate(Bundle) onCreate()} adiciona um fragmento
+ou restaura uma referência a ele. {@link android.app.Activity#onCreate(Bundle) onCreate()} também
+armazena o objeto de estado dentro da instância de fragmento.
+{@link android.app.Activity#onDestroy() onDestroy()} atualiza o objeto de estado dentro
+da instância de fragmento retida.</p>
+
+
+
+
+
+<h2 id="HandlingTheChange">Tratar você mesmo da alteração de configuração</h2>
+
+<p>Se o aplicativo não tiver que atualizar recursos durante uma alteração de configuração específica
+<em>e</em> se houver alguma limitação de desempenho que
+impeça a atividade de reiniciar, pode-se declarar que a atividade trata ela mesma da alteração de configuração,
+o que evita que o sistema reinicie a atividade.</p>
+
+<p class="note"><strong>Observação:</strong> Tratar você mesmo da alteração de configuração
+pode dificultar muito o uso de recursos alternativos, pois o sistema não os aplicará
+automaticamente. Esta técnica deve ser considerada um último recurso, quando é preciso evitar reinícios
+devido a uma alteração de configuração e não é recomendada para a maioria dos aplicativos.</p>
+
+<p>Para declarar que a atividade manipula uma alteração de configuração, edite o elemento <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+apropriado no arquivo de manifesto para que inclua o atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> com um valor que represente a configuração
+a tratar. Os valores possíveis estão listados na documentação do atributo <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> (os valores mais comumente usados são {@code "orientation"}, para
+impedir reinícios durante alterações na orientação da tela, e {@code "keyboardHidden"} para impedir
+reinícios quando a disponibilidade do teclado muda).  Para declarar vários valores de configuração
+no atributo, usa-se um separador na forma de caractere barra reta {@code |}.</p>
+
+<p>Por exemplo: o código de manifesto a seguir declara uma atividade que trata tanto
+da alteração de orientação da tela quanto da disponibilidade do teclado:</p>
+
+<pre>
+&lt;activity android:name=".MyActivity"
+          android:configChanges="orientation|keyboardHidden"
+          android:label="@string/app_name">
+</pre>
+
+<p>Agora, quando uma dessas configurações mudar, {@code MyActivity} não reiniciará.
+Em vez disso, a {@code MyActivity} recebe uma chamada para {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}. Um objeto
+{@link android.content.res.Configuration} é passado a esse método e especifica
+a nova configuração do dispositivo. Ao ler os campos em {@link android.content.res.Configuration},
+pode-se determinar a nova configuração e atualizar os recursos na interface para fazer
+as alterações adequadas. No momento
+em que o método é chamado, o objeto {@link android.content.res.Resources} da atividade é atualizado
+para retornar recursos com base na nova configuração, o que facilita
+a redefinição de elementos da IU sem que o sistema reinicie a atividade.</p>
+
+<p class="caution"><strong>Atenção:</strong> a partir do Android 3.2 (nível da API 13), <strong>o "tamanho
+da tela" também muda</strong> quando o dispositivo alterna entre as orientações retrato
+e paisagem. Assim, se você deseja evitar que o tempo de execução reinicie devido a uma mudança da orientação
+ao desenvolver uma API nível 13 ou posterior (conforme declarado pelos atributos <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> e <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>),
+é preciso incluir o valor {@code "screenSize"} além do valor {@code
+"orientation"}. Ou seja, é preciso declarar {@code
+android:configChanges="orientation|screenSize"}. No entanto, se o aplicativo tem como alvo uma API nível
+12 ou inferior, a atividade sempre trata ela mesma a alteração de configuração (essa mudança
+de configuração não reinicia a atividade, mesmo em execução em Android 3.2 ou dispositivo posterior).</p>
+
+<p>Por exemplo: a implementação a seguir {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} verifica
+a orientação de dispositivo atual:</p>
+
+<pre>
+&#64;Override
+public void onConfigurationChanged(Configuration newConfig) {
+    super.onConfigurationChanged(newConfig);
+
+    // Checks the orientation of the screen
+    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
+        Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
+    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
+        Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
+    }
+}
+</pre>
+
+<p>O objeto {@link android.content.res.Configuration} representa todas as configurações
+atuais, não somente as que foram alteradas. Na maior parte do tempo, não importa como
+a configuração foi alterada; basta reatribuir todos os recursos que apresentam alternativas
+à configuração que estão sendo tratadas. Por exemplo: como o objeto {@link
+android.content.res.Resources} está atualizado, pode-se redefinir
+qualquer {@link android.widget.ImageView} com {@link android.widget.ImageView#setImageResource(int)
+setImageResource()}
+e será usado o recurso adequado à nova configuração (conforme descrito em <a href="providing-resources.html#AlternateResources">Como fornecer recursos</a>).</p>
+
+<p>Observe que os valores dos campos de {@link
+android.content.res.Configuration} são inteiros que correspondem a constantes específicas
+da classe {@link android.content.res.Configuration}. Para ver a documentação sobre as constantes
+a usar em cada campo, consulte o campo em questão na referência sobre {@link
+android.content.res.Configuration}.</p>
+
+<p class="note"><strong>Lembre-se:</strong> ao declarar a atividade para tratar uma alteração
+de configuração, você é responsável por redefinir todos os elementos que fornecem alternativas. Se você
+declarar a atividade para tratar a alteração de orientação e tiver imagens que alterariam
+entre paisagem e retrato, é preciso reatribuir cada recurso a cada elemento durante {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}.</p>
+
+<p>Se não for necessário atualizar o aplicativo com base nessas alterações
+de configuração, pode-se <em>não</em> implementar {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}. Nesse
+caso, todos os recursos usados antes da alteração de configuração ainda são usados
+e somente o reinício da atividade é evitado. No entanto, o aplicativo deve sempre ser capaz
+de se encerrar e reiniciar com seu estado anterior intacto, portanto essa técnica não deve
+ser considerada uma fuga da retenção do estado durante o ciclo de vida normal da atividade, Não somente porque
+há outras alterações de configuração impossíveis de evitar que reiniciem o aplicativo,
+mas também porque devem-se tratar eventos como o do usuário que sai do aplicativo e ele é destruído
+antes de o usuário voltar a ele.</p>
+
+<p>Para obter mais informações sobre as alterações de configuração que devem ser tratadas na atividade, consulte a documentação sobre <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> e a classe
+{@link android.content.res.Configuration}.</p>
diff --git a/docs/html-intl/intl/pt-br/guide/topics/ui/controls.jd b/docs/html-intl/intl/pt-br/guide/topics/ui/controls.jd
new file mode 100644
index 0000000..58a4fcd
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/ui/controls.jd
@@ -0,0 +1,90 @@
+page.title=Controles de entrada
+parent.title=Interface do usuário
+parent.link=index.html
+@jd:body
+
+<div class="figure" style="margin:0">
+  <img src="{@docRoot}images/ui/ui-controls.png" alt="" style="margin:0" />
+</div>
+
+<p>Controles de entrada são os componentes interativos na interface do usuário de seu aplicativo. O Android oferece
+uma ampla variedade de controles que podem ser usados na IU, como botões, campos de texto, barras de busca,
+caixas de seleção, botões de zoom, botões de alternância e muito mais.</p>
+
+<p>Adicionar um controle de entrada à IU é tão simples quanto adicionar um elemento XML ao <a href="{@docRoot}guide/topics/ui/declaring-layout.html">layout XML</a>. Por exemplo, a seguir apresenta-se
+um layout com um campo de texto e um botão:</p>
+
+<pre style="clear:right">
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+    android:orientation="horizontal">
+    &lt;EditText android:id="@+id/edit_message"
+        android:layout_weight="1"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:hint="@string/edit_message" />
+    &lt;Button android:id="@+id/button_send"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/button_send"
+        android:onClick="sendMessage" />
+&lt;/LinearLayout>
+</pre>
+
+<p>Cada controle de entrada tem suporte para um conjunto específico de eventos de entrada, portanto, você pode tratar eventos como quando
+o usuário digita texto ou toca em um botão.</p>
+
+
+<h2 id="CommonControls">Controles comuns</h2>
+<p>A seguir há uma lista de alguns controles comuns que você pode usar no aplicativo. Siga os links para saber
+mais sobre o uso de cada um.</p>
+
+<p class="note"><strong>Observação:</strong> o Android fornece muitos outros controles além dos listados
+aqui. Navegue no pacote {@link android.widget} para descobrir mais. Se o aplicativo precisa
+de um tipo específico de controle de entrada, você pode criar os próprios <a href="{@docRoot}guide/topics/ui/custom-components.html">componentes personalizados</a>.</p>
+
+<table>
+    <tr>
+        <th scope="col">Tipo de controle</th>
+        <th scope="col">Descrição</th>
+	<th scope="col">Classes relacionadas</th>
+    </tr>
+    <tr>
+        <td><a href="controls/button.html">Botão</a></td>
+        <td>Um botão de pressão que pode ser pressionado ou clicado pelo usuário para realizar uma ação.</td>
+	<td>{@link android.widget.Button Button} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/text.html">Campo de texto</a></td>
+        <td>Um campo de texto editável. É possível usar o widget <code>AutoCompleteTextView</code> para criar um widget de entrada de texto que forneça sugestões para preenchimento automático</td>
+	<td>{@link android.widget.EditText EditText}, {@link android.widget.AutoCompleteTextView}</td>
+    </tr>
+    <tr>
+        <td><a href="controls/checkbox.html">Caixa de seleção</a></td>
+        <td>Uma chave liga/desliga que pode ser alternada pelo usuário. Use caixas de seleção ao apresentar aos usuários um grupo de opções selecionáveis que não sejam mutualmente exclusivas.</td>
+	<td>{@link android.widget.CheckBox CheckBox} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/radiobutton.html">Botão de opção</a></td>
+        <td>Similar às caixas de seleção, exceto que somente uma opção pode ser selecionada no grupo.</td>
+	<td>{@link android.widget.RadioGroup RadioGroup} 
+	<br>{@link android.widget.RadioButton RadioButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/togglebutton.html" style="white-space:nowrap">Botão de alternância</a></td>
+        <td>Um botão liga/desliga com um indicador de luz.</td>
+	<td>{@link android.widget.ToggleButton ToggleButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/spinner.html">Controle giratório</a></td>
+        <td>Uma lista suspensa que permite que os usuários selecionem um valor de um conjunto.</td>
+	<td>{@link android.widget.Spinner Spinner} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/pickers.html">Seletores</a></td>
+        <td>Uma caixa de diálogo para que os usuários selecionem um valor para um conjunto usando botões para cima/para baixo ou via gesto de deslizar. Use um widget <code>DatePicker</code>code&gt; para inserir os valores para a data (mês, dia, ano) ou um widget <code>TimePicker</code> para inserir valores para um horário (hora, minuto, AM/PM), que será formatado automaticamente para a localidade do usuário.</td>
+	<td>{@link android.widget.DatePicker}, {@link android.widget.TimePicker}</td>
+    </tr>
+</table>
diff --git a/docs/html-intl/intl/pt-br/guide/topics/ui/declaring-layout.jd b/docs/html-intl/intl/pt-br/guide/topics/ui/declaring-layout.jd
new file mode 100644
index 0000000..09dbd2c
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/ui/declaring-layout.jd
@@ -0,0 +1,492 @@
+page.title=Layouts
+page.tags=vista,grupodevistas
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Neste documento</h2>
+<ol>
+  <li><a href="#write">Programação do XML</a></li>
+  <li><a href="#load">Carregamento do recurso XML</a></li>
+  <li><a href="#attributes">Atributos</a>
+    <ol>
+      <li><a href="#id">ID</a></li>
+      <li><a href="#layout-params">Parâmetros do layout</a></li>
+    </ol>
+  </li>
+  <li><a href="#Position">Posição do layout</a></li>
+  <li><a href="#SizePaddingMargins">Tamanho, preenchimento e margens</a></li>
+  <li><a href="#CommonLayouts">Layouts comuns</a></li>
+  <li><a href="#AdapterViews">Criação de layouts com um adaptador</a>
+    <ol>
+      <li><a href="#FillingTheLayout">Preenchimento da vista de um adaptador com dados</a></li>
+      <li><a href="#HandlingUserSelections">Tratamento de eventos de clique</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>Classes principais</h2>
+  <ol>
+    <li>{@link android.view.View}</li>
+    <li>{@link android.view.ViewGroup}</li>
+    <li>{@link android.view.ViewGroup.LayoutParams}</li>
+  </ol>
+
+  <h2>Veja também</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/firstapp/building-ui.html">Construção de uma interface do usuário
+simples</a></li> </div>
+</div>
+
+<p>O layout define a estrutura visual para uma interface do usuário, como a IU de uma <a href="{@docRoot}guide/components/activities.html">atividade</a> ou de um <a href="{@docRoot}guide/topics/appwidgets/index.html">widget de aplicativo</a>.
+É possível declarar um layout de dois modos:</p>
+<ul>
+<li><strong>Declarar elementos da IU em XML</strong>. O Android fornece um vocabulário XML
+direto que corresponde às classes e subclasses de View, como as de widgets e layouts.</li>
+<li><strong>Instanciar elementos do layout em tempo de execução</strong>. 
+O aplicativo pode criar objetos de View e ViewGroup (e manipular suas propriedades) programaticamente. </li>
+</ul>
+
+<p>A estrutura do Android é flexível para usar um destes métodos ou ambos para declarar e gerenciar a IU do seu aplicativo. Por exemplo: você pode declarar um layout padrão do aplicativo em XML, e incluir os elementos da tela que aparecerão neles e suas propriedades. Em seguida, você poderia adicionar códigos ao aplicativo que modificariam o estado dos objetos da tela, inclusive os declarados em XML, em tempo de execução. </p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <ul>
+  <li>A <a href="{@docRoot}tools/sdk/eclipse-adt.html">Extensão
+ADT para Eclipse</a> oferece uma pré-visualização do layout do XML &mdash;
+com o arquivo XML aberto, selecione a guia <strong>Layout</strong>.</li>
+  <li>Pode-se usar também a
+  ferramenta de <a href="{@docRoot}tools/debugging/debugging-ui.html#hierarchyViewer">Visualização de hierarquia</a>
+para depurar layouts &mdash; ela revela os valores de propriedades do layout,
+desenha o esqueleto do layout com indicadores de preenchimento/margens e vistas totalmente renderizadas
+e a depuração pode ocorrer no emulador ou no dispositivo.</li>
+  <li>A ferramenta <a href="{@docRoot}tools/debugging/debugging-ui.html#layoutopt">layoutopt</a> permite
+  a rápida análise dos layouts e hierarquias com relação a ineficiências e outros problemas.</li>
+</div>
+</div>
+
+<p>A vantagem de declarar a IU em XML é separar melhor a apresentação do aplicativo a partir do código que controla seu comportamento. As descrições da IU são externas ao código do aplicativo, ou seja, é possível modificá-la ou adaptá-la sem modificar o código-fonte e recompilar. Por exemplo: é possível criar layouts XML para diferentes orientações de tela, diferentes tamanhos de tela de dispositivos e diferentes idiomas. Além disso, a declaração de layout em XML facilita a exibição da estrutura da sua IU, o que facilita a depuração de problemas. Assim sendo, este documento se concentrará em ensinar a declarar o layout em XML. Se você
+estiver interessado em instanciar objetos View em tempo de execução, consulte as referências das classes
+{@link android.view.ViewGroup} e {@link android.view.View}.</p>
+
+<p>Em geral, o vocabulário XML para declarar elementos da IU segue rigorosamente a estrutura e a atribuição de nome às classes e aos métodos, em que os nomes de elementos correspondem a nomes de classe e nomes de atributos correspondem a métodos. Na verdade, a correspondência normalmente é tão direta que é possível supor qual atributo XML corresponde a determinado método de classe ou supor qual classe corresponde a certo elemento XML. Contudo, observe que nem todo vocabulário é idêntico. Em alguns casos, há pequenas diferenças de nome. Por exemplo:
+o elemento EditText tem um atributo <code>text</code> que corresponde
+a <code>EditText.setText()</code>. </p>
+
+<p class="note"><strong>Dica:</strong> Veja os diferentes tipos de layout em <a href="{@docRoot}guide/topics/ui/layout-objects.html">Objetos
+de layout comuns</a>. Também há uma coleção de tutoriais sobre a criação de diversos layouts
+no guia de tutorial <a href="{@docRoot}resources/tutorials/views/index.html">Vistas de boas-vindas</a>.</p>
+
+<h2 id="write">Programação do XML</h2>
+
+<p>Usando o vocabulário XML do Android, é possível projetar rapidamente layouts de IU e os elementos de tela intrínsecos do mesmo modo que se cria páginas web em HTML &mdash; com uma série de elementos aninhados. </p>
+
+<p>Cada arquivo de layout deve conter exatamente um elemento raiz, que deve ser um objeto View ou ViewGroup. Com o elemento raiz definido, é possível adicionar objetos ou widgets de layout extras como elementos filho para construir gradualmente uma hierarquia de View que define o layout. Por exemplo: eis um layout XML que usa um {@link android.widget.LinearLayout} vertical
+para conter uma {@link android.widget.TextView} e um {@link android.widget.Button}:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="Hello, I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="Hello, I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>Após declarar o layout no XML, salve o arquivo com uma extensão <code>.xml</code>
+no diretório <code>res/layout/</code> do projeto do Android para compilá-lo adequadamente. </p>
+
+<p>Veja mais informações sobre a sintaxe de um arquivo XML de layout no documento <a href="{@docRoot}guide/topics/resources/layout-resource.html">Recursos de layout</a>.</p>
+
+<h2 id="load">Carregamento do recurso XML</h2>
+
+<p>Ao compilar o aplicativo, cada arquivo de layout XML é compilado
+em um recurso {@link android.view.View}. Deve-se carregar o recurso de layout do código do aplicativo
+na implementação de retorno de chamada {@link android.app.Activity#onCreate(android.os.Bundle) Activity.onCreate()}.
+Para isso, chame <code>{@link android.app.Activity#setContentView(int) setContentView()}</code>,
+passando a referência para o recurso de layout na forma:
+<code>R.layout.<em>layout_file_name</em></code>.
+Por exemplo: se o layout XML for salvo como <code>main_layout.xml</code>, será necessário carregá-lo
+para a Atividade desta forma:</p>
+<pre>
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.main_layout);
+}
+</pre>
+
+<p>O método de retorno de chamada <code>onCreate()</code> na Atividade é chamado pela estrutura do Android quando
+ela é inicializada (veja a discussão sobre ciclos de vida no documento 
+<a href="{@docRoot}guide/components/activities.html#Lifecycle">Atividades</a>
+).</p>
+
+
+<h2 id="attributes">Atributos</h2>
+
+<p>Cada objeto View e ViewGroup aceita uma variedade própria de atributos XML.
+Alguns atributos são específicos de um objeto View (por exemplo, TextView aceita o atributo
+<code>textSize</code>), mas esses atributos também são herdados de objetos View que possam estender essa classe.
+Alguns são comuns a todos os objetos View porque são herdados da classe View raiz (como
+o atributo <code>id</code>). Além disso, outros atributos são considerados "parâmetros do layout", que são
+os que descrevem determinadas orientações de layout do objeto View conforme definido pelo objeto
+ViewGroup pai daquele objeto.</p>
+
+<h3 id="id">ID</h3>
+
+<p>Qualquer objeto View pode ter um ID de número inteiro associado para identificar exclusivamente o View dentro da árvore.
+Ao compilar o aplicativo, esse ID é referenciado como um número inteiro, mas o ID normalmente
+é atribuído no arquivo XML do layout como uma string, no atributo <code>id</code>.
+É um atributo XML comum a todos os objetos View
+(definido pela classe {@link android.view.View}) e você o usará com frequência.
+A sintaxe de um ID, dentro de uma tag XML, é:</p>
+<pre>android:id="&#64;+id/my_button"</pre>
+
+<p>Um símbolo de arroba (@) no início da string indica que o analisador XML deve analisar e expandir o restante
+da string de ID e identificá-la como um recurso de ID. O símbolo de mais (+) significa que é um novo nome de recurso que precisa
+ser criado e adicionado aos recursos (no arquivo <code>R.java</code>). Há diversos outros recursos de ID
+oferecidos pela estrutura do Android. Ao referenciar um ID de recurso do Android, não é necessário ter o símbolo de mais,
+mas deve-se adicionar o conjunto de nomes (namespace) do pacote <code>android</code> da seguinte maneira:</p>
+<pre>android:id="&#64;android:id/empty"</pre>
+<p>Com o conjunto de nomes (namespace) do pacote <code>android</code> em vigor, podemos referenciar um ID da classe
+de recursos <code>android.R</code> em vez de um da classe de recursos locais.</p>
+
+<p>Para criar vistas e referenciá-las a partir do aplicativo, um modo padrão comum é:</p>
+<ol>
+  <li>Definir uma visualizaçãovistawidget no arquivo de layout e atribuir um ID exclusivo a ele/ela:
+<pre>
+&lt;Button android:id="&#64;+id/my_button"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="&#64;string/my_button_text"/>
+</pre>
+  </li>
+  <li>Em seguida, crie uma instância do objeto de vista e capture-a do layout
+(normalmente no método <code>{@link android.app.Activity#onCreate(Bundle) onCreate()}</code>):
+<pre>
+Button myButton = (Button) findViewById(R.id.my_button);
+</pre>
+  </li>
+</ol>
+<p>Definir IDs para objetos de vista é importante ao criar um {@link android.widget.RelativeLayout}.
+Em um layout relativo, vistas irmãs podem definir o layout relativo para outra vista irmã
+referenciada pelo ID exclusivo.</p>
+<p>Os Ids não precisam ser exclusivo por toda a árvore, mas devem ser
+exclusivos dentro da parte da árvore em que se está procurando (que pode, com frequência, ser toda a árvore, portanto é preferível
+ser totalmente exclusivo sempre que possível).</p>
+
+
+<h3 id="layout-params">Parâmetros do layout</h3>
+
+<p>Os atributos do layout XML chamados <code>layout_<em>something</em></code> definem
+parâmetros para a View que for apropriado para a ViewGroup em que reside.</p>
+
+<p>Cada classe ViewGroup implementa uma classe aninhada que estende {@link
+android.view.ViewGroup.LayoutParams}. Essa subclasse
+contém tipos de propriedade que definem o tamanho e a posição de cada vista filha, conforme
+o necessário para o grupo de vistas. Como se pode ver na figura 1, um grupo de vistas
+pais define parâmetros de layout para cada vista filha (incluindo o grupo de vistas filhas).</p>
+
+<img src="{@docRoot}images/layoutparams.png" alt="" />
+<p class="img-caption"><strong>Figura 1.</strong> Vista de uma hierarquia de vistas com parâmetros
+de layout associados a cada uma delas.</p>
+
+<p>Observe que cada subclasse LayoutParams tem a própria sintaxe para definir
+valores. Cada elemento filho deve definir LayoutParams apropriados para seu pai,
+embora possa também definir diferentes LayoutParams para os próprios filhos. </p>
+
+<p>Todos os grupos de vistas contêm largura e altura (<code>layout_width</code> e 
+<code>layout_height</code>) e cada vista é obrigatória para defini-las. Muitos
+LayoutParams também contêm margens e bordas opcionais. <p>
+
+<p>É possível especificar largura e altura com medidas exatas, embora não seja
+recomendável na maioria dos casos. Em geral, usa-se uma destas constantes para
+definir a largura e a altura: </p>
+
+<ul>
+  <li><var>wrap_content</var> instrui a vista a dimensionar-se de acordo com
+as medidas exigidas pelo conteúdo.</li>
+  <li><var>match_parent</var> (de nome <var>fill_parent</var> antes da API de nível 8)
+instrui a vista a tornar-se tão grande quanto o grupo de vistas pais permitir.</li>
+</ul>
+
+<p>Em geral, a especificação de largura e altura de um layout com unidades absolutas, como
+pixels, não é recomendada. Em vez disso, usam-se medidas relativas como
+unidades de pixel independentes de densidade (<var>dp</var>), <var>wrap_content</var>ou
+<var>match_parent</var>, é uma abordagem melhor porque ajuda a garantir
+que o aplicativo exiba o conteúdo adequadamente dentre diversos tamanhos de tela de dispositivos.
+Os tipos de medidas aceitos são definidos no documento
+<a href="{@docRoot}guide/topics/resources/available-resources.html#dimension">
+Recursos disponíveis</a>.</p>
+
+
+<h2 id="Position">Posição do layout</h2>
+   <p>
+   A geometria de uma vista de um retângulo. As vistas têm uma localização,
+   expressa como um par de coordenadas <em>esquerda</em> e <em>topo</em> 
+   e duas dimensões, expressas como largura e altura. A unidade de localização
+   e de dimensões é o pixel.
+   </p>
+
+   <p>
+   É possível recuperar a localização de uma vista chamando os métodos
+   {@link android.view.View#getLeft()} e {@link android.view.View#getTop()}. O primeiro retorna a coordenada
+   esquerda, ou X, do retângulo que representa a vista. O último retorna a coordenada
+   topo, ou Y, do retângulo que representa a vista. Esses métodos
+   retornam a localização da vista em relação ao pai correspondente. Por exemplo:
+   quando <code>getLeft()</code> retorna 20, significa que a vista se localiza 20 pixels à
+   direita da borda esquerda do seu pai direto.
+   </p>
+
+   <p>
+   Adicionalmente, diversos métodos de conveniência são oferecidos para evitar cálculos
+desnecessárias, chamados {@link android.view.View#getRight()} e {@link android.view.View#getBottom()}.
+   Esses métodos retornam as coordenadas das bordas direita e de baixo
+   do retângulo que representa a vista. Por exemplo: chamar {@link android.view.View#getRight()}
+   é semelhante ao seguinte cálculo: <code>getLeft() + getWidth()</code>.
+   </p>
+
+
+<h2 id="SizePaddingMargins">Tamanho, preenchimento e margens</h2>
+   <p>
+   O tamanho de uma vista é expresso por largura e altura. As vistas, na verdade,
+   têm dois pares de valores de largura e altura.
+   </p>
+
+   <p>
+   O primeiro par é conhecido como <em>largura medida</em>
+   e <em>altura medida</em>. Essas dimensões definem o tamanho que a vista terá
+   dentro da vista pai. 
+   Para obter as dimensões medidas, chamam-se {@link android.view.View#getMeasuredWidth()}
+   e {@link android.view.View#getMeasuredHeight()}.
+   </p>
+
+   <p>
+   O segundo par é simplesmente conhecido como <em>largura</em> e <em>altura</em> ou,
+   às vezes, <em>largura do desenho</em> e <em>altura do desenho</em>. Essas
+   dimensões definem o tamanho real da vista na tela, em tempo de desenho e
+   após o layout. Esses valores podem diferir da largura
+   e da altura medidas. Para obter os valores de largura e altura, chamam-se
+   {@link android.view.View#getWidth()} e {@link android.view.View#getHeight()}.
+   </p>
+
+   <p>
+   Para medir as dimensões, a vista leva em conta o preenchimento. O preenchimento
+   é expresso em pixels para a esquerda, a direita e as partes de cima e de baixo da vista.
+   O preenchimento pode ser usado para compensar o conteúdo da vista por um número específico
+   de pixels. Por exemplo: um preenchimento à esquerda de 2 empurrará o conteúdo da vista
+   em 2 pixels para a direita da borda esquerda. Para definir o preenchimento, usa-se
+   o método {@link android.view.View#setPadding(int, int, int, int)} e consulta-se com as chamadas
+   {@link android.view.View#getPaddingLeft()}, {@link android.view.View#getPaddingTop()},
+   {@link android.view.View#getPaddingRight()} e {@link android.view.View#getPaddingBottom()}.
+   </p>
+
+   <p>
+   Mesmo que cada vista possa definir um preenchimento, ela não fornece nenhuma compatibilidade
+   com margens. No entanto, os grupos de vistas oferecem essa compatibilidade. Consulte
+   {@link android.view.ViewGroup}
+   e {@link android.view.ViewGroup.MarginLayoutParams} para ver mais informações.
+   </p>
+
+   <p>Para obter mais informações sobre dimensões, consulte
+   <a href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">Valores de dimensões</a>.
+   </p>
+
+
+
+
+
+
+<style type="text/css">
+div.layout {
+  float:left;
+  width:200px;
+  margin:0 0 20px 20px;
+}
+div.layout.first {
+  margin-left:0;
+  clear:left;
+}
+</style>
+
+
+
+
+<h2 id="CommonLayouts">Layouts comuns</h2>
+
+<p>Cada subclasse da classe {@link android.view.ViewGroup} fornece um modo exclusivo de exibir
+as vistas aninhadas dentro dela. Eis alguns dos tipos de layout mais comuns criados
+na plataforma Android.</p>
+
+<p class="note"><strong>Observação:</strong> Embora seja possível aninhar um ou mais layouts em outro
+layout para obter o projeto de IU, deve-se procurar manter a hierarquia do layout a menos profunda
+possível. O layout carrega mais rápido se tiver menos layouts aninhados (uma hierarquia de vistas grande é
+melhor do que uma hierarquia de vistas profunda).</p>
+
+<!--
+<h2 id="framelayout">FrameLayout</h2>
+<p>{@link android.widget.FrameLayout FrameLayout} is the simplest type of layout
+object. It's basically a blank space on your screen that you can
+later fill with a single object &mdash; for example, a picture that you'll swap in and out.
+All child elements of the FrameLayout are pinned to the top left corner of the screen; you cannot
+specify a different location for a child view. Subsequent child views will simply be drawn over
+previous ones,
+partially or totally obscuring them (unless the newer object is transparent).
+</p>
+-->
+
+
+<div class="layout first">
+  <h4><a href="layout/linear.html">Layout linear</a></h4>
+  <a href="layout/linear.html"><img src="{@docRoot}images/ui/linearlayout-small.png" alt="" /></a>
+  <p>Layout que organiza os filhos em uma única linha horizontal ou vertical. Ele
+  cria uma barra de rolagem se o comprimento da janela exceder o comprimento da tela.</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/relative.html">Layout relativo</a></h4>
+  <a href="layout/relative.html"><img src="{@docRoot}images/ui/relativelayout-small.png" alt="" /></a>
+  <p>Permite especificar a localização de objetos filhos relativos entre si (filho A
+à esquerda do filho B) ou relativos aos pais (alinhados no topo do pai).</p>
+</div>
+
+<div class="layout">
+  <h4><a href="{@docRoot}guide/webapps/webview.html">Vista web</a></h4>
+  <a href="{@docRoot}guide/webapps/webview.html"><img src="{@docRoot}images/ui/webview-small.png" alt="" /></a>
+  <p>Exibe páginas da web.</p>
+</div>
+
+
+
+
+<h2 id="AdapterViews" style="clear:left">Criação de layouts com um adaptador</h2>
+
+<p>Quando o conteúdo do layout é dinâmico ou não predeterminado, é possível usar um layout que
+torne {@link android.widget.AdapterView} uma subclasse para preencher o layout com vistas em tempo de execução. 
+Uma subclasse da classe {@link android.widget.AdapterView} usa um {@link android.widget.Adapter}
+para agrupar dados ao seu layout. O {@link android.widget.Adapter} se comporta como um intermediário entre a fonte
+dos dados e o layout do {@link android.widget.AdapterView} &mdash; o {@link android.widget.Adapter}
+recupera os dados (de uma fonte como uma matriz ou uma consulta de banco de dados) e converte cada entrada
+em uma vista que pode ser adicionada ao layout do {@link android.widget.AdapterView}.</p>
+
+<p>Alguns layouts comuns retornados por um adaptador:</p>
+
+<div class="layout first">
+  <h4><a href="layout/listview.html">Vista em lista</a></h4>
+  <a href="layout/listview.html"><img src="{@docRoot}images/ui/listview-small.png" alt="" /></a>
+  <p>Exibe uma lista de rolagem de coluna única.</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/gridview.html">Vista em grade</a></h4>
+  <a href="layout/gridview.html"><img src="{@docRoot}images/ui/gridview-small.png" alt="" /></a>
+  <p>Exibe uma grade de rolagem de colunas e linhas.</p>
+</div>
+
+
+
+<h3 id="FillingTheLayout" style="clear:left">Preenchimento da vista de adaptador com dados</h3>
+
+<p>É possível preencher um {@link android.widget.AdapterView} como {@link android.widget.ListView}
+ou {@link android.widget.GridView} agrupando-se a instância do {@link android.widget.AdapterView}
+a um {@link android.widget.Adapter}, o que recupera dados de uma fonte externa e cria uma {@link
+android.view.View} que representa cada entrada de dados.</p>
+
+<p>O Android oferece diversas subclasses de {@link android.widget.Adapter} que são úteis para
+recuperar diferentes tipos de dados e criar vistas de um {@link android.widget.AdapterView}. 
+Os dois adaptadores mais comuns são:</p>
+
+<dl>
+  <dt>{@link android.widget.ArrayAdapter}</dt>
+    <dd>Use esse adaptador quando a fonte de dados for uma matriz. Por padrão, {@link
+android.widget.ArrayAdapter} cria uma vista para cada item de matriz chamando {@link
+java.lang.Object#toString()} em cada item e posicionando o conteúdo em uma {@link
+android.widget.TextView}.
+      <p>Por exemplo: se você tiver uma matriz de strings que deseja exibir em uma {@link
+android.widget.ListView}, inicialize um novo {@link android.widget.ArrayAdapter} com
+um construtor para especificar o layout de cada string e a matriz de strings:</p>
+<pre>
+ArrayAdapter&lt;String> adapter = new ArrayAdapter&lt;String>(this,
+        android.R.layout.simple_list_item_1, myStringArray);
+</pre>
+<p>Os argumentos desse construtor são:</p>
+<ul>
+  <li>O {@link android.content.Context} do aplicativo</li>
+  <li>O layout que contém uma {@link android.widget.TextView} para cada string na matriz</li>
+  <li>A matriz de strings</li>
+</ul>
+<p>Em seguida, simplesmente chame
+{@link android.widget.ListView#setAdapter setAdapter()} na {@link android.widget.ListView}:</p>
+<pre>
+ListView listView = (ListView) findViewById(R.id.listview);
+listView.setAdapter(adapter);
+</pre>
+
+      <p>Para personalizar a aparência de cada item, é possível suspender o método {@link
+java.lang.Object#toString()} para os objetos na matriz. Ou, para criar uma vista para cada
+item diferente de uma {@link android.widget.TextView} (por exemplo, se você quiser
+uma {@link android.widget.ImageView} para cada item da matriz), estenda a classe {@link
+android.widget.ArrayAdapter} e suspenda {@link android.widget.ArrayAdapter#getView
+getView()} para retornar o tipo de vista que deseja para cada item.</p>
+
+</dd>
+
+  <dt>{@link android.widget.SimpleCursorAdapter}</dt>
+    <dd>Use este adaptador quando os dados vierem de um {@link android.database.Cursor}. 
+Ao usar {@link android.widget.SimpleCursorAdapter}, é necessário especificar um layout a usar para cada
+linha no {@link android.database.Cursor} e que colunas no {@link android.database.Cursor}
+devem ser inseridas em determinadas vistas do layout. Por exemplo: se você deseja criar uma lista
+de nome e número de telefone de pessoas, pode-se realizar uma consulta que retorna um {@link
+android.database.Cursor} que contém uma linha para cada pessoa e colunas para os nomes
+e números. Assim, cria-se uma matriz de strings especificando quais colunas do {@link
+android.database.Cursor} estarão no layout para cada resultado e uma matriz de números inteiros especificando
+as vistas correspondentes em que cada coluna deve ser colocada:</p>
+<pre>
+String[] fromColumns = {ContactsContract.Data.DISPLAY_NAME,
+                        ContactsContract.CommonDataKinds.Phone.NUMBER};
+int[] toViews = {R.id.display_name, R.id.phone_number};
+</pre>
+<p>Ao instanciar o {@link android.widget.SimpleCursorAdapter}, passe o layout a usar
+para cada resultado, o {@link android.database.Cursor} contendo os resultados e estas duas matrizes:</p>
+<pre>
+SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
+        R.layout.person_name_and_number, cursor, fromColumns, toViews, 0);
+ListView listView = getListView();
+listView.setAdapter(adapter);
+</pre>
+<p>Em seguida, o {@link android.widget.SimpleCursorAdapter} cria uma vista de cada linha
+no{@link android.database.Cursor} usando o layout fornecido por meio da inserção de cada item de {@code
+fromColumns} na vista {@code toViews} correspondente.</p>.</dd>
+</dl>
+
+
+<p>Se durante o curso de vida do aplicativo, você mudar os dados subjacentes lidos 
+pelo adaptador, chame {@link android.widget.ArrayAdapter#notifyDataSetChanged()}. Isso
+notificará à vista anexada que os dados foram alterados e que ela deve se atualizar.</p>
+
+
+
+<h3 id="HandlingUserSelections">Tratamento de eventos de clique</h3>
+
+<p>Para responder a eventos de clique em cada item em um {@link android.widget.AdapterView},
+implementa-se a interface {@link android.widget.AdapterView.OnItemClickListener}. Por exemplo:</p>
+
+<pre>
+// Create a message handling object as an anonymous class.
+private OnItemClickListener mMessageClickedHandler = new OnItemClickListener() {
+    public void onItemClick(AdapterView parent, View v, int position, long id) {
+        // Do something in response to the click
+    }
+};
+
+listView.setOnItemClickListener(mMessageClickedHandler);
+</pre>
+
+
+
diff --git a/docs/html-intl/intl/pt-br/guide/topics/ui/dialogs.jd b/docs/html-intl/intl/pt-br/guide/topics/ui/dialogs.jd
new file mode 100644
index 0000000..2cbedbe
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/ui/dialogs.jd
@@ -0,0 +1,798 @@
+page.title=Caixas de diálogo
+page.tags=diálogodealerta,fragmentodediálogo
+
+@jd:body
+
+
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>Neste documento</h2>
+<ol>
+  <li><a href="#DialogFragment">Criação de um fragmento de caixa de diálogo</a></li>
+  <li><a href="#AlertDialog">Construção de uma caixa de diálogo de alerta</a>
+    <ol>
+      <li><a href="#AddingButtons">Adição de botões</a></li>
+      <li><a href="#AddingAList">Adição de listas</a></li>
+      <li><a href="#CustomLayout">Criação de layout personalizado</a></li>
+    </ol>
+  </li>
+  <li><a href="#PassingEvents">Direcionamento de eventos de volta ao host da caixa de diálogo</a></li>
+  <li><a href="#ShowingADialog">Exibição de uma caixa de diálogo</a></li>
+  <li><a href="#FullscreenDialog">Exibição de uma caixa de diálogo em tela cheia ou como um fragmento incorporado</a>
+    <ol>
+      <li><a href="#ActivityAsDialog">Exibição de uma atividade como uma caixa de diálogo em telas grandes</a></li>
+    </ol>
+  </li>
+  <li><a href="#DismissingADialog">Dispensa de uma caixa de diálogo</a></li>
+</ol>
+
+    <h2>Classes principais</h2>
+    <ol>
+      <li>{@link android.app.DialogFragment}</li>
+      <li>{@link android.app.AlertDialog}</li>
+    </ol>
+    
+    <h2>Veja também</h2>
+    <ol>
+      <li><a href="{@docRoot}design/building-blocks/dialogs.html">Guia de projeto de caixas de diálogo</a></li>
+      <li><a href="{@docRoot}guide/topics/ui/controls/pickers.html">Seletores</a> (caixas de diálogo de data e hora)</li>
+    </ol>
+  </div>
+</div>
+
+<p>As caixas de diálogo são pequenas janelas que levam o usuário
+a tomar uma decisão ou inserir informações adicionais. Elas não ocupam toda a tela e são
+normalmente susada para eventos modais que exijam que usuários realizem uma ação antes de continuar.</p>
+
+<div class="note design">
+<p><strong>Projeto de caixas de diálogo</strong></p>
+  <p>Para obter mais informações sobre como projetar caixas de diálogo, inclusive sobre recomendações
+  de idioma, leia o guia de projeto <a href="{@docRoot}design/building-blocks/dialogs.html">Caixas de diálogo</a>.</p>
+</div>
+
+<img src="{@docRoot}images/ui/dialogs.png" />
+
+<p>A classe {@link android.app.Dialog} é a classe de base para caixas de diálogo, mas
+deve-se evitar instanciar {@link android.app.Dialog} diretamente.
+Em vez disso, use uma das subclasses a seguir:</p>
+<dl>
+  <dt>{@link android.app.AlertDialog}</dt>
+  <dd>Caixa de diálogo que pode exibir um título, até três botões, uma lista
+    de itens selecionáveis ou um layout personalizado.</dd>
+  <dt>{@link android.app.DatePickerDialog} ou {@link android.app.TimePickerDialog}</dt>
+  <dd>Caixa de diálogo com uma IU predefinida que permite ao usuário selecionar uma data ou hora.</dd>
+</dl>
+
+<div class="sidebox">
+<h2>Evite ProgressDialog</h2>
+<p>O Android tem outra classe de caixa de diálogo chamada
+{@link android.app.ProgressDialog}, que exibe uma caixa de diálogo com uma barra de andamento. Entretanto, se for
+necessário indicar carregamento ou andamento indeterminado, deve-se seguir as orientações
+de projeto de <a href="{@docRoot}design/building-blocks/progress.html">Progresso e
+atividade</a> e usar uma {@link android.widget.ProgressBar} no layout.</p>
+</div>
+
+<p>Essas classes definem o estilo e a estrutura da caixa de diálogo, mas deve-se
+usar um {@link android.support.v4.app.DialogFragment} como um contêiner para a caixa de diálogo.
+A classe {@link android.support.v4.app.DialogFragment} fornece todos os controles
+necessários para criar uma caixa de diálogo e gerenciar sua aparência em vez de chamar métodos
+no objeto {@link android.app.Dialog}.</p>
+
+<p>O uso de {@link android.support.v4.app.DialogFragment} para gerenciar a caixa de diálogo
+garante que ela trate corretamente os eventos de ciclos de vida,
+como quando o usuário pressiona o botão <em>Voltar</em> ou gira a tela. A classe {@link
+android.support.v4.app.DialogFragment} também permite a reutilização da IU da caixa de diálogo como
+um componente incorporável em uma IU maior, assim como um {@link
+android.support.v4.app.Fragment} tradicional (como nas vezes em que se deseja que a IU da caixa de diálogo apareça de modos diferentes
+em telas grandes e pequenas).</p>
+
+<p>As seções a seguir neste guia descrevem como usar um {@link
+android.support.v4.app.DialogFragment} combinado com um objeto
+{@link android.app.AlertDialog}. Se você quiser criar um seletor de data ou hora, leia o guia
+<a href="{@docRoot}guide/topics/ui/controls/pickers.html">Seletores</a>.</p>
+
+<p class="note"><strong>Observação:</strong>
+como a classe {@link android.app.DialogFragment} foi adicionada originalmente com
+o Android 3.0 (API de nível 11), este documento descreve como usar a classe {@link
+android.support.v4.app.DialogFragment} fornecida com a <a href="{@docRoot}tools/support-library/index.html">Biblioteca de Suporte</a>. Ao adicionar essa biblioteca
+ao aplicativo, pode-se usar {@link android.support.v4.app.DialogFragment} e uma variedade de outras
+APIs em dispositivos que executam o Android 1.6 ou versão posterior. Se a versão mais antiga com a qual seu aplicativo é compatível
+for a API de nível 11 ou posterior, é possível usar a versão de estrutura de {@link
+android.app.DialogFragment}, mas esteja ciente de que os links neste documento são para APIs
+de biblioteca de suporte. Ao usar a biblioteca de suporte,
+certifique-se de importar a classe <code>android.support.v4.app.DialogFragment</code>
+e <em>não</em> a <code>android.app.DialogFragment</code>.</p>
+
+
+<h2 id="DialogFragment">Criação de um fragmento de caixa de diálogo</h2>
+
+<p>É possível realizar uma grande variedade de projetos de caixas de diálogo &mdash; inclusive
+layouts personalizados e outros descritos no guia de projeto <a href="{@docRoot}design/building-blocks/dialogs.html">Caixas de diálogo</a>
+ &mdash;, estendendo
+{@link android.support.v4.app.DialogFragment} e criando uma{@link android.app.AlertDialog}
+no método de retorno de chamada {@link android.support.v4.app.DialogFragment#onCreateDialog
+onCreateDialog()}.</p>
+
+<p>Por exemplo, a seguir há um {@link android.app.AlertDialog} básico gerenciado dentro
+de um {@link android.support.v4.app.DialogFragment}:</p>
+
+<pre>
+public class FireMissilesDialogFragment extends DialogFragment {
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Use the Builder class for convenient dialog construction
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // FIRE ZE MISSILES!
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // User cancelled the dialog
+                   }
+               });
+        // Create the AlertDialog object and return it
+        return builder.create();
+    }
+}
+</pre>
+
+<div class="figure" style="width:290px;margin:0 0 0 20px">
+<img src="{@docRoot}images/ui/dialog_buttons.png" alt="" />
+<p class="img-caption"><strong>Figura 1.</strong>
+Caixa de diálogo com uma mensagem e dois botões de ação.</p>
+</div>
+
+<p>Ao criar uma instância dessa classe e chamar {@link
+android.support.v4.app.DialogFragment#show show()} nesse objeto, a caixa de diálogo será exibida como
+ilustrado na figura 1.</p>
+
+<p>A próxima seção descreve em mais detalhes o uso das APIs{@link android.app.AlertDialog.Builder}
+para a criação de uma caixa de diálogo.</p>
+
+<p>Conforme o nível de complexidade da caixa de diálogo, é possível implementar diversos outros métodos
+de retorno de chamada no {@link android.support.v4.app.DialogFragment}, inclusive todos os
+<a href="{@docRoot}guide/components/fragments.html#Lifecycle">métodos de ciclo de vida de fragmentos</a> básicos.
+
+
+
+
+
+<h2 id="AlertDialog">Construção de uma caixa de diálogo de alerta</h2>
+
+
+<p>A classe {@link android.app.AlertDialog} permite a criação de diversos projetos de caixa de diálogo
+e normalmente é a única classe de caixa de diálogo necessária.
+Como ilustrado na figura 2, há três regiões de uma caixa de diálogo de alerta:</p>
+
+<div class="figure" style="width:311px;margin-top:0">
+<img src="{@docRoot}images/ui/dialogs_regions.png" alt="" style="margin-bottom:0" />
+<p class="img-caption"><strong>Figura 2.</strong> Layout de uma caixa de diálogo.</p>
+</div>
+
+<ol>
+<li><b>Título</b>
+  <p>É opcional e deve ser usado somente quando a área do conteúdo
+  estiver ocupada por uma mensagem detalhada, uma lista ou layout personalizado. Se for necessário declarar
+  uma mensagem ou pergunta simples (como a caixa de diálogo na figura 1), o título não é necessário.</li>
+<li><b>Área do conteúdo</b>
+  <p>Pode exibir uma mensagem, uma lista ou outro layout personalizado.</p></li>
+<li><b>Botões de ação</b>
+  <p>Não deve haver mais de três botões em uma caixa de diálogo.</p></li>
+</ol>
+
+<p>A classe {@link android.app.AlertDialog.Builder}
+ fornece APIs que permitem a criação de uma {@link android.app.AlertDialog}
+ com esses tipos de conteúdo, inclusive um layout personalizado.</p>
+
+<p>Para criar uma {@link android.app.AlertDialog}:</p>
+
+<pre>
+<b>// 1. Instantiate an {@link android.app.AlertDialog.Builder} with its constructor</b>
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+
+<b>// 2. Chain together various setter methods to set the dialog characteristics</b>
+builder.setMessage(R.string.dialog_message)
+       .setTitle(R.string.dialog_title);
+
+<b>// 3. Get the {@link android.app.AlertDialog} from {@link android.app.AlertDialog.Builder#create()}</b>
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>Os tópicos a seguir mostram como definir diversos atributos de caixas de diálogo
+com a classe {@link android.app.AlertDialog.Builder}.</p>
+
+
+
+
+<h3 id="AddingButtons">Adição de botões</h3>
+
+<p>Para adicionar botões de ação como os da figura 2,
+chame os métodos {@link android.app.AlertDialog.Builder#setPositiveButton setPositiveButton()} e
+{@link android.app.AlertDialog.Builder#setNegativeButton setNegativeButton()}:</p>
+
+<pre style="clear:right">
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+// Add the buttons
+builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User clicked OK button
+           }
+       });
+builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User cancelled the dialog
+           }
+       });
+// Set other dialog properties
+...
+
+// Create the AlertDialog
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>Os métodos <code>set...Button()</code> exigem um título para o botão (fornecido
+por um <a href="{@docRoot}guide/topics/resources/string-resource.html">recurso de string</a>) e um 
+{@link android.content.DialogInterface.OnClickListener} que defina a ação a realizar 
+quando o usuário pressionar o botão.</p>
+
+<p>Há três botões de ação diferente que podem ser adicionados:</p>
+<dl>
+  <dt>Positivo</dt>
+  <dd>É o que se deve usar para aceitar e continuar a ação (a ação "OK").</dd>
+  <dt>Negativo</dt>
+  <dd>É o que se deve usar para cancelar a ação.</dd>
+  <dt>Neutro</dt>
+  <dd>É o que se deve usar quando houver a opção de o usuário não querer continuar a ação,
+  mas não necessariamente cancelá-la. Ele aparece entre os botões positivo
+  e negativo. Por exemplo: a ação pode ser "Notifique-me mais tarde".</dd> 
+</dl>
+
+<p>É possível adicionar somente um de cada tipo de botão a uma {@link
+android.app.AlertDialog}, ou seja, não é possível ter mais de um botão "positivo".</p>
+
+
+
+<div class="figure" style="width:290px;margin:0 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_list.png" alt="" />
+<p class="img-caption"><strong>Figura 3.</strong>
+Caixa de diálogo com um título e uma lista.</p>
+</div>
+
+<h3 id="AddingAList">Adição de listas</h3>
+
+<p>Há três tipos de listas disponíveis nas APIs {@link android.app.AlertDialog}:</p>
+<ul>
+<li>Lista de escolha única tradicional</li>
+<li>Lista de escolha única persistente (botões de opção)</li>
+<li>Lista de escolhas múltiplas persistentes (caixas de seleção)</li>
+</ul>
+
+<p>Para criar uma lista de escolha única como a da figura 3, 
+use o método {@link android.app.AlertDialog.Builder#setItems setItems()}:</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    builder.setTitle(R.string.pick_color)
+           .setItems(R.array.colors_array, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int which) {
+               // The 'which' argument contains the index position
+               // of the selected item
+           }
+    });
+    return builder.create();
+}
+</pre>
+
+<p>Como a lista aparece na área do conteúdo da caixa de diálogo,
+a caixa não pode exibir uma mensagem e uma lista, e será preciso definir um título
+para ela com {@link android.app.AlertDialog.Builder#setTitle setTitle()}. 
+Para especificar os itens da lista, chame {@link
+android.app.AlertDialog.Builder#setItems setItems()} passando uma matriz.
+Alternativamente, é possível especificar uma lista com {@link
+android.app.AlertDialog.Builder#setAdapter setAdapter()}. Isso permite retroceder a lista
+com dados dinâmicos (como os de um banco de dados) com um {@link android.widget.ListAdapter}.</p>
+
+<p>Se você optar por retroceder a lista com um {@link android.widget.ListAdapter},
+sempre use um {@link android.support.v4.content.Loader} para que o conteúdo carregue
+assincronamente. Veja mais detalhes sobre isso nos guias
+<a href="{@docRoot}guide/topics/ui/declaring-layout.html#AdapterViews">Criação de layouts
+com um adaptador</a> e
+<a href="{@docRoot}guide/components/loaders.html">Carregadores</a>.</p>
+
+<p class="note"><strong>Observação:</strong> por padrão, o toque em um item de lista dispensa a caixa de diálogo
+a menos que você esteja usando uma das listas de escolha persistentes a seguir.</p>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_checkboxes.png" />
+<p class="img-caption"><strong>Figura 4.</strong>
+Lista de itens de múltipla escolha.</p>
+</div>
+
+
+<h4 id="Checkboxes">Adição de uma lista de escolha única ou de múltipla escolha persistente</h4>
+
+<p>Para adicionar uma lista de itens de múltipla escolha (caixas de seleção)
+ou itens de escolha única (botões de rádio), use os métodos
+{@link android.app.AlertDialog.Builder#setMultiChoiceItems(Cursor,String,String,
+DialogInterface.OnMultiChoiceClickListener) setMultiChoiceItems()} ou 
+{@link android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()} respectivamente.</p>
+
+<p>Por exemplo, a seguir apresenta-se como criar uma lista de múltipla escolha como
+a ilustrada na figura 4, que salva os itens
+selecionados em uma {@link java.util.ArrayList}:</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    mSelectedItems = new ArrayList();  // Where we track the selected items
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Set the dialog title
+    builder.setTitle(R.string.pick_toppings)
+    // Specify the list array, the items to be selected by default (null for none),
+    // and the listener through which to receive callbacks when items are selected
+           .setMultiChoiceItems(R.array.toppings, null,
+                      new DialogInterface.OnMultiChoiceClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int which,
+                       boolean isChecked) {
+                   if (isChecked) {
+                       // If the user checked the item, add it to the selected items
+                       mSelectedItems.add(which);
+                   } else if (mSelectedItems.contains(which)) {
+                       // Else, if the item is already in the array, remove it 
+                       mSelectedItems.remove(Integer.valueOf(which));
+                   }
+               }
+           })
+    // Set the action buttons
+           .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // User clicked OK, so save the mSelectedItems results somewhere
+                   // or return them to the component that opened the dialog
+                   ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   ...
+               }
+           });
+
+    return builder.create();
+}
+</pre>
+
+<p>Embora a lista tradicional e uma lista com botões de opção
+forneçam uma ação de "escolha única", deve-se usar {@link
+android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()} se você desejar manter a escolha do usuário.
+Ou seja, se a caixa de diálogo abrir novamente mais tarde, deve indicar qual é a escolha atual do usuário,
+portanto deve-se criar uma lista com botões de opção.</p>
+
+
+
+
+
+<h3 id="CustomLayout">Criação de layout personalizado</h3>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_custom.png" alt="" />
+<p class="img-caption"><strong>Figura 5.</strong> Layout personalizado da caixa de diálogo.</p>
+</div>
+
+<p>Se você deseja um layout personalizado em uma caixa de diálogo, crie um layout e adicione-o a uma
+{@link android.app.AlertDialog} chamando {@link
+android.app.AlertDialog.Builder#setView setView()} no objeto {@link
+android.app.AlertDialog.Builder}.</p>
+
+<p>Por padrão, o layout personalizado preenche a janela da caixa de diálogo, mas ainda é possível
+usar métodos {@link android.app.AlertDialog.Builder} para adicionar botões e um título.</p>
+
+<p>Por exemplo, a seguir há o arquivo de layout para a caixa de diálogo na figura 5:</p>
+
+<p style="clear:right" class="code-caption">res/layout/dialog_signin.xml</p>
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content">
+    &lt;ImageView
+        android:src="@drawable/header_logo"
+        android:layout_width="match_parent"
+        android:layout_height="64dp"
+        android:scaleType="center"
+        android:background="#FFFFBB33"
+        android:contentDescription="@string/app_name" />
+    &lt;EditText
+        android:id="@+id/username"
+        android:inputType="textEmailAddress"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="16dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="4dp"
+        android:hint="@string/username" />
+    &lt;EditText
+        android:id="@+id/password"
+        android:inputType="textPassword"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="4dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="16dp"
+        android:fontFamily="sans-serif"
+        android:hint="@string/password"/>
+&lt;/LinearLayout>
+</pre>
+
+<p class="note"><strong>Dica:</strong> por padrão, ao definir um elemento
+{@link android.widget.EditText} para usar o tipo de entrada {@code "textPassword"}, a família da fonte é definida como de espaço único, portanto
+deve-se alterar a família da fonte para {@code "sans-serif"} para que os campos de texto usem
+um estilo de fonte compatível.</p>
+
+<p>Para inflar o layout no {@link android.support.v4.app.DialogFragment},
+obtenha um {@link android.view.LayoutInflater} com 
+{@link android.app.Activity#getLayoutInflater()} e chame
+{@link android.view.LayoutInflater#inflate inflate()}, em que o primeiro parâmetro
+é o ID de recurso do layout e o segundo é uma vista pai do layout.
+Em seguida, pode-se chamar {@link android.app.AlertDialog#setView setView()}
+para posicionar o layout na caixa de diálogo.</p>
+
+<pre>
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Get the layout inflater
+    LayoutInflater inflater = getActivity().getLayoutInflater();
+
+    // Inflate and set the layout for the dialog
+    // Pass null as the parent view because its going in the dialog layout
+    builder.setView(inflater.inflate(R.layout.dialog_signin, null))
+    // Add action buttons
+           .setPositiveButton(R.string.signin, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // sign in the user ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int id) {
+                   LoginDialogFragment.this.getDialog().cancel();
+               }
+           });      
+    return builder.create();
+}
+</pre>
+
+<div class="note">
+<p><strong>Dica:</strong> se você deseja uma caixa de diálogo personalizada,
+pode exibir uma {@link android.app.Activity} como uma caixa de diálogo
+em vez de usar as APIs {@link android.app.Dialog}. Basta criar uma atividade e definir seu tema como
+{@link android.R.style#Theme_Holo_Dialog Theme.Holo.Dialog}
+no elemento <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> do manifesto:</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.Dialog" >
+</pre>
+<p>Pronto. Agora a atividade é exibida em uma janela da caixa de diálogo em vez de tela cheia.</p>
+</div>
+
+
+
+<h2 id="PassingEvents">Direcionamento de eventos de volta ao host da caixa de diálogo</h2>
+
+<p>Quando o usuário toca em um dos botões de ação da caixa de diálogo ou seleciona um item de sua lista,
+o {@link android.support.v4.app.DialogFragment} pode realizar a ação
+necessária sozinho, mas normalmente será necessário fornecer o evento à atividade ou ao fragmento
+que abriu a caixa de diálogo. Para isso, defina uma interface com um método para cada tipo de evento de clique.
+Em seguida, implemente essa interface no componente do host
+que receberá os eventos de ação da caixa de diálogo.</p>
+
+<p>Por exemplo, a seguir há um {@link android.support.v4.app.DialogFragment} que define
+uma interface por meio da qual entrega os eventos de volta à atividade do host:</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    
+    /* The activity that creates an instance of this dialog fragment must
+     * implement this interface in order to receive event callbacks.
+     * Each method passes the DialogFragment in case the host needs to query it. */
+    public interface NoticeDialogListener {
+        public void onDialogPositiveClick(DialogFragment dialog);
+        public void onDialogNegativeClick(DialogFragment dialog);
+    }
+    
+    // Use this instance of the interface to deliver action events
+    NoticeDialogListener mListener;
+    
+    // Override the Fragment.onAttach() method to instantiate the NoticeDialogListener
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        // Verify that the host activity implements the callback interface
+        try {
+            // Instantiate the NoticeDialogListener so we can send events to the host
+            mListener = (NoticeDialogListener) activity;
+        } catch (ClassCastException e) {
+            // The activity doesn't implement the interface, throw exception
+            throw new ClassCastException(activity.toString()
+                    + " must implement NoticeDialogListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>A atividade que hospeda a caixa de diálogo cria uma instância da caixa
+com o construtor do fragmento da caixa de diálogo e recebe os eventos
+dela por meio de uma implementação da interface {@code NoticeDialogListener}:</p>
+
+<pre>
+public class MainActivity extends FragmentActivity
+                          implements NoticeDialogFragment.NoticeDialogListener{
+    ...
+    
+    public void showNoticeDialog() {
+        // Create an instance of the dialog fragment and show it
+        DialogFragment dialog = new NoticeDialogFragment();
+        dialog.show(getSupportFragmentManager(), "NoticeDialogFragment");
+    }
+
+    // The dialog fragment receives a reference to this Activity through the
+    // Fragment.onAttach() callback, which it uses to call the following methods
+    // defined by the NoticeDialogFragment.NoticeDialogListener interface
+    &#64;Override
+    public void onDialogPositiveClick(DialogFragment dialog) {
+        // User touched the dialog's positive button
+        ...
+    }
+
+    &#64;Override
+    public void onDialogNegativeClick(DialogFragment dialog) {
+        // User touched the dialog's negative button
+        ...
+    }
+}
+</pre>
+
+<p>Como a atividade do host implementa o {@code NoticeDialogListener} &mdash; que é
+forçado pelo método de retorno de chamada {@link android.support.v4.app.Fragment#onAttach onAttach()}
+exibido acima &mdash;, o fragmento da caixa de diálogo pode usar
+os métodos de retorno de chamada da interface para entregar eventos de clique à atividade:</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    ...
+
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Build the dialog and set up the button click handlers
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the positive button event back to the host activity
+                       mListener.onDialogPositiveClick(NoticeDialogFragment.this);
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the negative button event back to the host activity
+                       mListener.onDialogNegativeClick(NoticeDialogFragment.this);
+                   }
+               });
+        return builder.create();
+    }
+}
+</pre>
+
+
+
+<h2 id="ShowingADialog">Exibição de uma caixa de diálogo</h2>
+
+<p>Para exibir a caixa de diálogo, crie uma instância do {@link
+android.support.v4.app.DialogFragment} e chame {@link android.support.v4.app.DialogFragment#show
+show()} passando o {@link android.support.v4.app.FragmentManager} e um nome de tag
+para o fragmento da caixa de diálogo.</p>
+
+<p>Para obter o {@link android.support.v4.app.FragmentManager}, chama-se
+{@link android.support.v4.app.FragmentActivity#getSupportFragmentManager()}
+da {@link android.support.v4.app.FragmentActivity} ou {@link
+android.support.v4.app.Fragment#getFragmentManager()} de um {@link
+android.support.v4.app.Fragment}. Por exemplo:</p>
+
+<pre>
+public void confirmFireMissiles() {
+    DialogFragment newFragment = new FireMissilesDialogFragment();
+    newFragment.show(getSupportFragmentManager(), "missiles");
+}
+</pre>
+
+<p>O segundo argumento, {@code "missiles"}, é um nome de tag exclusivo que o sistema usa para salvar
+e restaurar o estado do fragmento quando necessário. Para que a tag obtenha um identificador
+do fragmento, chama-se {@link android.support.v4.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}.</p>
+
+
+
+
+<h2 id="FullscreenDialog">Exibição de uma caixa de diálogo em tela cheia ou como um fragmento incorporado</h2>
+
+<p>Pode-se ter um projeto de IU em que uma parte da IU apareça como uma caixa de diálogo em determinadas
+situações, mas como tela cheia ou fragmento incorporado em outras (dependendo, talvez,
+do tamanho da tela do dispositivo). A classe {@link android.support.v4.app.DialogFragment}
+oferece esta flexibilidade porque ainda pode comportar-se como um {@link
+android.support.v4.app.Fragment} incorporável.</p>
+
+<p>Contudo, não é possível usar {@link android.app.AlertDialog.Builder AlertDialog.Builder}
+nem outros objetos {@link android.app.Dialog} para criar a caixa de diálogo nesse caso. Se
+você deseja que {@link android.support.v4.app.DialogFragment} seja
+incorporável, defina a IU da caixa de diálogo em um layout e carregue ou layout no retorno de chamada
+{@link android.support.v4.app.DialogFragment#onCreateView
+onCreateView()}.</p>
+
+<p>A seguir há um exemplo de {@link android.support.v4.app.DialogFragment} que pode aparecer tanto como
+caixa de diálogo quanto como fragmento incorporável (usando um layout chamado <code>purchase_items.xml</code>):</p>
+
+<pre>
+public class CustomDialogFragment extends DialogFragment {
+    /** The system calls this to get the DialogFragment's layout, regardless
+        of whether it's being displayed as a dialog or an embedded fragment. */
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        // Inflate the layout to use as dialog or embedded fragment
+        return inflater.inflate(R.layout.purchase_items, container, false);
+    }
+  
+    /** The system calls this only when creating the layout in a dialog. */
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // The only reason you might override this method when using onCreateView() is
+        // to modify any dialog characteristics. For example, the dialog includes a
+        // title by default, but your custom layout might not need it. So here you can
+        // remove the dialog title, but you must call the superclass to get the Dialog.
+        Dialog dialog = super.onCreateDialog(savedInstanceState);
+        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
+        return dialog;
+    }
+}
+</pre>
+
+<p>A seguir, veja alguns códigos que decidem por exibir o fragmento como uma caixa de diálogo
+ou como uma IU de tela cheia com base no tamanho da tela:</p>
+
+<pre>
+public void showDialog() {
+    FragmentManager fragmentManager = getSupportFragmentManager();
+    CustomDialogFragment newFragment = new CustomDialogFragment();
+    
+    if (mIsLargeLayout) {
+        // The device is using a large layout, so show the fragment as a dialog
+        newFragment.show(fragmentManager, "dialog");
+    } else {
+        // The device is smaller, so show the fragment fullscreen
+        FragmentTransaction transaction = fragmentManager.beginTransaction();
+        // For a little polish, specify a transition animation
+        transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
+        // To make it fullscreen, use the 'content' root view as the container
+        // for the fragment, which is always the root view for the activity
+        transaction.add(android.R.id.content, newFragment)
+                   .addToBackStack(null).commit();
+    }
+}
+</pre>
+
+<p>Para obter mais informações sobre a realização de operações de fragmentos, consulte o guia 
+<a href="{@docRoot}guide/components/fragments.html">Fragmentos</a>.</p>
+
+<p>Nesse exemplo, o booleano <code>mIsLargeLayout</code> especifica se o dispositivo atual
+deve usar o projeto de layout grande do aplicativo (e, portanto, exibir esse fragmento como uma caixa de diálogo em
+vez de tela cheia). O melhor modo de definir esse tipo de booleano é declarar
+um <a href="{@docRoot}guide/topics/resources/more-resources.html#Bool">valor de recurso bool</a>
+com um valor de <a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">recurso alternativo</a> para diferentes tamanhos de tela. Por exemplo, a seguir há duas
+versões de recurso bool para diferentes tamanhos de tela:</p>
+
+<p class="code-caption">res/values/bools.xml</p>
+<pre>
+&lt;!-- Default boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">false&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p class="code-caption">res/values-large/bools.xml</p>
+<pre>
+&lt;!-- Large screen boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">true&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p>Assim, é possível inicializar o valor {@code mIsLargeLayout} durante o método 
+{@link android.app.Activity#onCreate onCreate()} da atividade:</p>
+
+<pre>
+boolean mIsLargeLayout;
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_main);
+
+    mIsLargeLayout = getResources().getBoolean(R.bool.large_layout);
+}
+</pre>
+
+
+
+<h3 id="ActivityAsDialog">Exibição de uma atividade como uma caixa de diálogo em telas grandes</h3>
+
+<p>Em vez de exibir uma caixa de diálogo como uma IU de tela cheia em telas pequenas, é possível obter
+o mesmo resultado exibindo uma {@link android.app.Activity} como uma caixa de diálogo
+em telas grandes. A abordagem escolhida depende do projeto do aplicativo,
+mas a exibição de uma atividade como caixa de diálogo normalmente é útil quando o aplicativo já está projetado
+para telas pequenas e é preciso melhorar a experiência em tablets exibindo uma atividade de vida curta
+como uma caixa de diálogo.</p>
+
+<p>Para exibir uma atividade como uma caixa de diálogo somente em telas grandes,
+aplique o tema {@link android.R.style#Theme_Holo_DialogWhenLarge Theme.Holo.DialogWhenLarge}
+no elemento <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> do manifesto:</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.DialogWhenLarge" >
+</pre>
+
+<p>Para obter mais informações sobre estilizar as atividades com temas, consulte o guia <a href="{@docRoot}guide/topics/ui/themes.html">Estilos e temas</a>.</p>
+
+
+
+<h2 id="DismissingADialog">Dispensa de uma caixa de diálogo</h2>
+
+<p>Quando o usuário toca em qualquer botão de ação criado
+com um {@link android.app.AlertDialog.Builder}, o sistema dispensa a caixa de diálogo.</p>
+
+<p>O sistema também dispensa a caixa de diálogo quando o usuário toca em um item em uma lista da caixa de diálogo, exceto
+quanto a lista usa botões de opção ou caixas de seleção. Caso contrário, é possível dispensá-la manualmente
+chamando {@link android.support.v4.app.DialogFragment#dismiss()} no {@link
+android.support.v4.app.DialogFragment}.</p>
+
+<p>Se for necessário realizar determinadas
+ações quando a caixa de diálogo é dispensada, é possível implementar o método {@link
+android.support.v4.app.DialogFragment#onDismiss onDismiss()} no {@link
+android.support.v4.app.DialogFragment}.</p>
+
+<p>Também é possível <em>cancelar</em> uma caixa de diálogo. Trata-se de um evento especial que indica que o usuário
+se retirou explicitamente da caixa de diálogo sem concluir a tarefa. Isso ocorre se o usuário pressionar o botão 
+<em>Voltar</em>, tocar na tela fora da área da caixa de diálogo
+ou se você chamar {@link android.app.Dialog#cancel()} explicitamente no {@link
+android.app.Dialog} (como em resposta a um botão "Cancelar" na caixa de diálogo).</p>
+
+<p>Como mostrado no exemplo acima, é possível responder ao evento de cancelamento implementando
+{@link android.support.v4.app.DialogFragment#onCancel onCancel()} na classe {@link
+android.support.v4.app.DialogFragment}.</p>
+
+<p class="note"><strong>Observação:</strong> o sistema chama
+{@link android.support.v4.app.DialogFragment#onDismiss onDismiss()} para cada evento que
+chama o retorno de chamada {@link android.support.v4.app.DialogFragment#onCancel onCancel()}. Entretanto,
+se você chamar {@link android.app.Dialog#dismiss Dialog.dismiss()} ou  {@link
+android.support.v4.app.DialogFragment#dismiss DialogFragment.dismiss()},
+ o sistema chamará {@link android.support.v4.app.DialogFragment#onDismiss onDismiss()}, <em>mas
+não</em> {@link android.support.v4.app.DialogFragment#onCancel onCancel()}. Portanto, geralmente, deve-se
+chamar {@link android.support.v4.app.DialogFragment#dismiss dismiss()} quando o usuário pressiona
+o botão <em>positivo</em> na caixa de diálogo para removê-la da vista.</p>
+
+
diff --git a/docs/html-intl/intl/pt-br/guide/topics/ui/menus.jd b/docs/html-intl/intl/pt-br/guide/topics/ui/menus.jd
new file mode 100644
index 0000000..833f896
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/ui/menus.jd
@@ -0,0 +1,1031 @@
+page.title=Menus
+parent.title=Interface do usuário
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Neste documento</h2>
+<ol>
+  <li><a href="#xml">Definição de um menu em XML</a></li>
+  <li><a href="#options-menu">Criação de um menu de opções</a>
+    <ol>
+      <li><a href="#RespondingOptionsMenu">Tratamento de eventos de clique</a></li>
+      <li><a href="#ChangingTheMenu">Alteração de itens de menu em tempo de execução</a></li>
+    </ol>
+  </li>
+  <li><a href="#context-menu">Criação de menus contextuais</a>
+    <ol>
+      <li><a href="#FloatingContextMenu">Criação de um menu de contexto flutuante</a></li>
+      <li><a href="#CAB">Uso do modo de ação contextual</a></li>
+    </ol>
+  </li>
+  <li><a href="#PopupMenu">Criação de um menu pop-up</a>
+    <ol>
+      <li><a href="#PopupEvents">Tratamento de eventos de clique</a></li>
+    </ol>
+  </li>
+  <li><a href="#groups">Criação de grupos de menu</a>
+    <ol>
+      <li><a href="#checkable">Uso de itens de menu marcáveis</a></li>
+    </ol>
+  </li>
+  <li><a href="#intents">Adição de itens de menu com base em uma intenção</a>
+    <ol>
+      <li><a href="#AllowingToAdd">Permissão para a atividade ser adicionada a outros menus</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>Classes principais</h2>
+  <ol>
+    <li>{@link android.view.Menu}</li>
+    <li>{@link android.view.MenuItem}</li>
+    <li>{@link android.view.ContextMenu}</li>
+    <li>{@link android.view.ActionMode}</li>
+  </ol>
+
+  <h2>Veja também</h2>
+  <ol>
+    <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Barra de ação</a></li>
+    <li><a href="{@docRoot}guide/topics/resources/menu-resource.html">Recurso de menu</a></li>
+    <li><a href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">Diga
+adeus ao botão de menu</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Menus são componentes comuns da interface do usuário em diversos tipos de aplicativos. Para fornecer uma experiência
+familiar e consistente ao usuário, você deve usar APIs de {@link android.view.Menu} para apresentar
+ações de usuário e outras opções em suas atividades.</p>
+
+<p>Começando com Android 3.0 (API de nível 11), dispositivos Android não são mais necessários
+para fornecer um botão de <em>Menu</em> dedicado. Com esta alteração, os aplicativos do Android devem migrar de uma dependência
+no painel de menu 6 itens tradicional para fornecer uma barra de ação para apresentar as ações comuns
+de usuário.</p>
+
+<p>Apesar de o design e a experiência do usuário para alguns dos itens do menu terem passado por mudanças, a semântica para definir
+um conjunto de ações e opções ainda baseia-se em APIs de {@link android.view.Menu} . Este guia
+mostra como criar os três tipos fundamentais de menus ou apresentações de ação
+em todas as versões do Android:</p>
+
+<dl>
+  <dt><strong>Menu de opções e barra de ação</strong></dt>
+    <dd>O <a href="#options-menu">menu de opções</a> é a coleção principal de itens de menu
+para uma atividade. É onde deve-se colocar as ações que têm impacto global no aplicativo,
+como "Buscar", "Escrever e-mail" e "Configurações".
+  <p>Se estiver desenvolvendo para Android 2.3 ou anterior, os usuários
+podem revelar o painel do menu de opções pressionando o botão <em>Menu</em>.</p>
+  <p>No Android 3.0 ou em posteriores, os itens do menu de opções são apresentados pela <a href="{@docRoot}guide/topics/ui/actionbar.html">barra de ação</a> como uma combinação de itens
+de ação na tela e opções de estouro. A partir do Android 3.0, o botão <em>Menu</em> é censurado (alguns
+dispositivos
+não têm), então você deve migrar usando a barra de ação para fornecer acesso a ações
+e outras opções.</p>
+  <p>Consulte a seção <a href="#options-menu">Criação de um menu de opções</a>.</p>
+    </dd>
+    
+  <dt><strong>Modo de ação contextual e menu de contexto</strong></dt>
+  
+   <dd>Um menu de contexto é um <a href="#FloatingContextMenu">menu flutuante</a> que aparece quando
+o usuário realiza um clique longo em um elemento. Ele fornece ações que afetam o conteúdo selecionado
+ou a estrutura do contexto.
+  <p>Ao desenvolver para Android 3.0 ou posterior, você deve usar o <a href="#CAB">modo de ação contextual</a> para ativar as ações no conteúdo selecionado. Este modo exibe os itens de ação
+que afetam o conteúdo selecionado em uma barra no topo da tela e permite que o usuário
+selecione vários itens.</p>
+  <p>Consulte a seção <a href="#context-menu">Criação de menus contextuais</a>.</p>
+</dd>
+    
+  <dt><strong>Menu pop-up</strong></dt>
+    <dd>Um menu pop-up exibe itens em uma lista vertical ancorada à vista
+que apresentou o menu. É bom para fornecer um estouro de ações relacionado a conteúdo específico
+ou opções de fornecimento de uma segunda parte de um comando. As ações em um menu pop-up
+<strong>não</strong> devem afetar diretamente o conteúdo correspondente &mdash; é para isso que servem
+as ações contextuais. Preferivelmente, o menu pop-up serve para ações estendidas que relacionam as regiões de conteúdo
+na atividade.
+  <p>Consulte a seção <a href="#PopupMenu">criar um menu pop-up</a>.</p>
+</dd>
+</dl>
+
+
+
+<h2 id="xml">Definição de um menu em XML</h2>
+
+<p>Para todos os tipos de menu, o Android fornece um formato XML padrão para definir os itens de menu.
+Em vez de criar um menu no código da atividade, você deve definir um menu e todos os seus itens
+em um <a href="{@docRoot}guide/topics/resources/menu-resource.html">recurso de menu</a> XML. É possível, assim,
+inflar o recurso do menu (carregá-lo como um objeto {@link android.view.Menu}) na atividade, ou
+no fragmento.</p>
+
+<p>Usar um recurso de menu é uma boa prática por alguns motivos:</p>
+<ul>
+  <li>É mais fácil para visualizar a estrutura do menu em XML.</li>
+  <li>Ele separa o conteúdo do menu do código comportamental do aplicativo.</li>
+  <li>Ele permite criar configurações alternativas de menu para versões diferentes de plataforma,
+de tamanhos de tela e de outras configurações aproveitando a estrutura dos <a href="{@docRoot}guide/topics/resources/index.html">recursos do aplicativo</a>.</li>
+</ul>
+
+<p>Para definir o menu, crie um arquivo XML dentro do diretório <code>res/menu/</code>
+do projeto e crie o menu com os seguintes elementos:</p>
+<dl>
+  <dt><code>&lt;menu></code></dt>
+    <dd>Define um {@link android.view.Menu}, que é um recipiente para os itens de menu. Um elemento
+<code>&lt;menu></code> deve ser o nódulo raiz para o arquivo e pode reter um ou mais elementos
+<code>&lt;item></code> e <code>&lt;group></code>.</dd>
+
+  <dt><code>&lt;item></code></dt>
+    <dd>Cria um {@link android.view.MenuItem}, que representa um único item em um menu. Este
+elemento pode conter um elemento <code>&lt;menu></code> aninhado para criar um submenu.</dd>
+    
+  <dt><code>&lt;group></code></dt>
+    <dd>Um recipiente invisível e opcional para os elementos {@code &lt;item&gt;}. Ele permite que você categorize
+itens de menu para que eles compartilhem propriedades como estado ativo e visibilidade. Para obter mais informações,
+consulte a seção <a href="#groups">Criação de grupos de menu</a>.</dd>
+</dl>
+
+
+<p>A seguir há um exemplo de menu chamado <code>game_menu.xml</code>:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/new_game"
+          android:icon="@drawable/ic_new_game"
+          android:title="@string/new_game"
+          android:showAsAction="ifRoom"/&gt;
+    &lt;item android:id="@+id/help"
+          android:icon="@drawable/ic_help"
+          android:title="@string/help" /&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>O elemento <code>&lt;item></code> é compatível com vários atributos que você pode usar para definir a aparência ou o comportamento
+de um item. Os itens no menu acima incluem os seguintes atributos:</p>
+
+<dl>
+  <dt>{@code android:id}</dt>
+    <dd>Um ID de recurso que é único para o item. Ele permite que o aplicativo reconheça o item
+quando o usuário o seleciona.</dd>
+  <dt>{@code android:icon}</dt>
+    <dd>Uma referência a um desenhável para usar como o ícone do item.</dd>
+  <dt>{@code android:title}</dt>
+    <dd>Uma referência a uma string para usar como o título do item.</dd>
+  <dt>{@code android:showAsAction}</dt>
+    <dd>Especifica quando e como este item deve aparecer como um item de ação na <a href="{@docRoot}guide/topics/ui/actionbar.html">barra de ação</a>.</dd>
+</dl>
+
+<p>Esses são os atributos mais importantes que devem ser usados, mas há vários outros disponíveis.
+Para obter informações sobre todos os atributos compatíveis, consulte o documento <a href="{@docRoot}guide/topics/resources/menu-resource.html">Recurso de menu</a>.</p>
+
+<p>É possível adicionar um submenu a um item em qualquer menu (exceto a um submenu) adicionando um elemento {@code &lt;menu&gt;}
+como filho de um {@code &lt;item&gt;}. Os submenus são úteis quando o aplicativo
+tem várias funções que podem ser organizadas em tópicos, como itens em uma barra de menu do aplicativo do PC (arquivo,
+editar, visualizar etc.). Por exemplo:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/file"
+          android:title="@string/file" &gt;
+        &lt;!-- "file" submenu --&gt;
+        &lt;menu&gt;
+            &lt;item android:id="@+id/create_new"
+                  android:title="@string/create_new" /&gt;
+            &lt;item android:id="@+id/open"
+                  android:title="@string/open" /&gt;
+        &lt;/menu&gt;
+    &lt;/item&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Para usar o menu em sua atividade, você precisa inflar o recurso do menu (converter o recurso
+XML em um objeto programável) usando {@link android.view.MenuInflater#inflate(int,Menu)
+MenuInflater.inflate()}. Nas seções a seguir, você verá como inflar um menu para cada
+tipo de menu.</p>
+
+
+
+<h2 id="options-menu">Criação de um menu de opções</h2>
+
+<div class="figure" style="width:200px;margin:0">
+  <img src="{@docRoot}images/options_menu.png" height="333" alt="" />
+  <p class="img-caption"><strong>Figura 1.</strong> Menu de opções
+no navegador, no Android 2.3.</p>
+</div>
+
+<p>O menu de opções é onde você deve incluir ações e outras opções que são relevantes
+para o contexto de atividade atual, como "Buscar", "Escrever e-mail" e "Configurações".</p>
+
+<p>O local onde os itens no menu de opções aparecem na tela depende da versão em que o aplicativo
+foi desenvolvido:</p>
+
+<ul>
+  <li>Caso tenha desenvolvido o aplicativo para <strong>Android 2.3.x (API de nível 10) ou 
+inferior</strong>, os conteúdos do menu de opções aparecerão na parte inferior da tela, quando o usuário
+pressionar o botão <em>Menu</em>, como exibido na figura 1. Quando aberto, a primeira parte visível é
+o menu
+de ícones, que possui até seis itens de menu. Se o menu incluir mais de seis itens, o Android
+colocará o sexto item e o resto em um menu flutuante, que o usuário poderá abrir selecionando
+<em>Mais</em>.</li>
+
+  <li>Se você desenvolveu o aplicativo para <strong>Android 3.0 (API de nível 11) ou
+superior</strong>, os itens do menu de opções estão disponíveis na <a href="{@docRoot}guide/topics/ui/actionbar.html">barra de ação</a>. Por padrão, o sistema
+posiciona todos os itens na ação de estouro, que o usuário pode revelar com o ícone de estouro de ação
+no lado direito da barra de ação (ou pressionando o botão <em>Menu</em>, se disponível). Para
+ativar
+o acesso rápido a ações importantes, é possível promover alguns itens para aparecerem na barra de ação adicionando
+{@code android:showAsAction="ifRoom"} aos elementos {@code &lt;item&gt;} correspondentes (veja a figura
+2). <p>Para obter mais informações sobre os itens de ação e outros comportamentos da barra de ação, consulte o guia <a href="{@docRoot}guide/topics/ui/actionbar.html">Barra de ação</a>. </p>
+<p class="note"><strong>Observação:</strong> Mesmo se <em>não</em> estiver desenvolvendo para Android 3.0 ou
+posteriores, é possível compilar seu próprio layout de barra de ação para obter um efeito semelhante. Para obter um exemplo de como é possível
+suportar versões mais antigas do Android com uma barra de ação, consulte o exemplo <a href="{@docRoot}resources/samples/ActionBarCompat/index.html">Compatibilidade da barra de ação</a>
+.</p>
+</li>
+</ul>
+
+<img src="{@docRoot}images/ui/actionbar.png" alt="" />
+<p class="img-caption"><strong>Figura 2.</strong> Barra de ação do aplicativo <a href="{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb Gallery</a>, exibindo
+guias de navegação e um item de ação de câmera (além do botão de estouro de ação).</p>
+
+<p>É possível declarar itens para o menu de opções da subclasse {@link android.app.Activity}
+ou de uma subclasse {@link android.app.Fragment}. Se a atividade e os fragmentos
+declararem itens para o menu de opções, eles estarão combinados na IU. O item da atividade aparece primeiro,
+seguido de cada um desses fragmentos na ordem em que são adicionados
+à atividade. Se necessário, é possível reorganizar os itens do menu com o atributo {@code android:orderInCategory}
+em cada {@code &lt;item&gt;} que precisar mover.</p>
+
+<p>Para especificar o menu de opções para uma atividade, substitua {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} (os fragmentos fornecem
+o próprio retorno de chamada de {@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()}). Neste método
+, é possível inflar o recurso de menu (<a href="#xml">definido no XML</a>) em um {@link
+android.view.Menu} fornecido no retorno de chamada. Por exemplo:</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu) {
+    MenuInflater inflater = {@link android.app.Activity#getMenuInflater()};
+    inflater.inflate(R.menu.game_menu, menu);
+    return true;
+}
+</pre>
+
+<p>Também é possível adicionar itens de menu usando {@link android.view.Menu#add(int,int,int,int)
+add()} e recuperar os itens com {@link android.view.Menu#findItem findItem()} para revisar
+as propriedades com APIs de {@link android.view.MenuItem}.</p>
+
+<p>Caso tenha desenvolvido o aplicativo para Android 2.3.x e anteriores, o sistema chamará {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} para criar o menu de opções
+quando o usuário abrir o menu pela primeira vez. Caso tenha desenvolvido para Android 3.0 e posteriores,
+o sistema chama {@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}
+ao iniciar a atividade para mostrar os itens para a barra de ação.</p>
+
+
+
+<h3 id="RespondingOptionsMenu">Tratamento de eventos de clique</h3>
+
+<p>Quando o usuário seleciona um item para o menu de opções (incluindo os itens de ação na barra de ação),
+o sistema chama o método {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} da atividade. Este método passa o {@link android.view.MenuItem} selecionado. É possível
+identificar o item chamando {@link android.view.MenuItem#getItemId()}, que retorna o ID único
+para o item de menu (definido pelo atributo {@code android:id} no recurso de menu ou em um número inteiro
+dado ao método {@link android.view.Menu#add(int,int,int,int) add()}). É possível combinar este ID
+com itens de menu conhecidos para realizar a ação adequada. Por exemplo:</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    // Handle item selection
+    switch (item.getItemId()) {
+        case R.id.new_game:
+            newGame();
+            return true;
+        case R.id.help:
+            showHelp();
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>Ao lidar com um item de menu, retorne {@code true}. Se não lidar com o item de menu,
+ você deverá chamar a implementação de superclasse de {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} (a implementação
+padrão retornará como falsa).</p>
+
+<p>Se a atividade incluir fragmentos, o sistema chamará primeiro {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} para a atividade e, em seguida,
+para cada fragmento (na ordem em que cada fragmento foi adicionado) até um retornar como
+{@code true} ou até todos os fragmentos serem chamados.</p>
+
+<p class="note"><strong>Dica:</strong> o Android 3.0 adiciona a possibilidade de definir o comportamento do clique
+para um item de menu em XML, usando o atributo {@code android:onClick}. O valor do atributo
+deve ser o nome de um método definido pela atividade usando o menu. O método
+deve ser público e aceitar um único parâmetro {@link android.view.MenuItem} &mdash; quando o sistema chamar este método,
+ ele passará o item de menu selecionado. Para obter mais informações e um exemplo, consulte o documento <a href="{@docRoot}guide/topics/resources/menu-resource.html">Recurso de menu</a>.</p>
+
+<p class="note"><strong>Dica:</strong> se o aplicativo contiver várias atividades
+e algumas delas fornecerem o mesmo menu de opções,
+considere criar uma atividade que não implemente nada exceto os métodos {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} e {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()}. Em seguida, estenda esta classe para cada atividade que deve compartilhar
+o mesmo menu de opções. Desta maneira, é possível gerenciar um conjunto de códigos para lidar com ações de menu
+e cada classe descendente herda os comportamentos do menu.
+Se quiser adicionar itens de menu a uma das atividades descendentes,
+substitua {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} nesta atividade. Chame {@code super.onCreateOptionsMenu(menu)} para que os itens de menu originais
+sejam criados e, em seguida, adicione os novos itens de menu com {@link
+android.view.Menu#add(int,int,int,int) menu.add()}. Você também pode substituir o comportamento
+da superclasse para itens de menu individuais.</p>
+
+
+<h3 id="ChangingTheMenu">Alteração dos itens de menu em tempo de execução</h3>
+
+<p>Depois que o sistema chamar {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()}, ele reterá uma instância do {@link android.view.Menu} que você populará
+e não chamará {@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}
+novamente, a não ser que o menu seja invalidado por algum motivo. No entanto, você deve usar {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} somente para criar o estado inicial do menu
+e não para realizar alterações durante o ciclo de vida da atividade.</p>
+
+<p>Caso queira modificar o menu de opções com base
+em eventos que ocorrem durante o ciclo de vida da atividade, é possível fazê-lo
+no método {@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}. Este método
+passa a você o objeto {@link android.view.Menu}, já que ele existe para que seja possível modificá-lo,
+como com adição, remoção ou desativação de itens. (Os fragmentos também fornecem um retorno de chamada {@link
+android.app.Fragment#onPrepareOptionsMenu onPrepareOptionsMenu()}.)</p>
+
+<p>No Android 2.3.x e em anteriores, o sistema chamará {@link
+android.app.Activity#onPrepareOptionsMenu(Menu)
+onPrepareOptionsMenu()} sempre que o usuário abrir o menu de opções (pressionar o botão <em>Menu</em>
+).</p>
+
+<p>No Android 3.0 e posteriores, avalia-se o menu de opções quanto a sempre estar aberto quando os itens de menu
+são apresentados na barra de ação. Quando um evento ocorre e você quer realizar uma atualização de menu,
+você deve chamar {@link android.app.Activity#invalidateOptionsMenu invalidateOptionsMenu()} para pedir
+que o sistema chame {@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}.</p>
+
+<p class="note"><strong>Observação:</strong> 
+você nunca deve alterar os itens no menu de opções com base no {@link android.view.View} atualmente
+em foco. Quando estiver no modo de toque (quando o usuário não está usando cursor de bola ou um teclado), as vistas
+não podem ter foco, então você nunca deve usar o foco como base para modificar
+os itens no menu de opções. Se quiser fornecer itens de menu que sejam sensíveis a contexto para um {@link
+android.view.View}, use um <a href="#context-menu">menu de contexto</a>.</p>
+
+
+
+
+<h2 id="context-menu">Criação de menus contextuais</h2>
+
+<div class="figure" style="width:420px;margin-top:-1em">
+  <img src="{@docRoot}images/ui/menu-context.png" alt="" />
+  <p class="img-caption"><strong>Figura 3.</strong> Capturas de tela de um menu de contexto flutuante (esquerda)
+e a barra de ação contextual (direita).</p>
+</div>
+
+<p>Um menu contextual oferece ações que afetam um item ou estrutura de contexto específica na IU.
+É possível fornecer um menu de contexto para qualquer vista, mas ele é geralmente usado para itens em um {@link
+android.widget.ListView}, {@link android.widget.GridView}, ou em outras coleções de vistas
+em que o usuário pode realizar ações diretas em cada item.</p>
+
+<p>Há duas formas de fornecer ações contextuais:</p>
+<ul>
+  <li>Em um <a href="#FloatingContextMenu">menu de contexto flutuante</a>. Um menu aparece como uma lista flutuante
+de itens de menu (semelhante a uma caixa de diálogo) quando o usuário realiza um clique longo (pressiona e segura)
+em uma vista que declara suporte para um menu de contexto. Os usuários podem realizar uma ação contextual
+em um item por vez.</li>
+
+  <li>No <a href="#CAB">modo de ação contextual</a>. Este modo é uma implementação de sistema de
+{@link android.view.ActionMode} que exibe uma <em>barra de ação contextual</em> no topo da tela
+com itens de ação que afetam os itens selecionados. Quando este modo está ativo,
+os usuários podem realizar uma ação em vários itens por vez (se o aplicativo permitir).</li>
+</ul>
+
+<p class="note"><strong>Observação:</strong> o modo de ação contextual está disponível no Android 3.0 (API
+de nível 11) e em posteriores e é a técnica preferencial para exibir ações contextuais
+quando disponível. Se o aplicativo for compatível com versões mais antigas que a 3.0, então você deve retornar a um menu
+de contexto flutuante nestes dispositivos.</p>
+
+
+<h3 id="FloatingContextMenu">Criação de um menu de contexto flutuante</h3>
+
+<p>Para fornecer um menu de contexto flutuante:</p>
+<ol>
+  <li>Registre o {@link android.view.View} ao qual o menu de contexto deve estar associado
+chamando {@link android.app.Activity#registerForContextMenu(View) registerForContextMenu()} e passe-o
+para {@link android.view.View}.
+  <p>Se a atividade usar {@link android.widget.ListView} ou {@link android.widget.GridView}
+e você quiser que cada item forneça o mesmo menu de contexto, registre todos os itens para um menu de contexto
+passando {@link android.widget.ListView} ou {@link android.widget.GridView} para {@link
+android.app.Activity#registerForContextMenu(View) registerForContextMenu()}.</p>
+</li>
+
+  <li>Implemente o método {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()}
+em {@link android.app.Activity} ou {@link android.app.Fragment}.
+  <p>Quando a vista registrada receber um evento de clique longo, o sistema chamará o método {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()}
+. É aqui que você define os itens de menu, geralmente inflando um recurso de menu. Por
+exemplo:</p>
+<pre>
+&#64;Override
+public void onCreateContextMenu(ContextMenu menu, View v,
+                                ContextMenuInfo menuInfo) {
+    super.onCreateContextMenu(menu, v, menuInfo);
+    MenuInflater inflater = getMenuInflater();
+    inflater.inflate(R.menu.context_menu, menu);
+}
+</pre>
+
+<p>{@link android.view.MenuInflater} permite que você infle o menu de contexto de um <a href="{@docRoot}guide/topics/resources/menu-resource.html">recurso de menu</a>. Os parâmetros do método
+de retorno de chamada incluem o {@link android.view.View}
+que o usuário selecionou e um objeto {@link android.view.ContextMenu.ContextMenuInfo} que fornece
+informações adicionais sobre o item selecionado. Se sua atividade tiver várias vistas, em que cada uma forneça
+um menu de contexto diferente, você deve usar esses parâmetros para determinar qual menu de contexto
+deve ser inflado.</p>
+</li>
+
+<li>Implemente {@link android.app.Activity#onContextItemSelected(MenuItem)
+onContextItemSelected()}.
+  <p>Quando o usuário selecionar um item de menu, o sistema chamará este método para que você possa realizar
+a ação adequada. Por exemplo:</p>
+
+<pre>
+&#64;Override
+public boolean onContextItemSelected(MenuItem item) {
+    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
+    switch (item.getItemId()) {
+        case R.id.edit:
+            editNote(info.id);
+            return true;
+        case R.id.delete:
+            deleteNote(info.id);
+            return true;
+        default:
+            return super.onContextItemSelected(item);
+    }
+}
+</pre>
+
+<p>O método {@link android.view.MenuItem#getItemId()} consulta o ID
+para o item de menu selecionado, o qual pode ser atribuído a cada item de menu no XML usando o atributo {@code
+android:id}, como exibido na seção <a href="#xml">Definição de um menu em
+XML</a>.</p>
+
+<p>Ao lidar com um item de menu, retorne {@code true}. Se não lidar com o item de menu,
+você deverá passar o item de menu para a implementação de superclasse. Se a atividade incluir fragmentos,
+ela receberá este retorno de chamada primeiro. Ao chamar a superclasse ao não lidar, o sistema
+passará o evento para o respectivo método de retorno de chamada em cada fragmento, um por vez (na ordem
+em que cada fragmento foi adicionado) até que {@code true} ou {@code false} seja retornado. (A implementação
+padrão para {@link android.app.Activity} e {@code android.app.Fragment} retorna {@code
+false}, então você deve sempre chamar a superclasse ao não tratar de um item de menu.)</p>
+</li>
+</ol>
+
+
+<h3 id="CAB">Uso do modo de ação contextual</h3>
+
+<p>O modo de ação contextual é uma implementação de sistema de {@link android.view.ActionMode}
+que direciona a interação do usuário a efetuar ações contextuais. Quando um usuário
+ativa este modo selecionando um item, uma <em>barra de ação contextual</em> aparece na parte superior da tela
+para apresentar as ações que o usuário pode realizar nos itens selecionados. Enquanto este modo estiver ativo,
+o usuário pode selecionar vários itens (se você permitir), desmarcar itens e continuar
+a navegar dentro da atividade (o tanto que você permitir). O modo de ação
+é desativado e a barra de ação contextual desaparece quando o usuário desmarca todos os itens, pressiona o botão VOLTAR,
+ou seleciona a ação <em>Pronto</em> na lateral esquerda da barra.</p>
+
+<p class="note"><strong>Observação:</strong> a barra de ação contextual não é necessariamente
+associada à <a href="{@docRoot}guide/topics/ui/actionbar.html">barra de ação</a>. Elas operam de forma independente,
+apesar de a barra de ação contextual ocupar visualmente a posição
+da barra de ação.</p>
+
+<p>Caso esteja desenvolvendo para Android 3.0 (API de nível 11) e posteriores,
+você deve usar o modo de ação contextual para apresentar ações contextuais, em vez de usar o <a href="#FloatingContextMenu">menu de contexto flutuante</a>.</p>
+
+<p>Para oferecer vistas que fornecem ações contextuais, você deve invocar o modo de ação contextual
+sobre um dos eventos (ou ambos):</p>
+<ul>
+  <li>O usuário realiza um clique longo na vista.</li>
+  <li>O usuário seleciona uma caixa de seleção ou um componente de IU semelhante dentro da vista.</li>
+</ul>
+
+<p>A maneira do aplicativo de invocar o modo de ação contextual e definir o comportamento
+para cada ação depende do seu projeto. Há basicamente dois projetos:</p>
+<ul>
+  <li>Para ações contextuais em vistas arbitrárias individuais.</li>
+  <li>Para ações contextuais de agrupadas em itens em um {@link
+android.widget.ListView} ou {@link android.widget.GridView} (permitindo que o usuário selecione vários itens
+e realize uma ação em todos eles).</li>
+</ul>
+
+<p>As seguintes seções descrevem a configuração necessária para cada cenário.</p>
+
+
+<h4 id="CABforViews">Ativação do modo de ação contextual para vistas individuais</h4>
+
+<p>Caso queira invocar o modo de ação contextual somente quando o usuário selecionar
+vistas específicas, você deve:</p>
+<ol>
+  <li>Implementar a interface {@link android.view.ActionMode.Callback}. Em seus métodos de retorno de chamada,
+é possível especificar as ações da barra de ação contextual, responder aos eventos de clique em itens de ação,
+e tratar de outros eventos de ciclo de vida do modo de ação.</li>
+  <li>Chame {@link android.app.Activity#startActionMode startActionMode()} quando quiser exibir
+a barra (como quando o usuário realiza cliques longos na visualização).</li>
+</ol>
+
+<p>Por exemplo:</p>
+
+<ol>
+  <li>Implementar a interface {@link android.view.ActionMode.Callback ActionMode.Callback}:
+<pre>
+private ActionMode.Callback mActionModeCallback = new ActionMode.Callback() {
+
+    // Called when the action mode is created; startActionMode() was called
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate a menu resource providing context menu items
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context_menu, menu);
+        return true;
+    }
+
+    // Called each time the action mode is shown. Always called after onCreateActionMode, but
+    // may be called multiple times if the mode is invalidated.
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        return false; // Return false if nothing is done
+    }
+
+    // Called when the user selects a contextual menu item
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        switch (item.getItemId()) {
+            case R.id.menu_share:
+                shareCurrentItem();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    // Called when the user exits the action mode
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        mActionMode = null;
+    }
+};
+</pre>
+
+<p>Observe que esses retornos de chamada de eventos são quase exatamente iguais aos retornos de chamada do <a href="#options-menu">menu de opções</a>, exceto que cada um deles também passa o objeto {@link
+android.view.ActionMode} associado ao evento. É possível usar APIs de {@link
+android.view.ActionMode} para realizar várias alterações ao CAB, como revisar um título e um subtítulo
+com {@link android.view.ActionMode#setTitle setTitle()} e {@link
+android.view.ActionMode#setSubtitle setSubtitle()} (útil para indicar quantos itens
+são selecionados).</p>
+
+<p>Observe também que os exemplos acima definem a variável {@code mActionMode} como nula quando
+o modo de ação é destruído. Na etapa a seguir, você verá como ela é inicializada
+e quão útil salvar a variável do membro na atividade ou no fragmento pode ser.</p>
+</li>
+
+  <li>Chame {@link android.app.Activity#startActionMode startActionMode()} para ativar o modo de ação contextual
+quando apropriado, como em resposta a um clique longo em um {@link
+android.view.View}:</p>
+
+<pre>
+someView.setOnLongClickListener(new View.OnLongClickListener() {
+    // Called when the user long-clicks on someView
+    public boolean onLongClick(View view) {
+        if (mActionMode != null) {
+            return false;
+        }
+
+        // Start the CAB using the ActionMode.Callback defined above
+        mActionMode = getActivity().startActionMode(mActionModeCallback);
+        view.setSelected(true);
+        return true;
+    }
+});
+</pre>
+
+<p>Ao chamar {@link android.app.Activity#startActionMode startActionMode()}, o sistema
+retorna o {@link android.view.ActionMode} criado. Ao salvar isto em uma variável do membro,
+é possível realizar alterações na barra de ação contextual em resposta a outros eventos. No exemplo acima,
+{@link android.view.ActionMode} é usado para garantir que a instância {@link android.view.ActionMode}
+não seja recriada se já estiver ativa, verificando se o membro é nulo antes de iniciar
+o modo de ação.</p>
+</li>
+</ol>
+
+
+
+<h4 id="CABforListView">Ativação de ações contextuais agrupadas em ListView ou GridView</h4>
+
+<p>Se tiver uma coleção de itens em um {@link android.widget.ListView} ou {@link
+android.widget.GridView} (ou outra extensão de {@link android.widget.AbsListView}) e quiser
+permitir que os usuários realizem ações de agrupamento, você deve:</p>
+
+<ul>
+  <li>Implementar a interface {@link android.widget.AbsListView.MultiChoiceModeListener} e defini-la
+para o grupo de visualização com {@link android.widget.AbsListView#setMultiChoiceModeListener
+setMultiChoiceModeListener()}. Nos métodos de retorno de chamada da escuta, é possível especificar as ações
+para a barra de ação contextual, responder a eventos de clique em itens de ação e lidar com outros retornos de chamada
+herdados da interface {@link android.view.ActionMode.Callback}.</li>
+
+  <li>Chame {@link android.widget.AbsListView#setChoiceMode setChoiceMode()} com o argumento {@link
+android.widget.AbsListView#CHOICE_MODE_MULTIPLE_MODAL}.</li>
+</ul>
+
+<p>Por exemplo:</p>
+
+<pre>
+ListView listView = getListView();
+listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
+listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
+
+    &#64;Override
+    public void onItemCheckedStateChanged(ActionMode mode, int position,
+                                          long id, boolean checked) {
+        // Here you can do something when items are selected/de-selected,
+        // such as update the title in the CAB
+    }
+
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        // Respond to clicks on the actions in the CAB
+        switch (item.getItemId()) {
+            case R.id.menu_delete:
+                deleteSelectedItems();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate the menu for the CAB
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context, menu);
+        return true;
+    }
+
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        // Here you can make any necessary updates to the activity when
+        // the CAB is removed. By default, selected items are deselected/unchecked.
+    }
+
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        // Here you can perform updates to the CAB due to
+        // an {@link android.view.ActionMode#invalidate} request
+        return false;
+    }
+});
+</pre>
+
+<p>É isso. Agora, quando o usuário selecionar um item com um clique longo, o sistema chamará o método {@link
+android.widget.AbsListView.MultiChoiceModeListener#onCreateActionMode onCreateActionMode()}
+e exibirá a barra de ação contextual com as ações especificadas. Enquanto a barra de ação contextual
+estiver visível, os usuários poderão selecionar itens adicionais.</p>
+
+<p>Em alguns casos em que as ações contextuais fornecem itens de ação comuns, você pode
+querer adicionar uma caixa de seleção ou um elemento de IU semelhante que permite que os usuários selecionem itens,
+pois eles podem não descobrir o comportamento do clique longo. Quando um usuário seleciona a caixa de seleção,
+é possível invocar o modo de ação contextual definindo o respectivo item de lista
+para o estado marcado com {@link android.widget.AbsListView#setItemChecked setItemChecked()}.</p>
+
+
+
+
+<h2 id="PopupMenu">Criação de um menu pop-up</h2>
+
+<div class="figure" style="width:220px">
+<img src="{@docRoot}images/ui/popupmenu.png" alt="" />
+<p><strong>Figura 4.</strong> Um menu pop-up no aplicativo do Gmail, ancorado ao botão
+de estouro no cando direito superior.</p>
+</div>
+
+<p>Um {@link android.widget.PopupMenu} é um menu modal ancorado a uma {@link android.view.View}.
+Ele aparece sob a vista de âncora se tiver espaço, ou sobre a vista. Ele é útil para:</p>
+<ul>
+  <li>Fornecer um menu de estilo de estouro para ações que <em>se relacionam</em> com o conteúdo específico (como
+cabeçalhos de e-mail do Gmail, exibidos na figura 4).
+    <p class="note"><strong>Observação:</strong> Isto não é igual ao menu de contexto,
+que geralmente é usado para ações que <em>afetam</em> o conteúdo selecionado. Para ações que afetam o conteúdo
+selecionado, use o <a href="#CAB">modo de ação contextual</a> ou o <a href="#FloatingContextMenu">menu de contexto flutuante</a>.</p></li>
+  <li>Fornecer uma segunda parte de uma sentença de comando (como um botão marcado como "Adicionar"
+que produz um menu pop-up com opções diferentes de "Adicionar").</li>
+  <li>Fornecer um menu suspenso semelhante a {@link android.widget.Spinner} que não retenha
+uma seleção persistente.</li>
+</ul>
+
+
+<p class="note"><strong>Observação:</strong> {@link android.widget.PopupMenu} está disponível com a API
+de nível 11 ou posteriores.</p>
+
+<p>Se <a href="#xml">definir o menu em XML</a>, abaixo é exposto o modo de exibir o menu pop-up:</p>
+<ol>
+  <li>Represente um {@link android.widget.PopupMenu} com seu construtor,
+que usa o aplicativo {@link android.content.Context} e {@link android.view.View} atual ao qual o menu
+deve ser ancorado.</li>
+  <li>Use {@link android.view.MenuInflater} para inflar o recurso de menu no objeto {@link
+android.view.Menu} retornado por {@link
+android.widget.PopupMenu#getMenu() PopupMenu.getMenu()}. Em APIs de nível 14 ou posteriores, é possível usar
+{@link android.widget.PopupMenu#inflate PopupMenu.inflate()}.</li>
+  <li>Chame {@link android.widget.PopupMenu#show() PopupMenu.show()}.</li>
+</ol>
+
+<p>Por exemplo, a seguir há um botão com o atributo {@link android.R.attr#onClick android:onClick}
+que exibe um menu pop-up:</p>
+
+<pre>
+&lt;ImageButton
+    android:layout_width="wrap_content" 
+    android:layout_height="wrap_content" 
+    android:src="@drawable/ic_overflow_holo_dark"
+    android:contentDescription="@string/descr_overflow_button"
+    android:onClick="showPopup" />
+</pre>
+
+<p>A atividade pode então exibir o menu pop-up desta forma:</p>
+
+<pre>
+public void showPopup(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+    MenuInflater inflater = popup.getMenuInflater();
+    inflater.inflate(R.menu.actions, popup.getMenu());
+    popup.show();
+}
+</pre>
+
+<p>Em APIs de nível 14 ou posteriores, é possível combinar as duas linhas que inflam o menu com {@link
+android.widget.PopupMenu#inflate PopupMenu.inflate()}.</p>
+
+<p>O menu é dispensado quando o usuário seleciona um item ou toca fora
+da área do menu. É possível ouvir o evento de dispensa usando {@link
+android.widget.PopupMenu.OnDismissListener}.</p>
+
+<h3 id="PopupEvents">Tratamento de eventos de clique</h3>
+
+<p>Para realizar uma ação
+quando o usuário seleciona um item de menu, você deve implementar a interface {@link
+android.widget.PopupMenu.OnMenuItemClickListener} e registrá-la com {@link
+android.widget.PopupMenu} chamando {@link android.widget.PopupMenu#setOnMenuItemClickListener
+setOnMenuItemclickListener()}. Quando o usuário seleciona um item, o sistema chama o retorno de chamada {@link
+android.widget.PopupMenu.OnMenuItemClickListener#onMenuItemClick onMenuItemClick()}
+na interface.</p>
+
+<p>Por exemplo:</p>
+
+<pre>
+public void showMenu(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+
+    // This activity implements OnMenuItemClickListener
+    popup.setOnMenuItemClickListener(this);
+    popup.inflate(R.menu.actions);
+    popup.show();
+}
+
+&#64;Override
+public boolean onMenuItemClick(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.archive:
+            archive(item);
+            return true;
+        case R.id.delete:
+            delete(item);
+            return true;
+        default:
+            return false;
+    }
+}
+</pre>
+
+
+<h2 id="groups">Criação de grupos de menu</h2>
+
+<p>Um grupo de menu é uma coleção de itens de menu que compartilham certas peculiaridades. Com um grupo,
+é possível:</p>
+<ul>
+  <li>Exibir ou ocultar todos os itens com {@link android.view.Menu#setGroupVisible(int,boolean)
+setGroupVisible()}</li>
+  <li>Ativar ou desativar todos os itens com {@link android.view.Menu#setGroupEnabled(int,boolean)
+setGroupEnabled()}</li>
+  <li>Especificar se todos os itens são marcáveis com {@link
+android.view.Menu#setGroupCheckable(int,boolean,boolean) setGroupCheckable()}</li>
+</ul>
+
+<p>É possível criar um grupo aninhando elementos {@code &lt;item&gt;} dentro de um elemento {@code &lt;group&gt;}
+no recurso de menu ou especificando um ID de grupo com o método {@link
+android.view.Menu#add(int,int,int,int) add()}.</p>
+
+<p>Abaixo há um exemplo de recurso de menu que inclui um grupo:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/menu_save"
+          android:icon="@drawable/menu_save"
+          android:title="@string/menu_save" /&gt;
+    &lt;!-- menu group --&gt;
+    &lt;group android:id="@+id/group_delete"&gt;
+        &lt;item android:id="@+id/menu_archive"
+              android:title="@string/menu_archive" /&gt;
+        &lt;item android:id="@+id/menu_delete"
+              android:title="@string/menu_delete" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Os itens que estão no grupo aparecem no mesmo nível que o primeiro item &mdash; todos os três itens
+no menu são irmãos. No entanto, é possível modificar as peculiaridades dos dois itens
+no grupo mencionando o ID do grupo e usando os métodos listados acima. O sistema
+também nunca separará os itens agrupados. Por exemplo, se você declarar {@code
+android:showAsAction="ifRoom"} para cada item, eles aparecerão na barra de ação
+ou no estouro de ação.</p>
+
+
+<h3 id="checkable">Uso de itens de menu marcáveis</h3>
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/radio_buttons.png" height="333" alt="" />
+  <p class="img-caption"><strong>Figura 5.</strong> Captura de tela de um submenu
+com itens marcáveis.</p>
+</div>
+
+<p>Um menu como uma interface pode ser útil para ativar e desativar as opções, usar uma caixa de seleção
+para opções independentes ou botões de rádio para grupos
+de opções mutuamente exclusivas. A figura 5 mostra um submenu com itens marcáveis
+com botões de rádio.</p>
+
+<p class="note"><strong>Observação:</strong> os itens de menu no menu de ícones (do menu de opções)
+não podem exibir uma caixa de seleção ou um botão de rádio. Caso escolha tornar marcáveis os itens no menu de ícones,
+você deverá indicar manualmente o estado marcado arrastando o ícone e/ou digitando
+sempre que o estado for alterado.</p>
+
+<p>É possível definir o comportamento marcável para itens individuais de menu usando o atributo {@code
+android:checkable} no elemento {@code &lt;item&gt;}, ou para um grupo inteiro
+com o atributo {@code android:checkableBehavior} no elemento {@code &lt;group&gt;}. Por exemplo,
+todos os itens neste grupo de menu são marcáveis com um botão de rádio:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;group android:checkableBehavior="single"&gt;
+        &lt;item android:id="@+id/red"
+              android:title="@string/red" /&gt;
+        &lt;item android:id="@+id/blue"
+              android:title="@string/blue" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>O atributo {@code android:checkableBehavior} aceita:
+<dl>
+  <dt>{@code single}</dt>
+    <dd>Somente um item do grupo pode ser marcado (botões de rádio)</dd>
+  <dt>{@code all}</dt>
+    <dd>Todos os itens podem ser marcados (caixas de seleção)</dd>
+  <dt>{@code none}</dt>
+    <dd>Nenhum item é marcável</dd>
+</dl>
+
+<p>É possível aplicar um estado marcado padrão a um item usando o atributo {@code android:checked}
+no elemento {@code &lt;item&gt;} e alterar o seu código com o método {@link
+android.view.MenuItem#setChecked(boolean) setChecked()}.</p>
+
+<p>Quando um item marcável é selecionado, o sistema chama o respectivo método retorno de chamada do item selecionado
+(como {@link android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}). É aqui
+que você deve definir o estado da caixa de seleção, pois a caixa de seleção ou o botão de rádio
+não altera o seu estado automaticamente. É possível consultar o estado do item (como ele era antes
+do usuário selecioná-lo) com {@link android.view.MenuItem#isChecked()} e, em seguida, definir o estado marcado com 
+{@link android.view.MenuItem#setChecked(boolean) setChecked()}. Por exemplo:</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.vibrate:
+        case R.id.dont_vibrate:
+            if (item.isChecked()) item.setChecked(false);
+            else item.setChecked(true);
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>Caso você não defina o estado marcado desta maneira, o estado visível do item (a caixa de seleção
+ou o botão de rádio)
+não se alterará quando o usuário selecioná-lo. Quando o estado é definido, a atividade preserva o estado marcado
+do item para que, quando o usuário abrir o menu posteriormente, o estado marcado
+definido esteja visível.</p>
+
+<p class="note"><strong>Observação:</strong>
+os itens de menu marcáveis servem para serem usados somente em uma base por sessão e não são salvos quando
+o aplicativo é destruído. Caso tenha configurações de aplicativo que gostaria de salvar para o usuário,
+você deve armazenar os dados usando as <a href="{@docRoot}guide/topics/data/data-storage.html#pref">preferências compartilhadas</a>.</p>
+
+
+
+<h2 id="intents">Adição de itens de menu com base em uma intenção</h2>
+
+<p>Às vezes, você desejará que um item de menu inicie uma atividade usando uma {@link android.content.Intent}
+(se é uma atividade no seu ou em outro aplicativo). Quando você sabe qual intenção
+quer usar e tem um item de menu específico que deve iniciar a intenção, é possível executá-la
+com {@link android.app.Activity#startActivity(Intent) startActivity()} durante
+o método de retorno de chamada selecionado no item (como o retorno de chamada {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}).</p>
+
+<p>No entanto, caso não tenha certeza de que o dispositivo
+do usuário contém um aplicativo que lida com a intenção, adicionar um item que o invoca
+resulta em um item de menu que não funciona, pois a intenção pode não se resolver
+em uma atividade. Para resolver isto, o Android permite que você adicione itens de menu dinamicamente ao seu menu
+quando encontra atividades no dispositivo que lidam com a intenção.</p>
+
+<p>Para adicionar itens de menu com base nas atividades disponíveis que aceitam uma intenção:</p>
+<ol>
+  <li>Defina a intenção
+com a categoria {@link android.content.Intent#CATEGORY_ALTERNATIVE}
+e/ou {@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE}, além de quaisquer outros requisitos.</li>
+  <li>Chame {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+Menu.addIntentOptions()}. O Android procura um aplicativo que possa realizar a intenção
+e adiciona-o ao seu menu.</li>
+</ol>
+
+<p>Se não houver nenhum aplicativo instalado
+que satisfaça a intenção, nenhum item de menu será adicionado.</p>
+
+<p class="note"><strong>Observação:</strong>
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} é usado para lidar com o elemento atualmente selecionado
+na tela. Portanto, ele deve ser usado apenas ao criar um menu em {@link
+android.app.Activity#onCreateContextMenu(ContextMenu,View,ContextMenuInfo)
+onCreateContextMenu()}.</p>
+
+<p>Por exemplo:</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu){
+    super.onCreateOptionsMenu(menu);
+
+    // Create an Intent that describes the requirements to fulfill, to be included
+    // in our menu. The offering app must include a category value of Intent.CATEGORY_ALTERNATIVE.
+    Intent intent = new Intent(null, dataUri);
+    intent.addCategory(Intent.CATEGORY_ALTERNATIVE);
+
+    // Search and populate the menu with acceptable offering applications.
+    menu.addIntentOptions(
+         R.id.intent_group,  // Menu group to which new items will be added
+         0,      // Unique item ID (none)
+         0,      // Order for the items (none)
+         this.getComponentName(),   // The current activity name
+         null,   // Specific items to place first (none)
+         intent, // Intent created above that describes our requirements
+         0,      // Additional flags to control items (none)
+         null);  // Array of MenuItems that correlate to specific items (none)
+
+    return true;
+}</pre>
+
+<p>Para cada atividade encontrada que fornece um filtro de intenção correspondente à intenção definida,
+um item de menu é adicionado, usando o valor no <code>android:label</code> do filtro de intenção
+como o título do item e o ícone do aplicativo como o ícone do item de menu. O método
+{@link android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} retorna o número de itens de menu adicionados.</p>
+
+<p class="note"><strong>Observação:</strong> Ao chamar {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()}, ele substitui todos os itens de menu no grupo do menu especificado
+no primeiro argumento.</p>
+
+
+<h3 id="AllowingToAdd">Permissão para a atividade ser adicionada a outros menus</h3>
+
+<p>Você pode também oferecer os serviços da sua atividade para outros aplicativos,
+para que o aplicativo possa ser incluído no menu de outros (revertendo as funções descritas acima).</p>
+
+<p>Para ser incluído nos menus de outros aplicativos, você precisa definir
+um filtro de intenção como normalmente faz, mas certificando-se de incluir os valores {@link android.content.Intent#CATEGORY_ALTERNATIVE}
+e/ou {@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} para a categoria
+do filtro de intenção. Por exemplo:</p>
+<pre>
+&lt;intent-filter label="&#64;string/resize_image">
+    ...
+    &lt;category android:name="android.intent.category.ALTERNATIVE" />
+    &lt;category android:name="android.intent.category.SELECTED_ALTERNATIVE" />
+    ...
+&lt;/intent-filter>
+</pre>
+
+<p>Leia mais sobre a criação de filtros de intenção no documento 
+<a href="/guide/components/intents-filters.html">Intenções e filtros de intenções</a>.</p>
+
+<p>Para obter um exemplo de aplicativo que usa esta técnica, consulte o código de exemplo do 
+<a href="{@docRoot}resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html">Bloco
+de notas</a>.</p>
diff --git a/docs/html-intl/intl/pt-br/guide/topics/ui/notifiers/notifications.jd b/docs/html-intl/intl/pt-br/guide/topics/ui/notifiers/notifications.jd
new file mode 100644
index 0000000..42563ac
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/ui/notifiers/notifications.jd
@@ -0,0 +1,979 @@
+page.title=Notificações
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Neste documento</h2>
+<ol>
+  <li><a href="#Design">Considerações de projeto</a></li>
+  <li><a href="#CreateNotification">Criação de uma notificação</a>
+    <ol>
+      <li><a href="#Required">Conteúdo necessário da notificação</a></li>
+      <li><a href="#Optional">Configurações e conteúdo opcionais da notificação</a></li>
+      <li><a href="#Actions">Ações da notificação</a></li>
+      <li><a href="#Priority">Prioridade da notificação</a></li>
+      <li><a href="#SimpleNotification">Criação de uma notificação simples</a></li>
+      <li><a href="#ApplyStyle">Aplicação de um layout expandido a uma notificação</a></li>
+      <li><a href="#Compatibility">Tratamento da compatibilidade</a></li>
+    </ol>
+  </li>
+  <li><a href="#Managing">Gerenciamento de notificações</a>
+    <ol>
+      <li><a href="#Updating">Atualização de notificações</a></li>
+      <li><a href="#Removing">Remoção de notificações</a></li>
+    </ol>
+  </li>
+  <li><a href="#NotificationResponse">Preservação da navegação ao iniciar uma atividade</a>
+    <ol>
+      <li><a href="#DirectEntry">Definição de uma atividade PendingIntent comum</a></li>
+      <li><a href="#ExtendedNotification">Definição de uma atividade PendingIntent especial</a></li>
+    </ol>
+  </li>
+  <li><a href="#Progress">Exibição do progresso em uma notificação</a>
+    <ol>
+      <li><a href="#FixedProgress">Exibição de um indicador de progresso de duração fixa</a></li>
+      <li><a href="#ActivityIndicator">Exibição de um indicador de atividade contínua</a></li>
+    </ol>
+  </li>
+  <li><a href="#metadata">Metadados de notificação</a></li>
+  <li><a href="#Heads-up">Notificações de informações prévias</a></li>
+  <li><a href="#lockscreenNotification">Notificações na tela de bloqueio</a></li>
+    <ol>
+      <li><a href="#visibility">Configuração de visibilidade</a></li>
+      <li><a href="#controllingMedia">Controle de reprodução de mídia na tela de bloqueio</a></li>
+    </ol>
+  <li><a href="#CustomNotification">Layouts de notificação personalizados</a></li>
+</ol>
+
+    <h2>Classes principais</h2>
+    <ol>
+        <li>{@link android.app.NotificationManager}</li>
+        <li>{@link android.support.v4.app.NotificationCompat}</li>
+    </ol>
+    <h2>Vídeos</h2>
+    <ol>
+        <li>
+            <a href="http://www.youtube.com/watch?v=Yc8YrVc47TI&amp;feature=player_detailpage#t=1672s">
+            Notificações em 4.1</a>
+        </li>
+    </ol>
+<h2>Veja também</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}design/patterns/notifications.html">Projeto para Android: Notificações</a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    Uma notificação é uma mensagem que pode ser exibida ao usuário fora da IU normal do aplicativo.
+Quando você diz ao sistema para emitir uma notificação, ela primeiro aparece como um ícone
+na <strong>área de notificação</strong>. Para ver os detalhes da notificação, o usuário abre
+a <strong>gaveta de notificação</strong>. A área de notificação e a gaveta de notificação
+são áreas controladas pelo sistema que o usuário pode visualizar a qualquer momento.
+</p>
+<img id="figure1" src="{@docRoot}images/ui/notifications/notification_area.png" height="" alt="" />
+<p class="img-caption">
+    <strong>Figura 1.</strong> Notificações na área de notificação.
+</p>
+<img id="figure2" src="{@docRoot}images/ui/notifications/notification_drawer.png" width="280px" alt="" />
+<p class="img-caption">
+    <strong>Figura 2.</strong> Notificações na gaveta de notificação.
+</p>
+
+<p class="note"><strong>Observação:</strong> exceto quando notado, este guia menciona a classe
+{@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}
+na versão 4 da <a href="{@docRoot}tools/support-library/index.html">Biblioteca de suporte</a>.
+A classe {@link android.app.Notification.Builder Notification.Builder} foi adicionada no Android
+3.0 (API de nível 11).</p>
+
+<h2 id="Design">Considerações de projeto</h2>
+
+<p>As notificações, como parte importante da interface do usuário do Android, possuem as próprias diretrizes de projeto.
+As alterações do Material Design introduzidas no Android 5.0 (API de nível 21) são de importância
+específica e, por isso, recomenda-se revisar o treinamento do <a href="{@docRoot}training/material/index.html">Material Design</a>
+ para obter mais informações. Para saber como projetar notificações e suas interações, leia o guia de projeto 
+<a href="{@docRoot}design/patterns/notifications.html">Notificações</a>.</p>
+
+<h2 id="CreateNotification">Criação de uma notificação</h2>
+
+<p>Você especifica as ações e informações da IU para uma notificação
+no objeto {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}.
+Para criar a própria notificação, chama-se
+{@link android.support.v4.app.NotificationCompat.Builder#build NotificationCompat.Builder.build()},
+que retorna um objeto {@link android.app.Notification} contendo suas especificações. Para emitir a notificação,
+passa-se o objeto {@link android.app.Notification} ao sistema
+chamando {@link android.app.NotificationManager#notify NotificationManager.notify()}.</p>
+
+<h3 id="Required">Conteúdo necessário da notificação</h3>
+<p>
+    Um objeto {@link android.app.Notification} <em>deve</em> conter o seguinte:
+</p>
+<ul>
+    <li>
+        Um ícone pequeno, definido por
+        {@link android.support.v4.app.NotificationCompat.Builder#setSmallIcon setSmallIcon()}
+    </li>
+    <li>
+        Um título, definido por
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()}
+    </li>
+    <li>
+        Texto de detalhes, definido por
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentText setContentText()}
+    </li>
+</ul>
+<h3 id="Optional">Configurações e conteúdo opcionais da notificação</h3>
+<p>
+    Todas as outras configurações e o conteúdo da notificação são opcionais. Para saber mais sobre isso,
+    consulte as documentações de referência de {@link android.support.v4.app.NotificationCompat.Builder}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Actions">Ações da notificação</h3>
+<p>
+    Apesar de serem opcionais, deve-se adicionar pelo menos uma ação à notificação.
+    Uma ação permite que os usuários direcionem-se diretamente da notificação
+    para uma {@link android.app.Activity} no aplicativo, onde podem visualizar um ou mais eventos
+    ou realizar outros trabalhos.
+</p>
+<p>
+    Uma notificação pode fornecer várias ações. Deve-se sempre definir a ação que será ativada
+    quando o usuário clicar na notificação. Geralmente, esta ação abre uma
+    {@link android.app.Activity} no aplicativo. É possível também adicionar botões à notificação
+    que realizem ações adicionais, como ativar a soneca de um alarme imediatamente
+    para uma mensagem de texto. Este recurso está disponível a partir do Android 4.1. Se você usar botões de ação adicionais,
+    também deverá disponibilizar a funcionalidade em uma {@link android.app.Activity} no aplicativo; consulte
+    a seção <a href="#Compatibility">Tratamento da compatibilidade</a> para obter mais informações.
+</p>
+<p>
+    Dentro de uma {@link android.app.Notification}, a própria ação é definida
+    por uma {@link android.app.PendingIntent} contendo uma
+    {@link android.content.Intent} que inicia
+    uma {@link android.app.Activity} no aplicativo. Para associar
+    a {@link android.app.PendingIntent} a um gesto, chame o método adequado
+    de {@link android.support.v4.app.NotificationCompat.Builder}. Por exemplo, se quiser iniciar
+    {@link android.app.Activity} quando o usuário clicar no texto da notificação
+    na gaveta de notificação, deve-se adicionar {@link android.app.PendingIntent} chamando
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()}.
+</p>
+<p>
+    Iniciar uma {@link android.app.Activity} quando o usuário clica na notificação
+    é o cenário de ação mais comum. É possível também iniciar uma {@link android.app.Activity} quando o usuário
+    dispensa uma notificação. A partir do Android 4.1, é possível iniciar
+    uma {@link android.app.Activity} a partir de um botão de ação. Para obter mais informações, leia o guia de referência
+    de {@link android.support.v4.app.NotificationCompat.Builder}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Priority">Prioridade da notificação</h3>
+<p>
+    Se quiser, é possível definir a prioridade de uma notificação. A prioridade
+    age como uma sugestão à IU do dispositivo sobre como a notificação deve ser exibida.
+    Para definir a prioridade de uma notificação, chame {@link
+    android.support.v4.app.NotificationCompat.Builder#setPriority(int)
+    NotificationCompat.Builder.setPriority()} e passe em uma das constantes de prioridade {@link
+    android.support.v4.app.NotificationCompat}. Há cinco níveis de prioridade,
+    de {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_MIN} (-2) a {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_MAX} (2); se não for definida, a prioridade
+    segue o padrão de {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_DEFAULT} (0).
+</p>
+<p> Para obter mais informações sobre como definir um nível de prioridade adequado, Consulte "Definição e gerenciamento corretos da prioridade das notificações"
+    no guia de projeto
+    <a href="{@docRoot}design/patterns/notifications.html">Notificações</a>.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="SimpleNotification">Criação de uma notificação simples</h3>
+<p>
+    O seguinte fragmento ilustra uma notificação simples que especifica uma atividade para abrir quando
+o usuário clica na notificação. Observe que o código cria um objeto
+    {@link android.support.v4.app.TaskStackBuilder} e usa-o para criar
+    a {@link android.app.PendingIntent} para a ação. Este padrão é explicado com mais detalhes
+    na seção <a href="#NotificationResponse">
+    Preservação da navegação ao iniciar uma atividade</a>:
+</p>
+<pre>
+NotificationCompat.Builder mBuilder =
+        new NotificationCompat.Builder(this)
+        .setSmallIcon(R.drawable.notification_icon)
+        .setContentTitle("My notification")
+        .setContentText("Hello World!");
+// Creates an explicit intent for an Activity in your app
+Intent resultIntent = new Intent(this, ResultActivity.class);
+
+// The stack builder object will contain an artificial back stack for the
+// started Activity.
+// This ensures that navigating backward from the Activity leads out of
+// your application to the Home screen.
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack for the Intent (but not the Intent itself)
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent that starts the Activity to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(
+            0,
+            PendingIntent.FLAG_UPDATE_CURRENT
+        );
+mBuilder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// mId allows you to update the notification later on.
+mNotificationManager.notify(mId, mBuilder.build());
+</pre>
+<p>É isso. O usuário foi notificado.</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ApplyStyle">Aplicação de um layout expandido a uma notificação</h3>
+<p>
+    Para que uma notificação apareça em uma vista expandida, cria-se primeiro
+    um objeto {@link android.support.v4.app.NotificationCompat.Builder} com as opções
+    de visualização normal desejadas. Em seguida, chama-se {@link android.support.v4.app.NotificationCompat.Builder#setStyle
+    Builder.setStyle()} com um objeto de layout expandido como o argumento.
+</p>
+<p>
+    Lembre-se de que as notificações expandidas não estão disponíveis em plataformas anteriores ao Android 4.1. Para saber mais
+    sobre como tratar de notificações para Android 4.1 e plataformas anteriores, leia
+    a seção <a href="#Compatibility">Tratamento da compatibilidade</a>.
+</p>
+<p>
+    Por exemplo, o seguinte fragmento de código demonstra como alterar a notificação criada
+    no fragmento anterior para usar o layout expandido:
+</p>
+<pre>
+NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
+    .setSmallIcon(R.drawable.notification_icon)
+    .setContentTitle("Event tracker")
+    .setContentText("Events received")
+NotificationCompat.InboxStyle inboxStyle =
+        new NotificationCompat.InboxStyle();
+String[] events = new String[6];
+// Sets a title for the Inbox in expanded layout
+inboxStyle.setBigContentTitle("Event tracker details:");
+...
+// Moves events into the expanded layout
+for (int i=0; i &lt; events.length; i++) {
+
+    inboxStyle.addLine(events[i]);
+}
+// Moves the expanded layout object into the notification object.
+mBuilder.setStyle(inBoxStyle);
+...
+// Issue the notification here.
+</pre>
+
+<h3 id="Compatibility">Tratamento da compatibilidade</h3>
+
+<p>
+    Nem todos os recursos de notificação estão disponíveis para uma versão específica,
+    mesmo se os métodos que os definem estiverem na classe
+    {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} da biblioteca de suporte.
+    Por exemplo, botões de ação, que dependem das notificações expandidas, aparecem somente a partir do Android
+    4.1 ou de posteriores porque as próprias notificações expandidas estão disponíveis somente a partir
+    destas versões.
+</p>
+<p>
+    Para garantir a melhor compatibilidade, crie notificações
+    com {@link android.support.v4.app.NotificationCompat NotificationCompat} e suas subclasses,
+    particularmente {@link android.support.v4.app.NotificationCompat.Builder
+    NotificationCompat.Builder}. Além disso, siga o processo a seguir ao implementar uma notificação:
+</p>
+<ol>
+    <li>
+        Forneça toda a funcionalidade da notificação aos usuários, independentemente
+        da versão que estejam usando. Para fazer isto, verifique se toda a disponibilidade está disponível a partir de uma
+        {@link android.app.Activity} no aplicativo. Pode-se adicionar uma nova
+        {@link android.app.Activity} para fazer isto.
+        <p>
+            Por exemplo, caso queira usar
+        {@link android.support.v4.app.NotificationCompat.Builder#addAction addAction()}
+        para fornecer um controle que interrompa e inicie a reprodução de mídia, primeiro implemente
+        este controle em uma {@link android.app.Activity} no aplicativo.
+        </p>
+    </li>
+    <li>
+        Certifique-se de que todos os usuários possam acessar a funcionalidade na {@link android.app.Activity},
+        iniciando-a quando o usuário clicar na notificação. Para fazer isto,
+        crie uma {@link android.app.PendingIntent}
+        para a{@link android.app.Activity}. Chame
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+        setContentIntent()} para adicionar a {@link android.app.PendingIntent} à notificação.
+    </li>
+    <li>
+        Agora, adicione os recursos de notificação expandidos que deseja usar à notificação. Lembre-se
+        de que qualquer funcionalidade adicionada também deve estar disponível na {@link android.app.Activity}
+        que é iniciada quando os usuários clicam na notificação.
+    </li>
+</ol>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Managing">Gerenciamento de notificações</h2>
+<p>
+    Quando for necessário emitir uma notificação várias vezes para o mesmo tipo de evento,
+    deve-se evitar criar uma notificação completamente nova. Em vez disso, deve-se considerar atualizar
+    uma notificação anterior, alterando e/ou adicionado alguns valores.
+</p>
+<p>
+    Por exemplo, o Gmail notifica o usuário de que novos e-mails foram recebidos aumentando a contagem
+de mensagens não lidas e adicionando um resumo de cada e-mail à notificação. Isto é chamado
+    de "acumular" a notificação. Isto é descrito com mais detalhes no guia de projeto
+    <a href="{@docRoot}design/patterns/notifications.html">Notificações</a>.
+</p>
+<p class="note">
+    <strong>Observação:</strong> este recurso do Gmail requer o layout expandido da "caixa de entrada",
+    que faz parte do recurso de notificação expandida disponível a partir do Android 4.1.
+</p>
+<p>
+    A seguinte seção descreve como atualizar as notificações e como removê-las.
+</p>
+<h3 id="Updating">Atualização de notificações</h3>
+<p>
+    Para definir uma notificação para que possa ser atualizada, deve-se emiti-la com um ID de notificação
+    chamando {@link android.app.NotificationManager#notify(int, android.app.Notification) NotificationManager.notify()}.
+    Para atualizar esta notificação após emiti-la,
+    atualize ou crie um objeto {@link android.support.v4.app.NotificationCompat.Builder},
+    compile um objeto {@link android.app.Notification} a partir dele e emita
+    a {@link android.app.Notification} com o mesmo ID usado anteriormente. Se a notificação anterior
+    ainda estiver visível, o sistema a atualizará com o conteúdo
+    do objeto {@link android.app.Notification}. Se a notificação anterior for dispensada,
+    uma nova notificação será criada.
+</p>
+<p>
+    O seguinte fragmento demonstra uma notificação que é atualizada para refletir
+    o número de eventos que ocorreram. Ele acumula a notificação, exibindo um resumo:
+</p>
+<pre>
+mNotificationManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Sets an ID for the notification, so it can be updated
+int notifyID = 1;
+mNotifyBuilder = new NotificationCompat.Builder(this)
+    .setContentTitle("New Message")
+    .setContentText("You've received new messages.")
+    .setSmallIcon(R.drawable.ic_notify_status)
+numMessages = 0;
+// Start of a loop that processes data and then notifies the user
+...
+    mNotifyBuilder.setContentText(currentText)
+        .setNumber(++numMessages);
+    // Because the ID remains unchanged, the existing notification is
+    // updated.
+    mNotificationManager.notify(
+            notifyID,
+            mNotifyBuilder.build());
+...
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Removing">Remoção de notificações</h3>
+<p>
+    As notificações permanecem visíveis até que um dos seguintes casos aconteça:
+</p>
+<ul>
+    <li>
+        O usuário dispense a notificação individualmente usando "Apagar tudo"
+    (se a notificação puder ser apagada).
+    </li>
+    <li>
+        O usuário clique na notificação
+    e chame-se {@link android.support.v4.app.NotificationCompat.Builder#setAutoCancel setAutoCancel()}
+    quando a notificação é criada.
+    </li>
+    <li>
+        Chame-se {@link android.app.NotificationManager#cancel(int) cancel()}
+    para um ID de notificação específico. Este método também exclui notificações contínuas.
+    </li>
+    <li>
+        Chame-se {@link android.app.NotificationManager#cancelAll() cancelAll()}, que remove
+todas as notificações emitidas anteriormente.
+    </li>
+</ul>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="NotificationResponse">Preservação da navegação ao iniciar uma atividade</h2>
+<p>
+    Ao iniciar uma {@link android.app.Activity} a partir de uma notificação, deve-se preservar
+    a experiência de navegação esperada pelo usuário. Clicar em <i>Voltar</i> deve levar o usuário
+    de volta pelo fluxo de trabalho normal do aplicativo à tela Inicial, e clicar em <i>Recentes</i> deve exibir
+    a {@link android.app.Activity} como uma tarefa separada. Para preservar a experiência de navegação,
+    deve-se iniciar a {@link android.app.Activity} em uma tarefa nova. O modo de definição
+    da {@link android.app.PendingIntent} para fornecer uma tarefa nova depende da natureza
+    da {@link android.app.Activity} que está sendo iniciado. Há duas situações gerais:
+</p>
+<dl>
+    <dt>
+        Atividade comum
+    </dt>
+    <dd>
+        Inicia-se uma {@link android.app.Activity} que faz parte do fluxo de trabalho normal
+        do aplicativo. Nesta situação, defina {@link android.app.PendingIntent}
+        para iniciar uma tarefa nova e forneça a {@link android.app.PendingIntent} com uma pilha de retorno
+        que reproduza o comportamento <i>Voltar</i> normal do aplicativo.
+        <p>
+            As notificações do aplicativo do Gmail demonstram isso. Ao clicar em uma notificação
+            para uma única mensagem de e-mail, a própria mensagem será exibida. Tocar em <b>Voltar</b>
+            faz com que o usuário volte ao Gmail até a tela inicial, como se ele tivesse acessado o Gmail
+            a partir da tela inicial em vez de a partir da notificação.
+        </p>
+        <p>
+            Isto acontece independentemente do aplicativo que estava em primeiro plano
+            quando a notificação foi tocada. Por exemplo, se você estiver no Gmail escrevendo uma mensagem e clicar
+            em uma notificação de um e-mail, você acessará este e-mail imediatamente. Tocar em <i>Voltar</i>
+            leva você de volta à caixa de entrada e, em seguida, à tela inicial, em vez de levar
+            à mensagem que estava escrevendo.
+        </p>
+    </dd>
+    <dt>
+        Atividade especial
+    </dt>
+    <dd>
+        O usuário vê apenas esta {@link android.app.Activity} se for iniciada a partir de uma notificação.
+        De certo modo, a {@link android.app.Activity} estende a notificação fornecendo
+        informações que seriam difíceis de exibir na própria notificação. Para estas situações,
+        defina a {@link android.app.PendingIntent} para iniciar em uma tarefa nova. Não há necessidade
+        de criar uma pilha de retorno, pois a {@link android.app.Activity} iniciada
+        não faz parte do fluxo de atividades do aplicativo. Clicar em <i>Voltar</i> ainda levará o usuário
+        à tela inicial.
+    </dd>
+</dl>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="DirectEntry">Definição de uma atividade PendingIntent comum</h3>
+<p>
+    Para definir uma {@link android.app.PendingIntent} que inicia uma {@link android.app.Activity} de entrada
+    direta, siga estas etapas:
+</p>
+<ol>
+    <li>
+        Defina a hierarquia de {@link android.app.Activity} do aplicativo no manifesto.
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Adicione compatibilidade com Android 4.0.3 e mais antigos. Para fazer isto, especifique o pai
+                da {@link android.app.Activity} que está iniciando adicionando um elemento
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+                como o filho de 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>.
+                <p>
+                    Para este elemento, defina 
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a>="android.support.PARENT_ACTIVITY"</code>.
+                    Defina
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#val">android:value</a>="&lt;parent_activity_name&gt;"</code>,
+                    onde <code>&lt;parent_activity_name&gt;</code> é o valor de 
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a></code>
+                    para o elemento
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+                    pai. Veja o XML a seguir para ver um exemplo.
+                </p>
+            </li>
+            <li>
+                Adicione também compatibilidade com Android 4.1 e mais recentes. Para fazer isto, adicione o atributo
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#parent">android:parentActivityName</a></code>
+                    ao elemento
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+                    da {@link android.app.Activity} que estiver iniciando.
+            </li>
+        </ol>
+        <p>
+            O XML final deve parecer-se com isto:
+        </p>
+<pre>
+&lt;activity
+    android:name=".MainActivity"
+    android:label="&#64;string/app_name" &gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+&lt;activity
+    android:name=".ResultActivity"
+    android:parentActivityName=".MainActivity"&gt;
+    &lt;meta-data
+        android:name="android.support.PARENT_ACTIVITY"
+        android:value=".MainActivity"/&gt;
+&lt;/activity&gt;
+</pre>
+    </li>
+    <li>
+        Crie uma pilha de retorno com base na {@link android.content.Intent} que inicia
+        a {@link android.app.Activity}:
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Crie a {@link android.content.Intent} para iniciar a{@link android.app.Activity}.
+            </li>
+            <li>
+                Crie um compilador de pilhas chamando {@link android.app.TaskStackBuilder#create
+                                TaskStackBuilder.create()}.
+            </li>
+            <li>
+                Adicione a pilha de retorno ao compilador de pilha chamando
+                {@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}.
+                Para cada {@link android.app.Activity} na hierarquia definida no manifesto,
+                a pilha de retorno conterá um objeto {@link android.content.Intent}
+                que inicia a {@link android.app.Activity}. Este método adiciona sinalizadores
+                    que iniciam a pilha em uma tarefa nova.
+                <p class="note">
+                    <strong>Observação:</strong> Apesar de o argumento
+                    de {@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}
+                    ser uma referência para a {@link android.app.Activity} iniciada, a chamada do método
+                    não adiciona a {@link android.content.Intent} que inicia
+                    a {@link android.app.Activity}. Em vez disso, lidamos com isto na próxima etapa.
+                </p>
+            </li>
+            <li>
+                Adicione a {@link android.content.Intent} que inicia a {@link android.app.Activity}
+                a partir da notificação chamando
+                {@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}.
+                Passe a {@link android.content.Intent} criada na primeira etapa
+                como o argumento
+                para {@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}.
+            </li>
+            <li>
+                Se for necessário, adicione argumentos para os objetos {@link android.content.Intent}
+                na pilha chamando {@link android.support.v4.app.TaskStackBuilder#editIntentAt
+                TaskStackBuilder.editIntentAt()}. Às vezes, isto é necessário para garantir
+                que a {@link android.app.Activity} alvo exiba dados significantes quando o usuário
+                navegar a ela usando <i>Voltar</i>.
+            </li>
+            <li>
+                Adquira uma {@link android.app.PendingIntent} para esta pilha de retorno chamando
+                {@link android.support.v4.app.TaskStackBuilder#getPendingIntent getPendingIntent()}.
+                É possível usar esta {@link android.app.PendingIntent} como o argumento
+                para {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+                setContentIntent()}.
+            </li>
+        </ol>
+     </li>
+</ol>
+<p>
+    O seguinte fragmento de código demonstra o processo:
+</p>
+<pre>
+...
+Intent resultIntent = new Intent(this, ResultActivity.class);
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+// Gets a PendingIntent containing the entire back stack
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
+...
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+builder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mNotificationManager.notify(id, builder.build());
+</pre>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ExtendedNotification">Definição de uma atividade PendingIntent especial</h3>
+<p>
+    A seção a seguir descreve como definir uma atividade
+    {@link android.app.PendingIntent} especial.
+</p>
+<p>
+    Uma {@link android.app.Activity} especial não precisa de uma pilha de retorno, então não é necessário
+    definir sua hierarquia de {@link android.app.Activity} no manifesto
+    e chamar
+    {@link android.support.v4.app.TaskStackBuilder#addParentStack  addParentStack()} para compilar
+    uma pilha de retorno. Em vez disso, use o manifesto para definir as opções de tarefa da {@link android.app.Activity}
+    e crie a {@link android.app.PendingIntent}
+    chamando {@link android.app.PendingIntent#getActivity getActivity()}:
+</p>
+<ol>
+    <li>
+        No manifesto, adicione os seguintes atributos ao elemento
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+        para a {@link android.app.Activity}
+        <dl>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">android:name</a>="<i>activityclass</i>"</code>
+            </dt>
+            <dd>
+                O nome da classe completamente qualificado da atividade.
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">android:taskAffinity</a>=""</code>
+            </dt>
+            <dd>
+                Combinado com o sinalizador
+                {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK}
+                que foi definido no código, isto garante que esta {@link android.app.Activity}
+                não acesse a tarefa padrão do aplicativo. Tarefas existentes
+                que tiverem a afinidade padrão do aplicativo não serão afetadas.
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">android:excludeFromRecents</a>="true"</code>
+            </dt>
+            <dd>
+                Exclui a nova tarefa de <i>Recentes</i>para que o usuário não
+                navegue acidentalmente de volta.
+            </dd>
+        </dl>
+        <p>
+            Este fragmento mostra o elemento:
+        </p>
+<pre>
+&lt;activity
+    android:name=".ResultActivity"
+...
+    android:launchMode="singleTask"
+    android:taskAffinity=""
+    android:excludeFromRecents="true"&gt;
+&lt;/activity&gt;
+...
+</pre>
+    </li>
+    <li>
+        Compilar e emitir a notificação:
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Crie uma {@link android.content.Intent} que inicie
+                a {@link android.app.Activity}.
+            </li>
+            <li>
+                Defina a {@link android.app.Activity} para iniciar em uma tarefa nova e vazia
+                chamando {@link android.content.Intent#setFlags setFlags()} com os sinalizadores
+                {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK}
+                e
+                {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TASK FLAG_ACTIVITY_CLEAR_TASK}.
+            </li>
+            <li>
+                Defina quaisquer outras opções necessárias para a {@link android.content.Intent}.
+            </li>
+            <li>
+                Crie uma {@link android.app.PendingIntent} a partir da {@link android.content.Intent}
+                chamando {@link android.app.PendingIntent#getActivity getActivity()}.
+                É possível usar esta {@link android.app.PendingIntent} como o argumento
+                para {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+                setContentIntent()}.
+            </li>
+        </ol>
+    <p>
+        O seguinte fragmento de código demonstra o processo:
+    </p>
+<pre>
+// Instantiate a Builder object.
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+// Creates an Intent for the Activity
+Intent notifyIntent =
+        new Intent(this, ResultActivity.class);
+// Sets the Activity to start in a new, empty task
+notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
+                        | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+// Creates the PendingIntent
+PendingIntent notifyPendingIntent =
+        PendingIntent.getActivity(
+        this,
+        0,
+        notifyIntent,
+        PendingIntent.FLAG_UPDATE_CURRENT
+);
+
+// Puts the PendingIntent into the notification builder
+builder.setContentIntent(notifyPendingIntent);
+// Notifications are issued by sending them to the
+// NotificationManager system service.
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Builds an anonymous Notification object from the builder, and
+// passes it to the NotificationManager
+mNotificationManager.notify(id, builder.build());
+</pre>
+    </li>
+</ol>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Progress">Exibição do progresso em uma notificação</h2>
+<p>
+    As notificações podem incluir um indicador de progresso animado que exibe aos usuários
+    o status de uma operação em andamento. Se for possível estimar a duração da operação
+    e o quanto dela já foi concluído em um determinado momento, use a forma "determinada" do indicador
+    (uma barra de progresso). Se não for possível estimar a duração da operação,
+    use a forma "indeterminada" do indicador (um indicador de atividade).
+</p>
+<p>
+    Os indicadores de progresso são exibidos com a implementação da plataforma
+    da classe {@link android.widget.ProgressBar}.
+</p>
+<p>
+    Para usar o indicador de progresso em plataformas a partir do Android 4.0,
+    chame {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}. Para versões mais antigas,
+    deve-se criar o próprio layout personalizado de notificação
+    que inclua uma vista de {@link android.widget.ProgressBar}.
+</p>
+<p>
+    As seguintes seções descrevem como exibir o progresso em uma notificação
+    usando {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="FixedProgress">Exibição de um indicador de progresso de duração fixa</h3>
+<p>
+    Para exibir uma determinada barra de progresso, adicione a barra à notificação
+    chamando {@link android.support.v4.app.NotificationCompat.Builder#setProgress
+    setProgress(max, progress, false)} e, em seguida, emitindo a notificação. À medida que a operação prosseguir,
+    incremente <code>progress</code> e atualize a notificação. No término da operação,
+    <code>progress</code> deve ser igual a <code>max</code>. Uma maneira comum de chamar
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}
+    é definir <code>max</code> como 100 e, em seguida, incrementar <code>progress</code>
+    como um valor "percentual completo" para a operação.
+</p>
+<p>
+    É possível deixar a barra de progresso em exibição ou removê-la quando a operação for concluída. Em ambos os casos,
+    lembre-se de atualizar o texto da notificação para exibir que a operação foi concluída.
+    Para remover a barra de progresso,
+    chame {@link android.support.v4.app.NotificationCompat.Builder#setProgress
+    setProgress(0, 0, false)}. Por exemplo:
+</p>
+<pre>
+...
+mNotifyManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mBuilder = new NotificationCompat.Builder(this);
+mBuilder.setContentTitle("Picture Download")
+    .setContentText("Download in progress")
+    .setSmallIcon(R.drawable.ic_notification);
+// Start a lengthy operation in a background thread
+new Thread(
+    new Runnable() {
+        &#64;Override
+        public void run() {
+            int incr;
+            // Do the "lengthy" operation 20 times
+            for (incr = 0; incr &lt;= 100; incr+=5) {
+                    // Sets the progress indicator to a max value, the
+                    // current completion percentage, and "determinate"
+                    // state
+                    mBuilder.setProgress(100, incr, false);
+                    // Displays the progress bar for the first time.
+                    mNotifyManager.notify(0, mBuilder.build());
+                        // Sleeps the thread, simulating an operation
+                        // that takes time
+                        try {
+                            // Sleep for 5 seconds
+                            Thread.sleep(5*1000);
+                        } catch (InterruptedException e) {
+                            Log.d(TAG, "sleep failure");
+                        }
+            }
+            // When the loop is finished, updates the notification
+            mBuilder.setContentText("Download complete")
+            // Removes the progress bar
+                    .setProgress(0,0,false);
+            mNotifyManager.notify(ID, mBuilder.build());
+        }
+    }
+// Starts the thread by calling the run() method in its Runnable
+).start();
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ActivityIndicator">Exibição de um indicador de atividade contínua</h3>
+<p>
+    Para exibir um indicador de atividade indeterminado, adicione-o à notificação
+    com {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, true)}
+    (os dois primeiros argumentos são ignorados) e emita a notificação. O resultado é um indicador
+    que tem o mesmo estilo que uma barra de progresso, exceto que sua animação é contínua.
+</p>
+<p>
+    Emita a notificação no início da operação. A animação será executada
+    até que a notificação seja modificada. Quando a operação for concluída,
+    chame {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, false)}
+    e, em seguida, atualize a notificação para remover o indicador de atividade.
+    Sempre faça isso. Caso contrário, a animação será executada mesmo quando a operação for concluída. Lembre-se também de alterar
+    o texto da notificação para indicar que a operação foi concluída.
+</p>
+<p>
+    Para ver como os indicadores de atividade funcionam, consulte o fragmento anterior. Localize as seguintes linhas:
+</p>
+<pre>
+// Sets the progress indicator to a max value, the current completion
+// percentage, and "determinate" state
+mBuilder.setProgress(100, incr, false);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+<p>
+    Substitua as linhas encontradas pelas seguintes linhas:
+</p>
+<pre>
+ // Sets an activity indicator for an operation of indeterminate length
+mBuilder.setProgress(0, 0, true);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+
+<h2 id="metadata">Metadados de notificação</h2>
+
+<p>As notificações podem ser classificadas de acordo com os metadados atribuídos
+com os seguintes métodos {@link android.support.v4.app.NotificationCompat.Builder}:</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setCategory(java.lang.String) setCategory()}
+    diz ao sistema como lidar com as notificações do aplicativo quando o dispositivo estiver no modo de Prioridade
+    (por exemplo: se a notificação representar uma chamada recebida, mensagem instantânea ou alarme).</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setPriority(int) setPriority()} faz com que as notificações
+    com o campo de prioridade definido para {@code PRIORITY_MAX} ou {@code PRIORITY_HIGH}
+    apareçam em uma pequena janela flutuante se a notificação também tiver som ou vibração.</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#addPerson(java.lang.String) addPerson()}
+    permite a adição de uma lista de pessoas a uma notificação. O aplicativo pode usar isto para sinalizar
+    ao sistema que ele deve agrupar as notificações de pessoas específicas, ou classificar notificações
+    destas pessoas como sendo mais importantes.</li>
+</ul>
+
+<div class="figure" style="width:230px">
+  <img src="{@docRoot}images/ui/notifications/heads-up.png" alt="" width="" height="" id="figure3" />
+  <p class="img-caption">
+    <strong>Figura 3.</strong> Atividade de tela cheia exibindo uma notificação de informações prévias
+  </p>
+</div>
+
+<h2 id="Heads-up">Notificação de informações prévias</h2>
+
+<p>Com o Android 5.0 (API de nível 21), as notificações podem aparecer em uma pequena janela flutuante
+(também chamada de <em>notificação de informações prévias</em>) quando o dispositivo estiver ativo
+(ou seja, com o dispositivo desbloqueado e a tela ativada). Essas notificações
+aparecem de maneira semelhante à forma compacta da notificação, exceto que a notificação de informações prévias
+também exibe botões de ação. Os usuários podem agir
+ou dispensar a notificação de informações prévias sem deixar o aplicativo atual.</p>
+
+<p>Exemplos de condições que podem ativar uma notificação de informações prévias incluem:</p>
+
+<ul>
+  <li>A atividade do usuário estar no modo de tela cheia (o aplicativo usar
+{@link android.app.Notification#fullScreenIntent}) ou</li>
+  <li>A notificação tem alta prioridade e usa toques
+ou vibrações</li>
+</ul>
+
+<h2 id="lockscreenNotification">Notificações da tela de bloqueio</h2>
+
+<p>Com o lançamento do Android 5.0 (API de nível 21), as notificações podem aparecer
+na tela de bloqueio. O aplicativo pode usar esta funcionalidade para fornecer controles de reprodução de mídia e outras
+ações comuns. Os usuários podem escolher, acessando Configurações, se querem exibir notificações na tela de bloqueio
+e é possível designar se uma notificação do aplicativo será visível na tela de bloqueio.</p>
+
+<h3 id="visibility">Configuração de visibilidade</h3>
+
+<p>O aplicativo pode controlar o nível de detalhe visível nas notificações exibidas
+em uma tela de bloqueio segura. Chama-se {@link android.support.v4.app.NotificationCompat.Builder#setVisibility(int) setVisibility()}
+e especifica-se um dos seguintes valores:</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC} exibe o conteúdo completo
+da notificação.</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_SECRET} não exibe parte alguma
+desta notificação na tela de bloqueio.</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE} exibe informações básicas,
+como o ícone e o título do conteúdo da notificação, mas oculta o conteúdo completo.</li>
+</ul>
+
+<p>Quando {@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE} é definido, é possível
+fornecer também uma versão alternativa do conteúdo da notificação que oculta determinados detalhes. Por exemplo,
+um aplicativo de SMS pode exibir uma notificação que exiba <em>Você tem 3 novas mensagens de texto</em>, mas oculte
+o conteúdo e o remetente das mensagens. Para fornecer esta notificação alternativa, cria-se primeiro
+uma notificação de substituição usando {@link android.support.v4.app.NotificationCompat.Builder}. Ao criar
+o objeto de notificação privada, anexe a notificação de substituição a ele
+usando o método {@link android.support.v4.app.NotificationCompat.Builder#setPublicVersion(android.app.Notification) setPublicVersion()}
+.</p>
+
+<h3 id="controllingMedia">Controle de reprodução de mídia na tela de bloqueio</h3>
+
+<p>No Android 5.0 (API de nível 21), a tela de bloqueio deixa de exibir controles de mídia
+com base em {@link android.media.RemoteControlClient}, que foi reprovado. Em vez disso, usa-se o modelo
+{@link android.app.Notification.MediaStyle} com o método
+{@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()},
+que converte as ações em ícones clicáveis.</p>
+
+<p class="note"><strong>Observação:</strong> o modelo e o método {@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()}
+não estão incluídos na biblioteca de suporte. Portanto, esses recursos funcionam somente no Android 5.0
+e em versões mais recentes.</p>
+
+<p>Para exibir os controles de reprodução de mídia na tela de bloqueio no Android 5.0, defina a visibilidade
+como {@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC}, como descrito acima. Em seguida,
+adicione as ações e defina o modelo {@link android.app.Notification.MediaStyle}, como descrito
+no seguinte exemplo de código:</p>
+
+<pre>
+Notification notification = new Notification.Builder(context)
+    // Show controls on lock screen even when user hides sensitive content.
+    .setVisibility(Notification.VISIBILITY_PUBLIC)
+    .setSmallIcon(R.drawable.ic_stat_player)
+    // Add media control buttons that invoke intents in your media service
+    .addAction(R.drawable.ic_prev, "Previous", prevPendingIntent) // #0
+    .addAction(R.drawable.ic_pause, "Pause", pausePendingIntent)  // #1
+    .addAction(R.drawable.ic_next, "Next", nextPendingIntent)     // #2
+    // Apply the media style template
+    .setStyle(new Notification.MediaStyle()
+    .setShowActionsInCompactView(1 /* #1: pause button */)
+    .setMediaSession(mMediaSession.getSessionToken())
+    .setContentTitle("Wonderful music")
+    .setContentText("My Awesome Band")
+    .setLargeIcon(albumArtBitmap)
+    .build();
+</pre>
+
+<p class="note"><strong>Observação:</strong> a reprovação de {@link android.media.RemoteControlClient}
+tem mais implicações para o controle de mídia. Consulte
+<a href="{@docRoot}about/versions/android-5.0.html#MediaPlaybackControl">Controle de reprodução de mídia</a>
+para obter mais informações sobre as novas APIs para gerenciar a sessão de mídia e o controle de reprodução.</p>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="CustomNotification">Layouts de notificação personalizados</h2>
+<p>
+    A estrutura das notificações permite que um layout de notificação personalizado seja definido,
+    o que define a aparência da notificação em um objeto {@link android.widget.RemoteViews}.
+    As notificações de layout personalizado são parecidas com notificações normais, mas baseiam-se
+    em um {@link android.widget.RemoteViews} definido em um arquivo de layout XML.
+</p>
+<p>
+    A altura disponível para um layout de notificação personalizado depende da vista da notificação. Layouts de vista normal
+    são limitados a 64 dp, e layouts de vista expandida são limitados a 256 dp.
+</p>
+<p>
+    Para definir um layout de notificação personalizada, comece instanciando
+    um objeto {@link android.widget.RemoteViews} que infle um arquivo de layout XML. Em seguida,
+    em vez de chamar métodos como
+    {@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()},
+    chame {@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}. Para definir
+    os detalhes do conteúdo na notificação personalizada, use os métodos em
+    {@link android.widget.RemoteViews} para definir os valores dos filhos da vista:
+</p>
+<ol>
+    <li>
+        Crie um layout XML para a notificação em um arquivo separado. É possível usar o nome de arquivo que desejar,
+        mas deve-se usar a extensão <code>.xml</code>
+    </li>
+    <li>
+        No aplicativo, use métodos {@link android.widget.RemoteViews} para definir os ícones
+        e o texto da notificação. Coloque este objeto {@link android.widget.RemoteViews}
+        em {@link android.support.v4.app.NotificationCompat.Builder}
+        chamando {@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}. Evite definir
+        um {@link android.graphics.drawable.Drawable} de segundo plano
+        no objeto {@link android.widget.RemoteViews}, pois a cor do texto pode torná-lo ilegível.
+    </li>
+</ol>
+<p>
+    A classe {@link android.widget.RemoteViews} também inclui métodos que podem ser usados
+    para adicionar facilmente um {@link android.widget.Chronometer} ou uma {@link android.widget.ProgressBar}
+    ao layout da notificação. Para obter mais informações sobre como criar layouts personalizados
+    para a notificação, consulte a documentação de referência de {@link android.widget.RemoteViews}.
+</p>
+<p class="caution">
+    <strong>Atenção:</strong> ao usar um layout personalizado de notificação, certifique-se
+    de garantir que ele funcione com diferentes orientações e resoluções do dispositivo. Enquanto este aviso
+    aplica-se a todos os layouts de vistas, é muito importante para as notificações,
+    pois o espaço na gaveta da notificação é muito restrito. Não torne o layout personalizado muito complexo
+    e certifique-se de testá-lo em várias configurações.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h4>Uso de recursos de estilo para texto de notificação personalizada</h4>
+<p>
+    Sempre use recursos de estilo para o texto de uma notificação personalizada A cor de fundo
+    da notificação pode variar dentre vários dispositivos e versões e o uso de recursos de estilo
+    ajuda a lidar com isto. A partir do Android 2.3, o sistema definiu um estilo
+    para o texto do layout de notificação padrão. Se usar o mesmo estilo nos aplicativos que usam Android
+    2.3 ou mais recentes, você garantirá que o texto esteja visível em relação ao fundo da exibição.
+</p>
diff --git a/docs/html-intl/intl/pt-br/guide/topics/ui/overview.jd b/docs/html-intl/intl/pt-br/guide/topics/ui/overview.jd
new file mode 100644
index 0000000..d12bfe5
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/ui/overview.jd
@@ -0,0 +1,71 @@
+page.title=Visão geral da IU
+@jd:body
+
+
+<p>Todos os elementos da interface do usuário em um aplicativo para Android são criados usando objetos {@link android.view.View} e
+{@link android.view.ViewGroup}. Uma {@link android.view.View} é um objeto que desenha
+algo na tela com o qual o usuário pode interagir. Um {@link android.view.ViewGroup} é um 
+objeto que contém outros objetos {@link android.view.View} (e {@link android.view.ViewGroup}) para
+definir o layout da interface.</p>
+
+<p>O Android fornece uma coleção de subclasses {@link android.view.View} e {@link
+android.view.ViewGroup} que oferecem controles de entrada comuns (como botões e campos de 
+texto) e vários modelos de layout (como um layout linear ou relativo).</p>
+
+
+<h2 id="Layout">Layout da interface do usuário</h2>
+
+<p>A interface do usuário de cada componente do aplicativo é definida usando uma hierarquia de objetos {@link
+android.view.View} e {@link android.view.ViewGroup}, como mostra a figura 1. Cada grupo de vistas
+é um recipiente invisível que organiza vistas de nível inferior, enquanto que as vistas de nível inferior podem ser
+controles de entrada ou outros widgets
+que desenham alguma parte da IU. Essa árvore hierárquica pode ser simples ou complexa, conforme necessário
+(mas a simplicidade é melhor para desempenho).</p>
+
+<img src="{@docRoot}images/viewgroup.png" alt="" />
+<p class="img-caption"><strong>Figura 1.</strong> Ilustração de uma hierarquia de vistas, que define o layout
+de uma IU.</p>
+
+<p>Para declarar o layout, é possível instanciar objetos {@link android.view.View} no código e começar a
+criar uma árvore. Mas a forma mais fácil e efetiva de definir o layout é com um arquivo XML.
+O XML oferece uma estrutura legível por humanos para o layout, similar a HTML.</p>
+
+<p>O nome de um elemento XML para uma vista é respectivo à classe do Android que ele representa. Portanto, um elemento 
+<code>&lt;TextView&gt;</code> cria um widget {@link android.widget.TextView} na IU
+e um elemento <code>&lt;LinearLayout&gt;</code> cria um grupo de vistas de {@link android.widget.LinearLayout}
+. </p>
+
+<p>Por exemplo, um layout vertical simples com uma vista de texto e um botão se parece com:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="fill_parent" 
+              android:layout_height="fill_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>Ao carregar um recurso de layout no aplicativo, o Android inicializa cada nó do layout em um
+objeto em tempo de execução que pode ser usado para definir comportamentos adicionais, consultar o estado do objeto ou modificar o
+layout.</p>
+
+<p>Para obter um guia completo para criar um layout de IU, consulte <a href="declaring-layout.html">Layouts
+XML</a>.
+
+  
+<h2 id="UIComponents">Componentes da interface do usuário</h2>
+
+<p>Você não precisa criar toda a IU usando objetos {@link android.view.View} e {@link
+android.view.ViewGroup}. O Android fornece vários componentes de aplicativo que oferecem
+um layout de IU padrão para os quais basta definir o conteúdo. Esses componentes de IU
+têm um conjunto único de APIs que são descritas nos respectivos documentos, como <a href="{@docRoot}guide/topics/ui/actionbar.html">Barra de ação</a>, <a href="{@docRoot}guide/topics/ui/dialogs.html">Caixas de diálogo</a> e <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Notificações de status</a>.</p>
+
+
diff --git a/docs/html-intl/intl/pt-br/guide/topics/ui/settings.jd b/docs/html-intl/intl/pt-br/guide/topics/ui/settings.jd
new file mode 100644
index 0000000..f95966c
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/ui/settings.jd
@@ -0,0 +1,1202 @@
+page.title=Configurações
+page.tags=preferência,preferenceactivity,preferencefragment
+
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Neste documento</h2>
+<ol>
+  <li><a href="#Overview">Visão geral</a>
+    <ol>
+      <li><a href="#SettingTypes">Preferências</a></li>
+    </ol>
+  </li>
+  <li><a href="#DefiningPrefs">Definição de preferências em XML</a>
+    <ol>
+      <li><a href="#Groups">Criação de grupos de configuração</a></li>
+      <li><a href="#Intents">Uso de intenções</a></li>
+    </ol>
+  </li>
+  <li><a href="#Activity">Criação de uma atividade de preferência</a></li>
+  <li><a href="#Fragment">Uso de fragmentos de preferência</a></li>
+  <li><a href="#Defaults">Configuração de valores padrão</a></li>
+  <li><a href="#PreferenceHeaders">Uso de cabeçalhos de preferência</a>
+    <ol>
+      <li><a href="#CreateHeaders">Criação do arquivo de cabeçalhos</a></li>
+      <li><a href="#DisplayHeaders">Exibição de cabeçalhos</a></li>
+      <li><a href="#BackCompatHeaders">Compatibilidade de versões mais antigas com cabeçalhos de preferência</a></li>
+    </ol>
+  </li>
+  <li><a href="#ReadingPrefs">Leitura de preferências</a>
+    <ol>
+      <li><a href="#Listening">Escuta de alterações de preferência</a></li>
+    </ol>
+  </li>
+  <li><a href="#NetworkUsage">Gerenciamento de uso de rede</a></li>
+  <li><a href="#Custom">Composição de uma preferência personalizada</a>
+    <ol>
+      <li><a href="#CustomSelected">Especificação da interface do usuário</a></li>
+      <li><a href="#CustomSave">Salvamento do valor da configuração</a></li>
+      <li><a href="#CustomInitialize">Inicialização do valor atual</a></li>
+      <li><a href="#CustomDefault">Fornecimento de um valor padrão</a></li>
+      <li><a href="#CustomSaveState">Salvamento e restauração do estado da preferência</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Classes principais</h2>
+<ol>
+  <li>{@link android.preference.Preference}</li>
+  <li>{@link android.preference.PreferenceActivity}</li>
+  <li>{@link android.preference.PreferenceFragment}</li>
+</ol>
+
+
+<h2>Veja também</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/settings.html">Guia de projeto de configurações</a></li>
+</ol>
+</div>
+</div>
+
+
+
+
+<p>Geralmente os aplicativos contêm configurações que permitem aos usuários modificar características e comportamentos do aplicativo. Por
+exemplo: alguns aplicativos permitem aos usuários especificar se as notificações estão ativadas ou especificar a frequência
+com que o aplicativo sincroniza dados com a nuvem.</p>
+
+<p>Para fornecer configurações ao aplicativo, é preciso usar
+as APIs {@link android.preference.Preference} do Android para programar uma interface coerente
+com a experiência do usuário em outros aplicativos Android (inclusive as configurações do sistema). Este documento descreve
+como programar as configurações do aplicativo por meio de APIs {@link android.preference.Preference}.</p>
+
+<div class="note design">
+<p><strong>Projeto de configurações</strong></p>
+  <p>Para obter mais informações sobre o projeto de configurações, leia o guia de projeto <a href="{@docRoot}design/patterns/settings.html">Configurações</a>.</p>
+</div>
+
+
+<img src="{@docRoot}images/ui/settings/settings.png" alt="" width="435" />
+<p class="img-caption"><strong>Figura 1.</strong> Capturas de tela das configurações do aplicativo Mensagens
+do Android. A seleção de um item definido por uma {@link android.preference.Preference} 
+abre uma interface para alterar a configuração.</p>
+
+
+
+
+<h2 id="Overview">Visão geral</h2>
+
+<p>Em vez de usar objetos {@link android.view.View} para criar a interface do usuário, as configurações
+são criadas por meio de várias subclasses da classe {@link android.preference.Preference}
+declaradas em um arquivo XML.</p>
+
+<p>Os objetos {@link android.preference.Preference} são as peças fundamentais de uma única
+configuração. Cada {@link android.preference.Preference} aparece como um item em uma lista e oferece a IU
+adequada para que os usuários modifiquem a configuração. Por exemplo: uma {@link
+android.preference.CheckBoxPreference} cria um item de lista que exibe uma caixa de seleção e uma {@link
+android.preference.ListPreference} cria um item que abre uma caixa de diálogo com uma lista de opções.</p>
+
+<p>Cada {@link android.preference.Preference} adicionada tem um par de valor-chave correspondente
+que o sistema usa para salvar a configuração em um arquivo
+{@link android.content.SharedPreferences} padrão para as configurações do aplicativo. Quando o usuário altera uma configuração, o sistema atualiza o valor
+correspondente no arquivo {@link android.content.SharedPreferences}. O único momento em que
+se deve interagir diretamente com o arquivo {@link android.content.SharedPreferences} associado
+é no momento de ler o valor para determinar o comportamento do aplicativo com base na configuração do usuário.</p>
+
+<p>O valor salvo em {@link android.content.SharedPreferences} para cada configuração pode ser
+um dos seguintes tipos de dados:</p>
+
+<ul>
+  <li>Boolean</li>
+  <li>Float</li>
+  <li>Int</li>
+  <li>Long</li>
+  <li>String</li>
+  <li>String {@link java.util.Set}</li>
+</ul>
+
+<p>Como a IU de configurações do aplicativo é criada com objetos {@link android.preference.Preference}
+ em vez de objetos 
+{@link android.view.View}, é preciso usar uma subclasse {@link android.app.Activity} ou 
+{@link android.app.Fragment} especializada para exibir as configurações de lista:</p>
+
+<ul>
+  <li>Se o aplicativo for compatível com versões do Android anteriores à 3.0 (nível da API 10 ou anterior), será
+necessário criar a atividade como uma extensão da classe {@link android.preference.PreferenceActivity}.</li>
+  <li>No Android 3.0 ou versões posteriores, deve-se usar um {@link android.app.Activity} tradicional
+que hospeda um {@link android.preference.PreferenceFragment} que exige as configurações do aplicativo.
+No entanto, pode-se também usar {@link android.preference.PreferenceActivity} para criar um layout de dois painéis
+para telas maiores quando há vários grupos de configurações.</li>
+</ul>
+
+<p>Veja como configurar a {@link android.preference.PreferenceActivity} e instâncias de {@link
+android.preference.PreferenceFragment} nas seções sobre a <a href="#Activity">Criação de uma atividade de preferência</a> e <a href="#Fragment">Uso
+de fragmentos de preferência</a>.</p>
+
+
+<h3 id="SettingTypes">Preferências</h3>
+
+<p>Toda configuração do aplicativo é representada por uma subclasse específica da classe {@link
+android.preference.Preference}. Cada subclasse contém um conjunto de propriedades essenciais que permitem
+especificar itens como o título da configuração e o valor padrão. Cada subclasse também oferece
+suas propriedades e interface do usuário especializadas. Por exemplo: a figura 1 ilustra uma captura de tela
+das configurações do aplicativo Mensagens. Cada item de lista na tela de configurações tem, como fundo, um objeto {@link
+android.preference.Preference} diferente.</p>
+
+<p>A seguir há algumas das preferências mais comuns:</p>
+
+<dl>
+  <dt>{@link android.preference.CheckBoxPreference}</dt>
+  <dd>Exibe um item com uma caixa de seleção para uma configuração que esteja ativada ou desativada. O valor
+salvo é um booleano (<code>true</code> se estiver selecionada).</dd>
+
+  <dt>{@link android.preference.ListPreference}</dt>
+  <dd>Abre uma caixa de diálogo com uma lista de botões de opção. O valor salvo
+pode ser qualquer um dos tipos de valor compatíveis (listados acima).</dd>
+
+  <dt>{@link android.preference.EditTextPreference}</dt>
+  <dd>Abre uma caixa de diálogo com um widget {@link android.widget.EditText}. O valor salvo é um {@link
+java.lang.String}.</dd>
+</dl>
+
+<p>Consulte a classe {@link android.preference.Preference} para ver uma lista de todas as outras subclasses e
+as propriedades correspondentes.</p>
+
+<p>É claro que as classes embutidas não acomodam todas as necessidades e o aplicativo pode exigir
+algo mais especializado. Por exemplo: a plataforma atualmente não fornece nenhuma classe {@link
+android.preference.Preference} para selecionar um número ou data. Portanto, pode ser necessário definir
+a própria subclasse {@link android.preference.Preference}. Veja mais informações na seção sobre <a href="#Custom">Composição de uma preferência personalizada</a>.</p>
+
+
+
+<h2 id="DefiningPrefs">Definição de preferências em XML</h2>
+
+<p>Embora se possa instanciar novos objetos {@link android.preference.Preference} em tempo de execução,
+deve-se definir uma lista de configurações no XML com uma hierarquia
+de objetos {@link android.preference.Preference}. Recomenda-se o uso de um arquivo XML para definir a coleção de configurações porque o arquivo
+oferece uma estrutura fácil de ler e simples de atualizar. Além disso, as configurações do aplicativo
+geralmente são predeterminadas, embora ainda seja possível modificar a coleção em tempo de execução.</p>
+
+<p>Cada subclasse {@link android.preference.Preference} pode ser declarada com um elemento XML
+correspondente ao nome da classe, como {@code &lt;CheckBoxPreference&gt;}.</p>
+
+<p>É preciso salvar o arquivo XML no diretório {@code res/xml/}. Embora seja possível nomear livremente
+o arquivo, é mais frequente vê-lo com o nome {@code preferences.xml}. Geralmente só é necessário um arquivo
+porque as ramificações na hierarquia (que abrem sua própria lista de configurações) são declaradas
+por meio de instâncias aninhadas de {@link android.preference.PreferenceScreen}.</p>
+
+<p class="note"><strong>Observação:</strong> se você deseja criar um layout de vários painéis
+para as configurações, serão necessários arquivos XML separados para cada fragmento.</p>
+
+<p>O nó raiz do arquivo XML deve ser um elemento {@link android.preference.PreferenceScreen
+&lt;PreferenceScreen&gt;}. É dentro desse elemento que se adiciona cada {@link
+android.preference.Preference}. Cada filho adicionado dentro do elemento
+{@link android.preference.PreferenceScreen &lt;PreferenceScreen&gt;} é exibido com um item
+único na lista de configurações.</p>
+
+<p>Por exemplo:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;CheckBoxPreference
+        android:key="pref_sync"
+        android:title="@string/pref_sync"
+        android:summary="@string/pref_sync_summ"
+        android:defaultValue="true" />
+    &lt;ListPreference
+        android:dependency="pref_sync"
+        android:key="pref_syncConnectionType"
+        android:title="@string/pref_syncConnectionType"
+        android:dialogTitle="@string/pref_syncConnectionType"
+        android:entries="@array/pref_syncConnectionTypes_entries"
+        android:entryValues="@array/pref_syncConnectionTypes_values"
+        android:defaultValue="@string/pref_syncConnectionTypes_default" />
+&lt;/PreferenceScreen>
+</pre>
+
+<p>Nesse exemplo, existe um {@link android.preference.CheckBoxPreference} e um {@link
+android.preference.ListPreference}. Os dois itens contêm estes três atributos:</p>
+
+<dl>
+  <dt>{@code android:key}</dt>
+  <dd>Esse atributo é necessário para preferências que persistem a um valor de dados. Ele especifica a chave
+exclusiva (uma string) que o sistema usa ao salvar o valor dessa configuração em {@link
+android.content.SharedPreferences}. 
+  <p>As únicas instâncias em que esse atributo é <em>dispensável</em> ocorrem quando a preferência é um 
+{@link android.preference.PreferenceCategory} ou {@link android.preference.PreferenceScreen},
+ou quando a preferência especifica um {@link android.content.Intent} para invocar (com um elemento <a href="#Intents">{@code &lt;intent&gt;}</a>) ou um {@link android.app.Fragment} para exibir (com um atributo <a href="{@docRoot}reference/android/preference/Preference.html#attr_android:fragment">{@code
+android:fragment}</a>).</p>
+  </dd>
+  <dt>{@code android:title}</dt>
+  <dd>Fornece à configuração um nome visível ao usuário.</dd>
+  <dt>{@code android:defaultValue}</dt>
+  <dd>Especifica o valor inicial que o sistema deve definir no arquivo {@link
+android.content.SharedPreferences}. Deve-se fornecer um valor padrão para
+todas as configurações.</dd>
+</dl>
+
+<p>Para mais informações sobre todos os outros atributos compatíveis, consulte a documentação {@link
+android.preference.Preference} (e subclasse respectiva).</p>
+
+
+<div class="figure" style="width:300px">
+  <img src="{@docRoot}images/ui/settings/settings-titles.png" alt="" />
+  <p class="img-caption"><strong>Figura 2.</strong> Definição de categorias
+com títulos. <br/><b>1.</b> A categoria é especificada pelo elemento {@link
+android.preference.PreferenceCategory &lt;PreferenceCategory&gt;}. <br/><b>2.</b> O título
+é especificado com o atributo {@code android:title}.</p>
+</div>
+
+
+<p>Quando a lista de configurações excede cerca de 10 itens, pode ser necessário adicionar títulos
+para definir grupos de configurações ou exibir esses grupos
+em uma tela separada. Essas opções são descritas nas seções a seguir.</p>
+
+
+<h3 id="Groups">Criação de grupos de configuração</h3>
+
+<p>Se você apresentar uma lista de 10 ou mais configurações,
+os usuários podem ter dificuldade de percorrê-las, compreendê-las e processá-las. Para solucionar isso,
+pode-se dividir algumas ou todas as configurações em grupos, transformando uma longa lista
+em várias listas mais curtas. Um grupo de configurações relacionadas pode ser apresentado de uma das seguintes formas:</p>
+
+<ul>
+  <li><a href="#Titles">Uso de títulos</a></li>
+  <li><a href="#Subscreens">Uso de subtelas</a></li>
+</ul>
+
+<p>Pode-se usar uma ou ambas as técnicas de agrupamento para organizar as configurações do aplicativo. Ao decidir
+qual delas usar e como dividir as configurações, deve-se seguir as diretrizes do guia
+<a href="{@docRoot}design/patterns/settings.html">Configurações</a> de Projeto do Android.</p>
+
+
+<h4 id="Titles">Uso de títulos</h4>
+
+<p>Para usar divisores com cabeçalhos entre grupos de configurações (como ilustrado na figura 2),
+coloca-se cada grupo de objetos {@link android.preference.Preference} dentro de {@link
+android.preference.PreferenceCategory}.</p>
+
+<p>Por exemplo:</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;PreferenceCategory 
+        android:title="&#64;string/pref_sms_storage_title"
+        android:key="pref_key_storage_settings">
+        &lt;CheckBoxPreference
+            android:key="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_auto_delete"
+            android:title="&#64;string/pref_title_auto_delete"
+            android:defaultValue="false"... />
+        &lt;Preference 
+            android:key="pref_key_sms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_sms_delete"... />
+        &lt;Preference 
+            android:key="pref_key_mms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_mms_delete" ... />
+    &lt;/PreferenceCategory>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h4 id="Subscreens">Uso de subtelas</h4>
+
+<p>Para usar grupos de configurações em uma subtela (como ilustrado na figura 3), coloque o grupo 
+de objetos {@link android.preference.Preference} dentro de {@link
+android.preference.PreferenceScreen}.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-subscreen.png" alt="" />
+<p class="img-caption"><strong>Figura 3.</strong> Subtelas de configuração. O elemento {@code
+&lt;PreferenceScreen&gt;} cria
+um item que, quando selecionado, abre uma lista separada para exibir as configurações aninhadas.</p>
+
+<p>Por exemplo:</p>
+
+<pre>
+&lt;PreferenceScreen  xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;!-- opens a subscreen of settings -->
+    &lt;PreferenceScreen
+        android:key="button_voicemail_category_key"
+        android:title="&#64;string/voicemail"
+        android:persistent="false">
+        &lt;ListPreference
+            android:key="button_voicemail_provider_key"
+            android:title="&#64;string/voicemail_provider" ... />
+        &lt;!-- opens another nested subscreen -->
+        &lt;PreferenceScreen
+            android:key="button_voicemail_setting_key"
+            android:title="&#64;string/voicemail_settings"
+            android:persistent="false">
+            ...
+        &lt;/PreferenceScreen>
+        &lt;RingtonePreference
+            android:key="button_voicemail_ringtone_key"
+            android:title="&#64;string/voicemail_ringtone_title"
+            android:ringtoneType="notification" ... />
+        ...
+    &lt;/PreferenceScreen>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h3 id="Intents">Uso de intenções</h3>
+
+<p>Em alguns casos, pode ser necessário que um item de preferência abra em um atividade diferente
+e não na tela de configuração, como um navegador da web para exibir uma página da web. Para invocar um {@link
+android.content.Intent} quando o usuário seleciona um item de preferência, adicione um elemento {@code &lt;intent&gt;}
+como filho do elemento {@code &lt;Preference&gt;} correspondente.</p>
+
+<p>Por exemplo, a seguir apresenta-se como usar um item de preferência para abrir uma página da web:</p>
+
+<pre>
+&lt;Preference android:title="@string/prefs_web_page" >
+    &lt;intent android:action="android.intent.action.VIEW"
+            android:data="http://www.example.com" />
+&lt;/Preference>
+</pre>
+
+<p>É possível criar intenções implícitas e explícitas usando os seguintes atributos:</p>
+
+<dl>
+  <dt>{@code android:action}</dt>
+    <dd>A ação a atribuir, conforme o método {@link android.content.Intent#setAction setAction()}.
+</dd>
+  <dt>{@code android:data}</dt>
+    <dd>Os dados a atribuir, conforme o método {@link android.content.Intent#setData setData()}.</dd>
+  <dt>{@code android:mimeType}</dt>
+    <dd>O tipo MIME atribuir, conforme o método {@link android.content.Intent#setType setType()}.
+</dd>
+  <dt>{@code android:targetClass}</dt>
+    <dd>A parte de classe do nome do componente, conforme o método {@link android.content.Intent#setComponent
+setComponent()}.</dd>
+  <dt>{@code android:targetPackage}</dt>
+    <dd>A parte de pacote do nome do componente, conforme o método {@link
+android.content.Intent#setComponent setComponent()}.</dd>
+</dl>
+
+
+
+<h2 id="Activity">Criação de uma atividade de preferência</h2>
+
+<p>Para exibir as configurações em uma atividade, estenda a classe {@link
+android.preference.PreferenceActivity}. É uma extensão da classe tradicional {@link
+android.app.Activity} que exibe uma lista de configurações com base em uma hierarquia de objetos {@link
+android.preference.Preference}. A {@link android.preference.PreferenceActivity}
+automaticamente persiste às configurações associadas a cada {@link
+android.preference.Preference} quando o usuário faz uma alteração.</p>
+
+<p class="note"><strong>Observação:</strong> ao desenvolver um aplicativo para Android 3.0
+ou superior, deve-se usar o {@link android.preference.PreferenceFragment}. Consulte a próxima
+seção sobre o <a href="#Fragment">Uso de fragmentos de preferência</a>.</p>
+
+<p>O mais importante é não carregar um layout de vistas durante o retorno de chamada {@link
+android.preference.PreferenceActivity#onCreate onCreate()}. Em vez disso, chama-se {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()}
+para adicionar à atividade as preferências declaradas em um arquivo XML. Por exemplo: abaixo há o código mínimo
+necessário para um {@link android.preference.PreferenceActivity} funcional:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        addPreferencesFromResource(R.xml.preferences);
+    }
+}
+</pre>
+
+<p>Na verdade, esse código é suficiente para alguns aplicativos porque, assim que o usuário modifica uma preferência,
+o sistema salva as alterações em um arquivo padrão {@link android.content.SharedPreferences}
+que os componentes do outro aplicativo poderá ler quando for necessário verificar as configurações do usuário. No entanto,
+muitos aplicativos exigem um pouco mais de código para escutar as alterações que ocorrem nas preferências.
+Para informações sobre a escuda de alterações no arquivo {@link android.content.SharedPreferences},
+consulte a seção sobre <a href="#ReadingPrefs">Leitura de preferências</a>.</p>
+
+
+
+
+<h2 id="Fragment">Uso de fragmentos de preferência</h2>
+
+<p>Ao desenvolver para Android 3.0 (nível da API 11) ou versões posteriores, deve-se usar um {@link
+android.preference.PreferenceFragment} para exibir a lista de objetos {@link android.preference.Preference}.
+ Pode-se adicionar um {@link android.preference.PreferenceFragment} a qualquer atividade &mdash; não é
+necessário usar {@link android.preference.PreferenceActivity}.</p>
+
+<p>Os <a href="{@docRoot}guide/components/fragments.html">fragmentos</a> permitem uma arquitetura
+mais flexível para o aplicativo em comparação com o uso de apenas atividades para qualquer
+tipo de atividade criada. Assim, sugerimos usar {@link
+android.preference.PreferenceFragment} para controlar a exibição das configurações em vez de {@link
+android.preference.PreferenceActivity} sempre que possível.</p>
+
+<p>A implementação de {@link android.preference.PreferenceFragment} pode ser tão simples
+quanto definir o método {@link android.preference.PreferenceFragment#onCreate onCreate()} para carregar
+um arquivo de preferências com {@link android.preference.PreferenceFragment#addPreferencesFromResource
+addPreferencesFromResource()}. Por exemplo:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Load the preferences from an XML resource
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+}
+</pre>
+
+<p>É possível adicionar esse fragmento a um {@link android.app.Activity} como se faria com qualquer outro
+{@link android.app.Fragment}. Por exemplo:</p>
+
+<pre>
+public class SettingsActivity extends Activity {
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Display the fragment as the main content.
+        getFragmentManager().beginTransaction()
+                .replace(android.R.id.content, new SettingsFragment())
+                .commit();
+    }
+}
+</pre>
+
+<p class="note"><strong>Observação:</strong> um {@link android.preference.PreferenceFragment} não tem
+seu próprio objeto {@link android.content.Context}. Se for necessário um objeto {@link android.content.Context}
+, é possível chamar {@link android.app.Fragment#getActivity()}. No entanto, tome cuidado para chamar
+{@link android.app.Fragment#getActivity()} somente quando o fragmento estiver anexado a uma atividade. Quando
+o fragmento ainda não estiver anexado, ou tiver sido separado durante o fim do seu ciclo de vida, {@link
+android.app.Fragment#getActivity()} retornará como nulo.</p>
+
+
+<h2 id="Defaults">Configuração de valores padrão</h2>
+
+<p>As preferências criadas provavelmente definem alguns comportamentos importantes do aplicativo, portanto
+é necessário inicializar o arquivo {@link android.content.SharedPreferences} associado
+com os valores padrão de cada {@link android.preference.Preference} quando o usuário abre o aplicativo
+pela primeira vez.</p>
+
+<p>A primeira coisa a fazer é especificar o valor padrão de cada objeto {@link
+android.preference.Preference}
+no arquivo XML com o atributo {@code android:defaultValue}. O valor pode ser qualquer tipo de dados
+apropriado para o objeto {@link android.preference.Preference} correspondente. Por
+exemplo:</p>
+
+<pre>
+&lt;!-- default value is a boolean -->
+&lt;CheckBoxPreference
+    android:defaultValue="true"
+    ... />
+
+&lt;!-- default value is a string -->
+&lt;ListPreference
+    android:defaultValue="@string/pref_syncConnectionTypes_default"
+    ... />
+</pre>
+
+<p>Em seguida, a partir do método {@link android.app.Activity#onCreate onCreate()} na atividade principal
+do aplicativo &mdash; e em qualquer outra atividade pela qual o usuário possa entrar no aplicativo pela
+primeira vez &mdash;, chame {@link android.preference.PreferenceManager#setDefaultValues
+setDefaultValues()}:</p>
+
+<pre>
+PreferenceManager.setDefaultValues(this, R.xml.advanced_preferences, false);
+</pre>
+
+<p>Essa chamada durante {@link android.app.Activity#onCreate onCreate()} garante que o aplicativo
+seja adequadamente inicializado com as configurações padrão, que o aplicativo pode precisar ler
+para determinar alguns comportamentos (se, por exemplo, baixará dados enquanto estiver
+em uma rede de celular).</p>
+
+<p>Esse método usa três argumentos:</p>
+<ul>
+  <li>O {@link android.content.Context} do aplicativo.</li>
+  <li>O ID de recurso do arquivo XML de preferências para o qual você deseja definir os valores padrão.</li>
+  <li>Booleano que indica se os valores padrão devem ser definidos mais de uma vez.
+<p>Quando <code>false</code>, o sistema define os valores parão somente se esse método nunca tiver
+sido chamado (ou se {@link android.preference.PreferenceManager#KEY_HAS_SET_DEFAULT_VALUES}
+no arquivo de preferências compartilhadas do valor padrão for falso).</p></li>
+</ul>
+
+<p>Enquanto o terceiro argumento estiver definido como <code>false</code>, pode-se chamar esse método com segurança
+toda vez que a atividade iniciar sem substituir as preferências salvas do usuário redefinindo-as
+para os padrões. No entanto, se ele for definido como <code>true</code>, todos os valores anteriores
+serão substituídos pelos padrões.</p>
+
+
+
+<h2 id="PreferenceHeaders">Uso de cabeçalhos de preferência</h2>
+
+<p>Em casos raros, pode ser necessário projetar as configurações de forma que a primeira tela
+exiba somente uma lista de <a href="#Subscreens">subtelas</a> (como as do aplicativo Configurações
+conforme ilustrado nas figuras 4 e 5). Ao desenvolver um projeto desse tipo para Android 3.0 ou versão posterior,
+deve-se usar um novo recurso "cabeçalhos" no Android 3.0 em vez de criar subtelas com elementos
+{@link android.preference.PreferenceScreen} aninhados.</p>
+
+<p>Para criar as configurações com cabeçalhos, é preciso:</p>
+<ol>
+  <li>Separar cada grupo de configurações em instâncias separadas de {@link
+android.preference.PreferenceFragment}. Ou seja, cada grupo de configurações precisa de um arquivo
+XML separado.</li>
+  <li>Criar um arquivo XML de cabeçalhos que lista cada grupo de configurações e declara que fragmento
+contém a lista correspondente de configurações.</li>
+  <li>Estender a classe {@link android.preference.PreferenceActivity} para hospedar as configurações.</li>
+  <li>Implementar o retorno de chamada {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} para especificar
+o arquivo de cabeçalhos.</li>
+</ol>
+
+<p>Um grande benefício de usar esse modelo é que {@link android.preference.PreferenceActivity}
+automaticamente apresenta o layout de dois painéis ilustrado na figura 4 ao executar em telas grandes.</p>
+
+<p>Mesmo se o aplicativo for compatível com versões de Android anteriores à 3.0, é possível programar
+o aplicativo para usar {@link android.preference.PreferenceFragment} para uma apresentação em dois painéis
+em dispositivos mais novos e ser compatível com a hierarquia tradicional multitelas
+em dispositivos mais antigos (veja a seção sobre <a href="#BackCompatHeaders">Compatibilidade de versões
+mais antigas com cabeçalhos de preferência</a>).</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-tablet.png" alt="" />
+<p class="img-caption"><strong>Figura 4.</strong> Layout de dois painéis com cabeçalhos. <br/><b>1.</b> Os cabeçalhos
+são definidos com um arquivo XML de cabeçalhos. <br/><b>2.</b> Cada grupo de configurações é definido por um
+{@link android.preference.PreferenceFragment} especificado por um elemento {@code &lt;header&gt;}
+no arquivo de cabeçalhos.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-handset.png" alt="" />
+<p class="img-caption"><strong>Figura 5.</strong> Um dispositivo celular com cabeçalhos de configuração. Quando
+um item é selecionado o {@link android.preference.PreferenceFragment} associado substitui
+os cabeçalhos.</p>
+
+
+<h3 id="CreateHeaders" style="clear:left">Criação do arquivo de cabeçalhos</h3>
+
+<p>Cada grupo de configurações na lista de cabeçalhos é especificado por um único elemento {@code &lt;header&gt;}
+dentro de um elemento raiz {@code &lt;preference-headers&gt;}. Por exemplo:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;!-- key/value pairs can be included as arguments for the fragment. -->
+        &lt;extra android:name="someKey" android:value="someHeaderValue" />
+    &lt;/header>
+&lt;/preference-headers>
+</pre>
+
+<p>Com o atributo {@code android:fragment}, cada cabeçalho declara uma instância de {@link
+android.preference.PreferenceFragment} que deve abrir quando o usuário selecionar o cabeçalho.</p>
+
+<p>O elemento {@code &lt;extras&gt;} permite passar os pares de valores-chave para o fragmento em um {@link
+android.os.Bundle}. O fragmento pode recuperar os argumentos chamando {@link
+android.app.Fragment#getArguments()}. Há vários motivos para passar argumentos ao fragmento,
+mas um bom motivo é reutilizar a mesma subclasse de {@link
+android.preference.PreferenceFragment} para cada grupo e usar o argumento para especificar
+o arquivo XML de preferências que o fragmento deve carregar.</p>
+
+<p>Por exemplo, a seguir há um fragmento que pode ser reutilizado em vários grupos de configurações, quando
+cada cabeçalho define um argumento {@code &lt;extra&gt;} com a chave {@code "settings"}:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        String settings = getArguments().getString("settings");
+        if ("notifications".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_wifi);
+        } else if ("sync".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_sync);
+        }
+    }
+}
+</pre>
+
+
+
+<h3 id="DisplayHeaders">Exibição de cabeçalhos</h3>
+
+<p>Para exibir os cabeçalhos de preferência, é preciso implementar o método de retorno de chamada {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} e chamar 
+{@link android.preference.PreferenceActivity#loadHeadersFromResource
+loadHeadersFromResource()}. Por exemplo:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onBuildHeaders(List&lt;Header> target) {
+        loadHeadersFromResource(R.xml.preference_headers, target);
+    }
+}
+</pre>
+
+<p>Quando o usuário seleciona um item de uma lista de cabeçalhos, o sistema abre o {@link
+android.preference.PreferenceFragment} associado.</p>
+
+<p class="note"><strong>Observação:</strong> ao usar cabeçalhos de preferência, a subclasse de {@link
+android.preference.PreferenceActivity} não precisa implementar o método {@link
+android.preference.PreferenceActivity#onCreate onCreate()} porque a única tarefa
+necessária para a atividade é carregar os cabeçalhos.</p>
+
+
+<h3 id="BackCompatHeaders">Compatibilidade de versões mais antigas com cabeçalhos de preferência</h3>
+
+<p>Se o aplicativo for compatível com versões de Android anteriores à 3.0, ainda será possível usar cabeçalhos
+para fornecer um layout em dois painéis ao executar no Android 3.0 e versões posteriores. Basta criar um arquivo XML de preferências
+adicional que usa elementos básicos {@link android.preference.Preference
+&lt;Preference&gt;} que se comportam como os itens de cabeçalho (para uso das versões mais antigas
+do Android).</p>
+
+<p>No entanto, em vez de abrir um novo {@link android.preference.PreferenceScreen}, cada elemento {@link
+android.preference.Preference &lt;Preference&gt;} envia um {@link android.content.Intent}
+ao {@link android.preference.PreferenceActivity} que especifica que arquivo XML de preferência
+carregar.</p>
+
+<p>Por exemplo, abaixo há um arquivo XML de cabeçalhos de preferência usado no Android 3.0
+e posterior ({@code res/xml/preference_headers.xml}):</p> 
+
+<pre>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" />
+&lt;/preference-headers>
+</pre>
+
+<p>E apresenta-se também um arquivo de preferências que fornece os mesmos cabeçalhos de versões de Android
+mais antigas que a 3.0 ({@code res/xml/preference_headers_legacy.xml}):</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;Preference 
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one"  >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_ONE" />
+    &lt;/Preference>
+    &lt;Preference 
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_TWO" />
+    &lt;/Preference>
+&lt;/PreferenceScreen>
+</pre>
+
+<p>Como a compatibilidade com {@code &lt;preference-headers&gt;} foi adicionada no Android 3.0, o sistema chama
+{@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} em seu {@link
+android.preference.PreferenceActivity} somente ao executar em Androd 3.0 ou posterior. Para carregar
+o arquivo de cabeçalhos de “legado" ({@code preference_headers_legacy.xml}), é preciso verificar a versãodo Android
+e, se a versão for mais antiga que o Android 3.0 ({@link
+android.os.Build.VERSION_CODES#HONEYCOMB}), chama {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()}
+para carregar o arquivo de cabeçalho legado. Por exemplo:</p>
+
+<pre>
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    ...
+
+    if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+
+// Called only on Honeycomb and later
+&#64;Override
+public void onBuildHeaders(List&lt;Header> target) {
+   loadHeadersFromResource(R.xml.preference_headers, target);
+}
+</pre>
+
+<p>Depois só resta tratar o {@link android.content.Intent} passado para a atividade
+para identificar que arquivo de preferências carregar. Portanto, para recuperar a ação da intenção e compará-la
+com strings de ações conhecidas usadas nas tags de {@code &lt;intent&gt;} do XML de preferências:</p>
+
+<pre>
+final static String ACTION_PREFS_ONE = "com.example.prefs.PREFS_ONE";
+...
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+
+    String action = getIntent().getAction();
+    if (action != null &amp;&amp; action.equals(ACTION_PREFS_ONE)) {
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+
+    else if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+</pre>
+
+<p>Observe que chamadas consecutivas a {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()}
+empilharão todas as preferências em uma única lista, portanto certifique-se de que seja chamado somente uma vez, encadeando
+as condições com declarações else-if.</p>
+
+
+
+
+
+<h2 id="ReadingPrefs">Leitura de preferências</h2>
+
+<p>Por padrão, todas as preferências do aplicativo são salvas em um arquivo acessível de qualquer lugar
+dentro do aplicativo chamando o método estático {@link
+android.preference.PreferenceManager#getDefaultSharedPreferences
+PreferenceManager.getDefaultSharedPreferences()}. Isso retorna o objeto {@link
+android.content.SharedPreferences} que contém todos os pares de valores-chave associados
+aos objetos {@link android.preference.Preference} usados em {@link
+android.preference.PreferenceActivity}.</p>
+
+<p>Por exemplo, abaixo apresenta-se como ler um dos valores de preferência de outra atividade
+no aplicativo:</p>
+
+<pre>
+SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
+String syncConnPref = sharedPref.getString(SettingsActivity.KEY_PREF_SYNC_CONN, "");
+</pre>
+
+
+
+<h3 id="Listening">Escuta de alterações de preferência</h3>
+
+<p>Há alguns motivos pelos quais pode ser necessário ser notificado assim que o usuário altera
+uma das preferências. Para receber um retorno de chamada quando acontece uma alteração em alguma das preferências,
+implemente a interface {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener
+SharedPreference.OnSharedPreferenceChangeListener} e registre a escuta
+para o objeto {@link android.content.SharedPreferences} chamando {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}.</p>
+
+<p>A interface tem somente um método de retorno de chamada, {@link
+android.content.SharedPreferences.OnSharedPreferenceChangeListener#onSharedPreferenceChanged
+onSharedPreferenceChanged()}, e pode ser mais fácil implementar a interface como parte
+da atividade. Por exemplo:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity
+                              implements OnSharedPreferenceChangeListener {
+    public static final String KEY_PREF_SYNC_CONN = "pref_syncConnectionType";
+    ...
+
+    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
+        String key) {
+        if (key.equals(KEY_PREF_SYNC_CONN)) {
+            Preference connectionPref = findPreference(key);
+            // Set summary to be the user-description for the selected value
+            connectionPref.setSummary(sharedPreferences.getString(key, ""));
+        }
+    }
+}
+</pre>
+
+<p>Nesse exemplo, o método verifica se a configuração alterada se destina a uma chave de preferência conhecida. Ele
+chama {@link android.preference.PreferenceActivity#findPreference findPreference()} para obter
+o objeto {@link android.preference.Preference} alterado para que possa modificar o sumário
+do item como uma descrição da seleção do usuário. Ou seja, quando a configuração for uma {@link
+android.preference.ListPreference} ou outra configuração de múltipla escolha, deve-se chamar {@link
+android.preference.Preference#setSummary setSummary()} quando a configuração for alterada para exibir
+o status atual (como a configuração Suspensão mostrada na figura 5).</p>
+
+<p class="note"><strong>Observação:</strong> conforme descrito no documento do Projeto para Android sobre <a href="{@docRoot}design/patterns/settings.html">Configurações</a>, recomendamos atualizar
+o sumário de {@link android.preference.ListPreference} a cada vez que o usuário alterar a preferência
+para descrever a configuração atual.</p>
+
+<p>Para um gerenciamento adequado do ciclo de vida na atividade, recomendamos registrar e remover o registro
+de {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener} durante os retornos de chamada de {@link
+android.app.Activity#onResume} e {@link android.app.Activity#onPause} respectivamente:</p>
+
+<pre>
+&#64;Override
+protected void onResume() {
+    super.onResume();
+    getPreferenceScreen().getSharedPreferences()
+            .registerOnSharedPreferenceChangeListener(this);
+}
+
+&#64;Override
+protected void onPause() {
+    super.onPause();
+    getPreferenceScreen().getSharedPreferences()
+            .unregisterOnSharedPreferenceChangeListener(this);
+}
+</pre>
+
+<p class="caution"><strong>Atenção:</strong> ao chamar {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}, o gerenciador de preferências
+não armazena atualmente uma referência à escuta. É preciso armazenar uma referência
+forte à escuta, senão ela será suscetível à coleta de lixo. Recomendamos
+manter uma referência à escuta nos dados de instância de um objeto
+que existirá enquanto a escuta for necessária.</p>
+
+<p>Por exemplo: no código a seguir, o autor da chamada não mantém nenhuma
+referência à escuta. Como resultado, a escuta estará sujeita à coleta de lixo
+e falhará futuramente em algum momento indeterminado:</p>
+
+<pre>
+prefs.registerOnSharedPreferenceChangeListener(
+  // Bad! The listener is subject to garbage collection!
+  new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+});
+</pre>
+
+<p>Em vez disso, armazene uma referência à escuta nos dados de instância de um objeto
+que existirá enquanto a escuta for necessária:</p>
+
+<pre>
+SharedPreferences.OnSharedPreferenceChangeListener listener =
+    new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+};
+prefs.registerOnSharedPreferenceChangeListener(listener);
+</pre>
+
+<h2 id="NetworkUsage">Gerenciamento de uso de rede</h2>
+
+
+<p>A partir do Android 4.0, o aplicativo Configurações do sistema permite aos usuários ver o quanto
+de dados de rede que os aplicativos usam em primeiro e segundo plano. Portanto, os usuários
+podem desativar os dados em segundo plano de aplicativos individuais. Para evitar que os usuários desativem
+o acesso do aplicativo a dados em segundo plano, deve-se usar a conexão de dados de forma eficiente
+e permitir aos usuários refinar o uso de dados do aplicativo por meio das configurações do aplicativo.<p>
+
+<p>Por exemplo: deve-se permitir ao usuário controlar a frequência de sincronização dos dados do aplicativo para
+uploads/downloads somente quando estiver em Wi-Fi, o aplicativo usar dados em deslocamento etc. Com esses
+controles disponíveis para eles, é bem menos provável que os usuários desativem o acesso do aplicativo a dados
+quando eles se aproximam dos limites que definem nas Configurações do sistema porque, em vez disso, podem controlar
+precisamente a quantidade de dados que o aplicativo usa.</p>
+
+<p>Depois de adicionadas as preferências necessárias em {@link android.preference.PreferenceActivity}
+para controlar os hábitos de dados do aplicativo, deve-se adicionar um filtro de intenções para {@link
+android.content.Intent#ACTION_MANAGE_NETWORK_USAGE} no arquivo de manifesto. Por exemplo:</p>
+
+<pre>
+&lt;activity android:name="SettingsActivity" ... >
+    &lt;intent-filter>
+       &lt;action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
+       &lt;category android:name="android.intent.category.DEFAULT" />
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>Esse filtro de intenções indica ao sistema que se trata da atividade que controla
+o uso de dados do aplicativo. Assim, quando o usuário inspeciona a quantidade de dados que o aplicativo está usando
+no aplicativo Configurações do sistema, um botão <em>Exibir configurações de aplicativo</em> fica disponível e inicia
+{@link android.preference.PreferenceActivity} para que o usuário refine a quantidade de dados que
+o aplicativo usa.</p>
+
+
+
+
+
+
+
+<h2 id="Custom">Composição de uma preferência personalizada</h2>
+
+<p>A estrutura do Android contém uma variedade de subclasses {@link android.preference.Preference} que permitem
+criar uma IU com diferentes tipos de configurações.
+No entanto, pode ser necessário descobrir uma configuração pra a qual não há nenhuma solução embutida,
+como um seletor de números ou seletor de datas. Nesse caso, será preciso criar uma preferência personalizada, estendendo
+a classe {@link android.preference.Preference} ou uma das outras subclasses.</p>
+
+<p>Ao estender a classe {@link android.preference.Preference}, há algumas coisas importantes
+a fazer:</p>
+
+<ul>
+  <li>Especificar a interface do usuário exibida quando o usuário seleciona as configurações.</li>
+  <li>Salvar os valores da configuração conforme apropriado.</li>
+  <li>Inicializar {@link android.preference.Preference} com o valor atual (ou padrão)
+quando ela é exibida.</li>
+  <li>Fornecer o valor padrão quando solicitado pelo sistema.</li>
+  <li>Se {@link android.preference.Preference} fornece sua própria IU (como uma caixa de diálogo, por exemplo), salve
+e restaure o estado para tratar de alterações de ciclo de vida (como quando o usuário gira a tela).</li>
+</ul>
+
+<p>As seções a seguir descrevem como executar cada uma dessas tarefas.</p>
+
+
+
+<h3 id="CustomSelected">Especificação da interface do usuário</h3>
+
+  <p>Se a classe {@link android.preference.Preference} for estendida, será preciso implementar
+{@link android.preference.Preference#onClick()} para definir a ação que ocorre quando
+o usuário a seleciona. No entanto, a maioria das configurações personalizadas estendem {@link android.preference.DialogPreference}
+para exibir uma caixa de diálogo, o que simplifica o procedimento. Quando se estende {@link
+android.preference.DialogPreference}, é preciso chamar {@link
+android.preference.DialogPreference#setDialogLayoutResource setDialogLayoutResourcs()} na classe
+do construtor para especificar o layout da caixa de diálogo.</p>
+
+  <p>Por exemplo, eis o construtor de um {@link
+android.preference.DialogPreference} personalizado que declara o layout e especifica o texto dos botões padrão
+da caixa de diálogo positiva e negativa:</p>
+
+<pre>
+public class NumberPickerPreference extends DialogPreference {
+    public NumberPickerPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        
+        setDialogLayoutResource(R.layout.numberpicker_dialog);
+        setPositiveButtonText(android.R.string.ok);
+        setNegativeButtonText(android.R.string.cancel);
+        
+        setDialogIcon(null);
+    }
+    ...
+}
+</pre>
+
+
+
+<h3 id="CustomSave">Salvamento do valor da configuração</h3>
+
+<p>Para salvar um valor da configuração a qualquer momento, chame um dos métodos {@code persist*()} da classe {@link
+android.preference.Preference}, como {@link
+android.preference.Preference#persistInt persistInt()} se o valor da configuração for um inteiro
+ou {@link android.preference.Preference#persistBoolean persistBoolean()} para salvar um booleano.</p>
+
+<p class="note"><strong>Observação:</strong> cada {@link android.preference.Preference} pode salvar somente
+um tipo de dados, portanto é preciso usar o método {@code persist*()} adequado para o tipo de dados usado pela
+{@link android.preference.Preference} personalizada.</p>
+
+<p>Quando se opta por persistir, a configuração pode depender da classe {@link
+android.preference.Preference} estendida. Se {@link
+android.preference.DialogPreference} for estendida, deve-se persistir o valor somente quando a caixa de diálogo
+fecha devido a um resultado positivo (o usuário seleciona o botão "OK").</p>
+
+<p>Quando uma {@link android.preference.DialogPreference} fecha, o sistema chama o método {@link
+android.preference.DialogPreference#onDialogClosed onDialogClosed()}. O método contém um argumento
+booleano que especifica se o resultado do usuário é "positivo" &mdash; se o valor é
+<code>true</code> e, em seguida, o usuário selecionou o botão positivo e você deve salvar o novo valor. Por
+exemplo:</p>
+
+<pre>
+&#64;Override
+protected void onDialogClosed(boolean positiveResult) {
+    // When the user selects "OK", persist the new value
+    if (positiveResult) {
+        persistInt(mNewValue);
+    }
+}
+</pre>
+
+<p>Nesse exemplo, <code>mNewValue</code> é um membro da classe que retém o valor atual
+da configuração. A chamada de {@link android.preference.Preference#persistInt persistInt()} salva o valor
+no arquivo {@link android.content.SharedPreferences} (usando automaticamente a chave
+especificada no arquivo XML dessa {@link android.preference.Preference}).</p>
+
+
+<h3 id="CustomInitialize">Inicialização do valor atual</h3>
+
+<p>Quando o sistema adiciona o {@link android.preference.Preference} à tela, ele chama
+{@link android.preference.Preference#onSetInitialValue onSetInitialValue()} para notificar
+se a configuração tem um valor persistido. Se não houver valor persistido, essa chamada fornece
+o valor padrão.</p>
+
+<p>O método {@link android.preference.Preference#onSetInitialValue onSetInitialValue()} passa
+um booleano, <code>restorePersistedValue</code>, para indicar se um valor já foi persistido
+para a configuração. Se for <code>true</code>, deve-se recuperar o valor persistindo chamando-se
+ um dos métodos {@code getPersisted*()} da classe {@link
+android.preference.Preference}, como {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} para um valor inteiro. Geralmente
+se recupera o valor persistido para atualizar adequadamente a IU de forma a refletir
+o valor salvo anteriormente.</p>
+
+<p>Se <code>restorePersistedValue</code> for <code>false</code>, deve-se
+usar o valor padrão passado no segundo argumento.</p>
+
+<pre>
+&#64;Override
+protected void onSetInitialValue(boolean restorePersistedValue, Object defaultValue) {
+    if (restorePersistedValue) {
+        // Restore existing state
+        mCurrentValue = this.getPersistedInt(DEFAULT_VALUE);
+    } else {
+        // Set default state from the XML attribute
+        mCurrentValue = (Integer) defaultValue;
+        persistInt(mCurrentValue);
+    }
+}
+</pre>
+
+<p>Cada método {@code getPersisted*()} pega um argumento que especifica o valor
+padrão a usar caso não haja nenhum valor persistido ou se a chave não existir. No
+exemplo acima, uma constante local é usada para especificar o valor padrão se {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} não puder retornar um valor persistido.</p>
+
+<p class="caution"><strong>Atenção:</strong> <strong>não</strong> é possível usar
+<code>defaultValue</code> como valor padrão no método {@code getPersisted*()} porque
+seu valor é sempre nulo quando <code>restorePersistedValue</code> é <code>true</code>.</p>
+
+
+<h3 id="CustomDefault">Fornecimento de um valor padrão</h3>
+
+<p>Se a instância da classe {@link android.preference.Preference} especificar um valor padrão
+(com o atributo {@code android:defaultValue}),
+o sistema chama {@link android.preference.Preference#onGetDefaultValue
+onGetDefaultValue()} quando instancia o objeto para recuperar o valor. É preciso
+implementar esse método para que o sistema salve o valor padrão em {@link
+android.content.SharedPreferences}. Por exemplo:</p>
+
+<pre>
+&#64;Override
+protected Object onGetDefaultValue(TypedArray a, int index) {
+    return a.getInteger(index, DEFAULT_VALUE);
+}
+</pre>
+
+<p>Os argumentos do método oferecem todo o necessário: a matriz de atributos e a posição
+do índice do {@code android:defaultValue}, que é preciso recuperar. É preciso implementar esse método
+para extrair o valor padrão do atributo porque deve-se especificar um valor padrão
+local para o atributo caso o valor seja indefinido.</p>
+
+
+
+<h3 id="CustomSaveState">Salvamento e restauração do estado da preferência</h3>
+
+<p>Como um {@link android.view.View} em um layout, a subclasse {@link android.preference.Preference}
+é responsável por salvar e restaurar seu estado caso a atividade ou fragmento seja
+reiniciado (como ocorre quando o usuário gira a tela). Para salvar e restaurar
+adequadamente o estado da classe {@link android.preference.Preference}, é preciso implementar
+os métodos de retorno de chamada do ciclo de vida {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} e {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()}.</p>
+
+<p>O estado de {@link android.preference.Preference} é definido por um objeto que implementa
+a interface {@link android.os.Parcelable}. A estrutura do Android fornece esse objeto
+como um ponto inicial para definir o objeto de estado: a classe {@link
+android.preference.Preference.BaseSavedState}.</p>
+
+<p>Para definir como a classe {@link android.preference.Preference} salva seu estado, deve-se estender
+a classe {@link android.preference.Preference.BaseSavedState}. É preciso substituir
+alguns métodos e definir o objeto {@link android.preference.Preference.BaseSavedState#CREATOR}.
+</p>
+
+<p>Na maioria dos aplicativos, é possível copiar a implementação a seguir e simplesmente alterar as linhas
+que tratam o {@code value} se a subclasse {@link android.preference.Preference} salvar um tipo
+de dados que não seja um inteiro.</p>
+
+<pre>
+private static class SavedState extends BaseSavedState {
+    // Member that holds the setting's value
+    // Change this data type to match the type saved by your Preference
+    int value;
+
+    public SavedState(Parcelable superState) {
+        super(superState);
+    }
+
+    public SavedState(Parcel source) {
+        super(source);
+        // Get the current preference's value
+        value = source.readInt();  // Change this to read the appropriate data type
+    }
+
+    &#64;Override
+    public void writeToParcel(Parcel dest, int flags) {
+        super.writeToParcel(dest, flags);
+        // Write the preference's value
+        dest.writeInt(value);  // Change this to write the appropriate data type
+    }
+
+    // Standard creator object using an instance of this class
+    public static final Parcelable.Creator&lt;SavedState> CREATOR =
+            new Parcelable.Creator&lt;SavedState>() {
+
+        public SavedState createFromParcel(Parcel in) {
+            return new SavedState(in);
+        }
+
+        public SavedState[] newArray(int size) {
+            return new SavedState[size];
+        }
+    };
+}
+</pre>
+
+<p>Com a implementação acima de {@link android.preference.Preference.BaseSavedState} adicionada
+ao aplicativo (geralmente como uma subclasse da subclasse {@link android.preference.Preference}),
+é preciso implementar os métodos {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} e {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()}
+da subclasse {@link android.preference.Preference}.</p>
+
+<p>Por exemplo:</p>
+
+<pre>
+&#64;Override
+protected Parcelable onSaveInstanceState() {
+    final Parcelable superState = super.onSaveInstanceState();
+    // Check whether this Preference is persistent (continually saved)
+    if (isPersistent()) {
+        // No need to save instance state since it's persistent,
+        // use superclass state
+        return superState;
+    }
+
+    // Create instance of custom BaseSavedState
+    final SavedState myState = new SavedState(superState);
+    // Set the state's value with the class member that holds current
+    // setting value
+    myState.value = mNewValue;
+    return myState;
+}
+
+&#64;Override
+protected void onRestoreInstanceState(Parcelable state) {
+    // Check whether we saved the state in onSaveInstanceState
+    if (state == null || !state.getClass().equals(SavedState.class)) {
+        // Didn't save the state, so call superclass
+        super.onRestoreInstanceState(state);
+        return;
+    }
+
+    // Cast state to custom BaseSavedState and pass to superclass
+    SavedState myState = (SavedState) state;
+    super.onRestoreInstanceState(myState.getSuperState());
+    
+    // Set this Preference's widget to reflect the restored state
+    mNumberPicker.setValue(myState.value);
+}
+</pre>
+
diff --git a/docs/html-intl/intl/pt-br/guide/topics/ui/ui-events.jd b/docs/html-intl/intl/pt-br/guide/topics/ui/ui-events.jd
new file mode 100644
index 0000000..e0ace1d
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/guide/topics/ui/ui-events.jd
@@ -0,0 +1,291 @@
+page.title=Eventos de entrada
+parent.title=Interface do usuário
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Neste documento</h2>
+  <ol>
+    <li><a href="#EventListeners">Escutas de evento</a></li>
+    <li><a href="#EventHandlers">Manipuladores de evento</a></li>
+    <li><a href="#TouchMode">Modo de toque</a></li>
+    <li><a href="#HandlingFocus">Tratamento de foco</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>No Android, há mais de uma maneira de interceptar os eventos da interação de um usuário com o aplicativo.
+Ao considerar os eventos dentro da interface do usuário, a abordagem é capturar os eventos
+de um objeto de View específico com o qual o usuário interage. A classe View fornece os meios para fazer isto.</p>
+
+<p>Dentro das várias classes View que você usará para compor o layout, é possível notar vários métodos
+públicos de retorno de chamada que parecem úteis para eventos de IU. Esses métodos são chamados pela estrutura do Android quando
+a ação respectiva ocorre neste objeto. Por exemplo, quando uma View (como um botão) é tocada,
+o método <code>onTouchEvent()</code> é chamado neste objeto. No entanto, para interceptar isto, você deve estender
+a classe e substituir o método. No entanto, estender todos os objetos de View
+para lidar com tal evento não seria algo prático. É por isso que a classe View também contém
+uma coleção de interfaces aninhadas com retornos de chamada que podem ser definidas com muito mais facilidade. Essas interfaces,
+chamadas de <a href="#EventListeners">escutas de evento</a>, são a sua passagem para capturar a interação do usuário com a IU.</p>
+
+<p>Geralmente, as escutas de evento são usadas para escutar a interação do usuário.
+No entanto, há casos em que você pode querer estender uma classe View para criar um componente personalizado. 
+Talvez você queira estender a classe {@link android.widget.Button}
+para deixar algo mais extravagante. Neste caso, você poderá definir os comportamentos de evento padrão
+para a classe usando <a href="#EventHandlers">manipuladores de evento</a>.</p>
+
+
+<h2 id="EventListeners">Escutas de evento</h2>
+
+<p>Uma escuta de evento é uma interface na classe {@link android.view.View} que contém
+um único método de retorno de chamada. Esses métodos serão chamados pela estrutura do Android, quando a View para a qual a escuta
+estiver registrada for ativada pela interação do usuário com o item na IU.</p>
+
+<p>Inclusos nas interfaces da escuta de evento estão os seguintes métodos de retorno de chamada:</p>
+
+<dl>
+  <dt><code>onClick()</code></dt>
+    <dd>De {@link android.view.View.OnClickListener}. 
+    Isto é chamado quando o usuário toca no item
+    (no modo de toque), ou atribui foco ao item com as teclas de navegação ou cursor de bola
+    e pressiona a tecla "enter" adequada ou pressiona o cursor de bola.</dd>
+  <dt><code>onLongClick()</code></dt>
+    <dd>De {@link android.view.View.OnLongClickListener}. 
+    Isto é chamado quando o usuário toca e mantém o item pressionado (no modo de toque),
+ ou atribui foco ao item com as teclas de navegação ou cursor de bola
+    e mantém pressionada a tecla "enter" adequada ou o cursor de bola (por um segundo).</dd>
+  <dt><code>onFocusChange()</code></dt>
+    <dd>De {@link android.view.View.OnFocusChangeListener}. 
+    Isto é chamado quando o usuário navega no ou do item, usando as teclas de navegação ou cursor de bola.</dd>
+  <dt><code>onKey()</code></dt>
+    <dd>De {@link android.view.View.OnKeyListener}. 
+    Isto é chamado quando o usuário está com foco no item ou solta uma tecla de hardware no dispositivo.</dd>
+  <dt><code>onTouch()</code></dt>
+    <dd>De {@link android.view.View.OnTouchListener}. 
+    Isto é chamado quando o usuário realiza uma ação qualificada como um toque de evento, incluindo o pressionamento, a liberação,
+    ou qualquer outro gesto de movimento na tela (dentro dos limites do item).</dd>
+  <dt><code>onCreateContextMenu()</code></dt>
+    <dd>De {@link android.view.View.OnCreateContextMenuListener}. 
+    Isto é chamado quando um menu de contexto está sendo construído (como resultado de um "clique longo"). Consulte a discussão
+    sobre menus de contexto no guia do desenvolvedor <a href="{@docRoot}guide/topics/ui/menus.html#context-menu">Menus</a>
+.</dd>
+</dl>
+
+<p>Esses métodos são os únicos habitantes de suas respectivas interfaces. Para definir um desses métodos
+e lidar com seus eventos, implemente a interface aninhada na atividade ou defina-a como uma classe anônima.
+Em seguida, passe uma instância da implementação
+para o respectivo método <code>View.set...Listener()</code>. (Ex.:, chame 
+<code>{@link android.view.View#setOnClickListener(View.OnClickListener) setOnClickListener()}</code> 
+e passe-o à implementação de {@link android.view.View.OnClickListener OnClickListener}.)</p>
+
+<p>O exemplo abaixo mostra como registrar uma escuta de clique para um botão. </p>
+
+<pre>
+// Create an anonymous implementation of OnClickListener
+private OnClickListener mCorkyListener = new OnClickListener() {
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+};
+
+protected void onCreate(Bundle savedValues) {
+    ...
+    // Capture our button from layout
+    Button button = (Button)findViewById(R.id.corky);
+    // Register the onClick listener with the implementation above
+    button.setOnClickListener(mCorkyListener);
+    ...
+}
+</pre>
+
+<p>Você também pode achar mais conveniente implementar OnClickListener como parte da atividade.
+Isto evitará carga adicional na classe e a alocação do objeto. Por exemplo:</p>
+<pre>
+public class ExampleActivity extends Activity implements OnClickListener {
+    protected void onCreate(Bundle savedValues) {
+        ...
+        Button button = (Button)findViewById(R.id.corky);
+        button.setOnClickListener(this);
+    }
+
+    // Implement the OnClickListener callback
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+    ...
+}
+</pre>
+
+<p>Observe que o retorno de chamada <code>onClick()</code> no exemplo acima
+não tem valor de retorno, mas outros métodos de escuta de evento podem retornar um booleano. O motivo
+depende do evento. Para os poucos que retornam, apresenta-se a razão:</p>
+<ul>
+  <li><code>{@link android.view.View.OnLongClickListener#onLongClick(View) onLongClick()}</code> - 
+    Isto retorna um booleano para indicar se você consumiu o evento e se ele deve ser levado adiante. 
+    Ou seja, ele retorna <em>verdadeiro</em> para indicar que você lidou com o evento e não deve seguir adiante; 
+    ou retorna <em>falso</em> caso você não tenha lidado com ele e/ou o evento deva continuar para qualquer
+    outra escuta de clique.</li>
+  <li><code>{@link android.view.View.OnKeyListener#onKey(View,int,KeyEvent) onKey()}</code> - 
+    Isto retorna um booleano para indicar se você consumiu o evento e se ele deve ser levado adiante.
+        Ou seja, ele retorna <em>verdadeiro</em> para indicar que você lidou com o evento e não deve seguir adiante; 
+    ou retorna <em>falso</em> caso você não tenha lidado com ele e/ou o evento deva continuar para qualquer
+    outra escuta de tecla.</li>
+  <li><code>{@link android.view.View.OnTouchListener#onTouch(View,MotionEvent) onTouch()}</code> - 
+    Isto retorna um booleano para indicar se a escuta consome este evento. O importante é que este evento
+    pode possuir várias ações que se seguem mutuamente. Portanto, se retornar <em>falso</em> quando
+    o evento de ação inferior for recebido, você indicará que não consumiu o evento e que não está
+    interessado em ações subsequentes deste evento. Logo, você não será chamado para outras ações
+    dentro do evento, como um gesto de dedo ou um evento de ação para cima eventual.</li>
+</ul>
+
+<p>Lembre-se de que os eventos de tecla de hardware sempre são entregues à vista atualmente em foco. Eles são enviados a partir da parte superior
+da hierarquia de vistas e segue à parte inferior até atingir o destino adequado. Se a vista (ou um filho da vista)
+estiver em foco, é possível ver o percurso do evento pelo método <code>{@link android.view.View#dispatchKeyEvent(KeyEvent)
+dispatchKeyEvent()}</code>. Como uma alternativa para capturar eventos de tecla por meio da vista, também é possível
+receber todos os eventos dentro da Atividade com <code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>
+e <code>{@link android.app.Activity#onKeyUp(int,KeyEvent) onKeyUp()}</code>.</p>
+
+<p>Além disso, ao pensar sobre a entrada de texto para o aplicativo, lembre-se de que vários dispositivos possuem apenas
+métodos de entrada de software. Tais métodos não precisam ser baseados em teclas; alguns podem usar entrada de texto por voz, por escrita e outros. Mesmo se um método de entrada
+apresentar uma interface parecida com teclado, geralmente ele <strong>não</strong> ativa
+a família de eventos <code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>. Nunca deve-se compilar
+uma IU que exija pressionamentos de teclas específicas para ser controlada, a não ser que você queira limitar o aplicativo a dispositivos
+com um teclado físico. Em particular, não confie nestes métodos para validar a entrada quando o usuário pressiona a tecla
+de retorno; em vez disso, use ações como {@link android.view.inputmethod.EditorInfo#IME_ACTION_DONE} para sinalizar
+ao método de entrada como o aplicativo espera reagir para que ele possa alterar a IU de forma significativa. Evite suposições
+sobre como um método de entrada de software deve funcionar e confie apenas no fornecimento do texto já formatado para o aplicativo.</p>
+
+<p class="note"><strong>Observação:</strong> o Android chamará manipuladores de evento e, em seguida, manipuladores adequados padrão
+a partir da segunda definição de classe. Logo, retornar <em>verdadeiro</em> destas escutas de evento
+interromperá a propagação do evento para outras escutas de evento e também bloqueará o retorno de chamada
+para o manipulador de evento padrão na vista. Portanto, certifique-se de que quer encerrar o evento ao retornar <em>verdadeiro</em>.</p>
+
+
+<h2 id="EventHandlers">Manipuladores de evento</h2>
+
+<p>Se estiver compilando um componente personalizado a partir de View, então você poderá definir vários métodos de retorno de chamada
+usados como manipuladores de evento padrão.
+No documento sobre <a href="{@docRoot}guide/topics/ui/custom-components.html">Componentes
+personalizados</a>, você aprenderá a ver alguns dos retornos de chamada usados para lidar com eventos,
+incluindo:</p>
+<ul>
+  <li><code>{@link  android.view.View#onKeyDown}</code> - Chamado quando um novo evento de tecla ocorre.</li>
+  <li><code>{@link  android.view.View#onKeyUp}</code> - Chamado quando um evento de tecla para cima ocorre.</li>
+  <li><code>{@link  android.view.View#onTrackballEvent}</code> - Chamado quando um evento de movimento do cursor de bola ocorre.</li>
+  <li><code>{@link  android.view.View#onTouchEvent}</code> - Chamado quando um evento de movimento de toque ocorre.</li>
+  <li><code>{@link  android.view.View#onFocusChanged}</code> - Chamado quando a vista ganha ou perde foco.</li>
+</ul>
+<p>Há alguns outros métodos que você deve ter ciência que não fazem parte da classe View,
+mas podem ter impacto direto na maneira de lidar com os eventos. Portanto, ao gerenciar eventos mais complexos
+dentro de um layout, considere esses outros métodos:</p>
+<ul>
+  <li><code>{@link  android.app.Activity#dispatchTouchEvent(MotionEvent)
+    Activity.dispatchTouchEvent(MotionEvent)}</code> - Isto permite que {@link 
+    android.app.Activity} intercepte todos os evento de toque antes de serem enviados à janela.</li>
+  <li><code>{@link  android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)
+    ViewGroup.onInterceptTouchEvent(MotionEvent)}</code> - Isto permite que {@link
+    android.view.ViewGroup} assista aos eventos à medida que são enviados para as vistas filho.</li>
+  <li><code>{@link  android.view.ViewParent#requestDisallowInterceptTouchEvent(boolean)
+    ViewParent.requestDisallowInterceptTouchEvent(boolean)}</code> - Chame isto
+    sobre uma Vista pai para indicar que ela não deve interceptar eventos de toque com <code>{@link 
+    android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)}</code>.</li>
+</ul>
+
+<h2 id="TouchMode">Modo de toque</h2>
+<p>
+Quando um usuário está navegando em uma interface do usuário com teclas direcionais ou cursor de bola,
+é necessário fornecer foco para itens de ação (como botões) para que o usuário possa
+ver o que aceitará entrada.  Se o dispositivo tiver capacidades de toque, no entanto, e o usuário
+começar a interagir com a interface por meio de toque, então não é mais necessário
+destacar itens ou fornecer foco para uma vista específica.  Contudo, há um modo
+de interação chamado "modo de toque". 
+</p>
+<p>
+Para dispositivos com capacidades de toque, quando o usuário toca na tela, o dispositivo
+entra no modo de toque.  A partir deste ponto, somente vistas que tiverem
+{@link android.view.View#isFocusableInTouchMode} como verdadeiro poderão ter foco, como widgets de edição de texto.
+Outras vistas tocáveis, como botões, não receberão foco ao serem tocadas. Em vez disso,
+elas simplesmente dispararão escutas de clique quando forem pressionadas.
+</p>
+<p>
+Sempre que um usuário pressionar teclas direcionais ou rolar com o cursor de bola, o dispositivo
+sairá do modo de toque e encontrará uma vista para atribuir foco. Agora, o usuário pode retomar a interação
+com a interface do usuário sem tocar na tela.
+</p>
+<p>
+O estado de modo de toque é mantido em todo o sistema (todas as janelas e atividades). 
+Para consultar o estado atual, é possível chamar
+{@link android.view.View#isInTouchMode} para ver se o dispositivo está no modo de toque no momento.
+</p>
+
+
+<h2 id="HandlingFocus">Tratamento de foco</h2>
+
+<p>A estrutura lidará com a rotina de movimento de foco em resposta à entrada do usuário.
+Isto inclui a mudança de foco à medida que as vistas são removidas ou ocultadas, ou à medida que novas
+vistas se tornem disponíveis. As vistas indicam a prontidão para receber foco
+por meio do método <code>{@link android.view.View#isFocusable()}</code>. Para determinar se uma vista pode receber
+foco, chame <code>{@link android.view.View#setFocusable(boolean) setFocusable()}</code>.  Quando no modo de toque,
+é possível consultar se uma vista permite foco com <code>{@link android.view.View#isFocusableInTouchMode()}</code>.
+É possível alterar isto com <code>{@link android.view.View#setFocusableInTouchMode(boolean) setFocusableInTouchMode()}</code>.
+</p>
+
+<p>O movimento de foco é baseado em um algoritmo que encontra um semelhante mais próximo
+em uma dada direção. Em casos raros, o algoritmo padrão pode não corresponder
+ao comportamento pretendido do desenvolvedor. Nessas situações, é possível
+fornecer substituições explícitas com os seguintes atributos XML no arquivo do layout:
+<var>nextFocusDown</var>, <var>nextFocusLeft</var>, <var>nextFocusRight</var>e
+<var>nextFocusUp</var>. Adicione um desses atributos à vista <em>a partir</em>
+do foco que ela está abandonando. Defina o valor do atributo para ser o ID da vista
+<em>para</em> o foco que deve ser fornecido. Por exemplo:</p>
+<pre>
+&lt;LinearLayout
+    android:orientation="vertical"
+    ... >
+  &lt;Button android:id="@+id/top"
+          android:nextFocusUp="@+id/bottom"
+          ... />
+  &lt;Button android:id="@+id/bottom"
+          android:nextFocusDown="@+id/top"
+          ... />
+&lt;/LinearLayout>
+</pre>
+
+<p>Geralmente, neste layout vertical, navegar para cima a partir do primeiro botão
+não resultaria em nada, nem navegar para baixo a partir do segundo botão. Agora que o botão superior
+definiu o botão do fundo como <var>nextFocusUp</var> (e vice-versa), o foco da navegação
+alternará de "cima para baixo" e "baixo para cima".</p>
+
+<p>Caso queira declarar uma vista como alvo de foco na IU (quando tradicionalmente não é),
+adicione o atributo XML <code>android:focusable</code> à vista, na declaração do layout.
+Defina o valor <var>como verdadeiro</var>. Também é possível declarar uma vista
+como alvo de foco no Modo de Toque com <code>android:focusableInTouchMode</code>.</p>
+<p>Para solicitar foco a uma determinada Vista, chame <code>{@link android.view.View#requestFocus()}</code>.</p>
+<p>Para ouvir eventos de foco (receber notificações quando uma vista receber ou perder foco), use
+<code>{@link android.view.View.OnFocusChangeListener#onFocusChange(View,boolean) onFocusChange()}</code>,
+como discutido na seção <a href="#EventListeners">Escutas de evento</a> acima.</p>
+
+
+
+<!--
+<h2 is="EventCycle">Event Cycle</h2>
+   <p>The basic cycle of a View is as follows:</p>
+   <ol>
+    <li>An event comes in and is dispatched to the appropriate View. The View
+    handles the event and notifies any listeners.</li>
+    <li>If, in the course of processing the event, the View's bounds may need
+    to be changed, the View will call {@link android.view.View#requestLayout()}.</li>
+    <li>Similarly, if in the course of processing the event the View's appearance
+    may need to be changed, the View will call {@link android.view.View#invalidate()}.</li>
+    <li>If either {@link android.view.View#requestLayout()} or {@link android.view.View#invalidate()} were called,
+    the framework will take care of measuring, laying out, and drawing the tree
+    as appropriate.</li>
+   </ol>
+   
+   <p class="note"><strong>Note:</strong> The entire View tree is single threaded. You must always be on
+   the UI thread when calling any method on any View.
+   If you are doing work on other threads and want to update the state of a View
+   from that thread, you should use a {@link android.os.Handler}.
+   </p>
+-->
diff --git a/docs/html-intl/intl/pt-br/index.jd b/docs/html-intl/intl/pt-br/index.jd
index 4d0a39e..f5e1569 100644
--- a/docs/html-intl/intl/pt-br/index.jd
+++ b/docs/html-intl/intl/pt-br/index.jd
@@ -5,41 +5,81 @@
 
 @jd:body
 
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
 
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="/preview/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
   <div class="wrap" style="max-width:1100px;margin-top:0">
-    <div class="cols dac-hero-content">
-      <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
-      </div>
-      <div class="col-8of16 col-pull-7of16">
-        <div class="dac-hero-tag"></div>
-
-        <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
-        <p class="dac-hero-description">Prepare-se para a próxima versão do
-        Android. Teste os aplicativos no Nexus 5, 6, 9 e Player.  </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/index.html">
+    <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+      <a href="{@docRoot}preview/index.html">
+        <h1 class="dac-hero-title">Android N Developer Preview</h1>
+        <p class="dac-hero-description">
+          Get ready for the next version of Android!
+          <strong>Test your apps</strong> on Nexus and other devices. Support new system
+          behaviors to <strong>save power and memory</strong>.
+          Extend your apps with <strong>multi-window UI</strong>,
+          <strong>direct reply notifications</strong> and more.
+        </p>
+        <a class="dac-hero-cta" href="/preview/index.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Comece!</a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
+          Learn more
+        </a><!--<br>
+        <a class="dac-hero-cta" href="/preview/support.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-      </div>
+          Update to Developer Preview (final SDK)
+        </a><br>-->
+      </a>
+    </div>
+    <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+      <a href="{@docRoot}preview/index.html">
+        <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+             srcset="/images/home/n-preview-hero.png 1x,
+             /images/home/n-preview-hero_2x.png 2x">
+        </a>
     </div>
   </div>
-</a>
-</article></section>
+</section>
 
-<div class="actions-bar dac-expand dac-invert">
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
   <div class="wrap dac-offset-parent">
     <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
       <i class="dac-sprite dac-arrow-down-gray"></i>
     </a>
+    <ul class="dac-actions">
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}sdk/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Get the SDK
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}samples/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Browse sample code
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}distribute/stories/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Watch stories
+        </a>
+      </li>
+    </ul>
+  </div><!-- end .wrap -->
+</div><!-- end .dac-actions -->
+
+<div id="useOldTemplates" style="display:none" class="actions-bar dac-expand dac-invert">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button="" href="#build-apps">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
     <div class="actions">
       <div><a href="{@docRoot}sdk/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
@@ -49,17 +89,15 @@
         <span class="dac-sprite dac-auto-chevron-large"></span>
         Browse Samples
       </a></div>
-      <div><a href="//www.youtube.com/user/androiddevelopers">
+      <div><a href="{@docRoot}distribute/stories/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
-        Watch Videos
+        Watch Stories
       </a></div>
     </div><!-- end .actions -->
   </div><!-- end .wrap -->
-</div><!-- end .actions-bar -->
+</div>
 
-
-
-<section class="dac-section dac-section-light" id="build-apps"><div class="wrap">
+<section class="dac-section dac-light" id="build-apps"><div class="wrap">
   <h1 class="dac-section-title">Build Beautiful Apps</h1>
   <div class="dac-section-subtitle">
     Resources to get you started with designing and developing for Android.
diff --git a/docs/html-intl/intl/pt-br/preview/api-overview.jd b/docs/html-intl/intl/pt-br/preview/api-overview.jd
deleted file mode 100644
index 139fb33..0000000
--- a/docs/html-intl/intl/pt-br/preview/api-overview.jd
+++ /dev/null
@@ -1,521 +0,0 @@
-page.title=Visão geral da API
-page.keywords=preview,sdk,compatibility
-page.tags=previewresources, androidm
-sdk.platform.apiLevel=22-mnc
-page.image=images/cards/card-api-overview_16-9_2x.png
-@jd:body
-
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>Neste documento
- <a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
-        <span class="more">mostrar mais</span>
-        <span class="less" style="display:none">mostrar menos</span></a></h2>
-
-<ol id="toc44" class="hide-nested">
-  <li><a href="#app-linking">Vínculo de aplicativo</a></li>
-  <li><a href="#backup">Backup automático para aplicativos</a></li>
-  <li><a href="#authentication">Autenticação</a>
-    <ol>
-      <li><a href="#fingerprint-authentication">Autenticação com impressão digital</a></li>
-      <li><a href="#confirm-credential">Confirmação de credencial</a></li>
-    </ol>
-  </li>
-  <li><a href="#direct-share">Compartilhamento direto</a></li>
-  <li><a href="#voice-interactions">Interações por voz</a></li>
-  <li><a href="#assist">Auxiliar API</a></li>
-  <li><a href="#notifications">Notificações</a></li>
-  <li><a href="#bluetooth-stylus">Suporte para Bluetooth Stylus</a></li>
-  <li><a href="#ble-scanning">Digitalização de baixa energia por Bluetooth aprimorada</a></li>
-  <li><a href="#hotspot">Suporte a Hotspot 2.0 Release 1</a></li>
-  <li><a href="#4K-display">Modo de exibição 4K</a></li>
-  <li><a href="#behavior-themeable-colorstatelists">ColorStateLists com tema</a></li>
-  <li><a href="#audio">Recursos de áudio</a></li>
-  <li><a href="#video">Recursos de vídeo</a></li>
-  <li><a href="#camera">Recursos de câmera</a>
-    <ol>
-      <li><a href="#flashlight">API da lanterna</a></li>
-      <li><a href="#reprocessing">Reprocessamento da câmera</a></li>
-    </ol>
-  </li>
-  <li><a href="#afw">Recursos do Android for Work</a></li>
-</ol>
-
-<h2>Diferenças de API</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API de nível 22 para M Preview &raquo;</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>O M Developer Preview fornece uma visualização avançada no próximo lançamento
- para a plataforma Android, oferecendo novos recursos para desenvolvedores e usuários
-de aplicativos. Este documento fornece uma introdução às APIs mais notáveis.</p>
-
-<p>O M Developer Preview foi feito para <strong>novos desenvolvedores
-adotantes</strong> e <strong>testadores</strong>. Caso tenha interesse
- em influenciar a direção da estrutura do Android,
-<a href="{@docRoot}preview/setup-sdk.html">experimente o M Developer
- Preview</a> e envie-nos feedback!</p>
-
-<p class="caution"><strong>Cuidado:</strong> não publique aplicativos
-que usam o M Developer Preview na Google Play Store.</p>
-
-<p class="note"><strong>Observação:</strong> este documento frequentemente
-menciona classes e métodos que ainda não possuem material de referência disponível em <a href="{@docRoot}">developer.android.com</a>. Esses elementos de API
-são formatados em {@code code style} neste documento (sem hyperlinks). Para a
-documentação de API preliminar destes elementos, faça o download da <a href="{@docRoot}preview/download.html#docs">referência da prévia</a>.</p>
-
-<h3>Alterações importantes de comportamento</h3>
-
-<p>Caso tenha publicado anteriormente um aplicativo para Android, saiba que ele pode ser afetado
-pelas alterações na plataforma.</p>
-
-<p>Consulte <a href="behavior-changes.html">alterações de comportamento</a> para obter mais informações.</p>
-
-<h2 id="app-linking">Vínculo de aplicativo</h2>
-<p>Esta prévia aprimora o sistema de intenções do Android fornecendo vínculo de aplicativo mais poderoso.
-Este recurso permite que você associe um aplicativo com um domínio de web próprio. Com base nesta
-associação, a plataforma pode determinar o aplicativo padrão a ser usado para lidar com um link da web
-em particular e ignorar a solicitação aos usuários para selecionar um aplicativo. Para aprender como implementar este aplicativo, consulte 
-<a href="{@docRoot}preview/features/app-linking.html">vínculo de aplicativo</a>.
-
-<h2 id="backup">Backup automático para aplicativos</h2>
-<p>O sistema agora realiza backup automático completo de dados e restauração para aplicativos. Este comportamento
-é ativado por padrão para aplicativos com M Preview; não é necessário mais código adicional. Se
-os usuários excluírem as contas da Google, os dados de backup também serão excluídos. Para aprender como este recurso
-funciona e como configurar o backup no sistema do arquivo, consulte
-<a href="{@docRoot}preview/backup/index.html">backup automático para aplicativos</a>.</p>
-
-<h2 id="authentication">Autenticação</h2>
-<p>Esta prévia oferece novas APIs para permitir que você autentique os usuários usando digitalizadores de impressão digital em dispositivos
-suportados e verifique o quão recentemente os usuários autenticaram pela última vez usando o
-mecanismo de desbloqueio por dispositivo (como senha de tela de bloqueio). Use essas APIs em conjunto com
-o <a href="{@docRoot}training/articles/keystore.html">sistema Android Keystore</a>.</p>
-
-<h3 id="fingerprint-authentication">Autenticação com impressão digital</h3>
-
-<p>Para autenticar os usuários por meio de digitalização de impressão digital, adquira uma instância da nova classe 
-{@code android.hardware.fingerprint.FingerprintManager} e chame o método 
-{@code FingerprintManager.authenticate()}. O aplicativo deve ser executado em um dispositivo
-compatível com sensor de impressão digital. Deve-se implementar a interface do usuário para o fluxo de autenticação
-de impressão digital no aplicativo e usar o ícone de impressão digital padrão do Android na IU.
-O ícone de impressão digital do Android ({@code c_fp_40px.png}) é incluído no 
-<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">aplicativo de exemplo</a>. Caso esteja desenvolvendo vários aplicativos que usam
-autenticação de impressão digital, observe que cada aplicativo deve autenticar a impressão digital do usuário independentemente.
-</p>
-
-<p>Para usar este recurso no aplicativo, adicione primeiro a permissão {@code USE_FINGERPRINT} no
-manifesto.</p>
-
-<pre>
-&lt;uses-permission
-        android:name="android.permission.USE_FINGERPRINT" /&gt;
-</pre>
-
-<img src="{@docRoot}preview/images/fingerprint-screen.png" srcset="{@docRoot}preview/images/fingerprint-screen.png 1x, {@docRoot}preview/images/fingerprint-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-
-<p>Para ver a implementação do aplicativo da autenticação com impressão digital, consulte o
-<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">
- exemplo de caixa de diálogo de impressão digital</a>.</p>
-
-<p>Caso esteja testando este recurso, siga estas etapas:</p>
-<ol>
-<li>Instale o Android SDK Tools Revision 24.3, caso ainda não tenha instalado.</li>
-<li>Registre uma nova impressão digital no emulador acessando 
-<strong>Configurações &gt; Segurança &gt; Impressão digital</strong> e, em seguida, siga as instruções de registro.</li>
-<li>Use um emulador para emular eventos de toque de dedo com o
-comando a seguir. Use o mesmo comando para emular os eventos de toque de impressão digital na tela de
-bloqueio ou no aplicativo.
-<pre class="no-prettyprint">
-adb -e emu finger touch &lt;finger_id&gt;
-</pre>
-<p>No Windows, talvez seja necessário executar {@code telnet 127.0.0.1 <emulator-id>} seguido de
-{@code finger touch <finger_id>}.
-</p>
-</li>
-</ol>
-
-<h3 id="confirm-credential">Confirmação de credencial</h3>
-<p>O aplicativo pode autenticar os usuários com base no quão recentemente o dispositivo foi desbloqueado pela última vez. Este
-recurso libera o usuário de ter que lembrar de senhas específicas de aplicativo extras e evita
-a necessidade de implementar a própria interface do usuário de autenticação. O aplicativo deve usar este recurso
-em conjunto com uma implementação de chave secreta ou pública para a implementação de usuário.</p>
-
-<p>Para definir uma duração de tempo limite em que a mesma chave pode ser usada novamente
-após o usuário autenticar, chame o novo método 
-{@code android.security.keystore.KeyGenParameterSpec.setUserAuthenticationValidityDurationSeconds()}
- ao definir um {@link javax.crypto.KeyGenerator} ou 
-{@link java.security.KeyPairGenerator}. Este recurso funciona para operações criptográficas
-simétricas.</p>
-
-<p>Evite exibir o diálogo de nova autenticação excessivamente — os aplicativos devem tentar
-usar o objeto criptográfico primeiro e, se o tempo limite expirar, usar o método 
-{@link android.app.KeyguardManager#createConfirmDeviceCredentialIntent(java.lang.CharSequence, java.lang.CharSequence) createConfirmDeviceCredentialIntent()}
- para autenticar novamente o usuário dentro do aplicativo.
-</p>
-
-<p>Para ver uma implementação de aplicativo deste recurso, consulte o 
-<a href="https://github.com/googlesamples/android-ConfirmCredential" class="external-link">
-exemplo de confirmação de credencial</a>.</p>
-
-<h2 id="direct-share">Compartilhamento direto</h2>
-
-<img src="{@docRoot}preview/images/direct-share-screen.png" srcset="{@docRoot}preview/images/direct-share-screen.png 1x, {@docRoot}preview/images/direct-share-screen_2x.png 2x" style="float:right; margin:0 0 20px 30px" width="312" height="329" />
-
-<p>Esta prévia fornece as APIs para tornar o compartilhamento intuitivo e rápido para os usuários. É possível
-definir os <em>alvos de compartilhamento direto</em> que iniciam uma atividade específica no aplicativo.
-Esses alvos de compartilhamento direto são expostos aos usuários por meio do menu <em>Compartilhar</em>. Este recurso permite que os usuários
-compartilhem conteúdos aos alvos, como contatos, dentro de outros aplicativos. Por exemplo: o alvo de compartilhamento direto
-pode iniciar uma atividade em outro aplicativo de rede social, o que permite que o usuário compartilhe o conteúdo diretamente
-para um amigo ou comunidade específica neste aplicativo.</p>
-
-<p>Para ativar os alvos de compartilhamento direto, deve-se definir uma classe que estende a classe 
-{@code android.service.} <br>
-{@code chooser.ChooserTargetService}. Declare o 
-{@code ChooserTargetService} no manifesto. Dentro desta declaração, especifique a permissão 
-{@code BIND_CHOOSER_TARGET_SERVICE} e um filtro de intenções na ação 
-{@code SERVICE_INTERFACE}.</p>
-<p>O seguinte exemplo mostra como se deve declarar o {@code ChooserTargetService} no
-manifesto.</p>
-<pre>
-&lt;service android:name=".ChooserTargetService"
-        android:label="&#64;string/service_name"
-        android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE"&gt;
-    &lt;intent-filter&gt;
-        &lt;action android:name="android.service.chooser.ChooserTargetService" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/service&gt;
-</pre>
-
-<p>Para cada atividade que quiser expor ao {@code ChooserTargetService}, adicione um elemento 
-{@code <meta-data>} com o nome
-{@code "android.service.chooser.chooser_target_service"} no manifesto do aplicativo.
-</p>
-
-<pre>
-&lt;activity android:name=".MyShareActivity”
-        android:label="&#64;string/share_activity_label"&gt;
-    &lt;intent-filter>
-        &lt;action android:name="android.intent.action.SEND" /&gt;
-    &lt;/intent-filter>
-&lt;meta-data
-        android:name="android.service.chooser.chooser_target_service"
-        android:value=".ChooserTargetService" /&gt;
-&lt;/activity>
-</pre>
-
-<h2 id="voice-interactions">Interações por voz</h2>
-<p>
-Esta prévia fornece uma API de interação por voz que, junto com 
-<a href="https://developers.google.com/voice-actions/" class="external-link">ações de voz</a>
-, permite a criação de experiências por voz nos aplicativos. Chame o método 
-{@code android.app.Activity.isVoiceInteraction()} para determinar se a atividade
-foi iniciada em resposta à ação de voz. Caso tenha sido iniciada, o aplicativo pode usar a classe 
-{@code android.app.VoiceInteractor} para solicitar uma confirmação de voz do usuário,
-selecionar a partir de uma lista de opções e muito mais. Para aprender mais sobre a implementação de ações de voz, consulte 
-<a href="https://developers.google.com/voice-actions/interaction/" class="external-link">o site de desenvolvedor de ações de voz</a>.
-</p>
-
-<h2 id="assist">Auxiliar API</h2>
-<p>
-Esta prévia oferece uma nova maneira de usuários se envolverem com os aplicativos com um assistente. Para usar este
-recurso, o usuário deve possibilitar que o assistente use o contexto atual. Quando ativado,
-o usuário pode invocar um assistente dentro de qualquer aplicativo mantendo o botão <strong>Iniciar</strong> pressionado.</p>
-<p>O aplicativo pode optar por não compartilhar o contexto atual com o assistente configurando o sinalizador 
-{@link android.view.WindowManager.LayoutParams#FLAG_SECURE}. Além do conjunto
-padrão de informações que a plataforma passa ao assistente, o aplicativo pode compartilhar
-informações adicionais usando a nova classe {@code android.app.Activity.AssistContent}.</p>
-
-<p>Para fornecer ao assistente contexto adicional do aplicativo, siga estas etapas:</p>
-
-<ol>
-<li>Implemente a interface {@link android.app.Application.OnProvideAssistDataListener}.</li>
-<li>Registre esta escuta usando 
-{@link android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener) registerOnProvideAssistDataListener()}.</li>
-<li>Para fornecer informações contextuais específicas da atividade, substitua o retorno de chamada 
-{@link android.app.Activity#onProvideAssistData(android.os.Bundle) onProvideAssistData()}
- e, opcionalmente, o novo retorno de chamada {@code Activity.onProvideAssistContent()}.
-</ol>
-
-<h2 id="notifications">Notificações</h2>
-<p>Esta prévia adiciona as seguintes alterações de API às notificações:</p>
-<ul>
-  <li>Novo nível de filtro {@code NotificationListenerService.INTERRUPTION_FILTER_ALARMS} que corresponde
-ao modo "não perturbe" de <em>despertadores apenas</em>.</li>
-  <li>Novo valor da categoria {@code Notification.CATEGORY_REMINDER} que é usado para distinguir
-lembretes de agendamentos do usuário de outros eventos (
-{@link android.app.Notification#CATEGORY_EVENT}) e despertadores (
-{@link android.app.Notification#CATEGORY_ALARM}).</li>
-  <li>Nova classe {@code android.graphics.drawable.Icon} que pode ser anexada às notificações
-por meio dos métodos {@code Notification.Builder.setSmallIcon(Icon)} e 
-{@code Notification.Builder.setLargeIcon(Icon)}.</li>
-  <li>Novo método {@code NotificationManager.getActiveNotifications()} que permite que os aplicativos
-descubram quais das notificações ainda estão ativas. Para ver uma implementação de aplicativo que usa este recurso,
-consulte o <a href="https://github.com/googlesamples/android-ActiveNotifications" class="external-link">exemplo de notificações ativas</a>.</li>
-</ul>
-
-<h2 id="bluetooth-stylus">Suporte para Bluetooth Stylus</h2>
-<p>Esta prévia fornece um suporte aprimorado para a entrada de usuário usando um Bluetooth Stylus. Os usuários podem
-parear e conectar um Bluetooth Stylus compatível com o telefone ou tablet.  Quando conectado, as informações
-de posição da tela tátil são fundidas com as informações de botão e pressão do Stylus
-para fornecer um alcance maior de expressão em comparação à tela tátil sozinha. O aplicativo pode escutar o pressionar
-de botões do Stylus e realizar ações secundárias registrando os novos retornos de chamada 
-{@code View.onStylusButtonPressListener} e {@code GestureDetector.OnStylusButtonPressListener}
- na atividade.</p>
-
-<p>Use as constantes e os métodos {@link android.view.MotionEvent} para detectar as interações
-de botão do Stylus:</p>
-<ul>
-<li>Se o usuário toca no Stylus com um botão na tela do aplicativo, o método 
-{@link android.view.MotionEvent#getToolType(int) getTooltype()} retorna 
-{@link android.view.MotionEvent#TOOL_TYPE_STYLUS}.</li>
-<li>Para aplicativos com M Preview, o método 
-{@link android.view.MotionEvent#getButtonState() getButtonState()}
- retorna {@code MotionEvent.STYLUS_BUTTON_PRIMARY} quando o usuário
-pressiona o botão principal do Stylus. Se o Stylus tiver um segundo botão, o mesmo método retorna 
-{@code MotionEvent.STYLUS_BUTTON_SECONDARY} quando o usuário o pressiona. Se o usuário pressiona
-os dois botões simultaneamente, o método retorna os valores com OR juntos (
-{@code STYLUS_BUTTON_PRIMARY|STYLUS_BUTTON_SECONDARY}).</li>
-<li>
-Para aplicativos com uma versão de plataforma inferior , o método 
-{@link android.view.MotionEvent#getButtonState() getButtonState()} retorna 
-{@link android.view.MotionEvent#BUTTON_SECONDARY} (para o pressionar do botão principal do Stylus), 
-{@link android.view.MotionEvent#BUTTON_TERTIARY} (para o pressionar do botão secundário do Stylus) ou ambos.
-</li>
-</ul>
-
-<h2 id="ble-scanning">Digitalização de baixa energia por Bluetooth aprimorada</h2>
-<p>
-Se o aplicativo realizar digitalizações de baixa energia por Bluetooth, é possível usar o novo método 
-{@code android.bluetooth.le.ScanSettings.Builder.setCallbackType()} para especificar
-que você quer que os retornos de chamada sejam notificados apenas quando um pacote de propaganda correspondente ao conjunto 
-{@link android.bluetooth.le.ScanFilter} for encontrado primeiro e quando
-ele não for visto por um período. Esta abordagem de digitalização é mais eficiente
-do que a fornecida na versão anterior da plataforma.
-</p>
-
-<h2 id="hotspot">Suporte a Hotspot 2.0 Release 1</h2>
-<p>
-Esta prévia adiciona suporte ao Hotspot 2.0 Release 1 nos dispositivos Nexus 6 e Nexus 9. Para fornecer
-as credenciais de Hotspot 2.0 no aplicativo, use os novos métodos da classe 
-{@link android.net.wifi.WifiEnterpriseConfig}, como {@code setPlmn()} e 
-{@code setRealm()}. No objeto {@link android.net.wifi.WifiConfiguration}, é possível definir os campos 
-{@link android.net.wifi.WifiConfiguration#FQDN} e {@code providerFriendlyName}.
-A nova propriedade {@code ScanResult.PasspointNetwork} indica se uma rede detectada representa
-um ponto de acesso Hotspot 2.0.
-</p>
-
-<h2 id="4K-display">Modo de exibição 4K</h2>
-<p>A plataforma agora permite que aplicativos solicitem que a resolução seja aprimorada para renderização 4K
-em hardware compatível. Para consultar a resolução física atual, use as novas APIs
-{@code android.view.Display.Mode}. Se a IU for desenhada em uma resolução lógica
-menor e for redimensionada para uma resolução física maior, saiba que a resolução física que o método 
-{@code Display.Mode.getPhysicalWidth()} retorna pode ser diferente da resolução
-física informada por {@link android.view.Display#getSize(android.graphics.Point) getSize()}.</p>
-
-<p>É possível solicitar que o sistema altere a resolução física no aplicativo à medida que ele é executado configurando
-a propriedade {@code WindowManager.LayoutParams.preferredDisplayModeId} da janela do aplicativo.  Este
-recurso é útil se quiser alternar para a resolução de exibição 4K. Enquanto estiver no modo de exibição 4K,
-a IU continua a ser renderizada na resolução original (como 1080 p) e é escalonada para 4K, mas os objetos 
-{@link android.view.SurfaceView} podem exibir o conteúdo na resolução nativa.</p>
-
-<h2 id="behavior-themeable-colorstatelists">ColorStateLists com tema</h2>
-<p>Os atributos de tema agora são suportados no 
-{@link android.content.res.ColorStateList} para dispositivos que executam o M Preview. Os métodos 
-{@link android.content.res.Resources#getColorStateList(int) getColorStateList()} e 
-{@link android.content.res.Resources#getColor(int) getColor()} ficaram obsoletos. Caso esteja chamando
-essas APIs, chame os novos métodos {@code Context.getColorStateList()} ou 
-{@code Context.getColor()}. Esses métodos também estão disponíveis na biblioteca
-v4 appcompat via {@link android.support.v4.content.ContextCompat}.</p>
-
-<h2 id="audio">Recursos de áudio</h2>
-
-<p>Esta prévia adiciona aprimoramentos ao processamento de áudio no Android, incluindo: </p>
-<ul>
-  <li>Suporte para protocolo <a href="http://en.wikipedia.org/wiki/MIDI" class="external-link">MIDI</a>
-, com as novas APIs {@code android.media.midi}. Use essas APIs para enviar e receber eventos
-de MIDI.</li>
-  <li>Use as novas classes {@code android.media.AudioRecord.Builder} e {@code android.media.AudioTrack.Builder}
- para criar captura de áudio digital e objetos de reprodução, respectivamente,
-e configure a fonte de áudio e as propriedades do coletor para substituir os padrões do sistema.</li>
-  <li>Ganchos de API para associação de dispositivos de entrada e áudio. Isto é particularmente útil se o aplicativo
-permite que os usuários iniciem uma pesquisa de voz a partir de um controle de jogo ou controle remoto para Android
-TV. O sistema invoca o novo retorno de chamada {@code android.app.Activity.onSearchRequested()} quando
-o usuário inicia uma pesquisa. Para determinar se o dispositivo de entrada do usuário tem um microfone integrado, recupere
-o objeto {@link android.view.InputDevice} deste retorno de chamada e, em seguida, chame o novo método 
-{@code InputDevice.hasMic()}.</li>
-  <li>Novas classes {@code android.media.AudioDevicesManager} que permitem que você
-recupere uma lista completa de todas as fontes e dispositivos de áudio do coletor anexados. Também é possível especificar um objeto 
-{@code android.media.OnAudioDeviceConnectionListener} caso queira que o aplicativo seja notificado
-quando um dispositivo de áudio for conectado ou desconectado.</li>
-</ul>
-
-<h2 id="video">Recursos de vídeo</h2>
-<p>Esta prévia adiciona novas capacidades às APIs de processamento de vídeo, incluindo:</p>
-<ul>
-<li>A nova classe {@code android.media.MediaSync} que ajuda os aplicativos a renderizar transmissões
-de vídeo e áudio sincronizadamente. Os buffers de áudio são enviados sem bloqueio e retornados
-por um retorno de chamada. Eles também suportam taxa de reprodução dinâmica.
-</li>
-<li>O novo evento {@code MediaDrm.EVENT_SESSION_RECLAIMED}, que indica que uma sessão aberta pelo aplicativo
-foi recuperada pelo gerenciador de recursos. Se o aplicativo usa sessões de DRM, deve-se
-lidar com este evento e garantir que uma sessão recuperada não seja usada.
-</li>
-<li>O novo código de erro {@code MediaCodec.CodecException.ERROR_RECLAIMED}, que indica que o gerenciador
-de recurso recuperou o recurso de mídia usado pelo codec. Com esta exceção, o codec
-deve ser liberado, como se fosse movido para o estado terminal.
-</li>
-<li>A nova interface {@code MediaCodecInfo.CodecCapabilities.getMaxSupportedInstances()} para obter
-uma dica do número máximo suportado de instâncias de codec concorrentes.
-</li>
-<li>O novo método {@code MediaPlayer.setPlaybackParams()} para definir a taxa de reprodução de mídia
-para reprodução de movimento lento ou rápido. Ele também estica ou acelera a reprodução de áudio automaticamente
-em conjunto com o vídeo.</li>
-</ul>
-
-<h2 id="camera">Recursos de câmera</h2>
-<p>Esta prévia inclui as seguintes novas APIs para acessar a lanterna da câmera
-e para o reprocessamento da câmera de imagens:</p>
-
-<h3 id="flashlight">API da lanterna</h3>
-<p>Se um dispositivo de câmera tem uma unidade de flash, é possível chamar o método {@code CameraManager.setTorchMode()}
-para ligar ou desligar o modo de tocha da unidade de flash sem abrir o dispositivo da câmera. O aplicativo
-não tem propriedade exclusiva da unidade de flash ou do dispositivo de câmera. O modo de tocha é desativado
-e torna-se indisponível sempre que o dispositivo de câmera estiver indisponível ou quando outros
-recursos de câmera que mantêm a tocha ativada ficam indisponíveis. Outros aplicativos também podem chamar {@code setTorchMode()}
-para desativar o modo de tocha. Quando o aplicativo que ativou o modo
-de tocha for fechado, o modo é desativado.</p>
-
-<p>É possível registrar um retorno de chamada para ser notificado sobre o estado da tocha chamando o método
-{@code CameraManager.registerTorchCallback()}. Na primeira vez que o retorno de chamada é registrado,
-ele é imediatamente chamado com o estado do modo de tocha de todos os dispositivos de câmera conhecidos com
-uma unidade de flash. Se o modo de tocha é ativado ou desativado, o método
-{@code CameraManager.TorchCallback.onTorchModeChanged()} é invocado.</p>
-
-<h3 id="reprocessing">API de reprocessamento</h3>
-<p>A API {@link android.hardware.camera2 Camera2} é estendida para suportar YUV e reprocessamento
-de imagem de formato opaco privado. O aplicativo determina se as capacidades de reprocessamento estão disponíveis
-via {@code CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES}. Se um dispositivo suporta o reprocessamento,
-é possível criar uma sessão de captura de câmera de reprocessamento chamando
-{@code CameraDevice.createReprocessableCaptureSession()} e criando solicitações para o reprocessamento
-do buffer de entrada.</p>
-
-<p>Use a classe {@code ImageWriter} para conectar o fluxo de buffer de entrada à entrada de reprocessamento
-da câmera. Para obter um buffer vazio, siga este modelo de programação:</p>
-
-<ol>
-<li>Chame o método {@code ImageWriter.dequeueInputImage()}.</li>
-<li>Preencha os dados no buffer de entrada.</li>
-<li>Envie o buffer à câmera chamando o método {@code ImageWriter.queueInputImage()}.</li>
-</ol>
-
-<p>Caso esteja usando um objeto {@code ImageWriter} junto com uma imagem
-{@code android.graphics.ImageFormat.PRIVATE}, o aplicativo não poderá acessar os dados
-da imagem diretamente. Em vez disso, passe a imagem {@code ImageFormat.PRIVATE} diretamente ao
-{@code ImageWriter} chamando o método {@code ImageWriter.queueInputImage()} sem nenhuma
-cópia de buffer.</p>
-
-<p>A classe {@code ImageReader} agora suporta as transmissões de imagem
-de formato {@code android.graphics.ImageFormat.PRIVATE}. Este suporte permite que o aplicativo mantenha uma fila de imagem circular de imagens de saída
-{@code ImageReader}, selecione uma ou mais imagens e envie-as para
-{@code ImageWriter} para o reprocessamento de câmera.</p>
-
-<h2 id="afw">Recursos do Android for Work</h2>
-<p>Esta prévia inclui as seguintes novas APIs para Android for Work:</p>
-<ul>
-  <li><strong>Controles aprimorados para dispositivos de uso único e pertencentes a empresas:</strong> O dono do dispositivo
-pode controlar as seguintes configurações para aprimorar
-os dispositivos de uso único pertencentes a empresas (COSU):
-  <ul>
-    <li>Desativar ou reativar a proteção de bloqueio com o método
-{@code DevicePolicyManager.setKeyguardEnabledState()}.</li>
-    <li>Desativar ou reativar a barra de status (incluindo configurações rápidas,
-notificações e o gesto de arrastar para cima que inicia o Google Now) com o método 
-{@code DevicePolicyManager.setStatusBarEnabledState()}.</li>
-    <li>Desativar ou reativar inicialização segura com a constante {@link android.os.UserManager}
-{@code DISALLOW_SAFE_BOOT}.</li>
-    <li>Evitar que a tela desligue quando conectada com a constante 
-{@link android.provider.Settings.Global} {@code STAY_ON_WHILE_PLUGGED_IN}.</li>
-  </ul>
-  </li>
-  <li><strong>Instalação e desinstalação silenciosa de aplicativos pelo dono do dispositivo:</strong> O dono do dispositivo pode agora
-instalar e desinstalar aplicativos silenciosamente usando as APIs {@link android.content.pm.PackageInstaller},
-independente do Google Play for Work. É possível tomar providências para os dispositivos
-por meio de um dono do dispositivo que recupera e instala aplicativos se a interação de usuário. Este recurso é útil para ativar a provisão de um toque
-de telefones públicos ou de outros dispositivos sem a ativação da conta Google.</li>
-<li><strong>Acesso silencioso de certificado empresarial: </strong> Quando um aplicativo chama 
-{@link android.security.KeyChain#choosePrivateKeyAlias(android.app.Activity,android.security.KeyChainAliasCallback,java.lang.String[],java.security.Principal[],java.lang.String,int,java.lang.String) choosePrivateKeyAlias()}
-, antes do usuário receber a solicitação para selecionar um certificado, o perfil ou dono do dispositivo
-pode chamar o método {@code DeviceAdminReceiver.onChoosePrivateKeyAlias()} para fornecer
-o alias silenciosamente ao aplicativo da solicitação. Este recurso permite que você forneça acesso de aplicativos gerenciados para certificados
-sem a interação de usuário.</li>
-<li><strong>Aceitação automática de atualizações do sistema.</strong> Ao configurar a política de atualização do sistema com 
-{@code DevicePolicyManager.setSystemUpdatePolicy()}, o dono do dispositivo pode aceitar automaticamente a atualização
-do sistema, no caso de um dispositivo público, ou adiar a atualização e evitar
-que ela seja feita pelo usuário por até 30 dias. Além disso, um administrador pode definir uma janela de tempo diária
-em que uma atualização deve ser realizada. Por exemplo: durante os momentos em que um dispositivo público não está em uso. Quando
-uma atualização do sistema está disponível, o sistema verifica se o aplicativo de controlador de política de trabalho definiu uma política de atualização
-do sistema e, portanto, comporta-se de acordo com a definição.
-</li>
-<li>
-<strong>Instalação de certificado delegado:</strong> Um perfil ou dono do dispositivo pode agora fornecer ao aplicativo
-de terceiros a habilidade de chamar essas APIs de gerenciamento
-de certificado de {@link android.app.admin.DevicePolicyManager}:
-<ul>
-  <li>{@link android.app.admin.DevicePolicyManager#getInstalledCaCerts(android.content.ComponentName)
-getInstalledCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#hasCaCertInstalled(android.content.ComponentName,byte[])
-hasCaCertInstalled()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installCaCert(android.content.ComponentName,byte[])
-installCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallCaCert(android.content.ComponentName,byte[])
-uninstallCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallAllUserCaCerts(android.content.ComponentName)
-uninstallAllUserCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installKeyPair(android.content.ComponentName,java.security.PrivateKey,java.security.cert.Certificate,java.lang.String)
-installKeyPair()}</li>
-</ul>
-</li>
-<li><strong>Proteção de redefinição de fábrica da empresa:</strong> Ao preparar um dono do dispositivo, agora é possível
-configurar parâmetros para desbloquear a proteção de redefinição de fábrica (FRP) configurando o pacote 
-{@code DeviceManagerPolicy.EXTRA_PROVISIONING_RESET_PROTECTION_PARAMETERS}. Um aplicativo de programador
-NFC pode fornecer estes parâmetros depois que um dispositivo for redefinido para desbloquear o FRP e preparar o dispositivo,
-sem a necessidade da conta Google anteriormente configurada. Caso não modifique esses parâmetros,
-o FRP permanece no local e evita que o dispositivo seja ativado sem as credenciais
-Google anteriormente ativadas.
-<p>Além disso, ao configurar as restrições do aplicativo nos serviços Google, o dono do dispositivo pode especificar contas
-Google alternativas para desbloquear o FRP para substituir as contas ativadas no dispositivo.</p>
-</li>
-<img src="{@docRoot}preview/images/work-profile-screen.png" srcset="{@docRoot}preview/images/work-profile-screen.png 1x, {@docRoot}preview/images/work-profile-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-<li><strong>Rastreamento de uso de dados.</strong> Um perfil ou dono do dispositivo pode agora
-consultar as estatísticas de uso de dados visíveis em <strong>Configurações &gt; Uso de</strong> dados usando os novos métodos 
-{@code android.app.usage.NetworkStatsManager}. Os donos de perfis recebem automaticamente
-a permissão para consultar os dados no perfil que gerenciam, enquanto que os donos do dispositivo têm acesso aos dados
-de uso do usuário principal gerenciado.</li>
-<li><strong>Gerenciamento de permissão de tempo de execução:</strong>
-<p>Um perfil ou dono do dispositivo pode definir uma política
-de permissão para todas as solicitações do tempo de execução de todos os aplicativos que usam 
-{@code DevicePolicyManager.setPermissionPolicy()}, seja para solicitar ao usuário para conceder
-a permissão como normal ou automaticamente conceder ou negar a permissão silenciosamente. Se a política posterior
-for definida, o usuário não poderá modificar a seleção feita pelo perfil ou dono do dispositivo dentro da tela de permissões
-do aplicativo em <strong>configurações</strong>.</p></li>
-<li><strong>VPN em configurações:</strong> Os aplicativos de VPN agora estão visíveis em 
-<strong>Configurações &gt; Mais &gt; VPN</strong>.
-Além disso, as notificações que acompanham o uso de VPN são específicas sobre como essa VPN
-é configurada. Para o dono de um perfil, as notificações são específicas para determinar
-se a VPN é configurada para um perfil gerenciado, um perfil pessoal ou ambos. Para o dono do dispositivo, as notificações
-são específicas para determinar se a VPN é configurada para todo o dispositivo.</li>
-<li><strong>Notificação de estado de trabalho:</strong> Um ícone de pasta da barra de status agora aparece
-sempre que um aplicativo do perfil gerenciado tiver uma atividade no primeiro plano. Além disso, se o usuário é desbloqueado
-diretamente para a atividade de um aplicativo no perfil gerenciado, um aviso é exibido notificando
-ao usuário que ele está dentro do perfil de trabalho.
-</li>
-</ul>
-
-<p class="note">
-  Para obter uma vista detalhada de todas as alterações de API no M Developer Preview, consulte o <a href="{@docRoot}preview/download.html">relatório de diferenças de API</a>.
-</p>
diff --git a/docs/html-intl/intl/pt-br/preview/backup/index.jd b/docs/html-intl/intl/pt-br/preview/backup/index.jd
deleted file mode 100644
index 1ba039b..0000000
--- a/docs/html-intl/intl/pt-br/preview/backup/index.jd
+++ /dev/null
@@ -1,327 +0,0 @@
-page.title=Backup automático para aplicativos
-page.tags=backup, previewresources, androidm
-page.keywords=backup, autobackup, preview
-page.image=images/cards/card-auto-backup_2x.png
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Neste documento</h2>
-      <ol>
-        <li><a href="#overview">Visão geral</a></li>
-        <li><a href="#configuring">Configurar backup de dados</a></li>
-        <li><a href="#testing">Testar configuração de backup</a></li>
-        <li><a href="#issues">Problemas conhecidos</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Frenquentemente, os usuários investem muito tempo e esforço para criar dados e configurar preferências
- nos aplicativos. Preservar esses dados para os usuários caso substituam um dispositivo quebrado ou atualizem-se para um novo
- é importante para garantir uma ótima experiência de usuário. Dispositivos que executam o sistema Android M Preview
- ajudam a garantir uma boa experiência para os usuários nessas circunstâncias realizando o backup dos dados do aplicativo
- automaticamente no Google Drive. Os dados do aplicativo são restaurados automaticamente se um usuário alterar ou atualizar um
- dispositivo.
-</p>
-
-<p>
-  Os backups automáticos estão ativos para todos os aplicativos instalados nos dispositivos que executam o Android M Preview. Nenhum
- código adicional de aplicativo é necessário. O sistema fornece aos usuários a habilidade de decisão
- sobre os backups automáticos de dados. Também é possível limitar quais dados do aplicativo devem ter o backup.
-</p>
-
-<p>
-  Este documento descreve o novo comportamento do sistema e como especificar quais dados terão backup
- para o aplicativo.
-</p>
-
-<h2 id="overview">Visão geral</h2>
-
-<p>
-  O recurso de backup automático preserva os dados que o aplicativo cria em um dispositivo de usuário enviando-os
- à conta do Google Drive do usuário e criptografando-os. Não há cobranças para você ou para o usuário
- em relação ao armazenamento de dados e os dados salvos não contam para a cota do Drive pessoal do usuário. Durante
- o período do M Preview, os usuários podem armazenar até 25 MB por aplicativo do Android.
-</p>
-
-<p>
-  Os backups automáticos ocorrem a cada 24 horas, quando o dispositivo está ocioso, carregando e conectado
- a uma rede Wi-Fi. Quando esses requisitos são atendidos, o serviço Backup Manager envia todos os dados de backup
- disponíveis à nuvem. Quando um usuário transita para um novo dispositivo, ou desinstala e reinstala
- o aplicativo com backup realizado, uma operação de restauração copia os dados de backup para o diretório de dados
- do aplicativo recém-instalado.
-</p>
-
-<p class="note">
-  <strong>Observação:</strong> se o usuário usar o
- <a href="{@docRoot}google/backup/index.html">serviço de Backup do Android</a> de legado, este novo comportamento
- não se aplicará aos trabalhos de comportamento de backup existentes com o normal.
-</p>
-
-
-<h3 id="auto-exclude">Arquivos de dados excluídos automaticamente</h3>
-
-<p>
-  Nem todos os dados do aplicativo devem ter backup, como arquivos temporários e de armazenamento em cachê. Portanto, o serviço de backup automático
- exclui determinados arquivos de dados por padrão:
-</p>
-
-<ul>
-  <li>Arquivos em diretórios identificados pelos métodos {@link android.content.Context#getCacheDir
- getCacheDir()} e {@link android.content.ContextWrapper#getCodeCacheDir getCodeCacheDir()}
-.
-  </li>
-
-  <li>Arquivos localizados no armazenamento externo, a não ser que estejam no diretório identificado pelo método
- {@link android.content.Context#getExternalFilesDir getExternalFilesDir()}
-.
-  </li>
-
-  <li>Arquivos localizados no diretório identificado pelo método
- {@link android.content.Context#getNoBackupFilesDir getNoBackupFilesDir()}.
-  </li>
-</ul>
-
-<h2 id="configuring">Configurar backup de dados</h2>
-
-<p>
-  Os dados criados por qualquer aplicativo instalado em um dispositivo M Preview têm backup, exceto
- os arquivos excluídos automaticamente listados na seção anterior. É possível limitar e configurar
- quais dados terão backup no seu aplicativo usando as configurações no manifesto do aplicativo.
-</p>
-
-<h3 id="include-exclude">Incluir ou excluir dados</h3>
-
-<p>
-  Dependendo de quais dados o aplicativo precisar e do modo que forem salvos, você precisará definir
- regras específicas para incluir ou excluir determinados arquivos ou diretórios. O serviço de backup automático suporta
- a configuração dessas regras de backup por meio do uso de um arquivo de configuração XML e do
- manifesto do aplicativo. No manifesto do aplicativo, é possível especificar o arquivo de configuração de esquema de backup como exibido
- no seguinte exemplo:
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:fullBackupContent="&#64;xml/mybackupscheme"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-<p>
-  Neste código de exemplo, o atributo <code>android:fullBackupContent</code> especifica um arquivo XML,
- localizado no diretório <code>res/xml/</code> do projeto de desenvolvimento do aplicativo, chamado
- <code>mybackupscheme.xml</code>. Este arquivo de configuração inclui as regras de quais arquivos terão
- backup. O seguinte código de exemplo mostra um arquivo de configuração que exclui um arquivo específico
- dos backups:
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;full-backup-content&gt;
-    &lt;exclude domain="database" path="device_info.db"/&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  Esta configuração de backup de exemplo exclui do backup somente um arquivo específico do banco de dados.
-  Todos os outros arquivos terão backup.
-</p>
-
-<h4>Sintaxe da configuração de backup</h4>
-
-<p>
-  A configuração do serviço de backup permite que você especifique quais arquivos incluir ou excluir do
-backup. A sintaxe para o arquivo XML de configuração de backup de dados é a seguinte:
-</p>
-
-<pre>
-&lt;full-backup-content&gt;
-    &lt;include domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-    &lt;exclude domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  Os seguintes elementos e atributos permitem que você especifique os arquivos que serão incluídos ou excluídos
- do backup:
-</p>
-
-<ul>
-  <li>
-  <code>&lt;include&gt;</code>. Use este elemento se quiser especificar um conjunto de recursos
-para o backup, em vez de fazer o sistema realizar o backup de todos os dados no aplicativo por padrão. Ao especificar
- uma tag <code>&lt;include&gt;</code>, o sistema realiza apenas o backup <em>dos recursos especificados</em>
- com este elemento.
-  </li>
-
-  <li>
-  <code>&lt;exclude&gt;</code>. Use este elemento para especificar um conjunto de recursos que será excluído
- do backup. O sistema realiza o backup de todos os dados no aplicativo, exceto os recursos especificados
- com este elemento.
-  </li>
-
-  <li>
-  <code>domain.</code> O tipo de recurso que deseja excluir ou incluir no backup. Os valores válidos
- que podem ser especificados para este atributo incluem:
-  </li>
-
-  <li style="list-style: none">
-  <ul>
-    <li>
-    <code>root</code>. Especifica que o recurso está no diretório raiz do aplicativo.
-    </li>
-
-    <li>
-    <code>file</code>. Corresponde ao recurso no diretório retornado
- pelo método {@link android.content.Context#getFilesDir getFilesDir()}.
-    </li>
-
-    <li>
-    <code>database</code>. Corresponde ao banco de dados retornado
- pelo método {@link android.content.Context#getDatabasePath getDatabasePath()} ou usando
- a classe {@link android.database.sqlite.SQLiteOpenHelper}.
-    </li>
-
-    <li>
-    <code>sharedpref</code>. Corresponde a um objeto {@link android.content.SharedPreferences}
- retornado pelo método {@link android.content.Context#getSharedPreferences getSharedPreferences()}
-.
-    </li>
-
-    <li>
-    <code>external</code>. Especifica que o recurso está no armazenamento externo e corresponde
- a um arquivo no diretório retornado pelo método
- {@link android.content.Context#getExternalFilesDir getExternalFilesDir()}.
-    </li>
-
-    <li>
-    <code>path</code>. O caminho de arquivo para um recurso que deseja excluir ou incluir
- no backup.
-    </li>
-  </ul>
-  </li>
-</ul>
-
-
-<h3 id="prohibit">Proibir backup de dados</h3>
-
-<p>
-  É possível optar por evitar backups automáticos de quaisquer dados do aplicativo configurando
- o atributo <code>android:allowBackup</code> para <code>false</code> no elemento do aplicativo
- do manifesto. Esta configuração é ilustrada no seguinte código de exemplo:
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:allowBackup="false"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-
-<h2 id="testing">Testar configuração de backup</h2>
-
-<p>
-  Ao criar uma configuração de backup, deve-se testá-la para garantir que o aplicativo
- salva os dados e que eles podem ser restaurados corretamente.
-</p>
-
-
-<h4>Ativar registro de backup</h4>
-
-<p>
-  Para ajudar a determinar como o recurso de backup analisa o arquivo XML, ative o registro
- antes de realizar um backup de teste:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell setprop log.tag.BackupXmlParserLogging VERBOSE
-</pre>
-
-<h4>Teste de backup</h4>
-
-<p>Para executar um backup manualmente, primeiro deve-se inicializar o Backup Manager chamando o seguinte
- comando:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr run
-</pre>
-
-<p>
-  Em seguida, realiza-se o backup manualmente do aplicativo usando o seguinte comando, especificando o nome
- do pacote para o aplicativo como o parâmetro <code>&lt;PACKAGE&gt;</code>:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr fullbackup &lt;PACKAGE&gt;</pre>
-
-
-<h4>Teste de restauração</h4>
-
-<p>
-  Para iniciar manualmente uma restauração após o backup dos dados do aplicativo, chame o seguinte comando,
- especificando o nome do pacote para o aplicativo como o parâmetro <code>&lt;PACKAGE&gt;</code>:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr restore &lt;PACKAGE&gt;
-</pre>
-
-<p class="warning">
-  <b>Aviso:</b> esta ação impede o aplicativo de apagar os dados antes de realizar
- a operação de restauração.
-</p>
-
-<p>
-  Para iniciar o processo de restauração do aplicativo, deve-se desinstalar e reinstalá-lo. Os dados
- do aplicativo são restaurados automaticamente a partir da nuvem quando a instalação do aplicativo for concluída.
-</p>
-
-
-<h4>Resolução de problemas de backups</h4>
-
-<p>
-  Caso ocorra problemas, é possível apagar os dados de backup e os metadados associados desativando o backup
- e reativando-o em <strong>Settings (Configurações) &gt; Backup</strong>, redefinindo o dispositivo para as especificações de fábrica, ou
- chamando este comando:
-</p>
-
-<pre>$ adb shell bmgr wipe &lt;TRANSPORT&gt; &lt;PACKAGE&gt;</pre>
-
-<p>
-  O valor <code>&lt;TRANSPORT&gt;</code> deve ser prefixado por <code>com.google.android.gms</code>.
-  Para obter uma lista de transportes, chame o seguinte comando:
-</p>
-
-<pre>$ adb shell bmgr list transports</pre>
-
-<h2 id="issues">Problemas conhecidos</h2>
-
-<p>A seguir estão os problemas conhecidos com o serviço de backup automático:</p>
-
-<ul>
-  <li><strong>Google Cloud Messaging</strong> -
- Para aplicativos que usam o Google Cloud Messaging para notificações push, há um problema conhecido
- onde o backup do ID de registro retornado pelo registro do Google Cloud Messaging pode
- desencadear notificações push para o aplicativo restaurado. É importante consultar a API para obter um novo ID de registro
- após a instalação em um novo dispositivo, o que não deve ser o caso se o ID de registro antigo
- tiver backup. Para evitar isto, exclua o ID de registro do conjunto de arquivos
- de backup.
-  </li>
-</ul>
diff --git a/docs/html-intl/intl/pt-br/preview/behavior-changes.jd b/docs/html-intl/intl/pt-br/preview/behavior-changes.jd
deleted file mode 100644
index cd99bbd..0000000
--- a/docs/html-intl/intl/pt-br/preview/behavior-changes.jd
+++ /dev/null
@@ -1,402 +0,0 @@
-page.title=Mudanças de comportamento
-page.keywords=preview,sdk,compatibility
-sdk.platform.apiLevel=MNC
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>Neste documento</h2>
-
-<ol id="toc44" class="hide-nested">
-    <li><a href="#behavior-runtime-permissions">Permissões do tempo de execução</a></li>
-    <li><a href="#behavior-power">Otimizações de economia de energia</a>
-        <ol>
-            <li><a href="#behavior-doze">Soneca</a></li>
-            <li><a href="#behavior-app-standby">Aplicativo em espera</a></li>
-        </ol>
-    </li>
-    <li><a href="#behavior-adoptable-storage">Dispositivos de armazenamento adotáveis</a></li>
-    <li><a href="#behavior-apache-http-client">Remoção do cliente Apache HTTP</a></li>
-    <li><a href="#behavior-audiomanager-Changes">Mudanças no AudioManager</a></li>
-    <li><a href="#behavior-test-selection">Seleção de texto</a></li>
-    <li><a href="#behavior-keystore">Mudanças no Android Keystore</a></li>
-    <li><a href="#behavior-network">Mudanças de rede e Wi-Fi</a></li>
-    <li><a href="#behavior-camera">Mudanças no serviço de câmera</a></li>
-    <li><a href="#behavior-art-runtime">Tempo de execução de ART</a></li>
-    <li><a href="#behavior-apk-validation">Validação de APK</a></li>
-    <li><a href="#behavior-afw">Mudanças do Android for Work</a></li>
-</ol>
-
-<h2>Diferenças de API</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API de nível 22 para M Preview &raquo;</a> </li>
-</ol>
-
-
-<h2>Veja também</h2>
-<ol>
-<li><a href="{@docRoot}preview/api-overview.html">Visão geral da API do M Developer Preview</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>Junto com novas capacidades e recursos, o M Developer Preview inclui uma variedade
-de mudanças do sistema e alterações no comportamento da API. Este documento destaca algumas
-das alterações principais que você deve entender e levar em consideração nos aplicativos.</p>
-
-<p>Caso tenha publicado anteriormente um aplicativo para Android, saiba que ele pode ser afetado
- pelas alterações na plataforma.</p>
-
-<h2 id="behavior-runtime-permissions">Permissões do tempo de execução</h1>
-<p>Esta prévia introduz um novo modelo de permissões em que os usuários podem gerenciar diretamente
- as permissões do aplicativo no tempo de execução. Este modelo fornece aos usuários uma visibilidade aprimorada e controle sobre permissões,
- ao mesmo tempo em que agiliza os processos de atualização automática e instalação para os desenvolvedores de aplicativos.
-Os usuários podem conceder ou revogar as permissões individualmente para os aplicativos instalados. </p>
-
-<p>Nos aplicativos direcionados para o M Preview, certifique-se de verificar e solicitar as permissões
- no tempo de execução. Para determinar se o aplicativo recebeu uma permissão, chame
- o novo método {@code Context.checkSelfPermission()}. Para solicitar uma permissão, chame o novo método
- {@code Activity.requestPermission()}. Mesmo se o aplicativo não é direcionado para o M,
- deve-se testá-lo sob o novo modelo de permissões.</p>
-
-<p>Para obter mais detalhes sobre o suporte do novo modelo de permissões no aplicativo, consulte a página de prévia de desenvolvedor 
-<a href="{@docRoot}preview/features/runtime-permissions.html">
-Permissões</a>. Para obter dicas sobre como avaliar o impacto no aplicativo,
- consulte o <a href="{@docRoot}preview/testing/guide.html#runtime-permissions">guia de teste</a>.</p>
-
-<h2 id="behavior-power">Otimizações de economia de energia</h2>
-<p>Esta prévia introduz novas otimizações de economia de energia para dispositivos e aplicativos ociosos.</p>
-
-<h3 id="behavior-doze">Soneca</h3>
-<p>Se o dispositivo estiver desconectado e parado com a tela desligada por um período,
- o modo <em>Soneca</em> será ativado, onde ele tentará manter o sistema em um estado ocioso. Neste modo,
- os dispositivos retomam as operações normais periodicamente por breves períodos para que a sincronização de aplicativos
- possa ocorrer e para que o sistema possa realizar quaisquer operações pendentes.</p>
-
-<p>As seguintes restrições se aplicam aos aplicativos durante a Soneca:</p>
-<ul>
-<li>O acesso à rede é desativado, a não ser que o aplicativo receba um convite de alta prioridade
- do Google Cloud Messaging.</li>
-<li><a href="{@docRoot}reference/android/os/PowerManager.WakeLock.html">Bloqueios de soneca</a> são ignorados.</li>
-<li>Os despertadores agendados com a classe {@link android.app.AlarmManager} são ignorados,
- exceto os alarmes definidos com o método {@link android.app.AlarmManager#setAlarmClock setAlarmClock()}
- e {@code AlarmManager.setAndAllowWhileIdle()}.</li>
-<li>As verificações de Wi-Fi não são realizadas.</li>
-<li>Sincronizações e trabalhos para os adaptadores de sincronização e {@link android.app.job.JobScheduler}
- não têm permissão para serem executados.</li>
-</ul>
-</p>
-<p>Quando o dispositivo sair do modo soneca, quaisquer sincronizações e trabalhos pendentes são executados.</p>
-<p>É possível testar este recurso conectando o dispositivo executando o M Preview
- à máquina de desenvolvimento e chamando os seguintes comandos:
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-<p class="note"><strong>Observação</strong>: o próximo lançamento do 
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">
-Google Cloud Messaging</a> permite que você designe
- mensagens de alta prioridade. Se o aplicativo recebe mensagens de alta prioridade do GCM,
- um acesso breve à rede é concedido mesmo quando o dispositivo está no modo soneca.
-</p>
-
-<p>Consulte o
-<a href="{@docRoot}preview/testing/guide.html#doze-standby">guia de teste</a> para obter dicas sobre
-como testar a soneca nos aplicativos. </p>
-
-<h3 id="behavior-app-standby">Aplicativo em espera</h3>
-<p>Com esta prévia, o sistema pode determinar quais aplicativos estão em espera quando
-não estão em uso ativo. O aplicativo é considerado em espera após um período, a não ser que o sistema detecte
-algum destes sinais:</p>
-
-<ul>
-<li>O aplicativo foi explicitamente iniciado pelo usuário.</li>
-<li>O aplicativo tem um processo atualmente em primeiro plano (seja uma atividade ou serviço de primeiro plano
- ou esteja em uso por outra atividade ou serviço de primeiro plano).</li>
-<li>O aplicativo gera uma notificação que o usuário vê na tela de bloqueio
- ou na bandeja de notificações.</li>
-<li>O usuário explicitamente pede para que o aplicativo seja liberado das otimizações,
- ajustado em <strong>Settings (Configurações)</strong>.</li>
-</ul>
-
-<p>Se o dispositivo estiver desconectado, o aplicativo considerado ocioso terá o acesso
-à rede desativado e as sincronizações e os trabalhos suspensos. Quando o dispositivo está conectado em uma fonte de alimentação,
- esses aplicativos têm acesso à rede permitido e podem executar quaisquer sincronizações e trabalhos pendentes. Se o dispositivo permanece ocioso por longos períodos,
- os aplicativos ociosos têm acesso à rede permitido aproximadamente uma vez por dia.</p>
-
-<p>É possível testar este recurso conectando o dispositivo executando o M Preview
- à máquina de desenvolvimento e chamando os seguintes comandos:
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell am set-idle &lt;packageName&gt; true
-$ adb shell am set-idle &lt;packageName&gt; false
-$ adb shell am get-idle &lt;packageName&gt;
-</pre>
-
-<p class="note"><strong>Observação</strong>: o próximo lançamento do
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">
-Google Cloud Messaging</a> (GCM) permite que você
-designe mensagens de alta prioridade. Se o aplicativo recebe mensagens de alta prioridade do GCM,
-um acesso breve à rede é concedido mesmo quando o aplicativo está ocioso.
-</p>
-
-<p>Consulte o
-<a href="{@docRoot}preview/testing/guide.html#doze-standby">guia de teste</a> para obter dicas sobre como
-testar a espera dos aplicativos. </p>
-
-<h2 id="behavior-adoptable-storage">Dispositivos de armazenamento adotáveis</h2>
-<p>
-Com esta prévia, os usuários podem <em>adotar</em> dispositivos de armazenamento externo como cartões SD. Adotar um dispositivo
-de armazenamento externo criptografa e formata o dispositivo para agir como um armazenamento interno. Este recurso
-permite que os usuários movam aplicativos e dados privados desses aplicativos entre dispositivos de armazenamento. Ao mover aplicativos,
-o sistema respeita a preferência
-<a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a>
-no manifesto.</p>
-
-<p>Se o aplicativo acessar as seguintes APIs ou campos, saiba que os caminhos de arquivos retornados
-serão alterados dinamicamente quando o aplicativo for movido entre os dispositivos de armazenamento externo e interno.
-Ao compilar caminhos de arquivos, é recomendado que essas APIs sempre sejam chamadas dinamicamente.
-Não use caminhos de arquivo criptografados nem persista em caminhos de arquivo completamente qualificados que foram compilados anteriormente.</p>
-
-<ul>
-<li>Métodos {@link android.content.Context}:
-    <ul>
-        <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
-        <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
-        <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
-        <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
-        <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
-        <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
-        <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
-        <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
-        <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
-    </ul>
-</li>
-<li>Campos {@link android.content.pm.ApplicationInfo}:
-    <ul>
-        <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
-    </ul>
-</li>
-</ul>
-
-<p>Para depurar este recurso na prévia de desenvolvedor, é possível ativar a adoção
-de uma unidade USB que está conectada a um dispositivo Android por meio de um cabo USB On-The-Go (OTG) executando este comando:</p>
-
-<pre class="no-prettyprint">
-$ adb shell sm set-force-adoptable true
-</pre>
-
-<h2 id="behavior-apache-http-client">Remoção do cliente Apache HTTP</h2>
-<p>Esta prévia remove o suporte para o cliente Apache HTTP. Se o aplicativo estiver usando este cliente e for direcionado
-para Android 2.3 (nível da API 9) ou mais recente, use
-a classe {@link java.net.HttpURLConnection}. Esta API é mais eficiente, pois reduz o uso de rede por meio de compressão transparente e armazenamento
-em cachê de respostas, além de minimizar o consumo de energia. Para continuar usando as APIs do Apache HTTP,
-deve-se primeiro declarar a dependência de tempo de compilação no arquivo {@code build.gradle}:
-</p>
-<pre>
-android {
-    useLibrary 'org.apache.http.legacy'
-}
-</pre>
-<p>O Android está mudando da biblioteca OpenSSL para
-<a href="https://boringssl.googlesource.com/boringssl/" class="external-link">BoringSSL</a>
-. Caso esteja usando o Android NDK no aplicativo, não vincule contra bibliotecas criptográficas
-que não fazem parte da API de NDK, como {@code libcrypto.so} e {@code libssl.so}. Estas bibliotecas não são APIs públicas
-e podem mudar ou apresentar erros sem notificar entre liberações e dispositivos.
-Além disso, você pode se expor a vulnerabilidades de segurança. Em vez disso,
-modifique o código nativo para chamar as APIs de criptografia Java via JNI ou para vincular estaticamente
-com relação a uma biblioteca criptográfica de sua escolha.</p>
-
-<h2 id="behavior-audiomanager-Changes">Mudanças no AudioManager</h2>
-<p>Ajustar o volume diretamente ou desativar o áudio de transmissões específicas por meio da classe {@link android.media.AudioManager}
-não são mais recursos suportados. O método {@link android.media.AudioManager#setStreamSolo(int,boolean)
-setStreamSolo()} é obsoleto e deve-se chamar o método
-{@code AudioManager.requestAudioFocus()}. De forma semelhante, o método
-{@link android.media.AudioManager#setStreamMute(int,boolean) setStreamMute()} é
-obsoleto; em vez disso, chame o método {@code AudioManager.adjustStreamVolume()}
-e passe o valor da direção de {@code ADJUST_MUTE} ou {@code ADJUST_UNMUTE}.</p>
-
-<h2 id="behavior-test-selection">Seleção de texto</h2>
-
-<img src="{@docRoot}preview/images/text-selection.gif" style="float:right; margin:0 0 20px 30px" width="360" height="640" />
-
-<p>Quando os usuários selecionam o texto no aplicativo, agora é possível exibir ações de seleção de texto como 
-<em>Recortar</em>, <em>Copiar</em> e <em>Colar</em> na 
-<a href="http://www.google.com/design/spec/patterns/selection.html#selection-text-selection" class="external-link">barra de ferramentas flutuante</a>. A implementação da interação do usuário é semelhante ao processo
-da barra de ação contextual, como descrito em 
-<a href="{@docRoot}guide/topics/ui/menus.html#CABforViews">
-Ativação do modo de ação contextual para vistas individuais</a>.</p>
-
-<p>Para implementar uma barra de ferramentas flutuante para seleção de texto, faça as seguintes alterações nos aplicativos
-existentes:</p>
-<ol>
-<li>No objeto {@link android.view.View} ou {@link android.app.Activity}, altere as chamadas 
-{@link android.view.ActionMode} de 
-{@code startActionMode(Callback)} para {@code startActionMode(Callback, ActionMode.TYPE_FLOATING)}.</li>
-<li>Pegue a implementação existente de {@code ActionMode.Callback} e torne-a uma extensão de
-{@code ActionMode.Callback2}.</li>
-<li>Substitua o método {@code Callback2.onGetContentRect()} para fornecer as coordenadas do conteúdo
-do objeto {@link android.graphics.Rect} (como um retângulo de seleção de texto) na vista.</li>
-<li>Se o posicionamento do retângulo deixar de ser válido e for o único elemento a ser invalidado,
-chame o método {@code ActionMode.invalidateContentRect()}.</li>
-</ol>
-
-<p>Caso esteja usando a <a href="{@docRoot}tools/support-library/index.html">
-biblioteca de suporte Android</a> revisão 22.2, saiba que as barras de ferramentas flutuantes não
-têm compatibilidade com versões anteriores e que o appcompat tem controle sobre os objetos {@link android.view.ActionMode} por
-padrão. Isto evita que barras de ferramentas flutuantes sejam exibidas. Para ativar o suporte de 
-{@link android.view.ActionMode} em um 
-{@link android.support.v7.app.AppCompatActivity}, chame 
-{@code android.support.v7.app.AppCompatActivity.getDelegate()} e, em seguida, chame 
-{@code android.support.v7.app.AppCompatDelegate.setHandleNativeActionModesEnabled()} no objeto 
-{@link android.support.v7.app.AppCompatDelegate} retornado e defina
-o parâmetro de entrada para {@code false}. Esta chamada retorna o controle dos objetos {@link android.view.ActionMode}
-à estrutura. Em dispositivos que são executados no M Preview, isto permite que a estrutura suporte os modos de 
-{@link android.support.v7.app.ActionBar} ou de barra de ferramenta flutuante, enquanto que, para dispositivos anteriores ao M Preview,
-somente os modos {@link android.support.v7.app.ActionBar} são suportados.</p>
-
-<h2 id="behavior-keystore">Mudanças no Android Keystore</h2>
-<p>Com esta prévia,
-o <a href="{@docRoot}training/articles/keystore.html">provedor Android Keystore</a> não suporta mais
-DSA. ECDSA ainda é suportado.</p>
-
-<p>As chaves que não exigem criptografia em rest não precisam ser excluídas quando a tela de bloqueio segura
-é desativada ou redefinida (por exemplo, pelo usuário ou por um administrador do dispositivo). As chaves que exigem
-criptografia serão excluídas durante esses eventos.</p>
-
-<h2 id="behavior-network">Mudanças de rede e Wi-Fi</h2>
-
-<p>Esta prévia introduz as seguintes alterações de comportamento nas APIs de rede e Wi-Fi.</p>
-<ul>
-<li>Os aplicativos podem alterar o estado dos objetos {@link android.net.wifi.WifiConfiguration}
-somente se você os tiver criado. Você não tem permissão para modificar nem excluir objetos
-{@link android.net.wifi.WifiConfiguration} criados pelo usuário ou outros aplicativos.
-</li>
-<li>
-Anteriormente, se um aplicativo forçasse o dispositivo a se conectar a uma rede Wi-Fi específica usando
-{@link android.net.wifi.WifiManager#enableNetwork(int,boolean) enableNetwork()} com a configuração
-{@code disableAllOthers=true}, o dispositivo desconectava de outras redes,
-como dados de celular. Nesta prévia, o dispositivo não rompe a conexão com outras redes. Se
-o {@code targetSdkVersion} do aplicativo for {@code “20”} ou menor, ele é fixado
-à rede Wi-Fi selecionada. Se o {@code targetSdkVersion} do aplicativo for {@code “21”} ou maior, use
-as APIS de multi-rede (como
-{@link android.net.Network#openConnection(java.net.URL) openConnection()},
-{@link android.net.Network#bindSocket(java.net.Socket) bindSocket()} e o novo método
-{@code ConnectivityManager.bindProcessToNetwork()}) para garantir que o tráfego de rede
-seja enviado na rede selecionada.</li>
-</ul>
-
-<h2 id="behavior-camera">Mudanças no serviço de câmera</h2>
-<p>Nesta prévia, o modelo para acessar recursos compartilhados no serviço de câmera foi alterado
-do antigo modelo de acesso “primeiro a chegar, primeiro a ser atendido” para um modelo de acesso onde
-os processos de alta prioridade são favorecidos.  As mudanças no comportamento do serviço incluem:</p>
-<ul>
-<li>Acesso aos recursos do subsistema da câmera, incluindo abertura e configuração de um dispositivo de câmera,
-concedido com base na prioridade do processo do aplicativo do cliente. Processos de aplicativos com atividades
-visíveis ao usuário ou de primeiro plano são geralmente de alta prioridade, tornando a aquisição
-e o uso de recursos da câmera mais dependentes.</li>
-<li>Clientes de câmera ativa para aplicativos de menor prioridade podem ser "despejados" quando
-um aplicativo de alta prioridade tenta usar a câmera.  Na API {@link android.hardware.Camera} obsoleta,
-isto resulta em
-{@link android.hardware.Camera.ErrorCallback#onError(int,android.hardware.Camera) onError()} sendo
-chamado para o cliente despejado. Na API {@link android.hardware.camera2 Camera2}, isto resulta em
-{@link android.hardware.camera2.CameraDevice.StateCallback#onDisconnected(android.hardware.camera2.CameraDevice) onDisconnected()}
-sendo chamado para o cliente despejado.</li>
-<li>Em dispositivos com hardware de câmera adequado, processos de aplicativo separados podem
-abrir e usar independentemente os dispositivos de câmera simultaneamente. No entanto, casos de uso de vários processos
-em que o acesso simultâneo causa uma degradação significante de desempenho ou capacidades
-de qualquer um dos dispositivos de câmera abertos agora são detectados e proibidos pelo serviço da câmera. Esta alteração
-pode resultar em "despejos" para clientes de menor prioridade quando nenhum aplicativo está
-tentando acessar o mesmo dispositivo de câmera diretamente.
-</li>
-<li>
-Alterar o usuário atual faz com que os clientes da câmera ativa em aplicativos pertencentes à conta do usuário anterior
-sejam despejados.  O acesso à câmera é limitado a perfis de usuário pertencentes ao usuário do dispositivo atual.
-Na prática, isso significa que uma conta de "convidado", por exemplo, não poderá deixar
-processos em execução que usam o subsistema da câmera quando o usuário alternar para uma conta diferente.
-</li>
-</ul>
-
-<h2 id="behavior-art-runtime">Tempo de execução de ART</h2>
-<p>O tempo de execução de ART agora implementa adequadamente as regras de acesso
-para o método {@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()}. Esta
-alteração corrige um problema onde o Dalvik estava verificando as regras de acesso incorretamente em versões anteriores.
-Se o aplicativo usa o método
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} e você quer
-substituir as verificações de acesso, chame o método
-{@link java.lang.reflect.Constructor#setAccessible(boolean) setAccessible()} com o parâmetro
-de entrada definido como {@code true}. Se o aplicativo usar a
-<a href="{@docRoot}tools/support-library/features.html#v7-appcompat">biblioteca v7 appcompat</a> ou a 
-<a href="{@docRoot}tools/support-library/features.html#v7-recyclerview">biblioteca v7 recyclerview</a>,
-deve-se atualizá-lo para usar as versões mais recentes dessas bibliotecas. Caso contrário, certifique-se
-de que as classes personalizadas mencionadas a partir do XML sejam atualizadas para que os construtores de classe estejam acessíveis.</p>
-
-<p>Esta prévia atualiza o comportamento do vinculador dinâmico. O vinculador dinâmico agora entende
-a diferença entre um {@code soname} da biblioteca e o seu caminho
-(<a href="https://code.google.com/p/android/issues/detail?id=6670" class="external-link">
-erro público 6670</a>), e a pesquisa por {@code soname}
-agora está implementada. Os aplicativos que anteriormente trabalhavam e têm entradas {@code DT_NEEDED} inválidas
-(geralmente, caminhos absolutos no sistema de arquivo na máquina de programação) podem falhar ao serem carregados.</p>
-
-<p>O sinalizador {@code dlopen(3) RTLD_LOCAL} agora está corretamente implementado. Observe que
-{@code RTLD_LOCAL} é o padrão. Portanto, chamadas para {@code dlopen(3)} que não usam explicitamente
-{@code RTLD_LOCAL} serão afetadas (a não ser que o aplicativo tenha usado explicitamente {@code RTLD_GLOBAL}). Com
-{@code RTLD_LOCAL}, os símbolos não estarão disponíveis para as bibliotecas carregadas por chamadas posteriores a
-{@code dlopen(3)} (o oposto ocorre quando mencionado por entradas {@code DT_NEEDED}).</p>
-</p>
-
-<h2 id="behavior-apk-validation">Validação de APK</h2>
-<p>A plataforma agora realiza validações mais estritas de APKs. Um APK é considerado corrompido se um arquivo
-for declarado no manifesto, mas não estiver presente no próprio APK. Um APK deve ser atribuído novamente se qualquer
-conteúdo for removido.</p>
-
-<h2 id="behavior-afw">Mudanças do Android for Work</h2>
-<p>Esta prévia inclui as seguintes mudanças de comportamento para Android for Work:</p>
-<ul>
-<li><strong>Contatos de trabalho em contextos pessoais.</strong> O registro de chamadas do telefone do Google
-agora exibe os contatos de trabalho quando o usuário visualiza chamadas anteriores.
-A configuração {@code DevicePolicyManager.setCrossProfileCallerIdDisabled()} para {@code true} oculta
-os contatos do perfil de trabalho no registro de chamadas do telefone. Os contatos de trabalho podem ser exibidos junto com os contatos pessoais
-aos dispositivos por meio de Bluetooth somente
-se {@code DevicePolicyManager.setBluetoothContactSharingDisabled()} estiver definido como {@code false}. Por
-padrão, ele está definido como {@code true}.
-</li>
-<li><strong>Remoção de configuração Wi-Fi:</strong> as configurações de Wi-Fi adicionadas por um dono de perfil
-(por exemplo, por meio de chamadas para o método
-{@link android.net.wifi.WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
-addNetwork()}) agora são removidas se esse perfil de trabalho é excluído.</li>
-<li><strong>Bloqueio de configuração Wi-Fi:</strong> qualquer configuração Wi-Fi criada por um dono do dispositivo
-ativo não pode mais ser modificada nem excluída pelo usuário. O usuário ainda pode criar
-e modificar as próprias configurações de Wi-Fi, contanto que a constante {@link android.os.UserManager}
-{@link android.os.UserManager#DISALLOW_CONFIG_WIFI} não tenha sido definida por ele.</li>
-<li><strong>Faça o download do Work Policy Controller por meio de uma adição de conta Google:</strong> quando uma conta Google
-que requer um gerenciamento por meio do aplicativo Work Policy Controller (WPC) é adicionada ao dispositivo
-fora de um contexto gerenciado, o fluxo de conta adicionada agora solicita ao usuário para instalar
-o WPC adequado. Este comportamento também se aplica a contas adicionadas por meio de 
-<strong>Settings (Configurações) &gt; Accounts (Contas)</strong> no assistente de configuração inicial do dispositivo.</li>
-<li><strong>Alterações aos comportamentos específicos da API DevicePolicyManager:</strong>
-chamar o método {@link android.app.admin.DevicePolicyManager#setCameraDisabled(android.content.ComponentName,boolean) setCameraDisabled()}
-afeta a câmera somente para o usuário que realizou a chamada. Chamá-lo a partir do perfil gerenciado
-não afeta os aplicativos de câmera em execução no usuário principal. Além disso,
-o método {@link android.app.admin.DevicePolicyManager#setKeyguardDisabledFeatures(android.content.ComponentName,int) setKeyguardDisabledFeatures()}
-agora está disponível para donos de perfil, além dos donos do dispositivo. Um dono de perfil pode definir
-estas restrições de proteção de bloqueio:
-<ul>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_TRUST_AGENTS} e
- {@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_FINGERPRINT}, que afetam
- as configurações de proteção de bloqueio para o usuário pai do perfil.</li>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS}, que
- afeta somente as notificações geradas por aplicativos no perfil gerenciado.</li>
-</ul>
-</li>
-</ul>
diff --git a/docs/html-intl/intl/pt-br/preview/download.jd b/docs/html-intl/intl/pt-br/preview/download.jd
deleted file mode 100644
index 80685f9..0000000
--- a/docs/html-intl/intl/pt-br/preview/download.jd
+++ /dev/null
@@ -1,361 +0,0 @@
-page.title=Downloads
-page.image=images/cards/card-download_16-9_2x.png
-
-@jd:body
-
-<div style="position:relative; min-height:600px">
-
-  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
-
-    <p class="sdk-terms-intro">Antes de fazer o download ou instalar componentes do Android Preview
- SDK, você deve concordar com os seguintes termos e condições.</p>
-
-    <h2 class="norule">Termos e condições</h2>
-
-    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
-Este é o contrato de licença do Android SDK Preview (o “Contrato de Licença”).
-
-1. Introdução
-
-1.1 O Android SDK Preview (que este Contrato de licença chama de "Preview", incluindo especificamente os arquivos de sistema do Android, APIs integradas e arquivos da biblioteca Preview, se e quando estiverem disponíveis) é licenciado por meio da concordância com os termos deste contrato. O Contrato de licença forma um vínculo contratual legal entre o contratante e a Google em relação ao uso do Preview.
-
-1.2 "Android" se refere à pilha de software do Android para dispositivos, conforme disponibilizado no Projeto de código aberto do Android, localizado no URL a seguir: http://source.android.com/, atualizado periodicamente.
-
-1.3 "Google" refere-se à Google Inc, uma corporação de Delaware, com sede em 1600 Amphitheatre Parkway, Mountain View, CA 94043, Estados Unidos.
-
-2. Aceitação do Contrato de Licença
-
-2.1 A fim de usar o Preview, é necessário concordar com este Contrato de licença. O uso do Preview é proibido àqueles que não concordam com este Contrato de licença.
-
-2.2 Ao clicar em aceitar e/ou usar o Preview, você concorda com os termos do Contrato de licença
-
-2.3 É proibido o uso do Preview e a aceitação deste contrato pelo indivíduo que tenha impedimento legal sobre o recebimento do Preview sob as leis dos Estados Unidos ou de outros países, incluindo o país de residência ou no qual usa o Preview.
-
-2.4 Se for usar o Preview internamente na empresa ou organização, você deverá concordar com o vínculo com este contrato em nome do empregador ou de outra entidade e declarar e garantir que tem total autoridade legal para tanto. Se você não tem a autoridade necessária, não deve concordar com este contrato nem usar o Preview em nome do empregador ou de outra entidade.
-
-3. Licença do Preview da Google
-
-3.1 Sujeito aos termos do Contrato de licença, a Google confere uma licença limitada, revogável, livre de taxas, intransmissível, não sub-licenciável e não exclusiva para o uso apenas do Preview, pessoal ou internamente dentro da sua empresa ou organização, para fins de desenvolvimento de aplicativos executados na plataforma do Android.
-
-3.2 Você concorda que a Google ou terceiros detêm todos os direitos legais, títulos e interesses relativos ao Preview, incluindo quaisquer direitos de propriedade intelectual que subsistam no Preview. "Direitos de propriedade intelectual" se referem a todo e qualquer direito sob as leis de patentes, de direitos autorais, de segredo comercial, de marca registrada e todos os outros direitos de propriedade. A Google reserva todos os direitos não conferidos expressamente a você.
-
-3.3 O uso do Preview não é autorizado para qualquer finalidade não expressamente permitida por este Contrato de licença. Salvo na extensão exigida por licenças aplicáveis de terceiros, é proibido: (a) copiar (exceto para fins de cópia de segurança), modificar, adaptar, redistribuir, descompilar, fazer engenharia reversa, desmontar ou criar trabalhos derivados do Preview ou qualquer parte dele; ou (b) carregar qualquer parte do Preview em um aparelho celular ou outro dispositivo de hardware, exceto em computador pessoal, combinar qualquer parte do Preview com outros softwares ou distribuir qualquer software ou dispositivo que contenha uma parte do Preview.
-
-3.4 Você concorda que não tomará quaisquer medidas que possam causar ou resultar em fragmentação do Android, incluindo, sem limitar-se, a distribuição e a participação na criação ou na promoção, sob quaisquer formas, de um conjunto de desenvolvimento de software derivado do Preview.
-
-3.5 O uso, a reprodução e a distribuição de componentes do Preview licenciado sob licença de software de código aberto são regidos exclusivamente pelos termos daquela licença de software de código aberto, e não por este Contrato de licença. Você concorda em manter uma licença em bom estado para as licenças de software de código aberto sob todos os direitos concedidos e deter quaisquer ações que possam limitar, suspender ou romper tais direitos.
-
-3.6 Você concorda que a forma e a natureza do SDK que a Google fornece podem mudar sem aviso prévio e que as versões futuras do SDK podem ser incompatíveis com aplicativos desenvolvidos em versões anteriores do SDK. Você concorda que a Google pode cessar (permanente ou temporariamente) o fornecimento do Preview (ou quaisquer recursos dentro dele) a você ou a usuários em geral sob critério exclusivo da Google, sem aviso prévio.
-
-3.7 Nada neste Contrato de licença confere o direito de uso de quaisquer nomes comerciais, marcas comerciais, marcas de serviço, logomarcas, nomes de domínios e outros recursos de marcas especiais da Google.
-
-3.8 Você concorda que não removerá, ocultará nem alterará quaisquer observações de direitos de propriedade (incluindo observações de direitos autorais e de marcas registradas) que possam estar afixadas ou contidas no Preview.
-
-4. Uso do Preview por você
-
-4.1 A Google compreende que nada no Contrato de licença dá a ela direito, título nem interesse no usuário (ou em seus licenciadores), sob o presente Contrato de licença, no que tange ao desenvolvimento de aplicativos de software através do uso do Preview, incluindo quaisquer direitos de propriedade intelectual que subsistam nos referidos aplicativos.
-
-4.2 Você concorda em usar o Preview e desenvolver aplicativos somente para as finalidades permitidas por (a) este Contrato de licença e (b) quaisquer leis, normas, diretrizes geralmente aceitas ou orientações aplicáveis nas jurisdições relevantes (incluindo quaisquer leis acerca da exportação e da importação de dados ou softwares nos Estados Unidos ou em outros países relevantes).
-
-4.3 Você concorda que, se usar o Preview para o desenvolvimento de aplicativos, deverá proteger a privacidade e os direitos legais destes usuários. Se nomes de usuário, senhas ou outras informações de acesso ou informações pessoais forem fornecidos ao aplicativo, deve-se informá-los de que tais dados estarão disponíveis para o aplicativo, além de fornecer observações de privacidade e proteção legalmente adequadas a esses usuários. Se o aplicativo armazenar informações pessoais ou confidenciais fornecidas pelos usuários, deve fazê-lo com segurança. Se o usuário fornecer informações da conta do Google, o aplicativo poderá usar essas informações exclusivamente para acessar a conta da Google do usuário quando houver autorização para fazê-lo e para os fins limitados pela autorização.
-
-4.4 Você concorda que não se envolverá em qualquer atividade com o Preview, incluindo o desenvolvimento e a distribuição de um aplicativo que interfira, perturbe, danifique ou acesse, de modo não autorizado, servidores, redes ou outras propriedades ou serviços da Google ou qualquer outro terceiro.
-
-4.5 Você concorda que é exclusivamente responsável por (e que a Google não tem qualquer responsabilidade com você ou terceiro) quaisquer dados, conteúdo ou recursos que criar, transmitir ou exibir por meio do Android e/ou de aplicativos do Android e pelas consequências que suas ações (incluindo perda ou dano que a Google possa sofrer) podem gerar.
-
-4.6 Você concorda que é exclusivamente responsável por (e que a Google não tem qualquer responsabilidade com você ou terceiro) qualquer violação das obrigações exigidas neste Contrato de licença, qualquer contrato ou termos de serviço aplicáveis a terceiros, qualquer lei ou norma aplicável e pelas consequências (incluindo a perda ou dano que a Google ou qualquer terceiro possa sofrer) de quaisquer violações.
-
-4.7 O Preview está em desenvolvimento e o seu teste e feedback são uma parte importante deste processo. Ao usar o Preview, você está ciente de que a implementação de alguns recursos ainda estão em desenvolvimento e que não se deve confiar que o Preview tem a funcionalidade completa de uma versão estável. Você concorda em não distribuir nem enviar publicamente quaisquer aplicativos usando este Preview, pois ele não será mais suportado após o lançamento oficial do Android SDK.
-
-5. Suas credenciais de desenvolvedor
-
-5.1 Você é responsável pela manutenção da confidencialidade de quaisquer credenciais de desenvolvedor que possam ser emitidas pela Google ou escolhidas por você e será o único responsável por todos os aplicativos que forem desenvolvidos sob suas credenciais de desenvolvedor.
-
-6. Privacidade e informações
-
-6.1 A fim de inovar e aprimorar continuamente o Preview, a Google pode coletar certas estatísticas de uso do software, incluindo, sem limitar-se, um identificador exclusivo, endereço IP associado, número de versão do software e informações sobre quais ferramentas e/ou serviços no Preview estão sendo usados e como estão sendo usados. Antes de coletar quaisquer dessas informações, o Preview o notificará e buscará seu consentimento. Se você recusar, as informações não serão coletadas.
-
-6.2 Os dados coletados são examinados coletivamente para aprimorar o Preview e são mantidos em conformidade com a Política de privacidade da Google acessível em http://www.google.com/policies/privacy/.
-
-7. Aplicativos de terceiros
-
-7.1 Ao usar o Preview para executar aplicativos desenvolvidos por terceiros ou que acessam dados, conteúdo ou recursos fornecidos por terceiros, você concorda que a Google não é responsável por tais aplicativos, dados, conteúdo ou recursos. Você compreende que quaisquer dados, conteúdo ou recursos passíveis de aceitação por meio de tais aplicativos de terceiros imputam responsabilidade exclusiva ao indivíduo que os originou. A Google não é responsável por qualquer perda ou dano que possa ocorrer como resultado do uso ou acesso de quaisquer aplicativos, dados, conteúdo ou recursos de terceiros.
-
-7.2 Você deve estar ciente de que os dados, conteúdo e recursos apresentados a você por aplicativos de terceiros podem ser protegidos pelos direitos de propriedade intelectual de posse dos fornecedores (ou de outras pessoas ou empresas em seus nomes). Não é permitido modificar, alugar, arrendar, emprestar, vender, distribuir nem criar trabalhos derivados com base nestes dados, conteúdo ou recursos (na totalidade ou em parte), salvo se houver permissão explícita especificada pelos respectivos detentores de direitos.
-
-7.3 Você reconhece que o uso de tais aplicativos, dados, conteúdo ou recursos de terceiros pode estar sujeito a termos adicionais entre você e o terceiro em questão.
-
-8. Uso de APIs da Google
-
-8.1 APIs da Google
-
-8.1.1 Ao usar qualquer API para recuperar dados da Google, você reconhece que eles podem ser protegidos por direitos de propriedade intelectual de posse da Google ou dos terceiros que fornecem os dados (ou de pessoas ou empresas em nomes deles). O uso de tal API pode estar sujeito a termos de serviço adicionais. Não é permitido modificar, alugar, arrendar, emprestar, vender, distribuir nem criar trabalhos derivados baseados nesses dados (na totalidade ou em parte), salvo se permitido pelos termos de serviço pertinentes.
-
-8.1.2 Se você usar qualquer API para recuperar dados de um usuário a partir da Google, reconhece e concorda que deve recuperar dados somente com consentimento explícito do usuário e somente quando, e para os fins limitados aos quais, o usuário conceder permissão para fazê-lo.
-
-9. Rescisão do Contrato de licença
-
-9.1 O Contrato de licença continuará a se aplicar até que ocorra uma rescisão sua ou da Google, como definido abaixo.
-
-9.2 Caso queira rescindir o Contrato de licença, você pode fazer isto cessando o uso do Preview e de qualquer credencial de desenvolvedor relevante.
-
-9.3 A Google pode, a qualquer momento, rescindir o Contrato de licença, com ou sem causa, com uma notificação.
-
-9.4 O Contrato de licença será encerrado automaticamente sem aviso ou outras ações na ocorrência de:
-(A) a Google interromper o fornecimento do Preview ou de determinadas partes do Preview aos usuários no país em que você reside ou de onde o serviço é usado; e
-(B) a Google emitir uma versão de lançamento final do Android SDK.
-
-9.5 Quando o Contrato de licença é rescindido, a licença concedida a você no Contrato de licença é finalizada, todo o uso do Preview será interrompido e as provisões dos parágrafos 10, 11, 12 e 14 deverão permanecer indefinidamente.
-
-10. EXCLUSÕES
-
-10.1 VOCÊ COMPREENDE E CONCORDA EXPRESSAMENTE QUE O RISCO DO USO DO PREVIEW É EXCLUSIVAMENTE SEU E QUE O PREVIEW É FORNECIDO NA FORMA EM QUE SE ENCONTRA E COMO DISPONIBILIZADO, SEM GARANTIA DE QUALQUER TIPO DA GOOGLE.
-
-10.2 O USO DO PREVIEW E DE QUALQUER MATERIAL BAIXADO OU OBTIDO DE OUTRO MODO PELO USO DO PREVIEW ESTÁ A SEU CRITÉRIO E RISCO E VOCÊ É O ÚNICO RESPONSÁVEL POR QUALQUER DANO AO SEU SISTEMA OPERACIONAL OU OUTRO DISPOSITIVO OU PELA PERDA DE DADOS QUE RESULTEM DE TAL USO. SEM LIMITAR OS PRECEDENTES, VOCÊ ENTENDE QUE O PREVIEW NÃO É UMA VERSÃO ESTÁVEL E QUE PODE CONTER ERROS, DEFEITOS E VULNERABILIDADES DE SEGURANÇA QUE PODEM RESULTAR EM DANOS SIGNIFICANTES, INCLUINDO A PERDA IRRECUPERÁVEL OU COMPLETA DO USO DO SISTEMA DO COMPUTADOR OU DE OUTROS DISPOSITIVOS.
-
-10.3 A GOOGLE EXCLUI EXPRESSAMENTE TODAS AS GARANTIAS E CONDIÇOES DE QUALQUER TIPO, EXPRESSAS OU IMPLÍCITAS, INCLUINDO, MAS NÃO LIMITADO A, GARANTIAS E CONDIÇÕES DE COMERCIALIZAÇÃO IMPLÍCITAS, ADEQUAÇÃO A UMA FINALIDADE PARTICULAR E A NÃO VIOLAÇÃO.
-
-11. LIMITAÇÃO DE RESPONSABILIDADE
-
-11.1 VOCÊ COMPREENDE E CONCORDA EXPRESSAMENTE QUE A GOOGLE, SUAS SUBSIDIÁRIAS, AFILIADAS E SEUS LICENCIADORES NÃO SERÃO RESPONSABILIZADOS POR VOCÊ SOB QUALQUER TEORIA DE RESPONSABILIDADE POR QUAISQUER DANOS, SEJAM ELES DIRETOS, INDIRETOS, INCIDENTAIS, ESPECIAIS, CONSEQUENCIAIS OU DE EXEMPLO QUE POSSAM INCORRER, INCLUINDO QUALQUER PERDA DE DADOS, INDEPENDENTE DE AVISO À GOOGLE OU A SEUS REPRESENTANTES OU DA NECESSIDADE DE AVISO SOBRE A POSSIBILIDADE DA INCORRÊNCIA DE TAIS PERDAS.
-
-12. Indenização
-
-12.1 Ao limite máximo permitido por lei, você concorda em defender, indenizar e isentar a Google, suas afiliadas e respectivos conselheiros, diretores, empregados e agentes com relação a todas e quaisquer reivindicações, ações, processos ou procedimentos, bem como todas e quaisquer perdas, responsabilidades, danos, custos e despesas (incluindo honorários advocatícios) decorrentes ou provenientes de: (a) seu uso do Preview, (b) qualquer aplicativo desenvolvido no Preview que infrinja direitos de propriedade intelectual de qualquer pessoa, difame qualquer pessoa ou viole seus direitos de publicidade ou privacidade e (c) qualquer não cumprimento deste Contrato de licença.
-
-13. Mudanças no Contrato de licença
-
-13.1 A Google pode realizar mudanças no Contrato de licença à medida que distribui novas versões do Preview. Quando essas mudanças forem realizadas, a Google fará uma nova versão do Contrato de licença disponível no site em que o Preview estiver disponível.
-
-14. Termos legais gerais
-
-14.1 Esse Contrato de licença constitui o contrato legal integral entre você e a Google e rege o uso do Preview (excluindo quaisquer serviços que a Google possa fornecer a você sob um contrato escrito em separado), e substitui inteiramente quaisquer contratos anteriores entre você e a Google em relação ao Preview.
-
-14.2 Você concorda que, se a Google não exercer nem impetrar qualquer direito ou recurso legal que esteja contido no Contrato de licença (ou que a Google detenha direitos nos termos de qualquer lei aplicável), não se considerará esse fato como uma renúncia formal aos direitos da Google e esses direitos ou recursos continuarão disponíveis à Google.
-
-14.3 Se qualquer tribunal de justiça que tiver a competência para decidir sobre esse tema determinar que qualquer cláusula do Contrato de licença é inválida, tal cláusula será removida do contrato sem afetar as cláusulas restantes ou sua vigência. As cláusulas restantes do Contrato de licença continuarão válidas e obrigatórias.
-
-14.4 Você reconhece e concorda que cada membro do grupo de empresas das quais a Google é a empresa controladora deve ser beneficiário terceiro do Contrato de licença e que essas outras empresas terão o poder de aplicar diretamente, e apoiar-se em, qualquer cláusula do Contrato de licença que confira um direito (ou direitos em favor) deles. Além disso, nenhuma outra pessoa nem empresa deve ser beneficiário terceiro do Contrato de licença.
-
-14.5 RESTRIÇÕES DE EXPORTAÇÃO. O PREVIEW ESTÁ SUJEITO ÀS LEIS E NORMAS DE EXPORTAÇÃO DOS ESTADOS UNIDOS. VOCÊ DEVE CUMPRIR TODAS AS LEIS E NORMAS DOMÉSTICAS E INTERNACIONAIS QUE SE APLICAREM AO PREVIEW. ESSAS LEIS INCLUEM RESTRIÇÕES SOBRE DESTINOS, USUÁRIOS FINAIS E USO FINAL.
-
-14.6 O Contrato de licença não pode ser atribuído nem transferido por você sem a aprovação prévia por escrito da Google. Qualquer tentativa de atribuição sem a aprovação será inválida. Você não deve delegar as próprias responsabilidades ou obrigações nos termos do Contrato de licença sem aprovação prévia por escrito da Google.
-
-14.7 O Contrato de licença e sua relação com a Google nos termos do contrato serão regidos pelas leis do estado da Califórnia sem considerar conflitos de disposições legais. Você e a Google concordam em se submeter à competência exclusiva dos tribunais localizados na comarca de Santa Clara, Califórnia, para dirimir quaisquer questões legais decorrentes do Contrato de licença. Não obstante a isso, você concorda que a Google continua habilitada a impetrar medidas cautelares (ou mecanismo legal urgente equivalente) em qualquer jurisdição.
-  </div><!-- sdk terms -->
-
-
-
-    <div id="sdk-terms-form">
-      <p>
-        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
-        <label id="agreeLabel" for="agree">Li e concordo com todos os termos e condições expressos acima</label>
-      </p>
-      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
-    </div>
-
-
-  </div><!-- end TOS -->
-
-
-  <div id="landing">
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Neste documento</h2>
-      <ol>
-        <li><a href="#sdk">Android 6.0 SDK</a></li>
-        <li><a href="#docs">Documentação do desenvolvedor</a></li>
-        <li><a href="#images">Imagens do sistema de hardware</a></li>
-      </ol>
-
-     <h2>Legacy downloads</h2>
-        <ol>
-           <li><a href="{@docRoot}preview/download_mp1.html">Developer Preview 1</a></li>
-		   <li><a href="{@docRoot}preview/download_mp2.html">Developer Preview 2</a></li>
-        </ol>
-  </div>
-</div>
-
-
-<p>
-  O Android M Preview SDK inclui ferramentas de desenvolvimento, arquivos de sistema do Android e arquivos da biblioteca
- para ajudar você a testar o aplicativo e novas APIs da próxima versão da plataforma. Este documento
- descreve como adquirir os componentes disponíveis para download da prévia para o teste do aplicativo.
-</p>
-
-
-<h2 id="sdk">Android 6.0 SDK</h2>
-
-<p>
-  O Preview SDK está disponível para download no <a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>. Para obter mais informações
- sobre o download e a configuração do Preview SDK, consulte <a href="{@docRoot}preview/setup-sdk.html#downloadSdk">Configuração do Preview SDK</a>.
-</p>
-
-
-<h2 id="docs">Documentação do desenvolvedor</h2>
-
-<p>
-  O pacote de download da documentação do desenvolvedor fornece informações de referência de API detalhadas e um relatório de diferença de API para a prévia.
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Description</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="docs-dl">
-    <td>Android M Preview 3<br>Developer Docs</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >m-preview-3-developer-docs.zip</a><br>
-      MD5: d99b14b0c06d31c8dfecb25072654ca3<br>
-      SHA-1: 9cefeeda07676130da606a1796e1c00fffc667c1
-    </td>
-  </tr>
-</table>
-
-
-<h2 id="images">Imagens do sistema de hardware</h2>
-
-<p>
-  Essas imagens do sistema permitem que você instale uma versão de prévia da plataforma em um dispositivo físico
-para fins de teste. Ao configurar um dispositivo com uma dessas imagens, é possível instalar e testar o aplicativo
- para verificar o seu desempenho na próxima versão da plataforma. O processo de instalação de uma imagem do sistema
- em um dispositivo <em>remove todos os dados do dispositivo</em>. Portanto, deve-se realizar um backup dos dados
- antes de instalar uma imagem do sistema.
-</p>
-
-<p class="warning">
-  <b>Aviso:</b> as seguintes imagens do sistema Android são prévias e estão sujeitas a alterações. O uso
- dessas imagens do sistema são governadas pelo Contrato de licença do Android SDK Preview. As imagens do sistema do Android Preview
- não são versões estáveis e podem conter erros e defeitos que podem resultar
- em danos aos sistemas do computador, aos dispositivos e aos dados. As imagens do sistema Android Preview
- não estão sujeitas ao mesmo teste do sistema operacional de fábrica e podem fazer com que o telefone e aplicativos e os serviços
- instalados parem de funcionar.
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Device</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="hammerhead">
-    <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >hammerhead-MPA44I-preview-2ebbc049.tgz</a><br>
-      MD5: 91a924fb0c9f8e716e3b4c9954fd0dbb<br>
-      SHA-1: 2ebbc049b68c4da8baeee3e42bb94d7a965ba4a3
-    </td>
-  </tr>
-  <tr id="shamu">
-    <td>Nexus 6 <br>"shamu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >shamu-MPA44I-preview-62b9c486.tgz</a><br>
-      MD5: ac6e58da86125073d9c395257fd42664<br>
-      SHA-1: 62b9c486fd7a5020e228d53ca5acd5c1857e48ff
-    </td>
-  </tr>
-  <tr id="volantis">
-    <td>Nexus 9 <br>"volantis"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >volantis-MPA44I-preview-5c30a6e2.tgz</a><br>
-      MD5: 7f83768757913d3fea945a661020d185<br>
-      SHA-1: 5c30a6e2acd11a81f4105b12d23ff654f534f699
-    </td>
-  </tr>
-
-  <tr id="fugu">
-    <td>Nexus Player <br>"fugu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >fugu-MPA44I-preview-2860040a.tgz</a><br>
-      MD5: 438da8d37da9e341a69cfb16a4001ac5<br>
-      SHA-1: 2860040a326582f1ff5f702bf9a1ef002717fc98
-    </td>
-  </tr>
-
-</table>
-
-<h3 id="install-image">Instalar uma imagem no dispositivo</h3>
-
-<p>
-  Para usar uma imagem de dispositivo para testes, deve-se instalá-lo em um dispositivo compatível. Siga
- as instruções abaixo para instalar uma imagem de sistema.
-</p>
-
-<ol>
-  <li>Faça o download e descompacte um dos pacotes de imagem do sistema listados aqui.</li>
-  <li>Faça um backup dos dados do dispositivo que deseja preservar.</li>
-  <li>Siga as instruções em
- <a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
-  para programar em flash a imagem no dispositivo.</li>
-</ol>
-
-<p class="note">
-  <strong>Observação:</strong> ao programar em flash a imagem do sistema de prévia no dispositivo de desenvolvimento,
- ele é atualizado automaticamente com o próximo lançamento da prévia por meio de atualizações over-the-air (OTA).
-</p>
-
-<h3 id="revertDevice">Reverter um dispositivo para as especificações de fábrica</h3>
-
-<p>
-  Caso queira desinstalar a prévia e reverter o dispositivo para as especificações de fábrica, acesse
- <a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a> e
- faça o download da imagem que deseja programar em flash no dispositivo. Siga as instruções nesta página
- para programar em flash a imagem no dispositivo.
-</p>
-
-  </div><!-- landing -->
-
-</div><!-- relative wrapper -->
-
-
-
-<script>
-  var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
-  function onDownload(link) {
-
-    $("#downloadForRealz").html("Download " + $(link).text());
-    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
-
-    $("#tos").fadeIn('fast');
-    $("#landing").fadeOut('fast');
-
-    return true;
-  }
-
-
-  function onAgreeChecked() {
-    /* verify that the TOS is agreed */
-    if ($("input#agree").is(":checked")) {
-      /* reveal the download button */
-      $("a#downloadForRealz").removeClass('disabled');
-    } else {
-      $("a#downloadForRealz").addClass('disabled');
-    }
-  }
-
-  function onDownloadForRealz(link) {
-    if ($("input#agree").is(':checked')) {
-    /*
-      $("#tos").fadeOut('fast');
-      $("#landing").fadeIn('fast');
-    */
-
-      ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
-
-    /*
-      location.hash = "";
-    */
-      return true;
-    } else {
-      return false;
-    }
-  }
-
-  $(window).hashchange( function(){
-    if (location.hash == "") {
-      location.reload();
-    }
-  });
-
-</script>
diff --git a/docs/html-intl/intl/pt-br/preview/features/app-linking.jd b/docs/html-intl/intl/pt-br/preview/features/app-linking.jd
deleted file mode 100644
index 17a9896..0000000
--- a/docs/html-intl/intl/pt-br/preview/features/app-linking.jd
+++ /dev/null
@@ -1,123 +0,0 @@
-page.title=Links de aplicativos
-page.image=images/cards/card-app-linking_2x.png
-page.keywords=applinking, deeplinks, intents
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Neste documento</h2>
-      <ol>
-        <li><a href="#web-assoc">Declarar uma associação de site</a></li>
-        <li><a href="#verfy-links">Solicitar verificação de link de aplicativo</a></li>
-        <li><a href="#user-manage">Gerenciar configurações de link de aplicativo</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  O sistema de intenções do Android é um mecanismo flexível para possibilitar que aplicativos lidem com conteúdos e solicitações.
-  Vários aplicativos podem declarar padrões de URI correspondentes em seus filtros de intenções. Quando um usuário clica em um
- link da web que não tem um manipulador de inicialização padrão, a plataforma pode exibir um diálogo para
- o usuário selecionar entre uma lista de aplicativos que declararam filtros de intenções correspondentes.
-</p>
-
-<p>
-  O Android M Developer Preview introduz suporte para links de aplicativos, que aprimora
- a manipulação de links existentes, permitindo que desenvolvedores de aplicativos associem um aplicativo a um domínio da web pertencente a eles. Quando
- os desenvolvedores criam esta associação, a plataforma pode automaticamente determinar o aplicativo padrão usado
- para lidar com um link da web particular e ignorar a solicitação aos usuários.
-</p>
-
-
-<h2 id="web-assoc">Declarar uma associação de site</h2>
-
-<p>
-  Os donos de sites da web devem declarar as associações aos aplicativos para estabelecer um link de aplicativo. O dono do site
- declara a relação com um aplicativo hospedando um arquivo JSON chamado {@code statements.json} no
- local bem conhecido no domínio:
-</p>
-
-<pre>http://&lt;domain&gt;:&lt;optional port&gt;/.well-known/statements.json</pre>
-
-<p class="note">
-  <strong>Observação:</strong>
-  durante o período do M Developer Preview, o arquivo JSON é verificado por meio de protocolo http. Para
- o lançamento oficial da plataforma, o arquivo é verificado com o protocolo http criptografado.
-</p>
-
-<p>
-  Este arquivo JSON indica o aplicativo do Android que deve ser usado como o manipulador padrão para URLs
- neste domínio. Ele identifica o aplicativo com base nestes campos:
-</p>
-
-<ul>
-  <li>{@code package_name}: o nome do pacote declarado no manifesto do arquivo.</li>
-
-  <li>{@code sha256_cert_fingerprints}: a impressão digital SHA256 do certificado assinado do aplicativo.
-    É possível usar o Java Keytool para gerar a impressão digital usando o seguinte comando:
-    <pre>keytool -list -v -keystore my-release-key.keystore</pre>
-  </li>
-</ul>
-
-<p>
-  A seguinte lista de arquivos exibe um exemplo de conteúdo e formato
- de um arquivo {@code statements.json}:
-</p>
-
-<pre>
-[{
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": "<strong>&lt;package name&gt;</strong>",
-    "sha256_cert_fingerprints": ["<strong>6C:EC:C5:0E:34:AE....EB:0C:9B</strong>"]
-  }
-}]
-</pre>
-
-
-<h2 id="verfy-links">Solicitar verificação de link de aplicativo</h2>
-
-<p>
-  Um aplicativo pode solicitar que a plataforma verifique automaticamente quaisquer links de aplicativo relacionados aos arquivos {@code statements.json}
- hospedados nos respectivos domínios da web que são definidos pelos nomes de host
- nos elementos de dados dos seus filtros de intenções. Para solicitar a verificação de link de aplicativo, adicione um atributo {@code android:autoVerify}
- a cada filtro de intenção desejado no manifesto, como exibido no seguinte fragmento
- de código do manifesto:
-</p>
-
-<pre>
-&lt;activity ...&gt;
-    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-        &lt;action android:name="android.intent.action.VIEW" /&gt;
-        &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-        &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-        &lt;data android:scheme="http" android:host="www.android.com" /&gt;
-        &lt;data android:scheme="https" android:host="www.android.com" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/activity&gt;
-</pre>
-
-<p>
-  Quando o atributo {@code android:autoVerify} está presente em um manifesto do aplicativo, a plataforma
- tenta verificar os links do aplicativo quando o aplicativo é instalado. Se a plataforma não conseguir
- verificar os links do aplicativo, o aplicativo não será definido como o aplicativo preferencial para lidar com os links da web. Na próxima vez
- que um usuário tentar abrir um dos links, a plataforma voltará a apresentar ao usuário
- uma caixa de diálogo.
-</p>
-
-<p class="note">
-  <strong>Observação:</strong> no teste, há chances de ocorrer um falso positivo se a verificação
- falhar, mas o usuário explicitamente permitiu que o aplicativo abrisse links sem solicitar, usando
- o aplicativo do sistema Settings (Configurações). Neste caso, nenhum diálogo é exibido e o link vai direto para o
- aplicativo, mas somente devido à configuração do usuário, e não porque a verificação foi bem-sucedida.
-</p>
-
-
-<h2 id="user-manage">Gerenciar configurações de link de aplicativo</h2>
-
-<p>
-  Os usuários podem alterar as configurações de link de aplicativo para que os URLs sejam tratados da maneira que preferirem. É possível revisar e
- gerenciar os links de aplicativo no aplicativo Settings (Configurações) do sistema, em <strong>Settings (Configurações) &gt; Apps (Aplicativos) &gt; App Info (Informações do aplicativo) &gt;
- Open by default (Abrir por padrão)</strong>.
-</p>
diff --git a/docs/html-intl/intl/pt-br/preview/features/runtime-permissions.jd b/docs/html-intl/intl/pt-br/preview/features/runtime-permissions.jd
deleted file mode 100644
index 762e1ae..0000000
--- a/docs/html-intl/intl/pt-br/preview/features/runtime-permissions.jd
+++ /dev/null
@@ -1,794 +0,0 @@
-page.title=Permissões
-page.tags=previewresources, androidm
-page.keywords=permissions, runtime, preview
-page.image={@docRoot}preview/images/permissions_check.png
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Visualização rápida</h2>
-    <ul>
-      <li>Se o aplicativo direciona o M Preview SDK, ele indica aos usuários para conceder
- permissões no tempo de execução, em vez de tempo de instalação.</li>
-      <li>Os usuários podem revogar as permissões a qualquer momento na tela de configurações
-do aplicativo.</li>
-      <li>O aplicativo precisa verificar se tem as permissões necessárias
-sempre que for executado.</li>
-    </ul>
-
-    <h2>Neste documento</h2>
-    <ol>
-      <li><a href="#overview">Visão geral</a></li>
-      <li><a href="#coding">Codificação para permissões de tempo de execução</a></li>
-      <li><a href="#testing">Teste de permissões de tempo de execução</a></li>
-      <li><a href="#best-practices">Práticas recomendadas</a></li>
-    </ol>
-
-<!--
-  <h2>Related Samples</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-
-<!--
-  <h2>See also</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-  </div> <!-- qv -->
-</div> <!-- qv-wrapper -->
-
-
-<p>
-  O M Developer Preview introduz um novo modelo de permissões de aplicativo
-que agiliza o processo de instalação e atualização de aplicativos para os usuários. Se um aplicativo
- que está sendo executado no M Preview suporta o novo modelo de permissões, o usuário não precisa conceder
- permissões ao instalar ou atualizar o aplicativo. Em vez disso, o aplicativo
- solicita as permissões à medida que precisar e o sistema exibe um diálogo
- ao usuário pedindo a permissão.
-</p>
-
-<p>
-  Se um aplicativo suportar o novo modelo de permissões, ele
- ainda poderá ser instalado e executado em versões mais antigas do Android, usando o antigo modelo
- de permissões nesses dispositivos.
-</p>
-
-<h2 id="overview">
-  Visão geral
-</h2>
-
-<p>
-  Com o M Developer Preview, a plataforma introduz um novo modelo
- de permissões. Eis um resumo dos componentes essenciais deste novo modelo:
-</p>
-
-<ul>
-  <li>
-    <strong>Declaração de permissões:</strong> O aplicativo declara todas
- as permissões necessárias no manifesto, como nas plataformas anteriores do Android.
-  </li>
-
-  <li>
-    <strong>Grupos de permissão:</strong> As permissões são divididas em
-<em>grupos de permissão</em>, baseados na funcionalidade. Por exemplo: o grupo de permissão
- <code>CONTACTS</code> contém permissões para ler e escrever
- informações de perfil e contatos do usuário.
-  </li>
-
-  <li>
-    <p><strong>Permissões limitadas concedidas no tempo de instalação:</strong> Quando o usuário
- instala ou atualiza o aplicativo, o sistema concede todas
- as permissões que o aplicativo solicita que estão em {@link
- android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}.
-    Por exemplo: as permissões de internet e despertador estão em {@link
- android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}. Portanto,
- as permissões são concedidas automaticamente no tempo de instalação.
-    </p>
-
-    <p>O sistema pode também conceder as permissões de sistema e assinatura de aplicativo,
- como descrito em <a href="#system-apps">permissões de assinatura
- e aplicativos do sistema</a>. O usuário <em>não</em> é alertado a conceder permissões
- no tempo de instalação.</p>
-  </li>
-
-  <li>
-    <strong>O usuário concede permissões no tempo de execução:</strong> Quando um aplicativo solicita
- uma permissão, o sistema exibe um diálogo ao usuário e, em seguida,
- chama a função de retorno de chamada do aplicativo para notificá-lo se a permissão foi concedida. Se um
- usuário concede uma permissão, o aplicativo recebe todas
- as permissões na área funcional desta permissão que foram declaradas no manifesto do aplicativo.
-  </li>
-
-</ul>
-
-<p>
-  Este modelo de permissões altera a forma como o aplicativo se comporta diante os recursos
- que precisam de permissões. Eis um resumo das práticas de desenvolvimento que devem
- ser seguidas para ajustar para este modelo:
-</p>
-
-<ul>
-
-  <li>
-    <strong>Sempre verificar as permissões:</strong> Quando o aplicativo
- precisa realizar uma ação que requer uma permissão, ele deve primeiro verificar
- se já a tem. Caso não tenha, ele solicita
- o concedimento desta permissão.
-  </li>
-
-  <li>
-    <strong>Lidar com falta de permissões dignamente:</strong> Se o aplicativo não
- recebe a permissão adequada, ele deve lidar com a falha de forma limpa.
-    Por exemplo, se a permissão é necessária para um recurso adicionado,
- o aplicativo pode desativar este recurso. Se a permissão for essencial
- para que o aplicativo funcione, ele desativará toda sua funcionalidade
- e informará ao usuário que precisa desta permissão.
-  </li>
-
-  <div class="figure" style="width:220px" id="fig-perms-screen">
-    <img src="{@docRoot}preview/features/images/app-permissions-screen_2x.png" srcset="{@docRoot}preview/features/images/app-permissions-screen.png 1x, {@docRoot}preview/features/images/app-permissions-screen_2x.png 2x" alt="" width="220">
-    <p class="img-caption">
-      <strong>Figura 1.</strong> Tela de permissões nas configurações do aplicativo.
-    </p>
-  </div>
-
-  <li>
-    <strong>As permissões são revogáveis:</strong> Os usuários podem revogar as permissões
- de um aplicativo a qualquer momento. Se um usuário desativar as permissões de um aplicativo,
- o aplicativo <em>não</em> é notificado. Novamente, o aplicativo deve verificar
- se tem todas as permissões necessárias antes de realizar qualquer ação restrita.
-  </li>
-</ul>
-
-<p class="note">
-  <strong>Observação:</strong> se um aplicativo direcionar o M Developer Preview, ele
- <em>deve</em> usar o novo modelo de permissões.
-</p>
-
-<p>
-  No momento do lançamento do M Developer Preview,
- nem todos os aplicativos Google implementam completamente o novo modelo de permissões. A Google está atualizando estes aplicativos
- durante o curso do M Developer Preview para respeitar adequadamente a configuração
- de alternação de permissões.
-</p>
-
-<p class="note">
-  <strong>Observação:</strong> se o aplicativo tiver a própria superfície de API,
- não represente permissões sem antes garantir que o autor da chamada tenha as permissões necessárias
- para acessar esses dados.
-</p>
-
-<h3 id="system-apps">
-  Permissões de assinatura e aplicativos do sistema
-</h3>
-
-<p>
-  Geralmente, quando um usuário instala um aplicativo, o sistema somente fornece ao aplicativo o
- {@link android.content.pm.PermissionInfo#PROTECTION_NORMAL
- PROTECTION_NORMAL}. No entanto, sob algumas circunstâncias, o sistema concede
- ao aplicativo mais permissões:
-</p>
-
-<ul>
-  <li>Se um aplicativo faz parte da imagem do sistema, ele recebe automaticamente
- todas as permissões listadas no manifesto.
-  </li>
-
-  <li>Se o aplicativo solicitar as permissões no manifesto que está em {@link
- android.content.pm.PermissionInfo#PROTECTION_SIGNATURE PROTECTION_SIGNATURE},
- e estiver assinado com o mesmo certificado que o aplicativo que declarou essas permissões,
- o sistema concederá essas permissões na instalação ao aplicativo
- que fez a solicitação.
-  </li>
-</ul>
-
-<p>
-  Em ambos os casos, o usuário ainda pode revogar as permissões a qualquer
- momento acessando a tela de <strong>configurações</strong> do sistema e escolhendo <strong>Aplicativos
- &gt;</strong> <i>app_name</i> <strong>&gt; Permissões</strong>. O aplicativo
- deve continuar com a verificação das permissões no tempo de execução e solicitá-las
- se necessário.
-</p>
-
-<h3 id="compatibility">
-  Compatibilidade anterior e posterior
-</h3>
-
-<p>
-  Se um aplicativo não direciona para o M Developer Preview, ele deve continuar a usar
- o modelo antigo de permissões mesmo nos dispositivos M Preview. Quando o usuário instala
- o aplicativo, o sistema pede para que ele conceda todas as permissões
- listadas no manifesto do aplicativo.
-</p>
-
-<p class="note">
-  <strong>Observação:</strong> em dispositivos que são executados no M Developer Preview,
- um usuário pode desativar as permissões para qualquer aplicativo (incluindo aplicativos de legado)
- na tela de configurações do aplicativo. Se um usuário desativa as permissões de um aplicativo de legado, o sistema
- silenciosamente desativa a funcionalidade adequada. Quando um aplicativo tentar realizar
- uma operação que requer esta permissão, a operação não necessariamente causará
- uma exceção. Em vez disso, ele retornará um conjunto de dados vazio,
- sinalizará um erro ou exibirá um comportamento inesperado. Por exemplo, caso queira
- consultar um calendário sem permissão, o método retorna um conjunto de dados vazio.
-</p>
-
-<p>
-  Se instalar um aplicativo usando o novo modelo de permissões em um dispositivo
- que não está executando o M Preview,
- o sistema o tratará da mesma forma que qualquer outro aplicativo: o sistema pedirá
- para que o usuário conceda todas as permissões declaradas no momento da instalação.
-</p>
-
-<p class="note">
-  <strong>Observação:</strong> para a liberação de prévia, deve-se definir a versão mínima de SDK
- para o M Preview SDK para compilar com o SDK de prévia. Isto significa que você
- não poderá testar tais aplicativos em plataformas mais antigas durante a prévia
- de desenvolvedor.
-</p>
-
-<h3 id="perms-vs-intents">Permissões versus intenções</h3>
-
-<p>
-  Em vários casos, é possível escolher entre duas maneiras para que o aplicativo realize
- uma tarefa. É possível fazer com que o aplicativo solicite uma permissão para realizar a operação
- por conta própria. Alternativamente, é possível fazer com que o aplicativo use uma intenção para que outro aplicativo
- realize a tarefa.
-</p>
-
-<p>
-  Por exemplo, imagine que o aplicativo precisa da função de tirar fotos com
- a câmera do dispositivo. O aplicativo pode solicitar a permissão
-<code>android.permission.CAMERA</code>, que permite que ele acesse
- a câmera diretamente. O aplicativo então usará as APIs da câmera
- para controlar a câmera e tirar uma foto. Esta abordagem fornece ao aplicativo
- controle completo sobre o processo de fotografia e permite
- que você incorpore a IU da câmera.
-</p>
-
-<p>
-  No entanto, caso não precise de tal controle, é possível apenas usar uma intenção {@link
- android.provider.MediaStore#ACTION_IMAGE_CAPTURE ACTION_IMAGE_CAPTURE}
- para solicitar uma imagem. Ao iniciar a intenção, o usuário deve escolher
- um aplicativo de câmera (se não houver um aplicativo padrão de câmera)
- para tirar a foto. O aplicativo da câmera retorna a imagem ao método {@link
- android.app.Activity#onActivityResult onActivityResult()} do aplicativo.
-</p>
-
-<p>
-  De forma semelhante, caso precise realizar uma ligação,
- acessar os contatos do usuário etc., é possível fazer estas ações criando uma intenção adequada
- ou solicitar a permissão e o acesso aos objetos adequados diretamente. Essas são
- as vantagens e desvantagens de cada abordagem.
-</p>
-
-<p>
-  Se usar permissões:
-</p>
-
-<ul>
-  <li>O aplicativo tem controle completo sobre a experiência do usuário ao realizar
- a operação. No entanto, esse controle amplo é adicionado à complexidade da tarefa,
- levando em consideração a necessidade de projetar uma IU adequada.
-  </li>
-
-  <li>O usuário deve fornecer a permissão uma vez: na primeira realização
- da operação. Depois, o aplicativo pode realizar a operação sem
- precisar de mais interações do usuário. No entanto,
- se o usuário não conceder a permissão (ou revogá-la posteriormente),
- o aplicativo não conseguirá realizar a operação.
-  </li>
-</ul>
-
-<p>
-  Se usar uma intenção:
-</p>
-
-<ul>
-  <li>Você não terá que projetar a IU para a operação. O aplicativo que lida com
- a intenção fornece a IU. No entanto, isso significa que você não terá controle
- completo sobre a experiência de usuário. O usuário poderá interagir com um aplicativo
- que você nunca viu.
-  </li>
-
-  <li>Se o usuário não tem um aplicativo padrão para a operação,
- o sistema pede para que o usuário escolha um aplicativo.
- Se o usuário não designar um manipulador padrão,
- ele terá que acessar uma caixa de diálogo extra sempre que realizar a operação.
-  </li>
-</ul>
-
-<h2 id="coding">Codificação para permissões de tempo de execução</h2>
-
-<p>
-  Se um aplicativo direciona o novo M Developer Preview, ele deve usar o novo
- modelo de permissões. Isto significa que, além de declarar as permissões necessárias no manifesto,
- deve-se também verificar se o aplicativo
- tem as permissões no tempo de execução e,
- caso ainda não as tenha, solicitá-las.
-</p>
-
-<h3 id="enabling">
-  Possibilitar um novo modelo de permissões
-</h3>
-
-<p>
-  Para possibilitar o modelo de permissões do M Developer Preview, configure o atributo
-<code>targetSdkVersion</code> do aplicativo para <code>"MNC"</code> e
-<code>compileSdkVersion</code> para <code>"android-MNC"</code>. Isto ativará
- todos os novos recursos de permissão.
-</p>
-
-<p>
-  Para a liberação de uma prévia, deve-se definir <code>minSdkVersion</code> para
-<code>"MNC"</code> para compilar com o SDK de prévia.
-</p>
-
-<h3 id="m-only-perm">
-  Designar uma permissão somente para o M Preview
-</h3>
-
-<p>
-  É possível usar o novo elemento <code>&lt;uses-permission-sdk-m&gt;</code> no manifesto do aplicativo
- para indicar que uma permissão é necessária apenas no M Developer Preview. Se você
- declarar uma permissão desta maneira, sempre que o aplicativo for instalado
- em um dispositivo mais antigo, o sistema não solicitará ao usuário
- nem concederá a permissão ao aplicativo. Usando o elemento <code>&lt;uses-permission-sdk-m&gt;</code>
-, é possível adicionar novas permissões
- a versões atualizadas do aplicativo sem forçar os usuários a conceder permissões
- ao instalar a atualização.
-</p>
-
-<p>
-  Se o aplicativo está sendo executado em um dispositivo com M Developer Preview, o
-<code>&lt;uses-permission-sdk-m&gt;</code> se comporta da mesma forma que
-<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>.
-  O sistema não solicita ao usuário que conceda quaisquer permissões ao instalar o aplicativo
- e o aplicativo solicita as permissões à medida que forem necessárias.
-</p>
-
-<h3 id="prompting">
-  Solicitação de permissões
-</h3>
-
-<p>
-  Se o aplicativo usa o novo modelo de permissões do M Developer Preview,
- o usuário não recebe solicitações para conceder todas as permissões quando o aplicativo é iniciado pela primeira vez em um dispositivo
- que está sendo executado no M Preview. Em vez disso, o aplicativo solicita as permissões à medida
- que forem necessárias. Quando um aplicativo solicita uma permissão, o sistema exibe uma caixa de diálogo
- ao usuário.
-</p>
-
-<p>
-  Se o aplicativo executar em um dispositivo que tem SDK 22 ou inferior,
- ele usará o antigo modelo de permissões. Quando o usuário instala o aplicativo, ele é solicitado a conceder
- todas as permissões que o aplicativo lista no manifesto,
- exceto as permissões que forem marcadas com <code>&lt;uses-permission-sdk-m&gt;</code>.
-</p>
-
-<h4 id="check-platform">Verifique em qual plataforma o aplicativo está sendo executado</h4>
-
-<p>
-  Este modelo de permissões é suportado apenas em dispositivos que estão executando
- o M Developer Preview. Antes de chamar qualquer um destes métodos,
- o aplicativo deve verificar em qual plataforma está sendo executado
- verificando o valor de {@link android.os.Build.VERSION#CODENAME
- Build.VERSION.CODENAME}. Se o dispositivo estiver sendo executado no M Developer Preview,
- {@link android.os.Build.VERSION#CODENAME CODENAME} será <code>"MNC"</code>.
-</p>
-
-<h4 id="check-for-permission">Verifique se o aplicativo tem a permissão necessária</h4>
-
-<p>Quando o usuário tenta fazer algo que requer uma permissão,
- o aplicativo verifica se tem a permissão para realizar esta operação. Para fazer isto,
- o aplicativo chama
- <code>Context.checkSelfPermission(<i>permission_name</i>)</code>. O aplicativo
- deve realizar isto para verificar se sabe que o usuário já concedeu esta permissão,
- levando em consideração que o usuário pode revogar
- as permissões do aplicativo a qualquer momento. Por exemplo,
- se um usuário quiser usar um aplicativo para tirar uma foto, o aplicativo chamará
- <code>Context.checkSelfPermission(Manifest.permission.CAMERA)</code>.</p>
-
-<p class="table-caption" id="permission-groups">
-  <strong>Tabela 1.</strong> Permissões e grupos de permissões.</p>
-<table>
-  <tr>
-    <th scope="col">Grupo de permissões</th>
-    <th scope="col">Permissões</th>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CALENDAR</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CALENDAR</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.WRITE_CALENDAR</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CAMERA</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.CAMERA</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CONTACTS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_PROFILE</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_PROFILE</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.LOCATION</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.ACCESS_FINE_LOCATION</code>
-        </li>
-        <li>
-          <code>android.permission.ACCESS_COARSE_LOCATION</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.MICROPHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.RECORD_AUDIO</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.PHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_PHONE_STATE</code>
-        </li>
-        <li>
-          <code>android.permission.CALL_PHONE</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CALL_LOG</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CALL_LOG</code>
-        </li>
-        <li>
-          <code>com.android.voicemail.permission.ADD_VOICEMAIL</code>
-        </li>
-        <li>
-          <code>android.permission.USE_SIP</code>
-        </li>
-        <li>
-          <code>android.permission.PROCESS_OUTGOING_CALLS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SENSORS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.BODY_SENSORS</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.USE_FINGERPRINT</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SMS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.SEND_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_WAP_PUSH</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_MMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CELL_BROADCASTS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-</table>
-
-<h4 id="request-permissions">Solicitar permissões se necessário</h4>
-
-<p>Se o aplicativo já não tem a permissão necessária, ele chama o método
- <code>Activity.requestPermissions(String[], int)</code> para solicitar
- as permissões necessárias. O aplicativo passa
- as permissões que deseja e também um "código de solicitação" do inteiro.
-  Este método funciona de forma assíncrona: ele retorna imediatamente e,
- depois que o usuário responde à caixa de diálogo, o sistema chama
- o método de retorno de chamada do aplicativo com os resultados, passando o mesmo "código de solicitação" que o aplicativo passou
- para <code>requestPermissions()</code>.</p>
-
-  <p>O seguinte código verifica se o aplicativo tem a permissão
- para ler os contatos do usuário e solicita a permissão, se necessário:</p>
-
-<pre>
-if (checkSelfPermission(Manifest.permission.READ_CONTACTS)
-        != PackageManager.PERMISSION_GRANTED) {
-    requestPermissions(new String[]{Manifest.permission.READ_CONTACTS},
-            MY_PERMISSIONS_REQUEST_READ_CONTACTS);
-
-    // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
-    // app-defined int constant
-
-    return;
-}
-</pre>
-
-<h4 id="handle-response">Lidar com a resposta de solicitação das permissões</h4>
-
-<p>
-  Quando um aplicativo solicita as permissões, o sistema apresenta uma caixa de diálogo
- ao usuário. Quando o usuário responde, o sistema invoca o
- <code>Activity.onRequestPermissionsResult(int, String[], int[])</code>
- do aplicativo, passando a ele a resposta do usuário. O aplicativo precisa substituir este método. O retorno de chamada
- recebe o mesmo código de solicitação passado para
- <code>requestPermissions()</code>. Por exemplo, se um aplicativo solicita o acesso
- <code>READ_CONTACTS</code>, ele pode ter o seguinte
- método de retorno de chamada:
-</p>
-
-<pre>
-&#64;Override
-public void onRequestPermissionsResult(int requestCode,
-        String permissions[], int[] grantResults) {
-    switch (requestCode) {
-        case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
-            if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
-
-                // permission was granted, yay! do the
-                // calendar task you need to do.
-
-            } else {
-
-                // permission denied, boo! Disable the
-                // functionality that depends on this permission.
-            }
-            return;
-        }
-
-        // other 'switch' lines to check for other
-        // permissions this app might request
-    }
-}
-</pre>
-
-  <p>Se o usuário concede a permissão, o sistema fornece ao aplicativo todas as permissões
- que o manifesto do aplicativo lista para esta área funcional. Se o usuário negar a solicitação,
- deve-se tomar a ação adequada. Por exemplo, deve-se desativar
- quaisquer ações de menu que dependam desta permissão.
-  </li>
-</p>
-
-<p>
-  Quando o sistema pede para que o usuário conceda uma permissão, esse usuário tem a opção
- de dizer ao sistema para que não peça esta permissão novamente. Nesse caso,
- quando um aplicativo usa <code>requestPermissions()</code> para solicitar esta permissão,
- o sistema nega imediatamente. Neste caso, o sistema chama
- <code>onRequestPermissionsResult()</code> da mesma forma que faria se o usuário tivesse
- rejeitado explicitamente a solicitação novamente. Por este motivo, o aplicativo
- não pode presumir que uma interação direta com o usuário ocorreu.
-</p>
-
-<h2 id="testing">Teste de permissões de tempo de execução</h2>
-
-
-<p>
-  Se o aplicativo for direcionado para o M Developer Preview, deve-se testar
- se ele lida com as permissões corretamente. Não se pode presumir que o aplicativo
- terá qualquer permissão quando executado. Quando o aplicativo é iniciado pela primeira vez,
- é provável que não tenha permissões. O usuário pode revogar e restaurar permissões
- a qualquer momento.
-</p>
-
-<p>
-  Deve-se testar o aplicativo para garantir que ele se comporte corretamente em todas
- as situações de permissão. Com o M Preview SDK, fornecemos os novos comandos
- de <a href="{@docRoot}tools/help/adb.html">Android
-  Debug Bridge (adb)</a> para possibilitar que o aplicativo seja testado com quaisquer
- configurações de permissões necessárias.
-</p>
-
-<h3>
-  Novas opções e comandos adb
-</h3>
-
-<p>
-  As ferramentas da plataforma M Preview SDK fornecem vários comandos novos para permitir
- que você teste como o aplicativo lida com permissões.
-</p>
-
-<h4>
-  Instalar com permissões
-</h4>
-
-<p>
-  É possível usar a nova opção <code>-g</code> do comando <a href="{@docRoot}tools/help/adb.html#move"><code>adb
-  install</code></a>, que instala o aplicativo
- e fornece todas as permissões listadas em seu manifesto:
-</p>
-
-<pre class="no-pretty-print">
-$ adb install -g &lt;path_to_apk&gt;
-</pre>
-
-<h4>
-  Conceder e revogar permissões
-</h4>
-
-<p>
-  É possível usar os novos comandos do <a href="{@docRoot}tools/help/adb.html#pm">gerenciador
- de pacotes (pm)</a> de ADB para conceder e revogar as permissões de um aplicativo instalado.
- Esta funcionalidade pode ser útil para testes automatizados.
-</p>
-
-<p>
-  Para conceder uma permissão, use o comando <code>grant</code> do gerenciador de pacote:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<p>
-  Por exemplo: para conceder a permissão do pacote com.example.myapp para gravar áudios,
- use este comando:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant com.example.myapp android.permission.RECORD_AUDIO
-</pre>
-
-<p>
-  Para revogar uma permissão, use o comando <code>revoke</code> do gerenciador de pacote:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm revoke &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<h2 id="best-practices">Práticas recomendadas</h2>
-
-<p>
-  O novo modelo de permissões fornece aos usuários uma experiência mais suave
- e facilita a instalação de aplicativos, deixando-os mais confortáveis
- com o que os aplicativos estão fazendo. Sugerimos que você siga as práticas recomendadas para aproveitar
- todas as vantagens do novo modelo.
-</p>
-
-
-<h3 id="bp-what-you-need">Peça somente as permissões necessárias</h3>
-
-<p>
-  Sempre que você pede uma permissão, o usuário é forçado a tomar uma decisão.
-  Se o usuário negar a solicitação, a funcionalidade do aplicativo será reduzida.
-  Deve-se minimizar o número de solicitações realizadas.
-</p>
-
-<p>
-  Por exemplo: o aplicativo pode frequentemente adquirir a funcionalidade necessária usando
- uma <a href="{@docRoot}guide/components/intents-filters.html">intenção</a> em vez
- de solicitar permissões. Se o aplicativo precisa tirar fotos com a câmera do telefone,
- é possível usar uma intenção {@link
-  android.provider.MediaStore#ACTION_IMAGE_CAPTURE
- MediaStore.ACTION_IMAGE_CAPTURE}. Quando o aplicativo executa a intenção,
- o sistema pede para que o usuário escolha um aplicativo de câmera já instalado
- para tirar a foto.
-</p>
-
-<h3 id="bp-dont-overwhelm">
-  Não oprima o usuário
-</h3>
-
-<p>
-  Se você confrontar o usuário com várias solicitações de permissão de uma só vez,
- é possível que ele se sinta oprimido e saia do aplicativo.
- Em vez disso, deve-se solicitar as permissões somente quando necessário.
-</p>
-
-<p>
-  Em alguns casos, uma ou mais permissões podem ser absolutamente essenciais para o aplicativo.
- Nesta situação, faz sentido solicitar todas as permissões assim
- que o aplicativo é iniciado. Por exemplo: se você fizer um aplicativo de fotografia,
- ele precisará de acesso à câmera do dispositivo. Quando o usuário iniciar o aplicativo
- pela primeira vez, ele não se surpreenderá quando receber
- uma solicitação de permissão para usar a câmera. Mas, se o mesmo aplicativo tiver um recurso
- para compartilhar fotos com os contatos do usuário, <em>não</em> se deve
- pedir esta permissão na primeira inicialização. Em vez disso, espere o usuário tentar usar
- o recurso de compartilhamento para pedir a permissão.
-</p>
-
-<p>
-  Se o aplicativo fornecer um tutorial, faz sentido solicitar as permissões
- necessárias no final da sequência do tutorial.
-</p>
-
-<h3 id="bp-explain">
-  Explique o porquê da necessidade das permissões
-</h3>
-
-<p>
-  O diálogo de permissões exibido pelo sistema ao chamar
- <code>requestPermissions()</code> diz quais permissões o aplicativo requer,
- mas não diz o porquê. Em alguns casos, o usuário pode achar isto confuso.
-  É uma boa ideia explicar ao usuário o porquê da necessidade das permissões
- para o aplicativo antes de chamar <code>requestPermissions()</code>.
-</p>
-
-<p>
-  Por exemplo: um aplicativo de fotografia pode precisar usar serviços de localização
- para poder marcar as fotos geograficamente. Um usuário normal pode não entender que uma foto
- pode conter informações de localização e ficar confuso quando
- o aplicativo de fotografia quiser saber a localização. Portanto, neste caso, é uma boa ideia o aplicativo explicar
- ao usuário sobre este recurso <em>antes</em> de chamar
- <code>requestPermissions()</code>.
-</p>
-
-<p>
-  Uma maneira de fazer isto é incorporar estas solicitações em um tutorial do aplicativo. O tutorial pode exibir cada um dos recursos
- do aplicativo e, à medida que fizer isto,
- pode também explicar quais permissões são necessárias. Por exemplo, o tutorial do aplicativo de fotografia
- pode demonstrar os recursos de compartilhamento de fotos com os contatos e,
- em seguida, dizer ao usuário que ele precisa fornecer as permissões
- para que o aplicativo possa visualizar os contatos. O aplicativo pode então chamar <code>requestPermissions()</code> para solicitar
- ao usuário este acesso. É claro que nem todos os usuários seguirão o tutorial.
- Portanto, ainda é necessário verificar e solicitar as permissões durante
- a operação normal do aplicativo.
-</p>
diff --git a/docs/html-intl/intl/pt-br/preview/images/direct-share-screen.png b/docs/html-intl/intl/pt-br/preview/images/direct-share-screen.png
deleted file mode 100644
index a53a33e..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/direct-share-screen.png
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/images/direct-share-screen_2x.png b/docs/html-intl/intl/pt-br/preview/images/direct-share-screen_2x.png
deleted file mode 100644
index 87816ff..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/direct-share-screen_2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/images/fingerprint-screen.png b/docs/html-intl/intl/pt-br/preview/images/fingerprint-screen.png
deleted file mode 100644
index 77f9982..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/fingerprint-screen.png
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/images/fingerprint-screen_2x.png b/docs/html-intl/intl/pt-br/preview/images/fingerprint-screen_2x.png
deleted file mode 100644
index 4749bcf..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/fingerprint-screen_2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/images/m-preview-timeline-crop.png b/docs/html-intl/intl/pt-br/preview/images/m-preview-timeline-crop.png
deleted file mode 100644
index 724a6af..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/m-preview-timeline-crop.png
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/images/m-preview-timeline.png b/docs/html-intl/intl/pt-br/preview/images/m-preview-timeline.png
deleted file mode 100644
index e9a339e..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/m-preview-timeline.png
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/images/perf-test-frame-latency.png b/docs/html-intl/intl/pt-br/preview/images/perf-test-frame-latency.png
deleted file mode 100644
index 87d1cfc..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/perf-test-frame-latency.png
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/images/perf-test-framestats.png b/docs/html-intl/intl/pt-br/preview/images/perf-test-framestats.png
deleted file mode 100644
index 589a923..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/perf-test-framestats.png
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/images/text-selection.gif b/docs/html-intl/intl/pt-br/preview/images/text-selection.gif
deleted file mode 100644
index 1d82fc6..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/text-selection.gif
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/images/work-profile-screen.png b/docs/html-intl/intl/pt-br/preview/images/work-profile-screen.png
deleted file mode 100644
index c3e4e44..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/work-profile-screen.png
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/images/work-profile-screen_2x.png b/docs/html-intl/intl/pt-br/preview/images/work-profile-screen_2x.png
deleted file mode 100644
index 5dcf610..0000000
--- a/docs/html-intl/intl/pt-br/preview/images/work-profile-screen_2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html-intl/intl/pt-br/preview/index.jd b/docs/html-intl/intl/pt-br/preview/index.jd
deleted file mode 100644
index 6936718..0000000
--- a/docs/html-intl/intl/pt-br/preview/index.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=Android M Developer Preview
-page.tags="preview",
-meta.tags="preview, M preview", androidm
-fullpage=true
-section.landing=true
-header.hide=1
-footer.hide=1
-@jd:body
-
-<section class="dac-expand dac-hero dac-light" >
-  <div class="wrap">
-    <div class="cols dac-hero-content">
-      <div class="col-9of16 col-push-7of16 dac-hero-figure">
-        <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png" srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
-             {@docRoot}images/home/devices-hero_620px_2x.png 2x">
-      </div>
-      <div class="col-7of16 col-pull-9of16">
-        <h1 class="dac-hero-title">Android M Developer Preview</h1>
-        <p class="dac-hero-description">
-          Prepare-se para a próxima versão do Android. Teste os aplicativos no Nexus 5, 6, 9 e
- Player. Explore o que há de novo &mdash; <strong>permissões em tempo de execução</strong>,
- recursos de economia de energia <strong>aplicativo em espera</strong> e <strong>soneca</strong>, novas
- <strong>tecnologias de auxílio</strong> e muito mais.
-        </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/overview.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Comece!
-</a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-      </div>
-    </div>
-    <div class="dac-section dac-small">
-      <div class="resource-widget resource-flow-layout col-16"
-           data-query="collection:preview/landing/resources"
-           data-cardSizes="6x2"
-           data-maxResults="6"></div>
-    </div>
-  </div>
-</section>
-
-<section class="dac-section dac-gray"><div class="wrap">
-  <h1 class="dac-section-title">Recursos</h1>
-  <div class="dac-section-subtitle">
-    Informações essenciais para ajudar você a preparar os aplicativos para Android M.
-  </div>
-
-  <div class="resource-widget resource-flow-layout col-16"
-       data-query="collection:preview/landing/more"
-       data-cardSizes="6x6"
-       data-maxResults="16"></div>
-
-    <ul class="dac-section-links">
-      <li class="dac-section-link">
-        <a href="https://code.google.com/p/android-developer-preview/">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Relate problemas
-</a>
-      </li>
-      <li class="dac-section-link"><a href="http://g.co/dev/AndroidMDevPreview">
-        <span class="dac-sprite dac-auto-chevron"></span>
-        Junte-se à comunidade do G+
-</a>
-      </li>
-    </ul>
-  </div>
-</section>
-
diff --git a/docs/html-intl/intl/pt-br/preview/license.jd b/docs/html-intl/intl/pt-br/preview/license.jd
deleted file mode 100644
index 9e28b8a..0000000
--- a/docs/html-intl/intl/pt-br/preview/license.jd
+++ /dev/null
@@ -1,143 +0,0 @@
-page.title=Contrato de licença
-
-@jd:body
-
-<p>
-Para começar a usar o Android SDK Preview, você deve concordar com os seguintes termos e condições. 
-Como descrito abaixo, observe que isto é uma versão de prévia do Android SDK, sujeita a alterações, que deve ser usada a seu risco.  O Android SDK Preview não é uma versão estável e pode conter erros e defeitos que podem resultar em danos sérios aos sistemas de computador, aos dispositivos e aos dados.
-</p>
-
-<p>
-Este é o contrato de licença do Android SDK Preview (o “Contrato de Licença”).
-</p>
-<div class="sdk-terms" style="height:auto;border:0;padding:0;width:700px">
-1. Introdução
-
-1.1 O Android SDK Preview (que este Contrato de licença chama de "Preview", incluindo especificamente os arquivos de sistema do Android, APIs integradas e arquivos da biblioteca Preview, se e quando estiverem disponíveis) é licenciado por meio da concordância com os termos deste contrato. O Contrato de licença forma um vínculo contratual legal entre o contratante e a Google em relação ao uso do Preview.
-
-1.2 "Android" refere-se à pilha de software do Android para dispositivos, conforme disponibilizado no Projeto de código aberto do Android, localizado no URL a seguir: http://source.android.com/, atualizado periodicamente.
-
-1.3 "Google" refere-se à Google Inc, uma corporação de Delaware, com sede em 1600 Amphitheatre Parkway, Mountain View, CA 94043, Estados Unidos.
-
-2. Aceitação do Contrato de Licença
-
-2.1 A fim de usar o Preview, é necessário concordar com este Contrato de licença. O uso do Preview é proibido àqueles que não concordam com este Contrato de licença.
-
-2.2 Ao clicar em aceitar e/ou usar o Preview, você concorda com os termos do Contrato de licença
-
-2.3 É proibido o uso do Preview e a aceitação deste contrato pelo indivíduo que tenha impedimento legal sobre o recebimento do Preview sob as leis dos Estados Unidos ou de outros países, incluindo o país de residência ou no qual usa o Preview.
-
-2.4 Se for usar o Preview internamente na empresa ou organização, você deverá concordar com o vínculo com este contrato em nome do empregador ou de outra entidade e declarar e garantir que tem total autoridade legal para tanto. Se você não tem a autoridade necessária, não deve concordar com este contrato nem usar o Preview em nome do empregador ou de outra entidade.
-
-3. Licença do Preview da Google
-
-3.1 Sujeito aos termos do Contrato de licença, a Google confere uma licença limitada, revogável, livre de taxas, intransmissível, não sub-licenciável e não exclusiva para o uso apenas do Preview, pessoal ou internamente dentro da sua empresa ou organização, para fins de desenvolvimento de aplicativos executados na plataforma do Android.
-
-3.2 Você concorda que a Google ou terceiros detêm todos os direitos legais, títulos e interesses relativos ao Preview, incluindo quaisquer direitos de propriedade intelectual que subsistam no Preview. "Direitos de propriedade intelectual" se referem a todo e qualquer direito sob as leis de patentes, de direitos autorais, de segredo comercial, de marca registrada e todos os outros direitos de propriedade. A Google reserva todos os direitos não conferidos expressamente a você.
-
-3.3 O uso do Preview não é autorizado para qualquer finalidade não expressamente permitida por este Contrato de licença. Salvo na extensão exigida por licenças aplicáveis de terceiros, é proibido: (a) copiar (exceto para fins de cópia de segurança), modificar, adaptar, redistribuir, descompilar, fazer engenharia reversa, desmontar ou criar trabalhos derivados do Preview ou qualquer parte dele; ou (b) carregar qualquer parte do Preview em um aparelho celular ou outro dispositivo de hardware, exceto em computador pessoal, combinar qualquer parte do Preview com outros softwares ou distribuir qualquer software ou dispositivo que contenha uma parte do Preview.
-
-3.4 Você concorda que não tomará quaisquer medidas que possam causar ou resultar em fragmentação do Android, incluindo, sem limitar-se, a distribuição e a participação na criação ou na promoção, sob quaisquer formas, de um conjunto de desenvolvimento de software derivado do Preview.
-
-3.5 O uso, a reprodução e a distribuição de componentes do Preview licenciado sob licença de software de código aberto são regidos exclusivamente pelos termos daquela licença de software de código aberto, e não por este Contrato de licença. Você concorda em manter uma licença em bom estado para as licenças de software de código aberto sob todos os direitos concedidos e deter quaisquer ações que possam limitar, suspender ou romper tais direitos.
-
-3.6 Você concorda que a forma e a natureza do SDK que a Google fornece podem mudar sem aviso prévio e que as versões futuras do SDK podem ser incompatíveis com aplicativos desenvolvidos em versões anteriores do SDK. Você concorda que a Google pode cessar (permanente ou temporariamente) o fornecimento do Preview (ou quaisquer recursos dentro dele) a você ou a usuários em geral sob critério exclusivo da Google, sem aviso prévio.
-
-3.7 Nada neste Contrato de licença confere o direito de uso de quaisquer nomes comerciais, marcas comerciais, marcas de serviço, logomarcas, nomes de domínios e outros recursos de marcas especiais da Google.
-
-3.8 Você concorda que não removerá, ocultará nem alterará quaisquer observações de direitos de propriedade (incluindo observações de direitos autorais e de marcas registradas) que possam estar afixadas ou contidas no Preview.
-
-4. Uso do Preview por você
-
-4.1 A Google compreende que nada no Contrato de licença da a ela direito, título nem interesse no usuário (ou em seus licenciadores), sob o presente Contrato de licença, no que tange ao desenvolvimento de aplicativos de software através do uso do Preview, incluindo quaisquer direitos de propriedade intelectual que subsistam nos referidos aplicativos.
-
-4.2 Você concorda em usar o Preview e desenvolver aplicativos somente para as finalidades permitidas por (a) este Contrato de licença e (b) quaisquer leis, normas, diretrizes geralmente aceitas ou orientações aplicáveis nas jurisdições relevantes (incluindo quaisquer leis acerca da exportação e da importação de dados ou softwares nos Estados Unidos ou em outros países relevantes). 
-
-4.3 Você concorda que, se usar o Preview para o desenvolvimento de aplicativos, deverá proteger a privacidade e os direitos legais dos usuários. Se nomes de usuário, senhas ou outras informações de acesso ou informações pessoais forem fornecidos ao aplicativo, deve-se informá-los de que tais dados estarão disponíveis para o aplicativo, além de fornecer observações de privacidade e proteção legalmente adequadas a esses usuários. Se o aplicativo armazenar informações pessoais ou confidenciais fornecidas pelos usuários, deve fazê-lo com segurança. Se o usuário fornecer informações da conta do Google, o aplicativo poderá usar essas informações exclusivamente para acessar a conta da Google do usuário quando houver autorização para fazê-lo e para os fins limitados pela autorização.
-
-4.4 Você concorda que não se envolverá em qualquer atividade com o Preview, incluindo o desenvolvimento e a distribuição de um aplicativo que interfira, perturbe, danifique ou acesse, de modo não autorizado, servidores, redes ou outras propriedades ou serviços da Google ou qualquer outro terceiro.
-
-4.5 Você concorda que é exclusivamente responsável por (e que a Google não tem qualquer responsabilidade com você ou terceiro) quaisquer dados, conteúdo ou recursos que criar, transmitir ou exibir por meio do Android e/ou de aplicativos do Android e pelas consequências que suas ações (incluindo perda ou dano que a Google possa sofrer) podem gerar.
-
-4.6 Você concorda que é exclusivamente responsável por (e que a Google não tem qualquer responsabilidade com você ou terceiro) qualquer violação das obrigações exigidas neste Contrato de licença, qualquer contrato ou termos de serviço aplicáveis a terceiros, qualquer lei ou norma aplicável e pelas consequências (incluindo a perda ou dano que a Google ou qualquer terceiro possa sofrer) de quaisquer violações.
-
-4.7 O Preview está em desenvolvimento e o seu teste e feedback são uma parte importante deste processo. Ao usar o Preview, você está ciente de que a implementação de alguns recursos ainda estão em desenvolvimento e que não se deve confiar que o Preview tem a funcionalidade completa de uma versão estável. Você concorda em não distribuir nem enviar publicamente quaisquer aplicativos usando este Preview, pois ele não será mais suportado após o lançamento oficial do Android SDK.
-
-5. Suas credenciais de desenvolvedor
-
-5.1 Você é responsável pela manutenção da confidencialidade de quaisquer credenciais de desenvolvedor que possam ser emitidas pela Google ou escolhidas por você e será o único responsável por todos os aplicativos que forem desenvolvidos sob suas credenciais de desenvolvedor.
-
-6. Privacidade e informações
-
-6.1 A fim de inovar e aprimorar continuamente o Preview, a Google pode coletar certas estatísticas de uso do software, incluindo, sem limitar-se, um identificador exclusivo, endereço IP associado, número de versão do software e informações sobre quais ferramentas e/ou serviços no Preview estão sendo usados e como estão sendo usados. Antes de coletar quaisquer dessas informações, o Preview o notificará e buscará seu consentimento. Se você recusar, as informações não serão coletadas.
-
-6.2 Os dados coletados são examinados coletivamente para aprimorar o Preview e são mantidos em conformidade com a Política de privacidade da Google acessível em http://www.google.com/policies/privacy/.
-
-7. Aplicativos de terceiros
-
-7.1 Ao usar o Preview para executar aplicativos desenvolvidos por terceiros ou que acessam dados, conteúdo ou recursos fornecidos por terceiros, você concorda que a Google não é responsável por tais aplicativos, dados, conteúdo ou recursos. Você compreende que quaisquer dados, conteúdo ou recursos passíveis de aceitação por meio de tais aplicativos de terceiros imputam responsabilidade exclusiva ao indivíduo que os originou. A Google não é responsável por qualquer perda ou dano que possa ocorrer como resultado do uso ou acesso de quaisquer aplicativos, dados, conteúdo ou recursos de terceiros.
-
-7.2 Você deve estar ciente de que os dados, conteúdo e recursos apresentados a você por aplicativos de terceiros podem ser protegidos pelos direitos de propriedade intelectual de posse dos fornecedores (ou de outras pessoas ou empresas em seus nomes). Não é permitido modificar, alugar, arrendar, emprestar, vender, distribuir nem criar trabalhos derivados com base nestes dados, conteúdo ou recursos (na totalidade ou em parte), salvo se houver permissão explícita especificada pelos respectivos detentores de direitos.
-
-7.3 Você reconhece que o uso de tais aplicativos, dados, conteúdo ou recursos de terceiros pode estar sujeito a termos adicionais entre você e o terceiro em questão.
-
-8. Uso de APIs da Google
-
-8.1 APIs da Google
-
-8.1.1 Ao usar qualquer API para recuperar dados da Google, você reconhece que eles podem ser protegidos por direitos de propriedade intelectual de posse da Google ou dos terceiros que fornecem os dados (ou de pessoas ou empresas em nomes deles). O uso de tal API pode estar sujeito a termos de serviço adicionais. Não é permitido modificar, alugar, arrendar, emprestar, vender, distribuir nem criar trabalhos derivados baseados nesses dados (na totalidade ou em parte), salvo se permitido pelos termos de serviço pertinentes.
-
-8.1.2 Se você usar qualquer API para recuperar dados de um usuário a partir da Google, reconhece e concorda que deve recuperar dados somente com consentimento explícito do usuário e somente quando, e para os fins limitados aos quais, o usuário conceder permissão para fazê-lo.
-
-9. Rescisão do Contrato de licença
-
-9.1 O Contrato de licença continuará a se aplicar até que ocorra uma rescisão sua ou da Google, como definido abaixo.
-
-9.2 Caso queira rescindir o Contrato de licença, você pode fazer isto cessando o uso do Preview e de qualquer credencial de desenvolvedor relevante.
-
-9.3 A Google pode, a qualquer momento, rescindir o Contrato de licença, com ou sem causa, com uma notificação.
-
-9.4 O Contrato de licença será encerrado automaticamente sem aviso ou outras ações na ocorrência de:
-(A) a Google interromper o fornecimento do Preview ou de determinadas partes do Preview aos usuários no país em que você reside ou de onde o serviço é usado; e
-(B) a Google emitir uma versão de lançamento final do Android SDK.
-
-9.5 Quando o Contrato de licença é rescindido, a licença concedida a você no Contrato de licença é finalizada, todo o uso do Preview será interrompido e as provisões dos parágrafos 10, 11, 12 e 14 deverão permanecer indefinidamente.
-
-10. EXCLUSÕES
-
-10.1 VOCÊ COMPREENDE E CONCORDA EXPRESSAMENTE QUE O RISCO DO USO DO PREVIEW É EXCLUSIVAMENTE SEU E QUE O PREVIEW É FORNECIDO NA FORMA EM QUE SE ENCONTRA E COMO DISPONIBILIZADO, SEM GARANTIA DE QUALQUER TIPO DA GOOGLE.
-
-10.2 O USO DO PREVIEW E DE QUALQUER MATERIAL BAIXADO OU OBTIDO DE OUTRO MODO PELO USO DO PREVIEW ESTÁ A SEU CRITÉRIO E RISCO E VOCÊ É O ÚNICO RESPONSÁVEL POR QUALQUER DANO AO SEU SISTEMA OPERACIONAL OU OUTRO DISPOSITIVO OU PELA PERDA DE DADOS QUE RESULTEM DE TAL USO. SEM LIMITAR OS PRECEDENTES, VOCÊ ENTENDE QUE O PREVIEW NÃO É UMA VERSÃO ESTÁVEL E QUE PODE CONTER ERROS, DEFEITOS E VULNERABILIDADES DE SEGURANÇA QUE PODEM RESULTAR EM DANOS SIGNIFICANTES, INCLUINDO A PERDA IRRECUPERÁVEL OU COMPLETA DO USO DO SISTEMA DO COMPUTADOR OU DE OUTROS DISPOSITIVOS.
-
-10.3 A GOOGLE EXCLUI EXPRESSAMENTE TODAS AS GARANTIAS E CONDIÇOES DE QUALQUER TIPO, EXPRESSAS OU IMPLÍCITAS, INCLUINDO, MAS NÃO LIMITADO A, GARANTIAS E CONDIÇÕES DE COMERCIALIZAÇÃO IMPLÍCITAS, ADEQUAÇÃO A UMA FINALIDADE PARTICULAR E A NÃO VIOLAÇÃO.
-
-11. LIMITAÇÃO DE RESPONSABILIDADE
-
-11.1 VOCÊ COMPREENDE E CONCORDA EXPRESSAMENTE QUE A GOOGLE, SUAS SUBSIDIÁRIAS, AFILIADAS E SEUS LICENCIADORES NÃO SERÃO RESPONSABILIZADOS POR VOCÊ SOB QUALQUER TEORIA DE RESPONSABILIDADE POR QUAISQUER DANOS, SEJAM ELES DIRETOS, INDIRETOS, INCIDENTAIS, ESPECIAIS, CONSEQUENCIAIS OU DE EXEMPLO QUE POSSAM INCORRER, INCLUINDO QUALQUER PERDA DE DADOS, INDEPENDENTE DE AVISO À GOOGLE OU A SEUS REPRESENTANTES OU DA NECESSIDADE DE AVISO SOBRE A POSSIBILIDADE DA INCORRÊNCIA DE TAIS PERDAS.
-
-12. Indenização
-
-12.1 Ao limite máximo permitido por lei, você concorda em defender, indenizar e isentar a Google, suas afiliadas e respectivos conselheiros, diretores, empregados e agentes com relação a todas e quaisquer reivindicações, ações, processos ou procedimentos, bem como todas e quaisquer perdas, responsabilidades, danos, custos e despesas (incluindo honorários advocatícios) decorrentes ou provenientes de: (a) seu uso do Preview, (b) qualquer aplicativo desenvolvido no Preview que infrinja direitos de propriedade intelectual de qualquer pessoa, difame qualquer pessoa ou viole seus direitos de publicidade ou privacidade e (c) qualquer não cumprimento deste Contrato de licença.
-
-13. Mudanças no Contrato de licença
-
-13.1 A Google pode realizar mudanças no Contrato de licença à medida que distribui novas versões do Preview. Quando essas mudanças forem realizadas, a Google fará uma nova versão do Contrato de licença disponível no site em que o Preview estiver disponível.
-
-14. Termos legais gerais
-
-14.1 Esse Contrato de licença constitui o contrato legal integral entre você e a Google e rege o uso do Preview (excluindo quaisquer serviços que a Google possa fornecer a você sob um contrato escrito em separado), e substitui inteiramente quaisquer contratos anteriores entre você e a Google em relação ao Preview.
-
-14.2 Você concorda que, se a Google não exercer nem impetrar qualquer direito ou recurso legal que esteja contido no Contrato de licença (ou que a Google detenha direitos nos termos de qualquer lei aplicável), não se considerará esse fato como uma renúncia formal aos direitos da Google e esses direitos ou recursos continuarão disponíveis à Google.
-
-14.3 Se qualquer tribunal de justiça que tiver a competência para decidir sobre esse tema determinar que qualquer cláusula do Contrato de licença é inválida, tal cláusula será removida do contrato sem afetar as cláusulas restantes ou sua vigência. As cláusulas restantes do Contrato de licença continuarão válidas e obrigatórias.
-
-14.4 Você reconhece e concorda que cada membro do grupo de empresas das quais a Google é a empresa controladora deve ser beneficiário terceiro do Contrato de licença e que essas outras empresas terão o poder de aplicar diretamente, e apoiar-se em, qualquer cláusula do Contrato de licença que confira um direito (ou direitos em favor) deles. Além disso, nenhuma outra pessoa nem empresa deve ser beneficiário terceiro do Contrato de licença.
-
-14.5 RESTRIÇÕES DE EXPORTAÇÃO. O PREVIEW ESTÁ SUJEITO ÀS LEIS E NORMAS DE EXPORTAÇÃO DOS ESTADOS UNIDOS. VOCÊ DEVE CUMPRIR TODAS AS LEIS E NORMAS DOMÉSTICAS E INTERNACIONAIS QUE SE APLICAREM AO PREVIEW. ESSAS LEIS INCLUEM RESTRIÇÕES SOBRE DESTINOS, USUÁRIOS FINAIS E USO FINAL.
-
-14.6 O Contrato de licença não pode ser atribuído nem transferido por você sem a aprovação prévia por escrito da Google. Qualquer tentativa de atribuição sem a aprovação será inválida. Você não deve delegar as próprias responsabilidades ou obrigações nos termos do Contrato de licença sem aprovação prévia por escrito da Google.
-
-14.7 O Contrato de licença e sua relação com a Google nos termos do contrato serão regidos pelas leis do estado da Califórnia sem considerar conflitos de disposições legais. Você e a Google concordam em se submeter à competência exclusiva dos tribunais localizados na comarca de Santa Clara, Califórnia, para dirimir quaisquer questões legais decorrentes do Contrato de licença. Não obstante a isso, você concorda que a Google continua habilitada a impetrar medidas cautelares (ou mecanismo legal urgente equivalente) em qualquer jurisdição.
-
-
-</div>
\ No newline at end of file
diff --git a/docs/html-intl/intl/pt-br/preview/overview.jd b/docs/html-intl/intl/pt-br/preview/overview.jd
deleted file mode 100644
index e81ccd7..0000000
--- a/docs/html-intl/intl/pt-br/preview/overview.jd
+++ /dev/null
@@ -1,389 +0,0 @@
-page.title=Visão geral do programa
-page.metaDescription=Boas-vindas ao Android M Developer Preview, um programa que fornece tudo que é necessário para testar e otimizar os aplicativos para a próxima versão do Android.
-page.image=images/cards/card-preview_16-9_2x.png
-page.tags="preview", "developer", "android"
-
-@jd:body
-
-<div class="cols" style=
-"background-color:#ffebc3; padding: 5px 0;margin-bottom:1em; text-align:center;">
-<h3>
-    Developer Preview 2 is now available
-  </h3>
-
- <ul class="dac-section-links">
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-notes">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Read the Notes</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-get">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Get the Update</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="https://code.google.com/p/android-developer-preview/">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Report Issues</a>
-    </li>
-  </ul>
-</div>
-
-<p>
-  Boas-vindas ao <strong>Android M Developer Preview</strong>, um programa que fornece
- tudo que é necessário para testar e otimizar os aplicativos para a próxima versão
- do Android. É de graça e você pode começar agora mesmo: basta fazer
- o download das ferramentas M Developer Preview.
-</p>
-
-<div style="background-color:#eceff1;padding:1em;">
-<div class="wrap">
-  <div class="cols">
-    <div class="col-4of12">
-      <h5>
-        Imagens de sistema de emulador e hardware
-      </h5>
-
-      <p>
-        Execute e teste os aplicativos no Nexus 5, 6, 9 e Player (para TV), bem como
- em emuladores.
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Código de plataforma mais recente
-      </h5>
-
-      <p>
-        Nós forneceremos várias atualizações durante a prévia. Portanto, você
- testará de acordo com as alterações mais recentes da plataforma.
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Atualizações entregues por OTA
-      </h5>
-
-      <p>
-        É possível obter atualizações por OTA (over-the-air) ao programar o dispositivo
- em flash para a prévia inicial.
-      </p>
-    </div>
-  </div>
-
-  <div class="cols">
-
-
-    <div class="col-4of12">
-      <h5>
-        Novos comportamentos e capacidades
-      </h5>
-
-      <p>
-        Inicie o trabalho cedo para suportar os novos comportamentos da plataforma,
- como novo modelo de permissões de tempo de execução e recursos de economia de energia.
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Janela de prioridades para problemas informados por desenvolvedores
-      </h5>
-
-      <p>
-        Durante as primeiras semanas, nós daremos prioridade aos problemas informados
- por desenvolvedores. Portanto, teste e forneça-nos feedback o quanto antes.
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Feedback e suporte
-      </h5>
-
-      <p>
-        Informe problemas e dê-nos feedback usando o <a href="https://code.google.com/p/android-developer-preview/">issue tracker</a>.
-        Conecte-se a outros desenvolvedores na <a href="http://g.co/dev/AndroidMDevPreview">Comunidade M&nbsp;Developer</a>.
-
-      </p>
-    </div>
-  </div>
-</div>
-</div>
-
-<!--
-<p>
-  With the M Developer Preview, you'll get an early start on testing your apps,
-  with enough time to make adjustments before the public platform release later
-  in the year. We'll provide several updates to the Preview tools in the weeks
-  ahead, so you can keep in sync with the latest changes as the platform moves
-  toward launch.
-</p>
-<img src="{@docRoot}preview/images/m-preview-timeline.png" alt=
-"Preview program timeline" id="timeline">
-<p>
-  You can help us improve the platform by <a href=
-  "https://code.google.com/p/android-developer-preview/">reporting issues</a>
-  through our feedback channels. This is especially
-  critical in the first month of the preview, when we’ll be giving priority to
-  developer-reported issues and feedback.
-</p> -->
-
-
-<h2 id="timeline">
-  Linha do tempo e atualizações
-</h2>
-<img src="{@docRoot}preview/images/m-preview-timeline-crop.png" alt="Preview program timeline" id="timeline">
-<p>
-  O M Developer Preview estará em execução de 28 de maio até o Android M SDK final, que
- disponibilizaremos brevemente antes do lançamento público durante
- o 3º trimestre de 2015.
-</p>
-
-<p>
-  Nos marcos de desenvolvimento principais, entregamos atualizações para os dispositivos de teste.
-  Os marcos de experiência são
-</p>
-
-<ul>
-  <li>
-    <strong>Preview&nbsp;1</strong> (lançamento inicial do Preview, final de maio),
-  </li>
-
-  <li>
-    <strong>Preview&nbsp;2</strong> (final de junho/início de julho) e
-  </li>
-
-  <li>
-    <strong>Preview&nbsp;3</strong> (próximo ao final de julho)
-  </li>
-</ul>
-
-<p>
-  Estas atualizações culminam no <strong>SDK final</strong> (no 3º trimestre),
- que fornecerá APIs oficiais para a nova versão do Android,
- bem como os recursos e comportamentos do sistema final.
-</p>
-
-<p>
-  Ao testar e desenvolver no Android M, recomendamos que você <strong>mantenha
- o ambiente de desenvolvimento atualizado</strong> à medida que atualizações do Preview são lançadas.
-  Para facilitar o processo, fornecemos <strong>atualizações "over-the-air"
- (OTA)</strong> aos dispositivos já programados em flash para uma versão do Preview, além
- de fornecemos imagens do sistema que estão disponíveis para download e programação em flash manualmente.
-</p>
-<p class="note">
-  <strong>Observação:</strong> as imagens do sistema e o SDK final não podem ser entregues
- por OTA. Em vez disso, precisarão ser <strong>programadas em flash manualmente</strong> para
- os dispositivos de teste.</strong>
-</p>
-
-<p>
-  Notificaremos você quando as atualizações do Preview estiverem disponíveis por meio do <a href="http://android-developers.blogspot.com/">Blogue de desenvolvedores do Android</a>, além
- deste site
- e da <a href="http://g.co/dev/AndroidMDevPreview">Comunidade Android M Developer</a>.
-</p>
-
-<h2 id="preview_tools">
-  O que há no Preview?
-</h2>
-
-<p>
-  O M Developer Preview inclui tudo que é necessário para testar os aplicativos existentes
- em uma variedade de tamanhos de tela, tecnologias de rede, chipsets de CPU/GPU
- e arquiteturas de hardware.
-</p>
-
-<h4>
-  Ferramentas SDK
-</h4>
-
-<p>
-  É possível fazer o download destes componentes pelo SDK Manager no <a href="{@docRoot}sdk/installing/adding-packages.html">Android Studio</a>:
-</p>
-
-<ul>
-  <li>M Developer Preview <strong>ferramentas SDK</strong>
-  </li>
-
-  <li>M Developer Preview <strong>imagem do sistema de emulador</strong> (32 bits
-e 64 bits)
-  </li>
-
-  <li>M Developer Preview <strong>imagem do sistema de emulador para Android TV</strong>
- (32 bits)
-  </li>
-</ul>
-
-<h4>
-  Imagens do sistema de hardware
-</h4>
-
-<p>
-  É possível fazer o download destas imagens de sistema de hardware para dispositivos Nexus a partir
- da <a href="download.html">página de download</a>:
-</p>
-
-<ul>
-  <li>
-    <strong>Nexus 5</strong> (GSM/LTE) imagem do sistema de dispositivo “hammerhead”
-  </li>
-
-  <li>
-    <strong>Nexus 6</strong> imagem do sistema de dispositivo “shamu”
-  </li>
-
-  <li>
-    <strong>Nexus 9</strong> (Wi-Fi) imagem do sistema de dispositivo “volantis”
-  </li>
-
-  <li>
-    <strong>Nexus Player</strong> (Android TV) imagem do sistema de dispositivo “fugu”
-  </li>
-</ul>
-
-<h4>
-  Exemplo de código e documentação
-</h4>
-
-<p>
-  Estes recursos de documentação ajudam você a aprender sobre o Preview:
-</p>
-
-<ul>
-  <li>
-    <a href="setup-sdk.html">Configuração do SDK</a> tem instruções passo a passo
- para você começar.
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/testing/guide.html">Guia de teste</a> e <a href="behavior-changes.html">Mudanças de comportamento</a> mostram as áreas essenciais para o teste.
-  </li>
-
-  <li>Documentação de novas APIs, incluindo uma <a href="api-overview.html">Visão geral das APIs</a>,
- <a href="{@docRoot}preview/download.html#docs">Referência da API</a> disponível para download e guias de desenvolvedor detalhados sobre
- os recursos principais, como
- <a href="{@docRoot}preview/features/runtime-permissions.html">permissões</a>,
- <a href="{@docRoot}preview/backup/index.html">backup de aplicativo</a> etc.
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/samples.html">Exemplo de código</a> que demonstra como suportar
- permissões e outros novos recursos.
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/support.html#release-notes">Notas de versão</a> para a versão atual do
- M Developer Preview, incluindo notas de mudanças e relatórios de diferença.
-  </li>
-</ul>
-
-<h4>
-  Recursos de suporte
-</h4>
-
-<p>
-  Use estes recursos de suporte ao testar e desenvolver no
- M Developer Preview:
-</p>
-
-<ul>
-  <li>O <a href="https://code.google.com/p/android-developer-preview/">Issue Tracker do M
- Developer Preview</a> é o <strong>canal principal
- de feedback.</strong> É possível informar erros, problemas de desempenho e feedback
- geral pelo issue tracker. Também é possível verificar os <a href="https://code.google.com/p/android-developer-preview/wiki/KnownIssues">erros conhecidos</a>
- e encontrar etapas de resolução.
-  </li>
-
-  <li>A <a href="http://g.co/dev/AndroidMDevPreview">Comunidade Android M Developer
-</a> é uma comunidade do Google+ onde é possível <strong>se conectar
- a outros desenvolvedores</strong> que trabalham com o Android M. É possível compartilhar
- observações ou ideias, além de encontrar respostas para as dúvidas sobre o Android M.
-  </li>
-</ul>
-
-
-<h2 id="preview_apis_and_publishing">
-  Destinação, APIs de prévia e publicação
-</h2>
-
-<p>
-  O Android M Developer Preview é uma versão apenas para desenvolvimento
- e <strong>não possui um nível da API padrão</strong>. Caso opte
- pelos comportamentos de compatibilidade para testar o aplicativo (o que é muito recomendado),
- é possível destinar o M Developer Preview configurando o <code><a href=
-  "/guide/topics/manifest/uses-sdk-element.html">targetSdkVersion</a></code>
- do aplicativo para <code>“MNC”</code>.
-</p>
-
-<p>
-  O Android M Developer Preview fornece <strong>APIs de prévia</strong>
- &mdash; as APIs não serão oficiais até o lançamento do SDK final,
- atualmente planejado para o terceiro trimestre de 2015. Isto significa que é possível
- <strong>esperar alterações secundárias de APIs</strong> com o tempo, especialmente
- durante as semanas iniciais do programa. Forneceremos um resumo das alterações
- com cada atualização do Android M Developer Preview.
-</p>
-
-<p class="note">
-  Observe que, apesar das APIs da prévia poderem ser alteradas, os comportamentos essenciais do sistema,
- como permissões de tempo de execução e recursos de economia de energia, são estáveis e estão prontos
- para serem testados.
-</p>
-
-<p>
-  Em termos de publicação, o Google Play <strong>evita a publicação de aplicativos
- destinados para o M Developer Preview</strong>. Quando o SDK final do Android M estiver
- disponível, você poderá destinar o nível da API do Android M oficial
- e publicar o aplicativo no Google Play. Enquanto isso, caso queira distribuir um aplicativo
- destinado para Android M para testadores, é possível fazê-lo por e-mail ou por download direto
- a partir do site.
-</p>
-
-<h2 id="get_started">
-  Como começar
-</h2>
-
-<p>
-  Para começar o teste do aplicativo:
-</p>
-
-<ol>
-  <li>Revise a <a href="{@docRoot}preview/api-overview.html">Visão geral da API</a>
- e as <a href="{@docRoot}preview/behavior-changes.html">Mudanças de comportamento</a> para
- ter uma ideia do que há de novo e como isto afeta os aplicativos. Em particular, aprenda mais sobre
- o novo modelo<a href="{@docRoot}preview/features/runtime-permissions.html">de permissões
- de tempo de execução</a>, recursos de economia de energia e backup automático.
-  </li>
-
-  <li>Configure o ambiente seguindo as instruções para
- <a href="{@docRoot}preview/setup-sdk.html">Configurar o Preview SDK</a>
- e ajustar os dispositivos de teste.
-  </li>
-
-  <li>Siga <a href="https://developers.google.com/android/nexus/images">
- as instruções de programação em flash</a> para programar em flash a imagem do sistema do M Developer Preview mais recente
- para Nexus 5, 6, 9 e Player. Após programar em flash o dispositivo de desenvolvimento,
- as atualizações do Preview serão entregues por atualizações OTA (over-the-air).</a>
-  </li>
-
-  <li>Faça o download da <a href="{@docRoot}preview/download.html#docs">Referência da API do
- M Preview</a> e dos <a href="{@docRoot}preview/samples.html">exemplos do M Preview
-</a> para obter mais informações sobre os novos recursos de API e como usá-los
- no aplicativo.
-  </li>
-
-  <li>Junte-se à <a href="http://g.co/dev/AndroidMDevPreview">Comunidade Android M
- Developer</a> para obter as notícias mais recentes e conecte-se a outros
- desenvolvedores que trabalham com a nova plataforma.
-  </li>
-</ol>
-
-<p>
-  Agradecemos a sua participação no programa M Developer Preview do Android!
-</p>
diff --git a/docs/html-intl/intl/pt-br/preview/samples.jd b/docs/html-intl/intl/pt-br/preview/samples.jd
deleted file mode 100644
index a664837..0000000
--- a/docs/html-intl/intl/pt-br/preview/samples.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=Exemplos
-page.image=images/cards/samples-new_2x.png
-@jd:body
-
-<p>
-  Os seguintes exemplos de código são fornecidos para o M Developer Preview. Para fazer o download
- dos exemplos no Android Studio, selecione a opção do menu <b>File (Arquivo) &gt; Import Samples (Importar exemplos)</b>.
-</p>
-
-<p class="note">
-  <strong>Observação:</strong> estes projetos disponíveis para download foram feitos
-para serem usados com Gradle e Android Studio.
-</p>
-
-
-<h3 id="RuntimePermissions">Permissões em tempo de execução</h3>
-
-<p>
- O Android M altera a maneira como as permissões do sistema funcionam. Os usuários são solicitados a aprovar
- as permissões em tempo de execução em vez de aprovar durante a instalação. Este exemplo mostra como solicitar
- essas permissões.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-RuntimePermissions">Obtenha isto no GitHub</a></p>
-
-<h3 id="ConfirmCredentials">Confirmação de credencial</h3>
-
-<p>
- Este exemplo demonstra como usar as credenciais do dispositivo como um método de autenticação no aplicativo.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ConfirmCredential">Obtenha isto
-no GitHub</a></p>
-
-<h3 id="FingerprintDialog">Diálogo de impressão digital</h3>
-
-<p>
- Este exemplo demonstra como reconhecer as impressões digitais registradas para autenticar o usuário
- no aplicativo.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-FingerprintDialog">Obtenha isto no GitHub</a></p>
-
-<h3 id="AutomaticBackup">Backup automático para aplicativos</h3>
-
-<p>
- O Android M introduz o backup automático para as configurações de aplicativos. Este exemplo demonstra como adicionar
- regras de filtro a um aplicativo para gerenciar o backup de configurações.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-AutoBackupForApps">Obtenha isto no GitHub</a></p>
-
-<h3 id="CameraRaw">Câmera 2 Bruta</h3>
-
-<p>
-  Demonstra como usar a API <code>Camera2</code> API para capturar buffers de câmera RAW e salvá-los
- como arquivos <code>DNG</code>.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-Camera2Raw">Obtenha isto no GitHub</a></p>
-
-<h3 id="ActiveNotification">Notificação ativa</h3>
-
-<p>
-  Este exemplo demonstra como o
- <a href="{@docRoot}reference/android/app/NotificationManager.html"><code>NotificationManager</code></a>
- pode dizer quantas notificações o aplicativo está exibindo.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ActiveNotifications">Obtenha isto no GitHub</a></p>
diff --git a/docs/html-intl/intl/pt-br/preview/setup-sdk.jd b/docs/html-intl/intl/pt-br/preview/setup-sdk.jd
deleted file mode 100644
index 894fe43..0000000
--- a/docs/html-intl/intl/pt-br/preview/setup-sdk.jd
+++ /dev/null
@@ -1,207 +0,0 @@
-page.title=Configuração do Preview SDK
-page.image=images/cards/card-set-up_16-9_2x.png
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Neste documento</h2>
-      <ol>
-        <li><a href="#get-as13">Obter o Android Studio 1.3</a></li>
-        <li><a href="#get-sdk">Obter o Preview SDK</a></li>
-        <li><a href="#create-update">Criar ou atualizar um projeto</a></li>
-        <li><a href="#setup-test">Configurar para teste</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>O M Developer Preview SDK está disponível a partir do Android SDK Manager.
-Este documento assume que você está familiarizado com o desenvolvimento de aplicativos do Android,
-como o uso do Android SDK Manager e criação de projetos. Caso seja novo no
-Android, consulte a lição de treinamento <a href="{@docRoot}training/basics/firstapp/index.html">Como criar o primeiro
-aplicativo</a> primeiro.</a></p>
-
-<h2 id="get-as13">Obter o Android Studio 1.3</h2>
-
-<p>A prévia de desenvolvedor é melhor usada com o Android Studio 1.3, que está no estado
-de prévia. É altamente recomendado que você instale a versão de prévia
-do Android Studio 1.3 para que funcione com o Preview SDK.</p>
-
-<p class="caution"><strong>Cuidado:</strong> a prévia canário do Android
-Studio 1.3 ainda está em desenvolvimento ativo. Caso esteja usando a máquina de desenvolvimento principal
-para testar a prévia de desenvolvedor, é possível criar uma segunda instalação
-do Android Studio para usar em testes.</p>
-
-<p>Para instalar a prévia do Android Studio 1.3:</p>
-
-<ol>
-  <li>Faça o download e inicie o <a href="{@docRoot}tools/studio/index.html">Android
- Studio</a>.
-  </li>
-
-  <li>Abra a janela <strong>Settings (Configurações)</strong> (no Windows, é possível fazer isto
- escolhendo <strong>File (Arquivo) &gt; Settings (Configurações)</strong>). Escolha o painel
- <strong>Appearance &amp; Behavior (Aparência e comportamento) &gt; System
- Settings (Configurações do sistema) &gt; Updates (Atualizações)</strong>.
-
-    <p class="aside">No OSX, é possível encontrar o painel <strong>Appearance &amp;
- Behavior (Aparência e comportamento)</strong>
- na janela <strong>Preferences (Preferências)</strong> do Android Studio.</p>
-  </li>
-
-  <li> No painel <strong>Updates (Atualizações)</strong>, escolha a opção
- <strong>Automatically check updates for: Canary Channel (Verificar atualizações automaticamente para: canal canário)</strong>.
-  </li>
-
-  <li>No painel <strong>Updates (Atualizações)</strong>, selecione <strong>Check Now (Verificar agora)</strong>
- para verificar a versão mais recente da versão canário. Faça o download e instale a versão
- quando solicitado.
-  </li>
-</ol>
-
-<h2 id="get-sdk">Obter o Preview SDK</h2>
-
-<p>Para adicionar os componentes do Preview SDK ao ambiente de desenvolvimento:</p>
-
-<ol>
-  <li>Inicie a prévia do Android Studio 1.3.
-  </li>
-
-  <li>Abra a janela <strong>Settings (Configurações)</strong> (no Windows, é possível fazer isto
- escolhendo <strong>File (Arquivo) &gt; Settings (Configurações)</strong>). Escolha o painel
- <strong>Appearance &amp; Behavior (Aparência e comportamento) &gt; System
- Settings (Configurações do sistema) &gt; Updates (Atualizações)</strong>.
-
-    <p class="aside">No OSX, é possível encontrar o painel <strong>Appearance &amp;
- Behavior (Aparência e comportamento)</strong>
- na janela <strong>Preferences (Preferências)</strong> do Android Studio.</p>
-  </li>
-
-  <li>No painel <strong>Updates (Atualizações)</strong>, escolha a opção
- <strong>Automatically check updates for: Canary Channel (Verificar atualizações automaticamente para: canal canário)</strong> e
- <strong>Automatically check atualização for Android SDK: Preview Channel (Verificar atualizações automaticamente para: canal de pré-visualização)</strong>.
-  </li>
-
-  <li>Inicie o <strong>Android SDK Manager</strong>. (Com o Android Studio 1.3,
- o SDK Manager está integrado no Android Studio, em vez de ser
- um aplicativo independente.)
-  </li>
-
-  <li>Na seção <strong>Platforms (Plataformas)</strong>, selecione <strong>Android MNC
- Preview</strong>.
-  </li>
-
-  <li>Na seção <strong>Tools (Ferramentas)</strong>, selecione o Android <strong>
-SDK Tools</strong>, <strong>Platform-tools</strong> e 
-<strong>Build-tools</strong> mais recentes.
-  </li>
-
-  <li>Clique em <strong>Install packages (Instalar pacotes)</strong> e aceite o contrato de licença
- para todos os pacotes.
-  </li>
-
-  <li>Verifique se o M Developer Preview está instalado abrindo a janela <strong>
-Settings (Configurações)</strong> e escolhendo o painel <strong>Appearance &amp; Behavior (Aparência e comportamento) 
-&gt; System Settings (Configurações do sistema) &gt; Android SDK</strong>.</li>
-
-  <li>No painel <strong>Android SDK</strong>, escolha
- a guia <strong>SDK Platforms (Plataformas SDK)</strong>. <strong>Android MNC
- Preview</strong> deve estar listado como <em>Installed (Instalado)</em>. Além disso, abra a guia
- <strong>SDK Tools (Ferramentas SDK)</strong> para verificar se as ferramentas mais recentes
- estão instaladas.
-  </li>
-</ol>
-<p>Após concluir estas etapas, os componentes de prévia estarão disponíveis
- no ambiente de desenvolvimento. </p>
-
-
-<h2 id="create-update">Criar ou atualizar um projeto</h2>
-
-<p>
-  Para usar as APIs de prévia, deve-se criar ou atualizar um projeto de desenvolvimento para usar
- os componentes de prévia.
-</p>
-
-
-<h3 id="create">Criar um novo projeto</h3>
-
-<p>
-  Recomendamos o uso do Android Studio para criar um projeto com a prévia. Siga as etapas
- descritas em <a href="{@docRoot}sdk/installing/create-project.html">Criar um projeto</a>
- até chegar na tela <em>Form Factors (Novas especificações)</em> no assistente do projeto. Em seguida,
- realize as seguintes etapas para criar um projeto configurado para a prévia.
-</p>
-
-<ul>
-  <li>Verifique <strong>Phone and Tablet (Telefone e tablet)</strong>.</li>
-  <li>Selecione <strong>MNC: Android M (Preview)</strong> em <strong>Minimum
- SDK (SDK mínimo)</strong>.</li>
-</ul>
-
-
-<h3 id="update">Atualizar um projeto existente</h3>
-
-<p>
-  Para projetos existentes, deve-se modificar a configuração de projeto para ativar as APIs de prévia. No
- ambiente de desenvolvimento, abra o arquivo <code>build.gradle</code> para o módulo
- e defina estes valores da seguinte forma:
-</p>
-
-<ul>
-  <li><code>compileSdkVersion</code> para <code>'android-MNC'</code></li>
-  <li><code>minSdkVersion</code> para <code>'MNC'</code></li>
-  <li><code>targetSdkVersion</code> para <code>'MNC'</code></li>
-</ul>
-
-
-<h2 id="setup-test">Configurar para teste</h2>
-
-<p>
-  Testar um aplicativo com a prévia requer que você tenha um dispositivo ou dispositivo virtual configurado
- com a versão de prévia da plataforma. Caso tenha um dispositivo compatível, é possível instalar a plataforma
- de prévia para teste. Caso contrário, é possível configurar um dispositivo virtual para o teste.
-</p>
-
-<h3 id="setup-device">Configurar um dispositivo físico</h3>
-
-<p>
-  Caso tenha um Nexus 5, Nexus 6, Nexus 9 ou Android TV, é possível instalar uma imagem do sistema
- de prévia nestes dispositivos para testar o aplicativo.
- É possível configurar um dispositivo virtual com a versão de prévia da plataforma a partir do Android Studio
- usando a ferramenta Android Virtual Device Manager.
-</p>
-
-<p class="caution">
-  <strong>Importante:</strong> instalar uma imagem de prévia em um dispositivo <em>remove todos os dados
- dele</em>. Portanto, deve-se realizar o backup de quaisquer dados antes de instalar uma imagem de prévia.
-</p>
-
-<h3 id="setupAVD">Configurar um dispositivo virtual</h3>
-
-<p>
-  É possível configurar um dispositivo virtual com a versão de prévia da plataforma dentro do Android Studio
- usando a ferramenta Android Virtual Device Manager.
-</p>
-
-<p>Para criar um AVD com o AVD Manager:</p>
-
-<ol>
-  <li>Instale o Preview SDK no ambiente de desenvolvimento, como descrito
- em <a href="{@docRoot}preview/setup-sdk.html">Configurar o Preview
- SDK.</a></li>
-  <li>Siga as etapas em
- <a href="{@docRoot}tools/devices/managing-avds.html">Como gerenciar AVDs com
- o Gerenciador de AVD</a>. Use as seguintes configurações:
-    <ul>
-      <li><strong>Dispositivo:</strong> Nexus 5, Nexus 6, Nexus 9 ou Android TV</li>
-      <li><strong>Alvo:</strong>
-       Android M (Preview) - Nível da API M</li>
-      <li><strong>ABI:</strong> x86</li>
-    </ul>
-  </li>
-</ol>
-
-<p>
-  Para obter mais informações sobre como criar dispositivos virtuais para teste, consulte <a href="{@docRoot}tools/devices/index.html">Gerenciamento de dispositivos virtuais</a>.
-</p>
diff --git a/docs/html-intl/intl/pt-br/preview/testing/guide.jd b/docs/html-intl/intl/pt-br/preview/testing/guide.jd
deleted file mode 100644
index b995f8b..0000000
--- a/docs/html-intl/intl/pt-br/preview/testing/guide.jd
+++ /dev/null
@@ -1,187 +0,0 @@
-page.title=Guia de teste
-page.image=images/cards/card-build_16x9_2x.png
-page.keywords=previewresources,androidm,testing,permissions
-
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Neste documento</h2>
-      <ol>
-        <li><a href="#runtime-permissions">Teste de permissões</a></li>
-        <li><a href="#doze-standby">Teste de soneca e aplicativo em espera</a></li>
-        <li><a href="#ids">Identificadores de dispositivo e backup automático</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  O Android M Developer Preview fornece uma oportunidade de garantir que os aplicativos funcionem
- na próxima versão da plataforma. Esta prévia inclui um número de mudanças de comportamento e APIs que podem
- ter impacto no aplicativo, como descrito em <a href="{@docRoot}preview/api-overview.html">Visão geral da API
-</a> e <a href="{@docRoot}preview/behavior-changes.html">Mudanças de comportamento</a>. No teste
- do aplicativo com a prévia, há algumas alterações de sistema específicas em que você deve se concentrar
- para garantir que os usuários tenham uma boa experiência.
-</p>
-
-<p>
-  Este guia descreve quais recursos de prévia testar e como testá-los com o aplicativo. Você deve
- priorizar o teste destes recursos de prévia específicos, devido ao grande impacto potencial no
- comportamento do aplicativo:
-</p>
-
-<ul>
-  <li><a href="#runtime-permissions">Permissões</a>
-  </li>
-  <li><a href="#doze-standby">Soneca e aplicativo em espera</a>
-  </li>
-  <li><a href="#ids">Identificadores de dispositivo e backup automático</a></li>
-</ul>
-
-<p>
-  Para obter mais informações sobre como configurar dispositivos físicos ou virtuais com uma imagem do sistema de prévia
- para teste, consulte <a href="{@docRoot}preview/setup-sdk.html">Configuração do Preview SDK</a>.
-</p>
-
-
-<h2 id="runtime-permissions">Teste de permissões</h2>
-
-<p>
-  O novo modelo de <a href="{@docRoot}preview/features/runtime-permissions.html">permissões</a>
- altera a maneira que as permissões são alocadas ao aplicativo pelo usuário. Em vez de conceder todas as permissões
- durante o procedimento de instalação, o aplicativo deve pedir ao usuário permissões individuais
- em tempo de execução. Para os usuários, este comportamento fornece um controle mais granular sobre as atividades de cada aplicativo, bem
- como um melhor contexto para entender o porquê do aplicativo estar solicitando uma permissão específica. Os usuários
- podem conceder ou revogar as permissões concedidas a um aplicativo individualmente a qualquer momento. É provável que este recurso
- da prévia tenha um impacto no comportamento do aplicativo e pode impedir que alguns
- dos recursos do aplicativo funcionem, ou funcionem em um estado degradado.
-</p>
-
-<p class="caution">
-  Esta alteração afeta todos os aplicativos em execução na nova plataforma, mesmo aqueles que não são destinados
- para a versão nova da plataforma. A plataforma fornece um comportamento de compatibilidade limitado para aplicativos legados. No entanto,
- você deve começar a planejar a migração do aplicativo para o novo modelo de permissões agora, com o objetivo
- de publicar uma versão atualizada do aplicativo no lançamento oficial da plataforma.
-</p>
-
-
-<h3 id="permission-test-tips">Dicas de teste</h3>
-
-<p>
-  Use as seguintes dicas de teste para ajudar você a planejar e executar os testes do aplicativo com o novo
- comportamento de permissões.
-</p>
-
-<ul>
-  <li>Identifique as permissões atuais do aplicativo e os caminhos de código relacionados.</li>
-  <li>Teste o fluxo de usuário entre serviços protegidos por permissão e dados.</li>
-  <li>Teste com várias combinações de permissões revogadas/concedidas.</li>
-  <li>Use a ferramenta {@code adb} para gerenciar as permissões da linha de comando:
-    <ul>
-      <li>Liste as permissões e o status por grupos:
-        <pre>adb shell pm list permissions -d -g</pre>
-      </li>
-      <li>Conceda ou revogue uma ou mais permissões usando a seguinte sintaxe:<br>
-        <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
-      </li>
-    </ul>
-  </li>
-  <li>Analise o aplicativo para encontrar os serviços que usam permissões.</li>
-</ul>
-
-<h3 id="permission-test-strategy">Estratégia de teste</h3>
-
-<p>
-  A mudança de permissões afeta a estrutura e o projeto do aplicativo, bem como
- a experiência dos usuários e os fluxos fornecidos a eles. Você deve avaliar o uso das permissões atuais
- do aplicativo e começar a planejar novos fluxos que deseja oferecer. O lançamento oficial
- da plataforma fornece comportamento de compatibilidade, mas deve-se planejar a atualização do aplicativo e
- não confiar nestes comportamentos.
-</p>
-
-<p>
-  Identifique as permissões que o aplicativo realmente precisa e usa e, em seguida, encontre os vários caminhos
- de código que usam os serviços protegidos por permissões. É possível fazer isto por meio de uma combinação de
- testes na nova plataforma e análise de códigos. Nos testes, você deve se concentrar em usar
- as permissões em tempo de execução alterando {@code targetSdkVersion} do aplicativo para a versão da prévia. Para
- obter mais informações, consulte <a href="{@docRoot}preview/setup-sdk.html#">Configuração do Preview SDK</a>.
-</p>
-
-<p>
-  Teste com várias combinações de permissões revogadas e concedidas para destacar os fluxos de usuário
-que dependem de permissões. Onde uma dependência não for óbvia ou lógica, considere
-refatorar ou compartimentalizar este fluxo para eliminar a dependência ou para esclarecer por que
-a permissão é necessária.
-</p>
-
-<p>
-  Para obter mais informações sobre o comportamento das permissões em tempo de execução, de testes e de melhores práticas, consulte a página
- <a href="{@docRoot}preview/features/runtime-permissions.html">Permissões</a> do Developer
- Preview.
-</p>
-
-
-<h2 id="doze-standby">Teste de soneca e aplicativo em espera</h2>
-
-<p>
-  Os recursos de economia de energia de aplicativo em espera e soneca limitam a quantidade de processamento de segundo plano que o aplicativo
- pode realizar quando um dispositivo está no estado ocioso ou enquanto não está em foco. As
- restrições que o sistema pode impor nos aplicativos inclui acesso a rede limitado ou restrito,
- tarefas de segundo plano suspensas, notificações suspensas, solicitações de soneca ignoradas e despertadores. Para garantir
- que o aplicativo se comportará adequadamente com essas otimizações de economia de energia, deve-se testá-lo
- simulando estes estados de baixa energia.
-</p>
-
-<h4 id="doze">Testar o aplicativo com Soneca</h4>
-
-<p>Para testar a Soneca com o aplicativo:</p>
-
-<ol>
-<li>Configure um dispositivo de hardware ou virtual com uma imagem do sistema M Preview.</li>
-<li>Conecte o dispositivo à máquina de desenvolvimento e instale o aplicativo.</li>
-<li>Execute o aplicativo e deixe-o ativo.</li>
-<li>Simule o dispositivo acessando o modo Soneca executando os seguintes comandos:
-
-<pre>
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-
-  </li>
-  <li>Observe o comportamento do aplicativo quando o dispositivo é reativado. Certifique-se de que
- ele se recupere corretamente quando o dispositivo sai do modo Soneca.</li>
-</ol>
-
-
-<h4 id="standby">Testar o aplicativo no modo de espera</h4>
-
-<p>Para testar o modo de espera do aplicativo:</p>
-
-<ol>
-  <li>Configure um dispositivo de hardware ou virtual com uma imagem do sistema M Preview.</li>
-  <li>Conecte o dispositivo à máquina de desenvolvimento e instale o aplicativo.</li>
-  <li>Execute o aplicativo e deixe-o ativo.</li>
-  <li>Simule o aplicativo acessando o modo de espera executando os seguintes comandos:
-
-<pre>
-$ adb shell am broadcast -a android.os.action.DISCHARGING
-$ adb shell am set-idle &lt;packageName&gt; true
-</pre>
-
-  </li>
-  <li>Simule o despertar do aplicativo usando o seguinte comando:
-    <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
-  </li>
-  <li>Observe o comportamento do aplicativo quando ele é despertado. Certifique-se de que ele se recupere corretamente
- do modo de espera. Particularmente, deve-se verificar se as notificações e os trabalho de segundo plano
- do aplicativo continuam a funcionar como o esperado.</li>
-</ol>
-
-<h2 id="ids">Backup automático para aplicativos e identificadores específicos do dispositivo</h2>
-
-<p>Caso o aplicativo esteja persistindo qualquer identificador específico do dispositivo, como o ID de registro do Google
-Cloud Messaging, no armazenamento interno,
-certifique-se de seguir as práticas recomendadas para excluir o local de armazenamento
-do backup automático, como descrito em <a href="{@docRoot}preview/backup/index.html">Backup automático
-para aplicativos</a>. </p>
diff --git a/docs/html-intl/intl/pt-br/preview/testing/performance.jd b/docs/html-intl/intl/pt-br/preview/testing/performance.jd
deleted file mode 100644
index d541be1..0000000
--- a/docs/html-intl/intl/pt-br/preview/testing/performance.jd
+++ /dev/null
@@ -1,656 +0,0 @@
-page.title=Teste de desempenho de exibição
-page.image=images/cards/card-test-performance_2x.png
-page.keywords=performance, fps, tools
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Neste documento</h2>
-      <ol>
-        <li><a href="#measure">Medir desempenho da IU</a>
-          <ul>
-            <li><a href="#aggregate">Agregar estatísticas de quadro</a></li>
-            <li><a href="#timing-info">Informações de precisão de quadro</a></li>
-            <li><a href="#timing-dump">Despejo de precisão de quadro simples</a></li>
-            <li><a href="#collection-window">Controlar janela de coleta de estatísticas</a></li>
-            <li><a href="#diagnose">Diagnosticar regressões de desempenho</a></li>
-            <li><a href="#resources">Recursos adicionais</a></li>
-          </ul>
-        </li>
-        <li><a href="#automate">Automatizar teste de desempenho da IU</a>
-          <ul>
-            <li><a href="#ui-tests">Configurar testes da IU</a></li>
-            <li><a href="#automated-tests">Configurar testes automatizados da IU</a></li>
-            <li><a href="#triage">Triagem e resolução de problemas observados</a></li>
-          </ul>
-        </li>
-      </ol>
-  </div>
-</div>
-
-
-<p>
-  O teste de desempenho da interface do usuário (IU) garante que o aplicativo
- não só esteja de acordo com os requisitos funcionais, como também que as interações de usuários
- sejam muito mais suaves, executando a 60 quadros por segundo de forma consistente (<a href="https://www.youtube.com/watch?v=CaMTIgxCSqU&amp;index=25&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">por que
- 60 qps?</a>), sem nenhum quadro atrasado ou descartado ou, como gostamos de chamar, <em>"jank"</em>. Este documento explica as ferramentas disponíveis
- para medir o desempenho da IU e dispõe uma abordagem para integrar
- as medidas de desempenho de IU nas práticas de teste.
-</p>
-
-
-<h2 id="measure">Medir desempenho da IU</h2>
-
-<p>
-  Para aprimorar o desempenho, deve-se primeiro ter a habilidade de medir o desempenho
- do sistema e, em seguida, diagnosticar e identificar problemas que podem ocorrer
- em várias partes do processo.
-</p>
-
-<p>
-  <em><a href="https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></em> é uma ferramenta
- do Android que é executada no dispositivo e despeja informações interessantes sobre o estado
- dos serviços do sistema. Passar o comando <em>gfxinfo</em> para dumpsys fornece uma saída no logcat
- com informações de desempenho relacionada aos quadros de animação que ocorrem
- durante a fase de registro.
-</p>
-
-<pre>
-&gt; adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt;
-</pre>
-
-<p>
-  Este comando pode produzir diversas variáveis de dados de precisão de quadro.
-</p>
-
-<h3 id="aggregate">Agregar estatísticas de quadro</h3>
-
-<p>
-  Com o M Preview, o comando emite uma análise agregada dos dados de quadro para logcat,
- coletados em todo o ciclo de vida do processo. Por exemplo:
-</p>
-
-<pre class="noprettyprint">
-Stats since: 752958278148ns
-Total frames rendered: 82189
-Janky frames: 35335 (42.99%)
-90th percentile: 34ms
-95th percentile: 42ms
-99th percentile: 69ms
-Number Missed Vsync: 4706
-Number High input latency: 142
-Number Slow UI thread: 17270
-Number Slow bitmap uploads: 1542
-Number Slow draw: 23342
-</pre>
-
-<p>
-  Estas estatísticas de alto nível carregam um alto nível de desempenho de renderização do aplicativo,
- bem como a estabilidade em vários quadros.
-</p>
-
-
-<h3 id="timing-info">Informações de precisão de quadro</h3>
-
-<p>
-  Com o M Preview, há um novo comando para gfxinfo, o <em>framestats</em>, que fornece
- informações de precisão de quadros extremamente detalhadas dos quadros recentes para que você possa rastrear
- e depurar os problemas de forma mais precisa.
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats
-</pre>
-
-<p>
-  Este comando emite informações de precisão de quadros, com marcações de data e hora, dos últimos 120
- quadros produzidos pelo aplicativo. Abaixo, há um exemplo de saída bruta das estatísticas
- de quadro de adb dumpsys gfxinfo &lt;PACKAGE_NAME&gt;:
-</p>
-
-<pre class="noprettyprint">
-0,49762224585003,49762241251670,9223372036854775807,0,49762257627204,49762257646058,49762257969704,49762258002100,49762265541631,49762273951162,49762300914808,49762303675954,
-0,49762445152142,49762445152142,9223372036854775807,0,49762446678818,49762446705589,49762447268818,49762447388037,49762453551527,49762457134131,49762474889027,49762476150120,
-0,49762462118845,49762462118845,9223372036854775807,0,49762462595381,49762462619287,49762462919964,49762462968454,49762476194547,49762476483454,49762480214964,49762480911527,
-0,49762479085548,49762479085548,9223372036854775807,0,49762480066370,49762480099339,49762481013089,49762481085850,49762482232152,49762482478350,49762485657620,49762486116683,
-</pre>
-
-<p>
-  Cada linha desta saída representa um quadro produzido pelo aplicativo. Cada linha tem um número fixo
- de colunas que descrevem o tempo gasto em cada estágio do pipeline que produz quadros. A próxima seção descreve
- este formato com detalhes, incluindo o que cada coluna representa.
-</p>
-
-
-<h4 id="fs-data-format">Formato de dados de estatísticas de quadro</h4>
-
-<p>
-  Como o bloco de dados é a saída no formato CSV, basta colá-lo na ferramenta
- de planilha de sua escolha ou coletá-lo e analisá-lo com o script. A tabela a seguir explica o formato
- das colunas de dados de saída. Todas as marcações de data e hora estão em nanossegundos.
-</p>
-
-<ul>
-  <li>SINALIZADORES
-    <ul>
-      <li>Linhas com ‘0’ para a coluna FLAGS podem ter o tempo total de quadros calculado
- subtraindo a coluna INTENDED_VSYNC da coluna FRAME_COMPLETED.
-      </li>
-
-      <li>Se for um número diferente de zero, a linha deverá ser ignorada, pois o quadro será determinado
- como exceção em comparação ao desempenho normal, onde espera-se que o layout e o desenho
- demorem mais do que 16 ms. Eis alguns motivos para que isto ocorra:
-        <ul>
-          <li>Layout da janela alterado (como o primeiro quadro do aplicativo
- ou após uma rotação)
-          </li>
-
-          <li>Também é possível que o quadro seja ignorado, quando alguns valores
- ainda terão marcações de data e hora de lixo. Um quadro pode ser ignorado se, por exemplo,
- estiver executando a 60 quadros por segundo ou se nada na tela estiver incorreto, o que não necessariamente
- é um sinal de problema no aplicativo.
-          </li>
-        </ul>
-      </li>
-    </ul>
-  </li>
-
-  <li>INTENDED_VSYNC
-    <ul>
-      <li>O ponto inicial planejado para o quadro. Se este valor for diferente de VSYNC,
- significa que há um trabalho ocorrendo no encadeamento da IU que não permitiu que ele respondesse
- ao sinal de vsync de forma precisa.
-      </li>
-    </ul>
-  </li>
-
-  <li>VSYNC
-    <ul>
-      <li>O valor de tempo foi usado em todos os escutadores vsync e no desenho para o quadro
- (retorno de chamada do quadro Choreographer, animações, View.getDrawingTime(), etc.)
-      </li>
-
-      <li>Para entender mais sobre VSYNC e como ele influencia o aplicativo, assista ao vídeo
- <a href="https://www.youtube.com/watch?v=1iaHxmfZGGc&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=23">
-Entendimento do VSYNC</a>.
-      </li>
-    </ul>
-  </li>
-
-  <li>OLDEST_INPUT_EVENT
-    <ul>
-      <li>A marcação de data e hora do evento de entrada mais antigo na fila de entrada, ou Long.MAX_VALUE
- se não houver eventos de entrada para o quadro.
-      </li>
-
-      <li>Este valor é principalmente planejado para o trabalho da plataforma e tem utilidade limitada
- para desenvolvedores de aplicativos.
-      </li>
-    </ul>
-  </li>
-
-  <li>NEWEST_INPUT_EVENT
-    <ul>
-      <li>A marcação de data e hora do evento de entrada mais recente na fila de entrada
- ou 0 se não houver eventos de entrada para o quadro.
-      </li>
-
-      <li>Este valor é principalmente planejado para o trabalho da plataforma e tem utilidade limitada
- para desenvolvedores de aplicativos.
-      </li>
-
-      <li>No entanto, é possível ter uma breve ideia da quantidade de latência que o aplicativo
- está adicionado verificando (FRAME_COMPLETED - NEWEST_INPUT_EVENT).
-      </li>
-    </ul>
-  </li>
-
-  <li>HANDLE_INPUT_START
-    <ul>
-      <li>A marcação de data e hora em que os eventos de entrada foram despachados para o aplicativo.
-      </li>
-
-      <li>Ao olhar o horário entre isto e ANIMATION_START, é possível medir o tempo que o aplicativo
- gastou para lidar com os eventos de entrada.
-      </li>
-
-      <li>Se este número for alto (&gt; 2 ms), indica que o aplicativo está gastando
- tempo demais processando os eventos de entrada, como View.onTouchEvent(), o que pode indicar
- que este trabalho precisa ser otimizado ou descarregado para um encadeamento diferente. Observe que há algumas situações,
- como eventos de clique que iniciam novas atividades,
- em que é esperado e aceitável que este número seja grande.
-      </li>
-    </ul>
-  </li>
-
-  <li>ANIMATION_START
-    <ul>
-      <li>A marcação de data e hora em que as animações registradas com Choreographer foram executadas.
-      </li>
-
-      <li>Ao olhar para o tempo entre isto e PERFORM_TRANVERSALS_START,
- é possível determinar o tempo levado para avaliar todos os animadores
- (ObjectAnimator, ViewPropertyAnimator e Transitions sendo as mais comuns) que estão sendo executados.
-      </li>
-
-      <li>Se este número for alto (&gt; 2 ms), verifique se o aplicativo gravou qualquer animador
- personalizado ou quais campos de ObjectAnimators estão animando
- e certifique-se de que eles sejam adequados para uma animação.
-      </li>
-
-      <li>Para saber mais sobre Choreographer, assista ao vídeo
- <a href="https://developers.google.com/events/io/sessions/325418001">Para melhor ou pior</a>.
-      </li>
-    </ul>
-  </li>
-
-  <li>PERFORM_TRAVERSALS_START
-    <ul>
-      <li>Se você subtrair o DRAW_START deste valor, será possível extrair o tempo que as fases de medida e layout
- levaram para serem concluídas (observação: durante uma rolagem ou animação,
- espera-se que este valor seja próximo a zero).
-      </li>
-
-      <li>Para saber mais sobre as fases de medida e layout do pipeline de renderização,
- assista ao vídeo <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">
-Invalidações, layouts e desempenho</a>
-      </li>
-    </ul>
-  </li>
-
-  <li>DRAW_START
-    <ul>
-      <li>O horário em que a fase de desenho de performTraversals foi iniciada. Este é o ponto inicial
- do registro de listas de exibição de vistas que foram invalidadas.
-      </li>
-
-      <li>O tempo entre isto e SYNC_START é o tempo levado para chamar View.draw()
- em todas as vistas invalidadas na árvore.
-      </li>
-
-      <li>Para obter mais informações sobre o modelo de desenho, assista aos vídeos <a href="{@docRoot}guide/topics/graphics/hardware-accel.html#hardware-model">Aceleração de hardware</a>
- ou <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">
- Invalidações, layouts e desempenho</a>
-      </li>
-    </ul>
-  </li>
-
-  <li>SYNC_START
-    <ul>
-      <li>O horário em que a fase de sincronização do desenho foi iniciada.
-      </li>
-
-      <li>Se o tempo entre isto e ISSUE_DRAW_COMMANDS_START for substancial (aproximadamente &gt; 0,4ms),
- geralmente indicará que vários Bitmaps novos que foram desenhados deverão
- ser enviados para o GPU.
-      </li>
-
-      <li>Para entender mais sobre a fase de sincronização, assista ao vídeo <a href="https://www.youtube.com/watch?v=VzYkVL1n4M8&amp;index=24&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">
-Renderização de GPU de perfil</a>
-      </li>
-    </ul>
-  </li>
-
-  <li>ISSUE_DRAW_COMMANDS_START
-    <ul>
-      <li>O horário em que o renderizador de hardware começou a emitir comandos de desenho para a GPU.
-      </li>
-
-      <li>O tempo entre isto e FRAME_COMPLETED fornece uma breve ideia da quantidade de trabalho de GPU
- que o aplicativo está produzindo. Problemas com excesso ou efeitos de renderização
- ineficientes são exibidos aqui.
-      </li>
-    </ul>
-  </li>
-
-  <li>SWAP_BUFFERS
-    <ul>
-      <li>O horário em que o eglSwapBuffers foi chamado, relativamente desinteressante
- fora do trabalho da plataforma.
-      </li>
-    </ul>
-  </li>
-
-  <li>FRAME_COMPLETED
-    <ul>
-      <li>Tudo feito! O tempo total gasto trabalhando neste quadro pode ser calculando
- realizando FRAME_COMPLETED - INTENDED_VSYNC.
-      </li>
-    </ul>
-  </li>
-
-</ul>
-
-<p>
-  É possível usar estes dados de várias formas. Uma visualização simples mas útil é o histograma
- exibindo a distribuição dos tempos dos quadros (FRAME_COMPLETED - INTENDED_VSYNC)
- em diferentes espaços de latência. Consulte a figura abaixo. Este gráfico mostra brevemente que a maioria
- dos quadros estavam bons — bem abaixo do limite de 16 ms (representado em vermelho) —,
- mas que alguns quadros estavam bem acima do limite. Podemos verificar as alterações neste histograma
- com o tempo para encontrar as mudanças indiscriminadas ou novas exceções sendo criadas. Também é possível colocar em gráfico a latência de entrada,
- o tempo gasto no layout ou outras medidas interessantes com base
- nas várias marcações de data e hora nos dados.
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-framestats.png">
-
-
-<h3 id="timing-dump">Despejo de precisão de quadro simples</h3>
-
-<p>
-  Se a <strong>renderização de GPU de perfil</strong> for definida para <strong>em adb shell dumpsys gfxinfo</strong>
- nas opções de desenvolvedor, o comando <code>adb shell dumpsys gfxinfo</code> emitirá informações
- de precisão para os 120 quadros mais recentes, divididas em algumas categorias
- com valores separados por guias. Estes dados podem ser úteis para indicar quais partes do pipeline
- de desenho podem estar lentas em um nível alto.
-</p>
-
-<p>
-  Semelhante às <a href="#fs-data-format">estatísticas de quadro</a> acima,
- basta colá-los na ferramenta de planilha de sua escolha ou coletá-los e analisá-los
- com um script. O gráfico a seguir exibe um detalhamento de onde os vários quadros produzidos
- pelo aplicativo gastaram o tempo.
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-frame-latency.png">
-
-<p>
-  O resultado de executar gfxinfo, copiar a saída, colá-lo no aplicativo de planilha
- e gerar um gráfico dos dados como barras empilhadas.
-</p>
-
-<p>
-  Cada barra vertical representa um quadro da animação; sua altura representa a quantidade
- de milissegundos para calcular este quadro de animação. Cada segmento colorido da barra
- representa um estágio diferente do pipeline de renderização para que você possa ver que partes do aplicativo
- podem estar criando um afunilamento. Para obter mais informações sobre o entendimento do pipeline
- de renderização e como otimizá-lo, assista ao vídeo <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;index=27&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">
-Invalidações, layouts e desempenho</a>.
-</p>
-
-
-<h3 id="collection-window">Controlar janela de coleta de estatísticas</h3>
-
-<p>
-  As precisões de quadro simples e estatísticas de quadro coletam dados
- em um período muito curto — cerca de dois segundos de renderização. Para controlar este período de forma precisa — por exemplo,
- restringir os dados para uma animação em particular —, é possível redefinir
- todos os contadores e agregar as estatísticas coletadas.
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; reset
-</pre>
-
-<p>
-  Isto também pode ser usado em conjunto com os próprios comandos de despejo para coletar
- e redefinir em uma cadência regular, capturando períodos de menos de dois segundos de quadros
- continuamente.
-</p>
-
-
-<h3 id="diagnose">Diagnosticar regressões de desempenho</h3>
-
-<p>
-  A identificação de regressões é uma boa primeira etapa para rastrear os problemas
- e manter o bem-estar do aplicativo. No entanto, o dumpsys identifica apenas a existência
- e a gravidade relativa dos problemas. Ainda é necessário diagnosticar a causa particular dos problemas
- de desempenho e encontrar maneiras adequadas de resolvê-los. Para isso, é altamente recomendado
- o uso da ferramenta <a href="{@docRoot}tools/help/systrace.html">systrace</a>.
-</p>
-
-
-<h3 id="resources">Recursos adicionais</h3>
-
-<p>
-  Para obter mais informações sobre como o pipeline de renderização do Android funciona,
- problemas comuns que podem ser encontrados e como resolvê-los,
- alguns dos seguintes recursos podem ser úteis:
-</p>
-
-<ul>
-  <li>Desempenho de renderização 101
-  </li>
-  <li>Por que 60 qps?
-  </li>
-  <li>GPU e IU do Android
-  </li>
-  <li>Invalidações, layouts e desempenho
-  </li>
-  <li>Análise do desempenho de IU com Systrace
-  </li>
-</ul>
-
-
-<h2 id="automate">Automatizar teste de desempenho da IU</h2>
-
-<p>
-  Uma abordagem para o teste de desempenho da IU é fazer com que um testador humano
- realize uma série de operações de usuário no aplicativo-alvo e procure visualmente problemas
- ou gaste uma grande quantidade de tempo usando uma abordagem de ferramenta para encontrá-los. No entanto, esta abordagem manual
- é repleta de riscos: a habilidade humana de notar alterações na taxa de quadros varia tremendamente,
- além de consumir tempo, ser tedioso e propenso a erros.
-</p>
-
-<p>
-  Uma abordagem mais eficiente é registrar e analisar as métricas de desempenho essenciais
- dos testes de IU automatizados. O Android M Developer Preview inclui novas capacidades de registro que facilitam
- a determinação da quantidade e da gravidade de erros nas animações do aplicativo
- e que podem ser usadas para compilar um processo rigoroso para determinar o desempenho atual
- e rastrear os futuros objetivos de desempenho.
-</p>
-
-<p>
-  Este artigo mostra uma abordagem recomendada para usar estes dados para automatizar
- o teste de desempenho.
-</p>
-
-<p>
-  Ele é geralmente dividido em duas ações principais. Primeiro: identificar o que está testando
- e como será testado. Segundo: configuração e manutenção
- de um ambiente de teste automatizado.
-</p>
-
-
-<h3 id="ui-tests">Configurar de testes da IU</h3>
-
-<p>
-  Antes de iniciar o teste automatizado, é importante determinar algumas decisões de alto nível
- para entender corretamente o espaço de teste e as possíveis necessidades.
-</p>
-
-<h4>
-  Identificar principais animações/fluxos a testar
-</h4>
-
-<p>
-  Lembre-se que um desempenho ruim é mais visível aos usuários quando
- interrompe uma animação suave. Portanto, ao identificar que tipos de ações de IU serão testadas, é útil se concentrar
- nas animações principais que os usuários veem
- ou nas mais importantes para a experiência. Por exemplo, eis alguns cenários comuns que pode ser útil identificar:
-</p>
-
-<ul>
-  <li>Rolagem de um ListView ou RecyclerView principal
-  </li>
-
-  <li>Animações durante ciclos de espera assíncrona
-  </li>
-
-  <li>Qualquer animação que possa ter manipulação ou carregamento de bitmap
-  </li>
-
-  <li>Animações com mistura alpha
-  </li>
-
-  <li>Desenho de vista personalizada com Canvas
-  </li>
-</ul>
-
-<p>
-  Trabalhe com engenheiros, designers, e gerentes de produto em sua equipe para priorizar
- as animações de produto essenciais para a cobertura de teste.
-</p>
-
-<h4>
-  Defina os futuros objetivos e faça um rastreamento
-</h4>
-
-<p>
-  De um alto nível, talvez seja essencial identificar os objetivos específicos de desempenho
- e concentrar-se em escrever testes e coletar dados. Por exemplo:
-</p>
-
-<ul>
-  <li>Quer apenas iniciar o rastreamento de desempenho de IU pela primeira vez para aprender mais?
-  </li>
-
-  <li>Quer evitar regressões que possam ser introduzidas no futuro?
-  </li>
-
-  <li>Está com 90% de quadros suaves hoje e deseja chegar a 98% neste trimestre?
-  </li>
-
-  <li>Está com 98% de quadros suaves e não quer regredir?
-  </li>
-
-  <li>O seu objetivo é aprimorar o desempenho em dispositivos de baixo nível?
-  </li>
-</ul>
-
-<p>
-  Em todos esses casos, você optará pelo rastreamento histórico, que exibe o desempenho
- entre várias versões do aplicativo.
-</p>
-
-<h4>
-  Identificar dispositivos para realizar testes
-</h4>
-
-<p>
-  O desempenho do aplicativo varia dependendo do dispositivo em que está sendo executado. Alguns dispositivos podem
- conter menos memória, GPUs menos eficientes ou chips de CPU mais lentos. Isto significa que as animações que podem
- ter um bom desempenho em um conjunto de hardwares podem não ter o mesmo desempenho em outras,
- podendo ser o resultado de um afunilamento em uma parte diferente do pipeline. Portanto, para contabilizar
- esta variação em o que o usuário pode ver, escolha uma variação de dispositivos
- para executar os testes: dispositivos e tablets de alto e baixo nível etc. Procure variações no desempenho de CPU,
- RAM, densidade da tela, tamanho etc. Testes que passam em dispositivos de alto nível
- podem falhar em dispositivos de baixo nível.
-</p>
-
-<h4>
-  Estruturas básicas para teste de IU
-</h4>
-
-<p>
-  Conjuntos de ferramenta, como <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a> e
- <a href="{@docRoot}training/testing/ui-testing/espresso-testing.html">Espresso</a>,
- são integrados para ajudar na automatização da ação de um usuário movendo-se pelo aplicativo. São estruturas simples
- que imitam a interação de usuário no dispositivo. Para usar estas estruturas,
- você cria efetivamente scripts únicos que executam um conjunto
- de ações de usuário e reproduzem-nas no próprio dispositivo.
-</p>
-
-<p>
-  Ao combinar estes testes automatizados, juntamente com <code>dumpsys gfxinfo</code>, é possível criar
- rapidamente um sistema reproduzível que permite a execução de um teste e a medição das informações
- de desempenho desta condição em particular.
-</p>
-
-
-<h3 id="automated-tests">Configurar testes automatizados da IU</h3>
-
-<p>
-  Com a habilidade de executar um teste de IU e um pipeline para coletar
- os dados de um único teste, a próxima etapa importante é adotar uma estrutura que pode executar
- esse teste várias vezes, em vários dispositivos, e agregar os dados de desempenho resultados
- para futuras análises da equipe de desenvolvimento.
-</p>
-
-<h4>
-  Uma estrutura para automatização de testes
-</h4>
-
-<p>
-  Vale observar que as estruturas de teste de IU (como o <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a>)
- são executadas diretamente no emulador/dispositivo alvo. Enquanto as informações de coleta de desempenho feita
- pelo <em>dumpsys gfxinfo</em> forem direcionadas por uma máquina hospedeira, envie comandos pelo ADB. Para ajudar a transmitir
- a automatização dessas entidades separadas, a estrutura <a href="{@docRoot}tools/help/monkeyrunner_concepts.html">MonkeyRunner</a>
- foi desenvolvida: um sistema de script que é executado na máquina host que pode
- emitir comandos para um conjunto de dispositivos conectados, bem como receber dados deles.
-</p>
-
-<p>
-  A compilação de um conjunto de scripts para uma automatização adequada de teste de desempenho de IU,
- no mínimo, deve ser capaz de utilizar o MonkeyRunner para realizar as seguintes tarefas:
-</p>
-
-<ul>
-  <li>Carregar e iniciar um APK desejado para um emulador ou dispositivo alvo.
-  </li>
-
-  <li>Iniciar um teste de IU do UI Automator e permitir que ele seja executado.
-  </li>
-
-  <li>Coletar informações de desempenho por meio de <em>dumpsys gfxinfo</em><em>.</em>
-  </li>
-
-  <li>Agregar informações e exibi-las de forma útil para o desenvolvedor.
-  </li>
-</ul>
-
-
-<h3 id="triage">Triagem e resolução de problemas observados</h3>
-
-<p>
-  Quando os padrões ou regressões dos problemas forem identificados, a próxima etapa
- é identificar e aplicar a resolução. Se a estrutura de teste automatizado preservar o detalhamento preciso para os quadros,
- ela poderá ajudar na inspeção de alterações de layout/código suspeitos recentes (em caso
- de regressão) ou reduzir a parte do sistema que você está analisando ao alternar
- para a investigação manual. Para a investigação manual, <a href="{@docRoot}tools/help/systrace.html">systrace</a> é um ótimo lugar para começar,
- exibindo as informações de precisão sobre cada estágio do pipeline de renderização,
- cada encadeamento e núcleo no sistema, bem como quaisquer marcadores de evento personalizados definidos.
-</p>
-
-<h4>
-  Geração de perfis adequada de precisões temporais
-</h4>
-
-<p>
-  É importante observar as dificuldades em obter e medir as precisões
- do desempenho de renderização. Esses números são, por natureza, não determinísticos e frequentemente
- oscilam dependendo do estado do sistema, da quantidade de memória disponível,
- da diminuição termal e da última vez em que a luz do sol atingiu a sua área da Terra. Ou seja, é possível executar
- o mesmo teste duas vezes e receber números levemente diferentes
- que podem ser muito próximos, mas não idênticos.
-</p>
-
-<p>
-  A coleta e a geração de perfil de dados nesta maneira significa executar o mesmo teste,
- várias vezes, e acumular os resultados como uma média ou valor mediano (para a simplicidade,
- chamemos de "lote"). Isto fornece uma aproximação do desempenho do teste,
- já que precisões exatas não são necessárias.
-</p>
-
-<p>
-  Os lotes podem ser usados entre alterações de códigos para verificar o impacto relativo
- dessas alterações no desempenho. Se a taxa de quadros média para o lote antes da alteração
- for maior do que o lote após a alteração, então o resultado de desempenho wrt geral será um sucesso
- para esta alteração em particular.
-</p>
-
-<p>
-  Isto significa que qualquer teste de IU automatizado feito deve levar este conceito
- em consideração, bem como quaisquer anomalias que possam ocorrer durante um teste. Por exemplo,
- se o desempenho do aplicativo repentinamente cair devido a algum problema do dispositivo
- (que não tenha sido causado pelo aplicativo), então talvez seja necessário executar
- o lote novamente para obter precisões menos caóticas.
-</p>
-
-<p>
-  Logo, quantas vezes deve-se realizar um teste antes de as medidas terem algum sentido? 10 vezes deve ser o mínimo,
- com números altos como 50 ou 10 oferecendo resultados mais precisos
- (é claro que se deve levar em consideração o tempo para ter mais precisão).
-</p>
diff --git a/docs/html-intl/intl/pt-br/sdk/index.jd b/docs/html-intl/intl/pt-br/sdk/index.jd
new file mode 100644
index 0000000..c8f8292
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/sdk/index.jd
@@ -0,0 +1,430 @@
+page.title=Como baixar o Android Studio e o SDK Tools
+page.tags=sdk, android studio
+page.template=sdk
+page.image=images/cards/android-studio_2x.png
+header.hide=1
+page.metaDescription=Baixar o Android IDE e ferramentas do desenvolvedor para compilar aplicativos para celulares, tablets, dispositivos de uso junto ao corpo, TVs e muito mais do Android.
+
+@jd:body
+
+<style type="text/css">
+  .offline {display:none;}
+  h2.feature {
+    padding-top:30px;
+    margin-top:0;
+    clear:both;
+  }
+  .feature-blurb {
+  margin:0px; font-size:16px; font-weight:300;
+  padding-top:40px;
+  }
+
+  .landing-button .small {
+    font-size: 12px;
+    font-weight: normal;
+    line-height: 12px;
+    display: block;
+  }
+
+  h1.studio-logo {
+    width:226px;
+    height:78px;
+    display:block;
+    padding:0;
+    white-space: nowrap;
+    text-indent: -10000px;
+    font-size:0px;
+    background: url({@docRoot}images/tools/studio-logo.png);
+    background-image: -webkit-image-set(url({@docRoot}images/tools/studio-logo.png) 1x, url({@docRoot}images/tools/studio-logo_2x.png) 2x);
+    background-size: 226px 78px;
+  }
+
+</style>
+
+
+
+
+
+<div style="position:relative;">
+
+
+<div class="wrap" id="tos" style="display:none;width:inherit;height:650px">
+<div class="col-13" style="margin:0;">&nbsp;</div><!-- provides top margin for content -->
+
+<h1 id="tos-header" style="margin-top:0">Baixar</h1>
+
+<p class="sdk-terms-intro">Antes de instalar o Android Studio ou a versão independente das ferramentas SDK,
+você deve concordar com os termos e condições a seguir:</p>
+
+<div class="sdk-terms" onfocus="this.blur()">
+<h2 class="norule">Termos e condições</h2>
+Esse é o Contrato de licença do conjunto de desenvolvimento de software do Android
+
+<h3>1. Introduction</h3>
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+
+<h3>2. Accepting this License Agreement</h3>
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
+
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
+
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+
+
+<h3>3. SDK License from Google</h3>
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
+
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
+
+3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
+
+
+<h3>4. Use of the SDK by You</h3>
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+
+<h3>5. Your Developer Credentials</h3>
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+
+<h3>6. Privacy and Information</h3>
+6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy.
+
+
+<h3>7. Third Party Applications</h3>
+7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
+
+
+<h3>8. Using Android APIs</h3>
+8.1 Google Data APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+
+<h3>9. Terminating this License Agreement</h3>
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
+(B) Google is required to do so by law; or
+(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
+(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
+
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+
+
+<h3>10. DISCLAIMER OF WARRANTIES</h3>
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+
+<h3>11. LIMITATION OF LIABILITY</h3>
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+
+<h3>12. Indemnification</h3>
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
+
+
+<h3>13. Changes to the License Agreement</h3>
+13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available.
+
+
+<h3>14. General Legal Terms</h3>
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+
+<em>November 20, 2015</em>
+</div>
+
+
+
+
+
+<div id="next-steps" style="display:none;position:absolute;width:inherit">
+  <p>Você está a alguns passos de programar aplicativos para Android!</p>
+  <p>Em alguns instantes você será redirecionado para
+<a id="next-link" href="{@docRoot}sdk/installing/index.html">Instalação do Android SDK</a>.</p>
+
+</div><!-- end next-steps -->
+
+
+
+<div id="sdk-terms-form">
+<p>
+<input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+<label id="agreeLabel" for="agree">Li e concordo com todos os termos e condições expressos acima</label>
+</p>
+<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+</div>
+
+
+</div><!-- end TOS -->
+
+
+
+
+
+
+<div id="landing">
+
+<div class="col-13">&nbsp;</div><!-- provides top margin for content -->
+
+<img src="{@docRoot}images/tools/studio-hero.png" srcset="{@docRoot}images/tools/studio-hero_2x.png 2x, {@docRoot}images/tools/studio-hero.png 1x" width="760" height="400"/>
+
+<div style="color: #fff; width:226px; height:0; overflow:visible; position:absolute; top:40px; left:25px">
+
+<h1 class="studio-logo" style="margin:0 0 35px !important">Android Studio</h1>
+
+<p style="font-size: 16px; color:#bbb; position: absolute;left: 297px; top: 5px; display: block;
+width: 400px;text-align: center;">O IDE oficial do Android</p>
+
+<ul style="font-size:12px;line-height:19px;">
+<li>IDE do Android Studio</li>
+<li>Ferramentas do Android SDK</li>
+<li>Plataforma do Android 6.0 (Marshmallow)</li>
+<li>Imagem do sistema do emulador do Android 6.0 com APIs da Google</li>
+</ul>
+
+
+<a class="online landing-button green download-bundle-button"
+href="#Other" >Download Android Studio<br/><span class='small'></span></a>
+
+<!-- this appears when viewing the offline docs -->
+<p class="offline">
+Para obter o Android Studio ou a versão independente das ferramentas SDK, acesse <a href="http://developer.android.com/sdk/index.html">developer.android.com/sdk/</a>
+</p>
+</div>
+
+<ul>
+  <li><a href="#Requirements">Requisitos do sistema</a></li>
+  <li> <a href="#Other">Outras opções de download</a></li>
+  <li><a href="{@docRoot}sdk/installing/migrate.html">Migração para o Android Studio</a></li>
+  <li><a href="https://docs.google.com/a/google.com/forms/d/1mjsyfzv3HAnDY-_Kfj-3QJKdpuksyMFs9e73CRwmT6Q/viewform" target="_blank">Realização de uma pesquisa</a></li>
+</ul>
+
+
+
+
+<h2 class="feature norule" >Editor de código inteligente</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-code.png" srcset="{@docRoot}images/tools/studio-hero-code_2x.png 2x, {@docRoot}images/tools/studio-hero-code.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>No núcleo do Android Studio, há um editor de código inteligente capaz de realizar,
+refatorar e analisar códigos avançados.</p>
+  <p>O poderoso editor de código auxilia na maior produtividade do desenvolvedor de aplicativos Android.</p>
+</div>
+
+
+
+
+
+<h2 class="feature norule">Modelos de códigos e integração GitHub</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-import.png" srcset="{@docRoot}images/tools/studio-hero-import_2x.png 2x, {@docRoot}images/tools/studio-hero-import.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Os novos assistentes de projeto facilitam iniciar um projeto como nunca antes.</p>
+
+  <p>Inicie projetos usando códigos de modelo para padrões como menus de navegação e ViewPagers,
+e até importe exemplos de código da Google a partir do GitHub.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">Desenvolvimento de aplicativos multitelas</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-screens.png" srcset="{@docRoot}images/tools/studio-hero-screens_2x.png 2x, {@docRoot}images/tools/studio-hero-screens.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Programe aplicativos para celulares Android, tablets, Android Wear,
+Android TV, Android Auto e Google Glass.</p>
+  <p>Com a nova visualização de projeto Android e a compatibilidade com módulos no Android Studio,
+é mais fácil gerenciar projetos e recursos de aplicativos.
+</div>
+
+
+
+
+<h2 class="feature norule">Dispositivos virtuais para todas as formas e tamanhos</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-avds.png" srcset="{@docRoot}images/tools/studio-hero-avds_2x.png 2x, {@docRoot}images/tools/studio-hero-avds.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>O Android Studio já é pré-configurado com uma imagem do emulador otimizada.</p>
+  <p>O Gerenciador de dispositivos virtual atualizado e simplificado fornece
+perfis de dispositivos pré-definidos para dispositivos Android comuns.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">
+As versões do Android evoluíram com o Gradle</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-gradle.png" srcset="{@docRoot}images/tools/studio-hero-gradle_2x.png 2x, {@docRoot}images/tools/studio-hero-gradle.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Crie diversos APKs para seu aplicativo Android com diferentes recursos usando o mesmo projeto.</p>
+  <p>Gerencie dependências de aplicativo com o Maven.</p>
+  <p>Crie APKs com o Android Studio ou com a linha de comando.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">Saiba mais sobre o Android Studio</h2>
+<div style="background:#424242;padding:30px; color:#fff;margin:0 0 15px;">
+
+<a class="online landing-button green download-bundle-button" style="margin:0 0 40px 60px;float:right" href="">Download</a>
+
+  <ul>
+  <li>Programado no IntelliJ IDEA Edição de Comunidade, o popular IDE da Java da JetBrains.</li>
+  <li>Sistema flexível de programação baseado em Gradle.</li>
+  <li>Crie variantes e várias gerações de APK.</li>
+  <li>Compatibilidade com modelos do Google Services ampliada e com diversos tipos de dispositivos.</li>
+  <li>Editor de layout completo compatível com edição de tema.</li>
+  <li>Ferramentas de identificação de construção suspeita para identificar problemas de desempenho, usabilidade, compatibilidade de versão e outros problemas.</li>
+  <li>ProGuard e recursos de assinatura de aplicativo.</li>
+  <li>Compatibilidade embutida na Google Cloud Platform, facilitando a integração com o Google Cloud
+Messasing e com o App Engine.</li>
+  </ul>
+
+<p style="margin:0">
+Para obter mais detalhes sobre recursos disponíveis no Android Studio,
+leia o guia <a href="{@docRoot}tools/studio/index.html">Conceitos básicos do Android Studio</a>.</p>
+</div>
+
+
+<p>Se você usou o Eclipse com ADT, esteja ciente de que o Android Studio é agora o IDE oficial
+para Android, portanto, é preciso migrar para o Android Studio para receber todas
+as últimas atualizações do IDE. Para obter ajuda para mover projetos,
+consulte <a href="{@docRoot}sdk/installing/migrate.html">Como migrar para o Android
+Studio</a>.</p>
+
+
+
+
+
+
+
+<h2 id="Requirements">Requisitos do sistema</h2>
+
+<h3>Windows</h3>
+
+<ul>
+<li>Microsoft&reg; Windows&reg; 8/7/Vista/2003 (32 ou 64 bits)</li>
+<li>Mínimo de 2 GB de RAM, 4 GB de RAM recomendado</li>
+<li>Espaço de 400 MB no disco rígido</li>
+<li>Pelo menos 1 GB para o Android SDK, imagens do sistema de emulador e caches</li>
+<li>Resolução de tela de 1.280 x 800 no mínimo</li>
+<li>Kit de desenvolvimento Java (JDK) 7 </li>
+<li>Opcional para emulador acelerado: Processador Intel® compatível com Intel® VT-x, Intel® EM64T
+(Intel® 64) e Desativador de bit executável (XD)</li>
+</ul>
+
+
+<h3>Mac OS X</h3>
+
+<ul>
+<li>Mac&reg; OS X&reg; 10.8.5 ou posterior, até o 10.9 (Mavericks)</li>
+<li>Mínimo de 2 GB de RAM, 4 GB de RAM recomendado</li>
+<li>Espaço de 400 MB no disco rígido</li>
+<li>Pelo menos 1 GB para o Android SDK, imagens do sistema de emulador e caches</li>
+<li>Resolução de tela de 1.280 x 800 no mínimo</li>
+<li>Ambiente de tempo de execução Java (JRE) 6</li>
+<li>Kit de desenvolvimento Java (JDK) 7</li>
+<li>Opcional para emulador acelerado: Processador Intel® compatível com Intel® VT-x, Intel® EM64T
+(Intel® 64) e Desativador de bit executável (XD)</li>
+</ul>
+
+<p>No Mac OS, execute o Android Studio com o Ambiente de tempo de execução Java (JRE) 6 para otimizar
+a renderização de fontes. Você pode, então, configurar o projeto para usar o Kit de desenvolvimento Java (JDK) 6 ou o JDK 7.</p>
+
+
+
+<h3>Linux</h3>
+
+<ul>
+<li>Área de trabalho GNOME ou KDE</li>
+<li>Biblioteca GNU C (glibc) 2.15 ou posterior</li>
+<li>Mínimo de 2 GB de RAM, 4 GB de RAM recomendado</li>
+<li>Espaço de 400 MB no disco rígido</li>
+<li>Pelo menos 1 GB para o Android SDK, imagens do sistema de emulador e caches</li>
+<li>Resolução de tela de 1.280 x 800 no mínimo</li>
+<li>Kit de desenvolvimento Oracle&reg; Java (JDK) 7 </li>
+</ul>
+<p>Testado no Trusty Tahr do Ubuntu&reg; 14.04 (distribuição de 64 bits capaz de executar
+aplicativos de 32 bits).</p>
+
+
+
+
+<h2 id="Other" style="clear:left">Outras opções de download</h2>
+
+<!-- alternative SDK options follows -->
diff --git a/docs/html-intl/intl/pt-br/sdk/installing/adding-packages.jd b/docs/html-intl/intl/pt-br/sdk/installing/adding-packages.jd
new file mode 100644
index 0000000..bda33b6
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/sdk/installing/adding-packages.jd
@@ -0,0 +1,226 @@
+page.title=Como adicionar pacotes SDK
+
+page.tags=sdk manager
+
+@jd:body
+
+<style>
+ol.large {
+  margin-left:0;
+}
+ol.large > li {
+  list-style-position: inside;
+  list-style-type:none;
+  margin:30px 0 0 0;
+  padding:30px 20px;
+  background:#eee;
+}
+ol.large > li:nth-child(odd) {
+}
+ol.large > li:before {
+  display:inline;
+  left:-40px;
+  float:left;
+  width:20px;
+  font-size:20px;
+  line-height:20px;
+}
+ol.large > li > h2 {
+  font-size:20px;
+  line-height:20px;
+  padding:0 0 0 20px;
+  margin:0 0 20px 0;
+  display:inline;
+  font-weight:normal;
+}
+ol.large > li:nth-child(1):before {
+  content:"1. ";
+}
+ol.large > li:nth-child(2):before {
+  content:"2. ";
+}
+ol.large > li:nth-child(3):before {
+  content:"3. ";
+}
+ol.large > li:nth-child(4):before {
+  content:"4. ";
+}
+ol.large > li:nth-child(5):before {
+  content:"5. ";
+}
+ol.large > li:nth-child(6):before {
+  content:"6. ";
+}
+</style>
+
+
+<p>
+Por padrão, o Android SDK não inclui tudo que é necessário para começar a desenvolver.
+O SDK separa ferramentas, plataformas e outros componentes em pacotes que podem ser
+baixados conforme necessário usando o 
+<a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>.
+Portanto, antes de iniciar, há alguns pacotes que você deve adicionar ao Android SDK.</p>
+
+<p>Para começar a adicionar pacotes, execute o Android SDK Manager de uma das formas a seguir:</p>
+<ul>
+  <li>No Android Studio, clique em <strong>SDK Manager</strong>
+<img src="{@docRoot}images/tools/sdk-manager-studio.png" style="vertical-align:bottom;margin:0;height:17px" /> na barra de ferramentas.</li>
+  <li>Se não estiver usando o Android Studio:
+    <ul>
+      <li>Windows: Clique duas vezes no arquivo <code>SDK Manager.exe</code> na raiz do diretório do Android
+  SDK.</li>
+      <li>Mac/Linux: Abra um terminal e navegue para o diretório <code>tools/</code> no 
+      local em que o Android SDK foi instalado. Em seguida, execute <code>android sdk</code>.</li>
+    </ul>
+  </li>
+</ul>
+
+<p>Ao abrir o SDK Manager pela primeira vez, vários pacotes são selecionados
+por padrão. Deixe-os selecionados, mas certifique-se de ter tudo o que é necessário
+para começar seguindo os seguintes passos:</p>
+
+
+<ol class="large">
+<li>
+  <h2 id="GetTools" class="norule">Obtenha as ferramentas mais recentes do SDK</h2>
+
+<img src="/images/sdk_manager_packages.png" alt="" width="350" style="float:right;margin-left:20px" />
+
+  <p>No mínimo, ao configurar o Android SDK,
+  é preciso baixar as ferramentas mais recentes e a plataforma Android:</p>
+  <ol>
+   <li>Abra o diretório Tools e selecione:
+     <ul>
+       <li><strong>Ferramentas do Android SDK</strong></li>
+       <li><strong>Ferramentas-plataforma Android SDK</strong></li>
+       <li><strong>Ferramentas-Android SDK Build</strong> (versão mais recente)</li>
+     </ul>
+   </li>
+   <li>Abra a pasta do primeiro Android X.X (a versão mais recente) e selecione:
+     <ul>
+      <li><strong>Plataforma SDK</strong></li>
+      <li>Uma imagem do sistema para o emulador, como <br>
+      <strong>Imagem do sistema ARM EABI v7a</strong></li>
+     </ul>
+   </li>
+  </ol>
+</li>
+
+<li>
+  <h2 id="GetSupportLib" class="norule">Obtenha a biblioteca de suporte para APIs adicionais</h2>
+
+  <div class="sidebox">
+    <p>A biblioteca de suporte é necessária para:</p>
+    <ul>
+      <li><a href="{@docRoot}wear/index.html">Android Wear</a></li>
+      <li><a href="{@docRoot}tv/index.html">Android TV</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+    </ul>
+
+    <p>Ela também fornece estas APIs populares:</p>
+    <ul>
+      <li><a href="{@docRoot}reference/android/support/v4/widget/DrawerLayout.html">Gaveta de
+      navegação</a></li>
+      <li><a href="{@docRoot}reference/android/support/v4/view/ViewPager.html">Vistas de deslizar</a></li>
+      <li><a href="{@docRoot}reference/android/support/v7/app/ActionBar.html">Barra de ação com compatibilidade
+      retroativa</a></li>
+    </ul>
+  </div>
+
+  <p>A <a href="{@docRoot}tools/support-library/features.html">Biblioteca de Suporte do Android</a>
+  fornece um conjunto estendido de APIs compatíveis com a maioria das versões do Android.</p>
+
+  <p>Abra o diretório <strong>Extras</strong> e selecione:</p>
+     <ul>
+       <li><strong>Repositório de Suporte do Android</strong></li>
+       <li><strong>Biblioteca de Suporte do Android</strong></li>
+     </ul>
+
+  <p>&nbsp;</p>
+  <p>&nbsp;</p>
+
+</li>
+
+
+<li>
+  <h2 id="GetGoogle" class="norule">Obtenha os serviços do Google Play para obter ainda mais APIs</h2>
+
+  <div class="sidebox">
+
+    <p>As APIs dos serviços do Google Play fornecem uma variedade de recursos e serviços para aplicativos 
+    Android, como:</p>
+    <ul>
+      <li><a href="{@docRoot}google/play-services/plus.html">Autenticação do usuário</a></li>
+      <li><a href="{@docRoot}google/play-services/maps.html">Google Maps</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+      <li><a href="{@docRoot}google/play-services/games.html">Conquistas e placares de líderes
+      para jogos</a></li>
+      <li><a href="{@docRoot}google/play-services/index.html">E muito mais</a></li>
+    </ul>
+  </div>
+
+  <p>Para desenvolver com as APIs do Google, você precisa do pacote de serviços do Google Play:</p>
+  <p>Abra o diretório <strong>Extras</strong> e selecione:</p>
+     <ul>
+       <li><strong>Repositório do Google</strong></li>
+       <li><strong>Serviços Google Play</strong></li>
+     </ul>
+
+  <p class="note"><strong>Observação:</strong> as APIs dos serviços do Google Play não estão disponíveis em todos os dispositivos
+  com Android, mas estão disponíveis em todos os dispositivos com Google Play Store. Para usar essas 
+  APIs no emulador do Android, também é preciso instalar a imagem do sistema das <strong>APIs do Google</strong>
+  do diretório Android X.X mais recente no SDK Manager.</p>
+</li>
+
+
+<li>
+  <h2 id="Install" class="norule">Instale os pacotes</h2>
+  <p>Depois de selecionar todos os pacotes desejados, prossiga para a instalação:</p>
+  <ol>
+   <li>Clique em <strong>Install X packages</strong> (Instalar X pacotes).</li>
+   <li>Na janela seguinte, clique duas vezes no nome de cada pacote à esquerda
+ para aceitar o contrato de licença de cada um.</li>
+   <li>Clique em <strong>Install</strong> (Instalar).</li>
+  </ol>
+  <p>O andamento do download é exibido na parte inferior da tela do SDK Manager.
+  <strong>Não saia do SDK Manager</strong>, pois isso cancelará o download.</p>
+</li>
+
+<li>
+  <h2 id="Build" class="norule">Crie alguma coisa!</h2>
+
+<p>Com os pacotes acima agora no seu Android SDK, você está pronto para criar aplicativos
+para o Android. À medida que novas ferramentas e outras APIs forem disponibilizadas, basta executar o SDK Manager
+  para baixar os novos pacotes para o SDK.</p>
+
+<p>A seguir há algumas opções sobre como prosseguir:</p>
+
+<div class="cols" style="padding:10px 0">
+<div class="col-4">
+<h3>Introdução</h3>
+<p>Se você é novo no desenvolvimento para Android, aprenda os fundamentos de aplicativos para Android seguindo
+o guia para <strong><a href="{@docRoot}training/basics/firstapp/index.html">Criação do primeiro aplicativo</a></strong>.</p>
+
+</div>
+<div class="col-4 box">
+<h3>Desenvolva para vestíveis</h3>
+<p>Se você está pronto para começar a desenvolver aplicativos para vestíveis Android, consulte o guia para 
+<strong><a href="{@docRoot}wear/preview/start.html">Criação de aplicativos para Android Wear</a></strong>.</p>
+
+</div>
+<div class="col-4 box">
+<h3>Use as APIs do Google</h3>
+<p>Para começar a usar as APIs do Google, como os serviços Maps ou 
+Play Game, consulte o guia para 
+<strong><a href="{@docRoot}google/play-services/setup.html">Configuração dos serviços do 
+Google Play</a></strong>.</p>
+
+</div>
+</div><!-- end cols -->
+
+
+</li>
+
+</ol>
+
+
diff --git a/docs/html-intl/intl/pt-br/training/material/animations.jd b/docs/html-intl/intl/pt-br/training/material/animations.jd
new file mode 100644
index 0000000..6597db6
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/training/material/animations.jd
@@ -0,0 +1,550 @@
+page.title=Como definir animações personalizadas
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lição ensina a</h2>
+<ol>
+  <li><a href="#Touch">Personalizar feedback de toque</a></li>
+  <li><a href="#Reveal">Usar o efeito de revelação</a></li>
+  <li><a href="#Transitions">Personalizar transições de atividades</a></li>
+  <li><a href="#ViewState">Animar mudança de estado da visualização</a></li>
+  <li><a href="#AnimVector">Animar desenháveis de vetor</a></li>
+</ol>
+<h2>Você também deve ler</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificações do Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design no Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>As animações no Material Design dão feedback aos usuários sobre as ações deles e fornecem
+continuidade visual à medida que interagem com o seu aplicativo. O tema do Material fornece algumas animações padrão para
+botões e transições de atividades e o Android 5.0 (API de nível 21) e posteriores permitem a personalização
+dessas animações e a criação de novas:</p>
+
+<ul>
+<li>Feedback de toque</li>
+<li>Revelação circular</li>
+<li>Transições de atividades</li>
+<li>Movimento curvado</li>
+<li>Mudanças de estado da visualização</li>
+</ul>
+
+
+<h2 id="Touch">Personalizar feedback de toque</h2>
+
+<p>Os feedbacks de toque no Material Design fornecem confirmação visual instantânea no
+ponto de contato quando os usuários interagem com elementos da interface do usuário. As animações de feedback de toque padrão
+para botões usam a nova classe {@link android.graphics.drawable.RippleDrawable}, que passa por transições
+entre diferentes estados com um efeito de ondulação.</p>
+
+<p>Na maioria dos casos, você deve aplicar essa funcionalidade no XML de visualização especificando o segundo plano da
+visualização como:</p>
+
+<ul>
+<li><code>?android:attr/selectableItemBackground</code> para uma ondulação delimitada.</li>
+<li><code>?android:attr/selectableItemBackgroundBorderless</code> para uma ondulação que se estenda além
+da visualização. Ele será desenhado sobre e delimitado pelo pai mais próximo da visualização com um segundo plano
+não nulo.</li>
+</ul>
+
+<p class="note"><strong>Observação:</strong> <code>selectableItemBackgroundBorderless</code> é um novo
+atributo introduzido na API de nível 21.</p>
+
+
+<p>Alternativamente, você pode definir um {@link android.graphics.drawable.RippleDrawable}
+como um recurso XML usando o elemento <code>ripple</code>.</p>
+
+<p>Você pode atribuir uma cor para objetos {@link android.graphics.drawable.RippleDrawable}. Para alterar
+a cor do feedback de toque padrão, use o atributo <code>android:colorControlHighlight</code>
+do tema.</p>
+
+<p>Para obter mais informações, consulte a referência de API para a classe {@link
+android.graphics.drawable.RippleDrawable}.</p>
+
+
+<h2 id="Reveal">Usar o efeito de revelação</h2>
+
+<p>Revelar animações fornece continuidade visual aos usuários ao exibir ou esconder um grupo
+de elementos da interface do usuário. O método {@link android.view.ViewAnimationUtils#createCircularReveal
+ViewAnimationUtils.createCircularReveal()} permite animar um círculo de recorte para
+revelar ou ocultar uma visualização.</p>
+
+<p>Para revelar uma visualização anteriormente invisível usando esse efeito:</p>
+
+<pre>
+// previously invisible view
+View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the final radius for the clipping circle
+int finalRadius = Math.max(myView.getWidth(), myView.getHeight());
+
+// create the animator for this view (the start radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius);
+
+// make the view visible and start the animation
+myView.setVisibility(View.VISIBLE);
+anim.start();
+</pre>
+
+<p>Para esconder uma visualização anteriormente visível usando esse efeito:</p>
+
+<pre>
+// previously visible view
+final View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the initial radius for the clipping circle
+int initialRadius = myView.getWidth();
+
+// create the animation (the final radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, initialRadius, 0);
+
+// make the view invisible when the animation is done
+anim.addListener(new AnimatorListenerAdapter() {
+    &#64;Override
+    public void onAnimationEnd(Animator animation) {
+        super.onAnimationEnd(animation);
+        myView.setVisibility(View.INVISIBLE);
+    }
+});
+
+// start the animation
+anim.start();
+</pre>
+
+
+<h2 id="Transitions">Personalizar transições de atividades</h2>
+
+<!-- shared transition video -->
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay="">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.webm">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.ogv">
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <p class="img-caption" style="margin-top:3px;margin-bottom:10px"><strong>Figura 1</strong> - uma
+    transição com elementos compartilhados.</p>
+    <em>Para reproduzir o filme, clique na tela do dispositivo</em>
+  </div>
+</div>
+
+<p>As transições de atividades em aplicativos com Material Design fornecem conexões visuais
+entre estados diferentes por meio de movimentos e transformações entre elementos comuns. Você pode especificar animações personalizadas para
+transições de entrada e de saída e para transições de elementos compartilhados entre atividades.</p>
+
+<ul>
+<li>Uma transição de <strong>entrada</strong> determina como as visualizações em uma atividade entram em cena.
+Por exemplo, na transição de entrada <em>explodir</em>, as visualizações entram em cena por fora
+e voam em direção ao centro da tela.</li>
+
+<li>Uma transição de <strong>saída</strong> determina como as visualizações em uma atividade saem de cena. Por
+  exemplo, na transição de saída <em>explodir</em>, as visualizações saem de cena a partir do
+centro.</li>
+
+<li>Uma transição de <strong>elementos compartilhados</strong> determina como as visualizações compartilhadas
+entre duas atividades fazem transição entre essas atividades. Por exemplo, se duas atividades têm a mesma
+imagem em posições e tamanhos diferentes, a transição de elemento compartilhado <em>changeImageTransform</em> converte
+e dimensiona a imagem suavemente entre essas atividades.</li>
+</ul>
+
+<p>O Android 5.0 (API de nível 21) é compatível com estas transições de entrada e de saída:</p>
+
+<ul>
+<li><em>explodir</em> - move as visualizações para dentro ou para fora partindo do centro da cena.</li>
+<li><em>deslizar</em> - move as visualizações para dentro ou para fora partindo de um dos cantos da cena.</li>
+<li><em>esmaecer</em> - adiciona ou remove uma visualização de uma cena alterando a opacidade.</li>
+</ul>
+
+<p>Qualquer transição que amplie a classe {@link android.transition.Visibility} é suportada
+como uma transição de entrada ou de saída. Para obter mais informações, consulte a referência de API para a classe
+{@link android.transition.Transition}.</p>
+
+<p>O Android 5.0 (API de nível 21) também é compatível com estas transições de elementos compartilhados:</p>
+
+<ul>
+<li><em>changeBounds</em> - anima as mudanças das visualizações desejadas em limites do layout.</li>
+<li><em>changeBounds</em> - anima as mudanças das visualizações desejadas em limites de corte.</li>
+<li><em>changeBounds</em> - anima as mudanças das visualizações desejadas em escala e rotação.</li>
+<li><em>changeImageTransform</em> - anima as mudanças das imagens desejadas em tamanho e escala.</li>
+</ul>
+
+<p>Ao habilitar as transições de atividades no seu aplicativo, a transição de esmaecimento cruzado padrão é
+ativada entre as atividades de entrada e saída.</p>
+
+<img src="{@docRoot}training/material/images/SceneTransition.png" alt="" width="600" height="405" style="margin-top:20px" />
+<p class="img-caption">
+  <strong>Figura 2</strong> - uma transição de cena com um elemento compartilhado.
+</p>
+
+<h3>Especificar transições de atividades</h3>
+
+<p>Primeiro, habilite as transições de conteúdo da janela com o atributo <code>android:windowContentTransitions</code>
+ao definir um estilo herdado do tema do Material. Você também pode especificar
+transições de entrada, saída e elemento compartilhado na definição de estilo:</p>
+
+<pre>
+&lt;style name="BaseAppTheme" parent="android:Theme.Material">
+  &lt;!-- enable window content transitions -->
+  &lt;item name="android:windowContentTransitions">true&lt;/item>
+
+  &lt;!-- specify enter and exit transitions -->
+  &lt;item name="android:windowEnterTransition">@transition/explode&lt;/item>
+  &lt;item name="android:windowExitTransition">@transition/explode&lt;/item>
+
+  &lt;!-- specify shared element transitions -->
+  &lt;item name="android:windowSharedElementEnterTransition">
+    &#64;transition/change_image_transform&lt;/item>
+  &lt;item name="android:windowSharedElementExitTransition">
+    &#64;transition/change_image_transform&lt;/item>
+&lt;/style>
+</pre>
+
+<p>A transição <code>change_image_transform</code> nesse exemplo é definida a seguir:</p>
+
+<pre>
+&lt;!-- res/transition/change_image_transform.xml -->
+&lt;!-- (see also Shared Transitions below) -->
+&lt;transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;changeImageTransform/>
+&lt;/transitionSet>
+</pre>
+
+<p>O elemento <code>changeImageTransform</code> corresponde à classe
+{@link android.transition.ChangeImageTransform}. Para obter mais informações, consulte a referência de
+API para {@link android.transition.Transition}.</p>
+
+<p>Para habilitar transições de conteúdo da janela no código como alternativa, chame o método
+{@link android.view.Window#requestFeature Window.requestFeature()}:</p>
+
+<pre>
+// inside your activity (if you did not enable transitions in your theme)
+getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+
+// set an exit transition
+getWindow().setExitTransition(new Explode());
+</pre>
+
+<p>Para especificar transições no código, chame os métodos a seguir com um objeto {@link
+android.transition.Transition}:</p>
+
+<ul>
+  <li>{@link android.view.Window#setEnterTransition Window.setEnterTransition()}</li>
+  <li>{@link android.view.Window#setExitTransition Window.setExitTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementEnterTransition
+      Window.setSharedElementEnterTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementExitTransition
+      Window.setSharedElementExitTransition()}</li>
+</ul>
+
+<p>Os métodos {@link android.view.Window#setExitTransition setExitTransition()} e {@link
+android.view.Window#setSharedElementExitTransition setSharedElementExitTransition()} definem
+a transição de saída para a atividade de chamada. Os métodos {@link android.view.Window#setEnterTransition
+setEnterTransition()} e {@link android.view.Window#setSharedElementEnterTransition
+setSharedElementEnterTransition()} definem a transição de entrada para a atividade chamada.</p>
+
+<p>Para obter o efeito completo de uma transição, você deve habilitar as transições de conteúdo da janela tanto na atividade
+chamada quanto na atividade de chamada. Caso contrário, a atividade de chamada acionará a transição de saída,
+mas você verá uma transição de janela (como dimensionamento ou esmaecimento).</p>
+
+<p>Para iniciar uma transição de entrada o mais cedo possível, use o método
+{@link android.view.Window#setAllowEnterTransitionOverlap Window.setAllowEnterTransitionOverlap()}
+na atividade chamada. Isso faz com que haja transições de entrada mais dramáticas.</p>
+
+<h3>Iniciar uma atividade usando transições</h3>
+
+<p>Se você habilita as transições e define uma transição de saída para uma atividade, a transição
+será ativada ao iniciar outra atividade, como a seguir:</p>
+
+<pre>
+startActivity(intent,
+              ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
+</pre>
+
+<p>Se você configurou uma transição de entrada para a segunda atividade, a transição também
+será ativada quando a atividade for iniciada. Para desabilitar as transições ao iniciar outra atividade, forneça um pacote de
+opções <code>null</code>.</p>
+
+<h3>Iniciar uma atividade com um elemento compartilhado</h3>
+
+<p>Para criar uma animação de transição de tela entre duas atividades que têm um elemento compartilhado:</p>
+
+<ol>
+<li>Habilite transições de conteúdo da janela no tema.</li>
+<li>Especifique uma transição de elementos compartilhados no estilo.</li>
+<li>Defina a transição como um recurso XML.</li>
+<li>Atribua um nome comum aos elementos compartilhados em ambos os layouts com o atributo
+    <code>android:transitionName</code>.</li>
+<li>Use o método {@link android.app.ActivityOptions#makeSceneTransitionAnimation
+ActivityOptions.makeSceneTransitionAnimation()}.</li>
+</ol>
+
+<pre>
+// get the element that receives the click event
+final View imgContainerView = findViewById(R.id.img_container);
+
+// get the common element for the transition in this activity
+final View androidRobotView = findViewById(R.id.image_small);
+
+// define a click listener
+imgContainerView.setOnClickListener(new View.OnClickListener() {
+    &#64;Override
+    public void onClick(View view) {
+        Intent intent = new Intent(this, Activity2.class);
+        // create the transition animation - the images in the layouts
+        // of both activities are defined with android:transitionName="robot"
+        ActivityOptions options = ActivityOptions
+            .makeSceneTransitionAnimation(this, androidRobotView, "robot");
+        // start the new activity
+        startActivity(intent, options.toBundle());
+    }
+});
+</pre>
+
+<p>Para obter visualizações dinâmicas compartilhadas geradas no código, use o método
+{@link android.view.View#setTransitionName View.setTransitionName()} para especificar um nome de
+elemento comum em ambas as atividades.</p>
+
+<p>Para reverter a animação de transição de cena ao finalizar a segunda atividade, chame o método
+{@link android.app.Activity#finishAfterTransition Activity.finishAfterTransition()}
+em vez de {@link android.app.Activity#finish Activity.finish()}.</p>
+
+<h3>Iniciar uma atividade com diversos elementos compartilhados</h3>
+
+<p>Para criar uma animação de transição de cena entre duas atividades que têm mais de um elemento
+compartilhado, defina os elementos compartilhados em ambos os layouts com o atributo <code>android:transitionName</code>
+(ou use o método {@link android.view.View#setTransitionName View.setTransitionName()} em ambas
+as atividades) e crie um objeto {@link android.app.ActivityOptions}, como a seguir:</p>
+
+<pre>
+ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(this,
+        Pair.create(view1, "agreedName1"),
+        Pair.create(view2, "agreedName2"));
+</pre>
+
+
+<h2 id="CurvedMotion">Usar movimento curvado</h2>
+
+<p>As animações no Material Design dependem das curvas para obter padrões de interpolação
+de tempo e de movimentos espaciais. Com o Android 5.0 (API de nível 21) e posteriores, você pode definir padrões de curvas de
+temporização personalizada e de movimentos curvados para animações.</p>
+
+<p>A classe {@link android.view.animation.PathInterpolator} é um novo interpolador baseado em uma
+curva Bézier ou em um objeto {@link android.graphics.Path}. Esse interpolador especifica uma curva de movimento em
+um quadrado de 1x1, com pontos de ancoragem em (0,0) e (1,1) e pontos de controle conforme especificado usando
+os argumentos do construtor. Você também pode definir um interpolador de caminho como um recurso XML:</p>
+
+<pre>
+&lt;pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
+    android:controlX1="0.4"
+    android:controlY1="0"
+    android:controlX2="1"
+    android:controlY2="1"/>
+</pre>
+
+<p>O sistema fornece recursos XML para três curvas básicas na especificação do
+Material Design:</p>
+
+<ul>
+  <li><code>&#64;interpolator/fast_out_linear_in.xml</code></li>
+  <li><code>&#64;interpolator/fast_out_slow_in.xml</code></li>
+  <li><code>&#64;interpolator/linear_out_slow_in.xml</code></li>
+</ul>
+
+<p>Você pode passar um objeto {@link android.view.animation.PathInterpolator} para o método {@link
+android.animation.Animator#setInterpolator Animator.setInterpolator()}.</p>
+
+<p>A classe {@link android.animation.ObjectAnimator} tem novos construtores que permitem a animação de
+coordenadas ao longo de um caminho usando duas ou mais propriedades simultaneamente. Por exemplo, o animador a seguir usa um
+objeto {@link android.graphics.Path} para animar as propriedades X e Y de uma visualização:</p>
+
+<pre>
+ObjectAnimator mAnimator;
+mAnimator = ObjectAnimator.ofFloat(view, View.X, View.Y, path);
+...
+mAnimator.start();
+</pre>
+
+
+<h2 id="ViewState">Animar mudança de estado da visualização</h2>
+
+<p>A classe {@link android.animation.StateListAnimator} permite a definição de animadores que são executados
+quando o estado de uma visualização muda. O exemplo a seguir mostra como definir um {@link
+android.animation.StateListAnimator} como um recurso XML:</p>
+
+<pre>
+&lt;!-- animate the translationZ property of a view when pressed -->
+&lt;selector xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;item android:state_pressed="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="@android:integer/config_shortAnimTime"
+        android:valueTo="2dp"
+        android:valueType="floatType"/>
+        &lt;!-- you could have other objectAnimator elements
+             here for "x" and "y", or other properties -->
+    &lt;/set>
+  &lt;/item>
+  &lt;item android:state_enabled="true"
+    android:state_pressed="false"
+    android:state_focused="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="100"
+        android:valueTo="0"
+        android:valueType="floatType"/>
+    &lt;/set>
+  &lt;/item>
+&lt;/selector>
+</pre>
+
+<p>Para anexar animações de estado de visualização personalizadas a uma visualização, defina um animador usando o elemento
+<code>selector</code> em um arquivo de recurso XML, como nesse exemplo, e
+atribua-o à visualização com o atributo <code>android:stateListAnimator</code>. Para atribuir um animador de lista de estado
+a uma visualização no código, use o método {@link android.animation.AnimatorInflater#loadStateListAnimator
+AnimationInflater.loadStateListAnimator()} e atribua o animador à visualização com o método
+{@link android.view.View#setStateListAnimator View.setStateListAnimator()}.</p>
+
+<p>Quando o tema amplia o tema do Material, os botões têm uma animação Z por padrão. Para evitar esse
+comportamento nos botões, defina o atributo <code>android:stateListAnimator</code> como
+<code>@null</code>.</p>
+
+<p>A classe {@link android.graphics.drawable.AnimatedStateListDrawable} permite a criação de
+desenháveis que exibem animações entre mudanças de estado da visualização associada. Alguns dos widgets de sistema no
+Android 5.0 usam essas animações por padrão. O exemplo a seguir mostra como
+definir um {@link android.graphics.drawable.AnimatedStateListDrawable} como um recurso XML:</p>
+
+<pre>
+&lt;!-- res/drawable/myanimstatedrawable.xml -->
+&lt;animated-selector
+    xmlns:android="http://schemas.android.com/apk/res/android">
+
+    &lt;!-- provide a different drawable for each state-->
+    &lt;item android:id="@+id/pressed" android:drawable="@drawable/drawableP"
+        android:state_pressed="true"/>
+    &lt;item android:id="@+id/focused" android:drawable="@drawable/drawableF"
+        android:state_focused="true"/>
+    &lt;item android:id="@id/default"
+        android:drawable="@drawable/drawableD"/>
+
+    &lt;!-- specify a transition -->
+    &lt;transition android:fromId="@+id/default" android:toId="@+id/pressed">
+        &lt;animation-list>
+            &lt;item android:duration="15" android:drawable="@drawable/dt1"/>
+            &lt;item android:duration="15" android:drawable="@drawable/dt2"/>
+            ...
+        &lt;/animation-list>
+    &lt;/transition>
+    ...
+&lt;/animated-selector>
+</pre>
+
+
+<h2 id="AnimVector">Animar desenháveis de vetor</h2>
+
+<p><a href="{@docRoot}training/material/drawables.html#VectorDrawables">Desenháveis de vetor</a> são
+dimensionáveis sem perder definição. A classe {@link android.graphics.drawable.AnimatedVectorDrawable}
+permite a animação de propriedades de um desenhável de vetor.</p>
+
+<p>Você normalmente define desenháveis de vetor animados em três arquivos XML:</p>
+
+<ul>
+<li>Um desenhável de vetor com o elemento <code>&lt;vector&gt;</code> em
+<code>res/drawable/</code></li>
+<li>Um desenhável de vetor animado com o elemento <code>&lt;animated-vector&gt;</code> em
+<code>res/drawable/</code></li>
+<li>Um ou mais animadores de objeto com o elemento <code>&lt;objectAnimator&gt;</code> em
+<code>res/anim/</code></li>
+</ul>
+
+<p>Desenháveis de vetor animados podem animar os atributos dos elementos <code>&lt;group&gt;</code> e
+<code>&lt;path&gt;</code>. Os elementos <code>&lt;group&gt;</code> definem um conjunto de
+caminhos ou subgrupos e o elemento <code>&lt;path&gt;</code> define caminhos a serem desenhados.</p>
+
+<p>Ao definir um desenhável de vetor que você queira animar, use o atributo <code>android:name</code>
+para atribuir um nome único a grupos e caminhos para poder referenciá-los nas definições
+do animador. Por exemplo:</p>
+
+<pre>
+&lt;!-- res/drawable/vectordrawable.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="64dp"
+    android:width="64dp"
+    android:viewportHeight="600"
+    android:viewportWidth="600">
+    &lt;group
+        <strong>android:name="rotationGroup"</strong>
+        android:pivotX="300.0"
+        android:pivotY="300.0"
+        android:rotation="45.0" >
+        &lt;path
+            <strong>android:name="v"</strong>
+            android:fillColor="#000000"
+            android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
+    &lt;/group>
+&lt;/vector>
+</pre>
+
+<p>A definição de desenhável de vetor animado se refere a grupos e caminhos no desenhável de vetor
+pelos respectivos nomes:</p>
+
+<pre>
+&lt;!-- res/drawable/animvectordrawable.xml -->
+&lt;animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+  android:drawable="@drawable/vectordrawable" >
+    &lt;target
+        android:name="rotationGroup"
+        android:animation="@anim/rotation" />
+    &lt;target
+        android:name="v"
+        android:animation="@anim/path_morph" />
+&lt;/animated-vector>
+</pre>
+
+<p>As definições de animação representam objetos {@link android.animation.ObjectAnimator} ou {@link
+android.animation.AnimatorSet}. O primeiro animador nesse exemplo gira o grupo
+desejado em 360º:</p>
+
+<pre>
+&lt;!-- res/anim/rotation.xml -->
+&lt;objectAnimator
+    android:duration="6000"
+    android:propertyName="rotation"
+    android:valueFrom="0"
+    android:valueTo="360" />
+</pre>
+
+<p>O segundo animador nesse exemplo transforma a forma do caminho do desenhável
+de vetor. Ambos os caminhos devem ser compatíveis com a transformação: eles precisam ter o mesmo
+número de comandos e de parâmetros para cada comando.</p>
+
+<pre>
+&lt;!-- res/anim/path_morph.xml -->
+&lt;set xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;objectAnimator
+        android:duration="3000"
+        android:propertyName="pathData"
+        android:valueFrom="M300,70 l 0,-70 70,70 0,0   -70,70z"
+        android:valueTo="M300,70 l 0,-70 70,0  0,140 -70,0 z"
+        android:valueType="pathType" />
+&lt;/set>
+</pre>
+
+<p>Para obter mais informações, consulte a referência de API para {@link
+android.graphics.drawable.AnimatedVectorDrawable}.</p>
diff --git a/docs/html-intl/intl/pt-br/training/material/compatibility.jd b/docs/html-intl/intl/pt-br/training/material/compatibility.jd
new file mode 100644
index 0000000..2540df1
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/training/material/compatibility.jd
@@ -0,0 +1,168 @@
+page.title=Como manter a compatibilidade
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lição ensina a</h2>
+<ol>
+  <li><a href="#Theme">Definir estilos alternativos</a></li>
+  <li><a href="#Layouts">Fornecer layouts alternativos</a></li>
+  <li><a href="#SupportLib">Usar a Biblioteca de Suporte</a></li>
+  <li><a href="#CheckVersion">Verificar a versão do sistema</a></li>
+</ol>
+<h2>Você também deve ler</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificações do Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design no Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Alguns recursos do Material Design, como o tema do Material e transições personalizadas de atividades, estão
+disponíveis apenas no Android 5.0 (API de nível 21) e posteriores. Contudo, você pode projetar os aplicativos
+para usar esses recursos ao executá-los em dispositivos compatíveis com o Material Design e ainda mantê-los
+compatíveis com dispositivos executando versões anteriores do Android.</p>
+
+
+<h2 id="Theme">Definir estilos alternativos</h2>
+
+<p>Você pode configurar o aplicativo para usar o tema do Material em dispositivos compatíveis
+com ele e reverter para um tema antigo em dispositivos que executem versões anteriores do Android:</p>
+
+<ol>
+<li>Defina um tema herdado de um tema antigo (como Holo) em
+    <code>res/values/styles.xml</code>.</li>
+<li>Defina um tema com o mesmo nome herdado do tema do Material em
+    <code>res/values-v21/styles.xml</code>.</li>
+<li>Defina esse tema como o tema do seu aplicativo no arquivo de manifesto.</li>
+</ol>
+
+<p class="note"><strong>Observação:</strong>
+se o seu aplicativo usa o tema do Material mas não fornece um tema alternativo dessa maneira,
+o aplicativo não rodará em versões mais antigas do que o Android 5.0.
+</p>
+
+
+<h2 id="Layouts">Fornecer layouts alternativos</h2>
+
+<p>Se os layouts que você projetou de acordo com as orientações do Material Design não usarem
+quaisquer dos novos atributos XML introduzidos no Android 5.0 (API de nível 21), eles funcionarão em
+versões antigas do Android. Caso contrário, você pode fornecer layouts alternativos. Você também pode fornecer
+layouts alternativos para personalizar a aparência do seu aplicativo em versões anteriores do Android.</p>
+
+<p>Crie arquivos de layout para Android 5.0 (API de nível 21) dentro de <code>res/layout-v21/</code> e arquivos de
+layout alternativo para versões anteriores do Android dentro de <code>res/layout/</code>.
+Por exemplo, <code>res/layout/my_activity.xml</code> é um layout alternativo de
+<code>res/layout-v21/my_activity.xml</code>.</p>
+
+<p>Para evitar duplicação do código, defina os estilos dentro de <code>res/values/</code>, modifique-os
+em <code>res/values-v21/</code> para as novas APIs e use herança de estilo, definindo
+estilos de base em <code>res/values/</code> e herdando daqueles em <code>res/values-v21/</code>.</p>
+
+
+<h2 id="SupportLib">Usar a Biblioteca de Suporte</h2>
+
+<p>A <a href="{@docRoot}tools/support-library/features.html#v7">v7 da Biblioteca de Suporte</a>
+r21 e posteriores incluem os seguintes recursos do Material Design:</p>
+
+<ul>
+<li><a href="{@docRoot}training/material/theme.html">Estilos do Material Design</a> para alguns widgets do
+sistema quando se aplica um dos temas <code>Theme.AppCompat</code>.</li>
+<li><a href="{@docRoot}training/material/theme.html#ColorPalette">Atributos de tema da paleta de cores</a>
+    nos temas <code>Theme.AppCompat</code>.</li>
+<li>O widget {@link android.support.v7.widget.RecyclerView} para <a href="{@docRoot}training/material/lists-cards.html#RecyclerView">exibir coleções
+    de dados</a>.</li>
+<li>O widget {@link android.support.v7.widget.CardView} para <a href="{@docRoot}training/material/lists-cards.html#CardView">criar cartões</a>.</li>
+<li>A classe {@link android.support.v7.graphics.Palette} para <a href="{@docRoot}training/material/drawables.html#ColorExtract">extrair cores proeminentes de
+    imagens</a>.</li>
+</ul>
+
+<h3>Widgets de sistema</h3>
+
+<p>Os temas <code>Theme.AppCompat</code> fornecem estilos do Material Design para os seguintes widgets:</p>
+
+<ul>
+  <li>{@link android.widget.EditText}</li>
+  <li>{@link android.widget.Spinner}</li>
+  <li>{@link android.widget.CheckBox}</li>
+  <li>{@link android.widget.RadioButton}</li>
+  <li>{@link android.support.v7.widget.SwitchCompat}</li>
+  <li>{@link android.widget.CheckedTextView}</li>
+</ul>
+
+<h3>Paleta de cores</h3>
+
+<p>Para obter estilos do Material Design e personalizar a paleta de cores com a v7 da Biblioteca de Suporte
+do Android, aplique um dos temas <code>Theme.AppCompat</code>:</p>
+
+<pre>
+&lt;!-- extend one of the Theme.AppCompat themes -->
+&lt;style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
+    &lt;!-- customize the color palette -->
+    &lt;item name="colorPrimary">@color/material_blue_500&lt;/item>
+    &lt;item name="colorPrimaryDark">@color/material_blue_700&lt;/item>
+    &lt;item name="colorAccent">@color/material_green_A200&lt;/item>
+&lt;/style>
+</pre>
+
+<h3>Listas e cartões</h3>
+
+<p>Os widgets {@link android.support.v7.widget.RecyclerView} e {@link
+android.support.v7.widget.CardView} estão disponíveis em versões anteriores do Android na
+Biblioteca de Suporte v7 do Android com as seguintes limitações:</p>
+<ul>
+<li>{@link android.support.v7.widget.CardView} volta a uma implementação de sombra programática
+   usando preenchimento adicional.</li>
+<li>{@link android.support.v7.widget.CardView} não recorta as visualizações filhas que cortam
+    as bordas arredondadas.</li>
+</ul>
+
+
+<h3>Dependências</h3>
+
+<p>Para usar esses recursos em versões anteriores ao Android 5.0 (API de nível 21), inclua a
+Biblioteca de Suporte v7 do Android no projeto como uma <a href="{@docRoot}/sdk/installing/studio-build.html#dependencies">dependência de Gradle</a>:</p>
+
+<pre>
+dependencies {
+    compile 'com.android.support:appcompat-v7:21.0.+'
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
+
+
+<h2 id="CheckVersion">Verificar a versão do sistema</h2>
+
+<p>Os recursos a seguir estão disponíveis somente no Android 5.0 (API de nível 21) e em posteriores:</p>
+
+<ul>
+<li>Transições de atividades</li>
+<li>Feedback de toque</li>
+<li>Animações de revelação</li>
+<li>Animações com base em caminhos</li>
+<li>Desenháveis de vetor</li>
+<li>Tingimento desenhável</li>
+</ul>
+
+<p>Para preservar a compatibilidade com versões anteriores do Android, verifique a {@link
+android.os.Build.VERSION#SDK_INT version} do sistema em tempo de execução antes de chamar as APIs para quaisquer
+destes recursos:</p>
+
+<pre>
+// Check if we're running on Android 5.0 or higher
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+    // Call some material design APIs here
+} else {
+    // Implement this feature without material design
+}
+</pre>
+
+<p class="note"><strong>Observação:</strong> Para especificar quais versões do Android são compatíveis com o seu aplicativo,
+use os atributos <code>android:minSdkVersion</code> e <code>android:targetSdkVersion</code>
+no arquivo de manifesto. Para usar os recursos do Material Design no Android 5.0, defina o
+atributo <code>android:targetSdkVersion</code> como <code>21</code>. Para obter mais informações, consulte
+o <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">guia de API
+&lt;uses-sdk&gt;</a>.</p>
diff --git a/docs/html-intl/intl/pt-br/training/material/drawables.jd b/docs/html-intl/intl/pt-br/training/material/drawables.jd
new file mode 100644
index 0000000..4eb9f36
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/training/material/drawables.jd
@@ -0,0 +1,126 @@
+page.title=Como trabalhar com desenháveis
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lição ensina a</h2>
+<ol>
+  <li><a href="#DrawableTint">Colorir recursos desenháveis</a></li>
+  <li><a href="#ColorExtract">Extrair cores proeminentes de uma imagem</a></li>
+  <li><a href="#VectorDrawables">Criar desenháveis de vetor</a></li>
+</ol>
+<h2>Você também deve ler</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificações do Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design no Android</a></li>
+</ul>
+</div>
+</div>
+
+<p>As seguintes capacidades dos desenháveis ajudam na implementação do Material Design nos aplicativos:</p>
+
+<ul>
+<li>Tingimento desenhável</li>
+<li>Extração de cor proeminente</li>
+<li>Desenháveis de vetor</li>
+</ul>
+
+<p>Esta lição mostra como usar esses recursos no seu aplicativo.</p>
+
+
+<h2 id="DrawableTint">Colorir recursos desenháveis</h2>
+
+<p>Com o Android 5.0 (API de nível 21) e posteriores, você pode colorir bitmaps e nine-patches definidos como
+máscaras alfa. Você pode colori-los com recursos de cor ou atributos de tema que determinam os recursos
+de cor (por exemplo, <code>?android:attr/colorPrimary</code>). Normalmente, você cria esses ativos
+somente uma vez e colore-os automaticamente para combinar com seu tema.</p>
+
+<p>Você pode aplicar um tingimento aos objetos {@link android.graphics.drawable.BitmapDrawable} ou {@link
+android.graphics.drawable.NinePatchDrawable} com o método {@code setTint()}. Você também
+pode configurar a cor e o modo do tingimento nos layouts com os atributos <code>android:tint</code> e 
+<code>android:tintMode</code>.</p>
+
+
+<h2 id="ColorExtract">Extrair cores proeminentes de uma imagem</h2>
+
+<p>A Biblioteca de Suporte r21 do Android e posteriores incluem a classe {@link
+android.support.v7.graphics.Palette}, que permite a extração de cores proeminentes de uma imagem.
+Essa classe extrai as seguintes cores proeminentes:</p>
+
+<ul>
+<li>Vibrante</li>
+<li>Escuro vibrante</li>
+<li>Claro vibrante</li>
+<li>Suave</li>
+<li>Escuro suave</li>
+<li>Claro suave</li>
+</ul>
+
+<p>Para extrair essas cores, passe um objeto {@link android.graphics.Bitmap} para o método estático
+{@link android.support.v7.graphics.Palette#generate Palette.generate()} no encadeamento do segundo
+plano em que você carrega as imagens. Se você não puder usar aquele encadeamento, chame o método
+{@link android.support.v7.graphics.Palette#generateAsync Palette.generateAsync()} e forneça um escutador
+como alternativa.</p>
+
+<p>Você pode recuperar as cores proeminentes da imagem usando métodos de obtenção na classe
+<code>Palette</code>, como <code>Palette.getVibrantColor</code>.</p>
+
+<p>Para usar a classe {@link android.support.v7.graphics.Palette} no projeto, adicione a seguinte
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">dependência do Gradle</a> ao
+módulo do aplicativo:</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:palette-v7:21.0.0'
+}
+</pre>
+
+<p>Para obter mais informações, consulte a referência de API para a classe {@link android.support.v7.graphics.Palette}
+.</p>
+
+
+<h2 id="VectorDrawables">Criar desenháveis de vetor</h2>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=wlFVIIstKmA" style="margin-top:18px">
+<div>
+    <h3>Vídeos</h3>
+    <p>Gráficos de vetor do Android</p>
+</div>
+</a>
+
+<p>No Android 5.0 (API de nível 21) e posteriores, você pode definir desenháveis de vetor que são dimensionáveis
+sem perder definição. Você precisa apenas de um arquivo de ativos para uma imagem de vetor, em vez de um arquivo de ativos
+para cada densidade de tela no caso de imagens de bitmap. Para criar uma imagem de vetor, defina os detalhes
+da forma dentro de um elemento XML <code>&lt;vector&gt;</code>.</p>
+
+<p>O exemplo a seguir define uma imagem de vetor com a forma de um coração:</p>
+
+<pre>
+&lt;!-- res/drawable/heart.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    &lt;!-- intrinsic size of the drawable -->
+    android:height="256dp"
+    android:width="256dp"
+    &lt;!-- size of the virtual canvas -->
+    android:viewportWidth="32"
+    android:viewportHeight="32">
+
+  &lt;!-- draw a path -->
+  &lt;path android:fillColor="#8fff"
+      android:pathData="M20.5,9.5
+                        c-1.955,0,-3.83,1.268,-4.5,3
+                        c-0.67,-1.732,-2.547,-3,-4.5,-3
+                        C8.957,9.5,7,11.432,7,14
+                        c0,3.53,3.793,6.257,9,11.5
+                        c5.207,-5.242,9,-7.97,9,-11.5
+                        C25,11.432,23.043,9.5,20.5,9.5z" />
+&lt;/vector>
+</pre>
+
+<p>Imagens de vetor são representadas no Android como objetos {@link android.graphics.drawable.VectorDrawable}
+. Para obter mais informações sobre a sintaxe <code>pathData</code>, consulte a <a href="http://www.w3.org/TR/SVG11/paths.html#PathData">Referência do caminho SVG</a>. Para obter informações sobre
+como animar propriedades de desenháveis de vetor, consulte
+<a href="{@docRoot}training/material/animations.html#AnimVector">Animar desenháveis de vetor</a>.</p>
diff --git a/docs/html-intl/intl/pt-br/training/material/get-started.jd b/docs/html-intl/intl/pt-br/training/material/get-started.jd
new file mode 100644
index 0000000..e7b56a3
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/training/material/get-started.jd
@@ -0,0 +1,171 @@
+page.title=Como iniciar
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lição ensina a</h2>
+<ol>
+  <li><a href="#ApplyTheme">Aplicar o tema do Material</a></li>
+  <li><a href="#Layouts">Projetar layouts</a></li>
+  <li><a href="#Depth">Especificar a elevação em visualizações</a></li>
+  <li><a href="#ListsCards">Criar listas e cartões</a></li>
+  <li><a href="#Animations">Personalizar animações</a></li>
+</ol>
+<h2>Você também deve ler</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificações do Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design no Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Para criar aplicativos com o Material Design:</p>
+
+<ol>
+  <li style="margin-bottom:10px">
+    Reveja as <a href="http://www.google.com/design/spec">especificações do Material Design</a>.</li>
+  <li style="margin-bottom:10px">
+    Aplique o <strong>tema</strong> do Material no seu aplicativo.</li>
+  <li style="margin-bottom:10px">
+    Crie <strong>layouts</strong> de acordo com as orientações do Material Design.</li>
+  <li style="margin-bottom:10px">
+    Especifique a <strong>elevação</strong> das visualizações para inserir sombras.</li>
+  <li style="margin-bottom:10px">
+    Use <strong>widgets</strong> do sistema para listas e cartões.</li>
+  <li style="margin-bottom:10px">
+    Personalize <strong>animações</strong> no aplicativo.</li>
+</ol>
+
+<h3>Manter compatibilidade com versões anteriores</h3>
+
+<p>Você pode adicionar muitos recursos do Material Design ao aplicativo e, ao mesmo tempo, manter
+a compatibilidade com versões anteriores ao Android 5.0. Para obter mais informações, consulte
+<a href="{@docRoot}training/material/compatibility.html">Como manter a compatibilidade</a>.</p>
+
+<h3>Atualizar o aplicativo com o Material Design</h3>
+
+<p>Para atualizar um aplicativo existente para incorporar o Material Design, atualize os layouts
+de acordo com as orientações do Material Design. Certifique-se também de incorporar profundidade, feedbacks de toque e
+animações.</p>
+
+<h3>Criar novos aplicativos com o Material Design</h3>
+
+<p>Se você está criando um novo aplicativo com recursos do Material Design, as <a href="http://www.google.com/design/spec">orientações do Material Design</a> fornecem uma
+estrutura de projeto coesa. Siga tais orientações e use a nova funcionalidade na estrutura do Android para
+projetar e desenvolver o aplicativo.</p>
+
+
+<h2 id="ApplyTheme">Aplicar o tema do Material</h2>
+
+<p>Para aplicar o tema do Material no aplicativo, especifique um estilo herdado de
+<code>android:Theme.Material</code>:</p>
+
+<pre>
+&lt;!-- res/values/styles.xml -->
+&lt;resources>
+  &lt;!-- your theme inherits from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- theme customizations -->
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<p>O tema do Material fornece widgets do sistema atualizados que permitem definir a paleta de cores e as animações
+padrão para feedback de toque e transições de atividades. Para obter mais detalhes, consulte
+<a href="{@docRoot}training/material/theme.html">Como usar o tema do Material</a>.</p>
+
+
+<h2 id="Layouts">Projetar layouts</h2>
+
+<p>Além de aplicar e personalizar o tema do Material, os layouts devem estar em conformidade
+com as <a href="http://www.google.com/design/spec">orientações do Material Design</a>. Ao projetar os
+layouts, dê atenção especial ao seguinte:</p>
+
+<ul>
+<li>Grades das linhas de base</li>
+<li>Linhas-chave</li>
+<li>Espaçamento</li>
+<li>Tamanho do alvo de toque</li>
+<li>Estrutura do layout</li>
+</ul>
+
+
+<h2 id="Depth">Especificar a elevação em visualizações</h2>
+
+<p>As visualizações podem lançar sombras e o valor da elevação delas
+determina o tamanho da sombra e a ordem dos desenhos. Para definir a elevação de uma visualização, use o atributo
+<code>android:elevation</code> nos layouts:</p>
+
+<pre>
+&lt;TextView
+    android:id="&#64;+id/my_textview"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="&#64;string/next"
+    android:background="&#64;color/white"
+    android:elevation="5dp" />
+</pre>
+
+<p>A nova propriedade <code>translationZ</code> permite a criação de animações que refletem mudanças
+temporárias na elevação de uma visualização. As mudanças de elevação podem ser úteis ao
+<a href="{@docRoot}training/material/animations.html#ViewState">responder a gestos
+de toque</a>.</p>
+
+<p>Para obter mais detalhes, consulte <a href="{@docRoot}training/material/shadows-clipping.html">Como definir
+sombras e recortar visualizações</a>.</p>
+
+
+<h2 id="ListsCards">Criar listas e cartões</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} é uma versão mais completa de {@link
+android.widget.ListView} compatível com diferentes tipos de layout e que fornece melhor desempenho.
+{@link android.support.v7.widget.CardView} permite a exibição de informações dentro dos cartões com uma
+aparência consistente nos aplicativos. O exemplo de código a seguir mostra como incluir um
+{@link android.support.v7.widget.CardView} no layout:</p>
+
+<pre>
+&lt;android.support.v7.widget.CardView
+    android:id="&#64;+id/card_view"
+    android:layout_width="200dp"
+    android:layout_height="200dp"
+    card_view:cardCornerRadius="3dp">
+    ...
+&lt;/android.support.v7.widget.CardView>
+</pre>
+
+<p>Para obter mais informações, consulte <a href="{@docRoot}training/material/lists-cards.html">Como criar
+listas e cartões</a>.</p>
+
+
+<h2 id="Animations">Personalizar animações</h2>
+
+<p>O Android 5.0 (API de nível 21) inclui novas APIs para criar animações personalizadas no aplicativo.
+Por exemplo, você pode habilitar transições de atividades e definir uma transição de saída dentro
+de uma atividade:</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // enable transitions
+        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+        setContentView(R.layout.activity_my);
+    }
+
+    public void onSomeButtonClicked(View view) {
+        getWindow().setExitTransition(new Explode());
+        Intent intent = new Intent(this, MyOtherActivity.class);
+        startActivity(intent,
+                      ActivityOptions
+                          .makeSceneTransitionAnimation(this).toBundle());
+    }
+}
+</pre>
+
+<p>Ao iniciar outra atividade a partir desta, a transição de saída é ativada.</p>
+
+<p>Para saber mais sobre as novas APIs de animação, consulte <a href="{@docRoot}training/material/animations.html">Como definir animações personalizadas</a>.</p>
diff --git a/docs/html-intl/intl/pt-br/training/material/index.jd b/docs/html-intl/intl/pt-br/training/material/index.jd
new file mode 100644
index 0000000..76580c8
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/training/material/index.jd
@@ -0,0 +1,61 @@
+page.title=Material Design para desenvolvedores
+page.type=design
+page.image=images/cards/material_2x.png
+page.metaDescription=Saiba como aplicar o Material Design em seus aplicativos.
+
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>Dependências e pré-requisitos</h2>
+  <ul>
+    <li>Android 5.0 (API de nível 21)</li>
+  </ul>
+</div>
+</div>
+
+<p>O Material Design é um guia abrangente para design visual, de movimento e de interação para
+diversas plataformas e dispositivos. Para usar o Material Design nos aplicativos Android, siga as orientações
+descritas nas
+<a href="http://www.google.com/design/spec/material-design/introduction.html">especificações do
+Material Design</a> e use os novos componentes e funcionalidades disponíveis no Android 5.0
+(API de nível 21).</p>
+
+<p>Essa lição mostra como criar aplicativos do Material Design com os seguintes elementos:</p>
+
+<ul>
+<li>O tema do Material</li>
+<li>Widgets para cartões e listas</li>
+<li>Sombras personalizadas e recorte de visualizações</li>
+<li>Desenháveis de vetor</li>
+<li>Animações personalizadas</li>
+</ul>
+
+<p>Esta lição também ensina a manter a compatibilidade com versões anteriores ao Android
+5.0 (API de nível 21) ao usar recursos do Material Design no aplicativo.</p>
+
+<h2>Lições</h2>
+
+<dl>
+  <dt><a href="{@docRoot}training/material/get-started.html">Como iniciar</a></dt>
+  <dd>Aprenda a atualizar o aplicativo com recursos do Material Design.</dd>
+
+  <dt><a href="{@docRoot}training/material/theme.html">Como usar o tema do Material</a></dt>
+  <dd>Saiba como aplicar estilos do Material Design ao aplicativo.</dd>
+
+  <dt><a href="{@docRoot}training/material/lists-cards.html">Como criar listas e cartões</a></dt>
+  <dd>Aprenda a criar listas e cartões com uma aparência consistente usando widgets do sistema.</dd>
+
+  <dt><a href="{@docRoot}training/material/shadows-clipping.html">Como definir sombras e recortar visualizações</a></dt>
+  <dd>Saiba como definir elevação para as visualizações para criar sombras personalizadas e como recortar visualizações.</dd>
+
+  <dt><a href="{@docRoot}training/material/drawables.html">Como trabalhar com desenháveis</a></dt>
+  <dd>Aprenda a criar desenháveis de vetor e a colorir recursos desenháveis.</dd>
+
+  <dt><a href="{@docRoot}training/material/animations.html">Como definir animações personalizadas</a></dt>
+  <dd>Saiba como criar animações personalizadas para visualizações e transições de atividades com elementos compartilhados.</dd>
+
+  <dt><a href="{@docRoot}training/material/compatibility.html">Como manter a compatibilidade</a></dt>
+  <dd>Aprenda a manter a compatibilidade com versões de plataforma anteriores ao Android 5.0.</dd>
+</dl>
diff --git a/docs/html-intl/intl/pt-br/training/material/lists-cards.jd b/docs/html-intl/intl/pt-br/training/material/lists-cards.jd
new file mode 100644
index 0000000..eb336ac
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/training/material/lists-cards.jd
@@ -0,0 +1,266 @@
+page.title=Como criar listas e cartões
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lição ensina a</h2>
+<ol>
+  <li><a href="#RecyclerView">Criar listas</a></li>
+  <li><a href="#CardView">Criar cartões</a></li>
+  <li><a href="#Dependencies">Adicionar dependências</a></li>
+</ol>
+<h2>Você também deve ler</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificações do Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design no Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Para criar listas e cartões complexos com estilos do Material Design no seu aplicativo, você pode usar os widgets
+{@link android.support.v7.widget.RecyclerView} e {@link android.support.v7.widget.CardView}
+.</p>
+
+
+<h2 id="RecyclerView">Criar listas</h2>
+
+<p>O widget {@link android.support.v7.widget.RecyclerView} é uma versão mais avançada e flexível
+do {@link android.widget.ListView}. Esse widget é um contêiner para exibir grandes conjuntos
+de dados que podem ser rolados com muita eficiência ao manter um número limitado de visualizações. Use o widget
+{@link android.support.v7.widget.RecyclerView} quando tiver coletas de dados cujos elementos mudam
+durante a execução baseados na ação do usuário ou em eventos de rede.</p>
+
+<p>A classe {@link android.support.v7.widget.RecyclerView} simplifica a exibição e o tratamento de
+grandes conjuntos de dados oferecendo:</p>
+
+<ul>
+  <li>Gerenciadores de layout para posicionar itens</li>
+  <li>Animações padrão para operações de item comuns, como remoção ou adição de itens</li>
+</ul>
+
+<p>Você também tem a flexibilidade de definir gerenciadores de layout e animações personalizadas para widgets {@link
+android.support.v7.widget.RecyclerView}.</p>
+
+<img src="{@docRoot}training/material/images/RecyclerView.png" alt="" width="550" height="106" />
+<p class="img-caption">
+<strong>Figura 1</strong>. O widget <code>RecyclerView</code>.
+</p>
+
+<p>Para usar o widget {@link android.support.v7.widget.RecyclerView}, você deve especificar um
+adaptador e um gerenciador de layout. Para criar um adaptador, amplie a classe {@link
+android.support.v7.widget.RecyclerView.Adapter RecyclerView.Adapter}. Os detalhes
+da implementação dependem das especificações do conjunto de dados e do tipo de visualização. Para obter
+mais informações, veja os <a href="#RVExamples">exemplos</a> abaixo.</p>
+
+<div style="float:right">
+<img src="{@docRoot}design/material/images/list_mail.png" alt="" width="250" height="426" />
+<p class="img-caption" style="margin-left:8px">
+<strong>Figura 2</strong> - Listas com <code>RecyclerView</code>.
+</p>
+</div>
+
+<p>Um <strong>gerenciador de layout</strong> posiciona as visualizações de item dentro de um {@link
+android.support.v7.widget.RecyclerView} e determina quando reutilizar visualizações de item que não
+estão mais visíveis ao usuário. Para reutilizar (ou <em>reciclar</em>) uma visualização, um gerenciador de layout pode solicitar
+ao adaptador a substituição do conteúdo da visualização com um elemento diferente do conjunto de dados. Visualizações
+recicladas dessa maneira aprimoram o desempenho ao evitar a criação de visualizações desnecessárias ou a
+realização de pesquisas {@link android.app.Activity#findViewById findViewById()} caras.</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} fornece esses gerenciadores de layout embutidos:</p>
+
+<ul>
+<li>{@link android.support.v7.widget.LinearLayoutManager} exibe itens em uma lista de rolagem
+vertical ou horizontal.</li>
+<li>{@link android.support.v7.widget.GridLayoutManager} exibe itens em uma grade.</li>
+<li>{@link android.support.v7.widget.StaggeredGridLayoutManager} exibe itens em uma grade escalonada.</li>
+</ul>
+
+<p>Para criar um gerenciador de layout personalizado, amplie a classe {@link
+android.support.v7.widget.RecyclerView.LayoutManager RecyclerView.LayoutManager}.</p>
+
+<h3>Animações</h3>
+
+<p>As animações para a adição e a remoção de itens são habilitadas, por padrão, em {@link
+android.support.v7.widget.RecyclerView}. Para personalizá-las, amplie a classe
+{@link android.support.v7.widget.RecyclerView.ItemAnimator RecyclerView.ItemAnimator} e use o
+método {@link android.support.v7.widget.RecyclerView#setItemAnimator RecyclerView.setItemAnimator()}
+.</p>
+
+<h3 id="RVExamples">Exemplos</h3>
+
+<p>O exemplo de código a seguir demonstra como adicionar o
+{@link android.support.v7.widget.RecyclerView} a um layout:</p>
+
+<pre>
+&lt;!-- A RecyclerView with some commonly used attributes -->
+&lt;android.support.v7.widget.RecyclerView
+    android:id="@+id/my_recycler_view"
+    android:scrollbars="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
+</pre>
+
+<p>Depois de adicionar um widget {@link android.support.v7.widget.RecyclerView} ao seu layout,
+obtenha um identificador para o objeto, conecte-o a um gerenciador de layout e anexe um adaptador para que os
+dados sejam exibidos:</p>
+
+<pre>
+public class MyActivity extends Activity {
+    private RecyclerView mRecyclerView;
+    private RecyclerView.Adapter mAdapter;
+    private RecyclerView.LayoutManager mLayoutManager;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.my_activity);
+        mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);
+
+        // use this setting to improve performance if you know that changes
+        // in content do not change the layout size of the RecyclerView
+        mRecyclerView.setHasFixedSize(true);
+
+        // use a linear layout manager
+        mLayoutManager = new LinearLayoutManager(this);
+        mRecyclerView.setLayoutManager(mLayoutManager);
+
+        // specify an adapter (see also next example)
+        mAdapter = new MyAdapter(myDataset);
+        mRecyclerView.setAdapter(mAdapter);
+    }
+    ...
+}
+</pre>
+
+<p>O adaptador dá acesso aos itens no conjunto de dados, cria visualizações para os itens e
+substitui o conteúdo de algumas das visualizações por novos itens de dados quando o item original não está
+mais visível. O exemplo de código a seguir mostra uma implementação simples para um conjunto de dados
+que consiste em uma matriz de strings exibidas usando widgets {@link android.widget.TextView}:</p>
+
+<pre>
+public class MyAdapter extends RecyclerView.Adapter&lt;MyAdapter.ViewHolder> {
+    private String[] mDataset;
+
+    // Provide a reference to the views for each data item
+    // Complex data items may need more than one view per item, and
+    // you provide access to all the views for a data item in a view holder
+    public static class ViewHolder extends RecyclerView.ViewHolder {
+        // each data item is just a string in this case
+        public TextView mTextView;
+        public ViewHolder(TextView v) {
+            super(v);
+            mTextView = v;
+        }
+    }
+
+    // Provide a suitable constructor (depends on the kind of dataset)
+    public MyAdapter(String[] myDataset) {
+        mDataset = myDataset;
+    }
+
+    // Create new views (invoked by the layout manager)
+    &#64;Override
+    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
+                                                   int viewType) {
+        // create a new view
+        View v = LayoutInflater.from(parent.getContext())
+                               .inflate(R.layout.my_text_view, parent, false);
+        // set the view's size, margins, paddings and layout parameters
+        ...
+        ViewHolder vh = new ViewHolder(v);
+        return vh;
+    }
+
+    // Replace the contents of a view (invoked by the layout manager)
+    &#64;Override
+    public void onBindViewHolder(ViewHolder holder, int position) {
+        // - get element from your dataset at this position
+        // - replace the contents of the view with that element
+        holder.mTextView.setText(mDataset[position]);
+
+    }
+
+    // Return the size of your dataset (invoked by the layout manager)
+    &#64;Override
+    public int getItemCount() {
+        return mDataset.length;
+    }
+}
+</pre>
+
+
+<div style="float:right;margin-top:15px;margin-left:30px">
+<img src="{@docRoot}design/material/images/card_travel.png" alt="" width="225" height="383">
+<p class="img-caption" style="margin-left:12px">
+<strong>Figura 3</strong>. Exemplos de cartões.
+</p>
+</div>
+
+<h2 id="CardView">Criar cartões</h2>
+
+<p>{@link android.support.v7.widget.CardView} amplia a classe {@link android.widget.FrameLayout} e
+permite que você exiba informações dentro dos cartões que têm uma aparência consistente em toda a plataforma. Os widgets {@link
+android.support.v7.widget.CardView} podem ter sombras e bordas arredondadas.</p>
+
+<p>Para criar um cartão com sombra, use o atributo <code>card_view:cardElevation</code>.
+{@link android.support.v7.widget.CardView} usa elevação real e sombras dinâmicas no Android 5.0
+(API de nível 21) e posteriores e volta para uma implementação de sombra programática em versões anteriores.
+Para obter mais informações, consulte <a href="{@docRoot}training/material/compatibility.html">Como manter
+a compatibilidade</a>.</p>
+
+<p>Use estas propriedades para personalizar a aparência do widget
+{@link android.support.v7.widget.CardView}:</p>
+
+<ul>
+  <li>Para definir o raio do canto nos layouts, use o atributo <code>card_view:cardCornerRadius</code>
+.</li>
+  <li>Para definir o raio do canto no seu código, use o método <code>CardView.setRadius</code>.</li>
+  <li>Para definir a cor de segundo plano de um cartão, use o atributo <code>card_view:cardBackgroundColor</code>
+.</li>
+</ul>
+
+<p>O exemplo de código a seguir mostra como incluir um widget {@link android.support.v7.widget.CardView}
+no layout:</p>
+
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    xmlns:card_view="http://schemas.android.com/apk/res-auto"
+    ... >
+    &lt;!-- A CardView that contains a TextView -->
+    &lt;android.support.v7.widget.CardView
+        xmlns:card_view="http://schemas.android.com/apk/res-auto"
+        android:id="@+id/card_view"
+        android:layout_gravity="center"
+        android:layout_width="200dp"
+        android:layout_height="200dp"
+        card_view:cardCornerRadius="4dp">
+
+        &lt;TextView
+            android:id="@+id/info_text"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+    &lt;/android.support.v7.widget.CardView>
+&lt;/LinearLayout>
+</pre>
+
+<p>Para obter mais informações, consulte a referência de API para {@link android.support.v7.widget.CardView}.</p>
+
+
+<h2 id="Dependencies">Adicionar dependências</h2>
+
+<p>Os widgets {@link android.support.v7.widget.RecyclerView} e {@link android.support.v7.widget.CardView}
+são parte da <a href="{@docRoot}tools/support-library/features.html#v7">Biblioteca de
+Suporte v7</a>. Para usar esses widgets no projeto, adicione estas
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">dependências do Gradle</a> ao módulo
+do aplicativo:</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
diff --git a/docs/html-intl/intl/pt-br/training/material/shadows-clipping.jd b/docs/html-intl/intl/pt-br/training/material/shadows-clipping.jd
new file mode 100644
index 0000000..4c4f154
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/training/material/shadows-clipping.jd
@@ -0,0 +1,133 @@
+page.title=Como definir sombras e recortar visualizações
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lição ensina a</h2>
+<ol>
+  <li><a href="#Elevation">Atribuir elevação a visualizações</a></li>
+  <li><a href="#Shadows">Personalizar sombras e contornos de visualizações</a></li>
+  <li><a href="#Clip">Recortar visualizações</a></li>
+</ol>
+<h2>Você também deve ler</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificações do Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design no Android</a></li>
+</ul>
+</div>
+</div>
+
+<p>O Material Design introduz a elevação em elementos da interface do usuário. A elevação ajuda os usuários a entender
+a importância relativa de cada elemento e concentrar a atenção deles nas tarefas à mão.</p>
+
+<p>A elevação de uma visualização, representada pela propriedade Z, determina a aparência visual das
+sombras: visualizações com valores de Z mais altos lançam sombras maiores e mais suaves. Visualizações com valores de Z mais altos ocultam
+visualizações com valores de Z mais baixos, mas o valor de Z de uma visualização não afeta o tamanho dela.</p>
+
+<p>As sombras são desenhadas pelo pai da visualização elevada e, por isso, estão sujeitas a recortes padrão de
+visualização, recortadas pelo pai por padrão.</p>
+
+<p>A elevação também é útil para criar animações em que os widgets se elevam temporariamente
+sobre o plano de visualização ao realizar alguma ação.</p>
+
+<p>Para obter mais informações sobre elevação no Material Design, consulte
+<a href="http://www.google.com/design/spec/what-is-material/objects-in-3d-space.html">Objetos
+no espaço 3D</a>.</p>
+
+
+<h2 id="Elevation">Atribuir elevação a visualizações</h2>
+
+<p>O valor de Z para uma visualização tem dois componentes:
+
+<ul>
+<li>Elevação: o componente estático.</li>
+<li>Movimentação: o componente dinâmico usado para animações.</li>
+</ul>
+
+<p><code>Z = elevation + translationZ</code></p>
+
+<img src="{@docRoot}training/material/images/shadows-depth.png" width="580" height="261" alt="" />
+<p class="img-caption"><strong>Figura 1</strong> - sombras para diferentes elevações de visualização.</p>
+
+<p>Para definir a elevação de uma visualização em uma definição de layout, use o atributo <code>android:elevation</code>
+. Para definir a elevação de uma visualização no código de uma atividade, use o método
+{@link android.view.View#setElevation View.setElevation()}.</p>
+
+<p>Para definir a conversão de uma visualização, use o método {@link android.view.View#setTranslationZ
+View.setTranslationZ()}.</p>
+
+<p>Os novos métodos {@link android.view.ViewPropertyAnimator#z ViewPropertyAnimator.z()} e {@link
+android.view.ViewPropertyAnimator#translationZ ViewPropertyAnimator.translationZ()} permitem
+animar facilmente a elevação de visualizações. Para obter mais informações, consulte a referência de API para
+{@link android.view.ViewPropertyAnimator} e o guia do desenvolvedor <a href="{@docRoot}guide/topics/graphics/prop-animation.html">Animação de
+propriedade</a>.</p>
+
+<p>Você também pode usar um {@link android.animation.StateListAnimator} para
+especificar essas animações de um modo declarativo, o que é especialmente útil para casos em que o estado muda
+as animações de acionamento, como quando um usuário pressiona um botão. Para obter mais informações, consulte
+<a href="{@docRoot}training/material/animations.html#ViewState">Mudanças de estado de visualização da animação</a>.</p>
+
+<p>Os valores de Z são medidos em dp (pixels independentes de densidade).</p>
+
+
+<h2 id="Shadows">Personalizar sombras e contornos de visualizações</h2>
+
+<p>Os limites de um desenhável do segundo plano da visualização determinam a forma padrão da sombra.
+<strong>Contornos</strong> representam a forma externa de um objeto gráfico e definem a área
+de ondulação para o feedback de toque.</p>
+
+<p>Analise esta visualização, definida com um desenhável de segundo plano:</p>
+
+<pre>
+&lt;TextView
+    android:id="@+id/myview"
+    ...
+    android:elevation="2dp"
+    android:background="@drawable/myrect" />
+</pre>
+
+<p>O desenhável do segundo plano é definido como um retângulo com bordas arredondadas:</p>
+
+<pre>
+&lt;!-- res/drawable/myrect.xml -->
+&lt;shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+    &lt;solid android:color="#42000000" />
+    &lt;corners android:radius="5dp" />
+&lt;/shape>
+</pre>
+
+<p>A visualização lança uma sombra com bordas arredondadas, uma vez que o desenhável de segundo plano
+define o contorno da visualização. Fornecer um contorno personalizado neutraliza a forma padrão de uma sombra da visualização.</p>
+
+<p>Para definir um contorno personalizado para uma visualização no seu código:<p>
+
+<ol>
+<li>Amplie a classe {@link android.view.ViewOutlineProvider}.</li>
+<li>Neutralize o método {@link android.view.ViewOutlineProvider#getOutline getOutline()}.</li>
+<li>Atribua o novo fornecedor de contorno à visualização com o método {@link
+android.view.View#setOutlineProvider View.setOutlineProvider()}.</li>
+</ol>
+
+<p>Você pode criar contornos ovais e retangulares com bordas arredondadas usando os métodos na classe
+{@link android.graphics.Outline}. O fornecedor de contorno padrão para visualizações obtém o contorno
+do segundo plano da visualização. Para evitar que uma visualização lance uma sombra, defina o fornecedor de contorno
+dela como <code>null</code>.</p>
+
+
+<h2 id="Clip">Recortar visualizações</h2>
+
+<p>Recortar visualizações permite mudar facilmente a forma de uma visualização. Você pode recortar visualizações
+para obter consistência com outros elementos de design ou para mudar a forma de uma visualização em resposta à interação do usuário.
+É possível recortar uma visualização na área do contorno usando o método {@link android.view.View#setClipToOutline
+View.setClipToOutline()} ou o atributo <code>android:clipToOutline</code>. Somente
+contornos retangulares, circulares e retangulares redondos são compatíveis com recorte, conforme determinado pelo método
+{@link android.graphics.Outline#canClip Outline.canClip()}.</p>
+
+<p>Para recortar uma visualização na forma de um desenhável, defina o desenhável como o segundo plano da visualização
+(conforme exibido acima) e chame o método {@link android.view.View#setClipToOutline View.setClipToOutline()}
+.</p>
+
+<p>O recorte de visualizações é uma operação cara, por isso, não anime a forma que você
+usa para recortar uma visualização. Para atingir esse efeito, use a animação <a href="{@docRoot}training/material/animations.html#Reveal">Efeito de Revelação</a>.</p>
diff --git a/docs/html-intl/intl/pt-br/training/material/theme.jd b/docs/html-intl/intl/pt-br/training/material/theme.jd
new file mode 100644
index 0000000..df0e1ce
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/training/material/theme.jd
@@ -0,0 +1,131 @@
+page.title=Como usar o tema do Material
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Esta lição ensina a</h2>
+<ol>
+  <li><a href="#ColorPalette">Personalizar a paleta de cores</a></li>
+  <li><a href="#StatusBar">Personalizar a barra de status</a></li>
+  <li><a href="#Inheritance">Atribuir tema a visualizações individuais</a></li>
+</ol>
+<h2>Você também deve ler</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Especificações do Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design no Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>O novo tema do Material fornece:</p>
+
+<ul>
+  <li>Widgets do sistema que permitem a configuração da paleta de cores</li>
+  <li>Animações de feedback de toque para os widgets do sistema</li>
+  <li>Animações de transição de atividades</li>
+</ul>
+
+<p>É possível personalizar a aparência do tema do Material com
+uma paleta de cores que você controla, de acordo com a identidade da sua marca. Você pode atribuir cor à barra de ações e
+à barra de status usando atributos de tema, conforme exibido na <a href="#fig3">Figura 3</a>.</p>
+
+<p>Os widgets de sistema têm um novo design e animações de feedback de toque. Você pode personalizar a
+paleta de cores, as animações de feedback de toque e as transições de atividades do aplicativo.</p>
+
+<p>O tema do Material é definido como:</p>
+
+<ul>
+  <li><code>@android:style/Theme.Material</code> (versão escura)</li>
+  <li><code>@android:style/Theme.Material.Light</code> (versão clara)</li>
+  <li><code>@android:style/Theme.Material.Light.DarkActionBar</code></li>
+</ul>
+
+<p>Para obter uma lista de estilos do Material que podem ser usados, consulte a referência de API para
+{@link android.R.style R.style}.</p>
+
+<!-- two columns, dark/light material theme example -->
+<div style="width:700px;margin-top:25px;margin-bottom:10px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>Figura 1</strong>. Tema escuro do Material</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>Figura 2</strong>. Tema claro do Material</p>
+  </div>
+</div>
+<br style="clear:left">
+</div>
+
+<p class="note">
+<strong>Observação:</strong> o tema do Material só está disponível no Android 5.0 (API de nível 21) e
+posteriores. A <a href="{@docRoot}tools/support-library/features.html#v7">Biblioteca de Suporte v7</a>
+fornece temas com estilos do Material Design para alguns widgets e compatibilidade com a personalização da
+paleta de cores. Para obter mais informações, consulte
+<a href="{@docRoot}training/material/compatibility.html">Como manter a compatibilidade</a>.
+</p>
+
+
+<h2 id="ColorPalette">Personalizar a paleta de cores</h2>
+
+<p style="margin-bottom:30px">Para personalizar as cores de base do tema para adequá-lo à sua marca, defina
+as cores personalizadas usando os atributos de tema ao herdar do tema do Material:</p>
+
+<pre>
+&lt;resources>
+  &lt;!-- inherit from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- Main theme colors -->
+    &lt;!--   your app branding color for the app bar -->
+    &lt;item name="android:colorPrimary">@color/primary&lt;/item>
+    &lt;!--   darker variant for the status bar and contextual app bars -->
+    &lt;item name="android:colorPrimaryDark">@color/primary_dark&lt;/item>
+    &lt;!--   theme UI controls like checkboxes and text fields -->
+    &lt;item name="android:colorAccent">@color/accent&lt;/item>
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<div style="float:right;margin-left:25px;margin-top:20px;margin-bottom:10px" id="fig3">
+<img src="{@docRoot}training/material/images/ThemeColors.png" width="250" height="445" />
+<p class="img-caption" style="margin-bottom:0px">
+<strong>Figura 3.</strong> Como personalizar o tema do Material</p>
+</div>
+
+
+<h2 id="StatusBar">Personalizar a barra de status</h2>
+
+<p>O tema do Material permite a fácil personalização da barra de status, para você poder
+especificar uma cor adequada à sua marca, e fornece contraste suficiente para exibir os ícones de status brancos. Para
+definir uma cor personalizada para a barra de status, use o atributo <code>android:statusBarColor</code> ao
+ampliar o tema do Material. Por padrão, <code>android:statusBarColor</code> herda o
+valor de <code>android:colorPrimaryDark</code>.</p>
+
+<p>Você também pode personalizar a parte de trás da barra de status. Por exemplo, se você quiser mostrar
+uma barra de status transparente sobre uma foto, com um degradê escuro sutil, para garantir que os ícones de status
+brancos sejam visíveis, defina o atributo <code>android:statusBarColor</code> como
+<code>&#64;android:color/transparent</code> e ajuste os marcadores de janela conforme necessário. Você também
+pode usar o método {@link android.view.Window#setStatusBarColor Window.setStatusBarColor()} para
+animações ou esmaecimento.</p>
+
+<p class="note">
+<strong>Observação:</strong> a barra de status deve ter, quase sempre, um traçado distante da barra de ferramentas
+principal, exceto em casos em que haja imagens ricas de ponta a ponta, conteúdo de mídia por trás
+dessas barras e quando se usa degradê, para garantir que os ícones continuem visíveis.
+</p>
+
+<p>Ao personalizar as barras de navegação e de status, deixe-as transparentes ou modifique
+somente a barra de status. A barra de navegação deve permanecer preta em todos os outros casos.</p>
+
+
+<h2 id="Inheritance">Atribuir tema a visualizações individuais</h3>
+
+<p>Elementos nas definições do layout XML podem especificar o atributo <code>android:theme</code>,
+que referencia um recurso do tema. Esse atributo modifica o tema do elemento e quaisquer
+elementos-filho, o que é útil para alterar as paletas de cores do tema em uma parte específica
+de uma interface.</p>
diff --git a/docs/html-intl/intl/ru/design/get-started/principles.jd b/docs/html-intl/intl/ru/design/get-started/principles.jd
index 7f4977c..7e4ea12 100644
--- a/docs/html-intl/intl/ru/design/get-started/principles.jd
+++ b/docs/html-intl/intl/ru/design/get-started/principles.jd
@@ -14,8 +14,8 @@
 
 <h2 id="enchant-me">Постарайтесь понравиться пользователю</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="delight-me">Вызовите у пользователя восхищение неожиданными решениями</h4>
 <p>Красивые экраны, тщательно продуманная анимация или своевременные звуковые сигналы создают у пользователя
@@ -23,7 +23,7 @@
 что его возможности не ограничены.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_delight.png">
 
@@ -32,15 +32,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="real-objects-more-fun">Реальные объекты доставляют больше удовольствия, чем кнопки и меню</h4>
-<p>Позвольте пользователю касаться объектов приложения и манипулировать ими. Это сокращает когнитивные усилия,
-необходимые для выполнения задачи, повышая эмоциональное удовлетворение.</p>
+<p>Позвольте пользователю касаться объектов приложения и манипулировать ими. Это делает
+понятнее процесс выполнения задачи, повышая эмоциональное удовлетворение.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_real_objects.png">
 
@@ -49,8 +49,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-it-mine">Позвольте пользователю сделать интерфейс индивидуальным</h4>
 <p>Люди любят вносить в интерфейс что-то личное, чтобы чувствовать себя более комфортно и считать, что всё под контролем. Предоставьте
@@ -58,7 +58,7 @@
 выполнению основных задач.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_it_mine.png">
 
@@ -67,15 +67,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="get-to-know-me">Изучите пользователя</h4>
-<p>Постепенно выясняйте предпочтения пользователя Вместо того, чтобы снова и снова заставлять его выбирать одно и то же,
+<p>Постепенно выясняйте предпочтения пользователя. Вместо того, чтобы снова и снова заставлять его выбирать одно и то же,
  сделайте непосредственно доступными ранее выбранные варианты.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_get_to_know_me.png">
 
@@ -84,14 +84,14 @@
 
 <h2 id="simplify-my-life">Упростите жизнь пользователю</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="keep-it-brief">Будьте лаконичны</h4>
 <p>Используйте короткие фразы с простыми словами. Люди, скорее всего, пропустят длинные предложения.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_keep_it_brief.png">
 
@@ -100,15 +100,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="pictures-faster-than-words">Картинки воспринимаются быстрее чем слова</h4>
 <p>Используйте картинки в своих объяснениях. Они завладевают вниманием и действуют гораздо эффективнее
 слов.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_pictures.png">
 
@@ -117,15 +117,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="decide-for-me">Принимайте решения за пользователя, но оставляйте последнее слово за ним</h4>
 <p>Не задавайте пользователю лишних вопросов и действуйте наиболее разумным образом. Слишком широкий выбор вызывает чувство
 растерянности. Если существует вероятность, что ваш выбор не устроит пользователя, предоставьте ему возможность отмены.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_decide_for_me.png">
 
@@ -134,15 +134,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="only-show-when-i-need-it">Показывайте только самое необходимое и в нужный момент времени</h4>
 <p>Люди не в состоянии справиться сразу с большим количеством информации. Разбивайте задачи и информацию на небольшие легко
 воспринимаемые части. Скройте несущественные на данный момент опции и обучайте пользователя по ходу дела.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_information_when_need_it.png">
 
@@ -151,15 +151,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="always-know-where-i-am">Пользователь всегда должен знать, в каком месте приложения он находится</h4>
 <p>Придайте пользователю уверенность, что он не заблудился. Сделайте так, чтобы экраны в вашем приложении отличались друг от друга, и
 используйте переходы, чтобы показать связь между экранами. Обеспечивайте обратную связь от выполняемых задач.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_navigation.png">
 
@@ -168,8 +168,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="never-lose-my-stuff">Ни в коем случае не теряйте данные пользователей</h4>
 <p>Сохраняйте данные, на создание которых пользователь потратил свое время, и обеспечьте ему доступ к этой информации из любого места. Запоминайте настройки
@@ -177,7 +177,7 @@
 обновление приложения.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_never_lose_stuff.png">
 
@@ -186,15 +186,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="looks-same-should-act-same">Внешне похожие элементы должны вести себя одинаково</h4>
 <p>Помогите людям распознать функциональные различия, сделав их визуально отличимыми.
 Избегайте ситуаций, в которых разные места приложения выглядят похоже, но работают по-разному при одних тех же исходных данных.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_looks_same.png">
 
@@ -203,15 +203,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="interrupt-only-if-important">Прерывайте пользователя только в действительно важных ситуациях</h4>
 <p>Подобно хорошему секретарю, приложение должно оградить пользователя от несущественных мелочей. Люди не любят отвлекаться,
 и беспокоить их следует только в исключительно серьезных или не терпящих отлагательства ситуациях.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_important_interruption.png">
 
@@ -220,8 +220,8 @@
 
 <h2 id="make-me-amazing">Постарайтесь приятно удивить пользователя</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="give-me-tricks">Предоставьте пользователю привычные приемы</h4>
 <p>У людей повышается самооценка, когда они могут разобраться в чем-либо самостоятельно. Сделайте ваше приложение простым в освоении
@@ -229,7 +229,7 @@
 является хорошим навигационным приемом.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_tricks.png">
 
@@ -238,16 +238,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="its-not-my-fault">Пользователь ни в чем не виноват</h4>
 <p>Будьте корректны, подсказывая пользователю, как выйти из сложного положения. Никто не хочет чувствовать себя бестолковым, имея дело с вашим
 приложением. При возникновении проблем дайте четкие указания по восстановлению, но избавьте пользователя от технических деталей.
-В идеальном варианте приложение способно самостоятельно исправить ситуацию.</p>
+Если приложение само исправит ситуацию, будет еще лучше.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_error.png">
 
@@ -256,15 +256,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="sprinkle-encouragement">Не скупитесь на поддержку пользователя</h4>
 <p>Разбейте сложные задачи на более мелкие, легко выполнимые этапы. Обеспечьте обратную связь, 
 даже при незначительных операциях.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png">
 
@@ -273,16 +273,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="do-heavy-lifting-for-me">Выполняйте за пользователя черную работу</h4>
-<p>Дайте новичкам возможность почувствовать себя экспертами, реализовав операции о которых они и не подозревали. Например,
+<p>Дайте новичкам возможность почувствовать себя экспертами, реализовав операции, о которых они и не подозревали. Например,
 ярлыки, объединяющие несколько фотоэффектов, позволят превратить любительские фотографии в шедевры всего за
 несколько шагов.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_heavy_lifting.png">
 
@@ -291,15 +291,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-important-things-fast">Важные действия должны происходить быстро</h4>
 <p>Не все действия равноценны. Решите, какие функции вашего приложения являются самыми важными, и обеспечьте возможность 
 быстро найти и использовать их. Например, это может быть кнопка спуска затвора в фотокамере или кнопка паузы в музыкальном плеере.</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_important_fast.png">
 
diff --git a/docs/html-intl/intl/ru/design/material/index.jd b/docs/html-intl/intl/ru/design/material/index.jd
index 2cfd91e..da0352a 100644
--- a/docs/html-intl/intl/ru/design/material/index.jd
+++ b/docs/html-intl/intl/ru/design/material/index.jd
@@ -1,7 +1,7 @@
-page.title=Material Design
-page.tags=Material Design
-page.type=design
-page.image=design/material/images/MaterialLight.png
+page.title=Material Design для Android
+page.tags=Material,design
+page.type=разработка
+page.image=images/cards/design-material-for-android_2x.jpg
 
 @jd:body
 
@@ -92,7 +92,7 @@
 <div style="width:700px;margin-top:25px;margin-bottom:20px">
 <div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
   <img src="{@docRoot}design/material/images/list_mail.png" width="500" height="426" />
-  <p>Виджет <code>RecyclerView</code> Представляет собой более гибкую версию <code>ListView</code>,
+  <p>Виджет <code>RecyclerView</code> представляет собой более гибкую версию <code>ListView</code>,
 которая поддерживает различные типы макетов и способствует повышению производительности.</p>
 </div>
 <div style="float:left;width:250px;margin-right:0px;">
@@ -137,9 +137,9 @@
 <h3>Анимация</h3>
 
 <p>Новые API-интерфейсы анимации позволяют создавать нестандартную анимацию для реакции на касание в элементах пользовательского интерфейса,
-изменения состояниия представления и переходов между действиями.</p>
+изменения состояния представления и переходов между действиями.</p>
 
-<p>Эти API-интерфейсы позволяют</p>
+<p>Эти API-интерфейсы позволяют:</p>
 
 <ul>
 <li style="margin-bottom:15px">
@@ -149,7 +149,7 @@
 скрывать и отображать представление с помощью анимации для <strong>кругового появления</strong>;
 </li>
 <li style="margin-bottom:15px">
-переключаться меду действиями с помощью настраиваемой анимации для <strong>переходов между действиями</strong>;
+переключаться между действиями с помощью настраиваемой анимации для <strong>переходов между действиями</strong>;
 </li>
 <li style="margin-bottom:15px">
 создавать более естественное движение с помощью анимации для <strong>перемещения по кривой</strong>;
@@ -158,14 +158,14 @@
 анимировать изменение одного или нескольких свойств представления с помощью анимации для <strong>изменения состояния представления</strong>;
 </li>
 <li style="margin-bottom:15px">
-отображать анимацию в <strong>графических элементах списков состояний</strong> в помежутке между изменением состояний представления.
+отображать анимацию в <strong>графических элементах списков состояний</strong> в промежутке между изменением состояний представления.
 </li>
 </ul>
 
-<p>Анимация для реакции на касание встроена а некоторые стандартные представления, например, кнопки. Новые API-интерфейсы
+<p>Анимация для реакции на касание встроена в некоторые стандартные представления, например кнопки. Новые API-интерфейсы
 позволяют разработчику настраивать эти анимации и добавлять их в свои нестандартные представления.</p>
 
-<p>Дополнительные сведения, см. в разделе <a href="{@docRoot}training/material/animations.html">Определение настраиваемой 
+<p>Дополнительные сведения см. в разделе <a href="{@docRoot}training/material/animations.html">Определение настраиваемой 
 анимации</a>.</p>
 
 
diff --git a/docs/html-intl/intl/ru/design/patterns/compatibility.jd b/docs/html-intl/intl/ru/design/patterns/compatibility.jd
new file mode 100644
index 0000000..fd1f5a8
--- /dev/null
+++ b/docs/html-intl/intl/ru/design/patterns/compatibility.jd
@@ -0,0 +1,70 @@
+page.title=Обратная совместимость
+page.tags="support"
+page.metaDescription=Примечания о том, как Android 4.x адаптирует пользовательский интерфейс, разработанный для ОС и оборудования более старых версий.
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/basics/supporting-devices/index.html">
+  <div>
+    <h3>Документация для разработчиков</h3>
+    <p>Поддержка различных устройств</p>
+  </div>
+</a>
+
+<p>Существенные изменения в Android 3.0, включенные в новую версию:</p>
+<ul>
+<li>Прекращено использование аппаратных клавиш навигации ("Назад", "Меню", "Поиск", "Главная"). Вместо них за навигацию теперь отвечают
+ виртуальные элементы управления ("Назад", "Главная", "Последние").</li>
+<li>Функциональный шаблон для использования меню на панелях действий.</li>
+</ul>
+<p>Эти изменения в Android 4.0 для планшетов также реализованы в платформе для телефонов.</p>
+
+<h2 id="older-hardware">Адаптация Android 4.0 для оборудования и приложений более старых версий</h2>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Телефоны с виртуальными элементами навигации</h4>
+<p>В приложениях Android, созданных для Android 3.0 и более поздних версий, действия отображаются на панели действий. Действия, которые не помещаются на этой панели или не являются существенными, чтобы размещать их в элементе верхнего уровня, отображаются в панели дополнительных действий.
+
+</p>
+<p>Чтобы открыть панель дополнительных действий, необходимо коснуться ее значка в панели действий.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_virtual_nav.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Телефоны с физическими клавишами навигации</h4>
+<p>На телефонах Android с традиционными аппаратными клавишами отсутствует виртуальная панель навигации (в нижней части экрана).
+ Вместо этого для отображения дополнительных действий используется аппаратная клавиша меню. Открывающееся в результате нажатия этой клавиши
+окно оформлено в том же стиле, что и в примере выше, однако отображается оно в нижней части экрана.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_physical_buttons.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Устаревшие приложения на телефонах с виртуальными элементами навигации</h4>
+<p>Если запустить приложение, созданное для Android 2.3 или более ранних версий, на телефоне с виртуальными элементами
+навигации, то панель дополнительных действий отобразится справа в виртуальной панели навигации. Можно
+коснуться элемента управления, чтобы отобразить действия приложения в стиле традиционного меню Android.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_legacy_apps.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/ru/design/patterns/confirming-acknowledging.jd b/docs/html-intl/intl/ru/design/patterns/confirming-acknowledging.jd
index 99a0d17..d3f8bdd 100644
--- a/docs/html-intl/intl/ru/design/patterns/confirming-acknowledging.jd
+++ b/docs/html-intl/intl/ru/design/patterns/confirming-acknowledging.jd
@@ -4,12 +4,12 @@
 
 <p>В некоторых ситуациях, когда пользователь выполняет действие в вашем приложении, полезно в текстовом виде <em>запросить подтверждение</em> этого действия или <em>отобразить уведомление</em> о его выполнении.</p>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_confirming.png">
     <p><strong>Подтверждение</strong> — это просьба к пользователю подтвердить, что он действительно хочет, чтобы запущенное действие было выполнено. Иногда подтверждение отображается вместе с предупреждением или важной информацией относительно действия, которую пользователь должен принять во внимание.</p>
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_acknowledge.png">
     <p><strong>Уведомление</strong> отображает текст, позволяющий пользователю узнать о завершении действия. Это устраняет неопределенность в отношении неявных операций, которые выполняет система. В некоторых случаях уведомления отображаются вместе с возможностью отменить действие.</p>
   </div>
@@ -22,14 +22,14 @@
 <img src="{@docRoot}design/media/confirm_ack_flowchart.png">
 
 <h2>Подтверждение</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>Пример: Google Play Books</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_books.png">
-    <p>В этом примере пользователь пытается удалить книгу из своей библиотеки Play Google. Для подтверждения этого действия отображается <a href="{@docRoot}design/building-blocks/dialogs.html#alerts">оповещение</a>, поскольку пользователь должен понимать, что книга больше не будет доступна ни с одного устройства.</p>
+    <p>В этом примере пользователь пытается удалить книгу из своей библиотеки Google Play. Для подтверждения этого действия отображается <a href="{@docRoot}design/building-blocks/dialogs.html#alerts">оповещение</a>, поскольку пользователь должен понимать, что книга больше не будет доступна ни с одного устройства.</p>
     <p>При разработке диалогового окна подтверждения следует создать осмысленный заголовок, отражающий запрошенное действие.</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>Пример: Android Beam</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_beam.png">
     <p>Подтверждения не обязательно должны быть представлены в виде оповещения с двумя кнопками. После старта Android Beam пользователю предлагается прикоснуться к содержимому (в данном примере, к фотографии) для обмена данными. Если пользователь решит не продолжать, он просто ничего не предпримет.</p>
@@ -37,31 +37,31 @@
 </div>
 
 <h2>Уведомление</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
-    <h4>Пример: Сохранение оставленного черновика Gmail</h4>
+<div class="cols">
+  <div class="col-6">
+    <h4>Пример: сохранение оставленного черновика Gmail</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png">
     <p>В этом примере, если пользователь переходит назад или вверх от экрана составления писем Gmail (возможно, вследствие неожиданного события), текущий черновик автоматически сохраняется. Всплывающее уведомление обращает внимание пользователя на этот факт. Через несколько секунд оно исчезает.</p>
     <p>Отмена здесь неуместна, поскольку сохранение было инициировано приложением, а не пользователем. Кроме того, пользователь сможет без труда вернуться к написанию сообщения, перейдя к списку черновиков.</p>
 
   </div>
-  <div class="layout-content-col span-6">
-    <h4>Пример: Удаление переписки Gmail</h4>
+  <div class="col-6">
+    <h4>Пример: удаление переписки Gmail</h4>
     <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png">
     <p>После того, как пользователь удалит переписку из Gmail, появляется уведомление с возможностью отмены действия. Оно остается, пока пользователь не предпримет постороннее действие, например, прокрутит список писем.</p>
   </div>
 </div>
 
 <h2>Отсутствие подтверждения или уведомления</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>Пример: +1</h4>
     <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png">
     <p><strong>Подтверждение не требуется</strong>. Если пользователь нажал +1 случайно, это не имеет большого значения. Он может просто нажать кнопку еще раз, чтобы отменить действие.</p>
     <p><strong>Уведомление не требуется</strong>. Пользователь увидит, что кнопка +1 поменяла состояние и стала красной. Это достаточно ясный сигнал.</p>
   </div>
-  <div class="layout-content-col span-7">
-    <h4>Пример: Удаление приложения с главного экрана</h4>
+  <div class="col-7">
+    <h4>Пример: удаление приложения с главного экрана</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png">
     <p><strong>Подтверждение не требуется</strong>. Это преднамеренное действие: пользователь должен перетащить элемент на относительно крупную отдельно расположенную цель. Поэтому случайности здесь практически невероятны. К тому же, если пользователь пожалеет о своем решении, ему потребуется всего несколько секунд, чтобы вернуть приложение.</p>
     <p><strong>Уведомление не требуется</strong>. Пользователь будет знать, что приложение удалено с главного экрана, потому что сам заставил его исчезнуть в результате перетаскивания.</p>
diff --git a/docs/html-intl/intl/ru/design/patterns/navigation.jd b/docs/html-intl/intl/ru/design/patterns/navigation.jd
index a65a8f6..3a0fc6e 100644
--- a/docs/html-intl/intl/ru/design/patterns/navigation.jd
+++ b/docs/html-intl/intl/ru/design/patterns/navigation.jd
@@ -16,14 +16,14 @@
 инструкциям по применению кнопок "Назад" и "Вверх" сделает навигацию в вашем приложении предсказуемой и надежной с точки зрения пользователей.</p>
 <p>В Android 2.3 и в более ранних версиях для навигации внутри приложения использовалась системная кнопка <em>Назад</em>.
  С появлением панели действий в Android 3.0 стал доступен второй механизм 
-навигации, — кнопка <em>Вверх</em>, содержащая значок приложения и левую угловую скобку.</p>
+навигации – кнопка <em>Вверх</em>, содержащая значок приложения и левую угловую скобку.</p>
 
 <img src="{@docRoot}design/media/navigation_with_back_and_up.png">
 
 <h2 id="up-vs-back">Кнопки "Вверх" и "Назад"</h2>
 
 <p>Кнопка "Вверх" используется для навигации внутри приложения по иерархической структуре его
-экранов. Например, если на экране A отображается некоторый список, и при выборе какого-либо элемента открывается
+экранов. Например, если на экране A отображается некоторый список и при выборе какого-либо элемента открывается
 экран B (с подробной информацией об этом элементе), то на экране B должна присутствовать кнопка "Вверх"
  для возврата к экрану A.</p>
 <p>Если экран является самым верхним в приложении (то есть главным), он не должен содержать кнопку
@@ -34,7 +34,7 @@
 экранов, а не на иерархии приложения.</p>
 
 <p>Если предыдущий экран одновременно является иерархическим родителем текущего, 
-кнопка "Назад" имеет то же действие, что и кнопка "Вверх"&mdash;, и это случается довольно
+кнопка "Назад" имеет то же действие, что и кнопка "Вверх", &mdash; и это случается довольно
 часто. Однако, в отличие от кнопки "Вверх", гарантирующей, что пользователь остается в приложении, кнопка "Назад"
 может перевести его на главный экран или даже в другое приложение.</p>
 
@@ -57,7 +57,7 @@
 <h4>Изменение представления содержимого на экране</h4>
 <p>Изменение параметров представления содержимого на экране не сказывается на поведении кнопок "Вверх" и "Назад", — экран остается
 на прежнем месте в иерархии приложения, а история навигации не меняется.</p>
-<p>Примерами изменения представления являются</p>
+<p>Примерами изменения представления являются:</p>
 <ul>
 <li>переключение представлений с помощью вкладок или жестов прокрутки вправо/влево;</li>
 <li>переключение представлений с помощью раскрывающихся (или свернутых) вкладок;</li>
@@ -75,7 +75,7 @@
 <img src="{@docRoot}design/media/navigation_between_siblings_gmail.png">
 
 <p>Однако существует важное исключение из этого правила во время просмотра подробных представлений элементов, не связанных
-вместе ссылающимся списком, например&mdash;, приложений
+вместе ссылающимся списком, например приложений
 одного разработчика или альбомов одного исполнителя в Play Store. В этих случаях переход по каждой ссылке создает
 историю навигации, что заставляет кнопку "Назад" перебирать все ранее просмотренные экраны. Кнопка "Вверх" должна по-прежнему
 игнорировать эти связанные по смыслу экраны и осуществлять переход на последний просмотренный контейнерный экран.</p>
@@ -104,7 +104,7 @@
 </ul>
 
 <p>Что касается кнопки "Назад", необходимо обеспечить более предсказуемую навигацию, вставив в 
-в стек переходов назад полный путь навигации вверх к самому верхнему экрану приложения. Это позволит пользователям,
+стек переходов назад полный путь навигации вверх к самому верхнему экрану приложения. Это позволит пользователям,
 забывшим, как они вошли в приложение, перейти к его главному экрану перед выходом из
 приложения.</p>
 
@@ -122,8 +122,8 @@
 называются <em>косвенными</em>.</p>
 
 <p>Кнопка "Назад" действует не так, как в случае со стандартными (прямыми) уведомлениями. Нажав ее на промежуточном экране косвенного уведомления,
-пользователь вернется в точку, где было сгенерировано уведомление, &mdash;поскольку
-в стеке переходов назад не появились никакие дополнительные экраны. Если пользователь перейдет в приложение с
+пользователь вернется в точку, где было создано уведомление, поскольку
+в стеке обратных переходов не появилось дополнительных экранов. Если пользователь перейдет в приложение с
 промежуточного экрана, поведение кнопок "Вверх" и "Назад" будет таким же, как и при стандартных уведомлениях:
 навигация внутри приложения, а не возврат к промежуточному экрану.</p>
 
@@ -152,15 +152,15 @@
 
 <h2 id="between-apps">Навигация между приложениями</h2>
 
-<p>Одним из фундаментальных достоинств системы Android является способность приложений активировать друг
-друга, что дает пользователю возможность переходить непосредственно из одного приложения в другое. Например, 
+<p>Одним из фундаментальных достоинств системы Android является способность взаимного запуска приложений,
+что дает пользователю возможность переходить непосредственно из одного приложения в другое. Например, 
 приложение, которому нужно сделать снимок, может активировать приложение Camera, которое передаст фотографию
-вызвавшему приложению. Это огромное преимущество, как для разработчика, имеющего возможность без проблем воспользоваться
+вызвавшему его приложению. Это огромное преимущество как для разработчика, имеющего возможность без проблем воспользоваться
 кодом других приложений, так и для пользователя, получающего согласованный интерфейс для часто выполняемых
 действий.</p>
 
-<p>Чтобы разобраться в навигации между приложениями, необходимо разобраться в поведении платформы Android,
-которое обсуждается ниже.</p>
+<p>Чтобы разобраться в навигации между приложениями, необходимо понять поведение платформы Android,
+ обсуждаемое ниже.</p>
 
 <h4>Действия, задачи и намерения</h4>
 
@@ -168,28 +168,28 @@
 информацией и все действия, которые при этом может выполнить пользователь. Приложение представляет собой набор
 действий, состоящий как из действий, созданных разработчиком, так и из тех, которые выполняются с помощью других приложений.</p>
 
-<p><strong>Задача</strong> — последовательность действий, выполняемых пользователем для достижения цели. Отдельная
+<p><strong>Задача</strong> — это последовательность действий, выполняемых пользователем для достижения цели. Отдельная
 задача может использовать действия, заимствованные у одного или у нескольких
 различных приложений.</p>
 
-<p><strong>Намерение</strong> — механизм, позволяющий приложению сигнализировать, что ему требуется помощь
+<p><strong>Намерение</strong> — это механизм, позволяющий приложению сигнализировать, что ему требуется помощь
 другого приложения в выполнении некоторого действия. Действия, выполняемые приложением, могут указывать, на какие намерения
-они готовы отвечать. Для осуществления достаточно распространенных намерений, например, "Поделиться", у пользователя может быть установлено несколько приложений,
+они готовы отвечать. Для осуществления достаточно распространенных намерений, например "Поделиться", у пользователя может быть установлено несколько приложений,
  способных выполнить соответствующий запрос.</p>
 
 <h4>Пример: навигация между приложениями для поддержки совместного использования ресурсов</h4>
 
 <p>Чтобы понять, как действия, задачи и намерения взаимодействуют друг с другом, разберемся, как одно приложение позволяет пользователям
-поделиться содержимым с помощью другого приложения. Например, запуск приложения Play Store из главного экрана создает
-новую задачу, Task A (см. рисунок ниже). Когда пользователь выполнит навигацию по Play Store и коснется интересующей его книги,
-чтобы просмотреть информацию о ней, он останется в том же приложении, расширив его возможности с помощью добавленных действий. Запуск 
+поделиться содержимым с помощью другого приложения. Например, при запуске приложения Play Store с главного экрана создается
+новая задача, Task A (см. рисунок ниже). Когда пользователь выполнит навигацию по Play Store и коснется интересующей его книги,
+чтобы просмотреть информацию о ней, он остается в той же задаче, расширяя ее с помощью добавленных действий. Запуск 
 действия "Поделиться" выводит перед пользователем диалоговое окно со списком действий (из разных приложений),
 зарегистрированных для выполнения намерения "Поделиться".</p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_inward.png">
 
 <p>Если пользователь предпочтет поделиться информацией через Gmail, действие "Написать" приложения Gmail добавляется как продолжение задачи
-Task A&mdash;, и никакая новая задача не создается. Если в фоновом режиме работает собственная задача Gmail, на нее это никак
+Task A, и никакая новая задача не создается. Если в фоновом режиме работает собственная задача Gmail, на нее это никак
 не повлияет.</p>
 
 <p>Если во время действия "Составление сообщения" пользователь отправит сообщение или коснется кнопки "Назад", он вернется к
@@ -199,7 +199,7 @@
 <img src="{@docRoot}design/media/navigation_between_apps_back.png">
 
 <p>Однако, коснувшись кнопки "Вверх" во время действия "Составление сообщения", пользователь выскажет пожелание остаться в приложении 
-Gmail. Откроется экран действия "Переписка" приложения Gmail, и для него будет создано новая задача Task B. Новые задачи
+Gmail. Откроется экран действия "Переписка" приложения Gmail, и для него будет создана новая задача Task B. Новые задачи
 всегда имеют корень на главном экране, поэтому касание кнопки "Назад" на экране переписки возвращает пользователя именно туда.</p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_up.png">
diff --git a/docs/html-intl/intl/ru/guide/components/activities.jd b/docs/html-intl/intl/ru/guide/components/activities.jd
new file mode 100644
index 0000000..5f55a35
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/activities.jd
@@ -0,0 +1,756 @@
+page.title=Операции
+page.tags=операция,намерение
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Содержание документа</h2>
+<ol>
+  <li><a href="#Creating">Создание операции</a>
+    <ol>
+      <li><a href="#UI">Реализация пользовательского интерфейса</a></li>
+      <li><a href="#Declaring">Объявление операции в манифесте</a></li>
+    </ol>
+  </li>
+  <li><a href="#StartingAnActivity">Запуск операции</a>
+    <ol>
+      <li><a href="#StartingAnActivityForResult">Запуск операции для получения результата</a></li>
+    </ol>
+  </li>
+  <li><a href="#ShuttingDown">Завершение операции</a></li>
+  <li><a href="#Lifecycle">Управление жизненным циклом операций</a>
+    <ol>
+      <li><a href="#ImplementingLifecycleCallbacks">Реализация обратных вызовов жизненного цикла</a></li>
+      <li><a href="#SavingActivityState">Сохранение состояния операции</a></li>
+      <li><a href="#ConfigurationChanges">Обработка изменений в конфигурации</a></li>
+      <li><a href="#CoordinatingActivities">Согласование операций</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Ключевые классы</h2>
+<ol>
+  <li>{@link android.app.Activity}</li>
+</ol>
+
+<h2>См. также:</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/tasks-and-back-stack.html">Задачи и стек
+переходов назад</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+<p>{@link android.app.Activity} — это компонент приложения, который выдает экран,
+ и с которым пользователи могут взаимодействовать для выполнения каких-либо действий, например набрать номер телефона, сделать фото, отправить письмо или
+просмотреть карту. Каждой операции присваивается окно для прорисовки соответствующего пользовательского интерфейса. Обычно окно
+отображается во весь экран, однако его размер может быть меньше, и оно может размещаться поверх других
+окон.</p>
+
+<p> Как правило, приложение состоит из нескольких операций, которые слабо 
+связаны друг с другом. Обычно одна из операций в приложении обозначается как «основная», 
+предлагаемая пользователю при первом запуске приложения. В свою очередь, каждая
+операция может запустить другую операцию для выполнения различных действий. Каждый раз, когда
+запускается новая операция, предыдущая операция останавливается, однако система сохраняет ее
+в стеке («стек переходов назад»). При запуске новой операции она помещается в стек переходов назад и
+отображается для пользователя. Стек переходов назад работает по принципу «последним вошёл — первым вышел»,
+поэтому после того как пользователь завершил текущую операцию и нажал кнопку <em>Назад</em>, текущая операция
+удаляется из стека (и уничтожается), и возобновляется предыдущая операция. (Подробные сведения о стеке
+переходов назад представлены в статье <a href="{@docRoot}guide/components/tasks-and-back-stack.html">Задачи и стек
+переходов назад</a>.)</p>
+
+<p>Когда операция останавливается по причине запуска новой операции, для уведомления об изменении ее состояния
+используются методы обратного вызова жизненного цикла операции.
+Существует несколько таких методов, которые может принимать операция вследствие изменения своего состояния
+&mdash; создание операции, ее остановка, возобновление или уничтожение системой; также
+каждый обратный вызов представляет возможность выполнить определенное действие,
+подходящее для соответствующего изменения состояния. Например, в случае остановки операция должна освободить любые
+крупные объекты, например, подключение к сети или базе данных. При возобновлении операции вы можете
+повторно получить необходимые ресурсы и возобновить выполнение прерванных действий. Такие изменения состояния
+являются частью жизненного цикла операции.</p>
+
+<p>Далее в этом документе рассматриваются основы создания и использования операций,
+включая полное описание жизненного цикла операции, чтобы вы могли лучше понять, как следует управлять
+переходами между различными состояниями операции.</p>
+
+
+
+<h2 id="Creating">Создание операции</h2>
+
+<p>Чтобы создать операцию, сначала необходимо создать подкласс класса {@link android.app.Activity} (или
+воспользоваться существующим его подклассом). В таком подклассе необходимо реализовать методы обратного вызова, которые
+вызывает система при переходе операции из одного состояния своего жизненного цикла в другое, например при
+создании, остановке, возобновлении или уничтожении операции. Вот два наиболее важных метода
+обратного вызова:</p>
+
+<dl>
+  <dt>{@link android.app.Activity#onCreate onCreate()}</dt>
+  <dd>Этот метод необходимо обязательно реализовать, поскольку система вызывает его при создании вашей
+операции. В своей реализации вам необходимо инициализировать ключевые компоненты
+операции.
+    Наиболее важно именно здесь вызвать {@link android.app.Activity#setContentView
+setContentView()} для определения макета пользовательского интерфейса операции.</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>Система вызывает этот метод в качестве первого признака выхода пользователя из
+операции (однако это не всегда означает, что операция будет уничтожена). Обычно именно здесь
+необходимо применять любые изменения, которые должны быть сохранены помимо текущего сеанса работы пользователя (поскольку
+пользователь может не вернуться назад).</dd>
+</dl>
+
+<p>Существуют также и некоторые другие методы обратного вызова жизненного цикла, которые необходимо использовать для того, чтобы обеспечить
+плавный переход между операциями, а также для обработки непредвиденных нарушений в работе операции, в результате которых она может быть
+остановлена или даже уничтожена. Более подробное описание всех методов обратного вызова жизненного цикла представлены в разделе,
+посвященном <a href="#Lifecycle">управлению жизненным циклом операций</a>.</p>
+
+
+
+<h3 id="UI">Реализация пользовательского интерфейса</h3>
+
+<p> Для реализации пользовательского интерфейса операции используется иерархия представлений &mdash;объектов, полученных из
+класса {@link android.view.View}.  Каждое представление отвечает за определенную прямоугольную область
+окна операции и может реагировать на действия пользователей. Например, представлением может быть
+кнопка, нажатие на которую приводит к выполнению определенного действия.</p>
+
+<p>В Android предусмотрен набор уже готовых представлений, которые можно использовать для создания дизайна макета и его
+организации. Виджеты — это представления с визуальными (и интерактивными) элементами, например, 
+кнопками, текстовыми полями, чекбоксами или просто изображениями. Макеты — это представления, полученные из класса {@link
+android.view.ViewGroup}, обеспечивающие уникальную модель компоновки для своих дочерних представлений, таких как линейный
+макет, сетка или относительный макет. Также можно создать подкласс для классов {@link android.view.View} и
+{@link android.view.ViewGroup} (или воспользоваться существующими подклассами), чтобы создать собственные виджеты и 
+макеты, и затем применить их к макету своей операции.</p>
+
+<p>Чаще всего для задания макета с помощью представлений используется XML-файл макета, сохраненный в
+ресурсах приложения. Таким образом вы можете хранить дизайн пользовательского интерфейса отдельно от
+исходного кода, который служит для задания поведения операции. Чтобы задать макет в качестве пользовательского интерфейса
+операции, можно использовать метод {@link android.app.Activity#setContentView(int) setContentView()}, передав в него
+идентификатор ресурса для макета. Однако вы также можете создать новые {@link android.view.View} в коде вашей
+операции и создать иерархию представлений. Для этого вставьте {@link
+android.view.View} в {@link android.view.ViewGroup}, а затем используйте этот макет, передав корневой объект
+{@link android.view.ViewGroup} в метод {@link android.app.Activity#setContentView(View)
+setContentView()}.</p>
+
+<p>Подробные сведения о создании пользовательского интерфейса см. в статье <a href="{@docRoot}guide/topics/ui/index.html">Пользовательский интерфейс</a>.</p>
+
+
+
+<h3 id="Declaring">Объявление операции в манифесте</h3>
+
+<p>Чтобы операция стала доступна системе, ее необходимо объявить в файле
+манифеста. Для этого откройте файл манифеста и добавьте элемент <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> в
+качестве дочернего для элемента
+<a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>. Например:</p>
+
+<pre>
+&lt;manifest ... &gt;
+  &lt;application ... &gt;
+      &lt;activity android:name=".ExampleActivity" /&gt;
+      ...
+  &lt;/application ... &gt;
+  ...
+&lt;/manifest &gt;
+</pre>
+
+<p>Существует несколько других атрибутов, которые можно включить в этот элемент, чтобы определить такие
+свойства, как метка операции, значок операции или тема оформления для пользовательского интерфейса операции.
+Единственным обязательным атрибутом является <a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">{@code android:name}</a>
+&mdash; он определяет имя класса операции. После
+публикации вашего приложения вам не следует переименовывать его, поскольку это может нарушить некоторые
+функциональные возможности приложения, например, ярлыки приложения (ознакомьтесь с публикацией <a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Вещи
+, которые нельзя менять</a> в блоге разработчиков).</p>
+
+<p>Дополнительные сведения об объявлении операции
+в манифесте см. в справке по элементу <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>.</p>
+
+
+<h4>Использование фильтров намерений</h4>
+
+<p>Элемент <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> также может задавать различные фильтры намерений &mdash; с помощью элемента <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> &mdash; для объявления того, как другие компоненты приложения
+могут активировать операцию.</p>
+
+<p>При создании нового приложения с помощью инструментов Android SDK в заготовке операции,
+создаваемой автоматически, имеется фильтр намерений, который объявляет операцию.
+Эта операция реагирует на выполнение «основного» действия, и ее следует поместить в категорию переходсредства запуска. Фильтр намерений
+выглядит следующим образом.</p>
+
+<pre>
+&lt;activity android:name=".ExampleActivity" android:icon="@drawable/app_icon"&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>Элемент <a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> указывает, что это «основная» точка входа в приложение. Элемент <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a>указывает, что эту операцию следует указать в
+средстве запуска приложений системы (чтобы пользователи могли запускать эту операцию).</p>
+
+<p>Если приложение планируется создать самодостаточным и запретить другим приложениям активировать
+его операции, то других фильтров намерений создавать не нужно. В этом случае только в одной операции
+должно иметься «основное» действие, и ее следует поместить в категорию средства запуска, как в примере выше. В операциях,
+которые не должны быть доступны для других приложений, не следует включать фильтры намерений.
+Вы можете самостоятельно запустить такие операции с помощью явных намерений (как описывается в следующем разделе).</p>
+
+<p>Однако, если вам необходимо, чтобы операция реагировала на неявные намерения,
+получаемые от других приложений (а также из вашего приложения), для операции необходимо определить дополнительные фильтры
+намерений. Для каждого типа намерения, на который необходимо реагировать, необходимо указать объект <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a>, включающий элемент
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> и необязательный элемент <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> или <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a> (или оба этих элемента). Эти элементы определяют тип намерения, на который может реагировать
+ваша операция.</p>
+
+<p>Дополнительные сведения о том, как операции могут реагировать на намерения, приведены в статье <a href="{@docRoot}guide/components/intents-filters.html">Намерения и фильтры намерений</a>.
+</p>
+
+
+
+<h2 id="StartingAnActivity">Запуск операции</h2>
+
+<p>Для запуска другой операции достаточно вызвать метод {@link android.app.Activity#startActivity
+startActivity()}, передав в него объект {@link android.content.Intent}, который описывает запускаемую
+операцию. В намерении указывается либо точная операция для запуска, либо описывается
+тип операции, которую вы хотите выполнить (после чего система выбирает для вас подходящую
+операцию, которая
+может даже находиться в другом приложении). Намерение также может содержать небольшой объем данных,
+которые будут использоваться запущенной операцией.</p>
+
+<p>При работе с собственным приложением зачастую требуется лишь запустить нужную операцию.
+ Для этого необходимо создать намерение, которое явно определяет требуемую операцию
+с помощью имени класса. Ниже представлен пример запуска одной операцией другой операции с именем {@code
+SignInActivity}.</p>
+
+<pre>
+Intent intent = new Intent(this, SignInActivity.class);
+startActivity(intent);
+</pre>
+
+<p>Однако в вашем приложении также может потребоваться выполнить некоторое действие, например, отправить письмо, текстовое
+сообщение или обновить статус, используя данные из вашей операции. В этом случае в вашем приложении могут
+отсутствовать такие действия, поэтому вы можете воспользоваться операциями
+из других приложений, имеющихся на устройстве, которые могут выполнять требуемые действия. Как раз в этом случае
+намерения особенно полезны &mdash; можно создать намерение, которое описывает необходимое действие,
+после чего система
+запускает его из другого приложения. При наличии
+нескольких операций, которые могут обработать намерение, пользователь может выбирать, какое из них следует использовать. Например,
+если пользователю требуется предоставить возможность отправить электронное письмо, можно создать
+следующее намерение:</p>
+
+<pre>
+Intent intent = new Intent(Intent.ACTION_SEND);
+intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);
+startActivity(intent);
+</pre>
+
+<p>Дополнительный компонент {@link android.content.Intent#EXTRA_EMAIL}, добавленный в намерение, представляет собой строковый массив
+адресов электронной почты для отправки письма. Когда почтовая программа реагирует на это
+намерение, она считывает дополнительно добавленный строковый массив и помещает имеющиеся в нем адреса в поле получателя
+в окне создания письма. При этом запускается операция почтовой программы, а после того, как
+пользователь завершит требуемые действия, возобновляется ваша операция.</p>
+
+
+
+
+<h3 id="StartingAnActivityForResult">Запуск операции для получения результата</h3>
+
+<p>В некоторых случаях после запуска операции может потребоваться получить результат. Для этого
+вызовите метод {@link android.app.Activity#startActivityForResult
+startActivityForResult()} (вместо {@link android.app.Activity#startActivity
+startActivity()}). Чтобы получить результат после выполнения последующей
+операции, реализуйте метод обратного
+вызова {@link android.app.Activity#onActivityResult onActivityResult()}. По завершении последующей операции она возвращает результат в объекте {@link
+android.content.Intent}
+в вызванный метод {@link android.app.Activity#onActivityResult onActivityResult()}.</p>
+
+<p>К примеру, пользователю потребуется выбрать один из контактов, чтобы ваша операция могла
+выполнить некоторые действия с информацией об этом контакте. Ниже представлен пример создания такого намерения
+и обработки результата.</p>
+
+<pre>
+private void pickContact() {
+    // Create an intent to "pick" a contact, as defined by the content provider URI
+    Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
+    startActivityForResult(intent, PICK_CONTACT_REQUEST);
+}
+
+&#64;Override
+protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+    // If the request went well (OK) and the request was PICK_CONTACT_REQUEST
+    if (resultCode == Activity.RESULT_OK &amp;&amp; requestCode == PICK_CONTACT_REQUEST) {
+        // Perform a query to the contact's content provider for the contact's name
+        Cursor cursor = getContentResolver().query(data.getData(),
+        new String[] {Contacts.DISPLAY_NAME}, null, null, null);
+        if (cursor.moveToFirst()) { // True if the cursor is not empty
+            int columnIndex = cursor.getColumnIndex(Contacts.DISPLAY_NAME);
+            String name = cursor.getString(columnIndex);
+            // Do something with the selected contact's name...
+        }
+    }
+}
+</pre>
+
+<p>В этом примере демонстрируется базовая логика, которой следует руководствоваться при использовании метода {@link
+android.app.Activity#onActivityResult onActivityResult()} для обработки результата
+выполнения операции. Первое условие проверяет, успешен ли запрос, и если он успешен, то результат для
+{@code resultCode} будет {@link android.app.Activity#RESULT_OK}; также проверяется, известен ли запрос,
+для которого получен этот результат, и в этом случае {@code requestCode} соответствует
+второму параметру, отправленному в метод {@link android.app.Activity#startActivityForResult
+startActivityForResult()}. Здесь код обрабатывает результат выполнения операции путем запроса данных,
+возвращенных в {@link android.content.Intent} (параметр {@code data}).</p>
+
+<p>При этом {@link
+android.content.ContentResolver} выполняет запрос к поставщику контента, который возвращает объект
+{@link android.database.Cursor}, обеспечивающий считывание запрошенных данных. Дополнительные сведения представлены в статье
+<a href="{@docRoot}guide/topics/providers/content-providers.html">Поставщики контента</a>.</p>
+
+<p>Дополнительные сведения об использовании намерений см. в статье <a href="{@docRoot}guide/components/intents-filters.html">Намерения и фильтры
+намерений</a>.</p>
+
+
+<h2 id="ShuttingDown">Завершение операции</h2>
+
+<p>Для завершения операции достаточно вызвать ее метод {@link android.app.Activity#finish
+finish()}. Также для завершения отдельной операции, запущенной ранее, можно вызвать метод
+{@link android.app.Activity#finishActivity finishActivity()}.</p>
+
+<p class="note"><strong>Примечание.</strong> В большинстве случаев вам не следует явно завершать операцию
+с помощью этих методов. Как указано в следующем разделе, посвященном управлению жизненным циклом операции, система
+Android выполняет такое управление за вас, поэтому вам не нужно завершать ваши
+собственные операции. Вызов этих методов может отрицательно сказаться на ожидаемом
+поведении приложения. Их следует использовать исключительно тогда, когда вы абсолютно не хотите, чтобы пользователь возвращался к этому
+экземпляру операции.</p>
+
+
+<h2 id="Lifecycle">Управление жизненным циклом операций</h2>
+
+<p>Управление жизненным циклом операций путем реализации методов обратного вызова
+имеет важное значение при разработке надежных
+и гибких приложений. На жизненный цикл операции напрямую влияют его связи
+с другими операциями, его задачами и стеком переходов назад.</p>
+
+<p>Существует всего три состояния операции:</p>
+
+<dl>
+  <dt><i>Возобновлена</i></dt>
+    <dd>Операция выполняется на переднем плане экрана и отображается для пользователя. (Это состояние
+также иногда называется «Выполняется».)</dd>
+
+  <dt><i>Приостановлена</i></dt>
+    <dd>На переднем фоне выполняется другая операция, которая отображается для пользователя, однако эта операция по-прежнему не скрыта. То есть 
+поверх текущей операции отображается другая операция, частично прозрачная или не занимающая 
+полностью весь экран. Приостановленная операция полностью активна (объект {@link android.app.Activity}
+по-прежнему находится в памяти, в нем сохраняются все сведения о состоянии и информация об элементах, и он также остается связанным с
+диспетчером окон), однако в случае острой нехватки памяти система может завершить ее.</dd>
+
+  <dt><i>Остановлена</i></dt>
+    <dd>Операция полностью перекрывается другой операцией (теперь она выполняется в
+фоновом режиме). Остановленная операция по-прежнему активна (объект {@link android.app.Activity}
+по-прежнему находится в памяти, в нем сохраняются все сведения о состоянии и информация об элементах, но объект больше <em>не</em>
+связан с диспетчером окон). Однако операция больше не видна пользователю, и в случае нехватки памяти система
+может завершить ее.</dd>
+</dl>
+
+<p>Если операция приостановлена или полностью остановлена, система может очистить ее из памяти путем 
+завершения самой операции (с помощью метода {@link android.app.Activity#finish finish()}) или просто завершить ее
+процесс.  В случае повторного открытия операции (после ее завершения) ее потребуется создать
+полностью.</p>
+
+
+
+<h3 id="ImplementingLifecycleCallbacks">Реализация обратных вызовов жизненного цикла</h3>
+
+<p>При переходе операции из одного вышеописанного состояния в другое, уведомления об этом 
+реализуются через различные методы обратного вызова. Все методы обратного вызова представляют собой привязки, которые
+можно переопределить для выполнения подходящего действия при изменении состояния операции. Указанная ниже базовая
+операция включает каждый из основных методов жизненного цикла.</p>
+
+
+<pre>
+public class ExampleActivity extends Activity {
+    &#64;Override
+    public void {@link android.app.Activity#onCreate onCreate}(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // The activity is being created.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStart onStart()} {
+        super.onStart();
+        // The activity is about to become visible.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onResume onResume()} {
+        super.onResume();
+        // The activity has become visible (it is now "resumed").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onPause onPause()} {
+        super.onPause();
+        // Another activity is taking focus (this activity is about to be "paused").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStop onStop()} {
+        super.onStop();
+        // The activity is no longer visible (it is now "stopped")
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onDestroy onDestroy()} {
+        super.onDestroy();
+        // The activity is about to be destroyed.
+    }
+}
+</pre>
+
+<p class="note"><strong>Примечание.</strong> При реализации этих методов жизненного цикла
+всегда вызывайте реализацию суперкласса, прежде чем выполнять какие-либо действия, как показано в примерах выше.</p>
+
+<p>Вместе все эти методы определяют весь жизненный цикл операции. С помощью реализации этих
+методов можно отслеживать три вложенных цикла в жизненном цикле операции: </p>
+
+<ul>
+<li><b>Весь жизненный цикл</b> операции происходит между вызовом метода {@link
+android.app.Activity#onCreate onCreate()} и вызовом метода {@link
+android.app.Activity#onDestroy}. Ваша операция должна выполнить настройку
+«глобального» состояния (например, определение макета) в методе {@link android.app.Activity#onCreate onCreate()}, а затем
+освободить все оставшиеся в {@link android.app.Activity#onDestroy} ресурсы. Например, если в вашей операции
+имеется поток, выполняющийся в фоновом режиме, для загрузки данных по сети, операция может создать
+такой поток в методе {@link android.app.Activity#onCreate onCreate()}, а затем остановить его в методе {@link
+android.app.Activity#onDestroy}.</li>
+
+<li><p><b>Видимый жизненный цикл</b> операции происходит между вызовами методов {@link
+android.app.Activity#onStart onStart()} и {@link
+android.app.Activity#onStop onStop()}. В течение этого времени операция
+отображается на экране, где пользователь может взаимодействовать с ней. Например, метод {@link android.app.Activity#onStop onStop()} вызывается в
+случае, когда запускается новая операция, а текущая больше не отображается. В промежутке между вызовами этих двух методов можно
+сохранить ресурсы, необходимые для отображения операции для пользователя. Например, можно зарегистрировать объект
+{@link android.content.BroadcastReceiver} в методе {@link
+android.app.Activity#onStart onStart()} для отслеживания изменений, влияющих на пользовательский интерфейс, а затем отменить его регистрацию
+в методе {@link android.app.Activity#onStop onStop()}, когда пользователь больше не видит 
+отображаемого. В течение всего жизненного цикла операции система может несколько раз вызывать методы {@link android.app.Activity#onStart onStart()} и {@link
+android.app.Activity#onStop onStop()}, поскольку
+операция то отображается для пользователя, то скрывается от него.</p></li>
+
+<li><p><b>Жизненный цикл операции, выполняемый на переднем плане</b>, происходит между вызовами методов {@link
+android.app.Activity#onResume onResume()} и {@link android.app.Activity#onPause
+onPause()}. В течение этого времени операция выполняется на фоне всех прочих операций и
+отображается для пользователя.  Операция может часто уходить в фоновый режим и выходить из него &mdash; например,
+метод {@link android.app.Activity#onPause onPause()} вызывается при переходе устройства в спящий режим или
+при появлении диалогового окна. Поскольку переход в это состояние может выполняться довольно часто, код в этих двух методах
+должен быть легким, чтобы не допустить медленных переходов и не заставлять пользователя ждать.</p></li>
+</ul>
+
+<p>На рисунке 1 иллюстрируются проходы и пути, которые операция может пройти между состояниями.
+Прямоугольниками обозначены методы обратного вызова, которые можно реализовать для выполнения действий между переходами операции из одного
+состояния в другое. <p>
+
+<img src="{@docRoot}images/activity_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Рисунок 1.</strong> Жизненный цикл операции.</p>
+
+<p>Эти же методы жизненного цикла перечислены в таблице 1, в которой подробно описан каждый метод
+обратного вызова и указано его место в
+жизненном цикле операции в целом, включая сведения о том, может ли система завершить операцию по завершении
+метода обратного вызова.</p>
+
+<p class="table-caption"><strong>Таблица 1.</strong> Сводные сведения о методах обратного вызова
+жизненного цикла операции.</p>
+
+<table border="2" width="85%" frame="hsides" rules="rows">
+<colgroup align="left" span="3"></colgroup>
+<colgroup align="left"></colgroup>
+<colgroup align="center"></colgroup>
+<colgroup align="center"></colgroup>
+
+<thead>
+<tr><th colspan="3">Метод</th> <th>Описание</th> <th>Завершаемый?</th> <th>Следующий</th></tr>
+</thead>
+
+<tbody>
+<tr>
+  <td colspan="3" align="left"><code>{@link android.app.Activity#onCreate onCreate()}</code></td>
+  <td>Вызывается при первом создании операции.
+      Здесь необходимо настроить все обычные статические элементы &mdash;
+создать представления, привязать данные и т. д.  Этот метод передает
+объект Bundle, содержащий предыдущее состояние операции (если
+такое состояние было зафиксировано ранее; см. раздел <a href="#actstate">Сохранение состояния
+операции</a>).
+      <p>За ним всегда следует метод {@code onStart()}.</p></td>
+  <td align="center">Нет</td>
+      <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td rowspan="5" style="border-left: none; border-right: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onRestart
+onRestart()}</code></td>
+   <td>Вызывается после остановки операции непосредственно перед ее
+повторным запуском.
+       <p>За ним всегда следует метод {@code onStart()}.</p></td>
+   <td align="center">Нет</td>
+   <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStart onStart()}</code></td>
+   <td>Вызывается непосредственно перед тем, как операция становится видимой для пользователя.
+       <p>За ним следует метод {@code onResume()}, если операция
+переходит на передний план, или метод {@code onStop()}, если она становится скрытой.</p></td>
+    <td align="center">Нет</td>
+    <td align="center">{@code onResume()} <br/>или<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td rowspan="2" style="border-left: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td align="left"><code>{@link android.app.Activity#onResume onResume()}</code></td>
+   <td>Вызывается непосредственно перед тем, как операция
+начинает взаимодействие с пользователем.  На этом этапе операция находится в самом
+верху стека операций, и в нее поступают данные, вводимые пользователем.
+       <p>За ним всегда следует метод {@code onPause()}.</p></td>
+   <td align="center">Нет</td>
+   <td align="center">{@code onPause()}</td>
+</tr>
+
+<tr>
+   <td align="left"><code>{@link android.app.Activity#onPause onPause()}</code></td>
+   <td>Вызывается, когда система собирается возобновить
+другую операцию.  Этот метод обычно используется для записи несохраненных изменений
+в постоянное место хранения данных, остановки анимаций и других элементов, которые могут
+использовать ресурсы ЦП и т. д.  Здесь крайне важна оперативность, поскольку
+следующая операция не будет возобновлена до тех пор, пока она не будет возвращена на передний план.
+       <p>За ним следует либо метод {@code onResume()}, если операция
+возвращается на передний план, либо метод {@code onStop()}, если операция
+становится скрытой для пользователя.</td>
+   <td align="center"><strong style="color:#800000">Да</strong></td>
+   <td align="center">{@code onResume()} <br/>или<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStop onStop()}</code></td>
+   <td>Вызывается в случае, когда операция больше не отображается для пользователя.  Это может
+произойти по причине того, что операция уничтожена, или ввиду возобновления поверх нее другой операции
+(существующей или новой).
+       <p>За ним следует либо метод {@code onRestart()}, если
+операция возобновляет взаимодействие с пользователем, либо метод
+{@code onDestroy()}, если операция переходит в фоновый режим.</p></td>
+   <td align="center"><strong style="color:#800000">Да</strong></td>
+   <td align="center">{@code onRestart()} <br/>или<br/> {@code onDestroy()}</td>
+</tr>
+
+<tr>
+   <td colspan="3" align="left"><code>{@link android.app.Activity#onDestroy
+onDestroy()}</code></td>
+   <td>Вызывается перед тем, как операция будет уничтожена.  Это финальный вызов,
+который получает операция.  Его можно вызвать либо по причине
+завершения операции (вызов метода <code>{@link android.app.Activity#finish
+       finish()}</code>), либо ввиду временного уничтожения системой этого
+экземпляра операции с целью освободить место.  Чтобы различить эти два
+сценария, используется метод <code>{@link
+       android.app.Activity#isFinishing isFinishing()}</code>.</td>
+   <td align="center"><strong style="color:#800000">Да</strong></td>
+   <td align="center"><em>Ничего</em></td>
+</tr>
+</tbody>
+</table>
+
+<p>В столбце «Завершаемый?» указывается, может ли система
+в любое время завершить процесс, содержащий операцию, <em>после возвращения метода</em> без
+выполнения другой строки кода операции.  Для трех методов в этом столбце указано «Да»: ({@link
+android.app.Activity#onPause
+onPause()}, {@link android.app.Activity#onStop onStop()} и {@link android.app.Activity#onDestroy
+onDestroy()}). Поскольку метод {@link android.app.Activity#onPause onPause()} является первым из
+этих трех после создания операции, метод {@link android.app.Activity#onPause onPause()} является
+последним, который гарантированно будет вызван перед тем, как процесс <em>можно будет</em> завершить; если
+системе потребуется срочно восстановить память в случае аварийной ситуации, то методы {@link
+android.app.Activity#onStop onStop()} и {@link android.app.Activity#onDestroy onDestroy()} вызвать
+не удастся. Поэтому следует воспользоваться {@link android.app.Activity#onPause onPause()}, чтобы записать
+критически важные данные (такие как правки пользователя) в хранилище постоянных данных. Однако следует внимательно подходить к выбору информации,
+которую необходимо сохранить во время выполнения метода {@link android.app.Activity#onPause onPause()}, поскольку любая блокировка
+процедур в этом методе может вызвать блокирование перехода к следующей операции и тормозить работу
+пользователя.</p>
+
+<p> Методы, для которых в столбце <b>Завершаемый?</b> указано «Нет», защищают процесс, содержащий операцию
+, от завершения сразу с момента их вызова.  Поэтому завершить операцию
+можно в период между возвратом {@link android.app.Activity#onPause onPause()} и вызовом
+{@link android.app.Activity#onResume onResume()}. Его снова не удастся завершить, пока снова не будет вызван и возвращен
+{@link android.app.Activity#onPause onPause()}. </p>
+
+<p class="note"><strong>Примечание.</strong> Операцию, которую технически невозможно завершить в соответствии с определением
+в таблице 1, по-прежнему может завершить система, однако это может произойти только в
+чрезвычайных ситуациях, когда нет другой возможности. Случаи, когда возможно завершение операции,
+более подробно рассматриваются в статье<a href="{@docRoot}guide/components/processes-and-threads.html">Процессы и
+потоки</a>.</p>
+
+
+<h3 id="SavingActivityState">Сохранение состояния операции</h3>
+
+<p>В обзорных сведениях об <a href="#Lifecycle">управлении жизненным циклом операции</a> кратко упоминается,
+что
+в случае приостановки или полной остановки операции ее состояние сохраняется. Это действительно так, поскольку
+объект {@link android.app.Activity} при этом по-прежнему находится в памяти
+, и вся информация о ее элементах и текущем состоянии по-прежнему активна. Поэтому любые
+вносимые пользователем в операции изменения сохраняются, и когда операция возвращается на передний план
+(когда она «возобновляется»), эти изменения остаются в этом объекте.</p>
+
+<p>Однако когда система уничтожает операцию в целях восстановления памяти, объект {@link
+android.app.Activity} уничтожается, в результате чего системе не удается просто восстановить состояние операции для взаимодействия
+с ней. Вместо этого системе необходимо повторно создать объект {@link android.app.Activity}, если пользователь
+возвращается к нему. Но пользователю неизвестно,
+что система уже уничтожила операцию и создала ее повторно, поэтому, возможно,
+он ожидает, что операция осталась прежней. В этой ситуации можно обеспечить
+сохранение важной информации о состоянии операции путем реализации дополнительного
+метода обратного вызова, который позволяет сохранить информацию о вашей операции: {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}.</p>
+
+<p>Прежде чем сделать операцию доступной для уничтожения, система вызывает метод
+{@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}. Система передает в этот метод объект
+{@link android.os.Bundle}, в котором можно сохранить
+информацию о состоянии операции в виде пар «имя-значение», используя для этого такие методы, как {@link
+android.os.Bundle#putString putString()} и {@link
+android.os.Bundle#putInt putInt()}. Затем, если система завершает процесс
+вашего приложения и пользователь возвращается к вашей операции, система повторно создает операцию и передает объект
+{@link android.os.Bundle} в оба метода: {@link android.app.Activity#onCreate onCreate()} и {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}. С помощью любого из этих
+методов можно извлечь из объекта {@link android.os.Bundle} сохраненную информацию о состоянии операции и восстановить
+ее. Если такая информация отсутствует, то объект {@link
+android.os.Bundle} передается с нулевым значением (это происходит в случае, когда операция
+создается в первый раз).</p>
+
+<img src="{@docRoot}images/fundamentals/restore_instance.png" alt="" />
+<p class="img-caption"><strong>Рисунок 2.</strong> Два способа возврата операции к отображению для пользователя
+в неизмененном состоянии: уничтожение операции с последующим ее повторным созданием, когда операция должна восстановить свое
+ранее сохраненное состояние, или остановка операции и ее последующее восстановление в неизмененном
+состоянии.</p>
+
+<p class="note"><strong>Примечание.</strong> Нет никаких гарантий, что метод {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} будет вызван до того, как ваша
+операция будет уничтожена, поскольку существуют случаи, когда нет необходимости сохранять состояние
+(например, когда пользователь покидает вашу операцию нажатием кнопки <em>Назад</em>, 
+явным образом
+закрывая ее). Если система вызывает метод {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()}, она делает это до вызова метода {@link
+android.app.Activity#onStop onStop()} и, возможно, перед вызовом метода {@link android.app.Activity#onPause
+onPause()}.</p>
+
+<p>Однако, даже если вы ничего не предпринимаете и не реализуете метод {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}, часть состояния операции восстанавливается
+реализацией по умолчанию метода {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} класса {@link android.app.Activity}. В частности, реализация
+по умолчанию вызывает соответствующий метод {@link
+android.view.View#onSaveInstanceState onSaveInstanceState()} для каждого объекта {@link
+android.view.View} в макете, благодаря чему каждое представление может предоставлять ту информацию о себе,
+которую следует сохранить. Почти каждый виджет в платформе Android реализует этот метод необходимым
+для себя способом так, что любые видимые изменения в пользовательском интерфейсе автоматически сохраняются и восстанавливаются при повторном
+создании операции. Например, виджет {@link android.widget.EditText} сохраняет любой текст,
+введенный пользователем, а виджет {@link android.widget.CheckBox} сохраняет информацию о том, был
+ли установлен флажок. От вас требуется лишь указать уникальный идентификатор (с атрибутом <a href="{@docRoot}guide/topics/resources/layout-resource.html#idvalue">{@code android:id}</a>)
+для каждого виджета, состояние которого необходимо сохранить. Если виджету не присвоен идентификатор, то системе
+не удастся сохранить его состояние.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<p>Вы также можете явно отключить сохранение информации о состоянии представления в макете. Для этого задайте для атрибута
+{@link android.R.attr#saveEnabled android:saveEnabled} значение {@code "false"} или вызовите метод
+{@link android.view.View#setSaveEnabled setSaveEnabled()}. Обычно отключать сохранение такой информации не требуется
+, однако это может потребоваться в случаях, когда восстановить состояние пользовательского интерфейса операции необходимо другим образом.</p>
+</div>
+</div>
+
+<p>Несмотря на то что реализация метода {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} по умолчанию позволяет сохранить полезную информацию о
+пользовательском интерфейсе вашей операции, вам по-прежнему может потребоваться переопределить ее для сохранения дополнительной информации.
+Например, может потребоваться сохранить значения элементов, которые изменялись в течение жизненного цикла операции (которые могут
+коррелировать со значениями, восстановленными в пользовательском интерфейсе, однако элементы, содержащие эти значения пользовательского интерфейса, по умолчанию не
+были восстановлены).</p>
+
+<p>Поскольку реализация метода {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} по умолчанию позволяет сохранить состояние пользовательского интерфейса, в случае
+, если вы переопределите метод с целью сохранить дополнительную информацию о состоянии, перед выполнением каких-либо действий вы всегда можете вызвать реализацию
+суперкласса для метода
+{@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}. Точно так же реализацию суперкласса {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} следует вызывать в случае ее переопределения, чтобы реализация по умолчанию могла сохранить
+состояния представлений.</p>
+
+<p class="note"><strong>Примечание.</strong> Поскольку вызов метода {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()} не гарантируется,
+вам следует использовать его только для записи переходного состояния операции (состояние
+пользовательского интерфейса) &mdash; никогда не используйте его для хранения постоянных данных.  Вместо этого используйте метод {@link
+android.app.Activity#onPause onPause()} для сохранения постоянных данных (например, тех, которые следует сохранить в
+базу данных), когда пользователь покидает операцию.</p>
+
+<p>Отличный способ проверить возможность вашего приложения восстанавливать свое состояние — это просто повернуть
+устройство для изменения ориентации экрана. При изменении ориентации экрана система
+уничтожает и повторно создает операцию, чтобы применить альтернативные ресурсы, которые могут быть
+доступны для новой конфигурации экрана. Только по одной этой причине крайне важно, чтобы ваша операция
+могла полностью восстанавливать свое состояние при ее повторном создании, поскольку пользователи постоянно работают с
+приложениями в разных ориентациях экрана.</p>
+
+
+<h3 id="ConfigurationChanges">Обработка изменений в конфигурации</h3>
+
+<p>Некоторые конфигурации устройств могут изменяться в режиме выполнения
+(например, ориентация экрана, доступность клавиатуры и язык). В таких случаях Android повторно создает выполняющуюся операцию
+(система сначала вызывает метод {@link android.app.Activity#onDestroy}, а затем сразу же вызывает метод {@link
+android.app.Activity#onCreate onCreate()}). Такое поведение позволяет
+приложению учитывать новые конфигурации путем автоматической перезагрузки в приложение
+альтернативных ресурсов, которые вы предоставили (например, различные макеты для
+разных ориентаций и экранов разных размеров).</p>
+
+<p>Если операция разработана должным образом и должным образом поддерживает перезапуск после изменения ориентации экрана и
+восстановление своего состояния, как описано выше, ваше приложение можно считать более устойчивым к другим
+непредвиденным событиям в жизненном цикле операции.</p>
+
+<p>Лучший способ обработки такого перезапуска
+— сохранить и восстановить состояние операции с помощью методов {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} и {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} (или {@link
+android.app.Activity#onCreate onCreate()}), как описано в предыдущем разделе.</p>
+
+<p>Дополнительные сведения об изменениях конфигурации, происходящих в режиме выполнения, и о способах их обработки
+представлены в руководстве<a href="{@docRoot}guide/topics/resources/runtime-changes.html">Обработка изменений в режиме
+выполнения</a>.</p>
+
+
+
+<h3 id="CoordinatingActivities">Согласование операций</h3>
+
+ <p>Когда одна операция запускает другую, в жизненных циклах обеих из них происходит переход из одного состояния в другое. Первая операция
+приостанавливается и заврешается (однако она не будет остановлена, если она по-прежнему видима на фоне), а вторая 
+операция создается. В случае, если эти операции обмениваются данным, сохраненными на диске или в другом месте, важно понимать,
+что первая операция не останавливается полностью до тех пор, пока не будет создана вторая операция.
+Наоборот, процесс запуска второй операции накладывается на процесс остановки первой
+операции.</p>
+
+<p>Порядок обратных вызовов жизненного цикла четко определен, в частности, когда в одном и том же процессе находятся две операции
+, и одна из них запускает другую. Ниже представлен порядок выполнения действий в случае, когда операция
+А запускает операцию Б. </p>
+
+<ol>
+<li>Выполняется метод {@link android.app.Activity#onPause onPause()} операции А.</li>
+
+<li>Последовательно выполняются методы {@link android.app.Activity#onCreate onCreate()}, {@link
+android.app.Activity#onStart onStart()} и {@link android.app.Activity#onResume onResume()}
+операции Б. (Теперь для пользователя отображается операция Б.)</li>
+
+<li>Затем, если операция A больше не отображается на экране, выполняется ее метод {@link
+android.app.Activity#onStop onStop()}.</li>
+</ol>
+
+ <p>Такая предсказуемая последовательность выполнения обратных вызовов жизненного цикла позволяет управлять переходом
+информации из одной операции в другую. Например, если после остановки первой операции требуется выполнить запись в базу данных,
+чтобы следующая операция могла считать их, то запись в базу данных следует выполнить
+во время выполнения метода {@link android.app.Activity#onPause onPause()}, а не во время выполнения метода {@link
+android.app.Activity#onStop onStop()}.</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how Android maintains a history of activities and
+enables user multitasking, continue with the <b><a
+href="{@docRoot}guide/components/tasks-and-back-stack.html">Tasks and Back
+Stack</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/ru/guide/components/bound-services.jd b/docs/html-intl/intl/ru/guide/components/bound-services.jd
new file mode 100644
index 0000000..ad690b7
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/bound-services.jd
@@ -0,0 +1,658 @@
+page.title=Привязанные службы
+parent.title=Службы
+parent.link=services.html
+@jd:body
+
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>Содержание документа</h2>
+<ol>
+  <li><a href="#Basics">Основы</a></li>
+  <li><a href="#Creating">Создание привязанной службы</a>
+    <ol>
+      <li><a href="#Binder">Расширение класса Binder</a></li>
+      <li><a href="#Messenger">Использование объекта Messenger</a></li>
+    </ol>
+  </li>
+  <li><a href="#Binding">Привязка к службе</a></li>
+  <li><a href="#Lifecycle">Управление жизненным циклом привязанной службы</a></li>
+</ol>
+
+<h2>Ключевые классы</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.content.ServiceConnection}</li>
+  <li>{@link android.os.IBinder}</li>
+</ol>
+
+<h2>Примеры</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+      RemoteService}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>См. также:</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/services.html">Службы</a></li>
+</ol>
+</div>
+
+
+<p>Привязанная служба предоставляет интерфейс типа клиент-сервер. Привязанная служба позволяет компонентам приложения
+(например, операциям) взаимодействовать со службой, отправлять запросы, получать результаты и даже делать то же самое с другими процессами через
+IPC. Привязанная служба обычно работает, пока другой компонент приложения
+привязан к ней. Она не работает постоянно в фоновом режиме.</p>
+
+<p>В этом документе рассказывается, как создать привязанную службу, включая привязку 
+службы к другим компонентам приложения. Также рекомендуем обратиться к статье <a href="{@docRoot}guide/components/services.html">Службы</a>, чтобы узнать подробнее
+о службах, например, об организации отправки уведомлений от службы, настройке службы 
+на работу на переднем плане и т. д.</p>
+
+
+<h2 id="Basics">Основы</h2>
+
+<p>Привязанная служба представляет собой реализацию класса {@link android.app.Service}, которая позволяет
+другим приложениям привязываться к нему и взаимодействовать с ним. Чтобы обеспечить привязку службы
+, сначала необходимо реализовать метод обратного вызова {@link android.app.Service#onBind onBind()}. Этот
+метод возвращает объект {@link android.os.IBinder}. Он определяет программный интерфейс,
+с помощью которого клиенты могут взаимодействовать со службой.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Привязка к запущенной службе</h3>
+
+<p>Как указано в статье <a href="{@docRoot}guide/components/services.html">Службы</a>,
+можно создать службу, которая одновременно и запущена, и привязана. Это означает, что службу можно запустить
+путем вызова метода {@link android.content.Context#startService startService()}, который позволяет службе
+работать неограниченное время, а также позволяет клиентам привязываться к ней с помощью вызова метода {@link
+android.content.Context#bindService bindService()}.
+  <p>Если разрешить запуск и привязку службы, то после ее запуска
+система <em>не</em> уничтожает ее после отмены всех привязок клиентов. Вместо этого необходимо
+явным образом остановить службу, вызвав метод {@link android.app.Service#stopSelf stopSelf()} или {@link
+android.content.Context#stopService stopService()}.</p>
+
+<p>Несмотря на то, что обычно необходимо реализовывать либо метод {@link android.app.Service#onBind onBind()},
+<em>либо метод</em> {@link android.app.Service#onStartCommand onStartCommand()}, в некоторых случаях требуется
+реализовать оба этих метода. Например, в музыкальном проигрывателе может оказаться полезным разрешить выполнение службы в течение
+неограниченного времени, а также обеспечить ее привязку. Таким образом, операция может запустить службу для воспроизведения музыки
+, которая будет воспроизводиться даже после выхода пользователя из приложения. После того возвращения
+пользователя к приложению операция может отменить привязку к службе, чтобы вернуть управление воспроизведением.</p>
+
+<p>Обязательно ознакомьтесь с разделом, посвященным <a href="#Lifecycle">управлению жизненным циклом привязанной
+службы</a>. В нем представлены подробные сведения о жизненном цикле службы, привязанной к уже
+запущенной службе.</p>
+</div>
+</div>
+
+<p>Для привязки к службе клиент может вызвать метод {@link android.content.Context#bindService
+bindService()}. После привязки он должен предоставить реализацию метода {@link
+android.content.ServiceConnection}, который служит для отслеживания подключения к службе. Метод {@link
+android.content.Context#bindService bindService()} возвращается незамедлительно без значения, однако
+, когда система Android устанавливает подключение 
+клиент-служба, она вызывает метод {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} для {@link
+android.content.ServiceConnection}, чтобы выдать объект {@link android.os.IBinder}, который
+клиент может использовать для взаимодействия со службой.</p>
+
+<p>Одновременно к службе могут подключиться сразу несколько клиентов. Однако система вызывает метод
+{@link android.app.Service#onBind onBind()} вашей службы для получения объекта {@link android.os.IBinder}
+только при первой привязке клиента. После чего система выдает такой же объект {@link android.os.IBinder} для любых
+дополнительных клиентов, которые выполняют привязку, без повторного вызова метода {@link android.app.Service#onBind onBind()}.</p>
+
+<p>Когда отменяется привязка последнего клиента от службы, система уничтожает службу (если только
+служба не была так же запущена методом {@link android.content.Context#startService startService()}).</p>
+
+<p>Самую важную роль в реализации привязанной службы играет определение интерфейса,
+который возвращает ваш метод обратного вызова {@link android.app.Service#onBind onBind()}. Существует несколько
+различных способов определения интерфейса {@link android.os.IBinder} службы. Каждый из них рассматривается в следующем
+разделе.</p>
+
+
+
+<h2 id="Creating">Создание привязанной службы</h2>
+
+<p>При создании службы, обеспечивающей привязку, требуется объект {@link android.os.IBinder},
+который обеспечивает программный интерфейс, с помощью которого клиенты могут взаимодействовать со службой. Существует
+три способа определения такого интерфейса:</p>
+
+<dl>
+  <dt><a href="#Binder">Расширение класса Binder</a></dt>
+  <dd>Если служба является частной и предоставляется в рамках вашего собственного приложения, а также выполняется в том же процессе, что и клиент
+(общий процесс), создавать интерфейс следует путем расширения класса {@link android.os.Binder}
+и возврата его экземпляра из метода
+{@link android.app.Service#onBind onBind()}. Клиент получает объект {@link android.os.Binder},
+после чего он может использовать его для получения прямого доступа к общедоступным методам, имеющимся либо в реализации {@link android.os.Binder},
+либо даже в {@link android.app.Service}.
+  <p>Этот способ является предпочтительным, когда служба просто выполняется в фоновом режиме для
+вашего приложения. Этот способ не подходит для создания интерфейса только тогда, 
+когда ваша служба используется другими приложениями или в отдельных процессах.</dd>
+
+  <dt><a href="#Messenger">Использование объекта Messenger</a></dt>
+  <dd>Если необходимо, чтобы интерфейс службы был доступен для разных процессов, его можно создать
+с помощью объекта {@link android.os.Messenger}. Таким образом, служба
+определяет объект {@link android.os.Handler}, соответствующий различным типам объектов {@link
+android.os.Message}. Этот объект {@link android.os.Handler}
+является основой для объекта {@link android.os.Messenger}, который, в свою очередь, предоставляет клиенту объект {@link android.os.IBinder},
+благодаря чему последний может отправлять команды в службу с помощью объектов {@link
+android.os.Message}. Кроме того, клиент может определить объект {@link android.os.Messenger} для самого
+себя, что позволяет службе возвращать сообщения клиенту.
+  <p>Это самый простой способ организовать взаимодействие процессов, поскольку {@link
+android.os.Messenger} организует очередь всех запросов в рамках одного потока, поэтому вам не нужно делать
+свою службу потокобезопасной.</p>
+  </dd>
+
+  <dt>Использование языка AIDL</dt>
+  <dd>AIDL (Android Interface Definition Language) выполняет всю работу по разделению объектов на
+примитивы, которые операционная система может распознать и распределить по процессам для организации
+взаимодействия между ними (IPC). Предыдущий способ с использованием объекта {@link android.os.Messenger} фактически основан на AIDL, поскольку это его
+базовая структура. Как уже упоминалось выше, объект {@link android.os.Messenger} создает очередь из всех
+запросов клиентов в рамках одного потока, поэтому служба одновременно получает только один запрос. Однако, 
+если необходимо, чтобы служба обрабатывала одновременно сразу несколько запросов, можно использовать AIDL
+напрямую. В таком случае ваша служба должна поддерживать многопоточность и должна быть потокобезопасной.
+  <p>Чтобы использовать AIDL напрямую, необходимо
+создать файл {@code .aidl}, который определяет программный интерфейс. Этот файл используется инструментами SDK Android для
+создания абстрактного класса, который реализует интерфейс и обеспечивает взаимодействие процессов, и который
+в дальнейшем можно расширить в службе.</p>
+  </dd>
+</dl>
+
+  <p class="note"><strong>Примечание.</strong> В большинстве приложений <strong>не следует</strong> использовать AIDL для
+создания и привязки службы, поскольку для этого может потребоваться поддержка многопоточности, что, в свою очередь, может привести
+к более сложной реализации. Поэтому AIDL не подходит для большинства приложений,
+и в этой статье мы не будем рассматривать использование этого способа для вашей службы. Если же вы точно уверены, что
+вам необходимо использовать AIDL напрямую, обратитесь к статье
+<a href="{@docRoot}guide/components/aidl.html">AIDL</a>.</p>
+
+
+
+
+<h3 id="Binder">Расширение класса Binder</h3>
+
+<p>Если ваша служба используется только локальным приложением и не взаимодействует с разными процессами,
+можно реализовать собственный класс {@link android.os.Binder}, с помощью которого клиент получает прямой
+доступ к общедоступным методам в службе.</p>
+
+<p class="note"><strong>Примечание.</strong> Этот вариант подходит только в том случае, если клиент и служба выполняются внутри
+одного приложения и процесса, что является наиболее распространенной ситуацией. Например, расширение класса отлично подойдет для
+музыкального приложения, в котором необходимо привязать операцию к собственной службе приложения, которая
+воспроизводит музыку в фоновом режиме.</p>
+
+<p>Вот как это сделать:</p>
+<ol>
+  <li>Создайте в вашей службе экземпляр класса {@link android.os.Binder} со следующими характеристиками:
+    <ul>
+      <li>экземпляр содержит общедоступные методы, которые может вызывать клиент; либо</li>
+      <li>экземпляр возвращает текущий экземпляр класса {@link android.app.Service}, содержащий
+общедоступные методы, которые может вызывать клиент; или</li>
+      <li>экземпляр возвращает экземпляр другого класса, размещенного в службе, содержащий общедоступные методы,
+которые может вызывать клиент.</li>
+    </ul>
+  <li>Верните этот экземпляр класса {@link android.os.Binder} из метода обратного вызова {@link
+android.app.Service#onBind onBind()}.</li>
+  <li>В клиенте получите класс {@link android.os.Binder} от метода обратного вызова {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} и
+выполните вызовы к привязанной службе с помощью предоставленных методов.</li>
+</ol>
+
+<p class="note"><strong>Примечание.</strong> Служба и клиент должны выполняться в одном и том же приложении
+, поскольку в этом случае клиент может транслировать возвращенный объект и надлежащим образом вызывать его API-интерфейсы. Кроме того, служба
+и клиент должны выполняться в рамках одного и того же процесса, поскольку этот способ не подразумевает какого-либо
+распределения по процессам.</p>
+
+<p>Ниже представлен пример службы, которая предоставляет клиентам доступ к методам посредством реализации класса
+{@link android.os.Binder}:</p>
+
+<pre>
+public class LocalService extends Service {
+    // Binder given to clients
+    private final IBinder mBinder = new LocalBinder();
+    // Random number generator
+    private final Random mGenerator = new Random();
+
+    /**
+     * Class used for the client Binder.  Because we know this service always
+     * runs in the same process as its clients, we don't need to deal with IPC.
+     */
+    public class LocalBinder extends Binder {
+        LocalService getService() {
+            // Return this instance of LocalService so clients can call public methods
+            return LocalService.this;
+        }
+    }
+
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        return mBinder;
+    }
+
+    /** method for clients */
+    public int getRandomNumber() {
+      return mGenerator.nextInt(100);
+    }
+}
+</pre>
+
+<p>Объект {@code LocalBinder} предоставляет для клиентов метод {@code getService()}, чтобы они могли получить
+текущий экземпляр класса {@code LocalService}. Благодаря этому клиенты могут вызывать общедоступные методы в
+службе. Например, клиенты могут вызвать метод {@code getRandomNumber()} из службы.</p>
+
+<p>Ниже представлен пример операции, которая выполняет привязку к классу {@code LocalService} и вызывает метод {@code getRandomNumber()}
+при нажатии кнопки:</p>
+
+<pre>
+public class BindingActivity extends Activity {
+    LocalService mService;
+    boolean mBound = false;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to LocalService
+        Intent intent = new Intent(this, LocalService.class);
+        bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+
+    /** Called when a button is clicked (the button in the layout file attaches to
+      * this method with the android:onClick attribute) */
+    public void onButtonClick(View v) {
+        if (mBound) {
+            // Call a method from the LocalService.
+            // However, if this call were something that might hang, then this request should
+            // occur in a separate thread to avoid slowing down the activity performance.
+            int num = mService.getRandomNumber();
+            Toast.makeText(this, "number: " + num, Toast.LENGTH_SHORT).show();
+        }
+    }
+
+    /** Defines callbacks for service binding, passed to bindService() */
+    private ServiceConnection mConnection = new ServiceConnection() {
+
+        &#64;Override
+        public void onServiceConnected(ComponentName className,
+                IBinder service) {
+            // We've bound to LocalService, cast the IBinder and get LocalService instance
+            LocalBinder binder = (LocalBinder) service;
+            mService = binder.getService();
+            mBound = true;
+        }
+
+        &#64;Override
+        public void onServiceDisconnected(ComponentName arg0) {
+            mBound = false;
+        }
+    };
+}
+</pre>
+
+<p>В примере выше показано, как клиент привязывается к службе с помощью реализации
+{@link android.content.ServiceConnection} и обратного вызова {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()}. В
+следующем разделе представлена более подробная информация об этом процессе привязки к службе.</p>
+
+<p class="note"><strong>Примечание.</strong> В примере выше не выполняется явная отмена привязки к службе,
+однако всем клиентам следует отменять привязку в соответствующие сроки (например, когда операция приостанавливается).</p>
+
+<p>Примеры кода представлены в статьях, посвященных классам <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+LocalService.java}</a> и <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.html">{@code
+LocalServiceActivities.java}</a>, в <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a>.</p>
+
+
+
+
+
+<h3 id="Messenger">Использование объекта Messenger</h3>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h4>Сравнение с AIDL</h4>
+  <p>Когда необходимо организовать взаимодействие между процессами, использование объекта {@link android.os.Messenger} для интерфейса
+намного проще реализации с помощью AIDL, поскольку объект {@link android.os.Messenger} помещает
+в очередь все запросы к службе, тогда как интерфейс, основанный исключительно на AIDL, отправляет службе несколько запросов одновременно,
+для чего требуется поддержка многопоточности.</p>
+  <p>В большинстве приложений служба не должна поддерживать многопоточность, поэтому при использовании объекта {@link
+android.os.Messenger} служба может одновременно обрабатывать один запрос. Если вам важно,
+чтобы служба была многопоточной, для определения интерфейса следует использовать <a href="{@docRoot}guide/components/aidl.html">AIDL</a>.</p>
+</div>
+</div>
+
+<p>Если необходимо, чтобы служба взаимодействовала с удаленными процессами, для предоставления интерфейса службы можно воспользоваться объектом
+{@link android.os.Messenger}. Такой подход
+позволяет организовать взаимодействие между процессами (IPC) без необходимости использовать AIDL.</p>
+
+<p>Вот краткий обзор того, как следует использовать объект {@link android.os.Messenger}:</p>
+
+<ul>
+  <li>Служба реализует объект {@link android.os.Handler}, который получает обратный вызов для каждого
+вызова от клиента.</li>
+  <li>Объект {@link android.os.Handler} используется для создания объекта {@link android.os.Messenger}
+(который является ссылкой на объект {@link android.os.Handler}).</li>
+  <li>Объект {@link android.os.Messenger} создает объект {@link android.os.IBinder}, который служба
+возвращает клиентам из метода {@link android.app.Service#onBind onBind()}.</li>
+  <li>Клиенты используют полученный объект {@link android.os.IBinder} для создания экземпляра объекта {@link android.os.Messenger}
+(который ссылается на объект {@link android.os.Handler} службы), используемого клиентом для отправки объектов
+{@link android.os.Message} в службу.</li>
+  <li>Служба получает каждый объект {@link android.os.Message} в своем объекте {@link
+android.os.Handler} &mdash; в частности, в методе {@link android.os.Handler#handleMessage
+handleMessage()}.</li>
+</ul>
+
+
+<p>Таким образом, для клиента отсутствуют «методы» для отправки вызова службе. Вместо этого
+клиент отправляет «сообщения» (объекты {@link android.os.Message}), которые служба получает в
+своем объекте {@link android.os.Handler}.</p>
+
+<p>Ниже представлен пример службы, которая использует интерфейс {@link android.os.Messenger}:</p>
+
+<pre>
+public class MessengerService extends Service {
+    /** Command to the service to display a message */
+    static final int MSG_SAY_HELLO = 1;
+
+    /**
+     * Handler of incoming messages from clients.
+     */
+    class IncomingHandler extends Handler {
+        &#64;Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_SAY_HELLO:
+                    Toast.makeText(getApplicationContext(), "hello!", Toast.LENGTH_SHORT).show();
+                    break;
+                default:
+                    super.handleMessage(msg);
+            }
+        }
+    }
+
+    /**
+     * Target we publish for clients to send messages to IncomingHandler.
+     */
+    final Messenger mMessenger = new Messenger(new IncomingHandler());
+
+    /**
+     * When binding to the service, we return an interface to our messenger
+     * for sending messages to the service.
+     */
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        Toast.makeText(getApplicationContext(), "binding", Toast.LENGTH_SHORT).show();
+        return mMessenger.getBinder();
+    }
+}
+</pre>
+
+<p>Обратите внимание, что метод {@link android.os.Handler#handleMessage handleMessage()} в объекте
+{@link android.os.Handler} — это место, где служба получает входящие объекты {@link android.os.Message}
+и решает, что делать дальше, руководствуясь элементом {@link android.os.Message#what}.</p>
+
+<p>Клиенту требуется лишь создать объект {@link android.os.Messenger} на основе объекта {@link
+android.os.IBinder}, возвращенного службой, и отправить сообщение с помощью метода {@link
+android.os.Messenger#send send()}. Ниже представлен пример того, как простая операция выполняет привязку к
+службе и отправляет ей сообщение {@code MSG_SAY_HELLO}:</p>
+
+<pre>
+public class ActivityMessenger extends Activity {
+    /** Messenger for communicating with the service. */
+    Messenger mService = null;
+
+    /** Flag indicating whether we have called bind on the service. */
+    boolean mBound;
+
+    /**
+     * Class for interacting with the main interface of the service.
+     */
+    private ServiceConnection mConnection = new ServiceConnection() {
+        public void onServiceConnected(ComponentName className, IBinder service) {
+            // This is called when the connection with the service has been
+            // established, giving us the object we can use to
+            // interact with the service.  We are communicating with the
+            // service using a Messenger, so here we get a client-side
+            // representation of that from the raw IBinder object.
+            mService = new Messenger(service);
+            mBound = true;
+        }
+
+        public void onServiceDisconnected(ComponentName className) {
+            // This is called when the connection with the service has been
+            // unexpectedly disconnected -- that is, its process crashed.
+            mService = null;
+            mBound = false;
+        }
+    };
+
+    public void sayHello(View v) {
+        if (!mBound) return;
+        // Create and send a message to the service, using a supported 'what' value
+        Message msg = Message.obtain(null, MessengerService.MSG_SAY_HELLO, 0, 0);
+        try {
+            mService.send(msg);
+        } catch (RemoteException e) {
+            e.printStackTrace();
+        }
+    }
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to the service
+        bindService(new Intent(this, MessengerService.class), mConnection,
+            Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+}
+</pre>
+
+<p>Обратите внимание, что в этом примере не показано, как служба отвечает клиенту. Если требуется,
+чтобы служба реагировала, необходимо создать объект {@link android.os.Messenger} и в клиенте. Затем,
+когда клиент получает обратный вызов {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()}, она отправляет в службу объект {@link android.os.Message}, который включает объект
+{@link android.os.Messenger} клиента в качестве значения параметра {@link android.os.Message#replyTo}
+метода {@link android.os.Messenger#send send()}.</p>
+
+<p>Пример организации двустороннего обмена сообщениями приведен в примерах кода <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerService.html">{@code
+MessengerService.java}</a> (служба) и <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.html">{@code
+MessengerServiceActivities.java}</a> (клиент).</p>
+
+
+
+
+
+<h2 id="Binding">Привязка к службе</h2>
+
+<p>Для привязки к службе компоненты приложения (клиенты) могут использовать метод
+{@link android.content.Context#bindService bindService()}. После этого система Android
+вызывает метод {@link android.app.Service#onBind
+onBind()} службы, который возвращает объект {@link android.os.IBinder} для взаимодействия со службой.</p>
+
+<p>Привязка выполняется асинхронно. {@link android.content.Context#bindService
+bindService()} возвращается сразу же и <em>не</em> возвращает клиенту объект 
+{@link android.os.IBinder}. Для получения объекта {@link android.os.IBinder} клиенту необходимо создать экземпляр {@link
+android.content.ServiceConnection} и передать его в метод {@link android.content.Context#bindService
+bindService()}. Интерфейс {@link android.content.ServiceConnection} включает метод обратного вызова,
+который система использует для того, чтобы выдать объект {@link android.os.IBinder}.</p>
+
+<p class="note"><strong>Примечание.</strong> Выполнить привязку к службе могут только операции, другие службы и поставщики контента
+&mdash; вы <strong>не можете</strong> самостоятельно выполнить привязку к службе из ресивера.</p>
+
+<p>Поэтому для привязки к службе из клиента необходимо выполнить указанные ниже действия. </p>
+<ol>
+  <li>Реализуйте интерфейс {@link android.content.ServiceConnection}.
+    <p>Ваша реализация должна переопределять два метода обратного вызова:</p>
+    <dl>
+      <dt>{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}</dt>
+        <dd>Система вызывает этот метод, чтобы выдать объект {@link android.os.IBinder}, возвращенный методом
+{@link android.app.Service#onBind onBind()}службы.</dd>
+      <dt>{@link android.content.ServiceConnection#onServiceDisconnected
+onServiceDisconnected()}</dt>
+        <dd>Система Android вызывает этот метод в случае непредвиденной потери
+подключения к службе, например при сбое в работе службы или в случае ее завершения. Этот метод <em>не</em> вызывается, когда клиент
+отменяет привязку.</dd>
+    </dl>
+  </li>
+  <li>Вызовите метод {@link
+android.content.Context#bindService bindService()}, передав в него реализацию интерфейса {@link
+android.content.ServiceConnection}. </li>
+  <li>Когда система вызывает ваш метод обратного вызова {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()}, вы можете приступить к выполнению вызовов к службе с помощью
+методов, определенных интерфейсом.</li>
+  <li>Чтобы отключиться от службы, вызовите метод {@link
+android.content.Context#unbindService unbindService()}.
+    <p>В случае уничтожения клиента выполняется отмена его привязки к службе, однако вам всегда следует отменять
+привязку по завершении взаимодействия со службой или в случае приостановки операции, чтобы служба
+могла завершить свою работу, когда она не используется. (Более подробно подходящее время для привязки и ее отмены
+рассматриваются далее в этом документе).</p>
+  </li>
+</ol>
+
+<p>Ниже представлен пример фрагмента кода для подключения клиента к созданной выше службе путем
+<a href="#Binder">расширения класса Binder</a> — клиенту нужно лишь передать возвращенный объект
+{@link android.os.IBinder} в класс {@code LocalService} и запросить экземпляр {@code
+LocalService}:</p>
+
+<pre>
+LocalService mService;
+private ServiceConnection mConnection = new ServiceConnection() {
+    // Called when the connection with the service is established
+    public void onServiceConnected(ComponentName className, IBinder service) {
+        // Because we have bound to an explicit
+        // service that is running in our own process, we can
+        // cast its IBinder to a concrete class and directly access it.
+        LocalBinder binder = (LocalBinder) service;
+        mService = binder.getService();
+        mBound = true;
+    }
+
+    // Called when the connection with the service disconnects unexpectedly
+    public void onServiceDisconnected(ComponentName className) {
+        Log.e(TAG, "onServiceDisconnected");
+        mBound = false;
+    }
+};
+</pre>
+
+<p>С помощью этого интерфейса {@link android.content.ServiceConnection} клиент может выполнить привязку к службе, передав ее в
+метод {@link android.content.Context#bindService bindService()}. Например:</p>
+
+<pre>
+Intent intent = new Intent(this, LocalService.class);
+bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+</pre>
+
+<ul>
+  <li>Первый параметр в методе {@link android.content.Context#bindService bindService()} представляет собой объект
+{@link android.content.Intent}, который явным образом именует службу для привязки (хотя переход может быть
+и неявным).</li>
+<li>Второй параметр — это объект {@link android.content.ServiceConnection}.</li>
+<li>Третий параметр представляет собой флаг, указывающий параметры привязки. Обычно им является {@link
+android.content.Context#BIND_AUTO_CREATE}, создающий службу, если она уже не выполняется.
+Другие возможные значения: {@link android.content.Context#BIND_DEBUG_UNBIND}
+и {@link android.content.Context#BIND_NOT_FOREGROUND} или {@code 0}, если значение отсутствует.</li>
+</ul>
+
+
+<h3>Дополнительные примечания</h3>
+
+<p>Ниже представлены некоторые важные замечания о привязке к службе.</p>
+<ul>
+  <li>Всегда отлавливайте исключения {@link android.os.DeadObjectException}, которые выдаются
+при возникновении сбоя подключения. Это единственное исключение, которое выдается удаленными методами.</li>
+  <li>Для объектов всегда учитываются ссылки на них в процессах. </li>
+  <li>Обычно необходимо связать привязку и ее отмену во время
+сопоставления моментов подключения и отключения в жизненном цикле клиента. Например:
+    <ul>
+      <li>Если взаимодействие со службой требуется лишь в то время, когда операция отображается, привязку
+необходимо выполнить во время метода {@link android.app.Activity#onStart onStart()}, а отмену привязки — во время выполнения метода {@link
+android.app.Activity#onStop onStop()}.</li>
+      <li>Если необходимо, чтобы операция получала ответы даже в случае ее остановки во время работы в фоновом режиме,
+то привязку можно выполнить во время {@link android.app.Activity#onCreate onCreate()}, а отмену привязки
+ — во время выполнения {@link android.app.Activity#onDestroy onDestroy()}. Однако следует помнить, что такой способ подразумевает,
+что вашей операции необходимо использовать службу все время, пока она выполняется (даже если она выполняется в фоновом режиме). Поэтому,
+если служба находится в другом процессе, вы тем самым утяжеляете процесс, а это
+повышает вероятность того, что система завершит его.</li>
+    </ul>
+    <p class="note"><strong>Примечание.</strong> Обычно <strong>не</strong> следует выполнять привязку или отменять ее
+во время выполнения методов {@link android.app.Activity#onResume onResume()} и {@link
+android.app.Activity#onPause onPause()} вашей операции, поскольку такие обратные вызовы происходят при каждом переходе из одного состояния в другое,
+ а обработка данных, выполняемая при таких переходах, должна быть минимальной. Кроме того, если к одной и той же
+службе привязано несколько операций в вашем приложении, и имеется переход между 
+двумя этими операциями, служба может быть уничтожена и создана повторно, поскольку текущая операция выполняет отмену привязки
+(во время приостановки) до того, как следующая служба выполнит привязку (во время возобновления). (Подробные сведения о согласовании жизненных циклов операций при таких переходах
+представлены в статье
+<a href="{@docRoot}guide/components/activities.html#CoordinatingActivities">Операции</a>.)</p>
+</ul>
+
+<p>Пример кода, в котором показан порядок привязки к службе, см. в статье, посвященной классу <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+RemoteService.java}</a>, в <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a>.</p>
+
+
+
+
+
+<h2 id="Lifecycle">Управление жизненным циклом привязанной службы</h2>
+
+<p>Когда выполняется отмена привязки службы ко всем клиентам, система Android уничтожает такую службу (если она не была запущена
+вместе с {@link android.app.Service#onStartCommand onStartCommand()}). В таком случае вам не нужно
+управлять жизненным циклом своей службы, если она исключительно привязанная служба
+&mdash; система Android управляет ей за вас на основании привязки службы к любым другим клиентам.</p>
+
+<p>Однако, если вы решите реализовать метод обратного вызова {@link android.app.Service#onStartCommand
+onStartCommand()}, вам необходимо явным образом остановить службу, поскольку в
+этом случае она считается <em>запущенной</em>. В таком случае служба выполняется до тех пор, пока
+сама не остановит свою работу с помощью метода {@link android.app.Service#stopSelf()} или до тех пор, пока другой компонент не вызовет метод {@link
+android.content.Context#stopService stopService()}, независимо от привязки службы к каким-либо
+клиентам.</p>
+
+<p>Кроме того, если ваша служба запущена и принимает привязку, то при вызове системой
+вашего метода {@link android.app.Service#onUnbind onUnbind()} вы также можете вернуть
+{@code true}, если желаете получить вызов к {@link android.app.Service#onRebind
+onRebind()} при следующей привязке к службе (вместо получения вызова к методу {@link
+android.app.Service#onBind onBind()}). Метод {@link android.app.Service#onRebind
+onRebind()} возвращает значение void, однако клиент по-прежнему получает объект {@link android.os.IBinder} в своем методе обратного вызова
+{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}.
+На рисунке 1 ниже иллюстрируется логика жизненного цикла такого рода.</p>
+
+
+<img src="{@docRoot}images/fundamentals/service_binding_tree_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Рисунок 1.</strong> Жизненный цикл запущенной службы,
+для которой выполняется привязка.</p>
+
+
+<p>Дополнительные сведения о жизненном цикле уже запущенной службы представлены в статье <a href="{@docRoot}guide/components/services.html#Lifecycle">Службы</a>.</p>
+
+
+
+
diff --git a/docs/html-intl/intl/ru/guide/components/fragments.jd b/docs/html-intl/intl/ru/guide/components/fragments.jd
new file mode 100644
index 0000000..b13fcc3
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/fragments.jd
@@ -0,0 +1,812 @@
+page.title=Фрагменты
+parent.title=Операции
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Содержание документа</h2>
+  <ol>
+    <li><a href="#Design">Философия проектирования</a></li>
+    <li><a href="#Creating">Создание фрагмента</a>
+      <ol>
+        <li><a href="#UI">Добавление пользовательского интерфейса</a></li>
+        <li><a href="#Adding">Добавление фрагмента в операцию</a></li>
+      </ol>
+    </li>
+    <li><a href="#Managing">Управление фрагментами</a></li>
+    <li><a href="#Transactions">Выполнение транзакций с фрагментами</a></li>
+    <li><a href="#CommunicatingWithActivity">Взаимодействие с операцией</a>
+      <ol>
+        <li><a href="#EventCallbacks">Создание обратного вызова события для операции</a></li>
+        <li><a href="#ActionBar">Добавление элементов в строку действий</a></li>
+      </ol>
+    </li>
+    <li><a href="#Lifecycle">Управление жизненным циклом фрагмента</a>
+      <ol>
+        <li><a href="#CoordinatingWithActivity">Согласование с жизненным циклом операции</a></li>
+      </ol>
+    </li>
+    <li><a href="#Example">Пример:</a></li>
+  </ol>
+
+  <h2>Ключевые классы</h2>
+  <ol>
+    <li>{@link android.app.Fragment}</li>
+    <li>{@link android.app.FragmentManager}</li>
+    <li>{@link android.app.FragmentTransaction}</li>
+  </ol>
+  
+  <h2>См. также:</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/fragments/index.html">Создание динамического интерфейса пользователя с использованием фрагментов</a></li>
+    <li><a href="{@docRoot}guide/practices/tablets-and-handsets.html">Поддержка планшетов
+и смартфонов</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Фрагмент (класс {@link android.app.Fragment}) представляет поведение или часть пользовательского интерфейса в операции
+(класс {@link android.app.Activity}). Разработчик может объединить несколько фрагментов в одну операцию для построения
+многопанельного пользовательского интерфейса и повторного использования фрагмента в нескольких операциях. Фрагмент можно рассматривать как
+ модульную часть операции. Такая часть имеет свой жизненный цикл и самостоятельно обрабатывает события ввода. Кроме того,
+ее можно добавить или удалить непосредственно во время выполнения операции. Это нечто вроде вложенной операции, которую
+можно многократно использовать в различных операциях.</p>
+
+<p>Фрагмент всегда должен быть встроен в операцию, и на его жизненный цикл напрямую
+влияет жизненный цикл операции. Например, когда операция приостановлена, в том же состоянии находятся и все
+фрагменты внутри нее, а когда операция уничтожается, уничтожаются и все фрагменты. Однако пока
+операция выполняется (это соответствует состоянию <em>возобновлена</em> <a href="{@docRoot}guide/components/activities.html#Lifecycle">жизненного цикла</a>), можно 
+манипулировать каждым фрагментом независимо, например добавлять или удалять их. Когда разработчик выполняет такие
+транзакции с фрагментами, он может также добавить их в стек переходов назад, которым управляет
+операция. Каждый элемент стека переходов назад в операции является записью 
+ выполненной транзакции с фрагментом. Стек переходов назад позволяет пользователю обратить транзакцию с фрагментом (выполнить навигацию в обратном направлении),
+нажимая кнопку <em>Назад</em>.</p>
+
+<p>Когда фрагмент добавлен как часть макета операции, он находится в объекте {@link
+android.view.ViewGroup} внутри иерархии представлений операции и определяет собственный
+макет представлений.
+Разработчик может вставить фрагмент в макет операции двумя способами. Для этого следует объявить фрагмент в
+файле макета операции как элемент {@code &lt;fragment&gt;} или добавить его в
+существующий объект{@link android.view.ViewGroup} в коде приложения. Впрочем, фрагмент не обязан быть частью
+макета операции. Можно использовать фрагмент без интерфейса в качестве невидимого рабочего потока
+операции.</p>
+
+<p>В этом документе показано, как построить приложение, использующее фрагменты. В частности, обсуждается,
+как фрагменты могут поддерживать свое состояние, когда они добавляются в стек переходов назад операции, использовать
+события совместно с операцией и другими фрагментами внутри нее, выводить данные в
+строку действий операции и т. д.</p>
+
+
+<h2 id="Design">Философия проектирования</h2>
+
+<p>Фрагменты впервые появились в Android версии 3.0 (API уровня 11), главным образом, для обеспечения
+большей динамичности и гибкости пользовательских интерфейсов на больших экранах, например, у планшетов. Поскольку экраны
+планшетов гораздо больше, чем у смартфонов, они предоставляют больше возможностей для объединения и
+перестановки компонентов пользовательского интерфейса. Фрагменты позволяют делать это, избавляя разработчика от необходимости управлять
+сложными изменениями в иерархии представлений. Разбивая макет операции на фрагменты, разработчик получает возможность
+модифицировать внешний вид операции в ходе выполнения и сохранять эти изменения в стеке переходов назад,
+которым управляет операция.</p>
+
+<p>Например, новостное приложение может использовать один фрагмент для показа списка статей слева,
+а другой&mdash;для отображения статьи справа. Оба фрагмента отображаются за
+одну операцию рядом друг с другом, и каждый имеет собственный набор методов обратного вызова жизненного цикла и управляет
+собственными событиями пользовательского ввода. Таким образом, вместо применения одной операции для выбора статьи, а другой
+ — для чтения статей, пользователь может выбрать статью и читать ее в рамках одной
+операции, как на планшете, изображенном на рисунке 1.</p>
+
+<p>Следует разрабатывать каждый фрагмент как модульный и повторно используемый компонент операции.  Поскольку
+ каждый фрагмент определяет собственный макет и собственное поведение со своими обратными вызовами жизненного цикла, разработчик может 
+включить один фрагмент в несколько операций. Поэтому он должен предусмотреть повторное использование фрагмента и не допускать,
+чтобы один фрагмент непосредственно манипулировал другим. Это особенно важно, потому что модульность фрагментов
+позволяет изменять их сочетания в соответствии с различными размерами экранов. Если
+приложение должно работать и на планшетах, и на смартфонах, можно повторно использовать фрагменты в различных
+конфигурациях макета, чтобы оптимизировать взаимодействие с пользователем в зависимости от доступного размера экрана. Например,
+на смартфоне может возникнуть необходимость в разделении фрагментов для предоставления однопанельного пользовательского интерфейса, если
+ разработчику не удается поместить более одного фрагмента в одну операцию.</p>
+
+<img src="{@docRoot}images/fundamentals/fragments.png" alt="" />
+<p class="img-caption"><strong>Рисунок 1.</strong> Пример того, как два модуля пользовательского интерфейса, определенные
+фрагментами, могут быть объединены внутри одной операции для работы на планшетах, но разделены на
+смартфонах.</p>
+
+<p>Вернемся к примеру с новостным приложением. Оно может иметь
+два фрагмента, встроенных в <em>Операцию А</em>, когда выполняется на устройстве планшетного формата. В то же время на
+экране смартфона недостаточно места для обоих фрагментов, и поэтому <em>Операция А</em> включает в себя
+только фрагмент со списком статей. Когда пользователь выбирает статью, запускается
+<em>Операция В</em>, содержащая второй фрагмент для чтения статьи. Таким образом, приложение
+поддерживает как планшеты, так и смартфоны благодаря повторному использованию фрагментов в различных сочетаниях, как показано на
+рисунке 1.</p>
+
+<p>Подробные сведения относительно разработки приложения с различными сочетаниями фрагментов для
+различных конфигураций экрана приводятся в руководстве <a href="{@docRoot}guide/practices/tablets-and-handsets.html">Поддержка планшетов и смартфонов</a></p>
+
+
+
+<h2 id="Creating">Создание фрагмента</h2>
+
+<div class="figure" style="width:327px">
+<img src="{@docRoot}images/fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Рисунок 2.</strong> Жизненный цикл фрагмента (во время
+выполнения операции)</p>
+</div>
+
+<p>Для создания фрагмента необходимо создать подкласс класса {@link android.app.Fragment} (или его существующего
+подкласса). Класс {@link android.app.Fragment} имеет код, во многом схожий с
+кодом {@link android.app.Activity}. Он содержит методы обратного вызова, аналогичные методам операции, такие
+как {@link android.app.Fragment#onCreate onCreate()}, {@link android.app.Fragment#onStart onStart()},
+{@link android.app.Fragment#onPause onPause()} и {@link android.app.Fragment#onStop onStop()}. На практике,
+если требуется преобразовать существующее приложение Android так, чтобы в нем использовались фрагменты, достаточно просто переместить
+код из методов обратного вызова операции в соответствующие методы обратного вызова
+фрагмента.</p>
+
+<p>Как правило, необходимо реализовать следующие методы жизненного цикла:</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onCreate onCreate()}</dt>
+  <dd>Система вызывает этот метод, когда создает фрагмент. В своей реализации разработчик должен
+инициализировать ключевые компоненты фрагмента, которые требуется сохранить, когда фрагмент находится в состоянии
+паузы или возобновлен после остановки.</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+  <dd>Система вызывает этот метод при первом отображении пользовательского интерфейса фрагмента
+на дисплее. Для прорисовки пользовательского интерфейса фрагмента следует возвратить из этого метода объект {@link android.view.View},
+который является корневым в макете фрагмента. Если фрагмент не имеет пользовательского интерфейса, можно
+возвратить null.</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>Система вызывает этот метод как первое указание того, что пользователь покидает
+фрагмент (это не всегда означает уничтожение фрагмента). Обычно именно в этот момент
+необходимо фиксировать все изменения, которые должны быть сохранены за рамками текущего сеанса работы пользователя (поскольку
+пользователь может не вернуться назад).</dd>
+</dl>
+
+<p>В большинстве приложений для каждого фрагмента должны быть реализованы, как минимум, эти три метода. Однако существуют и
+другие методы обратного вызова, которые следует использовать для управления различными этапами жизненного цикла
+фрагмента. Все методы обратного вызова жизненного цикла подробно обсуждаются в разделе
+ <a href="#Lifecycle">Управление жизненным циклом фрагмента</a>.</p>
+
+
+<p>Существует также ряд подклассов, которые, возможно, потребуется расширить вместо использования базового класса {@link
+android.app.Fragment}:</p>
+
+<dl>
+  <dt>{@link android.app.DialogFragment}</dt>
+  <dd>Отображение перемещаемого диалогового окна. Использование этого класса для создания диалогового окна является хорошей альтернативой
+ вспомогательным методам диалогового окна в классе{@link android.app.Activity}. Дело в том, что он дает возможность
+вставить диалоговое окно фрагмента в управляемый операцией стек переходов назад для фрагментов,
+что позволяет пользователю вернуться к закрытому фрагменту.</dd>
+
+  <dt>{@link android.app.ListFragment}</dt>
+  <dd>Отображение списка элементов, управляемых адаптером (например, {@link
+android.widget.SimpleCursorAdapter}), аналогично классу {@link android.app.ListActivity}. Этот класс предоставляет
+несколько методов для управления списком представлений, например, метод обратного вызова {@link
+android.app.ListFragment#onListItemClick(ListView,View,int,long) onListItemClick()} для
+обработки нажатий.</dd>
+
+  <dt>{@link android.preference.PreferenceFragment}</dt>
+  <dd>Отображение иерархии объектов {@link android.preference.Preference} в виде списка, аналогично классу
+{@link android.preference.PreferenceActivity}. Этот класс полезен, когда в приложении создается
+операция «Настройки».</dd>
+</dl>
+
+
+<h3 id="UI">Добавление пользовательского интерфейса</h3>
+
+<p>Фрагмент обычно используется как часть пользовательского интерфейса операции, при этом он добавляет в операцию
+свой макет.</p>
+
+<p>Чтобы создать макет для фрагмента, разработчик должен реализовать метод обратного вызова {@link
+android.app.Fragment#onCreateView onCreateView()}, который система Android вызывает,
+когда для фрагмента наступает время отобразить свой макет. Реализация этого метода должна возвращать объект
+{@link android.view.View}, который является корневым в макете фрагмента. </p>
+
+<p class="note"><strong>Примечание.</strong> Если фрагмент является подклассом класса {@link
+android.app.ListFragment}, реализация по умолчанию возвращает класс {@link android.widget.ListView} из метода
+ {@link android.app.Fragment#onCreateView onCreateView()}, так что реализовывать его нет необходиомости.</p>
+
+<p>Чтобы возвратить макет из метода {@link
+android.app.Fragment#onCreateView onCreateView()}, можно выполнить его раздувание из <a href="{@docRoot}guide/topics/resources/layout-resource.html">ресурса макета</a>, определенного в XML-файле. Для
+этой цели метод {@link android.app.Fragment#onCreateView onCreateView()} предоставляет объект
+{@link android.view.LayoutInflater}.</p>
+
+<p>Например, код подкласса класса {@link android.app.Fragment}, загружающий макет из файла
+{@code example_fragment.xml}, может выглядеть так:</p>
+
+<pre>
+public static class ExampleFragment extends Fragment {
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+                             Bundle savedInstanceState) {
+        // Inflate the layout for this fragment
+        return inflater.inflate(R.layout.example_fragment, container, false);
+    }
+}
+</pre>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Создание макета</h3>
+  <p>В приведенном коде конструкция {@code R.layout.example_fragment} является ссылкой на ресурс макета
+по имени {@code example_fragment.xml}, хранящийся в ресурсах приложения. Подробные сведения о
+создании макета в XML см. в статье <a href="{@docRoot}guide/topics/ui/index.html">Пользовательский интерфейс</a>.
+</p>
+</div>
+</div>
+
+<p>Параметр {@code container}, передаваемый методу {@link android.app.Fragment#onCreateView
+onCreateView()}, является родительским классом {@link android.view.ViewGroup} (из макета операции), в который
+будет вставлен макет
+фрагмента. Параметр {@code savedInstanceState} является классом {@link android.os.Bundle}, который
+предоставляет данные о предыдущем экземпляре фрагмента во время возобновления фрагмента
+(восстановление состояния подробно обсуждается в разделе <a href="#Lifecycle">Управление
+жизненным циклом фрагмента</a>).</p>
+
+<p>Метод {@link android.view.LayoutInflater#inflate(int,ViewGroup,boolean) inflate()} принимает
+три аргумента:</p>
+<ul>
+  <li>Идентификатор ресурса макета, раздувание которого следует выполнить.</li>
+  <li>Объект класса {@link android.view.ViewGroup}, который должен стать родительским для макета после раздувания. Передача параметра {@code
+container} необходима для того, чтобы система смогла применить параметры макета к корневому представлению
+раздутого макета, определяемому родительским представлением, в которое направляется макет.</li>
+  <li>Логическое значение, показывающее, следует ли прикрепить макет к объекту {@link
+android.view.ViewGroup} (второй параметр) во время раздувания. (В данном случае это
+false, потому что система уже вставляет раздутый макет в объект {@code
+container}, ипередача значения true создала бы лишнюю группу представления в окончательном макете).</li>
+</ul>
+
+<p>Мы увидели, как создавать фрагмент, предоставляющий макет. Теперь необходимо добавить
+фрагмент в операцию.</p>
+
+
+
+<h3 id="Adding">Добавление фрагмента в операцию</h3>
+
+<p>Как правило, фрагмент добавляет часть пользовательского интерфейса в операцию, и этот интерфейс встраивается
+в общую иерархию представлений операции. Разработчик может добавить фрагмент в макет операции двумя
+способами:</p>
+
+<ul>
+  <li><b>объявив фрагмент в файле макета операции.</b>
+<p>В этом случае можно
+указать свойства макета для фрагмента, как будто он является представлением. Например, файл макета операции
+с двумя фрагментами может выглядеть следующим образом:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
+    &lt;fragment android:name="com.example.news.ArticleListFragment"
+            android:id="@+id/list"
+            android:layout_weight="1"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+    &lt;fragment android:name="com.example.news.ArticleReaderFragment"
+            android:id="@+id/viewer"
+            android:layout_weight="2"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+&lt;/LinearLayout&gt;
+</pre>
+  <p>Атрибут {@code android:name} в элементе {@code &lt;fragment&gt;} определяет класс {@link
+android.app.Fragment}, экземпляр которого создается в макете.</p>
+
+<p>Когда система создает этот макет операции, она создает экземпляр каждого фрагмента, определенного в макете,
+и для каждого вызывает метод {@link android.app.Fragment#onCreateView onCreateView()},
+чтобы получить макет каждого фрагмента. Система вставляет объект {@link android.view.View}, возвращенный
+ фрагментом, непосредственно вместо элемента {@code &lt;fragment&gt;}.</p>
+
+<div class="note">
+  <p><strong>Примечание.</strong> Каждый фрагмент должен иметь уникальный идентификатор, который
+система сможет использовать для восстановления фрагмента в случае перезапуска операции. (Что касается разработчика, он может использовать этот идентификатор для
+захвата фрагмента с целью выполнения транзакций с ним, например, чтобы удалить его). Предоставить
+идентификатор фрагменту можно тремя способами:</p>
+  <ul>
+    <li>указать атрибут {@code android:id} с уникальным идентификатором;</li>
+    <li>указать атрибут {@code android:tag} с уникальной строкой;</li>
+    <li>ничего не предпринимать, чтобы система использовала идентификатор контейнерного
+представления.</li>
+  </ul>
+</div>
+  </li>
+
+  <li><b>или программным образом, добавив фрагмент в существующий объект {@link android.view.ViewGroup}.</b>
+<p>В любой момент выполнения операции разработчик может добавить фрагменты в ее макет.  Для
+этого достаточно указать объект {@link
+android.view.ViewGroup}, в котором следует разместить фрагмент.</p>
+  <p>Для выполнения транзакций с фрагментами внутри операции (таких как добавление, удаление или замена
+фрагмента) необходимо использовать API-интерфейсы из {@link android.app.FragmentTransaction}. Экземпляр
+ класса {@link android.app.FragmentTransaction} можно получить от объекта {@link android.app.Activity} следующим образом:</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()}
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>После этого можно добавить фрагмент методом {@link
+android.app.FragmentTransaction#add(int,Fragment) add()}, указав добавляемый фрагмент и
+представление, в которое он должен быть добавлен. Например:</p>
+
+<pre>
+ExampleFragment fragment = new ExampleFragment();
+fragmentTransaction.add(R.id.fragment_container, fragment);
+fragmentTransaction.commit();
+</pre>
+
+  <p>Первый аргумент, передаваемый методу {@link android.app.FragmentTransaction#add(int,Fragment) add()},
+представляет собой контейнерный объект {@link android.view.ViewGroup} для фрагмента, указанный при помощи
+идентификатора ресурса. Второй параметр — это фрагмент, который нужно добавить.</p>
+  <p>Выполнив изменения с помощью 
+{@link android.app.FragmentTransaction}, необходимо
+вызвать метод {@link android.app.FragmentTransaction#commit}, чтобы они вступили в силу.</p>
+  </li>
+</ul>
+
+
+<h4 id="AddingWithoutUI">Добавление фрагмента, не имеющего пользовательского интерфейса</h4>
+
+<p>Пример, приведенный выше, демонстрирует, как добавлять в операцию фрагмент с предоставлением пользовательского интерфейса. Однако
+можно использовать фрагмент и для реализации фонового поведения операции без какого-либо дополнительного
+пользовательского интерфейса.</p>
+
+<p>Чтобы добавить фрагмент без пользовательского интерфейса, добавьте фрагмент из операции, используя метод {@link
+android.app.FragmentTransaction#add(Fragment,String)} (передав ему уникальный строковый «тег» для
+фрагмента вместо идентификатора представления). Фрагмент будет добавлен, но, поскольку он не связан
+с представлением в макете операции, он не будет принимать вызов метода {@link
+android.app.Fragment#onCreateView onCreateView()}. Поэтому в реализации этого метода нет необходимости.</p>
+
+<p>Передача строкового тега свойственна не только фрагментам без пользовательского интерфейса, поэтому можно
+передавать строковые теги и фрагментам, имеющим пользовательский интерфейс. Однако, если у фрагмента нет 
+ пользовательского интерфейса, то строковый тег является единственным способом его идентификации. Если впоследствии потребуется получить фрагмент от
+операции, нужно будет вызвать метод {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}.</p>
+
+<p>Пример операции, использующей фрагмент в качестве фонового потока, без пользовательского интерфейса, приведен в образце кода {@code
+FragmentRetainInstance.java}, входящем в число образцов в SDK (и доступном при помощи 
+Android SDK Manager). Путь к нему в системе — 
+<code>&lt;sdk_root&gt;/APIDemos/app/src/main/java/com/example/android/apis/app/FragmentRetainInstance.java</code>.</p>
+
+
+
+<h2 id="Managing">Управление фрагментами</h2>
+
+<p>Для управления фрагментами в операции нужен класс {@link android.app.FragmentManager}. Чтобы получить его,
+ следует вызвать метод {@link android.app.Activity#getFragmentManager()} из кода операции.</p>
+
+<p>Ниже указаны действия, которые позволяет выполнить{@link android.app.FragmentManager}:</p>
+
+<ul>
+  <li>получать фрагменты, имеющиеся в операции, с помощью метода {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} (для фрагментов, предоставляющих пользовательский интерфейс в
+ макете операции) или {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()} (как для фрагментов, имеющих пользовательский интерфейс, так и для фрагментов без него);</li> 
+  <li>снимать фрагменты со стека переходов назад методом {@link
+android.app.FragmentManager#popBackStack()} (имитируя нажатие кнопки <em>Назад</em> пользователем);</li>
+  <li>регистрировать процесс-слушатель изменений в стеке переходов назад при помощи метода {@link
+android.app.FragmentManager#addOnBackStackChangedListener addOnBackStackChangedListener()}.</li>
+</ul>
+
+<p>Дополнительные сведения об этих и других методах приводятся в документации по классу {@link
+android.app.FragmentManager}.</p>
+
+<p>Как было показано в предыдущем разделе, можно использовать класс {@link android.app.FragmentManager}
+для открытия {@link android.app.FragmentTransaction}, что позволяет выполнять транзакции с фрагментами, например,
+добавление и удаление.</p>
+
+
+<h2 id="Transactions">Выполнение транзакций с фрагментами</h2>
+
+<p>Большим достоинством использования фрагментов в операции является возможность добавлять, удалять, заменять их и
+выполнять другие действия с ними в ответ на действия пользователя. Любой набор изменений,
+вносимых в операцию, называется транзакцией. Ее можно выполнить при помощи API-интерфейсов в {@link
+android.app.FragmentTransaction}. Каждую транзакцию можно сохранить в стеке переходов назад,
+которым управляет операция. Это позволит пользователю перемещаться назад по изменениям во фрагментах (аналогично перемещению
+назад по операциям).</p>
+
+<p>Экземпляр класса {@link android.app.FragmentTransaction} можно получить от {@link
+android.app.FragmentManager}, например, так:</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()};
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>Каждая транзакция является набором изменений, выполняемых одновременно. Разработчик может указать
+все изменения, которые ему нужно выполнить в данной транзакции, вызывая методы {@link
+android.app.FragmentTransaction#add add()}, {@link android.app.FragmentTransaction#remove remove()}
+и {@link android.app.FragmentTransaction#replace replace()}. Затем, чтобы применить транзакцию
+к операции, следует вызвать метод {@link android.app.FragmentTransaction#commit()}.</p>
+</dl>
+
+<p>Впрочем, до вызова метода{@link
+android.app.FragmentTransaction#commit()} у разработчика может возникнуть необходимость вызвать метод {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}, чтобы добавить транзакцию
+в стек переходов назад по транзакциям фрагмента. Этим стеком переходов назад управляет операция, что позволяет
+пользователю вернуться к предыдущему состоянию фрагмента, нажав кнопку <em>Назад</em>.</p>
+
+<p>Например, следующий код демонстрирует, как можно заменить один фрагмент другим, сохранив при этом предыдущее
+состояние в стеке переходов назад:</p>
+
+<pre>
+// Create new fragment and transaction
+Fragment newFragment = new ExampleFragment();
+FragmentTransaction transaction = getFragmentManager().beginTransaction();
+
+// Replace whatever is in the fragment_container view with this fragment,
+// and add the transaction to the back stack
+transaction.replace(R.id.fragment_container, newFragment);
+transaction.addToBackStack(null);
+
+// Commit the transaction
+transaction.commit();
+</pre>
+
+<p>В этом коде объект {@code newFragment} замещает фрагмент (если таковой имеется), находящийся в
+контейнере макета, на который указывает идентификатор {@code R.id.fragment_container}. В результате вызова метода {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} транзакция замены
+сохраняется в стеке переходов назад, чтобы пользователь мог обратить транзакцию и вернуть
+предыдущий фрагмент, нажав кнопку <em>Назад</em>.</p>
+
+<p>Если в транзакцию добавить несколько изменений (например, еще раз вызвать {@link
+android.app.FragmentTransaction#add add()} или {@link android.app.FragmentTransaction#remove
+remove()}), а затем вызвать {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}, все изменения, примененные до вызова
+метода {@link android.app.FragmentTransaction#commit commit()}, будут добавлены в стек
+ переходов назад как одна транзакция, и кнопка<em>Назад</em> обратит их все вместе.</p>
+
+<p>Порядок добавления изменений к объекту {@link android.app.FragmentTransaction} не играет роли
+ за следующими исключениями:</p>
+<ul>
+  <li>метод {@link android.app.FragmentTransaction#commit()} должен быть вызван в последнюю очередь;</li>
+  <li>если в один контейнер добавляется несколько фрагментов, то порядок их
+добавления определяет порядок, в котором они появляются в иерархии видов.</li>
+</ul>
+
+<p>Если при выполнении транзакции, удаляющей фрагмент, не вызвать метод {@link android.app.FragmentTransaction#addToBackStack(String)
+addToBackStack()}, при фиксации транзакции фрагмент
+уничтожается, и пользователь теряет возможность вернуться к нему. В то же время, если
+вызвать {@link android.app.FragmentTransaction#addToBackStack(String) addToBackStack()} при
+удалении фрагмента, фрагмент перейдет в состояние <em>остановки</em> и будет возобновлен, если пользователь вернется
+к нему.</p>
+
+<p class="note"><strong>Совет.</strong> К каждой транзакции с фрагментом можно применить анимацию
+перехода, вызвав {@link android.app.FragmentTransaction#setTransition setTransition()} до
+фиксации.</p>
+
+<p>Вызов метода {@link android.app.FragmentTransaction#commit()} не приводит к немедленному выполнению
+ транзакции. Метод запланирует ее выполнение в потоке пользовательского интерфейса операции (в «главном» потоке), как только
+у потока появится возможность для этого. Впрочем, при необходимости можно вызвать {@link
+android.app.FragmentManager#executePendingTransactions()} из потока пользовательского интерфейса, чтобы 
+транзакции, запланированные методом {@link android.app.FragmentTransaction#commit()} были выполнены немедленно. Как правило,
+в этом нет необходимости, за исключением случаев, когда транзакция является зависимостью для заданий в других потоках.</p>
+
+<p class="caution"><strong>Внимание!</strong> Фиксировать транзакцию методом {@link
+android.app.FragmentTransaction#commit commit()} можно только до того, как операция<a href="{@docRoot}guide/components/activities.html#SavingActivityState">сохранит свое
+состояние</a> (после того, как пользователь покинет ее). Попытка зафиксировать транзакцию после этого момента
+ вызовет исключение. Дело в том, что состояние после фиксации может быть потеряно, если понадобится
+восстановить операцию. В ситуациях, в которых потеря фиксации не критична, следует вызывать {@link
+android.app.FragmentTransaction#commitAllowingStateLoss()}.</p>
+
+
+
+
+<h2 id="CommunicatingWithActivity">Взаимодействие с операцией</h2>
+
+<p>Хотя {@link android.app.Fragment} реализован как объект, независимый от
+класса {@link android.app.Activity}, и может быть использован внутри нескольких операций, конкретный экземпляр
+фрагмента напрямую связан с содержащей его операцией.</p>
+
+<p>В частности, фрагмент может обратиться к экземпляру {@link android.app.Activity} с помощью метода {@link
+android.app.Fragment#getActivity()} и без труда выполнить такие задачи, как поиск представления в макете
+операции:</p>
+
+<pre>
+View listView = {@link android.app.Fragment#getActivity()}.{@link android.app.Activity#findViewById findViewById}(R.id.list);
+</pre>
+
+<p>Аналогичным образом операция может вызывать методы фрагмента, получив ссылку на объект
+{@link android.app.Fragment} от {@link android.app.FragmentManager} с помощью метода {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} или {@link
+android.app.FragmentManager#findFragmentByTag findFragmentByTag()}. Например:</p>
+
+<pre>
+ExampleFragment fragment = (ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment);
+</pre>
+
+
+<h3 id="EventCallbacks">Создание обратного вызова события для операции</h3>
+
+<p>В некоторых случаях необходимо, чтобы фрагмент использовал события совместно с операцией. Хороший способ реализации этого
+состоит в том, чтобы определить интерфейс обратного вызова внутри фрагмента и потребовать от контейнерной операции
+его реализации. Когда операция примет обратный вызов через этот интерфейс, она сможет обмениваться информацией с
+другими фрагментами в макете по мере необходимости.</p>
+
+<p>Пусть, например, у новостного приложения имеются два фрагмента в одной операции: один для отображения списка
+статей (фрагмент A), а другой&mdash;для отображения статьи (фрагмент B). Тогда фрагмент A должен сообщать
+операции о том, что выбран пункт списка, чтобы она могла сообщить фрагменту B о необходимости отобразить статью. В
+этом случае интерфейс {@code OnArticleSelectedListener} объявляется во фрагменте A:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    ...
+    // Container Activity must implement this interface
+    public interface OnArticleSelectedListener {
+        public void onArticleSelected(Uri articleUri);
+    }
+    ...
+}
+</pre>
+
+<p>Тогда операция, содержащая этот фрагмент, реализует интерфейс {@code OnArticleSelectedListener}
+и переопределит
+метод {@code onArticleSelected()}, чтобы извещать фрагмент B о событии, исходящем от фрагмента A. Чтобы
+контейнерная операция наверняка реализовала этот интерфейс, метод обратного вызова {@link
+android.app.Fragment#onAttach onAttach()} во фрагменте A (который система вызывает при добавлении
+фрагмента в операцию) создает экземпляр класса {@code OnArticleSelectedListener}, выполнив
+приведение типа объекта {@link android.app.Activity}, который передается методу {@link android.app.Fragment#onAttach
+onAttach()}:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        try {
+            mListener = (OnArticleSelectedListener) activity;
+        } catch (ClassCastException e) {
+            throw new ClassCastException(activity.toString() + " must implement OnArticleSelectedListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>Если операция не реализовала интерфейс, фрагмент генерирует исключение
+{@link java.lang.ClassCastException}.
+В случае успеха элемент {@code mListener} будет содержать ссылку на реализацию интерфейса
+{@code OnArticleSelectedListener} в операции, чтобы фрагмент A мог использовать
+события совместно с операцией, вызывая методы, определенные интерфейсом {@code OnArticleSelectedListener}. Например, если фрагмент A является расширением
+класса {@link android.app.ListFragment}, то всякий раз,
+когда пользователь нажимает элемент списка, система вызывает {@link android.app.ListFragment#onListItemClick
+onListItemClick()} во фрагменте. Этот метод, в свою очередь, вызывает метод {@code onArticleSelected()}, чтобы использовать
+событие совместно с операцией:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onListItemClick(ListView l, View v, int position, long id) {
+        // Append the clicked item's row ID with the content provider Uri
+        Uri noteUri = ContentUris.{@link android.content.ContentUris#withAppendedId withAppendedId}(ArticleColumns.CONTENT_URI, id);
+        // Send the event and Uri to the host activity
+        mListener.onArticleSelected(noteUri);
+    }
+    ...
+}
+</pre>
+
+<p>Параметр {@code id}, передаваемый методу {@link
+android.app.ListFragment#onListItemClick onListItemClick()}, — это идентификатор строки с выбранным элементом списка,
+который операция (или другой фрагмент) использует для получения статьи от объекта {@link
+android.content.ContentProvider} приложения.</p>
+
+<p><!--To see a complete implementation of this kind of callback interface, see the <a
+href="{@docRoot}resources/samples/NotePad/index.html">NotePad sample</a>. -->Дополнительные сведения о
+работе с поставщиком контента приводятся в документе <a href="{@docRoot}guide/topics/providers/content-providers.html">Поставщики контента</a>.</p>
+
+
+
+<h3 id="ActionBar">Добавление элементов в строку действий</h3>
+
+<p>Фрагменты могут добавлять пункты меню в <a href="{@docRoot}guide/topics/ui/menus.html#options-menu">Меню вариантов</a> операции (и, следовательно, в <a href="{@docRoot}guide/topics/ui/actionbar.html">Строку действий</a>), реализовав 
+{@link android.app.Fragment#onCreateOptionsMenu(Menu,MenuInflater) onCreateOptionsMenu()}. Однако, чтобы этот метод мог
+принимать вызовы, необходимо вызывать {@link
+android.app.Fragment#setHasOptionsMenu(boolean) setHasOptionsMenu()} во время выполнения метода {@link
+android.app.Fragment#onCreate(Bundle) onCreate()}, чтобы сообщить, что фрагмент
+намеревается добавить пункты в Меню вариантов (в противном случае фрагмент не примет вызов метода
+{@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()}).</p>
+
+<p>Любые пункты, добавляемые фрагментом в Меню вариантов, присоединяются к
+уже существующим. Кроме того, фрагмент принимает обратные вызовы метода {@link
+android.app.Fragment#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}, когда пользователь выбирает пункт
+меню.</p>
+
+<p>Разработчик может также зарегистрировать представление в макете своего фрагмента, чтобы предоставить контекстное меню. Для этого следует вызвать метод {@link
+android.app.Fragment#registerForContextMenu(View) registerForContextMenu()}. Когда пользователь открывает
+контекстное меню, фрагмент принимает вызов метода {@link
+android.app.Fragment#onCreateContextMenu(ContextMenu,View,ContextMenu.ContextMenuInfo)
+onCreateContextMenu()}. Когда пользователь выбирает пункт меню, фрагмент принимает вызов метода {@link
+android.app.Fragment#onContextItemSelected(MenuItem) onContextItemSelected()}.</p>
+
+<p class="note"><strong>Примечание.</strong> Хотя фрагмент принимает обратный вызов по событию «выбран пункт меню»
+для каждого добавленного им пункта, операция первой принимает соответствующий обратный вызов, когда пользователь
+выбирает пункт меню. Если имеющаяся в операции реализация обратного вызова по событию «выбран пункт меню» не
+обрабатывает выбранный пункт, событие передается методу обратного вызова во фрагменте. Это справедливо для
+Меню вариантов и контекстных меню.</p>
+
+<p>Подробные сведения относительно меню см. в руководствах для разработчиков <a href="{@docRoot}guide/topics/ui/menus.html">Меню</a> и <a href="{@docRoot}guide/topics/ui/actionbar.html">Строка действий</a> </p>
+
+
+
+
+<h2 id="Lifecycle">Управление жизненным циклом фрагмента</h2>
+
+<div class="figure" style="width:350px">
+<img src="{@docRoot}images/activity_fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Рисунок 3</strong>. Влияние жизненного цикла операции на жизненный цикл
+фрагмента</p>
+</div>
+
+<p>Управление жизненным циклом фрагмента во многом аналогично управлению жизненным циклом операции. Как и 
+операция, фрагмент может существовать в одном из трех состояний:</p>
+
+<dl>
+  <dt><i>Возобновлен</i></dt>
+    <dd>Фрагмент виден во время выполнения операции.</dd>
+
+  <dt><i>Приостановлен</i></dt>
+    <dd>На переднем плане выполняется и находится в фокусе другая операция, но операция, содержащая данный
+фрагмент, по-прежнему видна (операция переднего плана частично прозрачна или не
+занимает весь экран).</dd>
+
+  <dt><i>Остановлен</i></dt>
+    <dd>Фрагмент не виден. Либо контейнерная операция остановлена, либо
+фрагмент удален из нее, но добавлен в стек переходов назад. Остановленный фрагмент
+по-прежнему активен (вся информация о состоянии и элементах сохранена в системе). Однако он больше
+не виден пользователю и будет уничтожен в случае уничтожения операции.</dd>
+</dl>
+
+<p>Здесь снова просматривается аналогия с операцией: разработчик может сохранить состояние фрагмента с помощью {@link
+android.os.Bundle} на случай, если процесс операции будет уничтожен, а разработчику понадобится восстановить
+состояние фрагмента при повторном создании операции. Состояние можно сохранить во время выполнения метода обратного вызова {@link
+android.app.Fragment#onSaveInstanceState onSaveInstanceState()} во фрагменте и восстановить его во время выполнения
+{@link android.app.Fragment#onCreate onCreate()}, {@link
+android.app.Fragment#onCreateView onCreateView()} или {@link
+android.app.Fragment#onActivityCreated onActivityCreated()}. Дополнительные сведения о сохранении
+состояния приводятся в документе <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Операции</a>.
+</p>
+
+<p>Самое значительное различие в ходе жизненного цикла между операцией и фрагментом состоит в принципах
+их сохранения в соответствующих стеках переходов назад. По умолчанию операция помещается в управляемый системой стек переходов назад для операций,
+когда она останавливается (чтобы пользователь мог вернуться
+к ней с помощью кнопки <em>Назад</em>, как описано в статье <a href="{@docRoot}guide/components/tasks-and-back-stack.html">Задачи и стек переходов назад</a>).
+В то же время, фрагмент помещается в стек переходов назад, управляемый операцией, только когда разработчик
+явно запросит сохранение конкретного экземпляра, вызвав метод {@link
+android.app.FragmentTransaction#addToBackStack(String) addToBackStack()} во время транзакции,
+удаляющей фрагмент.</p>
+
+<p>В остальном управление жизненным циклом фрагмента очень похоже на управление жизненным циклом 
+операции. Поэтому практические рекомендации по <a href="{@docRoot}guide/components/activities.html#Lifecycle">управлению жизненным циклом
+операций</a> применимы и к фрагментам. При этом разработчику необходимо понимать, как жизненный цикл
+операции влияет на жизненный цикл фрагмента.</p>
+
+<p class="caution"><strong>Внимание!</strong> Если возникнет необходимость в объекте {@link android.content.Context}
+внутри объекта класса {@link android.app.Fragment}, можно вызвать метод{@link android.app.Fragment#getActivity()}.
+Однако разработчик должен быть внимательным и вызывать метод {@link android.app.Fragment#getActivity()} только когда фрагмент
+прикреплен к операции. Если фрагмент еще не прикреплен или был откреплен в конце
+его жизненного цикла, метод {@link android.app.Fragment#getActivity()} возвратит null.</p>
+
+
+<h3 id="CoordinatingWithActivity">Согласование с жизненным циклом операции</h3>
+
+<p>Жизненый цикл операции, содержащей фрагмент, непосредственным образом влияет на жизненый цикл
+фрагмента, так что каждый обратный вызов жизненного цикла операции приводит к аналогичному обратного вызову для каждого
+фрагмента. Например, когда операция принимает вызов {@link android.app.Activity#onPause}, каждый
+ее фрагмент принимает {@link android.app.Fragment#onPause}.</p>
+
+<p>Однако у фрагментов есть несколько дополнительных методов обратного вызова жизненого цикла, которые обеспечивают уникальное взаимодействие с операцией
+для выполнения таких действий, как создание и уничтожение пользовательского интерфейса фрагмента. Вот эти
+методы:</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onAttach onAttach()}</dt>
+    <dd>Вызывается, когда фрагмент связывается с операцией (ему передается объект {@link
+android.app.Activity}).</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+    <dd>Вызывается для создания иерархии представлений, связанной с фрагментом.</dd>
+  <dt>{@link android.app.Fragment#onActivityCreated onActivityCreated()}</dt>
+    <dd>Вызывается, когда метод {@link android.app.Activity#onCreate
+onCreate()}, принадлежащий операции, возвращает управление.</dd>
+  <dt>{@link android.app.Fragment#onDestroyView onDestroyView()}</dt>
+    <dd>Вызывается при удалении иерархии представлений, связанной с фрагментом.</dd>
+  <dt>{@link android.app.Fragment#onDetach onDetach()}</dt>
+    <dd>Вызывается при разрыве связи фрагмента с операцией.</dd>
+</dl>
+
+<p>Зависимость жизненого цикла фрагмента от содержащей его операции иллюстрируется
+рисунком 3. На этом рисунке можно видеть, что очередное состояние операции определяет, какие
+методы обратного вызова может принимать фрагмент. Например, когда операция принимает свой метод обратного вызова {@link
+android.app.Activity#onCreate onCreate()}, фрагмент внутри этой операции принимает всего лишь метод обратного вызова
+{@link android.app.Fragment#onActivityCreated onActivityCreated()}.</p>
+
+<p>Когда операция переходит в состояние «возобновлена», можно свободно добавлять в нее фрагменты и удалять
+их. Таким образом, жизненный цикл фрагмента может быть независимо изменен, только пока операция остается 
+в состоянии «возобновлена».</p>
+
+<p>Однако, когда операция выходит из этого состояния, продвижение фрагмента по его
+жизненному циклу снова осуществляется операцией.</p>
+
+
+
+
+<h2 id="Example">Пример:</h2>
+
+<p>Чтобы суммировать все сказанное в этом документе, рассмотрим пример операции,
+использующей два фрагмента для создания макета с двумя панелями. Операция, код которой приведен ниже, включает в себя один фрагмент для
+отображения списка пьес Шекспира, а другой — для отображения краткого содержания пьесы, выбранной
+из списка. В примере показано, как следует организовывать различные конфигурации фрагментов
+в зависимости от конфигурации экрана. </p>
+
+<p class="note"><strong>Примечание.</strong> Полный исходный код этой операции находится в разделе
+<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html">{@code
+FragmentLayout.java}</a>.</p>
+
+<p>Главная операция применяет макет обычным способом, в методе {@link
+android.app.Activity#onCreate onCreate()}:</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java main}
+
+<p>Здесь применяется макет {@code fragment_layout.xml}:</p>
+
+{@sample development/samples/ApiDemos/res/layout-land/fragment_layout.xml layout}
+
+<p>Пользуясь этим макетом, система создает экземпляр класса {@code TitlesFragment} (список
+пьес), как только операция загрузит макет. При этом объект {@link android.widget.FrameLayout}
+(в котором будет находиться фрагмент с кратким содержанием) занимает место в правой части
+экрана, но поначалу остается пустым. Как будет показано ниже, фрагмент не помещается в {@link android.widget.FrameLayout}, пока пользователь не выберет элемент
+в списке.</p>
+
+<p>Однако не все экраны достаточно широки, чтобы отображать
+краткое содержание рядом со списком пьес. Поэтому описанный выше макет используется только при альбомной ориентации
+экрана и хранится в файле {@code res/layout-land/fragment_layout.xml}.</p>
+
+<p>Когда же устройство находится в книжной ориентации, система применяет макет, приведенный ниже, который
+хранится в файле{@code res/layout/fragment_layout.xml}:</p>
+
+{@sample development/samples/ApiDemos/res/layout/fragment_layout.xml layout}
+
+<p>В этом макете присутствует только объект {@code TitlesFragment}. Это означает, что при
+книжной ориентации устройства виден только список пьес. Когда пользователь нажимает на элемент
+списка в этой конфигурации, приложение запускает новую операцию для отображения краткого содержания,
+а не загружает второй фрагмент.</p>
+
+<p>Далее можно видеть, как это реализовано в классах фрагмента. Вначале идет код класса {@code
+TitlesFragment}, отображающий список пьес Шекспира. Этот фрагмент является расширением класса {@link
+android.app.ListFragment} и использует его функции для выполнения основной работы со списком.</p>
+
+<p>Изучая код, обратите внимание на то, что в качестве реакции на нажатие пользователем
+элемента списка возможны две модели поведения. В зависимости от того, какой из двух макетов активен, либо в рамках одной операции создается и отображается новый фрагмент
+с кратким содержанием (за счет добавления фрагмента в объект {@link
+android.widget.FrameLayout}), либо запускается новая операция (отображающая фрагмент).</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java titles}
+
+<p>Второй фрагмент, {@code DetailsFragment}, отображает краткое содержание пьесы, выбранной в
+списке {@code TitlesFragment}:</p>
+ 
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java details}
+
+<p>Вспомним код класса {@code TitlesFragment}: если пользователь нажимает на пункт списка, а
+текущий макет <em>не</em> включает в себя представление {@code R.id.details} (которому принадлежит фрагмент
+{@code DetailsFragment}), то приложение запускает операцию {@code DetailsActivity}
+для отображения содержимого элемента.</p>
+
+<p>Далее идет код класса {@code DetailsActivity}, который всего лишь содержит объект {@code DetailsFragment} для отображения
+краткого содержания выбранной пьесы на экране в книжной ориентации:</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java
+details_activity}
+ 
+<p>Обратите внимание, что в альбомной конфигурации эта операция самостоятельно завершается, чтобы главная
+операция могла принять управление и отобразить фрагмент {@code DetailsFragment} рядом с фрагментом{@code TitlesFragment}.
+Это может произойти, если пользователь запустит операцию {@code DetailsActivity} в книжной ориентации экрана, а
+затем перевернет устройство в альбомную ориентацию (в результате чего текущая операция будет перезапущена).</p>
+
+
+<p>Дополнительные образцы кода, использующего фрагменты (и файлы с полным исходным кодом этого примера),
+доступны в приложении-примере API Demos в разделе <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Fragment">
+ApiDemos</a> (которое можно загрузить из <a href="{@docRoot}resources/samples/get.html">компонента Samples SDK</a>).</p>
+
+
diff --git a/docs/html-intl/intl/ru/guide/components/fundamentals.jd b/docs/html-intl/intl/ru/guide/components/fundamentals.jd
new file mode 100644
index 0000000..181cbbd
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/fundamentals.jd
@@ -0,0 +1,480 @@
+page.title=Основы создания приложений
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Содержание документа</h2>
+<ol>
+<li><a href="#Components">Компоненты приложения</a>
+  <ol>
+    <li><a href="#ActivatingComponents">Активация компонентов</a></li>
+  </ol>
+</li>
+<li><a href="#Manifest">Файл манифеста</a>
+  <ol>
+    <li><a href="#DeclaringComponents">Объявление компонентов</a></li>
+    <li><a href="#DeclaringRequirements">Объявление требований приложения</a></li>
+  </ol>
+</li>
+<li><a href="#Resources">Ресурсы приложения</a></li>
+</ol>
+</div>
+</div>
+
+<p>Приложения для Android пишутся на языке программирования Java. Инструменты Android SDK (Software Development Kit – комплект разработки программного обеспечения) компилируют
+написанный вами код &mdash; и все требуемые файлы данных и ресурсов &mdash; в файл APK – <i>программный пакет Android</i>,
+который представляет собой файл архива с расширением {@code .apk}. В файле APK находится все, что требуется для работы
+Android-приложения, и он позволяет установить приложение на любом устройстве под управлением системы Android.</p>
+
+<p>Каждое приложение Android, установленное на устройстве, работает в собственной "песочнице" (изолированной программной среде): </p>
+
+<ul>
+ <li>операционная система Android представляет собой многопользовательскую систему Linux, в которой каждое приложение является
+отдельным пользователем;</li>
+
+<li>по умолчанию система назначает каждому приложению уникальный идентификатор пользователя Linux (этот идентификатор используется только
+системой и неизвестен приложению); система устанавливает полномочия для всех файлов
+ в приложении, с тем чтобы доступ к ним был разрешен только пользователю с идентификатором, назначенным этому приложению; </li>
+
+<li>у каждого процесса имеется собственная виртуальная машина (ВМ), так что код приложения выполняется изолированно от
+других приложений;</li>
+
+<li>по умолчанию каждое приложение выполняется в собственном процессе Linux. Android запускает процесс, когда требуется
+выполнить какой-либо компонент приложения, а затем завершает процесс, когда он больше не
+нужен либо когда системе требуется освободить память для других приложений.</li>
+</ul>
+
+<p>Таким образом система Android реализует <em>принцип предоставления минимальных прав</em>. То есть
+каждое приложение по умолчанию имеет доступ только к тем компонентам, которые ему необходимы для работы, и
+ни к каким другим. Благодаря этому формируется исключительно безопасная среда, в которой приложение не имеет доступа к недозволенным областям
+системы.</p>
+
+<p>Однако у приложения есть варианты предоставления своих данных другим приложениям и
+доступа к системным службам:</p>
+
+<ul>
+  <li>двум приложениям можно назначить один идентификатор пользователя Linux. В этом случае
+каждый из них сможет обращаться к файлам другого приложения.  Для экономии ресурсов системы также можно
+сделать так, чтобы приложения с одинаковым идентификатором пользователя выполнялись в одном процессе Linux и использовали одну ВМ (
+приложения также должны быть подписаны одним сертификатом);</li>
+  <li>приложение может запросить разрешение на доступ к данным устройства, например к контактам
+пользователя, SMS-сообщениям, подключаемой карте памяти (SD-карте), камере, Bluetooth и др. Все
+разрешения должны предоставляться приложению при его установке.</li>
+</ul>
+
+<p>Это основные сведения о том, каким образом приложение Android существует в системе. В остальной части
+этого документа раскрываются следующие темы:</p>
+<ul>
+  <li>базовые компоненты, которые определяют приложение;</li>
+  <li>файл манифеста, в котором объявляются компоненты и функции устройства, необходимые для
+приложения;</li>
+  <li>ресурсы, которые существуют отдельно от кода приложения и позволяют приложению
+адаптировать свою работу к устройствам с различными конфигурациями.</li>
+</ul>
+
+
+
+<h2 id="Components">Компоненты приложения</h2>
+
+<p>Компоненты приложения являются кирпичиками, из которых состоит приложение для Android. Каждый
+компонент представляет собой отдельную точку, через которую система может войти в приложение. Не все
+компоненты являются точками входа для пользователя, а некоторые из них зависят друг от друга. При этом каждый компонент является
+самостоятельной структурной единицей и играет определенную роль &mdash; каждый из них представляет собой уникальный элемент структуры, который
+определяет работу приложения в целом.</p>
+
+<p>Компоненты приложения можно отнести к одному из четырех типов. Компоненты каждого типа предназначены для определенной цели,
+они имеют собственный жизненный цикл, который определяет способ создания и прекращения существования компонента.</p>
+
+<p>Четыре типа компонентов:</p>
+
+<dl>
+
+<dt><b>Операции</b></dt>
+
+<dd>Операция (Activity) <i>представляет</i> собой один экран с пользовательским интерфейсом. Например,
+в приложении для работы с электронной почтой одна операция может служить для отображения списка новых
+сообщений, другая – для составления сообщения и третья операция – для чтения сообщений. Несмотря на то что
+операции совместно формируют связное взаимодействие пользователя с приложением по работе с электронной почтой, каждая из них
+не зависит от других операций. Любые из этих операций могут быть запущены
+другим приложением (если это позволяет приложение по работе с электронной почтой). Например, приложение для камеры может запустить
+операцию в приложении по работе с электронной почтой, которая составляет новое сообщение, чтобы пользователь мог отослать фотографию.
+
+<p>Операция относится к подклассу класса {@link android.app.Activity}. Подробные сведения об этом можно
+найти в руководстве для разработчиков в статье <a href="{@docRoot}guide/components/activities.html">Операции</a>
+.</p>
+</dd>
+
+
+<dt><b>Службы</b></dt>
+
+<dd>Служба (Service) <i>представляет</i> собой компонент, который работает в фоновом режиме и выполняет длительные
+операции, связанные с работой удаленных процессов. Служба
+не имеет пользовательского интерфейса. Например, она может воспроизводить музыку в фоновом режиме, пока
+пользователь работает в другом приложении, или же она может получать данные по сети, не
+блокируя взаимодействие пользователя с операцией. Служба может быть запущена другим компонентом, который затем будут взаимодействовать с ней, – например
+операцией.
+
+<p>Служба относится к подклассу класса {@link android.app.Service}. Подробные сведения об этом можно
+найти в руководстве для разработчиков в статье <a href="{@docRoot}guide/components/services.html">Службы</a>
+.</p>
+</dd>
+
+
+<dt><b>Поставщики контента</b></dt>
+
+<dd>Поставщик <i>контента (Content provider)</i> управляет общим набором данных приложения. Данные можно хранить в
+файловой системе, базе данных SQLite, в Интернете или любом другом постоянном месте хранения, к которому у вашего
+приложения имеется доступ. Посредством поставщика контента другие приложения могут запрашивать или даже изменять
+данные (если поставщик контента позволяет делать это). Например, в системе Android есть поставщик
+контента, который управляет информацией контактов пользователя. Любое приложение, получившее соответствующие
+разрешения, может запросить часть этого поставщика контента (например {@link
+android.provider.ContactsContract.Data}), для чтения и записи сведений об определенном человеке.
+
+<p>Поставщики контента также используются для чтения и записи данных, доступ к которым внешним компонентам
+приложение не предоставляет. Например, в образце приложения <a href="{@docRoot}resources/samples/NotePad/index.html">Note Pad</a> с помощью
+поставщика контента выполняется сохранение заметок.</p>
+
+<p>Поставщик контента относится к подклассу класса {@link android.content.ContentProvider}.
+Он должен реализовывать стандартный набор API-интерфейсов, с помощью которых другие приложения будут выполнять
+транзакции. Подробные сведения можно найти в руководстве для разработчиков в статье <a href="{@docRoot}guide/topics/providers/content-providers.html">Поставщики контента</a>
+.</p>
+</dd>
+
+
+<dt><b>Приемники широковещательных сообщений</b></dt>
+
+<dd>Приемник широковещательных сообщений (Broadcast receiver) <i>представляет</i> собой компонент, который реагирует на объявления
+распространяемые по всей системе.  Многие из этих объявлений рассылает система &mdash; например объявление о том,
+что экран выключился, аккумулятор разряжен или был сделан фотоснимок.
+Объявления также могут рассылаться приложениями, &mdash; например, чтобы сообщить другим приложениям о том, что
+какие-то данные были загружены на устройство и теперь готовы для использования. Несмотря на то что приемники широковещательных сообщений
+не имеют пользовательского интерфейса, они могут<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">создавать уведомления в строке состояния,</a>
+чтобы предупредить пользователя о событии "рассылка объявления". Однако чаще всего они являются
+просто "шлюзом" для других компонентов и предназначены для выполнения минимального объема работы. Например
+, они могут инициировать выполнение службой определенных действий при возникновении события.
+
+<p>Приемник широковещательных сообщений относится к подклассу класса {@link android.content.BroadcastReceiver}
+, а каждое такое сообщение предоставляется как объект {@link android.content.Intent}. Подробные сведения изложены
+в  руководстве, посвященном классу {@link android.content.BroadcastReceiver}.</p>
+</dd>
+
+</dl>
+
+
+
+<p>Уникальной особенностью системы Android является то, что любое приложение может запустить компонент
+другого приложения. Например, если вы хотите дать пользователю возможность фотографировать, используя
+камеру устройства, то, поскольку наверняка имеется другое приложение, которое может выполнить это действие, вместо того чтобы разработать операцию фотографирования в своем приложении, вы можете вызвать 
+такое приложение. Вам не
+нужно внедрять код из приложения для камеры или даже устанавливать на него ссылку.
+Вместо этого вы можете просто запустить операцию фотографирования
+ из приложения для камеры. По завершении этой операции фотография будет возвращена в ваше приложение, и ее можно будет использовать. Для пользователя
+ это будет выглядеть как одно приложение.</p>
+
+<p>Когда система запускает компонент, она запускает процесс для этого приложения (если
+он еще не был запущен) и создает экземпляры классов, которые требуются этому компоненту. Например, если ваше приложение
+запустит операцию фотографирования в приложении для камеры, эта операция
+будет выполняться в процессе, который относится к этому стороннему приложению, а не в процессе вашего приложения.
+Поэтому, в отличие от приложений для большинства других систем, в приложениях для Android отсутствует единая
+точка входа (например, в них нет функции {@code main()}).</p>
+
+<p>Поскольку система выполняет каждое приложение в отдельном процессе с такими правами доступа к файлам, которые
+ограничивают доступ в другие приложения, ваше приложение не может напрямую вызвать компонент из
+другого приложения. Это может сделать сама система Android. Поэтому, чтобы вызвать компонент в
+другом приложении, необходимо сообщить системе о своем намерении (<em>Intent</em>)
+запустить определенный компонент. После этого система активирует для вас этот компонент.</p>
+
+
+<h3 id="ActivatingComponents">Активация компонентов</h3>
+
+<p>Компоненты трех из четырех возможных типов &mdash; операции, службы и
+приемники широковещательных сообщений &mdash; активируются асинхронным сообщением, которое называется <em>Intent</em> (намерение).
+Объекты Intent связывают друг с другом отдельные компоненты во время выполнения, будь то это компоненты
+ вашего или стороннего приложения (эти объекты Intent можно представить себе
+в виде мессенджеров, которые посылают другим компонентам запрос на выполнение действий).</p>
+
+<p>Объект Intent создается с помощью объекта {@link android.content.Intent}, который описывает запрос на
+активацию либо конкретного компонента, либо компонента конкретного <em>типа</em> &mdash; соответственно, намерение Intent
+может быть явным или неявным.</p>
+
+<p>Для операций и служб Объект Intent определяет действие, которое требуется выполнить (например, просмотреть (view) или
+отправить (send) что-то), а также может указывать URI (Uniform Resource Identifier – унифицированный идентификатор ресурса) данных, с которыми это действие нужно выполнить (помимо прочих сведений, которые
+нужно знать запускаемому компоненту). Например, объект Intent может передавать запрос
+на выполнение операции "показать изображение" или "открыть веб-страницу". В некоторых ситуациях операцию можно
+запустить, чтобы получить результат. В этом случае операция возвращает
+результат также в виде объекта {@link android.content.Intent} (например, можно отправить сообщение Intent, чтобы дать
+пользователю возможность выбрать контакт и вернуть его вам &mdash; в ответном сообщении Intent будет содержаться
+URI, указывающий на выбранный контакт).</p>
+
+<p>Для приемников широковещательных сообщений Intent просто определяет
+передаваемое объявление (например, широковещательное сообщение о низком уровне заряда аккумулятора
+содержит только строку "аккумулятор разряжен").</p>
+
+<p>Компоненты четвертого типа – поставщики контента – сообщениями Intent не активируются. Они
+активируются по запросу от {@link android.content.ContentResolver}. Процедура определения 
+ контента (content resolver) обрабатывает все прямые транзакции с поставщиком контента, с тем чтобы этого не пришлось делать компоненту, который
+выполняет транзакции с поставщиком. Вместо этого он вызывает методы для объекта {@link
+android.content.ContentResolver}. Это формирует слой, абстрагирующий (в целях безопасности) поставщика
+контента от компонента, запрашивающего информацию.</p>
+
+<p>Для активации компонентов каждого типа имеются отдельные методы:</p>
+<ul>
+  <li>Можно запустить операцию (или определить для нее какое-то новое действие),
+передав объект {@link android.content.Intent} методу {@link android.content.Context#startActivity
+startActivity()} или {@link android.app.Activity#startActivityForResult startActivityForResult()}
+(если требуется, чтобы операция вернула результат).</li>
+  <li>Можно запустить службу (либо выдать работающей службе новые инструкции), 
+передав объект {@link android.content.Intent} методу {@link android.content.Context#startService
+startService()}. Либо можно установить привязку к службе, передав объект{@link android.content.Intent} методу
+{@link android.content.Context#bindService bindService()}.</li>
+  <li>Можно инициировать рассылку сообщений, передав объект {@link android.content.Intent} таким методам, как
+{@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}, {@link
+android.content.Context#sendOrderedBroadcast(Intent, String) sendOrderedBroadcast()} и {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}.</li>
+  <li>Можно выполнить запрос к поставщику контента, вызвав метод {@link
+android.content.ContentProvider#query query()} для объекта {@link android.content.ContentResolver}.</li>
+</ul>
+
+<p>Подробные сведения об использовании объектов Intent приведены в документе <a href="{@docRoot}guide/components/intents-filters.html">Объекты Intent и 
+фильтры объектов Intent</a>. Более подробная информация об активации определенных компонентов также приведена
+в следующих документах: <a href="{@docRoot}guide/components/activities.html">Операции</a>, <a href="{@docRoot}guide/components/services.html">Службы</a>, {@link
+android.content.BroadcastReceiver} и <a href="{@docRoot}guide/topics/providers/content-providers.html">Поставщики контента</a>.</p>
+
+
+<h2 id="Manifest">Файл манифеста</h2>
+
+<p>Для запуска компонента приложения системе Android необходимо знать, что
+компонент существует. Для этого она читает файл {@code AndroidManifest.xml} приложения (файл
+манифеста). В этом файле, который должен находиться в корневой папке
+приложения, должны быть объявлены все компоненты приложения.</p>
+
+<p>Помимо объявления компонентов приложения, манифест служит и для других целей,
+среди которых:</p>
+<ul>
+  <li>указание всех полномочий пользователя, которые требуются приложению, например разрешения на доступ в Интернет или
+на чтение контактов пользователя;</li>
+  <li>объявление минимального<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">уровня API</a>,
+требуемого приложению, с учетом того, какие API-интерфейсы оно использует;</li>
+  <li>объявление аппаратных и программных функций, которые нужны приложению или используются им, например камеры,
+службы Bluetooth или сенсорного экрана;</li>
+  <li>указание библиотек API, с которыми необходимо связать приложение (отличные от API-интерфейсов платформы
+Android), например библиотеки <a href="http://code.google.com/android/add-ons/google-apis/maps-overview.html">Google Maps
+</a>;</li>
+  <li>и многое другое.</li>
+</ul>
+
+
+<h3 id="DeclaringComponents">Объявление компонентов</h3>
+
+<p>Основная задача манифеста – это информировать систему о компонентах приложения. Например,
+ файл манифеста может объявлять операцию следующим образом: </p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest ... &gt;
+    &lt;application android:icon="@drawable/app_icon.png" ... &gt;
+        &lt;activity android:name="com.example.project.ExampleActivity"
+                  android:label="@string/example_label" ... &gt;
+        &lt;/activity&gt;
+        ...
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>Атрибут {@code android:icon} в элементе <code><a
+href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+указывает на ресурсы для значка, который обозначает
+приложение.</p>
+
+<p>Атрибут {@code android:name} в элементе <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+указывает полное имя класса подкласса {@link
+android.app.Activity}, а атрибут {@code android:label} указывает строку,
+которую необходимо использовать в качестве метки операции, отображаемой для пользователя.</p>
+
+<p>Все компоненты приложения необходимо объявлять следующим образом:</p>
+<ul>
+  <li>элементы <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+для операций;</li>
+  <li>элементы <code><a
+href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+для служб;</li>
+  <li>элементы <code><a
+href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+для приемников широковещательных сообщений;</li>
+  <li>элементы <code><a
+href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+для поставщиков контента</li>
+</ul>
+
+<p>Системе не видны операции, службы и поставщики контента, которые имеются в исходном коде, но не объявлены
+в манифесте, поэтому они не могут быть запущены.  А вот
+приемники широковещательных сообщений
+можно либо объявить в манифесте, либо создать динамически в коде (как объекты
+{@link android.content.BroadcastReceiver}) и зарегистрировать в системе путем вызова 
+{@link android.content.Context#registerReceiver registerReceiver()}.</p>
+
+<p>Подробные сведения о структуризации файла манифеста для приложения см. в документе <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">Файл AndroidManifest.xml</a>
+. </p>
+
+
+
+<h3 id="DeclaringComponentCapabilities">Объявление возможностей компонентов</h3>
+
+<p>Как уже говорилось в разделе <a href="#ActivatingComponents">Активация компонентов</a>, с помощью объекта
+{@link android.content.Intent} можно запускать операции, службы и приемники широковещательных сообщений. Для этого в объекте Intent следует
+явно указать имя целевого компонента (с помощью имени класса компонента). Однако
+в полной мере возможности объектов Intent раскрываются при использовании концепции <em>неявных Intent</em>. В неявном сообщении Intent
+просто описывается тип действия, которое требуется выполнить (а также, хотя это и не обязательно, дата, в которую вы бы хотели
+выполнить это действие). Системе же предоставляется возможности найти на устройстве компонент, который может выполнить это
+действие, и запустить его. При наличии нескольких компонентов, которые могут выполнить действие, описанное в сообщении
+Intent, пользователь выбирает, какой из них будет использоваться.</p>
+
+<p>Система определяет компоненты, которые могут ответить на сообщение Intent, путем сравнения 
+полученного сообщения Intent с <i>фильтрами объектов Intent,</i> указанными в файле манифеста других приложений, имеющихся
+ на устройстве.</p>
+
+<p>При объявлении операции в манифесте своего приложения по желанию можно указать
+фильтры объектов Intent, которые указывают возможности операции, с тем чтобы она могла реагировать на сообщения Intent
+от других приложений. Чтобы объявить фильтр Intent для своего компонента,
+необходимо добавить элемент <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> в качестве дочернего для элемента объявления компонента.</p>
+
+<p>Например, если вы создали приложение для работы с электронной почтой с операцией составления нового сообщения, вы можете
+объявить фильтр для ответа на сообщения Intent типа "send" (для отправки нового сообщения электронной почты) следующим образом:</p>
+<pre>
+&lt;manifest ... >
+    ...
+    &lt;application ... &gt;
+        &lt;activity android:name="com.example.project.ComposeEmailActivity">
+            &lt;intent-filter>
+                &lt;action android:name="android.intent.action.SEND" />
+                &lt;data android:type="*/*" />
+                &lt;category android:name="android.intent.category.DEFAULT" />
+            &lt;/intent-filter>
+        &lt;/activity>
+    &lt;/application&gt;
+&lt;/manifest>
+</pre>
+
+<p>Затем, если другое приложение создаст объект Intent с действием {@link
+android.content.Intent#ACTION_SEND} и передаст его в {@link android.app.Activity#startActivity
+startActivity()}, система сможет запустить вашу операцию, дав пользователю возможность написать и отправить
+сообщение электронной почты.</p>
+
+<p>Подробные сведения о создании фильтров объектов Intent приведены в документе <a href="{@docRoot}guide/components/intents-filters.html">Объекты Intent и фильтры объектов Intent</a>.
+</p>
+
+
+
+<h3 id="DeclaringRequirements">Объявление требований приложения</h3>
+
+<p>Существует огромное количество устройств, работающих под управлением Android, и не все они имеют
+одинаковые функциональные возможности. Чтобы ваше приложение не могло быть установлено на устройствах,
+в которых отсутствуют функции, необходимые приложению, важно четко определить профиль для
+типов устройств, поддерживаемых вашим приложением, указав требования к аппаратному и программному обеспечению в 
+файле манифеста. Эти объявления по большей части носят информационный характер, система их не
+читает. Однако их читают внешние службы, например Google Play, с целью обеспечения
+фильтрации для пользователей, которые ищут приложения для своих устройств.</p>
+
+<p>Например, если вашему приложению требуется камера и оно использует API-интерфейсы из Android 2.1 (<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">уровень API</a> 7),
+эти параметры следует объявить в файле манифеста в качестве требований следующим образом:</p> 
+
+<pre>
+&lt;manifest ... >
+    &lt;uses-feature android:name="android.hardware.camera.any"
+                  android:required="true" />
+    &lt;uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" />
+    ...
+&lt;/manifest>
+</pre>
+
+<p>Теперь ваше приложение нельзя будет установить из Google Play на устройствах, в которых <em>нет</em> камеры, а также на устройствах, работающих под управлением 
+Android версии <em>ниже</em> 2.1.</p>
+
+<p>Однако можно также объявить, что приложение использует камеру, но для его работы она не является
+<em>непременно необходимой</em>. В этом случае в приложении атрибуту <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#required">{@code required}</a>
+необходимо задать значение {@code "false"}, а во время работы оно должно проверять, имеется ли
+на устройстве камера, и при необходимости отключать свои функции, которые используют камеру.</p>
+
+<p>Более подробные сведения об управлении совместимостью своего приложения с различными устройствами
+приведены в документе <a href="{@docRoot}guide/practices/compatibility.html">Совместимость устройств</a>
+.</p>
+
+
+
+<h2 id="Resources">Ресурсы приложения</h2>
+
+<p>Приложение Android состоит не только из кода &mdash; ему необходимы такие существующие отдельно от исходного кода
+ресурсы, как изображения, аудиофайлы и все, что связано с визуальным
+представлением приложения. Например, необходимо определять анимацию, меню, стили, цвета
+и макет пользовательских интерфейсов операций в файлах XML. Используя ресурсы приложения, можно без труда
+изменять его различные характеристики, не меняя код, а, кроме того, &mdash;путем предоставления
+наборов альтернативных ресурсов &mdash; можно оптимизировать свое приложение для работы с различными
+конфигурациями устройств (например, для различных языков или размеров экрана).</p>
+
+<p>Для каждого ресурса, включаемого в проект Android, инструменты SDK задают уникальный
+целочисленный идентификатор, который может использоваться, чтобы сослаться на ресурс из кода приложения или из
+других ресурсов, определенных в XML. Например, если в вашем приложении имеется файл изображения с именем {@code
+logo.png} (сохраненный в папке {@code res/drawable/}), инструменты SDK сформируют идентификатор ресурса
+под именем {@code R.drawable.logo}, с помощью которого на изображение можно будет ссылаться и вставлять его в
+пользовательский интерфейс.</p>
+
+<p>Один из наиболее важных аспектов предоставления ресурсов отдельно от исходного кода
+заключается в возможности использовать альтернативные ресурсы для различных конфигураций
+устройств. Например, определив строки пользовательского интерфейса в XML, вы сможете перевести их на другие
+языки и сохранить эти переводы в отдельных файлах. Затем по <em>квалификатору</em> языка
+, добавленному к имени каталога ресурса (скажем {@code res/values-fr/} для строк на французском
+языке), и выбранному пользователем языку система Android применит к вашему пользовательскому интерфейсу строки на
+соответствующем языке.</p>
+
+<p>Android поддерживает разные <em>квалификаторы</em> для соответствующих ресурсов. Квалификатор
+ представляет собой короткую строку, которая включается в имена каталогов ресурсов с целью 
+определения конфигурации устройства, для которой эти ресурсы следует использовать. В качестве другого
+примера можно сказать, что для своих операций следует создавать разные макеты, которые будут соответствовать
+размеру и ориентации экрана устройства. Например, когда экран устройства имеет книжную
+ориентацию (расположен вертикально), кнопки в макете можно также размещатьь по вертикали, а когда экран
+развернут горизонтально (альбомная ориентация), кнопки следует размещать по горизонтали. Чтобы при изменении ориентации экрана изменялся макет,
+можно определить два разных макета и применить соответствующий
+квалификатор к имени каталога каждого макета. После этого система будет автоматически применять соответствующий
+макет в зависимости от ориентации устройства.</p>
+
+<p>Подробные сведения о различных видах ресурсов, которые можно включить в приложение, а также о том, как
+создавать альтернативные ресурсы для разных конфигурацией устройств, см. в разделе <a href="{@docRoot}guide/topics/resources/providing-resources.html">Предоставление ресурсов</a>.</p>
+
+
+
+<div class="next-docs">
+<div class="col-6">
+  <h2 class="norule">Также читайте:</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/components/intents-filters.html">Объекты Intent и фильтры объектов Intent</a>
+    </dt>
+    <dd>Сведения об использовании API-интерфейсов {@link android.content.Intent} для
+    активации таких компонентов приложений, как операции и службы, а также о предоставлении возможности другим приложениям
+    использовать компоненты своего приложения.</dd>
+    <dt><a href="{@docRoot}guide/components/activities.html">Операции</a></dt>
+    <dd>Сведения о создании экземпляра класса {@link android.app.Activity},
+ который выдает определенный экран в вашем приложении с пользовательским интерфейсом.</dd>
+    <dt><a href="{@docRoot}guide/topics/resources/providing-resources.html">Предоставление ресурсов</a></dt>
+    <dd>Описание структуры приложений Android, в которой ресурсы приложения существуют отдельно от
+   его кода, а также сведения о том, как предоставлять альтернативные ресурсы для определенных конфигураций
+   устройств.
+    </dd>
+  </dl>
+</div>
+<div class="col-6">
+  <h2 class="norule">Возможно, вас также заинтересует:</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/practices/compatibility.html">Совместимость устройств</a></dt>
+    <dd>Сведения о том, каким образом система Android работает на устройствах разных типов, и общие сведения о том,
+    как оптимизировать свое приложение для каждого устройства или ограничить круг устройств, на которых может быть установлено 
+    приложение.</dd>
+    <dt><a href="{@docRoot}guide/topics/security/permissions.html">Системные разрешения</a></dt>
+    <dd>Сведения о том, как система Android ограничивает доступ приложений к определенным API-интерфейсам с помощью системы
+    разрешений, которая требует согласия пользователя на использование этих API-интерфейсов вашим приложением.</dd>
+  </dl>
+</div>
+</div>
+
diff --git a/docs/html-intl/intl/ru/guide/components/index.jd b/docs/html-intl/intl/ru/guide/components/index.jd
new file mode 100644
index 0000000..41d5a34
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/index.jd
@@ -0,0 +1,57 @@
+page.title=Компоненты приложения
+page.landing=true
+page.landing.intro=Платформа приложений системы Android позволяет создавать функциональные и инновационные приложения с помощью набора компонентов, которые можно использовать многократно. В этом разделе рассказывается о том, как создавать компоненты, определяющие элементы структуры вашего приложения, и как связывать их воедино с помощью объектов Intent. 
+page.metaDescription=Платформа приложений системы Android позволяет создавать функциональные и инновационные приложения с помощью набора компонентов, которые можно использовать многократно. В этом разделе рассказывается о том, как создавать компоненты, определяющие элементы структуры вашего приложения, и как связывать их воедино с помощью объектов Intent. 
+page.landing.image=images/develop/app_components.png
+page.image=images/develop/app_components.png
+
+@jd:body
+
+<div class="landing-docs">
+
+  <div class="col-6">
+    <h3>Статьи блога</h3>
+    
+    <a href="http://android-developers.blogspot.com/2012/05/using-dialogfragments.html">
+      <h4>Использование класса DialogFragment</h4>
+      <p>В этой статье я расскажу, как с помощью DialogFragment с использованием вспомогательной библиотеки v4 (в целях обеспечения совместимости с устройствами, работающими под управлением системы с версией ниже, чем Honeycomb) можно отобразить простое диалоговое окно редактирования и вернуть результат в вызывающую операцию с помощью интерфейса.</p>
+    </a>
+
+    <a href="http://android-developers.blogspot.com/2011/03/fragments-for-all.html">
+      <h4>Фрагменты для всех</h4>
+      <p>Сегодня мы выпустили библиотеку статических элементов, которая предоставляет доступ к тому же Fragments API (а также новому классу LoaderManager и нескольким другим классам), с тем чтобы приложения, совместимые с Android 1.6 и более поздними версиями, могли использовать фрагменты для создания пользовательских интерфейсов для планшетов. </p>
+    </a>
+    
+    <a href="http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html">
+      <h4>Многопоточность для повышения производительности</h4>
+      <p>Для создания быстро реагирующих приложений рекомендуется, чтобы в основном потоке пользовательского интерфейса
+выполнялся минимальный объем работы. Любая задача, которая в принципе может выполнять долго и привести к зависанию приложения, должна
+обрабатываться в другом потоке.</p>
+    </a>
+  </div>
+
+  <div class="col-6">
+    <h3>Обучение</h3>
+    
+    <a href="http://developer.android.com/training/basics/activity-lifecycle/index.html">
+      <h4>Управление жизненным циклом операций</h4>
+      <p>В этом учебном курсе разъясняются важные методы обратного вызова жизненного цикла, которые получает каждый экземпляр
+ операции, и описывается, как их использовать, чтобы операция выполнялась так, как этого ожидает пользователь, и не потребляла системные
+ ресурсы, когда они ей не нужны.</p>
+    </a>
+
+    <a href="http://developer.android.com/training/basics/fragments/index.html">
+      <h4>Создание динамического интерфейса пользователя с использованием фрагментов</h4>
+      <p>Данный курс обучения посвящен созданию динамического интерфейса пользователя с использованием
+фрагментов и его оптимизации для устройств с экранами разных размеров, включая поддержку
+устройств с версией Android 1.6.</p>
+    </a>
+
+    <a href="http://developer.android.com/training/sharing/index.html">
+      <h4>Общий доступ к контенту</h4>
+      <p>В этом курсе обучения рассказывается о некоторых стандартных способах отправки и получения контента
+ приложениями с помощью API-интерфейсов Intent и объекта ActionProvider.</p>
+    </a>
+  </div>
+
+</div>
diff --git a/docs/html-intl/intl/ru/guide/components/intents-filters.jd b/docs/html-intl/intl/ru/guide/components/intents-filters.jd
new file mode 100644
index 0000000..d710081
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/intents-filters.jd
@@ -0,0 +1,899 @@
+page.title=Объекты Intent и фильтры объектов Intent
+page.tags="IntentFilter"
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Содержание документа</h2>
+<ol>
+  <li><a href="#Types">Типы объектов Intent</a></li>
+  <li><a href="#Building">Создание объекта Intent</a>
+    <ol>
+      <li><a href="#ExampleExplicit">Пример явного объекта Intent</a></li>
+      <li><a href="#ExampleSend">Пример неявного объекта Intent</a></li>
+      <li><a href="#ForceChooser">Принудительное использование блока выбора приложения</a></li>
+    </ol>
+  </li>
+  <li><a href="#Receiving">Получение неявного объекта Intent</a>
+    <ol>
+      <li><a href="#ExampleFilters">Примеры фильтров</a></li>
+    </ol>
+  </li>
+  <li><a href="#PendingIntent">Использование ожидающего объекта Intent</a></li>
+  <li><a href="#Resolution">Разрешение объектов Intent</a>
+    <ol>
+      <li><a href="#ActionTest">Тестирование действия</a></li>
+      <li><a href="#CategoryTest">Тестирование категории</a></li>
+      <li><a href="#DataTest">Тестирование данных</a></li>
+      <li><a href="#imatch">Сопоставление объектов Intent</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>См. также</h2>
+<ol>
+<li><a href="{@docRoot}training/basics/intents/index.html">Взаимодействие с другими приложениями</a></li>
+<li><a href="{@docRoot}training/sharing/index.html">Общий доступ к контенту</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+
+<p>{@link android.content.Intent} представляет собой объект обмена сообщениями, с помощью которого можно запросить выполнение действия
+у <a href="{@docRoot}guide/components/fundamentals.html#Components">компонента другого приложения</a>.
+Несмотря на то, что объекты Intent упрощают обмен данными между компонентами по нескольким аспектам, в основном они используются
+в трех ситуациях:</p>
+
+<ul>
+<li><b>Для запуска операции:</b>
+<p>Компонент {@link android.app.Activity} представляет собой один экран в приложении. Для запуска нового
+экземпляра компонента {@link android.app.Activity} необходимо передать объект {@link android.content.Intent}
+методу{@link android.content.Context#startActivity startActivity()}. Объект {@link android.content.Intent}
+описывает операцию, которую требуется запустить, а также содержит все остальные необходимые данные.</p>
+
+<p>Если после завершения операции от нее требуется получить результат,
+вызовите метод {@link android.app.Activity#startActivityForResult
+startActivityForResult()}. Ваша операция получит результат
+в виде отдельного объекта {@link android.content.Intent} в обратном вызове метода {@link
+android.app.Activity#onActivityResult onActivityResult()} операции.
+Подробные сведения см. в руководстве <a href="{@docRoot}guide/components/activities.html">Операции</a>.</p></li>
+
+<li><b>Для запуска службы:</b>
+<p>{@link android.app.Service} является компонентом, который выполняет действия в фоновом режиме
+без пользовательского интерфейса. Службу можно запустить для выполнения однократного действия
+(например, чтобы загрузить файл), передав объект{@link android.content.Intent}
+методу {@link android.content.Context#startService startService()}. Объект {@link android.content.Intent}
+описывает службу, которую требуется запустить, а также содержит все остальные необходимые данные.</p>
+
+<p>Если служба сконструирована с интерфейсом клиент-сервер, к ней
+можно установить привязку из другого компонента, передав объект{@link android.content.Intent} методу {@link
+android.content.Context#bindService bindService()}</code>. Подробные сведения см. в руководстве <a href="{@docRoot}guide/components/services.html">Службы</a>.</p></li>
+
+<li><b>Для рассылки широковещательных сообщений:</b>
+<p>Широковещательное сообщение ― это сообщение, которое может принять любое приложение. Система выдает различные
+широковещательные сообщения о системных событиях, например, когда система загружается или устройство начинает заряжаться.
+Для выдачи широковещательных сообщений другим приложениям необходимо передать объект {@link android.content.Intent}
+методу {@link android.content.Context#sendBroadcast(Intent) sendBroadcast()},
+{@link android.content.Context#sendOrderedBroadcast(Intent, String)
+sendOrderedBroadcast()} или {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}.</p>
+</li>
+</ul>
+
+
+
+
+<h2 id="Types">Типы объектов Intent</h2>
+
+<p>Есть два типа объектов Intent:</p>
+
+<ul>
+<li><b>Явные объекты Intent</b> указывают компонент, который требуется запустить, по имени (
+полное имя класса). Явные объекты Intent обычно используются для запуска компонента из
+вашего собственного приложения, поскольку вам известно имя класса операции или службы, которую необходимо запустить. Например
+, можно запустить новую операцию в ответ на действие пользователя или запустить службу, чтобы загрузить
+файл в фоновом режиме.</li>
+
+<li><b>Неявные объекты Intent</b> не содержат имени конкретного компонента. Вместо этого они в целом объявляют действие,
+которое требуется выполнить, что дает возможность компоненту из другого приложения обработать этот запрос. Например, если требуется
+показать пользователю место на карте, то с помощью неявного объекта Intent можно запросить, чтобы это сделало другое приложение, в котором
+такая возможность предусмотрена.</li>
+</ul>
+
+<p>Когда создан явный объект Intent для запуска операции или службы, система немедленно
+запускает компонент приложения, указанный в объекте {@link android.content.Intent}.</p>
+
+<div class="figure" style="width:446px">
+<img src="{@docRoot}images/components/intent-filters@2x.png" width="446" alt="" />
+<p class="img-caption"><strong>Рисунок 1.</strong> Схематическое изображение процесса передачи неявного объекта Intent
+по системе для запуска другой операции: <b>[1]</b> <em>Операция А</em> создает объект
+{@link android.content.Intent} с описанием действия и передает его методу {@link
+android.content.Context#startActivity startActivity()}. <b>[2]</b> Система Android ищет во всех
+приложениях фильтры Intent, которые соответствуют данному объекту Intent. Когда приложение с подходящим фильтром найдено, <b>[3]</b> система
+запускает соответствующую операцию (<em>Операция B</em>), вызвав ее метод {@link
+android.app.Activity#onCreate onCreate()} и передав ему объект {@link android.content.Intent}.
+</p>
+</div>
+
+<p>Когда создан неявный объект Intent, система Android находит подходящий компонент путем
+сравнения содержимого объекта Intent с <em>фильтрами Intent</em>, объявленными в <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">файлах манифеста</a> других приложений, имеющихся на
+устройстве. Если объект Intent совпадает с фильтром Intent, система запускает этот компонент и передает ему
+объект {@link android.content.Intent}. Если подходящими оказываются несколько фильтров Intent, система
+выводит диалоговое окно, где пользователь может выбрать приложение для выполнения данного действия.</p>
+
+<p>Фильтр Intent представляет собой выражение в файле манифеста приложения,
+указывающее типы объектов Intent, которые мог бы
+принимать компонент. Например, объявив фильтр Intent для операции,
+вы даете другим приложениям возможность напрямую запускать вашу операцию с помощью некоторого объекта Intent.
+Точно так же, если вы <em>не</em> объявите какие-либо фильтры Intent для операции, то ее можно будет запустить
+только с помощью явного объекта Intent.</p>
+
+<p class="caution"><strong>Внимание!</strong> В целях обеспечения безопасности приложения всегда используйте явный объект
+Intent при запуске {@link android.app.Service} и не
+объявляйте фильтры Intent для своих служб. Запуск служб с помощью неявных объектов Intent является
+рискованным с точки зрения безопасности, поскольку нельзя быть на абсолютно уверенным, какая служба отреагирует на такой объект Intent,
+а пользователь не может видеть, какая служба запускается. Начиная с Android 5.0 (уровень API 21) система
+вызывает исключение при вызове метода {@link android.content.Context#bindService bindService()}
+с помощью неявного объекта Intent.</p>
+
+
+
+
+
+<h2 id="Building">Создание объекта Intent</h2>
+
+<p>Объект {@link android.content.Intent} содержит информацию, на основании которой система Android
+определяет, какой компонент требуется запустить (например, точное имя компонента или категорию
+компонентов, которые должны получить этот объект Intent), а также сведения, которые необходимы компоненту-получателю,
+чтобы надлежащим образом выполнить действие (а именно — выполняемое действие и данные, с которыми его требуется выполнить).</p>
+
+
+<p>Основные сведения, содержащиеся в объекте {@link android.content.Intent}:</p>
+
+<dl>
+
+<dt><b>Имя компонента</b></dt>
+<dd>Имя компонента, который требуется запустить.
+
+<p>Эта информация является необязательной, но именно она и делает объект Intent
+<b>явным</b>. Ее наличие означает, что объект Intent следует доставить только компоненту приложения,
+определенному по имени. При отсутствии имени компонента объект Intent является <b>неявным</b>, а
+система определяет, какой компонент получит этот объект Intent по другим сведениям, которые в нем содержатся
+(например, по действию, данным и категории &mdash; см. описание далее). Поэтому, если вам требуется запустить определенный
+компонент из своего приложения, следует указать его имя.</p>
+
+<p class="note"><strong>Примечание.</strong> При запуске {@link android.app.Service} следует
+<strong>всегда указывать имя компонента</strong>. В противном случае вы не сможете быть на абсолютно уверенным в том, какая служба
+отреагирует на объект Intent, а пользователь не может видеть, какая служба запускается.</p>
+
+<p>Это поле объекта {@link android.content.Intent} представляет собой объект
+{@link android.content.ComponentName}, который можно указать с помощью полного
+имени класса целевого компонента, включая имя пакета приложения. Например,
+{@code com.example.ExampleActivity}. Задать имя компонента можно с помощью метода {@link
+android.content.Intent#setComponent setComponent()}, {@link android.content.Intent#setClass
+setClass()}, {@link android.content.Intent#setClassName(String, String) setClassName()} или конструктора
+{@link android.content.Intent}.</p>
+
+</dd>
+
+<p><dt><b>Действие</b></dt>
+<dd>Строка, определяющая стандартное действие, которое требуется выполнить (например, <em>view</em> (просмотр) или <em>pick</em> (выбор)).
+
+<p>При выдаче объектов Intent с широковещательными сообщениями это действие, которое произошло и о котором сообщается.
+Действие в значительной степени определяет, каким образом структурирована остальная часть объекта Intent,&mdash;в частности,
+что именно содержится в разделе данных и дополнительных данных.
+
+<p>Для использования объектами Intent в пределах своего приложения (либо для использования другими
+приложениями, чтобы вызывать компоненты из вашего приложения) можно указать собственные действия. Обычно же следует использовать константы действий,
+определенные классом {@link android.content.Intent} или другими классами платформы. Вот несколько
+стандартных действий для запуска операции:</p>
+
+<dl>
+<dt>{@link android.content.Intent#ACTION_VIEW}</dt>
+   <dd>Используйте это действие в объекте Intent с методом {@link
+   android.content.Context#startActivity startActivity()}, когда имеется определенная информация, которую
+   операция может показать пользователю, например, фотография в приложении галереи или адрес для
+   просмотра в картографическом приложении.</dd>
+
+<dt>{@link android.content.Intent#ACTION_SEND}</dt>
+   <dd>Его еще называют объектом Intent "share" (намерение предоставить общий доступ). Это действие следует использовать в объекте Intent с методом {@link
+   android.content.Context#startActivity startActivity()}, при наличии определенных данных, доступ к которым пользователь может
+   предоставить через другое приложение, например приложение для работы с электронной почтой или социальными сетями.</dd>
+</dl>
+
+<p>Другие константы, определяющие стандартные действия, см. в справочнике по классу {@link android.content.Intent}
+.  Другие действия определяются
+в других частях платформы Android. Например, в {@link android.provider.Settings} определяются действия,
+открывающие ряд экранов приложения настройки системы.</p>
+
+<p>Действие можно указать для объекта Intent с методом {@link android.content.Intent#setAction
+setAction()} или конструктором {@link android.content.Intent}.</p>
+
+<p>Если вы определяете собственные действия, обязательно используйте в качестве их префикса имя пакета
+вашего приложения. Например:</p>
+<pre>static final String ACTION_TIMETRAVEL = "com.example.action.TIMETRAVEL";</pre>
+</dd>
+
+<dt><b>Данные</b></dt>
+<dd>URI (объект {@link android.net.Uri}), ссылающийся на данные, с которыми будет выполняться действие и/или
+тип MIME этих данных. Тип передаваемых данных обычно определяется действием объекта Intent. Например,
+если действием является {@link android.content.Intent#ACTION_EDIT}, в данных должен содержаться
+URI документа, который требуется отредактировать.
+
+<p>При создании объекта Intent,
+помимо URI, зачастую бывает важно указать тип данных (их тип MIME).
+Например, операция, которая может выводить на экран изображения, скорее всего, не сможет
+воспроизвести аудиофайл, даже если и у тех, и у других данных будут одинаковые форматы URI.
+Поэтому указание типа MIME данных помогает системе Android
+найти наиболее подходящий компонент для получения вашего объекта Intent.
+Однако тип MIME иногда можно унаследовать от URI &mdash; в частности, когда данные представляют собой
+{@code content:} URI, который указывает, что данные находятся на устройстве и ими управляет
+{@link android.content.ContentProvider}, а это дает возможность системе видеть тип MIME данных.</p>
+
+<p>Чтобы задать только URI данных, вызовите {@link android.content.Intent#setData setData()}.
+Чтобы задать только тип MIME, вызовите {@link android.content.Intent#setType setType()}. При необходимости
+оба этих параметра можно в явном виде задать с помощью {@link
+android.content.Intent#setDataAndType setDataAndType()}.</p>
+
+<p class="caution"><strong>Внимание!</strong> Если требуется задать и URI, и тип MIME,
+<strong>не</strong> вызывайте {@link android.content.Intent#setData setData()} и
+{@link android.content.Intent#setType setType()}, поскольку каждый из этих методов аннулирует результат выполнения другого.
+Чтобы задать URI и тип MIME всегда используйте
+ метод {@link android.content.Intent#setDataAndType setDataAndType()}.</p>
+</dd>
+
+<p><dt><b>Категория</b></dt>
+<dd>Строка, содержащая прочие сведения о том, каким компонентом
+должна выполняться обработка этого объекта Intent.  В объект Intent можно поместить любое количество
+описаний категорий, однако большинству объектов Intent категория не требуется.
+Вот некоторые стандартные категории:
+
+<dl>
+<dt>{@link android.content.Intent#CATEGORY_BROWSABLE}</dt>
+  <dd>Целевая операция позволяет запускать себя веб-браузером для отображения данных,
+       указанных по ссылке &mdash; например, изображения или сообщения электронной почты.
+  </dd>
+<dt>{@link android.content.Intent#CATEGORY_LAUNCHER}</dt>
+  <dd>Эта операция является начальной операцией задачи, она указана в
+       средстве запуска приложений системы.
+  </dd>
+</dl>
+
+<p>Полный список категорий см. в описании класса {@link android.content.Intent}
+.</p>
+
+<p>Указать категорию можно с помощью{@link android.content.Intent#addCategory addCategory()}.</p>
+</dd>
+</dl>
+
+
+<p>Приведенные выше свойства (имя компонента, действие, данные и категория) представляют собой
+характеристики, определяющие объект Intent. На основании этих свойств система Android
+может решить, какой компонент следует запустить.</p>
+
+<p>Однако в объекте Intent может быть приведена и другая информация, которая не влияет на то,
+каким образом определяется требуемый компонент приложения. Объект Intent также может содержать:</p>
+
+<dl>
+<dt><b>Дополнительные данные</b></dt>
+<dd>Пары "ключ-значение", содержащие прочую информацию, которая необходима для выполнения запрошенного действия.
+Точно так же, как некоторые действия используют определенные виды URI данных, некоторые действия используют определенные дополнительные данные.
+
+<p>Добавлять дополнительные данные можно с помощью различных методов {@link android.content.Intent#putExtra putExtra()},
+каждый из которых принимает два параметра: имя и значение ключа.
+Также можно создать объект {@link android.os.Bundle} со всеми дополнительными данными, затем вставить
+объект {@link android.os.Bundle} в объект {@link android.content.Intent} с помощью метода {@link
+android.content.Intent#putExtras putExtras()}.</p>
+
+<p>Например, при создании объекта Intent для отправки сообщения электронной почты с методом
+{@link android.content.Intent#ACTION_SEND} можно указать получателя с помощью ключа
+{@link android.content.Intent#EXTRA_EMAIL}, а тему сообщения ― с помощью ключа
+{@link android.content.Intent#EXTRA_SUBJECT}.</p>
+
+<p>Класс {@link android.content.Intent} указывает много констант {@code EXTRA_*}
+для стандартных типов данных. Если вам требуется объявить собственные дополнительные ключи (для объектов Intent, которые
+принимает ваше приложение), обязательно указывайте в качестве префикса
+имя пакета своего приложения. Например:</p>
+<pre>static final String EXTRA_GIGAWATTS = "com.example.EXTRA_GIGAWATTS";</pre>
+</dd>
+
+<dt><b>Флаги</b></dt>
+<dd>Флаги, определенные в классе {@link android.content.Intent}, которые действуют как метаданные для объекта
+Intent. Флаги должны указывать системе Android, каким образом следует запускать операцию (например, к какой
+<a href="{@docRoot}guide/components/tasks-and-back-stack.html">задаче</a> должна принадлежать операция
+) и как с ней обращаться после запуска (например, будет ли она указана в списке последних
+операций).
+
+<p>Подробные сведения см. в документе, посвященном методу {@link android.content.Intent#setFlags setFlags()}.</p>
+</dd>
+
+</dl>
+
+
+
+
+<h3 id="ExampleExplicit">Пример явного объекта Intent</h3>
+
+<p>Явные объекты Intent используются для запуска конкретных компонентов приложения, например
+определенной операции или службы. Чтобы создать явный объект Intent, задайте
+имя компонента для объекта {@link android.content.Intent} &mdash; все
+остальные свойства объекта Intent можно не задавать.</p>
+
+<p>Например, если в своем приложении вы создали службу с именем {@code DownloadService},
+предназначенную для загрузки файлов из Интернета, то для ее запуска можно использовать следующий код:</p>
+
+<pre>
+// Executed in an Activity, so 'this' is the {@link android.content.Context}
+// The fileUrl is a string URL, such as "http://www.example.com/image.png"
+Intent downloadIntent = new Intent(this, DownloadService.class);
+downloadIntent.setData({@link android.net.Uri#parse Uri.parse}(fileUrl));
+startService(downloadIntent);
+</pre>
+
+<p>Конструктор {@link android.content.Intent#Intent(Context,Class)}
+предоставляет {@link android.content.Context} приложению, а
+компоненту ― объект {@link java.lang.Class}. Фактически
+этот объект Intent явно запускает класс{@code DownloadService} в приложении.</p>
+
+<p>Подробные сведения о создании и запуске службы см. в  руководстве
+<a href="{@docRoot}guide/components/services.html">Службы</a>.</p>
+
+
+
+
+<h3 id="ExampleSend">Пример неявного объекта Intent</h3>
+
+<p>Неявный объект Intent указывает действие, которым может быть вызвано любое имеющееся на устройстве приложение, способное
+выполнить это действие. Неявные объекты Intent используются, когда ваше приложение не может выполнить
+то или иное действие, а другие приложения, скорее всего, могут и вы хотите, чтобы пользователь имел возможность выбрать, какое приложение для этого использовать.</p>
+
+<p>Например, если у вас есть контент и вы хотите, чтобы пользователь поделился им с другими людьми, создайте объект Intent
+с действием {@link android.content.Intent#ACTION_SEND}
+и добавьте дополнительные данные, указывающие на контент, общий доступ к которому следует предоставить. Когда с помощью этого объекта Intent вы вызываете
+{@link android.content.Context#startActivity startActivity()}, пользователь сможет
+выбрать приложение, посредством которого к контенту будет предоставлен общий доступ.</p>
+
+<p class="caution"><strong>Внимание!</strong> Возможна ситуация, когда на устройстве пользователя не будет<em>никакого</em>
+приложения, которое может откликнуться на неявный объект Intent, отправленный вами методу {@link android.content.Context#startActivity
+startActivity()}. В этом случае вызов закончится неудачей, а работа приложения аварийно завершится. Чтобы проверить,
+будет получен ли операцией объект Intent, вызовите метод {@link android.content.Intent#resolveActivity
+resolveActivity()} для своего объекта {@link android.content.Intent}. Если результатом будет значение, отличное от null,
+значит, имеется хотя бы одно приложение, которое способно откликнуться на объект Intent и можно вызывать
+{@link android.content.Context#startActivity startActivity()}. Если же результатом будет значение null,
+объект Intent не следует использовать и по возможности следует отключить функцию, которая выдает
+этот объект Intent.</p>
+
+
+<pre>
+// Create the text message with a string
+Intent sendIntent = new Intent();
+sendIntent.setAction(Intent.ACTION_SEND);
+sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
+sendIntent.setType("text/plain");
+
+// Verify that the intent will resolve to an activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(sendIntent);
+}
+</pre>
+
+<p class="note"><strong>Примечание.</strong> В этом случае URI не используется, а вместо этого следует объявить
+тип данных объекта Intent, чтобы указать контент, содержащийся в дополнительных данных.</p>
+
+
+<p>При вызове метода {@link android.content.Context#startActivity startActivity()} система
+анализирует все установленные приложения, чтобы определить, какие из них могут откликнуться на объект Intent этого вида (объект
+Intent с действием {@link android.content.Intent#ACTION_SEND} и данными "text/plain"
+). Если имеется только одно подходящее приложение, оно будет сразу же открыто и получит данный объект
+Intent. Если объект Intent принимают несколько операций, система
+отображает диалоговое окно, в котором пользователь может выбрать приложение для выполнения данного действия.</p>
+
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/training/basics/intent-chooser.png" alt="">
+  <p class="img-caption"><strong>Рисунок 2.</strong> Диалоговое окно выбора.</p>
+</div>
+
+<h3 id="ForceChooser">Принудительное использование блока выбора приложения</h3>
+
+<p>При наличии нескольких приложений, откликающихся на ваш неявный объект Intent,
+пользователь может выбрать требуемое приложение и указать, что оно будет по умолчанию выполнять это
+действие. Это удобно в случае действия, для выполнения которого
+пользователь обычно хочет всегда использовать одно и то же приложение, например, при открытии веб-страницы (пользователи
+обычно используют один и тот же браузер).</p>
+
+<p>Однако если на объект Intent могут откликнуться несколько приложений, возможно, пользователь предпочтет каждый раз использовать другое
+приложение, поэтому следует явно выводить диалоговое окно выбора. В диалоговом окне
+выбора приложения пользователю предлагается при каждом запуске выбирать, какое приложение использовать для действия (пользователь не может выбрать приложение,
+используемое по умолчанию). Например, когда ваше приложение выполняет операцию "share" (поделиться) с помощью действия {@link
+android.content.Intent#ACTION_SEND}, пользователи могут, в зависимости от ситуации, предпочесть каждый раз делать это с помощью разных приложений
+, поэтому следует всегда использовать диалоговое окно выбора, как показано на рисунке 2.</p>
+
+
+
+
+<p>Чтобы вывести на экран блок выбора приложения, создайте {@link android.content.Intent} с помощью {@link
+android.content.Intent#createChooser createChooser()} и передайте его {@link
+android.app.Activity#startActivity startActivity()}. Например:</p>
+
+<pre>
+Intent sendIntent = new Intent(Intent.ACTION_SEND);
+...
+
+// Always use string resources for UI text.
+// This says something like "Share this photo with"
+String title = getResources().getString(R.string.chooser_title);
+// Create intent to show the chooser dialog
+Intent chooser = Intent.createChooser(sendIntent, title);
+
+// Verify the original intent will resolve to at least one activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(chooser);
+}
+</pre>
+
+<p>В результате на экран будет выведено диалоговое окно со списком приложений, которые могут отреагировать на объект Intent, переданный методу {@link
+android.content.Intent#createChooser createChooser()} и используют указанный текст в качестве
+заголовка диалога.</p>
+
+
+
+
+
+
+
+
+
+<h2 id="Receiving">Получение неявного объекта Intent</h2>
+
+<p>Чтобы указать, какие неявные объекты Intent может принимать ваше приложение, объявите один или несколько фильтров Intent для
+каждого компонента приложения с помощью элемента <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+в <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">файле манифеста</a>.
+Каждый фильтр Intent указывает тип объектов Intent, которые принимает компонент на основании действия,
+данных и категории, заданных в объекте Intent. Система передаст неявный объект Intent вашему приложению, только если
+он может пройти через один из ваших фильтров Intent.</p>
+
+<p class="note"><strong>Примечание.</strong> Явный объект Intent всегда доставляется его целевому компоненту,
+без учета любых фильтров Intent, объявленных компонентом.</p>
+
+<p>Компонент приложения должен объявлять отдельные фильтры для каждой уникальной работы, которую он может выполнить.
+Например, у операции из приложения для работы с галереей изображений может быть два фильтра: один фильтр
+для просмотра изображения, и второй для его редактирования. Когда операция запускается,
+она анализирует объект {@link android.content.Intent} и выбирает режим своей работы на основании информации,
+приведенной в {@link android.content.Intent} (например, показывать элементы управления редактора или нет).</p>
+
+<p>Каждый фильтр Intent определяется элементом <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+в файле манифеста приложения, указанном в объявлении соответствующего компонента приложения (например,
+в элементе <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>).
+ Внутри элемента <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>,
+можно указать тип объектов Intent, которые будут приниматься, с помощью одного или нескольких
+из следующих трех элементов:</p>
+
+<dl>
+<dt><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a></dt>
+  <dd>Объявляет принимаемое действие, заданное в объекте Intent, в атрибуте {@code name}. Значение
+  должно быть текстовой строкой действия, а не константой класса.</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a></dt>
+  <dd>Объявляет тип принимаемых данных, для чего используется один или несколько атрибутов, указывающих различные
+  составные части URI данных (<code>scheme</code>, <code>host</code>, <code>port</code>,
+  <code>path</code> и т. д.) и тип MIME.</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a></dt>
+  <dd>Объявляет принимаемую категорию, заданную в объекте Intent, в атрибуте {@code name}. Значение
+  должно быть текстовой строкой действия, а не константой класса.
+
+  <p class="note"><strong>Примечание.</strong> Для получения неявных объектов Intent
+ <strong>необходимо включить</strong> категорию
+{@link android.content.Intent#CATEGORY_DEFAULT} в фильтр Intent. Методы
+  {@link android.app.Activity#startActivity startActivity()} и
+  {@link android.app.Activity#startActivityForResult startActivityForResult()} обрабатывают все объекты Intent, как если бы они объявляли
+ категорию{@link android.content.Intent#CATEGORY_DEFAULT}.
+  Если вы не объявляете эту категорию в своем фильтре Intent, никакие неявные объекты Intent не будут переданы в
+вашу операцию.</p>
+  </dd>
+</dl>
+
+<p>В следующем примере объявлена операция с фильтром Intent, определяющим получение объекта Intent
+{@link android.content.Intent#ACTION_SEND}, когда данные относятся к типу text:</p>
+
+<pre>
+&lt;activity android:name="ShareActivity">
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>Можно создавать фильтры, в которых будет несколько экземпляров
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a>,
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> или
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a>.
+В этом случае просто нужно убедиться в том, что компонент может справиться с любыми сочетаниями
+этих элементов фильтра.</p>
+
+<p>Когда требуется обрабатывать объекты Intent нескольких видов, но только в определенных сочетаниях
+действия, типа данных и категории, необходимо создать несколько фильтров Intent.</p>
+
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Ограничение доступа к компонентам</h2>
+<p>Использование фильтра Intent не является безопасным способом предотвращения запуска ваших компонентов
+другими приложениями. Несмотря на то, что после применения фильтров Intent компонент будет реагировать только
+на неявные объекты Intent определенного вида, другое приложение теоретически может запустить компонент вашего приложения
+с помощью явного объекта Intent, если разработчик определит имена ваших компонентов.
+Если важно, чтобы <em>только ваше собственное приложение</em> могло запускать один из ваших компонентов,
+задайте для атрибута <a href="{@docRoot}guide/topics/manifest/activity-element.html#exported">{@code
+exported}</a> этого компонента значение {@code "false"}.
+</p>
+</div>
+</div>
+
+<p>Неявный объект Intent проверяется фильтром путем сравнения объекта Intent с каждым из
+этих трех элементов. Чтобы объект Intent был доставлен компоненту, он должен пройти все три теста.
+Если он не будет соответствовать хотя бы одному из них, система Android не доставит этот объект Intent
+компоненту.  Однако, поскольку у компонента может быть несколько фильтров Intent, объект Intent, который
+не проходит через один из фильтров компонента, может пройти через другой фильтр.
+Подробные сведения о том, каким образом система принимает решения по поводу объектов Intent, см. в приведенном далее разделе
+ <a href="#Resolution">Разрешение объектов Intent</a>.</p>
+
+<p class="caution"><strong>Внимание!</strong> Чтобы случайно не запустить
+{@link android.app.Service} другого приложения, всегда используйте явные объекты Intent для запуска собственных служб и не
+объявляйте для них фильтры Intent.</p>
+
+<p class="note"><strong>Примечание.</strong>
+Фильтры Intent необходимо объявлять в файле манифеста для всех операций.
+Фильтры для приемников широковещательных сообщений можно регистрировать динамически путем вызова
+{@link android.content.Context#registerReceiver(BroadcastReceiver, IntentFilter, String,
+Handler) registerReceiver()}. После этого регистрацию приемника широковещательных сообщений можно отменить с помощью {@link
+android.content.Context#unregisterReceiver unregisterReceiver()}. В результате ваше приложение
+сможет воспринимать определенные объявления только в течение указанного периода времени в процессе работы
+приложения.</p>
+
+
+
+
+
+
+
+<h3 id="ExampleFilters">Примеры фильтров</h3>
+
+<p>Чтобы лучше понять различные режимы работы фильтров Intent, рассмотрите следующий фрагмент
+из файла манифеста приложения для работы с социальными сетями.</p>
+
+<pre>
+&lt;activity android:name="MainActivity">
+    &lt;!-- This activity is the main entry, should appear in app launcher -->
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.MAIN" />
+        &lt;category android:name="android.intent.category.LAUNCHER" />
+    &lt;/intent-filter>
+&lt;/activity>
+
+&lt;activity android:name="ShareActivity">
+    &lt;!-- This activity handles "SEND" actions with text data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter&gt;
+    &lt;!-- This activity also handles "SEND" and "SEND_MULTIPLE" with media data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;action android:name="android.intent.action.SEND_MULTIPLE"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="application/vnd.google.panorama360+jpg"/>
+        &lt;data android:mimeType="image/*"/>
+        &lt;data android:mimeType="video/*"/>
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>Первая операция ({@code MainActivity}) является основной точкой входа приложения &mdash; это операция, которая
+открывается, когда пользователь запускает приложение нажатием на его значок:</p>
+<ul>
+  <li>Действие {@link android.content.Intent#ACTION_MAIN}
+ указывает на то, что это основная точка входа, и не ожидает никаких данных объекта Intent.</li>
+  <li>Категория {@link android.content.Intent#CATEGORY_LAUNCHER} указывает, что значок этой операции
+ следует поместить в средство запуска приложений системы. Если элемент <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+ не содержит указаний на конкретный значок с помощью {@code icon}, то система воспользуется значком из элемента <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+.</li>
+</ul>
+<p>Чтобы операция отображалась в средстве запуска приложений системы, два этих элемента необходимо связать вместе.</p>
+
+<p>Вторая операция ({@code ShareActivity}) предназначена для упрощения обмена текстовым и мультимедийным
+контентом. Несмотря на то, что пользователи могут входить в эту операцию, выбрав ее из {@code MainActivity},
+они также могут входить в {@code ShareActivity} напрямую из другого приложения, которое выдает неявный объект
+Intent, соответствующий одному из двух фильтров Intent.</p>
+
+<p class="note"><strong>Примечание.</strong> Тип MIME
+(<a href="https://developers.google.com/panorama/android/">{@code
+application/vnd.google.panorama360+jpg}</a>) является особым типом данных, указывающим на
+панорамные фотографии, с которыми можно работать с помощью API-интерфейсов <a href="{@docRoot}reference/com/google/android/gms/panorama/package-summary.html">Google
+panorama</a>.</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+<h2 id="PendingIntent">Использование ожидающего объекта Intent</h2>
+
+<p>Объект {@link android.app.PendingIntent} является оболочкой, в которую заключается объект {@link
+android.content.Intent}. Объект {@link android.app.PendingIntent}
+в основном предназначен для того, чтобы предоставлять разрешение внешним приложениям
+на использование содержащегося в нем объекта {@link android.content.Intent}, как если бы он исполнялся из
+процесса вашего собственного приложения.</p>
+
+<p>Основные варианты использования ожидающего объекта Intent:</p>
+<ul>
+  <li>Объявление объекта Intent, который должен будет исполняться, когда пользователь выполняет действие с вашим <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">уведомлением</a>
+  ({@link android.app.NotificationManager} системы Android
+ исполняет {@link android.content.Intent}).
+  <li>Объявление объекта Intent, который должен будет исполняться, когда пользователь выполняет действие с вашим
+<a href="{@docRoot}guide/topics/appwidgets/index.html">виджетом приложения</a>
+  (приложение главного экрана исполняет {@link android.content.Intent}).
+  <li>Объявление объекта Intent, который должен будет исполняться в указанное время в будущем ({@link android.app.AlarmManager} системы
+Android исполняет {@link android.content.Intent}).
+</ul>
+
+<p>Поскольку каждый объект {@link android.content.Intent} предназначен для обработки компонентом приложения,
+который относится к определенному типу ({@link android.app.Activity}, {@link android.app.Service} или
+ {@link android.content.BroadcastReceiver}), объект {@link android.app.PendingIntent} также следует создавать
+с учетом этого обстоятельства. При использовании ожидающего объекта Intent ваше приложение не будет
+исполнять объект Intent вызовом, например, {@link android.content.Context#startActivity
+startActivity()}. Вместо этого вам необходимо будет объявить требуемый тип компонента при создании
+{@link android.app.PendingIntent} путем вызова соответствующего метода-создателя:</p>
+
+<ul>
+  <li>Метод {@link android.app.PendingIntent#getActivity PendingIntent.getActivity()} для
+  {@link android.content.Intent}, который запускает {@link android.app.Activity}.</li>
+  <li>Метод {@link android.app.PendingIntent#getService PendingIntent.getService()} для
+  {@link android.content.Intent}, который запускает {@link android.app.Service}.</li>
+  <li>Метод {@link android.app.PendingIntent#getBroadcast PendingIntent.getBroadcast()} для
+  {@link android.content.Intent}, который запускает {@link android.content.BroadcastReceiver}.</li>
+</ul>
+
+<p>Если только ваше приложение не <em>принимает</em> ожидающие объекты Intent от других приложений,
+указанные выше методы создания {@link android.app.PendingIntent} являются единственными методами
+{@link android.app.PendingIntent}, которые вам когда-либо понадобятся.</p>
+
+<p>Каждый метод принимает текущий {@link android.content.Context} приложения, объект
+{@link android.content.Intent}, который требуется поместить в оболочку, и один или несколько флагов, указывающих,
+каким образом следует использовать объект Intent (например, можно ли использовать объект Intent неоднократно).</p>
+
+<p>Подробные сведения об использовании ожидающих объектов Intent приведены в документации по каждому
+из соответствующих вариантов использования, например, в руководствах, посвященным API-интерфейсам: <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Уведомления</a>
+и <a href="{@docRoot}guide/topics/appwidgets/index.html">Виджеты приложений</a>.</p>
+
+
+
+
+
+
+
+<h2 id="Resolution">Разрешение объектов Intent</h2>
+
+
+<p>Когда система получает неявный объект Intent для запуска операции, она выполняет поиск
+наиболее подходящей операции путем сравнения объекта Intent с фильтрами Intent по трем критериям:</p>
+
+<ul>
+  <li>действие объекта Intent;
+  <li>данные объекта Intent (тип URI и данных);
+  <li>категория объекта Intent.
+</ul>
+
+<p>В следующих разделах описывается, каким образом объекты Intent сопоставляются с соответствующими компонентами,
+а именно, как должен быть фильтр Intent объявлен в файле манифеста приложения.</p>
+
+
+<h3 id="ActionTest">Тестирование действия</h3>
+
+<p>Для указания принимаемых действий объекта Intent фильтр Intent может объявлять любое (в том числе нулевое) число элементов
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+action&gt;}</a>.  Например:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.VIEW" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Чтобы пройти через этот фильтр, действие, указанное в объекте {@link android.content.Intent},
+ должно соответствовать одному или нескольким действиям, перечисленным в фильтре.</p>
+
+<p>Если в фильтре не перечислены какие-либо действия, объекту
+Intent будет нечему соответствовать, поэтому все объекты Intent не пройдут этот тест. Однако, если в объекте {@link android.content.Intent}
+не указано действие, он пройдет тест (если в фильтре
+содержится хотя бы одно действие).</p>
+
+
+
+<h3 id="CategoryTest">Тестирование категории</h3>
+
+<p>Для указания принимаемых категорий объекта Intent фильтр Intent может объявлять любое (в том числе нулевое) число элементов
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a>.  Например:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+    &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Чтобы объект Intent прошел тестирование категории, все категории, приведенные в объекте {@link android.content.Intent},
+должны соответствовать категории из фильтра. Обратное не требуется &mdash; фильтр Intent может
+объявлять и другие категории, которых нет в объекте {@link android.content.Intent}, объект
+{@link android.content.Intent} при этом все равно пройдет тест. Поэтому объект Intent без категорий
+всегда пройдет этот тест, независимо от того, какие категории объявлены в фильтре.</p>
+
+<p class="note"><strong>Примечание.</strong>
+Система Android автоматически применяет категорию {@link android.content.Intent#CATEGORY_DEFAULT}
+ко всем неявным объектам Intent, которые передаются в {@link
+android.content.Context#startActivity startActivity()} и {@link
+android.app.Activity#startActivityForResult startActivityForResult()}.
+Поэтому, если вы хотите, чтобы ваша операция принимала неявные объекты Intent, в ее фильтрах Intent
+должна быть указана категория для {@code "android.intent.category.DEFAULT"} (как
+показано в предыдущем примере {@code &lt;intent-filter&gt;}).</p>
+
+
+
+<h3 id="DataTest">Тестирование данных</h3>
+
+<p>Для указания принимаемых данных объекта Intent фильтр Intent может объявлять любое (в том числе нулевое) число элементов
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a>.  Например:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="video/mpeg" android:scheme="http" ... /&gt;
+    &lt;data android:mimeType="audio/mpeg" android:scheme="http" ... /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Каждый элемент <code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+может конкретизировать структуру URI и тип данных (тип мультимедиа MIME).  Имеются отдельные
+атрибуты &mdash; {@code scheme}, {@code host}, {@code port}
+и {@code path} &mdash; для каждой составной части URI:
+</p>
+
+<p style="margin-left: 2em">{@code &lt;scheme&gt;://&lt;host&gt;:&lt;port&gt;/&lt;path&gt;}</p>
+
+<p>
+Например:
+</p>
+
+<p style="margin-left: 2em">{@code content://com.example.project:200/folder/subfolder/etc}</p>
+
+<p>В этом URI схема имеет вид {@code content}, узел ―  {@code com.example.project},
+порт ― {@code 200}, а путь ― {@code folder/subfolder/etc}.
+</p>
+
+<p>Каждый из этих атрибутов является необязательным в элементе <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>,
+однако имеются линейные зависимости:</p>
+<ul>
+  <li>Если схема не указана, узел игнорируется.</li>
+  <li>Если узел не указан, порт игнорируется.</li>
+  <li>Если не указана ни схема, ни узел, путь игнорируется.</li>
+</ul>
+
+<p>Когда URI, указанный в объекте Intent, сравнивается с URI из фильтра,
+сравнение выполняется только с теми составными частями URI, которые приведены в фильтре. Например:</p>
+<ul>
+  <li>Если в фильтре указана только схема, то все URI с этой схемой будет соответствовать
+фильтру.</li>
+  <li>Если в фильтре указаны схема и полномочия, но отсутствует путь, все URI
+с такими же схемой и полномочиями пройдут фильтр, а их пути учитываться не будут.</li>
+  <li>Если в фильтре указаны схема, полномочия и путь, то только URI с такими же схемой,
+полномочиями и путем пройдут фильтр.</li>
+</ul>
+
+<p class="note"><strong>Примечание.</strong> Путь может быть
+указан с подстановочным символом (*), чтобы потребовалось только частичное соответствие имени пути.</p>
+
+<p>При выполнении тестирования данных сравнивается и URI, и тип MIME, указанные в объекте Intent, с URI
+и типом MIME из фильтра.  Действуют следующие правила:
+</p>
+
+<ol type="a">
+<li>Объект Intent, который не содержит ни URI, ни тип MIME, пройдет этот
+тест, только если в фильтре не указано никаких URI или типов MIME.</li>
+
+<li>Объект Intent, в котором имеется URI, но отсутствует тип MIME (ни явный, ни тот, который можно вывести из
+URI), пройдет этот тест, только если URI соответствует формату URI из фильтра
+, а в фильтре также не указан тип MIME.</li>
+
+<li>Объект Intent, в котором имеется тип MIME, но отсутствует URI, пройдет этот тест,
+только если в фильтре указан тот же тип MIME и не указан формат URI.</li>
+
+<li>Объект Intent, в котором имеется и URI, и тип MIME (явный или тот, который можно вывести из
+URI), пройдет только часть этого теста, проверяющую тип MIME,
+в том случае, если этот тип совпадает с типом, приведенным в фильтре.  Он пройдет часть этого теста, которая проверяет URI,
+либо если его URI совпадает с URI из фильтра, либо если этот объект содержит URI {@code content:}
+или {@code file:}, а в фильтре URI не указан. Другими словами,
+предполагается, что компонент поддерживает данные {@code content:} и {@code file:}, если в его
+фильтре указан <em>только</em> тип MIME.</p></li>
+</ol>
+
+<p>
+Это последнее правило (правило (d)) отражает ожидание того,
+что компоненты будут в состоянии получать локальные данные из файла или от поставщика контента.
+Поэтому их фильтры могут содержать только тип данных, а явно
+указывать схемы {@code content:} и {@code file:} не требуется.
+Это типичный случай.  Например, такой элемент <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>, как
+приведенный далее, сообщает системе Android, что компонент может получать данные изображений от поставщика
+контента и выводить их на экран:
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="image/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+<p>
+Поскольку имеющиеся данные преимущественно распространяются поставщиками контента, фильтры, в которых
+указан тип данных и нет URI, вероятно, являются самыми распространенными.
+</p>
+
+<p>
+Другой стандартной конфигурацией являются фильтры со схемой и типом данных.  Например,
+такой элемент <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>,
+как приведенный далее, сообщает системе Android, что
+компонент может получать видеоданные из сети для выполнения действия:
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:scheme="http" android:type="video/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+
+
+<h3 id="imatch">Сопоставление объектов Intent</h3>
+
+<p>Объекты Intent сопоставляются с фильтрами Intent не только для определения целевого
+компонента, который требуется активировать, но также для выявления определенных сведений о наборе
+компонентов, имеющихся на устройстве.  Например, приложение главного экрана заполняет средство запуска приложений
+путем поиска всех операций с фильтрами Intent, в которых указано действие
+{@link android.content.Intent#ACTION_MAIN} и категория
+{@link android.content.Intent#CATEGORY_LAUNCHER}.</p>
+
+<p>Ваше приложение может использовать сопоставление объектов Intent таким же образом.
+В {@link android.content.pm.PackageManager} имеется набор методов {@code query...()},
+которые возвращают все компоненты, способные принять определенный объект, а также
+схожий набор методов {@code resolve...()}, которые определяют наиболее подходящий
+компонент, способный реагировать на объект Intent.  Например, метод
+{@link android.content.pm.PackageManager#queryIntentActivities
+queryIntentActivities()} возвращает передаваемый как аргумент список всех операций, которые могут выполнить
+объект Intent, а метод {@link
+android.content.pm.PackageManager#queryIntentServices
+queryIntentServices()} возвращает такой же список служб.
+Ни тот, ни другой метод не активирует компоненты; они просто перечисляют те из них, которые
+могут откликнуться.  Имеется схожий метод для приемников широковещательных сообщений (
+{@link android.content.pm.PackageManager#queryBroadcastReceivers
+).
+</p>
+
+
+
+
diff --git a/docs/html-intl/intl/ru/guide/components/loaders.jd b/docs/html-intl/intl/ru/guide/components/loaders.jd
new file mode 100644
index 0000000..eea72a2
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/loaders.jd
@@ -0,0 +1,494 @@
+page.title=Загрузчики
+parent.title=Операции
+parent.link=activities.html
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>Содержание документа</h2>
+    <ol>
+    <li><a href="#summary">Сводная информация об API-интерфейсе загрузчика</a></li>
+    <li><a href="#app">Использование загрузчиков в приложении</a>
+      <ol>
+        <li><a href="#requirements"></a></li>
+        <li><a href="#starting">Запуск загрузчика</a></li>
+        <li><a href="#restarting">Перезапуск загрузчика</a></li>
+        <li><a href="#callback">Использование обратных вызовов класса LoaderManager</a></li>
+      </ol>
+    </li>
+    <li><a href="#example">Пример</a>
+       <ol>
+         <li><a href="#more_examples">Другие примеры</a></li>
+        </ol>
+    </li>
+  </ol>
+    
+  <h2>Основные классы</h2>
+    <ol>
+      <li>{@link android.app.LoaderManager}</li>
+      <li>{@link android.content.Loader}</li>
+
+    </ol>   
+    
+    <h2>Образцы кода по теме</h2>
+   <ol>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a></li>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html">
+LoaderThrottle</a></li>
+   </ol>
+  </div>
+</div>
+
+<p>Загрузчики, которые появились в Android 3.0, упрощают асинхронную загрузку данных
+в операцию или фрагмент. Загрузчики имеют следующие свойства:</p>
+  <ul>
+    <li>Они имеются для любых операций {@link android.app.Activity} и фрагментов {@link
+android.app.Fragment}.</li>
+    <li>Они обеспечивают асинхронную загрузку данных.</li>
+    <li>Они отслеживают источник своих данных и выдают новые результаты при
+изменении контента.</li>
+    <li>Они автоматически переподключаются к последнему курсору загрузчика при
+воссоздании после изменения конфигурации. Таким образом, им не требуется повторно запрашивать свои
+данные.</li>
+  </ul>
+ 
+<h2 id="summary">Сводная информация об API-интерфейсе загрузчика</h2>
+
+<p>Имеется несколько классов и интерфейсов, которые могут использовать
+загрузчики в приложении. Они приведены в этой таблице:</p>
+
+<table>
+  <tr>
+    <th>Класс/интерфейс</th>
+    <th>Описание</th>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager}</td>
+    <td>Абстрактный класс, связываемый с {@link android.app.Activity} или
+{@link android.app.Fragment} для управления одним или несколькими интерфейсами {@link
+android.content.Loader}. Это позволяет приложению управлять
+длительно выполняющимися операциями вместе с жизненным циклом {@link android.app.Activity}
+или {@link android.app.Fragment}; чаще всего этот класс используется с 
+{@link android.content.CursorLoader}, однако приложения могут писать
+свои собственные загрузчики для работы с другими типами данных.
+    <br />
+    <br />
+    Имеется только один класс {@link android.app.LoaderManager} на операцию или фрагмент. Однако у класса {@link android.app.LoaderManager} может быть
+несколько загрузчиков.</td>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager.LoaderCallbacks}</td>
+    <td>Интерфейс обратного вызова, обеспечивающий взаимодействие клиента с {@link
+android.app.LoaderManager}. Например, с помощью метода обратного вызова {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+создается новый загрузчик.</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.Loader}</td>
+    <td>Абстрактный класс, который выполняет асинхронную загрузку данных. Это
+базовый класс для загрузчика. Обычно используется {@link
+android.content.CursorLoader}, но можно реализовать и собственный подкласс. Когда
+загрузчики активны, они должны отслеживать источник своих данных и выдавать новые
+результаты при изменении контента. </td>
+  </tr>
+  <tr>
+    <td>{@link android.content.AsyncTaskLoader}</td>
+    <td>Абстрактный загрузчик, который предоставляет {@link android.os.AsyncTask} для выполнения работы.</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.CursorLoader}</td>
+    <td>Подкласс класса {@link android.content.AsyncTaskLoader}, который запрашивает
+{@link android.content.ContentResolver} и возвращает {@link
+android.database.Cursor}. Этот класс реализует протокол {@link
+android.content.Loader} стандартным способом для выполнения запросов к курсорам.
+Он строится на {@link android.content.AsyncTaskLoader} для выполнения запроса к курсору
+в фоновом потоке, чтобы не блокировать пользовательский интерфейс приложения. Использование
+этого загрузчика — это лучший способ асинхронной загрузки данных из {@link
+android.content.ContentProvider} вместо выполнения управляемого запроса через
+платформу или API-интерфейсы операции.</td>
+  </tr>
+</table>
+
+<p>Приведенные в этой таблице классы и интерфейсы являются наиболее важными компонентами,
+с помощью которых в приложении реализуется загрузчик. При создании каждого загрузчика
+не нужно использовать все эти компоненты, однако всегда следует указывать ссылку на {@link
+android.app.LoaderManager} для инициализации загрузчика и использовать реализацию
+класса {@link android.content.Loader}, например {@link
+android.content.CursorLoader}. В следующих разделах рассказывается, как использовать эти
+классы и интерфейсы в приложении.</p>
+
+<h2 id ="app">Использование загрузчиков в приложении</h2>
+<p>В этом разделе описывается использование загрузчиков в приложении для Android. В
+приложениях, использующих загрузчики, обычно имеются следующие элементы:</p>
+<ul>
+  <li>{@link android.app.Activity} или {@link android.app.Fragment};</li>
+  <li>экземпляр {@link android.app.LoaderManager};</li>
+  <li>{@link android.content.CursorLoader} для загрузки данных, выдаваемых {@link
+android.content.ContentProvider}. Вы также можете реализовать собственный подкласс
+класса {@link android.content.Loader} или {@link android.content.AsyncTaskLoader} для
+загрузки данных из другого источника;</li>
+  <li>реализация для {@link android.app.LoaderManager.LoaderCallbacks}.
+Именно здесь создаются новые загрузчики и ведется управление ссылками на существующие
+загрузчики;</li> 
+<li>способ отображения данных загрузчика, например {@link
+android.widget.SimpleCursorAdapter};</li>
+  <li>источник данных, например {@link android.content.ContentProvider}, когда используется 
+{@link android.content.CursorLoader}.</li>
+</ul>
+<h3 id="starting">Запуск загрузчика</h3>
+
+<p>{@link android.app.LoaderManager} управляет одним или несколькими экземплярами {@link
+android.content.Loader} в {@link android.app.Activity} или
+{@link android.app.Fragment}. Имеется только один {@link
+android.app.LoaderManager} на каждую операцию или каждый фрагмент.</p> 
+
+<p>{@link android.content.Loader} обычно
+инициализируется в методе {@link
+android.app.Activity#onCreate onCreate()} операции или в методе фрагмента 
+{@link android.app.Fragment#onActivityCreated onActivityCreated()}. Делается
+это следующим образом:</p>
+
+<pre>// Prepare the loader.  Either re-connect with an existing one,
+// or start a new one.
+getLoaderManager().initLoader(0, null, this);</pre>
+
+<p>Метод {@link android.app.LoaderManager#initLoader initLoader()} принимает
+следующие параметры:</p>
+<ul>
+  <li>уникальный идентификатор, обозначающий загрузчик. В данном примере идентификатором является 0;</li>
+<li>необязательные аргументы, которые передаются загрузчику при
+построении (в данном примере это <code>null</code>);</li> 
+
+<li>реализация {@link android.app.LoaderManager.LoaderCallbacks}, которая
+вызывает класс {@link android.app.LoaderManager} для выдачи событий загрузчика. В данном
+примере локальный класс реализует интерфейс {@link
+android.app.LoaderManager.LoaderCallbacks}, поэтому он передает ссылку
+самому себе: {@code this}.</li> 
+</ul>
+<p>Вызов {@link android.app.LoaderManager#initLoader initLoader()} обеспечивает инициализацию
+загрузчика. Возможен один из двух результатов:</p>
+<ul>
+  <li>Если загрузчик, указанный с помощью идентификатора, уже существует, будет повторно использован загрузчик, созданный
+последним.</li>
+  <li>Если загрузчик, указанный с помощью идентификатора, <em>не</em> существует,
+{@link android.app.LoaderManager#initLoader initLoader()} вызывает метод
+{@link android.app.LoaderManager.LoaderCallbacks} из {@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}.
+Именно здесь реализуется код для создания экземпляра и возврата нового загрузчика.
+Более подробные сведения см. в разделе <a href="#onCreateLoader">onCreateLoader</a>.</li>
+</ul>
+<p>В любом случае данная реализация {@link android.app.LoaderManager.LoaderCallbacks}
+связывается с загрузчиком и будет вызываться
+при изменении состояния загрузчика.  Если в момент этого вызова вызывающий компонент находится в
+запущенном состоянии, это означает, что запрошенный загрузчик уже существует и сформировал свои
+данные. В этом случае система сразу же вызовет {@link
+android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+ (во время{@link android.app.LoaderManager#initLoader initLoader()}),
+будьте готовы к этому. Более подробные сведения об этом обратном вызове см. в разделе <a href="#onLoadFinished">
+onLoadFinished</a>.</p>
+
+<p>Обратите внимание, что метод {@link android.app.LoaderManager#initLoader initLoader()}
+возвращает создаваемый класс {@link android.content.Loader}, но записывать
+ссылку на него не требуется. Класс {@link android.app.LoaderManager} управляет
+жизненным циклом загрузчика автоматически. Класс {@link android.app.LoaderManager}
+начинает загрузку и заканчивает ее при необходимости, а также поддерживает состояние загрузчика
+и связанного с ним контента. А это подразумевает, что вы будете редко взаимодействовать с загрузчиками
+напрямую (однако пример использования методов загрузчика для тонкой настройки его
+поведения см. в образце кода <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a>). 
+Для вмешательства в процесс загрузки при возникновении определенных событий обычно используются методы {@link
+android.app.LoaderManager.LoaderCallbacks}
+. Более подробные сведения об этом см. в разделе <a href="#callback">Использование обратных вызовов LoaderManager</a>.</p>
+
+<h3 id="restarting">Перезапуск загрузчика</h3>
+
+<p>При использовании метода {@link android.app.LoaderManager#initLoader initLoader()}, как
+показано выше, он задействует существующий загрузчик с указанным идентификатором — в случае его наличия.
+Если такого загрузчика нет, метод его создаст. Однако иногда старые данные нужно отбросить
+и начать все заново.</p>
+
+<p>Для удаления старых данных используется метод {@link
+android.app.LoaderManager#restartLoader restartLoader()}. Например, эта
+реализация метода{@link android.widget.SearchView.OnQueryTextListener} перезапускает
+загрузчик, когда изменяется запрос пользователя. Загрузчик необходимо перезагрузить,
+ с тем чтобы он мог использовать измененный фильтр поиска для выполнения нового запроса:</p>
+
+<pre>
+public boolean onQueryTextChanged(String newText) {
+    // Called when the action bar search text has changed.  Update
+    // the search filter, and restart the loader to do a new query
+    // with this filter.
+    mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+    getLoaderManager().restartLoader(0, null, this);
+    return true;
+}</pre>
+
+<h3 id="callback">Использование обратных вызовов класса LoaderManager</h3>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} представляет собой интерфейс обратного вызова,
+который позволяет клиенту взаимодействовать с классом {@link android.app.LoaderManager}. </p>
+<p>Ожидается, что загрузчики, в частности {@link android.content.CursorLoader}, будут сохранять
+свои данные после их остановки. Это позволяет приложениям сохранять свои
+данные в методах {@link android.app.Activity#onStop
+onStop()} и {@link android.app.Activity#onStart onStart()} операции или фрагмента, с тем чтобы,
+когда пользователь вернется в приложение, ему не пришлось ждать, пока данные
+загрузятся заново. Методы {@link android.app.LoaderManager.LoaderCallbacks} используются,
+чтобы узнать, когда требуется создать новый загрузчик, а также для того, чтобы указать приложению, когда
+пришло время перестать использовать данные загрузчика.</p>
+
+<p>Интерфейс {@link android.app.LoaderManager.LoaderCallbacks} использует следующие
+методы:</p>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}  —
+создает экземпляр и возвращает новый класс {@link android.content.Loader} для данного идентификатора.
+</li></ul>
+<ul>
+  <li> {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+— вызывается, когда созданный ранее загрузчик завершил загрузку.
+</li></ul>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onLoaderReset onLoaderReset()}
+— вызывается, когда состояние созданного ранее загрузчика сбрасывается, в результате чего его данные
+теряются.
+</li>
+</ul>
+<p>Более подробно эти методы описаны в разделах ниже.</p>
+
+<h4 id ="onCreateLoader">onCreateLoader</h4>
+
+<p>При попытке доступа к загрузчику (например, посредством метода {@link
+android.app.LoaderManager#initLoader initLoader()}), он проверяет, существует ли
+загрузчик, указанный с помощью идентификатора. Если он не существует, он вызывает метод {@link
+android.app.LoaderManager.LoaderCallbacks} {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}. Именно
+здесь и создается новый загрузчик. Обычно это будет класс {@link
+android.content.CursorLoader}, однако можно реализовать и собственный подкласс класса {@link
+android.content.Loader}. </p>
+
+<p>В этом примере метод обратного вызова {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+создает класс {@link android.content.CursorLoader}. Вы должны построить
+класс {@link android.content.CursorLoader} с помощью его метода конструктора, для чего
+требуется полный набор информации, которая нужна для выполнения запроса к {@link
+android.content.ContentProvider}. В частности, требуется:</p>
+<ul>
+  <li><em>uri</em> — URI контента, который необходимо получить; </li>
+  <li><em>projection</em> — список столбцов, которые будут возвращены. При передаче
+<code>null</code> будут возвращены все столбцы, а это неэффективно; </li>
+  <li><em>selection</em> — фильтр, объявляющий, какие строки возвращать,
+отформатированный в виде предложения SQL WHERE (за исключением самого WHERE). При передаче
+<code>null</code> будут возвращены все строки для данного URI; </li>
+  <li><em>selectionArgs</em> — в выборку можно включить символы "?", которые будут
+заменены значениями из <em>selectionArgs</em> в порядке следования в
+выборке. Значения будут привязаны как строки; </li>
+  <li><em>sortOrder</em> — порядок расположения строк, отформатированный в виде предложения SQL
+ORDER BY (за исключением самого ORDER BY). При передаче <code>null</code> будет
+использоваться стандартный порядок сортировки, поэтому, список, возможно, будет неотсортирован.</li>
+</ul>
+<p>Например:</p>
+<pre>
+ // If non-null, this is the current filter the user has provided.
+String mCurFilter;
+...
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+    // This is called when a new Loader needs to be created.  This
+    // sample only has one Loader, so we don't care about the ID.
+    // First, pick the base URI to use depending on whether we are
+    // currently filtering.
+    Uri baseUri;
+    if (mCurFilter != null) {
+        baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                  Uri.encode(mCurFilter));
+    } else {
+        baseUri = Contacts.CONTENT_URI;
+    }
+
+    // Now create and return a CursorLoader that will take care of
+    // creating a Cursor for the data being displayed.
+    String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+            + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+            + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+    return new CursorLoader(getActivity(), baseUri,
+            CONTACTS_SUMMARY_PROJECTION, select, null,
+            Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+}</pre>
+<h4 id="onLoadFinished">onLoadFinished</h4>
+
+<p>Этот метод вызывается, когда созданный ранее загрузчик завершил загрузку.
+Этот метод гарантировано вызывается до высвобождения последних данных,
+которые были предоставлены этому загрузчику.  К этому моменту необходимо полностью перестать использовать
+старые данные (поскольку они скоро будут заменены). Однако этого не следует делать
+самостоятельно, поскольку данными владеет загрузчик и он позаботится об этом.</p>
+
+
+<p>Загрузчик высвободит данные, как только узнает, что приложение их больше не
+использует.  Например, если данными является курсор из {@link
+android.content.CursorLoader}, не следует вызывать {@link
+android.database.Cursor#close close()} самостоятельно. Если курсор
+размещается в {@link android.widget.CursorAdapter}, следует использовать метод {@link
+android.widget.SimpleCursorAdapter#swapCursor swapCursor()} с тем, чтобы
+старый {@link android.database.Cursor} не закрылся. Например:</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.<br
+/>SimpleCursorAdapter mAdapter;
+...
+
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+    // Swap the new cursor in.  (The framework will take care of closing the
+    // old cursor once we return.)
+    mAdapter.swapCursor(data);
+}</pre>
+
+<h4 id="onLoaderReset">onLoaderReset</h4>
+
+<p>Этот метод вызывается, когда состояние созданного ранее загрузчика сбрасывается, в результате чего
+его данные теряются. Этот обратный вызов позволяет узнать, когда данные
+вот-вот будут высвобождены, с тем чтобы можно было удалить свою ссылку на них.  </p>
+<p>Данная реализация вызывает 
+{@link android.widget.SimpleCursorAdapter#swapCursor swapCursor()}  
+со значением <code>null</code>:</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.
+SimpleCursorAdapter mAdapter;
+...
+
+public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+    // This is called when the last Cursor provided to onLoadFinished()
+    // above is about to be closed.  We need to make sure we are no
+    // longer using it.
+    mAdapter.swapCursor(null);
+}</pre>
+
+
+<h2 id="example">Пример</h2>
+
+<p>В качестве примера далее приведена полная реализация фрагмента {@link
+android.app.Fragment}, который отображает {@link android.widget.ListView} с
+результатами запроса к поставщику такого контента, как контакты. Для управления запросом к поставщику используется класс {@link
+android.content.CursorLoader}.</p>
+ 
+<p>Чтобы приложение могло обращаться к контактам пользователя, как показано в этом примере, в его
+манифесте должно присутствовать разрешение
+{@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS}.</p>
+
+<pre>
+public static class CursorLoaderListFragment extends ListFragment
+        implements OnQueryTextListener, LoaderManager.LoaderCallbacks&lt;Cursor&gt; {
+
+    // This is the Adapter being used to display the list's data.
+    SimpleCursorAdapter mAdapter;
+
+    // If non-null, this is the current filter the user has provided.
+    String mCurFilter;
+
+    @Override public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+
+        // Give some text to display if there is no data.  In a real
+        // application this would come from a resource.
+        setEmptyText(&quot;No phone numbers&quot;);
+
+        // We have a menu item to show in action bar.
+        setHasOptionsMenu(true);
+
+        // Create an empty adapter we will use to display the loaded data.
+        mAdapter = new SimpleCursorAdapter(getActivity(),
+                android.R.layout.simple_list_item_2, null,
+                new String[] { Contacts.DISPLAY_NAME, Contacts.CONTACT_STATUS },
+                new int[] { android.R.id.text1, android.R.id.text2 }, 0);
+        setListAdapter(mAdapter);
+
+        // Prepare the loader.  Either re-connect with an existing one,
+        // or start a new one.
+        getLoaderManager().initLoader(0, null, this);
+    }
+
+    @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+        // Place an action bar item for searching.
+        MenuItem item = menu.add(&quot;Search&quot;);
+        item.setIcon(android.R.drawable.ic_menu_search);
+        item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+        SearchView sv = new SearchView(getActivity());
+        sv.setOnQueryTextListener(this);
+        item.setActionView(sv);
+    }
+
+    public boolean onQueryTextChange(String newText) {
+        // Called when the action bar search text has changed.  Update
+        // the search filter, and restart the loader to do a new query
+        // with this filter.
+        mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+        getLoaderManager().restartLoader(0, null, this);
+        return true;
+    }
+
+    @Override public boolean onQueryTextSubmit(String query) {
+        // Don't care about this.
+        return true;
+    }
+
+    @Override public void onListItemClick(ListView l, View v, int position, long id) {
+        // Insert desired behavior here.
+        Log.i(&quot;FragmentComplexList&quot;, &quot;Item clicked: &quot; + id);
+    }
+
+    // These are the Contacts rows that we will retrieve.
+    static final String[] CONTACTS_SUMMARY_PROJECTION = new String[] {
+        Contacts._ID,
+        Contacts.DISPLAY_NAME,
+        Contacts.CONTACT_STATUS,
+        Contacts.CONTACT_PRESENCE,
+        Contacts.PHOTO_ID,
+        Contacts.LOOKUP_KEY,
+    };
+    public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+        // This is called when a new Loader needs to be created.  This
+        // sample only has one Loader, so we don't care about the ID.
+        // First, pick the base URI to use depending on whether we are
+        // currently filtering.
+        Uri baseUri;
+        if (mCurFilter != null) {
+            baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                    Uri.encode(mCurFilter));
+        } else {
+            baseUri = Contacts.CONTENT_URI;
+        }
+
+        // Now create and return a CursorLoader that will take care of
+        // creating a Cursor for the data being displayed.
+        String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+                + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+                + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+        return new CursorLoader(getActivity(), baseUri,
+                CONTACTS_SUMMARY_PROJECTION, select, null,
+                Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+    }
+
+    public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+        // Swap the new cursor in.  (The framework will take care of closing the
+        // old cursor once we return.)
+        mAdapter.swapCursor(data);
+    }
+
+    public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+        // This is called when the last Cursor provided to onLoadFinished()
+        // above is about to be closed.  We need to make sure we are no
+        // longer using it.
+        mAdapter.swapCursor(null);
+    }
+}</pre>
+<h3 id="more_examples">Другие примеры</h3>
+
+<p>В <strong>ApiDemos</strong> есть несколько различных примеров, которые
+иллюстрируют использование загрузчиков:</p>
+<ul>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a> — полная версия
+показанного выше фрагмента.</li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a> — пример того, как использовать регулирование
+для сокращения числа запросов, выполняемых поставщиком контента при изменении его данных.</li>
+</ul>
+
+<p>Сведения о загрузке и установке образцов кода SDK см. в статье <a href="http://developer.android.com/resources/samples/get.html"> Получение
+образцов кода</a>. </p>
+
diff --git a/docs/html-intl/intl/ru/guide/components/processes-and-threads.jd b/docs/html-intl/intl/ru/guide/components/processes-and-threads.jd
new file mode 100644
index 0000000..fd298e0
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/processes-and-threads.jd
@@ -0,0 +1,411 @@
+page.title=Процессы и потоки
+page.tags=жизненный цикл,фон
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Содержание документа</h2>
+<ol>
+<li><a href="#Processes">Процессы</a>
+  <ol>
+    <li><a href="#Lifecycle">Жизненный цикл процесса</a></li>
+  </ol>
+</li>
+<li><a href="#Threads">Потоки</a>
+  <ol>
+    <li><a href="#WorkerThreads">Рабочие потоки</a></li>
+    <li><a href="#ThreadSafe">Потокобезопасные методы</a></li>
+  </ol>
+</li>
+<li><a href="#IPC">Взаимодействие процессов</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>Когда компонент приложения запускается при отсутствии других работающих компонентов
+, система Android запускает новый процесс Linux для приложения с одним потоком
+выполнения. По умолчанию все компоненты одного приложения работают в одном процессе и потоке
+(называется «главным потоком»). Если компонент приложения запускается при наличии процесса
+для этого приложения (так как существует другой компонент из приложения), тогда компонент
+запускается в этом процессе и использует тот же поток выполнения. Однако можно организовать выполнение
+других компонентов приложения в отдельных процессах и создавать дополнительный
+поток для любого процесса.</p>
+
+<p>В этом документе обсуждается работа процессов и потоков в приложении Android.</p>
+
+
+<h2 id="Processes">Процессы</h2>
+
+<p>По умолчанию все компоненты одного приложения работают в одном процессе, и большинство приложений
+не должно менять это поведение. Однако, если необходимо контролировать, к какому процессу принадлежат определенный
+компонент, можно сделать это в файле манифеста.</p>
+
+<p>Запись манифеста для каждого типа элементов компонента &mdash;<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>, <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code
+&lt;service&gt;}</a>, <a href="{@docRoot}guide/topics/manifest/receiver-element.html">{@code
+&lt;receiver&gt;}</a> и <a href="{@docRoot}guide/topics/manifest/provider-element.html">{@code
+&lt;provider&gt;}</a> &mdash;поддерживает атрибут {@code android:process}, позволяющий задавать
+процесс, в котором следует выполнять этот компонент. Можно установить этот атрибут так, чтобы каждый компонент выполнялся
+в собственном процессе, или так, чтобы только некоторые компоненты совместно использовали один процесс.  Можно также настроить процесс
+{@code android:process} так, чтобы компоненты разных приложений выполнялись в одном
+процессе, при условии что приложения совместно используют один идентификатор пользователя Linux и выполняют вход с
+одним сертификатом.</p>
+
+<p>Элемент <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code
+&lt;application&gt;}</a> также поддерживает атрибут {@code android:process}, позволяющий задать
+значение по умолчанию, которое применяется ко всем компонентам.</p>
+
+<p>Android может остановить процесс в некоторой точке, когда не хватает памяти и она необходима другим
+процессам, которые обслуживают пользователя в данный момент. Работа компонентов
+приложения, работающих в этом процессе, последовательно останавливается.  Процесс для этих компонентов запускается
+повторно, когда для них появляется работа.</p>
+
+<p>Принимая решение о прерывании процессов, система Android взвешивает их относительную важность
+для пользователя.  Например, более вероятно выключение процессов, содержащих действия, которые
+не отображаются на экране, по сравнению с процессом, содержащим видимые действия. Следовательно, решение
+о прерывании процесса зависит от состояния компонентов, работающих в этом процессе. Ниже обсуждаются правила,
+на основании которых принимается решение о выборе прерываемых процессов. </p>
+
+
+<h3 id="Lifecycle">Жизненный цикл процесса</h3>
+
+<p>Система Android пытается сохранять процесс приложения как можно дольше, но
+ в конечном счете вынуждена удалять старые процессы, чтобы восстановить память для новых или более важных процессов.  Чтобы
+определить, какие процессы сохранить,
+а какие удалить, система помещает каждый процесс в «иерархию важности» на основе
+компонентов, выполняющихся в процессе, и состояния этих компонентов.  Процессы с самым низким уровнем
+важности исключаются в первую очередь, затем исключаются процессы следующего уровня важности и т. д., насколько это необходимо
+для восстановления ресурсов системы.</p>
+
+<p>В иерархии важности предусмотрено пять уровней. В следующем списке представлены различные
+типы процессов в порядке важности (первый процесс является <em>наиболее важным</em> и
+<em>удаляется в последнюю очередь</em>):</p>
+
+<ol>
+  <li><b>Процесс переднего плана</b>
+    <p>Процесс, необходимый для текущей деятельности пользователя.  Процесс
+ считается процессом переднего плана, если выполняется любое из следующих условий:</p>
+
+      <ul>
+        <li>Он содержит действие {@link android.app.Activity}, с которым взаимодействует пользователь (вызван метод {@link
+android.app.Activity}
+{@link android.app.Activity#onResume onResume()}).</li>
+
+        <li>Он содержит службу {@link android.app.Service}, связанную с действием, с которым
+взаимодействует пользователь.</li>
+
+        <li>Он содержит службу {@link android.app.Service}, которая выполняется "на переднем плане", &mdash; службу,
+которая называется {@link android.app.Service#startForeground startForeground()}.
+
+        <li>Он содержит службу{@link android.app.Service}, которая выполняет один из обратных вызовов
+ жизненного цикла ({@link android.app.Service#onCreate onCreate()}, {@link android.app.Service#onStart
+onStart()} или {@link android.app.Service#onDestroy onDestroy()}).</li>
+
+        <li>Он содержит ресивер {@link android.content.BroadcastReceiver}, который выполняет метод {@link
+android.content.BroadcastReceiver#onReceive onReceive()}.</li>
+    </ul>
+
+    <p>Обычно одновременно работает лишь несколько процессов переднего плана.  Они уничтожаются только
+в крайнем случае, если памяти остается так мало, что они не могут продолжать совместную работу.  Обычно в этот момент
+устройство достигло состояния разбиения памяти на страницы, поэтому для того, чтобы пользовательский интерфейс откликался на действия пользователя, необходимо
+удаление некоторых процессов на переднем плане.</p></li>
+
+  <li><b>Видимые процессы</b>
+    <p>Процессы, которые не содержат компонентов переднего плана, но могут
+влиять на отображение на экране. Процесс считается видимым,
+если выполняется любое из следующих условий:</p>
+
+      <ul>
+        <li>Он содержит действие {@link android.app.Activity}, которое не находится на переднем плане, но
+видно пользователю (вызван метод {@link android.app.Activity#onPause onPause()}). 
+Например, это может происходить, если действие на переднем плане запустило диалоговое окно, которое позволяет видеть
+предыдущее действие позади него.</li>
+
+        <li>Он содержит службу {@link android.app.Service}, связанную с видимым
+действием или действием переднего плана.</li>
+      </ul>
+
+      <p>Видимый процесс считается исключительно важным, его следует удалять
+только в случае, если требуется сохранить работу всех процессов переднего плана. </p>
+    </li>
+
+  <li><b>Служебный процесс</b>
+    <p>Процесс, который выполняет службу, запущенную с помощью метода {@link
+android.content.Context#startService startService()}, и не попадает ни в одну из двух
+категорий более высокого уровня. Хотя служебные процессы не связаны непосредственно с тем, что видит пользователь,
+они обычно выполняют важные для пользователя действия (например, воспроизводят музыку в фоновом режиме или
+загружают данные в сеть), поэтому система сохраняет их выполнение, если памяти достаточно для
+их работы наряду со всеми видимыми процессами и процессами переднего плана. </p>
+  </li>
+
+  <li><b>Фоновый процесс</b>
+    <p>Процесс, содержащий действия, которые не видны пользователю в настоящее время (вызван метод 
+{@link android.app.Activity#onStop onStop()} действия). Эти процессы не оказывают непосредственного
+воздействия на работу пользователя, и система может удалить их в любой момент, чтобы освободить память для
+процессов переднего плана,
+видимых или служебных процессов. Обычно выполняется множество фоновых процессов, поэтому они хранятся в списке
+LRU (недавно использованные), чтобы процессы, содержащие самые
+недавние действия, которые видел пользователь, удалялись в последнюю очередь. Если для действия правильно реализованы методы жизненного цикла,
+и действие сохраняет текущее состояние, удаление процесса этого действия не оказывает видимого воздействия на
+работу пользователя, так как когда пользователь возвращается к этому действию, оно восстанавливает
+все элементы своего видимого состояния. Информацию о сохранении и восстановлении состояния см. в документе <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Действия</a>
+.</p>
+  </li>
+
+  <li><b>Пустой процесс</b>
+    <p>Процесс, не содержащий никаких компонентов активного приложения.  Единственная причина сохранять процесс
+такого типа — это кэширование, которое улучшает время следующего запуска
+компонента в этом процессе.  Система часто удаляет эти процессы для равномерного распределения всех системных
+ресурсов между кэшем процесса и кэшем базового ядра.</p>
+  </li>
+</ol>
+
+
+  <p>Система Android относит процесс к максимально высокому уровню на основе важности
+компонентов, активных в процессе в текущее время.  Например, если процесс содержит служебное и видимое действие,
+процесс считается видимым, а не служебным процессом.</p>
+
+  <p>Кроме того, уровень процесса может быть повышен, поскольку имеются другие процессы, зависимые от него. 
+Например, процесс, обслуживающий другой процесс, не может иметь уровень ниже уровня обслуживаемого
+процесса. Например, если поставщик контента в процессе A обслуживает клиента в процессе B или
+служебный процесс A связан с компонентом в процессе B, процесс A всегда считается не менее
+важным, чем процесс B.</p>
+
+  <p>Так как процесс, выполняющий службу, оценивается выше процесса с фоновыми действиям,
+действие, запускающее долговременную операцию, может запустить <a href="{@docRoot}guide/components/services.html">службу</a> для этой операции, а не просто
+создать рабочий поток, особенно в случае, если операция продлится дольше действия.
+Например, действие, которое загружает изображение на веб-сайт, должно запустить службу для выполнения
+загрузки, так что загрузка может продолжаться в фоновом режиме даже после выхода пользователя из действия.
+Использование службы гарантирует, что операция будет иметь приоритет не ниже «служебного процесса»,
+независимо от того, что происходит с действием. По этой же причине ресиверы должны
+использовать службы, а не просто ставить в поток операции, требующие много времени для выполнения.</p>
+
+
+
+
+<h2 id="Threads">Потоки</h2>
+
+<p>При запуске приложения система создает поток выполнения для приложения,
+который называется «главным». Этот поток очень важен, так как он отвечает за диспетчеризацию событий
+на виджеты соответствующего интерфейса пользователя, включая события графического представления. Он также является потоком, в котором
+приложение взаимодействует с компонентами из набора инструментов пользовательского интерфейса Android (компонентами из пакетов {@link
+android.widget} и {@link android.view}). По существу, главный поток — это то, что иногда называют
+потоком пользовательского интерфейса.</p>
+
+<p>Система <em>не</em> создает отдельного потока для каждого экземпляра компонента. Все
+компоненты, которые выполняются в одном процессе, создают экземпляры в потоке пользовательского интерфейса, и системные вызовы
+каждого компонента отправляются из этого потока. Поэтому методы, которые отвечают на системные
+обратные вызовы (такие как метод {@link android.view.View#onKeyDown onKeyDown()} для сообщения о действиях пользователя
+или метод обратного вызова жизненного цикла), всегда выполняются в потоке пользовательского интерфейса процесса.</p>
+
+<p>Например, когда пользователь нажимает кнопку на экране, поток пользовательского интерфейса вашего приложения отправляет
+событие нажатия в виджет, который, в свою очередь, устанавливает кнопку в нажатое состояние и отправляет запрос на аннулирование
+в очередь событий. Поток пользовательского интерфейса исключает запрос из очереди и уведомляет виджет, что он должен
+отобразиться повторно.</p>
+
+<p>Когда приложение выполняет интенсивную работу в ответ на действия пользователя, эта одиночная модель потока
+может показывать плохую производительность, если приложение реализовано неправильно. То есть, если
+все происходит в потоке пользовательского интерфейса, выполнение долговременных операций, таких как сетевой доступ или
+запросы к базе данных, будет блокировать весь пользовательский интерфейс. Когда поток заблокирован, не могут обрабатываться никакие события,
+включая события изменения отображения. С точки зрения пользователя
+приложение выглядит зависшим. Хуже того, если поток пользовательского интерфейса заблокирован более нескольких секунд
+(в настоящее время около 5 секунд), отображается печально известное диалоговое окно <a href="http://developer.android.com/guide/practices/responsiveness.html">«приложение не
+отвечает</a>». После этого недовольный пользователь может выйти из вашего приложения
+и удалить его.</p>
+
+<p>Кроме того, набор инструментов пользовательского интерфейса Andoid <em>не</em> является потокобезопасным. Поэтому, вы не должны работать
+с пользовательским интерфейсом из рабочего потока. Манипуляции с пользовательским интерфейсом необходимо выполнять из
+потока пользовательского интерфейса. Таким образом, существует только два правила однопоточной модели Android:</p>
+
+<ol>
+<li>Не блокируйте поток пользовательского интерфейса
+<li>Не обращайтесь к набору инструментов пользовательского интерфейса Android снаружи потока пользовательского интерфейса
+</ol>
+
+<h3 id="WorkerThreads">Рабочие потоки</h3>
+
+<p>Вследствие описанной выше однопоточной модели для динамичности пользовательского интерфейса ваших приложений
+очень важно не блокировать поток пользовательского интерфейса. Если требуется выполнять операции,
+занимающие некоторое время, обязательно выполняйте их в отдельных потоках (»фоновых» или
+«рабочих» потоках).</p>
+
+<p>Например, ниже приведен код контроля нажатий, который загружает изображение из отдельного
+потока и отображает их в виджете {@link android.widget.ImageView}:</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            Bitmap b = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.setImageBitmap(b);
+        }
+    }).start();
+}
+</pre>
+
+<p>На первый взгляд, он должен работать хорошо, так как он создает новый поток для обработки сетевой
+операции. Однако, он нарушает второе правило однопоточной модели: <em>не обращайтесь к набору инструментов пользовательского интерфейса
+Android снаружи потока пользовательского интерфейса</em> &mdash; этот пример изменяет {@link
+android.widget.ImageView} из рабочего потока, а не из потока пользовательского интерфейса. Это может привести
+к неопределенному и непредвиденному поведению, отследить которое будет трудно.</p>
+
+<p>Для устранения этой проблемы Android предлагает несколько путей доступа к потоку пользовательского интерфейса из других
+потоков. Ниже приведен список полезных методов:</p>
+
+<ul>
+<li>{@link android.app.Activity#runOnUiThread(java.lang.Runnable)
+Activity.runOnUiThread(Runnable)}</li>
+<li>{@link android.view.View#post(java.lang.Runnable) View.post(Runnable)}</li>
+<li>{@link android.view.View#postDelayed(java.lang.Runnable, long) View.postDelayed(Runnable,
+long)}</li>
+</ul>
+
+<p>Например, можно исправить приведенный выше код с помощью метода {@link
+android.view.View#post(java.lang.Runnable) View.post(Runnable)}:</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            final Bitmap bitmap = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.post(new Runnable() {
+                public void run() {
+                    mImageView.setImageBitmap(bitmap);
+                }
+            });
+        }
+    }).start();
+}
+</pre>
+
+<p>Теперь реализация является потокобезопасной: сетевая операция выполняется из отдельного потока,
+тогда как {@link android.widget.ImageView} работает из потока пользовательского интерфейса.</p>
+
+<p>Однако по мере роста сложности, код такого типа может становиться запутанным и сложным
+для поддержания. Чтобы обрабатывать более сложные взаимодействия с рабочим потоком, можно
+использовать метод {@link android.os.Handler} в рабочем потоке для обработки сообщений, поступающих из потока
+пользовательского интерфейса. Вероятно, самым лучшим решением является расширение класса {@link android.os.AsyncTask},
+которое упрощает выполнение заданий рабочего потока, которые должны взаимодействовать с пользовательским интерфейсом.</p>
+
+
+<h4 id="AsyncTask">Использование AsyncTask</h4>
+
+<p>Метод {@link android.os.AsyncTask} позволяет выполнять асинхронную работу в пользовательском
+интерфейсе. Он выполняет операции блокирования в рабочем потоке и затем публикует результаты в потоке
+пользовательского интерфейса без необходимости самостоятельно обрабатывать потоки и/или обработчики.</p>
+
+<p>Для использования этого метода необходимо создать подкласс {@link android.os.AsyncTask} и реализовать метод обратного вызова {@link
+android.os.AsyncTask#doInBackground doInBackground()}, который работает в пуле
+фоновых потоков. Чтобы обновить пользовательский интерфейс, следует реализовать метод {@link
+android.os.AsyncTask#onPostExecute onPostExecute()}, который доставляет результат из {@link
+android.os.AsyncTask#doInBackground doInBackground()} и работает в потоке пользовательского интерфейса, так что вы можете безопасно
+обновлять пользовательский интерфейс. Задача выполняется через вызов метода {@link android.os.AsyncTask#execute execute()}
+из потока пользовательского интерфейса.</p>
+
+<p>Например, можно реализовать предыдущий пример с помощью метода {@link android.os.AsyncTask} следующим
+образом:</p>
+
+<pre>
+public void onClick(View v) {
+    new DownloadImageTask().execute("http://example.com/image.png");
+}
+
+private class DownloadImageTask extends AsyncTask&lt;String, Void, Bitmap&gt; {
+    /** The system calls this to perform work in a worker thread and
+      * delivers it the parameters given to AsyncTask.execute() */
+    protected Bitmap doInBackground(String... urls) {
+        return loadImageFromNetwork(urls[0]);
+    }
+    
+    /** The system calls this to perform work in the UI thread and delivers
+      * the result from doInBackground() */
+    protected void onPostExecute(Bitmap result) {
+        mImageView.setImageBitmap(result);
+    }
+}
+</pre>
+
+<p>Теперь пользовательский интерфейс защищен и код стал проще, так как работа разделена на
+часть, которая должна выполняться в рабочем потоке, и часть, которая должна выполняться в потоке пользовательского интерфейса.</p>
+
+<p>Прочитайте статью {@link android.os.AsyncTask}, чтобы полностью понять
+использование этого класса. Здесь приведен краткий обзор его работы:</p>
+
+<ul>
+<li>Можно указывать тип параметров, значения хода выполнения и конечное
+значение задания с помощью универсальных компонентов</li>
+<li>Метод {@link android.os.AsyncTask#doInBackground doInBackground()} выполняется автоматически
+в рабочем потоке</li>
+<li>Методы {@link android.os.AsyncTask#onPreExecute onPreExecute()}, {@link
+android.os.AsyncTask#onPostExecute onPostExecute()} и {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} запускаются в потоке пользовательского интерфейса</li>
+<li>Значение, возвращенное методом {@link android.os.AsyncTask#doInBackground doInBackground()}, отправляется в метод
+{@link android.os.AsyncTask#onPostExecute onPostExecute()}</li>
+<li>Можно вызвать {@link android.os.AsyncTask#publishProgress publishProgress()} в любой момент в {@link
+android.os.AsyncTask#doInBackground doInBackground()} для выполнения {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} в потоке пользовательского интерфейса</li>
+<li>Задание можно отменить в любой момент из любого потока</li>
+</ul>
+
+<p class="caution"><strong>Предупреждение!</strong> Другая проблема, с которой вы можете столкнуться при использовании рабочего
+потока, состоит в непредсказуемом перезапуске действия вследствие <a href="{@docRoot}guide/topics/resources/runtime-changes.html">изменения конфигурации в режиме выполнения</a>,
+(например, когда пользователь изменяет ориентацию экрана), что может разрушить рабочий поток. Чтобы
+увидеть, как можно сохранить задание во время одного из подобных перезапусков и как правильно отменить задание
+при разрушении действия, изучите исходный код примера приложения <a href="http://code.google.com/p/shelves/">Shelves</a>.</p>
+
+
+<h3 id="ThreadSafe">Потокобезопасные методы</h3>
+
+<p> В некоторых ситуациях реализованные методы могут вызываться из нескольких потоков и, следовательно,
+должны быть написаны с сохранением потокобезопасности. </p>
+
+<p>В первую очередь это относится к методам, которые можно вызывать удаленно, например, к методам в <a href="{@docRoot}guide/components/bound-services.html">связанной службе</a>. Когда вызов
+метода реализуется в классе {@link android.os.IBinder}, происходящем из того же процесса, в котором выполняется
+{@link android.os.IBinder IBinder}, метод выполняется в потоке вызывающего метода.
+Однако, когда вызов происходит из другого процесса, метод выполняется в потоке, выбранном из пула
+потоков, которые система поддерживает в том же процессе, что и {@link android.os.IBinder
+IBinder} (он не выполняется в потоке пользовательского интерфейса процесса).  Например, поскольку метод
+{@link android.app.Service#onBind onBind()} службы будет вызываться из потока пользовательского интерфейса
+процесса службы, методы, реализованные в объекте, который возвращает {@link android.app.Service#onBind
+onBind()} (например, подкласс, который реализует методы RPC), будут вызываться из потоков
+в пуле. Так как служба может иметь несколько клиентов, несколько потоков из пула могут одновременно использовать
+один и тот же метод {@link android.os.IBinder IBinder}. Поэтому методы {@link android.os.IBinder
+IBinder} должны быть реализованы с сохранением потокобезопасности.</p>
+
+<p> Аналогичным образом поставщик контента может получать запросы данных, которые происходят из другого процесса.
+Хотя классы {@link android.content.ContentResolver} и {@link android.content.ContentProvider}
+скрывают подробности управления взаимодействием процессов, методы {@link
+android.content.ContentProvider}, которые отвечают на эти запросы, &mdash;методы {@link
+android.content.ContentProvider#query query()}, {@link android.content.ContentProvider#insert
+insert()}, {@link android.content.ContentProvider#delete delete()}, {@link
+android.content.ContentProvider#update update()} и {@link android.content.ContentProvider#getType
+getType()} &mdash;вызываются из пула потоков в процессе поставщика контента, а не в процессе
+потока пользовательского интерфейса.  Поскольку эти методы могут вызываться из любого числа потоков одновременно,
+они также должны быть реализованы с сохранением потокобезопасности. </p>
+
+
+<h2 id="IPC">Взаимодействие процессов</h2>
+
+<p>Система Android предлагает механизм взаимодействия процессов (IPC) с помощью удаленного вызова процедуры
+(RPC), при котором метод вызывается действием или другим компонентом приложения, но выполняется
+удаленно (в другом процессе) с возвратом всех результатов
+вызывающему компоненту. Это влечет разложение вызова метода и его данных до уровня, понятного
+операционной системе, передачу его из локального процесса и адресного пространства удаленному процессу и
+адресному пространству, а затем повторную сборку и восстановление вызова.  После этого возвращенные значения
+передаются в обратном направлении.  Система Android содержит все коды для выполнения этих механизмов IPC,
+так что вы можете сосредоточиться на определении и реализации программного интерфейса RPC. </p>
+
+<p>Для выполнения IPC приложение должно быть привязано к службе с помощью метода {@link
+android.content.Context#bindService bindService()}. Дополнительные сведения представлены в разделе <a href="{@docRoot}guide/components/services.html">Службы</a> руководства для разработчиков.</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For information about how to perform work in the background for an indefinite period of time
+(without a user interface), continue with the <b><a
+href="{@docRoot}guide/components/services.html">Services</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/ru/guide/components/recents.jd b/docs/html-intl/intl/ru/guide/components/recents.jd
new file mode 100644
index 0000000..3720631
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/recents.jd
@@ -0,0 +1,256 @@
+page.title=Экран обзора
+page.tags="recents","overview"
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>Содержание документа</h2>
+  <ol>
+    <li><a href="#adding">Добавление задач на экран обзора</a>
+      <ol>
+        <li><a href="#flag-new-doc">Использование флага Intent для добавления задачи</a></li>
+        <li><a href="#attr-doclaunch">Использование атрибута Операция для добавления задачи</a></li>
+      </ol>
+    </li>
+    <li><a href="#removing">Удаление задач</a>
+      <ol>
+        <li><a href="#apptask-remove">Использование класса AppTask для удаления задач</a></li>
+        <li><a href="#retain-finished">Сохранение завершенных задач</a></li>
+      </ol>
+    </li>
+  </ol>
+
+  <h2>Ключевые классы</h2>
+  <ol>
+    <li>{@link android.app.ActivityManager.AppTask}</li>
+    <li>{@link android.content.Intent}</li>
+  </ol>
+
+  <h2>Пример кода</h2>
+  <ol>
+    <li><a href="{@docRoot}samples/DocumentCentricApps/index.html">Приложения для работы с документами</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>Экран обзора (также используются названия: экран последних задач, список последних задач или последние приложения)
+является элементом пользовательского интерфейса системного уровня, в котором содержится список последних <a href="{@docRoot}guide/components/activities.html">
+операций</a> и <a href="{@docRoot}guide/components/tasks-and-back-stack.html">задач</a>. Пользователь
+может перемещаться по списку и выбирать задачи для возобновления, или жестом удалять задачи
+из списка. В версии Android 5.0 (уровень API 21) несколько экземпляров
+одной операции, содержащие различные документы, могут отображаться в виде задач на экране обзора. Например,
+Google Диск может иметь задачу для каждого из нескольких документов Google. На экране обзора каждый документ
+отображается в виде задачи.</p>
+
+<img src="{@docRoot}images/components/recents.png" alt="" width="284" />
+<p class="img-caption"><strong>Рисунок 1.</strong> Экран обзора, на котором показаны три документа Google Диск,
+ представленные в виде отдельных задач.</p>
+
+<p>Обычно следует разрешить системе определить способ представления ваших задач и
+операций на экране обзора. Вам не нужно менять это поведение.
+Однако приложение может определять способ и время появления операции на экране обзора. С помощью класса
+{@link android.app.ActivityManager.AppTask} можно управлять задачами, а с помощью флагов операции класса
+{@link android.content.Intent} указывается, когда операция добавляется на экран обзора
+или удаляется с него. Кроме того, атрибуты <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> позволяют устанавливать поведение в манифесте.</p>
+
+<h2 id="adding">Добавление задач на экран обзора</h2>
+
+<p>Использование флагов класса {@link android.content.Intent} для добавления задачи обеспечивает лучшее управление
+временем и способом открытия или повторного открытия документа на экране обзора. С помощью атрибутов
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+можно выбрать открытие документа в новой задаче или повторное использование
+существующей задачи для документа.</p>
+
+<h3 id="flag-new-doc">Использование флага Intent для добавления задачи</h3>
+
+<p>При создании нового документа для операции вы вызываете метод
+{@link android.app.ActivityManager.AppTask#startActivity(android.content.Context, android.content.Intent, android.os.Bundle) startActivity()}
+класса {@link android.app.ActivityManager.AppTask}, передавая ему intent,
+который запускает операцию. Для вставки логического разрыва, чтобы система обрабатывала вашу операцию как новую
+задачу на экране обзора, передайте флаг {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+в метод {@link android.content.Intent#addFlags(int) addFlags()} {@link android.content.Intent},
+который запускает операцию.</p>
+
+<p class="note"><strong>Примечание.</strong> Флаг {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+замещает флаг {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET},
+который является устаревшим для систем Android 5.0 и выше (уровень API 21).</p>
+
+<p>Если вы установили флаг {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} при создании
+нового документа, система всегда создает новую задачу с целевой операцией в качестве корня.
+Этот параметр позволяет открывать один документ в нескольких задачах. Следующий код показывает,
+как это делает основная операция:</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+public void createNewDocument(View view) {
+      final Intent newDocumentIntent = newDocumentIntent();
+      if (useMultipleTasks) {
+          newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
+      }
+      startActivity(newDocumentIntent);
+  }
+
+  private Intent newDocumentIntent() {
+      boolean useMultipleTasks = mCheckbox.isChecked();
+      final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+      newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT);
+      newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+      return newDocumentIntent;
+  }
+
+  private static int incrementAndGet() {
+      Log.d(TAG, "incrementAndGet(): " + mDocumentCounter);
+      return mDocumentCounter++;
+  }
+}
+</pre>
+
+<p class="note"><strong>Примечание.</strong> Операции, запущенные с флагом {@code FLAG_ACTIVITY_NEW_DOCUMENT},
+должны иметь значение атрибута {@code android:launchMode="standard"} (по умолчанию), установленное
+в манифесте.</p>
+
+<p>Когда основная операция запускает новую операцию, система ищет в существующих задачах одну,
+значение intent которой соответствует имени компонента и данным Intent для операции. Если задача
+не найдена или intent содержит флаг {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK},
+создается новая задача с операцией в качестве корня. Если задача найдена, система выводит
+ эту задачу на передний план и передает новое значение intent в {@link android.app.Activity#onNewIntent onNewIntent()}.
+Новая операция получает intent и создает новый документ на экране обзора, как
+в следующем примере:</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+&#64;Override
+protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_new_document);
+    mDocumentCount = getIntent()
+            .getIntExtra(DocumentCentricActivity.KEY_EXTRA_NEW_DOCUMENT_COUNTER, 0);
+    mDocumentCounterTextView = (TextView) findViewById(
+            R.id.hello_new_document_text_view);
+    setDocumentCounterText(R.string.hello_new_document_counter);
+}
+
+&#64;Override
+protected void onNewIntent(Intent intent) {
+    super.onNewIntent(intent);
+    /* If FLAG_ACTIVITY_MULTIPLE_TASK has not been used, this activity
+    is reused to create a new document.
+     */
+    setDocumentCounterText(R.string.reusing_document_counter);
+}
+</pre>
+
+
+<h3 id="#attr-doclaunch">Использование атрибута Операция для добавления задачи</h3>
+
+<p>В манифесте операции можно также указать, что операция всегда запускается в новой задаче. Для этого используется атрибут
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, <a href="{@docRoot}guide/topics/manifest/activity-element.html#dlmode">
+{@code android:documentLaunchMode}</a>. Этот атрибут имеет четыре значения, которые работают следующим образом,
+когда пользователь открывает документ в приложении:</p>
+
+<dl>
+  <dt>"{@code intoExisting}"</dt>
+  <dd>Операция повторно использует существующую задачу для документа. Это равносильно установке
+флага {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} <em>без</em> установки
+флага {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}, как описано в разделе
+<a href="#flag-new-doc">Использование флага Intent для добавления задачи</a> выше.</dd>
+
+  <dt>"{@code always}"</dt>
+  <dd>Операция создает новую задачу для документа, даже если документ уже открыт. Использование
+этого значения равносильно установке обоих флагов {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+и {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}.</dd>
+
+  <dt>"{@code none”}"</dt>
+  <dd>Операция не создает новой задачи для документа. Экран обзора обрабатывает
+операцию как операцию по умолчанию: на экране обзора отображается одна задача для приложения, которая
+возобновляется с любой последней операции, вызванной пользователем.</dd>
+
+  <dt>"{@code never}"</dt>
+  <dd>Операция не создает новой задачи для документа. Установка этого значения
+переопределяет поведение флагов {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+ и {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}, если оба они установлены в
+intent, и на экране обзора отображается одна задача для приложения, которая
+возобновляется с любой последней операции, вызванной пользователем.</dd>
+</dl>
+
+<p class="note"><strong>Примечание.</strong> Для значений кроме {@code none} и {@code never}
+операция должна быть определена с атрибутом {@code launchMode="standard"}. Если этот атрибут не указан,
+используется {@code documentLaunchMode="none"}.</p>
+
+<h2 id="removing">Удаление задач</h2>
+
+<p>По умолчанию задача документа автоматически удаляется с экрана обзора после завершения
+соответствующей операции. Можно переопределить это поведение с помощью класса {@link android.app.ActivityManager.AppTask},
+с флагом {@link android.content.Intent} или атрибутом <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code>.</p>
+
+<p>Можно в любой момент полностью убрать задачу с экрана обзора, установив для атрибута
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ <a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">
+{@code android:excludeFromRecents}</a> значение {@code true}.</p>
+
+<p>Можно установить максимальное число задач, которое ваше приложение может включить в экран обзора, установив для атрибута
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ <a href="{@docRoot}guide/topics/manifest/activity-element.html#maxrecents">{@code android:maxRecents}
+</a> целое значение. Значение по умолчанию: 16. При достижении максимального количества задач самая
+долго не используемая задача удаляется с экрана обзора. Максимальное значение {@code android:maxRecents} составляет
+50 (25 для устройств с малым объемом памяти); Значения менее 1 не допускаются.</p>
+
+<h3 id="#apptask-remove">Использование класса AppTask для удаления задач</h3>
+
+<p>В операции, которая создает новую задачу на экране обзора,
+можно указать время удаления задачи и завершения всех связанных с ней операций, вызвав
+метод {@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()}.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+public void onRemoveFromRecents(View view) {
+    // The document is no longer needed; remove its task.
+    finishAndRemoveTask();
+}
+</pre>
+
+<p class="note"><strong>Примечание.</strong> Использование
+метода {@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()},
+который переопределяет использование тега {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS},
+рассмотрен ниже.</p>
+
+<h3 id="#retain-finished">Сохранение завершенных задач</h3>
+
+<p>Чтобы сохранить задачу на экране обзора, даже если ее операция завершена, передайте
+флаг {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} в метод
+{@link android.content.Intent#addFlags(int) addFlags()} объекта Intent, который запускает операцию.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+private Intent newDocumentIntent() {
+    final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+    newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT |
+      android.content.Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS);
+    newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+    return newDocumentIntent;
+}
+</pre>
+
+<p>Для достижения того же результата установите для атрибута
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ <a href="{@docRoot}guide/topics/manifest/activity-element.html#autoremrecents">
+{@code android:autoRemoveFromRecents}</a> значение {@code false}. Значение по умолчанию {@code true}
+для операций документа и {@code false} для обычных операций. Использование этого атрибута переопределяет
+флаг {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS}, описанный выше.</p>
+
+
+
+
+
+
+
diff --git a/docs/html-intl/intl/ru/guide/components/services.jd b/docs/html-intl/intl/ru/guide/components/services.jd
new file mode 100644
index 0000000..62a6a7e
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/services.jd
@@ -0,0 +1,813 @@
+page.title=Службы
+@jd:body
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>Содержание документа</h2>
+<ol>
+<li><a href="#Basics">Основы</a></li>
+<ol>
+  <li><a href="#Declaring">Объявление службы в манифесте</a></li>
+</ol>
+<li><a href="#CreatingAService">Создание запущенной службы</a>
+  <ol>
+    <li><a href="#ExtendingIntentService">Наследование класса IntentService</a></li>
+    <li><a href="#ExtendingService">Наследование класса Service</a></li>
+    <li><a href="#StartingAService">Запуск службы</a></li>
+    <li><a href="#Stopping">Остановка службы</a></li>
+  </ol>
+</li>
+<li><a href="#CreatingBoundService">Создание привязанной службы</a></li>
+<li><a href="#Notifications">Отправка уведомлений пользователю</a></li>
+<li><a href="#Foreground">Запуск службы на переднем плане</a></li>
+<li><a href="#Lifecycle">Управление жизненным циклом службы</a>
+<ol>
+  <li><a href="#LifecycleCallbacks">Реализация обратных вызовов жизненного цикла</a></li>
+</ol>
+</li>
+</ol>
+
+<h2>Ключевые классы</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.app.IntentService}</li>
+</ol>
+
+<h2>Примеры</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.html">{@code
+      ServiceStartArguments}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>См. также:</h2>
+<ol>
+<li><a href="{@docRoot}guide/components/bound-services.html">Привязанные службы</a></li>
+</ol>
+
+</div>
+
+
+<p>{@link android.app.Service} является компонентом приложения, который может выполнять
+длительные операции в фоновом режиме и не содержит пользовательского интерфейса. Другой компонент
+приложения может запустить службу, которая продолжит работу в фоновом режиме даже в том случае, когда пользователь
+перейдет в другое приложение. Кроме того, компонент может привязаться к службе для
+взаимодействия с ней и даже выполнять межпроцессное взаимодействие (IPC). Например, служба может
+обрабатывать сетевые транзакции, воспроизводить музыку, выполнять ввод-вывод файла или взаимодействовать с поставщиком контента, и все
+это в фоновом режиме.</p>
+
+<p>Фактически служба может принимать две формы:</p>
+
+<dl>
+  <dt>Запущенная</dt>
+  <dd>Служба является «запущенной», когда компонент приложения (например, операция) запускает ее
+вызовом {@link android.content.Context#startService startService()}. После запуска служба
+может работать в фоновом режиме в течение неограниченного времени, даже если уничтожен компонент, который ее запустил. Обычно
+запущенная служба выполняет одну операцию и не возвращает результатов вызывающему компоненту.
+Например, она может загружать или выгружать файл по сети. Когда операция выполнена,
+служба должна остановиться самостоятельно.</dd>
+  <dt>Привязанная</dt>
+  <dd>Служба является «привязанной», когда компонент приложения привязывается к ней вызовом {@link
+android.content.Context#bindService bindService()}. Привязанная служба предлагает интерфейс клиент-сервер,
+который позволяет компонентам взаимодействовать со службой, отправлять запросы, получать результаты и даже
+делать это между разными процессами посредством межпроцессного взаимодействия (IPC). Привязанная служба работает только пока
+к ней привязан другой компонент приложения. К службе могут быть привязаны несколько компонентов одновременно,
+но когда все они отменяют привязку, служба уничтожается.</dd>
+</dl>
+
+<p>Хотя в этой документации эти два типа служб обсуждаются отдельно, служба может
+работать обеими способами — она может быть запущенной (и работать в течение неограниченного времени) и допускать привязку.
+Это зависит от реализации пары методов обратного вызова: {@link
+android.app.Service#onStartCommand onStartCommand()} позволяет компонентам запускать службу, а {@link
+android.app.Service#onBind onBind()} позволяет выполнять привязку.</p>
+
+<p>Независимо от состояния приложения (запущенное, привязанное или и оба сразу) любой компонент приложения
+может использовать службу (даже из отдельного приложения) подобно тому, как любой компонент может использовать
+операцию — запустив ее с помощью {@link android.content.Intent}. Однако вы можете объявить закрытую
+службу в файле манифеста и заблокировать доступ к ней из других приложений. Более подробно
+это обсуждается в разделе <a href="#Declaring">Объявление службы
+в манифесте</a>.</p>
+
+<p class="caution"><strong>Внимание!</strong> Служба работает
+в основном потоке ведущего процесса — служба <strong>не</strong> создает своего потока
+и <strong>не</strong> выполняется в отдельном процессе (если вы не указали иное). Это означает,
+что если ваша служба собирается выполнять любую работу с высокой нагрузкой ЦП или блокирующие операции (например, воспроизведение MP3
+или сетевые операции), вы должны создать в службе новый поток для выполнения этой работы. Используя
+отдельный поток, вы снижаете риск возникновения ошибок «Приложение не отвечает», и
+основной поток приложения может отрабатывать взаимодействие пользователя с вашими операциями.</p>
+
+
+<h2 id="Basics">Основы</h2>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Что лучше использовать — службу или поток?</h3>
+  <p>Служба — это просто компонент, который может выполняться в фоновом режиме, даже когда пользователь
+не взаимодействует с приложением. Следовательно, вы должны создавать службу только в том случае, если вам нужно
+именно это.</p>
+  <p>Если вам требуется выполнить работу за пределами основного потока, но только в то время, когда пользователь взаимодействует
+с приложением, то вам, вероятно, следует создать новый поток, а не службу. Например,
+если вы хотите воспроизводить определенную музыку, но только во время работы операции, вы можете создать
+поток в {@link android.app.Activity#onCreate onCreate()}, запустить его выполнение в методе {@link
+android.app.Activity#onStart onStart()}, а затем остановить его в методе {@link android.app.Activity#onStop
+onStop()}. Также рассмотрите возможность использования класса {@link android.os.AsyncTask} или {@link android.os.HandlerThread}
+вместо обычного класса {@link java.lang.Thread}. В документе <a href="{@docRoot}guide/components/processes-and-threads.html#Threads">Процессы
+и потоки</a> содержится дополнительная информация об этих потоках.</p>
+  <p>Помните, что если вы действительно используете службу, она выполняется в основном потоке вашего приложения по умолчанию,
+поэтому вы должны создать новый поток в службе, если она выполняет интенсивные или
+блокирующие операции.</p>
+</div>
+</div>
+
+<p>Чтобы создать службу, необходимо создать подкласс класса {@link android.app.Service} (или одного
+из существующих его подклассов). В вашей реализации необходимо переопределить некоторые методы обратного вызова,
+которые обрабатывают ключевые моменты жизненного цикла службы и при необходимости
+предоставляют механизм привязывания компонентов. Наиболее важные методы обратного вызова, которые необходимо переопределить:</p>
+
+<dl>
+  <dt>{@link android.app.Service#onStartCommand onStartCommand()}</dt>
+    <dd>Система вызывает этот метод, когда другой компонент, например, операция,
+запрашивает запуск этой службы, вызывая {@link android.content.Context#startService
+startService()}. После выполнения этого метода служба запускается и может в течение неограниченного времени
+работать в фоновом режиме. Если вы реализуете такой метод, вы обязаны остановить службу
+посредством вызова {@link android.app.Service#stopSelf stopSelf()} или {@link
+android.content.Context#stopService stopService()}. (Если требуется только обеспечить привязку,
+реализовывать этот метод не обязательно).</dd>
+  <dt>{@link android.app.Service#onBind onBind()}</dt>
+    <dd>Система вызывает этот метод, когда другой компонент хочет выполнить привязку
+к службе (например, для выполнения удаленного вызова процедуры) путем вызова {@link android.content.Context#bindService
+bindService()}. В вашей реализации этого метода вы должны обеспечить интерфейс, который клиенты
+используют для взаимодействия со службой, возвращая {@link android.os.IBinder}. Всегда необходимо реализовывать
+этот метод, но если вы не хотите разрешать привязку, необходимо возвращать значение null.</dd>
+  <dt>{@link android.app.Service#onCreate()}</dt>
+    <dd>Система вызывает этот метод при первом создании службы для выполнения однократных
+процедур настройки (перед вызовом {@link android.app.Service#onStartCommand onStartCommand()} или
+{@link android.app.Service#onBind onBind()}). Если служба уже запущена, этот метод не
+вызывается.</dd>
+  <dt>{@link android.app.Service#onDestroy()}</dt>
+    <dd>Система вызывает этот метод, когда служба более не используется и выполняется ее уничтожение.
+Ваша служба должна реализовать это для очистки ресурсов, таких как потоки, зарегистрированные
+приемники, ресиверы и т. д. Это последний вызов, который получает служба.</dd>
+</dl>
+
+<p>Если компонент запускает службу посредством вызова {@link
+android.content.Context#startService startService()} (что приводит к вызову {@link
+android.app.Service#onStartCommand onStartCommand()}), то служба
+продолжает работу, пока она не остановится самостоятельно с помощью {@link android.app.Service#stopSelf()} или другой
+компонент не остановит ее посредством вызова {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Если компонент вызывает
+{@link android.content.Context#bindService bindService()} для создания службы (и {@link
+android.app.Service#onStartCommand onStartCommand()} <em>не</em> вызывается), то служба работает, пока
+к ней привязан компонент. Как только выполняется отмена привязки службы ко всем клиентам,
+система уничтожает службу.</p>
+
+<p>Система Android будет принудительно останавливать службу только в том случае, когда не хватает памяти, и необходимо восстановить системные
+для операции, которая отображается на переднем плане. Если служба привязана к операции, которая отображается на переднем плане,
+менее вероятно, что она будет уничтожена, и если служба объявлена для <a href="#Foreground">выполнения в фоновом режиме</a> (как обсуждалось выше), она почти никогда не будет уничтожаться.
+В противном случае, если служба была запущена и является длительной, система со временем будет опускать ее положение в списке
+фоновых задач, и служба станет очень чувствительной к
+уничтожению — если ваша служба запущена, вы должны предусмотреть изящную обработку ее перезапуска
+системой. Если система уничтожает вашу службу, она перезапускает ее, как только снова появляется
+доступ к ресурсам (хотя это также зависит от значения, возвращаемого методом {@link
+android.app.Service#onStartCommand onStartCommand()}, как обсуждается ниже). Дополнительная информация
+о ситуациях, в которых система может уничтожить службу приведена в документе <a href="{@docRoot}guide/components/processes-and-threads.html">Процессы и потоки</a>
+.</p>
+
+<p>В следующих разделах описаны способы создания служб каждого типа и использования
+их из других компонентов приложения.</p>
+
+
+
+<h3 id="Declaring">Объявление службы в манифесте</h3>
+
+<p>Все службы, как и операции (и другие компоненты), должны быть объявлены в файле
+манифеста вашего приложения.</p>
+
+<p>Чтобы объявить службу, добавьте элемент <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a>
+, в качестве дочернегоэлемента <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+. Например:</p>
+
+<pre>
+&lt;manifest ... &gt;
+  ...
+  &lt;application ... &gt;
+      &lt;service android:name=".ExampleService" /&gt;
+      ...
+  &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>Дополнительные сведения об объявлении службы
+в манифесте см. в справке по элементу <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a>.</p>
+
+<p>Имеются другие атрибуты, которые можно включить в элемент <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> для
+задания свойств, например, необходимых для запуска разрешений, и процесса,
+в котором должна выполняться служба. Атрибут <a href="{@docRoot}guide/topics/manifest/service-element.html#nm">{@code android:name}</a>
+является единственным обязательным атрибутом — он указывает имя класса для службы. После
+публикации вашего приложения вам не следует менять это имя, поскольку это может разрушить
+код из-за зависимости от явных намерений, используемых, чтобы запустить или привязать службу (ознакомьтесь с публикацией <a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Вещи, которые
+нельзя менять</a> в блоге разработчиков).
+
+<p>Для обеспечения безопасности приложения <strong>всегда используйте явное намерение при запуске
+или привязке {@link android.app.Service}</strong> и не объявляйте фильтров намерений для службы. Если вам
+важно допустить некоторую неопределенность в отношении того, какая служба запускается, вы можете
+предоставить фильтры намерений для ваших служб и исключить имя компонента из {@link
+android.content.Intent}, но затем вы должны установить пакет для намерения с помощью {@link
+android.content.Intent#setPackage setPackage()}, который обеспечивает достаточное устранение неоднозначности
+для целевой службы.</p>
+
+<p>Дополнительно можно обеспечить доступность вашей службы только для вашего приложения,
+включив атрибут <a href="{@docRoot}guide/topics/manifest/service-element.html#exported">{@code android:exported}</a>
+и установив для него значение {@code "false"}. Это не позволяет другим приложениям запускать
+вашу службу даже при использовании явного намерения.</p>
+
+
+
+
+<h2 id="CreatingStartedService">Создание запущенной службы</h2>
+
+<p>Запущенная служба — это служба, которую запускает другой компонент вызовом {@link
+android.content.Context#startService startService()}, что приводит к вызову
+метода {@link android.app.Service#onStartCommand onStartCommand()} службы.</p>
+
+<p>При запуске служба обладает сроком жизни, не зависящим от запустившего ее компонента,
+и может работать в фоновом режиме в течение неограниченного времени,
+даже если уничтожен компонент, который ее запустил. Поэтому после выполнения своей работы служба должна остановиться самостоятельно
+посредством вызова метода {@link android.app.Service#stopSelf stopSelf()}, либо ее может остановить другой компонент
+посредством вызова метода{@link android.content.Context#stopService stopService()}.</p>
+
+<p>Компонент приложения, например, операция, может запустить службу, вызвав метод {@link
+android.content.Context#startService startService()} и передав объект {@link android.content.Intent},
+который указывает службу и любые данные, которые служба должна использовать. Служба получает
+этот объект {@link android.content.Intent} в методе {@link android.app.Service#onStartCommand
+onStartCommand()}.</p>
+
+<p>Предположим, что операции требуется сохранить некоторые данные в сетевой базе данных. Операция может
+запустить службу и предоставить ей данные для сохранения, передав намерение в метод {@link
+android.content.Context#startService startService()}. Служба получает намерение в методе {@link
+android.app.Service#onStartCommand onStartCommand()}, подключается к Интернету и выполняет транзакцию
+с базой данных. Когда транзакция выполнена, служба останавливается
+самостоятельно и уничтожается.</p>
+
+<p class="caution"><strong>Внимание!</strong> По умолчанию службы работают в том же процессе, что и приложение,
+в котором они объявлены, а также в основном потоке этого приложения. Поэтому, если ваша служба
+выполняет интенсивные или блокирующие операции, в то время как пользователь взаимодействует с операцией из того же
+приложения, служба будет замедлять выполнение операции. Чтобы избежать негативного воздействия на скорость работы
+приложения, вы должны запустить новый поток внутри службы.</p>
+
+<p>Традиционно имеется два класса, которые вы можете наследовать для создания запущенной службы:</p>
+<dl>
+  <dt>{@link android.app.Service}</dt>
+  <dd>Это базовый класс для всех служб. Когда вы наследуете этот класс, важно
+создать новый поток, в котором будет выполняться вся работа службы, поскольку по умолчанию служба использует основной поток вашего
+приложения, что может замедлить любую операцию, которую
+выполняет ваше приложение.</dd>
+  <dt>{@link android.app.IntentService}</dt>
+  <dd>Это подкласс класса {@link android.app.Service}, который использует рабочий поток для обработки всех
+запросов запуска поочередно. Это оптимальный вариант, если вам не требуется, чтобы ваша служба
+обрабатывала несколько запросов одновременно. Достаточно реализовать метод {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}, который получает намерение для каждого
+запроса запуска, позволяя выполнять фоновую работу.</dd>
+</dl>
+
+<p>В следующих разделах описано, как реализовать службу с помощью любого их этих
+классов.</p>
+
+
+<h3 id="ExtendingIntentService">Наследование класса IntentService</h3>
+
+<p>Так как большинству запущенных приложений не требуется обрабатывать несколько запросов одновременно,
+(что может быть действительно опасным сценарием), вероятно будет лучше, если вы
+реализуете свою службу с помощью класса {@link android.app.IntentService}.</p>
+
+<p>Класс {@link android.app.IntentService} делает следующее:</p>
+
+<ul>
+  <li>Создает рабочий поток по умолчанию, который выполняет все намерения, доставленные в метод {@link
+android.app.Service#onStartCommand onStartCommand()}, отдельно от основного потока
+вашего приложения.</li>
+  <li>Создает рабочую очередь, которая передает намерения по одному в вашу реализацию метода {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}, поэтому вы не должны беспокоиться
+относительно многопоточности.</li>
+  <li>Останавливает службу после обработки всех запросов запуска, поэтому вам никогда не требуется вызывать 
+{@link android.app.Service#stopSelf}.</li>
+  <li>Предоставляет реализацию метода {@link android.app.IntentService#onBind onBind()} по умолчанию, которая
+возвращает null.</li>
+  <li>Предоставляет реализацию метода {@link android.app.IntentService#onStartCommand
+onStartCommand()} по умолчанию, которая отправляет намерение в рабочую очередь и затем в вашу реализацию {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}.</li>
+</ul>
+
+<p>Все это означает, что вам достаточно реализовать метод {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} для выполнения работы, предоставленной
+клиентом. (Хотя, кроме того, вы должны предоставить маленький конструктор для службы).</p>
+
+<p>Здесь приведен пример реализации класса {@link android.app.IntentService}:</p>
+
+<pre>
+public class HelloIntentService extends IntentService {
+
+  /**
+   * A constructor is required, and must call the super {@link android.app.IntentService#IntentService}
+   * constructor with a name for the worker thread.
+   */
+  public HelloIntentService() {
+      super("HelloIntentService");
+  }
+
+  /**
+   * The IntentService calls this method from the default worker thread with
+   * the intent that started the service. When this method returns, IntentService
+   * stops the service, as appropriate.
+   */
+  &#64;Override
+  protected void onHandleIntent(Intent intent) {
+      // Normally we would do some work here, like download a file.
+      // For our sample, we just sleep for 5 seconds.
+      long endTime = System.currentTimeMillis() + 5*1000;
+      while (System.currentTimeMillis() &lt; endTime) {
+          synchronized (this) {
+              try {
+                  wait(endTime - System.currentTimeMillis());
+              } catch (Exception e) {
+              }
+          }
+      }
+  }
+}
+</pre>
+
+<p>Это все, что нужно: конструктор и реализация класса {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}.</p>
+
+<p>Если вы решили переопределить также и другие методы обратного вызова, такие как {@link
+android.app.IntentService#onCreate onCreate()}, {@link
+android.app.IntentService#onStartCommand onStartCommand()} или {@link
+android.app.IntentService#onDestroy onDestroy()}, обязательно вызовите реализацию суперкласса,
+чтобы класс {@link android.app.IntentService} мог правильно обрабатывать жизненный цикл рабочего потока.</p>
+
+<p>Например, метод {@link android.app.IntentService#onStartCommand onStartCommand()} должен возвращать
+реализацию по умолчанию (которая доставляет намерение в {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}):</p>
+
+<pre>
+&#64;Override
+public int onStartCommand(Intent intent, int flags, int startId) {
+    Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+    return super.onStartCommand(intent,flags,startId);
+}
+</pre>
+
+<p>Помимо {@link android.app.IntentService#onHandleIntent onHandleIntent()}, единственный метод,
+из которого вам не требуется вызывать суперкласс, это метод {@link android.app.IntentService#onBind
+onBind()} (но его нужно реализовывать только в случае, если ваша служба допускает привязку).</p>
+
+<p>В следующем разделе вы увидите, как реализовывается служба такого же типа при наследовании
+базового класса {@link android.app.Service}, которая содержит намного больше кода, но которая может
+подойти, если вам требуется обрабатывать одновременные запросы запуска.</p>
+
+
+<h3 id="ExtendingService">Наследование класса Service</h3>
+
+<p>Как вы видели в предыдущем разделе, использование класса {@link android.app.IntentService} значительно упрощает
+реализацию запущенной службы. Однако, если необходимо, чтобы ваша служба
+поддерживала многопоточность (вместо обработки запросов запуска через рабочую очередь), можно
+наследовать класс {@link android.app.Service} для обработки каждого намерения.</p>
+
+<p>В качестве примера приведена следующая реализация класса {@link
+android.app.Service}, которая выполняет ту же работу, как и пример выше, использующий класс {@link
+android.app.IntentService}. То есть для каждого запроса запуска он использует рабочий поток для выполнения
+задания и обрабатывает запросы по одному.</p>
+
+<pre>
+public class HelloService extends Service {
+  private Looper mServiceLooper;
+  private ServiceHandler mServiceHandler;
+
+  // Handler that receives messages from the thread
+  private final class ServiceHandler extends Handler {
+      public ServiceHandler(Looper looper) {
+          super(looper);
+      }
+      &#64;Override
+      public void handleMessage(Message msg) {
+          // Normally we would do some work here, like download a file.
+          // For our sample, we just sleep for 5 seconds.
+          long endTime = System.currentTimeMillis() + 5*1000;
+          while (System.currentTimeMillis() &lt; endTime) {
+              synchronized (this) {
+                  try {
+                      wait(endTime - System.currentTimeMillis());
+                  } catch (Exception e) {
+                  }
+              }
+          }
+          // Stop the service using the startId, so that we don't stop
+          // the service in the middle of handling another job
+          stopSelf(msg.arg1);
+      }
+  }
+
+  &#64;Override
+  public void onCreate() {
+    // Start up the thread running the service.  Note that we create a
+    // separate thread because the service normally runs in the process's
+    // main thread, which we don't want to block.  We also make it
+    // background priority so CPU-intensive work will not disrupt our UI.
+    HandlerThread thread = new HandlerThread("ServiceStartArguments",
+            Process.THREAD_PRIORITY_BACKGROUND);
+    thread.start();
+
+    // Get the HandlerThread's Looper and use it for our Handler
+    mServiceLooper = thread.getLooper();
+    mServiceHandler = new ServiceHandler(mServiceLooper);
+  }
+
+  &#64;Override
+  public int onStartCommand(Intent intent, int flags, int startId) {
+      Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+
+      // For each start request, send a message to start a job and deliver the
+      // start ID so we know which request we're stopping when we finish the job
+      Message msg = mServiceHandler.obtainMessage();
+      msg.arg1 = startId;
+      mServiceHandler.sendMessage(msg);
+
+      // If we get killed, after returning from here, restart
+      return START_STICKY;
+  }
+
+  &#64;Override
+  public IBinder onBind(Intent intent) {
+      // We don't provide binding, so return null
+      return null;
+  }
+
+  &#64;Override
+  public void onDestroy() {
+    Toast.makeText(this, "service done", Toast.LENGTH_SHORT).show();
+  }
+}
+</pre>
+
+<p>Как можно видеть, этот код значительно длиннее, чем код с использованием класса {@link android.app.IntentService}.</p>
+
+<p>Однако, так как вы обрабатываете каждый вызов {@link android.app.Service#onStartCommand
+onStartCommand()} самостоятельно, вы можете выполнять несколько запросов одновременно. Данный код
+выполняет не совсем эту работу, но при необходимости вы можете создавать новые потоки для каждого
+запроса и сразу запускать их (а не ожидать завершения предыдущего запроса).</p>
+
+<p>Обратите внимание, что метод {@link android.app.Service#onStartCommand onStartCommand()} должен
+возвращать целое число. Это целое число описывает, как система должна продолжать выполнение службы в случае,
+когда система уничтожила ее (как описано выше, реализация по умолчанию для класса {@link
+android.app.IntentService} обрабатывает эту ситуацию, хотя вы изменить ход реализации). Значение,
+возвращаемое методом {@link android.app.Service#onStartCommand onStartCommand()}, должно быть одной из следующих
+констант:</p>
+
+<dl>
+  <dt>{@link android.app.Service#START_NOT_STICKY}</dt>
+    <dd>Если система уничтожает службу после возвращения из {@link android.app.Service#onStartCommand
+onStartCommand()}, <em>не нужно</em> повторно создавать службу, если нет ожидающих
+доставки намерений. Это самый безопасный вариант, позволяющий избежать запуска вашей службы, когда это не нужно
+и когда ваше приложение может просто перезапустить любые незавершенные задания.</dd>
+  <dt>{@link android.app.Service#START_STICKY}</dt>
+    <dd>Если система уничтожает службу после возвращения из {@link android.app.Service#onStartCommand
+onStartCommand()}, повторно создайте службу и вызовите {@link
+android.app.Service#onStartCommand onStartCommand()}, но <em>не</em> передавайте последнее намерение повторно.
+Вместо этого система вызывает метод {@link android.app.Service#onStartCommand onStartCommand()} с намерением,
+которое имеет значение null, если нет ожидающих намерений для запуска службы. Если ожидающие намерения есть,
+они доставляются. Это подходит для мультимедийных проигрывателей (или подобных служб), которые не
+выполняют команды, а работают независимо и ожидают задание.</dd>
+  <dt>{@link android.app.Service#START_REDELIVER_INTENT}</dt>
+    <dd>Если система уничтожает службу после возвращения из {@link android.app.Service#onStartCommand
+onStartCommand()}, повторно создайте службу и вызовите {@link
+android.app.Service#onStartCommand onStartCommand()} с последним намерением, которое было доставлено
+в службу. Все ожидающие намерения доставляются по очереди. Это подходит для служб,
+активно выполняющих задание, которое должно быть возобновлено немедленно, например, для загрузок файла.</dd>
+</dl>
+<p>Для получения дополнительных сведений об этих возвращаемых значениях см. справочную документацию по ссылке для каждой
+константы.</p>
+
+
+
+<h3 id="StartingAService">Запуск службы</h3>
+
+<p>Можно запустить службу из операции или другого компонента приложения, передав объект
+{@link android.content.Intent} (указывающий службу, которую требуется запустить) в {@link
+android.content.Context#startService startService()}. Система Android вызывает метод {@link
+android.app.Service#onStartCommand onStartCommand()} службы и передает ей {@link
+android.content.Intent}. (Ни в коем случае не следует вызывать метод {@link android.app.Service#onStartCommand
+onStartCommand()} напрямую).</p>
+
+<p>Например, операция может запустить службу из примера в предыдущем разделе ({@code
+HelloSevice}), используя явное намерение с помощью {@link android.content.Context#startService
+startService()}:</p>
+
+<pre>
+Intent intent = new Intent(this, HelloService.class);
+startService(intent);
+</pre>
+
+<p>Метод {@link android.content.Context#startService startService()} возвращается немедленно, и система
+Android вызывает метод службы {@link android.app.Service#onStartCommand
+onStartCommand()}. Если служба еще не выполняется, система сначала вызывает {@link
+android.app.Service#onCreate onCreate()}, а затем {@link android.app.Service#onStartCommand
+onStartCommand()}.</p>
+
+<p>Если служба также не представляет привязку, намерение, доставляемое с помощью {@link
+android.content.Context#startService startService()}, является единственным режимом связи между
+компонентом приложения и службой. Однако, если вы хотите, чтобы служба оправляла результат обратно,
+клиент, который запускает службу, может создать объект {@link android.app.PendingIntent} для сообщения
+(с помощью {@link android.app.PendingIntent#getBroadcast getBroadcast()}) и доставить его в службу
+в объекте {@link android.content.Intent}, который запускает службу. Затем служба может использовать
+сообщение для доставки результата.</p>
+
+<p>Несколько запросов запуска службы приводят к нескольким соответствующим вызовам метода
+{@link android.app.Service#onStartCommand onStartCommand()} службы. Однако для ее остановки достаточно только одного запроса на остановку
+службы (с помощью {@link android.app.Service#stopSelf stopSelf()} или {@link
+android.content.Context#stopService stopService()}).</p>
+
+
+<h3 id="Stopping">Остановка службы</h3>
+
+<p>Запущенная служба должна управлять своим жизненным циклом. То есть, система не останавливает и не
+уничтожает службу, если не требуется восстановить память системы, и служба
+продолжает работу после возвращения из метода {@link android.app.Service#onStartCommand onStartCommand()}. Поэтому
+служба должна останавливаться самостоятельно посредством вызова метода {@link android.app.Service#stopSelf stopSelf()}, либо другой
+компонент может остановить ее посредством вызова метода {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Получив запрос на остановку посредством {@link android.app.Service#stopSelf stopSelf()} или {@link
+android.content.Context#stopService stopService()}, система как можно скорее уничтожает службу
+.</p>
+
+<p>Однако, если служба обрабатывает несколько запросов {@link
+android.app.Service#onStartCommand onStartCommand()} одновременно, вы не должны останавливать службу
+после завершения обработки запроса запуска, поскольку вы, вероятно, уже получили новый
+запрос запуска (остановка в конце первого запроса привела бы к прерыванию второго). Чтобы избежать
+этой проблемы, вы можете использовать метод {@link android.app.Service#stopSelf(int)}, гарантирующий, что ваш запрос на
+остановку службы всегда основан на самом последнем запросе запуска. То есть, когда вы вызываете {@link
+android.app.Service#stopSelf(int)}, вы передаете идентификатор запроса запуска (идентификатор <code>startId</code>,
+доставленный в {@link android.app.Service#onStartCommand onStartCommand()}), которому соответствует ваш
+запрос остановки. Тогда, если служба получит новый запрос запуска до того, как вы сможете вызвать {@link
+android.app.Service#stopSelf(int)}, идентификатор не будет совпадать и служба не будет остановлена.</p>
+
+<p class="caution"><strong>Внимание!</strong> Ваше приложение обязательно должно останавливать свои службы по окончании работы,
+чтобы избежать расходования ресурсов системы и потребления энергии аккумулятора. При необходимости
+другие компоненты могут остановить службу посредством вызова метода {@link
+android.content.Context#stopService stopService()}. Даже если вы можете выполнять привязку службы,
+следует всегда останавливать службу самостоятельно, если она когда-либо получила вызов {@link
+android.app.Service#onStartCommand onStartCommand()}.</p>
+
+<p>Дополнительные сведения о жизненном цикле службы представлены в разделе <a href="#Lifecycle">Управление жизненным циклом службы</a> ниже.</p>
+
+
+
+<h2 id="CreatingBoundService">Создание привязанной службы</h2>
+
+<p>Привязанная служба — это служба, которая допускает привязку к ней компонентов приложения посредством вызова {@link
+android.content.Context#bindService bindService()} для создания долговременного соединения
+(и обычно не позволяет компонентам <em>запускать</em> ее посредством вызова {@link
+android.content.Context#startService startService()}).</p>
+
+<p>Вы должны создать привязанную службу, когда вы хотите взаимодействовать со службой из операций
+и других компонентов вашего приложения или показывать некоторые функции вашего приложения
+другим приложениям посредством межпроцессного взаимодействия (IPC).</p>
+
+<p>Чтобы создать привязанную службу, необходимо реализовать метод обратного вызова {@link
+android.app.Service#onBind onBind()} для возвращения объекта {@link android.os.IBinder},
+который определяет интерфейс взаимодействия со службой. После этого другие компоненты приложения могут вызвать
+метод {@link android.content.Context#bindService bindService()} для извлечения интерфейса и
+начать вызывать методы службы. Служба существует только для обслуживания привязанного к ней компонента приложения,
+поэтому, когда нет компонентов, привязанных к службе, система уничтожает ее
+(вам <em>не</em> требуется останавливать привязанную службу, как это требуется для службы, запущенной
+посредством {@link android.app.Service#onStartCommand onStartCommand()}).</p>
+
+<p>Чтобы создать привязанную службу, необходимо в первую очередь определить интерфейс, взаимодействия
+клиента со службой. Этот интерфейс между службой
+и клиентом должен быть реализацией объекта {@link android.os.IBinder}, которую ваша служба должна
+возвращать из метода обратного вызова {@link android.app.Service#onBind
+onBind()}. После того, как клиент получает объект {@link android.os.IBinder}, он может начать
+взаимодействие со службой посредством этого интерфейса.</p>
+
+<p>Одновременно к службе могут быть привязаны несколько клиентов. Когда клиент заканчивает взаимодействие
+со службой, он вызывает {@link android.content.Context#unbindService unbindService()} для отмены привязки. Как только
+не остается ни одного клиента, привязанного к службе, система уничтожает службу.</p>
+
+<p>Существует несколько способов реализации привязанной службы, и эти реализации сложнее,
+чем реализации запущенной службы, поэтому обсуждение привязанной службы приведено в отдельном
+документе <a href="{@docRoot}guide/components/bound-services.html">Привязанные службы</a>.</p>
+
+
+
+<h2 id="Notifications">Отправка уведомлений пользователю</h2>
+
+<p>После запуска служба может уведомлять пользователя о событиях, используя <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">Всплывающие уведомления</a> или <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Уведомления в строке состояния</a>.</p>
+
+<p>Всплывающее уведомление — это сообщение, кратковременно появляющееся на поверхности текущего окна,
+тогда как уведомление в строке состояния — это значок в строке состояния с сообщением,
+который пользователь может выбрать, чтобы выполнить действие (такое как запуск операции).</p>
+
+<p>Обычно уведомление в строке состояния является самым удобным решением, когда завершается какая-то фоновая работа
+(например, завершена
+загрузка файла), и пользователь может действовать. Когда пользователь выбирает уведомление в
+расширенном виде, уведомление может запустить операцию (например, для просмотра загруженного файла).</p>
+
+<p>Дополнительную информацию см. в руководствах для разработчиков <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">Всплывающие уведомления</a> и<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">
+Уведомления в строке состояния</a>.</p>
+
+
+
+<h2 id="Foreground">Запуск службы на переднем плане</h2>
+
+<p>Служба переднего плана — это служба, о которой пользователь активно
+осведомлен, и поэтому она не является кандидатом для удаления системой в случае нехватки памяти. Служба
+переднего плана должна выводить уведомление в строку состояния, которая находится под заголовком
+«Постоянные». Это означает, что уведомление не может быть удалено, пока служба
+не будет остановлена или удалена с переднего плана.</p>
+
+<p>Например, музыкальный проигрыватель, который воспроизводит музыку из службы, должен быть настроен на работу
+на переднем плане, так как пользователь точно знает о
+его работе. Уведомление в строке состояния может показывать текущее произведение и позволять пользователю
+запускать операцию для взаимодействия с музыкальным проигрывателем.</p>
+
+<p>Для запроса на выполнение вашей службы на переднем плане вызовите метод {@link
+android.app.Service#startForeground startForeground()}. Этот метод имеет два параметра: целое число,
+которое однозначно идентифицирует уведомление и объект {@link
+android.app.Notification} для строки состояния. Например:</p>
+
+<pre>
+Notification notification = new Notification(R.drawable.icon, getText(R.string.ticker_text),
+        System.currentTimeMillis());
+Intent notificationIntent = new Intent(this, ExampleActivity.class);
+PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
+notification.setLatestEventInfo(this, getText(R.string.notification_title),
+        getText(R.string.notification_message), pendingIntent);
+startForeground(ONGOING_NOTIFICATION_ID, notification);
+</pre>
+
+<p class="caution"><strong>Внимание!</strong> Целочисленный идентификатор ID, который вы передаете в метод {@link
+android.app.Service#startForeground startForeground()}, не должен быть равен 0.</p>
+
+
+<p>Чтобы удалить службу с переднего плана, вызовите {@link
+android.app.Service#stopForeground stopForeground()}. Этот метод содержит логическое значение, указывающее,
+следует ли также удалять уведомление в строке состояния. Этот метод <em>не</em> останавливает
+службу. Однако, если вы останавливаете службу, работающую на переднем плане,
+уведомление также удаляется.</p>
+
+<p>Дополнительную информацию об уведомлениях см. в разделе <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Создание уведомлений
+в строке состояния</a>.</p>
+
+
+
+<h2 id="Lifecycle">Управление жизненным циклом службы</h2>
+
+<p>Жизненный цикл службы намного проще, чем жизненный цикл операции. Однако, намного важнее
+уделить пристальное внимание тому, как ваша служба создается и уничтожается, так как служба
+может работать в фоновом режиме без ведома пользователя.</p>
+
+<p>Жизненный цикл службы от создания до уничтожения может следовать двум 
+разным путям:</p>
+
+<ul>
+<li>Запущенная служба
+  <p>Служба создается, когда другой компонент вызывает метод {@link
+android.content.Context#startService startService()}. Затем служба работает в течение неограниченного времени и должна
+остановиться самостоятельно посредством вызова метода {@link
+android.app.Service#stopSelf() stopSelf()}. Другой компонент также может остановить службу
+посредством вызова метода {@link android.content.Context#stopService
+stopService()}. Когда служба останавливается, система уничтожает ее.</p></li>
+
+<li>Привязанная служба
+  <p>Служба создается, когда другой компонент (клиент) вызывает метод {@link
+android.content.Context#bindService bindService()}. Затем клиент взаимодействует со службой
+через интерфейс {@link android.os.IBinder}. Клиент может закрыть соединение посредством вызова
+метода {@link android.content.Context#unbindService unbindService()}. К одной службе могут быть привязано
+несколько клиентов, и когда все они отменяют привязку, система уничтожает службу. (Служба
+<em>не</em> должна останавливаться самостоятельно.)</p></li>
+</ul>
+
+<p>Эти два способа необязательно работают независимо друг от друга. То есть вы можете привязать службу, которая уже была
+запущена посредством метода {@link android.content.Context#startService startService()}. Например, фоновая
+музыкальная служба может быть запущена посредством вызова метода {@link android.content.Context#startService
+startService()} с объектом {@link android.content.Intent}, который идентифицирует музыку для воспроизведения. Позже,
+например, когда пользователь хочет получить доступ к управлению проигрывателем или информацию о текущем произведении,
+операция может установить привязку к службе посредством вызова метода {@link
+android.content.Context#bindService bindService()}. В подобных случаях методы {@link
+android.content.Context#stopService stopService()} и {@link android.app.Service#stopSelf
+stopSelf()} фактически не останавливают службу, пока не будет отменена привязка всех клиентов. </p>
+
+
+<h3 id="LifecycleCallbacks">Реализация обратных вызовов жизненного цикла</h3>
+
+<p>Подобно операции, служба содержит методы обратного вызова жизненного цикла, которые можно реализовать для контроля
+изменений состояния службы и выполнения работы в соответствующие моменты времени. Указанная ниже базовая
+служба показывает каждый из методов жизненного цикла.</p>
+
+<pre>
+public class ExampleService extends Service {
+    int mStartMode;       // indicates how to behave if the service is killed
+    IBinder mBinder;      // interface for clients that bind
+    boolean mAllowRebind; // indicates whether onRebind should be used
+
+    &#64;Override
+    public void {@link android.app.Service#onCreate onCreate}() {
+        // The service is being created
+    }
+    &#64;Override
+    public int {@link android.app.Service#onStartCommand onStartCommand}(Intent intent, int flags, int startId) {
+        // The service is starting, due to a call to {@link android.content.Context#startService startService()}
+        return <em>mStartMode</em>;
+    }
+    &#64;Override
+    public IBinder {@link android.app.Service#onBind onBind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()}
+        return <em>mBinder</em>;
+    }
+    &#64;Override
+    public boolean {@link android.app.Service#onUnbind onUnbind}(Intent intent) {
+        // All clients have unbound with {@link android.content.Context#unbindService unbindService()}
+        return <em>mAllowRebind</em>;
+    }
+    &#64;Override
+    public void {@link android.app.Service#onRebind onRebind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()},
+        // after onUnbind() has already been called
+    }
+    &#64;Override
+    public void {@link android.app.Service#onDestroy onDestroy}() {
+        // The service is no longer used and is being destroyed
+    }
+}
+</pre>
+
+<p class="note"><strong>Примечание.</strong> В отличие от методов обратного вызова жизненного цикла операции, вам
+<em>не</em> требуется вызывать реализацию суперкласса этих методов обратного вызова.</p>
+
+<img src="{@docRoot}images/service_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Рисунок 2.</strong> Жизненный цикл службы. На схеме слева
+показан жизненный цикл, когда служба создана посредством метода {@link android.content.Context#startService
+startService()}, а на схеме справа показан жизненный цикл, когда служба создана
+посредством метода {@link android.content.Context#bindService bindService()}.</p>
+
+<p>С помощью реализации этих методов можно отслеживать два вложенных цикла в жизненном цикле службы: </p>
+
+<ul>
+<li><strong>Весь жизненный цикл</strong> службы происходит между вызовом метода {@link
+android.app.Service#onCreate onCreate()} и возвратом из метода {@link
+android.app.Service#onDestroy}. Подобно операции, служба выполняет начальную настройку в методе
+{@link android.app.Service#onCreate onCreate()} и освобождает все оставшиеся ресурсы в методе {@link
+android.app.Service#onDestroy onDestroy()}.  Например,
+служба воспроизведения музыки может создать поток для воспроизведения музыки в методе {@link
+android.app.Service#onCreate onCreate()}, затем остановить поток в методе {@link
+android.app.Service#onDestroy onDestroy()}.
+
+<p>Методы {@link android.app.Service#onCreate onCreate()} и {@link android.app.Service#onDestroy
+onDestroy()} вызываются для всех служб, независимо от метода создания:
+{@link android.content.Context#startService startService()} или {@link
+android.content.Context#bindService bindService()}.</p></li>
+
+<li><strong>Активный жизненный цикл</strong> службы начинается с вызова метода {@link
+android.app.Service#onStartCommand onStartCommand()} или {@link android.app.Service#onBind onBind()}.
+Каждый метод направляется намерением {@link
+android.content.Intent}, которое было передано методу {@link android.content.Context#startService
+startService()} или {@link android.content.Context#bindService bindService()}, соответственно.
+<p>Если служба запущена, активный жизненный цикл заканчивается одновременно с окончанием
+всего жизненного цикла (служба активна даже после возврата из метода {@link android.app.Service#onStartCommand
+onStartCommand()}). Если служба является привязанной, активный жизненный цикл заканчивается, когда возвращается метод {@link
+android.app.Service#onUnbind onUnbind()}.</p>
+</li>
+</ul>
+
+<p class="note"><strong>Примечание.</strong> Хотя запущенная служба останавливается посредством вызова
+метода {@link android.app.Service#stopSelf stopSelf()} или {@link
+android.content.Context#stopService stopService()}, для службы не существует соответствующего обратного вызова
+(нет обратного вызова {@code onStop()}). Поэтому, если служба не привязана к клиенту,
+система уничтожает ее при остановке службы — метод {@link
+android.app.Service#onDestroy onDestroy()} является единственным получаемым методом обратного вызова.</p>
+
+<p>Рисунок 2 иллюстрирует типичные методы обратного вызова для службы. Хотя на рисунке отделены
+службы, созданные посредством метода {@link android.content.Context#startService startService()}, от служб,
+созданных посредством метода {@link android.content.Context#bindService bindService()}, помните,
+что любая служба, независимо от способа запуска, позволяет клиентам выполнять привязку к ней.
+Поэтому служба, изначально созданная посредством метода {@link android.app.Service#onStartCommand
+onStartCommand()} (клиентом, который вызвал {@link android.content.Context#startService startService()}),
+может получать вызов метода {@link android.app.Service#onBind onBind()} (когда клиент вызывает
+метод {@link android.content.Context#bindService bindService()}).</p>
+
+<p>Дополнительные сведения о создании службы, которая обеспечивает привязку, см. в документе <a href="{@docRoot}guide/components/bound-services.html">Привязанные службы</a>,
+который содержит дополнительную информацию о методе обратного вызова {@link android.app.Service#onRebind onRebind()}
+в разделе <a href="{@docRoot}guide/components/bound-services.html#Lifecycle">Управление жизненным циклом
+привязанной службы</a>.</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>To learn how to query data from the system or other applications (such as contacts or media
+stored on the device), continue with the <b><a
+href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a></b>
+document.</p>
+-->
diff --git a/docs/html-intl/intl/ru/guide/components/tasks-and-back-stack.jd b/docs/html-intl/intl/ru/guide/components/tasks-and-back-stack.jd
new file mode 100644
index 0000000..c9fdc0e
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/components/tasks-and-back-stack.jd
@@ -0,0 +1,578 @@
+page.title=Задачи и стек переходов назад
+parent.title=Операции
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Содержание документа</h2>
+<ol>
+<li><a href="#ActivityState">Сохранение состояния операции</a></li></li>
+<li><a href="#ManagingTasks">Управление задачами</a>
+  <ol>
+    <li><a href="#TaskLaunchModes">Определение режимов запуска</a></li>
+    <li><a href="#Affinities">Обработка привязок</a></li>
+    <li><a href="#Clearing">Очистка стека переходов назад</a></li>
+    <li><a href="#Starting">Запуск задачи</a></li>
+  </ol>
+</li>
+</ol>
+
+<h2>Статьи</h2>
+<ol>
+  <li><a href="http://android-developers.blogspot.com/2010/04/multitasking-android-way.html">
+Многозадачность в системе Android</a></li>
+</ol>
+
+<h2>См. также:</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/navigation.html">Дизайн Android:
+навигация</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html">Элемент манифеста 
+{@code &lt;activity&gt;}</a></li>
+  <li><a href="{@docRoot}guide/components/recents.html">Экран обзора</a></li>
+</ol>
+</div>
+</div>
+
+
+<p>Обычно приложение содержит несколько <a href="{@docRoot}guide/components/activities.html">операций</a>. Каждая операция
+должна разрабатываться в связи с действием определенного типа, которое пользователь может выполнять, и может запускать другие
+операции. Например, приложение электронной почты может содержать одну операцию для отображения списка новых сообщений.
+Когда пользователь выбирает сообщение, открывается новая операция для просмотра этого сообщения.</p>
+
+<p>Операция может даже запускать операции, существующие в других приложениях на устройстве. Например,
+если ваше приложение хочет отправить сообщение электронной почты, вы можете определить намерение для выполнения 
+действия «отправить» и включить в него некоторые данные, например, адрес электронной почты и текст сообщения. После этого открывается операция из другого
+приложения, которая объявила, что она обрабатывает намерения такого типа. В этом случае намерение состоит в том, чтобы
+отправить сообщение электронной почты, поэтому в приложении электронной почты запускается операция «составить сообщение» (если одно намерение
+может обрабатываться несколькими операциями, система предлагает пользователю выбрать, какую из операций использовать). После отправки сообщения электронной почты
+ваша операция возобновляет работу, и все выглядит так, будто операция отправки электронной почты является частью вашего приложения. Хотя
+операции могут быть частями разных приложений, система Android поддерживает удобство работы
+пользователя, сохраняя обе операции в одной <em>задаче</em>.</p>
+
+<p>Задача — это коллекция операций, с которыми взаимодействует пользователь
+при выполнении определенного задания. Операции упорядочены в виде стека (<em>стека переходов назад</em>), в том
+порядке, в котором открывались операции.</p>
+
+<!-- SAVE FOR WHEN THE FRAGMENT DOC IS ADDED
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h3>Adding fragments to a task's back stack</h3>
+
+<p>Your activity can also include {@link android.app.Fragment}s to the back stack. For example,
+suppose you have a two-pane layout using fragments, one of which is a list view (fragment A) and the
+other being a layout to display an item from the list (fragment B). When the user selects an item
+from the list, fragment B is replaced by a new fragment (fragment C). In this case, it might be
+desireable for the user to navigate back to reveal fragment B, using the <em>Back</em> button.</p>
+<p>In order to add fragment B to the back stack so that this is possible, you must call {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} before you {@link
+android.app.FragmentTransaction#commit()} the transaction that replaces fragment B with fragment
+C.</p>
+<p>For more information about using fragments and adding them to the back stack, see the {@link
+android.app.Fragment} class documentation.</p>
+
+</div>
+</div>
+-->
+
+<p>Начальным местом для большинства задач является главный экран устройства. Когда пользователь касается значка в средстве
+запуска
+приложений (или ярлыка на главном экране), эта задача приложения переходит на передний план. Если для
+приложения нет задач (приложение не использовалось в последнее время), тогда создается новая задача
+и открывается «основная» операция для этого приложения в качестве корневой операции в стеке.</p>
+
+<p>Когда текущая операция запускает другую, новая операция помещается в вершину стека
+и получает фокус. Предыдущая операция остается в стеке, но ее выполнение останавливается. Когда операция останавливается
+, система сохраняет текущее состояние ее пользовательского интерфейса. Когда пользователь нажимает кнопку
+<em>Назад</em>,
+текущая операция удаляется из вершины стека (операция уничтожается) и возобновляется
+работа предыдущей операции (восстанавливается предыдущее состояние ее пользовательского интерфейса). Операции в стеке
+никогда не переупорядочиваются, только добавляются в стек и удаляются из него — добавляются в стек при запуске текущей операцией
+и удаляются, когда пользователь выходит из нее с помощью кнопки <em>Назад</em>. По существу,
+стек
+переходов назад работает по принципу «последним вошел — первым вышел». На рисунке 1 это поведение
+показано на временной шкале: состояние операций и текущее состояние стека переходов назад
+ показано в каждый момент времени.</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack.png" alt="" />
+<p class="img-caption"><strong>Рисунок 1.</strong> Иллюстрация того, как каждая новая операция в задаче
+добавляет элемент в стек переходов назад. Когда пользователь нажимает кнопку<em>Назад</em>, текущая
+операция
+уничтожается, и возобновляется работа предыдущей операции.</p>
+
+
+<p>Если пользователь продолжает нажимать кнопку <em>Назад</em>, операции поочередно удаляются из стека,
+открывая
+предыдущую операцию, пока пользователь не вернется на главный экран (или в операцию, которая была запущена
+в начале выполнения задачи). Когда все операции удалены из стека, задача прекращает существование.</p>
+
+<div class="figure" style="width:287px">
+<img src="{@docRoot}images/fundamentals/diagram_multitasking.png" alt="" /> <p
+class="img-caption"><strong>Рисунок 2.</strong> Две задачи: Задача B взаимодействует с пользователем
+на переднем плане, тогда как Задача A находится в фоновом режиме, ожидая возобновления.</p>
+</div>
+<div class="figure" style="width:215px">
+  <img src="{@docRoot}images/fundamentals/diagram_multiple_instances.png" alt="" /> <p
+class="img-caption"><strong>Рисунок 3.</strong> Создается несколько экземпляров одной операции.</p>
+</div>
+
+<p>Задача — это связанный блок, который может переходить в фоновый режим, когда пользователи начинают новую задачу или переходят
+на главный экран с помощью кнопки <em>Домой</em>. В фоновом режиме все операции
+задачи
+остановлены, но стек обратного вызова для задачи остается неизменным. Задача просто потеряла фокус во время
+выполнения другой задачи, как показано на рисунке 2. Затем задача может вернуться на передний план, так что пользователи
+могут продолжить ее с прерванного места. Предположим, например, что текущая задача (Задача A) содержит три операции
+в своем стеке — две операции под текущей операцией. Пользователь нажимает кнопку <em>Домой</em>,
+ затем запускает
+новое приложение из средства запуска приложений. Когда появляется главный экран, Задача A переходит
+в фоновый режим. Когда запускается новое приложение, система запускает задачу для этого приложения 
+(Задачу B) со своим собственным стеком операций. После взаимодействия с этим
+приложением пользователь снова возвращается на главный экран и выбирает изначально запущенную
+Задачу A. Теперь Задача A переходит на передний
+план — все три операции ее стека остались неизменными, и возобновляется операция, находящаяся на
+вершине стека. В этот
+момент пользователь может также переключиться обратно на Задачу B, перейдя на главный экран и выбрав значок приложения,
+которое запустило эту задачу (или выбрав задачу приложения на
+<a href="{@docRoot}guide/components/recents.html">экране обзора</a>).
+Это пример многозадачности в системе Android.</p>
+
+<p class="note"><strong>Примечание.</strong> В фоновом режиме может находиться несколько задач одновременно.
+Однако, если пользователь запускает много фоновых задач одновременно, система может начать
+уничтожение фоновых операций для освобождения памяти, что приведет к потере состояния задач.
+См. следующий раздел <a href="#ActivityState">Состояние операции</a>.</p>
+
+<p>Поскольку операции в стеке никогда не переупорядочиваются, если ваше приложение позволяет
+пользователям запускать определенную операцию из нескольких операций, новый экземпляр
+такой операции создается и помещается в стек (вместо помещения любого из предыдущих экземпляров
+операции на вершину стека). По существу, для одной операции вашего приложения может быть создано несколько
+экземпляров (даже из разных задач), как показано на рисунке 3. Поэтому, если пользователь переходит назад с помощью
+кнопки <em>Назад</em>, каждый экземпляр операции появляется в том порядке, в котором они
+были открыты (каждый
+со своим состоянием пользовательского интерфейса). Однако вы можете изменить это поведение, если вы не хотите, чтобы создавалось несколько
+экземпляров операции. Это описано в разделе <a href="#ManagingTasks">Управление задачами</a> ниже.</p>
+
+
+<p>Подведем итоги поведения операций и задач:</p>
+
+<ul>
+  <li>Когда Операция A запускает Операцию B, Операция A останавливается, но система сохраняет ее состояние
+(например, положение прокрутки и текст, введенный в формы).
+Если пользователь нажимает кнопку <em>Назад</em> в Операции B, Операция A возобновляет работу
+из сохраненного состояния.</li>
+  <li>Когда пользователь выходит из задачи нажатием кнопки <em>Домой</em>, текущая операция
+останавливается и
+ее задача переводится в фоновый режим. Система сохраняет состояние каждой операции в задаче. Если
+пользователь впоследствии возобновляет задачу, выбирая значок запуска задачи, она переводится
+на передний план и возобновляет операцию на вершине стека.</li>
+  <li>Если пользователь нажимает кнопку <em>Назад</em>, текущая операция удаляется из стека
+и
+уничтожается. Возобновляется предыдущая операция в стеке. Когда операция уничтожается, система
+<em>не</em> сохраняет состояние операции.</li>
+  <li>Можно создавать несколько экземпляров операции, даже из других задач.</li>
+</ul>
+
+
+<div class="note design">
+<p><strong>Дизайн навигации</strong></p>
+  <p>Для получения дополнительной информации о работе навигации в приложении Android, прочитайте раздел <a href="{@docRoot}design/patterns/navigation.html">Навигация</a> руководства «Дизайн для Android».</p>
+</div>
+
+
+<h2 id="ActivityState">Сохранение состояния операции</h2>
+
+<p>Как говорилось выше, система по умолчанию сохраняет состояние операции, когда она
+останавливается. Таким образом, когда пользователи возвращаются обратно в предыдущую операцию, восстанавливается ее пользовательский интерфейс
+в момент остановки. Однако вы можете — и <strong>должны</strong> — с упреждением сохранять
+состояние ваших операций посредством методов обратного вызова на случай уничтожения операции и необходимости ее
+повторного создания.</p>
+
+<p>Когда система останавливает одну из ваших операций (например, когда запускается новая операция или задача
+перемещается в фоновый режим), система может полностью уничтожить эту операцию, если необходимо восстановить
+память системы. Когда это происходит, информация о состоянии операции теряется. Если это происходит,
+система
+знает, что операция находится в стеке переходов назад, но когда операция переходит
+на вершину стека, система должна создать ее повторно (а не возобновить ее). Чтобы избежать
+потери работы пользователя, вы должны с упреждением сохранять ее путем реализации методов
+обратного вызова {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+в вашей операции.</p>
+
+<p>Дополнительную информацию о сохранении состояния вашей операции см. в документе
+<a href="{@docRoot}guide/components/activities.html#SavingActivityState">Операции</a>.</p>
+
+
+
+<h2 id="ManagingTasks">Управление задачами</h2>
+
+<p>Для большинства приложений способ, которым Android управляет задачами и стеком переходов назад, описанный выше, — помещение всех
+операций последовательно в одну задачу в стек «последним вошёл — первым вышел», —
+работает хорошо, и вы не должны беспокоиться о связи ваших операций с задачами
+или об их существовании в стеке переходов назад. Однако вы можете решить, что вы хотите прервать
+обычное поведение. Возможно, вы хотите, чтобы операция в вашем приложении начинала новую задачу
+при запуске (вместо помещения в текущую задачу), или при запуске операции вы хотите
+перенести на передний план ее существующий экземпляр (вместо создания нового
+экземпляра на вершине стека переходов назад), или вы хотите чтобы при выходе пользователя из задачи из вашего стек переходов удалялись все
+операции, кроме корневой операции.</p>
+
+<p>Вы можете совершать эти и многие другие действия с помощью атрибутов в элементе манифеста
+<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+и с помощью флагов в намерении, которое вы передаете в
+{@link android.app.Activity#startActivity startActivity()}.</p>
+
+<p>В этом смысле главными атрибутами <a href="{@docRoot}guide/topics/manifest/activity-element.html">
+{@code &lt;activity&gt;}</a>, которые вы можете использовать, являются следующие:</p>
+
+<ul class="nolist">
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">
+  {@code taskAffinity}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">
+  {@code launchMode}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+  {@code allowTaskReparenting}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">
+  {@code clearTaskOnLaunch}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+  {@code alwaysRetainTaskState}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">
+  {@code finishOnTaskLaunch}</a></li>
+</ul>
+
+<p>А главными флагами намерений, которые вы можете использовать, являются следующие:</p>
+
+<ul class="nolist">
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</li>
+</ul>
+
+<p>В следующих разделах показано, как можно использовать эти атрибуты манифеста и флаги
+намерений для определения связи операций с задачами и их поведения в стеке переходов назад.</p>
+
+<p>Кроме того, отдельно обсуждаются рекомендации о представлении задач и операций и управлении ими
+на экране обзора. Дополнительную информацию см. в разделе
+<a href="{@docRoot}guide/components/recents.html">Экран обзора</a>. Обычно следует разрешить системе определить способ представления вашей задачи и
+операций на экране обзора. Вам не нужно менять это поведение.</p>
+
+<p class="caution"><strong>Внимание!</strong> В большинстве приложений не следует прерывать поведение
+операций и задач по умолчанию. Если вы обнаружили, что вашей операции необходимо изменить
+поведение по умолчанию, будьте внимательны и протестируйте удобство работы с операцией во время
+запуска и при обратной навигации к ней из других операций и задач с помощью кнопки <em>Назад</em>.
+Обязательно протестируйте поведение навигации, которое может противоречить поведению, ожидаемому пользователем.</p>
+
+
+<h3 id="TaskLaunchModes">Определение режимов запуска</h3>
+
+<p>Режимы запуска позволяют вам определять связь нового экземпляра операции
+с текущей задачей. Вы можете задавать различные режимы запуска двумя способами:</p>
+<ul class="nolist">
+  <li><a href="#ManifestForTasks">Использование файла манифеста</a>
+    <p>Когда вы объявляете операцию в вашем файле манифеста, вы можете указать, как операция
+должна связываться с задачами при ее запуске.</li>
+  <li><a href="#IntentFlagsForTasks">Использование флагов намерений</a>
+    <p>Когда вы вызываете {@link android.app.Activity#startActivity startActivity()},
+вы можете включить флаг в {@link android.content.Intent}, который объявляет, как должна быть связана
+новая операция с текущей задачей (и должна ли).</p></li>
+</ul>
+
+<p>По существу, если Операция A запускает Операцию B, Операция B может определить в своем манифесте, как она
+должна быть связана с текущей задачей (если вообще должна), а Операция A может также запросить, как Операция B
+должна быть связана с текущей задачей. Если обе операции определяют, как Операция B
+должна быть связана с задачей, тогда запрос Операции A (как определено в намерении) обрабатывается через
+запрос Операции B (как определено в ее манифесте).</p>
+
+<p class="note"><strong>Примечание.</strong> Некоторые режимы запуска, доступные для файла манифеста,
+недоступны в виде флагов для намерения и, аналогичным образом, некоторые режимы запуска, доступные в виде флагов
+для намерения, не могут быть определены в манифесте.</p>
+
+
+<h4 id="ManifestForTasks">Использование файла манифеста</h4>
+
+<p>При объявлении операции в вашем файле манифеста вы можете указать, как операция должна
+быть связана с задачей посредством атрибута <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> 
+элемента <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>.</p>
+
+<p>Атрибут <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> указывает инструкцию по запуску операции в
+задаче. Существует четыре различных режима запуска,
+которые вы можете назначить атрибуту
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">launchMode</a></code>:</p>
+
+<dl>
+<dt>{@code "standard"} (режим по умолчанию)</dt>
+  <dd>Режим по умолчанию. Система создает новый экземпляр операции в задаче, из
+которой она была запущена, и направляет ему намерение. Может быть создано несколько экземпляров операции,
+каждый экземпляр может принадлежать различным задачам, и одна задача может содержать несколько экземпляров.</dd>
+<dt>{@code "singleTop"}</dt>
+  <dd>Если экземпляр операции уже существует на вершине текущей задачи, система
+направляет намерение в этот экземпляр путем вызова его метода {@link
+android.app.Activity#onNewIntent onNewIntent()}, а не путем создания нового экземпляра
+операции. Может быть создано несколько экземпляров операции, каждый экземпляр может
+принадлежать различным задачам, и одна задача может содержать несколько экземпляров (но только если
+операция на вершине стека переходов назад <em>не</em> является существующим экземпляром операции).
+  <p>Предположим, что стек переходов назад задачи состоит из корневой операции A с операциями B, C
+и D на вершине (стек имеет вид A-B-C-D и D находится на вершине). Поступает намерение для операции типа D.
+Если D имеет режим запуска {@code "standard"} по умолчанию, запускается новый экземпляр класса и
+стек принимает вид A-B-C-D-D. Однако, если D имеет режим запуска {@code "singleTop"}, существующий экземпляр
+D получает намерение через {@link
+android.app.Activity#onNewIntent onNewIntent()}, так как этот экземпляр находится на вершине стека —
+стек сохраняет вид A-B-C-D. Однако, если поступает намерение для операции типа B, тогда в стек
+добавляется новый экземпляр B, даже если он имеет режим запуска {@code "singleTop"}.</p>
+  <p class="note"><strong>Примечание.</strong> Когда создается новый экземпляр операции,
+пользователь может нажать кнопку <em>Назад</em> для возврата к предыдущей операции. Но когда существующий
+экземпляр
+операции обрабатывает новое намерение, пользователь не может нажать кнопку <em>Назад</em> для возврата к
+состоянию
+операции до поступления нового намерения в {@link android.app.Activity#onNewIntent
+onNewIntent()}.</p>
+</dd>
+
+<dt>{@code "singleTask"}</dt>
+  <dd>Система создает новую задачу и создает экземпляр операции в корне новой задачи.
+Однако, если экземпляр операции уже существует в отдельной задаче, система направляет
+намерение в существующий экземпляр путем вызова его метода {@link
+android.app.Activity#onNewIntent onNewIntent()}, а не путем создания нового экземпляра. Одновременно
+может существовать только один экземпляр операции.
+  <p class="note"><strong>Примечание.</strong> Хотя операция запускает новую задачу, кнопка
+<em>Назад</em> возвращает пользователя к предыдущей операции.</p></dd>
+<dt>{@code "singleInstance"}.</dt>
+  <dd>То же, что и {@code "singleTask"}, но при этом система не запускает никаких других операций
+в задаче, содержащей этот экземпляр. Операция всегда является единственным членом своей задачи;
+любые операции, запущенные этой операцией, открываются в отдельной задаче.</dd>
+</dl>
+
+
+<p>В качестве другого примера: приложение Android Browser объявляет, что операция веб-браузера должна
+всегда открываться в своей собственной задаче — путем указания режима запуска {@code singleTask} в элементе <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>.
+Это означает, что если ваше приложение выдает
+намерение открыть Android Browser, его операция <em>не</em> помещается в ту же
+задачу, что и ваше приложение. Вместо этого, либо для браузера запускается новая задача, либо, если браузер уже
+имеет задачу, работающую в фоновом режиме, эта задача переводится на передний план для обработки нового
+намерения.</p>
+
+<p>И при запуске операции в новой задаче, и при запуске операции в существующей задаче, 
+ кнопка <em>Назад</em> всегда возвращает пользователя к предыдущей операции. Однако, если вы
+запускаете операцию, которая указывает режим запуска {@code singleTask}, вся задача переводится на передний план, если экземпляр
+этой операции существует в фоновой задаче. В этот момент
+стек переходов назад помещает все операции из задачи, переведенной на передний план, на вершину
+стека. Рисунок 4 иллюстрирует сценарий этого типа.</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack_singletask_multiactivity.png" alt="" />
+<p class="img-caption"><strong>Рисунок 4.</strong> Представление того, как операция с режимом
+запуска singleTask добавляется в стек переходов назад. Если операция уже является частью
+фоновой задачи со своим собственным стеком переходов назад, то весь стек переходов назад также переносится вверх,
+на вершину текущей задачи.</p>
+
+<p>Дополнительную информацию об использовании режимов запуска в файле манифеста см. в документации элемента
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>,
+ где более подробно обсуждаются атрибут {@code launchMode}
+и принимаемые значения.</p>
+
+<p class="note"><strong>Примечание.</strong> Поведение, которое вы указываете для вашей операции с помощью атрибута <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>,
+может быть переопределено флагами, включенными в намерение, которое запускает вашу операцию, как описано
+в следующем разделе.</p>
+
+
+
+<h4 id="#IntentFlagsForTasks">Использование флагов намерений</h4>
+
+<p>При запуске операции вы можете изменить связывание операции с ее задачей по умолчанию
+путем включения флагов в намерение, которое доставляется в {@link
+android.app.Activity#startActivity startActivity()}. Для изменения поведения по умолчанию
+вы можете использовать следующие флаги:</p>
+
+<p>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</dt>
+    <dd>Запуск операции в новой задаче. Если задача уже работает для операции, которую вы запускаете
+сейчас, эта задача переводится на передний план, ее последнее состояние восстанавливается, и операция получает
+новое намерение в {@link android.app.Activity#onNewIntent onNewIntent()}.
+    <p>Это приводит к тому же поведению, что и значение <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> в режиме {@code "singleTask"},
+как описано в предыдущем разделе.</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</dt>
+    <dd>Если запускаемая операция является текущей операцией (находится на вершине стека переходов назад), тогда
+вызов в {@link android.app.Activity#onNewIntent onNewIntent()} получает существующий экземпляр,
+ без создания нового экземпляра операции.
+    <p>Это приводит к тому же поведению, что и значение <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> в режиме {@code "singleTop"},
+как описано в предыдущем разделе.</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</dt>
+    <dd>Если запускаемая операция уже работает в текущей задаче, тогда вместо
+запуска нового экземпляра этой операции уничтожаются все другие операции, расположенные в стеке выше нее
+, и это намерение доставляется в возобновленный экземпляр этой операции (которая теперь находится на вершине стека)
+посредством {@link android.app.Activity#onNewIntent onNewIntent()}).
+    <p>Для формирования такого поведения не существует значения для атрибута
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>.</p>
+    <p>Флаг {@code FLAG_ACTIVITY_CLEAR_TOP} чаще всего используется совместно с
+флагом {@code FLAG_ACTIVITY_NEW_TASK}.
+При использовании вместе эти флаги позволяют найти существующую операцию
+в другой задаче и поместить ее в положение, где она сможет реагировать на намерение. </p>
+    <p class="note"><strong>Примечание.</strong> Если для назначенной операции установлен режим запуска
+{@code "standard"},
+она также удаляется из стека и на ее месте запускается новый экземпляр, чтобы обработать
+входящее намерение.  Именно поэтому в режиме запуска {@code "standard"} всегда создается новый
+экземпляр для нового намерения. </p>
+</dd>
+</dl>
+
+
+
+
+
+<h3 id="Affinities">Обработка привязок</h3>
+
+<p><em>Привязка</em> указывает предпочтительную принадлежность операции к задаче. По умолчанию все
+операции из одного приложения имеют привязку друг к другу. Поэтому по умолчанию все
+операции одного приложения предпочитают находиться в одной задаче. Однако вы можете изменить
+привязку по умолчанию для операции. Операции, определенные
+в разных приложениях, могут совместно использовать одну привязку; таким же образом операции, определенные в одном приложении, могут получить
+привязки к разным задачам.</p>
+
+<p>Вы можете изменить привязку любой данный операции с помощью
+атрибута <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+элемента <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>.</p>
+
+<p>Атрибут <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+принимает строковое значение, которое должно отличаться от имени пакета по умолчанию,
+объявленного в элементе <a href="{@docRoot}guide/topics/manifest/manifest-element.html">
+{@code &lt;manifest&gt;}
+</a>, поскольку система использует это имя для идентификации привязки задачи по умолчанию
+для приложения.</p>
+
+<p>Привязка вступает в игру в двух случаях:</p>
+<ul>
+  <li>Когда намерение, запускающее
+операцию, содержит флаг
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}.
+
+<p>Новая операция по умолчанию запускается в задаче той операции,
+которая вызвала {@link android.app.Activity#startActivity startActivity()}. Она помещается в тот же
+стек переходов назад, что и вызывающая операция.  Однако, если намерение, переданное
+в {@link android.app.Activity#startActivity startActivity()},
+содержит флаг {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK},
+ система ищет другую задачу для помещения новой операции. Часто это новая задача.
+Но необязательно.  Если уже существует задача с той же привязкой, что
+и у новой операции, операция запускается в этой задаче.  Если нет, операция начинает новую задачу.</p>
+
+<p>Если этот флаг приводит к тому, что операция начинает новую задачу, и пользователь нажимает кнопку <em>Домой</em>
+для выхода из нее,
+должен существовать способ, позволяющий пользователю вернуться к задаче. Некоторые объекты (такие как
+диспетчер уведомлений) всегда запускают операции во внешней задаче, а не в составе собственной, поэтому
+они всегда помещают флаг {@code FLAG_ACTIVITY_NEW_TASK} в намерения, которые они передают
+в {@link android.app.Activity#startActivity startActivity()}.
+Если у вас есть операция, которую можно вызвать
+внешним объектом, использующим этот флаг, позаботьтесь о том, чтобы у пользователя был независимый способ
+вернуться в запущенную задачу, например, с помощью значка запуска (корневая операция задачи
+содержит фильтр намерений {@link android.content.Intent#CATEGORY_LAUNCHER}; см. раздел <a href="#Starting">Запуск задачи</a> ниже).</p>
+</li>
+
+  <li>Если для атрибута <a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+{@code allowTaskReparenting}</a> операции установлено значение {@code "true"}.
+  <p>В этом случае операция может переместиться из запустившей ее задачи в задачу, к которой у операции есть привязка,
+когда эта задача переходит на передний план.</p>
+  <p>Предположим, что операция, которая сообщает о погодных условиях в выбранных городах,
+определена в составе приложения для путешественников.  Она имеет ту же привязку, что и другие операции в том же
+приложении (привязка приложения по умолчанию), и допускает переподчинение с этим атрибутом.
+Когда одна из ваших операций запускает операцию прогноза погоды, она изначально принадлежит той же
+задаче, что и ваша операция. Однако, когда задача из приложения для путешественников переходит на передний план,
+операция прогноза погоды переназначается этой задаче и отображается внутри нее.</p>
+</li>
+</ul>
+
+<p class="note"><strong>Совет.</strong> Если файл {@code .apk} содержит более одного «приложения»
+с точки зрения пользователя, вы, вероятно, захотите использовать атрибут <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+для назначения разных привязок операциям, связанным с каждым «приложением».</p>
+
+
+
+<h3 id="Clearing">Очистка стека переходов назад</h3>
+
+<p>Если пользователь выходит из задачи на длительное время, система удаляет из задачи все операции, кроме
+корневой операции.  Когда пользователь возвращается в задачу, восстанавливается только корневая операция.
+Система ведет себя таким образом, так как после продолжительного времени пользователи обычно уже забросили то,
+чем они занимались ранее, и возвращаются в задачу, чтобы начать что-то новое. </p>
+
+<p>Для изменения такого поведения предусмотрено несколько атрибутов операции, которыми вы можете воспользоваться: </p>
+
+<dl>
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#always">alwaysRetainTaskState</a></code>
+</dt>
+<dd>Если для этого атрибута установлено значение {@code "true"} в корневой операции задачи,
+описанное выше поведение по умолчанию не происходит.
+Задача восстанавливает все операции в своем стеке даже по истечении длительного периода времени.</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#clear">clearTaskOnLaunch</a></code></dt>
+<dd>Если для этого атрибута установлено значение {@code "true"} в корневой операции задачи,
+стек очищается до корневой операции каждый раз, когда пользователь выходит из задачи
+и возвращается в нее.  Другими словами, этот атрибут противоположен атрибуту 
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+{@code alwaysRetainTaskState}</a>. Пользователь всегда возвращается в задачу в ее
+исходном состоянии, даже после кратковременного выхода из нее.</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#finish">finishOnTaskLaunch</a></code>
+</dt>
+<dd>Этот атрибут похож на <a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">{@code clearTaskOnLaunch}</a>,
+но он действует на
+одну операцию, а не на всю задачу.  Он также может приводить к удалению любой операции,
+включая корневую операцию.  Когда для него установлено значение {@code "true"},
+операция остается частью задачи только для текущего сеанса.  Если пользователь
+выходит из задачи, а затем возвращается в нее, операция уже отсутствует.</dd>
+</dl>
+
+
+
+
+<h3 id="Starting">Запуск задачи</h3>
+
+<p>Вы можете сделать операцию точкой входа, назначая ей фильтр намерений со значением 
+{@code "android.intent.action.MAIN"} в качестве указанного действия и
+{@code "android.intent.category.LAUNCHER"}
+в качестве указанной категории. Например:</p>
+
+<pre>
+&lt;activity ... &gt;
+    &lt;intent-filter ... &gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+    ...
+&lt;/activity&gt;
+</pre>
+
+<p>Фильтр намерений такого типа приводит к тому, что в средстве запуска приложения отображаются значок и метка для
+операции, что позволяет пользователю запускать операцию
+и возвращаться в создавшую ее задачу в любой момент после ее запуска.
+</p>
+
+<p>Эта вторая возможность очень важна: пользователи должны иметь возможность выходить из задачи и затем возвращаться в нее
+с помощью этого средства запуска операции. Поэтому два <a href="#LaunchModes">режима
+запуска</a>, которые отмечают, что операции всегда инициируют задачу, {@code "singleTask"} и
+{@code "singleInstance"}, должны использоваться только в тех случаях, когда операция содержит
+{@link android.content.Intent#ACTION_MAIN}
+и фильтр {@link android.content.Intent#CATEGORY_LAUNCHER}. Представьте, например, что может произойти,
+если фильтр отсутствует: намерение запускает операцию {@code "singleTask"}, которая инициирует
+новую задачу, и пользователь некоторое время работает в этой задаче. Затем пользователь нажимает кнопку
+<em>Домой</em>. Задача переводится в фоновый режим и не отображается. Теперь у пользователя нет возможности вернуться
+к задаче, так как она отсутствует в средстве запуска приложения.</p>
+
+<p>Для таких случаев, когда вы не хотите, чтобы пользователь мог вернуться к операции, установите для атрибута
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">{@code finishOnTaskLaunch}</a>
+элемента
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+значение {@code "true"} (см. раздел <a href="#Clearing">Очистка стека</a>).</p>
+
+<p>Дополнительную информацию о представлении задач и операций и управлении ими
+на экране обзора см. в разделе <a href="{@docRoot}guide/components/recents.html">
+Экран обзора</a>.</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how to use intents to
+activate other application components and publish the intents to which your components
+respond, continue with the <b><a
+href="{@docRoot}guide/components/intents-filters.html">Intents and Intent
+Filters</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/ru/guide/index.jd b/docs/html-intl/intl/ru/guide/index.jd
new file mode 100644
index 0000000..b073272
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/index.jd
@@ -0,0 +1,74 @@
+page.title=Общие сведения о платформе Android
+
+@jd:body
+
+
+<div class="sidebox" style="width:220px"><!-- width to match col-4 below -->
+<p>Чтобы узнать, как работают приложения, начните с раздела 
+<a href="{@docRoot}guide/components/fundamentals.html">Основы создания приложений</a>.</p>
+<p>Чтобы сразу приступить к программированию, читайте раздел <a href="{@docRoot}training/basics/firstapp/index.html">Создание первого приложения</a>.</p>
+</div>
+
+<p>Система Android предоставляет разностороннюю платформу приложений, на основе которой можно создавать инновационные приложения и игры
+для мобильных устройств в среде языка Java. В документах, ссылки на которые приведены на панели навигации слева,
+рассказывается о том, как создавать приложения с помощью различных API-интерфейсов Android.</p>
+
+<p>Если создание программ для Android является для вас новым делом, вам важно усвоить
+следующие основные концепции, касающиеся платформы приложений Android:</p>
+
+
+<div class="landing-banner">
+
+<div class="col-6">
+
+<h4>Приложения имеют несколько точек входа</h4>
+
+<p>Приложения для Android строятся из отдельных компонентов, которые можно вызывать
+независимо друг от друга. Например, отдельная <em>операция</em> предоставляет один
+экран для пользовательского интерфейса, а <em>служба</em> независимо выполняет
+работу в фоновом режиме.</p>
+
+<p>С помощью объекта <em>Intent</em> из одного компонента можно запустить другой компонент. Можно даже запустить
+компонент из другого приложения, скажем, операцию из картографического приложения, чтобы показать адрес. Эта модель
+формирует несколько точек входа для одного приложения, и при этом пользователь может выбрать любое приложение для выполнения по умолчанию
+того или иного действия, которое могут вызывать другие приложения.</p>
+
+
+<p><b>Подробнее:</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/components/fundamentals.html">Основы создания приложений</a>
+<li><a href="{@docRoot}guide/components/intents-filters.html">Объекты Intent и фильтры объектов Intent</a>
+<li><a href="{@docRoot}guide/components/activities.html">Операции</a>
+</ul>
+
+</div>
+
+
+<div class="col-6">
+
+<h4>Приложения адаптируются к различным устройствам</h4>
+
+<p>Android предоставляет адаптивную платформу приложений, которая позволяет обеспечивать уникальные ресурсы
+для различных конфигураций устройств. Например, можно создать разные файлы XML
+макета для экранов разных размеров, а система будет
+определять, какой макет использовать, с учетом размера экрана данного устройства.</p>
+
+<p>Если каким-либо функциям приложения требуется определенное оборудование, например камера, можно
+запрашивать его наличие в устройстве во время выполнения. При необходимости также можно объявлять функции, которые требуются приложению,
+с тем чтобы такие магазины приложений, как Google Play, не позволяли устанавливать приложения на устройствах, в которых
+этой функции нет.</p>
+
+
+<p><b>Подробнее:</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/practices/compatibility.html">Совместимость устройств</a>
+<li><a href="{@docRoot}guide/topics/resources/overview.html">Обзор ресурсов</a>
+<li><a href="{@docRoot}guide/topics/ui/overview.html">Обзор пользовательского интерфейса</a>
+</ul>
+
+</div>
+
+</div><!-- end landing-banner -->
+
+
+
diff --git a/docs/html-intl/intl/ru/guide/topics/manifest/manifest-intro.jd b/docs/html-intl/intl/ru/guide/topics/manifest/manifest-intro.jd
new file mode 100644
index 0000000..f2c5a9e0
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/manifest/manifest-intro.jd
@@ -0,0 +1,517 @@
+page.title=Манифест приложения
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Содержание документа</h2>
+<ol>
+<li><a href="#filestruct">Структура файла манифеста</a></li>
+<li><a href="#filec">Соглашения о компонентах файла</a>
+<li><a href="#filef">Отображение функций в файле</a>
+	<ol>
+	<li><a href="#ifs">Фильтры объектов Intent</a></li>
+	<li><a href="#iconlabel">Значки и метки</a></li>
+	<li><a href="#perms">Разрешения</a></li>
+	<li><a href="#libs">Библиотеки</a></li>
+	</ol></li>
+</ol>
+</div>
+</div>
+
+<p>
+  В корневой папке каждого приложения должен находиться файл AndroidManifest.xml (который именно так и называется
+). <span itemprop="description">Файл манифеста
+ содержит важную информацию о приложении, которая требуется системе Android.
+ Только получив эту информацию, система может выполнить какой-либо код
+ приложения.</span> Среди прочего файл манифеста выполняет следующие действия:
+</p>
+
+<ul>
+<li>Он задает имя пакета Java для приложения.
+Это имя пакета служит уникальным идентификатором приложения.</li>
+
+<li>Он описывает компоненты приложения &mdash; операции, 
+службы, приемники широковещательных сообщений и поставщиков контента, из которых состоит
+приложение.  Он содержит имена классов, которые реализуют каждый компонент, и 
+публикует их возможности (указывает, например, какие сообщения {@link android.content.Intent 
+Intent} они могут принимать).  На основании этих деклараций система Android 
+может определить, из каких компонентов состоит приложение и при каких условиях их можно запускать.</li>
+
+<li>Он определяет, в каких процессах будут размещаться компоненты приложения.</li>  
+
+<li>Он объявляет, какие разрешения должны быть выданы приложению, чтобы оно могло получить 
+доступ к защищенным частям API-интерфейса и взаимодействовать с другими приложениями.</li>  
+
+<li>Он также объявляет разрешения, требуемые для 
+взаимодействия с компонентами данного приложения.</li>
+
+<li>Он содержит список классов {@link android.app.Instrumentation}, которые при выполнении приложения предоставляют 
+сведения о профиле и прочую информацию.  Эти объявления 
+присутствуют в файле манифеста только во время разработки и отладки 
+приложения и удаляются перед его публикацией.</li>
+
+<li>Он объявляет минимальный уровень API-интерфейса Android, который требуется 
+приложению.</li>
+
+<li>Он содержит список библиотек, с которыми должно быть связано приложение.</li>
+</ul>
+
+
+<h2 id="filestruct">Структура файла манифеста</h2>
+
+<p>
+Приведенная далее схема позволяет ознакомиться с общей структурой файла манифеста и 
+всеми элементами, которые могут в нем содержаться.  Каждый элемент вместе со всеми своими 
+атрибутами, полностью описывается в отдельном файле.  Для просмотра подробных 
+сведений о любом элементе, щелкните имя элемента на схеме, 
+в алфавитном списке элементов, приведенном после схемы, или 
+в любом другом месте, где этот элемент упоминается. 
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration /&gt;</a>  <!-- ##api level 3## -->
+    <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html">&lt;compatible-screens /&gt;</a>  <!-- ##api level 9## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-gl-texture-element.html">&lt;supports-gl-texture /&gt;</a>  <!-- ##api level 11## -->
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;/activity&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;/activity-alias&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data/&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;/service&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;/receiver&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/path-permission-element.html">&lt;path-permission /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;/provider&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library /&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;/application&gt;</a>
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;/manifest&gt;</a>
+</pre>
+
+<p>
+Далее приведен список всех элементов, расположенных в алфавитном порядке, которые могут 
+присутствовать в файле манифеста.  Там могут находиться только эти элементы, а никакие другие
+элементы или атрибуты добавлять нельзя.  
+</p>
+
+<p style="margin-left: 2em">
+<code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration&gt;</a></code>  <!-- ##api level 3## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></code>
+</p>
+
+
+    
+
+<h2 id="filec">Соглашения о компонентах файла</h2>
+
+<p>
+Ко всем элементам и атрибутам 
+из файла манифеста применяется рад соглашений и правил:
+</p>
+
+<dl>
+<dt><b>Элементы</b></dt>
+<dd>Обязательными 
+являются только элементы<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> и
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+. Оба они должны присутствовать в файле манифеста, при этом указать их можно только один раз.  
+Большинство других элементов можно указывать по нескольку раз или не указывать вовсе &mdash; хотя по 
+крайней мере некоторые из них нужны, чтобы файл манифеста был сколько-нибудь 
+информативным.
+
+<p>
+Если в элементе и есть какое-то содержимое, то это другие элементы.  
+Все значения задаются с помощью атрибутов, а не как символьные данные в элементе.
+</p>
+
+<p>
+Элементы, находящиеся на одном уровне, обычно не упорядочиваются.  Например,
+ элементы <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>, 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code> и 
+<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> 
+можно указать в любой последовательности.  (Элемент 
+<code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+является исключением из этого правила.  Он должен следовать за элементом 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>, 
+псевдонимом которого он является.)
+</p></dd>
+
+<dt><b>Атрибуты</b></dt>
+<dd>Формально все атрибуты являются необязательными.  Однако некоторые их них 
+указывать необходимо, чтобы файл мог выполнять свое предназначение.  В качестве руководства используйте эту
+документацию.  В отношении атрибутов, которые являются и вправду необязательными, в ней указывается значение, 
+используемое по умолчанию, или говорится, что произойдет, если такой атрибут не будет указан.
+
+<p>За исключением некоторых атрибутов корневого элемента 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 
+, имена всех атрибутов должны начинаться с префикса {@code android:} &mdash; 
+например, {@code android:alwaysRetainTaskState}.  Поскольку этот префикс является 
+универсальным, в документации при указании атрибутов по имени 
+он обычно опускается.</p></dd>
+
+<dt><b>Объявление имен классов</b></dt>
+<dd>Многие элементы соответствуют объектам Java, в том числе элементы для самого 
+приложения (элемент 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+) и основных его компонентов &mdash; операций 
+(<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>), 
+служб 
+(<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>), 
+приемников широковещательных сообщений 
+(<code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>) 
+и поставщиков контента 
+(<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>).  
+
+<p>
+Если вы определяете подкласс, а это практически всегда делается для классов компонентов 
+({@link android.app.Activity}, {@link android.app.Service}, 
+{@link android.content.BroadcastReceiver} и {@link android.content.ContentProvider}), 
+выполняется это с помощью атрибута {@code name}.  В состав имени должно входить 
+полное обозначение пакета.  
+Например, подкласс {@link android.app.Service} можно объявить следующим образом:
+</p>
+
+<pre>&lt;manifest . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name="com.example.project.SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+Однако его можно укоротить. Если первым символом в строке указать точку, эта 
+строка будет добавляться к имени пакета приложения (указанного атрибутом 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html#package">package</a></code>  
+элемента 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html#package">package</a></code> 
+).  Следующее назначение является таким же, как приведенное выше: 
+</p>
+
+<pre>&lt;manifest package="com.example.project" . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name=".SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+При запуске компонента Android создает экземпляр подкласса, указанного по имени.  
+Если подкласс не указан, система создает экземпляр базового класса.
+</p></dd>
+
+<dt><b>Несколько значений</b></dt>
+<dd>Если можно указать несколько значений, элемент почти всегда 
+приводится повторно. Делается это вместо перечисления нескольких значений в одном элементе.  
+Например, в фильтре Intent может быть перечислено несколько действий:
+
+<pre>&lt;intent-filter . . . &gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.INSERT" /&gt;
+    &lt;action android:name="android.intent.action.DELETE" /&gt;
+    . . .
+&lt;/intent-filter&gt;</pre></dd>
+
+<dt><b>Значения ресурсов</b></dt>
+<dd>Значения некоторых атрибутов могут отображаться на экране &mdash; например, 
+метка и значок операции.  Значения этих атрибутов 
+следует локализовать, поэтому они должны задаваться в ресурсе или теме.  Значения 
+ресурсов выражаются в следующем формате:</p>
+
+<p style="margin-left: 2em">{@code @[<i>пакет</i>:]<i>тип</i>:<i>имя</i>}</p>
+
+<p>
+где <i>имя пакета</i> можно опустить, если ресурс находится в одном пакете 
+с приложением, <i>тип —</i> это тип ресурса, &mdash; например "string" или 
+"drawable", &mdash; а <i>имя —</i> это имя, определяющее ресурс.  
+Например:
+</p>
+
+<pre>&lt;activity android:icon="@drawable/smallPic" . . . &gt</pre>
+
+<p>
+Значения из темы выражаются схожим образом, только в начале у них идет "{@code ?}", 
+а не "{@code @}":
+</p>
+
+<p style="margin-left: 2em">{@code ?[<i>пакет</i>:]<i>тип</i>:<i>имя</i>}
+</p></dd>
+
+<dt><b>Строковые значения</b></dt>
+<dd>Когда значением атрибута является строка, следует использовать двойную обратную косую черту ("{@code \\}") 
+для выделения управляющей последовательности символов, &mdash; например "{@code \\n}" для 
+новой строки или "{@code \\uxxxx}" для символа Юникода.</dd>
+</dl>
+
+
+<h2 id="filef">Отображение функций в файле</h2>
+
+<p>
+В следующих разделах описано, как некоторые функции Android отображаются 
+в файле манифеста.
+</p>
+
+
+<h3 id="ifs">Фильтры объектов Intent</h3>
+
+<p>
+Базовые компоненты приложения (его операции, службы и 
+приемники широковещательных сообщений) активируются <i>объектами Intent</i>.  Intent — 
+это совокупность информации (объект {@link android.content.Intent}), описывающей 
+требуемое действие, &mdash; в том числе в ней указаны данные, с которыми следует выполнить это действие, категория 
+компонентов, которые должны выполнять это действие, и другие уместные инструкции.  
+Система Android находит компонент, который отреагирует на объект Intent, запускает 
+новый экземпляр компонента, если он требуется, и передает ему 
+объект Intent.
+</p>
+
+<p>
+Компоненты объявляют свои возможности &mdash; виды объектов Intent, на которые они могут 
+реагировать, &mdash; с помощью <i>фильтров Intent</i>.  Поскольку система Android 
+должна узнать, какие объекты Intent может обрабатывать тот или иной компонент, до того как она его запустит, 
+фильтры Intent указываются в файле манифеста как 
+элементы <code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code> 
+.  Компонент может иметь любое количество фильтров, каждый из которых описывает 
+отдельную возможность компонента.
+</p>
+
+<p>
+Объект Intent, в котором целевой компонент явно указан по имени, активирует этот компонент, 
+и фильтр при этом не учитывается.  Но объект Intent, в котором имя целевого 
+компонента не указано, может активировать компонент, только если он может пройти через один из фильтров 
+компонента.
+</p>
+
+<p>
+Сведения о том, каким образом объекты Intent проверяются по фильтрам Intent, 
+см. в отдельном документе 
+<a href="{@docRoot}guide/components/intents-filters.html">Объекты Intent 
+и фильтры объектов Intent</a>.
+</p>
+
+
+<h3 id="iconlabel">Значки и метки</h3>
+
+<p>
+У ряда элементов есть атрибуты {@code icon} и {@code label} для 
+небольшого значка и текстовой метки, которые могут отображаться на экране.  У некоторых из них также есть атрибут 
+{@code description} для более длинного описательного текста, который также может 
+отображаться на экране.  Например, элемент 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+имеет все три таких атрибута, поэтому, когда пользователю задается вопрос, предоставить ли 
+разрешение запросившему его приложению, на экране может отображаться значок, 
+представляющий разрешение, имя разрешения и описание того, что оно 
+за собой влечет.
+</p>
+
+<p>
+В любом случае значок и метка, заданные в элементе-контейнере, становятся параметрами 
+{@code icon} и {@code label}, используемыми по умолчанию для всех вложенных в этот контейнер дочерних элементов.  
+Так, значок и метка, заданные в элементе 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>, 
+являются значком и меткой, используемыми по умолчанию для каждого компонента приложения.  
+Точно так же, значок и метка, заданные для компонента, &mdash; например элемента 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>, &mdash; 
+являются параметрами, используемыми по умолчанию для каждого элемента 
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code> 
+ компонента.  Если в элементе 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+задана метка, а в операции и ее фильтре Intent — нет, 
+метка приложения будет считаться меткой и для операции, и для 
+фильтра Intent.
+</p>
+
+<p>
+Значок и метка, заданные для фильтра Intent, используются для обозначения компонента, 
+когда он представляется пользователю, для указания функции,
+которую анонсирует фильтр.  Например, фильтр с параметрами 
+"{@code android.intent.action.MAIN}" и 
+"{@code android.intent.category.LAUNCHER}" сообщает, что эта операция 
+инициирует приложение, &mdash; то есть он обозначает ее как
+ операцию, которая должна быть отображена в средстве запуска приложений.  Отсюда следует, что значок и метка, 
+заданные в фильтре, отображаются в средстве запуска.
+</p>
+
+
+<h3 id="perms">Разрешения</h3>
+
+<p>
+Разрешение <i>представляет</i> собой ограничение на доступ к части кода 
+или к данным, имеющимся на устройстве.   Это ограничение накладывается для защиты важных 
+данных и кода, ненадлежащее использование которых может пагубно сказаться на работе приложения.  
+</p>
+
+<p>
+Каждое разрешение обозначается уникальной меткой.  Зачастую метка обозначает 
+действие, выполнение которого ограничивается.  Например, вот некоторые разрешения, определенные 
+системой Android:
+</p>
+
+<p style="margin-left: 2em">{@code android.permission.CALL_EMERGENCY_NUMBERS}
+<br/>{@code android.permission.READ_OWNER_DATA}
+<br/>{@code android.permission.SET_WALLPAPER}
+<br/>{@code android.permission.DEVICE_POWER}</p>
+
+<p>
+Функцию можно защитить не более чем одним разрешением.
+</p>
+
+<p>
+Если приложению требуется доступ к функции, защищенной разрешением, 
+оно должно объявить, что ему необходимо это разрешение, с помощью элемента 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 
+в файле манифеста.  Затем, когда приложение устанавливается на 
+устройство, установщик определяет, выдать ли запрошенное 
+разрешение, проверяя полномочия органов, подписавших сертификаты 
+приложения, а также, в некоторых случаях, спрашивая об этом пользователя.  
+Если разрешение предоставляется, приложение сможет использовать защищенные 
+функции.  В противном случае его попытки доступа к этим функциям будут безуспешными,
+причем пользователь не получит никакого уведомления об этом. 
+</p>
+
+<p>
+Приложение также может защищать с помощью разрешений собственные компоненты (операции, службы, 
+приемники широковещательных сообщений и поставщиков контента).  Оно может использовать 
+любые разрешения, определенные системой Android (они приведены в объекте 
+{@link android.Manifest.permission android.Manifest.permission}) или объявленные 
+другими приложениями.  Либо оно может определить разрешения самостоятельно.  Новое разрешение объявляется 
+с помощью элемента 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+.  Например, операцию можно защитить следующим образом:
+</p>
+
+<pre>
+&lt;manifest . . . &gt;
+    &lt;permission android:name="com.example.project.DEBIT_ACCT" . . . /&gt;
+    &lt;uses-permission android:name="com.example.project.DEBIT_ACCT" /&gt;
+    . . .
+    &lt;application . . .&gt;
+        &lt;activity android:name="com.example.project.FreneticActivity"
+                  android:permission="com.example.project.DEBIT_ACCT"
+                  . . . &gt;
+            . . .
+        &lt;/activity&gt;
+    &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>
+Обратите внимание, что в этом примере разрешение {@code DEBIT_ACCT} не только 
+объявляется с помощью элемента 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+, его использование также запрашивается с помощью элемента 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+.  Чтобы другие компоненты приложения запускали защищенную
+операцию, ее использование должно быть запрошено, даже несмотря на то, что защита 
+наложена самим приложением.  
+</p>
+
+<p>
+В этом же примере: если атрибут {@code permission} был бы задан как 
+разрешение, объявленное где-то еще 
+(например, {@code android.permission.CALL_EMERGENCY_NUMBERS}), его бы не 
+нужно было объявлять еще раз с помощью элемента 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+.  Однако все равно нужно было бы запрашивать его использование с помощью 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>. 
+</p>
+
+<p>
+Элемент 
+<code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code> 
+объявляет пространство имен для группы разрешений, которые будут определены в 
+коде.  А элемент 
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+определяет метку для набора разрешений (как для разрешений, объявленных в файле манифеста с помощью элементов 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+, так и для объявленных где-то еще).  Это влияет только на то, каким образом разрешения 
+группируются, когда отображаются пользователю.  Элемент 
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+не указывает, какие разрешения относятся к группе. 
+Он просто дает группе имя.  Чтобы включить разрешение в группу,
+атрибуту 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html#pgroup">permissionGroup</a></code> 
+ его элемента 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+необходимо присвоить имя группы.
+</p>
+
+
+<h3 id="libs">Библиотеки</h3>
+
+<p>
+Каждое приложение связывается с используемой по умолчанию библиотекой Android, в которой 
+имеются базовые пакеты для построения приложений (со стандартными классами, 
+например Activity, Service, Intent, View, Button, Application, ContentProvider 
+и так далее).
+</p>
+
+<p>
+Однако некоторые пакеты находятся в собственных библиотеках.  Если ваше приложение 
+использует код из одного из таких пакетов, оно должно в явном виде потребовать, чтобы его связали 
+с этим пакетом.  Файл манифеста должен содержать отдельный элемент 
+<code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code> 
+для указания имени каждой библиотеки.  (Имя библиотеки можно найти в 
+документации по пакету.)
+</p>
diff --git a/docs/html-intl/intl/ru/guide/topics/providers/calendar-provider.jd b/docs/html-intl/intl/ru/guide/topics/providers/calendar-provider.jd
new file mode 100644
index 0000000..2d12e12
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/providers/calendar-provider.jd
@@ -0,0 +1,1184 @@
+page.title=Поставщик календаря
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>Содержание документа</h2>
+    <ol>
+  <li><a href="#overview">Основы</a></li>
+  <li><a href="#manifest">Разрешения пользователей</a></li>
+  <li><a href="#calendar">Таблица календарей</a>
+<ol>
+      <li><a href="#query">Запрос календаря</a></li>
+      <li><a href="#modify-calendar">Изменение календаря</a></li>
+      <li><a href="#insert-calendar">Вставка календаря</a></li>
+    </ol>
+  </li>
+  <li><a href="#events">Таблица событий</a>
+<ol>
+      <li><a href="#add-event">Добавление событий</a></li>
+      <li><a href="#update-event">Обновление событий</a></li>
+      <li><a href="#delete-event">Удаление событий</a></li>
+    </ol>
+  </li>
+  <li><a href="#attendees">Таблица участников</a>
+<ol>
+      <li><a href="#add-attendees">Добавление участников</a></li>
+    </ol>
+  </li>
+  <li><a href="#reminders">Таблица напоминаний</a>
+<ol>
+      <li><a href="#add-reminders">Добавление напоминаний</a></li>
+    </ol>
+  </li>
+  <li><a href="#instances">Таблица экземпляров</a>
+  <ol>
+      <li><a href="#query-instances">Запрос таблицы экземпляров</a></li>
+  </ol></li>
+  <li><a href="#intents">Намерения календаря</a>
+  <ol>
+      <li><a href="#intent-insert">Использование намерения для вставки события</a></li>
+      <li><a href="#intent-edit">Использование намерения для редактирования события</a></li>
+      <li><a href="#intent-view">Использование намерения для просмотра данных календаря</a></li>
+    </ol>
+  </li>
+  
+  <li><a href="#sync-adapter">Адаптеры синхронизации</a></li>
+</ol>
+
+    <h2>Ключевые классы</h2>
+    <ol>
+      <li>{@link android.provider.CalendarContract.Calendars}</li>
+      <li>{@link android.provider.CalendarContract.Events}</li>
+      <li>{@link android.provider.CalendarContract.Attendees}</li>
+      <li>{@link android.provider.CalendarContract.Reminders}</li>
+    </ol>
+</div>
+</div>
+
+<p>Поставщик календаря представляет собой репозиторий для событий календаря пользователя. API
+поставщика календаря позволяет запрашивать, вставлять, обновлять и удалять календари,
+события, участников, напоминания и т. д.</p>
+
+
+<p>API поставщика календаря может использоваться как приложениями, так и адаптерами синхронизации. Правила
+зависят от типа программы, которая выполняет вызовы. В этой статье
+главным образом рассматривается использование API поставщика календаря в качестве приложения. Сведения о различиях
+между адаптерами синхронизации представлены в разделе
+<a href="#sync-adapter">Адаптеры синхронизации</a>.</p>
+
+
+<p>Обычно, чтобы считать или записать данные календаря, в манифесте приложения
+должны быть включены надлежащие разрешения, которые описываются в разделе <a href="#manifest">Разрешения
+пользователей</a>. Чтобы упростить выполнение часто используемых операций, в поставщике
+календаря предусмотрен набор намерений, как описано в разделе <a href="#intents">Намерения
+календаря</a>. Эти намерения позволяют пользователям переходить в приложение календаря для вставки, просмотра
+и редактирования событий. После взаимодействия пользователя с календарем он возвращается
+в исходное приложение. Поэтому вашему приложению не нужно запрашивать разрешения,
+а также предоставлять пользовательский интерфейс для просмотра или создания событий.</p>
+
+<h2 id="overview">Основы</h2>
+
+<p><a href="{@docRoot}guide/topics/providers/content-providers.html">Поставщики контента</a> хранят в себе данные и предоставляют к ним доступ
+для приложений. Поставщики контента, предлагаемые платформой Android (включая поставщик календаря) обычно представляют данные в виде набора таблиц, в основе
+которых лежит модель реляционной базы данных. Каждая строка в такой таблице представляет собой запись, а каждый столбец — данные
+определенного типа и значения. Благодаря API поставщика календаря приложения
+и адаптеры синхронизации получают доступ на чтение/запись к таблицам в базе данных, в которых
+представлены данные календаря пользователя.</p>
+
+<p>Каждый поставщик календаря предоставляет общедоступный URI (упакованный в объект
+{@link android.net.Uri}),
+который служит уникальным идентификатором своего набора данных.  Поставщик контента, который управляет
+несколькими наборами данных (несколькими таблицами), предоставляет отдельный URI для каждого набора.  Все
+URI поставщиков начинаются со строки content://.  Она
+определяет данные, которые находятся под управлением поставщика контента. Поставщик календаря
+задает константы для URI каждого из своих классов (таблиц). Такие
+URI имеют формат <code><em>&lt;class&gt;</em>.CONTENT_URI</code>. Например,
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}.</p>
+
+<p>На рисунке 1 изображено графическое представление модели данных поставщика календаря. На нем представлены
+основные таблицы и поля, которые связывают их друг с другом.</p>
+
+<img src="{@docRoot}images/providers/datamodel.png" alt="Calendar Provider Data Model" />
+<p class="img-caption"><strong>Рисунок 1.</strong> Модель данных поставщика календаря.</p>
+
+<p>У пользователя может быть несколько календарей, причем они могут быть связаны с аккаунтами разных типов (Google Календарь, Exchange и т. д.).</p>
+
+<p>Класс {@link android.provider.CalendarContract} определяет модель данных календаря и информацию, относящуюся к событиям. Эти данные хранятся в различных таблицах, указанных ниже.</p>
+
+<table>
+  <tr>
+    <th>Таблица (класс)</th>
+    <th>Описание</th>
+  </tr>
+  <tr>
+    <td><p>{@link android.provider.CalendarContract.Calendars}</p></td>
+    
+    <td>В этой таблице находится
+информация о календарях. В каждой строке этой таблицы представлены сведения
+об отдельном календаре, например, его название, цвет, информация о синхронизации и т. д.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Events}</td>
+    
+    <td>В этой таблице находится
+информация о событиях. В каждой строке этой таблицы содержится информация об отдельном
+событии &mdash;например, заголовок события, место проведения, время начала, время
+завершения и т. д. Событие может быть однократным или повторяющимся. Сведения об участниках,
+напоминаниях и расширенные свойства хранятся в отдельных таблицах. 
+В каждой из них имеется целочисленная переменная {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID},
+которая ссылается на объект {@link android.provider.BaseColumns#_ID} в таблице событий.</td>
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances}</td>
+    
+    <td>В этой таблице содержатся данные о времени
+начала и окончания каждого повторения события. В каждой строке этой таблицы
+представлено одно повторение события. Однократные события сопоставляются с повторениями
+один к одному. Для повторяющихся событий автоматически создаются несколько строк,
+которые соответствуют нескольким повторениям события.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Attendees}</td>
+    
+    <td>В этой таблице находится
+информация об участниках (гостях). В каждой строке этой таблицы указан один
+гость. В ней указываются тип гостя и информация о том,
+посетит ли он событие.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Reminders}</td>
+    
+    <td>В этой таблице находятся
+данные уведомлений или оповещений. В каждой строке этой таблицы указано одно уведомление или оповещение. Для одного
+события можно создать несколько напоминаний. Максимальное количество таких напоминаний для события
+задается с помощью
+целочисленной переменной {@link android.provider.CalendarContract.CalendarColumns#MAX_REMINDERS},
+значение которой задает адаптер синхронизации, владеющий
+указанным календарем. Напоминания задаются в минутах до начала события и
+имеют метод, который определяет порядок уведомления пользователя.</td>
+  </tr>
+  
+</table>
+
+<p>API поставщика календаря обеспечивает достаточную гибкость и эффективность. В то же время
+важно предоставить интерфейс, который будет удобным для пользователя,
+и обеспечить защиту целостности календаря и его данных. Поэтому существует
+ряд моментов, которые следует учитывать при использовании этого API.</p>
+
+<ul>
+
+<li><strong>Вставка, обновление и просмотр событий календаря.</strong> Чтобы вставить, изменить и считать события напрямую из поставщика календаря, требуются соответствующие <a href="#manifest">разрешения</a>. Однако, если вы не планируете создавать полнофункциональное приложение календаря или адаптер синхронизации, запрашивать такие разрешения не обязательно. Вместо этого можно использовать намерения, поддерживаемые приложением «Календарь» Android, для обработки операций чтения и записи в этом приложении. При использовании намерений ваше приложение отправляет пользователям приложение «Календарь» для выполнения требуемой операции
+в предварительно заполненной форме. По завершении они возвращаются в приложение.
+Реализовав в вашем приложении возможность выполнения часто используемых операций через приложение «Календарь»,
+вы обеспечиваете для пользователей единообразный и функциональный пользовательский интерфейс. Мы рекомендуем использовать
+именно такой подход. Дополнительные сведения представлены в разделе <a href="#intents">Намерения
+календаря</a>.</p>
+
+
+<li><strong>Адаптеры синхронизации.</strong> Адаптер синхронизации синхронизирует данные календаря
+на устройстве пользователя с данными на сервере или в другом источнике данных. В таблицах
+{@link android.provider.CalendarContract.Calendars} и
+{@link android.provider.CalendarContract.Events} имеются
+столбцы, зарезервированные для адаптеров синхронизации.
+Ни поставщик, ни приложения не должны изменять их. Фактически они скрыты
+до тех пор, пока адаптер синхронизации не начнет использовать их. Дополнительные сведения об
+адаптерах синхронизации представлены в разделе <a href="#sync-adapter">Адаптеры синхронизации</a>.</li>
+
+</ul>
+
+
+<h2 id="manifest">Разрешения пользователей</h2>
+
+<p>Чтобы считать данные календаря, в файл манифеста приложения необходимо включить разрешение {@link
+android.Manifest.permission#READ_CALENDAR}. Также в него
+следует включить разрешение {@link android.Manifest.permission#WRITE_CALENDAR}
+для удаления, вставки или обновления данных календаря:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;...&gt;
+    &lt;uses-sdk android:minSdkVersion=&quot;14&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.READ_CALENDAR&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.WRITE_CALENDAR&quot; /&gt;
+    ...
+&lt;/manifest&gt;
+</pre>
+
+
+<h2 id="calendar">Таблица календарей</h2>
+
+<p>В таблице {@link android.provider.CalendarContract.Calendars} содержатся подробные сведения
+о каждом отдельном календаре. Выполнять запись в указанные ниже столбцы
+этой таблицы могут и приложение, и <a href="#sync-adapter">адаптер синхронизации</a>. 
+Полный список поддерживаемых полей представлен в справке по классу
+{@link android.provider.CalendarContract.Calendars}.</p>
+<table>
+  <tr>
+    <th>Константа</th>
+    <th>Описание</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#NAME}</td>
+    <td>Название календаря.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#CALENDAR_DISPLAY_NAME}</td>
+    <td>Название этого календаря, которое отображается для пользователя.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#VISIBLE}</td>
+    
+    <td>Логическое значение, обозначающее, выбран ли календарь для отображения. Значение
+«0» указывает на то, что события, связанные с
+этим календарем, не отображаются.  Значение «1» указывает на то, что события, связанные с
+этим календарем, отображаются. Это значение влияет на создание строк в таблице {@link
+android.provider.CalendarContract.Instances}.</td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.CalendarColumns#SYNC_EVENTS}</td>
+    
+    <td>Логическое значение, обозначающее, следует ли синхронизировать календарь и хранить имеющиеся в нем события
+на устройстве. Значение «0» указывает, что не следует синхронизировать этот календарь или
+хранить имеющиеся в нем события на устройстве.  Значение «1» указывает, что этот календарь следует синхронизировать и
+хранить имеющиеся в нем события на устройстве.</td>
+  </tr>
+</table>
+
+<h3 id="query">Запрос календаря</h3>
+
+<p>Ниже представлен пример того, как получить календари, которыми
+владеет определенный пользователь. Для простоты демонстрации операция запроса в этом примере находится в
+потоке пользовательского интерфейса («основной поток»). На практике это следует делать в асинхронном
+потоке, а не в основном. Дополнительные сведения представлены в статье
+<a href="{@docRoot}guide/components/loaders.html">Загрузчики</a>. Если же вы не только
+считываете данные, но и вносите в них изменения, обратитесь к справке по классу {@link android.content.AsyncQueryHandler}.
+</p>
+
+
+<pre>
+// Projection array. Creating indices for this array instead of doing
+// dynamic lookups improves performance.
+public static final String[] EVENT_PROJECTION = new String[] {
+    Calendars._ID,                           // 0
+    Calendars.ACCOUNT_NAME,                  // 1
+    Calendars.CALENDAR_DISPLAY_NAME,         // 2
+    Calendars.OWNER_ACCOUNT                  // 3
+};
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_ACCOUNT_NAME_INDEX = 1;
+private static final int PROJECTION_DISPLAY_NAME_INDEX = 2;
+private static final int PROJECTION_OWNER_ACCOUNT_INDEX = 3;</pre>
+  
+
+<div class="sidebox-wrapper"> <div class="sidebox"> <h3>Зачем необходимо указывать параметр
+ACCOUNT_TYPE?</h3> <p>При создании запроса {@link
+android.provider.CalendarContract.Calendars#ACCOUNT_NAME
+Calendars.ACCOUNT_NAME} необходимо также
+указать
+{@link android.provider.CalendarContract.Calendars#ACCOUNT_TYPE Calendars.ACCOUNT_TYPE}. Это необходимо сделать ввиду того, что указанный аккаунт
+считается уникальным только тогда, когда для него указаны и параметр <code>ACCOUNT_NAME</code>, и параметр
+<code>ACCOUNT_TYPE</code>. Параметр <code>ACCOUNT_TYPE</code> в строке обозначает
+структуру проверки подлинности аккаунта, которая использовалась при регистрации аккаунта с помощью
+{@link android.accounts.AccountManager}. Существует также особый тип аккаунтов, называемый {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}. Он используется для календарей,
+которые не связаны с аккаунтом устройства. Аккаунты {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} не
+синхронизируются.</p> </div> </div> 
+
+
+<p> В следующей части примера создается запрос. С помощью выбора определяются
+критерии для запроса. В этом примере выполняется поиск
+календарей со следующими значениями параметров: <code>ACCOUNT_NAME</code>
+— sampleuser@google.com, <code>ACCOUNT_TYPE</code>
+— com.google и <code>OWNER_ACCOUNT</code>
+ — sampleuser@google.com. Для просмотра всех просмотренных
+пользователем календарей, а не только имеющихся у него, не указывайте параметр <code>OWNER_ACCOUNT</code>.
+Запрос возвращает объект {@link android.database.Cursor},
+который можно использовать для перебора результатов, возвращенных запросом к базе
+данных. Дополнительные сведения об использовании запросов в поставщиках контента
+представлены в статье <a href="{@docRoot}guide/topics/providers/content-providers.html">Поставщики контента</a>.</p>
+
+
+<pre>// Run query
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+Uri uri = Calendars.CONTENT_URI;   
+String selection = "((" + Calendars.ACCOUNT_NAME + " = ?) AND (" 
+                        + Calendars.ACCOUNT_TYPE + " = ?) AND ("
+                        + Calendars.OWNER_ACCOUNT + " = ?))";
+String[] selectionArgs = new String[] {"sampleuser@gmail.com", "com.google",
+        "sampleuser@gmail.com"}; 
+// Submit the query and get a Cursor object back. 
+cur = cr.query(uri, EVENT_PROJECTION, selection, selectionArgs, null);</pre>
+
+<p>В следующем разделе кода выполняется пошаговый обзор набора результатов с помощью курсора. В нем
+используются константы, которые были заданы в начале примера, для получения значений
+для каждого из полей.</p>
+    
+<pre>// Use the cursor to step through the returned records
+while (cur.moveToNext()) {
+    long calID = 0;
+    String displayName = null;
+    String accountName = null;
+    String ownerName = null;
+      
+    // Get the field values
+    calID = cur.getLong(PROJECTION_ID_INDEX);
+    displayName = cur.getString(PROJECTION_DISPLAY_NAME_INDEX);
+    accountName = cur.getString(PROJECTION_ACCOUNT_NAME_INDEX);
+    ownerName = cur.getString(PROJECTION_OWNER_ACCOUNT_INDEX);
+              
+    // Do something with the values...
+
+   ...
+}
+</pre>
+  
+<h3 id="modify-calendar">Изменение календаря</h3>
+
+<p>Чтобы обновить календарь, можно указать {@link
+android.provider.BaseColumns#_ID} календаря: либо в виде идентификатора,
+добавленного к URI
+
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}),
+либо в качестве первого элемента выделения. Выделение
+должно начинаться с <code>&quot;_id=?&quot;</code>, а первым аргументом
+<code>selectionArg</code> должен быть {@link
+android.provider.BaseColumns#_ID} календаря. 
+Также для выполнения обновлений можно закодировать идентификатор в URI. В этом примере для
+изменения отображаемого имени календаря используется
+подход
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}):</p>
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long calID = 2;
+ContentValues values = new ContentValues();
+// The new display name for the calendar
+values.put(Calendars.CALENDAR_DISPLAY_NAME, &quot;Trevor's Calendar&quot;);
+Uri updateUri = ContentUris.withAppendedId(Calendars.CONTENT_URI, calID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);</pre>
+
+<h3 id="insert-calendar">Вставка календаря</h2>
+
+<p>Для управления календарями в основном используются адаптеры синхронизации, поэтому
+новые календари следует вставлять исключительно как адаптер синхронизации. По большей части
+приложения могут вносить в календари только поверхностные изменения, такие как изменение отображаемого имени. Если
+приложению требуется создать локальный календарь, это можно сделать путем
+вставки календаря в виде адаптера синхронизации с помощью параметра {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} типа {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}.
+{@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}
+представляет собой особый тип аккаунтов для календарей, которые не связаны
+с аккаунтом устройства. Календари этого типа не синхронизируются с сервером. Дополнительные сведения
+об адаптерах синхронизации представлены в статье <a href="#sync-adapter">Адаптеры синхронизации</a>.</p>
+
+<h2 id="events">Таблица событий</h2>
+
+<p>В таблице {@link android.provider.CalendarContract.Events} содержатся подробные сведения
+о каждом отдельном событии. Чтобы получить возможность добавлять, обновлять или удалять события,
+в <a href="#manifest">файл манифеста</a>
+приложения необходимо включить разрешение {@link android.Manifest.permission#WRITE_CALENDAR}.</p>
+
+<p>Выполнять запись в указанные ниже столбцы этой таблицы могут и приложение, и 
+адаптер синхронизации. Полный список поддерживаемых полей представлен в справке по классу {@link
+android.provider.CalendarContract.Events}.</p>
+
+<table>
+  <tr>
+    <th>Константа</th>
+    <th>Описание</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#CALENDAR_ID}</td>
+    <td>{@link android.provider.BaseColumns#_ID} календаря, к которому принадлежит событие.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ORGANIZER}</td>
+    <td>Адрес эл. почты организатора (владельца) события.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE}</td>
+    <td>Название события.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION}</td>
+    <td>Место проведения. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION}</td>
+    <td>Описание события.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTSTART}</td>
+    <td>Время начала события по UTC (в миллисекундах) от точки отсчета. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTEND}</td>
+    <td>Время окончания события по UTC (в миллисекундах) от точки отсчета. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}</td>
+    <td>Часовой пояс события.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_END_TIMEZONE}</td>
+    <td>Часовой пояс для времени окончания события.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DURATION}</td>
+    
+    <td>Продолжительность события в формате <a href="http://tools.ietf.org/html/rfc5545#section-3.8.2.5">RFC5545</a>.
+Например, значение <code>&quot;PT1H&quot;</code> обозначает, что событие
+должно длиться один час, а значение <code>&quot;P2W&quot;</code> указывает на продолжительность
+в 2 недели. </td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ALL_DAY}</td>
+    
+    <td>Значение «1» обозначает, что это событие занимает весь день по
+местному часовому поясу. Значение «0» указывает на то, что это регулярное событие, которое может начаться
+и завершиться в любое время в течение дня.</td>
+
+    
+  </tr>
+  
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RRULE}</td>
+    
+    <td>Правило повторения для формата события. Например,
+<code>&quot;FREQ=WEEKLY;COUNT=10;WKST=SU&quot;</code>. С другими
+примерами можно ознакомиться <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.3">здесь</a>.</td>
+    
+  </tr>
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RDATE}</td>
+    <td>Даты повторения события. 
+Обычно {@link android.provider.CalendarContract.EventsColumns#RDATE}
+используется вместе с {@link android.provider.CalendarContract.EventsColumns#RRULE}
+для определения агрегированного набора
+повторяющихся событий. Дополнительные сведения представлены в <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.2">спецификации RFC5545</a>.</td>
+</tr>
+ 
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY}</td>
+    
+    <td>Если событие считается как занятое или как свободное время,
+ доступное для планирования. </td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_MODIFY}</td>
+    <td>Указывает, могут ли гости вносить изменения в событие. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_INVITE_OTHERS}</td>
+    <td>Указывает, могут ли гости приглашать других гостей. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_SEE_GUESTS}</td>
+    <td>Указывает, могут ли гости просматривать список участников.</td>
+  </tr>
+</table>
+
+<h3 id="add-event">Добавление событий</h3>
+
+<p>Когда ваше приложение вставляет новое событие, мы рекомендуем использовать намерение
+{@link android.content.Intent#ACTION_INSERT INSERT}, как описано в разделе <a href="#intent-insert">Использование намерения для вставки события</a>. Однако при
+необходимости вы можете вставлять события напрямую. В этом разделе как раз описывается то, как это
+сделать.</p>
+
+
+<p>Ниже указаны правила, которыми следует руководствоваться для вставки нового события. </p>
+<ul>
+
+  <li>Необходимо указать {@link
+android.provider.CalendarContract.EventsColumns#CALENDAR_ID} и {@link
+android.provider.CalendarContract.EventsColumns#DTSTART}.</li>
+
+<li>Необходимо указать {@link
+android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}. Чтобы получить список
+установленных в системе идентификаторов часовых поясов, воспользуйтесь методом {@link
+java.util.TimeZone#getAvailableIDs()}. Обратите внимание, что это правило не применяется при
+вставке события с помощью намерения {@link
+android.content.Intent#ACTION_INSERT INSERT}, как описано в разделе <a href="#intent-insert">Использование намерения для вставки события</a>, &mdash; в этом
+случае используется часовой пояс по умолчанию.</li>
+  
+  <li>Для однократных событий необходимо указать {@link
+android.provider.CalendarContract.EventsColumns#DTEND}. </li>
+  
+  
+  <li>Для повторяющихся событий необходимо указать {@link
+android.provider.CalendarContract.EventsColumns#DURATION} в дополнение к {@link
+android.provider.CalendarContract.EventsColumns#RRULE} или {@link
+android.provider.CalendarContract.EventsColumns#RDATE}. Обратите внимание, что это правило не применяется при
+вставке события с помощью намерения {@link
+android.content.Intent#ACTION_INSERT INSERT}, как описано в разделе <a href="#intent-insert">Использование намерения для вставки события</a>, &mdash; в этом
+случае можно использовать {@link
+android.provider.CalendarContract.EventsColumns#RRULE} в сочетании с {@link android.provider.CalendarContract.EventsColumns#DTSTART} и {@link android.provider.CalendarContract.EventsColumns#DTEND}; кроме того, приложение «Календарь»
+ автоматически преобразует указанный период в продолжительность.</li>
+  
+</ul>
+
+<p>Ниже представлен пример вставки события. Для простоты все это выполняется в потоке
+пользовательского интерфейса. На практике же все вставки и обновления следует выполнять в
+асинхронном потоке, чтобы переместить операцию в фоновый поток. Дополнительные сведения представлены в справке по
+{@link android.content.AsyncQueryHandler}.</p>
+
+
+<pre>
+long calID = 3;
+long startMillis = 0; 
+long endMillis = 0;     
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 9, 14, 7, 30);
+startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 9, 14, 8, 45);
+endMillis = endTime.getTimeInMillis();
+...
+
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Events.DTSTART, startMillis);
+values.put(Events.DTEND, endMillis);
+values.put(Events.TITLE, &quot;Jazzercise&quot;);
+values.put(Events.DESCRIPTION, &quot;Group workout&quot;);
+values.put(Events.CALENDAR_ID, calID);
+values.put(Events.EVENT_TIMEZONE, "America/Los_Angeles");
+Uri uri = cr.insert(Events.CONTENT_URI, values);
+
+// get the event ID that is the last element in the Uri
+long eventID = Long.parseLong(uri.getLastPathSegment());
+// 
+// ... do something with event ID
+//
+//</pre>
+
+<p class="note"><strong>Примечание.</strong> Ниже демонстрируется, как в примере кода выполняется захват
+идентификатора события после создания этого события. Это самый простой способ получить идентификатор события. Зачастую
+идентификатор события необходим для выполнения других действий с календарем &mdash; например, для добавления участников или
+напоминаний о событии.</p>
+
+
+<h3 id="update-event">Обновление событий</h3>
+
+<p>Когда ваше приложение хочет предоставить пользователю возможность изменить событие, мы рекомендуем использовать намерение
+{@link android.content.Intent#ACTION_EDIT EDIT}, как описано в разделе
+<a href="#intent-edit">Использование намерения для вставки события</a>.
+Однако при необходимости вы можете редактировать события напрямую. Чтобы обновить
+событие, можно указать
+<code>_ID</code> события: либо в виде идентификатора, добавленного к URI({@link
+android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}),
+либо в качестве первого элемента выделения. Выделение
+должно начинаться с <code>&quot;_id=?&quot;</code>, а первым аргументом
+<code>selectionArg</code> должен быть <code>_ID</code> события. Также можно обновлять
+выделения без идентификаторов. Ниже представлен пример обновления
+события. Это пример изменения названия события с помощью
+метода
+{@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}:</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 188;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri updateUri = null;
+// The new title for the event
+values.put(Events.TITLE, &quot;Kickboxing&quot;); 
+updateUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);  </pre>
+
+<h3 id="delete-event">Удаление событий</h3>
+
+<p>Удалить событие можно по его {@link
+android.provider.BaseColumns#_ID}, который добавлен в качестве идентификатора к URI, или с помощью
+стандартного выделения. В случае использования добавленного идентификатора невозможно также выполнить и выделение.
+Существует две версии операции удаления: для приложения и для адаптера синхронизации. При удалении
+для приложения в столбце <em>deleted</em> устанавливается значение «1». Этот флаг
+сообщает адаптеру синхронизации о том, что строка была удалена и информацию об удалении следует
+передать серверу. При удалении для адаптера синхронизации событие удаляется из
+базы данных вместе со всеми связанными с ним данными. Ниже представлен пример удаления
+события для приложения по его {@link android.provider.BaseColumns#_ID}.</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 201;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri deleteUri = null;
+deleteUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().delete(deleteUri, null, null);
+Log.i(DEBUG_TAG, &quot;Rows deleted: &quot; + rows);  
+</pre>
+
+<h2 id="attendees">Таблица участников</h2>
+
+<p>В каждой строке таблицы {@link android.provider.CalendarContract.Attendees}
+указан один участник или гость события. При вызове метода
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()}
+возвращается список участников для события
+с заданным {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}. 
+Этот {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}
+должен соответствовать {@link
+android.provider.BaseColumns#_ID} определенного события.</p> 
+
+<p>В таблице ниже указаны
+поля, доступные для записи. При вставке нового участника необходимо указать все эти поля, кроме
+<code>ATTENDEE_NAME</code>.
+</p>
+
+
+<table>
+  <tr>
+    <th>Константа</th>
+    <th>Описание</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}</td>
+    <td>Идентификатор события.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_NAME}</td>
+    <td>Имя участника.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_EMAIL}</td>
+    <td>Адрес эл. почты участника.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_RELATIONSHIP}</td>
+    <td><p>Связь участника с событием. Одно из следующего:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ATTENDEE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ORGANIZER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_PERFORMER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_SPEAKER}</li>
+    </ul>
+    </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_TYPE}</td>
+    <td><p>Тип участника. Одно из следующего: </p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_REQUIRED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_OPTIONAL}</li>
+    </ul></td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS}</td>
+    <td><p>Статус посещения события участником. Одно из следующего:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_ACCEPTED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_DECLINED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_INVITED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_TENTATIVE}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-attendees">Добавление участников</h3>
+
+<p>Ниже представлен пример добавления одного участника события. Обратите внимание, что нужно в обязательном порядке
+указать
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}.</p>
+
+<pre>
+long eventID = 202;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Attendees.ATTENDEE_NAME, &quot;Trevor&quot;);
+values.put(Attendees.ATTENDEE_EMAIL, &quot;trevor@example.com&quot;);
+values.put(Attendees.ATTENDEE_RELATIONSHIP, Attendees.RELATIONSHIP_ATTENDEE);
+values.put(Attendees.ATTENDEE_TYPE, Attendees.TYPE_OPTIONAL);
+values.put(Attendees.ATTENDEE_STATUS, Attendees.ATTENDEE_STATUS_INVITED);
+values.put(Attendees.EVENT_ID, eventID);
+Uri uri = cr.insert(Attendees.CONTENT_URI, values);
+</pre>
+
+<h2 id="reminders">Таблица напоминаний</h2>
+
+<p>В каждой строке таблицы {@link android.provider.CalendarContract.Reminders}
+указано одно напоминание о событии. При вызове метода
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()}возвращается список напоминаний для события
+с заданным 
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}.</p>
+
+
+<p>В таблице ниже указаны поля, доступные для записи. При вставке нового
+напоминания необходимо указать все эти поля. Обратите внимание, что адаптеры синхронизации задают
+типы напоминаний, которые они поддерживают, в таблице {@link
+android.provider.CalendarContract.Calendars}. Подробные сведения см.
+в справке по
+{@link android.provider.CalendarContract.CalendarColumns#ALLOWED_REMINDERS}.</p>
+
+
+<table>
+  <tr>
+    <th>Константа</th>
+    <th>Описание</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#EVENT_ID}</td>
+    <td>Идентификатор события.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#MINUTES}</td>
+    <td>Время срабатывания уведомления (в минутах) до начала события.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#METHOD}</td>
+    <td><p>Метод уведомления, заданный на сервере. Одно из следующего:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_ALERT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_DEFAULT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_EMAIL}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_SMS}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-reminders">Добавление напоминаний</h3>
+
+<p>Ниже представлен пример добавления напоминания в событие. Напоминание срабатывает за 15
+минут до начала события.</p>
+<pre>
+long eventID = 221;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Reminders.MINUTES, 15);
+values.put(Reminders.EVENT_ID, eventID);
+values.put(Reminders.METHOD, Reminders.METHOD_ALERT);
+Uri uri = cr.insert(Reminders.CONTENT_URI, values);</pre>
+
+<h2 id="instances">Таблица экземпляров</h2>
+
+<p>В таблице
+{@link android.provider.CalendarContract.Instances} содержатся данные о времени
+начала и окончания повторений события. В каждой строке этой таблицы
+представлено одно повторение события. Таблица экземпляров недоступна для записи; она предоставляет только
+возможность запрашивать повторения событий. </p>
+
+<p>В таблице ниже перечислены некоторые из полей, которые можно запросить для экземпляра. Обратите внимание,
+что часовой пояс задается параметрами 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_TYPE} 
+и 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_INSTANCES}.</p>
+
+
+<table>
+  <tr>
+    <th>Константа</th>
+    <th>Описание</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#BEGIN}</td>
+    <td>Время начала экземпляра в формате UTC (в миллисекундах).</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END}</td>
+    <td>Время окончания экземпляра в формате UTC (в миллисекундах).</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_DAY}</td>
+    
+    <td>День окончания экземпляра по юлианскому календарю относительно часового пояса
+приложения «Календарь». 
+    
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_MINUTE}</td>
+    
+    <td>Минута окончания экземпляра, вычисленная от полуночи по часовому поясу
+приложения «Календарь».</td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#EVENT_ID}</td>
+    <td><code>_ID</code> события для этого экземпляра.</td>
+  </tr>
+    <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_DAY}</td>
+    <td>День начала экземпляра по юлианскому календарю относительно часового пояса приложения «Календарь». 
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_MINUTE}</td>
+    
+    <td>Минута начала экземпляра, вычисленная от полуночи по часовому поясу
+приложения «Календарь». 
+</td>
+    
+  </tr>
+
+</table>
+
+<h3 id="query-instances">Запрос таблицы экземпляров</h3>
+
+<p>Чтобы запросить таблицу экземпляров, необходимо указать промежуток времени для запроса в 
+URI. В этом примере {@link android.provider.CalendarContract.Instances}
+получает доступ к полю {@link
+android.provider.CalendarContract.EventsColumns#TITLE} посредством своей реализации
+интерфейса {@link android.provider.CalendarContract.EventsColumns}. 
+Другими словами, {@link
+android.provider.CalendarContract.EventsColumns#TITLE}
+возвращается посредством обращения к базе данных, а не путем запроса таблицы {@link
+android.provider.CalendarContract.Instances} с необработанными данными.</p>
+
+<pre>
+private static final String DEBUG_TAG = "MyActivity";
+public static final String[] INSTANCE_PROJECTION = new String[] {
+    Instances.EVENT_ID,      // 0
+    Instances.BEGIN,         // 1
+    Instances.TITLE          // 2
+  };
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_BEGIN_INDEX = 1;
+private static final int PROJECTION_TITLE_INDEX = 2;
+...
+
+// Specify the date range you want to search for recurring
+// event instances
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2011, 9, 23, 8, 0);
+long startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2011, 10, 24, 8, 0);
+long endMillis = endTime.getTimeInMillis();
+  
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+
+// The ID of the recurring event whose instances you are searching
+// for in the Instances table
+String selection = Instances.EVENT_ID + " = ?";
+String[] selectionArgs = new String[] {"207"};
+
+// Construct the query with the desired date range.
+Uri.Builder builder = Instances.CONTENT_URI.buildUpon();
+ContentUris.appendId(builder, startMillis);
+ContentUris.appendId(builder, endMillis);
+
+// Submit the query
+cur =  cr.query(builder.build(), 
+    INSTANCE_PROJECTION, 
+    selection, 
+    selectionArgs, 
+    null);
+   
+while (cur.moveToNext()) {
+    String title = null;
+    long eventID = 0;
+    long beginVal = 0;    
+    
+    // Get the field values
+    eventID = cur.getLong(PROJECTION_ID_INDEX);
+    beginVal = cur.getLong(PROJECTION_BEGIN_INDEX);
+    title = cur.getString(PROJECTION_TITLE_INDEX);
+              
+    // Do something with the values. 
+    Log.i(DEBUG_TAG, "Event:  " + title); 
+    Calendar calendar = Calendar.getInstance();
+    calendar.setTimeInMillis(beginVal);  
+    DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
+    Log.i(DEBUG_TAG, "Date: " + formatter.format(calendar.getTime()));    
+    }
+ }</pre>
+
+<h2 id="intents">Намерения календаря</h2>
+<p>Вашему приложению не нужно запрашивать <a href="#manifest">разрешения</a> на чтение и запись данных календаря. Вместо этого можно использовать намерения, поддерживаемые приложением «Календарь» Android, для обработки операций чтения и записи в этом приложении. В таблице ниже указаны намерения, поддерживаемые поставщиком календаря.</p>
+<table>
+  <tr>
+    <th>Действие</th>
+    <th>URI</th>
+
+    <th>Описание</th>
+    <th>Дополнительные данные</th>
+  </tr>
+  <tr>
+    <td><br>
+    {@link android.content.Intent#ACTION_VIEW VIEW} <br></td>
+    <td><p><code>content://com.android.calendar/time/&lt;ms_since_epoch&gt;</code></p>
+    Сослаться на URI также можно с помощью
+{@link android.provider.CalendarContract#CONTENT_URI CalendarContract.CONTENT_URI}. 
+Пример использования этого намерения представлен в разделе <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">Использование намерений для просмотра данных календаря</a>. 
+
+    </td>
+    <td>Открытие календаря во время, заданное параметром <code>&lt;ms_since_epoch&gt;</code>.</td>
+    <td>Отсутствуют.</td>
+  </tr>
+  <tr>
+    <td><p>{@link android.content.Intent#ACTION_VIEW VIEW} </p>
+
+     </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+    Сослаться на URI также можно с помощью
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Пример использования этого намерения представлен в разделе <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">Использование намерений для просмотра данных календаря</a>.
+    
+    </td>
+    <td>Просмотр события, указанного с помощью <code>&lt;event_id&gt;</code>.</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+  Сослаться на URI также можно с помощью
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Пример использования этого намерения представлен в разделе <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-edit">Использование намерения для редактирования события</a>.
+    
+    
+    </td>
+    <td>Редактирование события, указанного с помощью <code>&lt;event_id&gt;</code>.</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} <br>
+    <br>
+    {@link android.content.Intent#ACTION_INSERT INSERT} </td>
+    <td><p><code>content://com.android.calendar/events</code></p>
+    
+   Сослаться на URI также можно с помощью
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Пример использования этого намерения представлен в разделе <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-insert">Использование намерения для редактирования события</a>.
+    
+    </td>
+
+    <td>Создание события.</td>
+    <td>Любые из дополнительных данных, указанных в таблице ниже.</td>
+  </tr>
+</table>
+
+<p>В таблице ниже указаны дополнительные данные намерения, которые поддерживаются поставщиком календаря.
+</p>
+<table>
+  <tr>
+    <th>Дополнительные данные намерения</th>
+    <th>Описание</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE Events.TITLE}</td>
+    <td>Название события.</td>
+  </tr>
+  <tr>
+  
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME}</td>
+    <td>Время начала события (в миллисекундах) от эпохи.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME}</td>
+    
+    <td>Время окончания события (в миллисекундах) от эпохи.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_ALL_DAY
+CalendarContract.EXTRA_EVENT_ALL_DAY}</td>
+    
+    <td>Логическое значение, обозначающее, что это событие на весь день. Значение может быть
+<code>true</code> или <code>false</code>.</td> </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION
+Events.EVENT_LOCATION}</td>
+    
+    <td>Место проведения события.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION
+Events.DESCRIPTION}</td>
+    
+    <td>Описание события.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}</td>
+    <td>Адреса эл. почты приглашенных (через запятую).</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#RRULE Events.RRULE}</td>
+    <td>Правило повторения для события.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#ACCESS_LEVEL
+Events.ACCESS_LEVEL}</td>
+    
+    <td>Указывает на то, является ли событие общедоступным или закрытым.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY
+Events.AVAILABILITY}</td>
+    
+    <td>Если событие считается как занятое или как свободное время, доступное для планирования.</td>
+    
+</table> 
+<p>В разделах ниже указан порядок использования этих намерений.</p>
+
+
+<h3 id="intent-insert">Использование намерения для вставки события</h3>
+
+<p>С помощью намерения {@link android.content.Intent#ACTION_INSERT INSERT}
+ваше приложение может отправлять задачи вставки события прямо в приложение «Календарь».
+Благодаря этому в <a href="#manifest">файл манифеста</a> вашего приложения не нужно включать разрешение {@link
+android.Manifest.permission#WRITE_CALENDAR}.</p>
+
+  
+<p>Когда пользователи работают с приложением, в котором используется такой подход, приложение отправляет
+их в «Календарь» для завершения добавления события. Намерение {@link
+android.content.Intent#ACTION_INSERT INSERT} использует дополнительные поля
+для предварительного указания в форме сведений о событии в приложении «Календарь». После этого пользователи
+могут отменить событие, отредактировать форму или сохранить событие в своем
+календаре.</p>
+  
+
+
+<p>Ниже представлен фрагмент кода, в котором на 19 января 2012 г. планируется событие, которое будет проходить с
+7:30 до 8:30. Однако следует учесть некоторые моменты, касающиеся этого примера кода.</p>
+
+<ul>
+  <li>В качестве URI в нем задается
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}.</li>
+  
+  <li>В нем используются дополнительные поля {@link
+android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME} и {@link
+android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME} для предварительного указания в форме
+сведений о времени события. Значения времени должны быть указаны в формате UTC и в миллисекундах от
+эпохи.</li>
+  
+  <li>В нем используется дополнительное поле {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}
+для предоставления списка участников, разделенных запятыми (их адреса эл. почты).</li>
+  
+</ul>
+<pre>
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 0, 19, 7, 30);
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 0, 19, 8, 30);
+Intent intent = new Intent(Intent.ACTION_INSERT)
+        .setData(Events.CONTENT_URI)
+        .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
+        .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
+        .putExtra(Events.TITLE, &quot;Yoga&quot;)
+        .putExtra(Events.DESCRIPTION, &quot;Group class&quot;)
+        .putExtra(Events.EVENT_LOCATION, &quot;The gym&quot;)
+        .putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)
+        .putExtra(Intent.EXTRA_EMAIL, &quot;rowan@example.com,trevor@example.com&quot;);
+startActivity(intent);
+</pre>
+
+<h3 id="intent-edit">Использование намерения для редактирования события</h3>
+
+<p>Событие можно отредактировать напрямую, как описано в разделе <a href="#update-event">Обновление событий</a>. Благодаря намерению {@link
+android.content.Intent#ACTION_EDIT EDIT} приложение,
+у которого нет разрешения, может делегировать редактирование события приложению «Календарь».
+По завершении редактирования события в приложении «Календарь» пользователи возвращаются
+в исходное приложение.</p> <p>Ниже представлен пример намерения, который задает
+новый заголовок для указанного события и позволяет пользователям редактировать событие в приложении «Календарь».</p>
+
+
+<pre>long eventID = 208;
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_EDIT)
+    .setData(uri)
+    .putExtra(Events.TITLE, &quot;My New Title&quot;);
+startActivity(intent);</pre>
+
+<h3 id="intent-view">Использование намерений для просмотра данных календаря</h3>
+<p>Поставщик календаря позволяет использовать намерение {@link android.content.Intent#ACTION_VIEW VIEW} двумя различными способами:</p>
+<ul>
+  <li>Открытие приложения «Календарь» на определенной дате.</li>
+  <li>Просмотр события.</li>
+
+</ul>
+<p>Ниже представлен пример открытия приложения «Календарь» на определенной дате.</p>
+<pre>// A date-time specified in milliseconds since the epoch.
+long startMillis;
+...
+Uri.Builder builder = CalendarContract.CONTENT_URI.buildUpon();
+builder.appendPath(&quot;time&quot;);
+ContentUris.appendId(builder, startMillis);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+    .setData(builder.build());
+startActivity(intent);</pre>
+
+<p>Ниже представлен пример открытия события для его просмотра.</p>
+<pre>long eventID = 208;
+...
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+   .setData(uri);
+startActivity(intent);
+</pre>
+
+
+<h2 id="sync-adapter">Адаптеры синхронизации</h2>
+
+
+<p>Существуют лишь незначительные различия в том, как приложение и адаптер синхронизации
+получают доступ к поставщику календаря.</p>
+
+<ul>
+  <li>Адаптеру синхронизации необходимо указать, что он является таковым, задав для параметра {@link android.provider.CalendarContract#CALLER_IS_SYNCADAPTER} значение <code>true</code>.</li>
+  
+  
+  <li>Адаптеру синхронизации необходимо предоставить {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_NAME} и {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} в качестве параметров запроса в URI. </li>
+  
+  <li>Адаптер синхронизации имеет доступ на запись к большему числу столбцов, чем приложение или виджет.
+  Например, приложение может изменять только некоторые характеристики календаря,
+такие как название, отображаемое имя, настройки видимости и
+синхронизации. Тогда как адаптер синхронизации имеет доступ не только к этим столбцам, но и ко многим другим его характеристикам,
+таким как цвет календаря, часовой пояс, уровень доступа, местоположение и т. д.
+Однако адаптер синхронизации ограничен задаваемыми им параметрами <code>ACCOUNT_NAME</code> и
+<code>ACCOUNT_TYPE</code>.</li> </ul>
+
+<p>Ниже представлен метод, который можно использовать, чтобы получить URI для использования вместе с адаптером синхронизации.</p>
+<pre> static Uri asSyncAdapter(Uri uri, String account, String accountType) {
+    return uri.buildUpon()
+        .appendQueryParameter(android.provider.CalendarContract.CALLER_IS_SYNCADAPTER,&quot;true&quot;)
+        .appendQueryParameter(Calendars.ACCOUNT_NAME, account)
+        .appendQueryParameter(Calendars.ACCOUNT_TYPE, accountType).build();
+ }
+</pre>
+<p>Пример реализации адаптера синхронизации (который не связан с приложением «Календарь») представлен в статье, посвященной
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a>.
diff --git a/docs/html-intl/intl/ru/guide/topics/providers/contacts-provider.jd b/docs/html-intl/intl/ru/guide/topics/providers/contacts-provider.jd
new file mode 100644
index 0000000..4d07856
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/providers/contacts-provider.jd
@@ -0,0 +1,2356 @@
+page.title=Поставщик контактов
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Краткое описание</h2>
+<ul>
+    <li>Репозиторий Android с пользовательскими данными.</li>
+    <li>
+        Синхронизация со службами в Интернете.
+    </li>
+    <li>
+        Интеграция с потоками данных из социальных сетей.
+    </li>
+</ul>
+<h2>Содержание документа</h2>
+<ol>
+    <li>
+        <a href="#InformationTypes">Структура поставщика контактов</a>
+    </li>
+    <li>
+        <a href="#RawContactBasics">Необработанные контакты</a>
+    </li>
+    <li>
+        <a href="#DataBasics">Данные</a>
+    </li>
+    <li>
+        <a href="#ContactBasics">Контакты</a>
+    </li>
+    <li>
+        <a href="#Sources">Данные, полученные от адаптеров синхронизации</a>
+    </li>
+    <li>
+        <a href="#Permissions">Требуемые разрешения</a>
+    </li>
+    <li>
+        <a href="#UserProfile">Профиль пользователя</a>
+    </li>
+    <li>
+        <a href="#ContactsProviderMetadata">Метаданные поставщика контактов</a>
+    </li>
+    <li>
+        <a href="#Access">Доступ к поставщику контактов</a>
+    <li>
+    </li>
+    <li>
+        <a href="#SyncAdapters">Адаптеры синхронизации поставщика контактов</a>
+    </li>
+    <li>
+        <a href="#SocialStream">Потоки данных из социальных сетей</a>
+    </li>
+    <li>
+        <a href="#AdditionalFeatures">Дополнительные возможности поставщика контактов</a>
+    </li>
+</ol>
+<h2>Ключевые классы</h2>
+<ol>
+    <li>{@link android.provider.ContactsContract.Contacts}</li>
+    <li>{@link android.provider.ContactsContract.RawContacts}</li>
+    <li>{@link android.provider.ContactsContract.Data}</li>
+    <li>{@code android.provider.ContactsContract.StreamItems}</li>
+</ol>
+<h2>Образцы кода по теме</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}resources/samples/ContactManager/index.html">
+Диспетчер контактов
+</a>
+    </li>
+    <li>
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+Пример адаптера синхронизации</a>
+    </li>
+</ol>
+<h2>См. также:</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+Основные сведения о поставщике контента
+</a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    Поставщик контактов представляет собой эффективный и гибкий компонент Android, который управляет
+центральным репозиторием устройства, в котором хранятся пользовательские данные. Поставщик контактов — это источник данных,
+которые отображаются в приложении «Контакты» на вашем устройстве. Вы также можете получить доступ к этим данным в своем собственном
+приложении и организовать обмен такими данными между устройством и службами в Интернете. Поставщик взаимодействует
+с широким набором источников данных и пытается организовать управление как можно большим набором данных о каждом человеке, поэтому
+организация поставщика довольно сложная. По этой причине API поставщика
+содержит широкий набор классов-контрактов и интерфейсов, отвечающих как за получение данных, так и за их
+изменение.
+</p>
+<p>
+    В этом руководстве рассматриваются следующие вопросы:
+</p>
+    <ul>
+        <li>
+            основная структура поставщика;
+        </li>
+        <li>
+            порядок получения данных от поставщика;
+        </li>
+        <li>
+            порядок изменения данных в поставщике;
+        </li>
+        <li>
+            порядок записи адаптера синхронизации для синхронизации данных, полученных с вашего сервера, с данными в
+поставщике контактов.
+        </li>
+    </ul>
+<p>
+    При изучении данного материала подразумевается, что вы уже знакомы с основами поставщиков контента Android. Дополнительные сведения
+о поставщиках контента Android представлены в руководстве
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">Основные
+сведения о поставщике контента</a>. Пример
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">адаптера синхронизации</a>
+служит примером использования такого приложения для обмена данными между поставщиком
+контактов и приложением, размещенным в веб-службах Google.
+</p>
+<h2 id="InformationTypes">Структура поставщика контактов</h2>
+<p>
+    Поставщик контактов представляет собой поставщик контента Android. Он содержит в себе три типа
+данных о пользователе, каждый из которых указан в отдельной таблице, предоставляемой поставщиком,
+как показано на рисунке 1.
+</p>
+<img src="{@docRoot}images/providers/contacts_structure.png" alt="" height="364" id="figure1" />
+<p class="img-caption">
+  <strong>Рисунок 1.</strong> Структура таблицы поставщика контактов.
+</p>
+<p>
+    В качестве имен этих трех таблиц обычно используются названия соответствующих классов-контрактов. Эти классы
+определяют константы для URI контента, названий столбцов и значений в столбцах этих таблиц.
+</p>
+<dl>
+    <dt>
+        Таблица {@link android.provider.ContactsContract.Contacts}
+    </dt>
+    <dd>
+        Строки в этой таблице содержат данные о разных пользователях, полученные путем агрегации строк необработанных контактов.
+    </dd>
+    <dt>
+        Таблица {@link android.provider.ContactsContract.RawContacts}
+    </dt>
+    <dd>
+        Строки в этой таблице содержат сводные данные о пользователе, относящиеся к пользовательскому аккаунту и его типу.
+    </dd>
+    <dt>
+        Таблица {@link android.provider.ContactsContract.Data}
+    </dt>
+    <dd>
+        Строки в этой таблице содержат сведения о необработанных контактах, такие как адреса эл. почты или номера телефонов.
+    </dd>
+</dl>
+<p>
+    Другие таблицы, представленные классами-контрактами в {@link android.provider.ContactsContract},
+представляют собой вспомогательные таблицы, которые поставщик контактов использует для управления своими операциями или поддержки
+определенных функций, имеющихся в приложении устройства «Контакты» или приложениях для телефонной связи.
+</p>
+<h2 id="RawContactBasics">Необработанные контакты</h2>
+<p>
+    Необработанный контакт представляет собой данные о пользователе, поступающие из одного аккаунта определенного
+типа. Поскольку в качестве источника данных о пользователе в поставщике контактов может выступать сразу несколько онлайн-служб,
+для одного и того же пользователя в поставщике контактов может существовать несколько необработанных контактов.
+    Это также позволяет пользователю объединять пользовательские данные из нескольких аккаунтов
+одного и того же типа.
+</p>
+<p>
+    Большая часть данных необработанного контакта не хранится в таблице
+{@link android.provider.ContactsContract.RawContacts}. Вместо этого они хранятся в одной или нескольких
+строках в таблице {@link android.provider.ContactsContract.Data}. В каждой строке данных имеется
+столбец {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID Data.RAW_CONTACT_ID},
+в котором содержится значение {@code android.provider.BaseColumns#_ID RawContacts._ID} его
+родительской строки{@link android.provider.ContactsContract.RawContacts}.
+</p>
+<h3 id="RawContactsColumns">Важные столбцы необработанных контактов</h3>
+<p>
+    В таблице 1 указаны столбцы таблицы {@link android.provider.ContactsContract.RawContacts},
+которые имеют большое значение. Обязательно ознакомьтесь с примечаниями, приведенными после этой таблицы.
+</p>
+<p class="table-caption" id="table1">
+    <strong>Таблица 1.</strong> Важные столбцы необработанных контактов.
+</p>
+<table>
+    <tr>
+        <th scope="col">Название столбца</th>
+        <th scope="col">Использование</th>
+        <th scope="col">Примечания</th>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_NAME}
+        </td>
+        <td>
+            Имя аккаунта для типа аккаунта, который выступает в роли источника данных для необработанного контакта.
+            Например, имя аккаунта Google является одним из эл. адресов почты Gmail
+владельца устройства. Дополнительные сведения
+см. в следующей записи
+{@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}.
+        </td>
+        <td>
+            Формат этого имени зависит от типа аккаунта. Это не обязательно
+адрес эл. почты.
+        </td>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}
+        </td>
+        <td>
+            Тип аккаунта, который выступает в роли источника данных для необработанного контакта. Например, тип аккаунта
+Google — <code>com.google</code>. Всегда указывайте тип аккаунта
+и идентификатор домена, которым вы владеете или управляете. Это позволит гарантировать уникальность
+типа вашего аккаунта.
+        </td>
+        <td>
+            У типа аккаунта, выступающего в роли источника данных контактов, обычно имеется связанный с ним адаптер синхронизации,
+который синхронизирует данные с поставщиком контактов.
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.RawContactsColumns#DELETED}
+        </td>
+        <td>
+            Флаг deleted для необработанного контакта.
+        </td>
+        <td>
+            Этот флаг позволяет поставщику контактов хранить строку внутри себя до тех пор,
+пока адаптеры синхронизации не смогут удалить эту строку с серверов, а затем
+удалить ее из репозитория.
+        </td>
+    </tr>
+</table>
+<h4>Примечания</h4>
+<p>
+    Ниже представлены важные примечания к таблице
+{@link android.provider.ContactsContract.RawContacts}.
+</p>
+<ul>
+    <li>
+        Имя необработанного контакта не хранится в его строке в таблице
+{@link android.provider.ContactsContract.RawContacts}. Вместо этого оно хранится в
+таблице {@link android.provider.ContactsContract.Data}
+в строке {@link android.provider.ContactsContract.CommonDataKinds.StructuredName}. У необработанного контакта
+имеется в таблице {@link android.provider.ContactsContract.Data} только одна строка такого типа.
+    </li>
+    <li>
+        <strong>Внимание!</strong> Чтобы использовать в строке необработанного контакта данные собственного аккаунта, строку
+, сначала необходимо зарегистрировать его в классе {@link android.accounts.AccountManager}. Для этого предложите
+пользователям добавить тип аккаунта и его имя в список аккаунтов. Если
+не сделать этого, поставщик контактов автоматически удалит вашу строку необработанного контакта.
+        <p>
+            Например, если необходимо, чтобы в вашем приложении хранились данные контактов для веб-службы
+в домене {@code com.example.dataservice}, и аккаунт пользователя службы
+ выглядит следующим образом:{@code becky.sharp@dataservice.example.com}, то пользователю сначала необходимо добавить
+«тип» аккаунта ({@code com.example.dataservice}) и его «имя»
+({@code becky.smart@dataservice.example.com}) прежде чем ваше приложение сможет добавлять строки необработанных контактов.
+            Это требование можно указать в документации для пользователей, а также можно предложить
+пользователю добавить тип и имя своего аккаунта, либо реализовать оба этих варианта. Более подробно типы и имена аккаунтов
+рассматриваются в следующем разделе.
+    </li>
+</ul>
+<h3 id="RawContactsExample">Источники данных необработанных контактов</h3>
+<p>
+    Чтобы понять, что такое необработанный контакт, рассмотрим пример с пользователем Emily Dickinson, на устройстве которой имеется три
+следующих аккаунта:
+</p>
+<ul>
+    <li><code>emily.dickinson@gmail.com</code>;</li>
+    <li><code>emilyd@gmail.com</code>;</li>
+    <li>Аккаунт belle_of_amherst в Twitter</li>
+</ul>
+<p>
+    Она включила функцию <em>Синхронизировать контакты</em> для всех трех этих аккаунтов
+в настройках <em>Аккаунты</em>.
+</p>
+<p>
+    Предположим, что Emily Dickinson открывает браузер, входит в Gmail под именем
+<code>emily.dickinson@gmail.com</code>, затем открывает
+Контакты и добавляет новый контакт Thomas Higginson. Позже она снова входит в Gmail под именем
+<code>emilyd@gmail.com</code> и отправляет письмо пользователю Thomas Higginson, который автоматически
+добавляется в ее контакты. Также она подписана на новости от colonel_tom (аккаунт пользователя Thomas Higginson в Twitter) в
+Twitter.
+</p>
+<p>
+    В результате этих действий поставщик контактов создает три необработанных контакта:
+</p>
+<ol>
+    <li>
+        Необработанный контакт Thomas Higginson связан с аккаунтом <code>emily.dickinson@gmail.com</code>.
+        Тип этого аккаунта — Google.
+    </li>
+    <li>
+        Второй необработанный контакт Thomas Higginson связан с аккаунтом <code>emilyd@gmail.com</code>.
+        Тип этого аккаунта — также Google. Второй необработанный контакт создается даже в том случае,
+если его имя полностью совпадает с именем предыдущего контакта, поскольку первый
+был добавлен для другого аккаунта.
+    </li>
+    <li>
+        Третий необработанный контакт Thomas Higginson связан с аккаунтом belle_of_amherst. Тип этого аккаунта
+— Twitter.
+    </li>
+</ol>
+<h2 id="DataBasics">Данные</h2>
+<p>
+    Как уже указывалось ранее, данные необработанного контакта
+хранятся в строке {@link android.provider.ContactsContract.Data}, которая связана со значением
+<code>_ID</code> необработанного контакта. Благодаря этому для одного необработанного контакта может существовать несколько экземпляров
+одного и того же типа данных (например, адресов эл. почты или номеров телефонов). Например, если у контакта
+Thomas Higginson для аккаунта {@code emilyd@gmail.com} (строка необработанного контакта Thomas Higginson,
+связанная с учетной записью Google <code>emilyd@gmail.com</code>) имеется адрес эл. почты
+<code>thigg@gmail.com</code> и служебный адрес эл. почты
+<code>thomas.higginson@gmail.com</code>, то поставщик контактов сохраняет две строки
+адреса эл. почты и связывает их с этим необработанным контактом.
+</p>
+<p>
+    Обратите внимание, что в этой таблице хранятся данные разных типов. Строки со сведениями об отображаемом имени,
+номере телефона, адресе эл. почты, почтовом адресе, фото и веб-сайте хранятся в таблице
+{@link android.provider.ContactsContract.Data}. Для упрощения управления этими данными в таблице
+{@link android.provider.ContactsContract.Data} предусмотрены столбцы с описательными именами,
+а также другие столбцы с универсальными именами. Содержимое в столбце с описательным именем имеет то же значение,
+независимо от типа данных в строке, тогда как содержимое столбца с универсальным именем
+может иметь разное значение в зависимости от типа данных.
+</p>
+<h3 id="DescriptiveColumns">Описательные имена столбцов</h3>
+<p>
+    Вот некоторые примеры столбцов с описательными именами:
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Data#RAW_CONTACT_ID}
+    </dt>
+    <dd>
+        Значение в столбце <code>_ID</code> необработанного контакта для этих данных.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data#MIMETYPE}
+    </dt>
+    <dd>
+        Тип данных, хранящихся в этой строке, в виде настраиваемого типа MIME. Поставщик контактов
+использует типы MIME, заданные в подклассах класса
+{@link android.provider.ContactsContract.CommonDataKinds}. Эти типы MIME являются открытыми, и
+их может использовать любое приложение или адаптер синхронизации, поддерживающие работу с поставщиком контактов.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY}
+    </dt>
+    <dd>
+        Если этот тип данных для необработанного контакта встречается несколько раз, то
+столбец {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} помечает флагом
+строки данных, в которых содержатся основные данные для этого типа. Например, если
+пользователь нажал и удерживает номер телефона контакта и выбрал параметр <strong>Использовать по умолчанию</strong>,
+то в столбце {@link android.provider.ContactsContract.Data} с этим номером телефона
+в соответствующем столбце {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} задается
+значение, отличное от нуля.
+    </dd>
+</dl>
+<h3 id="GenericColumns">Универсальные имена столбцов</h3>
+<p>
+    Существует 15 общедоступных столбцов с универсальными именами (<code>DATA1</code>–<code>DATA15</code>)
+и четыре дополнительных столбца
+(<code>SYNC1</code>–<code>SYNC4</code>), которые используются только адаптерами
+синхронизации. Константы столбцов с универсальными именами применяются всегда, независимо от типа данных,
+содержащихся в столбце.
+</p>
+<p>
+    Столбец <code>DATA1</code> является индексируемым.  Поставщик контактов всегда использует этот столбец для
+данных, которые, как он ожидает, будут наиболее часто являться целевыми в запросах. Например,
+в строке с адресами эл. почты в этом столбце указывается фактический адрес эл. почты.
+</p>
+<p>
+    Обычно столбец <code>DATA15</code> зарезервирован для данных больших двоичных объектов
+(BLOB), таких как миниатюры фотографий.
+</p>
+<h3 id="TypeSpecificNames">Имена столбцов по типам строк</h3>
+<p>
+    Для упрощения работы со столбцами определенного типа строк в поставщике контактов
+также предусмотрены константы для имен столбцов по типам строк, которые определены в подклассах класса
+{@link android.provider.ContactsContract.CommonDataKinds}. Эти константы просто
+присваивают одному и тому же имени столбца различные константы, что позволяет вам получать доступ к данным в строке
+определенного типа.
+</p>
+<p>
+    Например, класс {@link android.provider.ContactsContract.CommonDataKinds.Email} определяет
+константы имени столбца для строки {@link android.provider.ContactsContract.Data},
+в которой имеется тип MIME
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+Email.CONTENT_ITEM_TYPE}. В этом классе содержится константа
+{@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} для столбца адреса
+эл. почты. Фактическое значение
+{@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} — data1, которое совпадает
+с универсальным именем столбца.
+</p>
+<p class="caution">
+    <strong>Внимание!</strong> Не добавляйте свои настраиваемые данные в таблицу
+{@link android.provider.ContactsContract.Data} с помощью строки, в которой имеется один из
+предварительно заданных поставщиком типов MIME. В противном случае вы можете потерять данные или вызвать неполадки
+в работе поставщика. Например, не следует добавлять строку с типом MIME
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+Email.CONTENT_ITEM_TYPE}, в которой в столбце
+<code>DATA1</code> вместо адреса эл. почты содержится имя пользователя. Если вы укажете в строке собственный настраиваемый тип MIME, вы можете свободно
+указывать собственные имена столбцов по типам строк и использовать их так, как пожелаете.
+</p>
+<p>
+    На рисунке 2 показано, как столбцы с описательными именами и столбцы данных отображаются в строке
+{@link android.provider.ContactsContract.Data}, а также как имена столбцов по типу строк «накладываются»
+на универсальные имена столбцов.
+</p>
+<img src="{@docRoot}images/providers/data_columns.png" alt="How type-specific column names map to generic column names" height="311" id="figure2" />
+<p class="img-caption">
+  <strong>Рисунок 2.</strong> Имена столбцов по типам строк и универсальные имена столбцов.
+</p>
+<h3 id="ColumnMaps">Классы имен столбцов по типам строк</h3>
+<p>
+    В таблице 2 перечислены наиболее часто используемые классы имен столбцов по типам строк.
+</p>
+<p class="table-caption" id="table2">
+  <strong>Таблица 2.</strong> Классы имен столбцов по типам строк</p>
+<table>
+  <tr>
+    <th scope="col">Класс сопоставления</th>
+    <th scope="col">Тип данных</th>
+    <th scope="col">Примечания</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredName}</td>
+    <td>Данные об имени необработанного контакта, связанного с этой строкой данных.</td>
+    <td>У необработанного контакта имеется только одна строка такого типа.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Photo}</td>
+    <td>Основная фотография необработанного контакта, связанного с этой строкой данных.</td>
+    <td>У необработанного контакта имеется только одна строка такого типа.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Email}</td>
+    <td>Адрес эл. почты необработанного контакта, связанного с этой строкой данных.</td>
+    <td>У необработанного контакта может быть несколько адресов эл. почты.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal}</td>
+    <td>Почтовый адрес необработанного контакта, связанного с этой строкой данных.</td>
+    <td>У необработанного контакта может быть несколько почтовых адресов.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}</td>
+    <td>Идентификатор, с помощью которого необработанный контакт связан с одной из групп в поставщике контактов.</td>
+    <td>
+        Группы представляют собой необязательный компонент для типа аккаунта и имени аккаунта. Дополнительные сведения о
+группах представлены в разделе <a href="#Groups">Группы контактов</a>.
+    </td>
+  </tr>
+</table>
+<h3 id="ContactBasics">Контакты</h3>
+<p>
+    Поставщик контактов объединяет строки с необработанными контактами для всех типов аккаунтов и имен аккаунтов
+для создания <strong>контакта</strong>. Это позволяет упростить отображение и изменение всех данных,
+собранных в отношении пользователя. Поставщик контактов управляет процессом создания строк
+контактов и агрегированием необработанных контактов, у которых имеется строка контакта. Ни приложениям, ни
+адаптерам синхронизации не разрешается добавлять контакты, а некоторые столбцы в строке контакта доступны только для чтения.
+</p>
+<p class="note">
+    <strong>Примечание.</strong> Если попытаться добавить контакт в поставщик контактов с помощью метода
+{@link android.content.ContentResolver#insert(Uri,ContentValues) insert()}, будет выдано исключение
+{@link java.lang.UnsupportedOperationException}. Если вы попытаетесь обновить столбец,
+доступный только для чтения, это действие будет проигнорировано.
+</p>
+<p>
+    При добавлении нового необработанного контакта,
+который не соответствует ни одному из существующих контактов, поставщик контактов создает новый контакт. Поставщик поступает аналогично в случае, если 
+данные в строке существующего необработанного контакта изменяются таким образом, что они больше не соответствуют контакту,
+с которым они ранее были связаны. При создании приложением или адаптером синхронизации нового контакта,
+который <em></em> соответствует существующему контакту, то новый контакт объединяется с
+существующим контактом.
+</p>
+<p>
+    Поставщик контактов связывает строку контакта с его строками необработанного контакта посредством столбца
+<code>_ID</code> строки контакта в таблице
+{@link android.provider.ContactsContract.Contacts Contacts}. Столбец <code>CONTACT_ID</code> в таблице необработанных контактов
+{@link android.provider.ContactsContract.RawContacts} содержит значения <code>_ID</code> для
+строки контактов, связанной с каждой строкой необработанных контактов.
+</p>
+<p>
+    В таблице {@link android.provider.ContactsContract.Contacts} также имеется столбец
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}, который выступает в роли
+«постоянной ссылки» на строку контакта. Поскольку поставщик контактов автоматически сохраняет контакты,
+в ответ на агрегирование или синхронизацию он может изменить значение {@code android.provider.BaseColumns#_ID}
+строки контакта. Даже если это произойдет, URI контента
+{@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI}, объединенный с
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} контакта, будет
+по-прежнему указывать на строку контакта, поэтому вы можете смело использовать
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}
+для сохранения ссылок на «избранные» контакты и др. Столбец имеет собственный формат,
+который не связан с форматом столбца{@code android.provider.BaseColumns#_ID}.
+</p>
+<p>
+    На рисунке 3 показаны взаимосвязи этих трех основных таблиц друг с другом.
+</p>
+<img src="{@docRoot}images/providers/contacts_tables.png" alt="Contacts provider main tables" height="514" id="figure4" />
+<p class="img-caption">
+  <strong>Рисунок 3</strong>. Взаимосвязи между таблицами контактов, необработанных контактов и сведений.
+</p>
+<h2 id="Sources">Данные, полученные от адаптеров синхронизации</h2>
+<p>
+    Пользователь вводит данные контактов прямо на устройстве, однако данные также поступают в поставщик контактов
+из веб-служб посредством <strong>адаптеров синхронизации</strong>, что позволяет автоматизировать
+обмен данными между устройством и службами в Интернете. Адаптеры синхронизации выполняются в фоновом режиме под
+управлением системы, и для управления данными они вызывают методы
+{@link android.content.ContentResolver}.
+</p>
+<p>
+    В Android веб-служба, с которой работает адаптер синхронизации, определяется по типу аккаунта.
+    Каждый адаптер синхронизации работает с одним типом аккаунта, однако он может поддерживать несколько имен аккаунтов
+такого типа. Вкратце типы и имена аккаунтов рассматриваются
+в разделе <a href="#RawContactsExample">Источники данных необработанных контактов</a>. Указанные ниже определения позволяют
+более точно охарактеризовать связь между типами и именами аккаунтов и адаптерами синхронизации и службами.
+</p>
+<dl>
+    <dt>
+        Тип аккаунта
+    </dt>
+    <dd>
+        Определяет службу, в которой пользователь хранит данные. В большинстве случаев для работы со
+службой пользователю необходимо пройти проверку подлинности. Например, Google Контакты представляет собой тип аккаунтов, обозначаемый кодом
+<code>google.com</code>. Это значение соответствует типу аккаунта, используемого
+{@link android.accounts.AccountManager}.
+    </dd>
+    <dt>
+        Имя аккаунта
+    </dt>
+    <dd>
+        Определяет конкретный аккаунт или имя для входа для типа аккаунта. Аккаунты «Контакты Google»
+— это то же, что и аккаунты Google, в качестве имени которых используется адрес эл. почты.
+        В других службах может использоваться имя пользователя, состоящее из одного слова, или числовой идентификатор.
+    </dd>
+</dl>
+<p>
+    Типы аккаунтов не обязательно должны быть уникальными. Пользователь может создать несколько аккаунтов Google Контакты
+и загрузить данные из них в поставщик контактов; это может произойти в случае, если у пользователя имеется один набор
+персональных контактов для личного аккаунта, и другой набор — для служебного аккаунта. Имена
+аккаунтов обычно уникальные. Вместе они формируют определенный поток данных между поставщиком контактов
+и внешними службами.
+</p>
+<p>
+    Если необходимо передать данные из службы в поставщик контактов, необходимо создать
+собственный адаптер синхронизации. Дополнительные сведения об этом представлены в разделе 
+<a href="#SyncAdapters">Адаптеры синхронизации поставщика контактов</a>.
+</p>
+<p>
+    На рисунке 4 показано, какую роль выполняет поставщик контактов в потоке передачи данных
+о пользователях. В области, отмеченной на рисунке как sync adapters, каждый адаптер промаркирован в соответствии с поддерживаемым им типом аккаунтов.
+</p>
+<img src="{@docRoot}images/providers/ContactsDataFlow.png" alt="Flow of data about people" height="252" id="figure5" />
+<p class="img-caption">
+  <strong>Рисунок 4</strong>. Поток передачи данных через поставщика контактов.
+</p>
+<h2 id="Permissions">Требуемые разрешения</h2>
+<p>
+    Приложения, которым требуется доступ к поставщику контактов,
+должны запросить указанные ниже разрешения.
+</p>
+<dl>
+    <dt>Доступ на чтение одной или нескольких таблиц</dt>
+    <dd>
+        {@link android.Manifest.permission#READ_CONTACTS}, указанный в файле
+<code>AndroidManifest.xml</code> с элементом
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> в виде
+<code>&lt;uses-permission android:name="android.permission.READ_CONTACTS"&gt;</code>.
+    </dd>
+    <dt>Доступ на запись в одну или несколько таблиц</dt>
+    <dd>
+        {@link android.Manifest.permission#WRITE_CONTACTS}, указанный в файле
+<code>AndroidManifest.xml</code> с элементом
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> в виде
+<code>&lt;uses-permission android:name="android.permission.WRITE_CONTACTS"&gt;</code>.
+    </dd>
+</dl>
+<p>
+    Эти разрешения не распространяются на работу с данными профиля пользователя. Профиль пользователя
+и требуемые разрешения для работы с ним рассматриваются в разделе
+<a href="#UserProfile">Профиль пользователя</a> ниже.
+</p>
+<p>
+    Помните, что данные о контактах пользователя являются личными и конфиденциальными. Пользователи заботятся о своей конфиденциальности,
+поэтому не хотят, чтобы приложения собирали данные о них самих или их контактах.
+    Если пользователю не до конца ясно, для чего требуется разрешение на доступ к данным контактов, они могут присвоить
+вашему приложению низкий рейтинг или вообще откажутся его устанавливать.
+</p>
+<h2 id="UserProfile">Профиль пользователя</h2>
+<p>
+    В таблице {@link android.provider.ContactsContract.Contacts} имеется всего одна строка, содержащая
+данные профиля для устройства пользователя. Эти данные описывают <code>user</code> устройства,
+а не один из контактов пользователя. Строка контактов профиля связана со строкой
+необработанных контактов в каждой из систем, в которой используется профиль.
+    В каждой строке необработанного контакта профиля может содержаться несколько строк данных. Константы для доступа к профилю пользователя
+представлены в классе {@link android.provider.ContactsContract.Profile}.
+</p>
+<p>
+    Для доступа к профилю пользователя требуются особые разрешения. Кроме разрешений
+{@link android.Manifest.permission#READ_CONTACTS} и
+{@link android.Manifest.permission#WRITE_CONTACTS}, которые требуются для чтения и записи, для доступа к профилю пользователя необходимы разрешения
+{@code android.Manifest.permission#READ_PROFILE} и
+{@code android.Manifest.permission#WRITE_PROFILE}
+на чтение и запись соответственно.
+</p>
+<p>
+    Всегда следует помнить, что профиль пользователя представляет собой конфиденциальную информацию. Разрешение
+{@code android.Manifest.permission#READ_PROFILE} предоставляет вам доступ к личной информации на устройстве
+пользователя. В описании своего приложения обязательно укажите, для
+чего вам требуется доступ к профилю пользователя.
+</p>
+<p>
+    Чтобы получить строку контакта с профилем пользователя, вызовите метод
+{@link android.content.ContentResolver#query(Uri,String[], String, String[], String)
+ContentResolver.query()}. Задайте для URI контента значение
+{@link android.provider.ContactsContract.Profile#CONTENT_URI} и не указывайте никаких критериев
+выборки. Этот URI контента также можно использовать в качестве основного URI для получения
+необработанных контактов или данных профиля. Ниже представлен фрагмент кода для получения данных профиля.
+</p>
+<pre>
+// Sets the columns to retrieve for the user profile
+mProjection = new String[]
+    {
+        Profile._ID,
+        Profile.DISPLAY_NAME_PRIMARY,
+        Profile.LOOKUP_KEY,
+        Profile.PHOTO_THUMBNAIL_URI
+    };
+
+// Retrieves the profile from the Contacts Provider
+mProfileCursor =
+        getContentResolver().query(
+                Profile.CONTENT_URI,
+                mProjection ,
+                null,
+                null,
+                null);
+</pre>
+<p class="note">
+    <strong>Примечание.</strong> Если при извлечении несколько строк контактов необходимо определить,
+какой из них является профилем пользователя, обратитесь к столбцу
+{@link android.provider.ContactsContract.ContactsColumns#IS_USER_PROFILE} этой строки. Если в этом столбце
+указано значение «1», то в это строке находится профиль пользователя.
+</p>
+<h2 id="ContactsProviderMetadata">Метаданные поставщика контактов</h2>
+<p>
+    Поставщик контактов управляет данными, которые используются для отслеживания состояния данных контакта в
+репозитории. Эти метаданные о репозитории хранятся в различных местах, включая
+строки необработанных контактов, данные и строки таблицы контактов, таблицу
+{@link android.provider.ContactsContract.Settings} и таблицу
+{@link android.provider.ContactsContract.SyncState}. В таблице ниже
+указаны значения каждого из этих фрагментов метаданных.
+</p>
+<p class="table-caption" id="table3">
+  <strong>Таблица 3.</strong> Метаданные в поставщике контактов</p>
+<table>
+    <tr>
+        <th scope="col">Таблица</th>
+        <th scope="col">Столбец</th>
+        <th scope="col">Значения</th>
+        <th scope="col">Описание</th>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.RawContacts}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.SyncColumns#DIRTY}</td>
+        <td>«0» — с момента последней синхронизации изменения не вносились.</td>
+        <td rowspan="2">
+            Служит для отметки необработанных контактов, которые были изменены на устройстве и которые необходимо снова синхронизировать с
+сервером. Значение устанавливается автоматически поставщиком контактов при обновлении строк приложениями
+Android.
+            <p>
+                Адаптеры синхронизации, которые вносят изменения в необработанные контакты или таблицы данных, должны всегда добавлять к используемому ими URI
+контента строку 
+{@link android.provider.ContactsContract#CALLER_IS_SYNCADAPTER}. Это позволяет предотвратить пометку таких строк поставщиком как «грязных».
+                В противном случае изменения, внесенные адаптером синхронизации, будут рассматриваться как локальные изменения,
+которые подлежат отправке на сервер, даже если источником таких изменений был сам сервер.
+            </p>
+        </td>
+    </tr>
+    <tr>
+            <td>«1» — с момента последней синхронизации были внесены изменения, которые необходимо отразить и на сервере.</td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#VERSION}</td>
+        <td>Номер версии этой строки.</td>
+        <td>
+            Поставщик контактов автоматически увеличивает это значение при каждом
+изменении в строке или в связанных с ним данных.
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.Data}</td>
+        <td>{@link android.provider.ContactsContract.DataColumns#DATA_VERSION}</td>
+        <td>Номер версии этой строки.</td>
+        <td>
+            Поставщик контактов автоматически увеличивает это значение при каждом
+изменении в строке данных.
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}</td>
+        <td>
+            Строковое значение, которое служит уникальным идентификатором данного необработанного контакта в аккаунте,
+в котором он был создан.
+        </td>
+        <td>
+            Когда адаптер синхронизации создает новый необработанный контакт, в этом столбце следует указать
+уникальный идентификатор этого необработанного контакта на сервере. Когда же приложение Android создает
+новый необработанный контакт, то приложению следует оставить этот столбец пустым. Это служит сигналом для
+адаптера синхронизации, чтобы создать новый необработанный контакт на сервере и
+получить значение {@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}.
+            <p>
+                В частности, идентификатор источника должен быть <strong>уникальным</strong> для каждого типа аккаунта
+и неизменным при синхронизации.
+            </p>
+                <ul>
+                    <li>
+                        Уникальный: у каждого необработанного контакта для аккаунта должен быть свой собственный идентификатор источника. Если
+не применить это требование, у вас обязательно возникнут проблемы с приложением «Контакты».
+                        Обратите внимание, что два необработанных контакта одного и того же <em>типа</em> аккаунта могут
+иметь одинаковый идентификатор источника. Например, необработанный контакт Thomas Higginson для
+аккаунта {@code emily.dickinson@gmail.com} может иметь такой же
+идентификатор источника, что и контакт Thomas Higginson для аккаунта
+{@code emilyd@gmail.com}.
+                    </li>
+                    <li>
+                        Стабильный: идентификаторы источников представляют собой неизменную часть данных онлайн-службы для
+необработанного контакта. Например, если пользователь выполняет повторную синхронизацию после очистки хранилища контактов в
+настройках приложения, идентификаторы источников восстановленных необработанных контактов должны быть такими же,
+как и прежде. Если не применить это требование, перестанут
+работать ярлыки.
+                    </li>
+                </ul>
+        </td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Groups}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.GroupsColumns#GROUP_VISIBLE}</td>
+        <td>«0» — контакты, представленные в этой группе, не должны отображаться в интерфейсах пользователя приложений Android.</td>
+        <td>
+            Этот столбец предназначен для сведений о совместимости с серверами, позволяющими пользователям скрывать контакты
+в определенных группах.
+        </td>
+    </tr>
+    <tr>
+        <td>«1» — контакты, представленные в этой группе, могут отображаться в интерфейсах пользователя приложений.</td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Settings}</td>
+        <td rowspan="2">
+            {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE}</td>
+        <td>
+            «0» — для этого аккаунта и аккаунтов этого типа контакты, не принадлежащие к группе,
+не отображаются в интерфейсах пользователя приложений Android.
+        </td>
+        <td rowspan="2">
+            По умолчанию контакты скрыты, если ни один из их необработанных контактов не принадлежит группе
+(принадлежность необработанного контакта к группе указывается в одном или нескольких строках
+{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}
+в таблице {@link android.provider.ContactsContract.Data}).
+            Установив этот флаг в строке таблицы {@link android.provider.ContactsContract.Settings}
+для типа аккаунта и имени аккаунта, вы можете принудительно сделать видимыми контакты, не принадлежащие какой-либо группе.
+            Один из вариантов использования этого флага — отображение контактов с серверов, на которых не используются группы.
+        </td>
+    </tr>
+    <tr>
+        <td>
+            «1» — для этого аккаунта и аккаунтов этого типа контакты, не принадлежащие к группе,
+отображаются в интерфейсах пользователя приложений Android.
+        </td>
+
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.SyncState}</td>
+        <td>(все)</td>
+        <td>
+            Эта таблица используется для хранения метаданных для вашего адаптера синхронизации.
+        </td>
+        <td>
+            С помощью этой таблицы вы можете на постоянной основе хранить на устройстве сведения о состоянии синхронизации и другие связанные с
+синхронизацией данные.
+        </td>
+    </tr>
+</table>
+<h2 id="Access">Доступ к поставщику контактов</h2>
+<p>
+    В этом разделе рассматриваются инструкции по получению доступа к данным из поставщика контактов, в частности,
+следующие:
+</p>
+<ul>
+    <li>
+        запросы объектов;
+    </li>
+    <li>
+        пакетное изменение;
+    </li>
+    <li>
+        получение и изменение данных с помощью намерений;
+    </li>
+    <li>
+        целостность данных.
+    </li>
+</ul>
+<p>
+    Дополнительные сведения о внесении изменений с помощью адаптеров синхронизации представлены в разделе
+<a href="#SyncAdapters">Адаптеры синхронизации поставщика контактов</a>.
+</p>
+<h3 id="Entities">Запрос объектов</h3>
+<p>
+    Таблицы поставщика контактов имеют иерархическую структуру, поэтому зачастую полезно
+извлекать строку и все связанные с ней ее дочерние строки. Например, для отображения
+всей информации о пользователе вы, возможно, захотите извлечь все строки
+{@link android.provider.ContactsContract.RawContacts} для одной строки
+{@link android.provider.ContactsContract.Contacts} или все строки
+{@link android.provider.ContactsContract.CommonDataKinds.Email} для одной строки
+{@link android.provider.ContactsContract.RawContacts}. Чтобы упростить этот процесс, в поставщике контактов имеются
+<strong>объекты</strong>, которые выступают в роли соединителей базы данных между
+таблицами.
+</p>
+<p>
+    Объект представляет собой подобие таблицы, состоящей из выбранных столбцов родительской таблицы и ее дочерней таблицы.
+    При запросе объекта вы предоставляете проекцию и критерии поиска на основе доступных в
+объекте столбцов. В результате вы получаете объект {@link android.database.Cursor}, в котором
+содержится одна строка для каждой извлеченной строки дочерней таблицы. Например, если запросить объект
+{@link android.provider.ContactsContract.Contacts.Entity} для имени контакта и все строки
+{@link android.provider.ContactsContract.CommonDataKinds.Email} для всех необработанных контактов,
+соответствующих этому имени, вы получите объект {@link android.database.Cursor}, содержащий по одной строке
+для каждой строки {@link android.provider.ContactsContract.CommonDataKinds.Email}.
+</p>
+<p>
+    Использование объектов упрощает запросы. С помощью объекта можно извлечь сразу все данные для
+контакта или необработанного контакта, вместо того, чтобы сначала делать запрос к родительской таблице для получения
+идентификатора и последующего запроса к дочерней таблице с использованием полученного идентификатора. Кроме того, поставщик контактов обрабатывает запрос
+объекта за одну транзакцию, что гарантирует внутреннюю согласованность полученных
+данных.
+</p>
+<p class="note">
+    <strong>Примечание.</strong> Объект обычно содержит не все столбцы
+родительской и дочерней таблиц. Если вы попытаетесь изменить имя столбца, который отсутствует в списке
+констант имени столбца для объекта, вы получите {@link java.lang.Exception}.
+</p>
+<p>
+    Ниже представлен пример кода для получения всех строк необработанного контакта для контакта. Это фрагмент
+более крупного приложения, в котором имеются две операции: «основная» и «для получения сведений». Основная операция
+служит для получения списка строк контактов; при выборе пользователем контакта операция отправляет его идентификатор в операцию
+для получения сведений. Операция для получения сведений использует объект {@link android.provider.ContactsContract.Contacts.Entity}
+для отображения всех строк данных, полученных ото всех необработанных контактов, которые связаны с выбранным
+контактом.
+</p>
+<p>
+    Вот фрагмент кода операции «для получения сведений»:
+</p>
+<pre>
+...
+    /*
+     * Appends the entity path to the URI. In the case of the Contacts Provider, the
+     * expected URI is content://com.google.contacts/#/entity (# is the ID value).
+     */
+    mContactUri = Uri.withAppendedPath(
+            mContactUri,
+            ContactsContract.Contacts.Entity.CONTENT_DIRECTORY);
+
+    // Initializes the loader identified by LOADER_ID.
+    getLoaderManager().initLoader(
+            LOADER_ID,  // The identifier of the loader to initialize
+            null,       // Arguments for the loader (in this case, none)
+            this);      // The context of the activity
+
+    // Creates a new cursor adapter to attach to the list view
+    mCursorAdapter = new SimpleCursorAdapter(
+            this,                        // the context of the activity
+            R.layout.detail_list_item,   // the view item containing the detail widgets
+            mCursor,                     // the backing cursor
+            mFromColumns,                // the columns in the cursor that provide the data
+            mToViews,                    // the views in the view item that display the data
+            0);                          // flags
+
+    // Sets the ListView's backing adapter.
+    mRawContactList.setAdapter(mCursorAdapter);
+...
+&#64;Override
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+
+    /*
+     * Sets the columns to retrieve.
+     * RAW_CONTACT_ID is included to identify the raw contact associated with the data row.
+     * DATA1 contains the first column in the data row (usually the most important one).
+     * MIMETYPE indicates the type of data in the data row.
+     */
+    String[] projection =
+        {
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID,
+            ContactsContract.Contacts.Entity.DATA1,
+            ContactsContract.Contacts.Entity.MIMETYPE
+        };
+
+    /*
+     * Sorts the retrieved cursor by raw contact id, to keep all data rows for a single raw
+     * contact collated together.
+     */
+    String sortOrder =
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID +
+            " ASC";
+
+    /*
+     * Returns a new CursorLoader. The arguments are similar to
+     * ContentResolver.query(), except for the Context argument, which supplies the location of
+     * the ContentResolver to use.
+     */
+    return new CursorLoader(
+            getApplicationContext(),  // The activity's context
+            mContactUri,              // The entity content URI for a single contact
+            projection,               // The columns to retrieve
+            null,                     // Retrieve all the raw contacts and their data rows.
+            null,                     //
+            sortOrder);               // Sort by the raw contact ID.
+}
+</pre>
+<p>
+    По завершении загрузки {@link android.app.LoaderManager} выполняет обратный вызов метода
+{@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished(Loader, D)
+onLoadFinished()}. Одним их входящих аргументов для этого метода является
+{@link android.database.Cursor} с результатом запроса. В своем приложении вы можете
+получить данные из этого объекта {@link android.database.Cursor} для его отображения или дальнейшей работы с ним.
+</p>
+<h3 id="Transactions">Пакетное изменение</h3>
+<p>
+    При каждой возможности данные в поставщике контактов следует вставлять, обновлять и удалять в
+«пакетном режиме» путем создания {@link java.util.ArrayList} из объектов
+{@link android.content.ContentProviderOperation} и вызова метода
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. Поскольку
+поставщик контактов выполняет все операции в методе
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} за одну
+транзакцию, ваши изменения всегда будут находиться в рамках репозитория контактов и
+всегда будут согласованными. Пакетное изменение также упрощает вставку необработанного контакта одновременно с его подробными
+данными.
+</p>
+<p class="note">
+    <strong>Примечание.</strong> Чтобы изменить <em>отдельный</em> необработанный контакт, рекомендуется отправить намерение в
+приложение для работы с контактами на устройстве вместо обработки изменения в вашем приложении.
+Более подробно эта операция описана в разделе
+<a href="#Intents">Получение и изменение данных с помощью намерений</a>.
+</p>
+<h4>Пределы</h4>
+<p>
+    Пакетное изменение большого количества операций может заблокировать выполнение других процессов,
+что может негативно сказаться на работе пользователя с приложением. Чтобы упорядочить все необходимые изменения
+в рамках как можно меньшего количества отдельных списков и при этом предотвратить
+блокирование работы системы, следует задать <strong>пределы</strong> для одной или нескольких операций.
+    Предел представляет собой объект {@link android.content.ContentProviderOperation}, в качестве значения параметра
+{@link android.content.ContentProviderOperation#isYieldAllowed()} которого задано
+<code>true</code>. При достижении поставщиком контактов предела он приостанавливает свою работу,
+чтобы могли выполняться другие процессы, и закрывает текущую транзакцию. Когда поставщик запускается снова, он
+выполняет следующую операцию в {@link java.util.ArrayList} и запускает
+новую транзакцию.
+</p>
+<p>
+    Использование пределов позволяет за один вызов метода
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} выполнять более одной транзакции. По этой причине
+вам следует задать предел для последней операции с набором связанных строк.
+    Например, необходимо задать предел для последней операции в наборе, которая
+добавляет строки необработанного контакта и связанные с ним строки данных, или для последней операции с набором строк, связанных
+с одним контактом.
+</p>
+<p>
+    Пределы также являются единицами атомарных операций. Все операции доступа в промежутке между двумя пределами завершаются либо
+успехом, либо сбоем в рамках одной единицы. Если любой из пределов не задан, наименьшей
+атомарной операцией считается весь пакет операций. Использование пределов позволяет предотвратить
+снижение производительности системы и одновременно обеспечить выполнение набора
+операций на атомарном уровне.
+</p>
+<h4>Изменение обратных ссылок</h4>
+<p>
+    При вставке новой строки необработанного контакта и связанных с ним рядов данных в виде набора объектов
+{@link android.content.ContentProviderOperation} вам приходится связывать строки данных
+со строкой необработанного контакта путем вставки значения
+{@code android.provider.BaseColumns#_ID} необработанного контакта в виде значения
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}. Однако это значение
+недоступно, когда вы создаете{@link android.content.ContentProviderOperation}
+для строки данных, поскольку вы еще не применили
+{@link android.content.ContentProviderOperation} для строки необработанного контакта. Чтобы обойти это ограничение,
+в классе {@link android.content.ContentProviderOperation.Builder} предусмотрен метод
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}.
+    С помощью этого метода можно вставлять или изменять столбец
+с результатом предыдущей операции.
+</p>
+<p>
+    В методе {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+предусмотрено два аргумента:
+</p>
+    <dl>
+        <dt>
+            <code>key</code>
+        </dt>
+        <dd>
+            Ключ для пары «ключ-значение». Значением этого аргумента должно быть имя столбца
+в таблице, которую вы изменяете.
+        </dd>
+        <dt>
+            <code>previousResult</code>
+        </dt>
+        <dd>
+            Индекс значения, начинающийся с «0», в массиве объектов
+{@link android.content.ContentProviderResult} из метода
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. По мере
+выполнения пакетных операций результат каждой операции сохраняется в
+промежуточном массиве результатов. Значением <code>previousResult</code> является индекс
+одного из этих результатов, который извлекается и хранится со значением
+<code>key</code>. Благодаря этому можно вставить новую запись необработанного контакта и получить обратно его значение
+{@code android.provider.BaseColumns#_ID}, а затем создать «обратную ссылку» на
+значение при добавлении строки {@link android.provider.ContactsContract.Data}.
+            <p>
+                Целиком весь результат создается при первом вызове метода
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}.
+Размер результата равен размеру {@link java.util.ArrayList} предоставленных вами объектов
+{@link android.content.ContentProviderOperation}. Однако для всех
+элементов в массиве результатов присваивается значение <code>null</code>, и при попытке
+воспользоваться обратной ссылкой на результат еще не выполненной операции метод
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+выдает {@link java.lang.Exception}.
+
+            </p>
+        </dd>
+    </dl>
+<p>
+    Ниже представлены фрагменты кода для вставки нового необработанного контакта и его данных в пакетном режиме. Они включают
+код, который задает предел и использует обратную ссылку. Эти фрагменты
+представляют собой расширенную версию метода <code>createContacEntry()</code>, который входит в класс
+<code>ContactAdder</code> в примере приложения
+<code><a href="{@docRoot}resources/samples/ContactManager/index.html">
+    Contact Manager</a></code>.
+</p>
+<p>
+    Первый фрагмент кода служит для извлечения данных контакта из пользовательского интерфейса. На этом этапе пользователь уже выбрал
+аккаунт, для которого необходимо добавить новый необработанный контакт.
+</p>
+<pre>
+// Creates a contact entry from the current UI values, using the currently-selected account.
+protected void createContactEntry() {
+    /*
+     * Gets values from the UI
+     */
+    String name = mContactNameEditText.getText().toString();
+    String phone = mContactPhoneEditText.getText().toString();
+    String email = mContactEmailEditText.getText().toString();
+
+    int phoneType = mContactPhoneTypes.get(
+            mContactPhoneTypeSpinner.getSelectedItemPosition());
+
+    int emailType = mContactEmailTypes.get(
+            mContactEmailTypeSpinner.getSelectedItemPosition());
+</pre>
+<p>
+    В следующем фрагменте кода создается операция для вставки строки необработанного контакта в таблицу
+{@link android.provider.ContactsContract.RawContacts}:
+</p>
+<pre>
+    /*
+     * Prepares the batch operation for inserting a new raw contact and its data. Even if
+     * the Contacts Provider does not have any data for this person, you can't add a Contact,
+     * only a raw contact. The Contacts Provider will then add a Contact automatically.
+     */
+
+     // Creates a new array of ContentProviderOperation objects.
+    ArrayList&lt;ContentProviderOperation&gt; ops =
+            new ArrayList&lt;ContentProviderOperation&gt;();
+
+    /*
+     * Creates a new raw contact with its account type (server type) and account name
+     * (user's account). Remember that the display name is not stored in this row, but in a
+     * StructuredName data row. No other data is required.
+     */
+    ContentProviderOperation.Builder op =
+            ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI)
+            .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType())
+            .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    Затем код создает строки данных для строк отображаемого имени, телефона и адреса эл. почты.
+</p>
+<p>
+    Каждый объект компонента операции использует метод
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+для получения
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}. Ссылка возвращается
+обратно к объекту {@link android.content.ContentProviderResult} из первой операции,
+в результате чего добавляется строка необработанного контакта и возвращается его новое значение
+{@code android.provider.BaseColumns#_ID}. После этого каждая строка данных автоматически связывается по своему
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}
+с новой строкой {@link android.provider.ContactsContract.RawContacts}, которой она принадлежит.
+</p>
+<p>
+    Объект {@link android.content.ContentProviderOperation.Builder}, который добавляет строку адреса эл. почты,
+помечается флагом с помощью метода {@link android.content.ContentProviderOperation.Builder#withYieldAllowed(boolean)
+withYieldAllowed()}, который задает предел:
+</p>
+<pre>
+    // Creates the display name for the new raw contact, as a StructuredName data row.
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * withValueBackReference sets the value of the first argument to the value of
+             * the ContentProviderResult indexed by the second argument. In this particular
+             * call, the raw contact ID column of the StructuredName data row is set to the
+             * value of the result returned by the first operation, which is the one that
+             * actually adds the raw contact row.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to StructuredName
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
+
+            // Sets the data row's display name to the name in the UI.
+            .withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified phone number and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Phone
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
+
+            // Sets the phone number and type
+            .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, phone)
+            .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, phoneType);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified email and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Email
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE)
+
+            // Sets the email address and type
+            .withValue(ContactsContract.CommonDataKinds.Email.ADDRESS, email)
+            .withValue(ContactsContract.CommonDataKinds.Email.TYPE, emailType);
+
+    /*
+     * Demonstrates a yield point. At the end of this insert, the batch operation's thread
+     * will yield priority to other threads. Use after every set of operations that affect a
+     * single contact, to avoid degrading performance.
+     */
+    op.withYieldAllowed(true);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    В последнем фрагменте кода представлен вызов метода
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}
+для вставки нового необработанного контакта и его строк данных.
+</p>
+<pre>
+    // Ask the Contacts Provider to create a new contact
+    Log.d(TAG,"Selected account: " + mSelectedAccount.getName() + " (" +
+            mSelectedAccount.getType() + ")");
+    Log.d(TAG,"Creating contact: " + name);
+
+    /*
+     * Applies the array of ContentProviderOperation objects in batch. The results are
+     * discarded.
+     */
+    try {
+
+            getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
+    } catch (Exception e) {
+
+            // Display a warning
+            Context ctx = getApplicationContext();
+
+            CharSequence txt = getString(R.string.contactCreationFailure);
+            int duration = Toast.LENGTH_SHORT;
+            Toast toast = Toast.makeText(ctx, txt, duration);
+            toast.show();
+
+            // Log exception
+            Log.e(TAG, "Exception encountered while inserting contact: " + e);
+    }
+}
+</pre>
+<p>
+    С помощью пакетных операций можно также реализовать<strong>оптимистическое управление параллелизмом</strong>.
+Это метод применения транзакций изменения без необходимости блокировать базовый репозиторий.
+    Чтобы воспользоваться этим методом, необходимо применить транзакцию и проверить наличие других изменений,
+которые могли быть внесены в это же время. Если обнаружится, что имеется несогласованное изменение,
+транзакцию можно откатить и выполнить повторно.
+</p>
+<p>
+    Оптимистическое управление параллелизмом подходит для мобильных устройств, где с системой одновременно взаимодействует только один пользователь,
+ а одновременный доступ к репозиторию данных нескольких пользователей — довольно редкое явление. Поскольку не применяется блокировка,
+экономится ценное время, которое требуется на установку блокировок или ожидания того, когда другие транзакции отменят свои блокировки.
+</p>
+<p>
+    Ниже представлен порядок использования оптимистического управления параллелизмом при обновлении одной строки
+{@link android.provider.ContactsContract.RawContacts}.
+</p>
+<ol>
+    <li>
+        Извлеките столбец {@link android.provider.ContactsContract.SyncColumns#VERSION}
+необработанного контакта, а также другие данные, которые необходимо извлечь.
+    </li>
+    <li>
+        Создайте объект {@link android.content.ContentProviderOperation.Builder}, подходящий для
+применения ограничения, с помощью метода
+{@link android.content.ContentProviderOperation#newAssertQuery(Uri)}. Для URI контента
+используйте {@link android.provider.ContactsContract.RawContacts#CONTENT_URI
+RawContacts.CONTENT_URI},
+добавив к нему {@code android.provider.BaseColumns#_ID} необработанного контакта.
+    </li>
+    <li>
+        Для объекта {@link android.content.ContentProviderOperation.Builder} вызовите метод
+{@link android.content.ContentProviderOperation.Builder#withValue(String, Object)
+withValue()}, чтобы сравнить столбец {@link android.provider.ContactsContract.SyncColumns#VERSION}
+с номером версии, которую вы только что получили.
+    </li>
+    <li>
+        Для того же объекта {@link android.content.ContentProviderOperation.Builder} вызовите метод
+{@link android.content.ContentProviderOperation.Builder#withExpectedCount(int)
+withExpectedCount()}, чтобы убедиться в том, что проверочное утверждение проверяет только одну строка.
+    </li>
+    <li>
+        Вызовите метод {@link android.content.ContentProviderOperation.Builder#build()}, чтобы создать объект
+{@link android.content.ContentProviderOperation}, затем добавьте этот объект в качестве первого объекта в
+{@link java.util.ArrayList}, который вы передаете в метод
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}.
+    </li>
+    <li>
+        Примените пакетную транзакцию.
+    </li>
+</ol>
+<p>
+    Если в промежутке между считыванием строки и попыткой ее изменения строка необработанного контакта была обновлена другой
+операцией, assert {@link android.content.ContentProviderOperation}
+завершится сбоем и в выполнении всего пакета операций будет отказано. Можно выбрать повторное выполнение
+пакета или выполнить другое действие.
+</p>
+<p>
+    В примере кода ниже демонстрируется, как создать assert
+{@link android.content.ContentProviderOperation} после запроса одного необработанного контакта с помощью
+{@link android.content.CursorLoader}.
+</p>
+<pre>
+/*
+ * The application uses CursorLoader to query the raw contacts table. The system calls this method
+ * when the load is finished.
+ */
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor cursor) {
+
+    // Gets the raw contact's _ID and VERSION values
+    mRawContactID = cursor.getLong(cursor.getColumnIndex(BaseColumns._ID));
+    mVersion = cursor.getInt(cursor.getColumnIndex(SyncColumns.VERSION));
+}
+
+...
+
+// Sets up a Uri for the assert operation
+Uri rawContactUri = ContentUris.withAppendedId(RawContacts.CONTENT_URI, mRawContactID);
+
+// Creates a builder for the assert operation
+ContentProviderOperation.Builder assertOp = ContentProviderOperation.netAssertQuery(rawContactUri);
+
+// Adds the assertions to the assert operation: checks the version and count of rows tested
+assertOp.withValue(SyncColumns.VERSION, mVersion);
+assertOp.withExpectedCount(1);
+
+// Creates an ArrayList to hold the ContentProviderOperation objects
+ArrayList ops = new ArrayList&lt;ContentProviderOperationg&gt;;
+
+ops.add(assertOp.build());
+
+// You would add the rest of your batch operations to "ops" here
+
+...
+
+// Applies the batch. If the assert fails, an Exception is thrown
+try
+    {
+        ContentProviderResult[] results =
+                getContentResolver().applyBatch(AUTHORITY, ops);
+
+    } catch (OperationApplicationException e) {
+
+        // Actions you want to take if the assert operation fails go here
+    }
+</pre>
+<h3 id="Intents">Получение и изменение данных с помощью намерений</h3>
+<p>
+    С помощью отправки намерения в приложение для работы с контактами, которое имеется на устройстве, можно в обход получить доступ
+к поставщику контактов. Намерение запускает пользовательский интерфейс приложения на устройстве, посредством которого пользователь
+может работать с контактами. Такой тип доступа позволяет пользователю выполнять следующие действия:
+    <ul>
+        <li>выбор контактов из списка и их возврат в приложение для дальнейшей работы;</li>
+        <li>изменение данных существующего контакта;</li>
+        <li>вставка нового необработанного контакта для любых других аккаунтов;</li>
+        <li>удаление контакта или его данных.</li>
+    </ul>
+<p>
+    Если пользователь вставляет или обновляет данные , вы можете сначала собрать эти данные, а затем отправить их вместе
+с намерением.
+</p>
+<p>
+    При использовании намерений для доступа к поставщику контактов посредством приложения для работы с контактами, имеющегося на устройстве, вам
+не нужно создавать собственный пользовательский интерфейс или код для доступа к поставщику. Также вам
+не нужно запрашивать разрешение на чтение или запись в поставщик. Приложение для работы с контактами, имеющееся на устройстве, может
+делегировать вам разрешение на чтение контакта, и поскольку вы вносите изменения
+в поставщик через другое приложение, вам не нужно разрешение на запись.
+</p>
+<p>
+    Более подробно общий процесс отправки намерения для получения доступа к поставщику описан в руководстве
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">Основные сведения о поставщике контента</a>
+в разделе «Доступ к данным посредством намерений». В таблице 4 ниже представлены сводные сведения об операциях,
+типе MIME и значениях данных, которые используются для доступных задач. Значения
+дополнительных данных, которые можно использовать для
+{@link android.content.Intent#putExtra(String, String) putExtra()}, указаны в справочной
+документации по {@link android.provider.ContactsContract.Intents.Insert}.
+</p>
+<p class="table-caption" id="table4">
+  <strong>Таблица 4.</strong> Намерения в поставщике контактов.
+</p>
+<table style="width:75%">
+    <tr>
+        <th scope="col" style="width:10%">Задача</th>
+        <th scope="col" style="width:5%">Действие</th>
+        <th scope="col" style="width:10%">Данные</th>
+        <th scope="col" style="width:10%">Тип MIME</th>
+        <th scope="col" style="width:25%">Примечания</th>
+    </tr>
+    <tr>
+        <td><strong>Выбор контакта из списка</strong></td>
+        <td>{@link android.content.Intent#ACTION_PICK}</td>
+        <td>
+            Одно из следующего:
+            <ul>
+                <li>
+{@link android.provider.ContactsContract.Contacts#CONTENT_URI Contacts.CONTENT_URI}
+(отображение списка контактов);
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Phone#CONTENT_URI Phone.CONTENT_URI}
+(отображение номеров телефонов для необработанного контакта);
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal#CONTENT_URI
+StructuredPostal.CONTENT_URI}
+(отображение списка почтовых адресов для необработанного контакта);
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_URI Email.CONTENT_URI}
+(отображение адресов эл. почты для необработанного контакта).
+                </li>
+            </ul>
+        </td>
+        <td>
+            Не используется
+        </td>
+        <td>
+            Отображение списка необработанных контактов или списка данных необработанного контакта (в зависимости от
+предоставленного URI контента).
+            <p>
+                Вызовите метод
+{@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()},
+который возвращает URI контента для выбранной строки. URI представлен в форме
+URI контента таблицы, к которому добавлен <code>LOOKUP_ID</code> строки.
+                Приложение для работы с контактами, установленное на устройстве, делегирует этому URI контента
+разрешения на чтение и запись, которые действуют в течение всего жизненного цикла вашей операции. Дополнительные сведения представлены в статье
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">Основные
+сведения о поставщике контента</a>.
+            </p>
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Вставка нового необработанного контакта</strong></td>
+        <td>{@link android.provider.ContactsContract.Intents.Insert#ACTION Insert.ACTION}</td>
+        <td>Н/Д</td>
+        <td>
+            {@link android.provider.ContactsContract.RawContacts#CONTENT_TYPE
+RawContacts.CONTENT_TYPE}, тип MIME для набора необработанных контактов.
+        </td>
+        <td>
+            Отображение экрана <strong>Добавить контакт</strong> в приложении для работы с контактами, которое установлено на устройстве. Отображаются
+значения дополнительных данных, добавленных вами в намерение. При отправке с помощью метода
+{@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()}
+URI контента нового добавленного необработанного контакта передается обратно в метод обратного вызова
+{@link android.app.Activity#onActivityResult(int, int, Intent) onActivityResult()}
+вашей операции в аргументе {@link android.content.Intent} в поле
+data. Чтобы получить значение, вызовите метод {@link android.content.Intent#getData()}.
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Изменение контакта</strong></td>
+        <td>{@link android.content.Intent#ACTION_EDIT}</td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI}
+контакта. Операция редактора разрешит пользователю изменить любые данные, связанные с
+этим контактом.
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE
+Contacts.CONTENT_ITEM_TYPE}, один контакт.</td>
+        <td>
+            Отображение экрана редактирования контакта в приложении для работы с контактами. Отображаются
+значения дополнительных данных, добавленных вами в намерение. Когда пользователь нажимает на кнопку <strong>Готово</strong> для сохранения
+внесенных изменений, ваша операция возвращается на передний план.
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Отображение средства выбора, в котором также можно добавлять данные</strong></td>
+        <td>{@link android.content.Intent#ACTION_INSERT_OR_EDIT}</td>
+        <td>
+            Н/Д
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE}
+        </td>
+         <td>
+            Это намерение также отображает экран средства выбора приложения для работы с контактами. Пользователь
+может выбрать контакт для изменения или добавить новый контакт. В зависимости от выбора отображается экран редактирования или добавления контакта,
+и отображаются дополнительные данные,
+переданные вами в намерение. Если ваше приложение отображает такие данные контакта, как адрес эл. почты или номер телефона,
+воспользуйтесь этим намерением, чтобы разрешить пользователю добавлять данные к существующему
+контакту.
+            <p class="note">
+                <strong>Примечание.</strong> Вам не нужно отправлять значение имени в дополнительные данные этого намерения,
+поскольку пользователь всегда выбирает существующее имя или добавляет новое. Кроме того,
+если отправить имя, а пользователь решит внести изменения, приложение для работы с контактами
+отобразит отправленное вами имя, перезаписав предыдущее значение. Если пользователь
+не заметит этого и сохранит изменения, старое значение будет утеряно.
+            </p>
+         </td>
+    </tr>
+</table>
+<p>
+    Приложение для работы с контактами, имеющееся на устройстве, не разрешает вам удалять необработанные контакты или любые его данные с
+помощью намерений. Вместо этого для обработки необработанного контакта используйте метод
+{@link android.content.ContentResolver#delete(Uri, String, String[]) ContentResolver.delete()}
+или {@link android.content.ContentProviderOperation#newDelete(Uri)
+ContentProviderOperation.newDelete()}.
+</p>
+<p>
+    Ниже представлен фрагмент кода для создания и отправки намерения, который вставляет новый
+необработанный контакт и его данные.
+</p>
+<pre>
+// Gets values from the UI
+String name = mContactNameEditText.getText().toString();
+String phone = mContactPhoneEditText.getText().toString();
+String email = mContactEmailEditText.getText().toString();
+
+String company = mCompanyName.getText().toString();
+String jobtitle = mJobTitle.getText().toString();
+
+// Creates a new intent for sending to the device's contacts application
+Intent insertIntent = new Intent(ContactsContract.Intents.Insert.ACTION);
+
+// Sets the MIME type to the one expected by the insertion activity
+insertIntent.setType(ContactsContract.RawContacts.CONTENT_TYPE);
+
+// Sets the new contact name
+insertIntent.putExtra(ContactsContract.Intents.Insert.NAME, name);
+
+// Sets the new company and job title
+insertIntent.putExtra(ContactsContract.Intents.Insert.COMPANY, company);
+insertIntent.putExtra(ContactsContract.Intents.Insert.JOB_TITLE, jobtitle);
+
+/*
+ * Demonstrates adding data rows as an array list associated with the DATA key
+ */
+
+// Defines an array list to contain the ContentValues objects for each row
+ArrayList&lt;ContentValues&gt; contactData = new ArrayList&lt;ContentValues&gt;();
+
+
+/*
+ * Defines the raw contact row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues rawContactRow = new ContentValues();
+
+// Adds the account type and name to the row
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType());
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+// Adds the row to the array
+contactData.add(rawContactRow);
+
+/*
+ * Sets up the phone number data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues phoneRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+phoneRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
+);
+
+// Adds the phone number and its type to the row
+phoneRow.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phone);
+
+// Adds the row to the array
+contactData.add(phoneRow);
+
+/*
+ * Sets up the email data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues emailRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+emailRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE
+);
+
+// Adds the email address and its type to the row
+emailRow.put(ContactsContract.CommonDataKinds.Email.ADDRESS, email);
+
+// Adds the row to the array
+contactData.add(emailRow);
+
+/*
+ * Adds the array to the intent's extras. It must be a parcelable object in order to
+ * travel between processes. The device's contacts app expects its key to be
+ * Intents.Insert.DATA
+ */
+insertIntent.putParcelableArrayListExtra(ContactsContract.Intents.Insert.DATA, contactData);
+
+// Send out the intent to start the device's contacts app in its add contact activity.
+startActivity(insertIntent);
+</pre>
+<h3 id="DataIntegrity">Целостность данных</h3>
+<p>
+    Поскольку в репозитории контактов содержится важная и конфиденциальная информация, которая, как ожидает пользователь, верна и
+актуальна, в поставщике контактов предусмотрены четко определенные правила для обеспечения целостности данных. При изменении данных контактов вы обязаны
+соблюдать эти правила. Вот наиболее
+важные из этих правил:
+</p>
+<dl>
+    <dt>
+        Всегда добавляйте строку {@link android.provider.ContactsContract.CommonDataKinds.StructuredName}
+к каждой добавляемой вами строке {@link android.provider.ContactsContract.RawContacts}.
+    </dt>
+    <dd>
+        Если в таблице {@link android.provider.ContactsContract.Data} имеется строка {@link android.provider.ContactsContract.RawContacts}
+без строки {@link android.provider.ContactsContract.CommonDataKinds.StructuredName},
+то могут возникнуть
+проблемы во время агрегирования.
+    </dd>
+    <dt>
+        Всегда связывайте новые строки {@link android.provider.ContactsContract.Data} с их
+родительскими строками {@link android.provider.ContactsContract.RawContacts}.
+    </dt>
+    <dd>
+        Строка {@link android.provider.ContactsContract.Data}, которая не связана
+с {@link android.provider.ContactsContract.RawContacts}, не будет отображаться в
+приложении для работы с контактами, имеющемся на устройстве, а также может привести к проблемам с адаптерами синхронизации.
+    </dd>
+    <dt>
+        Следует изменять данные только тех необработанных контактов, которыми вы владеете.
+    </dt>
+    <dd>
+        Помните о том, что поставщик контактов обычно управляет данными из
+нескольких аккаунтов различных типов или служб в Интернете. Необходимо убедиться в том, что ваше приложение изменяет
+или удаляет данные только для тех строк, которые принадлежат вам, а также в том, что оно вставляет данные с использованием только тех типов и имени аккаунта,
+которыми вы управляете.
+    </dd>
+    <dt>
+        Всегда используйте
+для центров, URI контента, путей URI, имен столбцов, типов MIME и значений
+{@link android.provider.ContactsContract.CommonDataKinds.CommonColumns#TYPE} только те константы, которые определены в классе {@link android.provider.ContactsContract} и его подклассах.
+    </dt>
+    <dd>
+        Это позволит избежать ошибок. Если какая либо константа устарела, компилятор сообщит об этом
+с помощью соответствующего предупреждения.
+    </dd>
+</dl>
+<h3 id="CustomData">Настраиваемые строки данных</h3>
+<p>
+    Создав и используя собственные типы MIME, вы можете вставлять, изменять, удалять и извлекать
+в таблице{@link android.provider.ContactsContract.Data} собственные строки данных. Ваши строки
+ограничены использованием столбца, который определен в
+{@link android.provider.ContactsContract.DataColumns}, однако вы можете сопоставить ваши собственные имена столбцов по типам строк
+с именами столбцов по умолчанию. Данные для ваших строк отображаются в приложении для работы с контактами, которое имеется на устройстве,
+однако их не удастся изменить или удалить, а также пользователи не смогут
+добавить дополнительные данные. Чтобы разрешить пользователям изменять ваши настраиваемые строки данных, необходимо реализовать в вашем приложении операцию
+редактора.
+</p>
+<p>
+    Для отображения настраиваемых данных укажите файл <code>contacts.xml</code>, содержащий элемент
+<code>&lt;ContactsAccountType&gt;</code> и один или несколько его
+<code>&lt;ContactsDataKind&gt;</code> дочерних элементов. Дополнительные сведения об этом представлены в разделе
+<a href="#SocialStreamDataKind"><code>&lt;ContactsDataKind&gt; element</code></a>.
+</p>
+<p>
+    Дополнительные сведения о настраиваемых типах MIME представлены в руководстве
+<a href="{@docRoot}guide/topics/providers/content-provider-creating.html">Создание
+поставщика контента</a>.
+</p>
+<h2 id="SyncAdapters">Адаптеры синхронизации поставщика контактов</h2>
+<p>
+    Поставщик контактов разработан специально для обработки операций <strong>синхронизации</strong>
+данных контактов между устройством и службой в Интернете. Благодаря этому пользователи
+могут загружать существующие данные на новое устройство и отправлять их в новый аккаунт.
+    Синхронизация также обеспечивает предоставление пользователю всегда актуальных сведений, независимо от
+источника их добавления и внесенных в них изменений. Еще одно преимущество синхронизации заключается в том,
+что данные контактов доступны даже в том случае, если устройство не подключено к сети.
+</p>
+<p>
+    Несмотря на множество различных способов реализации синхронизации данных, в системе Android имеется
+подключаемая платформа синхронизации, которая позволяет автоматизировать выполнение следующих задач:
+    <ul>
+
+    <li>
+        проверка доступности сети;
+    </li>
+    <li>
+        планирование и выполнение синхронизации на основе предпочтений пользователя;
+    </li>
+    <li>
+        перезапуск остановленных процессов синхронизации.
+    </li>
+    </ul>
+<p>
+    Для использования этой платформы вы предоставляете подключаемый модуль адаптера синхронизации. Каждый адаптер синхронизации является уникальным
+для службы и поставщика контента, однако способен работать с несколькими аккаунтами в одной службе. В платформе
+также предусмотрена возможность использовать несколько адаптеров синхронизации для одной и той же службы или поставщика.
+</p>
+<h3 id="SyncClassesFiles">Классы и файлы адаптера синхронизации</h3>
+<p>
+    Адаптер синхронизации реализуется как подкласс класса
+{@link android.content.AbstractThreadedSyncAdapter} и устанавливается в составе приложения
+Android. Система узнает о наличии адаптера синхронизации из элементов в манифесте
+вашего приложения, а также из особого файла XML, на который имеется указание в манифесте. В файле XML определяются
+тип аккаунта в онлайн-службе и центр поставщика контента, которые вместе служат уникальными
+идентификаторами адаптера. Адаптер синхронизации находится в неактивном состоянии до тех пор, пока пользователь не добавит
+тип аккаунта и не включит синхронизацию
+с поставщиком контента.  На этом этапе система вступает в управление адаптером
+, при необходимости вызывая его для синхронизации данных между поставщиком контента и сервером.
+</p>
+<p class="note">
+    <strong>Примечание.</strong> Использование типа аккаунта для идентификации адаптера синхронизации
+позволяет системе обнаруживать и группировать адаптеры синхронизации, которые обращаются к разным службам
+из одной и той же организации. Например, у всех адаптеров синхронизации для онлайн-служб Google
+один и тот же тип аккаунта — <code>com.google</code>. Когда пользователи добавляют на свои устройства аккаунт Google, все
+установленные адаптеры синхронизации группируются вместе; каждый из адаптеров
+синхронизируется только с отдельным поставщиком контента на устройстве.
+</p>
+<p>
+    Поскольку в большинстве служб пользователям сначала необходимо подтвердить свою подлинность, прежде чем они смогут получить доступ к данным,
+система Android предлагает платформу аутентификации, которая аналогична
+платформе адаптера синхронизации и зачастую используется совместно с ней. Платформа аутентификации
+использует подключаемые структуры проверки подлинности, которые представляют собой подклассы класса
+{@link android.accounts.AbstractAccountAuthenticator}. Такая структура проверяет
+подлинность пользователя следующим образом:
+    <ol>
+        <li>
+            Сначала собираются сведения об имени пользователя и его пароле или аналогичная информация (<strong>учетные данные</strong>
+пользователя).
+        </li>
+        <li>
+            Затем учетные данные оправляются в службу.
+        </li>
+        <li>
+            Наконец, изучается ответ, полученный от службы.
+        </li>
+    </ol>
+<p>
+    Если служба приняла учетные данные, структура проверки подлинности может
+сохранить их для использования в дальнейшем. Благодаря использованию структур проверки подлинности
+{@link android.accounts.AccountManager} может предоставить доступ к любым маркерам аутентификации, которые
+поддерживает структура проверки подлинности и которые она решает предоставить, например, к маркерам аутентификации OAuth2.
+</p>
+<p>
+    Несмотря на то что аутентификация не требуется, она используется большинством служб для работы с контактами.
+    Тем не менее, вам не обязательно использовать платформу аутентификации Android для проверки подлинности.
+</p>
+<h3 id="SyncAdapterImplementing">Реализация адаптера синхронизации</h3>
+<p>
+    Чтобы реализовать адаптер синхронизации для поставщика контактов, начните с создания
+приложения Android, которое содержит следующие компоненты.
+</p>
+    <dl>
+        <dt>
+            Компонент {@link android.app.Service}, который отвечает на запросы системы
+для привязки к адаптеру синхронизации.
+        </dt>
+        <dd>
+            Когда системе требуется запустить синхронизацию, она вызывает метод
+{@link android.app.Service#onBind(Intent) onBind()} службы, чтобы получить объект
+{@link android.os.IBinder} для адаптера синхронизации. Благодаря этому система
+может вызывать методы адаптера между процессами.
+            <p>
+                В
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">примере адаптера синхронизации</a> именем класса этой службы является
+<code>com.example.android.samplesync.syncadapter.SyncService</code>.
+            </p>
+        </dd>
+        <dt>
+            Адаптер синхронизации, фактически реализованный как конкретный подкласс
+класса {@link android.content.AbstractThreadedSyncAdapter}.
+        </dt>
+        <dd>
+            Этот класс не подходит для загрузки данных с сервера, отправки данных
+с устройства и разрешения конфликтов. Основную свою работу адаптер
+выполняет в методе {@link android.content.AbstractThreadedSyncAdapter#onPerformSync(
+Account, Bundle, String, ContentProviderClient, SyncResult)
+onPerformSync()}. Этот класс допускает создание только одного экземпляра.
+            <p>
+                В
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">примере адаптера синхронизации</a> адаптер определяется в классе
+<code>com.example.android.samplesync.syncadapter.SyncAdapter</code>.
+            </p>
+        </dd>
+        <dt>
+            Подкласс класса {@link android.app.Application}.
+        </dt>
+        <dd>
+            Этот класс выступает в роли фабрики для единственного экземпляра адаптера синхронизации. Воспользуйтесь методом
+{@link android.app.Application#onCreate()}, чтобы создать экземпляр адаптера синхронизации, а затем
+предоставьте статический метод get, чтобы возвратить единственный экземпляр в метод
+{@link android.app.Service#onBind(Intent) onBind()} службы
+адаптера синхронизации.
+        </dd>
+        <dt>
+            <strong>Необязательно:</strong> компонент {@link android.app.Service}, который отвечает на запросы
+системы для аутентификации пользователей.
+        </dt>
+        <dd>
+            {@link android.accounts.AccountManager} запускает службу, чтобы начать процесс
+аутентификации. Метод {@link android.app.Service#onCreate()} службы создает экземпляр
+объекта структуры проверки подлинности. Когда системе требуется запустить аутентификацию аккаунта пользователя для
+адаптера синхронизации приложения, она вызывает метод
+{@link android.app.Service#onBind(Intent) onBind()} службы, чтобы получить объект
+{@link android.os.IBinder} для структуры проверки подлинности. Благодаря этому система
+может вызывать методы структуры проверки подлинности между процессами.
+            <p>
+                В
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">примере адаптера синхронизации</a> именем класса этой службы является
+<code>com.example.android.samplesync.authenticator.AuthenticationService</code>.
+            </p>
+        </dd>
+        <dt>
+            <strong>Необязательно:</strong> конкретный подкласс класса
+{@link android.accounts.AbstractAccountAuthenticator}, который обрабатывает запросы на
+аутентификацию.
+        </dt>
+        <dd>
+            В этом классе имеются методы, которые {@link android.accounts.AccountManager} вызывает
+для проверки подлинности учетных данных пользователя на сервере. Подробности процесса
+аутентификации значительно различаются в зависимости от технологии, используемой на сервере. Чтобы узнать подробнее об аутентификации,
+обратитесь к соответствующей документации к программному обеспечению используемого сервера.
+            <p>
+                В
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">примере адаптера синхронизации</a> структура проверки подлинности определяется в классе
+<code>com.example.android.samplesync.authenticator.Authenticator</code>.
+            </p>
+        </dd>
+        <dt>
+            Файлы XML, в которых определяются адаптер синхронизация и структура проверки подлинности для системы.
+        </dt>
+        <dd>
+            Описанные ранее компоненты службы адаптера синхронизации и структуры проверки подлинности определяются
+в элементах
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/service-element.html">service</a>&gt;</code>
+в манифесте приложения. Эти элементы
+включают дочерние элементы
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+, в которых имеются определенные данные для
+системы.
+            <ul>
+                <li>
+                    Элемент
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+для службы адаптера синхронизации указывает на файл
+XML <code>res/xml/syncadapter.xml</code>. В свою очередь, в этом файле задается
+URI веб-службы для синхронизации с поставщиком контактов,
+а также тип аккаунта для этой веб-службы.
+                </li>
+                <li>
+                    <strong>Необязательно:</strong> элемент
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+для структуры проверки подлинности указывает на файл XML 
+<code>res/xml/authenticator.xml</code>. В свою очередь, в этом файле задается
+тип аккаунта, который поддерживает структура проверки подлинности, а также ресурсы пользовательского интерфейса,
+которые отображаются в процессе аутентификации. Тип аккаунта, указанный в этом
+элементе, должен совпадать с типом аккаунта, который задан для
+адаптера синхронизации.
+                </li>
+            </ul>
+        </dd>
+    </dl>
+<h2 id="SocialStream">Потоки данных из социальных сетей</h2>
+<p>
+    Для управления входящими данными из социальных сетей используются таблицы {@code android.provider.ContactsContract.StreamItems}
+и
+{@code android.provider.ContactsContract.StreamItemPhotos}. Можно создать адаптер синхронизации, который добавляет поток данных
+из вашей собственной сети в эти таблицы, либо вы можете считывать поток данных из этих таблиц и отображать
+их в собственном приложении. Можно также реализовать оба этих способа. С помощью этих функций вы можете интегрировать службы социальных сетей
+в компоненты Android для работы с социальными сетями.
+</p>
+<h3 id="StreamText">Текст из потока данных из социальных сетей</h3>
+<p>
+    Элементы потока всегда ассоциируются с необработанным контактом. Идентификатор
+{@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID} связывается со значением
+<code>_ID</code> необработанного контакта. Тип аккаунта и его имя для необработанного
+контакта также хранятся в строке элемента потока.
+</p>
+<p>
+    Данные из потока следует хранить в следующих столбцах:
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_TYPE}
+    </dt>
+    <dd>
+        <strong>Обязательный.</strong> Тип аккаунта пользователя для необработанного контакта, связанного с
+этим элементом потока. Не забудьте задать это значение при вставке элемента потока.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_NAME}
+    </dt>
+    <dd>
+        <strong>Обязательный.</strong> Имя аккаунта пользователя для необработанного контакта, связанного с
+этим элементом потока. Не забудьте задать это значение при вставке элемента потока.
+    </dd>
+    <dt>
+        Столбцы идентификатора
+    </dt>
+    <dd>
+        <strong>Обязательный.</strong> При вставке элемента потока необходимо вставить
+указанные ниже столбцы идентификатора.
+        <ul>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_ID}: значение
+{@code android.provider.BaseColumns#_ID} для контакта, с которым ассоциирован
+этот элемент потока.
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_LOOKUP_KEY}: значение
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} для контакта, с которым ассоциирован
+этот элемент потока.
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID}: значение
+{@code android.provider.BaseColumns#_ID} для необработанного контакта, с которым ассоциирован
+этот элемент потока.
+            </li>
+        </ul>
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#COMMENTS}
+    </dt>
+    <dd>
+        Необязательный. В нем хранится сводная информация, которую можно отобразить в начале элемента потока.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TEXT}
+    </dt>
+    <dd>
+        Текст элемента потока: либо контент, опубликованный источником элемента,
+либо описание некоторого действия, сгенерировавшего элемент потока. В этом столбце могут содержаться
+любое форматирование и встроенные изображения ресурсов, рендеринг которых можно выполнить с помощью метода
+{@link android.text.Html#fromHtml(String) fromHtml()}. Поставщик может обрезать слишком длинный контент
+или заменить его часть многоточием, однако он попытается избежать нарушения тегов.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}
+    </dt>
+    <dd>
+        Текстовая строка с информацией о времени вставки или обновления элемента в
+<em>миллисекундах</em> от начала отсчета времени. Обслуживанием этого столбца занимаются приложения, которые вставляют или
+обновляют элементы потока; поставщик контактов не выполняет
+это автоматически.
+    </dd>
+</dl>
+<p>
+    Для отображения идентификационной информации для элементов потока воспользуйтесь
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_ICON},
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_LABEL} и
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_PACKAGE} для связывания с ресурсами
+в вашем приложении.
+</p>
+<p>
+    В таблице {@code android.provider.ContactsContract.StreamItems} также имеются столбцы
+{@code android.provider.ContactsContract.StreamItemsColumns#SYNC1}—{@code android.provider.ContactsContract.StreamItemsColumns#SYNC4},
+которые предназначены исключительно для
+адаптеров синхронизации.
+</p>
+<h3 id="StreamPhotos">Фотографии из потока данных из социальных сетей</h3>
+<p>
+   Фотографии, связанные с элементом потока, хранятся в таблице
+{@code android.provider.ContactsContract.StreamItemPhotos}. Столбец
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#STREAM_ITEM_ID}
+в этой таблице связан со столбцом {@code android.provider.BaseColumns#_ID}
+в таблице {@code android.provider.ContactsContract.StreamItems}. Ссылки на фотографии хранятся в следующих столбцах
+таблицы:
+</p>
+<dl>
+    <dt>
+        Столбец {@code android.provider.ContactsContract.StreamItemPhotos#PHOTO} (объект BLOB).
+    </dt>
+    <dd>
+        Представление фотографии в двоичном формате и с измененным поставщиком размером для ее хранения и отображения.
+        Этот столбец доступен для обеспечения обратной совместимости с предыдущими версиями поставщика
+контактов, которые использовались для хранения фотографий. Однако в текущей версии
+поставщика мы не рекомендуем использовать этот столбец для хранения фотографий. Вместо этого воспользуйтесь столбцом
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID} или
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI} (или обоими
+столбцами, как описано далее) для хранения фотографий в файле. В этом
+столбце теперь хранятся миниатюры фотографий, доступных для чтения.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID}
+    </dt>
+    <dd>
+        Числовой идентификатор фотографии для необработанного контакта. Добавьте это значение к константе
+{@link android.provider.ContactsContract.DisplayPhoto#CONTENT_URI DisplayPhoto.CONTENT_URI},
+чтобы получить URI контента для одного файла фотографии, а затем вызовите метод
+{@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+openAssetFileDescriptor()}, чтобы получить средство обработки файла фотографии.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}
+    </dt>
+    <dd>
+        URI контента, указывающий на файл фотографии, для фотографии, которая представлена этой строкой.
+        Вызовите метод {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+openAssetFileDescriptor()}, передав в него этот URI, чтобы получить средство обработки файла фотографии.
+    </dd>
+</dl>
+<h3 id="SocialStreamTables">Использование таблиц из потока данных из социальных сетей</h3>
+<p>
+    Эти таблицы работают аналогично другим основным таблицам в поставщике контактов, за исключением указанных ниже моментов.
+</p>
+    <ul>
+        <li>
+            Для работы с этими таблицами требуются дополнительные разрешения на доступ. Для чтения данных из них вашему приложению
+должно быть предоставлено разрешение {@code android.Manifest.permission#READ_SOCIAL_STREAM}. Для
+изменения таблиц ваше приложение должно иметь разрешение
+{@code android.Manifest.permission#WRITE_SOCIAL_STREAM}.
+        </li>
+        <li>
+            Для таблицы {@code android.provider.ContactsContract.StreamItems} существует ограничение на количество строк,
+которое можно хранить для каждого необработанного контакта. При достижении этого ограничения
+поставщик контактов освобождает место для новых строк элементов потока путем автоматического удаления
+строк со самой старой меткой
+{@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}. Чтобы получить это ограничение,
+запросите URI контента
+{@code android.provider.ContactsContract.StreamItems#CONTENT_LIMIT_URI}. Для всех аргументов,
+отличных от URI контента, можно оставить значение <code>null</code>. Запрос возвращает
+объект Cursor, в котором содержится одна строка с одним столбцом
+{@code android.provider.ContactsContract.StreamItems#MAX_ITEMS}.
+        </li>
+    </ul>
+
+<p>
+    Класс {@code android.provider.ContactsContract.StreamItems.StreamItemPhotos} определяет
+дочернюю таблицу объектов {@code android.provider.ContactsContract.StreamItemPhotos}, в которой содержатся
+строки для одного элемента потока.
+</p>
+<h3 id="SocialStreamInteraction">Взаимодействие с потоками данных из социальных сетей</h3>
+<p>
+    Управление потоком данных из социальных сетей осуществляется поставщиком контактов совместно с приложением для управления контактами, имеющимся на устройстве.
+Такой подход позволяет организовать эффективное использование данных из социальных сетей
+с данными о существующих контактах. Доступны указанные ниже функции.
+</p>
+    <ul>
+        <li>
+            Организовав синхронизацию данных из социальной службы с поставщиком контактов посредством
+адаптера синхронизации, вы можете получать данные о недавней активности контактов пользователя и хранить такие данные в таблицах
+,{@code android.provider.ContactsContract.StreamItems}
+и {@code android.provider.ContactsContract.StreamItemPhotos} для использования в дальнейшем.
+        </li>
+        <li>
+            Помимо регулярной синхронизации, адаптер синхронизации можно настроить на получение
+дополнительных данных при выборе пользователем контакта для просмотра. Благодаря этому ваш адаптер синхронизации
+может получать фотографии высокого разрешения и самые актуальные элементы потока для контакта.
+        </li>
+        <li>
+            Регистрируя уведомление в приложении для работы с контактами и в поставщике
+контактов, вы можете<em>получать</em> намерения при просмотре контакта и обновлять на этом этапе
+данные о состоянии контакта из вашей службы. Такой подход может обеспечить большее быстродействие и меньший объем
+использования полосы пропускания, чем выполнение полной синхронизации с помощью адаптера синхронизации.
+        </li>
+        <li>
+            Пользователи могут добавить контакт в вашу службу социальной сети, обратившись к контакту
+в приложении для работы с контактами, которое имеется на устройстве. Это реализуется с помощью функции «пригласить контакт»,
+для включения которой используется сочетание операции,
+которая добавляет существующий контакт в вашу сеть, и файла XML, в котором представлены сведения о вашем приложении для поставщика контактов и приложения для работы с
+контактами.
+        </li>
+    </ul>
+<p>
+    Регулярная синхронизация элементов потока с помощью поставщика контактов выполняется так же,
+как и любая другая синхронизация. Дополнительные сведения о синхронизации представлены в разделе 
+<a href="#SyncAdapters">Адаптеры синхронизации поставщика контактов</a>. Регистрация уведомлений
+и приглашение контактов рассматриваются в следующих двух разделах.
+</p>
+<h4>Регистрация для обработки просмотров контактов в социальных сетях</h4>
+<p>
+    Чтобы зарегистрировать адаптер синхронизации для получения уведомлений о просмотрах пользователями контакта,
+управление которым осуществляется вашим адаптером синхронизации, выполните указанные ниже действия.
+</p>
+<ol>
+    <li>
+        В каталоге <code>res/xml/</code> своего проекта создайте файл
+<code>contacts.xml</code>. Если у вас уже есть этот файл, переходите к следующему действию.
+    </li>
+    <li>
+        В этом файле добавьте элемент
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Если этот элемент уже существует, можете переходить к следующему действию.
+    </li>
+    <li>
+        Чтобы зарегистрировать службу, которой отправляется уведомление при открытии пользователем страницы со сведениями о контакте
+в приложении для работы с контактами, которое имеется на устройстве, добавьте атрибут
+<code>viewContactNotifyService="<em>serviceclass</em>"</code> к элементу, где
+<code><em>serviceclass</em></code> — это полное имя класса службы,
+которая должна получить намерение из приложения для работы с контактами. Для службы-уведомителя
+используйте класс, который является расширением класса {@link android.app.IntentService}, чтобы разрешить службе
+получать намерения. Данные во входящем намерении содержат URI контента необработанного
+контакта, выбранного пользователем. В службе-уведомителе можно привязать адаптер синхронизации, а затем вызвать его
+для обновления данных для необработанного контакта.
+    </li>
+</ol>
+<p>
+    Чтобы зарегистрировать операцию, которую следует вызвать при выборе пользователем элемента потока или фотографии (или обоих элементов), выполните указанные ниже действия.
+</p>
+<ol>
+    <li>
+        В каталоге <code>res/xml/</code> своего проекта создайте файл
+<code>contacts.xml</code>. Если у вас уже есть этот файл, переходите к следующему действию.
+    </li>
+    <li>
+        В этом файле добавьте элемент
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Если этот элемент уже существует, можете переходить к следующему действию.
+    </li>
+    <li>
+        Чтобы зарегистрировать одну из ваших операций для обработки выбора пользователем элемента потока
+в приложении для работы с контактами, которое имеется на устройстве, добавьте атрибут
+<code>viewStreamItemActivity="<em>activityclass</em>"</code> к элементу, где
+<code><em>activityclass</em></code> — это полное имя класса операции,
+которая должна получить намерение из приложения для работы с контактами.
+    </li>
+    <li>
+        Чтобы зарегистрировать одну из ваших операций для обработки выбора пользователем фотографии в потоке
+в приложении для работы с контактами, которое имеется на устройстве, добавьте атрибут
+<code>viewStreamItemPhotoActivity="<em>activityclass</em>"</code> к элементу, где
+<code><em>activityclass</em></code> — это полное имя класса операции,
+которая должна получить намерение из приложения для работы с контактами.
+    </li>
+</ol>
+<p>
+    Дополнительные сведения об элементе <code>&lt;ContactsAccountType&gt;</code> представлены в разделе
+<a href="#SocialStreamAcctType">элемент &lt;ContactsAccountType&gt;</a>.
+</p>
+<p>
+    Данные во входящем намерении содержат URI контента элемента или фотографии, выбранных пользователем.
+    Чтобы использовать разные операции для текстовых элементов и фотографий, используйте оба атрибута в одном файле.
+</p>
+<h4>Взаимодействие со службой социальной сети</h4>
+<p>
+    Пользователям не обязательно выходить из приложения для работы с контактами, которое имеется на устройстве, чтобы пригласить контакт на сайт
+социальной сети. Вместо этого приложение для работы с контактами может отправить намерение для приглашения 
+контакта в одну из ваших операций. Для этого выполните указанные ниже действия.
+</p>
+<ol>
+    <li>
+        В каталоге <code>res/xml/</code> своего проекта создайте файл
+<code>contacts.xml</code>. Если у вас уже есть этот файл, переходите к следующему действию.
+    </li>
+    <li>
+        В этом файле добавьте элемент
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Если этот элемент уже существует, можете переходить к следующему действию.
+    </li>
+    <li>
+        Добавьте следующие атрибуты:
+        <ul>
+            <li><code>inviteContactActivity="<em>activityclass</em>"</code>;</li>
+            <li>
+                <code>inviteContactActionLabel="&#64;string/<em>invite_action_label</em>"</code>.
+            </li>
+        </ul>
+        Значение <code><em>activityclass</em></code> представляет собой полное имя класса операции,
+которая должна получить намерение. Значение<code><em>invite_action_label</em></code>
+— это текстовая строка, которая отображается в меню <strong>Добавить подключение</strong>
+в приложении для работы с контактами.
+    </li>
+</ol>
+<p class="note">
+    <strong>Примечание.</strong> <code>ContactsSource</code> — это устаревшее имя тега для
+<code>ContactsAccountType</code>, которое больше не используется.
+</p>
+<h3 id="ContactsFile">Ссылка contacts.xml</h3>
+<p>
+    В файле <code>contacts.xml</code> содержатся элементы XML, которые управляют взаимодействием вашего
+адаптера синхронизации и вашего приложения с поставщиком контактов и приложением для работы с контактами. Эти
+элементы описаны в следующих разделах.
+</p>
+<h4 id="SocialStreamAcctType">Элемент &lt;ContactsAccountType&gt;</h4>
+<p>
+    Элемент <code>&lt;ContactsAccountType&gt;</code> управляет взаимодействием вашего
+приложения с приложением для работы с контактами. Ниже представлен его синтаксис.
+</p>
+<pre>
+&lt;ContactsAccountType
+        xmlns:android="http://schemas.android.com/apk/res/android"
+        inviteContactActivity="<em>activity_name</em>"
+        inviteContactActionLabel="<em>invite_command_text</em>"
+        viewContactNotifyService="<em>view_notify_service</em>"
+        viewGroupActivity="<em>group_view_activity</em>"
+        viewGroupActionLabel="<em>group_action_text</em>"
+        viewStreamItemActivity="<em>viewstream_activity_name</em>"
+        viewStreamItemPhotoActivity="<em>viewphotostream_activity_name</em>"&gt;
+</pre>
+<p>
+    <strong>находится в:</strong>
+</p>
+<p>
+    <code>res/xml/contacts.xml</code>
+</p>
+<p>
+    <strong>может содержать:</strong>
+</p>
+<p>
+    <strong><code>&lt;ContactsDataKind&gt;</code></strong>
+</p>
+<p>
+    <strong>Описание</strong>
+</p>
+<p>
+    Этот элемент объявляет компоненты и элементы пользовательского интерфейса, с помощью которых пользователи могут приглашать свои контакты
+в социальную сеть, уведомлять пользователей при обновлении одного из их потоков данных из социальных сетей и
+др.
+</p>
+<p>
+    Обратите внимание, что префикс атрибута <code>android:</code> необязательно использовать для атрибутов
+<code>&lt;ContactsAccountType&gt;</code>.
+</p>
+<p>
+    <strong>Атрибуты</strong>
+</p>
+<dl>
+    <dt>{@code inviteContactActivity}</dt>
+    <dd>
+        Полное имя класса операции в вашем приложении, которую необходимо активировать
+при выборе пользователем элемента <strong>Добавить подключение</strong> в приложении
+для работы с контактами, которое имеется на устройстве.
+    </dd>
+    <dt>{@code inviteContactActionLabel}</dt>
+    <dd>
+        Текстовая строка, которая отображается для операции, заданной в
+{@code inviteContactActivity}, в меню <strong>Добавить подключение</strong>.
+        Например, можно указать фразу «Следите за новостями в моей сети». Для этого элемента можно использовать
+идентификатор строкового ресурса.
+    </dd>
+    <dt>{@code viewContactNotifyService}</dt>
+    <dd>
+        Полное имя класса службы в вашем приложении, которая должна получать
+уведомления при просмотре контакта пользователем. Такое уведомление отправляется приложением для работы с контактами,
+которое имеется на устройстве; благодаря этому ваше приложение может отложить выполнение операций, требующих обработки большого объема данных, до тех пор
+, пока это не потребуется. Например, ваше приложение может реагировать на такое уведомление
+путем считывания и отображения фотографии контакта в высоком разрешении и самых актуальных
+элементов потока данных из социальной сети. Дополнительные сведения об этой функции представлены в разделе
+<a href="#SocialStreamInteraction">Взаимодействие с потоками данных из социальных сетей</a>. Пример
+службы уведомлений представлен в файле
+<code>NotifierService.java</code> в
+образце приложения<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a>.
+    </dd>
+    <dt>{@code viewGroupActivity}</dt>
+    <dd>
+        Полное имя класса операции в вашем приложении, которая может отобразить
+информацию о группе. При нажатии пользователем на метку группы в приложении для работы с данными,
+которое имеется на устройстве, отображается пользовательский интерфейс для этой операции.
+    </dd>
+    <dt>{@code viewGroupActionLabel}</dt>
+    <dd>
+        Метка, отображаемая приложением для работы с контактами для элемента пользовательского интерфейса, с помощью которой
+пользователь может просмотреть группы в вашем приложении.
+        <p>
+            Например, если вы установили приложение Google+ на ваше устройство и выполняете синхронизацию
+данных в Google+ с приложением для работы с контактами, то круги Google+ будут обозначены в приложении для работы с контактами как
+группы на вкладке <strong>Группы</strong>. При нажатии на на круг
+Google+ участники крга отобразятся как группа контактов. В верхней части экрана
+находится значок Google+; если нажать на него, управление перейдет в приложение
+Google+. В приложении для управления контактами это реализовано с помощью
+{@code viewGroupActivity}, в которой значок Google+ используется в качестве значения
+{@code viewGroupActionLabel}.
+        </p>
+        <p>
+            Для этого атрибута можно использовать идентификатор строкового ресурса.
+        </p>
+    </dd>
+    <dt>{@code viewStreamItemActivity}</dt>
+    <dd>
+        Полное имя класса операции в вашем приложении, которую запускает
+приложение для работы с контактами, когда пользователь выбирает элемент потока для необработанного контакта.
+    </dd>
+    <dt>{@code viewStreamItemPhotoActivity}</dt>
+    <dd>
+        Полное имя класса операции в вашем приложении, которую запускает
+приложение для работы с контактами, когда пользователь выбирает фотографию в элементе
+потока для необработанного контакта.
+    </dd>
+</dl>
+<h4 id="SocialStreamDataKind">Элемент &lt;ContactsDataKind&gt;</h4>
+<p>
+    Элемент <code>&lt;ContactsDataKind&gt;</code> управляет отображением настраиваемых строк данных вашего
+приложения в интерфейсе приложения для работы с контактами, которое имеется на устройстве. Ниже представлен его синтаксис.
+</p>
+<pre>
+&lt;ContactsDataKind
+        android:mimeType="<em>MIMEtype</em>"
+        android:icon="<em>icon_resources</em>"
+        android:summaryColumn="<em>column_name</em>"
+        android:detailColumn="<em>column_name</em>"&gt;
+</pre>
+<p>
+    <strong>находится в:</strong>
+</p>
+<code>&lt;ContactsAccountType&gt;</code>
+<p>
+    <strong>Описание</strong>
+</p>
+<p>
+    Используйте этот элемент для отображения содержимого настраиваемой строки данных в приложении для работы с контактами как части
+сведений о необработанном контакте. Каждый дочерний элемент <code>&lt;ContactsDataKind&gt;</code>
+элемента <code>&lt;ContactsAccountType&gt;</code> представляет собой тип настраиваемой строки данных, который
+адаптер синхронизации добавляет в таблицу {@link android.provider.ContactsContract.Data}. Для каждого используемого вами настраиваемого типа MIME необходимо добавить один элемент
+<code>&lt;ContactsDataKind&gt;</code>. Вам не нужно добавлять элемент
+, если у вас имеется настраиваемая строка данных, для которой не требуется отображать данные.
+</p>
+<p>
+    <strong>Атрибуты</strong>
+</p>
+<dl>
+    <dt>{@code android:mimeType}</dt>
+    <dd>
+        Определенные вами настраиваемые типы MIME для одного из ваших типов настраиваемых строк данных в таблице
+{@link android.provider.ContactsContract.Data}. Например, значение
+<code>vnd.android.cursor.item/vnd.example.locationstatus</code> может быть настраиваемым
+типом MIME для строки данных, в которой находятся записи о последнем известном местоположении контакта.
+    </dd>
+    <dt>{@code android:icon}</dt>
+    <dd>
+        <a href="{@docRoot}guide/topics/resources/drawable-resource.html">Графический ресурс </a>
+Android,
+который приложение для работы с контактами отображает рядом с вашими данными. Используйте его для обозначения того,
+что эти данные получены из вашей службы.
+    </dd>
+    <dt>{@code android:summaryColumn}</dt>
+    <dd>
+        Имя столбца для первого из двух значений, полученных из строки данных. Значение
+отображается в виде первой строки записи в этой строке данных. Первая строка
+предназначена для использования в качестве сводных данных, однако она необязательна. См. также
+<a href="#detailColumn">android:detailColumn</a>.
+    </dd>
+    <dt>{@code android:detailColumn}</dt>
+    <dd>
+        Имя столбца для второго из двух значений, полученных из строки данных. Значение
+отображается в виде второй строки записи в этой строке данных. См. также
+{@code android:summaryColumn}.
+    </dd>
+</dl>
+<h2 id="AdditionalFeatures">Дополнительные возможности поставщика контактов</h2>
+<p>
+    Помимо основных функций, описанных разделах выше, в поставщике
+контактов предусмотрены указанные ниже полезные функции для работы с данными контактов.
+</p>
+    <ul>
+       <li>Группы контактов</li>
+       <li>Функции работы с фотографиями</li>
+    </ul>
+<h3 id="Groups">Группы контактов</h3>
+<p>
+    Поставщик контактов может дополнительно отметить коллекции связанных контактов с данными о
+<strong>группе</strong>. Если серверу, который связан с учетной записью пользователя,
+требуется сохранить группы, адаптеру синхронизации для типа этого аккаунта следует передать
+данные о группах из поставщика контактов на сервер. При добавлении пользователем нового контакта на сервер
+и последующем помещении этого контакта в новую группу адаптер синхронизации должен добавить эту новую группу в таблицу
+{@link android.provider.ContactsContract.Groups}. Группа или группы, в которые входит необработанный контакт,
+хранятся в таблице {@link android.provider.ContactsContract.Data} с использованием типа MIME
+{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}.
+</p>
+<p>
+    Если необходимо создать адаптер синхронизации, который будет добавлять данные необработанного контакта с сервера
+в поставщик контактов, а вы не используете группы, то вам необходимо указать для поставщика,
+чтобы он сделал ваши данные видимыми. В коде, который выполняется при добавлении пользователем
+аккаунта на устройство, обновите строку {@link android.provider.ContactsContract.Settings},
+которую поставщик контактов добавляет для этого аккаунта. В этой строке укажите в столбце
+{@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE
+Settings.UNGROUPED_VISIBLE} значение «1». После этого поставщик контактов всегда будет
+делать ваши данные видимыми, даже если вы не используете группы.
+</p>
+<h3 id="Photos">Фотографии контактов</h3>
+<p>
+    В таблице {@link android.provider.ContactsContract.Data} хранятся фотографии в виде строк
+{@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+Photo.CONTENT_ITEM_TYPE} типа MIME. Столбец
+{@link android.provider.ContactsContract.RawContactsColumns#CONTACT_ID} в строке связан со столбцом
+{@code android.provider.BaseColumns#_ID} необработанного контакта, которому он принадлежит.
+    Класс {@link android.provider.ContactsContract.Contacts.Photo} определяет вложенную таблицу
+{@link android.provider.ContactsContract.Contacts}, в которой содержится информация об основной фотографии
+контакта (которая является основной фотографией основного необработанного контакта этого контакта). Аналогичным образом класс
+{@link android.provider.ContactsContract.RawContacts.DisplayPhoto} определяет вложенную таблицу
+{@link android.provider.ContactsContract.RawContacts}, в которой содержится информация об основной фотографии
+необработанного контакта.
+</p>
+<p>
+    В справочной документации по {@link android.provider.ContactsContract.Contacts.Photo} и
+{@link android.provider.ContactsContract.RawContacts.DisplayPhoto} содержатся примеры
+получения информации о фотографии. К сожалению, отсутствует класс для удобного извлечения миниатюры
+основной фотографии необработанного контакта, однако вы можете отправить запрос в таблицу
+{@link android.provider.ContactsContract.Data}, выбрать
+{@code android.provider.BaseColumns#_ID} необработанного контакта,
+{@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+Photo.CONTENT_ITEM_TYPE} и столбец {@link android.provider.ContactsContract.Data#IS_PRIMARY},
+чтобы найти строку основной фотографии необработанного контакта.
+</p>
+<p>
+    Потоки данных из социальных сетей также могут включать фотографии. Они находятся в таблице
+{@code android.provider.ContactsContract.StreamItemPhotos}, дополнительные сведения о которой представлены в разделе
+<a href="#StreamPhotos">Фотографии из потока данных из социальных сетей</a>.
+</p>
diff --git a/docs/html-intl/intl/ru/guide/topics/providers/content-provider-basics.jd b/docs/html-intl/intl/ru/guide/topics/providers/content-provider-basics.jd
new file mode 100644
index 0000000..c912dbc
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/providers/content-provider-basics.jd
@@ -0,0 +1,1196 @@
+page.title=Основные сведения о поставщике контента
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<!-- In this document -->
+<h2>Содержание документа</h2>
+<ol>
+    <li>
+        <a href="#Basics">Обзор</a>
+        <ol>
+            <li>
+                <a href="#ClientProvider">Доступ к поставщику</a>
+            </li>
+            <li>
+                <a href="#ContentURIs">URI контента</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#SimpleQuery">Получение данных от поставщика</a>
+        <ol>
+            <li>
+                <a href="#RequestPermissions">Запрос разрешения на чтение</a>
+            </li>
+            <li>
+                <a href="#Query">Создание запроса</a>
+            </li>
+            <li>
+                <a href="#DisplayResults">Отображение результатов запроса</a>
+            </li>
+            <li>
+                <a href="#GettingResults">Получение данных из результатов запроса</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#Permissions">Разрешения поставщика контента</a>
+    </li>
+    <li>
+        <a href="#Modifications">Вставка, обновление и удаление данных</a>
+        <ol>
+            <li>
+                <a href="#Inserting">Вставка данных</a>
+            </li>
+            <li>
+                <a href="#Updating">Обновление данных</a>
+            </li>
+            <li>
+                <a href="#Deleting">Удаление данных</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#DataTypes">Типы поставщиков данных</a>
+    </li>
+    <li>
+        <a href="#AltForms">Альтернативные формы доступа к поставщику</a>
+        <ol>
+            <li>
+                <a href="#Batch">Пакетный доступ</a>
+            </li>
+            <li>
+                <a href="#Intents">Доступ к данным с помощью намерений</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClasses">Классы-контракты</a>
+    </li>
+    <li>
+        <a href="#MIMETypeReference">Справка по типам MIME</a>
+    </li>
+</ol>
+
+    <!-- Key Classes -->
+<h2>Ключевые классы</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.content.ContentResolver}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+
+    <!-- Related Samples -->
+<h2>Связанные примеры</h2>
+    <ol>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        Cursor (People)</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        Cursor (Phones)</a>
+        </li>
+    </ol>
+
+    <!-- See also -->
+<h2>См. также</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+Создание поставщика контента</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+Поставщик календаря</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+    <!-- Intro paragraphs -->
+<p>
+    Поставщик контента управляет доступом к центральному репозиторию данных. Поставщик
+является компонентом приложения Android, который зачастую имеет собственный пользовательский интерфейс для
+работы с данными. Однако поставщики контента предназначены в первую очередь для использования другими приложениями,
+которые получают доступ к поставщику посредством клиентского объекта поставщика. Вместе поставщики
+и клиенты поставщиков обеспечивают согласованный, стандартный интерфейс к данным, который также обрабатывает
+взаимодействие между процессами и обеспечивает защищенный доступ к данным.
+</p>
+<p>
+    В этой статье рассматриваются основные сведения, касающиеся следующих тем:
+</p>
+    <ul>
+        <li>принцип работы поставщика контента;</li>
+        <li>API, используемый для получения данных от поставщика контента;</li>
+        <li>API, используемый для вставки данных в поставщик контента и их обновления или удаления в нем;</li>
+        <li>другие функции API, которые упрощают работу с поставщиками.</li>
+    </ul>
+
+    <!-- Basics -->
+<h2 id="Basics">Обзор</h2>
+<p>
+    Поставщик контента предоставляет данные внешним приложениям в виде одной или нескольких таблиц,
+аналогичных таблицам в реляционной базе данных. Строка представляет собой экземпляр некоторого типа
+собираемых поставщиком данных, а каждый столбец в этой строке — это отдельный элемент данных,
+собранных для экземпляра.
+</p>
+<p>
+    Примером встроенного поставщика в платформе Android может служить пользовательский словарь,
+в котором хранятся данные о написании нестандартных слов, добавленных пользователем. В таблице 1 показано,
+как данные могут выглядеть в этой таблице поставщика.
+</p>
+<p class="table-caption">
+    <strong>Таблица 1.</strong> Пример таблицы пользовательского словаря.
+</p>
+<table id="table1" style="width: 50%;">
+    <tr>
+        <th style="width:20%" align="center" scope="col">word</th>
+        <th style="width:20%" align="center" scope="col">app id</th>
+        <th style="width:20%" align="center" scope="col">frequency</th>
+        <th style="width:20%" align="center" scope="col">locale</th>
+        <th style="width:20%" align="center" scope="col">_ID</th>
+    </tr>
+    <tr>
+        <td align="center" scope="row">mapreduce</td>
+        <td align="center">user1</td>
+        <td align="center">100</td>
+        <td align="center">en_US</td>
+        <td align="center">1</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">precompiler</td>
+        <td align="center">user14</td>
+        <td align="center">200</td>
+        <td align="center">fr_FR</td>
+        <td align="center">2</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">applet</td>
+        <td align="center">user2</td>
+        <td align="center">225</td>
+        <td align="center">fr_CA</td>
+        <td align="center">3</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">const</td>
+        <td align="center">user1</td>
+        <td align="center">255</td>
+        <td align="center">pt_BR</td>
+        <td align="center">4</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">int</td>
+        <td align="center">user5</td>
+        <td align="center">100</td>
+        <td align="center">en_UK</td>
+        <td align="center">5</td>
+    </tr>
+</table>
+<p>
+    В каждой строке таблицы 1 представлен экземпляр слова, которое отсутствует
+в стандартном словаре. В каждом ее столбце содержатся некоторые данные для слова,
+например, данные о языке, на котором это слово было впервые использовано. Заголовки столбцов представляют собой имена столбцов, которые хранятся
+в поставщике. Чтобы узнать язык строки, необходимо обратиться к столбцу <code>locale</code>. В этом
+поставщике столбец <code>_ID</code> выступает в роли «основного ключа»,
+который поставщик автоматически сохраняет.
+</p>
+<p class="note">
+    <strong>Примечание.</strong> В поставщике необязательно должен быть основной ключ, а также ему необязательно
+использовать<code>_ID</code> в качестве имени столбца основного ключа, если таковой имеется. Однако, если
+необходимо привязать данные из поставщика к классу {@link android.widget.ListView},
+один из столбцов должен именоваться <code>_ID</code>. Дополнительные сведения об этом требовании представлены в разделе
+<a href="#DisplayResults">Отображение результатов запроса</a>.
+</p>
+<h3 id="ClientProvider">Доступ к поставщику</h3>
+<p>
+    Для доступа приложения к данным из поставщика контента
+используется клиентский объект {@link android.content.ContentResolver}. В этом объекте имеются методы, которые вызывают
+идентичные методы в объекте поставщика, который представляет собой экземпляр одного из конкретных
+подклассов класса {@link android.content.ContentProvider}. В этих методах
+{@link android.content.ContentResolver} представлены основные функции
+ CRUD (аббревиатура create, retrieve, update, delete [создание, получение, обновление и удаление]) постоянного хранилища.
+</p>
+<p>
+    Объект {@link android.content.ContentResolver} в процессе клиентского приложения
+и объект {@link android.content.ContentProvider} в приложении,
+которое владеет поставщиком, автоматически обрабатывают взаимодействие между процессами.
+Объект {@link android.content.ContentProvider} также выступает в роли уровня абстракции между
+репозиторием данных и внешним представлением данных в виде таблиц.
+</p>
+<p class="note">
+    <strong>Примечание.</strong> Для доступа к поставщику ваше приложение обычно должно запросить определенные разрешения
+в своем файле манифеста. Дополнительные сведения об этом представлены в разделе
+<a href="#Permissions">Разрешения поставщика контента</a>.
+</p>
+<p>
+    Например, чтобы получить из поставщика пользовательского словаря список слов и языков, на которых они представлены,
+вызовите метод {@link android.content.ContentResolver#query ContentResolver.query()}.
+    В свою очередь, метод {@link android.content.ContentResolver#query query()} вызывает метод
+{@link android.content.ContentProvider#query ContentProvider.query()}, определенный поставщиком
+пользовательского словаря. В примере кода ниже показан вызов метода
+{@link android.content.ContentResolver#query ContentResolver.query()}.
+<p>
+<pre>
+// Queries the user dictionary and returns results
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,   // The content URI of the words table
+    mProjection,                        // The columns to return for each row
+    mSelectionClause                    // Selection criteria
+    mSelectionArgs,                     // Selection criteria
+    mSortOrder);                        // The sort order for the returned rows
+</pre>
+<p>
+    В таблице 2 указано соответствие аргументов для метода
+{@link android.content.ContentResolver#query 
+query(Uri,projection,selection,selectionArgs,sortOrder)} SQL-инструкции SELECT.
+</p>
+<p class="table-caption">
+    <strong>Таблица 2.</strong> Сравнение метода query() и SQL-запроса.
+</p>
+<table id="table2" style="width: 75%;">
+    <tr>
+        <th style="width:25%" align="center" scope="col">Аргумент метода query()</th>
+        <th style="width:25%" align="center" scope="col">Параметр/ключевое слово SELECT</th>
+        <th style="width:50%" align="center" scope="col">Примечания</th>
+    </tr>
+    <tr>
+        <td align="center"><code>Uri</code></td>
+        <td align="center"><code>FROM <em>table_name</em></code></td>
+        <td><code>Uri</code> соответствует таблице <em>table_name</em> в поставщике.</td>
+    </tr>
+    <tr>
+        <td align="center"><code>projection</code></td>
+        <td align="center"><code><em>col,col,col,...</em></code></td>
+        <td>
+            <code>projection</code> представляет собой массив столбцов, которые следует включить
+в каждую полученную строку.
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>selection</code></td>
+        <td align="center"><code>WHERE <em>col</em> = <em>value</em></code></td>
+        <td><code>selection</code> задает критерии для выбора строк.</td>
+    </tr>
+    <tr>
+        <td align="center"><code>selectionArgs</code></td>
+        <td align="center">
+            (Точный эквивалент отсутствует. В предложении выбора заполнители <code>?</code>
+заменяются аргументами выбора).
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>sortOrder</code></td>
+        <td align="center"><code>ORDER BY <em>col,col,...</em></code></td>
+        <td>
+            <code>sortOrder</code> задает порядок отображения строк в возвращаемом объекте
+{@link android.database.Cursor}.
+        </td>
+    </tr>
+</table>
+<h3 id="ContentURIs">URI контента</h3>
+<p>
+    <strong>URI контента</strong> представляет собой URI, который определяет данные в поставщике. URI контента
+могут включать символическое имя всего поставщика (его <strong>центр</strong>) и
+имя, которое указывает на таблицу (<strong>путь</strong>). При вызове
+клиентского метода для доступа к таблице в поставщике URI контента этой таблицы выступает в роли одного
+из аргументов этого метода.
+</p>
+<p>
+    Константа
+{@link android.provider.UserDictionary.Words#CONTENT_URI} в предыдущих строках кода содержит URI контента
+таблицы words в пользовательском словаре. Объект{@link android.content.ContentResolver}
+анализирует центр URI и использует его для «разрешения» поставщика
+путем сравнения центра с системной таблицей известных поставщиков. {@link android.content.ContentResolver}
+может отправить аргументы запроса в соответствующий
+поставщик.
+</p>
+<p>
+    {@link android.content.ContentProvider} использует часть URI контента, в которой указан путь, для выбора таблицы
+для доступа. В поставщике обычно имеется <strong>путь</strong> для каждой предоставляемой им таблицы.
+</p>
+<p>
+    В предыдущих строках кода полный URI для таблицы words выглядит следующим образом:
+</p>
+<pre>
+content://user_dictionary/words
+</pre>
+<p>
+    Строка <code>user_dictionary</code> ֪– это центр поставщика, а строка
+<code>words</code> — это путь к таблице. Строка
+<code>content://</code> (<strong>схема</strong>) присутствует всегда;
+она определяет, что это URI контента.
+</p>
+<p>
+    Многие поставщики предоставляют доступ к одной строке в таблице путем добавления идентификатора
+в конец URI. Например, чтобы извлечь из пользовательского словаря строку, в столбце <code>_ID</code> которой
+указано <code>4</code>, можно воспользоваться следующим URI контента:
+</p>
+<pre>
+Uri singleUri = ContentUris.withAppendedId(UserDictionary.Words.CONTENT_URI,4);
+</pre>
+<p>
+    Идентификаторы часто используются в случае, когда вы извлекли набор строк и хотите обновить или удалить
+одну из них.
+</p>
+<p class="note">
+    <strong>Примечание.</strong> В классах {@link android.net.Uri} и {@link android.net.Uri.Builder}
+имеются методы для удобного создания правильно оформленных объектов URI из строк. {@link android.content.ContentUris}
+содержит методы для удобного добавления идентификаторов
+к URI. В примере кода выше для добавления идентификатора к URI контента UserDictionary используется метод {@link android.content.ContentUris#withAppendedId
+withAppendedId()}.
+</p>
+
+
+    <!-- Retrieving Data from the Provider -->
+<h2 id="SimpleQuery">Получение данных от поставщика</h2>
+<p>
+    В это разделе рассматривается порядок получения данных от поставщика на примере
+поставщика пользовательского словаря.
+</p>
+<p class="note">
+    Для полной ясности в примерах кода, приведенных в этом разделе, методы
+{@link android.content.ContentResolver#query ContentResolver.query()} вызываются в потоке пользовательского интерфейса. В реальном
+коде запросы следует выполнять асинхронно в отдельном потоке. Одним из способов реализовать
+это является использование класса {@link android.content.CursorLoader}, который более подробно описан в
+статье
+<a href="{@docRoot}guide/components/loaders.html">Загрузчики</a>. Кроме того, в этой статье представлены лишь фрагменты кода; они не представляют собой готовое
+приложение.
+</p>
+<p>
+    Чтобы получить данные из поставщика, выполните указанные ниже основные действия.
+</p>
+<ol>
+   <li>
+        Запросите у поставщика разрешение на чтение.
+   </li>
+   <li>
+        Определите код, который отвечает за отправку запроса поставщику.
+   </li>
+</ol>
+<h3 id="RequestPermissions">Запрос разрешения на чтение</h3>
+<p>
+    Чтобы ваше приложение могло получать данные от поставщика, приложению требуется получить от поставщика разрешение
+на чтение. Это разрешение невозможно получить во время выполнения; вместо этого вам необходимо указать, что вам требуется
+такое разрешение, в манифесте приложения. Для этого воспользуйтесь элементом
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+и укажите точное название разрешения,
+определенное поставщиком. Указав этот элемент в манифесте, вы тем самым запрашиваете
+необходимое разрешение для вашего приложения. Когда пользователи устанавливают ваше приложение, они косвенно
+получают разрешение по этому запросу.
+</p>
+<p>
+    Чтобы узнать точное название разрешения на чтение в используемом поставщике,
+а также названия других используемых в нем разрешений на чтение, обратитесь
+к документации поставщика.
+</p>
+<p>
+    Дополнительные сведения о роли разрешений в получении доступа к поставщику представлены в разделе
+<a href="#Permissions">Разрешения поставщика контента</a>.
+</p>
+<p>
+    Поставщик пользовательского словаря задает разрешение
+<code>android.permission.READ_USER_DICTIONARY</code> в своем файле манифеста,
+поэтому приложению, которому требуется выполнить чтение данных из поставщика, необходимо запросить именно это разрешение.
+</p>
+<!-- Constructing the query -->
+<h3 id="Query">Создание запроса</h3>
+<p>
+    Следующим этапом получения данных от поставщика является создание запроса. В следующем фрагменте кода
+задаются некоторые переменные для доступа к поставщику пользовательского словаря:
+</p>
+<pre class="prettyprint">
+
+// A "projection" defines the columns that will be returned for each row
+String[] mProjection =
+{
+    UserDictionary.Words._ID,    // Contract class constant for the _ID column name
+    UserDictionary.Words.WORD,   // Contract class constant for the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant for the locale column name
+};
+
+// Defines a string to contain the selection clause
+String mSelectionClause = null;
+
+// Initializes an array to contain selection arguments
+String[] mSelectionArgs = {""};
+
+</pre>
+<p>
+    В следующем фрагменте кода демонстрируется порядок использования метода
+{@link android.content.ContentResolver#query ContentResolver.query()} (в качестве примера выступает
+поставщик пользовательского словаря): Клиентский запрос поставщика аналогичен SQL-запросу. В нем содержится
+набор столбцов, которые возвращаются, набор критериев выборки и порядок сортировки.
+</p>
+<p>
+    Набор столбцов, которые должен возвратить запрос, называется <strong>проекцией</strong>
+(переменная <code>mProjection</code>).
+</p>
+<p>
+    Выражение, которое задает строки для получения, состоит из предложения выбора
+и аргументов выбора. Предложение выбора представляет собой сочетание логических выражений,
+имен столбцов и значений (переменная <code>mSelectionClause</code>). Если вместо значения указать подставляемый параметр
+<code>?</code>, метод запроса извлекает значение из массива аргументов выбора (переменная
+<code>mSelectionArgs</code>).
+</p>
+<p>
+    В следующем фрагменте кода, если пользователь не указал слово, то для предложения выбора задается значение
+<code>null</code>, а запрос возвращает все слова, имеющиеся в поставщике. Если пользователь указал слово, то для предложения выбора задается значение
+<code>UserDictionary.Words.WORD + " = ?"</code>,
+а для первого элемента в массиве аргументов выбора задается введенное пользователем слово.
+</p>
+<pre class="prettyprint">
+/*
+ * This defines a one-element String array to contain the selection argument.
+ */
+String[] mSelectionArgs = {""};
+
+// Gets a word from the UI
+mSearchString = mSearchWord.getText().toString();
+
+// Remember to insert code here to check for invalid or malicious input.
+
+// If the word is the empty string, gets everything
+if (TextUtils.isEmpty(mSearchString)) {
+    // Setting the selection clause to null will return all words
+    mSelectionClause = null;
+    mSelectionArgs[0] = "";
+
+} else {
+    // Constructs a selection clause that matches the word that the user entered.
+    mSelectionClause = UserDictionary.Words.WORD + " = ?";
+
+    // Moves the user's input string to the selection arguments.
+    mSelectionArgs[0] = mSearchString;
+
+}
+
+// Does a query against the table and returns a Cursor object
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,  // The content URI of the words table
+    mProjection,                       // The columns to return for each row
+    mSelectionClause                   // Either null, or the word the user entered
+    mSelectionArgs,                    // Either empty, or the string the user entered
+    mSortOrder);                       // The sort order for the returned rows
+
+// Some providers return null if an error occurs, others throw an exception
+if (null == mCursor) {
+    /*
+     * Insert code here to handle the error. Be sure not to use the cursor! You may want to
+     * call android.util.Log.e() to log this error.
+     *
+     */
+// If the Cursor is empty, the provider found no matches
+} else if (mCursor.getCount() &lt; 1) {
+
+    /*
+     * Insert code here to notify the user that the search was unsuccessful. This isn't necessarily
+     * an error. You may want to offer the user the option to insert a new row, or re-type the
+     * search term.
+     */
+
+} else {
+    // Insert code here to do something with the results
+
+}
+</pre>
+<p>
+    Этот запрос аналогичен следующей инструкции SQL:
+</p>
+<pre>
+SELECT _ID, word, locale FROM words WHERE word = &lt;userinput&gt; ORDER BY word ASC;
+</pre>
+<p>
+    В этой инструкции SQL вместо констант класса-контракта используются фактические имена столбцов.
+</p>
+<h4 id="Injection">Защита от ввода вредоносного кода</h4>
+<p>
+    Если данные, которыми управляет поставщик контента, находятся в базе данных SQL, то включение в необработанные инструкции
+SQL внешних ненадежных данных может привести к атаке путем внедрения кода SQL.
+</p>
+<p>
+    Рассмотрим следующее предложение выбора:
+</p>
+<pre>
+// Constructs a selection clause by concatenating the user's input to the column name
+String mSelectionClause =  "var = " + mUserInput;
+</pre>
+<p>
+    Если вы используете это предложение, вы разрешаете пользователю связать вашу инструкцию SQL с вредоносным кодом SQL.
+    Например, пользователь может ввести nothing; DROP TABLE *; для <code>mUserInput</code>, что
+приведет к созданию следующего предложения выбора: <code>var = nothing; DROP TABLE *;</code>. Поскольку
+предложение выбора выполняется в потоке как инструкция SQL, это может привести к тому, что поставщик удалит все
+таблицы в соответствующей базе данных SQLite (если только в поставщик не настроен на отслеживание попыток
+<a href="http://en.wikipedia.org/wiki/SQL_injection">внедрить вредоносный код SQL</a>).
+</p>
+<p>
+    Чтобы избежать этого, воспользуйтесь предложением выбора, в котором <code>?</code> выступает в качестве подставляемого
+параметра, а также отдельным массивом аргументов выбора. После этого ввод пользователя
+будет связан напрямую с запросом и не будет интерпретироваться как часть инструкции SQL.
+    Поскольку в этом случае введенный пользователем запрос не рассматривается как код SQL, то в него не удастся внедрить вредоносный код SQL. Вместо
+объединения, которое следует включить в пользовательский ввод, используйте следующее предложение выбора:
+</p>
+<pre>
+// Constructs a selection clause with a replaceable parameter
+String mSelectionClause =  "var = ?";
+</pre>
+<p>
+    Настройте массив аргументов выбора следующим образом:
+</p>
+<pre>
+// Defines an array to contain the selection arguments
+String[] selectionArgs = {""};
+</pre>
+<p>
+    Укажите значение для массива аргументов выбора:
+</p>
+<pre>
+// Sets the selection argument to the user's input
+selectionArgs[0] = mUserInput;
+</pre>
+<p>
+    Предложение выбора, в котором <code>?</code> используется в качестве подстановочного параметра, и массив
+аргументов выбора представляют собой предпочтительный способ указания выбора, даже если поставщик
+не использует базу данных SQL.
+</p>
+<!-- Displaying the results -->
+<h3 id="DisplayResults">Отображение результатов запроса</h3>
+<p>
+    Клиентский метод {@link android.content.ContentResolver#query ContentResolver.query()} всегда возвращает объект
+{@link android.database.Cursor}, содержащий столбцы, указанные в проекции
+запроса для строк, которые соответствуют критериям выборки в запросе. Объект
+{@link android.database.Cursor} предоставляет прямой доступ на чтение содержащихся в нем строк и
+столбцов. С помощью методов {@link android.database.Cursor} можно выполнить итерацию по строкам
+в результатах, определить тип данных для каждого столбца, получить данные из столбца, а также проверить другие свойства
+результатов. Некоторые реализации объекта {@link android.database.Cursor} автоматически обновляют
+объект при изменении данных в поставщике или запускают выполнение методов в объекте-наблюдателе
+при изменении объекта{@link android.database.Cursor}, либо выполняют и то, и другое.
+</p>
+<p class="note">
+    <strong>Примечание.</strong> Поставщик может ограничить доступ к столбцам на основе характера
+объекта, выполняющего запрос. Например, поставщик контактов ограничивает доступ адаптеров синхронизации к некоторым столбцам,
+поэтому он не возвращает их в операцию или службу.
+</p>
+<p>
+    Если строки, соответствующие критериям выборки, отсутствуют, поставщик
+возвращает объект{@link android.database.Cursor}, в котором для метода
+{@link android.database.Cursor#getCount Cursor.getCount()} указано значение «0» (пустой объект cursor).
+</p>
+<p>
+    При возникновении внутренней ошибки результаты запроса зависят от определенного поставщика. Поставщик может
+возвратить<code>null</code> или выдать {@link java.lang.Exception}.
+</p>
+<p>
+    Поскольку {@link android.database.Cursor} представляет собой «список» строк, то наилучшим способом отобразить содержимое объекта
+{@link android.database.Cursor} будет связать его с {@link android.widget.ListView}
+посредством {@link android.widget.SimpleCursorAdapter}.
+</p>
+<p>
+    Следующий фрагмент кода является продолжением предыдущего фрагмента. Он создает объект
+{@link android.widget.SimpleCursorAdapter}, содержащий объект{@link android.database.Cursor},
+который был получен в запросе, а затем определяет этот объект в качестве адаптера для
+{@link android.widget.ListView}:
+</p>
+<pre class="prettyprint">
+// Defines a list of columns to retrieve from the Cursor and load into an output row
+String[] mWordListColumns =
+{
+    UserDictionary.Words.WORD,   // Contract class constant containing the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant containing the locale column name
+};
+
+// Defines a list of View IDs that will receive the Cursor columns for each row
+int[] mWordListItems = { R.id.dictWord, R.id.locale};
+
+// Creates a new SimpleCursorAdapter
+mCursorAdapter = new SimpleCursorAdapter(
+    getApplicationContext(),               // The application's Context object
+    R.layout.wordlistrow,                  // A layout in XML for one row in the ListView
+    mCursor,                               // The result from the query
+    mWordListColumns,                      // A string array of column names in the cursor
+    mWordListItems,                        // An integer array of view IDs in the row layout
+    0);                                    // Flags (usually none are needed)
+
+// Sets the adapter for the ListView
+mWordList.setAdapter(mCursorAdapter);
+</pre>
+<p class="note">
+    <strong>Примечание.</strong> Чтобы вернуть {@link android.widget.ListView} с объектом
+{@link android.database.Cursor}, объект cursor должен содержать столбец с именем <code>_ID</code>.
+    Поэтому показанный ранее запрос извлекает столбец<code>_ID</code> для таблицы
+words, даже если {@link android.widget.ListView} не отображает ее.
+    Данное ограничение также объясняет, почему в каждой таблице поставщика имеется столбец
+<code>_ID</code>.
+</p>
+
+        <!-- Getting data from query results -->
+<h3 id="GettingResults">Получение данных из результатов запроса</h3>
+<p>
+    Вместо того, чтобы просто отобразить результаты запроса, вы можете использовать их для выполнения других задач. Например,
+можно получить написание слов из пользовательского словаря, а затем выполнить их поиск в
+других поставщиках. Для этого выполните итерацию по строкам в объекте {@link android.database.Cursor}:
+</p>
+<pre class="prettyprint">
+
+// Determine the column index of the column named "word"
+int index = mCursor.getColumnIndex(UserDictionary.Words.WORD);
+
+/*
+ * Only executes if the cursor is valid. The User Dictionary Provider returns null if
+ * an internal error occurs. Other providers may throw an Exception instead of returning null.
+ */
+
+if (mCursor != null) {
+    /*
+     * Moves to the next row in the cursor. Before the first movement in the cursor, the
+     * "row pointer" is -1, and if you try to retrieve data at that position you will get an
+     * exception.
+     */
+    while (mCursor.moveToNext()) {
+
+        // Gets the value from the column.
+        newWord = mCursor.getString(index);
+
+        // Insert code here to process the retrieved word.
+
+        ...
+
+        // end of while loop
+    }
+} else {
+
+    // Insert code here to report an error if the cursor is null or the provider threw an exception.
+}
+</pre>
+<p>
+    Реализации объекта {@link android.database.Cursor} содержат несколько методов get для
+получения из объекта различных типов данных. Например, в следующем фрагменте кода используется метод
+{@link android.database.Cursor#getString getString()}. В них также имеется метод
+{@link android.database.Cursor#getType getType()}, который возвращает значение, указывающее на тип
+данных в столбце.
+</p>
+
+
+    <!-- Requesting permissions -->
+<h2 id="Permissions">Разрешения поставщика контента</h2>
+<p>
+    Приложение поставщика может задавать разрешения, которые требуются другим приложениям для доступа к
+данным в поставщике. Такие разрешения гарантируют, что пользователь знает, к каким
+данным приложение будет пытаться получить доступ. На основе требований поставщика другие
+приложения запрашивают разрешения, которые требуются им для доступа к поставщику. Конечные пользователи видят
+запрошенные разрешения при установке приложения.
+</p>
+<p>
+    Если приложение поставщика не задает никаких разрешений, другие приложения не получают доступ к
+данным поставщика. Однако компонентам приложения поставщика
+всегда предоставлен полный доступ на чтение и запись, независимо от заданных разрешений.
+</p>
+<p>
+    Как уже было отмечено ранее, для получения данных из поставщика пользовательского словаря требуется разрешение
+<code>android.permission.READ_USER_DICTIONARY</code>.
+    В поставщике предусмотрено отдельное разрешение<code>android.permission.WRITE_USER_DICTIONARY</code>
+для вставки, обновления или удаления данных.
+</p>
+<p>
+    Чтобы получить разрешения, необходимые для доступа к поставщику, приложение запрашивает их с помощью элемента 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+в файле манифеста. При установке менеджером пакетов Android приложения пользователю необходимо
+утвердить все разрешения, запрашиваемые приложением. В случае утверждения всех разрешений
+менеджер пакетов продолжает установку; если же пользователь отклоняет их, менеджер
+пакетов отменяет установку.
+</p>
+<p>
+    Для запроса доступа на чтение данных в поставщике пользовательского словаря используется
+следующий элемент
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>:
+</p>
+<pre>
+    &lt;uses-permission android:name="android.permission.READ_USER_DICTIONARY"&gt;
+</pre>
+<p>
+    Дополнительные сведения о влиянии разрешений на доступ к поставщику представлены в статье
+<a href="{@docRoot}guide/topics/security/security.html">Безопасность и разрешения</a>.
+</p>
+
+
+<!-- Inserting, Updating, and Deleting Data -->
+<h2 id="Modifications">Вставка, обновление и удаление данных</h2>
+<p>
+    Подобно тому, как вы получаете данные от поставщика, вы также можете можете использовать возможности взаимодействия между клиентом поставщика и объектом
+{@link android.content.ContentProvider} поставщика для изменения данных.
+    Можно вызвать метод объекта {@link android.content.ContentResolver}, указав аргументы,
+которые были переданы в соответствующий метод объекта {@link android.content.ContentProvider}. Поставщик и клиент поставщика
+автоматически обрабатывают взаимодействие между процессами и обеспечивают безопасность.
+</p>
+<h3 id="Inserting">Вставка данных</h3>
+<p>
+    Для вставки данных в поставщик вызовите
+метод
+{@link android.content.ContentResolver#insert ContentResolver.insert()}. Этот метод вставляет новую строку в поставщик и возвращает URI контента для этой строки.
+    В следующем фрагменте кода демонстрируется порядок вставки нового слова в поставщик пользовательского словаря:
+</p>
+<pre class="prettyprint">
+// Defines a new Uri object that receives the result of the insertion
+Uri mNewUri;
+
+...
+
+// Defines an object to contain the new values to insert
+ContentValues mNewValues = new ContentValues();
+
+/*
+ * Sets the values of each column and inserts the word. The arguments to the "put"
+ * method are "column name" and "value"
+ */
+mNewValues.put(UserDictionary.Words.APP_ID, "example.user");
+mNewValues.put(UserDictionary.Words.LOCALE, "en_US");
+mNewValues.put(UserDictionary.Words.WORD, "insert");
+mNewValues.put(UserDictionary.Words.FREQUENCY, "100");
+
+mNewUri = getContentResolver().insert(
+    UserDictionary.Word.CONTENT_URI,   // the user dictionary content URI
+    mNewValues                          // the values to insert
+);
+</pre>
+<p>
+    Данные для новой строки поступают в один объект {@link android.content.ContentValues},
+который аналогичен объекту cursor с одной строкой. Столбцы в этом объекте необязательно
+должны содержать данные такого же типа, и если вы вообще не собираетесь указывать значение, вы можете задать для столбца значение
+<code>null</code> с помощью метода {@link android.content.ContentValues#putNull ContentValues.putNull()}.
+</p>
+<p>
+    Код в представленном фрагменте не добавляет столбец <code>_ID</code>, поскольку этот столбец сохраняется
+автоматически. Поставщик присваивает уникальное значение <code>_ID</code> каждой
+добавляемой строке. Обычно поставщики используют это значение в качестве основного ключа таблицы.
+</p>
+<p>
+    URI контента, возвращенный в элементе <code>newUri</code>, служит для идентификации новой добавленной строки
+в следующем формате:
+</p>
+<pre>
+content://user_dictionary/words/&lt;id_value&gt;
+</pre>
+<p>
+    <code>&lt;id_value&gt;</code> — это содержимое столбца <code>_ID</code> для новой строки.
+    Большинство поставщиков автоматически определяют эту форму URI контента, а затем
+выполняют запрошенную операцию с требуемой строкой.
+</p>
+<p>
+    Чтобы получить значение <code>_ID</code> из возвращенного объекта {@link android.net.Uri}, вызовите метод
+{@link android.content.ContentUris#parseId ContentUris.parseId()}.
+</p>
+<h3 id="Updating">Обновление данных</h3>
+<p>
+    Чтобы обновить строку, используйте объект {@link android.content.ContentValues} с обновленными
+значениями (точно так же, как вы это делаете при вставке) и критериями выборки (так же, как и с запросом).
+    Используемый вами клиентский метод называется
+{@link android.content.ContentResolver#update ContentResolver.update()}. Вам не нужно добавлять значения в объект
+{@link android.content.ContentValues} для обновляемых столбцов. Чтобы очистить содержимое столбца, задайте значение
+<code>null</code>.
+</p>
+<p>
+    Следующий фрагмент кода служит для изменения языка во всех строках, где в качестве языка указано en, на
+<code>null</code>. Возвращаемое значение представляет собой количество строк, которые были обновлены:
+</p>
+<pre>
+// Defines an object to contain the updated values
+ContentValues mUpdateValues = new ContentValues();
+
+// Defines selection criteria for the rows you want to update
+String mSelectionClause = UserDictionary.Words.LOCALE +  "LIKE ?";
+String[] mSelectionArgs = {"en_%"};
+
+// Defines a variable to contain the number of updated rows
+int mRowsUpdated = 0;
+
+...
+
+/*
+ * Sets the updated value and updates the selected words.
+ */
+mUpdateValues.putNull(UserDictionary.Words.LOCALE);
+
+mRowsUpdated = getContentResolver().update(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mUpdateValues                       // the columns to update
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    Также следует проверить пользовательский ввод при вызове метода
+{@link android.content.ContentResolver#update ContentResolver.update()}. Дополнительные сведения об этом
+представлены в разделе <a href="#Injection">Защита от ввода вредоносного кода</a>.
+</p>
+<h3 id="Deleting">Удаление данных</h3>
+<p>
+    Удаление данных аналогично получению данных строки: необходимо указать критерии выборки для строк,
+которые требуется удалить, после чего клиентский метод возвратит количество удаленных строк.
+    Ниже представлен фрагмент кода для удаления строк с идентификатором appid user. Метод возвращает
+количество удаленных строк.
+</p>
+<pre>
+
+// Defines selection criteria for the rows you want to delete
+String mSelectionClause = UserDictionary.Words.APP_ID + " LIKE ?";
+String[] mSelectionArgs = {"user"};
+
+// Defines a variable to contain the number of rows deleted
+int mRowsDeleted = 0;
+
+...
+
+// Deletes the words that match the selection criteria
+mRowsDeleted = getContentResolver().delete(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    Также следует проверить пользовательский ввод при вызове метода
+{@link android.content.ContentResolver#delete ContentResolver.delete()}. Дополнительные сведения об этом
+представлены в разделе <a href="#Injection">Защита от ввода вредоносного кода</a>.
+</p>
+<!-- Provider Data Types -->
+<h2 id="DataTypes">Типы поставщиков данных</h2>
+<p>
+    Поставщики контента могут предоставлять различные тип данных. Поставщик пользовательского словаря предоставляет только
+текст, но также может предоставлять следующие форматы:
+</p>
+    <ul>
+        <li>
+            целое число;
+        </li>
+        <li>
+            длинное целое число (long);
+        </li>
+        <li>
+            число с плавающей запятой;
+        </li>
+        <li>
+            длинное число с плавающей запятой (double).
+        </li>
+    </ul>
+<p>
+    Другим типом данных, предлагаемых поставщиком, является большой двоичный объект (BLOB), реализованный как
+64-разрядный массив. Чтобы просмотреть доступные типы данных, обратитесь к методам get класса
+{@link android.database.Cursor}.
+</p>
+<p>
+    Тип данных для каждого столбца в поставщике обычно указывается в документации к поставщику.
+    Типы данных для поставщика пользовательского словаря указаны в справочной документации
+для класса-контракта {@link android.provider.UserDictionary.Words} (дополнительные сведения о классах-контрактах представлены в разделе
+<a href="#ContractClasses">Классы-контракты</a>).
+    Также определить тип данных можно путем вызова метода {@link android.database.Cursor#getType
+Cursor.getType()}.
+</p>
+<p>
+    Поставщики также хранят информацию о типе данных MIME для каждого определяемого ими URI контента. Эту информацию
+можно использовать для определения того, может ли ваше приложение обрабатывать предлагаемые
+поставщиком данные, а также для выбора типа обработки на основе типа MIME. Информация о типе
+MIME обычно требуется при работе с поставщиком, который содержит
+сложные структуры данных или файлы. Например, в таблице{@link android.provider.ContactsContract.Data}
+в поставщике контактов используются типы MIME для отметки типа данных контакта, которые хранятся в каждой
+строке. Чтобы получить тип MIME, соответствующий URI контента, вызовите метод
+{@link android.content.ContentResolver#getType ContentResolver.getType()}.
+</p>
+<p>
+    Синтаксис стандартных и настраиваемых типов MIME описан в
+<a href="#MIMETypeReference">справке по типам MIME</a>.
+</p>
+
+
+<!-- Alternative Forms of Provider Access -->
+<h2 id="AltForms">Альтернативные формы доступа к поставщику</h2>
+<p>
+    При разработке приложения следует учитывать три альтернативных формы доступа к поставщику:
+</p>
+<ul>
+    <li>
+        <a href="#Batch">Пакетный доступ:</a> можно создать пакет вызовов доступа с использованием методов в классе
+{@link android.content.ContentProviderOperation}, а затем применить их с помощью метода
+{@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()}.
+    </li>
+    <li>
+        Асинхронные запросы: Запросы следует выполнять в отдельном потоке. Одним из способов реализовать это является использование объекта
+{@link android.content.CursorLoader}. Примеры этого представлены в
+статье
+<a href="{@docRoot}guide/components/loaders.html">Загрузчики</a>.
+    </li>
+    <li>
+        <a href="#Intents">Доступ к данным с помощью намерений:</a> Несмотря на то, что намерение
+невозможно отправить напрямую в поставщик, вы можете отправить запрос в приложение поставщика, в котором обычно
+имеется больше возможностей для изменения данных поставщика.
+    </li>
+</ul>
+<p>
+    Пакетный доступ и изменение с помощью намерений описаны в следующих разделах.
+</p>
+<h3 id="Batch">Пакетный доступ</h3>
+<p>
+    Пакетный доступ к поставщику полезно использовать в случаях, когда необходимо вставить большое количество строк, или для вставки
+строк в несколько таблиц в рамках одного вызова метода, а также в общих случаях для выполнения ряда
+операций на границах процессов в виде транзакции (атомарной операции).
+</p>
+<p>
+    Для доступа к поставщику в «пакетном режиме» необходимо создать массив объектов
+{@link android.content.ContentProviderOperation}, а затем
+отправить их в поставщик контента с помощью метода
+{@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()}. В этот метод необходимо передать
+<em>центр</em> поставщика контента, а не определенный URI контента.
+Это позволит каждому объекту {@link android.content.ContentProviderOperation} в массиве взаимодействовать
+с разными таблицами. Метод {@link android.content.ContentResolver#applyBatch
+ContentResolver.applyBatch()} возвращает массив результатов.
+</p>
+<p>
+    В описании класса-контракта {@link android.provider.ContactsContract.RawContacts}
+также представлен фрагмент кода, в котором демонстрируется вставка в пакетном режиме. В исходном файле <code>ContactAdder.java</code> примера приложения
+<a href="{@docRoot}resources/samples/ContactManager/index.html">Диспетчер контактов</a>
+имеется пример пакетного
+доступа.
+</p>
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Отображение данных с помощью вспомогательного приложения</h2>
+<p>
+    Если вашему приложению <em>не предоставлены</em> разрешения, вы по-прежнему можете воспользоваться
+намерением для отображения данных в другом приложении. Например, приложение «Календарь» принимает намерение
+{@link android.content.Intent#ACTION_VIEW}, которое позволяет отобразить определенную дату или событие.
+    Благодаря этому информацию календаря можно отображать без необходимости создавать собственный пользовательский интерфейс.
+Дополнительные сведения об этой функции представлены в статье
+<a href="{@docRoot}guide/topics/providers/calendar-provider.html">Поставщик календаря</a>.
+</p>
+<p>
+    Приложение, в которое вы отправляете намерение, не обязательно
+должно быть связано с поставщиком. Например,
+в поставщике контактов можно создать форму контакта, а затем отправить намерение {@link android.content.Intent#ACTION_VIEW},
+содержащее URI контента для изображения контакта, в средство просмотра изображений.
+</p>
+</div>
+</div>
+<h3 id="Intents">Доступ к данным с помощью намерений</h3>
+<p>
+    Намерения позволяют в обход получать доступ к поставщику контента. Вы можете разрешить пользователям доступ к
+данным в поставщике даже в том случае, если у приложения отсутствуют разрешения на доступ, либо путем
+получения результирующего намерения от приложения, у которого имеются необходимые разрешения, либо путем активации
+приложения, у которого имеются разрешения и которое разрешает пользователю работать с ним.
+</p>
+<h4>Получение доступа с временными разрешениями</h4>
+<p>
+    Вы можете получить доступ к данным в поставщике контента даже тогда, когда у вас нет необходимых разрешений на доступ
+, путем отправки намерения в приложение, у которого есть такие разрешения, и получения
+результирующего намерения, которое содержит разрешения URI.
+    Эти разрешения для определенного URI контента действуют до тех пор, пока не будет завершена операция, получившая
+их. Приложение, у которой имеются бессрочные разрешения, предоставляет временные
+разрешения путем задания соответствующего флага в результирующем намерении:
+</p>
+<ul>
+    <li>
+        <strong>Разрешение на чтение:</strong>
+{@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}
+    </li>
+    <li>
+        <strong>Разрешение на запись:</strong>
+{@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION}
+    </li>
+</ul>
+<p class="note">
+    <strong>Примечание.</strong> Эти флаги не предоставляют общий доступ на чтение или запись поставщику,
+центр которого указан в URI контента. Доступ предоставляется только самому URI.
+</p>
+<p>
+    Поставщик определяет разрешения URI для URI контента в своем манифесте с помощью атрибута
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">android:grantUriPermission</a></code>
+элемента
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>,
+а также
+с помощью дочернего элемента
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+элемента
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>. Дополнительные сведения о механизме разрешений URI представлены в статье
+<a href="{@docRoot}guide/topics/security/security.html">Безопасность и разрешения</a> в разделе
+Разрешения URI.
+</p>
+<p>
+    Например, можно получить данные о контакте из поставщика контактов, даже если у вас нет разрешения
+{@link android.Manifest.permission#READ_CONTACTS}. Возможно, это потребуется реализовать
+в приложении, которое отправляет электронные поздравления контакту в день его рождения. Вместо запроса
+{@link android.Manifest.permission#READ_CONTACTS}, когда вы получаете доступ ко всем контактам пользователя
+и всей информации о них, можно предоставить пользователю возможность указать,
+какие контакты используются вашим приложением. Для этого воспользуйтесь указанным ниже процессом.
+</p>
+<ol>
+    <li>
+        Ваше приложение отправляет намерение, содержащее действие
+{@link android.content.Intent#ACTION_PICK} и тип MIME
+{@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE} контактов, используя для этого метод
+{@link android.app.Activity#startActivityForResult
+startActivityForResult()}.
+    </li>
+    <li>
+        Поскольку это намерение соответствует условиям отбора намерений для операции выбора
+приложения «Контакты», эта операция переходит на передний план.
+    </li>
+    <li>
+        В операции выбора пользователь выбирает
+контакт для обновления. Когда это происходит, операция выбора вызывает метод
+{@link android.app.Activity#setResult setResult(resultcode, intent)}
+для создания намерения, которое будет передано обратно в ваше приложение. Намерение содержит URI контента
+выбранного пользователем контакта, а также флаги
+{@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION} дополнительных данных. Эти флаги предоставляют вашему приложению разрешение URI
+на чтение данных контакта, на который указывает
+URI контента. Затем операция выбора вызывает метод{@link android.app.Activity#finish()},
+чтобы вернуть управление вашему приложению.
+    </li>
+    <li>
+        Ваша операция возвращается на передний план, а система вызывает метод
+{@link android.app.Activity#onActivityResult onActivityResult()}
+вашей операции. Этот метод получает результирующее намерение, созданное операцией выбора в
+приложении «Контакты».
+    </li>
+    <li>
+        С помощью URI контента из результирующего намерения можно выполнить чтение данных контакта
+из поставщика контактов, даже если вы не запрашивали у поставщика постоянный доступ на чтение
+в своем манифесте. Можно получить информацию о дне рождения контакта
+или сведения о его адресе эл. почты, а затем отправить контакту электронное поздравление.
+    </li>
+</ol>
+<h4>Использование другого приложения</h4>
+<p>
+    Простой способ разрешить пользователю изменять данные, на доступ к которым у вас нет доступа
+— это активировать приложение, у которого есть такие разрешения, а затем предоставить пользователю возможность выполнять необходимые действия в этом приложении.
+</p>
+<p>
+    Например, приложение «Календарь» принимает намерения
+{@link android.content.Intent#ACTION_INSERT}, с помощью которого можно активировать
+пользовательский интерфейс приложения для вставки. Вы можете передать в это намерение дополнительные данные, которые приложение
+использует для заполнения полей в пользовательском интерфейсе. Поскольку синтаксис повторяющихся событий довольно сложный, то события предпочтительно
+вставлять в поставщик календаря путем активации приложения «Календарь» с помощью действия
+{@link android.content.Intent#ACTION_INSERT} и последующего предоставления пользователю возможности самому вставить событие в этом приложении.
+</p>
+<!-- Contract Classes -->
+<h2 id="ContractClasses">Классы-контракты</h2>
+<p>
+    Класс-контракт определяет константы, которые обеспечивают для приложений возможность работать с URI контента, именами
+столбцов, операциями намерения и другими функциями поставщика контента. Классы-контракты не
+включены в поставщик; разработчику поставщика следует определить их и сделать
+их доступными для других разработчиков. Многие из поставщиков, включенные в платформу Android,
+содержат соответствующие классы-контракты в пакете {@link android.provider}.
+</p>
+<p>
+    Например, в поставщике пользовательского календаря имеется класс-контракт
+{@link android.provider.UserDictionary}, содержащий константы URI контента и имен столбцов. URI
+контента для таблицы words определен в константе
+{@link android.provider.UserDictionary.Words#CONTENT_URI UserDictionary.Words.CONTENT_URI}.
+    В классе {@link android.provider.UserDictionary.Words} также имеются константы имен столбцов,
+которые используются в фрагментах кода примера приложения, представленных в этой статье. Например, проекцию запроса
+можно определить следующим образом:
+</p>
+<pre>
+String[] mProjection =
+{
+    UserDictionary.Words._ID,
+    UserDictionary.Words.WORD,
+    UserDictionary.Words.LOCALE
+};
+</pre>
+<p>
+    Другим классом-контрактом является класс {@link android.provider.ContactsContract} для поставщика контактов.
+    В справочной документации к этому классу представлены фрагменты кода примера приложения. Один из его подклассов,
+{@link android.provider.ContactsContract.Intents.Insert}, представляет собой класс-контракт,
+который содержит константы для намерений и их данных.
+</p>
+
+
+<!-- MIME Type Reference -->
+<h2 id="MIMETypeReference">Справка по типам MIME</h2>
+<p>
+    Поставщики контента могут возвращать как стандартные типы мультимедиа MIME, так и строки с настраиваемым типом MIME, либо оба этих типа.
+</p>
+<p>
+    Типы MIME имеют следующий формат:
+</p>
+<pre>
+<em>type</em>/<em>subtype</em>
+</pre>
+<p>
+    Например, хорошо известный тип MIME <code>text/html</code> имеет тип <code>text</code> и подтип
+<code>html</code>. Если поставщик возвращает этот тип URI, это означает, что
+строка запроса, в которой используется этот URI, возвратит текста с тегами HTML.
+</p>
+<p>
+    Строки с настраиваемым типом MIME, которые также называются типами MIME поставщика, имеют более сложные значения
+<em>типов</em> и <em>подтипов</em>. Значение <em>типа</em> всегда следующее:
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>
+</pre>
+<p>
+    для нескольких строк, или
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>
+</pre>
+<p>
+    для одной строки.
+</p>
+<p>
+    <em>Подтип</em> зависит от поставщика. Встроенные поставщики Android обычно содержат простой
+подтип. Например, когда приложение «Контакты» создает строку для номера телефона,
+оно задает следующий тип MIME в этой строке:
+</p>
+<pre>
+vnd.android.cursor.item/phone_v2
+</pre>
+<p>
+    Обратите внимание, что значение подтипа просто <code>phone_v2</code>.
+</p>
+<p>
+    Разработчики поставщиков могут создавать свои собственные шаблоны подтипов на основе
+центра и названий таблиц поставщика. Например, рассмотрим поставщик, который содержит расписание движения поездов.
+    Центром поставщика является <code>com.example.trains</code>, в котором содержатся таблицы
+Line1, Line2 и Line3. В ответ на следующий URI контента
+</p>
+<p>
+<pre>
+content://com.example.trains/Line1
+</pre>
+<p>
+    для таблицы Line1 поставщик возвращает следующий тип MIME
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.example.line1
+</pre>
+<p>
+     В ответ на следующий URI контента
+</p>
+<pre>
+content://com.example.trains/Line2/5
+</pre>
+<p>
+    для строки 5 в таблице Line2 поставщик возвращает следующий тип MIME
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.example.line2
+</pre>
+<p>
+    В большинстве поставщиков контента определены константы класса-контракта для используемых в них типов MIME. Например, класс-контракт
+{@link android.provider.ContactsContract.RawContacts}
+поставщика контактов определяет константу
+{@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE} для типа MIME одной
+строки необработанного контакта.
+</p>
+<p>
+    URI контента для единичных строк описываются в разделе
+<a href="#ContentURIs">URI контента</a>.
+</p>
diff --git a/docs/html-intl/intl/ru/guide/topics/providers/content-provider-creating.jd b/docs/html-intl/intl/ru/guide/topics/providers/content-provider-creating.jd
new file mode 100644
index 0000000..d8f7873
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/providers/content-provider-creating.jd
@@ -0,0 +1,1214 @@
+page.title=Создание поставщика контента
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<h2>Содержание документа</h2>
+<ol>
+    <li>
+        <a href="#DataStorage">Проектирование хранилища данных</a>
+    </li>
+    <li>
+        <a href="#ContentURI">Проектирование URI контента</a>
+    </li>
+    <li>
+        <a href="#ContentProvider">Реализация класса ContentProvider</a>
+        <ol>
+            <li>
+                <a href="#RequiredAccess">Необходимые методы</a>
+            </li>
+            <li>
+                <a href="#Query">Реализация метода query()</a>
+            </li>
+            <li>
+                <a href="#Insert">Реализация метода insert()</a>
+            </li>
+            <li>
+                <a href="#Delete">Реализация метода delete()</a>
+            </li>
+            <li>
+                <a href="#Update">Реализация метода update()</a>
+            </li>
+            <li>
+                <a href="#OnCreate">Реализация метода onCreate()</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#MIMETypes">Реализация типов MIME поставщика контента</a>
+        <ol>
+            <li>
+                <a href="#TableMIMETypes">Типы MIME для таблиц</a>
+            </li>
+            <li>
+                <a href="#FileMIMETypes">Типы MIME для файлов</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClass">Реализация класса-контракта</a>
+    </li>
+    <li>
+        <a href="#Permissions">Реализация разрешений поставщика контента</a>
+    </li>
+    <li>
+        <a href="#ProviderElement">Элемент &lt;provider&gt;</a>
+    </li>
+    <li>
+        <a href="#Intents">Намерения и доступ к данным</a>
+    </li>
+</ol>
+<h2>Ключевые классы</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+<h2>Образцы кода по теме</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/NotePad/index.html">
+Пример приложения Note Pad
+</a>
+        </li>
+    </ol>
+<h2>См. также:</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+Основные сведения о поставщике контента</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+Поставщик календаря</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+
+<p>
+    Поставщик контента управляет доступом к центральному репозиторию данных. Реализация
+поставщика включает один или несколько классов в приложении Android, а также элементы
+в файле манифеста. Один из классов реализует подкласс
+{@link android.content.ContentProvider}, который выступает в роли интерфейса между вашим поставщиком и
+другими приложениями. Несмотря на то, что поставщики контента изначально предназначены для предоставления доступа к данным
+другим приложениям, в вашем приложении, несомненно, могут содержаться операции, которые разрешают пользователю
+запрашивать и изменять данные, управляемые вашим поставщиком.
+</p>
+<p>
+    В данной статье представлены базовые инструкции по созданию поставщика контента и список необходимых для этого
+API-интерфейсов.
+</p>
+
+
+<!-- Before You Start Building -->
+<h2 id="BeforeYouStart">Подготовка к созданию поставщика</h2>
+<p>
+    Прежде чем приступить к созданию поставщика, выполните указанные ниже действия.
+</p>
+<ol>
+    <li>
+        <strong>Решите, нужен ли вообще вам поставщик контента</strong>. Поставщик
+контента требуется в случаях, если вы хотите реализовать в своем приложении одну или несколько следующих функций:
+        <ul>
+            <li>предоставление сложных данных или файлов другим приложениям;</li>
+            <li>предоставление пользователям возможности копировать сложные данные из вашего приложения в другие приложения;</li>
+            <li>предоставление настраиваемых поисковых подсказок с помощью платформы поиска.</li>
+        </ul>
+    <p>
+        Вам <em>не нужен</em> поставщик для работы с базой данных SQLite, если ее планируется использовать
+исключительно в вашем приложении.
+    </p>
+    </li>
+    <li>
+        Если вы еще не приняли окончательное решение, ознакомьтесь со
+статьей
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">Основные сведения о поставщике контента</a>, чтобы узнать подробнее о поставщиках контента.
+    </li>
+</ol>
+<p>
+    После этого можно приступать к созданию поставщика. Для этого выполните указанные ниже действия.
+</p>
+<ol>
+    <li>
+        Спроектируйте базовое хранилище для своих данных. Поставщик контента предоставляет данные двумя способами:
+        <dl>
+            <dt>
+                Данные для файлов
+            </dt>
+            <dd>
+                Данные, которые обычно поступают в файлы, такие как
+фотографии, аудио- или видеоданные. Файлы следует хранить в закрытом
+пространстве вашего приложения. В ответ на запрос файла из другого приложения
+ваш поставщик может предложить дескриптор для файла.
+            </dd>
+            <dt>
+                Структурированные данные
+            </dt>
+            <dd>
+                Данные, которые обычно поступают в базу данных, массив или аналогичную структуру.
+                Данные следует хранить в той форме, которая совместима с таблицами из строк и столбцов. Строка
+представляет собой объект, например, пользователя, позицию или учетную единицу. Столбец
+представляет собой некоторые данные об объекте, например, имя пользователя или стоимость единицы. Обычно
+данные такого типа хранятся в базе данных SQLite, однако вы можете использовать постоянное хранилище
+любого типа. Дополнительные сведения о типах хранилищ, доступных в системе
+Android, представлены в разделе
+<a href="#DataStorage">Проектирование хранилища данных</a>.
+            </dd>
+        </dl>
+    </li>
+    <li>
+        Определите конкретную реализацию класса {@link android.content.ContentProvider}
+и его необходимые методы. Этот класс выступает в роли интерфейса между вашими данными и остальной частью системы
+Android. Дополнительные сведения об этом классе представлены в разделе
+<a href="#ContentProvider">Реализация класса ContentProvider</a>.
+    </li>
+    <li>
+        Определите строку центра поставщика, его URI контента и имена столбцов. Если необходимо,
+чтобы приложение поставщика обрабатывало намерения, также необходимо определить действия намерений, дополнительные данные
+и флаги. Кроме того, необходимо определить разрешения, которые будут необходимы приложениям для доступа к вашим
+данным. Все эти значения следует определить как константы в отдельном
+классе-контракте; в дальнейшем этот класс можно предоставить другим разработчикам. Дополнительные сведения о
+ URI контента представлены в разделе
+<a href="#ContentURI">Проектирование URI контента</a>.
+        Дополнительные сведения о намерениях представлены в разделе
+<a href="#Intents">Намерения и доступ к данным</a>.
+    </li>
+    <li>
+        Добавьте другие дополнительные компоненты, например, демонстрационные данные или реализация адаптера
+{@link android.content.AbstractThreadedSyncAdapter}, который служит для синхронизации данных между
+поставщиком и облаком.
+    </li>
+</ol>
+
+
+<!-- Designing Data Storage -->
+<h2 id="DataStorage">Проектирование хранилища данных</h2>
+<p>
+    Поставщик контента представляет собой интерфейс для передачи данных, сохраненных в структурированном формате. Прежде чем создавать
+интерфейс, определите способ хранения данных. Данные можно хранить
+в любой форме, а затем спроектировать интерфейс для чтения и записи данных при необходимости.
+</p>
+<p>
+    В Android имеются некоторые технологии хранения данных:
+</p>
+<ul>
+    <li>
+        В системе Android имеется API базы данных SQLite, который используется собственными поставщиками Android для
+хранения табличных данных. С помощью класса
+{@link android.database.sqlite.SQLiteOpenHelper} можно создавать базы данных, а класс
+{@link android.database.sqlite.SQLiteDatabase} представляет собой базовый класс для доступа
+к базам данных.
+        <p>
+            Обратите внимание, что вам не обязательно использовать базу данных для реализации своего репозитория. Поставщик представляет собой
+внешний набор таблиц, как в случае с реляционной базой данных, однако это
+не является требованием к внутренней реализации поставщика.
+        </p>
+    </li>
+    <li>
+        Для хранения данных файлов в Android предусмотрены различные API-интерфейсы для работы с файлами.
+        Дополнительные сведения о хранилище файлов представлены в статье
+<a href="{@docRoot}guide/topics/data/data-storage.html">Хранилище данных</a>. Если вы
+проектируете поставщик, который предлагает мультимедийные данные, такие как музыка или видео, можно создать поставщик,
+объединяющий табличные данные и файлы.
+    </li>
+    <li>
+        Для работы с сетевыми данными используйте классы в {@link java.net} и
+{@link android.net}. Вы также можете синхронизировать сетевые данные с локальным
+хранилищем данных (например, с базой данных), а затем предоставить такие данные в виде таблиц или файлов.
+        Такой тип синхронизации демонстрируется в
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">примере приложения адаптера синхронизации</a>.
+    </li>
+</ul>
+<h3 id="DataDesign">
+    Рекомендации по проектированию данных
+</h3>
+<p>
+    Вот несколько советов и рекомендаций, касающихся проектирования структуры данных поставщика:
+</p>
+<ul>
+    <li>
+        В табличных данных всегда должен быть столбец для «основного ключа», который поставщик хранит
+в виде уникального числового значения для каждой строки. Вы можете использовать это значение для связывания строки
+со строками в других таблицах (используя его в качестве «внешнего ключа»). Несмотря на то, что вы можете использовать любое имя
+для этого столбца, рекомендуется указать имя {@link android.provider.BaseColumns#_ID BaseColumns._ID},
+поскольку для связывания результатов запроса поставщика с
+{@link android.widget.ListView} необходимо, чтобы один из получаемых столбцов назывался
+<code>_ID</code>.
+    </li>
+    <li>
+        Если вы планируете предоставлять растровые изображения или очень большие фрагменты данных для файлов, то данные
+следует хранить в файлах, а затем предоставлять их косвенно вместо хранения таких данных прямо в
+таблице. В таком случае вам необходимо сообщить пользователям вашего поставщика о том, что для доступа к данным им потребуется воспользоваться методом
+{@link android.content.ContentResolver}.
+    </li>
+    <li>
+        Для хранения данных разного размера или с разной структурой используйте тип
+BLOB. Например, столбец BLOB можно использовать для хранения
+<a href="http://code.google.com/p/protobuf">буфера протокола</a> или
+<a href="http://www.json.org">структуры JSON</a>.
+        <p>
+            BLOB также можно использовать для реализации таблицы, <em>не зависящей от схемы</em>. В таблице
+такого типа определяются столбец основного ключа, столбец типа MIME и один
+или несколько общих столбцов BLOB. На смысл данных в столбцах BLOB
+указывает значение в столбце типа MIME. Благодаря этому в одной и той же таблице можно хранить строки
+разных типов. Примером таблицы, не зависящей от схемы, может служить таблица с данными поставщика
+контента
+{@link android.provider.ContactsContract.Data}.
+        </p>
+    </li>
+</ul>
+<!-- Designing Content URIs -->
+<h2 id="ContentURI">Проектирование URI контента</h2>
+<p>
+    <strong>URI контента</strong> представляет собой URI, который определяет данные в поставщике. URI контента
+могут включать символическое имя всего поставщика (его <strong>центр</strong>) и
+имя, которое указывает на таблицу или файл (<strong>путь</strong>). Дополнительная часть URI с идентификатором
+указывает на отдельную строку в таблице. У каждого метода доступа к данным в классе
+{@link android.content.ContentProvider} имеется URI контента (в виде аргумента); благодаря этому вы можете
+определить таблицу, строку или файл для доступа.
+</p>
+<p>
+    Базовые сведения о URI контента представлены в
+статье
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">Основные сведения о поставщике контента</a>.
+</p>
+<h3>Проектирование центра поставщика</h3>
+<p>
+    У поставщика обычно имеется только один центр, который выступает в качестве его внутреннего имени в системе Android. Во
+избежание конфликтов с другими поставщиками в качестве основы центра поставщика должны выступать сведения о владении доменом в Интернете
+(в обратном порядке). Поскольку эта рекомендация также применяется и к названиям пакетов Android,
+вы можете определить центр своего поставщика в виде расширения названия
+пакета, в котором содержится поставщик. Например, если пакет Android называется
+<code>com.example.&lt;appname&gt;</code>, то центром
+вашего поставщика должен быть <code>com.example.&lt;appname&gt;.provider</code>.
+</p>
+<h3>Проектирование структуры пути</h3>
+<p>
+    Обычно разработчики создают URI контента на основе центра поставщика, добавляя к нему путь, который указывает
+на отдельные таблицы. Например, если имеется две таблицы, <em>table1</em> и
+<em>table2</em>, центр поставщика из предыдущего примера следует объединить для формирования
+следующих URI контента:
+<code>com.example.&lt;appname&gt;.provider/table1</code> и
+<code>com.example.&lt;appname&gt;.provider/table2</code>. Пути не ограничены
+одним сегментом, и не на каждом уровне пути имеется таблица.
+</p>
+<h3>Обработка идентификаторов URI контента</h3>
+<p>
+    Обычно поставщики предоставляют доступ к одной строке в таблице путем принятия URI контента,
+в конце которого указано значение идентификатора строки. Также поставщики обычно проверяют совпадение
+значения идентификатора по столбцу <code>_ID</code> в таблице и предоставляют запрашиваемый доступ к
+соответствующей строке.
+</p>
+<p>
+    Это упрощает создание общего метода проектирования для приложений, получающих доступ к поставщику. Приложение
+отправляет запрос поставщику и отображает полученный в результате такого запроса объект {@link android.database.Cursor}
+в объекте {@link android.widget.ListView} с помощью {@link android.widget.CursorAdapter}.
+    Для определения {@link android.widget.CursorAdapter} необходимо, чтобы один из столбцов в объекте
+{@link android.database.Cursor} назывался <code>_ID</code>
+</p>
+<p>
+    Затем пользователь выбирает в пользовательском интерфейсе одну из отображаемых строк, чтобы просмотреть данные
+или изменить их. Приложение получает соответствующую строку из объекта{@link android.database.Cursor} в базовом объекте
+{@link android.widget.ListView}, получает значение <code>_ID</code> для этой строки, добавляет его к
+URI контента, а затем отправляет поставщику запрос на доступ. Затем поставщик может
+запросить или изменить строку, выбранную пользователем.
+</p>
+<h3>Шаблоны URI контента</h3>
+<p>
+    Чтобы помочь вам в выборе действия для выполнения со входящим URI контента, в API поставщика
+имеется класс {@link android.content.UriMatcher}, который сопоставляет шаблоны URI контента с
+целочисленными значениями. Такие целочисленные значения можно использовать в операторе <code>switch</code>,
+который выбирает подходящее действие для URI контента, которые соответствуют определенному шаблону.
+</p>
+<p>
+    Для определения совпадения URI контента с шаблоном используются подстановочные символы:
+</p>
+    <ul>
+        <li>
+            <strong><code>*</code>:</strong> соответствие строке любой длины с любыми допустимыми символами;
+        </li>
+        <li>
+            <strong><code>#</code>:</strong> соответствие строке любой длины с цифрами.
+        </li>
+    </ul>
+<p>
+    В качестве примера для проектирования и написания кода для обработки URI контента
+рекомендуется использовать центр поставщика<code>com.example.app.provider</code>, который распознает
+следующие URI контента, указывающие на таблицы:
+</p>
+<ul>
+    <li>
+        <code>content://com.example.app.provider/table1</code>: таблица <code>table1</code>;
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset1</code>: таблица
+<code>dataset1</code>;
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset2</code>: таблица
+<code>dataset2</code>;
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table3</code>: таблица <code>table3</code>.
+    </li>
+</ul>
+<p>
+    Поставщик также распознает следующие URI контента, если к ним добавлен идентификатор строки (например,
+<code>content://com.example.app.provider/table3/1</code> для строки с
+идентификатором<code>1</code> в таблице <code>table3</code>.
+</p>
+<p>
+    Возможно использование следующих шаблонов URI контента:
+</p>
+<dl>
+    <dt>
+        <code>content://com.example.app.provider/*</code>
+    </dt>
+    <dd>
+        Совпадает с любым URI контента в поставщике.
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table2/*</code>:
+    </dt>
+    <dd>
+        Совпадает с URI контента в таблицах <code>dataset1</code>
+и <code>dataset2</code>, однако не совпадает с URI контента в таблице <code>table1</code> или
+<code>table3</code>.
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table3/#</code>: Совпадает с URI контента
+для отдельных строк в таблице <code>table3</code>, такими как
+<code>content://com.example.app.provider/table3/6</code> для строки с идентификатором
+<code>6</code>.
+    </dt>
+</dl>
+<p>
+    Во фрагменте кода ниже показано, как работают методы в классе {@link android.content.UriMatcher}.
+    Этот код обрабатывает URI для всей таблицы иначе, чем для URI
+для отдельной строки, используя шаблон URI контента
+<code>content://&lt;authority&gt;/&lt;path&gt;</code> для таблиц и шаблон
+<code>content://&lt;authority&gt;/&lt;path&gt;/&lt;id&gt;</code> — для отдельных строк.
+</p>
+<p>
+    Метод {@link android.content.UriMatcher#addURI(String, String, int) addURI()} сопоставляет
+центр поставщика и его путь с целочисленным значением. Метод {@link android.content.UriMatcher#match(Uri)
+match()} возвращает целочисленное значение для URI. Оператор <code>switch</code>
+выбирает, следует ли ему выполнить запрос всей таблицы или только отдельной записи:
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider {
+...
+    // Creates a UriMatcher object.
+    private static final UriMatcher sUriMatcher;
+...
+    /*
+     * The calls to addURI() go here, for all of the content URI patterns that the provider
+     * should recognize. For this snippet, only the calls for table 3 are shown.
+     */
+...
+    /*
+     * Sets the integer value for multiple rows in table 3 to 1. Notice that no wildcard is used
+     * in the path
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3", 1);
+
+    /*
+     * Sets the code for a single row to 2. In this case, the "#" wildcard is
+     * used. "content://com.example.app.provider/table3/3" matches, but
+     * "content://com.example.app.provider/table3 doesn't.
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3/#", 2);
+...
+    // Implements ContentProvider.query()
+    public Cursor query(
+        Uri uri,
+        String[] projection,
+        String selection,
+        String[] selectionArgs,
+        String sortOrder) {
+...
+        /*
+         * Choose the table to query and a sort order based on the code returned for the incoming
+         * URI. Here, too, only the statements for table 3 are shown.
+         */
+        switch (sUriMatcher.match(uri)) {
+
+
+            // If the incoming URI was for all of table3
+            case 1:
+
+                if (TextUtils.isEmpty(sortOrder)) sortOrder = "_ID ASC";
+                break;
+
+            // If the incoming URI was for a single row
+            case 2:
+
+                /*
+                 * Because this URI was for a single row, the _ID value part is
+                 * present. Get the last path segment from the URI; this is the _ID value.
+                 * Then, append the value to the WHERE clause for the query
+                 */
+                selection = selection + "_ID = " uri.getLastPathSegment();
+                break;
+
+            default:
+            ...
+                // If the URI is not recognized, you should do some error handling here.
+        }
+        // call the code to actually do the query
+    }
+</pre>
+<p>
+    Другой класс, {@link android.content.ContentUris}, предоставляет удобные методы для работы с частью
+<code>id</code> URI контента. Классы {@link android.net.Uri} и
+{@link android.net.Uri.Builder} содержат удобные методы для синтаксического анализа существующих объектов
+{@link android.net.Uri} и создания новых.
+</p>
+
+<!-- Implementing the ContentProvider class -->
+<h2 id="ContentProvider">Реализация класса ContentProvider</h2>
+<p>
+    Экземпляр класса {@link android.content.ContentProvider} управляет доступом к структурированному набору данных
+ путем обработки запросов от других приложений. В конечном счете, при всех формах доступа
+вызывается метод {@link android.content.ContentResolver}, который затем вызывает конкретный метод
+{@link android.content.ContentProvider} для получения доступа.
+</p>
+<h3 id="RequiredAccess">Необходимые методы</h3>
+<p>
+    В абстрактном классе {@link android.content.ContentProvider} определены шесть абстрактных методов,
+которые необходимо реализовать в рамках вашего собственного конкретного подкласса. Все указанные ниже методы, кроме 
+{@link android.content.ContentProvider#onCreate() onCreate()}, вызываются клиентским приложением,
+которое пытается получить доступ к вашему поставщику контента.
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+query()}
+    </dt>
+    <dd>
+        Получение данных от поставщика. Использует аргументы для выбора таблицы для запроса,
+строк и столбцов, которые необходимо возвратить, и указания порядка сортировки результатов.
+        Возвращает данные в виде объекта {@link android.database.Cursor}.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}
+    </dt>
+    <dd>
+        Вставка строки в ваш поставщик. Использует аргументы для выбора
+конечной таблицы и получения значений столбца, которые следует использовать. Возвращает URI контента
+для новой вставленной строки.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+update()}
+    </dt>
+    <dd>
+        Обновление существующих строк в поставщике. Использует аргументы для выбора
+таблицы и строк для обновления, а также для получения обновленных значений столбца. Возвращает количество обновленных строк.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+    </dt>
+    <dd>
+        Удаление строк из поставщика. Использует аргументы для выбора
+таблицы и строк для удаления. Возвращает количество удаленных строк.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        Возвращение типа MIME, соответствующего URI контента. Дополнительные сведения об этом методе представлены в разделе
+<a href="#MIMETypes">Реализация типов MIME поставщика контента</a>.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#onCreate() onCreate()}
+    </dt>
+    <dd>
+        Инициализация поставщика. Система Android вызывает этот метод сразу после
+создания вашего поставщика. Обратите внимание, что поставщик не будет создан до тех пор, пока объект
+{@link android.content.ContentResolver} не прекратит попытки получить доступ к нему.
+    </dd>
+</dl>
+<p>
+    Подпись этих методов аналогична подписи для идентичных методов в объекте
+{@link android.content.ContentResolver}.
+</p>
+<p>
+    При реализации этих методов следует учитывать указанные ниже моменты.
+</p>
+<ul>
+    <li>
+        Все эти методы, кроме {@link android.content.ContentProvider#onCreate() onCreate()},
+можно вызвать сразу из нескольких потоков, поэтому они должны быть реализованы с сохранением потокобезопасности. Дополнительные сведения об
+использовании нескольких потоков представлены в
+статье
+<a href="{@docRoot}guide/components/processes-and-threads.html">Процессы и потоки</a>.
+    </li>
+    <li>
+        Избегайте слишком длинных операций в методе {@link android.content.ContentProvider#onCreate()
+onCreate()}. Отложите выполнение задач инициализации до тех пор, пока они не потребуются.
+        Дополнительные сведения об этом представлены в разделе
+<a href="#OnCreate">Реализация метода onCreate</a>.
+    </li>
+    <li>
+        Несмотря на то, что вы должны реализовать эти методы, ваш код необязательно должен выполнять какие-либо другие действия, кроме
+возврата ожидаемого типа данных. Например, может потребоваться, чтобы другие приложения не имели возможности
+вставлять данные в некоторые таблицы. Для этого можно игнорировать вызов метода
+{@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} и возвратить
+0.
+    </li>
+</ul>
+<h3 id="Query">Реализация метода query()</h3>
+<p>
+    Метод
+{@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+ContentProvider.query()} должен возвращать объект {@link android.database.Cursor}, а при сбое выдавать
+{@link java.lang.Exception}. Если в качестве хранилища данных используется база данных SQLite,
+можно просто возвратить объект {@link android.database.Cursor}, который был возвращен одним из методов
+<code>query()</code> класса {@link android.database.sqlite.SQLiteDatabase}.
+    Если запрос не соответствует ни одной строке, следует возвратить экземпляр объекта{@link android.database.Cursor}, метод
+{@link android.database.Cursor#getCount()} которого возвращает 0.
+    <code>null</code> следует возвращать только в том случае, если во время обработки запроса произошла внутренняя ошибка.
+</p>
+<p>
+    Если вы не используете базу данных SQLite в качестве хранилища данных, обратитесь к одному из конкретных подклассов объекта
+{@link android.database.Cursor}. Например, класс {@link android.database.MatrixCursor}
+реализует объект cursor, в котором каждая строка представляет собой массив класса {@link java.lang.Object}. С помощью этого класса воспользуйтесь методом
+{@link android.database.MatrixCursor#addRow(Object[]) addRow()}, чтобы добавить новую строку.
+</p>
+<p>
+    Следует помнить, что система Android должна иметь возможность взаимодействовать с {@link java.lang.Exception}
+в пределах процесса. Система Android позволяет это делать для указанных ниже исключений, которые могут быть полезны при обработке
+ошибок запросов.
+</p>
+<ul>
+    <li>
+        {@link java.lang.IllegalArgumentException} (это исключение можно выдать в случае,
+если поставщик получает недопустимый URI контента);
+    </li>
+    <li>
+        {@link java.lang.NullPointerException}.
+    </li>
+</ul>
+<h3 id="Insert">Реализация метода insert()</h3>
+<p>
+    Метод {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} добавляет новую
+строку в соответствующую строку, используя значения в аргументе
+{@link android.content.ContentValues}. Если в аргументе {@link android.content.ContentValues} отсутствует имя столбца,
+возможно, потребуется указать для него значение по умолчанию (либо в коде поставщика, либо в
+схеме базы данных).
+</p>
+<p>
+    Этот метод должен возвращать URI контента для новой строки. Для этого добавьте значение
+<code>_ID</code> новой строки (или иной основной ключ) к URI контента таблицы, используя метод
+{@link android.content.ContentUris#withAppendedId(Uri, long) withAppendedId()}.
+</p>
+<h3 id="Delete">Реализация метода delete()</h3>
+<p>
+    Методу {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+необязательно фактически удалять строки из вашего хранилища данных. Если для работы с поставщиком используется адаптер синхронизации,
+рассмотрите возможность отметки удаленной строки флагом
+delete вместо окончательного удаления строки. Адаптер синхронизации может
+проверить наличие удаленных строк с флагом delete и удалить их с сервера перед удалением их из поставщика.
+</p>
+<h3 id="Update">Реализация метода update()</h3>
+<p>
+    Метод {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+update()} принимает тот же аргумент {@link android.content.ContentValues}, который используется методом
+{@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}, и те же аргументы
+<code>selection</code> и <code>selectionArgs</code>, которые используются методами
+{@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} и
+{@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+ContentProvider.query()}. Благодаря этому код можно повторно использовать между данными методами.
+</p>
+<h3 id="OnCreate">Реализация метода onCreate()</h3>
+<p>
+    Система Android вызывает метод {@link android.content.ContentProvider#onCreate()
+onCreate()} при запуске поставщика. В этом методе следует выполнять только быстро выполняющиеся задачи
+инициализации, а создание базы данных и загрузку данных отложить до момента фактического получения
+поставщиком запроса на данные. Слишком длинные операции в методе
+{@link android.content.ContentProvider#onCreate() onCreate()} приводят к увеличению времени
+запуска поставщика. В свою очередь, это увеличивает время отклика поставщика на запросы от других
+приложений.
+</p>
+<p>
+    Например, если вы используете базу данных SQLite,
+в методе
+{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} можно создать новый объект
+{@link android.database.sqlite.SQLiteOpenHelper}, а затем создать таблицы SQL при первом открытии базы данных. Чтобы упростить это, при первом вызове метода
+{@link android.database.sqlite.SQLiteOpenHelper#getWritableDatabase
+getWritableDatabase()} он автоматически вызывает метод
+{@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+SQLiteOpenHelper.onCreate()}.
+</p>
+<p>
+    В двух указанных ниже фрагментах кода иллюстрируется взаимодействие между методом
+{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} и методом
+{@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+SQLiteOpenHelper.onCreate()}. В первом фрагменте кода представлена реализация метода
+{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()}:
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider
+
+    /*
+     * Defines a handle to the database helper object. The MainDatabaseHelper class is defined
+     * in a following snippet.
+     */
+    private MainDatabaseHelper mOpenHelper;
+
+    // Defines the database name
+    private static final String DBNAME = "mydb";
+
+    // Holds the database object
+    private SQLiteDatabase db;
+
+    public boolean onCreate() {
+
+        /*
+         * Creates a new helper object. This method always returns quickly.
+         * Notice that the database itself isn't created or opened
+         * until SQLiteOpenHelper.getWritableDatabase is called
+         */
+        mOpenHelper = new MainDatabaseHelper(
+            getContext(),        // the application context
+            DBNAME,              // the name of the database)
+            null,                // uses the default SQLite cursor
+            1                    // the version number
+        );
+
+        return true;
+    }
+
+    ...
+
+    // Implements the provider's insert method
+    public Cursor insert(Uri uri, ContentValues values) {
+        // Insert code here to determine which table to open, handle error-checking, and so forth
+
+        ...
+
+        /*
+         * Gets a writeable database. This will trigger its creation if it doesn't already exist.
+         *
+         */
+        db = mOpenHelper.getWritableDatabase();
+    }
+}
+</pre>
+<p>
+    В следующем фрагменте кода представлена реализация метода
+{@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+SQLiteOpenHelper.onCreate()}, включая вспомогательный класс:
+</p>
+<pre class="prettyprint">
+...
+// A string that defines the SQL statement for creating a table
+private static final String SQL_CREATE_MAIN = "CREATE TABLE " +
+    "main " +                       // Table's name
+    "(" +                           // The columns in the table
+    " _ID INTEGER PRIMARY KEY, " +
+    " WORD TEXT"
+    " FREQUENCY INTEGER " +
+    " LOCALE TEXT )";
+...
+/**
+ * Helper class that actually creates and manages the provider's underlying data repository.
+ */
+protected static final class MainDatabaseHelper extends SQLiteOpenHelper {
+
+    /*
+     * Instantiates an open helper for the provider's SQLite data repository
+     * Do not do database creation and upgrade here.
+     */
+    MainDatabaseHelper(Context context) {
+        super(context, DBNAME, null, 1);
+    }
+
+    /*
+     * Creates the data repository. This is called when the provider attempts to open the
+     * repository and SQLite reports that it doesn't exist.
+     */
+    public void onCreate(SQLiteDatabase db) {
+
+        // Creates the main table
+        db.execSQL(SQL_CREATE_MAIN);
+    }
+}
+</pre>
+
+
+<!-- Implementing ContentProvider MIME Types -->
+<h2 id="MIMETypes">Реализация типов MIME для класса ContentProvider</h2>
+<p>
+    В классе {@link android.content.ContentProvider} предусмотрены два метода для возврата типов MIME:
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        Один из необходимых методов, который требуется реализовать для каждого поставщика.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    </dt>
+    <dd>
+        Метод, который нужно реализовать в случае, если поставщик предоставляет файлы.
+    </dd>
+</dl>
+<h3 id="TableMIMETypes">Типы MIME для таблиц</h3>
+<p>
+    Метод {@link android.content.ContentProvider#getType(Uri) getType()} возвращает объект
+{@link java.lang.String} в формате MIME, который описывает тип данных, возвращаемых аргументом
+URI контента. Аргумент {@link android.net.Uri} может выступать в качестве шаблона, а не в виде определенного URI;
+в этом случае необходимо возвратить тип данных, связанный с URI контента, который соответствует
+шаблону.
+</p>
+<p>
+    Для общих типов данных, таких как текст, HTML или JPEG, метод
+{@link android.content.ContentProvider#getType(Uri) getType()} должен возвращать стандартный тип
+MIME. Полный список стандартных типов представлен на 
+веб-сайте
+<a href="http://www.iana.org/assignments/media-types/index.htm">IANA MIME Media Types</a>.
+</p>
+<p>
+    Для URI контента, которые указывают на одну или несколько строк табличных данных, метод
+{@link android.content.ContentProvider#getType(Uri) getType()} должен возвращать
+тип MIME в формате MIME поставщика, который имеется в системе Android:
+</p>
+<ul>
+    <li>
+        Часть типа: <code>vnd</code>
+    </li>
+    <li>
+        Часть подтипа:
+        <ul>
+            <li>
+    Если шаблон URI предназначен для одной строки: <code>android.cursor.<strong>item</strong>/</code>
+            </li>
+            <li>
+    Если шаблон URI предназначен для нескольких строк: <code>android.cursor.<strong>dir</strong>/</code>
+            </li>
+        </ul>
+    </li>
+    <li>
+        Часть поставщика: <code>vnd.&lt;name&gt;</code>.<code>&lt;type&gt;</code>
+        <p>
+            Вы указываете <code>&lt;name&gt;</code> и <code>&lt;type&gt;</code>.
+            Значение <code>&lt;name&gt;</code> должно быть уникальным глобально,
+а значение <code>&lt;type&gt;</code> должно быть уникальным для соответствующего шаблона
+URI. В качестве <code>&lt;name&gt;</code> рекомендуется использовать название вашей компании
+или часть названия пакета Android вашего приложения. В качестве
+<code>&lt;type&gt;</code> рекомендуется использовать строку, которая определяет связанную с
+URI таблицу.
+        </p>
+
+    </li>
+</ul>
+<p>
+    Например, если центром поставщика является
+<code>com.example.app.provider</code>, который предоставляет таблицу
+<code>table1</code>, то тип MIME для нескольких строк в таблице <code>table1</code> будет следующим:
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.com.example.provider.table1
+</pre>
+<p>
+    Для одной строки в таблице <code>table1</code> тип MIME будет следующим:
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.com.example.provider.table1
+</pre>
+<h3 id="FileMIMETypes">Типы MIME для файлов</h3>
+<p>
+    Если поставщик предоставляет файлы, необходимо реализовать метод
+{@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}.
+    Этот метод возвращает массив {@link java.lang.String} с типами MIME для файлов,
+возвращаемых поставщиком для заданного URI контента. Предлагаемые поставщиком типы следует сортировать с помощью аргумента фильтра типов MIME,
+чтобы возвращались только те типы MIME, которые необходимо обработать клиенту.
+</p>
+<p>
+    Например, рассмотрим поставщик, который предоставляет фотографии в виде файлов в форматах <code>.jpg</code>,
+<code>.png</code> и <code>.gif</code>.
+    Если приложение вызывает метод {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+ContentResolver.getStreamTypes()} со строкой фильтра <code>image/*</code> (нечто вроде «изображения»),
+то метод {@link android.content.ContentProvider#getStreamTypes(Uri, String)
+ContentProvider.getStreamTypes()}
+должен возвращать следующий массив:
+</p>
+<pre>
+{ &quot;image/jpeg&quot;, &quot;image/png&quot;, &quot;image/gif&quot;}
+</pre>
+<p>
+    Если же приложению требуются только файлы <code>.jpg</code>, то оно вызывает метод
+{@link android.content.ContentResolver#getStreamTypes(Uri, String)
+ContentResolver.getStreamTypes()} со строкой фильтра <code>*\/jpeg</code>; метод
+{@link android.content.ContentProvider#getStreamTypes(Uri, String)
+ContentProvider.getStreamTypes()} при этом должен возвращать следующее:
+<pre>
+{&quot;image/jpeg&quot;}
+</pre>
+<p>
+    Если поставщик не предоставляет ни один из типов MIME, запрошенных в строке фильтра, то метод
+{@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+должен возвращать <code>null</code>.
+</p>
+
+
+<!--  Implementing a Contract Class -->
+<h2 id="ContractClass">Реализация класса-контракта</h2>
+<p>
+    Класс-контракт представляет собой класс <code>public final</code>, в котором содержатся определения констант для
+URI, имен столбцов, типов MIME и других метаданных поставщика. Класс
+устанавливает контрактные отношения между поставщиком и другими приложениями путем обеспечения 
+прямого доступа к поставщику даже в случае изменения фактических значений URI, имен столбцов и 
+т. д.
+</p>
+<p>
+    Класс-контракт также полезен для разработчиков тем, что в нем содержатся мнемонические имена для его констант,
+благодаря чему снижается риск того, что разработчики воспользуются неправильными значениями для имен столбцов или URI. Поскольку это класс,
+он может содержать документацию Javadoc. Интегрированные среды разработки, такие как
+Eclipse, могут автоматически заполнять имена констант из класса-контракта и отображать Javadoc для
+констант.
+</p>
+<p>
+    У разработчиков нет доступа к файлу класса-контракта из вашего приложения, однако они могут
+статически скомпилировать класс-контракт в свое приложение из предоставленного вами файла <code>.jar</code>.
+</p>
+<p>
+    Примом класса-контракта может служить класс
+{@link android.provider.ContactsContract} и его вложенные классы.
+</p>
+<h2 id="Permissions">Реализация разрешений поставщика контента</h2>
+<p>
+    Разрешения и доступ ко всем компонентам системы Android подробно описаны в статье
+<a href="{@docRoot}guide/topics/security/security.html">Безопасность и разрешения</a>.
+    Кроме того, в статье <a href="{@docRoot}guide/topics/data/data-storage.html">Хранилище данных</a>
+представлены сведения о безопасности и разрешениях, применяемых к различным типам хранилища.
+    Ниже приведен краткий обзор основных моментов.
+</p>
+<ul>
+    <li>
+        По умолчанию файлы с данными хранятся во внутреннем хранилище устройства и доступны только
+вашему приложению и поставщику.
+    </li>
+    <li>
+        Создаваемые вами базы данных {@link android.database.sqlite.SQLiteDatabase} также доступны только вашему
+приложению и поставщику.
+    </li>
+    <li>
+        Файлы с данными, которые вы сохраняете во внешнем хранилище, по умолчанию являются <em>общедоступными</em>, которые
+<em>может считать любой пользователь</em>. Вам не удастся использовать поставщик контента для ограничения доступа к файлам,
+которые хранятся во внешнем хранилище, поскольку приложения могут использовать другие вызовы API для их чтения или записи.
+    </li>
+    <li>
+        Вызовы метода для открытия или создания файлов или баз данных SQLite, находящихся во внутреннем хранилище на вашем устройстве,
+потенциально могут предоставить всем другим приложениям доступ как на запись, так и на чтение данных. Если вы используете
+внутренний файл или базу данных в качестве репозитория поставщика, выполнить чтение или запись данных в котором может
+любой пользователь, то разрешений, заданных в манифесте поставщика, будет явно недостаточно для
+защиты ваших данных. По умолчанию доступ к файлам и базам данных
+во внутреннем хранилище является закрытым, и вам не следует изменять параметры доступа к репозиторию вашего поставщика.
+    </li>
+</ul>
+<p>
+    При необходимости использовать разрешения поставщика контента для управления доступом к данным, данные
+следует хранить во внутренних файлах, в базах данных SQLite или в облаке (например,
+на удаленном сервере), а доступ к файлам и базам данных должен быть предоставлен только вашему приложению.
+</p>
+<h3>Реализация разрешений</h3>
+<p>
+    Любое приложение может выполнять чтение данных в поставщике или записывать их, даже если соответствующие данные
+являются закрытыми, поскольку по умолчанию для поставщика не заданы разрешения. Чтобы изменить эти настройки, 
+задайте разрешения для поставщика в файле манифеста с помощью атрибутов элемента
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code> или его дочерних элементов. Можно задать разрешения, которые применяются ко всему поставщику
+или только к определенным таблицам, либо даже только к определенным записям или всему дереву.
+</p>
+<p>
+    Для задания разрешений используется один или несколько
+элементов <code><a href="{@docRoot}guide/topics/manifest/permission-element.html">
+    &lt;permission&gt;</a></code> в файле манифеста. Чтобы разрешения
+были уникальными для поставщика, используйте области, аналогичные Java, для атрибута
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html#nm">
+    android:name</a></code>. Например, присвойте разрешению на чтение имя
+<code>com.example.app.provider.permission.READ_PROVIDER</code>.
+
+</p>
+<p>
+    Ниже перечислены области разрешений для поставщика, начиная с разрешений,
+которые применяются ко всему поставщику, и заканчивая более подробными разрешениями.
+    Более подробные разрешения имеют преимущество над разрешениями с более широкими областями.
+</p>
+<dl>
+    <dt>
+        Единичное разрешение на чтение/запись на уровне поставщика
+    </dt>
+    <dd>
+        Единичное разрешение, которое управляет доступом как на чтение, так и на запись для всего поставщика, которое задается с помощью атрибута
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code> элемента
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>.
+    </dd>
+    <dt>
+        Отдельное разрешение на чтение/запись на уровне поставщика
+    </dt>
+    <dd>
+        Разрешение на чтение и запись для всего поставщика. Такие разрешения задаются с помощью атрибутов
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+        android:readPermission</a></code> и
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+        android:writePermission</a></code> элемента
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>. Они имеют преимущественную силу над разрешением, заданным с помощью атрибута
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code>.
+    </dd>
+    <dt>
+        Разрешение на уровне пути
+    </dt>
+    <dd>
+        Разрешение на чтение, запись или чтение/запись для URI контента в поставщике. Каждый
+URI, которым необходимо управлять, задается с помощью дочернего элемента
+<code><a href="{@docRoot}guide/topics/manifest/path-permission-element.html">
+        &lt;path-permission&gt;</a></code> элемента
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>. Для каждого указываемого URI контента можно задать разрешение
+на чтение/запись, только чтение или только запись, либо все три разрешения. Разрешения на чтение и
+запись имеют преимущественную силу над разрешением на чтение/запись. Кроме того, разрешения на уровне пути
+имеют преимущественную силу над разрешениями на уровне поставщика.
+    </dd>
+    <dt>
+        Временное разрешение
+    </dt>
+    <dd>
+        Разрешения этого уровня предоставляют приложению временный доступ, даже если у приложения
+нет разрешений, которые обычно требуются. Функция временного доступа
+ограничивает набор разрешений, которые приложению необходимо запросить в своем
+манифесте. Если включены временные разрешения, единственными приложениями,
+которым требуются «постоянные» разрешения на работу с поставщиком, являются те, которые непрерывно получают доступ ко всем вашим
+данным.
+        <p>
+            Рассмотрим пример с разрешениями, которые необходимо реализовать для поставщика электронной почты и приложения, когда вам
+необходимо разрешить внешнему приложению для просмотра изображений отображать вложенные в письма фотографии
+из поставщика. Чтобы предоставить средству просмотра изображений требуемый доступ без запроса разрешений,
+задайте временные разрешения для URI контента фотографий. Спроектируйте ваше приложение для работы с электронной почтой таким образом,
+чтобы в случаях, когда пользователь желает отобразить фотографию, приложение отправляло намерение, в котором содержится
+URI контента фотографии и флаги разрешения для средства просмотра изображений. Затем средство просмотра изображений
+может отправить поставщику эл. почты запрос на получение фотографии, даже если у средства просмотра отсутствует обычное
+разрешение на чтение данных из поставщика.
+        </p>
+        <p>
+            Чтобы включить временные разрешения, задайте атрибут
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> для элемента
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>, либо добавьте один или несколько дочерних элементов
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code>в ваш элемент
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>. Если вы используете временные разрешения, вам необходимо вызывать метод
+{@link android.content.Context#revokeUriPermission(Uri, int)
+Context.revokeUriPermission()} каждый раз, когда вы осуществляете удаленную поддержку URI контента
+из поставщика, а URI контента связан с временным разрешением.
+        </p>
+        <p>
+            Значение атрибута определяет, какая часть поставщика доступна.
+            Если для атрибута задано значение <code>true</code>, система предоставит временные
+разрешения для всего поставщика, отменяя тем самым любые другие разрешения, которые требуются
+на уровне поставщика или на уровне пути.
+        </p>
+        <p>
+            Если для флага задано значение <code>false</code>, вам необходимо добавить дочерние элементы
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> в свой элемент
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>. Каждый дочерний элемент задает URI контента,
+для которых предоставляется временное разрешение.
+        </p>
+        <p>
+            Чтобы делегировать приложению временный доступ, в намерении должны быть указаны флаги
+{@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION} или
+{@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION} , либо оба флага. Эти флаги задаются с помощью метода
+{@link android.content.Intent#setFlags(int) setFlags()}.
+        </p>
+        <p>
+            Если атрибут <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> отсутствует, предполагается, что его значение
+<code>false</code>.
+        </p>
+    </dd>
+</dl>
+
+
+
+<!-- The Provider Element -->
+<h2 id="ProviderElement">Элемент &lt;provider&gt;</h2>
+<p>
+    Как и компоненты {@link android.app.Activity} и {@link android.app.Service},
+подкласс класса {@link android.content.ContentProvider}
+должен быть определен в файле манифеста приложения с помощью элемента
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code>. Ниже указана информация, которую система Android получает из
+этого элемента.
+<dl>
+    <dt>
+        Центр поставщика
+(<a href="{@docRoot}guide/topics/manifest/provider-element.html#auth">{@code
+android:authorities}</a>)
+    </dt>
+    <dd>
+        Символические имена, которые идентифицируют весь поставщик в системе. Дополнительные сведения об этом атрибуте представлены в
+разделе
+<a href="#ContentURI">Проектирование URI контента</a>.
+    </dd>
+    <dt>
+        Название класса поставщика
+(<code>
+<a href="{@docRoot}guide/topics/manifest/provider-element.html#nm">android:name</a>
+        </code>)
+    </dt>
+    <dd>
+        Класс, который реализует класс {@link android.content.ContentProvider}. Дополнительные сведения об этом классе представлены в
+разделе
+<a href="#ContentProvider">Реализация класса ContentProvider</a>.
+    </dd>
+    <dt>
+        Разрешения
+    </dt>
+    <dd>
+        Атрибуты, которые определяют разрешения, необходимые другим приложениям для
+доступа к данным в поставщике:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+                android:grantUriPermssions</a></code>: флаг временного разрешения;
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+                android:permission</a></code>: единичное разрешение на чтение/запись на уровне поставщика;
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+                android:readPermission</a></code>: разрешение на чтение на уровне поставщика;
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+                android:writePermission</a></code>: разрешение на запись на уровне поставщика.
+            </li>
+        </ul>
+        <p>
+            Дополнительные сведения о разрешениях и соответствующих атрибутах представлены в
+разделе
+<a href="#Permissions">Реализация разрешений поставщика контента</a>.
+        </p>
+    </dd>
+    <dt>
+        Атрибуты запуска и управления
+    </dt>
+    <dd>
+        Следующие атрибуты определяют порядок и время запуска поставщика системой Android, характеристики
+процесса поставщика, а также другие параметры выполнения:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#enabled">
+                android:enabled</a></code>: флаг, позволяющий системе запускать поставщик;
+            </li>
+              <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#exported">
+                android:exported</a></code>: флаг, позволяющий другим приложениям использовать этот поставщик;
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#init">
+                android:initOrder</a></code>: порядок запуска поставщика
+(относительно других поставщиков в одном и том же процессе);
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#multi">
+                android:multiProcess</a></code>: флаг, позволяющий системе запускать поставщик
+в том же процессе, что и вызывающий клиент;
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#proc">
+                android:process</a></code>: название процесса, в котором
+запускается поставщик;
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#sync">
+                android:syncable</a></code>: флаг, указывающий на то, что данные в поставщике
+следует синхронизировать с данными на сервере.
+            </li>
+        </ul>
+        <p>
+            Полная документация по атрибутам представлена в статье, посвященной
+элементу
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>.
+        </p>
+    </dd>
+    <dt>
+        Информационные атрибуты
+    </dt>
+    <dd>
+        Дополнительный значок и метка для поставщика:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#icon">
+                android:icon</a></code>: графический ресурс, содержащий значок для поставщика.
+                Значок отображается рядом с меткой поставщика в списке приложений в разделе
+<em>Настройки</em> &gt; <em>Приложения</em> &gt; <em>Все</em>.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#label">
+                android:label</a></code>: информационная метка с описанием поставщика или его
+данных, либо обоих описаний. Метка отображается в списке приложений в разделе
+<em>Настройки</em> &gt; <em>Приложения</em> &gt; <em>Все</em>.
+            </li>
+        </ul>
+        <p>
+            Полная документация по атрибутам представлена в статье, посвященной
+элементу<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>.
+        </p>
+    </dd>
+</dl>
+
+<!-- Intent Access -->
+<h2 id="Intents">Намерения и доступ к данным</h2>
+<p>
+    Приложения могут получать доступ к поставщику контента в обход с помощью объектов {@link android.content.Intent}.
+    Приложение при этом не вызывает какие-либо методы классов {@link android.content.ContentResolver} или
+{@link android.content.ContentProvider}. Вместо этого оно отправляет намерение, запускающе операцию,
+которая обычно является частью собственного приложения поставщика. Получение и отображение данных в своем пользовательском интерфейсе
+выполняет конечная операция. В зависимости от действия, указанного в намерении,
+конечная операция также может предложить пользователю внести изменения в данные поставщика.
+    В намерении также могут содержаться дополнительные данные, которые конечная операция отображает в
+пользовательском интерфейсе; затем пользователю предлагается возможность изменить эти данные, прежде чем использовать их для изменения
+данных в поставщике.
+</p>
+<p>
+
+</p>
+<p>
+    Возможно, доступ с помощью намерения потребуется использовать для обеспечения целостности данных. Для вставки,
+обновления и удаления данных в поставщике может существовать строго определенный программный код, реализующий его функциональные возможности. В
+этом случае предоставление другим приложениям прямого доступа для изменения данных
+может привести к тому, что данные станут недействительными. Если вы хотите предоставить разработчикам возможность доступа посредством намерений, вам следует тщательно задокументировать такую функцию.
+    Объясните им, почему доступ посредством намерений через пользовательский интерфейс вашего приложения намного лучше изменения
+данных посредством их кода.
+</p>
+<p>
+    Обработка входящего намерения для изменения данных поставщика ничем не отличается
+от обработки других намерений. Дополнительные сведения об использовании намерений представлены в статье
+<a href="{@docRoot}guide/components/intents-filters.html">Объекты Intent и фильтры объектов Intent</a>.
+</p>
diff --git a/docs/html-intl/intl/ru/guide/topics/providers/content-providers.jd b/docs/html-intl/intl/ru/guide/topics/providers/content-providers.jd
new file mode 100644
index 0000000..3d7b651
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/providers/content-providers.jd
@@ -0,0 +1,108 @@
+page.title=Поставщики контента
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<!-- In this document -->
+<h2>Темы</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+Основные сведения о поставщике контента</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+Создание поставщика контента</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/calendar-provider.html">Поставщик календаря</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/contacts-provider.html">Поставщик контактов</a>
+    </li>
+</ol>
+
+    <!-- Related Samples -->
+<h2>Образцы кода по теме</h2>
+    <ol>
+        <li>
+            Приложение
+<a href="{@docRoot}resources/samples/ContactManager/index.html">Диспетчер контактов</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+Cursor (People)
+</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+Cursor (Phones)</a>
+        </li>
+        <li>
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+Пример адаптера синхронизации</a>
+        </li>
+    </ol>
+</div>
+</div>
+<p>
+    Поставщики контента управляют доступом к структурированному набору данных. Они инкапсулируют данные
+и предоставляют механизмы обеспечения их безопасности. Поставщики контента представляют собой стандартный
+интерфейс для объединения данных в одном процессе с кодом, который выполняется в другом процессе.
+</p>
+<p>
+    Когда вам требуется доступ к данным в поставщике контента, используйте объект
+{@link android.content.ContentResolver} в интерфейсе
+{@link android.content.Context} вашего приложения, чтобы подключиться к поставщику как клиент.
+    Объект {@link android.content.ContentResolver} взаимодействует с объектом поставщика, который представляет собой экземпляр класса, реализующий объект
+{@link android.content.ContentProvider}. Объект
+поставщика получает от клиентов запросы данных, выполняет запрашиваемые действия и
+возвращает результаты.
+</p>
+<p>
+    Вам не нужно разрабатывать собственный поставщик, если вы не планируете предоставлять доступ к своим данным
+другим приложениям. Однако вам потребуется собственный поставщик для предоставления настраиваемых
+поисковых подсказок в вашем собственном приложении. Вам также потребуется собственный поставщик, если вы хотите копировать и вставлять сложные данные или файлы из своего приложения
+в другие приложения.
+</p>
+<p>
+    В состав системы Android входят поставщики контента, которые управляют такими данными, как аудио, видео, изображения и
+личная контактная информация. Некоторые из поставщиков указаны в справочной документации для
+пакета
+<code><a href="{@docRoot}reference/android/provider/package-summary.html">android.provider</a>
+    .</code> Работать с этими поставщиками может любое приложение Android
+(однако с некоторыми ограничениями).
+</p><p>
+    Ниже перечислены статьи, в которых представлено более подробное описание поставщиков контента.
+</p>
+<dl>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+Основные сведения о поставщике контента</a></strong>
+    </dt>
+    <dd>
+        Сведения о доступе к данным в поставщике контента, которые представлены в таблицах.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+Создание поставщика контента</a></strong>
+    </dt>
+    <dd>
+        Сведения о создании своего собственного поставщика контента.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+Поставщик календаря</a></strong>
+    </dt>
+    <dd>
+        Сведения о доступе к поставщику календаря, который входит в состав платформы Android.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/contacts-provider.html">
+Поставщик контактов</a></strong>
+    </dt>
+    <dd>
+        Сведения о доступе к поставщику контактов, который входит в состав платформы Android.
+    </dd>
+</dl>
diff --git a/docs/html-intl/intl/ru/guide/topics/providers/document-provider.jd b/docs/html-intl/intl/ru/guide/topics/providers/document-provider.jd
new file mode 100644
index 0000000..c594968
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/providers/document-provider.jd
@@ -0,0 +1,916 @@
+page.title=Платформа доступа к хранилищу (Storage Access Framework)
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Содержание документа
+<a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
+        <span class="more">больше информации</span>
+        <span class="less" style="display:none">меньше информации</span></a></h2>
+<ol id="toc44" class="hide-nested">
+    <li>
+        <a href="#overview">Обзор</a>
+    </li>
+    <li>
+        <a href="#flow">Поток управления</a>
+    </li>
+    <li>
+        <a href="#client">Создание клиентского приложения</a>
+        <ol>
+        <li><a href="#search">Поиск документов</a></li>
+        <li><a href="#process">Обработка результатов</a></li>
+        <li><a href="#metadata">Изучение метаданных документа</a></li>
+        <li><a href="#open">Открытие документа</a></li>
+        <li><a href="#create">Создание нового документа</a></li>
+        <li><a href="#delete">Удаление документа</a></li>
+        <li><a href="#edit">Редактирование документа</a></li>
+        <li><a href="#permissions">Удержание прав доступа</a></li>
+        </ol>
+    </li>
+    <li><a href="#custom">Создание собственного поставщика документов</a>
+        <ol>
+        <li><a href="#manifest">Манифест</a></li>
+        <li><a href="#contract">Контракты</a></li>
+        <li><a href="#subclass">Создание подкласса класса DocumentsProvider</a></li>
+        <li><a href="#security">Безопасность</a></li>
+        </ol>
+    </li>
+
+</ol>
+<h2>Ключевые классы</h2>
+<ol>
+    <li>{@link android.provider.DocumentsProvider}</li>
+    <li>{@link android.provider.DocumentsContract}</li>
+</ol>
+
+<h2>Видео</h2>
+
+<ol>
+    <li><a href="http://www.youtube.com/watch?v=zxHVeXbK1P4">
+DevBytes: Android 4.4 Storage Access Framework: Поставщик</a></li>
+     <li><a href="http://www.youtube.com/watch?v=UFj9AEz0DHQ">
+DevBytes: Android 4.4 Storage Access Framework: Клиент</a></li>
+</ol>
+
+
+<h2>Примеры кода</h2>
+
+<ol>
+    <li><a href="{@docRoot}samples/StorageProvider/index.html">
+Класс StorageProvider</a></li>
+     <li><a href="{@docRoot}samples/StorageClient/index.html">
+Класс StorageClient</a></li>
+</ol>
+
+<h2>См. также:</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+Основные сведения о поставщике контента
+</a>
+    </li>
+</ol>
+
+</div>
+</div>
+
+
+<p>Платформа доступа к хранилищу (Storage Access Framework, SAF) впервые появилась в Android версии 4.4 (API уровня 19). Платформа SAF
+ облегчает пользователям поиск и открытие документов, изображений и других файлов
+в хранилищах всех поставщиков, с которыми они работают. Стандартный удобный интерфейс
+позволяет пользователям применять единый для всех приложений и поставщиков способ поиска файлов и доступа к последним добавленным файлам.</p>
+
+<p>Облачные или локальные службы хранения могут присоединиться к этой экосистеме, реализовав
+класс {@link android.provider.DocumentsProvider}, инкапсулирующий их услуги. Клиентские
+приложения, которым требуется доступ к документам поставщика, могут интегрироваться с SAF с помощью всего нескольких
+строчек кода.</p>
+
+<p>Платформа SAF включает в себя следующие компоненты:</p>
+
+<ul>
+<li><strong>Поставщик документов</strong>&mdash;поставщик контента, позволяющий
+службе хранения (например, Диск Google) показывать файлы, которыми он управляет. Поставщик документов
+реализуется как подкласс класса{@link android.provider.DocumentsProvider}.
+Его схема основана на традиционной файловой иерархии,
+однако физический способ хранения данных в поставщике документов остается на усмотрении разработчика.
+ Платформа Android включает в себя несколько встроенных поставщиков документов, таких как
+Загрузки, Изображения и Видео.</li>
+
+<li><strong>Клиентское приложение</strong>&mdash;пользовательское приложение, вызывающее намерение
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} и/или
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT} и принимающее
+файлы, возвращаемые поставщиками документов.</li>
+
+<li><strong>Элемент выбора</strong>&mdash;системный пользовательский интерфейс, обеспечивающий пользователям доступ к документам у всех
+поставщиков документов, которые удовлетворяют критериям поиска, заданным в клиентском приложении.</li>
+</ul>
+
+<p>Платформа SAF в числе прочих предоставляет следующие функции:</p>
+<ul>
+<li>позволяет пользователям искать контент у всех поставщиков документов, а не только у одного приложения;</li>
+<li>обеспечивает приложению возможность долговременного, постоянного доступа к
+ документам, принадлежащим поставщику документов. Благодаря такому доступу пользователи могут добавлять, редактировать,
+ сохранять и удалять файлы, хранящиеся у поставщика;</li>
+<li>поддерживает несколько учетных записей и временные корневые каталоги, например, поставщики
+на USB-накопителях, которые появляются, только когда накопитель вставлен в порт. </li>
+</ul>
+
+<h2 id ="overview">Обзор</h2>
+
+<p>В центре платформы SAF находится поставщик контента, являющийся
+подклассом класса {@link android.provider.DocumentsProvider}. Внутри <em>поставщика документов</em>данные имеют
+структуру традиционной файловой иерархии:</p>
+<p><img src="{@docRoot}images/providers/storage_datamodel.png" alt="data model" /></p>
+<p class="img-caption"><strong>Рисунок 1.</strong> Модель данных поставщика документов. На рисунке Root (Корневой каталог) указывает на один объект Document (Документ),
+который затем разветвляется в целое дерево.</p>
+
+<p>Обратите внимание на следующее.</p>
+<ul>
+
+<li>Каждый поставщик документов предоставляет один или несколько
+«корневых каталогов», являющихся отправными точками при обходе дерева документов.
+Каждый корневой каталог имеет уникальный идентификатор {@link android.provider.DocumentsContract.Root#COLUMN_ROOT_ID}
+и указывает на документ (каталог),
+представляющий содержимое на уровне ниже корневого.
+Корневые каталоги динамичны по своей конструкции, чтобы обеспечивать поддержку таким вариантам использования, как несколько учетных записей,
+временные хранилища на USB-нкопителях и возможность для пользователя войти в систему и выйти из нее.</li>
+
+<li>В каждом корневом каталоге находится один документ. Этот документ указывает на количество документов <em>N</em>
+каждый из которых, в свою очередь, может указывать на один или <em>N</em> документов. </li>
+
+<li>Каждый сервер хранилища показывает
+отдельные файлы и каталоги, ссылаясь на них с помощью уникального
+идентификатора {@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID}.
+Идентификаторы документов должны быть уникальными и не меняться после присвоения, поскольку они используются для выдачи постоянных
+URI, не зависящих от перезагрузки устройства.</li>
+
+
+<li>Документ — это или открываемый файл (имеющий конкретный MIME-тип), или
+каталог, содержащий другие документы (с
+MIME-типом {@link android.provider.DocumentsContract.Document#MIME_TYPE_DIR}).</li>
+
+<li>Каждый документ может иметь различные свойства, описываемые флагами
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS COLUMN_FLAGS},
+такими как{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_WRITE},
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE} и
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_THUMBNAIL}.
+Документ с одним и тем же идентификатором {@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} может находиться
+в нескольких каталогах.</li>
+</ul>
+
+<h2 id="flow">Поток управления</h2>
+<p>Как было сказано выше, модель данных поставщика документов основана на традиционной
+файловой иерархии. Однако физический способ хранения данных остается на усмотрение разработчика, при
+условии, что к ним можно обращаться через API-интерфейс {@link android.provider.DocumentsProvider}. Например, можно
+использовать для данных облачное хранилище на основе тегов.</p>
+
+<p>На рисунке 2 показан пример того, как приложение для обработки фотографий может использовать SAF
+для доступа к сохраненным данным:</p>
+<p><img src="{@docRoot}images/providers/storage_dataflow.png" alt="app" /></p>
+
+<p class="img-caption"><strong>Рисунок 2.</strong> Поток управления Storage Access Framework</p>
+
+<p>Обратите внимание на следующее.</p>
+<ul>
+
+<li>На платформе SAF поставщики и клиенты не взаимодействуют
+напрямую. Клиент запрашивает разрешение на взаимодействие
+с файлами (то есть, на чтение, редактирование, создание или удаление файлов).</li>
+
+<li>Взаимодействие начинается, когда приложение (в нашем примере обрабатывающее фотографии) активизирует намерение
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} или {@link android.content.Intent#ACTION_CREATE_DOCUMENT}. Намерение может включать в себя фильтры
+для уточнения критериев, например, «предоставить открываемые файлы
+с MIME-типом image».</li>
+
+<li>Когда намерение срабатывает, системный элемент выбора переходит к каждому зарегистрированному поставщику
+и показывает пользователю корневые каталоги с контентом, соответствующим запросу.</li>
+
+<li>Элемент выбора предоставляет пользователю стандартный интерфейс, даже
+если поставщики документов значительно различаются. В качестве примера на рисунке 2
+изображены Диск Google, поставщик на USB-накопителе и облачный поставщик.</li>
+</ul>
+
+<p>На рисунке 3 показан элемент выбора, в котором пользователь для поиска изображений выбрал учетную запись
+Диск Google:</p>
+
+<p><img src="{@docRoot}images/providers/storage_picker.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>Рисунок 3.</strong> Элемент выбора</p>
+
+<p>Когда пользователь выбирает Диск Google, изображения отображаются, как показано на
+рисунке 4. С этого момента пользователь может взаимодействовать с ними любыми способами,
+ которые поддерживаются поставщиком и клиентским приложением.
+
+<p><img src="{@docRoot}images/providers/storage_photos.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>Рисунок 4.</strong> Изображения</p>
+
+<h2 id="client">Создание клиентского приложения</h2>
+
+<p>В Android версии 4.3 и ниже для того, чтобы приложение могло получать файл от другого
+приложения, оно должно активизировать намерение, например, {@link android.content.Intent#ACTION_PICK}
+или {@link android.content.Intent#ACTION_GET_CONTENT}. После этого пользователь должен выбрать
+какое-либо одно приложение, чтобы получить файл, а оно должно предоставить пользователю
+интерфейс, с помощью которого он сможет выбирать и получать файлы. </p>
+
+<p>Начиная с Android 4.4 и выше, у разработчика имеется дополнительная возможность — намерение
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT},
+которое отображает пользовательский интерфейс элемента выбора, управляемого системой. Этот элемент предоставляет пользователю
+обзор всех файлов, доступных в других приложениях. Благодаря этому единому интерфейсу,
+пользователь может выбрать файл в любом из поддерживаемых приложений.</p>
+
+<p>Намерение {@link android.content.Intent#ACTION_OPEN_DOCUMENT} не
+является заменой для намерения {@link android.content.Intent#ACTION_GET_CONTENT}.
+ Разработчику следует использовать то, которое лучше соответствует потребностям приложения:</p>
+
+<ul>
+<li>используйте {@link android.content.Intent#ACTION_GET_CONTENT}, если приложению нужно просто
+прочитать или импортировать данные. При таком подходе приложение импортирует копию данных,
+ например, файл с изображением.</li>
+
+<li>используйте {@link android.content.Intent#ACTION_OPEN_DOCUMENT}, если
+приложению нужна возможность долговременного, постоянного доступа к документам, принадлежащим поставщику
+документов. В качестве примера можно назвать редактор фотографий, позволяющий пользователям обрабатывать
+изображения, хранящиеся в поставщике документов. </li>
+
+</ul>
+
+
+<p>В этом разделе показано, как написать клиентское приложение, использующее намерения
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} и
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT}.</p>
+
+
+<h3 id="search">Поиск документов</h3>
+
+<p>
+В следующем фрагменте кода намерение {@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+используется для поиска поставщиков документов,
+содержащих файлы изображений:</p>
+
+<pre>private static final int READ_REQUEST_CODE = 42;
+...
+/**
+ * Fires an intent to spin up the &quot;file chooser&quot; UI and select an image.
+ */
+public void performFileSearch() {
+
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's file
+    // browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones)
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only images, using the image MIME data type.
+    // If one wanted to search for ogg vorbis files, the type would be &quot;audio/ogg&quot;.
+    // To search for all documents available via installed storage providers,
+    // it would be &quot;*/*&quot;.
+    intent.setType(&quot;image/*&quot;);
+
+    startActivityForResult(intent, READ_REQUEST_CODE);
+}</pre>
+
+<p>Обратите внимание на следующее.</p>
+<ul>
+<li>Когда приложение активизирует намерение {@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+, оно запускает элемент выбора, отображающий всех поставщиков документов, соответствующих заданным критериям.</li>
+
+<li>Добавление категории {@link android.content.Intent#CATEGORY_OPENABLE} в
+фильтры намерения приводит к отображению только тех документов, которые можно открыть, например, файлов с изображениями.</li>
+
+<li>Оператор {@code intent.setType("image/*")} выполняет дальнейшую фильтрацию, чтобы
+отображались только документы с MIME-типом image.</li>
+</ul>
+
+<h3 id="results">Обработка результатов</h3>
+
+<p>Когда пользователь выбирает документ в элементе выбора,
+вызывается метод {@link android.app.Activity#onActivityResult onActivityResult()}.
+Идентификатор URI, указывающий на выбранный документ, содержится в параметре{@code resultData}.
+ Чтобы извлечь URI, следует вызвать {@link android.content.Intent#getData getData()}.
+Этот URI можно использовать для получения документа, нужного пользователю. Например:
+</p>
+
+<pre>&#64;Override
+public void onActivityResult(int requestCode, int resultCode,
+        Intent resultData) {
+
+    // The ACTION_OPEN_DOCUMENT intent was sent with the request code
+    // READ_REQUEST_CODE. If the request code seen here doesn't match, it's the
+    // response to some other intent, and the code below shouldn't run at all.
+
+    if (requestCode == READ_REQUEST_CODE && resultCode == Activity.RESULT_OK) {
+        // The document selected by the user won't be returned in the intent.
+        // Instead, a URI to that document will be contained in the return intent
+        // provided to this method as a parameter.
+        // Pull that URI using resultData.getData().
+        Uri uri = null;
+        if (resultData != null) {
+            uri = resultData.getData();
+            Log.i(TAG, "Uri: " + uri.toString());
+            showImage(uri);
+        }
+    }
+}
+</pre>
+
+<h3 id="metadata">Изучение метаданных документа</h3>
+
+<p>Имея в своем распоряжении URI документа, разработчик получает доступ к его метаданным. В следующем
+фрагменте кода метаданные документа, определяемого идентификатором URI, считываются и записываются в журнал:</p>
+
+<pre>public void dumpImageMetaData(Uri uri) {
+
+    // The query, since it only applies to a single document, will only return
+    // one row. There's no need to filter, sort, or select fields, since we want
+    // all fields for one document.
+    Cursor cursor = getActivity().getContentResolver()
+            .query(uri, null, null, null, null, null);
+
+    try {
+    // moveToFirst() returns false if the cursor has 0 rows.  Very handy for
+    // &quot;if there's anything to look at, look at it&quot; conditionals.
+        if (cursor != null &amp;&amp; cursor.moveToFirst()) {
+
+            // Note it's called &quot;Display Name&quot;.  This is
+            // provider-specific, and might not necessarily be the file name.
+            String displayName = cursor.getString(
+                    cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
+            Log.i(TAG, &quot;Display Name: &quot; + displayName);
+
+            int sizeIndex = cursor.getColumnIndex(OpenableColumns.SIZE);
+            // If the size is unknown, the value stored is null.  But since an
+            // int can't be null in Java, the behavior is implementation-specific,
+            // which is just a fancy term for &quot;unpredictable&quot;.  So as
+            // a rule, check if it's null before assigning to an int.  This will
+            // happen often:  The storage API allows for remote files, whose
+            // size might not be locally known.
+            String size = null;
+            if (!cursor.isNull(sizeIndex)) {
+                // Technically the column stores an int, but cursor.getString()
+                // will do the conversion automatically.
+                size = cursor.getString(sizeIndex);
+            } else {
+                size = &quot;Unknown&quot;;
+            }
+            Log.i(TAG, &quot;Size: &quot; + size);
+        }
+    } finally {
+        cursor.close();
+    }
+}
+</pre>
+
+<h3 id="open-client">Открытие документа</h3>
+
+<p>Получив URI документа, разработчик может открывать его и в целом
+делать с ним всё, что угодно.</p>
+
+<h4>Объект растровых изображений</h4>
+
+<p>Приведем пример кода для открытия объекта {@link android.graphics.Bitmap}:</p>
+
+<pre>private Bitmap getBitmapFromUri(Uri uri) throws IOException {
+    ParcelFileDescriptor parcelFileDescriptor =
+            getContentResolver().openFileDescriptor(uri, "r");
+    FileDescriptor fileDescriptor = parcelFileDescriptor.getFileDescriptor();
+    Bitmap image = BitmapFactory.decodeFileDescriptor(fileDescriptor);
+    parcelFileDescriptor.close();
+    return image;
+}
+</pre>
+
+<p>Обратите внимание, что не следует производить эту операцию в потоке пользовательского интерфейса. Ее нужно выполнять
+в фоне, с помощью {@link android.os.AsyncTask}. Когда файл с растровым изображением откроется, его
+можно отобразить в виджете {@link android.widget.ImageView}.
+</p>
+
+<h4>Получение объекта InputStream</h4>
+
+<p>Далее приведен пример того, как можно получить объект {@link java.io.InputStream} по идентификатору URI. В этом
+фрагменте кода строчки файла считываются в объект строкового типа:</p>
+
+<pre>private String readTextFromUri(Uri uri) throws IOException {
+    InputStream inputStream = getContentResolver().openInputStream(uri);
+    BufferedReader reader = new BufferedReader(new InputStreamReader(
+            inputStream));
+    StringBuilder stringBuilder = new StringBuilder();
+    String line;
+    while ((line = reader.readLine()) != null) {
+        stringBuilder.append(line);
+    }
+    fileInputStream.close();
+    parcelFileDescriptor.close();
+    return stringBuilder.toString();
+}
+</pre>
+
+<h3 id="create">Создание нового документа</h3>
+
+<p>Приложение может создать новый документ в поставщике документов, используя намерение
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT}
+. Чтобы создать файл, нужно указать в намерении MIME-тип и имя файла, а затем
+запустить его с уникальным кодом запроса. Об остальном позаботится платформа:</p>
+
+
+<pre>
+// Here are some examples of how you might call this method.
+// The first parameter is the MIME type, and the second parameter is the name
+// of the file you are creating:
+//
+// createFile("text/plain", "foobar.txt");
+// createFile("image/png", "mypicture.png");
+
+// Unique request code.
+private static final int WRITE_REQUEST_CODE = 43;
+...
+private void createFile(String mimeType, String fileName) {
+    Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as
+    // a file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Create a file with the requested MIME type.
+    intent.setType(mimeType);
+    intent.putExtra(Intent.EXTRA_TITLE, fileName);
+    startActivityForResult(intent, WRITE_REQUEST_CODE);
+}
+</pre>
+
+<p>После создания нового документа можно получить его URI с помощью
+метода {@link android.app.Activity#onActivityResult onActivityResult()}, чтобы иметь возможность
+записывать в него данные.</p>
+
+<h3 id="delete">Удаление документа</h3>
+
+<p>Если у разработчика имеется URI документа, а объект
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS Document.COLUMN_FLAGS}
+этого документа содержит флаг
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE SUPPORTS_DELETE},
+то документ можно удалить. Например:</p>
+
+<pre>
+DocumentsContract.deleteDocument(getContentResolver(), uri);
+</pre>
+
+<h3 id="edit">Редактирование документа</h3>
+
+<p>Платформа SAF позволяет редактировать текстовые документы на месте.
+В следующем фрагменте кода активизируется
+намерение {@link android.content.Intent#ACTION_OPEN_DOCUMENT}, а
+категория {@link android.content.Intent#CATEGORY_OPENABLE} используется, чтобы отображались только
+документы, которые можно открыть. Затем производится дальнейшая фильтрация, чтобы отображались только текстовые файлы:</p>
+
+<pre>
+private static final int EDIT_REQUEST_CODE = 44;
+/**
+ * Open a file for writing and append some text to it.
+ */
+ private void editDocument() {
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's
+    // file browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only text files.
+    intent.setType(&quot;text/plain&quot;);
+
+    startActivityForResult(intent, EDIT_REQUEST_CODE);
+}
+</pre>
+
+<p>Далее, из метода {@link android.app.Activity#onActivityResult onActivityResult()}
+(см. <a href="#results">Обработка результатов</a>) можно вызвать код для выполнения редактирования.
+В следующем фрагменте кода объект {@link java.io.FileOutputStream}
+получен с помощью объекта класса {@link android.content.ContentResolver}. По умолчанию используется режим записи.
+Рекомендуется запрашивать минимально необходимые права доступа, поэтому не следует запрашивать
+чтение/запись, если приложению требуется только записать файл:</p>
+
+<pre>private void alterDocument(Uri uri) {
+    try {
+        ParcelFileDescriptor pfd = getActivity().getContentResolver().
+                openFileDescriptor(uri, "w");
+        FileOutputStream fileOutputStream =
+                new FileOutputStream(pfd.getFileDescriptor());
+        fileOutputStream.write(("Overwritten by MyCloud at " +
+                System.currentTimeMillis() + "\n").getBytes());
+        // Let the document provider know you're done by closing the stream.
+        fileOutputStream.close();
+        pfd.close();
+    } catch (FileNotFoundException e) {
+        e.printStackTrace();
+    } catch (IOException e) {
+        e.printStackTrace();
+    }
+}</pre>
+
+<h3 id="permissions">Удержание прав доступа</h3>
+
+<p>Когда приложение открывает файл для чтения или записи, система предоставляет
+ему URI-разрешение на этот файл. Разрешение действует вплоть до перезагрузки устройства.
+Предположим, что в графическом редакторе требуется, чтобы у пользователя была возможность
+открыть непосредственно в этом приложении последние пять изображений, которые он редактировал. Если он
+перезапустил устройство, возникает необходимость снова отсылать его к системному элементу выбора для поиска
+файлов. Очевидно, это далеко не идеальный вариант.</p>
+
+<p>Чтобы избежать такой ситуации, разработчик может удержать права доступа, предоставленные системой
+его приложению. Приложение фактически принимает постоянное URI-разрешение,
+предлагаемое системой. В результате пользователь получает непрерывный доступ к файлам
+из приложения, независимо от перезагрузки устройства:</p>
+
+
+<pre>final int takeFlags = intent.getFlags()
+            &amp; (Intent.FLAG_GRANT_READ_URI_PERMISSION
+            | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
+// Check for the freshest data.
+getContentResolver().takePersistableUriPermission(uri, takeFlags);</pre>
+
+<p>Остается один заключительный шаг. Можно сохранить последние
+URI-идентификаторы, с которыми работало приложение. Однако не исключено, что они потеряют актуальность, поскольку другое приложение
+может удалить или модифицировать документ. Поэтому следует всегда вызывать
+{@code getContentResolver().takePersistableUriPermission()}, чтобы получать
+актуальные данные.</p>
+
+<h2 id="custom">Создание собственного поставщика документов</h2>
+
+<p>
+При разработке приложения, оказывающего услуги по хранению файлов (например,
+службы хранения в облаке), можно предоставить доступ к файлам при помощи
+SAF, написав собственный поставщик документов.  В этом разделе показано,
+как это сделать.</p>
+
+
+<h3 id="manifest">Манифест</h3>
+
+<p>Чтобы реализовать собственный поставщик документов, необходимо добавить в манифест приложения
+следующую информацию:</p>
+<ul>
+
+<li>Целевой API-интерфейс уровня 19 или выше.</li>
+
+<li>Элемент <code>&lt;provider&gt;</code>, в котором объявляется нестандартный поставщик
+ хранилища. </li>
+
+<li>Имя поставщика, т. е., имя его класса с именем пакета.
+Например: <code>com.example.android.storageprovider.MyCloudProvider</code>.</li>
+
+<li>Имя центра поставщика, т. е. имя пакета (в этом примере —
+<code>com.example.android.storageprovider</code>) с типом поставщика контента
+(<code>documents</code>). Например,{@code com.example.android.storageprovider.documents}.</li>
+
+<li>Атрибут <code>android:exported</code>, установленный в значение <code>&quot;true&quot;</code>.
+ Необходимо экспортировать поставщик, чтобы он был виден другим приложениям.</li>
+
+<li>Атрибут <code>android:grantUriPermissions</code>, установленный в значение 
+<code>&quot;true&quot;</code>. Этот параметр позволяет системе предоставлять другим приложениям доступ
+к контенту поставщика. Обсуждение того, как следует удерживать права доступа
+к конкретному документу см. в разделе <a href="#permissions">Удержание прав доступа</a>.</li>
+
+<li>Разрешение {@code MANAGE_DOCUMENTS}. По умолчанию поставщик доступен
+всем. Добавление этого разрешения в манифест делает поставщик доступным только системе.
+Это важно для обеспечения безопасности.</li>
+
+<li>Атрибут {@code android:enabled}, имеющий логическое значение, определенное в файле
+ресурсов. Этот атрибут предназначен для отключения поставщика на устройствах под управлением Android версии 4.3 и ниже.
+ Например: {@code android:enabled="@bool/atLeastKitKat"}. Помимо
+включения этого атрибута в манифест, необходимо сделать следующее:
+<ul>
+<li>В файл ресурсов {@code bool.xml}, расположенный в каталоге {@code res/values/}, добавить
+строчку <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>В файл ресурсов {@code bool.xml}, расположенный в каталоге {@code res/values-v19/}, добавить
+строчку <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;true&lt;/bool&gt;</pre></li>
+</ul></li>
+
+<li>Фильтр намерения с действием
+{@code android.content.action.DOCUMENTS_PROVIDER}, чтобы поставщик
+появлялся в элементе выбора, когда система будет искать поставщиков.</li>
+
+</ul>
+<p>Ниже приведены отрывки из образца манифеста, включающего в себя поставщик:</p>
+
+<pre>&lt;manifest... &gt;
+    ...
+    &lt;uses-sdk
+        android:minSdkVersion=&quot;19&quot;
+        android:targetSdkVersion=&quot;19&quot; /&gt;
+        ....
+        &lt;provider
+            android:name=&quot;com.example.android.storageprovider.MyCloudProvider&quot;
+            android:authorities=&quot;com.example.android.storageprovider.documents&quot;
+            android:grantUriPermissions=&quot;true&quot;
+            android:exported=&quot;true&quot;
+            android:permission=&quot;android.permission.MANAGE_DOCUMENTS&quot;
+            android:enabled=&quot;&#64;bool/atLeastKitKat&quot;&gt;
+            &lt;intent-filter&gt;
+                &lt;action android:name=&quot;android.content.action.DOCUMENTS_PROVIDER&quot; /&gt;
+            &lt;/intent-filter&gt;
+        &lt;/provider&gt;
+    &lt;/application&gt;
+
+&lt;/manifest&gt;</pre>
+
+<h4 id="43">Поддержка устройств под управлением Android версии 4.3 и ниже</h4>
+
+<p>Намерение
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} доступно только
+на устройствах с Android версии 4.4 и выше.
+Если приложение должно поддерживать {@link android.content.Intent#ACTION_GET_CONTENT},
+чтобы обслуживать устройства, работающие под управлением Android 4.3 и ниже, необходимо
+отключить фильтр намерения {@link android.content.Intent#ACTION_GET_CONTENT} в
+манифесте для устройств с Android версии 4.4 и выше. Поставщик
+документов и намерение {@link android.content.Intent#ACTION_GET_CONTENT} следует считать
+взаимоисключающими. Если приложение поддерживает их одновременно, оно
+будет появляться в пользовательском интерфейсе системного элемента выбора дважды, предлагая два различных способа доступа
+к сохраненным данным. Это запутает пользователей.</p>
+
+<p>Отключать фильтр намерения
+{@link android.content.Intent#ACTION_GET_CONTENT} на устройствах
+с Android версии 4.4 и выше рекомендуется следующим образом:</p>
+
+<ol>
+<li>В файл ресурсов {@code bool.xml}, расположенный в каталоге {@code res/values/}, добавить
+следующую строку: <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;true&lt;/bool&gt;</pre></li>
+
+<li>В файл ресурсов {@code bool.xml}, расположенный в каталоге {@code res/values-v19/}, добавить
+следующую строку: <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>Добавить
+<a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">псевдоним
+операции</a>, чтобы отключить фильтр намерения {@link android.content.Intent#ACTION_GET_CONTENT}
+для версий 4.4 (API уровня 19) и выше. Например:
+
+<pre>
+&lt;!-- This activity alias is added so that GET_CONTENT intent-filter
+     can be disabled for builds on API level 19 and higher. --&gt;
+&lt;activity-alias android:name=&quot;com.android.example.app.MyPicker&quot;
+        android:targetActivity=&quot;com.android.example.app.MyActivity&quot;
+        ...
+        android:enabled=&quot;@bool/atMostJellyBeanMR2&quot;&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name=&quot;android.intent.action.GET_CONTENT&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.OPENABLE&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.DEFAULT&quot; /&gt;
+        &lt;data android:mimeType=&quot;image/*&quot; /&gt;
+        &lt;data android:mimeType=&quot;video/*&quot; /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity-alias&gt;
+</pre>
+</li>
+</ol>
+<h3 id="contract">Контракты</h3>
+
+<p>Как правило, при создании нестандартного поставщика контента одной из задач
+является реализация классов-контрактов, описанная в руководстве для разработчиков
+<a href="{@docRoot}guide/topics/providers/content-provider-creating.html#ContractClass">
+Поставщики контента</a>. Класс-контракт представляет собой класс {@code public final},
+в котором содержатся определения констант для URI, имен столбцов, типов MIME и
+других метаданных поставщика. Платформа SAF
+предоставляет разработчику следующие классы-контракты, так что ему не нужно писать
+собственные:</p>
+
+<ul>
+   <li>{@link android.provider.DocumentsContract.Document}</li>
+   <li>{@link android.provider.DocumentsContract.Root}</li>
+</ul>
+
+<p>Например, когда
+к поставщику документов приходит запрос на документы или корневой каталог, можно возвращать в курсоре следующие столбцы:</p>
+
+<pre>private static final String[] DEFAULT_ROOT_PROJECTION =
+        new String[]{Root.COLUMN_ROOT_ID, Root.COLUMN_MIME_TYPES,
+        Root.COLUMN_FLAGS, Root.COLUMN_ICON, Root.COLUMN_TITLE,
+        Root.COLUMN_SUMMARY, Root.COLUMN_DOCUMENT_ID,
+        Root.COLUMN_AVAILABLE_BYTES,};
+private static final String[] DEFAULT_DOCUMENT_PROJECTION = new
+        String[]{Document.COLUMN_DOCUMENT_ID, Document.COLUMN_MIME_TYPE,
+        Document.COLUMN_DISPLAY_NAME, Document.COLUMN_LAST_MODIFIED,
+        Document.COLUMN_FLAGS, Document.COLUMN_SIZE,};
+</pre>
+
+<h3 id="subclass">Создание подкласса класса DocumentsProvider</h3>
+
+<p>Следующим шагом в разработке собственного поставщика документов является создание подкласса
+абстрактного класса {@link android.provider.DocumentsProvider}. Как минимум, необходимо
+реализовать следующие методы:</p>
+
+<ul>
+<li>{@link android.provider.DocumentsProvider#queryRoots queryRoots()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryDocument queryDocument()}</li>
+
+<li>{@link android.provider.DocumentsProvider#openDocument openDocument()}</li>
+</ul>
+
+<p>Это единственные методы, реализация которых строго обязательна, однако существует
+намного больше методов, которые, возможно, тоже придется реализовать. Подробности приводятся в описании класса{@link android.provider.DocumentsProvider}
+.</p>
+
+<h4 id="queryRoots">Реализация метода queryRoots</h4>
+
+<p>Реализация метода {@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} должна возвращать объект {@link android.database.Cursor}, указывающий на все
+корневые каталоги поставщиков документов, используя столбцы, определенные в
+{@link android.provider.DocumentsContract.Root}.</p>
+
+<p>В следующем фрагменте кода параметр {@code projection} представляет
+конкретные поля, нужные вызывающему объекту. В этом коде создается курсор,
+и к нему добавляется одна строка, соответствующая одному корневому каталогу (каталогу верхнего уровня), например,
+Загрузки или Изображения.  Большинство поставщиков имеет только один корневой каталог. Однако ничто не мешает иметь несколько корневых каталогов,
+например, при наличии нескольких учетных записей. В этом случае достаточно добавить в
+курсор еще одну строку.</p>
+
+<pre>
+&#64;Override
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+
+    // Create a cursor with either the requested fields, or the default
+    // projection if "projection" is null.
+    final MatrixCursor result =
+            new MatrixCursor(resolveRootProjection(projection));
+
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+    }
+
+    // It's possible to have multiple roots (e.g. for multiple accounts in the
+    // same app) -- just add multiple cursor rows.
+    // Construct one row for a root called &quot;MyCloud&quot;.
+    final MatrixCursor.RowBuilder row = result.newRow();
+    row.add(Root.COLUMN_ROOT_ID, ROOT);
+    row.add(Root.COLUMN_SUMMARY, getContext().getString(R.string.root_summary));
+
+    // FLAG_SUPPORTS_CREATE means at least one directory under the root supports
+    // creating documents. FLAG_SUPPORTS_RECENTS means your application's most
+    // recently used documents will show up in the &quot;Recents&quot; category.
+    // FLAG_SUPPORTS_SEARCH allows users to search all documents the application
+    // shares.
+    row.add(Root.COLUMN_FLAGS, Root.FLAG_SUPPORTS_CREATE |
+            Root.FLAG_SUPPORTS_RECENTS |
+            Root.FLAG_SUPPORTS_SEARCH);
+
+    // COLUMN_TITLE is the root title (e.g. Gallery, Drive).
+    row.add(Root.COLUMN_TITLE, getContext().getString(R.string.title));
+
+    // This document id cannot change once it's shared.
+    row.add(Root.COLUMN_DOCUMENT_ID, getDocIdForFile(mBaseDir));
+
+    // The child MIME types are used to filter the roots and only present to the
+    //  user roots that contain the desired type somewhere in their file hierarchy.
+    row.add(Root.COLUMN_MIME_TYPES, getChildMimeTypes(mBaseDir));
+    row.add(Root.COLUMN_AVAILABLE_BYTES, mBaseDir.getFreeSpace());
+    row.add(Root.COLUMN_ICON, R.drawable.ic_launcher);
+
+    return result;
+}</pre>
+
+<h4 id="queryChildDocuments">Реализация метода queryChildDocuments</h4>
+
+<p>Реализация метода 
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}
+должна возвращать объект{@link android.database.Cursor}, указывающий на все файлы в
+заданном каталоге, используя столбцы, определенные в
+{@link android.provider.DocumentsContract.Document}.</p>
+
+<p>Этот метод вызывается, когда в интерфейсе элемента выбора пользователь выбирает корневой каталог приложения.
+Метод получает документы-потомки каталога на уровне ниже корневого.  Его можно вызывать на любом уровне
+файловой иерархии, а не только в корневом каталоге. В следующем фрагменте кода
+создается курсор с запрошенными столбцами. Затем в него заносится информация о
+каждом ближайшем потомке родительского каталога.
+Потомком может быть изображение, еще один каталог, в общем, любой файл:</p>
+
+<pre>&#64;Override
+public Cursor queryChildDocuments(String parentDocumentId, String[] projection,
+                              String sortOrder) throws FileNotFoundException {
+
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    final File parent = getFileForDocId(parentDocumentId);
+    for (File file : parent.listFiles()) {
+        // Adds the file's display name, MIME type, size, and so on.
+        includeFile(result, null, file);
+    }
+    return result;
+}
+</pre>
+
+<h4 id="queryDocument">Реализация метода queryDocument</h4>
+
+<p>Реализация метода
+{@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+должна возвращать объект{@link android.database.Cursor}, указывающий на заданный файл,
+используя столбцы, определенные в{@link android.provider.DocumentsContract.Document}.
+</p>
+
+<p>Метод {@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+возвращает ту же информацию, которую возвращал
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()},
+но для конкретного файла:</p>
+
+
+<pre>&#64;Override
+public Cursor queryDocument(String documentId, String[] projection) throws
+        FileNotFoundException {
+
+    // Create a cursor with the requested projection, or the default projection.
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    includeFile(result, documentId, null);
+    return result;
+}
+</pre>
+
+<h4 id="openDocument">Реализация метода openDocument</h4>
+
+<p>Необходимо реализовать метод {@link android.provider.DocumentsProvider#openDocument
+openDocument()}, который возвращает объект {@link android.os.ParcelFileDescriptor}, представляющий
+указанный файл. Другие приложения смогут воспользоваться возращенным объектом {@link android.os.ParcelFileDescriptor}
+для организации потока данных. Система вызывает этот метод, когда пользователь выбирает файл,
+и клиентское приложение запрашивает доступ нему, вызывая
+метод {@link android.content.ContentResolver#openFileDescriptor openFileDescriptor()}.
+Например:</p>
+
+<pre>&#64;Override
+public ParcelFileDescriptor openDocument(final String documentId,
+                                         final String mode,
+                                         CancellationSignal signal) throws
+        FileNotFoundException {
+    Log.v(TAG, &quot;openDocument, mode: &quot; + mode);
+    // It's OK to do network operations in this method to download the document,
+    // as long as you periodically check the CancellationSignal. If you have an
+    // extremely large file to transfer from the network, a better solution may
+    // be pipes or sockets (see ParcelFileDescriptor for helper methods).
+
+    final File file = getFileForDocId(documentId);
+
+    final boolean isWrite = (mode.indexOf('w') != -1);
+    if(isWrite) {
+        // Attach a close listener if the document is opened in write mode.
+        try {
+            Handler handler = new Handler(getContext().getMainLooper());
+            return ParcelFileDescriptor.open(file, accessMode, handler,
+                        new ParcelFileDescriptor.OnCloseListener() {
+                &#64;Override
+                public void onClose(IOException e) {
+
+                    // Update the file with the cloud server. The client is done
+                    // writing.
+                    Log.i(TAG, &quot;A file with id &quot; +
+                    documentId + &quot; has been closed!
+                    Time to &quot; +
+                    &quot;update the server.&quot;);
+                }
+
+            });
+        } catch (IOException e) {
+            throw new FileNotFoundException(&quot;Failed to open document with id &quot;
+            + documentId + &quot; and mode &quot; + mode);
+        }
+    } else {
+        return ParcelFileDescriptor.open(file, accessMode);
+    }
+}
+</pre>
+
+<h3 id="security">Безопасность</h3>
+
+<p>Предположим, что поставщик документов представляет собой защищенную паролем службу хранения в облаке,
+а приложение должно убедиться, что пользователь вошел в систему, прежде чем оно предоставит ему доступ к файлам.
+Что должно предпринять приложение, если пользователь не выполнил вход?  Решение состоит в том, чтобы
+реализация метода {@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} не возвращала корневых каталогов. Иными словами, это должен быть пустой корневой курсор:</p>
+
+<pre>
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+...
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+}
+</pre>
+
+<p>Следующий шаг состоит в вызове метода {@code getContentResolver().notifyChange()}.
+Помните объект {@link android.provider.DocumentsContract}?  Воспользуемся им для создания
+соответствующего URI. В следующем фрагменте кода система извещается о необходимости опрашивать корневые каталоги
+поставщика документов, когда меняется статус входа пользователя в систему. Если пользователь не
+выполнил вход, метод {@link android.provider.DocumentsProvider#queryRoots queryRoots()} возвратит
+пустой курсор, как показано выше. Это гарантирует, что документы поставщика будут
+доступны только пользователям, вошедшим в поставщик.</p>
+
+<pre>private void onLoginButtonClick() {
+    loginOrLogout();
+    getContentResolver().notifyChange(DocumentsContract
+            .buildRootsUri(AUTHORITY), null);
+}
+</pre>
\ No newline at end of file
diff --git a/docs/html-intl/intl/ru/guide/topics/resources/accessing-resources.jd b/docs/html-intl/intl/ru/guide/topics/resources/accessing-resources.jd
new file mode 100644
index 0000000..3d59ceb
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/resources/accessing-resources.jd
@@ -0,0 +1,337 @@
+page.title=Доступ к ресурсам
+parent.title=Ресурсы приложения
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Краткое описание</h2>
+  <ul>
+    <li>В коде для создания ссылок на ресурсы можно использовать целочисленные переменные из {@code R.java}, такие как
+{@code R.drawable.myimage}</li>
+    <li>Для создания ссылок на ресурсы из самих ресурсов можно использовать особый синтаксис XML, например {@code
+&#64;drawable/myimage}</li>
+    <li>Также для доступа к ресурсам приложения используются методы класса
+{@link android.content.res.Resources}</li>
+  </ul>
+
+  <h2>Ключевые классы</h2>
+  <ol>
+    <li>{@link android.content.res.Resources}</li>
+  </ol>
+
+  <h2>Содержание документа</h2>
+  <ol>
+    <li><a href="#ResourcesFromCode">Доступ к ресурсам из кода</a></li>
+    <li><a href="#ResourcesFromXml">Доступ к ресурсам из XML</a>
+      <ol>
+        <li><a href="#ReferencesToThemeAttributes">Ссылка на атрибуты стиля</a></li>
+      </ol>
+    </li>
+    <li><a href="#PlatformResources">Доступ к ресурсам платформы</a></li>
+  </ol>
+
+  <h2>См. также:</h2>
+  <ol>
+    <li><a href="providing-resources.html">Предоставление ресурсов</a></li>
+    <li><a href="available-resources.html">Типы ресурсов</a></li>
+  </ol>
+</div>
+</div>
+
+
+
+
+<p>После того, как вы предоставили ресурс в вашем приложении (см. раздел <a href="providing-resources.html">Предоставление ресурсов</a>), этот ресурс можно применить. Для этого необходимо создать
+ссылку на идентификатор ресурса. Для задания всех таких идентификаторов в вашем проекте используется класс {@code R}, который автоматически создается инструментом
+{@code aapt}.</p>
+
+<p>Во время компиляции приложения инструмент {@code aapt} создает класс {@code R}, в котором находятся
+идентификаторы для всех ресурсов в каталоге {@code
+res/}. Для каждого типа ресурсов предусмотрен подкласс {@code R} (например,
+класс {@code R.drawable} для элементов дизайна), а для каждого ресурса указанного типа существует статическая
+целочисленная переменная (например, {@code R.drawable.icon}). Эта переменная как раз и служит идентификатором ресурса, которую можно
+использовать для его получения.</p>
+
+<p>Несмотря на то, что в классе {@code R} находятся идентификаторы ресурсов, никогда не обращайтесь к нему
+для поиска идентификатора ресурса. Последний состоит из следующих компонентов:</p>
+<ul>
+  <li><em>Тип ресурса</em>: ресурсы объединены по типам, таким как {@code
+string}, {@code drawable} и {@code layout}. Дополнительные сведения о различных типах представлены в разделе <a href="available-resources.html">Типы ресурсов</a>.
+  </li>
+  <li><em>Имя ресурса</em>, в качестве которого выступает либо имя файла
+(без расширения), либо значение атрибута XML {@code android:name} (если
+ресурс представляет собой простое значение, например строку).</li>
+</ul>
+
+<p>Существует два способа доступа к ресурсу.</p>
+<ul>
+  <li><strong>Из кода:</strong> с помощью статической целочисленной переменной из подкласса вашего класса {@code R}
+, например:
+    <pre class="classic no-pretty-print">R.string.hello</pre>
+    <p>{@code string} — это тип ресурса, а {@code hello} — это его имя. Существует множество API-интерфейсов
+Android, которые могут получать доступ к ресурсам, идентификаторы которых указаны в этом формате. См. раздел
+<a href="#ResourcesFromCode">Доступ к ресурсам из кода</a>.</p>
+  </li>
+  <li><strong>Из XML:</strong> с помощью особого синтаксиса XML, который также соответствует
+идентификатору ресурса, заданному в классе {@code R}, например:
+    <pre class="classic no-pretty-print">&#64;string/hello</pre>
+    <p>{@code string} — это тип ресурса, а {@code hello} — это его имя. Этот синтаксис можно
+использовать в любом фрагменте ресурса XML, где ожидается значение, указанное вами в ресурсе. См. раздел <a href="#ResourcesFromXml">Доступ к ресурсам из XML</a></p>
+  </li>
+</ul>
+
+
+
+<h2 id="ResourcesFromCode">Доступ к ресурсам из кода </h2>
+
+<p>Чтобы использовать ресурс в коде, можно передать идентификатор ресурса в виде параметра метода. Например, с
+помощью метода {@link android.widget.ImageView#setImageResource(int) setImageResource()} можно указать использование виджетом {@link android.widget.ImageView} ресурса {@code res/drawable/myimage.png}:
+</p>
+<pre>
+ImageView imageView = (ImageView) findViewById(R.id.myimageview);
+imageView.setImageResource(<strong>R.drawable.myimage</strong>);
+</pre>
+
+<p>Отдельные ресурсы также можно получать с помощью методов в классе {@link
+android.content.res.Resources}, экземпляр которого можно получить с помощью
+метода {@link android.content.Context#getResources()}.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Доступ к исходным файлам</h2>
+
+<p>В редких случаях может потребоваться получить доступ к исходным файлам и каталогам. В этом случае просто сохранить
+файлы в каталоге {@code res/} будет недостаточно, поскольку обратиться к ресурсу из папки
+{@code res/} можно только по его идентификатору. Вместо этого ресурсы можно сохранить в каталоге
+{@code assets/}.</p>
+<p>Файлам, которые сохранены в каталоге {@code assets/}, <em>не</em> присваиваются идентификаторы
+ресурсов, поэтому вам не удастся сослаться на них с помощью класса {@code R} или из ресурсов XML. Вместо этого можно
+запросить файлы из каталога {@code assets/}, как в обычной файловой системе, и считать необработанные данные с помощью
+{@link android.content.res.AssetManager}.</p>
+<p>Однако, если вам требуется всего лишь возможность считать необработанные данные (например, видео- или аудиофайл),
+ сохраните требуемый файл в каталоге {@code res/raw/} и считайте поток байтов с помощью метода {@link
+android.content.res.Resources#openRawResource(int) openRawResource()}.</p>
+
+</div>
+</div>
+
+
+<h3>Синтаксис</h3>
+
+<p>Ниже представлен синтаксис ссылки на ресурс из кода.</p>
+
+<pre class="classic no-pretty-print">
+[<em>&lt;package_name&gt;</em>.]R.<em>&lt;resource_type&gt;</em>.<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li><em>{@code &lt;package_name&gt;}</em> — это имя пакета, в котором находится ресурс (не
+требуется при создании ссылок на ресурсы из вашего собственного пакета).</li>
+  <li><em>{@code &lt;resource_type&gt;}</em> — это подкласс {@code R} для типа ресурса.</li>
+  <li><em>{@code &lt;resource_name&gt;}</em> — это либо имя файла
+ресурса (без расширения), либо значение атрибута {@code android:name} в элементе XML (для простых
+значений).</li>
+</ul>
+<p>Дополнительные сведения о каждом типе
+ресурсов и порядке создания ссылок на них см. в разделе <a href="available-resources.html">Типы ресурсов</a>.</p>
+
+
+<h3>Примеры использования</h3>
+
+<p>Существует множество методов, которые могут принимать идентификатор ресурса в виде параметра. Для получения ресурсов можно использовать методы,
+представленные в классе {@link android.content.res.Resources}. Можно получить экземпляр {@link
+android.content.res.Resources} с помощью {@link android.content.Context#getResources
+Context.getResources()}.</p>
+
+
+<p>Вот некоторые примеры доступа к ресурсам из кода:</p>
+
+<pre>
+// Load a background for the current screen from a drawable resource
+{@link android.app.Activity#getWindow()}.{@link
+android.view.Window#setBackgroundDrawableResource(int)
+setBackgroundDrawableResource}(<strong>R.drawable.my_background_image</strong>) ;
+
+// Set the Activity title by getting a string from the Resources object, because
+//  this method requires a CharSequence rather than a resource ID
+{@link android.app.Activity#getWindow()}.{@link android.view.Window#setTitle(CharSequence)
+setTitle}(getResources().{@link android.content.res.Resources#getText(int)
+getText}(<strong>R.string.main_title</strong>));
+
+// Load a custom layout for the current screen
+{@link android.app.Activity#setContentView(int)
+setContentView}(<strong>R.layout.main_screen</strong>);
+
+// Set a slide in animation by getting an Animation from the Resources object
+mFlipper.{@link android.widget.ViewAnimator#setInAnimation(Animation)
+setInAnimation}(AnimationUtils.loadAnimation(this,
+        <strong>R.anim.hyperspace_in</strong>));
+
+// Set the text on a TextView object using a resource ID
+TextView msgTextView = (TextView) findViewById(<strong>R.id.msg</strong>);
+msgTextView.{@link android.widget.TextView#setText(int)
+setText}(<strong>R.string.hello_message</strong>);
+</pre>
+
+
+<p class="caution"><strong>Внимание!</strong> Никогда не изменяйте файл {@code
+R.java} вручную &mdash; этот файл создается инструментом {@code aapt} во время компиляции вашего
+проекта. Любые внесенные в него изменения перезаписываются после следующей компиляции.</p>
+
+
+
+<h2 id="ResourcesFromXml">Доступ к ресурсам из XML</h2>
+
+<p>Для задания значений для некоторых атрибутов и элементов XML можно использовать
+ссылку на существующий ресурс. Это зачастую требуется при создании файлов макета при
+указании строк и изображений для виджетов.</p>
+
+<p>Например, при добавлении в макет элемента {@link android.widget.Button} необходимо использовать
+<a href="string-resource.html">строковый ресурс</a> для надписи на кнопке:</p>
+
+<pre>
+&lt;Button
+    android:layout_width="fill_parent"
+    android:layout_height="wrap_content"
+    android:text="<strong>@string/submit</strong>" /&gt;
+</pre>
+
+
+<h3>Синтаксис</h3>
+
+<p>Ниже представлен синтаксис ссылки на ресурс из ресурса XML.</p>
+
+<pre class="classic no-pretty-print">
+&#64;[<em>&lt;package_name&gt;</em>:]<em>&lt;resource_type&gt;</em>/<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li>{@code &lt;package_name&gt;} — это имя пакета, в котором находится ресурс (не
+требуется при создании ссылок на ресурсы из одного и того же пакета).</li>
+  <li>{@code &lt;resource_type&gt;} — это подкласс 
+{@code R} для типа ресурса.</li>
+  <li>{@code &lt;resource_name&gt;} — это либо имя файла
+ресурса (без расширения), либо значение атрибута {@code android:name} в элементе XML (для простых
+значений).</li>
+</ul>
+
+<p>Дополнительные сведения о каждом типе
+ресурсов и порядке создания ссылок на них см. в разделе <a href="available-resources.html">Типы ресурсов</a>.</p>
+
+
+<h3>Примеры использования</h3>
+
+<p>В некоторых случаях ресурс необходимо использовать в качестве значения в элементе XML (например, чтобы применить графическое изображение к 
+виджету), однако вы также можете использовать ресурс в любом фрагменте XML, где ожидается простое значение. Например,
+если имеется следующий файл ресурса, включающий <a href="more-resources.html#Color">цветовой ресурс</a> и <a href="string-resource.html">строковый ресурс</a>:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+   &lt;color name="opaque_red">#f00&lt;/color>
+   &lt;string name="hello">Hello!&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>Эти ресурсы можно использовать в следующем файле макета для задания цвета текста и
+надписи:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;color/opaque_red</strong>&quot;
+    android:text=&quot;<strong>&#64;string/hello</strong>&quot; /&gt;
+</pre>
+
+<p>В этом случае в ссылке на ресурс не нужно указывать имя пакета, поскольку
+ресурсы находятся в вашем собственном пакете. Однако для создания
+ссылки на системный ресурс вам потребуется указать имя пакета. Например:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;android:color/secondary_text_dark</strong>&quot;
+    android:text=&quot;&#64;string/hello&quot; /&gt;
+</pre>
+
+<p class="note"><strong>Примечание.</strong> Всегда используйте строковые ресурсы,
+поскольку ваше приложение может потребоваться перевести на другие языки. 
+Сведения о создании альтернативных
+ресурсов (например, локализованных строк) представлены в разделе <a href="providing-resources.html#AlternativeResources">Предоставление альтернативных
+ресурсов</a>. В разделе <a href="localization.html">Локализация</a> приведено полное руководство по локализации
+приложения.</p>
+
+<p>Вы даже можете использовать ресурсы в XML для создания псевдонимов. Например, можно создать 
+элемент дизайна, который будет служить псевдонимом для другого элемента дизайна:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/other_drawable" />
+</pre>
+
+<p>Это может показаться излишним, однако такой подход очень полезен при использовании альтернативных ресурсов. Узнайте подробнее о
+<a href="providing-resources.html#AliasResources">создании псевдонимов ресурсов</a>.</p>
+
+
+
+<h3 id="ReferencesToThemeAttributes">Ссылка на атрибуты стиля</h3>
+
+<p>С помощью ресурса атрибута стиля можно создать ссылку на значение
+атрибута в текущей примененной теме. Таким образом можно
+настраивать внешний вид элементов пользовательского интерфейса, подстраивая их под стандартные варианты элементов оформления
+текущей темы, вместо указания жестко заданных значений. Создание ссылки на атрибут стиля
+представляет собой своеобразную инструкцию «использовать стиль, заданный этим атрибутом в текущей теме».</p>
+
+<p>Синтаксис для создания ссылки на атрибут стиля практически идентичен обычному формату
+ресурса, только в этом случае вместо символа{@code @} необходимо указать вопросительный знак ({@code ?}), а тип ресурса
+вообще необязательно указывать. Например:</p>
+
+<pre class="classic">
+?[<em>&lt;package_name&gt;</em>:][<em>&lt;resource_type&gt;</em>/]<em>&lt;resource_name&gt;</em>
+</pre>
+
+<p>Ниже представлен пример создания ссылки на атрибут для задания цвета текста в соответствии с
+«основным» цветом текста системной темы оформления:</p>
+
+<pre>
+&lt;EditText id=&quot;text&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;wrap_content&quot;
+    android:textColor=&quot;<strong>?android:textColorSecondary</strong>&quot;
+    android:text=&quot;&#64;string/hello_world&quot; /&gt;
+</pre>
+
+<p>Здесь атрибут {@code android:textColor} служит для задания имени атрибута стиля
+в текущей теме. Теперь в Android используется значение, примененное к атрибуту стиля{@code android:textColorSecondary}
+в качестве значения для {@code android:textColor} в этом виджете. Поскольку инструменту для работы с системными
+ресурсами известно, что в этом контексте ожидается ресурс атрибута,
+вам не нужно явно указывать его тип (который должен быть
+<code>?android:attr/textColorSecondary</code>) &mdash; тип {@code attr} можно исключить.</p>
+
+
+
+
+<h2 id="PlatformResources">Доступ к ресурсам платформы</h2>
+
+<p>В Android предусмотрен ряд стандартных ресурсов, например, стилей, тем и макетов. Для
+доступа к этим ресурсам укажите в ссылке на ресурс имя пакета
+<code>android</code>. Например, в Android имеется ресурс макета, который можно использовать для
+элементов списка в виджете {@link android.widget.ListAdapter}:</p>
+
+<pre>
+{@link android.app.ListActivity#setListAdapter(ListAdapter)
+setListAdapter}(new {@link
+android.widget.ArrayAdapter}&lt;String&gt;(this, <strong>android.R.layout.simple_list_item_1</strong>, myarray));
+</pre>
+
+<p>В этом примере {@link android.R.layout#simple_list_item_1} представляет собой ресурс макета, определенный
+платформой для элементов в виджете {@link android.widget.ListView}. Вы можете использовать его вместо создания
+собственных макетов для элементов списка. Дополнительные сведения представлены в руководстве для разработчиков, посвященном
+<a href="{@docRoot}guide/topics/ui/layout/listview.html">представлению в виде списка</a>.</p>
+
diff --git a/docs/html-intl/intl/ru/guide/topics/resources/overview.jd b/docs/html-intl/intl/ru/guide/topics/resources/overview.jd
new file mode 100644
index 0000000..c809c85
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/resources/overview.jd
@@ -0,0 +1,103 @@
+page.title=Обзор ресурсов
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Темы</h2>
+  <ol>
+    <li><a href="providing-resources.html">Предоставление ресурсов</a></li>
+    <li><a href="accessing-resources.html">Доступ к ресурсам</a></li>
+    <li><a href="runtime-changes.html">Обработка изменений в режиме выполнения</a></li>
+    <li><a href="localization.html">Локализация</a></li>
+  </ol>
+
+  <h2>Дополнительные материалы</h2>
+  <ol>
+    <li><a href="available-resources.html">Типы ресурсов</a></li>
+  </ol>
+</div>
+</div>
+
+
+<p>Необходимо обязательно экспортировать ресурсы, такие как изображения и строки, из кода
+приложения, чтобы можно было обрабатывать их независимо. Кроме того, экспорт
+ресурсов позволяет предоставлять альтернативные ресурсы для поддержки конфигураций
+конкретных устройств, например, различные языки или размеры экранов. Значение этого возрастает по мере того, как
+появляется все больше устройств Android с разными конфигурациями. Чтобы обеспечить
+совместимость с различными конфигурациями, необходимо организовать ресурсы
+в каталоге {@code res/} проекта с использованием различных подкаталогов для группирования ресурсов по типу и
+конфигурации.</p>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram1.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Рисунок 1.</strong> Два разных устройства, каждое из которых использует макет по умолчанию
+(приложение не предоставляет альтернативных макетов).</p>
+</div>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Рисунок 2</strong>. Два разных устройства, каждое из которых использует свой макет, разработанный для
+экранов разных размеров.</p>
+</div>
+
+<p>Для ресурсов любого типа можно указать ресурс <em>по умолчанию</em> и несколько
+<em>альтернативных</em> ресурсов для приложения:</p>
+<ul>
+  <li>Ресурсы по умолчанию должны использоваться независимо от
+конфигурации устройства или в том случае, когда отсутствуют альтернативные ресурсы, соответствующие
+текущей конфигурации.</li>
+  <li>Альтернативные ресурсы предназначены для работы с определенными
+конфигурациями. Чтобы указать, что группа ресурсов предназначена для определенной конфигурации,
+добавьте соответствующий квалификатор к имени каталога.</li>
+</ul>
+
+<p>Например, несмотря на то, что макет пользовательского интерфейса по умолчанию
+сохранен в каталоге {@code res/layout/}, можно указать другой макет для
+использования на экране с альбомной ориентацией, сохранив его в каталоге {@code res/layout-land/}
+. Android автоматически применяет соответствующие ресурсы, сопоставляя текущую конфигурацию
+устройства с именами каталогов ресурсов.</p>
+
+<p>На рисунке 1 показано, как система применяет одинаковый макет для
+двух разных устройств, когда альтернативные ресурсы отсутствуют. На рисунке 2 показано
+то же приложение, когда для больших экранов добавлен альтернативный ресурс макета.</p>
+
+<p>В следующих документах содержится полное руководство по организации ресурсов приложения,
+указания альтернативных ресурсов, доступа к ним из приложения и т. д.:</p>
+
+<dl>
+  <dt><strong><a href="providing-resources.html">Предоставление ресурсов</a></strong></dt>
+  <dd>Типы ресурсов, которые можно предоставлять в приложении, место их сохранения и способы создания
+альтернативных ресурсов для определенных конфигураций устройств.</dd>
+  <dt><strong><a href="accessing-resources.html">Доступ к ресурсам</a></strong></dt>
+  <dd>Способ использования предоставленных ресурсов: путем ссылки на них из кода приложения
+или из других ресурсов XML.</dd>
+  <dt><strong><a href="runtime-changes.html">Обработка изменений в режиме выполнения</a></strong></dt>
+  <dd>Управление изменениями конфигурации во время выполнения операции.</dd>
+  <dt><strong><a href="localization.html">Локализация</a></strong></dt>
+  <dd>Руководство по локализации приложения «снизу вверх» с помощью альтернативных ресурсов. Хотя это лишь
+один из примеров использования альтернативных ресурсов, он очень важен для охвата более широкой аудитории
+пользователей.</dd>
+  <dt><strong><a href="available-resources.html">Типы ресурсов</a></strong></dt>
+  <dd>Ссылка на различные типы ресурсов, которые вы можете предоставлять, с описанием элементов XML,
+атрибутов и синтаксиса. Например, эта ссылка показывает, как создать ресурс для меню
+, рисунков, анимаций приложения и т. д.</dd>
+</dl>
+
+<!--
+<h2>Raw Assets</h2>
+
+<p>An alternative to saving files in {@code res/} is to save files in the {@code
+assets/} directory. This should only be necessary if you need direct access to original files and
+directories by name. Files saved in the {@code assets/} directory will not be given a resource
+ID, so you can't reference them through the {@code R} class or from XML resources. Instead, you can
+query data in the {@code assets/} directory like an ordinary file system, search through the
+directory and
+read raw data using {@link android.content.res.AssetManager}. For example, this can be more useful
+when dealing with textures for a game. However, if you only need to read raw data from a file
+(such as a video or audio file), then you should save files into the {@code res/raw/} directory and
+then read a stream of bytes using {@link android.content.res.Resources#openRawResource(int)}. This
+is uncommon, but if you need direct access to original files in {@code assets/}, refer to the {@link
+android.content.res.AssetManager} documentation.</p>
+-->
diff --git a/docs/html-intl/intl/ru/guide/topics/resources/providing-resources.jd b/docs/html-intl/intl/ru/guide/topics/resources/providing-resources.jd
new file mode 100644
index 0000000..be0af95
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/resources/providing-resources.jd
@@ -0,0 +1,1094 @@
+page.title=Предоставление ресурсов
+parent.title=Ресурсы приложения
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Краткое описание</h2>
+  <ul>
+    <li>Разные типы ресурсов находятся в разных подкаталогах каталога {@code res/}</li>
+    <li>Альтернативные ресурсы представляют собой файлы ресурсов для определенных конфигураций</li>
+    <li>Обязательно включайте ресурсы по умолчанию, чтобы приложение не зависело от конфигураций конкретного
+устройства</li>
+  </ul>
+  <h2>Содержание документа</h2>
+  <ol>
+    <li><a href="#ResourceTypes">Группирование типов ресурсов</a></li>
+    <li><a href="#AlternativeResources">Предоставление альтернативных ресурсов</a>
+      <ol>
+        <li><a href="#QualifierRules">Правила квалификатора имени</a></li>
+        <li><a href="#AliasResources">Создание псевдонимов ресурсов</a></li>
+      </ol>
+    </li>
+    <li><a href="#Compatibility">Обеспечение оптимальной совместимости устройства с ресурсами</a></li>
+    <li><a href="#BestMatch">Как Android находит наиболее подходящий ресурс</a></li>
+  </ol>
+
+  <h2>См. также:</h2>
+  <ol>
+    <li><a href="accessing-resources.html">Доступ к ресурсам</a></li>
+    <li><a href="available-resources.html">Типы ресурсов</a></li>
+    <li><a href="{@docRoot}guide/practices/screens_support.html">Поддержка
+нескольких экранов</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Обязательно необходимо экспортировать из кода ресурсы приложения, такие как изображения и строки,
+для последующей их независимой обработки. Следует также обеспечить альтернативные ресурсы для
+определенных конфигураций устройств, группируя их в каталогах ресурсов со специальными именами. В
+режиме выполнения Android использует соответствующие ресурсы с учетом текущей конфигурации. Например,
+можно предоставлять другой макет пользовательского интерфейса в зависимости от размера экрана или различные
+строки в зависимости от настройки языка.</p>
+
+<p>После выполнения экспорта ресурсов приложения можно обращаться к ним
+с помощью идентификаторов ресурсов, которые генерируются в классе {@code R} вашего проекта. Использование
+ресурсов в приложении рассмотрено в разделе <a href="accessing-resources.html">Доступ
+к ресурсам</a>. В этом документе показано, как группировать ресурсы в проекте Android и
+предоставлять альтернативные ресурсы для определенных конфигураций устройств.</p>
+
+
+<h2 id="ResourceTypes">Группирование типов ресурсов</h2>
+
+<p>Следует поместить ресурсы каждого типа в определенный подкаталог каталога
+{@code res/} вашего проекта. В качестве примера приведена иерархия файлов для простого проекта:</p>
+
+<pre class="classic no-pretty-print">
+MyProject/
+    src/  <span style="color:black">
+        MyActivity.java  </span>
+    res/
+        drawable/  <span style="color:black">
+            graphic.png  </span>
+        layout/  <span style="color:black">
+            main.xml
+            info.xml</span>
+        mipmap/  <span style="color:black">
+            icon.png </span>
+        values/  <span style="color:black">
+            strings.xml  </span>
+</pre>
+
+<p>Как видно в этом примере, каталог {@code res/} содержит все ресурсы (в
+подкаталогах): ресурс-изображение, два ресурса-макета, каталоги {@code mipmap/} для значков
+запуска и файл строк. Имена каталогов
+ресурсов очень важны и описаны в таблице 1.</p>
+
+<p class="note"><strong>Примечание.</strong> Подробные сведения об использовании папок множественного отображения см. в разделе
+<a href="{@docRoot}tools/projects/index.html#mipmap">Обзор управления проектами</a>.</p>
+
+<p class="table-caption" id="table1"><strong>Таблица 1.</strong> Каталоги ресурсов,
+поддерживаемые в каталоге {@code res/} проекта.</p>
+
+<table>
+  <tr>
+    <th scope="col">Каталог</th>
+    <th scope="col">Тип ресурсов</th>
+  </tr>
+
+  <tr>
+    <td><code>animator/</code></td>
+    <td>Файлы XML, которые определяют <a href="{@docRoot}guide/topics/graphics/prop-animation.html">анимации
+свойств</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>anim/</code></td>
+    <td>Файлы XML, которые определяют <a href="{@docRoot}guide/topics/graphics/view-animation.html#tween-animation">анимации
+преобразований</a>. (Анимации свойств также можно сохранять в этом каталоге, но
+для анимаций свойств предпочтительнее использовать каталог {@code animator/}, чтобы различать эти два
+типа).</td>
+  </tr>
+
+  <tr>
+    <td><code>color/</code></td>
+    <td>Файлы XML, которые определяют список состояний цветов. См. раздел <a href="color-list-resource.html">Ресурс списка
+состояний цветов</a></td>
+  </tr>
+
+  <tr>
+    <td><code>drawable/</code></td>
+
+    <td><p>Файлы растровых изображений ({@code .png}, {@code .9.png}, {@code .jpg}, {@code .gif}) или файлы XML, которые
+составляют следующие подтипы графических ресурсов:</p>
+      <ul>
+        <li>Файлы растровых изображений</li>
+        <li>Файлы из девяти фрагментов (растровые изображения с возможностью изменения размера)</li>
+        <li>Списки состояний</li>
+        <li>Формы</li>
+        <li>Графические анимации</li>
+        <li>Другие графические элементы</li>
+      </ul>
+      <p>См. раздел <a href="drawable-resource.html">Графические ресурсы</a>.</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>mipmap/</code></td>
+    <td>Графические файлы для значков запуска с различной плотностью. Подробные сведения об управлении
+значками запуска с помощью папок {@code mipmap/} см. в разделе
+ <a href="{@docRoot}tools/project/index.html#mipmap">Обзор управления проектами</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>layout/</code></td>
+    <td>Файлы XML, которые определяют макет пользовательского интерфейса.
+        См. раздел <a href="layout-resource.html">Ресурсы макетов</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>menu/</code></td>
+    <td>Файлы XML, которые определяют меню приложения, такие как меню параметров, контекстные меню или вложенные
+меню. См. раздел <a href="menu-resource.html">Ресурсы меню</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>raw/</code></td>
+    <td><p>Произвольные файлы для сохранения в исходной форме. Чтобы открыть эти ресурсы с помощью
+{@link java.io.InputStream}, вызовите {@link android.content.res.Resources#openRawResource(int)
+Resources.openRawResource()} с идентификатором ресурса, который имеет вид {@code R.raw.<em>filename</em>}.</p>
+      <p>Однако, если требуется получить доступ к исходным именам файлов и иерархии файлов, можно
+сохранять некоторые ресурсы в каталоге {@code
+assets/} (вместо каталога {@code res/raw/}). Файлы в каталоге {@code assets/} не получают
+идентификатора ресурса, поэтому их чтение возможно только с помощью {@link android.content.res.AssetManager}.</p></td>
+  </tr>
+
+  <tr>
+    <td><code>values/</code></td>
+    <td><p>Файлы XML, которые содержат простые значения, такие как строки, целые числа и цвета.</p>
+      <p>Тогда как XML-файлы ресурсов в других подкаталогах каталога {@code res/} определяют отдельные ресурсы
+на базе имени файла XML, файлы в каталоге {@code values/} описывают несколько ресурсов.
+Для файла в этом каталоге каждый дочерний элемент элемента {@code &lt;resources&gt;} определяет один
+ресурс. Например, элемент {@code &lt;string&gt;} создает ресурс
+{@code R.string}, а элемент {@code &lt;color&gt;} создает ресурс {@code R.color}
+.</p>
+      <p>Так как каждый ресурс определяется с помощью своего собственного элемента XML, можно назначать имя файла
+по своему усмотрению и помещать ресурсы разных типов в один файл. Тем не мене, может
+появиться необходимость поместить ресурсы отдельных типов в разные файлы. Например, ниже приведены соглашения для имен файлов
+ресурсов, которые можно создать в этом каталоге:</p>
+      <ul>
+        <li>arrays.xml для ресурсов-массивов (<a href="more-resources.html#TypedArray">массивы с указанием типа</a>)</li>
+        <li>colors.xml для <a href="more-resources.html#Color">значений цветов</a></li>
+        <li>dimens.xml для <a href="more-resources.html#Dimension">значений единиц измерений</a></li>
+        <li>strings.xml для <a href="string-resource.html">строковых
+значений</a></li>
+        <li>styles.xml для <a href="style-resource.html">стилей</a>.</li>
+      </ul>
+      <p>См. разделы <a href="string-resource.html">Строковые ресурсы</a>,
+        <a href="style-resource.html">Ресурсы стиля</a> и
+ <a href="more-resources.html">Дополнительные типы ресурсов</a>.</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>xml/</code></td>
+    <td>Произвольные XML-файлы, которые можно читать в режиме выполнения вызовом метода {@link
+android.content.res.Resources#getXml(int) Resources.getXML()}. Здесь должны сохраняться различные файлы конфигурации XML,
+например, <a href="{@docRoot}guide/topics/search/searchable-config.html">конфигурация с возможностью поиска</a>.
+<!-- or preferences configuration. --></td>
+  </tr>
+</table>
+
+<p class="caution"><strong>Предупреждение!</strong> Не сохраняйте файлы ресурсов непосредственно в
+каталоге {@code res/}, так как это вызывает ошибку компилятора.</p>
+
+<p>Дополнительную информацию об определенных типах ресурсов см. в документации <a href="available-resources.html">Типы ресурсов</a>.</p>
+
+<p>Ресурсы, сохраненные в подкаталогах, которые описаны в таблице 1, являются ресурсами
+«по умолчанию». Таким образом, эти ресурсы определяют дизайн и содержимое приложения по умолчанию.
+Однако различные типы устройств Android могут вызывать различные типы ресурсов.
+Например, если устройство оснащено экраном больше нормального, следует предоставить
+другие ресурсы макета, которые будут использовать преимущества дополнительного места на экране. Или, если устройство
+содержит различные языковые настройки, следует предоставить другие строковые ресурсы, содержащие перевод
+текста пользовательского интерфейса. Чтобы предоставить разные ресурсы для разных конфигураций устройств,
+необходимо предоставить альтернативные ресурсы в дополнение к ресурсам
+по умолчанию.</p>
+
+
+<h2 id="AlternativeResources">Предоставление альтернативных ресурсов</h2>
+
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Рисунок 1.</strong> Два разных устройства, которые используют разные ресурсы макета.</p>
+</div>
+
+<p>Почти каждое приложение должно предоставлять альтернативные ресурсы, чтобы поддерживать определенные конфигурации
+устройств. Например, необходимо включить альтернативные графические ресурсы для экранов с
+разной плотностью растра и альтернативные ресурсы для разных языков. В режиме выполнения Android
+определяет конфигурацию устройства и загружает соответствующие
+ресурсы для приложения.</p>
+
+<p>Чтобы указать альтернативы для конкретных конфигураций набора ресурсов, выполните следующие действия:</p>
+<ol>
+  <li>Создайте новый каталог в каталоге {@code res/} с именем следующего вида {@code
+<em>&lt;имя_ресурса&gt;</em>-<em>&lt;квалификатор_конфигурации&gt;</em>}.
+    <ul>
+      <li><em>{@code &lt;resources_name&gt;}</em> – имя каталога соответствующих ресурсов
+по умолчанию (определено в таблице 1).</li>
+      <li><em>{@code &lt;qualifier&gt;}</em> – имя, которое указывает определенную конфигурацию,
+для которой должны использоваться эти ресурсы (определено в таблице 2).</li>
+    </ul>
+    <p>Можно добавлять несколько квалификаторов <em>{@code &lt;qualifier&gt;}</em>. Разделяйте их
+знаком дефиса.</p>
+    <p class="caution"><strong>Предупреждение!</strong> При добавлении нескольких квалификаторов необходимо
+располагать их в том же порядке, в котором они перечислены в таблице 2. Если порядок квалификаторов нарушен,
+ ресурсы игнорируются.</p>
+  </li>
+  <li>Сохраните соответствующие альтернативные ресурсы в этом новом каталоге. Файлы ресурсов должны
+иметь имена, точно совпадающие с именами файлов ресурсов по умолчанию.</li>
+</ol>
+
+<p>В качестве примера здесь приведено несколько ресурсов по умолчанию и альтернативных ресурсов:</p>
+
+<pre class="classic no-pretty-print">
+res/
+    drawable/   <span style="color:black">
+        icon.png
+        background.png    </span>
+    drawable-hdpi/  <span style="color:black">
+        icon.png
+        background.png  </span>
+</pre>
+
+<p>Квалификатор {@code hdpi} указывает, что ресурсы в этом каталоге предназначены для устройств, оснащенных экраном
+высокой плотности. Изображения в каждом из этих каталогов для графических объектов имеют размер для определенной плотности
+экрана, но имена файлов полностью
+совпадают. Таким образом, идентификатор ресурса, который указывает на изображение {@code icon.png} или {@code
+background.png}, всегда одинаков, но Android выбирает
+версию каждого ресурса, которая оптимально соответствует текущему устройству, сравнивая информацию о конфигурации устройства
+с квалификаторами в имени каталога ресурсов.</p>
+
+<p>Android поддерживает несколько квалификаторов конфигурации, позволяя
+добавлять несколько квалификаторов к одному имени каталога, разделяя квалификаторы дефисом. В таблице 2
+перечислены допустимые квалификаторы конфигурации в порядке приоритета &mdash; если используется несколько
+квалификаторов для каталога ресурсов, необходимо добавлять их к имени каталога в том порядке, в котором
+они перечислены в таблице.</p>
+
+
+<p class="table-caption" id="table2"><strong>Таблица 2.</strong> Имена квалификаторов
+конфигурации.</p>
+<table>
+    <tr>
+        <th>Конфигурация</th>
+        <th>Значения квалификатора</th>
+        <th>Описание</th>
+    </tr>
+    <tr id="MccQualifier">
+      <td>MCC и MNC</td>
+      <td>Примеры:<br/>
+        <code>mcc310</code><br/>
+        <code><nobr>mcc310-mnc004</nobr></code><br/>
+        <code>mcc208-mnc00</code><br/>
+        и т. д.
+      </td>
+      <td>
+        <p>Код страны для мобильной связи (MCC), за которым может следовать код сети мобильной связи (MNC)
+ из SIM-карты устройства. Например, <code>mcc310</code> – код США для любого поставщика услуг,
+ <code>mcc310-mnc004</code> – код США для Verizon и <code>mcc208-mnc00</code> – код Франции
+ для Orange.</p>
+        <p>Если в устройстве используется радиосвязь (телефон GSM), значения MCC и MNC добываются
+ из SIM-карты.</p>
+        <p>Можно также использовать только код MCC (например, для включения в приложении разрешенных в стране
+ресурсов). Если требуется указать только язык, используйте квалификатор
+<em>язык и регион</em> (обсуждается ниже). Если принято решение использовать квалификатор MCC и
+MNC, следует делать это с осторожностью и проверить корректность его работы.</p>
+        <p>См. также поля конфигурации {@link
+android.content.res.Configuration#mcc} и {@link
+android.content.res.Configuration#mnc}, которые указывают текущий код страны при мобильной связи
+и код сети мобильной связи соответственно.</p>
+      </td>
+    </tr>
+    <tr id="LocaleQualifier">
+      <td>Язык и регион</td>
+      <td>Примеры:<br/>
+        <code>en</code><br/>
+        <code>fr</code><br/>
+        <code>en-rUS</code><br/>
+        <code>fr-rFR</code><br/>
+        <code>fr-rCA</code><br/>
+        и т. д.
+      </td>
+      <td><p>Язык задается двухбуквенным кодом языка <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php">ISO
+ 639-1</a>, к которому можно добавить двухбуквенный код региона
+ <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html">ISO
+ 3166-1-alpha-2</a> (которому предшествует строчная буква "{@code r}").
+        </p><p>
+        Коды <em>не</em> зависят от регистра; префикс {@code r} служит для
+обозначения кода региона.
+        Нельзя указывать только код региона.</p>
+        <p>Он может измениться за время работы
+приложения, если пользователь изменяет свой язык в системных настройках. В разделе <a href="runtime-changes.html">Обработка изменений в режиме выполнения</a> содержится информация
+о воздействии таких изменений на приложение во время выполнения.</p>
+        <p>В разделе <a href="localization.html">Локализация</a> приведено полное руководство по локализации
+приложения для других языков.</p>
+        <p>См. также поле конфигурации {@link android.content.res.Configuration#locale}, которое
+указывает текущий язык.</p>
+      </td>
+    </tr>
+    <tr id="LayoutDirectionQualifier">
+      <td>Направление макета</td>
+      <td><code>ldrtl</code><br/>
+        <code>ldltr</code><br/>
+      </td>
+      <td><p>Направление макета для приложения. Квалификатор {@code ldrtl} означает «направление макета справа налево».
+Квалификатор {@code ldltr} означает «направление макета слева направо» и используется по умолчанию.
+      </p>
+      <p>Эти квалификаторы можно применять к любым ресурсам, таким как макеты, графические элементы или значения.
+      </p>
+      <p>Например, если требуется предоставить специальный макет для арабского языка и
+общий макет для других языков, использующих написание «справа налево» (таких как фарси или иврит), используйте следующий код:
+      </p>
+<pre class="classic no-pretty-print">
+res/
+    layout/   <span style="color:black">
+        main.xml  </span>(Default layout)
+    layout-ar/  <span style="color:black">
+        main.xml  </span>(Specific layout for Arabic)
+    layout-ldrtl/  <span style="color:black">
+        main.xml  </span>(Any "right-to-left" language, except
+                  for Arabic, because the "ar" language qualifier
+                  has a higher precedence.)
+</pre>
+        <p class="note"><strong>Примечание.</strong> Чтобы включить в приложение функцию макета «справа налево»,
+необходимо установить для параметра <a href="{@docRoot}guide/topics/manifest/application-element.html#supportsrtl">{@code
+        supportsRtl}</a> значение {@code "true"} и для параметра <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> значение 17 или больше.</p>
+        <p><em>Добавлено в API уровня 17.</em></p>
+      </td>
+    </tr>
+    <tr id="SmallestScreenWidthQualifier">
+      <td>smallestWidth</td>
+      <td><code>sw&lt;N&gt;dp</code><br/><br/>
+        Примеры:<br/>
+        <code>sw320dp</code><br/>
+        <code>sw600dp</code><br/>
+        <code>sw720dp</code><br/>
+        и т. д.
+      </td>
+      <td>
+        <p>Основной размер экрана, указывающий минимальный размер доступной
+области экрана. Точнее говоря, минимальная ширина устройства – это наименьший из двух размеров экрана:
+высоты и ширины (можно также называть ее «меньшей стороной» экрана). Этот квалификатор
+позволяет гарантировать, что независимо от текущей ориентации экрана
+приложение имеет доступную ширину пользовательского интерфейса не менее {@code &lt;N&gt;} пикселов.</p>
+        <p>Например, если для макета требуется, чтобы минимальный размер области экрана всегда был
+не менее 600 пикселов, можно использовать этот квалификатор для создания ресурсов этого макета, {@code
+res/layout-sw600dp/}. Система будет использовать эти ресурсы только в том случае, если минимальный размер
+доступной области экрана составляет не менее 600 пикселов, независимо от воспринимаемой пользователем
+высоты или ширины. Значение минимальной ширины является постоянной характеристикой размера экрана для устройства; <strong>минимальная
+ширина устройства не изменяется при изменении ориентации экрана</strong>.</p>
+        <p>Минимальная ширина устройства учитывает оформление экрана и пользовательский интерфейс системы. Например,
+если не экране присутствуют постоянные элементы пользовательского интерфейса, которые занимают пространство вдоль
+оси минимальной ширины, система объявляет, что минимальная ширина меньше фактического
+размера экрана, так как эти пикселы экрана недоступны для пользовательского интерфейса приложения. Следовательно используемое значение
+должно быть фактическим наименьшим размером, <em>который необходим для вашего макета</em> (обычно это значение является
+«минимальной шириной», которую поддерживает ваш макет, независимо от текущей ориентации экрана).</p>
+        <p>Здесь приведены некоторые значения, которые можно использовать для экранов обычных размеров:</p>
+        <ul>
+          <li>320 для устройств с конфигурациями экрана:
+            <ul>
+              <li>240x320 ldpi (смартфон QVGA)</li>
+              <li>320x480 mdpi (смартфон)</li>
+              <li>480x800 hdpi (смартфон высокой плотности)</li>
+            </ul>
+          </li>
+          <li>480 для таких экранов, как 480x800 mdpi (планшет/смартфон).</li>
+          <li>600 для таких экранов, как 600x1024 mdpi (планшет с диагональю 7").</li>
+          <li>720 для таких экранов, как 720x1280 mdpi (планшет с диагональю 10").</li>
+        </ul>
+        <p>Когда приложение предоставляет несколько каталогов ресурсов с разными значениями
+квалификатора «минимальная ширина», система использует квалификатор, ближайший
+к минимальной ширине устройства, но не превышающий ее. </p>
+        <p><em>Добавлено в API уровня 13.</em></p>
+        <p>См. также атрибут <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html#requiresSmallest">{@code
+android:requiresSmallestWidthDp}</a>, который объявляет минимальную ширину, совместимую
+с вашим приложением, и поле конфигурации {@link
+android.content.res.Configuration#smallestScreenWidthDp}, которое содержит значение
+минимальной ширины устройства.</p>
+        <p>Дополнительную информацию о разработке для различных экранов и использовании этого
+квалификатора см. в руководстве разработчика <a href="{@docRoot}guide/practices/screens_support.html">Поддержка
+нескольких экранов</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenWidthQualifier">
+      <td>Доступная ширина</td>
+      <td><code>w&lt;N&gt;dp</code><br/><br/>
+        Примеры:<br/>
+        <code>w720dp</code><br/>
+        <code>w1024dp</code><br/>
+        и т. д.
+      </td>
+      <td>
+        <p>Указывает минимальную доступную ширину экрана в единицах {@code dp}, для которой должен использоваться ресурс,
+заданный значением <code>&lt;N&gt;</code>.  Это
+значение конфигурации будет изменяться в соответствии с текущей фактической шириной
+при изменении альбомной/книжной ориентации.</p>
+        <p>Когда приложение предоставляет несколько каталогов ресурсов с разными значениями
+этой конфигурации, система использует ширину, ближайшую к текущей
+ширине экрана устройства, но не превышающую ее.  Это значение
+учитывает оформление экрана, поэтому, если устройство содержит
+постоянные элементы пользовательского интерфейса вдоль левого или правого края дисплея, оно
+использует значение ширины, которое меньше реального размера экрана: эти элементы
+пользовательского интерфейса учитываются и уменьшают пространство, доступное для приложения.</p>
+        <p><em>Добавлено в API уровня 13.</em></p>
+        <p>См. также поле конфигурации {@link android.content.res.Configuration#screenWidthDp}
+, которое содержит текущую ширину экрана.</p>
+        <p>Дополнительную информацию о разработке для различных экранов и использовании этого
+квалификатора см. в руководстве разработчика <a href="{@docRoot}guide/practices/screens_support.html">Поддержка
+нескольких экранов</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenHeightQualifier">
+      <td>Доступная высота</td>
+      <td><code>h&lt;N&gt;dp</code><br/><br/>
+        Примеры:<br/>
+        <code>h720dp</code><br/>
+        <code>h1024dp</code><br/>
+        и т. д.
+      </td>
+      <td>
+        <p>Указывает минимальную доступную высоту экрана в пикселах, для которой должен использоваться ресурс,
+заданный значением <code>&lt;N&gt;</code>.  Это
+значение конфигурации будет изменяться в соответствии с текущей фактической высотой
+при изменении альбомной/книжной ориентации.</p>
+        <p>Когда приложение предоставляет несколько каталогов ресурсов с разными значениями
+этой конфигурации, система использует высоту, ближайшую к текущей
+высоте экрана устройства, но не превышающую ее.  Это значение
+учитывает оформление экрана, поэтому, если устройство содержит
+постоянные элементы пользовательского интерфейса вдоль верхнего или нижнего края дисплея, оно
+использует значение высоты, которое меньше реального размера экрана: эти элементы
+пользовательского интерфейса учитываются и уменьшают пространство, доступное для приложения.  Элементы оформления
+экрана, которые не являются постоянными (например, строка состояния телефона может быть
+скрыта в полноэкранном режиме), здесь <em>не</em> учитываются; также не учитываются такие элементы
+оформления окна, как строка заголовка или строка действий, поэтому приложения должны быть готовы к работе с меньшим
+пространством, чем указано.
+        <p><em>Добавлено в API уровня 13.</em></p>
+        <p>См. также поле конфигурации {@link android.content.res.Configuration#screenHeightDp}
+, которое содержит текущую ширину экрана.</p>
+        <p>Дополнительную информацию о разработке для различных экранов и использовании этого
+квалификатора см. в руководстве разработчика <a href="{@docRoot}guide/practices/screens_support.html">Поддержка
+нескольких экранов</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenSizeQualifier">
+      <td>Размер экрана</td>
+      <td>
+        <code>small</code><br/>
+        <code>normal</code><br/>
+        <code>large</code><br/>
+        <code>xlarge</code>
+      </td>
+      <td>
+        <ul class="nolist">
+        <li>{@code small}: Экраны, подобные по размеру
+экрану QVGA низкой плотности. Минимальный размер макета для маленького экрана
+составляет приблизительно 320x426 пикселов.  Примерами являются экраны QVGA низкой плотности и VGA высокой
+плотности.</li>
+        <li>{@code normal}: Экраны, подобные по размеру
+экрану HVGA средней плотности. Минимальный
+размер макета для нормального экрана составляет приблизительно 320x470 пикселов.  Примерами таких экранов
+являются экраны WQVGA низкой плотности, HVGA средней плотности, WVGA
+высокой плотности.</li>
+        <li>{@code large}: Экраны, подобные по размеру
+экрану VGA средней плотности.
+        Минимальный размер макета для большого экрана составляет приблизительно 480x640 пикселов.
+        Примерами являются экраны VGA и WVGA средней плотности.</li>
+        <li>{@code xlarge}: Экраны значительно крупнее обычного 
+экрана HVGA средней плотности. Минимальный размер макета для очень большого экрана составляет
+приблизительно 720x960 пикселов.  В большинстве случаев устройства с очень большими
+экранами слишком велики для карманного использования и, скорее всего,
+относятся к планшетам. <em>Добавлено в API уровня 9.</em></li>
+        </ul>
+        <p class="note"><strong>Примечание.</strong> Использование квалификатора размера не подразумевает, что
+ресурсы предназначены <em>только</em> для экранов этого размера. Если не предусмотрены
+альтернативные ресурсы с квалификаторами, лучше подходящими к текущей конфигурации устройства, система может использовать
+любые <a href="#BestMatch">наиболее подходящие</a> ресурсы.</p>
+        <p class="caution"><strong>Предупреждение!</strong> Если все ресурсы используют квалификатор размера,
+который <em>превосходит</em> размер текущего экрана, система <strong>не</strong> будет использовать эти ресурсы, и приложение
+аварийно завершится во время выполнения (например, если все ресурсы макета отмечены квалификатором {@code
+xlarge}, но устройство оснащено экраном нормального размера).</p>
+        <p><em>Добавлено в API уровня 4.</em></p>
+        
+        <p>Дополнительную информацию см. в разделе <a href="{@docRoot}guide/practices/screens_support.html">Поддержка нескольких
+экранов</a>.</p>
+        <p>См. также поле конфигурации {@link android.content.res.Configuration#screenLayout}, которое
+указывает тип размера экрана: маленький, нормальный
+или большой.</p>
+      </td>
+    </tr>
+    <tr id="ScreenAspectQualifier">
+      <td>Формат экрана</td>
+      <td>
+        <code>long</code><br/>
+        <code>notlong</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code long}: Длинные экраны, такие как WQVGA, WVGA, FWVGA</li>
+          <li>{@code notlong}: Недлинные экраны, такие как QVGA, HVGA и VGA</li>
+        </ul>
+        <p><em>Добавлено в API уровня 4.</em></p>
+        <p>Формат основан исключительно на соотношении сторон экрана («длинный» экран шире). Это
+не связано с ориентацией экрана.</p>
+        <p>См. также поле конфигурации {@link android.content.res.Configuration#screenLayout}, которое
+указывает, является ли экран длинным.</p>
+      </td>
+    </tr>
+    <tr id="OrientationQualifier">
+      <td>Ориентация экрана</td>
+      <td>
+        <code>port</code><br/>
+        <code>land</code>  <!-- <br/>
+        <code>square</code>  -->
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code port}: Устройство в портретной (вертикальной) ориентации</li>
+          <li>{@code land}: Устройство в книжной (горизонтальной) ориентации</li>
+          <!-- Square mode is currently not used. -->
+        </ul>
+        <p>Ориентация может измениться за время работы приложения, если
+пользователь поворачивает экран. В разделе <a href="runtime-changes.html">Обработка изменений в режиме выполнения</a> содержится информация
+о воздействии таких изменений на приложение во время выполнения.</p>
+        <p>См. также поле конфигурации {@link android.content.res.Configuration#orientation}, которое
+указывает текущую ориентацию устройства.</p>
+      </td>
+    </tr>
+    <tr id="UiModeQualifier">
+      <td>Режим пользовательского интерфейса</td>
+      <td>
+        <code>car</code><br/>
+        <code>desk</code><br/>
+        <code>television</code><br/>
+        <code>appliance</code>
+        <code>watch</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code car}: Устройство подсоединено к автомобильной док-станции</li>
+          <li>{@code desk}: Устройство подсоединено к настольной док-станции</li>
+          <li>{@code television}: Устройство подсоединено к телевизору, обеспечивая
+взаимодействие с расстояния «три метра», когда пользовательский интерфейс находится на большом экране,
+находящемся вдалеке от пользователя, ориентированное на управление с помощью навигационной клавиши или другого
+устройства без указателя</li>
+          <li>{@code appliance}: Устройство служит в качестве прибора без
+дисплея</li>
+          <li>{@code watch}: Устройство с дисплеем для ношения на запястье</li>
+        </ul>
+        <p><em>Добавлено в API уровня 8, телевизор добавлен в API 13, часы добавлены в API 20.</em></p>
+        <p>Информацию о том, как приложение может реагировать на установку устройства в
+док-станцию или извлечение из нее, прочитайте документ <a href="{@docRoot}training/monitoring-device-state/docking-monitoring.html">Определение
+и мониторинг типа и состояния подключения к док-станции</a>.</p>
+        <p>Подключение может измениться за время работы приложения, если пользователь помещает устройство
+в док-станцию. Некоторые из этих режимов можно включить или отключить с помощью {@link
+android.app.UiModeManager}. В разделе <a href="runtime-changes.html">Обработка изменений в режиме выполнения</a> содержится
+информация о воздействии таких изменений на приложение во время выполнения.</p>
+      </td>
+    </tr>
+    <tr id="NightQualifier">
+      <td>Ночной режим</td>
+      <td>
+        <code>night</code><br/>
+        <code>notnight</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code night}: Ночное время</li>
+          <li>{@code notnight}: Дневное время</li>
+        </ul>
+        <p><em>Добавлено в API уровня 8.</em></p>
+        <p>Этот режим может измениться за время работы, если ночной режим оставлен в
+автоматическом режиме (по умолчанию), в котором режим изменяется в зависимости от времени суток.  Этот режим можно включить
+или отключить с помощью {@link android.app.UiModeManager}. В разделе <a href="runtime-changes.html">Обработка изменений в режиме выполнения</a> содержится информация о воздействии таких
+изменений на приложение во время выполнения.</p>
+      </td>
+    </tr>
+    <tr id="DensityQualifier">
+      <td>Плотность пикселов на экране (dpi)</td>
+      <td>
+        <code>ldpi</code><br/>
+        <code>mdpi</code><br/>
+        <code>hdpi</code><br/>
+        <code>xhdpi</code><br/>
+        <code>xxhdpi</code><br/>
+        <code>xxxhdpi</code><br/>
+        <code>nodpi</code><br/>
+        <code>tvdpi</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code ldpi}: Экраны низкой плотности; приблизительно 120 dpi.</li>
+          <li>{@code mdpi}: Экраны средней плотности (обычные HVGA); приблизительно
+160 dpi.</li>
+          <li>{@code hdpi}: Экраны высокой плотности; приблизительно 240 dpi.</li>
+          <li>{@code xhdpi}: Экраны очень высокой плотности; приблизительно 320 dpi. <em>Добавлено в API
+уровня 8.</em></li>
+          <li>{@code xxhdpi}: Экраны сверхвысокой плотности; приблизительно 480 dpi. <em>Добавлено в API
+уровня 16.</em></li>
+          <li>{@code xxxhdpi}: Использование исключительно высокой плотности (только значок запуска, см.
+<a href="{@docRoot}guide/practices/screens_support.html#xxxhdpi-note">примечание</a>
+в документе <em>Поддержка нескольких экранов</em>); приблизительно 640 dpi. <em>Добавлено в API
+уровня 18.</em></li>
+          <li>{@code nodpi}: Этот режим можно использовать для растровых графических ресурсов, которые не требуется масштабировать
+в соответствии с плотностью устройства.</li>
+          <li>{@code tvdpi}: Экраны промежуточной плотности между mdpi и hdpi; приблизительно 213 dpi. Этот режим не считается
+«основной» группой плотности. Он главным образом предназначен для телевизоров, и большинство
+приложений в нем не нуждается &mdash; при условии, что ресурсов mdpi и hdpi достаточно для большинства приложений, и
+система будет масштабировать их при необходимости. Этот квалификатор введен в API уровня 13.</li>
+        </ul>
+        <p>Шесть основных уровней плотности соотносятся как 3:4:6:8:12:16 (если игнорировать
+плотность tvdpi). Так, растровое изображение 9x9 в ldpi представляется как 12x12 в mdpi, 18x18 в hdpi, 24x24 в xhdpi и т. д.
+</p>
+        <p>Если графические ресурсы выглядят недостаточно хорошо на телевизоре или
+других определенных устройствах, и хочется попробовать ресурсы tvdpi, используйте масштабный коэффициент 1,33*mdpi. Например,
+ изображение 100 x 100 пикселов для экранов mdpi должно иметь размер 133 x 133 пиксела для tvdpi.</p>
+        <p class="note"><strong>Примечание.</strong> Использование квалификатора плотности не подразумевает, что
+ресурсы предназначены <em>только</em> для экранов этой плотности. Если не предусмотрены
+альтернативные ресурсы с квалификаторами, лучше подходящими к текущей конфигурации устройства, система может использовать
+любые <a href="#BestMatch">наиболее подходящие</a> ресурсы.</p>
+        <p>Дополнительную информацию о том, как обрабатывать
+различные плотности экранов, и как Android может масштабировать растровые изображения в соответствии текущей плотностью, см. в разделе <a href="{@docRoot}guide/practices/screens_support.html">Поддержка нескольких
+экранов</a>.</p>
+       </td>
+    </tr>
+    <tr id="TouchscreenQualifier">
+      <td>Тип сенсорного экрана</td>
+      <td>
+        <code>notouch</code><br/>
+        <code>finger</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code notouch}: Устройство не оснащено сенсорным экраном.</li>
+          <li>{@code finger}: Устройство оснащено сенсорным экраном, предназначенным
+для ввода с помощью пальцев пользователя.</li>
+        </ul>
+        <p>См. также поле конфигурации {@link android.content.res.Configuration#touchscreen}, которое
+указывает тип сенсорного экрана устройства.</p>
+      </td>
+    </tr>
+    <tr id="KeyboardAvailQualifier">
+      <td>Доступность клавиатуры</td>
+      <td>
+        <code>keysexposed</code><br/>
+        <code>keyshidden</code><br/>
+        <code>keyssoft</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code keysexposed}: В устройстве доступна клавиатура. Если в устройстве включена
+экранная клавиатура (что весьма вероятно), она может использоваться даже в случае, когда аппаратная клавиатура
+<em></em> недоступна пользователю, даже если устройство не имеет аппаратной клавиатуры. Если экранная
+клавиатура отсутствует или отключена, это квалификатор используется только в том случае, когда доступна
+аппаратная клавиатура.</li>
+          <li>{@code keyshidden}: Устройство имеет аппаратную клавиатуру, но она
+скрыта, <em>и </em> в устройстве <em>не</em> включена экранная клавиатура.</li>
+          <li>{@code keyssoft}: Экранная клавиатура в устройстве включена независимо от того,
+видна она или нет.</li>
+        </ul>
+        <p>Если предоставляются ресурсы <code>keysexposed</code>, но не предоставляются ресурсы <code>keyssoft</code>,
+система использует ресурсы <code>keysexposed</code> независимо от видимости
+клавиатуры, поскольку в системе включена экранная клавиатура.</p>
+        <p>Это состояние может измениться за время работы приложения, если
+пользователь открывает аппаратную клавиатуру. В разделе <a href="runtime-changes.html">Обработка изменений в режиме выполнения</a> содержится информация о воздействии таких
+изменений на приложение во время выполнения.</p>
+        <p>См. также поля конфигурации {@link
+android.content.res.Configuration#hardKeyboardHidden} и {@link
+android.content.res.Configuration#keyboardHidden}, которые указывают видимость аппаратной
+клавиатуры и видимость клавиатуры любого типа (включая экранную), соответственно.</p>
+      </td>
+    </tr>
+    <tr id="ImeQualifier">
+      <td>Основной способ ввода текста</td>
+      <td>
+        <code>nokeys</code><br/>
+        <code>qwerty</code><br/>
+        <code>12key</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nokeys}: В устройстве отсутствуют аппаратные клавиши для ввода текста.</li>
+          <li>{@code qwerty}: Устройство оснащено аппаратной клавиатурой с раскладкой qwerty, независимо от того, видна она
+пользователю
+или нет.</li>
+          <li>{@code 12key}: Устройство оснащено аппаратной клавиатурой с 12 клавишами, независимо от того, видна она пользователю
+или нет.</li>
+        </ul>
+        <p>См. также поле конфигурации {@link android.content.res.Configuration#keyboard}, которое
+указывает основной доступный способ ввода текста.</p>
+      </td>
+    </tr>
+    <tr id="NavAvailQualifier">
+      <td>Доступность клавиш перемещения</td>
+      <td>
+        <code>navexposed</code><br/>
+        <code>navhidden</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code navexposed}: Клавиши перемещения доступны пользователю.</li>
+          <li>{@code navhidden}: Клавиши перемещения недоступны (например, находятся за
+закрытой крышкой).</li>
+        </ul>
+        <p>Это состояние может измениться за время работы приложения, если
+пользователь открывает клавиши перемещения. В разделе <a href="runtime-changes.html">Обработка изменений в режиме выполнения</a> содержится
+информация о воздействии таких изменений на приложение во время выполнения.</p>
+        <p>См. также поле конфигурации {@link android.content.res.Configuration#navigationHidden}, которое
+указывает, скрыты ли клавиши перемещения.</p>
+      </td>
+    </tr>
+    <tr id="NavigationQualifier">
+      <td>Основной несенсорный способ перемещения курсора</td>
+      <td>
+        <code>nonav</code><br/>
+        <code>dpad</code><br/>
+        <code>trackball</code><br/>
+        <code>wheel</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nonav}: Устройство не оснащено другими средствами перемещения курсора, кроме
+сенсорного экрана.</li>
+          <li>{@code dpad}: Устройство оснащено навигационной клавишей.</li>
+          <li>{@code trackball}: Устройство оснащено трекболом.</li>
+          <li>{@code wheel}: Устройство оснащено навигационным колесиком (редко).</li>
+        </ul>
+        <p>См. также поле конфигурации {@link android.content.res.Configuration#navigation}, которое
+указывает способ перемещения курсора.</p>
+      </td>
+    </tr>
+<!-- DEPRECATED
+    <tr>
+      <td>Screen dimensions</td>
+      <td>Examples:<br/>
+        <code>320x240</code><br/>
+        <code>640x480</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>The larger dimension must be specified first. <strong>This configuration is deprecated
+and should not be used</strong>. Instead use "screen size," "wider/taller screens," and "screen
+orientation" described above.</p>
+      </td>
+    </tr>
+-->
+    <tr id="VersionQualifier">
+      <td>Версия платформы (уровень API)</td>
+      <td>Примеры:<br/>
+        <code>v3</code><br/>
+        <code>v4</code><br/>
+        <code>v7</code><br/>
+        и т. д.</td>
+      <td>
+        <p>Уровень API, поддерживаемый устройством. Например, <code>v1</code> для уровня API
+1 (устройства с Android 1.0 или выше) и <code>v4</code> для уровня API 4 (устройства с Android
+1.6 или выше). В документе <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Уровни API Android</a> содержится дополнительная информация
+об этих значениях.</p>
+      </td>
+    </tr>
+</table>
+
+
+<p class="note"><strong>Примечание.</strong> Некоторые квалификаторы конфигурации добавлены после версии Android
+1.0, поэтому в некоторых версиях Android поддерживаются не все квалификаторы. При использовании нового квалификатора косвенно
+добавляется квалификатор версии платформы, чтобы более старые устройства игнорировали его. Например, при использовании
+квалификатора <code>w600dp</code> автоматически добавляется квалификатор <code>v13</code>, так как квалификатор
+доступной ширины был новым в API уровня 13. Чтобы исключить какие-либо проблемы, всегда включайте набор
+ресурсов по умолчанию (набор ресурсов <em>без квалификаторов</em>). Для получения дополнительной информации см.
+раздел <a href="#Compatibility">Обеспечение оптимальной совместимости устройства с
+ресурсами</a>.</p>
+
+
+
+<h3 id="QualifierRules">Правила квалификатора имени</h3>
+
+<p>Здесь приведены некоторые правила использования имен квалификаторов:</p>
+
+<ul>
+    <li>Можно указать несколько квалификаторов для одного набора ресурсов, разделяя их дефисами. Например,
+ <code>drawable-en-rUS-land</code> применяется к устройствам в США, на английском языке в альбомной
+ориентации.</li>
+    <li>Квалификаторы должны идти в том же порядке, в котором они перечислены в <a href="#table2">таблице 2</a>. Например:
+
+      <ul>
+        <li>Неправильно: <code>drawable-hdpi-port/</code></li>
+        <li>Правильно: <code>drawable-port-hdpi/</code></li>
+      </ul>
+    </li>
+    <li>Нельзя использовать вложенные каталоги альтернативных ресурсов. Например, нельзя иметь каталог
+<code>res/drawable/drawable-en/</code>.</li>
+    <li>Значения не зависят от регистра букв.  Компилятор ресурсов преобразует имена каталогов
+в нижний регистр перед обработкой, чтобы избежать проблем в файловых системах,
+не учитывающих регистр. Прописные буквы в именах служат исключительно для удобочитаемости.</li>
+    <li>Поддерживается только одно значение квалификатора каждого типа. Например, если требуется использовать
+одинаковые графические файлы для испанского и французского языков, <em>нельзя</em> создавать
+каталог с именем <code>drawable-rES-rFR/</code>. Вместо этого необходимо создать два каталога ресурсов, например,
+<code>drawable-rES/</code> и <code>drawable-rFR/</code>, которые содержат соответствующие файлы.
+Однако не обязательно фактически копировать одинаковые файлы в оба каталога. Вместо этого
+можно создать псевдоним для ресурса. См. раздел <a href="#AliasResources">Создание
+псевдонимов ресурсов</a> ниже.</li>
+</ul>
+
+<p>После сохранения альтернативных ресурсов в каталоги с именами
+этих квалификаторов Android автоматически применяет ресурсы в приложении на основе текущей конфигурации
+устройства. При каждом запросе ресурсов Android проверяет каталоги альтернативных
+ресурсов, которые содержат файл запрошенного ресурса, затем <a href="#BestMatch">находят
+наиболее подходящий ресурс</a> (обсуждается ниже). Если нет альтернативных ресурсов, которые
+соответствуют конкретной конфигурации устройства, Android использует ресурсы по умолчанию (набор
+ресурсов для конкретного типа ресурсов, которые не содержат квалификатора
+конфигурации).</p>
+
+
+
+<h3 id="AliasResources">Создание псевдонимов ресурсов</h3>
+
+<p>Ресурс, предназначенный для нескольких конфигураций
+устройства (но не являющийся ресурсом по умолчанию), следует помещать
+только в один каталог альтернативных ресурсов. Вместо этого можно (в некоторых случаях) создать
+альтернативный
+ресурс, действующий в качестве псевдонима для ресурса, сохраненного в каталоге ресурсов по умолчанию.</p>
+
+<p class="note"><strong>Примечание.</strong> Не все ресурсы предлагают механизм, позволяющий
+создавать псевдоним для другого ресурса. В частности, анимации, меню, необработанные и другие неустановленные
+ресурсы в каталоге {@code xml/} не содержат такой возможности.</p>
+
+<p>Например, представьте, что имеется значок приложения, {@code icon.png}, и требуется иметь уникальные версии
+этого значка для разных языков. Однако в двух языках, канадском английском и канадском французском, требуется
+использовать одинаковую версию. Можно предположить, что требуется скопировать одно изображение
+в каталоги ресурсов для обоих языков, но
+это неверно. Вместо этого можно сохранить изображение для обоих языков, как {@code icon_ca.png} (любое
+имя, кроме {@code icon.png}), и поместить его
+в каталог по умолчанию {@code res/drawable/}. Затем создайте файл {@code icon.xml} в каталогах {@code
+res/drawable-en-rCA/} и {@code res/drawable-fr-rCA/} который ссылается на ресурс {@code icon_ca.png}
+с помощью элемента {@code &lt;bitmap&gt;}. Это позволяет хранить только одну версию файла PNG
+и два маленьких файла XML, которые указывают на него. (Пример файла XML показан ниже.)</p>
+
+
+<h4>Графические объекты</h4>
+
+<p>Чтобы создать псевдоним для существующего графического объекта, используйте элемент {@code &lt;bitmap&gt;}.
+Например:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/icon_ca" />
+</pre>
+
+<p>Если сохранить этот файл под именем {@code icon.xml} (в каталоге альтернативных ресурсов, например,
+{@code res/drawable-en-rCA/}), он компилируется в ресурс, на который
+можно ссылаться с помощью {@code R.drawable.icon}, но фактически он является псевдонимом для ресурса {@code
+R.drawable.icon_ca} (который сохранен в каталоге {@code res/drawable/}).</p>
+
+
+<h4>Макет</h4>
+
+<p>Чтобы создать псевдоним для существующего макета, используйте элемент {@code &lt;include&gt;}
+, заключенный в теги {@code &lt;merge&gt;}. Например:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;merge>
+    &lt;include layout="@layout/main_ltr"/>
+&lt;/merge>
+</pre>
+
+<p>Если сохранить этот файл под именем {@code main.xml}, он компилируется в ресурс, на который можно ссылаться
+с помощью {@code R.layout.main}, но фактически он является псевдонимом для ресурса {@code R.layout.main_ltr}
+.</p>
+
+
+<h4>Строки и другие простые значения</h4>
+
+<p>Чтобы создать псевдоним для существующей строки используйте идентификатор ресурса нужной
+строки в качестве значения для новой строки. Например:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;string name="hello">Hello&lt;/string>
+    &lt;string name="hi">@string/hello&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>Ресурс {@code R.string.hi} теперь является псевдонимом для {@code R.string.hello}.</p>
+
+<p> <a href="{@docRoot}guide/topics/resources/more-resources.html">Другие простые значения</a> работают
+аналогично. Например, цвет:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;color name="yellow">#f00&lt;/color>
+    &lt;color name="highlight">@color/red&lt;/color>
+&lt;/resources>
+</pre>
+
+
+
+
+<h2 id="Compatibility">Обеспечение оптимальной совместимости устройства с ресурсами</h2>
+
+<p>Для того чтобы приложение поддерживало несколько конфигураций устройств, очень важно
+всегда предоставлять ресурсы по умолчанию для каждого типа ресурсов, используемых приложением.</p>
+
+<p>Например, если приложение поддерживает несколько языков, всегда включайте каталог {@code
+values/} (в котором сохранены строки) <em>без</em> <a href="#LocaleQualifier">квалификатора языка и региона</a>. Если вместо этого поместить все файлы строк
+в каталоги с квалификаторами языка и региона, приложение закроется с ошибкой при запуске
+на устройстве, на котором установлен язык, отсутствующий в ваших строках. Но как только вы предоставили ресурсы
+{@code values/} по умолчанию, приложение будет работать правильно (даже если пользователь не
+понимает этого языка, это лучше, чем завершение с ошибкой).</p>
+
+<p>Таким же образом, если вы предоставляете различные ресурсы макета в зависимости от ориентации экрана, следует
+указать одну ориентацию в качестве ориентации по умолчанию. Например, вместо предоставления ресурсов макета в каталоге {@code
+layout-land/} для альбомной ориентации и в каталоге {@code layout-port/} для книжной ориентации, оставьте один вариант по умолчанию: например,
+{@code layout/} для альбомной и {@code layout-port/} для книжной ориентации.</p>
+
+<p>Предоставление ресурсов по умолчанию важно не только потому, что приложение сможет работать на конфигурации,
+которую вы не предусмотрели, но также и потому, что новые версии Android иногда добавляют
+квалификаторы конфигураций, которые не поддерживаются более старыми версиями. Если вы используете новый квалификатор ресурсов,
+но поддерживаете совместимость кода с более старыми версиями Android, то при выполнении вашего приложения в более старой версии
+Android оно завершится в ошибкой, если вы не предусмотрели ресурсы по умолчанию, так как
+оно не может использовать ресурсы, проименованные новым квалификатором. Например, если для параметра <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
+minSdkVersion}</a> установлено значение 4 и вы квалифицировали все графические ресурсы с использованием <a href="#NightQualifier">ночного режима</a> ({@code night} или {@code notnight}, который был добавлен в API
+уровня 8), то устройства с API уровня 4 не смогут получить доступ к графическим ресурсам и приложение завершится с ошибкой. В этом
+случае, вероятно, следует использовать {@code notnight} в качестве ресурсов по умолчанию и исключить этот
+квалификатор, разместив графические ресурсы в каталогах {@code drawable/} или {@code drawable-night/}.</p>
+
+<p>Поэтому для обеспечения оптимальной совместимости с устройствами обязательно предоставляйте ресурсы
+по умолчанию, которые приложение может правильно выполнять. Затем создайте альтернативные
+ресурсы для определенных конфигураций устройств с помощью квалификаторов конфигурации.</p>
+
+<p>Из этого правила есть одно исключение: Если в приложении для параметра <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> установлено значение 4 или
+выше, <em>не требуется</em> предоставлять графические ресурсы по умолчанию при предоставлении альтернативных графических
+ресурсов с квалификатором <a href="#DensityQualifier">плотность экрана</a>. Даже без графических ресурсов
+по умолчанию Android может найти наиболее подходящую альтернативную плотность экрана и масштабировать
+растровые изображения при необходимости. Однако для оптимальной работы на устройствах всех типов следует
+предоставить альтернативные графические ресурсы для всех трех типов плотности.</p>
+
+
+
+<h2 id="BestMatch">Как Android находит наиболее подходящий ресурс</h2>
+
+<p>Когда вы запрашиваете ресурс, для которого предоставлена альтернатива, Android выбирает
+альтернативный ресурс для использования в режиме выполнения в зависимости от текущей конфигурации устройства. Чтобы
+продемонстрировать, как Android выбирает альтернативный ресурс, допустим, что имеются следующие каталоги графических ресурсов,
+каждый из которых содержит различные версии одинаковых изображений:</p>
+
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+drawable-fr-rCA/
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+
+<p>И допустим, что устройство имеет следующую конфигурацию:</p>
+
+<p style="margin-left:1em;">
+Язык = <code>en-GB</code> <br/>
+Ориентация экрана = <code>port</code> <br/>
+Плотность пикселов на экране = <code>hdpi</code> <br/>
+Тип сенсорного экрана = <code>notouch</code> <br/>
+Основной способ ввода текста = <code>12key</code>
+</p>
+
+<p>Сравнивая конфигурацию устройства с доступными альтернативными ресурсами, Android выбирает
+графику из каталога {@code drawable-en-port}.</p>
+
+<p>Система приходит к решению об используемых ресурсах на основе следующей
+логики:</p>
+
+
+<div class="figure" style="width:371px">
+<img src="{@docRoot}images/resources/res-selection-flowchart.png" alt="" height="471" />
+<p class="img-caption"><strong>Рисунок 2.</strong> Как Android находит наиболее подходящий ресурс.
+Структурная схема.</p>
+</div>
+
+
+<ol>
+  <li>Исключение файлов ресурсов, которые противоречат конфигурации устройства.
+    <p>Каталог <code>drawable-fr-rCA/</code> исключается, так как он
+противоречит языку <code>en-GB</code>.</p>
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+<strike>drawable-fr-rCA/</strike>
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+<p class="note"><strong>Исключение.</strong> Квалификатор плотности пикселов на экране не исключается
+вследствие противоречия. Хотя плотность экрана устройства hdpi,
+каталог <code>drawable-port-ldpi/</code> не исключается, так как на этом этапе любая плотность экрана
+считается подходящей. Более подробная информация доступна в документе <a href="{@docRoot}guide/practices/screens_support.html">Поддержка нескольких
+экранов</a>.</p></li>
+
+  <li>Указание (следующего) квалификатора с высшим приоритетом в списке (<a href="#table2">таблица 2</a>).
+(Начать с MCC, затем двигаться вниз.) </li>
+  <li>Содержат ли какие-либо каталоги ресурсов этот квалификатор?  </li>
+    <ul>
+      <li>Если Нет, вернуться к шагу 2 и найти следующий квалификатор. (В нашем примере
+получается ответ «нет», пока не достигнут квалификатор языка.)</li>
+      <li>Если Да, перейти к шагу 4.</li>
+    </ul>
+  </li>
+
+  <li>Исключить каталоги ресурсов, которые не содержат этого квалификатора. В данном примере система исключает
+все каталоги, которые не содержат квалификатора языка:</li>
+<pre class="classic no-pretty-print">
+<strike>drawable/</strike>
+drawable-en/
+drawable-en-port/
+drawable-en-notouch-12key/
+<strike>drawable-port-ldpi/</strike>
+<strike>drawable-port-notouch-12key/</strike>
+</pre>
+<p class="note"><strong>Исключение.</strong> Если получен квалификатор плотности пикселов на экране,
+Android выбирает вариант, наиболее близко соответствующий плотности экрана устройства.
+Как правило, Android предпочитает уменьшать большие исходные изображения, чем увеличивать
+мелкие. См. раздел <a href="{@docRoot}guide/practices/screens_support.html">Поддержка нескольких
+экранов</a>.</p>
+  </li>
+
+  <li>Вернуться и повторять шаги 2, 3 и 4, пока не останется только один каталог. В нашем примере следующим
+квалификатором, для которого есть совпадения, является ориентация экрана.
+Поэтому исключаются ресурсы, не указывающие ориентацию экрана:
+<pre class="classic no-pretty-print">
+<strike>drawable-en/</strike>
+drawable-en-port/
+<strike>drawable-en-notouch-12key/</strike>
+</pre>
+<p>Остается каталог {@code drawable-en-port}.</p>
+  </li>
+</ol>
+
+<p>Хотя эта процедура выполняется для каждого запрошенного ресурса, система дополнительно оптимизирует
+некоторые вопросы. Одна из таких оптимизаций состоит в том, что поскольку конфигурация устройства известна, можно
+исключить альтернативные ресурсы, которые не могут подойти. Например, если используется конфигурация с английским
+языком ("en"), все каталоги ресурсов, для которых установлен другой квалификатор языка,
+никогда не включаются в пул проверяемых ресурсов (хотя
+каталоги ресурсов <em>без</em> квалификатора языка включаются).</p>
+
+<p>При выборе ресурсов на основе квалификаторов размера экрана система будет использовать ресурсы
+предназначенные для экрана, меньшего чем текущий экран, если нет более подходящих ресурсов
+(например, на экранах большого размера при необходимости будут использоваться ресурсы, предназначенные для экранов нормального размера). Однако, если
+ единственные доступные ресурсы <em>превосходят</em> размер текущего экрана, система
+<strong>не</strong> будет использовать эти ресурсы, и приложение аварийно завершится, если нет других ресурсов, соответствующих конфигурации
+устройства (например, если все ресурсы макета отмечены квалификатором {@code xlarge},
+но устройство оснащено экраном нормального размера).</p>
+
+<p class="note"><strong>Примечание.</strong> <em>Приоритет</em> квалификатора (в <a href="#table2">таблице 2</a>) более важен,
+чем число квалификаторов, которые точно соответствуют устройству. Например, на шаге 4 выше, последний
+вариант в списке содержит три квалификатора, которые точно соответствуют устройству (ориентация, тип
+сенсорного экрана и способ ввода), в то время как <code>drawable-en</code> содержит только один подходящий параметр
+(язык). Однако язык имеет более высокий приоритет, чем эти остальные квалификаторы, поэтому 
+<code>drawable-port-notouch-12key</code> вычеркивается.</p>
+
+<p>Для получения более подробной информации об использовании ресурсов в приложении перейдите к разделу <a href="accessing-resources.html">Доступ к ресурсам</a>.</p>
diff --git a/docs/html-intl/intl/ru/guide/topics/resources/runtime-changes.jd b/docs/html-intl/intl/ru/guide/topics/resources/runtime-changes.jd
new file mode 100644
index 0000000..5dc59c8
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/resources/runtime-changes.jd
@@ -0,0 +1,281 @@
+page.title=Обработка изменений в режиме выполнения
+page.tags=операция,жизненный цикл
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>Содержание документа</h2>
+  <ol>
+    <li><a href="#RetainingAnObject">Сохранение объекта во время изменения конфигурации</a></li>
+    <li><a href="#HandlingTheChange">Самостоятельная обработка изменения конфигурации</a>
+  </ol>
+
+  <h2>См. также:</h2>
+  <ol>
+    <li><a href="providing-resources.html">Предоставление ресурсов</a></li>
+    <li><a href="accessing-resources.html">Доступ к ресурсам</a></li>
+    <li><a href="http://android-developers.blogspot.com/2009/02/faster-screen-orientation-change.html">Более
+быстрое изменение ориентации экрана</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Некоторые конфигурации устройств могут изменяться в режиме выполнения
+(например, ориентация экрана, доступность клавиатуры и язык). Когда происходит такое изменение,
+Android перезапускает выполнение
+{@link android.app.Activity} (вызывается {@link android.app.Activity#onDestroy()}, затем {@link
+android.app.Activity#onCreate(Bundle) onCreate()}). Поведение при перезапуске позволяет
+приложению учитывать новые конфигурации путем автоматической перезагрузки в приложение
+альтернативных ресурсов, которые соответствуют новой конфигурации устройства.</p>
+
+<p>Для правильной обработки перезапуска важно, чтобы операция восстанавливала предыдущее
+состояние в течение нормального <a href="{@docRoot}guide/components/activities.html#Lifecycle">жизненного цикла
+операции</a>, при котором Android вызывает
+{@link android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} перед уничтожением
+операции, чтобы вы могли сохранить данные о состоянии приложения. Затем вы можете восстановить состояние
+во время выполнения метода {@link android.app.Activity#onCreate(Bundle) onCreate()} или {@link
+android.app.Activity#onRestoreInstanceState(Bundle) onRestoreInstanceState()}.</p>
+
+<p>Чтобы проверить, перезапускается ли приложение в неизмененном состоянии, следует
+вызывать изменение конфигурации (например, изменение ориентации экрана) во время выполнения различных
+задач в приложении. Приложение должно перезапускаться в любой момент без потери
+пользовательских данных и состояния, чтобы обработать события, например, изменение конфигурации или получение пользователем
+входящего телефонного звонка с последующим возвращением в приложение после того, как процесс
+приложения мог быть уничтожен. Чтобы узнать, как восстановить состояние операции, прочитайте раздел <a href="{@docRoot}guide/components/activities.html#Lifecycle">Жизненный цикл операции</a>.</p>
+
+<p>Однако возможна ситуация, при которой перезапуск приложения и
+восстановление значительного объема данных может быть слишком ресурсоемким и может создавать неприятное впечатление у пользователя. В такой ситуации
+есть два других варианта:</p>
+
+<ol type="a">
+  <li><a href="#RetainingAnObject">Сохранение объекта во время изменения конфигурации</a>
+  <p>Необходимо позволить перезапуск операции при изменении конфигурации, при этом перенести объект
+с сохранением состояния в новый экземпляр операции.</p>
+
+  </li>
+  <li><a href="#HandlingTheChange">Самостоятельная обработка изменения конфигурации</a>
+  <p>Не допускайте перезапуска операции системой во время определенных изменений конфигурации,
+но получайте обратный вызов при изменении конфигурации, чтобы при необходимости можно было вручную обновить
+операцию.</p>
+  </li>
+</ol>
+
+
+<h2 id="RetainingAnObject">Сохранение объекта во время изменения конфигурации</h2>
+
+<p>Если перезапуск операции требует восстановления больших объемов данных, повторного подключения к сети
+или выполнения других масштабных действий, то полный перезапуск вследствие изменения конфигурации
+может тормозить работу пользователя. Кроме того, может быть невозможно полное восстановление состояния операции
+ из объекта {@link android.os.Bundle}, который система сохраняет с помощью обратного вызова {@link
+android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()}, поскольку он не
+предназначен для переноса больших объектов (таких как растровые изображения), и данные в нем должны быть преобразованы в последовательную
+форму, а затем обратно, что потребляет много памяти и тормозит изменение конфигурации. В такой ситуации
+вы можете облегчить бремя повторной инициализации операции путем сохранения фрагмента {@link
+android.app.Fragment} в случае перезапуска операции вследствие изменения конфигурации. Этот фрагмент
+может содержать ссылки на объекты с сохранением состояния, которые требуется сохранить.</p>
+
+<p>Когда система Android завершает операцию вследствие изменения конфигурации, фрагменты
+операции, отмеченные для сохранения, не уничтожаются. Такие фрагменты можно добавлять в операцию
+для защиты объектов с сохранением состояния.</p>
+
+<p>Сохранение объектов с сохранением состояния во фрагменте во время изменения конфигурации в режиме выполнения:</p>
+
+<ol>
+  <li>Расширьте класс {@link android.app.Fragment} и объявите ссылки на объекты,
+сохраняющие состояние.</li>
+  <li>Вызовите {@link android.app.Fragment#setRetainInstance(boolean)}, когда фрагмент создан.
+      </li>
+  <li>Добавьте фрагмент в операцию.</li>
+  <li>Используйте {@link android.app.FragmentManager} для извлечения фрагмента при перезапуске
+операции.</li>
+</ol>
+
+<p>В качестве привмера приведено определение фрагмента следующим образом:</p>
+
+<pre>
+public class RetainedFragment extends Fragment {
+
+    // data object we want to retain
+    private MyDataObject data;
+
+    // this method is only called once for this fragment
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // retain this fragment
+        setRetainInstance(true);
+    }
+
+    public void setData(MyDataObject data) {
+        this.data = data;
+    }
+
+    public MyDataObject getData() {
+        return data;
+    }
+}
+</pre>
+
+<p class="caution"><strong>Внимание!</strong> Хотя можно сохранить любой объект,
+не следует передавать объект, связанный с {@link android.app.Activity}, например, {@link
+android.graphics.drawable.Drawable}, {@link android.widget.Adapter}, {@link android.view.View}
+или любой другой объект, связанный с {@link android.content.Context}. В этом случае произойдет
+утечка всех видов и ресурсов исходного экземпляра операции. (Утечка ресурсов
+означает, что приложение удерживает их, и система не может очистить от них память, поэтому
+может теряться значительный объем памяти).</p>
+
+<p>Затем используйте {@link android.app.FragmentManager} для добавления фрагмента в операцию. 
+Можно получить объект данных из фрагмента, когда операция повторно запускается в результате изменения конфигурации
+в режиме выполнения. В качестве примера операция определена следующим образом:</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    private RetainedFragment dataFragment;
+
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+
+        // find the retained fragment on activity restarts
+        FragmentManager fm = getFragmentManager();
+        dataFragment = (DataFragment) fm.findFragmentByTag(“data”);
+
+        // create the fragment and data the first time
+        if (dataFragment == null) {
+            // add the fragment
+            dataFragment = new DataFragment();
+            fm.beginTransaction().add(dataFragment, “data”).commit();
+            // load the data from the web
+            dataFragment.setData(loadMyData());
+        }
+
+        // the data is available in dataFragment.getData()
+        ...
+    }
+
+    &#64;Override
+    public void onDestroy() {
+        super.onDestroy();
+        // store the data in the fragment
+        dataFragment.setData(collectMyLoadedData());
+    }
+}
+</pre>
+
+<p>В этом примере {@link android.app.Activity#onCreate(Bundle) onCreate()} добавляет фрагмент
+или восстанавливает ссылку на него. Метод {@link android.app.Activity#onCreate(Bundle) onCreate()} также
+хранит объект, сохраняющий состояние, внутри экземпляра фрагмента.
+Метод {@link android.app.Activity#onDestroy() onDestroy()} обновляет объект, сохраняющий состояние, внутри 
+сохраненного экземпляра фрагмента.</p>
+
+
+
+
+
+<h2 id="HandlingTheChange">Самостоятельная обработка изменения конфигурации</h2>
+
+<p>Если приложению не требуется обновление ресурсов во время определенного изменения
+конфигурации <em>и</em> имеются ограничения производительности, не разрешающие
+перезапуск операции, можно объявить самостоятельную обработку операцией изменения конфигурации
+, что запрещает системе перезапускать эту операцию.</p>
+
+<p class="note"><strong>Примечание.</strong> Самостоятельная обработка изменения конфигурации может
+значительно затруднить использование альтернативных ресурсов, так как система не
+применяет их автоматически. Этот подход может применяться в крайнем случае, когда необходимо избежать перезапуска в результате
+изменения конфигурации, и для большинства приложений его использование не рекомендуется.</p>
+
+<p>Для объявления самостоятельной обработки изменения конфигурации операцией отредактируйте соответствующий элемент <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+в файле манифеста и включите в него атрибут <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> со значением, представляющим конфигурацию, которую
+требуется обрабатывать самостоятельно. Возможные значения перечислены в документации для атрибута <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> (наиболее часто используются значения {@code "orientation"} для
+предотвращения перезапуска при изменении ориентации экрана и {@code "keyboardHidden"} для предотвращения
+перезапуска при изменении доступности клавиатуры).  Можно объявить несколько значений конфигурации
+в атрибуте, разделяя их символом вертикальной черты {@code |}.</p>
+
+<p>Например, следующий код манифеста объявляет операцию, которая обрабатывает как
+изменение ориентации экрана, так и изменение доступности экрана:</p>
+
+<pre>
+&lt;activity android:name=".MyActivity"
+          android:configChanges="orientation|keyboardHidden"
+          android:label="@string/app_name">
+</pre>
+
+<p>Теперь, при изменении одного из этих элементов конфигурации, операция {@code MyActivity} не перезапускается.
+Вместо этого {@code MyActivity} получает вызов {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}. Этот метод
+получает объект {@link android.content.res.Configuration}, в котором указана
+новая конфигурация устройства. При считываении полей {@link android.content.res.Configuration}
+можно определить новую конфигурацию и внести соответствующие изменения, обновляя
+ресурсы, которые используются в интерфейсе. В момент
+вызова этого метода объект {@link android.content.res.Resources} операции обновляется
+и возвращает ресурсы на основе новой конфигурации, поэтому можно просто
+сбросить элементы пользовательского интерфейса без перезапуска операции системой.</p>
+
+<p class="caution"><strong>Внимание!</strong> Начиная с Android 3.2 (уровень API 13), <strong>
+«размер экрана» также изменяется</strong> при переходе между книжной и альбомной
+ориентациями устройства. Таким образом, если в режиме выполнения требуется предотвратить перезапуск вследствие изменения ориентации при разработке для
+уровня API 13 или выше (как объявлено в атрибутах <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> и <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>
+), необходимо включить значение {@code "screenSize"} в дополнение к значению {@code
+"orientation"}. То есть необходимо объявить {@code
+android:configChanges="orientation|screenSize"}. Однако, если приложение нацелено на уровень API
+12 или ниже, ваша операция всегда обрабатывает это изменение конфигурации самостоятельно (это изменение
+конфигурации не перезапускает операцию даже при работе на устройстве с Android 3.2 или более поздней версией).</p>
+
+<p>Например, следующая реализация метода {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}
+проверяет текущую ориентацию устройства:</p>
+
+<pre>
+&#64;Override
+public void onConfigurationChanged(Configuration newConfig) {
+    super.onConfigurationChanged(newConfig);
+
+    // Checks the orientation of the screen
+    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
+        Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
+    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
+        Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
+    }
+}
+</pre>
+
+<p>Объект {@link android.content.res.Configuration} представляет все текущие
+конфигурации, а не только изменившиеся. В большинстве случаев неважно,
+как именно изменилась конфигурация, поэтому можно просто переназначить все ресурсы, предоставляющие альтернативу
+для обрабатываемой конфигурации. Например, так как объект {@link
+android.content.res.Resources} обновлен, можно сбросить
+любые виды {@link android.widget.ImageView} с помощью {@link android.widget.ImageView#setImageResource(int)
+setImageResource()}
+, и после этого будут использоваться ресурсы, соответствующие новой конфигурации (как описано в разделе <a href="providing-resources.html#AlternateResources">Предоставление ресурсов</a>).</p>
+
+<p>Обратите внимание, что значения из полей {@link
+android.content.res.Configuration} являются целыми, которые соответствуют определенным константам
+из класса {@link android.content.res.Configuration}. Документацию об используемых константах
+для каждого поля см. в соответствующем поле по ссылке {@link
+android.content.res.Configuration}.</p>
+
+<p class="note"><strong>Помните!</strong> При объявлении операции, обрабатывающей изменение
+конфигурации, вы отвечаете за сброс любых элементов, для которых вы предоставили альтернативы. Если вы
+объявили, что операция обрабатывает изменение ориентации, и у вас есть изображения, которые должны быть заменены при переходе между
+альбомной и книжной ориентацией, вы должны переназначить каждый ресурс каждому элементу во время выполнения метода {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}.</p>
+
+<p>Если вам не требуется обновлять приложение на основе этих изменений
+конфигурации, можно вместо этого <em>не</em> реализовывать метод {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}. В этом
+случае все ресурсы, использованные до изменения конфигурации, продолжают использоваться
+, просто не происходит перезапуск операции. Однако ваше приложение обязательно должно быть
+способно выключаться и перезапускаться в предыдущем состоянии, поэтому не следует использовать эту технику
+как способ избежать сохранения состояния во время нормального жизненного цикла операции. Не только потому, что
+есть другие изменения конфигурации, которые приведут к перезапуску приложения, но
+также и потому, что вы должны обрабатывать события, например, когда пользователь покидает приложение, и оно
+закрывается до возвращения в него пользователя.</p>
+
+<p>Более подробную информацию об изменениях конфигурации, которые можно обрабатывать внутри операции, см. в документации <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> и описании
+класса {@link android.content.res.Configuration}.</p>
diff --git a/docs/html-intl/intl/ru/guide/topics/ui/controls.jd b/docs/html-intl/intl/ru/guide/topics/ui/controls.jd
new file mode 100644
index 0000000..62f4c76
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/ui/controls.jd
@@ -0,0 +1,90 @@
+page.title=Элементы управления вводом
+parent.title=Пользовательский интерфейс
+parent.link=index.html
+@jd:body
+
+<div class="figure" style="margin:0">
+  <img src="{@docRoot}images/ui/ui-controls.png" alt="" style="margin:0" />
+</div>
+
+<p>Элементы управления вводом представляют собой интерактивные компоненты пользовательского интерфейса приложения. В Android имеется
+широкий набор элементов управления, которые можно использовать в пользовательском интерфейсе, например, кнопки, текстовые поля, полосы прокрутки,
+флажки, кнопки изменения масштаба, переключатели и многие другие элементы.</p>
+
+<p>Чтобы добавить элемент управления вводом в пользовательский интерфейс, достаточно вставить соответствующий элемент XML в <a href="{@docRoot}guide/topics/ui/declaring-layout.html">XML-файл макета</a>. Ниже представлен пример макета
+с текстовым полем и кнопкой.</p>
+
+<pre style="clear:right">
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+    android:orientation="horizontal">
+    &lt;EditText android:id="@+id/edit_message"
+        android:layout_weight="1"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:hint="@string/edit_message" />
+    &lt;Button android:id="@+id/button_send"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/button_send"
+        android:onClick="sendMessage" />
+&lt;/LinearLayout>
+</pre>
+
+<p>Каждый элемент управления вводом поддерживает определенный набор событий ввода, чтобы можно было обрабатывать такие события, как ввод
+пользователем текста или нажатие кнопки.</p>
+
+
+<h2 id="CommonControls">Часто используемые элементы управления</h2>
+<p>Ниже представлен список некоторых часто используемых элементов управления, которые можно использовать в приложении. Чтобы узнать подробнее о каждом элементе управления,
+перейдите по соответствующей ссылке.</p>
+
+<p class="note"><strong>Примечание.</strong> Ниже перечислены далеко не все элементы управления, которые имеются в системе
+Android. Все они имеются в пакете {@link android.widget}. Если в вашем приложении требуется реализовать
+определенный тип элемента управления вводом, вы можете создать собственные <a href="{@docRoot}guide/topics/ui/custom-components.html">настраиваемые компоненты</a>.</p>
+
+<table>
+    <tr>
+        <th scope="col">Тип элемента управления</th>
+        <th scope="col">Описание</th>
+	<th scope="col">Связанные классы</th>
+    </tr>
+    <tr>
+        <td><a href="controls/button.html">Кнопка</a></td>
+        <td>Кнопка, которую пользователь может нажать для выполнения действия.</td>
+	<td>{@link android.widget.Button Button} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/text.html">Текстовое поле</a></td>
+        <td>Редактируемое текстовое поле. Можно воспользоваться виджетом <code>AutoCompleteTextView</code>, чтобы создать виджет для ввода текста с возможностью автозаполнения с помощью подсказок.</td>
+	<td>{@link android.widget.EditText EditText}, {@link android.widget.AutoCompleteTextView}</td>
+    </tr>
+    <tr>
+        <td><a href="controls/checkbox.html">Флажок</a></td>
+        <td>Переключатель, которым можно воспользоваться для включения или отключения функции или компонента. Флажки следует использовать при отображении группы доступных для выбора параметров, которые не являются взаимоисключающими.</td>
+	<td>{@link android.widget.CheckBox CheckBox} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/radiobutton.html">Переключатель</a></td>
+        <td>Этот элемент управления аналогичен флажку, за исключением того, что в группе элементов можно выбрать только один вариант.</td>
+	<td>{@link android.widget.RadioGroup RadioGroup} 
+	<br>{@link android.widget.RadioButton RadioButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/togglebutton.html" style="white-space:nowrap">Кнопка-переключатель</a></td>
+        <td>Кнопка включения/отключения с индикатором.</td>
+	<td>{@link android.widget.ToggleButton ToggleButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/spinner.html">Раскрывающийся список</a></td>
+        <td>Раскрывающийся список параметров, в котором пользователь может выбрать только одно значение.</td>
+	<td>{@link android.widget.Spinner Spinner} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/pickers.html">Элементы выбора</a></td>
+        <td>Элементы диалогового окна для выбора одного значения из набора с помощью кнопок со стрелками вверх и вниз или с помощью жеста пролистывания. Для ввода значений даты (дня, месяца, года) используйте виджет <code>DatePicker</code>, а для ввода значений времени (часов, минут и указания времени до полудня или после [AM/PM]) — виджет <code>TimePicker</code>. Формат этих виджетов выбирается автоматически на основе региональных настроек на устройстве.</td>
+	<td>{@link android.widget.DatePicker}, {@link android.widget.TimePicker}</td>
+    </tr>
+</table>
diff --git a/docs/html-intl/intl/ru/guide/topics/ui/declaring-layout.jd b/docs/html-intl/intl/ru/guide/topics/ui/declaring-layout.jd
new file mode 100644
index 0000000..71428f6
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/ui/declaring-layout.jd
@@ -0,0 +1,492 @@
+page.title=Макеты
+page.tags=view,viewgroup
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Содержание документа</h2>
+<ol>
+  <li><a href="#write">Создание XML</a></li>
+  <li><a href="#load">Загрузка ресурса XML</a></li>
+  <li><a href="#attributes">Атрибуты</a>
+    <ol>
+      <li><a href="#id">Идентификатор</a></li>
+      <li><a href="#layout-params">Параметры макета</a></li>
+    </ol>
+  </li>
+  <li><a href="#Position">Размещение макета</a></li>
+  <li><a href="#SizePaddingMargins">Размер, отступ и поля</a></li>
+  <li><a href="#CommonLayouts">Часто используемые макеты</a></li>
+  <li><a href="#AdapterViews">Создание макетов с помощью адаптера</a>
+    <ol>
+      <li><a href="#FillingTheLayout">Заполнение представления адаптера данными</a></li>
+      <li><a href="#HandlingUserSelections">Обработка нажатий</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>Ключевые классы</h2>
+  <ol>
+    <li>{@link android.view.View}</li>
+    <li>{@link android.view.ViewGroup}</li>
+    <li>{@link android.view.ViewGroup.LayoutParams}</li>
+  </ol>
+
+  <h2>См. также:</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/firstapp/building-ui.html">Создание простого
+пользовательского интерфейса</a></li> </div>
+</div>
+
+<p>Макет определяет визуальную структуру пользовательского интерфейса, например, пользовательского интерфейса <a href="{@docRoot}guide/components/activities.html">операции</a> или <a href="{@docRoot}guide/topics/appwidgets/index.html">виджета приложения</a>.
+Существует два способа объявить макет:</p>
+<ul>
+<li><strong>Объявление элементов пользовательского интерфейса в XML</strong>. В Android имеется удобный справочник XML-элементов
+для классов View и их подклассов, например таких, которые используются для виджетов и макетов.</li>
+<li><strong>Создание экземпляров элементов во время выполнения</strong>. Ваше
+приложение может программным образом создавать объекты View и ViewGroup (а также управлять их свойствами). </li>
+</ul>
+
+<p>Платформа Android предоставляет вам гибкость при использовании любого из этих способов для объявления пользовательского интерфейса приложения и его управления. Например, вы можете объявить в XML макеты по умолчанию, включая элементы экрана, которые будут отображаться в макетах, и их свойства. Затем вы можете добавить в приложение код, который позволяет изменять состояние объектов на экране (включая объявленные в XML) во время выполнения. </p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <ul>
+  <li>В <a href="{@docRoot}tools/sdk/eclipse-adt.html">подключаемом модуле ADT
+для Eclipse</a> предусмотрена функция предварительного просмотра созданного вами файла XML &mdash;
+достаточно открыть файл XML и выбрать вкладку <strong>Layout</strong> (Макет).</li>
+  <li>Для отладки макетов можно воспользоваться инструментом
+<a href="{@docRoot}tools/debugging/debugging-ui.html#hierarchyViewer">Hierarchy Viewer</a>
+&mdash; с его помощью можно просмотреть значения свойств,
+рамки с индикаторами заполнения или полей, а также полностью отрисованные представления
+прямо во время отладки приложения в эмуляторе или на устройстве.</li>
+  <li>С помощью инструмента <a href="{@docRoot}tools/debugging/debugging-ui.html#layoutopt">layoutopt</a>
+можно быстро проанализировать макеты и их иерархии на предмет низкой эффективности или иных проблем.</li>
+</div>
+</div>
+
+<p>Преимущество объявления пользовательского интерфейса в файле XML заключается в том, что таким образом вы можете более эффективно отделить представление своего приложения от кода, который управляет его поведением. Описания пользовательского интерфейса находятся за пределами кода вашего приложения. Это означает, что вы можете изменять или адаптировать интерфейс без необходимости вносить правки в исходный код и повторно компилировать его. Например, можно создать разные файлы XML макета для экранов разных размеров и разных ориентаций экрана, а также для различных языков. Кроме того, объявление макета в XML упрощает визуализацию структуры пользовательского интерфейса, благодаря чему отладка проблем также становится проще. В данной статье мы научим вас объявлять макет в XML. Если вы
+предпочитаете создавать экземпляры объектов View во время выполнения, обратитесь к справочной документации для классов {@link android.view.ViewGroup} и
+{@link android.view.View}.</p>
+
+<p>Как правило, справочник XML-элементов для объявления элементов пользовательского интерфейса точно следует структуре и правилам именования для классов и методов — названия элементов соответствуют названиям классов, а названия атрибутов соответствуют методам. Фактически, соответствие зачастую такое точное, что вы можете с легкостью догадаться, какой атрибут XML соответствует тому или иному методу класса, или какой класс соответствует заданному элементу XML. Однако следует отметить, что не все справочники являются идентичными. В некоторых случаях названия могут несколько отличаться. Например,
+у элемента EditText есть атрибут <code>text</code>, который соответствует методу
+<code>EditText.setText()</code>. </p>
+
+<p class="note"><strong>Совет.</strong> Дополнительные сведения о различных типах макетов представлены в разделе
+<a href="{@docRoot}guide/topics/ui/layout-objects.html">Часто используемые макеты</a>. Также в инструкциях по построению
+<a href="{@docRoot}resources/tutorials/views/index.html">объектов представления Hello </a> изложены сведения о создании различных макетов.</p>
+
+<h2 id="write">Создание XML</h2>
+
+<p>С помощью справочника XML-элементов, который имеется в Android, можно быстро и просто создавать макеты пользовательского интерфейса и содержащиеся в нем элементы, точно так же, как при создании веб-страниц в HTML &mdash; с помощью вложенных элементов. </p>
+
+<p>В каждом файле макета должен быть всего один корневой элемент, в качестве которого должен выступать объект представления (View) или представления группы (ViewGroup). После определения корневого элемента можно приступать к добавлению дополнительных объектов макета или виджетов в качестве дочерних элементов для постепенного формирования иерархии представлений, которая определяет ваш макет. Ниже представлен пример макета XML, в котором используется вертикальный объект {@link android.widget.LinearLayout},
+в котором размещены элементы {@link android.widget.TextView} и {@link android.widget.Button}.</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="Hello, I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="Hello, I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>После объявления макета в файле XML сохраните файл с расширением <code>.xml</code>
+в каталог <code>res/layout/</code> своего проекта Android для последующей компиляции. </p>
+
+<p>Дополнительные сведения о синтаксисе для файла XML макета представлены в документе <a href="{@docRoot}guide/topics/resources/layout-resource.html">Ресурсы макета</a>.</p>
+
+<h2 id="load">Загрузка ресурса XML</h2>
+
+<p>Во время компиляции приложения каждый файл XML макета компилируется в ресурс
+{@link android.view.View}. Вам необходимо загрузить ресурс макета в коде приложения в ходе реализации метода обратного вызова
+{@link android.app.Activity#onCreate(android.os.Bundle) Activity.onCreate()}.
+Для этого вызовите метод
+<code>{@link android.app.Activity#setContentView(int) setContentView()}</code>, передайте в него ссылку на ресурс макета в следующей форме:
+<code>R.layout.<em>layout_file_name</em></code>.
+Например, если макет XML сохранен как файл <code>main_layout.xml</code>, загрузить его
+для вашей операции необходимо следующим образом:</p>
+<pre>
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.main_layout);
+}
+</pre>
+
+<p>Метод обратного вызова <code>onCreate()</code> в вашей операции вызывается платформой Android во время
+запуска операции (см. сведения о жизненных циклах в
+документе
+<a href="{@docRoot}guide/components/activities.html#Lifecycle">Операции</a>).</p>
+
+
+<h2 id="attributes">Атрибуты</h2>
+
+<p>Каждый объект View и ViewGroup поддерживают свои собственные атрибуты XML.
+Некоторые атрибуты характерны только для объекта View (например, объект TextView поддерживает атрибут <code>textSize</code>),
+однако эти атрибуты также наследуются любыми объектами View, которые могут наследовать этот класс.
+Некоторые атрибуты являются общими для всех объектов View, поскольку они наследуются от корневого класса View (такие как атрибут
+<code>id</code>). Любые другие атрибуты рассматриваются как «параметры макета». Такие атрибуты
+описывают определенные ориентации макета для объекта View, которые заданы
+родительским объектом ViewGroup такого объекта.</p>
+
+<h3 id="id">Идентификатор</h3>
+
+<p>У любого объекта View может быть связанный с ним целочисленный идентификатор, который служит для обозначения уникальности объекта View в иерархии.
+Во время компиляции приложения этот идентификатор используется как целое число, однако идентификатор
+обычно назначается в файле XML макета в виде строки в атрибуте <code>id</code>.
+Этот атрибут XML является общим для всех объектов View
+(определенных классом {@link android.view.View}), который вы будете использовать довольно часто.
+Синтаксис для идентификатора внутри тега XML следующий:</p>
+<pre>android:id="&#64;+id/my_button"</pre>
+
+<p>Символ @ в начале строки указывает на то, что обработчику XML следует выполнить синтаксический анализ остальной части
+идентификатора, выполнить ее синтаксический анализ и определить ее в качестве ресурса идентификатора. Символ плюса (+) обозначает, что это имя нового ресурса,
+который необходимо создать и добавить к нашим ресурсам (в файле <code>R.java</code>). В Android существует ряд других ресурсов
+идентификатора. При ссылке на идентификатор ресурса Android вам не нужно указывать символ плюса,
+однако необходимо добавить пространство имен пакета <code>android</code>, как указано ниже:</p>
+<pre>android:id="&#64;android:id/empty"</pre>
+<p>После добавления пространства имен пакета <code>android</code> можно сослаться на идентификатор из класса ресурсов<code>android.R</code>,
+а не из локального класса ресурсов.</p>
+
+<p>Чтобы создать представления и сослаться на них из приложения, обычно следует выполнить указанные ниже действия.</p>
+<ol>
+  <li>Определите представление или виджет в файле макета и присвойте ему уникальный идентификатор:
+<pre>
+&lt;Button android:id="&#64;+id/my_button"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="&#64;string/my_button_text"/>
+</pre>
+  </li>
+  <li>Затем создайте экземпляр объекта представления и выполните его захват из макета
+(обычно с помощью метода <code>{@link android.app.Activity#onCreate(Bundle) onCreate()}</code>):
+<pre>
+Button myButton = (Button) findViewById(R.id.my_button);
+</pre>
+  </li>
+</ol>
+<p>Определение идентификаторов для объектов представления имеет важное значение при создании объекта {@link android.widget.RelativeLayout}.
+В относительном макете универсальные идентификаторы используются для
+расположения представлений относительно друг друга.</p>
+<p>Идентификатор не обязательно должен быть уникальным в рамках всей иерархии,
+а только в той ее части, где вы выполняете поиск (зачастую это может быть как раз вся иерархия, поэтому
+при возможности идентификаторы должны быть полностью уникальными).</p>
+
+
+<h3 id="layout-params">Параметры макета</h3>
+
+<p>Атрибуты макета XML, которые называются <code>layout_<em>something</em></code>, определяют
+параметры макета для объекта представления, подходящие для класса ViewGroup, в котором он находится.</p>
+
+<p>Каждый класс ViewGroup реализует вложенный класс, который наследует {@link
+android.view.ViewGroup.LayoutParams}. В этом подклассе
+имеются типы свойств, которые определяют размер и положение каждого дочернего представления,
+подходящие для его группы. На рисунке 1 показано, что родительская группа
+представлений определяет параметры макета для каждого дочернего представления (включая дочернюю группу представлений).</p>
+
+<img src="{@docRoot}images/layoutparams.png" alt="" />
+<p class="img-caption"><strong>Рисунок 1.</strong> Графическое представление иерархии представления с параметрами
+макета каждого представления.</p>
+
+<p>Обратите внимание, что подкласс LayoutParams имеет собственный синтаксис для задания
+значений. Каждый дочерний элемент должен определять LayoutParams, которые подходят для его родительского элемента,
+тогда как он сам может определять другие LayoutParams для своих дочерних элементов. </p>
+
+<p>Все группы представлений включают в себя параметры ширины и высоты (<code>layout_width</code> и
+<code>layout_height</code>), и каждое представление должно определять их. Многие
+LayoutParams также включают дополнительные параметры полей и границ. <p>
+
+<p>Для параметров ширины и высоты можно указать точные значения, хотя, возможно,
+вам не захочется делать это часто. Обычно для задания значений ширины и высоты используется одна из следующих
+констант: </p>
+
+<ul>
+  <li><var>wrap_content</var> — размер представления задается по размерам
+его содержимого;</li>
+  <li><var>match_parent</var> (которая до API уровня 8 <var>называлась fill_parent</var> )
+ — размер представления определяется ограничениями, задаваемыми его родительской группой представлений.</li>
+</ul>
+
+<p>Как правило, не рекомендуется задавать абсолютные значения ширины и высоты макета
+(например, в пикселах). Вместо этого используйте относительные единицы измерения, такие как
+пикселы, не зависящие от разрешения экрана (<var>dp</var>), <var>wrap_content</var>или
+<var>match_parent</var>Это гарантирует одинаковое отображение 
+вашего приложения на устройствах с экранами разных размеров.
+Принятые типы измерения определены в 
+документе
+<a href="{@docRoot}guide/topics/resources/available-resources.html#dimension">Доступные ресурсы</a>.</p>
+
+
+<h2 id="Position">Размещение макета</h2>
+   <p>
+   Представление имеет прямоугольную форму. Расположение представления
+определяется его координатами <em>слева</em> и <em>сверху</em>, а его размеры
+— параметрами ширины и высоты. Расположение измеряется
+в пикселах.
+   </p>
+
+   <p>
+   Расположение представления можно получить путем вызова методов
+{@link android.view.View#getLeft()} и {@link android.view.View#getTop()}. Первый возвращает координату слева (по оси X)
+для прямоугольника представления. Второй возвращает верхнюю координату
+ (по оси Y) для прямоугольника представления. Оба этих метода
+возвращают расположение представления относительно его родительского элемента. Например,
+когда метод <code>getLeft()</code> возвращает 20, это означает, что представление находится на расстоянии 20 пикселов
+от левого края его непосредственного родительского элемента.
+   </p>
+
+   <p>
+   Кроме того, имеется несколько удобных методов
+({@link android.view.View#getRight()} и {@link android.view.View#getBottom()}), которые позволяют избежать лишних вычислений.
+   Эти методы возвращают координаты правого и нижнего краев
+прямоугольника представления. Например, вызов метода {@link android.view.View#getRight()}
+аналогичен следующему вычислению: <code>getLeft() + getWidth()</code>.
+   </p>
+
+
+<h2 id="SizePaddingMargins">Размер, отступ и поля</h2>
+   <p>
+   Размер представления выражается его шириной и высотой. Фактически, представление
+обладает двумя парами значений «ширина-высота».
+   </p>
+
+   <p>
+   Первая пара — это <em>измеренная ширина</em> и
+<em>измеренная высота</em>. Эти размеры определяют размер представления
+в границах своего родительского элемента. Измеренные
+размеры можно получить, вызвав методы {@link android.view.View#getMeasuredWidth()}
+и{@link android.view.View#getMeasuredHeight()}.
+   </p>
+
+   <p>
+   Вторая пара значений — это просто <em>ширина</em> и <em>высота</em> (иногда они называются
+<em>чертежная ширина</em> и <em>чертежная высота</em>). Эти размеры
+определяют фактический размер представления на экране после разметки во время их
+отрисовки. Эти значения могут отличаться от
+измеренных ширины и высоты, хотя это и не обязательно. Значения ширины и высоты можно получить, вызвав методы
+{@link android.view.View#getWidth()} и {@link android.view.View#getHeight()}.
+   </p>
+
+   <p>
+   При измерении своих размеров представление учитывает заполнение. Отступ
+выражается в пикселах для левой, верхней, правой и нижней частей представления.
+   Отступ можно использовать для смещения содержимого представления на определенное количество
+пикселов. Например, значение отступа слева, равное 2, приведет к тому, что содержимое представления будет смещено
+на 2 пиксела вправо от левого края представления. Для задания отступов можно использовать метод
+{@link android.view.View#setPadding(int, int, int, int)}. Чтобы запросить отступ, используются методы
+{@link android.view.View#getPaddingLeft()}, {@link android.view.View#getPaddingTop()},
+{@link android.view.View#getPaddingRight()} и {@link android.view.View#getPaddingBottom()}.
+   </p>
+
+   <p>
+   Даже если представление может определить отступ, в нем отсутствует поддержка
+полей. Такая возможность имеется у группы представлений. Дополнительные сведения представлены в справке по объектам
+{@link android.view.ViewGroup} и
+{@link android.view.ViewGroup.MarginLayoutParams}.
+   </p>
+
+   <p>Дополнительные сведения о размерах представлены в разделе
+<a href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">Значения размеров</a>.
+   </p>
+
+
+
+
+
+
+<style type="text/css">
+div.layout {
+  float:left;
+  width:200px;
+  margin:0 0 20px 20px;
+}
+div.layout.first {
+  margin-left:0;
+  clear:left;
+}
+</style>
+
+
+
+
+<h2 id="CommonLayouts">Часто используемые макеты</h2>
+
+<p>В каждом подклассе класса {@link android.view.ViewGroup} имеется уникальный способ отображения
+вложенных в него представлений. Ниже представлены некоторые из наиболее часто используемых типов макетов, которые входят в состав платформы
+Android.</p>
+
+<p class="note"><strong>Примечание.</strong> Несмотря на то, что для формирования пользовательского интерфейса один
+макет может содержать один или несколько вложенных макетов, рекомендуется использовать как можно более простую 
+иерархию макетов. Чем меньше в макете вложенных элементов, тем быстрее выполняется его отрисовка (горизонтальная иерархия
+представлений намного лучше вертикальной).</p>
+
+<!--
+<h2 id="framelayout">FrameLayout</h2>
+<p>{@link android.widget.FrameLayout FrameLayout} is the simplest type of layout
+object. It's basically a blank space on your screen that you can
+later fill with a single object &mdash; for example, a picture that you'll swap in and out.
+All child elements of the FrameLayout are pinned to the top left corner of the screen; you cannot
+specify a different location for a child view. Subsequent child views will simply be drawn over
+previous ones,
+partially or totally obscuring them (unless the newer object is transparent).
+</p>
+-->
+
+
+<div class="layout first">
+  <h4><a href="layout/linear.html">Линейный макет</a></h4>
+  <a href="layout/linear.html"><img src="{@docRoot}images/ui/linearlayout-small.png" alt="" /></a>
+  <p>Макет, в котором дочерние элементы представлены в горизонтальных или вертикальных столбцах. Если длина окна больше длины экрана, в нем
+создается полоса прокрутки.</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/relative.html">Относительный макет</a></h4>
+  <a href="layout/relative.html"><img src="{@docRoot}images/ui/relativelayout-small.png" alt="" /></a>
+  <p>В этом макете можно задавать расположение дочерних объектов относительно друг друга (дочерний элемент А находится
+слева от дочернего элемента Б) или относительно родительского объекта (выравнивание относительно верхнего края родительского элемента).</p>
+</div>
+
+<div class="layout">
+  <h4><a href="{@docRoot}guide/webapps/webview.html">Представление веб-страницы</a></h4>
+  <a href="{@docRoot}guide/webapps/webview.html"><img src="{@docRoot}images/ui/webview-small.png" alt="" /></a>
+  <p>Отображение веб-страниц.</p>
+</div>
+
+
+
+
+<h2 id="AdapterViews" style="clear:left">Создание макетов с помощью адаптера</h2>
+
+<p>Если содержимое макета является динамическим или не определено заранее, можно использовать макет, который создает подклассы класса
+{@link android.widget.AdapterView} для заполнения макета представлениями во время выполнения. Подкласс класса
+{@link android.widget.AdapterView} использует {@link android.widget.Adapter} для
+привязки данных к своему макету. {@link android.widget.Adapter} выступает в качестве посредника между источником
+данных и макетом {@link android.widget.AdapterView} &mdash; {@link android.widget.Adapter}
+извлекает данные (из источника, например, массива или запроса к базе данных) и преобразует каждую запись
+в представление, которое можно добавить в макет {@link android.widget.AdapterView}.</p>
+
+<p>Часто используемые макеты, для создания которых можно использовать адаптер, включают в себя следующие:</p>
+
+<div class="layout first">
+  <h4><a href="layout/listview.html">Представление в виде списка</a></h4>
+  <a href="layout/listview.html"><img src="{@docRoot}images/ui/listview-small.png" alt="" /></a>
+  <p>Отображение списка в один столбец с возможностью прокрутки.</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/gridview.html">Представление в виде сетки</a></h4>
+  <a href="layout/gridview.html"><img src="{@docRoot}images/ui/gridview-small.png" alt="" /></a>
+  <p>Отображение сетки из столбцов и строк с возможностью прокрутки.</p>
+</div>
+
+
+
+<h3 id="FillingTheLayout" style="clear:left">Заполнение представления адаптера данными</h3>
+
+<p>Чтобы заполнить адаптер {@link android.widget.AdapterView}, такой как {@link android.widget.ListView} или
+{@link android.widget.GridView}, свяжите экземпляр {@link android.widget.AdapterView} с приложением
+{@link android.widget.Adapter}, которое извлекает данные из внешнего источника и создает объект {@link
+android.view.View}, который представляет каждую запись данных.</p>
+
+<p>В Android предусмотрено несколько подклассов адаптера {@link android.widget.Adapter}, которые полезно использовать для
+извлечения данных различных видов и создания представлений для {@link android.widget.AdapterView}. Вот
+два наиболее часто используемых адаптера:</p>
+
+<dl>
+  <dt>{@link android.widget.ArrayAdapter}</dt>
+    <dd>Этот адаптер используется в случае, когда в качестве источника данных выступает массив. По умолчанию {@link
+android.widget.ArrayAdapter} создает представление для каждого элемента массива путем вызова метода {@link
+java.lang.Object#toString()} для каждого элемента и помещения его содержимого в объект {@link
+android.widget.TextView}.
+      <p>Например, если имеется массив строк, которые необходимо отобразить в объекте {@link
+android.widget.ListView}, запустите новый {@link android.widget.ArrayAdapter} с помощью
+конструктора, чтобы указать макет для каждой строки и массива строк:</p>
+<pre>
+ArrayAdapter&lt;String> adapter = new ArrayAdapter&lt;String>(this,
+        android.R.layout.simple_list_item_1, myStringArray);
+</pre>
+<p>Аргументы для такого конструктора следующие:</p>
+<ul>
+  <li>ваше приложение {@link android.content.Context};</li>
+  <li>макет, в котором содержится объект {@link android.widget.TextView} для каждой строки в массиве;</li>
+  <li>массив строк.</li>
+</ul>
+<p>Затем достаточно вызвать метод
+{@link android.widget.ListView#setAdapter setAdapter()} для своего объекта {@link android.widget.ListView}:</p>
+<pre>
+ListView listView = (ListView) findViewById(R.id.listview);
+listView.setAdapter(adapter);
+</pre>
+
+      <p>Чтобы настроить внешний вид каждого элемента, можно переопределить метод {@link
+java.lang.Object#toString()} для объектов в массиве. Либо можно создать представление для каждого элемента,
+который отличается от{@link android.widget.TextView} (например, если для каждого элемента массива требуется объект
+{@link android.widget.ImageView}), наследовать класс {@link
+android.widget.ArrayAdapter} и переопределить метод {@link android.widget.ArrayAdapter#getView
+getView()}, чтобы возвратить требуемый тип представления для каждого элемента.</p>
+
+</dd>
+
+  <dt>{@link android.widget.SimpleCursorAdapter}</dt>
+    <dd>Этот адаптер используется в случае, когда в качестве источника данных выступает объект {@link android.database.Cursor}. Если
+используется {@link android.widget.SimpleCursorAdapter}, необходимо указать макет, который будет
+использоваться для каждой строки в объекте {@link android.database.Cursor}, а также в какие представления макета необходимо вставить столбцы в объекте {@link android.database.Cursor}
+. Например, если необходимо создать список
+имен людей с их номерами телефонов, можно выполнить запрос, который возвращает объект {@link
+android.database.Cursor}, содержащий строку для каждого человека и столбцы для имен и номеров
+телефонов. Затем создается массив строк с указанием столбцов из объекта {@link
+android.database.Cursor}, которые необходимо поместить в макет для каждого результата, а также массив целых чисел, в котором указаны
+соответствующие представления для вставки каждого столбца:</p>
+<pre>
+String[] fromColumns = {ContactsContract.Data.DISPLAY_NAME,
+                        ContactsContract.CommonDataKinds.Phone.NUMBER};
+int[] toViews = {R.id.display_name, R.id.phone_number};
+</pre>
+<p>При создании экземпляра объекта {@link android.widget.SimpleCursorAdapter} передайте в него макет,
+который будет использоваться для каждого результата, объект {@link android.database.Cursor} с результатами и два следующих массива:</p>
+<pre>
+SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
+        R.layout.person_name_and_number, cursor, fromColumns, toViews, 0);
+ListView listView = getListView();
+listView.setAdapter(adapter);
+</pre>
+<p>Затем {@link android.widget.SimpleCursorAdapter} создает представление для каждой строки в объекте
+{@link android.database.Cursor} с помощью предоставленного макета путем вставки каждого элемента {@code
+fromColumns} в соответствующее представление {@code toViews}.</p>.</dd>
+</dl>
+
+
+<p>Если в течение жизненного цикла вашего приложения вы вносите изменения в соответствующие данные, чтение которых
+выполняет адаптер, вам следует вызвать метод {@link android.widget.ArrayAdapter#notifyDataSetChanged()}. Это позволит
+уведомить связанное представление о том, что данные были изменены и ему требуется выполнить обновление.</p>
+
+
+
+<h3 id="HandlingUserSelections">Обработка нажатий</h3>
+
+<p>Чтобы организовать реагирование на нажатие каждого элемента в {@link android.widget.AdapterView},
+реализуйте интерфейс {@link android.widget.AdapterView.OnItemClickListener}. Например:</p>
+
+<pre>
+// Create a message handling object as an anonymous class.
+private OnItemClickListener mMessageClickedHandler = new OnItemClickListener() {
+    public void onItemClick(AdapterView parent, View v, int position, long id) {
+        // Do something in response to the click
+    }
+};
+
+listView.setOnItemClickListener(mMessageClickedHandler);
+</pre>
+
+
+
diff --git a/docs/html-intl/intl/ru/guide/topics/ui/dialogs.jd b/docs/html-intl/intl/ru/guide/topics/ui/dialogs.jd
new file mode 100644
index 0000000..515ecc6
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/ui/dialogs.jd
@@ -0,0 +1,798 @@
+page.title=Диалоговые окна
+page.tags=alertdialog,dialogfragment
+
+@jd:body
+
+
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>Содержание документа</h2>
+<ol>
+  <li><a href="#DialogFragment">Создание фрагмента диалогового окна</a></li>
+  <li><a href="#AlertDialog">Создание диалогового окна оповещения</a>
+    <ol>
+      <li><a href="#AddingButtons">Добавление кнопок</a></li>
+      <li><a href="#AddingAList">Добавление списка</a></li>
+      <li><a href="#CustomLayout">Создание пользовательского макета</a></li>
+    </ol>
+  </li>
+  <li><a href="#PassingEvents">Передача событий обратно в основное приложение</a></li>
+  <li><a href="#ShowingADialog">Отображение диалогового окна</a></li>
+  <li><a href="#FullscreenDialog">Отображение диалогового окна в полноэкранном режиме или в виде встроенного фрагмента</a>
+    <ol>
+      <li><a href="#ActivityAsDialog">Отображение операции в качестве диалога на больших экранах</a></li>
+    </ol>
+  </li>
+  <li><a href="#DismissingADialog">Закрытие диалогового окна</a></li>
+</ol>
+
+    <h2>Ключевые классы</h2>
+    <ol>
+      <li>{@link android.app.DialogFragment}</li>
+      <li>{@link android.app.AlertDialog}</li>
+    </ol>
+    
+    <h2>См. также:</h2>
+    <ol>
+      <li><a href="{@docRoot}design/building-blocks/dialogs.html">Руководство по дизайну диалоговых окон</a></li>
+      <li><a href="{@docRoot}guide/topics/ui/controls/pickers.html">Элементы выбора</a> (диалоговые окна выбора даты/времени)</li>
+    </ol>
+  </div>
+</div>
+
+<p>Диалоговое окно — это небольшое окно, которое предлагает пользователю
+принять решение или ввести дополнительную информацию. Диалоговое окно не заполняет весь экран и,
+как правило, используется при модальных событиях, для продолжения которых требуется действие пользователя.</p>
+
+<div class="note design">
+<p><strong>Дизайн диалогового окна</strong></p>
+  <p>Подробную информацию о дизайне диалоговых окон, включая рекомендации
+  для вашего языка см. в <a href="{@docRoot}design/building-blocks/dialogs.html">Руководстве</a> по дизайну диалоговых окон.</p>
+</div>
+
+<img src="{@docRoot}images/ui/dialogs.png" />
+
+<p>Класс {@link android.app.Dialog} — это базовый класс для создания диалоговых окон, но
+реализовывать напрямую класс {@link android.app.Dialog} не рекомендуется.
+Вместо этого следует использовать один из следующих подклассов:</p>
+<dl>
+  <dt>{@link android.app.AlertDialog}</dt>
+  <dd>Диалоговое окно, в котором могут отображаться заголовок, кнопки вплоть до трех штук, список
+    из выбираемых элементов либо пользовательский макет.</dd>
+  <dt>{@link android.app.DatePickerDialog} или {@link android.app.TimePickerDialog}</dt>
+  <dd>Диалоговое окно с предопределенным пользовательским интерфейсом, с помощью которого пользователь указывает значения даты или времени.</dd>
+</dl>
+
+<div class="sidebox">
+<h2>Следует избегать ProgressDialog</h2>
+<p>В Android имеется другой класс диалоговых окон под названием
+{@link android.app.ProgressDialog}, которые отображают диалоговое окно с индикатором выполнения процесса. Тем не менее, если
+необходимо отобразить прогресс загрузки или неопределенный процес, рекомендуется следовать
+инструкциям по дизайну <a href="{@docRoot}design/building-blocks/progress.html">Выполнение &amp;
+Операции</a>, чтобы использовать {@link android.widget.ProgressBar} в вашем макете.</p>
+</div>
+
+<p>Эти классы определяют стиль и структуру вашего диалогового окна, однако следует
+использовать{@link android.support.v4.app.DialogFragment} в качестве контейнера вашего диалогового окна.
+Класс {@link android.support.v4.app.DialogFragment} предоставляет все функции,
+необходимые для создания диалогового окна и управления его внешним видом, вместо вызова методов
+к объекту{@link android.app.Dialog}.</p>
+
+<p>Использование {@link android.support.v4.app.DialogFragment} для управления диалоговым окном
+обеспечивает корректную обработку событий жизненного цикла
+, таких как нажатие пользователем кнопки <em>Назад</em> или поворот экрана. С помощью класса {@link
+android.support.v4.app.DialogFragment} также происходит повторное использование пользовательского интерфейса диалогового окна в качестве
+встраиваемого компонента в пользовательский интерфейс более высокого уровня — подобно традиционному классу {@link
+android.support.v4.app.Fragment} (например, когда необходимо различное отображение пользовательского интерфеса диалогового окна
+на больших и маленьких экранах).</p>
+
+<p>В следующих разделах руководства описано использование {@link
+android.support.v4.app.DialogFragment} в сочетании с объектом {@link android.app.AlertDialog}
+. Если необходимо создать элемент выбора даты или времени, обратитесь к руководству
+<a href="{@docRoot}guide/topics/ui/controls/pickers.html">Элементы выбора</a>.</p>
+
+<p class="note"><strong>Примечание:</strong>
+Поскольку класс {@link android.app.DialogFragment} изначально включен в
+Android 3.0 (уровень API 11), в настоящем документе описывается использование класса {@link
+android.support.v4.app.DialogFragment}, предоставляемого в <a href="{@docRoot}tools/support-library/index.html">Библиотеке поддержки</a>. После добавления этой библиотеки
+в приложение появится возможность использовать{@link android.support.v4.app.DialogFragment} и множество других
+API на устройствах, работающих на Android 1.6 и выше. Если минимальная версия вашего приложения поддерживает
+уровень API 11 и выше, можно использовать фреймворк-версию {@link
+android.app.DialogFragment}, но следует иметь в виду, что данный документ ссылается на API
+ со вспомогательными библиотеками. При использовании вспомогательной библиотеки
+необходимо импортировать класс <code>android.support.v4.app.DialogFragment</code>
+, а <em>не</em> <code>android.app.DialogFragment</code>.</p>
+
+
+<h2 id="DialogFragment">Создание фрагмента диалогового окна</h2>
+
+<p>Вы можете реализовать широкие возможности дизайна диалоговых окон, включая создание
+пользовательских макетов, а также пути, описанные в руководстве по дизайну <a href="{@docRoot}design/building-blocks/dialogs.html">Диалоговых окон</a>
+&mdash;путем расширения
+{@link android.support.v4.app.DialogFragment} и создания{@link android.app.AlertDialog}
+в методе обратного вызова {@link android.support.v4.app.DialogFragment#onCreateDialog
+onCreateDialog()}.</p>
+
+<p>Например, имеется базовый класс {@link android.app.AlertDialog}, управляемый в рамках
+{@link android.support.v4.app.DialogFragment}:</p>
+
+<pre>
+public class FireMissilesDialogFragment extends DialogFragment {
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Use the Builder class for convenient dialog construction
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // FIRE ZE MISSILES!
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // User cancelled the dialog
+                   }
+               });
+        // Create the AlertDialog object and return it
+        return builder.create();
+    }
+}
+</pre>
+
+<div class="figure" style="width:290px;margin:0 0 0 20px">
+<img src="{@docRoot}images/ui/dialog_buttons.png" alt="" />
+<p class="img-caption"><strong>Рисунок 1.</strong>
+Диалоговое окно с сообщением и двумя кнопками действия.</p>
+</div>
+
+<p>Итак, после создания экземпляра этого класса и вызова {@link
+android.support.v4.app.DialogFragment#show show()} к этому объекту появляется диалоговое окно,
+показанное на рисунке 1.</p>
+
+<p>В следующем разделе предоставлена более подробная информация об использовании API {@link android.app.AlertDialog.Builder}
+для создания диалоговых окон.</p>
+
+<p>В зависимости от сложности создаваемого диалогового окна возможно реализовать множество других методов
+обратного вызова в {@link android.support.v4.app.DialogFragment}, включая все базовые
+<a href="{@docRoot}guide/components/fragments.html#Lifecycle">методы жизненных циклов фрагментов</a>.
+
+
+
+
+
+<h2 id="AlertDialog">Создание диалогового окна оповещения</h2>
+
+
+<p>С помощью класса {@link android.app.AlertDialog} создается многообразие решений касательно внешнего вида диалогового окна
+, и зачастую этого класса вполне достаточно.
+Как показано на рис. 2, диалоговое окно состоит из трех областей:</p>
+
+<div class="figure" style="width:311px;margin-top:0">
+<img src="{@docRoot}images/ui/dialogs_regions.png" alt="" style="margin-bottom:0" />
+<p class="img-caption"><strong>Рисунок 2.</strong> Макет диалогового окна.</p>
+</div>
+
+<ol>
+<li><b>Заголовок</b>
+  <p>Это дополнительная возможность, которая используется только в случае, если область содержимого
+  занята подробным сообщением, списком или пользовательским макетом. Если необходимо отобразить
+  простое сообщение или вопрос (как, например, в диалоге на рисунке 1), заголовок не нужен.</li>
+<li><b>Область содержимого</b>
+  <p>Здесь может отображаться сообщение, список или другой пользовательский макет.</p></li>
+<li><b>Кнопки действия</b>
+  <p>В диалоговом окне не должно содержаться более трех кнопок действия.</p></li>
+</ol>
+
+<p>Класс {@link android.app.AlertDialog.Builder}
+предоставляет API, с помощью которых можно создавать {@link android.app.AlertDialog}
+с этими видами содержимого, включая пользовательский макет.</p>
+
+<p>Создание {@link android.app.AlertDialog}:</p>
+
+<pre>
+<b>// 1. Instantiate an {@link android.app.AlertDialog.Builder} with its constructor</b>
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+
+<b>// 2. Chain together various setter methods to set the dialog characteristics</b>
+builder.setMessage(R.string.dialog_message)
+       .setTitle(R.string.dialog_title);
+
+<b>// 3. Get the {@link android.app.AlertDialog} from {@link android.app.AlertDialog.Builder#create()}</b>
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>В следующих главах показано, как определять различные атрибуты диалоговых окон с помощью класса
+{@link android.app.AlertDialog.Builder}.</p>
+
+
+
+
+<h3 id="AddingButtons">Добавление кнопок</h3>
+
+<p>Для добавления кнопок, изображенных на рисунке 2,
+вызывайте методы {@link android.app.AlertDialog.Builder#setPositiveButton setPositiveButton()} и
+{@link android.app.AlertDialog.Builder#setNegativeButton setNegativeButton()}:</p>
+
+<pre style="clear:right">
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+// Add the buttons
+builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User clicked OK button
+           }
+       });
+builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User cancelled the dialog
+           }
+       });
+// Set other dialog properties
+...
+
+// Create the AlertDialog
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>Методы <code>set...Button()</code> предполагают заголовок для кнопки (реализуемый
+через <a href="{@docRoot}guide/topics/resources/string-resource.html">строковый ресурс</a>) и 
+{@link android.content.DialogInterface.OnClickListener}, который определяет действие, 
+следующее за нажатием кнопки пользователем.</p>
+
+<p>Реализована возможность добавлять три различных вида кнопок действий:</p>
+<dl>
+  <dt>Положительные</dt>
+  <dd>Используются для подтверждения и продолжения дейстия (кнопка «ОК»).</dd>
+  <dt>Отрицательные</dt>
+  <dd>Используются для отмены действия.</dd>
+  <dt>Нейтральные</dt>
+  <dd>Используются в случаях, когда пользователь может не желать продолжить действие,
+  но при этом необязательно хочет его отменить. Появляется между положительными и отрицательнымиI
+  кнопками. Примером такого действия может быть «Напомнить позже».</dd> 
+</dl>
+
+<p>Можно добавлять только одну кнопку каждого вида в {@link
+android.app.AlertDialog}. Это означает, что нельзя использовать более одной «положительной» кнопки.</p>
+
+
+
+<div class="figure" style="width:290px;margin:0 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_list.png" alt="" />
+<p class="img-caption"><strong>Рисунок 3.</strong>
+Диалоговое окно с заголовком и списком.</p>
+</div>
+
+<h3 id="AddingAList">Добавление списка</h3>
+
+<p>В API {@link android.app.AlertDialog} реализована возможность использования трех видов списков:</p>
+<ul>
+<li>Традиционный список с выбором одного варианта</li>
+<li>Интерактивный список с выбором одного варианта (переключатели)</li>
+<li>Интерактивный список с выбором нескольких вариантов (флажки)</li>
+</ul>
+
+<p>Для создания списка с выбором одного варианта, как на рисунке 3, 
+используйте метод{@link android.app.AlertDialog.Builder#setItems setItems()}:</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    builder.setTitle(R.string.pick_color)
+           .setItems(R.array.colors_array, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int which) {
+               // The 'which' argument contains the index position
+               // of the selected item
+           }
+    });
+    return builder.create();
+}
+</pre>
+
+<p>Поскольку список отображается в области содержимого диалогового окна, 
+диалоговое окно не может показать одновременно сообщение и список, поэтому необходимо задать заголовок
+диалогового окна с помощью {@link android.app.AlertDialog.Builder#setTitle setTitle()}. 
+Для указания элементов списка необходимо вызвать {@link
+android.app.AlertDialog.Builder#setItems setItems()}, передающий указатель.
+В качестве другого варианта можно указать список с помощью {@link
+android.app.AlertDialog.Builder#setAdapter setAdapter()}. Наполнение списка
+динамическими данными (например, из базы данных) происходит с помощью {@link android.widget.ListAdapter}.</p>
+
+<p>Если вы предпочтете реализовать список с помощью {@link android.widget.ListAdapter},
+рекомендуется использовать {@link android.support.v4.content.Loader}, чтобы содержимое загружалось
+асинхронно. Подробно этот процесс описан далее в руководстве по
+<a href="{@docRoot}guide/topics/ui/declaring-layout.html#AdapterViews">Созданию макетов
+с помощью адаптера</a> и <a href="{@docRoot}guide/components/loaders.html">загрузчиков</a>
+.</p>
+
+<p class="note"><strong>Примечание:</strong> По умолчанию нажатие по элементу списка отменяет диалоговое окно,
+за исключением случаев, когда используется один из следующих интерактивных списков.</p>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_checkboxes.png" />
+<p class="img-caption"><strong>Рисунок 4.</strong>
+Список с несколькими вариантами ответов.</p>
+</div>
+
+
+<h4 id="Checkboxes">Добавление интерактивного списка с одним или несколькими вариантами ответов</h4>
+
+<p>Для добавления списка с несколькими вариантами ответов (флажки) или
+списка с одним вариантом ответа (переключатели) используйте методы
+{@link android.app.AlertDialog.Builder#setMultiChoiceItems(Cursor,String,String,
+DialogInterface.OnMultiChoiceClickListener) setMultiChoiceItems()} или 
+{@link android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()} соответственно.</p>
+
+<p>Например, таким образом можно создать список с несколькими вариантами ответов, как на
+рисунке 4, который сохраняет выбранные
+элементы в {@link java.util.ArrayList}:</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    mSelectedItems = new ArrayList();  // Where we track the selected items
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Set the dialog title
+    builder.setTitle(R.string.pick_toppings)
+    // Specify the list array, the items to be selected by default (null for none),
+    // and the listener through which to receive callbacks when items are selected
+           .setMultiChoiceItems(R.array.toppings, null,
+                      new DialogInterface.OnMultiChoiceClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int which,
+                       boolean isChecked) {
+                   if (isChecked) {
+                       // If the user checked the item, add it to the selected items
+                       mSelectedItems.add(which);
+                   } else if (mSelectedItems.contains(which)) {
+                       // Else, if the item is already in the array, remove it 
+                       mSelectedItems.remove(Integer.valueOf(which));
+                   }
+               }
+           })
+    // Set the action buttons
+           .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // User clicked OK, so save the mSelectedItems results somewhere
+                   // or return them to the component that opened the dialog
+                   ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   ...
+               }
+           });
+
+    return builder.create();
+}
+</pre>
+
+<p>Несмотря на то, что и традиционный список, и список с переключателями 
+предполагают действие по выбору одного элемента, вам необходимо использовать {@link
+android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()}, чтобы сохранить выбор пользователя.
+Это значит, что при повторном открытии диалогового окна будет отображаться текущий выбор пользователя,
+а затем создается список с переключателями.</p>
+
+
+
+
+
+<h3 id="CustomLayout">Создание пользовательского макета</h3>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_custom.png" alt="" />
+<p class="img-caption"><strong>Рисунок 5</strong>. Пользовательский макет диалогового окна.</p>
+</div>
+
+<p>Если в диалоговом окне необходим пользовательский макет, нужно создать макет и добавить его в
+{@link android.app.AlertDialog} путем вызова {@link
+android.app.AlertDialog.Builder#setView setView()} в объекте {@link
+android.app.AlertDialog.Builder}.</p>
+
+<p>По умолчанию пользовательский мает заполняет окно диалога, при это все равно можно
+использовать методы {@link android.app.AlertDialog.Builder} для добавления кнопок и заголовка.</p>
+
+<p>В качестве примера на рисунке 5 приведен файл макета для диалогового окна.</p>
+
+<p style="clear:right" class="code-caption">res/layout/dialog_signin.xml</p>
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content">
+    &lt;ImageView
+        android:src="@drawable/header_logo"
+        android:layout_width="match_parent"
+        android:layout_height="64dp"
+        android:scaleType="center"
+        android:background="#FFFFBB33"
+        android:contentDescription="@string/app_name" />
+    &lt;EditText
+        android:id="@+id/username"
+        android:inputType="textEmailAddress"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="16dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="4dp"
+        android:hint="@string/username" />
+    &lt;EditText
+        android:id="@+id/password"
+        android:inputType="textPassword"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="4dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="16dp"
+        android:fontFamily="sans-serif"
+        android:hint="@string/password"/>
+&lt;/LinearLayout>
+</pre>
+
+<p class="note"><strong>Совет.</strong> По умолчанию при настройке элемента {@link android.widget.EditText}
+ для типа ввода {@code "textPassword"} используется семейство шрифтов фиксированной ширины, поэтому
+необходимо изменить семейство шрифтов на{@code "sans-serif"}, чтобы в обоих текстовых полях использовались
+одинаковые стили шрифта.</p>
+
+<p>Для применения макета в вашем {@link android.support.v4.app.DialogFragment}
+вам понадобится {@link android.view.LayoutInflater} с 
+{@link android.app.Activity#getLayoutInflater()} и вызов
+{@link android.view.LayoutInflater#inflate inflate()}, где первым параметром будет являться
+ID ресурса макета, а вторым параметром — исходный вид макета.
+Затем можно вызвать{@link android.app.AlertDialog#setView setView()}
+для размещения макета в диалоговом окне.</p>
+
+<pre>
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Get the layout inflater
+    LayoutInflater inflater = getActivity().getLayoutInflater();
+
+    // Inflate and set the layout for the dialog
+    // Pass null as the parent view because its going in the dialog layout
+    builder.setView(inflater.inflate(R.layout.dialog_signin, null))
+    // Add action buttons
+           .setPositiveButton(R.string.signin, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // sign in the user ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int id) {
+                   LoginDialogFragment.this.getDialog().cancel();
+               }
+           });      
+    return builder.create();
+}
+</pre>
+
+<div class="note">
+<p><strong>Совет.</strong> Если необходимо пользовательское диалоговое окно,
+можно отображать {@link android.app.Activity} в качестве диалога
+вместо API {@link android.app.Dialog}. Нужно создать операцию и установить тему
+{@link android.R.style#Theme_Holo_Dialog Theme.Holo.Dialog}
+в элементе манифеста<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;операция&gt;}</a>:</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.Dialog" >
+</pre>
+<p>Готово. Операция теперь отображается в диалоговом окне, а не в полноэкранном режиме.</p>
+</div>
+
+
+
+<h2 id="PassingEvents">Передача событий обратно в основное диалоговое приложение</h2>
+
+<p>Когда пользователь нажимает одну из кнопок действий в диалоговом окне, либо выбирает элемент из списка,
+ {@link android.support.v4.app.DialogFragment} может самостоятельно произвести необходимое
+действие, однако зачастую вам может понадобиться доставить информацию о событии операции или фрагменту, которые
+открыли диалоговое окно. Для этого нобходимо определить интерфейс метода для каждого типа события нажатия.
+Затем этот интерфейс применяется в основном компоненте приложения, которое
+получает информацию о событиях из диалогового окна.</p>
+
+<p>Например, {@link android.support.v4.app.DialogFragment} определяет
+интерфейс, по который доставляет события обратно в основной компонент операции:</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    
+    /* The activity that creates an instance of this dialog fragment must
+     * implement this interface in order to receive event callbacks.
+     * Each method passes the DialogFragment in case the host needs to query it. */
+    public interface NoticeDialogListener {
+        public void onDialogPositiveClick(DialogFragment dialog);
+        public void onDialogNegativeClick(DialogFragment dialog);
+    }
+    
+    // Use this instance of the interface to deliver action events
+    NoticeDialogListener mListener;
+    
+    // Override the Fragment.onAttach() method to instantiate the NoticeDialogListener
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        // Verify that the host activity implements the callback interface
+        try {
+            // Instantiate the NoticeDialogListener so we can send events to the host
+            mListener = (NoticeDialogListener) activity;
+        } catch (ClassCastException e) {
+            // The activity doesn't implement the interface, throw exception
+            throw new ClassCastException(activity.toString()
+                    + " must implement NoticeDialogListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>Операция, выполняемая диалоговым окном, создает экземпляр диалогового окна
+с помощью конструктора фрагментов диалогового окна и получает события
+диалога с помощью реализации интерфейса {@code NoticeDialogListener}:</p>
+
+<pre>
+public class MainActivity extends FragmentActivity
+                          implements NoticeDialogFragment.NoticeDialogListener{
+    ...
+    
+    public void showNoticeDialog() {
+        // Create an instance of the dialog fragment and show it
+        DialogFragment dialog = new NoticeDialogFragment();
+        dialog.show(getSupportFragmentManager(), "NoticeDialogFragment");
+    }
+
+    // The dialog fragment receives a reference to this Activity through the
+    // Fragment.onAttach() callback, which it uses to call the following methods
+    // defined by the NoticeDialogFragment.NoticeDialogListener interface
+    &#64;Override
+    public void onDialogPositiveClick(DialogFragment dialog) {
+        // User touched the dialog's positive button
+        ...
+    }
+
+    &#64;Override
+    public void onDialogNegativeClick(DialogFragment dialog) {
+        // User touched the dialog's negative button
+        ...
+    }
+}
+</pre>
+
+<p>Поскольку выполняемая операция реализуется через {@code NoticeDialogListener}
+с помощью метода обратного вызова
+ {@link android.support.v4.app.Fragment#onAttach onAttach()}, во фрагменте диалога могут использоваться
+методы обратного вызова интерфейса для доставки событий нажатий к операциям:</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    ...
+
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Build the dialog and set up the button click handlers
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the positive button event back to the host activity
+                       mListener.onDialogPositiveClick(NoticeDialogFragment.this);
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the negative button event back to the host activity
+                       mListener.onDialogNegativeClick(NoticeDialogFragment.this);
+                   }
+               });
+        return builder.create();
+    }
+}
+</pre>
+
+
+
+<h2 id="ShowingADialog">Отображение диалогового окна</h2>
+
+<p>Для отображения диалогового окна необходимо создать экземпляр {@link
+android.support.v4.app.DialogFragment} и вызвать {@link android.support.v4.app.DialogFragment#show
+show()}, передавая {@link android.support.v4.app.FragmentManager} и наименование тега
+для фрагмента диалога.</p>
+
+<p>Можно получить {@link android.support.v4.app.FragmentManager} путем вызова
+{@link android.support.v4.app.FragmentActivity#getSupportFragmentManager()} из
+ {@link android.support.v4.app.FragmentActivity} или {@link
+android.support.v4.app.Fragment#getFragmentManager()} из {@link
+android.support.v4.app.Fragment}. Пример:</p>
+
+<pre>
+public void confirmFireMissiles() {
+    DialogFragment newFragment = new FireMissilesDialogFragment();
+    newFragment.show(getSupportFragmentManager(), "missiles");
+}
+</pre>
+
+<p>Второй аргумент, {@code "missiles"}, — это уникальное наименование тега, которое система использует для сохранения
+и восстановления состояния фрагмента, когда это необходимо. С помощью этого тега также можно управлять
+фрагментом путем вызова {@link android.support.v4.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}.</p>
+
+
+
+
+<h2 id="FullscreenDialog">Отображение диалогового окна в полноэкранном режиме или в виде встроенного фрагмента</h2>
+
+<p>Вам может понадобиться макет пользовательского интерфейса, в котором в некоторых ситуациях часть пользовательского интерфейса должна появляться как диалоговое окно
+, отображаемое в полноэкранном режиме либо в виде встроенного фрагмента (возможно, в зависимости от того,
+маленький или большой экран у устройства). С помощью класса {@link android.support.v4.app.DialogFragment}
+обеспечивается гибкость решения, поскольку он может вести себя как встраиваемый {@link
+android.support.v4.app.Fragment}.</p>
+
+<p>Тем не менее, в этом случае нельзя использовать{@link android.app.AlertDialog.Builder AlertDialog.Builder}
+или другие объекты {@link android.app.Dialog} для построения диалогового окна. Если
+необходимо сделать {@link android.support.v4.app.DialogFragment} 
+встраиваемым, нужно определить пользовательский интерфейс диалогового окна в макете методом обратного вызова
+{@link android.support.v4.app.DialogFragment#onCreateView
+onCreateView()}.</p>
+
+<p>В качестве примера приведен {@link android.support.v4.app.DialogFragment}, который появляется либо в виде
+диалогового окна, либо в виде встраиваемого фрагмента (используя макет с наименованием <code>purchase_items.xml</code>):</p>
+
+<pre>
+public class CustomDialogFragment extends DialogFragment {
+    /** The system calls this to get the DialogFragment's layout, regardless
+        of whether it's being displayed as a dialog or an embedded fragment. */
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        // Inflate the layout to use as dialog or embedded fragment
+        return inflater.inflate(R.layout.purchase_items, container, false);
+    }
+  
+    /** The system calls this only when creating the layout in a dialog. */
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // The only reason you might override this method when using onCreateView() is
+        // to modify any dialog characteristics. For example, the dialog includes a
+        // title by default, but your custom layout might not need it. So here you can
+        // remove the dialog title, but you must call the superclass to get the Dialog.
+        Dialog dialog = super.onCreateDialog(savedInstanceState);
+        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
+        return dialog;
+    }
+}
+</pre>
+
+<p>Приведен пример кода, реализующего принятие решения об отображении фргмента в качестве диалогового окна
+или полноэкранного пользовательского интерфейса на основе размера экрана:</p>
+
+<pre>
+public void showDialog() {
+    FragmentManager fragmentManager = getSupportFragmentManager();
+    CustomDialogFragment newFragment = new CustomDialogFragment();
+    
+    if (mIsLargeLayout) {
+        // The device is using a large layout, so show the fragment as a dialog
+        newFragment.show(fragmentManager, "dialog");
+    } else {
+        // The device is smaller, so show the fragment fullscreen
+        FragmentTransaction transaction = fragmentManager.beginTransaction();
+        // For a little polish, specify a transition animation
+        transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
+        // To make it fullscreen, use the 'content' root view as the container
+        // for the fragment, which is always the root view for the activity
+        transaction.add(android.R.id.content, newFragment)
+                   .addToBackStack(null).commit();
+    }
+}
+</pre>
+
+<p>Подробные сведения о выполнении операций с фрагментами приведены в руководстве 
+<a href="{@docRoot}guide/components/fragments.html">Фрагменты</a>.</p>
+
+<p>В приведенном примере <code>mIsLargeLayout</code> булеан указывает, должно ли текущее устройство использовать
+ большой макет приложения  (и отображать фрагмент как диалоговое окно, а не
+в полноэкранном режиме). Лучшим способом установить такой вид булеана является объявление 
+<a href="{@docRoot}guide/topics/resources/more-resources.html#Bool">значения булевой переменной</a>
+с <a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">альтернативным</a> значением для других размеров экранов. В качестве примера приведены два
+варианта булевых ресурсов для различных размеров экранов:</p>
+
+<p class="code-caption">res/values/bools.xml</p>
+<pre>
+&lt;!-- Default boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">false&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p class="code-caption">res/values-large/bools.xml</p>
+<pre>
+&lt;!-- Large screen boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">true&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p>Затем можно инизиализировать значение {@code mIsLargeLayout} в течение выполнения метода операции
+{@link android.app.Activity#onCreate onCreate()}:</p>
+
+<pre>
+boolean mIsLargeLayout;
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_main);
+
+    mIsLargeLayout = getResources().getBoolean(R.bool.large_layout);
+}
+</pre>
+
+
+
+<h3 id="ActivityAsDialog">Отображение операции в качестве диалога на больших экранах</h3>
+
+<p>Вместо отображения диалогового окна в полноэкранном режиме на экранах малого размера можно
+отображать {@link android.app.Activity} в качестве диалогового окна на
+экранах большого размера. Выбор зависит от дизайна приложения, но
+отображение операции в качестве диалогового окна имеет смысл, когда приложение предназначено для использования на малых
+экранах, и необходимо улучшить взаимодейтсвие с ним на планшетах, показывая кратковременные операции
+в качестве диалогового окна.</p>
+
+<p>Для отображения операции в качестве диалогового окна только на больших экранах
+необходимо применить тему {@link android.R.style#Theme_Holo_DialogWhenLarge Theme.Holo.DialogWhenLarge}
+к элементу манифеста <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;операция&gt;}</a>:</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.DialogWhenLarge" >
+</pre>
+
+<p>Подробная информация о темах операций приведена в руководстве <a href="{@docRoot}guide/topics/ui/themes.html">Стили и темы</a>.</p>
+
+
+
+<h2 id="DismissingADialog">Закрытие диалогового окна</h2>
+
+<p>Когда пользователь нажимает кнопки, созданные с помощью
+{@link android.app.AlertDialog.Builder}, система закрывает диалоговое окно самостоятельно.</p>
+
+<p>Система также закрывает диалоговое окно, когда пользователь нажимает на элемент списка в диалоговом окне, за исключением
+списков с переключателями или флажками. В иных случаях можно вручную закрыть диалоговое окно
+путем вызова {@link android.support.v4.app.DialogFragment#dismiss()} в {@link
+android.support.v4.app.DialogFragment}.</p>
+
+<p>В случае, если необходимо произвести определенные
+действия после закрытия диалогового окна, можно реализовать метод {@link
+android.support.v4.app.DialogFragment#onDismiss onDismiss()} в {@link
+android.support.v4.app.DialogFragment}.</p>
+
+<p>Также можно <em>отменить</em> диалоговое окно. Это особое событие, возникающее, когда пользователь
+покинул диалоговое окно, не завершив задачу. Так происходит, когда пользователь нажимает кнопку 
+<em>Назад</em>, касается экрана за областью диалогового окна,
+либо когда задано {@link android.app.Dialog#cancel()} в {@link
+android.app.Dialog} (например, в качестве отклика на нажатие кнопки «Отмена» в диалоговом окне).</p>
+
+<p>Как показано в примере выше, можно ответить на событие отмены с помощью
+{@link android.support.v4.app.DialogFragment#onCancel onCancel()} в классе {@link
+android.support.v4.app.DialogFragment}.</p>
+
+<p class="note"><strong>Примечание:</strong> Система вызывает
+{@link android.support.v4.app.DialogFragment#onDismiss onDismiss()} при каждом событии,
+которое вызывается методом обратного вызова{@link android.support.v4.app.DialogFragment#onCancel onCancel()}. Тем не менее,
+при вызове{@link android.app.Dialog#dismiss Dialog.dismiss()} или {@link
+android.support.v4.app.DialogFragment#dismiss DialogFragment.dismiss()},
+система вызывает {@link android.support.v4.app.DialogFragment#onDismiss onDismiss()} <em>, а
+не</em> {@link android.support.v4.app.DialogFragment#onCancel onCancel()}. Поэтому в общих случаях
+вызов{@link android.support.v4.app.DialogFragment#dismiss dismiss()} производится при нажатии пользователем
+<em>положительной</em> кнопки в диалоговом окне, а после диалоговое окно закрывается.</p>
+
+
diff --git a/docs/html-intl/intl/ru/guide/topics/ui/menus.jd b/docs/html-intl/intl/ru/guide/topics/ui/menus.jd
new file mode 100644
index 0000000..2f3ce1e
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/ui/menus.jd
@@ -0,0 +1,1031 @@
+page.title=Меню
+parent.title=Пользовательский интерфейс
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Содержание документа</h2>
+<ol>
+  <li><a href="#xml">Определение меню в файле XML</a></li>
+  <li><a href="#options-menu">Создание меню параметров</a>
+    <ol>
+      <li><a href="#RespondingOptionsMenu">Обработка нажатий</a></li>
+      <li><a href="#ChangingTheMenu">Изменение пунктов меню во время выполнения</a></li>
+    </ol>
+  </li>
+  <li><a href="#context-menu">Создание контекстного меню</a>
+    <ol>
+      <li><a href="#FloatingContextMenu">Создание плавающего контекстного меню</a></li>
+      <li><a href="#CAB">Использование режима контекстных действий</a></li>
+    </ol>
+  </li>
+  <li><a href="#PopupMenu">Создание всплывающего меню</a>
+    <ol>
+      <li><a href="#PopupEvents">Обработка нажатий</a></li>
+    </ol>
+  </li>
+  <li><a href="#groups">Создание групп меню</a>
+    <ol>
+      <li><a href="#checkable">Использование пунктов меню, которые можно пометить</a></li>
+    </ol>
+  </li>
+  <li><a href="#intents">Добавление пунктов меню на основе объектов Intent</a>
+    <ol>
+      <li><a href="#AllowingToAdd">Предоставление возможности добавить свою операцию в другие меню</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>Основные классы</h2>
+  <ol>
+    <li>{@link android.view.Menu}</li>
+    <li>{@link android.view.MenuItem}</li>
+    <li>{@link android.view.ContextMenu}</li>
+    <li>{@link android.view.ActionMode}</li>
+  </ol>
+
+  <h2>См. также</h2>
+  <ol>
+    <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Строка действий</a></li>
+    <li><a href="{@docRoot}guide/topics/resources/menu-resource.html">Ресурс меню</a></li>
+    <li><a href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">Попрощайтесь
+с кнопкой "Меню"</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Меню являются стандартным компонентом пользовательского интерфейса в приложениях многих типов. Для обеспечения привычной
+и единообразной технологии работы с приложением следует представлять действия пользователя и другие варианты выбора в своих операциях
+с помощью API-интерфейсов класса {@link android.view.Menu}.</p>
+
+<p>Начиная с версии Android 3.0 (уровень API 11) в устройствах, работающих под управлением Android,
+наличие отдельной кнопки <em>Меню</em> больше не требуется. С учетом этого изменения приложения для Android должны перестать
+зависеть от традиционной панели меню из 6 пунктов. Вместо нее в них должна быть строка действий с часто используемыми
+действиями пользователя.</p>
+
+<p>Несмотря на то что оформление и поведение некоторых пунктов меню изменились, семантика для определения
+набора действий и вариантов по-прежнему основана на API-интерфейсах класса {@link android.view.Menu}. В этом
+руководстве рассказывается, как создавать три основополагающих типа меню или представлений действий в системе 
+Android всех версий:</p>
+
+<dl>
+  <dt><strong>Меню параметров и строка действий</strong></dt>
+    <dd>Пункты <a href="#options-menu">меню параметров</a> представляют собой основные варианты выбора действий в пределах
+операции. Именно здесь следует размещать действия, которые затрагивают приложение в целом, например: 
+"Поиск", "Составить сообщение эл. почты" и "Настройки".
+  <p>При разработке приложений для версии Android 2.3 или более ранних версий пользователи могут
+открыть панель меню параметров нажатием кнопки <em>Меню</em>.</p>
+  <p>В версии Android 3.0 и последующих версиях пункты меню параметров размещаются в <a href="{@docRoot}guide/topics/ui/actionbar.html">строке действий</a> в виде сочетания отображаемых на экране вариантов
+действий и раскрывающегося списка дополнительных вариантов выбора. Начиная с Android 3.0 кнопка <em>Меню</em> больше не используется (на некоторых
+устройствах
+ее нет), поэтому для предоставления доступа к действиям и другим вариантам выбора вам следует перейти к использованию
+строки действий.</p>
+  <p>См. раздел <a href="#options-menu">Создание меню параметров</a></p>
+    </dd>
+    
+  <dt><strong>Контекстное меню и режим контекстных действий</strong></dt>
+  
+   <dd>Контекстное меню ― это <a href="#FloatingContextMenu">плавающее меню</a>, которое открывается, когда
+пользователь длительно нажимает на элемент. В нем содержатся действия, которые затрагивают выбранный контент или
+контекстный кадр.
+  <p>При разработке приложения для версии Android 3.0 или выше вместо этого для обеспечения действий с выбранным контентом следует использовать <a href="#CAB">режим контекстных действий</a>. В этом режиме
+в строке, расположенной вверху экрана, отображаются пункты действий, затрагивающие выбранный контент, причем пользователь может
+выбрать сразу несколько элементов.</p>
+  <p>См. раздел <a href="#context-menu">Создание контекстного меню</a></p>
+</dd>
+    
+  <dt><strong>Всплывающее меню</strong></dt>
+    <dd>Во всплывающем меню отображается вертикальный список пунктов, который привязан к представлению,
+вызвавшему меню. Он хорошо подходит для предоставления возможности дополнительных вариантов действий, относящихся к определенному контенту или
+для выдачи вариантов для второй части команды. Действия во всплывающем меню 
+<strong>не</strong> должны напрямую затрагивать соответствующий контент &mdash; для этого предназначены контекстные
+действия. Всплывающее меню предназначено для расширенных действий, относящихся к областям контента в вашей
+операции.
+  <p>См. раздел <a href="#PopupMenu">Создание всплывающего меню</a></p>
+</dd>
+</dl>
+
+
+
+<h2 id="xml">Определение меню в файле XML</h2>
+
+<p>Для определения пунктов меню всех типов в Android используется стандартный формат XML.
+Вместо того чтобы создавать меню в коде своей операции, определять меню и все его пункты следует в
+ <a href="{@docRoot}guide/topics/resources/menu-resource.html">ресурсе меню</a> формата XML. После этого
+ресурс меню можно будет загружать как объект {@link android.view.Menu} в свои операции или
+фрагменты.</p>
+
+<p>Использовать ресурсы меню рекомендуется по нескольким причинам:</p>
+<ul>
+  <li>в XML проще визуализировать структуру меню;</li>
+  <li>это позволяет отделить контент для меню от кода, определяющего работу приложения;</li>
+  <li>это позволяет создавать альтернативные варианты меню для разных версий платформы,
+размеров экрана и других конфигураций путем использования структуры <a href="{@docRoot}guide/topics/resources/index.html">ресурсов приложения</a>.</li>
+</ul>
+
+<p>Чтобы определить меню, создайте файл XML в папке <code>res/menu/</code>
+вашего проекта и постройте меню со следующими элементами:</p>
+<dl>
+  <dt><code>&lt;menu></code></dt>
+    <dd>Определяет класс {@link android.view.Menu}, который является контейнером для пунктов меню. Элемент
+<code>&lt;menu></code> должен быть корневым узлом файла, в котором может находиться один или несколько элементов
+<code>&lt;item></code> и <code>&lt;group></code>.</dd>
+
+  <dt><code>&lt;item></code></dt>
+    <dd>Создает класс {@link android.view.MenuItem}, который представляет один пункт меню. Этот
+элемент может содержать вложенный элемент <code>&lt;menu></code> для создания вложенных меню.</dd>
+    
+  <dt><code>&lt;group></code></dt>
+    <dd>Необязательный, невидимый контейнер для элементов {@code &lt;item&gt;}. Он позволяет
+разделять пункты меню на категории и назначать им одинаковые свойства, такие как активное состояние и видимость. Подробные
+сведения изложены в разделе <a href="#groups">Создание групп меню</a>.</dd>
+</dl>
+
+
+<p>Вот пример меню с именем <code>game_menu.xml</code>:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/new_game"
+          android:icon="@drawable/ic_new_game"
+          android:title="@string/new_game"
+          android:showAsAction="ifRoom"/&gt;
+    &lt;item android:id="@+id/help"
+          android:icon="@drawable/ic_help"
+          android:title="@string/help" /&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Элемент <code>&lt;item></code> поддерживает несколько атрибутов, с помощью которых можно определить внешний вид и
+поведение пункта меню. Пункты приведенного выше меню имеют следующие атрибуты:</p>
+
+<dl>
+  <dt>{@code android:id}</dt>
+    <dd>Идентификатор ресурса, который является уникальным для этого пункта, что позволяет приложению распознавать пункт,
+когда его выбирает пользователь.</dd>
+  <dt>{@code android:icon}</dt>
+    <dd>Ссылка на графический элемент, который будет использоваться в качестве значка пункта меню.</dd>
+  <dt>{@code android:title}</dt>
+    <dd>Ссылка на строку, которая будет использоваться в качестве названия пункта меню.</dd>
+  <dt>{@code android:showAsAction}</dt>
+    <dd>Указывает, когда и как этот пункт должен отображаться в <a href="{@docRoot}guide/topics/ui/actionbar.html">строке действий</a>.</dd>
+</dl>
+
+<p>Это самые важные атрибуты, которые следует использовать, но есть также множество других атрибутов.
+Сведения обо всех поддерживаемых атрибутах см. в документе <a href="{@docRoot}guide/topics/resources/menu-resource.html">Ресурс меню</a>.</p>
+
+<p>К пункту любого меню (кроме вложенного меню) можно прикрепить вложенное меню, добавив элемент {@code &lt;menu&gt;}
+в качестве дочернего элемента {@code &lt;item&gt;}. Вложенные меню полезны, когда в приложении имеется множество
+функций, которые можно разделить на категории подобно строке меню приложения для ПК ("Файл",
+"Правка", "Вид" и т. д.). Например:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/file"
+          android:title="@string/file" &gt;
+        &lt;!-- "file" submenu --&gt;
+        &lt;menu&gt;
+            &lt;item android:id="@+id/create_new"
+                  android:title="@string/create_new" /&gt;
+            &lt;item android:id="@+id/open"
+                  android:title="@string/open" /&gt;
+        &lt;/menu&gt;
+    &lt;/item&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Для использования меню в операции необходимо загрузить ресурс меню (преобразовать ресурс XML
+в программируемый объект) с помощью метода {@link android.view.MenuInflater#inflate(int,Menu)
+MenuInflater.inflate()}. В приведенных далее разделах рассказывается, как загружать меню
+каждого типа.</p>
+
+
+
+<h2 id="options-menu">Создание меню параметров</h2>
+
+<div class="figure" style="width:200px;margin:0">
+  <img src="{@docRoot}images/options_menu.png" height="333" alt="" />
+  <p class="img-caption"><strong>Рисунок 1.</strong> Меню параметров в
+браузере на Android 2.3.</p>
+</div>
+
+<p>В меню параметров следует размещать действия и другие варианты выбора, которые имеют отношение к
+контексту текущей операции, например: "Поиск", "Составить сообщение эл. почты" и "Настройки".</p>
+
+<p>Место, где отображаются на экране пункты вашего меню параметров, определяется версией платформы, для которой
+разработано приложение.</p>
+
+<ul>
+  <li>Если приложение написано для версии <strong>Android 2.3.x (уровень API 10) или
+более ранней</strong>, содержимое вашего меню параметров отображается внизу экрана, когда пользователь
+нажимает кнопку <em>Меню</em>, как показано на рисунке 1. Когда меню открывается, первой видимой частью является меню
+значков,
+в котором имеется шесть пунктов. Если в вашем меню больше шести пунктов, система Android разместит
+шестой и остальные пункты в дополнительном меню, которое пользователь может открыть, выбрав вариант
+ <em>Еще</em>.</li>
+
+  <li>Если приложение предназначено для версии <strong>Android 3.0 (уровень API 11) и
+более поздних</strong>, пункты меню параметров будут отображаться в <a href="{@docRoot}guide/topics/ui/actionbar.html">строке действий</a>. По умолчанию система
+размещает все действия на панели дополнительных вариантов, которые пользователь может открыть с помощью значка дополнительных действий, расположенного
+с правой стороны строки действий (либо нажатием кнопки <em>Меню</em>, если на устройстве есть такая кнопка). Чтобы
+обеспечить
+быстрый доступ к важным действиям, можно принудительно разместить несколько пунктов меню в строке действий, добавив
+{@code android:showAsAction="ifRoom"} к соответствующим элементам {@code &lt;item&gt;} (см. рисунок
+2). <p>Подробные сведения о пунктах действий и других особенностях строки действий см. в руководстве <a href="{@docRoot}guide/topics/ui/actionbar.html">Строка действий</a>. </p>
+<p class="note"><strong>Примечание.</strong> Даже если ваше приложение <em>не</em> предназначено для работы в версии Android 3.0 или
+более поздней, можно создать собственный макет со строкой действий, чтобы реализовать похожий эффект. Пример того, как можно
+поддерживать работу строки действий в старых версиях Android см. в образце кода, иллюстрирующем
+ <a href="{@docRoot}resources/samples/ActionBarCompat/index.html">Совместимость строки действий</a>.</p>
+</li>
+</ul>
+
+<img src="{@docRoot}images/ui/actionbar.png" alt="" />
+<p class="img-caption"><strong>Рисунок 2.</strong> Строка действий из приложения <a href="{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb Gallery</a>, содержащая
+вкладки навигации и пункт включения камеры (а также кнопку открытия дополнительной панели действий).</p>
+
+<p>Объявлять пункты меню параметров можно либо из подкласса {@link android.app.Activity},
+либо из подкласса {@link android.app.Fragment}. Если и ваша операция, и фрагменты
+объявляют пункты меню параметров, в пользовательском интерфейсе они объединяются. Сначала отображаются пункты
+операции, а за ними следуют пункты фрагментов в том порядке, в котором каждый фрагмент добавляется в
+операцию. При необходимости можно изменить порядок следования пунктов меню с помощью атрибута {@code android:orderInCategory},
+указываемого в каждом {@code &lt;item&gt;}, который требуется переместить.</p>
+
+<p>Чтобы указать меню параметров для операции, переопределите {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} (фрагменты предоставляют собственный обратный
+вызов {@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()}). В этом
+методе можно загрузить собственный ресурс меню (<a href="#xml">определенный в XML</a>) в класс {@link
+android.view.Menu}, имеющийся в обратном вызове. Например:</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu) {
+    MenuInflater inflater = {@link android.app.Activity#getMenuInflater()};
+    inflater.inflate(R.menu.game_menu, menu);
+    return true;
+}
+</pre>
+
+<p>Пункты меню также можно добавлять с помощью {@link android.view.Menu#add(int,int,int,int)
+add()}, а получать их с помощью {@link android.view.Menu#findItem findItem()} для пересмотра их
+свойств с помощью API-интерфейсов {@link android.view.MenuItem}.</p>
+
+<p>Если ваше приложение предназначено для версии Android 2.3.x или более ранней, система вызывает метод {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} для создания меню параметров,
+когда пользователь открывает это меню впервые. Если приложение предназначено для версии Android 3.0 и или более поздней, система
+вызывает метод{@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} при
+запуске операции, чтобы отобразить пункты в строке действий.</p>
+
+
+
+<h3 id="RespondingOptionsMenu">Обработка нажатий</h3>
+
+<p>Когда пользователь выбирает пункт меню параметров (в том числе пункты действий из строки действий),
+система вызывает метод {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} вашей операции. Этот метод передает выбранный класс {@link android.view.MenuItem}. Идентифицировать
+пункт меню можно, вызвав метод {@link android.view.MenuItem#getItemId()}, который возвращает уникальный
+идентификатор пункта меню (определенный атрибутом {@code android:id} из ресурса меню или
+целым числом, переданным методу {@link android.view.Menu#add(int,int,int,int) add()}). Этот идентификатор
+можно сопоставить с известными пунктами меню, чтобы выполнить соответствующее действие. Например:</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    // Handle item selection
+    switch (item.getItemId()) {
+        case R.id.new_game:
+            newGame();
+            return true;
+        case R.id.help:
+            showHelp();
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>Когда пункт меню успешно обработан, возвращается {@code true}. Если пункт меню не
+обрабатывается, следует вызвать реализацию суперкласса {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} (реализация
+по умолчанию возвращает значение false).</p>
+
+<p>Если в вашей операции имеются фрагменты, система сначала вызовет метод {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} для операции, а затем
+будет вызывать этот метод для каждого фрагмента (в том порядке, в котором они были добавлены), пока он не возвратит
+значение{@code true} или не закончатся фрагменты.</p>
+
+<p class="note"><strong>Совет.</strong> В Android 3.0 появилась возможность определять в XML поведение
+при нажатии для пунктов меню с помощью атрибута {@code android:onClick}. Значением этого
+атрибута должно быть имя метода, определенное операцией с помощью меню. Этот метод
+должен быть общедоступным и принимать один параметр {@link android.view.MenuItem}, &mdash; когда система
+вызывает этот метод, она передает ему выбранный пункт меню. Подробные сведения и пример см. в документе <a href="{@docRoot}guide/topics/resources/menu-resource.html">Ресурс меню</a>.</p>
+
+<p class="note"><strong>Совет.</strong> Если в приложении предусмотрено несколько операций и 
+в некоторых из них имеются одинаковые меню параметров, рассмотрите возможность создания
+операции, которая будет использовать исключительно методы {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} и {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()}. Затем распространите этот класс на все операции, у которых должно быть
+одинаковое меню параметров. Таким образом можно управлять одним набором кода для обработки действий
+меню, а каждый класс-потомок при этом будет наследовать режимы работы меню.
+Если требуется добавить пункты меню в одну из операций-потомков,
+переопределите метод {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} в этой операции. Вызовите метод {@code super.onCreateOptionsMenu(menu)}, с тем чтобы
+создать первоначальные пункты меню, а затем добавьте новые пункты меню с помощью метода {@link
+android.view.Menu#add(int,int,int,int) menu.add()}. Также можно переопределять режимы работы
+суперкласса для отдельных пунктов меню.</p>
+
+
+<h3 id="ChangingTheMenu">Изменение пунктов меню во время выполнения</h3>
+
+<p>После того как система вызовет метод {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()}, она сохранит заполненный вами экземпляр {@link android.view.Menu} и
+будет вызывать метод {@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}
+,только если меню по каким-то причинам станет некорректным. Однако метод {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} следует использовать только для создания начального
+состояния меню, а не для внесения в него изменений в течение жизненного цикла операции.</p>
+
+<p>Если вам требуется изменять меню параметров в зависимости от 
+событий, которые возникают в течение жизненного цикла операции, сделать это можно в
+методе{@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}. Этот
+метод передает объект {@link android.view.Menu} в том виде, в котором он в данный момент существует. Его-то и можно изменить
+путем, например, добавления, удаления или отключения пунктов меню. (Фрагменты также предоставляют обратный вызов {@link
+android.app.Fragment#onPrepareOptionsMenu onPrepareOptionsMenu()}.)</p>
+
+<p>В версии Android 2.3.x или более ранней система вызывает метод {@link
+android.app.Activity#onPrepareOptionsMenu(Menu)
+onPrepareOptionsMenu()} каждый раз, когда пользователь открывает меню параметров (нажимает кнопку <em>Меню</em>
+).</p>
+
+<p>В версии Android 3.0 и последующих версиях считается, что меню параметров всегда открыто, когда пункты меню
+приведены в строке действий. Когда возникает событие и требуется обновить меню, следует
+вызвать метод {@link android.app.Activity#invalidateOptionsMenu invalidateOptionsMenu()}, чтобы запросить у
+системы вызов метода {@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}.</p>
+
+<p class="note"><strong>Примечание.</strong> 
+Никогда не следует изменять пункты меню параметров с учетом класса {@link android.view.View}, действующего
+в данный момент. В сенсорном режиме (когда пользователь не использует трекбол или кнопки направления движения) фокус
+не может переводиться на представления, поэтому никогда не следует использовать фокус в качестве основы для изменения
+пунктов меню параметров. Если вы желаете предоставить пункты меню, которые зависят от контекста {@link
+android.view.View}, используйте <a href="#context-menu">контекстное меню</a>.</p>
+
+
+
+
+<h2 id="context-menu">Создание контекстного меню</h2>
+
+<div class="figure" style="width:420px;margin-top:-1em">
+  <img src="{@docRoot}images/ui/menu-context.png" alt="" />
+  <p class="img-caption"><strong>Рисунок 3</strong>. Снимки экрана с плавающим контекстным меню (слева)
+и строкой контекстных действий (справа).</p>
+</div>
+
+<p>В контекстном меню содержатся действия, которые затрагивают определенный элемент или контекстный кадр в пользовательском интерфейсе. Контекстное
+меню можно создать для любого представления, но чаще всего они используются для элементов из {@link
+android.widget.ListView}, {@link android.widget.GridView} или других групп представлений, в которых
+пользователь может выполнять действия непосредственно с каждым элементом.</p>
+
+<p>Существует два способа предоставления возможности контекстных действий:</p>
+<ul>
+  <li>В <a href="#FloatingContextMenu">плавающем контекстном меню</a>. Меню отображается в виде
+плавающего списка пунктов меню (наподобие диалогового окна), когда пользователь длительно нажимает на экран (нажимает и
+удерживает нажатым) в представлении, которое объявляет поддержку контекстного меню. Пользователи могут каждый раз выполнять контекстное
+действие только с одним элементом.</li>
+
+  <li>В <a href="#CAB">режиме контекстных действий</a>. Этот режим является системной реализацией
+{@link android.view.ActionMode}, которая отображает <em>строку контекстных действий</em> вверху
+экрана с пунктами действий, которые затрагивают выбранные элементы. Когда этот режим активен, пользователи
+могут одновременно выполнять действие с несколькими элементами (если это допускается приложением).</li>
+</ul>
+
+<p class="note"><strong>Примечание.</strong> Режим контекстных действий поддерживается в версии Android 3.0 (уровень API
+11) и последующих версиях. Если этот режим предусмотрен, именно его рекомендуется использовать для отображения контекстных
+действий. Если ваше приложение поддерживает версии ниже 3.0, то для этих устройств следует вернуться к плавающему
+контекстному меню.</p>
+
+
+<h3 id="FloatingContextMenu">Создание плавающего контекстного меню</h3>
+
+<p>Программирование плавающего контекстного меню</p>
+<ol>
+  <li>Зарегистрируйте класс {@link android.view.View}, с которым следует связать контекстное меню,
+вызвав метод {@link android.app.Activity#registerForContextMenu(View) registerForContextMenu()} и передав
+ему {@link android.view.View}.
+  <p>Если операция использует {@link android.widget.ListView} или {@link android.widget.GridView} и
+требуется, чтобы каждый элемент предоставлял одинаковое контекстное меню, зарегистрируйте все элементы для контекстного меню,
+передав {@link android.widget.ListView} или {@link android.widget.GridView} методу {@link
+android.app.Activity#registerForContextMenu(View) registerForContextMenu()}.</p>
+</li>
+
+  <li>Реализуйте метод {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()} в
+ {@link android.app.Activity} или {@link android.app.Fragment}.
+  <p>Когда зарегистрированное представление примет событие длительного нажатия, система вызовет ваш метод {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()}
+. Именно здесь определяются пункты меню. Делается это обычно путем загрузки ресурса меню. Например:
+</p>
+<pre>
+&#64;Override
+public void onCreateContextMenu(ContextMenu menu, View v,
+                                ContextMenuInfo menuInfo) {
+    super.onCreateContextMenu(menu, v, menuInfo);
+    MenuInflater inflater = getMenuInflater();
+    inflater.inflate(R.menu.context_menu, menu);
+}
+</pre>
+
+<p>{@link android.view.MenuInflater} позволяет загружать контекстное меню из <a href="{@docRoot}guide/topics/resources/menu-resource.html">ресурса меню</a>. В число параметров метода
+обратного вызова входят {@link android.view.View},
+выбранный пользователем, и объект{@link android.view.ContextMenu.ContextMenuInfo}, который предоставляет
+дополнительную информацию о выбранном элементе. Если в вашей операции есть несколько представлений и все они предоставляют
+разные контекстные меню, то с помощью этих параметров можно определять, какое контекстное меню
+загружать.</p>
+</li>
+
+<li>Реализуйте метод {@link android.app.Activity#onContextItemSelected(MenuItem)
+onContextItemSelected()}.
+  <p>Когда пользователь выбирает пункт меню, система вызывает этот метод, с тем чтобы вы могли выполнить
+соответствующее действие. Например:</p>
+
+<pre>
+&#64;Override
+public boolean onContextItemSelected(MenuItem item) {
+    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
+    switch (item.getItemId()) {
+        case R.id.edit:
+            editNote(info.id);
+            return true;
+        case R.id.delete:
+            deleteNote(info.id);
+            return true;
+        default:
+            return super.onContextItemSelected(item);
+    }
+}
+</pre>
+
+<p>Метод {@link android.view.MenuItem#getItemId()} запрашивает идентификатор для
+выбранного пункта меню. Идентификаторы должны быть назначены каждому пункту меню в файле XML с помощью атрибута {@code
+android:id}, как описано в разделе <a href="#xml">Определение меню в файле
+XML</a>.</p>
+
+<p>Когда пункт меню успешно обработан, возвращается {@code true}. Если пункт меню не
+обрабатывается, следует передать его реализации суперкласса. Если в вашей операции есть фрагменты,
+то она получит этот обратный вызов первой. Вызывая суперкласс, когда пункт меню не обрабатывается, система
+передает событие соответствующему методу обратного вызова в каждом фрагменте по одному (в порядке
+добавления каждого фрагмента), пока не будет возвращено значение {@code true} или {@code false}. (Реализация
+{@link android.app.Activity} и {@code android.app.Fragment} по умолчанию возвращает {@code
+false}, поэтому, когда событие не обрабатывается, следует всегда вызывать суперкласс.)</p>
+</li>
+</ol>
+
+
+<h3 id="CAB">Использование режима контекстных действий</h3>
+
+<p>Режим контекстных действий представляет собой системную реализацию класса {@link android.view.ActionMode}, которая
+направляет пользователя на выполнение контекстных действий при взаимодействии с приложением. Когда
+пользователь использует этот режим, выбирая элемент, вверху экрана открывается <em>строка контекстных действий</em>,
+содержащая действия, которые пользователь может выполнить с выбранными в данный момент элементами. В этом режиме
+пользователь может выбирать несколько элементов (если это допускается приложением), снимать выделения с элементов и продолжать
+навигацию в операции (в тех пределах, в которых это поддерживается приложением). Режим контекстных действий отключается,
+а строка контекстных действий исчезает, когда пользователь снимет выделение со всех элементов, нажмет кнопку НАЗАД
+или выберет действие <em>Готово</em>, расположенное с левой стороны строки.</p>
+
+<p class="note"><strong>Примечание.</strong> Строка контекстных действий не обязательно бывает
+связана со <a href="{@docRoot}guide/topics/ui/actionbar.html">строкой действий</a>. Они работают
+независимо друг от друга, даже несмотря на то, что визуально строка контекстных действий занимает положение
+строки действий.</p>
+
+<p>Если вы разрабатываете приложение для версии Android 3.0 (уровень API 11) или последующих версий, то
+обычно вместо <a href="#FloatingContextMenu">плавающего контекстного меню</a> вам следует использовать контекстные действия.</p>
+
+<p>Для представлений, которые предоставляют возможность контекстные действия, обычно следует вызывать режим контекстных действий
+при возникновении одного из двух (или сразу обоих) событий:</p>
+<ul>
+  <li>пользователь длительно нажимает в представлении;</li>
+  <li>пользователь устанавливает флажок или выбирает другой подобный компонент пользовательского интерфейса в представлении.</li>
+</ul>
+
+<p>То, каким образом ваше представление вызывает режим контекстных действий и определяет поведение каждого
+действия, зависит от вас. Есть два базовых варианта:</p>
+<ul>
+  <li>для контекстных действий в отдельных, произвольных представлениях;</li>
+  <li>для пакетных контекстных действий с группами элементов в {@link
+android.widget.ListView} или {@link android.widget.GridView} (что позволяет пользователю выбирать по несколько
+элементов и выполнять действие с ними всеми).</li>
+</ul>
+
+<p>В следующих разделах описывается конфигурация, необходимая для каждого из этих вариантов.</p>
+
+
+<h4 id="CABforViews">Включение режима контекстных действий для отдельных представлений</h4>
+
+<p>Если вам требуется вызывать режим контекстных действий, только когда пользователь выбирает определенные
+представления, то вам следует:</p>
+<ol>
+  <li>Реализовать интерфейс {@link android.view.ActionMode.Callback}. В его методах обратного вызова вы
+можете указать действия для строки контекстных действий, реагировать на нажатия пунктов действий и 
+обрабатывать другие события жизненного цикла для режима действий.</li>
+  <li>Вызывайте {@link android.app.Activity#startActionMode startActionMode()}, когда требуется показать
+строку (например, когда пользователь выполняет длительное нажатие представления).</li>
+</ol>
+
+<p>Например:</p>
+
+<ol>
+  <li>Реализуйте интерфейс {@link android.view.ActionMode.Callback ActionMode.Callback}:
+<pre>
+private ActionMode.Callback mActionModeCallback = new ActionMode.Callback() {
+
+    // Called when the action mode is created; startActionMode() was called
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate a menu resource providing context menu items
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context_menu, menu);
+        return true;
+    }
+
+    // Called each time the action mode is shown. Always called after onCreateActionMode, but
+    // may be called multiple times if the mode is invalidated.
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        return false; // Return false if nothing is done
+    }
+
+    // Called when the user selects a contextual menu item
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        switch (item.getItemId()) {
+            case R.id.menu_share:
+                shareCurrentItem();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    // Called when the user exits the action mode
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        mActionMode = null;
+    }
+};
+</pre>
+
+<p>Обратите внимание, что эти обратные вызовы событий почти точно такие же, как и обратные вызовы для <a href="#options-menu">меню параметров</a>. Отличаются они только тем, что каждый из них также передает объект {@link
+android.view.ActionMode}, связанный с событием. С помощью API-интерфейсов {@link
+android.view.ActionMode} можно вносить различные изменения в CAB, например, указывать другой заголовок и
+подзаголовок с помощью {@link android.view.ActionMode#setTitle setTitle()} и {@link
+android.view.ActionMode#setSubtitle setSubtitle()} (удобно для указания количества выбранных
+элементов).</p>
+
+<p>Также обратите внимание, что приведенный выше образец кода задает для переменной {@code mActionMode} значение null, когда 
+режим действия прекращает свое существование. Далее вы узнаете, каким образом он инициализируется и чем может быть
+полезно сохранение составной переменной в операции или фрагменте.</p>
+</li>
+
+  <li>Для включения режима контекстных действий, когда это необходимо, 
+например, в ответ на длительное нажатие {@link
+android.view.View}, вызывайте {@link android.app.Activity#startActionMode startActionMode()}:</p>
+
+<pre>
+someView.setOnLongClickListener(new View.OnLongClickListener() {
+    // Called when the user long-clicks on someView
+    public boolean onLongClick(View view) {
+        if (mActionMode != null) {
+            return false;
+        }
+
+        // Start the CAB using the ActionMode.Callback defined above
+        mActionMode = getActivity().startActionMode(mActionModeCallback);
+        view.setSelected(true);
+        return true;
+    }
+});
+</pre>
+
+<p>При вызове метода {@link android.app.Activity#startActionMode startActionMode()} система возвращает
+созданный класс {@link android.view.ActionMode}. Сохранив его в составной переменной, вы сможете
+вносить изменения в строку контекстных действий в ответ на другие события. В приведенном выше образце кода
+{@link android.view.ActionMode} используется для того, чтобы экземпляр {@link android.view.ActionMode}
+не создавался повторно, если он уже активен. Достигается это путем проверки, имеет ли элемент значение null перед запуском
+режима действий.</p>
+</li>
+</ol>
+
+
+
+<h4 id="CABforListView">Включение пакетных контекстных действий в ListView или GridView</h4>
+
+<p>Если при наличии набора элементов в {@link android.widget.ListView} или {@link
+android.widget.GridView} (либо другом расширении {@link android.widget.AbsListView}) требуется
+разрешить пользователям выполнять пакетные действия, следует:</p>
+
+<ul>
+  <li>реализовать интерфейс {@link android.widget.AbsListView.MultiChoiceModeListener} и задать его
+для группы представлений с помощью метода {@link android.widget.AbsListView#setMultiChoiceModeListener
+setMultiChoiceModeListener()}; в методах обратного вызова приемника событий вы можете указывать действия
+для строки контекстных действий, реагировать на нажатия пунктов действий и обрабатывать другие обратные вызовы,
+унаследованные от интерфейса {@link android.view.ActionMode.Callback};</li>
+
+  <li>вызвать метод {@link android.widget.AbsListView#setChoiceMode setChoiceMode()} с аргументом {@link
+android.widget.AbsListView#CHOICE_MODE_MULTIPLE_MODAL}.</li>
+</ul>
+
+<p>Например:</p>
+
+<pre>
+ListView listView = getListView();
+listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
+listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
+
+    &#64;Override
+    public void onItemCheckedStateChanged(ActionMode mode, int position,
+                                          long id, boolean checked) {
+        // Here you can do something when items are selected/de-selected,
+        // such as update the title in the CAB
+    }
+
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        // Respond to clicks on the actions in the CAB
+        switch (item.getItemId()) {
+            case R.id.menu_delete:
+                deleteSelectedItems();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate the menu for the CAB
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context, menu);
+        return true;
+    }
+
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        // Here you can make any necessary updates to the activity when
+        // the CAB is removed. By default, selected items are deselected/unchecked.
+    }
+
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        // Here you can perform updates to the CAB due to
+        // an {@link android.view.ActionMode#invalidate} request
+        return false;
+    }
+});
+</pre>
+
+<p>Готово. Теперь, когда пользователь выберет элемент с помощью длительного нажатия, система вызовет метод {@link
+android.widget.AbsListView.MultiChoiceModeListener#onCreateActionMode onCreateActionMode()}
+и отобразит строку контекстных действий с указанными действиями. Пока строка
+контекстных действий отображается, пользователи могут выбирать дополнительные элементы.</p>
+
+<p>В некоторых случаях, когда контекстные действия содержат общие пункты, можно
+добавить флажок или другой подобный элемент пользовательского интерфейса, с помощью которого пользователи могут выбирать пункты, поскольку они
+могут не обнаружить варианта с длительным нажатием. Когда пользователь устанавливает флажок, можно
+вызывать режим контекстных действий, переводя соответствующий элемент списка в выбранное
+состояние с помощью {@link android.widget.AbsListView#setItemChecked setItemChecked()}.</p>
+
+
+
+
+<h2 id="PopupMenu">Создание всплывающего меню</h2>
+
+<div class="figure" style="width:220px">
+<img src="{@docRoot}images/ui/popupmenu.png" alt="" />
+<p><strong>Рисунок 4</strong>. Всплывающее меню в приложении Gmail, привязанное к расположенной вверху справа кнопке открытия панели
+дополнительных пунктов.</p>
+</div>
+
+<p>{@link android.widget.PopupMenu} является модальным меню, привязанным к {@link android.view.View}.
+Оно отображается ниже представления, к которому привязано, если там есть место, либо поверх него. Варианты использования:</p>
+<ul>
+  <li>Предоставление меню с дополнительными пунктами для действий, которые <em>относятся к</em> определенному контенту (например,
+к заголовкам сообщений Gmail, показанным на рисунке 4).
+    <p class="note"><strong>Примечание.</strong> Оно отличается от контекстного меню, которое
+обычно используется для действий, <em>затрагивающих</em> выбранный контент. Для действий, которые затрагивают выбранный
+контент, используйте <a href="#CAB">режим контекстных действий</a> или <a href="#FloatingContextMenu">плавающее контекстное меню</a>.</p></li>
+  <li>Предоставление второй части командной последовательности (например, кнопки, обозначенной как "Добавить",
+которая открывает всплывающее меню с различными вариантами добавления);</li>
+  <li>Предоставление раскрывающегося меню наподобие {@link android.widget.Spinner}, которое не сохраняет
+постоянное выделение.</li>
+</ul>
+
+
+<p class="note"><strong>Примечание.</strong> Использование класса {@link android.widget.PopupMenu} поддерживается на уровне API
+ 11 и выше.</p>
+
+<p>Если для <a href="#xml">определения меню используется XML</a>, вот каким образом можно показать всплывающее меню:</p>
+<ol>
+  <li>Создайте экземпляр класса {@link android.widget.PopupMenu} с помощью его конструктора, принимающий 
+текущие {@link android.content.Context} и {@link android.view.View} приложения, к которым
+должно быть привязано меню.</li>
+  <li>С помощью {@link android.view.MenuInflater} загрузите свой ресурс меню в объект {@link
+android.view.Menu}, возвращенный методом {@link
+android.widget.PopupMenu#getMenu() PopupMenu.getMenu()}. На API уровня 14 и выше вместо этого можно использовать
+{@link android.widget.PopupMenu#inflate PopupMenu.inflate()}.</li>
+  <li>Вызовите метод {@link android.widget.PopupMenu#show() PopupMenu.show()}.</li>
+</ol>
+
+<p>Например, вот кнопка с атрибутом {@link android.R.attr#onClick android:onClick},
+которая показывает всплывающее меню:</p>
+
+<pre>
+&lt;ImageButton
+    android:layout_width="wrap_content" 
+    android:layout_height="wrap_content" 
+    android:src="@drawable/ic_overflow_holo_dark"
+    android:contentDescription="@string/descr_overflow_button"
+    android:onClick="showPopup" />
+</pre>
+
+<p>После этого операция сможет показать вот такое всплывающее меню:</p>
+
+<pre>
+public void showPopup(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+    MenuInflater inflater = popup.getMenuInflater();
+    inflater.inflate(R.menu.actions, popup.getMenu());
+    popup.show();
+}
+</pre>
+
+<p>На API уровня 14 и выше можно объединить две строки, которые загружают меню, с помощью {@link
+android.widget.PopupMenu#inflate PopupMenu.inflate()}.</p>
+
+<p>Меню закрывается, когда пользователь выбирает один из пунктов или касается экрана за пределами области
+меню. Прослушивать событие закрытия меню можно с помощью {@link
+android.widget.PopupMenu.OnDismissListener}.</p>
+
+<h3 id="PopupEvents">Обработка нажатий</h3>
+
+<p>Для выполнения
+действия, когда пользователь выбирает пункт меню, необходимо реализовать интерфейс {@link
+android.widget.PopupMenu.OnMenuItemClickListener} и зарегистрировать его в своем {@link
+android.widget.PopupMenu}, вызвав метод {@link android.widget.PopupMenu#setOnMenuItemClickListener
+setOnMenuItemclickListener()}. Когда пользователь выбирает пункт меню, система выполняет обратный вызов {@link
+android.widget.PopupMenu.OnMenuItemClickListener#onMenuItemClick onMenuItemClick()} в
+вашем интерфейсе.</p>
+
+<p>Например:</p>
+
+<pre>
+public void showMenu(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+
+    // This activity implements OnMenuItemClickListener
+    popup.setOnMenuItemClickListener(this);
+    popup.inflate(R.menu.actions);
+    popup.show();
+}
+
+&#64;Override
+public boolean onMenuItemClick(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.archive:
+            archive(item);
+            return true;
+        case R.id.delete:
+            delete(item);
+            return true;
+        default:
+            return false;
+    }
+}
+</pre>
+
+
+<h2 id="groups">Создание групп меню</h2>
+
+<p>Группа меню ― это набор пунктов меню с рядом общих характеристик. С помощью группы
+можно:</p>
+<ul>
+  <li>показывать или скрывать все пункты с помощью {@link android.view.Menu#setGroupVisible(int,boolean)
+setGroupVisible()};</li>
+  <li>включать или отключать все пункты с помощью {@link android.view.Menu#setGroupEnabled(int,boolean)
+setGroupEnabled()};</li>
+  <li>Указывать, можно ли помечать все пункты, с помощью {@link
+android.view.Menu#setGroupCheckable(int,boolean,boolean) setGroupCheckable()}.</li>
+</ul>
+
+<p>Для создания группы необходимо вложить элементы {@code &lt;item&gt;} в элемент {@code &lt;group&gt;}
+в своем ресурсе меню либо указать идентификатор группы с помощью метода {@link
+android.view.Menu#add(int,int,int,int) add()}.</p>
+
+<p>Вот пример ресурса меню, в котором имеется группа:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/menu_save"
+          android:icon="@drawable/menu_save"
+          android:title="@string/menu_save" /&gt;
+    &lt;!-- menu group --&gt;
+    &lt;group android:id="@+id/group_delete"&gt;
+        &lt;item android:id="@+id/menu_archive"
+              android:title="@string/menu_archive" /&gt;
+        &lt;item android:id="@+id/menu_delete"
+              android:title="@string/menu_delete" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Элементы, находящиеся в группе, отображаются на одном уровне с первым элементом &mdash; все три пункта
+меню являются элементами одного уровня. Однако можно изменить характеристики двух
+пунктов из группы, указав ссылку на идентификатор группы и воспользовавшись приведенными выше методами. Кроме того,
+система никогда не будет разделять сгруппированные пункты. Например, если объявить {@code
+android:showAsAction="ifRoom"} для каждого пункта, то они оба будут отображены либо в строке
+действий, либо в дополнительных действиях.</p>
+
+
+<h3 id="checkable">Использование пунктов меню, которые можно пометить</h3>
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/radio_buttons.png" height="333" alt="" />
+  <p class="img-caption"><strong>Рисунок 5</strong>. Снимок экрана с вложенным меню, пункты которого можно
+пометить.</p>
+</div>
+
+<p>Такое меню можно использовать в качестве интерфейса для включения и отключения тех или иных параметров. При этом для автономных
+параметров используется флажок, а для групп
+взаимоисключающих вариантов ― переключатель. На рисунке 5 показано вложенное меню с пунктами, которые можно выбирать с помощью
+переключателей.</p>
+
+<p class="note"><strong>Примечание.</strong> Пункты в меню значков (из меню параметров) не могут
+отображать флажки или переключатели. Если вы решите сделать так, чтобы пункты меню значков можно было помечать,
+вам необходимо будет вручную указать помеченное состояние путем замены значка и/или теста
+при каждом изменении состояния.</p>
+
+<p>Определять возможность помечать отдельные пункты меню можно с помощью атрибута {@code
+android:checkable} в элементе {@code &lt;item&gt;}, а для всей группы это делается с помощью
+атрибута {@code android:checkableBehavior} в элементе {@code &lt;group&gt;}. Например
+, все пункты этой группы меню можно помечать с помощью переключателей:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;group android:checkableBehavior="single"&gt;
+        &lt;item android:id="@+id/red"
+              android:title="@string/red" /&gt;
+        &lt;item android:id="@+id/blue"
+              android:title="@string/blue" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Атрибут {@code android:checkableBehavior} принимает один из трех параметров:
+<dl>
+  <dt>{@code single}</dt>
+    <dd>Только один пункт из группы можно пометить (переключатель)</dd>
+  <dt>{@code all}</dt>
+    <dd>Все пункты можно пометить (флажки)</dd>
+  <dt>{@code none}</dt>
+    <dd>Пометить нельзя ни один пункт</dd>
+</dl>
+
+<p>Для того чтобы применить к пункту помеченное состояние по умолчанию, служит атрибут {@code android:checked} в
+элементе {@code &lt;item&gt;}, а изменить его в коде можно с помощью метода {@link
+android.view.MenuItem#setChecked(boolean) setChecked()}.</p>
+
+<p>Когда выбирается пункт, который может быть помечен, система вызывает соответствующий ему метод обратного вызова
+(например {@link android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}). Именно
+здесь необходимо задать состояние флажка, поскольку флажок или переключатель не
+изменяет свое состояние автоматически. Запросить текущее состояние пункта (в котором он находился до того, как был
+выбран пользователем) можно с помощью{@link android.view.MenuItem#isChecked()}, а затем задать помеченное состояние с помощью 
+{@link android.view.MenuItem#setChecked(boolean) setChecked()}. Например:</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.vibrate:
+        case R.id.dont_vibrate:
+            if (item.isChecked()) item.setChecked(false);
+            else item.setChecked(true);
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>Если помеченное состояние не установить этим способом, то, когда пользователь выберет пункт, его отображаемое состояние (флажок или
+переключатель) не
+изменится. Если же помеченное состояние установить, операция сохранит его
+для пункта, с тем чтобы, когда пользователь откроет это меню, он увидел,
+что галочка поставлена.</p>
+
+<p class="note"><strong>Примечание.</strong>
+Пункты меню, которые можно пометить галочкой, предназначены для использования только в рамках одного сеанса. Они не сохраняются после
+прекращения существования приложения. Если имеются настройки приложения, которые требуется сохранить для пользователя,
+делать это следует с помощью <a href="{@docRoot}guide/topics/data/data-storage.html#pref">общих настроек</a>.</p>
+
+
+
+<h2 id="intents">Добавление пунктов меню на основе объектов Intent</h2>
+
+<p>Иногда требуется, чтобы пункт меню запускал операцию с помощью объекта {@link android.content.Intent}
+(это может быть операция как из вашего, так и из другого приложения). Когда вам известен объект Intent, который
+требуется использовать, и у вас есть определенный пункт меню, который должен инициировать этот объект Intent, можно выполнить объект
+Intent с помощью {@link android.app.Activity#startActivity(Intent) startActivity()} во время
+выполнения соответствующего метода обратного вызова, запускаемого при выборе пункта меню (например, обратного вызова {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}).</p>
+
+<p>Однако если вы не уверены, что на устройстве пользователя
+есть приложение, которое может обработать этот объект Intent, добавление пункта меню, который его вызывает, может привести
+к тому, что он не будет работать, поскольку объект Intent может не быть передан в
+операцию. Чтобы решить эту проблему, Android позволяет динамически добавлять в меню пункты,
+когда система Android обнаруживает на устройстве операции, которые могут обработать ваш объект Intent.</p>
+
+<p>Добавление пунктов меню на основе имеющихся операций, которые принимают объект Intent:</p>
+<ol>
+  <li>Определите объект
+с категорией {@link android.content.Intent#CATEGORY_ALTERNATIVE} и/или
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE}, а также с любыми другими условиями.</li>
+  <li>Вызовите метод {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+Menu.addIntentOptions()}. Затем Android выполнит поиск приложений, которые могут выполнить этот объект Intent,
+и добавит их в ваше меню.</li>
+</ol>
+
+<p>При отсутствии установленных приложений,
+которые удовлетворяют требованиям объекта Intent, ни одного пункта меню добавлено не будет.</p>
+
+<p class="note"><strong>Примечание.</strong>
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} используется для обработки элемента, выбранного
+в данный момент на экране. Поэтому его следует использовать только при создании меню в {@link
+android.app.Activity#onCreateContextMenu(ContextMenu,View,ContextMenuInfo)
+onCreateContextMenu()}.</p>
+
+<p>Например:</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu){
+    super.onCreateOptionsMenu(menu);
+
+    // Create an Intent that describes the requirements to fulfill, to be included
+    // in our menu. The offering app must include a category value of Intent.CATEGORY_ALTERNATIVE.
+    Intent intent = new Intent(null, dataUri);
+    intent.addCategory(Intent.CATEGORY_ALTERNATIVE);
+
+    // Search and populate the menu with acceptable offering applications.
+    menu.addIntentOptions(
+         R.id.intent_group,  // Menu group to which new items will be added
+         0,      // Unique item ID (none)
+         0,      // Order for the items (none)
+         this.getComponentName(),   // The current activity name
+         null,   // Specific items to place first (none)
+         intent, // Intent created above that describes our requirements
+         0,      // Additional flags to control items (none)
+         null);  // Array of MenuItems that correlate to specific items (none)
+
+    return true;
+}</pre>
+
+<p>Каждая обнаруженная операция, в которой имеется фильтр Intent, соответствующий данному объекту Intent, добавляется в виде
+пункта меню. Для этого значение из элемента <code>android:label</code> фильтра Intent используется в качестве
+заголовка пункта меню, а значок приложения ― в качестве значка этого пункта меню. Метод
+{@link android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} возвращает количество добавленных пунктов меню.</p>
+
+<p class="note"><strong>Примечание.</strong> При вызове метода {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} он переопределяет все пункты меню по группе меню, указанной в первом
+аргументе.</p>
+
+
+<h3 id="AllowingToAdd">Предоставление возможности добавить свою операцию в другие меню</h3>
+
+<p>Вы также можете предоставить другим приложениям возможность воспользоваться своей операцией, с тем чтобы ваше
+приложение могло быть включено в меню других приложений (процедура, обратная описанной выше).</p>
+
+<p>Чтобы операция могла быть включена в меню других приложений, необходимо определить фильтр
+Intent обычным образом, но непременно включить в него значения {@link android.content.Intent#CATEGORY_ALTERNATIVE}
+и/или {@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} для категории фильтра
+Intent. Например:</p>
+<pre>
+&lt;intent-filter label="&#64;string/resize_image">
+    ...
+    &lt;category android:name="android.intent.category.ALTERNATIVE" />
+    &lt;category android:name="android.intent.category.SELECTED_ALTERNATIVE" />
+    ...
+&lt;/intent-filter>
+</pre>
+
+<p>Подробные сведения о написании фильтров Intent см. в документе 
+<a href="/guide/components/intents-filters.html">Объекты Intent и фильтры объектов Intent</a>.</p>
+
+<p>Образец приложения, в котором используется эта методика, см. в образце кода 
+<a href="{@docRoot}resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html">Note
+Pad</a>.</p>
diff --git a/docs/html-intl/intl/ru/guide/topics/ui/notifiers/notifications.jd b/docs/html-intl/intl/ru/guide/topics/ui/notifiers/notifications.jd
new file mode 100644
index 0000000..d072b77
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/ui/notifiers/notifications.jd
@@ -0,0 +1,979 @@
+page.title=Уведомления
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Содержание документа</h2>
+<ol>
+  <li><a href="#Design">Рекомендации по разработке</a></li>
+  <li><a href="#CreateNotification">Создание уведомления</a>
+    <ol>
+      <li><a href="#Required">Обязательное содержимое уведомления</a></li>
+      <li><a href="#Optional">Необязательные содержимое и настройки уведомления</a></li>
+      <li><a href="#Actions">Действия уведомлений</a></li>
+      <li><a href="#Priority">Приоритет уведомлений</a></li>
+      <li><a href="#SimpleNotification">Создание простого уведомления</a></li>
+      <li><a href="#ApplyStyle">Применение расширенного макета к уведомлению</a></li>
+      <li><a href="#Compatibility">Вопросы совместимости</a></li>
+    </ol>
+  </li>
+  <li><a href="#Managing">Управление уведомлениями</a>
+    <ol>
+      <li><a href="#Updating">Обновление уведомлений</a></li>
+      <li><a href="#Removing">Удаление уведомлений</a></li>
+    </ol>
+  </li>
+  <li><a href="#NotificationResponse">Сохранение навигации при запуске операции</a>
+    <ol>
+      <li><a href="#DirectEntry">Настройка PendingIntent обычной операции</a></li>
+      <li><a href="#ExtendedNotification">Настройка PendingIntent особой операции</a></li>
+    </ol>
+  </li>
+  <li><a href="#Progress">Отображение хода выполнения в уведомлении</a>
+    <ol>
+      <li><a href="#FixedProgress">Отображение индикатора хода выполнения фиксированной продолжительности</a></li>
+      <li><a href="#ActivityIndicator">Отображение непрерывного индикатора операции</a></li>
+    </ol>
+  </li>
+  <li><a href="#metadata">Метаданные уведомления</a></li>
+  <li><a href="#Heads-up">Уведомления heads-up</a></li>
+  <li><a href="#lockscreenNotification">Уведомления на экране блокировки</a></li>
+    <ol>
+      <li><a href="#visibility">Настройка видимости</a></li>
+      <li><a href="#controllingMedia">Управление воспроизведением мультимедиа на экране блокировки</a></li>
+    </ol>
+  <li><a href="#CustomNotification">Нестандартные макеты уведомлений</a></li>
+</ol>
+
+    <h2>Основные классы</h2>
+    <ol>
+        <li>{@link android.app.NotificationManager}</li>
+        <li>{@link android.support.v4.app.NotificationCompat}</li>
+    </ol>
+    <h2>Видеоролики</h2>
+    <ol>
+        <li>
+            <a href="http://www.youtube.com/watch?v=Yc8YrVc47TI&amp;feature=player_detailpage#t=1672s">
+            Уведомления в 4.1</a>
+        </li>
+    </ol>
+<h2>См. также</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}design/patterns/notifications.html">Дизайн Android: уведомления</a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    Уведомление ― это сообщение, которое может быть выведено на экран за пределами обычного пользовательского
+    интерфейса приложения. Когда вы сообщаете системе о необходимости выдать уведомление, оно сначала отображается в виде значка в
+    <strong>области уведомлений</strong>. Чтобы просмотреть подробные сведения об уведомлении, пользователь открывает
+    <strong>панель уведомлений</strong>. И областью уведомлений, и панелью уведомлений
+    управляет система, а пользователь может их просматривать в любое время.
+</p>
+<img id="figure1" src="{@docRoot}images/ui/notifications/notification_area.png" height="" alt="" />
+<p class="img-caption">
+    <strong>Рисунок 1.</strong> Уведомления в области уведомлений.
+</p>
+<img id="figure2" src="{@docRoot}images/ui/notifications/notification_drawer.png" width="280px" alt="" />
+<p class="img-caption">
+    <strong>Рисунок 2.</strong> Уведомления в панели уведомлений.
+</p>
+
+<p class="note"><strong>Примечание.</strong> Если не указано иное, в этом руководстве речь идет о классе
+{@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}
+в версии 4 <a href="{@docRoot}tools/support-library/index.html">вспомогательной библиотеки</a>.
+Класс{@link android.app.Notification.Builder Notification.Builder} был добавлен в Android
+3.0 (уровень API 11).</p>
+
+<h2 id="Design">Рекомендации по разработке</h2>
+
+<p>Поскольку уведомления являются как важной составной частью пользовательского интерфейса Android, для них имеются собственные инструкции по проектированию.
+Появившиеся в Android 5.0 (уровень API 21) значительные изменения дизайна имеют особо важное
+значение, поэтому для получения более подробной информации вам следует ознакомиться с учебником по интерфейсу <a href="{@docRoot}training/material/index.html">Material Design</a>
+. Чтобы узнать, как проектировать уведомления и взаимодействие с ними, прочитайте руководство по проектированию 
+<a href="{@docRoot}design/patterns/notifications.html">Уведомления</a>.</p>
+
+<h2 id="CreateNotification">Создание уведомления</h2>
+
+<p>Информация о пользовательском интерфейсе и действия для уведомления указываются в объекте
+{@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}.
+Чтобы создать само уведомление, вызывается метод
+{@link android.support.v4.app.NotificationCompat.Builder#build NotificationCompat.Builder.build()},
+который возвращает объект {@link android.app.Notification}, содержащий заданные вами спецификации. Чтобы выдать
+уведомление, объект {@link android.app.Notification} передается в систему путем вызова метода
+{@link android.app.NotificationManager#notify NotificationManager.notify()}.</p>
+
+<h3 id="Required">Обязательное содержимое уведомления</h3>
+<p>
+    Объект {@link android.app.Notification} <em>должен</em> содержать следующие элементы:
+</p>
+<ul>
+    <li>
+        небольшой значок, заданный с помощью
+        {@link android.support.v4.app.NotificationCompat.Builder#setSmallIcon setSmallIcon()};
+    </li>
+    <li>
+        заголовок, заданный с помощью
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()};
+    </li>
+    <li>
+        подробный текст, заданный с помощью
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentText setContentText()}.
+    </li>
+</ul>
+<h3 id="Optional">Необязательные содержимое и настройки уведомления</h3>
+<p>
+    Все прочие настройки и содержимое уведомления являются необязательными. Подробные сведения о них
+    см. в справочной документации по {@link android.support.v4.app.NotificationCompat.Builder}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Actions">Действия уведомлений</h3>
+<p>
+    Несмотря на то что действия не являются обязательными, в уведомление необходимо добавить хотя бы одно из них.
+    Действие позволяет пользователю перейти из уведомления прямо к
+    операции {@link android.app.Activity} из вашего приложения, где они могут просмотреть одно или несколько событий
+    либо выполнить какую-либо другую работу.
+</p>
+<p>
+    Уведомление может предоставлять возможность выполгить несколько действий. Следует всегда определять действие, которое
+    вызывается, когда пользователь нажимает уведомление; обычно это действие открывает
+    операцию {@link android.app.Activity} из вашего приложения. В уведомление также можно добавлять кнопки,
+    которые выполняют дополнительные действия, например отключение сигнала будильника или немедленный ответ на текстовое
+    сообщение; эта функция поддерживается начиная с версии Android 4.1. Если используются дополнительные кнопки действий, то также
+    необходимо сделать их функции доступными в операции {@link android.app.Activity} из вашего приложения (подробные
+    сведения см. в разделе <a href="#Compatibility">Вопросы совместимости</a>).
+</p>
+<p>
+    Внутри класса {@link android.app.Notification} само действие определяется
+    объектом {@link android.app.PendingIntent}, содержащим объект
+    {@link android.content.Intent}, который запускает
+    операцию {@link android.app.Activity} из вашего приложения. Чтобы связать объект
+    {@link android.app.PendingIntent} с жестом, вызовите соответствующий метод
+    {@link android.support.v4.app.NotificationCompat.Builder}. Например, если вам требуется запустить
+    операцию {@link android.app.Activity}, когда пользователь нажимает текст уведомления в
+    панели уведомлений, вы добавляете объект {@link android.app.PendingIntent} путем вызова метода
+    {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()}.
+</p>
+<p>
+    Запуск операции {@link android.app.Activity}, когда пользователь нажимает уведомление, является
+    наиболее распространенным вариантом действия. Операцию {@link android.app.Activity} также можно запускать, когда пользователь
+    закрывает уведомление. В версии Android 4.1 или более поздних версиях запускать
+    операцию {@link android.app.Activity} можно с помощью кнопки действия. Подробные сведения см. в справочном руководстве по классу
+    {@link android.support.v4.app.NotificationCompat.Builder}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Priority">Приоритет уведомлений</h3>
+<p>
+    При желании уведомлению можно задать приоритет. Приоритет действует
+    как подсказка пользовательскому интерфейсу устройства о том, каким образом следует выводить уведомление.
+    Чтобы задать приоритет уведомления, вызовите метод {@link
+    android.support.v4.app.NotificationCompat.Builder#setPriority(int)
+    NotificationCompat.Builder.setPriority()} и передайте ему одну из констант приоритетов {@link
+    android.support.v4.app.NotificationCompat}. Имеется
+    пять уровней приоритета, начиная от {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_MIN} (-2) и до {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_MAX} (2). Если приоритет не задан,
+    то по умолчанию он будет иметь значение {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_DEFAULT} (0).
+</p>
+<p> Сведения о присвоении подходящего уровня приоритета см. в разделе "Правильная настройка
+    приоритета уведомления и управление им" в руководстве "Разработка <a href="{@docRoot}design/patterns/notifications.html">уведомлений</a>"
+.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="SimpleNotification">Создание простого уведомления</h3>
+<p>
+    Следующий фрагмент кода иллюстрирует простое уведомление, указывающее операцию, которую нужно будет открыть, когда
+    пользователь нажмет уведомление. Обратите внимание, что этот код создает объект
+    {@link android.support.v4.app.TaskStackBuilder} и использует его для создания объекта
+    {@link android.app.PendingIntent} для действия. Более подробно этот шаблон описан
+    в разделе <a href="#NotificationResponse">
+    "Сохранение навигации при запуске операции"</a>:
+</p>
+<pre>
+NotificationCompat.Builder mBuilder =
+        new NotificationCompat.Builder(this)
+        .setSmallIcon(R.drawable.notification_icon)
+        .setContentTitle("My notification")
+        .setContentText("Hello World!");
+// Creates an explicit intent for an Activity in your app
+Intent resultIntent = new Intent(this, ResultActivity.class);
+
+// The stack builder object will contain an artificial back stack for the
+// started Activity.
+// This ensures that navigating backward from the Activity leads out of
+// your application to the Home screen.
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack for the Intent (but not the Intent itself)
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent that starts the Activity to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(
+            0,
+            PendingIntent.FLAG_UPDATE_CURRENT
+        );
+mBuilder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// mId allows you to update the notification later on.
+mNotificationManager.notify(mId, mBuilder.build());
+</pre>
+<p>Готово. Теперь пользователь получит уведомление.</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ApplyStyle">Применение расширенного макета к уведомлению</h3>
+<p>
+    Чтобы уведомление отображалось в расширенном виде, сначала создайте объект
+    {@link android.support.v4.app.NotificationCompat.Builder} с требуемыми параметрами
+    обычного представления. Затем вызовите метод {@link android.support.v4.app.NotificationCompat.Builder#setStyle
+    Builder.setStyle()}, первым аргументом которого должен быть объект расширенного макета.
+</p>
+<p>
+    Помните, что расширенные уведомления не поддерживаются на платформах версии более ранней, чем Android 4.1. Сведения
+    о том, как обрабатывать уведомления для версий платформы Android 4.1 и более ранних, см. в
+    разделе <a href="#Compatibility">Вопросы совместимости</a>.
+</p>
+<p>
+    Например, следующий фрагмент кода демонстрирует, каким образом следует изменить уведомление, созданное
+    в предыдущем фрагменте, чтобы использовать расширенный макет:
+</p>
+<pre>
+NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
+    .setSmallIcon(R.drawable.notification_icon)
+    .setContentTitle("Event tracker")
+    .setContentText("Events received")
+NotificationCompat.InboxStyle inboxStyle =
+        new NotificationCompat.InboxStyle();
+String[] events = new String[6];
+// Sets a title for the Inbox in expanded layout
+inboxStyle.setBigContentTitle("Event tracker details:");
+...
+// Moves events into the expanded layout
+for (int i=0; i &lt; events.length; i++) {
+
+    inboxStyle.addLine(events[i]);
+}
+// Moves the expanded layout object into the notification object.
+mBuilder.setStyle(inBoxStyle);
+...
+// Issue the notification here.
+</pre>
+
+<h3 id="Compatibility">Вопросы совместимости</h3>
+
+<p>
+    Не все функции уведомлений поддерживаются в той или иной версии платформы, даже несмотря на то, что
+    методы для их задания имеются в классе вспомогательной библиотеки
+    {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}.
+    Например, кнопки действий, которые зависят от расширенных уведомлений, отображаются только в версии Android
+    4.1 и последующих версиях, поскольку сами расширенные уведомления поддерживаются только начиная с версии
+    Android 4.1.
+</p>
+<p>
+    Для обеспечения наилучшей совместимости создавать уведомления следует с помощью класса
+    {@link android.support.v4.app.NotificationCompat NotificationCompat} и его подклассов,
+    в частности {@link android.support.v4.app.NotificationCompat.Builder
+    NotificationCompat.Builder}. Кроме того, при реализации уведомления придерживайтесь вот такого процесса:
+</p>
+<ol>
+    <li>
+        Предоставляйте все функции уведомления всем пользователям независимо от используемой ими
+        версии. Для этого убедитесь, что все функции вызываются из
+        операции {@link android.app.Activity} в вашем приложении. Возможно, для этого вам потребуется добавить новый объект
+        {@link android.app.Activity}.
+        <p>
+            Например, если требуется использовать
+            {@link android.support.v4.app.NotificationCompat.Builder#addAction addAction()} для
+            создания элемента управления, который останавливает и запускает воспроизведение мультимедиа, сначала реализуйте этот
+            элемент управления в операции {@link android.app.Activity} из вашего приложения.
+        </p>
+    </li>
+    <li>
+        Обеспечьте доступ к этой функции операции {@link android.app.Activity} всех пользователей,
+        сделав так, чтобы эта операция запускалась, когда пользователь нажимает уведомление. Для этого
+        создайте объект {@link android.app.PendingIntent}
+        для операции {@link android.app.Activity}. Вызовите 
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+        setContentIntent()}, чтобы добавить объект {@link android.app.PendingIntent} в уведомление.
+    </li>
+    <li>
+        Затем добавьте в свое уведомление требуемые функции расширенного уведомления. Помните,
+        что любая добавляемая функция должна быть предусмотрена в операции {@link android.app.Activity},
+        которая запускается, когда пользователь нажимает уведомление.
+    </li>
+</ol>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Managing">Управление уведомлениями</h2>
+<p>
+    Когда уведомление требуется выдать несколько раз для однотипных событий, не следует
+    создавать совершенно новое уведомление. Вместо этого рассмотрите возможность обновить
+    предыдущее уведомление либо путем изменения некоторых его значений, либо путем добавления в него значений, либо обоими этими способами.
+</p>
+<p>
+    Например, Gmail уведомляет пользователя о поступлении новых сообщений электронной почты путем увеличения счетчика
+    непрочитанных сообщений и добавления в уведомления кратких сведений о каждом из них. Это называется
+    "укладкой уведомлений в стопку" (stacking) и подробно описано в  руководстве
+    "Разработка <a href="{@docRoot}design/patterns/notifications.html">уведомлений</a>".
+</p>
+<p class="note">
+    <strong>Примечание.</strong> Для этой функции Gmail требуется расширенный макет папки входящих сообщений, который
+    входит в состав функции расширенных уведомлений, поддержка которой предусмотрена начиная с версии Android 4.1.
+</p>
+<p>
+    В разделах ниже описано, как обновлять уведомления, а также как удалять их.
+</p>
+<h3 id="Updating">Обновление уведомлений</h3>
+<p>
+    Чтобы настроить уведомление таким образом, что его впоследствии можно было обновлять, его следует выдавать с идентификатором уведомления путем
+    вызова метода {@link android.app.NotificationManager#notify(int, android.app.Notification) NotificationManager.notify()}.
+    Чтобы изменить это уведомление, после того как оно выдано,
+    обновите или создайте объект {@link android.support.v4.app.NotificationCompat.Builder},
+    постройте на его основе объект {@link android.app.Notification} и выдайте 
+    объект {@link android.app.Notification} с тем же идентификатором, который использовался ранее. Если
+    предыдущее уведомление все еще отображается на экране, система обновит его с использованием содержимого
+    объекта{@link android.app.Notification}. Если предыдущее уведомление было закрыто, то
+    вместо него будет создано новое уведомление.
+</p>
+<p>
+    Следующий фрагмент кода демонстрирует уведомление, которое обновляется с учетом
+    количества произошедших событий. Он накладывает уведомления друг на друга (укладывает в стопку), отображая сводную информацию:
+</p>
+<pre>
+mNotificationManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Sets an ID for the notification, so it can be updated
+int notifyID = 1;
+mNotifyBuilder = new NotificationCompat.Builder(this)
+    .setContentTitle("New Message")
+    .setContentText("You've received new messages.")
+    .setSmallIcon(R.drawable.ic_notify_status)
+numMessages = 0;
+// Start of a loop that processes data and then notifies the user
+...
+    mNotifyBuilder.setContentText(currentText)
+        .setNumber(++numMessages);
+    // Because the ID remains unchanged, the existing notification is
+    // updated.
+    mNotificationManager.notify(
+            notifyID,
+            mNotifyBuilder.build());
+...
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Removing">Удаление уведомлений</h3>
+<p>
+    Уведомления отображаются на экране, пока не произойдет одно из следующих событий:
+</p>
+<ul>
+    <li>
+        пользователь закроет уведомления по одному или командой "Очистить все" (если
+        уведомление можно очистить);
+    </li>
+    <li>
+        пользователь нажмет уведомление, а вы вызвали метод
+        {@link android.support.v4.app.NotificationCompat.Builder#setAutoCancel setAutoCancel()}, когда
+        создавали уведомление;
+    </li>
+    <li>
+        вы вызовете метод {@link android.app.NotificationManager#cancel(int) cancel()} для уведомления с определенным
+        идентификатором. Кроме того, этот метод удаляет текущие уведомления;
+    </li>
+    <li>
+        вы вызовете метод {@link android.app.NotificationManager#cancelAll() cancelAll()}, который удаляет
+        все ранее выданные вами уведомления.
+    </li>
+</ul>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="NotificationResponse">Сохранение навигации при запуске операции</h2>
+<p>
+    Когда вы запускаете операцию {@link android.app.Activity} из уведомления, вам необходимо сохранить
+    привычные пользователю приемы навигации. При нажатии <i>"Назад"</i> пользователь должен возвращаться назад в
+    обычном потоке операций приложения вплоть до главного экрана, а при нажатии <i>"Последние"</i> операция
+    {@link android.app.Activity} должна быть отображена как отдельная задача. Чтобы сохранить приемы навигации, операцию
+    {@link android.app.Activity} следует запускать в новой задаче. Как настроить объект
+    {@link android.app.PendingIntent} таким образом, чтобы получить новую задачу, зависит от типа операции
+    {@link android.app.Activity}, которую вы запускаете. В целом есть две ситуации:
+</p>
+<dl>
+    <dt>
+        Обычная операция
+    </dt>
+    <dd>
+        Вы запускаете операцию {@link android.app.Activity}, которая является частью обычного потока
+        работы приложения. В этом случае настройте объект {@link android.app.PendingIntent} на
+        запуск новой задачи и предоставьте объекту {@link android.app.PendingIntent} стек переходов назад,
+        который воспроизводит обычную работу приложения в ситуации, когда пользователь нажимает <i>"Назад"</i> .
+        <p>
+            Это можно увидеть на примере уведомлений приложения Gmail. При нажатии уведомления для
+            одного сообщения электронной почты отображается само сообщение. При нажатии <b>Назад</b> вы переходите
+            назад по представлениям Gmail вплоть до главного экрана точно так же, как если бы вы вошли в Gmail с
+            главного экрана, а не из уведомления.
+        </p>
+        <p>
+            Происходит это независимо от того, в каком приложении вы находились в тот момент, когда нажали
+            уведомление. Например, если при составлении сообщения в Gmail вы нажмете
+            уведомление об одном сообщении электронной почты, вы сразу же перейдете в это сообщение. При нажатии <i>"Назад"</i>
+            вы перейдете в папку входящих сообщений, а затем на главный экран, а не в
+            сообщение, которое составляли.
+        </p>
+    </dd>
+    <dt>
+        Особая операция
+    </dt>
+    <dd>
+        Пользователь может увидеть эту операцию {@link android.app.Activity}, только если она запущена из уведомления.
+        В некотором смысле операция {@link android.app.Activity} расширяет уведомление путем предоставления
+        информации, которую было бы сложно отобразить в самом уведомлении. В этом случае
+        настройте объект {@link android.app.PendingIntent} на запуск в новой задаче. При этом создавать
+        стек переходов назад не требуется, поскольку запущенная операция {@link android.app.Activity} не является частью
+        потока операций приложения. При нажатии <i>"Назад"</i> пользователь все же перейдет на
+        главный экран.
+    </dd>
+</dl>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="DirectEntry">Настройка PendingIntent обычной операции</h3>
+<p>
+    Чтобы настроить объект {@link android.app.PendingIntent}, который непосредственно запускает операцию
+    {@link android.app.Activity}, выполните следующие шаги:
+</p>
+<ol>
+    <li>
+        Определите иерархию операций {@link android.app.Activity} своего приложения в файле манифеста.
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Добавьте поддержку для версии Android 4.0.3 и более ранних версий. Для этого укажите родительский объект операции
+                {@link android.app.Activity}, которую запускаете, добавив элемент
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+                в качестве дочернего для элемента 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>.
+                <p>
+                    Для этого элемента задайте
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a>="android.support.PARENT_ACTIVITY"</code>.
+                    Задайте
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#val">android:value</a>="&lt;parent_activity_name&gt;"</code>,
+                    где <code>&lt;parent_activity_name&gt;</code> ― это значение 
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a></code>
+                    для родительского элемента
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+. В качестве примера см. следующий код XML.
+                </p>
+            </li>
+            <li>
+                Также добавьте поддержку для версии Android 4.1 и более поздних версий. Для этого добавьте атрибут 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#parent">android:parentActivityName</a></code>
+                в элемент
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+                запускаемой операции{@link android.app.Activity}.
+            </li>
+        </ol>
+        <p>
+            Итоговый код XML должен выглядеть следующим образом:
+        </p>
+<pre>
+&lt;activity
+    android:name=".MainActivity"
+    android:label="&#64;string/app_name" &gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+&lt;activity
+    android:name=".ResultActivity"
+    android:parentActivityName=".MainActivity"&gt;
+    &lt;meta-data
+        android:name="android.support.PARENT_ACTIVITY"
+        android:value=".MainActivity"/&gt;
+&lt;/activity&gt;
+</pre>
+    </li>
+    <li>
+        Создайте стек переходов назад, основанный на объекте {@link android.content.Intent}, который запускает операцию
+        {@link android.app.Activity}:
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Создайте объект {@link android.content.Intent}, который запускает операцию {@link android.app.Activity}.
+            </li>
+            <li>
+                Создайте построитель стека, вызвав метод {@link android.app.TaskStackBuilder#create
+                TaskStackBuilder.create()}.
+            </li>
+            <li>
+                Добавьте стек переходов назад в построитель стеков путем вызова метода
+                {@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}.
+                Для каждой операции {@link android.app.Activity} из иерархии, определенной в
+                файле манифеста, в стеке переходов назад имеется объект {@link android.content.Intent}, который
+                запускает {@link android.app.Activity}. Этот метод также добавляет флаги, которые запускают
+                стек в новой задаче.
+                <p class="note">
+                    <strong>Примечание.</strong> Несмотря на то что аргумент 
+                    {@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}
+                    является ссылкой на запускаемую операцию {@link android.app.Activity}, при вызове этого метода
+                    не добавляется объект {@link android.content.Intent}, который запускает операцию
+                    {@link android.app.Activity}. Это делается на следующем шаге.
+                </p>
+            </li>
+            <li>
+                Добавьте объект {@link android.content.Intent}, который запускает операцию {@link android.app.Activity}
+                из уведомления, путем вызова метода
+                {@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}.
+                Передайте объект {@link android.content.Intent}, созданный вами на первом шаге, в качестве
+                аргумента методу
+                {@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}.
+            </li>
+            <li>
+                При необходимости добавьте аргументы в объекты {@link android.content.Intent} из
+                стека путем вызова метода {@link android.support.v4.app.TaskStackBuilder#editIntentAt
+                TaskStackBuilder.editIntentAt()}. Иногда это требуется для того, чтобы
+                целевая операция {@link android.app.Activity} отображала значимые данные, когда пользователь переходит
+                в нее с помощью действия <i>"Назад"</i>.
+            </li>
+            <li>
+                Получите объект {@link android.app.PendingIntent} для этого стека переходов назад путем вызова метода 
+                {@link android.support.v4.app.TaskStackBuilder#getPendingIntent getPendingIntent()}.
+                Затем этот объект {@link android.app.PendingIntent} можно будет использовать в качестве аргумента для метода
+                {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+                setContentIntent()}.
+            </li>
+        </ol>
+     </li>
+</ol>
+<p>
+    Следующий фрагмент кода демонстрирует этот процесс:
+</p>
+<pre>
+...
+Intent resultIntent = new Intent(this, ResultActivity.class);
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+// Gets a PendingIntent containing the entire back stack
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
+...
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+builder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mNotificationManager.notify(id, builder.build());
+</pre>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ExtendedNotification">Настройка PendingIntent особой операции</h3>
+<p>
+    В приведенном далее разделе описывается настройка объекта
+    {@link android.app.PendingIntent} для особой операции.
+</p>
+<p>
+    Особой операции {@link android.app.Activity} не требуется стек перехода назад, поэтому не нужно
+    определять иерархию объектов {@link android.app.Activity} в файле манифеста и
+    вызывать
+    метод {@link android.support.v4.app.TaskStackBuilder#addParentStack  addParentStack()} для построения 
+    стека перехода назад. Вместо этого в файле манифеста задайте параметры задачи {@link android.app.Activity}
+    и создайте объект {@link android.app.PendingIntent} путем вызова метода
+    {@link android.app.PendingIntent#getActivity getActivity()}:
+</p>
+<ol>
+    <li>
+        Добавьте следующие атрибуты в элемент
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+        в файле манифеста для операции {@link android.app.Activity}
+        <dl>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">android:name</a>="<i>activityclass</i>"</code>
+            </dt>
+            <dd>
+                Полное имя класса операции.
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">android:taskAffinity</a>=""</code>
+            </dt>
+            <dd>
+                В сочетании с 
+                флагом {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK},
+                который вы задали в коде, это гарантирует, что данная операция {@link android.app.Activity} не
+                перейдет в задачу приложения, используемую по умолчанию. Любые существующие задачи, имеющие
+                отношение к используемой по умолчанию задаче приложения, затронуты не будут.
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">android:excludeFromRecents</a>="true"</code>
+            </dt>
+            <dd>
+                Исключает новую задачу из списка <i>"Последние",</i>с тем чтобы пользователь не мог случайно
+                вернуться в нее.
+            </dd>
+        </dl>
+        <p>
+            Данный элемент показан в этом фрагменте кода:
+        </p>
+<pre>
+&lt;activity
+    android:name=".ResultActivity"
+...
+    android:launchMode="singleTask"
+    android:taskAffinity=""
+    android:excludeFromRecents="true"&gt;
+&lt;/activity&gt;
+...
+</pre>
+    </li>
+    <li>
+        Построение и выдача уведомления:
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Создайте объект {@link android.content.Intent}, который запускает операцию 
+                {@link android.app.Activity}.
+            </li>
+            <li>
+                Настройте операцию {@link android.app.Activity}, запускаемую в новой пустой задаче, путем вызова метода 
+                {@link android.content.Intent#setFlags setFlags()} с флагами
+                {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK}
+                и
+                {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TASK FLAG_ACTIVITY_CLEAR_TASK}.
+            </li>
+            <li>
+                Задайте для объекта {@link android.content.Intent} любые другие требуемые параметры.
+            </li>
+            <li>
+                Создайте объект {@link android.app.PendingIntent} из объекта {@link android.content.Intent}
+                путем вызова метода  {@link android.app.PendingIntent#getActivity getActivity()}.
+                Затем этот объект {@link android.app.PendingIntent} можно будет использовать в качестве аргумента для метода
+                {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+                setContentIntent()}.
+            </li>
+        </ol>
+    <p>
+        Следующий фрагмент кода демонстрирует этот процесс:
+    </p>
+<pre>
+// Instantiate a Builder object.
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+// Creates an Intent for the Activity
+Intent notifyIntent =
+        new Intent(this, ResultActivity.class);
+// Sets the Activity to start in a new, empty task
+notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
+                        | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+// Creates the PendingIntent
+PendingIntent notifyPendingIntent =
+        PendingIntent.getActivity(
+        this,
+        0,
+        notifyIntent,
+        PendingIntent.FLAG_UPDATE_CURRENT
+);
+
+// Puts the PendingIntent into the notification builder
+builder.setContentIntent(notifyPendingIntent);
+// Notifications are issued by sending them to the
+// NotificationManager system service.
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Builds an anonymous Notification object from the builder, and
+// passes it to the NotificationManager
+mNotificationManager.notify(id, builder.build());
+</pre>
+    </li>
+</ol>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Progress">Отображение хода выполнения в уведомлении</h2>
+<p>
+    Уведомления могут содержать индикатор хода выполнения с эффектом анимации, который показывает пользователям состояние
+    текущей операции. Если имеется возможность оценить, сколько времени занимает операция и какой процент ее объема
+    уже завершен, используйте "определенную" форму индикатора
+    (индикатор хода выполнения). Если продолжительность операции оценить невозможно, используйте
+    "неопределенную" форму индикатора (индикатор операции).
+</p>
+<p>
+    Индикаторы хода выполнения отображаются с помощью реализации класса
+    {@link android.widget.ProgressBar} платформы.
+</p>
+<p>
+    Для использования индикатора хода выполнения на платформах начиная с Android 4.0 вызовите метод
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}. Для
+    предыдущих версий необходимо будет создать собственный нестандартный макет уведомлений, который
+    содержит представление {@link android.widget.ProgressBar}.
+</p>
+<p>
+    В приведенных далее разделах описывается отображение хода выполнения в уведомлении с помощью
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="FixedProgress">Отображение индикатора хода выполнения фиксированной продолжительности</h3>
+<p>
+    Чтобы вывести на экран определенный индикатор хода выполнения, добавьте его в свое уведомление, вызвав метод
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress
+    setProgress(max, progress, false)}, а затем выдайте уведомление. По мере выполнения
+    увеличивайте значение <code>progress</code> и обновляйте уведомление. По окончании операции
+    <code>progress</code> должен быть равен <code>max</code>. Стандартный способ вызова метода 
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}
+    заключается в следующем: задать значение <code>max</code> равным 100 с последующим увеличением <code>progress</code> в виде
+    величины "процента выполнения" операции.
+</p>
+<p>
+    По окончании операции можно оставить этот индикатор хода выполнения на экране или удалить его. В
+    любом случае не забывайте обновить текст уведомления, чтобы указать, что операция выполнена.
+    Чтобы удалить индикатор выполнения, вызовите метод
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress
+    setProgress(0, 0, false)}. Например:
+</p>
+<pre>
+...
+mNotifyManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mBuilder = new NotificationCompat.Builder(this);
+mBuilder.setContentTitle("Picture Download")
+    .setContentText("Download in progress")
+    .setSmallIcon(R.drawable.ic_notification);
+// Start a lengthy operation in a background thread
+new Thread(
+    new Runnable() {
+        &#64;Override
+        public void run() {
+            int incr;
+            // Do the "lengthy" operation 20 times
+            for (incr = 0; incr &lt;= 100; incr+=5) {
+                    // Sets the progress indicator to a max value, the
+                    // current completion percentage, and "determinate"
+                    // state
+                    mBuilder.setProgress(100, incr, false);
+                    // Displays the progress bar for the first time.
+                    mNotifyManager.notify(0, mBuilder.build());
+                        // Sleeps the thread, simulating an operation
+                        // that takes time
+                        try {
+                            // Sleep for 5 seconds
+                            Thread.sleep(5*1000);
+                        } catch (InterruptedException e) {
+                            Log.d(TAG, "sleep failure");
+                        }
+            }
+            // When the loop is finished, updates the notification
+            mBuilder.setContentText("Download complete")
+            // Removes the progress bar
+                    .setProgress(0,0,false);
+            mNotifyManager.notify(ID, mBuilder.build());
+        }
+    }
+// Starts the thread by calling the run() method in its Runnable
+).start();
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ActivityIndicator">Отображение непрерывного индикатора операции</h3>
+<p>
+    Для отображения неопределенного индикатора операции добавьте его в свое уведомление с помощью метода
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, true)}
+    (два первых аргумента игнорируются) и выдайте уведомление. В результате будет показан индикатор,
+    который будет иметь такой же стиль, что и индикатор хода выполнения, за исключением того, что его анимация будет непрерывной.
+</p>
+<p>
+    Выдайте уведомление в начале операции. Анимация будет воспроизводиться до тех пор, пока вы не
+    измените уведомление. Когда операция будет выполнена, вызовите метод
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, false)},
+    после чего обновите уведомление, удалив индикатор операции.
+    Всегда поступайте таким образом. В противном случае анимация будет воспроизводиться и после завершения операции. Также
+    не забывайте изменить текст уведомления, чтобы указать, что операция выполнена.
+</p>
+<p>
+    Чтобы посмотреть, как работают индикаторы операций, перейдите к  предыдущему фрагменту кода. Найдите следующие строки:
+</p>
+<pre>
+// Sets the progress indicator to a max value, the current completion
+// percentage, and "determinate" state
+mBuilder.setProgress(100, incr, false);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+<p>
+    Замените их вот этими строками:
+</p>
+<pre>
+ // Sets an activity indicator for an operation of indeterminate length
+mBuilder.setProgress(0, 0, true);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+
+<h2 id="metadata">Метаданные уведомления</h2>
+
+<p>Уведомления можно сортировать в соответствии с метаданными, которые назначаются с помощью
+следующих методов {@link android.support.v4.app.NotificationCompat.Builder}:</p>
+
+<ul>
+    <li>метод {@link android.support.v4.app.NotificationCompat.Builder#setCategory(java.lang.String) setCategory()}
+    информирует систему о том, как обрабатывать уведомления вашего приложения, когда устройство находится в режиме приоритета
+    (например, если ваше уведомление сообщает о входящем вызове, мгновенном сообщении или сигнале будильника);</li>
+    <li>метод{@link android.support.v4.app.NotificationCompat.Builder#setPriority(int) setPriority()} вызывает
+    отображение уведомлений, в поле приоритета которых задано значение {@code PRIORITY_MAX} или {@code PRIORITY_HIGH}
+, в небольшом плавающем окне, если уведомление также сопровождается звуковым сигналом или вибрацией;</li>
+    <li>метод {@link android.support.v4.app.NotificationCompat.Builder#addPerson(java.lang.String) addPerson()}
+    позволяет добавить к уведомлению список людей. С его помощью ваше уведомление может сигнализировать
+    системе о том, что она должна сгруппировать уведомления от указанных людей или считать уведомления
+    от этих людей более важными.</li>
+</ul>
+
+<div class="figure" style="width:230px">
+  <img src="{@docRoot}images/ui/notifications/heads-up.png" alt="" width="" height="" id="figure3" />
+  <p class="img-caption">
+    <strong>Рисунок 3</strong>. Полноэкранная операция, отображающая уведомление heads-up
+  </p>
+</div>
+
+<h2 id="Heads-up">Уведомления heads-up</h2>
+
+<p>В Android 5.0 (уровень API 21) уведомления могут отображаться в небольшом плавающем окне
+(оно также называется <em>уведомлением heads-up</em>), когда устройство активно
+(то есть устройство разблокировано и его экран включен). Эти уведомления
+выглядят так же, как компактная форма вашего уведомления, за исключением того, что в
+уведомлениях heads-up также отображаются кнопки действий. Пользователи могут выполнять действия или закрывать
+уведомление heads-up, не покидая текущее приложение.</p>
+
+<p>Примеры ситуаций, в которых могут быть вызваны уведомления heads-up:</p>
+
+<ul>
+  <li>операция пользователя выполняется в полноэкранном режиме (приложение использует 
+{@link android.app.Notification#fullScreenIntent}) или;</li>
+  <li>уведомление имеет высокий приоритет и использует рингтоны или
+    вибрацию.</li>
+</ul>
+
+<h2 id="lockscreenNotification">Уведомления на экране блокировки</h2>
+
+<p>С выходом версии Android 5.0 (уровень API 21) уведомления теперь могут отображаться на экране
+блокировки. С помощью этой функции можно выводит на экран элементы управления мультимедиа и другие стандартные
+действия. В настройках пользователи могут выбрать, следует ли отображать уведомления на экране блокировки, а
+вы можете указать, будет ли уведомление из вашего приложения видно на нем.</p>
+
+<h3 id="visibility">Настройка видимости</h3>
+
+<p>Ваше приложение может определять объем информации, отображаемой в уведомлениях, которые выводятся на экране
+блокировки. Метод {@link android.support.v4.app.NotificationCompat.Builder#setVisibility(int) setVisibility()}
+вызывается для того, чтобы указать одно из следующих значений:</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC} показывает полное содержимое
+    уведомления;</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_SECRET} не отображает какую-либо часть
+    этого уведомления на экране блокировки;</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE} показывает базовую информацию,
+    такую как значок уведомления и заголовок его содержимого, но скрывает полное содержимое уведомления.</li>
+</ul>
+
+<p>Когда задается значение {@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE}, вы также можете
+предоставить альтернативную версию содержимого уведомления, в который скрыты некоторые сведения. Например,
+приложение по работе с СМС может выводить уведомление, в котором говорится <em>У вас 3 новых текстовых сообщения</em>, а содержимое
+ и отправители сообщений скрыты. Чтобы предоставить возможность такого альтернативного уведомления, сначала создайте его
+с помощью {@link android.support.v4.app.NotificationCompat.Builder}. При создании
+частного объекта уведомления прикрепите к нему альтернативное уведомление, воспользовавшись методом
+{@link android.support.v4.app.NotificationCompat.Builder#setPublicVersion(android.app.Notification) setPublicVersion()}
+.</p>
+
+<h3 id="controllingMedia">Управление воспроизведением мультимедиа на экране блокировки</h3>
+
+<p>В версии Android 5.0 (API уровня 21) на экране блокировки больше не отображаются элементы управления воспроизведением мультимедиа,
+основанные на классе {@link android.media.RemoteControlClient}, использование которого прекращено. Вместо этого используйте
+шаблон {@link android.app.Notification.MediaStyle} с методом
+{@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()}
+, который преобразует действия в доступные для нажатия значки.</p>
+
+<p class="note"><strong>Примечание.</strong> Шаблон и метод {@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()}
+не входят в состав вспомогательной библиотеки, поэтому эти функции работают только в версии Android 5.0 и
+последующих версиях.</p>
+
+<p>Чтобы отобразить элементы управления мультимедиа на экране блокировки в Android 5.0, задайте для видимости
+значение {@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC}, выполнив описанную выше процедуру. Затем добавьте
+действия и задайте шаблон {@link android.app.Notification.MediaStyle}, как описано в
+следующем образце кода:</p>
+
+<pre>
+Notification notification = new Notification.Builder(context)
+    // Show controls on lock screen even when user hides sensitive content.
+    .setVisibility(Notification.VISIBILITY_PUBLIC)
+    .setSmallIcon(R.drawable.ic_stat_player)
+    // Add media control buttons that invoke intents in your media service
+    .addAction(R.drawable.ic_prev, "Previous", prevPendingIntent) // #0
+    .addAction(R.drawable.ic_pause, "Pause", pausePendingIntent)  // #1
+    .addAction(R.drawable.ic_next, "Next", nextPendingIntent)     // #2
+    // Apply the media style template
+    .setStyle(new Notification.MediaStyle()
+    .setShowActionsInCompactView(1 /* #1: pause button */)
+    .setMediaSession(mMediaSession.getSessionToken())
+    .setContentTitle("Wonderful music")
+    .setContentText("My Awesome Band")
+    .setLargeIcon(albumArtBitmap)
+    .build();
+</pre>
+
+<p class="note"><strong>Примечание.</strong> Прекращение использования класса {@link android.media.RemoteControlClient}
+имеет и другие последствия для управления мультимедиа. Подробные сведения о новых API-интерфейсах для управления сеансами воспроизведения мультимедиа см. в разделе 
+<a href="{@docRoot}about/versions/android-5.0.html#MediaPlaybackControl">Управление воспроизведением мультимедиа</a>
+.</p>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="CustomNotification">Нестандартные макеты уведомлений</h2>
+<p>
+    Платформа уведомлений позволяет задавать нестандартные макеты уведомлений, которые
+    определяют внешний вид уведомлений в объекте {@link android.widget.RemoteViews}.
+    Уведомления с нестандартным макетом — такие же, как обычные уведомления, но в их основе лежит класс
+    {@link android.widget.RemoteViews}, определенный в файле XML макета.
+</p>
+<p>
+    Высота изображения, которую можно получить с использованием нестандартного макета уведомления, зависит от представления уведомления. Обычные
+    макеты представления ограничены по высоте 64 пикселами, а расширенные — 256 пикселами.
+</p>
+<p>
+    Чтобы определить нестандартный макет уведомления, начните с инициализации объекта
+    {@link android.widget.RemoteViews}, который загружает файл XML макета. Затем,
+    вместо вызова методов, например
+    {@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()},
+    вызовите {@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}. Чтобы задать
+    сведения о содержимом в нестандартном уведомлении, используйте методы из
+    {@link android.widget.RemoteViews}, чтобы определить значения для дочерних представлений:
+</p>
+<ol>
+    <li>
+        Создайте макет XML для уведомления в отдельном файле. Можно использовать любое имя файла
+        по своему усмотрению, однако расширение должно быть <code>.xml</code>
+    </li>
+    <li>
+        В своем приложении с помощью методов {@link android.widget.RemoteViews} определите значки и текст
+        уведомления. Поместите этот объект {@link android.widget.RemoteViews} в свой
+        {@link android.support.v4.app.NotificationCompat.Builder}, вызвав метод
+        {@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}. Не следует
+        задавать фон {@link android.graphics.drawable.Drawable} для объекта
+        {@link android.widget.RemoteViews}, поскольку цвет текста может стать нечитаемым.
+    </li>
+</ol>
+<p>
+    В классе {@link android.widget.RemoteViews} также имеются методы, с помощью которых можно легко
+    добавить {@link android.widget.Chronometer} или {@link android.widget.ProgressBar}
+    в свой макет уведомления. Подробные сведения о создании нестандартных макетов для
+    уведомлений см. в справочной документации по {@link android.widget.RemoteViews}.
+</p>
+<p class="caution">
+    <strong>Внимание!</strong> При использовании нестандартного макета уведомлений следует особое внимание уделять
+    обеспечению совместимости  такого макета с разными вариантами ориентации устройства и разрешения экрана. Этот
+    совет относится ко всем макетам View, но особенно важен он для уведомлений, поскольку
+    размер панели уведомлений весьма ограничен. Не следует делать свои нестандартные макеты слишком
+    сложными и обязательно нужно тестировать их на различных конфигурациях устройств.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h4>Использование ресурсов стиля для текста нестандартного уведомления</h4>
+<p>
+    Для форматирования текста нестандартного уведомления всегда используйте ресурсы стиля. Цвет фона
+    уведомления может меняться на разных устройствах и в разных версиях системы, а использование ресурсов стиля
+    позволяет это учесть. Начиная с версии Android 2.3 система определяет стиль для
+    текста уведомления со стандартным макетом. Если вы используете тот же стиль в приложениях, предназначенных для версии Android
+    2.3 и последующих версий, то вы гарантируете видимость своего текста на фоне экрана.
+</p>
diff --git a/docs/html-intl/intl/ru/guide/topics/ui/overview.jd b/docs/html-intl/intl/ru/guide/topics/ui/overview.jd
new file mode 100644
index 0000000..0e9628b
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/ui/overview.jd
@@ -0,0 +1,71 @@
+page.title=Обзор пользовательского интерфейса
+@jd:body
+
+
+<p>Все элементы интерфейса пользователя в приложении Android создаются с помощью объектов {@link android.view.View} и
+{@link android.view.ViewGroup}. Объект {@link android.view.View} формирует
+на экране элемент, с которым пользователь может взаимодействовать. Объект {@link android.view.ViewGroup} содержит
+другие объекты {@link android.view.View} (и {@link android.view.ViewGroup}) для
+определения макета интерфейса.</p>
+
+<p>Android предоставляет коллекцию подклассов {@link android.view.View} и {@link
+android.view.ViewGroup}, которая включает в себя обычные элементы ввода (такие как кнопки и текстовые
+поля) и различные модели макет (такие как линейный или относительный макет).</p>
+
+
+<h2 id="Layout">Макеты пользовательского интерфейса</h2>
+
+<p>Пользовательский интерфейс для каждого компонента вашего приложения определяется с помощью иерархии объектов {@link
+android.view.View} и {@link android.view.ViewGroup}, как показано на рисунке 1. Каждая группа просмотра
+представляет собой невидимый контейнер, в котором объединены дочерние виды, причем дочерние виды могут представлять собой элементы
+ввода или другие виджеты, которые
+составляют часть пользовательского интерфейса. Эта древовидная иерархия может быть настолько простой или сложной, насколько
+требуется (чем проще, тем лучше для производительности).</p>
+
+<img src="{@docRoot}images/viewgroup.png" alt="" />
+<p class="img-caption"><strong>Рисунок 1</strong>. Иллюстрация иерархии, которая определяет
+макет интерфейса.</p>
+
+<p>Чтобы объявить свой макет, можно создать экземпляры объектов {@link android.view.View} в коде и запустить построение
+дерева, но самый простой и наиболее эффективный способ — определение макета с помощью файла XML.
+XML позволяет создавать удобочитаемую структуру макета, подобно HTML.</p>
+
+<p>Имя элемента XML для вида соответствует классу Android, к которому от относится. Так, элемент
+<code>&lt;TextView&gt;</code> создает виджет {@link android.widget.TextView} в пользовательском интерфейсе,
+а элемент <code>&lt;LinearLayout&gt;</code> создает группу просмотра {@link android.widget.LinearLayout}
+. </p>
+
+<p>Например, простой вертикальный макет с текстом и кнопкой выглядит следующим образом:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="fill_parent" 
+              android:layout_height="fill_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>При загрузке ресурсов макетов в приложение Android инициализирует каждый узел макета в
+объект режима выполнения, который можно использовать для определения дополнительного поведения, запроса состояния объекта или изменения
+макета.</p>
+
+<p>Полное руководство по созданию макета пользовательского интерфейса см. в документе <a href="declaring-layout.html">Макеты
+XML</a>.
+
+  
+<h2 id="UIComponents">Компоненты пользовательского интерфейса</h2>
+
+<p>Не обязательно создавать все элементы пользовательского интерфейса с помощью объектов {@link android.view.View} и {@link
+android.view.ViewGroup}. Android предоставляет несколько компонентов приложений, которые содержат
+стандартный макет пользовательского интерфейса, где остается лишь определить содержимое. Каждый из этих компонентов пользовательского интерфейса
+содержит уникальный набор API, который описан в соответствующих документах, таких как <a href="{@docRoot}guide/topics/ui/actionbar.html">Строка действий</a>, <a href="{@docRoot}guide/topics/ui/dialogs.html">Диалоги</a> и <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Уведомления о состоянии</a>.</p>
+
+
diff --git a/docs/html-intl/intl/ru/guide/topics/ui/settings.jd b/docs/html-intl/intl/ru/guide/topics/ui/settings.jd
new file mode 100644
index 0000000..4325439
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/ui/settings.jd
@@ -0,0 +1,1202 @@
+page.title=Настройки
+page.tags=preference,preferenceactivity,preferencefragment
+
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Содержание документа</h2>
+<ol>
+  <li><a href="#Overview">Обзор</a>
+    <ol>
+      <li><a href="#SettingTypes">Предпочтения</a></li>
+    </ol>
+  </li>
+  <li><a href="#DefiningPrefs">Определение предпочтений в XML</a>
+    <ol>
+      <li><a href="#Groups">Создание групп настроек</a></li>
+      <li><a href="#Intents">Использование намерений</a></li>
+    </ol>
+  </li>
+  <li><a href="#Activity">Создание операции предпочтений</a></li>
+  <li><a href="#Fragment">Использование фрагментов предпочтений</a></li>
+  <li><a href="#Defaults">Значения настроек по умолчанию</a></li>
+  <li><a href="#PreferenceHeaders">Использование заголовков предпочтений</a>
+    <ol>
+      <li><a href="#CreateHeaders">Создание файла заголовков</a></li>
+      <li><a href="#DisplayHeaders">Отображение заголовков</a></li>
+      <li><a href="#BackCompatHeaders">Поддержка старых версий посредством заголовков предпочтений</a></li>
+    </ol>
+  </li>
+  <li><a href="#ReadingPrefs">Чтение предпочтений</a>
+    <ol>
+      <li><a href="#Listening">Отслеживание изменений предпочтений</a></li>
+    </ol>
+  </li>
+  <li><a href="#NetworkUsage">Контроль использования сети</a></li>
+  <li><a href="#Custom">Построение пользовательского предпочтения</a>
+    <ol>
+      <li><a href="#CustomSelected">Указание пользовательского интерфейса</a></li>
+      <li><a href="#CustomSave">Сохранение значения настройки</a></li>
+      <li><a href="#CustomInitialize">Инициализация текущего значения</a></li>
+      <li><a href="#CustomDefault">Предоставление значения по умолчанию</a></li>
+      <li><a href="#CustomSaveState">Сохранение и восстановление состояния предпочтений</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Основные классы</h2>
+<ol>
+  <li>{@link android.preference.Preference}</li>
+  <li>{@link android.preference.PreferenceActivity}</li>
+  <li>{@link android.preference.PreferenceFragment}</li>
+</ol>
+
+
+<h2>См. также:</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/settings.html">Руководство по дизайну настроек</a></li>
+</ol>
+</div>
+</div>
+
+
+
+
+<p>В приложениях часто содержатся настройки, которые позволяют пользователю изменять возможности и поведение приложения. Например,
+некоторые приложения позволяют пользователям включать и выключать уведомления или указывать частоту синхронизации
+данных приложения с облаком.</p>
+
+<p>Если вы хотите предоставить настройки для вашего приложения, вы должны использовать
+API-интерфейсы {@link android.preference.Preference} системы Android для построения интерфейса, согласованного с
+привычным для пользователей других приложений Android (включая системные настройки). В этом документе показано,
+как построить настройки вашего приложения посредством API-интерфейсов {@link android.preference.Preference}.</p>
+
+<div class="note design">
+<p><strong>Дизайн настроек</strong></p>
+  <p>Подробную информацию о дизайне настроек см. в руководстве по дизайну <a href="{@docRoot}design/patterns/settings.html">настроек</a>.</p>
+</div>
+
+
+<img src="{@docRoot}images/ui/settings/settings.png" alt="" width="435" />
+<p class="img-caption"><strong>Рисунок 1.</strong> Снимки экранов настроек приложения Android
+для обмена сообщениями. Выбор элемента, заданного посредством {@link android.preference.Preference}, 
+открывает интерфейс для изменения значения.</p>
+
+
+
+
+<h2 id="Overview">Обзор</h2>
+
+<p>Вместо использования отображаемых объектов {@link android.view.View} для построения пользовательского интерфейса, настройки создаются
+с помощью различных подклассов класса {@link android.preference.Preference}, который вы
+объявляете в XML-файле.</p>
+
+<p>Объект {@link android.preference.Preference} является строительным блоком для отдельной
+настройки. Каждый объект {@link android.preference.Preference} отображается в виде элемента в списке и предоставляет
+соответствующий пользовательский интерфейс для изменения настройки пользователями. Например, {@link
+android.preference.CheckBoxPreference} создает элемент списка, который показывает флажок, а {@link
+android.preference.ListPreference} создает элемент, который открывает диалоговое окно со списком вариантов для выбора.</p>
+
+<p>Каждый добавляемый вами объект {@link android.preference.Preference} имеет соответствующую пару «ключ-значение»,
+которую система использует для сохранения настройки в файле {@link android.content.SharedPreferences}
+значений настроек вашего приложения по умолчанию. Когда пользователь изменяет настройку, система обновляет соответствующее
+значение в файле {@link android.content.SharedPreferences}. Вам потребуется
+напрямую взаимодействовать с файлом, связанным с {@link android.content.SharedPreferences}, только в случае,
+когда нужно прочитать значение для определения поведения вашего приложения на основе пользовательских настроек.</p>
+
+<p>Значение, сохраненное в {@link android.content.SharedPreferences} для каждой настройки, может относиться к одному из
+следующих типов данных:</p>
+
+<ul>
+  <li>Логическое значение</li>
+  <li>Число с плавающей точкой</li>
+  <li>Целое число</li>
+  <li>Длинное целое число</li>
+  <li>Строка</li>
+  <li>Строка {@link java.util.Set}</li>
+</ul>
+
+<p>Поскольку пользовательский интерфейс настроек вашего приложения создается посредством объектов {@link android.preference.Preference},
+а не
+объектов {@link android.view.View}, вам потребуется использовать специализированные подклассы {@link android.app.Activity} или
+{@link android.app.Fragment} для отображения настроек из списка:</p>
+
+<ul>
+  <li>Если ваше приложение поддерживает версии Android старше 3.0 (API уровня 10 и ниже), для построения операции
+необходимо наследовать класс {@link android.preference.PreferenceActivity}.</li>
+  <li>В операционных системах Android 3.0 и более поздних версиях вы должны вместо этого использовать традиционный класс {@link android.app.Activity},
+который содержит объект {@link android.preference.PreferenceFragment} для отображения настроек вашего приложения.
+Однако, когда у вас есть несколько групп настроек, вы можете также
+использовать {@link android.preference.PreferenceActivity} для создания макета с двумя панелями для больших экранов.</li>
+</ul>
+
+<p>Настройка объекта {@link android.preference.PreferenceActivity} и экземпляров {@link
+android.preference.PreferenceFragment} описана в разделах <a href="#Activity">Создание операции предпочтения</a> и <a href="#Fragment">Использование
+фрагментов предпочтений</a>.</p>
+
+
+<h3 id="SettingTypes">Предпочтения</h3>
+
+<p>Каждая настройка для вашего приложения представлена конкретным подклассом класса {@link
+android.preference.Preference}. Каждый подкласс содержит набор основных свойств, которые позволяют вам
+указывать, например, заголовок для настройки и ее значение по умолчанию. Каждый подкласс также содержит
+собственные специализированные свойства и пользовательский интерфейс. В качестве примера на рисунке 1 показан снимок экрана настроек 
+приложения Android для обмена сообщениями. Каждый элемент списка на экране настроек возвращается отдельным объектом {@link
+android.preference.Preference}.</p>
+
+<p>Ниже приведены самые распространенные предпочтения:</p>
+
+<dl>
+  <dt>{@link android.preference.CheckBoxPreference}</dt>
+  <dd>Отображает элемент с флажком для настройки, которая может быть включена или выключена. Сохраненное
+значение является логическим (<code>true</code>, если флажок установлен).</dd>
+
+  <dt>{@link android.preference.ListPreference}</dt>
+  <dd>Открывает диалоговое окно со списком переключателей. Сохраненное значение
+может относиться к одному из поддерживаемых типов значений (перечисленных выше).</dd>
+
+  <dt>{@link android.preference.EditTextPreference}</dt>
+  <dd>Открывает диалоговое окно с виджетом {@link android.widget.EditText}. Сохраненное значение — {@link
+java.lang.String}.</dd>
+</dl>
+
+<p>См. класс {@link android.preference.Preference}, который содержит список всех остальных подклассов и их
+соответствующих свойств.</p>
+
+<p>Конечно, встроенные классы не обеспечивают всех потребностей, и вашему приложению может понадобиться
+что-либо более специализированное. Например, в настоящее время система не предоставляет класс {@link
+android.preference.Preference} для выбора числа или даты. Поэтому вам может потребоваться определить
+свой собственный подкласс {@link android.preference.Preference}. См. раздел <a href="#Custom">Построение пользовательского предпочтения</a>.</p>
+
+
+
+<h2 id="DefiningPrefs">Определение предпочтений в XML</h2>
+
+<p>Хотя вы можете создавать новые экземпляры объектов {@link android.preference.Preference} в режиме выполнения, вы должны
+определить список настроек в файле XML с иерархией
+объектов {@link android.preference.Preference}. Использование файла XML для определения вашей коллекции настроек предпочтительней, поскольку файл
+обладает удобочитаемой структурой, которую легко обновлять. Кроме того, настройки вашего приложения
+обычно определены заранее, хотя у вас сохраняется возможность изменять коллекцию в режиме выполнения.</p>
+
+<p>Каждый подкласс класса {@link android.preference.Preference} может быть объявлен посредством элемента XML,
+который соответствует имени класса, например, {@code &lt;CheckBoxPreference&gt;}.</p>
+
+<p>Вы должны сохранить файл XML в каталоге {@code res/xml/}. Хотя вы можете назвать файл любым
+именем, традиционно его называют {@code preferences.xml}. Обычно вам требуется лишь один файл,
+поскольку ветви иерархии (которые открывают собственный список настроек) объявлены с помощью вложенных
+экземпляров {@link android.preference.PreferenceScreen}.</p>
+
+<p class="note"><strong>Примечание.</strong> Если вы хотите создать макет с несколькими панелями для ваших
+настроек, вам потребуются отдельные файлы XML для каждого фрагмента.</p>
+
+<p>Корневой узел XML-файла должен быть элементом {@link android.preference.PreferenceScreen
+&lt;PreferenceScreen&gt;}. Внутри этого элемента вы добавляете каждый элемент {@link
+android.preference.Preference}. Каждый дочерний элемент, который вы добавляете внутри элемента
+{@link android.preference.PreferenceScreen &lt;PreferenceScreen&gt;}, отображается в виде одного
+пункта в списке настроек.</p>
+
+<p>Например:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;CheckBoxPreference
+        android:key="pref_sync"
+        android:title="@string/pref_sync"
+        android:summary="@string/pref_sync_summ"
+        android:defaultValue="true" />
+    &lt;ListPreference
+        android:dependency="pref_sync"
+        android:key="pref_syncConnectionType"
+        android:title="@string/pref_syncConnectionType"
+        android:dialogTitle="@string/pref_syncConnectionType"
+        android:entries="@array/pref_syncConnectionTypes_entries"
+        android:entryValues="@array/pref_syncConnectionTypes_values"
+        android:defaultValue="@string/pref_syncConnectionTypes_default" />
+&lt;/PreferenceScreen>
+</pre>
+
+<p>В этом примере есть {@link android.preference.CheckBoxPreference} и {@link
+android.preference.ListPreference}. Оба содержат следующие три атрибута:</p>
+
+<dl>
+  <dt>{@code android:key}</dt>
+  <dd>Этот атрибут необходим для предпочтений, которые сохраняют значение данных. Он задает уникальный
+ключ (строку), который использует система при сохранении значения этой настройки в {@link
+android.content.SharedPreferences}. 
+  <p>Этот атрибут <em>не является обязательным</em> только когда предпочтение представляет собой
+{@link android.preference.PreferenceCategory} или {@link android.preference.PreferenceScreen}, либо
+предпочтение указывает намерение {@link android.content.Intent} для вызова (посредством элемента <a href="#Intents">{@code &lt;intent&gt;}</a>) или фрагмент {@link android.app.Fragment} для отображения (с помощью атрибута <a href="{@docRoot}reference/android/preference/Preference.html#attr_android:fragment">{@code
+android:fragment}</a>).</p>
+  </dd>
+  <dt>{@code android:title}</dt>
+  <dd>Этот атрибут предоставляет имя настройки, отображаемое для пользователя.</dd>
+  <dt>{@code android:defaultValue}</dt>
+  <dd>Этот атрибут указывает исходное значение, которое система должна установить в файле {@link
+android.content.SharedPreferences}. Вы должны указать значения по умолчанию для всех
+настроек.</dd>
+</dl>
+
+<p>Для получения информации обо всех других поддерживаемых атрибутов см. документацию {@link
+android.preference.Preference} (и соответствующий подкласс).</p>
+
+
+<div class="figure" style="width:300px">
+  <img src="{@docRoot}images/ui/settings/settings-titles.png" alt="" />
+  <p class="img-caption"><strong>Рисунок 2.</strong> Создание категорий
+ с заголовками. <br/><b>1.</b> Категория задана элементом {@link
+android.preference.PreferenceCategory &lt;PreferenceCategory&gt;}. <br/><b>2.</b> Заголовок
+задан посредством атрибута {@code android:title}.</p>
+</div>
+
+
+<p>Когда список ваших настроек содержит более 10 элементов, вы, вероятно, захотите добавить заголовки для
+определения групп настроек или отобразить эти группы
+на отдельном экране. Эти возможности описаны в следующих разделах.</p>
+
+
+<h3 id="Groups">Создание групп настроек</h3>
+
+<p>Если вы представляете список из 10 или более настроек, пользователям
+может быть трудно их просматривать, воспринимать и обрабатывать. Это можно исправить,
+разделив некоторые или все настройки на группы, что эффективно преобразует один длинный список в несколько
+более коротких списков. Группа связанных настроек может быть представлена одним из двух способов:</p>
+
+<ul>
+  <li><a href="#Titles">Использование заголовков</a></li>
+  <li><a href="#Subscreens">Использование подэкранов</a></li>
+</ul>
+
+<p>Вы можете пользоваться одним или обоими из этих методов группировки для организации настроек в вашем приложении. Принимая
+решение об используемом варианте и о разделении настроек на группы, вы должны следовать инструкциям в разделе 
+<a href="{@docRoot}design/patterns/settings.html">Настройки</a> руководства «Дизайн для Android».</p>
+
+
+<h4 id="Titles">Использование заголовков</h4>
+
+<p>Если вы хотите создать разделители с заголовками между группами настроек (как показано на рисунке 2),
+поместите каждую группу объектов {@link android.preference.Preference} внутри {@link
+android.preference.PreferenceCategory}.</p>
+
+<p>Например:</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;PreferenceCategory 
+        android:title="&#64;string/pref_sms_storage_title"
+        android:key="pref_key_storage_settings">
+        &lt;CheckBoxPreference
+            android:key="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_auto_delete"
+            android:title="&#64;string/pref_title_auto_delete"
+            android:defaultValue="false"... />
+        &lt;Preference 
+            android:key="pref_key_sms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_sms_delete"... />
+        &lt;Preference 
+            android:key="pref_key_mms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_mms_delete" ... />
+    &lt;/PreferenceCategory>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h4 id="Subscreens">Использование подэкранов</h4>
+
+<p>Если вы хотите поместить группу настроек на подэкран (как показано на рисунке 3), поместите каждую группу
+объектов {@link android.preference.Preference} внутри {@link
+android.preference.PreferenceScreen}.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-subscreen.png" alt="" />
+<p class="img-caption"><strong>Рисунок 3.</strong> Создание подэкранов. Элемент {@code
+&lt;PreferenceScreen&gt;}
+создает пункт, при выборе которого открывается отдельный список вложенных настроек.</p>
+
+<p>Например:</p>
+
+<pre>
+&lt;PreferenceScreen  xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;!-- opens a subscreen of settings -->
+    &lt;PreferenceScreen
+        android:key="button_voicemail_category_key"
+        android:title="&#64;string/voicemail"
+        android:persistent="false">
+        &lt;ListPreference
+            android:key="button_voicemail_provider_key"
+            android:title="&#64;string/voicemail_provider" ... />
+        &lt;!-- opens another nested subscreen -->
+        &lt;PreferenceScreen
+            android:key="button_voicemail_setting_key"
+            android:title="&#64;string/voicemail_settings"
+            android:persistent="false">
+            ...
+        &lt;/PreferenceScreen>
+        &lt;RingtonePreference
+            android:key="button_voicemail_ringtone_key"
+            android:title="&#64;string/voicemail_ringtone_title"
+            android:ringtoneType="notification" ... />
+        ...
+    &lt;/PreferenceScreen>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h3 id="Intents">Использование намерений</h3>
+
+<p>В некоторых случаях может потребоваться, чтобы элемент предпочтений открывал другую операцию, а не
+экран настроек, например, веб-браузер для просмотра веб-страницы. Чтобы вызвать {@link
+android.content.Intent}, когда пользователь выбирает элемент предпочтений, добавьте элемент {@code &lt;intent&gt;}
+в качестве дочернего элемента соответствующего элемента {@code &lt;Preference&gt;}.</p>
+
+<p>Например, здесь показано использование элемента предпочтений для открытия веб-страницы:</p>
+
+<pre>
+&lt;Preference android:title="@string/prefs_web_page" >
+    &lt;intent android:action="android.intent.action.VIEW"
+            android:data="http://www.example.com" />
+&lt;/Preference>
+</pre>
+
+<p>Вы можете создавать неявные и явные намерения с помощью следующих атрибутов:</p>
+
+<dl>
+  <dt>{@code android:action}</dt>
+    <dd>Назначаемое действие, как
+в методе {@link android.content.Intent#setAction setAction()}.</dd>
+  <dt>{@code android:data}</dt>
+    <dd>Назначаемые данные, как в методе {@link android.content.Intent#setData setData()}.</dd>
+  <dt>{@code android:mimeType}</dt>
+    <dd>Назначаемый тип MIME, как
+в методе {@link android.content.Intent#setType setType()}.</dd>
+  <dt>{@code android:targetClass}</dt>
+    <dd>Часть имени компонента, означающая класс, как в методе {@link android.content.Intent#setComponent
+setComponent()}.</dd>
+  <dt>{@code android:targetPackage}</dt>
+    <dd>Пакетная часть имени компонента, как в методе {@link
+android.content.Intent#setComponent setComponent()}.</dd>
+</dl>
+
+
+
+<h2 id="Activity">Создание операции предпочтений</h2>
+
+<p>Для отображения ваших настроек в операции наследуйте класс {@link
+android.preference.PreferenceActivity}. Это наследование традиционного класса {@link
+android.app.Activity}, который отображает список настроек на основе иерархии объектов {@link
+android.preference.Preference}. {@link android.preference.PreferenceActivity}
+автоматически сохраняет настройки, связанные с каждым объектом {@link
+android.preference.Preference}, когда пользователь вносит изменения.</p>
+
+<p class="note"><strong>Примечание.</strong> При разработке приложения для версии Android 3.0
+или выше вместо этого следует использовать {@link android.preference.PreferenceFragment}. Прочитайте следующий раздел
+<a href="#Fragment">Использование фрагментов предпочтений</a>.</p>
+
+<p>Запомните самое важное: не загружайте макет отображаемых объектов во время обратного вызова {@link
+android.preference.PreferenceActivity#onCreate onCreate()}. Вместо этого вызовите {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} для
+добавления предпочтений, объявленных в XML-файле для операции. Например, здесь приведен
+ минимальный код, необходимый для работы {@link android.preference.PreferenceActivity}:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        addPreferencesFromResource(R.xml.preferences);
+    }
+}
+</pre>
+
+<p>Этого кода действительно достаточно для некоторых приложений, поскольку как только пользователь изменяет предпочтение,
+система сохраняет изменения в файле {@link android.content.SharedPreferences} по умолчанию, который
+другие компоненты вашего приложения могут читать, когда требуется проверить пользовательские настройки. Однако многим приложениям
+требуется немного больше кода, чтобы отслеживать изменения, происходящие с предпочтениями.
+Информацию об отслеживании изменений в файле {@link android.content.SharedPreferences}
+см. в разделе <a href="#ReadingPrefs">Чтение предпочтений</a>.</p>
+
+
+
+
+<h2 id="Fragment">Использование фрагментов предпочтений</h2>
+
+<p>При разработке приложений для Android 3.0 (API уровня 11) и более поздних версий необходимо использовать {@link
+android.preference.PreferenceFragment} для отображения списка
+объектов {@link android.preference.Preference}. Вы можете добавить {@link android.preference.PreferenceFragment} в любую операцию, при этом 
+необязательно использовать {@link android.preference.PreferenceActivity}.</p>
+
+<p><a href="{@docRoot}guide/components/fragments.html">Фрагменты</a> обеспечивают более
+универсальную архитектуру для вашего приложения по сравнению с использованием отдельных операций, вне зависимости от типа
+создаваемой операции. Фактически, для управления отображением ваших настроек мы предлагаем вам использовать {@link
+android.preference.PreferenceFragment} вместо {@link
+android.preference.PreferenceActivity} при каждой возможности.</p>
+
+<p>Ваша реализация {@link android.preference.PreferenceFragment} может содержать просто
+определение метода {@link android.preference.PreferenceFragment#onCreate onCreate()} для загрузки
+файла предпочтений посредством {@link android.preference.PreferenceFragment#addPreferencesFromResource
+addPreferencesFromResource()}. Например:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Load the preferences from an XML resource
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+}
+</pre>
+
+<p>Затем вы можете добавить этот фрагмент в операцию {@link android.app.Activity}, как вы сделали бы это для любого другого фрагмента
+{@link android.app.Fragment}. Например:</p>
+
+<pre>
+public class SettingsActivity extends Activity {
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Display the fragment as the main content.
+        getFragmentManager().beginTransaction()
+                .replace(android.R.id.content, new SettingsFragment())
+                .commit();
+    }
+}
+</pre>
+
+<p class="note"><strong>Примечание.</strong> Фрагмент {@link android.preference.PreferenceFragment} не содержит
+собственного объекта {@link android.content.Context}. Если вам требуется объект {@link android.content.Context},
+вы можете вызвать{@link android.app.Fragment#getActivity()}. Однако разработчик должен быть внимательным и вызывать метод
+{@link android.app.Fragment#getActivity()} только в том случае, когда фрагмент прикреплен к операции. Если
+фрагмент еще не прикреплен или был откреплен в конце его жизненного цикла, метод {@link
+android.app.Fragment#getActivity()} вернет null.</p>
+
+
+<h2 id="Defaults">Установка значений по умолчанию</h2>
+
+<p>Вероятно, создаваемые вами предпочтения определяют важное поведение вашего приложения, поэтому
+необходимо инициализировать соответствующий файл {@link android.content.SharedPreferences},
+записав в него значения по умолчанию для каждого предпочтения {@link android.preference.Preference} при первом запуске вашего
+приложения пользователем.</p>
+
+<p>В первую очередь необходимо указать значение по умолчанию для каждого объекта {@link
+android.preference.Preference}
+в вашем XML-файле посредством атрибута {@code android:defaultValue}. Значение может относиться к любому
+типу данных, подходящему для соответствующего объекта {@link android.preference.Preference}. Например:
+</p>
+
+<pre>
+&lt;!-- default value is a boolean -->
+&lt;CheckBoxPreference
+    android:defaultValue="true"
+    ... />
+
+&lt;!-- default value is a string -->
+&lt;ListPreference
+    android:defaultValue="@string/pref_syncConnectionTypes_default"
+    ... />
+</pre>
+
+<p>Затем из метода {@link android.app.Activity#onCreate onCreate()} основной операции вашего приложения
+(и из любой другой операции, через которую пользователь может войти в ваше приложение
+в первый раз) вызовите {@link android.preference.PreferenceManager#setDefaultValues
+setDefaultValues()}:</p>
+
+<pre>
+PreferenceManager.setDefaultValues(this, R.xml.advanced_preferences, false);
+</pre>
+
+<p>Вызов этого метода при выполнении {@link android.app.Activity#onCreate onCreate()} гарантирует, что ваше
+приложение правильно инициализируется и получит настройки по умолчанию, которые могут потребоваться вашему приложению
+для определенного поведения (например, следует ли загружать данные при работе
+в сотовой сети).</p>
+
+<p>Этот метод имеет три аргумента:</p>
+<ul>
+  <li>{@link android.content.Context} вашего приложения.</li>
+  <li>Идентификатор ресурса для XML-файла предпочтений, для которого вы хотите установить значения по умолчанию.</li>
+  <li>Логическое значение, которое указывает, требуется ли значения по умолчанию устанавливать более одного раза.
+<p>При значении <code>false</code> система устанавливает значения по умолчанию только в том случае, если этот метод никогда не вызывался ранее
+(или атрибут {@link android.preference.PreferenceManager#KEY_HAS_SET_DEFAULT_VALUES}
+в файле общих предпочтений по умолчанию имеет значение false).</p></li>
+</ul>
+
+<p>Когда для третьего аргумента установлено значение <code>false</code>, вы можете вызывать этот метод
+при каждом запуске операции, не опасаясь перезаписи сохраненных пользовательских предпочтений из-за их сброса в состояние
+по умолчанию. Однако, если установить для этого аргумента значение <code>true</code>, вы будете перезаписывать все предыдущие
+значения значениями по умолчанию.</p>
+
+
+
+<h2 id="PreferenceHeaders">Использование заголовков предпочтений</h2>
+
+<p>В редких случаях может потребоваться такая структура настроек, при которой на первом экране отображается только
+список <a href="#Subscreens">подэкранов</a> (например, как в приложении системных настроек,
+показанных на рисунках 4 и 5). При разработке такого дизайна для Android 3.0 и более поздних версий вы должны
+использовать новую возможность Android 3.0 — «заголовки», вместо создания подэкранов посредством вложенных
+элементов {@link android.preference.PreferenceScreen}.</p>
+
+<p>Чтобы создать настройки с заголовками, выполните следующие действия:</p>
+<ol>
+  <li>Выделите каждую группу настроек в отдельный экземпляр {@link
+android.preference.PreferenceFragment}. Таким образом, каждая группа настроек должна иметь отдельный
+XML-файл.</li>
+  <li>Создайте XML-файл заголовков, в котором перечислены все группы настроек и объявления, какой фрагмент
+содержит соответствующий список настроек.</li>
+  <li>Наследуйте класс {@link android.preference.PreferenceActivity}, который будет содержать ваши настройки.</li>
+  <li>Реализуйте обратный вызов {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()}, чтобы указать
+файл заголовков.</li>
+</ol>
+
+<p>Огромное преимущество использования этого дизайна состоит в том, что при запуске на больших экранах {@link android.preference.PreferenceActivity}
+автоматически создает макет с двумя панелями, показанный на рисунке 4.</p>
+
+<p>Даже если ваше приложение поддерживает версии Android старше 3.0, вы можете создать
+приложение, использующее {@link android.preference.PreferenceFragment} для двухпанельного представления на
+новых устройствах и поддерживающее традиционную многоэкранную иерархию на более старых
+устройствах (см. раздел <a href="#BackCompatHeaders">Поддержка старых версий посредством
+заголовков предпочтений</a>).</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-tablet.png" alt="" />
+<p class="img-caption"><strong>Рисунок 4.</strong> Двухпанельный макет с заголовками. <br/><b>1.</b> Заголовки
+определяются посредством XML-файла заголовков. <br/><b>2.</b> Каждая группа настроек определяется с помощью фрагмента
+{@link android.preference.PreferenceFragment}, который указывается элементом {@code &lt;header&gt;}
+в файле заголовков.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-handset.png" alt="" />
+<p class="img-caption"><strong>Рисунок 5.</strong> Смартфон с заголовками настроек. При выборе
+пункта вместо заголовков отображается соответствующий
+фрагмент {@link android.preference.PreferenceFragment}.</p>
+
+
+<h3 id="CreateHeaders" style="clear:left">Создание файла заголовков</h3>
+
+<p>Каждая группа настроек в вашем списке заголовков указывается отдельным элементом {@code &lt;header&gt;}
+внутри корневого элемента {@code &lt;preference-headers&gt;}. Например:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;!-- key/value pairs can be included as arguments for the fragment. -->
+        &lt;extra android:name="someKey" android:value="someHeaderValue" />
+    &lt;/header>
+&lt;/preference-headers>
+</pre>
+
+<p>Посредством атрибута {@code android:fragment} каждый заголовок объявляет экземпляр фрагмента {@link
+android.preference.PreferenceFragment}, который должен открываться при выборе этого заголовка пользователем.</p>
+
+<p>Элемент {@code &lt;extras&gt;} позволяет передавать пары «ключ-значение» фрагменту в объекте {@link
+android.os.Bundle}. Фрагмент может извлекать аргументы путем вызова метода {@link
+android.app.Fragment#getArguments()}. Вы можете передавать аргументы фрагменту по различным причинам,
+но хорошим поводом является повторное использование одного и того же подкласса {@link
+android.preference.PreferenceFragment} для каждой группы и использование аргументов для указания
+XML-файла предпочтений, который должен быть загружен фрагментом.</p>
+
+<p>Например, здесь приведен фрагмент, который можно использовать повторно для нескольких групп настроек, когда каждый
+заголовок определяет аргумент {@code &lt;extra&gt;} с ключом {@code "settings"}:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        String settings = getArguments().getString("settings");
+        if ("notifications".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_wifi);
+        } else if ("sync".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_sync);
+        }
+    }
+}
+</pre>
+
+
+
+<h3 id="DisplayHeaders">Отображение заголовков</h3>
+
+<p>Чтобы отобразить заголовки предпочтений, вы должны реализовать метод обратного вызова {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} и вызвать 
+{@link android.preference.PreferenceActivity#loadHeadersFromResource
+loadHeadersFromResource()}. Например:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onBuildHeaders(List&lt;Header> target) {
+        loadHeadersFromResource(R.xml.preference_headers, target);
+    }
+}
+</pre>
+
+<p>Когда пользователь выбирает пункт в списке заголовков, система открывает связанный {@link
+android.preference.PreferenceFragment}.</p>
+
+<p class="note"><strong>Примечание.</strong> При использовании заголовков предпочтений ваш подкласс {@link
+android.preference.PreferenceActivity} не должен реализовывать метод {@link
+android.preference.PreferenceActivity#onCreate onCreate()}, поскольку единственной обязательной задачей
+операции является загрузка заголовков.</p>
+
+
+<h3 id="BackCompatHeaders">Поддержка старых версий с заголовками предпочтений</h3>
+
+<p>Если ваше приложение поддерживает версии Android старше 3.0, вы можете использовать заголовки для
+предоставления двухпанельного макета при работе на Android 3.0 или более поздней версии. Достаточно создать
+дополнительный XML-файл настроек, использующий базовые элементы {@link android.preference.Preference
+&lt;Preference&gt;}, которые ведут себя аналогично пунктам заголовка (для использования в более старых версиях
+Android).</p>
+
+<p>Вместо открытия новых экранов {@link android.preference.PreferenceScreen} каждый из элементов {@link
+android.preference.Preference &lt;Preference&gt;} отправляет намерение {@link android.content.Intent} в
+{@link android.preference.PreferenceActivity} с указанием XML-файла предпочтений
+для загрузки.</p>
+
+<p>В качестве примера приведен XML-файл для заголовков предпочтений, который используется в Android версии 3.0
+и более поздних версий ({@code res/xml/preference_headers.xml}):</p> 
+
+<pre>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" />
+&lt;/preference-headers>
+</pre>
+
+<p>А здесь представлен файл предпочтений, который содержит те же самые заголовки для версий старше 
+Android 3.0 ({@code res/xml/preference_headers_legacy.xml}):</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;Preference 
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one"  >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_ONE" />
+    &lt;/Preference>
+    &lt;Preference 
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_TWO" />
+    &lt;/Preference>
+&lt;/PreferenceScreen>
+</pre>
+
+<p>Так как поддержка {@code &lt;preference-headers&gt;} была добавлена в версии Android 3.0, система вызывает
+{@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} в методе {@link
+android.preference.PreferenceActivity} только при работе в Android версии 3.0 или более поздней версии. Чтобы загрузить
+«старый» файл заголовков ({@code preference_headers_legacy.xml}), вы должны проверить версию Android
+и, если версия старше Android 3.0 ({@link
+android.os.Build.VERSION_CODES#HONEYCOMB}), вызвать {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} для
+загрузки старого файла заголовков. Например:</p>
+
+<pre>
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    ...
+
+    if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+
+// Called only on Honeycomb and later
+&#64;Override
+public void onBuildHeaders(List&lt;Header> target) {
+   loadHeadersFromResource(R.xml.preference_headers, target);
+}
+</pre>
+
+<p>Остается обработать намерение {@link android.content.Intent}, переданное
+в операцию, чтобы идентифицировать файл предпочтений для загрузки. Поэтому извлеките операцию намерения и сравните ее
+с известными строками действия, которые вы использовали в тегах {@code &lt;intent&gt;} XML-файла предпочтений:</p>
+
+<pre>
+final static String ACTION_PREFS_ONE = "com.example.prefs.PREFS_ONE";
+...
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+
+    String action = getIntent().getAction();
+    if (action != null &amp;&amp; action.equals(ACTION_PREFS_ONE)) {
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+
+    else if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+</pre>
+
+<p>При этом помните, что последующие вызовы {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} будут помещать
+все предпочтения в один список, поэтому обязательно используйте операторы else-if, чтобы обеспечить только
+однократный вызов метода при изменении условий.</p>
+
+
+
+
+
+<h2 id="ReadingPrefs">Чтение предпочтений</h2>
+
+<p>По умолчанию все предпочтения вашего приложения сохраняются в файле, который доступен из любого места
+вашего приложения посредством вызова статического метода {@link
+android.preference.PreferenceManager#getDefaultSharedPreferences
+PreferenceManager.getDefaultSharedPreferences()}. Он возвращает объект {@link
+android.content.SharedPreferences}, содержащий все пары «ключ-значение», связанные
+с объектами {@link android.preference.Preference}, использованными в вашей операции {@link
+android.preference.PreferenceActivity}.</p>
+
+<p>В качестве примера показано чтение одного из значений предпочтений из любой другой операции в вашем
+приложении:</p>
+
+<pre>
+SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
+String syncConnPref = sharedPref.getString(SettingsActivity.KEY_PREF_SYNC_CONN, "");
+</pre>
+
+
+
+<h3 id="Listening">Отслеживание изменений предпочтений</h3>
+
+<p>Существует несколько причин, по которым вы можете захотеть получать уведомления, как только пользователь изменяет одно из
+предпочтений. Чтобы получать обратный вызов при изменении любого из предпочтений,
+реализуйте интерфейс {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener
+SharedPreference.OnSharedPreferenceChangeListener} и зарегистрируйте приемник для объекта
+{@link android.content.SharedPreferences} посредством вызова {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}.</p>
+
+<p>Этот интерфейс содержит только один метод обратного вызова, {@link
+android.content.SharedPreferences.OnSharedPreferenceChangeListener#onSharedPreferenceChanged
+onSharedPreferenceChanged()}, и вы, вероятно, сочтете его самым простым способом реализации интерфейса в составе своей
+операции. Например:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity
+                              implements OnSharedPreferenceChangeListener {
+    public static final String KEY_PREF_SYNC_CONN = "pref_syncConnectionType";
+    ...
+
+    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
+        String key) {
+        if (key.equals(KEY_PREF_SYNC_CONN)) {
+            Preference connectionPref = findPreference(key);
+            // Set summary to be the user-description for the selected value
+            connectionPref.setSummary(sharedPreferences.getString(key, ""));
+        }
+    }
+}
+</pre>
+
+<p>В этом примере метод проверяет, выполнено ли изменение настройки для известного ключа предпочтений. Он
+вызывает {@link android.preference.PreferenceActivity#findPreference findPreference()} для получения объекта
+{@link android.preference.Preference}, который был изменен, поэтому он может изменить сводку пункта
+, описывающего выбор пользователя. То есть, когда настройка представляет собой {@link
+android.preference.ListPreference} или другую настройку с несколькими вариантами выбора, при изменении этой настройки вы должны вызвать {@link
+android.preference.Preference#setSummary setSummary()} для отображения
+текущего состояния (например, настройка спящего режима, показанная на рисунке 5).</p>
+
+<p class="note"><strong>Примечание.</strong> В соответствии с рекомендациями раздела <a href="{@docRoot}design/patterns/settings.html">Настройки</a> руководства «Дизайн для Android», мы рекомендуем вам обновлять
+сводку для {@link android.preference.ListPreference} при каждом изменении предпочтения пользователем,
+чтобы описать текущую настройку.</p>
+
+<p>Для правильного управления жизненным циклом в операции мы рекомендуем вам регистрировать или отменять регистрацию
+вашего приемника {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener} во время выполнения обратных вызовов {@link
+android.app.Activity#onResume} и {@link android.app.Activity#onPause} соответственно:</p>
+
+<pre>
+&#64;Override
+protected void onResume() {
+    super.onResume();
+    getPreferenceScreen().getSharedPreferences()
+            .registerOnSharedPreferenceChangeListener(this);
+}
+
+&#64;Override
+protected void onPause() {
+    super.onPause();
+    getPreferenceScreen().getSharedPreferences()
+            .unregisterOnSharedPreferenceChangeListener(this);
+}
+</pre>
+
+<p class="caution"><strong>Внимание!</strong> Когда вы вызываете приемник {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}, диспетчер предпочтений не
+сохраняет строгую ссылку на приемник. Вы должны сохранить строгую
+ссылку на приемник, в противном случае она будет чувствительной к очистке памяти. Мы
+рекомендуем хранить ссылку на приемник в данных экземпляра объекта
+, который будет существовать, пока вам нужен приемник.</p>
+
+<p>Например, в следующем коде вызывающий объект не сохраняет
+ссылку на приемник. В результате этого приемник будет удален при очистке памяти
+и через некоторое время приведет к сбою:</p>
+
+<pre>
+prefs.registerOnSharedPreferenceChangeListener(
+  // Bad! The listener is subject to garbage collection!
+  new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+});
+</pre>
+
+<p>Вместо этого сохраните ссылку на приемник в поле данных экземпляра объекта
+, который будет существовать, пока нужен приемник:</p>
+
+<pre>
+SharedPreferences.OnSharedPreferenceChangeListener listener =
+    new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+};
+prefs.registerOnSharedPreferenceChangeListener(listener);
+</pre>
+
+<h2 id="NetworkUsage">Контроль использования сети</h2>
+
+
+<p>Начиная с версии Android 4.0, системное приложение «Настройки» позволяет пользователям просматривать использование
+сетевых данных приложениями, работающими на переднем плане и в фоновом режиме. После этого пользователи могут
+отключить использование данных в фоновом режиме для отдельных приложений. Для того, чтобы пользователи не отключали доступ вашего приложения к данным
+в фоновом режиме, вы должны эффективно использовать подключение в режиме передачи данных и предоставить
+пользователям возможность настройки использования данных вашим приложением посредством настроек приложения.<p>
+
+<p>Например, вы можете позволить пользователям управлять частотой синхронизации данных приложения, выполнением загрузки
+только в режиме подключения по Wi-Fi, использованием данных в роуминге и т. д. Когда
+эти возможности управления доступны, пользователи с меньшей вероятностью отключат доступ вашего приложения к данным,
+когда оно достигает установленных в системных настройках лимитов, поскольку вместо отключения они могут
+точно контролировать объем данных, который использует ваше приложение.</p>
+
+<p>После добавления необходимых предпочтений в вашу операцию {@link android.preference.PreferenceActivity}
+для управления поведением вашего приложения в отношении данных вы должны добавить фильтр намерений для {@link
+android.content.Intent#ACTION_MANAGE_NETWORK_USAGE} в вашем файле манифеста. Например:</p>
+
+<pre>
+&lt;activity android:name="SettingsActivity" ... >
+    &lt;intent-filter>
+       &lt;action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
+       &lt;category android:name="android.intent.category.DEFAULT" />
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>Этот фильтр манифеста указывает системе, что эта операция управляет использованием
+данных вашим приложением. Так, когда пользователь проверяет объем использованных приложением данных в системном приложении
+«Настройки», отображается кнопка <em>Просмотреть настройки приложения</em>, которая запускает вашу операцию
+{@link android.preference.PreferenceActivity}, чтобы пользователь мог уточнить, сколько данных использует
+ваше приложение.</p>
+
+
+
+
+
+
+
+<h2 id="Custom">Построение пользовательского предпочтения</h2>
+
+<p>Система Android содержит множество подклассов {@link android.preference.Preference}, которые
+позволяют вам строить пользовательский интерфейс для нескольких различных типов настроек.
+Тем не менее, вы можете обнаружить, что для нужной вам настройки нет встроенного решения, например, для выбора
+числа или даты. В таком случае вам потребуется создать нестандартное предпочтение путем наследования
+класса {@link android.preference.Preference} или одного из других подклассов.</p>
+
+<p>При наследовании класса {@link android.preference.Preference} нужно выполнить несколько
+важных пунктов:</p>
+
+<ul>
+  <li>Укажите пользовательский интерфейс, который должен отображаться при выборе этой настройки пользователем.</li>
+  <li>При необходимости сохраните значение настройки.</li>
+  <li>Инициализируйте {@link android.preference.Preference} текущим значением (или значением по умолчанию),
+когда предпочтение отображается.</li>
+  <li>Укажите значение по умолчанию в ответ на запрос системы.</li>
+  <li>Если {@link android.preference.Preference} содержит свой собственный пользовательский интерфейс (например, диалоговое окно), сохраните
+и восстановите состояние для обработки изменений жизненного цикла (например, когда пользователь поворачивает экран).</li>
+</ul>
+
+<p>В следующих разделах описано выполнение каждой из этих задач.</p>
+
+
+
+<h3 id="CustomSelected">Указание пользовательского интерфейса</h3>
+
+  <p>Если вы наследуете класс {@link android.preference.Preference} непосредственно, вы должны реализовать метод
+{@link android.preference.Preference#onClick()}, чтобы задать действие, происходящее при выборе
+пункта пользователем. Однако большая часть нестандартных настроек наследует {@link android.preference.DialogPreference}, чтобы
+отобразить диалоговое окно, что упрощает процедуру. Когда вы наследуете {@link
+android.preference.DialogPreference}, вы должны вызвать {@link
+android.preference.DialogPreference#setDialogLayoutResource setDialogLayoutResourcs()}, находясь в конструкторе
+класса, чтобы указать макет диалогового окна.</p>
+
+  <p>В качестве примера показан конструктор нестандартного диалогового окна {@link
+android.preference.DialogPreference}, в котором объявляется макет и указывается текст для
+положительной и отрицательной кнопок диалога по умолчанию:</p>
+
+<pre>
+public class NumberPickerPreference extends DialogPreference {
+    public NumberPickerPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        
+        setDialogLayoutResource(R.layout.numberpicker_dialog);
+        setPositiveButtonText(android.R.string.ok);
+        setNegativeButtonText(android.R.string.cancel);
+        
+        setDialogIcon(null);
+    }
+    ...
+}
+</pre>
+
+
+
+<h3 id="CustomSave">Сохранение значения настройки</h3>
+
+<p>Вы можете сохранить значение настройки в любой момент, вызвав один из методов {@code persist*()} класса {@link
+android.preference.Preference}, например, {@link
+android.preference.Preference#persistInt persistInt()}, если настройка имеет целое значение, или 
+{@link android.preference.Preference#persistBoolean persistBoolean()} для сохранения логического значения.</p>
+
+<p class="note"><strong>Примечание.</strong> Каждое предпочтение {@link android.preference.Preference} может сохранять только один
+тип данных, поэтому вы должны использовать метод {@code persist*()}, соответствующий типу данных, используемых вашим
+пользовательским предпочтением {@link android.preference.Preference}.</p>
+
+<p>Выбор метода сохранения настройки может зависеть от наследованного класса {@link
+android.preference.Preference}. Если вы наследуете {@link
+android.preference.DialogPreference}, вы должны сохранять значение только при закрытии диалога
+с положительным результатом (пользователь нажал кнопку «OK»).</p>
+
+<p>Когда {@link android.preference.DialogPreference} закрывается, система вызывает метод {@link
+android.preference.DialogPreference#onDialogClosed onDialogClosed()}. Этот метод содержит
+логический аргумент, который указывает, является ли результат пользователя «положительным» — если аргумент имеет значение
+<code>true</code>, значит пользователь выбрал положительную кнопку и вы должны сохранить новое значение. Например:
+</p>
+
+<pre>
+&#64;Override
+protected void onDialogClosed(boolean positiveResult) {
+    // When the user selects "OK", persist the new value
+    if (positiveResult) {
+        persistInt(mNewValue);
+    }
+}
+</pre>
+
+<p>В этом примере <code>mNewValue</code> — это член класса, который содержит текущее значение
+настройки. При вызове {@link android.preference.Preference#persistInt persistInt()} значение сохраняется
+в файл {@link android.content.SharedPreferences} (с автоматическим использованием ключа,
+указанного в XML-файле для этого предпочтения {@link android.preference.Preference}).</p>
+
+
+<h3 id="CustomInitialize">Инициализация текущего значения</h3>
+
+<p>Когда система добавляет ваше предпочтение {@link android.preference.Preference} на экран, она
+вызывает метод {@link android.preference.Preference#onSetInitialValue onSetInitialValue()}, чтобы уведомить вас,
+имеет ли настройка сохраненное значение. Если сохраненного значения нет, этот вызов предоставляет вам
+значение по умолчанию.</p>
+
+<p>Метод {@link android.preference.Preference#onSetInitialValue onSetInitialValue()} передает
+логическое значение, <code>restorePersistedValue</code>, чтобы показать, было ли уже сохранено значение
+для настройки. Если значение равно <code>true</code>, вы должны извлечь сохраненное значение, вызвав
+один из методов {@code getPersisted*()} класса {@link
+android.preference.Preference}, например, {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} для целого значения. Обычно
+требуется извлечь сохраненное значение, чтобы можно было правильно обновить пользовательский интерфейс для отражения
+ранее сохраненного значения.</p>
+
+<p>Если <code>restorePersistedValue</code> имеет значение <code>false</code>, вы
+должны использовать значение по умолчанию, которое передается во втором аргументе.</p>
+
+<pre>
+&#64;Override
+protected void onSetInitialValue(boolean restorePersistedValue, Object defaultValue) {
+    if (restorePersistedValue) {
+        // Restore existing state
+        mCurrentValue = this.getPersistedInt(DEFAULT_VALUE);
+    } else {
+        // Set default state from the XML attribute
+        mCurrentValue = (Integer) defaultValue;
+        persistInt(mCurrentValue);
+    }
+}
+</pre>
+
+<p>Каждый метод {@code getPersisted*()} содержит аргумент, который указывает
+значение по умолчанию на случай, когда действительно нет сохраненного значения, или не существует ключ. В
+приведенном выше примере локальная константа служит для указания значения по умолчанию на случай, если {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} не может вернуть сохраненное значение.</p>
+
+<p class="caution"><strong>Внимание!</strong> Вы <strong>не можете</strong> использовать
+<code>defaultValue</code> в качестве значения по умолчанию в методе {@code getPersisted*()}, так как
+его значение всегда равно null, когда <code>restorePersistedValue</code> имеет значение <code>true</code>.</p>
+
+
+<h3 id="CustomDefault">Предоставление значения по умолчанию</h3>
+
+<p>Если экземпляр вашего класса {@link android.preference.Preference} указывает значение по умолчанию 
+(с помощью атрибута {@code android:defaultValue}),
+система вызывает {@link android.preference.Preference#onGetDefaultValue
+onGetDefaultValue()}, когда она создает экземпляр объекта для извлечения значения. Вы должны реализовать
+этот метод, чтобы сохранить значение по умолчанию для системы в {@link
+android.content.SharedPreferences}. Например:</p>
+
+<pre>
+&#64;Override
+protected Object onGetDefaultValue(TypedArray a, int index) {
+    return a.getInteger(index, DEFAULT_VALUE);
+}
+</pre>
+
+<p>Аргументы метода предоставляют все необходимое: массив атрибутов и указатель
+положения {@code android:defaultValue}, который вы должны извлечь. Причина, по которой вы должны
+реализовать этот метод, чтобы извлечь значение по умолчанию из атрибута, состоит в том, что вы должны указать
+локальное значение по умолчанию для атрибута в случае, когда значение не определено.</p>
+
+
+
+<h3 id="CustomSaveState">Сохранение и восстановление состояния предпочтений</h3>
+
+<p>Как и {@link android.view.View} в макете, ваш подкласс {@link android.preference.Preference}
+отвечает за сохранение и восстановление своего состояния в случае перезапуска операции или фрагмента
+(например, когда пользователь поворачивает экран). Чтобы правильно сохранять и восстанавливать
+состояние вашего класса {@link android.preference.Preference}, вы должны реализовать
+методы обратного вызова жизненного цикла {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} и {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()}.</p>
+
+<p>Состояние вашего {@link android.preference.Preference} определяется объектом, который реализует
+интерфейс {@link android.os.Parcelable}. Система Android предоставляет вам такой объект
+в качестве начальной точки для определения вашего объекта состояния: класс {@link
+android.preference.Preference.BaseSavedState}.</p>
+
+<p>Чтобы определить, как ваш класс {@link android.preference.Preference} сохраняет свое состояние, вы должны
+наследовать класс {@link android.preference.Preference.BaseSavedState}. Вы должны переопределить лишь
+ несколько методов и определить объект
+{@link android.preference.Preference.BaseSavedState#CREATOR}.</p>
+
+<p>Для большинства приложений вы можете скопировать следующую реализацию и просто изменить строки, которые
+обрабатывают {@code value}, если ваш подкласс {@link android.preference.Preference} сохраняет типы
+данных, отличные от целых.</p>
+
+<pre>
+private static class SavedState extends BaseSavedState {
+    // Member that holds the setting's value
+    // Change this data type to match the type saved by your Preference
+    int value;
+
+    public SavedState(Parcelable superState) {
+        super(superState);
+    }
+
+    public SavedState(Parcel source) {
+        super(source);
+        // Get the current preference's value
+        value = source.readInt();  // Change this to read the appropriate data type
+    }
+
+    &#64;Override
+    public void writeToParcel(Parcel dest, int flags) {
+        super.writeToParcel(dest, flags);
+        // Write the preference's value
+        dest.writeInt(value);  // Change this to write the appropriate data type
+    }
+
+    // Standard creator object using an instance of this class
+    public static final Parcelable.Creator&lt;SavedState> CREATOR =
+            new Parcelable.Creator&lt;SavedState>() {
+
+        public SavedState createFromParcel(Parcel in) {
+            return new SavedState(in);
+        }
+
+        public SavedState[] newArray(int size) {
+            return new SavedState[size];
+        }
+    };
+}
+</pre>
+
+<p>После добавления показанной выше реализации {@link android.preference.Preference.BaseSavedState}
+в ваше приложение (обычно в качестве подкласса вашего подкласса {@link android.preference.Preference}), вам
+потребуется реализовать методы {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} и {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()} для вашего
+подкласса {@link android.preference.Preference}.</p>
+
+<p>Например:</p>
+
+<pre>
+&#64;Override
+protected Parcelable onSaveInstanceState() {
+    final Parcelable superState = super.onSaveInstanceState();
+    // Check whether this Preference is persistent (continually saved)
+    if (isPersistent()) {
+        // No need to save instance state since it's persistent,
+        // use superclass state
+        return superState;
+    }
+
+    // Create instance of custom BaseSavedState
+    final SavedState myState = new SavedState(superState);
+    // Set the state's value with the class member that holds current
+    // setting value
+    myState.value = mNewValue;
+    return myState;
+}
+
+&#64;Override
+protected void onRestoreInstanceState(Parcelable state) {
+    // Check whether we saved the state in onSaveInstanceState
+    if (state == null || !state.getClass().equals(SavedState.class)) {
+        // Didn't save the state, so call superclass
+        super.onRestoreInstanceState(state);
+        return;
+    }
+
+    // Cast state to custom BaseSavedState and pass to superclass
+    SavedState myState = (SavedState) state;
+    super.onRestoreInstanceState(myState.getSuperState());
+    
+    // Set this Preference's widget to reflect the restored state
+    mNumberPicker.setValue(myState.value);
+}
+</pre>
+
diff --git a/docs/html-intl/intl/ru/guide/topics/ui/ui-events.jd b/docs/html-intl/intl/ru/guide/topics/ui/ui-events.jd
new file mode 100644
index 0000000..cd2b481
--- /dev/null
+++ b/docs/html-intl/intl/ru/guide/topics/ui/ui-events.jd
@@ -0,0 +1,291 @@
+page.title=События ввода
+parent.title=Пользовательский интерфейс
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Содержание документа</h2>
+  <ol>
+    <li><a href="#EventListeners">Приемники событий</a></li>
+    <li><a href="#EventHandlers">Обработчики событий</a></li>
+    <li><a href="#TouchMode">Режим касания</a></li>
+    <li><a href="#HandlingFocus">Фокус обработки</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>В системе Android предусмотрено несколько способов перехвата событий взаимодействия пользователя с вашим приложением.
+Что касается событий в пользовательском интерфейсе, подход состоит в том, чтобы захватывать события из
+определенного представления объекта, с которым взаимодействует пользователь. Класс отображаемых объектов (View) содержит средства, позволяющие делать это.</p>
+
+<p>В различных классах View, которые вы будете использовать для создания макета, вы заметите несколько общедоступных методов обратного вызова,
+полезных для работы с событиями пользовательского интерфейса. Эти методы вызываются платформой Android, когда
+с этим объектом выполняется соответствующее действие. Например, когда пользователь касается отображаемого объекта (кнопки),
+вызывается метод <code>onTouchEvent()</code> этого объекта. Однако для перехвата этого события вы должны
+наследовать класс и переопределить метод. Однако наследование каждого отображаемого объекта
+для обработки такого события было бы неудобно. Именно поэтому класс View также содержит
+набор вложенных интерфейсов с обратными вызовами, которые можно задать значительно проще. Эти интерфейсы,
+которые называются <a href="#EventListeners">приемниками событий</a>, и служат перехватчиками действий пользователя с вашим пользовательским интерфейсом.</p>
+
+<p>Несмотря на то, что вы будете чаще использовать приемники событий для перехвата действий пользователя, может
+наступить момент, когда вам не захочется наследовать класс View, чтобы создать нестандартный компонент. 
+Возможно, вы захотите наследовать класс {@link android.widget.Button},
+чтобы сделать нечто более необычное. В этом случае вы сможете определить поведение события по умолчанию для своего
+класса с помощью <a href="#EventHandlers">обработчиков событий</a> класса.</p>
+
+
+<h2 id="EventListeners">Приемники событий</h2>
+
+<p>Приемник событий — это интерфейс в классе {@link android.view.View}, который содержит один
+метод обратного вызова. Эти методы будут вызываться платформой Android, когда в результате взаимодействия пользователя с объектом
+пользовательского интерфейса срабатывает отображаемый объект View, в котором зарегистрирован приемник.</p>
+
+<p>Интерфейсы, включенные в приемник события, представляют собой следующие методы обратного вызова:</p>
+
+<dl>
+  <dt><code>onClick()</code></dt>
+    <dd>Из объекта {@link android.view.View.OnClickListener}. 
+ Этот метод вызывается, когда пользователь касается элемента
+ (в режиме касания), или переводит фокус на элемент с помощью клавиш перемещения или трекбола и
+нажимает соответствующую клавишу «ввода» или нажимает на трекбол.</dd>
+  <dt><code>onLongClick()</code></dt>
+    <dd>Из объекта {@link android.view.View.OnLongClickListener}. 
+ Этот метод вызывается, когда пользователь касается элемента и удерживает его (в режиме касания),
+или переводит фокус на элемент с помощью клавиш перемещения или трекбола и
+нажимает и удерживает соответствующую клавишу «ввода» или трекбол (в течение одной секунды).</dd>
+  <dt><code>onFocusChange()</code></dt>
+    <dd>Из объекта {@link android.view.View.OnFocusChangeListener}. 
+ Этот метод вызывается, когда пользователь перемещается в элемент или из него с помощью клавиш перемещения или трекбола.</dd>
+  <dt><code>onKey()</code></dt>
+    <dd>Из объекта {@link android.view.View.OnKeyListener}. 
+ Этот метод вызывается, когда пользователь переносит фокус на элемент и нажимает или отпускает аппаратную клавишу на устройстве.</dd>
+  <dt><code>onTouch()</code></dt>
+    <dd>Из объекта {@link android.view.View.OnTouchListener}. 
+ Этот метод вызывается, когда пользователь выполняет действие, считающееся событием касания, например, нажимает, отпускает
+или выполняет любой жест на экране (в пределах границ элемента).</dd>
+  <dt><code>onCreateContextMenu()</code></dt>
+    <dd>Из объекта {@link android.view.View.OnCreateContextMenuListener}. 
+Этот метод вызывается, когда создается контекстное меню (в результате длительного «длительного нажатия»). См. обсуждение
+контекстных меню в руководстве
+для разработчиков <a href="{@docRoot}guide/topics/ui/menus.html#context-menu">Меню</a>.</dd>
+</dl>
+
+<p>Эти методы являются единственными составными частями соответствующих интерфейсов. Чтобы определить один из этих методов
+и обрабатывать события, реализуйте вложенный интерфейс в вашем процесс или определите его, как анонимный класс.
+Затем передайте экземпляр реализации
+в соответствующий метод <code>View.set...Listener()</code>. (Например, вызовите 
+<code>{@link android.view.View#setOnClickListener(View.OnClickListener) setOnClickListener()}</code> 
+и передайте ему свою реализацию {@link android.view.View.OnClickListener OnClickListener}.)</p>
+
+<p>В следующем примере показано, как зарегистрировать приемник события «по клику» (on-click) для кнопки. </p>
+
+<pre>
+// Create an anonymous implementation of OnClickListener
+private OnClickListener mCorkyListener = new OnClickListener() {
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+};
+
+protected void onCreate(Bundle savedValues) {
+    ...
+    // Capture our button from layout
+    Button button = (Button)findViewById(R.id.corky);
+    // Register the onClick listener with the implementation above
+    button.setOnClickListener(mCorkyListener);
+    ...
+}
+</pre>
+
+<p>Возможно, еще удобнее реализовать OnClickListener как часть вашей операции.
+При этом исключается дополнительная нагрузка класса и выделение объекта. Например:</p>
+<pre>
+public class ExampleActivity extends Activity implements OnClickListener {
+    protected void onCreate(Bundle savedValues) {
+        ...
+        Button button = (Button)findViewById(R.id.corky);
+        button.setOnClickListener(this);
+    }
+
+    // Implement the OnClickListener callback
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+    ...
+}
+</pre>
+
+<p>Обратите внимание, что обратный вызов <code>onClick()</code> в примере выше не
+содержит возвращаемого значения, но некоторые другие методы приемника события должны возвращать логическое значение. Причина
+зависит от события. Для некоторых методов, которые возвращают значения, причина описана ниже:</p>
+<ul>
+  <li><code>{@link android.view.View.OnLongClickListener#onLongClick(View) onLongClick()}</code> —
+этот метод возвращает логическое значение, указывающее, что вы обработали это событие и его более не следует хранить. 
+А именно, верните значение <em>true</em>, чтобы указать, что вы обработали событие и его следует остановить;
+верните значение <em>false</em>, если вы не обработали его и/или событие должно продолжаться для любых других
+приемников события on-click.</li>
+  <li><code>{@link android.view.View.OnKeyListener#onKey(View,int,KeyEvent) onKey()}</code> —
+этот метод возвращает логическое значение, указывающее, что вы обработали это событие и его более не следует хранить.
+    А именно, верните значение <em>true</em>, чтобы указать, что вы обработали событие и его следует остановить;
+верните значение <em>false</em>, если вы не обработали его и/или событие должно продолжаться для любых других
+приемников события on-click.</li>
+  <li><code>{@link android.view.View.OnTouchListener#onTouch(View,MotionEvent) onTouch()}</code> —
+этот метод возвращает логическое значение, указывающее, обработал ли ваш приемник это событие. Важно, что
+это событие может повлечь несколько действий, следующих друг за другом. Поэтому, если вы возвращаете <em>ложь</em> при приеме
+ события нажатия, вы указываете, что вы не обработали событие и не
+интересуетесь последующими действиями в результате этого события. Соответственно, этот метод не будет вызываться для любых других действий
+в рамках этого события, таких как жесты или возможное действие отпускания.</li>
+</ul>
+
+<p>Помните, что события аппаратных клавиш всегда попадают в отображаемый объект View, который находится в фокусе. Они отправляются, начиная с верха
+в иерархии отображаемых объектов, затем ниже, пока не достигнут соответствующего назначения. Если ваш отображаемый объект (или дочерний объект вашего отображаемого объекта)
+находится в фокусе, вы можете видеть, как событие перемещается сквозь метод <code>{@link android.view.View#dispatchKeyEvent(KeyEvent)
+dispatchKeyEvent()}</code>. В качестве альтернативы к перехвату событий клавиш через отображаемый объект View можно также получать
+все события внутри вашей операции с помощью методов <code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>
+и <code>{@link android.app.Activity#onKeyUp(int,KeyEvent) onKeyUp()}</code>.</p>
+
+<p>Кроме того, размышляя о вводе текста для приложения, помните, что многие устройства поддерживают только программные методы
+ввода. Такие методы не обязательно основаны на нажатиях клавиш. Некоторые могут использовать голосовой ввод, рукописный ввод и т. д. Даже если
+метод ввода представлен интерфейсом, подобным клавиатуре, он обычно <strong>не</strong> приводит к запуску семейства
+событий<code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>. Не следует создавать
+пользовательский интерфейс, для управления которым требуется нажимать определенные клавиши, кроме случаев, когда вы хотите ограничить использование приложения только устройствами
+с аппаратной клавиатурой. В частности, не полагайтесь на эти методы для подтверждения ввода, когда пользователь нажимает
+клавишу «Ввод». Вместо этого используйте такие действия, как {@link android.view.inputmethod.EditorInfo#IME_ACTION_DONE}, чтобы подать методу ввода сигнал
+о том, какой реакции ожидает приложение, чтобы он мог соответственно изменить свой пользовательский интерфейс. Избегайте предположений
+о работе программного метода ввода и доверьте ему ввод уже отформатированного текста в ваше приложение.</p>
+
+<p class="note"><strong>Примечание.</strong> Система Android сначала будет вызывать обработчики событий, а затем соответствующие обработчики по умолчанию
+из определения класса. Поэтому возврат значения <em>истина</em> из этих приемников событий будет останавливать
+передачу события остальным приемникам событий, а также будет блокировать обратный вызов
+обработчика событий по умолчанию в отображаемом объекте. Поэтому проверьте, что вы хотите прервать событие, когда вы возвращаете значение <em>true</em>.</p>
+
+
+<h2 id="EventHandlers">Обработчики событий</h2>
+
+<p>Если вы создаете нестандартный компонент из отображаемого объекта, вы сможете определить несколько методов обратного вызова,
+используемых как обработчики события по умолчанию.
+В документе <a href="{@docRoot}guide/topics/ui/custom-components.html">Нестандартные
+компоненты</a> можно узнать о некоторых общих обратных вызовах, используемых для обработки событий,
+включая следующие:</p>
+<ul>
+  <li><code>{@link  android.view.View#onKeyDown}</code> — вызывается при возникновении нового события клавиши.</li>
+  <li><code>{@link  android.view.View#onKeyUp}</code> — вызывается при возникновении события отпускания клавиши.</li>
+  <li><code>{@link  android.view.View#onTrackballEvent}</code> — вызывается при возникновении события перемещения трекбола.</li>
+  <li><code>{@link  android.view.View#onTouchEvent}</code> — вызывается при возникновении события жеста на сенсорном экране.</li>
+  <li><code>{@link  android.view.View#onFocusChanged}</code> — вызывается, когда отображаемый объект получает или теряет фокус.</li>
+</ul>
+<p>Существует несколько других методов, о которых следует знать и которые не являются частью класса View,
+но могут напрямую влиять на доступные вам способы обработки событий. Поэтому, управляя более сложными событиями внутри
+макета, учитывайте и другие методы:</p>
+<ul>
+  <li><code>{@link  android.app.Activity#dispatchTouchEvent(MotionEvent)
+    Activity.dispatchTouchEvent(MotionEvent)}</code> — этот метод позволяет вашей операции {@link 
+    android.app.Activity} перехватывать все события касаний перед их отправкой в окно.</li>
+  <li><code>{@link  android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)
+    ViewGroup.onInterceptTouchEvent(MotionEvent)}</code> — этот метод позволяет объекту {@link
+    android.view.ViewGroup} просматривать события перед их отправкой в дочерние отображаемые объекты.</li>
+  <li><code>{@link  android.view.ViewParent#requestDisallowInterceptTouchEvent(boolean)
+    ViewParent.requestDisallowInterceptTouchEvent(boolean)}</code> — вызовите этот метод
+в родительском отображаемом объекте, чтобы указать ему, что он не должен перехватывать события касания с помощью <code>{@link 
+    android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)}</code>.</li>
+</ul>
+
+<h2 id="TouchMode">Режим касания</h2>
+<p>
+Когда пользователь перемещается по пользовательскому интерфейсу с помощью клавиш перемещения или трекбола, необходимо
+передавать фокус действующим элементам (таким как кнопки), чтобы пользователь мог видеть,
+какой элемент будет принимать ввод.  Однако, если устройство поддерживает сенсорный ввод, и пользователь
+начинает взаимодействовать с интерфейсом, прикасаясь к его элементам, исчезает необходимость
+выделять элементы или передавать фокус определенному отображаемому объекту.  Следовательно, существует режим
+взаимодействия, который называется «режимом касания». 
+</p>
+<p>
+Как только пользователь касается экрана, устройство, поддерживающее сенсорный ввод,
+переходит в режим касания.  Начиная с этого момента, фокус передается только тем отображаемым объектам, для которых
+{@link android.view.View#isFocusableInTouchMode} имеет значение true, таким как виджеты редактирования текста.
+Другие отображаемые объекты, которых можно коснуться, например, кнопки, не будут получать фокус при касании. Нажатие будет
+просто запускать их приемники событий on-click.
+</p>
+<p>
+В любой момент, когда пользователь нажимает клавишу перемещения или выполняет прокрутку трекболом, устройство
+выходит из режима касания и находит отображаемый объект, которому передается фокус. Теперь пользователь может возобновить взаимодействие
+с пользовательским интерфейсом без касания экрана.
+</p>
+<p>
+Состояние режима касания поддерживается во всей системе (для всех окон и операций). 
+Чтобы узнать текущее состояние, можно вызвать
+{@link android.view.View#isInTouchMode} и посмотреть, находится ли устройство в режиме касания.
+</p>
+
+
+<h2 id="HandlingFocus">Фокус обработки</h2>
+
+<p>В ответ на пользовательский ввод система обрабатывает обычное перемещение фокуса.
+Сюда относится изменение фокуса, когда отображаемые объекты удаляются или скрываются, а также когда становятся доступными
+новые отображаемые объекты. Отображаемые объекты сообщают о своей готовности получить фокус
+с помощью метода <code>{@link android.view.View#isFocusable()}</code>. Чтобы изменить способность объекта View получать
+фокус, вызовите <code>{@link android.view.View#setFocusable(boolean) setFocusable()}</code>.  В режиме касания
+можно узнать способность отображаемого объекта View получать фокус с помощью метода <code>{@link android.view.View#isFocusableInTouchMode()}</code>.
+Для изменения вызовите <code>{@link android.view.View#setFocusableInTouchMode(boolean) setFocusableInTouchMode()}</code>.
+</p>
+
+<p>Перемещение фокуса основано на алгоритме, который находит ближайший элемент
+в заданном направлении. В редких случаях алгоритм по умолчанию может не совпадать
+с поведением, которое предполагает разработчик. В этих ситуациях можно задать
+явное переопределение с помощью следующих атрибутов XML в файле макета:
+<var>nextFocusDown</var>, <var>nextFocusLeft</var>, <var>nextFocusRight</var>и
+<var>nextFocusUp</var>. Добавьте один из этих атрибутов в отображаемый объект View, <em>из</em> которого
+выходит фокус. Задайте значение атрибута для идентификатора объекта View,
+<em>в</em> который следует передать фокус. Например:</p>
+<pre>
+&lt;LinearLayout
+    android:orientation="vertical"
+    ... >
+  &lt;Button android:id="@+id/top"
+          android:nextFocusUp="@+id/bottom"
+          ... />
+  &lt;Button android:id="@+id/bottom"
+          android:nextFocusDown="@+id/top"
+          ... />
+&lt;/LinearLayout>
+</pre>
+
+<p>Обычно в этом вертикальном макете перемещение вверх из первой кнопки не должно приводить к перемещению,
+как и перемещение вниз из второй кнопки. Теперь, когда верхняя кнопка
+задает для нижней кнопки атрибут <var>nextFocusUp</var> (и наоборот), фокус будет перемещаться
+циклически сверху вниз и снизу вверх.</p>
+
+<p>Если вы хотите объявить, что отображаемый объект в вашем пользовательском интерфейсе способен получать фокус (тогда как обычно он не может получать фокус),
+добавьте XML-атрибут <code>android:focusable</code> в объект View в объявлении макета.
+Установите для него значение <var>true</var>. Можно также объявить объект View,
+способным получать фокус в режиме касания с помощью <code>android:focusableInTouchMode</code>.</p>
+<p>Чтобы запросить передачу фокуса определенному отображаемому объекту, вызовите <code>{@link android.view.View#requestFocus()}</code>.</p>
+<p>Чтобы перехватывать события фокуса (получать уведомления, когда отображаемый объект получает или теряет фокус), используйте метод
+<code>{@link android.view.View.OnFocusChangeListener#onFocusChange(View,boolean) onFocusChange()}</code>,
+который обсуждается в разделе <a href="#EventListeners">Приемники событий</a> выше.</p>
+
+
+
+<!--
+<h2 is="EventCycle">Event Cycle</h2>
+   <p>The basic cycle of a View is as follows:</p>
+   <ol>
+    <li>An event comes in and is dispatched to the appropriate View. The View
+    handles the event and notifies any listeners.</li>
+    <li>If, in the course of processing the event, the View's bounds may need
+    to be changed, the View will call {@link android.view.View#requestLayout()}.</li>
+    <li>Similarly, if in the course of processing the event the View's appearance
+    may need to be changed, the View will call {@link android.view.View#invalidate()}.</li>
+    <li>If either {@link android.view.View#requestLayout()} or {@link android.view.View#invalidate()} were called,
+    the framework will take care of measuring, laying out, and drawing the tree
+    as appropriate.</li>
+   </ol>
+   
+   <p class="note"><strong>Note:</strong> The entire View tree is single threaded. You must always be on
+   the UI thread when calling any method on any View.
+   If you are doing work on other threads and want to update the state of a View
+   from that thread, you should use a {@link android.os.Handler}.
+   </p>
+-->
diff --git a/docs/html-intl/intl/ru/index.jd b/docs/html-intl/intl/ru/index.jd
index 3da0b9e..e917a8d 100644
--- a/docs/html-intl/intl/ru/index.jd
+++ b/docs/html-intl/intl/ru/index.jd
@@ -5,43 +5,81 @@
 
 @jd:body
 
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
 
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="/preview/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
   <div class="wrap" style="max-width:1100px;margin-top:0">
-    <div class="cols dac-hero-content">
-      <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
-      </div>
-      <div class="col-8of16 col-pull-7of16">
-        <div class="dac-hero-tag"></div>
-
-        <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
-        <p class="dac-hero-description">Подготовьтесь к выходу следующей версии
-        платформы Android. Протестируйте ваши приложения на устройствах Nexus
-        5, 6, 9 и Player. </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/index.html">
+    <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+      <a href="{@docRoot}preview/index.html">
+        <h1 class="dac-hero-title">Android N Developer Preview</h1>
+        <p class="dac-hero-description">
+          Get ready for the next version of Android!
+          <strong>Test your apps</strong> on Nexus and other devices. Support new system
+          behaviors to <strong>save power and memory</strong>.
+          Extend your apps with <strong>multi-window UI</strong>,
+          <strong>direct reply notifications</strong> and more.
+        </p>
+        <a class="dac-hero-cta" href="/preview/index.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Итак, приступим!
-        </a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
+          Learn more
+        </a><!--<br>
+        <a class="dac-hero-cta" href="/preview/support.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-      </div>
+          Update to Developer Preview (final SDK)
+        </a><br>-->
+      </a>
+    </div>
+    <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+      <a href="{@docRoot}preview/index.html">
+        <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+             srcset="/images/home/n-preview-hero.png 1x,
+             /images/home/n-preview-hero_2x.png 2x">
+        </a>
     </div>
   </div>
-</a>
-</article></section>
+</section>
 
-<div class="actions-bar dac-expand dac-invert">
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
   <div class="wrap dac-offset-parent">
     <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
       <i class="dac-sprite dac-arrow-down-gray"></i>
     </a>
+    <ul class="dac-actions">
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}sdk/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Get the SDK
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}samples/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Browse sample code
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}distribute/stories/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Watch stories
+        </a>
+      </li>
+    </ul>
+  </div><!-- end .wrap -->
+</div><!-- end .dac-actions -->
+
+<div id="useOldTemplates" style="display:none" class="actions-bar dac-expand dac-invert">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button="" href="#build-apps">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
     <div class="actions">
       <div><a href="{@docRoot}sdk/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
@@ -51,17 +89,15 @@
         <span class="dac-sprite dac-auto-chevron-large"></span>
         Browse Samples
       </a></div>
-      <div><a href="//www.youtube.com/user/androiddevelopers">
+      <div><a href="{@docRoot}distribute/stories/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
-        Watch Videos
+        Watch Stories
       </a></div>
     </div><!-- end .actions -->
   </div><!-- end .wrap -->
-</div><!-- end .actions-bar -->
+</div>
 
-
-
-<section class="dac-section dac-section-light" id="build-apps"><div class="wrap">
+<section class="dac-section dac-light" id="build-apps"><div class="wrap">
   <h1 class="dac-section-title">Build Beautiful Apps</h1>
   <div class="dac-section-subtitle">
     Resources to get you started with designing and developing for Android.
diff --git a/docs/html-intl/intl/ru/preview/api-overview.jd b/docs/html-intl/intl/ru/preview/api-overview.jd
deleted file mode 100644
index aa4a057..0000000
--- a/docs/html-intl/intl/ru/preview/api-overview.jd
+++ /dev/null
@@ -1,521 +0,0 @@
-page.title=Обзор API-интерфейсов
-page.keywords=предварительная версия,пакет sdk,совместимость
-page.tags=previewresources, androidm
-sdk.platform.apiLevel=22-mnc
-page.image=images/cards/card-api-overview_16-9_2x.png
-@jd:body
-
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>Содержание
-<a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
-        <span class="more">развернуть</span>
-        <span class="less" style="display:none">свернуть</span></a></h2>
-
-<ol id="toc44" class="hide-nested">
-  <li><a href="#app-linking">Связывание приложений</a></li>
-  <li><a href="#backup">Автоматическое резервное копирование для приложений</a></li>
-  <li><a href="#authentication">Авторизация</a>
-    <ol>
-      <li><a href="#fingerprint-authentication">Авторизация по отпечатку пальца</a></li>
-      <li><a href="#confirm-credential">Подтверждение учетных данных</a></li>
-    </ol>
-  </li>
-  <li><a href="#direct-share">Прямой обмен контентом</a></li>
-  <li><a href="#voice-interactions">Голосовой интерфейс</a></li>
-  <li><a href="#assist">API-интерфейс помощника</a></li>
-  <li><a href="#notifications">Уведомления</a></li>
-  <li><a href="#bluetooth-stylus">Поддержка пера Bluetooth</a></li>
-  <li><a href="#ble-scanning">Улучшенное сканирование Bluetooth с низким потреблением энергии</a></li>
-  <li><a href="#hotspot">Поддержка Hotspot 2.0, выпуск 1</a></li>
-  <li><a href="#4K-display">Режим отображения в формате 4K</a></li>
-  <li><a href="#behavior-themeable-colorstatelists">Метод ColorStateLists для работы с темами</a></li>
-  <li><a href="#audio">Работа с аудио</a></li>
-  <li><a href="#video">Работа с видео</a></li>
-  <li><a href="#camera">Возможности камеры</a>
-    <ol>
-      <li><a href="#flashlight">API-интерфейс вспышки</a></li>
-      <li><a href="#reprocessing">Повторная обработка изображения с камеры</a></li>
-    </ol>
-  </li>
-  <li><a href="#afw">Возможности Android for Work</a></li>
-</ol>
-
-<h2>Различия между API-интерфейсами</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API уровня 22 в M Preview &raquo;</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>M Developer Preview — ознакомительная версия предстоящего выпуска платформы Android,
-в котором реализованы новые возможности как для пользователей, так и для
-разработчиков приложений. В этой статье мы расскажем о наиболее интересных API-интерфейсах.</p>
-
-<p>Версия M Developer Preview предназначена для тех, <strong>кто хочет первым ознакомиться с новой платформой</strong>,
-а также для <strong>тестировщиков</strong>. <a href="{@docRoot}preview/setup-sdk.html">M Developer Preview — прекрасная возможность
-</a>повлиять на вектор развития
-платформы Android. 
-Мы с нетерпением ждем ваших отзывов!</p>
-
-<p class="caution"><strong>Внимание!</strong> Не публикуйте в магазине Google Play приложения,
-предназначенные для M Developer Preview.</p>
-
-<p class="note"><strong>Примечание.</strong> В этой статье часто упоминаются классы и методы,
-для которых на сайте <a href="{@docRoot}">developer.android.com</a> пока еще нет справочных материалов. Такие элементы API-интерфейса обозначаются здесь следующим образом:
-{@code code style} (без гиперссылок). Чтобы ознакомиться с предварительной документацией по этим элементам,
-загрузите <a href="{@docRoot}preview/download.html#docs">справочное руководство по предварительной версии</a>.</p>
-
-<h3>Важные изменения в работе приложений</h3>
-
-<p>Если вы ранее публиковали приложения для Android, то примите во внимание, что изменения в платформе могут повлиять
-на работу опубликованных приложений.</p>
-
-<p>Подробные сведения представлены в статье <a href="behavior-changes.html">Изменения в работе</a>.</p>
-
-<h2 id="app-linking">Связывание приложений</h2>
-<p>В M Preview улучшена система намерений Android за счет более эффективного связывания приложений.
-Теперь у вас есть возможность связывать приложения с вашими собственными веб-доменами. Благодаря этому
-платформа может сама, без вмешательства пользователя, определить приложение, которое будет использоваться по умолчанию
-для обработки определенной веб-ссылки. О том, как реализовать такую возможность, можно почитать в статье
-<a href="{@docRoot}preview/features/app-linking.html">Связывание приложений</a>.
-
-<h2 id="backup">Автоматическое резервное копирование для приложений</h2>
-<p>Теперь система автоматически выполняет полное резервное копирование и восстановление данных ваших приложений. Для приложений,
-написанных под M Preview, эта функция включена по умолчанию — вам даже не нужно добавлять отдельный код. Если пользователь решит удалить свою учетную запись Google, все резервные копии его данных также будут удалены. 
- О том, как работает эта функция и как настроить параметры резервного копирования элементов файловой системы, 
- рассказано в статье
-<a href="{@docRoot}preview/backup/index.html">Автоматическое резервное копирование для приложений</a>.</p>
-
-<h2 id="authentication">Авторизация</h2>
-<p>В M Preview представлены новые API-интерфейсы, которые позволяют авторизовать пользователей по отпечатку пальца
-(на устройствах, поддерживающих такую возможность), а также подтвердить учетные данные, если пользователь недавно авторизовался через механизмы разблокировки устройства
-(например, вводил пароль для разблокировки экрана). Эти API-интерфейсы рекомендуется использовать совместно с
-<a href="{@docRoot}training/articles/keystore.html">системой хранилища ключей Android</a>.</p>
-
-<h3 id="fingerprint-authentication">Авторизация по отпечатку пальца</h3>
-
-<p>Чтобы авторизовать пользователя по отпечатку пальца, получите экземпляр нового класса
-{@code android.hardware.fingerprint.FingerprintManager} и вызовите метод
-{@code FingerprintManager.authenticate()}. Эта функция доступна для совместимых
-устройств, оснащенных сканером отпечатков пальцев. Прежде всего, вам необходимо реализовать в своем приложении пользовательский интерфейс проверки
-подлинности по отпечатку пальца, а также использовать для него стандартный значок отпечатка пальца Android.
-Этот значок ({@code c_fp_40px.png}) вы можете найти в
-<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">примере приложения</a>. При разработке нескольких приложений, использующих функцию авторизации по отпечатку пальца,
-помните, что каждое из них должно самостоятельно выполнять проверку подлинности.
-</p>
-
-<p>Чтобы реализовать эту функцию, сначала добавьте в файл манифеста разрешение {@code USE_FINGERPRINT}.
-</p>
-
-<pre>
-&lt;uses-permission
-        android:name="android.permission.USE_FINGERPRINT" /&gt;
-</pre>
-
-<img src="{@docRoot}preview/images/fingerprint-screen.png" srcset="{@docRoot}preview/images/fingerprint-screen.png 1x, {@docRoot}preview/images/fingerprint-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-
-<p>Пример такой проверки подлинности вы найдете в
-<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">примере
-диалогового окна авторизации по отпечатку пальца</a>.</p>
-
-<p>Если вы тестируете эту функцию, выполните следующие действия:</p>
-<ol>
-<li>Установите инструменты SDK Android (версию 24.3), если у вас их еще нет.</li>
-<li>Зарегистрируйте в эмуляторе новый отпечаток пальца (в разделе
-<strong>Настройки &gt; Безопасность &gt; Отпечаток пальца</strong>) и следуйте дальнейшим инструкциям.</li>
-<li>Воспользовавшись указанной ниже командой, сымитируйте в эмуляторе события касания для проверки отпечатка пальца.
- С помощью этой же команды сымитируйте события касания для проверки отпечатка пальца на экране блокировки или в
-своем приложении.
-<pre class="no-prettyprint">
-adb -e emu finger touch &lt;finger_id&gt;
-</pre>
-<p>В Windows, возможно, потребуется выполнить команду {@code telnet 127.0.0.1 <emulator-id>}, а затем
-{@code finger touch <finger_id>}.
-</p>
-</li>
-</ol>
-
-<h3 id="confirm-credential">Подтверждение учетных данных</h3>
-<p>Для авторизации пользователей ваше приложение может обратиться к сведениям о том, как давно они разблокировали свое устройство в последний раз. Эта функция
-избавляет пользователя от необходимости запоминать отдельные пароли для каждого приложения, а вас — от необходимости
-реализовывать собственный пользовательский интерфейс авторизации. В приложении эту функцию следует
-использовать совместно с реализацией открытого или секретного ключа для авторизации пользователей.</p>
-
-<p>Чтобы задать временя ожидания, в течение которого после успешной
-авторизации можно использовать ключ повторно, вызовите новый метод
-{@code android.security.keystore.KeyGenParameterSpec.setUserAuthenticationValidityDurationSeconds()}
-при настройке {@link javax.crypto.KeyGenerator} или
-{@link java.security.KeyPairGenerator}. На сегодняшний день эта функция совместима с симметричными криптографическими
-операциями.</p>
-
-<p>Не стоит слишком часто отображать диалоговое окно повторной авторизации — ваше
-приложение должно сначала попробовать использовать криптографический объект и только потом, если окажется, что время ожидания истекло, обратиться к методу
-{@link android.app.KeyguardManager#createConfirmDeviceCredentialIntent(java.lang.CharSequence, java.lang.CharSequence) createConfirmDeviceCredentialIntent()}
-для повторной авторизации пользователя.
-</p>
-
-<p>Как можно реализовать эту функцию, показано в
-<a href="https://github.com/googlesamples/android-ConfirmCredential" class="external-link">примерепроверки учетных данных</a>.
-</p>
-
-<h2 id="direct-share">Прямой обмен контентом</h2>
-
-<img src="{@docRoot}preview/images/direct-share-screen.png" srcset="{@docRoot}preview/images/direct-share-screen.png 1x, {@docRoot}preview/images/direct-share-screen_2x.png 2x" style="float:right; margin:0 0 20px 30px" width="312" height="329" />
-
-<p>M Preview содержит API-интерфейсы для интуитивно понятного и быстрого обмена контентом между пользователями. Теперь вы можете
-определить <em>целевые объекты прямого обмена</em>, которые будут запускать определенную операцию в приложении 
-и открываться в меню <em>Поделиться</em>. С помощью данной функции пользователи могут обмениваться контентом
-с целевыми объектами, такими как контакты, в других приложениях. Например, целевой объект прямого обмена может запустить операцию
-в другом приложении социальной сети, что позволит пользователю напрямую делиться контентом с другом
-или членами сообщества через это приложение.</p>
-
-<p>Чтобы включить использование целевых объектов прямого обмена, необходимо определить класс, который наследует класс
-{@code android.service.} <br>
-{@code chooser.ChooserTargetService}. Объявите
-{@code ChooserTargetService} в манифесте. В этом объявлении укажите разрешение
-{@code BIND_CHOOSER_TARGET_SERVICE} и фильтр намерений с помощью действия
-{@code SERVICE_INTERFACE}.</p>
-<p>В примере ниже показано, как объявить {@code ChooserTargetService}
- в вашем манифесте.</p>
-<pre>
-&lt;service android:name=".ChooserTargetService"
-        android:label="&#64;string/service_name"
-        android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE"&gt;
-    &lt;intent-filter&gt;
-        &lt;action android:name="android.service.chooser.ChooserTargetService" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/service&gt;
-</pre>
-
-<p>Для каждого действия, которое необходимо сделать доступным для {@code ChooserTargetService}, добавьте в манифест вашего приложения элемент
-{@code <meta-data>} с именем
-{@code "android.service.chooser.chooser_target_service"}.
-</p>
-
-<pre>
-&lt;activity android:name=".MyShareActivity”
-        android:label="&#64;string/share_activity_label"&gt;
-    &lt;intent-filter>
-        &lt;action android:name="android.intent.action.SEND" /&gt;
-    &lt;/intent-filter>
-&lt;meta-data
-        android:name="android.service.chooser.chooser_target_service"
-        android:value=".ChooserTargetService" /&gt;
-&lt;/activity>
-</pre>
-
-<h2 id="voice-interactions">Голосовой интерфейс</h2>
-<p>
-В M Preview представлен новый голосовой API-интерфейс, который, наряду с
-<a href="https://developers.google.com/voice-actions/" class="external-link">голосовыми командами</a>,
-позволяет встраивать в приложение диалоговое голосовое взаимодействие. Вызовите метод
-{@code android.app.Activity.isVoiceInteraction()}, чтобы определить, была ли операция запущена
-в ответ на голосовую команду. Если это так, ваше приложение может использовать класс
-{@code android.app.VoiceInteractor}, чтобы получить голосовое подтверждение от пользователя, предложить ему список вариантов
-на выбор и многое другое. Подробнее о реализации голосовых команд можно почитать в
-<a href="https://developers.google.com/voice-actions/interaction/" class="external-link">руководстве к голосовому интерфейсу</a>.
-</p>
-
-<h2 id="assist">API-интерфейс помощника</h2>
-<p>
-M Preview предлагает новый способ взаимодействия пользователей с приложением — взаимодействие посредством помощника. Для этого
-пользователю необходимо разришить помощнику использовать текущий контекст, после чего он сможет вызывать помощника
-в любом приложении, удерживая кнопку <strong>Домой</strong>.</p>
-<p>Разработчик может также запретить приложению сообщать помощнику текущий контекст. Для этого установите флаг
-{@link android.view.WindowManager.LayoutParams#FLAG_SECURE}. Кроме стандартного набора
-информации, который платформа передает помощнику, ваше приложение может сообщать ему дополнительные
-сведения посредством нового класса {@code android.app.Activity.AssistContent}.</p>
-
-<p>Чтобы предоставить помощнику дополнительный контекст из вашего приложения, выполните следующие действия:</p>
-
-<ol>
-<li>Реализуйте интерфейс {@link android.app.Application.OnProvideAssistDataListener}.</li>
-<li>Зарегистрируйте этот приемник с помощью
-{@link android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener) registerOnProvideAssistDataListener()}.</li>
-<li>Для предоставления контекста, относящего к конкретной операции, переопределите метод обратного вызова
-{@link android.app.Activity#onProvideAssistData(android.os.Bundle) onProvideAssistData()},
-а также, при желании, новый метод обратного вызова{@code Activity.onProvideAssistContent()}.
-</ol>
-
-<h2 id="notifications">Уведомления</h2>
-<p>В API-интерфейс уведомлений внесены следующие изменения:</p>
-<ul>
-  <li>{@code NotificationListenerService.INTERRUPTION_FILTER_ALARMS} — новый уровень фильтрации,
-соответствующий новому режиму «Не беспокоить» <em>Только будильник</em>.</li>
-  <li>{@code Notification.CATEGORY_REMINDER} — новое значение категории, позволяющее отличить
-установленные пользователем напоминания от других событий
-({@link android.app.Notification#CATEGORY_EVENT}) и будильников
-({@link android.app.Notification#CATEGORY_ALARM}).</li>
-  <li>{@code android.graphics.drawable.Icon} — новый класс, который можно добавить к уведомлениям
-с помощью методов {@code Notification.Builder.setSmallIcon(Icon)} и
-{@code Notification.Builder.setLargeIcon(Icon)}.</li>
-  <li>{@code NotificationManager.getActiveNotifications()} — новый метод, с помощью которого ваше приложение
-может определить, какие из уведомлений в настоящее время активны. Если хотите взглянуть, как может быть реализовано приложение
-с этой функцией, пройдите по ссылке: <a href="https://github.com/googlesamples/android-ActiveNotifications" class="external-link">Пример активных уведомлений</a>.</li>
-</ul>
-
-<h2 id="bluetooth-stylus">Поддержка пера Bluetooth</h2>
-<p>В M Preview улучшена поддержка ввода с помощью пера Bluetooth. Пользователи могут подключить
-совместимое перо Bluetooth к своему смартфону или планшету.  Когда перо подключено, данные о его
-положении объединяются со сведениями о степени нажима и нажатия кнопки на пере,
-и таким образом при сенсорном вводе используются не только возможности сенсорного экрана. Ваше приложение может отслеживать
-нажатия кнопки пера и выполнять дополнительные действия, регистрируя в операции новые методы обратного вызова
-{@code View.onStylusButtonPressListener} и
-{@code GestureDetector.OnStylusButtonPressListener}.</p>
-
-<p>Для определения нажатий кнопок пера используйте методы и константы {@link android.view.MotionEvent}:
-</p>
-<ul>
-<li>Если пользователь касается пером кнопки на экране приложения, метод
-{@link android.view.MotionEvent#getToolType(int) getTooltype()} возвращает
-{@link android.view.MotionEvent#TOOL_TYPE_STYLUS}.</li>
-<li>В приложениях, разработанных для M Preview, при нажатии пользователем на основную кнопку на пере, метод
-{@link android.view.MotionEvent#getButtonState() getButtonState()}
-возвращает{@code MotionEvent.STYLUS_BUTTON_PRIMARY}.
- Если перо оснащено дополнительной кнопкой, то при нажатии на нее этот метод возвращает
-{@code MotionEvent.STYLUS_BUTTON_SECONDARY}. При нажатии пользователем
-на обе кнопки одновременно, метод возвращает оба значения через оператор «OR»
-({@code STYLUS_BUTTON_PRIMARY|STYLUS_BUTTON_SECONDARY}).</li>
-<li>
-В приложениях, разработанных для более ранних версий платформы, метод
-{@link android.view.MotionEvent#getButtonState() getButtonState()} возвращает
-{@link android.view.MotionEvent#BUTTON_SECONDARY} (при нажатии на основную кнопку на пере),
-{@link android.view.MotionEvent#BUTTON_TERTIARY} (при нажатии дополнительной кнопки на пере) или оба этих значения.
-</li>
-</ul>
-
-<h2 id="ble-scanning">Улучшенное сканирование Bluetooth с низким потреблением энергии</h2>
-<p>
-Если ваше приложение выполняет сканирование Bluetooth с низким потреблением энергии, вы можете при помощи нового метода
-{@code android.bluetooth.le.ScanSettings.Builder.setCallbackType()} указать, что обратные вызовы следует уведомлять только в случае, если прежде обнаружен пакет объявления,
- совпадающий с заданным фильтром
-{@link android.bluetooth.le.ScanFilter}, или если он не обнаруживается в течение заданного периода времени.
- Такой подход к сканированию обеспечивает еще большую экономию энергии, чем это было возможно в предыдущей
-версии платформы.
-</p>
-
-<h2 id="hotspot">Поддержка Hotspot 2.0, выпуск 1</h2>
-<p>
-В M Preview включена поддержка Hotspot 2.0 (выпуск 1) для устройств Nexus 6 и Nexus 9. Для
-предоставления учетных данных Hotspot 2.0 в вашем приложении используйте новые методы класса
-{@link android.net.wifi.WifiEnterpriseConfig}, такие как {@code setPlmn()} и
-{@code setRealm()}. В объекте {@link android.net.wifi.WifiConfiguration} можно задать поля
-{@link android.net.wifi.WifiConfiguration#FQDN} и {@code providerFriendlyName}.
-Новое свойство{@code ScanResult.PasspointNetwork} показывает, является ли обнаруженная
-сеть точкой доступа Hotspot 2.0.
-</p>
-
-<h2 id="4K-display">Режим отображения в формате 4K</h2>
-<p>Теперь платформа позволяет приложениям запрашивать увеличение разрешения экрана до 4K при обработке изображения
-на совместимом устройстве. Чтобы запросить текущее физическое разрешение, используйте новые API-интерфейсы
-{@code android.view.Display.Mode}. Если элементы пользовательского интерфейса, отрисованные в более низком логическом разрешении, масштабируются до
-более высокого физического разрешения, обратите внимание, что метод физического разрешения
-{@code Display.Mode.getPhysicalWidth()} возвращает результат, который может отличаться от результата выполнения метода логического разрешения
-{@link android.view.Display#getSize(android.graphics.Point) getSize()} .</p>
-
-<p>Можно отправить запрос системе на изменение физического разрешения в активном приложении, задав для окна вашего приложения свойство
-{@code WindowManager.LayoutParams.preferredDisplayModeId}.  Эта
-функция особенно полезна в случаях, когда требуется переключиться на разрешение экрана 4K. В режиме отображения в формате 4K элементы
-пользовательского интерфейса отрисовываются в исходном разрешении (например, 1080p) и масштабируются до 4K, однако содержимое
-{@link android.view.SurfaceView} объектов может отображаться с использованием основного разрешения.</p>
-
-<h2 id="behavior-themeable-colorstatelists">Метод ColorStateLists для работы с темами</h2>
-<p>Теперь метод
-{@link android.content.res.ColorStateList} для устройств под управлением M Preview поддерживает атрибуты темы. Методы
-{@link android.content.res.Resources#getColorStateList(int) getColorStateList()} и
-{@link android.content.res.Resources#getColor(int) getColor()} уже неактуальны. Если вы
-вызываете эти API-интерфейсы, вызовите вместо них новые методы {@code Context.getColorStateList()} или
-{@code Context.getColor()}, Доступные также в библиотеке v4 appcompat
-посредством {@link android.support.v4.content.ContextCompat}.</p>
-
-<h2 id="audio">Работа с аудио</h2>
-
-<p>В M Preview реализован ряд улучшений в области обработки аудиофайлов системой Android, включая следующие: </p>
-<ul>
-  <li>Новые API-интерфейсы {@code android.media.midi}, поддерживающие протокол <a href="http://en.wikipedia.org/wiki/MIDI" class="external-link">MIDI</a>
- для отправки и получения событий
-MIDI.</li>
-  <li>Новые классы: {@code android.media.AudioRecord.Builder} позволяет создавать объекты захвата цифрового аудио, а {@code android.media.AudioTrack.Builder} — объекты воспроизведения,
-а также осуществлять настройку источника
-аудио и свойств приемника, переопределяя исходные системные настройки.</li>
-  <li>Обработчики API-интерфейсов предназначены для связывания аудиофайлов и устройств ввода. Это особенно полезно в случае, если ваше приложение
-предоставляет возможность выполнять голосовой поиск с помощью игрового контроллера или пульта дистанционного управления, подключенного к Android
-TV. Когда пользователь запустит поиск, система вызовет новый метод обратного вызова {@code android.app.Activity.onSearchRequested()}.
- Чтобы определить, оснащено ли устройство ввода встроенным микрофоном, получите из этого метода обратного вызова объект
-{@link android.view.InputDevice} и вызовите новый метод
-{@code InputDevice.hasMic()}.</li>
-  <li>Новый класс {@code android.media.AudioDevicesManager}, позволяющий пользователю получить список всех
-подключенных источников аудио и приемников. Также можно указать объект
-{@code android.media.OnAudioDeviceConnectionListener}, если требуется, чтобы приложение
-получало уведомления о подключении или отключении аудиоустройств.</li>
-</ul>
-
-<h2 id="video">Работа с видео</h2>
-<p>В M Preview вы обнаружите новые возможности API-интерфейсов для обработки видео, в том числе:</p>
-<ul>
-<li>Новый класс {@code android.media.MediaSync} обеспечивает синхронную обработку потоков
-аудио и видео. Буферы аудио отправляются неблокируемым способом и возвращаются посредством 
-обратного вызова. Также имеется поддержка динамической скорости воспроизведения.
-</li>
-<li>Новое событие {@code MediaDrm.EVENT_SESSION_RECLAIMED} указывает на то, что сеанс, запущенный
-приложением, освобожден диспетчером ресурсов. Если в вашем приложении используются сеансы DRM, то это событие
-необходимо обработать и убедиться в том, что освобожденный сеанс не используется.
-</li>
-<li>Новый код ошибки {@code MediaCodec.CodecException.ERROR_RECLAIMED} указывает на то, что
-диспетчер ресурсов освободил ресурс мультимедиа, используемый кодеком. Во всех остальных случаях кодек должен
-быть освобожден, поскольку его необходимо перевести в конечное состояние.
-</li>
-<li>Новый интерфейс {@code MediaCodecInfo.CodecCapabilities.getMaxSupportedInstances()} позволяет узнать максимальное количество
- экземпляров кодека, которые могут выполняться одновременно.
-</li>
-<li>Новый {@code MediaPlayer.setPlaybackParams()} метод задает скорость при ускоренном или 
-замедленном воспроизведении мультимедиа. Он также позволяет автоматически замедлять или ускорять воспроизведение аудио синхронно с
-видео.</li>
-</ul>
-
-<h2 id="camera">Возможности камеры</h2>
-<p>В M Preview представлены следующие API-интерфейсы для вспышки камеры и повторной обработки
-изображений камерой.</p>
-
-<h3 id="flashlight">API-интерфейс вспышки</h3>
-<p>Если камера оснащена вспышкой, вы можете вызвать метод{@code CameraManager.setTorchMode()},
-чтобы включить или отключить режим фонарика, не запуская камеру. Приложение
-не может заполучить вспышку или камеру в единоличное пользование. Режим фонарика отключается
-и становится недоступен, когда камера недоступна или ресурсов камеры недостаточно для использования вспышки в качестве
-фонарика. Кроме того, другие приложения могут вызывать метод {@code setTorchMode()}
-для отключения режима фонарика. При закрытии приложения, которое включило режим фонарика, этот режим
-отключается.</p>
-
-<p>Чтобы зарегистрировать обратный вызов для уведомления о режиме фонарика, вызовите метод
-{@code CameraManager.registerTorchCallback()}. При первой регистрации обратного вызова
-он сразу же вызывается со сведениями о состоянии режима фонарика для всех известных к настоящему моменту устройств,
-оснащенных вспышкой. При успешном включении или отключении фонарика вызывается метод
-{@code CameraManager.TorchCallback.onTorchModeChanged()}.</p>
-
-<h3 id="reprocessing">API-интерфейс повторной обработки</h3>
-<p>API-интерфейс {@link android.hardware.camera2 Camera2} теперь поддерживает повторную обработку цветовых моделей YUV и изображений в собственном
-формате непрозрачности. Чтобы определить, возможна ли повторная обработка, приложение использует метод
-{@code CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES}. Если устройство поддерживает повторную обработку,
-вы можете создать сеанс захвата изображения с камеры с возможностью повторной обработки, вызвав метод
-{@code CameraDevice.createReprocessableCaptureSession()}, а затем создать запросы на повторную обработку буфера
-входных данных.</p>
-
-<p>Чтобы подключить поток буфера входных данных к модулю повторной обработки изображения с камеры, используйте класс
-{@code ImageWriter}. Чтобы получить пустой буфер, выполните следующие действия:</p>
-
-<ol>
-<li>Вызовите метод {@code ImageWriter.dequeueInputImage()}.</li>
-<li>Заполните буфер входными данными.</li>
-<li>Отправьте буфер в камеру, вызвав метод {@code ImageWriter.queueInputImage()}.</li>
-</ol>
-
-<p>Если вы используете объект {@code ImageWriter} вместе с изображением
-{@code android.graphics.ImageFormat.PRIVATE}, вашему приложению не удастся получить доступ к изображению
-напрямую. Вместо этого передайте изображение {@code ImageFormat.PRIVATE} прямо в
-{@code ImageWriter}, вызвав метод {@code ImageWriter.queueInputImage()} без копии
-буфера.</p>
-
-<p>Класс {@code ImageReader} теперь поддерживает потоки изображений в формате {@code android.graphics.ImageFormat.PRIVATE}.
- Благодаря этому ваше приложение может организовать циклическую очередь выходных изображений
-{@code ImageReader}, выбрать одно или несколько изображений и отправить их в
-{@code ImageWriter} для повторной обработки камерой.</p>
-
-<h2 id="afw">Возможности Android for Work</h2>
-<p>В M Preview представлены новые API-интерфейсы для Android for Work:</p>
-<ul>
-  <li><strong>Улучшенные элементы управления для корпоративных специализированных устройств.</strong> Владельцу устройства
-теперь доступны новые возможности управления
-корпоративными специализированными устройствами при помощие следующих настроек:
-  <ul>
-    <li>Отключение или повторное включение блокировки клавиатуры с помощью метода
-{@code DevicePolicyManager.setKeyguardEnabledState()}.</li>
-    <li>Отключение или повторное включение строки состояния (включая быстрые настройки, уведомления и 
-запуск Google Now путем проведения пальцем по экрану) с помощью метода 
-{@code DevicePolicyManager.setStatusBarEnabledState()}.</li>
-    <li>Отключение и повторное включение безопасной загрузки с помощью константы
-{@code DISALLOW_SAFE_BOOT} {@link android.os.UserManager}.</li>
-    <li>Предотвращение отключения экрана, если устройство питается от сети, с помощью константы
-{@code STAY_ON_WHILE_PLUGGED_IN} {@link android.provider.Settings.Global}.</li>
-  </ul>
-  </li>
-  <li><strong>Автоматические установка и удаление приложений владельцами устройств.</strong> Владелец устройства теперь может автоматически
-устанавливать и удалять приложения с помощью API-интерфейсов {@link android.content.pm.PackageInstaller},
-независимо от Google Play for Work. Теперь вы можете подготавливать устройства с помощью компонента «Владелец устройства», который
-получает и устанавливает приложения без участия пользователя. Такая возможность особенно полезна тем, что позволяет подготавливать
-киоски или иные подобные устройства одним касанием, не активируя аккаунт Google.</li>
-<li><strong>Автоматический доступ к корпоративному сертификату.</strong> Теперь, когда приложение вызывает метод
-{@link android.security.KeyChain#choosePrivateKeyAlias(android.app.Activity,android.security.KeyChainAliasCallback,java.lang.String[],java.security.Principal[],java.lang.String,int,java.lang.String) choosePrivateKeyAlias()},
-владелец профиля или устройства, прежде чем ему будет предложено выбрать сертификат, может вызывать метод
-{@code DeviceAdminReceiver.onChoosePrivateKeyAlias()}, который автоматически предоставит предложению псевдоним.
- С помощью этой возможности вы можете предоставлять управляемым приложениям доступ к сертификатам без
-вмешательства пользователя.</li>
-<li><strong>Автоматическое принятие обновлений системы.</strong> Настройка параметров обновления системы с помощью
-{@code DevicePolicyManager.setSystemUpdatePolicy()} теперь позволяет компоненту «Владелец устройства» автоматически принять обновление системы
-(например, в киоске) или отложить его на период до 30 дней, причем пользователь
-тоже не сможет установить обновление до истечения этого срока. Более того, администратор может задать ежедневный временной интервал, когда устройство будет принимать
-обновления (например, во те часы, когда киоск не используется). При наличии доступного
-обновления система проверяет, заданы ли параметры обновления системы приложением «Параметры работы»
-, и выполняет соответствующие действия.
-</li>
-<li>
-<strong>Делегированная установка сертификата.</strong> Владелец профиля или устройства теперь может предоставлять
-стороннему приложению возможность вызывать следующие API-интерфейсы управления сертификатом
-{@link android.app.admin.DevicePolicyManager}:
-<ul>
-  <li>{@link android.app.admin.DevicePolicyManager#getInstalledCaCerts(android.content.ComponentName)
-getInstalledCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#hasCaCertInstalled(android.content.ComponentName,byte[])
-hasCaCertInstalled()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installCaCert(android.content.ComponentName,byte[])
-installCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallCaCert(android.content.ComponentName,byte[])
-uninstallCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallAllUserCaCerts(android.content.ComponentName)
-uninstallAllUserCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installKeyPair(android.content.ComponentName,java.security.PrivateKey,java.security.cert.Certificate,java.lang.String)
-installKeyPair()}</li>
-</ul>
-</li>
-<li><strong>Корпоративная настройка защиты от сброса параметров до заводских настроек.</strong> При подготовке компонента «Владелец устройства» теперь
-имеется возможность настроить параметры разблокировки защиты от сброса параметров до заводских настроек (FRP) путем задания пакета
-{@code DeviceManagerPolicy.EXTRA_PROVISIONING_RESET_PROTECTION_PARAMETERS}. Приложение NFC Programmer
-может после перезагрузки устройства предоставить эти параметрыс целью разблокировки FRP и его подготовки
-(без необходимости запрашивать ранее настроенную учетную запись Google). Если не изменить эти параметры,
-заводские настройки сохранятся не позволят активировать устройство без ввода активированных ранее
-учетных данных Google.
-<p>Кроме того, задав ограничения на использование служб Google Play, компонент «Владелец устройства» может указать альтернативные учетные записи
-Google для разблокировки FRP и замены учетных записей, активированных на устройстве.</p>
-</li>
-<img src="{@docRoot}preview/images/work-profile-screen.png" srcset="{@docRoot}preview/images/work-profile-screen.png 1x, {@docRoot}preview/images/work-profile-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-<li><strong>Отслеживание использования данных.</strong> Владелец профиля или устройства теперь может запрашивать статистику использования
-данных, которая отображается в разделе <strong>Настройки &gt; Использование данных</strong>, с помощью новых методов
-{@code android.app.usage.NetworkStatsManager}. Владельцам профилей автоматически предоставляется
-разрешение запрашивать данные профиля, которым они управляют, тогда как владельцам устройств предоставляется доступ к сведениям об использовании данных
-основного управляемого пользователя.</li>
-<li><strong>Управление разрешениями на выполнение.</strong>
-<p>Владелец профиля или устройства может задавать политику разрешений
-для всех запросов на использование среды выполнения любых приложений с помощью
-{@code DevicePolicyManager.setPermissionPolicy()}. Это позволяет выбрать, будет ли система предлагать пользователю предоставить разрешение
-как обычно, или она будет автоматически предоставлять разрешения или отказывать в них. В последнем случае
-пользователю не удастся изменить выбор, сделанный владельцем профиля или устройства на экране
-разрешений приложения в разделе <strong>Настройки</strong>.</p></li>
-<li><strong>VPN в разделе «Настройки».</strong> Приложения VPN теперь отображаются в разделе
-<strong>Настройки &gt; Другие сети &gt; VPN</strong>.
-Кроме того, сведения в уведомлениях об использовании VPN теперь зависят от настроек самой VPN.
- Для владельца профиля уведомления зависят от того, настроена ли VPN для
-управляемого профиля, личного профиля или же того и другого. Для владельца устройства уведомления зависят от того, настроена ли VPN для
-всего устройства.</li>
-<li><strong>Уведомление о состоянии «В работе».</strong> Теперь, когда приложения
-из управляемого профиля выполняет операцию в фоновом режиме, в строке состояния появляется значок портфеля. Кроме того, если после разблокировки устройства
-открывается операция приложения из управляемого профиля, отображается всплывающее уведомление о том,
-что операция выполняется в рабочем профиле.
-</li>
-</ul>
-
-<p class="note">
-  Подробные сведения обо всех изменениях в API-интерфейсах в версии M Developer Preview представлены в <a href="{@docRoot}preview/download.html">отчете о различиях между API-интерфейсами</a>.
-</p>
diff --git a/docs/html-intl/intl/ru/preview/backup/index.jd b/docs/html-intl/intl/ru/preview/backup/index.jd
deleted file mode 100644
index 1f9dacc..0000000
--- a/docs/html-intl/intl/ru/preview/backup/index.jd
+++ /dev/null
@@ -1,327 +0,0 @@
-page.title=Автоматическое резервное копирование для приложений
-page.tags=backup, previewresources, androidm
-page.keywords=резервное копирование, автоматическое резервное копирование, предварительная версия
-page.image=images/cards/card-auto-backup_2x.png
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Содержание документа</h2>
-      <ol>
-        <li><a href="#overview">Обзор</a></li>
-        <li><a href="#configuring">Настройка резервного копирования данных</a></li>
-        <li><a href="#testing">Тестирование конфигурации резервного копирования</a></li>
-        <li><a href="#issues">Известные проблемы</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Пользователи зачастую тратят очень много времени и усилий на создание данных и настройку параметров в приложениях.
- Поэтому одна из важнейших задач при разработке платформы — сделать так, чтобы пользователь не терял свои данные, если его устройство вышло из строя или он решил перейти на новое.
- Устройства под управлением Android M Preview
-отлично справляются с этой задачей, автоматически выполняя резервное копирование данных
-приложения в Google Drive. Если пользователь перейдет на новое устройство, данные приложений будут автоматически перенесены
-на него.
-</p>
-
-<p>
-  Автоматическое резервное копирование предусмотрено для всех приложений, установленных на устройствах под управлением Android M Preview. При этом
-вам не нужно добавлять в приложение дополнительный код. Система сама предложит пользователю возможность включить или отключить
-автоматическое резервное копирование данных. Вы также можете указать, для каких данных приложения следует создавать резервные копии, а для каких — нет.
-</p>
-
-<p>
-  В этой статье описывается новое поведение системы и порядок указания данных приложения,
-подлежащих резервному копированию.
-</p>
-
-<h2 id="overview">Обзор</h2>
-
-<p>
-  При автоматическом резервном копировании данные, создаваемые в вашем приложении на устройстве пользователя, отпраляются в
-Google Drive пользователя и происходит их шифрование, что позволяет предотварить потерю данных. Хранилище для ваших данных предоставляется совершенно
-бесплатно. Более того, данные резервного копирования засчитываются вне личной квоты пользователя на использование ресурсов Google Drive. В период использования M Developer Preview
-пользователи могут хранить в облаке до 25 МБ данных для каждого приложения Android.
-</p>
-
-<p>
-  Автоматическое резервное копирование выполняется каждые 24 часа, когда устройство не используется, находится в режиме зарядки и подключено к сети
-Wi-Fi. При соблюдении необходимых условий служба диспетчера резервного копирования отправляет все доступные резервные копии данных
-в облако. Когда пользователь переходит на использование нового устройства или удаляет и заново устанавливает
-приложение, для которого имеется резервная копия, выполняется операция восстановления и резервные копии данных переносятся в каталог
-переустановленного приложения.
-</p>
-
-<p class="note">
-  <strong>Примечание.</strong> Если ваше приложение использует устаревшую
-<a href="{@docRoot}google/backup/index.html">службу резервного копирования Android</a>, то
-вместо нового поведения системы будет применяться существующий механизм резервного копирования.
-</p>
-
-
-<h3 id="auto-exclude">Автоматически исключаемые файлы данных</h3>
-
-<p>
-  Не все данные приложения подлежат резервному копированию. В частности, временные файлы и кэш сохранять не нужно. Поэтому служба
-автоматического резервного копирования по умолчанию исключает из этого процесса определенные файлы данных:
-</p>
-
-<ul>
-  <li>файлы в каталогах, на которые ссылаются методы {@link android.content.Context#getCacheDir
-getCacheDir()} и {@link android.content.ContextWrapper#getCodeCacheDir getCodeCacheDir()};
-
-  </li>
-
-  <li>файлы во внешнем хранилище, кроме файлов, находящихся в каталогах, на которые ссылается метод
-{@link android.content.Context#getExternalFilesDir getExternalFilesDir()};
-
-  </li>
-
-  <li>файлы в каталоге, на который ссылается метод
-{@link android.content.Context#getNoBackupFilesDir getNoBackupFilesDir()}.
-  </li>
-</ul>
-
-<h2 id="configuring">Настройка резервного копирования данных</h2>
-
-<p>
-  Резервные копии создаются для данных, создаваемых любым приложением, которое установлено на устройстве под управлением M Preview, исключение составляют только 
-файлы, обозначенные в предыдущем разделе. Если вы хотите самостоятельно определить,
-какие данные вашего приложения подлежат резервному копированию, а какие нет, это можно сделать с помощью соответствующих настроек в манифесте приложения.
-</p>
-
-<h3 id="include-exclude">Включение или исключение данных</h3>
-
-<p>
-  В зависимости о того, какие данные требуются вашему приложению и как вы их сохраняете, вам может потребоваться задать определенные правила
-для включения или исключения определенных файлов или каталогов. Служба автоматического резервного копирования
-поддерживает настройку таких правил посредством XML-файла конфигурации и
-манифеста приложения. В манифесте приложения можно указать файл конфигурации схемы резервного копирования, как показано в примере
-ниже.
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:fullBackupContent="&#64;xml/mybackupscheme"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-<p>
-  В этом примере кода атрибут <code>android:fullBackupContent</code> задает XML-файл,
-расположенный в каталоге <code>res/xml/</code> проекта приложения, который называется
-<code>mybackupscheme.xml</code>. В этом файле конфигурации содержатся правила резервного
-копирования файлов. В следующем примере кода демонстрируется файл конфигурации, в котором из процесса резервного копирования исключается определенный
-файл:
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;full-backup-content&gt;
-    &lt;exclude domain="database" path="device_info.db"/&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  В этом примере конфигурации резервного копирования из операции исключается только определенный файл базы данных.
-  Для всех остальных файлов будут создаваться резервные копии.
-</p>
-
-<h4>Синтаксис конфигурации резервного копирования</h4>
-
-<p>
-  Служба резервного копирования предоставляет вам возможность указать, какие файлы следует включить в процесс резервного копирования или
-исключить из него. Синтаксис XML-файла конфигурации резервного копирования данных следующий:
-</p>
-
-<pre>
-&lt;full-backup-content&gt;
-    &lt;include domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-    &lt;exclude domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  С помощью перечисленных ниже элементов и атрибутов можно указать файлы, которые вы хотите включить в процесс резервного копирования или исключить из
-него:
-</p>
-
-<ul>
-  <li>
-  <code>&lt;include&gt;</code>: используйте этот элемент, если хотите, чтобы система не создавала резервные копии всех данных в вашем приложении, как это происходит по умолчанию, а копировала только определенный набор данных.
- Если указан тег
-<code>&lt;include&gt;</code>, система создает резервные копии <em>только для ресурсов</em>
-с этим элементом.
-  </li>
-
-  <li>
-  <code>&lt;exclude&gt;</code>: используйте этот элемент, чтобы указать набор ресурсов, которые
-следует исключить из процесса резервного копирования. В таком случае система будет создавать резервные копии всех данных в приложении, кроме ресурсов с этим
-элементом;
-  </li>
-
-  <li>
-  <code>domain.</code>: тип ресурса, который необходимо включить в резервное копирование или исключить из него. Допустимые
-значения для этого атрибута могут быть следующие:
-  </li>
-
-  <li style="list-style: none">
-  <ul>
-    <li>
-    <code>root</code>: указывает на то, что ресурс находится в корневом каталоге приложения;
-    </li>
-
-    <li>
-    <code>file</code>: соответствует ресурсу в каталоге, возвращаемом методом
-{@link android.content.Context#getFilesDir getFilesDir()};
-    </li>
-
-    <li>
-    <code>database</code>: соответствует базе данных, возвращаемой методом
-{@link android.content.Context#getDatabasePath getDatabasePath()} или классом
-{@link android.database.sqlite.SQLiteOpenHelper};
-    </li>
-
-    <li>
-    <code>sharedpref</code>: соответствует объекту {@link android.content.SharedPreferences},
-возвращаемому методом
-{@link android.content.Context#getSharedPreferences getSharedPreferences()};
-    </li>
-
-    <li>
-    <code>external</code>: указывает на то, что ресурс находится во внешнем хранилище, и соответствует
-файлу в каталоге, возвращаемом методом
-{@link android.content.Context#getExternalFilesDir getExternalFilesDir()};
-    </li>
-
-    <li>
-    <code>path</code>: путь к ресурсу, который необходимо включить в резервное копирование или исключить
-из него.
-    </li>
-  </ul>
-  </li>
-</ul>
-
-
-<h3 id="prohibit">Запрет резервного копирования данных</h3>
-
-<p>
-  Можно запретить автоматическое резервное копирование любых данных приложения. Для этого в манифесте в элементе приложения задайте для атрибута
-<code>android:allowBackup</code> значение<code>false</code>.
- Как это делается, видно в примере кода ниже:
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:allowBackup="false"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-
-<h2 id="testing">Тестирование конфигурации резервного копирования</h2>
-
-<p>
-  После создания конфигурации резервного копирования необходимо ее протестировать и убедиться, что ваше приложение сохраняет данные и впоследствии
-они могут быть должным образом восстановлены.
-</p>
-
-
-<h4>Включение журнала резервного копирования</h4>
-
-<p>
-  Чтобы упростить для себя анализ обработки вашего XML-файла функцией резервного копирования, прежде чем приступать к тестированию,
-включите ведение журнала:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell setprop log.tag.BackupXmlParserLogging VERBOSE
-</pre>
-
-<h4>Тестирование резервного копирования</h4>
-
-<p>Чтобы вручную запустить процесс резервного копирования, сначала активируйте диспетчер резервного копирования, выполнив следующую
-команду:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr run
-</pre>
-
-<p>
-  Затем вручную выполните резервное копирование вашего приложения с помощью следующей команды, указав название
-пакета в виде параметра <code>&lt;PACKAGE&gt;</code>:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr fullbackup &lt;PACKAGE&gt;</pre>
-
-
-<h4>Тестирование восстановления</h4>
-
-<p>
-  Чтобы вручную запустить процесс восстановления после резервного копирования данных приложения, выполните следующую команду, указав название
-пакета в виде параметра <code>&lt;PACKAGE&gt;</code>:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr restore &lt;PACKAGE&gt;
-</pre>
-
-<p class="warning">
-  <b>Предупреждение.</b> При выполнении этого действия перед операцией
-восстановления работа приложения будет остановлена и все его данные удалены.
-</p>
-
-<p>
-  Чтобы запустить процесс восстановления, удалите ваше приложение и снова установите его. Данные
-приложения будут автоматически восстановлены из облака сразу по завершении установки.
-</p>
-
-
-<h4>Устранение неполадок резервного копирования</h4>
-
-<p>
-  При возникновении проблем можно стереть резервные копии данных и все связанные с ними метаданные. Для этого 
-отключите и повторного включите резервное копирование в разделе <strong>Настройки &gt; Резервное копирование</strong>, восстановите заводские настройки устройства или выполните
-следующую команду:
-</p>
-
-<pre>$ adb shell bmgr wipe &lt;TRANSPORT&gt; &lt;PACKAGE&gt;</pre>
-
-<p>
-  Перед значением <code>&lt;TRANSPORT&gt;</code> должен быть префикс <code>com.google.android.gms</code>.
-  Чтобы получить список транспорта, выполните следующую команду:
-</p>
-
-<pre>$ adb shell bmgr list transports</pre>
-
-<h2 id="issues">Известные проблемы</h2>
-
-<p>Ниже перечислены известные проблемы в работе службы автоматического резервного копирования.</p>
-
-<ul>
-  <li><strong>Google Cloud Messaging</strong>
-– существует проблема с приложениями, использующими Google Cloud Messaging для отправки push-уведомлений. Она связана с тем,
-что при резервном копировании кода регистрации, возвращаемого Google Cloud Messaging, может нарушиться отправка
-push-уведомлений для восстановленного приложения. Важно запросить у API-интерфейса новый код
-регистрации после установки приложения на новое устройство, что не выполняется в случае резервного копирования
-старого кода регистрации. Чтобы избежать этого, исключите код регистрации из списка файлов
-для резервного копирования.
-  </li>
-</ul>
diff --git a/docs/html-intl/intl/ru/preview/behavior-changes.jd b/docs/html-intl/intl/ru/preview/behavior-changes.jd
deleted file mode 100644
index 0623ea7..0000000
--- a/docs/html-intl/intl/ru/preview/behavior-changes.jd
+++ /dev/null
@@ -1,402 +0,0 @@
-page.title=Изменения в работе
-page.keywords=предварительная версия,пакет sdk,совместимость
-sdk.platform.apiLevel=MNC
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>Содержание документа</h2>
-
-<ol id="toc44" class="hide-nested">
-    <li><a href="#behavior-runtime-permissions">Разрешения на выполнение</a></li>
-    <li><a href="#behavior-power">Оптимизация экономии энергии</a>
-        <ol>
-            <li><a href="#behavior-doze">Режим «Doze»</a></li>
-            <li><a href="#behavior-app-standby">Ждущий режим для приложений</a></li>
-        </ol>
-    </li>
-    <li><a href="#behavior-adoptable-storage">Подключаемые устройства хранения</a></li>
-    <li><a href="#behavior-apache-http-client">Отказ от HTTP-клиента Apache</a></li>
-    <li><a href="#behavior-audiomanager-Changes">Изменения в классе AudioManager</a></li>
-    <li><a href="#behavior-test-selection">Выделение текста</a></li>
-    <li><a href="#behavior-keystore">Изменения в хранилище ключей Android</a></li>
-    <li><a href="#behavior-network">Изменения в работе с Wi-Fi и сетями</a></li>
-    <li><a href="#behavior-camera">Изменения в службе камеры</a></li>
-    <li><a href="#behavior-art-runtime">Среда выполнения ART</a></li>
-    <li><a href="#behavior-apk-validation">Проверка пакетов APK</a></li>
-    <li><a href="#behavior-afw">Изменения в Android for Work</a></li>
-</ol>
-
-<h2>Различия между API-интерфейсами</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API уровня 22 в M Preview &raquo;</a> </li>
-</ol>
-
-
-<h2>См. также:</h2>
-<ol>
-<li><a href="{@docRoot}preview/api-overview.html">Обзор API-интерфейсов M Developer Preview</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>Наряду с новыми функциями и возможностями, версия M Developer Preview также включает в себя ряд 
-системных изменений и изменений в работе API-интерфейсов. В этом документе рассматриваются
-определенные ключевые изменения, о которых следует знать, чтобы учитывать их при разработке приложений.</p>
-
-<p>Если вы ранее публиковали приложения для Android, то примите во внимание,
-что эти изменения в платформе могут повлиять на работу ваших уже опубликованных приложений.</p>
-
-<h2 id="behavior-runtime-permissions">Разрешения на выполнение</h1>
-<p>В M Preview представлена новая модель разрешений: теперь пользователи могут управлять разрешениями приложений
-напрямую во время работы с ними. Такая модель обеспечивает улучшенное управление
-разрешениями и одновременно позволяет оптимизировать установку и автоматическое обновление для разработчиков.
-Пользователи могут предоставлять разрешения или отзывать их отдельно для каждого установленного приложения. </p>
-
-<p>В ваших приложениях, предназначенных для M Preview, следует в обязательном порядке проверить такие разрешения и при необходимости
-запросить их. Чтобы определить, было ли вашему приложению предоставлено разрешение, вызовите новый метод
-{@code Context.checkSelfPermission()}. Чтобы запросить разрешение, вызовите новый метод
-{@code Activity.requestPermission()}. Даже если ваше приложение не предназначено для использования в версии M, вам все равно следует
-протестировать его с использованием новой модели разрешений.</p>
-
-<p>Подробные сведения о поддержке новой модели
-разрешений вашим приложением представлены в статье
-<a href="{@docRoot}preview/features/runtime-permissions.html">Разрешения</a>. Как можно проверить влияние новой модели на ваше приложение, читайте в
-<a href="{@docRoot}preview/testing/guide.html#runtime-permissions">руководстве по тестированию</a></p>
-
-<h2 id="behavior-power">Оптимизация экономии энергии</h2>
-<p>В M Preview реализован ряд новых функций оптимизации экономии энергии для неактивных устройств и приложений.</p>
-
-<h3 id="behavior-doze">Режим «Doze»</h3>
-<p>Если устройство отключено от сети и остается неактивным (и с выключенным экраном) в течение определенного времени, 
-оно переходит в режим <em>Doze</em> и старается, чтобы система не выходила из спящего состояния. В этому режиме
-устройство периодически возобновляет свою обычную работу на краткие промежутки времени, чтобы произвести
-синхронизацию и позволить системе выполнить какие-либо отложенные операции.</p>
-
-<p>Когда устройство находится в режиме «Doze», к приложениям применяются следующие ограничения:</p>
-<ul>
-<li>Доступ к сети отключен до тех пор, пока от службы Google Cloud Messaging
-не будет получен высокоприоритетный сигнал побуждения приложения к действию.</li>
-<li>Механизмы <a href="{@docRoot}reference/android/os/PowerManager.WakeLock.html">WakeLock</a> игнорируются.</li>
-<li>Будильники, установленные с помощью класса {@link android.app.AlarmManager}, отключаются, кроме
-тех, которые установлены с помощью методов {@link android.app.AlarmManager#setAlarmClock setAlarmClock()}
-и {@code AlarmManager.setAndAllowWhileIdle()}.</li>
-<li>Поиск сетей Wi-Fi не производится.</li>
-<li>Операции синхронизации и заданий для адаптеров синхронизации и {@link android.app.job.JobScheduler} блокируются.
-</li>
-</ul>
-</p>
-<p>После выхода из режима «Doze», устройство приступает к выполнению любых отложенных заданий и операций синхронизации.</p>
-<p>Чтобы протестировать эту функцию, подключите устройство под управлением M Preview к своему компьютеру
-для разработки и выполните следующие команды:
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-<p class="note"><strong>Примечание.</strong> В предстоящем выпуске службы
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">Google Cloud Messaging</a>
-реализована возможность назначения сообщений
-с высоким приоритетом. При получении вашим приложением сообщений GCM с высоким приоритетом ему на короткое время предоставляется
-доступ к сети, даже если устройство находится в режиме «Doze».
-</p>
-
-<p>Советы по тестированию работы приложений в режиме «Doze» представлены
-в <a href="{@docRoot}preview/testing/guide.html#doze-standby">руководстве
-по тестированию</a>. </p>
-
-<h3 id="behavior-app-standby">Ждущий режим для приложений</h3>
-<p>В M Preview система может определять, что приложения неактивны, когда они
-не используются. Приложение считается неактивным по прошествии определенного периода времени до тех пор, пока система
-не обнаружит один из следующих сигналов:</p>
-
-<ul>
-<li>приложение явным образом запущено пользователем;</li>
-<li>у приложения имеется процесс, который в настоящее время выполняется на переднем плане (это может быть как сама операция или служба переднего плана,
-так и процесс, используемый другой операцией или службой переднего плана).</li>
-<li>приложение создает уведомление, которое пользователи видят на экране блокировки или в
-области уведомлений.</li>
-<li>пользователь явным образом исключает приложение из списка для оптимизации
-в разделе <strong>Настройки</strong>.</li>
-</ul>
-
-<p>Если устройство отключено от электросети, для приложений, которые считаются неактивными, закрывается доступ к Интернету,
-а их операции синхронизации и задания приостанавливаются. После подключения устройства к электросети доступ к Интернету для приложений возобновится
-и они смогут приступить к выполнению любых ожидающих заданий и операций синхронизации. Если устройство
-неактивно в течение длительного времени, неактивным приложениям раз в день предоставляется доступ к сети.</p>
-
-<p>Чтобы протестировать эту функцию, подключите устройство под управлением M Preview к своему компьютеру
-для разработки и выполните следующие команды:
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell am set-idle &lt;packageName&gt; true
-$ adb shell am set-idle &lt;packageName&gt; false
-$ adb shell am get-idle &lt;packageName&gt;
-</pre>
-
-<p class="note"><strong>Примечание.</strong> В предстоящем выпуске службы
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">Google Cloud Messaging</a> (GCM)
-реализована возможность назначения сообщений
-с высоким приоритетом. При получении вашим приложением сообщений GCM с высоким приоритетом ему на короткий промежуток времени предоставляется
-доступ к сети, даже если приложение находится в неактивном состоянии.
-</p>
-
-<p>Советы по тестированию работы приложений в ждущем режиме представлены
-в <a href="{@docRoot}preview/testing/guide.html#doze-standby">руководстве
-по тестированию</a>. </p>
-
-<h2 id="behavior-adoptable-storage">Подключаемые устройства хранения</h2>
-<p>
-В M Preview пользователи могут <em>подключать</em> внешние устройства хранения, такие как SD-карты, и использовать их как внутреннее хранилище,
-зашифровав и отформатировав требуемым образом. Благодаря этому
- пользователи могут переносить как сами приложения, так свои файлы для этих приложений с одного устройства хранения на другое. При переносе
-приложений система руководствуется настройкой
-<a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a>
-в манифесте.</p>
-
-<p>Если ваше приложение работает с указанными ниже API-интерфейсами или полями, следует помнить, что возвращаемые ими пути к файлам
-будут динамически изменяться при перемещении приложения с внутреннего хранилища на внешнее устройство или наоборот.
-При создании путей к файлам настоятельно рекомендуется всегда вызывать эти API-интерфейсы динамическим образом.
-Не используйте жестко запрограммированные пути к файлам и не указывайте созданные ранее полные пути к файлам.</p>
-
-<ul>
-<li>Методы {@link android.content.Context}:
-    <ul>
-        <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
-        <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
-        <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
-        <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
-        <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
-        <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
-        <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
-        <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
-        <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
-    </ul>
-</li>
-<li>Поля {@link android.content.pm.ApplicationInfo}:
-    <ul>
-        <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
-    </ul>
-</li>
-</ul>
-
-<p>Для отладки этой функции в Developer Preview подключите USB-устройство,
- к устройству Android посредством USB-кабеля On-The-Go (OTG) и выполните следующую команду:</p>
-
-<pre class="no-prettyprint">
-$ adb shell sm set-force-adoptable true
-</pre>
-
-<h2 id="behavior-apache-http-client">Отказ от HTTP-клиента Apache</h2>
-<p>В M Preview удалена поддержка HTTP-клиента Apache. Если ваше приложение, разработанное для
-Android 2.3 (уровень API 9) или более поздней версии, использует этот клиент, вам необходимо воспользоваться вместо него классом {@link java.net.HttpURLConnection}.
- Этот API-интерфейс более эффективный, поскольку он сокращает использование сетевого трафика за счет прозрачного сжатия
-и кэширования ответов, а также сводит к минимуму потребление энергии. Чтобы продолжить использовать API-интерфейсы HTTP Apache,
-сначала объявите в своем файле {@code build.gradle} следующую зависимость compile-time:
-</p>
-<pre>
-android {
-    useLibrary 'org.apache.http.legacy'
-}
-</pre>
-<p>Вместо OpenSSL в Android теперь будет использоваться библиотека 
-<a href="https://boringssl.googlesource.com/boringssl/" class="external-link">BoringSSL</a>
-. Если вы используете в ваших приложениях Android NDK, не связывайте его с криптографическими библиотеками,
-которые не входят в состав API-интерфейса NDK, такими как {@code libcrypto.so} и {@code libssl.so}. Эти библиотеки
-не являются общедоступными API-интерфейсами, и в разных выпусках или на разных устройствах они могут быть изменены или разбиты без предварительного уведомления.
-Кроме того, этим вы можете создать уязвимости в системе безопасности вашего продукта. Вместо этого внесите изменения в
-собственный код для вызова криптографических API-интерфейсов Java посредством JNI или статической ссылки на
-библиотеку криптографии по своему выбору.</p>
-
-<h2 id="behavior-audiomanager-Changes">Изменения в классе AudioManager</h2>
-<p>Теперь в платформе не поддерживается настройка уровня громкости напрямую или отключение звука определенных потоков с помощью класса {@link android.media.AudioManager}.
- Метод {@link android.media.AudioManager#setStreamSolo(int,boolean)
-setStreamSolo()} больше не используется. Вместо него следует вызывать метод
-{@code AudioManager.requestAudioFocus()}. Также больше не используется метод
-{@link android.media.AudioManager#setStreamMute(int,boolean) setStreamMute()};
-вместо него следует вызывать метод {@code AudioManager.adjustStreamVolume()}
-и передавать в него значение направления {@code ADJUST_MUTE} или {@code ADJUST_UNMUTE}.</p>
-
-<h2 id="behavior-test-selection">Выделение текста</h2>
-
-<img src="{@docRoot}preview/images/text-selection.gif" style="float:right; margin:0 0 20px 30px" width="360" height="640" />
-
-<p>Теперь, когда пользователь выделяет текст в приложении, такие дополнительные действия как
-<em>Вырезать</em>, <em>Копировать</em> и <em>Вставить</em>, можно отображать на
-<a href="http://www.google.com/design/spec/patterns/selection.html#selection-text-selection" class="external-link">перемещаемой панели инструментов</a>. Реализация взаимодействия пользователя с текстом аналогична той, которая используется для
-контекстного меню,
-как описано в статье
-<a href="{@docRoot}guide/topics/ui/menus.html#CABforViews">Запуск контекстного меню для отдельных представлений</a>.</p>
-
-<p>Чтобы реализовать перемещаемую панель инструментов для выделения текста, внесите в ваши существующие приложения
-следующие изменения.</p>
-<ol>
-<li>В объекте {@link android.view.View} или {@link android.app.Activity} измените вызовы
-{@link android.view.ActionMode} с
-{@code startActionMode(Callback)} на {@code startActionMode(Callback, ActionMode.TYPE_FLOATING)}.</li>
-<li>Возьмите свою реализацию класса {@code ActionMode.Callback} и сделайте его наследуемой от класса
-{@code ActionMode.Callback2}.</li>
-<li>Переопределите метод {@code Callback2.onGetContentRect()} для указания координат объекта
-{@link android.graphics.Rect} контента (например, прямоугольника выделения текста) в представлении.</li>
-<li>Если расположение прямоугольника больше недействительно и это единственный элемент, который не подлежит пересчитыванию,
-вызовите метод {@code ActionMode.invalidateContentRect()}.</li>
-</ol>
-
-<p>Если вы используете
-<a href="{@docRoot}tools/support-library/index.html">вспомогательную библиотеку Android</a> версии 22.2, то помните, что перемещаемым панелям инструментов
-не свойственна обратная совместимость и по умолчанию для управления объектами {@link android.view.ActionMode}
-используется библиотека appcompat. Это означает, что перемещаемые панели инструментов не будут отображаться. Чтобы включить поддержку
-{@link android.view.ActionMode} в
-{@link android.support.v7.app.AppCompatActivity}, вызовите метод
-{@code android.support.v7.app.AppCompatActivity.getDelegate()}, затем вызовите 
-{@code android.support.v7.app.AppCompatDelegate.setHandleNativeActionModesEnabled()} для возвращенного объекта
-{@link android.support.v7.app.AppCompatDelegate} и задайте для параметра input
-значение {@code false}. Этот вызов возвращает управление объектами {@link android.view.ActionMode}
-платформе. На устройствах под управлением M Preview платформа поддерживает как режимы
-{@link android.support.v7.app.ActionBar}, так и режимы перемещаемых панелей инструментов, тогда как на устройствах под управлением более ранних версий
-поддерживаются только режимы {@link android.support.v7.app.ActionBar}.</p>
-
-<h2 id="behavior-keystore">Изменения в хранилище ключей Android</h2>
-<p>В M Preview
-<a href="{@docRoot}training/articles/keystore.html">поставщик хранилища ключей Android</a> больше не поддерживает
-DSA. ECDSA по-прежнему поддерживается.</p>
-
-<p>Ключи, для которых не требуется шифрование в хранилище, больше не будут удаляться при отключении или сбросе защищенного экрана блокировки
-(например, пользователем или администратором устройства). Ключи, для которых требуется шифрование
-в хранилище, во время таких событий будут удалены.</p>
-
-<h2 id="behavior-network">Изменения в работе с Wi-Fi и сетями</h2>
-
-<p>Ниже перечислены изменения в API-интерфейсах для работы с Wi-Fi и сетями, реализованные в M Preview.</p>
-<ul>
-<li>Теперь ваши приложения могут изменять состояние объектов {@link android.net.wifi.WifiConfiguration}
-только в том случае, если эти объекты вы создали сами. Вам запрещено изменять или удалять объекты
-{@link android.net.wifi.WifiConfiguration}, созданные пользователем или другими приложениями.
-</li>
-<li>
-Ранее, если приложение принудительно подключало устройство к определенной сети Wi-Fi с помощью метода
-{@link android.net.wifi.WifiManager#enableNetwork(int,boolean) enableNetwork()} и настройки
-{@code disableAllOthers=true}, то устройство отключалось от других сетей, например, от
-сотовой сети. В M Preview устройство больше не отключается от других сетей. Если
-в вашем приложении для параметра {@code targetSdkVersion} выбрано значение {@code “20”} или меньше, оно закрепляется за выбранной сетью
-Wi-Fi. Если же параметр {@code targetSdkVersion} имеет значение {@code “21”} или больше, следует использовать
-API-интерфейсы для работы с несколькими сетями (такие как
-{@link android.net.Network#openConnection(java.net.URL) openConnection()},
-{@link android.net.Network#bindSocket(java.net.Socket) bindSocket()} и новый метод
-{@code ConnectivityManager.bindProcessToNetwork()}), чтобы обеспечить отправку
-сетевого трафика приложения в выбранную сеть.</li>
-</ul>
-
-<h2 id="behavior-camera">Изменения в службе камеры</h2>
-<p>В M Preview изменена модель получения доступа к ресурсам в службе камеры.
- Если раньше запросы доступа обрабатывались в порядке поступления, то теперь процессы с высоким приоритетом имеют преимущество.
-  В работе службы камеры произошли следующие изменения:</p>
-<ul>
-<li>Доступ к ресурсам подсистемы камеры, включая открытие и настройку устройства камеры,
-предоставляется в зависимости от того, какой приоритет имеет процесс клиентского приложения. Процессы приложений с операциями, которые
-видны пользователю или выполняются на переднем плане, обычно имеют более высокий приоритет, что повышает возможность доступа к ресурсам камеры и их
-использования.</li>
-<li>Когда приложение с более высоким приоритетом пытается использовать камеру, активные клиенты камеры для приложений с более низким приоритетом могут быть исключены из очереди доступа.
-  В устаревшем API-интерфейсе {@link android.hardware.Camera}
-это приводит к вызову
-{@link android.hardware.Camera.ErrorCallback#onError(int,android.hardware.Camera) onError()}
-для исключенного клиента. В API-интерфейсе {@link android.hardware.camera2 Camera2} в таких случаях для исключенного клиента вызывается
-{@link android.hardware.camera2.CameraDevice.StateCallback#onDisconnected(android.hardware.camera2.CameraDevice) onDisconnected()}.
-</li>
-<li>На устройствах, где камера позволяет такое, отдельным процессам
-приложения предоставляется возможность одновременно и независимо друг от друга открывать и использовать ресурсы камеры. При этом служба камеры теперь отслеживает и исключает ситуации с использованием ресурсов несколькими процессами,
-когда одновременный доступ вызывает значительное снижение производительности или негативно влияет на возможности
-всех открытых камер. Это изменение
-может привести к отключению доступа для клиентов с более низким приоритетом, даже если к этой же камере не пытаются получить доступ другие приложения.
-
-</li>
-<li>
-Смена пользователя приводит к исключению активных клиентов камеры в приложениях, относящихся к предыдущей учетной записи,
-из очереди доступа.  Доступ к камере предоставлен только профилям, которыми владеет активный пользователь устройства.
-Фактически это означает, что если, например, пользователь переключился с гостевой учетной записи на другую, гостевой аккаунт не сможет покинуть запущенные процессы
-, использующие ресурсы подсистемы камеры.
-</li>
-</ul>
-
-<h2 id="behavior-art-runtime">Среда выполнения ART</h2>
-<p>Среда выполнения ART теперь должным образом реализует правила доступа для метода
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()}. Это
-изменение позволило устранить проблему, связанную с тем, что в предыдущих версиях система Dalvik неправильно проверяла правила доступа.
-Если ваше приложение использует метод
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} и вы
-хотите переопределить проверки доступа, вызовите метод
-{@link java.lang.reflect.Constructor#setAccessible(boolean) setAccessible()}, присвоив параметру input
-значение {@code true}. Если ваше приложение использует
-<a href="{@docRoot}tools/support-library/features.html#v7-appcompat">библиотеку appcompat v7</a> или
-<a href="{@docRoot}tools/support-library/features.html#v7-recyclerview">библиотеку recyclerview v7</a>,
-вам необходимо установить актуальные версии этих библиотек. В противном случае убедитесь в том,
-что любые настраиваемые классы, на которые имеются ссылки из XML, обновлены и их конструкторы классов доступны.</p>
-
-<p>В M Preview обновлено поведение динамического компоновщика. Теперь он распознает разницу между
-{@code soname} библиотеки и путем к ней
-(<a href="https://code.google.com/p/android/issues/detail?id=6670" class="external-link">ошибка 6670, о которой сообщалось в открытых источниках</a>),
-и позволяет выполнять поиск по {@code soname}.
- Приложения, которые ранее работали, но содержали неправильные записи {@code DT_NEEDED}
-(обычно абсолютные пути в файловой системе компьютера для сборки), теперь при загрузке могут выдавать ошибки.</p>
-
-<p>В M Preview правильно реализован флаг {@code dlopen(3) RTLD_LOCAL}. Обратите внимание, что
-{@code RTLD_LOCAL} используется по умолчанию, поэтому будут затронуты вызовы {@code dlopen(3)}, которые явно не используют
-{@code RTLD_LOCAL} (за исключением случаев, когда ваше приложение явным образом использует{@code RTLD_GLOBAL}). Поскольку используется
-{@code RTLD_LOCAL}, символы не будут доступны для библиотек, загруженных с использованием последующих вызовов
-{@code dlopen(3)} (в противоположность ссылкам из записей {@code DT_NEEDED}).</p>
-</p>
-
-<h2 id="behavior-apk-validation">Проверка пакетов APK</h2>
-<p>Теперь платформа более строго подходит к проверке пакетов APK. Пакет APK считается поврежденным, если файл объявлен
-в манифесте, но отсутствует в самом пакете APK. Пакет APK подлежит повторной подписи в случае удаления любого его
-содержимого.</p>
-
-<h2 id="behavior-afw">Изменения в Android for Work</h2>
-<p>В M Preview представлены следующие изменения работы Android for Work:</p>
-<ul>
-<li><strong>Рабочие контакты в контексте личных сведений.</strong> Теперь при просмотре пользователем прошлых звонков в журнале вызовов Google Dialer
-в нем отображаются и рабочие контакты.
-Чтобы скрыть эти сведения в журнале вызовов, установите для параметра {@code DevicePolicyManager.setCrossProfileCallerIdDisabled()} значение {@code true}.
- Рабочие контакты могут отображаться на устройствах через Bluetooth вместе с
-личными контактами только в том случае, если
-для параметра {@code DevicePolicyManager.setBluetoothContactSharingDisabled()} задано значение {@code false}. По
-умолчанию для этого параметра установлено значение {@code true}.
-</li>
-<li><strong>Удаление конфигурации Wi-Fi.</strong> Конфигурации Wi-Fi, добавленные владельцем профиля
-(например, посредством вызова метода
-{@link android.net.wifi.WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
-addNetwork()}), теперь удаляются при удалении соответствующего рабочего профиля.</li>
-<li><strong>Блокировка конфигурации Wi-Fi.</strong> Пользователю больше не удастся изменить или удалить любые конфигурации Wi-Fi, созданные активным 
-владельцем устройства. Пользователь по-прежнему может создавать
-и изменять свои собственные конфигурации Wi-Fi, если для этого пользователя не задана константа
-{@link android.os.UserManager#DISALLOW_CONFIG_WIFI} {@link android.os.UserManager}.</li>
-<li><strong>Загрузка приложения «Контроллер политики работы» путем добавления учетной записи Google.</strong> Теперь при добавлении на устройство учетной записи Google,
-для управления которой требуется приложение «Контроллер политики работы»,
-вне управляемого контекста пользователю предлагается установить соответствующее приложение.
-Это также применимо к учетным записям, добавляемым посредством мастера первоначальной настройки устройства в разделе
-<strong>Настройки &gt; Учетные записи</strong>.</li>
-<li><strong>Изменения, касающиеся работы API-интерфейса DevicePolicyManager.</strong>
-Вызов метода {@link android.app.admin.DevicePolicyManager#setCameraDisabled(android.content.ComponentName,boolean) setCameraDisabled()}
-затрагивает только использование камеры пользователем, который его вызвал; вызов этого метода из управляемого профиля
-не влияет на работу приложений камеры, выполняющихся для основного пользователя. Кроме того, метод
-{@link android.app.admin.DevicePolicyManager#setKeyguardDisabledFeatures(android.content.ComponentName,int) setKeyguardDisabledFeatures()}
-теперь доступен как для владельцев устройства, так и для владельцев профиля. Владелец профиля может задать
-следующие ограничения для блокировки клавиатуры:
-<ul>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_TRUST_AGENTS} и
-{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_FINGERPRINT}, которые влияют на настройки
-блокировки клавиатуры для родительского пользователя профиля;</li>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS}, которое
-влияет только на уведомления, создаваемые приложениями в управляемом профиле.</li>
-</ul>
-</li>
-</ul>
diff --git a/docs/html-intl/intl/ru/preview/download.jd b/docs/html-intl/intl/ru/preview/download.jd
deleted file mode 100644
index 9afc62b..0000000
--- a/docs/html-intl/intl/ru/preview/download.jd
+++ /dev/null
@@ -1,360 +0,0 @@
-page.title=Загрузки
-page.image=images/cards/card-download_16-9_2x.png
-
-@jd:body
-
-<div style="position:relative; min-height:600px">
-
-  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
-
-    <p class="sdk-terms-intro">Прежде чем приступить к загрузке и установке компонентов пакета SDK Android Preview,
-примите следующие положения и условия.</p>
-
-    <h2 class="norule">Положения и условия</h2>
-
-    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
-Это лицензионное соглашение для пакета SDK Android Preview (далее «Лицензионное соглашение»).
-
-1. Введение
-
-1.1. Лицензия на пакет SDK Android Preview (далее по тексту настоящего Лицензионного соглашения – «Preview», который включает системные файлы Android, пакеты API-интерфейсов и файлы библиотеки Preview, если такие доступны) передается в соответствии с положениями настоящего Лицензионного соглашения. Настоящее Лицензионное соглашение является юридически обязывающим договором между компанией Google и любым лицом, использующим Preview.
-
-1.2. В настоящем Лицензионном соглашении термин «Android» означает набор программного обеспечения Android для устройств, предлагаемый к использованию в рамках проекта Android Open Source Project, который доступен на веб-сайте http://source.android.com/ (сведения, размещенные на этом сайте, могут периодически обновляться).
-
-1.3. Под термином «Google» понимается корпорация Google Inc., главный офис которой находится по адресу 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States (США).
-
-2. Принятие лицензионного соглашения
-
-2.1. Использование Preview возможно только после принятия условий настоящего Лицензионного соглашения. Запрещается использовать Preview, если вы не согласны с указанными в настоящем документе условиями и положениями.
-
-2.2. Нажатие кнопки принятия условий и/или использование Preview означает, что вы согласны с положениями настоящего Лицензионного соглашения.
-
-2.3. Вы не вправе использовать Preview и принимать условия данного Лицензионного соглашения, если по законам США или иных стран, включая страну вашего проживания или использования Preview, запрещается передавать Preview в ваш адрес.
-
-2.4. Если вы используете Preview в рамках своей компании или организации, вы соглашаетесь взять на себя обязательства по соблюдению настоящего Лицензионного соглашения от имени своего работодателя или другого юридического лица, и вы тем самым подтверждаете и гарантируете, что обладаете полными юридическими полномочиями связать вашего работодателя или иное подобное юридическое лицо обязательствами по настоящему Лицензионному соглашению. Если вы не обладаете необходимыми полномочиями, вы не вправе принимать указанные в настоящем документе условия и положения или использовать Preview от имени вашего работодателя или другого юридического лица.
-
-3. Лицензия на Preview от Google
-
-3.1. В соответствии с условиями настоящего Лицензионного соглашения Google предоставляет вам ограниченную, бесплатную и неэксклюзивную лицензию без права передачи и подлежащую отмене, на использование Preview, лично или в рамках своей компании или организации, исключительно в целях разработки приложений для платформы Android.
-
-3.2. Вы соглашаетесь с тем, что Google или третьим сторонам принадлежат все юридические и имущественные права, а также правовой интерес в отношении Preview, в том числе любые права на объекты интеллектуальной собственности, которые имеются в Preview. Термин «Права на интеллектуальную собственность» означает все возможные права в рамках патентного права, авторского права, закона о коммерческой тайне, закона о товарных знаках, а также иные возможные имущественные права. Google оставляет за собой все права, не предоставленные вам в явном виде.
-
-3.3. Вам запрещается использовать Preview в любых целях, которые однозначно не определены в настоящем Лицензионном соглашении. За исключением случаев, предусмотренных применимыми сторонними лицензиями, вам запрещается: (a) копировать (кроме случаев резервного копирования), изменять, адаптировать, повторно распространять, декомпилировать, осуществлять инженерный анализ, деассемблировать или создавать производные элементы Preview или иной его части; а также (b) загружать любую часть Preview в мобильные телефоны или иные устройства, помимо персонального компьютера, объединять любые части Preview с другим программным обеспечением, распространять любое программное обеспечение или устройства, содержащие части Preview.
-
-3.4. Вы соглашаетесь с тем, что не будете предпринимать никаких действий, которые прямо или косвенно могут привести к фрагментированию платформы Android, включая помимо прочего распространение набора средств разработки программного обеспечения, полученного из Preview, участие в создании таких средств и содействие их продвижению в любой форме.
-
-3.5. Использование, воспроизведение и распространение компонентов Preview, на которые распространяется лицензия на программное обеспечение с открытым исходным кодом, регулируются исключительно положениями и условиями такой лицензии на программное обеспечение с открытым исходным кодом, а не настоящим Лицензионным соглашением. Вы соглашаетесь обеспечивать хорошую репутацию получателя лицензии в отношении таких лицензии на программное обеспечение с открытым исходным кодом в рамках всех предоставленных ему прав, а также не допускать каких-либо действий, которые могут привести к аннулированию, приостановлению или нарушению таких прав
-
-3.6. Вы соглашаетесь с тем, что форма и содержание Preview , предоставляемого Google, могут быть изменены без предварительного уведомления, а также с тем, что будущие версии Preview могут оказаться несовместимыми с приложениями, разработанными в предыдущих версиях Preview. Вы соглашаетесь с тем, что Google вправе по собственному усмотрению и без предварительного уведомления прекратить (временно или навсегда) предоставление Preview (или любых функций в составе Preview) вам или пользователям.
-
-3.7. Ни одна из частей настоящего Лицензионного соглашения не предусматривает предоставления вам права использовать любые торговые наименования, товарные знаки, знаки обслуживания, логотипы, имена доменов или иные отличительные фирменные знаки, принадлежащие Google.
-
-3.8. Вы соглашаетесь с тем, что обязуетесь не удалять, не скрывать или не изменять любые уведомления об имущественных правах (включая уведомления об авторских правах и товарных знаках), которые могут сопровождать Preview или содержаться в нем.
-
-4. Использование Preview
-
-4.1. Компания Google выражает согласие с тем, что ни по какому положению настоящего Лицензионного соглашения не получает от вас (или ваших лицензиаров) каких-либо юридических и имущественных прав, а также правового интереса в отношении любых программных приложений, разработанных вами с помощью Preview, включая любые права на объекты интеллектуальной собственности, которые имеются в таких приложениях.
-
-4.2. Вы соглашаетесь использовать Preview и создавать приложения исключительно в целях, предусмотренных (a) настоящим Лицензионным соглашением и (b) любым применимым законом, нормативным актом или общепринятыми правилами или рекомендациями в соответствующей юрисдикции (включая любые законы, касающиеся экспорта данных или программного обеспечения из США или иных соответствующих стран, а также импорта в них).
-
-4.3. Вы соглашаетесь с тем, что при использовании Preview для разработки приложений вы обязуетесь обеспечивать конфиденциальность и защищать юридические права пользователей. В случае, если пользователи предоставляют вам свои имена, пароли или иные данные для входа либо свои персональные данные, вы обязуетесь уведомить пользователей о том, что такая информация будет присутствовать в вашем приложении, и вы также обязуетесь предоставить пользователям юридически соответствующие уведомление о конфиденциальности и средства правовой защиты. Если в вашем приложении хранится личная или конфиденциальная информация, предоставленная пользователями, вы обязуетесь обеспечить ее надлежащую защиту. Если пользователь предоставляет вам сведения о своей учетной записи Google, то ваше приложение может использовать такую информацию для доступа к учетной записи Google пользователя только при условии, что пользователь предоставил вам разрешение на это, и только в тех целях, которые обозначил пользователь.
-
-4.4. Вы соглашаетесь с тем, что обязуетесь не использовать Preview для любого рода деятельности, в том числе для разработки или распространения приложений, в целях нарушения работы и повреждения серверов, сетей или иной собственности или служб Google или любой третьей стороны.
-
-4.5. Вы соглашаетесь с тем, что несете единоличную ответственность (и признаете, что компания Google не несет ответственности ни перед вами, ни перед любой третьей стороной) за любые данные, содержимое или ресурсы, которые вы создаете, передаете или демонстрируете посредством Android и/или приложений для Android, а также за любые последствия ваших действий, связанных с этим (в том числе за любые убытки и любой ущерб, которые могут быть причинены Google).
-
-4.6. Вы соглашаетесь с тем, что несете единоличную ответственность (и признаете, что компания Google не несет ответственности ни перед вами, ни перед любой третьей стороной) за любое несоблюдение обязательств по настоящему Лицензионному соглашению, обязательств по любому применимому договору с третьей стороной или предусмотренных Условиями и положениями, за нарушение любых применимых законов или нормативных актов, а также за любые последствия ваших действий, связанных с таким нарушением (в том числе за любые убытки и любой ущерб, которые могут быть причинены Google).
-
-4.7 Preview находится на стадии разработки, поэтому ваши отзывы и результаты тестирования являются важной частью процесса разработки. Используя Preview, вы признаете, что реализация некоторых функций по-прежнему находится на этапе разработки и вам не следует рассчитывать на полную функциональность стабильной версии. Вы соглашаетесь не распространять или предоставлять любые приложения, использующие Preview, поскольку поддержка Preview будет прекращена после выпуска официальной версии пакета SDK Android.
-
-5. Ваши учетные данные разработчика
-
-5.1. Вы соглашаетесь с тем, что несете ответственность за обеспечение конфиденциальности любых учетных данных разработчика, которые компания Google может вам предоставить или которые вы можете самостоятельно выбрать, а также с тем, что вы несете единоличную ответственность за все приложения, разработанные с использованием ваших учетных данных разработчика.
-
-6. Конфиденциальность и личная информация
-
-6.1. В целях постоянного совершенствования и улучшения Preview компания Google вправе собирать определенные статистические данные об использовании программного обеспечения, включая уникальный идентификатор, связанный IP-адрес, номер версии программного обеспечения, а также сведения об используемых в Preview инструментах и/или службах и способах их применения. Перед тем как любые из таких данных будут отправлены в Google, в Preview отобразится соответствующее уведомление с просьбой дать свое согласие. В случае вашего отказа предоставить такие сведения соответствующие данные собираться не будут.
-
-6.2. Собранные данные изучаются в обобщенном виде с целью улучшения Preview и хранятся в соответствии с Политикой конфиденциальности Google, которая опубликована на веб-сайте по адресу http://www.google.com/policies/privacy/.
-
-7. Сторонние приложения
-
-7.1. Если вы используете Preview для запуска приложений, разработанных третьими сторонами или получающих доступ к данным, содержимому или ресурсам, предоставляемым третьей стороной, вы соглашаетесь с тем, что Google не несет ответственности за такие приложения, данные, содержимое или ресурсы. Вы осознаете, что единоличную ответственность за все данные, содержимое или ресурсы, доступ к которым вы можете получить посредством таких приложений третьих сторон, несет лицо, предоставившее их, а также то, что Google не несет ответственности за любые убытки или любой ущерб, которые могут возникнуть в результате использования вами любых таких сторонних приложений, данных, содержимого или ресурсов и в результате обращения к ним.
-
-7.2. Вы должны быть осведомлены о том, что данные, содержимое и ресурсы, предоставляемые вам посредством таких сторонних приложений, могут быть защищены правами на объекты интеллектуальной собственности, принадлежащие предоставляющим их лицам (или иным лицам либо компаниям от их имени). Вам запрещается изменять, сдавать в аренду, передавать, продавать, распространять такие данные, содержимое или ресурсы (полностью или частично), а также создавать на их основе производные элементы, если у вас нет на это разрешения от соответствующих владельцев.
-
-7.3. Вы осознаете, что использование вами таких сторонних приложений, данных или ресурсов может регулироваться отдельными условиями, заключенными между вами и соответствующей третьей стороной.
-
-8. Использование API-интерфейсов Google
-
-8.1. API-интерфейсы для получения данных Google.
-
-8.1.1. В случае использования вами любых API для получения данных из Google вы осознаете, что такие данные могут быть защищены правами на объекты интеллектуальной собственности, принадлежащие Google или предоставляющим их сторонам (или иным лицам либо компаниям от их имени). Использование вами подобных API может регулироваться дополнительными Условиями использования. Вам запрещается изменять, сдавать в аренду, передавать, продавать, распространять такие данные (полностью или частично), а также создавать на их основе производные элементы, если это не разрешено соответствующими Условиями использования.
-
-8.1.2. Если вы используете какие-либо API-интерфейсы для получения данных пользователя из Google, вы осознаете и соглашаетесь с тем, что вы обязуетесь получать такие данные исключительно с прямого согласия пользователя и только в тех целях, которые обозначил пользователь.
-
-9. Прекращение действия Лицензионного соглашения
-
-9.1 Настоящее Лицензионное соглашение остается в силе до тех пор, пока его действие не будет прекращено вами или Google, как указано ниже.
-
-9.2. Если вы желаете прекратить действие настоящего Лицензионного соглашения, вы вправе сделать это, прекратив использование Preview и любых соответствующих учетных данных разработчика.
-
-9.3. Google вправе в любое время прекратить действие настоящего Лицензионного соглашения, отправив предварительное уведомление или без него.
-
-9.4 Действие настоящего Лицензионного соглашения автоматически прекращается без предварительного уведомления или выполнения иных действий сразу после любого из следующих событий:
-(A) компания Google прекращает предоставление Preview или определенных частей Preview пользователям на территории страны, в которой вы проживаете или используете услуги компании;
-(B) компания Google выпускает окончательную версию SDK Android.
-
-9.5 В случае прекращения действия настоящего Лицензионного соглашения прекращается действие лицензии, предоставленной в рамках Лицензионного соглашения, и вам следует незамедлительно прекратить любое использование Preview, тогда как положения, изложенные в разделах 10, 11, 12 и 14 продолжают действовать бессрочно.
-
-10. ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ
-
-10.1. ВЫ ЧЕТКО ОСОЗНАЕТЕ И БЕЗОГОВОРОЧНО СОГЛАШАЕТЕСЬ С ТЕМ, ЧТО ВЫ ИСПОЛЬЗУЕТЕ PREVIEW ИСКЛЮЧИТЕЛЬНО НА СВОЙ СТРАХ И РИСК И ЧТО PREVIEW ПРЕДОСТАВЛЯЕТСЯ ВАМ НА УСЛОВИЯХ «КАК ЕСТЬ» И «КАК ДОСТУПНО» БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ СО СТОРОНЫ КОМПАНИИ GOOGLE.
-
-10.2 ИСПОЛЬЗОВАНИЕ ВАМИ PREVIEW И ЗАГРУЗКА ЛЮБЫХ МАТЕРИАЛОВ И ИХ ПОЛУЧЕНИЕ ИНЫМ СПОСОБОМ С ПОМОЩЬЮ PREVIEW ВЫПОЛНЯЕТСЯ ПО ВАШЕМУ СОБСТВЕННОМУ УСМОТРЕНИЮ НА СВОЙ СТРАХ И РИСК. ВСЯ ОТВЕТСТВЕННОСТЬ ЗА ЛЮБОЙ УЩЕРБ, ПРИЧИНЕННЫЙ ВАШЕЙ ВЫЧИСЛИТЕЛЬНОЙ СИСТЕМЕ ИЛИ ДРУГОМУ ОБОРУДОВАНИЮ, А ТАКЖЕ ЗА ПОТЕРЮ ДАННЫХ, ВЫЗВАННУЮ ПОДОБНЫМ ИСПОЛЬЗОВАНИЕМ, ВОЗЛАГАЕТСЯ НА ВАС. НЕ ОГРАНИЧИВАЯ ВЫШЕСКАЗАННОЕ, ВЫ ПОНИМАЕТЕ, ЧТО PREVIEW НЕ ЯВЛЯЕТСЯ СТАБИЛЬНЫМ ВЫПУСКОМ И МОЖЕТ СОДЕРЖАТЬ ОШИБКИ, ДЕФЕКТЫ И УЯЗВИМОСТИ В СИСТЕМЕ БЕЗОПАСНОСТИ, КОТОРЫЕ МОГУТ ПРИВЕСТИ К СЕРЬЕЗНЫМ ПОВРЕЖДЕНИЯМ, ВКЛЮЧАЯ ПОЛНУЮ И БЕЗВОЗВРАТНУЮ ПОТЕРЮ РАБОТОСПОСОБНОСТИ ВАШЕГО КОМПЬЮТЕРА ИЛИ ИНОГО УСТРОЙСТВА.
-
-10.3. КОМПАНИЯ GOOGLE БЕЗОГОВОРОЧНО ОТКАЗЫВАЕТСЯ ОТ ЯВНЫХ И НЕЯВНЫХ ГАРАНТИЙ И УСЛОВИЙ ЛЮБОГО РОДА, ВКЛЮЧАЯ ПОМИМО ПРОЧЕГО НЕЯВНЫЕ ГАРАНТИИ И УСЛОВИЯ ТОВАРНОГО СОСТОЯНИЯ, ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ И ОТСУТСТВИЯ НАРУШЕНИЙ ПРАВ СОБСТВЕННОСТИ.
-
-11. ОГРАНИЧЕНИЕ ОТВЕТСТВЕННОСТИ
-
-11.1. ВЫ ЧЕТКО ОСОЗНАЕТЕ И БЕЗОГОВОРОЧНО СОГЛАШАЕТЕСЬ С ТЕМ, ЧТО КОМПАНИЯ GOOGLE, ЕЕ ДОЧЕРНИЕ И АФФИЛИРОВАННЫЕ КОМПАНИИ И ЛИЦЕНЗИАРЫ НЕ НЕСУТ ПЕРЕД ВАМИ ОТВЕТСТВЕННОСТИ, НЕЗАВИСИМО ОТ ЕЕ ПРИЧИНЫ И ВИДА, ЗА КАКИЕ-ЛИБО ПРЯМЫЕ, КОСВЕННЫЕ, СЛУЧАЙНЫЕ, СПЕЦИАЛЬНЫЕ, ОПОСРЕДОВАННЫЕ И ШТРАФНЫЕ УБЫТКИ, ПОНЕСЕННЫЕ ВАМИ, ВКЛЮЧАЯ ПОТЕРЮ ДАННЫХ, ВНЕ ЗАВИСИМОСТИ ОТ ТОГО, БЫЛА ЛИ КОМПАНИЯ GOOGLE ИЛИ ЕЕ ПРЕДСТАВИТЕЛИ ИЗВЕЩЕНЫ О ВОЗМОЖНОСТИ ТАКОГО УЩЕРБА.
-
-12 Освобождение от ответственности
-
-12.1. В максимально допустимой законом степени вы соглашаетесь защищать, освобождать от ответственности и возможных претензий компанию Google, ее аффилированные компании и их соответствующих руководителей, служащих, сотрудников и агентов от всех возможных правовых требований, действий, судебных исков или разбирательств, а также от всех возможных убытков, обязательств, ущерба, издержек и расходов (включая обоснованные вознаграждения для адвокатов), возникающих в связи (a) с использованием вами Preview, (b) любыми приложениями, разрабатываемыми вами с помощью Preview и нарушающими любые права на объекты интеллектуальной собственности любого лица, а также порочащие любое лицо либо нарушающие права таких лиц на публичность и конфиденциальность, а также (c) в связи с любым несоблюдением вами положений настоящего Лицензионного соглашения.
-
-13. Изменения в Лицензионном соглашении
-
-13.1. Компания Google вправе вносить изменения в настоящее Лицензионное соглашение по мере выхода новых версий Preview. При внесении изменений Google создает новую версию Лицензионного соглашения и размещает ее на веб-сайте, на котором размещен Preview.
-
-14. Общие правовые условия
-
-14.1. Настоящее Лицензионное соглашение составляет полный текст юридического соглашения между вами и компанией Google, регулирует использование вами Preview (за исключением услуг, которые Google предоставляет на основании отдельного письменного соглашения) и полностью заменяет собой все предыдущие соглашения между вами и компанией Google в отношении Preview.
-
-14.2. Вы соглашаетесь с тем, что отсутствие каких-либо действий или судебных исков со стороны Google, направленных на соблюдение каких-либо правовых норм или исполнение средств правовой защиты, установленных настоящим Лицензионным соглашением (или которыми Google обладает в соответствии с каким-либо действующим законом), не означает отказ компании Google от своих прав и не препятствует компании Google использовать эти права или средства защиты.
-
-14.3. Если какой-либо судебный орган, уполномоченный рассматривать этот вопрос, признает недействительность какого-либо положения данного Лицензионного соглашения, то соответствующее положение будет исключено из Лицензионного соглашения с сохранением действия всех остальных его положений. Остальные положения Лицензионного соглашения по-прежнему будут действовать, и их соблюдение может обеспечиваться в судебном порядке.
-
-14.4. Вы признаете и соглашаетесь с тем, что все участники группы компаний, среди которых Google является материнской компанией, являются сторонними бенефициарами Лицензионного соглашения и что эти компании имеют право пользоваться привилегиями (или правами), предоставляемыми по настоящему Лицензионному соглашению, и напрямую требовать их соблюдения в судебном порядке. Все остальные физические и юридические лица не являются сторонними бенефициарами Лицензионного соглашения.
-
-14.5. ОГРАНИЧЕНИЯ НА ЭКСПОРТ. ИСПОЛЬЗОВАНИЕ PREVIEW РЕГУЛИРУЕТСЯ ЗАКОНАМИ И НОРМАТИВНЫМИ АКТАМИ США, КАСАЮЩИМИСЯ ЭКСПОРТА. ВЫ ОБЯЗУЕТЕСЬ СОБЛЮДАТЬ ВСЕ НАЦИОНАЛЬНЫЕ И МЕЖДУНАРОДНЫЕ ЗАКОНЫ ОБ ЭКСПОРТЕ, ПРИМЕНИМЫЕ К PREVIEW. ДАННЫЕ ЗАКОНЫ НАЛАГАЮТ ОГРАНИЧЕНИЯ НА РЕГИОНЫ, КРУГ ЛИЦ И СПОСОБ КОНЕЧНОГО ИСПОЛЬЗОВАНИЯ.
-
-14.6. Вы не вправе переуступать либо передавать права, предоставляемые по настоящему Лицензионному соглашению, без предварительного письменного согласия Google; любые попытки переуступки без такого согласия считаются недействительными. Вы обязуетесь не делегировать свои полномочия или обязательства по настоящему Лицензионному соглашению без предварительного письменного согласия Google.
-
-14.7. Лицензионное соглашение, а также взаимоотношения между вами и компанией Google в рамках настоящего Лицензионного соглашения регулируются законодательством штата Калифорния за исключением его норм коллизионного права. Вы и компания Google признаете, что урегулирование любых правовых вопросов, связанных с данным Лицензионным соглашением, относится исключительно к юрисдикции судов округа Санта-Клара, штат Калифорния. Несмотря на это, вы соглашаетесь с тем, что компания Google по-прежнему имеет право обращаться за наложением судебного запрета (или за получением аналогичного вида неотложной судебной защиты) в суды любой юрисдикции.
-  </div><!-- sdk terms -->
-
-
-
-    <div id="sdk-terms-form">
-      <p>
-        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
-        <label id="agreeLabel" for="agree">Я прочитал(а) и принимаю изложенные выше положения и условия</label>
-      </p>
-      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
-    </div>
-
-
-  </div><!-- end TOS -->
-
-
-  <div id="landing">
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Содержание документа</h2>
-      <ol>
-        <li><a href="#sdk">Android 6.0 SDK</a></li>
-        <li><a href="#docs">Документация для разработчиков</a></li>
-        <li><a href="#images">Системные образы оборудования</a></li>
-      </ol>
-     <h2>Legacy downloads</h2>
-        <ol>
-           <li><a href="{@docRoot}preview/download_mp1.html">Developer Preview 1</a></li>
-		   <li><a href="{@docRoot}preview/download_mp2.html">Developer Preview 2</a></li>
-        </ol>
-  </div>
-</div>
-
-
-<p>
-  В состав SDK Android M Preview входят инструменты для разработки, системные файлы Android и файлы библиотеки, призванные
-помочь вам в тестировании ваших приложений и новых API-интерфейсов, которые будут реализованы в предстоящем выпуске платформы. В этом документе
-рассказывается, как загрузить необходимые компоненты Preview для тестирования ваших приложений.
-</p>
-
-
-<h2 id="sdk">Android 6.0 SDK</h2>
-
-<p>
-  Загрузить SDK Preview можно с помощью <a href="{@docRoot}tools/help/sdk-manager.html">менеджера SDK Android</a>. Дополнительные сведения
-о загрузке и настройке SDK Preview представлены в статье <a href="{@docRoot}preview/setup-sdk.html#downloadSdk">Настройка SDK Preview</a>.
-</p>
-
-
-<h2 id="docs">Документация для разработчиков</h2>
-
-<p>
-  В пакете документации для разработчиков, который доступен для загрузки, представлены подробные сведения об API-интерфейсах, а также о различиях между API-интерфейсами для Preview.
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Description</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="docs-dl">
-    <td>Android M Preview 3<br>Developer Docs</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >m-preview-3-developer-docs.zip</a><br>
-      MD5: d99b14b0c06d31c8dfecb25072654ca3<br>
-      SHA-1: 9cefeeda07676130da606a1796e1c00fffc667c1
-    </td>
-  </tr>
-</table>
-
-
-<h2 id="images">Системные образы оборудования</h2>
-
-<p>
-  С помощью этих системных образов можно установить предварительную версию платформы на физическое устройство для
-тестирования. Используя один из этих образов для настройки устройства, вы можете установить и протестировать ваше приложение, чтобы узнать, как оно будет работать в будущей версии
-платформы. В процессе установки системного образа
-<em>на устройстве удаляются все данные</em>, поэтому перед установкой образа обязательно сделайте резервное копирование данных.
-
-</p>
-
-<p class="warning">
-  <b>Предупреждение.</b> Перечисленные ниже системные образы Android являются предварительными и могут быть изменены. Использование вами
-этих образов регулируется Лицензионным соглашением на использование пакета SDK Android Preview. Системные образы предварительной версии Android
-не являются стабильными и могут содержать ошибки и дефекты,
-способные повредить ваши компьютеры, устройства и данные. Системные образы предварительной версии Android не проходят такое же тестирование,
-как заводская ОС. Поэтому в результате использования этих образов ваш телефон и установленные на нем приложения
-и службы могут перестать работать.
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Device</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="hammerhead">
-    <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >hammerhead-MPA44I-preview-2ebbc049.tgz</a><br>
-      MD5: 91a924fb0c9f8e716e3b4c9954fd0dbb<br>
-      SHA-1: 2ebbc049b68c4da8baeee3e42bb94d7a965ba4a3
-    </td>
-  </tr>
-  <tr id="shamu">
-    <td>Nexus 6 <br>"shamu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >shamu-MPA44I-preview-62b9c486.tgz</a><br>
-      MD5: ac6e58da86125073d9c395257fd42664<br>
-      SHA-1: 62b9c486fd7a5020e228d53ca5acd5c1857e48ff
-    </td>
-  </tr>
-  <tr id="volantis">
-    <td>Nexus 9 <br>"volantis"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >volantis-MPA44I-preview-5c30a6e2.tgz</a><br>
-      MD5: 7f83768757913d3fea945a661020d185<br>
-      SHA-1: 5c30a6e2acd11a81f4105b12d23ff654f534f699
-    </td>
-  </tr>
-
-  <tr id="fugu">
-    <td>Nexus Player <br>"fugu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >fugu-MPA44I-preview-2860040a.tgz</a><br>
-      MD5: 438da8d37da9e341a69cfb16a4001ac5<br>
-      SHA-1: 2860040a326582f1ff5f702bf9a1ef002717fc98
-      </td>
-  </tr>
-
-</table>
-
-<h3 id="install-image">Установка образа на устройство</h3>
-
-<p>
-  Чтобы воспользоваться образом устройства для тестирования, установите его на совместимое устройство. Следуйте
-инструкциям по установке системного образа.
-</p>
-
-<ol>
-  <li>Загрузите и распакуйте один из указанных выше пакетов с системным образом.</li>
-  <li>Создайте резервные копии данных, которые хотите сохранить.</li>
-  <li>Следуйте инструкциям, приведенным на сайте
-<a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>,
-чтобы прошить ваше устройство с использованием выбранного образа.</li>
-</ol>
-
-<p class="note">
-  <strong>Примечание.</strong> После прошивки устройства для разработки с использованием системного образа с предварительной версией платформы
-она будет автоматически обновлена до следующего выпуска Preview по беспроводной сети.
-</p>
-
-<h3 id="revertDevice">Сброс параметров устройства до заводских настроек</h3>
-
-<p>
-  Чтобы удалить Preview и восстановить заводские настройки устройства, перейдите на сайт
-<a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a>
-и загрузите образ, который требуется использовать для прошивки. Следуйте инструкциям, приведенным на странице,
-чтобы прошить ваше устройство с использованием выбранного образа.
-</p>
-
-  </div><!-- landing -->
-
-</div><!-- relative wrapper -->
-
-
-
-<script>
-  var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
-  function onDownload(link) {
-
-    $("#downloadForRealz").html("Download " + $(link).text());
-    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
-
-    $("#tos").fadeIn('fast');
-    $("#landing").fadeOut('fast');
-
-    return true;
-  }
-
-
-  function onAgreeChecked() {
-    /* verify that the TOS is agreed */
-    if ($("input#agree").is(":checked")) {
-      /* reveal the download button */
-      $("a#downloadForRealz").removeClass('disabled');
-    } else {
-      $("a#downloadForRealz").addClass('disabled');
-    }
-  }
-
-  function onDownloadForRealz(link) {
-    if ($("input#agree").is(':checked')) {
-    /*
-      $("#tos").fadeOut('fast');
-      $("#landing").fadeIn('fast');
-    */
-
-      ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
-
-    /*
-      location.hash = "";
-    */
-      return true;
-    } else {
-      return false;
-    }
-  }
-
-  $(window).hashchange( function(){
-    if (location.hash == "") {
-      location.reload();
-    }
-  });
-
-</script>
diff --git a/docs/html-intl/intl/ru/preview/features/app-linking.jd b/docs/html-intl/intl/ru/preview/features/app-linking.jd
deleted file mode 100644
index f991717..0000000
--- a/docs/html-intl/intl/ru/preview/features/app-linking.jd
+++ /dev/null
@@ -1,123 +0,0 @@
-page.title=Связи приложений
-page.image=images/cards/card-app-linking_2x.png
-page.keywords=связывание приложений, прямые ссылки, намерения
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Содержание документа</h2>
-      <ol>
-        <li><a href="#web-assoc">Объявление связи с веб-сайтом</a></li>
-        <li><a href="#verfy-links">Запрос проверки связи приложений</a></li>
-        <li><a href="#user-manage">Настройки связи приложений</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Система намерений Android представляет собой гибкий механизм, позволяющий приложениям обрабатывать контент и запросы.
-  Многие приложения могут объявлять в своих фильтрах намерений соответствующие шаблоны URI. При нажатии пользователем на веб-ссылку
-, у которой нет обработчика запуска по умолчанию, платформа может выдать ему диалоговое окно со списком доступных
- приложений, объявивших соответствующие фильтры намерений.
-</p>
-
-<p>
-  В Android M Developer Preview представлена поддержка связей приложений. Она выгодно отличается от существующих методов обработки ссылок,
- предоставляя разработчикам возможность связывать приложение с принадлежащим им веб-доменом. Благодаря этой связи
-платформа автоматически, не спрашивая у пользователя, определит приложение, которое следует использовать по умолчанию для обработки определенной
-веб-ссылки.
-</p>
-
-
-<h2 id="web-assoc">Объявление связи с веб-сайтом</h2>
-
-<p>
-  Чтобы установить связь, владельцу сайта следует объявить связь с приложением. Для этого владелец 
-размещает в домене файл JSON с именем {@code statements.json}. Местопложение файла должно быть хорошо известно.
-
-</p>
-
-<pre>http://&lt;domain&gt;:&lt;optional port&gt;/.well-known/statements.json</pre>
-
-<p class="note">
-  <strong>Примечание.</strong>
-  В период использования M Developer Preview проверка файла JSON выполняется по протоколу HTTP. В официальном
-выпуске платформы она будет осуществляться по зашифрованному протоколу HTTPS.
-</p>
-
-<p>
-  В этом файле JSON содержатся сведения о приложении Android, которое следует использовать в качестве обработчика по умолчанию для URL
-в этом домене. Для определения приложения используются следующие поля:
-</p>
-
-<ul>
-  <li>{@code package_name}: имя пакета, объявленное в манифесте приложения;</li>
-
-  <li>{@code sha256_cert_fingerprints}: контрольная сумма SHA256 сертификата, который использовался для подписи вашего приложения.
-    Чтобы сгенерировать контрольную сумму, можно выполнить следующую команду в программе Java keytool:
-    <pre>keytool -list -v -keystore my-release-key.keystore</pre>
-  </li>
-</ul>
-
-<p>
-  Ниже представлен пример содержимого и формата файла
-{@code statements.json}.
-</p>
-
-<pre>
-[{
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": "<strong>&lt;package name&gt;</strong>",
-    "sha256_cert_fingerprints": ["<strong>6C:EC:C5:0E:34:AE....EB:0C:9B</strong>"]
-  }
-}]
-</pre>
-
-
-<h2 id="verfy-links">Запрос проверки связи приложений</h2>
-
-<p>
-  Приложение может отправить платформе запрос об автоматической проверке любых связей приложений, определенных в именах узлов в элементах данных
-его фильтров намерений, с использованием файлов {@code statements.json}, размещенных в
-соответствующих веб-доменах. Чтобы запросить проверку связи приложений, добавьте к каждому необходимому фильтру намерений в манифесте атрибут {@code android:autoVerify},
-как показано в следующем фрагменте кода
-манифеста:
-</p>
-
-<pre>
-&lt;activity ...&gt;
-    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-        &lt;action android:name="android.intent.action.VIEW" /&gt;
-        &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-        &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-        &lt;data android:scheme="http" android:host="www.android.com" /&gt;
-        &lt;data android:scheme="https" android:host="www.android.com" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/activity&gt;
-</pre>
-
-<p>
-  Если в манифесте приложения присутствует атрибут {@code android:autoVerify}, платформа пытается
-проверить связи приложений при установке приложения. Если платформе не
-удается сделать это, приложение не выбирается в качестве предпочтительного для обработки веб-ссылок. В следующий раз, когда пользователь
-нажмет на одну из ссылок, платформа снова отобразит для него
-соответствующее диалоговое окно.
-</p>
-
-<p class="note">
-  <strong>Примечание.</strong> При тестировании существует вероятность ложных срабатываний, когда проверка завершается
-сбоем, но при этом пользователь установил в системном приложении «Настройки» ваше приложение как используемое по умолчанию при вызове поддерживаемых ссылок
-. В таком случае диалоговое окно не отображается, а ссылка ведет напрямую в ваше приложение,
-однако это происходит из-за настроек пользователя и не означает, что проверка пройдена успешно.
-</p>
-
-
-<h2 id="user-manage">Настройки связи приложений</h2>
-
-<p>
-  Пользователи могут изменить настройки связи приложений и выбрать предпочтительный для них способ обработки URL. Для просмотра связей приложений и управления ими
-можно воспользоваться системным приложением «Настройки» (в разделе <strong>Настройки &gt; Приложения &gt; Информация о приложении &gt;
-Открывать по умолчанию</strong>.
-</p>
diff --git a/docs/html-intl/intl/ru/preview/features/runtime-permissions.jd b/docs/html-intl/intl/ru/preview/features/runtime-permissions.jd
deleted file mode 100644
index 7d12b2d..0000000
--- a/docs/html-intl/intl/ru/preview/features/runtime-permissions.jd
+++ /dev/null
@@ -1,794 +0,0 @@
-page.title=Разрешения
-page.tags=previewresources, androidm
-page.keywords=разрешения, среда выполнения, предварительная версия
-page.image={@docRoot}preview/features/images/permissions_check.png
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Краткое описание</h2>
-    <ul>
-      <li>Если ваше приложение предназначено для пакета SDK M Preview, пользователю будет предложено предоставить для него разрешения
- не в процессе установки, а при работе с приложением.</li>
-      <li>Пользователь также может в любой момент отозвать разрешения, воспользовавшись экраном приложения «Настройки»
-.</li>
-      <li>Ваше приложение должно проверять наличие соответствующих разрешений при каждом запуске.
-</li>
-    </ul>
-
-    <h2>Содержание документа</h2>
-    <ol>
-      <li><a href="#overview">Обзор</a></li>
-      <li><a href="#coding">Добавление в код разрешений на выполнение</a></li>
-      <li><a href="#testing">Тестирование разрешений на выполнение</a></li>
-      <li><a href="#best-practices">Советы и рекомендации</a></li>
-    </ol>
-
-<!--
-  <h2>Related Samples</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-
-<!--
-  <h2>See also</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-  </div> <!-- qv -->
-</div> <!-- qv-wrapper -->
-
-
-<p>
-  В версии M Developer Preview представлена новая модель разрешений для приложений, которая
-оптимизирует для пользователей процесс установки и обновления приложений. Если приложение,
-работающее в M Preview, поддерживает новую модель разрешений, пользователю не нужно предоставлять какие-либо
-разрешения при установке приложения или его обновлении. Вместо этого приложение
-запрашивает разрешения, когда в них возникает необходимость, — в таких случаях система отображает для пользователя диалоговое окно с просьбой предоставить
-соответствующее разрешение.
-</p>
-
-<p>
-  Если приложение поддерживает новую модель разрешений, его, тем не менее, можно установить и
-запустить на устройстве под управлением одной из более ранних версий Android, и оно будет использовать старую модель
-разрешений.
-</p>
-
-<h2 id="overview">
-  Обзор
-</h2>
-
-<p>
-  В версии M Developer Preview представлена новая
-модель разрешений. Ниже приводится краткий обзор ее ключевых компонентов:
-</p>
-
-<ul>
-  <li>
-    <strong>Объявление разрешений.</strong> Все разрешения, которые требуются
-приложению, объявляются в его манифесте, как и в более ранних версиях платформы Android.
-  </li>
-
-  <li>
-    <strong>Группы разрешений.</strong> Разрешения
-<em>группируются</em> по типу их функциональных возможностей. Например, в группе разрешений
-<code>CONTACTS</code> находятся разрешения на чтение и запись
-контактов пользователя и информации из его профиля.
-  </li>
-
-  <li>
-    <p><strong>Ограниченные разрешения, предоставляемые во время установки.</strong> Когда
-пользователь устанавливает или обновляет приложение, система предоставляет такому приложению все запрашиваемые им
-разрешения, соответствующие константе {@link
-android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}.
-    Например, разрешения для будильника и подключения к Интернету соответствуют константе {@link
-android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL},
-поэтому они предоставляются автоматически во время установки.
-    </p>
-
-    <p>Система также может предоставить приложению подпись и системные разрешения, как описано в разделе
-<a href="#system-apps">Предоставление приложениям системных разрешений и
-подписи</a>. Пользователю <em>не предлагается</em> предоставить какие-либо разрешения
-во время установки.</p>
-  </li>
-
-  <li>
-    <strong>Предоставление пользователем разрешений во время выполнения.</strong> Когда приложение запрашивает разрешение,
-система отображает для пользователя соответствующее диалоговое окно, а затем вызывает функцию обратного вызова приложения
-с целью уведомить его о том, предоставлены ли необходимые разрешения. Если
-пользователь предоставляет разрешение, приложение получает весь набор разрешений в рамках данной функциональной области
-разрешения, который был объявлен в манифесте приложения.
-  </li>
-
-</ul>
-
-<p>
-  Новая модель разрешений влияет на поведение приложений при работе с функциями, для
-которых требуются разрешения. При использовании этой модели в разработке
- обратите внимание на следующие рекомендации:
-</p>
-
-<ul>
-
-  <li>
-    <strong>Всегда проверяйте наличие разрешений.</strong> Когда приложению необходимо выполнить
-какое-либо действие, для которого требуется разрешение, оно должно сначала проверить,
-имеется ли у него такое разрешение. Если разрешение отсутствует, приложение
-должно запросить его.
-  </li>
-
-  <li>
-    <strong>Если вам не дают разрешения, выходите из положения красиво.</strong> Если у приложения
-нет нужного разрешения, оно должно обработать эту ошибку разумно.
-    Например, если разрешение требуется лишь для необязательной функции, приложение может
-просто отключить ее. Если же приложение не может работать без данного разрешения,
- оно может отключить все свои функциональные возможности и проинформировать пользователя,
-что для работы ему требуется разрешение.
-  </li>
-
-  <div class="figure" style="width:220px" id="fig-perms-screen">
-    <img src="{@docRoot}preview/features/images/app-permissions-screen_2x.png" srcset="{@docRoot}preview/features/images/app-permissions-screen.png 1x, {@docRoot}preview/features/images/app-permissions-screen_2x.png 2x" alt="" width="220">
-    <p class="img-caption">
-      <strong>Рисунок 1.</strong> Экран разрешений в настройках приложения.
-    </p>
-  </div>
-
-  <li>
-    <strong>Разрешения можно отзывать.</strong> Пользователи могут в любое время отозвать разрешения
-приложения. Когда пользователь отзывает разрешения,
-приложение <em>не</em> уведомляется об этом. Снова повторим, что приложение должно всегда проверять наличие
-разрешений, прежде чем выполнять любые действия, для которых они необходимы.
-  </li>
-</ul>
-
-<p class="note">
-  <strong>Примечание.</strong> Если приложение предназначено для M Developer Preview, оно
-<em>должно в обязательном порядке</em> использовать новую модель разрешений.
-</p>
-
-<p>
-  На момент выпуска M Developer Preview не все приложения Google в полной мере реализуют
- новую модель разрешений. Google обновляет эти приложения
-по мере разработки M Developer Preview, чтобы они должным образом поддерживали настройки
-разрешений.
-</p>
-
-<p class="note">
-  <strong>Примечание.</strong> Если у вашего приложения имеется собственная поверхность API-интерфейса, прежде чем проксировать
-разрешения, убедитесь сначала в том, что у вызывающей операции имеются надлежащие
-разрешения на доступ к данным.
-</p>
-
-<h3 id="system-apps">
-  Предоставление приложениям системных разрешений и подписи
-</h3>
-
-<p>
-  Как правило, когда пользователь устанавливает приложение, система предоставляет такому приложению только те
-разрешения, которые соответствуют константе {@link android.content.pm.PermissionInfo#PROTECTION_NORMAL
-PROTECTION_NORMAL}. Однако в определенных ситуациях система предоставляет
-приложению больше разрешений:
-</p>
-
-<ul>
-  <li>если приложение является частью системного образа, ему автоматически предоставляются все
-разрешения, обозначенные в его манифесте;
-  </li>
-
-  <li>если в манифесте приложения запрашиваются разрешения, соответствующие константе {@link
-android.content.pm.PermissionInfo#PROTECTION_SIGNATURE PROTECTION_SIGNATURE},
-а для подписи приложения использовался то же сертификат, что и для приложения,
-объявившего эти разрешения, система предоставляет запрашивающему приложению необходимые разрешения при
-установке.
-  </li>
-</ul>
-
-<p>
-  В обоих случаях пользователь по-прежнему может в любое время отозвать разрешения, обратившись к
-экрану <strong>Настройки</strong> и выбрав <strong>Приложения
-&gt;</strong> <i>название_приложения</i> <strong>&gt; Разрешения</strong>. Поэтому приложение все равноу
-должно проверять наличие разрешений во время выполнения и при необходимости запрашивать их.
-
-</p>
-
-<h3 id="compatibility">
-  Совместимость с предыдущими и последующими версиями
-</h3>
-
-<p>
-  Если приложение не предназначено для M Developer Preview, оно
-продолжает использовать старую модель разрешений даже на устройствах под управлением M Preview. В таком случае при установке приложения
- система предлагает пользователю предоставить все разрешения,
-указанные в манифесте приложения.
-</p>
-
-<p class="note">
-  <strong>Примечание.</strong> На устройствах под управлением M Developer Preview пользователь может отключить
-разрешения для любого приложения (включая устаревшие приложения) на экране «Настройки».
- Если пользователь решит отключить разрешения для устаревших приложений, система
-автоматически отключит соответствующие функциональные возможности. Когда приложение пытается
-выполнить операцию, для которой требуется такое разрешение, это
-не обязательно приведет к возникновению исключения. Вместо этого оно может выдать пустой набор данных,
-сигнал об ошибке или иным образом обозначить непредвиденное поведение. Например, если запросить
-календарь, не имея соответствующего разрешения, метод возвратит пустой набор данных.
-</p>
-
-<p>
-  При установке приложения с использованием новой модели разрешений на устройство
-под управлением другой версии ОС, отличной от M Preview,
-система рассматривает такое приложение как любое другое и предлагает
-пользователю предоставить все объявленные разрешения уже во время установки.
-</p>
-
-<p class="note">
-  <strong>Примечание.</strong> В случае с предварительной версией в качестве минимальной версии пакета SDK
-следует задать версию SDK M Preview, чтобы получить возможность компилировать код с помощью пакета SDK предварительной версии. Это означает,
-что вы не сможете протестировать такие приложения на старых платформах
-во время использования предварительной версии для разработчиков.
-</p>
-
-<h3 id="perms-vs-intents">Разрешения и намерения</h3>
-
-<p>
-  Во многих случаях при разработке приложения у вас есть выбор между двумя способами выполнения задачи:
- вы можете настроить приложение таким образом, чтобы оно самостоятельно запрашивало соответствующие разрешения на выполнение
-операции, или же можно указать ему использовать намерение, чтобы задачу выполнило
-другое приложение.
-</p>
-
-<p>
-  Например, предположим, что вашему приложению требуется возможность делать снимки с помощью камеры устройства.
- Ваше приложение может запросить разрешение
-<code>android.permission.CAMERA</code>, которое позволит ему напрямую получить доступ
-к камере. Затем ваше приложение использует API-интерфейсы камеры
-для управления камерой и получения снимков. Благодаря такому подходу ваше приложение получает
-полный контроль над процессом фотографирования. Кроме того, это позволяет вам вставить пользовательский интерфейс камеры
-в свое приложение.
-</p>
-
-<p>
-  Если же вам не требуется такой контроль, просто воспользуйтесь намерением {@link
-android.provider.MediaStore#ACTION_IMAGE_CAPTURE ACTION_IMAGE_CAPTURE}
-для запроса изображения. Когда вы запускаете намерение, пользователю предлагается выбрать
-приложение камеры (если оно отличается от приложения камеры по умолчанию), после чего
-это приложение делает снимок. Приложение камеры возвращает полученное изображение в метод {@link
-android.app.Activity#onActivityResult onActivityResult()} вашего приложения.
-</p>
-
-<p>
-  Аналогичным образом, если вам необходимо позвонить, получить доступ к контактам пользователя и так далее,
-можно создать соответствующее намерение или запросить
-разрешение и напрямую получить доступ к нужным объектам. У каждого подхода есть
-как преимущества, так и недостатки.
-</p>
-
-<p>
-  При использовании разрешений:
-</p>
-
-<ul>
-  <li>Ваше приложение получает полный контроль над взаимодействием пользователя с интерфейсом во время выполнения
-операции. Однако такой широкий контроль усложняет вашу задачу,
-требуя разработать подходящий пользовательский интерфейс.
-  </li>
-
-  <li>Пользователю предлагается предоставить разрешения только один раз, при первом
-выполнении операции. После этого ваше приложение может выполнять операцию без вмешательства
-со стороны пользователя. Однако если пользователь не
-предоставит разрешение (или отзовет его позже), ваше приложение не сможет выполнить
-операцию.
-  </li>
-</ul>
-
-<p>
-  При использовании намерений:
-</p>
-
-<ul>
-  <li>Вам не нужно разрабатывать пользовательский интерфейс для выполнения операции, его предоставляет приложение, которое обрабатывает
-намерение. Однако это также означает, что у вас отсутствует контроль над
-взаимодействием пользователя с интерфейсом. Возможно, пользователю придется взаимодействовать с
-приложением, которое вы даже не видели.
-  </li>
-
-  <li>Если у пользователя нет приложения по умолчанию для выполнения операции, система
-предлагает ему выбрать приложение. Если пользователь не назначит обработчик
-по умолчанию, то при каждом выполнении операции для него может
-отображаться дополнительное диалоговое окно.
-  </li>
-</ul>
-
-<h2 id="coding">Добавление в код разрешений на выполнение</h2>
-
-<p>
-  Если ваше приложение предназначено для новой версии M Developer Preview, вы должны в обязательном порядке использовать
-новую модель разрешений. Это означает, что кроме объявления требуемых разрешений
-в манифесте, вам следует проверять наличие этих разрешений
-во время выполнения, а также запрашивать их, если у вас
-еще нет необходимых разрешений.
-</p>
-
-<h3 id="enabling">
-  Активация новой модели разрешений
-</h3>
-
-<p>
-  Чтобы активировать новую модель разрешений M Developer Preview, задайте для атрибута
-<code>targetSdkVersion</code> приложения значение <code>"MNC"</code>, а для атрибута
-<code>compileSdkVersion</code> – значение <code>"android-MNC"</code>. Это позволит
-включить все функции новой модели разрешений.
-</p>
-
-<p>
-  В случае с предварительной версией необходимо задать для параметра <code>minSdkVersion</code> значение
-<code>"MNC"</code>, чтобы получить возможность компилировать код с помощью пакета SDK предварительной версии.
-</p>
-
-<h3 id="m-only-perm">
-  Назначение разрешений только для M Preview
-</h3>
-
-<p>
-  В манифесте приложения можно использовать новый элемент <code>&lt;uses-permission-sdk-m&gt;</code>,
-чтобы указать, что разрешение требуется только для M Developer Preview. Если объявить
-разрешение таким способом, то при установке приложения на устройство с более старой версией платформы
-система не будет отправлять запрос пользователю или предоставлять разрешение приложению.
-С помощью элемента <code>&lt;uses-permission-sdk-m&gt;</code>
-вы можете добавлять новые разрешения
-в обновленные версии вашего приложения без принудительного запроса у пользователей разрешений при
-установке обновления.
-</p>
-
-<p>
-  Если приложение запущено на устройстве под управлением M Developer Preview,
-поведение элемента <code>&lt;uses-permission-sdk-m&gt;</code> аналогично поведению
-<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>.
-  Система не запрашивает у пользователей предоставление каких-либо разрешений, когда они устанавливают
-приложение. Вместо этого приложение само запрашивает разрешения, когда они требуются.
-</p>
-
-<h3 id="prompting">
-  Запрос разрешений
-</h3>
-
-<p>
-  Если ваше приложение использует новую модель разрешений M Developer Preview, то при первом запуске приложения
-на устройстве под управлением
-M Preview пользователю не предлагается предоставить все разрешения. Вместо этого приложение само запрашивает разрешения, когда они
-требуются. Когда приложение запрашивает разрешение, система отображает для пользователя соответствующее диалоговое
-окно.
-</p>
-
-<p>
-  Если ваше приложение запущено на устройстве с пакетом SDK уровня 22 или более низкого, то приложение использует старую
-модель разрешений. То есть при каждой устновке приложения пользователю будет предложено предоставить приложению все разрешения,
-запрашиваемые в манифесте приложения, кроме
-отмеченных элементом <code>&lt;uses-permission-sdk-m&gt;</code>.
-</p>
-
-<h4 id="check-platform">Проверка платформы, на которой выполняется приложение</h4>
-
-<p>
-  Новая модель разрешений поддерживается только на устройствах под управлением M Developer
-Preview. Прежде чем вызывать любые из этих методов, приложению следует проверить,
-на какой платформе оно выполняется,
-обратившись к значению параметра {@link android.os.Build.VERSION#CODENAME
-Build.VERSION.CODENAME}. Если устройство работает под управлением M Developer Preview,
-то значение параметра{@link android.os.Build.VERSION#CODENAME CODENAME} будет <code>"MNC"</code>.
-</p>
-
-<h4 id="check-for-permission">Проверка наличия у приложения необходимого разрешения</h4>
-
-<p>Когда пользователи пытаются выполнить какое-либо действие, для которого требуется разрешение, приложение
-проверяет, имеется ли у него в настоящее время разрешение на выполнение этой операции. Для этого
-приложение вызывает метод
-<code>Context.checkSelfPermission(<i>permission_name</i>)</code>. Приложению
-следует выполнять такую проверку даже в том случае, если ему известно, что пользователь уже предоставил
-необходимое разрешение,
-поскольку пользователь может в любое время отозвать разрешения приложения. Например, если пользователь
-хочет получить снимок с помощью приложения, то приложение вызывает метод
-<code>Context.checkSelfPermission(Manifest.permission.CAMERA)</code>.</p>
-
-<p class="table-caption" id="permission-groups">
-  <strong>Таблица 1.</strong> Разрешения и группы разрешений.</p>
-<table>
-  <tr>
-    <th scope="col">Группа разрешений</th>
-    <th scope="col">Разрешения</th>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CALENDAR</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CALENDAR</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.WRITE_CALENDAR</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CAMERA</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.CAMERA</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CONTACTS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_PROFILE</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_PROFILE</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.LOCATION</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.ACCESS_FINE_LOCATION</code>
-        </li>
-        <li>
-          <code>android.permission.ACCESS_COARSE_LOCATION</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.MICROPHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.RECORD_AUDIO</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.PHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_PHONE_STATE</code>
-        </li>
-        <li>
-          <code>android.permission.CALL_PHONE</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CALL_LOG</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CALL_LOG</code>
-        </li>
-        <li>
-          <code>com.android.voicemail.permission.ADD_VOICEMAIL</code>
-        </li>
-        <li>
-          <code>android.permission.USE_SIP</code>
-        </li>
-        <li>
-          <code>android.permission.PROCESS_OUTGOING_CALLS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SENSORS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.BODY_SENSORS</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.USE_FINGERPRINT</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SMS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.SEND_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_WAP_PUSH</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_MMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CELL_BROADCASTS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-</table>
-
-<h4 id="request-permissions">Запрос разрешений при необходимости</h4>
-
-<p>Если у приложения нет требуемого разрешения, оно вызывает метод
-<code>Activity.requestPermissions(String[], int)</code>, чтобы запросить его.
- Приложение передает в него
-требуемые разрешения, а также целочисленный код запроса.
-  Этот метод выполняется асинхронно: он возвращает результат сразу же, а после того как пользователь
-предоставляет ответ в диалоговом окне, система вызывает метод обратного вызова
-приложения с результатами и передает в него тот же код запроса, который приложение передало в метод
-<code>requestPermissions()</code>.</p>
-
-  <p>Ниже представлен пример кода для проверки наличия у приложения разрешения на чтение контактов
-пользователя и запроса соответствующего разрешения при необходимости.</p>
-
-<pre>
-if (checkSelfPermission(Manifest.permission.READ_CONTACTS)
-        != PackageManager.PERMISSION_GRANTED) {
-    requestPermissions(new String[]{Manifest.permission.READ_CONTACTS},
-            MY_PERMISSIONS_REQUEST_READ_CONTACTS);
-
-    // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
-    // app-defined int constant
-
-    return;
-}
-</pre>
-
-<h4 id="handle-response">Обработка ответа на запрос разрешений</h4>
-
-<p>
-  Когда приложение запрашивает разрешения, система отображает для пользователя соответствующее диалоговое
-окно. После получения ответа от пользователя система вызывает метод
-<code>Activity.onRequestPermissionsResult(int, String[], int[])</code>
-вашего приложения и передает в него ответ пользователя. Вашему приложению необходимо переопределить этот метод. В обратном
-вызове передается тот же код запроса, который вы передали в метод
-<code>requestPermissions()</code>. Например, если приложение запрашивает доступ на
-<code>READ_CONTACTS</code>, то метод обратного вызова
-может быть следующим:
-</p>
-
-<pre>
-&#64;Override
-public void onRequestPermissionsResult(int requestCode,
-        String permissions[], int[] grantResults) {
-    switch (requestCode) {
-        case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
-            if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
-
-                // permission was granted, yay! do the
-                // calendar task you need to do.
-
-            } else {
-
-                // permission denied, boo! Disable the
-                // functionality that depends on this permission.
-            }
-            return;
-        }
-
-        // other 'switch' lines to check for other
-        // permissions this app might request
-    }
-}
-</pre>
-
-  <p>Если пользователь предоставляет разрешение, система, в свою очередь, представляет все разрешения,
-запрашиваемые в манифесте приложения для обозначенной функциональной области. Если пользователь
-отказывает в предоставлении разрешения, вам необходимо принять меры. Например, вы можете отключить любые пункты меню
-, для использования которых требуется это разрешение.
-  </li>
-</p>
-
-<p>
-  Когда система предлагает пользователю предоставить разрешение, он может указать системе,
-чтобы она больше не запрашивала это разрешение. В этом случае,
-когда приложение использует метод <code>requestPermissions()</code> для запроса такого разрешения,
-система сразу же отклоняет запрос. При этом система вызывает ваш метод
-<code>onRequestPermissionsResult()</code> так же, как если бы пользователь повторно
-отклонил ваш запрос. Поэтому ваше приложение
-не считает, что имело место прямое взаимодействие с пользователем.
-</p>
-
-<h2 id="testing">Тестирование разрешений на выполнение</h2>
-
-
-<p>
-  Если ваше приложение предназначено для новой версии M Developer Preview, то вы должны протестировать
-его и убедиться в том, что оно должным образом обрабатывает разрешения. Не надо исходить из того, что к началу работы ваше приложение уже имеет
-любые определенные разрешения. При первом запуске приложения оно,
-скорее всего, не будет обладать разрешениями, а в дальнейшем пользователь может в любой момент отозвать или восстановить
-разрешения.
-</p>
-
-<p>
-  Вам следует протестировать ваше приложение и убедиться в том, что оно ведет себя должным образом в
-любых ситуациях, касающихся разрешений. Мы включили в состав пакета SDK M Preview SDK новые команды
-<a href="{@docRoot}tools/help/adb.html">Android
-Debug Bridge (ADB)</a>, чтобы вы могли протестировать ваше приложение с любыми настройками разрешений,
-которые вы хотите попробовать в действии.
-</p>
-
-<h3>
-  Новые команды и параметры ADB
-</h3>
-
-<p>
-  В состав пакета инструментов SDK M Preview входит ряд новых команд, позволяющих протестировать обработку разрешений
-вашим приложением.
-</p>
-
-<h4>
-  Установка с разрешениями
-</h4>
-
-<p>
-  Можно воспользоваться новым параметром <code>-g</code> команды <a href="{@docRoot}tools/help/adb.html#move"><code>adb
-  install</code></a>, который служит для установки
-приложения и предоставления всех разрешений, указанных в его манифесте:
-</p>
-
-<pre class="no-pretty-print">
-$ adb install -g &lt;path_to_apk&gt;
-</pre>
-
-<h4>
-  Предоставление разрешений и их отзыв
-</h4>
-
-<p>
-  Для предоставления разрешений установленному приложению и их отзыва можно использовать новые команды <a href="{@docRoot}tools/help/adb.html#pm">диспетчера пакетов</a>
-ADB.
-Такая функциональная возможность может быть полезна для автоматизированного тестирования.
-</p>
-
-<p>
-  Для представления разрешения используйте команду <code>grant</code> диспетчера пакетов:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<p>
-  Например, чтобы представить пакету com.example.myapp разрешение на запись
-аудио, воспользуйтесь следующей командой:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant com.example.myapp android.permission.RECORD_AUDIO
-</pre>
-
-<p>
-  Чтобы отозвать разрешение, используйте команду <code>revoke</code> диспетчера пакетов:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm revoke &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<h2 id="best-practices">Советы и рекомендации</h2>
-
-<p>
-  Новая модель разрешений делает работу пользователей удобнее,
-упрощает для них процесс установки приложений и позволяет лучше понимать,
-что делает то или иное приложение. Чтобы использовать все преимущества
-этой модели, примите во внимание следующие рекомендации:
-</p>
-
-
-<h3 id="bp-what-you-need">Запрашивайте только те разрешения, которые необходимы</h3>
-
-<p>
-  Каждый раз, когда вы запрашиваете разрешение, вы заставляете пользователя делать выбор.
-  Если пользователь отклоняет запрос, соответствующая функциональная возможность приложения отключается.
-  Вам следует сократить количество таких запросов.
-</p>
-
-<p>
-  Например, во многих случаях можно предоставить приложению доступ к нужной функции посредством
-<a href="{@docRoot}guide/components/intents-filters.html">намерения</a> вместо
-запроса разрешений. Если вашему приложению необходимо получить снимки с камеры
-телефона, можно использовать намерение {@link
-android.provider.MediaStore#ACTION_IMAGE_CAPTURE
-MediaStore.ACTION_IMAGE_CAPTURE}. Когда ваше приложение выполняет намерение, система
-предлагает пользователю выбрать уже установленное приложение камеры для
-получения снимков.
-</p>
-
-<h3 id="bp-dont-overwhelm">
-  Не перегружайте пользователя запросами
-</h3>
-
-<p>
-  Если на пользователя обрушивается сразу много запросов разрешений, он может
-решить, что все это слишком сложно, и просто закрыть приложение. Поэтому разрешения следует
-запрашивать только тогда, когда это необходимо.
-</p>
-
-<p>
-  Иногда приложению жизненно необходимы одно или несколько разрешений.
-В таких случаях имеет смысл запросить все разрешения
-сразу при запуске приложения. Например, если вы разрабатываете приложение для фотографирования, то ему
-однозначно потребуется доступ к камере устройства. Когда пользователь в первый раз запускает приложение,
-он не удивится, если приложение запросит у него разрешение на
-использование камеры. Однако если в этом же приложении имеется функция обмена фотографиями с
-контактами пользователя, возможно, <em>не следует</em> запрашивать соответствующее разрешение при
-первом запуске приложения. Лучше дождаться, когда пользователю потребуется функция обмена контентом,
-и уже тогда запросить разрешение.
-</p>
-
-<p>
-  Если в вашем приложении имеются обучающие материалы, может оказаться целесообразным запросить необходимые разрешения
-после того, как пользователь изучит материалы.
-</p>
-
-<h3 id="bp-explain">
-  Всегда поясняйте, для чего требуются те или иные разрешения
-</h3>
-
-<p>
-  В диалоговом окне запроса разрешений, которое система отображает при вызове вами метода
-<code>requestPermissions()</code>, обозначается требуемое для приложения разрешение,
-однако не указывается, для чего оно необходимо. В некоторых случаях это может озадачить пользователя.
-  Поэтому, прежде чем вызывать метод
-<code>requestPermissions()</code>, стоит пояснить пользователю, для чего вашему приложению требуются разрешения.
-</p>
-
-<p>
-  Например, приложению для фотографирования может потребоваться доступ к службам геолокации, чтобы фотографии можно было снабдить
-геотегами. Не все пользователи знают, что
-фотография может содержать данные о месте съемки, и им может показаться странным, что приложение для фотографирования запрашивает данные
-о местоположении. В этом случае полезно
-рассказать пользователю о такой возможности, <em>прежде</em> чем вызывать метод
-<code>requestPermissions()</code>.
-</p>
-
-<p>
-  Это можно сделать, в частности, внедрив такие запросы в обучающие материалы приложения. В обучающих
-материалах могут содержаться описания каждой из функций приложения с пояснением,
-какие разрешения необходимы для их использования. Например, в обучающий материал по работе с приложением для фотографирования
-можно включить описание функции обмена контентом с контактами, после чего
-пояснить, что для этого пользователю следует предоставить приложению доступ к его контактам.
- После этого приложение может вызвать метод <code>requestPermissions()</code> для запроса
-доступа. Конечно, не все пользователи обращаются к обучающим материалам,
-поэтому вам по-прежнему следует проверять наличие разрешений и при необходимости запрашивать
-их во время обычной работы приложения.
-</p>
diff --git a/docs/html-intl/intl/ru/preview/index.jd b/docs/html-intl/intl/ru/preview/index.jd
deleted file mode 100644
index 18174a9..0000000
--- a/docs/html-intl/intl/ru/preview/index.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=Android M Developer Preview
-page.tags="preview",
-meta.tags="preview, M preview", androidm
-fullpage=true
-section.landing=true
-header.hide=1
-footer.hide=1
-@jd:body
-
-<section class="dac-expand dac-hero dac-light" >
-  <div class="wrap">
-    <div class="cols dac-hero-content">
-      <div class="col-9of16 col-push-7of16 dac-hero-figure">
-        <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png" srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
-             {@docRoot}images/home/devices-hero_620px_2x.png 2x">
-      </div>
-      <div class="col-7of16 col-pull-9of16">
-        <h1 class="dac-hero-title">Android M Developer Preview</h1>
-        <p class="dac-hero-description">
-          Подготовьтесь к выходу следующей версии платформы Android. Протестируйте ваши приложения на устройствах Nexus 5, 6, 9 и
-Player. Узнайте о новых возможностях:&mdash; <strong>разрешениях на выполнение</strong>,
-новых функциях энергосбережения — <strong>режим «Doze»</strong> и <strong>ждущий режим для приложений</strong>, о новом
-<strong>помощнике</strong> и о многом другом.
-        </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/overview.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Итак, приступим!
-</a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-      </div>
-    </div>
-    <div class="dac-section dac-small">
-      <div class="resource-widget resource-flow-layout col-16"
-           data-query="collection:preview/landing/resources"
-           data-cardSizes="6x2"
-           data-maxResults="6"></div>
-    </div>
-  </div>
-</section>
-
-<section class="dac-section dac-gray"><div class="wrap">
-  <h1 class="dac-section-title">Ресурсы</h1>
-  <div class="dac-section-subtitle">
-    Важная информация, которая поможет вам подготовить ваши приложения для работы в Android M.
-  </div>
-
-  <div class="resource-widget resource-flow-layout col-16"
-       data-query="collection:preview/landing/more"
-       data-cardSizes="6x6"
-       data-maxResults="16"></div>
-
-    <ul class="dac-section-links">
-      <li class="dac-section-link">
-        <a href="https://code.google.com/p/android-developer-preview/">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Сообщить о проблеме
-</a>
-      </li>
-      <li class="dac-section-link"><a href="http://g.co/dev/AndroidMDevPreview">
-        <span class="dac-sprite dac-auto-chevron"></span>
-        Присоединиться к сообществу в G+
-</a>
-      </li>
-    </ul>
-  </div>
-</section>
-
diff --git a/docs/html-intl/intl/ru/preview/license.jd b/docs/html-intl/intl/ru/preview/license.jd
deleted file mode 100644
index fe9901b..0000000
--- a/docs/html-intl/intl/ru/preview/license.jd
+++ /dev/null
@@ -1,143 +0,0 @@
-page.title=Лицензионное соглашение
-
-@jd:body
-
-<p>
-Чтобы приступить к работе с пакетом SDK Android Preview, примите указанные ниже положения и условия. 
-Как описано ниже, обратите внимание, что это предварительная версия пакета SDK Android, которая может быть изменена и которую вы используете на свой страх и риск.  Пакет SDK Android Preview не является стабильным и может содержать ошибки и дефекты, которые могут повредить ваши компьютеры, устройства и данные.
-</p>
-
-<p>
-Это лицензионное соглашение для пакета SDK Android Preview (далее «Лицензионное соглашение»).
-</p>
-<div class="sdk-terms" style="height:auto;border:0;padding:0;width:700px">
-1. Введение
-
-1.1. Лицензия на пакет SDK Android Preview (далее по тексту настоящего Лицензионного соглашения – «Preview», который включает системные файлы Android, пакеты API-интерфейсов и файлы библиотеки Preview, если такие доступны) передается в соответствии с положениями настоящего Лицензионного соглашения. Настоящее Лицензионное соглашение является юридически обязывающим договором между компанией Google и любым лицом, использующим Preview.
-
-1.2. В настоящем Лицензионном соглашении термин «Android» означает набор программного обеспечения Android для устройств, предлагаемый к использованию в рамках проекта Android Open Source Project, который доступен на веб-сайте http://source.android.com/ (сведения, размещенные на этом сайте, могут периодически обновляться).
-
-1.3. Под термином «Google» понимается корпорация Google Inc., главный офис которой находится по адресу 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States (США).
-
-2. Принятие лицензионного соглашения
-
-2.1. Использование Preview возможно только после принятия условий настоящего Лицензионного соглашения. Запрещается использовать Preview, если вы не согласны с указанными в настоящем документе условиями и положениями.
-
-2.2. Нажатие кнопки принятия условий и/или использование Preview означает, что вы согласны с положениями настоящего Лицензионного соглашения.
-
-2.3. Вы не вправе использовать Preview и принимать условия данного Лицензионного соглашения, если по законам США или иных стран, включая страну вашего проживания или использования Preview, запрещается передавать Preview в ваш адрес.
-
-2.4. Если вы используете Preview в рамках своей компании или организации, вы соглашаетесь взять на себя обязательства по соблюдению настоящего Лицензионного соглашения от имени своего работодателя или другого юридического лица, и вы тем самым подтверждаете и гарантируете, что обладаете полными юридическими полномочиями связать вашего работодателя или иное подобное юридическое лицо обязательствами по настоящему Лицензионному соглашению. Если вы не обладаете требуемыми полномочиями, вы не вправе принимать указанные в настоящем документе условия и положения или использовать Preview от имени вашего работодателя или другого юридического лица.
-
-3. Лицензия на Preview от Google
-
-3.1. В соответствии с условиями настоящего Лицензионного соглашения Google предоставляет вам ограниченную, бесплатную и неэксклюзивную лицензию без права передачи и подлежащую отмене, на использование Preview, лично или в рамках своей компании или организации, исключительно в целях разработки приложений для платформы Android.
-
-3.2. Вы соглашаетесь с тем, что Google или третьим сторонам принадлежат все юридические и имущественные права, а также правовой интерес в отношении Preview, в том числе любые права на объекты интеллектуальной собственности, которые имеются в Preview. Термин «Права на интеллектуальную собственность» означает все возможные права в рамках патентного права, авторского права, закона о коммерческой тайне, закона о товарных знаках, а также иные возможные имущественные права. Google оставляет за собой все права, не предоставленные вам в явном виде.
-
-3.3. Вам запрещается использовать Preview в любых целях, которые однозначно не определены в настоящем Лицензионном соглашении. За исключением случаев, предусмотренных применимыми сторонними лицензиями, вам запрещается: (a) копировать (за исключением резервного копирования), изменять, адаптировать, повторно распространять, декомпилировать, осуществлять инженерный анализ, деассемблировать или создавать производные элементы Preview или иной его части; а также (b) загружать любую часть Preview в мобильные телефоны или иные устройства, помимо персонального компьютера, объединять любые части Preview с другим программным обеспечением, распространять любое программное обеспечение или устройства, содержащие части Preview.
-
-3.4. Вы соглашаетесь с тем, что не будете предпринимать никаких действий, которые прямо или косвенно могут привести к фрагментированию платформы Android, включая помимо прочего распространение набора средств разработки программного обеспечения, полученных из Preview, участие в создании таких средств и содействие их продвижению в любой форме.
-
-3.5. Использование, воспроизведение и распространение компонентов Preview, на которые распространяется лицензия на программное обеспечение с открытым исходным кодом, регулируются исключительно положениями и условиями такой лицензии на программное обеспечение с открытым исходным кодом, а не настоящим Лицензионным соглашением. Вы соглашаетесь обеспечивать хорошую репутацию получателя лицензии в отношении таких лицензии на программное обеспечение с открытым исходным кодом в рамках всех предоставленных ему прав, а также не допускать каких-либо действий, которые могут привести к аннулированию, приостановлению или нарушению таких прав
-
-3.6. Вы соглашаетесь с тем, что форма и содержание Preview , предоставляемого Google, могут быть изменены без предварительного уведомления, а также с тем, что будущие версии Preview могут оказаться несовместимыми с приложениями, разработанными в предыдущих версиях Preview. Вы соглашаетесь с тем, что Google вправе на свое собственное усмотрение и без предварительного уведомления прекратить (временно или навсегда) предоставление Preview (или любых функций в составе Preview) вам или пользователям.
-
-3.7. Ни одна из частей настоящего Лицензионного соглашения не предусматривает предоставления вам права использовать любые торговые наименования, товарные знаки, знаки обслуживания, логотипы, имена доменов или иные отличительные фирменные знаки, принадлежащие Google.
-
-3.8. Вы соглашаетесь с тем, что обязуетесь не удалять, не скрывать или не изменять любые уведомления об имущественных правах (включая уведомления об авторских правах и товарных знаках), которые могут сопровождать Preview или содержаться в нем.
-
-4. Использование Preview
-
-4.1. Компания Google выражает согласие с тем, что ни по какому положению настоящего Лицензионного соглашения не получает от вас (или ваших лицензиаров) каких-либо юридических и имущественных прав, а также правового интереса в отношении любых программных приложений, разработанных вами с помощью Preview, включая любые права на объекты интеллектуальной собственности, которые имеются в таких приложениях.
-
-4.2. Вы соглашаетесь использовать Preview и создавать приложения исключительно в целях, предусмотренных (a) настоящим Лицензионным соглашением и (b) любым применимым законом, нормативным актом или общепринятыми правилами или рекомендациями в соответствующей юрисдикции (включая любые законы, касающиеся экспорта данных или программного обеспечения из США или иных соответствующих стран, а также импорта в них).4.3. Вы соглашаетесь с тем, что при использовании Preview для разработки приложений вы обязуетесь обеспечивать конфиденциальность данных и защищать юридические права пользователей. 
-
-4.3. Вы соглашаетесь с тем, что при использовании SDK для разработки приложений для неопределенного круга пользователей вы обязуетесь обеспечивать конфиденциальность данных и защищать юридические права таких пользователей. В случае если пользователи предоставляют вам свои имена, пароли или иные данные для входа либо свои персональные сведения, вы обязуетесь уведомить пользователей о том, что такая информация будет присутствовать в вашем приложении, и вы также обязуетесь предоставить таким пользователям юридически соответствующее уведомление о конфиденциальности и средства правовой защиты. Если в вашем приложении хранится персональная или конфиденциальная информация, предоставленная пользователями, вы обязуетесь обеспечить ее надлежащую защиту. Если пользователь предоставляет вам сведения о своей учетной записи Google, то ваше приложение может использовать такую информацию для доступа к учетной записи Google пользователя только тогда, когда пользователь предоставил вам разрешение на это, и только в тех целях, которые обозначил пользователь.
-
-4.4. Вы соглашаетесь с тем, что обязуетесь не использовать Preview для любого рода деятельности, в том числе для разработки или распространения приложений, в целях нарушения работы и повреждения серверов, сетей или иной собственности или служб Google или любой третьей стороны.
-
-4.5. Вы соглашаетесь с тем, что несете единоличную ответственность (и признаете, что компания Google не несет ответственности ни перед вами, ни перед любой третьей стороной) за любые данные, содержимое или ресурсы, которые вы создаете, передаете или демонстрируете посредством Android и/или приложений для Android, а также за любые последствия ваших действий, связанных с этим (в том числе за любые убытки и любой ущерб, которые могут быть причинены Google).
-
-4.6. Вы соглашаетесь с тем, что несете единоличную ответственность (и признаете, что компания Google не несет ответственности ни перед вами, ни перед любой третьей стороной) за любое несоблюдение обязательств по настоящему Лицензионному соглашению, обязательств по любому применимому договору с третьей стороной или предусмотренных Условиями и положениями, за нарушение любых применимых законов или нормативных актов, а также за любые последствия ваших действий, связанных с таким нарушением (в том числе за любые убытки и любой ущерб, которые могут быть причинены Google).
-
-4.7 Preview находится на стадии разработки, поэтому ваши отзывы и результаты тестирования являются важной частью процесса разработки. Используя Preview, вы признаете, что реализация некоторых функций по-прежнему находится на этапе разработки и вам не следует рассчитывать на полную функциональность стабильной версии. Вы соглашаетесь не распространять или предоставлять любые приложения, использующие Preview, поскольку поддержка Preview будет прекращена после выпуска официальной версии пакета SDK Android.
-
-5. Ваши учетные данные разработчика
-
-5.1. Вы соглашаетесь с тем, что несете ответственность за обеспечение конфиденциальности любых учетных данных разработчика, которые компания Google может вам предоставить или которые вы можете самостоятельно выбрать, а также с тем, что вы несете единоличную ответственность за все приложения, разработанные с использованием ваших учетных данных разработчика.
-
-6. Конфиденциальность и личная информация
-
-6.1. В целях постоянного совершенствования и улучшения Preview компания Google вправе собирать определенные статистические данные об использовании программного обеспечения, включая уникальный идентификатор, связанный IP-адрес, номер версии программного обеспечения, а также сведения об используемых в Preview инструментах и/или службах и способах их применения. Перед тем как любые из таких данных будут отправлены в Google, в Preview отобразится соответствующее уведомление с просьбой дать свое согласие. В случае вашего отказа предоставить такие сведения соответствующие данные собираться не будут.
-
-6.2. Собранные данные изучаются в обобщенном виде с целью улучшения Preview и хранятся в соответствии с Политикой конфиденциальности Google, которая опубликована на веб-сайте по адресу http://www.google.com/policies/privacy/.
-
-7. Сторонние приложения
-
-7.1. Если вы используете Preview для запуска приложений, разработанных третьими сторонами или получающих доступ к данным, содержимому или ресурсам, предоставляемым третьей стороной, вы соглашаетесь с тем, что Google не несет ответственности за такие приложения, данные, содержимое или ресурсы. Вы осознаете, что единоличную ответственность за все данные, содержимое или ресурсы, доступ к которым вы можете получить посредством таких приложений третьих сторон, несет лицо, предоставившее их, а также то, что Google не несет ответственности за любые убытки или любой ущерб, которые могут возникнуть в результате использования вами любых таких сторонних приложений, данных, содержимого или ресурсов и в результате обращения к ним.
-
-7.2. Вы должны быть осведомлены о том, что данные, содержимое и ресурсы, предоставляемые вам посредством таких сторонних приложений, могут быть защищены правами на объекты интеллектуальной собственности, принадлежащие предоставляющим их лицам (или иным лицам либо компаниям от их имени). Вам запрещается изменять, сдавать в аренду, передавать, продавать, распространять такие данные, содержимое или ресурсы (полностью или частично), а также создавать на их основе производные элементы, если у вас нет на это разрешения от соответствующих владельцев.
-
-7.3. Вы осознаете, что использование вами таких сторонних приложений, данных или ресурсов может регулироваться отдельными условиями, заключенными между вами и соответствующей третьей стороной.
-
-8. Использование API-интерфейсов Google
-
-8.1. API-интерфейсы для получения данных Google.
-
-8.1.1. В случае использования вами любых API для получения данных из Google вы осознаете, что такие данные могут быть защищены правами на объекты интеллектуальной собственности, принадлежащие Google или предоставляющим их сторонам (или иным лицам либо компаниям от их имени). Использование вами подобных API может регулироваться дополнительными Условиями использования. Вам запрещается изменять, сдавать в аренду, передавать, продавать, распространять такие данные (полностью или частично), а также создавать на их основе производные элементы, если это не разрешено соответствующими Условиями использования.
-
-8.1.2. Если вы используете какие-либо API-интерфейсы для получения данных пользователя из Google, вы осознаете и соглашаетесь с тем, что вы обязуетесь получать такие данные исключительно с прямого согласия пользователя и только в тех целях, которые обозначил пользователь.
-
-9. Прекращение действия Лицензионного соглашения
-
-9.1 Настоящее Лицензионное соглашение остается в силе до тех пор, пока его действие не будет прекращено вами или Google, как указано ниже.
-
-9.2. Если вы желаете прекратить действие настоящего Лицензионного соглашения, вы вправе сделать это, прекратив использование Preview и любых соответствующих учетных данных разработчика.
-
-9.3. Google вправе в любое время прекратить действие настоящего Лицензионного соглашения, отправив предварительное уведомление или без него.
-
-9.4 Действие настоящего Лицензионного соглашения автоматически прекращается без предварительного уведомления или выполнения иных действий сразу после следующего:
-(A) компания Google прекращает предоставление Preview или определенных частей Preview пользователям в той стране, в которой вы проживаете или используете услуги компании; 
-(B) компания Google выпускает окончательную версию SDK Android.
-
-9.5 В случае прекращения действия настоящего Лицензионного соглашения прекращается действие лицензии, предоставленной в рамках Лицензионного соглашения, и вам следует незамедлительно прекратить любое использование Preview, тогда как положения, изложенные в разделах 10, 11, 12 и 14 продолжают действовать бессрочно.
-
-10. ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ
-
-10.1. ВЫ ЧЕТКО ОСОЗНАЕТЕ И БЕЗОГОВОРОЧНО СОГЛАШАЕТЕСЬ С ТЕМ, ЧТО ВЫ ИСПОЛЬЗУЕТЕ PREVIEW ИСКЛЮЧИТЕЛЬНО НА СВОЙ СТРАХ И РИСК И ЧТО PREVIEW ПРЕДОСТАВЛЯЕТСЯ ВАМ НА УСЛОВИЯХ «КАК ЕСТЬ» И «КАК ДОСТУПНО» БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ СО СТОРОНЫ КОМПАНИИ GOOGLE.
-
-10.2 ИСПОЛЬЗОВАНИЕ ВАМИ PREVIEW И ЗАГРУЗКА ЛЮБЫХ МАТЕРИАЛОВ И ИХ ПОЛУЧЕНИЕ ИНЫМ СПОСОБОМ С ПОМОЩЬЮ PREVIEW ВЫПОЛНЯЕТСЯ ПО ВАШЕМУ СОБСТВЕННОМУ УСМОТРЕНИЮ НА СВОЙ СТРАХ И РИСК. ВСЯ ОТВЕТСТВЕННОСТЬ ЗА ЛЮБОЙ УЩЕРБ, ПРИЧИНЕННЫЙ ВАШЕЙ ВЫЧИСЛИТЕЛЬНОЙ СИСТЕМЕ ИЛИ ДРУГОМУ ОБОРУДОВАНИЮ, А ТАКЖЕ ЗА ПОТЕРЮ ДАННЫХ, ВЫЗВАННУЮ ПОДОБНЫМ ИСПОЛЬЗОВАНИЕМ, ВОЗЛАГАЕТСЯ НА ВАС. НЕ ОГРАНИЧИВАЯ ВЫШЕСКАЗАННОЕ, ВЫ ПОНИМАЕТЕ, ЧТО PREVIEW НЕ ЯВЛЯЕТСЯ СТАБИЛЬНЫМ ВЫПУСКОМ И МОЖЕТ СОДЕРЖАТЬ ОШИБКИ, ДЕФЕКТЫ И УЯЗВИМОСТИ В СИСТЕМЕ БЕЗОПАСНОСТИ, КОТОРЫЕ МОГУТ ПРИВЕСТИ К СЕРЬЕЗНЫМ ПОВРЕЖДЕНИЯМ, ВКЛЮЧАЯ ПОЛНУЮ И БЕЗВОЗВРАТНУЮ ПОТЕРЮ РАБОТОСПОСОБНОСТИ ВАШЕГО КОМПЬЮТЕРА ИЛИ ИНОГО УСТРОЙСТВА.
-
-10.3. КОМПАНИЯ GOOGLE БЕЗОГОВОРОЧНО ОТКАЗЫВАЕТСЯ ОТ ЯВНЫХ И НЕЯВНЫХ ГАРАНТИЙ И УСЛОВИЙ ЛЮБОГО РОДА, ВКЛЮЧАЯ ПОМИМО ПРОЧЕГО НЕЯВНЫЕ ГАРАНТИИ И УСЛОВИЯ ТОВАРНОГО СОСТОЯНИЯ, ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ И ОТСУТСТВИЯ НАРУШЕНИЙ ПРАВ СОБСТВЕННОСТИ.
-
-11. ОГРАНИЧЕНИЕ ОТВЕТСТВЕННОСТИ
-
-11.1. ВЫ ЧЕТКО ОСОЗНАЕТЕ И БЕЗОГОВОРОЧНО СОГЛАШАЕТЕСЬ С ТЕМ, ЧТО КОМПАНИЯ GOOGLE, ЕЕ ДОЧЕРНИЕ И АФФИЛИРОВАННЫЕ КОМПАНИИ И ЛИЦЕНЗИАРЫ НЕ НЕСУТ ПЕРЕД ВАМИ ОТВЕТСТВЕННОСТИ, НЕЗАВИСИМО ОТ ЕЕ ПРИЧИНЫ И ВИДА, ЗА КАКИЕ-ЛИБО ПРЯМЫЕ, КОСВЕННЫЕ, СЛУЧАЙНЫЕ, СПЕЦИАЛЬНЫЕ, ОПОСРЕДОВАННЫЕ И ШТРАФНЫЕ УБЫТКИ, ПОНЕСЕННЫЕ ВАМИ, ВКЛЮЧАЯ ПОМИМО ПРОЧЕГО ПОТЕРЮ ДАННЫХ, ВНЕ ЗАВИСИМОСТИ ОТ ТОГО, БЫЛА ЛИ КОМПАНИЯ GOOGLE ИЛИ ЕЕ ПРЕДСТАВИТЕЛИ ИЗВЕЩЕНЫ О ВОЗМОЖНОСТИ ТАКОГО УЩЕРБА.
-
-12 Освобождение от ответственности
-
-12.1. В максимально допустимой законом степени вы соглашаетесь защищать, освобождать от ответственности и возможных претензий компанию Google, ее аффилированные компании и их соответствующих руководителей, служащих, сотрудников и агентов от всех возможных правовых требований, действий, судебных исков или разбирательств, а также от всех возможных убытков, обязательств, ущерба, издержек и расходов (включая обоснованные вознаграждения для адвокатов), возникающих (a) в связи с использованием вами Preview, (b) в связи с любыми приложениями, разрабатываемыми вами с помощью Preview и нарушающими любые права на объекты интеллектуальной собственности любого лица, а также порочащие любое лицо либо нарушающие права таких лиц на публичность и конфиденциальность, а также (c) в связи с любым несоблюдением вами положений настоящего Лицензионного соглашения.
-
-13. Изменения в Лицензионном соглашении
-
-13.1. Компания Google вправе вносить изменения в настоящее Лицензионное соглашение по мере выхода новых версий Preview. При внесении изменений Google создает новую версию Лицензионного соглашения и размещает ее на веб-сайте, на котором размещена Preview.
-
-14. Общие правовые условия
-
-14.1. Настоящее Лицензионное соглашение составляет полный текст юридического соглашения между вами и компанией Google, регулирует использование вами Preview (за исключением услуг, которые Google предоставляет на основании отдельного письменного соглашения) и полностью заменяет собой все предыдущие соглашения между вами и компанией Google в отношении Preview.
-
-14.2. Вы соглашаетесь с тем, что отсутствие каких-либо действий или судебных исков со стороны Google, направленных на соблюдение каких-либо правовых норм или исполнение средств правовой защиты, установленных настоящим Лицензионным соглашением (или которыми Google обладает в соответствии с каким-либо действующим законом), не означает отказ компании Google от своих прав и не препятствует компании Google использовать эти права или средства защиты.
-
-14.3. Если какой-либо судебный орган, уполномоченный рассматривать этот вопрос, признает недействительность какого-либо положения данного Лицензионного соглашения, то соответствующее положение будет исключено из Лицензионного соглашения с сохранением действия всех остальных его положений. Остальные положения Лицензионного соглашения по-прежнему будут действовать, и их соблюдение может обеспечиваться в судебном порядке.
-
-14.4. Вы признаете и соглашаетесь с тем, что все участники группы компаний, среди которых Google является материнской компанией, являются сторонними бенефициарами Лицензионного соглашения и что эти компании имеют право пользоваться привилегиями (или правами), предоставляемыми по настоящему Лицензионному соглашению, и напрямую требовать их соблюдения в судебном порядке. Все остальные физические и юридические лица не являются сторонними бенефициарами Лицензионного соглашения.
-
-14.5. ОГРАНИЧЕНИЯ НА ЭКСПОРТ. ИСПОЛЬЗОВАНИЕ PREVIEW РЕГУЛИРУЕТСЯ ЗАКОНАМИ И НОРМАТИВНЫМИ АКТАМИ США, КАСАЮЩИМИСЯ ЭКСПОРТА. ВЫ ОБЯЗУЕТЕСЬ СОБЛЮДАТЬ ВСЕ НАЦИОНАЛЬНЫЕ И МЕЖДУНАРОДНЫЕ ЗАКОНЫ ОБ ЭКСПОРТЕ, ПРИМЕНИМЫЕ К PREVIEW. ДАННЫЕ ЗАКОНЫ НАЛАГАЮТ ОГРАНИЧЕНИЯ НА РЕГИОНЫ, КРУГ ЛИЦ И СПОСОБ КОНЕЧНОГО ИСПОЛЬЗОВАНИЯ.
-
-14.6. Вы не вправе переуступать либо передавать права, предоставляемые по настоящему Лицензионному соглашению, без предварительного письменного согласия Google; любые попытки переуступки без такого согласия считаются недействительными. Вы обязуетесь не делегировать свои полномочия или обязательства по настоящему Лицензионному соглашению без предварительного письменного согласия Google.
-
-14.7. Лицензионное соглашение, а также взаимоотношения между вами и компанией Google в рамках настоящего Лицензионного соглашения регулируются законодательством штата Калифорния за исключением его норм коллизионного права. Вы и компания Google признаете, что урегулирование любых правовых вопросов, связанных с данным Лицензионным соглашением, относится исключительно к юрисдикции судов округа Санта-Клара, штат Калифорния. Несмотря на это, вы соглашаетесь с тем, что компания Google по-прежнему имеет право обращаться за наложением судебного запрета (или за получением аналогичного вида неотложной судебной защиты) в суды любой юрисдикции.
-
-
-</div>
\ No newline at end of file
diff --git a/docs/html-intl/intl/ru/preview/overview.jd b/docs/html-intl/intl/ru/preview/overview.jd
deleted file mode 100644
index d1345a2..0000000
--- a/docs/html-intl/intl/ru/preview/overview.jd
+++ /dev/null
@@ -1,389 +0,0 @@
-page.title=Обзор программы
-page.metaDescription=Добро пожаловать в программу Android M Developer Preview, участники которой получают всё необходимое для тестирования и оптимизации своих приложений для следующей версии платформы Android.
-page.image=images/cards/card-preview_16-9_2x.png
-page.tags="preview", "developer", "android"
-
-@jd:body
-
-<div class="cols" style=
-"background-color:#ffebc3; padding: 5px 0;margin-bottom:1em; text-align:center;">
-<h3>
-    Developer Preview 2 is now available
-  </h3>
-
- <ul class="dac-section-links">
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-notes">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Read the Notes</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-get">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Get the Update</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="https://code.google.com/p/android-developer-preview/">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Report Issues</a>
-    </li>
-  </ul>
-</div>
-
-<p>
-  Добро пожаловать в программу <strong>Android M Developer Preview</strong>, участники которой получают всё необходимоедля тестирования и оптимизации своих приложений для следующей версии платформы Android.
-
- Это бесплатная программа, и приступить к ее использованию можно прямо сейчас, загрузив
-инструменты M Developer Preview.
-</p>
-
-<div style="background-color:#eceff1;padding:1em;">
-<div class="wrap">
-  <div class="cols">
-    <div class="col-4of12">
-      <h5>
-        Системные образы эмулятора и оборудования
-      </h5>
-
-      <p>
-        Запускайте и тестируйте ваши приложения на устройствах Nexus 5, 6, 9 и Player (для Android TV), а также в эмуляторе.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Самый актуальный код платформы
-      </h5>
-
-      <p>
-        Во время знакомства с предварительной версией платформы мы будем предоставлять различные обновления, поэтому вы сможете протестировать самые актуальные изменения в платформе.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Получение обновлений по беспроводной связи
-      </h5>
-
-      <p>
-        После прошивки своего устройства для работы с предварительной версией платформы вы сможете получать обновления по беспроводной связи.
-
-      </p>
-    </div>
-  </div>
-
-  <div class="cols">
-
-
-    <div class="col-4of12">
-      <h5>
-        Новые возможности и новые функции
-      </h5>
-
-      <p>
-        Начните уже заранее реализовывать в своих приложениях поддержку расширенной функциональности платформы, например, новую модель разрешений на выполнение и функции сбережения энергии.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Приоритетная обработка отчетов об ошибках от разработчиков
-      </h5>
-
-      <p>
-        В течение первых нескольких недель мы будем рассматривать отчеты об ошибках, поступающие от разработчиков, в приоритетном порядке, поэтому не теряйте времени и приступайте к тестированию и составлению отзывов как можно раньше.
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        Отзывы и поддержка
-      </h5>
-
-      <p>
-        Отправляйте нам отчеты об ошибках и предоставляйте свои отзывы с помощью нашей <a href="https://code.google.com/p/android-developer-preview/">системы отслеживания проблем</a>.
-        Обменивайтесь идеями и предложениями с другими разработчиками в <a href="http://g.co/dev/AndroidMDevPreview">сообществе разработчиков Android&nbsp;M</a>.
-
-      </p>
-    </div>
-  </div>
-</div>
-</div>
-
-<!--
-<p>
-  With the M Developer Preview, you'll get an early start on testing your apps,
-  with enough time to make adjustments before the public platform release later
-  in the year. We'll provide several updates to the Preview tools in the weeks
-  ahead, so you can keep in sync with the latest changes as the platform moves
-  toward launch.
-</p>
-<img src="{@docRoot}preview/images/m-preview-timeline.png" alt=
-"Preview program timeline" id="timeline">
-<p>
-  You can help us improve the platform by <a href=
-  "https://code.google.com/p/android-developer-preview/">reporting issues</a>
-  through our feedback channels. This is especially
-  critical in the first month of the preview, when we’ll be giving priority to
-  developer-reported issues and feedback.
-</p> -->
-
-
-<h2 id="timeline">
-  График и обновления
-</h2>
-<img src="{@docRoot}preview/images/m-preview-timeline-crop.png" alt="Preview program timeline" id="timeline">
-<p>
-  Тестирование версии M Developer Preview запланировано на период с 28 мая до выпуска окончательной версии пакета SDK Android M, который
-состоится незадолго до публикации новой платформы в открытом доступе в
-третьем квартале 2015 г.
-</p>
-
-<p>
-  На ключевых этапах разработки платформы мы предоставим обновления для тестовых устройств.
-  Ниже перечислены предварительные даты этих ключевых этапов.
-</p>
-
-<ul>
-  <li>
-    <strong>Preview&nbsp;1</strong> (первоначальный выпуск версии Preview, конец мая)
-  </li>
-
-  <li>
-    <strong>Preview&nbsp;2</strong> (конец июня/начало июля)
-  </li>
-
-  <li>
-    <strong>Preview&nbsp;3</strong> (почти окончательный выпуск, конец июля)
-  </li>
-</ul>
-
-<p>
-  Завершающим этапом обновлений станет выход <strong>окончательной версии пакета SDK</strong> (в третьем квартале),
-где будут представлены официальные API-интерфейсы для новой версии Android, а также
-окончательные версии функций и поведений системы.
-</p>
-
-<p>
-  Мы настоятельно рекомендуем вам в ходе тестирования и разработки приложений для Android M <strong>постоянно
-обновлять вашу среду разработки</strong> по мере выхода обновлений для версии Preview.
-  Чтобы упростить этот процесс, мы будем отправлять на устройства, которые уже прошиты для работы с предварительной версией платформы, <strong>обновления по беспроводной сети</strong>.
-Мы также будем предоставлять вам системные образы, которые можно
-загрузить и использовать для прошивки устройства вручную.
-</p>
-<p class="note">
-  <strong>Примечание.</strong> Окончательные версии пакета SDK и системных образов не будут отправляться по беспроводной сети,
-их придется <strong>вручную установить</strong> на
-тестовые устройства.</strong>
-</p>
-
-<p>
-  Мы будем сообщать о появлении обновлений для версии Preview в <a href="http://android-developers.blogspot.com/">блоге разработчиков Android</a>, а
-также на этом сайте и в
-<a href="http://g.co/dev/AndroidMDevPreview">сообществе разработчиков Android M</a>.
-</p>
-
-<h2 id="preview_tools">
-  Что входит в состав Preview?
-</h2>
-
-<p>
-  M Developer Preview содержит всё, что вам необходимо для тестирования ваших существующих приложений на экранах различных размеров,
-тестирования с использованием различных сетевых технологий, чипсетов ЦП и графических процессоров,
- а также на различных архитектурах оборудования.
-</p>
-
-<h4>
-  Инструменты SDK
-</h4>
-
-<p>
-  С помощью менеджера SDK в <a href="{@docRoot}sdk/installing/adding-packages.html">Android Studio</a> вы можете загрузить следующие компоненты:
-</p>
-
-<ul>
-  <li><strong>Инструменты SDK</strong> для M Developer Preview.
-  </li>
-
-  <li><strong>Системный образ эмулятора</strong> (32- и
-64-разрядная версии) для M Developer Preview.
-  </li>
-
-  <li><strong>Системный образ эмулятора для Android TV</strong> (32- и
-32-разрядная версии)
-  </li>
-</ul>
-
-<h4>
-  Системные образы оборудования
-</h4>
-
-<p>
-  На странице
-<a href="download.html">Загрузки</a> можно скачать следующие системные образы оборудования:
-</p>
-
-<ul>
-  <li>
-    Системный образ устройства <strong>Nexus 5</strong> (GSM/LTE) («hammerhead»)
-  </li>
-
-  <li>
-    Системный образ устройства <strong>Nexus 6</strong> («shamu»)
-  </li>
-
-  <li>
-    Системный образ устройства <strong>Nexus 9</strong> (Wi-Fi) («volantis»)
-  </li>
-
-  <li>
-    Системный образ устройства <strong>Nexus Player</strong> (Android TV) («fugu»)
-  </li>
-</ul>
-
-<h4>
-  Документация и примеры кода
-</h4>
-
-<p>
-  Здесь вы можете найти документацию, где представлены подробные сведения о версии Preview:
-</p>
-
-<ul>
-  <li>
-    Документ, посвященный <a href="setup-sdk.html">настройке пакета SDK</a>, с пошаговыми инструкциями
-по началу работы.
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/testing/guide.html">Руководство по тестированию</a> и <a href="behavior-changes.html">обзор изменений в работе</a> с указанием ключевых областей для тестирования.
-  </li>
-
-  <li>Документация по новым API-интерфейсам, включая <a href="api-overview.html">обзор API-интерфейсов</a>,
-<a href="{@docRoot}preview/download.html#docs">справочник по API-интерфейсам</a> для загрузки и подробные руководства для разработчиков,
-в которых освещаются такие ключевые функции платформы,
-как <a href="{@docRoot}preview/features/runtime-permissions.html">разрешения</a>,
-<a href="{@docRoot}preview/backup/index.html">резервное копирование приложений</a> и многое другое.
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/samples.html">Примеры кода</a>, где можно посмотреть реализацию поддержки
-разрешений и других новых функций.
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/support.html#release-notes">Примечания к выпуску</a> для текущей версии
-M Developer Preview, включая информацию об изменениях и различные отчеты.
-  </li>
-</ul>
-
-<h4>
-  Ресурсы поддержки
-</h4>
-
-<p>
-  При тестировании и разработке приложений для M
-Developer Preview рекомендуем пользоваться следующими ресурсами поддержки:
-</p>
-
-<ul>
-  <li><a href="https://code.google.com/p/android-developer-preview/">Система отслеживания проблем M
-Developer Preview</a> — это ваш <strong>основной канал для предоставления своих
-отзывов.</strong> С ее помощью вы можете сообщать нам об обнаруженных ошибках, проблемах производительности, а также предоставлять общие отзывы.
- Также можно ознакомиться с <a href="https://code.google.com/p/android-developer-preview/wiki/KnownIssues">известными проблемами</a>
-и действиями по их устранению.
-  </li>
-
-  <li><a href="http://g.co/dev/AndroidMDevPreview">Сообщество разработчиков Android
-M</a> — это сообщество Google+, где можно <strong>общаться с другими
-разработчиками</strong>, работающими с Android M. Делитесь в сообществе своими наблюдениями
-и идеями, а также находите ответы на вопросы об Android M.
-  </li>
-</ul>
-
-
-<h2 id="preview_apis_and_publishing">
-  Выбор целевого уровня, предварительные версии API-интерфейсов и публикация приложений
-</h2>
-
-<p>
-  Выпуск Android M Developer Preview предназначен исключительно для разработки и
-<strong>не имеет стандартного уровня API</strong>. Если вы не хотите
-проверять свое приложение на совместимость (хотя мы настоятельно рекомендуем делать это),
-выберите целевой уровень M Developer Preview, задав для параметра <code><a href=
-  "/guide/topics/manifest/uses-sdk-element.html">targetSdkVersion</a></code>
-своего приложения значение <code>“MNC”</code>.
-</p>
-
-<p>
-  В Android M Developer Preview представлены <strong>предварительные версии API-интерфейсов</strong>
-&mdash;. Такие API-интерфейсы не будут официально опубликованы до выпуска окончательной версии пакета SDK,
- намеченого на третий квартал 2015 г. Это означает, что в будущем можно
-<strong>ожидать незначительных изменений в API-интерфейсах</strong>, особенно в
-первые недели действия программы. Каждое обновление
-Android M Developer Preview будет включать обзор изменений.
-</p>
-
-<p class="note">
-  Обратите внимание, что несмотря на возможные изменения в предварительных версиях API-интерфейсов, соответствующие расширения функциональности системы,
-такие как разрешения на выполнение и функции сбережения энергии, работают стабильно и уже готовы для
-тестирования.
-</p>
-
-<p>
-  Что касается публикации приложений, то политика Google Play <strong>однозначно запрещает публикацию приложений,
-разработанных для M Developer Preview</strong>. После выхода окончательной версии пакета SDK Android M
-вы сможете выбрать официальный целевой уровень API Android M и приступить
-к публикации ваших приложений в магазине Google Play. Тем временем, если вы хотите распространить приложение, предназначенное для
-тестировщиков Android M, то используйте для этого электронную почту или разместите такие приложения на своем сайте
-для прямой загрузки.
-</p>
-
-<h2 id="get_started">
-  Начало работы
-</h2>
-
-<p>
-  Чтобы приступить к тестированию своего приложения, выполните указанные ниже действия.
-</p>
-
-<ol>
-  <li>Ознакомьтесь с <a href="{@docRoot}preview/api-overview.html">обзором API-интерфейсов</a>
-и сведениями об <a href="{@docRoot}preview/behavior-changes.html">изменениях в работе</a>, чтобы получить
-представление о новых возможностях платформы и о том, как это может повлиять на ваши приложения. В частности, узнайте подробнее о новой модели
-<a href="{@docRoot}preview/features/runtime-permissions.html">разрешений на
-выполнение</a>, функциях сбережения энергии и автоматическом резервном копировании.
-  </li>
-
-  <li>Настройте свою среду, руководствуясь инструкциями по
-<a href="{@docRoot}preview/setup-sdk.html">настройке пакета SDK Preview</a>
-и конфигурированию тестовых устройств.
-  </li>
-
-  <li>Выполните
-<a href="https://developers.google.com/android/nexus/images">инструкции по прошивке</a>, чтобы прошить устройства
-Nexus 5, 6, 9 и Player с использованием последнего системного образа M Developer Preview. После прошивки вашего устройства для разработки
-обновления Preview на него будут приходить по беспроводной сети.</a>
-  </li>
-
-  <li>Загрузите <a href="{@docRoot}preview/download.html#docs">справочник по API-интерфейсам M Preview</a>
-и <a href="{@docRoot}preview/samples.html">примеры кода M Preview</a>
-, чтобы узнать больше о новых возможностях API-интерфейсов и о том, как использовать их в ваших
-приложениях.
-  </li>
-
-  <li>Присоединяйтесь к <a href="http://g.co/dev/AndroidMDevPreview">сообществу разработчиков Android
-M</a>, чтобы всегда быть в курсе последних новостей и общаться с другими
-разработчиками, работающими с новой платформой.
-  </li>
-</ol>
-
-<p>
-  Благодарим за участие в программе Android M Developer!
-</p>
diff --git a/docs/html-intl/intl/ru/preview/samples.jd b/docs/html-intl/intl/ru/preview/samples.jd
deleted file mode 100644
index f8115e7..0000000
--- a/docs/html-intl/intl/ru/preview/samples.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=Примеры
-page.image=images/cards/samples-new_2x.png
-@jd:body
-
-<p>
-  Ниже представлены примеры кода для M Developer Preview. Чтобы загрузить примеры в
-Android Studio, выберите <b>File &gt; Import Samples</b>.
-</p>
-
-<p class="note">
-  <strong>Примечание.</strong> Эти проекты предназначены для использования
-в Gradle и Android Studio.
-</p>
-
-
-<h3 id="RuntimePermissions">Разрешения на выполнение</h3>
-
-<p>
- В Android M изменился подход к использованию системных разрешений. Пользователям теперь предлагается предоставить разрешения
-во время выполнения, а не во время установки приложения. В примере ниже показано, как запрашивать такие разрешения.
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-RuntimePermissions">Загрузить с сайта GitHub</a></p>
-
-<h3 id="ConfirmCredentials">Подтверждение учетных данных</h3>
-
-<p>
- В этом примере проиллюстрировано, как использовать учетные данные устройства для авторизации в приложении.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ConfirmCredential">Загрузить с сайта 
-GitHub</a></p>
-
-<h3 id="FingerprintDialog">Диалоговое окно авторизации по отпечатку пальца</h3>
-
-<p>
- В этом примере показано, как распознавать зарегистрированные отпечатки пальцев для авторизации пользователя в
-приложении.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-FingerprintDialog">Загрузить с сайта GitHub</a></p>
-
-<h3 id="AutomaticBackup">Автоматическое резервное копирование для приложений</h3>
-
-<p>
- В Android M представлена функция автоматического резервного копирования настроек приложений. В примере кода ниже показано,
-как добавить в приложение правила фильтрации для управления резервным копированием настроек.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-AutoBackupForApps">Загрузить с сайта GitHub</a></p>
-
-<h3 id="CameraRaw">Camera 2 RAW</h3>
-
-<p>
-  В этом примере кода можно увидеть порядок использования API-интерфейса <code>Camera2</code> для получения буферов камеры RAW и сохранения их
-в виде файлов <code>DNG</code>.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-Camera2Raw">Загрузить с сайта GitHub</a></p>
-
-<h3 id="ActiveNotification">Активные уведомления</h3>
-
-<p>
-  В примере кода ниже показано, как
-<a href="{@docRoot}reference/android/app/NotificationManager.html"><code>NotificationManager</code></a>
-может сообщить о количестве уведомлений, которое в настоящее время отображает ваше приложение.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ActiveNotifications">Загрузить с сайта GitHub</a></p>
diff --git a/docs/html-intl/intl/ru/preview/setup-sdk.jd b/docs/html-intl/intl/ru/preview/setup-sdk.jd
deleted file mode 100644
index 1ffc2cd..0000000
--- a/docs/html-intl/intl/ru/preview/setup-sdk.jd
+++ /dev/null
@@ -1,207 +0,0 @@
-page.title=Настройка пакета SDK Preview
-page.image=images/cards/card-set-up_16-9_2x.png
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Содержание документа</h2>
-      <ol>
-        <li><a href="#get-as13">Загрузка Android Studio 1.3</a></li>
-        <li><a href="#get-sdk">Загрузка пакета SDK Preview</a></li>
-        <li><a href="#create-update">Создание или обновление проекта</a></li>
-        <li><a href="#setup-test">Настройка для тестирования</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>Пакет SDK M Developer Preview можно загрузить с помощью менеджера SDK Android.
-В этой статье мы исходим из того, что вы уже знакомы с разработкой приложений Android и умеете работать с
-менеджером SDK Android и создавать проекты. Тем, кто только начинает работу с
-Android, рекомендуется сначала обратиться к разделу <a href="{@docRoot}training/basics/firstapp/index.html">Создание
-первого приложения</a>.</a></p>
-
-<h2 id="get-as13">Загрузка Android Studio 1.3</h2>
-
-<p>Для работы Developer Preview лучше всего подходит Android Studio 1.3, которая, кстати,
-также является предварительной версией. Для работы с пакетом SDK Preview настоятельно рекомендуется установить предварительную версию
-Android Studio 1.3.</p>
-
-<p class="caution"><strong>Внимание!</strong> Предварительная версия Android
-Studio 1.3 (сборка Canary) по-прежнему находится на стадии разработки. Если для тестирования
- M Developer Preview вы используете свой основной компьютер для разработки, вы можете дополнительно установить
-Android Studio для целей тестирования.</p>
-
-<p>Порядок установки предварительной версии Android Studio 1.3</p>
-
-<ol>
-  <li>Загрузите и запустите <a href="{@docRoot}tools/studio/index.html">Android
-Studio</a>.
-  </li>
-
-  <li>Откройте окно <strong>Settings</strong> (в ОС Windows для этого выберите
-<strong>File &gt; Settings</strong>). Перейдите к панели
-<strong>Appearance &amp; Behavior &gt; System
-Settings &gt; Updates</strong>.
-
-    <p class="aside">В операционной системе OSX панель <strong>Appearance &amp;
-Behavior</strong>
-находится в Android Studio в окне <strong>Preferences</strong>.</p>
-  </li>
-
-  <li> На панели <strong>Updates</strong> выберите
-<strong>Automatically check updates for: Canary Channel</strong>.
-  </li>
-
-  <li>На панели <strong>Updates</strong> выберите <strong>Check Now</strong>,
-чтобы проверить наличие актуальных обновлений для сборки Canary. При появлении соответствующего запроса загрузите
-и установите сборку.
-  </li>
-</ol>
-
-<h2 id="get-sdk">Загрузка пакета SDK Preview</h2>
-
-<p>Порядок добавления компонентов SDK Preview в среду разработки</p>
-
-<ol>
-  <li>Запустите предварительную версию Android Studio 1.3.
-  </li>
-
-  <li>Откройте окно <strong>Settings</strong> (в ОС Windows для этого выберите
-<strong>File &gt; Settings</strong>). Перейдите к панели
-<strong>Appearance &amp; Behavior &gt; System
-Settings &gt; Updates</strong>.
-
-    <p class="aside">В операционной системе OSX панель <strong>Appearance &amp;
-Behavior</strong>
-находится в Android Studio в окне <strong>Preferences</strong>.</p>
-  </li>
-
-  <li>На панели <strong>Updates</strong> выберите параметры
-<strong>Automatically check updates for: Canary Channel</strong> и
-<strong>Automatically check updates for Android SDK: Preview Channel</strong>.
-  </li>
-
-  <li>Запустите <strong>менеджер SDK Android</strong>. (Менеджер SDK входит в состав Android Studio 1.3;
-теперь это не отдельное
-приложение.)
-  </li>
-
-  <li>В разделе <strong>Platforms</strong> выберите <strong>Android MNC
-Preview</strong>.
-  </li>
-
-  <li>В разделе <strong>Tools</strong> выберите последние инструменты
-<strong>SDK Tools</strong>, <strong>Platform-tools</strong> и
-<strong>Build-tools</strong> для Android.
-  </li>
-
-  <li>Нажмите на кнопку <strong>Install packages</strong> и примите условия лицензионного соглашения
-для всех пакетов.
-  </li>
-
-  <li>Убедитесь, что платформа M Developer Preview установлена. Для этого откройте окно
-<strong>Settings</strong> и перейдите к панели<strong>Appearance &amp; Behavior
-&gt; System Settings &gt; Android SDK</strong>.</li>
-
-  <li>На панели <strong>Android SDK</strong> выберите вкладку
-<strong>SDK Platforms</strong>. Для элемента <strong>Android MNC
-Preview</strong> должно быть указано <em>Installed</em>. Кроме того, перейдите на вкладку
-<strong>SDK Tools</strong> и убедитесь в том, что установлены актуальные
-версии инструментов.
-  </li>
-</ol>
-<p>После выполнения этих действий компоненты предварительной версии
-доступны для использования в вашей среде разработки. </p>
-
-
-<h2 id="create-update">Создание или обновление проекта</h2>
-
-<p>
-  Если вы хотите воспользоваться API-интерфейсами предварительной версии, создайте или обновите проект разработки так, чтобы в нем использовались
-компоненты предварительной версии.
-</p>
-
-
-<h3 id="create">Создание нового проекта</h3>
-
-<p>
-  Для создания проекта в предварительной версии рекомендуется использовать Android Studio. Выполните действия,
-приведенные в разделе <a href="{@docRoot}sdk/installing/create-project.html">Создание проекта</a>,
-пока в мастере проекта не появится экран <em>Form Factors</em>. Затем выполните
-действия по созданию проекта, настроенного для предварительной версии.
-</p>
-
-<ul>
-  <li>Установите флажок <strong>Phone and Tablet</strong>.</li>
-  <li>Выберите <strong>MNC: Android M (Preview)</strong> в разделе <strong>Minimum
-SDK</strong>.</li>
-</ul>
-
-
-<h3 id="update">Обновление существующего проекта</h3>
-
-<p>
-  В существующем проекте следует изменить его конфигурацию и настроить его на использование API-интерфейсов предварительной версии. В
-среде разработки откройте файл <code>build.gradle</code> для вашего модуля и задайте
-значения следующим образом:
-</p>
-
-<ul>
-  <li>для параметра <code>compileSdkVersion</code> задайте значение <code>'android-MNC'</code>;</li>
-  <li>для параметра <code>minSdkVersion</code> задайте значение <code>'MNC'</code>;</li>
-  <li>для параметра <code>targetSdkVersion</code> задайте значение <code>'MNC'</code>.</li>
-</ul>
-
-
-<h2 id="setup-test">Настройка для тестирования</h2>
-
-<p>
-  Для тестирования приложения в предварительной версии необходимо физическое или виртуальное устройство, настроенное с помощью
-предварительной версии платформы. Если имеется совместимое устройство, можно установить предварительную версию
-платформы для тестирования. Для тестирования также можно настроить виртуальное устройство.
-</p>
-
-<h3 id="setup-device">Настройка физического устройства</h3>
-
-<p>
-  Если у вас имеется устройство Nexus 5, Nexus 6, Nexus 9 или Android TV, для тестирования приложений вы можете установить на эти устройства
-системный образ предварительной версии.
-Также в Android Studio можно настроить виртуальное устройство с предварительной версией платформы,
-используя для этого диспетчер виртуальных устройств Android.
-</p>
-
-<p class="caution">
-  <strong>Внимание!</strong> Установка на устройство образа с предварительной версией платформы <em>приведет к удалению всех данных с
-устройства</em>, поэтому перед установкой обязательно создайте резервные копии необходимых данных.
-</p>
-
-<h3 id="setupAVD">Настройка виртуального устройства</h3>
-
-<p>
-  В Android Studio можно настроить виртуальное устройство с предварительной версией платформы,
-используя для этого диспетчер виртуальных устройств Android.
-</p>
-
-<p>Порядок настройки AVD в диспетчере AVD</p>
-
-<ol>
-  <li>Установите SDK Preview в свою среду разработки, как описано в разделе
-<a href="{@docRoot}preview/setup-sdk.html">Настройка пакета
-SDK Preview</a>.</li>
-  <li>Выполните действия, указанные в статье
-<a href="{@docRoot}tools/devices/managing-avds.html">Управление виртуальными устройствами с помощью диспетчера
-AVD</a>. Используйте следующие настройки:
-    <ul>
-      <li><strong>Device:</strong> Nexus 5, Nexus 6, Nexus 9 или Android TV</li>
-      <li><strong>Target:</strong>
-       Android M (Preview) – API Level M</li>
-      <li><strong>ABI:</strong> x86</li>
-    </ul>
-  </li>
-</ol>
-
-<p>
-  Дополнительные сведения о создании виртуальных устройств для тестирования представлены в статье <a href="{@docRoot}tools/devices/index.html">Управление виртуальными устройствами</a>.
-</p>
diff --git a/docs/html-intl/intl/ru/preview/testing/guide.jd b/docs/html-intl/intl/ru/preview/testing/guide.jd
deleted file mode 100644
index 8beb0ed..0000000
--- a/docs/html-intl/intl/ru/preview/testing/guide.jd
+++ /dev/null
@@ -1,187 +0,0 @@
-page.title=Руководство по тестированию
-page.image=images/cards/card-build_16x9_2x.png
-page.keywords=ресурсы для предварительной версии,androidm,тестирование,разрешения
-
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Содержание документа</h2>
-      <ol>
-        <li><a href="#runtime-permissions">Тестирование разрешений</a></li>
-        <li><a href="#doze-standby">Тестирование режима «Doze» и ждущего режима для приложений</a></li>
-        <li><a href="#ids">Автоматическое резервное копирование и идентификаторы устройств</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Android M Developer Preview предлагает вам проверить, как будут работать ваши приложения в следующей версии
-платформы. В ней реализован ряд изменений в API-интерфейсах и поведении системы,
-которые могут повлиять на работу вашего приложения, как описано в статьях <a href="{@docRoot}preview/api-overview.html">Обзор
-API-интерфейсов</a> и <a href="{@docRoot}preview/behavior-changes.html">Изменения в работе</a>. Если вы хотите обеспечить удобство работы пользователей, при тестировании
-вашего приложения в предварительной версии платформы 
- обратите особое внимание на изменения в системе.
-</p>
-
-<p>
-  В настоящем руководстве приводится порядок тестирования функций предварительной версии с помощью вашего приложения. Советуем при этом обратить особое внимание
-на работу следующих функций новой версии платформы, поскольку они в значительной мере повлияют на поведение
-вашего приложения:
-</p>
-
-<ul>
-  <li><a href="#runtime-permissions">разрешения</a>;
-  </li>
-  <li><a href="#doze-standby">режим «Doze» и ждущий режим для приложений</a>;
-  </li>
-  <li><a href="#ids">автоматическое резервное копирование и идентификаторы устройств</a>.</li>
-</ul>
-
-<p>
-  Дополнительные сведения о том, как настроить физические или виртуальные устройства с помощью системного образа предварительной версии платформы
-к тестированию, представлены в статье <a href="{@docRoot}preview/setup-sdk.html">Настройка SDK Preview</a>.
-</p>
-
-
-<h2 id="runtime-permissions">Тестирование разрешений</h2>
-
-<p>
-  В новой модели <a href="{@docRoot}preview/features/runtime-permissions.html">разрешений</a>
-изменился подход к тому, каким образом пользователи смогут предоставлять разрешения для вашего приложения. Если раньше пользователь мог предоставить сразу все
-разрешения в процессе установки, теперь ваше приложение должно запрашивать у него отдельные разрешения
-во время работы. Это позволяет пользователю контролировать каждую операцию приложения, а также
-лучше понимать, для чего приложение запрашивает то или иное разрешение. Пользователи могут в любой момент
-предоставить разрешения для отдельного приложения или отозвать их. Эта новая
-возможность в предварительной версии платформы, вероятнее всего, повлияет на поведение вашего приложения. Некоторые из его функций могут
-пострадать или перестать работать.
-</p>
-
-<p class="caution">
-  Это касается работы всех приложений на новой платформе, даже тех, которые были разработаны для более ранних ее версий.
- Платформа обеспечивает ограниченную поддержку устаревших приложений, однако вам следует приступить к
-планированию перехода на новую модель разрешений уже сегодня, чтобы
-опубликовать обновленную версию вашего приложения к моменту официального выпуска новой платформы.
-</p>
-
-
-<h3 id="permission-test-tips">Советы по тестированию</h3>
-
-<p>
-  Ниже представлены советы по тестированию, которые призваны помочь вам спланировать и провести тестирование вашего приложения с использованием новой
-модели разрешений.
-</p>
-
-<ul>
-  <li>Определите текущие разрешения приложения и связанные с этим фрагменты кода.</li>
-  <li>Протестируйте различные варианты работы пользователя со службами и данными, защищенными с помощью разрешений.</li>
-  <li>Протестируйте различные сочетания предоставленных и отозванных разрешений.</li>
-  <li>Воспользуйтесь инструментом {@code adb} для управления разрешениями из командной строки:
-    <ul>
-      <li>Получите список разрешений и их состояний по группам:
-        <pre>adb shell pm list permissions -d -g</pre>
-      </li>
-      <li>Предоставьте или отзовите одно или несколько разрешений с помощью следующего синтаксиса:<br>
-        <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
-      </li>
-    </ul>
-  </li>
-  <li>Проанализируйте работу вашего приложения со службами, использующими разрешения.</li>
-</ul>
-
-<h3 id="permission-test-strategy">Стратегия тестирования</h3>
-
-<p>
-  Новая модель разрешений влияет на структуру и дизайн вашего приложения, а также на
-работу пользователей с приложением и предлагаемые им варианты взаимодействия с вашим продуктом. Проанализируйте, как ваше приложение использует разрешения в настоящее время,
-и продумайте новые варианты взаимодействия, которые хотите реализовать. В официальном выпуске
-платформы будет представлена поддержка совместимости, однако мы рекомендует запланировать обновление приложения, не полагаясь
-на эту поддержку.
-</p>
-
-<p>
-  Определите круг разрешений, которые действительно необходимы для работы вашего приложения, и найдите фрагменты
-кода, где используются службы, защищенные разрешениями. Для этого протестируйте работу приложения на новой
-платформе и проанализируйте код. При тестировании следует сосредоточиться на использовании
-разрешений на выполнение путем изменения параметра {@code targetSdkVersion} приложения для использования предварительной версии. Дополнительные
-сведения представлены в статье <a href="{@docRoot}preview/setup-sdk.html#">Настройка SDK Preview</a>.
-</p>
-
-<p>
-  Протестируйте работу приложения при различных сочетаниях предоставленных и отозванных разрешений, чтобы определить варианты работы пользователя,
-которые зависят от разрешений. В случаях, когда зависимость не явная или не логичная, подумайте, можно ли
-перестроить или структурировать такой вариант работы, чтобы устранить зависимость или четко обозначить,
-для чего требуется каждое разрешение.
-</p>
-
-<p>
-  Дополнительные сведения о поведении разрешений на выполнение и тестировании, а также советы и рекомендации по данному вопросу представлены на странице
-<a href="{@docRoot}preview/features/runtime-permissions.html">Разрешения</a>.
-
-</p>
-
-
-<h2 id="doze-standby">Тестирование режима «Doze» и ждущего режима для приложений</h2>
-
-<p>
-  Режим «Doze» и ждущий режим приложений, предназначенные для экономии энергии, ограничивают объем данных, обрабатываемых вашим приложением в фоновом режиме,
-когда устройство не используется или приложение неактивно. Ограничения,
-которые система может налагать на приложения, включают ограничение или отключение доступа к сети,
-приостановку выполнения фоновых задач, приостановку отправки уведомлений, игнорирование запросов на пробуждение и будильников. Чтобы гарантировать
-правильную работу приложения в условиях оптимизации энергопотребления, вам следует протестировать ваше приложение,
-смоделировав эти режимы.
-</p>
-
-<h4 id="doze">Тестирование работы приложения в режиме «Doze»</h4>
-
-<p>Ниже представлен порядок тестирования режима «Doze».</p>
-
-<ol>
-<li>Установите на физическое или виртуальное устройство системный образ M Preview.</li>
-<li>Подключите устройство к компьютеру для разработки и установите ваше приложение.</li>
-<li>Запустите ваше приложение и не закрывайте его.</li>
-<li>Смоделируйте переход устройства в режим «Doze», выполнив следующие команды:
-
-<pre>
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-
-  </li>
-  <li>Понаблюдайте за поведением приложения после возвращения устройства в обычный режим. Убедитесь, что при выходе устройства из режима «Doze» приложение
-должным образом возобновляет свою работу .</li>
-</ol>
-
-
-<h4 id="standby">Тестирование работы приложения в ждущем режиме</h4>
-
-<p>Ниже представлен порядок тестирования ждущего режима для приложений.</p>
-
-<ol>
-  <li>Установите на физическое или виртуальное устройство системный образ M Preview.</li>
-  <li>Подключите устройство к компьютеру для разработки и установите ваше приложение.</li>
-  <li>Запустите ваше приложение и не закрывайте его.</li>
-  <li>Смоделируйте переход приложения в ждущий режим, выполнив следующие команды:
-
-<pre>
-$ adb shell am broadcast -a android.os.action.DISCHARGING
-$ adb shell am set-idle &lt;packageName&gt; true
-</pre>
-
-  </li>
-  <li>Смоделируйте выход приложения из ждущего режима, выполнив следующую команду:
-    <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
-  </li>
-  <li>Понаблюдайте за поведением приложения, когда оно возобновляет свою работу. Убедитесь, что оно
-выходит из ждущего режима без сбоев. Обратите особое внимание на работу уведомлений и выполнение фоновых задач приложения
-.</li>
-</ol>
-
-<h2 id="ids">Автоматическое резервное копирование для приложений и идентификаторы устройств</h2>
-
-<p>Если во внутреннем хранилище вашего приложения имеются какие-либо идентификаторы устройства, такие как идентификатор Google
-Cloud Messaging,
-обязательно воспользуйтесь советами и рекомендациями, приведенными в статье
-<a href="{@docRoot}preview/backup/index.html">Автоматическое резервное копирование для приложений</a>,чтобы исключить расположение
-хранилища из списка объектов для автоматического резервного копирования. </p>
diff --git a/docs/html-intl/intl/ru/preview/testing/performance.jd b/docs/html-intl/intl/ru/preview/testing/performance.jd
deleted file mode 100644
index fc88cbd..0000000
--- a/docs/html-intl/intl/ru/preview/testing/performance.jd
+++ /dev/null
@@ -1,656 +0,0 @@
-page.title=Тестирование скорости отображения
-page.image=images/cards/card-test-performance_2x.png
-page.keywords=скорость отображения, кадр/с, инструменты
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Содержание документа</h2>
-      <ol>
-        <li><a href="#measure">Измерение производительности интерфейса</a>
-          <ul>
-            <li><a href="#aggregate">Агрегированные статические данные о кадрах</a></li>
-            <li><a href="#timing-info">Точная информация о кадровой синхронизации</a></li>
-            <li><a href="#timing-dump">Дамп простой кадровой синхронизации</a></li>
-            <li><a href="#collection-window">Управление промежутком времени для сбора статистических данных</a></li>
-            <li><a href="#diagnose">Диагностика снижения производительности</a></li>
-            <li><a href="#resources">Дополнительные ресурсы</a></li>
-          </ul>
-        </li>
-        <li><a href="#automate">Автоматизация тестирования производительности интерфейса</a>
-          <ul>
-            <li><a href="#ui-tests">Настройка тестов интерфейса</a></li>
-            <li><a href="#automated-tests">Настройка автоматизированного тестирования интерфейса</a></li>
-            <li><a href="#triage">Определение и устранение обнаруженных проблем</a></li>
-          </ul>
-        </li>
-      </ol>
-  </div>
-</div>
-
-
-<p>
-  Тестирование производительности интерфейса позволяет убедиться в том, что ваше приложение не только соответствует функциональным требованиям,
-но и гарантирует пользователю безупречное взаимодействие с интерфейсом с постоянной частотой отображения
-60 кадров в секунду (<a href="https://www.youtube.com/watch?v=CaMTIgxCSqU&amp;index=25&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">почему именно
-60 кадров/с?</a>), без каких-либо задержек и пропущенных кадров или, как их называют, <em>глюков</em>. В этой
-статье рассматриваются инструменты для измерения производительности интерфейса, а также предлагается подход к
-интеграции этих процедур измерения производительности в ваши методы тестирования приложений.
-</p>
-
-
-<h2 id="measure">Измерение производительности интерфейса</h2>
-
-<p>
-  Чтобы улучшить производительность, прежде всего у вас должна иметься возможность измерить производительность
-вашей системы. Когда это сделано, необходимо диагностировать и определить проблемы, которые могут возникнуть на разных этапах
-процесса разработки.
-</p>
-
-<p>
-  <em><a href="https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></em>
-– это инструмент Android, который запускается на устройстве и создает дамп интересной информации о состоянии системных
-служб. После передачи в dumpsys команды <em>gfxinfo</em> в журнал устройства (logcat)
-записываются сведения о производительности, касающиеся скорости анимации на этапе
-записи.
-</p>
-
-<pre>
-&gt; adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt;
-</pre>
-
-<p>
-  Эта команда может создавать множество различных вариантов данных кадровой синхронизации.
-</p>
-
-<h3 id="aggregate">Агрегированные статические данные о кадрах</h3>
-
-<p>
-  В M Preview эта команда фиксирует в logcat агрегированный анализ данных о кадрах, полученных
-за весь жизненный цикл процесса. Например:
-</p>
-
-<pre class="noprettyprint">
-Stats since: 752958278148ns
-Total frames rendered: 82189
-Janky frames: 35335 (42.99%)
-90th percentile: 34ms
-95th percentile: 42ms
-99th percentile: 69ms
-Number Missed Vsync: 4706
-Number High input latency: 142
-Number Slow UI thread: 17270
-Number Slow bitmap uploads: 1542
-Number Slow draw: 23342
-</pre>
-
-<p>
-  Приведенные выше статистические данные высокого уровня демонстрируют производительность отрисовки, которой обладает приложение,
-а также ее стабильность при обработке множества кадров.
-</p>
-
-
-<h3 id="timing-info">Точная информация о кадровой синхронизации</h3>
-
-<p>
-  В M Preview представлена новая команда для gfxinfo – <em>framestats</em>. Она позволяет получить
-чрезвычайно точную информацию о кадровой синхронизации из последних кадров, что поможет вам отслеживать проблемы
-и устранять их.
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats
-</pre>
-
-<p>
-  Данная команда предоставляет информацию о кадровой синхронизации буквально по наносекундам на основании последних 120
-кадров, созданных приложением. Ниже приводится пример необработанного результата из журнала adb после выполнения команды dumpsys gfxinfo
-&lt;PACKAGE_NAME&gt; framestats:
-</p>
-
-<pre class="noprettyprint">
-0,49762224585003,49762241251670,9223372036854775807,0,49762257627204,49762257646058,49762257969704,49762258002100,49762265541631,49762273951162,49762300914808,49762303675954,
-0,49762445152142,49762445152142,9223372036854775807,0,49762446678818,49762446705589,49762447268818,49762447388037,49762453551527,49762457134131,49762474889027,49762476150120,
-0,49762462118845,49762462118845,9223372036854775807,0,49762462595381,49762462619287,49762462919964,49762462968454,49762476194547,49762476483454,49762480214964,49762480911527,
-0,49762479085548,49762479085548,9223372036854775807,0,49762480066370,49762480099339,49762481013089,49762481085850,49762482232152,49762482478350,49762485657620,49762486116683,
-</pre>
-
-<p>
-  Каждая строка здесь представляет собой кадр, созданный приложением. В каждой строке имеется фиксированное количество
-столбцов, где указано время, затраченное на каждом этапе процесса создания кадра. Более подробно этот формат рассматривается в следующем разделе,
-включая сведения о том, что означает каждый столбец.
-</p>
-
-
-<h4 id="fs-data-format">Формат данных, возвращаемых командой framestats</h4>
-
-<p>
-  Поскольку блок данных выводится в формате CSV, вы можете с легкостью вставить его в любую программу
-для работы с электронными таблицами, а также собрать и обработать данные с помощью сценария. Ниже рассматривается формат
-столбцов выходных данных. Все временные метки указаны в наносекундах.
-</p>
-
-<ul>
-  <li>FLAGS
-    <ul>
-      <li>В строках, в которых в столбце FLAGS указано «0», общее время смены кадра вычислялось путем
-вычитания значения в столбце INTENDED_VSYNC из значения в столбце FRAME_COMPLETED.
-      </li>
-
-      <li>Если это значение не равно нулю, то строку следует пропустить, поскольку кадр был определен как отличающийся от
-обычной производительности, при которой ожидается, что размещение и прорисовка кадра займут
-больше 16 мс. Причина этого может заключаться в следующем:
-        <ul>
-          <li>макет окна был изменен (например, первый кадр приложения или после
-вращения);
-          </li>
-
-          <li>также, возможно, кадр был пропущен, в результате чего временные метки некоторых значений
-содержат бессмысленную информацию; кадр можно пропустить, если, например, скорость отображения превышает 60 кадров/с или если
-на экране от этого не появяются шумы; это не обязательно указывает на проблему
-в приложении.
-          </li>
-        </ul>
-      </li>
-    </ul>
-  </li>
-
-  <li>INTENDED_VSYNC
-    <ul>
-      <li>Предполагаемая начальная точка кадра. Если данное значение отличается от значения в столбце VSYNC, это указывает на то,
-что поток был занят и не смог своевременно среагировать на сигнал
-vsync.
-      </li>
-    </ul>
-  </li>
-
-  <li>VSYNC
-    <ul>
-      <li>Значение времени, которое использовалось во всех приемниках vsync, а также которое было затрачено на прорисовку кадра
-(обратные вызовы кадров Choreographer и анимации, View.getDrawingTime() и т. д.)
-      </li>
-
-      <li>Чтобы узнать подробнее о VSYNC и о том, какое значение это имеет для вашего приложения, просмотрите
-видеоролик,
-<a href="https://www.youtube.com/watch?v=1iaHxmfZGGc&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=23">посвященный общим сведениям о VSYNC</a>.
-      </li>
-    </ul>
-  </li>
-
-  <li>OLDEST_INPUT_EVENT
-    <ul>
-      <li>Временная метка для самого старого события ввода в очереди ввода или Long.MAX_VALUE, если
-для кадра отсутствуют события ввода.
-      </li>
-
-      <li>Это значение в первую очередь предназначено для платформы и имеет ограниченную практическую ценность для разработчиков
-приложений.
-      </li>
-    </ul>
-  </li>
-
-  <li>NEWEST_INPUT_EVENT
-    <ul>
-      <li>Временная метка для самого нового события ввода в очереди ввода или 0, если
-для кадра отсутствуют события ввода.
-      </li>
-
-      <li>Это значение в первую очередь предназначено для платформы и имеет ограниченную практическую ценность для разработчиков
-приложений.
-      </li>
-
-      <li>Однако оно позволяет получить приблизительное представление о том, какая задержка возникает у приложения,
-обратившись к значению разницы (FRAME_COMPLETED - NEWEST_INPUT_EVENT).
-      </li>
-    </ul>
-  </li>
-
-  <li>HANDLE_INPUT_START
-    <ul>
-      <li>Временная метка отправки событий ввода в приложение.
-      </li>
-
-      <li>Разность между этим значением и значением ANIMATION_START позволяет определить,
-сколько времени было затрачено приложением на обработку событий ввода.
-      </li>
-
-      <li>Если разность достаточно велика (&gt;2 мс), это означает, что приложение затрачивает очень
-много времени на обработку событий ввода, таких как View.onTouchEvent(). В свою очередь, это может указывать на
-необходимость оптимизации этого процесса обработки или переноса этой нагрузки в другой поток. Следует помнить, что существуют
-сценарии, когда такое
-поведение ожидается и является приемлемым. Имеются в виду нажатия или аналогичные сценарии, в которых запускаются новые операции.
-      </li>
-    </ul>
-  </li>
-
-  <li>ANIMATION_START
-    <ul>
-      <li>Временная метка запуска анимаций, зарегистрированных с помощью Choreographer.
-      </li>
-
-      <li>Разность между этим значением и PERFORM_TRANVERSALS_START позволяет
-определить, сколько времени потребовалось на оценку всех запущенных аниматоров (ObjectAnimator,
-ViewPropertyAnimator и общих переходов).
-      </li>
-
-      <li>Если разность достаточно велика (&gt;2 мс), проверьте наличие в приложении настраиваемых
-аниматоров, а также то, какие поля анимируют классы ObjectAnimator. Убедитесь, что
-эти поля подходят для анимации.
-      </li>
-
-      <li>Чтобы узнать подробнее о Choreographer, просмотрите видео <a href="https://developers.google.com/events/io/sessions/325418001">For Butter or Worse</a>.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>PERFORM_TRAVERSALS_START
-    <ul>
-      <li>Если вычесть значение DRAW_START из этого значения, вы можете узнать, сколько времени было затрачено на разметку и
-измерение. (Обратите внимание, что во время прокрутки или анимации это значение должно быть близко
-к нулю.)
-      </li>
-
-      <li>Чтобы узнать подробнее об этапах разметки и измерения во время рендеринга интерфейса приложения, просмотрите
-видео, посвященное
-<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">аннулированию, макетам и производительности</a>.
-      </li>
-    </ul>
-  </li>
-
-  <li>DRAW_START
-    <ul>
-      <li>Время начала этапа отрисовки с помощью метода performTraversals. Это точка начала
-записи списков отображения любых представлений, которые были аннулированы.
-      </li>
-
-      <li>Разность между этим значением и значением SYNC_START означает, сколько времени потребовалось на вызов метода View.draw() для всех
-аннулированных представлений в дереве.
-      </li>
-
-      <li>Дополнительные сведения о модели отрисовки представлены в видео, посвященном <a href="{@docRoot}guide/topics/graphics/hardware-accel.html#hardware-model">аппаратному ускорению</a>
-или
-<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">аннулированию, макетам и производительности</a>.
-      </li>
-    </ul>
-  </li>
-
-  <li>SYNC_START
-    <ul>
-      <li>Время начала этапа синхронизации отрисовки.
-      </li>
-
-      <li>Если разность между этим значением и значением ISSUE_DRAW_COMMANDS_START достаточно велика (&gt;0,4 мс или около этого),
-обычно это указывает на наличие большого количество новых растровых изображений, которые следует передать
-ЦП.
-      </li>
-
-      <li>Чтобы узнать подробнее об этапе синхронизации, просмотрите видео, посвященное
-<a href="https://www.youtube.com/watch?v=VzYkVL1n4M8&amp;index=24&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">рендерингу профиля с помощью ЦП</a>.
-      </li>
-    </ul>
-  </li>
-
-  <li>ISSUE_DRAW_COMMANDS_START
-    <ul>
-      <li>Время начала отправки аппаратным обработчиком команд на отрисовку для ЦП.
-      </li>
-
-      <li>Разность между этим значением и значением FRAME_COMPLETED позволяет получить приблизительное представление об объеме ресурсов ЦП, используемых
-приложением. Здесь отображаются такие проблемы, как превышение или недостаток эффектов рендеринга.
-
-      </li>
-    </ul>
-  </li>
-
-  <li>SWAP_BUFFERS
-    <ul>
-      <li>Время вызова eglSwapBuffers;
-относится к работе платформы и имеет ограниченную практическую ценность для разработчиков приложений.
-      </li>
-    </ul>
-  </li>
-
-  <li>FRAME_COMPLETED
-    <ul>
-      <li>Все готово! Общее время, затраченное на обработку этого кадра, вычисленное по следующей формуле:
-FRAME_COMPLETED - INTENDED_VSYNC.
-      </li>
-    </ul>
-  </li>
-
-</ul>
-
-<p>
-  Эти данные можно использовать несколькими способами. Простым, но полезным примером может служить
-график, иллюстрирующий распределение времени кадров (FRAME_COMPLETED - INTENDED_VSYNC) в
-различных диапазонах задержки (см. рисунок ниже). На графике ясно видно, что с большинством кадров
-никаких проблем не возникло (ниже отметки в 16 мс; обозначено красным), однако для некоторых кадров
-это значение значительно превышено. Можно обратиться к этому графику и пронаблюдать изменения по времени,
-чтобы увидеть общую картину смещения или новые отличающиеся значения. Также можно создать график задержи ввода,
-времени, затраченного на разметку или других интересующих вас показателей, руководствуясь множеством временных меток,
-имеющихся в данных.
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-framestats.png">
-
-
-<h3 id="timing-dump">Дамп простой кадровой синхронизации</h3>
-
-<p>
-  Если в разделе настроек для разработчиков для параметра <strong>Profile GPU rendering</strong> задано значение <strong>In adb shell dumpsys gfxinfo</strong>,
-команда <code>adb shell dumpsys gfxinfo</code> выдает сведения о синхронизации
-по времени для последних 120 кадров. При этом вы увидите несколько категорий значений,
-разделенные знаком табуляции. Эти данные могут оказаться полезными для определения частей конвейера отрисовки, которые могут работать с задержкой
-при высоком уровне обработки.
-</p>
-
-<p>
-  Как и в случае с командой
-<a href="#fs-data-format">framestats</a>, описанной выше, вы можете с легкостью вставить полученные данные в любую программу
-для работы с электронными таблицами, а также собрать и обработать их с помощью сценария. На графике ниже иллюстрируется разбивка со сведениями о количестве созданных кадров и времени, которое приложение затратило на
-это.
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-frame-latency.png">
-
-<p>
-  Результаты выполнения команды gfxinfo, копирования полученного результата, передачи его в приложение для работы
-с электронными таблицами и построения графика представлены в виде столбцов.
-</p>
-
-<p>
-  Каждый столбец представляет собой один кадр анимации; его высота обозначает количество миллисекунд,
-затраченных на вычисление этого кадра. Каждый цветной сегмент столбца
-обозначает различный этап процесса рендеринга, что позволяет определить проблемные компоненты
-приложения в плане производительности. Дополнительные сведения о
-процессе рендеринга, а также о том, как оптимизировать его, представлены в видео, посвященном
-<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;index=27&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">аннулированию, макетам и производительности</a>.
-</p>
-
-
-<h3 id="collection-window">Управление промежутком времени для сбора статистических данных</h3>
-
-<p>
-  При выполнении команды framestats, равно как и при вычислении простой кадровой синхронизации, данные собираются за достаточно короткий промежуток времени – порядка
-двух секунд рендеринга. Чтобы точно указать этот промежуток времени (например,
-чтобы ограничить данные определенной анимацией), можно сбросить все счетчики
-и объединить собранные статистические данные.
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; reset
-</pre>
-
-<p>
-  Это также можно сделать совместно с выполнением самих команд создания дампа, чтобы выполнять сбор
-и сброс регулярно, непрерывно получая данные за промежутки времени продолжительностью менее двух секунд.
-
-</p>
-
-
-<h3 id="diagnose">Диагностика снижения производительности</h3>
-
-<p>
-  Определение снижений производительности послужит отличным началом для отслеживания проблем, а также позволит всегда поддерживать
-хорошую работоспособность приложения. Однако инструмент dumpsys позволяет лишь определить наличие проблем и приблизительный уровень их
-серьезности. Вам же требуется диагностировать каждую конкретную проблему с
-производительностью и найти подходящие способы ее устранения. Для этих целей прекрасно
-подходит инструмент <a href="{@docRoot}tools/help/systrace.html">systrace</a>.
-</p>
-
-
-<h3 id="resources">Дополнительные ресурсы</h3>
-
-<p>
-  Дополнительные сведения о принципе работы конвейера рендеринга платформы Android, информация об общих проблемах, с которыми можно столкнуться при его использовании,
-а также способы их устранения представлены на указанных ниже
-полезных ресурсах.
-</p>
-
-<ul>
-  <li>Производительность визуализации 101
-  </li>
-  <li>Частота 60 кадров в секунду
-  </li>
-  <li>Пользовательский интерфейс Android и графический процессор
-  </li>
-  <li>Аннулирование макетов и производительность
-  </li>
-  <li>Анализ производительности интерфейса с помощью systrace
-  </li>
-</ul>
-
-
-<h2 id="automate">Автоматизация тестирования производительности интерфейса</h2>
-
-<p>
-  Один из подходов к тестированию производительности интерфейса заключается в простом привлечении тестировщиков, чтобы они выполнили ряд
-операций с целевым приложением, а также либо просто визуально убедились в отсутствии глюков, либо уделили достаточно много времени
-тестированию приложения с помощью соответствующего инструмента. Однако такой подход имеет один важный недостаток
-– человек физически не способен обрабатывать информацию при очень быстрой смене кадров.
-Кроме того, такая работа занимает много времени, утомляет и не гарантирует полное отсутствие ошибок.
-</p>
-
-<p>
-  Гораздо эффективнее записать ключевые показатели производительности, полученные в ходе автоматического
-тестирования интерфейса, и проанализировать их. В состав Android M Developer Preview входят новые функции ведения журналов, которые позволяют с легкостью
-определить объем и серьезность глюков анимации в приложении.
-Их также можно использовать для того, чтобы создать строгий процесс определения текущей производительности и отслеживать соответствие требованиям будущих задач
-производительности.
-</p>
-
-<p>
-  В этой статье мы расскажем вам, как мы рекомендуем использовать такие данные, чтобы автоматизировать
-тестирование производительности.
-</p>
-
-<p>
-  Этот подход большей частью сводится к двум ключевым шагам. Шаг первый: определите, что вы
-тестируете и как вы это делаете. Шаг второй: произведите настройку
-среды автоматизированного тестирования и ее обслуживание.
-</p>
-
-
-<h3 id="ui-tests">Настройка тестов интерфейса</h3>
-
-<p>
-  Прежде чем приступить к автоматизированному тестированию, необходимо принять ряд важных решений,
-чтобы правильно определить область тестирования и ваши требования.
-</p>
-
-<h4>
-  Определение ключевых анимаций или потоков для тестирования
-</h4>
-
-<p>
-  Помните, что плохая производительность чаще всего выражается для пользователей в отсутствии плавной
-анимации. Поэтому при определении того, какие типы действий в пользовательском интерфейсе следует протестировать, полезно
-сосредоточить внимание на ключевых анимациях, наиболее важных для
-взаимодействия пользователя с приложением. Ниже представлены примеры наиболее распространенных сценариев, которые может оказаться полезным определить.
-</p>
-
-<ul>
-  <li>Прокрутка основного представления ListView или RecyclerView
-  </li>
-
-  <li>Анимации во время циклов асинхронного ожидания
-  </li>
-
-  <li>Любые анимации, включающие загрузку растровых изображений или манипуляции с ними
-  </li>
-
-  <li>Анимации, включающие смешивание альфа-канала
-  </li>
-
-  <li>Отрисовка настраиваемого представления на экране
-  </li>
-</ul>
-
-<p>
-  Определите, какие из этих
-ключевых анимаций следует протестироваит в первую очередь. При принятии решения подключите инженеров, дизайнеров и менеджеров по продукту.
-</p>
-
-<h4>
-  Определите свои будущие задачи и отслеживайте их выполнение
-</h4>
-
-<p>
-  С профессиональной точки зрения, может оказаться крайне важным решить, каких именно показателей производительности вы хотите добиться, и
-сосредоточить усилия на создании необходимых тестов и сборе соответствующих данных. Например:
-</p>
-
-<ul>
-  <li>Вы только хотите начать отслеживание производительности интерфейса, чтобы получить дополнительные сведения?
-  </li>
-
-  <li>Вы хотите предотвратить возможно снижение производительности в будущем?
-  </li>
-
-  <li>На сегодняшний день 90% кадров анимируются плавно. Вы хотите увеличить этот показатель до 98% в этом квартале?
-  </li>
-
-  <li>На сегодняшний день 98% кадров анимируются плавно. Вы не хотите, чтобы производительность снизилась?
-  </li>
-
-  <li>Вы хотите улучшить производительность на бюджетных устройствах?
-  </li>
-</ul>
-
-<p>
-  Во всех перечисленных случаях вам потребуется хронологическое отслеживание показателей, демонстрирующих производительность
-разных версий вашего приложения.
-</p>
-
-<h4>
-  Определение устройств для тестирования
-</h4>
-
-<p>
-  Производительность приложения может меняться в зависимости от того, на каком устройстве оно установлено. Некоторые устройства могут обладать недостаточным
-объемом памяти, менее производительными графическими процессорами или слабыми ЦП. Это означает, что анимации,
-которые прекрасно работают на устройстве с одним оборудованием, могут вообще не работать на устройстве с другим оборудованием, и, что хуже всего, препятствовать
-нормальной работе другой части конвейера. Поэтому, учитывая такую разницу
-в отображении интерфейса для пользователей, выберите диапазон устройств для выполнения тестов, включив в него
-как современные высокотехнологичные, так и бюджетные устройства, планшеты и т. д. При выборе диапазона устройств учитывайте разницу в производительности ЦП
-, ОЗУ, разрешение экрана, его размер и т. д. Тесты, которые успешно прошли на устройстве верхнего ценового сегмента,
-могут завершиться сбоем на бюджетных моделях.
-</p>
-
-<h4>
-  Базовые средства для тестирования пользовательского интерфейса
-</h4>
-
-<p>
-  Такие наборы инструментов, как <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a> и
-<a href="{@docRoot}training/testing/ui-testing/espresso-testing.html">Espresso</a>,
-призваны помочь автоматизировать действия пользователей при взаимодействии с вашим приложением. Это простые инструменты,
-имитирующие работу пользователя на устройстве. Для использования этих инструментов
-вам необходимо создать уникальные сценарии, которые будут включать выполнение ряда действий, и воспроизвести
-их на устройстве.
-</p>
-
-<p>
-  Используя эти автоматизированные тесты в сочетании с командой <code>dumpsys gfxinfo</code>, вы можете быстро создать
-воспроизводимую систему, позволяющую выполнять тестирование и анализировать
-полученную информацию о производительности для каждого определенного условия.
-</p>
-
-
-<h3 id="automated-tests">Настройка автоматизированного тестирования интерфейса</h3>
-
-<p>
-  Получив возможность протестировать интерфейс, а также настроив конвейер на сбор результатов
-отдельного теста, важно выбрать инструмент, который позволит многократно выполнить
-тест на нескольких устройствах, а также объединить данные о результатах
-тестирования производительности для их дальнейшего анализа вашими специалистами по разработке.
-</p>
-
-<h4>
-  Инструмент для автоматизации тестирования
-</h4>
-
-<p>
-  Следует отметить, что инструменты для тестирования интерфейса (такие как <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a>)
-можно запускать прямо на целевом устройстве или в эмуляторе. Тогда как сбор командой
-<em>dumpsys gfxinfo</em> информации о производительности выполняется на хост-компьютере, который отправляет команды из ADB. Чтобы объединить
-усилия этих двух инструментов, был разработан <a href="{@docRoot}tools/help/monkeyrunner_concepts.html">MonkeyRunner</a>. 
-Эта система написания сценариев, работающая на хост-компьютере, отправляет команды на
-подключенные устройства, а также получает данные от них.
-</p>
-
-<p>
-  Набор сценариев для надлежащей автоматизации тестирования производительности интерфейса должен включать использование
-системы MonkeyRunner хотя бы для выполнения следующих задач:
-</p>
-
-<ul>
-  <li>загрузка и запуск на целевые устройства или в эмулятор необходимого пакета APK;
-  </li>
-
-  <li>запуск теста UI Automator и его выполнение;
-  </li>
-
-  <li>сбор информации о производительности с помощью <em>dumpsys gfxinfo</em><em>;</em>
-  </li>
-
-  <li>объединение полученной информации и ее отображение для разработчика в удобочитаемой форме.
-  </li>
-</ul>
-
-
-<h3 id="triage">Определение и устранение обнаруженных проблем</h3>
-
-<p>
-  После обнаружения проблемных мест или причин снижения производительности необходимо понять, что должно быть исправлено
-и внести соответствующие изменения. Если используемый инструмент для автоматизированного тестирования обеспечивает соблюдение точной разбивки
-кадровой синхронизации по времени, то с его помощью можно тщательно изучить недавние подозрительные изменения в коде или макете (в случае
-со снижением производительности), а также ограничить область системы, которая подлежит анализу, когда вы переключаетесь на изучение проблемы
-вручную. В последнем случае прекрасно подойдет <a href="{@docRoot}tools/help/systrace.html">systrace</a>. С помощью этого инструмента вы можете получить подробнейшую информацию
-о синхронизации относительно каждого этапа конвейера рендеринга, относительно каждого потока и каждого ядра
-системы, а также относительно любых настраиваемых маркеров событий, которые вы задаете.
-</p>
-
-<h4>
-  Надлежащее профилирование синхронизации по времени
-</h4>
-
-<p>
-  Важно отметить трудности, с которыми можно столкнуться при получении и анализе данных синхронизации, связанных
-с производительностью визуализации. Результаты по своей природе недетерминированные и зачастую
-изменяются в зависимости от состояния системы, объема доступной памяти, температурного
-дросселирования и времени суток. Смысл в том, что
-вы можете выполнить один и тот же тест дважды и получить результаты,
-которые будут похожи, но не совпадут в точности.
-</p>
-
-<p>
-  Правильный сбор и профилирование данных означает выполнение одного и того же теста
-несколько раз и накопление результатов для вычисления среднего значения (для простоты назовем это
-пакетом результатов). Это позволяет получить приблизительное представление о производительности
-теста, когда нет необходимости в точных данных.
-</p>
-
-<p>
-  Пакеты можно использовать при изучении изменений кода, чтобы увидеть их относительное влияние на
-производительность. Если средняя частота кадров для пакета результатов, полученных до изменения, больше значения для пакета, полученного
-после изменения, обычно вы получаете общее повышение производительности в результате этого конкретного
-изменения.
-</p>
-
-<p>
-  При выполнении любого автоматизированного тестирования интерфейса следует учитывать этот момент,
-равно как и любые аномалии, которые могут возникнуть во время теста. Например,
-если производительность вашего приложения неожиданно резко падает из-за проблем с оборудованием устройства (которые
-не вызваны вашим приложением), возможно, вы захотите выполнить пакет повторно, чтобы получить
-менее беспорядочные данные о синхронизации.
-</p>
-
-<p>
-  Итак, сколько раз следует выполнять тест, прежде чем его результаты станут значимыми? Не менее 10!
- Чем больше раз вы выполняете тест (например, можно сделать 50–100 прогонов), тем выше точность результатов
-(хотя, конечно, ради точности приходится поступаться временем).
-</p>
diff --git a/docs/html-intl/intl/ru/sdk/index.jd b/docs/html-intl/intl/ru/sdk/index.jd
new file mode 100644
index 0000000..765c89c
--- /dev/null
+++ b/docs/html-intl/intl/ru/sdk/index.jd
@@ -0,0 +1,432 @@
+page.title=Загрузка Android Studio и инструментов SDK
+page.tags=sdk, android studio
+page.template=sdk
+page.image=images/cards/android-studio_2x.png
+header.hide=1
+page.metaDescription=Загрузите официальные средства разработки Android для создания приложений для смартфонов, планшетов, носимых устройств, телевизоров и многих других устройств под управлением ОС Android.
+
+@jd:body
+
+<style type="text/css">
+  .offline {display:none;}
+  h2.feature {
+    padding-top:30px;
+    margin-top:0;
+    clear:both;
+  }
+  .feature-blurb {
+  margin:0px; font-size:16px; font-weight:300;
+  padding-top:40px;
+  }
+
+  .landing-button .small {
+    font-size: 12px;
+    font-weight: normal;
+    line-height: 12px;
+    display: block;
+  }
+
+  h1.studio-logo {
+    width:226px;
+    height:78px;
+    display:block;
+    padding:0;
+    white-space: nowrap;
+    text-indent: -10000px;
+    font-size:0px;
+    background: url({@docRoot}images/tools/studio-logo.png);
+    background-image: -webkit-image-set(url({@docRoot}images/tools/studio-logo.png) 1x, url({@docRoot}images/tools/studio-logo_2x.png) 2x);
+    background-size: 226px 78px;
+  }
+
+</style>
+
+
+
+
+
+<div style="position:relative;">
+
+
+<div class="wrap" id="tos" style="display:none;width:inherit;height:650px">
+<div class="col-13" style="margin:0;">&nbsp;</div><!-- provides top margin for content -->
+
+<h1 id="tos-header" style="margin-top:0">Загрузка</h1>
+
+<p class="sdk-terms-intro">Прежде чем устанавливать Android Studio или отдельный пакет инструментов SDK,
+примите указанные ниже положения и условия.</p>
+
+<div class="sdk-terms" onfocus="this.blur()">
+<h2 class="norule">Положения и условия</h2>
+Данный документ представляет собой Лицензионное соглашение на использование набора средств разработки программного обеспечения Android
+
+
+<h3>1. Introduction</h3>
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+
+<h3>2. Accepting this License Agreement</h3>
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
+
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
+
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+
+
+<h3>3. SDK License from Google</h3>
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
+
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
+
+3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
+
+
+<h3>4. Use of the SDK by You</h3>
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+
+<h3>5. Your Developer Credentials</h3>
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+
+<h3>6. Privacy and Information</h3>
+6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy.
+
+
+<h3>7. Third Party Applications</h3>
+7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
+
+
+<h3>8. Using Android APIs</h3>
+8.1 Google Data APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+
+<h3>9. Terminating this License Agreement</h3>
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
+(B) Google is required to do so by law; or
+(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
+(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
+
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+
+
+<h3>10. DISCLAIMER OF WARRANTIES</h3>
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+
+<h3>11. LIMITATION OF LIABILITY</h3>
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+
+<h3>12. Indemnification</h3>
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
+
+
+<h3>13. Changes to the License Agreement</h3>
+13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available.
+
+
+<h3>14. General Legal Terms</h3>
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+
+<em>November 20, 2015</em>
+</div>
+
+
+
+
+
+<div id="next-steps" style="display:none;position:absolute;width:inherit">
+  <p>Еще буквально несколько шагов, — и вы сможете приступить к разработке приложений для Android!</p>
+  <p>Через некоторое время вы будете перенаправлены на страницу
+<a id="next-link" href="{@docRoot}sdk/installing/index.html">установки Android SDK</a>.</p>
+
+</div><!-- end next-steps -->
+
+
+
+<div id="sdk-terms-form">
+<p>
+<input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+<label id="agreeLabel" for="agree">Я прочитал(а) и принимаю изложенные выше положения и условия</label>
+</p>
+<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+</div>
+
+
+</div><!-- end TOS -->
+
+
+
+
+
+
+<div id="landing">
+
+<div class="col-13">&nbsp;</div><!-- provides top margin for content -->
+
+<img src="{@docRoot}images/tools/studio-hero.png" srcset="{@docRoot}images/tools/studio-hero_2x.png 2x, {@docRoot}images/tools/studio-hero.png 1x" width="760" height="400"/>
+
+<div style="color: #fff; width:226px; height:0; overflow:visible; position:absolute; top:40px; left:25px">
+
+<h1 class="studio-logo" style="margin:0 0 35px !important">Android Studio</h1>
+
+<p style="font-size: 16px; color:#bbb; position: absolute;left: 297px; top: 5px; display: block;
+width: 400px;text-align: center;">Официальная среда разработки Android</p>
+
+<ul style="font-size:12px;line-height:19px;">
+<li>Среда разработки Android Studio</li>
+<li>Инструменты Android SDK</li>
+<li>Платформа Android 6.0 (Marshmallow)</li>
+<li>Системный образ Android 6.0 с API Google для эмулятора</li>
+</ul>
+
+<a class="online landing-button green download-bundle-button"
+href="#Other" >Download Android Studio<br/><span class='small'></span></a>
+
+<!-- this appears when viewing the offline docs -->
+<p class="offline">
+Чтобы загрузить Android Studio или отдельные инструменты SDK, посетите веб-сайт <a href="http://developer.android.com/sdk/index.html">developer.android.com/sdk/</a>
+</p>
+</div>
+
+<ul>
+  <li><a href="#Requirements">Требования к системе</a></li>
+  <li><a href="#Other">Другие варианты загрузки</a></li>
+  <li><a href="{@docRoot}sdk/installing/migrate.html">Переход на Android Studio</a></li>
+  <li><a href="https://docs.google.com/a/google.com/forms/d/1mjsyfzv3HAnDY-_Kfj-3QJKdpuksyMFs9e73CRwmT6Q/viewform" target="_blank">Опрос</a></li>
+</ul>
+
+</div>
+
+
+
+
+<h2 class="feature norule" >Интеллектуальный редактор программного кода</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-code.png" srcset="{@docRoot}images/tools/studio-hero-code_2x.png 2x, {@docRoot}images/tools/studio-hero-code.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>В основе Android Studio лежит интеллектуальный редактор исходного кода, предлагающий такие возможности, как расширенное
+ автозавершение кода, его реструктуризация и анализ.</p>
+  <p>Этот редактор поможет вам повысить эффективность разработки приложений для Android.</p>
+</div>
+
+
+
+
+
+<h2 class="feature norule">Шаблоны программного кода и интеграция с GitHub</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-import.png" srcset="{@docRoot}images/tools/studio-hero-import_2x.png 2x, {@docRoot}images/tools/studio-hero-import.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Новые мастеры создания проектов в еще большей степени упрощают работу с новыми проектами.</p>
+
+  <p>Создавая новый проект, используйте шаблоны программного кода для таких общих фрагментов, как элементы для навигации по приложению и представления,
+а также импортируйте примеры кода Google прямо из GitHub.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">Разработка приложений с поддержкой экранов разного размера</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-screens.png" srcset="{@docRoot}images/tools/studio-hero-screens_2x.png 2x, {@docRoot}images/tools/studio-hero-screens.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Создавайте приложения для смартфонов и планшетов под управлением Android, для Android Wear
+, Android TV, Android Auto и даже Google Glass.</p>
+  <p>Благодаря новому представлению Android Project и поддержке модулей в Android Studio вы можете с легкостью
+управлять своими проектами и ресурсами.
+</div>
+
+
+
+
+<h2 class="feature norule">Виртуальные устройства на любой вкус и цвет</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-avds.png" srcset="{@docRoot}images/tools/studio-hero-avds_2x.png 2x, {@docRoot}images/tools/studio-hero-avds.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>В состав Android Studio входит оптимизированный эмулятор.</p>
+  <p>Обновленный и оптимизированный диспетчер виртуальных устройств порадует вас широким набором
+предварительно настроенных профилей устройств Android.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">
+Эволюция сборок Android благодаря Gradle</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-gradle.png" srcset="{@docRoot}images/tools/studio-hero-gradle_2x.png 2x, {@docRoot}images/tools/studio-hero-gradle.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Создавайте несколько APK для ваших приложений с различными функциональными возможностями — в рамках одного и того же проекта.</p>
+  <p>Управляйте зависимостями между приложениями с помощью Maven.</p>
+  <p>Создавайте APK в Android Studio или прямо в командной строке.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">Подробнее об Android Studio</h2>
+<div style="background:#424242;padding:30px; color:#fff;margin:0 0 15px;">
+
+<a class="online landing-button green download-bundle-button" style="margin:0 0 40px 60px;float:right" href="">Download</a>
+
+  <ul>
+  <li>Создано на основе IntelliJ IDEA Community Edition, популярной среды разработки Java от JetBrains.</li>
+  <li>Гибкая система сборки на основе Gradle.</li>
+  <li>Различные варианты сборки и методы создания файлов APK.</li>
+  <li>Расширенная поддержка шаблонов для служб Google и устройств различных типов.</li>
+  <li>Функциональный редактор макетов с поддержкой редактирования тем оформления.</li>
+  <li>Инструментарий lint для решения проблем с производительностью, удобством использования, совместимостью версий и т. д.</li>
+  <li>ProGuard и возможности подписи приложений.</li>
+  <li>Встроенная поддержка Google Cloud Platform, обеспечивающая удобство интеграции со службами Google Cloud
+ Messaging и App Engine.</li>
+  </ul>
+
+<p style="margin:0">
+Подробные сведения о возможностях Android Studio
+изложены в руководстве <a href="{@docRoot}tools/studio/index.html">Android Studio Basics</a>.</p>
+</div>
+
+
+<p>Если вы используете Eclipse с ADT, вам следует знать, что Android Studio теперь является официальной средой разработки для
+Android, поэтому переходите на Android Studio, чтобы всегда иметь под рукой новейшие
+инструменты разработки приложений. Сведения о том, как перенести свои проекты,
+приведены в документе <a href="{@docRoot}sdk/installing/migrate.html">Переход на Android
+Studio</a>.</p>
+
+
+
+
+
+
+
+<h2 id="Requirements">Требования к системе</h2>
+
+<h3>Windows</h3>
+
+<ul>
+<li>Microsoft&reg; Windows&reg; 8/7/Vista/2003 (32- или 64-разрядная версия)</li>
+<li>ОЗУ не менее 2 ГБ (рекомендуется 4 ГБ)</li>
+<li>400 МБ свободного места на жестком диске</li>
+<li>Не менее 1 ГБ для Android SDK, системных образов эмулятора и кэшированных файлов</li>
+<li>Экран с разрешением не менее 1280 x 800 точек</li>
+<li>Java Development Kit (JDK) 7 </li>
+<li>Дополнительно для эмулятора с ускорителем: Процессор Intel® с поддержкой Intel® VT-x, Intel® EM64T
+(Intel® 64) и функцией XD-Bit</li>
+</ul>
+
+
+<h3>Mac OS X</h3>
+
+<ul>
+<li>Mac&reg; OS X&reg; 10.8.5 или более поздней версии вплоть до 10.9 (Mavericks)</li>
+<li>ОЗУ не менее 2 ГБ (рекомендуется 4 ГБ)</li>
+<li>400 МБ свободного места на жестком диске</li>
+<li>Не менее 1 ГБ для Android SDK, системных образов эмулятора и кэшированных файлов</li>
+<li>Экран с разрешением не менее 1280 x 800 точек</li>
+<li>Java Runtime Environment (JRE) 6</li>
+<li>Java Development Kit (JDK) 7</li>
+<li>Дополнительно для эмулятора с ускорителем: Процессор Intel® с поддержкой Intel® VT-x, Intel® EM64T
+(Intel® 64) и функцией XD-Bit</li>
+</ul>
+
+<p>В Mac OS для оптимизации отображения шрифтов Android Studio рекомендуется запускать с
+Java Runtime Environment (JRE) 6. Впоследствии проекты можно настроить на использование Java Development Kit (JDK) 6 или JDK 7.</p>
+
+
+
+<h3>Linux</h3>
+
+<ul>
+<li>Рабочий стол GNOME или KDE</li>
+<li>Библиотека GNU C (glibc) 2.15 или более поздней версии</li>
+<li>ОЗУ не менее 2 ГБ (рекомендуется 4 ГБ)</li>
+<li>400 МБ свободного места на жестком диске</li>
+<li>Не менее 1 ГБ для Android SDK, системных образов эмулятора и кэшированных файлов</li>
+<li>Экран с разрешением не менее 1280 x 800 точек</li>
+<li>Oracle&reg; Java Development Kit (JDK) 7 </li>
+</ul>
+<p>Работа Android Studio протестирована в ОС Ubuntu&reg;  14.04, Trusty Tahr (64-разрядная версия с поддержкой запуска
+32-разрядных приложений).</p>
+
+
+
+
+<h2 id="Other" style="clear:left">Другие варианты загрузки</h2>
+
+<!-- alternative SDK options follows -->
diff --git a/docs/html-intl/intl/ru/sdk/installing/adding-packages.jd b/docs/html-intl/intl/ru/sdk/installing/adding-packages.jd
new file mode 100644
index 0000000..19d1edd2
--- /dev/null
+++ b/docs/html-intl/intl/ru/sdk/installing/adding-packages.jd
@@ -0,0 +1,226 @@
+page.title=Добавление пакетов SDK
+
+page.tags=менеджер sdk
+
+@jd:body
+
+<style>
+ol.large {
+  margin-left:0;
+}
+ol.large > li {
+  list-style-position: inside;
+  list-style-type:none;
+  margin:30px 0 0 0;
+  padding:30px 20px;
+  background:#eee;
+}
+ol.large > li:nth-child(odd) {
+}
+ol.large > li:before {
+  display:inline;
+  left:-40px;
+  float:left;
+  width:20px;
+  font-size:20px;
+  line-height:20px;
+}
+ol.large > li > h2 {
+  font-size:20px;
+  line-height:20px;
+  padding:0 0 0 20px;
+  margin:0 0 20px 0;
+  display:inline;
+  font-weight:normal;
+}
+ol.large > li:nth-child(1):before {
+  content:"1. ";
+}
+ol.large > li:nth-child(2):before {
+  content:"2. ";
+}
+ol.large > li:nth-child(3):before {
+  content:"3. ";
+}
+ol.large > li:nth-child(4):before {
+  content:"4. ";
+}
+ol.large > li:nth-child(5):before {
+  content:"5. ";
+}
+ol.large > li:nth-child(6):before {
+  content:"6. ";
+}
+</style>
+
+
+<p>
+По умолчанию SDK Android включает в себя не все инструменты, которые необходимы для того, чтобы приступить к разработке приложений.
+Инструменты, платформы и другие компоненты представлены в Android SDK в виде отдельных пакетов, которые при
+необходимости можно загрузить с помощью
+<a href="{@docRoot}tools/help/sdk-manager.html">менеджера SDK Android</a>.
+Поэтому, прежде чем приступить к работе, в пакет SDK Android необходимо добавить некоторые дополнительные пакеты.</p>
+
+<p>Для добавления пакетов необходимо запустить менеджер SDK. Существует несколько способов запуска менеджера.</p>
+<ul>
+  <li>В Android Studio щелкните элемент <strong>SDK Manager</strong>
+<img src="{@docRoot}images/tools/sdk-manager-studio.png" style="vertical-align:bottom;margin:0;height:17px" /> на панели инструментов.</li>
+  <li>Для тех, кто не пользуется Android Studio:
+    <ul>
+      <li>Windows: Дважды щелкните файл <code>SDK Manager.exe</code>, который находится в корневом каталоге пакета Android
+SDK.</li>
+      <li>Mac/Linux: Откройте окно терминала и перейдите в каталог <code>tools/</code> пакета Android
+SDK, после чего выполните команду <code>android sdk</code>.</li>
+    </ul>
+  </li>
+</ul>
+
+<p>При первом запуске менеджера SDK по умолчанию
+выбраны всего несколько пакетов. Оставьте выбор по умолчанию, однако убедитесь в том, что в них имеется все необходимое
+для начала работы. Для этого выполните указанные ниже действия.</p>
+
+
+<ol class="large">
+<li>
+  <h2 id="GetTools" class="norule">Загрузите актуальные инструменты SDK</h2>
+
+<img src="/images/sdk_manager_packages.png" alt="" width="350" style="float:right;margin-left:20px" />
+
+  <p>Во время установки SDK Android
+необходимо как минимум загрузить актуальные инструменты и платформу Android.</p>
+  <ol>
+   <li>Откройте каталог Tools и выберите следующее:
+     <ul>
+       <li><strong>Инструменты Android SDK</strong>;</li>
+       <li><strong>Инструменты платформы Android SDK</strong>;</li>
+       <li><strong>Инструменты сборки Android SDK</strong> (последнюю версию).</li>
+     </ul>
+   </li>
+   <li>Откройте первую папку Android X.X (последней версии) и выберите следующее:
+     <ul>
+      <li><strong>Платформа SDK</strong></li>
+      <li>системный образ для эмулятора, например <br>
+      <strong>ARM EABI v7a System Image</strong>.</li>
+     </ul>
+   </li>
+  </ol>
+</li>
+
+<li>
+  <h2 id="GetSupportLib" class="norule">Загрузите вспомогательную библиотеку для дополнительных API-интерфейсов</h2>
+
+  <div class="sidebox">
+    <p>Вспомогательная библиотека требуется для следующих ОС:</p>
+    <ul>
+      <li><a href="{@docRoot}wear/index.html">Android Wear</a>;</li>
+      <li><a href="{@docRoot}tv/index.html">Android TV</a>;</li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a>.</li>
+    </ul>
+
+    <p>В ней также представлены следующие популярные API-интерфейсы:</p>
+    <ul>
+      <li><a href="{@docRoot}reference/android/support/v4/widget/DrawerLayout.html">панель
+навигации</a>;</li>
+      <li><a href="{@docRoot}reference/android/support/v4/view/ViewPager.html">пролистывание представлений</a>;</li>
+      <li><a href="{@docRoot}reference/android/support/v7/app/ActionBar.html">строка действий с обратной
+совместимостью</a>.</li>
+    </ul>
+  </div>
+
+  <p>Во <a href="{@docRoot}tools/support-library/features.html">вспомогательной библиотеке Android</a>
+представлен широкий набор API-интерфейсов, которые совместимы с большинством версий ОС Android.</p>
+
+  <p>Откройте каталог <strong>Extras (Дополнения)</strong> и выберите следующее:</p>
+     <ul>
+       <li><strong>Android Support Repository (Репозиторий вспомогательных библиотек Android)</strong>;</li>
+       <li><strong>Вспомогательная библиотека Android</strong></li>
+     </ul>
+
+  <p>&nbsp;</p>
+  <p>&nbsp;</p>
+
+</li>
+
+
+<li>
+  <h2 id="GetGoogle" class="norule">Загрузите службы Google Play, чтобы получить доступ к еще большему количеству API-интерфейсов</h2>
+
+  <div class="sidebox">
+
+    <p>API-интерфейсы служб Google Play предлагают различные возможности и службы для ваших приложений Android,
+включая следующие:</p>
+    <ul>
+      <li><a href="{@docRoot}google/play-services/plus.html">аутентификация пользователей</a>;</li>
+      <li><a href="{@docRoot}google/play-services/maps.html">Google Карты</a>;</li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a>.</li>
+      <li><a href="{@docRoot}google/play-services/games.html">достижения и списки
+лидеров в играх</a>;</li>
+      <li><a href="{@docRoot}google/play-services/index.html">а также множество других возможностей</a>.</li>
+    </ul>
+  </div>
+
+  <p>Для разработки приложений с помощью API-интерфейсов Google вам потребуется пакет служб Google Play.</p>
+  <p>Откройте каталог <strong>Extras (Дополнения)</strong> и выберите следующее:</p>
+     <ul>
+       <li><strong>Google Repository (Репозиторий Google)</strong>;</li>
+       <li><strong>Google Play services (службы Google Play)</strong>.</li>
+     </ul>
+
+  <p class="note"><strong>Примечание.</strong> API-интерфейсы служб Google Play доступны не на всех устройствах
+Android, однако предлагаются на всех устройствах с доступом к магазину Google Play. Для использования
+этих API-интерфейсов в эмуляторе Android необходимо также установить системный образ <strong>API-интерфейсов Google</strong>,
+который находится в менеджере SDK в папке актуальной версии Android X.X.</p>
+</li>
+
+
+<li>
+  <h2 id="Install" class="norule">Установите пакеты</h2>
+  <p>После выбора всех необходимых пакетов можно продолжить установку.</p>
+  <ol>
+   <li>Нажмите кнопку <strong>Install X packages</strong>.</li>
+   <li>В появившемся окне дважды щелкните имя каждого пакета, находящегося в области слева,
+чтобы принять условия лицензии для каждого из них.</li>
+   <li>Нажмите кнопку <strong>Install</strong>.</li>
+  </ol>
+  <p>В нижней части окна менеджера SDK находится индикатор загрузки.
+  <strong>Не закрывайте менеджер SDK</strong>, поскольку это приведет к отмене процесса загрузки.</p>
+</li>
+
+<li>
+  <h2 id="Build" class="norule">Приступайте к созданию приложений</h2>
+
+<p>После загрузки необходимых пакетов в SDK Android вы можете приступать к созданию приложений для
+Android. По мере выхода новых инструментов и других API-интерфейсов просто запустите менеджер SDK
+и загрузите новые пакеты.</p>
+
+<p>Вот некоторые варианты того, как можно приступить к работе:</p>
+
+<div class="cols" style="padding:10px 0">
+<div class="col-4">
+<h3>Для новичков</h3>
+<p>Если вы делаете только первые шаги в разработке приложений Android, рекомендуем ознакомиться с основами приложений Android и обратиться к
+руководству <strong><a href="{@docRoot}training/basics/firstapp/index.html">по созданию своего первого приложения</a></strong>.</p>
+
+</div>
+<div class="col-4 box">
+<h3>Создание приложений для носимых устройств</h3>
+<p>Если вы готовы приступить к созданию приложений для носимых устройств Android, ознакомьтесь с руководством по
+<strong><a href="{@docRoot}wear/preview/start.html">созданию приложений для ОС Android Wear</a></strong>.</p>
+
+</div>
+<div class="col-4 box">
+<h3>Использование API-интерфейсов Google</h3>
+<p>Чтобы начать работу с API-интерфейсами Google, такими как Карты или
+службы Google Play, рекомендуем обратиться к руководству по
+<strong><a href="{@docRoot}google/play-services/setup.html">настройке служб Google
+Play</a></strong>.</p>
+
+</div>
+</div><!-- end cols -->
+
+
+</li>
+
+</ol>
+
+
diff --git a/docs/html-intl/intl/ru/training/material/animations.jd b/docs/html-intl/intl/ru/training/material/animations.jd
new file mode 100644
index 0000000..9808a9f
--- /dev/null
+++ b/docs/html-intl/intl/ru/training/material/animations.jd
@@ -0,0 +1,550 @@
+page.title=Определение настраиваемой анимации
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Содержание этого урока</h2>
+<ol>
+  <li><a href="#Touch">Настройка реакции на касание</a></li>
+  <li><a href="#Reveal">Применение эффекта появления</a></li>
+  <li><a href="#Transitions">Настройка переходов</a></li>
+  <li><a href="#ViewState">Анимация изменений состояния представления</a></li>
+  <li><a href="#AnimVector">Анимация векторных элементов</a></li>
+</ol>
+<h2>См. также</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Спецификация Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design в Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Благодаря анимациям в Material Design пользователи получают отклик на выполняемые
+действия. Кроме того, анимации обеспечивают зрительную связь при взаимодействии с приложением. Тема Material Design содержит ряд анимаций
+по умолчанию для кнопок и переходов, а в Android 5.0 (уровень API 21) и более поздних версиях можно настраивать эти анимации
+и создавать новые:</p>
+
+<ul>
+<li>реакция на касание;</li>
+<li>круговое появление;</li>
+<li>переходы;</li>
+<li>перемещение по кривой;</li>
+<li>изменение состояний представления.</li>
+</ul>
+
+
+<h2 id="Touch">Настройка реакции на касание</h2>
+
+<p>Реакция на касание в Material Design обеспечивает моментальное визуальное подтверждение взаимодействия пользователя с элементами интерфейса в точке касания.
+ В стандартной анимации
+для реакции на нажатие кнопок используется новый класс {@link android.graphics.drawable.RippleDrawable}, обеспечивающий переход между разными состояниями с созданием эффекта ряби.
+</p>
+
+<p>В большинстве случаев эту возможность следует применять в XML-файле представления, указав фон представления следующим образом:
+</p>
+
+<ul>
+<li><code>?android:attr/selectableItemBackground</code> для ограниченной области ряби;</li>
+<li><code>?android:attr/selectableItemBackgroundBorderless</code> для ряби, распространяемой за границы представления.
+ При отрисовке она будет ограничиваться ближайшим родительским элементом представления со значением фона, отличным от null.
+</li>
+</ul>
+
+<p class="note"><strong>Примечание.</strong> <code>selectableItemBackgroundBorderless</code> — это новый атрибут, представленный в уровне API 21.
+</p>
+
+
+<p>Также можно определить {@link android.graphics.drawable.RippleDrawable}
+ в качестве XML-ресурса с помощью элемента <code>ripple</code>.</p>
+
+<p>Можно назначить цвет для объектов {@link android.graphics.drawable.RippleDrawable}. Чтобы
+изменить стандартный цвет отклика на касание, воспользуйтесь атрибутом темы <code>android:colorControlHighlight</code>
+.</p>
+
+<p>Дополнительные сведения представлены в справке по API для класса {@link
+android.graphics.drawable.RippleDrawable}.</p>
+
+
+<h2 id="Reveal">Применение эффекта появления</h2>
+
+<p>Анимация эффекта появления обеспечивает зрительную связь с действиями пользователя, когда отображается или скрывается группа элементов интерфейса.
+ С помощью метода {@link android.view.ViewAnimationUtils#createCircularReveal
+ViewAnimationUtils.createCircularReveal()} можно анимировать ограничивающий круг, чтобы отобразить или скрыть с экрана представление.
+</p>
+
+<p>Как отобразить ранее скрытое представление с помощью этого эффекта:</p>
+
+<pre>
+// previously invisible view
+View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the final radius for the clipping circle
+int finalRadius = Math.max(myView.getWidth(), myView.getHeight());
+
+// create the animator for this view (the start radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius);
+
+// make the view visible and start the animation
+myView.setVisibility(View.VISIBLE);
+anim.start();
+</pre>
+
+<p>Как скрыть ранее отображавшееся представление с помощью этого эффекта:</p>
+
+<pre>
+// previously visible view
+final View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the initial radius for the clipping circle
+int initialRadius = myView.getWidth();
+
+// create the animation (the final radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, initialRadius, 0);
+
+// make the view invisible when the animation is done
+anim.addListener(new AnimatorListenerAdapter() {
+    &#64;Override
+    public void onAnimationEnd(Animator animation) {
+        super.onAnimationEnd(animation);
+        myView.setVisibility(View.INVISIBLE);
+    }
+});
+
+// start the animation
+anim.start();
+</pre>
+
+
+<h2 id="Transitions">Настройка переходов</h2>
+
+<!-- shared transition video -->
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay="">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.webm">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.ogv">
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <p class="img-caption" style="margin-top:3px;margin-bottom:10px"><strong>Рисунок 1.</strong> Переход с общими элементами.
+</p>
+    <em>Для воспроизведения фильма нажмите экран устройства</em>
+  </div>
+</div>
+
+<p>Переходы в приложениях Material Design обеспечивают зрительные связи между различными состояниями путем движения элементов и преобразований между общими элементами.
+ Можно выбрать настраиваемые анимации для начальных и конечных переходов, а также для переходов общих элементов между операциями.
+</p>
+
+<ul>
+<li><strong>Начальный</strong> переход определяет порядок появления на экране представлений в операции.
+ Например, в начальном переходе <em>explode</em> представления появляются на экране извне и перемещаются к центру экрана.
+</li>
+
+<li><strong>Конечный</strong> переход определяет порядок исчезновения с экрана представлений в операции. Например, в конечном переходе <em>explode</em> представления исчезают
+с экрана в направлении из центра к краям.
+</li>
+
+<li>Переход <strong>общих элементов</strong> определяет порядок перехода между операциями представлений, используемых в обеих операциях.
+ Например, если в двух
+операциях используется одно и то же изображение, но в разных позициях и с разными размерами, в случае применения перехода общего элемента <em>changeImageTransform</em> выполняется плавное перемещение и масштабирование изображения между этими операциями.
+</li>
+</ul>
+
+<p>В Android 5.0 (уровень API 21) поддерживаются следующие начальные и конечные переходы:</p>
+
+<ul>
+<li><em>explode</em> — перемещение представлений в центр экрана или из центра;</li>
+<li><em>slide</em> — перемещение представлений к одному из краев экрана или от него;</li>
+<li><em>fade</em> — отображение или скрытие представления на экране путем изменения его прозрачности.</li>
+</ul>
+
+<p>Любой переход, являющийся наследованием класса {@link android.transition.Visibility}, поддерживается как начальный или конечный переход.
+ Дополнительные сведения представлены в справке по API для класса 
+{@link android.transition.Transition}.</p>
+
+<p>В Android 5.0 (уровень API 21) также поддерживаются следующие переходы общих элементов:</p>
+
+<ul>
+<li><em>changeBounds</em> — анимация изменений границ макетов целевых представлений;</li>
+<li><em>changeClipBounds</em> — анимация изменений границ обрезки целевых представлений;</li>
+<li><em>changeTransform</em> — анимация изменений параметров масштабирования и поворота целевых представлений;</li>
+<li><em>changeImageTransform</em> — анимация изменений размеров и параметров масштабирования целевых изображений.</li>
+</ul>
+
+<p>Если активировать переходы в приложении, то между начальной и конечной операциями активируется стандартный переход методом плавной замены.
+</p>
+
+<img src="{@docRoot}training/material/images/SceneTransition.png" alt="" width="600" height="405" style="margin-top:20px" />
+<p class="img-caption">
+  <strong>Рисунок 2.</strong> Переход с одним общим элементом.
+</p>
+
+<h3>Определение настраиваемых переходов</h3>
+
+<p>Сначала необходимо активировать переходы содержимого окна с помощью атрибута <code>android:windowContentTransitions</code>
+при определении стиля, наследуемого из темы Material Design. В определении стиля можно указать начальный и конечный переходы, а также переходы общих элементов:
+</p>
+
+<pre>
+&lt;style name="BaseAppTheme" parent="android:Theme.Material">
+  &lt;!-- enable window content transitions -->
+  &lt;item name="android:windowContentTransitions">true&lt;/item>
+
+  &lt;!-- specify enter and exit transitions -->
+  &lt;item name="android:windowEnterTransition">@transition/explode&lt;/item>
+  &lt;item name="android:windowExitTransition">@transition/explode&lt;/item>
+
+  &lt;!-- specify shared element transitions -->
+  &lt;item name="android:windowSharedElementEnterTransition">
+    &#64;transition/change_image_transform&lt;/item>
+  &lt;item name="android:windowSharedElementExitTransition">
+    &#64;transition/change_image_transform&lt;/item>
+&lt;/style>
+</pre>
+
+<p>Переход <code>change_image_transform</code> в этом примере задается следующим образом:</p>
+
+<pre>
+&lt;!-- res/transition/change_image_transform.xml -->
+&lt;!-- (see also Shared Transitions below) -->
+&lt;transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;changeImageTransform/>
+&lt;/transitionSet>
+</pre>
+
+<p>Элемент <code>changeImageTransform</code> соответствует классу
+{@link android.transition.ChangeImageTransform}. Дополнительные сведения представлены в справке по API для {@link android.transition.Transition}.
+</p>
+
+<p>Чтобы активировать в своем коде переходы содержимого окна, вызовите метод 
+{@link android.view.Window#requestFeature Window.requestFeature()}:</p>
+
+<pre>
+// inside your activity (if you did not enable transitions in your theme)
+getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+
+// set an exit transition
+getWindow().setExitTransition(new Explode());
+</pre>
+
+<p>Чтобы задать переходы в своем коде, вызовите следующие методы с использованием объекта {@link
+android.transition.Transition}:</p>
+
+<ul>
+  <li>{@link android.view.Window#setEnterTransition Window.setEnterTransition()};</li>
+  <li>{@link android.view.Window#setExitTransition Window.setExitTransition()};</li>
+  <li>{@link android.view.Window#setSharedElementEnterTransition
+      Window.setSharedElementEnterTransition()};</li>
+  <li>{@link android.view.Window#setSharedElementExitTransition
+      Window.setSharedElementExitTransition()}.</li>
+</ul>
+
+<p>Методы {@link android.view.Window#setExitTransition setExitTransition()} и {@link
+android.view.Window#setSharedElementExitTransition setSharedElementExitTransition()} задают конечный переход для вызывающей операции.
+ Методы {@link android.view.Window#setEnterTransition
+setEnterTransition()} и {@link android.view.Window#setSharedElementEnterTransition
+setSharedElementEnterTransition()} задают начальный переход для вызываемой операции.</p>
+
+<p>Чтобы в полной мере реализовать возможности перехода, необходимо активировать переходы содержимого окна как в вызывающей, так и в вызываемой операции.
+ В противном случае вызывающая операция запустит конечный переход, однако будет выполнен переход окна (например, масштабирование или затемнение).
+</p>
+
+<p>Чтобы запустить начальный переход как можно раньше, используйте в вызываемой операции метод 
+{@link android.view.Window#setAllowEnterTransitionOverlap Window.setAllowEnterTransitionOverlap()}
+. Это позволит сделать начальные переходы более эффектными.</p>
+
+<h3>Запуск операции с помощью переходов</h3>
+
+<p>Если в приложении разрешены переходы и для операции задан конечный переход, переход активируется при запуске другой операции следующим образом:
+</p>
+
+<pre>
+startActivity(intent,
+              ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
+</pre>
+
+<p>Если для второй операции задан начальный переход, он также активируется при запуске операции.
+ Чтобы отключить переходы при запуске другой операции, укажите
+значение <code>null</code> для набора параметров.</p>
+
+<h3>Запуск операции с помощью общего элемента</h3>
+
+<p>Порядок анимации перехода на экране между двумя операциями с общим элементом</p>
+
+<ol>
+<li>Активируйте в своей теме переходы содержимого окна.</li>
+<li>В определении стиля укажите переходы общих элементов.</li>
+<li>Определите свой переход как XML-ресурс.</li>
+<li>Присвойте одинаковое имя общим элементам в обоих макетах, используя для этого атрибут 
+<code>android:transitionName</code>.</li>
+<li>Воспользуйтесь методом {@link android.app.ActivityOptions#makeSceneTransitionAnimation
+ActivityOptions.makeSceneTransitionAnimation()}.</li>
+</ol>
+
+<pre>
+// get the element that receives the click event
+final View imgContainerView = findViewById(R.id.img_container);
+
+// get the common element for the transition in this activity
+final View androidRobotView = findViewById(R.id.image_small);
+
+// define a click listener
+imgContainerView.setOnClickListener(new View.OnClickListener() {
+    &#64;Override
+    public void onClick(View view) {
+        Intent intent = new Intent(this, Activity2.class);
+        // create the transition animation - the images in the layouts
+        // of both activities are defined with android:transitionName="robot"
+        ActivityOptions options = ActivityOptions
+            .makeSceneTransitionAnimation(this, androidRobotView, "robot");
+        // start the new activity
+        startActivity(intent, options.toBundle());
+    }
+});
+</pre>
+
+<p>Для общих динамических представлений, создаваемых в коде, используйте метод
+{@link android.view.View#setTransitionName View.setTransitionName()} для определения одинакового имени элемента в обеих операциях.
+</p>
+
+<p>Чтобы выполнить анимацию обратного перехода по завершении второй операции, вызовите метод 
+{@link android.app.Activity#finishAfterTransition Activity.finishAfterTransition()}
+ вместо{@link android.app.Activity#finish Activity.finish()}.</p>
+
+<h3>Запуск операции с несколькими общими элементами</h3>
+
+<p>Чтобы создать анимацию перехода на экране между двумя операциями с несколькими общими
+элементами, определите общие элементы в обоих макетах с помощью атрибута <code>android:transitionName</code>
+ (или воспользуйтесь методом {@link android.view.View#setTransitionName View.setTransitionName()} в обеих
+операциях), а затем создайте объект {@link android.app.ActivityOptions}, как указано ниже.</p>
+
+<pre>
+ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(this,
+        Pair.create(view1, "agreedName1"),
+        Pair.create(view2, "agreedName2"));
+</pre>
+
+
+<h2 id="CurvedMotion">Использование перемещения по кривой</h2>
+
+<p>При анимации в Material Design используются кривые для интерполяции по времени и создания схем перемещения в пространстве.
+ В Android 5.0 (уровень API 21) и более поздних версиях имеется возможность определить для анимаций настраиваемые кривые синхронизации и схемы перемещения по кривой.
+</p>
+
+<p>Класс {@link android.view.animation.PathInterpolator} — это новый интерполятор на
+основе кривой Безье или объекта {@link android.graphics.Path}. Данный интерполятор определяет перемещение по кривой в квадрате 1 x 1 с привязкой в точках (0,0) и (1,1), а также с контрольными точками, задаваемыми с помощью аргументов конструктора.
+
+ Также можно определить интерполятор траектории в качестве XML-ресурса:</p>
+
+<pre>
+&lt;pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
+    android:controlX1="0.4"
+    android:controlY1="0"
+    android:controlX2="1"
+    android:controlY2="1"/>
+</pre>
+
+<p>В системе имеются XML-ресурсы для трех основных кривых в спецификации Material Design:
+</p>
+
+<ul>
+  <li><code>&#64;interpolator/fast_out_linear_in.xml</code>;</li>
+  <li><code>&#64;interpolator/fast_out_slow_in.xml</code>;</li>
+  <li><code>&#64;interpolator/linear_out_slow_in.xml</code>.</li>
+</ul>
+
+<p>Можно передать объект {@link android.view.animation.PathInterpolator} в метод {@link
+android.animation.Animator#setInterpolator Animator.setInterpolator()}.</p>
+
+<p>Класс {@link android.animation.ObjectAnimator} имеет новые конструкторы, с помощью которых можно анимировать координаты вдоль траектории перемещения, используя для этого не менее двух свойств.
+ Например, следующий аниматор
+использует объект {@link android.graphics.Path} для анимации свойств представления по осям X и Y:</p>
+
+<pre>
+ObjectAnimator mAnimator;
+mAnimator = ObjectAnimator.ofFloat(view, View.X, View.Y, path);
+...
+mAnimator.start();
+</pre>
+
+
+<h2 id="ViewState">Анимация изменений состояния представления</h2>
+
+<p>С помощью класса {@link android.animation.StateListAnimator} можно определить аниматоры, которые запускаются при изменении состояния представления.
+ В следующем примере показан порядок определения {@link
+android.animation.StateListAnimator} в качестве XML-ресурса:</p>
+
+<pre>
+&lt;!-- animate the translationZ property of a view when pressed -->
+&lt;selector xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;item android:state_pressed="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="@android:integer/config_shortAnimTime"
+        android:valueTo="2dp"
+        android:valueType="floatType"/>
+        &lt;!-- you could have other objectAnimator elements
+             here for "x" and "y", or other properties -->
+    &lt;/set>
+  &lt;/item>
+  &lt;item android:state_enabled="true"
+    android:state_pressed="false"
+    android:state_focused="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="100"
+        android:valueTo="0"
+        android:valueType="floatType"/>
+    &lt;/set>
+  &lt;/item>
+&lt;/selector>
+</pre>
+
+<p>Чтобы присоединить к представлению настраиваемые анимации состояния представления, определите аниматор, используя элемент 
+<code>selector</code> в файле XML-ресурса (как в этом примере), а затем назначьте его своему представлению
+с помощью атрибута <code>android:stateListAnimator</code>. Чтобы в своем коде назначить представлению аниматор
+ списка состояний, используйте метод {@link android.animation.AnimatorInflater#loadStateListAnimator
+AnimationInflater.loadStateListAnimator()}, а затем назначьте аниматор своему представлению с помощью метода 
+{@link android.view.View#setStateListAnimator View.setStateListAnimator()}.</p>
+
+<p>Если ваша тема является расширением темы Material Design, по умолчанию у кнопок имеется возможность анимации по оси Z. Чтобы отключить
+такое поведение кнопок, задайте для атрибута <code>android:stateListAnimator</code> значение 
+<code>@null</code>.</p>
+
+<p>С помощью класса {@link android.graphics.drawable.AnimatedStateListDrawable} можно создавать элементы, которые служат для отображения анимации между изменениями состояния связанного представления.
+ В Android 5.0 в некоторых системных виджетах такая анимация используется по умолчанию.
+ В следующем примере показан порядок
+определения {@link android.graphics.drawable.AnimatedStateListDrawable} в качестве XML-ресурса:</p>
+
+<pre>
+&lt;!-- res/drawable/myanimstatedrawable.xml -->
+&lt;animated-selector
+    xmlns:android="http://schemas.android.com/apk/res/android">
+
+    &lt;!-- provide a different drawable for each state-->
+    &lt;item android:id="@+id/pressed" android:drawable="@drawable/drawableP"
+        android:state_pressed="true"/>
+    &lt;item android:id="@+id/focused" android:drawable="@drawable/drawableF"
+        android:state_focused="true"/>
+    &lt;item android:id="@id/default"
+        android:drawable="@drawable/drawableD"/>
+
+    &lt;!-- specify a transition -->
+    &lt;transition android:fromId="@+id/default" android:toId="@+id/pressed">
+        &lt;animation-list>
+            &lt;item android:duration="15" android:drawable="@drawable/dt1"/>
+            &lt;item android:duration="15" android:drawable="@drawable/dt2"/>
+            ...
+        &lt;/animation-list>
+    &lt;/transition>
+    ...
+&lt;/animated-selector>
+</pre>
+
+
+<h2 id="AnimVector">Анимация векторных элементов</h2>
+
+<p><a href="{@docRoot}training/material/drawables.html#VectorDrawables">Векторные элементы</a> можно масштабировать без ущерба четкости.
+ Класс {@link android.graphics.drawable.AnimatedVectorDrawable}
+позволяет анимировать свойства векторного элемента.</p>
+
+<p>Анимированные векторные элементы обычно определяются в трех XML-файлах:</p>
+
+<ul>
+<li>векторный элемент с элементом <code>&lt;vector&gt;</code> в
+<code>res/drawable/</code>;</li>
+<li>анимированный векторный элемент с элементом <code>&lt;animated-vector&gt;</code> в
+<code>res/drawable/</code>;</li>
+<li>один или несколько аниматоров для объектов с элементом <code>&lt;objectAnimator&gt;</code> в
+<code>res/anim/</code>.</li>
+</ul>
+
+<p>С помощью анимированных векторных элементов можно анимировать атрибуты элементов <code>&lt;group&gt;</code> и
+<code>&lt;path&gt;</code>. Элемент<code>&lt;group&gt;</code> определяет набор траекторий
+или подгрупп, а элемент <code>&lt;path&gt;</code> — траектории для прорисовки.</p>
+
+<p>При определении векторного элемента, который требуется анимировать, используйте атрибут <code>android:name</code>
+для назначения уникальных имен группам или траекториям, чтобы на них можно было сослаться в определениях аниматора.
+ Например:</p>
+
+<pre>
+&lt;!-- res/drawable/vectordrawable.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="64dp"
+    android:width="64dp"
+    android:viewportHeight="600"
+    android:viewportWidth="600">
+    &lt;group
+        <strong>android:name="rotationGroup"</strong>
+        android:pivotX="300.0"
+        android:pivotY="300.0"
+        android:rotation="45.0" >
+        &lt;path
+            <strong>android:name="v"</strong>
+            android:fillColor="#000000"
+            android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
+    &lt;/group>
+&lt;/vector>
+</pre>
+
+<p>Определение анимированного векторного элемента ссылается на группы и траектории в векторном элементе, используя их имена:
+</p>
+
+<pre>
+&lt;!-- res/drawable/animvectordrawable.xml -->
+&lt;animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+  android:drawable="@drawable/vectordrawable" >
+    &lt;target
+        android:name="rotationGroup"
+        android:animation="@anim/rotation" />
+    &lt;target
+        android:name="v"
+        android:animation="@anim/path_morph" />
+&lt;/animated-vector>
+</pre>
+
+<p>Определения анимации представляются объектами {@link android.animation.ObjectAnimator} или {@link
+android.animation.AnimatorSet}. Первый аниматор в этом примере поворачивает целевую группу на 360 градусов:
+</p>
+
+<pre>
+&lt;!-- res/anim/rotation.xml -->
+&lt;objectAnimator
+    android:duration="6000"
+    android:propertyName="rotation"
+    android:valueFrom="0"
+    android:valueTo="360" />
+</pre>
+
+<p>Второй аниматор в этом примере преобразует траекторию векторного элемента из одной формы в другую.
+ Для преобразования обе траектории должны быть совместимы: они должны содержать одинаковое количество команд, а также одинаковое количество параметров для каждой команды.
+</p>
+
+<pre>
+&lt;!-- res/anim/path_morph.xml -->
+&lt;set xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;objectAnimator
+        android:duration="3000"
+        android:propertyName="pathData"
+        android:valueFrom="M300,70 l 0,-70 70,70 0,0   -70,70z"
+        android:valueTo="M300,70 l 0,-70 70,0  0,140 -70,0 z"
+        android:valueType="pathType" />
+&lt;/set>
+</pre>
+
+<p>Дополнительные сведения представлены в справке по API для {@link
+android.graphics.drawable.AnimatedVectorDrawable}.</p>
diff --git a/docs/html-intl/intl/ru/training/material/compatibility.jd b/docs/html-intl/intl/ru/training/material/compatibility.jd
new file mode 100644
index 0000000..b7ca338
--- /dev/null
+++ b/docs/html-intl/intl/ru/training/material/compatibility.jd
@@ -0,0 +1,168 @@
+page.title=Обеспечение совместимости
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Содержание этого урока</h2>
+<ol>
+  <li><a href="#Theme">Определение альтернативных стилей</a></li>
+  <li><a href="#Layouts">Предоставление альтернативных макетов</a></li>
+  <li><a href="#SupportLib">Использование вспомогательной библиотеки</a></li>
+  <li><a href="#CheckVersion">Проверка версии системы</a></li>
+</ol>
+<h2>См. также</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Спецификация Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design в Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Некоторые возможности Material Design, такие как "материальные" темы и настраиваемые переходы между операциями,
+ доступны только в Android 5.0 (уровень API 21) и более поздних версиях. Однако приложения можно разработать таким образом,
+чтобы эти функции были доступны при запуске на устройствах, поддерживающих Material Design, сохранив при этом
+совместимость приложений с устройствами под управлением более ранних выпусков Android.</p>
+
+
+<h2 id="Theme">Определение альтернативных стилей</h2>
+
+<p>Приложение можно настроить так, чтобы тема Material Design использовалась при работе на поддерживающих эту технологию устройствах,
+а при запуске приложения на устройствах с более ранними версиями Android происходило переключение на старые варианты тем. Ниже описан порядок такой настройки.</p>
+
+<ol>
+<li>В файле
+<code>res/values/styles.xml</code> определите тему, наследующую более старой теме (например, Holo).</li>
+<li>В файле
+<code>res/values-v21/styles.xml</code> определите тему с таким же именем, наследующую теме Material Design.</li>
+<li>В файле манифеста укажите эту тему как тему приложения.</li>
+</ol>
+
+<p class="note"><strong>Примечание.</strong>
+Если в приложении используется тема Material Design, но отсутствует определенная описанным способом альтернативная тема,
+это приложение не будет запускаться на устройствах под управлением версий Android, предшествующих 5.0.
+</p>
+
+
+<h2 id="Layouts">Предоставление альтернативных макетов</h2>
+
+<p>Если в создаваемых согласно рекомендациям Material Design макетах отсутствуют новые
+атрибуты XML, представленные в Android 5.0 (уровень API 21),
+такие макеты поддерживаются в предыдущих версиях ОС Android. В противном случае необходимо предоставить альтернативные макеты. Можно также предоставить
+альтернативные макеты для настройки внешнего вида приложения в более ранних версиях Android.</p>
+
+<p>Создайте файлы макета для Android 5.0 (уровень API 21) в <code>res/layout-v21/</code>,
+а также файлы альтернативного макета для более ранних версий Android (в <code>res/layout/</code>).
+Например, <code>res/layout/my_activity.xml</code> — это альтернативный макет для
+<code>res/layout-v21/my_activity.xml</code>.</p>
+
+<p>Чтобы сделать код более компактным, определите стили в <code>res/values/</code>, измените
+ стили в <code>res/values-v21/</code> для новых API, а также используйте наследование стилей,
+ определив основные стили в <code>res/values/</code> и задав наследование из них в <code>res/values-v21/</code>.</p>
+
+
+<h2 id="SupportLib">Использование вспомогательной библиотеки</h2>
+
+<p><a href="{@docRoot}tools/support-library/features.html#v7">Вспомогательные библиотеки v7</a>
+r21 и более поздних версий включают следующие функции Material Design:</p>
+
+<ul>
+<li><a href="{@docRoot}training/material/theme.html">стили Material Design</a> для некоторых
+системных виджетов в случае применения одной из тем <code>Theme.AppCompat</code>;</li>
+<li><a href="{@docRoot}training/material/theme.html#ColorPalette">атрибуты цветовой палитры темы</a>
+в темах <code>Theme.AppCompat</code>;</li>
+<li>виджет {@link android.support.v7.widget.RecyclerView} для <a href="{@docRoot}training/material/lists-cards.html#RecyclerView">отображения коллекций
+данных</a>;</li>
+<li>виджет {@link android.support.v7.widget.CardView} для <a href="{@docRoot}training/material/lists-cards.html#CardView">создания карточек</a>;</li>
+<li>класс {@link android.support.v7.graphics.Palette} для <a href="{@docRoot}training/material/drawables.html#ColorExtract">извлечения главных цветов
+на изображениях</a>.</li>
+</ul>
+
+<h3>Системные виджеты</h3>
+
+<p>В темах <code>Theme.AppCompat</code> имеются стили Material Design для следующих виджетов:</p>
+
+<ul>
+  <li>{@link android.widget.EditText};</li>
+  <li>{@link android.widget.Spinner};</li>
+  <li>{@link android.widget.CheckBox};</li>
+  <li>{@link android.widget.RadioButton};</li>
+  <li>{@link android.support.v7.widget.SwitchCompat};</li>
+  <li>{@link android.widget.CheckedTextView}.</li>
+</ul>
+
+<h3>Цветовая палитра</h3>
+
+<p>Чтобы получить стили Material Design и настроить цветовую палитру с помощью вспомогательной библиотеки
+Android v7, примените одну из следующих тем <code>Theme.AppCompat</code>:</p>
+
+<pre>
+&lt;!-- extend one of the Theme.AppCompat themes -->
+&lt;style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
+    &lt;!-- customize the color palette -->
+    &lt;item name="colorPrimary">@color/material_blue_500&lt;/item>
+    &lt;item name="colorPrimaryDark">@color/material_blue_700&lt;/item>
+    &lt;item name="colorAccent">@color/material_green_A200&lt;/item>
+&lt;/style>
+</pre>
+
+<h3>Списки и карточки</h3>
+
+<p>Виджеты {@link android.support.v7.widget.RecyclerView} и {@link
+android.support.v7.widget.CardView} имеются в более ранних версиях Android. Они находятся во
+вспомогательной библиотеке Android v7, и для них существуют следующие ограничения.</p>
+<ul>
+<li>В виджете {@link android.support.v7.widget.CardView} применяется программная реализация тени
+с помощью дополнительного отступа.</li>
+<li>Виджет {@link android.support.v7.widget.CardView} не выполняет обрезку своих дочерних представлений,
+пересекающихся со скругленными углами.</li>
+</ul>
+
+
+<h3>Зависимости</h3>
+
+<p>Чтобы воспользоваться этими возможностями в версиях Android, предшествующих 5.0 (уровень API 21), включите в свой проект вспомогательную библиотеку
+Android v7 как <a href="{@docRoot}/sdk/installing/studio-build.html#dependencies">зависимость Gradle</a>:</p>
+
+<pre>
+dependencies {
+    compile 'com.android.support:appcompat-v7:21.0.+'
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
+
+
+<h2 id="CheckVersion">Проверка версии системы</h2>
+
+<p>Следующие функции доступны только в Android 5.0 (уровень API 21) и более поздних версиях:</p>
+
+<ul>
+<li>переходы;</li>
+<li>реакция на касание;</li>
+<li>анимации появления;</li>
+<li>анимации по траектории;</li>
+<li>векторные элементы;</li>
+<li>тонирование элементов дизайна.</li>
+</ul>
+
+<p>Чтобы обеспечить совместимость приложения с более ранними версиями Android, проверьте системный параметр {@link
+android.os.Build.VERSION#SDK_INT version} во время запуска, прежде чем вызвать API любой из этих
+функций:</p>
+
+<pre>
+// Check if we're running on Android 5.0 or higher
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+    // Call some material design APIs here
+} else {
+    // Implement this feature without material design
+}
+</pre>
+
+<p class="note"><strong>Примечание.</strong> Чтобы указать версии Android, поддерживаемые вашим приложением,
+установите атрибуты <code>android:minSdkVersion</code> и <code>android:targetSdkVersion</code>
+в файле манифеста. Чтобы использовать функции Material Design, которые имеются в Android 5.0, задайте
+для атрибута <code>android:targetSdkVersion</code> значение <code>21</code>. Дополнительные сведения см.
+ в <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">руководстве по API
+&lt;uses-sdk&gt;</a>.</p>
diff --git a/docs/html-intl/intl/ru/training/material/drawables.jd b/docs/html-intl/intl/ru/training/material/drawables.jd
new file mode 100644
index 0000000..2554f07
--- /dev/null
+++ b/docs/html-intl/intl/ru/training/material/drawables.jd
@@ -0,0 +1,126 @@
+page.title=Работа с элементами дизайна
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Содержание этого урока</h2>
+<ol>
+  <li><a href="#DrawableTint">Тонирование элементов дизайна</a></li>
+  <li><a href="#ColorExtract">Извлечение главных цветов на изображении</a></li>
+  <li><a href="#VectorDrawables">Создание векторных элементов</a></li>
+</ol>
+<h2>См. также</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Спецификация Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design в Android</a></li>
+</ul>
+</div>
+</div>
+
+<p>Указанные ниже возможности по работе с элементами дизайна позволяют реализовать в приложении элементы Material Design:</p>
+
+<ul>
+<li>тонирование элементов дизайна;</li>
+<li>извлечение главного цвета;</li>
+<li>создание векторных элементов.</li>
+</ul>
+
+<p>В этом уроке рассматривается порядок использования этих функций в приложении.</p>
+
+
+<h2 id="DrawableTint">Тонирование элементов дизайна</h2>
+
+<p>В Android 5.0 (уровень API 21) и более поздних версий можно тонировать растровые изображения и изображения в формате NinePatch, определенные как
+альфа-маски. Для тонирования можно применять как цветовые ресурсы, так и атрибуты темы, которые
+разрешаются в цветовые ресурсы (например, <code>?android:attr/colorPrimary</code>). Обычно такие ресурсы создаются
+только один раз, после чего они автоматически окрашиваются для соответствия цветам темы.</p>
+
+<p>Тонирование можно применить к объектам {@link android.graphics.drawable.BitmapDrawable} и {@link
+android.graphics.drawable.NinePatchDrawable} с помощью метода {@code setTint()}. Также можно
+задать цвет и способ тонирования в макетах, используя для этого атрибуты <code>android:tint</code> и 
+<code>android:tintMode</code>.</p>
+
+
+<h2 id="ColorExtract">Извлечение главных цветов на изображении</h2>
+
+<p>Во вспомогательной библиотеке Android r21 и более поздних версий содержится класс {@link
+android.support.v7.graphics.Palette},
+с помощью которого можно извлекать следующие главные цвета на изображении:</p>
+
+<ul>
+<li>насыщенные цвета;</li>
+<li>насыщенные темные цвета;</li>
+<li>насыщенные светлые цвета;</li>
+<li>приглушенные цвета;</li>
+<li>приглушенные темные цвета;</li>
+<li>приглушенные светлые цвета.</li>
+</ul>
+
+<p>Для извлечения этих цветов передайте объект {@link android.graphics.Bitmap} в статический метод
+{@link android.support.v7.graphics.Palette#generate Palette.generate()} в фоновом
+потоке, где загружаются изображения. Если невозможно использовать этот поток, вместо этого вызовите метод
+{@link android.support.v7.graphics.Palette#generateAsync Palette.generateAsync()} и укажите
+модуль прослушивания.</p>
+
+<p>Извлечь главные цвета на изображении можно также с помощью методов getter из класса
+<code>Palette</code>, таких как <code>Palette.getVibrantColor</code>.</p>
+
+<p>Чтобы использовать класс {@link android.support.v7.graphics.Palette} в своем проекте, добавьте в модуль своего приложения следующую
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">зависимость Gradle</a>:
+</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:palette-v7:21.0.0'
+}
+</pre>
+
+<p>Дополнительные сведения представлены в справке по API для класса {@link android.support.v7.graphics.Palette}
+.</p>
+
+
+<h2 id="VectorDrawables">Создание векторных элементов</h2>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=wlFVIIstKmA" style="margin-top:18px">
+<div>
+    <h3>Видео</h3>
+    <p>Векторная графика в Android</p>
+</div>
+</a>
+
+<p>В Android 5.0 (уровень API 21) и более поздних версий имеется возможность определить векторные элементы, которые можно масштабировать без ущерба для четкости.
+ Для векторного изображения требуется лишь один файл ресурсов, тогда как для растровых изображений необходим отдельный файл ресурсов для каждой плотности экрана.
+ Чтобы создать векторное изображение, укажите детали формы в XML-элементе <code>&lt;vector&gt;</code>.
+</p>
+
+<p>В следующем примере создается векторное изображение в форме сердца.</p>
+
+<pre>
+&lt;!-- res/drawable/heart.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    &lt;!-- intrinsic size of the drawable -->
+    android:height="256dp"
+    android:width="256dp"
+    &lt;!-- size of the virtual canvas -->
+    android:viewportWidth="32"
+    android:viewportHeight="32">
+
+  &lt;!-- draw a path -->
+  &lt;path android:fillColor="#8fff"
+      android:pathData="M20.5,9.5
+                        c-1.955,0,-3.83,1.268,-4.5,3
+                        c-0.67,-1.732,-2.547,-3,-4.5,-3
+                        C8.957,9.5,7,11.432,7,14
+                        c0,3.53,3.793,6.257,9,11.5
+                        c5.207,-5.242,9,-7.97,9,-11.5
+                        C25,11.432,23.043,9.5,20.5,9.5z" />
+&lt;/vector>
+</pre>
+
+<p>Векторные изображения представлены в Android как объекты {@link android.graphics.drawable.VectorDrawable}.
+ Дополнительные сведения о синтаксисе <code>pathData</code> см. в <a href="http://www.w3.org/TR/SVG11/paths.html#PathData">справке по траекториям SVG</a>. Дополнительные сведения
+об анимации свойств векторных элементов см. в разделе
+<a href="{@docRoot}training/material/animations.html#AnimVector">Анимация векторных элементов</a>.</p>
diff --git a/docs/html-intl/intl/ru/training/material/get-started.jd b/docs/html-intl/intl/ru/training/material/get-started.jd
new file mode 100644
index 0000000..476de7f
--- /dev/null
+++ b/docs/html-intl/intl/ru/training/material/get-started.jd
@@ -0,0 +1,171 @@
+page.title=Начало работы
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Содержание этого урока</h2>
+<ol>
+  <li><a href="#ApplyTheme">Применение темы Material Design</a></li>
+  <li><a href="#Layouts">Разработка макетов</a></li>
+  <li><a href="#Depth">Установка высоты представлений</a></li>
+  <li><a href="#ListsCards">Создание списков и карточек</a></li>
+  <li><a href="#Animations">Настройка анимации</a></li>
+</ol>
+<h2>См. также</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Спецификация Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design в Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Порядок создания приложения с элементами Material Design</p>
+
+<ol>
+  <li style="margin-bottom:10px">
+    Ознакомьтесь со <a href="http://www.google.com/design/spec">спецификацией Material Design</a>.</li>
+  <li style="margin-bottom:10px">
+    Примените <strong>тему Material Design</strong> к своему приложению.</li>
+  <li style="margin-bottom:10px">
+    Создайте <strong>макеты</strong> в соответствии с рекомендациями Material Design.</li>
+  <li style="margin-bottom:10px">
+    Установите <strong>высоту</strong> своих представлений для отбрасывания теней.</li>
+  <li style="margin-bottom:10px">
+    Используйте системные <strong>виджеты</strong> для списков и карточек.</li>
+  <li style="margin-bottom:10px">
+    Настройте <strong>анимацию</strong> в своем приложении.</li>
+</ol>
+
+<h3>Обеспечение обратной совместимости</h3>
+
+<p>В приложении можно реализовать множество функций Material Design и одновременно сохранить его совместимость с версиями Android, предшествующими версии 5.0.
+ Дополнительные сведения представлены на странице
+<a href="{@docRoot}training/material/compatibility.html">Обеспечение совместимости</a>.</p>
+
+<h3>Обновление приложения с добавлением элементов Material Design</h3>
+
+<p>Чтобы дополнить существующее приложение функциями и элементами Material Design, обновите макеты в соответствии с рекомендациями Material Design.
+ Также не забудьте добавить в приложение функции глубины, реакции на касание и анимации.
+</p>
+
+<h3>Создание новых приложений с элементами Material Design</h3>
+
+<p>При создании приложений с "материальными" функциями следуйте <a href="http://www.google.com/design/spec">рекомендациям Material Design</a>, которые позволят вам получить целостное представление о новых принципах дизайна.
+ При проектировании и разработке своего приложения следуйте инструкциям и используйте новые функциональные возможности платформы Android.
+</p>
+
+
+<h2 id="ApplyTheme">Применение темы Material Design</h2>
+
+<p>Чтобы применить тему Material Design в своем приложении, укажите стиль, который наследует от 
+<code>android:Theme.Material</code>:</p>
+
+<pre>
+&lt;!-- res/values/styles.xml -->
+&lt;resources>
+  &lt;!-- your theme inherits from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- theme customizations -->
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<p>В теме Material Design содержатся обновленные системные виджеты, для которых можно настраивать цветовую палитру, а также стандартные анимации для реакции на касания и переходы.
+ Дополнительные сведения представлены в разделе
+<a href="{@docRoot}training/material/theme.html">Использование темы Material Design</a>.</p>
+
+
+<h2 id="Layouts">Разработка макетов</h2>
+
+<p>Помимо применения и настройки темы Material Design, необходимо соответствие
+<a href="http://www.google.com/design/spec">рекомендациям Material Design</a> используемых макетов. При разработке макетов необходимо контролировать следующие элементы:
+</p>
+
+<ul>
+<li>сетки базовых линий;</li>
+<li>контуры;</li>
+<li>интервалы;</li>
+<li>размер целевой области касания;</li>
+<li>структура макета.</li>
+</ul>
+
+
+<h2 id="Depth">Определение высоты представлений</h2>
+
+<p>Представления могут отбрасывать тени, и значение высоты определяет размер тени и порядок ее прорисовки.
+ Чтобы установить высоту представления, используйте в макетах атрибут
+<code>android:elevation</code>:</p>
+
+<pre>
+&lt;TextView
+    android:id="&#64;+id/my_textview"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="&#64;string/next"
+    android:background="&#64;color/white"
+    android:elevation="5dp" />
+</pre>
+
+<p>С помощью нового свойства <code>translationZ</code> можно создавать анимации, которые отражают временные изменения в высоте представления.
+ Изменения высоты могут быть полезны при
+<a href="{@docRoot}training/material/animations.html#ViewState">реагировании на сенсорные
+жесты</a>.</p>
+
+<p>Дополнительные сведения представлены в разделе <a href="{@docRoot}training/material/shadows-clipping.html">Определение теней и обрезка представлений</a>.
+</p>
+
+
+<h2 id="ListsCards">Создание списков и карточек</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} представляет собой более гибкую версию {@link
+android.widget.ListView}. Она поддерживает различные типы макетов и способствует повышению производительности.
+{@link android.support.v7.widget.CardView} обеспечивает единообразное отображение фрагментов информации внутри карточек в разных приложениях.
+ В следующем примере показано, как включить
+{@link android.support.v7.widget.CardView} в макет:</p>
+
+<pre>
+&lt;android.support.v7.widget.CardView
+    android:id="&#64;+id/card_view"
+    android:layout_width="200dp"
+    android:layout_height="200dp"
+    card_view:cardCornerRadius="3dp">
+    ...
+&lt;/android.support.v7.widget.CardView>
+</pre>
+
+<p>Дополнительные сведения представлены в разделе <a href="{@docRoot}training/material/lists-cards.html">Создание списков и карточек</a>.
+</p>
+
+
+<h2 id="Animations">Настройка анимации</h2>
+
+<p>В состав Android 5.0 (уровень API 21) входят новые API для создания в приложении настраиваемой анимации.
+Например, можно разрешать переходы между операциями и задавать для операций конечный переход:
+</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // enable transitions
+        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+        setContentView(R.layout.activity_my);
+    }
+
+    public void onSomeButtonClicked(View view) {
+        getWindow().setExitTransition(new Explode());
+        Intent intent = new Intent(this, MyOtherActivity.class);
+        startActivity(intent,
+                      ActivityOptions
+                          .makeSceneTransitionAnimation(this).toBundle());
+    }
+}
+</pre>
+
+<p>При запуске одной операции из другой активируется конечный переход.</p>
+
+<p>Подробные сведения о новых API для анимации см. в разделе <a href="{@docRoot}training/material/animations.html">Определение настраиваемой анимации</a>.</p>
diff --git a/docs/html-intl/intl/ru/training/material/index.jd b/docs/html-intl/intl/ru/training/material/index.jd
new file mode 100644
index 0000000..0b3f1c4
--- /dev/null
+++ b/docs/html-intl/intl/ru/training/material/index.jd
@@ -0,0 +1,61 @@
+page.title=Создание приложений с помощью Material Design 
+page.type=проектирование 
+page.image=images/cards/material_2x.png
+page.metaDescription=Научитесь применять Material Design к своим приложениям. 
+
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>Необходимые знания и компоненты</h2>
+  <ul>
+    <li>Android 5.0 (уровень API 21)</li>
+  </ul>
+</div>
+</div>
+
+<p>Material Design представляет собой комплексную концепцию создания визуальных, движущихся и интерактивных элементов для различных платформ и устройств.
+ Чтобы применить элементы Material Design в своих приложениях Android,
+руководствуйтесь инструкциями в
+<a href="http://www.google.com/design/spec/material-design/introduction.html">спецификации Material
+Design</a>, а также воспользуйтесь новыми компонентами и функциями, которые доступны в Android 5.0 (уровень API 21).
+</p>
+
+<p>Данный курс обучения посвящен созданию приложений Material Design, в ходе которого используются следующие элементы:</p>
+
+<ul>
+<li>тема Material Design;</li>
+<li>виджеты для карточек и списков;</li>
+<li>настраиваемые тени и обрезка представлений;</li>
+<li>векторные элементы;</li>
+<li>настраиваемая анимация.</li>
+</ul>
+
+<p>В этом курсе также рассматривается обеспечение обратной совместимости нового приложения, в котором используются функции Material Design, с версиями Android, предшествующими версии 5.0 (уровень API 21).
+</p>
+
+<h2>Уроки</h2>
+
+<dl>
+  <dt><a href="{@docRoot}training/material/get-started.html">Начало работы</a></dt>
+  <dd>Узнайте, как обновлять приложения с помощью элементов Material Design.</dd>
+
+  <dt><a href="{@docRoot}training/material/theme.html">Использование темы Material Design</a></dt>
+  <dd>Узнайте, как применять стили Material Design в приложениях.</dd>
+
+  <dt><a href="{@docRoot}training/material/lists-cards.html">Создание списков и карточек</a></dt>
+  <dd>Узнайте, как с помощью системных виджетов создавать единообразные списки и карточки.</dd>
+
+  <dt><a href="{@docRoot}training/material/shadows-clipping.html">Определение теней и обрезка представлений</a></dt>
+  <dd>Узнайте, как устанавливать высоту представлений для создания настраиваемых теней, а также обрезать представления.</dd>
+
+  <dt><a href="{@docRoot}training/material/drawables.html">Работа с элементами дизайна</a></dt>
+  <dd>Узнайте, как создавать векторные элементы и тонировать элементы дизайна.</dd>
+
+  <dt><a href="{@docRoot}training/material/animations.html">Определение настраиваемой анимации</a></dt>
+  <dd>Узнайте, как создавать настраиваемую анимацию для представлений и переходов между операциями, в которых используются общие элементы.</dd>
+
+  <dt><a href="{@docRoot}training/material/compatibility.html">Обеспечение совместимости</a></dt>
+  <dd>Узнайте, как обеспечить совместимость приложений с версиями платформы, предшествующими Android 5.0.</dd>
+</dl>
diff --git a/docs/html-intl/intl/ru/training/material/lists-cards.jd b/docs/html-intl/intl/ru/training/material/lists-cards.jd
new file mode 100644
index 0000000..44ff160
--- /dev/null
+++ b/docs/html-intl/intl/ru/training/material/lists-cards.jd
@@ -0,0 +1,266 @@
+page.title=Создание списков и карточек
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Содержание этого урока</h2>
+<ol>
+  <li><a href="#RecyclerView">Создание списков</a></li>
+  <li><a href="#CardView">Создание карточек</a></li>
+  <li><a href="#Dependencies">Добавление зависимостей</a></li>
+</ol>
+<h2>См. также</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Спецификация Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design в Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Для создания в приложениях составных списков и карточек с помощью стилей Material Design можно использовать виджеты
+{@link android.support.v7.widget.RecyclerView} и {@link android.support.v7.widget.CardView}.
+</p>
+
+
+<h2 id="RecyclerView">Создание списков</h2>
+
+<p>Виджет {@link android.support.v7.widget.RecyclerView} представляет собой расширенную и более гибкую версию {@link android.widget.ListView}.
+ Он является контейнером для отображения больших наборов данных, которые можно эффективно прокручивать, сохраняя при этом ограниченное количество представлений.
+ Виджет
+{@link android.support.v7.widget.RecyclerView} рекомендуется использовать в случаях, когда имеются коллекции данных, элементы которых изменяются во время выполнения в зависимости от действий пользователя или сетевых событий.
+</p>
+
+<p>Класс {@link android.support.v7.widget.RecyclerView} упрощает отображение и обработку больших наборов данных с помощью следующих возможностей:
+</p>
+
+<ul>
+  <li>менеджеров макетов для размещения элементов;</li>
+  <li>стандартных анимаций для операций с общими элементами, таких как удаление или добавление элементов.</li>
+</ul>
+
+<p>Также предоставляются гибкие возможности определения настраиваемых менеджеров макетов и анимации для виджетов {@link
+android.support.v7.widget.RecyclerView}.</p>
+
+<img src="{@docRoot}training/material/images/RecyclerView.png" alt="" width="550" height="106" />
+<p class="img-caption">
+<strong>Рисунок 1</strong>. Виджет <code>RecyclerView</code>.
+</p>
+
+<p>Чтобы воспользоваться виджетом {@link android.support.v7.widget.RecyclerView}, необходимо определить адаптер и менеджер макетов.
+ Для создания адаптера необходимо наследовать класс {@link
+android.support.v7.widget.RecyclerView.Adapter RecyclerView.Adapter}. Характеристики реализации зависят от особенностей используемого набора данных и типа представлений.
+ Дополнительные сведения представлены в <a href="#RVExamples">примерах</a> ниже.
+</p>
+
+<div style="float:right">
+<img src="{@docRoot}design/material/images/list_mail.png" alt="" width="250" height="426" />
+<p class="img-caption" style="margin-left:8px">
+<strong>Рисунок 2</strong>. Список с использованием <code>RecyclerView</code>.
+</p>
+</div>
+
+<p><strong>Менеджер макетов</strong> размещает представления элемента внутри {@link
+android.support.v7.widget.RecyclerView} и определяет порядок повторного использования представлений элемента, которые перестают быть видимыми пользователю.
+ Чтобы повторно использовать (или <em>перезапустить</em>) представление, менеджер макетов может запросить адаптер заменить содержимое представления другим элементом из набора данных.
+ Такой перезапуск представлений позволяет повысить производительность за счет того, что исключается создание ненужных представлений и выполнение ресурсоемких операций поиска {@link android.app.Activity#findViewById findViewById()}.
+
+</p>
+
+<p>Виджет {@link android.support.v7.widget.RecyclerView} включает следующие встроенные менеджеры макетов:</p>
+
+<ul>
+<li>{@link android.support.v7.widget.LinearLayoutManager} для отображения элементов в виде списка с вертикальной или горизонтальной прокруткой;
+</li>
+<li>{@link android.support.v7.widget.GridLayoutManager} для отображения элементов в виде сетки;</li>
+<li>{@link android.support.v7.widget.StaggeredGridLayoutManager} для отображения элементов в виде шахматной сетки.</li>
+</ul>
+
+<p>Для создания менеджера макетов необходимо наследовать класс {@link
+android.support.v7.widget.RecyclerView.LayoutManager RecyclerView.LayoutManager}.</p>
+
+<h3>Анимация</h3>
+
+<p>По умолчанию анимация для добавления и удаления элементов включается в виджете {@link
+android.support.v7.widget.RecyclerView}. Для настройки такой анимации следует наследовать класс
+{@link android.support.v7.widget.RecyclerView.ItemAnimator RecyclerView.ItemAnimator} и воспользоваться методом
+ {@link android.support.v7.widget.RecyclerView#setItemAnimator RecyclerView.setItemAnimator()}
+.</p>
+
+<h3 id="RVExamples">Примеры</h3>
+
+<p>В следующем примере демонстрируется, как включить в макет виджет 
+{@link android.support.v7.widget.RecyclerView}:</p>
+
+<pre>
+&lt;!-- A RecyclerView with some commonly used attributes -->
+&lt;android.support.v7.widget.RecyclerView
+    android:id="@+id/my_recycler_view"
+    android:scrollbars="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
+</pre>
+
+<p>После добавления виджета {@link android.support.v7.widget.RecyclerView} подключите дескриптор объекта, подключите его к менеджеру макетов, а затем подключите адаптер к данным, которые будут отображаться:
+
+</p>
+
+<pre>
+public class MyActivity extends Activity {
+    private RecyclerView mRecyclerView;
+    private RecyclerView.Adapter mAdapter;
+    private RecyclerView.LayoutManager mLayoutManager;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.my_activity);
+        mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);
+
+        // use this setting to improve performance if you know that changes
+        // in content do not change the layout size of the RecyclerView
+        mRecyclerView.setHasFixedSize(true);
+
+        // use a linear layout manager
+        mLayoutManager = new LinearLayoutManager(this);
+        mRecyclerView.setLayoutManager(mLayoutManager);
+
+        // specify an adapter (see also next example)
+        mAdapter = new MyAdapter(myDataset);
+        mRecyclerView.setAdapter(mAdapter);
+    }
+    ...
+}
+</pre>
+
+<p>Адаптер обеспечивает доступ к элементам в наборе данных, создает представления для элементов и заменяет содержимое некоторых представлений новыми элементами данных, когда исходный элемент уже не отображается.
+
+ Пример кода ниже является простой реализацией набора данных, который состоит из массива строк, выведенного на экран с помощью виджетов {@link android.widget.TextView}:
+</p>
+
+<pre>
+public class MyAdapter extends RecyclerView.Adapter&lt;MyAdapter.ViewHolder> {
+    private String[] mDataset;
+
+    // Provide a reference to the views for each data item
+    // Complex data items may need more than one view per item, and
+    // you provide access to all the views for a data item in a view holder
+    public static class ViewHolder extends RecyclerView.ViewHolder {
+        // each data item is just a string in this case
+        public TextView mTextView;
+        public ViewHolder(TextView v) {
+            super(v);
+            mTextView = v;
+        }
+    }
+
+    // Provide a suitable constructor (depends on the kind of dataset)
+    public MyAdapter(String[] myDataset) {
+        mDataset = myDataset;
+    }
+
+    // Create new views (invoked by the layout manager)
+    &#64;Override
+    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
+                                                   int viewType) {
+        // create a new view
+        View v = LayoutInflater.from(parent.getContext())
+                               .inflate(R.layout.my_text_view, parent, false);
+        // set the view's size, margins, paddings and layout parameters
+        ...
+        ViewHolder vh = new ViewHolder(v);
+        return vh;
+    }
+
+    // Replace the contents of a view (invoked by the layout manager)
+    &#64;Override
+    public void onBindViewHolder(ViewHolder holder, int position) {
+        // - get element from your dataset at this position
+        // - replace the contents of the view with that element
+        holder.mTextView.setText(mDataset[position]);
+
+    }
+
+    // Return the size of your dataset (invoked by the layout manager)
+    &#64;Override
+    public int getItemCount() {
+        return mDataset.length;
+    }
+}
+</pre>
+
+
+<div style="float:right;margin-top:15px;margin-left:30px">
+<img src="{@docRoot}design/material/images/card_travel.png" alt="" width="225" height="383">
+<p class="img-caption" style="margin-left:12px">
+<strong>Рисунок 3</strong>. Примеры карточек.
+</p>
+</div>
+
+<h2 id="CardView">Создание карточек</h2>
+
+<p>Виджет {@link android.support.v7.widget.CardView} является расширением класса {@link android.widget.FrameLayout}
+и позволяет отображать информацию внутри карточек, которые будут выглядеть одинаково в рамках платформы. Виджеты {@link
+android.support.v7.widget.CardView} могут отбрасывать тени и иметь закругленные углы.</p>
+
+<p>Чтобы создать карточку, отбрасывающую тень, воспользуйтесь атрибутом <code>card_view:cardElevation</code>. В Android 5.0 (уровень API 21) и более поздних версий виджет
+{@link android.support.v7.widget.CardView} использует реальную
+высоту и динамические тени, а в более ранних версиях в виджете реализованы программные тени.
+Дополнительные сведения представлены на странице <a href="{@docRoot}training/material/compatibility.html">Обеспечение
+совместимости</a>.</p>
+
+<p>Для настройки внешнего вида виджета
+{@link android.support.v7.widget.CardView} используйте следующие свойства:</p>
+
+<ul>
+  <li>чтобы задать радиус скругления углов в макете, используйте атрибут <code>card_view:cardCornerRadius</code>;
+</li>
+  <li>чтобы задать радиус скругления углов в программном коде, используйте метод <code>CardView.setRadius</code>;</li>
+  <li>чтобы задать цвет фона карточки, используйте атрибут <code>card_view:cardBackgroundColor</code>.
+</li>
+</ul>
+
+<p>В следующем примере показано, как включить виджет {@link android.support.v7.widget.CardView}
+ в макет:</p>
+
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    xmlns:card_view="http://schemas.android.com/apk/res-auto"
+    ... >
+    &lt;!-- A CardView that contains a TextView -->
+    &lt;android.support.v7.widget.CardView
+        xmlns:card_view="http://schemas.android.com/apk/res-auto"
+        android:id="@+id/card_view"
+        android:layout_gravity="center"
+        android:layout_width="200dp"
+        android:layout_height="200dp"
+        card_view:cardCornerRadius="4dp">
+
+        &lt;TextView
+            android:id="@+id/info_text"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+    &lt;/android.support.v7.widget.CardView>
+&lt;/LinearLayout>
+</pre>
+
+<p>Дополнительные сведения представлены в справке по API для {@link android.support.v7.widget.CardView}.</p>
+
+
+<h2 id="Dependencies">Добавление зависимостей</h2>
+
+<p> Виджеты {@link android.support.v7.widget.RecyclerView} и {@link android.support.v7.widget.CardView}
+входят во <a href="{@docRoot}tools/support-library/features.html#v7">вспомогательные
+библиотеки v7</a>. Чтобы использовать эти виджеты в своем проекте, добавьте в модуль приложения следующие 
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">зависимости Gradle</a>:
+</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
diff --git a/docs/html-intl/intl/ru/training/material/shadows-clipping.jd b/docs/html-intl/intl/ru/training/material/shadows-clipping.jd
new file mode 100644
index 0000000..a1c41fc
--- /dev/null
+++ b/docs/html-intl/intl/ru/training/material/shadows-clipping.jd
@@ -0,0 +1,133 @@
+page.title=Определение теней и обрезка представлений
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Содержание этого урока</h2>
+<ol>
+  <li><a href="#Elevation">Установка высоты представления</a></li>
+  <li><a href="#Shadows">Настройка теней и контуров представления</a></li>
+  <li><a href="#Clip">Обрезка представления</a></li>
+</ol>
+<h2>См. также</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Спецификация Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design в Android</a></li>
+</ul>
+</div>
+</div>
+
+<p>В Material Design появилась возможность настройки высоты элементов интерфейса. Высота позволяет пользователю понять относительную важность каждого элемента и сосредоточиться на выполнении поставленной задачи.
+</p>
+
+<p>Высота представления, выраженная с помощью свойства Z, определяет внешний вид его тени: представления с более высоким значением Z отбрасывают более мягкие тени большего размера.
+ Представления с более высокими значениями Z перекрывают представления с более низкими значениями Z, однако значение Z не влияет на размер самого представления.
+</p>
+
+<p>Прорисовка теней выполняется родительским представлением, поэтому к приподнятому представлению можно применять стандартную операцию обрезки представления (по умолчанию представление обрезается своим родительским представлением).
+</p>
+
+<p>Установка высоты также полезна для создания анимации, когда виджеты временно поднимаются выше плоскости представления при выполнении какого-либо действия.
+</p>
+
+<p>Дополнительные сведения об установке высоты в Material Design представлены на странице 
+<a href="http://www.google.com/design/spec/what-is-material/objects-in-3d-space.html">Объекты в трехмерном пространстве</a>.
+</p>
+
+
+<h2 id="Elevation">Установка высоты представления</h2>
+
+<p>Значение Z для представления включает два компонента:
+
+<ul>
+<li>высота: статический компонент;</li>
+<li>смещение: динамический компонент, используемый для анимации.</li>
+</ul>
+
+<p><code>Z = elevation + translationZ</code></p>
+
+<img src="{@docRoot}training/material/images/shadows-depth.png" width="580" height="261" alt="" />
+<p class="img-caption"><strong>Рисунок 1</strong>. Тени для различной высоты представления.</p>
+
+<p>Чтобы установить высоту представления в определении макета, используйте атрибут <code>android:elevation</code>
+. Чтобы установить высоту представления в программном коде операции, используйте метод
+{@link android.view.View#setElevation View.setElevation()}.</p>
+
+<p>Чтобы установить смещение представления, используйте метод {@link android.view.View#setTranslationZ
+View.setTranslationZ()}.</p>
+
+<p>Новые методы {@link android.view.ViewPropertyAnimator#z ViewPropertyAnimator.z()} и {@link
+android.view.ViewPropertyAnimator#translationZ ViewPropertyAnimator.translationZ()} позволяют с легкостью анимировать изменение высоты представлений.
+ Дополнительные сведения см. в справке по API для 
+{@link android.view.ViewPropertyAnimator}, а также в руководстве по <a href="{@docRoot}guide/topics/graphics/prop-animation.html">анимации свойств</a> для разработчиков.
+</p>
+
+<p>Также можно использовать класс {@link android.animation.StateListAnimator} для декларирования этих анимаций.
+ Это особенно полезно в тех случаях, когда анимация запускается при изменении состояния, например, когда пользователь нажимает на кнопку.
+ Дополнительные сведения см. в разделе 
+<a href="{@docRoot}training/material/animations.html#ViewState">Анимация изменений состояния представления</a>.</p>
+
+<p>Значения Z измеряются в dp (пиксели, не зависящие от плотности).</p>
+
+
+<h2 id="Shadows">Настройка теней и контуров представления</h2>
+
+<p>Границы фонового элемента представления определяют форму его тени по умолчанию.
+<strong>Контуры</strong> — это внешние границы графического объекта, они также определяют область ряби для отклика на касание.
+</p>
+
+<p>В примере ниже рассматривается это представление, определенное с помощью фонового элемента дизайна:</p>
+
+<pre>
+&lt;TextView
+    android:id="@+id/myview"
+    ...
+    android:elevation="2dp"
+    android:background="@drawable/myrect" />
+</pre>
+
+<p>Фоновый элемент дизайна определен как прямоугольник со скругленными углами:</p>
+
+<pre>
+&lt;!-- res/drawable/myrect.xml -->
+&lt;shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+    &lt;solid android:color="#42000000" />
+    &lt;corners android:radius="5dp" />
+&lt;/shape>
+</pre>
+
+<p>Представление отбрасывает тень с закругленными углами, поскольку контур представления определяется фоновым элементом дизайна.
+ Если указать настраиваемый контур, он будет переопределять стандартную форму тени для представления.</p>
+
+<p>Порядок определения настраиваемого контура представления в программном коде<p>
+
+<ol>
+<li>Сначала наследуйте класс {@link android.view.ViewOutlineProvider}.</li>
+<li>Затем переопределите метод {@link android.view.ViewOutlineProvider#getOutline getOutline()}.</li>
+<li>Наконец, назначьте источник контуров для своего представления с помощью метода {@link
+android.view.View#setOutlineProvider View.setOutlineProvider()}.</li>
+</ol>
+
+<p>Можно создавать овальные и прямоугольные контуры со скругленными углами, используя для этого методы класса 
+{@link android.graphics.Outline}. Стандартный источник контуров получает контуры из фона представления.
+ Чтобы представление не отбрасывало тень, задайте для источника контуров значение <code>null</code>.
+</p>
+
+
+<h2 id="Clip">Обрезка представления</h2>
+
+<p>С помощью обрезки представлений можно с легкостью изменять их форму. Представление можно обрезать для обеспечения единообразия элементов дизайна.
+Также можно изменить форму представления в ответ на действия пользователя.
+С помощью метода {@link android.view.View#setClipToOutline
+View.setClipToOutline()} или атрибута <code>android:clipToOutline</code> представление можно обрезать по его контуру. Обрезать
+можно только прямоугольники, круги и скругленные прямоугольники, как определено в методе
+{@link android.graphics.Outline#canClip Outline.canClip()}.</p>
+
+<p>Чтобы обрезать представление по форме элемента дизайна, установите этот элемент в качестве фона представления
+(как показано выше) и вызовите метод {@link android.view.View#setClipToOutline View.setClipToOutline()}
+.</p>
+
+<p>Обрезка представления — довольно ресурсоемкая операция, поэтому не анимируйте форму, которую вы используете для обрезки представления.
+ Для достижения требуемого эффекта используйте анимацию <a href="{@docRoot}training/material/animations.html#Reveal">эффекта появления</a>.</p>
diff --git a/docs/html-intl/intl/ru/training/material/theme.jd b/docs/html-intl/intl/ru/training/material/theme.jd
new file mode 100644
index 0000000..320f308
--- /dev/null
+++ b/docs/html-intl/intl/ru/training/material/theme.jd
@@ -0,0 +1,131 @@
+page.title=Использование темы Material Design
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Содержание этого урока</h2>
+<ol>
+  <li><a href="#ColorPalette">Настройка цветовой палитры</a></li>
+  <li><a href="#StatusBar">Настройка строки состояния</a></li>
+  <li><a href="#Inheritance">Отдельные представления темы</a></li>
+</ol>
+<h2>См. также</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Спецификация Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design в Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Новая тема Material Design предоставляет следующие возможности:</p>
+
+<ul>
+  <li>системные виджеты, для которых можно настраивать цветовую палитру;</li>
+  <li>анимация для реакции на касание для системных виджетов;</li>
+  <li>анимация переходов между операциями.</li>
+</ul>
+
+<p>Внешний вид темы Material Design можно настроить с учетом фирменного стиля, воспользовавшись для этого цветовой палитрой.
+ Можно изменить оттенок строки действий и строки состояния, используя атрибуты темы, как показано на <a href="#fig3">рисунке 3</a>.
+</p>
+
+<p>Системные виджеты отличаются новым дизайном и анимацией отклика на касание. В своем приложении вы можете настроить цветовую палитру, анимацию отклика на касание и переходы между операциями.
+</p>
+
+<p>Тема Material Design задается следующими параметрами:</p>
+
+<ul>
+  <li><code>@android:style/Theme.Material</code> (темные цвета);</li>
+  <li><code>@android:style/Theme.Material.Light</code> (светлые цвета);</li>
+  <li><code>@android:style/Theme.Material.Light.DarkActionBar</code>.</li>
+</ul>
+
+<p>Список доступных стилей Material Design см. в справке по API для 
+{@link android.R.style R.style}.</p>
+
+<!-- two columns, dark/light material theme example -->
+<div style="width:700px;margin-top:25px;margin-bottom:10px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>Рисунок 1</strong>. Тема Material Design в темных тонах.</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>Рисунок 2</strong>. Тема Material Design в светлых тонах.</p>
+  </div>
+</div>
+<br style="clear:left">
+</div>
+
+<p class="note">
+<strong>Примечание.</strong> Темы Material Design доступны только в ОС Android 5.0 (уровень API 21) и более поздних версий.
+ Во <a href="{@docRoot}tools/support-library/features.html#v7">вспомогательных библиотеках v7</a>
+ представлены темы со стилями Material Design для некоторых виджетов. Эти библиотеки также обеспечивают поддержку настройки цветовой палитры.
+ Дополнительные сведения см. на странице 
+<a href="{@docRoot}training/material/compatibility.html">Обеспечение совместимости</a>.
+</p>
+
+
+<h2 id="ColorPalette">Настройка цветовой палитры</h2>
+
+<p style="margin-bottom:30px">Для настройки основных цветов в соответствии с фирменным стилем определите настраиваемые цвета с помощью атрибутов темы при наследовании от темы Material Design:
+</p>
+
+<pre>
+&lt;resources>
+  &lt;!-- inherit from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- Main theme colors -->
+    &lt;!--   your app branding color for the app bar -->
+    &lt;item name="android:colorPrimary">@color/primary&lt;/item>
+    &lt;!--   darker variant for the status bar and contextual app bars -->
+    &lt;item name="android:colorPrimaryDark">@color/primary_dark&lt;/item>
+    &lt;!--   theme UI controls like checkboxes and text fields -->
+    &lt;item name="android:colorAccent">@color/accent&lt;/item>
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<div style="float:right;margin-left:25px;margin-top:20px;margin-bottom:10px" id="fig3">
+<img src="{@docRoot}training/material/images/ThemeColors.png" width="250" height="445" />
+<p class="img-caption" style="margin-bottom:0px">
+<strong>Рисунок 3</strong>. Настройка темы Material Design.</p>
+</div>
+
+
+<h2 id="StatusBar">Настройка строки состояния</h2>
+
+<p>В теме Material Design можно с легкостью настроить строку состояния, указав нужный цвет в соответствии с фирменным стилем и задав достаточную контрастность для отображения белых значков состояния.
+ Чтобы установить настраиваемый цвет для строки состояния, воспользуйтесь атрибутом <code>android:statusBarColor</code> при наследовании темы Material Design.
+
+ По умолчанию параметр <code>android:statusBarColor</code> наследует значение <code>android:colorPrimaryDark</code>.
+</p>
+
+<p>Кроме того, можно самостоятельно разместить элемент за строкой состояния. Например, если требуется наложить прозрачную строку состояния поверх фотографии, применив еле уловимый темный градиент, чтобы были видны белые значки состояния.
+
+ Для этого задайте для атрибута <code>android:statusBarColor</code> значение 
+<code>&#64;android:color/transparent</code> и настройте флаги окна требуемым образом. Также можно воспользоваться
+методом {@link android.view.Window#setStatusBarColor Window.setStatusBarColor()} для применения анимации или эффекта постепенного исчезания.
+</p>
+
+<p class="note">
+<strong>Примечание.</strong> Строка состояния почти всегда должна иметь четкую границу, отделяющую ее от основной панели инструментов, за исключением случаев, когда за этими панелями от края и до края экрана отображается большое количество изображений или мультимедийный контент, а также в случае, когда вы используете градиент, чтобы обеспечить видимость значков.
+
+
+</p>
+
+<p>При настройке панели навигации и строки состояния сделайте их прозрачными либо измените только строку состояния.
+ Во всех остальных случаях панель навигации должна оставаться черной.</p>
+
+
+<h2 id="Inheritance">Отдельные представления темы</h3>
+
+<p>Элементы в определениях макета XML могут задавать атрибут <code>android:theme</code>, который ссылается на ресурс темы.
+ Этот атрибут изменяет тему для элемента и любых дочерних элементов,
+что можно использовать для изменения цветовых палитр темы в определенной области интерфейса.
+</p>
diff --git a/docs/html-intl/intl/vi/design/get-started/principles.jd b/docs/html-intl/intl/vi/design/get-started/principles.jd
new file mode 100644
index 0000000..61b2c77
--- /dev/null
+++ b/docs/html-intl/intl/vi/design/get-started/principles.jd
@@ -0,0 +1,307 @@
+page.title=Nguyên tắc Thiết kế Android
+@jd:body
+
+<p>Những nguyên tắc thiết kế này được xây dựng bởi và dành cho
+Nhóm Trải nghiệm Người dùng Android để đảm bảo lợi ích tốt nhất cho người dùng.
+Đối với nhà phát triển và nhà thiết kế Android, chúng tiếp tục
+nhấn mạnh những nguyên tắc chỉ đạo thiết kế chi tiết hơn dành cho các loại
+thiết bị khác nhau.</p>
+
+<p>
+Hãy cân nhắc những nguyên tắc này khi áp dụng sự sáng tạo
+và tư duy thiết kế của mình. Thay đổi có mục đích.
+</p>
+
+<h2 id="enchant-me">Thu hút tôi</h2>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="delight-me">Khiến tôi xao xuyến vì ngạc nhiên</h4>
+<p>Cảnh vật đẹp, hoạt hình được bố trí cẩn thận hay hiệu ứng âm thanh đúng lúc khiến
+trải nghiệm càng thêm phần thích thú. Hiệu ứng tinh tế góp phần đem lại cảm giác nhẹ nhàng nhưng
+mạnh mẽ trong tầm tay.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_delight.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="real-objects-more-fun">Các đối tượng đời thật trông thú vị hơn các nút bấm và menu</h4>
+<p>Để người dùng trực tiếp chạm và thao tác các đối tượng trong ứng dụng của bạn. Làm như vậy vừa giảm nỗ lực nhận thức
+cần thiết để thực hiện một tác vụ, vừa đem lại sự thỏa mãn về cảm xúc.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_real_objects.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="make-it-mine">Hãy để tôi biến nó thành của mình</h4>
+<p>Người dùng thích cảm giác tiếp xúc cá nhân bởi nó giúp họ cảm thấy rất tự nhiên và nắm quyền kiểm soát. Cung cấp
+thiết lập mặc định tuyệt đẹp, dễ cảm nhận, nhưng cũng phải xét đến những tùy chỉnh thú vị, có thể lựa chọn để không cản trở
+nhiệm vụ chính yếu.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_make_it_mine.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="get-to-know-me">Hiểu rõ về tôi</h4>
+<p>Tìm hiểu sở thích của người dùng qua thời gian. Thay vì bảo họ chọn
+đi chọn lại cùng một thứ, hãy bố trí để những lựa chọn trước đó dễ dàng trong tầm với.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_get_to_know_me.png">
+
+  </div>
+</div>
+
+<h2 id="simplify-my-life">Đơn giản hóa cuộc sống của tôi</h2>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="keep-it-brief">Hãy ngắn gọn</h4>
+<p>Sử dụng những cụm từ ngắn với từ ngữ đơn giản. Người dùng thường hay bỏ qua những câu dài dòng.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_keep_it_brief.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="pictures-faster-than-words">Hình ảnh đến nhanh hơn câu chữ</h4>
+<p>Hãy nghĩ đến việc dùng hình ảnh để giải thích ý tưởng. Chúng dễ thu hút sự chú ý của người dùng và có thể hiệu quả hơn nhiều
+so với từ ngữ.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_pictures.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="decide-for-me">Quyết định hộ tôi nhưng phải để tôi “chốt hạ”</h4>
+<p>Hãy đưa ra phán đoán tốt nhất và hành động thay vì hỏi trước. Quá nhiều lựa chọn và quyết định khiến người dùng
+không vui. Phòng trường hợp bạn sai, hãy cho 'hoàn tác'.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_decide_for_me.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="only-show-when-i-need-it">Chỉ hiện những thứ tôi cần khi tôi cần đến</h4>
+<p>Người dùng sẽ bị quá tải khi họ thấy quá nhiều thứ cùng lúc. Hãy chia các tác vụ và thông tin thành những đoạn nhỏ,
+dễ nắm bắt. Ẩn những tùy chọn không thiết yếu vào thời điểm đó và nhắc người dùng khi đi qua chúng.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_information_when_need_it.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="always-know-where-i-am">Tôi cần luôn biết mình đang ở đâu</h4>
+<p>Khiến người khác tự tin rằng họ biết mình đang ở đâu. Khiến những địa điểm trong ứng dụng của bạn trông khác biệt
+và sử dụng chuyển tiếp để thể hiện mối quan hệ giữa các màn hình. Cung cấp phản hồi về các tác vụ đang diễn ra.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_navigation.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="never-lose-my-stuff">Không bao giờ đánh mất những thứ của tôi</h4>
+<p>Lưu những thứ người dùng mất thời gian để tạo và cho phép họ truy cập chúng từ mọi nơi. Nhớ các cài đặt,
+thao tác chạm cá nhân và nội dung khởi tạo giữa các điện thoại, máy tính bảng và máy tính. Điều đó sẽ khiến việc nâng cấp
+trở nên dễ dàng nhất trên đời.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_never_lose_stuff.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="looks-same-should-act-same">Nếu bề ngoài giống nhau thì hành động cũng phải như nhau</h4>
+<p>Giúp người dùng phân biệt sự khác nhau về chức năng bằng cách khiến bề ngoài trông khác biệt thay vì chỉ khác một chút.
+Tránh những chế độ trông giống nhau nhưng lại phản hồi khác nhau với cùng nội dung đầu vào.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_looks_same.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="interrupt-only-if-important">Chỉ làm tôi gián đoạn nếu thật sự quan trọng</h4>
+<p>Như một trợ lý cá nhân đúng nghĩa, hãy tránh làm người dùng mất thời gian vào thứ không quan trọng. Người dùng thường muốn
+tập trung và trừ trường hợp rất quan trọng và nhạy cảm về thời gian, nếu không việc gián đoạn có thể khiến họ khó chịu.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_important_interruption.png">
+
+  </div>
+</div>
+
+<h2 id="make-me-amazing">Làm tôi ấn tượng</h2>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="give-me-tricks">Cho tôi xem những trò có thể áp dụng ở mọi nơi</h4>
+<p>Người dùng thấy thích thú khi họ tự khám phá mọi thứ. Thiết kế ứng dụng của bạn dễ học hỏi hơn nhờ
+tận dụng các kiểu mẫu trực quan và trí nhớ có điều kiện từ các ứng dụng Android khác. Ví dụ, cử chỉ trượt nhanh
+có thể là một lối tắt điều hướng hay.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_tricks.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="its-not-my-fault">Không phải lỗi của tôi</h4>
+<p>Nhẹ nhàng trong cách nhắc người dùng sửa lỗi. Họ luôn muốn cảm thấy thông minh khi dùng ứng dụng
+của bạn. Nếu có gì đó không đúng, hãy đưa ra chỉ dẫn khắc phục rõ ràng nhưng bỏ qua những chi tiết kỹ thuật.
+Nếu bạn có thể khắc phục mà không làm phiền họ thì càng tuyệt.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_error.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="sprinkle-encouragement">Khơi gợi sự khuyến khích</h4>
+<p>Chia các nhiệm vụ phức tạp thành nhiều bước nhỏ hơn và dễ hoàn thành. Phản hồi hành động,
+kể cả khi đó chỉ là một vầng sáng nhỏ.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="do-heavy-lifting-for-me">Làm giúp tôi những chuyện nặng nhọc</h4>
+<p>Khiến người mới cảm thấy mình như chuyên gia bằng cách cho phép họ làm những việc mà họ chưa từng nghĩ mình có thể làm được. Ví
+dụ, các lối tắt kết hợp nhiều hiệu ứng ảnh chụp có thể khiến một bức ảnh nghiệp dư trở nên đáng kinh ngạc
+chỉ sau vài bước.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_heavy_lifting.png">
+
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="cols">
+  <div class="col-7">
+
+<h4 id="make-important-things-fast">Nhanh chóng đến phần quan trọng</h4>
+<p>Không phải hành động nào cũng như nhau. Quyết định xem điều gì là quan trọng nhất trong ứng dụng của bạn và khiến nó dễ tìm thấy và
+nhanh chóng được sử dụng, ví dụ như nút chụp trong camera hoặc nút tạm dừng trong một trình phát nhạc.</p>
+
+  </div>
+  <div class="col-6">
+
+    <img src="{@docRoot}design/media/principles_make_important_fast.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/vi/design/material/index.jd b/docs/html-intl/intl/vi/design/material/index.jd
new file mode 100644
index 0000000..d72636f
--- /dev/null
+++ b/docs/html-intl/intl/vi/design/material/index.jd
@@ -0,0 +1,186 @@
+page.title=Material Design cho Android
+page.tags=Material,design
+page.type=thiết kế
+page.image=images/cards/design-material-for-android_2x.jpg
+
+@jd:body
+
+<!-- developer docs box -->
+<a class="notice-developers right" href="{@docRoot}training/material/index.html">
+  <div>
+    <h3>Tài liệu cho Nhà phát triển</h3>
+    <p>Tạo ứng dụng với Material Design</p>
+  </div>
+</a>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=p4gmvHyuZzw">
+<div>
+    <h3>Video</h3>
+    <p>Giới thiệu Material Design</p>
+</div>
+</a>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=YaG_ljfzeUw">
+<div>
+    <h3>Video</h3>
+    <p>Giấy và Mực: Những vật liệu quan trọng</p>
+</div>
+</a>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=XOcCOBe8PTc">
+<div>
+    <h3>Video</h3>
+    <p>Material Design trong Google I/O App</p>
+</div>
+</a>
+
+
+
+<p itemprop="description">Material design là một hướng dẫn toàn diện về thiết kế
+trực quan, chuyển động và tương tác giữa nhiều nền tảng và thiết bị. Hiện nay Android có hỗ trợ
+những ứng dụng theo phong cách material design. Để sử dụng material design trong ứng dụng Androi của mình, hãy làm theo hướng dẫn nêu
+trong <a href="http://www.google.com/design/spec">đặc tả material design</a> và sử dụng
+những thành phần và tính năng mới sẵn có trong Android 5.0 (API mức 21) trở lên.</p>
+
+<p>Android cung cấp những phần tử sau để bạn dựng ứng dụng theo phong cách material design:</p>
+
+<ul>
+  <li>Một giao diện mới</li>
+  <li>Widget mới cho các dạng xem phức tạp</li>
+  <li>API mới cho đổ bóng và hoạt hình tùy chỉnh</li>
+</ul>
+
+<p>Để biết thêm thông tin về triển khai material design trên Android, hãy xem
+<a href="{@docRoot}training/material/index.html">Tạo ứng dụng với Material Design</a>.</p>
+
+
+<h3>Giao diện Material</h3>
+
+<p>Giao diện material mang đến một phong cách mới cho ứng dụng của bạn và các widget hệ thống, cho phép bạn đặt
+bảng màu của chúng và hoạt hình mặc định cho phản hồi chạm và chuyển tiếp hoạt động.</p>
+
+<!-- two columns -->
+<div style="width:700px;margin-top:25px;margin-bottom:20px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238" />
+  <div style="width:140px;margin:0 auto">
+  <p style="margin-top:8px">Giao diện material tối</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238" />
+  <div style="width:140px;margin:0 auto">
+  <p style="margin-top:8px">Giao diện material sáng</p>
+  </div>
+</div>
+<br style="clear:left"/>
+</div>
+
+<p>Để biết thêm thông tin, hãy xem phần <a href="{@docRoot}training/material/theme.html">Sử dụng Giao diện Material
+</a>.</p>
+
+
+<h3>Danh sách và Thẻ</h3>
+
+<p>Android cung cấp hai loại widget mới để hiển thị thẻ và danh sách bằng phong cách
+và hoạt hình material design:</p>
+
+<!-- two columns -->
+<div style="width:700px;margin-top:25px;margin-bottom:20px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/list_mail.png" width="500" height="426" />
+  <p>Widget <code>RecyclerView</code> mới là một phiên bản có thể ghép nối hơn của <code>ListView</code>
+  có hỗ trợ nhiều kiểu bố trí khác nhau và cải thiện hiệu năng.</p>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/card_travel.png" width="500" height="426" />
+  <p>Widget <code>CardView</code> mới cho phép bạn hiển thị những mẩu thông tin quan trọng bên trong
+  thẻ với diện mạo và cảm nhận nhất quán.</p>
+</div>
+<br style="clear:left"/>
+</div>
+
+<p>Để biết thêm thông tin, hãy xem phần <a href="{@docRoot}training/material/lists-cards.html">Tạo Danh sách
+và Thẻ</a>.</p>
+
+
+<h3>Đổ bóng Dạng xem</h3>
+
+<p>Bên cạnh các thuộc tính X và Y, dạng xem trong Android nay có
+thêm thuộc tính Z. Thuộc tính mới này biểu diễn độ cao của một dạng xem và sẽ quyết định:</p>
+
+<ul>
+<li>Kích cỡ của đổ bóng: dạng xem có giá trị Z cao hơn sẽ đặt đổ bóng lớn hơn.</li>
+<li>Thứ tự vẽ: dạng xem có giá trị Z cao hơn sẽ xuất hiện phía trên những dạng xem khác.</li>
+</ul>
+
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay>
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4"/>
+    <source src="{@docRoot}design/videos/ContactsAnim.webm"/>
+    <source src="{@docRoot}design/videos/ContactsAnim.ogv"/>
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <em>Để phát lại phim, nhấp vào màn hình thiết bị</em>
+  </div>
+</div>
+
+<p>Để biết thêm thông tin, hãy xem phần <a href="{@docRoot}training/material/shadows-clipping.html">Định nghĩa
+Đổ bóng và Dạng xem Cắt hình</a>.</p>
+
+
+<h3>Hoạt hình</h3>
+
+<p>API hoạt hình mới cho phép bạn tạo hoạt hình tùy chỉnh cho phản hồi chạm trong điều khiển UI,
+thay đổi trạng thái xem và chuyển tiếp hoạt động.</p>
+
+<p>Những API này cho phép bạn:</p>
+
+<ul>
+<li style="margin-bottom:15px">
+Phản hồi lại sự kiện chạm trong dạng xem của mình bằng hoạt hình <strong>phản hồi chạm</strong>.
+</li>
+<li style="margin-bottom:15px">
+Ẩn và hiện dạng xem bằng hoạt hình <strong>hiện hình tròn</strong>.
+</li>
+<li style="margin-bottom:15px">
+Chuyển giữa các hoạt động bằng hoạt hình <strong>chuyển tiếp hoạt động</strong> tùy chỉnh.
+</li>
+<li style="margin-bottom:15px">
+Tạo hoạt hình tự nhiên hơn bằng <strong>chuyển động cong</strong>.
+</li>
+<li style="margin-bottom:15px">
+Tạo hoạt hình cho các thay đổi trong một hoặc nhiều thuộc tính dạng xem bằng hoạt hình <strong>thay đổi trạng thái dạng xem</strong>.
+</li>
+<li style="margin-bottom:15px">
+Thể hiện hoạt hình trong các <strong>nội dung vẽ được theo danh sách trạng thái</strong> giữa những thay đổi về trạng thái dạng xem.
+</li>
+</ul>
+
+<p>Hoạt hình phản hồi chạm được tích hợp vào một vài dạng xem tiêu chuẩn, ví dụ như các nút. Các API mới này
+cho phép bạn tùy biến những hoạt hình này và thêm chúng vào dạng xem tùy chỉnh của mình.</p>
+
+<p>Để biết thêm thông tin, hãy xem phần <a href="{@docRoot}training/material/animations.html">Định nghĩa Hoạt hình
+Tùy chỉnh</a>.</p>
+
+
+<h3>Nội dung vẽ được</h3>
+
+<p>Những khả năng mới này của nội dung vẽ được sẽ giúp bạn triển khai các ứng dụng theo phong cách material design:</p>
+
+<ul>
+<li><strong>Nội dung vẽ được véc-tơ</strong> có thể thay đổi kích cỡ mà không làm mất độ sắc nét và hoàn hảo
+cho các biểu tượng trong ứng dụng đơn sắc.</li>
+<li><strong>Nhuộm nội dung vẽ được</strong> cho phép bạn định nghĩa ảnh bitmap thành mặt nạ alpha và nhuộm
+màu cho chúng theo thời gian chạy.</li>
+<li><strong>Trích xuất màu</strong> cho phép bạn tự động trích xuất màu nổi bật từ
+hình ảnh bitmap.</li>
+</ul>
+
+<p>Để biết thêm thông tin, hãy xem phần <a href="{@docRoot}training/material/drawables.html">Làm việc với
+Nội dung Vẽ được</a>.</p>
diff --git a/docs/html-intl/intl/vi/design/patterns/compatibility.jd b/docs/html-intl/intl/vi/design/patterns/compatibility.jd
new file mode 100644
index 0000000..f1a610b
--- /dev/null
+++ b/docs/html-intl/intl/vi/design/patterns/compatibility.jd
@@ -0,0 +1,70 @@
+page.title=Tương thích Ngược
+page.tags="support"
+page.metaDescription=Lưu ý về cách Android 4.x thích ứng với UI được thiết kế cho các phần cứng và phiên bản HĐH cũ hơn.
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/basics/supporting-devices/index.html">
+  <div>
+    <h3>Tài liệu cho Nhà phát triển</h3>
+    <p>Hỗ trợ nhiều Thiết bị khác nhau</p>
+  </div>
+</a>
+
+<p>Những thay đổi đáng kể trong Android 3.0 gồm có:</p>
+<ul>
+<li>Bỏ phím cứng điều hướng (Quay lại, Menu, Tìm kiếm, Trang chủ̉), đổi thành xử lý điều hướng
+  thông qua các nút điều khiển ảo (Quay lại, Trang chủ, Gần đây).</li>
+<li>Mẫu hình thiết thực để sử dụng menu trong thanh hành động.</li>
+</ul>
+<p>Android 4.0 mang những thay đổi cho máy tính bảng sang nền tảng điện thoại.</p>
+
+<h2 id="older-hardware">Thích nghi Android 4.0 với Phần cứng và Ứng dụng cũ hơn</h2>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Điện thoại có các điều khiển điều hướng ảo</h4>
+<p>Ứng dụng Android được viết cho Android 3.0 trở lên sẽ hiển thị các hành động trong thanh hành động. Những hành động không vừa
+với thanh hành động hoặc không đủ quan trọng để được hiển thị ở mức trên cùng sẽ xuất hiện trong
+vùng tràn hành động.</p>
+<p>Người dùng truy cập vùng tràn hành động bằng cách chạm vào nó trong thanh hành động.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_virtual_nav.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Điện thoại có phím điều hướng vật lý</h4>
+<p>Điện thoại Android có phím cứng điều hướng truyền thống không hiển thị thanh điều hướng ảo ở
+phía dưới màn hình. Thay vào đó, có thể sử dụng vùng tràn hành động từ phím cứng menu. Kết quả là
+cửa sổ hành động bật lên có cùng kiểu như trong ví dụ trước, nhưng được hiển thị ở phía dưới màn hình.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_physical_buttons.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>Ứng dụng kế thừa trên điện thoại có điều khiển điều hướng ảo</h4>
+<p>Khi bạn chạy một ứng dụng được dựng cho Android 2.3 hoặc cũ hơn trên một điện thoại có điều khiển điều hướng
+ảo, điều khiển vùng tràn hành động sẽ xuất hiện phía bên phải của thanh điều hướng ảo. Bạn có thể
+chạm vào điều khiển này để hiển thị hành động của ứng dụng theo kiểu dáng menu Android truyền thống.</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_legacy_apps.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/vi/design/patterns/confirming-acknowledging.jd b/docs/html-intl/intl/vi/design/patterns/confirming-acknowledging.jd
new file mode 100644
index 0000000..e0253c3
--- /dev/null
+++ b/docs/html-intl/intl/vi/design/patterns/confirming-acknowledging.jd
@@ -0,0 +1,70 @@
+page.title=Xác nhận &amp; Báo nhận
+page.tags=dialog,toast,notification
+@jd:body
+
+<p>Trong một số tình huống, khi người dùng gọi ra một hành động trong ứng dụng của bạn, bạn nên <em>xác nhận</em> hoặc <em>báo nhận</em> hành động đó thông qua văn bản.</p>
+
+<div class="cols">
+  <div class="col-6">
+    <img src="{@docRoot}design/media/confirm_ack_confirming.png">
+    <p><strong>Xác nhận</strong> là việc yêu cầu người dùng xác minh rằng họ thực sự muốn tiếp tục hành động mà họ vừa gọi ra. Trong một số trường hợp, xác nhận được đưa ra cùng với một cảnh báo hoặc thông tin trọng yếu liên quan tới hành động mà họ cần cân nhắc.</p>
+  </div>
+  <div class="col-6">
+    <img src="{@docRoot}design/media/confirm_ack_acknowledge.png">
+    <p><strong>Báo nhận</strong> là việc hiển thị văn bản để người dùng biết rằng hành động họ vừa gọi ra đã được hoàn tất. Điều này loại bỏ sự không chắc chắn về các thao tác không biểu thị mà hệ thống đang thực hiện. Trong một số trường hợp, báo nhận được đưa ra cùng với một tùy chọn hoàn tác hành động đó.</p>
+  </div>
+</div>
+
+<p>Giao tiếp với người dùng theo những cách này có thể giúp gỡ bỏ sự không chắc chắn về những thứ đã hoặc sẽ xảy ra. Xác nhận hoặc báo nhận cũng có thể ngăn người dùng mắc sai lầm mà họ có thể hối tiếc.</p>
+
+<h2>Khi nào thì xác nhận hoặc báo nhận hành động của người dùng</h2>
+<p>Không phải hành động nào cũng chắc chắn có xác nhận hay báo nhận. Hãy sử dụng lưu đồ sau làm hướng dẫn đưa ra quyết định thiết kế của bạn.</p>
+<img src="{@docRoot}design/media/confirm_ack_flowchart.png">
+
+<h2>Xác nhận</h2>
+<div class="cols">
+  <div class="col-6">
+    <h4>Ví dụ: Google Play Books</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_books.png">
+    <p>Trong ví dụ này, người dùng đã yêu cầu xóa một cuốn sách khỏi thư viện Google Play của mình. Một <a href="{@docRoot}design/building-blocks/dialogs.html#alerts">cảnh báo</a> hiện ra để xác nhận hành động này bởi quan trọng là phải hiểu rằng cuốn sách sẽ không còn khả dụng trên bất cứ thiết bị nào nữa.</p>
+    <p>Khi tạo một hộp thoại xác nhận, hãy đặt tiêu đề có ý nghĩa bằng cách thể hiện hành động được yêu cầu đó.</p>
+  </div>
+  <div class="col-7">
+    <h4>Ví dụ: Android Beam</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_beam.png">
+    <p>Không nhất thiết phải đưa ra xác nhận trong cảnh báo có hai nút. Sau khi khởi chạy Android Beam, người dùng được nhắc chạm vào nội dung muốn chia sẻ (trong ví dụ này là một ảnh chụp). Nếu quyết định không tiếp tục, họ chỉ cần đưa điện thoại của mình ra xa.</p>
+  </div>
+</div>
+
+<h2>Báo nhận</h2>
+<div class="cols">
+  <div class="col-6">
+    <h4>Ví dụ: Bỏ đi bản thảo Gmail đã lưu</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png">
+    <p>Trong ví dụ này, nếu người dùng điều hướng quay lại hoặc lên trên từ màn hình soạn thảo Gmail thì có thể sẽ xảy ra việc ngoài ý muốn: bản thảo hiện tại được tự động lưu. Báo nhận dưới hình thức cửa sổ sẽ khiến bản thảo đó biểu hiện ra ngoài. Cửa sổ này sẽ mờ dần sau vài giây.</p>
+    <p>Ở đây việc hoàn tác sẽ không thích hợp bởi việc lưu là do ứng dụng khởi chạy chứ không phải người dùng. Sẽ dễ dàng và nhanh chóng tiếp tục soạn thư bằng cách điều hướng tới danh sách bản thảo.</p>
+
+  </div>
+  <div class="col-6">
+    <h4>Ví dụ: Đã xóa hội thoại Gmail</h4>
+    <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png">
+    <p>Sau khi người dùng xóa một hội thoại khỏi danh sách trong Gmail, báo nhận sẽ xuất hiện cùng tùy chọn hoàn tác. Báo nhận vẫn còn đó tới khi người dùng thực hiện một hành động không liên quan, ví dụ như cuộn danh sách.</p>
+  </div>
+</div>
+
+<h2>Không xác nhận hoặc báo nhận</h2>
+<div class="cols">
+  <div class="col-6">
+    <h4>Ví dụ: hành động +1</h4>
+    <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png">
+    <p><strong>Xác nhận là không cần thiết</strong>. Nếu người dùng vô tình +1 thì cũng không sao. Họ chỉ cần chạm lại vào nút này để hoàn tác hành động đó.</p>
+    <p><strong>Báo nhận là không cần thiết</strong>. Người dùng sẽ thấy nút +1 bật lại và chuyển màu đỏ. Đó là một dấu hiệu rất rõ ràng.</p>
+  </div>
+  <div class="col-7">
+    <h4>Ví dụ: Xóa một ứng dụng khỏi Màn hình Trang chủ</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png">
+    <p><strong>Xác nhận là không cần thiết</strong>. Đây là một hành động có chủ ý: người dùng phải kéo và thả một mục lên một mụ̣c tiêu tương đối lớn và tách biệt. Vì thế, rất khó có khả năng xảy ra trường hợp vô ý. Nhưng nếu người dùng hối hận về quyết định, họ chỉ mất vài giây để đưa trở lại như cũ.</p>
+    <p><strong>Báo nhận là không cần thiết</strong>. Người dùng sẽ biết ứng dụng đã biến mất khỏi Màn hình Trang chủ bởi họ khiến nó biến mất bằng cách kéo nó đi.</p>
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/vi/design/patterns/navigation.jd b/docs/html-intl/intl/vi/design/patterns/navigation.jd
new file mode 100644
index 0000000..98490db
--- /dev/null
+++ b/docs/html-intl/intl/vi/design/patterns/navigation.jd
@@ -0,0 +1,213 @@
+page.title=Điều hướng bằng Quay lại và Lên trên
+page.tags="navigation","activity","task","up navigation","back navigation"
+page.image=/design/media/navigation_between_siblings_gmail.png
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/implementing-navigation/index.html">
+  <div>
+    <h3>Tài liệu cho Nhà phát triển</h3>
+    <p>Triển khai Điều hướng Hiệu quả</p>
+  </div>
+</a>
+
+<p itemprop="description">Điều hướng nhất quán là một thành phần thiết yếu trong trải nghiệm người dùng nói chung. Một vài điều nhỏ bé lại khiến
+người dùng khó chịu hơn so với điều hướng cơ bản chính là hành xử không nhất quán và không như kỳ vọng. Android 3.0
+đã giới thiệu những thay đổi đáng kể về hành vi điều hướng toàn cục. Tuân thủ kỹ lưỡng các hướng dẫn
+về Quay lại và Lên trên sẽ giúp việc điều hướng trên ứng dụng của bạn trở nên dễ đoán và đáng tin cậy cho người dùng của bạn.</p>
+<p>Phiên bản Android 2.3 và mới hơn dựa vào nút <em>Quay lại</em> của hệ thống để hỗ trợ điều hướng trong một
+ứng dụng. Với việc giới thiệu thanh hành động trong Android 3.0, một cơ chế điều hướng thứ hai đã xuất hiện:
+nút <em>Lên trên</em>, bao gồm biểu tượng ứng dụng và dấu nháy lùi trái.</p>
+
+<img src="{@docRoot}design/media/navigation_with_back_and_up.png">
+
+<h2 id="up-vs-back">Lên trên so với Quay lại</h2>
+
+<p>Nút Lên trên được sử dụng để điều hướng bên trong một ứng dụng dựa trên mối quan hệ thứ bậc
+giữa các màn hình. Ví dụ, nếu màn hình A hiển thị một danh sách các mục và việc chọn một mục sẽ dẫn đến
+màn hình B (trình bày chi tiết hơn về mục đó), khi đó B sẽ đưa ra nút Lên trên để
+quay lại màn hình A.</p>
+<p>Nếu một màn hình đang ở trên cùng trong một ứng dụng (cụ thể là trang chủ của ứng dụng), thì nó sẽ xuất hiện nút
+Lên trên.</p>
+
+<p>Nút Quay lại của hệ thống được sử dụng để điều hướng ngược theo thứ tự thời gian, qua lịch sử các màn hình
+mà người dùng mới thao tác qua. Nó thường được dựa trên mối quan hệ thời gian
+giữa các màn hình thay vì thứ bậc của ứng dụng.</p>
+
+<p>Khi màn hình xem trước đó cũng đồng thời là màn hình mẹ theo thứ bậc của màn hình hiện tại, nhấn nút
+Quay lại sẽ có cùng kết quả như khi nhấn nút Lên trên&mdash;điều này thường hay
+xảy ra. Tuy nhiên, không như nút Lên trên đảm bảo người dùng vẫn còn trong ứng dụng của bạn,
+nút Quay lại có thể trả người dùng về màn hình Trang chủ hoặc thậm chí sang một ứng dụng khác.</p>
+
+<img src="{@docRoot}design/media/navigation_up_vs_back_gmail.png">
+
+<p>Nút Quay lại cũng hỗ trợ một vài hành vi không trực tiếp gắn với điều hướng giữa các màn hình:
+</p>
+<ul>
+<li>Bỏ qua cửa sổ nổi (hộp thoại, cửa sổ bật lên)</li>
+<li>Bỏ qua thanh hành động ngữ cảnh và bỏ tô sáng khỏi mục đã chọn</li>
+<li>Ẩn bàn phím trên màn hình (IME)</li>
+</ul>
+<h2 id="within-app">Điều hướng trong Ứng dụng của Bạn</h2>
+
+<h4>Điều hướng tới màn hình với nhiều điểm bắt đầu</h4>
+<p>Đôi khi một màn hình không chỉ có một vị trí cố định trong thứ bậc của ứng dụng và bạn có thể truy cập nó
+từ nhiều điểm bắt đầu&mdash;ví dụ như màn hình cài đặt có thể được truy cập từ bất cứ màn hình
+nào khác trong ứng dụng của bạn. Trong trường hợp này, nút Lên trên sẽ chọn quay lại màn hình đã chuyển đến, có tác dụng
+giống như Quay lại.</p>
+<h4>Thay đổi dạng xem bên trong một màn hình</h4>
+<p>Thay đổi tùy chọn dạng xem cho một màn hình không làm thay đổi hành vi Lên trên hay Quay lại: màn hình vẫn
+ở cùng một chỗ trong thứ bậc của ứng dụng và không tạo thêm lịch sử điều hướng mới nào.</p>
+<p>Ví dụ về thay đổi dạng xem gồm:</p>
+<ul>
+<li>Chuyển dạng xem bằng tab và/hoặc trượt nhanh trái phải</li>
+<li>Chuyển dạng xem bằng danh sách thả xuống (còn gọi là tab thu gọn)</li>
+<li>Lọc một danh sách</li>
+<li>Sắp xếp một danh sách</li>
+<li>Thay đổi đặc tính hiển thị (như thu phóng)</li>
+</ul>
+<h4>Điều hướng giữa các màn hình anh em</h4>
+<p>Khi ứng dụng của bạn hỗ trợ điều hướng từ một danh mục tới một dạng xem chi tiết của một trong những mục đó, thường
+nó ưu tiên hỗ trợ điều hướng theo hướng từ mục đó tới một mục khác ở phía trước hoặc
+phía sau nó trong danh sách. Ví dụ, trong Gmail, bạn có thể dễ dàng trượt nhanh sang trái hoặc phải từ một hội thoại
+để xem hội thoại mới hơn hoặc cũ hơn trong cùng Hộp thư đến. Như khi thay đổi dạng xem trong một màn hình,
+điều hướng đó không làm thay đổi hành vi Lên trên hoặc Quay lại.</p>
+
+<img src="{@docRoot}design/media/navigation_between_siblings_gmail.png">
+
+<p>Tuy nhiên, có một trường hợp ngoại lệ đáng chú ý đó là khi duyệt giữa các dạng xem chi tiết có liên quan, không
+ràng buộc với nhau bởi danh sách chuyển đến&mdash;ví dụ như khi duyệt trong Play Store giữa các ứng dụng từ
+cùng một nhà phát triển hoặc giữa các album bởi cùng một nghệ sĩ. Trong các trường hợp này, truy cập vào từng liên kết không tạo ra
+lịch sử, khiến nút Quay lại đi qua từng màn hình được xem trước đó. Thao tác Lên trên sẽ tiếp tục
+bỏ qua những màn hình liên quan này và điều hướng tới màn hình bộ chứa được xem gần đây nhất.</p>
+
+<img src="{@docRoot}design/media/navigation_between_siblings_market1.png">
+
+<p>Bạn có khả năng thiết kế để hành vi Lên trên thông minh hơn dựa trên hiểu biết của mình về dạng xem
+chi tiết. Suy rộng từ ví dụ về Play Store bên trên, tưởng tượng người dùng đã điều hướng từ
+Cuốn sách xem gần nhất tới chi tiết chuyển thể Phim. Trong trường hợp đó, thao tác Lên trên có thể trả về một bộ chứa
+(Phim) mà trước đó người dùng chưa điều hướng qua.</p>
+
+<img src="{@docRoot}design/media/navigation_between_siblings_market2.png">
+
+<h2 id="into-your-app">Điều hướng tới Ứng dụng của Bạn thông qua Widget và Thông báo trên Màn hình Trang chủ</h2>
+
+<p>Bạn có thể sử dụng widget hoặc thông báo trên màn hình Trang chủ để giúp người dùng của mình điều hướng trực tiếp tới màn hình
+nằm sâu trong thứ bậc ứng dụng của bạn. Ví dụ, widget Hộp thư đến của Gmail và thông báo thư mới có thể
+vừa bỏ qua màn hình Hộp thư đến, vừa đưa người dùng trực tiếp tới dạng xem hội thoại.</p>
+
+<p>Trong cả hai trường hợp này, hãy điều khiển nút Lên trên như sau:</p>
+
+<ul>
+<li><em>Nếu màn hình đích thường được truy cập từ một màn hình cụ thể trong ứng dụng
+của bạn</em>, thao tác Lên trên sẽ điều hướng tới màn hình đó.</li>
+<li><em>Nếu không</em>, thao tác Lên trên sẽ điều hướng tới màn hình trên cùng ("Trang chủ") của ứng dụng của bạn.</li>
+</ul>
+
+<p>Trong trường hợp nút Quay lại, bạn nên thiết kế để việc điều hướng dễ đoán hơn bằng cách chèn vào ngăn xếp
+của tác vụ toàn bộ đường dẫn điều hướng lên trên tới màn hình trên cùng của ứng dụng. Làm vậy sẽ cho phép những người dùng nào
+quên cách họ vào ứng dụng của bạn sẽ điều hướng tới màn hình trên cùng của ứng dụng trước khi
+thoát.</p>
+
+<p>Ví dụ, widget màn hình Trang chủ của Gmail có một nút để đi trực tiếp vào màn hình
+soạn email của nó. Lên hoặc Quay lại từ màn hình soạn thư sẽ đưa người dùng tới Hộp thư đến, và từ đó
+nút Quay lại tiếp tục đưa về Trang chủ.</p>
+
+<img src="{@docRoot}design/media/navigation_from_outside_back.png">
+
+<h4>Thông báo gián tiếp</h4>
+
+<p>Khi ứng dụng của bạn cần trình bày thông tin về nhiều sự kiện đồng thời, nó có thể sử dụng
+thông báo duy nhất để chuyển hướng người dùng tới một màn hình xen kẽ. Màn hình này tổng hợp những sự kiện
+này và cung cấp đường dẫn cho người dùng đi sâu vào ứng dụng. Thông báo kiểu này được gọi
+là <em>thông báo gián tiếp</em>.</p>
+
+<p>Không như thông báo tiêu chuẩn (trực tiếp), nhấn Quay lại từ màn hình xen kẽ của một thông báo gián tiếp
+sẽ trả người dùng về điểm mà từ đó thông báo đó được kích hoạt&mdash;không có
+màn hình bổ sung nào được chèn vào ngăn xếp. Sau khi người dùng tiến vào ứng dụng từ màn hình xen kẽ
+, thao tác Lên trên và Quay lại có tác dụng như với thông báo tiêu chuẩn, như được mô tả ở trên:
+điều hướng bên trong ứng dụng thay vì quay lại màn hình xen kẽ.</p>
+
+<p>Ví dụ, giả sử một người dùng trong Gmail nhận được một thông báo gián tiếp từ Lịch. Chạm
+vào thông báo này để mở ra màn hình xen kẽ, trong đó hiển thị nhắc nhở cho một vài sự kiện
+khác nhau. Chạm vào Quay lại từ màn hình xen kẽ sẽ trả người dùng về Gmail. Chạm vào một sự kiện
+cụ thể sẽ đưa người dùng ra khỏi màn hình xen kẽ và vào ứng dụng Lịch để hiển thị chi tiết về
+sự kiện. Từ chi tiết sự kiện, Lên trên và Quay lại sẽ điều hướng tới dạng xem trên cùng của Lịch.</p>
+
+<img src="{@docRoot}design/media/navigation_indirect_notification.png">
+
+<h4>Thông báo bật lên</h4>
+
+<p><em>Thông báo bật lên</em> sẽ bỏ qua ngăn thông báo thay vì xuất hiện trực tiếp phía
+trước người dùng. Chúng hiếm khi được sử dụng và <strong>nên được để dành cho những dịp khi cần
+phản ứng kịp thời và việc gián đoạn ngữ cảnh của người dùng là cần thiết</strong>. Ví dụ,
+Talk sử dụng kiểu này để cảnh báo người dùng về lời mời từ một người bạn để tham gia trò chuyện video, bởi
+lời mời này sẽ tự động hết hạn sau một vài giây.</p>
+
+<p>Xét về hành vi điều hướng, thông báo bật lên bám sát chặt chẽ hành vi của màn hình xen kẽ
+trong thông báo gián tiếp. Quay lại sẽ bỏ qua thông báo bật lên. Nếu người dùng điều hướng
+từ màn hình bật lên vào ứng dụng thông báo, hành vi Lên trên và Quay lại sẽ bám sát quy tắc áp dụng với thông báo tiêu chuẩn,
+điều hướng bên trong ứng dụng.</p>
+
+<img src="{@docRoot}design/media/navigation_popup_notification.png">
+
+<h2 id="between-apps">Điều hướng giữa các Ứng dụng</h2>
+
+<p>Một trong những thế mạnh cơ bản của hệ thống Android đó là khả năng các ứng dụng kích hoạt
+lẫn nhau, giúp người dùng có thể điều hướng trực tiếp từ ứng dụng này sang ứng dụng khác. Ví dụ, một ứng dụng
+cần chụp ảnh có thể kích hoạt ứng dụng Camera, ứng dụng này sẽ trả
+ảnh về ứng dụng chuyển đến. Điều này đặc biệt có ích đối với cả nhà phát triển, những người có thể dễ dàng tận dụng
+đoạn mã từ các ứng dụng khác, lẫn người dùng, những người thích có một trải nghiệm nhất quán đối với những hành động
+được thực hiện thường xuyên.</p>
+
+<p>Để hiểu rõ điều hướng giữa các ứng dụng, quan trọng là phải hiểu được hành vi bộ khung Android
+được đề cập dưới đây.</p>
+
+<h4>Hoạt động, tác vụ và ý định</h4>
+
+<p>Trong Android, <strong>hoạt động</strong> là một thành phần ứng dụng định nghĩa một màn hình
+thông tin và tất cả hành động liên kết mà người dùng có thể thực hiện. Ứng dụng của bạn là tập hợp
+của nhiều hoạt động, bao gồm cả hoạt động do bạn tạo và hoạt động mà bạn sử dụng lại từ các ứng dụng khác.</p>
+
+<p><strong>Tác vụ</strong> là trình tự các hoạt động mà một người dùng tuân theo để hoàn thành một mục tiêu. 
+Tác vụ đơn có thể sử dụng các hoạt động từ chỉ một ứng dụng, hoặc có thể dựa trên hoạt động từ nhiều
+ứng dụng khác nhau.</p>
+
+<p><strong>Ý định</strong> là một cơ chế để một ứng dụng báo hiệu rằng nó muốn sự trợ giúp
+của một ứng dụng khác khi thực hiện một hành động. Các hoạt động của một ứng dụng có thể biểu thị những ý định
+mà chúng có thể phản hồi. Đối với những ý định thường gặp như "Chia sẻ", người dùng có thể cài đặt nhiều ứng dụng
+có khả năng thực hiện yêu cầu đó.</p>
+
+<h4>Ví dụ: điều hướng giữa các ứng dụng để hỗ trợ chia sẻ</h4>
+
+<p>Để hiểu những hoạt động, tác vụ và ý định này vận hành với nhau như thế nào, hãy xem cách một ứng dụng cho phép người dùng
+chia sẻ nội dung bằng cách dùng một ứng dụng khác. Ví dụ, khởi chạy ứng dụng Play Store từ Trang chủ sẽ bắt đầu
+Tác vụ A mới (xem hình bên dưới). Sau khi điều hướng qua Play Store và chạm vào một cuốn sách được quảng cáo
+để xem chi tiết của sách, người dùng vẫn ở trong cùng một tác vụ, mở rộng nó bằng cách thêm vào các hoạt động. Kích hoạt
+hành động Chia sẻ sẽ nhắc người dùng bằng một hộp thoại liệt kê từng hoạt động một (từ các ứng dụng khác nhau)
+mà đã đăng ký xử lý ý định Chia sẻ đó.</p>
+
+<img src="{@docRoot}design/media/navigation_between_apps_inward.png">
+
+<p>Khi người dùng chọn chia sẻ qua Gmail, hoạt động soạn email của Gmail sẽ được thêm làm hoạt động tiếp tục
+Tác vụ A&mdash;không có tác vụ mới nào được tạo thêm. Nếu Gmail có tác vụ riêng đang chạy nền, nó sẽ
+không bị ảnh hưởng.</p>
+
+<p>Từ hoạt động soạn email, gửi thư hoặc chạm vào nút Quay lại sẽ trả người dùng về
+hoạ̣t động chi tiết về cuốn sách. Những lần chạm sau đó vào Quay lại sẽ tiếp tục điều hướng quay lại qua
+Store và cuối cùng về lại Trang chủ.</p>
+
+<img src="{@docRoot}design/media/navigation_between_apps_back.png">
+
+<p>Tuy nhiên, nếu chạm vào Lên trên từ hoạt động soạn email, người dùng biểu thị mong muốn vẫn ở nguyên trong
+Gmail. Hoạt động danh sách hội thoại của Gmail xuất hiện và Tác vụ B mới sẽ được tạo cho nó. Các tác vụ mới
+sẽ luôn được liên kết gốc với Trang chủ, vì thế chạm vào Quay lại từ danh sách hội thoại sẽ quay lại đó.</p>
+
+<img src="{@docRoot}design/media/navigation_between_apps_up.png">
+
+<p>Tác vụ A duy trì chạy nền và người dùng có thể quay lại nó sau (ví dụ, thông qua
+màn hình Gần đây). Nếu Gmail đã có tác vụ riêng đang chạy nền, nó sẽ được thay thế
+bằng Tác vụ B&mdash;ngữ cảnh trước đó sẽ bị bỏ đi phục vụ cho mục đích mới của người dùng.</p>
+
+<p>Khi ứng dụng của bạn đăng ký điều khiển ý định bằng một hoạt động nằm sâu trong thứ bậc của ứng dụng,
+hãy tham khảo phần <a href="#into-your-app">Điều hướng tới Ứng dụng của Bạn thông qua Widget và Thông báo trên
+Màn hình Trang chủ</a> để xem hướng dẫn về cách quy định điều hướng Lên trên.</p>
diff --git a/docs/html-intl/intl/vi/guide/components/activities.jd b/docs/html-intl/intl/vi/guide/components/activities.jd
new file mode 100644
index 0000000..83e7669
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/activities.jd
@@ -0,0 +1,756 @@
+page.title=Các hoạt động
+page.tags=hoạt động,ý định
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Trong tài liệu này</h2>
+<ol>
+  <li><a href="#Creating">Tạo một Hoạt động</a>
+    <ol>
+      <li><a href="#UI">Triển khai một giao diện người dùng</a></li>
+      <li><a href="#Declaring">Khai báo hoạt động trong bản kê khai</a></li>
+    </ol>
+  </li>
+  <li><a href="#StartingAnActivity">Bắt đầu một Hoạt động</a>
+    <ol>
+      <li><a href="#StartingAnActivityForResult">Bắt đầu một hoạt động cho một kết quả</a></li>
+    </ol>
+  </li>
+  <li><a href="#ShuttingDown">Tắt một Hoạt động</a></li>
+  <li><a href="#Lifecycle">Quản lý Vòng đời của Hoạt động</a>
+    <ol>
+      <li><a href="#ImplementingLifecycleCallbacks">Triển khai gọi lại vòng đời</a></li>
+      <li><a href="#SavingActivityState">Lưu trạng thái của hoạt động</a></li>
+      <li><a href="#ConfigurationChanges">Xử lý thay đổi về cấu hình</a></li>
+      <li><a href="#CoordinatingActivities">Điều phối hoạt động</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Lớp khóa</h2>
+<ol>
+  <li>{@link android.app.Activity}</li>
+</ol>
+
+<h2>Xem thêm</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/tasks-and-back-stack.html">Tác vụ và Ngăn
+Xếp</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+<p>{@link android.app.Activity} là một thành phần ứng dụng cung cấp một màn hình mà với nó
+người dùng có thể tương tác để thực hiện một điều gì đó, chẳng hạn như quay số điện thoại, chụp ảnh, gửi e-mail hoặc
+xem bản đồ. Mỗi hoạt động được cho trong một cửa sổ là nơi để vẽ giao diện người dùng của nó. Cửa sổ này
+thường lấp đầy màn hình, nhưng có thể nhỏ hơn màn hình và nổi bên trên các cửa sổ
+khác.</p>
+
+<p> Ứng dụng thường bao gồm nhiều hoạt động được liên kết lỏng lẻo
+với nhau. Thường thì một hoạt động trong một ứng dụng sẽ được quy định là hoạt động "chính", nó được
+trình bày trước người dùng khi khởi chạy ứng dụng lần đầu. Sau đó, mỗi
+hoạt động có thể bắt đầu một hoạt động khác để thực hiện các hành động khác nhau. Mỗi khi một hoạt động
+mới bắt đầu, hoạt động trước đó sẽ bị dừng lại, nhưng hệ thống vẫn giữ nguyên hoạt động
+trong một ngăn xếp ("back stack"). Khi một hoạt động mới bắt đầu, nó được đẩy lên ngăn xếp và
+chiếm lấy tiêu điểm của người dùng. Ngăn xếp sẽ tuân theo cơ chế xếp chồng cơ bản "vào cuối, ra đầu",
+vì thế, khi người dùng kết thúc hoạt động hiện tại và nhấn nút <em>Quay lại</em>, nó 
+sẽ được đẩy ra khỏi ngăn xếp (và bị hủy) và hoạt động trước đó sẽ tiếp tục. (Ngăn xếp được
+đề cập kỹ hơn trong tài liệu <a href="{@docRoot}guide/components/tasks-and-back-stack.html">Tác vụ
+và Ngăn Xếp</a>.)</p>
+
+<p>Khi một hoạt động bị dừng vì một hoạt động mới bắt đầu, nó được thông báo về sự thay đổi trạng thái này
+qua các phương pháp gọi lại vòng đời của hoạt động.
+Có một vài phương pháp gọi lại vòng đời mà một hoạt động có thể nhận, do một thay đổi về
+trạng thái của nó&mdash;dù hệ thống đang tạo, dừng hay tiếp tục nó, hay hủy nó&mdash;và
+mỗi lần gọi lại cho bạn cơ hội thực hiện công việc cụ thể
+phù hợp với sự thay đổi trạng thái đó. Ví dụ, khi bị dừng, hoạt động của bạn sẽ giải phóng mọi
+đối tượng lớn, chẳng hạn như các kết nối mạng hoặc cơ sở dữ liệu. Khi hoạt động tiếp tục, bạn có thể
+thu lại những tài nguyên cần thiết và tiếp tục những hành động bị gián đoạn. Những chuyển tiếp trạng thái này
+đều là một phần của vòng đời hoạt động.</p>
+
+<p>Phần còn lại của tài liệu này bàn đến những nội dung cơ bản về cách xây dựng và sử dụng một hoạt động,
+bao gồm một nội dung đề cập đầy đủ về cách vận hành của vòng đời hoạt động, để bạn có thể quản lý tốt
+sự chuyển tiếp giữa các trạng thái hoạt động khác nhau.</p>
+
+
+
+<h2 id="Creating">Tạo một Hoạt động</h2>
+
+<p>Để tạo một hoạt động, bạn phải tạo một lớp con của {@link android.app.Activity} (hoặc
+một lớp con hiện tại của nó). Trong lớp con của mình, bạn cần triển khai các phương pháp gọi lại mà hệ thống
+gọi khi hoạt động chuyển tiếp giữa các trạng thái khác nhau trong vòng đời, chẳng hạn như khi
+hoạt động đang được tạo, dừng, tiếp tục, hoặc hủy. Hai phương pháp gọi lại quan trọng nhất
+là:</p>
+
+<dl>
+  <dt>{@link android.app.Activity#onCreate onCreate()}</dt>
+  <dd>Bạn phải triển khai phương pháp này. Hệ thống gọi phương pháp này khi tạo hoạt động
+của bạn. Trong quá trình thực hiện của mình, bạn nên khởi chạy những thành phần thiết yếu cho hoạt động
+của mình.
+    Quan trọng nhất, đây là lúc bạn phải gọi {@link android.app.Activity#setContentView
+    setContentView()} để định nghĩa bố trí cho giao diện người dùng của hoạt động.</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>Hệ thống gọi phương pháp này là dấu hiệu đầu tiên về việc người dùng đang rời khỏi hoạt động
+của bạn (mặc dù không phải lúc nào cũng có nghĩa rằng hoạt động đang bị hủy). Trường hợp này thường là khi bạn
+định thực hiện bất kỳ thay đổi nào vẫn cần có hiệu lực ngoài phiên của người dùng hiện thời (vì
+người dùng có thể không quay lại).</dd>
+</dl>
+
+<p>Có một vài phương pháp gọi lại vòng đời khác mà bạn nên sử dụng để đem đến
+một trải nghiệm người dùng mượt mà giữa các hoạt động và xử lý những gián đoạn bất ngờ khiến hoạt động của bạn
+bị dừng và thậm chí bị hủy. Tất cả phương pháp gọi lại vòng đời được bàn sau trong phần
+nói về <a href="#Lifecycle">Quản lý Vòng đời của Hoạt động</a>.</p>
+
+
+
+<h3 id="UI">Triển khai một giao diện người dùng</h3>
+
+<p> Giao diện người dùng cho một hoạt động sẽ được cung cấp theo phân cấp dạng xem&mdash;đối tượng được suy ra
+từ lớp {@link android.view.View}.  Mỗi chế độ xem kiểm soát một không gian chữ nhật riêng
+trong cửa sổ của hoạt động và có thể phản hồi trước tương tác của người dùng. Ví dụ, chế độ xem có thể là
+một nút khởi xướng một hành động khi người dùng chạm vào nó.</p>
+
+<p>Android cung cấp nhiều chế độ xem sẵn có mà bạn có thể sử dụng để thiết kế và tổ chức cho bố trí
+của mình. "Widget" là những chế độ xem cung cấp những phần tử trực quan (và tương tác) cho màn hình, chẳng hạn như
+nút, trường văn bản, hộp kiểm, hay chỉ là một hình ảnh. "Bố trí" là những chế độ xem được suy ra từ {@link
+android.view.ViewGroup} cung cấp một mô hình bố trí duy nhất cho các chế độ xem con của nó, chẳng hạn như bố trí
+tuyến tính, bố trí lưới, hoặc bố trí tương đối. Bạn cũng có thể chia thành lớp con {@link android.view.View} và các lớp
+{@link android.view.ViewGroup} (hoặc các lớp con hiện tại) để tạo widget và
+bố trí của chính mình và áp dụng chúng vào bố trí hoạt động của bạn.</p>
+
+<p>Cách phổ biến nhất để định nghĩa một bố trí bằng cách sử dụng các chế độ xem là dùng một tệp bố trí XML được lưu trong tài nguyên ứng dụng
+của bạn. Bằng cách này, bạn có thể duy trì thiết kế giao diện người dùng của mình độc lập với
+mã nguồn định nghĩa hành vi của hoạt động. Bạn có thể đặt bố trí làm UI cho hoạt động
+của mình bằng {@link android.app.Activity#setContentView(int) setContentView()}, chuyển
+ID tài nguyên cho bố trí. Tuy nhiên, bạn cũng có thể tạo {@link android.view.View} mới trong mã hoạt động
+của mình và xây dựng một cấp bậc chế độ xem bằng cách chèn các {@link
+android.view.View} mới vào một {@link android.view.ViewGroup}, sau đó sử dụng bố trí đó bằng cách chuyển root
+{@link android.view.ViewGroup} sang {@link android.app.Activity#setContentView(View)
+setContentView()}.</p>
+
+<p>Để biết thông tin về việc tạo một giao diện người dùng, hãy xem tài liệu <a href="{@docRoot}guide/topics/ui/index.html">Giao diện Người dùng</a>.</p>
+
+
+
+<h3 id="Declaring">Khai báo hoạt động trong bản kê khai</h3>
+
+<p>Bạn phải khai báo hoạt động của mình trong tệp bản kê khai để hoạt động
+có thể truy cập được vào hệ thống. Để khai báo hoạt động của mình, hãy mở tệp bản kê khai của bạn và thêm một phần tử  <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 
+làm con của phần tử <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+. Ví dụ:</p>
+
+<pre>
+&lt;manifest ... &gt;
+  &lt;application ... &gt;
+      &lt;activity android:name=".ExampleActivity" /&gt;
+      ...
+  &lt;/application ... &gt;
+  ...
+&lt;/manifest &gt;
+</pre>
+
+<p>Có vài thuộc tính khác mà bạn có thể nêu trong phần tử này, để định nghĩa các thuộc tính
+như nhãn cho hoạt động, biểu tượng cho hoạt động, hoặc chủ đề mô tả kiểu UI của
+hoạt động. Thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">{@code android:name}</a>
+là thuộc tính bắt buộc duy nhất&mdash;nó quy định tên lớp của hoạt động. Một khi
+bạn phát hành ứng dụng của mình, bạn không nên thay đổi tên này, vì nếu bạn làm vậy, bạn có thể làm hỏng
+một số tính năng, chẳng hạn như các lối tắt của ứng dụng (hãy đọc bài đăng trên blog, <a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Những Điều
+Không Thay Đổi Được</a>).</p>
+
+<p>Xem tài liệu tham khảo phần tử <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 
+để biết thêm thông tin về việc khai báo hoạt động của bạn trong bản kê khai.</p>
+
+
+<h4>Sử dụng các bộ lọc ý định</h4>
+
+<p>Một phần tử <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> cũng có thể quy định các bộ lọc ý định khác nhau&mdash;bằng cách sử dụng phần tử <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> &mdash;để khai báo cách thức mà các thành phần khác của ứng dụng có thể
+kích hoạt nó.</p>
+
+<p>Khi bạn tạo một ứng dụng mới bằng cách sử dụng các công cụ SDK của Android, hoạt động chương trình nhỏ
+được tạo cho bạn sẽ tự động bao gồm một bộ lọc ý định khai báo hoạt động
+phản hồi lại hành động "chính" và nên được đặt trong thể loại "trình khởi chạy". Bộ lọc ý định
+trông như thế này:</p>
+
+<pre>
+&lt;activity android:name=".ExampleActivity" android:icon="@drawable/app_icon"&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>Phần tử <a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> quy định rằng đây là điểm mục nhập "chính" đối với ứng dụng. Phần tử <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> quy định rằng hoạt động này nên được liệt kê trong trình khởi chạy ứng dụng của hệ thống
+(để cho phép người dùng khởi chạy hoạt động này).</p>
+
+<p>Nếu bạn có ý định cho ứng dụng của mình được độc lập và không cho phép các ứng dụng khác
+kích hoạt các hoạt động của nó, vậy bạn không cần bất kỳ bộ lọc ý định nào khác. Chỉ một hoạt động nên có
+hành động "chính" và thể loại "trình khởi chạy" như trong ví dụ trước. Những hoạt động mà
+bạn không muốn cung cấp sẵn cho các ứng dụng khác không nên có bộ lọc ý định và bạn có thể
+tự mình bắt đầu chúng bằng cách sử dụng các ý định rõ ràng (như được đề cập trong phần sau).</p>
+
+<p>Tuy nhiên, nếu bạn muốn hoạt động của mình phản hồi lại những ý định ngầm mà được chuyển giao từ
+các ứng dụng khác (và chính bạn), thì bạn phải định nghĩa các bộ lọc ý định bổ sung cho hoạt động
+của mình. Với mỗi loại ý định mà bạn muốn phản hồi, bạn phải nêu một <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> bao gồm một phần tử 
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> và, không bắt buộc, một phần tử <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> và/hoặc một phần tử <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a>. Những phần tử này quy định loại ý định mà hoạt động của bạn có thể
+phản hồi.</p>
+
+<p>Để biết thêm thông tin về cách thức các hoạt động của bạn có thể phản hồi lại ý định, hãy xem tài liệu <a href="{@docRoot}guide/components/intents-filters.html">Ý định và Bộ lọc Ý định</a>
+.</p>
+
+
+
+<h2 id="StartingAnActivity">Bắt đầu một Hoạt động</h2>
+
+<p>Bạn có thể bắt đầu một hoạt động khác bằng cách gọi {@link android.app.Activity#startActivity
+  startActivity()}, chuyển cho nó một {@link android.content.Intent} mà mô tả hoạt động bạn
+muốn bắt đầu. Ý định này sẽ quy định hoặc hoạt động chính xác mà bạn muốn bắt đầu hoặc mô tả
+ loại hành động mà bạn muốn thực hiện (và hệ thống lựa chọn hoạt động phù hợp cho bạn,
+thậm chí
+có thể từ một ứng dụng khác). Một ý định cũng có thể mang theo lượng nhỏ dữ liệu sẽ được
+ sử dụng bởi hoạt động được bắt đầu.</p>
+
+<p>Khi đang làm việc trong ứng dụng của chính mình, bạn thường sẽ cần khởi chạy một hoạt động đã biết.
+ Bạn có thể làm vậy bằng cách tạo một ý định trong đó quy định rõ hoạt động bạn muốn bắt đầu,
+sử dụng tên lớp đó. Ví dụ, sau đây là cách một hoạt động bắt đầu một hoạt động khác có tên {@code
+SignInActivity}:</p>
+
+<pre>
+Intent intent = new Intent(this, SignInActivity.class);
+startActivity(intent);
+</pre>
+
+<p>Tuy nhiên, ứng dụng của bạn cũng có thể muốn thực hiện một số hành động, chẳng hạn như gửi một e-mail, tin nhắn
+ văn bản, hoặc cập nhật trạng thái, bằng cách sử dụng dữ liệu từ hoạt động của bạn. Trong trường hợp này, ứng dụng của bạn có thể
+ không có các hoạt động của chính nó để thực hiện những hành động đó, vì vậy, thay vào đó, bạn có thể tận dụng những hoạt động
+ được cung cấp bởi các ứng dụng khác trên thiết bị mà có thể thực hiện hành động cho bạn. Đây là lúc
+ý định thực sự có giá trị&mdash;bạn có thể tạo một ý định mô tả một hành động bạn muốn
+thực hiện và hệ thống
+ sẽ khởi chạy hoạt động phù hợp đó từ một ứng dụng khác. Nếu có
+ nhiều hoạt động mà có thể xử lý ý định, vậy người dùng có thể chọn hoạt động nào sẽ sử dụng. Ví
+ dụ, nếu bạn muốn cho phép người dùng gửi e-mail, bạn có thể tạo
+ ý định sau:</p>
+
+<pre>
+Intent intent = new Intent(Intent.ACTION_SEND);
+intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);
+startActivity(intent);
+</pre>
+
+<p>{@link android.content.Intent#EXTRA_EMAIL} phụ được thêm vào ý định là một mảng xâu của
+ các địa chỉ e-mail mà e-mail sẽ được gửi tới. Khi một ứng dụng e-mail phản hồi
+ ý định này, nó đọc mảng xâu được cung cấp trong phần phụ và đặt nó vào trường "đến" của mẫu soạn thảo
+ e-mail. Trong trường hợp này, hoạt động của ứng dụng e-mail bắt đầu và khi người dùng
+ làm xong, hoạt động của bạn sẽ tiếp tục.</p>
+
+
+
+
+<h3 id="StartingAnActivityForResult">Bắt đầu một hoạt động cho một kết quả</h3>
+
+<p>Đôi khi bạn có thể muốn nhận được một kết quả từ hoạt động mà bạn bắt đầu. Trong trường hợp đó,
+hãy bắt đầu hoạt động bằng cách gọi {@link android.app.Activity#startActivityForResult
+  startActivityForResult()} (thay vì {@link android.app.Activity#startActivity
+  startActivity()}). Rồi để nhận được kết quả từ hoạt động
+sau đó, hãy triển khai phương pháp gọi lại {@link android.app.Activity#onActivityResult onActivityResult()}
+. Khi hoạt động sau đó diễn ra xong, nó trả về một kết quả trong một {@link
+android.content.Intent} cho phương pháp {@link android.app.Activity#onActivityResult onActivityResult()}
+của bạn.</p>
+
+<p>Ví dụ, bạn có thể muốn người dùng chọn một trong các liên lạc của họ, vì vậy hoạt động của bạn có thể
+làm gì đó với thông tin trong liên lạc đó. Đây là cách bạn có thể tạo một ý định như vậy và
+xử lý kết quả:</p>
+
+<pre>
+private void pickContact() {
+    // Create an intent to "pick" a contact, as defined by the content provider URI
+    Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
+    startActivityForResult(intent, PICK_CONTACT_REQUEST);
+}
+
+&#64;Override
+protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+    // If the request went well (OK) and the request was PICK_CONTACT_REQUEST
+    if (resultCode == Activity.RESULT_OK &amp;&amp; requestCode == PICK_CONTACT_REQUEST) {
+        // Perform a query to the contact's content provider for the contact's name
+        Cursor cursor = getContentResolver().query(data.getData(),
+        new String[] {Contacts.DISPLAY_NAME}, null, null, null);
+        if (cursor.moveToFirst()) { // True if the cursor is not empty
+            int columnIndex = cursor.getColumnIndex(Contacts.DISPLAY_NAME);
+            String name = cursor.getString(columnIndex);
+            // Do something with the selected contact's name...
+        }
+    }
+}
+</pre>
+
+<p>Ví dụ này thể hiện lô-gic cơ bản mà bạn sẽ sử dụng trong phương pháp {@link
+android.app.Activity#onActivityResult onActivityResult()} của mình để xử lý một
+kết quả hoạt động. Điều kiện đầu tiên kiểm tra xem yêu cầu có thành công không&mdash;nếu có thì
+{@code resultCode} sẽ là {@link android.app.Activity#RESULT_OK}&mdash;và liệu yêu cầu
+mà kiểm tra này đang phản hồi có được biết hay không&mdash;trong trường hợp này, {@code requestCode} phù hợp với
+tham số thứ hai được gửi bằng {@link android.app.Activity#startActivityForResult
+startActivityForResult()}. Từ đó, mã xử lý kết quả hoạt động bằng cách truy vấn
+dữ liệu được trả về trong {@link android.content.Intent} (tham số {@code data}).</p>
+
+<p>Điều xảy ra đó là, {@link
+android.content.ContentResolver} sẽ thực hiện một truy vấn đối với nhà cung cấp nội dung, truy vấn này trả về một
+{@link android.database.Cursor} cho phép đọc dữ liệu được truy vấn. Để biết thêm thông tin, hãy xem tài liệu
+<a href="{@docRoot}guide/topics/providers/content-providers.html">Trình cung cấp Nội dung</a>.</p>
+
+<p>Để biết thêm thông tin về việc sử dụng ý định, hãy xem tài liệu <a href="{@docRoot}guide/components/intents-filters.html">Ý định và Bộ lọc
+Ý định</a>.</p>
+
+
+<h2 id="ShuttingDown">Tắt một Hoạt động</h2>
+
+<p>Bạn có thể tắt một hoạt động bằng cách gọi phương pháp {@link android.app.Activity#finish
+finish()} của nó. Bạn cũng có thể tắt một hoạt động riêng mà trước đó bạn đã bắt đầu bằng cách gọi
+{@link android.app.Activity#finishActivity finishActivity()}.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Trong hầu hết trường hợp, bạn không nên kết thúc một hoạt động một cách rõ ràng
+bằng cách sử dụng những phương pháp này. Như đề cập trong phần sau về vòng đời của hoạt động, hệ thống
+Android quản lý tuổi thọ của một hoạt động cho bạn, vì vậy bạn không cần kết thúc các hoạt động
+của chính mình. Việc gọi những phương pháp này có thể ảnh hưởng tiêu cực tới trải nghiệm người dùng
+kỳ vọng và chỉ nên được sử dụng khi bạn tuyệt đối không muốn người dùng quay lại thực thể này của 
+hoạt động.</p>
+
+
+<h2 id="Lifecycle">Quản lý Vòng đời của Hoạt động</h2>
+
+<p>Việc quản lý vòng đời các hoạt động của bạn bằng cách triển khai các phương pháp gọi lại
+rất quan trọng đối với việc xây dựng một ứng dụng mạnh
+và linh hoạt. Vòng đời của một hoạt động trực tiếp bị ảnh hưởng bởi sự liên kết giữa nó với
+các hoạt động khác, tác vụ của nó và ngăn xếp (back stack).</p>
+
+<p>Về cơ bản, một hoạt động có thể tồn tại ở ba trạng thái:</p>
+
+<dl>
+  <dt><i>Tiếp tục</i></dt>
+    <dd>Hoạt động ở tiền cảnh của màn hình và có tiêu điểm của người dùng. (Trạng thái này
+đôi khi cũng được gọi là "đang chạy".)</dd>
+
+  <dt><i>Tạm dừng</i></dt>
+    <dd>Một hoạt động khác ở tiền cảnh và có tiêu điểm, nhưng hoạt động này vẫn hiển thị. Cụ thể,
+một hoạt động khác hiển thị ở trên hoạt động này và hoạt động đó trong suốt một phần hoặc không
+che toàn bộ màn hình. Trạng thái tạm dừng hoàn toàn đang hoạt động (đối tượng {@link android.app.Activity}
+được giữ lại trong bộ nhớ, nó duy trì tất cả thông tin về trạng thái và thành viên, và vẫn gắn với
+trình quản lý cửa sổ), nhưng có thể bị hệ thống tắt bỏ trong trường hợp bộ nhớ cực kỳ thấp.</dd>
+
+  <dt><i>Dừng</i></dt>
+    <dd>Hoạt động bị che khuất hoàn toàn bởi một hoạt động khác (hoạt động hiện đang 
+“dưới nền"). Hoạt động dừng cũng vẫn đang hoạt động ({@link android.app.Activity}
+đối tượng được giữ lại trong bộ nhớ, nó duy trì tất cả thông tin về trạng thái và thành viên, nhưng <em>không</em>
+gắn với trình quản lý cửa sổ). Tuy nhiên, hoạt động không còn hiển thị với người dùng nữa và hệ thống
+có thể tắt bỏ hoạt động này khi cần bộ nhớ ở nơi khác.</dd>
+</dl>
+
+<p>Nếu một hoạt động bị tạm dừng hoặc dừng, hệ thống có thể bỏ nó khỏi bộ nhớ hoặc bằng cách yêu cầu nó
+kết thúc (gọi phương pháp {@link android.app.Activity#finish finish()} của nó), hoặc đơn giản là tắt bỏ tiến trình
+của hoạt động.  Khi hoạt động được mở lại (sau khi bị kết thúc hoặc tắt bỏ), nó phải được tạo
+lại hoàn toàn.</p>
+
+
+
+<h3 id="ImplementingLifecycleCallbacks">Triển khai gọi lại vòng đời</h3>
+
+<p>Khi một hoạt động chuyển tiếp vào ra các trạng thái khác nhau nêu trên, nó được thông báo
+thông qua các phương pháp gọi lại. Tất cả phương pháp gọi lại đều là những móc (hook) mà bạn
+có thể khống chế để làm công việc phù hợp khi trạng thái hoạt động của bạn thay đổi. Hoạt động khung sau
+bao gồm từng phương pháp trong các phương pháp vòng đời cơ bản:</p>
+
+
+<pre>
+public class ExampleActivity extends Activity {
+    &#64;Override
+    public void {@link android.app.Activity#onCreate onCreate}(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // The activity is being created.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStart onStart()} {
+        super.onStart();
+        // The activity is about to become visible.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onResume onResume()} {
+        super.onResume();
+        // The activity has become visible (it is now "resumed").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onPause onPause()} {
+        super.onPause();
+        // Another activity is taking focus (this activity is about to be "paused").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStop onStop()} {
+        super.onStop();
+        // The activity is no longer visible (it is now "stopped")
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onDestroy onDestroy()} {
+        super.onDestroy();
+        // The activity is about to be destroyed.
+    }
+}
+</pre>
+
+<p class="note"><strong>Lưu ý:</strong> Việc bạn triển khai những phương pháp vòng đời này phải luôn
+gọi triển khai siêu lớp trước khi làm bất kỳ công việc nào, như minh họa trong các ví dụ bên trên.</p>
+
+<p>Cùng nhau, những phương pháp này định nghĩa toàn bộ vòng đời của một hoạt động. Bằng việc triển khai những phương pháp
+này, bạn có thể theo dõi ba vòng lặp lồng nhau trong vòng đời của hoạt động: </p>
+
+<ul>
+<li><b>Toàn bộ vòng đời</b> của một hoạt động sẽ xảy ra từ thời điểm lệnh gọi đến {@link
+android.app.Activity#onCreate onCreate()} cho tới thời điểm lệnh gọi đến {@link
+android.app.Activity#onDestroy}. Hoạt động của bạn nên thực hiện thiết lập
+trạng thái "chung" (chẳng hạn như định nghĩa bố trí) trong {@link android.app.Activity#onCreate onCreate()}, và
+giải phóng tất cả tài nguyên còn lại trong {@link android.app.Activity#onDestroy}. Ví dụ, nếu hoạt động của bạn
+có một luồng đang chạy ngầm để tải xuống dữ liệu từ mạng, nó có thể tạo
+luồng đó trong {@link android.app.Activity#onCreate onCreate()} rồi dừng luồng trong {@link
+android.app.Activity#onDestroy}.</li>
+
+<li><p><b>Vòng đời hiển thị</b> của một hoạt động xảy ra từ thời điểm lệnh gọi đến {@link
+android.app.Activity#onStart onStart()} cho tới lệnh gọi đến {@link
+android.app.Activity#onStop onStop()}. Trong thời gian này, người dùng có thể thấy hoạt động
+trên màn hình và tương tác với nó. Ví dụ, {@link android.app.Activity#onStop onStop()} được gọi
+khi một hoạt động mới bắt đầu và không còn hiển thị nữa. Giữa hai phương pháp này, bạn có thể
+duy trì các tài nguyên cần để cho người dùng thấy hoạt động. Ví dụ, bạn có thể đăng ký một
+{@link android.content.BroadcastReceiver} trong {@link
+android.app.Activity#onStart onStart()} để theo dõi các thay đổi tác động tới UI của mình, và bỏ đăng ký
+nó trong {@link android.app.Activity#onStop onStop()} khi người dùng không còn thấy thứ bạn đang
+hiển thị nữa. Hệ thống có thể gọi {@link android.app.Activity#onStart onStart()} và {@link
+android.app.Activity#onStop onStop()} nhiều lần trong suốt vòng đời của hoạt động, khi đó
+hoạt động luân chuyển giữa trạng thái hiển thị và ẩn với người dùng.</p></li>
+
+<li><p><b>Vòng đời ở tiền cảnh</b> của một hoạt động xảy ra từ thời điểm lệnh gọi đến {@link
+android.app.Activity#onResume onResume()} cho tới thời điểm lệnh gọi đến {@link android.app.Activity#onPause
+onPause()}. Trong thời gian này, hoạt động sẽ ở phía trước tất cả hoạt động khác trên màn hình và có
+tiêu điểm đầu vào của người dùng.  Hoạt động có thể thường xuyên chuyển tiếp vào và ra tiền cảnh&mdash;ví
+dụ, {@link android.app.Activity#onPause onPause()} được gọi khi thiết bị vào trạng thái ngủ hoặc
+khi một hộp thoại xuất hiện. Vì trạng thái này có thể chuyển tiếp thường xuyên, mã trong hai phương pháp này nên
+tương đối nhẹ để tránh chuyển tiếp chậm khiến người dùng phải đợi.</p></li>
+</ul>
+
+<p>Hình 1 minh họa những vòng lặp này và các đường dẫn mà một hoạt động có thể diễn ra giữa các trạng thái.
+Hình chữ nhật đại diện cho các phương pháp gọi lại bạn có thể triển khai để thực hiện thao tác khi
+hoạt động chuyển tiếp giữa những trạng thái này. <p>
+
+<img src="{@docRoot}images/activity_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Hình 1.</strong> Vòng đời của hoạt động.</p>
+
+<p>Những phương pháp gọi lại vòng đời này cũng được liệt kê trong bảng 1, trong đó mô tả từng phương pháp
+gọi lại một cách chi tiết hơn và xác định từng phương pháp
+trong vòng đời tổng thể của hoạt động, bao gồm việc hệ thống có thể tắt bỏ hoạt động hay không sau khi
+phương pháp gọi lại hoàn tất.</p>
+
+<p class="table-caption"><strong>Bảng 1.</strong> Tóm tắt các phương pháp gọi lại
+trong vòng đời của hoạt động.</p>
+
+<table border="2" width="85%" frame="hsides" rules="rows">
+<colgroup align="left" span="3"></colgroup>
+<colgroup align="left"></colgroup>
+<colgroup align="center"></colgroup>
+<colgroup align="center"></colgroup>
+
+<thead>
+<tr><th colspan="3">Phương pháp</th> <th>Mô tả</th> <th>Có thể tắt bỏ sau?</th> <th>Tiếp theo</th></tr>
+</thead>
+
+<tbody>
+<tr>
+  <td colspan="3" align="left"><code>{@link android.app.Activity#onCreate onCreate()}</code></td>
+  <td>Được gọi khi hoạt động mới được tạo.
+      Đây là lúc bạn nên thực hiện tất cả thiết lập cố định thông thường của mình &mdash;
+      tạo chế độ xem, kết ghép dữ liệu với danh sách, v.v.  Phương pháp này được chuyển cho
+      một đối tượng Gói chứa trạng thái trước đây của hoạt động, nếu trạng thái
+      đó được thu lại (xem phần <a href="#actstate">Lưu Trạng thái Hoạt động</a>,
+      ở đoạn sau).
+      <p>Luôn được theo sau bởi {@code onStart()}.</p></td>
+  <td align="center">Không</td>
+      <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td rowspan="5" style="border-left: none; border-right: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onRestart
+onRestart()}</code></td>
+   <td>Được gọi sau khi hoạt động đã được dừng, ngay trước khi hoạt động được
+       bắt đầu lại.
+       <p>Luôn được theo sau bởi {@code onStart()}</p></td>
+   <td align="center">Không</td>
+   <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStart onStart()}</code></td>
+   <td>Được gọi ngay trước khi hoạt động hiển thị trước người dùng.
+       <p>Được theo sau bởi {@code onResume()} nếu hoạt động vào
+       tiền cảnh, hoặc {@code onStop()} nếu hoạt động bị ẩn.</p></td>
+    <td align="center">Không</td>
+    <td align="center">{@code onResume()} <br/>hoặc<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td rowspan="2" style="border-left: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td align="left"><code>{@link android.app.Activity#onResume onResume()}</code></td>
+   <td>Được gọi ngay trước khi hoạt động bắt đầu
+       tương tác với người dùng.  Tại điểm này, hoạt động nằm ở
+       trên cùng của chồng hoạt động, trong đó mục nhập của người dùng sẽ đến hoạt động này.
+       <p>Luôn được theo sau bởi {@code onPause()}.</p></td>
+   <td align="center">Không</td>
+   <td align="center">{@code onPause()}</td>
+</tr>
+
+<tr>
+   <td align="left"><code>{@link android.app.Activity#onPause onPause()}</code></td>
+   <td>Được gọi khi hệ thống sắp bắt đầu tiếp tục một hoạt động
+       khác.  Phương pháp này thường được sử dụng để thực hiện các thay đổi chưa lưu cho
+       dữ liệu liên tục, dừng các hoạt ảnh và những việc khác mà có thể tiêu tốn công suất
+       CPU, v.v.  Nó sẽ thực hiện rất nhanh, vì
+       hoạt động tiếp theo sẽ không được tiếp tục tới khi nó trở lại.
+       <p>Được theo sau hoặc bởi {@code onResume()} nếu hoạt động
+       trở lại phía trước, hoặc bởi {@code onStop()} nếu nó
+       không hiển thị với người dùng.</td>
+   <td align="center"><strong style="color:#800000">Có</strong></td>
+   <td align="center">{@code onResume()} <br/>hoặc<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStop onStop()}</code></td>
+   <td>Được gọi khi hoạt động không còn hiển thị với người dùng.  Điều này
+       có thể xảy ra vì nó đang bị hủy, hoặc vì một hoạt động khác
+       (đang tồn tại hoặc mới) đã được tiếp tục và đang che khuất nó.
+       <p>Được theo sau hoặc bởi {@code onRestart()} nếu
+       hoạt động đang quay lại để tương tác với người dùng, hoặc bởi
+       {@code onDestroy()} nếu hoạt động này sẽ đi mất.</p></td>
+   <td align="center"><strong style="color:#800000">Có</strong></td>
+   <td align="center">{@code onRestart()} <br/>hoặc<br/> {@code onDestroy()}</td>
+</tr>
+
+<tr>
+   <td colspan="3" align="left"><code>{@link android.app.Activity#onDestroy
+onDestroy()}</code></td>
+   <td>Được gọi trước khi hoạt động bị hủy.  Đây là lần gọi cuối cùng
+       mà hoạt động sẽ nhận được.  Nên gọi nó hoặc vì
+       hoạt động đang kết thúc (ai đó đã gọi <code>{@link android.app.Activity#finish
+       finish()}</code> trên nó), hoặc vì hệ thống đang tạm thời hủy thực thể này của
+       hoạt động để tiết kiệm bộ nhớ trống.  Bạn có thể phân biệt
+       những những kịch bản này bằng phương pháp <code>{@link
+       android.app.Activity#isFinishing isFinishing()}</code>.</td>
+   <td align="center"><strong style="color:#800000">Có</strong></td>
+   <td align="center"><em>không có gì</em></td>
+</tr>
+</tbody>
+</table>
+
+<p>Cột ghi "Có thể tắt bỏ sau?" cho biết liệu hệ thống có thể
+tắt bỏ tiến trình đang lưu trữ hoạt động vào bất cứ lúc nào <em>sau khi phương pháp trả về</em>, mà không
+thực hiện một dòng mã khác của hoạt động hay không.  Ba phương pháp được ghi là "có": ({@link
+android.app.Activity#onPause
+onPause()}, {@link android.app.Activity#onStop onStop()}, và {@link android.app.Activity#onDestroy
+onDestroy()}). Vì {@link android.app.Activity#onPause onPause()} là phương pháp đầu tiên
+trong ba phương pháp, sau khi hoạt động được tạo, {@link android.app.Activity#onPause onPause()} là
+phương pháp cuối cùng được bảo đảm sẽ được gọi trước khi tiến trình <em>có thể</em> bị tắt bỏ&mdash;nếu
+hệ thống phải khôi phục bộ nhớ trong một tình huống khẩn cấp, khi đó {@link
+android.app.Activity#onStop onStop()} và {@link android.app.Activity#onDestroy onDestroy()} có thể
+không được gọi. Vì thế, bạn nên sử dụng {@link android.app.Activity#onPause onPause()} để ghi
+dữ liệu cố định quan trọng (chẳng hạn như những chỉnh sửa của người dùng) vào thiết bị lưu trữ. Tuy nhiên, bạn nên chọn lọc
+thông tin nào phải được giữ lại trong {@link android.app.Activity#onPause onPause()}, vì bất kỳ
+thủ tục chặn nào trong phương pháp này cũng chặn chuyển tiếp sang hoạt động kế tiếp và làm chậm trải nghiệm
+của người dùng.</p>
+
+<p> Những phương pháp được ghi "Không" trong cột <b>Có thể tắt bỏ</b> sẽ bảo vệ tiến trình đang lưu trữ
+hoạt động khỏi bị tắt bỏ từ thời điểm chúng được gọi.  Vì thế, một hoạt động có thể tắt bỏ được
+từ thời điểm {@link android.app.Activity#onPause onPause()} trở về tới thời điểm
+{@link android.app.Activity#onResume onResume()} sẽ được gọi. Nó sẽ không thể lại tắt bỏ được tới khi
+{@link android.app.Activity#onPause onPause()} lại được gọi và trả về. </p>
+
+<p class="note"><strong>Lưu ý:</strong> Một hoạt động mà không thể "tắt bỏ được" về mặt kỹ thuật bởi
+định nghĩa này trong bảng 1 vẫn có thể bị hệ thống tắt bỏ&mdash;nhưng điều đó chỉ xảy ra trong
+những hoàn cảnh cực đoan khi không còn giải pháp nào khác. Thời điểm một hoạt động có thể bị tắt bỏ được
+đề cập kỹ hơn trong tài liệu <a href="{@docRoot}guide/components/processes-and-threads.html">Tiến trình và
+Luồng</a>.</p>
+
+
+<h3 id="SavingActivityState">Lưu trạng thái của hoạt động</h3>
+
+<p>Phần giới thiệu về <a href="#Lifecycle">Quản lý Vòng đời của Hoạt động</a> có đề cập sơ qua
+rằng
+khi một hoạt động bị tạm dừng hoặc dừng, trạng thái của hoạt động đó sẽ được giữ lại. Điều này đúng vì
+đối tượng {@link android.app.Activity} vẫn được giữ trong bộ nhớ khi nó bị tạm dừng hoặc
+dừng&mdash;tất cả thông tin về các thành viên và trạng thái hiện tại của nó vẫn hoạt động. Vì thế, bất kỳ thay đổi nào
+mà người dùng đã thực hiện trong hoạt động đều được giữ lại sao cho khi hoạt động trở về
+tiền cảnh (khi nó "tiếp tục"), thì những thay đổi này vẫn còn đó.</p>
+
+<p>Tuy nhiên, khi hệ thống hủy một hoạt động để khôi phục bộ nhớ, đối tượng {@link
+android.app.Activity} bị hủy, vì vậy hệ thống không thể đơn thuần tiếp tục hoạt động với trạng thái
+không bị ảnh hưởng. Thay vào đó, hệ thống phải tạo lại đối tượng {@link android.app.Activity} nếu người dùng
+điều hướng trở lại nó. Tuy vậy, người dùng không biết
+rằng hệ thống đã hủy hoạt động và tạo lại nó và, vì thế, có thể
+cho rằng hoạt động sẽ vẫn nguyên như cũ. Trong tình huống này, bạn có thể đảm bảo rằng
+thông tin quan trọng về trạng thái của hoạt động được giữ nguyên bằng cách triển khai một phương pháp gọi lại
+bổ sung cho phép bạn lưu thông tin về trạng thái của hoạt động của mình: {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}.</p>
+
+<p>Hệ thống gọi {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+trước khi khiến hoạt động dễ bị hủy. Hệ thống chuyển cho phương pháp này
+một {@link android.os.Bundle} trong đó bạn có thể lưu 
+thông tin trạng thái về hoạt động như cặp tên giá trị, bằng cách sử dụng các phương pháp như {@link
+android.os.Bundle#putString putString()} và {@link
+android.os.Bundle#putInt putInt()}. Sau đó, nếu hệ thống tắt bỏ tiến trình ứng dụng của bạn
+và người dùng điều hướng trở lại hoạt động của bạn, hệ thống sẽ tạo lại hoạt động đó và
+chuyển {@link android.os.Bundle} cho cả {@link android.app.Activity#onCreate onCreate()} và {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}. Sử dụng một trong
+hai phương pháp này, bạn có thể trích xuất trạng thái đã lưu của mình từ {@link android.os.Bundle} và khôi phục
+trạng thái của hoạt động. Nếu không có thông tin trạng thái để khôi phục, khi đó {@link
+android.os.Bundle} được chuyển cho bạn sẽ rỗng (là trường hợp khi hoạt động được tạo
+lần đầu).</p>
+
+<img src="{@docRoot}images/fundamentals/restore_instance.png" alt="" />
+<p class="img-caption"><strong>Hình 2.</strong> Hai cách mà theo đó một hoạt động trở về tiêu điểm
+của người dùng với trạng thái không thay đổi: hoặc hoạt động bị hủy, rồi tạo lại và hoạt động phải khôi phục
+trạng thái đã lưu trước đó, hoặc hoạt động bị dừng, rồi tiếp tục và trạng thái của hoạt động
+giữ nguyên không đổi.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Không có gì bảo đảm rằng {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} sẽ được gọi trước khi hoạt động
+của bạn bị hủy, vì có những trường hợp mà sẽ không cần lưu trạng thái
+(chẳng hạn như khi người dùng rời bỏ hoạt động của bạn bằng cách sử dụng nút <em>Quay lại</em>, vì người dùng
+rõ ràng
+đang đóng hoạt động). Nếu hệ thống gọi {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()}, nó làm vậy trước {@link
+android.app.Activity#onStop onStop()} và có thể trước cả {@link android.app.Activity#onPause
+onPause()}.</p>
+
+<p>Tuy nhiên, ngay cả khi bạn không làm gì và không triển khai {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}, một phần trạng thái của hoạt động được khôi phục
+bởi việc lớp {@link android.app.Activity} triển khai mặc định {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}. Cụ thể, triển khai
+mặc định sẽ gọi phương pháp {@link
+android.view.View#onSaveInstanceState onSaveInstanceState()} tương ứng cho mọi {@link
+android.view.View} trong bố trí, nó cho phép mỗi chế độ xem cung cấp thông tin về chính nó
+mà sẽ được lưu. Gần như mọi widget trong khuôn khổ Android đều triển khai phương pháp này nếu
+phù hợp, sao cho mọi thay đổi hiển thị đối với UI đều tự động được lưu và khôi phục khi hoạt động
+của bạn được tạo lại. Ví dụ, widget {@link android.widget.EditText} lưu mọi văn bản
+do người dùng điền vào và widget {@link android.widget.CheckBox} lưu sẽ thông tin cho dù đã được kiểm tra
+hay chưa. Việc duy nhất bạn cần làm đó là cung cấp một ID duy nhất (với thuộc tính <a href="{@docRoot}guide/topics/resources/layout-resource.html#idvalue">{@code android:id}</a>
+) cho mỗi widget bạn muốn lưu trạng thái của nó. Nếu một widget không có ID thì hệ thống
+không thể lưu trạng thái của nó.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<p>Bạn cũng có thể rõ ràng dừng một chế độ xem trong bố trí của mình khỏi việc lưu trạng thái của nó bằng cách đặt thuộc tính
+{@link android.R.attr#saveEnabled android:saveEnabled} thành {@code "false"} hoặc bằng cách gọi
+phương pháp {@link android.view.View#setSaveEnabled setSaveEnabled()}. Thường thì bạn không nên
+vô hiệu hóa điều này, nhưng có thể làm nếu bạn muốn khôi phục trạng thái của UI hoạt động khác đi.</p>
+</div>
+</div>
+
+<p>Mặc dù việc triển khai mặc định {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} lưu thông tin hữu ích về
+UI hoạt động của bạn, bạn có thể vẫn cần khống chế nó để lưu thêm thông tin.
+Ví dụ, bạn có thể cần lưu các giá trị thành viên đã thay đổi trong vòng đời của hoạt động (mà
+có thể tương quan với các giá trị được khôi phục trong UI, nhưng các thành viên nắm giữ giá trị UI đó không được
+khôi phục theo mặc định).</p>
+
+<p>Vì việc triển khai mặc định {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} giúp lưu trạng thái của UI, nếu
+bạn khống chế phương pháp để lưu thêm thông tin trạng thái, bạn nên luôn luôn gọi
+triển khai siêu lớp của {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+trước khi thực hiện bất kỳ công việc nào. Tương tự, bạn cũng nên gọi triển khai siêu lớp {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} nếu bạn khống chế nó, để
+triển khai mặc định có thể khôi phục các trạng thái xem.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Vì {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()} không đảm bảo
+sẽ được gọi, bạn chỉ nên sử dụng nó để ghi trạng thái giao thời của hoạt động (trạng thái của
+UI)&mdash;bạn không nên sử dụng nó để lưu giữ dữ liệu liên tục.  Thay vào đó, bạn nên sử dụng  {@link
+android.app.Activity#onPause onPause()} để lưu giữ dữ liệu liên tục (chẳng hạn như dữ liệu mà nên được lưu
+vào một cơ sở dữ liệu) khi người dùng rời bỏ hoạt động.</p>
+
+<p>Một cách hay để kiểm tra khả năng khôi phục trạng thái của ứng dụng của bạn đó là chỉ cần xoay
+thiết bị sao cho hướng màn hình thay đổi. Khi hướng màn hình thay đổi, hệ thống
+hủy và tạo lại hoạt động để áp dụng các tài nguyên thay thế mà có thể có sẵn
+cho cấu hình màn hình mới. Chỉ với lý do này mà một điều rất quan trọng đó là hoạt động của bạn
+hoàn toàn khôi phục trạng thái của mình khi nó được tạo lại, vì người dùng thường xoay màn hình trong khi
+sử dụng ứng dụng.</p>
+
+
+<h3 id="ConfigurationChanges">Xử lý thay đổi về cấu hình</h3>
+
+<p>Một số cấu hình thiết bị có thể thay đổi trong thời gian chạy (chẳng hạn như hướng màn hình, sự sẵn có
+của bàn phím, và ngôn ngữ). Khi sự thay đổi đó diễn ra, Android tạo lại hoạt động đang chạy
+(hệ thống gọi {@link android.app.Activity#onDestroy}, rồi ngay lập tức gọi {@link
+android.app.Activity#onCreate onCreate()}). Hành vi này
+được thiết kế để giúp ứng dụng của bạn điều chỉnh theo những cấu hình mới bằng cách tự động tải lại ứng dụng
+của bạn bằng các tài nguyên thay thế mà bạn đã cung cấp (chẳng hạn như bố trí khác cho
+các hướng và kích cỡ màn hình khác).</p>
+
+<p>Nếu bạn thiết kế hoạt động của mình một cách phù hợp để xử lý khởi động lại do thay đổi hướng màn hình và
+khôi phục trạng thái hoạt động như nêu trên, ứng dụng của bạn sẽ linh hoạt hơn trước
+những sự kiện bất ngờ khác trong vòng đời của hoạt động.</p>
+
+<p>Cách tốt nhất để xử lý khởi động lại đó là
+ lưu và khôi phục trạng thái hoạt động của bạn bằng cách sử dụng {@link
+  android.app.Activity#onSaveInstanceState onSaveInstanceState()} và {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} (hoặc {@link
+android.app.Activity#onCreate onCreate()}), như đã đề cập trong phần trước.</p>
+
+<p>Để biết thêm thông tin về những thay đổi cấu hình xảy ra tại thời điểm chạy và cách bạn có thể xử lý
+chúng, hãy đọc hướng dẫn <a href="{@docRoot}guide/topics/resources/runtime-changes.html">Xử lý
+Thay đổi trong Thời gian chạy</a>.</p>
+
+
+
+<h3 id="CoordinatingActivities">Điều phối hoạt động</h3>
+
+ <p>Khi một hoạt động bắt đầu một hoạt động khác, cả hai đều trải qua những chuyển tiếp vòng đời. Hoạt động thứ nhất
+tạm dừng và dừng (tuy nhiên, nó sẽ không dừng nếu vẫn hiển thị được dưới nền), trong khi hoạt động kia
+được tạo. Trong trường hợp những hoạt động này chia sẻ dữ liệu được lưu vào đĩa hoặc nơi khác, điều quan trọng là
+phải hiểu rằng hoạt động thứ nhất không bị dừng hoàn toàn trước khi hoạt động thứ hai được tạo.
+Thay vào đó, tiến trình bắt đầu hoạt động thứ hai chồng lấp với tiến trình dừng hoạt động
+thứ nhất.</p>
+
+<p>Thứ tự gọi lại vòng đời được định nghĩa rõ, cụ thể là khi hai hoạt động trong cùng tiến trình
+và hoạt động này bắt đầu hoạt động kia. Sau đây là thứ tự thao tác diễn ra khi Hoạt động
+A bắt đầu Hoạt động B: </p>
+
+<ol>
+<li>Phương pháp {@link android.app.Activity#onPause onPause()} của Hoạt động A thực thi.</li>
+
+<li>{@link android.app.Activity#onCreate onCreate()} của Hoạt động B, {@link
+android.app.Activity#onStart onStart()}, và các phương pháp {@link android.app.Activity#onResume onResume()}
+thực thi theo trình tự. (Hoạt động B lúc này có tiêu điểm của người dùng.)</li>
+
+<li>Sau đó, nếu Hoạt động A không còn hiển thị trên màn hình, phương pháp {@link
+android.app.Activity#onStop onStop()} của nó sẽ thực thi.</li>
+</ol>
+
+ <p>Trình tự gọi lại vòng đời có thể dự đoán này cho phép bạn quản lý chuyển tiếp
+thông tin từ hoạt động này sang hoạt động khác. Ví dụ, nếu bạn phải ghi vào một cơ sở dữ liệu khi
+hoạt động thứ nhất dừng sao cho hoạt động theo sau có thể đọc nó, khi đó bạn nên ghi vào
+cơ sở dữ liệu trong khi {@link android.app.Activity#onPause onPause()} thay vì trong khi {@link
+android.app.Activity#onStop onStop()}.</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how Android maintains a history of activities and
+enables user multitasking, continue with the <b><a
+href="{@docRoot}guide/components/tasks-and-back-stack.html">Tasks and Back
+Stack</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/vi/guide/components/bound-services.jd b/docs/html-intl/intl/vi/guide/components/bound-services.jd
new file mode 100644
index 0000000..7a2ddba
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/bound-services.jd
@@ -0,0 +1,658 @@
+page.title=Dịch vụ Gắn kết
+parent.title=Dịch vụ
+parent.link=services.html
+@jd:body
+
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>Trong tài liệu này</h2>
+<ol>
+  <li><a href="#Basics">Nội dung Cơ bản</a></li>
+  <li><a href="#Creating">Tạo một Dịch vụ Gắn kết</a>
+    <ol>
+      <li><a href="#Binder">Mở rộng lớp Trình gắn kết</a></li>
+      <li><a href="#Messenger">Sử dụng một Hàm nhắn tin</a></li>
+    </ol>
+  </li>
+  <li><a href="#Binding">Gắn kết với một Dịch vụ</a></li>
+  <li><a href="#Lifecycle">Quản lý Vòng đời của một Dịch vụ Gắn kết</a></li>
+</ol>
+
+<h2>Lớp khóa</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.content.ServiceConnection}</li>
+  <li>{@link android.os.IBinder}</li>
+</ol>
+
+<h2>Mẫu</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+      RemoteService}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>Xem thêm</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/services.html">Dịch vụ</a></li>
+</ol>
+</div>
+
+
+<p>Dịch vụ gắn kết là máy chủ trong một giao diện máy khách-máy chủ. Dịch vụ gắn kết cho phép các thành phần
+(chẳng hạn như các hoạt động) gắn kết với dịch vụ, gửi yêu cầu, nhận phản hồi, và thậm chí thực hiện
+truyền thông liên tiến trình (IPC). Dịch vụ gắn kết thường chỉ hoạt động khi nó phục vụ một thành phần
+ứng dụng khác và không chạy ngầm mãi liên tục.</p>
+
+<p>Tài liệu này cho bạn biết cách tạo một dịch vụ gắn kết, bao gồm cách gắn kết
+với dịch vụ từ các thành phần ứng dụng khác. Tuy nhiên, bạn cũng nên tham khảo tài liệu <a href="{@docRoot}guide/components/services.html">Dịch vụ</a> để biết thêm thông tin
+về các dịch vụ nói chung, chẳng hạn như cách gửi thông báo từ một dịch vụ, đặt
+dịch vụ để chạy trong tiền cảnh, và nhiều nội dung khác.</p>
+
+
+<h2 id="Basics">Nội dung Cơ bản</h2>
+
+<p>Dịch vụ gắn kết là một sự triển khai lớp {@link android.app.Service} cho phép
+các ứng dụng khác gắn kết và tương tác với nó. Để thực hiện gắn kết cho một
+dịch vụ, bạn phải triển khai phương pháp gọi lại {@link android.app.Service#onBind onBind()}. Phương pháp này
+trả về một đối tượng {@link android.os.IBinder} định nghĩa giao diện lập trình mà
+các máy khách có thể sử dụng để tương tác với dịch vụ.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Gắn kết với một Dịch vụ được Bắt đầu</h3>
+
+<p>Như đã đề cập trong tài liệu <a href="{@docRoot}guide/components/services.html">Dịch vụ</a>
+, bạn có thể tạo một dịch vụ được bắt đầu và gắn kết. Cụ thể, dịch vụ có thể được
+bắt đầu bằng cách gọi {@link android.content.Context#startService startService()}, nó cho phép dịch vụ
+chạy mãi, và cũng cho phép một máy khách gắn kết với dịch vụ bằng cách gọi {@link
+android.content.Context#bindService bindService()}.
+  <p>Nếu bạn có cho phép dịch vụ của mình được bắt đầu và gắn kết, thì khi dịch vụ đã được
+bắt đầu, hệ thống sẽ <em>không</em> hủy dịch vụ đó khi tất cả máy khách bỏ gắn kết. Thay vào đó, bạn phải
+dừng dịch vụ một cách rõ ràng bằng cách gọi {@link android.app.Service#stopSelf stopSelf()} hoặc {@link
+android.content.Context#stopService stopService()}.</p>
+
+<p>Mặc dù bạn nên thường xuyên triển khai hoặc {@link android.app.Service#onBind onBind()}
+<em>hoặc</em> {@link android.app.Service#onStartCommand onStartCommand()}, đôi khi cần phải
+triển khai cả hai. Ví dụ, một trình chơi nhạc có thể cho rằng nên cho phép dịch vụ của nó chạy
+mãi và cũng thực hiện gắn kết. Bằng cách này, một hoạt động có thể bắt đầu dịch vụ để chơi vài
+bản nhạc và nhạc tiếp tục chơi ngay cả khi người dùng rời khỏi ứng dụng. Lúc đó, khi người dùng
+trở lại ứng dụng, hoạt động có thể gắn kết với dịch vụ để giành lại quyền kiểm soát phát lại.</p>
+
+<p>Đảm bảo đọc phần về <a href="#Lifecycle">Quản lý Vòng đời của một Dịch vụ
+Gắn kết</a> để biết thêm thông tin về vòng đời của dịch vụ khi thêm gắn kết vào một
+dịch vụ được bắt đầu.</p>
+</div>
+</div>
+
+<p>Một máy khách có thể gắn kết với dịch vụ bằng cách gọi {@link android.content.Context#bindService
+bindService()}. Khi làm vậy, nó phải cung cấp việc triển khai {@link
+android.content.ServiceConnection}, có chức năng theo dõi kết nối với dịch vụ. Phương pháp {@link
+android.content.Context#bindService bindService()} trả về ngay lập tức mà không có giá trị, nhưng
+khi hệ thống Android tạo kết nối giữa
+máy khách và dịch vụ, nó gọi {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} trên {@link
+android.content.ServiceConnection}, để giao {@link android.os.IBinder} mà
+máy khách có thể sử dụng để giao tiếp với dịch vụ.</p>
+
+<p>Nhiều máy khách có thể kết nối với dịch vụ đồng thời. Tuy nhiên, hệ thống sẽ gọi phương pháp
+{@link android.app.Service#onBind onBind()} của dịch vụ của bạn để truy xuất {@link android.os.IBinder} chỉ
+khi máy khách đầu tiên gắn kết. Sau đó, hệ thống sẽ giao cùng một {@link android.os.IBinder} đó cho bất kỳ
+máy khách bổ sung nào có gắn kết mà không gọi lại {@link android.app.Service#onBind onBind()}.</p>
+
+<p>Khi máy khách cuối cùng bỏ gắn kết với dịch vụ, hệ thống sẽ hủy dịch vụ (trừ khi dịch vụ
+cũng được bắt đầu bởi {@link android.content.Context#startService startService()}).</p>
+
+<p>Khi bạn triển khai dịch vụ gắn kết của mình, phần quan trọng nhất là định nghĩa giao diện
+mà phương pháp gọi lại {@link android.app.Service#onBind onBind()} của bạn sẽ trả về. Có một vài
+cách khác nhau mà bạn có thể định nghĩa giao diện {@link android.os.IBinder} của dịch vụ của mình và phần
+sau đây sẽ bàn về từng kỹ thuật.</p>
+
+
+
+<h2 id="Creating">Tạo một Dịch vụ Gắn kết</h2>
+
+<p>Khi tạo một dịch vụ thực hiện gắn kết, bạn phải nêu một {@link android.os.IBinder}
+cung cấp giao diện lập trình mà các máy khách có thể sử dụng để tương tác với dịch vụ. Có
+ba cách bạn có thể định nghĩa giao diện:</p>
+
+<dl>
+  <dt><a href="#Binder">Mở rộng lớp Trình gắn kết</a></dt>
+  <dd>Nếu dịch vụ của bạn chỉ riêng cho ứng dụng của chính bạn và chạy trong cùng tiến trình như máy khách
+(điều này thường hay gặp), bạn nên tạo giao diện của mình bằng cách mở rộng lớp {@link android.os.Binder}
+và trả về một thực thể của nó từ
+{@link android.app.Service#onBind onBind()}. Máy khách nhận được {@link android.os.Binder} và
+có thể sử dụng nó để trực tiếp truy cập các phương pháp công khai có sẵn trong triển khai {@link android.os.Binder}
+hoặc thậm chí trong {@link android.app.Service}.
+  <p>Nên áp dụng kỹ thuật này khi dịch vụ của bạn chỉ là một trình thực hiện chạy ngầm cho ứng dụng
+của chính bạn. Lý do duy nhất bạn không nên tạo giao diện của mình bằng cách này đó là
+dịch vụ của bạn được sử dụng bởi các ứng dụng khác hoặc giữa những tiến trình khác nhau.</dd>
+
+  <dt><a href="#Messenger">Sử dụng một Hàm nhắn tin</a></dt>
+  <dd>Nếu bạn cần giao diện của mình thực hiện các tiến trình khác nhau, bạn có thể tạo
+một giao diện cho dịch vụ bằng {@link android.os.Messenger}. Bằng cách này, dịch vụ
+định nghĩa một {@link android.os.Handler} phản hồi các loại đối tượng {@link
+android.os.Message} khác nhau. {@link android.os.Handler}
+này là cơ sở cho một {@link android.os.Messenger} mà sau đó có thể chia sẻ một {@link android.os.IBinder}
+với máy khách, cho phép máy khách gửi lệnh tới dịch vụ bằng cách sử dụng các đối tượng {@link
+android.os.Message}. Ngoài ra, máy khách có thể định nghĩa {@link android.os.Messenger} của
+chính nó để dịch vụ có thể gửi lại thông báo.
+  <p>Đây là cách đơn giản nhất để thực hiện truyền thông liên tiến trình (IPC), vì {@link
+android.os.Messenger} xếp hàng tất cả yêu cầu thành một luồng duy nhất sao cho bạn không phải thiết kế
+dịch vụ của mình an toàn với luồng.</p>
+  </dd>
+
+  <dt>Sử dụng AIDL</dt>
+  <dd>AIDL (Ngôn ngữ Định nghĩa Giao diện Android) thực hiện tất cả công việc để phân tách đối tượng thành
+các phần tử mà hệ điều hành có thể hiểu được và ghép nối chúng qua các tiến trình để thực hiện
+IPC. Bằng cách sử dụng {@link android.os.Messenger}, kỹ thuật trước đó thực tế được dựa trên AIDL như là
+cấu trúc cơ bản của nó. Như đã đề cập bên trên, {@link android.os.Messenger} tạo một hàng chờ
+gồm tất cả yêu cầu của máy khách trong một luồng duy nhất, vì thế dịch vụ nhận được từng yêu cầu một. Tuy nhiên, nếu
+bạn muốn dịch vụ xử lý nhiều yêu cầu đồng thời, bạn có thể sử dụng AIDL
+trực tiếp. Trong trường hợp này, dịch vụ của bạn phải có khả năng tạo đa luồng và được xây dựng an toàn với luồng.
+  <p>Để sử dụng AIDL trực tiếp, bạn phải
+tạo một tệp {@code .aidl} định nghĩa giao diện lập trình. Các công cụ SDK Android sử dụng tệp
+này để khởi tạo một lớp tóm tắt (abstract class) nhằm triển khai giao diện và xử lý IPC, mà sau đó
+bạn có thể mở rộng trong dịch vụ của mình.</p>
+  </dd>
+</dl>
+
+  <p class="note"><strong>Lưu ý:</strong> Hầu hết ứng dụng <strong>không nên</strong> sử dụng AIDL để
+tạo một dịch vụ gắn kết, vì nó có thể yêu cầu khả năng tạo đa luồng và
+có thể dẫn đến việc triển khai phức tạp hơn. Như vậy, AIDL không phù hợp với hầu hết ứng dụng
+và tài liệu này không bàn về cách sử dụng nó cho dịch vụ của bạn. Nếu bạn chắc chắn rằng mình cần
+sử dụng AIDL trực tiếp, hãy xem tài liệu <a href="{@docRoot}guide/components/aidl.html">AIDL</a>
+.</p>
+
+
+
+
+<h3 id="Binder">Mở rộng lớp Trình gắn kết</h3>
+
+<p>Nếu dịch vụ của bạn chỉ được sử dụng bởi ứng dụng cục bộ và không cần làm việc qua nhiều tiến trình,
+khi đó bạn có thể triển khai lớp {@link android.os.Binder} của chính mình để cung cấp quyền truy cập
+trực tiếp cho máy khách của bạn để truy nhập các phương pháp công khai trong dịch vụ.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Cách này chỉ có tác dụng nếu máy khách và dịch vụ nằm trong cùng
+ứng dụng và tiến trình, là trường hợp phổ biến nhất. Ví dụ, cách này sẽ hoạt động tốt đối với một ứng dụng
+nhạc cần gắn kết một hoạt động với dịch vụ của chính nó đang phát nhạc
+chạy ngầm.</p>
+
+<p>Sau đây là cách thiết lập:</p>
+<ol>
+  <li>Trong dịch vụ của bạn, hãy tạo một thực thể {@link android.os.Binder} mà hoặc:
+    <ul>
+      <li>chứa các phương pháp công khai mà máy khách có thể gọi</li>
+      <li>trả về thực thể {@link android.app.Service} hiện tại, trong đó có các phương pháp công khai mà
+máy khách có thể gọi</li>
+      <li>hoặc, trả về một thực thể của một lớp khác được lưu trữ bởi dịch vụ bằng các phương pháp công khai mà
+máy khách có thể gọi</li>
+    </ul>
+  <li>Trả về thực thể {@link android.os.Binder} này từ phương pháp gọi lại {@link
+android.app.Service#onBind onBind()}.</li>
+  <li>Trong máy khách, nhận {@link android.os.Binder} từ phương pháp gọi lại {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} và
+thực hiện gọi tới dịch vụ gắn kết bằng cách sử dụng các phương pháp đã nêu.</li>
+</ol>
+
+<p class="note"><strong>Lưu ý:</strong> Lý do dịch vụ và máy khách phải ở trong cùng
+ứng dụng đó là máy khách có thể đổi kiểu đối tượng được trả về và gọi các API của nó một cách phù hợp. Dịch vụ
+và máy khách cũng phải ở trong cùng tiến trình, vì kỹ thuật này không thực hiện bất kỳ thao tác
+ghép nối qua các tiến trình nào.</p>
+
+<p>Ví dụ, sau đây là một dịch vụ cung cấp cho máy khách quyền truy cập các phương pháp trong dịch vụ thông qua
+việc triển khai {@link android.os.Binder}:</p>
+
+<pre>
+public class LocalService extends Service {
+    // Binder given to clients
+    private final IBinder mBinder = new LocalBinder();
+    // Random number generator
+    private final Random mGenerator = new Random();
+
+    /**
+     * Class used for the client Binder.  Because we know this service always
+     * runs in the same process as its clients, we don't need to deal with IPC.
+     */
+    public class LocalBinder extends Binder {
+        LocalService getService() {
+            // Return this instance of LocalService so clients can call public methods
+            return LocalService.this;
+        }
+    }
+
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        return mBinder;
+    }
+
+    /** method for clients */
+    public int getRandomNumber() {
+      return mGenerator.nextInt(100);
+    }
+}
+</pre>
+
+<p>{@code LocalBinder} cung cấp phương pháp {@code getService()} cho máy khách để truy xuất
+thực thể hiện tại của {@code LocalService}. Điều này cho phép máy khách gọi các phương pháp công khai trong
+dịch vụ. Ví dụ, máy khách có thể gọi {@code getRandomNumber()} từ dịch vụ.</p>
+
+<p>Sau đây là một hoạt động gắn kết với {@code LocalService} và sẽ gọi {@code getRandomNumber()}
+khi nhấp vào nút:</p>
+
+<pre>
+public class BindingActivity extends Activity {
+    LocalService mService;
+    boolean mBound = false;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to LocalService
+        Intent intent = new Intent(this, LocalService.class);
+        bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+
+    /** Called when a button is clicked (the button in the layout file attaches to
+      * this method with the android:onClick attribute) */
+    public void onButtonClick(View v) {
+        if (mBound) {
+            // Call a method from the LocalService.
+            // However, if this call were something that might hang, then this request should
+            // occur in a separate thread to avoid slowing down the activity performance.
+            int num = mService.getRandomNumber();
+            Toast.makeText(this, "number: " + num, Toast.LENGTH_SHORT).show();
+        }
+    }
+
+    /** Defines callbacks for service binding, passed to bindService() */
+    private ServiceConnection mConnection = new ServiceConnection() {
+
+        &#64;Override
+        public void onServiceConnected(ComponentName className,
+                IBinder service) {
+            // We've bound to LocalService, cast the IBinder and get LocalService instance
+            LocalBinder binder = (LocalBinder) service;
+            mService = binder.getService();
+            mBound = true;
+        }
+
+        &#64;Override
+        public void onServiceDisconnected(ComponentName arg0) {
+            mBound = false;
+        }
+    };
+}
+</pre>
+
+<p>Mẫu trên cho thấy cách mà máy khách gắn kết với dịch vụ bằng cách sử dụng triển khai
+{@link android.content.ServiceConnection} và gọi lại {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()}. Phần tiếp theo
+cung cấp thêm thông tin về tiến trình gắn kết này với dịch vụ.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Ví dụ trên không công khai bỏ gắn kết khỏi dịch vụ,
+nhưng tất cả máy khách cần bỏ gắn kết tại một thời điểm phù hợp (chẳng hạn như khi hoạt động tạm dừng).</p>
+
+<p>Để biết thêm mã ví dụ, hãy xem lớp <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+LocalService.java}</a> và lớp <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.html">{@code
+LocalServiceActivities.java}</a> trong <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a>.</p>
+
+
+
+
+
+<h3 id="Messenger">Sử dụng một Hàm nhắn tin</h3>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h4>So sánh với AIDL</h4>
+  <p>Khi bạn cần thực hiện IPC, việc sử dụng một {@link android.os.Messenger} cho giao diện của bạn
+sẽ đơn giản hơn so với việc triển khai nó bằng AIDL, vì {@link android.os.Messenger} xếp hàng
+tất cả lệnh gọi đối với dịch vụ, trong khi đó, giao diện AIDL thuần túy sẽ gửi các yêu cầu đồng thời tới
+dịch vụ, sau đó dịch vụ phải xử lý tạo đa luồng.</p>
+  <p>Đối với hầu hết ứng dụng, dịch vụ không cần thực hiện tạo đa luồng, vì vậy sử dụng một {@link
+android.os.Messenger} sẽ cho phép dịch vụ xử lý từng lệnh gọi tại một thời điểm. Nếu quan trọng là
+dịch vụ của bạn phải được tạo đa luồng, khi đó bạn nên sử dụng <a href="{@docRoot}guide/components/aidl.html">AIDL</a> để định nghĩa giao diện của mình.</p>
+</div>
+</div>
+
+<p>Nếu bạn cần dịch vụ của mình giao tiếp với các tiến trình từ xa, khi đó bạn có thể sử dụng một
+{@link android.os.Messenger} để cung cấp giao diện cho dịch vụ của mình. Kỹ thuật này cho phép
+bạn thực hiện truyền thông liên tiến trình (IPC) mà không cần sử dụng AIDL.</p>
+
+<p>Sau đây là tóm tắt cách sử dụng {@link android.os.Messenger}:</p>
+
+<ul>
+  <li>Dịch vụ triển khai {@link android.os.Handler} để nhận lệnh gọi lại cho mỗi
+lệnh gọi từ một máy khách.</li>
+  <li>{@link android.os.Handler} được sử dụng để tạo một đối tượng {@link android.os.Messenger}
+(là một tham chiếu tới {@link android.os.Handler}).</li>
+  <li>{@link android.os.Messenger} tạo một {@link android.os.IBinder} mà dịch vụ
+trả về máy khách từ {@link android.app.Service#onBind onBind()}.</li>
+  <li>Máy khách sử dụng {@link android.os.IBinder} để khởi tạo {@link android.os.Messenger}
+(tham chiếu tới {@link android.os.Handler} của dịch vụ), mà máy khách sử dụng để gửi các đối tượng
+{@link android.os.Message} tới dịch vụ.</li>
+  <li>Dịch vụ nhận được từng {@link android.os.Message} trong {@link
+android.os.Handler} của mình&mdash;cụ thể là theo phương pháp {@link android.os.Handler#handleMessage
+handleMessage()}.</li>
+</ul>
+
+
+<p>Theo cách này, không có "phương pháp" nào để máy khách gọi đối với dịch vụ. Thay vào đó, máy khách
+gửi “thông báo” (đối tượng {@link android.os.Message}) mà dịch vụ nhận được trong 
+{@link android.os.Handler} của mình.</p>
+
+<p>Sau đây là một dịch vụ ví dụ đơn giản sử dụng một giao diện {@link android.os.Messenger}:</p>
+
+<pre>
+public class MessengerService extends Service {
+    /** Command to the service to display a message */
+    static final int MSG_SAY_HELLO = 1;
+
+    /**
+     * Handler of incoming messages from clients.
+     */
+    class IncomingHandler extends Handler {
+        &#64;Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_SAY_HELLO:
+                    Toast.makeText(getApplicationContext(), "hello!", Toast.LENGTH_SHORT).show();
+                    break;
+                default:
+                    super.handleMessage(msg);
+            }
+        }
+    }
+
+    /**
+     * Target we publish for clients to send messages to IncomingHandler.
+     */
+    final Messenger mMessenger = new Messenger(new IncomingHandler());
+
+    /**
+     * When binding to the service, we return an interface to our messenger
+     * for sending messages to the service.
+     */
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        Toast.makeText(getApplicationContext(), "binding", Toast.LENGTH_SHORT).show();
+        return mMessenger.getBinder();
+    }
+}
+</pre>
+
+<p>Để ý rằng phương pháp {@link android.os.Handler#handleMessage handleMessage()} trong
+{@link android.os.Handler} là nơi dịch vụ nhận được {@link android.os.Message}
+đến và quyết định việc cần làm dựa trên thành viên {@link android.os.Message#what}.</p>
+
+<p>Tất cả việc mà một máy khách cần làm đó là tạo một {@link android.os.Messenger} dựa trên {@link
+android.os.IBinder} được dịch vụ trả về và gửi một thông báo bằng cách sử dụng {@link
+android.os.Messenger#send send()}. Ví dụ, sau đây là một hoạt động đơn giản gắn kết với dịch vụ
+và gửi tin nhắn {@code MSG_SAY_HELLO} cho dịch vụ:</p>
+
+<pre>
+public class ActivityMessenger extends Activity {
+    /** Messenger for communicating with the service. */
+    Messenger mService = null;
+
+    /** Flag indicating whether we have called bind on the service. */
+    boolean mBound;
+
+    /**
+     * Class for interacting with the main interface of the service.
+     */
+    private ServiceConnection mConnection = new ServiceConnection() {
+        public void onServiceConnected(ComponentName className, IBinder service) {
+            // This is called when the connection with the service has been
+            // established, giving us the object we can use to
+            // interact with the service.  We are communicating with the
+            // service using a Messenger, so here we get a client-side
+            // representation of that from the raw IBinder object.
+            mService = new Messenger(service);
+            mBound = true;
+        }
+
+        public void onServiceDisconnected(ComponentName className) {
+            // This is called when the connection with the service has been
+            // unexpectedly disconnected -- that is, its process crashed.
+            mService = null;
+            mBound = false;
+        }
+    };
+
+    public void sayHello(View v) {
+        if (!mBound) return;
+        // Create and send a message to the service, using a supported 'what' value
+        Message msg = Message.obtain(null, MessengerService.MSG_SAY_HELLO, 0, 0);
+        try {
+            mService.send(msg);
+        } catch (RemoteException e) {
+            e.printStackTrace();
+        }
+    }
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to the service
+        bindService(new Intent(this, MessengerService.class), mConnection,
+            Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+}
+</pre>
+
+<p>Để ý rằng ví dụ này không cho biết cách mà dịch vụ có thể phản hồi máy khách. Nếu bạn muốn dịch vụ
+phản hồi, khi đó bạn cũng cần tạo một {@link android.os.Messenger} trong máy khách. Sau đó
+khi máy khách nhận được lệnh gọi lại {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()}, nó sẽ gửi một {@link android.os.Message} tới dịch vụ, trong đó bao gồm
+{@link android.os.Messenger} của máy khách trong tham số {@link android.os.Message#replyTo}
+của phương pháp {@link android.os.Messenger#send send()}.</p>
+
+<p>Bạn có thể xem một ví dụ về cách cung cấp tính năng nhắn tin hai chiều trong <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerService.html">{@code
+MessengerService.java}</a> (dịch vụ) và các mẫu <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.html">{@code
+MessengerServiceActivities.java}</a> (máy khách).</p>
+
+
+
+
+
+<h2 id="Binding">Gắn kết với một Dịch vụ</h2>
+
+<p>Các thành phần ứng dụng (máy khách) có thể gắn kết với một dịch vụ bằng cách gọi
+{@link android.content.Context#bindService bindService()}. Hệ thống Android
+khi đó sẽ gọi phương pháp {@link android.app.Service#onBind
+onBind()} của dịch vụ, nó trả về một {@link android.os.IBinder} để tương tác với dịch vụ.</p>
+
+<p>Việc gắn kết diễn ra không đồng bộ. {@link android.content.Context#bindService
+bindService()} trả về ngay lập tức và <em>không</em> trả {@link android.os.IBinder} về
+máy khách. Để nhận một {@link android.os.IBinder}, máy khách phải tạo một thực thể của {@link
+android.content.ServiceConnection} và chuyển nó cho {@link android.content.Context#bindService
+bindService()}. {@link android.content.ServiceConnection} bao gồm một phương pháp gọi lại mà hệ thống
+gọi để gửi {@link android.os.IBinder}.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Chỉ các hoạt động, dịch vụ, và trình cung cấp nội dung mới có thể gắn kết
+với một dịch vụ&mdash;bạn <strong>không thể</strong> gắn kết với một dịch vụ từ một hàm nhận quảng bá (broadcast receiver).</p>
+
+<p>Vì vậy, để gắn kết với một dịch vụ từ máy khách của mình, bạn phải: </p>
+<ol>
+  <li>Triển khai {@link android.content.ServiceConnection}.
+    <p>Việc triển khai của bạn phải khống chế hai phương pháp gọi lại:</p>
+    <dl>
+      <dt>{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}</dt>
+        <dd>Hệ thống gọi phương pháp này để gửi {@link android.os.IBinder} được trả về bởi
+phương pháp {@link android.app.Service#onBind onBind()} của dịch vụ.</dd>
+      <dt>{@link android.content.ServiceConnection#onServiceDisconnected
+onServiceDisconnected()}</dt>
+        <dd>Hệ thống Android gọi phương pháp này khi kết nối với dịch vụ bị mất
+đột ngột, chẳng hạn như khi dịch vụ bị lỗi hoặc bị tắt bỏ. Phương pháp này <em>không</em> được gọi khi
+máy khách bỏ gắn kết.</dd>
+    </dl>
+  </li>
+  <li>Gọi {@link
+android.content.Context#bindService bindService()}, chuyển việc triển khai {@link
+android.content.ServiceConnection}. </li>
+  <li>Khi hệ thống gọi phương pháp gọi lại {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()} của bạn, bạn có thể bắt đầu thực hiện các lệnh gọi tới dịch vụ bằng các phương pháp
+được định nghĩa bởi giao diện.</li>
+  <li>Để ngắt kết nối khỏi dịch vụ, hãy gọi {@link
+android.content.Context#unbindService unbindService()}.
+    <p>Khi máy khách của bạn bị hủy, nó sẽ bỏ gắn kết khỏi dịch vụ, nhưng bạn nên luôn bỏ gắn kết
+khi bạn đã tương tác xong với dịch vụ hoặc khi hoạt động của bạn tạm dừng sao cho dịch vụ có thể
+tắt khi không dùng đến. (Thời điểm phù hợp để gắn kết và bỏ gắn kết được đề cập
+kỹ hơn ở bên dưới.)</p>
+  </li>
+</ol>
+
+<p>Ví dụ, đoạn mã HTML sau sẽ kết nối máy khách với dịch vụ được tạo bên trên bằng cách
+<a href="#Binder">mở rộng lớp Trình gắn kết</a>, vì vậy tất cả những việc mà nó phải làm là đổi kiểu 
+{@link android.os.IBinder} được trả về thành lớp {@code LocalService} và yêu cầu thực thể {@code
+LocalService}:</p>
+
+<pre>
+LocalService mService;
+private ServiceConnection mConnection = new ServiceConnection() {
+    // Called when the connection with the service is established
+    public void onServiceConnected(ComponentName className, IBinder service) {
+        // Because we have bound to an explicit
+        // service that is running in our own process, we can
+        // cast its IBinder to a concrete class and directly access it.
+        LocalBinder binder = (LocalBinder) service;
+        mService = binder.getService();
+        mBound = true;
+    }
+
+    // Called when the connection with the service disconnects unexpectedly
+    public void onServiceDisconnected(ComponentName className) {
+        Log.e(TAG, "onServiceDisconnected");
+        mBound = false;
+    }
+};
+</pre>
+
+<p>Với {@link android.content.ServiceConnection} này, máy khách có thể gắn kết với một dịch vụ bằng cách chuyển
+nó cho {@link android.content.Context#bindService bindService()}. Ví dụ:</p>
+
+<pre>
+Intent intent = new Intent(this, LocalService.class);
+bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+</pre>
+
+<ul>
+  <li>Tham số đầu tiên của {@link android.content.Context#bindService bindService()} là một
+{@link android.content.Intent} trong đó nêu rõ tên của các dịch vụ sẽ gắn kết (mặc dù ý định
+có thể ngầm hiểu).</li>
+<li>Tham số thứ hai là đối tượng {@link android.content.ServiceConnection}.</li>
+<li>Tham số thứ ba là một cờ cho biết các tùy chọn cho gắn kết. Nên luôn luôn là {@link
+android.content.Context#BIND_AUTO_CREATE} để tạo dịch vụ nếu nó chưa hoạt động.
+Các giá trị có thể khác là {@link android.content.Context#BIND_DEBUG_UNBIND}
+và {@link android.content.Context#BIND_NOT_FOREGROUND}, hoặc {@code 0} trong trường hợp không có.</li>
+</ul>
+
+
+<h3>Lưu ý bổ sung</h3>
+
+<p>Sau đây là một số lưu ý quan trọng về việc gắn kết với một dịch vụ:</p>
+<ul>
+  <li>Bạn nên luôn bẫy các lỗi ngoại lệ {@link android.os.DeadObjectException} phát sinh khi
+kết nối bị đứt. Đây là lỗi ngoại lệ duy nhất phát sinh bởi các phương pháp từ xa.</li>
+  <li>Các đối tượng được xem là tham chiếu khắp các tiến trình. </li>
+  <li>Bạn nên luôn ghép đôi gắn kết và bỏ gắn kết trong khi
+khớp những khoảnh khắc kết nối và đứt kết nối trong vòng đời của máy khách. Ví dụ:
+    <ul>
+      <li>Nếu bạn chỉ cần tương tác với dịch vụ trong khi hoạt động của bạn hiển thị, bạn
+nên gắn kết trong khi {@link android.app.Activity#onStart onStart()} và bỏ gắn kết trong khi {@link
+android.app.Activity#onStop onStop()}.</li>
+      <li>Nếu bạn muốn hoạt động của mình nhận được phản hồi ngay cả trong khi bị dừng khi đang
+dưới nền, khi đó bạn có thể gắn kết trong khi {@link android.app.Activity#onCreate onCreate()} và bỏ gắn kết
+trong khi {@link android.app.Activity#onDestroy onDestroy()}. Chú ý rằng điều này hàm ý rằng hoạt động
+của bạn cần sử dụng dịch vụ trong toàn bộ thời gian khi nó đang chạy (ngay cả khi chạy ngầm), do đó nếu
+dịch vụ ở trong một tiến trình khác thì bạn hãy tăng trọng số của tiến trình và khả năng hệ thống
+tắt bỏ tiến trình đó sẽ cao hơn.</li>
+    </ul>
+    <p class="note"><strong>Lưu ý:</strong> Thông thường bạn <strong>không</strong> nên gắn kết và bỏ gắn kết
+trong khi {@link android.app.Activity#onResume onResume()} và {@link
+android.app.Activity#onPause onPause()} cho hoạt động của mình, vì những lệnh gọi lại này diễn ra tại mọi thời điểm chuyển tiếp vòng đời
+và bạn nên duy trì xử lý tại những thời điểm chuyển tiếp này ở mức tối thiểu. Đồng thời, nếu
+nhiều hoạt động trong ứng dụng của bạn gắn kết với cùng dịch vụ và có sự chuyển tiếp giữa
+hai trong số những hoạt động đó, dịch vụ có thể bị hủy và tạo lại khi hoạt động hiện tại bỏ gắn kết
+(trong khi tạm dừng) trước khi hoạt động tiếp theo gắn kết (trong khi tiếp tục). (Sự chuyển tiếp hoạt động này đối với cách mà các hoạt động
+phối hợp vòng đời của chúng được mô tả trong tài liệu <a href="{@docRoot}guide/components/activities.html#CoordinatingActivities">Hoạt động</a>
+.)</p>
+</ul>
+
+<p>Để biết thêm mã ví dụ, thể hiện cách gắn kết với một dịch vụ, hãy xem lớp <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+RemoteService.java}</a> trong <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a>.</p>
+
+
+
+
+
+<h2 id="Lifecycle">Quản lý Vòng đời của một Dịch vụ Gắn kết</h2>
+
+<p>Khi một dịch vụ bị bỏ gắn kết khỏi tất cả máy khách, hệ thống Android sẽ hủy nó (trừ khi nó cũng
+được bắt đầu bằng {@link android.app.Service#onStartCommand onStartCommand()}). Như vậy, bạn không phải
+ quản lý vòng đời dịch vụ của mình nếu nó thuần túy là một
+dịch vụ gắn kết&mdash;hệ thống Android sẽ quản lý nó cho bạn dựa trên việc nó có gắn kết với bất kỳ máy khách nào không.</p>
+
+<p>Tuy nhiên, nếu bạn chọn triển khai phương pháp gọi lại {@link android.app.Service#onStartCommand
+onStartCommand()}, vậy thì bạn phải dừng dịch vụ một cách tường minh, vì dịch vụ
+lúc này đang được coi là <em>được bắt đầu</em>. Trong trường hợp này, dịch vụ sẽ chạy cho tới khi dịch vụ
+tự dừng bằng {@link android.app.Service#stopSelf()} hoặc một thành phần khác sẽ gọi {@link
+android.content.Context#stopService stopService()}, bất kể nó có gắn kết với bất kỳ máy khách
+nào không.</p>
+
+<p>Ngoài ra, nếu dịch vụ của bạn được bắt đầu và chấp nhận gắn kết, lúc đó khi hệ thống gọi
+phương pháp {@link android.app.Service#onUnbind onUnbind()} của bạn, bạn có thể tùy chọn trả về
+{@code true} nếu bạn muốn nhận một lệnh gọi tới {@link android.app.Service#onRebind
+onRebind()} vào lần tới khi một máy khách gắn kết với dịch vụ (thay vì nhận một lệnh gọi tới {@link
+android.app.Service#onBind onBind()}). {@link android.app.Service#onRebind
+onRebind()} sẽ trả về rỗng, nhưng máy khách vẫn nhận được {@link android.os.IBinder} trong gọi lại
+{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()} của mình.
+Hình 1 bên dưới minh họa lô-gic cho loại vòng đời này.</p>
+
+
+<img src="{@docRoot}images/fundamentals/service_binding_tree_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Hình 1.</strong> Vòng đời của một dịch vụ được bắt đầu
+và cũng cho phép gắn kết.</p>
+
+
+<p>Để biết thêm thông tin về vòng đời của một dịch vụ được bắt đầu, hãy xem tài liệu <a href="{@docRoot}guide/components/services.html#Lifecycle">Dịch vụ</a>.</p>
+
+
+
+
diff --git a/docs/html-intl/intl/vi/guide/components/fragments.jd b/docs/html-intl/intl/vi/guide/components/fragments.jd
new file mode 100644
index 0000000..95d9c76
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/fragments.jd
@@ -0,0 +1,812 @@
+page.title=Phân đoạn
+parent.title=Hoạt động
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Trong tài liệu này</h2>
+  <ol>
+    <li><a href="#Design">Triết lý Thiết kế</a></li>
+    <li><a href="#Creating">Tạo một Phân đoạn</a>
+      <ol>
+        <li><a href="#UI">Thêm một giao diện người dùng</a></li>
+        <li><a href="#Adding">Thêm một phân đoạn vào một hoạt động</a></li>
+      </ol>
+    </li>
+    <li><a href="#Managing">Quản lý Phân đoạn</a></li>
+    <li><a href="#Transactions">Thực hiện Giao tác Phân đoạn</a></li>
+    <li><a href="#CommunicatingWithActivity">Giao tiếp với Hoạt động</a>
+      <ol>
+        <li><a href="#EventCallbacks">Tạo gọi lại sự kiện cho hoạt động</a></li>
+        <li><a href="#ActionBar">Thêm mục vào Thanh Hành động</a></li>
+      </ol>
+    </li>
+    <li><a href="#Lifecycle">Xử lý Vòng đời của Phân đoạn</a>
+      <ol>
+        <li><a href="#CoordinatingWithActivity">Phối hợp với vòng đời của hoạt động</a></li>
+      </ol>
+    </li>
+    <li><a href="#Example">Ví dụ</a></li>
+  </ol>
+
+  <h2>Lớp khóa</h2>
+  <ol>
+    <li>{@link android.app.Fragment}</li>
+    <li>{@link android.app.FragmentManager}</li>
+    <li>{@link android.app.FragmentTransaction}</li>
+  </ol>
+  
+  <h2>Xem thêm</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/fragments/index.html">Xây dựng một UI Động bằng các Phân đoạn</a></li>
+    <li><a href="{@docRoot}guide/practices/tablets-and-handsets.html">Hỗ trợ Máy tính bảng
+và Thiết bị cầm tay</a></li>
+  </ol>
+</div>
+</div>
+
+<p>{@link android.app.Fragment} biểu diễn một hành vi hay một phần giao diện người dùng trong một
+{@link android.app.Activity}. Bạn có thể kết hợp nhiều phân đoạn trong một hoạt động duy nhất để xây dựng một
+UI nhiều bảng và sử dụng lại phân đoạn trong nhiều hoạt động. Bạn có thể coi phân đoạn như là một
+phần mô-đun của một hoạt động, có vòng đời của chính nó, nhận các sự kiện đầu vào của chính nó, và
+bạn có thể thêm hoặc gỡ bỏ trong khi hoạt động đang chạy (kiểu như một "hoạt động con" mà
+bạn có thể sử dụng lại trong các hoạt động khác nhau).</p>
+
+<p>Phân đoạn phải luôn được nhúng trong một hoạt động và vòng đời của phân đoạn bị ảnh hưởng trực tiếp bởi
+vòng đời của hoạt động chủ. Ví dụ, khi hoạt động bị tạm dừng, tất cả
+phân đoạn trong nó cũng vậy, và khi hoạt động bị hủy, tất cả phân đoạn cũng vậy. Tuy nhiên, trong khi một
+hoạt động đang chạy (nó ở trong trạng thái vòng đời <em>được tiếp tục</em><a href="{@docRoot}guide/components/activities.html#Lifecycle"></a>), bạn có thể
+thao tác từng phân đoạn độc lập, chẳng hạn như thêm hay xóa chúng. Khi bạn thực hiện một
+giao tác phân đoạn, bạn cũng có thể thêm nó vào một ngăn xếp được quản lý bởi
+hoạt động đó&mdash;từng mục nhập vào ngăn xếp trong hoạt động là một bản ghi giao tác phân đoạn
+đã xảy ra. Ngăn xếp cho phép người dùng đảo ngược một giao tác phân đoạn (điều hướng ngược lại),
+bằng cách nhấn nút <em>Quay lại</em>.</p>
+
+<p>Khi bạn thêm một phân đoạn như một phần trong bố trí hoạt động của mình, nó sẽ ở trong một {@link
+android.view.ViewGroup} bên trong phân cấp dạng xem của hoạt động đó và phân đoạn này sẽ định nghĩa bố trí
+dạng xem của chính nó.
+Bạn có thể chèn một phân đoạn vào bố trí hoạt động của mình bằng cách khai báo phân đoạn trong tệp
+bố trí của hoạt động, dưới dạng một phần tử {@code &lt;fragment&gt;}, hoặc từ mã ứng dụng của bạn bằng cách thêm nó vào một
+{@link android.view.ViewGroup} hiện hữu. Tuy nhiên, không bắt buộc phải có một phân đoạn là một bộ phận của bố trí hoạt động
+; bạn cũng có thể sử dụng một phân đoạn mà không cần UI của chính nó như một trình thực hiện vô hình cho hoạt động
+.</p>
+
+<p>Tài liệu này mô tả cách xây dựng ứng dụng của bạn để sử dụng phân đoạn, bao gồm
+cách các phân đoạn có thể duy trì trạng thái của chúng khi được thêm vào ngăn xếp của hoạt động, chia sẻ
+các sự kiện với hoạt động và các phân đoạn khác trong hoạt động, đóng góp vào thanh hành động của hoạt động
+và nhiều thông tin khác.</p>
+
+
+<h2 id="Design">Triết lý Thiết kế</h2>
+
+<p>Android giới thiệu phân đoạn trong phiên bản Android 3.0 (API mức 11), chủ yếu nhằm hỗ trợ
+các thiết kế UI động và linh hoạt hơn trên màn hình lớn, chẳng hạn như máy tính bảng. Vì
+màn hình của máy tính bảng lớn hơn nhiều màn hình của thiết bị cầm tay, có nhiều khoảng trống hơn để kết hợp và
+trao đổi các thành phần UI. Phân đoạn cho phép những thiết kế như vậy mà không cần bạn phải quản lý những thay đổi
+phức tạp về phân cấp dạng xem. Bằng cách chia bố trí của một hoạt động thành các phân đoạn, bạn có thể
+sửa đổi diện mạo của hoạt động vào thời gian chạy và giữ những thay đổi đó trong một ngăn xếp
+được quản lý bởi hoạt động.</p>
+
+<p>Ví dụ, một ứng dụng tin tức có thể sử dụng một phân đoạn để hiển thị một danh sách bài viết ở
+bên trái và một phân đoạn khác để hiển thị một bài viết ở bên phải&mdash;cả hai phân đoạn đều xuất hiện trong một
+hoạt động, bên cạnh nhau, và từng phân đoạn có tập phương pháp gọi lại vòng đời riêng và xử lý
+các sự kiện nhập liệu người dùng riêng của mình. Vì thế, thay vì sử dụng một hoạt động để chọn một bài viết và một
+hoạt động khác để đọc bài viết, người dùng có thể chọn một bài viết và đọc nó trong cùng
+hoạt động, như được minh họa trong bố trí máy tính bảng trong hình 1.</p>
+
+<p>Bạn nên thiết kế từng phân đoạn như một thành phần hoạt động dạng mô-đun và có thể sử dụng lại. Đó là bởi
+mỗi phân đoạn sẽ định nghĩa bố trí và hành vi của chính nó với các phương pháp gọi lại vòng đời của chính nó, bạn có thể
+bao gồm một phân đoạn trong nhiều hoạt động, vì thế bạn nên thiết kế để tái sử dụng và tránh trực tiếp
+thao tác một phân đoạn từ một phân đoạn khác. Điều này đặc biệt quan trọng vì một phân đoạn
+mô-đun cho phép bạn thay đổi kết hợp phân đoạn của mình cho các kích cỡ màn hình khác nhau. Khi thiết kế
+ứng dụng của bạn để hỗ trợ cả máy tính bảng và thiết bị cầm tay, bạn có thể sử dụng lại phân đoạn của mình trong các cấu hình
+bố trí khác nhau nhằm tối ưu hóa trải nghiệm người dùng dựa trên không gian màn hình có sẵn. Ví
+dụ, trên một thiết bị cầm tay, có thể cần phải tách riêng các phân đoạn để cung cấp một UI đơn bảng khi mà
+không thể làm vừa khít nhiều hơn một phân đoạn trong cùng hoạt động.</p>
+
+<img src="{@docRoot}images/fundamentals/fragments.png" alt="" />
+<p class="img-caption"><strong>Hình 1.</strong> Ví dụ về cách hai mô-đun UI được định nghĩa
+bởi các phân đoạn có thể được kết hợp thành một hoạt động đối với thiết kế máy tính bảng, nhưng được tách riêng đối với
+thiết kế thiết bị cầm tay.</p>
+
+<p>Ví dụ&mdash;để tiếp tục với ví dụ về ứng dụng tin tức&mdash;ứng dụng có thể nhúng
+hai phân đoạn trong <em>Hoạt động A</em>, khi đang chạy trên một thiết bị có kích cỡ máy tính bảng. Tuy nhiên, trên một
+màn hình kích cỡ thiết bị cầm tay, không có đủ khoảng trống cho cả hai phân đoạn, vì thế <em>Hoạt động A</em> chỉ
+bao gồm phân đoạn cho danh sách bài viết, và khi người dùng chọn một bài viết, nó sẽ khởi động
+<em>Hoạt động B</em>, hoạt động này chứa phân đoạn thứ hai là đọc bài viết. Vì thế, ứng dụng
+hỗ trợ cả máy tính bảng và thiết bị cầm tay bằng cách sử dụng lại các phân đoạn theo các cách kết hợp khác nhau như được minh họa trong
+hình 1.</p>
+
+<p>Để biết thêm thông tin về việc thiết kế ứng dụng của bạn bằng các cách kết hợp phân đoạn khác nhau cho
+cấu hình màn hình khác nhau, hãy xem hướng dẫn <a href="{@docRoot}guide/practices/tablets-and-handsets.html">Hỗ trợ Máy tính bảng và Thiết bị cầm tay</a>.</p>
+
+
+
+<h2 id="Creating">Tạo một Phân đoạn</h2>
+
+<div class="figure" style="width:327px">
+<img src="{@docRoot}images/fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Hình 2.</strong> Vòng đời của một phân đoạn (trong khi hoạt động
+của nó đang chạy).</p>
+</div>
+
+<p>Để tạo một phân đoạn, bạn phải tạo một lớp con của {@link android.app.Fragment} (hoặc
+một lớp con hiện tại của nó). Lớp {@link android.app.Fragment} có mã trông rất giống
+một {@link android.app.Activity}. Nó chứa các phương pháp gọi lại tương tự như hoạt động, chẳng
+hạn như {@link android.app.Fragment#onCreate onCreate()}, {@link android.app.Fragment#onStart onStart()},
+{@link android.app.Fragment#onPause onPause()}, và {@link android.app.Fragment#onStop onStop()}. Trên
+thực tế, nếu bạn đang chuyển đổi một ứng dụng Android hiện tại để sử dụng các phân đoạn, bạn có thể chỉ cần di chuyển
+mã khỏi các phương pháp gọi lại của hoạt động của bạn vào các phương pháp gọi lại tương ứng của phân đoạn
+của bạn.</p>
+
+<p>Thường thì ít nhất bạn nên triển khai các phương pháp vòng đời sau:</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onCreate onCreate()}</dt>
+  <dd>Hệ thống sẽ gọi phương pháp này khi tạo phân đoạn. Trong triển khai của mình, bạn nên
+khởi tạo các thành phần thiết yếu của phân đoạn mà bạn muốn giữ lại khi phân đoạn
+bị tạm dừng hoặc dừng hẳn, sau đó tiếp tục.</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+  <dd>Hệ thống sẽ gọi phương pháp này khi đến lúc phân đoạn vẽ giao diện người dùng của nó 
+lần đầu tiên. Để vẽ một UI cho phân đoạn của mình, bạn phải trả về một {@link android.view.View} từ phương pháp
+này, đây là gốc của bố trí phân đoạn của bạn. Bạn có thể trả về giá trị rỗng nếu phân đoạn không
+cung cấp UI.</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>Hệ thống gọi phương pháp này là dấu hiệu đầu tiên về việc người dùng đang rời khỏi
+phân đoạn (mặc dù không phải lúc nào cũng có nghĩa rằng phân đoạn đang bị hủy). Trường hợp này thường là khi bạn
+định thực hiện bất kỳ thay đổi nào vẫn cần có hiệu lực ngoài phiên của người dùng hiện thời (vì
+người dùng có thể không quay lại).</dd>
+</dl>
+
+<p>Phần lớn ứng dụng nên triển khai ít nhất ba phương pháp sau đối với mọi phân đoạn, nhưng có một vài
+phương pháp gọi lại khác mà bạn cũng nên sử dụng để xử lý các giai đoạn khác nhau trong
+vòng đời của phân đoạn. Tất cả phương pháp gọi lại vòng đời được đề cập chi tiết hơn trong phần
+về <a href="#Lifecycle">Xử lý Vòng đời của Phân đoạn</a>.</p>
+
+
+<p>Cũng có một vài lớp con mà bạn có thể muốn mở rộng thay vì lớp cơ bản {@link
+android.app.Fragment}:</p>
+
+<dl>
+  <dt>{@link android.app.DialogFragment}</dt>
+  <dd>Hiển thị một hộp thoại trôi nổi. Sử dụng lớp này để tạo một hộp thoại là một phương án hay cho việc sử dụng các phương pháp trình trợ giúp
+hộp thoại trong lớp {@link android.app.Activity}, vì bạn có thể
+kết hợp một hộp thoại phân đoạn vào ngăn xếp của các phân đoạn được quản lý bởi hoạt động,
+cho phép người dùng trả về một phân đoạn bị bỏ.</dd>
+
+  <dt>{@link android.app.ListFragment}</dt>
+  <dd>Hiển thị một danh sách các mục được quản lý bởi một trình điều hợp (chẳng hạn như một {@link
+android.widget.SimpleCursorAdapter}), tương tự như {@link android.app.ListActivity}. Nó cung cấp
+một vài phương pháp để quản lý một dạng xem danh sách, chẳng hạn như phương pháp gọi lại {@link
+android.app.ListFragment#onListItemClick(ListView,View,int,long) onListItemClick()} để
+xử lý các sự kiện nhấp.</dd>
+
+  <dt>{@link android.preference.PreferenceFragment}</dt>
+  <dd>Hiển thị một phân cấp các đối tượng {@link android.preference.Preference} dưới dạng một danh sách, tương tự như
+{@link android.preference.PreferenceActivity}. Điều này hữu ích khi tạo một hoạt động "thiết đặt"
+cho ứng dụng của bạn.</dd>
+</dl>
+
+
+<h3 id="UI">Thêm một giao diện người dùng</h3>
+
+<p>Phân đoạn thường được sử dụng như một phần giao diện người dùng của hoạt động và đóng góp bố trí của
+chính nó cho hoạt động.</p>
+
+<p>Để cung cấp một bố trí cho một phân đoạn, bạn phải triển khai phương pháp gọi lại {@link
+android.app.Fragment#onCreateView onCreateView()}, phương pháp này được hệ thống Android gọi
+khi đến lúc phân đoạn vẽ bố trí của nó. Việc bạn triển khai phương pháp này phải trả về một
+{@link android.view.View} là phần gốc cho bố trí phân đoạn của bạn.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Nếu phân đoạn của bạn là một lớp con của {@link
+android.app.ListFragment}, triển khai mặc định sẽ trả về một {@link android.widget.ListView} từ
+{@link android.app.Fragment#onCreateView onCreateView()}, vì thế bạn không cần triển khai nó.</p>
+
+<p>Để trả về một bố trí từ {@link
+android.app.Fragment#onCreateView onCreateView()}, bạn có thể bung nó từ một <a href="{@docRoot}guide/topics/resources/layout-resource.html">tài nguyên bố trí</a> được định nghĩa trong XML. Để
+giúp bạn làm vậy, {@link android.app.Fragment#onCreateView onCreateView()} cung cấp một đối tượng
+{@link android.view.LayoutInflater}.</p>
+
+<p>Ví dụ, sau đây là một lớp con của {@link android.app.Fragment} với chức năng nạp một bố trí từ tệp
+{@code example_fragment.xml}:</p>
+
+<pre>
+public static class ExampleFragment extends Fragment {
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+                             Bundle savedInstanceState) {
+        // Inflate the layout for this fragment
+        return inflater.inflate(R.layout.example_fragment, container, false);
+    }
+}
+</pre>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Tạo một bố trí</h3>
+  <p>Trong ví dụ trên, {@code R.layout.example_fragment} là một tham chiếu tới tài nguyên bố trí
+có tên {@code example_fragment.xml} được lưu trong tài nguyên ứng dụng. Để biết thông tin về cách
+tạo một bố trí trong XML, hãy xem tài liệu <a href="{@docRoot}guide/topics/ui/index.html">Giao diện Người dùng</a>
+.</p>
+</div>
+</div>
+
+<p>Tham số {@code container} được chuyển tới {@link android.app.Fragment#onCreateView
+onCreateView()} là {@link android.view.ViewGroup} mẹ (tức bố trí của hoạt động), trong đó
+bố trí phân đoạn của bạn
+sẽ được chèn vào. Tham số {@code savedInstanceState} là một {@link android.os.Bundle} có chức năng
+cung cấp dữ liệu về thực thể trước đó của phân đoạn, nếu phân đoạn đang được tiếp tục
+(việc khôi phục trạng thái được bàn kỹ hơn trong phần về <a href="#Lifecycle">Xử lý
+Vòng đời của Phân đoạn</a>).</p>
+
+<p>Phương pháp {@link android.view.LayoutInflater#inflate(int,ViewGroup,boolean) inflate()} có
+ba tham đối:</p>
+<ul>
+  <li>ID tài nguyên của bố trí mà bạn muốn bung.</li>
+  <li>{@link android.view.ViewGroup} là mẹ của bố trí được bung. Việc chuyển {@code
+container} có vai trò quan trọng để hệ thống áp dụng các tham số bố trí cho dạng xem gốc của bố trí
+được bung, được quy định bởi dạng xem mẹ là nơi mà nó diễn ra trong đó.</li>
+  <li>Một boolean cho biết bố trí được bung có nên được gắn với {@link
+android.view.ViewGroup} (tham số thứ hai) trong khi bung hay không. (Trong trường hợp này, điều này là
+sai vì hệ thống đã đang chèn bố trí được bung vào {@code
+container}&mdash;việc chuyển đúng sẽ tạo ra một nhóm dạng xem thừa trong bố trí cuối cùng.)</li>
+</ul>
+
+<p>Giờ bạn đã thấy cách tạo một phân đoạn nhằm cung cấp một bố trí. Tiếp theo, bạn cần thêm
+phân đoạn vào hoạt động của mình.</p>
+
+
+
+<h3 id="Adding">Thêm một phân đoạn vào một hoạt động</h3>
+
+<p>Thường thì một phân đoạn đóng góp một phần UI vào hoạt động chủ, nó được nhúng như một phần
+trong phân cấp dạng xem tổng thể của hoạt động. Có hai cách mà bạn có thể thêm một phân đoạn vào bố trí
+của hoạt động:</p>
+
+<ul>
+  <li><b>Khai báo phân đoạn bên trong tệp bố trí của hoạt động.</b>
+<p>Trong trường hợp này, bạn có thể
+chỉ định các tính chất bố trí cho phân đoạn như thể nó là một dạng xem. Ví dụ, sau đây là tệp bố trí
+cho một hoạt động có hai phân đoạn:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
+    &lt;fragment android:name="com.example.news.ArticleListFragment"
+            android:id="@+id/list"
+            android:layout_weight="1"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+    &lt;fragment android:name="com.example.news.ArticleReaderFragment"
+            android:id="@+id/viewer"
+            android:layout_weight="2"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+&lt;/LinearLayout&gt;
+</pre>
+  <p>Thuộc tính {@code android:name} trong {@code &lt;fragment&gt;} sẽ chỉ định lớp {@link
+android.app.Fragment} để khởi tạo trong bố trí.</p>
+
+<p>Khi hệ thống tạo bố trí hoạt động này, nó sẽ khởi tạo từng phân đoạn được chỉ định trong bố trí
+và gọi ra phương pháp {@link android.app.Fragment#onCreateView onCreateView()} cho từng phân đoạn,
+để truy xuất bố trí của từng phân đoạn. Hệ thống sẽ chèn {@link android.view.View} được trả về bởi phân đoạn
+trực tiếp thế chỗ phần tử {@code &lt;fragment&gt;}.</p>
+
+<div class="note">
+  <p><strong>Lưu ý:</strong> Mỗi phân đoạn yêu cầu một mã định danh duy nhất
+mà hệ thống có thể sử dụng để khôi phục phân đoạn nếu hoạt động bị khởi động lại (và bạn có thể sử dụng để
+nắm bắt phân đoạn sẽ thực hiện giao tác, chẳng hạn như gỡ bỏ nó). Có ba cách để cung cấp ID cho một
+phân đoạn:</p>
+  <ul>
+    <li>Cung cấp thuộc tính {@code android:id} với một ID duy nhất.</li>
+    <li>Cung cấp thuộc tính {@code android:tag} với một xâu duy nhất.</li>
+    <li>Nếu bạn không cung cấp được thuộc tính nào, hệ thống sẽ sử dụng ID của dạng xem 
+của bộ chứa.</li>
+  </ul>
+</div>
+  </li>
+
+  <li><b>Hoặc, bằng cách lập trình, thêm phân đoạn vào một {@link android.view.ViewGroup} hiện hữu.</b>
+<p>Vào bất cứ lúc nào trong khi hoạt động của bạn đang chạy, bạn có thể thêm phân đoạn vào bố trí hoạt động của mình. Bạn
+chỉ cần chỉ định một {@link
+android.view.ViewGroup} là nơi mà bạn sẽ đặt phân đoạn vào.</p>
+  <p>Để thực hiện giao tác phân đoạn trong hoạt động của mình (chẳng hạn như thêm, gỡ bỏ, hay thay thế một
+phân đoạn), bạn phải sử dụng các API từ {@link android.app.FragmentTransaction}. Bạn có thể nhận một thực thể
+của {@link android.app.FragmentTransaction} từ {@link android.app.Activity} của mình như sau:</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()}
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>Sau đó, bạn có thể thêm một phân đoạn bằng cách sử dụng phương pháp {@link
+android.app.FragmentTransaction#add(int,Fragment) add()}, chỉ định phân đoạn sẽ thêm và
+dạng xem mà bạn sẽ chèn nó vào. Ví dụ:</p>
+
+<pre>
+ExampleFragment fragment = new ExampleFragment();
+fragmentTransaction.add(R.id.fragment_container, fragment);
+fragmentTransaction.commit();
+</pre>
+
+  <p>Tham đối đầu tiên được chuyển cho {@link android.app.FragmentTransaction#add(int,Fragment) add()}
+là {@link android.view.ViewGroup}, là nơi mà phân đoạn sẽ được đặt vào, được chỉ định bởi
+ID tài nguyên, và tham đối thứ hai là phân đoạn cần thêm.</p>
+  <p>Sau khi bạn đã thực hiện các thay đổi của mình bằng
+{@link android.app.FragmentTransaction}, bạn phải
+gọi {@link android.app.FragmentTransaction#commit} để các thay đổi có hiệu lực.</p>
+  </li>
+</ul>
+
+
+<h4 id="AddingWithoutUI">Thêm một phân đoạn không có UI</h4>
+
+<p>Các ví dụ nêu trên cho biết cách thêm một phân đoạn vào hoạt động của bạn để cung cấp một UI. Tuy nhiên,
+bạn cũng có thể sử dụng một phân đoạn để cung cấp một hành vi chạy ngầm cho hoạt động mà không cần đưa
+UI bổ sung.</p>
+
+<p>Để thêm một phân đoạn không có UI, hãy thêm phân đoạn từ hoạt động đang bằng cách sử dụng {@link
+android.app.FragmentTransaction#add(Fragment,String)} (cung cấp một "tag" xâu duy nhất cho phân đoạn
+, thay vì một ID dạng xem). Làm vậy sẽ thêm phân đoạn, nhưng vì không liên kết với một dạng xem
+trong bố trí hoạt động, nó sẽ không nhận được lệnh gọi tới {@link
+android.app.Fragment#onCreateView onCreateView()}. Vì thế, bạn không cần triển khai phương pháp đó.</p>
+
+<p>Việc cung cấp tag xâu cho phân đoạn không chỉ áp dụng cho các phân đoạn không có UI&mdash;bạn cũng có thể
+cung cấp tag xâu cho phân đoạn có UI&mdash;nhưng nếu phân đoạn không có
+UI, khi đó, tag xâu là cách duy nhất để nhận biết nó. Nếu sau này bạn muốn nhận phân đoạn từ
+hoạt động, bạn cần sử dụng {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}.</p>
+
+<p>Để biết ví dụ về hoạt động sử dụng phân đoạn như một trình thực hiện nền, không có UI, hãy xem mẫu {@code
+FragmentRetainInstance.java}, mẫu này có trong các mẫu SDK (có sẵn thông qua
+Trình quản lý SDK Android) và nằm trên hệ thống của bạn như là 
+<code>&lt;sdk_root&gt;/APIDemos/app/src/main/java/com/example/android/apis/app/FragmentRetainInstance.java</code>.</p>
+
+
+
+<h2 id="Managing">Quản lý Phân đoạn</h2>
+
+<p>Để quản lý các phân đoạn trong hoạt động của mình, bạn cần sử dụng {@link android.app.FragmentManager}. Để
+có nó, hãy gọi {@link android.app.Activity#getFragmentManager()} từ hoạt động của bạn.</p>
+
+<p>Một số việc bạn có thể làm với {@link android.app.FragmentManager} bao gồm:</p>
+
+<ul>
+  <li>Nhận các phân đoạn tồn tại trong hoạt động, bằng {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} (đối với các phân đoạn cung cấp UI trong
+bố trí hoạt động) hoặc {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()} (đối với các phân đoạn có hoặc không cung cấp UI).</li> 
+  <li>Lấy phân đoạn ra khỏi ngăn xếp, bằng {@link
+android.app.FragmentManager#popBackStack()} (mô phỏng một câu lệnh <em>Quay lại</em> của người dùng).</li>
+  <li>Đăng ký một đối tượng theo dõi cho những thay đổi đối với ngăn xếp, bằng {@link
+android.app.FragmentManager#addOnBackStackChangedListener addOnBackStackChangedListener()}.</li>
+</ul>
+
+<p>Để biết thêm thông tin về những phương pháp này và phương pháp khác, hãy tham khảo tài liệu lớp {@link
+android.app.FragmentManager}.</p>
+
+<p>Như minh họa trong phần trước, bạn cũng có thể sử dụng {@link android.app.FragmentManager}
+để mở một {@link android.app.FragmentTransaction}, nó cho phép bạn thực hiện các giao tác, ví dụ như
+thêm hoặc gỡ bỏ phân đoạn.</p>
+
+
+<h2 id="Transactions">Thực hiện Giao tác Phân đoạn</h2>
+
+<p>Một tính năng tuyệt vời khi sử dụng phân đoạn trong hoạt động của bạn đó là khả năng thêm, gỡ bỏ, thay thế,
+và thực hiện các hành động khác với chúng, để hồi đáp lại tương tác của người dùng. Mỗi tập hợp thay đổi mà bạn
+thực thi cho hoạt động được gọi là một giao tác và bạn có thể thực hiện một giao tác bằng cách sử dụng các API trong {@link
+android.app.FragmentTransaction}. Bạn cũng có thể lưu từng giao tác vào một ngăn xếp được quản lý bởi
+hoạt động, cho phép người dùng điều hướng ngược lại thông qua những thay đổi phân đoạn (tương tự như điều hướng
+ngược lại thông qua hoạt động).</p>
+
+<p>Bạn có thể thu được một thực thể của {@link android.app.FragmentTransaction} từ {@link
+android.app.FragmentManager} như sau:</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()};
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>Mỗi giao tác là một tập hợp những thay đổi mà bạn muốn thực hiện tại cùng thời điểm. Bạn có thể thiết lập
+tất cả thay đổi mà mình muốn thực hiện đối với một giao tác cho trước bằng cách sử dụng các phương pháp như {@link
+android.app.FragmentTransaction#add add()}, {@link android.app.FragmentTransaction#remove remove()},
+và {@link android.app.FragmentTransaction#replace replace()}. Sau đó, để áp dụng giao tác
+cho hoạt động, bạn phải gọi {@link android.app.FragmentTransaction#commit()}.</p>
+</dl>
+
+<p>Trước khi bạn gọi {@link
+android.app.FragmentTransaction#commit()}, tuy nhiên, bạn có thể muốn gọi {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}, để thêm giao tác
+vào một ngăn xếp của các giao tác phân đoạn. Ngăn xếp này được quản lý bởi hoạt động và cho phép
+người dùng trở về trạng thái phân đoạn trước đó, bằng cách nhấp nút <em>Quay lại</em>.</p>
+
+<p>Ví dụ, sau đây là cách bạn có thể thay thế phân đoạn này bằng phân đoạn khác, và giữ nguyên
+trạng thái trước đó của ngăn xếp:</p>
+
+<pre>
+// Create new fragment and transaction
+Fragment newFragment = new ExampleFragment();
+FragmentTransaction transaction = getFragmentManager().beginTransaction();
+
+// Replace whatever is in the fragment_container view with this fragment,
+// and add the transaction to the back stack
+transaction.replace(R.id.fragment_container, newFragment);
+transaction.addToBackStack(null);
+
+// Commit the transaction
+transaction.commit();
+</pre>
+
+<p>Trong ví dụ này, {@code newFragment} thay thế mọi phân đoạn (nếu có) hiện đang ở trong
+bộ chứa bố trí được nhận biết bởi ID {@code R.id.fragment_container}. Bằng cách gọi {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}, giao tác thay thế
+được lưu vào ngăn xếp, vì thế người dùng có thể đảo ngược giao tác và mang
+giao tác trước đó trở lại bằng cách nhấn nút <em>Quay lại</em>.</p>
+
+<p>Nếu bạn thêm nhiều thay đổi vào giao tác (chẳng hạn như một {@link
+android.app.FragmentTransaction#add add()} khác hoặc {@link android.app.FragmentTransaction#remove
+remove()}) và gọi {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}, khi đó, tất cả thay đổi được áp dụng
+trước khi bạn gọi {@link android.app.FragmentTransaction#commit commit()} đều được thêm vào
+ngăn xếp như một giao tác riêng lẻ và nút <em>Quay lại</em> sẽ đảo ngược tất cả cùng nhau.</p>
+
+<p>Thứ tự mà bạn thêm thay đổi vào một {@link android.app.FragmentTransaction} không quan trọng,
+ngoại trừ:</p>
+<ul>
+  <li>Bạn phải gọi {@link android.app.FragmentTransaction#commit()} cuối cùng</li>
+  <li>Nếu bạn thêm nhiều phân đoạn vào cùng bộ chứa, khi đó thứ tự mà
+bạn thêm chúng sẽ xác định thứ tự chúng xuất hiện trong phân cấp dạng xem</li>
+</ul>
+
+<p>Nếu bạn không gọi {@link android.app.FragmentTransaction#addToBackStack(String)
+addToBackStack()} khi thực hiện một giao tác để xóa một phân đoạn, khi đó, phân đoạn đó sẽ bị
+hủy khi giao tác được thực hiện và người dùng không thể điều hướng trở lại nó. Trong khi đó, nếu bạn
+gọi {@link android.app.FragmentTransaction#addToBackStack(String) addToBackStack()} khi
+gỡ bỏ một phân đoạn, khi đó phân đoạn bị <em>dừng</em> và sẽ được khôi phục nếu người dùng điều hướng
+trở lại.</p>
+
+<p class="note"><strong>Mẹo:</strong> Với mỗi giao tác phân đoạn, bạn có thể áp dụng một hoạt ảnh
+chuyển tiếp bằng cách gọi {@link android.app.FragmentTransaction#setTransition setTransition()} trước khi
+thực thi.</p>
+
+<p>Việc gọi {@link android.app.FragmentTransaction#commit()} không thực hiện giao tác
+ngay lập tức. Thay vào đó, nó lập lịch biểu để chạy trên luồng UI của hoạt động (luồng "chính") ngay khi
+luồng có thể làm vậy. Tuy nhiên, nếu cần, bạn có thể gọi {@link
+android.app.FragmentManager#executePendingTransactions()} từ luồng UI của mình để ngay lập tức thực hiện
+các giao tác được gửi bởi {@link android.app.FragmentTransaction#commit()}. Làm vậy
+thường không cần thiết trừ khi giao tác đó là phụ thuộc cho các tác vụ ở những luồng khác.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Bạn có thể thực thi một giao tác bằng cách sử dụng {@link
+android.app.FragmentTransaction#commit commit()} chỉ trước khi hoạt động <a href="{@docRoot}guide/components/activities.html#SavingActivityState">lưu
+trạng thái</a> của nó (khi người dùng rời khỏi hoạt động). Nếu bạn định thực thi sau thời điểm đó sẽ phát sinh một lỗi
+ngoại lệ. Nguyên nhân là vì trạng thái sau khi thực thi có thể bị mất nếu hoạt động
+cần được khôi phục. Đối với những trường hợp mà bạn có thể mất thực thi, hãy sử dụng {@link
+android.app.FragmentTransaction#commitAllowingStateLoss()}.</p>
+
+
+
+
+<h2 id="CommunicatingWithActivity">Giao tiếp với Hoạt động</h2>
+
+<p>Mặc dù {@link android.app.Fragment} được triển khai như một đối tượng độc lập với
+{@link android.app.Activity} và có thể được sử dụng bên trong nhiều hoạt động, một thực thể đã cho của
+phân đoạn sẽ được gắn kết trực tiếp với hoạt động chứa nó.</p>
+
+<p>Cụ thể, phân đoạn có thể truy cập thực thể {@link android.app.Activity} bằng {@link
+android.app.Fragment#getActivity()} và dễ dàng thực hiện các tác vụ như tìm một dạng xem trong bố trí
+hoạt động:</p>
+
+<pre>
+View listView = {@link android.app.Fragment#getActivity()}.{@link android.app.Activity#findViewById findViewById}(R.id.list);
+</pre>
+
+<p>Tương tự, hoạt động của bạn có thể gọi ra các phương pháp trong phân đoạn bằng cách thu được một tham chiếu tới
+{@link android.app.Fragment} từ {@link android.app.FragmentManager}, bằng cách sử dụng {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} hoặc {@link
+android.app.FragmentManager#findFragmentByTag findFragmentByTag()}. Ví dụ:</p>
+
+<pre>
+ExampleFragment fragment = (ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment);
+</pre>
+
+
+<h3 id="EventCallbacks">Tạo gọi lại sự kiện cho hoạt động</h3>
+
+<p>Trong một số trường hợp, bạn có thể cần một phân đoạn để chia sẻ sự kiện với hoạt động. Một cách hay để làm điều này
+đó là định nghĩa một giao diện gọi lại bên trong phân đoạn và yêu cầu hoạt động chủ triển khai
+nó. Khi hoạt động nhận được một lệnh gọi lại thông qua giao diện, nó có thể chia sẻ thông tin với
+các phân đoạn khác trong bố trí nếu cần.</p>
+
+<p>Ví dụ, nếu một ứng dụng tin tức có hai phân đoạn trong một hoạt động&mdash;một để hiển thị danh sách
+bài viết (phân đoạn A) và một để hiển thị một bài viết (phân đoạn B)&mdash;khi đó, phân đoạn A phải thông báo với
+hoạt động khi nào thì một mục danh sách được chọn để nó có thể yêu cầu phân đoạn B hiển thị bài viết đó. Trong
+trường hợp này, giao diện {@code OnArticleSelectedListener} sẽ được khai báo bên trong phân đoạn A:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    ...
+    // Container Activity must implement this interface
+    public interface OnArticleSelectedListener {
+        public void onArticleSelected(Uri articleUri);
+    }
+    ...
+}
+</pre>
+
+<p>Khi đó, hoạt động lưu trữ phân đoạn sẽ triển khai giao diện {@code OnArticleSelectedListener}
+và
+khống chế {@code onArticleSelected()} để thông báo với phân đoạn B về sự kiện từ phân đoạn A. Để đảm bảo
+rằng hoạt động chủ triển khai giao diện này, phương pháp gọi lại {@link
+android.app.Fragment#onAttach onAttach()} của phân đoạn A (mà hệ thống gọi khi thêm
+phân đoạn vào hoạt động) sẽ khởi tạo một thực thể của {@code OnArticleSelectedListener} bằng cách
+đổi kiểu {@link android.app.Activity} mà được chuyển vào {@link android.app.Fragment#onAttach
+onAttach()}:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        try {
+            mListener = (OnArticleSelectedListener) activity;
+        } catch (ClassCastException e) {
+            throw new ClassCastException(activity.toString() + " must implement OnArticleSelectedListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>Nếu hoạt động chưa triển khai giao diện, khi đó phân đoạn sẽ đưa ra lỗi 
+{@link java.lang.ClassCastException}.
+Nếu thành công, thành viên {@code mListener} giữ một tham chiếu tới triển khai 
+{@code OnArticleSelectedListener}của hoạt động, sao cho phân đoạn A có thể chia sẻ sự kiện với hoạt động bằng cách gọi các phương pháp
+được định nghĩa bởi giao diện {@code OnArticleSelectedListener}. Ví dụ, nếu phân đoạn A là một
+phần mở rộng của {@link android.app.ListFragment}, mỗi lần
+người dùng nhấp vào một mục danh sách, hệ thống sẽ gọi ra {@link android.app.ListFragment#onListItemClick
+onListItemClick()} trong phân đoạn, và nó lại gọi {@code onArticleSelected()} để chia sẻ
+sự kiện với hoạt động:</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onListItemClick(ListView l, View v, int position, long id) {
+        // Append the clicked item's row ID with the content provider Uri
+        Uri noteUri = ContentUris.{@link android.content.ContentUris#withAppendedId withAppendedId}(ArticleColumns.CONTENT_URI, id);
+        // Send the event and Uri to the host activity
+        mListener.onArticleSelected(noteUri);
+    }
+    ...
+}
+</pre>
+
+<p>Tham số {@code id} được chuyển vào {@link
+android.app.ListFragment#onListItemClick onListItemClick()} là ID hàng của mục được nhấp,
+nó được sử dụng bởi hoạt động (hoặc phân đoạn kia) để tải bài viết từ {@link
+android.content.ContentProvider} của ứng dụng.</p>
+
+<p><!--To see a complete implementation of this kind of callback interface, see the <a
+href="{@docRoot}resources/samples/NotePad/index.html">NotePad sample</a>. -->Bạn có thể xem thêm thông tin về
+cách sử dụng một trình cung cấp nội dung trong tài liệu <a href="{@docRoot}guide/topics/providers/content-providers.html">Trình cung cấp Nội dung</a>.</p>
+
+
+
+<h3 id="ActionBar">Thêm mục vào Thanh Hành động</h3>
+
+<p>Phân đoạn của bạn có thể đóng góp các mục menu vào <a href="{@docRoot}guide/topics/ui/menus.html#options-menu">Menu Tùy chọn</a> của hoạt động (và tiếp đó là cả <a href="{@docRoot}guide/topics/ui/actionbar.html">Thanh Hành động</a>) bằng cách triển khai
+{@link android.app.Fragment#onCreateOptionsMenu(Menu,MenuInflater) onCreateOptionsMenu()}. Tuy nhiên, để
+phương pháp này nhận lệnh gọi, bạn phải gọi {@link
+android.app.Fragment#setHasOptionsMenu(boolean) setHasOptionsMenu()} trong khi {@link
+android.app.Fragment#onCreate(Bundle) onCreate()}, để cho biết rằng phân đoạn
+sẽ muốn thêm mục vào Menu Tùy chọn (nếu không, phân đoạn sẽ không nhận được lệnh gọi tới
+{@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()}).</p>
+
+<p>Bất kỳ mục nào mà bạn thêm vào Menu Tùy chọn sau đó từ phân đoạn đều được nối với các mục menu
+hiện tại. Phân đoạn cũng nhận các lệnh gọi lại tới {@link
+android.app.Fragment#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} khi một mục menu
+được chọn.</p>
+
+<p>Bạn cũng có thể đăng ký một dạng xem trong bố trí phân đoạn của mình để cung cấp một menu ngữ cảnh bằng cách gọi {@link
+android.app.Fragment#registerForContextMenu(View) registerForContextMenu()}. Khi người dùng mở
+menu ngữ cảnh, phân đoạn nhận một lệnh gọi tới {@link
+android.app.Fragment#onCreateContextMenu(ContextMenu,View,ContextMenu.ContextMenuInfo)
+onCreateContextMenu()}. Khi người dùng chọn một mục, phân đoạn nhận được một lệnh gọi tới {@link
+android.app.Fragment#onContextItemSelected(MenuItem) onContextItemSelected()}.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Mặc dù phân đoạn của bạn nhận được một lệnh gọi khi chọn mục
+đối với từng mục menu mà nó thêm, trước tiên hoạt động sẽ nhận phương pháp gọi lại tương ứng khi người dùng
+chọn một mục menu. Nếu việc triển khai gọi lại khi chọn mục của hoạt động không
+xử lý mục được chọn, khi đó sự kiện được chuyển sang phương pháp gọi lại của phân đoạn. Điều này đúng đối với
+Menu Tùy chọn và các menu ngữ cảnh.</p>
+
+<p>Để biết thêm thông tin về các menu, xem các hướng dẫn cho nhà phát triển <a href="{@docRoot}guide/topics/ui/menus.html">Menu</a> và <a href="{@docRoot}guide/topics/ui/actionbar.html">Thanh Hành động</a>.</p>
+
+
+
+
+<h2 id="Lifecycle">Xử lý Vòng đời của Phân đoạn</h2>
+
+<div class="figure" style="width:350px">
+<img src="{@docRoot}images/activity_fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Hình 3.</strong> Ảnh hưởng của vòng đời hoạt động tới vòng đời
+của phân đoạn.</p>
+</div>
+
+<p>Việc quản lý vòng đời của một phân đoạn rất giống với quản lý vòng đời của một hoạt động. Giống như
+hoạt động, phân đoạn có thể tồn tại ở ba trạng thái:</p>
+
+<dl>
+  <dt><i>Tiếp tục</i></dt>
+    <dd>Phân đoạn hiển thị trong hoạt động đang chạy.</dd>
+
+  <dt><i>Tạm dừng</i></dt>
+    <dd>Một hoạt động khác ở trong tiền cảnh và có tiêu điểm, nhưng hoạt động mà phân đoạn
+này nằm trong vẫn hiển thị (hoạt động tiền cảnh mờ một phần hoặc không
+che phủ toàn bộ màn hình).</dd>
+
+  <dt><i>Dừng</i></dt>
+    <dd>Phân đoạn không hiển thị. Hoặc là hoạt động chủ đã bị dừng hoặc
+phân đoạn đã được gỡ bỏ khỏi hoạt động, nhưng được thêm vào ngăn xếp. Phân đoạn dừng
+vẫn còn hoạt động (tất cả thông tin về trạng thái và thành viên đều được hệ thống giữ lại). Tuy nhiên, nó không còn
+hiển thị với người dùng nữa và sẽ bị tắt bỏ nếu hoạt động bị tắt bỏ.</dd>
+</dl>
+
+<p>Cũng như một hoạt động, bạn có thể giữ lại trạng thái của một phân đoạn bằng cách sử dụng {@link
+android.os.Bundle}, trong trường hợp tiến trình của hoạt động bị tắt bỏ và bạn cần khôi phục
+trạng thái của phân đoạn khi hoạt động được tạo lại. Bạn có thể lưu trạng thái trong phương pháp gọi lại {@link
+android.app.Fragment#onSaveInstanceState onSaveInstanceState()} của phân đoạn và khôi phục nó trong
+hoặc {@link android.app.Fragment#onCreate onCreate()}, {@link
+android.app.Fragment#onCreateView onCreateView()}, hoặc {@link
+android.app.Fragment#onActivityCreated onActivityCreated()}. Để biết thêm thông tin về việc lưu
+trạng thái, xem tài liệu <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Hoạt động</a>
+.</p>
+
+<p>Sự khác nhau quan trọng nhất trong vòng đời giữa một hoạt động và một phân đoạn đó là cách chúng
+được lưu trữ trong ngăn xếp tương ứng. Hoạt động được đặt vào một ngăn xếp gồm nhiều hoạt động
+, được quản lý bởi hệ thống theo mặc định khi bị dừng (sao cho người dùng có thể điều hướng lại
+nó bằng nút <em>Quay lại</em> như được đề cập trong <a href="{@docRoot}guide/components/tasks-and-back-stack.html">Tác vụ và Ngăn xếp</a>).
+Tuy nhiên, phân đoạn chỉ được đặt vào một ngăn xếp do hoạt động chủ quản lý khi bạn
+yêu cầu rõ ràng rằng trường hợp đó phải được lưu bằng cách gọi {@link
+android.app.FragmentTransaction#addToBackStack(String) addToBackStack()} trong một giao tác
+gỡ bỏ phân đoạn.</p>
+
+<p>Nếu không thì việc quản lý vòng đời của phân đoạn rất giống với việc quản lý vòng đời
+của hoạt động. Vì thế, những nội dung áp dụng cho <a href="{@docRoot}guide/components/activities.html#Lifecycle">quản lý vòng đời của
+hoạt động</a> cũng áp dụng cho phân đoạn. Tuy nhiên, việc mà bạn cũng cần phải hiểu đó là cách
+vòng đời của hoạt động ảnh hưởng tới vòng đời của phân đoạn.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Nếu bạn cần một đối tượng {@link android.content.Context} trong
+{@link android.app.Fragment}của mình, bạn có thể gọi {@link android.app.Fragment#getActivity()}.
+Tuy nhiên, nhớ chỉ được gọi {@link android.app.Fragment#getActivity()} khi phân đoạn được gắn với
+một hoạt động. Khi phân đoạn chưa được gắn, hoặc bị gỡ trong khi kết thúc
+vòng đời của nó, {@link android.app.Fragment#getActivity()} sẽ trả về rỗng.</p>
+
+
+<h3 id="CoordinatingWithActivity">Phối hợp với vòng đời của hoạt động</h3>
+
+<p>Vòng đời của hoạt động mà phân đoạn có ở trong đó sẽ trực tiếp ảnh hưởng tới vòng đời của phân đoạn
+, sao cho mỗi lệnh gọi lại vòng đời cho hoạt động đó sẽ dẫn tới một lệnh gọi lại tương tự cho từng
+phân đoạn. Ví dụ, khi hoạt động nhận được {@link android.app.Activity#onPause}, mỗi
+phân đoạn trong hoạt động sẽ nhận được {@link android.app.Fragment#onPause}.</p>
+
+<p>Tuy nhiên, các phân đoạn có thêm một vài lệnh gọi lại vòng đời nhằm xử lý tương tác duy nhất với
+hoạt động để thực hiện các hành động như xây dựng và hủy UI của phân đoạn. Những phương pháp gọi lại
+bổ sung này là:</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onAttach onAttach()}</dt>
+    <dd>Được gọi khi phân đoạn đã được liên kết với hoạt động {@link
+android.app.Activity} được chuyển ở đây).</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+    <dd>Được gọi khi tạo phân cấp dạng xem được liên kết với phân đoạn.</dd>
+  <dt>{@link android.app.Fragment#onActivityCreated onActivityCreated()}</dt>
+    <dd>Được gọi khi phương pháp {@link android.app.Activity#onCreate
+onCreate()} của hoạt động đã trả về.</dd>
+  <dt>{@link android.app.Fragment#onDestroyView onDestroyView()}</dt>
+    <dd>Được gọi khi phân cấp dạng xem được liên kết với phân đoạn đang được gỡ bỏ.</dd>
+  <dt>{@link android.app.Fragment#onDetach onDetach()}</dt>
+    <dd>Được gọi khi phân đoạn đang được bỏ liên kết khỏi hoạt động.</dd>
+</dl>
+
+<p>Tiến trình vòng đời của một phân đoạn, do bị ảnh hưởng bởi hoạt động chủ của nó, được minh họa
+bởi hình 3. Trong hình này, bạn có thể thấy cách thức mỗi trạng thái nối tiếp nhau của hoạt động sẽ xác định
+các phương pháp gọi lại nào mà một phân đoạn có thể nhận được. Ví dụ, khi hoạt động đã nhận được lệnh gọi lại {@link
+android.app.Activity#onCreate onCreate()} của nó, phân đoạn trong hoạt động sẽ nhận được không quá
+lệnh gọi lại {@link android.app.Fragment#onActivityCreated onActivityCreated()}.</p>
+
+<p>Sau khi hoạt động đạt trạng thái tiếp tục, bạn có thể tự do thêm và gỡ bỏ phân đoạn vào
+hoạt động. Vì thế, chỉ trong khi hoạt động ở trạng thái tiếp tục thì vòng đời của một phân đoạn
+mới có thể thay đổi độc lập.</p>
+
+<p>Tuy nhiên, khi hoạt động rời khỏi trạng thái tiếp tục, phân đoạn lại bị hoạt động đẩy qua vòng đời
+của mình.</p>
+
+
+
+
+<h2 id="Example">Ví dụ</h2>
+
+<p>Để kết hợp mọi nội dung được đề cập trong tài liệu này, sau đây là một ví dụ về hoạt động
+sử dụng hai phân đoạn để tạo một bố trí hai bảng. Hoạt động bên dưới bao gồm một phân đoạn để
+hiển thị danh sách các vở kịch của Shakespeare và một phân đoạn khác để hiển thị tóm tắt về vở kịch khi được chọn
+từ danh sách. Nó cũng minh họa cách cung cấp các cấu hình phân đoạn khác nhau,
+dựa trên cấu hình màn hình.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Mã nguồn hoàn chỉnh cho hoạt động này có sẵn trong
+<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html">{@code
+FragmentLayout.java}</a>.</p>
+
+<p>Hoạt động chính áp dụng một bố trí theo cách thông thường, trong {@link
+android.app.Activity#onCreate onCreate()}:</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java main}
+
+<p>Bố trí được áp dụng là {@code fragment_layout.xml}:</p>
+
+{@sample development/samples/ApiDemos/res/layout-land/fragment_layout.xml layout}
+
+<p>Khi sử dụng bố trí này, hệ thống sẽ khởi tạo {@code TitlesFragment} (liệt kê tên
+các vở kịch) ngay khi hoạt động nạp bố trí, trong khi {@link android.widget.FrameLayout}
+(nơi sẽ xuất hiện phân đoạn hiển thị tóm tắt về vở kịch) chiếm khoảng trống phía bên phải của
+màn hình, nhưng ban đầu vẫn trống. Như bạn sẽ thấy bên dưới, mãi tới khi người dùng chọn một mục
+từ danh sách thì một phân đoạn mới được đặt vào {@link android.widget.FrameLayout}.</p>
+
+<p>Tuy nhiên, không phải tất cả cấu hình màn hình đều đủ rộng để hiển thị cả danh sách
+các vở kịch và tóm tắt bên cạnh nhau. Vì thế, bố trí trên chỉ được sử dụng cho cấu hình
+màn hình khổ ngang bằng cách lưu nó dưới dạng {@code res/layout-land/fragment_layout.xml}.</p>
+
+<p>Vì thế, khi màn hình hướng đứng, hệ thống sẽ áp dụng bố trí sau, nó
+được lưu tại {@code res/layout/fragment_layout.xml}:</p>
+
+{@sample development/samples/ApiDemos/res/layout/fragment_layout.xml layout}
+
+<p>Bố trí này chỉ bao gồm {@code TitlesFragment}. Điều này có nghĩa là, khi thiết bị ở
+hướng đứng, chỉ danh sách tên vở kịch được hiển thị. Vì thế, khi người dùng nhấp vào một
+mục danh sách trong cấu hình này, ứng dụng sẽ bắt đầu một hoạt động mới để hiển thị tóm tắt,
+thay vì tải một phân đoạn thứ hai.</p>
+
+<p>Tiếp theo, bạn có thể thấy cách hoàn thành điều này trong các lớp phân đoạn. Đầu tiên là {@code
+TitlesFragment}, hiển thị danh sách tên các vở kịch của Shakespeare. Phân đoạn này sẽ mở rộng {@link
+android.app.ListFragment} và dựa vào nó để xử lý hầu hết công việc về dạng xem danh sách.</p>
+
+<p>Khi bạn kiểm tra đoạn mã này, hãy để ý rằng có hai hành vi có thể khi người dùng nhấp vào một
+mục danh sách: phụ thuộc vào bố trí nào trong hai bố trí đang hiện hoạt, nó có thể hoặc tạo và hiển thị một phân đoạn
+mới để hiển thị chi tiết trong cùng hoạt động (thêm phân đoạn vào {@link
+android.widget.FrameLayout}), hoặc bắt đầu một hoạt động mới (tại đó phân đoạn có thể được hiển thị).</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java titles}
+
+<p>Phân đoạn thứ hai, {@code DetailsFragment} sẽ hiển thị tóm tắt vở kịch cho mục được chọn từ
+danh sách trong {@code TitlesFragment}:</p>
+ 
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java details}
+
+<p>Nhớ lại ở lớp {@code TitlesFragment} rằng, nếu người dùng nhấp vào một mục danh sách và bố trí
+hiện tại <em>không</em> có dạng xem {@code R.id.details} (là nơi mà
+{@code DetailsFragment} thuộc về), khi đó, ứng dụng sẽ bắt đầu hoạt động {@code DetailsActivity}
+để hiển thị nội dung của mục đó.</p>
+
+<p>Sau đây là {@code DetailsActivity}, nó chỉ đơn thuần nhúng {@code DetailsFragment} để hiển thị
+tóm tắt vở kịch được chọn khi màn hình ở hướng đứng:</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java
+details_activity}
+ 
+<p>Lưu ý rằng hoạt động này tự kết thúc nếu cấu hình là khổ ngang, sao cho hoạt động
+chính có thể chiếm lấy và hiển thị {@code DetailsFragment} bên cạnh {@code TitlesFragment}.
+Điều này có thể xảy ra nếu người dùng bắt đầu {@code DetailsActivity} ở dạng hướng đứng, nhưng
+sau đó xoay thành khổ ngang (làm vậy sẽ bắt đầu lại hoạt động hiện tại).</p>
+
+
+<p>Để biết thêm mẫu sử dụng phân đoạn (và toàn bộ tệp nguồn cho ví dụ này),
+hãy xem ứng dụng mẫu API Demos có sẵn trong <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Fragment">
+ApiDemos</a> (có thể tải xuống từ <a href="{@docRoot}resources/samples/get.html">Thành phần SDK Mẫu</a>).</p>
+
+
diff --git a/docs/html-intl/intl/vi/guide/components/fundamentals.jd b/docs/html-intl/intl/vi/guide/components/fundamentals.jd
new file mode 100644
index 0000000..4b70140
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/fundamentals.jd
@@ -0,0 +1,480 @@
+page.title=Đại cương về Ứng dụng
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Trong tài liệu này</h2>
+<ol>
+<li><a href="#Components">Thành phần của Ứng dụng</a>
+  <ol>
+    <li><a href="#ActivatingComponents">Kích hoạt các thành phần</a></li>
+  </ol>
+</li>
+<li><a href="#Manifest">Tệp Bản kê khai</a>
+  <ol>
+    <li><a href="#DeclaringComponents">Khai báo các thành phần</a></li>
+    <li><a href="#DeclaringRequirements">Khai báo các yêu cầu của ứng dụng</a></li>
+  </ol>
+</li>
+<li><a href="#Resources">Tài nguyên Ứng dụng</a></li>
+</ol>
+</div>
+</div>
+
+<p>Ứng dụng Android được viết bằng ngôn ngữ lập trình Java. Bộ công cụ SDK Android sẽ biên dịch
+mã của bạn&mdash;cùng với bất kỳ tệp dữ liệu và tài nguyên nào&mdash;vào một APK: một <i>gói Android</i>,
+đó là một tệp lưu trữ có hậu tố {@code .apk}. Một tệp APK chứa tất cả nội dung
+của một ứng dụng Android và là tệp mà các thiết bị dựa trên nền tảng Android sử dụng để cài đặt ứng dụng.</p>
+
+<p>Sau khi được cài đặt lên một thiết bị, từng ứng dụng Android sẽ ở bên trong hộp cát bảo mật của chính nó: </p>
+
+<ul>
+ <li>Hệ điều hành Android là một hệ thống Linux đa người dùng trong đó mỗi ứng dụng là một
+người dùng khác nhau.</li>
+
+<li>Theo mặc định, hệ thống gán cho từng ứng dụng một ID người dùng Linux duy nhất (ID chỉ được sử dụng bởi
+hệ thống và không xác định đối với ứng dụng). Hệ thống sẽ đặt quyền cho tất cả tệp trong một ứng dụng
+sao cho chỉ ID người dùng được gán cho ứng dụng đó mới có thể truy cập chúng. </li>
+
+<li>Mỗi tiến trình có máy ảo (VM) riêng của mình, vì thế mã của một ứng dụng sẽ chạy độc lập với
+các ứng dụng khác.</li>
+
+<li>Theo mặc định, mọi ứng dụng chạy trong tiến trình Linux của chính nó. Android khởi động tiến trình khi bất kỳ
+thành phần nào của ứng dụng cần được thực thi, sau đó tắt tiến trình khi không còn
+cần nữa hoặc khi hệ thống phải khôi phục bộ nhớ cho các ứng dụng khác.</li>
+</ul>
+
+<p>Bằng cách này, hệ thống Android triển khai <em>nguyên tắc đặc quyền ít nhất</em>. Cụ thể,
+theo mặc định, mỗi ứng dụng chỉ có thể truy cập vào các thành phần mà nó cần để thực hiện công việc của mình và
+không hơn. Điều này tạo ra một môi trường rất bảo mật mà trong đó một ứng dụng không thể truy cập các bộ phận của
+hệ thống mà nó không được cấp quyền.</p>
+
+<p>Tuy nhiên, có nhiều cách để một ứng dụng chia sẻ dữ liệu với các ứng dụng khác và để một
+ứng dụng truy cập vào các dịch vụ của hệ thống:</p>
+
+<ul>
+  <li>Có thể sắp xếp để hai ứng dụng chia sẻ cùng ID người dùng Linux, trong trường hợp đó
+chúng có thể truy cập các tệp của nhau.  Để tiết kiệm tài nguyên của hệ thống, các ứng dụng có
+cùng ID người dùng cũng có thể sắp xếp để chạy trong cùng tiến trình Linux và chia sẻ cùng VM (các
+ứng dụng cũng phải được ký bằng cùng chứng chỉ).</li>
+  <li>Một ứng dụng có thể yêu cầu quyền truy cập dữ liệu của thiết bị chẳng hạn như
+danh bạ của người dùng, tin nhắn SMS, thiết bị lưu trữ gắn được (thẻ SD), máy ảnh, Bluetooth và nhiều nữa. Tất cả
+quyền ứng dụng đều phải được cấp bởi người dùng tại thời điểm cài đặt.</li>
+</ul>
+
+<p>Đó là nội dung cơ bản về cách mà một ứng dụng Android tồn tại trong hệ thống. Phần còn lại của
+tài liệu này giới thiệu với bạn về:</p>
+<ul>
+  <li>Các thành phần khuôn khổ cốt lõi định nghĩa ứng dụng của bạn.</li>
+  <li>Tệp bản kê khai mà trong đó bạn khai báo các thành phần và tính năng yêu cầu của thiết bị cho ứng dụng
+của bạn.</li>
+  <li>Các tài nguyên tách riêng với mã ứng dụng và cho phép ứng dụng của bạn
+tối ưu hóa hành vi của nó cho nhiều loại cấu hình thiết bị đa dạng.</li>
+</ul>
+
+
+
+<h2 id="Components">Thành phần của Ứng dụng</h2>
+
+<p>Thành phần của ứng dụng là những khối dựng thiết yếu của một ứng dụng Android. Mỗi
+thành phần là một điểm khác nhau mà qua đó hệ thống có thể vào ứng dụng của bạn. Không phải tất cả
+thành phần đều là các điểm nhập thực tế cho người dùng và một số phụ thuộc vào nhau, nhưng mỗi thành phần tồn tại
+như một thực thể riêng và đóng một vai trò riêng&mdash;mỗi thành phần là một khối dựng duy nhất
+giúp định nghĩa hành vi chung của ứng dụng của bạn.</p>
+
+<p>Có bốn loại thành phần ứng dụng khác nhau. Mỗi loại có một mục đích riêng
+và có một vòng đời riêng, xác định cách thành phần được tạo lập và hủy.</p>
+
+<p>Sau đây là bốn loại thành phần ứng dụng:</p>
+
+<dl>
+
+<dt><b>Hoạt động</b></dt>
+
+<dd>Một <i>hoạt động</i> biểu diễn một màn hình đơn với một giao diện người dùng. Ví dụ,
+một ứng dụng e-mail có thể có một hoạt động với chức năng hiển thị một danh sách
+e-mail mới, một hoạt động khác để soạn e-mail, và một hoạt động khác để đọc e-mail. Mặc dù
+các hoạt động cùng nhau tạo thành một trải nghiệm người dùng gắn kết trong ứng dụng e-mail, mỗi hoạt động
+lại độc lập với nhau. Như vậy, một ứng dụng khác có thể khởi động bất kỳ hoạt động nào
+trong số này (nếu ứng dụng e-mail cho phép nó). Ví dụ, một ứng dụng máy ảnh có thể khởi động
+hoạt động trong ứng dụng e-mail có chức năng soạn thư mới, để người dùng chia sẻ một bức ảnh.
+
+<p>Hoạt động được triển khai như một lớp con của {@link android.app.Activity} và bạn có thể tìm hiểu thêm
+về nó trong hướng dẫn dành cho nhà phát triển <a href="{@docRoot}guide/components/activities.html">Hoạt động</a>
+.</p>
+</dd>
+
+
+<dt><b>Dịch vụ</b></dt>
+
+<dd>Một <i>dịch vụ</i> là một thành phần chạy ngầm để thực hiện các thao tác
+chạy lâu hoặc để thực hiện công việc cho các tiến trình từ xa. Dịch vụ
+không cung cấp giao diện người dùng. Ví dụ, một dịch vụ có thể phát nhạc dưới nền trong khi
+người dùng đang ở một ứng dụng khác, hoặc nó có thể tải dữ liệu qua mạng mà không
+chặn người dùng tương tác với hoạt động. Một thành phần khác, chẳng hạn như một hoạt động, có thể khởi động
+dịch vụ và để nó chạy hoặc gắn kết với nó để tương tác với nó.
+
+<p>Dịch vụ được triển khai như một lớp con của {@link android.app.Service} và bạn có thể tìm hiểu
+thêm về nó trong hướng dẫn cho nhà phát triển <a href="{@docRoot}guide/components/services.html">Dịch vụ</a>
+.</p>
+</dd>
+
+
+<dt><b>Trình cung cấp Nội dung</b></dt>
+
+<dd>Một <i>trình cung cấp nội dung</i> sẽ quản lý một tập dữ liệu ứng dụng được chia sẻ. Bạn có thể lưu trữ dữ liệu trong
+hệ thống tệp, một cơ sở dữ liệu SQLite, trên web, hay bất kỳ vị trí lưu trữ liên tục nào khác mà
+ứng dụng của bạn có thể truy cập. Thông qua trình cung cấp nội dung, các ứng dụng khác có thể truy vấn hay thậm chí sửa đổi
+dữ liệu (nếu trình cung cấp nội dung cho phép). Ví dụ, hệ thống Android cung cấp một trình cung cấp
+nội dung có chức năng quản lý thông tin danh bạ của người dùng. Như vậy, bất kỳ ứng dụng nào có các quyền
+phù hợp đều có thể truy vấn bất kỳ phần nào của trình cung cấp nội dung (chẳng hạn như {@link
+android.provider.ContactsContract.Data}) để đọc và ghi thông tin về một người cụ thể.
+
+<p>Trình cung cấp nội dung cũng hữu ích với việc đọc và ghi dữ liệu riêng tư đối với
+ứng dụng của bạn và không được chia sẻ. Ví dụ, ứng dụng mẫu <a href="{@docRoot}resources/samples/NotePad/index.html">Note Pad</a> sử dụng một
+trình cung cấp nội dung để lưu các ghi chú.</p>
+
+<p>Trình cung cấp nội dung được triển khai như một lớp con của {@link android.content.ContentProvider}
+và phải triển khai một tập các API tiêu chuẩn cho phép các ứng dụng khác thực hiện
+giao tác. Để biết thêm thông tin, xem hướng dẫn cho nhà phát triển <a href="{@docRoot}guide/topics/providers/content-providers.html">Trình cung cấp Nội dung</a>
+.</p>
+</dd>
+
+
+<dt><b>Hàm nhận quảng bá</b></dt>
+
+<dd>Một <i>hàm nhận quảng bá</i> (broadcast receiver) là một thành phần có chức năng hồi đáp lại các thông báo
+quảng bá trên toàn hệ thống.  Nhiều quảng bá khởi nguồn từ hệ thống&mdash;ví dụ, một quảng bá thông báo
+rằng màn hình đã tắt, pin yếu, hoặc một bức ảnh được chụp.
+Các ứng dụng cũng có thể khởi tạo quảng bá&mdash;ví dụ như để các ứng dụng khác biết rằng
+một phần dữ liệu đã được tải xuống thiết bị và có sẵn để họ sử dụng. Mặc dù các hàm nhận quảng bá
+không hiển thị giao diện người dùng, chúng có thể <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">tạo một thông báo thanh trạng thái</a>
+để cảnh báo người tiếp nhận khi xảy ra một sự kiện quảng bá. Tuy nhiên trường hợp phổ biến hơn đó là hàm nhận quảng bá chỉ
+là một "cổng kết nối" tới các thành phần khác và nhằm mục đích thực hiện lượng công việc rất ít. Ví
+dụ, nó có thể khởi tạo một dịch vụ để thực hiện một số công việc dựa trên sự kiện.
+
+<p>Hàm nhận quảng bá được triển khai như một lớp con của {@link android.content.BroadcastReceiver}
+và mỗi quảng bá được chuyển giao như một đối tượng {@link android.content.Intent}. Để biết thêm thông tin,
+hãy xem lớp {@link android.content.BroadcastReceiver}.</p>
+</dd>
+
+</dl>
+
+
+
+<p>Một khía cạnh độc đáo trong thiết kế hệ thống Android đó là bất kỳ ứng dụng nào cũng có thể khởi động một thành phần của
+ứng dụng khác. Ví dụ, nếu bạn muốn người dùng chụp
+ảnh bằng máy ảnh của thiết bị, có thể có một ứng dụng khác có chức năng đó và
+ứng dụng của bạn có thể sử dụng nó thay vì phát triển một hoạt động để tự chụp ảnh. Bạn không
+cần tích hợp hay thậm chí là liên kết với mã từ ứng dụng của máy ảnh.
+Thay vào đó, bạn đơn giản có thể khởi động hoạt động đó trong ứng dụng máy ảnh có chức năng
+chụp ảnh. Khi hoàn thành, ảnh thậm chí được trả về ứng dụng của bạn để bạn có thể sử dụng nó. Đối với người dùng,
+có vẻ như máy ảnh là một bộ phận thực sự trong ứng dụng của bạn.</p>
+
+<p>Khi hệ thống khởi động một thành phần, nó sẽ khởi động tiến trình cho ứng dụng đó (nếu tiến trình không
+đang chạy) và khởi tạo các lớp cần thiết cho thành phần. Ví dụ, nếu ứng dụng
+của bạn khởi động hoạt động trong ứng dụng máy ảnh có chức năng chụp ảnh, hoạt động đó
+sẽ chạy trong tiến trình thuộc về ứng dụng máy ảnh chứ không chạy trong tiến trình của ứng dụng của bạn.
+Vì thế, không như ứng dụng trên hầu hết các hệ thống khác, ứng dụng Android không có một điểm nhập
+duy nhất (ví dụ, không có chức năng {@code main()}).</p>
+
+<p>Vì hệ thống chạy từng ứng dụng trong một tiến trình riêng với các quyền của tệp mà
+hạn chế truy cập vào các ứng dụng khác, ứng dụng của bạn không thể trực tiếp kích hoạt một thành phần từ
+một ứng dụng khác. Tuy nhiên, hệ thống Android có thể. Vì thế, để kích hoạt một thành phần trong
+một ứng dụng khác, bạn phải chuyển giao một thông báo tới hệ thống trong đó nêu rõ <em>ý định</em> của bạn để
+khởi động một thành phần cụ thể. Sau đó, hệ thống sẽ kích hoạt thành phần cho bạn.</p>
+
+
+<h3 id="ActivatingComponents">Kích hoạt Thành phần</h3>
+
+<p>Ba trong bốn loại thành phần&mdash;hoạt động, dịch vụ và
+hàm nhận quảng bá&mdash;sẽ được kích hoạt bằng một thông báo không đồng bộ gọi là <em>ý định</em>.
+Ý định sẽ gắn kết từng thành phần với nhau vào thời gian chạy (bạn có thể nghĩ chúng như là
+các hàm nhắn tin có chức năng yêu cầu một hành động từ các thành phần khác), dù thành phần đó thuộc
+về ứng dụng của bạn hay ứng dụng khác.</p>
+
+<p>Một ý định được tạo thành bằng một đối tượng {@link android.content.Intent}, nó định nghĩa một thông báo để
+kích hoạt một thành phần cụ thể hoặc một <em>loại</em> thành phần cụ thể&mdash;tương ứng, một ý định
+có thể biểu thị hoặc không biểu thị.</p>
+
+<p>Đối với các hoạt động và dịch vụ, ý định có chức năng định nghĩa một hành động sẽ thực hiện (ví dụ, "xem" hoặc
+"gửi" gì đó) và có thể chỉ định URI của dữ liệu để hành động dựa trên đó (ngoài những điều khác mà
+thành phần được khởi động có thể cần biết). Ví dụ, một ý định có thể truyền tải một yêu cầu
+để một hoạt động hiển thị một hình ảnh hay mở một trang web. Trong một số trường hợp, bạn có thể khởi động một
+hoạt động để nhận kết quả, trong trường hợp đó, hoạt động cũng trả về
+kết quả trong một {@link android.content.Intent} (ví dụ, bạn có thể phát hành một ý định để cho phép
+người dùng chọn một liên lạc cá nhân và yêu cầu trả nó về cho bạn&mdash;ý định trả về bao gồm một
+URI chỉ đến liên lạc được chọn).</p>
+
+<p>Đối với hàm nhận quảng bá, ý định chỉ định nghĩa
+thông báo đang được quảng bá (ví dụ, một quảng bá để báo rằng pin của thiết bị yếu
+sẽ chỉ bao gồm một xâu hành động chỉ báo rằng "pin yếu").</p>
+
+<p>Loại thành phần còn lại, trình cung cấp nội dung, không được kích hoạt bởi ý định. Thay vào đó, nó được
+kích hoạt khi được nhằm tới bởi một yêu cầu từ một {@link android.content.ContentResolver}. Bộ giải quyết
+nội dung xử lý tất cả giao tác trực tiếp với trình cung cấp nội dung sao cho thành phần mà
+đang thực hiện giao tác với trình cung cấp sẽ không cần mà thay vào đó gọi các phương pháp trên đối tượng {@link
+android.content.ContentResolver}. Điều này để lại một lớp tóm tắt giữa trình cung cấp
+nội dung và thành phần yêu cầu thông tin (để bảo mật).</p>
+
+<p>Có các phương pháp riêng để kích hoạt từng loại thành phần:</p>
+<ul>
+  <li>Bạn có thể khởi động một hoạt động (hoặc giao cho nó việc gì mới để làm) bằng cách
+chuyển một {@link android.content.Intent} đến {@link android.content.Context#startActivity
+startActivity()} hoặc {@link android.app.Activity#startActivityForResult startActivityForResult()}
+(khi bạn muốn hoạt động trả về một kết quả).</li>
+  <li>Bạn có thể khởi động một dịch vụ (hoặc gửi chỉ dẫn mới tới một dịch vụ đang diễn ra) bằng cách
+chuyển một {@link android.content.Intent} đến {@link android.content.Context#startService
+startService()}. Hoặc bạn có thể gắn kết với dịch vụ bằng cách chuyển một {@link android.content.Intent} đến
+{@link android.content.Context#bindService bindService()}.</li>
+  <li>Bạn có thể khởi tạo một quảng bá bằng cách chuyển {@link android.content.Intent} tới các phương pháp như
+{@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}, {@link
+android.content.Context#sendOrderedBroadcast(Intent, String) sendOrderedBroadcast()}, hoặc {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}.</li>
+  <li>Bạn có thể thực hiện một truy vấn tới một trình cung cấp nội dung bằng cách gọi {@link
+android.content.ContentProvider#query query()} trên một {@link android.content.ContentResolver}.</li>
+</ul>
+
+<p>Để biết thêm thông tin về việc sử dụng ý định, hãy xem tài liệu <a href="{@docRoot}guide/components/intents-filters.html">Ý định và Bộ lọc
+Ý định</a>. Bạn cũng có thể xem thêm thông tin về việc kích hoạt các thành phần cụ thể
+trong những tài liệu sau: <a href="{@docRoot}guide/components/activities.html">Hoạt động</a>, <a href="{@docRoot}guide/components/services.html">Dịch vụ</a>, {@link
+android.content.BroadcastReceiver} và <a href="{@docRoot}guide/topics/providers/content-providers.html">Trình cung cấp Nội dung</a>.</p>
+
+
+<h2 id="Manifest">Tệp Bản kê khai</h2>
+
+<p>Trước khi hệ thống Android có thể khởi động một thành phần ứng dụng, hệ thống phải biết rằng
+thành phần đó tồn tại bằng cách đọc tệp {@code AndroidManifest.xml} của ứng dụng (tệp
+"bản kê khai"). Ứng dụng của bạn phải khai báo tất cả thành phần của nó trong tệp này, nó phải nằm ở gốc của
+thư mục dự án của ứng dụng.</p>
+
+<p>Bản kê khai làm nhiều việc bên cạnh việc khai báo các thành phần của ứng dụng,
+chẳng hạn như:</p>
+<ul>
+  <li>Xác định bất kỳ quyền của người dùng nào mà ứng dụng yêu cầu, chẳng hạn như truy cập Internet hay
+truy cập đọc vào danh bạ của người dùng.</li>
+  <li>Khai báo <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Mức API</a>
+tối thiểu mà ứng dụng yêu cầu dựa trên những API mà ứng dụng sử dụng.</li>
+  <li>Khai báo các tính năng phần cứng và phần mềm được sử dụng hoặc yêu cầu bởi ứng dụng, chẳng hạn như máy ảnh,
+dịch vụ Bluetooth, hoặc màn hình cảm ứng đa điểm.</li>
+  <li>Các thư viện API mà ứng dụng cần được liên kết với (ngoài các API khuôn khổ
+Android), chẳng hạn như <a href="http://code.google.com/android/add-ons/google-apis/maps-overview.html">thư viện Google Maps
+</a>.</li>
+  <li>Và hơn thế nữa</li>
+</ul>
+
+
+<h3 id="DeclaringComponents">Khai báo các thành phần</h3>
+
+<p>Nhiệm vụ chính của bản kê khai là thông báo cho hệ thống về các thành phần của ứng dụng. Ví
+dụ, một tệp bản kê khai có thể khai báo một hoạt động như sau: </p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest ... &gt;
+    &lt;application android:icon="@drawable/app_icon.png" ... &gt;
+        &lt;activity android:name="com.example.project.ExampleActivity"
+                  android:label="@string/example_label" ... &gt;
+        &lt;/activity&gt;
+        ...
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>Trong phần tử <code><a
+href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+, thuộc tính {@code android:icon} sẽ trỏ đến các tài nguyên cho một biểu tượng có chức năng nhận biết
+ứng dụng.</p>
+
+<p>Trong phần tử <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>,
+thuộc tính {@code android:name} quy định tên lớp hoàn toàn đủ tiêu chuẩn của lớp con {@link
+android.app.Activity} và các thuộc tính {@code android:label} quy định một xâu
+để sử dụng làm nhãn hiển thị với người dùng đối với hoạt động.</p>
+
+<p>Bạn phải khai báo tất cả thành phần của ứng dụng như sau:</p>
+<ul>
+  <li>Các phần tử <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 
+cho hoạt động</li>
+  <li>Các phần tử <code><a
+href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> cho
+dịch vụ</li>
+  <li>Các phần tử <code><a
+href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code> 
+cho hàm nhận quảng bá</li>
+  <li>Các phần tử <code><a
+href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code> 
+cho trình cung cấp nội dung</li>
+</ul>
+
+<p>Các hoạt động, dịch vụ và trình cung cấp nội dung mà bạn bao gồm trong nguồn của mình nhưng không khai báo
+trong bản kê khai sẽ không hiển thị với hệ thống và hệ quả là không bao giờ chạy được.  Tuy nhiên,
+hàm nhận
+quảng bá có thể hoặc được khai báo trong bản kê khai hoặc được tạo linh hoạt trong mã (dạng đối tượng
+{@link android.content.BroadcastReceiver}) và được đăng ký với hệ thống bằng cách gọi
+{@link android.content.Context#registerReceiver registerReceiver()}.</p>
+
+<p>Để tìm hiểu thêm về cách cấu trúc tệp bản kê khai cho ứng dụng của mình, hãy xem tài liệu <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">Tệp AndroidManifest.xml</a>
+. </p>
+
+
+
+<h3 id="DeclaringComponentCapabilities">Khai báo các khả năng của thành phần</h3>
+
+<p>Như đã nêu bên trên trong phần <a href="#ActivatingComponents">Kích hoạt các Thành phần</a>, bạn có thể sử dụng một
+{@link android.content.Intent} để khởi động các hoạt động, dịch vụ và hàm nhận quảng bá. Bạn có thể làm vậy bằng cách
+công khai chỉ định thành phần đích (sử dụng tên lớp thành phần) trong ý định. Tuy nhiên,
+sức mạnh thực sự của ý định nằm trong khái niệm <em>ý định không biểu thị</em>. Ý định không biểu thị
+đơn thuần mô tả kiểu hành động cần thực hiện (và có thể có cả dữ liệu mà bạn muốn
+thực hiện hành động) và cho phép hệ thống tìm một thành phần trên thiết bị có khả năng thực hiện
+hành động và khởi động nó. Nếu có nhiều thành phần có thể thực hiện hành động được mô tả bởi
+ý định, khi đó người dùng chọn ý định sẽ sử dụng.</p>
+
+<p>Cách hệ thống nhận biết các thành phần có khả năng hồi đáp lại một ý định là bằng cách so sánh
+ý định nhận được với <i>các bộ lọc ý định</i> được cung cấp trong tệp bản kê khai của các ứng dụng khác trên
+thiết bị.</p>
+
+<p>Khi bạn khai báo một hoạt động trong bản kê khai ứng dụng của mình, bạn có thể tùy chọn bao gồm
+các bộ lọc ý định có chức năng khai báo các khả năng của hoạt động sao cho nó có thể hồi đáp lại ý định
+từ các ứng dụng khác. Bạn có thể khai báo một bộ lọc ý định cho thành phần của mình bằng cách
+thêm một phần tử <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> làm con của phần tử công khai của thành phần đó.</p>
+
+<p>Ví dụ, nếu bạn đã xây dựng một ứng dụng e-mail có một hoạt động soạn e-mail mới, bạn có thể
+khai báo bộ lọc ý định đó để trả lời các ý định "gửi" (để gửi một e-mail mới) như sau:</p>
+<pre>
+&lt;manifest ... >
+    ...
+    &lt;application ... &gt;
+        &lt;activity android:name="com.example.project.ComposeEmailActivity">
+            &lt;intent-filter>
+                &lt;action android:name="android.intent.action.SEND" />
+                &lt;data android:type="*/*" />
+                &lt;category android:name="android.intent.category.DEFAULT" />
+            &lt;/intent-filter>
+        &lt;/activity>
+    &lt;/application&gt;
+&lt;/manifest>
+</pre>
+
+<p>Sau đó, nếu một ứng dụng khác tạo một ý định với hành động {@link
+android.content.Intent#ACTION_SEND} và chuyển nó cho {@link android.app.Activity#startActivity
+startActivity()}, hệ thống có thể khởi động hoạt động của bạn để người dùng có thể soạn thảo và gửi một
+e-mail.</p>
+
+<p>Để tìm hiểu thêm về việc tạo các bộ lọc ý định, hãy xem tài liệu <a href="{@docRoot}guide/components/intents-filters.html">Ý định và Bộ lọc Ý định</a>.
+</p>
+
+
+
+<h3 id="DeclaringRequirements">Khai báo các yêu cầu của ứng dụng</h3>
+
+<p>Có nhiều loại thiết bị dựa trên nền tảng Android và không phải tất cả chúng đều cung cấp
+các tính năng và khả năng như nhau. Để tránh việc ứng dụng của bạn bị cài đặt trên các thiết bị
+thiếu những tính năng mà ứng dụng của bạn cần, điều quan trọng là bạn phải định nghĩa rõ ràng một hồ sơ cho
+các kiểu thiết bị mà ứng dụng của bạn hỗ trợ bằng cách khai báo các yêu cầu về thiết bị và phần mềm trong tệp
+bản kê khai của mình. Hầu hết những khai báo này đều chỉ mang tính chất thông báo và hệ thống không đọc
+chúng, nhưng các dịch vụ bên ngoài như Google Play thì có đọc để cung cấp tính năng lọc
+cho người dùng khi họ tìm kiếm ứng dụng từ thiết bị của mình.</p>
+
+<p>Ví dụ, nếu ứng dụng của bạn yêu cầu máy ảnh và sử dụng các API được giới thiệu trong Android 2.1 (<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API Mức</a> 7),
+bạn cần khai báo những điều này như yêu cầu trong tệp bản kê khai của mình như sau:</p> 
+
+<pre>
+&lt;manifest ... >
+    &lt;uses-feature android:name="android.hardware.camera.any"
+                  android:required="true" />
+    &lt;uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" />
+    ...
+&lt;/manifest>
+</pre>
+
+<p>Lúc này, những thiết bị mà <em>không</em> có máy ảnh và có một phiên bản
+Android <em>thấp</em> hơn 2.1 sẽ không thể cài đặt ứng dụng của bạn từ Google Play.</p>
+
+<p>Tuy nhiên, bạn cũng có thể khai báo rằng ứng dụng của bạn sử dụng máy ảnh, nhưng không
+<em>yêu cầu</em> nó. Trong trường hợp đó, ứng dụng của bạn phải đặt thuộc tính <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#required">{@code required}</a>
+thành {@code "false"} và kiểm tra tại thời gian chạy xem
+thiết bị có máy ảnh không và vô hiệu hóa bất kỳ tính năng máy ảnh nào cho phù hợp.</p>
+
+<p>Bạn có thể tìm hiểu thêm thông tin về cách bạn có thể quản lý tính tương thích của ứng dụng của bạn với các thiết bị khác nhau
+trong tài liệu <a href="{@docRoot}guide/practices/compatibility.html">Tính tương thích với Thiết bị</a>
+.</p>
+
+
+
+<h2 id="Resources">Tài nguyên Ứng dụng</h2>
+
+<p>Một ứng dụng Android được soạn không chỉ có mã&mdash;nó còn yêu cầu các tài nguyên
+tách riêng với mã nguồn, chẳng hạn như hình ảnh, tệp âm thanh và bất kỳ thứ gì liên quan tới trình chiếu
+trực quan của ứng dụng. Ví dụ, bạn nên định nghĩa các hoạt cảnh, menu, kiểu, màu sắc,
+và bố trí của giao diện người dùng của hoạt động bằng các tệp XML. Việc sử dụng các tài nguyên ứng dụng giúp dễ dàng
+cập nhật các đặc điểm khác nhau trong ứng dụng của bạn mà không sửa đổi mã và&mdash;bằng cách cung cấp
+các tập hợp tài nguyên thay thế&mdash;cho phép bạn tối ưu hóa ứng dụng của mình cho nhiều loại
+cấu hình thiết bị (chẳng hạn như ngôn ngữ và kích cỡ màn hình khác nhau).</p>
+
+<p>Đối với mọi tài nguyên mà bạn bao gồm trong dự án Android của mình, bộ công cụ xây dựng SDK định nghĩa một ID số nguyên
+duy nhất mà bạn có thể sử dụng để tham chiếu tài nguyên từ mã ứng dụng của mình hoặc từ
+các tài nguyên khác được định nghĩa trong XML. Ví dụ, nếu ứng dụng của bạn chứa một tệp hình ảnh có tên {@code
+logo.png} (được lưu trong thư mục {@code res/drawable/}), bộ công cụ SDK sẽ khởi tạo một ID tài nguyên
+đặt tên là {@code R.drawable.logo} mà bạn có thể sử dụng để tham chiếu hình ảnh và chèn nó vào trong giao diện người dùng
+của mình.</p>
+
+<p>Một trong những khía cạnh quan trọng nhất của việc cung cấp tài nguyên tách riêng với mã nguồn của bạn
+là khả năng cho phép bạn cung cấp các tài nguyên thay thế cho các
+cấu hình thiết bị khác nhau. Ví dụ, bằng cách định nghĩa các xâu UI trong XML, bạn có thể biên dịch xâu sang
+các ngôn ngữ khác và lưu các xâu đó vào tệp riêng. Sau đó, dựa vào một <em>hạn định</em> ngôn ngữ
+mà bạn nối với tên của thư mục tài nguyên (chẳng hạn như {@code res/values-fr/} đối với các giá trị xâu
+tiếng Pháp) và thiết đặt ngôn ngữ của người dùng, hệ thống Android sẽ áp dụng các xâu ngôn ngữ phù hợp
+cho UI của bạn.</p>
+
+<p>Android hỗ trợ nhiều <em>hạn định</em> khác nhau cho các tài nguyên thay thế của bạn. Hạn định
+là một xâu ngắn mà bạn bao gồm trong tên của các thư mục tài nguyên của mình nhằm
+định nghĩa cấu hình thiết bị cho những tài nguyên đó nên được sử dụng. Lấy một
+ví dụ khác, bạn nên thường xuyên tạo các bố trí khác nhau cho hoạt động của mình, tùy vào hướng và kích cỡ
+màn hình của thiết bị. Ví dụ, khi màn hình thiết bị ở hướng
+đứng (cao), bạn có thể muốn một bố trí có các nút thẳng đứng, nhưng khi màn hình ở hướng
+khổ ngang (rộng), các nút nên được căn ngang. Để thay đổi bố trí
+tùy vào hướng, bạn có thể định nghĩa hai bố trí khác nhau và áp dụng hạn định
+phù hợp cho tên thư mục của từng bố trí. Sau đó, hệ thống sẽ tự động áp dụng bố trí
+phù hợp tùy thuộc vào hướng hiện tại của thiết bị.</p>
+
+<p>Để biết thêm thông tin về các loại tài nguyên khác nhau mà bạn có thể bao gồm trong ứng dụng của mình và cách
+tạo các tài nguyên thay thế cho những cấu hình thiết bị khác nhau, hãy đọc <a href="{@docRoot}guide/topics/resources/providing-resources.html">Cung cấp Tài nguyên</a>.</p>
+
+
+
+<div class="next-docs">
+<div class="col-6">
+  <h2 class="norule">Tiếp tục đọc về:</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/components/intents-filters.html">Ý định và Bộ lọc Ý định</a>
+    </dt>
+    <dd>Thông tin về cách sử dụng các API {@link android.content.Intent} để
+    kích hoạt các thành phần của ứng dụng, chẳng hạn như hoạt động và dịch vụ, và cách tạo các thành phần cho ứng dụng của bạn
+    có sẵn để cho các ứng dụng khác sử dụng.</dd>
+    <dt><a href="{@docRoot}guide/components/activities.html">Hoạt động</a></dt>
+    <dd>Thông tin về cách tạo một thực thể của lớp {@link android.app.Activity},
+    có chức năng cung cấp một màn hình riêng trong ứng dụng của bạn với một giao diện người dùng.</dd>
+    <dt><a href="{@docRoot}guide/topics/resources/providing-resources.html">Cung cấp Tài nguyên</a></dt>
+    <dd>Thông tin về cách các ứng dụng Android được cấu trúc để tách riêng các tài nguyên ứng dụng khỏi
+   mã ứng dụng, bao gồm cách bạn có thể cung cấp các tài nguyên thay thế cho những
+   cấu hình thiết bị cụ thể.
+    </dd>
+  </dl>
+</div>
+<div class="col-6">
+  <h2 class="norule">Bạn cũng có thể quan tâm tới:</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/practices/compatibility.html">Tính tương thích của Thiết bị</a></dt>
+    <dd>Thông tin về Android hoạt động trên các loại thiết bị khác nhau và giới thiệu
+    về cách bạn có thể tối ưu hóa ứng dụng của mình cho từng thiết bị hoặc hạn chế tính sẵn có của ứng dụng của bạn
+    đối với các thiết bị khác nhau.</dd>
+    <dt><a href="{@docRoot}guide/topics/security/permissions.html">Quyền của Hệ thống</a></dt>
+    <dd>Thông tin về cách Android hạn chế truy cập của ứng dụng vào một số API nhất định bằng một hệ thống
+    quyền cần có sự đồng ý của người dùng cho phép ứng dụng của bạn có thể sử dụng các API đó.</dd>
+  </dl>
+</div>
+</div>
+
diff --git a/docs/html-intl/intl/vi/guide/components/index.jd b/docs/html-intl/intl/vi/guide/components/index.jd
new file mode 100644
index 0000000..966597d
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/index.jd
@@ -0,0 +1,57 @@
+page.title=Thành phần Ứng dụng
+page.landing=true
+page.landing.intro=Khuôn khổ ứng dụng của Android cho phép bạn tạo lập nhiều ứng dụng đa dạng và sáng tạo bằng cách sử dụng một tập hợp các thành phần có thể tái sử dụng. Phần này giải thích cách bạn có thể xây dựng các thành phần định nghĩa các khối dựng cho ứng dụng của mình và cách kết nối chúng với nhau bằng cách sử dụng ý định. 
+page.metaDescription=Khuôn khổ ứng dụng của Android cho phép bạn tạo lập nhiều ứng dụng đa dạng và sáng tạo bằng cách sử dụng một tập hợp các thành phần có thể tái sử dụng. Phần này giải thích cách bạn có thể xây dựng các thành phần định nghĩa các khối dựng cho ứng dụng của mình và cách kết nối chúng với nhau bằng cách sử dụng ý định. 
+page.landing.image=images/develop/app_components.png
+page.image=images/develop/app_components.png
+
+@jd:body
+
+<div class="landing-docs">
+
+  <div class="col-6">
+    <h3>Bài viết Blog</h3>
+    
+    <a href="http://android-developers.blogspot.com/2012/05/using-dialogfragments.html">
+      <h4>Sử dụng DialogFragments</h4>
+      <p>Trong bài viết này, tôi sẽ trình bày cách sử dụng DialogFragments bằng thư viện hỗ trợ v4 (cho khả năng tương thích ngược trên các thiết bị chạy phiên bản trước Honeycomb) để hiển thị một hộp thoại chỉnh sửa đơn giản và trả về một kết quả cho lệnh gọi Hoạt động bằng cách sử dụng một giao diện.</p>
+    </a>
+
+    <a href="http://android-developers.blogspot.com/2011/03/fragments-for-all.html">
+      <h4>Phân đoạn cho Tất cả</h4>
+      <p>Hôm nay, chúng tôi đã phát hành một thư viện tĩnh giới thiệu API Phân đoạn (cũng như LoaderManager mới và một vài lớp khác) tương tự sao cho các ứng dụng tương thích với phiên bản Android 1.6 hoặc mới hơn có thể sử dụng phân đoạn để tạo các giao diện người dùng tương thích với máy tính bảng. </p>
+    </a>
+    
+    <a href="http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html">
+      <h4>Tạo đa luồng cho Hiệu năng</h4>
+      <p>Một cách làm hay trong khi tạo các ứng dụng hồi đáp đó là đảm bảo luồng UI chính của bạn
+thực hiện lượng công việc tối thiểu. Bất kỳ tác vụ dài tiềm ẩn nào mà có thể làm treo ứng dụng của bạn đều cần được
+xử lý trong một luồng khác.</p>
+    </a>
+  </div>
+
+  <div class="col-6">
+    <h3>Đào tạo</h3>
+    
+    <a href="http://developer.android.com/training/basics/activity-lifecycle/index.html">
+      <h4>Quản lý Vòng đời của Hoạt động</h4>
+      <p>Lớp này giải thích các phương pháp gọi lại vòng đời quan trọng mà mỗi thực thể
+      Hoạt động nhận được và cách bạn có thể sử dụng chúng sao cho hoạt động của bạn thực hiện như người dùng kỳ vọng và không tiêu tốn tài nguyên
+      của hệ thống khi hoạt động của bạn không cần chúng.</p>
+    </a>
+
+    <a href="http://developer.android.com/training/basics/fragments/index.html">
+      <h4>Xây dựng một UI Động bằng các Phân đoạn</h4>
+      <p>Lớp này trình bày với bạn cách tạo một trải nghiệm người dùng động bằng các phân đoạn và tối ưu hóa
+trải nghiệm người dùng của ứng dụng của bạn đối với các thiết bị có kích cỡ màn hình khác nhau trong khi vẫn tiếp tục hỗ trợ
+các thiết bị chạy phiên bản cũ như Android 1.6.</p>
+    </a>
+
+    <a href="http://developer.android.com/training/sharing/index.html">
+      <h4>Chia sẻ Nội dung</h4>
+      <p>Lớp này trình bày một số cách thông dụng mà bạn có thể gửi và nhận nội dung giữa
+      các ứng dụng bằng cách sử dụng các API Ý định và đối tượng ActionProvider.</p>
+    </a>
+  </div>
+
+</div>
diff --git a/docs/html-intl/intl/vi/guide/components/intents-filters.jd b/docs/html-intl/intl/vi/guide/components/intents-filters.jd
new file mode 100644
index 0000000..cdc623f8e
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/intents-filters.jd
@@ -0,0 +1,899 @@
+page.title=Ý định và Bộ lọc Ý định
+page.tags="IntentFilter"
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Trong tài liệu này</h2>
+<ol>
+  <li><a href="#Types">Các Loại Ý định</a></li>
+  <li><a href="#Building">Xây dựng một Ý định</a>
+    <ol>
+      <li><a href="#ExampleExplicit">Ví dụ về ý định biểu thị</a></li>
+      <li><a href="#ExampleSend">Ví dụ về ý định không biểu thị</a></li>
+      <li><a href="#ForceChooser">Bắt buộc một bộ chọn ứng dụng</a></li>
+    </ol>
+  </li>
+  <li><a href="#Receiving">Nhận một Ý định Không biểu thị</a>
+    <ol>
+      <li><a href="#ExampleFilters">Ví dụ về bộ lọc</a></li>
+    </ol>
+  </li>
+  <li><a href="#PendingIntent">Sử dụng một Ý định Chờ</a></li>
+  <li><a href="#Resolution">Giải quyết Ý định</a>
+    <ol>
+      <li><a href="#ActionTest">Kiểm tra hành động</a></li>
+      <li><a href="#CategoryTest">Kiểm tra thể loại</a></li>
+      <li><a href="#DataTest">Kiểm tra dữ liệu</a></li>
+      <li><a href="#imatch">So khớp ý định</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Xem thêm</h2>
+<ol>
+<li><a href="{@docRoot}training/basics/intents/index.html">Tương tác với các Ứng dụng khác</a></li>
+<li><a href="{@docRoot}training/sharing/index.html">Chia sẻ Nội dung</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+
+<p>{@link android.content.Intent} là một đối tượng nhắn tin mà bạn có thể sử dụng để yêu cầu một hành động
+từ một <a href="{@docRoot}guide/components/fundamentals.html#Components">thành phần ứng dụng</a> khác.
+Mặc dù các ý định sẽ tạo điều kiện cho giao tiếp giữa các thành phần bằng một vài cách, có ba
+trường hợp sử dụng cơ bản:</p>
+
+<ul>
+<li><b>Để bắt đầu một hoạt động:</b>
+<p>{@link android.app.Activity} biểu diễn một màn hình đơn trong một ứng dụng. Bạn có thể bắt đầu một thực thể
+mới của một {@link android.app.Activity} bằng cách chuyển {@link android.content.Intent}
+sang {@link android.content.Context#startActivity startActivity()}. {@link android.content.Intent}
+mô tả hoạt động cần bắt đầu và mang theo mọi dữ liệu cần thiết.</p>
+
+<p>Nếu bạn muốn nhận một kết quả từ hoạt động khi nó hoàn thành,
+hãy gọi {@link android.app.Activity#startActivityForResult
+startActivityForResult()}. Hoạt động của bạn nhận được kết quả
+dưới dạng một đối tượng {@link android.content.Intent} riêng biệt trong lệnh gọi lại {@link
+android.app.Activity#onActivityResult onActivityResult()} của hoạt động của bạn.
+Để biết thêm thông tin, hãy xem hướng dẫn <a href="{@docRoot}guide/components/activities.html">Hoạt động</a>.</p></li>
+
+<li><b>Để bắt đầu một dịch vụ:</b>
+<p>{@link android.app.Service} là một thành phần có chức năng thực hiện các thao tác dưới nền
+mà không cần giao diện người dùng. Bạn có thể bắt đầu một dịch vụ để thực hiện một thao tác một lần
+(chẳng hạn như tải xuống một tệp) bằng cách chuyển {@link android.content.Intent}
+tới {@link android.content.Context#startService startService()}. {@link android.content.Intent}
+mô tả dịch vụ cần bắt đầu và mang theo mọi dữ liệu cần thiết.</p>
+
+<p>Nếu dịch vụ được thiết kế với một giao diện máy khách-máy chủ, bạn có thể gắn kết với dịch vụ
+từ một thành phần khác bằng cách chuyển {@link android.content.Intent} sang {@link
+android.content.Context#bindService bindService()}</code>. Để biết thêm thông tin, hãy xem hướng dẫn <a href="{@docRoot}guide/components/services.html">Dịch vụ</a>.</p></li>
+
+<li><b>Để chuyển một quảng bá:</b>
+<p>Quảng bá là một tin nhắn mà bất kỳ ứng dụng nào cũng có thể nhận được. Hệ thống sẽ chuyển các quảng bá
+khác nhau tới các sự kiện hệ thống, chẳng hạn như khi hệ thống khởi động hoặc thiết bị bắt đầu sạc.
+Bạn có thể chuyển một quảng bá tới các ứng dụng khác bằng cách chuyển một {@link android.content.Intent}
+tới {@link android.content.Context#sendBroadcast(Intent) sendBroadcast()},
+{@link android.content.Context#sendOrderedBroadcast(Intent, String)
+sendOrderedBroadcast()}, hoặc {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}.</p>
+</li>
+</ul>
+
+
+
+
+<h2 id="Types">Các Loại Ý định</h2>
+
+<p>Có hai loại ý định:</p>
+
+<ul>
+<li><b>Ý định biểu thị</b> quy định thành phần cần bắt đầu theo tên (tên lớp hoàn toàn đạt tiêu chuẩn
+). Thường bạn sẽ sử dụng một ý định biểu thị để bắt đầu một thành phần trong
+ứng dụng của chính mình, vì bạn biết tên lớp của hoạt động hay dịch vụ mà mình muốn bắt đầu. Ví dụ
+, bắt đầu một hoạt động mới để hồi đáp một hành động của người dùng hay bắt đầu một dịch vụ để tải xuống
+tệp dưới nền.</li>
+
+<li><b>Ý định không biểu thị</b> không chỉ định một thành phần cụ thể mà thay vào đó, sẽ khai báo một hành động thông thường
+cần thực hiện, cho phép một thành phần từ một ứng dụng khác xử lý nó. Ví dụ, nếu bạn muốn
+hiển thị cho người dùng một vị trí trên bản đồ, bạn có thể sử dụng một ý định không biểu thị để yêu cầu một ứng dụng
+có khả năng khác hiển thị một vị trí được chỉ định trên bản đồ.</li>
+</ul>
+
+<p>Khi bạn tạo một ý định biểu thị để bắt đầu một hoạt động hoặc dịch vụ, hệ thống ngay lập tức
+sẽ bắt đầu thành phần ứng dụng được quy định trong đối tượng {@link android.content.Intent}.</p>
+
+<div class="figure" style="width:446px">
+<img src="{@docRoot}images/components/intent-filters@2x.png" width="446" alt="" />
+<p class="img-caption"><strong>Hình 1.</strong> Minh họa về cách một ý định không biểu thị được
+chuyển thông qua hệ thống để bắt đầu một hoạt động khác: <b>[1]</b> <em>Hoạt động A</em> tạo một
+{@link android.content.Intent} bằng một mô tả hành động và chuyển nó cho {@link
+android.content.Context#startActivity startActivity()}. <b>[2]</b> Hệ thống Android tìm kiếm tất cả
+ứng dụng xem có một bộ lọc ý định khớp với ý định đó không. Khi tìm thấy kết quả khớp, <b>[3]</b> hệ thống
+sẽ bắt đầu hoạt động so khớp đó (<em>Hoạt động B</em>) bằng cách gọi ra phương pháp {@link
+android.app.Activity#onCreate onCreate()} và chuyển nó cho {@link android.content.Intent}.
+</p>
+</div>
+
+<p>Khi bạn tạo một ý định không biểu thị, hệ thống Android sẽ tìm kiếm thành phần phù hợp để bắt đầu
+bằng cách so sánh nội dung của ý định với các <em>bộ lọc ý định</em> được khai báo trong <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">tệp bản kê khai</a> của các ứng dụng khác trên
+thiết bị. Nếu ý định khớp với một bộ lọc ý định, hệ thống sẽ bắt đầu thành phần đó và chuyển cho nó
+đối tượng {@link android.content.Intent}. Nếu có nhiều bộ lọc ý định tương thích, hệ thống
+sẽ hiển thị một hộp thoại để người dùng có thể chọn ứng dụng sẽ sử dụng.</p>
+
+<p>Bộ lọc ý định là một biểu thức trong tệp bản kê khai của một ứng dụng, có chức năng
+chỉ định loại ý định mà thành phần
+muốn nhận. Ví dụ, bằng cách khai báo một bộ lọc ý định cho một hoạt động,
+bạn giúp các ứng dụng khác có thể trực tiếp bắt đầu hoạt động của mình với một loại ý định nhất định.
+Tương tự, nếu bạn <em>không</em> khai báo bất kỳ bộ lọc ý định nào cho một hoạt động, khi đó nó chỉ có thể
+được bắt đầu bằng một ý định biểu thị.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Để đảm bảo ứng dụng của bạn được bảo mật, luôn sử dụng một ý định
+biểu thị khi bắt đầu một {@link android.app.Service} và không được
+khai báo bộ lọc ý định cho các dịch vụ của bạn. Việc sử dụng một ý định không biểu thị để bắt đầu một dịch vụ sẽ là một nguy cơ
+về bảo mật vì bạn không thể chắc chắn dịch vụ nào sẽ hồi đáp ý định đó,
+và người dùng không thể thấy dịch vụ nào bắt đầu. Bắt đầu với Android 5.0 (API mức 21), hệ thống
+sẽ đưa ra lỗi ngoại lệ nếu bạn gọi {@link android.content.Context#bindService bindService()}
+bằng một ý định không biểu thị.</p>
+
+
+
+
+
+<h2 id="Building">Xây dựng một Ý định</h2>
+
+<p>Đối tượng {@link android.content.Intent} mang thông tin mà hệ thống Android sử dụng
+để xác định thành phần nào sẽ bắt đầu (chẳng hạn như tên thành phần chính xác hoặc thể loại
+thành phần mà sẽ nhận ý định), cộng với thông tin mà thành phần nhận sử dụng để
+thực hiện hành động cho phù hợp (chẳng hạn như hành động sẽ thực hiện và dữ liệu để dựa vào đó mà thực hiện).</p>
+
+
+<p>Thông tin chính chứa trong một {@link android.content.Intent} như sau:</p>
+
+<dl>
+
+<dt><b>Tên thành phần</b></dt>
+<dd>Tên của thành phần sẽ bắt đầu.
+
+<p>Nội dung này không bắt buộc, nhưng đó là một thông tin trọng yếu để khiến một ý định trở nên
+<b>biểu thị</b>, có nghĩa là ý định nên chỉ được chuyển tới thành phần ứng dụng
+được xác định bởi tên thành phần đó. Nếu thiếu một tên thành phần, ý định trở thành <b>không biểu thị</b> và hệ thống
+sẽ quyết định thành phần nào nhận ý định đó dựa trên các thông tin còn lại của ý định
+(chẳng hạn như hành động, dữ liệu và thể loại&mdash;được mô tả bên dưới). Vì vậy, nếu bạn bắt đầu một thành phần
+cụ thể trong ứng dụng của mình, bạn nên chỉ định tên thành phần.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Khi bắt đầu một {@link android.app.Service}, bạn nên
+<strong>luôn chỉ định tên thành phần</strong>. Nếu không, bạn không thể chắc chắn dịch vụ nào
+sẽ hồi đáp ý định và người dùng không thể thấy dịch vụ nào bắt đầu.</p>
+
+<p>Trường này của {@link android.content.Intent} là một đối tượng
+{@link android.content.ComponentName} mà bạn có thể chỉ định bằng cách sử dụng một tên lớp
+hoàn toàn đủ tiêu chuẩn của thành phần đích, bao gồm tên gói của ứng dụng. Ví dụ,
+{@code com.example.ExampleActivity}. Bạn có thể đặt tên thành phần bằng {@link
+android.content.Intent#setComponent setComponent()}, {@link android.content.Intent#setClass
+setClass()}, {@link android.content.Intent#setClassName(String, String) setClassName()}, hoặc bằng
+ hàm dựng {@link android.content.Intent}.</p>
+
+</dd>
+
+<p><dt><b>Hành động</b></dt>
+<dd>Một xâu quy định hành động thông thường sẽ thực hiện (chẳng hạn như <em>xem</em> hoặc <em>chọn</em>).
+
+<p>Trong trường hợp một ý định quảng bá, đây là hành động đã diễn ra và đang được báo cáo.
+Hành động này quyết định phần lớn cách thức xác định cấu trúc phần còn lại của ý định&mdash;đặc biệt là
+những gì chứa trong dữ liệu và phụ thêm.
+
+<p>Bạn có thể quy định các hành động của chính mình để các ý định bên trong ứng dụng của bạn sử dụng (hoặc để
+các ứng dụng khác sử dụng nhằm gọi ra các thành phần trong ứng dụng của mình), nhưng bạn nên thường xuyên sử dụng hằng số hành động
+được định nghĩa bởi lớp {@link android.content.Intent} hoặc các lớp khuôn khổ khác. Sau đây là một số
+hành động thường dùng để bắt đầu một hoạt động:</p>
+
+<dl>
+<dt>{@link android.content.Intent#ACTION_VIEW}</dt>
+   <dd>Sử dụng hành động này trong một ý định với {@link
+   android.content.Context#startActivity startActivity()} khi bạn có một số thông tin mà
+   một hoạt động có thể hiển thị cho người dùng, chẳng hạn như ảnh để xem trong một ứng dụng bộ sưu tập ảnh, hay địa chỉ để
+   xem trong ứng dụng bản đồ.</dd>
+
+<dt>{@link android.content.Intent#ACTION_SEND}</dt>
+   <dd>Còn được biết đến như là ý định "chia sẻ", bạn nên sử dụng kiểu này trong một ý định với {@link
+   android.content.Context#startActivity startActivity()} khi bạn có một số dữ liệu mà người dùng có thể
+   chia sẻ thông qua một ứng dụng khác, chẳng hạn như một ứng dụng e-mail hay ứng dụng chia sẻ mạng xã hội.</dd>
+</dl>
+
+<p>Xem tham chiếu lớp {@link android.content.Intent} để biết thêm
+hằng số có chức năng định nghĩa các hành động thông thường.  Những hành động khác được định nghĩa
+ở phần khác trong khuôn khổ Android, chẳng hạn như trong {@link android.provider.Settings} đối với những hành động
+có chức năng mở màn hình cụ thể trong ứng dụng Cài đặt của hệ thống.</p>
+
+<p>Bạn có thể quy định hành động cho một ý định với {@link android.content.Intent#setAction
+setAction()} hoặc với một hàm dựng {@link android.content.Intent}.</p>
+
+<p>Nếu bạn định nghĩa các hành động của chính mình, nhớ nêu tên gói ứng dụng của bạn
+làm tiền tố. Ví dụ:</p>
+<pre>static final String ACTION_TIMETRAVEL = "com.example.action.TIMETRAVEL";</pre>
+</dd>
+
+<dt><b>Dữ liệu</b></dt>
+<dd>URI (một đối tượng {@link android.net.Uri}) tham chiếu dữ liệu sẽ được hành động dựa trên nó và/hoặc kiểu MIME
+của dữ liệu đó. Kiểu dữ liệu được cung cấp thường sẽ bị chi phối bởi hành động của ý định. Ví
+dụ, nếu hành động là {@link android.content.Intent#ACTION_EDIT}, dữ liệu cần chứa
+URI của tài liệu cần chỉnh sửa.
+
+<p>Khi tạo một ý định,
+một điều thường quan trọng đó là quy định kiểu dữ liệu (kiểu MIME của nó) ngoài URI của nó.
+Ví dụ, một hoạt động có thể hiển thị hình ảnh có thể sẽ không
+phát được tệp âm thanh, ngay cả khi định dạng URI có thể tương tự.
+Vì thế, việc quy định kiểu MIME cho dữ liệu của bạn sẽ giúp hệ thống
+Android tìm được thành phần tốt nhất để nhận ý định của bạn.
+Tuy nhiên, kiểu MIME đôi khi có thể được suy ra từ URI&mdash;cụ thể, khi dữ liệu là một URI
+{@code content:}, có chức năng cho biết dữ liệu nằm trên thiết bị và được kiểm soát bởi một
+{@link android.content.ContentProvider}, điều này khiến kiểu MIME của dữ liệu hiển thị đối với hệ thống.</p>
+
+<p>Để chỉ đặt URI dữ liệu, hãy gọi {@link android.content.Intent#setData setData()}.
+Để chỉ đặt kiểu MIME, hãy gọi {@link android.content.Intent#setType setType()}. Nếu cần, bạn
+bạn có thể công khai đặt cả hai với {@link
+android.content.Intent#setDataAndType setDataAndType()}.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Nếu bạn muốn đặt cả URI và kiểu MIME,
+<strong>không</strong> gọi {@link android.content.Intent#setData setData()} và
+{@link android.content.Intent#setType setType()} vì chúng sẽ vô hiệu hóa giá trị của nhau.
+Luôn sử dụng {@link android.content.Intent#setDataAndType setDataAndType()} để đặt cả
+URI và kiểu MIME.</p>
+</dd>
+
+<p><dt><b>Thể loại</b></dt>
+<dd>Một xâu chứa thông tin bổ sung về kiểu thành phần
+sẽ xử lý ý định.  Trong một ý định có thể chứa
+nhiều mô tả thể loại, nhưng hầu hết các ý định lại không yêu cầu thể loại.
+Sau đây là một số thể loại thường gặp:
+
+<dl>
+<dt>{@link android.content.Intent#CATEGORY_BROWSABLE}</dt>
+  <dd>Hoạt động mục tiêu cho phép chính nó được bắt đầu bởi một trình duyệt web để hiển thị dữ liệu
+       được một liên kết tham chiếu&mdash;chẳng hạn như một hình ảnh hay thư e-mail.
+  </dd>
+<dt>{@link android.content.Intent#CATEGORY_LAUNCHER}</dt>
+  <dd>Hoạt động là hoạt động ban đầu của một tác vụ và được liệt kê trong
+       trình khởi chạy ứng dụng của hệ thống.
+  </dd>
+</dl>
+
+<p>Xem mô tả lớp {@link android.content.Intent} để biết danh sách đầy đủ về các
+thể loại.</p>
+
+<p>Bạn có thể quy định một thể loại bằng {@link android.content.Intent#addCategory addCategory()}.</p>
+</dd>
+</dl>
+
+
+<p>Những tính chất này được liệt kê ở trên (tên thành phần, hành động, dữ liệu và thể loại) biểu hiện các
+đặc điểm xác định của một ý định. Bằng cách đọc những tính chất này, hệ thống Android
+có thể quyết định nó sẽ bắt đầu thành phần ứng dụng nào.</p>
+
+<p>Tuy nhiên, một ý định có thể mang thông tin bổ sung không ảnh hưởng tới
+cách nó được giải quyết đối với một thành phần ứng dụng. Một ý định cũng có thể cung cấp:</p>
+
+<dl>
+<dt><b>Phụ thêm</b></dt>
+<dd>Các cặp khóa-giá trị mang thông tin bổ sung cần thiết để hoàn thành hành động được yêu cầu.
+Giống như việc một số hành động sử dụng các kiểu URI dữ liệu riêng, một số hành động cũng sử dụng các phần phụ thêm riêng.
+
+<p>Bạn có thể thêm dữ liệu phụ thêm bằng các phương pháp {@link android.content.Intent#putExtra putExtra()} khác nhau,
+mỗi phương pháp chấp nhận hai tham số: tên khóa và giá trị.
+Bạn cũng có thể tạo một đối tượng {@link android.os.Bundle} bằng tất cả dữ liệu phụ thêm, sau đó chèn
+ {@link android.os.Bundle} vào {@link android.content.Intent} bằng {@link
+android.content.Intent#putExtras putExtras()}.</p>
+
+<p>Ví dụ, khi tạo một ý định để gửi một e-mail bằng
+{@link android.content.Intent#ACTION_SEND}, bạn có thể chỉ định người nhận "tới" bằng khóa
+{@link android.content.Intent#EXTRA_EMAIL}, và chỉ định "chủ đề" bằng khóa
+{@link android.content.Intent#EXTRA_SUBJECT}.</p>
+
+<p>Lớp {@link android.content.Intent} quy định nhiều hằng số {@code EXTRA_*} cho
+các kiểu dữ liệu chuẩn hóa. Nếu bạn cần khai báo các khóa phụ thêm của riêng mình (cho những ý định
+mà ứng dụng của bạn nhận), hãy chắc chắn nêu tên gói ứng dụng của bạn
+làm tiền tố. Ví dụ:</p>
+<pre>static final String EXTRA_GIGAWATTS = "com.example.EXTRA_GIGAWATTS";</pre>
+</dd>
+
+<dt><b>Cờ</b></dt>
+<dd>Cờ được định nghĩa trong lớp {@link android.content.Intent} có chức năng như siêu dữ liệu cho
+ý định. Cờ có thể chỉ lệnh hệ thống Android về cách khởi chạy một hoạt động (ví dụ, hoạt động sẽ thuộc về
+<a href="{@docRoot}guide/components/tasks-and-back-stack.html">tác vụ</a> nào
+) và cách xử lý sau khi nó được khởi chạy (ví dụ, nó có thuộc về danh sách hoạt động
+gần đây hay không).
+
+<p>Để biết thêm thông tin, hãy xem phương pháp {@link android.content.Intent#setFlags setFlags()}.</p>
+</dd>
+
+</dl>
+
+
+
+
+<h3 id="ExampleExplicit">Ví dụ về ý định biểu thị</h3>
+
+<p>Ý định biểu thị là ý định mà bạn sử dụng để khởi chạy một thành phần ứng dụng cụ thể
+chẳng hạn như một hoạt động hay dịch vụ cụ thể trong ứng dụng của bạn. Để tạo một ý định biểu thị, hãy định nghĩa
+tên thành phần cho đối tượng {@link android.content.Intent} &mdash;tất cả các
+tính chất ý định khác đều không bắt buộc.</p>
+
+<p>Ví dụ, nếu bạn đã xây dựng một dịch vụ trong ứng dụng của mình, đặt tên là {@code DownloadService},
+được thiết kế để tải xuống một tệp từ web, bạn có thể bắt đầu nó bằng mã sau:</p>
+
+<pre>
+// Executed in an Activity, so 'this' is the {@link android.content.Context}
+// The fileUrl is a string URL, such as "http://www.example.com/image.png"
+Intent downloadIntent = new Intent(this, DownloadService.class);
+downloadIntent.setData({@link android.net.Uri#parse Uri.parse}(fileUrl));
+startService(downloadIntent);
+</pre>
+
+<p>Hàm dựng {@link android.content.Intent#Intent(Context,Class)}
+cung cấp cho ứng dụng {@link android.content.Context} và thành phần
+một đối tượng {@link java.lang.Class}. Như vậy,
+ý định này rõ ràng sẽ bắt đầu lớp {@code DownloadService} trong ứng dụng.</p>
+
+<p>Để biết thêm thông tin về việc xây dựng và bắt đầu một dịch vụ, hãy xem hướng dẫn
+<a href="{@docRoot}guide/components/services.html">Dịch vụ</a>.</p>
+
+
+
+
+<h3 id="ExampleSend">Ví dụ về ý định không biểu thị</h3>
+
+<p>Ý định không biểu thị quy định một hành động mà có thể gọi ra bất kỳ ứng dụng nào trên thiết bị mà có
+khả năng thực hiện hành động đó. Việc sử dụng ý định không biểu thị có ích khi ứng dụng của bạn không thể thực hiện
+hành động, nhưng các ứng dụng khác có thể và bạn muốn người dùng chọn ứng dụng sẽ sử dụng.</p>
+
+<p>Ví dụ, nếu bạn có nội dung mà mình muốn người dùng chia sẻ với người khác, hãy tạo một ý định
+với hành động {@link android.content.Intent#ACTION_SEND} và
+bổ sung phần phụ thêm quy định nội dung sẽ chia sẻ. Khi bạn gọi
+{@link android.content.Context#startActivity startActivity()} bằng ý định đó, người dùng có thể
+chọn một ứng dụng để chia sẻ nội dung thông qua đó.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Có thể là người dùng sẽ không có <em>bất kỳ</em>
+ứng dụng nào xử lý được ý định không biểu thị mà bạn gửi tới {@link android.content.Context#startActivity
+startActivity()}. Nếu chuyện đó xảy ra, phương pháp gọi sẽ thất bại và ứng dụng của bạn sẽ gặp lỗi. Để xác minh rằng
+một hoạt động sẽ nhận được ý định, hãy gọi {@link android.content.Intent#resolveActivity
+resolveActivity()} trên đối tượng {@link android.content.Intent} của bạn. Nếu kết quả không rỗng
+thì có ít nhất một ứng dụng có thể xử lý ý định và sẽ an toàn nếu gọi
+{@link android.content.Context#startActivity startActivity()}. Nếu kết quả rỗng,
+bạn không nên sử dụng ý định và, nếu có thể, bạn nên vô hiệu hóa tính năng phát hành
+ý định.</p>
+
+
+<pre>
+// Create the text message with a string
+Intent sendIntent = new Intent();
+sendIntent.setAction(Intent.ACTION_SEND);
+sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
+sendIntent.setType("text/plain");
+
+// Verify that the intent will resolve to an activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(sendIntent);
+}
+</pre>
+
+<p class="note"><strong>Lưu ý:</strong> Trong trường hợp này, URI không được sử dụng, nhưng kiểu dữ liệu của ý định
+sẽ được khai báo để quy định nội dung được thực hiện bởi phần phụ thêm.</p>
+
+
+<p>Khi {@link android.content.Context#startActivity startActivity()} được gọi, hệ thống
+sẽ kiểm tra tất cả ứng dụng đã cài đặt để xác định những ứng dụng có thể xử lý kiểu ý định này (một
+ý định với hành động {@link android.content.Intent#ACTION_SEND} và có mang dữ liệu
+"văn bản/thuần"). Nếu chỉ có một ứng dụng có thể xử lý nó, ứng dụng đó sẽ mở ngay lập tức và được cấp cho
+ý định. Nếu có nhiều hoạt động chấp nhận ý định, hệ thống
+sẽ hiển thị một hộp thoại để người dùng có thể chọn ứng dụng sẽ sử dụng.</p>
+
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/training/basics/intent-chooser.png" alt="">
+  <p class="img-caption"><strong>Hình 2.</strong> Hộp thoại bộ chọn.</p>
+</div>
+
+<h3 id="ForceChooser">Bắt buộc một bộ chọn ứng dụng</h3>
+
+<p>Khi có nhiều hơn một ứng dụng hồi đáp ý định không biểu thị của bạn,
+người dùng có thể chọn ứng dụng nào sẽ sử dụng và đặt ứng dụng đó làm lựa chọn mặc định cho
+hành động. Điều này tốt khi thực hiện một hành động mà người dùng
+có thể muốn sử dụng ứng dụng tương tự từ lúc này trở đi, chẳng hạn như khi mở một trang web (người dùng
+thường thích ưu tiên sử dụng chỉ một trình duyệt web).</p>
+
+<p>Tuy nhiên, nếu nhiều ứng dụng có thể hồi đáp ý định và người dùng có thể muốn sử dụng mỗi
+lần một ứng dụng khác, bạn nên công khai hiển thị một hộp thoại bộ chọn. Hộp thoại bộ chọn yêu cầu
+người dùng phải chọn ứng dụng sẽ sử dụng mỗi lần cho hành động (người dùng không thể chọn một ứng dụng mặc định cho
+hành động). Ví dụ, khi ứng dụng của bạn thực hiện "chia sẻ" với hành động {@link
+android.content.Intent#ACTION_SEND}, người dùng có thể muốn chia sẻ bằng cách sử dụng một ứng dụng khác tùy vào
+tình hình thực tế của họ, vì thế bạn nên luôn sử dụng hộp thoại bộ chọn như minh họa trong hình 2.</p>
+
+
+
+
+<p>Để hiển thị bộ chọn, hãy tạo một {@link android.content.Intent} bằng cách sử dụng {@link
+android.content.Intent#createChooser createChooser()} và chuyển nó sang {@link
+android.app.Activity#startActivity startActivity()}. Ví dụ:</p>
+
+<pre>
+Intent sendIntent = new Intent(Intent.ACTION_SEND);
+...
+
+// Always use string resources for UI text.
+// This says something like "Share this photo with"
+String title = getResources().getString(R.string.chooser_title);
+// Create intent to show the chooser dialog
+Intent chooser = Intent.createChooser(sendIntent, title);
+
+// Verify the original intent will resolve to at least one activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(chooser);
+}
+</pre>
+
+<p>Một hộp thoại hiển thị với một danh sách ứng dụng hồi đáp lại ý định được chuyển sang phương pháp {@link
+android.content.Intent#createChooser createChooser()} và sử dụng văn bản được cung cấp làm
+tiêu đề của hộp thoại.</p>
+
+
+
+
+
+
+
+
+
+<h2 id="Receiving">Nhận một Ý định Không biểu thị</h2>
+
+<p>Để quảng cáo những ý định không biểu thị mà ứng dụng của bạn có thể nhận, hãy khai báo một hoặc nhiều bộ lọc ý định cho
+từng thành phần ứng dụng của bạn với một phần tử <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+trong <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">tệp bản kê khai của mình</a>.
+Mỗi bộ lọc ý định sẽ quy định loại ý định mà nó chấp nhận dựa trên hành động,
+dữ liệu và thể loại của ý định. Hệ thống sẽ chỉ chuyển một ý định không biểu thị tới thành phần ứng dụng của bạn nếu
+ý định đó có thể chuyển qua một trong các bộ lọc ý định của bạn.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Ý định biểu thị luôn được chuyển tới mục tiêu của mình,
+không phụ thuộc vào bất kỳ bộ lọc ý định nào mà thành phần khai báo.</p>
+
+<p>Một thành phần ứng dụng nên khai báo các bộ lọc riêng cho từng công việc duy nhất mà nó có thể thực hiện.
+Ví dụ, một hoạt động trong một ứng dụng bộ sưu tập ảnh có thể có hai bộ lọc: một bộ lọc
+để xem một hình ảnh và một bộ lọc để chỉnh sửa một hình ảnh. Khi hoạt động bắt đầu,
+nó sẽ kiểm tra {@link android.content.Intent} và quyết định cách xử lý dựa trên thông tin
+trong {@link android.content.Intent} (chẳng hạn như có hiển thị các điều khiển của trình chỉnh sửa hoặc không).</p>
+
+<p>Mỗi bộ lọc ý định sẽ được định nghĩa bởi một phần tử <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+trong tệp bản kê khai của ứng dụng, được lồng trong thành phần ứng dụng tương ứng (chẳng hạn như
+một phần tử <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+). Bên trong <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>,
+bạn có thể quy định loại ý định sẽ chấp nhận bằng cách sử dụng một hoặc nhiều
+phần tử trong ba phần tử sau:</p>
+
+<dl>
+<dt><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a></dt>
+  <dd>Khai báo hành động ý định được chấp nhận, trong thuộc tính {@code name}. Giá trị
+  phải là giá trị xâu ký tự của một hành động chứ không phải hằng số lớp.</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a></dt>
+  <dd>Khai báo kiểu dữ liệu được chấp nhận, bằng cách sử dụng một hoặc nhiều thuộc tính quy định
+  các khía cạnh của URI dữ liệu (<code>scheme</code>, <code>host</code>, <code>port</code>,
+  <code>path</code>, v.v.) và kiểu MIME.</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a></dt>
+  <dd>Khai báo thể loại ý định được chấp nhận, trong thuộc tính {@code name}. Giá trị
+  phải là giá trị xâu ký tự của một hành động chứ không phải hằng số lớp.
+
+  <p class="note"><strong>Lưu ý:</strong> Để nhận các ý định không biểu thị, bạn
+  <strong>phải nêu</strong> thể loại
+  {@link android.content.Intent#CATEGORY_DEFAULT} trong bộ lọc ý định. Các phương pháp
+  {@link android.app.Activity#startActivity startActivity()} và
+  {@link android.app.Activity#startActivityForResult startActivityForResult()} xử lý tất cả ý định
+  như thể chúng khai báo thể loại {@link android.content.Intent#CATEGORY_DEFAULT}.
+  Nếu bạn không khai báo thể loại này trong bộ lọc ý định của mình, không có ý định không biểu thị nào sẽ phân giải thành
+  hoạt động của bạn.</p>
+  </dd>
+</dl>
+
+<p>Ví dụ, sau đây là một khai báo hoạt động với một bộ lọc ý định để nhận một ý định
+{@link android.content.Intent#ACTION_SEND} khi kiểu dữ liệu là văn bản:</p>
+
+<pre>
+&lt;activity android:name="ShareActivity">
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>Không sao nếu tạo một bộ lọc chứa nhiều hơn một thực thể của
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a>,
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>, hoặc
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a>.
+Nếu làm vậy, bạn chỉ cần chắc chắn rằng thành phần có thể xử lý bất kỳ và tất cả các cách kết hợp
+những phần tử bộ lọc đó.</p>
+
+<p>Khi bạn muốn xử lý nhiều kiểu ý định, nhưng chỉ theo các cách kết hợp cụ thể giữa
+hành động, dữ liệu và kiểu thể loại, khi đó bạn cần tạo nhiều bộ lọc ý định.</p>
+
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Hạn chế truy cập vào các thành phần</h2>
+<p>Sử dụng một bộ lọc ý định không phải là một cách bảo mật để ngăn các ứng dụng khác bắt đầu
+các thành phần của bạn. Mặc dù bộ lọc ý định hạn chế một thành phần chỉ hồi đáp
+một số kiểu ý định không biểu thị nhất định, một ứng dụng khác có thể có khả năng bắt đầu thành phần ứng dụng của bạn
+bằng cách sử dụng ý định biểu thị nếu nhà phát triển xác định tên thành phần của bạn.
+Nếu điều quan trọng là <em>chỉ ứng dụng của chính bạn</em> mới có thể bắt đầu một trong các thành phần của bạn,
+hãy đặt thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#exported">{@code
+exported}</a> thành {@code "false"} cho thành phần đó.
+</p>
+</div>
+</div>
+
+<p>Ý định không biểu thị sẽ được kiểm tra dựa trên một bộ lọc bằng cách so sánh ý định với từng phần tử trong số
+ba phần tử. Để được chuyển tới thành phần, ý định phải vượt qua tất cả ba lần kiểm tra.
+Nếu không khớp với thậm chí chỉ một lần thì hệ thống Android sẽ không chuyển ý định tới
+thành phần.  Tuy nhiên, vì một thành phần có thể có nhiều bộ lọc ý định, ý định mà không chuyển qua
+một trong các bộ lọc của thành phần có thể chuyển qua trên một bộ lọc khác.
+Bạn có thể tìm hiểu thêm thông tin về cách hệ thống giải quyết ý định trong phần bên dưới
+về <a href="#Resolution">Giải quyết Ý định</a>.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Để tránh vô ý chạy
+{@link android.app.Service} của một ứng dụng khác, hãy luôn sử dụng một ý định biểu thị để bắt đầu dịch vụ của chính bạn và không được
+khai báo các bộ lọc ý định cho dịch vụ của bạn.</p>
+
+<p class="note"><strong>Lưu ý:</strong>
+Đối với tất cả hoạt động, bạn phải khai báo các bộ lọc ý định của mình trong một tệp bản kê khai.
+Tuy nhiên, các bộ lọc cho hàm nhận quảng bá có thể được đăng ký linh hoạt bằng cách gọi
+{@link android.content.Context#registerReceiver(BroadcastReceiver, IntentFilter, String,
+Handler) registerReceiver()}. Sau đó, bạn có thể bỏ đăng ký hàm nhận đó bằng {@link
+android.content.Context#unregisterReceiver unregisterReceiver()}. Làm vậy sẽ cho phép ứng dụng của bạn
+lắng nghe các quảng bá cụ thể chỉ trong một khoảng thời gian xác định trong khi ứng dụng của bạn
+đang chạy.</p>
+
+
+
+
+
+
+
+<h3 id="ExampleFilters">Ví dụ về bộ lọc</h3>
+
+<p>Để hiểu hơn về một số hành vi của bộ lọc ý định, hãy xem đoạn mã HTML sau
+từ tệp bản kê khai của một ứng dụng chia sẻ mạng xã hội.</p>
+
+<pre>
+&lt;activity android:name="MainActivity">
+    &lt;!-- This activity is the main entry, should appear in app launcher -->
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.MAIN" />
+        &lt;category android:name="android.intent.category.LAUNCHER" />
+    &lt;/intent-filter>
+&lt;/activity>
+
+&lt;activity android:name="ShareActivity">
+    &lt;!-- This activity handles "SEND" actions with text data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter&gt;
+    &lt;!-- This activity also handles "SEND" and "SEND_MULTIPLE" with media data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;action android:name="android.intent.action.SEND_MULTIPLE"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="application/vnd.google.panorama360+jpg"/>
+        &lt;data android:mimeType="image/*"/>
+        &lt;data android:mimeType="video/*"/>
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>Hoạt động thứ nhất, {@code MainActivity}, là điểm mục nhập chính của ứng dụng&mdash;hoạt động này
+sẽ mở khi người dùng khởi tạo ban đầu ứng dụng bằng biểu tượng trình khởi chạy:</p>
+<ul>
+  <li>Hành động {@link android.content.Intent#ACTION_MAIN} thể hiện
+  đây là điểm mục nhập chính và không yêu cầu bất kỳ dữ liệu ý định nào.</li>
+  <li>Thể loại {@link android.content.Intent#CATEGORY_LAUNCHER} cho biết rằng biểu tượng
+  của hoạt động này nên được đặt trong trình khởi chạy ứng dụng của hệ thống. Nếu phần tử <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+  không quy định một biểu tượng bằng {@code icon}, khi đó hệ thống sẽ sử dụng biểu tượng từ phần tử <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+.</li>
+</ul>
+<p>Hai nội dung này phải được ghép đôi cùng nhau để hoạt động xuất hiện trong trình khởi chạy ứng dụng.</p>
+
+<p>Hoạt động thứ hai, {@code ShareActivity}, có mục đích để tạo điều kiện chia sẻ nội dung văn bản và
+phương tiện. Mặc dù người dùng có thể nhập hoạt động này bằng cách điều hướng tới nó từ {@code MainActivity},
+họ cũng có thể nhập {@code ShareActivity} trực tiếp từ một ứng dụng khác mà phát hành
+ý định không biểu thị khớp với một trong hai bộ lọc ý định.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Kiểu MIME,
+<a href="https://developers.google.com/panorama/android/">{@code
+application/vnd.google.panorama360+jpg}</a>, là một kiểu dữ liệu đặc biệt quy định
+ảnh chụp toàn cảnh mà bạn có thể xử lý bằng các API <a href="{@docRoot}reference/com/google/android/gms/panorama/package-summary.html">Google
+panorama</a>.</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+<h2 id="PendingIntent">Sử dụng một Ý định Chờ</h2>
+
+<p>Đối tượng {@link android.app.PendingIntent} là một trình bao bọc xung quanh một đối tượng {@link
+android.content.Intent}. Mục đích chính của một {@link android.app.PendingIntent}
+ là cấp quyền cho một ứng dụng ngoài
+để sử dụng {@link android.content.Intent} chứa trong nó như thể nó được thực thi từ tiến trình
+của chính ứng dụng của bạn.</p>
+
+<p>Các trường hợp sử dụng chính đối với một ý định chờ bao gồm:</p>
+<ul>
+  <li>Khai báo một ý định cần được thực thi khi người dùng thực hiện một hành động bằng <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Thông báo</a> của bạn
+  ({@link android.app.NotificationManager}
+  của hệ thống Android thực thi {@link android.content.Intent}).
+  <li>Khai báo một ý định cần được thực thi khi người dùng thực hiện một hành động bằng
+  <a href="{@docRoot}guide/topics/appwidgets/index.html">App Widget</a> của bạn
+  (ứng dụng màn hình Trang chủ thực thi {@link android.content.Intent}).
+  <li>Khai báo một ý định cần được thực thi tại một thời điểm xác định trong tương lai (
+{@link android.app.AlarmManager} của hệ thống Android thực thi {@link android.content.Intent}).
+</ul>
+
+<p>Vì mỗi đối tượng {@link android.content.Intent} được thiết kế để được xử lý bởi một
+loại thành phần ứng dụng cụ thể (hoặc là {@link android.app.Activity}, {@link android.app.Service}, hay
+ {@link android.content.BroadcastReceiver}), vì thế {@link android.app.PendingIntent} cũng
+phải được tạo lập với cân nhắc tương tự. Khi sử dụng một ý định chờ, ứng dụng của bạn sẽ không
+thực thi ý định bằng một lệnh gọi chẳng hạn như {@link android.content.Context#startActivity
+startActivity()}. Thay vào đó, bạn phải khai báo loại thành phần theo ý định khi bạn tạo lập
+{@link android.app.PendingIntent} bằng cách gọi phương pháp trình tạo lập tương ứng:</p>
+
+<ul>
+  <li>{@link android.app.PendingIntent#getActivity PendingIntent.getActivity()} đối với một
+  {@link android.content.Intent} mà bắt đầu {@link android.app.Activity}.</li>
+  <li>{@link android.app.PendingIntent#getService PendingIntent.getService()} đối với một
+  {@link android.content.Intent} mà bắt đầu {@link android.app.Service}.</li>
+  <li>{@link android.app.PendingIntent#getBroadcast PendingIntent.getBroadcast()} đối với một
+  {@link android.content.Intent} mà bắt đầu {@link android.content.BroadcastReceiver}.</li>
+</ul>
+
+<p>Trừ khi ứng dụng của bạn đang <em>nhận</em> ý định chờ từ các ứng dụng khác,
+các phương pháp để tạo lập {@link android.app.PendingIntent} trên là những phương pháp
+{@link android.app.PendingIntent} duy nhất mà bạn sẽ cần.</p>
+
+<p>Mỗi phương pháp sẽ lấy ứng dụng {@link android.content.Context} hiện tại,
+{@link android.content.Intent} mà bạn muốn bao bọc, và một hoặc nhiều cờ quy định
+cách thức sử dụng ý định (chẳng hạn như ý định có thể được sử dụng nhiều hơn một lần hay không).</p>
+
+<p>Bạn có thể tham khảo thêm thông tin về việc sử dụng ý định chờ trong tài liệu cho từng
+trường hợp sử dụng tương ứng chẳng hạn như trong hướng dẫn về API <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Thông báo</a>
+và <a href="{@docRoot}guide/topics/appwidgets/index.html">App Widgets</a>.</p>
+
+
+
+
+
+
+
+<h2 id="Resolution">Giải quyết Ý định</h2>
+
+
+<p>Khi hệ thống nhận được một ý định không biểu thị nhằm bắt đầu một hoạt động, nó sẽ tìm
+hoạt động tốt nhất cho ý định đó bằng cách so sánh ý định với các bộ lọc ý định dựa trên ba phương diện:</p>
+
+<ul>
+  <li>Hành động của ý định
+  <li>Dữ liệu của ý định (cả URI và kiểu dữ liệu)
+  <li>Thể loại của ý định
+</ul>
+
+<p>Các phần sau mô tả cách một ý định được so khớp với (các) thành phần phù hợp
+về phương diện bộ lọc ý định được khai báo như thế nào trong tệp bản kê khai của một ứng dụng.</p>
+
+
+<h3 id="ActionTest">Kiểm tra hành động</h3>
+
+<p>Để quy định các hành động của ý định được chấp nhận, một bộ lọc ý định có thể khai báo 0 phần tử
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> hoặc nhiều hơn.  Ví dụ:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.VIEW" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Để vượt qua bộ lọc này, hành động được quy định trong {@link android.content.Intent}
+  phải khớp với một trong các hành động được liệt kê trong bộ lọc.</p>
+
+<p>Nếu bộ lọc không liệt kê bất kỳ hành động nào thì sẽ không có gì để
+ý định so khớp, vì thế tất cả ý định sẽ không vượt qua kiểm tra. Tuy nhiên, nếu một {@link android.content.Intent}
+không quy định một hành động, nó sẽ vượt qua kiểm tra (miễn là bộ lọc
+chứa ít nhất một hành động).</p>
+
+
+
+<h3 id="CategoryTest">Kiểm tra thể loại</h3>
+
+<p>Để quy định các thể loại của ý định được chấp nhận, một bộ lọc ý định có thể khai báo 0 phần tử
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> hoặc nhiều hơn.  Ví dụ:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+    &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Để một ý định vượt qua kiểm tra thể loại, mỗi thể loại trong {@link android.content.Intent}
+phải khớp với một thể loại trong bộ lọc. Trường hợp ngược lại là không cần thiết&mdash;bộ lọc ý định có thể
+khai báo nhiều thể loại hơn được quy định trong {@link android.content.Intent} và
+{@link android.content.Intent} sẽ vẫn vượt qua. Vì thế, ý định không có thể loại
+luôn vượt qua kiểm tra này, không phụ thuộc vào những thể loại nào được khai báo trong bộ lọc.</p>
+
+<p class="note"><strong>Lưu ý:</strong>
+Android sẽ tự động áp dụng thể loại {@link android.content.Intent#CATEGORY_DEFAULT}
+cho tất cả ý định không biểu thị được chuyển tới {@link
+android.content.Context#startActivity startActivity()} và {@link
+android.app.Activity#startActivityForResult startActivityForResult()}.
+Vì thế, nếu bạn muốn hoạt động của mình nhận ý định không biểu thị, nó phải
+nêu một thể loại cho {@code "android.intent.category.DEFAULT"} trong các bộ lọc ý định của mình (như
+được minh họa trong ví dụ {@code &lt;intent-filter&gt;} trước đó.</p>
+
+
+
+<h3 id="DataTest">Kiểm tra dữ liệu</h3>
+
+<p>Để quy định dữ liệu của ý định được chấp nhận, một bộ lọc ý định có thể khai báo 0 phần tử
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a> hoặc nhiều hơn.  Ví dụ:</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="video/mpeg" android:scheme="http" ... /&gt;
+    &lt;data android:mimeType="audio/mpeg" android:scheme="http" ... /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>Mỗi phần tử <code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+có thể quy định một cấu trúc URI và kiểu dữ liệu (kiểu phương tiện MIME).  Có các thuộc tính
+riêng &mdash; {@code scheme}, {@code host}, {@code port},
+và {@code path} &mdash; cho từng phần của URI:
+</p>
+
+<p style="margin-left: 2em">{@code &lt;scheme&gt;://&lt;host&gt;:&lt;port&gt;/&lt;path&gt;}</p>
+
+<p>
+Ví dụ:
+</p>
+
+<p style="margin-left: 2em">{@code content://com.example.project:200/folder/subfolder/etc}</p>
+
+<p>Trong URI này, lược đồ là {@code content}, máy chủ là {@code com.example.project},
+cổng là {@code 200}, và đường dẫn là {@code folder/subfolder/etc}.
+</p>
+
+<p>Mỗi thuộc tính sau đều không bắt buộc trong một phần tử <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>,
+nhưng có sự phụ thuộc mang tính chất tuyến tính:</p>
+<ul>
+  <li>Nếu không quy định một lược đồ thì máy chủ bị bỏ qua.</li>
+  <li>Nếu không quy định một máy chủ thì cổng bị bỏ qua.</li>
+  <li>Nếu không quy định cả lược đồ và máy chủ thì đường dẫn bị bỏ qua.</li>
+</ul>
+
+<p>Khi URI trong một ý định được so sánh với đặc tả URI trong một bộ lọc,
+nó chỉ được so sánh với các bộ phận của URI được nêu trong bộ lọc. Ví dụ:</p>
+<ul>
+  <li>Nếu một bộ lọc chỉ quy định một lược đồ, tất cả URI có lược đồ đó sẽ khớp
+với bộ lọc.</li>
+  <li>Nếu một bộ lọc quy định một lược đồ và thẩm quyền nhưng không có đường dẫn, tất cả URI
+với cùng lược đồ và thẩm quyền sẽ thông qua bộ lọc, không phụ thuộc vào đường dẫn của nó.</li>
+  <li>Nếu bộ lọc quy định một lược đồ, thẩm quyền và đường dẫn, chỉ những URI có cùng lược đồ,
+thẩm quyền và đường dẫn mới thông qua bộ lọc.</li>
+</ul>
+
+<p class="note"><strong>Lưu ý:</strong> Đặc tả đường dẫn có thể
+chứa một ký tự đại diện dấu sao (*) để yêu cầu chỉ khớp một phần với tên đường dẫn.</p>
+
+<p>Kiểm tra dữ liệu so sánh cả URI và kiểu MIME trong ý định với một URI
+và kiểu MIME được quy định trong bộ lọc.  Các quy tắc như sau:
+</p>
+
+<ol type="a">
+<li>Một ý định mà không chứa URI cũng như kiểu MIME sẽ chỉ vượt qua
+kiểm tra nếu bộ lọc không quy định bất kỳ URI hay kiểu MIME nào.</li>
+
+<li>Một ý định chứa URI nhưng không có kiểu MIME (không biểu thị cũng như suy luận được từ
+URI) sẽ chỉ vượt qua kiểm tra nếu URI của nó khớp với định dạng URI của bộ lọc
+và bộ lọc tương tự không quy định một kiểu MIME.</li>
+
+<li>Một ý định chứa kiểu MIME nhưng không chứa URI sẽ chỉ vượt qua kiểm tra
+nếu bộ lọc liệt kê cùng kiểu MIME và không quy định một định dạng URI.</li>
+
+<li>Ý định mà chứa cả URI và kiểu MIME (hoặc biểu thị hoặc suy ra được từ
+URI) sẽ chỉ vượt qua phần kiểu MIME của kiểm tra nếu kiểu đó
+khớp với kiểu được liệt kê trong bộ lọc.  Nó vượt qua phần URI của kiểm tra
+nếu URI của nó khớp với một URI trong bộ lọc hoặc nếu nó có một {@code content:}
+hoặc {@code file:} URI và bộ lọc không quy định một URI. Nói cách khác,
+một thành phần được giả định là hỗ trợ dữ liệu {@code content:} và {@code file:} nếu
+bộ lọc của nó liệt kê <em>chỉ</em> một kiểu MIME.</p></li>
+</ol>
+
+<p>
+Quy tắc cuối cùng này, quy tắc (d), phản ánh kỳ vọng
+rằng các thành phần có thể nhận được dữ liệu cục bộ từ một tệp hoặc trình cung cấp nội dung.
+Vì thế, các bộ lọc của chúng có thể chỉ liệt kê một kiểu dữ liệu và không cần công khai
+nêu tên {@code content:} và các lược đồ {@code file:}.
+Đây là một trường hợp điển hình.  Phần tử <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> như
+ sau, ví dụ, sẽ thông báo cho Android biết rằng thành phần có thể nhận được dữ liệu ảnh từ một trình cung cấp
+nội dung và sẽ hiển thị nó:
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="image/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+<p>
+Vì hầu hết dữ liệu có sẵn đều được cấp phát bởi các trình cung cấp nội dung, những bộ lọc mà
+quy định một kiểu dữ liệu chứ không phải URI có lẽ là phổ biến nhất.
+</p>
+
+<p>
+Một cấu hình phổ biến khác đó là các bộ lọc có một lược đồ và một kiểu dữ liệu.  Ví
+dụ, một phần tử <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>
+như sau thông báo cho Android rằng
+thành phần có thể truy xuất dữ liệu video từ mạng để thực hiện hành động:
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:scheme="http" android:type="video/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+
+
+<h3 id="imatch">So khớp ý định</h3>
+
+<p>Các ý định được so khớp với các bộ lọc ý định không chỉ để khám phá một thành phần
+mục tiêu cần kích hoạt, mà còn để khám phá điều gì đó về tập hợp
+các thành phần trên thiết bị.  Ví dụ, ứng dụng Trang chủ đưa trình khởi chạy ứng dụng
+vào bằng cách tìm tất cả hoạt động có bộ lọc ý định mà quy định hành động
+{@link android.content.Intent#ACTION_MAIN} và thể loại
+{@link android.content.Intent#CATEGORY_LAUNCHER}.</p>
+
+<p>Ứng dụng của bạn có thể sử dụng so khớp ý định theo cách tương tự.
+{@link android.content.pm.PackageManager} có một tập hợp các phương pháp{@code query...()}
+trả về tất cả thành phần có thể chấp nhận một ý định cụ thể, và
+một chuỗi các phương pháp {@code resolve...()} tương tự để xác định thành phần
+tốt nhất nhằm hồi đáp lại một ý định.  Ví dụ,
+{@link android.content.pm.PackageManager#queryIntentActivities
+queryIntentActivities()} sẽ trả về một danh sách tất cả hoạt động có thể thực hiện
+ý định được chuyển qua như một tham đối, và {@link
+android.content.pm.PackageManager#queryIntentServices
+queryIntentServices()} trả về một danh sách dịch vụ tương tự.
+Cả hai phương pháp đều không kích hoạt các thành phần; chúng chỉ liệt kê những thành phần
+có thể hồi đáp.  Có một phương pháp tương tự,
+{@link android.content.pm.PackageManager#queryBroadcastReceivers
+queryBroadcastReceivers()}, dành cho hàm nhận quảng bá.
+</p>
+
+
+
+
diff --git a/docs/html-intl/intl/vi/guide/components/loaders.jd b/docs/html-intl/intl/vi/guide/components/loaders.jd
new file mode 100644
index 0000000..b6d277f
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/loaders.jd
@@ -0,0 +1,494 @@
+page.title=Trình tải
+parent.title=Hoạt động
+parent.link=activities.html
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>Trong tài liệu này</h2>
+    <ol>
+    <li><a href="#summary">Tổng quan về API Trình tải</a></li>
+    <li><a href="#app">Sử dụng các Trình tải trong một Ứng dụng</a>
+      <ol>
+        <li><a href="#requirements"></a></li>
+        <li><a href="#starting">Khởi động một Trình tải</a></li>
+        <li><a href="#restarting">Khởi động lại một Trình tải</a></li>
+        <li><a href="#callback">Sử dụng các Phương pháp Gọi lại LoaderManager</a></li>
+      </ol>
+    </li>
+    <li><a href="#example">Ví dụ</a>
+       <ol>
+         <li><a href="#more_examples">Thêm Ví dụ</a></li>
+        </ol>
+    </li>
+  </ol>
+    
+  <h2>Lớp khóa</h2>
+    <ol>
+      <li>{@link android.app.LoaderManager}</li>
+      <li>{@link android.content.Loader}</li>
+
+    </ol>   
+    
+    <h2>Các mẫu liên quan</h2>
+   <ol>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a></li>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html">
+LoaderThrottle</a></li>
+   </ol>
+  </div>
+</div>
+
+<p>Được giới thiệu trong Android 3.0, trình tải giúp việc tải dữ liệu không đồng bộ
+trong một hoạt động hoặc phân đoạn trở nên dễ dàng. Trình tải có những đặc điểm sau:</p>
+  <ul>
+    <li>Chúng sẵn có cho mọi {@link android.app.Activity} và {@link
+android.app.Fragment}.</li>
+    <li>Chúng cung cấp khả năng tải dữ liệu không đồng bộ.</li>
+    <li>Chúng theo dõi nguồn dữ liệu của mình và chuyển giao kết quả mới khi nội dung
+thay đổi.</li>
+    <li>Chúng tự động kết nối lại với con chạy của trình tải cuối cùng khi được
+tạo lại sau khi cấu hình thay đổi. Vì thế, chúng không cần truy vấn lại dữ liệu
+của mình.</li>
+  </ul>
+ 
+<h2 id="summary">Tổng quan về API Trình tải</h2>
+
+<p>Có nhiều lớp và giao diện có thể có liên quan trong khi sử dụng
+các trình tải trong một ứng dụng. Chúng được tóm tắt trong bảng này.</p>
+
+<table>
+  <tr>
+    <th>Lớp/Giao diện</th>
+    <th>Mô tả</th>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager}</td>
+    <td>Một lớp tóm tắt được liên kết với {@link android.app.Activity} hoặc
+{@link android.app.Fragment} để quản lý một hoặc nhiều thực thể {@link
+android.content.Loader}. Nó giúp ứng dụng quản lý
+các thao tác chạy lâu hơn cùng với vòng đời {@link android.app.Activity}
+hoặc {@link android.app.Fragment}; công dụng phổ biến nhất của lớp này là khi dùng với
+{@link android.content.CursorLoader}, tuy nhiên, các ứng dụng được tự do ghi
+trình tải của chính mình để tải các kiểu dữ liệu khác.
+    <br />
+    <br />
+    Chỉ có một {@link android.app.LoaderManager} trên mỗi hoạt động hoặc phân đoạn. Nhưng một {@link android.app.LoaderManager} có thể có
+nhiều trình tải.</td>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager.LoaderCallbacks}</td>
+    <td>Một giao diện gọi lại để một máy khách tương tác với {@link
+android.app.LoaderManager}. Ví dụ, bạn sử dụng phương pháp gọi lại {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+để tạo một trình tải mới.</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.Loader}</td>
+    <td>Một lớp tóm tắt có vai trò thực hiện việc tải dữ liệu không đồng bộ. Đây là
+lớp cơ bản cho một trình tải. Thông thường, bạn sẽ sử dụng {@link
+android.content.CursorLoader}, nhưng bạn có thể triển khai lớp con của chính mình. Trong khi
+các trình tải đang hoạt động, chúng sẽ theo dõi nguồn dữ liệu của mình và chuyển giao
+kết quả mới khi nội dung thay đổi. </td>
+  </tr>
+  <tr>
+    <td>{@link android.content.AsyncTaskLoader}</td>
+    <td>Trình tải tóm tắt có chức năng cung cấp {@link android.os.AsyncTask} để thực hiện công việc.</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.CursorLoader}</td>
+    <td>Một lớp con của {@link android.content.AsyncTaskLoader} có chức năng truy vấn
+{@link android.content.ContentResolver} và trả về một {@link
+android.database.Cursor}. Lớp này triển khai giao thức {@link
+android.content.Loader} theo một cách chuẩn hóa để truy vấn các con chạy,
+xây dựng trên {@link android.content.AsyncTaskLoader} để thực hiện truy vấn con chạy
+trên một luồng nền sao cho nó không chặn UI của ứng dụng. Sử dụng
+trình tải này là cách tốt nhất để tải dữ liệu không đồng bộ từ một {@link
+android.content.ContentProvider}, thay vì phải thực hiện một truy vấn được quản lý thông qua
+phân đoạn hoặc các API của hoạt động.</td>
+  </tr>
+</table>
+
+<p>Các lớp và giao diện trong bảng trên là những thành phần thiết yếu
+mà bạn sẽ sử dụng để triển khai một trình tải trong ứng dụng của mình. Bạn sẽ không cần tất cả chúng
+cho từng trình tải mà bạn tạo lập, nhưng bạn sẽ luôn cần một tham chiếu tới {@link
+android.app.LoaderManager} để khởi tạo một trình tải và triển khai
+một lớp {@link android.content.Loader} chẳng hạn như {@link
+android.content.CursorLoader}. Các phần sau đây trình bày với bạn cách sử dụng những
+lớp và giao diện này trong một ứng dụng.</p>
+
+<h2 id ="app">Sử dụng các Trình tải trong một Ứng dụng</h2>
+<p>Phần này mô tả cách sử dụng các trình tải trong một ứng dụng Android. Một
+ứng dụng sử dụng trình tải thường bao gồm:</p>
+<ul>
+  <li>Một {@link android.app.Activity} hoặc {@link android.app.Fragment}.</li>
+  <li>Một thực thể của {@link android.app.LoaderManager}.</li>
+  <li>Một {@link android.content.CursorLoader} để tải dữ liệu được dự phòng bởi một {@link
+android.content.ContentProvider}. Hoặc cách khác, bạn có thể triển khai lớp con
+của {@link android.content.Loader} hoặc {@link android.content.AsyncTaskLoader} của chính mình để tải
+dữ liệu từ một số nguồn khác.</li>
+  <li>Một triển khai cho {@link android.app.LoaderManager.LoaderCallbacks}.
+Đây là nơi bạn tạo trình tải mới và quản lý các tham chiếu của mình tới các
+trình tải hiện có.</li> 
+<li>Một cách để hiển thị dữ liệu của trình tải, chẳng hạn như {@link
+android.widget.SimpleCursorAdapter}.</li>
+  <li>Một nguồn dữ liệu, chẳng hạn như một {@link android.content.ContentProvider}, khi sử dụng một 
+{@link android.content.CursorLoader}.</li>
+</ul>
+<h3 id="starting">Khởi động một Trình tải</h3>
+
+<p>{@link android.app.LoaderManager} quản lý một hoặc nhiều thực thể {@link
+android.content.Loader} trong một {@link android.app.Activity} hoặc
+{@link android.app.Fragment}. Chỉ có một {@link
+android.app.LoaderManager} trên mỗi hoạt động hoặc phân đoạn.</p> 
+
+<p>Thông thường, bạn
+sẽ khởi tạo một {@link android.content.Loader} bên trong phương pháp {@link
+android.app.Activity#onCreate onCreate()} của hoạt động, hoặc trong phương pháp
+{@link android.app.Fragment#onActivityCreated onActivityCreated()} của phân đoạn. Bạn
+làm điều này như sau:</p>
+
+<pre>// Prepare the loader.  Either re-connect with an existing one,
+// or start a new one.
+getLoaderManager().initLoader(0, null, this);</pre>
+
+<p>Phương pháp {@link android.app.LoaderManager#initLoader initLoader()} sẽ lấy những
+tham số sau:</p>
+<ul>
+  <li>Một ID duy nhất xác định trình tải. Trong ví dụ này, ID là 0.</li>
+<li>Các tham đối tùy chọn để cung cấp cho trình tải khi
+xây dựng (<code>null</code> trong ví dụ này).</li> 
+
+<li>Triển khai {@link android.app.LoaderManager.LoaderCallbacks}, phương pháp mà 
+{@link android.app.LoaderManager} gọi để báo cáo các sự kiện trình tải. Trong ví dụ này
+, lớp cục bộ triển khai giao diện {@link
+android.app.LoaderManager.LoaderCallbacks}, vì thế nó chuyển một tham chiếu
+tới chính nó, {@code this}.</li> 
+</ul>
+<p>Lệnh gọi {@link android.app.LoaderManager#initLoader initLoader()} đảm bảo rằng một trình tải
+được khởi tạo và hiện hoạt. Nó có hai kết quả có thể xảy ra:</p>
+<ul>
+  <li>Nếu trình tải được quy định bởi ID đã tồn tại, trình tải được tạo lập cuối cùng
+sẽ được sử dụng lại.</li>
+  <li>Nếu trình tải được quy định bởi ID <em>không</em> tồn tại,
+{@link android.app.LoaderManager#initLoader initLoader()} sẽ kích khởi phương pháp
+{@link android.app.LoaderManager.LoaderCallbacks}{@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}.
+Đây là nơi bạn triển khai mã để khởi tạo và trả về một trình tải mới.
+Để bàn thêm, hãy xem phần <a href="#onCreateLoader">onCreateLoader</a>.</li>
+</ul>
+<p>Dù trong trường hợp nào, triển khai {@link android.app.LoaderManager.LoaderCallbacks}
+đã cho được liên kết với trình tải, và sẽ được gọi khi
+trạng thái của trình tải thay đổi.  Nếu tại điểm thực hiện lệnh gọi này, hàm gọi đang trong trạng thái
+được khởi động của nó, và trình tải được yêu cầu đã tồn tại và đã khởi tạo
+dữ liệu của nó, khi đó hệ thống sẽ gọi {@link
+android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+ngay lập tức (trong khi {@link android.app.LoaderManager#initLoader initLoader()}),
+vì thế bạn phải sẵn sàng khi điều này xảy ra. Xem <a href="#onLoadFinished">
+onLoadFinished</a> để thảo luận thêm về lệnh gọi lại này</p>
+
+<p>Lưu ý rằng phương pháp {@link android.app.LoaderManager#initLoader initLoader()}
+sẽ trả về {@link android.content.Loader} đã được tạo lập, nhưng bạn không
+cần bắt lại một tham chiếu tới nó. {@link android.app.LoaderManager} tự động quản lý
+vòng đời của trình tải. {@link android.app.LoaderManager}
+khởi động và dừng tải khi cần và duy trì trạng thái của trình tải
+và nội dung đi kèm của nó. Như hàm ý, bạn hiếm khi tương tác trực tiếp với các trình tải
+(thông qua một ví dụ về việc sử dụng các phương pháp trình tải để tinh chỉnh hành vi
+của một trình tải, hãy xem ví dụ <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a>). 
+Bạn thường sử dụng nhất là các phương pháp {@link
+android.app.LoaderManager.LoaderCallbacks} để can thiệp vào tiến trình tải
+khi diễn ra một sự kiện đặc biệt. Để thảo luận thêm về chủ đề này, hãy xem phần <a href="#callback">Sử dụng Phương pháp Gọi lại LoaderManager</a>.</p>
+
+<h3 id="restarting">Khởi động lại một Trình tải</h3>
+
+<p>Khi bạn sử dụng {@link android.app.LoaderManager#initLoader initLoader()}, như
+trình bày bên trên, nó sử dụng một trình tải hiện hữu với ID được quy định nếu có.
+Nếu không có, nó sẽ tạo một trình tải. Nhưng đôi khi bạn muốn bỏ dữ liệu cũ của mình
+và bắt đầu lại.</p>
+
+<p>Để bỏ dữ liệu cũ của mình, hãy sử dụng {@link
+android.app.LoaderManager#restartLoader restartLoader()}. Ví dụ, việc
+triển khai {@link android.widget.SearchView.OnQueryTextListener} này sẽ khởi động lại
+trình tải khi truy vấn của người dùng thay đổi. Trình tải cần được khởi động lại sao cho
+nó có thể sử dụng bộ lọc tìm kiếm được điều chỉnh để thực hiện một truy vấn mới:</p>
+
+<pre>
+public boolean onQueryTextChanged(String newText) {
+    // Called when the action bar search text has changed.  Update
+    // the search filter, and restart the loader to do a new query
+    // with this filter.
+    mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+    getLoaderManager().restartLoader(0, null, this);
+    return true;
+}</pre>
+
+<h3 id="callback">Sử dụng các Phương pháp Gọi lại LoaderManager</h3>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} là một giao diện gọi lại
+cho phép một máy khách tương tác với {@link android.app.LoaderManager}. </p>
+<p>Các trình tải, đặc biệt là {@link android.content.CursorLoader}, được kỳ vọng sẽ
+giữ lại dữ liệu của chúng sau khi bị dừng. Điều này cho phép ứng dụng giữ lại
+dữ liệu của chúng qua hoạt động hoặc các phương pháp {@link android.app.Activity#onStop
+onStop()} và {@link android.app.Activity#onStart onStart()} của phân đoạn, sao cho khi
+người dùng quay lại một ứng dụng, họ không phải chờ dữ liệu
+tải lại. Bạn sử dụng các phương pháp {@link android.app.LoaderManager.LoaderCallbacks}
+khi cần biết khi nào thì nên tạo một trình tải mới, và để thông báo với ứng dụng khi nào
+ thì đến lúc để dừng sử dụng dữ liệu của một trình tải.</p>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} bao gồm những phương pháp
+sau:</p>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}  —
+Khởi tạo và trả về một {@link android.content.Loader} mới cho ID đã cho.
+</li></ul>
+<ul>
+  <li> {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+— Được gọi khi một trình tải được tạo trước đó đã hoàn tất việc tải.
+</li></ul>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onLoaderReset onLoaderReset()}  
+    — Được gọi khi một trình tải được tạo trước đó đang được đặt lại, vì thế mà khiến dữ liệu
+của nó không sẵn có.
+</li>
+</ul>
+<p>Những phương pháp này được mô tả chi tiết hơn trong các phần sau.</p>
+
+<h4 id ="onCreateLoader">onCreateLoader</h4>
+
+<p>Khi bạn định truy cập một trình tải (ví dụ, thông qua {@link
+android.app.LoaderManager#initLoader initLoader()}), nó kiểm tra xem
+trình tải được quy định bởi ID có tồn tại không. Nếu không, nó sẽ kích khởi phương pháp {@link
+android.app.LoaderManager.LoaderCallbacks} {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}. Đây
+là lúc bạn tạo một trình tải mới. Thông thường sẽ có một {@link
+android.content.CursorLoader}, nhưng bạn có thể triển khai lớp con {@link
+android.content.Loader} của chính mình. </p>
+
+<p>Trong ví dụ này, phương pháp gọi lại {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+sẽ tạo một {@link android.content.CursorLoader}. Bạn phải xây dựng
+{@link android.content.CursorLoader} bằng cách sử dụng phương pháp hàm dựng của nó mà yêu cầu
+trọn bộ thông tin cần thiết để thực hiện một truy vấn tới {@link
+android.content.ContentProvider}. Cụ thể, nó cần:</p>
+<ul>
+  <li><em>uri</em> — URI của nội dung cần truy xuất. </li>
+  <li><em>dự thảo</em> — Một danh sách các cột sẽ trả về. Việc chuyển
+<code>null</code> sẽ trả về tất cả cột, điều này không hiệu quả. </li>
+  <li><em>lựa chọn</em> — Một bộ lọc khai báo các hàng nào sẽ trả về,
+có định dạng như một mệnh đề SQL WHERE (không gồm chính mệnh đề WHERE). Việc chuyển
+<code>null</code> sẽ trả về tất cả hàng cho URI đã cho. </li>
+  <li><em>selectionArgs</em> — Bạn có thể thêm ?s vào lựa chọn,
+chúng sẽ được thay thế bằng các giá trị từ <em>selectionArgs</em>, theo thứ tự xuất hiện trong
+lựa chọn. Giá trị sẽ được gắn kết thành các Xâu. </li>
+  <li><em>sortOrder</em> — Cách sắp xếp thứ tự các hàng, được định dạng như một mệnh đề SQL
+ORDER BY (không bao gồm chính mệnh đề ORDER BY). Việc chuyển <code>null</code> sẽ
+sử dụng thứ tự sắp xếp mặc định, điều này có thể dẫn đến kết quả không theo thứ tự.</li>
+</ul>
+<p>Ví dụ:</p>
+<pre>
+ // If non-null, this is the current filter the user has provided.
+String mCurFilter;
+...
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+    // This is called when a new Loader needs to be created.  This
+    // sample only has one Loader, so we don't care about the ID.
+    // First, pick the base URI to use depending on whether we are
+    // currently filtering.
+    Uri baseUri;
+    if (mCurFilter != null) {
+        baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                  Uri.encode(mCurFilter));
+    } else {
+        baseUri = Contacts.CONTENT_URI;
+    }
+
+    // Now create and return a CursorLoader that will take care of
+    // creating a Cursor for the data being displayed.
+    String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+            + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+            + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+    return new CursorLoader(getActivity(), baseUri,
+            CONTACTS_SUMMARY_PROJECTION, select, null,
+            Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+}</pre>
+<h4 id="onLoadFinished">onLoadFinished</h4>
+
+<p>Phương pháp này được gọi khi một trình tải được tạo trước đó đã hoàn thành việc tải của mình.
+Phương pháp này được bảo đảm sẽ được gọi trước khi giải phóng dữ liệu cuối cùng
+được cung cấp cho trình tải này.  Tại điểm này, bạn nên loại bỏ mọi trường hợp sử dụng
+dữ liệu cũ (do nó sẽ được giải phóng sớm), nhưng không nên 
+tự mình giải phóng dữ liệu do trình tải sở hữu dữ liệu và sẽ đảm nhận việc này.</p>
+
+
+<p>Trình tải sẽ giải phóng dữ liệu sau khi nó biết ứng dụng đang không còn
+sử dụng nó nữa.  Ví dụ, nếu dữ liệu là một con chạy từ một {@link
+android.content.CursorLoader}, bạn không nên tự mình gọi {@link
+android.database.Cursor#close close()} trên dữ liệu đó. Nếu con chạy đang được đặt
+trong một {@link android.widget.CursorAdapter}, bạn nên sử dụng phương pháp {@link
+android.widget.SimpleCursorAdapter#swapCursor swapCursor()} sao cho
+ {@link android.database.Cursor} cũ không bị đóng. Ví dụ:</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.<br
+/>SimpleCursorAdapter mAdapter;
+...
+
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+    // Swap the new cursor in.  (The framework will take care of closing the
+    // old cursor once we return.)
+    mAdapter.swapCursor(data);
+}</pre>
+
+<h4 id="onLoaderReset">onLoaderReset</h4>
+
+<p>Phương pháp này được gọi khi một trình tải được tạo trước đó đang được đặt lại, vì thế mà khiến 
+dữ liệu của nó không sẵn có. Lệnh gọi lại này cho phép bạn tìm hiểu xem khi nào thì dữ liệu
+sẽ được giải phóng để bạn có thể loại bỏ tham chiếu của mình tới nó.  </p>
+<p>Sự triển khai này gọi ra 
+{@link android.widget.SimpleCursorAdapter#swapCursor swapCursor()}  
+với một giá trị <code>null</code>:</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.
+SimpleCursorAdapter mAdapter;
+...
+
+public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+    // This is called when the last Cursor provided to onLoadFinished()
+    // above is about to be closed.  We need to make sure we are no
+    // longer using it.
+    mAdapter.swapCursor(null);
+}</pre>
+
+
+<h2 id="example">Ví dụ</h2>
+
+<p>Lấy một ví dụ, sau đây là triển khai đầy đủ của {@link
+android.app.Fragment} có chức năng hiển thị một {@link android.widget.ListView} chứa
+kết quả của một truy vấn đối với trình cung cấp nội dung danh bạ. Nó sử dụng một {@link
+android.content.CursorLoader} để quản lý truy vấn trên trình cung cấp.</p>
+ 
+<p>Để một ứng dụng truy cập danh bạ của một người dùng, như minh họa trong ví dụ này, bản kê khai
+của nó phải bao gồm quyền
+{@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS}.</p>
+
+<pre>
+public static class CursorLoaderListFragment extends ListFragment
+        implements OnQueryTextListener, LoaderManager.LoaderCallbacks&lt;Cursor&gt; {
+
+    // This is the Adapter being used to display the list's data.
+    SimpleCursorAdapter mAdapter;
+
+    // If non-null, this is the current filter the user has provided.
+    String mCurFilter;
+
+    @Override public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+
+        // Give some text to display if there is no data.  In a real
+        // application this would come from a resource.
+        setEmptyText(&quot;No phone numbers&quot;);
+
+        // We have a menu item to show in action bar.
+        setHasOptionsMenu(true);
+
+        // Create an empty adapter we will use to display the loaded data.
+        mAdapter = new SimpleCursorAdapter(getActivity(),
+                android.R.layout.simple_list_item_2, null,
+                new String[] { Contacts.DISPLAY_NAME, Contacts.CONTACT_STATUS },
+                new int[] { android.R.id.text1, android.R.id.text2 }, 0);
+        setListAdapter(mAdapter);
+
+        // Prepare the loader.  Either re-connect with an existing one,
+        // or start a new one.
+        getLoaderManager().initLoader(0, null, this);
+    }
+
+    @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+        // Place an action bar item for searching.
+        MenuItem item = menu.add(&quot;Search&quot;);
+        item.setIcon(android.R.drawable.ic_menu_search);
+        item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+        SearchView sv = new SearchView(getActivity());
+        sv.setOnQueryTextListener(this);
+        item.setActionView(sv);
+    }
+
+    public boolean onQueryTextChange(String newText) {
+        // Called when the action bar search text has changed.  Update
+        // the search filter, and restart the loader to do a new query
+        // with this filter.
+        mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+        getLoaderManager().restartLoader(0, null, this);
+        return true;
+    }
+
+    @Override public boolean onQueryTextSubmit(String query) {
+        // Don't care about this.
+        return true;
+    }
+
+    @Override public void onListItemClick(ListView l, View v, int position, long id) {
+        // Insert desired behavior here.
+        Log.i(&quot;FragmentComplexList&quot;, &quot;Item clicked: &quot; + id);
+    }
+
+    // These are the Contacts rows that we will retrieve.
+    static final String[] CONTACTS_SUMMARY_PROJECTION = new String[] {
+        Contacts._ID,
+        Contacts.DISPLAY_NAME,
+        Contacts.CONTACT_STATUS,
+        Contacts.CONTACT_PRESENCE,
+        Contacts.PHOTO_ID,
+        Contacts.LOOKUP_KEY,
+    };
+    public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+        // This is called when a new Loader needs to be created.  This
+        // sample only has one Loader, so we don't care about the ID.
+        // First, pick the base URI to use depending on whether we are
+        // currently filtering.
+        Uri baseUri;
+        if (mCurFilter != null) {
+            baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                    Uri.encode(mCurFilter));
+        } else {
+            baseUri = Contacts.CONTENT_URI;
+        }
+
+        // Now create and return a CursorLoader that will take care of
+        // creating a Cursor for the data being displayed.
+        String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+                + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+                + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+        return new CursorLoader(getActivity(), baseUri,
+                CONTACTS_SUMMARY_PROJECTION, select, null,
+                Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+    }
+
+    public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+        // Swap the new cursor in.  (The framework will take care of closing the
+        // old cursor once we return.)
+        mAdapter.swapCursor(data);
+    }
+
+    public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+        // This is called when the last Cursor provided to onLoadFinished()
+        // above is about to be closed.  We need to make sure we are no
+        // longer using it.
+        mAdapter.swapCursor(null);
+    }
+}</pre>
+<h3 id="more_examples">Thêm Ví dụ</h3>
+
+<p>Có một vài mẫu khác trong <strong>ApiDemos</strong> để
+minh họa cách sử dụng các trình tải:</p>
+<ul>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a> — Một phiên bản hoàn chỉnh của
+đoạn mã HTML trình bày ở trên.</li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a> — Một ví dụ về cách sử dụng điều chỉnh để giảm
+số truy vấn mà một trình cung cấp nội dung thực hiện khi dữ liệu của nó thay đổi.</li>
+</ul>
+
+<p>Để biết thông tin về việc tải xuống và cài đặt các mẫu SDK, hãy xem phần <a href="http://developer.android.com/resources/samples/get.html"> Tải
+Mẫu</a>. </p>
+
diff --git a/docs/html-intl/intl/vi/guide/components/processes-and-threads.jd b/docs/html-intl/intl/vi/guide/components/processes-and-threads.jd
new file mode 100644
index 0000000..390ca15
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/processes-and-threads.jd
@@ -0,0 +1,411 @@
+page.title=Tiến trình và Luồng
+page.tags=vòng đời, nền
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Trong tài liệu này</h2>
+<ol>
+<li><a href="#Processes">Tiến trình</a>
+  <ol>
+    <li><a href="#Lifecycle">Vòng đời tiến trình</a></li>
+  </ol>
+</li>
+<li><a href="#Threads">Luồng</a>
+  <ol>
+    <li><a href="#WorkerThreads">Luồng trình thực hiện</a></li>
+    <li><a href="#ThreadSafe">Phương pháp an toàn với luồng</a></li>
+  </ol>
+</li>
+<li><a href="#IPC">Truyền thông Liên Tiến trình</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>Khi một thành phần ứng dụng bắt đầu và ứng dụng không có bất kỳ thành phần nào khác
+đang chạy, hệ thống Android sẽ khởi động một tiến trình Linux mới cho ứng dụng bằng một luồng
+thực thi đơn lẻ. Theo mặc định, tất cả thành phần của cùng ứng dụng sẽ chạy trong cùng tiến trình và luồng
+(được gọi là luồng "chính"). Nếu một thành phần ứng dụng bắt đầu và đã tồn tại một tiến trình
+cho ứng dụng đó (bởi một thành phần khác từ ứng dụng đã tồn tại), khi đó thành phần được
+bắt đầu bên trong tiến trình đó và sử dụng cùng luồng thực thi. Tuy nhiên, bạn có thể sắp xếp cho
+các thành phần khác nhau trong ứng dụng của mình để chạy trong các tiến trình riêng biệt, và bạn có thể tạo thêm
+luồng cho bất kỳ tiến trình nào.</p>
+
+<p>Tài liệu này trình bày về cách các tiến trình và luồng vận hành trong một ứng dụng Android.</p>
+
+
+<h2 id="Processes">Tiến trình</h2>
+
+<p>Theo mặc định, tất cả thành phần của cùng ứng dụng sẽ chạy trong cùng tiến trình và hầu hết các ứng dụng
+sẽ không thay đổi điều này. Tuy nhiên, nếu bạn thấy rằng mình cần kiểm soát một thành phần
+cụ thể thuộc về một tiến trình nào đó, bạn có thể làm vậy trong tệp bản kê khai.</p>
+
+<p>Mục nhập bản kê khai đối với mỗi loại phần tử thành phần&mdash;<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>, <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code
+&lt;service&gt;}</a>, <a href="{@docRoot}guide/topics/manifest/receiver-element.html">{@code
+&lt;receiver&gt;}</a>, và <a href="{@docRoot}guide/topics/manifest/provider-element.html">{@code
+&lt;provider&gt;}</a>&mdash;sẽ hỗ trợ một thuộc tính {@code android:process} mà có thể quy định một
+tiến trình mà thành phần đó sẽ chạy trong đó. Bạn có thể đặt thuộc tính này sao cho từng thành phần chạy
+trong chính tiến trình của nó hoặc sao cho một số thành phần chia sẻ một tiến trình trong khi các thành phần khác thì không.  Bạn cũng có thể đặt
+{@code android:process} sao cho các thành phần của những ứng dụng khác nhau chạy trong cùng
+tiến trình&mdash;với điều kiện rằng ứng dụng chia sẻ cùng ID người dùng Linux và được ký bằng cùng các
+chứng chỉ.</p>
+
+<p>Phần tử <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code
+&lt;application&gt;}</a> cũng hỗ trợ một thuộc tính {@code android:process}, để đặt một
+giá trị mặc định áp dụng cho tất cả thành phần.</p>
+
+<p>Android có thể quyết định tắt một tiến trình tại một thời điểm nào đó, khi bộ nhớ thấp và theo yêu cầu của các
+tiến trình khác đang phục vụ người dùng tức thì hơn. Các thành phần
+ứng dụng đang chạy trong tiến trình bị tắt bỏ thì sau đó sẽ bị hủy.  Tiến trình được
+khởi động lại cho những thành phần đó khi lại có việc cho chúng thực hiện.</p>
+
+<p>Khi quyết định bỏ những tiến trình nào, hệ thống Android sẽ cân nhắc tầm quan trọng tương đối so với
+người dùng.  Ví dụ, hệ thống sẵn sàng hơn khi tắt một tiến trình lưu trữ các hoạt động không còn
+hiển thị trên màn hình, so với một tiến trình lưu trữ các hoạt động đang hiển thị. Vì thế, quyết định về việc có
+chấm dứt một tiến trình hay không phụ thuộc vào trạng thái của các thành phần đang chạy trong tiến trình đó. Các quy tắc
+được sử dụng để quyết định sẽ chấm dứt tiến trình nào được trình bày ở bên dưới. </p>
+
+
+<h3 id="Lifecycle">Vòng đời tiến trình</h3>
+
+<p>Hệ thống Android cố gắng duy trì một tiến trình ứng dụng lâu nhất có thể, nhưng
+cuối cùng thì nó cũng cần loại bỏ các tiến trình cũ để lấy lại bộ nhớ cho các tiến trình mới hoặc quan trọng hơn.  Để
+xác định giữ lại những tiến trình nào
+và loại bỏ những tiến trình nào, hệ thống sẽ đặt từng tiến trình vào một "phân cấp tầm quan trọng" dựa trên
+những thành phần đang chạy trong tiến trình và trạng thái của những thành phần đó.  Những tiến trình có tầm quan trọng
+thấp nhất bị loại bỏ trước, rồi đến những tiến trình có tầm quan trọng thấp thứ hai, và cứ thế tiếp tục, miễn là còn cần thiết
+để khôi phục tài nguyên của hệ thống.</p>
+
+<p>Có năm cấp trong phân cấp tầm quan trọng. Danh sách sau trình bày các loại
+tiến trình khác nhau theo thứ tự tầm quan trọng (tiến trình thứ nhất là <em>quan trọng nhất</em> và được
+<em>tắt bỏ sau cùng</em>):</p>
+
+<ol>
+  <li><b>Tiến trình tiền cảnh</b>
+    <p>Một tiến trình được yêu cầu cho việc mà người dùng đang thực hiện.  Một
+      tiến trình được coi là đang trong tiền cảnh nếu bất kỳ điều nào sau đây là đúng:</p>
+
+      <ul>
+        <li>Nó lưu trữ một {@link android.app.Activity} mà người dùng đang tương tác với (phương pháp của {@link
+android.app.Activity}, {@link android.app.Activity#onResume onResume()}, đã được
+gọi).</li>
+
+        <li>Nó lưu trữ một {@link android.app.Service} gắn kết với hoạt động mà người dùng đang
+tương tác với.</li>
+
+        <li>Nó lưu trữ một {@link android.app.Service} đang chạy "trong tiền cảnh"&mdash;mà
+dịch vụ đã gọi {@link android.app.Service#startForeground startForeground()}.
+
+        <li>Nó lưu trữ một {@link android.app.Service} mà đang thực thi một trong các lệnh
+gọi lại của vòng đời của nó ({@link android.app.Service#onCreate onCreate()}, {@link android.app.Service#onStart
+onStart()}, hoặc {@link android.app.Service#onDestroy onDestroy()}).</li>
+
+        <li>Nó lưu trữ một {@link android.content.BroadcastReceiver} mà đang thực thi phương pháp {@link
+        android.content.BroadcastReceiver#onReceive onReceive()} của nó.</li>
+    </ul>
+
+    <p>Nhìn chung, tại bất kỳ thời điểm xác định nào cũng chỉ tồn tại một vài tiến trình tiền cảnh.  Chúng chỉ bị tắt bỏ
+như một giải pháp cuối cùng&mdash;nếu bộ nhớ quá thấp tới mức chúng đều không thể tiếp tục chạy được.  Nhìn chung, tại thời điểm
+đó, thiết bị đã đạt tới trạng thái phân trang bộ nhớ, vì thế việc tắt bỏ một số tiến trình tiền cảnh là
+bắt buộc để đảm bảo giao diện người dùng có phản hồi.</p></li>
+
+  <li><b>Tiến trình hiển thị</b>
+    <p>Một tiến trình mà không có bất kỳ thành phần tiền cảnh nào, nhưng vẫn có thể
+      ảnh hưởng tới nội dung mà người dùng nhìn thấy trên màn hình. Một tiến trình được coi là hiển thị nếu một trong hai
+      điều kiện sau là đúng:</p>
+
+      <ul>
+        <li>Nó lưu trữ một {@link android.app.Activity} mà không nằm trong tiền cảnh, nhưng vẫn
+hiển thị với người dùng (phương pháp {@link android.app.Activity#onPause onPause()} của nó đã được gọi). 
+Điều này có thể xảy ra, ví dụ, nếu hoạt động tiền cảnh đã bắt đầu một hộp thoại, nó cho phép
+hoạt động trước được nhìn thấy phía sau nó.</li>
+
+        <li>Nó lưu trữ một {@link android.app.Service} được gắn kết với một hoạt động
+hiển thị (hoặc tiền cảnh).</li>
+      </ul>
+
+      <p>Một tiến trình tiền cảnh được coi là cực kỳ quan trọng và sẽ không bị tắt bỏ trừ khi làm vậy
+là bắt buộc để giữ cho tất cả tiến trình tiền cảnh chạy. </p>
+    </li>
+
+  <li><b>Tiến trình dịch vụ</b>
+    <p>Một tiến trình mà đang chạy một dịch vụ đã được bắt đầu bằng phương pháp {@link
+android.content.Context#startService startService()} và không rơi vào một trong hai
+thể loại cao hơn. Mặc dù tiến trình dịch vụ không trực tiếp gắn với bất kỳ thứ gì mà người dùng thấy, chúng
+thường đang làm những việc mà người dùng quan tâm đến (chẳng hạn như phát nhạc chạy ngầm hoặc
+tải xuống dữ liệu trên mạng), vì thế hệ thống vẫn giữ chúng chạy trừ khi không có đủ bộ nhớ để
+duy trì chúng cùng với tất cả tiến trình tiền cảnh và hiển thị. </p>
+  </li>
+
+  <li><b>Tiến trình nền</b>
+    <p>Một tiến trình lưu trữ một hoạt động mà hiện tại không hiển thị với người dùng (phương pháp
+{@link android.app.Activity#onStop onStop()} của hoạt động đã được gọi). Những tiến trình này không có tác động
+trực tiếp tới trải nghiệm người dùng, và hệ thống có thể bỏ chúng đi vào bất cứ lúc nào để lấy lại bộ nhớ cho một
+tiến trình tiền cảnh,
+hiển thị hoặc dịch vụ. Thường thì có nhiều tiến trình ngầm đang chạy, vì thế chúng được giữ
+trong một danh sách LRU (ít sử dụng gần đây nhất) để đảm bảo rằng tiến trình với hoạt động
+mà người dùng nhìn thấy gần đây nhất là tiến trình cuối cùng sẽ bị tắt bỏ. Nếu một hoạt động triển khai các phương pháp vòng đời của nó
+đúng cách, và lưu trạng thái hiện tại của nó, việc tắt bỏ tiến trình của hoạt động đó sẽ không có ảnh hưởng có thể thấy được tới
+trải nghiệm người dùng, vì khi người dùng điều hướng lại hoạt động đó, hoạt động sẽ khôi phục
+tất cả trạng thái hiển thị của nó. Xem tài liệu <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Hoạt động</a>
+để biết thông tin về việc lưu và khôi phục trạng thái.</p>
+  </li>
+
+  <li><b>Tiến trình trống</b>
+    <p>Một tiến trình mà không giữ bất kỳ thành phần ứng dụng hiện hoạt nào.  Lý do duy nhất để giữ cho
+kiểu tiến trình này hoạt động đó là nhằm mục đích lưu bộ nhớ ẩn, để cải thiện thời gian khởi động vào lần tới khi thành phần
+cần chạy trong nó.  Hệ thống thường tắt bỏ những tiến trình này để cân bằng tài nguyên tổng thể
+của hệ thống giữa các bộ đệm ẩn tiến trình và bộ đệm ẩn nhân liên quan.</p>
+  </li>
+</ol>
+
+
+  <p>Android xếp hạng một tiến trình ở mức cao nhất mà nó có thể, dựa vào tầm quan trọng của
+các thành phần đang hoạt động trong tiến trình đó.  Ví dụ, nếu một tiến trình lưu giữ một dịch vụ và hoạt động
+hiển thị, tiến trình đó sẽ được xếp hạng là tiến trình hiển thị chứ không phải tiến trình dịch vụ.</p>
+
+  <p>Ngoài ra, xếp hạng của một tiến trình có thể tăng bởi các tiến trình khác phụ thuộc vào
+nó&mdash;một tiến trình mà đang phục vụ một tiến trình khác không thể bị xếp thấp hơn tiến trình mà nó
+đang phục vụ. Ví dụ, nếu một trình cung cấp nội dung trong tiến trình A đang phục vụ một máy khách trong tiến trình B, hoặc nếu một
+dịch vụ trong tiến trình A được gắn kết với một thành phần trong tiến trình B, ít nhất tiến trình A sẽ luôn được coi
+là quan trọng như tiến trình B.</p>
+
+  <p>Do một tiến trình đang chạy một dịch vụ được xếp hạng cao hơn một tiến trình có các hoạt động nền,
+một hoạt động mà khởi động một thao tác nhấp giữ có thể làm tốt việc khởi động một <a href="{@docRoot}guide/components/services.html">dịch vụ</a> cho thao tác đó, thay vì
+chỉ tạo một luồng trình thực hiện&mdash;nhất là khi thao tác đó sẽ có thể diễn ra lâu hơn hoạt động.
+Ví dụ, một hoạt động mà đang tải một ảnh lên một trang web nên bắt đầu một dịch vụ để thực hiện
+việc tải lên sao cho việc tải lên có thể tiếp tục chạy ngầm ngay cả khi người dùng rời khỏi hoạt động.
+Việc sử dụng một dịch vụ sẽ bảo đảm rằng thao tác ít nhất sẽ có mức ưu tiên như "tiến trình dịch vụ",
+không phụ thuộc vào điều xảy ra với hoạt động. Đây cũng chính là lý do hàm nhận quảng bá nên
+sử dụng dịch vụ thay vì chỉ đưa các thao tác tốn thời gian vào một luồng.</p>
+
+
+
+
+<h2 id="Threads">Luồng</h2>
+
+<p>Khi một ứng dụng được khởi chạy, hệ thống sẽ tạo một luồng thực thi cho ứng dụng,
+gọi là luồng "chính." Luồng này rất quan trọng bởi nó phụ trách phân phối các sự kiện tới
+những widget giao diện người dùng phù hợp, bao gồm các sự kiện vẽ. Nó cũng là luồng mà
+trong đó ứng dụng của bạn tương tác với các thành phần từ bộ công cụ UI của Android (các thành phần từ các gói {@link
+android.widget} và {@link android.view}). Như vậy, luồng chính đôi khi cũng được gọi là
+luồng UI.</p>
+
+<p>Hệ thống <em>không</em> tạo một luồng riêng cho từng thực thể của thành phần. Tất cả
+thành phần chạy trong cùng tiến trình đều được khởi tạo trong luồng UI, và các lệnh gọi của hệ thống tới
+từng thành phần được phân phối từ luồng đó. Hệ quả là các phương pháp hồi đáp lại lệnh
+gọi lại của hệ thống (chẳng hạn như {@link android.view.View#onKeyDown onKeyDown()} để báo cáo hành động của người dùng
+hoặc một phương pháp gọi lại vòng đời) sẽ luôn chạy trong luồng UI của tiến trình.</p>
+
+<p>Ví dụ, khi người dùng chạm vào một nút trên màn hình, luồng UI của ứng dụng của bạn sẽ phân phối
+sự kiện chạm tới widget, đến lượt mình, widget sẽ đặt trạng thái được nhấn và đăng một yêu cầu vô hiệu hóa tới 
+hàng đợi sự kiện. Luồng UI loại yêu cầu khỏi hàng đợi và thông báo với widget rằng nó nên tự vẽ lại
+.</p>
+
+<p>Khi ứng dụng của bạn thực hiện công việc nặng để hồi đáp tương tác của người dùng, mô hình luồng đơn nhất
+này có thể dẫn đến hiệu năng kém trừ khi bạn triển khai ứng dụng của mình một cách phù hợp. Cụ thể, nếu
+mọi thứ đang xảy ra trong luồng UI, việc thực hiện những thao tác kéo dài như truy cập mạng hay
+truy vấn cơ sở dữ liệu sẽ chặn toàn bộ UI. Khi luồng bị chặn, không sự kiện nào có thể được phân phối,
+bao gồm cả sự kiện vẽ. Từ phương diện của người dùng, ứng dụng
+có vẻ như đang bị treo. Thậm chí tệ hơn, nếu luồng UI bị chặn trong lâu hơn vài giây
+(hiện tại là khoảng 5 giây), người dùng sẽ được hiển thị hộp thoại không phổ biến "<a href="http://developer.android.com/guide/practices/responsiveness.html">ứng dụng
+không phản hồi</a>" (ANR). Khi đó, người dùng có thể quyết định thoát ứng dụng của mình và gỡ cài đặt nó
+nếu họ không thoải mái.</p>
+
+<p>Ngoài ra, bộ công cụ UI của Android <em>không</em> an toàn với luồng. Vì vậy, bạn không được thao tác
+UI của mình từ một luồng trình thực hiện&mdash;bạn phải thực hiện tất cả thao tác đối với giao diện người dùng của mình từ luồng
+UI. Vì vậy, có hai quy tắc đơn giản đối với mô hình luồng đơn lẻ của Android:</p>
+
+<ol>
+<li>Không được chặn luồng UI
+<li>Không được truy cập bộ công cụ UI của Android từ bên ngoài luồng UI
+</ol>
+
+<h3 id="WorkerThreads">Luồng trình thực hiện</h3>
+
+<p>Vì mô hình luồng đơn lẻ nêu trên, điều thiết yếu đối với tính phản hồi của UI
+ứng dụng của bạn đó là bạn không được chặn luồng UI. Nếu bạn có thao tác cần thực hiện
+không mang tính chất tức thời, bạn nên đảm bảo thực hiện chúng trong các luồng riêng (luồng “chạy ngầm" hoặc
+"trình thực hiện").</p>
+
+<p>Ví dụ, bên dưới là một số mã cho một đối tượng theo dõi nhấp có chức năng tải xuống một hình ảnh từ một luồng
+riêng và hiển thị nó trong một {@link android.widget.ImageView}:</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            Bitmap b = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.setImageBitmap(b);
+        }
+    }).start();
+}
+</pre>
+
+<p>Thoạt đầu, điều này có vẻ như diễn ra ổn thỏa, vì nó tạo một luồng mới để xử lý thao tác
+mạng. Tuy nhiên, nó vi phạm quy tắc thứ hai của mô hình luồng đơn nhất: <em>không được truy cập
+bộ công cụ UI của Android từ bên ngoài luồng UI</em>&mdash;mẫu này sửa đổi {@link
+android.widget.ImageView} từ luồng trình thực hiện thay vì từ luồng UI. Điều này có thể dẫn đến
+hành vi bất ngờ, không được định nghĩa mà có thể gây khó khăn và tốn thời gian theo dõi.</p>
+
+<p>Để sửa vấn đề này, Android giới thiệu một vài cách để truy cập luồng UI từ các luồng
+khác. Sau đây là một danh sách các phương pháp có thể trợ giúp:</p>
+
+<ul>
+<li>{@link android.app.Activity#runOnUiThread(java.lang.Runnable)
+Activity.runOnUiThread(Runnable)}</li>
+<li>{@link android.view.View#post(java.lang.Runnable) View.post(Runnable)}</li>
+<li>{@link android.view.View#postDelayed(java.lang.Runnable, long) View.postDelayed(Runnable,
+long)}</li>
+</ul>
+
+<p>Ví dụ, bạn có thể sửa mã trên bằng cách sử dụng phương pháp {@link
+android.view.View#post(java.lang.Runnable) View.post(Runnable)}:</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            final Bitmap bitmap = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.post(new Runnable() {
+                public void run() {
+                    mImageView.setImageBitmap(bitmap);
+                }
+            });
+        }
+    }).start();
+}
+</pre>
+
+<p>Giờ thì triển khai này đã an toàn với luồng: thao tác mạng được thực hiện từ một luồng riêng
+trong khi {@link android.widget.ImageView} được thao tác từ luồng UI.</p>
+
+<p>Tuy nhiên, khi mà sự phức tạp của thao tác tăng lên, kiểu mã này có thể bị phức tạp hóa và
+khó duy trì. Để xử lý những tương tác phức tạp hơn bằng một luồng trình thực hiện, bạn có thể cân nhắc
+sử dụng một {@link android.os.Handler} trong luồng trình thực hiện của mình, để xử lý các thư được chuyển từ luồng
+UI. Mặc dù vậy, giải pháp tốt nhất là mở rộng lớp {@link android.os.AsyncTask},
+điều này sẽ đơn giản hóa việc thực thi các tác vụ của luồng trình thực hiện cần tương tác với UI.</p>
+
+
+<h4 id="AsyncTask">Sử dụng AsyncTask</h4>
+
+<p>{@link android.os.AsyncTask} cho phép bạn thực hiện công việc không đồng bộ trên giao diện
+người dùng của mình. Nó thực hiện các thao tác chặn trong một luồng trình thực hiện rồi phát hành kết quả trên
+luồng UI mà không yêu cầu bạn tự xử lý các luồng và/hoặc trình xử lý.</p>
+
+<p>Để sử dụng nó, bạn phải tạo lớp con {@link android.os.AsyncTask} và triển khai phương pháp gọi lại {@link
+android.os.AsyncTask#doInBackground doInBackground()}, phương pháp này chạy trong một tập hợp
+các luồng chạy ngầm. Để cập nhật UI của mình, bạn nên triển khai {@link
+android.os.AsyncTask#onPostExecute onPostExecute()}, nó sẽ mang lại kết quả từ {@link
+android.os.AsyncTask#doInBackground doInBackground()} và chạy trong luồng UI, vì thế bạn có thể nâng cấp
+UI của mình một cách an toàn. Sau đó, bạn có thể chạy tác vụ bằng cách gọi {@link android.os.AsyncTask#execute execute()}
+từ luồng UI.</p>
+
+<p>Ví dụ, bạn có thể triển khai ví dụ trước bằng cách sử dụng {@link android.os.AsyncTask} theo
+cách này:</p>
+
+<pre>
+public void onClick(View v) {
+    new DownloadImageTask().execute("http://example.com/image.png");
+}
+
+private class DownloadImageTask extends AsyncTask&lt;String, Void, Bitmap&gt; {
+    /** The system calls this to perform work in a worker thread and
+      * delivers it the parameters given to AsyncTask.execute() */
+    protected Bitmap doInBackground(String... urls) {
+        return loadImageFromNetwork(urls[0]);
+    }
+    
+    /** The system calls this to perform work in the UI thread and delivers
+      * the result from doInBackground() */
+    protected void onPostExecute(Bitmap result) {
+        mImageView.setImageBitmap(result);
+    }
+}
+</pre>
+
+<p>Lúc này, UI an toàn và mã đơn giản hơn, vì nó tách riêng công việc thành
+phần sẽ được thực hiện trên một luồng trình thực hiện và phần sẽ được thực hiện trên luồng UI.</p>
+
+<p>Bạn nên đọc tài liệu tham khảo {@link android.os.AsyncTask}để hiểu đầy đủ về
+cách sử dụng lớp này, nhưng sau đây là phần trình bày tổng quan nhanh về hoạt động của nó:</p>
+
+<ul>
+<li>Bạn có thể quy định loại tham số, các giá trị tiến độ, và giá trị
+cuối cùng của tác vụ, bằng cách sử dụng các kiểu chung</li>
+<li>Phương pháp {@link android.os.AsyncTask#doInBackground doInBackground()} sẽ tự động thực thi
+trên một luồng trình thực hiện</li>
+<li>{@link android.os.AsyncTask#onPreExecute onPreExecute()}, {@link
+android.os.AsyncTask#onPostExecute onPostExecute()}, và {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} đều được gọi ra trên luồng UI</li>
+<li>Giá trị được trả về bởi {@link android.os.AsyncTask#doInBackground doInBackground()} được gửi tới
+{@link android.os.AsyncTask#onPostExecute onPostExecute()}</li>
+<li>Bạn có thể gọi {@link android.os.AsyncTask#publishProgress publishProgress()} vào bất cứ lúc nào trong {@link
+android.os.AsyncTask#doInBackground doInBackground()} để thực thi {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} trên luồng UI</li>
+<li>Bạn có thể hủy bỏ tác vụ vào bất cứ lúc nào từ bất kỳ luồng nào</li>
+</ul>
+
+<p class="caution"><strong>Chú ý:</strong> Một vấn đề khác mà bạn có thể gặp phải khi sử dụng một luồng
+trình thực hiện đó là những lần khởi động lại bất ngờ trong hoạt động của bạn do một <a href="{@docRoot}guide/topics/resources/runtime-changes.html">thay đổi trong cấu hình thời gian chạy</a>
+(chẳng hạn như khi người dùng thay đổi hướng màn hình), điều này có thể làm hỏng luồng trình thực hiện của bạn. Để
+xem cách bạn có thể duy trì tác vụ của mình khi diễn ra một trong những lần khởi động lại này và cách hủy bỏ tác vụ cho phù hợp
+khi hoạt động bị hủy, hãy xem mã nguồn cho ứng dụng mẫu <a href="http://code.google.com/p/shelves/">Shelves</a>.</p>
+
+
+<h3 id="ThreadSafe">Phương pháp an toàn với luồng</h3>
+
+<p> Trong một số tình huống, các phương pháp bạn triển khai có thể được gọi ra từ nhiều hơn một luồng, và vì thế
+phải được ghi sao cho an toàn với luồng. </p>
+
+<p>Điều này chủ yếu đúng với các phương pháp mà có thể được gọi từ xa&mdash;chẳng hạn như các phương pháp trong một <a href="{@docRoot}guide/components/bound-services.html">dịch vụ gắn kết</a>. Khi một lệnh gọi trên một
+phương pháp được triển khai trong một {@link android.os.IBinder} khởi đầu trong cùng tiến trình mà
+{@link android.os.IBinder IBinder} đang chạy, phương pháp đó sẽ được thực thi trong luồng của hàm gọi.
+Tuy nhiên, khi lệnh gọi khởi đầu trong một tiến trình khác, phương pháp sẽ được thực thi trong một luồng được chọn từ
+một tập hợp các luồng mà hệ thống duy trì trong cùng tiến trình như {@link android.os.IBinder
+IBinder} (nó không được thực thi trong luồng UI của tiến trình).  Ví dụ, trong khi phương pháp
+{@link android.app.Service#onBind onBind()} của dịch vụ sẽ được gọi từ luồng UI của tiến trình
+của dịch vụ, các phương pháp được triển khai trong đối tượng mà {@link android.app.Service#onBind
+onBind()} trả về (ví dụ, một lớp con triển khai các phương pháp RPC) sẽ được gọi từ các luồng
+trong tập hợp. Vì một dịch vụ có thể có nhiều hơn một máy khách, nhiều hơn một luồng tập hợp có thể sử dụng
+cùng một phương pháp {@link android.os.IBinder IBinder} tại cùng một thời điểm.  Vì thế, các phương pháp {@link android.os.IBinder
+IBinder} phải được triển khai sao cho an toàn với luồng.</p>
+
+<p> Tương tự, một trình cung cấp nội dung có thể nhận các yêu cầu dữ liệu khởi nguồn trong các tiến trình khác.
+Mặc dù các lớp {@link android.content.ContentResolver} và {@link android.content.ContentProvider}
+ẩn đi chi tiết về cách truyền thông liên tiến trình được quản lý, các phương pháp {@link
+android.content.ContentProvider} hồi đáp những yêu cầu đó&mdash;các phương pháp {@link
+android.content.ContentProvider#query query()}, {@link android.content.ContentProvider#insert
+insert()}, {@link android.content.ContentProvider#delete delete()}, {@link
+android.content.ContentProvider#update update()}, và {@link android.content.ContentProvider#getType
+getType()}&mdash;được gọi từ một tập hợp luồng trong tiến trình của trình cung cấp nội dung, chứ không phải luồng
+UI cho tiến trình đó.  Vì những phương pháp này có thể được gọi từ bất kỳ số lượng luồng nào tại
+cùng thời điểm, chúng cũng phải được triển khai sao cho an toàn với luồng. </p>
+
+
+<h2 id="IPC">Truyền thông Liên Tiến trình</h2>
+
+<p>Android cung cấp một cơ chế cho truyền thông liên tiến trình (IPC) bằng cách sử dụng các lệnh gọi thủ tục từ xa
+(RPC), trong đó một phương pháp được gọi bởi một hoạt động hoặc thành phần ứng dụng khác, nhưng được thực thi
+từ xa (trong một tiến trình khác), với bất kỳ kết quả nào được trả về
+hàm gọi. Điều này đòi hỏi việc phân tích một lệnh gọi phương pháp và dữ liệu của nó về cấp độ mà hệ điều hành
+có thể hiểu được, truyền phát nó từ tiến trình và khoảng trống địa chỉ cục bộ đến tiến trình và
+khoảng trống địa chỉ từ xa, sau đó tổ hợp lại và phát hành lại lệnh gọi ở đó.  Sau đó, các giá trị trả về được
+phát theo hướng ngược lại.  Android cung cấp tất cả mã để thực hiện những giao tác
+IPC này, vì thế bạn có thể tập trung vào việc định nghĩa và triển khai giao diện lập trình RPC. </p>
+
+<p>Để thực hiện IPC, ứng dụng của bạn phải liên kết với một dịch vụ, bằng cách sử dụng {@link
+android.content.Context#bindService bindService()}. Để biết thêm thông tin, hãy xem hướng dẫn cho nhà phát triển <a href="{@docRoot}guide/components/services.html">Dịch vụ</a>.</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For information about how to perform work in the background for an indefinite period of time
+(without a user interface), continue with the <b><a
+href="{@docRoot}guide/components/services.html">Services</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/vi/guide/components/recents.jd b/docs/html-intl/intl/vi/guide/components/recents.jd
new file mode 100644
index 0000000..0a17614
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/recents.jd
@@ -0,0 +1,256 @@
+page.title=Màn hình Tổng quan
+page.tags="recents","overview"
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>Trong tài liệu này</h2>
+  <ol>
+    <li><a href="#adding">Thêm Tác vụ vào Màn hình Tổng quan</a>
+      <ol>
+        <li><a href="#flag-new-doc">Sử dụng cờ Ý định để thêm một tác vụ</a></li>
+        <li><a href="#attr-doclaunch">Sử dụng thuộc tính Hoạt động để thêm một tác vụ</a></li>
+      </ol>
+    </li>
+    <li><a href="#removing">Loại bỏ Tác vụ</a>
+      <ol>
+        <li><a href="#apptask-remove">Sử dụng lớp AppTask để loại bỏ tác vụ</a></li>
+        <li><a href="#retain-finished">Giữ lại tác vụ đã hoàn thành</a></li>
+      </ol>
+    </li>
+  </ol>
+
+  <h2>Lớp khóa</h2>
+  <ol>
+    <li>{@link android.app.ActivityManager.AppTask}</li>
+    <li>{@link android.content.Intent}</li>
+  </ol>
+
+  <h2>Mã mẫu</h2>
+  <ol>
+    <li><a href="{@docRoot}samples/DocumentCentricApps/index.html">Ứng dụng tập trung vào tài liệu</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>Màn hình tổng quan (còn được gọi là màn hình gần đây, danh sách tác vụ gần đây, hay ứng dụng gần đây)
+là một UI cấp hệ thống liệt kê các <a href="{@docRoot}guide/components/activities.html">
+hoạt động</a> và <a href="{@docRoot}guide/components/tasks-and-back-stack.html">tác vụ</a> mới được truy cập gần đây. Người dùng
+có thể điều hướng qua danh sách này và chọn một tác vụ để tiếp tục, hoặc người dùng có thể loại bỏ một tác vụ khỏi
+danh sách bằng cách trượt nhanh nó đi. Với việc phát hành Android 5.0 (API mức 21), nhiều thực thể của
+hoạt động tương tự chứa các tài liệu khác nhau có thể xuất hiện dưới dạng các tác vụ trong màn hình tổng quan. Ví dụ,
+Google Drive có thể có một tác vụ cho từng tài liệu trong một vài tài liệu Google. Mỗi tài liệu xuất hiện thành một
+tác vụ trong màn hình tổng quan.</p>
+
+<img src="{@docRoot}images/components/recents.png" alt="" width="284" />
+<p class="img-caption"><strong>Hình 1.</strong> Màn hình tổng quan hiển thị ba tài liệu Google Drive
+, mỗi tài liệu được biểu diễn như một tác vụ riêng.</p>
+
+<p>Thường thì bạn sẽ cho phép hệ thống định nghĩa cách tác vụ và
+hoạt động của mình được biểu diễn như thế nào trong màn hình tổng quan, và bạn không cần sửa đổi hành vi này.
+Tuy nhiên, ứng dụng của bạn có thể xác định cách thức và thời gian các hoạt động xuất hiện trong màn hình tổng quan. Lớp
+{@link android.app.ActivityManager.AppTask} cho phép bạn quản lý tác vụ, và cờ hoạt động của
+lớp {@link android.content.Intent} cho phép bạn quy định khi nào thì một hoạt động được thêm hoặc loại bỏ khỏi
+màn hình tổng quan. Đồng thời, thuộc tính <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> cho phép bạn đặt hành vi trong bản kê khai.</p>
+
+<h2 id="adding">Thêm Tác vụ vào Màn hình Tổng quan</h2>
+
+<p>Sử dụng cờ của lớp {@link android.content.Intent} để thêm một tác vụ cho phép kiểm soát nhiều hơn
+đối với thời điểm và cách thức một tài liệu được mở hoặc mở lại trong màn hình tổng quan. Khi sử dụng các thuộc tính
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, bạn có thể chọn giữa luôn mở tài liệu trong một tác vụ mới hoặc sử dụng lại một
+tác vụ hiện có cho tài liệu.</p>
+
+<h3 id="flag-new-doc">Sử dụng cờ Ý định để thêm một tác vụ</h3>
+
+<p>Khi tạo một tài liệu mới cho hoạt động của bạn, bạn gọi phương pháp
+{@link android.app.ActivityManager.AppTask#startActivity(android.content.Context, android.content.Intent, android.os.Bundle) startActivity()}
+của lớp {@link android.app.ActivityManager.AppTask}, chuyển cho nó ý định có
+chức năng khởi chạy hoạt động. Để chèn một ngắt lô-gic sao cho hệ thống coi hoạt động của bạn như một tác vụ
+mới trong màn hình tổng quan, hãy chuyển cờ {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+trong phương pháp {@link android.content.Intent#addFlags(int) addFlags()} của {@link android.content.Intent}
+có chức năng khởi chạy hoạt động.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Cờ {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+thay thế cờ {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET},
+được rút bớt kể từ phiên bản Android 5.0 (API mức 21).</p>
+
+<p>Nếu bạn đặt cờ {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} khi tạo
+tài liệu mới, hệ thống sẽ luôn tạo một tác vụ mới lấy hoạt động mục tiêu đó làm gốc.
+Thiết đặt này cho phép mở cùng tài liệu trong nhiều hơn một tác vụ. Đoạn mã sau thể hiện
+cách mà hoạt động chính thực hiện điều này:</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+public void createNewDocument(View view) {
+      final Intent newDocumentIntent = newDocumentIntent();
+      if (useMultipleTasks) {
+          newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
+      }
+      startActivity(newDocumentIntent);
+  }
+
+  private Intent newDocumentIntent() {
+      boolean useMultipleTasks = mCheckbox.isChecked();
+      final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+      newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT);
+      newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+      return newDocumentIntent;
+  }
+
+  private static int incrementAndGet() {
+      Log.d(TAG, "incrementAndGet(): " + mDocumentCounter);
+      return mDocumentCounter++;
+  }
+}
+</pre>
+
+<p class="note"><strong>Lưu ý:</strong> Các hoạt động được khởi chạy bằng cờ {@code FLAG_ACTIVITY_NEW_DOCUMENT}
+phải có giá trị thuộc tính {@code android:launchMode="standard"} (mặc định) được đặt trong
+bản kê khai.</p>
+
+<p>Khi hoạt động chính khởi chạy một hoạt động mới, hệ thống sẽ tìm kiếm thông qua các tác vụ hiện tại để
+xem tác vụ nào có ý định khớp với tên thành phần ý định và dữ liệu Ý định cho hoạt động đó. Nếu tác vụ
+không được tìm thấy, hoặc ý định chứa cờ {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}
+thì một tác vụ mới sẽ được tạo lấy hoạt động làm gốc. Nếu tìm thấy, nó sẽ mang tác vụ đó
+tới phía trước và chuyển ý định mới tới {@link android.app.Activity#onNewIntent onNewIntent()}.
+Hoạt động mới sẽ nhận ý định và tạo một tài liệu mới trong màn hình tổng quan, như trong ví dụ
+sau:</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+&#64;Override
+protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_new_document);
+    mDocumentCount = getIntent()
+            .getIntExtra(DocumentCentricActivity.KEY_EXTRA_NEW_DOCUMENT_COUNTER, 0);
+    mDocumentCounterTextView = (TextView) findViewById(
+            R.id.hello_new_document_text_view);
+    setDocumentCounterText(R.string.hello_new_document_counter);
+}
+
+&#64;Override
+protected void onNewIntent(Intent intent) {
+    super.onNewIntent(intent);
+    /* If FLAG_ACTIVITY_MULTIPLE_TASK has not been used, this activity
+    is reused to create a new document.
+     */
+    setDocumentCounterText(R.string.reusing_document_counter);
+}
+</pre>
+
+
+<h3 id="#attr-doclaunch">Sử dụng thuộc tính hoạt động để thêm một tác vụ</h3>
+
+<p>Một hoạt động cũng có thể quy định trong bản kê khai của nó rằng nó luôn khởi chạy vào một tác vụ mới bằng cách sử dụng
+thuộc tính <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, <a href="{@docRoot}guide/topics/manifest/activity-element.html#dlmode">
+{@code android:documentLaunchMode}</a>. Thuộc tính này có bốn giá trị tạo ra hiệu ứng
+sau khi người dùng mở một tài liệu bằng ứng dụng:</p>
+
+<dl>
+  <dt>"{@code intoExisting}"</dt>
+  <dd>Hoạt động sử dụng lại một tác vụ hiện có cho tài liệu. Điều này giống như khi thiết đặt cờ
+  {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} mà <em>không</em> thiết đặt cờ
+  {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}, như được mô tả trong phần
+  <a href="#flag-new-doc">Sử dụng cờ Ý định để thêm một tác vụ</a> bên trên.</dd>
+
+  <dt>"{@code always}"</dt>
+  <dd>Hoạt động tạo một tác vụ mới cho tài liệu, ngay cả khi tài liệu đã được mở. Sử dụng
+  giá trị này giống như thiết đặt cả cờ {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+  và {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}.</dd>
+
+  <dt>"{@code none”}"</dt>
+  <dd>Hoạt động không tạo một tác vụ mới cho tài liệu. Màn hình tổng quan xử lý hoạt động
+  như theo mặc định: nó hiển thị một tác vụ đơn lẻ cho ứng dụng, tác vụ này
+  tiếp tục từ bất kỳ hoạt động nào mà người dùng đã gọi ra cuối cùng.</dd>
+
+  <dt>"{@code never}"</dt>
+  <dd>Hoạt động không tạo một tác vụ mới cho tài liệu. Việc thiết đặt giá trị này sẽ khống chế
+  hành vi của {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+  và cờ {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}, nếu một trong hai được đặt
+  trong ý định, và màn hình tổng quan sẽ hiển thị một tác vụ đơn lẻ cho ứng dụng, tác vụ này tiếp tục từ
+  bất kỳ hoạt động nào mà người dùng đã gọi ra cuối cùng.</dd>
+</dl>
+
+<p class="note"><strong>Lưu ý:</strong> Đối với những giá trị ngoài {@code none} và {@code never} 
+hoạt động phải được định nghĩa bằng {@code launchMode="standard"}. Nếu thuộc tính này không được quy định thì
+{@code documentLaunchMode="none"} sẽ được sử dụng.</p>
+
+<h2 id="removing">Loại bỏ Tác vụ</h2>
+
+<p>Theo mặc định, một tác vụ tài liệu sẽ tự động được loại bỏ khỏi màn hình tổng quan khi hoạt động của nó
+hoàn thành. Bạn có thể khống chế hành vi này bằng lớp {@link android.app.ActivityManager.AppTask},
+bằng một cờ {@link android.content.Intent}, hoặc bằng một thuộc tính<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code>.</p>
+
+<p>Bạn có thể luôn loại trừ hoàn toàn một tác vụ khỏi màn hình tổng quan bằng cách thiết đặt thuộc tính 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, <a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">
+{@code android:excludeFromRecents}</a> thành {@code true}.</p>
+
+<p>Bạn có thể thiết đặt số lượng tác vụ tối đa mà ứng dụng của bạn có thể bao gồm trong màn hình tổng quan bằng cách đặt thuộc tính
+ <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+ <a href="{@docRoot}guide/topics/manifest/activity-element.html#maxrecents">{@code android:maxRecents}
+</a> thành một giá trị số nguyên. Mặc định là 16. Khi đạt được số tác vụ tối đa,
+tác vụ ít sử dụng gần đây nhất sẽ bị loại bỏ khỏi màn hình tổng quan. Giá trị tối đa {@code android:maxRecents}
+bằng 50 (25 trên các thiết bị có bộ nhớ thấp); giá trị thấp hơn 1 không hợp lệ.</p>
+
+<h3 id="#apptask-remove">Sử dụng lớp AppTask để loại bỏ tác vụ</h3>
+
+<p>Trong hoạt động mà tạo một tác vụ mới trong màn hình tổng quan, bạn có thể
+quy định khi nào thì loại bỏ tác vụ và hoàn thành tất cả các hoạt động gắn liền với nó bằng cách gọi
+phương pháp {@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()}.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+NewDocumentActivity.java</a></p>
+<pre>
+public void onRemoveFromRecents(View view) {
+    // The document is no longer needed; remove its task.
+    finishAndRemoveTask();
+}
+</pre>
+
+<p class="note"><strong>Lưu ý:</strong> Sử dụng phương pháp
+{@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()}
+sẽ khống chế việc sử dụng tag {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS},
+như được trình bày ở bên dưới.</p>
+
+<h3 id="#retain-finished">Giữ lại tác vụ đã hoàn thành</h3>
+
+<p>Nếu bạn muốn giữ lại một tác vụ trong màn hình tổng quan, ngay cả khi hoạt động của nó đã hoàn thành, hãy chuyển
+cờ {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} trong phương pháp
+{@link android.content.Intent#addFlags(int) addFlags()} của Ý định mà khởi chạy hoạt động.</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+private Intent newDocumentIntent() {
+    final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+    newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT |
+      android.content.Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS);
+    newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+    return newDocumentIntent;
+}
+</pre>
+
+<p>Để đạt được cùng kết quả như vậy, hãy đặt thuộc tính
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#autoremrecents">
+{@code android:autoRemoveFromRecents}</a> thành {@code false}. Giá trị mặc định bằng {@code true}
+đối với các hoạt động tài liệu, và {@code false} đối với các hoạt động thông thường. Việc sử dụng thuộc tính này sẽ khống chế
+cờ {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS}, như đã trình bày trước đó.</p>
+
+
+
+
+
+
+
diff --git a/docs/html-intl/intl/vi/guide/components/services.jd b/docs/html-intl/intl/vi/guide/components/services.jd
new file mode 100644
index 0000000..9e3e6c7
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/services.jd
@@ -0,0 +1,813 @@
+page.title=Dịch vụ
+@jd:body
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>Trong tài liệu này</h2>
+<ol>
+<li><a href="#Basics">Nội dung Cơ bản</a></li>
+<ol>
+  <li><a href="#Declaring">Khai báo một dịch vụ trong bản kê khai</a></li>
+</ol>
+<li><a href="#CreatingAService">Tạo một Dịch vụ được Bắt đầu</a>
+  <ol>
+    <li><a href="#ExtendingIntentService">Mở rộng lớp IntentService</a></li>
+    <li><a href="#ExtendingService">Mở rộng lớp Dịch vụ</a></li>
+    <li><a href="#StartingAService">Bắt đầu một dịch vụ</a></li>
+    <li><a href="#Stopping">Dừng một dịch vụ</a></li>
+  </ol>
+</li>
+<li><a href="#CreatingBoundService">Tạo một Dịch vụ Gắn kết</a></li>
+<li><a href="#Notifications">Gửi Thông báo tới Người dùng</a></li>
+<li><a href="#Foreground">Chạy một Dịch vụ trong Tiền cảnh</a></li>
+<li><a href="#Lifecycle">Quản lý Vòng đời của một Dịch vụ</a>
+<ol>
+  <li><a href="#LifecycleCallbacks">Triển khai gọi lại vòng đời</a></li>
+</ol>
+</li>
+</ol>
+
+<h2>Lớp khóa</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.app.IntentService}</li>
+</ol>
+
+<h2>Mẫu</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.html">{@code
+      ServiceStartArguments}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>Xem thêm</h2>
+<ol>
+<li><a href="{@docRoot}guide/components/bound-services.html">Dịch vụ Gắn kết</a></li>
+</ol>
+
+</div>
+
+
+<p>{@link android.app.Service} là một thành phần ứng dụng có khả năng thực hiện
+các thao tác chạy kéo dài trong nền và không cung cấp giao diện người dùng. Một
+thành phần ứng dụng khác có thể bắt đầu một dịch vụ và nó sẽ tiếp tục chạy ngầm ngay cả khi người dùng
+chuyển sang một ứng dụng khác. Ngoài ra, một thành phần có thể gắn kết với một dịch vụ để
+tương tác với nó và thậm chí thực hiện truyền thông liên tiến trình (IPC). Ví dụ, một dịch vụ có thể
+xử lý các giao dịch mạng, phát nhạc, thực hiện I/O tệp, hoặc tương tác với một trình cung cấp nội dung, tất cả
+đều xuất phát từ nền.</p>
+
+<p>Về cơ bản, một dịch vụ có thể có hai dạng:</p>
+
+<dl>
+  <dt>Được bắt đầu</dt>
+  <dd>Dịch vụ có dạng "được bắt đầu" khi một thành phần ứng dụng (chẳng hạn như một hoạt động) bắt đầu nó bằng cách
+gọi {@link android.content.Context#startService startService()}. Sau khi được bắt đầu, dịch vụ
+có thể chạy ngầm vô thời hạn, ngay cả khi thành phần bắt đầu nó bị hủy. Thông thường,
+dịch vụ được bắt đầu sẽ thực hiện một thao tác đơn lẻ và không trả về kết quả cho hàm gọi.
+Ví dụ, nó có thể tải xuống hoặc tải lên một tệp thông qua mạng. Khi thao tác được hoàn thành, dịch vụ
+tự nó sẽ dừng lại.</dd>
+  <dt>Gắn kết</dt>
+  <dd>Dịch vụ có dạng "gắn kết" khi một thành phần ứng dụng gắn kết với nó bằng cách gọi {@link
+android.content.Context#bindService bindService()}. Dịch vụ gắn kết sẽ đưa ra
+một giao diện máy khách-máy chủ cho phép các thành phần tương tác với dịch vụ, gửi yêu cầu, nhận kết quả, và thậm chí
+làm vậy thông qua truyền thông liên tiến trình (IPC). Dịch vụ gắn kết chỉ chạy trong khi
+một thành phần ứng dụng khác được gắn kết với nó. Nhiều thành phần có thể gắn kết cùng lúc với dịch vụ,
+nhưng khi tất cả bị bỏ gắn kết thì dịch vụ sẽ bị hủy.</dd>
+</dl>
+
+<p>Mặc dù tài liệu này thường đề cập tới hai loại dịch vụ riêng rẽ, dịch vụ
+của bạn có thể hoạt động theo cả hai cách&mdash;nó có thể được bắt đầu (để chạy vô thời hạn) và cũng cho phép gắn kết.
+Đó đơn giản là vấn đề bạn có triển khai một cặp phương pháp gọi lại hay không: {@link
+android.app.Service#onStartCommand onStartCommand()} để cho phép thành phần bắt đầu nó và {@link
+android.app.Service#onBind onBind()} để cho phép nó gắn kết.</p>
+
+<p>Không phụ thuộc vào việc ứng dụng của bạn được bắt đầu, gắn kết, hay cả hai, bất kỳ thành phần ứng dụng nào
+cũng có thể sử dụng dịch vụ (thậm chí từ một ứng dụng riêng biệt), giống như cách mà bất kỳ thành phần nào cũng có thể sử dụng
+một hoạt động&mdash;bằng cách bắt đầu nó bằng một {@link android.content.Intent}. Tuy nhiên, bạn có thể khai báo
+dịch vụ là riêng tư trong tệp bản kê khai, và chặn truy cập từ các ứng dụng khác. Điều này
+được trình bày kỹ hơn trong phần về <a href="#Declaring">Khai báo dịch vụ trong
+bản kê khai</a>.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Một dịch vụ chạy trong
+luồng chính của tiến trình lưu trữ của nó&mdash;dịch vụ <strong>không</strong> tạo luồng của chính nó
+và <strong>không</strong> chạy trong một tiến trình riêng biệt (trừ khi bạn quy định khác). Điều này có nghĩa
+là, nếu dịch vụ của bạn định thực hiện bất kỳ công việc nặng nào đối với CPU hay chặn các thao tác (chẳng hạn như phát lại MP3
+hay kết nối mạng), bạn nên tạo một luồng mới bên trong dịch vụ để thực hiện công việc đó. Bằng cách sử dụng
+một luồng riêng biệt, bạn sẽ giảm rủi ro gặp lỗi Ứng dụng Không Hồi đáp (ANR) và luồng chính của ứng dụng có thể
+vẫn dành riêng cho tương tác giữa người dùng với các hoạt động của bạn.</p>
+
+
+<h2 id="Basics">Nội dung Cơ bản</h2>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Bạn nên sử dụng dịch vụ hay luồng?</h3>
+  <p>Dịch vụ đơn thuần là một thành phần có thể chạy ngầm ngay cả khi người dùng không
+đang tương tác với ứng dụng của bạn. Vì thế, bạn chỉ nên tạo một dịch vụ nếu đó là điều bạn
+cần.</p>
+  <p>Nếu bạn cần thực hiện công việc bên ngoài luồng chính của mình, nhưng chỉ trong khi người dùng đang tương tác với
+ứng dụng của bạn, thì thay vào đó, bạn nên tạo một luồng mới chứ không phải một dịch vụ. Ví
+dụ, nếu bạn muốn phát một bản nhạc, nhưng chỉ trong khi hoạt động của bạn đang chạy, bạn có thể tạo
+một luồng trong {@link android.app.Activity#onCreate onCreate()}, bắt đầu chạy nó trong {@link
+android.app.Activity#onStart onStart()}, rồi dừng nó trong {@link android.app.Activity#onStop
+onStop()}. Cũng xem xét việc sử dụng {@link android.os.AsyncTask} hoặc {@link android.os.HandlerThread},
+thay vì sử dụng lớp {@link java.lang.Thread} truyền thống. Xem tài liệu <a href="{@docRoot}guide/components/processes-and-threads.html#Threads">Tiến trình và
+Luồng</a> để biết thêm thông tin về luồng.</p>
+  <p>Hãy nhớ rằng nếu bạn sử dụng một dịch vụ, nó vẫn chạy trong luồng chính của ứng dụng của bạn theo
+mặc định, vì thế bạn vẫn nên tạo một luồng mới trong dịch vụ nếu nó thực hiện các thao tác tăng cường hoặc
+chặn.</p>
+</div>
+</div>
+
+<p>Để tạo một dịch vụ, bạn phải tạo một lớp con của {@link android.app.Service} (hoặc một
+trong các lớp con hiện tại của nó). Trong triển khai của mình, bạn cần khống chế một số phương pháp gọi lại có chức năng
+xử lý những khía cạnh chính trong vòng đời của dịch vụ và cung cấp một cơ chế để các thành phần gắn kết với
+dịch vụ đó, nếu phù hợp. Những phương pháp gọi lại quan trọng nhất mà bạn nên khống chế là:</p>
+
+<dl>
+  <dt>{@link android.app.Service#onStartCommand onStartCommand()}</dt>
+    <dd>Hệ thống sẽ gọi phương pháp này khi một thành phần khác, chẳng hạn như một hoạt động,
+yêu cầu dịch vụ phải được bắt đầu, bằng cách gọi {@link android.content.Context#startService
+startService()}. Sau khi phương pháp này thực thi, dịch vụ sẽ được bắt đầu và có thể chạy vô thời hạn trong
+nền. Nếu bạn triển khai điều này, bạn có trách nhiệm dừng dịch vụ khi
+công việc của nó được hoàn thành, bằng cách gọi {@link android.app.Service#stopSelf stopSelf()} hoặc {@link
+android.content.Context#stopService stopService()}. (Nếu chỉ muốn cung cấp khả năng gắn kết, bạn không
+cần triển khai phương pháp này.)</dd>
+  <dt>{@link android.app.Service#onBind onBind()}</dt>
+    <dd>Hệ thống sẽ gọi phương pháp này khi một thành phần khác muốn gắn kết với
+dịch vụ (chẳng hạn như để thực hiện RPC), bằng cách gọi {@link android.content.Context#bindService
+bindService()}. Trong triển khai phương pháp này của mình, bạn phải cung cấp một giao diện mà các máy khách
+sử dụng để giao tiếp với dịch vụ, bằng cách trả về {@link android.os.IBinder}. Bạn phải luôn
+triển khai phương pháp này, nhưng nếu bạn không muốn cho phép gắn kết thì bạn nên trả về rỗng.</dd>
+  <dt>{@link android.app.Service#onCreate()}</dt>
+    <dd>Hệ thống sẽ gọi phương pháp này khi dịch vụ được tạo lập lần đầu, để thực hiện quy trình thiết lập một lần
+(trước khi nó có thể gọi hoặc {@link android.app.Service#onStartCommand onStartCommand()} hoặc
+{@link android.app.Service#onBind onBind()}). Nếu dịch vụ đã đang chạy, phương pháp này sẽ không được
+gọi.</dd>
+  <dt>{@link android.app.Service#onDestroy()}</dt>
+    <dd>Hệ thống sẽ gọi phương pháp này khi dịch vụ không còn được sử dụng và đang bị hủy.
+Dịch vụ của bạn sẽ triển khai phương pháp này để dọn dẹp mọi tài nguyên như luồng, đối tượng theo dõi
+được đăng ký, hàm nhận, v.v... Đây là lệnh gọi cuối cùng mà dịch vụ nhận được.</dd>
+</dl>
+
+<p>Nếu một thành phần bắt đầu dịch vụ bằng cách gọi {@link
+android.content.Context#startService startService()} (kết quả là một lệnh gọi tới {@link
+android.app.Service#onStartCommand onStartCommand()}), khi đó dịch vụ
+sẽ vẫn chạy tới khi tự nó dừng bằng {@link android.app.Service#stopSelf()} hoặc một
+thành phần khác dừng nó bằng cách gọi {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Nếu một thành phần gọi
+{@link android.content.Context#bindService bindService()} để tạo dịch vụ (và {@link
+android.app.Service#onStartCommand onStartCommand()} <em>không</em> được gọi), khi đó dịch vụ sẽ chỉ chạy
+khi nào mà thành phần đó còn gắn kết với nó. Sau khi dịch vụ được bỏ gắn kết khỏi tất cả máy khách, hệ thống
+sẽ hủy nó.</p>
+
+<p>Hệ thống Android sẽ buộc dừng một dịch vụ chỉ khi bộ nhớ thấp và nó phải khôi phục tài nguyên
+của hệ thống cho hoạt động có tiêu điểm của người dùng. Nếu dịch vụ gắn kết với một hoạt động mà có tiêu điểm
+của người dùng, khi đó sẽ có ít khả năng nó sẽ bị tắt bỏ hơn, và nếu dịch vụ được khai báo là <a href="#Foreground">chạy trong tiền cảnh</a> (đề cập sau), khi đó nó sẽ hầu như không bao giờ bị tắt bỏ.
+Mặt khác, nếu dịch vụ được bắt đầu và chạy trong thời gian dài, hệ thống sẽ hạ thấp vị trí của nó
+trong danh sách tác vụ chạy ngầm qua thời gian và dịch vụ sẽ rất có thể bị
+tắt bỏ&mdash;nếu dịch vụ của bạn được bắt đầu, khi đó bạn phải thiết kế nó để
+xử lý việc khởi động lại do hệ thống một cách uyển chuyển. Nếu hệ thống tắt bỏ dịch vụ của bạn, nó sẽ khởi động lại dịch vụ ngay khi tài nguyên
+có sẵn trở lại (mặc dù điều này cũng phụ thuộc vào giá trị mà bạn trả về từ {@link
+android.app.Service#onStartCommand onStartCommand()}, vấn đề này sẽ được bàn sau). Để biết thêm thông tin
+về thời điểm mà hệ thống có thể hủy một dịch vụ, hãy xem tài liệu <a href="{@docRoot}guide/components/processes-and-threads.html">Tiến trình và Luồng</a>
+.</p>
+
+<p>Trong những phần sau, bạn sẽ thấy cách bạn có thể tạo từng loại dịch vụ và cách sử dụng
+nó từ các thành phần ứng dụng khác.</p>
+
+
+
+<h3 id="Declaring">Khai báo một dịch vụ trong bản kê khai</h3>
+
+<p>Giống như hoạt động (và các thành phần khác), bạn phải khai báo tất cả dịch vụ trong tệp bản kê khai
+của ứng dụng của mình.</p>
+
+<p>Để khai báo dịch vụ của bạn, hãy thêm một phần tử <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> làm
+con của phần tử <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+. Ví dụ:</p>
+
+<pre>
+&lt;manifest ... &gt;
+  ...
+  &lt;application ... &gt;
+      &lt;service android:name=".ExampleService" /&gt;
+      ...
+  &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>Xem tham chiếu phần tử <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 
+để biết thêm thông tin về việc khai báo dịch vụ của bạn trong bản kê khai.</p>
+
+<p>Có các thuộc tính khác mà bạn có thể bao gồm trong phần tử <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> để
+định nghĩa các tính chất chẳng hạn như những quyền cần để bắt đầu dịch vụ và tiến trình mà
+dịch vụ sẽ chạy trong đó. Thuộc tính <a href="{@docRoot}guide/topics/manifest/service-element.html#nm">{@code android:name}</a>
+là thuộc tính bắt buộc duy nhất&mdash;nó quy định tên lớp của dịch vụ. Một khi
+bạn phát hành ứng dụng của mình, bạn không nên thay đổi tên này, vì nếu bạn làm vậy, bạn sẽ gặp rủi ro làm gãy
+mã do sự phụ thuộc vào các ý định biểu thị để bắt đầu hoặc gắn kết dịch vụ (đọc bài đăng blog, <a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Những Điều
+Không Thay Đổi Được</a>).
+
+<p>Để đảm bảo ứng dụng của bạn được bảo mật, <strong>luôn sử dụng một ý định biểu thị khi bắt đầu hoặc gắn kết
+{@link android.app.Service}</strong> của bạn và không được khai báo bộ lọc ý định cho dịch vụ. Nếu
+điều trọng yếu là bạn phải cho phép một chút không rõ ràng về dịch vụ nào sẽ bắt đầu, bạn có thể
+cung cấp bộ lọc ý định cho dịch vụ của mình và loại bỏ tên thành phần khỏi {@link
+android.content.Intent}, nhưng sau đó bạn có thể đặt gói cho ý định bằng {@link
+android.content.Intent#setPackage setPackage()}, điều này cung cấp sự không rõ ràng vừa đủ cho
+dịch vụ mục tiêu đó.</p>
+
+<p>Ngoài ra, bạn có thể đảm bảo rằng dịch vụ của mình chỉ sẵn có cho ứng dụng của bạn bằng cách
+đưa vào thuộc tính <a href="{@docRoot}guide/topics/manifest/service-element.html#exported">{@code android:exported}</a>
+và đặt nó thành {@code "false"}. Điều này sẽ dừng việc các ứng dụng khác bắt đầu
+dịch vụ của bạn, ngay cả khi sử dụng một ý định biểu thị.</p>
+
+
+
+
+<h2 id="CreatingStartedService">Tạo một Dịch vụ được Bắt đầu</h2>
+
+<p>Dịch vụ được bắt đầu là dịch vụ mà một thành phần khác bắt đầu bằng cách gọi {@link
+android.content.Context#startService startService()}, kết quả là một lệnh gọi tới phương pháp
+{@link android.app.Service#onStartCommand onStartCommand()} của dịch vụ.</p>
+
+<p>Khi một dịch vụ được bắt đầu, nó có một vòng đời độc lập với
+thành phần đã bắt đầu nó và dịch vụ có thể chạy ngầm vô thời hạn, ngay cả khi
+thành phần bắt đầu nó bị hủy. Như vậy, dịch vụ sẽ tự dừng khi làm xong công việc của nó
+bằng cách gọi {@link android.app.Service#stopSelf stopSelf()}, hoặc một thành phần khác có thể dừng nó
+bằng cách gọi {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Một thành phần ứng dụng chẳng hạn như một hoạt động có thể bắt đầu dịch vụ bằng cách gọi {@link
+android.content.Context#startService startService()} và chuyển một {@link android.content.Intent}
+trong đó quy định dịch vụ và bao gồm bất kỳ dữ liệu nào để cho dịch vụ sử dụng. Dịch vụ sẽ nhận
+{@link android.content.Intent} này trong phương pháp {@link android.app.Service#onStartCommand
+onStartCommand()}.</p>
+
+<p>Ví dụ, giả sử một hoạt động cần lưu một số dữ liệu vào cơ sở dữ liệu trực tuyến. Hoạt động có thể
+bắt đầu một dịch vụ đồng hành và truyền cho nó dữ liệu để lưu bằng cách chuyển một ý định tới {@link
+android.content.Context#startService startService()}. Dịch vụ sẽ nhận ý định trong {@link
+android.app.Service#onStartCommand onStartCommand()}, kết nối với Internet và thực hiện
+giao tác cơ sở dữ liệu. Khi giao tác được thực hiện, dịch vụ sẽ tự dừng lại và nó bị
+hủy.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Một dịch vụ sẽ chạy trong cùng tiến trình như ứng dụng
+mà nó được khai báo trong đó và trong luồng chính của ứng dụng đó theo mặc định. Vì vậy, nếu dịch vụ của bạn
+thực hiện các thao tác tăng cường hoặc chặn trong khi người dùng tương tác với một hoạt động từ cùng
+ứng dụng, dịch vụ sẽ làm chậm hiệu năng của hoạt động. Để tránh tác động tới hiệu năng của
+ứng dụng, bạn nên bắt đầu một luồng mới bên trong dịch vụ.</p>
+
+<p>Thông thường, có hai lớp mà bạn có thể mở rộng để tạo một dịch vụ được bắt đầu:</p>
+<dl>
+  <dt>{@link android.app.Service}</dt>
+  <dd>Đây là lớp cơ bản cho tất cả dịch vụ. Khi bạn mở rộng lớp này, điều quan trọng là
+bạn tạo một luồng mới để thực hiện tất cả công việc của dịch vụ trong đó, do dịch vụ sử dụng luồng chính
+của ứng dụng của bạn, theo mặc định, điều này có thể làm chậm hiệu năng của bất kỳ hoạt động nào mà ứng dụng
+của bạn đang chạy.</dd>
+  <dt>{@link android.app.IntentService}</dt>
+  <dd>Đây là một lớp con của {@link android.app.Service} có chức năng sử dụng một luồng trình thực hiện để xử lý tất cả
+yêu cầu bắt đầu một cách lần lượt. Đây là lựa chọn tốt nhất nếu bạn không yêu cầu dịch vụ của mình
+xử lý đồng thời nhiều yêu cầu. Tất cả những gì bạn cần làm đó là triển khai {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}, nó sẽ nhận ý định cho mỗi
+yêu cầu bắt đầu để bạn có thể thực hiện công việc chạy ngầm.</dd>
+</dl>
+
+<p>Các phần sau mô tả cách bạn có thể triển khai dịch vụ của mình bằng cách sử dụng một trong các cách cho những lớp
+này.</p>
+
+
+<h3 id="ExtendingIntentService">Mở rộng lớp IntentService</h3>
+
+<p>Vì phần lớn các dịch vụ được bắt đầu không cần xử lý nhiều yêu cầu một cách đồng thời
+(điều này thực sự có thể là một kịch bản tạo đa luồng nguy hiểm), có lẽ tốt nhất là nếu bạn
+triển khai dịch vụ của mình bằng cách sử dụng lớp {@link android.app.IntentService}.</p>
+
+<p>{@link android.app.IntentService} làm điều sau đây:</p>
+
+<ul>
+  <li>Tạo một luồng trình thực hiện mặc định để thực thi tất cả ý định được chuyển tới {@link
+android.app.Service#onStartCommand onStartCommand()} tách riêng với luồng
+chính của ứng dụng của bạn.</li>
+  <li>Tạo một hàng đợi công việc để chuyển lần lượt từng ý định tới triển khai {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} của bạn, vì thế bạn không bao giờ phải
+lo lắng về vấn đề tạo đa luồng.</li>
+  <li>Dừng dịch vụ sau khi tất cả yêu cầu bắt đầu đều đã được xử lý, vì thế bạn không bao giờ phải gọi
+{@link android.app.Service#stopSelf}.</li>
+  <li>Cung cấp triển khai mặc định của {@link android.app.IntentService#onBind onBind()} mà
+trả về rỗng.</li>
+  <li>Cung cấp triển khai mặc định của {@link android.app.IntentService#onStartCommand
+onStartCommand()} mà gửi ý định tới hàng đợi công việc rồi tới triển khai {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} của bạn.</li>
+</ul>
+
+<p>Tất cả đều nói lên một thực tế rằng tất cả những việc bạn cần làm đó là triển khai {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} để thực hiện công việc mà
+máy khách cung cấp. (Mặc dù bạn cũng cần cung cấp một hàm dựng nhỏ cho dịch vụ.)</p>
+
+<p>Sau đây là ví dụ về triển khai {@link android.app.IntentService}:</p>
+
+<pre>
+public class HelloIntentService extends IntentService {
+
+  /**
+   * A constructor is required, and must call the super {@link android.app.IntentService#IntentService}
+   * constructor with a name for the worker thread.
+   */
+  public HelloIntentService() {
+      super("HelloIntentService");
+  }
+
+  /**
+   * The IntentService calls this method from the default worker thread with
+   * the intent that started the service. When this method returns, IntentService
+   * stops the service, as appropriate.
+   */
+  &#64;Override
+  protected void onHandleIntent(Intent intent) {
+      // Normally we would do some work here, like download a file.
+      // For our sample, we just sleep for 5 seconds.
+      long endTime = System.currentTimeMillis() + 5*1000;
+      while (System.currentTimeMillis() &lt; endTime) {
+          synchronized (this) {
+              try {
+                  wait(endTime - System.currentTimeMillis());
+              } catch (Exception e) {
+              }
+          }
+      }
+  }
+}
+</pre>
+
+<p>Đó là tất cả những gì bạn cần: một hàm dựng và triển khai {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}.</p>
+
+<p>Nếu bạn quyết định cũng khống chế các phương pháp gọi lại khác, chẳng hạn như {@link
+android.app.IntentService#onCreate onCreate()}, {@link
+android.app.IntentService#onStartCommand onStartCommand()}, hoặc {@link
+android.app.IntentService#onDestroy onDestroy()}, hãy nhớ gọi ra siêu triển khai, sao
+cho {@link android.app.IntentService} có thể xử lý hợp lý vòng đời của luồng trình thực hiện.</p>
+
+<p>Ví dụ, {@link android.app.IntentService#onStartCommand onStartCommand()} phải trả về
+triển khai mặc định (đó là cách mà ý định được chuyển tới {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}):</p>
+
+<pre>
+&#64;Override
+public int onStartCommand(Intent intent, int flags, int startId) {
+    Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+    return super.onStartCommand(intent,flags,startId);
+}
+</pre>
+
+<p>Bên cạnh {@link android.app.IntentService#onHandleIntent onHandleIntent()}, phương pháp duy nhất mà
+từ đó bạn không cần gọi siêu lớp là {@link android.app.IntentService#onBind
+onBind()} (nhưng bạn chỉ cần triển khai điều đó nếu dịch vụ của bạn cho phép gắn kết).</p>
+
+<p>Trong phần tiếp theo, bạn sẽ thấy cách mà cùng loại dịch vụ được triển khai khi mở rộng
+lớp {@link android.app.Service} cơ sở, nó có nhiều mã hơn nhưng có thể
+phù hợp nếu bạn cần xử lý các yêu cầu bắt đầu đồng thời.</p>
+
+
+<h3 id="ExtendingService">Mở rộng lớp Dịch vụ</h3>
+
+<p>Như bạn thấy trong phần trước, sử dụng {@link android.app.IntentService} giúp việc
+triển khai một dịch vụ được bắt đầu của bạn trở nên rất đơn giản. Tuy nhiên, nếu bạn cần dịch vụ của mình
+thực hiện tạo đa luồng (thay vì xử lý các yêu cầu bắt đầu thông qua một hàng đợi công việc), khi đó bạn
+có thể mở rộng lớp {@link android.app.Service} để xử lý từng ý định.</p>
+
+<p>Để so sánh, đoạn mã mẫu sau là triển khai lớp {@link
+android.app.Service} mà thực hiện chính xác cùng công việc như ví dụ bên trên bằng cách sử dụng {@link
+android.app.IntentService}. Cụ thể, đối với mỗi yêu cầu bắt đầu, nó sẽ sử dụng một luồng trình thực hiện để thực hiện
+công việc và chỉ xử lý lần lượt từng yêu cầu một.</p>
+
+<pre>
+public class HelloService extends Service {
+  private Looper mServiceLooper;
+  private ServiceHandler mServiceHandler;
+
+  // Handler that receives messages from the thread
+  private final class ServiceHandler extends Handler {
+      public ServiceHandler(Looper looper) {
+          super(looper);
+      }
+      &#64;Override
+      public void handleMessage(Message msg) {
+          // Normally we would do some work here, like download a file.
+          // For our sample, we just sleep for 5 seconds.
+          long endTime = System.currentTimeMillis() + 5*1000;
+          while (System.currentTimeMillis() &lt; endTime) {
+              synchronized (this) {
+                  try {
+                      wait(endTime - System.currentTimeMillis());
+                  } catch (Exception e) {
+                  }
+              }
+          }
+          // Stop the service using the startId, so that we don't stop
+          // the service in the middle of handling another job
+          stopSelf(msg.arg1);
+      }
+  }
+
+  &#64;Override
+  public void onCreate() {
+    // Start up the thread running the service.  Note that we create a
+    // separate thread because the service normally runs in the process's
+    // main thread, which we don't want to block.  We also make it
+    // background priority so CPU-intensive work will not disrupt our UI.
+    HandlerThread thread = new HandlerThread("ServiceStartArguments",
+            Process.THREAD_PRIORITY_BACKGROUND);
+    thread.start();
+
+    // Get the HandlerThread's Looper and use it for our Handler
+    mServiceLooper = thread.getLooper();
+    mServiceHandler = new ServiceHandler(mServiceLooper);
+  }
+
+  &#64;Override
+  public int onStartCommand(Intent intent, int flags, int startId) {
+      Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+
+      // For each start request, send a message to start a job and deliver the
+      // start ID so we know which request we're stopping when we finish the job
+      Message msg = mServiceHandler.obtainMessage();
+      msg.arg1 = startId;
+      mServiceHandler.sendMessage(msg);
+
+      // If we get killed, after returning from here, restart
+      return START_STICKY;
+  }
+
+  &#64;Override
+  public IBinder onBind(Intent intent) {
+      // We don't provide binding, so return null
+      return null;
+  }
+
+  &#64;Override
+  public void onDestroy() {
+    Toast.makeText(this, "service done", Toast.LENGTH_SHORT).show();
+  }
+}
+</pre>
+
+<p>Như bạn có thể thấy, có nhiều việc hơn nhiều so với việc sử dụng {@link android.app.IntentService}.</p>
+
+<p>Tuy nhiên, do bạn tự mình xử lý từng lệnh gọi đến {@link android.app.Service#onStartCommand
+onStartCommand()}, bạn có thể thực hiện nhiều yêu cầu một cách đồng thời. Đó không phải là việc
+mà ví dụ này làm, nhưng nếu đó là việc bạn muốn, vậy bạn có thể tạo một luồng mới cho từng
+yêu cầu và ngay lập tức trả chúng về (thay vì đợi tới khi yêu cầu trước hoàn thành).</p>
+
+<p>Để ý rằng phương pháp {@link android.app.Service#onStartCommand onStartCommand()} phải trả về một
+số nguyên. Số nguyên là một giá trị mô tả cách hệ thống nên tiếp tục dịch vụ trong
+trường hợp hệ thống tắt bỏ nó (như được đề cập ở trên, triển khai mặc định cho {@link
+android.app.IntentService} sẽ xử lý điều này cho bạn dù bạn có thể sửa đổi nó). Giá trị trả về
+từ {@link android.app.Service#onStartCommand onStartCommand()} phải là một trong các
+hằng số sau:</p>
+
+<dl>
+  <dt>{@link android.app.Service#START_NOT_STICKY}</dt>
+    <dd>Nếu hệ thống tắt bỏ dịch vụ sau khi {@link android.app.Service#onStartCommand
+onStartCommand()} trả về, <em>không</em> được tạo lại dịch vụ đó, trừ khi có các ý định
+đang chờ để được chuyển. Đây là lựa chọn an toàn nhất để tránh chạy dịch vụ của bạn khi không cần thiết
+và khi ứng dụng của bạn có thể đơn thuần khởi động lại bất kỳ công việc chưa hoàn thành nào.</dd>
+  <dt>{@link android.app.Service#START_STICKY}</dt>
+    <dd>Nếu hệ thống tắt bỏ dịch vụ sau khi {@link android.app.Service#onStartCommand
+onStartCommand()} trả về, hãy tạo lại dịch vụ và gọi {@link
+android.app.Service#onStartCommand onStartCommand()}, nhưng <em>không</em> chuyển lại ý định cuối cùng.
+Thay vào đó, hệ thống sẽ gọi {@link android.app.Service#onStartCommand onStartCommand()} bằng một
+ý định rỗng, trừ khi có các ý định đang chờ để bắt đầu dịch vụ, trong trường hợp đó,
+những ý định này sẽ được chuyển. Điều này phù hợp với các trình phát phương tiện (hoặc dịch vụ tương tự) mà không
+đang thực thi lệnh, nhưng đang chạy vô thời hạn và chờ một tác vụ.</dd>
+  <dt>{@link android.app.Service#START_REDELIVER_INTENT}</dt>
+    <dd>Nếu hệ thống tắt bỏ dịch vụ sau khi {@link android.app.Service#onStartCommand
+onStartCommand()} trả về, hãy tạo lại dịch vụ và gọi {@link
+android.app.Service#onStartCommand onStartCommand()} bằng ý định cuối cùng được chuyển tới
+dịch vụ. Mọi ý định chờ đều được chuyển lần lượt. Điều này phù hợp với các dịch vụ đang
+chủ động thực hiện một công việc mà nên được tiếp tục ngay lập tức, chẳng hạn như tải xuống một tệp.</dd>
+</dl>
+<p>Để biết thêm chi tiết về những giá trị trả về này, hãy xem tài liệu tham khảo được liên kết cho từng
+hằng số.</p>
+
+
+
+<h3 id="StartingAService">Bắt đầu một Dịch vụ</h3>
+
+<p>Bạn có thể bắt đầu một dịch vụ từ một hoạt động hoặc thành phần ứng dụng khác bằng cách chuyển một
+{@link android.content.Intent} (quy định dịch vụ sẽ bắt đầu) đến {@link
+android.content.Context#startService startService()}. Hệ thống Android sẽ gọi phương pháp {@link
+android.app.Service#onStartCommand onStartCommand()} của dịch vụ và chuyển cho nó {@link
+android.content.Intent}. (Bạn tuyệt đối không nên trực tiếp gọi {@link android.app.Service#onStartCommand
+onStartCommand()}.)</p>
+
+<p>Ví dụ, một hoạt động có thể bắt đầu dịch vụ ví dụ trong phần trước ({@code
+HelloSevice}) bằng cách sử dụng một ý định biểu thị với {@link android.content.Context#startService
+startService()}:</p>
+
+<pre>
+Intent intent = new Intent(this, HelloService.class);
+startService(intent);
+</pre>
+
+<p>Phương pháp {@link android.content.Context#startService startService()} ngay lập tức trả về và
+hệ thống Android sẽ gọi phương pháp {@link android.app.Service#onStartCommand
+onStartCommand()} của dịch vụ. Nếu dịch vụ không đang chạy, trước tiên hệ thống sẽ gọi {@link
+android.app.Service#onCreate onCreate()}, rồi gọi {@link android.app.Service#onStartCommand
+onStartCommand()}.</p>
+
+<p>Nếu dịch vụ cũng không cung cấp khả năng gắn kết, ý định được chuyển bằng {@link
+android.content.Context#startService startService()} sẽ là phương thức giao tiếp duy nhất giữa
+thành phần ứng dụng và dịch vụ. Tuy nhiên, nếu bạn muốn dịch vụ gửi một kết quả trở lại, khi đó
+máy khách mà bắt đầu dịch vụ có thể tạo một {@link android.app.PendingIntent} cho một quảng bá
+(bằng {@link android.app.PendingIntent#getBroadcast getBroadcast()}) và chuyển nó tới dịch vụ
+trong {@link android.content.Intent} mà bắt đầu dịch vụ. Khi đó, dịch vụ có thể sử dụng
+quảng bá để chuyển kết quả.</p>
+
+<p>Nhiều yêu cầu bắt đầu dịch vụ sẽ dẫn đến nhiều lệnh gọi tương ứng tới
+{@link android.app.Service#onStartCommand onStartCommand()} của dịch vụ. Tuy nhiên, chỉ có một yêu cầu dừng
+dịch vụ (bằng {@link android.app.Service#stopSelf stopSelf()} hoặc {@link
+android.content.Context#stopService stopService()}) là bắt buộc để dừng nó.</p>
+
+
+<h3 id="Stopping">Dừng một dịch vụ</h3>
+
+<p>Dịch vụ được bắt đầu phải quản lý vòng đời của chính nó. Cụ thể, hệ thống không dừng
+hay hủy dịch vụ trừ khi nó phải khôi phục bộ nhớ của hệ thống và dịch vụ
+sẽ tiếp tục chạy sau khi {@link android.app.Service#onStartCommand onStartCommand()} trả về. Vì vậy,
+dịch vụ phải tự dừng bằng cách gọi {@link android.app.Service#stopSelf stopSelf()} hoặc một thành phần
+khác có thể dừng nó bằng cách gọi {@link android.content.Context#stopService stopService()}.</p>
+
+<p>Sau khi được yêu cầu dừng bằng {@link android.app.Service#stopSelf stopSelf()} hoặc {@link
+android.content.Context#stopService stopService()}, hệ thống sẽ hủy dịch vụ ngay khi
+có thể.</p>
+
+<p>Tuy nhiên, nếu dịch vụ của bạn xử lý nhiều yêu cầu {@link
+android.app.Service#onStartCommand onStartCommand()} đồng thời, khi đó bạn không nên dừng
+dịch vụ khi bạn đã hoàn thành xử lý yêu cầu bắt đầu, vì bạn có thể đã nhận được một
+yêu cầu bắt đầu mới kể từ thời điểm đó (dừng khi kết thúc yêu cầu thứ nhất sẽ chấm dứt yêu cầu thứ hai). Để tránh
+vấn đề này, bạn có thể sử dụng {@link android.app.Service#stopSelf(int)} để đảm bảo rằng yêu cầu
+dừng dịch vụ của bạn luôn được dựa trên yêu cầu bắt đầu gần đây nhất. Cụ thể, khi bạn gọi {@link
+android.app.Service#stopSelf(int)}, bạn sẽ chuyển ID của yêu cầu bắt đầu (<code>startId</code>
+được chuyển tới {@link android.app.Service#onStartCommand onStartCommand()}) mà yêu cầu dừng của bạn
+tương ứng với. Khi đó, nếu dịch vụ đã nhận được một yêu cầu bắt đầu mới trước khi bạn có thể gọi {@link
+android.app.Service#stopSelf(int)}, vậy ID sẽ không khớp và dịch vụ sẽ không dừng.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Điều quan trọng là ứng dụng của bạn dừng dịch vụ của nó
+khi nó hoàn thành xong công việc để tránh lãng phí tài nguyên của hệ thống và tốn pin. Nếu cần,
+các thành phần khác có thể dừng dịch vụ bằng cách gọi {@link
+android.content.Context#stopService stopService()}. Ngay cả khi bạn kích hoạt gắn kết cho dịch vụ,
+bạn phải luôn tự mình dừng dịch vụ nếu dịch vụ đã nhận được lệnh gọi tới {@link
+android.app.Service#onStartCommand onStartCommand()}.</p>
+
+<p>Để biết thêm thông tin về vòng đời của một dịch vụ, hãy xem phần bên dưới về <a href="#Lifecycle">Quản lý Vòng đời của một Dịch vụ</a>.</p>
+
+
+
+<h2 id="CreatingBoundService">Tạo một Dịch vụ Gắn kết</h2>
+
+<p>Dịch vụ gắn kết là một dịch vụ cho phép các thành phần ứng dụng gắn kết với nó bằng cách gọi {@link
+android.content.Context#bindService bindService()} để tạo một kết nối lâu dài
+(và thường không cho phép các thành phần <em>bắt đầu</em> nó bằng cách gọi {@link
+android.content.Context#startService startService()}).</p>
+
+<p>Bạn nên tạo một dịch vụ gắn kết khi muốn tương tác với dịch vụ từ hoạt động
+và các thành phần khác trong ứng dụng của mình hoặc để hiển thị một số tính năng trong ứng dụng của bạn cho
+các ứng dụng khác thông qua truyền thông liên tiến trình (IPC).</p>
+
+<p>Để tạo một dịch vụ gắn kết, bạn phải triển khai phương pháp gọi lại {@link
+android.app.Service#onBind onBind()} để trả về một {@link android.os.IBinder} mà
+định nghĩa giao diện cho giao tiếp với dịch vụ đó. Khi đó, các thành phần ứng dụng khác có thể gọi
+{@link android.content.Context#bindService bindService()} để truy xuất giao diện và
+bắt đầu các phương pháp gọi trên dịch vụ. Dịch vụ tồn tại chỉ nhằm phục vụ thành phần ứng dụng mà
+được gắn kết với nó, vì thế khi không có thành phần được gắn kết với dịch vụ, hệ thống sẽ hủy nó
+(bạn <em>không</em> cần dừng một dịch vụ gắn kết theo cách phải làm khi dịch vụ được bắt đầu
+thông qua {@link android.app.Service#onStartCommand onStartCommand()}).</p>
+
+<p>Để tạo một dịch vụ gắn kết, điều đầu tiên bạn phải làm là định nghĩa giao diện quy định
+cách thức mà một máy khách có thể giao tiếp với dịch vụ. Giao diện giữa dịch vụ và
+máy khách này phải là một triển khai {@link android.os.IBinder} và được dịch vụ của bạn phải
+trả về từ phương pháp gọi lại {@link android.app.Service#onBind
+onBind()}. Sau khi máy khách nhận được {@link android.os.IBinder}, nó có thể bắt đầu
+tương tác với dịch vụ thông qua giao diện đó.</p>
+
+<p>Nhiều máy khách có thể gắn kết với dịch vụ đồng thời. Khi một máy khách hoàn thành tương tác với
+dịch vụ, nó sẽ gọi {@link android.content.Context#unbindService unbindService()} để bỏ gắn kết. Sau khi
+không còn máy khách nào được gắn kết với dịch vụ, hệ thống sẽ hủy dịch vụ.</p>
+
+<p>Có nhiều cách để triển khai một dịch vụ gắn kết và triển khai sẽ phức tạp
+hơn so với dịch vụ được bắt đầu, vì thế nội dung bàn về dịch vụ gắn kết được trình bày trong một
+tài liệu riêng về <a href="{@docRoot}guide/components/bound-services.html">Dịch vụ Gắn kết</a>.</p>
+
+
+
+<h2 id="Notifications">Gửi Thông báo tới Người dùng</h2>
+
+<p>Sau khi chạy, một dịch vụ có thể thông báo cho người dùng về sự kiện bằng cách sử dụng <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">Thông báo Cửa sổ</a> hoặc <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Thông báo Thanh Trạng thái</a>.</p>
+
+<p>Thông báo cửa sổ là một thông báo xuất hiện một lúc trên bề mặt của cửa sổ hiện tại 
+rồi biến mất, trong khi thông báo thanh trạng thái cung cấp một biểu tượng trong thanh trạng thái cùng một
+thông báo, người dùng có thể chọn nó để thực hiện một hành động (chẳng hạn như bắt đầu một hoạt động).</p>
+
+<p>Thông thường thông báo thanh trạng thái là kỹ thuật tốt nhất khi một công việc nền nào đó đã hoàn thành
+(chẳng hạn như một tệp đã hoàn thành
+việc tải xuống) và lúc này người dùng có thể hành động dựa trên nó. Khi người dùng chọn thông báo từ dạng xem mở rộng
+, thông báo có thể bắt đầu một hoạt động (chẳng hạn như xem tệp được tải xuống).</p>
+
+<p>Xem hướng dẫn dành cho nhà phát triển <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">Thông báo Cửa sổ</a> hoặc <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Thông báo Thanh Trạng thái</a>
+để biết thêm thông tin.</p>
+
+
+
+<h2 id="Foreground">Chạy một Dịch vụ trong Tiền cảnh</h2>
+
+<p>Dịch vụ tiền cảnh là một dịch vụ được coi là điều mà
+người dùng đang chủ động quan tâm, vì thế nó không được đề nghị để hệ thống tắt bỏ khi bộ nhớ thấp. Dịch vụ
+tiền cảnh phải cung cấp một thông báo cho thanh trạng thái, nó được đặt dưới tiêu đề
+"Đang diễn ra", điều này có nghĩa là thông báo không thể loại bỏ được trừ khi dịch vụ
+bị dừng hoặc loại bỏ khỏi tiền cảnh.</p>
+
+<p>Ví dụ, một trình chơi nhạc đang phát nhạc từ một dịch vụ nên được đặt để chạy trong
+tiền cảnh, vì người dùng rõ ràng ý thức được
+hoạt động của nó. Thông báo trong thanh trạng thái có thể cho biết bài hát đang chơi và cho phép
+người dùng khởi chạy một hoạt động để tương tác với trình chơi nhạc.</p>
+
+<p>Để yêu cầu dịch vụ của bạn chạy trong tiền cảnh, hãy gọi {@link
+android.app.Service#startForeground startForeground()}. Phương pháp này dùng hai tham số: một số nguyên
+để xác định duy nhất thông báo và {@link
+android.app.Notification} cho thanh trạng thái. Ví dụ:</p>
+
+<pre>
+Notification notification = new Notification(R.drawable.icon, getText(R.string.ticker_text),
+        System.currentTimeMillis());
+Intent notificationIntent = new Intent(this, ExampleActivity.class);
+PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
+notification.setLatestEventInfo(this, getText(R.string.notification_title),
+        getText(R.string.notification_message), pendingIntent);
+startForeground(ONGOING_NOTIFICATION_ID, notification);
+</pre>
+
+<p class="caution"><strong>Chú ý:</strong> ID số nguyên mà bạn cấp cho {@link
+android.app.Service#startForeground startForeground()} không được bằng 0.</p>
+
+
+<p>Để xóa bỏ dịch vụ khỏi tiền cảnh, hãy gọi {@link
+android.app.Service#stopForeground stopForeground()}. Phương pháp này dùng một boolean, cho biết
+có loại bỏ cả thông báo thanh trạng thái hay không. Phương pháp này <em>không</em> dừng
+dịch vụ. Tuy nhiên, nếu bạn dừng dịch vụ trong khi nó vẫn đang chạy trong tiền cảnh, khi đó thông báo
+cũng bị loại bỏ.</p>
+
+<p>Để biết thêm thông tin về thông báo, hãy xem phần <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Tạo Thông báo
+Thanh Trạng thái</a>.</p>
+
+
+
+<h2 id="Lifecycle">Quản lý Vòng đời của một Dịch vụ</h2>
+
+<p>Vòng đời của một dịch vụ đơn giản hơn nhiều so với vòng đời của một hoạt động. Tuy nhiên, một điều thậm chí còn quan trọng hơn
+đó là bạn phải thật chú ý tới cách dịch vụ của bạn được tạo và hủy, bởi một dịch vụ
+có thể chạy ngầm mà người dùng không biết.</p>
+
+<p>Vòng đời của dịch vụ&mdash;từ khi nó được tạo tới khi nó bị hủy&mdash;có thể đi theo hai
+con đường khác nhau:</p>
+
+<ul>
+<li>Dịch vụ được bắt đầu
+  <p>Dịch vụ được tạo khi một thành phần khác gọi {@link
+android.content.Context#startService startService()}. Sau đó, dịch vụ sẽ chạy vô thời hạn và phải
+tự dừng bằng cách gọi {@link
+android.app.Service#stopSelf() stopSelf()}. Một thành phần khác cũng có thể dừng
+dịch vụ bằng cách gọi {@link android.content.Context#stopService
+stopService()}. Khi dịch vụ bị dừng, hệ thống sẽ hủy nó.</p></li>
+
+<li>Dịch vụ gắn kết
+  <p>Dịch vụ được tạo khi một thành phần khác (máy khách) gọi {@link
+android.content.Context#bindService bindService()}. Khi đó, máy khách giao tiếp với dịch vụ
+thông qua một giao diện {@link android.os.IBinder}. Máy khách có thể đóng kết nối bằng cách gọi
+{@link android.content.Context#unbindService unbindService()}. Nhiều máy khách có thể gắn kết với
+cùng dịch vụ và khi tất cả chúng bỏ gắn kết, hệ thống sẽ hủy dịch vụ. (Dịch vụ
+<em>không</em> cần tự mình dừng.)</p></li>
+</ul>
+
+<p>Hai con đường này hoàn toàn riêng biệt. Cụ thể, bạn có thể gắn kết với một dịch vụ đã
+được bắt đầu bằng {@link android.content.Context#startService startService()}. Ví dụ, một dịch vụ
+nhạc nền có thể được bắt đầu bằng cách gọi {@link android.content.Context#startService
+startService()} bằng một {@link android.content.Intent} mà sẽ nhận biết nhạc để phát. Sau đó,
+có thể là khi người dùng muốn thực thi một quyền điều khiển đối với trình phát đó hoặc lấy thông tin về
+bài hát đang phát, hoạt động có thể gắn kết với dịch vụ bằng cách gọi {@link
+android.content.Context#bindService bindService()}. Trong những trường hợp như vậy, {@link
+android.content.Context#stopService stopService()} hoặc {@link android.app.Service#stopSelf
+stopSelf()} không thực sự dừng dịch vụ tới khi tất cả máy khách bỏ gắn kết. </p>
+
+
+<h3 id="LifecycleCallbacks">Triển khai gọi lại vòng đời</h3>
+
+<p>Giống như một hoạt động, dịch vụ có các phương pháp gọi lại vòng đời mà bạn có thể triển khai để theo dõi
+những thay đổi về trạng thái của dịch vụ và thực hiện công việc tại những thời điểm phù hợp. Dịch vụ khung sau
+minh họa từng phương pháp vòng đời:</p>
+
+<pre>
+public class ExampleService extends Service {
+    int mStartMode;       // indicates how to behave if the service is killed
+    IBinder mBinder;      // interface for clients that bind
+    boolean mAllowRebind; // indicates whether onRebind should be used
+
+    &#64;Override
+    public void {@link android.app.Service#onCreate onCreate}() {
+        // The service is being created
+    }
+    &#64;Override
+    public int {@link android.app.Service#onStartCommand onStartCommand}(Intent intent, int flags, int startId) {
+        // The service is starting, due to a call to {@link android.content.Context#startService startService()}
+        return <em>mStartMode</em>;
+    }
+    &#64;Override
+    public IBinder {@link android.app.Service#onBind onBind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()}
+        return <em>mBinder</em>;
+    }
+    &#64;Override
+    public boolean {@link android.app.Service#onUnbind onUnbind}(Intent intent) {
+        // All clients have unbound with {@link android.content.Context#unbindService unbindService()}
+        return <em>mAllowRebind</em>;
+    }
+    &#64;Override
+    public void {@link android.app.Service#onRebind onRebind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()},
+        // after onUnbind() has already been called
+    }
+    &#64;Override
+    public void {@link android.app.Service#onDestroy onDestroy}() {
+        // The service is no longer used and is being destroyed
+    }
+}
+</pre>
+
+<p class="note"><strong>Lưu ý:</strong> Không như các phương pháp gọi lại vòng đời của hoạt động, bạn
+<em>không</em> phải gọi triển khai siêu lớp với những phương pháp gọi lại này.</p>
+
+<img src="{@docRoot}images/service_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Hình 2.</strong> Vòng đời dịch vụ. Sơ đồ phía bên trái
+minh họa vòng đời khi dịch vụ được tạo bằng {@link android.content.Context#startService
+startService()} và sơ đồ phía bên phải minh họa vòng đời khi dịch vụ được tạo
+bằng {@link android.content.Context#bindService bindService()}.</p>
+
+<p>Bằng việc triển khai những phương pháp này, bạn có thể theo dõi hai vòng lặp lồng nhau trong vòng đời của dịch vụ: </p>
+
+<ul>
+<li><strong>Toàn bộ vòng đời</strong> của một dịch vụ xảy ra giữa thời điểm gọi {@link
+android.app.Service#onCreate onCreate()} và thời điểm {@link
+android.app.Service#onDestroy} trả về. Giống như hoạt động, dịch vụ thực hiện thiết lập ban đầu của nó trong
+{@link android.app.Service#onCreate onCreate()} và giải phóng tất cả tài nguyên còn lại trong {@link
+android.app.Service#onDestroy onDestroy()}.  Ví dụ, một
+dịch vụ phát lại nhạc có thể tạo luồng mà tại đó nhạc sẽ được phát trong {@link
+android.app.Service#onCreate onCreate()}, sau đó dừng luồng trong {@link
+android.app.Service#onDestroy onDestroy()}.
+
+<p>Các phương pháp {@link android.app.Service#onCreate onCreate()} và {@link android.app.Service#onDestroy
+onDestroy()} được gọi cho tất cả dịch vụ, dù
+chúng được tạo bởi {@link android.content.Context#startService startService()} hay {@link
+android.content.Context#bindService bindService()}.</p></li>
+
+<li><strong>Vòng đời hiện hoạt</strong> của một dịch vụ sẽ bắt đầu bằng một lệnh gọi đến hoặc {@link
+android.app.Service#onStartCommand onStartCommand()} hoặc {@link android.app.Service#onBind onBind()}.
+Mỗi phương pháp sẽ được giao {@link
+android.content.Intent} mà được chuyển tương ứng cho hoặc {@link android.content.Context#startService
+startService()} hoặc {@link android.content.Context#bindService bindService()}.
+<p>Nếu dịch vụ được bắt đầu, vòng đời hiện hoạt sẽ chấm dứt tại cùng thời điểm khi toàn bộ vòng đời
+chấm dứt (dịch vụ sẽ vẫn hiện hoạt ngay cả sau khi {@link android.app.Service#onStartCommand
+onStartCommand()} trả về). Nếu dịch vụ bị gắn kết, vòng đời hiện hoạt sẽ chấm dứt khi {@link
+android.app.Service#onUnbind onUnbind()} trả về.</p>
+</li>
+</ul>
+
+<p class="note"><strong>Lưu ý:</strong> Mặc dù dịch vụ được bắt đầu bị dừng bởi một lệnh gọi đến
+hoặc {@link android.app.Service#stopSelf stopSelf()} hoặc {@link
+android.content.Context#stopService stopService()}, sẽ không có một lệnh gọi lại tương ứng cho
+dịch vụ (không có lệnh gọi lại {@code onStop()}). Vì thế, trừ khi dịch vụ được gắn kết với một máy khách,
+hệ thống sẽ hủy nó khi dịch vụ bị dừng&mdash;{@link
+android.app.Service#onDestroy onDestroy()} là lệnh gọi lại duy nhất nhận được.</p>
+
+<p>Hình 2 minh họa các phương pháp gọi lại điển hình cho một dịch vụ. Mặc dù hình tách riêng
+các dịch vụ được tạo bởi {@link android.content.Context#startService startService()} với các dịch vụ
+được tạo bởi {@link android.content.Context#bindService bindService()}, hãy
+ghi nhớ rằng bất kỳ dịch vụ nào, dù được bắt đầu như thế nào, đều có thể cho phép máy khách gắn kết với nó.
+Vì thế, một dịch vụ được bắt đầu từ đầu bằng {@link android.app.Service#onStartCommand
+onStartCommand()} (bởi một máy khách gọi {@link android.content.Context#startService startService()})
+vẫn có thể nhận một lệnh gọi đến {@link android.app.Service#onBind onBind()} (khi máy khách gọi
+{@link android.content.Context#bindService bindService()}).</p>
+
+<p>Để biết thêm thông tin về việc tao một dịch vụ có tính năng gắn kết, hãy xem tài liệu <a href="{@docRoot}guide/components/bound-services.html">Dịch vụ Gắn kết</a>,
+trong đó có thêm thông tin về phương pháp gọi lại {@link android.app.Service#onRebind onRebind()}
+trong phần về <a href="{@docRoot}guide/components/bound-services.html#Lifecycle">Quản lý Vòng đời của
+một Dịch vụ Gắn kết</a>.</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>To learn how to query data from the system or other applications (such as contacts or media
+stored on the device), continue with the <b><a
+href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a></b>
+document.</p>
+-->
diff --git a/docs/html-intl/intl/vi/guide/components/tasks-and-back-stack.jd b/docs/html-intl/intl/vi/guide/components/tasks-and-back-stack.jd
new file mode 100644
index 0000000..85affff
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/components/tasks-and-back-stack.jd
@@ -0,0 +1,578 @@
+page.title=Tác vụ và Ngăn xếp
+parent.title=Hoạt động
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Trong tài liệu này</h2>
+<ol>
+<li><a href="#ActivityState">Lưu Trạng thái của Hoạt động</a></li></li>
+<li><a href="#ManagingTasks">Quản lý Tác vụ</a>
+  <ol>
+    <li><a href="#TaskLaunchModes">Định nghĩa các chế độ khởi chạy</a></li>
+    <li><a href="#Affinities">Xử lý quan hệ</a></li>
+    <li><a href="#Clearing">Xóa ngăn xếp</a></li>
+    <li><a href="#Starting">Bắt đầu một tác vụ</a></li>
+  </ol>
+</li>
+</ol>
+
+<h2>Bài viết</h2>
+<ol>
+  <li><a href="http://android-developers.blogspot.com/2010/04/multitasking-android-way.html">
+  Đa nhiệm theo cách của Android</a></li>
+</ol>
+
+<h2>Xem thêm</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/navigation.html">Thiết kế Android:
+Điều hướng</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html">Phần tử bản kê khai {@code &lt;activity&gt;}
+</a></li>
+  <li><a href="{@docRoot}guide/components/recents.html">Màn hình Tổng quan</a></li>
+</ol>
+</div>
+</div>
+
+
+<p>Một ứng dụng thường chứa nhiều <a href="{@docRoot}guide/components/activities.html">hoạt động</a>. Mỗi hoạt động
+nên được thiết kế xung quanh một kiểu hành động cụ thể mà người dùng có thể thực hiện và bắt đầu các hoạt động
+khác. Ví dụ, một ứng dụng e-mail có thể có một hoạt động để hiển thị một danh sách các thư mới.
+Khi người dùng chọn một thư, một hoạt động mới sẽ mở ra để xem thư đó.</p>
+
+<p>Hoạt động thậm chí có thể bắt đầu các hoạt động tồn tại trong các ứng dụng khác trên thiết bị. Ví
+dụ, nếu ứng dụng của bạn muốn gửi một thư e-mail, bạn có thể định nghĩa một ý định để thực hiện một hành động
+"gửi" và bao gồm một số dữ liệu, chẳng hạn như địa chỉ e-mail và nội dung. Một hoạt động từ một ứng dụng
+khác tự khai báo là có khả năng xử lý kiểu ý định này sẽ mở ra. Trong trường hợp này,
+ý định sẽ gửi một e-mail, sao cho hoạt động "soạn" của một ứng dụng e-mail sẽ bắt đầu (nếu nhiều hoạt động
+hỗ trợ cùng ý định, khi đó hệ thống cho phép người dùng chọn hoạt động sẽ sử dụng). Khi e-mail được
+gửi, hoạt động của bạn tiếp tục và dường như hoạt động e-mail là một phần ứng dụng của bạn. Mặc dù
+các hoạt động có thể đến từ những ứng dụng khác nhau, Android duy trì trải nghiệm người dùng
+mượt mà này bằng cách giữ cả hai hoạt động trong cùng <em>tác vụ</em>.</p>
+
+<p>Tác vụ là một tập hợp gồm nhiều hoạt động mà người dùng tương tác với
+khi thực hiện một công việc nhất định. Các hoạt động được sắp xếp trong một chồng (<em>ngăn xếp</em>), theo
+thứ tự mở mỗi hoạt động.</p>
+
+<!-- SAVE FOR WHEN THE FRAGMENT DOC IS ADDED
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h3>Adding fragments to a task's back stack</h3>
+
+<p>Your activity can also include {@link android.app.Fragment}s to the back stack. For example,
+suppose you have a two-pane layout using fragments, one of which is a list view (fragment A) and the
+other being a layout to display an item from the list (fragment B). When the user selects an item
+from the list, fragment B is replaced by a new fragment (fragment C). In this case, it might be
+desireable for the user to navigate back to reveal fragment B, using the <em>Back</em> button.</p>
+<p>In order to add fragment B to the back stack so that this is possible, you must call {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} before you {@link
+android.app.FragmentTransaction#commit()} the transaction that replaces fragment B with fragment
+C.</p>
+<p>For more information about using fragments and adding them to the back stack, see the {@link
+android.app.Fragment} class documentation.</p>
+
+</div>
+</div>
+-->
+
+<p>Màn hình Trang chủ của thiết bị là nơi bắt đầu đối với hầu hết tác vụ. Khi người dùng chạm vào một biểu tượng trong trình khởi chạy
+ứng dụng
+ (hoặc lối tắt trên màn hình Trang chủ), tác vụ của ứng dụng đó sẽ tiến ra tiền cảnh. Nếu không
+có tác vụ nào cho ứng dụng (ứng dụng chưa được sử dụng gần đây), khi đó một tác vụ mới
+sẽ được tạo và hoạt động "chính" cho ứng dụng đó sẽ mở ra thành hoạt động gốc trong chồng.</p>
+
+<p>Khi hoạt động hiện tại bắt đầu một hoạt động khác, hoạt động mới sẽ bị đẩy lên trên cùng của chồng và
+có tiêu điểm. Hoạt động trước vẫn nằm trong chồng, nhưng bị dừng lại. Khi một hoạt động
+dừng, hệ thống giữ lại trạng thái hiện tại của giao diện người dùng của hoạt động đó. Khi người dùng nhấn nút
+<em>Quay lại</em>
+, hoạt động hiện tại được bật khỏi trên cùng của chồng (hoạt động bị hủy) và
+hoạt động trước tiếp tục (trạng thái trước đó của UI của nó được khôi phục). Các hoạt động trong chồng
+không bao giờ được sắp xếp lại, mà chỉ bị đẩy và bật khỏi chồng&mdash;bị đẩy lên trên chồng khi được bắt đầu bởi
+hoạt động hiện tại và bị bật khỏi chồng khi người dùng rời nó bằng cách sử dụng nút <em>Quay lại</em>. Như vậy,
+ngăn xếp
+vận hành như một cấu trúc đối tượng "vào cuối, ra đầu". Hình 1 minh họa
+hành vi này cùng một dòng thời gian thể hiện tiến độ giữa các hoạt động dọc theo ngăn xếp
+hiện tại ở từng thời điểm.</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack.png" alt="" />
+<p class="img-caption"><strong>Hình 1.</strong> Biểu diễn cách mỗi hoạt động mới trong một
+tác vụ thêm một mục vào ngăn xếp. Khi người dùng nhấn nút <em>Quay lại</em>, hoạt động
+hiện tại
+bị hủy và hoạt động trước đó tiếp tục.</p>
+
+
+<p>Nếu người dùng tiếp tục nhấn <em>Quay lại</em>, khi đó mỗi hoạt động trong chồng bị bật khỏi để
+hiện ra
+hoạt động trước, tới khi người dùng quay lại màn hình Trang chủ (hoặc trở về hoạt động đang chạy khi
+tác vụ bắt đầu). Khi tất cả hoạt động bị loại bỏ khỏi chồng, tác vụ sẽ không còn tồn tại.</p>
+
+<div class="figure" style="width:287px">
+<img src="{@docRoot}images/fundamentals/diagram_multitasking.png" alt="" /> <p
+class="img-caption"><strong>Hình 2.</strong> Hai tác vụ: Tác vụ B nhận tương tác người dùng
+trong tiền cảnh, trong khi Tác vụ A nằm dưới nền, chờ được tiếp tục.</p>
+</div>
+<div class="figure" style="width:215px">
+  <img src="{@docRoot}images/fundamentals/diagram_multiple_instances.png" alt="" /> <p
+class="img-caption"><strong>Hình 3.</strong> Một hoạt động đơn lẻ được khởi tạo nhiều lần.</p>
+</div>
+
+<p>Tác vụ là một đơn vị dính kết, có thể di chuyển tới "nền" khi người dùng bắt đầu một tác vụ mới hoặc đi đến
+màn hình Trang chủ, thông qua nút <em>Home</em>. Khi ở trong nền, tất cả hoạt động trong
+tác vụ bị
+dừng, nhưng ngăn xếp cho tác vụ vẫn không bị ảnh hưởng&mdash;tác vụ chỉ đơn thuần mất tiêu điểm trong khi
+một tác vụ khác thay thế, như minh họa trong hình 2. Khi đó, một tác vụ có thể quay lại "tiền cảnh" để người dùng
+có thể chọn ở nơi họ đã rời đi. Ví dụ, giả sử rằng tác vụ hiện tại (Tác vụ A) có ba
+hoạt động trong chồng của mình&mdash;hai trong số đó nằm dưới hoạt động hiện tại. Người dùng nhấn nút <em>Trang chủ</em>
+, sau đó
+bắt đầu một ứng dụng mới từ trình khởi chạy ứng dụng. Khi màn hình Trang chủ xuất hiện, Tác vụ A đi vào
+nền. Khi ứng dụng mới bắt đầu, hệ thống sẽ bắt đầu một tác vụ cho ứng dụng đó
+(Tác vụ B) bằng chồng các hoạt động của chính mình. Sau khi tương tác với
+ứng dụng đó, người dùng quay lại Trang chủ lần nữa và chọn ứng dụng
+đã bắt đầu Tác vụ A lúc đầu. Lúc này, Tác vụ A đi đến
+tiền cảnh&mdash;cả ba hoạt động trong chồng của nó đều giữ nguyên và hoạt động trên cùng
+của chồng được tiếp tục. Tại
+điểm này, người dùng cũng có thể chuyển trở lại Tác vụ B bằng cách đến Trang chủ và chọn biểu tượng ứng dụng
+đã bắt đầu tác vụ đó (hoặc bằng cách chọn tác vụ của ứng dụng từ
+<a href="{@docRoot}guide/components/recents.html">màn hình tổng quan</a>).
+Đây là một ví dụ về đa nhiệm trên Android.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Nhiều tác vụ có thể được lưu giữ cùng lúc trong nền.
+Tuy nhiên, nếu người dùng đang chạy nhiều tác vụ nền tại cùng thời điểm, hệ thống có thể bắt đầu
+hủy các hoạt động nền để khôi phục bộ nhớ, khiến trạng thái của hoạt động bị mất.
+Xem phần sau đây về <a href="#ActivityState">Trạng thái của hoạt động</a>.</p>
+
+<p>Vì các hoạt động trong ngăn xếp không bao giờ được sắp xếp lại, nếu ứng dụng của bạn cho phép
+người dùng bắt đầu một hoạt động cụ thể từ nhiều hơn một hoạt động, một thực thể mới của
+hoạt động đó sẽ được tạo và đẩy lên chồng (thay vì mang bất kỳ thực thể nào trước đó của
+hoạt động lên trên cùng). Như vậy, một hoạt động trong ứng dụng của bạn có thể được tạo phiên bản nhiều
+lần (thậm chí từ các tác vụ khác nhau), như minh họa trong hình 3. Như vậy, nếu người dùng điều hướng ngược lại
+bằng cách sử dụng nút <em>Quay lại</em>, mỗi thực thể của hoạt động được hiển thị theo thứ tự được
+mở (mỗi hoạt động
+có trạng thái UI của chính chúng). Tuy nhiên, bạn có thể sửa đổi hành vi này nếu không muốn một hoạt động được
+khởi tạo nhiều hơn một lần. Cách làm như vậy được bàn trong phần sau về <a href="#ManagingTasks">Quản lý Tác vụ</a>.</p>
+
+
+<p>Để tóm tắt hành vi mặc định đối với các hoạt động và tác vụ:</p>
+
+<ul>
+  <li>Khi Hoạt động A bắt đầu Hoạt động B, Hoạt động A bị dừng, nhưng hệ thống giữ lại trạng thái của nó
+(chẳng hạn như vị trí cuộn và văn bản được nhập vào các mẫu).
+Nếu người dùng nhấn nút <em>Quay lại</em> khi đang trong Hoạt động B, Hoạt động A sẽ tiếp tục với trạng thái
+được khôi phục.</li>
+  <li>Khi người dùng rời khỏi một tác vụ bằng cách nhấn nút <em>Trang chủ</em>, hoạt động hiện tại bị
+dừng và
+tác vụ của nó sẽ đưa xuống dưới nền. Hệ thống sẽ giữ lại trạng thái của mọi hoạt động trong tác vụ. Nếu
+sau đó người dùng tiếp tục tác vụ bằng cách chọn biểu tượng trình khởi chạy đã bắt đầu tác vụ, tác vụ sẽ vào
+tiền cảnh và tiếp tục hoạt động ở trên cùng của chồng.</li>
+  <li>Nếu người dùng nhấn nút <em>Quay lại</em>, hoạt động hiện tại bị bật khỏi chồng
+và
+bị hủy. Hoạt động trước đó ở trong chồng sẽ được tiếp tục. Khi một hoạt động bị hủy, hệ thống
+<em>không</em> giữ lại trạng thái của hoạt động đó.</li>
+  <li>Hoạt động có thể được khởi tạo nhiều lần, thậm chí từ các tác vụ khác.</li>
+</ul>
+
+
+<div class="note design">
+<p><strong>Thiết kế Điều hướng</strong></p>
+  <p>Để biết thêm về cách điều hướng ứng dụng hoạt động trên Android, hãy đọc hướng dẫn <a href="{@docRoot}design/patterns/navigation.html">Điều hướng</a> của Thiết kế Android.</p>
+</div>
+
+
+<h2 id="ActivityState">Lưu Trạng thái của Hoạt động</h2>
+
+<p>Như được đề cập ở trên, hành vi mặc định của hệ thống giữ nguyên trạng thái của một hoạt động khi nó bị
+dừng. Bằng cách này, khi người dùng điều hướng trở lại một hoạt động trước đó, giao diện người dùng của nó sẽ xuất hiện
+ như lúc bị rời đi. Tuy nhiên, bạn có thể&mdash;và <strong>nên</strong>&mdash;chủ động giữ lại
+trạng thái của các hoạt động của mình bằng cách sử dụng các phương pháp gọi lại, trong trường hợp hoạt động bị hủy và phải
+được tạo lại.</p>
+
+<p>Khi hệ thống dừng một trong các hoạt động của bạn (chẳng hạn như khi một hoạt động mới bắt đầu hoặc tác vụ
+di chuyển về nền), hệ thống có thể hoàn toàn hủy hoạt động đó nếu nó cần khôi phục
+bộ nhớ hệ thống. Khi điều này xảy ra, thông tin về trạng thái của hoạt động sẽ bị mất. Nếu điều này xảy ra, 
+hệ thống vẫn
+biết rằng hoạt động có một vị trí trong ngăn xếp, nhưng khi hoạt động được đưa tới vị trí trên cùng
+của chồng, hệ thống phải tạo lại nó (thay vì tiếp tục). Để tránh
+làm mất công việc của người dùng, bạn nên chủ động giữ lại nó bằng cách triển khai phương pháp gọi lại
+{@link android.app.Activity#onSaveInstanceState onSaveInstanceState()} trong
+hoạt động của mình.</p>
+
+<p>Để biết thêm thông tin về cách lưu trạng thái hoạt động của mình, hãy xem tài liệu <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Hoạt động</a>
+.</p>
+
+
+
+<h2 id="ManagingTasks">Quản lý Tác vụ</h2>
+
+<p>Cách Android quản lý tác vụ và ngăn xếp, như được mô tả bên trên&mdash;bằng cách đặt tất cả
+hoạt động được bắt đầu nối tiếp nhau vào cùng tác vụ và trong một chồng "vào cuối, ra đầu"&mdash;rất
+hiệu quả đối với hầu hết ứng dụng và bạn không phải lo lắng về cách thức các hoạt động của mình được liên kết với
+các tác vụ hay cách chúng tồn tại trong ngăn xếp. Tuy nhiên, bạn có thể quyết định rằng mình muốn gián đoạn
+hành vi thông thường. Có thể bạn muốn một hoạt động trong ứng dụng của mình bắt đầu một tác vụ mới khi nó được
+bắt đầu (thay vì được đặt trong tác vụ hiện tại); hoặc, khi bạn bắt đầu một hoạt động, bạn muốn
+mang lên trước một thực thể hiện tại của nó (thay vì tạo một
+thực thể mới trên cùng của ngăn xếp); hoặc, bạn muốn ngăn xếp của mình được xóa sạch tất cả các
+hoạt động, ngoại trừ hoạt động gốc khi người dùng rời khỏi tác vụ.</p>
+
+<p>Bạn có thể làm những điều này và nhiều điều khác với các thuộc tính trong phần tử bản kê khai
+<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+và cờ trong ý định mà bạn chuyển cho
+{@link android.app.Activity#startActivity startActivity()}.</p>
+
+<p>Về mặt này, các thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html">
+{@code &lt;activity&gt;}</a> chính mà bạn có thể sử dụng là:</p>
+
+<ul class="nolist">
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">
+  {@code taskAffinity}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">
+  {@code launchMode}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+  {@code allowTaskReparenting}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">
+  {@code clearTaskOnLaunch}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+  {@code alwaysRetainTaskState}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">
+  {@code finishOnTaskLaunch}</a></li>
+</ul>
+
+<p>Và các cờ ý định chính mà bạn có thể sử dụng là:</p>
+
+<ul class="nolist">
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</li>
+</ul>
+
+<p>Trong những phần sau, bạn sẽ thấy cách bạn có thể sử dụng những thuộc tính của bản kê khai
+và cờ ý định này để định nghĩa cách các hoạt động được liên kết với tác vụ và hành vi của chúng như thế nào trong ngăn xếp.</p>
+
+<p>Bên cạnh đó, có phần bàn riêng về việc cân nhắc cách các tác vụ và hoạt động có thể
+được biểu diễn và quản lý trong màn hình tổng quan. Xem phần <a href="{@docRoot}guide/components/recents.html">Màn hình Tổng quan</a>
+để biết thêm thông tin. Thông thường, bạn nên cho phép hệ thống định nghĩa tác vụ và các hoạt động
+của bạn được biểu diễn như thế nào trong màn hình tổng quan, và bạn không cần sửa đổi hành vi này.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Hầu hết các ứng dụng không nên gián đoạn hành vi
+mặc định cho các hoạt động và tác vụ. Nếu bạn xác định rằng hoạt động của bạn cần phải sửa đổi
+hành vi mặc định, hãy thận trọng và đảm bảo kiểm tra khả năng sử dụng được của hoạt động đó trong khi
+khởi chạy và khi điều hướng trở lại nó từ các hoạt động và tác vụ khác bằng nút <em>Quay lại</em>.
+Đảm bảo kiểm tra hành vi điều hướng mà có thể xung đột với hành vi được kỳ vọng của người dùng.</p>
+
+
+<h3 id="TaskLaunchModes">Định nghĩa các chế độ khởi chạy</h3>
+
+<p>Các chế độ khởi chạy cho phép bạn định nghĩa một thực thể mới của một hoạt động được liên kết với tác vụ hiện tại
+như thế nào. Bạn có thể định nghĩa các chế độ khởi chạy khác nhau theo hai cách:</p>
+<ul class="nolist">
+  <li><a href="#ManifestForTasks">Sử dụng tệp bản kê khai</a>
+    <p>Khi bạn khai báo một hoạt động trong tệp bản kê khai của mình, bạn có thể quy định hoạt động
+sẽ liên kết với các tác vụ như thế nào khi nó bắt đầu.</li>
+  <li><a href="#IntentFlagsForTasks">Sử dụng cờ Ý định</a>
+    <p>Khi bạn gọi {@link android.app.Activity#startActivity startActivity()},
+bạn có thể thêm một cờ vào {@link android.content.Intent} mà khai báo cách (hoặc
+liệu có hay không) hoạt động mới sẽ liên kết với tác vụ hiện tại.</p></li>
+</ul>
+
+<p>Như vậy, nếu Hoạt động A bắt đầu Hoạt động B, Hoạt động B có thể định nghĩa trong bản kê khai của mình cách nó
+sẽ liên kết với tác vụ hiện tại (nếu có) và Hoạt động A cũng có thể yêu cầu cách mà Hoạt động
+B sẽ liên kết với tác vụ hiện tại. Nếu cả hai hoạt động đều định nghĩa cách Hoạt động B
+nên liên kết với một tác vụ thì yêu cầu của Hoạt động A (như định nghĩa trong ý định) được ưu tiên
+so với yêu cầu của Hoạt động B (như được định nghĩa trong bản kê khai của nó).</p>
+
+<p class="note"><strong>Lưu ý:</strong> Một số chế độ khởi chạy sẵn có cho tệp bản kê khai
+không sẵn có dưới dạng cờ cho một ý định và, tương tự, một số chế độ khởi chạy sẵn có dưới dạng cờ
+cho một ý định không thể được định nghĩa trong bản kê khai.</p>
+
+
+<h4 id="ManifestForTasks">Sử dụng tệp bản kê khai</h4>
+
+<p>Khi khai báo một hoạt động trong tệp bản kê khai của bạn, bạn có thể quy định cách mà hoạt động
+sẽ liên kết với một tác vụ bằng cách sử dụng thuộc tính của phần tử <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+, <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a>.</p>
+
+<p>Thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> quy định một chỉ lệnh về cách hoạt động sẽ được khởi chạy vào một
+tác vụ. Có bốn chế độ khởi chạy khác nhau mà bạn có thể gán cho thuộc tính
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">launchMode</a></code>
+:</p>
+
+<dl>
+<dt>{@code "standard"} (chế độ mặc định)</dt>
+  <dd>Mặc định. Hệ thống tạo một thực thể mới của hoạt động trong tác vụ là nơi
+mà nó được bắt đầu và định tuyến ý định tới đó. Hoạt động có thể được khởi tạo nhiều lần,
+mỗi thực thể có thể thuộc về các tác vụ khác nhau, và một tác vụ có thể có nhiều thực thể.</dd>
+<dt>{@code "singleTop"}</dt>
+  <dd>Nếu một thực thể của hoạt động đã tồn tại ở trên cùng của tác vụ hiện tại, hệ thống
+sẽ định tuyến ý định tới thực thể đó thông qua một lệnh gọi tới phương pháp {@link
+android.app.Activity#onNewIntent onNewIntent()} của nó, thay vì tạo một thực thể mới của
+hoạt động. Hoạt động có thể được tạo phiên bản nhiều lần, mỗi thực thể có thể
+thuộc về các tác vụ khác nhau, và một tác vụ có thể có nhiều thực thể (nhưng chỉ nếu
+hoạt động nằm trên cùng của ngăn xếp <em>không</em> phải là một thực thể của hoạt động hiện có).
+  <p>Ví dụ, giả sử ngăn xếp của một tác vụ bao gồm hoạt động gốc A với các hoạt động B, C,
+và D ở trên cùng (chồng là A-B-C-D; D ở trên cùng). Một ý định đến cho loại hoạt động D.
+Nếu D có chế độ khởi chạy {@code "standard"} mặc định, một thực thể mới của lớp sẽ được khởi chạy và
+chồng trở thành A-B-C-D-D. Tuy nhiên, nếu chế độ khởi chạy của D là {@code "singleTop"}, thực thể hiện tại 
+của D sẽ nhận ý định thông qua {@link
+android.app.Activity#onNewIntent onNewIntent()}, bởi nó nằm ở vị trí trên cùng của chồng&mdash;chồng
+vẫn là A-B-C-D. Tuy nhiên, nếu một ý định đến cho hoạt động loại B, khi đó một thực thể
+mới của B sẽ được thêm vào chồng ngay cả khi chế độ khởi chạy của nó là {@code "singleTop"}.</p>
+  <p class="note"><strong>Lưu ý:</strong> Khi một thực thể mới của hoạt động được tạo,
+người dùng có thể nhấn nút <em>Quay lại</em> để quay về hoạt động trước đó. Nhưng khi một thực thể
+hiện tại của
+hoạt động xử lý một ý định mới, người dùng không thể nhấn nút <em>Quay lại</em> để quay về trạng thái
+của
+hoạt động trước khi ý định mới đến trong {@link android.app.Activity#onNewIntent
+onNewIntent()}.</p>
+</dd>
+
+<dt>{@code "singleTask"}</dt>
+  <dd>Hệ thống sẽ tạo ra một tác vụ mới và khởi tạo hoạt động ở gốc của tác vụ mới.
+Tuy nhiên, nếu một thực thể của hoạt động đã tồn tại trong một tác vụ riêng, hệ thống sẽ định tuyến
+ý định tới thực thể hiện tại thông qua một lệnh gọi tới phương pháp {@link
+android.app.Activity#onNewIntent onNewIntent()} của nó thay vì tạo một thực thể mới. Chỉ
+một thực thể của hoạt động có thể tồn tại ở một thời điểm.
+  <p class="note"><strong>Lưu ý:</strong> Mặc dù hoạt động bắt đầu một tác vụ mới, nút
+<em>Quay lại</em> sẽ vẫn đưa người dùng quay về hoạt động trước đó.</p></dd>
+<dt>{@code "singleInstance"}.</dt>
+  <dd>Giống như {@code "singleTask"}, trừ khi hệ thống không khởi chạy bất kỳ hoạt động nào khác vào
+tác vụ đang nắm giữ thực thể. Hoạt động luôn là thành viên đơn lẻ và duy nhất của tác vụ;
+bất kỳ hoạt động nào được bắt đầu bởi hoạt động này sẽ mở ra trong một tác vụ riêng.</dd>
+</dl>
+
+
+<p>Lấy một ví dụ khác, ứng dụng Trình duyệt của Android khai báo rằng hoạt động trình duyệt web sẽ
+luôn mở tác vụ của chính mình&mdash;bằng cách quy định chế độ khởi chạy {@code singleTask} trong phần tử <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>.
+Điều này có nghĩa rằng nếu ứng dụng của bạn phát hành một
+ý định để mở Trình duyệt Android, hoạt động của nó <em>không</em> được đặt trong cùng
+tác vụ như ứng dụng của bạn. Thay vào đó, hoặc là một tác vụ mới bắt đầu cho Trình duyệt hoặc, nếu Trình duyệt
+đã có một tác vụ đang chạy trong nền thì tác vụ đó sẽ được đưa lên trước để xử lý
+ý định mới.</p>
+
+<p>Không phụ thuộc vào việc một hoạt động bắt đầu trong một tác vụ mới hay trong cùng tác vụ mà hoạt động
+đã bắt đầu, nút <em>Quay lại</em> sẽ luôn đưa người dùng về hoạt động trước đó. Tuy nhiên, nếu bạn
+bắt đầu một hoạt động mà quy định chế độ khởi chạy {@code singleTask}, khi đó nếu một thực thể của
+hoạt động đó tồn tại trong một tác vụ nền, toàn bộ tác vụ đó sẽ được đưa ra tiền cảnh. Tại thời điểm này
+, lúc này ngăn xếp bao gồm tất cả hoạt động từ tác vụ được mang ra, ở vị trí trên cùng của
+chồng. Hình 4 minh họa loại kịch bản này.</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack_singletask_multiactivity.png" alt="" />
+<p class="img-caption"><strong>Hình 4.</strong> Biểu diễn cách thức một hoạt động với
+chế độ khởi chạy "singleTask" được thêm vào ngăn xếp. Nếu hoạt động đã là một phần của một
+tác vụ nền với ngăn xếp của chính nó, khi đó toàn bộ ngăn xếp cũng tiến
+về phía trước, ở trên cùng tác vụ hiện tại.</p>
+
+<p>Để biết thêm thông tin về việc sử dụng các chế độ khởi chạy trong tệp bản kê khai, hãy xem tài liệu phần tử
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, trong đó có trình bày thêm về thuộc tính {@code launchMode} và các giá trị
+được chấp nhận.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Hành vi mà bạn quy định cho hoạt động của mình bằng thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> có thể
+bị khống chế bởi cờ có ý định bắt đầu hoạt động của bạn, như được trình bày trong
+phần tiếp theo.</p>
+
+
+
+<h4 id="#IntentFlagsForTasks">Sử dụng cờ Ý định</h4>
+
+<p>Khi bắt đầu một hoạt động, bạn có thể sửa đổi liên kết mặc định giữa một hoạt động với tác vụ của nó
+bằng cách thêm cờ vào trong ý định mà bạn chuyển tới {@link
+android.app.Activity#startActivity startActivity()}. Những cờ mà bạn có thể sử dụng để sửa đổi
+hành vi mặc định là:</p>
+
+<p>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</dt>
+    <dd>Bắt đầu một hoạt động trong một tác vụ mới. Nếu đã có một tác vụ đang chạy cho hoạt động mà bạn đang
+bắt đầu, tác vụ đó sẽ được đưa ra tiền cảnh với trạng thái cuối cùng được khôi phục và hoạt động
+nhận ý định mới trong {@link android.app.Activity#onNewIntent onNewIntent()}.
+    <p>Điều này sẽ tạo ra cùng hành vi như giá trị {@code "singleTask"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>,
+đã được trình bày ở phần trước.</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</dt>
+    <dd>Nếu hoạt động đang được bắt đầu là hoạt động hiện tại (ở trên cùng của ngăn xếp), khi đó
+thực thể hiện có sẽ nhận một lệnh gọi đến {@link android.app.Activity#onNewIntent onNewIntent()},
+thay vì tạo một thực thể của hoạt động mới.
+    <p>Điều này sẽ tạo ra cùng hành vi như giá trị {@code "singleTop"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>,
+đã được trình bày ở phần trước.</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</dt>
+    <dd>Nếu hoạt động đang được bắt đầu đang chạy trong tác vụ hiện tại, khi đó
+thay vì khởi chạy một thực thể mới của hoạt động đó, tất cả các hoạt động khác bên trên nó đều
+bị hủy và ý định này được chuyển tới thực thể được tiếp tục của hoạt động (lúc này đang ở trên cùng),
+thông qua {@link android.app.Activity#onNewIntent onNewIntent()}).
+    <p>Không có giá trị cho thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+mà sinh ra hành vi này.</p>
+    <p>{@code FLAG_ACTIVITY_CLEAR_TOP} được sử dụng thường xuyên nhất cùng với
+    {@code FLAG_ACTIVITY_NEW_TASK}.
+Khi được sử dụng cùng nhau, những cờ này là một cách để định vị hoạt động hiện tại
+trong một tác vụ khác và đặt nó vào vị trí nơi nó có thể hồi đáp ý định. </p>
+    <p class="note"><strong>Lưu ý:</strong> Nếu chế độ khởi chạy của hoạt động được chỉ định là
+    {@code "standard"},
+nó cũng bị loại bỏ khỏi chồng và một thực thể mới sẽ được khởi chạy thay chỗ nó để xử lý
+ý định đến.  Đó là bởi một thực thể mới luôn được tạo cho ý định mới khi chế độ khởi chạy
+là {@code "standard"}. </p>
+</dd>
+</dl>
+
+
+
+
+
+<h3 id="Affinities">Xử lý quan hệ</h3>
+
+<p><em>Quan hệ</em> sẽ cho biết một hoạt động ưu tiên thuộc về tác vụ nào hơn. Theo mặc định, tất cả
+các hoạt động từ cùng ứng dụng có quan hệ với nhau. Vì thế, theo mặc định, tất cả
+hoạt động trong cùng ứng dụng ưu tiên ở trong cùng tác vụ hơn. Tuy nhiên, bạn có thể sửa đổi
+quan hệ mặc định cho một hoạt động. Các hoạt động được định nghĩa trong
+các ứng dụng khác nhau có thể chia sẻ một quan hệ, hoặc các hoạt động được định nghĩa trong cùng ứng dụng có thể
+được gán các quan hệ tác vụ khác nhau.</p>
+
+<p>Bạn có thể sửa đổi quan hệ cho bất kỳ hoạt động đã cho nào bằng thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a> của
+phần tử <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+.</p>
+
+<p>Thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+lấy một giá trị xâu, đó phải là giá trị duy nhất từ tên gói mặc định
+được khai báo trong phần tử <a href="{@docRoot}guide/topics/manifest/manifest-element.html">
+{@code &lt;manifest&gt;}
+</a>, do hệ thống sử dụng tên đó để nhận biết quan hệ
+tác vụ mặc định cho ứng dụng.</p>
+
+<p>Vấn đề quan hệ được xét trong hai trường hợp:</p>
+<ul>
+  <li>Khi ý định khởi chạy hoạt động chứa cờ
+  {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}
+.
+
+<p>Theo mặc định, một hoạt động mới được khởi chạy vào tác vụ của hoạt động
+đã gọi {@link android.app.Activity#startActivity startActivity()}. Nó được đẩy lên cùng
+ngăn xếp như trình gọi.  Tuy nhiên, nếu ý định được chuyển tới
+{@link android.app.Activity#startActivity startActivity()}
+chứa cờ {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}
+, hệ thống sẽ tìm một tác vụ khác để chứa hoạt động mới. Thường thì đó là một tác vụ mới.
+Tuy nhiên, không nhất thiết phải như vậy.  Nếu đã có một tác vụ hiện tại với cùng quan hệ như
+hoạt động mới, hoạt động sẽ được khởi chạy vào tác vụ đó.  Nếu không, nó sẽ bắt đầu một tác vụ mới.</p>
+
+<p>Nếu cờ này khiến một hoạt động bắt đầu một tác vụ mới và người dùng nhấn nút <em>Home</em>
+để rời
+nó thì phải có một cách nào đó để người dùng điều hướng quay lại tác vụ. Một số đối tượng (chẳng hạn như
+trình quản lý thông báo) luôn bắt đầu các hoạt động trong một tác vụ bên ngoài, không bao giờ bắt đầu trong chính tác vụ của mình, vì thế
+chúng luôn đặt {@code FLAG_ACTIVITY_NEW_TASK} vào ý định mà chúng chuyển tới
+{@link android.app.Activity#startActivity startActivity()}.
+Nếu bạn có một hoạt động có thể được gọi ra bởi
+một đối tượng bên ngoài mà có thể sử dụng cờ này, hãy lưu ý là người dùng có một cách độc lập để quay lại
+tác vụ đã được bắt đầu, chẳng hạn như bằng một biểu tượng trình khởi chạy (hoạt động gốc của tác vụ
+có một bộ lọc ý định {@link android.content.Intent#CATEGORY_LAUNCHER}; xem phần <a href="#Starting">Bắt đầu một tác vụ</a> ở bên dưới).</p>
+</li>
+
+  <li>Khi một hoạt động có thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+{@code allowTaskReparenting}</a> của nó được đặt thành {@code "true"}.
+  <p>Trong trường hợp này, hoạt động có thể di chuyển từ tác vụ mà nó bắt đầu tới tác vụ mà nó có quan hệ
+ khi tác vụ đó đi ra tiền cảnh.</p>
+  <p>Ví dụ, giả sử rằng một hoạt động với chức năng báo cáo tình hình thời tiết ở các thành phố được chọn
+được định nghĩa là một phần trong một ứng dụng du lịch.  Nó có cùng quan hệ như các hoạt động khác trong cùng
+ứng dụng (quan hệ ứng dụng mặc định) và nó cho phép tạo lại tập mẹ với thuộc tính này.
+Khi một trong các hoạt động của bạn bắt đầu hoạt động trình báo cáo thời tiết, ban đầu nó thuộc về cùng
+tác vụ như hoạt động của bạn. Tuy nhiên, khi tác vụ của ứng dụng du lịch đi ra tiền cảnh, hoạt động
+của trình báo cáo thời tiết được gán lại cho tác vụ đó và được hiển thị bên trong nó.</p>
+</li>
+</ul>
+
+<p class="note"><strong>Mẹo:</strong> Nếu một tệp {@code .apk} chứa nhiều hơn một "ứng dụng"
+từ quan điểm của người dùng, bạn có thể muốn sử dụng thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+để gán các quan hệ khác nhau cho hoạt động được liên kết với từng "ứng dụng".</p>
+
+
+
+<h3 id="Clearing">Xóa ngăn xếp</h3>
+
+<p>Nếu người dùng rời một tác vụ trong khoảng thời gian dài, hệ thống sẽ xóa tác vụ của tất cả hoạt động ngoại trừ
+hoạt động gốc.  Khi người dùng quay trở lại tác vụ, chỉ hoạt động gốc được khôi phục.
+Hệ thống sẽ hoạt động theo cách này, vì, sau một khoảng thời gian dài, người dùng có thể đã từ bỏ
+việc mà họ đang làm trước đó và quay lại tác vụ để bắt đầu một việc mới. </p>
+
+<p>Có một số thuộc tính hoạt động mà bạn có thể sử dụng để sửa đổi hành vi này: </p>
+
+<dl>
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#always">alwaysRetainTaskState</a></code>
+</dt>
+<dd>Nếu thuộc tính này được đặt thành {@code "true"} trong hoạt động gốc của một tác vụ,
+hành vi mặc định được mô tả sẽ không xảy ra.
+Tác vụ giữ lại tất cả hoạt động trong chồng của mình kể cả sau một khoảng thời gian dài.</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#clear">clearTaskOnLaunch</a></code></dt>
+<dd>Nếu thuộc tính này được đặt thành {@code "true"} trong hoạt động gốc của một tác vụ,
+chồng sẽ bị xóa tới hoạt động gốc bất cứ khi nào người dùng rời khỏi tác vụ
+và quay lại.  Nói cách khác, nó ngược với
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+{@code alwaysRetainTaskState}</a>. Người dùng luôn quay lại tác vụ ở
+trạng thái ban đầu của nó, ngay cả sau khi rời khỏi tác vụ trong chỉ một lúc.</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#finish">finishOnTaskLaunch</a></code>
+</dt>
+<dd>Thuộc tính này giống như <a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">{@code clearTaskOnLaunch}</a>,
+nhưng nó hoạt động trên một tác vụ
+đơn lẻ chứ không phải một tác vụ toàn bộ.  Nó cũng có thể khiến bất kỳ hoạt động nào
+thoát mất, bao gồm cả hoạt động gốc.  Khi nó được đặt thành {@code "true"}, hoạt động
+vẫn là một bộ phận của tác vụ chỉ cho phiên làm việc hiện tại.  Nếu người dùng rời đi
+rồi quay lại tác vụ, nó không còn xuất hiện nữa.</dd>
+</dl>
+
+
+
+
+<h3 id="Starting">Bắt đầu một tác vụ</h3>
+
+<p>Bạn có thể thiết lập một hoạt động làm điểm bắt đầu cho một tác vụ bằng cách đưa cho nó một bộ lọc ý định với
+{@code "android.intent.action.MAIN"} là hành động được quy định và
+{@code "android.intent.category.LAUNCHER"}
+là thể loại được quy định. Ví dụ:</p>
+
+<pre>
+&lt;activity ... &gt;
+    &lt;intent-filter ... &gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+    ...
+&lt;/activity&gt;
+</pre>
+
+<p>Một bộ lọc ý định loại này khiến một biểu tượng và nhãn cho
+hoạt động được hiển thị trong trình khởi chạy ứng dụng, cho phép người dùng khởi chạy hoạt động và
+quay lại tác vụ mà nó tạo ra vào bất cứ lúc nào sau khi nó được khởi chạy.
+</p>
+
+<p>Khả năng thứ hai này là quan trọng: Người dùng chắc chắn có thể rời một tác vụ rồi quay lại
+sau bằng cách sử dụng trình khởi chạy hoạt động này. Vì lý do này, hai <a href="#LaunchModes">chế độ
+khởi chạy</a> mà đánh dấu các hoạt động là luôn khởi tạo một tác vụ, {@code "singleTask"} và
+{@code "singleInstance"}, sẽ chỉ được sử dụng khi hoạt động có một
+{@link android.content.Intent#ACTION_MAIN}
+và một bộ lọc {@link android.content.Intent#CATEGORY_LAUNCHER}. Ví dụ, hãy tưởng tượng chuyện gì
+sẽ xảy ra nếu thiếu bộ lọc: Một ý định khởi chạy một hoạt động {@code "singleTask"}, khởi đầu một
+tác vụ mới và người dùng dành một khoảng thời gian làm việc trong tác vụ đó. Khi đó, người dùng nhấn nút <em>Home</em>
+. Lúc này, tác vụ được gửi tới nền và không hiển thị. Bây giờ, người dùng không có cách nào để quay lại
+tác vụ bởi nó không được biểu diễn trong trình khởi chạy ứng dụng.</p>
+
+<p>Đối với những trường hợp mà bạn không muốn người dùng có thể quay lại một hoạt động, hãy đặt giá trị của phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+, 
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">{@code finishOnTaskLaunch}</a>
+thành {@code "true"} (xem <a href="#Clearing">Xóa chồng</a>).</p>
+
+<p>Bạn có thể tham khảo thêm thông tin về cách các tác vụ và hoạt động được trình bày và quản lý trong
+màn hình tổng quan sẵn có tại phần <a href="{@docRoot}guide/components/recents.html">
+Màn hình Tổng quan</a>.</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how to use intents to
+activate other application components and publish the intents to which your components
+respond, continue with the <b><a
+href="{@docRoot}guide/components/intents-filters.html">Intents and Intent
+Filters</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/vi/guide/index.jd b/docs/html-intl/intl/vi/guide/index.jd
new file mode 100644
index 0000000..7be2d89
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/index.jd
@@ -0,0 +1,74 @@
+page.title=Giới thiệu về Android
+
+@jd:body
+
+
+<div class="sidebox" style="width:220px"><!-- width to match col-4 below -->
+<p>Để tìm hiểu về cách các ứng dụng hoạt động, hãy bắt đầu với phần
+<a href="{@docRoot}guide/components/fundamentals.html">Đại cương về Ứng dụng</a>.</p>
+<p>Để bắt đầu ngay với việc viết mã, hãy đọc phần <a href="{@docRoot}training/basics/firstapp/index.html">Xây dựng Ứng dụng Đầu tiên của Bạn</a>.</p>
+</div>
+
+<p>Android cung cấp một khuôn khổ ứng dụng phong phú cho phép bạn xây dựng các ứng dụng và trò chơi mới
+cho các thiết bị di động trong môi trường ngôn ngữ Java. Tài liệu được liệt kê trong vùng điều hướng
+bên trái sẽ cung cấp chi tiết về cách xây dựng ứng dụng bằng cách sử dụng các API khác nhau của Android.</p>
+
+<p>Nếu bạn mới làm quen với việc phát triển Android, quan trọng là bạn phải hiểu
+những khái niệm cơ bản sau về khuôn khổ ứng dụng Android:</p>
+
+
+<div class="landing-banner">
+
+<div class="col-6">
+
+<h4>Các ứng dụng cung cấp nhiều điểm nhập</h4>
+
+<p>Các ứng dụng Android được tích hợp như một sự kết hợp giữa các thành phần khác nhau có thể được gọi ra
+riêng. Ví dụ, một <em>hoạt động</em> riêng lẻ cung cấp một màn hình
+duy nhất cho một giao diện người dùng, và một <em>dịch vụ</em> chạy ngầm thực hiện độc lập
+công việc.</p>
+
+<p>Từ một thành phần, bạn có thể khởi động một thành phần khác bằng cách sử dụng một <em>ý định</em>. Thậm chí bạn có thể bắt đầu
+một thành phần trong một ứng dụng khác, chẳng hạn như một hoạt động trong một ứng dụng bản đồ để hiển thị một địa chỉ. Mô hình này
+cung cấp nhiều điểm nhập cho một ứng dụng duy nhất và cho phép bất kỳ ứng dụng nào xử lý như "mặc định"
+của một người dùng đối với một hành động mà các ứng dụng khác có thể gọi ra.</p>
+
+
+<p><b>Tìm hiểu thêm:</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/components/fundamentals.html">Đại cương về Ứng dụng</a>
+<li><a href="{@docRoot}guide/components/intents-filters.html">Ý định và Bộ lọc Ý định</a>
+<li><a href="{@docRoot}guide/components/activities.html">Hoạt động</a>
+</ul>
+
+</div>
+
+
+<div class="col-6">
+
+<h4>Các ứng dụng sẽ thích ứng theo các thiết bị khác nhau</h4>
+
+<p>Android cung cấp một khuôn khổ ứng dụng thích ứng cho phép bạn cung cấp các tài nguyên duy nhất
+cho các cấu hình thiết bị khác nhau. Ví dụ, bạn có thể tạo các tệp bố trí
+XML khác nhau cho các kích cỡ màn hình khác nhau và hệ thống
+sẽ xác định bố trí nào sẽ áp dụng dựa trên kích cỡ màn hình hiện tại của thiết bị.</p>
+
+<p>Bạn có thể truy vấn về sự sẵn có của các tính năng trên thiết bị vào thời gian chạy nếu bất kỳ tính năng nào của ứng dụng
+yêu cầu phần cứng cụ thể, chẳng hạn như máy ảnh. Nếu cần, bạn cũng có thể khai báo các tính năng mà ứng dụng của mình yêu cầu
+vì vậy, những chợ ứng dụng như Google Play Store không cho phép cài đặt trên những thiết bị không hỗ trợ
+tính năng đó.</p>
+
+
+<p><b>Tìm hiểu thêm:</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/practices/compatibility.html">Tính tương thích của Thiết bị</a>
+<li><a href="{@docRoot}guide/topics/resources/overview.html">Tổng quan về Tài nguyên</a>
+<li><a href="{@docRoot}guide/topics/ui/overview.html">Tổng quan về Giao diện Người dùng</a>
+</ul>
+
+</div>
+
+</div><!-- end landing-banner -->
+
+
+
diff --git a/docs/html-intl/intl/vi/guide/topics/manifest/manifest-intro.jd b/docs/html-intl/intl/vi/guide/topics/manifest/manifest-intro.jd
new file mode 100644
index 0000000..ca2ed26
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/manifest/manifest-intro.jd
@@ -0,0 +1,517 @@
+page.title=Bản kê khai Ứng dụng
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Trong tài liệu này</h2>
+<ol>
+<li><a href="#filestruct">Cấu trúc của Tệp Bản kê khai</a></li>
+<li><a href="#filec">Các Quy ước Tệp</a>
+<li><a href="#filef">Các Tính năng Tệp</a>
+	<ol>
+	<li><a href="#ifs">Bộ lọc Ý định</a></li>
+	<li><a href="#iconlabel">Biểu tượng và Nhãn</a></li>
+	<li><a href="#perms">Quyền</a></li>
+	<li><a href="#libs">Thư viện</a></li>
+	</ol></li>
+</ol>
+</div>
+</div>
+
+<p>
+  Mọi ứng dụng đều phải có một tệp AndroidManifest.xml (chính xác là
+  tên gọi này) trong thư mục gốc của mình. <span itemprop="description">Tệp bản kê khai
+  trình bày những thông tin thiết yếu về ứng dụng của bạn với hệ thống Android,
+  thông tin mà hệ thống phải có trước khi có thể chạy bất kỳ mã nào
+  của ứng dụng.</span> Ngoài một số mục đích khác, bản kê khai thực hiện những điều sau:
+</p>
+
+<ul>
+<li>Nó đặt tên gói Java cho ứng dụng.
+Tên gói đóng vai trò như một mã nhận diện duy nhất cho ứng dụng.</li>
+
+<li>Nó mô tả các thành phần của ứng dụng &mdash; hoạt động, 
+dịch vụ, hàm nhận quảng bá, và trình cung cấp nội dung mà ứng dụng 
+được soạn bởi.  Nó đặt tên các lớp triển khai từng thành phần và 
+công bố các khả năng của chúng (ví dụ, những tin nhắn {@link android.content.Intent 
+Intent} mà chúng có thể xử lý).  Những khai báo này cho phép hệ thống Android 
+biết các thành phần là gì và chúng có thể được khởi chạy trong những điều kiện nào.</li>
+
+<li>Nó xác định những tiến trình nào sẽ lưu trữ các thành phần ứng dụng.</li>  
+
+<li>Nó khai báo các quyền mà ứng dụng phải có để 
+truy cập các phần được bảo vệ của API và tương tác với các ứng dụng khác.</li>  
+
+<li>Nó cũng khai báo các quyền mà ứng dụng khác phải có để 
+tương tác với các thành phần của ứng dụng.</li>
+
+<li>Nó liệt kê các lớp {@link android.app.Instrumentation} cung cấp 
+tính năng tạo hồ sơ và các thông tin khác khi ứng dụng đang chạy.  Những khai báo này 
+chỉ xuất hiện trong bản kê khai khi ứng dụng đang được phát triển và 
+thử nghiệm; chúng bị loại bỏ trước khi ứng dụng được công bố.</li>
+
+<li>Nó khai báo mức tối thiểu của API Android mà ứng dụng 
+yêu cầu.</li>
+
+<li>Nó liệt kê các thư viện mà ứng dụng phải được liên kết với.</li>
+</ul>
+
+
+<h2 id="filestruct">Cấu trúc của Tệp Bản kê khai</h2>
+
+<p>
+Sơ đồ bên dưới minh họa cấu trúc chung của tệp bản kê khai và mọi 
+phần tử mà nó có thể chứa.  Từng phần tử, cùng với tất cả thuộc tính 
+của mình, sẽ được lập tài liệu theo dõi đầy đủ vào một tệp riêng.  Để xem thông tin 
+chi tiết về mọi phần tử, hãy nhấp vào tên phần tử trong sơ đồ, 
+trong danh sách các phần tử theo thứ tự chữ cái mà tuân theo sơ đồ, hoặc trên bất kỳ
+nội dung nào khác đề cập tới tên phần tử. 
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration /&gt;</a>  <!-- ##api level 3## -->
+    <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html">&lt;compatible-screens /&gt;</a>  <!-- ##api level 9## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-gl-texture-element.html">&lt;supports-gl-texture /&gt;</a>  <!-- ##api level 11## -->
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;/activity&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;/activity-alias&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data/&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;/service&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;/receiver&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/path-permission-element.html">&lt;path-permission /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;/provider&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library /&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;/application&gt;</a>
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;/manifest&gt;</a>
+</pre>
+
+<p>
+Tất cả phần tử có thể xuất hiện trong tệp bản kê khai được liệt kê ở bên dưới 
+theo thứ tự chữ cái.  Đây là những phần tử hợp pháp duy nhất; bạn không thể 
+thêm các phần tử hay thuộc tính của chính mình.  
+</p>
+
+<p style="margin-left: 2em">
+<code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration&gt;</a></code>  <!-- ##api level 3## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></code>
+</p>
+
+
+    
+
+<h2 id="filec">Các Quy ước Tệp</h2>
+
+<p>
+Một số quy ước và quy tắc áp dụng chung cho tất cả các phần tử và thuộc tính 
+trong bản kê khai:
+</p>
+
+<dl>
+<dt><b>Phần tử</b></dt>
+<dd>Chỉ các phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> và
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+là bắt buộc phải có, chúng đều phải có mặt và chỉ có thể xảy ra một lần.  
+Hầu hết các phần tử khác có thể xảy ra nhiều lần hoặc không xảy ra &mdash; mặc dù ít 
+nhất một vài trong số chúng phải có mặt để bản kê khai thực sự có 
+ý nghĩa nào đó.
+
+<p>
+Nếu một phần tử chứa bất kỳ nội dung nào, nó có thể chứa các phần tử khác.  
+Tất cả giá trị sẽ được đặt thông qua thuộc tính, chứ không phải là dữ liệu ký tự trong một phần tử.
+</p>
+
+<p>
+Các phần tử cùng cấp thường không theo thứ tự.  Ví dụ, các phần tử
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>, 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>, và 
+<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> 
+có thể được trộn lẫn với nhau theo bất kỳ trình tự nào.  (Phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+là trường hợp ngoại lệ đối với quy tắc này:  Nó phải tuân theo 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 
+, đối tượng mà nó là bí danh cho.)
+</p></dd>
+
+<dt><b>Thuộc tính</b></dt>
+<dd>Theo cách hiểu thông thường, tất cả thuộc tính đều mang tính tùy chọn.  Tuy nhiên, có một số thuộc tính 
+phải được quy định cho một phần tử để hoàn thành mục đích của nó.  Sử dụng 
+tài liệu làm hướng dẫn.  Đối với những thuộc tính thực sự tùy chọn, nó đề cập tới một giá trị
+mặc định hoặc thông báo điều gì sẽ xảy ra nếu không có một đặc tả.
+
+<p>Ngoài một số thuộc tính của phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 
+gốc, tất cả tên thuộc tính đều bắt đầu bằng một tiền tố {@code android:}&mdash; 
+ví dụ, {@code android:alwaysRetainTaskState}.  Do tiền tố này 
+phổ dụng, tài liệu thường bỏ sót nó khi tham chiếu tới các thuộc tính 
+theo tên.</p></dd>
+
+<dt><b>Khai báo tên lớp</b></dt>
+<dd>Nhiều thuộc tính tương ứng với các đối tượng Java, bao gồm các phần tử cho 
+chính ứng dụng (phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+) và các thành phần chính của nó &mdash; hoạt động 
+(<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>), 
+dịch vụ 
+(<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>), 
+hàm nhận quảng bá 
+(<code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>), 
+và trình cung cấp nội dung 
+(<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>).  
+
+<p>
+Nếu bạn định nghĩa một lớp con như vẫn luôn làm đối với lớp thành phần 
+({@link android.app.Activity}, {@link android.app.Service}, 
+{@link android.content.BroadcastReceiver}, và {@link android.content.ContentProvider}), 
+lớp con sẽ được khai báo thông qua một thuộc tính {@code name}.  Tên phải bao gồm 
+chỉ định gói đầy đủ.  
+Ví dụ, một lớp con {@link android.app.Service} có thể được khai báo như sau:
+</p>
+
+<pre>&lt;manifest . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name="com.example.project.SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+Tuy nhiên, do cách viết tốc ký, nếu ký tự đầu tiên của xâu là một dấu chấm, 
+xâu sẽ được nối với tên gói của ứng dụng (như được quy định bởi 
+thuộc tính của phần tử <code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 
+
+<code>, <a href="{@docRoot}guide/topics/manifest/manifest-element.html#package">package</a></code> 
+).  Cách gán sau cũng giống như trên: 
+</p>
+
+<pre>&lt;manifest package="com.example.project" . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name=".SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+Khi khởi động một thành phần, Android sẽ tạo một thực thể của lớp con được nêu tên.  
+Nếu lớp con không được quy định, nó sẽ tạo một thực thể của lớp cơ sở.
+</p></dd>
+
+<dt><b>Nhiều giá trị</b></dt>
+<dd>Nếu có thể quy định nhiều hơn một giá trị, phần tử gần như luôn 
+được lặp lại, thay vì liệt kê nhiều giá trị trong một phần tử duy nhất.  
+Ví dụ, một bộ lọc ý định có thể liệt kê vài hành động:
+
+<pre>&lt;intent-filter . . . &gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.INSERT" /&gt;
+    &lt;action android:name="android.intent.action.DELETE" /&gt;
+    . . .
+&lt;/intent-filter&gt;</pre></dd>
+
+<dt><b>Giá trị tài nguyên</b></dt>
+<dd>Một số thuộc tính có các giá trị có thể được hiển thị với người dùng &mdash; ví 
+dụ, một nhãn và một biểu tượng cho một hoạt động.  Giá trị của những thuộc tính này 
+cần được cục bộ hóa và vì thế phải được thiết đặt từ một tài nguyên hoặc chủ đề.  Giá trị 
+tài nguyên được biểu diễn theo định dạng sau,</p>
+
+<p style="margin-left: 2em">{@code @[<i>gói</i>:]<i>kiểu</i>:<i>tên</i>}</p>
+
+<p>
+trong đó <i>gói</i> có thể được bỏ qua nếu tài nguyên nằm trong cùng gói 
+với ứng dụng, <i>kiểu</i> là kiểu của tài nguyên &mdash; chẳng hạn như "xâu" hoặc 
+&mdash; "vẽ được" và <i>tên</i> là tên nhận biết tài nguyên cụ thể.  
+Ví dụ:
+</p>
+
+<pre>&lt;activity android:icon="@drawable/smallPic" . . . &gt</pre>
+
+<p>
+Các giá trị từ một chủ đề được biểu diễn theo cách tương tự, nhưng với một '{@code ?}' 
+thay vì '{@code @}' ở đầu:
+</p>
+
+<p style="margin-left: 2em">{@code ?[<i>gói</i>:]<i>kiểu</i>:<i>tên</i>}
+</p></dd>
+
+<dt><b>Giá trị xâu</b></dt>
+<dd>Trường hợp giá trị của một thuộc tính là một xâu, phải sử dụng hai dấu xuyệc ngược ('{@code \\}') 
+để thoát các ký tự &mdash; ví dụ, '{@code \\n}' đối với 
+một dòng tin tức hoặc '{@code \\uxxxx}' đối với một ký tự Unicode.</dd>
+</dl>
+
+
+<h2 id="filef">Các Tính năng Tệp</h2>
+
+<p>
+Phần sau đây mô tả cách phản ánh một số tính năng của Android 
+trong tệp bản kê khai.
+</p>
+
+
+<h3 id="ifs">Bộ lọc Ý định</h3>
+
+<p>
+Các thành phần cốt lõi của một ứng dụng (hoạt động, dịch vụ và hàm nhận 
+quảng bá) được kích hoạt bởi <i>ý định</i>.  Ý định là một 
+gói thông tin (một đối tượng {@link android.content.Intent}) mô tả một 
+hành động mong muốn &mdash; bao gồm dữ liệu sẽ được dựa trên, thể loại của 
+thành phần mà sẽ thực hiện hành động, và các chỉ dẫn thích hợp khác.  
+Android định vị một thành phần phù hợp để hồi đáp ý định, khởi chạy 
+một thực thể mới của thành phần nếu cần, và chuyển cho nó đối tượng đó 
+Ý định.
+</p>
+
+<p>
+Các thành phần sẽ quảng cáo khả năng của mình &mdash; các kiểu ý định mà chúng có thể 
+hồi đáp &mdash; thông qua <i>các bộ lọc ý định</i>.  Do hệ thống Android phải 
+tìm hiểu một thành phần có thể xử lý những ý định nào trước khi khởi chạy thành phần đó, 
+bộ lọc ý định được quy định trong bản kê khai như là các phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+.  Một thành phần có thể có nhiều bộ lọc, mỗi bộ lọc lại mô tả 
+một khả năng khác nhau.
+</p>
+
+<p>
+Một ý định mà công khai nêu tên một thành phần mục tiêu sẽ kích hoạt thành phần đó;
+bộ lọc không có vai trò gì ở đây.  Nhưng một ý định mà không quy định một mục tiêu
+theo tên sẽ chỉ có thể kích hoạt thành phần nếu nó có thể chuyển qua một trong các bộ lọc của
+thành phần.
+</p>
+
+<p>
+Để biết thông tin về cách các đối tượng Ý định được kiểm tra thông qua bộ lọc ý định, 
+hãy xem tài liệu riêng có tiêu đề 
+<a href="{@docRoot}guide/components/intents-filters.html">Ý định 
+và Bộ lọc Ý định</a>.
+</p>
+
+
+<h3 id="iconlabel">Biểu tượng và Nhãn</h3>
+
+<p>
+Nhiều phần tử có thuộc tính {@code icon} và {@code label} cho một 
+biểu tượng nhỏ và nhãn văn bản mà có thể được hiển thị với người dùng.  Một số cũng có thuộc tính 
+{@code description} cho văn bản giải trình dài hơn mà cũng có thể 
+được hiển thị trên màn hình.  Ví dụ, phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+có cả ba thuộc tính này, vì thế khi người dùng được hỏi xem có 
+cấp quyền cho một ứng dụng yêu cầu hay không, biểu tượng thể hiện 
+quyền, tên của quyền, và mô tả nội dung
+của quyền đó đều có thể được trình bày cho người dùng xem.
+</p>
+
+<p>
+Trong mọi trường hợp, biểu tượng và nhãn được đặt trong một phần tử chứa sẽ trở thành các thiết đặt 
+{@code icon} và {@code label} mặc định cho tất cả phần tử con của bộ chứa đó.  
+Vì thế, biểu tượng và nhãn được đặt trong phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+là biểu tượng và nhãn mặc định cho từng thành phần của ứng dụng.  
+Tương tự, biểu tượng và nhãn được đặt cho một thành phần &mdash; ví dụ, một phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 
+&mdash; sẽ là các cài đặt mặc định cho từng phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code> 
+của thành phần đó.  Nếu một phần tử
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 
+thiết đặt một nhãn, nhưng hoạt động và bộ lọc ý định của nó thì không, 
+nhãn ứng dụng sẽ được coi là nhãn của cả hoạt động và 
+bộ lọc ý định.
+</p>
+
+<p>
+Biểu tượng và nhãn được đặt cho một bộ lọc ý định sẽ được sử dụng để biểu diễn một thành phần 
+bất cứ khi nào thành phần đó được trình bày với người dùng để thực hiện chức năng
+mà bộ lọc đã quảng cáo.  Ví dụ, một bộ lọc với các thiết đặt 
+"{@code android.intent.action.MAIN}" và 
+"{@code android.intent.category.LAUNCHER}" quảng cáo một hoạt động 
+là hoạt động khởi đầu một ứng dụng &mdash; cụ thể, là
+hoạt động sẽ được hiển thị trong trình khởi chạy ứng dụng.  Vì thế, biểu tượng và nhãn 
+được đặt trong bộ lọc là những nội dung được hiển thị trong trình khởi chạy.
+</p>
+
+
+<h3 id="perms">Quyền</h3>
+
+<p>
+Một <i>quyền</i> là sự hạn chế giới hạn truy cập vào một phần của mã 
+hoặc vào dữ liệu trên thiết bị.   Giới hạn này được áp đặt nhằm bảo vệ dữ liệu 
+và mã trọng yếu, có thể bị lạm dụng để bóp méo hoặc làm hỏng trải nghiệm người dùng.  
+</p>
+
+<p>
+Mỗi quyền được nhận biết bằng một nhãn duy nhất.  Thông thường, nhãn cho biết 
+hành động bị hạn chế.  Ví dụ, sau đây là một số quyền được định nghĩa 
+bởi Android:
+</p>
+
+<p style="margin-left: 2em">{@code android.permission.CALL_EMERGENCY_NUMBERS}
+<br/>{@code android.permission.READ_OWNER_DATA}
+<br/>{@code android.permission.SET_WALLPAPER}
+<br/>{@code android.permission.DEVICE_POWER}</p>
+
+<p>
+Một tính năng có thể được bảo vệ bởi nhiều nhất một quyền.
+</p>
+
+<p>
+Nếu một ứng dụng cần truy cập vào một tính năng được bảo vệ bởi một quyền, 
+nó phải khai báo rằng nó yêu cầu quyền đó cùng với một phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 
+trong bản kê khai.  Lúc đó, khi ứng dụng được cài đặt trên 
+thiết bị, trình cài đặt sẽ xác định xem có cấp quyền 
+được yêu cầu hay không bằng cách kiểm tra các thẩm quyền đã ký chứng chỉ 
+của ứng dụng và trong một số trường hợp, bằng cách hỏi người dùng.  
+Nếu quyền được cấp, ứng dụng có thể sử dụng các tính năng 
+được bảo vệ.  Nếu không, việc thử truy cập những tính năng đó sẽ thất bại
+mà không có bất kỳ thông báo nào cho người dùng. 
+</p>
+
+<p>
+Một ứng dụng cũng có thể bảo vệ các thành phần của chính nó (hoạt động, dịch vụ, 
+hàm nhận quảng bá và trình cung cấp nội dung) bằng các quyền.  Nó có thể sử dụng 
+bất kỳ quyền nào được định nghĩa bởi Android (được liệt kê trong 
+{@link android.Manifest.permission android.Manifest.permission}) hoặc được khai báo 
+bởi các ứng dụng khác.  Hoặc nó có thể tự định nghĩa quyền của mình.  Một quyền mới được khai báo 
+bằng phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+.  Ví dụ, một hoạt động có thể được bảo vệ như sau:
+</p>
+
+<pre>
+&lt;manifest . . . &gt;
+    &lt;permission android:name="com.example.project.DEBIT_ACCT" . . . /&gt;
+    &lt;uses-permission android:name="com.example.project.DEBIT_ACCT" /&gt;
+    . . .
+    &lt;application . . .&gt;
+        &lt;activity android:name="com.example.project.FreneticActivity"
+                  android:permission="com.example.project.DEBIT_ACCT"
+                  . . . &gt;
+            . . .
+        &lt;/activity&gt;
+    &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>
+Lưu ý rằng trong ví dụ này, quyền {@code DEBIT_ACCT} không chỉ 
+được khai báo bằng phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+, việc sử dụng quyền cũng được yêu cầu bằng phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 
+.  Phải yêu cầu sử dụng quyền để các thành phần khác của 
+ứng dụng nhằm khởi chạy hoạt động được bảo vệ, mặc dù việc bảo vệ 
+do chính ứng dụng áp đặt.  
+</p>
+
+<p>
+Trong cùng ví dụ này, nếu thuộc tính {@code permission} được đặt thành một quyền 
+được khai báo ở nơi khác 
+(chẳng hạn như {@code android.permission.CALL_EMERGENCY_NUMBERS}, sẽ không 
+cần phải khai báo lại nó bằng một phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+.  Tuy nhiên, sẽ vẫn cần phải yêu cầu sử dụng nó bằng 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>. 
+</p>
+
+<p>
+Phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code> 
+sẽ khai báo một vùng tên cho nhóm quyền mà sẽ được định nghĩa trong 
+mã.  Và 
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+sẽ định nghĩa một nhãn cho một tập hợp quyền (cả được khai báo trong bản kê khai bằng phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+và được khai báo ở chỗ khác).  Nó chỉ ảnh hưởng tới cách các quyền được 
+nhóm lại khi được trình bày với người dùng.  Phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+không quy định những quyền nào thuộc về nhóm; 
+nó chỉ đặt cho nhóm một cái tên.  Một quyền được đặt vào nhóm
+bằng cách gán tên nhóm với thuộc tính của phần tử
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
+, 
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html#pgroup">permissionGroup</a></code> 
+.
+</p>
+
+
+<h3 id="libs">Thư viện</h3>
+
+<p>
+Mọi ứng dụng đều được liên kết với thư viện Android mặc định, nó 
+bao gồm các gói cơ bản để xây dựng ứng dụng (bằng các lớp thông dụng 
+chẳng hạn như Hoạt động, Dịch vụ, Ý định, Dạng xem, Nút, Ứng dụng, Trình cung cấp Nội dung, 
+v.v.).
+</p>
+
+<p>
+Tuy nhiên, một số gói nằm trong thư viện của chính mình.  Nếu ứng dụng của bạn 
+sử dụng mã từ bất kỳ gói nào trong những gói này, nó phải công khai yêu cầu được liên kết 
+với chúng.  Bản kê khai phải chứa một phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code> 
+riêng để đặt tên cho từng thư viện.  (Tên thư viện có thể được tìm thấy trong tài liệu 
+của gói.)
+</p>
diff --git a/docs/html-intl/intl/vi/guide/topics/providers/calendar-provider.jd b/docs/html-intl/intl/vi/guide/topics/providers/calendar-provider.jd
new file mode 100644
index 0000000..e2ecdb3
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/providers/calendar-provider.jd
@@ -0,0 +1,1184 @@
+page.title=Trình cung cấp Lịch
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>Trong tài liệu này</h2>
+    <ol>
+  <li><a href="#overview">Nội dung Cơ bản</a></li>
+  <li><a href="#manifest">Quyền của Người dùng</a></li>
+  <li><a href="#calendar">Bảng Lịch</a>
+<ol>
+      <li><a href="#query">Truy vấn một lịch</a></li>
+      <li><a href="#modify-calendar">Sửa đổi một lịch</a></li>
+      <li><a href="#insert-calendar">Chèn một lịch</a></li>
+    </ol>
+  </li>
+  <li><a href="#events">Bảng Sự kiện</a>
+<ol>
+      <li><a href="#add-event">Thêm Sự kiện</a></li>
+      <li><a href="#update-event">Cập nhật Sự kiện</a></li>
+      <li><a href="#delete-event">Xóa Sự kiện</a></li>
+    </ol>
+  </li>
+  <li><a href="#attendees">Bảng Người dự</a>
+<ol>
+      <li><a href="#add-attendees">Thêm Người dự</a></li>
+    </ol>
+  </li>
+  <li><a href="#reminders">Bảng Nhắc nhở</a>
+<ol>
+      <li><a href="#add-reminders">Thêm Nhắc nhở</a></li>
+    </ol>
+  </li>
+  <li><a href="#instances">Bảng Thực thể</a>
+  <ol>
+      <li><a href="#query-instances">Truy vấn bảng Thực thể</a></li>
+  </ol></li>
+  <li><a href="#intents">Ý định Lịch</a>
+  <ol>
+      <li><a href="#intent-insert">Sử dụng ý định để chèn một sự kiện</a></li>
+      <li><a href="#intent-edit">Sử dụng ý định để chỉnh sửa một sự kiện</a></li>
+      <li><a href="#intent-view">Sử dụng ý định để xem dữ liệu lịch</a></li>
+    </ol>
+  </li>
+  
+  <li><a href="#sync-adapter">Trình điều hợp Đồng bộ</a></li>
+</ol>
+
+    <h2>Lớp khóa</h2>
+    <ol>
+      <li>{@link android.provider.CalendarContract.Calendars}</li>
+      <li>{@link android.provider.CalendarContract.Events}</li>
+      <li>{@link android.provider.CalendarContract.Attendees}</li>
+      <li>{@link android.provider.CalendarContract.Reminders}</li>
+    </ol>
+</div>
+</div>
+
+<p>Trình cung cấp Lịch là một kho lưu trữ các sự kiện lịch của người dùng. API
+Trình cung cấp Lịch cho phép bạn thực hiện truy vấn, chèn, cập nhật và xóa
+các thao tác trên lịch, sự kiện, người dự, nhắc nhở, v.v.</p>
+
+
+<p>API Trình cung cấp Lịch có thể được sử dụng bởi các ứng dụng và trình điều hợp đồng bộ. Các quy tắc
+thay đổi tùy vào loại chương trình đang thực hiện lệnh gọi. Tài liệu này
+tập trung chủ yếu vào việc sử dụng API Trình cung cấp Lịch như một ứng dụng. Để bàn 
+về việc các trình điều hợp đồng bộ khác nhau như thế nào, hãy xem phần 
+<a href="#sync-adapter">Trình điều hợp Đồng bộ</a>.</p>
+
+
+<p>Thông thường, để đọc hoặc ghi dữ liệu lịch, bản kê khai của ứng dụng phải
+bao gồm các quyền thích hợp của người dùng, được nêu trong phần <a href="#manifest">Quyền
+của Người dùng</a>. Để thực hiện các thao tác chung dễ hơn, Trình cung cấp
+Lịch đưa ra một tập hợp ý định, như được mô tả trong phần <a href="#intents">Ý định
+Lịch</a>. Những ý định này đưa người dùng tới ứng dụng Lịch để chèn, xem,
+và chỉnh sửa sự kiện. Người dùng tương tác với ứng dụng Lịch rồi
+quay lại ứng dụng ban đầu. Vì thế, ứng dụng của bạn không cần yêu cầu quyền,
+và cũng không cần cung cấp một giao diện người dùng để xem hoặc tạo sự kiện.</p>
+
+<h2 id="overview">Nội dung Cơ bản</h2>
+
+<p><a href="{@docRoot}guide/topics/providers/content-providers.html">Các trình cung cấp nội dung</a> sẽ lưu trữ dữ liệu và cho phép truy cập 
+ứng dụng. Trình cung cấp nội dung được nền tảng Android giới thiệu (bao gồm Trình cung cấp Lịch) thường trình bày dữ liệu như một tập hợp gồm nhiều bảng dựa trên một
+mô hình cơ sở dữ liệu quan hệ, trong đó mỗi hàng là một bản ghi và mỗi cột là dữ liệu thuộc
+một loại và có ý nghĩa cụ thể. Thông qua API Trình cung cấp Lịch, các ứng dụng
+và trình điều hợp đồng bộ có thể nhận được quyền truy cập đọc/ghi vào các bảng trong cơ sở dữ liệu là nơi chứa
+dữ liệu lịch của người dùng.</p>
+
+<p>Mọi trình cung cấp nội dung đều đưa ra một URI công khai (được bẻ dòng như một đối tượng 
+{@link android.net.Uri}
+) để xác định tập dữ liệu của nó một cách duy nhất.  Trình cung cấp nội dung mà kiểm soát nhiều
+ tập dữ liệu (nhiều bảng) sẽ đưa ra một URI riêng cho từng bảng.  Tất cả 
+URI cho trình cung cấp đều bắt đầu bằng xâu "content://".  Điều này
+sẽ xác định dữ liệu là đang được kiểm soát bởi một trình cung cấp nội dung. Trình cung cấp
+Lịch định nghĩa các hằng số cho URI đối với từng lớp (bảng) của nó. Những URI
+này có định dạng <code><em>&lt;class&gt;</em>.CONTENT_URI</code>. Ví
+dụ, {@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}.</p>
+
+<p>Hình 1 cho biết biểu diễn đồ họa của mô hình dữ liệu Trình cung cấp Lịch. Nó cho biết
+các bảng chính và các trường liên kết chúng với nhau.</p>
+
+<img src="{@docRoot}images/providers/datamodel.png" alt="Calendar Provider Data Model" />
+<p class="img-caption"><strong>Hình 1.</strong> Mô hình dữ liệu Trình cung cấp Lịch.</p>
+
+<p>Một người dùng có thể có nhiều lịch, và các lịch khác nhau có thể được liên kết với các loại tài khoản khác nhau (Google Calendar, Exchange, v.v.).</p>
+
+<p>{@link android.provider.CalendarContract} sẽ định nghĩa mô hình dữ liệu của thông tin liên quan tới lịch và sự kiện. Dữ liệu này được lưu trữ trong nhiều bảng như liệt kê bên dưới.</p>
+
+<table>
+  <tr>
+    <th>Bảng (Lớp)</th>
+    <th>Mô tả</th>
+  </tr>
+  <tr>
+    <td><p>{@link android.provider.CalendarContract.Calendars}</p></td>
+    
+    <td>Bảng này chứa 
+thông tin riêng của lịch. Mỗi hàng trong bảng này chứa chi tiết của
+một lịch duy nhất, chẳng hạn như tên, màu, thông tin đồng bộ, v.v.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Events}</td>
+    
+    <td>Bảng này chứa
+thông tin riêng theo sự kiện. Mỗi hàng trong bảng có thông tin cho một
+sự kiện duy nhất&mdash;ví dụ: tiêu đề sự kiện, địa điểm, thời gian bắt đầu
+, thời gian kết thúc, v.v. Sự kiện có thể xảy ra một lần hoặc lặp lại nhiều lần. Người dự,
+nhắc nhở, và các tính chất mở rộng được lưu trữ trong các bảng riêng. 
+Mỗi mục đều có một {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} 
+tham chiếu tới {@link android.provider.BaseColumns#_ID} trong bảng Sự kiện.</td>
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances}</td>
+    
+    <td>Bảng này chứa
+thời gian bắt đầu và thời gian kết thúc của mỗi lần xảy ra một sự kiện. Mỗi hàng trong bảng này
+đại diện cho một lần xảy ra sự kiện. Với các sự kiện xảy ra một lần thì có một ánh xạ 1:1
+của thực thể tới sự kiện. Đối với các sự kiện định kỳ, nhiều hàng sẽ tự động
+ được khởi tạo tương ứng với nhiều lần xảy ra sự kiện đó.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Attendees}</td>
+    
+    <td>Bảng này chứa
+thông tin về người dự (khách) của sự kiện. Mỗi hàng đại diện một khách duy nhất của
+một sự kiện. Nó quy định loại khách và phản hồi tham dự của khách
+cho một sự kiện.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Reminders}</td>
+    
+    <td>Bảng này chứa
+dữ liệu về cảnh báo/thông báo. Mỗi hàng đại diện một cảnh báo duy nhất cho một sự kiện. Một
+sự kiện có thể có nhiều nhắc nhở. Số nhắc nhở tối đa của một sự kiện
+được quy định trong 
+{@link android.provider.CalendarContract.CalendarColumns#MAX_REMINDERS}, 
+được đặt bởi trình điều hợp đồng bộ đang
+sở hữu lịch đã cho. Nhắc nhở được quy định bằng số phút trước khi diễn ra sự kiện
+và có một phương pháp để xác định cách người dùng sẽ được cảnh báo.</td>
+  </tr>
+  
+</table>
+
+<p>API Trình cung cấp Lịch được thiết kế để linh hoạt và mạnh mẽ. Đồng
+thời, điều quan trọng là phải cung cấp một trải nghiệm người dùng cuối tốt và
+bảo vệ sự toàn vẹn của lịch và dữ liệu lịch. Để làm điều này, sau đây là một số
+điều cần ghi nhớ khi sử dụng API này:</p>
+
+<ul>
+
+<li><strong>Chèn, cập nhật, và xem sự kiện lịch.</strong> Để trực tiếp chèn, sửa đổi, và đọc sự kiện từ Trình cung cấp Lịch, bạn cần <a href="#manifest">các quyền</a> phù hợp. Tuy nhiên, nếu bạn không đang xây dựng một ứng dụng lịch hoặc trình điều hợp đồng bộ chính thức, việc yêu cầu những quyền này là không cần thiết. Thay vào đó, bạn có thể sử dụng những ý định được cung cấp bởi ứng dụng Lịch của Android để chuyển giao các thao tác đọc và ghi cho ứng dụng đó. Khi bạn sử dụng ý định, ứng dụng của bạn sẽ gửi người dùng tới ứng dụng Lịch để thực hiện thao tác mong muốn
+trong một mẫu được điền trước. Sau khi xong, họ sẽ được trả về ứng dụng của bạn.
+Bằng việc thiết kế ứng dụng của bạn để thực hiện các thao tác thường gặp thông qua Lịch,
+bạn cung cấp cho người dùng một giao diện người dùng nhất quán, thiết thực. Đây là phương pháp
+được khuyến cáo nên dùng. Để biết thêm thông tin, hãy xem phần <a href="#intents">Ý định
+Lịch</a>.</p>
+
+
+<li><strong>Trình điều hợp đồng bộ.</strong> Trình điều hợp đồng bộ có chức năng đồng bộ dữ liệu lịch
+lên thiết bị của một người dùng bằng một máy chủ hoặc nguồn dữ liệu khác. Trong bảng 
+{@link android.provider.CalendarContract.Calendars} và
+{@link android.provider.CalendarContract.Events}, 
+có các cột để cho trình điều hợp đồng bộ sử dụng.
+Trình cung cấp và ứng dụng không nên sửa đổi chúng. Trên thực tế, chúng không
+hiển thị trừ khi được truy cập như một trình điều hợp đồng bộ. Để biết thêm thông tin về
+trình điều hợp đồng bộ, hãy xem phần <a href="#sync-adapter">Trình điều hợp Đồng bộ</a>.</li>
+
+</ul>
+
+
+<h2 id="manifest">Quyền của Người dùng</h2>
+
+<p>Để đọc dữ liệu lịch, một ứng dụng phải bao gồm quyền {@link
+android.Manifest.permission#READ_CALENDAR} trong tệp bản kê khai của mình. Nó
+phải bao gồm quyền {@link android.Manifest.permission#WRITE_CALENDAR}
+để xóa, chèn hoặc cập nhật dữ liệu lịch:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;...&gt;
+    &lt;uses-sdk android:minSdkVersion=&quot;14&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.READ_CALENDAR&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.WRITE_CALENDAR&quot; /&gt;
+    ...
+&lt;/manifest&gt;
+</pre>
+
+
+<h2 id="calendar">Bảng Lịch</h2>
+
+<p>Bảng {@link android.provider.CalendarContract.Calendars} chứa thông tin chi tiết 
+cho từng lịch. Các cột
+Lịch sau có thể ghi được bởi cả ứng dụng và <a href="#sync-adapter">trình điều hợp đồng bộ</a>. 
+Để xem danh sách đầy đủ về các trường được hỗ trợ, hãy xem tài liệu tham khảo
+{@link android.provider.CalendarContract.Calendars}.</p>
+<table>
+  <tr>
+    <th>Hằng số</th>
+    <th>Mô tả</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#NAME}</td>
+    <td>Tên của lịch.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#CALENDAR_DISPLAY_NAME}</td>
+    <td>Tên của lịch này mà được hiển thị cho người dùng.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#VISIBLE}</td>
+    
+    <td>Một boolean cho biết lịch có được chọn để hiển thị hay không. Giá trị
+bằng 0 cho biết các sự kiện liên kết với lịch này sẽ không được
+hiển thị.  Giá trị bằng 1 cho biết các sự kiện liên kết với lịch này sẽ được
+hiển thị. Giá trị này ảnh hưởng tới việc khởi tạo hàng trong bảng {@link
+android.provider.CalendarContract.Instances}.</td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.CalendarColumns#SYNC_EVENTS}</td>
+    
+    <td>Một boolean cho biết lịch sẽ được đồng bộ và có các sự kiện
+của mình được lưu trữ trên thiết bị hay không. Giá trị bằng 0 tức là không đồng bộ lịch này hay
+lưu giữ các sự kiện của nó lên thiết bị.  Giá trị bằng 1 tức là đồng bộ các sự kiện cho lịch này 
+và lưu trữ các sự kiện của nó lên thiết bị.</td>
+  </tr>
+</table>
+
+<h3 id="query">Truy vấn một lịch</h3>
+
+<p>Sau đây là một ví dụ về cách nhận được lịch do một người dùng
+cụ thể sở hữu. Để đơn giản, trong ví dụ này, thao tác truy vấn được thể hiện trong
+ luồng giao diện người dùng ("luồng chính"). Trong thực hành, nên làm điều này trong một luồng
+không đồng bộ thay vì trên luồng chính. Để bàn thêm, hãy xem phần 
+<a href="{@docRoot}guide/components/loaders.html">Trình tải</a>. Nếu bạn đang không chỉ 
+đọc dữ liệu mà còn sửa đổi nó, hãy xem {@link android.content.AsyncQueryHandler}.
+</p>
+
+
+<pre>
+// Projection array. Creating indices for this array instead of doing
+// dynamic lookups improves performance.
+public static final String[] EVENT_PROJECTION = new String[] {
+    Calendars._ID,                           // 0
+    Calendars.ACCOUNT_NAME,                  // 1
+    Calendars.CALENDAR_DISPLAY_NAME,         // 2
+    Calendars.OWNER_ACCOUNT                  // 3
+};
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_ACCOUNT_NAME_INDEX = 1;
+private static final int PROJECTION_DISPLAY_NAME_INDEX = 2;
+private static final int PROJECTION_OWNER_ACCOUNT_INDEX = 3;</pre>
+  
+
+<div class="sidebox-wrapper"> <div class="sidebox"> <h3>Tại sao bạn phải nêu
+ACCOUNT_TYPE?</h3> <p>Nếu bạn truy vấn trên một {@link
+android.provider.CalendarContract.Calendars#ACCOUNT_NAME
+Calendars.ACCOUNT_NAME}, bạn cũng phải nêu 
+{@link android.provider.CalendarContract.Calendars#ACCOUNT_TYPE Calendars.ACCOUNT_TYPE}
+trong lựa chọn. Đó là vì một tài khoản đã cho chỉ
+được coi là duy nhất nếu có cả <code>ACCOUNT_NAME</code> và
+<code>ACCOUNT_TYPE</code> của nó. <code>ACCOUNT_TYPE</code> là xâu tương ứng với
+trình xác thực tài khoản mà đã được sử dụng khi tài khoản đó được đăng ký với
+{@link android.accounts.AccountManager}. Cũng có một loại tài khoản đặc biệt gọi là {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} dành cho các lịch
+không liên kết với một tài khoản thiết bị. Tài khoản {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} không được
+đồng bộ.</p> </div> </div> 
+
+
+<p> Trong phần tiếp theo của ví dụ, bạn sẽ xây dựng truy vấn của mình. Lựa chọn
+này sẽ quy định các tiêu chí cho truy vấn. Trong ví dụ này, truy vấn đang tìm
+các lịch có <code>ACCOUNT_NAME</code>
+"sampleuser@google.com", <code>ACCOUNT_TYPE</code>
+"com.google", và <code>OWNER_ACCOUNT</code>
+"sampleuser@google.com". Nếu bạn muốn xem tất cả lịch mà một người dùng
+đã xem, không chỉ các lịch mà người dùng sở hữu, hãy bỏ qua <code>OWNER_ACCOUNT</code>.
+Truy vấn sẽ trả về đối tượng {@link android.database.Cursor}
+mà bạn có thể sử dụng để xem xét tập kết quả được trả về bởi truy vấn
+cơ sở dữ liệu. Để bàn thêm về việc sử dụng các truy vấn trong trình cung cấp nội dung, 
+hãy xem phần <a href="{@docRoot}guide/topics/providers/content-providers.html">Trình cung cấp Nội dung</a>.</p>
+
+
+<pre>// Run query
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+Uri uri = Calendars.CONTENT_URI;   
+String selection = "((" + Calendars.ACCOUNT_NAME + " = ?) AND (" 
+                        + Calendars.ACCOUNT_TYPE + " = ?) AND ("
+                        + Calendars.OWNER_ACCOUNT + " = ?))";
+String[] selectionArgs = new String[] {"sampleuser@gmail.com", "com.google",
+        "sampleuser@gmail.com"}; 
+// Submit the query and get a Cursor object back. 
+cur = cr.query(uri, EVENT_PROJECTION, selection, selectionArgs, null);</pre>
+
+<p>Phần tiếp theo sử dụng con chạy để duyệt qua tập kết quả. Nó sử dụng
+các hằng số được thiết lập ngay từ đầu ví dụ để trả về các giá trị
+cho mỗi trường.</p>
+    
+<pre>// Use the cursor to step through the returned records
+while (cur.moveToNext()) {
+    long calID = 0;
+    String displayName = null;
+    String accountName = null;
+    String ownerName = null;
+      
+    // Get the field values
+    calID = cur.getLong(PROJECTION_ID_INDEX);
+    displayName = cur.getString(PROJECTION_DISPLAY_NAME_INDEX);
+    accountName = cur.getString(PROJECTION_ACCOUNT_NAME_INDEX);
+    ownerName = cur.getString(PROJECTION_OWNER_ACCOUNT_INDEX);
+              
+    // Do something with the values...
+
+   ...
+}
+</pre>
+  
+<h3 id="modify-calendar">Sửa đổi một lịch</h3>
+
+<p>Để thực hiện cập nhật một lịch, bạn có thể cung cấp {@link
+android.provider.BaseColumns#_ID} của lịch hoặc dưới dạng ID được nối vào cho
+Uri 
+
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 
+hoặc dưới dạng mục chọn đầu tiên. Lựa chọn
+nên bắt đầu bằng <code>&quot;_id=?&quot;</code>, và
+<code>selectionArg</code> đầu tiên sẽ là {@link
+android.provider.BaseColumns#_ID} của lịch. 
+Bạn cũng có thể thực hiện cập nhật bằng cách mã hóa ID trong URI. Ví dụ này thay đổi tên hiển thị
+của một lịch bằng cách sử dụng phương pháp 
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()})
+:</p>
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long calID = 2;
+ContentValues values = new ContentValues();
+// The new display name for the calendar
+values.put(Calendars.CALENDAR_DISPLAY_NAME, &quot;Trevor's Calendar&quot;);
+Uri updateUri = ContentUris.withAppendedId(Calendars.CONTENT_URI, calID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);</pre>
+
+<h3 id="insert-calendar">Chèn một lịch</h2>
+
+<p>Lịch được thiết kế để được quản lý chủ yếu bởi một trình điều hợp đồng bộ, vì vậy bạn chỉ nên
+chèn các lịch mới như một trình điều hợp đồng bộ. Phần lớn thì các ứng dụng
+chỉ có thể thực hiện những thay đổi bề mặt về lịch chẳng hạn như thay đổi tên hiển thị. Nếu
+một ứng dụng cần tạo một lịch cục bộ, nó có thể làm điều này bằng cách thực hiện
+chèn lịch dưới dạng một trình điều hợp đồng bộ, sử dụng {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} của {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}.
+{@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} 
+là một loại tài khoản đặc biệt dành cho các lịch không
+liên kết với một tài khoản thiết bị. Các lịch loại này không được đồng bộ với một máy chủ. Để
+bàn về trình điều hợp đồng bộ, hãy xem phần <a href="#sync-adapter">Trình điều hợp Đồng bộ</a>.</p>
+
+<h2 id="events">Bảng Sự kiện</h2>
+
+<p>Bảng {@link android.provider.CalendarContract.Events} chứa thông tin chi tiết
+cho các sự kiện riêng lẻ. Để thêm, cập nhật hoặc xóa sự kiện, ứng dụng phải
+bao gồm quyền {@link android.Manifest.permission#WRITE_CALENDAR} trong
+<a href="#manifest">tệp bản kê khai</a> của mình.</p>
+
+<p>Các cột Sự kiện sau có thể ghi được bởi cả ứng dụng và trình điều hợp
+đồng bộ. Để xem danh sách đầy đủ về các trường được hỗ trợ, hãy xem tài liệu tham khảo {@link
+android.provider.CalendarContract.Events}.</p>
+
+<table>
+  <tr>
+    <th>Hằng số</th>
+    <th>Mô tả</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#CALENDAR_ID}</td>
+    <td>{@link android.provider.BaseColumns#_ID} của lịch mà chứa sự kiện.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ORGANIZER}</td>
+    <td>E-mail của người tổ chức (người chủ) của sự kiện.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE}</td>
+    <td>Tiêu đề của sự kiện.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION}</td>
+    <td>Nơi sự kiện diễn ra. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION}</td>
+    <td>Mô tả sự kiện.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTSTART}</td>
+    <td>Thời gian sự kiện bắt đầu tính bằng mili giây UTC trôi qua kể từ giờ epoch. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTEND}</td>
+    <td>Thời gian sự kiện kết thúc tính bằng mili giây UTC trôi qua kể từ giờ epoch. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}</td>
+    <td>Múi giờ của sự kiện.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_END_TIMEZONE}</td>
+    <td>Múi giờ của thời điểm kết thúc sự kiện.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DURATION}</td>
+    
+    <td>Thời lượng của sự kiện theo định dạng <a href="http://tools.ietf.org/html/rfc5545#section-3.8.2.5">RFC5545</a>.
+Ví dụ, giá trị bằng <code>&quot;PT1H&quot;</code> cho biết sự kiện sẽ kéo dài
+một giờ và giá trị bằng <code>&quot;P2W&quot;</code> cho biết
+thời lượng là 2 tuần. </td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ALL_DAY}</td>
+    
+    <td>Giá trị bằng 1 cho biết sự kiện này chiếm cả ngày, được xác định bởi
+múi giờ tại địa phương. Giá trị bằng 0 cho biết đó là một sự kiện thường xuyên mà có thể bắt đầu
+và kết thúc vào bất cứ lúc nào trong một ngày.</td>
+
+    
+  </tr>
+  
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RRULE}</td>
+    
+    <td>Quy tắc lặp lại đối với định dạng sự kiện. Ví
+dụ, <code>&quot;FREQ=WEEKLY;COUNT=10;WKST=SU&quot;</code>. Bạn có thể tìm thêm
+nhiều ví dụ hơn <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.3">ở đây</a>.</td>
+    
+  </tr>
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RDATE}</td>
+    <td>Ngày lặp lại đối với sự kiện. 
+    Bạn thường sử dụng {@link android.provider.CalendarContract.EventsColumns#RDATE} 
+    cùng với {@link android.provider.CalendarContract.EventsColumns#RRULE} 
+    để định nghĩa một tập tổng hợp
+các trường hợp xảy ra lặp lại. Để bàn thêm, hãy xem phần <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.2">RFC5545 spec</a>.</td>
+</tr>
+ 
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY}</td>
+    
+    <td>Xem sự kiện này được tính là thời gian bận hay là thời gian rảnh có thể được 
+xếp lại lịch. </td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_MODIFY}</td>
+    <td>Khách có thể sửa đổi sự kiện được hay không. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_INVITE_OTHERS}</td>
+    <td>Khách có thể mời khách khác được hay không. </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_SEE_GUESTS}</td>
+    <td>Khách có thể xem danh sách người dự được hay không.</td>
+  </tr>
+</table>
+
+<h3 id="add-event">Thêm Sự kiện</h3>
+
+<p>Khi ứng dụng của bạn chèn một sự kiện mới, chúng tôi khuyến cáo bạn nên sử dụng một Ý định
+{@link android.content.Intent#ACTION_INSERT INSERT}, như được mô tả trong <a href="#intent-insert">Sử dụng ý định để chèn một sự kiện</a>. Tuy nhiên, nếu
+cần, bạn có thể chèn sự kiện trực tiếp. Phần này mô tả cách làm điều
+này.</p>
+
+
+<p>Sau đây là các quy tắc để chèn một sự kiện mới: </p>
+<ul>
+
+  <li>Bạn phải đưa vào {@link
+android.provider.CalendarContract.EventsColumns#CALENDAR_ID} và {@link
+android.provider.CalendarContract.EventsColumns#DTSTART}.</li>
+
+<li>Bạn phải đưa vào một {@link
+android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}. Để nhận một danh sách
+các ID múi giờ được cài đặt của hệ thống, hãy sử dụng {@link
+java.util.TimeZone#getAvailableIDs()}. Lưu ý rằng quy tắc này không áp dụng nếu
+bạn đang chèn một sự kiện thông qua Ý định {@link
+android.content.Intent#ACTION_INSERT INSERT} như được mô tả trong <a href="#intent-insert">Sử dụng ý định để chèn một sự kiện</a>&mdash;trong kịch bản
+đó, một múi giờ mặc định sẽ được cung cấp.</li>
+  
+  <li>Đối với các sự kiện không định kỳ, bạn phải đưa vào {@link
+android.provider.CalendarContract.EventsColumns#DTEND}. </li>
+  
+  
+  <li>Đối với các sự kiện định kỳ, bạn phải đưa vào một {@link
+android.provider.CalendarContract.EventsColumns#DURATION} bên cạnh {@link
+android.provider.CalendarContract.EventsColumns#RRULE} hay {@link
+android.provider.CalendarContract.EventsColumns#RDATE}. Lưu ý rằng quy tắc này không áp dụng nếu
+bạn đang chèn một sự kiện thông qua Ý định {@link
+android.content.Intent#ACTION_INSERT INSERT} như được mô tả trong <a href="#intent-insert">Sử dụng ý định để chèn một sự kiện</a>&mdash;trong kịch bản
+đó, bạn có thể sử dụng một {@link
+android.provider.CalendarContract.EventsColumns#RRULE} cùng với {@link android.provider.CalendarContract.EventsColumns#DTSTART} và {@link android.provider.CalendarContract.EventsColumns#DTEND}, và ứng dụng Lịch 
+sẽ tự động chuyển nó thành một thời lượng.</li>
+  
+</ul>
+
+<p>Sau đây là một ví dụ về cách chèn một sự kiện. Ví dụ này đang được thực hiện trong luồng
+UI để cho đơn giản. Trong thực hành, chèn và cập nhật nên được thực hiện trong một
+luồng không đồng bộ để di chuyển hành động vào một luồng chạy ngầm. Để biết thêm
+thông tin, hãy xem phần {@link android.content.AsyncQueryHandler}.</p>
+
+
+<pre>
+long calID = 3;
+long startMillis = 0; 
+long endMillis = 0;     
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 9, 14, 7, 30);
+startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 9, 14, 8, 45);
+endMillis = endTime.getTimeInMillis();
+...
+
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Events.DTSTART, startMillis);
+values.put(Events.DTEND, endMillis);
+values.put(Events.TITLE, &quot;Jazzercise&quot;);
+values.put(Events.DESCRIPTION, &quot;Group workout&quot;);
+values.put(Events.CALENDAR_ID, calID);
+values.put(Events.EVENT_TIMEZONE, "America/Los_Angeles");
+Uri uri = cr.insert(Events.CONTENT_URI, values);
+
+// get the event ID that is the last element in the Uri
+long eventID = Long.parseLong(uri.getLastPathSegment());
+// 
+// ... do something with event ID
+//
+//</pre>
+
+<p class="note"><strong>Lưu ý:</strong> Xem cách mà ví dụ này bắt được ID
+sự kiện sau khi sự kiện được tạo. Đây là cách dễ nhất để nhận được một ID sự kiện. Bạn thường
+cần ID sự kiện để thực hiện các thao tác lịch khác&mdash;ví dụ: để thêm
+người dự hoặc nhắc nhở vào một sự kiện.</p>
+
+
+<h3 id="update-event">Cập nhật Sự kiện</h3>
+
+<p>Khi ứng dụng của bạn muốn cho phép người dùng chỉnh sửa một sự kiện, chúng tôi khuyến cáo
+bạn nên sử dụng một Ý định {@link android.content.Intent#ACTION_EDIT EDIT} như được mô tả
+trong <a href="#intent-edit">Sử dụng ý định để chỉnh sửa một sự kiện</a>.
+Tuy nhiên, nếu cần, bạn có thể chỉnh sửa sự kiện trực tiếp. Để thực hiện cập nhật
+một Sự kiện, bạn có thể cung cấp <code>_ID</code> của sự kiện 
+hoặc dưới dạng ID được nối vào cho Uri ({@link
+android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 
+hoặc dưới dạng mục chọn đầu tiên. 
+Lựa chọn nên bắt đầu bằng <code>&quot;_id=?&quot;</code>, và
+<code>selectionArg</code> đầu tiên nên là <code>_ID</code> của sự kiện. Bạn cũng có thể
+thực hiện cập nhật bằng cách sử dụng một lựa chọn không có ID. Sau đây là một ví dụ về cách cập nhật một
+sự kiện. Nó thay đổi tiêu đề của sự kiện bằng cách sử dụng phương pháp 
+{@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}
+:</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 188;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri updateUri = null;
+// The new title for the event
+values.put(Events.TITLE, &quot;Kickboxing&quot;); 
+updateUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);  </pre>
+
+<h3 id="delete-event">Xóa Sự kiện</h3>
+
+<p>Bạn có thể xóa một sự kiện hoặc theo {@link
+android.provider.BaseColumns#_ID} của nó như một ID được nối trên URI, hoặc bằng cách sử dụng
+lựa chọn tiêu chuẩn. Nếu sử dụng một ID được nối, bạn không thể lựa chọn đồng thời.
+Có hai kiểu xóa: như một ứng dụng và như một trình điều hợp đồng bộ. Xóa
+như một ứng dụng sẽ đặt cột <em>đã xóa</em> thành 1. Cờ này sẽ báo cho
+trình điều hợp đồng bộ rằng hàng đó đã được xóa và rằng việc xóa này nên
+được truyền tới máy chủ. Xóa trình điều hợp đồng bộ sẽ gỡ bỏ sự kiện khỏi
+cơ sở dữ liệu cùng với tất cả dữ liệu được liên kết của nó. Sau đây là một ví dụ về ứng dụng
+xóa một sự kiện thông qua {@link android.provider.BaseColumns#_ID} của nó:</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 201;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri deleteUri = null;
+deleteUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().delete(deleteUri, null, null);
+Log.i(DEBUG_TAG, &quot;Rows deleted: &quot; + rows);  
+</pre>
+
+<h2 id="attendees">Bảng Người dự</h2>
+
+<p>Mỗi hàng của bảng {@link android.provider.CalendarContract.Attendees} đại diện
+cho một người dự hoặc khách duy nhất của một sự kiện. Gọi 
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()} 
+sẽ trả về một danh sách người dự cho sự kiện
+với {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} đã cho. 
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} này
+phải khớp với {@link
+android.provider.BaseColumns#_ID} của một sự kiện cụ thể.</p> 
+
+<p>Bảng sau liệt kê các trường
+có thể ghi được. Khi chèn một người dự mới, bạn phải điền tất cả 
+ngoại trừ <code>ATTENDEE_NAME</code>.
+</p>
+
+
+<table>
+  <tr>
+    <th>Hằng số</th>
+    <th>Mô tả</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}</td>
+    <td>ID của sự kiện.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_NAME}</td>
+    <td>Tên của người dự.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_EMAIL}</td>
+    <td>Địa chỉ e-mail của người dự.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_RELATIONSHIP}</td>
+    <td><p>Mối quan hệ của người dự với sự kiện. Một trong:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ATTENDEE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ORGANIZER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_PERFORMER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_SPEAKER}</li>
+    </ul>
+    </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_TYPE}</td>
+    <td><p>Loại người dự. Một trong: </p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_REQUIRED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_OPTIONAL}</li>
+    </ul></td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS}</td>
+    <td><p>Trạng thái tham dự của người dự. Một trong:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_ACCEPTED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_DECLINED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_INVITED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_TENTATIVE}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-attendees">Thêm Người dự</h3>
+
+<p>Sau đây là một ví dụ về cách thêm một người dự vào một sự kiện. Lưu ý rằng
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} 
+là bắt buộc:</p>
+
+<pre>
+long eventID = 202;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Attendees.ATTENDEE_NAME, &quot;Trevor&quot;);
+values.put(Attendees.ATTENDEE_EMAIL, &quot;trevor@example.com&quot;);
+values.put(Attendees.ATTENDEE_RELATIONSHIP, Attendees.RELATIONSHIP_ATTENDEE);
+values.put(Attendees.ATTENDEE_TYPE, Attendees.TYPE_OPTIONAL);
+values.put(Attendees.ATTENDEE_STATUS, Attendees.ATTENDEE_STATUS_INVITED);
+values.put(Attendees.EVENT_ID, eventID);
+Uri uri = cr.insert(Attendees.CONTENT_URI, values);
+</pre>
+
+<h2 id="reminders">Bảng Nhắc nhở</h2>
+
+<p>Mỗi hàng của bảng {@link android.provider.CalendarContract.Reminders} đại diện
+cho một nhắc nhở của một sự kiện. Gọi 
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()}  sẽ trả về một danh sách nhắc nhở cho
+sự kiện với 
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} đã cho.</p>
+
+
+<p>Bảng sau liệt kê các trường ghi được đối với nhắc nhở. Tất cả đều phải được
+đưa vào khi chèn một nhắc nhở mới. Lưu ý rằng các trình điều hợp đồng bộ quy định
+các loại nhắc nhở chúng hỗ trợ trong bảng {@link
+android.provider.CalendarContract.Calendars}. Xem 
+{@link android.provider.CalendarContract.CalendarColumns#ALLOWED_REMINDERS} 
+để biết chi tiết.</p>
+
+
+<table>
+  <tr>
+    <th>Hằng số</th>
+    <th>Mô tả</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#EVENT_ID}</td>
+    <td>ID của sự kiện.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#MINUTES}</td>
+    <td>Số phút trước khi diễn ra sự kiện mà nhắc nhở cần báo.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#METHOD}</td>
+    <td><p>Phương pháp báo thức, như được đặt trên máy chủ. Một trong:</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_ALERT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_DEFAULT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_EMAIL}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_SMS}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-reminders">Thêm Nhắc nhở</h3>
+
+<p>Ví dụ này thêm nhắc nhở vào một sự kiện. Nhắc nhở sẽ báo 15
+phút trước khi xảy ra sự kiện.</p>
+<pre>
+long eventID = 221;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Reminders.MINUTES, 15);
+values.put(Reminders.EVENT_ID, eventID);
+values.put(Reminders.METHOD, Reminders.METHOD_ALERT);
+Uri uri = cr.insert(Reminders.CONTENT_URI, values);</pre>
+
+<h2 id="instances">Bảng Thực thể</h2>
+
+<p>Bảng 
+{@link android.provider.CalendarContract.Instances} chứa
+thời gian bắt đầu và thời gian kết thúc của các lần xảy ra một sự kiện. Mỗi hàng trong bảng này
+đại diện cho một lần xảy ra sự kiện. Bảng thực thể không ghi được và chỉ
+đưa ra một cách để truy vấn các lần xảy ra sự kiện. </p>
+
+<p>Bảng sau liệt kê một số trường mà bạn có thể truy vấn đối với một thực thể. Lưu ý 
+rằng múi giờ được định nghĩa bởi 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_TYPE} 
+và 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_INSTANCES}.</p>
+
+
+<table>
+  <tr>
+    <th>Hằng số</th>
+    <th>Mô tả</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#BEGIN}</td>
+    <td>Thời gian bắt đầu của thực thể, tính bằng mili giây UTC.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END}</td>
+    <td>Thời gian kết thúc của thực thể, tính bằng mili giây UTC.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_DAY}</td>
+    
+    <td>Ngày kết thúc theo lịch Julian của thực thể theo múi giờ
+của Lịch. 
+    
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_MINUTE}</td>
+    
+    <td>Phút kết thúc của thực thể được xác định từ nửa đêm theo múi giờ
+của Lịch.</td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#EVENT_ID}</td>
+    <td><code>_ID</code> của sự kiện đối với thực thể này.</td>
+  </tr>
+    <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_DAY}</td>
+    <td>Ngày bắt đầu theo lịch Julian của thực thể theo múi giờ của Lịch. 
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_MINUTE}</td>
+    
+    <td>Phút bắt đầu của thực thể được xác định từ nửa đêm theo múi giờ
+của Lịch. 
+</td>
+    
+  </tr>
+
+</table>
+
+<h3 id="query-instances">Truy vấn bảng Thực thể</h3>
+
+<p>Để truy vấn bảng Thực thể, bạn cần chỉ định một khoảng thời gian cho truy vấn
+trong URI. Trong ví dụ này, {@link android.provider.CalendarContract.Instances}
+có quyền truy cập trường {@link
+android.provider.CalendarContract.EventsColumns#TITLE} thông qua việc
+triển khai giao diện {@link android.provider.CalendarContract.EventsColumns} của nó. 
+Nói cách khác, {@link
+android.provider.CalendarContract.EventsColumns#TITLE} được trả về qua một
+chế độ xem cơ sở dữ liệu, chứ không qua việc truy vấn bảng {@link
+android.provider.CalendarContract.Instances} thô.</p>
+
+<pre>
+private static final String DEBUG_TAG = "MyActivity";
+public static final String[] INSTANCE_PROJECTION = new String[] {
+    Instances.EVENT_ID,      // 0
+    Instances.BEGIN,         // 1
+    Instances.TITLE          // 2
+  };
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_BEGIN_INDEX = 1;
+private static final int PROJECTION_TITLE_INDEX = 2;
+...
+
+// Specify the date range you want to search for recurring
+// event instances
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2011, 9, 23, 8, 0);
+long startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2011, 10, 24, 8, 0);
+long endMillis = endTime.getTimeInMillis();
+  
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+
+// The ID of the recurring event whose instances you are searching
+// for in the Instances table
+String selection = Instances.EVENT_ID + " = ?";
+String[] selectionArgs = new String[] {"207"};
+
+// Construct the query with the desired date range.
+Uri.Builder builder = Instances.CONTENT_URI.buildUpon();
+ContentUris.appendId(builder, startMillis);
+ContentUris.appendId(builder, endMillis);
+
+// Submit the query
+cur =  cr.query(builder.build(), 
+    INSTANCE_PROJECTION, 
+    selection, 
+    selectionArgs, 
+    null);
+   
+while (cur.moveToNext()) {
+    String title = null;
+    long eventID = 0;
+    long beginVal = 0;    
+    
+    // Get the field values
+    eventID = cur.getLong(PROJECTION_ID_INDEX);
+    beginVal = cur.getLong(PROJECTION_BEGIN_INDEX);
+    title = cur.getString(PROJECTION_TITLE_INDEX);
+              
+    // Do something with the values. 
+    Log.i(DEBUG_TAG, "Event:  " + title); 
+    Calendar calendar = Calendar.getInstance();
+    calendar.setTimeInMillis(beginVal);  
+    DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
+    Log.i(DEBUG_TAG, "Date: " + formatter.format(calendar.getTime()));    
+    }
+ }</pre>
+
+<h2 id="intents">Ý định Lịch</h2>
+<p>Ứng dụng của bạn không cần <a href="#manifest">quyền</a> để ghi và đọc dữ liệu lịch. Thay vào đó, nó có thể sử dụng những ý định được cung cấp bởi ứng dụng Lịch của Android để chuyển giao các thao tác đọc và ghi cho ứng dụng đó. Bảng sau đây liệt kê các ý định được Trình cung cấp Lịch hỗ trợ:</p>
+<table>
+  <tr>
+    <th>Hành động</th>
+    <th>URI</th>
+
+    <th>Mô tả</th>
+    <th>Phụ thêm</th>
+  </tr>
+  <tr>
+    <td><br>
+    {@link android.content.Intent#ACTION_VIEW VIEW} <br></td>
+    <td><p><code>content://com.android.calendar/time/&lt;ms_since_epoch&gt;</code></p>
+    Bạn cũng có thể tham khảo tới URI bằng 
+{@link android.provider.CalendarContract#CONTENT_URI CalendarContract.CONTENT_URI}. 
+Để xem một ví dụ về cách sử dụng ý định này, hãy xem <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">Sử dụng ý định để xem dữ liệu lịch</a>. 
+
+    </td>
+    <td>Mở lịch đến thời gian được chỉ định bởi <code>&lt;ms_since_epoch&gt;</code>.</td>
+    <td>Không có.</td>
+  </tr>
+  <tr>
+    <td><p>{@link android.content.Intent#ACTION_VIEW VIEW} </p>
+
+     </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+    Bạn cũng có thể tham khảo tới URI bằng 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Để xem một ví dụ về cách sử dụng ý định này, hãy xem <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">Sử dụng ý định để xem dữ liệu lịch</a>.
+    
+    </td>
+    <td>Xem sự kiện được chỉ định bởi <code>&lt;event_id&gt;</code>.</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+  Bạn cũng có thể tham khảo tới URI bằng 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Để xem một ví dụ về cách sử dụng ý định này, hãy xem <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-edit">Sử dụng ý định để chỉnh sửa một sự kiện</a>.
+    
+    
+    </td>
+    <td>Chỉnh sửa sự kiện được chỉ định bởi <code>&lt;event_id&gt;</code>.</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} <br>
+    <br>
+    {@link android.content.Intent#ACTION_INSERT INSERT} </td>
+    <td><p><code>content://com.android.calendar/events</code></p>
+    
+   Bạn cũng có thể tham khảo tới URI bằng 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}. 
+Để xem một ví dụ về cách sử dụng ý định này, hãy xem <a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-insert">Sử dụng ý định để chèn một sự kiện</a>.
+    
+    </td>
+
+    <td>Tạo một sự kiện.</td>
+    <td>Bất kỳ phụ thêm nào được liệt kê trong bảng bên dưới.</td>
+  </tr>
+</table>
+
+<p>Bảng sau đây liệt kê các phụ thêm ý định được Trình cung cấp Lịch hỗ trợ:
+</p>
+<table>
+  <tr>
+    <th>Phụ thêm Ý định</th>
+    <th>Mô tả</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE Events.TITLE}</td>
+    <td>Tên cho sự kiện.</td>
+  </tr>
+  <tr>
+  
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME}</td>
+    <td>Thời gian bắt đầu sự kiện tính bằng mili giây trôi qua kể từ giờ epoch.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME}</td>
+    
+    <td>Thời gian kết thúc sự kiện tính bằng mili giây trôi qua kể từ giờ epoch.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_ALL_DAY
+CalendarContract.EXTRA_EVENT_ALL_DAY}</td>
+    
+    <td>Một boolean cho biết đó là một sự kiện cả ngày. Giá trị có thể bằng
+<code>true</code> hoặc <code>false</code>.</td> </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION
+Events.EVENT_LOCATION}</td>
+    
+    <td>Địa điểm của sự kiện.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION
+Events.DESCRIPTION}</td>
+    
+    <td>Mô tả sự kiện.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}</td>
+    <td>Địa chỉ e-mail của những người cần mời dưới dạng một danh sách phân cách bởi dấu phẩy.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#RRULE Events.RRULE}</td>
+    <td>Quy tắc lặp lại đối với sự kiện.</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#ACCESS_LEVEL
+Events.ACCESS_LEVEL}</td>
+    
+    <td>Sự kiện là riêng tư hay công khai.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY
+Events.AVAILABILITY}</td>
+    
+    <td>Xem sự kiện này tính là thời gian bận hay là thời gian rảnh có thể được xếp lại lịch.</td>
+    
+</table> 
+<p>Các phần sau mô tả cách sử dụng những ý định này.</p>
+
+
+<h3 id="intent-insert">Sử dụng ý định để chèn một sự kiện</h3>
+
+<p>Sử dụng Ý định {@link android.content.Intent#ACTION_INSERT INSERT} cho phép
+ứng dụng của bạn chuyển giao tác vụ chèn sự kiện cho bản thân Lịch.
+Bằng cách này, ứng dụng của bạn thậm chí không cần phải có quyền {@link
+android.Manifest.permission#WRITE_CALENDAR} được bao gồm trong <a href="#manifest">tệp bản kê khai</a> của mình.</p>
+
+  
+<p>Khi người dùng chạy một ứng dụng mà sử dụng cách này, ứng dụng sẽ gửi
+chúng tới Lịch để hoàn thành việc thêm một sự kiện. Ý định {@link
+android.content.Intent#ACTION_INSERT INSERT} sử dụng các trường phụ thêm để
+điền trước vào một mẫu bằng các chi tiết của sự kiện trong Lịch. Khi đó, người dùng có thể
+hủy bỏ sự kiện, chỉnh sửa mẫu nếu cần, hoặc lưu sự kiện vào lịch
+của mình.</p>
+  
+
+
+<p>Sau đây là một đoạn mã HTML lập biểu một sự kiện vào ngày 19/1/2012, diễn ra
+từ 7:30 sáng đến 8:30 sáng. Lưu ý điều sau đây về đoạn mã HTML này:</p>
+
+<ul>
+  <li>Nó quy định {@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} 
+ là Uri.</li>
+  
+  <li>Nó sử dụng các trường phụ {@link
+android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME} và {@link
+android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME} để điền trước thời gian của sự kiện
+vào mẫu. Các giá trị đối với những thời gian này phải tính bằng mili giây UTC
+trôi qua kể từ giờ epoch.</li>
+  
+  <li>Nó sử dụng trường phụ {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}
+để cung cấp một danh sách người được mời phân cách bằng dấu phẩy, được chỉ định theo địa chỉ e-mail.</li>
+  
+</ul>
+<pre>
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 0, 19, 7, 30);
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 0, 19, 8, 30);
+Intent intent = new Intent(Intent.ACTION_INSERT)
+        .setData(Events.CONTENT_URI)
+        .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
+        .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
+        .putExtra(Events.TITLE, &quot;Yoga&quot;)
+        .putExtra(Events.DESCRIPTION, &quot;Group class&quot;)
+        .putExtra(Events.EVENT_LOCATION, &quot;The gym&quot;)
+        .putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)
+        .putExtra(Intent.EXTRA_EMAIL, &quot;rowan@example.com,trevor@example.com&quot;);
+startActivity(intent);
+</pre>
+
+<h3 id="intent-edit">Sử dụng ý định để chỉnh sửa một sự kiện</h3>
+
+<p>Bạn có thể cập nhật một sự kiện trực tiếp như được mô tả trong phần <a href="#update-event">Cập nhật sự kiện</a>. Nhưng việc sử dụng Ý định {@link
+android.content.Intent#ACTION_EDIT EDIT} cho phép một ứng dụng
+không có quyền được chuyển giao chỉnh sửa sự kiện cho ứng dụng Lịch.
+Khi người dùng hoàn thành chỉnh sửa sự kiện của mình trong Lịch, họ được trả về ứng dụng
+ban đầu.</p> <p>Sau đây là một ví dụ về ý định đặt một tiêu đề mới
+cho một sự kiện được quy định và cho phép người dùng chỉnh sửa sự kiện trong Lịch.</p>
+
+
+<pre>long eventID = 208;
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_EDIT)
+    .setData(uri)
+    .putExtra(Events.TITLE, &quot;My New Title&quot;);
+startActivity(intent);</pre>
+
+<h3 id="intent-view">Sử dụng ý định để xem dữ liệu lịch</h3>
+<p>Trình cung cấp Lịch giới thiệu hai cách khác nhau để sử dụng Ý định {@link android.content.Intent#ACTION_VIEW VIEW}:</p>
+<ul>
+  <li>Để mở Lịch tới một ngày cụ thể.</li>
+  <li>Để xem một sự kiện.</li>
+
+</ul>
+<p>Sau đây là một ví dụ cho biết cách mở Lịch tới một ngày cụ thể:</p>
+<pre>// A date-time specified in milliseconds since the epoch.
+long startMillis;
+...
+Uri.Builder builder = CalendarContract.CONTENT_URI.buildUpon();
+builder.appendPath(&quot;time&quot;);
+ContentUris.appendId(builder, startMillis);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+    .setData(builder.build());
+startActivity(intent);</pre>
+
+<p>Sau đây là một ví dụ cho biết cách mở một sự kiện để xem:</p>
+<pre>long eventID = 208;
+...
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+   .setData(uri);
+startActivity(intent);
+</pre>
+
+
+<h2 id="sync-adapter">Trình điều hợp Đồng bộ</h2>
+
+
+<p>Chỉ có vài điểm khác nhau nhỏ giữa cách một ứng dụng và cách một trình điều hợp đồng bộ
+truy cập Trình cung cấp Lịch:</p>
+
+<ul>
+  <li>Trình điều hợp đồng bộ cần chỉ định rằng nó là một trình điều hợp đồng bộ bằng cách đặt {@link android.provider.CalendarContract#CALLER_IS_SYNCADAPTER} thành <code>true</code>.</li>
+  
+  
+  <li>Trình điều hợp đồng bộ cần cung cấp một {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_NAME} và một {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} làm tham số truy vấn trong URI. </li>
+  
+  <li>Trình điều hợp đồng bộ có quyền truy nhập ghi vào nhiều cột hơn ứng dụng hay widget.
+  Ví dụ, một ứng dụng chỉ có thể sửa đổi một vài đặc điểm của một lịch, 
+  chẳng hạn như tên lịch, tên hiển thị, thiết đặt hiển thị, và lịch có được
+  đồng bộ hay không. Nếu so sánh, một trình điều hợp đồng bộ có thể truy cập không chỉ những cột đó, mà còn nhiều cột khác,
+  chẳng hạn như màu lịch, múi giờ, mức truy nhập, địa điểm, v.v.
+Tuy nhiên, trình điều hợp đồng bộ bị hạn chế đối với <code>ACCOUNT_NAME</code> và 
+<code>ACCOUNT_TYPE</code> mà nó quy định.</li> </ul>
+
+<p>Sau đây là một phương pháp hữu ích hơn mà bạn có thể sử dụng để trả về một URI để dùng với một trình điều hợp đồng bộ:</p>
+<pre> static Uri asSyncAdapter(Uri uri, String account, String accountType) {
+    return uri.buildUpon()
+        .appendQueryParameter(android.provider.CalendarContract.CALLER_IS_SYNCADAPTER,&quot;true&quot;)
+        .appendQueryParameter(Calendars.ACCOUNT_NAME, account)
+        .appendQueryParameter(Calendars.ACCOUNT_TYPE, accountType).build();
+ }
+</pre>
+<p>Để biết việc triển khai mẫu trình điều hợp đồng bộ (không liên quan cụ thể tới Lịch), hãy xem phần 
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a>.
diff --git a/docs/html-intl/intl/vi/guide/topics/providers/contacts-provider.jd b/docs/html-intl/intl/vi/guide/topics/providers/contacts-provider.jd
new file mode 100644
index 0000000..2fa2ed3
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/providers/contacts-provider.jd
@@ -0,0 +1,2356 @@
+page.title=Trình cung cấp Danh bạ
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Xem nhanh</h2>
+<ul>
+    <li>Kho lưu giữ thông tin về con người của Android.</li>
+    <li>
+        Đồng bộ với web.
+    </li>
+    <li>
+        Tích hợp dữ liệu theo luồng xã hội.
+    </li>
+</ul>
+<h2>Trong tài liệu này</h2>
+<ol>
+    <li>
+        <a href="#InformationTypes">Tổ chức Trình cung cấp Danh bạ</a>
+    </li>
+    <li>
+        <a href="#RawContactBasics">Liên lạc thô</a>
+    </li>
+    <li>
+        <a href="#DataBasics">Dữ liệu</a>
+    </li>
+    <li>
+        <a href="#ContactBasics">Danh bạ</a>
+    </li>
+    <li>
+        <a href="#Sources">Dữ liệu từ Trình điều hợp Đồng bộ</a>
+    </li>
+    <li>
+        <a href="#Permissions">Quyền được Yêu cầu</a>
+    </li>
+    <li>
+        <a href="#UserProfile">Hồ sơ Người dùng</a>
+    </li>
+    <li>
+        <a href="#ContactsProviderMetadata">Siêu dữ liệu Trình cung cấp Danh bạ</a>
+    </li>
+    <li>
+        <a href="#Access">Truy cập Trình cung cấp Danh bạ</a>
+    <li>
+    </li>
+    <li>
+        <a href="#SyncAdapters">Trình điều hợp Đồng bộ Trình cung cấp Danh bạ</a>
+    </li>
+    <li>
+        <a href="#SocialStream">Dữ liệu từ Luồng Xã hội</a>
+    </li>
+    <li>
+        <a href="#AdditionalFeatures">Các Tính năng Bổ sung của Trình cung cấp Danh bạ</a>
+    </li>
+</ol>
+<h2>Lớp khóa</h2>
+<ol>
+    <li>{@link android.provider.ContactsContract.Contacts}</li>
+    <li>{@link android.provider.ContactsContract.RawContacts}</li>
+    <li>{@link android.provider.ContactsContract.Data}</li>
+    <li>{@code android.provider.ContactsContract.StreamItems}</li>
+</ol>
+<h2>Các Mẫu Liên quan</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}resources/samples/ContactManager/index.html">
+        Trình quản lý Danh bạ
+        </a>
+    </li>
+    <li>
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+        Trình điều hợp Đồng bộ Mẫu</a>
+    </li>
+</ol>
+<h2>Xem thêm</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Nội dung Cơ bản về Trình cung cấp Nội dung
+        </a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    Trình cung cấp Danh bạ là một thành phần Android mạnh mẽ và linh hoạt có chức năng quản lý
+    kho dữ liệu trung tâm về con người của thiết bị. Trình cung cấp Danh bạ là nguồn của những dữ liệu
+    mà bạn thấy trong ứng dụng danh bạ của thiết bị, và bạn cũng có thể truy cập dữ liệu của nó trong
+    ứng dụng của chính mình và chuyển dữ liệu giữa thiết bị và các dịch vụ trực tuyến. Trình cung cấp chứa
+    đủ loại nguồn dữ liệu và cố gắng quản lý nhiều dữ liệu nhất có thể cho mỗi người, kết quả
+    là tổ chức của nó trở nên phức tạp. Vì điều này, API của trình cung cấp bao gồm một
+    tập mở rộng gồm các lớp hợp đồng và giao diện tạo điều kiện cho việc truy xuất và sửa đổi
+    dữ liệu.
+</p>
+<p>
+    Hướng dẫn này trình bày những nội dung sau:
+</p>
+    <ul>
+        <li>
+            Cấu trúc cơ bản của trình cung cấp.
+        </li>
+        <li>
+            Cách truy xuất dữ liệu từ trình cung cấp.
+        </li>
+        <li>
+            Cách sửa đổi dữ liệu trong trình cung cấp.
+        </li>
+        <li>
+            Cách ghi một trình điều hợp đồng bộ để đồng bộ hóa dữ liệu từ máy chủ của bạn với
+            Trình cung cấp Danh bạ.
+        </li>
+    </ul>
+<p>
+    Hướng dẫn này giả sử rằng bạn biết những nội dung cơ bản về trình cung cấp nội dung Android. Để tìm hiểu thêm
+    về trình cung cấp nội dung Android, hãy đọc hướng dẫn
+    <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+    Nội dung Cơ bản về Trình cung cấp Nội dung</a>. Ứng dụng mẫu
+    <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">Trình điều hợp Đồng bộ Mẫu</a>
+    là một ví dụ về cách sử dụng một trình điều hợp đồng bộ để chuyển dữ liệu giữa Trình cung cấp
+    Danh bạ và ứng dụng mẫu được lưu trữ bởi Dịch vụ Web Google.
+</p>
+<h2 id="InformationTypes">Tổ chức Trình cung cấp Danh bạ</h2>
+<p>
+    Trình cung cấp Danh bạ là một thành phần của trình cung cấp nội dung Android. Nó chứa ba loại
+    dữ liệu về một người, từng loại tương ứng với một bảng do trình cung cấp đưa ra, như
+    được minh họa trong hình 1:
+</p>
+<img src="{@docRoot}images/providers/contacts_structure.png" alt="" height="364" id="figure1" />
+<p class="img-caption">
+  <strong>Hình 1.</strong> Cấu trúc bảng của Trình cung cấp Danh bạ.
+</p>
+<p>
+    Ba bảng này thường được đề cập theo tên các lớp hợp đồng của chúng. Các lớp này
+    sẽ định nghĩa các hằng số cho URI nội dung, tên cột và giá trị cột được sử dụng bởi các bảng:
+</p>
+<dl>
+    <dt>
+        Bảng {@link android.provider.ContactsContract.Contacts}
+    </dt>
+    <dd>
+        Hàng thể hiện những người khác nhau dựa trên tổng hợp của các hàng liên lạc thô.
+    </dd>
+    <dt>
+        Bảng {@link android.provider.ContactsContract.RawContacts}
+    </dt>
+    <dd>
+        Hàng chứa một bản tổng hợp dữ liệu về một người, liên quan tới tài khoản và loại người dùng.
+    </dd>
+    <dt>
+        Bảng {@link android.provider.ContactsContract.Data}
+    </dt>
+    <dd>
+        Hàng chứa các thông tin chi tiết về liên lạc thô, chẳng hạn như địa chỉ e-mail hoặc số điện thoại.
+    </dd>
+</dl>
+<p>
+    Các bảng khác được đại diện bởi các lớp hợp đồng trong {@link android.provider.ContactsContract}
+    là bảng phụ mà Trình cung cấp Danh bạ sử dụng để quản lý thao tác của nó hoặc hỗ trợ
+    các chức năng cụ thể trong ứng dụng danh bạ hoặc điện thoại của thiết bị.
+</p>
+<h2 id="RawContactBasics">Liên lạc thô</h2>
+<p>
+    Một liên lạc thô thể hiện dữ liệu của một người xuất phát từ một loại tài khoản và tên tài khoản
+ riêng. Vì Trình cung cấp Danh bạ cho phép nhiều hơn một dịch vụ trực tuyến làm nguồn
+ dữ liệu cho một người, Trình cung cấp Danh bạ cho phép nhiều liên lạc thô cho cùng một người.
+    Nhiều liên lạc thô cũng cho phép người dùng kết hợp dữ liệu của một người từ nhiều hơn một tài khoản
+ từ cùng loại tài khoản.
+</p>
+<p>
+    Hầu hết dữ liệu của một liên lạc thô không được lưu giữ trong bảng
+    {@link android.provider.ContactsContract.RawContacts}. Thay vào đó, nó được lưu giữ trong một hoặc nhiều
+    hàng trong bảng {@link android.provider.ContactsContract.Data}. Mỗi hàng dữ liệu có một cột
+    {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID Data.RAW_CONTACT_ID} chứa
+    giá trị {@code android.provider.BaseColumns#_ID RawContacts._ID} của
+    hàng {@link android.provider.ContactsContract.RawContacts} mẹ của nó.
+</p>
+<h3 id="RawContactsColumns">Các cột liên lạc thô quan trọng</h3>
+<p>
+    Các cột quan trọng trong bảng {@link android.provider.ContactsContract.RawContacts} được
+    liệt kê trong bảng 1. Hãy đọc các lưu ý theo sau bảng dưới đây:
+</p>
+<p class="table-caption" id="table1">
+    <strong>Bảng 1.</strong> Các cột liên lạc thô quan trọng.
+</p>
+<table>
+    <tr>
+        <th scope="col">Tên cột</th>
+        <th scope="col">Sử dụng</th>
+        <th scope="col">Lưu ý</th>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_NAME}
+        </td>
+        <td>
+            Tên tài khoản cho loại tài khoản là nguồn của liên lạc thô này.
+            Ví dụ, tên tài khoản của một tài khoản Google là một trong các địa chỉ Gmail
+            của chủ sở hữu thiết bị. Xem mục nhập tiếp theo cho
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE} để biết thêm
+            thông tin.
+        </td>
+        <td>
+            Định dạng của tên này áp dụng theo loại tài khoản của nó. Đó không nhất thiết
+            là một địa chỉ e-mail.
+        </td>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}
+        </td>
+        <td>
+            Loại tài khoản là nguồn của liên lạc thô này. Ví dụ, loại tài khoản
+            của một tài khoản Google là <code>com.google</code>. Luôn xác định loại tài khoản của bạn
+            bằng một mã định danh miền cho một miền mà bạn sở hữu hoặc kiểm soát. Điều này đảm bảo rằng loại tài khoản
+            của bạn là duy nhất.
+        </td>
+        <td>
+            Một loại tài khoản cung cấp dữ liệu danh bạ thường có một trình điều hợp đồng bộ liên kết để
+            đồng bộ hoá với Trình điều hợp Đồng bộ.
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.RawContactsColumns#DELETED}
+        </td>
+        <td>
+            Cờ "đã xóa" cho một liên lạc thô.
+        </td>
+        <td>
+            Cờ này cho phép Trình cung cấp Danh bạ duy trì hàng bên trong tới khi trình điều hợp đồng bộ
+            có thể xóa hàng đó khỏi máy chủ của chúng rồi cuối cùng là xóa hàng
+            khỏi kho lưu giữ.
+        </td>
+    </tr>
+</table>
+<h4>Lưu ý</h4>
+<p>
+    Sau đây là các ghi chú quan trọng về bảng
+    {@link android.provider.ContactsContract.RawContacts}:
+</p>
+<ul>
+    <li>
+        Tên của liên lạc thô không được lưu giữ trong hàng của nó trong
+        {@link android.provider.ContactsContract.RawContacts}. Thay vào đó, nó được lưu giữ trong
+        bảng {@link android.provider.ContactsContract.Data}, trong một hàng
+        {@link android.provider.ContactsContract.CommonDataKinds.StructuredName}. Liên lạc thô
+        chỉ có một hàng thuộc loại này trong bảng {@link android.provider.ContactsContract.Data}.
+    </li>
+    <li>
+        <strong>Chú ý:</strong> Để sử dụng dữ liệu tài khoản của chính bạn trong một hàng liên lạc thô, trước tiên dữ liệu
+        phải được đăng ký với {@link android.accounts.AccountManager}. Để làm điều này, hãy nhắc
+        người dùng thêm loại tài khoản và tên tài khoản của chúng vào danh sách tài khoản. Nếu bạn không
+        làm vậy, Trình cung cấp Danh bạ sẽ tự động xóa hàng liên lạc thô của bạn.
+        <p>
+            Ví dụ, nếu bạn muốn ứng dụng của mình duy trì dữ liệu danh bạ cho dịch vụ dựa trên nền web của mình
+            với miền {@code com.example.dataservice}, và tài khoản của người dùng cho dịch vụ của bạn
+            là {@code becky.sharp@dataservice.example.com}, trước tiên, người dùng phải thêm
+            "loại" tài khoản ({@code com.example.dataservice}) và "tên" tài khoản 
+            ({@code becky.smart@dataservice.example.com}) trước khi ứng dụng của bạn có thể thêm hàng liên lạc thô.
+            Bạn có thể giải thích yêu cầu này với người dùng bằng tài liệu, hoặc bạn có thể nhắc
+            người dùng thêm loại và tên này, hoặc cả hai. Loại tài khoản và tên tài khoản
+            được trình bày chi tiết hơn trong phần sau.
+    </li>
+</ul>
+<h3 id="RawContactsExample">Các nguồn dữ liệu liên lạc thô</h3>
+<p>
+    Để hiểu cách hoạt động của liên lạc thô, hãy xét người dùng "Emily Dickinson", cô ta có ba tài khoản
+    người dùng sau được xác định trên thiết bị của mình:
+</p>
+<ul>
+    <li><code>emily.dickinson@gmail.com</code></li>
+    <li><code>emilyd@gmail.com</code></li>
+    <li>Tài khoản Twitter "belle_of_amherst"</li>
+</ul>
+<p>
+    Người dùng này đã kích hoạt <em>Đồng bộ Danh bạ</em> cho cả ba tài khoản này trong cài đặt
+    <em>Tài khoản</em>.
+</p>
+<p>
+    Giả sử Emily Dickinson mở một cửa sổ trình duyệt, đăng nhập vào Gmail bằng tài khoản
+    <code>emily.dickinson@gmail.com</code>, mở
+    Danh bạ, và thêm "Thomas Higginson". Sau đó, cô đăng nhập vào Gmail bằng tài khoản
+    <code>emilyd@gmail.com</code> và gửi một e-mail tới "Thomas Higginson", làm vậy sẽ tự động
+    thêm người này làm một liên lạc. Cô ấy cũng theo dõi "colonel_tom" (ID Twitter của Thomas Higginson) trên
+    Twitter.
+</p>
+<p>
+    Trình cung cấp Danh bạ sẽ tạo ba liên lạc thô do kết quả của việc làm này:
+</p>
+<ol>
+    <li>
+        Một liên lạc thô cho "Thomas Higginson" liên kết với <code>emily.dickinson@gmail.com</code>.
+        Loại tài khoản người dùng là Google.
+    </li>
+    <li>
+        Một liên lạc thô thứ hai cho "Thomas Higginson" liên kết với <code>emilyd@gmail.com</code>.
+        Loại tài khoản người dùng cũng là Google. Có một liên lạc thô thứ hai ngay cả khi
+        tên giống với một tên trước đó, vì người này đã được thêm cho một
+        tài khoản người dùng khác.
+    </li>
+    <li>
+        Một liên lạc thô thứ ba cho "Thomas Higginson" liên kết với "belle_of_amherst". Loại tài khoản người dùng
+        là Twitter.
+    </li>
+</ol>
+<h2 id="DataBasics">Dữ liệu</h2>
+<p>
+    Như đề cập trước đó, dữ liệu của một liên lạc thô được lưu giữ trong một hàng
+    {@link android.provider.ContactsContract.Data} được liên kết với giá trị
+    <code>_ID</code> của liên lạc thô. Điều này cho phép một liên lạc thô có nhiều thực thể cùng loại
+    dữ liệu chẳng hạn như địa chỉ e-mail hay số điện thoại. Ví dụ, nếu
+    "Thomas Higginson" của {@code emilyd@gmail.com}  (hàng liên lạc thô cho Thomas Higginson
+    liên kết với tài khoản Google <code>emilyd@gmail.com</code>) có một địa chỉ e-mail nhà là
+    <code>thigg@gmail.com</code> và một địa chỉ e-mail cơ quan là
+    <code>thomas.higginson@gmail.com</code>, Trình cung cấp Danh bạ sẽ lưu trữ hai hàng địa chỉ e-mail đó
+    và liên kết cả hai với liên lạc thô.
+</p>
+<p>
+    Để ý rằng các loại dữ liệu khác nhau được lưu giữ trong một bảng này. Các hàng tên hiển thị,
+    số điện thoại, e-mail, địa chỉ gửi thư, ảnh và chi tiết trang web đều được tìm thấy trong bảng
+    {@link android.provider.ContactsContract.Data}. Để giúp quản lý điều này, bảng
+    {@link android.provider.ContactsContract.Data} có một số cột có tên mô tả,
+    và các cột còn lại có tên chung. Các nội dung của cột tên mô tả có cùng ý nghĩa
+    không phụ thuộc vào loại dữ liệu trong hàng, trong khi nội dung của cột tên chung có
+    ý nghĩa khác nhau tùy vào loại dữ liệu.
+</p>
+<h3 id="DescriptiveColumns">Tên cột mô tả</h3>
+<p>
+    Một số ví dụ về tên cột mô tả là:
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Data#RAW_CONTACT_ID}
+    </dt>
+    <dd>
+        Giá trị của cột <code>_ID</code> của liên lạc thô đối với dữ liệu này.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data#MIMETYPE}
+    </dt>
+    <dd>
+        Loại dữ liệu được lưu giữ trong hàng này, được thể hiện dưới dạng một kiểu MIME tùy chỉnh. Trình cung cấp Danh bạ
+        sử dụng các kiểu MIME được định nghĩa trong lớp con của
+        {@link android.provider.ContactsContract.CommonDataKinds}. Các kiểu MIME là nguồn mở,
+        và có thể được sử dụng bởi bất kỳ ứng dụng hay trình điều hợp đồng bộ nào hoạt động với Trình cung cấp Danh bạ.
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY}
+    </dt>
+    <dd>
+        Nếu kiểu hàng dữ liệu này có thể xảy ra nhiều hơn một lần đối với một liên lạc thô, cột
+        {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} sẽ gắn cờ
+        hàng dữ liệu chứa dữ liệu sơ cấp cho kiểu đó. Ví dụ, nếu
+        người dùng nhấn giữ một số điện thoại cho một liên lạc và chọn <strong>Đặt mặc định</strong>,
+        khi đó hàng {@link android.provider.ContactsContract.Data} chứa số đó
+        có cột tương ứng {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} được đặt thành một
+        giá trị khác 0.
+    </dd>
+</dl>
+<h3 id="GenericColumns">Tên cột chung</h3>
+<p>
+    Có 15 cột chung được đặt tên <code>DATA1</code> thông qua
+    <code>DATA15</code> thường có sẵn và thêm bốn cột
+    chung <code>SYNC1</code> thông qua <code>SYNC4</code> mà chỉ được sử dụng bởi trình điều hợp
+    đồng bộ. Các hằng số tên cột chung luôn có tác dụng, không phụ thuộc vào loại
+    dữ liệu mà hàng đó chứa.
+</p>
+<p>
+    Cột <code>DATA1</code> được đánh chỉ mục.  Trình cung cấp Danh bạ luôn sử dụng cột này cho
+    dữ liệu mà trình cung cấp kỳ vọng sẽ là đối tượng truy vấn thường xuyên nhất. Ví dụ,
+    trong một hàng e-mail, cột này chứa địa chỉ e-mail thực sự.
+</p>
+<p>
+    Theo quy ước, cột <code>DATA15</code> được dành để lưu giữ dữ liệu Binary Large Object
+    (BLOB) chẳng hạn như hình thu nhỏ của ảnh.
+</p>
+<h3 id="TypeSpecificNames">Tên cột theo kiểu</h3>
+<p>
+    Để tạo điều kiện làm việc với các cột đối với một kiểu hàng cụ thể, Trình cung cấp Danh bạ
+    cũng cung cấp các hằng số tên cột theo kiểu, được định nghĩa trong các lớp con của
+    {@link android.provider.ContactsContract.CommonDataKinds}. Các hằng số chỉ cấp một
+    tên hằng số khác cho cùng tên cột, điều này giúp bạn truy cập dữ liệu trong một hàng thuộc
+    một kiểu cụ thể.
+</p>
+<p>
+    Ví dụ, lớp {@link android.provider.ContactsContract.CommonDataKinds.Email} định nghĩa
+    các hằng số tên cột theo kiểu cho một hàng {@link android.provider.ContactsContract.Data} mà
+    có kiểu MIME
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+    Email.CONTENT_ITEM_TYPE}. Lớp chứa hằng số
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} cho cột
+    địa chỉ e-mail. Giá trị thực sự của
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} là "data1", giá trị này
+    giống hệt như tên chung của cột.
+</p>
+<p class="caution">
+    <strong>Chú ý:</strong> Không được thêm dữ liệu tùy chỉnh của chính bạn vào bảng
+    {@link android.provider.ContactsContract.Data} bằng cách sử dụng một hàng có một trong các kiểu MIME được xác định trước
+    của trình cung cấp. Nếu làm vậy, bạn có thể làm mất dữ liệu hoặc khiến trình cung cấp
+    gặp trục trặc. Ví dụ, bạn không nên thêm một hàng có kiểu MIME
+    {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+    Email.CONTENT_ITEM_TYPE} mà chứa tên người dùng thay vì địa chỉ e-mail trong cột
+    <code>DATA1</code>. Nếu sử dụng kiểu MIME tùy chỉnh của mình cho hàng, khi đó bạn được tự do
+    định nghĩa tên cột theo kiểu của chính mình và sử dụng các cột theo cách bạn muốn.
+</p>
+<p>
+    Hình 2 minh họa cách các cột mô tả và cột dữ liệu xuất hiện trong hàng
+    {@link android.provider.ContactsContract.Data}, và cách mà tên cột theo kiểu "phủ lên"
+   tên cột chung
+</p>
+<img src="{@docRoot}images/providers/data_columns.png" alt="How type-specific column names map to generic column names" height="311" id="figure2" />
+<p class="img-caption">
+  <strong>Hình 2.</strong> Tên cột theo kiểu và tên cột chung.
+</p>
+<h3 id="ColumnMaps">Lớp tên cột theo kiểu</h3>
+<p>
+    Bảng 2 liệt kê các lớp tên cột theo kiểu thường được sử dụng nhất:
+</p>
+<p class="table-caption" id="table2">
+  <strong>Bảng 2.</strong> Lớp tên cột theo kiểu</p>
+<table>
+  <tr>
+    <th scope="col">Lớp ánh xạ</th>
+    <th scope="col">Kiểu dữ liệu</th>
+    <th scope="col">Lưu ý</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredName}</td>
+    <td>Dữ liệu tên của liên lạc thô liên kết với hàng dữ liệu này.</td>
+    <td>Một liên lạc thô chỉ có một trong những hàng này.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Photo}</td>
+    <td>Ảnh chính của liên lạc thô được liên kết với hàng dữ liệu này.</td>
+    <td>Một liên lạc thô chỉ có một trong những hàng này.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Email}</td>
+    <td>Địa chỉ e-mail của liên lạc thô được liên kết với hàng dữ liệu này.</td>
+    <td>Một liên lạc thô có thể có nhiều địa chỉ e-mail.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal}</td>
+    <td>Địa chỉ cổng của liên lạc thô được liên kết với hàng dữ liệu này.</td>
+    <td>Một liên lạc thô có thể có nhiều địa chỉ cổng.</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}</td>
+    <td>Mã định danh liên kết liên lạc thô với một trong các nhóm trong Trình cung cấp Danh bạ.</td>
+    <td>
+        Nhóm là một tính năng tùy chọn của loại tài khoản và tên tài khoản. Chúng được mô tả
+        chi tiết hơn trong phần <a href="#Groups">Nhóm liên lạc</a>.
+    </td>
+  </tr>
+</table>
+<h3 id="ContactBasics">Danh bạ</h3>
+<p>
+    Trình cung cấp Danh bạ kết hợp các hàng liên lạc thô giữa tất cả các loại tài khoản và tên tài khoản
+    để tạo thành một <strong>liên lạc</strong>. Điều này tạo điều kiện để hiển thị và sửa đổi tất cả dữ liệu mà một
+    người dùng đã thu thập cho một người. Trình cung cấp Danh bạ quản lý việc tạo các hàng liên lạc mới
+    và tổng hợp các liên lạc thô với hàng liên lạc hiện có. Ứng dụng lẫn
+    trình điều hợp đồng bộ đều không được cho phép thêm liên lạc và một số cột trong một hàng liên lạc là cột chỉ đọc.
+</p>
+<p class="note">
+    <strong>Lưu ý:</strong> Nếu bạn cố gắng thêm một liên lạc vào Trình cung cấp Danh bạ có một
+    {@link android.content.ContentResolver#insert(Uri,ContentValues) insert()}, bạn sẽ gặp
+    lỗi ngoại lệ {@link java.lang.UnsupportedOperationException}. Nếu bạn cố gắng cập nhật một cột
+    mà được liệt kê là "chỉ đọc," cập nhật sẽ bị bỏ qua.
+</p>
+<p>
+    Trình cung cấp Danh bạ tạo một liên lạc mới để hồi đáp lại việc thêm một liên lạc thô mới
+    không khớp với bất kỳ liên lạc nào hiện có. Trình cung cấp cũng làm vậy nếu dữ liệu
+    của một liên lạc thô hiện có thay đổi sao cho nó không còn khớp với liên lạc mà trước đó
+    nó được gắn với. Nếu một ứng dụng hoặc trình điều hợp đồng bộ tạo một liên lạc thô mới mà
+    <em>khớp</em> với một liên lạc hiện tại, liên lạc thô mới sẽ được tổng hợp vào liên lạc
+    hiện có.
+</p>
+<p>
+    Trình cung cấp Danh bạ sẽ liên kết một hàng liên lạc với các hàng liên lạc thô của nó bằng cột
+    <code>_ID</code> của hàng liên lạc đó trong bảng {@link android.provider.ContactsContract.Contacts Contacts}
+. Cột <code>CONTACT_ID</code> của bảng liên lạc thô
+    {@link android.provider.ContactsContract.RawContacts} chứa các giá trị <code>_ID</code> cho
+    các hàng liên lạc liên kết với từng hàng liên lạc thô.
+</p>
+<p>
+    Bảng {@link android.provider.ContactsContract.Contacts} cũng có cột
+    {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} mà là một liên kết
+    "cố định" với hàng liên lạc đó. Vì Trình cung cấp Danh bạ tự động duy trì
+    các liên lạc, nó có thể thay đổi giá trị {@code android.provider.BaseColumns#_ID} của một hàng liên lạc
+    hồi đáp lại một sự tổng hợp hoặc đồng bộ. Ngay cả khi điều này xảy ra, URI nội dung
+    {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI} kết hợp với
+    {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} của liên lạc sẽ vẫn
+    chỉ về hàng liên lạc đó, vì thế bạn có thể sử dụng
+    {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}
+    để duy trì các liên kết đến liên lạc "yêu thích", v.v. Cột này có định dạng riêng không
+    liên quan tới định dạng của cột {@code android.provider.BaseColumns#_ID}.
+</p>
+<p>
+    Hình 3 minh họa mối liên quan giữa ba bảng chính này với nhau.
+</p>
+<img src="{@docRoot}images/providers/contacts_tables.png" alt="Contacts provider main tables" height="514" id="figure4" />
+<p class="img-caption">
+  <strong>Hình 3.</strong> Mối quan hệ giữa các bảng Danh bạ, Liên lạc Thô, và Chi tiết.
+</p>
+<h2 id="Sources">Dữ liệu từ Trình điều hợp Đồng bộ</h2>
+<p>
+    Người dùng nhập dữ liệu danh bạ trực tiếp vào thiết bị, nhưng dữ liệu cũng đi đến Trình cung cấp
+    Danh bạ từ các dịch vụ web thông qua <strong>trình điều hợp đồng bộ</strong>, giúp tự động
+    chuyển dữ liệu giữa thiết bị và các dịch vụ. Trình điều hợp đồng bộ chạy ngầm
+    dưới sự kiểm soát của hệ thống, và chúng gọi các phương pháp {@link android.content.ContentResolver} để
+    quản lý dữ liệu.
+</p>
+<p>
+    Trong Android, dịch vụ web mà một trình điều hợp đồng bộ làm việc cùng sẽ được xác định bằng một loại tài khoản.
+    Mỗi trình điều hợp đồng bộ làm việc với một loại tài khoản, nhưng nó có thể hỗ trợ nhiều tên tài khoản cho
+    loại đó. Các loại tài khoản và tên tài khoản được mô tả sơ qua trong phần
+    <a href="#RawContactsExample">Các nguồn dữ liệu liên lạc thô</a>. Các định nghĩa sau trình bày
+    chi tiết hơn và mô tả mối liên quan giữa loại và tên tài khoản với các trình điều hợp đồng bộ và dịch vụ.
+</p>
+<dl>
+    <dt>
+        Loại tài khoản
+    </dt>
+    <dd>
+        Xác định một dịch vụ mà người dùng đã lưu giữ dữ liệu trong đó. Trong phần lớn thời gian, người dùng phải
+        xác thực dịch vụ. Ví dụ, Google Contacts là một loại tài khoản được xác định
+        bởi mã <code>google.com</code>. Giá trị này tương ứng với loại tài khoản được sử dụng bởi
+        {@link android.accounts.AccountManager}.
+    </dd>
+    <dt>
+        Tên tài khoản
+    </dt>
+    <dd>
+        Xác định một tài khoản hoặc đăng nhập cụ thể cho một loại tài khoản. Tài khoản Google Contacts
+        giống như tài khoản Google, chúng có một địa chỉ e-mail làm tên tài khoản.
+        Các dịch vụ khác có thể sử dụng tên người dùng là một từ hoặc id chữ số.
+    </dd>
+</dl>
+<p>
+    Loại tài khoản không nhất thiết phải duy nhất. Một người dùng có thể cấu hình nhiều tài khoản Google Contacts
+    và tải xuống dữ liệu của chúng vào Trình cung cấp Danh bạ; điều này có thể xảy ra nếu người dùng có một tập hợp
+    các liên lạc cá nhân cho một tên tài khoản cá nhân, và một tập hợp khác cho cơ quan. Tên tài khoản thường
+    là duy nhất. Cùng nhau, chúng xác định một dòng dữ liệu cụ thể giữa Trình cung cấp Danh bạ và
+    một dịch vụ bên ngoài.
+</p>
+<p>
+    Nếu muốn chuyển dữ liệu từ dịch vụ của bạn sang Trình cung cấp Danh bạ, bạn cần ghi
+    vào trình điều hợp đồng bộ của chính mình. Điều này được mô tả chi tiết hơn trong phần
+    <a href="#SyncAdapters">Trình điều hợp Đồng bộ Trình cung cấp Danh bạ</a>.
+</p>
+<p>
+    Hình 4 minh họa cách mà Trình cung cấp Danh bạ phù hợp với dòng dữ liệu
+    về con người. Trong hộp được đánh dấu "trình điều hợp đồng bộ," mỗi trình điều hợp được ghi nhãn theo loại tài khoản của nó.
+</p>
+<img src="{@docRoot}images/providers/ContactsDataFlow.png" alt="Flow of data about people" height="252" id="figure5" />
+<p class="img-caption">
+  <strong>Hình 4.</strong> Luồng dữ liệu của Trình cung cấp Danh bạ.
+</p>
+<h2 id="Permissions">Quyền được Yêu cầu</h2>
+<p>
+    Những ứng dụng muốn truy cập Trình cung cấp Danh bạ phải yêu cầu các quyền
+    sau:
+</p>
+<dl>
+    <dt>Quyền truy cập đọc vào một hoặc nhiều bảng</dt>
+    <dd>
+        {@link android.Manifest.permission#READ_CONTACTS}, được quy định trong
+        <code>AndroidManifest.xml</code> với phần tử
+        <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> là
+        <code>&lt;uses-permission android:name="android.permission.READ_CONTACTS"&gt;</code>.
+    </dd>
+    <dt>Quyền truy cập ghi vào một hoặc nhiều bảng</dt>
+    <dd>
+        {@link android.Manifest.permission#WRITE_CONTACTS}, được quy định trong
+        <code>AndroidManifest.xml</code> với phần tử
+        <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> là
+        <code>&lt;uses-permission android:name="android.permission.WRITE_CONTACTS"&gt;</code>.
+    </dd>
+</dl>
+<p>
+    Những quyền này không mở rộng sang dữ liệu hồ sơ người dùng. Hồ sơ người dùng và các quyền
+    được yêu cầu được đề cập trong phần sau,
+    <a href="#UserProfile">Hồ sơ Người dùng</a>.
+</p>
+<p>
+    Nhớ rằng dữ liệu danh bạ của người dùng là dữ liệu cá nhân và nhạy cảm. Người dùng quan tâm về
+    quyền riêng tư của họ, vì thế họ không muốn các ứng dụng thu thập dữ liệu về mình hoặc danh bạ của mình.
+    Nếu không rõ ràng về lý do bạn cần quyền truy cập dữ liệu danh bạ của họ, họ có thể cho
+    ứng dụng của bạn đánh giá thấp hoặc từ chối cài đặt ứng dụng.
+</p>
+<h2 id="UserProfile">Hồ sơ Người dùng</h2>
+<p>
+    Bảng {@link android.provider.ContactsContract.Contacts} có một hàng đơn chứa
+    dữ liệu hồ sơ cho người dùng của thiết bị. Dữ liệu này mô tả <code>user</code> của thiết bị chứ không phải
+    của một trong các liên lạc của người dùng. Hàng liên lạc hồ sơ được liên kết với hàng
+    liên lạc thô đối với từng hệ thống sử dụng hồ sơ.
+    Mỗi hàng liên lạc thô của hồ sơ có thể có nhiều hàng dữ liệu. Các hằng số để truy cập hồ sơ
+    người dùng có sẵn trong lớp {@link android.provider.ContactsContract.Profile}.
+</p>
+<p>
+    Truy cập hồ sơ người dùng đòi hỏi phải có các quyền đặc biệt. Ngoài các quyền
+    {@link android.Manifest.permission#READ_CONTACTS} và
+    {@link android.Manifest.permission#WRITE_CONTACTS} cần để đọc và ghi, truy cập
+    hồ sơ người dùng còn yêu cầu quyền {@code android.Manifest.permission#READ_PROFILE} và
+    {@code android.Manifest.permission#WRITE_PROFILE} tương ứng cho quyền truy cập đọc và
+    ghi.
+</p>
+<p>
+    Nhớ rằng bạn nên coi hồ sơ của một người dùng là nội dung nhạy cảm. Quyền
+    {@code android.Manifest.permission#READ_PROFILE} cho phép bạn truy cập dữ liệu xác định cá nhân
+    của người dùng thiết bị. Chắc chắn phải nói cho người dùng biết lý do tại sao
+    bạn cần các quyền truy cập hồ sơ người dùng trong phần mô tả ứng dụng của mình.
+</p>
+<p>
+    Để truy xuất hàng liên lạc chứa hồ sơ của người dùng,
+    hãy gọi {@link android.content.ContentResolver#query(Uri,String[], String, String[], String)
+    ContentResolver.query()}. Đặt URI nội dung thành
+    {@link android.provider.ContactsContract.Profile#CONTENT_URI} và không cung cấp bất kỳ
+    tiêu chí lựa chọn nào. Bạn cũng có thể sử dụng URI nội dung này làm URI cơ sở để truy xuất các liên lạc thô
+    hoặc dữ liệu cho hồ sơ. Ví dụ, đoạn mã HTML này truy xuất dữ liệu cho hồ sơ:
+</p>
+<pre>
+// Sets the columns to retrieve for the user profile
+mProjection = new String[]
+    {
+        Profile._ID,
+        Profile.DISPLAY_NAME_PRIMARY,
+        Profile.LOOKUP_KEY,
+        Profile.PHOTO_THUMBNAIL_URI
+    };
+
+// Retrieves the profile from the Contacts Provider
+mProfileCursor =
+        getContentResolver().query(
+                Profile.CONTENT_URI,
+                mProjection ,
+                null,
+                null,
+                null);
+</pre>
+<p class="note">
+    <strong>Lưu ý:</strong> Nếu bạn truy xuất nhiều hàng liên lạc và muốn xác định xem một trong số chúng có phải
+    là hồ sơ người dùng không, hãy kiểm tra cột
+    {@link android.provider.ContactsContract.ContactsColumns#IS_USER_PROFILE} của hàng. Cột này
+    được đặt thành "1" nếu liên lạc là hồ sơ người dùng.
+</p>
+<h2 id="ContactsProviderMetadata">Siêu dữ liệu Trình cung cấp Danh bạ</h2>
+<p>
+    Trình cung cấp Danh bạ quản lý dữ liệu theo dõi trạng thái của dữ liệu danh bạ trong
+    kho lưu giữ. Siêu dữ liệu về kho lưu giữ này được lưu giữ ở nhiều nơi khác nhau, bao gồm
+    các hàng bảng Liên lạc Thô, Dữ liệu, và Danh bạ, bảng
+    {@link android.provider.ContactsContract.Settings}, và bảng
+    {@link android.provider.ContactsContract.SyncState}. Bảng sau đây cho biết
+    ảnh hưởng của từng mục trong siêu dữ liệu này:
+</p>
+<p class="table-caption" id="table3">
+  <strong>Bảng 3.</strong> Siêu dữ liệu trong Trình cung cấp Danh bạ</p>
+<table>
+    <tr>
+        <th scope="col">Bảng</th>
+        <th scope="col">Cột</th>
+        <th scope="col">Giá trị</th>
+        <th scope="col">Ý nghĩa</th>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.RawContacts}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.SyncColumns#DIRTY}</td>
+        <td>"0" - không thay đổi kể từ lần đồng bộ cuối cùng.</td>
+        <td rowspan="2">
+            Đánh dấu các liên lạc thô đã được thay đổi trên thiết bị và phải được đồng bộ trở lại
+            máy chủ. Giá trị được đặt tự động bởi Trình cung cấp Danh bạ khi các ứng dụng
+            Android cập nhật một hàng.
+            <p>
+                Các trình điều hợp đồng bộ sửa đổi bảng liên lạc thô hoặc dữ liệu nên luôn nối
+                xâu {@link android.provider.ContactsContract#CALLER_IS_SYNCADAPTER} với
+                URI nội dung mà chúng sử dụng. Làm vậy sẽ ngăn không cho trình cung cấp đánh dấu hàng là không tốt.
+                Nếu không, các sửa đổi trình điều hợp đồng bộ xem như sửa đổi cục bộ và được
+                gửi tới máy chủ, ngay cả khi máy chủ là nguồn sửa đổi.
+            </p>
+        </td>
+    </tr>
+    <tr>
+            <td>"1" - đã thay đổi kể từ lần đồng bộ cuối cùng, cần được đồng bộ lại máy chủ.</td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#VERSION}</td>
+        <td>Số phiên bản của hàng này.</td>
+        <td>
+            Trình cung cấp Danh bạ tự động tăng dần giá trị này bất cứ khi nào hàng hoặc
+            dữ liệu có liên quan của hàng thay đổi.
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.Data}</td>
+        <td>{@link android.provider.ContactsContract.DataColumns#DATA_VERSION}</td>
+        <td>Số phiên bản của hàng này.</td>
+        <td>
+            Trình cung cấp Danh bạ tự động tăng dần giá trị này bất cứ khi nào hàng dữ liệu
+            bị thay đổi.
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}</td>
+        <td>
+            Một xâu giá trị xác định duy nhất liên lạc thô này cho tài khoản mà
+            nó được tạo trong đó.
+        </td>
+        <td>
+            Khi một trình điều hợp đồng bộ tạo một liên lạc thô mới, cột này nên được đặt thành
+            ID duy nhất của máy chủ dành cho liên lạc thô đó. Khi một ứng dụng Android tạo một liên lạc thô
+            mới, ứng dụng đó sẽ để trống cột này. Điều này báo hiệu với trình điều hợp
+            đồng bộ rằng nó nên tạo một liên lạc thô mới trên máy chủ, và lấy một
+            giá trị cho {@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}.
+            <p>
+                Cụ thể, id nguồn phải là <strong>duy nhất</strong> đối với từng loại tài khoản
+                và nên ổn định giữa các lần đồng bộ:
+            </p>
+                <ul>
+                    <li>
+                        Duy nhất: Mỗi liên lạc thô đối với một tài khoản phải có id nguồn riêng của mình. Nếu không
+                        thi hành điều này, bạn sẽ gây ra sự cố trong ứng dụng danh bạ.
+                        Để ý rằng hai liên lạc thô đối với cùng <em>loại</em> tài khoản có thể có
+                        cùng id nguồn. Ví dụ, liên lạc thô "Thomas Higginson" đối với
+                        tài khoản {@code emily.dickinson@gmail.com} được cho phép có cùng id nguồn
+                        như liên lạc thô "Thomas Higginson" đối với tài khoản
+                        {@code emilyd@gmail.com}.
+                    </li>
+                    <li>
+                        Ổn định: Id nguồn là một bộ phận cố định của dữ liệu từ dịch vụ trực tuyến đối với
+                        liên lạc thô. Ví dụ, nếu người dùng xóa Lưu trữ Danh bạ khỏi
+                        cài đặt Ứng dụng và đồng bộ lại, các liên lạc thô được khôi phục sẽ có cùng
+                        id nguồn như trước. Nếu bạn không thi hành điều này, các lối tắt sẽ dừng
+                        hoạt động.
+                    </li>
+                </ul>
+        </td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Groups}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.GroupsColumns#GROUP_VISIBLE}</td>
+        <td>"0" - Các liên lạc trong nhóm này không nên được hiển thị trong UI ứng dụng Android.</td>
+        <td>
+            Cột này dành cho tính tương thích với các máy chủ mà cho phép người dùng ẩn các liên lạc trong
+            một số nhóm.
+        </td>
+    </tr>
+    <tr>
+        <td>"1" - Các liên lạc trong nhóm này được cho phép hiển thị trong UI ứng dụng.</td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Settings}</td>
+        <td rowspan="2">
+            {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE}</td>
+        <td>
+            "0" - Đối với tài khoản và loại tài khoản này, những liên lạc không thuộc về nhóm
+            được ẩn đối với UI ứng dụng Android.
+        </td>
+        <td rowspan="2">
+            Theo mặc định, các liên lạc được hiển thị nếu không có liên lạc thô nào của chúng thuộc về một nhóm
+            (Tư cách thành viên nhóm đối với một liên lạc thô được thể hiện bằng một hoặc nhiều hàng
+            {@link android.provider.ContactsContract.CommonDataKinds.GroupMembership} trong
+            bảng {@link android.provider.ContactsContract.Data}).
+            Bằng cách đặt cờ này trong hàng bảng {@link android.provider.ContactsContract.Settings} đối với
+            một loại tài khoản và tài khoản, bạn có thể buộc những liên lạc không có nhóm phải hiển thị.
+            Một công dụng của cờ này đó là để hiển thị liên lạc từ các máy chủ không sử dụng nhóm.
+        </td>
+    </tr>
+    <tr>
+        <td>
+            "1" - Đối với tài khoản và loại tài khoản này, những liên lạc không thuộc về nhóm
+            sẽ được hiển thị đối với UI ứng dụng.
+        </td>
+
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.SyncState}</td>
+        <td>(tất cả)</td>
+        <td>
+            Sử dụng bảng này để lưu giữ siêu dữ liệu cho trình điều hợp đồng bộ của bạn.
+        </td>
+        <td>
+            Với bảng này, bạn có thể lưu giữ trạng thái đồng bộ và các dữ liệu khác liên quan tới đồng bộ một cách lâu dài
+            trên thiết bị.
+        </td>
+    </tr>
+</table>
+<h2 id="Access">Truy cập Trình cung cấp Danh bạ</h2>
+<p>
+    Phần này mô tả các hướng dẫn về truy cập dữ liệu từ Trình cung cấp Danh bạ, tập trung vào những
+    nội dung sau:
+</p>
+<ul>
+    <li>
+        Truy vấn thực thể.
+    </li>
+    <li>
+        Sửa đổi hàng loạt.
+    </li>
+    <li>
+        Truy xuất và sửa đổi bằng ý định.
+    </li>
+    <li>
+        Toàn vẹn dữ liệu.
+    </li>
+</ul>
+<p>
+    Thực hiện sửa đổi từ một trình điều hợp đồng bộ cũng được đề cập chi tiết hơn trong phần
+    <a href="#SyncAdapters">Trình điều hợp Đồng bộ Trình cung cấp Danh bạ</a>.
+</p>
+<h3 id="Entities">Truy vấn thực thể</h3>
+<p>
+    Vì các bảng của Trình cung cấp Danh bạ được tổ chức theo một phân cấp, thường sẽ hữu ích nếu
+    truy xuất một hàng và tất cả hàng "con" được liên kết với nó. Ví dụ, để hiển thị
+    tất cả thông tin cho một người, bạn có thể muốn truy xuất tất cả hàng
+    {@link android.provider.ContactsContract.RawContacts} đối với một hàng
+    {@link android.provider.ContactsContract.Contacts} đơn, hoặc tất cả hàng
+    {@link android.provider.ContactsContract.CommonDataKinds.Email} đối với một hàng
+    {@link android.provider.ContactsContract.RawContacts} đơn. Để tạo điều kiện cho điều này, Trình cung cấp
+    Danh bạ sẽ cung cấp các cấu trúc <strong>thực thể</strong> đóng vai trò như liên kết cơ sở dữ liệu
+    giữa các bảng.
+</p>
+<p>
+    Thực thể giống như một bảng bao gồm các cột được chọn từ một bảng mẹ và bảng con của nó.
+    Khi bạn truy vấn một thực thể, bạn cung cấp một dự thảo và các tiêu chí dựa trên các cột
+    có sẵn từ thực thể. Kết quả là một {@link android.database.Cursor} trong đó chứa
+    một hàng cho từng hàng bảng con được truy xuất. Ví dụ, nếu bạn truy vấn
+    {@link android.provider.ContactsContract.Contacts.Entity} cho một tên liên lạc
+    và tất cả hàng {@link android.provider.ContactsContract.CommonDataKinds.Email} đối với tất cả
+    liên lạc thô cho tên đó, bạn sẽ nhận lại một {@link android.database.Cursor} chứa một hàng
+    cho mỗi hàng {@link android.provider.ContactsContract.CommonDataKinds.Email}.
+</p>
+<p>
+    Các thực thể sẽ đơn giản hóa việc truy vấn. Bằng cách sử dụng một thực thể, bạn có thể truy xuất ngay lập tức tất cả dữ liệu danh bạ cho một
+    liên lạc hoặc liên lạc thô, thay vì phải truy vấn bảng mẹ trước để nhận một
+    ID, và rồi phải truy xuất bảng con bằng ID đó. Đồng thời, Trình cung cấp Danh bạ xử lý
+    một truy vấn đối với một thực thể trong một giao tác đơn, điều này đảm bảo rằng dữ liệu được truy xuất sẽ được
+    nhất quán trong nội bộ.
+</p>
+<p class="note">
+    <strong>Lưu ý:</strong> Một thực thể thường không chứa tất cả cột của bảng mẹ và
+    bảng con. Nếu bạn cố gắng làm việc với một tên cột không có trong danh sách các hằng số tên cột
+    đối với thực thể đó, bạn sẽ nhận được một {@link java.lang.Exception}.
+</p>
+<p>
+    Đoạn mã HTML sau cho biết cách truy xuất tất cả hàng liên lạc thô cho một liên lạc. Đoạn mã HTML
+    là bộ phận của một ứng dụng lớn hơn có hai hoạt động, "chính" và "chi tiết". Hoạt động chính
+    hiển thị một danh sách các hàng liên lạc; khi người dùng chọn một hàng, hoạt động sẽ gửi ID của hàng tới hoạt động
+    chi tiết. Hoạt động chi tiết sử dụng {@link android.provider.ContactsContract.Contacts.Entity}
+    để hiển thị tất cả hàng dữ liệu từ tất cả liên lạc thô được liên kết với liên lạc
+    đã chọn.
+</p>
+<p>
+    Đoạn mã HTML này được lấy từ hoạt động "chi tiết":
+</p>
+<pre>
+...
+    /*
+     * Appends the entity path to the URI. In the case of the Contacts Provider, the
+     * expected URI is content://com.google.contacts/#/entity (# is the ID value).
+     */
+    mContactUri = Uri.withAppendedPath(
+            mContactUri,
+            ContactsContract.Contacts.Entity.CONTENT_DIRECTORY);
+
+    // Initializes the loader identified by LOADER_ID.
+    getLoaderManager().initLoader(
+            LOADER_ID,  // The identifier of the loader to initialize
+            null,       // Arguments for the loader (in this case, none)
+            this);      // The context of the activity
+
+    // Creates a new cursor adapter to attach to the list view
+    mCursorAdapter = new SimpleCursorAdapter(
+            this,                        // the context of the activity
+            R.layout.detail_list_item,   // the view item containing the detail widgets
+            mCursor,                     // the backing cursor
+            mFromColumns,                // the columns in the cursor that provide the data
+            mToViews,                    // the views in the view item that display the data
+            0);                          // flags
+
+    // Sets the ListView's backing adapter.
+    mRawContactList.setAdapter(mCursorAdapter);
+...
+&#64;Override
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+
+    /*
+     * Sets the columns to retrieve.
+     * RAW_CONTACT_ID is included to identify the raw contact associated with the data row.
+     * DATA1 contains the first column in the data row (usually the most important one).
+     * MIMETYPE indicates the type of data in the data row.
+     */
+    String[] projection =
+        {
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID,
+            ContactsContract.Contacts.Entity.DATA1,
+            ContactsContract.Contacts.Entity.MIMETYPE
+        };
+
+    /*
+     * Sorts the retrieved cursor by raw contact id, to keep all data rows for a single raw
+     * contact collated together.
+     */
+    String sortOrder =
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID +
+            " ASC";
+
+    /*
+     * Returns a new CursorLoader. The arguments are similar to
+     * ContentResolver.query(), except for the Context argument, which supplies the location of
+     * the ContentResolver to use.
+     */
+    return new CursorLoader(
+            getApplicationContext(),  // The activity's context
+            mContactUri,              // The entity content URI for a single contact
+            projection,               // The columns to retrieve
+            null,                     // Retrieve all the raw contacts and their data rows.
+            null,                     //
+            sortOrder);               // Sort by the raw contact ID.
+}
+</pre>
+<p>
+    Khi hoàn thành việc tải, {@link android.app.LoaderManager} gọi ra một lệnh gọi lại đến
+    {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished(Loader, D)
+    onLoadFinished()}. Một trong các tham đối đến với phương pháp này là một
+    {@link android.database.Cursor} với các kết quả của truy vấn. Trong ứng dụng của chính mình, bạn có thể nhận dữ liệu
+    từ {@link android.database.Cursor} này để hiển thị nó hoặc thao tác thêm với nó.
+</p>
+<h3 id="Transactions">Sửa đổi hàng loạt</h3>
+<p>
+    Bất cứ khi nào có thể, bạn nên chèn, cập nhật và xóa dữ liệu trong Trình cung cấp Danh bạ trong
+    "chế độ hàng loạt", bằng cách tạo một {@link java.util.ArrayList} của các đối tượng
+    {@link android.content.ContentProviderOperation} và gọi
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. Vì
+    Trình cung cấp Danh bạ thực hiện tất cả thao tác trong một
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} trong một giao tác
+    đơn, các sửa đổi của bạn sẽ không bao giờ ra khỏi kho lưu giữ danh bạ một cách
+    không nhất quán. Sửa đổi hàng loạt cũng tạo điều kiện cho việc chèn một liên lạc thô và dữ liệu chi tiết của liên lạc
+    tại cùng thời điểm.
+</p>
+<p class="note">
+    <strong>Lưu ý:</strong> Để sửa đổi một liên lạc thô <em>đơn</em>, hãy xét gửi một ý định tới
+    ứng dụng danh bạ của thiết bị thay vì xử lý sửa đổi trong ứng dụng của bạn.
+    Việc làm này được mô tả chi tiết hơn trong phần
+    <a href="#Intents">Truy xuất và sửa đổi bằng ý định</a>.
+</p>
+<h4>Điểm kết quả</h4>
+<p>
+    Sửa đổi hàng loạt chứa nhiều thao tác có thể chặn các tiến trình khác,
+    dẫn đến trải nghiệm người dùng tổng thể không tốt. Để sắp xếp tổ chức tất cả sửa đổi mà bạn muốn
+    thực hiện trong ít danh sách riêng nhất có thể, và đồng thời ngăn chúng
+    chặn hệ thống, bạn nên đặt các <strong>điểm kết quả</strong> cho một hoặc nhiều thao tác.
+    Điểm kết quả là một đối tượng {@link android.content.ContentProviderOperation} có giá trị
+    {@link android.content.ContentProviderOperation#isYieldAllowed()} được đặt thành
+    <code>true</code>. Khi các Trình cung cấp Danh bạ gặp phải một điểm kết quả, nó tạm dừng công việc để
+    cho phép các tiến trình khác chạy và đóng giao tác hiện tại. Khi trình cung cấp bắt đầu lại, nó
+    tiếp tục với thao tác tiếp theo trong {@link java.util.ArrayList} và bắt đầu một giao tác
+    mới.
+</p>
+<p>
+    Điểm kết quả dẫn đến có nhiều hơn một giao tác trên mỗi lệnh gọi tới
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. Vì
+    điều này, bạn nên đặt một điểm kết quả cho thao tác cuối cùng đối với một tập hợp các hàng có liên quan.
+    Ví dụ, bạn nên đặt một điểm kết quả cho thao tác cuối cùng trong một tập hợp mà thêm
+    các hàng liên lạc thô và hàng dữ liệu liên kết của chúng, hoặc thao tác cuối cùng đối với một tập hợp các hàng liên quan tới
+    một liên lạc riêng lẻ.
+</p>
+<p>
+    Điểm kết quả cũng là một đơn vị thao tác nguyên tử. Tất cả truy cập giữa hai điểm kết quả sẽ
+    hoặc thành công hoặc thất bại như một đơn vị riêng lẻ. Nếu bạn không đặt bất kỳ điểm kết quả nào, thao tác
+    nguyên tử nhỏ nhất chính là toàn bộ loạt thao tác. Nếu sử dụng điểm kết quả, bạn ngăn cản
+    các thao tác làm giảm hiệu suất của hệ thống, đồng thời đảm bảo rằng một tập con của
+    thao tác là tập nguyên tử.
+</p>
+<h4>Tham chiếu lại sửa đổi</h4>
+<p>
+    Khi bạn đang chèn một hàng liên lạc thô mới và các hàng dữ liệu liên kết của nó như một tập hợp các đối tượng
+    {@link android.content.ContentProviderOperation}, bạn phải liên kết các hàng dữ liệu với
+    hàng liên lạc thô bằng cách chèn giá trị
+    {@code android.provider.BaseColumns#_ID} của liên lạc thô làm giá trị
+    {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}. Tuy nhiên, giá trị
+    này không có sẵn khi bạn đang tạo {@link android.content.ContentProviderOperation}
+    cho hàng dữ liệu, vì bạn chưa áp dụng
+    {@link android.content.ContentProviderOperation} cho hàng liên lạc thô. Để khắc phục điều này,
+    lớp {@link android.content.ContentProviderOperation.Builder} có phương pháp
+    {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}.
+    Phương pháp này cho phép bạn chèn hoặc sửa đổi một cột bằng
+    kết quả của một thao tác trước đó.
+</p>
+<p>
+    Phương pháp {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+    có hai tham đối:
+</p>
+    <dl>
+        <dt>
+            <code>key</code>
+        </dt>
+        <dd>
+            Khóa của một cặp khóa-giá trị. Giá trị của tham đối này nên là tên của một cột
+            trong bảng mà bạn đang sửa đổi.
+        </dd>
+        <dt>
+            <code>previousResult</code>
+        </dt>
+        <dd>
+            Chỉ mục dựa trên 0 của một giá trị trong mảng đối tượng
+            {@link android.content.ContentProviderResult} từ
+            {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}. Khi
+            thao tác hàng loạt được áp dụng, kết quả của mỗi thao tác được lưu giữ trong một mảng kết quả
+            trung gian. Giá trị <code>previousResult</code> là chỉ mục
+            của một trong những kết quả này, nó được truy xuất và lưu giữ với giá trị <code>key</code>
+. Điều này cho phép bạn chèn một bản ghi liên lạc thô mới và nhận lại giá trị
+            {@code android.provider.BaseColumns#_ID} của nó, rồi thực hiện một "tham chiếu ngược" về
+            giá trị đó khi bạn thêm một hàng {@link android.provider.ContactsContract.Data}.
+            <p>
+                Toàn bộ mảng kết quả được tạo khi bạn lần đầu gọi
+                {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()},
+                với kích cỡ bằng với kích cỡ của {@link java.util.ArrayList} của các đối tượng
+                {@link android.content.ContentProviderOperation} mà bạn cung cấp. Tuy nhiên, tất cả
+                các phần tử trong mảng kết quả được đặt thành <code>null</code>, và nếu bạn cố gắng
+                thực hiện tham chiếu ngược tới một kết quả cho một thao tác chưa được áp dụng,
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+                sẽ đưa ra một lỗi {@link java.lang.Exception}.
+
+            </p>
+        </dd>
+    </dl>
+<p>
+    Các đoạn mã HTML sau minh họa cách chèn một liên lạc thô mới và dữ liệu hàng loạt. Chúng
+    bao gồm mã thiết lập một điểm kết quả và sử dụng một tham chiếu lại. Đoạn mã HTML là một
+    phiên bản mở rộng của phương pháp <code>createContacEntry()</code>, nó là một phần của lớp
+    <code>ContactAdder</code> trong ứng dụng mẫu
+    <code><a href="{@docRoot}resources/samples/ContactManager/index.html">
+    Contact Manager</a></code>.
+</p>
+<p>
+    Đoạn mã HTML đầu tiên truy xuất dữ liệu liên lạc từ UI. Tại điểm này, người dùng đã
+    chọn tài khoản mà liên lạc thô mới nên được thêm cho tài khoản đó.
+</p>
+<pre>
+// Creates a contact entry from the current UI values, using the currently-selected account.
+protected void createContactEntry() {
+    /*
+     * Gets values from the UI
+     */
+    String name = mContactNameEditText.getText().toString();
+    String phone = mContactPhoneEditText.getText().toString();
+    String email = mContactEmailEditText.getText().toString();
+
+    int phoneType = mContactPhoneTypes.get(
+            mContactPhoneTypeSpinner.getSelectedItemPosition());
+
+    int emailType = mContactEmailTypes.get(
+            mContactEmailTypeSpinner.getSelectedItemPosition());
+</pre>
+<p>
+    Đoạn mã HTML tiếp theo tạo một thao tác để chèn hàng liên lạc thô vào bảng
+    {@link android.provider.ContactsContract.RawContacts}:
+</p>
+<pre>
+    /*
+     * Prepares the batch operation for inserting a new raw contact and its data. Even if
+     * the Contacts Provider does not have any data for this person, you can't add a Contact,
+     * only a raw contact. The Contacts Provider will then add a Contact automatically.
+     */
+
+     // Creates a new array of ContentProviderOperation objects.
+    ArrayList&lt;ContentProviderOperation&gt; ops =
+            new ArrayList&lt;ContentProviderOperation&gt;();
+
+    /*
+     * Creates a new raw contact with its account type (server type) and account name
+     * (user's account). Remember that the display name is not stored in this row, but in a
+     * StructuredName data row. No other data is required.
+     */
+    ContentProviderOperation.Builder op =
+            ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI)
+            .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType())
+            .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    Tiếp theo, mã tạo các hàng dữ liệu cho hàng tên hiển thị, điện thoại và e-mail.
+</p>
+<p>
+    Từng đối tượng bộ dựng thao tác sẽ sử dụng
+    {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+    để nhận
+    {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}. Tham chiếu đó sẽ trỏ
+    ngược về đối tượng {@link android.content.ContentProviderResult} từ thao tác đầu tiên,
+    là thao tác thêm hàng liên lạc thô và trả về giá trị {@code android.provider.BaseColumns#_ID}
+    mới của nó. Kết quả là, mỗi hàng dữ liệu được tự động liên kết bởi
+    {@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}
+    của nó với hàng {@link android.provider.ContactsContract.RawContacts} mới mà nó thuộc về.
+</p>
+<p>
+    Đối tượng {@link android.content.ContentProviderOperation.Builder} thêm hàng e-mail sẽ được
+    gắn cờ bằng {@link android.content.ContentProviderOperation.Builder#withYieldAllowed(boolean)
+    withYieldAllowed()}, mà điều này đặt một điểm kết quả:
+</p>
+<pre>
+    // Creates the display name for the new raw contact, as a StructuredName data row.
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * withValueBackReference sets the value of the first argument to the value of
+             * the ContentProviderResult indexed by the second argument. In this particular
+             * call, the raw contact ID column of the StructuredName data row is set to the
+             * value of the result returned by the first operation, which is the one that
+             * actually adds the raw contact row.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to StructuredName
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
+
+            // Sets the data row's display name to the name in the UI.
+            .withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified phone number and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Phone
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
+
+            // Sets the phone number and type
+            .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, phone)
+            .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, phoneType);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified email and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Email
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE)
+
+            // Sets the email address and type
+            .withValue(ContactsContract.CommonDataKinds.Email.ADDRESS, email)
+            .withValue(ContactsContract.CommonDataKinds.Email.TYPE, emailType);
+
+    /*
+     * Demonstrates a yield point. At the end of this insert, the batch operation's thread
+     * will yield priority to other threads. Use after every set of operations that affect a
+     * single contact, to avoid degrading performance.
+     */
+    op.withYieldAllowed(true);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    Đoạn mã HTML cuối cùng hiển thị lệnh gọi tới
+    {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} mà
+    chèn liên lạc thô mới và các hàng dữ liệu.
+</p>
+<pre>
+    // Ask the Contacts Provider to create a new contact
+    Log.d(TAG,"Selected account: " + mSelectedAccount.getName() + " (" +
+            mSelectedAccount.getType() + ")");
+    Log.d(TAG,"Creating contact: " + name);
+
+    /*
+     * Applies the array of ContentProviderOperation objects in batch. The results are
+     * discarded.
+     */
+    try {
+
+            getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
+    } catch (Exception e) {
+
+            // Display a warning
+            Context ctx = getApplicationContext();
+
+            CharSequence txt = getString(R.string.contactCreationFailure);
+            int duration = Toast.LENGTH_SHORT;
+            Toast toast = Toast.makeText(ctx, txt, duration);
+            toast.show();
+
+            // Log exception
+            Log.e(TAG, "Exception encountered while inserting contact: " + e);
+    }
+}
+</pre>
+<p>
+    Thao tác hàng loạt cũng cho phép bạn triển khai <strong>kiểm soát đồng thời lạc quan</strong>,
+    một phương pháp áp dụng các giao tác sửa đổi mà không phải khóa kho lưu giữ liên quan.
+    Để sử dụng phương pháp này, bạn áp dụng giao tác đó rồi kiểm tra các sửa đổi khác mà
+    có thể đã được thực hiện tại cùng thời điểm. Nếu bạn thấy đã diễn ra một sửa đổi không nhất quán,
+    hãy quay lui giao tác của bạn và thử lại.
+</p>
+<p>
+    Kiểm soát đồng thời lạc quan rất hữu ích đối với thiết bị di động, khi đó mỗi lúc chỉ có một người dùng
+    và việc truy cập đồng thời vào một kho lưu giữ dữ liệu hiếm khi xảy ra. Vì không sử dụng khóa nên
+    không bị lãng phí thời gian cho việc thiết đặt khóa hay chờ các giao tác khác nhả khóa của mình.
+</p>
+<p>
+    Để sử dụng kiểm soát đồng thời lạc quan trong khi đang cập nhật một hàng
+    {@link android.provider.ContactsContract.RawContacts} đơn, hãy làm theo các bước sau:
+</p>
+<ol>
+    <li>
+        Truy xuất cột {@link android.provider.ContactsContract.SyncColumns#VERSION}
+        của liên lạc thô cùng với dữ liệu khác mà bạn truy xuất.
+    </li>
+    <li>
+        Tạo một đối tượng {@link android.content.ContentProviderOperation.Builder} phù hợp để
+        thi hành một ràng buộc, bằng cách sử dụng phương pháp
+        {@link android.content.ContentProviderOperation#newAssertQuery(Uri)}. Đối với URI nội dung,
+        sử dụng {@link android.provider.ContactsContract.RawContacts#CONTENT_URI
+        RawContacts.CONTENT_URI}
+        với {@code android.provider.BaseColumns#_ID} của liên lạc thô được nối với nó.
+    </li>
+    <li>
+        Đối với đối tượng {@link android.content.ContentProviderOperation.Builder}, hãy gọi
+        {@link android.content.ContentProviderOperation.Builder#withValue(String, Object)
+        withValue()} để so sánh cột {@link android.provider.ContactsContract.SyncColumns#VERSION}
+        với số phiên bản bạn vừa truy xuất.
+    </li>
+    <li>
+        Đối với cùng {@link android.content.ContentProviderOperation.Builder}, hãy gọi
+        {@link android.content.ContentProviderOperation.Builder#withExpectedCount(int)
+        withExpectedCount()} để đảm bảo rằng chỉ một hàng được kiểm tra bằng xác nhận này.
+    </li>
+    <li>
+        Gọi {@link android.content.ContentProviderOperation.Builder#build()} để tạo đối tượng
+        {@link android.content.ContentProviderOperation}, rồi thêm đối tượng này làm
+        đối tượng đầu tiên trong {@link java.util.ArrayList} mà bạn chuyển cho
+        {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}.
+    </li>
+    <li>
+        Áp dụng giao tác hàng loạt.
+    </li>
+</ol>
+<p>
+    Nếu hàng liên lạc thô được cập nhật bởi một thao tác khác giữa thời điểm bạn đọc hàng và
+    thời điểm bạn cố gắng sửa đổi nó, "xác nhận" {@link android.content.ContentProviderOperation}
+    sẽ thất bại, và toàn bộ loạt thao tác sẽ được rút khỏi. Sau đó, bạn có thể chọn thử lại
+    loạt hoặc thực hiện một hành động khác.
+</p>
+<p>
+    Đoạn mã HTML sau minh họa cách tạo một "xác nhận"
+    {@link android.content.ContentProviderOperation} sau khi truy vấn một liên lạc thô đơn bằng cách sử dụng
+    một {@link android.content.CursorLoader}:
+</p>
+<pre>
+/*
+ * The application uses CursorLoader to query the raw contacts table. The system calls this method
+ * when the load is finished.
+ */
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor cursor) {
+
+    // Gets the raw contact's _ID and VERSION values
+    mRawContactID = cursor.getLong(cursor.getColumnIndex(BaseColumns._ID));
+    mVersion = cursor.getInt(cursor.getColumnIndex(SyncColumns.VERSION));
+}
+
+...
+
+// Sets up a Uri for the assert operation
+Uri rawContactUri = ContentUris.withAppendedId(RawContacts.CONTENT_URI, mRawContactID);
+
+// Creates a builder for the assert operation
+ContentProviderOperation.Builder assertOp = ContentProviderOperation.netAssertQuery(rawContactUri);
+
+// Adds the assertions to the assert operation: checks the version and count of rows tested
+assertOp.withValue(SyncColumns.VERSION, mVersion);
+assertOp.withExpectedCount(1);
+
+// Creates an ArrayList to hold the ContentProviderOperation objects
+ArrayList ops = new ArrayList&lt;ContentProviderOperationg&gt;;
+
+ops.add(assertOp.build());
+
+// You would add the rest of your batch operations to "ops" here
+
+...
+
+// Applies the batch. If the assert fails, an Exception is thrown
+try
+    {
+        ContentProviderResult[] results =
+                getContentResolver().applyBatch(AUTHORITY, ops);
+
+    } catch (OperationApplicationException e) {
+
+        // Actions you want to take if the assert operation fails go here
+    }
+</pre>
+<h3 id="Intents">Truy xuất và sửa đổi bằng ý định</h3>
+<p>
+    Việc gửi một ý định tới ứng dụng danh bạ của thiết bị cho phép bạn truy cập Trình cung cấp Danh bạ
+    một cách gián tiếp. Ý định sẽ khởi động UI ứng dụng danh bạ của thiết bị, trong đó người dùng có thể
+    thực hiện công việc liên quan tới danh bạ. Với kiểu truy cập này, người dùng có thể:
+    <ul>
+        <li>Chọn một liên lạc từ danh sách và trả nó về ứng dụng của bạn để làm việc tiếp.</li>
+        <li>Chỉnh sửa dữ liệu của một liên lạc hiện có.</li>
+        <li>Chèn một liên lạc thô mới cho bất kỳ tài khoản nào của họ.</li>
+        <li>Xóa một liên lạc hoặc dữ liệu danh bạ.</li>
+    </ul>
+<p>
+    Nếu người dùng đang chèn hoặc cập nhật dữ liệu, bạn có thể thu thập dữ liệu trước và gửi nó như
+    một phần của ý định.
+</p>
+<p>
+    Khi bạn sử dụng ý định để truy cập Trình cung cấp Danh bạ thông qua ứng dụng danh bạ của thiết bị, bạn
+    không phải ghi UI hay mã của chính mình để truy nhập trình cung cấp. Bạn cũng không phải
+    yêu cầu quyền đọc hoặc ghi đến trình cung cấp. Ứng dụng danh bạ của thiết bị có thể
+    cấp quyền đọc đối với một liên lạc cho bạn, và vì bạn đang thực hiện sửa đổi đối với
+    trình cung cấp thông qua một ứng dụng khác, bạn không cần phải có quyền ghi.
+</p>
+<p>
+    Tiến trình chung để gửi một ý định nhằm truy cập một trình cung cấp được mô tả chi tiết trong hướng dẫn
+    <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+    Nội dung Cơ bản về Trình cung cấp Nội dung</a> trong phần "Truy cập dữ liệu thông qua ý định." Hành động,
+    kiểu MIME, và các giá trị dữ liệu bạn sử dụng cho các tác vụ có sẵn được tóm tắt trong Bảng 4, trong khi các giá trị
+    phụ thêm mà bạn có thể sử dụng với
+    {@link android.content.Intent#putExtra(String, String) putExtra()} được liệt kê trong
+    tài liệu tham khảo cho {@link android.provider.ContactsContract.Intents.Insert}:
+</p>
+<p class="table-caption" id="table4">
+  <strong>Bảng 4.</strong> Ý định của Trình cung cấp Danh bạ.
+</p>
+<table style="width:75%">
+    <tr>
+        <th scope="col" style="width:10%">Tác vụ</th>
+        <th scope="col" style="width:5%">Hành động</th>
+        <th scope="col" style="width:10%">Dữ liệu</th>
+        <th scope="col" style="width:10%">Kiểu MIME</th>
+        <th scope="col" style="width:25%">Lưu ý</th>
+    </tr>
+    <tr>
+        <td><strong>Chọn một liên lạc từ danh sách</strong></td>
+        <td>{@link android.content.Intent#ACTION_PICK}</td>
+        <td>
+            Một trong:
+            <ul>
+                <li>
+{@link android.provider.ContactsContract.Contacts#CONTENT_URI Contacts.CONTENT_URI},
+                    mà hiển thị một danh sách các liên lạc.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Phone#CONTENT_URI Phone.CONTENT_URI},
+                    mà hiển thị một danh sách các số điện thoại cho một liên lạc thô.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal#CONTENT_URI
+StructuredPostal.CONTENT_URI},
+                    mà hiển thị một danh sách các địa chỉ bưu điện cho một liên lạc thô.
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_URI Email.CONTENT_URI},
+                    mà hiển thị một danh sách các địa chỉ e-mail cho một liên lạc thô.
+                </li>
+            </ul>
+        </td>
+        <td>
+            Không sử dụng
+        </td>
+        <td>
+            Hiển thị một danh sách các liên lạc thô hoặc danh sách dữ liệu từ một liên lạc thô, tùy vào kiểu
+            URI nội dung mà bạn cung cấp.
+            <p>
+                Gọi
+         {@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()},
+                nó trả về URI nội dung của hàng được chọn. Hình thức của URI là URI nội dung
+                của bảng với <code>LOOKUP_ID</code> của hàng được nối với nó.
+                Ứng dụng danh bạ của thiết bị cấp quyền đọc và ghi cho URI nội dung này
+                trong suốt thời gian hoạt động của bạn. Xem hướng dẫn
+                <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+                Nội dung Cơ bản về Trình cung cấp Nội dung</a> để biết thêm chi tiết.
+            </p>
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Chèn một liên lạc thô mới</strong></td>
+        <td>{@link android.provider.ContactsContract.Intents.Insert#ACTION Insert.ACTION}</td>
+        <td>Không áp dụng</td>
+        <td>
+            {@link android.provider.ContactsContract.RawContacts#CONTENT_TYPE
+            RawContacts.CONTENT_TYPE}, kiểu MIME cho một tập hợp liên các lạc thô.
+        </td>
+        <td>
+            Hiển thị màn hình <strong>Thêm Liên lạc</strong> của ứng dụng danh bạ của thiết bị. Các
+            giá trị phụ thêm mà bạn thêm vào ý định sẽ được hiển thị. Nếu được gửi bằng
+        {@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()},
+            URI nội dung của liên lạc thô mới thêm sẽ được chuyển lại cho phương pháp gọi lại
+            {@link android.app.Activity#onActivityResult(int, int, Intent) onActivityResult()}
+            của hoạt động của bạn trong tham đối {@link android.content.Intent}, trong
+            trường "dữ liệu". Để nhận giá trị, hãy gọi {@link android.content.Intent#getData()}.
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Chỉnh sửa một liên lạc</strong></td>
+        <td>{@link android.content.Intent#ACTION_EDIT}</td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI} đối với
+            liên lạc. Hoạt động của trình chỉnh sửa sẽ cho phép người dùng chỉnh sửa bất kỳ dữ liệu nào được liên kết
+            với liên lạc này.
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE
+            Contacts.CONTENT_ITEM_TYPE}, một liên lạc đơn.</td>
+        <td>
+            Hiển thị màn hình Chỉnh sửa Liên lạc trong ứng dụng danh bạ. Các giá trị phụ thêm mà bạn thêm
+            vào ý định sẽ được hiển thị. Khi người dùng nhấp vào <strong>Xong</strong> để lưu các
+            chỉnh sửa, hoạt động của bạn quay lại tiền cảnh.
+        </td>
+    </tr>
+    <tr>
+        <td><strong>Hiển thị một trình chọn mà cũng có thể thêm dữ liệu.</strong></td>
+        <td>{@link android.content.Intent#ACTION_INSERT_OR_EDIT}</td>
+        <td>
+            Không áp dụng
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE}
+        </td>
+         <td>
+            Ý định này luôn hiển thị màn hình bộ chọn của ứng dụng danh bạ. Người dùng có thể hoặc
+            chọn một liên lạc để chỉnh sửa, hoặc thêm một liên lạc mới. Hoặc màn hình chỉnh sửa hoặc màn hình thêm
+            sẽ xuất hiện, tùy vào lựa chọn của người dùng, và dữ liệu phụ thêm mà bạn chuyển trong ý định
+           sẽ được hiển thị. Nếu ứng dụng của bạn hiển thị dữ liệu chẳng hạn như e-mail hoặc số điện thoại, hãy sử dụng
+            ý định này để cho phép người dùng thêm dữ liệu vào một liên lạc hiện tại.
+            liên lạc,
+            <p class="note">
+                <strong>Lưu ý:</strong> Không cần gửi một giá trị tên trong phần phụ thêm của ý định,
+                vì người dùng luôn chọn một tên hiện có hoặc thêm một tên mới. Thêm nữa,
+                nếu bạn gửi một tên, và người dùng chọn thực hiện chỉnh sửa, ứng dụng danh bạ sẽ
+                hiển thị tên mà bạn gửi, ghi đè giá trị trước. Nếu người dùng không
+                để ý thấy điều này và lưu chỉnh sửa, giá trị cũ sẽ bị mất.
+            </p>
+         </td>
+    </tr>
+</table>
+<p>
+    Ứng dụng danh bạ của thiết bị không cho phép bạn xóa một liên lạc thô hay bất kỳ dữ liệu nào bằng một
+    ý định. Thay vào đó, để xóa một liên lạc thô, hãy sử dụng
+    {@link android.content.ContentResolver#delete(Uri, String, String[]) ContentResolver.delete()}
+    hoặc {@link android.content.ContentProviderOperation#newDelete(Uri)
+    ContentProviderOperation.newDelete()}.
+</p>
+<p>
+    Đoạn mã HTML sau minh họa cách xây dựng và gửi một ý định để chèn một liên lạc thô mới và
+    dữ liệu:
+</p>
+<pre>
+// Gets values from the UI
+String name = mContactNameEditText.getText().toString();
+String phone = mContactPhoneEditText.getText().toString();
+String email = mContactEmailEditText.getText().toString();
+
+String company = mCompanyName.getText().toString();
+String jobtitle = mJobTitle.getText().toString();
+
+// Creates a new intent for sending to the device's contacts application
+Intent insertIntent = new Intent(ContactsContract.Intents.Insert.ACTION);
+
+// Sets the MIME type to the one expected by the insertion activity
+insertIntent.setType(ContactsContract.RawContacts.CONTENT_TYPE);
+
+// Sets the new contact name
+insertIntent.putExtra(ContactsContract.Intents.Insert.NAME, name);
+
+// Sets the new company and job title
+insertIntent.putExtra(ContactsContract.Intents.Insert.COMPANY, company);
+insertIntent.putExtra(ContactsContract.Intents.Insert.JOB_TITLE, jobtitle);
+
+/*
+ * Demonstrates adding data rows as an array list associated with the DATA key
+ */
+
+// Defines an array list to contain the ContentValues objects for each row
+ArrayList&lt;ContentValues&gt; contactData = new ArrayList&lt;ContentValues&gt;();
+
+
+/*
+ * Defines the raw contact row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues rawContactRow = new ContentValues();
+
+// Adds the account type and name to the row
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType());
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+// Adds the row to the array
+contactData.add(rawContactRow);
+
+/*
+ * Sets up the phone number data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues phoneRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+phoneRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
+);
+
+// Adds the phone number and its type to the row
+phoneRow.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phone);
+
+// Adds the row to the array
+contactData.add(phoneRow);
+
+/*
+ * Sets up the email data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues emailRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+emailRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE
+);
+
+// Adds the email address and its type to the row
+emailRow.put(ContactsContract.CommonDataKinds.Email.ADDRESS, email);
+
+// Adds the row to the array
+contactData.add(emailRow);
+
+/*
+ * Adds the array to the intent's extras. It must be a parcelable object in order to
+ * travel between processes. The device's contacts app expects its key to be
+ * Intents.Insert.DATA
+ */
+insertIntent.putParcelableArrayListExtra(ContactsContract.Intents.Insert.DATA, contactData);
+
+// Send out the intent to start the device's contacts app in its add contact activity.
+startActivity(insertIntent);
+</pre>
+<h3 id="DataIntegrity">Toàn vẹn dữ liệu</h3>
+<p>
+    Vì kho lưu giữ danh bạ chứa dữ liệu quan trọng và nhạy cảm mà người dùng cho là
+    đúng và cập nhật, Trình cung cấp Danh bạ có các quy tắc về toàn vẹn dữ liệu được định nghĩa rõ ràng. Bạn có
+    trách nhiệm tuân theo những quy tắc này khi sửa đổi dữ liệu danh bạ. Các quy tắc
+    quan trọng được liệt kê ở đây:
+</p>
+<dl>
+    <dt>
+        Luôn thêm một hàng {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} cho
+        mỗi hàng {@link android.provider.ContactsContract.RawContacts} mà bạn thêm.
+    </dt>
+    <dd>
+        Hàng {@link android.provider.ContactsContract.RawContacts} không có một hàng
+        {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} trong bảng
+        {@link android.provider.ContactsContract.Data} có thể gây ra sự cố trong khi
+        tổng hợp.
+    </dd>
+    <dt>
+        Luôn liên kết các hàng {@link android.provider.ContactsContract.Data} mới với hàng
+        {@link android.provider.ContactsContract.RawContacts} mẹ của chúng.
+    </dt>
+    <dd>
+        Mỗi hàng {@link android.provider.ContactsContract.Data} mà không được liên kết với một
+        {@link android.provider.ContactsContract.RawContacts} sẽ không hiển thị trong ứng dụng danh bạ
+         của thiết bị, và nó có thể gây ra sự cố với trình điều hợp đồng bộ.
+    </dd>
+    <dt>
+        Chỉ thay đổi dữ liệu đối với những liên lạc thô mà bạn sở hữu.
+    </dt>
+    <dd>
+        Nhớ rằng Trình cung cấp Danh bạ luôn quản lý dữ liệu từ vài
+        loại tài khoản/dịch vụ trực tuyến khác nhau. Bạn cần đảm bảo rằng ứng dụng của bạn chỉ sửa đổi
+        hoặc xóa dữ liệu đối với các hàng thuộc về bạn, và rằng nó chỉ chèn dữ liệu có
+        loại và tên tài khoản mà bạn kiểm soát.
+    </dd>
+    <dt>
+        Luôn sử dụng các hằng số được định nghĩa trong {@link android.provider.ContactsContract} và các lớp con của nó
+        đối với thẩm quyền, URI nội dung, đường dẫn URI, tên cột, kiểu MIME, và các giá trị
+        {@link android.provider.ContactsContract.CommonDataKinds.CommonColumns#TYPE}.
+    </dt>
+    <dd>
+        Sử dụng những hằng số này sẽ giúp bạn tránh gặp lỗi. Bạn cũng sẽ được thông báo bằng cảnh báo
+        từ trình biên dịch nếu bất kỳ hằng số nào không được chấp nhận.
+    </dd>
+</dl>
+<h3 id="CustomData">Hàng dữ liệu tùy chỉnh</h3>
+<p>
+    Bằng cách tạo và sử dụng các kiểu MIME tùy chỉnh của chính mình, bạn có thể chèn, chỉnh sửa, xóa và truy xuất
+    các hàng dữ liệu của chính mình trong bảng {@link android.provider.ContactsContract.Data}. Các hàng của bạn
+    bị giới hạn bằng cách sử dụng cột được định nghĩa trong
+    {@link android.provider.ContactsContract.DataColumns}, mặc dù bạn có thể ánh xạ
+    tên cột theo kiểu của chính mình với tên cột mặc định. Trong ứng dụng danh bạ của thiết bị,
+    dữ liệu cho các hàng của bạn được hiển thị nhưng không thể chỉnh sửa hay xóa được, và người dùng không thể thêm
+    dữ liệu bổ sung. Để cho phép người dùng sửa đổi các hàng dữ liệu tùy chỉnh của mình, bạn phải cung cấp một hoạt động
+    trình chỉnh sửa trong ứng dụng của chính mình.
+</p>
+<p>
+    Để hiển thị dữ liệu tùy chỉnh của mình, hãy cung cấp một tệp <code>contacts.xml</code> chứa một phần tử
+    <code>&lt;ContactsAccountType&gt;</code> và một hoặc nhiều phần tử con
+    <code>&lt;ContactsDataKind&gt;</code> của nó. Điều này được mô tả chi tiết hơn trong
+    phần <a href="#SocialStreamDataKind"><code>&lt;ContactsDataKind&gt; element</code></a>.
+</p>
+<p>
+    Để tìm hiểu thêm về các kiểu MIME tùy chỉnh, hãy đọc hướng dẫn
+    <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+    Tạo một Trình cung cấp Nội dung</a>.
+</p>
+<h2 id="SyncAdapters">Trình điều hợp Đồng bộ Trình cung cấp Danh bạ</h2>
+<p>
+    Trình cung cấp Danh bạ được thiết kế riêng để xử lý <strong>đồng bộ hoá</strong>
+    dữ liệu danh bạ giữa một thiết bị và một dịch vụ trực tuyến. Điều này cho phép người dùng tải
+    dữ liệu hiện có xuống một thiết bị mới và tải dữ liệu hiện có lên một tài khoản mới.
+    Đồng bộ hoá cũng đảm bảo rằng người dùng có sẵn dữ liệu mới nhất, không phụ thuộc vào
+    nguồn của các bổ sung và thay đổi. Một ưu điểm khác của đồng bộ hoá đó là nó khiến
+    dữ liệu danh bạ có sẵn ngay cả khi thiết bị không được kết nối với mạng.
+</p>
+<p>
+    Mặc dù bạn có thể triển khai đồng bộ hoá theo nhiều cách, hệ thống Android cung cấp
+    một khuôn khổ đồng bộ hóa bổ trợ có khả năng tự động hóa những tác vụ sau:
+    <ul>
+
+    <li>
+        Kiểm tra sự sẵn sàng của mạng.
+    </li>
+    <li>
+        Lập lịch biểu và thực hiện đồng bộ hoá dựa trên tùy chọn của người dùng.
+    </li>
+    <li>
+        Khởi động lại những đồng bộ hoá đã dừng.
+    </li>
+    </ul>
+<p>
+    Để sử dụng khuôn khổ này, bạn phải cung cấp một phần bổ trợ trình điều hợp đồng bộ. Mỗi trình điều hợp đồng bộ là duy nhất đối với
+    một dịch vụ và trình cung cấp nội dung, nhưng có thể xử lý nhiều tên tài khoản cho cùng dịch vụ. Khuôn khổ
+    cũng cho phép nhiều trình điều hợp đồng bộ cho cùng dịch vụ và trình cung cấp.
+</p>
+<h3 id="SyncClassesFiles">Các lớp và tệp trình điều hợp đồng bộ</h3>
+<p>
+    Bạn triển khai một trình điều hợp đồng bộ làm lớp con của
+    {@link android.content.AbstractThreadedSyncAdapter} và cài đặt nó như một phần của một ứng dụng
+    Android. Hệ thống biết về trình điều hợp đồng bộ từ các phần tử trong bản kê khai ứng dụng
+    của nó, và từ một tệp XML đặc biệt được chỉ đến trong bản kê khai. Tệp XML sẽ định nghĩa
+    loại tài khoản cho dịch vụ trực tuyến và thẩm quyền cho trình cung cấp nội dung, cùng nhau chúng
+   xác định duy nhất một trình điều hợp. Trình điều hợp đồng bộ không được kích hoạt cho tới khi người dùng thêm một
+    tài khoản cho loại tài khoản của trình điều hợp đồng bộ và kích hoạt đồng bộ hoá cho trình cung cấp
+    nội dung mà trình điều hợp đồng bộ sẽ đồng bộ cùng.  Tại thời điểm đó, hệ thống bắt đầu quản lý trình điều hợp,
+    gọi nó nếu cần thiết để đồng bộ hoá giữa trình cung cấp nội dung và máy chủ.
+</p>
+<p class="note">
+    <strong>Lưu ý:</strong> Việc sử dụng một loại tài khoản để tham gia nhận biết trình điều hợp đồng bộ sẽ cho phép
+    hệ thống phát hiện và nhóm cùng nhau những trình điều hợp đồng bộ truy cập các dịch vụ khác nhau từ
+    cùng tổ chức. Ví dụ, các trình điều hợp đồng bộ cho dịch vụ trực tuyến của Google đều có cùng
+    loại tài khoản <code>com.google</code>. Khi người dùng thêm một tài khoản Google vào thiết bị của mình, tất cả
+    trình điều hợp đồng bộ được cài đặt cho dịch vụ Google được liệt kê cùng nhau; mỗi trình điều hợp đồng bộ
+    được liệt kê sẽ đồng bộ với một trình cung cấp nội dung khác nhau trên thiết bị.
+</p>
+<p>
+    Vì hầu hết dịch vụ đều yêu cầu người dùng xác minh danh tính của họ trước khi truy cập
+    dữ liệu, hệ thống Android cung cấp một khuôn khổ xác thực tương tự như và thường
+    được sử dụng cùng với khuôn khổ của trình điều hợp đồng bộ. Khuôn khổ xác thực sử dụng
+    các trình xác thực bổ trợ là lớp con của
+    {@link android.accounts.AbstractAccountAuthenticator}. Một trình xác thực sẽ xác minh
+    danh tính của người dùng theo các bước sau:
+    <ol>
+        <li>
+            Thu thập tên, mật khẩu hoặc thông tin tương tự của người dùng (
+<strong>thông tin xác thực</strong> của người dùng).
+        </li>
+        <li>
+            Gửi thông tin xác thực tới dịch vụ
+        </li>
+        <li>
+            Kiểm tra trả lời của dịch vụ.
+        </li>
+    </ol>
+<p>
+    Nếu dịch vụ chấp nhận thông tin xác thực, trình xác thực có thể
+    lưu giữ thông tin xác thực đó để sử dụng sau. Vì khuôn khổ trình xác thực bổ trợ,
+    {@link android.accounts.AccountManager} có thể cung cấp quyền truy cập bất kỳ token xác thực nào mà một trình xác thực 
+    hỗ trợ và chọn hiện ra, chẳng hạn như token xác thực OAuth2.
+</p>
+<p>
+    Mặc dù không yêu cầu xác thực, phần lớn dịch vụ danh bạ đều sử dụng nó.
+    Tuy nhiên, bạn không phải sử dụng khuôn khổ xác thực của Android để thực hiện xác thực.
+</p>
+<h3 id="SyncAdapterImplementing">Triển khai trình điều hợp đồng bộ</h3>
+<p>
+    Để triển khai một trình điều hợp đồng bộ cho Trình cung cấp Danh bạ, bạn bắt đầu bằng cách tạo một
+    ứng dụng Android chứa:
+</p>
+    <dl>
+        <dt>
+            Một thành phần {@link android.app.Service} để hồi đáp lại các yêu cầu từ hệ thống nhằm
+            gắn kết với trình điều hợp đồng bộ.
+        </dt>
+        <dd>
+            Khi hệ thống muốn chạy đồng bộ hoá, nó gọi phương pháp
+            {@link android.app.Service#onBind(Intent) onBind()} của dịch vụ và nhận một
+            {@link android.os.IBinder} cho trình điều hợp đồng bộ. Điều này cho phép hệ thống thực hiện
+            lệnh gọi liên tiến trình tới các phương pháp của trình điều hợp.
+            <p>
+                Trong ứng dụng mẫu<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+                Trình điều hợp Đồng bộ Mẫu</a>, tên lớp của dịch vụ này là
+                <code>com.example.android.samplesync.syncadapter.SyncService</code>.
+            </p>
+        </dd>
+        <dt>
+            Trình điều hợp đồng bộ thực tế, được triển khai như một lớp con cụ thể của
+            {@link android.content.AbstractThreadedSyncAdapter}.
+        </dt>
+        <dd>
+            Lớp này thực hiện công việc tải xuống dữ liệu từ máy chủ, tải lên dữ liệu từ
+            thiết bị, và xử lý xung đột. Công việc chính của trình điều hợp được
+            thực hiện trong phương pháp {@link android.content.AbstractThreadedSyncAdapter#onPerformSync(
+            Account, Bundle, String, ContentProviderClient, SyncResult)
+            onPerformSync()}. Lớp này phải được khởi tạo như một đối tượng duy nhất (singleton).
+            <p>
+                Trong ứng dụng mẫu <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+                Trình điều hợp Đồng bộ Mẫu</a>, trình điều hợp đồng bộ được định nghĩa trong lớp
+                <code>com.example.android.samplesync.syncadapter.SyncAdapter</code>.
+            </p>
+        </dd>
+        <dt>
+            Một lớp con của {@link android.app.Application}.
+        </dt>
+        <dd>
+            Lớp này đóng vai trò như một nhà máy cho đối tượng duy nhất của trình điều hợp đồng bộ. Sử dụng phương pháp
+            {@link android.app.Application#onCreate()} để khởi tạo trình điều hợp đồng bộ, và
+            cung cấp một phương pháp "bộ nhận" tĩnh để trả đối tượng duy nhất về phương pháp
+            {@link android.app.Service#onBind(Intent) onBind()} của dịch vụ
+            của trình điều hợp đồng bộ.
+        </dd>
+        <dt>
+            <strong>Tùy chọn:</strong> Một thành phần {@link android.app.Service} để hồi đáp lại
+            các yêu cầu từ hệ thống về xác thực người dùng.
+        </dt>
+        <dd>
+            {@link android.accounts.AccountManager} khởi động dịch vụ này để bắt đầu tiến trình
+            xác thực. Phương pháp {@link android.app.Service#onCreate()} của dịch vụ này sẽ khởi tạo một
+            đối tượng trình xác thực. Khi hệ thống muốn xác thực một tài khoản người dùng cho trình điều hợp đồng bộ
+            của ứng dụng, nó sẽ gọi phương pháp
+            {@link android.app.Service#onBind(Intent) onBind()} của dịch vụ để nhận một
+            {@link android.os.IBinder} cho trình xác thực. Điều này cho phép hệ thống thực hiện
+            lệnh gọi liên tiến trình tới các phương pháp của trình xác thực.
+            <p>
+                Trong ứng dụng mẫu<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+                Trình điều hợp Đồng bộ Mẫu</a>, tên lớp của dịch vụ này là
+                <code>com.example.android.samplesync.authenticator.AuthenticationService</code>.
+            </p>
+        </dd>
+        <dt>
+            <strong>Tùy chọn:</strong> Một lớp con cụ thể của
+            {@link android.accounts.AbstractAccountAuthenticator} để xử lý các yêu cầu về
+            xác thực.
+        </dt>
+        <dd>
+            Lớp này cung cấp các phương pháp mà {@link android.accounts.AccountManager} gọi ra
+            để xác thực các thông tin xác thực của người dùng với máy chủ. Các chi tiết của
+            tiến trình xác thực rất khác nhau dựa trên công nghệ máy chủ đang sử dụng. Bạn nên
+            tham khảo tài liệu cho phần mềm máy chủ của mình để tìm hiểu thêm về xác thực.
+            <p>
+                Trong ứng dụng mẫu <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+                Trình điều hợp Đồng bộ Mẫu</a>, trình xác thực được định nghĩa trong lớp
+                <code>com.example.android.samplesync.authenticator.Authenticator</code>.
+            </p>
+        </dd>
+        <dt>
+            Các tệp XML để định nghĩa trình điều hợp đồng bộ và trình xác thực cho hệ thống.
+        </dt>
+        <dd>
+            Các thành phần dịch vụ trình điều hợp đồng bộ và trình xác thực đã nêu được
+            định nghĩa trong các phần tử
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/service-element.html">service</a>&gt;</code>
+            ở bản kê khai của ứng dụng. Những phần tử này
+            chứa các phần tử con
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+mà cung cấp dữ liệu cụ thể cho
+            hệ thống:
+            <ul>
+                <li>
+                    Phần tử
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+                    cho dịch vụ trình điều hợp đồng bộ sẽ trỏ về
+                    tệp XML <code>res/xml/syncadapter.xml</code>. Đến lượt mình, tệp này quy định
+                    một URI cho dịch vụ web mà sẽ được đồng bộ hóa với Trình cung cấp Danh bạ,
+                    và một loại tài khoản cho dịch vụ web.
+                </li>
+                <li>
+                    <strong>Tùy chọn:</strong> Phần tử
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+                    cho trình xác thực sẽ trỏ về tệp XML
+                    <code>res/xml/authenticator.xml</code>. Đến lượt mình, tệp này quy định
+                    loại tài khoản mà trình xác thực này hỗ trợ, cũng như các tài nguyên UI mà
+                    xuất hiện trong tiến trình xác thực. Loại tài khoản được quy định trong phần tử
+                    này phải giống như loại tài khoản được quy định cho trình điều hợp
+                    đồng bộ.
+                </li>
+            </ul>
+        </dd>
+    </dl>
+<h2 id="SocialStream">Dữ liệu từ Luồng Xã hội</h2>
+<p>
+    Các bảng {@code android.provider.ContactsContract.StreamItems} và 
+    {@code android.provider.ContactsContract.StreamItemPhotos} quản lý
+    dữ liệu đến từ các mạng xã hội. Bạn có thể ghi một trình điều hợp đồng bộ mà thêm dữ liệu luồng từ
+    mạng của chính mình vào những bảng này, hoặc bạn có thể đọc dữ liệu luồng từ những bảng này và
+    hiển thị nó trong ứng dụng của chính mình, hoặc cả hai. Với những tính năng này, các dịch vụ và ứng dụng
+    mạng xã hội của bạn có thể được tích hợp vào trải nghiệm mạng xã hội của Android.
+</p>
+<h3 id="StreamText">Văn bản từ luồng xã hội</h3>
+<p>
+    Các mục dòng dữ liệu luôn được liên kết với một liên lạc thô. 
+    {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID} liên kết với giá trị
+    <code>_ID</code> của liên lạc thô mới. Loại tài khoản và tên tài khoản của liên lạc thô
+    cũng được lưu giữ trong hàng mục dòng.
+</p>
+<p>
+    Lưu giữ dữ liệu từ luồng của bạn vào những cột sau:
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_TYPE}
+    </dt>
+    <dd>
+        <strong>Bắt buộc.</strong> Loại tài khoản của người dùng đối với liên lạc thô được liên kết với mục dòng
+        này. Nhớ đặt giá trị này khi bạn chèn một mục dòng.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_NAME}
+    </dt>
+    <dd>
+        <strong>Bắt buộc.</strong> Tên tài khoản của người dùng đối với liên lạc thô được liên kết với mục dòng
+        này. Nhớ đặt giá trị này khi bạn chèn một mục dòng.
+    </dd>
+    <dt>
+        Cột mã định danh
+    </dt>
+    <dd>
+        <strong>Bắt buộc.</strong> Bạn phải chèn các cột mã định danh sau khi chèn
+        một mục dòng:
+        <ul>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_ID}: Giá trị
+                {@code android.provider.BaseColumns#_ID} của liên lạc mà mục dòng
+                này được liên kết với.
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_LOOKUP_KEY}: Giá trị
+                {@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} của liên lạc
+                mà mục dòng này được liên kết với.
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID}: Giá trị
+                {@code android.provider.BaseColumns#_ID} của liên lạc thô mà mục dòng này
+                được liên kết với.
+            </li>
+        </ul>
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#COMMENTS}
+    </dt>
+    <dd>
+        Tùy chọn. Lưu giữ thông tin tóm tắt mà bạn có thể hiển thị ở phần đầu của một mục dòng.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TEXT}
+    </dt>
+    <dd>
+        Văn bản của mục dòng, hoặc là nội dung đã được đăng bởi nguồn của mục đó,
+        hoặc là mô tả về một số hành động đã khởi tạo mục dòng. Cột này có thể chứa
+        bất kỳ hình ảnh tài nguyên định dạng và được nhúng nào mà có thể được kết xuất bởi
+        {@link android.text.Html#fromHtml(String) fromHtml()}. Trình cung cấp có thể cắt bớt hoặc
+        cắt ngắn bằng dấu ba chấm các nội dung dài, nhưng sẽ cố gắng tránh làm hỏng các tag.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}
+    </dt>
+    <dd>
+        Xâu văn bản chứa thời gian mà mục dòng được chèn hoặc cập nhật, có
+        dạng <em>mili giây</em> trôi qua kể từ giờ epoch. Những ứng dụng chèn hoặc cập nhật mục dòng sẽ chịu
+        trách nhiệm  duy trì cột này; nó không được tự động duy trì bởi
+        Trình cung cấp Danh bạ.
+    </dd>
+</dl>
+<p>
+    Để hiển thị thông tin nhận dạng cho các mục dòng của bạn, hãy sử dụng
+    {@code android.provider.ContactsContract.StreamItemsColumns#RES_ICON},
+    {@code android.provider.ContactsContract.StreamItemsColumns#RES_LABEL}, và
+    {@code android.provider.ContactsContract.StreamItemsColumns#RES_PACKAGE} để liên kết với các tài nguyên
+    trong ứng dụng của mình.
+</p>
+<p>
+    Bảng {@code android.provider.ContactsContract.StreamItems} chứa các cột
+    {@code android.provider.ContactsContract.StreamItemsColumns#SYNC1} thông qua
+    {@code android.provider.ContactsContract.StreamItemsColumns#SYNC4} dành riêng để sử dụng
+    trình điều hợp đồng bộ.
+</p>
+<h3 id="StreamPhotos">Ảnh từ luồng xã hội</h3>
+<p>
+   Bảng {@code android.provider.ContactsContract.StreamItemPhotos} lưu giữ ảnh được liên kết
+   với một mục dòng. Cột
+   {@code android.provider.ContactsContract.StreamItemPhotosColumns#STREAM_ITEM_ID} của bảng
+   liên kết với các giá trị trong {@code android.provider.BaseColumns#_ID} của bảng
+   {@code android.provider.ContactsContract.StreamItems}. Các tham chiếu ảnh được lưu giữ trong
+   bảng ở những cột này:
+</p>
+<dl>
+    <dt>
+        Cột {@code android.provider.ContactsContract.StreamItemPhotos#PHOTO} (một BLOB).
+    </dt>
+    <dd>
+        Biểu diễn dạng nhị phân của ảnh, được trình cung cấp đổi kích cỡ để lưu giữ và hiển thị.
+        Cột này có sẵn để tương thích ngược với các phiên bản trước của Trình cung cấp
+        Danh bạ mà đã sử dụng nó để lưu giữ ảnh. Tuy nhiên, trong phiên bản hiện tại
+        bạn không nên sử dụng cột này để lưu giữ ảnh. Thay vào đó, hãy sử dụng
+        hoặc {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID} hoặc 
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI} (cả hai
+        đều được mô tả trong các điểm sau) để lưu giữ ảnh trong một tệp. Lúc này, cột này
+        chứa một hình thu nhỏ của ảnh sẵn sàng để đọc.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID}
+    </dt>
+    <dd>
+        Một mã định danh dạng số của ảnh cho một liên lạc thô. Nối giá trị này với hằng số
+        {@link android.provider.ContactsContract.DisplayPhoto#CONTENT_URI DisplayPhoto.CONTENT_URI}
+        để nhận một URI nội dung trỏ về một tệp ảnh đơn, rồi gọi
+        {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+        openAssetFileDescriptor()} để nhận một điều khiển (handle) cho tệp ảnh.
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}
+    </dt>
+    <dd>
+        Một URI nội dung trỏ trực tiếp tới tệp ảnh cho ảnh được đại diện bởi hàng này.
+        Gọi {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+        openAssetFileDescriptor()} bằng URI này để nhận một điều khiển (handle) cho tệp ảnh.
+    </dd>
+</dl>
+<h3 id="SocialStreamTables">Sử dụng các bảng luồng xã hội</h3>
+<p>
+    Những bảng này hoạt động giống như các bảng chính khác trong Trình cung cấp Danh bạ, ngoại trừ:
+</p>
+    <ul>
+        <li>
+            Những bảng này yêu cầu quyền truy cập bổ sung. Để đọc từ chúng, ứng dụng của bạn
+            phải có quyền {@code android.Manifest.permission#READ_SOCIAL_STREAM}. Để
+            sửa đổi chúng, ứng dụng của bạn phải có quyền
+            {@code android.Manifest.permission#WRITE_SOCIAL_STREAM}.
+        </li>
+        <li>
+            Đối với bảng {@code android.provider.ContactsContract.StreamItems}, số hàng
+            được lưu giữ cho mỗi liên lạc thô sẽ bị giới hạn. Sau khi đạt đến giới hạn này,
+            Trình cung cấp Danh bạ sẽ tạo khoảng trống cho các hàng mục dòng mới bằng cách tự động xóa
+            những hàng có
+            {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP} lâu nhất. Để nhận
+            giới hạn, hãy phát hành một truy vấn tới URI nội dung
+            {@code android.provider.ContactsContract.StreamItems#CONTENT_LIMIT_URI}. Bạn có thể để
+            tất cả các tham đối khác ngoài URI nội dung được đặt về <code>null</code>. Truy vấn
+            trả về một Con chạy chứa một hàng đơn, với cột đơn
+            {@code android.provider.ContactsContract.StreamItems#MAX_ITEMS}.
+        </li>
+    </ul>
+
+<p>
+    Lớp {@code android.provider.ContactsContract.StreamItems.StreamItemPhotos} định nghĩa một
+    bảng con {@code android.provider.ContactsContract.StreamItemPhotos} chứa các hàng ảnh
+    cho một mục dòng đơn.
+</p>
+<h3 id="SocialStreamInteraction">Tương tác từ luồng xã hội</h3>
+<p>
+    Dữ liệu từ luồng xã hội được quản lý bởi Trình cung cấp Danh bạ, kết hợp với
+    ứng dụng danh bạ của thiết bị, cung cấp một cách hiệu quả để kết nối hệ thống mạng xã hội của bạn
+    với các liên lạc hiện tại. Có sẵn những tính năng sau:
+</p>
+    <ul>
+        <li>
+            Bằng cách đồng bộ dịch vụ mạng xã hội của bạn với Trình cung cấp Danh bạ bằng một trình điều hợp
+            đồng bộ, bạn có thể truy xuất hoạt động gần đây đối với danh bạ của một người dùng và lưu giữ nó trong
+            các bảng {@code android.provider.ContactsContract.StreamItems} và
+            {@code android.provider.ContactsContract.StreamItemPhotos} để sử dụng sau.
+        </li>
+        <li>
+            Bên cạnh việc đồng bộ hoá thường xuyên, bạn có thể kích khởi trình điều hợp đồng bộ của mình để truy xuất
+            dữ liệu bổ sung khi người dùng chọn một liên lạc để xem. Điều này cho phép trình điều hợp đồng bộ của bạn
+            truy xuất ảnh độ phân giải cao và các mục dòng gần đây nhất cho liên lạc đó.
+        </li>
+        <li>
+            Bằng cách đăng ký một thông báo với ứng dụng danh bạ của thiết bị và Trình cung cấp
+            Danh bạ, bạn có thể <em>nhận</em> một ý định khi một liên lạc được xem, và tại thời điểm đó,
+            cập nhật trạng thái của liên lạc đó từ dịch vụ của bạn. Phương pháp này có thể nhanh hơn và sử dụng ít
+            băng thông hơn việc thực hiện đồng bộ đầy đủ với một trình điều hợp đồng bộ.
+        </li>
+        <li>
+            Người dùng có thể thêm một liên lạc vào dịch vụ mạng xã hội của mình trong khi đang xem liên lạc đó
+            trong ứng dụng danh bạ của thiết bị. Bạn kích hoạt điều này bằng tính năng "mời liên lạc",
+           theo đó cho phép kết hợp một hoạt động để thêm một liên lạc hiện có vào mạng
+            của bạn, và một tệp XML để cung cấp cho ứng dụng danh bạ của thiết bị và
+            Trình cung cấp Danh bạ thông tin chi tiết về ứng dụng của bạn.
+        </li>
+    </ul>
+<p>
+    Đồng bộ hóa thường xuyên các mục dòng với Trình cung cấp Danh bạ giống như
+    các trường hợp đồng bộ hoá khác. Để tìm hiểu thêm về đồng bộ hoá, hãy xem phần
+    <a href="#SyncAdapters">Trình điều hợp Đồng bộ Trình cung cấp Danh bạ</a>. Việc đăng ký thông tin và
+    mời liên lạc được đề cập trong hai phần tiếp theo.
+</p>
+<h4>Đăng ký để xử lý các lượt xem mạng xã hội</h4>
+<p>
+    Để đăng ký để trình điều hợp đồng bộ của bạn nhận thông báo khi người dùng xem một liên lạc do
+    trình điều hợp đồng bộ của bạn quản lý:
+</p>
+<ol>
+    <li>
+        Tạo một tệp có tên <code>contacts.xml</code> trong thư mục <code>res/xml/</code>
+        của dự án của bạn. Nếu đã có tệp này, bạn có thể bỏ qua bước này.
+    </li>
+    <li>
+        Trong tệp này, hãy thêm phần tử
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Nếu phần tử này đã tồn tại, bạn có thể bỏ qua bước này.
+    </li>
+    <li>
+        Để đăng ký một dịch vụ được thông báo khi người dùng mở trang chi tiết của một liên lạc trong
+        ứng dụng danh bạ của thiết bị, hãy thêm thuộc tính
+        <code>viewContactNotifyService="<em>serviceclass</em>"</code> vào phần tử, trong đó
+        <code><em>serviceclass</em></code> là tên lớp được đáp ứng đầy đủ của dịch vụ
+        mà sẽ nhận ý định từ ứng dụng danh bạ của thiết bị. Đối với dịch vụ
+        trình thông báo, hãy sử dụng một lớp mở rộng {@link android.app.IntentService}, để cho phép dịch vụ
+        nhận các ý định. Dữ liệu trong ý định đến chứa URI nội dung của liên lạc
+        thô mà người dùng đã nhấp vào. Từ dịch vụ trình thông báo, bạn có thể gắn kết với rồi gọi trình điều hợp đồng bộ
+        của bạn để cập nhật dữ liệu cho liên lạc thô.
+    </li>
+</ol>
+<p>
+    Để đăng ký một hoạt động sẽ được gọi khi người dùng nhấp vào một mục dòng hay ảnh hoặc cả hai:
+</p>
+<ol>
+    <li>
+        Tạo một tệp có tên <code>contacts.xml</code> trong thư mục <code>res/xml/</code>
+        của dự án của bạn. Nếu đã có tệp này, bạn có thể bỏ qua bước này.
+    </li>
+    <li>
+        Trong tệp này, hãy thêm phần tử
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Nếu phần tử này đã tồn tại, bạn có thể bỏ qua bước này.
+    </li>
+    <li>
+        Để đăng ký một trong các hoạt động của bạn sẽ xử lý khi người dùng nhấp vào một mục dòng trong
+        ứng dụng danh bạ của thiết bị, hãy thêm thuộc tính
+        <code>viewStreamItemActivity="<em>activityclass</em>"</code> vào phần tử đó, trong đó
+        <code><em>activityclass</em></code> là tên lớp được xác định đầy đủ của hoạt động
+        mà sẽ nhận ý định từ ứng dụng danh bạ của thiết bị.
+    </li>
+    <li>
+        Để đăng ký một trong các hoạt động của bạn sẽ xử lý khi người dùng nhấp vào một ảnh luồng trong
+        ứng dụng danh bạ của thiết bị, hãy thêm thuộc tính
+        <code>viewStreamItemPhotoActivity="<em>activityclass</em>"</code> vào phần tử đó, trong đó
+        <code><em>activityclass</em></code> là tên lớp được xác định đầy đủ của hoạt động
+        mà sẽ nhận ý định từ ứng dụng danh bạ của thiết bị.
+    </li>
+</ol>
+<p>
+    Phần tử <code>&lt;ContactsAccountType&gt;</code> được mô tả chi tiết hơn trong mục
+    phần tử <a href="#SocialStreamAcctType">&lt;ContactsAccountType&gt;</a>.
+</p>
+<p>
+    Ý định đến chứa URI nội dung của mục hoặc ảnh mà người dùng đã nhấp vào.
+    Để có các hoạt động riêng cho các mục văn bản và ảnh, hãy sử dụng cả hai thuộc tính trong cùng tệp.
+</p>
+<h4>Tương tác với dịch vụ mạng xã hội của bạn</h4>
+<p>
+    Người dùng không phải rời ứng dụng danh bạ của thiết bị để mời một liên lạc tới trang mạng xã hội
+    của bạn. Thay vào đó, bạn có thể thiết đặt để ứng dụng danh bạ của thiết bị gửi một ý định để mời
+    liên lạc đó tới một trong các hoạt động của mình. Để thiết đặt điều này:
+</p>
+<ol>
+    <li>
+        Tạo một tệp có tên <code>contacts.xml</code> trong thư mục <code>res/xml/</code>
+        của dự án của bạn. Nếu đã có tệp này, bạn có thể bỏ qua bước này.
+    </li>
+    <li>
+        Trong tệp này, hãy thêm phần tử
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>.
+        Nếu phần tử này đã tồn tại, bạn có thể bỏ qua bước này.
+    </li>
+    <li>
+        Thêm các thuộc tính sau:
+        <ul>
+            <li><code>inviteContactActivity="<em>activityclass</em>"</code></li>
+            <li>
+                <code>inviteContactActionLabel="&#64;string/<em>invite_action_label</em>"</code>
+            </li>
+        </ul>
+        Giá trị <code><em>activityclass</em></code> là tên lớp được xác định đầy đủ của hoạt động
+        mà sẽ nhận được ý định. Giá trị <code><em>invite_action_label</em></code>
+        là một xâu văn bản được hiển thị trong menu <strong>Thêm Kết nối</strong> trong ứng dụng danh bạ
+        của thiết bị.
+    </li>
+</ol>
+<p class="note">
+    <strong>Lưu ý:</strong> <code>ContactsSource</code> là một tên tag không được chấp nhận đối với
+    <code>ContactsAccountType</code>.
+</p>
+<h3 id="ContactsFile">Tham chiếu contacts.xml</h3>
+<p>
+    Tệp <code>contacts.xml</code> chứa các phần tử XML có chức năng kiểm soát tương tác giữa
+    trình điều hợp đồng bộ và ứng dụng của bạn với ứng dụng danh bạ và Trình cung cấp Danh bạ. Những
+    phần tử này được mô tả trong các mục sau.
+</p>
+<h4 id="SocialStreamAcctType">Thành phần &lt;ContactsAccountType&gt;</h4>
+<p>
+    Phần tử <code>&lt;ContactsAccountType&gt;</code> kiểm soát tương tác giữa
+    ứng dụng của bạn với ứng dụng danh bạ. Nó có những cú pháp sau:
+</p>
+<pre>
+&lt;ContactsAccountType
+        xmlns:android="http://schemas.android.com/apk/res/android"
+        inviteContactActivity="<em>activity_name</em>"
+        inviteContactActionLabel="<em>invite_command_text</em>"
+        viewContactNotifyService="<em>view_notify_service</em>"
+        viewGroupActivity="<em>group_view_activity</em>"
+        viewGroupActionLabel="<em>group_action_text</em>"
+        viewStreamItemActivity="<em>viewstream_activity_name</em>"
+        viewStreamItemPhotoActivity="<em>viewphotostream_activity_name</em>"&gt;
+</pre>
+<p>
+    <strong>chứa trong:</strong>
+</p>
+<p>
+    <code>res/xml/contacts.xml</code>
+</p>
+<p>
+    <strong>có thể chứa:</strong>
+</p>
+<p>
+    <strong><code>&lt;ContactsDataKind&gt;</code></strong>
+</p>
+<p>
+    <strong>Mô tả:</strong>
+</p>
+<p>
+    Khai báo các thành phần Android và nhãn UI mà cho phép người dùng mời một trong các liên lạc của mình đến
+    một mạng xã hội, thông báo người dùng khi một trong các luồng mạng xã hội của họ được cập nhật,
+    v.v.
+</p>
+<p>
+    Để ý rằng tiền tố thuộc tính <code>android:</code> không nhất thiết áp dụng cho các thuộc tính
+    của <code>&lt;ContactsAccountType&gt;</code>.
+</p>
+<p>
+    <strong>Thuộc tính:</strong>
+</p>
+<dl>
+    <dt>{@code inviteContactActivity}</dt>
+    <dd>
+        Tên lớp được xác định đầy đủ của hoạt động trong ứng dụng của bạn mà bạn muốn
+        kích hoạt khi người dùng chọn <strong>Thêm kết nối</strong> từ ứng dụng danh bạ
+        của thiết bị.
+    </dd>
+    <dt>{@code inviteContactActionLabel}</dt>
+    <dd>
+        Một xâu văn bản được hiển thị cho hoạt động được quy định trong
+        {@code inviteContactActivity}, trong menu <strong>Thêm kết nối</strong>.
+        Ví dụ, bạn có thể sử dụng xâu "Follow in my network". Bạn có thể sử dụng mã định danh
+        tài nguyên xâu cho nhãn này.
+    </dd>
+    <dt>{@code viewContactNotifyService}</dt>
+    <dd>
+        Tên lớp được xác định đầy đủ của một dịch vụ trong ứng dụng của bạn mà sẽ nhận được
+        thông báo khi người dùng xem một liên lạc. Thông báo này được gửi từ ứng dụng danh bạ
+        của thiết bị; nó cho phép ứng dụng của bạn tạm hoãn các thao tác dùng nhiều dữ liệu tới
+        khi cần. Ví dụ, ứng dụng của bạn có thể hồi đáp lại thông báo này
+        bằng cách đọc và hiển thị ảnh độ phân giải cao của danh bạ và các mục dòng mạng xã hội
+        gần đây nhất. Tính năng này được mô tả chi tiết hơn trong phần
+        <a href="#SocialStreamInteraction">Tương tác với luồng xã hội</a>. Bạn có thể thấy một
+        ví dụ về dịch vụ thông báo trong tệp <code>NotifierService.java</code> trong ứng dụng mẫu
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a>
+.
+    </dd>
+    <dt>{@code viewGroupActivity}</dt>
+    <dd>
+        Tên lớp được xác định đầy đủ của một hoạt động trong ứng dụng của bạn mà có thể
+        hiển thị thông tin nhóm. Khi người dùng nhấp vào nhãn nhóm trong ứng dụng danh bạ
+        của thiết bị, UI cho hoạt động này sẽ được hiển thị.
+    </dd>
+    <dt>{@code viewGroupActionLabel}</dt>
+    <dd>
+        Nhãn mà ứng dụng danh bạ hiển thị cho một điều khiển UI có cho phép
+        người dùng xem các nhóm trong ứng dụng của bạn.
+        <p>
+            Ví dụ, nếu bạn cài đặt ứng dụng Google+ trên thiết bị của mình và bạn đồng bộ
+            Google+ với ứng dụng danh bạ, bạn sẽ thấy các vòng tròn Google+ được liệt kê thành các nhóm
+            trong tab <strong>Nhóm</strong> của ứng dụng danh bạ của bạn. Nếu bạn nhấp vào một vòng tròn
+            Google+, bạn sẽ thấy những người trong vòng tròn đó được liệt kê thành một "nhóm". Phía bên trên của
+            hiển thị, bạn sẽ thấy một biểu tượng Google+; nếu bạn nhấp vào đó, điều khiển sẽ chuyển sang ứng dụng
+            Google+. Ứng dụng danh bạ làm điều này bằng
+            {@code viewGroupActivity}, bằng cách sử dụng biểu tượng Google+ làm giá trị của
+            {@code viewGroupActionLabel}.
+        </p>
+        <p>
+            Một mã định danh tài nguyên xâu được cho phép cho thuộc tính này.
+        </p>
+    </dd>
+    <dt>{@code viewStreamItemActivity}</dt>
+    <dd>
+        Tên lớp được xác định đầy đủ của một hoạt động trong ứng dụng của bạn mà
+        ứng dụng danh bạ của thiết bị khởi chạy khi người dùng nhấp vào một mục dòng đối với một liên lạc thô.
+    </dd>
+    <dt>{@code viewStreamItemPhotoActivity}</dt>
+    <dd>
+        Tên lớp được xác định đầy đủ của một hoạt động trong ứng dụng của bạn mà
+       ứng dụng danh bạ của thiết bị khởi chạy khi người dùng nhấp vào một ảnh trong mục dòng
+        đối với một liên lạc thô.
+    </dd>
+</dl>
+<h4 id="SocialStreamDataKind">Phần tử &lt;ContactsDataKind&gt;</h4>
+<p>
+    Phần tử <code>&lt;ContactsDataKind&gt;</code> kiểm soát việc hiển thị các hàng
+    dữ liệu tùy chỉnh của ứng dụng của bạn trong UI của ứng dụng danh bạ. Nó có những cú pháp sau:
+</p>
+<pre>
+&lt;ContactsDataKind
+        android:mimeType="<em>MIMEtype</em>"
+        android:icon="<em>icon_resources</em>"
+        android:summaryColumn="<em>column_name</em>"
+        android:detailColumn="<em>column_name</em>"&gt;
+</pre>
+<p>
+    <strong>chứa trong:</strong>
+</p>
+<code>&lt;ContactsAccountType&gt;</code>
+<p>
+    <strong>Mô tả:</strong>
+</p>
+<p>
+    Sử dụng phần tử này để ứng dụng danh bạ hiển thị các nội dung trong một hàng dữ liệu tùy chỉnh như
+    một phần chi tiết của một liên lạc thô. Mỗi phần tử con <code>&lt;ContactsDataKind&gt;</code>
+    của <code>&lt;ContactsAccountType&gt;</code> đại diện cho một kiểu hàng dữ liệu tùy chỉnh mà trình điều hợp
+    đồng bộ của bạn thêm vào bảng {@link android.provider.ContactsContract.Data}. Thêm một phần tử
+    <code>&lt;ContactsDataKind&gt;</code> cho mỗi kiểu MIME tùy chỉnh mà bạn sử dụng. Bạn không phải
+    thêm phần tử nếu có một hàng dữ liệu tùy chỉnh mà bạn không muốn hiển thị dữ liệu.
+</p>
+<p>
+    <strong>Thuộc tính:</strong>
+</p>
+<dl>
+    <dt>{@code android:mimeType}</dt>
+    <dd>
+        Kiểu MIME tùy chỉnh mà bạn đã định nghĩa cho một trong các kiểu hàng dữ liệu tùy chỉnh của bạn trong bảng
+        {@link android.provider.ContactsContract.Data}. Ví dụ, giá trị
+        <code>vnd.android.cursor.item/vnd.example.locationstatus</code> có thể là một kiểu
+        MIME tùy chỉnh cho một hàng dữ liệu có chức năng ghi lại vị trí được biết đến cuối cùng của một liên lạc.
+    </dd>
+    <dt>{@code android:icon}</dt>
+    <dd>
+        Một tài nguyên
+        <a href="{@docRoot}guide/topics/resources/drawable-resource.html">có thể vẽ của Android</a>
+        mà ứng dụng danh bạ hiển thị bên cạnh dữ liệu của bạn. Sử dụng nó để thể hiện với
+        người dùng rằng dữ liệu xuất phát từ dịch vụ của bạn.
+    </dd>
+    <dt>{@code android:summaryColumn}</dt>
+    <dd>
+        Tên cột của giá trị thứ nhất trong hai giá trị được truy xuất từ hàng dữ liệu. Giá trị
+        được hiển thị là dòng thứ nhất của mục nhập cho hàng dữ liệu này. Dòng thứ nhất có
+        mục đích sử dụng làm bản tóm tắt dữ liệu, nhưng điều đó là tùy chọn. Xem thêm
+        <a href="#detailColumn">android:detailColumn</a>.
+    </dd>
+    <dt>{@code android:detailColumn}</dt>
+    <dd>
+        Tên cột của giá trị thứ hai trong hai giá trị được truy xuất từ hàng dữ liệu. Giá trị
+        được hiển thị là dòng thứ hai của mục nhập cho hàng dữ liệu này. Xem thêm
+        {@code android:summaryColumn}.
+    </dd>
+</dl>
+<h2 id="AdditionalFeatures">Các Tính năng Bổ sung của Trình cung cấp Danh bạ</h2>
+<p>
+    Bên cạnh các tính năng chính được mô tả trong các phần trước, Trình cung cấp Danh bạ còn cung cấp
+    những tính năng hữu ích sau khi làm việc với dữ liệu danh bạ:
+</p>
+    <ul>
+       <li>Nhóm liên lạc</li>
+       <li>Tính năng ảnh</li>
+    </ul>
+<h3 id="Groups">Nhóm liên lạc</h3>
+<p>
+    Trình cung cấp Danh bạ có thể tùy chọn đánh nhãn các bộ sưu tập liên lạc có liên quan bằng dữ liệu
+    <strong>nhóm</strong>. Nếu máy chủ liên kết với một tài khoản người dùng
+    muốn duy trì nhóm, trình điều hợp đồng bộ cho loại tài khoản của tài khoản đó sẽ chuyển
+    dữ liệu nhóm giữa Trình cung cấp Danh bạ và máy chủ. Khi người dùng thêm một liên lạc mới vào
+    máy chủ, trình điều hợp đồng bộ phải thêm nhóm mới
+    vào bảng {@link android.provider.ContactsContract.Groups}. Nhóm hoặc các nhóm mà một liên lạc
+    thô thuộc về được lưu giữ trong bảng {@link android.provider.ContactsContract.Data}, bằng cách sử dụng
+    kiểu MIME {@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}.
+</p>
+<p>
+    Nếu bạn đang thiết kế một trình điều hợp đồng bộ mà sẽ thêm dữ liệu liên lạc thô từ
+    máy chủ tới Trình cung cấp Danh bạ, và bạn không sử dụng các nhóm, khi đó bạn cần báo cho
+    Trình cung cấp làm các dữ liệu của bạn thấy được. Trong đoạn mã được thực hiện khi một người dùng thêm một tài khoản
+    vào thiết bị, hãy cập nhật hàng {@link android.provider.ContactsContract.Settings}
+    mà Trình cung cấp Danh bạ thêm cho tài khoản. Trong hàng này, đặt giá trị của cột
+    {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE
+    Settings.UNGROUPED_VISIBLE} thành 1. Khi bạn làm vậy, Trình cung cấp Danh bạ sẽ luôn
+    làm cho dữ liệu danh bạ của bạn thấy được, ngay cả khi bạn không sử dụng nhóm.
+</p>
+<h3 id="Photos">Ảnh liên lạc</h3>
+<p>
+    Bảng {@link android.provider.ContactsContract.Data} lưu giữ ảnh thành hàng với kiểu MIME
+    {@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+    Photo.CONTENT_ITEM_TYPE}. Cột
+    {@link android.provider.ContactsContract.RawContactsColumns#CONTACT_ID} của hàng được liên kết với cột
+    {@code android.provider.BaseColumns#_ID} của liên lạc thô mà nó thuộc về.
+    Lớp {@link android.provider.ContactsContract.Contacts.Photo} định nghĩa một bảng con của
+    {@link android.provider.ContactsContract.Contacts} chứa thông tin ảnh về ảnh chính
+    của một liên lạc, đây là ảnh chính của liên lạc thô chính của liên lạc. Tương tự,
+    lớp {@link android.provider.ContactsContract.RawContacts.DisplayPhoto} định nghĩa một bảng con
+    của {@link android.provider.ContactsContract.RawContacts} chứa thông tin ảnh đối với ảnh chính
+    của một liên lạc thô.
+</p>
+<p>
+    Tài liệu tham khảo cho {@link android.provider.ContactsContract.Contacts.Photo} và
+    {@link android.provider.ContactsContract.RawContacts.DisplayPhoto} có các ví dụ về
+    việc truy xuất thông tin ảnh. Không có lớp thuận tiện cho việc truy xuất hình thu nhỏ
+    chính đối với một liên lạc thô, nhưng bạn có thể gửi một truy vấn tới bảng
+    {@link android.provider.ContactsContract.Data}, chọn
+    {@code android.provider.BaseColumns#_ID} của liên lạc thô, 
+    {@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+    Photo.CONTENT_ITEM_TYPE}, và cột {@link android.provider.ContactsContract.Data#IS_PRIMARY}
+    để tìm hàng ảnh chính của liên lạc thô.
+</p>
+<p>
+    Dữ liệu từ luồng xã hội đối với một người cũng có thể bao gồm ảnh. Những ảnh này được lưu giữ trong bảng
+    {@code android.provider.ContactsContract.StreamItemPhotos}, được mô tả chi tiết hơn
+    trong phần <a href="#StreamPhotos">Ảnh từ luồng xã hội</a>.
+</p>
diff --git a/docs/html-intl/intl/vi/guide/topics/providers/content-provider-basics.jd b/docs/html-intl/intl/vi/guide/topics/providers/content-provider-basics.jd
new file mode 100644
index 0000000..5f868ca
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/providers/content-provider-basics.jd
@@ -0,0 +1,1196 @@
+page.title=Nội dung Cơ bản về Trình cung cấp Nội dung
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<!-- In this document -->
+<h2>Trong tài liệu này</h2>
+<ol>
+    <li>
+        <a href="#Basics">Tổng quan</a>
+        <ol>
+            <li>
+                <a href="#ClientProvider">Truy cập một trình cung cấp</a>
+            </li>
+            <li>
+                <a href="#ContentURIs">URI Nội dung</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#SimpleQuery">Truy xuất Dữ liệu từ Trình cung cấp</a>
+        <ol>
+            <li>
+                <a href="#RequestPermissions">Yêu cầu quyền truy cập đọc</a>
+            </li>
+            <li>
+                <a href="#Query">Xây dựng truy vấn</a>
+            </li>
+            <li>
+                <a href="#DisplayResults">Hiển thị các kết quả truy vấn</a>
+            </li>
+            <li>
+                <a href="#GettingResults">Lấy dữ liệu từ các kết quả truy vấn</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#Permissions">Quyền của Trình cung cấp Nội dung</a>
+    </li>
+    <li>
+        <a href="#Modifications">Chèn, Cập nhật, và Xóa Dữ liệu</a>
+        <ol>
+            <li>
+                <a href="#Inserting">Chèn dữ liệu</a>
+            </li>
+            <li>
+                <a href="#Updating">Cập nhật dữ liệu</a>
+            </li>
+            <li>
+                <a href="#Deleting">Xóa dữ liệu</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#DataTypes">Các Kiểu Dữ liệu của Trình cung cấp</a>
+    </li>
+    <li>
+        <a href="#AltForms">Các Hình thức Truy cập Trình cung cấp Thay thế</a>
+        <ol>
+            <li>
+                <a href="#Batch">Truy cập hàng loạt</a>
+            </li>
+            <li>
+                <a href="#Intents">Truy cập dữ liệu thông qua ý định</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClasses">Các Lớp Hợp đồng</a>
+    </li>
+    <li>
+        <a href="#MIMETypeReference">Tham khảo Kiểu MIME</a>
+    </li>
+</ol>
+
+    <!-- Key Classes -->
+<h2>Lớp khóa</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.content.ContentResolver}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+
+    <!-- Related Samples -->
+<h2>Các Mẫu Liên quan</h2>
+    <ol>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        Con chạy (Danh bạ)</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        Con chạy (Điện thoại)</a>
+        </li>
+    </ol>
+
+    <!-- See also -->
+<h2>Xem thêm</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+            Tạo một Trình cung cấp Nội dung</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+            Trình cung cấp Lịch</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+    <!-- Intro paragraphs -->
+<p>
+    Trình cung cấp nội dung quản lý truy cập vào một kho dữ liệu tập trung. Trình cung cấp
+    là bộ phận của một ứng dụng Android, nó thường cung cấp UI của chính mình để làm việc cùng
+    dữ liệu. Tuy nhiên, trình cung cấp nội dung được thiết kế chủ yếu cho các ứng dụng khác
+    sử dụng, giúp truy cập trình cung cấp bằng cách sử dụng một đối tượng máy khách cung cấp. Cùng nhau, trình cung cấp
+    và máy khách cung cấp sẽ mang đến một giao diện nhất quán, tiêu chuẩn cho dữ liệu, giao diện này
+    cũng đồng thời xử lý truyền thông liên tiến trình và bảo mật truy cập dữ liệu.
+</p>
+<p>
+    Chủ đề này đề cập đến những nội dung cơ bản sau đây:
+</p>
+    <ul>
+        <li>Cách trình cung cấp nội dung hoạt động.</li>
+        <li>API bạn sử dụng để truy xuất dữ liệu từ một trình cung cấp nội dung.</li>
+        <li>API bạn sử dụng để chèn, cập nhật, hoặc xóa dữ liệu trong một trình cung cấp nội dung.</li>
+        <li>Các tính năng API khác tạo điều kiện làm việc cùng các trình cung cấp.</li>
+    </ul>
+
+    <!-- Basics -->
+<h2 id="Basics">Tổng quan</h2>
+<p>
+    Trình cung cấp nội dung trình bày dữ liệu cho các ứng dụng bên ngoài dưới dạng một hoặc nhiều bảng tương tự
+    như các bảng được tìm thấy trong một cơ sở dữ liệu quan hệ. Mỗi hàng thể hiện một thực thể của một số kiểu dữ liệu
+    mà trình cung cấp thu thập, và mỗi cột trong hàng thể hiện một phần riêng biệt của dữ liệu được thu thập
+    đối với một thực thể.
+</p>
+<p>
+    Ví dụ, một trong các trình cung cấp tích hợp trong nền tảng Android đó là từ điển người dùng, nó
+    lưu giữ chính tả của những từ phi tiêu chuẩn mà người dùng muốn giữ lại. Bảng 1 minh họa
+    cách mà dữ liệu có thể được trình bày trong bảng của trình cung cấp này:
+</p>
+<p class="table-caption">
+    <strong>Bảng 1:</strong> Bảng từ điển người dùng mẫu.
+</p>
+<table id="table1" style="width: 50%;">
+    <tr>
+        <th style="width:20%" align="center" scope="col">từ</th>
+        <th style="width:20%" align="center" scope="col">id ứng dụng</th>
+        <th style="width:20%" align="center" scope="col">tần suất</th>
+        <th style="width:20%" align="center" scope="col">bản địa</th>
+        <th style="width:20%" align="center" scope="col">_ID</th>
+    </tr>
+    <tr>
+        <td align="center" scope="row">mapreduce</td>
+        <td align="center">user1</td>
+        <td align="center">100</td>
+        <td align="center">en_US</td>
+        <td align="center">1</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">precompiler</td>
+        <td align="center">user14</td>
+        <td align="center">200</td>
+        <td align="center">fr_FR</td>
+        <td align="center">2</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">applet</td>
+        <td align="center">user2</td>
+        <td align="center">225</td>
+        <td align="center">fr_CA</td>
+        <td align="center">3</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">const</td>
+        <td align="center">user1</td>
+        <td align="center">255</td>
+        <td align="center">pt_BR</td>
+        <td align="center">4</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">int</td>
+        <td align="center">user5</td>
+        <td align="center">100</td>
+        <td align="center">en_UK</td>
+        <td align="center">5</td>
+    </tr>
+</table>
+<p>
+    Trong bảng 1, mỗi hàng thể hiện một thực thể của một từ mà có thể không thấy có
+    trong từ điển chuẩn. Mỗi cột thể hiện một số dữ liệu cho từ đó, chẳng hạn như
+    từ bản địa được dùng lần đầu cho từ đó. Tiêu đề cột là các tên cột được lưu giữ trong
+    trình cung cấp. Để tham khảo tới bản địa của một hàng, bạn tham khảo tới cột <code>locale</code> của hàng đó. Đối với
+    trình cung cấp này, cột <code>_ID</code> đóng vai trò là cột "khóa chính" mà
+    trình cung cấp tự động duy trì.
+</p>
+<p class="note">
+    <strong>Lưu ý:</strong> Trình cung cấp không bắt buộc phải có một khóa chính, và không bắt buộc phải
+    sử dụng <code>_ID</code> làm tên cột của một khóa chính nếu có khóa. Tuy nhiên,
+    nếu bạn muốn gắn kết dữ liệu từ một trình cung cấp với một {@link android.widget.ListView}, một trong các
+    tên cột sẽ phải là <code>_ID</code>. Yêu cầu này được giải thích chi tiết hơn trong
+    phần <a href="#DisplayResults">Hiển thị các kết quả truy vấn</a>.
+</p>
+<h3 id="ClientProvider">Truy cập một trình cung cấp</h3>
+<p>
+    Một ứng dụng truy cập dữ liệu từ một trình cung cấp nội dung bằng
+    một đối tượng máy khách {@link android.content.ContentResolver}. Đối tượng này có các phương pháp để gọi
+    những phương pháp có tên giống nhau trong đối tượng trình cung cấp, một thực thể của một trong những lớp con
+    cụ thể của {@link android.content.ContentProvider}. Các phương pháp
+    {@link android.content.ContentResolver} cung cấp các chức năng
+    "CRUD" (tạo, truy xuất, cập nhật, và xóa) cơ bản của thiết bị lưu trữ liên tục.
+</p>
+<p>
+    Đối tượng {@link android.content.ContentResolver} trong tiến trình
+    của ứng dụng máy khách và đối tượng {@link android.content.ContentProvider} trong ứng dụng mà sở hữu
+    trình cung cấp sẽ tự động xử lý truyền thông liên tiến trình.
+    {@link android.content.ContentProvider} cũng đóng vai trò như một lớp rút gọn giữa kho dữ liệu
+    của nó và biểu diễn bên ngoài của dữ liệu dưới dạng bảng.
+</p>
+<p class="note">
+    <strong>Lưu ý:</strong> Để truy cập một trình cung cấp, ứng dụng của bạn thường phải yêu cầu các quyền
+    cụ thể trong tệp bản kê khai của mình. Điều này được mô tả chi tiết hơn trong phần
+    <a href="#Permissions">Quyền của Trình cung cấp Nội dung</a>
+</p>
+<p>
+    Ví dụ, để có một danh sách các từ và nội dung bản địa của chúng từ Trình cung cấp Từ điển Người dùng,
+    bạn hãy gọi {@link android.content.ContentResolver#query ContentResolver.query()}.
+    Phương pháp {@link android.content.ContentResolver#query query()} sẽ gọi phương pháp
+    {@link android.content.ContentProvider#query ContentProvider.query()} được định nghĩa bởi 
+    Trình cung cấp Từ điển Người dùng. Các dòng mã sau thể hiện một lệnh gọi
+    {@link android.content.ContentResolver#query ContentResolver.query()}:
+<p>
+<pre>
+// Queries the user dictionary and returns results
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,   // The content URI of the words table
+    mProjection,                        // The columns to return for each row
+    mSelectionClause                    // Selection criteria
+    mSelectionArgs,                     // Selection criteria
+    mSortOrder);                        // The sort order for the returned rows
+</pre>
+<p>
+    Bảng 2 cho biết các tham đối tới
+    {@link android.content.ContentResolver#query 
+    query(Uri,projection,selection,selectionArgs,sortOrder)} khớp với một câu lệnh SQL SELECT như thế nào:
+</p>
+<p class="table-caption">
+    <strong>Bảng 2:</strong> Query() so với truy vấn SQL.
+</p>
+<table id="table2" style="width: 75%;">
+    <tr>
+        <th style="width:25%" align="center" scope="col">tham đối query()</th>
+        <th style="width:25%" align="center" scope="col">Từ khóa/tham số SELECT</th>
+        <th style="width:50%" align="center" scope="col">Lưu ý</th>
+    </tr>
+    <tr>
+        <td align="center"><code>Uri</code></td>
+        <td align="center"><code>FROM <em>table_name</em></code></td>
+        <td><code>Uri</code> ánh xạ tới bảng trong trình cung cấp có tên <em>table_name</em>.</td>
+    </tr>
+    <tr>
+        <td align="center"><code>projection</code></td>
+        <td align="center"><code><em>col,col,col,...</em></code></td>
+        <td>
+            <code>projection</code> là một mảng gồm các cột nên được đưa vào đối với mỗi hàng
+            được truy xuất.
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>selection</code></td>
+        <td align="center"><code>WHERE <em>col</em> = <em>value</em></code></td>
+        <td><code>selection</code> quy định các tiêu chí để lựa chọn hàng.</td>
+    </tr>
+    <tr>
+        <td align="center"><code>selectionArgs</code></td>
+        <td align="center">
+            (Không có sự tương đương chính xác. Các tham đối lựa chọn sẽ thay thế các chỗ dành sẵn <code>?</code> trong
+            mệnh đề lựa chọn.)
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>sortOrder</code></td>
+        <td align="center"><code>ORDER BY <em>col,col,...</em></code></td>
+        <td>
+            <code>sortOrder</code> quy định thứ tự các hàng xuất hiện trong 
+            {@link android.database.Cursor} được trả về.
+        </td>
+    </tr>
+</table>
+<h3 id="ContentURIs">URI Nội dung</h3>
+<p>
+    <strong>URI nội dung</strong> là một URI xác định dữ liệu trong một trình cung cấp. URI nội dung
+    bao gồm tên biểu tượng của toàn bộ trình cung cấp (<strong>quyền</strong> của nó) và một
+    tên trỏ đến một bảng (<strong>đường dẫn</strong>). Khi bạn gọi
+    một phương pháp máy khách để truy cập một bảng trong một trình cung cấp, URI nội dung cho bảng là một trong các
+    tham đối.
+</p>
+<p>
+    Trong các dòng mã trước, hằng số
+    {@link android.provider.UserDictionary.Words#CONTENT_URI} chứa URI nội dung của
+    bảng "từ" của từ điển người dùng. Đối tượng {@link android.content.ContentResolver}
+    sẽ phân tích quyền của URI, và sử dụng nó để "giải quyết" trình cung cấp bằng cách
+    so sánh quyền với một bảng hệ thống của các trình cung cấp đã biết. Khi đó,
+    {@link android.content.ContentResolver} có thể phân phối các tham đối truy vấn tới đúng
+    trình cung cấp.
+</p>
+<p>
+    {@link android.content.ContentProvider} sử dụng phần đường dẫn của URI nội dung nhằm chọn
+    bảng để truy cập. Trình cung cấp thường có một <strong>đường dẫn</strong> cho mỗi bảng mà nó hiện ra.
+</p>
+<p>
+    Trong các dòng mã trước, URI đầy đủ cho bảng "từ" là:
+</p>
+<pre>
+content://user_dictionary/words
+</pre>
+<p>
+    trong đó xâu <code>user_dictionary</code> là quyền của trình cung cấp, và
+xâu    <code>words</code> là đường dẫn của bảng. Xâu
+    <code>content://</code> (<strong>lược đồ</strong>) sẽ luôn có mặt,
+   và xác định đây là một URI nội dung.
+</p>
+<p>
+    Nhiều trình cung cấp cho phép bạn truy cập một hàng đơn lẻ trong một bảng bằng cách nối một giá trị ID
+    với đuôi của URI. Ví dụ, để truy xuất một hàng có <code>_ID</code> là
+    <code>4</code> từ một từ điển người dùng, bạn có thể sử dụng URI nội dung này:
+</p>
+<pre>
+Uri singleUri = ContentUris.withAppendedId(UserDictionary.Words.CONTENT_URI,4);
+</pre>
+<p>
+    Bạn thường sử dụng các giá trị id khi bạn đã truy xuất một tập hợp các hàng, sau đó muốn cập nhật hoặc xóa
+    một trong số chúng.
+</p>
+<p class="note">
+    <strong>Lưu ý:</strong> Các lớp {@link android.net.Uri} và {@link android.net.Uri.Builder}
+    chứa các phương pháp thuận tiện để xây dựng đối tượng URI định dạng tốt từ các xâu. 
+    {@link android.content.ContentUris} chứa các phương pháp thuận tiện để nối các giá trị id với
+    một URI. Đoạn mã HTML trước sử dụng {@link android.content.ContentUris#withAppendedId
+withAppendedId()} để nối một id với URI nội dung Từ điển Người dùng.
+</p>
+
+
+    <!-- Retrieving Data from the Provider -->
+<h2 id="SimpleQuery">Truy xuất Dữ liệu từ Trình cung cấp</h2>
+<p>
+    Phần này mô tả cách truy xuất dữ liệu từ một trình cung cấp bằng cách sử dụng Trình cung cấp Từ điển Người dùng
+    làm ví dụ.
+</p>
+<p class="note">
+    Để giải thích rõ, đoạn mã HTML trong phần này gọi
+    {@link android.content.ContentResolver#query ContentResolver.query()} trên "luồng UI"". Tuy nhiên, trong 
+    mã thực sự, bạn nên thực hiện các truy vấn không đồng bộ trên một luồng riêng. Một cách để làm 
+    điều này đó là sử dụng lớp {@link android.content.CursorLoader}, nó được mô tả chi tiết hơn
+    trong hướng dẫn <a href="{@docRoot}guide/components/loaders.html">
+    Trình tải</a>. Bênh cạnh đó, các dòng mã chỉ là đoạn mã HTML; chúng không thể hiện một ứng dụng
+    hoàn chỉnh.
+</p>
+<p>
+    Để truy xuất dữ liệu từ một trình cung cấp, hãy làm theo các bước cơ bản sau:
+</p>
+<ol>
+   <li>
+        Yêu cầu quyền truy cập đọc cho trình cung cấp.
+   </li>
+   <li>
+        Định nghĩa mã để gửi một truy vấn tới trình cung cấp.
+   </li>
+</ol>
+<h3 id="RequestPermissions">Yêu cầu quyền truy cập đọc</h3>
+<p>
+    Để truy xuất dữ liệu từ một trình cung cấp, ứng dụng của bạn cần "quyền truy cập đọc" cho
+    trình cung cấp. Bạn không thể yêu cầu quyền này trong thời gian chạy; thay vào đó, bạn phải chỉ định rằng
+    bạn cần quyền này trong bản kê khai của mình bằng cách sử dụng phần tử
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+    và tên quyền chính xác được định nghĩa bởi
+    trình cung cấp. Khi bạn chỉ định phần tử này trong bản kê khai của mình, bạn đang thực tế hóa "yêu cầu" quyền
+    này cho ứng dụng của mình. Khi người dùng cài đặt ứng dụng của bạn, họ ngầm hiểu cấp
+    yêu cầu này.
+</p>
+<p>
+    Để tìm tên chính xác của quyền truy cập đọc cho trình cung cấp bạn đang sử dụng, cũng như
+    tên cho các quyền truy cập khác được sử dụng bởi trình truy cập, hãy xem trong tài liệu
+    của trình cung cấp.
+</p>
+<p>
+    Vai trò của quyền trong việc truy cập các trình cung cấp được mô tả chi tiết hơn trong phần
+    <a href="#Permissions">Quyền của Trình cung cấp Nội dung</a>.
+</p>
+<p>
+    Trình cung cấp Từ điển Người dùng sẽ định nghĩa quyền
+    <code>android.permission.READ_USER_DICTIONARY</code> trong tệp bản kê khai của nó, vì vậy một
+    ứng dụng muốn đọc từ trình cung cấp sẽ phải yêu cầu quyền này.
+</p>
+<!-- Constructing the query -->
+<h3 id="Query">Xây dựng truy vấn</h3>
+<p>
+    Bước tiếp theo trong việc truy xuất dữ liệu từ một trình cung cấp đó là xây dựng một truy vấn. Đoạn mã HTML đầu tiên
+    này định nghĩa một số biến cho việc truy cập Trình cung cấp Từ điển Người dùng:
+</p>
+<pre class="prettyprint">
+
+// A "projection" defines the columns that will be returned for each row
+String[] mProjection =
+{
+    UserDictionary.Words._ID,    // Contract class constant for the _ID column name
+    UserDictionary.Words.WORD,   // Contract class constant for the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant for the locale column name
+};
+
+// Defines a string to contain the selection clause
+String mSelectionClause = null;
+
+// Initializes an array to contain selection arguments
+String[] mSelectionArgs = {""};
+
+</pre>
+<p>
+    Đoạn mã HTML tiếp theo cho biết cách sử dụng
+    {@link android.content.ContentResolver#query ContentResolver.query()}, bằng cách sử dụng Trình cung cấp Từ điển
+    Người dùng như một ví dụ. Truy vấn máy khách trình cung cấp tương tự như một truy vấn SQL, và nó chứa một 
+    tập hợp các cột để trả về, một tập hợp các tiêu chí lựa chọn, và một thứ tự sắp xếp.
+</p>
+<p>
+    Tập hợp các cột mà truy vấn cần trả về được gọi là <strong>dự thảo</strong>
+    (biến <code>mProjection</code>).
+</p>
+<p>
+    Biểu thức để chỉ định các hàng cần truy xuất sẽ được chia thành một mệnh đề lựa chọn và
+    tham đối lựa chọn. Mệnh đề lựa chọn là sự kết hợp giữa các biểu thức lô-gic và biểu thức Boolean,
+    tên cột, và giá trị (biến <code>mSelectionClause</code>). Nếu bạn chỉ định 
+    tham số thay thế được <code>?</code> thay vì một giá trị, phương pháp truy vấn sẽ truy xuất giá trị 
+    từ mảng tham đối lựa chọn (biến <code>mSelectionArgs</code>).
+</p>
+<p>
+    Trong đoạn mã HTML tiếp theo, nếu người dùng không điền từ thì mệnh đề lựa chọn được đặt thành
+    <code>null</code>, và truy vấn trả về tất cả các từ trong trình cung cấp. Nếu người dùng nhập
+    một từ, mệnh đề lựa chọn được đặt thành <code>UserDictionary.Words.WORD + " = ?"</code> và
+    phần tử đầu tiên của mảng tham đối lựa chọn được đặt thành từ mà người dùng đã nhập.
+</p>
+<pre class="prettyprint">
+/*
+ * This defines a one-element String array to contain the selection argument.
+ */
+String[] mSelectionArgs = {""};
+
+// Gets a word from the UI
+mSearchString = mSearchWord.getText().toString();
+
+// Remember to insert code here to check for invalid or malicious input.
+
+// If the word is the empty string, gets everything
+if (TextUtils.isEmpty(mSearchString)) {
+    // Setting the selection clause to null will return all words
+    mSelectionClause = null;
+    mSelectionArgs[0] = "";
+
+} else {
+    // Constructs a selection clause that matches the word that the user entered.
+    mSelectionClause = UserDictionary.Words.WORD + " = ?";
+
+    // Moves the user's input string to the selection arguments.
+    mSelectionArgs[0] = mSearchString;
+
+}
+
+// Does a query against the table and returns a Cursor object
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,  // The content URI of the words table
+    mProjection,                       // The columns to return for each row
+    mSelectionClause                   // Either null, or the word the user entered
+    mSelectionArgs,                    // Either empty, or the string the user entered
+    mSortOrder);                       // The sort order for the returned rows
+
+// Some providers return null if an error occurs, others throw an exception
+if (null == mCursor) {
+    /*
+     * Insert code here to handle the error. Be sure not to use the cursor! You may want to
+     * call android.util.Log.e() to log this error.
+     *
+     */
+// If the Cursor is empty, the provider found no matches
+} else if (mCursor.getCount() &lt; 1) {
+
+    /*
+     * Insert code here to notify the user that the search was unsuccessful. This isn't necessarily
+     * an error. You may want to offer the user the option to insert a new row, or re-type the
+     * search term.
+     */
+
+} else {
+    // Insert code here to do something with the results
+
+}
+</pre>
+<p>
+    Truy vấn này tương tự như câu lệnh SQL:
+</p>
+<pre>
+SELECT _ID, word, locale FROM words WHERE word = &lt;userinput&gt; ORDER BY word ASC;
+</pre>
+<p>
+    Trong câu lệnh SQL này, tên cột thực tế được sử dụng thay vì các hằng số lớp hợp đồng.
+</p>
+<h4 id="Injection">Bảo vệ trước mục nhập độc hại</h4>
+<p>
+    Nếu dữ liệu được quản lý bởi trình cung cấp nội dung nằm trong một cơ sở dữ liệu SQL, việc điền dữ liệu không được tin cậy từ bên ngoài
+    vào các câu lệnh SQL thô có thể dẫn đến tiêm lỗi SQL.
+</p>
+<p>
+    Hãy xét mệnh đề lựa chọn sau:
+</p>
+<pre>
+// Constructs a selection clause by concatenating the user's input to the column name
+String mSelectionClause =  "var = " + mUserInput;
+</pre>
+<p>
+    Nếu bạn làm vậy, bạn đang cho phép người dùng ghép nối SQL độc hại lên câu lệnh SQL của mình.
+    Ví dụ, người dùng có thể điền "nothing; DROP TABLE *;" cho <code>mUserInput</code>, làm vậy
+    sẽ dẫn đến mệnh đề lựa chọn <code>var = nothing; DROP TABLE *;</code>. Do
+    mệnh đề lựa chọn được coi như một câu lệnh SQL, điều này có thể khiến trình cung cấp xóa tất cả
+    bảng trong cơ sở dữ liệu SQLite cơ bản (trừ khi trình cung cấp được thiết lập để bắt những lần thử
+    <a href="http://en.wikipedia.org/wiki/SQL_injection">tiêm lỗi SQL</a>).
+</p>
+<p>
+    Để tránh vấn đề này, hãy sử dụng một mệnh đề lựa chọn mà sử dụng <code>?</code> làm tham số
+    thay thế được và một mảng các tham đối lựa chọn riêng. Khi bạn làm như vậy, mục nhập của người dùng
+    được gắn kết trực tiếp với truy vấn thay vì được giải nghĩa như một phần của câu lệnh SQL.
+    Vì nó không được coi như SQL, mục nhập của người dùng không thể tiêm lỗi SQL độc hại. Thay vì sử dụng
+    ghép nối để điền mục nhập của người dùng, hãy sử dụng mệnh đề lựa chọn này:
+</p>
+<pre>
+// Constructs a selection clause with a replaceable parameter
+String mSelectionClause =  "var = ?";
+</pre>
+<p>
+    Thiết lập mảng các tham đối lựa chọn như sau:
+</p>
+<pre>
+// Defines an array to contain the selection arguments
+String[] selectionArgs = {""};
+</pre>
+<p>
+    Đặt một giá trị trong mảng các tham đối lựa chọn như sau:
+</p>
+<pre>
+// Sets the selection argument to the user's input
+selectionArgs[0] = mUserInput;
+</pre>
+<p>
+    Mệnh đề lựa chọn mà sử dụng <code>?</code> như một tham số thay thế được và một mảng
+    các tham đối lựa chọn là cách được ưu tiên để chỉ định một lựa chọn, ngay cả khi trình cung cấp không
+    được dựa trên cơ sở dữ liệu SQL.
+</p>
+<!-- Displaying the results -->
+<h3 id="DisplayResults">Hiển thị các kết quả truy vấn</h3>
+<p>
+    Phương pháp máy khách {@link android.content.ContentResolver#query ContentResolver.query()} luôn trả về 
+    một {@link android.database.Cursor} chứa các cột được chỉ định bởi dự thảo của 
+    truy vấn cho các hàng khớp với các tiêu chí lựa chọn của truy vấn. Một đối tượng 
+    {@link android.database.Cursor} cung cấp truy cập đọc ngẫu nhiên vào các hàng và cột mà nó 
+    chứa. Bằng cách sử dụng phương pháp {@link android.database.Cursor}, bạn có thể lặp lại các hàng trong 
+    kết quả, xác định kiểu dữ liệu của từng cột, lấy dữ liệu ra khỏi cột, và kiểm tra các tính chất khác
+    của kết quả. Một số triển khai {@link android.database.Cursor} sẽ tự động 
+    cập nhật đối tượng khi dữ liệu của trình cung cấp thay đổi, hoặc kích khởi các phương pháp trong một đối tượng quan sát 
+    khi {@link android.database.Cursor} thay đổi, hoặc cả hai.
+</p>
+<p class="note">
+    <strong>Lưu ý:</strong> Một trình cung cấp có thể hạn chế truy cập vào các cột dựa trên tính chất của
+    đối tượng thực hiện truy vấn. Ví dụ, Trình cung cấp Danh bạ hạn chế truy cập đối với một số cột cho
+    các trình điều hợp đồng bộ, vì thế nó sẽ không trả chúng về một hoạt động hay dịch vụ.
+</p>
+<p>
+    Nếu không hàng nào khớp với các tiêu chí lựa chọn, trình cung cấp
+    sẽ trả về một đối tượng {@link android.database.Cursor} mà trong đó
+    {@link android.database.Cursor#getCount Cursor.getCount()} bằng 0 (con chạy trống).
+</p>
+<p>
+    Nếu xảy ra một lỗi nội bộ, các kết quả của truy vấn sẽ phụ thuộc vào trình cung cấp cụ thể. Nó có thể
+    chọn trả về <code>null</code>, hoặc nó có thể đưa ra một lỗi {@link java.lang.Exception}.
+</p>
+<p>
+    Do {@link android.database.Cursor} là một "danh sách" hàng, một cách hay để hiển thị
+    nội dung của một {@link android.database.Cursor} đó là liên kết nó với một {@link android.widget.ListView}
+    thông qua một {@link android.widget.SimpleCursorAdapter}.
+</p>
+<p>
+    Đoạn mã HTML sau tiếp tục từ đoạn mã HTML trước. Nó tạo một đối tượng
+    {@link android.widget.SimpleCursorAdapter} chứa {@link android.database.Cursor}
+    được truy xuất bởi truy vấn, và đặt đối tượng này thành trình điều hợp cho một
+    {@link android.widget.ListView}:
+</p>
+<pre class="prettyprint">
+// Defines a list of columns to retrieve from the Cursor and load into an output row
+String[] mWordListColumns =
+{
+    UserDictionary.Words.WORD,   // Contract class constant containing the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant containing the locale column name
+};
+
+// Defines a list of View IDs that will receive the Cursor columns for each row
+int[] mWordListItems = { R.id.dictWord, R.id.locale};
+
+// Creates a new SimpleCursorAdapter
+mCursorAdapter = new SimpleCursorAdapter(
+    getApplicationContext(),               // The application's Context object
+    R.layout.wordlistrow,                  // A layout in XML for one row in the ListView
+    mCursor,                               // The result from the query
+    mWordListColumns,                      // A string array of column names in the cursor
+    mWordListItems,                        // An integer array of view IDs in the row layout
+    0);                                    // Flags (usually none are needed)
+
+// Sets the adapter for the ListView
+mWordList.setAdapter(mCursorAdapter);
+</pre>
+<p class="note">
+    <strong>Lưu ý:</strong> Để lùi {@link android.widget.ListView} bằng một
+    {@link android.database.Cursor}, con chạy phải chứa một cột có tên <code>_ID</code>.
+    Vì điều này, truy vấn được hiện lúc trước truy xuất cột <code>_ID</code> cho
+    bảng "từ" mặc dù {@link android.widget.ListView} không hiển thị nó.
+    Hạn chế này cũng giải thích lý do tại sao phần lớn trình cung cấp đều có một cột <code>_ID</code> cho mỗi
+    bảng của nó.
+</p>
+
+        <!-- Getting data from query results -->
+<h3 id="GettingResults">Lấy dữ liệu từ các kết quả truy vấn</h3>
+<p>
+    Thay vì chỉ hiển thị các kết quả truy vấn, bạn có thể sử dụng chúng cho các tác vụ khác. Ví
+    dụ, bạn có thể truy xuất chính tả từ một từ điển người dùng, rồi sau đó tìm kiếm từ đó trong
+    các trình cung cấp khác. Để làm điều này, bạn lặp lại các hàng trong {@link android.database.Cursor}:
+</p>
+<pre class="prettyprint">
+
+// Determine the column index of the column named "word"
+int index = mCursor.getColumnIndex(UserDictionary.Words.WORD);
+
+/*
+ * Only executes if the cursor is valid. The User Dictionary Provider returns null if
+ * an internal error occurs. Other providers may throw an Exception instead of returning null.
+ */
+
+if (mCursor != null) {
+    /*
+     * Moves to the next row in the cursor. Before the first movement in the cursor, the
+     * "row pointer" is -1, and if you try to retrieve data at that position you will get an
+     * exception.
+     */
+    while (mCursor.moveToNext()) {
+
+        // Gets the value from the column.
+        newWord = mCursor.getString(index);
+
+        // Insert code here to process the retrieved word.
+
+        ...
+
+        // end of while loop
+    }
+} else {
+
+    // Insert code here to report an error if the cursor is null or the provider threw an exception.
+}
+</pre>
+<p>
+    Triển khai {@link android.database.Cursor} sẽ chứa một vài phương pháp “get" để
+    truy xuất các kiểu dữ liệu khác nhau từ đối tượng. Ví dụ, đoạn mã HTML trước
+    sử dụng {@link android.database.Cursor#getString getString()}. Chúng cũng có một phương pháp
+    {@link android.database.Cursor#getType getType()} để trả về một giá trị cho biết
+    kiểu dữ liệu của cột.
+</p>
+
+
+    <!-- Requesting permissions -->
+<h2 id="Permissions">Quyền của Trình cung cấp Nội dung</h2>
+<p>
+    Ứng dụng của một trình cung cấp có thể chỉ định các quyền mà ứng dụng khác có thể có để
+    truy cập dữ liệu của trình cung cấp đó. Những quyền này đảm bảo rằng người dùng biết một ứng dụng
+    sẽ cố gắng truy cập dữ liệu nào. Dựa trên các yêu cầu của trình cung cấp, các ứng dụng khác
+    yêu cầu quyền mà chúng cần để truy cập trình dữ liệu. Người dùng cuối thấy các quyền
+    được yêu cầu khi họ cài đặt ứng dụng.
+</p>
+<p>
+    Nếu ứng dụng của một trình cung cấp không chỉ định bất kỳ quyền nào, khi đó các ứng dụng khác không có
+    quyền truy cập dữ liệu của trình cung cấp. Tuy nhiên, các thành phần trong ứng dụng của trình cung cấp luôn có
+    đầy đủ quyền truy nhập đọc và ghi, không phụ thuộc vào các quyền được chỉ định.
+</p>
+<p>
+    Như đã lưu ý, Trình cung cấp Từ điển Người dùng sẽ yêu cầu
+    quyền <code>android.permission.READ_USER_DICTIONARY</code> để truy xuất dữ liệu từ nó.
+    Trình cung cấp có quyền <code>android.permission.WRITE_USER_DICTIONARY</code>
+    riêng để chèn, cập nhật, hoặc xóa dữ liệu.
+</p>
+<p>
+    Để nhận các quyền cần để truy cập một trình cung cấp, ứng dụng yêu cầu chúng bằng một phần tử
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+    trong tệp bản kê khai của nó. Khi Trình quản lý Gói Android cài đặt các ứng dụng, người dùng 
+    phải phê chuẩn tất cả quyền mà ứng dụng yêu cầu. Nếu người dùng phê chuẩn tất cả quyền, khi đó
+    Trình quản lý Gói sẽ tiếp tục cài đặt; nếu người dùng không phê chuẩn chúng, Trình quản lý Gói sẽ
+    hủy bỏ việc cài đặt.
+</p>
+<p>
+    Phần tử
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 
+    sau yêu cầu quyền truy cập đọc vào Trình cung cấp Từ điển Người dùng:
+</p>
+<pre>
+    &lt;uses-permission android:name="android.permission.READ_USER_DICTIONARY"&gt;
+</pre>
+<p>
+    Tác động của các quyền tới việc truy cập trình cung cấp được giải thích chi tiết hơn trong
+    hướng dẫn <a href="{@docRoot}guide/topics/security/security.html">Bảo mật và Quyền</a>.
+</p>
+
+
+<!-- Inserting, Updating, and Deleting Data -->
+<h2 id="Modifications">Chèn, Cập nhật, và Xóa Dữ liệu</h2>
+<p>
+    Giống như cách bạn truy xuất dữ liệu từ một trình cung cấp, bạn cũng có thể sử dụng tương tác giữa
+    một máy khách cung cấp và {@link android.content.ContentProvider} của trình cung cấp để sửa đổi dữ liệu.
+    Bạn gọi một phương pháp {@link android.content.ContentResolver} với các tham đối được chuyển sang
+    phương pháp {@link android.content.ContentProvider} tương ứng. Trình cung cấp và
+    máy khách cung cấp sẽ tự động xử lý bảo mật và truyền thông liên tiến trình.
+</p>
+<h3 id="Inserting">Chèn dữ liệu</h3>
+<p>
+    Để chèn dữ liệu vào một trình cung cấp, bạn gọi phương pháp
+    {@link android.content.ContentResolver#insert ContentResolver.insert()}
+. Phương pháp này chèn một hàng mới vào trình cung cấp và trả về một URI nội dung cho hàng đó.
+    Đoạn mã HTML này cho biết cách chèn một từ mới vào Trình cung cấp Từ điển Người dùng:
+</p>
+<pre class="prettyprint">
+// Defines a new Uri object that receives the result of the insertion
+Uri mNewUri;
+
+...
+
+// Defines an object to contain the new values to insert
+ContentValues mNewValues = new ContentValues();
+
+/*
+ * Sets the values of each column and inserts the word. The arguments to the "put"
+ * method are "column name" and "value"
+ */
+mNewValues.put(UserDictionary.Words.APP_ID, "example.user");
+mNewValues.put(UserDictionary.Words.LOCALE, "en_US");
+mNewValues.put(UserDictionary.Words.WORD, "insert");
+mNewValues.put(UserDictionary.Words.FREQUENCY, "100");
+
+mNewUri = getContentResolver().insert(
+    UserDictionary.Word.CONTENT_URI,   // the user dictionary content URI
+    mNewValues                          // the values to insert
+);
+</pre>
+<p>
+    Dữ liệu cho hàng mới đi vào trong một đối tượng {@link android.content.ContentValues} đơn lẻ, đối tượng này
+    có dạng tương tự như con chạy một hàng. Các cột trong đối tượng này không cần có
+    cùng kiểu dữ liệu, và nếu hoàn toàn không muốn chỉ định một giá trị, bạn có thể đặt một cột
+    thành <code>null</code> bằng cách sử dụng {@link android.content.ContentValues#putNull ContentValues.putNull()}.
+</p>
+<p>
+    Đoạn mã HTML không thêm cột <code>_ID</code> vì cột này được tự động
+    duy trì. Trình cung cấp sẽ gán một giá trị duy nhất <code>_ID</code> cho mỗi hàng được
+    thêm. Các trình cung cấp thường sử dụng giá trị này làm khóa chính của bảng.
+</p>
+<p>
+    URI nội dung được trả về trong <code>newUri</code> sẽ xác định hàng mới thêm, có
+    định dạng như sau:
+</p>
+<pre>
+content://user_dictionary/words/&lt;id_value&gt;
+</pre>
+<p>
+    <code>&lt;id_value&gt;</code> là nội dung của <code>_ID</code> cho hàng mới.
+    Hầu hết các trình cung cấp đều có thể tự động phát hiện dạng URI nội dung này rồi thực hiện thao tác được yêu cầu
+    trên hàng cụ thể đó.
+</p>
+<p>
+    Để nhận giá trị <code>_ID</code> từ {@link android.net.Uri} được trả về, hãy gọi
+    {@link android.content.ContentUris#parseId ContentUris.parseId()}.
+</p>
+<h3 id="Updating">Cập nhật dữ liệu</h3>
+<p>
+    Để cập nhật một hàng, bạn sử dụng một đối tượng {@link android.content.ContentValues} với các giá trị
+    được cập nhật giống như cách bạn làm với việc chèn, và các tiêu chí lựa chọn giống như cách bạn làm với truy vấn.
+    Phương pháp máy khách mà bạn sử dụng là
+    {@link android.content.ContentResolver#update ContentResolver.update()}. Bạn chỉ cần thêm 
+    các giá trị vào đối tượng {@link android.content.ContentValues} cho các cột mà bạn đang cập nhật. Nếu bạn 
+    muốn xóa các nội dung của một cột, hãy đặt giá trị thành <code>null</code>.
+</p>
+<p>
+    Đoạn mã HTML sau thay đổi tất cả hàng với cột bản địa có ngôn ngữ "en" thành cột
+    có bản địa là <code>null</code>. Giá trị trả về là số hàng đã được cập nhật:
+</p>
+<pre>
+// Defines an object to contain the updated values
+ContentValues mUpdateValues = new ContentValues();
+
+// Defines selection criteria for the rows you want to update
+String mSelectionClause = UserDictionary.Words.LOCALE +  "LIKE ?";
+String[] mSelectionArgs = {"en_%"};
+
+// Defines a variable to contain the number of updated rows
+int mRowsUpdated = 0;
+
+...
+
+/*
+ * Sets the updated value and updates the selected words.
+ */
+mUpdateValues.putNull(UserDictionary.Words.LOCALE);
+
+mRowsUpdated = getContentResolver().update(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mUpdateValues                       // the columns to update
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    Bạn cũng nên thanh lọc thông tin đầu vào của người dùng khi gọi
+    {@link android.content.ContentResolver#update ContentResolver.update()}. Để tìm hiểu thêm về 
+    điều này, hãy đọc phần <a href="#Injection">Bảo vệ trước mục nhập độc hại</a>.
+</p>
+<h3 id="Deleting">Xóa dữ liệu</h3>
+<p>
+    Xóa hàng tương tự như truy xuất dữ liệu hàng: bạn chỉ định các tiêu chí lựa chọn cho hàng
+    mà bạn muốn xóa và phương pháp máy khách trả về số hàng được xóa.
+    Đoạn mã HTML sau xóa các hàng có appid khớp với "user". Phương pháp sẽ trả về
+    số hàng được xóa.
+</p>
+<pre>
+
+// Defines selection criteria for the rows you want to delete
+String mSelectionClause = UserDictionary.Words.APP_ID + " LIKE ?";
+String[] mSelectionArgs = {"user"};
+
+// Defines a variable to contain the number of rows deleted
+int mRowsDeleted = 0;
+
+...
+
+// Deletes the words that match the selection criteria
+mRowsDeleted = getContentResolver().delete(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    Bạn cũng nên thanh lọc thông tin đầu vào của người dùng khi gọi
+    {@link android.content.ContentResolver#delete ContentResolver.delete()}. Để tìm hiểu thêm về 
+    điều này, hãy đọc phần <a href="#Injection">Bảo vệ trước mục nhập độc hại</a>.
+</p>
+<!-- Provider Data Types -->
+<h2 id="DataTypes">Các Kiểu Dữ liệu của Trình cung cấp</h2>
+<p>
+    Trình cung cấp nội dung có thể cung cấp nhiều kiểu dữ liệu khác nhau. Trình cung cấp Từ điển Người dùng chỉ cung cấp
+    văn bản, nhưng trình cung cấp cũng có thể cung cấp các định dạng sau:
+</p>
+    <ul>
+        <li>
+            integer
+        </li>
+        <li>
+            long integer (long)
+        </li>
+        <li>
+            floating point
+        </li>
+        <li>
+            long floating point (double)
+        </li>
+    </ul>
+<p>
+    Một kiểu dữ liệu khác mà các trình cung cấp thường sử dụng đó là Binary Large OBject (BLOB) được triển khai như một
+    mảng 64KB byte. Bạn có thể xem các kiểu dữ liệu có sẵn bằng cách xem các phương pháp "get" lớp
+    {@link android.database.Cursor}.
+</p>
+<p>
+    Kiểu dữ liệu đối với mỗi cột trong một trình cung cấp thường được liệt kê trong tài liệu của trình cung cấp đó.
+    Các kiểu dữ liệu dành cho Trình cung cấp Từ điển Người dùng được liệt kê trong tài liệu tham khảo
+    cho lớp hợp đồng {@link android.provider.UserDictionary.Words} của nó (lớp hợp đồng được
+    mô tả trong phần <a href="#ContractClasses">Các Lớp Hợp đồng</a>).
+    Bạn cũng có thể xác định kiểu dữ liệu bằng cách gọi {@link android.database.Cursor#getType
+    Cursor.getType()}.
+</p>
+<p>
+    Trình cung cấp cũng duy trì thông tin về kiểu dữ liệu MIME cho mỗi URI nội dung mà chúng định nghĩa. Bạn có thể
+    sử dụng thông tin về kiểu MIME để tìm hiểu xem ứng dụng của mình có thể xử lý dữ liệu mà
+    trình cung cấp đưa ra hay không, hoặc để chọn một kiểu xử lý dựa trên kiểu MIME. Bạn thường cần kiểu
+    MIME khi đang làm việc với một trình cung cấp chứa các cấu trúc hoặc tệp
+    dữ liệu phức tạp. Ví dụ, bảng {@link android.provider.ContactsContract.Data}
+    trong Trình cung cấp Danh bạ sử dụng các kiểu MIME để dán nhãn kiểu dữ liệu liên lạc được lưu trữ trong từng
+    hàng. Để nhận được kiểu MIME tương ứng với một URI nội dung, hãy gọi
+    {@link android.content.ContentResolver#getType ContentResolver.getType()}.
+</p>
+<p>
+    Phần <a href="#MIMETypeReference">Tham khảo Kiểu MIME</a> mô tả
+    cú pháp của cả kiểu MIME tiêu chuẩn lẫn tùy chỉnh.
+</p>
+
+
+<!-- Alternative Forms of Provider Access -->
+<h2 id="AltForms">Các Hình thức Truy cập Trình cung cấp Thay thế</h2>
+<p>
+    Có ba hình thức truy cập trình cung cấp thay thế quan trọng trong phát triển ứng dụng:
+</p>
+<ul>
+    <li>
+        <a href="#Batch">Truy cập hàng loạt</a>: Bạn có thể tạo một loạt lệnh gọi truy cập bằng các phương pháp trong
+        lớp {@link android.content.ContentProviderOperation}, rồi sau đó áp dụng chúng với
+        {@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()}.
+    </li>
+    <li>
+        Truy vấn không đồng bộ: Bạn nên thực hiện các truy vấn trong một luồng riêng. Một cách để làm điều này đó là
+        sử dụng một đối tượng {@link android.content.CursorLoader}. Các ví dụ trong
+        hướng dẫn <a href="{@docRoot}guide/components/loaders.html">Trình tải</a> sẽ minh họa
+        cách làm điều này.
+    </li>
+    <li>
+        <a href="#Intents">Truy cập dữ liệu thông qua ý định</a>: Mặc dù không thể gửi một ý định
+        trực tiếp tới một trình cung cấp, bạn có thể gửi một ý định tới ứng dụng của trình cung cấp đó, 
+        đây thường là cách tốt nhất để sửa đổi dữ liệu của trình cung cấp.
+    </li>
+</ul>
+<p>
+    Truy cập hàng loạt và sửa đổi thông qua ý định được mô tả trong các phần sau.
+</p>
+<h3 id="Batch">Truy cập hàng loạt</h3>
+<p>
+    Truy cập hàng loạt vào một trình cung cấp là cách hữu ích để chèn nhiều hàng, hoặc để chèn
+    các hàng vào nhiều bảng trong cùng lệnh gọi phương pháp, hoặc nhìn chung để thực hiện một tập hợp
+    thao tác qua các ranh giới tiến trình như một giao tác (thao tác nguyên tử).
+</p>
+<p>
+    Để truy cập một trình cung cấp trong "chế độ hàng loạt",
+    bạn tạo một mảng đối tượng {@link android.content.ContentProviderOperation} rồi
+    phân phối chúng tới một trình cung cấp nội dung bằng
+    {@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()}. Bạn chuyển
+    <em>quyền</em> của trình cung cấp nội dung cho phương pháp này thay vì một URI nội dung cụ thể. 
+Điều này cho phép đối tượng {@link android.content.ContentProviderOperation} trong mảng có tác dụng
+    đối với một bảng khác. Một lệnh gọi tới {@link android.content.ContentResolver#applyBatch
+    ContentResolver.applyBatch()} trả về một mảng kết quả.
+</p>
+<p>
+    Mô tả lớp hợp đồng {@link android.provider.ContactsContract.RawContacts}
+    bao gồm một đoạn mã HTML thể hiện việc chèn hàng loạt. Ứng dụng mẫu 
+    <a href="{@docRoot}resources/samples/ContactManager/index.html">Trình quản lý Danh bạ</a>
+    có một ví dụ về truy cập hàng loạt trong tệp nguồn <code>ContactAdder.java</code>
+    của nó.
+</p>
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Hiển thị dữ liệu bằng cách sử dụng một ứng dụng trình trợ giúp.</h2>
+<p>
+    Nếu ứng dụng của bạn <em>có</em> quyền truy cập, bạn vẫn có thể cần sử dụng một
+    ý định để hiển thị dữ liệu trong một ứng dụng khác. Ví dụ, ứng dụng Lịch chấp nhận một
+    ý định {@link android.content.Intent#ACTION_VIEW}, nhằm hiển thị một ngày hoặc sự kiện cụ thể.
+    Điều này cho phép bạn hiển thị thông tin lịch mà không phải tạo UI của chính mình.
+    Để tìm hiểu thêm về tính năng này, hãy xem
+    hướng dẫn <a href="{@docRoot}guide/topics/providers/calendar-provider.html">Trình cung cấp Lịch</a>.
+</p>
+<p>
+    Ứng dụng mà bạn gửi ý định đến không nhất thiết phải là ứng dụng
+    được liên kết với trình cung cấp. Ví dụ, bạn có thể truy xuất một liên lạc từ
+    Trình cung cấp Danh bạ, rồi gửi một ý định {@link android.content.Intent#ACTION_VIEW}
+    chứa URI nội dung cho hình ảnh liên lạc tới một trình xem ảnh.
+</p>
+</div>
+</div>
+<h3 id="Intents">Truy cập dữ liệu thông qua ý định</h3>
+<p>
+    Ý định có thể cho phép truy cập gián tiếp vào một trình cung cấp nội dung. Bạn cho phép người dùng truy cập
+    dữ liệu trong một trình cung cấp ngay cả khi ứng dụng của bạn không có quyền truy cập, hoặc bằng cách
+    nhận lại một ý định kết quả từ một ứng dụng có quyền, hoặc bằng cách kích hoạt một
+    ứng dụng có phép và cho phép người dùng được làm việc trong nó.
+</p>
+<h4>Được truy cập với các quyền tạm thời</h4>
+<p>
+    Bạn có thể truy cập dữ liệu trong một trình cung cấp nội dung, ngay cả khi bạn không có quyền
+    truy nhập phù hợp, bằng cách gửi một ý định tới một ứng dụng có quyền và
+    nhận lại một ý định kết quả chứa quyền "URI".
+    Đây là những quyền cho một URI nội dung cụ thể kéo dài tới khi hoạt động nhận chúng
+    được hoàn thành. Ứng dụng có quyền lâu dài sẽ cấp quyền tạm thời
+    bằng cách đặt một cờ trong ý định kết quả:
+</p>
+<ul>
+    <li>
+        <strong>Quyền đọc:</strong>
+        {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}
+    </li>
+    <li>
+        <strong>Quyền ghi:</strong>
+        {@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION}
+    </li>
+</ul>
+<p class="note">
+    <strong>Lưu ý:</strong> Những cờ này không cấp quyền truy cập đọc và ghi nói chung cho trình cung cấp
+    mà có quyền được chứa trong URI nội dung. Quyền truy cập này chỉ áp dụng cho chính URI đó.
+</p>
+<p>
+    Trình cung cấp sẽ định nghĩa quyền URI cho các URI nội dung trong bản kê khai của nó, bằng cách sử dụng thuộc tính
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">android:grantUriPermission</a></code>
+    của phần tử
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+    cũng như phần tử con
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+    của phần tử
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+    . Cơ chế cấp quyền URI này được giải thích chi tiết hơn trong
+    hướng dẫn <a href="{@docRoot}guide/topics/security/security.html">Bảo mật và Quyền</a>,
+    trong phần "Quyền URI".
+</p>
+<p>
+    Ví dụ, bạn có thể truy xuất dữ liệu cho một liên lạc trong Trình cung cấp Danh bạ, ngay cả khi bạn không
+    có quyền {@link android.Manifest.permission#READ_CONTACTS}. Bạn có thể muốn thực hiện điều này
+    trong một ứng dụng gửi thiệp mừng điện tử tới một liên lạc vào ngày sinh nhật của người đó. Thay vì
+    yêu cầu {@link android.Manifest.permission#READ_CONTACTS}, là nơi cấp cho bạn quyền truy cập tất cả liên lạc
+    của người dùng và tất cả thông tin của họ, bạn nên cho phép người dùng kiểm soát những liên lạc
+    nào được sử dụng bởi ứng dụng của bạn. Để làm điều này, bạn sử dụng tiến trình sau:
+</p>
+<ol>
+    <li>
+        Ứng dụng của bạn gửi một ý định chứa hành động
+        {@link android.content.Intent#ACTION_PICK} và kiểu MIME "danh bạ"
+{@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE}, bằng cách sử dụng
+        phương pháp {@link android.app.Activity#startActivityForResult
+        startActivityForResult()}.
+    </li>
+    <li>
+        Vì ý định này khớp với bộ lọc ý định cho hoạt động
+        "lựa chọn" của ứng dụng Danh bạ, hoạt động sẽ đi đến tiền cảnh.
+    </li>
+    <li>
+        Trong hoạt động lựa chọn, người dùng chọn một
+        liên lạc để cập nhật. Khi điều này xảy ra, hoạt động lựa chọn sẽ gọi
+        {@link android.app.Activity#setResult setResult(resultcode, intent)}
+        để thiết lập một ý định nhằm gửi lại ứng dụng của bạn. Ý định chứa URI nội dung
+        của liên lạc mà người dùng đã chọn, và các cờ "phụ thêm"
+        {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}. Những cờ này cấp quyền URI
+        cho ứng dụng của bạn để đọc dữ liệu cho liên lạc được trỏ đến bởi
+        URI nội dung. Sau đó, hoạt động lựa chọn gọi {@link android.app.Activity#finish()} để
+        trả kiểm soát về ứng dụng của bạn.
+    </li>
+    <li>
+        Hoạt động của bạn trả về tiền cảnh, và hệ thống sẽ gọi phương pháp 
+        {@link android.app.Activity#onActivityResult onActivityResult()}
+        của hoạt động của bạn. Phương pháp này nhận được ý định kết quả do hoạt động lựa chọn tạo trong
+        ứng dụng Danh bạ.
+    </li>
+    <li>
+        Với URI nội dung từ ý định kết quả, bạn có thể đọc dữ liệu của liên lạc
+        từ Trình cung cấp Danh bạ, ngay cả khi bạn không yêu cầu quyền truy cập đọc lâu dài
+        vào trình cung cấp trong bản kê khai của mình. Sau đó, bạn có thể nhận thông tin ngày sinh của liên lạc
+        hoặc địa chỉ e-mail của người đó rồi gửi thiệp mừng điện tử.
+    </li>
+</ol>
+<h4>Sử dụng một ứng dụng khác</h4>
+<p>
+    Một cách đơn giản để cho phép người dùng sửa đổi dữ liệu mà bạn không có quyền truy cập đó là
+    kích hoạt một ứng dụng có quyền và cho phép người dùng làm việc ở đó.
+</p>
+<p>
+    Ví dụ, ứng dụng Lịch chấp nhận một
+    ý định {@link android.content.Intent#ACTION_INSERT}, nó cho phép bạn kích hoạt UI chèn
+    của ứng dụng. Bạn có thể chuyển dữ liệu "phụ thêm" trong ý định này mà được ứng dụng sử dụng
+    để điền trước vào UI. Vì các sự kiện định kỳ có cú pháp phức tạp, cách
+    ưu tiên để chèn sự kiện vào Trình cung cấp Lịch đó là kích hoạt ứng dụng Lịch với một
+    {@link android.content.Intent#ACTION_INSERT} rồi để người dùng chèn sự kiện tại đó.
+</p>
+<!-- Contract Classes -->
+<h2 id="ContractClasses">Các Lớp Hợp đồng</h2>
+<p>
+    Lớp hợp đồng định nghĩa các hằng số sẽ giúp ứng dụng hoạt động với các URI nội dung, tên
+    cột, hành động ý định, và các tính năng khác của một trình cung cấp nội dung. Các lớp hợp đồng không
+    được tự động đưa vào cùng một trình cung cấp; nhà phát triển của trình cung cấp phải định nghĩa chúng rồi
+    cung cấp chúng cho các nhà phát triển khác. Nhiều trình cung cấp được bao gồm cùng với nền tảng
+    Android có các lớp hợp đồng tương ứng trong gói {@link android.provider}.
+</p>
+<p>
+    Ví dụ, Trình cung cấp Từ điển Người dùng có một lớp hợp đồng
+    {@link android.provider.UserDictionary} chứa các hằng số URI nội dung và tên cột. URI nội dung
+    đối với bảng "từ" được định nghĩa trong hằng số
+    {@link android.provider.UserDictionary.Words#CONTENT_URI UserDictionary.Words.CONTENT_URI}.
+    Lớp {@link android.provider.UserDictionary.Words} cũng chứa các hằng số tên cột,
+    chúng được sử dụng trong đoạn mã HTML mẫu trong hướng dẫn này. Ví dụ, một dự thảo truy vấn có thể được
+    định nghĩa là:
+</p>
+<pre>
+String[] mProjection =
+{
+    UserDictionary.Words._ID,
+    UserDictionary.Words.WORD,
+    UserDictionary.Words.LOCALE
+};
+</pre>
+<p>
+    Một lớp hợp đồng khác là {@link android.provider.ContactsContract} dành cho Trình cung cấp Danh bạ.
+    Tài liệu tham khảo cho lớp này bao gồm các đoạn mã HTML mẫu. Một trong số các
+    lớp con của nó, {@link android.provider.ContactsContract.Intents.Insert}, là một lớp hợp đồng
+    chứa các hằng số cho ý định và dữ liệu ý định.
+</p>
+
+
+<!-- MIME Type Reference -->
+<h2 id="MIMETypeReference">Tham khảo Kiểu MIME</h2>
+<p>
+    Trình cung cấp nội dung có thể trả về các kiểu phương tiện MIME tiêu chuẩn, hoặc xâu kiểu MIME tùy chỉnh, hoặc cả hai.
+</p>
+<p>
+    Các kiểu MIME có định dạng
+</p>
+<pre>
+<em>type</em>/<em>subtype</em>
+</pre>
+<p>
+    Ví dụ, kiểu MIME thông dụng <code>text/html</code> có kiểu <code>text</code> và
+    kiểu con <code>html</code>. Nếu trình cung cấp trả về loại này cho một URI, điều đó có nghĩa rằng một
+    truy vấn đang sử dụng URI đó sẽ trả về văn bản chứa thẻ HTML.
+</p>
+<p>
+    Các xâu kiểu MIME tùy chỉnh, còn gọi là kiểu MIME "theo nhà cung cấp", có các giá trị
+    <em>kiểu</em> và <em>kiểu con</em> phức tạp hơn. Giá trị <em>kiểu</em> luôn luôn
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>
+</pre>
+<p>
+    áp dụng cho nhiều hàng, hoặc
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>
+</pre>
+<p>
+    áp dụng cho một hàng.
+</p>
+<p>
+    Giá trị <em>kiểu con</em> áp dụng theo trình cung cấp. Các trình cung cấp được tích hợp trong Android thường có một kiểu con
+    đơn giản. Ví dụ, khi ứng dụng Danh bạ tạo một hàng cho một số điện thoại,
+    nó đặt kiểu MIME sau trong hàng:
+</p>
+<pre>
+vnd.android.cursor.item/phone_v2
+</pre>
+<p>
+    Để ý rằng giá trị kiểu con đơn giản là <code>phone_v2</code>.
+</p>
+<p>
+    Các nhà phát triển trình cung cấp khác có thể tạo mẫu hình kiểu con của riêng mình dựa trên quyền
+    và tên bảng của trình cung cấp. Ví dụ, xét một trình cung cấp chứa các biểu thời gian lịch tàu.
+    Quyền của trình cung cấp là <code>com.example.trains</code>, và nó chứa các bảng
+    Line1, Line2, và Line3. Để phản hồi lại URI nội dung
+</p>
+<p>
+<pre>
+content://com.example.trains/Line1
+</pre>
+<p>
+    đối với bảng Line1, trình cung cấp trả về kiểu MIME
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.example.line1
+</pre>
+<p>
+     Để phản hồi lại URI nội dung
+</p>
+<pre>
+content://com.example.trains/Line2/5
+</pre>
+<p>
+    đối với hàng 5 trong bảng Line2, trình cung cấp trả về kiểu MIME
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.example.line2
+</pre>
+<p>
+    Hầu hết các trình cung cấp nội dung đều định nghĩa hằng số lớp hợp đồng cho các kiểu MIME mà chúng sử dụng. Ví dụ như lớp hợp đồng
+    của Trình cung cấp Danh bạ {@link android.provider.ContactsContract.RawContacts},
+    sẽ định nghĩa hằng số
+    {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE} cho kiểu MIME của
+    một hàng liên lạc thô duy nhất.
+</p>
+<p>
+    Các URI nội dung đối với hàng duy nhất được mô tả trong phần
+    <a href="#ContentURIs">URI nội dung</a>.
+</p>
diff --git a/docs/html-intl/intl/vi/guide/topics/providers/content-provider-creating.jd b/docs/html-intl/intl/vi/guide/topics/providers/content-provider-creating.jd
new file mode 100644
index 0000000..2e8579a
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/providers/content-provider-creating.jd
@@ -0,0 +1,1214 @@
+page.title=Tạo một Trình cung cấp Nội dung
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<h2>Trong tài liệu này</h2>
+<ol>
+    <li>
+        <a href="#DataStorage">Thiết kế Kho lưu trữ Dữ liệu</a>
+    </li>
+    <li>
+        <a href="#ContentURI">Thiết kế URI Nội dung</a>
+    </li>
+    <li>
+        <a href="#ContentProvider">Triển khai Lớp Trình cung cấp Nội dung</a>
+        <ol>
+            <li>
+                <a href="#RequiredAccess">Phương pháp được Yêu cầu</a>
+            </li>
+            <li>
+                <a href="#Query">Triển khai phương pháp query()</a>
+            </li>
+            <li>
+                <a href="#Insert">Triển khai phương pháp insert()</a>
+            </li>
+            <li>
+                <a href="#Delete">Triển khai phương pháp delete()</a>
+            </li>
+            <li>
+                <a href="#Update">Triển khai phương pháp update()</a>
+            </li>
+            <li>
+                <a href="#OnCreate">Triển khai phương pháp onCreate()</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#MIMETypes">Triển khai Kiểu MIME của Trình cung cấp Nội dung</a>
+        <ol>
+            <li>
+                <a href="#TableMIMETypes">Kiểu MIME cho bảng</a>
+            </li>
+            <li>
+                <a href="#FileMIMETypes">Kiểu MIME cho tệp</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClass">Triển khai một Lớp Hợp đồng</a>
+    </li>
+    <li>
+        <a href="#Permissions">Triển khai Quyền của Trình cung cấp Nội dung</a>
+    </li>
+    <li>
+        <a href="#ProviderElement">Phần tử &lt;provider&gt;</a>
+    </li>
+    <li>
+        <a href="#Intents">Ý định và Truy cập Dữ liệu</a>
+    </li>
+</ol>
+<h2>Lớp khóa</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+<h2>Các Mẫu Liên quan</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/NotePad/index.html">
+                Ứng dụng mẫu Note Pad
+            </a>
+        </li>
+    </ol>
+<h2>Xem thêm</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+            Nội dung Cơ bản về Trình cung cấp Nội dung</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+            Trình cung cấp Lịch</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+
+<p>
+    Trình cung cấp nội dung quản lý truy cập vào một kho dữ liệu tập trung. Bạn triển khai một
+    trình cung cấp thành một hoặc nhiều lớp trong một ứng dụng Android, bên cạnh các phần tử trong
+    tệp bản kê khai. Một trong các lớp của bạn triển khai một lớp con
+    {@link android.content.ContentProvider}, đây là giao diện giữa trình cung cấp của bạn và
+    các ứng dụng khác. Mặc dù mục đích của các trình cung cấp nội dung khác là cung cấp dữ liệu có sẵn cho các
+    ứng dụng khác, dĩ nhiên bạn có thể ra lệnh cho các hoạt động trong ứng dụng của mình
+    truy vấn và sửa đổi dữ liệu được quản lý bởi trình cung cấp của bạn.
+</p>
+<p>
+    Phần còn lại của chủ đề này là một danh sách cơ bản về các bước để xây dựng một trình cung cấp nội dung và một danh sách
+    các API để sử dụng.
+</p>
+
+
+<!-- Before You Start Building -->
+<h2 id="BeforeYouStart">Trước khi Bạn Bắt đầu Xây dựng</h2>
+<p>
+    Trước khi bạn bắt đầu xây dựng một trình cung cấp, hãy làm việc sau:
+</p>
+<ol>
+    <li>
+        <strong>Quyết định xem bạn có cần một trình cung cấp nội dung không</strong>. Bạn cần xây dựng một trình cung cấp
+        nội dung nếu muốn cung cấp một hoặc nhiều tính năng sau đây:
+        <ul>
+            <li>Bạn muốn cung cấp dữ liệu hoặc tệp phức tạp cho các ứng dụng khác.</li>
+            <li>Bạn muốn cho phép người dùng sao chép dữ liệu phức tạp từ ứng dụng của bạn vào các ứng dụng khác.</li>
+            <li>Bạn muốn cung cấp các gợi ý tìm kiếm tùy chỉnh bằng cách sử dụng khuôn khổ tìm kiếm.</li>
+        </ul>
+    <p>
+        Bạn <em>không</em> cần trình cung cấp phải sử dụng một cơ sở dữ liệu SQLite nếu việc sử dụng hoàn toàn
+        diễn ra trong ứng dụng của bạn.
+    </p>
+    </li>
+    <li>
+        Nếu bạn chưa làm như vậy, hãy đọc chủ đề
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Nội dung Cơ bản về Trình cung cấp Nội dung</a> để tìm hiểu thêm về trình cung cấp.
+    </li>
+</ol>
+<p>
+    Tiếp theo, hãy làm theo những bước sau để xây dựng trình cung cấp của bạn:
+</p>
+<ol>
+    <li>
+        Thiết kế kho lưu trữ thô cho dữ liệu của bạn. Một trình cung cấp nội dung sẽ cung cấp dữ liệu theo hai cách:
+        <dl>
+            <dt>
+                Dữ liệu tệp
+            </dt>
+            <dd>
+                Dữ liệu mà thường đến các tệp chẳng hạn như
+                ảnh, âm thanh, hoặc video. Lưu trữ các tệp ở không gian
+                riêng tư trong ứng dụng của bạn. Để hồi đáp lại một yêu cầu tệp từ một ứng dụng khác, trình cung cấp
+                của bạn có thể cung cấp một núm điều tác cho tệp.
+            </dd>
+            <dt>
+                Dữ liệu "cấu trúc"
+            </dt>
+            <dd>
+                Dữ liệu mà thường đến một cơ sở dữ liệu, mảng, hoặc cấu trúc tương tự.
+                Lưu trữ dữ liệu dưới dạng tương thích với các bảng hàng cột. Hàng
+                biểu diễn một đối tượng, chẳng hạn như một người hoặc khoản mục trong kiểm kê. Cột biểu diễn
+                một số dữ liệu cho đối tượng, chẳng hạn như tên của một người hoặc giá của một khoản mục. Một cách thường dùng để
+                lưu trữ loại dữ liệu này đó là trong cơ sở dữ liệu SQLite, nhưng bạn có thể sử dụng bất kỳ loại
+                kho lưu trữ lâu dài nào. Để tìm hiểu thêm về các loại kho lưu trữ có sẵn trong
+                hệ thống Android, hãy xem phần <a href="#DataStorage">
+                Thiết kế Kho lưu trữ Dữ liệu</a>.
+            </dd>
+        </dl>
+    </li>
+    <li>
+        Định nghĩa một triển khai cụ thể của lớp {@link android.content.ContentProvider} và
+        các phương pháp được yêu cầu của nó. Lớp này là giao diện giữa dữ liệu của bạn và phần còn lại của
+        hệ thống Android. Để biết thêm thông tin về lớp này, hãy xem phần
+        <a href="#ContentProvider">Triển khai Lớp ContentProvider</a>.
+    </li>
+    <li>
+        Định nghĩa xâu thẩm quyền của trình cung cấp, URI nội dung của nó, và các tên cột. Nếu bạn muốn
+        ứng dụng của trình cung cấp xử lý các ý định, hãy định nghĩa các hành động ý định, dữ liệu phụ thêm,
+        và cờ. Đồng thời, hãy định nghĩa các quyền mà bạn sẽ yêu cầu cho những ứng dụng muốn
+        truy cập dữ liệu của bạn. Bạn nên cân nhắc định nghĩa tất cả những giá trị này là hằng số trong một
+        lớp riêng; sau đó, bạn có thể cho hiện lớp này ra với các nhà phát triển khác. Để biết thêm
+        thông tin về URI nội dung, hãy xem
+        phần <a href="#ContentURI">Thiết kế URI Nội dung</a>.
+        Để biết thêm thông tin về ý định, hãy xem
+        phần <a href="#Intents">Ý định và Truy cập Dữ liệu</a>.
+    </li>
+    <li>
+        Thêm các nội dung tùy chọn khác, chẳng hạn như dữ liệu mẫu hoặc triển
+        khai {@link android.content.AbstractThreadedSyncAdapter} mà có thể đồng bộ hoá dữ liệu giữa
+        trình cung cấp và dữ liệu nền đám mây.
+    </li>
+</ol>
+
+
+<!-- Designing Data Storage -->
+<h2 id="DataStorage">Thiết kế Kho lưu trữ Dữ liệu</h2>
+<p>
+    Trình cung cấp nội dung là giao diện đối với dữ liệu được lưu theo một định dạng cấu trúc. Trước khi tạo
+    giao diện, bạn phải quyết định cách lưu trữ dữ liệu. Bạn có thể lưu trữ dữ liệu theo bất kỳ dạng nào
+    mà bạn muốn rồi thiết kế giao diện để đọc và ghi dữ liệu nếu cần thiết.
+</p>
+<p>
+    Có một số công nghệ lưu trữ dữ liệu có sẵn trong Android:
+</p>
+<ul>
+    <li>
+        Hệ thống Android bao gồm một API cơ sở dữ liệu SQLite mà các trình cung cấp của chính Androi sử dụng
+        để lưu trữ dữ liệu theo định hướng bảng. Lớp
+        {@link android.database.sqlite.SQLiteOpenHelper} giúp bạn tạo cơ sở dữ liệu, và lớp
+        {@link android.database.sqlite.SQLiteDatabase} là lớp cơ bản để đánh giá
+        các cơ sở dữ liệu.
+        <p>
+            Nhớ rằng bạn không phải sử dụng một cơ sở dữ liệu để triển khai kho lưu giữ của mình. Bề ngoài, một trình cung cấp
+            có dạng như là một tập hợp bảng, tương tự như một cơ sở dữ liệu quan hệ, nhưng đây
+            không phải là một yêu cầu đối với việc triển khai nội bộ của trình cung cấp.
+        </p>
+    </li>
+    <li>
+        Để lưu trữ dữ liệu tệp, Android có nhiều API định hướng tệp khác nhau.
+        Để tìm hiểu thêm về lưu trữ tệp, hãy đọc chủ đề
+        <a href="{@docRoot}guide/topics/data/data-storage.html">Kho lưu trữ Dữ liệu</a>. Nếu bạn
+        đang thiết kế một trình cung cấp dữ liệu liên quan tới phương tiện chẳng hạn như nhạc hay video, bạn có thể
+        có một trình cung cấp cho phép kết hợp dữ liệu bảng và các tệp.
+    </li>
+    <li>
+        Để làm việc với dữ liệu trên nền mạng, hãy sử dụng các lớp trong {@link java.net} và 
+        {@link android.net}. Bạn cũng có thể đồng bộ hoá dữ liệu trên nền mạng với một kho lưu trữ dữ liệu cục bộ
+        chẳng hạn như một cơ sở dữ liệu, rồi cung cấp dữ liệu dưới dạng bảng hoặc tệp.
+        Ứng dụng mẫu <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+        Trình điều hợp Đồng bộ Mẫu</a> minh họa loại đồng bộ hoá này.
+    </li>
+</ul>
+<h3 id="DataDesign">
+    Những nội dung cần xem xét khi thiết kế dữ liệu
+</h3>
+<p>
+    Sau đây là một số mẹo để thiết kế cấu trúc dữ liệu cho trình cung cấp của bạn:
+</p>
+<ul>
+    <li>
+        Dữ liệu bảng nên luôn có một cột "khóa chính" mà trình cung cấp duy trì
+        như một giá trị số duy nhất cho mỗi hàng. Bạn có thể sử dụng giá trị này để liên kết hàng với các hàng
+        có liên quan trong các bảng khác (sử dụng nó làm "khóa ngoại"). Mặc dù bạn có thể sử dụng bất kỳ tên gọi nào
+       cho cột này, sử dụng {@link android.provider.BaseColumns#_ID BaseColumns._ID} là lựa chọn tốt nhất
+        vì việc liên kết các kết quả của một truy vấn trình cung cấp với
+        {@link android.widget.ListView} đòi hỏi một trong các cột được truy xuất phải có tên
+        <code>_ID</code>.
+    </li>
+    <li>
+        Nếu bạn muốn cung cấp các hình ảnh bitmap hoặc nội dung dữ liệu định hướng tệp rất lớn khác, hãy lưu trữ
+        dữ liệu vào một tệp rồi cung cấp nó gián tiếp thay vì lưu trữ nó trực tiếp trong một
+        bảng. Nếu làm vậy, bạn cần báo cho người dùng trình cung cấp của bạn rằng họ cần sử dụng một phương pháp tệp
+        {@link android.content.ContentResolver} để truy cập dữ liệu.
+    </li>
+    <li>
+        Sử dụng kiểu dữ liệu Binary Large OBject (BLOB) để lưu trữ dữ liệu có kích cỡ khác nhau hoặc có một
+        cấu trúc thay đổi. Ví dụ, bạn có thể sử dụng cột BLOB để lưu trữ một
+        <a href="http://code.google.com/p/protobuf">bộ đệm giao thức</a> hay
+        <a href="http://www.json.org">cấu trúc JSON</a>.
+        <p>
+            Bạn cũng có thể sử dụng một BLOB để triển khai một bảng <em>độc lập với sơ đồ</em>. Trong
+            kiểu bảng này, bạn định nghĩa một cột khóa chính, một cột kiểu MIME, và một hoặc
+            nhiều cột chung là BLOB. Ý nghĩa của dữ liệu trong cột BLOB được thể hiện
+            bởi giá trị trong cột kiểu MIME. Điều này cho phép bạn lưu trữ các kiểu hàng khác nhau trong
+            cùng bảng. Bảng "dữ liệu"
+            {@link android.provider.ContactsContract.Data} của Trình cung cấp Danh bạ là một ví dụ về bảng
+            độc lập với sơ đồ.
+        </p>
+    </li>
+</ul>
+<!-- Designing Content URIs -->
+<h2 id="ContentURI">Thiết kế URI Nội dung</h2>
+<p>
+    <strong>URI nội dung</strong> là một URI xác định dữ liệu trong một trình cung cấp. URI nội dung bao gồm
+    tên mang tính biểu tượng của toàn bộ trình cung cấp (<strong>quyền</strong> của nó) và một
+    tên trỏ đến một bảng hoặc tệp (<strong>đường dẫn</strong>). Phần id tùy chọn chỉ đến một
+    hàng riêng lẻ trong một bảng. Mọi phương thức truy cập dữ liệu
+    {@link android.content.ContentProvider} đều có một URI nội dung là một tham đối; điều này cho phép bạn
+    xác định bảng, hàng, hoặc tệp để truy cập.
+</p>
+<p>
+    Nội dung cơ bản của URI nội dung được mô tả trong chủ đề
+    <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+    Nội dung Cơ bản về Trình cung cấp Nội dung</a>.
+</p>
+<h3>Thiết kế một thẩm quyền</h3>
+<p>
+    Một trình cung cấp thường có một thẩm quyền duy nhất, đóng vai trò là tên nội bộ Android của nó. Để
+    tránh xung đột với các trình cung cấp khác, bạn nên sử dụng quyền sở hữu miền Internet (đảo ngược)
+    làm cơ sở cho thẩm quyền của trình cung cấp của mình. Vì đề xuất này cũng đúng đối với tên gói
+    Android, bạn có thể định nghĩa thẩm quyền trình cung cấp của mình là phần mở rộng của tên
+    gói chứa trình cung cấp. Ví dụ, nếu tên gói Android là
+    <code>com.example.&lt;appname&gt;</code>, bạn nên cấp cho trình cung cấp của mình
+    thẩm quyền <code>com.example.&lt;appname&gt;.provider</code>.
+</p>
+<h3>Thiết kế một cấu trúc đường dẫn</h3>
+<p>
+    Nhà phát triển thường tạo URI nội dung từ thẩm quyền bằng cách nối các đường dẫn trỏ đến
+    các bảng riêng lẻ. Ví dụ, nếu bạn có hai bảng <em>table1</em> và
+    <em>table2</em>, bạn kết hợp thẩm quyền từ ví dụ trước để tạo ra
+    các URI nội dung
+    <code>com.example.&lt;appname&gt;.provider/table1</code> và
+    <code>com.example.&lt;appname&gt;.provider/table2</code>. Các đường dẫn
+    không bị giới hạn ở một phân đoạn duy nhất, và không cần phải có một bảng cho từng cấp của đường dẫn.
+</p>
+<h3>Xử lý ID URI nội dung</h3>
+<p>
+    Theo quy ước, các trình cung cấp cho phép truy cập một hàng đơn trong một bảng bằng cách chấp nhận một URI nội dung
+    có một giá trị ID cho hàng đó ở cuối URI. Cũng theo quy ước, các trình cung cấp sẽ so khớp
+    giá trị ID với cột <code>_ID</code> của bảng, và thực hiện truy cập yêu cầu đối với
+    hàng trùng khớp.
+</p>
+<p>
+    Quy ước này tạo điều kiện cho một kiểu mẫu thiết kế chung cho các ứng dụng truy cập một trình cung cấp. Ứng dụng
+    tiến hành truy vấn đối với trình cung cấp và hiển thị kết quả {@link android.database.Cursor}
+    trong một {@link android.widget.ListView} bằng cách sử dụng {@link android.widget.CursorAdapter}.
+    Định nghĩa {@link android.widget.CursorAdapter} yêu cầu một trong các cột trong
+    {@link android.database.Cursor} phải là <code>_ID</code>
+</p>
+<p>
+    Sau đó, người dùng chọn một trong các hàng được hiển thị từ UI để xem hoặc sửa đổi
+    dữ liệu. Ứng dụng sẽ nhận được hàng tương ứng từ {@link android.database.Cursor} làm nền cho
+    {@link android.widget.ListView}, nhận giá trị <code>_ID</code> cho hàng này, nối nó với
+    URI nội dung, và gửi yêu cầu truy cập tới trình cung cấp. Sau đó, trình cung cấp có thể thực hiện
+    truy vấn hoặc sửa đổi đối với chính xác hàng mà người dùng đã chọn.
+</p>
+<h3>Kiểu mẫu URI nội dung</h3>
+<p>
+    Để giúp bạn chọn hành động nào sẽ thực hiện cho URI nội dung đến, API của trình cung cấp sẽ bao gồm
+    lớp thuận tiện {@link android.content.UriMatcher}, nó ánh xạ "kiểu mẫu" URI nội dung với
+    các giá trị số nguyên. Bạn có thể sử dụng các giá trị số nguyên trong một câu lệnh <code>switch</code> mà chọn
+    hành động mong muốn cho URI nội dung hoặc URI mà khớp với một kiểu mẫu cụ thể.
+</p>
+<p>
+    Kiểu mẫu URI nội dung sẽ so khớp các URI nội dung bằng cách sử dụng ký tự đại diện:
+</p>
+    <ul>
+        <li>
+            <strong><code>*</code>:</strong> Khớp một xâu ký tự hợp lệ bất kỳ với chiều dài bất kỳ.
+        </li>
+        <li>
+            <strong><code>#</code>:</strong> Khớp một xâu ký tự số có chiều dài bất kỳ.
+        </li>
+    </ul>
+<p>
+    Lấy một ví dụ về thiết kế và tạo mã xử lý URI nội dung, hãy xét một trình cung cấp có
+    thẩm quyền <code>com.example.app.provider</code> mà nhận ra các URI nội dung
+    trỏ đến các bảng sau:
+</p>
+<ul>
+    <li>
+        <code>content://com.example.app.provider/table1</code>: Một bảng gọi là <code>table1</code>.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset1</code>: Một bảng gọi là
+        <code>dataset1</code>.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset2</code>: Một bảng gọi là
+        <code>dataset2</code>.
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table3</code>: Một bảng gọi là <code>table3</code>.
+    </li>
+</ul>
+<p>
+    Trình cung cấp cũng nhận ra những URI nội dung này nếu chúng có một ID hàng được nối kèm, như
+    ví dụ <code>content://com.example.app.provider/table3/1</code> đối với hàng được nhận biết bởi
+    <code>1</code> trong <code>table3</code>.
+</p>
+<p>
+    Sẽ có thể có các kiểu mẫu URI nội dung sau:
+</p>
+<dl>
+    <dt>
+        <code>content://com.example.app.provider/*</code>
+    </dt>
+    <dd>
+        Khớp với bất kỳ URI nội dung nào trong trình cung cấp.
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table2/*</code>:
+    </dt>
+    <dd>
+        Khớp với một URI nội dung cho các bảng <code>dataset1</code>
+        và <code>dataset2</code>, nhưng không khớp với URI nội dung cho <code>table1</code> hoặc 
+        <code>table3</code>.
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table3/#</code>: Khớp với một URI nội dung
+        cho các hàng đơn trong <code>table3</code>, chẳng hạn như
+        <code>content://com.example.app.provider/table3/6</code> đối với hàng được xác định bởi
+        <code>6</code>.
+    </dt>
+</dl>
+<p>
+    Đoạn mã HTML sau cho biết cách hoạt động của các phương pháp trong {@link android.content.UriMatcher}.
+    Đoạn mã này xử lý các URI cho toàn bộ một bảng khác với URI cho một
+    hàng đơn, bằng cách sử dụng mẫu hình URI nội dung
+    <code>content://&lt;authority&gt;/&lt;path&gt;</code> cho các bảng, và
+    <code>content://&lt;authority&gt;/&lt;path&gt;/&lt;id&gt;</code> cho các hàng đơn.
+</p>
+<p>
+    Phương pháp {@link android.content.UriMatcher#addURI(String, String, int) addURI()} ánh xạ một
+    thẩm quyền và đường dẫn tới một giá trị số nguyên. Phương pháp {@link android.content.UriMatcher#match(Uri)
+    match()} trả về giá trị số nguyên cho một URI. Câu lệnh <code>switch</code> sẽ chọn
+    giữa truy vấn toàn bộ bảng và truy vấn cho một bản ghi đơn:
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider {
+...
+    // Creates a UriMatcher object.
+    private static final UriMatcher sUriMatcher;
+...
+    /*
+     * The calls to addURI() go here, for all of the content URI patterns that the provider
+     * should recognize. For this snippet, only the calls for table 3 are shown.
+     */
+...
+    /*
+     * Sets the integer value for multiple rows in table 3 to 1. Notice that no wildcard is used
+     * in the path
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3", 1);
+
+    /*
+     * Sets the code for a single row to 2. In this case, the "#" wildcard is
+     * used. "content://com.example.app.provider/table3/3" matches, but
+     * "content://com.example.app.provider/table3 doesn't.
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3/#", 2);
+...
+    // Implements ContentProvider.query()
+    public Cursor query(
+        Uri uri,
+        String[] projection,
+        String selection,
+        String[] selectionArgs,
+        String sortOrder) {
+...
+        /*
+         * Choose the table to query and a sort order based on the code returned for the incoming
+         * URI. Here, too, only the statements for table 3 are shown.
+         */
+        switch (sUriMatcher.match(uri)) {
+
+
+            // If the incoming URI was for all of table3
+            case 1:
+
+                if (TextUtils.isEmpty(sortOrder)) sortOrder = "_ID ASC";
+                break;
+
+            // If the incoming URI was for a single row
+            case 2:
+
+                /*
+                 * Because this URI was for a single row, the _ID value part is
+                 * present. Get the last path segment from the URI; this is the _ID value.
+                 * Then, append the value to the WHERE clause for the query
+                 */
+                selection = selection + "_ID = " uri.getLastPathSegment();
+                break;
+
+            default:
+            ...
+                // If the URI is not recognized, you should do some error handling here.
+        }
+        // call the code to actually do the query
+    }
+</pre>
+<p>
+    Một lớp khác, {@link android.content.ContentUris}, sẽ cung cấp các phương pháp thuận tiện để làm việc
+    với phần <code>id</code> của URI nội dung. Các lớp {@link android.net.Uri} và
+    {@link android.net.Uri.Builder} bao gồm các phương pháp thuận tiện cho việc phân tích các đối tượng
+    {@link android.net.Uri} hiện có và xây dựng các đối tượng mới.
+</p>
+
+<!-- Implementing the ContentProvider class -->
+<h2 id="ContentProvider">Triển khai Lớp Trình cung cấp Nội dung</h2>
+<p>
+    Thực thể  {@link android.content.ContentProvider} quản lý truy cập vào
+    một tập dữ liệu cấu trúc bằng cách xử lý yêu cầu từ các ứng dụng khác. Tất cả các dạng
+    truy cập cuối cùng đều gọi {@link android.content.ContentResolver}, sau đó nó gọi ra một phương pháp
+    cụ thể của {@link android.content.ContentProvider} để lấy quyền truy cập.
+</p>
+<h3 id="RequiredAccess">Phương pháp được yêu cầu</h3>
+<p>
+    Lớp tóm tắt {@link android.content.ContentProvider} sẽ định nghĩa sáu phương pháp tóm tắt
+    mà bạn phải triển khai như một phần lớp con cụ thể của mình. Tất cả những phương pháp này ngoại trừ
+    {@link android.content.ContentProvider#onCreate() onCreate()} đều được gọi ra bởi một ứng dụng máy khách
+    đang cố truy cập trình cung cấp nội dung của bạn:
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+        query()}
+    </dt>
+    <dd>
+        Truy xuất dữ liệu từ trình cung cấp của bạn. Sử dụng các tham đối để chọn bảng để
+        truy vấn, các hàng và cột để trả về, và thứ tự sắp xếp của kết quả.
+        Trả về dữ liệu như một đối tượng {@link android.database.Cursor}.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}
+    </dt>
+    <dd>
+        Chèn một hàng mới vào trình cung cấp của bạn. Sử dụng các tham đối để lựa chọn
+        bảng đích và nhận các giá trị cột để sử dụng. Trả về một URI nội dung cho
+        hàng mới chèn.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+        update()}
+    </dt>
+    <dd>
+        Cập nhật các hàng hiện tại trong trình cung cấp của bạn. Sử dụng các tham đối để lựa chọn bảng và hàng
+        để cập nhật và nhận các giá trị cột được cập nhật. Trả về số hàng được cập nhật.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+    </dt>
+    <dd>
+        Xóa hàng khỏi trình cung cấp của bạn. Sử dụng các tham đối để lựa chọn bảng và các hàng
+        cần xóa. Trả về số hàng được xóa.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        Trả về kiểu MIME tương ứng với một URI nội dung. Phương pháp này được mô tả chi tiết hơn
+        trong phần <a href="#MIMETypes">Triển khai Kiểu MIME của Trình cung cấp Nội dung</a>.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#onCreate() onCreate()}
+    </dt>
+    <dd>
+        Khởi tạo trình cung cấp của bạn. Hệ thống Android sẽ gọi ra phương pháp này ngay lập tức sau khi nó
+        tạo trình cung cấp của bạn. Để ý rằng trình cung cấp của bạn không được tạo cho đến khi đối tượng
+        {@link android.content.ContentResolver} cố truy cập nó.
+    </dd>
+</dl>
+<p>
+    Để ý rằng những phương pháp này có cùng chữ ký như các phương pháp
+    {@link android.content.ContentResolver} được đặt tên như nhau.
+</p>
+<p>
+    Việc bạn triển khai những phương pháp này nên xét tới các nội dung sau:
+</p>
+<ul>
+    <li>
+        Tất cả phương pháp này ngoại trừ {@link android.content.ContentProvider#onCreate() onCreate()}
+        đều có thể được gọi đồng thời bằng nhiều luồng, vì thế chúng phải an toàn đối với luồng. Để tìm hiểu
+        thêm về nhiều luồng, hãy xem chủ đề
+        <a href="{@docRoot}guide/components/processes-and-threads.html">
+        Tiến trình và Luồng</a>.
+    </li>
+    <li>
+        Tránh thực hiện những thao tác dài trong {@link android.content.ContentProvider#onCreate()
+        onCreate()}. Hoãn các tác vụ khởi tạo tới khi chúng thực sự cần thiết.
+        Phần <a href="#OnCreate">Triển khai phương pháp onCreate()</a>
+        sẽ bàn kỹ hơn về vấn đề này.
+    </li>
+    <li>
+        Mặc dù bạn phải triển khai những phương pháp này, mã của bạn không nhất thiết phải làm gì ngoại trừ việc
+        trả về kiểu dữ liệu kỳ vọng. Ví dụ, bạn có thể muốn ngăn những ứng dụng khác
+        chèn dữ liệu vào một số bảng. Để làm điều này, bạn có thể bỏ qua lệnh gọi tới
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} và trả về
+        0.
+    </li>
+</ul>
+<h3 id="Query">Triển khai phương pháp query()</h3>
+<p>
+    Phương pháp
+    {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()} phải trả về một đối tượng {@link android.database.Cursor}, nếu không nó sẽ thất bại
+, đưa ra một lỗi {@link java.lang.Exception}. Nếu bạn đang sử dụng một cơ sở dữ liệu SQLite làm kho lưu trữ dữ liệu của mình
+, bạn có thể chỉ cần trả về {@link android.database.Cursor} được trả về bởi một trong các phương pháp
+    <code>query()</code> của lớp {@link android.database.sqlite.SQLiteDatabase}.
+    Nếu truy vấn không khớp với bất kỳ hàng nào, bạn nên trả về một thực thể  {@link android.database.Cursor}
+    có phương pháp {@link android.database.Cursor#getCount()} trả về 0.
+    Bạn chỉ nên trả về <code>null</code> nếu đã xảy ra một lỗi nội bộ trong tiến trình truy vấn.
+</p>
+<p>
+    Nếu bạn không đang sử dụng một cơ sở dữ liệu SQLite làm kho lưu trữ dữ liệu của mình, hãy sử dụng một trong các lớp con cụ thể
+    của {@link android.database.Cursor}. Ví dụ, lớp {@link android.database.MatrixCursor} sẽ triển khai
+    một con chạy trong đó mỗi hàng là một mảng của {@link java.lang.Object}. Với lớp này,
+    hãy sử dụng {@link android.database.MatrixCursor#addRow(Object[]) addRow()} để thêm một hàng mới.
+</p>
+<p>
+    Nhớ rằng hệ thống Android phải có thể giao tiếp với {@link java.lang.Exception}
+    qua các ranh giới tiến trình. Android có thể làm vậy cho những trường hợp ngoại lệ sau, điều này có thể hữu ích
+    trong xử lý lỗi truy vấn:
+</p>
+<ul>
+    <li>
+        {@link java.lang.IllegalArgumentException} (Bạn có thể chọn đưa ra lỗi này nếu trình cung cấp của bạn
+        nhận một URI nội dung không hợp lệ)
+    </li>
+    <li>
+        {@link java.lang.NullPointerException}
+    </li>
+</ul>
+<h3 id="Insert">Triển khai phương pháp insert()</h3>
+<p>
+    Phương pháp {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} sẽ thêm một
+    hàng mới vào bảng phù hợp bằng cách sử dụng các giá trị trong tham đối {@link android.content.ContentValues}
+. Nếu tên cột không nằm trong tham đối {@link android.content.ContentValues}, bạn có thể
+    muốn cung cấp một giá trị mặc định cho nó hoặc trong mã trình cung cấp của bạn hoặc trong sơ đồ
+    cơ sở dữ liệu của bạn.
+</p>
+<p>
+    Phương pháp này sẽ trả về URI nội dung cho hàng mới. Để xây dựng điều này, hãy nối
+    giá trị <code>_ID</code> của hàng mới (hay khóa chính khác) với URI nội dung của bảng bằng cách sử dụng
+    {@link android.content.ContentUris#withAppendedId(Uri, long) withAppendedId()}.
+</p>
+<h3 id="Delete">Triển khai phương pháp delete()</h3>
+<p>
+    Phương pháp {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} 
+    không cần phải xóa hàng thực chất khỏi kho lưu trữ dữ liệu của bạn. Nếu bạn đang sử dụng một trình điều hợp đồng bộ
+    với trình cung cấp của mình, bạn nên cân nhắc đánh dấu một hàng đã xóa
+    bằng cờ "xóa" thay vì gỡ bỏ hàng một cách hoàn toàn. Trình điều hợp đồng bộ có thể
+    kiểm tra các hàng đã xóa và gỡ bỏ chúng khỏi máy chủ trước khi xóa chúng khỏi trình cung cấp.
+</p>
+<h3 id="Update">Triển khai phương pháp update()</h3>
+<p>
+    Phương pháp {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+    update()} lấy cùng tham đối {@link android.content.ContentValues} được sử dụng bởi
+    {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}, và
+    cùng tham đối <code>selection</code> và <code>selectionArgs</code> được sử dụng bởi
+    {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} và 
+    {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()}. Điều này có thể cho phép bạn sử dụng lại mã giữa những phương pháp này.
+</p>
+<h3 id="OnCreate">Triển khai phương pháp onCreate()</h3>
+<p>
+    Hệ thống Android sẽ gọi {@link android.content.ContentProvider#onCreate()
+    onCreate()} khi nó khởi động trình cung cấp. Bạn chỉ nên thực hiện các tác vụ khởi tạo chạy nhanh
+    trong phương pháp này, và hoãn việc tạo cơ sở dữ liệu và nạp dữ liệu tới khi trình cung cấp thực sự
+    nhận được yêu cầu cho dữ liệu. Nếu bạn thực hiện các tác vụ dài trong
+    {@link android.content.ContentProvider#onCreate() onCreate()}, bạn sẽ làm chậm lại
+    quá trình khởi động của trình cung cấp. Đến lượt mình, điều này sẽ làm chậm hồi đáp từ trình cung cấp đối với các
+    ứng dụng khác.
+</p>
+<p>
+    Ví dụ, nếu bạn đang sử dụng một cơ sở dữ liệu SQLite, bạn có thể tạo
+    một đối tượng {@link android.database.sqlite.SQLiteOpenHelper} mới trong
+    {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()},
+    rồi tạo các bảng SQL lần đầu tiên khi bạn mở cơ sở dữ liệu. Để tạo điều kiện cho điều này,
+    lần đầu tiên bạn gọi {@link android.database.sqlite.SQLiteOpenHelper#getWritableDatabase
+    getWritableDatabase()}, nó sẽ tự động gọi ra phương pháp
+    {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()}.
+</p>
+<p>
+    Hai đoạn mã HTML sau minh họa tương tác giữa
+    {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} và
+    {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()}. Đoạn mã HTML đầu tiên là triển khai
+    {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()}:
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider
+
+    /*
+     * Defines a handle to the database helper object. The MainDatabaseHelper class is defined
+     * in a following snippet.
+     */
+    private MainDatabaseHelper mOpenHelper;
+
+    // Defines the database name
+    private static final String DBNAME = "mydb";
+
+    // Holds the database object
+    private SQLiteDatabase db;
+
+    public boolean onCreate() {
+
+        /*
+         * Creates a new helper object. This method always returns quickly.
+         * Notice that the database itself isn't created or opened
+         * until SQLiteOpenHelper.getWritableDatabase is called
+         */
+        mOpenHelper = new MainDatabaseHelper(
+            getContext(),        // the application context
+            DBNAME,              // the name of the database)
+            null,                // uses the default SQLite cursor
+            1                    // the version number
+        );
+
+        return true;
+    }
+
+    ...
+
+    // Implements the provider's insert method
+    public Cursor insert(Uri uri, ContentValues values) {
+        // Insert code here to determine which table to open, handle error-checking, and so forth
+
+        ...
+
+        /*
+         * Gets a writeable database. This will trigger its creation if it doesn't already exist.
+         *
+         */
+        db = mOpenHelper.getWritableDatabase();
+    }
+}
+</pre>
+<p>
+    Đoạn mã HTML tiếp theo là triển khai
+    {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()}, bao gồm một lớp trình trợ giúp:
+</p>
+<pre class="prettyprint">
+...
+// A string that defines the SQL statement for creating a table
+private static final String SQL_CREATE_MAIN = "CREATE TABLE " +
+    "main " +                       // Table's name
+    "(" +                           // The columns in the table
+    " _ID INTEGER PRIMARY KEY, " +
+    " WORD TEXT"
+    " FREQUENCY INTEGER " +
+    " LOCALE TEXT )";
+...
+/**
+ * Helper class that actually creates and manages the provider's underlying data repository.
+ */
+protected static final class MainDatabaseHelper extends SQLiteOpenHelper {
+
+    /*
+     * Instantiates an open helper for the provider's SQLite data repository
+     * Do not do database creation and upgrade here.
+     */
+    MainDatabaseHelper(Context context) {
+        super(context, DBNAME, null, 1);
+    }
+
+    /*
+     * Creates the data repository. This is called when the provider attempts to open the
+     * repository and SQLite reports that it doesn't exist.
+     */
+    public void onCreate(SQLiteDatabase db) {
+
+        // Creates the main table
+        db.execSQL(SQL_CREATE_MAIN);
+    }
+}
+</pre>
+
+
+<!-- Implementing ContentProvider MIME Types -->
+<h2 id="MIMETypes">Triển khai Kiểu MIME của Trình cung cấp Nội dung</h2>
+<p>
+    Lớp {@link android.content.ContentProvider} có hai phương pháp để trả về các kiểu MIME:
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        Một trong các phương pháp được yêu cầu mà bạn phải triển khai cho bất kỳ trình cung cấp nào.
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    </dt>
+    <dd>
+        Một phương pháp mà bạn được dự tính sẽ triển khai nếu trình cung cấp của bạn cung cấp tệp.
+    </dd>
+</dl>
+<h3 id="TableMIMETypes">Kiểu MIME cho bảng</h3>
+<p>
+    Phương pháp {@link android.content.ContentProvider#getType(Uri) getType()} trả về một
+    {@link java.lang.String} theo định dạng MIME mà mô tả kiểu dữ liệu được trả về bởi tham đối
+    URI nội dung. Tham đối {@link android.net.Uri} có thể là một mẫu hình thay vì một URI cụ thể;
+    trong trường hợp này, bạn nên trả về kiểu dữ liệu được liên kết với các URI nội dung mà khớp với
+    mẫu hình đó.
+</p>
+<p>
+    Đối với các kiểu dữ liệu phổ biến như văn bản, HTML, hay JPEG,
+    {@link android.content.ContentProvider#getType(Uri) getType()} sẽ trả về
+    kiểu MIME tiêu chuẩn cho dữ liệu đó. Một danh sách đầy đủ về những kiểu tiêu chuẩn này có sẵn trên trang web
+    <a href="http://www.iana.org/assignments/media-types/index.htm">IANA MIME Media Types</a>
+.
+</p>
+<p>
+    Đối với các URI nội dung mà trỏ tới một hàng hoặc các hàng của bảng dữ liệu,
+    {@link android.content.ContentProvider#getType(Uri) getType()} sẽ trả về
+    một kiểu MIME theo định dạng MIME riêng cho nhà cung cấp của Android:
+</p>
+<ul>
+    <li>
+        Bộ phận kiểu: <code>vnd</code>
+    </li>
+    <li>
+        Bộ phận kiểu con:
+        <ul>
+            <li>
+    Nếu mẫu hình URI áp dụng cho một hàng đơn: <code>android.cursor.<strong>item</strong>/</code>
+            </li>
+            <li>
+    Nếu mẫu hình URI áp dụng cho nhiều hơn một hàng: <code>android.cursor.<strong>dir</strong>/</code>
+            </li>
+        </ul>
+    </li>
+    <li>
+        Bộ phận riêng theo trình cung cấp: <code>vnd.&lt;name&gt;</code>.<code>&lt;type&gt;</code>
+        <p>
+            Bạn cung cấp <code>&lt;name&gt;</code> và <code>&lt;type&gt;</code>.
+            Giá trị <code>&lt;name&gt;</code> nên là giá trị duy nhất toàn cục,
+            và giá trị <code>&lt;type&gt;</code> nên là giá trị duy nhất đối với mẫu hình
+            URI tương ứng. Một lựa chọn hay cho <code>&lt;name&gt;</code> đó là tên công ty của bạn hoặc
+            một thành phần nào đó trong tên gói Android cho ứng dụng của bạn. Một lựa chọn hay cho
+            <code>&lt;type&gt;</code> đó là một xâu xác định bảng được liên kết với
+            URI.
+        </p>
+
+    </li>
+</ul>
+<p>
+    Ví dụ, nếu thẩm quyền của một trình cung cấp là
+    <code>com.example.app.provider</code>, và nó làm hiện ra một bảng có tên
+    <code>table1</code> thì kiểu MIME cho nhiều hàng trong <code>table1</code> là:
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.com.example.provider.table1
+</pre>
+<p>
+    Đối với một hàng đơn của <code>table1</code>, kiểu MIME là:
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.com.example.provider.table1
+</pre>
+<h3 id="FileMIMETypes">Kiểu MIME cho tệp</h3>
+<p>
+    Nếu trình cung cấp của bạn cung cấp tệp, hãy triển khai
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}.
+    Phương pháp này sẽ trả về một mảng {@link java.lang.String} của kiểu MIME đối với các tệp mà trình cung cấp của bạn
+    có thể trả về cho một URI nội dung cho trước. Bạn nên lọc các kiểu MIME mà mình cung cấp bằng tham đối bộ lọc
+    kiểu MIME, sao cho bạn chỉ trả về những kiểu MIME mà máy khách muốn xử lý.
+</p>
+<p>
+    Ví dụ, xét một trình cung cấp hình ảnh dưới dạng tệp có định dạng <code>.jpg</code>,
+    <code>.png</code> và <code>.gif</code>.
+    Nếu một ứng dụng gọi {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()} bằng xâu bộ lọc <code>image/*</code> (
+    mà là một "hình ảnh"),
+    khi đó phương pháp {@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()} sẽ trả về mảng:
+</p>
+<pre>
+{ &quot;image/jpeg&quot;, &quot;image/png&quot;, &quot;image/gif&quot;}
+</pre>
+<p>
+    Nếu ứng dụng chỉ quan tâm đến các tệp <code>.jpg</code>, vậy nó có thể gọi
+    {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()} bằng xâu bộ lọc <code>*\/jpeg</code>, và
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()} sẽ trả về:
+<pre>
+{&quot;image/jpeg&quot;}
+</pre>
+<p>
+    Nếu trình cung cấp của bạn không cung cấp bất kỳ kiểu MIME nào được yêu cầu trong xâu bộ lọc,
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    sẽ trả về <code>null</code>.
+</p>
+
+
+<!--  Implementing a Contract Class -->
+<h2 id="ContractClass">Triển khai một Lớp Hợp đồng</h2>
+<p>
+    Lớp hợp đồng là một lớp <code>public final</code> chứa các định nghĩa hằng số cho
+    URI, tên cột, kiểu MIME, và siêu dữ liệu khác liên quan tới trình cung cấp. Lớp này
+    sẽ thiết lập một hợp đồng giữa trình cung cấp và các ứng dụng khác bằng cách đảm bảo rằng trình cung cấp
+    có thể được truy cập đúng ngay cả khi có thay đổi về giá trị thực sự của URI, tên cột,
+    v.v.
+</p>
+<p>
+    Lớp hợp đồng cũng giúp các nhà phát triển vì chúng thường có tên dễ nhớ cho các hằng số của mình,
+    vì vậy các nhà phát triển ít có khả năng sử dụng các giá trị không đúng cho tên cột hay URI hơn. Do đó là một
+    lớp, nó có thể chứa tài liệu Javadoc. Các môi trường phát triển tích hợp như
+    Eclipse có thể tự động điền các tên hằng số từ lớp hợp đồng và hiển thị Javadoc cho các
+    hằng số đó.
+</p>
+<p>
+    Các nhà phát triển không thể truy cập tệp lớp của lớp hợp đồng từ ứng dụng của mình, nhưng họ có thể
+    lặng lẽ biên dịch nó vào ứng dụng của họ từ một tệp <code>.jar</code> mà bạn cung cấp.
+</p>
+<p>
+    Lớp {@link android.provider.ContactsContract} và các lớp lồng nhau của nó là các ví dụ về
+    lớp hợp đồng.
+</p>
+<h2 id="Permissions">Triển khai Quyền của Trình cung cấp Nội dung</h2>
+<p>
+    Quyền và truy cập đối với tất cả khía cạnh trong hệ thống Android được mô tả chi tiết trong
+    chủ đề <a href="{@docRoot}guide/topics/security/security.html">Bảo mật và Quyền</a>.
+    Chủ đề <a href="{@docRoot}guide/topics/data/data-storage.html">Kho lưu trữ Dữ liệu</a> cũng
+    mô tả bảo mật và các quyền có hiệu lực cho nhiều loại kho lưu trữ khác nhau.
+    Nói tóm lại, các điểm quan trọng là:
+</p>
+<ul>
+    <li>
+        Theo mặc định, các tệp dữ liệu được lưu trữ trên bộ nhớ trong của thiết bị là dữ liệu riêng tư
+        đối với ứng dụng và trình cung cấp của bạn.
+    </li>
+    <li>
+        Các cơ sở dữ liệu {@link android.database.sqlite.SQLiteDatabase} mà bạn tạo là dữ liệu riêng tư
+        đối với ứng dụng và trình cung cấp của bạn.
+    </li>
+    <li>
+        Theo mặc định, các tệp dữ liệu mà bạn lưu vào bộ nhớ ngoài là dữ liệu <em>công khai</em> và
+        <em>đọc được công khai</em>. Bạn không thể sử dụng một trình cung cấp nội dung để hạn chế truy cập vào các tệp trong
+        bộ nhớ ngoài vì các ứng dụng khác có thể sử dụng lệnh gọi API khác để đọc và ghi chúng.
+    </li>
+    <li>
+        Các lệnh gọi phương pháp để mở hoặc tạo tệp hoặc cơ sở dữ liệu SQLite trên bộ nhớ trong
+        của thiết bị của bạn có thể cấp quyền truy cập đọc và ghi cho tất cả ứng dụng khác. Nếu bạn
+        sử dụng một tệp hoặc cơ sở dữ liệu nội bộ làm kho lưu giữ của trình cung cấp của mình, và bạn cấp quyền truy cập
+        "đọc được công khai" hoặc "ghi được công khai", quyền mà bạn đặt cho trình cung cấp của mình trong
+        bản kê khai của nó sẽ không bảo vệ dữ liệu của bạn. Quyền truy cập mặc định cho các tệp và cơ sở dữ liệu trong
+        bộ nhớ trong là "riêng tư", và đối với kho lưu giữ của trình cung cấp của mình, bạn không nên thay đổi điều này.
+    </li>
+</ul>
+<p>
+    Nếu bạn muốn sử dụng các quyền của trình cung cấp nội dung để kiểm soát truy cập vào dữ liệu của mình, khi đó bạn nên
+    lưu trữ dữ liệu của mình trong các tệp nội bộ, cơ sở dữ liệu SQLite, hoặc "đám mây" (ví dụ,
+    trên một máy chủ từ xa), và bạn nên giữ các tệp và cơ sở dữ liệu riêng tư cho ứng dụng của mình.
+</p>
+<h3>Triển khai quyền</h3>
+<p>
+    Tất cả ứng dụng đều có thể đọc từ hoặc ghi vào trình cung cấp của bạn, ngay cả khi dữ liệu liên quan
+    là dữ liệu riêng tư, vì theo mặc định, trình cung cấp của bạn không được đặt quyền. Để thay đổi điều này,
+    hãy đặt quyền cho trình cung cấp của bạn trong tệp bản kê khai của bạn bằng cách sử dụng các thuộc tính hoặc phần tử
+    con của phần tử <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code>. Bạn có thể đặt quyền áp dụng cho toàn bộ trình cung cấp,
+    hoặc cho một số bảng, hoặc thậm chí cho một số bản ghi, hoặc cả ba.
+</p>
+<p>
+    Bạn định nghĩa các quyền cho trình cung cấp của bạn bằng một hoặc nhiều phần tử
+    <code><a href="{@docRoot}guide/topics/manifest/permission-element.html">
+    &lt;permission&gt;</a></code> trong tệp bản kê khai của bạn. Để
+    quyền là duy nhất cho trình cung cấp của bạn, hãy sử dụng phạm vi kiểu Java cho thuộc tính
+    <code><a href="{@docRoot}guide/topics/manifest/permission-element.html#nm">
+    android:name</a></code>. Ví dụ, đặt tên quyền đọc
+    <code>com.example.app.provider.permission.READ_PROVIDER</code>.
+
+</p>
+<p>
+    Danh sách sau liệt kê phạm vi các quyền của trình cung cấp, bắt đầu với các quyền
+    áp dụng cho toàn bộ trình cung cấp rồi mới đến các quyền chi tiết hơn.
+    Các quyền chi tiết hơn được ưu tiên so với các quyền có phạm vi rộng hơn:
+</p>
+<dl>
+    <dt>
+        Quyền đọc-ghi đơn lẻ ở cấp trình cung cấp
+    </dt>
+    <dd>
+        Một quyền kiểm soát cả quyền truy cập đọc và ghi cho toàn bộ trình cung cấp, được quy định
+        bằng thuộc tính <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code> của phần tử
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>.
+    </dd>
+    <dt>
+        Quyền đọc ghi tách riêng ở cấp độ trình cung cấp
+    </dt>
+    <dd>
+        Một quyền đọc và một quyền ghi cho toàn bộ trình cung cấp. Bạn chỉ định chúng
+        bằng các thuộc tính <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+        android:readPermission</a></code> và
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+        android:writePermission</a></code> của phần tử
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>. Chúng được ưu tiên so với quyền được yêu cầu bởi
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code>.
+    </dd>
+    <dt>
+        Quyền ở cấp đường dẫn
+    </dt>
+    <dd>
+        Quyền đọc, ghi, hoặc đọc/ghi cho một URI nội dung trong trình cung cấp của bạn. Bạn chỉ định
+        từng URI mà bạn muốn kiểm soát bằng một phần tử con
+        <code><a href="{@docRoot}guide/topics/manifest/path-permission-element.html">
+        &lt;path-permission&gt;</a></code> của phần tử
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code>. Với mỗi một URI nội dung mà bạn chỉ định, bạn có thể chỉ định một
+        quyền đọc/ghi, quyền đọc, hoặc quyền ghi, hoặc cả ba. Quyền đọc và
+        quyền ghi được ưu tiên so với quyền đọc/ghi. Đồng thời, quyền ở cấp độ đường dẫn
+        sẽ được ưu tiên so với quyền ở cấp độ trình cung cấp.
+    </dd>
+    <dt>
+        Quyền tạm thời
+    </dt>
+    <dd>
+        Là cấp độ quyền cho phép truy cập tạm thời vào một ứng dụng, ngay cả khi ứng dụng
+        không có các quyền thường được yêu cầu. Tính năng truy cập
+        tạm thời làm giảm số quyền mà một ứng dụng phải yêu cầu trong
+        bản kê khai của mình. Khi bạn dùng đến các quyền tạm thời, những ứng dụng duy nhất mà cần
+        quyền "lâu dài" cho trình cung cấp của bạn là những ứng dụng liên tục truy cập tất cả
+        dữ liệu của bạn.
+        <p>
+            Xét các quyền bạn cần để triển khai một trình cung cấp và ứng dụng e-mail khi bạn
+            muốn cho phép một ứng dụng trình xem ảnh bên ngoài hiển thị các tài liệu đính kèm dạng ảnh từ trình cung cấp
+            của bạn. Để cấp cho trình xem ảnh quyền truy cập cần thiết mà không cần yêu cầu quyền,
+            hãy thiết lập các quyền tạm thời cho URI nội dung đối với ảnh. Thiết kế ứng dụng e-mail của bạn sao cho
+            khi người dùng muốn hiển thị một ảnh, ứng dụng sẽ gửi một ý định chứa URI nội dung
+            của ảnh và cờ cho phép tới trình xem ảnh. Trình xem ảnh khi đó có thể
+            truy vấn trình cung cấp e-mail của bạn để truy xuất ảnh, ngay cả khi trình xem không
+            có quyền đọc bình thường cho trình cung cấp của bạn.
+        </p>
+        <p>
+            Để sử dụng các quyền tạm thời, hoặc đặt thuộc tính
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> của phần tử
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> hoặc thêm một hoặc nhiều phần tử con
+            <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> vào phần tử
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> của bạn. Nếu bạn sử dụng các quyền tạm thời, bạn phải gọi
+            {@link android.content.Context#revokeUriPermission(Uri, int)
+            Context.revokeUriPermission()} bất cứ khi nào bạn gỡ bỏ hỗ trợ cho một URI nội dung khỏi
+            trình cung cấp của mình, và URI nội dung đó sẽ được liên kết với một quyền tạm thời.
+        </p>
+        <p>
+            Giá trị của thuộc tính sẽ xác định trình cung cấp của bạn được cho phép truy cập bao nhiêu.
+            Nếu thuộc tính được đặt thành <code>true</code>, khi đó hệ thống sẽ cấp quyền tạm thời
+            cho toàn bộ trình cung cấp của bạn, khống chế mọi quyền khác mà được yêu cầu bởi
+            quyền ở cấp độ trình cung cấp hoặc cấp độ đường dẫn của bạn.
+        </p>
+        <p>
+            Nếu cờ này được đặt thành <code>false</code>, khi đó bạn phải thêm các phần tử con
+            <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> vào phần tử
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> của mình. Mỗi phần tử con lại quy định URI nội dung hoặc
+            các URI mà truy cập tạm thời được cấp cho.
+        </p>
+        <p>
+            Để ủy quyền truy cập tạm thời cho một ứng dụng, ý định phải chứa
+            cờ {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION} hoặc cờ
+            {@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION}, hoặc cả hai. Những quyền
+            này được đặt bằng phương pháp {@link android.content.Intent#setFlags(int) setFlags()}.
+        </p>
+        <p>
+            Nếu thuộc tính <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> không có mặt, giả sử rằng nó là
+            <code>false</code>.
+        </p>
+    </dd>
+</dl>
+
+
+
+<!-- The Provider Element -->
+<h2 id="ProviderElement">Phần tử &lt;provider&gt;</h2>
+<p>
+    Như các thành phần {@link android.app.Activity} và {@link android.app.Service},
+    một lớp con của {@link android.content.ContentProvider}
+    phải được định nghĩa trong tệp bản kê khai cho ứng dụng của nó bằng cách sử dụng phần tử
+    <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code>. Hệ thống Android nhận thông tin sau từ
+    phần tử:
+<dl>
+    <dt>
+        Thẩm quyền
+        (<a href="{@docRoot}guide/topics/manifest/provider-element.html#auth">{@code
+        android:authorities}</a>)
+    </dt>
+    <dd>
+        Các tên biểu tượng nhận biết toàn bộ trình cung cấp trong hệ thống. Thuộc tính
+        này được mô tả chi tiết hơn trong phần
+        <a href="#ContentURI">Thiết kế URI Nội dung</a>.
+    </dd>
+    <dt>
+        Tên lớp của trình cung cấp
+        (<code>
+<a href="{@docRoot}guide/topics/manifest/provider-element.html#nm">android:name</a>
+        </code>)
+    </dt>
+    <dd>
+        Lớp triển khai {@link android.content.ContentProvider}. Lớp này
+        được mô tả chi tiết hơn trong phần
+        <a href="#ContentProvider">Triển khai Lớp Trình cung cấp Nội dung</a>.
+    </dd>
+    <dt>
+        Quyền
+    </dt>
+    <dd>
+        Những thuộc tính quy định quyền mà các ứng dụng khác phải có để truy cập
+        dữ liệu của trình cung cấp:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+                android:grantUriPermssions</a></code>: Cờ quyền tạm thời.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+                android:permission</a></code>: Quyền đọc/ghi đơn lẻ đối với toàn bộ trình cung cấp.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+                android:readPermission</a></code>: Quyền đọc đối với toàn bộ trình cung cấp.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+                android:writePermission</a></code>: Quyền ghi đối với toàn bộ trình cung cấp.
+            </li>
+        </ul>
+        <p>
+            Các quyền và thuộc tính tương ứng của chúng được mô tả chi tiết hơn trong
+            phần
+            <a href="#Permissions">Triển khai Quyền của Trình cung cấp Nội dung</a>.
+        </p>
+    </dd>
+    <dt>
+        Thuộc tính khởi động và kiểm soát
+    </dt>
+    <dd>
+        Những thuộc tính này xác định cách và thời điểm hệ thống Android khởi động trình cung cấp, các
+        đặc tính tiến trình của trình cung cấp, và các thiết đặt về thời gian chạy:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#enabled">
+                android:enabled</a></code>: Cờ cho phép hệ thống khởi động trình cung cấp.
+            </li>
+              <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#exported">
+                android:exported</a></code>: Cờ cho phép các ứng dụng sử dụng trình cung cấp này.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#init">
+                android:initOrder</a></code>: Thứ tự mà trình cung cấp nên được khởi động,
+                so với các trình cung cấp khác trong cùng tiến trình.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#multi">
+                android:multiProcess</a></code>: Cờ cho phép hệ thống khởi động trình cung cấp
+                trong cùng tiến trình như máy khách gọi.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#proc">
+                android:process</a></code>: Tên của tiến trình mà trình cung cấp
+                nên chạy trong đó.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#sync">
+                android:syncable</a></code>: Cờ cho biết rằng dữ liệu của trình cung cấp sẽ được
+                đồng bộ với dữ liệu trên một máy chủ.
+            </li>
+        </ul>
+        <p>
+            Các thuộc tính được lập tài liệu theo dõi đầy đủ trong chủ đề hướng dẫn nhà phát triển đối với phần tử
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>
+.
+        </p>
+    </dd>
+    <dt>
+        Các thuộc tính thông tin
+    </dt>
+    <dd>
+        Một biểu tượng tùy chọn và nhãn cho trình cung cấp:
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#icon">
+                android:icon</a></code>: Một tài nguyên có thể vẽ chứa một biểu tượng cho trình cung cấp.
+                Biểu tượng xuất hiện bên cạnh nhãn của trình cung cấp trong danh sách ứng dụng trong
+                <em>Settings</em> &gt; <em>Apps</em> &gt; <em>All</em>.
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#label">
+                android:label</a></code>: Một nhãn thông tin mô tả trình cung cấp hoặc dữ liệu
+                của nó, hoặc cả hai. Nhãn xuất hiện trong danh sách ứng dụng trong
+                <em>Settings</em> &gt; <em>Apps</em> &gt; <em>All</em>.
+            </li>
+        </ul>
+        <p>
+            Các thuộc tính được lập tài liệu theo dõi đầy đủ trong chủ đề hướng dẫn nhà phát triển đối với phần tử
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>.
+        </p>
+    </dd>
+</dl>
+
+<!-- Intent Access -->
+<h2 id="Intents">Ý định và Truy cập Dữ liệu</h2>
+<p>
+    Các ứng dụng có thể gián tiếp truy cập một trình cung cấp nội dung bằng một {@link android.content.Intent}.
+    Ứng dụng không gọi bất kỳ phương pháp nào của {@link android.content.ContentResolver} hoặc
+    {@link android.content.ContentProvider}. Thay vào đó, nó sẽ gửi một ý định để bắt đầu một hoạt động,
+    đây thường là một bộ phận trong ứng dụng của chính trình cung cấp. Hoạt động đích phụ trách
+    truy xuất và hiển thị dữ liệu trong UI của nó. Tùy vào hành động trong ý định, hoạt động
+    đích cũng có thể nhắc người dùng thực hiện sửa đổi dữ liệu của trình cung cấp.
+    Một ý định cũng có thể chứa dữ liệu "phụ thêm" mà hoạt động đích hiển thị
+    trong UI; khi đó người dùng có tùy chọn thay đổi dữ liệu này trước khi sử dụng nó để sửa đổi
+    dữ liệu trong trình cung cấp.
+</p>
+<p>
+
+</p>
+<p>
+    Bạn có thể muốn sử dụng truy cập ý định để giúp đảm bảo toàn vẹn dữ liệu. Trình cung cấp của bạn có thể phụ thuộc vào
+    việc chèn, cập nhật và xóa dữ liệu theo lô-gic nghiệp vụ được quy định chặt chẽ. Trong
+    trường hợp như vậy, việc cho phép các ứng dụng khác trực tiếp sửa đổi dữ liệu của bạn có thể dẫn đến dữ liệu
+    không hợp lệ. Nếu bạn muốn các nhà phát triển sử dụng truy cập ý định, hãy đảm bảo lập tài liệu theo dõi nó thật kỹ.
+    Giải thích với họ tại sao truy cập ý định sử dụng UI ứng dụng của chính bạn lại tốt hơn là cố gắng sửa đổi
+    dữ liệu bằng mã của họ.
+</p>
+<p>
+    Việc xử lý một ý định đến nhằm sửa đổi dữ liệu của trình cung cấp của bạn không khác với
+    việc xử lý các ý định khác. Bạn có thể tìm hiểu về việc sử dụng ý định bằng cách đọc chủ đề
+    <a href="{@docRoot}guide/components/intents-filters.html">Ý định và Bộ lọc Ý định</a>.
+</p>
diff --git a/docs/html-intl/intl/vi/guide/topics/providers/content-providers.jd b/docs/html-intl/intl/vi/guide/topics/providers/content-providers.jd
new file mode 100644
index 0000000..0b02337
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/providers/content-providers.jd
@@ -0,0 +1,108 @@
+page.title=Trình cung cấp Nội dung
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<!-- In this document -->
+<h2>Chủ đề</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Nội dung Cơ bản về Trình cung cấp Nội dung</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+        Tạo một Trình cung cấp Nội dung</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/calendar-provider.html">Trình cung cấp Lịch</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/contacts-provider.html">Trình cung cấp Danh bạ</a>
+    </li>
+</ol>
+
+    <!-- Related Samples -->
+<h2>Các Mẫu Liên quan</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/ContactManager/index.html">
+            Ứng dụng Trình quản lý Danh bạ</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        "Con chạy (Danh bạ)"
+        </a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        "Con chạy (Điện thoại)"</a>
+        </li>
+        <li>
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+            Trình điều hợp Đồng bộ Mẫu</a>
+        </li>
+    </ol>
+</div>
+</div>
+<p>
+    Trình cung cấp nội dung quản lý truy cập vào một tập dữ liệu cấu trúc. Chúng gói gọn
+    dữ liệu và cung cấp các cơ chế để định nghĩa bảo mật dữ liệu. Trình cung cấp nội dung là
+    giao diện tiêu chuẩn kết nối dữ liệu trong một tiến trình với mã đang chạy trong một tiến trình khác.
+</p>
+<p>
+    Khi bạn truy cập dữ liệu trong một trình cung cấp nội dung, bạn sử dụng đối tượng
+    {@link android.content.ContentResolver} trong
+    {@link android.content.Context} của ứng dụng của bạn để giao tiếp với trình cung cấp như một máy khách.
+    Đối tượng {@link android.content.ContentResolver} giao tiếp với đối tượng trình cung cấp, một
+    thực thể của lớp triển khai {@link android.content.ContentProvider}. Đối tượng
+    trình cung cấp nhận các yêu cầu dữ liệu từ máy khách, thực hiện hành động được yêu cầu, và
+    trả về kết quả.
+</p>
+<p>
+    Bạn không cần phát triển trình cung cấp của chính mình nếu không có ý định chia sẻ dữ liệu của bạn với
+    các ứng dụng khác. Tuy nhiên, bạn cần phải có trình cung cấp của chính mình để cung cấp các gợi ý tìm kiếm tùy chỉnh
+    trong ứng dụng của chính bạn. Bạn cũng cần phải có trình cung cấp của chính mình nếu muốn sao chép và
+    dán dữ liệu hoặc tệp phức tạp từ ứng dụng của bạn sang các ứng dụng khác.
+</p>
+<p>
+    Bản thân Android bao gồm các trình cung cấp nội dung chuyên quản lý dữ liệu như âm thanh, video, hình ảnh và
+    thông tin liên lạc cá nhân. Bạn có thể thấy một số được liệt kê trong tài liệu
+    tham khảo cho gói
+    <code><a href="{@docRoot}reference/android/provider/package-summary.html">android.provider</a>
+    </code>. Với một số hạn chế, những trình cung cấp này có thể truy cập vào bất kỳ ứng dụng
+    Android nào.
+</p><p>
+    Các chủ đề sau mô tả chi tiết hơn về các trình cung cấp nội dung:
+</p>
+<dl>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Nội dung Cơ bản về Trình cung cấp Nội dung</a></strong>
+    </dt>
+    <dd>
+        Cách truy cập dữ liệu trong một trình cung cấp nội dung khi dữ liệu được tổ chức dưới dạng bảng.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+        Tạo một Trình cung cấp Nội dung</a></strong>
+    </dt>
+    <dd>
+        Cách tạo trình cung cấp nội dung của chính bạn.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+        Trình cung cấp Lịch</a></strong>
+    </dt>
+    <dd>
+        Cách truy cập Trình cung cấp Lịch mà là một bộ phận của nền tảng Android.
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/contacts-provider.html">
+        Trình cung cấp Danh bạ</a></strong>
+    </dt>
+    <dd>
+        Cách truy cập Trình cung cấp Danh bạ mà là một bộ phận của nền tảng Android.
+    </dd>
+</dl>
diff --git a/docs/html-intl/intl/vi/guide/topics/providers/document-provider.jd b/docs/html-intl/intl/vi/guide/topics/providers/document-provider.jd
new file mode 100644
index 0000000..30844d7
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/providers/document-provider.jd
@@ -0,0 +1,916 @@
+page.title=Khuôn khổ Truy cập Kho lưu trữ
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Trong tài liệu này
+ <a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
+        <span class="more">hiện nhiều hơn</span>
+        <span class="less" style="display:none">hiện ít hơn</span></a></h2>
+<ol id="toc44" class="hide-nested">
+    <li>
+        <a href="#overview">Tổng quan</a>
+    </li>
+    <li>
+        <a href="#flow">Dòng Điều khiển</a>
+    </li>
+    <li>
+        <a href="#client">Ghi một Ứng dụng Máy khách</a>
+        <ol>
+        <li><a href="#search">Tìm kiếm tài liệu</a></li>
+        <li><a href="#process">Kết quả tiến trình</a></li>
+        <li><a href="#metadata">Kiểm tra siêu dữ liệu tài liệu</a></li>
+        <li><a href="#open">Mở một tài liệu</a></li>
+        <li><a href="#create">Tạo một tài liệu mới</a></li>
+        <li><a href="#delete">Xóa một tài liệu</a></li>
+        <li><a href="#edit">Chỉnh sửa một tài liệu</a></li>
+        <li><a href="#permissions">Cố định các quyền</a></li>
+        </ol>
+    </li>
+    <li><a href="#custom">Ghi một Trình cung cấp Tài liệu Tùy chỉnh</a>
+        <ol>
+        <li><a href="#manifest">Bản kê khai</a></li>
+        <li><a href="#contract">Hợp đồng</a></li>
+        <li><a href="#subclass">Phân lớp con DocumentsProvider</a></li>
+        <li><a href="#security">Bảo mật</a></li>
+        </ol>
+    </li>
+
+</ol>
+<h2>Lớp khóa</h2>
+<ol>
+    <li>{@link android.provider.DocumentsProvider}</li>
+    <li>{@link android.provider.DocumentsContract}</li>
+</ol>
+
+<h2>Video</h2>
+
+<ol>
+    <li><a href="http://www.youtube.com/watch?v=zxHVeXbK1P4">
+DevBytes: Khuôn khổ Truy cập Kho lưu trữ Android 4.4: Trình cung cấp</a></li>
+     <li><a href="http://www.youtube.com/watch?v=UFj9AEz0DHQ">
+DevBytes: Khuôn khổ Truy cập Kho lưu trữ Android 4.4: Máy khách</a></li>
+</ol>
+
+
+<h2>Mã Ví dụ</h2>
+
+<ol>
+    <li><a href="{@docRoot}samples/StorageProvider/index.html">
+Trình cung cấp Lưu trữ</a></li>
+     <li><a href="{@docRoot}samples/StorageClient/index.html">
+StorageClient</a></li>
+</ol>
+
+<h2>Xem thêm</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        Nội dung Cơ bản về Trình cung cấp Nội dung
+        </a>
+    </li>
+</ol>
+
+</div>
+</div>
+
+
+<p>Android 4.4 (API mức 19) giới thiệu Khuôn khổ Truy cập Kho lưu trữ (SAF). SAF
+ giúp người dùng đơn giản hóa việc duyệt và mở tài liệu, hình ảnh và các tệp khác
+giữa tất cả trình cung cấp lưu trữ tài liệu mà họ thích. UI tiêu chuẩn, dễ sử dụng
+cho phép người dùng duyệt tệp và truy cập hoạt động gần đây một cách nhất quán giữa các ứng dụng và trình cung cấp.</p>
+
+<p>Dịch vụ lưu trữ đám mây hoặc cục bộ có thể tham gia vào hệ sinh thái này bằng cách triển khai một
+{@link android.provider.DocumentsProvider} để gói gọn các dịch vụ của mình. Những ứng dụng
+máy khách cần truy cập vào tài liệu của một trình cung cấp có thể tích hợp với SAF chỉ bằng một vài
+dòng mã.</p>
+
+<p>SAF bao gồm:</p>
+
+<ul>
+<li><strong>Trình cung cấp tài liệu</strong>&mdash;Một trình cung cấp nội dung cho phép một
+dịch vụ lưu trữ (chẳng hạn như Google Drive) phát hiện các tệp mà nó quản lý. Trình cung cấp tài liệu được
+triển khai thành một lớp con của lớp {@link android.provider.DocumentsProvider}.
+Sơ đồ tài liệu-trình cung cấp sẽ được dựa trên một phân cấp tệp truyền thống,
+cho dù cách thức trình cung cấp tài liệu của bạn trực tiếp lưu trữ dữ liệu là hoàn toàn do bạn.
+Nền tảng Android bao gồm một vài trình cung cấp tài liệu tích hợp, chẳng hạn như
+Downloads, Images, và Videos.</li>
+
+<li><strong>Ứng dụng máy khách</strong>&mdash;Một ứng dụng tùy chỉnh có chức năng gọi ra ý định
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} và/hoặc
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT} và nhận các tệp
+được trả về bởi trình cung cấp tài liệu.</li>
+
+<li><strong>Bộ chọn</strong>&mdash;Một UI hệ thống cho phép người dùng truy cập tài liệu từ tất cả
+trình cung cấp tài liệu mà thỏa mãn các tiêu chí tìm kiếm của ứng dụng máy khách.</li>
+</ul>
+
+<p>Một số tính năng được SAF cung cấp bao gồm:</p>
+<ul>
+<li>Cho phép người dùng duyệt nội dung từ tất cả trình cung cấp tài liệu, không chỉ một ứng dụng duy nhất.</li>
+<li>Giúp ứng dụng của bạn có thể có quyền truy cập lâu dài, cố định vào
+ các tài liệu được sở hữu bởi một trình cung cấp tài liệu. Thông qua truy cập này, người dùng có thể thêm, chỉnh sửa,
+ lưu và xóa tệp trên trình cung cấp.</li>
+<li>Hỗ trợ nhiều tài khoản người dùng và các phần gốc tạm thời chẳng hạn như trình cung cấp
+bộ nhớ USB, nó chỉ xuất hiện nếu ổ đĩa được cắm vào. </li>
+</ul>
+
+<h2 id ="overview">Tổng quan</h2>
+
+<p>SAF tập trung xoay quanh một trình cung cấp nội dung là một lớp con
+của lớp {@link android.provider.DocumentsProvider}. Trong một <em>trình cung cấp tài liệu</em>, dữ liệu được
+cấu trúc thành một phân cấp tệp truyền thống:</p>
+<p><img src="{@docRoot}images/providers/storage_datamodel.png" alt="data model" /></p>
+<p class="img-caption"><strong>Hình 1.</strong> Mô hình dữ liệu của trình cung cấp tài liệu. Một Phần gốc chỉ đến một Tài liệu duy nhất,
+sau đó nó bắt đầu xòe ra toàn bộ cây.</p>
+
+<p>Lưu ý điều sau đây:</p>
+<ul>
+
+<li>Mỗi một trình cung cấp tài liệu sẽ báo cáo một hoặc nhiều
+"phần gốc" là điểm bắt đầu khám phá cây tài liệu.
+Mỗi phần gốc có một {@link android.provider.DocumentsContract.Root#COLUMN_ROOT_ID} duy nhất,
+và nó trỏ đến một tài liệu (thư mục)
+biểu diễn nội dung bên dưới phần gốc đó.
+Phần gốc có thể linh hoạt theo thiết kế để hỗ trợ các trường hợp sử dụng như nhiều tài khoản,
+thiết bị lưu trữ USB tạm thời, hoặc đăng nhập/đăng xuất người dùng.</li>
+
+<li>Dưới mỗi phần gốc là một tài liệu đơn lẻ. Tài liệu đó sẽ trỏ tới 1 đến <em>N</em> tài liệu,
+mỗi tài liệu lại có thể trỏ tới 1 đến <em>N</em> tài liệu khác. </li>
+
+<li>Mỗi bộ nhớ phụ trợ phủ bề mặt
+các tệp và thư mục riêng lẻ bằng cách tham chiếu chúng bằng một
+{@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} duy nhất.
+ID của tài liệu phải là duy nhất và không thay đổi sau khi được phát hành, do chúng được sử dụng để cấp URI
+không thay đổi giữa các lần khởi động lại thiết bị.</li>
+
+
+<li>Tài liệu có thể là một tệp mở được (có một kiểu MIME cụ thể), hoặc một
+thư mục chứa các tài liệu bổ sung (có kiểu MIME 
+{@link android.provider.DocumentsContract.Document#MIME_TYPE_DIR}).</li>
+
+<li>Mỗi tài liệu có thể có các khả năng khác nhau như được mô tả bởi
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS COLUMN_FLAGS}.
+Ví dụ, {@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_WRITE},
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE}, và
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_THUMBNAIL}.
+{@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} cũng có thể
+có trong nhiều thư mục.</li>
+</ul>
+
+<h2 id="flow">Dòng Điều khiển</h2>
+<p>Như nêu trên, mô hình dữ liệu của trình cung cấp tài liệu được dựa trên một phân cấp
+tệp truyền thống. Tuy nhiên, bạn có thể thực tế lưu trữ dữ liệu của mình bằng bất kỳ cách nào mà mình thích, miễn
+là nó có thể được truy cập thông qua API {@link android.provider.DocumentsProvider}. Ví dụ, bạn
+có thể sử dụng kho lưu trữ đám mây dựa trên tag cho dữ liệu của mình.</p>
+
+<p>Hình 2 minh họa một ví dụ về cách mà một ứng dụng ảnh có thể sử dụng SAF
+để truy cập dữ liệu được lưu trữ:</p>
+<p><img src="{@docRoot}images/providers/storage_dataflow.png" alt="app" /></p>
+
+<p class="img-caption"><strong>Hình 2.</strong> Dòng Khuôn khổ Truy cập Kho lưu trữ</p>
+
+<p>Lưu ý điều sau đây:</p>
+<ul>
+
+<li>Trong SAF, trình cung cấp và máy khách không tương tác
+trực tiếp với nhau. Một máy khách yêu cầu quyền để tương tác
+với tệp (cụ thể là quyền đọc, chỉnh sửa, tạo hoặc xóa tệp).</li>
+
+<li>Tương tác bắt đầu khi một ứng dụng (trong ví dụ này này một ứng dụng ảnh) thể hiện ý định 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} hoặc {@link android.content.Intent#ACTION_CREATE_DOCUMENT}. Ý định có thể bao gồm các bộ lọc
+để cụ thể hơn các tiêu chí&mdash;ví dụ, "cấp cho tôi tất cả tệp mở được
+có kiểu MIME là 'image'."</li>
+
+<li>Sau khi ý định thể hiện, bộ chọn của hệ thống sẽ đi đến từng trình cung cấp được đăng ký
+và hiển thị cho người dùng xem các phần gốc nội dung khớp với tiêu chí.</li>
+
+<li>Bộ chọn cấp cho người dùng một giao diện tiêu chuẩn để truy cập tài liệu, mặc
+dù các trình cung cấp tài liệu liên quan có thể rất khác nhau. Ví dụ, hình 2
+minh họa một trình cung cấp Google Drive, một trình cung cấp USB, và một trình cung cấp đám mây.</li>
+</ul>
+
+<p>Hình 3 minh họa một bộ chọn mà trong đó một người dùng đang tìm kiếm hình ảnh đã chọn một
+tài khoản Google Drive:</p>
+
+<p><img src="{@docRoot}images/providers/storage_picker.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>Hình 3.</strong> Bộ chọn</p>
+
+<p>Khi người dùng chọn Google Drive, hình ảnh được hiển thị như minh họa trong
+hình 4. Từ điểm đó trở đi, người dùng có thể tương tác với chúng theo bất kỳ cách nào
+được hỗ trợ bởi trình cung cấp và ứng dụng máy khách.
+
+<p><img src="{@docRoot}images/providers/storage_photos.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>Hình 4.</strong> Hình ảnh</p>
+
+<h2 id="client">Ghi một Ứng dụng Máy khách</h2>
+
+<p>Trên phiên bản Android 4.3 và thấp hơn, nếu bạn muốn ứng dụng của mình truy xuất một tệp từ một ứng dụng
+khác, nó phải gọi ra một ý định chẳng hạn như {@link android.content.Intent#ACTION_PICK}
+hay {@link android.content.Intent#ACTION_GET_CONTENT}. Khi đó, người dùng phải chọn
+một ứng dụng duy nhất mà từ đó họ chọn một tệp và ứng dụng được chọn phải cung cấp một
+giao diện người dùng để người dùng duyệt và chọn từ các tệp có sẵn. </p>
+
+<p>Trên phiên bản Android 4.4 trở lên, bạn có thêm một tùy chọn là sử dụng ý định
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT},
+nó hiển thị một UI bộ chọn được điều khiển bởi hệ thống, cho phép người dùng
+duyệt tất cả tệp mà các ứng dụng khác đã cung cấp. Từ UI duy nhất này, người dùng
+có thể chọn một tệp từ bất kỳ ứng dụng nào được hỗ trợ.</p>
+
+<p>{@link android.content.Intent#ACTION_OPEN_DOCUMENT} không
+nhằm mục đích thay thế cho {@link android.content.Intent#ACTION_GET_CONTENT}.
+Bạn nên sử dụng cái nào sẽ phụ thuộc vào nhu cầu của ứng dụng của bạn:</p>
+
+<ul>
+<li>Sử dụng {@link android.content.Intent#ACTION_GET_CONTENT} nếu bạn muốn ứng dụng của mình
+chỉ đơn thuần đọc/nhập dữ liệu. Bằng cách này, ứng dụng nhập một bản sao dữ liệu,
+chẳng hạn như một tệp hình ảnh.</li>
+
+<li>Sử dụng {@link android.content.Intent#ACTION_OPEN_DOCUMENT} nếu bạn muốn ứng dụng
+của mình có quyền truy cập lâu dài, cố định vào các tài liệu được sở hữu bởi một
+trình cung cấp tài liệu. Ví dụ như trường hợp một ứng dụng chỉnh sửa ảnh cho phép người dùng chỉnh sửa
+các hình ảnh được lưu trữ trong một trình cung cấp tài liệu. </li>
+
+</ul>
+
+
+<p>Phần này mô tả cách ghi các ứng dụng máy khách dựa trên
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} và
+các ý định {@link android.content.Intent#ACTION_CREATE_DOCUMENT}.</p>
+
+
+<h3 id="search">Tìm kiếm tài liệu</h3>
+
+<p>
+Đoạn mã HTML sau sử dụng {@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+để tìm kiếm các trình cung cấp tài liệu mà
+chứa tệp hình ảnh:</p>
+
+<pre>private static final int READ_REQUEST_CODE = 42;
+...
+/**
+ * Fires an intent to spin up the &quot;file chooser&quot; UI and select an image.
+ */
+public void performFileSearch() {
+
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's file
+    // browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones)
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only images, using the image MIME data type.
+    // If one wanted to search for ogg vorbis files, the type would be &quot;audio/ogg&quot;.
+    // To search for all documents available via installed storage providers,
+    // it would be &quot;*/*&quot;.
+    intent.setType(&quot;image/*&quot;);
+
+    startActivityForResult(intent, READ_REQUEST_CODE);
+}</pre>
+
+<p>Lưu ý điều sau đây:</p>
+<ul>
+<li>Khi ứng dụng thể hiện ý định {@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+, nó sẽ khởi chạy một bộ chọn để hiển thị tất cả trình cung cấp tài liệu khớp với tiêu chí.</li>
+
+<li>Thêm thể loại {@link android.content.Intent#CATEGORY_OPENABLE} vào
+ý định sẽ lọc kết quả để chỉ hiển thị những tài liệu có thể mở được, chẳng hạn như tệp hình ảnh.</li>
+
+<li>Câu lệnh {@code intent.setType("image/*")} sẽ lọc thêm để
+chỉ hiển thị những tài liệu có kiểu dữ liệu MIME hình ảnh.</li>
+</ul>
+
+<h3 id="results">Kết quả Tiến trình</h3>
+
+<p>Sau khi người dùng chọn một tài liệu trong bộ chọn,
+{@link android.app.Activity#onActivityResult onActivityResult()} sẽ được gọi.
+URI tro tới tài liệu được chọn sẽ nằm trong tham số {@code resultData}
+. Trích xuất UI bằng cách sử dụng {@link android.content.Intent#getData getData()}.
+Sau khi có nó, bạn có thể sử dụng nó để truy xuất tài liệu mà người dùng muốn. Ví
+dụ:</p>
+
+<pre>&#64;Override
+public void onActivityResult(int requestCode, int resultCode,
+        Intent resultData) {
+
+    // The ACTION_OPEN_DOCUMENT intent was sent with the request code
+    // READ_REQUEST_CODE. If the request code seen here doesn't match, it's the
+    // response to some other intent, and the code below shouldn't run at all.
+
+    if (requestCode == READ_REQUEST_CODE && resultCode == Activity.RESULT_OK) {
+        // The document selected by the user won't be returned in the intent.
+        // Instead, a URI to that document will be contained in the return intent
+        // provided to this method as a parameter.
+        // Pull that URI using resultData.getData().
+        Uri uri = null;
+        if (resultData != null) {
+            uri = resultData.getData();
+            Log.i(TAG, "Uri: " + uri.toString());
+            showImage(uri);
+        }
+    }
+}
+</pre>
+
+<h3 id="metadata">Kiểm tra siêu dữ liệu tài liệu</h3>
+
+<p>Sau khi có URI cho một tài liệu, bạn có quyền truy cập siêu dữ liệu của nó. Đoạn mã HTML
+này bắt siêu dữ liệu cho một tài liệu được quy định bởi URI, và ghi lại nó:</p>
+
+<pre>public void dumpImageMetaData(Uri uri) {
+
+    // The query, since it only applies to a single document, will only return
+    // one row. There's no need to filter, sort, or select fields, since we want
+    // all fields for one document.
+    Cursor cursor = getActivity().getContentResolver()
+            .query(uri, null, null, null, null, null);
+
+    try {
+    // moveToFirst() returns false if the cursor has 0 rows.  Very handy for
+    // &quot;if there's anything to look at, look at it&quot; conditionals.
+        if (cursor != null &amp;&amp; cursor.moveToFirst()) {
+
+            // Note it's called &quot;Display Name&quot;.  This is
+            // provider-specific, and might not necessarily be the file name.
+            String displayName = cursor.getString(
+                    cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
+            Log.i(TAG, &quot;Display Name: &quot; + displayName);
+
+            int sizeIndex = cursor.getColumnIndex(OpenableColumns.SIZE);
+            // If the size is unknown, the value stored is null.  But since an
+            // int can't be null in Java, the behavior is implementation-specific,
+            // which is just a fancy term for &quot;unpredictable&quot;.  So as
+            // a rule, check if it's null before assigning to an int.  This will
+            // happen often:  The storage API allows for remote files, whose
+            // size might not be locally known.
+            String size = null;
+            if (!cursor.isNull(sizeIndex)) {
+                // Technically the column stores an int, but cursor.getString()
+                // will do the conversion automatically.
+                size = cursor.getString(sizeIndex);
+            } else {
+                size = &quot;Unknown&quot;;
+            }
+            Log.i(TAG, &quot;Size: &quot; + size);
+        }
+    } finally {
+        cursor.close();
+    }
+}
+</pre>
+
+<h3 id="open-client">Mở một tài liệu</h3>
+
+<p>Sau khi có URI cho một tài liệu, bạn có thể mở nó hoặc làm bất kỳ điều gì
+mà bạn muốn.</p>
+
+<h4>Bitmap</h4>
+
+<p>Sau đây là một ví dụ về cách bạn có thể mở một {@link android.graphics.Bitmap}:</p>
+
+<pre>private Bitmap getBitmapFromUri(Uri uri) throws IOException {
+    ParcelFileDescriptor parcelFileDescriptor =
+            getContentResolver().openFileDescriptor(uri, "r");
+    FileDescriptor fileDescriptor = parcelFileDescriptor.getFileDescriptor();
+    Bitmap image = BitmapFactory.decodeFileDescriptor(fileDescriptor);
+    parcelFileDescriptor.close();
+    return image;
+}
+</pre>
+
+<p>Lưu ý rằng bạn không nên thực hiện thao tác này trên luồng UI. Thực hiện điều này dưới
+nền bằng cách sử dụng {@link android.os.AsyncTask}. Sau khi mở bitmap, bạn có thể
+hiển thị nó trong một {@link android.widget.ImageView}.
+</p>
+
+<h4>Nhận một InputStream</h4>
+
+<p>Sau đây là một ví dụ về cách mà bạn có thể nhận một {@link java.io.InputStream} từ URI. Trong đoạn mã HTML
+này, các dòng tệp đang được đọc thành một xâu:</p>
+
+<pre>private String readTextFromUri(Uri uri) throws IOException {
+    InputStream inputStream = getContentResolver().openInputStream(uri);
+    BufferedReader reader = new BufferedReader(new InputStreamReader(
+            inputStream));
+    StringBuilder stringBuilder = new StringBuilder();
+    String line;
+    while ((line = reader.readLine()) != null) {
+        stringBuilder.append(line);
+    }
+    fileInputStream.close();
+    parcelFileDescriptor.close();
+    return stringBuilder.toString();
+}
+</pre>
+
+<h3 id="create">Tạo một tài liệu mới</h3>
+
+<p>Ứng dụng của bạn có thể tạo một tài liệu mới trong một trình cung cấp tài liệu bằng cách sử dụng ý định
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT}
+. Để tạo một tệp, bạn cấp cho ý định của mình một kiểu MIME và tên tệp, và
+khởi chạy nó bằng một mã yêu cầu duy nhất. Phần còn lại sẽ được làm hộ bạn:</p>
+
+
+<pre>
+// Here are some examples of how you might call this method.
+// The first parameter is the MIME type, and the second parameter is the name
+// of the file you are creating:
+//
+// createFile("text/plain", "foobar.txt");
+// createFile("image/png", "mypicture.png");
+
+// Unique request code.
+private static final int WRITE_REQUEST_CODE = 43;
+...
+private void createFile(String mimeType, String fileName) {
+    Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as
+    // a file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Create a file with the requested MIME type.
+    intent.setType(mimeType);
+    intent.putExtra(Intent.EXTRA_TITLE, fileName);
+    startActivityForResult(intent, WRITE_REQUEST_CODE);
+}
+</pre>
+
+<p>Sau khi tạo một tài liệu mới, bạn có thể nhận URI của tài liệu trong
+{@link android.app.Activity#onActivityResult onActivityResult()}, sao cho bạn
+có thể tiếp tục ghi nó.</p>
+
+<h3 id="delete">Xóa một tài liệu</h3>
+
+<p>Nếu bạn có URI cho một tài liệu và
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS Document.COLUMN_FLAGS}
+của tài liệu chứa
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE SUPPORTS_DELETE},
+bạn có thể xóa tài liệu đó. Ví dụ:</p>
+
+<pre>
+DocumentsContract.deleteDocument(getContentResolver(), uri);
+</pre>
+
+<h3 id="edit">Chỉnh sửa một tài liệu</h3>
+
+<p>Bạn có thể sử dụng SAF để chỉnh sửa một tài liệu văn bản ngay tại chỗ.
+Đoạn mã HTML này thể hiện
+ý định {@link android.content.Intent#ACTION_OPEN_DOCUMENT} và sử dụng
+thể loại {@link android.content.Intent#CATEGORY_OPENABLE} để chỉ hiển thị
+những tài liệu có thể mở được. Nó lọc thêm để chỉ hiển thị những tệp văn bản:</p>
+
+<pre>
+private static final int EDIT_REQUEST_CODE = 44;
+/**
+ * Open a file for writing and append some text to it.
+ */
+ private void editDocument() {
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's
+    // file browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only text files.
+    intent.setType(&quot;text/plain&quot;);
+
+    startActivityForResult(intent, EDIT_REQUEST_CODE);
+}
+</pre>
+
+<p>Tiếp theo, từ {@link android.app.Activity#onActivityResult onActivityResult()}
+(xem <a href="#results">Kết quả tiến trình</a>) bạn có thể gọi mã để thực hiện chỉnh sửa.
+Đoạn mã HTML sau nhận được một {@link java.io.FileOutputStream}
+từ {@link android.content.ContentResolver}. Theo mặc định, nó sử dụng chế độ “ghi”.
+Cách tốt nhất là yêu cầu lượng quyền truy cập bạn cần ở mức ít nhất, vì thế đừng yêu cầu
+quyền đọc/ghi nếu bạn chỉ cần quyền ghi:</p>
+
+<pre>private void alterDocument(Uri uri) {
+    try {
+        ParcelFileDescriptor pfd = getActivity().getContentResolver().
+                openFileDescriptor(uri, "w");
+        FileOutputStream fileOutputStream =
+                new FileOutputStream(pfd.getFileDescriptor());
+        fileOutputStream.write(("Overwritten by MyCloud at " +
+                System.currentTimeMillis() + "\n").getBytes());
+        // Let the document provider know you're done by closing the stream.
+        fileOutputStream.close();
+        pfd.close();
+    } catch (FileNotFoundException e) {
+        e.printStackTrace();
+    } catch (IOException e) {
+        e.printStackTrace();
+    }
+}</pre>
+
+<h3 id="permissions">Cố định các quyền</h3>
+
+<p>Khi ứng dụng của bạn mở một tệp để đọc hoặc ghi, hệ thống sẽ cấp cho
+ứng dụng của bạn một quyền URI được cấp cho tệp đó. Quyền này sẽ kéo dài tới khi thiết bị của bạn khởi động lại.
+Nhưng giả sử ứng dụng của bạn là một ứng dụng chỉnh sửa hình ảnh, và bạn muốn người dùng có thể
+truy cập 5 hình ảnh cuối cùng mà họ đã chỉnh sửa, trực tiếp từ ứng dụng của bạn. Nếu thiết bị của người dùng
+đã khởi động lại, bạn sẽ phải gửi người dùng trở lại bộ chọn hệ thống để tìm
+các tệp đó, đây rõ ràng không phải là cách lý tưởng.</p>
+
+<p>Để tránh điều này xảy ra, bạn có thể cố định các quyền mà hệ thống
+cấp cho ứng dụng của bạn. Ứng dụng của bạn sẽ "nhận" cấp quyền URI có thể cố định
+mà hệ thống cung cấp một cách hiệu quả. Điều này cho phép người dùng có quyền liên tục truy cập các tệp đó
+thông qua ứng dụng của bạn, ngay cả khi thiết bị đã bị khởi động lại:</p>
+
+
+<pre>final int takeFlags = intent.getFlags()
+            &amp; (Intent.FLAG_GRANT_READ_URI_PERMISSION
+            | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
+// Check for the freshest data.
+getContentResolver().takePersistableUriPermission(uri, takeFlags);</pre>
+
+<p>Còn một bước cuối cùng. Bạn có thể đã lưu các
+URI gần đây nhất mà ứng dụng của bạn đã truy cập, nhưng chúng còn thể không còn hợp lệ&mdash;một ứng dụng khác
+có thể đã xóa hoặc sửa đổi tài liệu. Vì thế, bạn luôn nên gọi
+{@code getContentResolver().takePersistableUriPermission()} để kiểm tra
+dữ liệu mới nhất.</p>
+
+<h2 id="custom">Ghi một Trình cung cấp Tài liệu Tùy chỉnh</h2>
+
+<p>
+Nếu bạn đang phát triển một ứng dụng cung cấp dịch vụ lưu trữ cho tệp (chẳng hạn như
+một dịch vụ lưu trữ đám mây), bạn có thể cung cấp các tệp của mình thông qua
+SAF bằng cách ghi một trình cung cấp tài liệu tùy chỉnh.  Phần này mô tả cách làm điều
+này.</p>
+
+
+<h3 id="manifest">Bản kê khai</h3>
+
+<p>Để triển khai một trình cung cấp tài liệu tùy chỉnh, hãy thêm nội dung sau vào bản kê khai
+của ứng dụng của bạn:</p>
+<ul>
+
+<li>Một mục tiêu API mức 19 hoặc cao hơn.</li>
+
+<li>Một phần tử <code>&lt;provider&gt;</code> khai báo trình cung cấp lưu trữ
+tùy chỉnh của bạn. </li>
+
+<li>Tên của trình cung cấp của bạn, là tên lớp của nó, bao gồm tên gói.
+Ví dụ: <code>com.example.android.storageprovider.MyCloudProvider</code>.</li>
+
+<li>Tên thẩm quyền của bạn, tức là tên gói của bạn (trong ví dụ này là
+<code>com.example.android.storageprovider</code>) cộng với kiểu của trình cung cấp nội dung
+(<code>documents</code>). Ví dụ, {@code com.example.android.storageprovider.documents}.</li>
+
+<li>Thuộc tính <code>android:exported</code> được đặt thành <code>&quot;true&quot;</code>.
+Bạn phải xuất trình cung cấp của mình để các ứng dụng khác có thể thấy nó.</li>
+
+<li>Thuộc tính <code>android:grantUriPermissions</code> được đặt thành
+<code>&quot;true&quot;</code>. Thiết đặt này cho phép hệ thống cấp cho các ứng dụng khác quyền truy cập
+vào nội dung trong trình cung cấp của bạn. Để thảo luận về cách cố định quyền được cấp cho
+một tài liệu cụ thể, hãy xem phần<a href="#permissions">Cố định các quyền</a>.</li>
+
+<li>Quyền {@code MANAGE_DOCUMENTS}. Theo mặc định, một trình cung cấp sẽ có sẵn
+đối với mọi người. Việc thêm quyền này sẽ hạn chế trình cung cấp của bạn vào hệ thống.
+Hạn chế này có ý nghĩa quan trọng đối với vấn đề bảo mật.</li>
+
+<li>Thuộc tính {@code android:enabled} được đặt thành một giá trị boolean được định nghĩa trong một tệp
+tài nguyên. Mục đích của thuộc tính này là để vô hiệu hóa trình cung cấp trên các thiết bị chạy phiên bản Android 4.3 hoặc thấp hơn.
+Ví dụ, {@code android:enabled="@bool/atLeastKitKat"}. Bên
+cạnh việc nêu thuộc tính này trong bản kê khai, bạn cần làm như sau:
+<ul>
+<li>Trong tệp tài nguyên {@code bool.xml} của bạn bên dưới {@code res/values/}, hãy thêm
+dòng sau: <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>Trong tệp tài nguyên {@code bool.xml} của bạn bên dưới {@code res/values-v19/}, hãy thêm
+dòng sau: <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;true&lt;/bool&gt;</pre></li>
+</ul></li>
+
+<li>Một bộ lọc ý định chứa hành động
+{@code android.content.action.DOCUMENTS_PROVIDER}, sao cho trình cung cấp của bạn
+xuất hiện trong bộ chọn khi hệ thống tìm kiếm trình cung cấp.</li>
+
+</ul>
+<p>Sau đây là các đoạn trích từ một bản kê khai mẫu chứa một trình cung cấp:</p>
+
+<pre>&lt;manifest... &gt;
+    ...
+    &lt;uses-sdk
+        android:minSdkVersion=&quot;19&quot;
+        android:targetSdkVersion=&quot;19&quot; /&gt;
+        ....
+        &lt;provider
+            android:name=&quot;com.example.android.storageprovider.MyCloudProvider&quot;
+            android:authorities=&quot;com.example.android.storageprovider.documents&quot;
+            android:grantUriPermissions=&quot;true&quot;
+            android:exported=&quot;true&quot;
+            android:permission=&quot;android.permission.MANAGE_DOCUMENTS&quot;
+            android:enabled=&quot;&#64;bool/atLeastKitKat&quot;&gt;
+            &lt;intent-filter&gt;
+                &lt;action android:name=&quot;android.content.action.DOCUMENTS_PROVIDER&quot; /&gt;
+            &lt;/intent-filter&gt;
+        &lt;/provider&gt;
+    &lt;/application&gt;
+
+&lt;/manifest&gt;</pre>
+
+<h4 id="43">Hỗ trợ các thiết bị chạy phiên bản Android 4.3 và thấp hơn</h4>
+
+<p>Ý định
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} chỉ có sẵn
+trên các thiết bị chạy phiên bản Android 4.4 trở lên.
+Nếu bạn muốn ứng dụng của mình hỗ trợ {@link android.content.Intent#ACTION_GET_CONTENT}
+để tạo điều kiện cho các thiết bị đang chạy phiên bản Android 4.3 và thấp hơn, bạn nên
+vô hiệu hóa bộ lọc ý định {@link android.content.Intent#ACTION_GET_CONTENT} trong
+bản kê khai của bạn cho các thiết bị chạy phiên bản Android 4.4 trở lên. Một
+trình cung cấp tài liệu và {@link android.content.Intent#ACTION_GET_CONTENT} nên được xem xét
+ loại trừ lẫn nhau. Nếu bạn hỗ trợ cả hai đồng thời, ứng dụng của bạn sẽ
+xuất hiện hai lần trong UI của bộ chọn hệ thống, đưa ra hai cách khác nhau để truy cập
+dữ liệu đã lưu của bạn. Điều này có thể khiến người dùng bị nhầm lẫn.</p>
+
+<p>Sau đây là cách được khuyến cáo để vô hiệu hóa bộ lọc ý định
+{@link android.content.Intent#ACTION_GET_CONTENT} đối với các thiết bị
+chạy phiên bản Android 4.4 hoặc cao hơn:</p>
+
+<ol>
+<li>Trong tệp tài nguyên {@code bool.xml} của bạn bên dưới {@code res/values/}, hãy thêm
+dòng sau: <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;true&lt;/bool&gt;</pre></li>
+
+<li>Trong tệp tài nguyên {@code bool.xml} của bạn bên dưới {@code res/values-v19/}, hãy thêm
+dòng sau: <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>Thêm một
+<a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">bí danh
+hoạt động</a> để vô hiệu hóa bộ lọc ý định {@link android.content.Intent#ACTION_GET_CONTENT}
+đối với các phiên bản 4.4 (API mức 19) trở lên. Ví dụ:
+
+<pre>
+&lt;!-- This activity alias is added so that GET_CONTENT intent-filter
+     can be disabled for builds on API level 19 and higher. --&gt;
+&lt;activity-alias android:name=&quot;com.android.example.app.MyPicker&quot;
+        android:targetActivity=&quot;com.android.example.app.MyActivity&quot;
+        ...
+        android:enabled=&quot;@bool/atMostJellyBeanMR2&quot;&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name=&quot;android.intent.action.GET_CONTENT&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.OPENABLE&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.DEFAULT&quot; /&gt;
+        &lt;data android:mimeType=&quot;image/*&quot; /&gt;
+        &lt;data android:mimeType=&quot;video/*&quot; /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity-alias&gt;
+</pre>
+</li>
+</ol>
+<h3 id="contract">Hợp đồng</h3>
+
+<p>Thường khi bạn ghi một trình cung cấp nội dung tùy chỉnh, một trong những tác vụ đó là
+triển khai các lớp hợp đồng như được mô tả trong hướng dẫn cho nhà phát triển
+<a href="{@docRoot}guide/topics/providers/content-provider-creating.html#ContractClass">
+Trình cung cấp Nội dung</a>. Lớp hợp đồng là một lớp {@code public final} mà
+chứa các định nghĩa hằng số cho URI, tên cột, kiểu MIME và
+siêu dữ liệu khác liên quan tới trình cung cấp. SAF
+cung cấp những lớp hợp đồng này cho bạn, vì thế bạn không cần tự
+ghi:</p>
+
+<ul>
+   <li>{@link android.provider.DocumentsContract.Document}</li>
+   <li>{@link android.provider.DocumentsContract.Root}</li>
+</ul>
+
+<p>Ví dụ, sau đây là các cột bạn có thể trả về trong một con chạy khi
+trình cung cấp tài liệu của bạn được truy vấn về tài liệu hoặc phần gốc:</p>
+
+<pre>private static final String[] DEFAULT_ROOT_PROJECTION =
+        new String[]{Root.COLUMN_ROOT_ID, Root.COLUMN_MIME_TYPES,
+        Root.COLUMN_FLAGS, Root.COLUMN_ICON, Root.COLUMN_TITLE,
+        Root.COLUMN_SUMMARY, Root.COLUMN_DOCUMENT_ID,
+        Root.COLUMN_AVAILABLE_BYTES,};
+private static final String[] DEFAULT_DOCUMENT_PROJECTION = new
+        String[]{Document.COLUMN_DOCUMENT_ID, Document.COLUMN_MIME_TYPE,
+        Document.COLUMN_DISPLAY_NAME, Document.COLUMN_LAST_MODIFIED,
+        Document.COLUMN_FLAGS, Document.COLUMN_SIZE,};
+</pre>
+
+<h3 id="subclass">Phân lớp con DocumentsProvider</h3>
+
+<p>Bước tiếp theo trong khi ghi một trình cung cấp tài liệu tùy chỉnh đó là phân lớp con
+cho lớp tóm tắt {@link android.provider.DocumentsProvider}. Tối thiểu, bạn cần triển khai
+các phương pháp sau:</p>
+
+<ul>
+<li>{@link android.provider.DocumentsProvider#queryRoots queryRoots()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryDocument queryDocument()}</li>
+
+<li>{@link android.provider.DocumentsProvider#openDocument openDocument()}</li>
+</ul>
+
+<p>Đây là những phương pháp duy nhất mà bạn được yêu cầu phải triển khai, nhưng còn
+nhiều phương pháp nữa mà bạn có thể muốn triển khai. Xem {@link android.provider.DocumentsProvider}
+để biết chi tiết.</p>
+
+<h4 id="queryRoots">Triển khai queryRoots</h4>
+
+<p>Việc bạn triển khai {@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} phải trả về một {@link android.database.Cursor} trỏ về tất cả
+thư mục gốc trong trình cung cấp tài liệu của bạn, bằng cách sử dụng các cột được định nghĩa trong
+{@link android.provider.DocumentsContract.Root}.</p>
+
+<p>Trong đoạn mã HTML sau, tham số {@code projection} biểu diễn các trường cụ thể
+mà hàm gọi muốn nhận về. Đoạn mã HTML tạo một con chạy mới
+và thêm một hàng vào nó&mdash;một thư mục gốc, mức cao nhất, như
+Downloads hoặc Images.  Hầu hết các trình cung cấp chỉ có một phần gốc. Bạn có thể có nhiều hơn một,
+ví dụ, trong trường hợp nhiều tài khoản người dùng. Trong trường hợp đó, chỉ cần thêm một
+hàng thứ hai vào con chạy.</p>
+
+<pre>
+&#64;Override
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+
+    // Create a cursor with either the requested fields, or the default
+    // projection if "projection" is null.
+    final MatrixCursor result =
+            new MatrixCursor(resolveRootProjection(projection));
+
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+    }
+
+    // It's possible to have multiple roots (e.g. for multiple accounts in the
+    // same app) -- just add multiple cursor rows.
+    // Construct one row for a root called &quot;MyCloud&quot;.
+    final MatrixCursor.RowBuilder row = result.newRow();
+    row.add(Root.COLUMN_ROOT_ID, ROOT);
+    row.add(Root.COLUMN_SUMMARY, getContext().getString(R.string.root_summary));
+
+    // FLAG_SUPPORTS_CREATE means at least one directory under the root supports
+    // creating documents. FLAG_SUPPORTS_RECENTS means your application's most
+    // recently used documents will show up in the &quot;Recents&quot; category.
+    // FLAG_SUPPORTS_SEARCH allows users to search all documents the application
+    // shares.
+    row.add(Root.COLUMN_FLAGS, Root.FLAG_SUPPORTS_CREATE |
+            Root.FLAG_SUPPORTS_RECENTS |
+            Root.FLAG_SUPPORTS_SEARCH);
+
+    // COLUMN_TITLE is the root title (e.g. Gallery, Drive).
+    row.add(Root.COLUMN_TITLE, getContext().getString(R.string.title));
+
+    // This document id cannot change once it's shared.
+    row.add(Root.COLUMN_DOCUMENT_ID, getDocIdForFile(mBaseDir));
+
+    // The child MIME types are used to filter the roots and only present to the
+    //  user roots that contain the desired type somewhere in their file hierarchy.
+    row.add(Root.COLUMN_MIME_TYPES, getChildMimeTypes(mBaseDir));
+    row.add(Root.COLUMN_AVAILABLE_BYTES, mBaseDir.getFreeSpace());
+    row.add(Root.COLUMN_ICON, R.drawable.ic_launcher);
+
+    return result;
+}</pre>
+
+<h4 id="queryChildDocuments">Triển khai queryChildDocuments</h4>
+
+<p>Việc bạn triển khai
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}
+phải trả về một {@link android.database.Cursor} mà chỉ đến tất cả tệp trong
+thư mục được chỉ định, bằng cách sử dụng các cột được định nghĩa trong
+{@link android.provider.DocumentsContract.Document}.</p>
+
+<p>Phương pháp này được gọi khi bạn chọn một thư mục gốc ứng dụng trong UI bộ chọn.
+Nó nhận được tài liệu con của một thư mục nằm dưới phần gốc.  Nó có thể được gọi ở bất kỳ mức nào trong phân cấp tệp
+, không chỉ phần gốc. Đoạn mã HTML
+này tạo một con chạy mới bằng các cột được yêu cầu, sau đó thêm thông tin về
+mọi tệp con trực tiếp trong thư mục mẹ vào con chạy.
+Tệp con có thể là một hình ảnh, một thư mục khác&mdash;bất kỳ tệp nào:</p>
+
+<pre>&#64;Override
+public Cursor queryChildDocuments(String parentDocumentId, String[] projection,
+                              String sortOrder) throws FileNotFoundException {
+
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    final File parent = getFileForDocId(parentDocumentId);
+    for (File file : parent.listFiles()) {
+        // Adds the file's display name, MIME type, size, and so on.
+        includeFile(result, null, file);
+    }
+    return result;
+}
+</pre>
+
+<h4 id="queryDocument">Triển khai queryDocument</h4>
+
+<p>Việc bạn triển khai
+{@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+phải trả về một {@link android.database.Cursor} mà chỉ đến tệp được chỉ định,
+bằng cách sử dụng các cột được định nghĩa trong {@link android.provider.DocumentsContract.Document}.
+</p>
+
+<p>Phương pháp {@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+trả về cùng thông tin đã được chuyển trong
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()},
+nhưng là đối với một tệp cụ thể:</p>
+
+
+<pre>&#64;Override
+public Cursor queryDocument(String documentId, String[] projection) throws
+        FileNotFoundException {
+
+    // Create a cursor with the requested projection, or the default projection.
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    includeFile(result, documentId, null);
+    return result;
+}
+</pre>
+
+<h4 id="openDocument">Triển khai openDocument</h4>
+
+<p>Bạn phải triển khai {@link android.provider.DocumentsProvider#openDocument
+openDocument()} để trả về một {@link android.os.ParcelFileDescriptor} biểu diễn
+tệp được chỉ định. Các ứng dụng khác có thể sử dụng {@link android.os.ParcelFileDescriptor}
+được trả về để truyền phát dữ liệu. Hệ thống gọi phương pháp này sau khi người dùng chọn một tệp
+và ứng dụng máy khách yêu cầu truy cập nó bằng cách gọi
+{@link android.content.ContentResolver#openFileDescriptor openFileDescriptor()}.
+Ví dụ:</p>
+
+<pre>&#64;Override
+public ParcelFileDescriptor openDocument(final String documentId,
+                                         final String mode,
+                                         CancellationSignal signal) throws
+        FileNotFoundException {
+    Log.v(TAG, &quot;openDocument, mode: &quot; + mode);
+    // It's OK to do network operations in this method to download the document,
+    // as long as you periodically check the CancellationSignal. If you have an
+    // extremely large file to transfer from the network, a better solution may
+    // be pipes or sockets (see ParcelFileDescriptor for helper methods).
+
+    final File file = getFileForDocId(documentId);
+
+    final boolean isWrite = (mode.indexOf('w') != -1);
+    if(isWrite) {
+        // Attach a close listener if the document is opened in write mode.
+        try {
+            Handler handler = new Handler(getContext().getMainLooper());
+            return ParcelFileDescriptor.open(file, accessMode, handler,
+                        new ParcelFileDescriptor.OnCloseListener() {
+                &#64;Override
+                public void onClose(IOException e) {
+
+                    // Update the file with the cloud server. The client is done
+                    // writing.
+                    Log.i(TAG, &quot;A file with id &quot; +
+                    documentId + &quot; has been closed!
+                    Time to &quot; +
+                    &quot;update the server.&quot;);
+                }
+
+            });
+        } catch (IOException e) {
+            throw new FileNotFoundException(&quot;Failed to open document with id &quot;
+            + documentId + &quot; and mode &quot; + mode);
+        }
+    } else {
+        return ParcelFileDescriptor.open(file, accessMode);
+    }
+}
+</pre>
+
+<h3 id="security">Bảo mật</h3>
+
+<p>Giả sử trình cung cấp tài liệu của bạn là một dịch vụ lưu trữ đám mây được bảo vệ bằng mật khẩu
+và bạn muốn đảm bảo rằng người dùng được đăng nhập trước khi bạn bắt đầu chia sẻ tệp của họ.
+Ứng dụng của bạn nên làm gì nếu người dùng không đăng nhập?  Giải pháp là trả về
+phần gốc 0 trong triển khai {@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} của bạn. Cụ thể là một con chạy gốc trống:</p>
+
+<pre>
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+...
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+}
+</pre>
+
+<p>Bước còn lại là gọi {@code getContentResolver().notifyChange()}.
+Bạn còn nhớ {@link android.provider.DocumentsContract} chứ?  Chúng ta đang sử dụng nó để tạo
+URI này. Đoạn mã HTML sau báo cho hệ thống truy vấn các phần gốc trong
+trình cung cấp tài liệu của bạn bất cứ khi nào trạng thái đăng nhập của người dùng thay đổi. Nếu người dùng không được
+đăng nhập, lệnh gọi tới {@link android.provider.DocumentsProvider#queryRoots queryRoots()} sẽ trả về một
+con chạy trống như minh họa bên trên. Điều này đảm bảo rằng tài liệu của một trình cung cấp chỉ
+có sẵn nếu người dùng đăng nhập vào trình cung cấp đó.</p>
+
+<pre>private void onLoginButtonClick() {
+    loginOrLogout();
+    getContentResolver().notifyChange(DocumentsContract
+            .buildRootsUri(AUTHORITY), null);
+}
+</pre>
\ No newline at end of file
diff --git a/docs/html-intl/intl/vi/guide/topics/resources/accessing-resources.jd b/docs/html-intl/intl/vi/guide/topics/resources/accessing-resources.jd
new file mode 100644
index 0000000..b5491dc
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/resources/accessing-resources.jd
@@ -0,0 +1,337 @@
+page.title=Truy cập Tài nguyên
+parent.title=Tài nguyên Ứng dụng
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Xem nhanh</h2>
+  <ul>
+    <li>Tài nguyên có thể được tham chiếu từ mã bằng các số nguyên từ {@code R.java}, chẳng hạn như
+{@code R.drawable.myimage}</li>
+    <li>Tài nguyên có thể được tham chiếu từ các tài nguyên bằng cách sử dụng một cú pháp XML đặc biệt, ví dụ như {@code
+&#64;drawable/myimage}</li>
+    <li>Bạn cũng có thể truy cập tài nguyên ứng dụng của mình bằng các phương pháp trong
+{@link android.content.res.Resources}</li>
+  </ul>
+
+  <h2>Lớp khóa</h2>
+  <ol>
+    <li>{@link android.content.res.Resources}</li>
+  </ol>
+
+  <h2>Trong tài liệu này</h2>
+  <ol>
+    <li><a href="#ResourcesFromCode">Truy cập Tài nguyên từ Mã</a></li>
+    <li><a href="#ResourcesFromXml">Truy cập Tài nguyên từ XML</a>
+      <ol>
+        <li><a href="#ReferencesToThemeAttributes">Tham chiếu các thuộc tính kiểu</a></li>
+      </ol>
+    </li>
+    <li><a href="#PlatformResources">Truy cập Tài nguyên Nền tảng</a></li>
+  </ol>
+
+  <h2>Xem thêm</h2>
+  <ol>
+    <li><a href="providing-resources.html">Cung cấp Tài nguyên</a></li>
+    <li><a href="available-resources.html">Loại Tài nguyên</a></li>
+  </ol>
+</div>
+</div>
+
+
+
+
+<p>Sau khi cung cấp một tài nguyên trong ứng dụng của mình (đề cập trong <a href="providing-resources.html">Cung cấp Tài nguyên</a>), bạn có thể áp dụng nó bằng cách
+tham chiếu ID tài nguyên đó. Tất cả ID tài nguyên được định nghĩa trong lớp {@code R} dự án của bạn, do
+công cụ {@code aapt} tự động khởi tạo.</p>
+
+<p>Khi ứng dụng của bạn được biên dịch, {@code aapt} khởi tạo lớp {@code R}, trong đó chứa
+ID tài nguyên cho tất cả tài nguyên trong thư mục {@code
+res/} của bạn. Với mỗi loại tài nguyên, có một lớp con {@code R} (ví dụ,
+{@code R.drawable} cho tất cả tài nguyên có thể vẽ), và với mỗi tài nguyên loại đó, có một số nguyên
+tĩnh (ví dụ, {@code R.drawable.icon}). Số nguyên này là ID tài nguyên mà bạn có thể sử dụng
+để truy xuất tài nguyên của mình.</p>
+
+<p>Mặc dù lớp {@code R} là nơi các ID tài nguyên được quy định, bạn sẽ không cần
+tìm ở đó để khám phá một ID tài nguyên. Một ID tài nguyên luôn bao gồm:</p>
+<ul>
+  <li><em>Loại tài nguyên</em>: Mỗi tài nguyên được nhóm vào một "loại," chẳng hạn như {@code
+string}, {@code drawable}, và {@code layout}. Để biết thêm về các loại khác nhau, hãy xem phần <a href="available-resources.html">Loại Tài nguyên</a>.
+  </li>
+  <li><em>Tên tài nguyên</em>, là, hoặc: tên tệp,
+không bao gồm phần mở rộng; hoặc giá trị trong thuộc tính XML {@code android:name}, nếu tài nguyên
+đó là một giá trị đơn giản (chẳng hạn như một xâu).</li>
+</ul>
+
+<p>Có hai cách để bạn có thể truy cập một tài nguyên:</p>
+<ul>
+  <li><strong>Trong mã:</strong> Sử dụng một số nguyên tĩnh từ một lớp con của lớp {@code R}
+của bạn, chẳng hạn như:
+    <pre class="classic no-pretty-print">R.string.hello</pre>
+    <p>{@code string} là loại tài nguyên và {@code hello} là tên tài nguyên. Có nhiều
+API Android mà có thể truy cập các tài nguyên của bạn khi bạn cung cấp một ID tài nguyên theo định dạng này. Xem
+<a href="#ResourcesFromCode">Truy cập Tài nguyên trong Mã</a>.</p>
+  </li>
+  <li><strong>Trong XML:</strong> Sử dụng một cú pháp XML đặc biệt mà cũng tương ứng với
+ID tài nguyên được định nghĩa trong lớp {@code R} của bạn, chẳng hạn như:
+    <pre class="classic no-pretty-print">&#64;string/hello</pre>
+    <p>{@code string} là loại tài nguyên và {@code hello} là tên tài nguyên. Bạn có thể sử dụng cú pháp
+này trong một tài nguyên XML ở bất kỳ nơi nào có kỳ vọng một giá trị mà bạn cung cấp trong một tài nguyên. Xem phần <a href="#ResourcesFromXml">Truy cập Tài nguyên từ XML</a>.</p>
+  </li>
+</ul>
+
+
+
+<h2 id="ResourcesFromCode">Truy cập Tài nguyên trong Mã </h2>
+
+<p>Bạn có thể sử dụng một tài nguyên trong mã bằng cách chuyển ID tài nguyên như một tham số phương pháp. Ví
+dụ, bạn có thể đặt một {@link android.widget.ImageView} để sử dụng tài nguyên {@code res/drawable/myimage.png}
+bằng cách sử dụng {@link android.widget.ImageView#setImageResource(int) setImageResource()}:</p>
+<pre>
+ImageView imageView = (ImageView) findViewById(R.id.myimageview);
+imageView.setImageResource(<strong>R.drawable.myimage</strong>);
+</pre>
+
+<p>Bạn cũng có thể truy xuất các tài nguyên riêng lẻ bằng các phương pháp trong {@link
+android.content.res.Resources}, theo đó bạn có thể nhận được một thực thể
+bằng {@link android.content.Context#getResources()}.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>Truy cập các Tệp Gốc</h2>
+
+<p>Tuy không thường gặp, song bạn có thể cần truy cập các tệp và thư mục gốc của mình. Nếu bạn làm vậy thì việc
+lưu các tệp của bạn trong {@code res/} sẽ không có tác dụng với bạn, vì cách duy nhất để đọc một tài nguyên từ
+{@code res/} đó là bằng ID tài nguyên. Thay vào đó, bạn có thể lưu các tài nguyên của mình trong thư mục
+{@code assets/}.</p>
+<p>Các tệp lưu trong thư mục {@code assets/} <em>không</em> được cấp ID tài nguyên
+, vì thế bạn không thể tham chiếu chúng thông qua lớp {@code R} hoặc từ các tài nguyên XML. Thay vào đó, bạn có thể
+truy vấn các tệp trong thư mục {@code assets/} như một hệ thống tệp bình thường và đọc dữ liệu thô bằng cách sử dụng
+{@link android.content.res.AssetManager}.</p>
+<p>Tuy nhiên, nếu tất cả những gì bạn yêu cầu là khả năng đọc dữ liệu thô (chẳng hạn như một tệp video hoặc âm thanh),
+vậy bạn hãy lưu tệp trong thư mục {@code res/raw/} và đọc một luồng byte bằng cách sử dụng {@link
+android.content.res.Resources#openRawResource(int) openRawResource()}.</p>
+
+</div>
+</div>
+
+
+<h3>Cú pháp</h3>
+
+<p>Sau đây là cú pháp để tham chiếu một tài nguyên trong mã:</p>
+
+<pre class="classic no-pretty-print">
+[<em>&lt;package_name&gt;</em>.]R.<em>&lt;resource_type&gt;</em>.<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li><em>{@code &lt;package_name&gt;}</em> là tên của gói mà tài nguyên nằm trong đó (không
+bắt buộc khi tham chiếu các tài nguyên từ gói của chính bạn).</li>
+  <li><em>{@code &lt;resource_type&gt;}</em> là lớp con {@code R} cho loại tài nguyên.</li>
+  <li><em>{@code &lt;resource_name&gt;}</em> hoặc là tên tệp tài nguyên
+không có phần mở rộng hoặc là giá trị thuộc tính {@code android:name} trong phần tử XML (đối với các giá trị
+đơn giản).</li>
+</ul>
+<p>Xem phần <a href="available-resources.html">Loại Tài nguyên</a> để
+biết thêm thông tin về mỗi loại tài nguyên và cách tham chiếu chúng.</p>
+
+
+<h3>Trường hợp sử dụng</h3>
+
+<p>Có nhiều phương pháp chấp nhận một tham số ID tài nguyên và bạn có thể truy xuất tài nguyên bằng cách sử dụng
+các phương pháp trong {@link android.content.res.Resources}. Bạn có thể lấy một thực thể {@link
+android.content.res.Resources} bằng {@link android.content.Context#getResources
+Context.getResources()}.</p>
+
+
+<p>Sau đây là một số ví dụ về truy cập tài nguyên trong mã:</p>
+
+<pre>
+// Load a background for the current screen from a drawable resource
+{@link android.app.Activity#getWindow()}.{@link
+android.view.Window#setBackgroundDrawableResource(int)
+setBackgroundDrawableResource}(<strong>R.drawable.my_background_image</strong>) ;
+
+// Set the Activity title by getting a string from the Resources object, because
+//  this method requires a CharSequence rather than a resource ID
+{@link android.app.Activity#getWindow()}.{@link android.view.Window#setTitle(CharSequence)
+setTitle}(getResources().{@link android.content.res.Resources#getText(int)
+getText}(<strong>R.string.main_title</strong>));
+
+// Load a custom layout for the current screen
+{@link android.app.Activity#setContentView(int)
+setContentView}(<strong>R.layout.main_screen</strong>);
+
+// Set a slide in animation by getting an Animation from the Resources object
+mFlipper.{@link android.widget.ViewAnimator#setInAnimation(Animation)
+setInAnimation}(AnimationUtils.loadAnimation(this,
+        <strong>R.anim.hyperspace_in</strong>));
+
+// Set the text on a TextView object using a resource ID
+TextView msgTextView = (TextView) findViewById(<strong>R.id.msg</strong>);
+msgTextView.{@link android.widget.TextView#setText(int)
+setText}(<strong>R.string.hello_message</strong>);
+</pre>
+
+
+<p class="caution"><strong>Chú ý:</strong> Bạn không nên sửa đổi tệp {@code
+R.java} bằng cách thủ công&mdash;nó được khởi tạo bởi công cụ {@code aapt} khi dự án của bạn được
+biên dịch. Mọi thay đổi đều bị ghi đè vào lần biên dịch tới của bạn.</p>
+
+
+
+<h2 id="ResourcesFromXml">Truy cập Tài nguyên từ XML</h2>
+
+<p>Bạn có thể định nghĩa các giá trị cho một số thuộc tính và phần tử XML bằng cách sử dụng một
+tham chiếu tới một tài nguyên hiện có. Bạn sẽ thường làm điều này khi tạo các tệp bố trí, để
+cung cấp các xâu và hình ảnh cho widget của mình.</p>
+
+<p>Ví dụ, nếu thêm một {@link android.widget.Button} vào bố trí của mình, bạn nên sử dụng
+một <a href="string-resource.html">tài nguyên xâu</a> cho văn bản nút:</p>
+
+<pre>
+&lt;Button
+    android:layout_width="fill_parent"
+    android:layout_height="wrap_content"
+    android:text="<strong>@string/submit</strong>" /&gt;
+</pre>
+
+
+<h3>Cú pháp</h3>
+
+<p>Sau đây là cú pháp để tham chiếu một tài nguyên trong một tài nguyên XML:</p>
+
+<pre class="classic no-pretty-print">
+&#64;[<em>&lt;package_name&gt;</em>:]<em>&lt;resource_type&gt;</em>/<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li>{@code &lt;package_name&gt;} là tên của gói mà tài nguyên nằm trong đó (không
+bắt buộc khi tham chiếu các tài nguyên từ cùng gói đó)</li>
+  <li>{@code &lt;resource_type&gt;} là lớp con
+{@code R} cho loại tài nguyên.</li>
+  <li>{@code &lt;resource_name&gt;} hoặc là tên tệp tài nguyên
+không có phần mở rộng hoặc là giá trị thuộc tính {@code android:name} trong phần tử XML (đối với các giá trị
+đơn giản).</li>
+</ul>
+
+<p>Xem phần <a href="available-resources.html">Loại Tài nguyên</a> để
+biết thêm thông tin về mỗi loại tài nguyên và cách tham chiếu chúng.</p>
+
+
+<h3>Trường hợp sử dụng</h3>
+
+<p>Trong một số trường hợp bạn phải sử dụng một tài nguyên cho một giá trị trong XML (ví dụ, để áp dụng một hình ảnh có thể vẽ
+cho một widget), nhưng bạn cũng có thể sử dụng một tài nguyên trong XML ở bất kỳ nơi nào chấp nhận một giá trị đơn giản. Ví
+dụ, nếu bạn có tệp tài nguyên sau bao gồm một <a href="more-resources.html#Color">tài nguyên màu</a> và một <a href="string-resource.html">tài nguyên xâu</a>:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+   &lt;color name="opaque_red">#f00&lt;/color>
+   &lt;string name="hello">Hello!&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>Bạn có thể sử dụng những tài nguyên này trong tệp bố trí sau để đặt màu văn bản và
+xâu văn bản:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;color/opaque_red</strong>&quot;
+    android:text=&quot;<strong>&#64;string/hello</strong>&quot; /&gt;
+</pre>
+
+<p>Trong trường hợp này, bạn không cần quy định tên gói trong tham chiếu tài nguyên đó vì tài nguyên
+xuất phát từ gói của chính bạn. Để
+tham chiếu một tài nguyên hệ thống, bạn sẽ cần đưa vào tên gói. Ví dụ:</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;android:color/secondary_text_dark</strong>&quot;
+    android:text=&quot;&#64;string/hello&quot; /&gt;
+</pre>
+
+<p class="note"><strong>Lưu ý:</strong> Bạn nên sử dụng các tài nguyên xâu 
+vào mọi lúc, để ứng dụng của bạn có thể được bản địa hóa cho các ngôn ngữ khác. 
+Để biết thông tin về việc tạo các tài nguyên
+thay thế (chẳng hạn như xâu được bản địa hóa), hãy xem phần <a href="providing-resources.html#AlternativeResources">Cung cấp Tài nguyên
+Thay thế</a>. Để được hướng dẫn đầy đủ về việc bản địa hóa ứng dụng của bạn cho các ngôn ngữ khác,
+hãy xem phần <a href="localization.html">Bản địa hóa</a>.</p>
+
+<p>Bạn thậm chí có thể sử dụng tài nguyên trong XML để tạo các bí danh. Ví dụ, bạn có thể tạo một tài nguyên có thể vẽ
+là một bí danh cho một tài nguyên có thể vẽ khác:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/other_drawable" />
+</pre>
+
+<p>Nghe có vẻ thừa, nhưng có thể rất hữu ích khi sử dụng tài nguyên thay thế. Đọc thêm về
+<a href="providing-resources.html#AliasResources">Tạo tài nguyên bí danh</a>.</p>
+
+
+
+<h3 id="ReferencesToThemeAttributes">Tham chiếu các thuộc tính kiểu</h3>
+
+<p>Một tài nguyên thuộc tính kiểu sẽ cho phép bạn tham chiếu giá trị
+của một thuộc tính trong chủ đề đang áp dụng. Tham chiếu một thuộc tính kiểu sẽ cho phép bạn
+tùy chỉnh diện mạo của các phần tử UI bằng cách tạo kiểu cho chúng để phù hợp với các biến đổi tiêu chuẩn được cung cấp bởi
+chủ đề hiện tại, thay vì cung cấp một giá trị được mã hóa cố định. Tham chiếu một thuộc tính kiểu
+về cơ bản mà nói, là "sử dụng kiểu được định nghĩa bởi thuộc tính này, trong chủ đề hiện tại."</p>
+
+<p>Để tham chiếu một thuộc tính kiểu, cú pháp tên gần như tương tự với định dạng tài nguyên thường
+, nhưng thay vì biểu tượng @ ({@code @}), hãy sử dụng một dấu hỏi ({@code ?}), và
+phần loại tài nguyên là tùy chọn. Ví dụ:</p>
+
+<pre class="classic">
+?[<em>&lt;package_name&gt;</em>:][<em>&lt;resource_type&gt;</em>/]<em>&lt;resource_name&gt;</em>
+</pre>
+
+<p>Ví dụ, sau đây là cách bạn có thể tham chiếu một thuộc tính để đặt màu văn bản cho phù hợp với màu văn bản
+"chính" của chủ đề hệ thống:</p>
+
+<pre>
+&lt;EditText id=&quot;text&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;wrap_content&quot;
+    android:textColor=&quot;<strong>?android:textColorSecondary</strong>&quot;
+    android:text=&quot;&#64;string/hello_world&quot; /&gt;
+</pre>
+
+<p>Ở đây, thuộc tính {@code android:textColor} quy định tên của một thuộc tính kiểu
+trong chủ đề hiện tại. Hiện nay, Android sử dụng giá trị được áp dụng cho thuộc tính kiểu {@code android:textColorSecondary}
+làm giá trị cho {@code android:textColor} trong widget này. Vì công cụ tài nguyên
+hệ thống biết rằng một tài nguyên thuộc tính sẽ được yêu cầu trong ngữ cảnh này,
+bạn không cần nêu rõ loại (mà sẽ là
+<code>?android:attr/textColorSecondary</code>)&mdash;bạn có thể không nêu loại {@code attr}.</p>
+
+
+
+
+<h2 id="PlatformResources">Truy cập Tài nguyên Nền tảng</h2>
+
+<p>Android bao gồm nhiều tài nguyên tiêu chuẩn, chẳng hạn như kiểu, chủ đề và bố trí. Để
+truy cập các tài nguyên này, hãy xác định tham chiếu tài nguyên của bạn bằng tên gói
+<code>android</code>. Ví dụ, Android cung cấp một tài nguyên bố trí bạn có thể sử dụng cho
+các mục danh sách trong một {@link android.widget.ListAdapter}:</p>
+
+<pre>
+{@link android.app.ListActivity#setListAdapter(ListAdapter)
+setListAdapter}(new {@link
+android.widget.ArrayAdapter}&lt;String&gt;(this, <strong>android.R.layout.simple_list_item_1</strong>, myarray));
+</pre>
+
+<p>Trong ví dụ này, {@link android.R.layout#simple_list_item_1} là một tài nguyên bố trí được định nghĩa bởi
+nền tảng cho các mục trong một {@link android.widget.ListView}. Bạn có thể sử dụng điều này thay vì tạo
+bố trí riêng của mình cho các mục danh sách. Để biết thêm thông tin, hãy xem phần
+<a href="{@docRoot}guide/topics/ui/layout/listview.html">Dạng xem Danh sách</a> trong hướng dẫn cho nhà phát triển.</p>
+
diff --git a/docs/html-intl/intl/vi/guide/topics/resources/overview.jd b/docs/html-intl/intl/vi/guide/topics/resources/overview.jd
new file mode 100644
index 0000000..7bbd72a
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/resources/overview.jd
@@ -0,0 +1,103 @@
+page.title=Tổng quan về Tài nguyên
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Chủ đề</h2>
+  <ol>
+    <li><a href="providing-resources.html">Cung cấp Tài nguyên</a></li>
+    <li><a href="accessing-resources.html">Truy cập Tài nguyên</a></li>
+    <li><a href="runtime-changes.html">Xử lý Thay đổi Thời gian chạy</a></li>
+    <li><a href="localization.html">Bản địa hóa</a></li>
+  </ol>
+
+  <h2>Tham khảo</h2>
+  <ol>
+    <li><a href="available-resources.html">Loại Tài nguyên</a></li>
+  </ol>
+</div>
+</div>
+
+
+<p>Bạn nên luôn ngoại hiện hóa các tài nguyên chẳng hạn như hình ảnh và xâu từ mã
+ứng dụng của mình, sao cho bạn có thể duy trì chúng một cách độc lập. Việc ngoại hiện hóa
+tài nguyên cũng cho phép bạn cung cấp các tài nguyên thay thế hỗ trợ những cấu hình
+thiết bị cụ thể chẳng hạn như ngôn ngữ hoặc kích cỡ màn hình khác nhau, điều này đang ngày càng trở nên
+quan trọng bởi các thiết bị dựa trên nền tảng Android ngày càng sẵn có với các cấu hình khác nhau. Để
+đảm bảo tính tương thích với các cấu hình khác nhau, bạn phải tổ chức tài nguyên trong
+thư mục {@code res/} dự án của bạn bằng cách sử dụng các thư mục con khác nhau có chức năng nhóm tài nguyên lại theo loại và
+cấu hình.</p>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram1.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Hình 1.</strong> Hai thiết bị khác nhau, mỗi thiết bị sử dụng bố trí mặc định
+(ứng dụng không cung cấp bố trí thay thế).</p>
+</div>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Hình 2.</strong> Hai thiết bị khác nhau, mỗi thiết bị sử dụng một bố trí khác nhau được cung cấp
+cho các kích cỡ màn hình khác nhau.</p>
+</div>
+
+<p>Đối với mọi loại tài nguyên, bạn có thể quy định tài nguyên <em>mặc định</em> và nhiều tài nguyên
+<em>thay thế</em> cho ứng dụng của mình:</p>
+<ul>
+  <li>Tài nguyên mặc định là những tài nguyên nên được sử dụng không phụ thuộc vào
+cấu hình thiết bị hoặc khi không có tài nguyên thay thế khớp với cấu hình
+hiện tại.</li>
+  <li>Tài nguyên thay thế là những tài nguyên mà bạn đã thiết kế để sử dụng với một cấu hình
+cụ thể. Để quy định rằng một nhóm tài nguyên áp dụng cho một cấu hình cụ thể,
+hãy nối hình dạng cấu hình phù hợp với tên thư mục.</li>
+</ul>
+
+<p>Ví dụ, trong khi bố trí UI mặc định của bạn
+được lưu trong thư mục {@code res/layout/}, bạn có thể quy định một bố trí khác sẽ
+được sử dụng khi màn hình ở hướng khổ ngang, bằng cách lưu nó trong thư mục {@code res/layout-land/}
+. Android tự động áp dụng các tài nguyên phù hợp bằng cách khớp cấu hình hiện tại
+của thiết bị với tên thư mục tài nguyên của bạn.</p>
+
+<p>Hình 1 minh họa cách hệ thống áp dụng cùng bố trí cho
+hai thiết bị khác nhau khi không có sẵn tài nguyên thay thế. Hình 2 minh họa
+cùng ứng dụng khi nó thêm một tài nguyên bố trí thay thế cho các màn hình lớn hơn.</p>
+
+<p>Các tài liệu sau trình bày hướng dẫn hoàn chỉnh về cách bạn có thể tổ chức các tài nguyên ứng dụng của mình,
+quy định tài nguyên thay thế, truy cập chúng trong ứng dụng của bạn, và nhiều điều khác:</p>
+
+<dl>
+  <dt><strong><a href="providing-resources.html">Cung cấp Tài nguyên</a></strong></dt>
+  <dd>Những kiểu tài nguyên mà bạn có thể cung cấp trong ứng dụng của mình, nơi lưu chúng, và cách tạo
+tài nguyên thay thế cho những cấu hình thiết bị cụ thể.</dd>
+  <dt><strong><a href="accessing-resources.html">Truy cập Tài nguyên</a></strong></dt>
+  <dd>Cách sử dụng tài nguyên mà bạn đã cung cấp hoặc bằng cách tham chiếu chúng từ mã ứng dụng của mình
+hoặc từ các tài nguyên XML khác.</dd>
+  <dt><strong><a href="runtime-changes.html">Xử lý Thay đổi Thời gian chạy</a></strong></dt>
+  <dd>Cách quản lý những thay đổi cấu hình mà diễn ra trong khi Hoạt động của bạn đang chạy.</dd>
+  <dt><strong><a href="localization.html">Bản địa hóa</a></strong></dt>
+  <dd>Một hướng dẫn từ dưới lên về việc bản địa hóa ứng dụng của bạn bằng cách sử dụng các tài nguyên thay thế. Trong khi đây
+chỉ là một công dụng cụ thể của tài nguyên thay thế, nó rất quan trọng để tiếp cận với nhiều
+người dùng hơn.</dd>
+  <dt><strong><a href="available-resources.html">Loại Tài nguyên</a></strong></dt>
+  <dd>Một tham chiếu về các loại tài nguyên khác nhau mà bạn có thể cung cấp, mô tả các phần tử XML,
+thuộc tính và cú pháp của chúng. Ví dụ, tham chiếu này cho bạn thấy cách tạo một tài nguyên cho
+menu ứng dụng, đối tượng vẽ được, hoạt ảnh, và hơn thế nữa.</dd>
+</dl>
+
+<!--
+<h2>Raw Assets</h2>
+
+<p>An alternative to saving files in {@code res/} is to save files in the {@code
+assets/} directory. This should only be necessary if you need direct access to original files and
+directories by name. Files saved in the {@code assets/} directory will not be given a resource
+ID, so you can't reference them through the {@code R} class or from XML resources. Instead, you can
+query data in the {@code assets/} directory like an ordinary file system, search through the
+directory and
+read raw data using {@link android.content.res.AssetManager}. For example, this can be more useful
+when dealing with textures for a game. However, if you only need to read raw data from a file
+(such as a video or audio file), then you should save files into the {@code res/raw/} directory and
+then read a stream of bytes using {@link android.content.res.Resources#openRawResource(int)}. This
+is uncommon, but if you need direct access to original files in {@code assets/}, refer to the {@link
+android.content.res.AssetManager} documentation.</p>
+-->
diff --git a/docs/html-intl/intl/vi/guide/topics/resources/providing-resources.jd b/docs/html-intl/intl/vi/guide/topics/resources/providing-resources.jd
new file mode 100644
index 0000000..b733643
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/resources/providing-resources.jd
@@ -0,0 +1,1094 @@
+page.title=Cung cấp Tài nguyên
+parent.title=Tài nguyên Ứng dụng
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Xem nhanh</h2>
+  <ul>
+    <li>Các loại tài nguyên khác nhau thuộc về các thư mục con khác nhau của {@code res/}</li>
+    <li>Tài nguyên thay thế cung cấp các tệp tài nguyên theo cấu hình cụ thể</li>
+    <li>Luôn bao gồm tài nguyên mặc định để ứng dụng của bạn không phụ thuộc vào các
+cấu hình thiết bị cụ thể</li>
+  </ul>
+  <h2>Trong tài liệu này</h2>
+  <ol>
+    <li><a href="#ResourceTypes">Nhóm các Loại Tài nguyên lại</a></li>
+    <li><a href="#AlternativeResources">Cung cấp Tài nguyên Thay thế</a>
+      <ol>
+        <li><a href="#QualifierRules">Quy tắc về tên hạn định</a></li>
+        <li><a href="#AliasResources">Tạo tài nguyên bí danh</a></li>
+      </ol>
+    </li>
+    <li><a href="#Compatibility">Cung cấp Tính tương thích giữa Thiết bị với Tài nguyên Tốt nhất</a></li>
+    <li><a href="#BestMatch">Cách Android tìm Tài nguyên Khớp Tốt nhất</a></li>
+  </ol>
+
+  <h2>Xem thêm</h2>
+  <ol>
+    <li><a href="accessing-resources.html">Truy cập Tài nguyên</a></li>
+    <li><a href="available-resources.html">Loại Tài nguyên</a></li>
+    <li><a href="{@docRoot}guide/practices/screens_support.html">Hỗ trợ Nhiều
+Màn hình</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Bạn nên luôn ngoại hiện hóa các tài nguyên ứng dụng chẳng hạn như hình ảnh và xâu từ mã
+của mình, sao cho bạn có thể duy trì chúng một cách độc lập. Bạn cũng nên cung cấp tài nguyên thay thế cho
+cấu hình thiết bị cụ thể bằng cách nhóm chúng lại trong những thư mục tài nguyên đích danh. Trong
+thời gian chạy, Android sẽ sử dụng tài nguyên phù hợp dựa trên cấu hình hiện tại. Ví
+dụ, bạn có thể muốn cung cấp một bố trí UI khác phụ thuộc vào kích cỡ màn hình hoặc các xâu
+khác nhau phụ thuộc vào thiết đặt ngôn ngữ.</p>
+
+<p>Sau khi ngoại hiện hóa các tài nguyên ứng dụng của mình, bạn có thể truy cập chúng
+bằng cách sử dụng các ID tài nguyên được khởi tạo trong lớp {@code R} của dự án của bạn. Cách sử dụng
+tài nguyên trong ứng dụng của bạn được trình bày trong phần <a href="accessing-resources.html">Truy cập
+Tài nguyên</a>. Tài liệu này trình bày với bạn cách nhóm các tài nguyên lại trong dự án Android của bạn và
+cung cấp tài nguyên thay thế cho những cấu hình thiết bị cụ thể.</p>
+
+
+<h2 id="ResourceTypes">Nhóm các Loại Tài nguyên lại</h2>
+
+<p>Bạn nên đặt từng loại tài nguyên vào một thư mục con cụ thể trong thư mục
+{@code res/} dự án của mình. Ví dụ, sau đây là phân cấp tệp của một dự án đơn giản:</p>
+
+<pre class="classic no-pretty-print">
+MyProject/
+    src/  <span style="color:black">
+        MyActivity.java  </span>
+    res/
+        drawable/  <span style="color:black">
+            graphic.png  </span>
+        layout/  <span style="color:black">
+            main.xml
+            info.xml</span>
+        mipmap/  <span style="color:black">
+            icon.png </span>
+        values/  <span style="color:black">
+            strings.xml  </span>
+</pre>
+
+<p>Như bạn có thể thấy trong ví dụ này, thư mục {@code res/} chứa tất cả tài nguyên (trong
+các thư mục con): một tài nguyên hình ảnh, hai tài nguyên bố trí, các thư mục{@code mipmap/} cho biểu tượng của trình khởi chạy
+, và một tệp tài nguyên xâu. Tên thư mục
+tài nguyên có vai trò quan trọng và được mô tả trong bảng 1.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Để biết thêm thông tin về cách sử dụng thư mục mipmap, hãy xem phần
+<a href="{@docRoot}tools/projects/index.html#mipmap">Tổng quan về Quản lý Dự án</a>.</p>
+
+<p class="table-caption" id="table1"><strong>Bảng 1.</strong> Các thư mục tài nguyên
+được hỗ trợ bên trong thư mục {@code res/} của dự án.</p>
+
+<table>
+  <tr>
+    <th scope="col">Thư mục</th>
+    <th scope="col">Loại Tài nguyên</th>
+  </tr>
+
+  <tr>
+    <td><code>animator/</code></td>
+    <td>Tệp XML định nghĩa <a href="{@docRoot}guide/topics/graphics/prop-animation.html">các hoạt hình
+tính chất</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>anim/</code></td>
+    <td>Tệp XML định nghĩa <a href="{@docRoot}guide/topics/graphics/view-animation.html#tween-animation">các hoạt hình
+tween</a>. (Các hoạt hình tính chất cũng có thể được lưu trong thư mục này, nhưng
+thư mục {@code animator/} được ưu tiên cho hoạt hình tính chất để phân biệt giữa hai
+loại này.)</td>
+  </tr>
+
+  <tr>
+    <td><code>color/</code></td>
+    <td>Tệp XML định nghĩa một danh sách trạng thái các màu. Xem phần <a href="color-list-resource.html">Tài nguyên
+Danh sách Trạng thái Màu</a></td>
+  </tr>
+
+  <tr>
+    <td><code>drawable/</code></td>
+
+    <td><p>Tệp bitmap ({@code .png}, {@code .9.png}, {@code .jpg}, {@code .gif}) hoặc tệp XML
+được biên dịch thành các loại tài nguyên con vẽ được sau:</p>
+      <ul>
+        <li>Tệp bitmap</li>
+        <li>Nine-Patche (tệp bitmap có thể thay đổi kích cỡ)</li>
+        <li>Danh sách trạng thái</li>
+        <li>Hình</li>
+        <li>Nội dung vẽ được hoạt hình</li>
+        <li>Nội dung vẽ được khác</li>
+      </ul>
+      <p>Xem phần <a href="drawable-resource.html">Tài nguyên Vẽ được</a>.</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>mipmap/</code></td>
+    <td>Tệp vẽ được cho các mật độ biểu tượng trình khởi chạy khác nhau. Để biết thêm thông tin về việc quản lý
+    các biểu tượng trình khởi chạy bằng thư mục {@code mipmap/}, xem phần
+    <a href="{@docRoot}tools/project/index.html#mipmap">Tổng quan về Quản lý Dự án</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>layout/</code></td>
+    <td>Tệp XML định nghĩa một bố trí giao diện người dùng.
+        Xem phần <a href="layout-resource.html">Tài nguyên Bố trí</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>menu/</code></td>
+    <td>Tệp XML định nghĩa các menu ứng dụng, chẳng hạn như Menu Tùy chọn, Menu Ngữ cảnh, hoặc Menu
+Con. Xem phần <a href="menu-resource.html">Tài nguyên Menu</a>.</td>
+  </tr>
+
+  <tr>
+    <td><code>raw/</code></td>
+    <td><p>Tệp tùy ý để lưu trong dạng thô của chúng. Để mở những tài nguyên có một
+{@link java.io.InputStream} thô này, hãy gọi {@link android.content.res.Resources#openRawResource(int)
+Resources.openRawResource()} bằng ID tài nguyên, chính là {@code R.raw.<em>filename</em>}.</p>
+      <p>Tuy nhiên, nếu cần truy cập tên tệp gốc và phân cấp tệp, bạn có thể xem xét
+lưu một số tài nguyên trong thư mục {@code
+assets/} (thay vì {@code res/raw/}). Các tệp trong {@code assets/} không được cấp
+ID tài nguyên, vì thế bạn chỉ có thể đọc chúng bằng cách sử dụng {@link android.content.res.AssetManager}.</p></td>
+  </tr>
+
+  <tr>
+    <td><code>values/</code></td>
+    <td><p>Tệp XML chứa các giá trị đơn giản, chẳng hạn như xâu, số nguyên, và màu sắc.</p>
+      <p>Trong đó, tệp tài nguyên XML trong các thư mục con {@code res/} khác định nghĩa một tài nguyên đơn lẻ
+dựa trên tên tệp XML, tệp trong thư mục {@code values/} sẽ mô tả nhiều nguồn.
+Đối với tệp trong thư mục này, mỗi phần tử con của phần tử {@code &lt;resources&gt;} lại định nghĩa một tài nguyên
+duy nhất. Ví dụ, phần tử {@code &lt;string&gt;} tạo tài nguyên
+{@code R.string} và phần tử {@code &lt;color&gt;} tạo tài nguyên {@code R.color}
+.</p>
+      <p>Vì mỗi tài nguyên được định nghĩa bằng phần tử XML của chính nó, bạn có thể đặt tên tệp
+theo cách mình muốn và đặt các loại tài nguyên khác nhau vào một tệp. Tuy nhiên, để giải thích rõ, bạn có thể
+muốn đặt các loại tài nguyên duy nhất vào những tệp khác nhau. Ví dụ, sau đây là một số quy ước
+tên tệp cho các tài nguyên mà bạn có thể tạo trong thư mục này:</p>
+      <ul>
+        <li>arrays.xml cho mảng tài nguyên (<a href="more-resources.html#TypedArray">mảng có phân loại</a>).</li>
+        <li>colors.xml cho <a href="more-resources.html#Color">giá trị màu</a></li>
+        <li>dimens.xml cho <a href="more-resources.html#Dimension">giá trị kích thước</a>.</li>
+        <li>strings.xml cho <a href="string-resource.html">giá trị
+xâu</a>.</li>
+        <li>styles.xml cho <a href="style-resource.html">kiểu</a>.</li>
+      </ul>
+      <p>Xem các phần <a href="string-resource.html">Tài nguyên Xâu</a>,
+        <a href="style-resource.html">Tài nguyên Kiểu</a>, và
+        <a href="more-resources.html">các Loại Tài nguyên khác</a>.</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>xml/</code></td>
+    <td>Tệp XML tùy ý mà có thể được đọc vào thời gian chạy bằng cách gọi {@link
+android.content.res.Resources#getXml(int) Resources.getXML()}. Các tệp cấu hình XML khác nhau
+phải được lưu ở đây, chẳng hạn như một <a href="{@docRoot}guide/topics/search/searchable-config.html">cấu hình có thể tìm kiếm</a>.
+<!-- or preferences configuration. --></td>
+  </tr>
+</table>
+
+<p class="caution"><strong>Chú ý:</strong> Không được lưu tệp tài nguyên trực tiếp vào trong thư mục 
+{@code res/}&mdash;nó sẽ gây ra lỗi với trình biên dịch.</p>
+
+<p>Để biết thêm thông tin về các loại tài nguyên, hãy xem tài liệu <a href="available-resources.html">Các Loại Tài nguyên</a>.</p>
+
+<p>Tài nguyên mà bạn lưu trong thư mục con được định nghĩa trong bảng 1 là những tài nguyên "mặc định"
+của bạn. Cụ thể, những tài nguyên này định nghĩa thiết kế và nội dung mặc định cho ứng dụng của bạn.
+Tuy nhiên, các loại thiết bị dựa trên nền tảng Android khác nhau có thể gọi các loại tài nguyên khác nhau.
+Ví dụ, nếu một thiết bị có một màn hình lớn hơn bình thường, khi đó bạn nên cung cấp
+các tài nguyên bố trí khác nhau để tận dụng diện tích màn hình tăng thêm. Hoặc, nếu một thiết bị có
+thiết đặt ngôn ngữ khác, khi đó bạn nên cung cấp các tài nguyên xâu khác để biên dịch
+văn bản trong giao diện người dùng của mình. Để cung cấp những tài nguyên khác nhau này cho các cấu hình
+thiết bị khác nhau, bạn cần cung cấp tài nguyên thay thế bên cạnh những tài nguyên
+mặc định của mình.</p>
+
+
+<h2 id="AlternativeResources">Cung cấp Tài nguyên Thay thế</h2>
+
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>Hình 1.</strong> Hai thiết bị khác nhau, mỗi thiết bị sử dụng các tài nguyên bố trí khác nhau.</p>
+</div>
+
+<p>Hầu như mọi ứng dụng đều nên cung cấp các tài nguyên thay thế để hỗ trợ những cấu hình
+thiết bị cụ thể. Ví dụ, bạn nên bao gồm các tài nguyên vẽ được thay thế cho các mật độ
+màn hình khác nhau và tài nguyên xâu thay thế cho các ngôn ngữ khác nhau. Vào thời gian chạy, Android
+sẽ phát hiện cấu hình thiết bị hiện tại và tải các tài nguyên
+tương ứng cho ứng dụng của bạn.</p>
+
+<p>Để quy định các phương án thay thế theo cấu hình cụ thể cho một tập hợp tài nguyên:</p>
+<ol>
+  <li>Tạo một thư mục mới trong {@code res/} có tên theo dạng {@code
+<em>&lt;resources_name&gt;</em>-<em>&lt;config_qualifier&gt;</em>}.
+    <ul>
+      <li><em>{@code &lt;resources_name&gt;}</em> là tên thư mục của các tài nguyên mặc định tương ứng
+(được định nghĩa trong bảng 1).</li>
+      <li><em>{@code &lt;qualifier&gt;}</em> là tên quy định một cấu hình riêng
+mà những tài nguyên này sẽ được sử dụng cho nó (được định nghĩa trong bảng 2).</li>
+    </ul>
+    <p>Bạn có thể nối nhiều hơn một <em>{@code &lt;qualifier&gt;}</em>. Tách riêng từng cái
+bằng một nét gạch.</p>
+    <p class="caution"><strong>Chú ý:</strong> Khi nối nhiều hạn định, bạn phải
+đặt chúng theo cùng thứ tự liệt kê trong bảng 2. Nếu các hạn định được xếp thứ tự
+sai, tài nguyên sẽ bị bỏ qua.</p>
+  </li>
+  <li>Lưu các tài nguyên thay thế tương ứng vào thư mục mới này. Tệp tài nguyên phải được
+đặt tên đúng như các tệp tài nguyên mặc định.</li>
+</ol>
+
+<p>Ví dụ, sau đây là một số tài nguyên mặc định và thay thế:</p>
+
+<pre class="classic no-pretty-print">
+res/
+    drawable/   <span style="color:black">
+        icon.png
+        background.png    </span>
+    drawable-hdpi/  <span style="color:black">
+        icon.png
+        background.png  </span>
+</pre>
+
+<p>Hạn định {@code hdpi} cho biết rằng các tài nguyên trong thư mục đó áp dụng cho những thiết bị có
+màn hình mật độ cao. Hình ảnh trong từng thư mục vẽ được này được định cỡ cho một mật độ
+màn hình cụ thể, nhưng tên tệp thì
+giống hệt. Bằng cách này, ID tài nguyên mà bạn sử dụng để tham chiếu {@code icon.png} hoặc hình ảnh {@code
+background.png} luôn như nhau, nhưng Android sẽ chọn
+phiên bản của từng tài nguyên cho khớp tốt nhất với thiết bị hiện tại, bằng cách so sánh thông tin cấu hình thiết bị
+với các hạn định về tên thư mục tài nguyên.</p>
+
+<p>Android hỗ trợ một vài hạn định cấu hình và bạn có thể
+thêm nhiều hạn định vào một tên thư mục, bằng cách tách riêng từng hạn định bằng một nét gạch. Bảng 2
+liệt kê các hạn định cấu hình hợp lệ, theo thứ tự ưu tiên&mdash;nếu bạn sử dụng nhiều
+hạn định cho một thư mục tài nguyên, bạn phải thêm chúng vào tên thư mục theo thứ tự được liệt kê trong
+bảng.</p>
+
+
+<p class="table-caption" id="table2"><strong>Bảng 2.</strong> Tên của hạn định
+cấu hình.</p>
+<table>
+    <tr>
+        <th>Cấu hình</th>
+        <th>Giá trị Hạn định</th>
+        <th>Mô tả</th>
+    </tr>
+    <tr id="MccQualifier">
+      <td>MCC và MNC</td>
+      <td>Ví dụ:<br/>
+        <code>mcc310</code><br/>
+        <code><nobr>mcc310-mnc004</nobr></code><br/>
+        <code>mcc208-mnc00</code><br/>
+        v.v.
+      </td>
+      <td>
+        <p>Mã quốc gia di động (MCC), đằng sau có thể là mã mạng di động (MNC)
+        từ thẻ SIM trong thiết bị. Ví dụ, <code>mcc310</code> ở Hoa Kỳ đối với mọi nhà mạng,
+        <code>mcc310-mnc004</code> ở Hoa Kỳ đối với Verizon, và <code>mcc208-mnc00</code> ở Pháp đối với
+        Orange.</p>
+        <p>Nếu thiết bị sử dụng một kết nối vô tuyến (điện thoại GSM), các giá trị MCC và MNC sẽ lấy
+       từ thẻ SIM.</p>
+        <p>Bạn cũng có thể sử dụng chỉ MCC (ví dụ, để đưa các tài nguyên
+pháp lý theo quốc gia cụ thể vào ứng dụng của bạn). Nếu bạn cần quy định chỉ dựa trên ngôn ngữ, hãy sử dụng hạn định
+<em>ngôn ngữ và khu vực</em> để thay thế (được trình bày ở phần tiếp theo). Nếu bạn quyết định sử dụng hạn định MCC và
+MNC, bạn nên cẩn thận và kiểm tra xem nó có hoạt động như kỳ vọng không.</p>
+        <p>Ngoài ra, cũng xem các trường cấu hình {@link
+android.content.res.Configuration#mcc}, và {@link
+android.content.res.Configuration#mnc}, tương ứng cho biết mã quốc gia di động và
+mã mạng di động hiện tại.</p>
+      </td>
+    </tr>
+    <tr id="LocaleQualifier">
+      <td>Ngôn ngữ và khu vực</td>
+      <td>Ví dụ:<br/>
+        <code>en</code><br/>
+        <code>fr</code><br/>
+        <code>en-rUS</code><br/>
+        <code>fr-rFR</code><br/>
+        <code>fr-rCA</code><br/>
+        v.v.
+      </td>
+      <td><p>Ngôn ngữ được định nghĩa bằng một mã ngôn ngữ <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php">ISO
+              639-1</a> gồm hai chữ cái, có thể theo sau là một mã khu vực 
+              <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html">ISO
+              3166-1-alpha-2</a> dài hai chữ cái (đằng trước là "{@code r}" chữ thường).
+        </p><p>
+        Các mã <em>không</em> phân biệt chữ hoa/thường; tiền tố {@code r} được sử dụng để
+        phân biệt phần khu vực.
+        Bạn không thể chỉ quy định một khu vực.</p>
+        <p>Điều này có thể thay đổi trong suốt vòng đời
+ứng dụng của bạn nếu người dùng thay đổi ngôn ngữ của mình trong cài đặt hệ thống. Xem phần <a href="runtime-changes.html">Xử lý Thay đổi Thời gian chạy</a> để biết thông tin về
+ảnh hưởng có thể có của thay đổi này tới ứng dụng của bạn trong thời gian chạy.</p>
+        <p>Xem phần <a href="localization.html">Bản địa hóa</a> để biết hướng dẫn đầy đủ về việc bản địa hóa
+ứng dụng của bạn cho các ngôn ngữ khác.</p>
+        <p>Xem thêm trường cấu hình {@link android.content.res.Configuration#locale}, trong đó
+cho biết địa phương hiện tại.</p>
+      </td>
+    </tr>
+    <tr id="LayoutDirectionQualifier">
+      <td>Chỉ hướng Bố trí</td>
+      <td><code>ldrtl</code><br/>
+        <code>ldltr</code><br/>
+      </td>
+      <td><p>Chỉ hướng bố trí của ứng dụng của bạn. {@code ldrtl} có nghĩa là "chỉ-hướng-bố-trí-phải-qua-trái".
+      {@code ldltr} có nghĩa là "chỉ-hướng-bố-trí-trái-qua-phải" và là giá trị không biểu thị mặc định.
+      </p>
+      <p>Điều này có thể áp dụng cho bất kỳ tài nguyên nào, chẳng hạn như bố trí, nội dung vẽ được hoặc giá trị.
+      </p>
+      <p>Ví dụ, nếu bạn muốn cung cấp một bố trí cụ thể cho ngôn ngữ Ả-rập và một
+      bố trí chung nào đó cho bất kỳ ngôn ngữ “phải-qua-trái" nào khác (như chữ Ba Tư hoặc Do Thái), vậy bạn sẽ phải:
+      </p>
+<pre class="classic no-pretty-print">
+res/
+    layout/   <span style="color:black">
+        main.xml  </span>(Default layout)
+    layout-ar/  <span style="color:black">
+        main.xml  </span>(Specific layout for Arabic)
+    layout-ldrtl/  <span style="color:black">
+        main.xml  </span>(Any "right-to-left" language, except
+                  for Arabic, because the "ar" language qualifier
+                  has a higher precedence.)
+</pre>
+        <p class="note"><strong>Lưu ý:</strong> Để kích hoạt các tính năng bố trí phải-qua-trái
+        cho ứng dụng của mình, bạn phải đặt <a href="{@docRoot}guide/topics/manifest/application-element.html#supportsrtl">{@code
+        supportsRtl}</a> thành {@code "true"} và đặt <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> thành 17 trở lên.</p>
+        <p><em>Được thêm trong API mức 17.</em></p>
+      </td>
+    </tr>
+    <tr id="SmallestScreenWidthQualifier">
+      <td>smallestWidth</td>
+      <td><code>sw&lt;N&gt;dp</code><br/><br/>
+        Ví dụ:<br/>
+        <code>sw320dp</code><br/>
+        <code>sw600dp</code><br/>
+        <code>sw720dp</code><br/>
+        v.v.
+      </td>
+      <td>
+        <p>Kích cỡ cơ bản của một màn hình, thể hiện bằng kích thước ngắn nhất của khu vực màn hình
+khả dụng. Cụ thể, smallestWidth của thiết bị bằng khoảng ngắn nhất giữa chiều cao và chiều rộng
+khả dụng của màn hình (bạn cũng có thể gọi là "chiều rộng nhỏ nhất có thể" cho màn hình). Bạn có thể
+sử dụng hạn định này để đảm bảo rằng, không phụ thuộc vào hướng hiện tại của màn hình, ứng dụng
+của bạn có ít nhất {@code &lt;N&gt;} dp chiều rộng khả dụng cho UI của mình.</p>
+        <p>Ví dụ, nếu bố trí của bạn yêu cầu rằng kích thước nhỏ nhất của khu vực màn hình tối thiểu
+phải luôn bằng 600 dp, vậy bạn có thể sử dụng hạn định này để tạo các tài nguyên bố trí, {@code
+res/layout-sw600dp/}. Hệ thống sẽ chỉ sử dụng những tài nguyên này khi kích thước nhỏ nhất của
+màn hình khả dụng tối thiểu bằng 600dp, không phụ thuộc vào cạnh 600dp là chiều cao hay chiều rộng
+theo nhận thức của người dùng. SmallestWidth là đặc trưng kích cỡ màn hình cố định của thiết bị; <strong>smallestWidth của
+thiết bị không thay đổi khi hướng của màn hình thay đổi</strong>.</p>
+        <p>SmallestWidth của một thiết bị sẽ xem xét cả trang trí màn hình và UI hệ thống. Ví
+dụ, nếu thiết bị có một số phần tử UI cố định trên màn hình mà chiếm mất khoảng trống dọc
+theo trục smallestWidth, hệ thống sẽ khai báo smallestWidth nhỏ hơn kích cỡ màn hình
+thực tế, bởi chúng là những điểm ảnh màn hình không khả dụng cho UI của bạn. Vì thế, giá trị mà bạn sử dụng
+nên là kích thước nhỏ nhất thực tế <em>mà bố trí của bạn yêu cầu</em> (thông thường, giá trị này bằng
+"chiều rộng nhỏ nhất" mà bố trí của bạn hỗ trợ, không phụ thuộc vào hướng hiện tại của màn hình).</p>
+        <p>Một số giá trị mà bạn có thể sử dụng ở đây đối với các kích cỡ màn hình phổ biến:</p>
+        <ul>
+          <li>320, cho các thiết bị có cấu hình màn hình như:
+            <ul>
+              <li>240x320 ldpi (thiết bị cầm tay QVGA)</li>
+              <li>320x480 mdpi (thiết bị cầm tay)</li>
+              <li>480x800 hdpi (thiết bị cầm tay mật độ cao)</li>
+            </ul>
+          </li>
+          <li>480, đối với những màn hình như 480x800 mdpi (máy tính bảng/thiết bị cầm tay).</li>
+          <li>600, đối với những màn hình như 600x1024 mdpi (máy tính bảng 7").</li>
+          <li>720, đối với những màn hình như 720x1280 mdpi (máy tính bảng 10").</li>
+        </ul>
+        <p>Khi ứng dụng của bạn cung cấp nhiều thư mục tài nguyên với những giá trị khác nhau cho
+        hạn định smallestWidth, hệ thống sẽ sử dụng hạn định gần nhất với (không vượt quá)
+smallestWidth của thiết bị. </p>
+        <p><em>Được thêm trong API mức 13.</em></p>
+        <p>Xem thêm thuộc tính <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html#requiresSmallest">{@code
+android:requiresSmallestWidthDp}</a>, trong đó khai báo smallestWidth tối thiểu mà ứng dụng của bạn
+tương thích với, và trường cấu hình {@link
+android.content.res.Configuration#smallestScreenWidthDp}, trong đó lưu trữ giá trị
+smallestWidth của thiết bị.</p>
+        <p>Để biết thêm thông tin về việc thiết kế cho các màn hình khác nhau và sử dụng hạn định
+này, hãy xem hướng dẫn dành cho nhà phát triển <a href="{@docRoot}guide/practices/screens_support.html">Hỗ trợ
+Nhiều Màn hình</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenWidthQualifier">
+      <td>Chiều rộng khả dụng</td>
+      <td><code>w&lt;N&gt;dp</code><br/><br/>
+        Ví dụ:<br/>
+        <code>w720dp</code><br/>
+        <code>w1024dp</code><br/>
+        v.v.
+      </td>
+      <td>
+        <p>Quy định một chiều rộng màn hình khả dụng tối thiểu theo đơn vị {@code dp} mà tại đó, tài nguyên
+          nên được sử dụng&mdash;được định nghĩa bởi giá trị <code>&lt;N&gt;</code>.  Giá trị
+          cấu hình này sẽ thay đổi khi hướng
+          thay đổi giữa khổ ngang và dọc để khớp với chiều rộng thực tế hiện tại.</p>
+        <p>Khi ứng dụng của bạn cung cấp nhiều thư mục tài nguyên với những giá trị khác nhau
+          cho cấu hình này, hệ thống sẽ sử dụng giá trị gần nhất với (không vượt quá)
+          chiều rộng hiện tại của màn hình.  Giá trị
+          ở đây xét cả trang trí trên màn hình, vì thế nếu thiết bị có một số
+          phần tử UI cố định ở cạnh trái hoặc phải của màn hình, nó
+          sẽ sử dụng một giá trị cho chiều rộng nhỏ hơn kích cỡ màn hình thực sự, dùng
+          cho những phần tử UI này và làm giảm khoảng trống khả dụng của ứng dụng.</p>
+        <p><em>Được thêm trong API mức 13.</em></p>
+        <p>Xem thêm trường cấu hình {@link android.content.res.Configuration#screenWidthDp}
+ mà chứa chiều rộng màn hình hiện tại.</p>
+        <p>Để biết thêm thông tin về việc thiết kế cho các màn hình khác nhau và sử dụng hạn định
+này, hãy xem hướng dẫn dành cho nhà phát triển <a href="{@docRoot}guide/practices/screens_support.html">Hỗ trợ
+Nhiều Màn hình</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenHeightQualifier">
+      <td>Chiều cao khả dụng</td>
+      <td><code>h&lt;N&gt;dp</code><br/><br/>
+        Ví dụ:<br/>
+        <code>h720dp</code><br/>
+        <code>h1024dp</code><br/>
+        v.v.
+      </td>
+      <td>
+        <p>Quy định chiều cao màn hình khả dụng tối thiểu theo đơn vị "dp" mà tại đó tài nguyên
+          nên được sử dụng&mdash;được định nghĩa bởi giá trị <code>&lt;N&gt;</code>.  Giá trị
+          cấu hình này sẽ thay đổi khi hướng
+          thay đổi giữa khổ ngang và dọc để khớp với chiều cao thực tế hiện tại.</p>
+        <p>Khi ứng dụng của bạn cung cấp nhiều thư mục tài nguyên với những giá trị khác nhau
+          cho cấu hình này, hệ thống sẽ sử dụng giá trị gần nhất với (không vượt quá)
+          chiều cao hiện tại của màn hình.  Giá trị
+          ở đây xét cả trang trí trên màn hình, vì thế nếu thiết bị có một số
+          phần tử UI cố định trên cạnh trên hoặc dưới của màn hình, nó sẽ sử dụng
+          một giá trị cho chiều cao nhỏ hơn kích cỡ màn hình thực sự, dùng
+          cho những phần tử UI này và làm giảm khoảng trống khả dụng của ứng dụng.  Trang trí
+          trên màn hình mà không cố định (chẳng hạn như thanh trạng thái của điện thoại mà có thể được
+          ẩn khi ở toàn màn hình) <em>không</em> được xét ở đây, cả
+          những trang trí trên cửa sổ như thanh tiêu đề hay thanh hành động cũng vậy, vì thế ứng dụng phải được chuẩn bị để
+          xử lý một khoảng trống nhỏ hơn mức mà chúng quy định.
+        <p><em>Được thêm trong API mức 13.</em></p>
+        <p>Xem thêm trường cấu hình {@link android.content.res.Configuration#screenHeightDp}
+ mà chứa chiều rộng màn hình hiện tại.</p>
+        <p>Để biết thêm thông tin về việc thiết kế cho các màn hình khác nhau và sử dụng hạn định
+này, hãy xem hướng dẫn dành cho nhà phát triển <a href="{@docRoot}guide/practices/screens_support.html">Hỗ trợ
+Nhiều Màn hình</a>.</p>
+      </td>
+    </tr>
+    <tr id="ScreenSizeQualifier">
+      <td>Kích cỡ màn hình</td>
+      <td>
+        <code>small</code><br/>
+        <code>normal</code><br/>
+        <code>large</code><br/>
+        <code>xlarge</code>
+      </td>
+      <td>
+        <ul class="nolist">
+        <li>{@code small}: Các màn hình có kích cỡ tương tự như màn hình
+       QVGA mật độ thấp. Kích cỡ bố trí tối thiểu đối với một màn hình nhỏ
+        bằng xấp xỉ 320x426 đơn vị dp.  Các ví dụ như QVGA mật độ thấp và VGA mật độ
+        cao.</li>
+        <li>{@code normal}: Các màn hình có kích cỡ tương tự như màn hình
+       HVGA mật độ trung bình. Kích cỡ bố trí tối thiểu
+        đối với một màn hình bình thường bằng xấp xỉ 320x470 đơn vị dp.  Ví dụ
+        về những màn hình như vậy là WQVGA mật độ thấp, HVGA mật độ trung bình, WVGA
+        mật độ cao.</li>
+        <li>{@code large}: Các màn hình có kích cỡ tương tự như màn hình
+       VGA mật độ trung bình.
+        Kích cỡ bố trí tối thiểu đối với một màn hình lớn bằng xấp xỉ 480x640 đơn vị dp.
+        Ví dụ như các màn hình mật độ trung bình VGA và WVGA.</li>
+        <li>{@code xlarge}: Các màn hình lớn hơn đáng kể so với màn hình
+        HVGA mật độ trung bình truyền thống. Kích cỡ bố trí tối thiểu đối với một màn hình siêu lớn
+        bằng xấp xỉ 720x960 đơn vị dp.  Trong hầu hết trường hợp, những thiết bị có màn hình
+        siêu lớn sẽ quá lớn để mang trong túi và gần như là 
+        thiết bị kiểu máy tính bảng. <em>Được thêm trong API mức 9.</em></li>
+        </ul>
+        <p class="note"><strong>Lưu ý:</strong> Việc sử dụng một hạn định kích cỡ không hàm ý rằng các
+tài nguyên <em>chỉ</em> áp dụng cho màn hình có kích cỡ đó. Nếu bạn không cung cấp cho các tài nguyên
+thay thế với các hạn định khớp tốt hơn với cấu hình thiết bị hiện tại, hệ thống có thể sử dụng
+bất kỳ tài nguyên nào <a href="#BestMatch">phù hợp nhất</a>.</p>
+        <p class="caution"><strong>Chú ý:</strong> Nếu tất cả tài nguyên của bạn sử dụng một hạn định kích cỡ
+<em>lớn hơn</em> màn hình hiện tại, hệ thống sẽ <strong>không</strong> sử dụng chúng và
+ứng dụng của bạn sẽ bị lỗi vào thời gian chạy (ví dụ, nếu tất cả tài nguyên bố trí được gắn thẻ hạn định {@code
+xlarge} nhưng thiết bị lại có màn hình kích cỡ bình thường).</p>
+        <p><em>Được thêm trong API mức 4.</em></p>
+        
+        <p>Xem <a href="{@docRoot}guide/practices/screens_support.html">Hỗ trợ Nhiều
+Màn hình</a> để biết thêm thông tin.</p>
+        <p>Xem thêm trường cấu hình {@link android.content.res.Configuration#screenLayout},
+ở đó cho biết màn hình là màn hình nhỏ, bình thường,
+hay lớn.</p>
+      </td>
+    </tr>
+    <tr id="ScreenAspectQualifier">
+      <td>Tỷ lệ màn hình</td>
+      <td>
+        <code>long</code><br/>
+        <code>notlong</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code long}: Màn hình dài, chẳng hạn như WQVGA, WVGA, FWVGA</li>
+          <li>{@code notlong}: Màn hình không dài, chẳng hạn như QVGA, HVGA và VGA</li>
+        </ul>
+        <p><em>Được thêm trong API mức 4.</em></p>
+        <p>Giá trị này thuần túy được dựa trên tỷ lệ khung ảnh của màn hình (màn hình "dài" sẽ rộng hơn). Nó 
+không liên quan tới hướng của màn hình.</p>
+        <p>Xem thêm trường cấu hình {@link android.content.res.Configuration#screenLayout},
+ở đó cho biết màn hình có dài không.</p>
+      </td>
+    </tr>
+    <tr id="OrientationQualifier">
+      <td>Hướng của màn hình</td>
+      <td>
+        <code>port</code><br/>
+        <code>land</code>  <!-- <br/>
+        <code>square</code>  -->
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code port}: Thiết bị ở hướng đứng (thẳng đứng)</li>
+          <li>{@code land}: Thiết bị ở khổ ngang (nằm ngang)</li>
+          <!-- Square mode is currently not used. -->
+        </ul>
+        <p>Giá trị này có thể thay đổi trong suốt vòng đời ứng dụng của bạn nếu người dùng xoay
+màn hình. Xem phần <a href="runtime-changes.html">Xử lý Thay đổi Thời gian chạy</a> để biết thông tin về
+ảnh hưởng của điều này tới ứng dụng của bạn trong thời gian chạy.</p>
+        <p>Xem thêm trường cấu hình {@link android.content.res.Configuration#orientation}, trong đó
+cho biết hướng thiết bị hiện tại.</p>
+      </td>
+    </tr>
+    <tr id="UiModeQualifier">
+      <td>Chế độ UI</td>
+      <td>
+        <code>car</code><br/>
+        <code>desk</code><br/>
+        <code>television</code><br/>
+        <code>appliance</code>
+        <code>watch</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code car}: Thiết bị đang hiển thị trong đế gắn trên ô-tô</li>
+          <li>{@code desk}: Thiết bị đang hiển thị trong đế gắn trên bàn</li>
+          <li>{@code television}: Thiết bị đang hiển thị trên một TV, mang đến một
+          trải nghiệm "10 foot" (3 mét) trong đó UI của nó nằm trên một màn hình lớn
+          cách xa người dùng, được định hướng chủ yếu quanh DPAD hoặc cách
+          tương tác không sử dụng con trỏ khác</li>
+          <li>{@code appliance}: Thiết bị đang đóng vai trò như một dụng cụ không
+          có màn hình hiển thị</li>
+          <li>{@code watch}: Thiết bị có một màn hình hiển thị và được đeo trên cổ tay</li>
+        </ul>
+        <p><em>Được thêm trong API mức 8, TV được thêm trong API 13, đồng hồ được thêm trong API 20.</em></p>
+        <p>Để biết thông tin về cách ứng dụng của bạn hồi đáp khi thiết bị được cắm vào hoặc
+        rút khỏi đế, hãy đọc <a href="{@docRoot}training/monitoring-device-state/docking-monitoring.html">Xác định
+và Theo dõi Trạng thái và Loại Đế</a>.</p>
+        <p>Giá trị này có thể thay đổi trong suốt vòng đời ứng dụng của bạn nếu người dùng đặt
+thiết bị vào đế. Bạn có thể kích hoạt hoặc vô hiệu hóa một số chế độ này bằng cách sử dụng {@link
+android.app.UiModeManager}. Xem phần <a href="runtime-changes.html">Xử lý Thay đổi Thời gian chạy</a> để
+biết thông tin về ảnh hưởng của điều này tới ứng dụng của bạn trong thời gian chạy.</p>
+      </td>
+    </tr>
+    <tr id="NightQualifier">
+      <td>Chế độ ban đêm</td>
+      <td>
+        <code>night</code><br/>
+        <code>notnight</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code night}: Thời gian ban đêm</li>
+          <li>{@code notnight}: Thời gian ban ngày</li>
+        </ul>
+        <p><em>Được thêm trong API mức 8.</em></p>
+        <p>Giá trị này có thể thay đổi trong suốt vòng đời ứng dụng của bạn nếu chế độ ban đêm được để ở
+chế độ tự động (mặc định), trong trường hợp đó chế độ sẽ thay đổi dựa vào thời gian trong ngày.  Bạn có thể kích hoạt
+hoặc vô hiệu hóa chế độ này bằng cách sử dụng {@link android.app.UiModeManager}. Xem phần <a href="runtime-changes.html">Xử lý Thay đổi Thời gian chạy</a> để biết thông tin về ảnh hưởng của điều này tới
+ứng dụng của bạn trong thời gian chạy.</p>
+      </td>
+    </tr>
+    <tr id="DensityQualifier">
+      <td>Mật độ điểm ảnh màn hình (dpi)</td>
+      <td>
+        <code>ldpi</code><br/>
+        <code>mdpi</code><br/>
+        <code>hdpi</code><br/>
+        <code>xhdpi</code><br/>
+        <code>xxhdpi</code><br/>
+        <code>xxxhdpi</code><br/>
+        <code>nodpi</code><br/>
+        <code>tvdpi</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code ldpi}: Màn hình mật độ thấp; xấp xỉ 120dpi.</li>
+          <li>{@code mdpi}: Màn hình mật độ trung bình (trên HVGA truyền thống); xấp xỉ
+160dpi.</li>
+          <li>{@code hdpi}: Màn hình mật độ cao; xấp xỉ 240dpi.</li>
+          <li>{@code xhdpi}: Màn hình mật độ siêu cao; xấp xỉ 320dpi. <em>Được thêm trong API
+Mức 8</em></li>
+          <li>{@code xxhdpi}: Màn hình mật độ siêu siêu cao; xấp xỉ 480dpi. <em>Được thêm trong API
+Mức 16</em></li>
+          <li>{@code xxxhdpi}: Mật độ siêu siêu siêu cao sử dụng (chỉ biểu tượng trình khởi chạy, xem
+            <a href="{@docRoot}guide/practices/screens_support.html#xxxhdpi-note">ghi chú</a> 
+            trong <em>Hỗ trợ Nhiều Màn hình</em>); xấp xỉ 640dpi. <em>Được thêm trong API
+Mức 18</em></li>
+          <li>{@code nodpi}: Loại này có thể được sử dụng cho tài nguyên bitmap mà bạn không muốn được định cỡ
+cho khớp với mật độ của thiết bị.</li>
+          <li>{@code tvdpi}: Màn hình trong khoảng giữa mdpi và hdpi; xấp xỉ 213dpi. Đây
+không được coi là nhóm mật độ "cơ bản". Nó được dành chủ yếu cho TV và hầu hết
+các ứng dụng không cần nó&mdash;với điều kiện các tài nguyên mdpi và hpdi đủ cho hầu hết ứng dụng
+và hệ thống sẽ định cỡ chúng cho phù hợp. Hạn định này đã được giới thiệu với API mức 13.</li>
+        </ul>
+        <p>Có tỷ lệ định cỡ 3:4:6:8:12:16 giữa sáu mật độ cơ bản (bỏ qua mật độ
+tvdpi). Vì thế, một tệp bimap 9x9 trong ldpi sẽ bằng 12x12 trong mdpi, 18x18 trong hdpi, 24x24 trong xhdpi, v.v.
+</p>
+        <p>Nếu bạn quyết định rằng tài nguyên hình ảnh của mình không đủ đẹp trên TV hoặc
+một số thiết bị khác và muốn thử tài nguyên tvdpi, hệ số định cỡ sẽ bằng 1,33*mdpi. Ví
+dụ, một hình ảnh 100px x 100px đối với màn hình mdpi sẽ bằng 133px x 133px đối với tvdpi.</p>
+        <p class="note"><strong>Lưu ý:</strong> Việc sử dụng một hạn định mật độ không hàm ý rằng các
+tài nguyên <em>chỉ</em> áp dụng cho màn hình có mật độ đó. Nếu bạn không cung cấp cho các tài nguyên
+thay thế với các hạn định khớp tốt hơn với cấu hình thiết bị hiện tại, hệ thống có thể sử dụng
+bất kỳ tài nguyên nào <a href="#BestMatch">phù hợp nhất</a>.</p>
+        <p>Xem <a href="{@docRoot}guide/practices/screens_support.html">Hỗ trợ Nhiều
+Màn hình</a> để biết thêm thông tin về cách xử lý các mật độ màn hình khác nhau và cách Android
+có thể định cỡ bitmap của mình cho vừa với mật độ hiện tại.</p>
+       </td>
+    </tr>
+    <tr id="TouchscreenQualifier">
+      <td>Loại màn hình cảm ứng</td>
+      <td>
+        <code>notouch</code><br/>
+        <code>finger</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code notouch}: Thiết bị không có màn hình cảm ứng.</li>
+          <li>{@code finger}: Thiết bị có màn hình cảm ứng để
+          được sử dụng thông qua tương tác hướng của ngón tay của người dùng.</li>
+        </ul>
+        <p>Xem thêm trường cấu hình {@link android.content.res.Configuration#touchscreen},
+nó cho biết loại màn hình cảm ứng trên thiết bị.</p>
+      </td>
+    </tr>
+    <tr id="KeyboardAvailQualifier">
+      <td>Sự sẵn có của bàn phím</td>
+      <td>
+        <code>keysexposed</code><br/>
+        <code>keyshidden</code><br/>
+        <code>keyssoft</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code keysexposed}: Thiết bị có sẵn một bàn phím. Nếu thiết bị có một
+bàn phím mềm được kích hoạt (có khả năng), giá trị này có thể được sử dụng khi bàn phím cứng
+<em>không</em> hiển thị trước người dùng, ngay cả khi thiết bị không có bàn phím cứng. Nếu không có
+bàn phím mềm hoặc bàn phím mềm bị vô hiệu hóa, khi đó giá trị này chỉ được sử dụng khi một bàn phím cứng được
+hiển thị.</li>
+          <li>{@code keyshidden}: Thiết bị có sẵn một bàn phím cứng nhưng nó bị
+ẩn đi <em>và </em> thiết bị <em>không</em> có bàn phím mềm được kích hoạt.</li>
+          <li>{@code keyssoft}: Thiết bị có một bàn phím mềm được kích hoạt dù nó có
+hiển thị hay không.</li>
+        </ul>
+        <p>Nếu bạn cung cấp các tài nguyên <code>keysexposed</code>, nhưng không cung cấp tài nguyên <code>keyssoft</code>
+, hệ thống sẽ sử dụng tài nguyên <code>keysexposed</code> mà không phụ thuộc vào việc có hiển thị
+bàn phím hay không, miễn là hệ thống có kích hoạt một bàn phím mềm.</p>
+        <p>Giá trị này có thể thay đổi trong vòng đời ứng dụng của bạn nếu người dùng mở một bàn phím
+cứng. Xem phần <a href="runtime-changes.html">Xử lý Thay đổi Thời gian chạy</a> để biết thông tin về
+ảnh hưởng của điều này tới ứng dụng của bạn trong thời gian chạy.</p>
+        <p>Xem thêm các trường cấu hình {@link
+android.content.res.Configuration#hardKeyboardHidden} và {@link
+android.content.res.Configuration#keyboardHidden}, theo đó tương ứng cho biết mức độ hiển thị của bàn phím
+cứng và mức độ hiển thị của bất kỳ loại bàn phím nào (bao gồm bàn phím mềm).</p>
+      </td>
+    </tr>
+    <tr id="ImeQualifier">
+      <td>Phương pháp nhập liệu văn bản chính</td>
+      <td>
+        <code>nokeys</code><br/>
+        <code>qwerty</code><br/>
+        <code>12key</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nokeys}: Thiết bị không có phím cứng cho việc nhập liệu văn bản.</li>
+          <li>{@code qwerty}: Thiết bị có một bàn phím qwerty cứng, dù nó có hiển thị với
+người dùng
+hay không.</li>
+          <li>{@code 12key}: Thiết bị có một bàn phím 12-phím cứng, dù nó có hiển thị với
+người dùng hay không.</li>
+        </ul>
+        <p>Xem thêm trường cấu hình {@link android.content.res.Configuration#keyboard}, trong đó
+cho biết phương pháp nhập liệu văn bản chính sẵn có.</p>
+      </td>
+    </tr>
+    <tr id="NavAvailQualifier">
+      <td>Sự sẵn có của phím điều hướng</td>
+      <td>
+        <code>navexposed</code><br/>
+        <code>navhidden</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code navexposed}: Có sẵn phím điều hướng cho người dùng.</li>
+          <li>{@code navhidden}: Không có sẵn phím điều hướng (chẳng hạn như phía sau một nắp
+đóng).</li>
+        </ul>
+        <p>Giá trị này có thể thay đổi trong suốt vòng đời ứng dụng của bạn nếu người dùng làm hiện
+phím điều hướng. Xem phần <a href="runtime-changes.html">Xử lý Thay đổi Thời gian chạy</a> để
+biết thông tin về ảnh hưởng của điều này tới ứng dụng của bạn trong thời gian chạy.</p>
+        <p>Xem thêm trường cấu hình {@link android.content.res.Configuration#navigationHidden},
+ở đó có cho biết các phím điều hướng có bị ẩn không.</p>
+      </td>
+    </tr>
+    <tr id="NavigationQualifier">
+      <td>Phương pháp điều hướng không cảm ứng chính</td>
+      <td>
+        <code>nonav</code><br/>
+        <code>dpad</code><br/>
+        <code>trackball</code><br/>
+        <code>wheel</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nonav}: Thiết bị không có phương tiện điều hướng ngoài cách sử dụng
+màn hình cảm ứng.</li>
+          <li>{@code dpad}: Thiết bị có bàn điều hướng (d-pad) để điều hướng.</li>
+          <li>{@code trackball}: Thiết bị có bi xoay để điều hướng.</li>
+          <li>{@code wheel}: Thiết bị có bánh xe điều hướng để điều hướng (không phổ biến).</li>
+        </ul>
+        <p>Xem thêm trường cấu hình {@link android.content.res.Configuration#navigation}, trong đó
+cho biết loại phương pháp điều hướng sẵn có.</p>
+      </td>
+    </tr>
+<!-- DEPRECATED
+    <tr>
+      <td>Screen dimensions</td>
+      <td>Examples:<br/>
+        <code>320x240</code><br/>
+        <code>640x480</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>The larger dimension must be specified first. <strong>This configuration is deprecated
+and should not be used</strong>. Instead use "screen size," "wider/taller screens," and "screen
+orientation" described above.</p>
+      </td>
+    </tr>
+-->
+    <tr id="VersionQualifier">
+      <td>Phiên bản Nền tảng (Mức API)</td>
+      <td>Ví dụ:<br/>
+        <code>v3</code><br/>
+        <code>v4</code><br/>
+        <code>v7</code><br/>
+        v.v.</td>
+      <td>
+        <p>Mức API được hỗ trợ bởi thiết bị. Ví dụ, <code>v1</code> đối với API mức
+1 (thiết bị ở phiên bản Android 1.0 hoặc cao hơn) và <code>v4</code> đối với API mức 4 (thiết bị ở phiên bản Android
+1.6 hoặc cao hơn). Xem tài liệu <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Mức API của Android</a> để biết thêm thông tin
+về những giá trị này.</p>
+      </td>
+    </tr>
+</table>
+
+
+<p class="note"><strong>Lưu ý:</strong> Một số hạn định cấu hình đã được thêm kể từ phiên bản Android
+1.0, vì thế không phải tất cả phiên bản Android đều hỗ trợ tất cả hạn định. Việc sử dụng một hạn định mới sẽ hàm ý
+thêm hạn định phiên bản nền tảng sao cho các thiết bị cũ hơn chắc chắn sẽ bỏ qua nó. Ví dụ, sử dụng
+một hạn định <code>w600dp</code> sẽ tự động bao gồm hạn định <code>v13</code>, vì
+hạn định chiều rộng khả dụng mới có trong API mức 13. Để tránh bất kỳ sự cố nào, hãy luôn đưa vào một tập hợp
+các tài nguyên mặc định (tập hợp các tài nguyên <em>không có hạn định</em>). Để biết thêm thông tin, hãy xem phần
+nói về <a href="#Compatibility">Cung cấp Tính tương thích giữa Thiết bị với Tài nguyên
+Tốt nhất</a>.</p>
+
+
+
+<h3 id="QualifierRules">Quy tắc về tên hạn định</h3>
+
+<p>Sau đây là một số quy tắc về việc sử dụng tên của hạn định cấu hình:</p>
+
+<ul>
+    <li>Bạn có thể quy định nhiều hạn định cho một tập hợp đơn lẻ các tài nguyên, được tách riêng bởi dấu gạch ngang. Ví
+dụ, <code>drawable-en-rUS-land</code> sẽ áp dụng cho các thiết bị US-English ở hướng
+khổ ngang.</li>
+    <li>Các hạn định phải theo thứ tự liệt kê trong <a href="#table2">bảng 2</a>. Ví
+dụ:
+      <ul>
+        <li>Sai: <code>drawable-hdpi-port/</code></li>
+        <li>Đúng: <code>drawable-port-hdpi/</code></li>
+      </ul>
+    </li>
+    <li>Các thư mục tài nguyên thay thế không được lồng nhau. Ví dụ, bạn không được có
+<code>res/drawable/drawable-en/</code>.</li>
+    <li>Các giá trị không phân biệt chữ hoa/thường.  Trình biên dịch tài nguyên sẽ chuyển tên thư mục
+    thành chữ thường trước khi xử lý để tránh các vấn đề xảy ra trên hệ thống tệp
+    không phân biệt chữ hoa/thường. Bất kỳ việc đổi sang chữ hoa nào trong tên chỉ nhằm mục đích dễ đọc hơn.</li>
+    <li>Chỉ hỗ trợ một giá trị cho mỗi loại hạn định. Ví dụ, nếu bạn muốn sử dụng
+cùng các tệp vẽ được cho tiếng Tây Ban Nha và tiếng Pháp, bạn <em>không thể</em> đặt tên thư mục là
+<code>drawable-rES-rFR/</code>. Thay vào đó, bạn cần hai thư mục tài nguyên chẳng hạn như
+<code>drawable-rES/</code> và <code>drawable-rFR/</code>, trong đó chứa các tệp phù hợp.
+Tuy nhiên, bạn không bắt buộc thực sự phải tạo bản sao các tệp như nhau ở cả hai vị trí. Thay vào đó, bạn có thể
+tạo một bí danh tới một tài nguyên. Xem phần <a href="#AliasResources">Tạo
+tài nguyên bí danh</a> ở bên dưới.</li>
+</ul>
+
+<p>Sau khi bạn lưu tài nguyên thay thế vào các thư mục được đặt tên bằng
+những hạn định này, Android sẽ tự động áp dụng các tài nguyên trong ứng dụng của bạn dựa trên
+cấu hình thiết bị hiện tại. Cứ mỗi lần yêu cầu một tài nguyên, Android lại kiểm tra các thư mục tài nguyên
+thay thế chứa tệp tài nguyên được yêu cầu, rồi <a href="#BestMatch">tìm tài nguyên
+so khớp phù hợp nhất</a> (được trình bày ở bên dưới). Nếu không có tài nguyên thay thế khớp
+với một cấu hình thiết bị cụ thể, khi đó Android sẽ sử dụng các tài nguyên mặc định tương ứng (
+tập hợp các tài nguyên cho một loại tài nguyên cụ thể không bao gồm hạn định
+cấu hình).</p>
+
+
+
+<h3 id="AliasResources">Tạo tài nguyên bí danh</h3>
+
+<p>Khi bạn có một tài nguyên muốn sử dụng cho nhiều hơn một cấu hình
+thiết bị (nhưng không muốn cung cấp làm tài nguyên mặc định), bạn không cần đặt
+cùng tài nguyên đó vào nhiều hơn một thư mục tài nguyên thay thế. Thay vào đó, bạn có thể (trong một số trường hợp) tạo một tài nguyên
+thay thế
+đóng vai trò như một bí danh cho tài nguyên được lưu trong thư mục tài nguyên mặc định của bạn.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Không phải tất cả tài nguyên đều đưa ra cơ chế mà theo đó bạn có thể
+tạo một bí danh tới một tài nguyên khác. Cụ thể, hoạt hình, menu, tài nguyên thô và các tài nguyên
+không được quy định khác trong thư mục {@code xml/} không cung cấp tính năng này.</p>
+
+<p>Ví dụ, hãy tưởng tượng bạn có một biểu tượng ứng dụng, {@code icon.png}, và cần phiên bản duy nhất của
+nó cho các bản địa khác nhau. Tuy nhiên, hai bản địa English-Canadian và French-Canadian, cần
+sử dụng cùng phiên bản. Bạn có thể giả sử rằng mình cần sao chép cùng hình ảnh
+vào thư mục tài nguyên cho cả English-Canadian và French-Canadian, nhưng điều đó
+không đúng. Thay vào đó, bạn có thể lưu hình ảnh được sử dụng cho cả hai thành {@code icon_ca.png} (bất kỳ
+tên nào khác ngoài {@code icon.png}) và đặt
+nó vào thư mục {@code res/drawable/} mặc định. Sau đó, tạo một tệp {@code icon.xml} trong {@code
+res/drawable-en-rCA/} và {@code res/drawable-fr-rCA/} tham chiếu tới tài nguyên {@code icon_ca.png}
+bằng cách sử dụng phần tử {@code &lt;bitmap&gt;}. Điều này cho phép bạn lưu trữ chỉ một phiên bản của tệp
+PNG và hai tệp XML nhỏ trỏ tới nó. (Ví dụ về tệp XML được trình bày ở bên dưới.)</p>
+
+
+<h4>Nội dung vẽ được</h4>
+
+<p>Để tạo một bí danh cho một nội dung vẽ được đang tồn tại, hãy sử dụng phần tử {@code &lt;bitmap&gt;}.
+Ví dụ:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/icon_ca" />
+</pre>
+
+<p>Nếu bạn lưu tệp này thành {@code icon.xml} (trong một thư mục tài nguyên thay thế chẳng hạn như
+{@code res/drawable-en-rCA/}), nó sẽ được biên dịch vào một tài nguyên mà bạn
+có thể tham chiếu như là {@code R.drawable.icon}, nhưng thực tế lại là bí danh cho tài nguyên {@code
+R.drawable.icon_ca} (được lưu trong {@code res/drawable/}).</p>
+
+
+<h4>Bố trí</h4>
+
+<p>Để tạo một bí danh cho một bố trí hiện tại, hãy sử dụng phần tử {@code &lt;include&gt;}
+, được bọc trong một {@code &lt;merge&gt;}. Ví dụ:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;merge>
+    &lt;include layout="@layout/main_ltr"/>
+&lt;/merge>
+</pre>
+
+<p>Nếu bạn lưu tệp này thành {@code main.xml}, nó sẽ được biên dịch thành một tài nguyên mà bạn có thể tham chiếu
+như là {@code R.layout.main}, nhưng thực tế lại là một bí danh cho tài nguyên {@code R.layout.main_ltr}
+.</p>
+
+
+<h4>Xâu và các giá trị đơn giản khác</h4>
+
+<p>Để tạo một bí danh cho một xâu hiện có, chỉ cần sử dụng ID tài nguyên của xâu
+mong muốn làm giá trị cho xâu mới. Ví dụ:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;string name="hello">Hello&lt;/string>
+    &lt;string name="hi">@string/hello&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>Tài nguyên {@code R.string.hi} lúc này là một bí danh cho {@code R.string.hello}.</p>
+
+<p> <a href="{@docRoot}guide/topics/resources/more-resources.html">Các giá trị đơn giản khác</a> cũng
+hoạt động tương tự. Ví dụ, màu sắc:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;color name="yellow">#f00&lt;/color>
+    &lt;color name="highlight">@color/red&lt;/color>
+&lt;/resources>
+</pre>
+
+
+
+
+<h2 id="Compatibility">Cung cấp Tính tương thích giữa Thiết bị với Tài nguyên Tốt nhất</h2>
+
+<p>Để ứng dụng của bạn hỗ trợ nhiều cấu hình thiết bị, một điều rất quan trọng đó là
+bạn luôn cung cấp các tài nguyên mặc định cho từng loại tài nguyên mà ứng dụng của bạn sử dụng.</p>
+
+<p>Ví dụ, nếu ứng dụng của bạn hỗ trợ vài ngôn ngữ, hãy luôn bao gồm một thư mục {@code
+values/} (trong đó, xâu của bạn được lưu) <em>mà không cần</em> một <a href="#LocaleQualifier">hạn định ngôn ngữ và khu vực</a>. Nếu thay vào đó bạn đặt tất cả tệp xâu của mình
+vào các thư mục có một hạn định ngôn ngữ và khu vực, khi đó ứng dụng của bạn sẽ bị lỗi khi chạy
+trên một thiết bị được đặt ở một ngôn ngữ mà các xâu của bạn không hỗ trợ. Nhưng miễn là bạn cung cấp các tài nguyên
+{@code values/} mặc định, khi đó ứng dụng của bạn sẽ chạy bình thường (ngay cả khi người dùng không
+hiểu ngôn ngữ đó&mdash;vậy còn tốt hơn là bị lỗi).</p>
+
+<p>Tương tự, nếu bạn cung cấp các tài nguyên bố trí khác nhau dựa trên hướng của màn hình, bạn nên
+chọn một hướng làm mặc định của mình. Ví dụ, thay vì cung cấp tài nguyên bố trí trong {@code
+layout-land/} cho khổ ngang và {@code layout-port/} cho khổ dọc, hãy để một cái làm mặc định, chẳng hạn như
+{@code layout/} đối với khổ ngang và {@code layout-port/} đối với khổ dọc.</p>
+
+<p>Việc cung cấp tài nguyên mặc định quan trọng không chỉ bởi ứng dụng của bạn có thể chạy trên một
+cấu hình mà bạn chưa nghĩ đến, mà còn bởi các phiên bản Android mới đôi khi thêm
+hạn định cấu hình mà những phiên bản cũ hơn không hỗ trợ. Nếu bạn sử dụng một hạn định tài nguyên mới,
+nhưng vẫn duy trì tính tương thích về mã với các phiên bản cũ hơn của Android thì khi một phiên bản cũ hơn của
+Android chạy trên ứng dụng của bạn, nó sẽ bị lỗi nếu bạn không cung cấp tài nguyên mặc định, do nó 
+không thể sử dụng tài nguyên được đặt tên bằng hạn định mới. Ví dụ, nếu <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
+minSdkVersion}</a> của bạn được đặt bằng 4, và bạn xác định tất cả tài nguyên vẽ được của mình bằng cách sử dụng <a href="#NightQualifier">chế độ ban đêm</a> ({@code night} hoặc {@code notnight}, đã được thêm trong API
+Mức 8), khi đó một thiết bị API mức 4 sẽ không thể truy cập tài nguyên vẽ được của bạn và sẽ bị lỗi. Trong trường hợp
+này, bạn có thể muốn {@code notnight} làm tài nguyên mặc định của mình, vì thế bạn nên loại trừ hạn định
+đó sao cho tài nguyên vẽ được của bạn ở trong {@code drawable/} hoặc {@code drawable-night/}.</p>
+
+<p>Vì vậy, để mang lại khả năng tương thích với thiết bị tốt nhất, hãy luôn cung cấp tài nguyên
+mặc định cho những tài nguyên mà ứng dụng của bạn cần thực hiện đúng cách. Sau đó, hãy tạo tài nguyên
+thay thế cho các cấu hình thiết bị cụ thể bằng cách sử dụng hạn định cấu hình.</p>
+
+<p>Có một ngoại lệ đối với quy tắc này: Nếu <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> của ứng dụng của bạn bằng 4 hoặc
+lớn hơn, bạn <em>không</em> cần đến tài nguyên vẽ được mặc định khi cung cấp tài nguyên
+vẽ được thay thế bằng hạn định <a href="#DensityQualifier">mật độ màn hình</a>. Kể cả khi không có
+tài nguyên vẽ được mặc định, Android cũng có thể tìm thấy kết quả khớp tốt nhất trong số các mật độ màn hình thay thế và sẽ định cỡ
+bitmap nếu cần. Tuy nhiên, để có trải nghiệm tốt nhất trên tất cả thiết bị, bạn nên
+cung cấp nội dung vẽ được thay thế cho cả ba loại mật độ.</p>
+
+
+
+<h2 id="BestMatch">Cách Android tìm Tài nguyên Khớp Tốt nhất</h2>
+
+<p>Khi bạn yêu cầu một tài nguyên mà bạn cung cấp nội dung thay thế cho nó, Android sẽ lựa chọn
+tài nguyên thay thế để sử dụng vào thời gian chạy, tùy vào cấu hình thiết bị hiện tại. Để
+diễn tả cách Android lựa chọn một tài nguyên thay thế, giả sử có các thư mục vẽ được sau,
+mỗi thư mục lại chứa các phiên bản khác nhau của cùng hình ảnh:</p>
+
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+drawable-fr-rCA/
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+
+<p>Và giả sử cấu hình thiết bị như sau:</p>
+
+<p style="margin-left:1em;">
+Bản địa = <code>en-GB</code> <br/>
+Hướng màn hình = <code>port</code> <br/>
+Mật độ điểm ảnh màn hình = <code>hdpi</code> <br/>
+Loại màn hình cảm ứng = <code>notouch</code> <br/>
+Phương pháp nhập liệu văn bản chính = <code>12key</code>
+</p>
+
+<p>Bằng cách so sánh cấu hình thiết bị với các tài nguyên thay thế sẵn có, Android sẽ lựa chọn
+nội dung vẽ được từ {@code drawable-en-port}.</p>
+
+<p>Hệ thống ra quyết định của mình về các tài nguyên nào sẽ sử dụng bằng lô-gic
+sau:</p>
+
+
+<div class="figure" style="width:371px">
+<img src="{@docRoot}images/resources/res-selection-flowchart.png" alt="" height="471" />
+<p class="img-caption"><strong>Hình 2.</strong> Lưu đồ về cách Android tìm tài nguyên
+khớp tốt nhất.</p>
+</div>
+
+
+<ol>
+  <li>Loại bỏ các tệp tài nguyên mà trái với cấu hình thiết bị.
+    <p>Thư mục <code>drawable-fr-rCA/</code> bị loại bỏ vì nó
+trái với bản địa <code>en-GB</code>.</p>
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+<strike>drawable-fr-rCA/</strike>
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+<p class="note"><strong>Ngoại lệ:</strong> Mật độ điểm ảnh màn hình là một hạn định không
+bị loại bỏ do trái ngược. Mặc dù mật độ màn hình của thiết bị là hdpi,
+<code>drawable-port-ldpi/</code> không bị loại bỏ vì mọi mật độ màn hình đều
+được coi là một kết quả khớp tại thời điểm này. Bạn có thể tham khảo thêm thông tin trong tài liệu <a href="{@docRoot}guide/practices/screens_support.html">Hỗ trợ Nhiều
+Màn hình</a>.</p></li>
+
+  <li>Chọn hạn định có mức ưu tiên cao nhất (tiếp theo) trong danh sách (<a href="#table2">bảng 2</a>).
+(Bắt đầu bằng MCC, sau đó di chuyển xuống.) </li>
+  <li>Có thư mục tài nguyên nào bao gồm hạn định này không?  </li>
+    <ul>
+      <li>Nếu Không, hãy quay lại bước 2 và tìm với hạn định tiếp theo. (Trong ví dụ,
+  câu trả lời là "không" tới khi đi đến hạn định ngôn ngữ.)</li>
+      <li>Nếu Có, tiếp tục sang bước 4.</li>
+    </ul>
+  </li>
+
+  <li>Loại bỏ các thư mục tài nguyên không bao gồm hạn định này. Trong ví dụ, hệ thống
+sẽ loại bỏ tất cả thư mục không bao gồm hạn định ngôn ngữ:</li>
+<pre class="classic no-pretty-print">
+<strike>drawable/</strike>
+drawable-en/
+drawable-en-port/
+drawable-en-notouch-12key/
+<strike>drawable-port-ldpi/</strike>
+<strike>drawable-port-notouch-12key/</strike>
+</pre>
+<p class="note"><strong>Ngoại lệ:</strong> Nếu hạn định đang xét là mật độ điểm ảnh màn hình,
+Android sẽ chọn tùy chọn khớp gần nhất với mật độ màn hình của thiết bị.
+Nhìn chung, Android ưu tiên giảm kích cỡ một hình ảnh ban đầu lớn hơn thay vì tăng kích cỡ một hình ảnh ban đầu
+nhỏ hơn. Xem phần <a href="{@docRoot}guide/practices/screens_support.html">Hỗ trợ Nhiều
+Màn hình</a>.</p>
+  </li>
+
+  <li>Quay lại và lặp lại các bước 2, 3 và 4 tới khi chỉ còn lại một thư mục. Trong ví dụ, hướng
+màn hình là hạn định tiếp theo nếu có kết quả khớp.
+Vì thế, các tài nguyên không quy định hướng màn hình sẽ bị loại bỏ:
+<pre class="classic no-pretty-print">
+<strike>drawable-en/</strike>
+drawable-en-port/
+<strike>drawable-en-notouch-12key/</strike>
+</pre>
+<p>Thư mục còn lại là {@code drawable-en-port}.</p>
+  </li>
+</ol>
+
+<p>Mặc dù quy trình này được thực thi cho từng tài nguyên được yêu cầu, hệ thống sẽ tối ưu hóa hơn nữa
+một số khía cạnh. Một cách tối ưu hóa như vậy đó là sau khi biết cấu hình thiết bị, nó có thể
+loại bỏ các tài nguyên thay thế mà không thể khớp được. Ví dụ, nếu ngôn ngữ cấu hình
+là English ("en"), khi đó bất kỳ thư mục tài nguyên nào có hạn định ngôn ngữ được đặt thành
+ngôn ngữ khác English đều sẽ không được bao gồm trong tập hợp các tài nguyên được kiểm tra (mặc dù
+thư mục tài nguyên <em>không có</em> hạn định ngôn ngữ vẫn được bao gồm).</p>
+
+<p>Khi lựa chọn tài nguyên dựa trên hạn định kích cỡ màn hình, hệ thống sẽ sử dụng các tài nguyên
+được thiết kế cho màn hình nhỏ hơn màn hình hiện tại nếu không có tài nguyên nào khớp tốt hơn
+(ví dụ, một màn hình kích cỡ lớn sẽ sử dụng các tài nguyên màn hình kích cỡ bình thường nếu cần). Tuy nhiên, nếu
+những tài nguyên duy nhất sẵn có lại <em>lớn hơn</em> màn hình hiện tại, hệ thống sẽ
+<strong>không</strong> sử dụng chúng và ứng dụng của bạn sẽ bị lỗi nếu không có tài nguyên nào khác khớp với cấu hình
+thiết bị (ví dụ, nếu tất cả tài nguyên bố trí đều được gắn thẻ bằng hạn định {@code xlarge},
+nhưng thiết bị lại có một màn hình kích cỡ bình thường).</p>
+
+<p class="note"><strong>Lưu ý:</strong> <em>Mức ưu tiên</em> của hạn định (trong <a href="#table2">bảng 2</a>) quan trọng
+hơn số lượng hạn định khớp chính xác với thiết bị. Ví dụ, trong bước 4 bên trên
+lựa chọn trên danh sách bao gồm ba hạn định khớp chính xác với thiết bị (hướng, loại
+màn hình cảm ứng, và phương pháp nhập liệu), trong khi <code>drawable-en</code> chỉ có một tham số khớp
+(ngôn ngữ). Tuy nhiên, ngôn ngữ có mức ưu tiên cao hơn cả ba hạn định khác này, vì thế
+<code>drawable-port-notouch-12key</code> bị loại.</p>
+
+<p>Để tìm hiểu thêm về cách sử dụng tài nguyên trong ứng dụng của bạn, hãy tiếp tục sang phần <a href="accessing-resources.html">Truy cập Tài nguyên</a>.</p>
diff --git a/docs/html-intl/intl/vi/guide/topics/resources/runtime-changes.jd b/docs/html-intl/intl/vi/guide/topics/resources/runtime-changes.jd
new file mode 100644
index 0000000..4a9c38c
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/resources/runtime-changes.jd
@@ -0,0 +1,281 @@
+page.title=Xử lý Thay đổi Thời gian chạy
+page.tags=hoạt động,vòng đời
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>Trong tài liệu này</h2>
+  <ol>
+    <li><a href="#RetainingAnObject">Giữ lại một Đối tượng trong khi Thay đổi Cấu hình</a></li>
+    <li><a href="#HandlingTheChange">Tự mình Xử lý Thay đổi Cấu hình</a>
+  </ol>
+
+  <h2>Xem thêm</h2>
+  <ol>
+    <li><a href="providing-resources.html">Cung cấp Tài nguyên</a></li>
+    <li><a href="accessing-resources.html">Truy cập Tài nguyên</a></li>
+    <li><a href="http://android-developers.blogspot.com/2009/02/faster-screen-orientation-change.html">Thay đổi
+        Hướng Màn hình Nhanh hơn</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Một số cấu hình thiết bị có thể thay đổi trong thời gian chạy
+(chẳng hạn như hướng màn hình, sự sẵn có của bàn phím, và ngôn ngữ). Khi sự thay đổi như vậy diễn ra,
+Android sẽ khởi động lại việc chạy
+{@link android.app.Activity} ({@link android.app.Activity#onDestroy()} sẽ được gọi, sau đó là {@link
+android.app.Activity#onCreate(Bundle) onCreate()}). Hành vi khởi động lại được thiết kế để giúp
+ứng dụng điều chỉnh phù hợp với cấu hình mới bằng cách tự động tải lại ứng dụng của bạn bằng
+các tài nguyên thay thế khớp với cấu hình thiết bị mới.</p>
+
+<p>Để xử lý khởi động lại cho đúng, điều quan trọng là hoạt động của bạn khôi phục lại trạng thái trước đó
+của nó thông qua vòng đời <a href="{@docRoot}guide/components/activities.html#Lifecycle">Hoạt động
+thông thường</a>, trong đó Android sẽ gọi
+{@link android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} trước khi nó hủy
+hoạt động của bạn sao cho bạn có thể lưu dữ liệu về trạng thái của ứng dụng. Khi đó, bạn có thể khôi phục trạng thái
+trong khi {@link android.app.Activity#onCreate(Bundle) onCreate()} hoặc {@link
+android.app.Activity#onRestoreInstanceState(Bundle) onRestoreInstanceState()}.</p>
+
+<p>Để kiểm tra xem ứng dụng của bạn có tự khởi động lại mà giữ nguyên trạng thái ứng dụng hay không,
+bạn cần gọi ra các thay đổi cấu hình (chẳng hạn như thay đổi hướng màn hình) trong khi thực hiện các
+tác vụ khác nhau trong ứng dụng của bạn. Ứng dụng của bạn sẽ có thể khởi động lại vào bất cứ lúc nào mà không bị mất
+dữ liệu của người dùng hay trạng thái để xử lý các sự kiện như thay đổi cấu hình hoặc khi người dùng nhận được
+một cuộc gọi đến rồi quay lại ứng dụng của bạn muộn hơn nhiều sau khi tiến trình
+ứng dụng của bạn có thể đã bị hủy. Để tìm hiểu về cách bạn có thể khôi phục trạng thái hoạt động của mình, hãy đọc về <a href="{@docRoot}guide/components/activities.html#Lifecycle">Vòng đời của hoạt động</a>.</p>
+
+<p>Tuy nhiên, bạn có thể gặp phải một tình huống trong đó việc khởi động lại ứng dụng của bạn và
+khôi phục phần lớn dữ liệu có thể tốn kém và tạo nên trải nghiệm người dùng kém. Trong
+tình huống như vậy, bạn có hai tùy chọn:</p>
+
+<ol type="a">
+  <li><a href="#RetainingAnObject">Giữ lại một đối tượng trong khi thay đổi cấu hình</a>
+  <p>Cho phép hoạt động của bạn khởi động lại khi cấu hình thay đổi, nhưng mang theo một
+đối tượng có trạng thái tới thực thể mới của hoạt động của bạn.</p>
+
+  </li>
+  <li><a href="#HandlingTheChange">Tự mình xử lý thay đổi cấu hình</a>
+  <p>Ngăn không cho hệ thống khởi động lại hoạt động của bạn trong những thay đổi
+cấu hình nhất định, nhưng nhận một lệnh gọi lại khi cấu hình thay đổi, sao cho bạn có thể cập nhật thủ công
+hoạt động của mình nếu cần.</p>
+  </li>
+</ol>
+
+
+<h2 id="RetainingAnObject">Giữ lại một Đối tượng trong khi Thay đổi Cấu hình</h2>
+
+<p>Nếu việc khởi động lại hoạt động của bạn yêu cầu bạn phải khôi phục nhiều tập hợp dữ liệu lớn, hãy thiết lập lại kết nối
+mạng, hoặc thực hiện các thao tác tăng cường khác, khi đó khởi động lại hoàn toàn do thay đổi cấu hình
+có thể gây ra trải nghiệm người dùng chậm chạp. Đồng thời, có thể bạn sẽ không thể hoàn toàn khôi phục được
+trạng thái hoạt động của mình với {@link android.os.Bundle} mà hệ thống lưu cho bạn bằng phương pháp gọi lại {@link
+android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()}&mdash;nó không
+được thiết kế để mang các đối tượng lớn (chẳng hạn như bitmap) và dữ liệu trong nó phải được nối tiếp hóa rồi
+bỏ nối tiếp hóa, điều này có thể tiêu tốn nhiều bộ nhớ và khiến việc thay đổi cấu hình diễn ra chậm. Trong một
+tình huống như vậy, bạn có thể gỡ bỏ gánh nặng khởi tạo lại hoạt động của mình bằng cách giữ lại {@link
+android.app.Fragment} khi hoạt động của bạn được khởi động lại do thay đổi cấu hình. Phân đoạn này
+có thể chứa các tham chiếu tới đối tượng có trạng thái mà bạn muốn giữ lại.</p>
+
+<p>Khi hệ thống Android tắt hoạt động của bạn do một thay đổi cấu hình, các phân đoạn
+của hoạt động mà bạn đã đánh dấu để giữ lại sẽ không bị hủy. Bạn có thể thêm các phân đoạn này vào
+hoạt động của mình để giữ lại các đối tượng có trạng thái.</p>
+
+<p>Để giữ lại các đối tượng có trạng thái trong một phân đoạn trong khi thay đổi cấu hình thời gian chạy:</p>
+
+<ol>
+  <li>Mở rộng lớp {@link android.app.Fragment} và khai báo các tham chiếu tới đối tượng 
+      có trạng thái của bạn.</li>
+  <li>Gọi {@link android.app.Fragment#setRetainInstance(boolean)} khi phân đoạn được tạo.
+      </li>
+  <li>Thêm phân đoạn vào hoạt động của bạn.</li>
+  <li>Sử dụng {@link android.app.FragmentManager} để truy xuất phân đoạn khi hoạt động 
+      được khởi động lại.</li>
+</ol>
+
+<p>Ví dụ, định nghĩa phân đoạn của bạn như sau:</p>
+
+<pre>
+public class RetainedFragment extends Fragment {
+
+    // data object we want to retain
+    private MyDataObject data;
+
+    // this method is only called once for this fragment
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // retain this fragment
+        setRetainInstance(true);
+    }
+
+    public void setData(MyDataObject data) {
+        this.data = data;
+    }
+
+    public MyDataObject getData() {
+        return data;
+    }
+}
+</pre>
+
+<p class="caution"><strong>Chú ý:</strong> Trong khi bạn có thể lưu trữ bất kỳ đối tượng nào, bạn
+không nên chuyển một đối tượng được gắn với {@link android.app.Activity}, chẳng hạn như {@link
+android.graphics.drawable.Drawable}, {@link android.widget.Adapter}, {@link android.view.View}
+hay bất kỳ đối tượng nào khác đi kèm với một {@link android.content.Context}. Nếu bạn làm vậy, nó sẽ
+rò rỉ tất cả dạng xem và tài nguyên của thực thể hoạt động gốc. (Rò rỉ tài nguyên
+có nghĩa là ứng dụng của bạn duy trì việc lưu giữ tài nguyên và chúng không thể được thu dọn bộ nhớ rác, vì thế
+rất nhiều bộ nhớ có thể bị mất.)</p>
+
+<p>Khi đó, hãy sử dụng {@link android.app.FragmentManager} để thêm phân đoạn vào hoạt động. 
+Bạn có thể thu được đối tượng dữ liệu từ phân đoạn khi hoạt động bắt đầu lại trong khi 
+thay đổi cấu hình thời gian chạy. Ví dụ, định nghĩa hoạt động của bạn như sau:</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    private RetainedFragment dataFragment;
+
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+
+        // find the retained fragment on activity restarts
+        FragmentManager fm = getFragmentManager();
+        dataFragment = (DataFragment) fm.findFragmentByTag(“data”);
+
+        // create the fragment and data the first time
+        if (dataFragment == null) {
+            // add the fragment
+            dataFragment = new DataFragment();
+            fm.beginTransaction().add(dataFragment, “data”).commit();
+            // load the data from the web
+            dataFragment.setData(loadMyData());
+        }
+
+        // the data is available in dataFragment.getData()
+        ...
+    }
+
+    &#64;Override
+    public void onDestroy() {
+        super.onDestroy();
+        // store the data in the fragment
+        dataFragment.setData(collectMyLoadedData());
+    }
+}
+</pre>
+
+<p>Trong ví dụ này, {@link android.app.Activity#onCreate(Bundle) onCreate()} thêm một phân đoạn
+hoặc khôi phục một tham chiếu đến nó. {@link android.app.Activity#onCreate(Bundle) onCreate()} cũng
+lưu trữ đối tượng có trạng thái bên trong thực thể phân đoạn đó.
+{@link android.app.Activity#onDestroy() onDestroy()} cập nhật đối tượng có trạng thái bên trong 
+thực thể phân đoạn được giữ lại.</p>
+
+
+
+
+
+<h2 id="HandlingTheChange">Tự mình Xử lý Thay đổi Cấu hình</h2>
+
+<p>Nếu ứng dụng của bạn không cần cập nhật các tài nguyên trong một thay đổi
+cấu hình cụ thể <em>và</em> bạn có giới hạn về hiệu năng yêu cầu bạn phải
+tránh khởi động lại hoạt động, khi đó bạn có thể khai báo rằng hoạt động của bạn tự mình xử lý thay đổi cấu hình
+, làm vậy sẽ tránh cho hệ thống khởi động lại hoạt động của bạn.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Việc tự mình xử lý thay đổi cấu hình có thể khiến việc
+sử dụng các tài nguyên thay thế khó khăn hơn nhiều, vì hệ thống không tự động áp dụng chúng
+cho bạn. Kỹ thuật này nên được coi là giải pháp cuối cùng khi bạn phải tránh khởi động lại do một
+thay đổi cấu hình và không được khuyến cáo đối với hầu hết ứng dụng.</p>
+
+<p>Để khai báo rằng hoạt động của bạn xử lý một thay đổi cấu hình, hãy chỉnh sửa phần tử <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> phù hợp trong
+tệp bản kê khai của bạn để bao gồm thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> với một giá trị có chức năng biểu diễn cấu hình mà bạn muốn
+xử lý. Các giá trị có thể được liệt kê trong tài liệu dành cho thuộc tính <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> (các giá trị thường được sử dụng nhất là {@code "orientation"} để
+ngăn khởi động lại khi hướng màn hình thay đổi và {@code "keyboardHidden"} để ngăn
+khởi động lại khi tính sẵn có của bàn phím thay đổi).  Bạn có thể khai báo nhiều giá trị cấu hình trong
+thuộc tính bằng cách tách chúng bằng một ký tự {@code |} đường dẫn nối.</p>
+
+<p>Ví dụ, đoạn mã bản kê khai sau khai báo một hoạt động có chức năng xử lý cả
+thay đổi về hướng màn hình và thay đổi về tính sẵn có của bàn phím:</p>
+
+<pre>
+&lt;activity android:name=".MyActivity"
+          android:configChanges="orientation|keyboardHidden"
+          android:label="@string/app_name">
+</pre>
+
+<p>Lúc này, khi một trong những cấu hình này thay đổi, {@code MyActivity} không khởi động lại.
+Thay vào đó, {@code MyActivity} nhận được một lệnh gọi tới {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}. Phương pháp này
+được chuyển bởi một đối tượng {@link android.content.res.Configuration} mà quy định
+cấu hình thiết bị mới. Bằng cách đọc các trường trong {@link android.content.res.Configuration},
+bạn có thể xác định cấu hình mới và thực hiện những thay đổi phù hợp bằng cách cập nhật
+tài nguyên được sử dụng trong giao diện của bạn. Tại
+thời điểm phương pháp này được gọi, đối tượng {@link android.content.res.Resources} của hoạt động của bạn được cập nhật
+để trả về các tài nguyên dựa trên cấu hình mới, sao cho bạn có thể dễ dàng
+đặt lại các phần tử trong UI của mình mà không để hệ thống khởi động lại hoạt động của bạn.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Bắt đầu với Android 3.2 (API mức 13), <strong>
+"kích cỡ màn hình" cũng thay đổi</strong> khi thiết bị chuyển giữa hướng dọc và khổ ngang
+. Vì thế, nếu bạn muốn ngăn cản việc khởi động lại vào thời gian chạy do thay đổi hướng khi phát triển
+cho API mức 13 hoặc cao hơn (như được khai báo bởi các thuộc tính <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> và <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>
+), bạn phải bao gồm giá trị {@code "screenSize"} bên cạnh giá trị {@code
+"orientation"}. Cụ thể, bạn phải khai báo {@code
+android:configChanges="orientation|screenSize"}. Tuy nhiên, nếu ứng dụng của bạn nhắm tới API mức
+12 hoặc thấp hơn, khi đó hoạt động của bạn luôn tự mình xử lý thay đổi cấu hình này (thay đổi
+cấu hình này không khởi động lại hoạt động của bạn, ngay cả khi đang chạy trên một thiết bị phiên bản Android 3.2 hoặc cao hơn).</p>
+
+<p>Ví dụ, việc triển khai {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} sau
+sẽ kiểm tra hướng thiết bị hiện tại:</p>
+
+<pre>
+&#64;Override
+public void onConfigurationChanged(Configuration newConfig) {
+    super.onConfigurationChanged(newConfig);
+
+    // Checks the orientation of the screen
+    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
+        Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
+    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
+        Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
+    }
+}
+</pre>
+
+<p>Đối tượng {@link android.content.res.Configuration} biểu diễn tất cả cấu hình
+hiện tại, không chỉ những cấu hình đã thay đổi. Trong phần lớn thời gian, bạn sẽ không quan tâm chính xác xem
+cấu hình đã thay đổi như thế nào và có thể đơn giản gán lại tất cả tài nguyên của mình với chức năng cung cấp nội dung thay thế
+cho cấu hình mà bạn đang xử lý. Ví dụ, do đối tượng {@link
+android.content.res.Resources} nay đã được cập nhật, bạn có thể đặt lại
+bất kỳ{@link android.widget.ImageView} nào với {@link android.widget.ImageView#setImageResource(int)
+setImageResource()}
+và tài nguyên phù hợp cho cấu hình mới được sử dụng (như được mô tả trong phần <a href="providing-resources.html#AlternateResources">Cung cấp Tài nguyên</a>).</p>
+
+<p>Lưu ý rằng giá trị từ các trường {@link
+android.content.res.Configuration} là những số nguyên khớp với hằng số cụ thể
+từ lớp {@link android.content.res.Configuration}. Đối với tài liệu về những hằng số
+cần sử dụng với mỗi trường, hãy tham khảo trường phù hợp trong tham chiếu {@link
+android.content.res.Configuration}.</p>
+
+<p class="note"><strong>Hãy ghi nhớ:</strong> Khi bạn khai báo hoạt động của mình để xử lý một
+thay đổi cấu hình, bạn có trách nhiệm đặt lại bất kỳ phần tử nào mà bạn cung cấp nội dung thay thế cho. Nếu bạn
+khai báo hoạt động của mình để xử lý thay đổi hướng và có những hình ảnh nên thay đổi
+giữa khổ ngang và hướng dọc, bạn phải gán lại từng tài nguyên cho từng phần tử trong khi {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}.</p>
+
+<p>Nếu bạn không cần cập nhật ứng dụng của mình dựa trên những thay đổi
+cấu hình này, thay vào đó bạn có thể <em>không</em> triển khai {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}. Trong
+trường hợp đó, tất cả tài nguyên được sử dụng trước khi thay đổi cấu hình sẽ vẫn được sử dụng
+và bạn chỉ mới tránh được việc khởi động lại hoạt động của mình. Tuy nhiên, ứng dụng của bạn cần luôn có khả năng
+tắt và khởi động lại với trạng thái trước đó của nó được giữ nguyên, vì thế bạn không nên coi
+kỹ thuật này như một cách để thoát khỏi việc giữ lại trạng thái của mình trong vòng đời của hoạt động bình thường. Không chỉ bởi
+có những thay đổi cấu hình khác mà bạn không thể ngăn không cho khởi động lại ứng dụng của mình, mà
+cả bởi vì bạn nên xử lý những sự kiện như là khi người dùng rời khỏi ứng dụng của bạn và nó bị
+hủy trước khi người dùng quay lại.</p>
+
+<p>Để biết thêm về những thay đổi cấu hình nào mà bạn có thể xử lý trong hoạt động của mình, hãy xem tài liệu <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> và lớp {@link android.content.res.Configuration}
+.</p>
diff --git a/docs/html-intl/intl/vi/guide/topics/ui/controls.jd b/docs/html-intl/intl/vi/guide/topics/ui/controls.jd
new file mode 100644
index 0000000..37fe81c
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/ui/controls.jd
@@ -0,0 +1,90 @@
+page.title=Điều khiển Nhập liệu
+parent.title=Giao diện Người dùng
+parent.link=index.html
+@jd:body
+
+<div class="figure" style="margin:0">
+  <img src="{@docRoot}images/ui/ui-controls.png" alt="" style="margin:0" />
+</div>
+
+<p>Điều khiển nhập liệu là những thành phần tương tác trong giao diện người dùng của ứng dụng của bạn. Android cung cấp
+nhiều kiểu điều khiển bạn có thể sử dụng trong UI của mình, chẳng hạn như nút, trường văn bản, thanh tìm kiếm,
+hộp kiểm, nút thu phóng, nút bật tắt, và nhiều kiểu khác.</p>
+
+<p>Thêm một điều khiển nhập liệu vào UI của bạn cũng đơn giản như thêm một phần tử XML vào <a href="{@docRoot}guide/topics/ui/declaring-layout.html">bố trí XML</a> của bạn. Ví dụ, đây là một bố trí
+với một trường văn bản và nút:</p>
+
+<pre style="clear:right">
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+    android:orientation="horizontal">
+    &lt;EditText android:id="@+id/edit_message"
+        android:layout_weight="1"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:hint="@string/edit_message" />
+    &lt;Button android:id="@+id/button_send"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/button_send"
+        android:onClick="sendMessage" />
+&lt;/LinearLayout>
+</pre>
+
+<p>Mỗi điều khiển nhập liệu hỗ trợ một tập hợp sự kiện nhập liệu cụ thể để bạn có thể xử lý các sự kiện chẳng hạn như khi
+người dùng nhập văn bản hoặc chạm vào một nút.</p>
+
+
+<h2 id="CommonControls">Điều khiển Thông dụng</h2>
+<p>Sau đây là danh sách những điều khiển thông dụng mà bạn có thể sử dụng trong ứng dụng của mình. Theo dõi các liên kết để tìm
+hiểu thêm về việc sử dụng từng điều khiển.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Android cung cấp nhiều điều khiển hơn một chút so với liệt kê ở
+đây. Duyệt gói {@link android.widget} để khám phá thêm. Nếu ứng dụng của bạn yêu cầu một
+kiểu điều khiển nhập liệu cụ thể, bạn có thể xây dựng <a href="{@docRoot}guide/topics/ui/custom-components.html">các thành phần tùy chỉnh</a> của chính mình.</p>
+
+<table>
+    <tr>
+        <th scope="col">Kiểu Điều khiển</th>
+        <th scope="col">Mô tả</th>
+	<th scope="col">Lớp Liên quan</th>
+    </tr>
+    <tr>
+        <td><a href="controls/button.html">Nút</a></td>
+        <td>Nút nhấn có thể được nhấn, hoặc nhấp vào, bởi người dùng để thực hiện một hành động.</td>
+	<td>{@link android.widget.Button Button} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/text.html">Trường văn bản</a></td>
+        <td>Trường văn bản có thể chỉnh sửa. Bạn có thể sử dụng widget <code>AutoCompleteTextView</code> để tạo một widget mục nhập văn bản nhằm cung cấp các gợi ý tự động hoàn thành</td>
+	<td>{@link android.widget.EditText EditText}, {@link android.widget.AutoCompleteTextView}</td>
+    </tr>
+    <tr>
+        <td><a href="controls/checkbox.html">Hộp kiểm</a></td>
+        <td>Một công tắc bật/tắt mà có thể được chuyển đổi bởi người dùng. Bạn nên sử dụng các hộp kiểm khi trình bày cho người dùng một nhóm các tùy chọn có thể chọn mà không loại trừ lẫn nhau.</td>
+	<td>{@link android.widget.CheckBox CheckBox} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/radiobutton.html">Nút chọn một</a></td>
+        <td>Tương tự như hộp kiểm, chỉ khác ở chỗ chỉ có thể chọn một tùy chọn trong nhóm.</td>
+	<td>{@link android.widget.RadioGroup RadioGroup} 
+	<br>{@link android.widget.RadioButton RadioButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/togglebutton.html" style="white-space:nowrap">Nút bật tắt</a></td>
+        <td>Một nút bật/tắt có đèn chỉ báo.</td>
+	<td>{@link android.widget.ToggleButton ToggleButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/spinner.html">Quay tròn</a></td>
+        <td>Một danh sách thả xuống cho phép người dùng chọn một giá trị từ một tập hợp.</td>
+	<td>{@link android.widget.Spinner Spinner} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/pickers.html">Bộ chọn</a></td>
+        <td>Một hộp thoại cho người dùng chọn một giá trị đơn lẻ cho một tập hợp bằng cách sử dụng các nút lên/xuống hoặc thông qua cử chỉ trượt nhanh. Sử dụng một widget <code>DatePicker</code> để nhập giá trị cho ngày (tháng, ngày, năm) hoặc một widget <code>TimePicker</code> để nhập giá trị cho thời gian (giờ, phút, Sáng/Chiều tối) mà sẽ được định dạng tự động theo bản địa của người dùng.</td>
+	<td>{@link android.widget.DatePicker}, {@link android.widget.TimePicker}</td>
+    </tr>
+</table>
diff --git a/docs/html-intl/intl/vi/guide/topics/ui/declaring-layout.jd b/docs/html-intl/intl/vi/guide/topics/ui/declaring-layout.jd
new file mode 100644
index 0000000..6add812
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/ui/declaring-layout.jd
@@ -0,0 +1,492 @@
+page.title=Bố trí
+page.tags=dạng xem, nhóm dạng xem
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Trong tài liệu này</h2>
+<ol>
+  <li><a href="#write">Ghi XML</a></li>
+  <li><a href="#load">Nạp Tài nguyên XML</a></li>
+  <li><a href="#attributes">Thuộc tính</a>
+    <ol>
+      <li><a href="#id">ID</a></li>
+      <li><a href="#layout-params">Tham số Bố trí</a></li>
+    </ol>
+  </li>
+  <li><a href="#Position">Vị trí Bố trí</a></li>
+  <li><a href="#SizePaddingMargins">Kích cỡ, Phần đệm và Lề</a></li>
+  <li><a href="#CommonLayouts">Các Bố trí Thường gặp</a></li>
+  <li><a href="#AdapterViews">Xây dựng Bố trí bằng một Trình điều hợp</a>
+    <ol>
+      <li><a href="#FillingTheLayout">Điền dữ liệu vào một dạng xem trình điều hợp</a></li>
+      <li><a href="#HandlingUserSelections">Xử lý sự kiện nhấp</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>Lớp khóa</h2>
+  <ol>
+    <li>{@link android.view.View}</li>
+    <li>{@link android.view.ViewGroup}</li>
+    <li>{@link android.view.ViewGroup.LayoutParams}</li>
+  </ol>
+
+  <h2>Xem thêm</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/firstapp/building-ui.html">Xây dựng một Giao diện Người dùng
+Đơn giản</a></li> </div>
+</div>
+
+<p>Bố trí định nghĩa cấu trúc hiển thị cho một giao diện người dùng, chẳng hạn như UI cho một <a href="{@docRoot}guide/components/activities.html">hoạt động</a> hoặc <a href="{@docRoot}guide/topics/appwidgets/index.html">widget ứng dụng</a>.
+Bạn có thể khai báo một bố trí bằng hai cách:</p>
+<ul>
+<li><strong>Khai báo phần tử UI trong XML</strong>. Android cung cấp một kho từ vựng XML
+đơn giản, tương ứng với các lớp và lớp con Dạng xem, chẳng hạn như dành cho các widget và bố trí.</li>
+<li><strong>Khởi tạo các phần tử bố trí vào thời gian chạy</strong>. Ứng dụng
+của bạn có thể tạo các đối tượng Dạng xem và Nhóm Dạng xem (và thao tác trên các tính chất của nó) theo lập trình. </li>
+</ul>
+
+<p>Khuôn khổ Android cho bạn sự linh hoạt trong khi sử dụng một hoặc cả hai phương pháp này để khai báo và quản lý UI ứng dụng của mình. Ví dụ, bạn có thể khai báo các bố trí mặc định cho ứng dụng của mình trong XML, bao gồm các phần tử màn hình mà sẽ xuất hiện trong chúng hoặc tính chất của chúng. Sau đó, bạn có thể thêm mã trong ứng dụng của mình để sửa đổi trạng thái của các đối tượng trên màn hình, bao gồm những đối tượng được khai báo trong XML, vào thời gian chạy. </p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <ul>
+  <li>Phần bổ trợ <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT
+ cho Eclipse</a> sẽ đưa ra một bản xem trước bố trí XML của bạn &mdash;
+  có tệp XML được mở, hãy chọn tab <strong>Bố trí</strong>.</li>
+  <li>Bạn cũng nên thử công cụ
+  <a href="{@docRoot}tools/debugging/debugging-ui.html#hierarchyViewer">Trình xem Phân cấp</a>,
+  để gỡ rối các bố trí &mdash; nó hé lộ các giá trị tính chất của bố trí,
+  vẽ đường viền bằng các chỉ báo phần đệm/lề, và các dạng xem được dựng đầy đủ trong khi
+  bạn gỡ rối trên trình mô phỏng hoặc thiết bị.</li>
+  <li>Công cụ <a href="{@docRoot}tools/debugging/debugging-ui.html#layoutopt">layoutopt</a> cho phép
+  bạn nhanh chóng phân tích các bố trí và phân cấp của mình xem có không hiệu quả hoặc có các vấn đề khác không.</li>
+</div>
+</div>
+
+<p>Ưu điểm của việc khai báo UI của bạn trong XML là cho phép bạn tách việc trình bày ứng dụng của mình với mã điều khiển hành vi của nó hiệu quả hơn. Mô tả UI của bạn nằm ngoài mã ứng dụng của bạn, điều này có nghĩa rằng bạn có thể sửa đổi hoặc điều hợp nó mà không phải sửa đổi mã nguồn của bạn và biên dịch lại. Ví dụ, bạn có thể tạo bố trí XML cho các hướng màn hình khác nhau, kích cỡ màn hình khác nhau, và ngôn ngữ khác nhau. Ngoài ra, việc khai báo bố trí trong XML giúp dễ dàng hơn trong việc hiển thị cấu trúc UI của bạn, vì vậy sẽ dễ gỡ lỗi sự cố hơn. Như vậy, tài liệu này tập trung vào việc hướng dẫn bạn cách khai báo bố trí của mình trong XML. Nếu bạn
+quan tâm tới việc khởi tạo các đối tượng Dạng xem vào thời gian chạy, hãy tham khảo {@link android.view.ViewGroup} và
+tài liệu tham khảo lớp {@link android.view.View}.</p>
+
+<p>Nhìn chung, kho từ vựng của XML đối với việc khai báo các phần tử UI tuân thủ chặt chẽ cấu trúc và cách đặt tên các lớp và phương pháp, trong đó các tên phần tử tương ứng với tên lớp và tên thuộc tính tương ứng với phương pháp. Trên thực tế, sự tương ứng thường trực tiếp đến mức bạn có thể đoán thuộc tính XML nào tương ứng với một phương pháp lớp, hoặc đoán xem lớp nào tương ứng với một phần tử XML cho trước. Tuy nhiên, lưu ý rằng không phải tất cả từ vựng đều giống nhau. Trong một số trường hợp, có sự khác biệt nhỏ trong việc đặt tên. Ví
+dụ, phần tử EditText có thuộc tính <code>text</code> tương ứng với
+<code>EditText.setText()</code>. </p>
+
+<p class="note"><strong>Mẹo:</strong> Tìm hiểu thêm về các kiểu bố trí trong <a href="{@docRoot}guide/topics/ui/layout-objects.html">Đối tượng Bố trí
+Thường gặp</a>. Có một tuyển tập các bài hướng dẫn về việc xây dựng các bố trí khác nhau trong hướng dẫn bài học
+<a href="{@docRoot}resources/tutorials/views/index.html">Dạng xem Hello</a>.</p>
+
+<h2 id="write">Ghi XML</h2>
+
+<p>Khi sử dụng từ vựng XML của Android, bạn có thể nhanh chóng thiết kế các bố trí UI và phần tử màn hình mà chúng chứa, giống như cách bạn tạo trang web trong HTML &mdash; bằng một loạt các phần tử lồng nhau. </p>
+
+<p>Mỗi tệp bố trí phải chứa chính xác một phần tử gốc, đó phải là một đối tượng Dạng xem hoặc Nhóm Dạng xem. Sau khi đã định nghĩa phần tử gốc, bạn có thể thêm các đối tượng hoặc widget bố trí bổ sung làm phần tử con để dần dần xây dựng một phân cấp Dạng xem định nghĩa bố trí của bạn. Ví dụ, sau đây là một bố trí XML sử dụng một {@link android.widget.LinearLayout}
+thẳng đứng để giữ một {@link android.widget.TextView} và một {@link android.widget.Button}:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="Hello, I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="Hello, I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>Sau khi bạn đã khai báo bố trí của mình trong XML, hãy lưu tệp với phần mở rộng <code>.xml</code>,
+trong thư mục dự án <code>res/layout/</code> Android của bạn để biên dịch cho phù hợp. </p>
+
+<p>Thông tin về cú pháp đối với tệp XML bố trí có sẵn trong tài liệu <a href="{@docRoot}guide/topics/resources/layout-resource.html">Tài nguyên Bố trí</a>.</p>
+
+<h2 id="load">Nạp Tài nguyên XML</h2>
+
+<p>Khi bạn biên dịch ứng dụng của mình, từng tệp bố trí XML được biên dịch thành một tài nguyên 
+{@link android.view.View}. Bạn nên nạp tài nguyên bố trí từ mã ứng dụng của mình, trong triển khai gọi lại
+{@link android.app.Activity#onCreate(android.os.Bundle) Activity.onCreate()} của bạn.
+Làm vậy bằng cách gọi <code>{@link android.app.Activity#setContentView(int) setContentView()}</code>,
+chuyển cho nó tham chiếu tới tài nguyên bố trí của bạn dưới hình thức:
+<code>R.layout.<em>layout_file_name</em></code>.
+Ví dụ, nếu bố trí XML của bạn được lưu thành <code>main_layout.xml</code>, bạn sẽ nạp nó
+cho Hoạt động của mình như sau:</p>
+<pre>
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.main_layout);
+}
+</pre>
+
+<p>Phương pháp gọi lại <code>onCreate()</code> trong Hoạt động của bạn được gọi bởi khuôn khổ Android khi
+Hoạt động của bạn được khởi chạy (xem phần thảo luận về vòng đời, trong tài liệu
+<a href="{@docRoot}guide/components/activities.html#Lifecycle">Hoạt động</a>
+).</p>
+
+
+<h2 id="attributes">Thuộc tính</h2>
+
+<p>Mọi đối tượng Dạng xem và Nhóm Dạng xem đều hỗ trợ các phiên bản thuộc tính XML của chính mình.
+Một số thuộc tính áp dụng riêng cho đối tượng Dạng xem (ví dụ, TextView hỗ trợ thuộc tính <code>textSize</code>
+), nhưng những thuộc tính này cũng được kế thừa bởi bất kỳ đối tượng Dạng xem nào mà có thể mở rộng lớp này.
+Một số được áp dụng chung cho tất cả đối tượng Dạng xem vì chúng được kế thừa từ lớp Dạng xem gốc (như
+thuộc tính <code>id</code>). Và những thuộc tính còn lại được coi là "tham số bố trí," đó là những thuộc tính
+mô tả một số hướng bố trí nhất định của đối tượng Dạng xem, như được định nghĩa bởi đối tượng Nhóm Dạng xem
+mẹ của đối tượng đó.</p>
+
+<h3 id="id">ID</h3>
+
+<p>Bất kỳ đối tượng Dạng xem nào cũng có một ID số nguyên được liên kết với nó để nhận biết duy nhất Dạng xem trong cây.
+Khi ứng dụng được biên dịch, ID này được tham chiếu như một số nguyên, nhưng ID thường
+được gán trong tệp XML bố trí như một xâu, trong thuộc tính <code>id</code>.
+Đây là thuộc tính XML chung cho tất cả đối tượng Dạng xem
+(được định nghĩa theo lớp {@link android.view.View}) và bạn sẽ rất hay sử dụng nó.
+Cú pháp đối với một ID bên trong một tag XML là:</p>
+<pre>android:id="&#64;+id/my_button"</pre>
+
+<p>Biểu tượng "a móc" (@) ở đầu xâu thể hiện rằng trình phân tích XML nên phân tích và mở rộng phần còn lại
+của xâu ID và nhận biết nó như một tài nguyên ID. Biểu tượng dấu cộng (+) có nghĩa rằng đây là một tên tài nguyên mới mà phải
+được tạo và thêm vào tài nguyên của chúng ta (trong tệp <code>R.java</code>). Có nhiều tài nguyên ID khác
+được cung cấp bởi khuôn khổ Android. Khi tham chiếu một ID tài nguyên Android, bạn không cần biểu tượng dấu cộng,
+nhưng phải thêm vùng tên gói <code>android</code>, như sau:</p>
+<pre>android:id="&#64;android:id/empty"</pre>
+<p>Khi đã có vùng tên gói <code>android</code>, giờ chúng ta đang tham chiếu một ID từ lớp tài nguyên <code>android.R</code>
+, thay vì lớp tài nguyên cục bộ.</p>
+
+<p>Để tạo các dạng xem và tham chiếu chúng từ ứng dụng, một mô thức thường thấy đó là:</p>
+<ol>
+  <li>Định nghĩa một dạng xem/widget trong tệp bố trí và gán cho nó một ID duy nhất:
+<pre>
+&lt;Button android:id="&#64;+id/my_button"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="&#64;string/my_button_text"/>
+</pre>
+  </li>
+  <li>Sau đó, tạo một thực thể của đối tượng dạng xem và chụp nó từ bố trí
+(thường trong phương pháp <code>{@link android.app.Activity#onCreate(Bundle) onCreate()}</code>):
+<pre>
+Button myButton = (Button) findViewById(R.id.my_button);
+</pre>
+  </li>
+</ol>
+<p>Định nghĩa các ID cho đối tượng dạng xem là việc quan trọng khi tạo một {@link android.widget.RelativeLayout}.
+Trong một bố trí tương đối, các dạng xem đồng hạng có thể định nghĩa bố trí của nó so với dạng xem đồng hạng kia,
+dạng xem mà được tham chiếu bởi ID duy nhất.</p>
+<p>Một ID không cần phải là duy nhất trong toàn bộ cây, nhưng nên là
+duy nhất trong bộ phận của cây mà bạn đang tìm kiếm (thường là toàn bộ cây, vì thế tốt nhất là
+ID nên hoàn toàn duy nhất khi có thể).</p>
+
+
+<h3 id="layout-params">Tham số Bố trí</h3>
+
+<p>Các thuộc tính bố trí XML <code>layout_<em>something</em></code> sẽ định nghĩa
+các tham số bố trí cho Dạng xem phù hợp với Nhóm Dạng xem mà nó nằm trong đó.</p>
+
+<p>Mọi lớp Nhóm Dạng xem đều triển khai một lớp lồng nhau có chức năng mở rộng {@link
+android.view.ViewGroup.LayoutParams}. Lớp con này
+chứa các kiểu tính chất mà định nghĩa kích cỡ và vị trí của từng dạng xem con cho
+phù hợp với nhóm dạng xem. Như bạn có thể thấy trong hình 1, nhóm dạng xem
+mẹ sẽ định nghĩa các tham số bố trí cho từng dạng xem con (bao gồm nhóm dạng xem con).</p>
+
+<img src="{@docRoot}images/layoutparams.png" alt="" />
+<p class="img-caption"><strong>Hình 1.</strong> Trực quan hóa một phân cấp dạng xem với các tham số
+bố trí được liên kết với từng dạng xem.</p>
+
+<p>Để ý rằng mọi lớp con LayoutParams đều có cú pháp riêng của mình cho các giá trị
+thiết đặt. Mỗi phần tử con phải định nghĩa LayoutParams cho phù hợp với phần tử mẹ của nó,
+mặc dù cũng có thể định nghĩa LayoutParams khác cho phần tử con của chính nó. </p>
+
+<p>Tất cả nhóm dạng xem đều có chiều rộng và chiều cao (<code>layout_width</code> và
+<code>layout_height</code>), và mỗi dạng xem đều phải định nghĩa chúng. Nhiều
+LayoutParams cũng có lề và viền tùy chọn. <p>
+
+<p>Bạn có thể chỉ định chiều rộng và chiều cao bằng các số đo chính xác, mặc dù có thể
+bạn sẽ không muốn làm điều này thường xuyên. Bạn sẽ thường sử dụng một trong những hằng số này để
+đặt chiều rộng hoặc chiều cao: </p>
+
+<ul>
+  <li><var>wrap_content</var> cho biết dạng xem của bạn tự định cỡ theo kích thước
+mà nội dung của nó yêu cầu.</li>
+  <li><var>match_parent</var> (được đặt tên <var>fill_parent</var> trước API Mức 8)
+cho biết dạng xem của bạn có thể phóng lớn khi nhóm dạng xem mẹ của nó cho phép.</li>
+</ul>
+
+<p>Nhìn chung, việc chỉ định một chiều rộng và chiều cao bố trí bằng cách sử dụng các đơn vị tuyệt đối như
+điểm ảnh là điều không được khuyến cáo. Thay vào đó, sử dụng các số đo tương đối như
+số đơn vị điểm ảnh độc lập với mật độ (<var>dp</var>), <var>wrap_content</var>, hoặc
+<var>match_parent</var>, là một phương pháp tốt hơn, vì nó giúp đảm bảo rằng
+ứng dụng của bạn sẽ hiển thị phù hợp giữa nhiều loại kích cỡ màn hình thiết bị khác nhau.
+Các kiểu số đo được chấp nhận được định nghĩa trong tài liệu
+<a href="{@docRoot}guide/topics/resources/available-resources.html#dimension">
+Tài nguyên Có sẵn</a>.</p>
+
+
+<h2 id="Position">Vị trí Bố trí</h2>
+   <p>
+   Hình học của một dạng xem là hình chữ nhật. Dạng xem có một vị trí,
+   được biểu diễn thành một cặp tọa độ <em>trái</em> và <em>trên</em> và
+   hai kích thước, được biểu diễn thành chiều rộng và chiều cao. Đơn vị của vị trí
+   và kích thước là điểm ảnh.
+   </p>
+
+   <p>
+   Có thể truy xuất vị trí của một dạng xem bằng cách gọi ra các phương pháp
+   {@link android.view.View#getLeft()} và {@link android.view.View#getTop()}. Phương pháp đầu trả về tọa độ trái, hay X,
+   của hình chữ nhật biểu diễn dạng xem. Phương pháp sau trả về tọa độ trên, hay Y,
+   của hình chữ nhật biểu diễn dạng xem. Những phương pháp này
+   đều trả về vị trí của dạng xem so với dạng xem mẹ của nó. Ví dụ,
+   khi <code>getLeft()</code> trả về 20, điều đó có nghĩa là dạng xem nằm ở 20 điểm ảnh về
+   bên phải của cạnh trái của dạng xem mẹ trực tiếp của nó.
+   </p>
+
+   <p>
+   Ngoài ra, một vài phương pháp thuận tiện được đưa ra để tránh những tính toán
+   không cần thiết, cụ thể là {@link android.view.View#getRight()} và {@link android.view.View#getBottom()}.
+   Những phương pháp này trả về tọa độ của cạnh phải và cạnh đáy của hình chữ nhật
+   biểu diễn dạng xem. Ví dụ, việc gọi {@link android.view.View#getRight()}
+   tương tự như tính toán sau: <code>getLeft() + getWidth()</code>.
+   </p>
+
+
+<h2 id="SizePaddingMargins">Kích cỡ, Phần đệm và Lề</h2>
+   <p>
+   Kích cỡ của một dạng xem được biểu diễn bằng chiều rộng và chiều cao. Thực ra một dạng xem
+   sẽ có hai cặp giá trị chiều rộng và chiều cao.
+   </p>
+
+   <p>
+   Cặp thứ nhất được gọi là <em>chiều rộng đo được</em> và 
+   <em>chiều cao đo được</em>. Những kích thước này xác định một dạng xem muốn phóng lớn bao nhiêu
+   trong dạng xem mẹ của nó. Các
+   kích thước đo được có thể thu được bằng cách gọi {@link android.view.View#getMeasuredWidth()}
+   và {@link android.view.View#getMeasuredHeight()}.
+   </p>
+
+   <p>
+   Cặp thứ hai đơn thuần là <em>chiều rộng</em> và <em>chiều cao</em>, hoặc
+   đôi khi gọi là <em>chiều rộng vẽ</em> và <em>chiều cao vẽ</em>. Những
+   kích thước này xác định kích cỡ thực sự của dạng xem trên màn hình, tại thời điểm vẽ và
+   sau khi bố trí. Những giá trị này có thể nhưng không nhất thiết phải khác với
+   chiều rộng và chiều cao đo được. Chiều rộng và chiều cao này có thể lấy được bằng cách gọi
+   {@link android.view.View#getWidth()} và {@link android.view.View#getHeight()}.
+   </p>
+
+   <p>
+   Để đo các kích thước của nó, dạng xem cần xét tới phần đệm của nó. Phần đệm
+   được biểu diễn bằng số điểm ảnh của phần bên trái, bên trên, bên phải và bên dưới của dạng xem.
+   Phần đệm có thể được sử dụng để bù trừ nội dung của dạng xem bằng một số điểm ảnh
+   cụ thể. Ví dụ, phần đệm bên trái bằng 2 sẽ đẩy nội dung của dạng xem đi
+   2 điểm ảnh về bên phải của cạnh bên trái. Phần đệm có thể được đặt bằng cách sử dụng phương pháp
+   {@link android.view.View#setPadding(int, int, int, int)} và được truy vấn bằng cách gọi
+   {@link android.view.View#getPaddingLeft()}, {@link android.view.View#getPaddingTop()},
+   {@link android.view.View#getPaddingRight()} và {@link android.view.View#getPaddingBottom()}.
+   </p>
+
+   <p>
+   Mặc dù dạng xem có thể xác định phần đệm, nó không có bất kỳ sự hỗ trợ nào cho
+   lề. Tuy nhiên, các nhóm dạng xem lại cung cấp sự hỗ trợ như vậy. Tham khảo
+   {@link android.view.ViewGroup} và
+   {@link android.view.ViewGroup.MarginLayoutParams} để biết thêm thông tin.
+   </p>
+
+   <p>Để biết thêm thông tin về kích thước, xem
+   <a href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">Giá trị Kích thước</a>.
+   </p>
+
+
+
+
+
+
+<style type="text/css">
+div.layout {
+  float:left;
+  width:200px;
+  margin:0 0 20px 20px;
+}
+div.layout.first {
+  margin-left:0;
+  clear:left;
+}
+</style>
+
+
+
+
+<h2 id="CommonLayouts">Các Bố trí Thường gặp</h2>
+
+<p>Mỗi lớp con của lớp {@link android.view.ViewGroup} cung cấp một cách duy nhất để hiển thị
+các dạng xem mà bạn lồng trong nó. Dưới đây là một số kiểu bố trí phổ biến hơn mà được tích hợp
+trong nền tảng Android.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Mặc dù bạn có thể lồng một hoặc nhiều bố trí với một
+bố trí khác để đạt được thiết kế UI của mình, bạn nên cố gắng duy trì phân cấp bố trí của mình ở mức nông nhất
+có thể. Bố trí của bạn sẽ vẽ nhanh hơn nếu nó có ít bố trí lồng nhau hơn (phân cấp dạng xem rộng
+sẽ tốt hơn phân cấp dạng xem sâu).</p>
+
+<!--
+<h2 id="framelayout">FrameLayout</h2>
+<p>{@link android.widget.FrameLayout FrameLayout} is the simplest type of layout
+object. It's basically a blank space on your screen that you can
+later fill with a single object &mdash; for example, a picture that you'll swap in and out.
+All child elements of the FrameLayout are pinned to the top left corner of the screen; you cannot
+specify a different location for a child view. Subsequent child views will simply be drawn over
+previous ones,
+partially or totally obscuring them (unless the newer object is transparent).
+</p>
+-->
+
+
+<div class="layout first">
+  <h4><a href="layout/linear.html">Bố trí Tuyến tính</a></h4>
+  <a href="layout/linear.html"><img src="{@docRoot}images/ui/linearlayout-small.png" alt="" /></a>
+  <p>Một bố trí có chức năng sắp xếp tổ chức các bố trí con của nó thành một hàng ngang hoặc thẳng đứng. Nó
+  sẽ tạo một thanh cuộn nếu chiều dài của cửa sổ vượt quá chiều dài của màn hình.</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/relative.html">Bố trí Tương đối</a></h4>
+  <a href="layout/relative.html"><img src="{@docRoot}images/ui/relativelayout-small.png" alt="" /></a>
+  <p>Cho phép bạn chỉ định vị trí của các đối tượng con so với nhau (đối tượng con A về phía
+bên trái của đối tượng con B) hoặc so với đối tượng mẹ (được căn theo bên trên đối tượng mẹ).</p>
+</div>
+
+<div class="layout">
+  <h4><a href="{@docRoot}guide/webapps/webview.html">Dạng xem Web</a></h4>
+  <a href="{@docRoot}guide/webapps/webview.html"><img src="{@docRoot}images/ui/webview-small.png" alt="" /></a>
+  <p>Hiển thị trang web.</p>
+</div>
+
+
+
+
+<h2 id="AdapterViews" style="clear:left">Xây dựng Bố trí bằng một Trình điều hợp</h2>
+
+<p>Khi nội dung cho bố trí của bạn động hoặc chưa được xác định trước, bạn có thể sử dụng một bố trí có chức năng
+tạo lớp con {@link android.widget.AdapterView} để đưa vào bố trí có dạng xem vào thời gian chạy. Một
+lớp con của lớp {@link android.widget.AdapterView} sẽ sử dụng một {@link android.widget.Adapter} để
+gắn kết dữ liệu với bố trí của nó. {@link android.widget.Adapter} đóng vai trò trung gian giữa nguồn
+dữ liệu và bố trí {@link android.widget.AdapterView} &mdash;{@link android.widget.Adapter}
+sẽ truy xuất dữ liệu (từ một nguồn chẳng hạn như một mảng hoặc truy vấn cơ sở dữ liệu) và chuyển từng mục nhập
+thành một dạng xem có thể thêm vào bố trí {@link android.widget.AdapterView}.</p>
+
+<p>Các bố trí phổ biến được hỗ trợ bởi trình điều hợp bao gồm:</p>
+
+<div class="layout first">
+  <h4><a href="layout/listview.html">Dạng xem Danh sách</a></h4>
+  <a href="layout/listview.html"><img src="{@docRoot}images/ui/listview-small.png" alt="" /></a>
+  <p>Hiển thị một danh sách cột cuộn đơn.</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/gridview.html">Dạng xem Lưới</a></h4>
+  <a href="layout/gridview.html"><img src="{@docRoot}images/ui/gridview-small.png" alt="" /></a>
+  <p>Hiển thị một lưới cuộn gồm nhiều hàng và cột.</p>
+</div>
+
+
+
+<h3 id="FillingTheLayout" style="clear:left">Điền dữ liệu vào một dạng xem trình điều hợp</h3>
+
+<p>Bạn có thể đưa vào một {@link android.widget.AdapterView} chẳng hạn như {@link android.widget.ListView} hoặc
+{@link android.widget.GridView} bằng cách gắn kết thực thể {@link android.widget.AdapterView} với một
+{@link android.widget.Adapter}, nó truy xuất dữ liệu từ một nguồn bên ngoài và tạo một {@link
+android.view.View} để biểu diễn từng mục nhập dữ liệu.</p>
+
+<p>Android cung cấp một vài lớp con của {@link android.widget.Adapter} rất hữu ích cho việc
+truy xuất các kiểu dữ liệu khác nhau và xây dựng dạng xem cho một {@link android.widget.AdapterView}. Hai
+trình điều hợp phổ biến nhất là:</p>
+
+<dl>
+  <dt>{@link android.widget.ArrayAdapter}</dt>
+    <dd>Sử dụng trình điều hợp này khi nguồn dữ liệu của bạn là một mảng. Theo mặc định, {@link
+android.widget.ArrayAdapter} tạo một dạng xem cho mỗi mục mảng bằng cách gọi {@link
+java.lang.Object#toString()} trên từng mục và đặt nội dung trong một {@link
+android.widget.TextView}.
+      <p>Ví dụ, nếu bạn có một mảng xâu mà bạn muốn hiển thị trong một {@link
+android.widget.ListView}, hãy khởi tạo một {@link android.widget.ArrayAdapter} mới bằng cách sử dụng
+hàm dựng để chỉ định bố trí cho từng xâu và mảng xâu:</p>
+<pre>
+ArrayAdapter&lt;String> adapter = new ArrayAdapter&lt;String>(this,
+        android.R.layout.simple_list_item_1, myStringArray);
+</pre>
+<p>Các tham đối cho hàm dựng này là:</p>
+<ul>
+  <li>Ứng dụng của bạn {@link android.content.Context}</li>
+  <li>Bố trí chứa một {@link android.widget.TextView} cho mỗi xâu trong mảng</li>
+  <li>Mảng xâu</li>
+</ul>
+<p>Sau đó chỉ cần gọi
+{@link android.widget.ListView#setAdapter setAdapter()} trên {@link android.widget.ListView} của bạn:</p>
+<pre>
+ListView listView = (ListView) findViewById(R.id.listview);
+listView.setAdapter(adapter);
+</pre>
+
+      <p>Để tùy chỉnh diện mạo của từng mục, bạn có thể khống chế phương pháp {@link
+java.lang.Object#toString()} cho các đối tượng trong mảng của mình. Hoặc, để tạo một dạng xem cho từng
+mục không phải là một {@link android.widget.TextView} (ví dụ, nếu bạn muốn một
+{@link android.widget.ImageView} cho từng mục mảng), hãy mở rộng lớp {@link
+android.widget.ArrayAdapter} và khống chế {@link android.widget.ArrayAdapter#getView
+getView()} để trả về kiểu dạng xem mà bạn muốn cho từng mục.</p>
+
+</dd>
+
+  <dt>{@link android.widget.SimpleCursorAdapter}</dt>
+    <dd>Sử dụng trình điều hợp này khi dữ liệu của bạn đến từ một {@link android.database.Cursor}. Khi
+sử dụng {@link android.widget.SimpleCursorAdapter}, bạn phải chỉ định một bố trí để sử dụng cho từng
+hàng trong {@link android.database.Cursor} và những cột nào trong {@link android.database.Cursor}
+nên được chèn vào dạng xem nào của bố trí. Ví dụ, nếu bạn muốn tạo một danh sách
+tên người và số điện thoại, bạn có thể thực hiện một truy vấn mà trả về một {@link
+android.database.Cursor} chứa một hàng cho từng người và nhiều cột cho các tên và
+số điện thoại. Sau đó, bạn tạo một mảng xâu chỉ định những cột nào từ {@link
+android.database.Cursor} mà bạn muốn trong bố trí cho từng kết quả và một mảng số nguyên chỉ định các
+dạng xem tương ứng mà từng cột sẽ được đặt vào:</p>
+<pre>
+String[] fromColumns = {ContactsContract.Data.DISPLAY_NAME,
+                        ContactsContract.CommonDataKinds.Phone.NUMBER};
+int[] toViews = {R.id.display_name, R.id.phone_number};
+</pre>
+<p>Khi bạn khởi tạo {@link android.widget.SimpleCursorAdapter}, hãy chuyển bố trí cần sử dụng cho
+từng kết quả, {@link android.database.Cursor} chứa các kết quả, và hai mảng sau:</p>
+<pre>
+SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
+        R.layout.person_name_and_number, cursor, fromColumns, toViews, 0);
+ListView listView = getListView();
+listView.setAdapter(adapter);
+</pre>
+<p>Sau đó, {@link android.widget.SimpleCursorAdapter} tạo một dạng xem cho từng hàng trong
+{@link android.database.Cursor} sử dụng bố trí được cung cấp bằng cách chèn từng mục {@code
+fromColumns} vào dạng xem {@code toViews} tương ứng.</p>.</dd>
+</dl>
+
+
+<p>Trong vòng đời ứng dụng của bạn, nếu bạn thay đổi dữ liệu liên quan được đọc bởi
+trình điều hợp của mình, bạn nên gọi {@link android.widget.ArrayAdapter#notifyDataSetChanged()}. Nó sẽ
+thông báo với dạng xem đính kèm rằng dữ liệu đã được thay đổi và dạng xem nên tự làm mới.</p>
+
+
+
+<h3 id="HandlingUserSelections">Xử lý sự kiện nhấp</h3>
+
+<p>Bạn có thể phản hồi các sự kiện nhấp trên từng mục trong một {@link android.widget.AdapterView} bằng cách
+triển khai giao diện {@link android.widget.AdapterView.OnItemClickListener}. Ví dụ:</p>
+
+<pre>
+// Create a message handling object as an anonymous class.
+private OnItemClickListener mMessageClickedHandler = new OnItemClickListener() {
+    public void onItemClick(AdapterView parent, View v, int position, long id) {
+        // Do something in response to the click
+    }
+};
+
+listView.setOnItemClickListener(mMessageClickedHandler);
+</pre>
+
+
+
diff --git a/docs/html-intl/intl/vi/guide/topics/ui/dialogs.jd b/docs/html-intl/intl/vi/guide/topics/ui/dialogs.jd
new file mode 100644
index 0000000..1fa4550
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/ui/dialogs.jd
@@ -0,0 +1,798 @@
+page.title=Hộp thoại
+page.tags=alertdialog,dialogfragment
+
+@jd:body
+
+
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>Trong tài liệu này</h2>
+<ol>
+  <li><a href="#DialogFragment">Tạo một Phân đoạn Hộp thoại</a></li>
+  <li><a href="#AlertDialog">Xây dựng một Hộp thoại Cảnh báo</a>
+    <ol>
+      <li><a href="#AddingButtons">Thêm nút</a></li>
+      <li><a href="#AddingAList">Thêm một danh sách</a></li>
+      <li><a href="#CustomLayout">Tạo một Bố trí Tùy chỉnh</a></li>
+    </ol>
+  </li>
+  <li><a href="#PassingEvents">Chuyển Sự kiện lại Máy chủ của Hộp thoại</a></li>
+  <li><a href="#ShowingADialog">Hiển thị một Hộp thoại</a></li>
+  <li><a href="#FullscreenDialog">Hiển thị một Hộp thoại Toàn màn hình hoặc dạng một Phân đoạn Nhúng</a>
+    <ol>
+      <li><a href="#ActivityAsDialog">Hiển thị một hoạt động dưới dạng một hộp thoại trên màn hình lớn</a></li>
+    </ol>
+  </li>
+  <li><a href="#DismissingADialog">Bỏ một Hộp thoại</a></li>
+</ol>
+
+    <h2>Lớp khóa</h2>
+    <ol>
+      <li>{@link android.app.DialogFragment}</li>
+      <li>{@link android.app.AlertDialog}</li>
+    </ol>
+    
+    <h2>Xem thêm</h2>
+    <ol>
+      <li><a href="{@docRoot}design/building-blocks/dialogs.html">Hướng dẫn thiết kế hộp thoại</a></li>
+      <li><a href="{@docRoot}guide/topics/ui/controls/pickers.html">Bộ chọn</a> (Hộp thoại Ngày/Giờ)</li>
+    </ol>
+  </div>
+</div>
+
+<p>Hộp thoại là một cửa sổ nhỏ có chức năng nhắc người dùng
+đưa ra một quyết định hoặc nhập thông tin bổ sung. Hộp thoại không lấp kín màn hình và
+thường được sử dụng cho các sự kiện mô thái yêu cầu người dùng phải thực hiện một hành động trước khi có thể đi tiếp.</p>
+
+<div class="note design">
+<p><strong>Thiết kế Hộp thoại</strong></p>
+  <p>Để biết thông tin về cách thiết kế hộp thoại của bạn, bao gồm các đề xuất
+  về ngôn ngữ, hãy đọc hướng dẫn thiết kế <a href="{@docRoot}design/building-blocks/dialogs.html">Hộp thoại</a>.</p>
+</div>
+
+<img src="{@docRoot}images/ui/dialogs.png" />
+
+<p>Lớp {@link android.app.Dialog} là lớp cơ sở cho hộp thoại, nhưng bạn
+nên tránh khởi tạo {@link android.app.Dialog} một cách trực tiếp.
+Thay vào đó, hãy sử dụng một trong các lớp con sau:</p>
+<dl>
+  <dt>{@link android.app.AlertDialog}</dt>
+  <dd>Hộp thoại có thể hiển thị một tiêu đề, tối đa ba nút, một danh sách
+    các mục có thể chọn, hoặc một bố trí tùy chỉnh.</dd>
+  <dt>{@link android.app.DatePickerDialog} hoặc {@link android.app.TimePickerDialog}</dt>
+  <dd>Hộp thoại với một UI được xác định trước, cho phép người dùng chọn ngày hoặc giờ.</dd>
+</dl>
+
+<div class="sidebox">
+<h2>Tránh ProgressDialog</h2>
+<p>Android có một lớp hộp thoại khác gọi là
+{@link android.app.ProgressDialog}, nó hiển thị một hộp thoại với một thanh tiến độ. Tuy nhiên, nếu bạn
+cần chỉ báo tiến độ tải hoặc chưa xác định, thay vào đó, bạn nên tuân theo hướng dẫn
+thiết kế dành cho <a href="{@docRoot}design/building-blocks/progress.html">Tiến độ &amp;
+Hoạt động</a> và sử dụng một {@link android.widget.ProgressBar} trong bố trí của mình.</p>
+</div>
+
+<p>Những lớp này định nghĩa kiểu và cấu trúc cho hộp thoại của bạn, nhưng bạn nên
+sử dụng một {@link android.support.v4.app.DialogFragment} làm bộ chứa cho hộp thoại của mình.
+Lớp {@link android.support.v4.app.DialogFragment} sẽ cung cấp tất cả điều khiển mà
+bạn cần để tạo hộp thoại của mình và quản lý diện mạo của hộp thoại, thay vì gọi ra các phương pháp
+trên đối tượng {@link android.app.Dialog}.</p>
+
+<p>Việc sử dụng {@link android.support.v4.app.DialogFragment} để quản lý hộp thoại
+sẽ đảm bảo rằng nó xử lý đúng các sự kiện vòng đời
+chẳng hạn như khi người dùng nhấn nút <em>Quay lại</em> hoặc xoay màn hình. Lớp {@link
+android.support.v4.app.DialogFragment} cũng cho phép bạn sử dụng lại UI của hộp thoại như một
+thành phần có thể nhúng trong một UI rộng hơn, giống như một {@link
+android.support.v4.app.Fragment} truyền thống (chẳng hạn như khi bạn muốn UI hộp thoại xuất hiện khác đi
+trên các màn hình lớn và nhỏ).</p>
+
+<p>Các phần sau trong hướng dẫn này mô tả cách sử dụng {@link
+android.support.v4.app.DialogFragment} kết hợp với một đối tượng {@link android.app.AlertDialog}
+. Nếu muốn tạo một bộ chọn ngày hoặc giờ, thay vào đó, bạn nên đọc hướng dẫn
+<a href="{@docRoot}guide/topics/ui/controls/pickers.html">Bộ chọn</a>.</p>
+
+<p class="note"><strong>Lưu ý:</strong>
+Vì lớp {@link android.app.DialogFragment} ban đầu được bổ sung cùng với
+Android 3.0 (API mức 11), tài liệu này mô tả cách sử dụng lớp {@link
+android.support.v4.app.DialogFragment} được cung cấp kèm <a href="{@docRoot}tools/support-library/index.html">Thư viện Hỗ trợ</a>. Bằng cách thêm thư viện này
+vào ứng dụng của mình, bạn có thể sử dụng {@link android.support.v4.app.DialogFragment} và nhiều loại
+API khác trên các thiết bị chạy Android 1.6 hoặc cao hơn. Nếu phiên bản tối thiểu mà ứng dụng của bạn hỗ trợ
+là API mức 11 hoặc cao hơn, khi đó bạn có thể sử dụng phiên bản khuôn khổ của {@link
+android.app.DialogFragment}, nhưng hãy chú ý rằng các liên kết trong tài liệu này dành cho các API
+thư viện hỗ  trợ. Khi sử dụng thư viện hỗ trợ,
+hãy nhớ rằng bạn nhập lớp <code>android.support.v4.app.DialogFragment</code>
+chứ <em>không phải</em> <code>android.app.DialogFragment</code>.</p>
+
+
+<h2 id="DialogFragment">Tạo một Phân đoạn Hộp thoại</h2>
+
+<p>Bạn có thể hoàn thành nhiều loại thiết kế hộp thoại&mdash;bao gồm
+bố trí tùy chỉnh và những bố trí được mô tả trong hướng dẫn thiết kế <a href="{@docRoot}design/building-blocks/dialogs.html">Hộp thoại</a>
+&mdash;bằng cách mở rộng
+{@link android.support.v4.app.DialogFragment} và tạo một {@link android.app.AlertDialog}
+trong phương pháp gọi lại {@link android.support.v4.app.DialogFragment#onCreateDialog
+onCreateDialog()}.</p>
+
+<p>Ví dụ, sau đây là một {@link android.app.AlertDialog} cơ bản được quản lý bên trong
+một {@link android.support.v4.app.DialogFragment}:</p>
+
+<pre>
+public class FireMissilesDialogFragment extends DialogFragment {
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Use the Builder class for convenient dialog construction
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // FIRE ZE MISSILES!
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // User cancelled the dialog
+                   }
+               });
+        // Create the AlertDialog object and return it
+        return builder.create();
+    }
+}
+</pre>
+
+<div class="figure" style="width:290px;margin:0 0 0 20px">
+<img src="{@docRoot}images/ui/dialog_buttons.png" alt="" />
+<p class="img-caption"><strong>Hình 1.</strong>
+Hộp thoại với một thông báo và hai nút hành động.</p>
+</div>
+
+<p>Lúc này, khi bạn tạo một thực thể thuộc lớp này và gọi {@link
+android.support.v4.app.DialogFragment#show show()} trên đối tượng đó, hộp thoại sẽ xuất hiện
+như minh họa trong hình 1.</p>
+
+<p>Phần tiếp theo mô tả thêm về việc sử dụng các API {@link android.app.AlertDialog.Builder}
+để tạo hộp thoại.</p>
+
+<p>Tùy vào độ phức tạp của hộp thoại của bạn, bạn có thể triển khai nhiều loại phương pháp gọi lại khác
+trong {@link android.support.v4.app.DialogFragment}, bao gồm tất cả
+<a href="{@docRoot}guide/components/fragments.html#Lifecycle">phương pháp vòng đời phân đoạn</a> cơ bản.
+
+
+
+
+
+<h2 id="AlertDialog">Xây dựng một Hộp thoại Cảnh báo</h2>
+
+
+<p>Lớp {@link android.app.AlertDialog} cho phép bạn xây dựng nhiều loại thiết kế hộp thoại và
+thường là lớp hộp thoại duy nhất mà bạn sẽ cần.
+Như được minh họa trong hình 2, có ba vùng trên một hộp thoại cảnh báo:</p>
+
+<div class="figure" style="width:311px;margin-top:0">
+<img src="{@docRoot}images/ui/dialogs_regions.png" alt="" style="margin-bottom:0" />
+<p class="img-caption"><strong>Hình 2.</strong> Bố trí của một hộp thoại.</p>
+</div>
+
+<ol>
+<li><b>Tiêu đề</b>
+  <p>Tiêu đề không bắt buộc và chỉ nên được sử dụng khi vùng nội dung
+  bị chiếm bởi một thông báo chi tiết, một danh sách, hay một bố trí tùy chỉnh. Nếu bạn cần nêu
+  một thông báo hoặc câu hỏi đơn giản (chẳng hạn như hộp thoại trong hình 1), bạn không cần tiêu đề.</li>
+<li><b>Vùng nội dung</b>
+  <p>Vùng này có thể hiển thị một thông báo, danh sách, hay bố trí tùy chỉnh khác.</p></li>
+<li><b>Nút hành động</b>
+  <p>Sẽ không có quá ba nút hành động trong một hộp thoại.</p></li>
+</ol>
+
+<p>Lớp {@link android.app.AlertDialog.Builder}
+cung cấp các API cho phép bạn tạo một {@link android.app.AlertDialog}
+với những kiểu nội dung này, bao gồm một bố trí tùy chỉnh.</p>
+
+<p>Để xây dựng một {@link android.app.AlertDialog}:</p>
+
+<pre>
+<b>// 1. Instantiate an {@link android.app.AlertDialog.Builder} with its constructor</b>
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+
+<b>// 2. Chain together various setter methods to set the dialog characteristics</b>
+builder.setMessage(R.string.dialog_message)
+       .setTitle(R.string.dialog_title);
+
+<b>// 3. Get the {@link android.app.AlertDialog} from {@link android.app.AlertDialog.Builder#create()}</b>
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>Các chủ đề sau cho biết cách định nghĩa các thuộc tính hộp thoại khác nhau bằng cách
+sử dụng lớp {@link android.app.AlertDialog.Builder}.</p>
+
+
+
+
+<h3 id="AddingButtons">Thêm nút</h3>
+
+<p>Để thêm các nút hành động như trong hình 2,
+hãy gọi các phương pháp {@link android.app.AlertDialog.Builder#setPositiveButton setPositiveButton()} và
+{@link android.app.AlertDialog.Builder#setNegativeButton setNegativeButton()}:</p>
+
+<pre style="clear:right">
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+// Add the buttons
+builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User clicked OK button
+           }
+       });
+builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User cancelled the dialog
+           }
+       });
+// Set other dialog properties
+...
+
+// Create the AlertDialog
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>Các phương pháp <code>set...Button()</code> yêu cầu một tiêu đề cho nút (được cung cấp
+bởi một <a href="{@docRoot}guide/topics/resources/string-resource.html">tài nguyên xâu</a>) và một 
+{@link android.content.DialogInterface.OnClickListener} có chức năng định nghĩa hành động sẽ tiến hành 
+khi người dùng nhấn nút.</p>
+
+<p>Có ba nút hành động khác nhau mà bạn có thể thêm:</p>
+<dl>
+  <dt>Tích cực</dt>
+  <dd>Bạn nên sử dụng nút này để chấp nhận và tiếp tục với hành động (hành động "OK").</dd>
+  <dt>Tiêu cực</dt>
+  <dd>Bạn nên sử dụng nút này để hủy bỏ hành động.</dd>
+  <dt>Trung lập</dt>
+  <dd>Bạn nên sử dụng nút này khi người dùng có thể không muốn tiếp tục với hành động,
+  nhưng không hẳn muốn hủy bỏ. Nó nằm ở giữa nút
+  tích cực và tiêu cực. Ví dụ, hành động có thể là "Nhắc tôi sau."</dd> 
+</dl>
+
+<p>Bạn chỉ có thể thêm một nút mỗi loại vào một {@link
+android.app.AlertDialog}. Nghĩa là, bạn không thể có nhiều hơn một nút "tích cực".</p>
+
+
+
+<div class="figure" style="width:290px;margin:0 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_list.png" alt="" />
+<p class="img-caption"><strong>Hình 3.</strong>
+Hộp thoại có tiêu đề và danh sách.</p>
+</div>
+
+<h3 id="AddingAList">Thêm một danh sách</h3>
+
+<p>Có ba loại danh sách có sẵn với các API {@link android.app.AlertDialog}:</p>
+<ul>
+<li>Danh sách một lựa chọn truyền thống</li>
+<li>Danh sách một lựa chọn cố định (nút chọn một)</li>
+<li>Danh sách nhiều lựa chọn cố định (hộp kiểm)</li>
+</ul>
+
+<p>Để tạo danh sách một lựa chọn như danh sách trong hình 3, 
+hãy sử dụng phương pháp {@link android.app.AlertDialog.Builder#setItems setItems()}:</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    builder.setTitle(R.string.pick_color)
+           .setItems(R.array.colors_array, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int which) {
+               // The 'which' argument contains the index position
+               // of the selected item
+           }
+    });
+    return builder.create();
+}
+</pre>
+
+<p>Vì danh sách xuất hiện trong vùng nội dung của hộp thoại,
+hộp thoại không thể hiển thị cả thông báo và danh sách và bạn nên đặt một tiêu đề cho hộp thoại
+bằng {@link android.app.AlertDialog.Builder#setTitle setTitle()}. 
+Để chỉ định các mục cho danh sách, hãy gọi {@link
+android.app.AlertDialog.Builder#setItems setItems()}, chuyển một mảng.
+Hoặc, bạn có thể chỉ định một danh sách bằng cách sử dụng {@link
+android.app.AlertDialog.Builder#setAdapter setAdapter()}. Điều này cho phép bạn hỗ trợ danh sách
+bằng dữ liệu động (chẳng hạn như từ một cơ sở dữ liệu) bằng cách sử dụng {@link android.widget.ListAdapter}.</p>
+
+<p>Nếu bạn chọn hỗ trợ danh sách của mình bằng một {@link android.widget.ListAdapter},
+hãy luôn sử dụng {@link android.support.v4.content.Loader} sao cho nội dung tải
+không đồng bộ. Điều này được mô tả thêm trong hướng dẫn
+<a href="{@docRoot}guide/topics/ui/declaring-layout.html#AdapterViews">Xây dựng Bố trí
+bằng một Trình điều hợp</a> và <a href="{@docRoot}guide/components/loaders.html">Trình tải</a>
+.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Theo mặc định, chạm vào một mục danh sách sẽ bỏ hộp thoại,
+trừ khi bạn đang sử dụng một trong các danh sách lựa chọn cố định sau.</p>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_checkboxes.png" />
+<p class="img-caption"><strong>Hình 4.</strong>
+Danh sách nhiều mục lựa chọn.</p>
+</div>
+
+
+<h4 id="Checkboxes">Thêm một danh sách nhiều lựa chọn hoặc một lựa chọn cố định</h4>
+
+<p>Để thêm một danh sách nhiều lựa chọn (hộp kiểm) hoặc 
+một lựa chọn (nút chọn một), hãy sử dụng các phương pháp
+{@link android.app.AlertDialog.Builder#setMultiChoiceItems(Cursor,String,String,
+DialogInterface.OnMultiChoiceClickListener) setMultiChoiceItems()} hoặc 
+{@link android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()} tương ứng.</p>
+
+<p>Ví dụ, sau đây là cách bạn có thể tạo một danh sách nhiều lựa chọn như
+danh sách được minh họa trong hình 4 giúp lưu các mục
+được chọn trong một {@link java.util.ArrayList}:</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    mSelectedItems = new ArrayList();  // Where we track the selected items
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Set the dialog title
+    builder.setTitle(R.string.pick_toppings)
+    // Specify the list array, the items to be selected by default (null for none),
+    // and the listener through which to receive callbacks when items are selected
+           .setMultiChoiceItems(R.array.toppings, null,
+                      new DialogInterface.OnMultiChoiceClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int which,
+                       boolean isChecked) {
+                   if (isChecked) {
+                       // If the user checked the item, add it to the selected items
+                       mSelectedItems.add(which);
+                   } else if (mSelectedItems.contains(which)) {
+                       // Else, if the item is already in the array, remove it 
+                       mSelectedItems.remove(Integer.valueOf(which));
+                   }
+               }
+           })
+    // Set the action buttons
+           .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // User clicked OK, so save the mSelectedItems results somewhere
+                   // or return them to the component that opened the dialog
+                   ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   ...
+               }
+           });
+
+    return builder.create();
+}
+</pre>
+
+<p>Mặc dù cả danh sách truyền thống và danh sách có nút chọn một
+đều cung cấp hành động "một lựa chọn", bạn nên sử dụng {@link
+android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()} nếu bạn muốn cố định lựa chọn của người dùng.
+Cụ thể, nếu việc mở hộp thoại lại sau này báo hiệu lựa chọn hiện tại của người dùng, khi đó
+bạn hãy tạo một danh sách với các nút chọn một.</p>
+
+
+
+
+
+<h3 id="CustomLayout">Tạo một Bố trí Tùy chỉnh</h3>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_custom.png" alt="" />
+<p class="img-caption"><strong>Hình 5.</strong> Một bố trí hộp thoại tùy chỉnh.</p>
+</div>
+
+<p>Nếu bạn muốn một bố trí tùy chỉnh trong một hộp thoại, hãy tạo một bố trí và thêm nó vào một
+{@link android.app.AlertDialog} bằng cách gọi {@link
+android.app.AlertDialog.Builder#setView setView()} trên đối tượng {@link
+android.app.AlertDialog.Builder} của bạn.</p>
+
+<p>Theo mặc định, bố trí tùy chỉnh sẽ lấp đầy cửa sổ hộp thoại, nhưng bạn vẫn có thể
+sử dụng các phương pháp {@link android.app.AlertDialog.Builder} để thêm nút và tiêu đề.</p>
+
+<p>Ví dụ, sau đây là tệp bố trí cho hộp thoại trong Hình 5:</p>
+
+<p style="clear:right" class="code-caption">res/layout/dialog_signin.xml</p>
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content">
+    &lt;ImageView
+        android:src="@drawable/header_logo"
+        android:layout_width="match_parent"
+        android:layout_height="64dp"
+        android:scaleType="center"
+        android:background="#FFFFBB33"
+        android:contentDescription="@string/app_name" />
+    &lt;EditText
+        android:id="@+id/username"
+        android:inputType="textEmailAddress"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="16dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="4dp"
+        android:hint="@string/username" />
+    &lt;EditText
+        android:id="@+id/password"
+        android:inputType="textPassword"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="4dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="16dp"
+        android:fontFamily="sans-serif"
+        android:hint="@string/password"/>
+&lt;/LinearLayout>
+</pre>
+
+<p class="note"><strong>Mẹo:</strong> Theo mặc định, khi bạn đặt một phần tử {@link android.widget.EditText}
+để sử dụng kiểu đầu vào {@code "textPassword"}, họ phông được đặt thành đơn cách, vì thế
+bạn nên đổi họ phông thành {@code "sans-serif"} sao cho cả hai trường văn bản đều sử dụng
+một kiểu phông thống nhất.</p>
+
+<p>Để bung bố trí ra trong {@link android.support.v4.app.DialogFragment} của bạn,
+hãy lấy một {@link android.view.LayoutInflater} với 
+{@link android.app.Activity#getLayoutInflater()} và gọi
+{@link android.view.LayoutInflater#inflate inflate()}, trong đó tham số đầu tiên
+là ID tài nguyên bố trí và tham số thứ hai là một dạng xem mẹ cho bố trí.
+Khi đó, bạn có thể gọi {@link android.app.AlertDialog#setView setView()}
+để đặt bố trí vào một hộp thoại.</p>
+
+<pre>
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Get the layout inflater
+    LayoutInflater inflater = getActivity().getLayoutInflater();
+
+    // Inflate and set the layout for the dialog
+    // Pass null as the parent view because its going in the dialog layout
+    builder.setView(inflater.inflate(R.layout.dialog_signin, null))
+    // Add action buttons
+           .setPositiveButton(R.string.signin, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // sign in the user ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int id) {
+                   LoginDialogFragment.this.getDialog().cancel();
+               }
+           });      
+    return builder.create();
+}
+</pre>
+
+<div class="note">
+<p><strong>Mẹo:</strong> Nếu bạn muốn một hộp thoại tùy chỉnh,
+thay vào đó, bạn có thể hiển thị {@link android.app.Activity} như là một hộp thoại
+thay vì sử dụng các API {@link android.app.Dialog}. Chỉ cần tạo một hoạt động và đặt chủ đề của nó thành
+{@link android.R.style#Theme_Holo_Dialog Theme.Holo.Dialog}
+trong phần tử bản kê khai <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>:</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.Dialog" >
+</pre>
+<p>Vậy là xong. Lúc này, hoạt động sẽ hiển thị một cửa sổ hộp thoại thay vì toàn màn hình.</p>
+</div>
+
+
+
+<h2 id="PassingEvents">Chuyển Sự kiện lại Máy chủ của Hộp thoại</h2>
+
+<p>Khi người dùng chạm vào một trong các nút hành động của hộp thoại hoặc chọn một mục từ danh sách của hộp thoại,
+{@link android.support.v4.app.DialogFragment} của bạn có thể tự thực hiện hành động
+cần thiết, nhưng thường thì bạn sẽ muốn chuyển sự kiện tới hoạt động hoặc phân đoạn
+đã mở hộp thoại. Để làm điều này, hãy định nghĩa một giao diện bằng một phương pháp cho mỗi loại sự kiện nhấp.
+Sau đó, triển khai giao diện đó trong thành phần chủ mà sẽ
+nhận sự kiện hành động từ hộp thoại.</p>
+
+<p>Ví dụ, sau đây là một {@link android.support.v4.app.DialogFragment} có chức năng định nghĩa một
+giao diện mà thông qua đó, nó sẽ chuyển các sự kiện lại cho hoạt động chủ:</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    
+    /* The activity that creates an instance of this dialog fragment must
+     * implement this interface in order to receive event callbacks.
+     * Each method passes the DialogFragment in case the host needs to query it. */
+    public interface NoticeDialogListener {
+        public void onDialogPositiveClick(DialogFragment dialog);
+        public void onDialogNegativeClick(DialogFragment dialog);
+    }
+    
+    // Use this instance of the interface to deliver action events
+    NoticeDialogListener mListener;
+    
+    // Override the Fragment.onAttach() method to instantiate the NoticeDialogListener
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        // Verify that the host activity implements the callback interface
+        try {
+            // Instantiate the NoticeDialogListener so we can send events to the host
+            mListener = (NoticeDialogListener) activity;
+        } catch (ClassCastException e) {
+            // The activity doesn't implement the interface, throw exception
+            throw new ClassCastException(activity.toString()
+                    + " must implement NoticeDialogListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>Hoạt động lưu giữ hộp thoại sẽ tạo một thực thể của hộp thoại
+bằng hàm dựng của phân đoạn hộp thoại và nhận sự kiện
+của hộp thoại thông qua triển khai giao diện {@code NoticeDialogListener}:</p>
+
+<pre>
+public class MainActivity extends FragmentActivity
+                          implements NoticeDialogFragment.NoticeDialogListener{
+    ...
+    
+    public void showNoticeDialog() {
+        // Create an instance of the dialog fragment and show it
+        DialogFragment dialog = new NoticeDialogFragment();
+        dialog.show(getSupportFragmentManager(), "NoticeDialogFragment");
+    }
+
+    // The dialog fragment receives a reference to this Activity through the
+    // Fragment.onAttach() callback, which it uses to call the following methods
+    // defined by the NoticeDialogFragment.NoticeDialogListener interface
+    &#64;Override
+    public void onDialogPositiveClick(DialogFragment dialog) {
+        // User touched the dialog's positive button
+        ...
+    }
+
+    &#64;Override
+    public void onDialogNegativeClick(DialogFragment dialog) {
+        // User touched the dialog's negative button
+        ...
+    }
+}
+</pre>
+
+<p>Vì hoạt động chủ sẽ triển khai {@code NoticeDialogListener}&mdash;, được
+thực thi bởi phương pháp gọi lại {@link android.support.v4.app.Fragment#onAttach onAttach()}
+minh họa bên trên,&mdash;phân đoạn hộp thoại có thể sử dụng các phương pháp gọi lại
+giao diện để chuyển các sự kiện nhấp cho hoạt động:</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    ...
+
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Build the dialog and set up the button click handlers
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the positive button event back to the host activity
+                       mListener.onDialogPositiveClick(NoticeDialogFragment.this);
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the negative button event back to the host activity
+                       mListener.onDialogNegativeClick(NoticeDialogFragment.this);
+                   }
+               });
+        return builder.create();
+    }
+}
+</pre>
+
+
+
+<h2 id="ShowingADialog">Hiển thị một Hộp thoại</h2>
+
+<p>Khi bạn muốn hiển thị hộp thoại của mình, hãy tạo một thực thể {@link
+android.support.v4.app.DialogFragment} của bạn và gọi {@link android.support.v4.app.DialogFragment#show
+show()}, chuyển {@link android.support.v4.app.FragmentManager} và một tên tag
+cho phân đoạn hộp thoại.</p>
+
+<p>Bạn có thể nhận được {@link android.support.v4.app.FragmentManager} bằng cách gọi
+{@link android.support.v4.app.FragmentActivity#getSupportFragmentManager()} từ
+{@link android.support.v4.app.FragmentActivity} hoặc {@link
+android.support.v4.app.Fragment#getFragmentManager()} từ một {@link
+android.support.v4.app.Fragment}. Ví dụ:</p>
+
+<pre>
+public void confirmFireMissiles() {
+    DialogFragment newFragment = new FireMissilesDialogFragment();
+    newFragment.show(getSupportFragmentManager(), "missiles");
+}
+</pre>
+
+<p>Tham đối thứ hai, {@code "missiles"}, là một tên tag duy nhất mà hệ thống sử dụng để lưu
+và khôi phục trạng thái của phân đoạn khi cần thiết. Tag cũng cho phép bạn nhận một điều khiển (handle) cho
+phân đoạn bằng cách gọi {@link android.support.v4.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}.</p>
+
+
+
+
+<h2 id="FullscreenDialog">Hiển thị một Hộp thoại Toàn màn hình hoặc dạng một Phân đoạn Nhúng</h2>
+
+<p>Bạn có thể có một thiết kế UI mà trong đó bạn muốn một phần UI xuất hiện như một hộp thoại trong một số
+tình huống, nhưng ở dưới dạng toàn màn hình hoặc phân đoạn nhúng trong trường hợp khác (có thể phụ thuộc
+vào thiết bị là màn hình lớn hay nhỏ). Lớp {@link android.support.v4.app.DialogFragment}
+cung cấp cho bạn sự linh hoạt này vì nó vẫn có thể đóng vai trò như một {@link
+android.support.v4.app.Fragment} nhúng được.</p>
+
+<p>Tuy nhiên, bạn không thể sử dụng {@link android.app.AlertDialog.Builder AlertDialog.Builder}
+hay các đối tượng {@link android.app.Dialog} khác để xây dựng hộp thoại trong trường hợp này. Nếu
+bạn muốn {@link android.support.v4.app.DialogFragment} có thể
+nhúng được, bạn phải định nghĩa UI của hộp thoại trong một bố trí, rồi tải bố trí đó trong lệnh gọi lại
+{@link android.support.v4.app.DialogFragment#onCreateView
+onCreateView()}.</p>
+
+<p>Sau đây là một ví dụ {@link android.support.v4.app.DialogFragment} có thể xuất hiện như một
+hộp thoại hoặc phân đoạn nhúng được (sử dụng một bố trí có tên gọi <code>purchase_items.xml</code>):</p>
+
+<pre>
+public class CustomDialogFragment extends DialogFragment {
+    /** The system calls this to get the DialogFragment's layout, regardless
+        of whether it's being displayed as a dialog or an embedded fragment. */
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        // Inflate the layout to use as dialog or embedded fragment
+        return inflater.inflate(R.layout.purchase_items, container, false);
+    }
+  
+    /** The system calls this only when creating the layout in a dialog. */
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // The only reason you might override this method when using onCreateView() is
+        // to modify any dialog characteristics. For example, the dialog includes a
+        // title by default, but your custom layout might not need it. So here you can
+        // remove the dialog title, but you must call the superclass to get the Dialog.
+        Dialog dialog = super.onCreateDialog(savedInstanceState);
+        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
+        return dialog;
+    }
+}
+</pre>
+
+<p>Và sau đây là một số mã quyết định xem hiển thị phân đoạn như một hộp thoại
+hay UI toàn màn hình, dựa vào kích cỡ màn hình:</p>
+
+<pre>
+public void showDialog() {
+    FragmentManager fragmentManager = getSupportFragmentManager();
+    CustomDialogFragment newFragment = new CustomDialogFragment();
+    
+    if (mIsLargeLayout) {
+        // The device is using a large layout, so show the fragment as a dialog
+        newFragment.show(fragmentManager, "dialog");
+    } else {
+        // The device is smaller, so show the fragment fullscreen
+        FragmentTransaction transaction = fragmentManager.beginTransaction();
+        // For a little polish, specify a transition animation
+        transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
+        // To make it fullscreen, use the 'content' root view as the container
+        // for the fragment, which is always the root view for the activity
+        transaction.add(android.R.id.content, newFragment)
+                   .addToBackStack(null).commit();
+    }
+}
+</pre>
+
+<p>Để biết thêm thông tin về việc thực hiện các giao tác phân đoạn, hãy xem hướng dẫn
+<a href="{@docRoot}guide/components/fragments.html">Phân đoạn</a>.</p>
+
+<p>Trong ví dụ này, boolean <code>mIsLargeLayout</code> chỉ định liệu thiết bị hiện tại
+có nên sử dụng thiết kế bố trí lớn của ứng dụng (và vì thế, nó hiển thị phân đoạn này như một hộp thoại thay vì
+toàn màn hình) hay không. Cách tốt nhất để đặt loại boolean này đó là khai báo một
+<a href="{@docRoot}guide/topics/resources/more-resources.html#Bool">giá trị tài nguyên bool</a>
+bằng một giá trị <a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">tài nguyên thay thế</a> cho các kích cỡ màn hình khác nhau. Ví dụ, sau đây là hai
+phiên bản của tài nguyên bool cho các kích cỡ màn hình khác nhau:</p>
+
+<p class="code-caption">res/values/bools.xml</p>
+<pre>
+&lt;!-- Default boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">false&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p class="code-caption">res/values-large/bools.xml</p>
+<pre>
+&lt;!-- Large screen boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">true&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p>Khi đó, bạn có thể khởi tạo giá trị {@code mIsLargeLayout} trong phương pháp
+{@link android.app.Activity#onCreate onCreate()} của hoạt động:</p>
+
+<pre>
+boolean mIsLargeLayout;
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_main);
+
+    mIsLargeLayout = getResources().getBoolean(R.bool.large_layout);
+}
+</pre>
+
+
+
+<h3 id="ActivityAsDialog">Hiển thị một hoạt động dưới dạng một hộp thoại trên màn hình lớn</h3>
+
+<p>Thay vì hiển thị một hộp thoại thành UI toàn màn hình trên các màn hình nhỏ, bạn có thể đạt được
+kết quả tương tự bằng cách hiển thị một {@link android.app.Activity} thành một hộp thoại trên
+màn hình lớn. Phương pháp mà bạn chọn phụ thuộc vào thiết kế ứng dụng của bạn, nhưng
+việc hiển thị một hoạt động thành một hộp thoại thường có ích khi ứng dụng của bạn đã được thiết kế cho màn hình
+nhỏ và bạn muốn cải thiện trải nghiệm trên máy tính bảng bằng cách hiển thị một hoạt động có vòng đời ngắn
+thành một hộp thoại.</p>
+
+<p>Để hiển thị một hoạt động thành một hộp thoại chỉ khi trên màn hình lớn,
+hãy áp dụng chủ đề {@link android.R.style#Theme_Holo_DialogWhenLarge Theme.Holo.DialogWhenLarge}
+cho phần tử bản kê khai <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>:</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.DialogWhenLarge" >
+</pre>
+
+<p>Để biết thêm thông tin về việc tạo kiểu cho các hoạt động của bạn bằng chủ đề, hãy xem hướng dẫn <a href="{@docRoot}guide/topics/ui/themes.html">Kiểu và Chủ đề</a>.</p>
+
+
+
+<h2 id="DismissingADialog">Bỏ một Hộp thoại</h2>
+
+<p>Khi người dùng chạm vào bất kỳ nút hành động nào được tạo bằng
+{@link android.app.AlertDialog.Builder}, hệ thống sẽ bỏ hộp thoại cho bạn.</p>
+
+<p>Hệ thống cũng bỏ hộp thoại khi người dùng chạm vào một mục trong một danh sách hộp thoại, trừ
+khi danh sách sử dụng nút chọn một hoặc hộp kiểm. Nếu không, bạn có thể bỏ thủ công hộp thoại của mình
+bằng cách gọi {@link android.support.v4.app.DialogFragment#dismiss()} trên {@link
+android.support.v4.app.DialogFragment} của bạn.</p>
+
+<p>Trong trường hợp bạn cần thực hiện các
+hành động nhất định khi hộp thoại biến mất, bạn có thể triển khai phương pháp {@link
+android.support.v4.app.DialogFragment#onDismiss onDismiss()} trong {@link
+android.support.v4.app.DialogFragment} của mình.</p>
+
+<p>Bạn cũng có thể <em>hủy bỏ</em> một hộp thoại. Đây là một sự kiện đặc biệt chỉ báo người dùng
+chủ ý rời khỏi hộp thoại mà không hoàn thành tác vụ. Điều này xảy ra nếu người dùng nhấn nút 
+<em>Quay lại</em>, chạm vào màn hình ngoài vùng hộp thoại,
+hoặc nếu bạn công khai gọi {@link android.app.Dialog#cancel()} trên {@link
+android.app.Dialog} (chẳng hạn như khi hồi đáp lại một nút "Hủy bỏ" trong hộp thoại).</p>
+
+<p>Như nêu trong ví dụ bên trên, bạn có thể hồi đáp lại sự kiện hủy bỏ này bằng cách triển khai
+{@link android.support.v4.app.DialogFragment#onCancel onCancel()} trong lớp {@link
+android.support.v4.app.DialogFragment} của mình.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Hệ thống sẽ gọi
+{@link android.support.v4.app.DialogFragment#onDismiss onDismiss()} trên mỗi sự kiện mà
+gọi ra lệnh gọi lại {@link android.support.v4.app.DialogFragment#onCancel onCancel()}. Tuy nhiên,
+nếu bạn gọi {@link android.app.Dialog#dismiss Dialog.dismiss()} hoặc {@link
+android.support.v4.app.DialogFragment#dismiss DialogFragment.dismiss()},
+hệ thống sẽ gọi {@link android.support.v4.app.DialogFragment#onDismiss onDismiss()} <em>chứ
+không phải</em> {@link android.support.v4.app.DialogFragment#onCancel onCancel()}. Vì thế, nhìn chung bạn nên
+gọi {@link android.support.v4.app.DialogFragment#dismiss dismiss()} khi người dùng nhấn nút
+<em>tích cực</em> trong hộp thoại của bạn để xóa hộp thoại khỏi dạng xem.</p>
+
+
diff --git a/docs/html-intl/intl/vi/guide/topics/ui/menus.jd b/docs/html-intl/intl/vi/guide/topics/ui/menus.jd
new file mode 100644
index 0000000..8e9e1c4
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/ui/menus.jd
@@ -0,0 +1,1031 @@
+page.title=Menu
+parent.title=Giao diện Người dùng
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Trong tài liệu này</h2>
+<ol>
+  <li><a href="#xml">Định nghĩa một Menu trong XML</a></li>
+  <li><a href="#options-menu">Tạo một Menu Tùy chọn</a>
+    <ol>
+      <li><a href="#RespondingOptionsMenu">Xử lý sự kiện nhấp</a></li>
+      <li><a href="#ChangingTheMenu">Thay đổi các mục menu vào thời gian chạy</a></li>
+    </ol>
+  </li>
+  <li><a href="#context-menu">Tạo một Menu Ngữ cảnh</a>
+    <ol>
+      <li><a href="#FloatingContextMenu">Tạo một menu ngữ cảnh nổi</a></li>
+      <li><a href="#CAB">Sử dụng chế độ hành động theo ngữ cảnh</a></li>
+    </ol>
+  </li>
+  <li><a href="#PopupMenu">Tạo một Menu Bật lên</a>
+    <ol>
+      <li><a href="#PopupEvents">Xử lý sự kiện nhấp</a></li>
+    </ol>
+  </li>
+  <li><a href="#groups">Tạo Nhóm Menu</a>
+    <ol>
+      <li><a href="#checkable">Sử dụng mục menu có thể chọn</a></li>
+    </ol>
+  </li>
+  <li><a href="#intents">Thêm Mục Menu dựa trên Ý định</a>
+    <ol>
+      <li><a href="#AllowingToAdd">Cho phép hoạt động của bạn được thêm vào các menu khác</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>Lớp khóa</h2>
+  <ol>
+    <li>{@link android.view.Menu}</li>
+    <li>{@link android.view.MenuItem}</li>
+    <li>{@link android.view.ContextMenu}</li>
+    <li>{@link android.view.ActionMode}</li>
+  </ol>
+
+  <h2>Xem thêm</h2>
+  <ol>
+    <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Thanh Hành động</a></li>
+    <li><a href="{@docRoot}guide/topics/resources/menu-resource.html">Tài nguyên Menu</a></li>
+    <li><a href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">Nói
+Tạm biệt với Nút Menu</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Menu là một thành phần giao diện người dùng phổ biến trong nhiều loại ứng dụng. Để cung cấp một
+trải nghiệm người dùng quen thuộc và nhất quán, bạn nên sử dụng các API {@link android.view.Menu} để trình bày
+hành động người dùng và các tùy chọn khác trong hoạt động của mình.</p>
+
+<p>Bắt đầu với Android 3.0 (API mức 11), các thiết bị dựa trên nền tảng Android không còn phải
+cung cấp một nút <em>Menu</em> chuyên dụng nữa. Với sự thay đổi này, các ứng dụng Android cần tránh khỏi
+sự phụ thuộc vào bảng điều khiển menu 6 mục truyền thống này mà thay vào đó cung cấp một thanh hành động để trình bày
+các hành động người dùng thông dụng.</p>
+
+<p>Mặc dù thiết kế và trải nghiệm người dùng đối với một số mục menu đã thay đổi, ngữ nghĩa để định nghĩa
+tập hợp hành động và tùy chọn thì vẫn dựa trên các API {@link android.view.Menu}. Hướng dẫn
+này trình bày cách tạo ba loại menu hay trình bày hành động cơ bản trên tất cả
+phiên bản Android:</p>
+
+<dl>
+  <dt><strong>Menu tùy chọn và thanh hành động</strong></dt>
+    <dd><a href="#options-menu">Menu tùy chọn</a> là tập hợp các mục menu cơ bản cho một
+hoạt động. Đó là nơi bạn nên đặt các hành động có tác động chung tới ứng dụng, chẳng hạn như
+"Tìm kiếm," "Soạn e-mail" và "Cài đặt."
+  <p>Nếu bạn đang phát triển cho phiên bản Android 2.3 hoặc thấp hơn, người dùng có thể
+hiện bảng điều khiển menu tùy chọn bằng cách nhấn nút <em>Menu</em>.</p>
+  <p>Trên phiên bản Android 3.0 trở lên, các mục từ menu tùy chọn được trình bày bởi <a href="{@docRoot}guide/topics/ui/actionbar.html">thanh hành động</a>, là sự kết hợp giữa các mục hành động
+trên màn hình và các tùy chọn tràn. Bắt đầu với phiên bản Android 3.0, nút <em>Menu</em> bị bỏ đi (một số
+thiết bị
+không có), vì thế bạn nên chuyển sang sử dụng thanh hành động để cho phép truy cập vào hành động và
+các tùy chọn khác.</p>
+  <p>Xem phần về <a href="#options-menu">Tạo một Menu Tùy chọn</a>.</p>
+    </dd>
+    
+  <dt><strong>Menu ngữ cảnh và chế độ hành động theo ngữ cảnh</strong></dt>
+  
+   <dd>Menu ngữ cảnh là một <a href="#FloatingContextMenu">menu nổi</a> xuất hiện khi
+người dùng thực hiện nhấp giữ trên một phần tử. Nó cung cấp các hành động ảnh hưởng tới nội dung hoặc
+khung ngữ cảnh được chọn.
+  <p>Khi phát triển cho phiên bản Android 3.0 trở lên, thay vào đó, bạn nên sử dụng <a href="#CAB">chế độ hành động theo ngữ cảnh</a> để kích hoạt các hành động trên nội dung được chọn. Chế độ này hiển thị
+các mục hành động ảnh hưởng tới nội dung được chọn trong một thanh ở trên cùng của màn hình và cho phép người dùng
+chọn nhiều mục.</p>
+  <p>Xem phần nói về <a href="#context-menu">Tạo Menu Ngữ cảnh</a>.</p>
+</dd>
+    
+  <dt><strong>Menu bật lên</strong></dt>
+    <dd>Menu bật lên sẽ hiển thị danh sách các mục trong một danh sách thẳng đứng được neo vào dạng xem
+đã gọi ra menu. Nên cung cấp một phần tràn gồm các hành động liên quan tới nội dung cụ thể hoặc
+nhằm cung cấp các tùy chọn cho phần thứ hai của một lệnh. Các hành động trong một menu bật lên
+<strong>không</strong> nên trực tiếp ảnh hưởng tới nội dung tương ứng&mdash;đó là việc của hành động ngữ cảnh
+. Thay vào đó, menu bật lên áp dụng cho các hành động mở rộng liên quan tới các vùng nội dung trong hoạt động
+của bạn.
+  <p>Xem phần về <a href="#PopupMenu">Tạo một Menu Bật lên</a>.</p>
+</dd>
+</dl>
+
+
+
+<h2 id="xml">Định nghĩa một Menu trong XML</h2>
+
+<p>Đối với tất cả các loại menu, Android cung cấp một định dạng XML chuẩn để định nghĩa các mục menu.
+Thay vì xây dựng một menu trong mã của hoạt động của bạn, bạn nên định nghĩa một menu và tất cả các mục của nó trong một
+<a href="{@docRoot}guide/topics/resources/menu-resource.html">tài nguyên menu</a> XML. Khi đó, bạn có thể
+bung tài nguyên menu (tải nó như một đối tượng {@link android.view.Menu}) trong hoạt động hoặc
+phân đoạn của mình.</p>
+
+<p>Sử dụng một tài nguyên menu là một cách làm hay vì một vài lý do:</p>
+<ul>
+  <li>Nó dễ trực quan hóa cấu trúc menu trong XML hơn.</li>
+  <li>Nó tách riêng nội dung cho menu với mã hành vi của ứng dụng của bạn.</li>
+  <li>Nó cho phép bạn tạo các cấu hình menu phái sinh cho các phiên bản nền tảng,
+kích cỡ màn hình khác nhau và các cấu hình khác bằng cách tận dụng khuôn khổ <a href="{@docRoot}guide/topics/resources/index.html">tài nguyên ứng dụng</a>.</li>
+</ul>
+
+<p>Để định nghĩa menu, hãy tạo một tệp XML bên trong thư mục <code>res/menu/</code>
+dự án của bạn và xây dựng menu với các phần tử sau:</p>
+<dl>
+  <dt><code>&lt;menu></code></dt>
+    <dd>Định nghĩa một {@link android.view.Menu}, đó là một bộ chứa các mục menu. Phần tử 
+<code>&lt;menu></code> phải là một nút gốc cho tệp và có thể giữ một hoặc nhiều phần tử
+<code>&lt;item></code> và <code>&lt;group></code>.</dd>
+
+  <dt><code>&lt;item></code></dt>
+    <dd>Tạo một {@link android.view.MenuItem}, nó biểu diễn một mục đơn trong một menu. Phần tử
+này có thể chứa một phần tử <code>&lt;menu></code> được lồng nhau để tạo một menu con.</dd>
+    
+  <dt><code>&lt;group></code></dt>
+    <dd>Một bộ chứa tùy chọn, vô hình cho các phần tử {@code &lt;item&gt;}. Nó cho phép bạn
+phân loại các mục menu sao cho chúng chia sẻ các tính chất như trạng thái hiện hoạt và khả năng hiển thị. Để biết thêm
+thông tin, hãy xem phần nói về <a href="#groups">Tạo Nhóm Menu</a>.</dd>
+</dl>
+
+
+<p>Sau đây là một menu ví dụ có tên là <code>game_menu.xml</code>:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/new_game"
+          android:icon="@drawable/ic_new_game"
+          android:title="@string/new_game"
+          android:showAsAction="ifRoom"/&gt;
+    &lt;item android:id="@+id/help"
+          android:icon="@drawable/ic_help"
+          android:title="@string/help" /&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Phần tử <code>&lt;item></code> hỗ trợ một vài thuộc tính bạn có thể sử dụng để định nghĩa biểu hiện bên ngoài
+và hành vi của một mục. Các mục trong menu trên bao gồm những thuộc tính sau:</p>
+
+<dl>
+  <dt>{@code android:id}</dt>
+    <dd>Một ID tài nguyên duy nhất đối với mục, nó cho phép ứng dụng có thể nhận ra mục đó
+khi người dùng chọn nó.</dd>
+  <dt>{@code android:icon}</dt>
+    <dd>Một tham chiếu tới một nội dung vẽ được để dùng làm biểu tượng của mục.</dd>
+  <dt>{@code android:title}</dt>
+    <dd>Một tham chiếu tới một xâu để dùng làm tiêu đề của mục.</dd>
+  <dt>{@code android:showAsAction}</dt>
+    <dd>Quy định thời điểm và cách thức mục này nên xuất hiện như một mục hành động trong <a href="{@docRoot}guide/topics/ui/actionbar.html">thanh hành động</a>.</dd>
+</dl>
+
+<p>Đây là những thuộc tính quan trọng nhất bạn nên sử dụng, nhưng còn nhiều thuộc tính sẵn có khác.
+Để biết thông tin về tất cả thuộc tính được hỗ trợ, hãy xem tài liệu <a href="{@docRoot}guide/topics/resources/menu-resource.html">Tài nguyên Menu</a>.</p>
+
+<p>Bạn có thể thêm một menu con vào một mục trong bất kỳ menu nào (ngoại trừ menu con) bằng cách thêm một phần tử {@code &lt;menu&gt;}
+làm con của {@code &lt;item&gt;}. Các menu con thường hữu ích khi ứng dụng của bạn có nhiều
+chức năng mà có thể được tổ chức thành các chủ đề, như các mục trong thanh menu của một ứng dụng PC (Tệp,
+Chỉnh sửa, Dạng xem, v.v.). Ví dụ:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/file"
+          android:title="@string/file" &gt;
+        &lt;!-- "file" submenu --&gt;
+        &lt;menu&gt;
+            &lt;item android:id="@+id/create_new"
+                  android:title="@string/create_new" /&gt;
+            &lt;item android:id="@+id/open"
+                  android:title="@string/open" /&gt;
+        &lt;/menu&gt;
+    &lt;/item&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Để sử dụng menu trong hoạt động của mình, bạn cần bung tài nguyên menu (chuyển tài nguyên XML
+thành một đối tượng có thể lập trình) bằng cách sử dụng {@link android.view.MenuInflater#inflate(int,Menu)
+MenuInflater.inflate()}. Trong những phần sau, bạn sẽ biết cách bung một menu đối với mỗi
+loại menu.</p>
+
+
+
+<h2 id="options-menu">Tạo một Menu Tùy chọn</h2>
+
+<div class="figure" style="width:200px;margin:0">
+  <img src="{@docRoot}images/options_menu.png" height="333" alt="" />
+  <p class="img-caption"><strong>Hình 1.</strong> Các menu tùy chọn trong
+Trình duyệt, trên Android 2.3.</p>
+</div>
+
+<p>Menu tùy chọn là nơi bạn nên đưa vào hành động và các tùy chọn khác liên quan tới
+ngữ cảnh hoạt động hiện tại, chẳng hạn như "Tìm kiếm," "Soạn e-mail," và "Cài đặt."</p>
+
+<p>Nơi mà các mục trong menu tùy chọn của bạn xuất hiện trên màn hình sẽ phụ thuộc vào phiên bản mà bạn
+phát triển ứng dụng của mình cho:</p>
+
+<ul>
+  <li>Nếu bạn phát triển ứng dụng của mình cho phiên bản <strong>Android 2.3.x (API mức 10) hoặc
+thấp hơn</strong>, nội dung của menu tùy chọn sẽ xuất hiện ở dưới cùng màn hình khi người dùng
+nhấn nút <em>Menu</em> như minh họa trong hình 1. Khi được mở, phần hiển thị đầu tiên là
+menu biểu tượng
+với tối đa sáu mục menu. Nếu menu của bạn bao gồm nhiều hơn sáu mục, Android sẽ đặt
+mục thứ sáu và phần còn lại vào một menu tràn mà người dùng có thể mở bằng cách chọn
+<em>Thêm nữa</em>.</li>
+
+  <li>Nếu bạn phát triển ứng dụng của mình cho phiên bản <strong>Android 3.0 (API mức 11) và
+cao hơn</strong>, các mục từ menu tùy chọn sẵn ở trong <a href="{@docRoot}guide/topics/ui/actionbar.html">thanh hành động</a>. Theo mặc định, hệ thống
+đặt tất cả các mục trong phần tràn hành động mà người dùng có thể hiện bằng biểu tượng tràn hành động phía
+bên phải của thanh hành động (hoặc bằng cách nhấn nút <em>Menu</em> của thiết bị nếu có). Để
+kích hoạt
+truy cập nhanh vào các hành động quan trọng, bạn có thể đưa lên một vài mục xuất hiện trong thanh hành động bằng cách thêm
+{@code android:showAsAction="ifRoom"} vào phần tử {@code &lt;item&gt;} tương ứng (xem hình
+2). <p>Để biết thêm thông tin về các mục hành động và hành vi khác của thanh hành động, hãy xem hướng dẫn <a href="{@docRoot}guide/topics/ui/actionbar.html">Thanh Hành động</a>. </p>
+<p class="note"><strong>Lưu ý:</strong> Ngay cả khi bạn <em>không</em> đang phát triển cho phiên bản Android 3.0 hoặc
+cao hơn, bạn có thể xây dựng bố trí thanh hành động của chính mình cho hiệu ứng tương tự. Để xem ví dụ về cách bạn có thể hỗ trợ các phiên bản cao hơn
+của Android bằng một thanh hành động, hãy xem mẫu <a href="{@docRoot}resources/samples/ActionBarCompat/index.html">Tương thích với Thanh Hành động</a>
+.</p>
+</li>
+</ul>
+
+<img src="{@docRoot}images/ui/actionbar.png" alt="" />
+<p class="img-caption"><strong>Hình 2.</strong> Thanh hành động từ ứng dụng <a href="{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb Gallery</a>, hiển thị
+các tab điều hướng và một mục hành động máy ảnh (cộng với nút tràn hành động).</p>
+
+<p>Bạn có thể khai báo các mục cho menu tùy chọn từ lớp con {@link android.app.Activity}
+của bạn hoặc một lớp con {@link android.app.Fragment}. Nếu cả hoạt động của bạn và (các) phân đoạn
+đều khai báo các mục cho menu tùy chọn, chúng sẽ được kết hợp lại trong UI. Các mục của hoạt động xuất hiện
+trước, sau đó là các mục của từng phân đoạn theo thứ tự phân đoạn được thêm vào
+hoạt động. Nếu cần, bạn có thể sắp xếp lại các mục menu bằng thuộc tính {@code android:orderInCategory}
+trong mỗi {@code &lt;item&gt;} mà bạn cần di chuyển.</p>
+
+<p>Để quy định menu tùy chọn cho một hoạt động, hãy khống chế {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} (các phân đoạn cung cấp
+phương pháp gọi lại {@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()} của chính mình). Trong
+phương pháp này, bạn có thể bung tài nguyên menu của mình (<a href="#xml">được định nghĩa trong XML</a>) vào {@link
+android.view.Menu} được cung cấp trong phương pháp gọi lại. Ví dụ:</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu) {
+    MenuInflater inflater = {@link android.app.Activity#getMenuInflater()};
+    inflater.inflate(R.menu.game_menu, menu);
+    return true;
+}
+</pre>
+
+<p>Bạn cũng có thể thêm các mục menu bằng cách sử dụng {@link android.view.Menu#add(int,int,int,int)
+add()} và truy xuất các mục bằng {@link android.view.Menu#findItem findItem()} để xem lại
+tính chất của chúng bằng các API {@link android.view.MenuItem}.</p>
+
+<p>Nếu bạn phát triển ứng dụng của mình cho phiên bản Android 2.3.x và thấp hơn, hệ thống gọi {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} để tạo menu tùy chọn
+khi người dùng mở menu lần đầu tiên. Nếu bạn phát triển cho phiên bản Android 3.0 vào cao hơn, 
+hệ thống sẽ gọi {@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} khi
+bắt đầu hoạt động để hiển thị các mục cho thanh hành động.</p>
+
+
+
+<h3 id="RespondingOptionsMenu">Xử lý sự kiện nhấp</h3>
+
+<p>Khi người dùng chọn một mục từ menu tùy chọn (bao gồm các mục hành động trong thanh hành động),
+hệ thống sẽ gọi phương pháp {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} của hoạt động của bạn. Phương pháp này thông qua {@link android.view.MenuItem} được chọn. Bạn
+có thể nhận biết mục bằng cách gọi {@link android.view.MenuItem#getItemId()}, nó trả về ID duy nhất
+cho mục menu (được định nghĩa bởi thuộc tính {@code android:id} trong tài nguyên menu hoặc bằng một
+số nguyên được cấp cho phương pháp {@link android.view.Menu#add(int,int,int,int) add()}). Bạn có thể khớp
+ID này với các mục menu đã biết để thực hiện hành động phù hợp. Ví dụ:</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    // Handle item selection
+    switch (item.getItemId()) {
+        case R.id.new_game:
+            newGame();
+            return true;
+        case R.id.help:
+            showHelp();
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>Khi bạn xử lý thành công một mục menu, trả về {@code true}. Nếu không xử lý được
+mục menu, bạn nên gọi triển khai siêu lớp của {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} (triển khai
+mặc định trả về sai).</p>
+
+<p>Nếu hoạt động của bạn bao gồm các phân đoạn, trước tiên hệ thống sẽ gọi {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} cho hoạt động, rồi mới
+cho từng phân đoạn (theo thứ tự thêm phân đoạn) tới khi trả về
+{@code true} hoặc tất cả phân đoạn đều được gọi.</p>
+
+<p class="note"><strong>Mẹo:</strong> Android 3.0 thêm khả năng cho phép bạn định nghĩa hành vi
+khi nhấp đối với một mục menu trong XML, bằng cách sử dụng thuộc tính {@code android:onClick}. Giá trị cho
+thuộc tính phải là tên của một phương pháp được định nghĩa bởi hoạt động sử dụng menu. Phương pháp
+phải công khai và chấp nhận một tham số {@link android.view.MenuItem} đơn&mdash;khi hệ thống
+gọi phương pháp này, nó thông qua mục menu được chọn. Để biết thêm thông tin và ví dụ, hãy xem tài liệu <a href="{@docRoot}guide/topics/resources/menu-resource.html">Tài nguyên Menu</a>.</p>
+
+<p class="note"><strong>Mẹo:</strong> Nếu ứng dụng của bạn chứa nhiều hoạt động và
+một số chúng cung cấp menu tùy chọn tương tự, hãy xem xét tạo
+ một hoạt động chỉ triển khai các phương pháp {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} và {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()}. Sau đó, mở rộng lớp này đối với mỗi hoạt động cần chia sẻ
+menu tùy chọn tương tự. Bằng cách này, bạn có thể quản lý một bộ mã để xử lý các hành động
+menu và từng lớp hậu duệ kế thừa các hành vi menu.
+Nếu bạn muốn thêm các mục menu vào một trong các hoạt động hậu duệ,
+hãy khống chế {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} trong hoạt động đó. Gọi {@code super.onCreateOptionsMenu(menu)} sao cho
+các mục menu gốc được tạo, sau đó thêm các mục menu mới bằng {@link
+android.view.Menu#add(int,int,int,int) menu.add()}. Bạn cũng có thể khống chế hành vi
+của siêu lớp đối với các mục menu riêng lẻ.</p>
+
+
+<h3 id="ChangingTheMenu">Thay đổi các mục menu vào thời gian chạy</h3>
+
+<p>Sau khi hệ thống gọi {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()}, nó sẽ giữ lại một thực thể của {@link android.view.Menu} mà bạn đưa vào và
+sẽ không gọi lại {@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}
+trừ khi menu bị vô hiệu hóa vì lý do nào đó. Tuy nhiên, bạn chỉ nên sử dụng {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} để tạo trạng thái menu
+ban đầu chứ không phải để thực hiện thay đổi trong vòng đời của hoạt động.</p>
+
+<p>Nếu bạn muốn sửa đổi menu tùy chọn dựa trên 
+các sự kiện xảy ra trong vòng đời của hoạt động, bạn có thể làm vậy trong phương pháp
+ {@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}. Phương pháp
+này chuyển cho bạn đối tượng {@link android.view.Menu} như hiện đang có để bạn có thể sửa đổi nó,
+chẳng hạn như thêm, xóa bỏ, hoặc vô hiệu hóa các mục. (Phân đoạn cũng cung cấp lệnh gọi lại {@link
+android.app.Fragment#onPrepareOptionsMenu onPrepareOptionsMenu()}.)</p>
+
+<p>Trên phiên bản Android 2.3.x và thấp hơn, hệ thống gọi {@link
+android.app.Activity#onPrepareOptionsMenu(Menu)
+onPrepareOptionsMenu()} mỗi lần người dùng mở menu tùy chọn (nhấn nút <em>Menu</em>
+).</p>
+
+<p>Trên phiên bản Android 3.0 trở lên, menu tùy chọn được coi như luôn mở khi các mục menu được
+trình bày trong thanh hành động. Khi một sự kiện xảy ra và bạn muốn thực hiện một cập nhật menu, bạn phải
+gọi {@link android.app.Activity#invalidateOptionsMenu invalidateOptionsMenu()} để yêu cầu
+hệ thống gọi {@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}.</p>
+
+<p class="note"><strong>Lưu ý:</strong> 
+Bạn không nên thay đổi các mục trong menu tùy chọn dựa trên {@link android.view.View} đang
+trong tiêu điểm. Khi ở chế độ cảm ứng (khi người dùng không sử dụng bi xoay hay d-pad), các dạng xem
+không thể lấy tiêu điểm, vì thế bạn không nên sử dụng tiêu điểm làm cơ sở để sửa đổi
+các mục trong menu tùy chọn. Nếu bạn muốn cung cấp các mục menu nhạy cảm với ngữ cảnh cho một {@link
+android.view.View}, hãy sử dụng một <a href="#context-menu">Menu Ngữ cảnh</a>.</p>
+
+
+
+
+<h2 id="context-menu">Tạo một Menu Ngữ cảnh</h2>
+
+<div class="figure" style="width:420px;margin-top:-1em">
+  <img src="{@docRoot}images/ui/menu-context.png" alt="" />
+  <p class="img-caption"><strong>Hình 3.</strong> Ảnh chụp màn hình một menu ngữ cảnh nổi (trái)
+và thanh hành động ngữ cảnh (phải).</p>
+</div>
+
+<p>Menu ngữ cảnh sẽ đưa ra các hành động ảnh hưởng tới một mục hoặc khung ngữ cảnh cụ thể trong UI. Bạn
+có thể cung cấp một menu ngữ cảnh cho bất kỳ dạng xem nào, nhưng chúng thường được sử dụng nhiều nhất cho các mục trong một {@link
+android.widget.ListView}, {@link android.widget.GridView}, hoặc các bộ sưu tập dạng xem khác mà
+người dùng có thể thực hiện hành động trực tiếp trên mỗi mục.</p>
+
+<p>Có hai cách để cung cấp các hành động ngữ cảnh:</p>
+<ul>
+  <li>Trong một <a href="#FloatingContextMenu">menu ngữ cảnh nổi</a>. Menu xuất hiện như một
+danh sách nổi gồm nhiều mục menu (tương tự như một hộp thoại) khi người dùng thực hiện nhấp giữ (nhấn và
+giữ) trên một dạng xem có khai báo hỗ trợ menu ngữ cảnh. Người dùng có thể thực hiện hành động
+ngữ cảnh trên một mục vào một thời điểm.</li>
+
+  <li>Trong <a href="#CAB">chế độ hành động theo ngữ cảnh</a>. Chế độ này là một hệ thống triển khai
+{@link android.view.ActionMode} có chức năng hiển thị một <em>thanh hành động ngữ cảnh</em> ở bên trên
+màn hình với các mục hành động ảnh hưởng tới (các) mục được chọn. Khi chế độ này hiện hoạt, người dùng
+có thể thực hiện một hành động trên nhiều mục ngay lập tức (nếu ứng dụng của bạn cho phép).</li>
+</ul>
+
+<p class="note"><strong>Lưu ý:</strong> Chế độ hành động theo ngữ cảnh sẵn có trên phiên bản Android 3.0 (API
+mức 11) và cao hơn và là kỹ thuật được ưu tiên cho việc hiển thị các hành động theo ngữ cảnh khi
+sẵn có. Nếu ứng dụng của bạn hỗ trợ các phiên bản thấp hơn 3.0, vậy bạn nên quay lại menu ngữ cảnh
+nổi trên những thiết bị đó.</p>
+
+
+<h3 id="FloatingContextMenu">Tạo một menu ngữ cảnh nổi</h3>
+
+<p>Để cung cấp một menu ngữ cảnh nổi:</p>
+<ol>
+  <li>Đăng ký {@link android.view.View} mà menu ngữ cảnh nên được liên kết với bằng cách
+gọi {@link android.app.Activity#registerForContextMenu(View) registerForContextMenu()} và chuyển
+cho nó {@link android.view.View}.
+  <p>Nếu hoạt động của bạn sử dụng một {@link android.widget.ListView} hoặc {@link android.widget.GridView} và
+bạn muốn từng mục cung cấp cùng menu ngữ cảnh, hãy đăng ký tất cả mục cho một menu ngữ cảnh bằng cách
+chuyển {@link android.widget.ListView} hoặc {@link android.widget.GridView} cho {@link
+android.app.Activity#registerForContextMenu(View) registerForContextMenu()}.</p>
+</li>
+
+  <li>Triển khai phương pháp {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()}
+trong {@link android.app.Activity} hoặc {@link android.app.Fragment} của bạn.
+  <p>Khi dạng xem được đăng ký nhận được một sự kiện nhấp giữ, hệ thống sẽ gọi phương pháp {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()}
+của bạn. Đây là nơi bạn định nghĩa các mục menu, thường bằng cách bung một tài nguyên menu. Ví
+dụ:</p>
+<pre>
+&#64;Override
+public void onCreateContextMenu(ContextMenu menu, View v,
+                                ContextMenuInfo menuInfo) {
+    super.onCreateContextMenu(menu, v, menuInfo);
+    MenuInflater inflater = getMenuInflater();
+    inflater.inflate(R.menu.context_menu, menu);
+}
+</pre>
+
+<p>{@link android.view.MenuInflater} cho phép bạn bung menu ngữ cảnh từ một <a href="{@docRoot}guide/topics/resources/menu-resource.html">tài nguyên menu</a>. Các tham số của phương pháp gọi lại
+bao gồm {@link android.view.View}
+mà người dùng đã chọn và một đối tượng {@link android.view.ContextMenu.ContextMenuInfo} cung cấp
+thông tin bổ sung về mục được chọn. Nếu hoạt động của bạn có một vài dạng xem mà mỗi dạng cung cấp
+một menu ngữ cảnh khác nhau, bạn có thể sử dụng những tham số này để xác định menu ngữ cảnh nào cần
+bung.</p>
+</li>
+
+<li>Triển khai {@link android.app.Activity#onContextItemSelected(MenuItem)
+onContextItemSelected()}.
+  <p>Khi người dùng chọn một mục menu, hệ thống sẽ gọi phương pháp này để bạn có thể thực hiện
+hành động phù hợp. Ví dụ:</p>
+
+<pre>
+&#64;Override
+public boolean onContextItemSelected(MenuItem item) {
+    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
+    switch (item.getItemId()) {
+        case R.id.edit:
+            editNote(info.id);
+            return true;
+        case R.id.delete:
+            deleteNote(info.id);
+            return true;
+        default:
+            return super.onContextItemSelected(item);
+    }
+}
+</pre>
+
+<p>Phương pháp {@link android.view.MenuItem#getItemId()} sẽ truy vấn ID cho
+mục menu được chọn, bạn nên gán mục này cho từng mục menu trong XML bằng cách sử dụng thuộc tính {@code
+android:id} như trình bày trong phần về <a href="#xml">Định nghĩa một Menu trong
+XML</a>.</p>
+
+<p>Khi bạn xử lý thành công một mục menu, trả về {@code true}. Nếu bạn không xử lý mục menu,
+bạn nên chuyển mục menu đó tới triển khai siêu lớp. Nếu hoạt động của bạn bao gồm nhiều phân đoạn,
+hoạt động sẽ nhận được lệnh gọi lại này trước. Bằng cách gọi siêu lớp khi chưa được xử lý, hệ thống
+sẽ chuyển sự kiện tới phương pháp gọi lại tương ứng trong từng phân đoạn, lần lượt (theo thứ tự
+thêm phân đoạn) tới khi {@code true} hoặc {@code false} được trả về. (Triển khai
+mặc định cho {@link android.app.Activity} và {@code android.app.Fragment} sẽ trả về {@code
+false}, vì thế bạn nên luôn gọi siêu lớp khi chưa được xử lý.)</p>
+</li>
+</ol>
+
+
+<h3 id="CAB">Sử dụng chế độ hành động theo ngữ cảnh</h3>
+
+<p>Chế độ hành động theo ngữ cảnh là một triển khai hệ thống {@link android.view.ActionMode}
+tập trung vào tương tác người dùng hướng tới việc thực hiện các hành động theo ngữ cảnh. Khi một
+người dùng kích hoạt chế độ này bằng cách chọn một mục, một <em>thanh hành động ngữ cảnh</em> sẽ xuất hiện bên trên
+màn hình để trình bày các hành động mà người dùng có thể thực hiện trên (các) mục đang được chọn. Trong khi
+chế độ này được kích hoạt, người dùng có thể chọn nhiều mục (nếu bạn cho phép), bỏ chọn mục, và tiếp tục
+điều hướng trong hoạt động (miễn là bạn sẵn lòng cho phép). Chế độ hành động bị vô hiệu hóa
+và thanh hành động ngữ cảnh biến mất khi người dùng bỏ chọn tất cả các mục, nhấn nút QUAY LẠI,
+hoặc chọn hành động <em>Xong</em> ở phía bên trái của thanh.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Thanh hành động ngữ cảnh không nhất thiết
+phải được liên kết với <a href="{@docRoot}guide/topics/ui/actionbar.html">thanh hành động</a>. Chúng vận hành
+độc lập, mặc dù thanh hành động ngữ cảnh đè lên vị trí của thanh hành động
+về mặt hiển thị.</p>
+
+<p>Nếu bạn đang phát triển cho phiên bản Android 3.0 (API mức 11) hoặc cao hơn, bạn
+nên sử dụng chế độ hành động theo ngữ cảnh để trình bày các hành động ngữ cảnh, thay vì sử dụng <a href="#FloatingContextMenu">menu ngữ cảnh nổi</a>.</p>
+
+<p>Đối với các dạng xem cung cấp hành động ngữ cảnh, bạn nên thường xuyên gọi ra chế độ hành động theo ngữ cảnh
+khi xảy ra một trong hai sự kiện sau (hoặc cả hai):</p>
+<ul>
+  <li>Người dùng thực hiện nhấp giữ trên dạng xem.</li>
+  <li>Người dùng chọn một hộp kiểm hoặc một thành phần UI tương tự trong dạng xem.</li>
+</ul>
+
+<p>Cách ứng dụng của bạn gọi ra chế độ hành động theo ngữ cảnh và định nghĩa hành vi cho từng
+hành động phụ thuộc vào thiết kế của bạn. Cơ bản có hai thiết kế:</p>
+<ul>
+  <li>Đối với các hành động ngữ cảnh trên các dạng xem riêng lẻ, tùy ý.</li>
+  <li>Đối với các hành động ngữ cảnh hàng loạt trên các nhóm mục trong một {@link
+android.widget.ListView} hoặc {@link android.widget.GridView} (cho phép người dùng chọn nhiều
+mục và thực hiện một hành động trên tất cả).</li>
+</ul>
+
+<p>Các phần sau mô tả phần thiết lập cần thiết đối với từng kịch bản.</p>
+
+
+<h4 id="CABforViews">Kích hoạt chế độ hành động theo ngữ cảnh cho các dạng xem riêng lẻ</h4>
+
+<p>Nếu muốn gọi ra chế độ hành động theo ngữ cảnh chỉ khi người dùng chọn các dạng xem
+cụ thể, bạn nên:</p>
+<ol>
+  <li>Triển khai giao diện {@link android.view.ActionMode.Callback}. Trong các phương pháp gọi lại của giao diện, bạn
+có thể quy định các hành động cho thanh hành động ngữ cảnh, hồi đáp các sự kiện nhấp trên mục hành động, và
+xử lý các sự kiện vòng đời khác đối với chế độ hành động.</li>
+  <li>Gọi {@link android.app.Activity#startActionMode startActionMode()} khi bạn muốn hiển thị
+thanh (chẳng hạn như khi người dùng nhấp giữ dạng xem).</li>
+</ol>
+
+<p>Ví dụ:</p>
+
+<ol>
+  <li>Triển khai giao diện {@link android.view.ActionMode.Callback ActionMode.Callback}:
+<pre>
+private ActionMode.Callback mActionModeCallback = new ActionMode.Callback() {
+
+    // Called when the action mode is created; startActionMode() was called
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate a menu resource providing context menu items
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context_menu, menu);
+        return true;
+    }
+
+    // Called each time the action mode is shown. Always called after onCreateActionMode, but
+    // may be called multiple times if the mode is invalidated.
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        return false; // Return false if nothing is done
+    }
+
+    // Called when the user selects a contextual menu item
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        switch (item.getItemId()) {
+            case R.id.menu_share:
+                shareCurrentItem();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    // Called when the user exits the action mode
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        mActionMode = null;
+    }
+};
+</pre>
+
+<p>Lưu ý rằng những phương pháp gọi lại sự kiện này hầu như giống với các phương pháp gọi lại đối với <a href="#options-menu">menu tùy chọn</a>, khác ở chỗ từng phương pháp cũng chuyển đối tượng {@link
+android.view.ActionMode} được liên kết với sự kiện đó. Bạn có thể sử dụng các API {@link
+android.view.ActionMode} để thực hiện những thay đổi khác nhau với CAB, chẳng hạn như sửa đổi tiêu đề và
+phụ đề bằng {@link android.view.ActionMode#setTitle setTitle()} và {@link
+android.view.ActionMode#setSubtitle setSubtitle()} (hữu ích khi muốn cho biết có bao nhiêu mục
+được chọn).</p>
+
+<p>Cũng lưu ý rằng các bộ mẫu trên sẽ đặt biến {@code mActionMode} là rỗng khi
+chế độ hành động bị hủy. Ở bước tiếp theo, bạn sẽ thấy cách nó được khởi tạo và việc lưu
+biến thành viên trong hoạt động hoặc phân đoạn của bạn có thể hữu ích như thế nào.</p>
+</li>
+
+  <li>Gọi {@link android.app.Activity#startActionMode startActionMode()} để kích hoạt chế độ hành động theo ngữ cảnh
+khi phù hợp, chẳng hạn như để hồi đáp lại một sự kiện nhấp giữ trên một {@link
+android.view.View}:</p>
+
+<pre>
+someView.setOnLongClickListener(new View.OnLongClickListener() {
+    // Called when the user long-clicks on someView
+    public boolean onLongClick(View view) {
+        if (mActionMode != null) {
+            return false;
+        }
+
+        // Start the CAB using the ActionMode.Callback defined above
+        mActionMode = getActivity().startActionMode(mActionModeCallback);
+        view.setSelected(true);
+        return true;
+    }
+});
+</pre>
+
+<p>Khi bạn gọi {@link android.app.Activity#startActionMode startActionMode()}, hệ thống sẽ trả về
+{@link android.view.ActionMode} được tạo. Bằng cách lưu điều này trong một biến thành viên, bạn có thể
+thực hiện thay đổi thanh hành động theo ngữ cảnh để hồi đáp những sự kiện khác. Trong mẫu trên, 
+{@link android.view.ActionMode} được sử dụng để đảm bảo rằng thực thể {@link android.view.ActionMode} không
+được tạo lại nếu nó đã hiện hoạt, bằng cách kiểm tra xem thành viên có rỗng không trước khi khởi động
+chế độ hành động.</p>
+</li>
+</ol>
+
+
+
+<h4 id="CABforListView">Kích hoạt hành động theo ngữ cảnh hàng loạt trong ListView hoặc GridView</h4>
+
+<p>Nếu bạn có một bộ sưu tập các mục trong một {@link android.widget.ListView} hoặc {@link
+android.widget.GridView} (hoặc một phần mở rộng khác của {@link android.widget.AbsListView}) và muốn
+cho phép người dùng thực hiện các hành động hàng loạt, bạn nên:</p>
+
+<ul>
+  <li>Triển khai giao diện {@link android.widget.AbsListView.MultiChoiceModeListener} và đặt nó
+cho nhóm dạng xem bằng {@link android.widget.AbsListView#setMultiChoiceModeListener
+setMultiChoiceModeListener()}. Trong các phương pháp gọi lại của trình nghe, bạn có thể quy định các hành động
+cho thanh hành động theo ngữ cảnh, hồi đáp các sự kiện nhấp trên các mục hành động, và xử lý các phương pháp gọi lại khác
+được kế thừa từ giao diện {@link android.view.ActionMode.Callback}.</li>
+
+  <li>Gọi {@link android.widget.AbsListView#setChoiceMode setChoiceMode()} bằng tham đối {@link
+android.widget.AbsListView#CHOICE_MODE_MULTIPLE_MODAL}.</li>
+</ul>
+
+<p>Ví dụ:</p>
+
+<pre>
+ListView listView = getListView();
+listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
+listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
+
+    &#64;Override
+    public void onItemCheckedStateChanged(ActionMode mode, int position,
+                                          long id, boolean checked) {
+        // Here you can do something when items are selected/de-selected,
+        // such as update the title in the CAB
+    }
+
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        // Respond to clicks on the actions in the CAB
+        switch (item.getItemId()) {
+            case R.id.menu_delete:
+                deleteSelectedItems();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate the menu for the CAB
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context, menu);
+        return true;
+    }
+
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        // Here you can make any necessary updates to the activity when
+        // the CAB is removed. By default, selected items are deselected/unchecked.
+    }
+
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        // Here you can perform updates to the CAB due to
+        // an {@link android.view.ActionMode#invalidate} request
+        return false;
+    }
+});
+</pre>
+
+<p>Vậy là xong. Lúc này, khi người dùng chọn một mục bằng nhấp giữ, hệ thống sẽ gọi phương pháp {@link
+android.widget.AbsListView.MultiChoiceModeListener#onCreateActionMode onCreateActionMode()}
+và hiển thị thanh hành động theo ngữ cảnh với các hành động được quy định. Trong khi thanh hành động theo ngữ cảnh
+hiển thị, người dùng có thể chọn thêm mục.</p>
+
+<p>Trong một số trường hợp mà các hành động ngữ cảnh cung cấp các mục hành động chung, bạn có thể muốn
+thêm một hộp kiểm hoặc một phần tử UI tương tự để cho phép người dùng chọn các mục, vì
+họ có thể không phát hiện được hành vi nhấp giữ. Khi một người dùng chọn hộp kiểm, bạn
+có thể gọi ra chế độ hành động theo ngữ cảnh bằng cách thiết đặt mục danh sách tương ứng về trạng thái
+đã chọn bằng {@link android.widget.AbsListView#setItemChecked setItemChecked()}.</p>
+
+
+
+
+<h2 id="PopupMenu">Tạo một Menu Bật lên</h2>
+
+<div class="figure" style="width:220px">
+<img src="{@docRoot}images/ui/popupmenu.png" alt="" />
+<p><strong>Hình 4.</strong> Menu bật lên trong ứng dụng Gmail, được neo vào nút tràn
+ở trên cùng bên phải.</p>
+</div>
+
+<p>{@link android.widget.PopupMenu} là một menu mô thái được neo vào một {@link android.view.View}.
+Nó xuất hiện bên dưới dạng xem dấu neo nếu có khoảng trống, hoặc bên trên dạng xem nếu không. Nó có ích cho việc:</p>
+<ul>
+  <li>Cung cấp một menu kiểu tràn cho các hành động mà <em>liên quan tới</em> nội dung cụ thể (chẳng hạn như tiêu đề e-mail
+của Gmail như minh họa trong hình 4).
+    <p class="note"><strong>Lưu ý:</strong> Nó không giống như một menu ngữ cảnh, vốn thường
+áp dụng cho các hành động mà <em>ảnh hưởng</em> tới nội dung được chọn. Đối với những hành động ảnh hưởng tới nội dung
+được chọn, hãy sử dụng <a href="#CAB">chế độ hành động theo ngữ cảnh</a> hoặc <a href="#FloatingContextMenu">menu ngữ cảnh nổi</a>.</p></li>
+  <li>Cung cấp một phần thứ hai của câu lệnh (chẳng hạn như một nút được đánh dấu "Thêm"
+có chức năng tạo ra một menu bật lên với các tùy chọn "Thêm" khác nhau).</li>
+  <li>Cung cấp một danh sách thả xuống tương tự như {@link android.widget.Spinner}, nó không giữ lại một
+lựa chọn liên tục.</li>
+</ul>
+
+
+<p class="note"><strong>Lưu ý:</strong> {@link android.widget.PopupMenu} sẵn có với API
+mức 11 trở lên.</p>
+
+<p>Nếu bạn định nghĩa <a href="#xml">menu của mình trong XML</a>, sau đây là cách bạn có thể hiển thị menu bật lên:</p>
+<ol>
+  <li>Khởi tạo một {@link android.widget.PopupMenu} bằng hàm dựng của nó, có chức năng đưa
+ứng dụng hiện tại {@link android.content.Context} và {@link android.view.View} tới menu
+mà sẽ được neo.</li>
+  <li>Sử dụng {@link android.view.MenuInflater} để bung tài nguyên menu của bạn vào đối tượng {@link
+android.view.Menu} được trả về bởi {@link
+android.widget.PopupMenu#getMenu() PopupMenu.getMenu()}. Trên API mức 14 trở lên, bạn có thể sử dụng
+{@link android.widget.PopupMenu#inflate PopupMenu.inflate()} thay thế.</li>
+  <li>Gọi {@link android.widget.PopupMenu#show() PopupMenu.show()}.</li>
+</ol>
+
+<p>Ví dụ, sau đây là một nút với thuộc tính {@link android.R.attr#onClick android:onClick} có chức năng
+hiển thị một menu bật lên:</p>
+
+<pre>
+&lt;ImageButton
+    android:layout_width="wrap_content" 
+    android:layout_height="wrap_content" 
+    android:src="@drawable/ic_overflow_holo_dark"
+    android:contentDescription="@string/descr_overflow_button"
+    android:onClick="showPopup" />
+</pre>
+
+<p>Khi đó, hoạt động có thể hiển thị menu bật lên như sau:</p>
+
+<pre>
+public void showPopup(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+    MenuInflater inflater = popup.getMenuInflater();
+    inflater.inflate(R.menu.actions, popup.getMenu());
+    popup.show();
+}
+</pre>
+
+<p>Trong API mức 14 trở lên, bạn có thể kết hợp hai dòng có chức năng bung menu bằng {@link
+android.widget.PopupMenu#inflate PopupMenu.inflate()}.</p>
+
+<p>Menu bị bỏ qua khi người dùng chọn một mục hoặc chạm vào bên ngoài vùng
+menu. Bạn có thể lắng nghe báo hiệu sự kiện bỏ bằng cách sử dụng {@link
+android.widget.PopupMenu.OnDismissListener}.</p>
+
+<h3 id="PopupEvents">Xử lý sự kiện nhấp</h3>
+
+<p>Để thực hiện một
+hành động khi người dùng chọn một mục menu, bạn phải triển khai giao diện {@link
+android.widget.PopupMenu.OnMenuItemClickListener} và đăng ký nó với {@link
+android.widget.PopupMenu} của mình bằng cách gọi {@link android.widget.PopupMenu#setOnMenuItemClickListener
+setOnMenuItemclickListener()}. Khi người dùng chọn một mục, hệ thống sẽ gọi lệnh gọi lại {@link
+android.widget.PopupMenu.OnMenuItemClickListener#onMenuItemClick onMenuItemClick()} trong
+giao diện của bạn.</p>
+
+<p>Ví dụ:</p>
+
+<pre>
+public void showMenu(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+
+    // This activity implements OnMenuItemClickListener
+    popup.setOnMenuItemClickListener(this);
+    popup.inflate(R.menu.actions);
+    popup.show();
+}
+
+&#64;Override
+public boolean onMenuItemClick(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.archive:
+            archive(item);
+            return true;
+        case R.id.delete:
+            delete(item);
+            return true;
+        default:
+            return false;
+    }
+}
+</pre>
+
+
+<h2 id="groups">Tạo Nhóm Menu</h2>
+
+<p>Nhóm menu là một tập hợp các mục menu chia sẻ những đặc điểm nhất định. Với một nhóm, bạn có thể
+:</p>
+<ul>
+  <li>Hiển thị hoặc ẩn tất cả các mục bằng {@link android.view.Menu#setGroupVisible(int,boolean)
+setGroupVisible()}</li>
+  <li>Kích hoạt hoặc vô hiệu hóa tất cả các mục bằng {@link android.view.Menu#setGroupEnabled(int,boolean)
+setGroupEnabled()}</li>
+  <li>Quy định xem tất cả các mục có thể chọn hay không bằng {@link
+android.view.Menu#setGroupCheckable(int,boolean,boolean) setGroupCheckable()}</li>
+</ul>
+
+<p>Bạn có thể tạo một nhóm bằng cách lồng các phần tử {@code &lt;item&gt;} bên trong một phần tử {@code &lt;group&gt;}
+vào tài nguyên menu của bạn hoặc bằng cách quy định một ID nhóm bằng phương pháp {@link
+android.view.Menu#add(int,int,int,int) add()}.</p>
+
+<p>Sau đây là một ví dụ về tài nguyên menu bao gồm một nhóm:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/menu_save"
+          android:icon="@drawable/menu_save"
+          android:title="@string/menu_save" /&gt;
+    &lt;!-- menu group --&gt;
+    &lt;group android:id="@+id/group_delete"&gt;
+        &lt;item android:id="@+id/menu_archive"
+              android:title="@string/menu_archive" /&gt;
+        &lt;item android:id="@+id/menu_delete"
+              android:title="@string/menu_delete" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Các mục nằm trong nhóm xuất hiện ở cùng cấp như mục đầu tiên&mdash;tất cả ba mục
+trong menu đều là các mục đồng cấp. Tuy nhiên, bạn có thể sửa đổi các đặc điểm của hai
+mục trong nhóm bằng cách tham chiếu ID nhóm và sử dụng các phương pháp được liệt kê bên trên. Hệ thống cũng sẽ
+không bao giờ tách riêng các mục đã ghép nhóm. Ví dụ, nếu bạn khai báo {@code
+android:showAsAction="ifRoom"} cho từng mục, chúng sẽ hoặc đều xuất hiện trong thanh hành động
+hoặc đều xuất hiện trong phần tràn hành động.</p>
+
+
+<h3 id="checkable">Sử dụng mục menu có thể chọn</h3>
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/radio_buttons.png" height="333" alt="" />
+  <p class="img-caption"><strong>Hình 5.</strong> Ảnh chụp màn hình một menu con với các mục
+có thể chọn.</p>
+</div>
+
+<p>Một mục có thể có ích như một giao diện để bật và tắt các tùy chọn, bằng cách sử dụng một hộp kiểm cho
+các tùy chọn độc lập, hoặc nút chọn một cho các nhóm
+tùy chọn loại trừ lẫn nhau. Hình 5 minh họa một menu con với các mục có thể chọn bằng các nút
+ chọn một.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Các mục menu trong Menu Biểu tượng (từ menu tùy chọn) không thể
+hiển thị một hộp kiểm hay nút chọn một. Nếu bạn chọn đặt các mục trong Menu Biểu tượng là có thể chọn,
+bạn phải chỉ định trạng thái được chọn bằng cách tráo đổi biểu tượng và/hoặc văn bản
+mỗi lần trạng thái thay đổi một cách thủ công.</p>
+
+<p>Bạn có thể định nghĩa hành vi có thể chọn cho các mục menu riêng lẻ bằng cách sử dụng thuộc tính {@code
+android:checkable} trong phần tử {@code &lt;item&gt;}, hoặc cho toàn bộ nhóm với
+thuộc tính {@code android:checkableBehavior} trong phần tử {@code &lt;group&gt;}. Ví
+dụ, tất cả các mục trong nhóm menu này có thể chọn bằng một nút chọn một:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;group android:checkableBehavior="single"&gt;
+        &lt;item android:id="@+id/red"
+              android:title="@string/red" /&gt;
+        &lt;item android:id="@+id/blue"
+              android:title="@string/blue" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>Thuộc tính {@code android:checkableBehavior} chấp nhận hoặc:
+<dl>
+  <dt>{@code single}</dt>
+    <dd>Chỉ chọn được một mục từ nhóm (nút chọn một)</dd>
+  <dt>{@code all}</dt>
+    <dd>Có thể chọn được tất cả các mục (hộp kiểm)</dd>
+  <dt>{@code none}</dt>
+    <dd>Không chọn được mục nào</dd>
+</dl>
+
+<p>Bạn có thể áp dụng một trạng thái được chọn mặc định cho một mục bằng cách sử dụng thuộc tính {@code android:checked} trong
+phần tử {@code &lt;item&gt;} và thay đổi nó trong mã bằng phương pháp {@link
+android.view.MenuItem#setChecked(boolean) setChecked()}.</p>
+
+<p>Khi chọn một mục có thể chọn, hệ thống sẽ gọi phương pháp gọi lại mục được chọn tương ứng
+(chẳng hạn như {@link android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}). Chính
+ở đây bạn phải đặt trạng thái của hộp kiểm, vì hộp kiểm hay nút chọn một đều không
+tự động thay đổi trạng thái của nó. Bạn có thể truy vấn trạng thái hiện tại của mục (như trước khi
+người dùng chọn) bằng {@link android.view.MenuItem#isChecked()} và sau đó đặt trạng thái được chọn bằng
+{@link android.view.MenuItem#setChecked(boolean) setChecked()}. Ví dụ:</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.vibrate:
+        case R.id.dont_vibrate:
+            if (item.isChecked()) item.setChecked(false);
+            else item.setChecked(true);
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>Nếu bạn không đặt trạng thái được chọn bằng cách này, khi đó trạng thái hiển thị của mục (hộp kiểm hoặc
+nút chọn một) sẽ không
+thay đổi khi người dùng chọn nó. Khi bạn đặt trạng thái, hoạt động sẽ giữ nguyên trạng thái được chọn
+của mục đó để khi người dùng mở menu sau, trạng thái được chọn mà bạn đặt
+sẽ được hiển thị.</p>
+
+<p class="note"><strong>Lưu ý:</strong>
+Các mục menu có thể chọn được chỉ định sử dụng trên mỗi phiên và không được lưu sau khi
+ứng dụng bị hủy. Nếu bạn có các cài đặt ứng dụng mà bạn muốn lưu cho người dùng,
+bạn nên lưu trữ dữ liệu bằng cách sử dụng <a href="{@docRoot}guide/topics/data/data-storage.html#pref">Tùy chọn dùng chung</a>.</p>
+
+
+
+<h2 id="intents">Thêm Mục Menu dựa trên Ý định</h2>
+
+<p>Đôi khi bạn sẽ muốn một mục menu khởi chạy một hoạt động bằng cách sử dụng một {@link android.content.Intent}
+(dù đó là một hoạt động trong ứng dụng của bạn hay một ứng dụng khác). Khi bạn biết ý định mà mình
+muốn sử dụng và có một mục menu cụ thể sẽ khởi tạo ý định, bạn có thể thực thi ý định
+bằng {@link android.app.Activity#startActivity(Intent) startActivity()} trong phương pháp gọi lại
+phù hợp theo mục được chọn (chẳng hạn như lệnh gọi lại {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}).</p>
+
+<p>Tuy nhiên, nếu bạn không chắc chắn rằng thiết bị của người dùng
+chứa một ứng dụng xử lý ý định đó thì việc thêm một mục menu gọi nó ra có thể dẫn đến
+mục menu không hoạt động, do ý định có thể không phân giải thành một
+hoạt động. Để giải quyết điều này, Android cho phép bạn linh hoạt thêm các mục menu vào menu của mình
+khi Android tìm các hoạt động trên thiết bị để xử lý ý định của bạn.</p>
+
+<p>Để thêm các mục menu dựa trên các hoạt động sẵn có mà chấp nhận ý định:</p>
+<ol>
+  <li>Định nghĩa một
+ý định bằng thể loại {@link android.content.Intent#CATEGORY_ALTERNATIVE} và/hoặc
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE}, cộng với bất kỳ yêu cầu nào khác.</li>
+  <li>Gọi {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+Menu.addIntentOptions()}. Sau đó, Android tìm kiếm bất kỳ ứng dụng nào có thể thực hiện ý định
+và thêm chúng vào menu của bạn.</li>
+</ol>
+
+<p>Nếu không có ứng dụng được cài đặt
+mà thỏa mãn ý định thì không có mục menu nào được thêm vào.</p>
+
+<p class="note"><strong>Lưu ý:</strong>
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} được sử dụng để xử lý
+phần tử đang được chọn trên màn hình. Vì vậy, nó chỉ nên được sử dụng khi tạo một Menu trong {@link
+android.app.Activity#onCreateContextMenu(ContextMenu,View,ContextMenuInfo)
+onCreateContextMenu()}.</p>
+
+<p>Ví dụ:</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu){
+    super.onCreateOptionsMenu(menu);
+
+    // Create an Intent that describes the requirements to fulfill, to be included
+    // in our menu. The offering app must include a category value of Intent.CATEGORY_ALTERNATIVE.
+    Intent intent = new Intent(null, dataUri);
+    intent.addCategory(Intent.CATEGORY_ALTERNATIVE);
+
+    // Search and populate the menu with acceptable offering applications.
+    menu.addIntentOptions(
+         R.id.intent_group,  // Menu group to which new items will be added
+         0,      // Unique item ID (none)
+         0,      // Order for the items (none)
+         this.getComponentName(),   // The current activity name
+         null,   // Specific items to place first (none)
+         intent, // Intent created above that describes our requirements
+         0,      // Additional flags to control items (none)
+         null);  // Array of MenuItems that correlate to specific items (none)
+
+    return true;
+}</pre>
+
+<p>Đối với mỗi hoạt động được tìm thấy mà cung cấp một bộ lọc ý định khớp với ý định được định nghĩa, một mục menu
+được thêm, bằng cách sử dụng giá trị trong <code>android:label</code> của bộ lọc ý định làm
+tiêu đề của mục menu và biểu tượng của ứng dụng làm biểu tượng của mục menu. Phương pháp
+{@link android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} trả về số mục menu được thêm.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Khi bạn gọi {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()}, nó sẽ khống chế bất kỳ và tất cả các mục menu theo nhóm menu được quy định trong tham đối
+đầu tiên.</p>
+
+
+<h3 id="AllowingToAdd">Cho phép hoạt động của bạn được thêm vào các menu khác</h3>
+
+<p>Bạn cũng có thể cung cấp các dịch vụ của hoạt động của mình cho các ứng dụng khác, vì vậy ứng dụng của bạn
+có thể nằm trong menu của các ứng dụng khác (đảo ngược vai trò nêu trên).</p>
+
+<p>Để được nằm trong menu của ứng dụng khác, bạn cần định nghĩa một bộ lọc
+ý định như bình thường, nhưng đảm bảo thêm các giá trị {@link android.content.Intent#CATEGORY_ALTERNATIVE}
+và/hoặc {@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} cho thể loại
+bộ lọc ý định. Ví dụ:</p>
+<pre>
+&lt;intent-filter label="&#64;string/resize_image">
+    ...
+    &lt;category android:name="android.intent.category.ALTERNATIVE" />
+    &lt;category android:name="android.intent.category.SELECTED_ALTERNATIVE" />
+    ...
+&lt;/intent-filter>
+</pre>
+
+<p>Tìm hiểu thêm về việc ghi các bộ lọc ý định trong tài liệu
+<a href="/guide/components/intents-filters.html">Ý định và Bộ lọc Ý định</a>.</p>
+
+<p>Để tham khảo một ứng dụng mẫu sử dụng kỹ thuật này, hãy xem mã mẫu 
+<a href="{@docRoot}resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html">Note
+Pad</a>.</p>
diff --git a/docs/html-intl/intl/vi/guide/topics/ui/notifiers/notifications.jd b/docs/html-intl/intl/vi/guide/topics/ui/notifiers/notifications.jd
new file mode 100644
index 0000000..5890cb3
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/ui/notifiers/notifications.jd
@@ -0,0 +1,979 @@
+page.title=Thông báo
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>Trong tài liệu này</h2>
+<ol>
+  <li><a href="#Design">Cân nhắc Thiết kế</a></li>
+  <li><a href="#CreateNotification">Tạo một Thông báo</a>
+    <ol>
+      <li><a href="#Required">Nội dung thông báo được yêu cầu</a></li>
+      <li><a href="#Optional">Nội dung và cài đặt thông báo tùy chọn</a></li>
+      <li><a href="#Actions">Hành động thông báo</a></li>
+      <li><a href="#Priority">Mức ưu tiên của thông báo</a></li>
+      <li><a href="#SimpleNotification">Tạo một thông báo đơn giản</a></li>
+      <li><a href="#ApplyStyle">Áp dụng bố trí mở rộng cho một thông báo</a></li>
+      <li><a href="#Compatibility">Xử lý tính tương thích</a></li>
+    </ol>
+  </li>
+  <li><a href="#Managing">Quản lý Thông báo</a>
+    <ol>
+      <li><a href="#Updating">Cập nhật thông báo</a></li>
+      <li><a href="#Removing">Loại bỏ thông báo</a></li>
+    </ol>
+  </li>
+  <li><a href="#NotificationResponse">Giữ lại Điều hướng khi Bắt đầu một Hoạt động</a>
+    <ol>
+      <li><a href="#DirectEntry">Thiết đặt một PendingIntent cho hoạt động thường xuyên</a></li>
+      <li><a href="#ExtendedNotification">Thiết đặt một PendingIntent cho hoạt động đặc biệt</a></li>
+    </ol>
+  </li>
+  <li><a href="#Progress">Hiển thị Tiến độ trong một Thông báo</a>
+    <ol>
+      <li><a href="#FixedProgress">Hiển thị một chỉ báo tiến độ thời lượng cố định</a></li>
+      <li><a href="#ActivityIndicator">Hiển thị một chỉ báo hoạt động liên tục</a></li>
+    </ol>
+  </li>
+  <li><a href="#metadata">Siêu dữ liệu Thông báo</a></li>
+  <li><a href="#Heads-up">Thông báo Cảnh báo</a></li>
+  <li><a href="#lockscreenNotification">Thông báo Màn hình Khóa</a></li>
+    <ol>
+      <li><a href="#visibility">Thiết đặt Khả năng Hiển thị</a></li>
+      <li><a href="#controllingMedia">Điều khiển Phát lại Phương tiện trên Màn hình Khóa</a></li>
+    </ol>
+  <li><a href="#CustomNotification">Bố trí Thông báo Tùy chỉnh</a></li>
+</ol>
+
+    <h2>Lớp khóa</h2>
+    <ol>
+        <li>{@link android.app.NotificationManager}</li>
+        <li>{@link android.support.v4.app.NotificationCompat}</li>
+    </ol>
+    <h2>Video</h2>
+    <ol>
+        <li>
+            <a href="http://www.youtube.com/watch?v=Yc8YrVc47TI&amp;feature=player_detailpage#t=1672s">
+            Thông báo trong 4.1</a>
+        </li>
+    </ol>
+<h2>Xem thêm</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}design/patterns/notifications.html">Thiết kế Android: Thông báo</a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    Thông báo là một thông điệp bạn có thể hiển thị với người dùng bên ngoài
+    UI bình thường của ứng dụng của bạn. Khi bạn yêu cầu hệ thống phát hành một thông báo, trước tiên nó xuất hiện như một biểu tượng trong
+    <strong>khu vực thông báo</strong>. Để xem chi tiết thông báo, người dùng mở
+    <strong>ngăn kéo thông báo</strong>. Cả khu vực thông báo và ngăn kéo thông báo đều
+    là các khu vực do hệ thống kiểm soát mà người dùng có thể xem vào bất cứ lúc nào.
+</p>
+<img id="figure1" src="{@docRoot}images/ui/notifications/notification_area.png" height="" alt="" />
+<p class="img-caption">
+    <strong>Hình 1.</strong> Thông báo trong khu vực thông báo.
+</p>
+<img id="figure2" src="{@docRoot}images/ui/notifications/notification_drawer.png" width="280px" alt="" />
+<p class="img-caption">
+    <strong>Hình 2.</strong> Thông báo trong ngăn kéo thông báo.
+</p>
+
+<p class="note"><strong>Lưu ý:</strong> Ngoại trừ phần được lưu ý, hướng dẫn này nhắc đến
+lớp {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}
+trong phiên bản 4 của <a href="{@docRoot}tools/support-library/index.html">Thư viện Hỗ trợ</a>.
+Lớp {@link android.app.Notification.Builder Notification.Builder} đã được thêm vào trong Android
+3.0 (API mức 11).</p>
+
+<h2 id="Design">Cân nhắc Thiết kế</h2>
+
+<p>Là một phần quan trọng của giao diện người dùng Android, thông báo có các hướng dẫn thiết kế của riêng mình.
+Những thay đổi thiết kế cơ bản được giới thiệu trong Android 5.0 (API mức 21) đặc biệt
+quan trọng và bạn nên xem phần đào tạo về <a href="{@docRoot}training/material/index.html">Thiết kế Material</a>
+để biết thêm thông tin. Để tìm hiểu cách thiết kế thông báo và tương tác của chúng, hãy đọc hướng dẫn thiết kế
+<a href="{@docRoot}design/patterns/notifications.html">Thông báo</a>.</p>
+
+<h2 id="CreateNotification">Tạo một Thông báo</h2>
+
+<p>Bạn quy định thông tin UI và các hành động cho một thông báo trong một đối tượng
+{@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}.
+Để tạo chính thông báo, bạn gọi
+{@link android.support.v4.app.NotificationCompat.Builder#build NotificationCompat.Builder.build()},
+nó sẽ trả về một đối tượng {@link android.app.Notification} chứa những đặc tả của bạn. Để phát hành
+thông báo, bạn chuyển đối tượng {@link android.app.Notification} tới hệ thống bằng cách gọi
+{@link android.app.NotificationManager#notify NotificationManager.notify()}.</p>
+
+<h3 id="Required">Nội dung thông báo được yêu cầu</h3>
+<p>
+    Một đối tượng {@link android.app.Notification} <em>phải</em> chứa những điều sau:
+</p>
+<ul>
+    <li>
+        Một biểu tượng nhỏ được đặt bởi
+        {@link android.support.v4.app.NotificationCompat.Builder#setSmallIcon setSmallIcon()}
+    </li>
+    <li>
+        Một tiêu đề được đặt bởi
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()}
+    </li>
+    <li>
+        Văn bản chi tiết được đặt bởi
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentText setContentText()}
+    </li>
+</ul>
+<h3 id="Optional">Nội dung và cài đặt thông báo tùy chọn</h3>
+<p>
+    Tất cả cài đặt và nội dung thông báo khác đều mang tính tùy chọn. Để tìm hiểu thêm về chúng,
+    hãy xem tài liệu tham khảo cho {@link android.support.v4.app.NotificationCompat.Builder}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Actions">Hành động thông báo</h3>
+<p>
+    Mặc dù chúng mang tính tùy chọn, bạn nên thêm ít nhất một hành động vào thông báo của mình.
+    Một hành động cho phép người dùng đi trực tiếp từ thông báo tới một
+    {@link android.app.Activity} trong ứng dụng của bạn, nơi mà họ có thể xem thêm một hoặc nhiều sự kiện
+    hoặc làm việc thêm.
+</p>
+<p>
+    Một thông báo có thể cung cấp nhiều hành động. Bạn nên luôn định nghĩa hành động mà được
+    kích khởi khi người dùng nhấp vào thông báo; thường thì hành động này mở ra một
+    {@link android.app.Activity} trong ứng dụng của bạn. Bạn cũng có thể thêm các nút vào thông báo
+    để thực hiện những hành động bổ sung chẳng hạn như báo lại báo thức hay hồi đáp ngay lập tức một tin nhắn
+    văn bản; tính năng này sẵn có từ phiên bản Android 4.1. Nếu sử dụng các nút hành động bổ sung, bạn
+    cũng phải cung cấp tính năng của chúng trong một {@link android.app.Activity} trong ứng dụng của bạn; xem
+    phần <a href="#Compatibility">Xử lý tính tương thích</a> để biết thêm chi tiết.
+</p>
+<p>
+    Bên trong một {@link android.app.Notification}, bản thân hành động được định nghĩa bởi một
+    {@link android.app.PendingIntent} chứa một
+    {@link android.content.Intent} có chức năng bắt đầu
+    một {@link android.app.Activity} trong ứng dụng của bạn. Để liên kết
+    {@link android.app.PendingIntent} với một cử chỉ, hãy gọi phương pháp 
+    {@link android.support.v4.app.NotificationCompat.Builder} phù hợp. Ví dụ, nếu bạn muốn bắt đầu
+    {@link android.app.Activity} khi người dùng nhấp vào văn bản thông báo trong
+    ngăn kéo thông báo, bạn hãy thêm {@link android.app.PendingIntent} bằng cách gọi
+    {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()}.
+</p>
+<p>
+    Bắt đầu một {@link android.app.Activity} khi người dùng nhấp vào thông báo là kịch bản
+    hành động phổ biến nhất. Bạn cũng có thể bắt đầu một {@link android.app.Activity} khi người dùng
+    bỏ một thông báo. Trong phiên bản Android 4.1 và sau đó, bạn có thể bắt đầu một
+    {@link android.app.Activity} từ một nút hành động. Để tìm hiểu thêm, hãy đọc hướng dẫn tham khảo cho
+    {@link android.support.v4.app.NotificationCompat.Builder}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Priority">Mức ưu tiên của thông báo</h3>
+<p>
+    Nếu muốn, bạn có thể đặt mức ưu tiên của một thông báo. Mức ưu tiên đóng vai trò
+    như một gợi ý cho UI của thiết bị về cách thông báo sẽ được hiển thị.
+    Để đặt mức ưu tiên của một thông báo, hãy gọi {@link
+    android.support.v4.app.NotificationCompat.Builder#setPriority(int)
+    NotificationCompat.Builder.setPriority()} và chuyển trong một trong các hằng số mức ưu tiên {@link
+    android.support.v4.app.NotificationCompat}. Có năm mức ưu tiên,
+    dao động từ {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_MIN} (-2) đến {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_MAX} (2); nếu không được đặt,
+    mức ưu tiên mặc định thành {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_DEFAULT} (0).
+</p>
+<p> Để biết thông tin về việc đặt một mức ưu tiên phù hợp, hãy xem phần "Đặt
+    và quản lý mức ưu tiên của thông báo cho đúng" trong hướng dẫn Thiết kế <a href="{@docRoot}design/patterns/notifications.html">Thông báo</a>
+.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="SimpleNotification">Tạo một thông báo đơn giản</h3>
+<p>
+    Đoạn mã HTML sau minh họa một thông báo đơn giản, trong đó quy định một hoạt động sẽ mở khi
+    người dùng nhấp vào thông báo. Để ý rằng đoạn mã này sẽ tạo một đối tượng
+    {@link android.support.v4.app.TaskStackBuilder} và sử dụng nó để tạo
+    {@link android.app.PendingIntent} cho hành động. Kiểu mẫu này được giải thích chi tiết hơn
+   trong phần <a href="#NotificationResponse">
+    Giữ lại Điều hướng khi Bắt đầu một Hoạt động</a>:
+</p>
+<pre>
+NotificationCompat.Builder mBuilder =
+        new NotificationCompat.Builder(this)
+        .setSmallIcon(R.drawable.notification_icon)
+        .setContentTitle("My notification")
+        .setContentText("Hello World!");
+// Creates an explicit intent for an Activity in your app
+Intent resultIntent = new Intent(this, ResultActivity.class);
+
+// The stack builder object will contain an artificial back stack for the
+// started Activity.
+// This ensures that navigating backward from the Activity leads out of
+// your application to the Home screen.
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack for the Intent (but not the Intent itself)
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent that starts the Activity to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(
+            0,
+            PendingIntent.FLAG_UPDATE_CURRENT
+        );
+mBuilder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// mId allows you to update the notification later on.
+mNotificationManager.notify(mId, mBuilder.build());
+</pre>
+<p>Vậy là xong. Người dùng của bạn hiện đã được thông báo.</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ApplyStyle">Áp dụng bố trí mở rộng cho một thông báo</h3>
+<p>
+    Để có một thông báo xuất hiện trong một dạng xem mở rộng, trước tiên hãy tạo một đối tượng
+    {@link android.support.v4.app.NotificationCompat.Builder} với các tùy chọn dạng xem thông thường
+    mà bạn muốn. Tiếp theo, hãy gọi {@link android.support.v4.app.NotificationCompat.Builder#setStyle
+    Builder.setStyle()} với một đối tượng bố trí mở rộng làm tham đối.
+</p>
+<p>
+    Ghi nhớ rằng các thông báo mở rộng không sẵn có trên các nền tảng trước Android 4.1. Để
+    tìm hiểu về cách xử lý thông báo đối với nền tảng phiên bản Android 4.1 và trước đó, hãy đọc
+    phần <a href="#Compatibility">Xử lý tính tương thích</a>.
+</p>
+<p>
+    Ví dụ, đoạn mã HTML sau minh họa cách thay đổi thông báo được tạo
+    trong đoạn mã HTML trước để sử dụng bố trí mở rộng:
+</p>
+<pre>
+NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
+    .setSmallIcon(R.drawable.notification_icon)
+    .setContentTitle("Event tracker")
+    .setContentText("Events received")
+NotificationCompat.InboxStyle inboxStyle =
+        new NotificationCompat.InboxStyle();
+String[] events = new String[6];
+// Sets a title for the Inbox in expanded layout
+inboxStyle.setBigContentTitle("Event tracker details:");
+...
+// Moves events into the expanded layout
+for (int i=0; i &lt; events.length; i++) {
+
+    inboxStyle.addLine(events[i]);
+}
+// Moves the expanded layout object into the notification object.
+mBuilder.setStyle(inBoxStyle);
+...
+// Issue the notification here.
+</pre>
+
+<h3 id="Compatibility">Xử lý tính tương thích</h3>
+
+<p>
+    Không phải tất cả tính năng thông báo đều sẵn có đối với một phiên bản cụ thể, mặc dù
+    các phương pháp đặt chúng đều nằm trong lớp thư viện hỗ trợ
+    {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}.
+    Ví dụ, nút hành động phụ thuộc vào thông báo mở rộng chỉ xuất hiện trên phiên bản Android
+    4.1 trở lên, bởi bản thân thông báo mở rộng chỉ sẵn có trên phiên bản
+    Android 4.1 trở lên.
+</p>
+<p>
+    Để đảm bảo tính tương thích tốt nhất, hãy tạo thông báo bằng
+    {@link android.support.v4.app.NotificationCompat NotificationCompat} và các lớp con của nó,
+    đặc biệt là {@link android.support.v4.app.NotificationCompat.Builder
+    NotificationCompat.Builder}. Bên cạnh đó, hãy tuân theo tiến trình sau khi bạn triển khai một thông báo:
+</p>
+<ol>
+    <li>
+        Cung cấp tất cả tính năng thông báo cho tất cả người dùng, không phụ thuộc vào phiên bản
+        mà họ đang sử dụng. Để làm vậy, hãy xác minh rằng tất cả tính năng đều sẵn có từ một
+        {@link android.app.Activity} trong ứng dụng của bạn. Bạn có thể muốn thêm một
+        {@link android.app.Activity} mới để làm điều này.
+        <p>
+            Ví dụ, nếu bạn muốn sử dụng
+            {@link android.support.v4.app.NotificationCompat.Builder#addAction addAction()} để
+            cung cấp khả năng điều khiển dừng và bắt đầu phát lại phương tiện, trước tiên hãy triển khai khả năng
+            điều khiển này trong một {@link android.app.Activity} trong ứng dụng của bạn.
+        </p>
+    </li>
+    <li>
+        Đảm bảo rằng tất cả người dùng đều có thể tiếp cận với tính năng trong {@link android.app.Activity},
+        bằng cách cho nó khởi động khi người dùng nhấp vào thông báo. Để làm điều này,
+        hãy tạo một {@link android.app.PendingIntent}
+        cho {@link android.app.Activity}. Gọi
+        {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+        setContentIntent()} để thêm {@link android.app.PendingIntent} vào thông báo.
+    </li>
+    <li>
+        Bây giờ, hãy thêm các tính năng thông báo mở rộng mà bạn muốn sử dụng vào thông báo. Ghi nhớ
+        rằng bất kỳ tính năng nào mà bạn thêm cũng phải sẵn có trong {@link android.app.Activity}
+        mà bắt đầu khi người dùng nhấp vào thông báo.
+    </li>
+</ol>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Managing">Quản lý Thông báo</h2>
+<p>
+    Khi cần phát hành một thông báo nhiều lần cho cùng loại sự kiện, bạn
+    nên tránh tạo một thông báo hoàn toàn mới. Thay vào đó, bạn nên cân nhắc cập nhật
+    một thông báo trước đó, hoặc bằng cách thay đổi một vài giá trị hoặc bằng cách thêm vào nó, hoặc cả hai.
+</p>
+<p>
+    Ví dụ, Gmail thông báo với người dùng rằng e-mail mới đã đến bằng cách tăng số đếm
+    tin nhắn chưa đọc và bằng cách thêm một phần tóm tắt từng e-mail vào thông báo. Đây được gọi là
+    "xếp chồng" thông báo; nó được mô tả chi tiết hơn trong phần hướng dẫn Thiết kế
+    <a href="{@docRoot}design/patterns/notifications.html">Thông báo</a>.
+</p>
+<p class="note">
+    <strong>Lưu ý:</strong> Tính năng Gmail này yêu cầu bố trí mở rộng "hộp thư đến", đó là
+    một phần của tính năng thông báo mở rộng sẵn có bắt đầu từ Android 4.1.
+</p>
+<p>
+    Phần sau mô tả cách cập nhật thông báo và cả cách loại bỏ chúng.
+</p>
+<h3 id="Updating">Cập nhật thông báo</h3>
+<p>
+    Để thiết lập một thông báo để nó có thể được cập nhật, hãy phát hành nó cùng một ID thông báo bằng cách gọi
+    {@link android.app.NotificationManager#notify(int, android.app.Notification) NotificationManager.notify()}.
+    Để cập nhật thông báo sau khi bạn đã phát hành
+    nó, hãy cập nhật hoặc tạo một đối tượng {@link android.support.v4.app.NotificationCompat.Builder},
+    xây dựng một đối tượng {@link android.app.Notification} từ nó, và phát hành
+    {@link android.app.Notification} với cùng ID mà bạn đã sử dụng trước đó. Nếu
+    thông báo trước đó vẫn hiển thị, hệ thống sẽ cập nhật nó từ nội dung của
+    đối tượng {@link android.app.Notification}. Nếu thông báo trước đó đã bị bỏ đi, một
+    thông báo mới sẽ được tạo thay thế.
+</p>
+<p>
+    Đoạn mã HTML sau minh họa một thông báo được cập nhật để phản ánh
+    số sự kiện đã xảy ra. Nó xếp chồng thông báo, hiển thị một tóm tắt:
+</p>
+<pre>
+mNotificationManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Sets an ID for the notification, so it can be updated
+int notifyID = 1;
+mNotifyBuilder = new NotificationCompat.Builder(this)
+    .setContentTitle("New Message")
+    .setContentText("You've received new messages.")
+    .setSmallIcon(R.drawable.ic_notify_status)
+numMessages = 0;
+// Start of a loop that processes data and then notifies the user
+...
+    mNotifyBuilder.setContentText(currentText)
+        .setNumber(++numMessages);
+    // Because the ID remains unchanged, the existing notification is
+    // updated.
+    mNotificationManager.notify(
+            notifyID,
+            mNotifyBuilder.build());
+...
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Removing">Loại bỏ thông báo</h3>
+<p>
+    Thông báo vẫn hiển thị cho tới khi xảy ra một trong những điều sau:
+</p>
+<ul>
+    <li>
+        Người dùng bỏ từng thông báo một hoặc bỏ tất cả bằng cách sử dụng "Xóa Tất cả" (nếu
+        thông báo có thể xóa được).
+    </li>
+    <li>
+        Người dùng nhấp vào thông báo và bạn đã gọi
+        {@link android.support.v4.app.NotificationCompat.Builder#setAutoCancel setAutoCancel()} khi
+        tạo thông báo.
+    </li>
+    <li>
+        Bạn gọi {@link android.app.NotificationManager#cancel(int) cancel()} cho một ID thông báo
+        cụ thể. Phương pháp này cũng xóa các thông báo đang diễn ra.
+    </li>
+    <li>
+        Bạn gọi {@link android.app.NotificationManager#cancelAll() cancelAll()}, nó sẽ xóa
+        tất cả thông báo mà bạn đã phát hành trước đó.
+    </li>
+</ul>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="NotificationResponse">Giữ lại Điều hướng khi Bắt đầu một Hoạt động</h2>
+<p>
+    Khi bạn bắt đầu một {@link android.app.Activity} từ một thông báo, bạn phải giữ lại trải nghiệm điều hướng kỳ vọng
+    của người dùng. Nhấp vào <i>Quay lại</i> sẽ đưa người dùng quay lại thông qua
+    tiến trình làm việc bình thường của ứng dụng về màn hình Trang chủ, và nhấp vào <i>Gần đây</i> sẽ hiển thị
+    {@link android.app.Activity} như một tác vụ riêng. Để giữ lại trải nghiệm điều hướng, bạn
+    nên bắt đầu {@link android.app.Activity} trong một tác vụ mới. Cách bạn thiết lập
+    {@link android.app.PendingIntent} để cấp cho bạn một tác vụ mới sẽ phụ thuộc vào tính chất của
+    {@link android.app.Activity} mà bạn đang bắt đầu. Có hai tình huống thông thường:
+</p>
+<dl>
+    <dt>
+        Hoạt động thường xuyên
+    </dt>
+    <dd>
+        Bạn đang bắt đầu một {@link android.app.Activity} là một phần của tiến trình công việc
+        bình thường của ứng dụng. Trong tình huống này, hãy thiết lập {@link android.app.PendingIntent} để
+        bắt đầu một tác vụ mới, và cung cấp {@link android.app.PendingIntent} với một ngăn xếp
+        có chức năng tái tạo lại hành vi thông thường <i>Quay lại</i> của ứng dụng.
+        <p>
+            Thông báo từ ứng dụng Gmail thể hiện điều này. Khi bạn nhấp vào một thông báo
+            cho một thư e-mail đơn lẻ, bạn sẽ thấy chính thư đó. Chạm vào <b>Quay lại</b> sẽ đưa bạn
+           ngược lại qua Gmail về màn hình Trang chủ, giống như thể bạn đã vào Gmail từ
+            màn hình Trang chủ chứ không phải vào từ một thông báo.
+        </p>
+        <p>
+            Điều này xảy ra mà không phụ thuộc vào ứng dụng bạn đang ở trong khi chạm vào
+            thông báo. Ví dụ, nếu bạn đang vào Gmail để soạn thư, và bạn nhấp vào một
+            thông báo cho một e-mail đơn lẻ, bạn sẽ đến e-mail đó ngay lập tức. Chạm vào <i>Quay lại</i>
+            sẽ đưa bạn về hộp thư đến rồi tới màn hình Trang chủ, thay vì đưa bạn tới
+            thư mà bạn đang soạn.
+        </p>
+    </dd>
+    <dt>
+        Hoạt động đặc biệt
+    </dt>
+    <dd>
+        Người dùng chỉ thấy {@link android.app.Activity} này nếu nó được bắt đầu từ một thông báo.
+        Nghĩa là, {@link android.app.Activity} mở rộng thông báo bằng cách cung cấp
+        thông tin mà sẽ khó hiển thị trong chính thông báo đó. Đối với tình huống này,
+        hãy thiết lập {@link android.app.PendingIntent} để bắt đầu một tác vụ mới. Tuy nhiên, không cần tạo
+        một ngăn xếp vì {@link android.app.Activity} được bắt đầu không phải là một phần trong
+        tiến trình hoạt động của ứng dụng. Nhấp vào <i>Quay lại</i> sẽ vẫn đưa người dùng đến
+        màn hình Trang chủ.
+    </dd>
+</dl>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="DirectEntry">Thiết đặt một PendingIntent cho hoạt động thường xuyên</h3>
+<p>
+    Để thiết lập {@link android.app.PendingIntent} để bắt đầu một mục nhập trực tiếp
+    {@link android.app.Activity}, hãy làm theo những bước sau:
+</p>
+<ol>
+    <li>
+        Định nghĩa phân cấp {@link android.app.Activity} của ứng dụng của bạn trong bản kê khai.
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Thêm hỗ trợ cho phiên bản Android 4.0.3 và trước đó. Để làm điều này, hãy quy định mẹ của
+                {@link android.app.Activity} mà bạn đang bắt đầu bằng cách thêm phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+                làm con của
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>.
+                <p>
+                    Đối với phần tử này, hãy đặt
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a>="android.support.PARENT_ACTIVITY"</code>.
+                    Đặt
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#val">android:value</a>="&lt;parent_activity_name&gt;"</code>
+                    trong đó <code>&lt;parent_activity_name&gt;</code> là giá trị của
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a></code>
+                    đối với phần tử
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+                    mẹ. Xem ví dụ trong XML sau.
+                </p>
+            </li>
+            <li>
+                Cũng thêm hỗ trợ cho phiên bản Android 4.1 và sau đó. Để làm điều này, hãy thêm thuộc tính 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#parent">android:parentActivityName</a></code>
+                vào phần tử 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+                của {@link android.app.Activity} mà bạn đang bắt đầu.
+            </li>
+        </ol>
+        <p>
+            XML cuối cùng sẽ trông như sau:
+        </p>
+<pre>
+&lt;activity
+    android:name=".MainActivity"
+    android:label="&#64;string/app_name" &gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+&lt;activity
+    android:name=".ResultActivity"
+    android:parentActivityName=".MainActivity"&gt;
+    &lt;meta-data
+        android:name="android.support.PARENT_ACTIVITY"
+        android:value=".MainActivity"/&gt;
+&lt;/activity&gt;
+</pre>
+    </li>
+    <li>
+        Tạo một ngăn xếp dựa trên {@link android.content.Intent} mà bắt đầu
+        {@link android.app.Activity}:
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Tạo {@link android.content.Intent} để bắt đầu {@link android.app.Activity}.
+            </li>
+            <li>
+                Tạo một bộ dựng chồng bằng cách gọi {@link android.app.TaskStackBuilder#create
+                TaskStackBuilder.create()}.
+            </li>
+            <li>
+                Thêm ngăn xếp vào bộ dựng ngăn xếp bằng cách gọi
+                {@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}.
+                Đối với mỗi {@link android.app.Activity} trong phân cấp mà bạn đã định nghĩa trong
+                bản kê khai, ngăn xếp chứa một đối tượng {@link android.content.Intent} mà
+                sẽ khởi động {@link android.app.Activity}. Phương pháp này cũng thêm cờ có chức năng bắt đầu
+                chồng trong một tác vụ mới.
+                <p class="note">
+                    <strong>Lưu ý:</strong> Mặc dù tham đối đến
+                    {@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}
+                    là một tham chiếu tới {@link android.app.Activity} được bắt đầu, phương pháp gọi
+                    không thêm {@link android.content.Intent} có chức năng bắt đầu
+                    {@link android.app.Activity}. Thay vào đó, nó được xử lý ở bước tiếp theo.
+                </p>
+            </li>
+            <li>
+                Thêm {@link android.content.Intent} có chức năng bắt đầu {@link android.app.Activity}
+                từ thông báo bằng cách gọi
+                {@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}.
+                Chuyển {@link android.content.Intent} mà bạn đã tạo ở bước đầu tiên làm
+                tham đối tới
+                {@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}.
+            </li>
+            <li>
+                Nếu bạn cần, hãy thêm các tham đối tới các đối tượng {@link android.content.Intent} trên chồng
+                bằng cách gọi {@link android.support.v4.app.TaskStackBuilder#editIntentAt
+                TaskStackBuilder.editIntentAt()}. Đôi khi cần phải đảm bảo rằng
+                {@link android.app.Activity} mục tiêu sẽ hiển thị dữ liệu có ý nghĩa khi người dùng điều hướng
+               tới nó bằng cách sử dụng <i>Quay lại</i>.
+            </li>
+            <li>
+                Nhận một {@link android.app.PendingIntent} cho ngăn xếp này bằng cách gọi
+                {@link android.support.v4.app.TaskStackBuilder#getPendingIntent getPendingIntent()}.
+                Sau đó, bạn có thể sử dụng {@link android.app.PendingIntent} này làm tham đối tới
+                {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+                setContentIntent()}.
+            </li>
+        </ol>
+     </li>
+</ol>
+<p>
+    Đoạn mã HTML sau minh họa tiến trình:
+</p>
+<pre>
+...
+Intent resultIntent = new Intent(this, ResultActivity.class);
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+// Gets a PendingIntent containing the entire back stack
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
+...
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+builder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mNotificationManager.notify(id, builder.build());
+</pre>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ExtendedNotification">Thiết đặt một PendingIntent cho hoạt động đặc biệt</h3>
+<p>
+    Phần sau mô tả cách thiết lập một
+    {@link android.app.PendingIntent} cho hoạt động đặc biệt.
+</p>
+<p>
+    Một {@link android.app.Activity} đặc biệt không cần ngăn xếp, vì thế bạn không phải
+    định nghĩa phân cấp {@link android.app.Activity} của nó trong bản kê khai, và bạn không phải
+    gọi
+    {@link android.support.v4.app.TaskStackBuilder#addParentStack  addParentStack()} để xây dựng một
+    ngăn xếp. Thay vào đó, hãy sử dụng bản kê khai để thiết lập các tùy chọn tác vụ {@link android.app.Activity},
+    và tạo {@link android.app.PendingIntent} bằng cách gọi
+    {@link android.app.PendingIntent#getActivity getActivity()}:
+</p>
+<ol>
+    <li>
+        Trong bản kê khai của mình, hãy thêm các thuộc tính sau vào phần tử
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+        cho {@link android.app.Activity}
+        <dl>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">android:name</a>="<i>activityclass</i>"</code>
+            </dt>
+            <dd>
+                Tên lớp được xác định đầy đủ của hoạt động.
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">android:taskAffinity</a>=""</code>
+            </dt>
+            <dd>
+                Kết hợp với cờ
+                {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK}
+                mà bạn đặt trong mã, điều này đảm bảo rằng {@link android.app.Activity} này không
+                đi đến tác vụ mặc định của ứng dụng. Bất kỳ tác vụ hiện tại nào mà có
+                bố trí mặc định của ứng dụng đều không bị ảnh hưởng.
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">android:excludeFromRecents</a>="true"</code>
+            </dt>
+            <dd>
+                Loại bỏ tác vụ mới khỏi <i>Gần đây</i>, sao cho người dùng không thể vô tình
+                điều hướng quay lại nó.
+            </dd>
+        </dl>
+        <p>
+            Đoạn mã HTML này thể hiện phần tử:
+        </p>
+<pre>
+&lt;activity
+    android:name=".ResultActivity"
+...
+    android:launchMode="singleTask"
+    android:taskAffinity=""
+    android:excludeFromRecents="true"&gt;
+&lt;/activity&gt;
+...
+</pre>
+    </li>
+    <li>
+        Xây dựng và phát hành thông báo:
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                Tạo một {@link android.content.Intent} có chức năng bắt đầu
+                {@link android.app.Activity}.
+            </li>
+            <li>
+                Đặt {@link android.app.Activity} để bắt đầu trong một tác vụ mới, trống bằng cách gọi
+                {@link android.content.Intent#setFlags setFlags()} với các cờ
+                {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK}
+                và
+                {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TASK FLAG_ACTIVITY_CLEAR_TASK}.
+            </li>
+            <li>
+                Đặt bất kỳ tùy chọn nào khác mà bạn cần cho {@link android.content.Intent}.
+            </li>
+            <li>
+                Tạo một {@link android.app.PendingIntent} từ {@link android.content.Intent}
+                bằng cách gọi {@link android.app.PendingIntent#getActivity getActivity()}.
+                Sau đó, bạn có thể sử dụng {@link android.app.PendingIntent} này làm tham đối tới
+                {@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+                setContentIntent()}.
+            </li>
+        </ol>
+    <p>
+        Đoạn mã HTML sau minh họa tiến trình:
+    </p>
+<pre>
+// Instantiate a Builder object.
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+// Creates an Intent for the Activity
+Intent notifyIntent =
+        new Intent(this, ResultActivity.class);
+// Sets the Activity to start in a new, empty task
+notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
+                        | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+// Creates the PendingIntent
+PendingIntent notifyPendingIntent =
+        PendingIntent.getActivity(
+        this,
+        0,
+        notifyIntent,
+        PendingIntent.FLAG_UPDATE_CURRENT
+);
+
+// Puts the PendingIntent into the notification builder
+builder.setContentIntent(notifyPendingIntent);
+// Notifications are issued by sending them to the
+// NotificationManager system service.
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Builds an anonymous Notification object from the builder, and
+// passes it to the NotificationManager
+mNotificationManager.notify(id, builder.build());
+</pre>
+    </li>
+</ol>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Progress">Hiển thị Tiến độ trong một Thông báo</h2>
+<p>
+    Thông báo có thể bao gồm một chỉ báo tiến độ dạng hoạt ảnh để cho người dùng thấy trạng thái
+    của một thao tác đang diễn ra. Nếu bạn có thể ước lượng thao tác mất bao lâu và nó được
+    được hoàn thành bao nhiêu vào bất cứ lúc nào, hãy sử dụng hình thức "xác định" của chỉ báo
+    (thanh tiến độ). Nếu bạn không thể ước lượng thời lượng của thao tác, hãy sử dụng hình thức
+    "không xác định" của chỉ báo (chỉ báo hoạt động).
+</p>
+<p>
+    Chỉ báo tiến độ được hiển thị bằng triển khai lớp
+    {@link android.widget.ProgressBar} của nền tảng.
+</p>
+<p>
+    Để sử dụng chỉ báo tiến độ trên các nền tảng bắt đầu từ Android 4.0, hãy gọi
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}. Đối
+    với các phiên bản trước đây, bạn phải tạo bố trí thông báo tùy chỉnh của chính mình
+    trong đó chứa một dạng xem {@link android.widget.ProgressBar}.
+</p>
+<p>
+    Phần sau đây mô tả cách hiển thị tiến độ trong một thông báo bằng cách sử dụng
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="FixedProgress">Hiển thị một chỉ báo tiến độ thời lượng cố định</h3>
+<p>
+    Để hiển thị một thanh tiến độ xác định, hãy thêm thanh vào thông báo của bạn bằng cách gọi
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress
+    setProgress(max, progress, false)} rồi phát hành thông báo. Khi thông báo của bạn tiến hành,
+    tăng dần<code>progress</code>, và cập nhật thông báo. Khi kết thúc thao tác,
+    <code>progress</code> sẽ bằng <code>max</code>. Một cách thông thường để gọi
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}
+    đó là đặt <code>max</code> thành 100 rồi tăng dần <code>progress</code> dưới dạng giá trị
+    "phần trăm hoàn thành" cho thao tác.
+</p>
+<p>
+    Bạn có thể hoặc để thanh tiến độ hiển thị khi nào thì thao tác hoàn thành, hoặc loại bỏ nó. Dù
+    trong trường hợp nào hãy nhớ cập nhật văn bản thông báo để hiển thị thao tác hoàn tất.
+    Để loại bỏ thanh tiến độ, hãy gọi
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress
+    setProgress(0, 0, false)}. Ví dụ:
+</p>
+<pre>
+...
+mNotifyManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mBuilder = new NotificationCompat.Builder(this);
+mBuilder.setContentTitle("Picture Download")
+    .setContentText("Download in progress")
+    .setSmallIcon(R.drawable.ic_notification);
+// Start a lengthy operation in a background thread
+new Thread(
+    new Runnable() {
+        &#64;Override
+        public void run() {
+            int incr;
+            // Do the "lengthy" operation 20 times
+            for (incr = 0; incr &lt;= 100; incr+=5) {
+                    // Sets the progress indicator to a max value, the
+                    // current completion percentage, and "determinate"
+                    // state
+                    mBuilder.setProgress(100, incr, false);
+                    // Displays the progress bar for the first time.
+                    mNotifyManager.notify(0, mBuilder.build());
+                        // Sleeps the thread, simulating an operation
+                        // that takes time
+                        try {
+                            // Sleep for 5 seconds
+                            Thread.sleep(5*1000);
+                        } catch (InterruptedException e) {
+                            Log.d(TAG, "sleep failure");
+                        }
+            }
+            // When the loop is finished, updates the notification
+            mBuilder.setContentText("Download complete")
+            // Removes the progress bar
+                    .setProgress(0,0,false);
+            mNotifyManager.notify(ID, mBuilder.build());
+        }
+    }
+// Starts the thread by calling the run() method in its Runnable
+).start();
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ActivityIndicator">Hiển thị một chỉ báo hoạt động liên tục</h3>
+<p>
+    Để hiển thị một chỉ báo hoạt động không xác định, hãy thêm nó vào thông báo của bạn bằng
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, true)}
+    (hai tham đối đầu tiên bị bỏ qua), và phát hành thông báo. Kết quả là một chỉ báo
+    mà có cùng kiểu như một thanh tiến độ, khác ở chỗ hoạt ảnh của nó đang diễn ra.
+</p>
+<p>
+    Phát hành thông báo khi bắt đầu thao tác. Hoạt ảnh sẽ chạy tới khi bạn
+    sửa đổi thông báo của mình. Khi thao tác hoàn thành, hãy gọi
+    {@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, false)}
+    và rồi cập nhật thông báo để loại bỏ chỉ báo hoạt động.
+    Luôn làm điều này; nếu không, hoạt ảnh sẽ chạy ngay cả khi thao tác đã hoàn thành. Đồng thời
+   hãy nhớ thay đổi văn bản thông báo để biểu thị thao tác hoàn tất.
+</p>
+<p>
+    Để xem chỉ báo hoạt động vận hành như thế nào, hãy tham khảo đoạn mã HTML trước. Định vị các dòng sau:
+</p>
+<pre>
+// Sets the progress indicator to a max value, the current completion
+// percentage, and "determinate" state
+mBuilder.setProgress(100, incr, false);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+<p>
+    Thay thế các dòng bạn đã tìm thấy bằng các dòng sau:
+</p>
+<pre>
+ // Sets an activity indicator for an operation of indeterminate length
+mBuilder.setProgress(0, 0, true);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+
+<h2 id="metadata">Siêu dữ liệu Thông báo</h2>
+
+<p>Thông báo có thể được sắp xếp theo siêu dữ liệu mà bạn gán cho bằng các
+phương pháp {@link android.support.v4.app.NotificationCompat.Builder} sau:</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setCategory(java.lang.String) setCategory()}
+    thông báo hệ thống cách xử lý thông báo ứng dụng của bạn khi thiết bị đang trong chế độ Ưu tiên
+    (ví dụ, nếu thông báo của bạn biểu diễn một cuộc gọi đến, tin nhắn tức thời hoặc báo thức).</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setPriority(int) setPriority()} khiến
+    thông báo với trường mức ưu tiên được đặt thành {@code PRIORITY_MAX} hoặc {@code PRIORITY_HIGH} xuất hiện
+    trong một cửa sổ nổi nhỏ nếu thông báo cũng có âm thanh hoặc rung.</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#addPerson(java.lang.String) addPerson()}
+    cho phép bạn thêm một danh sách người vào thông báo. Ứng dụng của bạn có thể sử dụng tín hiệu này cho
+    hệ thống mà nó sẽ nhóm cùng với thông báo từ những người được quy định, hoặc xếp hạng thông báo
+    từ những người này là quan trọng hơn.</li>
+</ul>
+
+<div class="figure" style="width:230px">
+  <img src="{@docRoot}images/ui/notifications/heads-up.png" alt="" width="" height="" id="figure3" />
+  <p class="img-caption">
+    <strong>Hình 3.</strong> Hoạt động toàn màn hình thể hiện một thông báo cảnh báo
+  </p>
+</div>
+
+<h2 id="Heads-up">Thông báo Cảnh báo</h2>
+
+<p>Với Android 5.0 (API mức 21), thông báo có thể xuất hiện trong một cửa sổ nổi nhỏ
+(còn gọi là <em>thông báo cảnh báo</em>) khi thiết bị hiện hoạt
+(tức là thiết bị được mở khóa và màn hình của nó đang bật). Những thông báo
+này có vẻ tương tự như dạng rút gọn thông báo của bạn, chỉ khác là
+thông báo cảnh báo cũng hiển thị các nút hành động. Người dùng có thể hành động trên đó, hoặc bỏ,
+một thông báo cảnh báo mà không phải rời khỏi ứng dụng hiện tại.</p>
+
+<p>Các ví dụ về điều kiện có thể kích khởi thông báo cảnh báo bao gồm:</p>
+
+<ul>
+  <li>Hoạt động của người dùng đang trong chế độ toàn màn hình (ứng dụng sử dụng
+{@link android.app.Notification#fullScreenIntent}), hoặc</li>
+  <li>Thông báo có mức ưu tiên cao và sử dụng nhạc chuông hoặc
+    rung</li>
+</ul>
+
+<h2 id="lockscreenNotification">Thông báo Màn hình Khóa</h2>
+
+<p>Với việc phát hành Android 5.0 (API mức 21), giờ đây thông báo có thể xuất hiện trên màn hình
+khóa. Ứng dụng của bạn có thể sử dụng tính năng này để cung cấp các chức năng điều khiển phát lại phương tiện và các hành động
+thông dụng khác. Người dùng có thể chọn thông qua Cài đặt để xem có hiển thị thông báo trên màn hình khóa không, và
+bạn có thể chỉ định xem thông báo từ ứng dụng của mình có hiển thị trên màn hình khóa không.</p>
+
+<h3 id="visibility">Thiết đặt Khả năng Hiển thị</h3>
+
+<p>Ứng dụng của bạn có thể điều khiển mức chi tiết có thể nhìn thấy được trong thông báo được hiển thị trên một
+màn hình khóa bảo mật. Bạn gọi {@link android.support.v4.app.NotificationCompat.Builder#setVisibility(int) setVisibility()}
+và quy định một trong những giá trị sau:</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC} hiển thị đầy đủ nội dung của
+    thông báo.</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_SECRET} không hiển thị bất kỳ phần nào của
+    thông báo này trên màn hình khóa.</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE} hiển thị thông tin cơ bản,
+    chẳng hạn như biểu tượng và tiêu đề nội dung của thông báo, nhưng ẩn nội dung đầy đủ của thông báo.</li>
+</ul>
+
+<p>Khi {@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE} được đặt, bạn cũng có thể
+cung cấp một phiên bản thay thế cho nội dung thông báo, trong đó ẩn một số chi tiết nhất định. Ví dụ,
+một ứng dụng SMS có thể hiển thị một thông báo hiển thị <em>Bạn có 3 tin nhắn văn bản mới</em>, nhưng ẩn
+nội dung của tin nhắn và người gửi. Để cung cấp thông báo thay thế này, trước tiên hãy tạo thông báo
+thay thế bằng cách sử dụng {@link android.support.v4.app.NotificationCompat.Builder}. Khi bạn tạo
+đối tượng thông báo riêng tư, hãy đính kèm thông báo thay thế cho nó thông qua phương pháp
+{@link android.support.v4.app.NotificationCompat.Builder#setPublicVersion(android.app.Notification) setPublicVersion()}
+.</p>
+
+<h3 id="controllingMedia">Điều khiển Phát lại Phương tiện trên Màn hình Khóa</h3>
+
+<p>Trong Android 5.0 (API mức 21) màn hình khóa không còn hiển thị điều khiển phương tiện
+dựa trên {@link android.media.RemoteControlClient}, điều mà nay đã bị bỏ đi. Thay vào đó, hãy sử dụng mẫu
+{@link android.app.Notification.MediaStyle} với phương pháp
+{@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()}
+, có chức năng chuyển hành động thành các biểu tượng có thể nhấp.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Mẫu và phương pháp {@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()}
+không nằm trong thư viện hỗ trợ, vì thế những tính năng này chỉ chạy trong phiên bản Android 5.0 trở lên
+.</p>
+
+<p>Để hiển thị điều khiển phát lại phương tiện trên màn hình khóa trong Android 5.0, hãy đặt mức độ nhìn thấy
+thành {@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC}, như mô tả bên trên. Sau đó thêm
+các hành động và đặt mẫu {@link android.app.Notification.MediaStyle}, như được mô tả trong
+đoạn mã mẫu sau:</p>
+
+<pre>
+Notification notification = new Notification.Builder(context)
+    // Show controls on lock screen even when user hides sensitive content.
+    .setVisibility(Notification.VISIBILITY_PUBLIC)
+    .setSmallIcon(R.drawable.ic_stat_player)
+    // Add media control buttons that invoke intents in your media service
+    .addAction(R.drawable.ic_prev, "Previous", prevPendingIntent) // #0
+    .addAction(R.drawable.ic_pause, "Pause", pausePendingIntent)  // #1
+    .addAction(R.drawable.ic_next, "Next", nextPendingIntent)     // #2
+    // Apply the media style template
+    .setStyle(new Notification.MediaStyle()
+    .setShowActionsInCompactView(1 /* #1: pause button */)
+    .setMediaSession(mMediaSession.getSessionToken())
+    .setContentTitle("Wonderful music")
+    .setContentText("My Awesome Band")
+    .setLargeIcon(albumArtBitmap)
+    .build();
+</pre>
+
+<p class="note"><strong>Lưu ý:</strong> Việc rút bỏ {@link android.media.RemoteControlClient}
+còn có nhiều ý nghĩa khác đối với việc điều khiển phương tiện. Xem phần
+<a href="{@docRoot}about/versions/android-5.0.html#MediaPlaybackControl">Điều khiển Phát lại Phương tiện</a>
+để biết thêm thông tin về các API mới đối với quản lý phiên phương tiện và điều khiển phát lại này.</p>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="CustomNotification">Bố trí Thông báo Tùy chỉnh</h2>
+<p>
+    Khuôn khổ thông báo cho phép bạn định nghĩa một bố trí thông báo tùy chỉnh, nó
+    định nghĩa hình thức của thông báo trong một đối tượng {@link android.widget.RemoteViews}.
+    Thông báo có bố trí tùy chỉnh tương tự như thông báo thường, nhưng chúng được dựa trên
+    {@link android.widget.RemoteViews} được định nghĩa trong một tệp bố trí XML.
+</p>
+<p>
+    Chiều cao sẵn có cho bố trí thông báo tùy chỉnh phụ thuộc vào dạng xem thông báo. Bố trí dạng xem bình thường
+    được giới hạn ở 64 dp, và bố trí dạng xem mở rộng được giới hạn ở 256 dp.
+</p>
+<p>
+    Để định nghĩa một bố trí thông báo tùy chỉnh, hãy bắt đầu bằng việc khởi tạo đối tượng
+    {@link android.widget.RemoteViews} để bung một tệp bố trí XML. Sau đó,
+    thay vì gọi các phương pháp như
+    {@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()},
+    hãy gọi {@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}. Để đặt
+    chi tiết nội dung trong thông báo tùy chỉnh, hãy sử dụng các phương pháp
+    {@link android.widget.RemoteViews} để đặt giá trị của các tập con của dạng xem:
+</p>
+<ol>
+    <li>
+        Tạo một bố trí XML cho thông báo trong một tệp riêng. Bạn có thể sử dụng bất kỳ tên tệp nào
+        mà bạn muốn, nhưng phải sử dụng phần mở rộng <code>.xml</code>
+    </li>
+    <li>
+        Trong ứng dụng của bạn, hãy sử dụng các phương pháp {@link android.widget.RemoteViews} để định nghĩa các biểu tượng và văn bản
+        của thông báo của bạn. Đặt đối tượng {@link android.widget.RemoteViews} này vào
+        {@link android.support.v4.app.NotificationCompat.Builder} của bạn bằng cách gọi
+        {@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}. Tránh
+        đặt một {@link android.graphics.drawable.Drawable} nền trên đối tượng
+        {@link android.widget.RemoteViews} của bạn, vì màu văn bản của bạn có thể không đọc được.
+    </li>
+</ol>
+<p>
+    Lớp {@link android.widget.RemoteViews} cũng bao gồm các phương pháp mà bạn có thể sử dụng để dễ dạng
+    thêm một {@link android.widget.Chronometer} hoặc {@link android.widget.ProgressBar}
+    vào bố trí thông báo của bạn. Để biết thêm thông tin về việc tạo bố trí tùy chỉnh cho thông báo
+    của mình, hãy tham khảo tài liệu tham khảo {@link android.widget.RemoteViews}.
+</p>
+<p class="caution">
+    <strong>Chú ý:</strong> Khi bạn sử dụng một bố trí thông báo tùy chỉnh, hãy đặc biệt cẩn thận
+    để đảm bảo rằng bố trí tùy chỉnh của bạn có tác dụng với các hướng và độ phân giải thiết bị khác nhau. Trong khi
+    lời khuyên này áp dụng cho tất cả bố trí Dạng xem, nó đặc biệt quan trọng đối với thông báo
+    vì khoảng trống trong ngăn kéo thông báo rất hạn chế. Không được tạo bố trí tùy chỉnh của bạn quá
+    phức tạp và đảm bảo kiểm tra nó trong các cấu hình khác nhau.
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h4>Sử dụng các tài nguyên kiểu cho văn bản thông báo tùy chỉnh</h4>
+<p>
+    Luôn sử dụng tài nguyên kiểu cho văn bản của một thông báo tùy chỉnh. Màu nền của thông báo
+    có thể thay đổi giữa các thiết bị và phiên bản khác nhau, và việc sử dụng tài nguyên kiểu
+    sẽ giúp bạn khắc phục điều này. Bắt đầu từ Android 2.3, hệ thống đã định nghĩa kiểu cho
+    văn bản bố trí thông báo chuẩn. Nếu bạn sử dụng cùng kiểu trong các ứng dụng nhắm đến phiên bản Android
+    2.3 hoặc cao hơn, bạn sẽ phải đảm bảo rằng văn bản của bạn nhìn thấy được trên nền hiển thị.
+</p>
diff --git a/docs/html-intl/intl/vi/guide/topics/ui/overview.jd b/docs/html-intl/intl/vi/guide/topics/ui/overview.jd
new file mode 100644
index 0000000..7bd4552
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/ui/overview.jd
@@ -0,0 +1,71 @@
+page.title=Tổng quan về UI
+@jd:body
+
+
+<p>Tất cả phần tử giao diện người dùng trong một ứng dụng Android đều được xây dựng bằng cách sử dụng các đối tượng {@link android.view.View} và
+{@link android.view.ViewGroup}. {@link android.view.View} là một đối tượng có chức năng vẽ
+thứ gì đó trên màn hình mà người dùng có thể tương tác với. {@link android.view.ViewGroup} là một đối tượng
+có chức năng giữ các đối tượng {@link android.view.View} (và {@link android.view.ViewGroup}) khác
+để định nghĩa bố trí của giao diện.</p>
+
+<p>Android cung cấp một bộ sưu tập cả lớp con {@link android.view.View} và {@link
+android.view.ViewGroup} cung cấp cho bạn các cách điều khiển nhập liệu thông dụng (chẳng hạn như nút và
+trường văn bản) và các mô hình bố trí khác nhau (chẳng hạn như bố trí tuyến tính hoặc tương đối).</p>
+
+
+<h2 id="Layout">Bố trí Giao diện Người dùng</h2>
+
+<p>Giao diện người dùng của từng thành phần trong ứng dụng của bạn được định nghĩa bằng cách sử dụng một phân cấp của các đối tượng {@link
+android.view.View} và {@link android.view.ViewGroup} như minh họa trong hình 1. Mỗi nhóm dạng xem
+là một bộ chứa vô hình có chức năng tổ chức các dạng xem con, trong khi dạng xem con có thể là
+điều khiển nhập liệu hoặc các widget khác để
+vẽ một phần nào đó của UI. Cây phân cấp này có thể đơn giản hoặc phức tạp như nhu cầu
+của bạn (nhưng đơn giản sẽ tốt cho hiệu năng).</p>
+
+<img src="{@docRoot}images/viewgroup.png" alt="" />
+<p class="img-caption"><strong>Hình 1.</strong> Minh họa một phân cấp dạng xem có chức năng định nghĩa một
+bố trí UI.</p>
+
+<p>Để khai báo bố trí của mình, bạn có thể khởi tạo các đối tượng {@link android.view.View} trong mã và bắt đầu
+xây dựng một cây, nhưng cách dễ nhất và hiệu quả nhất để định nghĩa bố trí của bạn đó là bằng một tệp XML.
+XML cung cấp một cấu trúc mà người dùng có thể đọc được cho bố trí, tương tự như HTML.</p>
+
+<p>Tên của phần tử XML đối với một dạng xem tương ứng với lớp Android mà nó biểu diễn. Vì thế một phần tử
+<code>&lt;TextView&gt;</code> tạo ra một widget {@link android.widget.TextView} trong UI của bạn,
+và một phần tử <code>&lt;LinearLayout&gt;</code> tạo ra một nhóm dạng xem {@link android.widget.LinearLayout}
+. </p>
+
+<p>Ví dụ, một bố trí thẳng đứng đơn giản với dạng xem văn bản và nút trông như sau:</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="fill_parent" 
+              android:layout_height="fill_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>Khi bạn tải một tài nguyên bố trí trong ứng dụng của mình, Android khởi tạo từng nút của bố trí vào một
+đối tượng thời gian chạy mà bạn có thể sử dụng để định nghĩa các hành vi bổ sung, truy vấn trạng thái của đối tượng hoặc sửa đổi
+bố trí.</p>
+
+<p>Để xem hướng dẫn đầy đủ về tạo bố trí UI, hãy xem phần <a href="declaring-layout.html">Bố trí
+XML</a>.
+
+  
+<h2 id="UIComponents">Thành phần Giao diện Người dùng</h2>
+
+<p>Bạn không phải xây dựng tất cả UI của mình bằng cách sử dụng các đối tượng {@link android.view.View} và {@link
+android.view.ViewGroup}. Android cung cấp một vài thành phần ứng dụng đưa ra một
+bố trí UI chuẩn mà bạn chỉ cần định nghĩa nội dung cho nó. Mỗi thành phần UI như vậy
+đều có một bộ API duy nhất được mô tả trong các tài liệu tương ứng, chẳng hạn như <a href="{@docRoot}guide/topics/ui/actionbar.html">Thanh Hành động</a>, <a href="{@docRoot}guide/topics/ui/dialogs.html">Hộp thoại</a> và <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Thông báo Trạng thái</a>.</p>
+
+
diff --git a/docs/html-intl/intl/vi/guide/topics/ui/settings.jd b/docs/html-intl/intl/vi/guide/topics/ui/settings.jd
new file mode 100644
index 0000000..8e19b97
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/ui/settings.jd
@@ -0,0 +1,1202 @@
+page.title=Thiết đặt
+page.tags=preference,preferenceactivity,preferencefragment
+
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>Trong tài liệu này</h2>
+<ol>
+  <li><a href="#Overview">Tổng quan</a>
+    <ol>
+      <li><a href="#SettingTypes">Tùy chọn</a></li>
+    </ol>
+  </li>
+  <li><a href="#DefiningPrefs">Định nghĩa Tùy chọn trong XML</a>
+    <ol>
+      <li><a href="#Groups">Tạo nhóm thiết đặt</a></li>
+      <li><a href="#Intents">Sử dụng ý định</a></li>
+    </ol>
+  </li>
+  <li><a href="#Activity">Tạo một Hoạt động Tùy chọn</a></li>
+  <li><a href="#Fragment">Sử dụng Phân đoạn Tùy chọn</a></li>
+  <li><a href="#Defaults">Thiết đặt Giá trị Mặc định</a></li>
+  <li><a href="#PreferenceHeaders">Sử dụng Tiêu đề Tùy chọn</a>
+    <ol>
+      <li><a href="#CreateHeaders">Tạo tệp tiêu đề</a></li>
+      <li><a href="#DisplayHeaders">Hiển thị tiêu đề</a></li>
+      <li><a href="#BackCompatHeaders">Hỗ trợ các phiên bản cũ hơn với tiêu đề tùy chọn</a></li>
+    </ol>
+  </li>
+  <li><a href="#ReadingPrefs">Đọc Tùy chọn</a>
+    <ol>
+      <li><a href="#Listening">Theo dõi thay đổi tùy chọn</a></li>
+    </ol>
+  </li>
+  <li><a href="#NetworkUsage">Quản lý Sử dụng Mạng</a></li>
+  <li><a href="#Custom">Xây dựng một Thiết đặt Tùy chỉnh</a>
+    <ol>
+      <li><a href="#CustomSelected">Quy định một giao diện người dùng</a></li>
+      <li><a href="#CustomSave">Lưu giá trị của thiết đặt</a></li>
+      <li><a href="#CustomInitialize">Khởi tạo giá trị hiện tại</a></li>
+      <li><a href="#CustomDefault">Cung cấp một giá trị mặc định</a></li>
+      <li><a href="#CustomSaveState">Lưu và khôi phục trạng thái của Tùy chọn</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Lớp khóa</h2>
+<ol>
+  <li>{@link android.preference.Preference}</li>
+  <li>{@link android.preference.PreferenceActivity}</li>
+  <li>{@link android.preference.PreferenceFragment}</li>
+</ol>
+
+
+<h2>Xem thêm</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/settings.html">Hướng dẫn thiết kế Thiết đặt</a></li>
+</ol>
+</div>
+</div>
+
+
+
+
+<p>Ứng dụng thường bao gồm những thiết đặt cho phép người dùng sửa đổi các tính năng và hành vi của ứng dụng. Ví
+dụ, một số ứng dụng cho phép người dùng quy định xem thông báo có được kích hoạt hay không hoặc quy định tần suất
+ứng dụng sẽ đồng bộ dữ liệu với đám mây.</p>
+
+<p>Nếu muốn cung cấp thiết đặt cho ứng dụng của mình, bạn nên sử dụng
+các API {@link android.preference.Preference} của Android để xây dựng một giao diện phù hợp với
+trải nghiệm người dùng trong các ứng dụng Android khác (bao gồm thiết đặt hệ thống). Tài liệu này mô tả
+cách xây dựng thiết đặt ứng dụng của bạn bằng cách sử dụng các API {@link android.preference.Preference}.</p>
+
+<div class="note design">
+<p><strong>Thiết kế Thiết đặt</strong></p>
+  <p>Để biết thông tin về cách thiết kế thiết đặt của bạn, hãy đọc hướng dẫn thiết kế <a href="{@docRoot}design/patterns/settings.html">Thiết đặt</a>.</p>
+</div>
+
+
+<img src="{@docRoot}images/ui/settings/settings.png" alt="" width="435" />
+<p class="img-caption"><strong>Hình 1.</strong> Ảnh chụp màn hình từ thiết đặt của ứng dụng
+Messaging trên Android. Chọn một mục được định nghĩa bởi một {@link android.preference.Preference} 
+sẽ mở ra một giao diện để thay đổi thiết đặt.</p>
+
+
+
+
+<h2 id="Overview">Tổng quan</h2>
+
+<p>Thay vì sử dụng các đối tượng {@link android.view.View} để xây dựng giao diện người dùng, thiết đặt được
+xây dựng bằng cách sử dụng các lớp con khác nhau của lớp {@link android.preference.Preference} mà bạn
+khai báo trong một tệp XML.</p>
+
+<p>Đối tượng {@link android.preference.Preference} là một khối dựng cho một thiết đặt
+đơn lẻ. Mỗi {@link android.preference.Preference} xuất hiện như một mục trong một danh sách và cung cấp
+UI phù hợp để người dùng sửa đổi thiết đặt. Ví dụ, một {@link
+android.preference.CheckBoxPreference} tạo một mục danh sách hiển thị một hộp kiểm, và một {@link
+android.preference.ListPreference} tạo một mục mở ra một hộp thoại với danh sách lựa chọn.</p>
+
+<p>Mỗi {@link android.preference.Preference} mà bạn thêm có một cặp khóa-giá trị tương ứng mà
+hệ thống sử dụng để lưu thiết đặt trong một tệp {@link android.content.SharedPreferences}
+mặc định cho thiết đặt của ứng dụng của bạn. Khi người dùng thay đổi một thiết đặt, hệ thống sẽ cập nhật giá trị
+tương ứng trong tệp {@link android.content.SharedPreferences} cho bạn. Lần duy nhất mà bạn nên
+trực tiếp tương tác với tệp {@link android.content.SharedPreferences} được liên kết đó là khi bạn
+cần đọc giá trị để xác định xem hành vi ứng dụng của mình có được dựa trên thiết đặt của người dùng không.</p>
+
+<p>Giá trị được lưu trong {@link android.content.SharedPreferences} cho từng thiết đặt có thể là một trong các kiểu dữ liệu
+sau:</p>
+
+<ul>
+  <li>Boolean</li>
+  <li>Float</li>
+  <li>Int</li>
+  <li>Long</li>
+  <li>String</li>
+  <li>String {@link java.util.Set}</li>
+</ul>
+
+<p>Vì thiết đặt của ứng dụng của bạn được xây dựng bằng cách sử dụng các đối tượng {@link android.preference.Preference}
+thay vì đối tượng
+{@link android.view.View}, bạn nên sử dụng một lớp con {@link android.app.Activity} hoặc 
+{@link android.app.Fragment} chuyên dụng để hiển thị thiết đặt danh sách:</p>
+
+<ul>
+  <li>Nếu ứng dụng của bạn hỗ trợ các phiên bản Android cũ hơn 3.0 (API mức 10 và thấp hơn), bạn phải
+xây dựng hoạt động như một phần mở rộng của lớp {@link android.preference.PreferenceActivity}.</li>
+  <li>Trên phiên bản Android 3.0 trở lên, thay vào đó, bạn nên sử dụng một {@link android.app.Activity}
+truyền thống nơi lưu giữ {@link android.preference.PreferenceFragment} để hiển thị thiết đặt ứng dụng của bạn.
+Tuy nhiên, bạn cũng có thể sử dụng {@link android.preference.PreferenceActivity} để tạo một bố trí hai bảng
+cho màn hình lớn khi bạn có nhiều nhóm thiết đặt.</li>
+</ul>
+
+<p>Cách thiết đặt {@link android.preference.PreferenceActivity} của bạn và các thực thể của {@link
+android.preference.PreferenceFragment} được trình bày trong các phần về <a href="#Activity">Tạo một Hoạt động Tùy chọn</a> và <a href="#Fragment">Sử dụng
+Phân đoạn Tùy chọn</a>.</p>
+
+
+<h3 id="SettingTypes">Tùy chọn</h3>
+
+<p>Mọi thiết đặt cho ứng dụng của bạn đều được biểu diễn bởi một lớp con cụ thể của lớp {@link
+android.preference.Preference}. Mỗi lớp con lại bao gồm một tập hợp các tính chất cốt lõi cho phép bạn
+quy định những thứ như tiêu đề cho thiết đặt và giá trị mặc định. Mỗi lớp con cũng cung cấp
+các tính chất và giao diện người dùng chuyên dụng của chính nó. Ví dụ, hình 1 mình họa một ảnh chụp màn hình từ thiết đặt của ứng dụng
+Messaging. Mỗi mục danh sách trong màn hình thiết đặt được hỗ trợ bởi một đối tượng {@link
+android.preference.Preference} khác nhau.</p>
+
+<p>Sau đây là một số tùy chọn phổ biến nhất:</p>
+
+<dl>
+  <dt>{@link android.preference.CheckBoxPreference}</dt>
+  <dd>Hiển thị một mục kèm một hộp kiểm cho thiết đặt hoặc được kích hoạt hoặc bị vô hiệu hóa. Giá trị
+được lưu là một boolean (<code>true</code> nếu nó được chọn).</dd>
+
+  <dt>{@link android.preference.ListPreference}</dt>
+  <dd>Mở một hộp thoại kèm danh sách nút chọn một. Giá trị được lưu
+có thể là bất kỳ loại giá trị được hỗ trợ nào (liệt kê bên trên).</dd>
+
+  <dt>{@link android.preference.EditTextPreference}</dt>
+  <dd>Mở một hộp thoại kèm một widget {@link android.widget.EditText}. Giá trị được lưu là một {@link
+java.lang.String}.</dd>
+</dl>
+
+<p>Xem lớp {@link android.preference.Preference} để biết danh sách tất cả các lớp con khác và tính chất
+tương ứng của chúng.</p>
+
+<p>Dĩ nhiên, các lớp tích hợp không đáp ứng mọi nhu cầu và ứng dụng của bạn có thể yêu cầu
+lớp con chuyên dụng hơn. Ví dụ, nền tảng này hiện chưa cung cấp một lớp {@link
+android.preference.Preference} cho việc chọn một số hay ngày. Vì thế, bạn có thể cần phải định nghĩa
+lớp con {@link android.preference.Preference} của chính mình. Để được trợ giúp khi làm vậy, hãy xem phần về <a href="#Custom">Xây dựng Thiết đặt Tùy chỉnh</a>.</p>
+
+
+
+<h2 id="DefiningPrefs">Định nghĩa Tùy chọn trong XML</h2>
+
+<p>Mặc dù bạn có thể khởi tạo các đối tượng {@link android.preference.Preference} mới vào thời gian chạy, bạn
+nên định nghĩa danh sách các thiết đặt của mình trong XML kèm một phân cấp của các đối tượng {@link android.preference.Preference}
+. Việc sử dụng một tệp XML để định nghĩa bộ sưu tập thiết đặt của bạn sẽ được ưu tiên vì tệp
+cung cấp một cấu trúc dễ đọc, cập nhật đơn giản. Bên cạnh đó, các thiết đặt ứng dụng của bạn thường được
+xác định trước, mặc dù bạn vẫn có thể sửa đổi bộ sưu tập vào thời gian chạy.</p>
+
+<p>Mỗi lớp con {@link android.preference.Preference} có thể được khai báo bằng một phần tử XML mà
+khớp với tên lớp đó, chẳng hạn như {@code &lt;CheckBoxPreference&gt;}.</p>
+
+<p>Bạn phải lưu tệp XML trong thư mục {@code res/xml/}. Mặc dù bạn có thể đặt tên tệp là
+bất cứ thứ gì mình muốn, nó thường được đặt tên là{@code preferences.xml}. Bạn thường chỉ cần một tệp,
+bởi các nhánh trong phân cấp (mà mở danh sách thiết đặt của riêng chúng) sẽ được khai báo bằng cách sử dụng các thực thể
+lồng nhau của {@link android.preference.PreferenceScreen}.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Nếu bạn muốn tạo một bố trí đa bảng cho thiết đặt
+của mình, vậy bạn nên tách riêng các tệp XML cho từng phân đoạn.</p>
+
+<p>Node gốc cho tệp XML phải là một phần tử {@link android.preference.PreferenceScreen
+&lt;PreferenceScreen&gt;}. Trong phần tử này là nơi bạn thêm từng {@link
+android.preference.Preference}. Từng phần tử con mà bạn thêm vào trong phần tử
+{@link android.preference.PreferenceScreen &lt;PreferenceScreen&gt;} sẽ xuất hiện như một mục
+đơn lẻ trong danh sách thiết đặt.</p>
+
+<p>Ví dụ:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;CheckBoxPreference
+        android:key="pref_sync"
+        android:title="@string/pref_sync"
+        android:summary="@string/pref_sync_summ"
+        android:defaultValue="true" />
+    &lt;ListPreference
+        android:dependency="pref_sync"
+        android:key="pref_syncConnectionType"
+        android:title="@string/pref_syncConnectionType"
+        android:dialogTitle="@string/pref_syncConnectionType"
+        android:entries="@array/pref_syncConnectionTypes_entries"
+        android:entryValues="@array/pref_syncConnectionTypes_values"
+        android:defaultValue="@string/pref_syncConnectionTypes_default" />
+&lt;/PreferenceScreen>
+</pre>
+
+<p>Trong ví dụ này, có một {@link android.preference.CheckBoxPreference} và một {@link
+android.preference.ListPreference}. Cả hai mục đều bao gồm ba thuộc tính sau:</p>
+
+<dl>
+  <dt>{@code android:key}</dt>
+  <dd>Thuộc tính này được yêu cầu cho các tùy chọn duy trì một giá trị dữ liệu. Nó quy định khóa
+(xâu) duy nhất mà hệ thống sử dụng khi lưu giá trị của thiết đặt này trong {@link
+android.content.SharedPreferences}. 
+  <p>Các thực thể duy nhất mà thuộc tính này không <em>được yêu cầu</em> là khi tùy chọn là một
+{@link android.preference.PreferenceCategory} hoặc {@link android.preference.PreferenceScreen}, hoặc
+tùy chọn quy định một {@link android.content.Intent} để gọi ra (bằng phần tử <a href="#Intents">{@code &lt;intent&gt;}</a>) hoặc {@link android.app.Fragment} để hiển thị (bằng thuộc tính <a href="{@docRoot}reference/android/preference/Preference.html#attr_android:fragment">{@code
+android:fragment}</a>).</p>
+  </dd>
+  <dt>{@code android:title}</dt>
+  <dd>Thuộc tính này cung cấp một tên hiển thị với người dùng cho thiết đặt.</dd>
+  <dt>{@code android:defaultValue}</dt>
+  <dd>Nó quy định giá trị ban đầu mà hệ thống nên đặt trong tệp {@link
+android.content.SharedPreferences}. Bạn nên cung cấp một giá trị mặc định cho tất cả
+thiết đặt.</dd>
+</dl>
+
+<p>Để biết thông tin về tất cả thuộc tính được hỗ trợ khác, hãy xem tài liệu {@link
+android.preference.Preference} (và lớp con tương ứng).</p>
+
+
+<div class="figure" style="width:300px">
+  <img src="{@docRoot}images/ui/settings/settings-titles.png" alt="" />
+  <p class="img-caption"><strong>Hình 2.</strong> Thiết đặt thể loại
+    có tiêu đề. <br/><b>1.</b> Thể loại được quy định bởi phần tử {@link
+android.preference.PreferenceCategory &lt;PreferenceCategory&gt;}. <br/><b>2.</b> Tiêu đề
+được quy định bằng thuộc tính {@code android:title}.</p>
+</div>
+
+
+<p>Khi danh sách thiết đặt của bạn vượt quá khoảng 10 mục, bạn có thể muốn thêm tiêu đề để
+định nghĩa các nhóm thiết đặt hoặc hiển thị các nhóm đó trong một
+màn hình riêng. Những tùy chọn này được mô tả trong các phần sau.</p>
+
+
+<h3 id="Groups">Tạo nhóm thiết đặt</h3>
+
+<p>Nếu bạn trình bày một danh sách từ 10 thiết đặt trở lên, người dùng
+có thể gặp khó khăn trong việc dò tìm, hiểu và xử lý chúng. Bạn có thể khắc phục điều này bằng cách
+chia một số hoặc tất cả thiết đặt thành các nhóm, qua đó biến một danh sách dài thành nhiều
+danh sách ngắn hơn. Một nhóm các thiết đặt có liên quan có thể được trình bày bằng một trong hai cách:</p>
+
+<ul>
+  <li><a href="#Titles">Sử dụng tiêu đề</a></li>
+  <li><a href="#Subscreens">Sử dụng màn hình con</a></li>
+</ul>
+
+<p>Bạn có thể sử dụng một hoặc cả hai kỹ thuật tạo nhóm này để sắp xếp các thiết đặt cho ứng dụng của mình. Khi
+quyết định sử dụng cái nào và làm thế nào để chia các thiết đặt của mình, bạn nên tuân theo các hướng dẫn trong tài liệu hướng dẫn
+<a href="{@docRoot}design/patterns/settings.html">Thiết đặt</a> của Thiết kế Android.</p>
+
+
+<h4 id="Titles">Sử dụng tiêu đề</h4>
+
+<p>Nếu bạn muốn cung cấp các thanh chia có tiêu đề giữa các nhóm thiết đặt (như minh họa trong hình 2),
+hãy đặt từng nhóm đối tượng {@link android.preference.Preference} vào bên trong một {@link
+android.preference.PreferenceCategory}.</p>
+
+<p>Ví dụ:</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;PreferenceCategory 
+        android:title="&#64;string/pref_sms_storage_title"
+        android:key="pref_key_storage_settings">
+        &lt;CheckBoxPreference
+            android:key="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_auto_delete"
+            android:title="&#64;string/pref_title_auto_delete"
+            android:defaultValue="false"... />
+        &lt;Preference 
+            android:key="pref_key_sms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_sms_delete"... />
+        &lt;Preference 
+            android:key="pref_key_mms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_mms_delete" ... />
+    &lt;/PreferenceCategory>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h4 id="Subscreens">Sử dụng màn hình con</h4>
+
+<p>Nếu bạn muốn đặt các nhóm thiết đặt vào một màn hình con (như minh họa trong hình 3), hãy đặt nhóm
+các đối tượng {@link android.preference.Preference} vào bên trong một {@link
+android.preference.PreferenceScreen}.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-subscreen.png" alt="" />
+<p class="img-caption"><strong>Hình 3.</strong> Màn hình con thiết đặt. Phần tử {@code
+&lt;PreferenceScreen&gt;} sẽ tạo
+một mục mà, khi được chọn, nó sẽ mở ra một danh sách riêng để hiển thị các thiết đặt lồng nhau.</p>
+
+<p>Ví dụ:</p>
+
+<pre>
+&lt;PreferenceScreen  xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;!-- opens a subscreen of settings -->
+    &lt;PreferenceScreen
+        android:key="button_voicemail_category_key"
+        android:title="&#64;string/voicemail"
+        android:persistent="false">
+        &lt;ListPreference
+            android:key="button_voicemail_provider_key"
+            android:title="&#64;string/voicemail_provider" ... />
+        &lt;!-- opens another nested subscreen -->
+        &lt;PreferenceScreen
+            android:key="button_voicemail_setting_key"
+            android:title="&#64;string/voicemail_settings"
+            android:persistent="false">
+            ...
+        &lt;/PreferenceScreen>
+        &lt;RingtonePreference
+            android:key="button_voicemail_ringtone_key"
+            android:title="&#64;string/voicemail_ringtone_title"
+            android:ringtoneType="notification" ... />
+        ...
+    &lt;/PreferenceScreen>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h3 id="Intents">Sử dụng ý định</h3>
+
+<p>Trong một số trường hợp, bạn có thể muốn một mục tùy chọn mở một hoạt động khác thay vì một
+màn hình thiết đặt, chẳng hạn như một trình duyệt web để xem một trang web. Để gọi ra một {@link
+android.content.Intent} khi người dùng chọn một mục tùy chọn, hãy thêm một phần tử {@code &lt;intent&gt;}
+làm con của phần tử {@code &lt;Preference&gt;} tương ứng.</p>
+
+<p>Ví dụ, sau đây là cách bạn có thể sử dụng một mục tùy chọn để mở một trang web:</p>
+
+<pre>
+&lt;Preference android:title="@string/prefs_web_page" >
+    &lt;intent android:action="android.intent.action.VIEW"
+            android:data="http://www.example.com" />
+&lt;/Preference>
+</pre>
+
+<p>Bạn có thể tạo cả ý định biểu thị và không biểu thị bằng cách sử dụng các thuộc tính sau:</p>
+
+<dl>
+  <dt>{@code android:action}</dt>
+    <dd>Hành động cần gán, theo mỗi phương pháp {@link android.content.Intent#setAction setAction()}
+.</dd>
+  <dt>{@code android:data}</dt>
+    <dd>Dữ liệu cần gán, theo mỗi phương pháp {@link android.content.Intent#setData setData()}.</dd>
+  <dt>{@code android:mimeType}</dt>
+    <dd>Kiểu MIME cần gán, theo mỗi phương pháp {@link android.content.Intent#setType setType()}
+.</dd>
+  <dt>{@code android:targetClass}</dt>
+    <dd>Phần lớp của tên thành phần, theo mỗi phương pháp {@link android.content.Intent#setComponent
+setComponent()}.</dd>
+  <dt>{@code android:targetPackage}</dt>
+    <dd>Phần gói của tên thành phần, theo mỗi phương pháp {@link
+android.content.Intent#setComponent setComponent()}.</dd>
+</dl>
+
+
+
+<h2 id="Activity">Tạo một Hoạt động Tùy chọn</h2>
+
+<p>Để hiển thị thiết đặt của bạn trong một hoạt động, hãy mở rộng lớp {@link
+android.preference.PreferenceActivity}. Đây là phần mở rộng của lớp {@link
+android.app.Activity} truyền thống mà hiển thị một danh sách các thiết đặt dựa trên một phân cấp của các đối tượng {@link
+android.preference.Preference}. {@link android.preference.PreferenceActivity}
+sẽ tự động duy trì các thiết đặt liên kết với từng {@link
+android.preference.Preference} khi người dùng thực hiện một thay đổi.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Nếu bạn đang phát triển ứng dụng của mình cho phiên bản Android 3.0 và
+cao hơn, thay vào đó bạn nên sử dụng {@link android.preference.PreferenceFragment}. Đi đến phần
+tiếp theo về <a href="#Fragment">Sử dụng Phân đoạn Tùy chọn</a>.</p>
+
+<p>Điều quan trọng nhất cần nhớ đó là bạn không được tải một bố trí dạng xem trong khi gọi lại {@link
+android.preference.PreferenceActivity#onCreate onCreate()}. Thay vào đó, bạn hãy gọi {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} để
+thêm tùy chọn mà bạn đã khai báo trong một tệp XML vào hoạt động. Ví dụ, sau đây là đoạn mã tối thiểu
+cần thiết cho một {@link android.preference.PreferenceActivity} chức năng:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        addPreferencesFromResource(R.xml.preferences);
+    }
+}
+</pre>
+
+<p>Đây là đoạn mã vừa đủ cho một số ứng dụng bởi ngay khi người dùng sửa đổi một tùy chọn,
+hệ thống sẽ lưu thay đổi đối với tệp {@link android.content.SharedPreferences} mặc định mà các
+thành phần ứng dụng khác của bạn có thể đọc khi bạn cần kiểm tra thiết đặt của người dùng. Tuy nhiên,
+nhiều ứng dụng lại yêu cầu thêm mã để theo dõi những thay đổi xảy ra với các tùy chọn đó.
+Để biết thông tin về việc theo dõi thay đổi trong tệp {@link android.content.SharedPreferences},
+hãy xem phần về <a href="#ReadingPrefs">Đọc Tùy chọn</a>.</p>
+
+
+
+
+<h2 id="Fragment">Sử dụng Phân đoạn Tùy chọn</h2>
+
+<p>Nếu bạn đang phát triển cho phiên bản Android 3.0 (API mức 11) trở lên, bạn nên sử dụng một {@link
+android.preference.PreferenceFragment} để hiển thị danh sách các đối tượng {@link android.preference.Preference}
+của bạn. Bạn có thể thêm một {@link android.preference.PreferenceFragment} vào bất kỳ hoạt động nào&mdash;bạn không cần
+sử dụng {@link android.preference.PreferenceActivity}.</p>
+
+<p><a href="{@docRoot}guide/components/fragments.html">Phân đoạn</a> cung cấp một kiến trúc
+linh hoạt hơn cho ứng dụng của bạn, so với việc sử dụng chỉ các hoạt động, dù loại hoạt động
+mà bạn đang xây dựng là gì. Như vậy, chúng tôi gợi ý bạn sử dụng {@link
+android.preference.PreferenceFragment} để kiểm soát hiển thị các thiết đặt của mình thay cho {@link
+android.preference.PreferenceActivity} khi có thể.</p>
+
+<p>Việc triển khai {@link android.preference.PreferenceFragment} có thể chỉ đơn giản như
+định nghĩa phương pháp {@link android.preference.PreferenceFragment#onCreate onCreate()} để tải một
+tệp tùy chọn bằng {@link android.preference.PreferenceFragment#addPreferencesFromResource
+addPreferencesFromResource()}. Ví dụ:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Load the preferences from an XML resource
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+}
+</pre>
+
+<p>Khi đó, bạn có thể thêm phân đoạn này vào một {@link android.app.Activity} giống như cách mà bạn sẽ làm với bất kỳ
+{@link android.app.Fragment} nào khác. Ví dụ:</p>
+
+<pre>
+public class SettingsActivity extends Activity {
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Display the fragment as the main content.
+        getFragmentManager().beginTransaction()
+                .replace(android.R.id.content, new SettingsFragment())
+                .commit();
+    }
+}
+</pre>
+
+<p class="note"><strong>Lưu ý:</strong> {@link android.preference.PreferenceFragment} không có một
+đối tượng {@link android.content.Context} của chính nó. Nếu bạn cần một đối tượng {@link android.content.Context}
+, bạn có thể gọi {@link android.app.Fragment#getActivity()}. Tuy nhiên, hãy chắc chắn là chỉ gọi
+{@link android.app.Fragment#getActivity()} khi phân đoạn đó được gắn kèm với một hoạt động. Khi
+phân đoạn chưa được gắn kèm, hoặc bị bỏ gắn kèm trong khi kết thúc vòng đời của nó, {@link
+android.app.Fragment#getActivity()} sẽ trả về rỗng.</p>
+
+
+<h2 id="Defaults">Thiết đặt Giá trị Mặc định</h2>
+
+<p>Tùy chọn mà bạn tạo có thể định nghĩa một số hành vi quan trọng cho ứng dụng của bạn, vì thế
+bạn cần phải khởi tạo tệp {@link android.content.SharedPreferences} kèm theo với các
+giá trị mặc định cho từng {@link android.preference.Preference} khi người dùng lần đầu mở
+ứng dụng của bạn.</p>
+
+<p>Điều đầu tiên bạn phải làm đó là quy định một giá trị mặc định cho từng đối tượng {@link
+android.preference.Preference}
+trong tệp XML của bạn bằng cách sử dụng thuộc tính {@code android:defaultValue}. Giá trị đó có thể là bất kỳ kiểu
+dữ liệu nào mà phù hợp với đối tượng {@link android.preference.Preference} tương ứng. Ví
+dụ:</p>
+
+<pre>
+&lt;!-- default value is a boolean -->
+&lt;CheckBoxPreference
+    android:defaultValue="true"
+    ... />
+
+&lt;!-- default value is a string -->
+&lt;ListPreference
+    android:defaultValue="@string/pref_syncConnectionTypes_default"
+    ... />
+</pre>
+
+<p>Khi đó, từ phương pháp {@link android.app.Activity#onCreate onCreate()} trong hoạt động chính
+&mdash;của ứng dụng của bạn và trong bất kỳ hoạt động nào khác mà thông qua đó người dùng có thể vào ứng dụng của bạn lần
+đầu tiên&mdash;hãy gọi {@link android.preference.PreferenceManager#setDefaultValues
+setDefaultValues()}:</p>
+
+<pre>
+PreferenceManager.setDefaultValues(this, R.xml.advanced_preferences, false);
+</pre>
+
+<p>Việc gọi này trong khi {@link android.app.Activity#onCreate onCreate()} sẽ đảm bảo rằng
+ứng dụng của bạn được khởi tạo phù hợp với các thiết đặt mặc định mà ứng dụng của bạn có thể cần
+đọc để xác định một số hành vi (chẳng hạn như có tải xuống dữ liệu trong khi đang trên
+mạng di động hay không).</p>
+
+<p>Phương pháp này dùng ba tham đối:</p>
+<ul>
+  <li>{@link android.content.Context} ứng dụng của bạn.</li>
+  <li>ID tài nguyên cho tệp XML tùy chọn mà bạn muốn đặt các giá trị mặc định cho.</li>
+  <li>Một boolean cho biết các giá trị mặc định có nên được đặt nhiều hơn một lần hay không.
+<p>Khi tham đối này là <code>false</code>, hệ thống sẽ đặt các giá trị mặc định chỉ khi phương pháp này chưa từng được
+gọi trước đây (hoặc {@link android.preference.PreferenceManager#KEY_HAS_SET_DEFAULT_VALUES}
+trong tệp tùy chọn được chia sẻ giá trị mặc định là sai).</p></li>
+</ul>
+
+<p>Miễn là bạn đặt tham đối thứ ba này thành <code>false</code>, bạn có thể gọi phương pháp này một cách an toàn
+mỗi khi hoạt động của bạn bắt đầu mà không khống chế các tùy chọn đã lưu của người dùng bằng cách đặt lại chúng thành
+mặc định. Tuy nhiên, nếu bạn đặt nó thành <code>true</code>, bạn sẽ khống chế mọi giá trị
+trước đó bằng các giá trị mặc định.</p>
+
+
+
+<h2 id="PreferenceHeaders">Sử dụng Tiêu đề Tùy chọn</h2>
+
+<p>Trong vài trường hợp hiếm gặp, bạn có thể muốn thiết kế các thiết đặt của mình sao cho màn hình thứ nhất
+chỉ hiển thị một danh sách <a href="#Subscreens">các màn hình con</a> (chẳng hạn như trong ứng dụng Thiết đặt của hệ thống,
+như minh họa trong các hình 4 và 5). Khi phát triển thiết kế như vậy cho phiên bản Android 3.0 trở lên, bạn
+nên sử dụng tính năng "tiêu đề" mới trong Android 3.0, thay vì xây dựng màn hình con với các phần tử
+{@link android.preference.PreferenceScreen} lồng nhau.</p>
+
+<p>Để xây dựng thiết đặt có tiêu đề của mình, bạn cần:</p>
+<ol>
+  <li>Tách riêng từng nhóm thiết đặt thành các thực thể riêng của {@link
+android.preference.PreferenceFragment}. Cụ thể, mỗi nhóm thiết đặt cần một tệp XML
+riêng.</li>
+  <li>Tạo một tệp tiêu đề XML liệt kê từng nhóm thiết đặt và khai báo phân đoạn nào
+chứa danh sách thiết đặt tương ứng.</li>
+  <li>Mở rộng lớp {@link android.preference.PreferenceActivity} để lưu trữ các thiết đặt của bạn.</li>
+  <li>Triển khai lệnh gọi lại {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} để quy định
+tệp tiêu đề.</li>
+</ol>
+
+<p>Một lợi ích tuyệt vời đối với việc sử dụng thiết kế này đó là {@link android.preference.PreferenceActivity}
+tự động trình bày bố trí hai bảng như minh họa trong hình 4 khi chạy trên màn hình lớn.</p>
+
+<p>Ngay cả khi ứng dụng của bạn hỗ trợ các phiên bản Android cũ hơn 3.0, bạn có thể xây dựng ứng dụng
+của mình để sử dụng {@link android.preference.PreferenceFragment} cho một trình chiếu hai bảng trên
+các thiết bị mới hơn, trong khi vẫn hỗ trợ phân cấp đa màn hình truyền thống trên các thiết bị
+cũ hơn (xem phần nói về <a href="#BackCompatHeaders">Hỗ trợ các phiên bản cũ hơn
+với tiêu đề tùy chọn</a>).</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-tablet.png" alt="" />
+<p class="img-caption"><strong>Hình 4.</strong> Bố trí có hai bảng với tiêu đề. <br/><b>1.</b> 
+Tiêu đề được định nghĩa trong một tệp tiêu đề XML. <br/><b>2.</b> Mỗi nhóm thiết đặt được định nghĩa bởi một
+{@link android.preference.PreferenceFragment}, được quy định bởi một phần tử {@code &lt;header&gt;} trong tệp tiêu đề
+.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-handset.png" alt="" />
+<p class="img-caption"><strong>Hình 5.</strong> Thiết bị cầm tay với các tiêu đề thiết đặt. Khi một
+mục được chọn, {@link android.preference.PreferenceFragment} được liên kết sẽ thay thế
+tiêu đề.</p>
+
+
+<h3 id="CreateHeaders" style="clear:left">Tạo tệp tiêu đề</h3>
+
+<p>Mỗi nhóm thiết đặt trong danh sách tiêu đề của bạn được quy định bởi một phần tử {@code &lt;header&gt;}
+đơn lẻ bên trong một phần tử {@code &lt;preference-headers&gt;} gốc. Ví dụ:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;!-- key/value pairs can be included as arguments for the fragment. -->
+        &lt;extra android:name="someKey" android:value="someHeaderValue" />
+    &lt;/header>
+&lt;/preference-headers>
+</pre>
+
+<p>Với thuộc tính {@code android:fragment}, mỗi tiêu đề sẽ khai báo một thực thể của {@link
+android.preference.PreferenceFragment} mà sẽ mở khi người dùng chọn tiêu đề đó.</p>
+
+<p>Phần tử {@code &lt;extras&gt;} cho phép bạn chuyển các cặp khóa-giá trị sang phân đoạn trong một {@link
+android.os.Bundle}. Phân đoạn có thể truy xuất các tham đối bằng cách gọi {@link
+android.app.Fragment#getArguments()}. Bạn có thể chuyển các tham đối tới phân đoạn vì nhiều
+lý do khác nhau, nhưng một lý do chính đáng đó là để sử dụng lại cùng lớp con của {@link
+android.preference.PreferenceFragment} cho mỗi nhóm và sử dụng tham đối để quy định
+tệp XML tùy chọn nào mà phân đoạn cần tải.</p>
+
+<p>Ví dụ, sau đây là một phân đoạn mà có thể được tái sử dụng cho nhiều nhóm thiết đặt, khi từng
+tiêu đề định nghĩa một tham đối {@code &lt;extra&gt;} với khóa {@code "settings"}:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        String settings = getArguments().getString("settings");
+        if ("notifications".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_wifi);
+        } else if ("sync".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_sync);
+        }
+    }
+}
+</pre>
+
+
+
+<h3 id="DisplayHeaders">Hiển thị tiêu đề</h3>
+
+<p>Để hiển thị tiêu đề tùy chọn, bạn phải triển khai phương pháp gọi lại {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} và gọi
+{@link android.preference.PreferenceActivity#loadHeadersFromResource
+loadHeadersFromResource()}. Ví dụ:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onBuildHeaders(List&lt;Header> target) {
+        loadHeadersFromResource(R.xml.preference_headers, target);
+    }
+}
+</pre>
+
+<p>Khi người dùng chọn một mục từ danh sách tiêu đề, hệ thống sẽ mở {@link
+android.preference.PreferenceFragment} kèm theo.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Khi sử dụng tiêu đề tùy chọn, lớp con {@link
+android.preference.PreferenceActivity} của bạn không cần triển khai phương pháp {@link
+android.preference.PreferenceActivity#onCreate onCreate()}, vì tác vụ cần thiết duy nhất
+cho hoạt động đó là tải tiêu đề.</p>
+
+
+<h3 id="BackCompatHeaders">Hỗ trợ các phiên bản cũ hơn với tiêu đề tùy chọn</h3>
+
+<p>Nếu ứng dụng của bạn hỗ trợ các phiên bản Android cũ hơn 3.0, bạn vẫn có thể sử dụng tiêu đề để
+cung cấp một bố trí hai bảng khi chạy trên Android 3.0 trở lên. Tất cả những việc bạn cần làm đó là tạo một
+tệp XML tùy chọn bổ sung có sử dụng phần tử cơ bản {@link android.preference.Preference
+&lt;Preference&gt;} đóng vai trò như mục tiêu đề (để dùng cho các phiên bản Android
+cũ hơn).</p>
+
+<p>Tuy nhiên, thay vì mở một {@link android.preference.PreferenceScreen} mới, từng phần tử {@link
+android.preference.Preference &lt;Preference&gt;} sẽ gửi một {@link android.content.Intent} tới
+{@link android.preference.PreferenceActivity} mà quy định tệp XML tùy chọn cần
+tải.</p>
+
+<p>Ví dụ, sau đây là một tệp XML cho các tiêu đề tùy chọn được sử dụng trên Android 3.0
+trở lên ({@code res/xml/preference_headers.xml}):</p> 
+
+<pre>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" />
+&lt;/preference-headers>
+</pre>
+
+<p>Và sau đây là một tệp tùy chọn cung cấp cùng các tiêu đề cho các phiên bản cũ hơn
+Android 3.0 ({@code res/xml/preference_headers_legacy.xml}):</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;Preference 
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one"  >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_ONE" />
+    &lt;/Preference>
+    &lt;Preference 
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_TWO" />
+    &lt;/Preference>
+&lt;/PreferenceScreen>
+</pre>
+
+<p>Vì hỗ trợ dành cho {@code &lt;preference-headers&gt;} đã được thêm trong Android 3.0, hệ thống sẽ gọi
+{@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} trong {@link
+android.preference.PreferenceActivity} của bạn chỉ khi đang chạy trên phiên bản Androd 3.0 hoặc cao hơn. Để tải
+tệp tiêu đề "kế thừa" ({@code preference_headers_legacy.xml}), bạn phải kiểm tra phiên bản Android
+và, nếu phiên bản cũ hơn Android 3.0 ({@link
+android.os.Build.VERSION_CODES#HONEYCOMB}), hãy gọi {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} để
+tải tệp tiêu đề kế thừa. Ví dụ:</p>
+
+<pre>
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    ...
+
+    if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+
+// Called only on Honeycomb and later
+&#64;Override
+public void onBuildHeaders(List&lt;Header> target) {
+   loadHeadersFromResource(R.xml.preference_headers, target);
+}
+</pre>
+
+<p>Việc duy nhất còn lại cần làm đó là xử lý {@link android.content.Intent} mà được chuyển vào
+hoạt động để nhận biết tệp tùy chọn nào cần tải. Vì vậy, hãy truy xuất hành động của ý định và so sánh nó với
+các xâu hành động đã biết mà bạn đã sử dụng trong tag {@code &lt;intent&gt;} của XML tùy chọn:</p>
+
+<pre>
+final static String ACTION_PREFS_ONE = "com.example.prefs.PREFS_ONE";
+...
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+
+    String action = getIntent().getAction();
+    if (action != null &amp;&amp; action.equals(ACTION_PREFS_ONE)) {
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+
+    else if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+</pre>
+
+<p>Lưu ý rằng các lệnh gọi liên tiếp đến {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} sẽ
+xếp chồng tất cả tùy chọn trong một danh sách duy nhất, vì thế hãy chắc chắn rằng nó chỉ được gọi một lần bằng cách liên kết các
+điều kiện với mệnh đề else-if.</p>
+
+
+
+
+
+<h2 id="ReadingPrefs">Đọc Tùy chọn</h2>
+
+<p>Theo mặc định, tất cả tùy chọn của ứng dụng của bạn đều được lưu vào một tệp có thể truy cập từ bất kỳ nơi nào
+trong ứng dụng của bạn bằng cách gọi phương pháp tĩnh {@link
+android.preference.PreferenceManager#getDefaultSharedPreferences
+PreferenceManager.getDefaultSharedPreferences()}. Điều này sẽ trả về đối tượng {@link
+android.content.SharedPreferences} chứa tất cả cặp khóa-giá trị liên kết
+với các đối tượng {@link android.preference.Preference} được sử dụng trong {@link
+android.preference.PreferenceActivity}.</p>
+
+<p>Ví dụ, sau đây là cách bạn có thể đọc một trong các giá trị tùy chọn từ bất kỳ hoạt động nào khác trong ứng dụng
+của mình:</p>
+
+<pre>
+SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
+String syncConnPref = sharedPref.getString(SettingsActivity.KEY_PREF_SYNC_CONN, "");
+</pre>
+
+
+
+<h3 id="Listening">Theo dõi thay đổi tùy chọn</h3>
+
+<p>Có một vài lý do khiến bạn có thể muốn được thông báo càng sớm càng tốt nếu người dùng thay đổi một trong các
+tùy chọn. Để nhận một phương pháp gọi lại khi thay đổi xảy ra với bất kỳ tùy chọn nào,
+hãy triển khai giao diện {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener
+SharedPreference.OnSharedPreferenceChangeListener} và đăng ký đối tượng theo dõi cho đối tượng
+{@link android.content.SharedPreferences} bằng cách gọi {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}.</p>
+
+<p>Giao diện này chỉ có một phương pháp gọi lại, {@link
+android.content.SharedPreferences.OnSharedPreferenceChangeListener#onSharedPreferenceChanged
+onSharedPreferenceChanged()}, và bạn có thể thấy đây là cách dễ nhất để triển khai giao diện như một phần
+hoạt động của mình. Ví dụ:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity
+                              implements OnSharedPreferenceChangeListener {
+    public static final String KEY_PREF_SYNC_CONN = "pref_syncConnectionType";
+    ...
+
+    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
+        String key) {
+        if (key.equals(KEY_PREF_SYNC_CONN)) {
+            Preference connectionPref = findPreference(key);
+            // Set summary to be the user-description for the selected value
+            connectionPref.setSummary(sharedPreferences.getString(key, ""));
+        }
+    }
+}
+</pre>
+
+<p>Trong ví dụ này, phương pháp sẽ kiểm tra xem thiết đặt bị thay đổi có áp dụng cho một khóa tùy chọn đã biết không. Nó
+sẽ gọi {@link android.preference.PreferenceActivity#findPreference findPreference()} để nhận đối tượng
+{@link android.preference.Preference} đã bị thay đổi để nó có thể sửa đổi tóm tắt
+của mục đó thành mô tả lựa chọn của người dùng. Cụ thể, khi thiết đặt là một {@link
+android.preference.ListPreference} hoặc thiết đặt nhiều lựa chọn khác, bạn nên gọi {@link
+android.preference.Preference#setSummary setSummary()} khi thiết đặt thay đổi để hiển thị
+trạng thái hiện tại (chẳng hạn như thiết đặt Ngủ như minh họa trong hình 5).</p>
+
+<p class="note"><strong>Lưu ý:</strong> Như đã mô tả trong tài liệu Thiết kế Android về <a href="{@docRoot}design/patterns/settings.html">Thiết đặt</a>, chúng tôi khuyên bạn nên cập nhật
+tóm tắt cho {@link android.preference.ListPreference} mỗi khi người dùng thay đổi tùy chọn để 
+mô tả thiết đặt hiện tại.</p>
+
+<p>Để quản lý vòng đời trong hoạt động cho phù hợp, chúng tôi khuyên rằng bạn nên đăng ký và bỏ đăng ký
+{@link android.content.SharedPreferences.OnSharedPreferenceChangeListener} của mình tương ứng trong {@link
+android.app.Activity#onResume} và các lệnh gọi lại {@link android.app.Activity#onPause}:</p>
+
+<pre>
+&#64;Override
+protected void onResume() {
+    super.onResume();
+    getPreferenceScreen().getSharedPreferences()
+            .registerOnSharedPreferenceChangeListener(this);
+}
+
+&#64;Override
+protected void onPause() {
+    super.onPause();
+    getPreferenceScreen().getSharedPreferences()
+            .unregisterOnSharedPreferenceChangeListener(this);
+}
+</pre>
+
+<p class="caution"><strong>Chú ý:</strong> Khi bạn gọi {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}, trình quản lý tùy chọn hiện
+không lưu trữ một tham chiếu mạnh tới đối tượng theo dõi. Bạn phải lưu trữ một tham chiếu
+mạnh tới đối tượng theo dõi, nếu không nó sẽ dễ bị thu thập thông tin rác. Chúng tôi
+khuyên bạn nên giữ một tham chiếu tới đối tượng theo dõi trong dữ liệu thực thể của một đối tượng
+mà sẽ tồn tại miễn là bạn còn cần đối tượng theo dõi đó.</p>
+
+<p>Ví dụ, trong đoạn mã sau, hàm gọi không giữ tham chiếu tới
+đối tượng theo dõi. Kết quả là đối tượng theo dõi sẽ bị thu thập thông tin rác,
+và nó sẽ bị lỗi tại một thời điểm không xác định trong tương lai:</p>
+
+<pre>
+prefs.registerOnSharedPreferenceChangeListener(
+  // Bad! The listener is subject to garbage collection!
+  new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+});
+</pre>
+
+<p>Thay vào đó, hãy lưu một tham chiếu tới đối tượng theo dõi trong một trường dữ liệu thực thể của một
+đối tượng mà sẽ tồn tại miễn là còn cần đối tượng theo dõi đó:</p>
+
+<pre>
+SharedPreferences.OnSharedPreferenceChangeListener listener =
+    new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+};
+prefs.registerOnSharedPreferenceChangeListener(listener);
+</pre>
+
+<h2 id="NetworkUsage">Quản lý Sử dụng Mạng</h2>
+
+
+<p>Bắt đầu với Android 4.0, ứng dụng Thiết đặt của hệ thống sẽ cho phép người dùng xem
+ứng dụng của họ đang sử dụng bao nhiêu dữ liệu mạng khi đang ở tiền cảnh và dưới nền. Khi đó, người dùng có thể
+vô hiệu hóa việc sử dụng dữ liệu chạy ngầm cho từng ứng dụng. Để tránh việc người dùng vô hiệu hóa truy cập dữ liệu
+của ứng dụng của bạn từ dưới nền, bạn nên sử dụng kết nối dữ liệu một cách hiệu quả và cho phép
+người dùng tinh chỉnh mức sử dụng dữ liệu cho ứng dụng của bạn thông qua thiết đặt ứng dụng.<p>
+
+<p>Ví dụ, bạn có thể cho phép người dùng kiểm soát tần suất ứng dụng của bạn đồng bộ dữ liệu, ứng dụng của bạn
+chỉ được thực hiện tải lên/tải xuống khi trên Wi-Fi, ứng dụng của bạn sử dụng dữ liệu trong khi đang chuyển vùng dữ liệu, v.v... hay không. Với 
+những kiểm soát này, người dùng sẽ ít có khả năng vô hiệu hóa truy cập dữ liệu của ứng dụng của bạn
+hơn nhiều khi họ đạt gần mức giới hạn đặt ra trong Thiết đặt hệ thống, vì thay vào đó, họ có thể kiểm soát chính xác
+lượng dữ liệu mà ứng dụng của bạn sử dụng.</p>
+
+<p>Sau khi bạn đã thêm các tùy chọn cần thiết trong {@link android.preference.PreferenceActivity}
+của mình để kiểm soát các thói quen dữ liệu của ứng dụng của bạn, bạn nên thêm một bộ lọc ý định cho {@link
+android.content.Intent#ACTION_MANAGE_NETWORK_USAGE} trong tệp bản kê khai của mình. Ví dụ:</p>
+
+<pre>
+&lt;activity android:name="SettingsActivity" ... >
+    &lt;intent-filter>
+       &lt;action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
+       &lt;category android:name="android.intent.category.DEFAULT" />
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>Bộ lọc ý định này cho hệ thống biết rằng đây là hoạt động kiểm soát mức sử dụng dữ liệu
+của ứng dụng của bạn. Vì thế, khi người dùng kiểm tra lượng dữ liệu mà ứng dụng của bạn đang dùng từ ứng dụng
+Thiết đặt của hệ thống, sẽ có một nút <em>Xem thiết đặt ứng dụng</em> khởi chạy
+{@link android.preference.PreferenceActivity} của bạn, vì thế người dùng có thể tinh chỉnh lượng dữ liệu mà ứng dụng của bạn
+dùng.</p>
+
+
+
+
+
+
+
+<h2 id="Custom">Xây dựng một Thiết đặt Tùy chỉnh</h2>
+
+<p>Khuôn khổ Android bao gồm nhiều lớp con {@link android.preference.Preference} mà
+cho phép bạn xây dựng một UI cho một vài loại thiết đặt khác nhau.
+Tuy nhiên, bạn có thể khám phá thiết đặt mình cần mà chưa có giải pháp tích hợp sẵn, chẳng hạn như một
+bộ chọn số hay bộ chọn ngày. Trong trường hợp như vậy, bạn sẽ cần tạo một tùy chọn tùy chỉnh bằng cách mở rộng
+lớp {@link android.preference.Preference} hoặc một trong các lớp con khác.</p>
+
+<p>Khi bạn mở rộng lớp {@link android.preference.Preference}, có một vài điều quan trọng
+mà bạn cần làm:</p>
+
+<ul>
+  <li>Quy định giao diện người dùng sẽ xuất hiện khi người dùng chọn thiết đặt.</li>
+  <li>Lưu giá trị của thiết đặt khi phù hợp.</li>
+  <li>Khởi tạo {@link android.preference.Preference} bằng giá trị hiện tại (hoặc mặc định) 
+khi xét tới dạng xem.</li>
+  <li>Cung cấp giá trị mặc định khi hệ thống yêu cầu.</li>
+  <li>Nếu {@link android.preference.Preference} cung cấp UI của chính mình (chẳng hạn như một hộp thoại), hãy lưu
+và khôi phục trạng thái để xử lý các thay đổi trong vòng đời (chẳng hạn như khi người dùng xoay màn hình).</li>
+</ul>
+
+<p>Các phần sau mô tả cách hoàn thành từng tác vụ này.</p>
+
+
+
+<h3 id="CustomSelected">Quy định một giao diện người dùng</h3>
+
+  <p>Nếu bạn trực tiếp mở rộng lớp {@link android.preference.Preference}, bạn cần triển khai
+{@link android.preference.Preference#onClick()} để định nghĩa hành động xảy ra khi người dùng
+chọn mục. Tuy nhiên, hầu hết các thiết đặt tùy chỉnh sẽ mở rộng {@link android.preference.DialogPreference} để
+hiển thị một hộp thoại, điều này làm đơn giản hóa quy trình. Khi bạn mở rộng {@link
+android.preference.DialogPreference}, bạn phải gọi {@link
+android.preference.DialogPreference#setDialogLayoutResource setDialogLayoutResourcs()} trong khi đang ở trong
+hàm dựng lớp để quy định bố trí cho hộp thoại.</p>
+
+  <p>Ví dụ, sau đây là hàm dựng cho một {@link
+android.preference.DialogPreference} tùy chỉnh mà khai báo bố trí và quy định văn bản cho
+các nút hộp thoại tích cực và tiêu cực mặc định:</p>
+
+<pre>
+public class NumberPickerPreference extends DialogPreference {
+    public NumberPickerPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        
+        setDialogLayoutResource(R.layout.numberpicker_dialog);
+        setPositiveButtonText(android.R.string.ok);
+        setNegativeButtonText(android.R.string.cancel);
+        
+        setDialogIcon(null);
+    }
+    ...
+}
+</pre>
+
+
+
+<h3 id="CustomSave">Lưu giá trị của thiết đặt</h3>
+
+<p>Bạn có thể lưu một giá trị cho thiết đặt vào bất cứ lúc nào bằng cách gọi một trong các phương pháp của lớp {@link
+android.preference.Preference}, {@code persist*()}, chẳng hạn như {@link
+android.preference.Preference#persistInt persistInt()} nếu giá trị của thiết đặt là một số nguyên hoặc
+{@link android.preference.Preference#persistBoolean persistBoolean()} để lưu một boolean.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Mỗi {@link android.preference.Preference} chỉ có thể lưu một
+kiểu dữ liệu, vì thế bạn phải sử dụng phương pháp {@code persist*()} phù hợp cho kiểu dữ liệu được sử dụng bởi
+{@link android.preference.Preference} tùy chỉnh của mình.</p>
+
+<p>Thời điểm bạn chọn duy trì thiết đặt có thể phụ thuộc vào lớp {@link
+android.preference.Preference} nào mà bạn mở rộng. Nếu mở rộng {@link
+android.preference.DialogPreference}, khi đó bạn nên duy trì giá trị đó chỉ khi hộp thoại
+đóng lại do kết quả tích cực (người dùng chọn nút "OK").</p>
+
+<p>Khi {@link android.preference.DialogPreference} đóng lại, hệ thống sẽ gọi phương pháp {@link
+android.preference.DialogPreference#onDialogClosed onDialogClosed()}. Phương pháp bao gồm một
+tham đối boolean quy định xem người dùng có trả về kết quả "tích cực" hay không&mdash;nếu kết quả là
+<code>true</code>, khi đó, người dùng đã chọn nút tích cực và bạn nên lưu giá trị mới này. Ví
+dụ:</p>
+
+<pre>
+&#64;Override
+protected void onDialogClosed(boolean positiveResult) {
+    // When the user selects "OK", persist the new value
+    if (positiveResult) {
+        persistInt(mNewValue);
+    }
+}
+</pre>
+
+<p>Trong ví dụ này, <code>mNewValue</code> là một thành viên lớp lưu giữ giá trị
+hiện tại của thiết đặt. Việc gọi {@link android.preference.Preference#persistInt persistInt()} sẽ lưu giá trị vào
+tệp {@link android.content.SharedPreferences} (tự động sử dụng khóa mà
+được quy định trong tệp XML cho {@link android.preference.Preference} này).</p>
+
+
+<h3 id="CustomInitialize">Khởi tạo giá trị hiện tại</h3>
+
+<p>Khi hệ thống thêm {@link android.preference.Preference} của bạn vào màn hình, nó
+gọi {@link android.preference.Preference#onSetInitialValue onSetInitialValue()} để thông báo
+với bạn xem thiết đặt có giá trị được duy trì hay không. Nếu không có giá trị được duy trì, lệnh gọi này sẽ cung cấp
+cho bạn giá trị mặc định.</p>
+
+<p>Phương pháp {@link android.preference.Preference#onSetInitialValue onSetInitialValue()} chuyển một
+boolean, <code>restorePersistedValue</code>, để cho biết liệu giá trị đã được duy trì 
+cho thiết đặt hay không. Nếu nó là <code>true</code>, khi đó bạn nên truy xuất giá trị được duy trì bằng cách gọi
+một trong các phương pháp của lớp {@link
+android.preference.Preference}, {@code getPersisted*()}, chẳng hạn như {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} đối với một giá trị số nguyên. Bạn sẽ
+thường muốn truy xuất giá trị được duy trì sao cho bạn có thể cập nhật UI cho phù hợp để phản ánh
+giá trị đã lưu trước đó.</p>
+
+<p>Nếu <code>restorePersistedValue</code> là <code>false</code>, vậy bạn
+nên sử dụng giá trị mặc định được chuyển trong tham đối thứ hai.</p>
+
+<pre>
+&#64;Override
+protected void onSetInitialValue(boolean restorePersistedValue, Object defaultValue) {
+    if (restorePersistedValue) {
+        // Restore existing state
+        mCurrentValue = this.getPersistedInt(DEFAULT_VALUE);
+    } else {
+        // Set default state from the XML attribute
+        mCurrentValue = (Integer) defaultValue;
+        persistInt(mCurrentValue);
+    }
+}
+</pre>
+
+<p>Mỗi phương pháp {@code getPersisted*()} sẽ lấy một tham đối quy định
+giá trị mặc định sẽ sử dụng trong trường hợp thực sự không có giá trị được duy trì hoặc khóa không tồn tại. Trong 
+ví dụ trên, một hằng số cục bộ được sử dụng để quy định giá trị mặc định trong trường hợp {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} không thể trả về một giá trị được duy trì.</p>
+
+<p class="caution"><strong>Chú ý:</strong> Bạn <strong>không thể</strong> sử dụng
+<code>defaultValue</code> làm giá trị mặc định trong phương pháp {@code getPersisted*()}, bởi
+giá trị của nó luôn rỗng khi <code>restorePersistedValue</code> là <code>true</code>.</p>
+
+
+<h3 id="CustomDefault">Cung cấp một giá trị mặc định</h3>
+
+<p>Nếu trường hợp lớp {@link android.preference.Preference} của bạn quy định một giá trị mặc định
+(với thuộc tính {@code android:defaultValue}), khi đó hệ thống
+sẽ gọi {@link android.preference.Preference#onGetDefaultValue
+onGetDefaultValue()} khi nó khởi tạo đối tượng để truy xuất giá trị. Bạn phải
+triển khai phương pháp này để hệ thống lưu giá trị mặc định trong {@link
+android.content.SharedPreferences}. Ví dụ:</p>
+
+<pre>
+&#64;Override
+protected Object onGetDefaultValue(TypedArray a, int index) {
+    return a.getInteger(index, DEFAULT_VALUE);
+}
+</pre>
+
+<p>Các tham đối của phương pháp cung cấp mọi thứ bạn cần: mảng thuộc tính và vị trí chỉ mục
+của {@code android:defaultValue} mà bạn phải truy xuất. Lý do bạn phải triển khai
+phương pháp này nhằm trích xuất giá trị mặc định từ thuộc tính đó là bởi bạn phải quy định
+một giá trị mặc định cục bộ cho thuộc tính trong trường hợp giá trị không được định nghĩa.</p>
+
+
+
+<h3 id="CustomSaveState">Lưu và khôi phục trạng thái của Tùy chọn</h3>
+
+<p>Giống như {@link android.view.View} trong một bố trí, lớp con {@link android.preference.Preference}
+của bạn chịu trách nhiệm lưu và khôi phục trạng thái của nó trong trường hợp hoạt động hoặc phân đoạn
+được khởi động lại (chẳng hạn như khi người dùng xoay màn hình). Để lưu và khôi phục
+trạng thái của lớp {@link android.preference.Preference} của bạn cho đúng, bạn phải triển khai các
+phương pháp gọi lại vòng đời {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} và {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()}.</p>
+
+<p>Trạng thái của {@link android.preference.Preference} của bạn được định nghĩa bởi một đối tượng mà triển khai
+giao diện {@link android.os.Parcelable}. Khuôn khổ Android sẽ cung cấp một đối tượng như vậy cho bạn
+như một điểm bắt đầu để định nghĩa đối tượng trạng thái của bạn: lớp {@link
+android.preference.Preference.BaseSavedState}.</p>
+
+<p>Để định nghĩa cách thức lớp {@link android.preference.Preference} của bạn lưu trạng thái của nó
+hãy mở rộng lớp {@link android.preference.Preference.BaseSavedState}. Bạn cần khống chế chỉ
+ một vài phương pháp và định nghĩa đối tượng {@link android.preference.Preference.BaseSavedState#CREATOR}
+.</p>
+
+<p>Đối với hầu hết ứng dụng, bạn có thể sao chép triển khai sau và chỉ cần thay đổi các dòng
+xử lý {@code value} nếu lớp con {@link android.preference.Preference} của bạn lưu một kiểu
+dữ liệu khác số nguyên.</p>
+
+<pre>
+private static class SavedState extends BaseSavedState {
+    // Member that holds the setting's value
+    // Change this data type to match the type saved by your Preference
+    int value;
+
+    public SavedState(Parcelable superState) {
+        super(superState);
+    }
+
+    public SavedState(Parcel source) {
+        super(source);
+        // Get the current preference's value
+        value = source.readInt();  // Change this to read the appropriate data type
+    }
+
+    &#64;Override
+    public void writeToParcel(Parcel dest, int flags) {
+        super.writeToParcel(dest, flags);
+        // Write the preference's value
+        dest.writeInt(value);  // Change this to write the appropriate data type
+    }
+
+    // Standard creator object using an instance of this class
+    public static final Parcelable.Creator&lt;SavedState> CREATOR =
+            new Parcelable.Creator&lt;SavedState>() {
+
+        public SavedState createFromParcel(Parcel in) {
+            return new SavedState(in);
+        }
+
+        public SavedState[] newArray(int size) {
+            return new SavedState[size];
+        }
+    };
+}
+</pre>
+
+<p>Với triển khai {@link android.preference.Preference.BaseSavedState} bên trên được thêm
+vào ứng dụng của bạn (thường dưới dạng một lớp con của lớp con {@link android.preference.Preference} của bạn), khi đó
+bạn cần triển khai các phương pháp {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} và {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()} cho lớp con
+{@link android.preference.Preference} của mình.</p>
+
+<p>Ví dụ:</p>
+
+<pre>
+&#64;Override
+protected Parcelable onSaveInstanceState() {
+    final Parcelable superState = super.onSaveInstanceState();
+    // Check whether this Preference is persistent (continually saved)
+    if (isPersistent()) {
+        // No need to save instance state since it's persistent,
+        // use superclass state
+        return superState;
+    }
+
+    // Create instance of custom BaseSavedState
+    final SavedState myState = new SavedState(superState);
+    // Set the state's value with the class member that holds current
+    // setting value
+    myState.value = mNewValue;
+    return myState;
+}
+
+&#64;Override
+protected void onRestoreInstanceState(Parcelable state) {
+    // Check whether we saved the state in onSaveInstanceState
+    if (state == null || !state.getClass().equals(SavedState.class)) {
+        // Didn't save the state, so call superclass
+        super.onRestoreInstanceState(state);
+        return;
+    }
+
+    // Cast state to custom BaseSavedState and pass to superclass
+    SavedState myState = (SavedState) state;
+    super.onRestoreInstanceState(myState.getSuperState());
+    
+    // Set this Preference's widget to reflect the restored state
+    mNumberPicker.setValue(myState.value);
+}
+</pre>
+
diff --git a/docs/html-intl/intl/vi/guide/topics/ui/ui-events.jd b/docs/html-intl/intl/vi/guide/topics/ui/ui-events.jd
new file mode 100644
index 0000000..b4d1635
--- /dev/null
+++ b/docs/html-intl/intl/vi/guide/topics/ui/ui-events.jd
@@ -0,0 +1,291 @@
+page.title=Sự kiện Nhập liệu
+parent.title=Giao diện Người dùng
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Trong tài liệu này</h2>
+  <ol>
+    <li><a href="#EventListeners">Đối tượng theo dõi Sự kiện</a></li>
+    <li><a href="#EventHandlers">Bộ xử lý Sự kiện</a></li>
+    <li><a href="#TouchMode">Chế độ Cảm ứng</a></li>
+    <li><a href="#HandlingFocus">Xử lý Tiêu điểm</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>Trên Android, có nhiều cách để can thiệp vào các sự kiện từ tương tác của một người dùng với ứng dụng của bạn.
+Khi xem xét các sự kiện trong giao diện người dùng của bạn, cách tiếp cận là chụp lại sự kiện từ
+đối tượng Dạng xem cụ thể mà người dùng tương tác với. Lớp Dạng xem sẽ cung cấp phương thức để làm việc này.</p>
+
+<p>Trong các lớp Dạng xem khác nhau mà bạn sẽ sử dụng để soạn bố trí của mình, bạn có thể thấy một vài phương pháp gọi lại 
+công khai dường như hữu ích đối với sự kiện UI. Những phương pháp này được khuôn khổ Android gọi khi 
+xảy ra hành động tương ứng trên đối tượng đó. Ví dụ, khi một Dạng xem (chẳng hạn như một Nút) được chạm vào,
+phương pháp <code>onTouchEvent()</code> được gọi trên đối tượng đó. Tuy nhiên, để can thiệp vào điều này, bạn phải mở rộng
+lớp và khống chế phương pháp đó. Tuy nhiên, việc mở rộng mọi đối tượng Dạng xem
+để xử lý một sự kiện như vậy sẽ là không thực tế. Đây là lý do tại sao lớp Dạng xem cũng chứa
+một tập hợp giao diện lồng nhau cùng các phương pháp gọi lại mà bạn có thể định nghĩa dễ dàng hơn nhiều. Những giao diện này,
+được gọi là <a href="#EventListeners">đối tượng theo dõi sự kiện</a>, là tấm vé để bạn chụp lại tương tác giữa người dùng với UI của bạn.</p>
+
+<p>Trong khi các đối tượng theo dõi sự kiện sẽ thường được sử dụng để theo dõi tương tác của người dùng, có thể
+có lúc bạn muốn mở rộng một lớp Dạng xem để xây dựng một thành phần tùy chỉnh. 
+Có thể là bạn muốn mở rộng lớp {@link android.widget.Button}
+để khiến cái gì đó trông ấn tượng hơn. Trong trường hợp này, bạn sẽ có thể định nghĩa các hành vi sự kiện mặc định cho lớp
+của mình bằng cách sử dụng <a href="#EventHandlers">bộ xử lý sự kiện</a> của lớp.</p>
+
+
+<h2 id="EventListeners">Đối tượng theo dõi Sự kiện</h2>
+
+<p>Đối tượng theo dõi sự kiện là một giao diện trong lớp {@link android.view.View} chứa một phương pháp gọi lại 
+đơn lẻ. Những phương pháp này sẽ được khuôn khổ Android gọi khi Dạng xem mà đối tượng theo dõi đã
+được đăng ký với bị kích khởi bởi tương tác giữa người dùng với mục trong UI.</p>
+
+<p>Trong giao diện của đối tượng theo dõi sự kiện là những phương pháp gọi lại sau:</p>
+
+<dl>
+  <dt><code>onClick()</code></dt>
+    <dd>Từ {@link android.view.View.OnClickListener}. 
+    Phương pháp này được gọi khi người dùng chạm vào mục 
+    (khi ở chế độ cảm ứng), hoặc lấy tiêu điểm vào một mục bằng phím điều hướng hoặc bi xoay và
+    nhấn phím "enter" phù hợp hoặc nhấn bi xoay.</dd>
+  <dt><code>onLongClick()</code></dt>
+    <dd>Từ {@link android.view.View.OnLongClickListener}. 
+    Phương pháp này được gọi khi người gọi chạm và giữ mục (khi ở chế độ cảm ứng), hoặc 
+    lấy tiêu điểm vào một mục bằng phím điều hướng hoặc bi xoay và
+    nhấn và giữ phím "enter" phù hợp hoặc nhấn và giữ bi xoay (trong một giây).</dd>
+  <dt><code>onFocusChange()</code></dt>
+    <dd>Từ {@link android.view.View.OnFocusChangeListener}. 
+    Phương pháp này được gọi khi người dùng điều hướng lên hoặc ra khỏi một mục bằng cách sử dụng các phím điều hướng hoặc bi xoay.</dd>
+  <dt><code>onKey()</code></dt>
+    <dd>Từ {@link android.view.View.OnKeyListener}. 
+    Phương pháp này được gọi khi người dùng được lấy tiêu điểm vào một mục và nhấn hoặc nhả phím cứng trên thiết bị.</dd>
+  <dt><code>onTouch()</code></dt>
+    <dd>Từ {@link android.view.View.OnTouchListener}. 
+    Phương pháp này được gọi khi người dùng thực hiện một hành động được coi như một sự kiện chạm, bao gồm nhấn, nhả,
+    hoặc bất kỳ động tác chuyển động nào trên màn hình (trong đường biên của mục đó).</dd>
+  <dt><code>onCreateContextMenu()</code></dt>
+    <dd>Từ {@link android.view.View.OnCreateContextMenuListener}. 
+    Phương pháp này được gọi khi một Menu Ngữ cảnh đang được xây dựng (kết quả của một sự kiện "nhấp giữ" kéo dài). Xem phần thảo luận về
+    menu ngữ cảnh trong hướng dẫn dành cho nhà phát triển <a href="{@docRoot}guide/topics/ui/menus.html#context-menu">Menu</a>
+.</dd>
+</dl>
+
+<p>Những phương pháp này là phương pháp duy nhất nằm trong giao diện tương ứng của chúng. Để định nghĩa một trong những phương pháp này
+và xử lý sự kiện của bạn, hãy triển khai giao diện lồng nhau trong Hoạt động của bạn hoặc định nghĩa nó thành một lớp vô danh.
+Sau đó, chuyển một thực thể triển khai của bạn
+tới phương pháp <code>View.set...Listener()</code> tương ứng. (Ví dụ, gọi 
+<code>{@link android.view.View#setOnClickListener(View.OnClickListener) setOnClickListener()}</code> 
+và chuyển cho nó triển khai {@link android.view.View.OnClickListener OnClickListener} của bạn.)</p>
+
+<p>Ví dụ bên dưới cho biết cách đăng ký một đối tượng theo dõi khi nhấp cho một Nút. </p>
+
+<pre>
+// Create an anonymous implementation of OnClickListener
+private OnClickListener mCorkyListener = new OnClickListener() {
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+};
+
+protected void onCreate(Bundle savedValues) {
+    ...
+    // Capture our button from layout
+    Button button = (Button)findViewById(R.id.corky);
+    // Register the onClick listener with the implementation above
+    button.setOnClickListener(mCorkyListener);
+    ...
+}
+</pre>
+
+<p>Bạn cũng có thể thấy tiện hơn khi triển khai OnClickListener như một phần trong Hoạt động của mình.
+Làm vậy sẽ tránh phải tải lớp bổ sung và phân bổ đối tượng. Ví dụ:</p>
+<pre>
+public class ExampleActivity extends Activity implements OnClickListener {
+    protected void onCreate(Bundle savedValues) {
+        ...
+        Button button = (Button)findViewById(R.id.corky);
+        button.setOnClickListener(this);
+    }
+
+    // Implement the OnClickListener callback
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+    ...
+}
+</pre>
+
+<p>Lưu ý rằng phương pháp gọi lại <code>onClick()</code> trong ví dụ trên không có giá trị
+trả về, nhưng một số phương pháp đối tượng theo dõi sự kiện khác phải trả về một boolean. Lý do
+này phụ thuộc vào sự kiện. Với số ít sự kiện thực hiện như vậy, sau đây là lý do:</p>
+<ul>
+  <li><code>{@link android.view.View.OnLongClickListener#onLongClick(View) onLongClick()}</code> - 
+    Trả về một boolean cho biết bạn đã xử lý sự kiện và sự kiện không nên được tiếp tục hay không. 
+    Cụ thể, trả về <em>true</em> để cho biết rằng bạn đã xử lý sự kiện và nó nên dừng ở đây; 
+    trả về <em>false</em> nếu bạn chưa xử lý nó và/hoặc sự kiện sẽ tiếp tục đối với bất kỳ
+    đối tượng theo dõi khi nhấp nào khác.</li>
+  <li><code>{@link android.view.View.OnKeyListener#onKey(View,int,KeyEvent) onKey()}</code> - 
+    Trả về một boolean cho biết bạn đã xử lý sự kiện và sự kiện không nên được tiếp tục hay không.
+    Cụ thể, trả về <em>true</em> sẽ cho biết rằng bạn đã xử lý sự kiện và nó nên dừng ở đây; 
+    trả về <em>false</em> nếu bạn chưa xử lý nó và/hoặc sự kiện sẽ tiếp tục đối với bất kỳ
+    đối tượng theo dõi trên phím nào khác.</li>
+  <li><code>{@link android.view.View.OnTouchListener#onTouch(View,MotionEvent) onTouch()}</code> - 
+    Trả về một boolean cho biết đối tượng theo dõi của bạn có xử lý sự kiện này hay không. Điều quan trọng đó là
+    sự kiện này có thể có nhiều hành động nối tiếp nhau. Vì vậy, nếu bạn trả về <em>false</em> khi
+    nhận được sự kiện hành động hướng xuống, bạn sẽ cho biết rằng mình chưa xử lý sự kiện và cũng
+    không quan tâm tới các hành động sau đó từ sự kiện này. Vì thế, bạn sẽ không bị gọi vì bất kỳ hành động nào khác
+    trong sự kiện, chẳng hạn như một cử chỉ ngón tay, hay sự kiện hành động cho sự kiện hướng lên.</li>
+</ul>
+
+<p>Ghi nhớ rằng các sự kiện phím cứng luôn được chuyển tới Dạng xem đang được lấy tiêu điểm. Chúng được chuyển bắt đầu từ trên cùng
+của phân cấp Dạng xem, rồi xuống dưới, tới khi chúng đến đích phù hợp. Nếu Dạng xem của bạn (hoặc con của Dạng xem)
+hiện có tiêu điểm, khi đó bạn có thể thấy hành trình của sự kiện qua phương pháp <code>{@link android.view.View#dispatchKeyEvent(KeyEvent)
+dispatchKeyEvent()}</code>. Một cách khác để chụp lại các sự kiện phím bấm thông qua Dạng xem của mình, bạn cũng có thể nhận
+tất cả sự kiện bên trong Hoạt động của mình bằng <code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>
+và <code>{@link android.app.Activity#onKeyUp(int,KeyEvent) onKeyUp()}</code>.</p>
+
+<p>Đồng thời, khi nghĩ tới nhập liệu văn bản cho ứng dụng của bạn, hãy nhớ rằng nhiều thiết bị chỉ có các phương pháp
+nhập liệu mềm. Những phương pháp như vậy không bắt buộc phải dựa trên phím bấm; một số có thể sử dụng nhập liệu bằng giọng nói, viết tay, v.v. Ngay cả khi
+một phương pháp nhập liệu trình bày một giao diện như bàn phím, nó sẽ thường <strong>không</strong> kích khởi họ sự kiện
+<code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>. Bạn không nên
+xây dựng UI yêu cầu kiểm soát các thao tác nhấn phím cụ thể trừ khi muốn giới hạn ứng dụng của bạn ở một số thiết bị
+có bàn phím cứng. Cụ thể, không được dựa vào những phương pháp này để xác thực nhập liệu khi người dùng nhấn phím
+quay lại; thay vào đó, hãy sử dụng các hành động như {@link android.view.inputmethod.EditorInfo#IME_ACTION_DONE} để báo hiệu với
+phương pháp nhập liệu bạn kỳ vọng ứng dụng của mình sẽ phản ứng như thế nào để nó có thể thay đổi UI của mình cho có nghĩa. Tránh các giả định
+về cách thức hoạt động của một phương pháp nhập liệu mềm và chỉ tin tưởng để nó cung cấp văn bản đã có định dạng cho ứng dụng của mình.</p>
+
+<p class="note"><strong>Lưu ý:</strong> Android sẽ gọi bộ xử lý sự kiện trước rồi mới tới bộ xử lý
+mặc định phù hợp từ định nghĩa lớp. Như thế, việc trả về <em>true</em> từ những đối tượng theo dõi sự kiện này sẽ dừng
+việc lan truyền sự kiện tới đối tượng theo dõi sự kiện khác và cũng sẽ chặn phương pháp gọi lại tới
+bộ xử lý sự kiện mặc định trong Dạng xem. Vì thế, hãy chắc chắn rằng bạn muốn chấm dứt sự kiện khi trả về <em>true</em>.</p>
+
+
+<h2 id="EventHandlers">Bộ xử lý Sự kiện</h2>
+
+<p>Nếu bạn đang xây dựng một thành phần tùy chỉnh từ Dạng xem, khi đó bạn sẽ có thể định nghĩa một vài phương pháp gọi lại
+được sử dụng như bộ xử lý sự kiện mặc định.
+Trong tài liệu về <a href="{@docRoot}guide/topics/ui/custom-components.html">Thành phần
+Tùy chỉnh</a>, bạn sẽ tìm hiểu về một số phương pháp gọi lại phổ biến được sử dụng để xử lý sự kiện,
+bao gồm:</p>
+<ul>
+  <li><code>{@link  android.view.View#onKeyDown}</code> - Được gọi khi xảy ra một sự kiện phím bấm mới.</li>
+  <li><code>{@link  android.view.View#onKeyUp}</code> - Được gọi khi xảy ra một sự kiện phím bấm hướng lên.</li>
+  <li><code>{@link  android.view.View#onTrackballEvent}</code> - Được gọi khi xảy ra một sự kiện chuyển động bi xoay.</li>
+  <li><code>{@link  android.view.View#onTouchEvent}</code> - Được gọi khi xảy ra một sự kiện chuyển động màn hình cảm ứng.</li>
+  <li><code>{@link  android.view.View#onFocusChanged}</code> - Được gọi khi dạng xem có hoặc mất tiêu điểm.</li>
+</ul>
+<p>Có một số phương pháp khác mà bạn cần lưu ý, chúng không thuộc lớp Dạng xem, 
+nhưng có thể tác động trực tiếp tới cách bạn có thể xử lý sự kiện. Vì thế, khi quản lý các sự kiện phức tạp hơn bên trong 
+một bố trí, hãy xét những phương pháp khác sau:</p>
+<ul>
+  <li><code>{@link  android.app.Activity#dispatchTouchEvent(MotionEvent)
+    Activity.dispatchTouchEvent(MotionEvent)}</code> - Phương pháp này cho phép {@link 
+    android.app.Activity} của bạn can thiệp vào tất cả sự kiện chạm trước khi chúng được phân phối tới cửa sổ.</li>
+  <li><code>{@link  android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)
+    ViewGroup.onInterceptTouchEvent(MotionEvent)}</code> - Phương pháp này cho phép một {@link
+    android.view.ViewGroup} xem sự kiện khi chúng được phân phối tới Dạng xem con.</li>
+  <li><code>{@link  android.view.ViewParent#requestDisallowInterceptTouchEvent(boolean)
+    ViewParent.requestDisallowInterceptTouchEvent(boolean)}</code> - Gọi phương pháp
+    này trên Dạng xem mẹ để cho biết rằng nó sẽ không can thiệp vào các sự kiện chạm bằng <code>{@link 
+    android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)}</code>.</li>
+</ul>
+
+<h2 id="TouchMode">Chế độ Cảm ứng</h2>
+<p>
+Khi một người dùng đang điều hướng trong một giao diện người dùng bằng phím hướng hoặc bi xoay, cần
+lấy tiêu điểm tới các mục có thể hành động (như nút) sao cho người dùng có thể thấy
+mục nào sẽ chấp nhận nhập liệu.  Tuy nhiên, nếu thiết bị có khả năng cảm ứng, và người dùng
+bắt đầu tương tác với giao diện bằng cách chạm vào nó, khi đó không còn cần
+tô sáng mục hay lấy tiêu điểm tới một Dạng xem cụ thể nữa.  Do đó, có một chế độ cho
+tương tác có tên là "chế độ cảm ứng." 
+</p>
+<p>
+Đối với thiết bị có khả năng cảm ứng, sau khi người dùng chạm vào màn hình, thiết bị
+sẽ vào chế độ cảm ứng.  Từ điểm này trở đi, chỉ những Dạng xem mà
+{@link android.view.View#isFocusableInTouchMode} là đúng mới có thể lấy tiêu điểm, chẳng hạn như chế độ xem các widget chỉnh sửa văn bản.
+Các Dạng xem chạm được, chẳng hạn như nút, sẽ không lấy được tiêu điểm khi chạm; chúng sẽ chỉ đơn giản
+khởi chạy đối tượng theo dõi khi nhấp của mình khi được nhấn.
+</p>
+<p>
+Bất cứ khi nào một người dùng nhấn phím hướng hoặc cuộn bằng bi xoay, thiết bị sẽ
+thoát chế độ cảm ứng, và tìm một dạng xem để lấy tiêu điểm. Lúc này, người dùng có thể tiếp tục tương tác
+với giao diện người dùng mà không chạm vào màn hình.
+</p>
+<p>
+Trạng thái chế độ cảm ứng sẽ được duy trì trên toàn bộ hệ thống (tất cả cửa sổ và hoạt động). 
+Để truy vấn trạng thái hiện tại, bạn có thể gọi
+{@link android.view.View#isInTouchMode} để xem liệu thiết bị có đang ở trong chế độ cảm ứng hay không.
+</p>
+
+
+<h2 id="HandlingFocus">Xử lý Tiêu điểm</h2>
+
+<p>Khuôn khổ sẽ xử lý chuyển động của tiêu điểm thường xuyên hồi đáp lại nhập liệu của người dùng.
+Việc này bao gồm thay đổi tiêu điểm khi Dạng xem bị loại bỏ hoặc ẩn đi, hoặc khi Dạng xem
+mới có sẵn. Dạng xem thể hiện sự sẵn sàng lấy tiêu điểm của chúng
+thông qua phương pháp <code>{@link android.view.View#isFocusable()}</code>. Để thay đổi việc liệu một Dạng xem có thể lấy
+tiêu điểm hay không, hãy gọi <code>{@link android.view.View#setFocusable(boolean) setFocusable()}</code>.  Khi ở trong chế độ cảm ứng,
+bạn có thể truy vấn xem Dạng xem có cho phép lấy tiêu điểm bằng <code>{@link android.view.View#isFocusableInTouchMode()}</code> hay không.
+Bạn có thể thay đổi điều này bằng <code>{@link android.view.View#setFocusableInTouchMode(boolean) setFocusableInTouchMode()}</code>.
+</p>
+
+<p>Chuyển động tiêu điểm được dựa trên một giải thuật tìm kiếm đối tượng gần nhất theo
+một hướng cho trước. Trong các trường hợp hiếm gặp, giải thuật mặc định có thể không khớp với
+hành vi theo ý định của nhà phát triển. Trong những tình huống này, bạn có thể cung cấp
+các khống chế rõ ràng với các thuộc tính XML sau trong tệp bố trí:
+<var>nextFocusDown</var>, <var>nextFocusLeft</var>, <var>nextFocusRight</var>, và
+<var>nextFocusUp</var>. Thêm một trong những thuộc tính này vào Dạng xem mà <em>từ</em> đó
+tiêu điểm đang rời khỏi. Định nghĩa giá trị của thuộc tính là id của Dạng xem
+<em>mà</em> cần được lấy tiêu điểm. Ví dụ:</p>
+<pre>
+&lt;LinearLayout
+    android:orientation="vertical"
+    ... >
+  &lt;Button android:id="@+id/top"
+          android:nextFocusUp="@+id/bottom"
+          ... />
+  &lt;Button android:id="@+id/bottom"
+          android:nextFocusDown="@+id/top"
+          ... />
+&lt;/LinearLayout>
+</pre>
+
+<p>Thông thưởng, trong bố trí thẳng đứng này, việc điều hướng lên từ Nút đầu tiên sẽ không
+đi tới đâu hết và việc điều hướng xuống từ Nút thứ hai cũng vậy. Giờ thì khi Nút trên cùng
+đã định nghĩa Nút dưới cùng là <var>nextFocusUp</var> (và ngược lại), tiêu điểm điều hướng sẽ 
+luân chuyển từ trên-xuống-dưới và dưới-lên-trên.</p>
+
+<p>Nếu bạn muốn khai báo một Dạng xem là có thể lấy tiêu điểm trong UI của mình (thông thường thì không), 
+hãy thêm thuộc tính XML <code>android:focusable</code> vào Dạng xem, trong khai báo bố trí của bạn.
+Đặt giá trị <var>true</var>. Bạn cũng có thể khai báo một Dạng xem
+là có thể lấy tiêu điểm trong khi ở Chế độ Cảm ứng bằng <code>android:focusableInTouchMode</code>.</p>
+<p>Để yêu cầu một Dạng xem cụ thể để lấy tiêu điểm, hãy gọi <code>{@link android.view.View#requestFocus()}</code>.</p>
+<p>Để theo dõi các sự kiện tiêu điểm (được thông báo khi một Dạng xem nhận được hoặc mất tiêu điểm), hãy sử dụng
+<code>{@link android.view.View.OnFocusChangeListener#onFocusChange(View,boolean) onFocusChange()}</code>,
+như được đề cập trong phần <a href="#EventListeners">Đối tượng theo dõi Sự kiện</a> bên trên.</p>
+
+
+
+<!--
+<h2 is="EventCycle">Event Cycle</h2>
+   <p>The basic cycle of a View is as follows:</p>
+   <ol>
+    <li>An event comes in and is dispatched to the appropriate View. The View
+    handles the event and notifies any listeners.</li>
+    <li>If, in the course of processing the event, the View's bounds may need
+    to be changed, the View will call {@link android.view.View#requestLayout()}.</li>
+    <li>Similarly, if in the course of processing the event the View's appearance
+    may need to be changed, the View will call {@link android.view.View#invalidate()}.</li>
+    <li>If either {@link android.view.View#requestLayout()} or {@link android.view.View#invalidate()} were called,
+    the framework will take care of measuring, laying out, and drawing the tree
+    as appropriate.</li>
+   </ol>
+   
+   <p class="note"><strong>Note:</strong> The entire View tree is single threaded. You must always be on
+   the UI thread when calling any method on any View.
+   If you are doing work on other threads and want to update the state of a View
+   from that thread, you should use a {@link android.os.Handler}.
+   </p>
+-->
diff --git a/docs/html-intl/intl/vi/sdk/index.jd b/docs/html-intl/intl/vi/sdk/index.jd
new file mode 100644
index 0000000..c4009f4
--- /dev/null
+++ b/docs/html-intl/intl/vi/sdk/index.jd
@@ -0,0 +1,430 @@
+page.title=Tải xuống Android Studio và SDK Tools
+page.tags=sdk, android studio
+page.template=sdk
+page.image=images/cards/android-studio_2x.png
+header.hide=1
+page.metaDescription=Tải xuống Android IDE chính thức và bộ công cụ cho nhà phát triển để xây dựng ứng dụng cho điện thoại, máy tính bảng, thiết bị đeo được, TV chạy Android và nhiều thiết bị khác.
+
+@jd:body
+
+<style type="text/css">
+  .offline {display:none;}
+  h2.feature {
+    padding-top:30px;
+    margin-top:0;
+    clear:both;
+  }
+  .feature-blurb {
+  margin:0px; font-size:16px; font-weight:300;
+  padding-top:40px;
+  }
+
+  .landing-button .small {
+    font-size: 12px;
+    font-weight: normal;
+    line-height: 12px;
+    display: block;
+  }
+
+  h1.studio-logo {
+    width:226px;
+    height:78px;
+    display:block;
+    padding:0;
+    white-space: nowrap;
+    text-indent: -10000px;
+    font-size:0px;
+    background: url({@docRoot}images/tools/studio-logo.png);
+    background-image: -webkit-image-set(url({@docRoot}images/tools/studio-logo.png) 1x, url({@docRoot}images/tools/studio-logo_2x.png) 2x);
+    background-size: 226px 78px;
+  }
+
+</style>
+
+
+
+
+
+<div style="position:relative;">
+
+
+<div class="wrap" id="tos" style="display:none;width:inherit;height:650px">
+<div class="col-13" style="margin:0;">&nbsp;</div><!-- provides top margin for content -->
+
+<h1 id="tos-header" style="margin-top:0">Tải xuống</h1>
+
+<p class="sdk-terms-intro">Trước khi cài đặt Android Studio hoặc bộ công cụ SDK độc lập,
+bạn phải đồng ý với các điều khoản và điều kiện sau.</p>
+
+<div class="sdk-terms" onfocus="this.blur()">
+<h2 class="norule">Điều khoản và Điều kiện</h2>
+Đây là Thỏa thuận Cấp phép cho Bộ công cụ Phát triển Phần mềm Android
+
+<h3>1. Introduction</h3>
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+
+<h3>2. Accepting this License Agreement</h3>
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
+
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
+
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+
+
+<h3>3. SDK License from Google</h3>
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
+
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
+
+3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
+
+
+<h3>4. Use of the SDK by You</h3>
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+
+<h3>5. Your Developer Credentials</h3>
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+
+<h3>6. Privacy and Information</h3>
+6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy.
+
+
+<h3>7. Third Party Applications</h3>
+7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
+
+
+<h3>8. Using Android APIs</h3>
+8.1 Google Data APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+
+<h3>9. Terminating this License Agreement</h3>
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
+(B) Google is required to do so by law; or
+(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
+(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
+
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+
+
+<h3>10. DISCLAIMER OF WARRANTIES</h3>
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+
+<h3>11. LIMITATION OF LIABILITY</h3>
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+
+<h3>12. Indemnification</h3>
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
+
+
+<h3>13. Changes to the License Agreement</h3>
+13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available.
+
+
+<h3>14. General Legal Terms</h3>
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+
+<em>November 20, 2015</em>
+</div>
+
+
+
+
+
+<div id="next-steps" style="display:none;position:absolute;width:inherit">
+  <p>Bạn chỉ còn vài bước nữa là được bắt đầu xây dựng ứng dụng cho Android!</p>
+  <p>Trong chốc lát, bạn sẽ được chuyển hướng đến
+  <a id="next-link" href="{@docRoot}sdk/installing/index.html">Cài đặt SDK Android</a>.</p>
+
+</div><!-- end next-steps -->
+
+
+
+<div id="sdk-terms-form">
+<p>
+<input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+<label id="agreeLabel" for="agree">Tôi đã đọc và đồng ý với các điều khoản và điều kiện trên</label>
+</p>
+<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+</div>
+
+
+</div><!-- end TOS -->
+
+
+
+
+
+
+<div id="landing">
+
+<div class="col-13">&nbsp;</div><!-- provides top margin for content -->
+
+<img src="{@docRoot}images/tools/studio-hero.png" srcset="{@docRoot}images/tools/studio-hero_2x.png 2x, {@docRoot}images/tools/studio-hero.png 1x" width="760" height="400" />
+
+<div style="color: #fff; width:226px; height:0; overflow:visible; position:absolute; top:40px; left:25px">
+
+<h1 class="studio-logo" style="margin:0 0 35px !important">Android Studio</h1>
+
+<p style="font-size: 16px; color:#bbb; position: absolute;left: 297px; top: 5px; display: block;
+width: 400px;text-align: center;">IDE Android chính thức</p>
+
+<ul style="font-size:12px;line-height:19px;">
+<li>IDE Android Studio</li>
+<li>Bộ công cụ SDK Android</li>
+<li>Nền tảng Android 6.0 (Marshmallow)</li>
+<li>Ảnh hệ thống trình mô phỏng Android 6.0 cùng các API của Google</li>
+</ul>
+
+<a class="online landing-button green download-bundle-button"
+href="#Other" >Download Android Studio<br/><span class='small'></span></a>
+
+<!-- this appears when viewing the offline docs -->
+<p class="offline">
+Để tải Android Studio hoặc bộ công cụ SDK độc lập, hãy truy cập <a href="http://developer.android.com/sdk/index.html">developer.android.com/sdk/</a>
+</p>
+</div>
+
+<ul>
+  <li><a href="#Requirements">Yêu cầu Hệ thống</a></li>
+  <li><a href="#Other">Tùy chọn Tải xuống Khác</a></li>
+  <li><a href="{@docRoot}sdk/installing/migrate.html">Di chuyển tới Android Studio</a></li>
+  <li><a href="https://docs.google.com/a/google.com/forms/d/1mjsyfzv3HAnDY-_Kfj-3QJKdpuksyMFs9e73CRwmT6Q/viewform" target="_blank">Tham gia Khảo sát</a></li>
+</ul>
+
+
+
+
+
+<h2 class="feature norule" >Trình chỉnh sửa mã thông minh</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-code.png" srcset="{@docRoot}images/tools/studio-hero-code_2x.png 2x, {@docRoot}images/tools/studio-hero-code.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Nằm ở cốt lõi của Android Studio là một trình biên tập mã thông minh có khả năng hoàn thành
+  mã, dựng lại và phân tích mã nâng cao.</p>
+  <p>Trình chỉnh sửa mã mạnh mẽ này sẽ giúp bạn trở thành một nhà phát triển ứng dụng Android năng suất hơn.</p>
+</div>
+
+
+
+
+
+<h2 class="feature norule">Các ví dụ mã và tích hợp GitHub</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-import.png" srcset="{@docRoot}images/tools/studio-hero-import_2x.png 2x, {@docRoot}images/tools/studio-hero-import.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Các trình hướng dẫn dự án mới sẽ giúp bắt đầu một dự án mới dễ hơn bao giờ hết.</p>
+
+  <p>Bắt đầu các dự án bằng cách sử dụng mã mẫu cho các kiểu mẫu như ngăn kéo điều hướng và các trình tạo trang dạng xem,
+  và thậm chí còn nhập được các ví dụ mã của Google từ GitHub.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">Phát triển ứng dụng đa màn hình</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-screens.png" srcset="{@docRoot}images/tools/studio-hero-screens_2x.png 2x, {@docRoot}images/tools/studio-hero-screens.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Xây dựng ứng dụng cho điện thoại, máy tính bảng Android, Android Wear,
+  Android TV, Android Auto và Google Glass.</p>
+  <p>Với Dạng xem Dự án Android mới và hỗ trợ mô-đun trong Android Studio, việc
+  quản lý các dự án và tài nguyên ứng dụng trở nên dễ dàng hơn.
+</div>
+
+
+
+
+<h2 class="feature norule">Các thiết bị ảo cho tất cả hình dạng và kích cỡ</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-avds.png" srcset="{@docRoot}images/tools/studio-hero-avds_2x.png 2x, {@docRoot}images/tools/studio-hero-avds.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android Studio được cấu hình sẵn cùng một ảnh trình mô phỏng được tối ưu hóa.</p>
+  <p>Trình quản lý Thiết bị Ảo được cập nhật và hợp lý hoá sẽ cung cấp
+  các cấu hình thiết bị định nghĩa sẵn cho các thiết bị Android thông thường.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">
+Phát triển xây dựng Android bằng Gradle</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-gradle.png" srcset="{@docRoot}images/tools/studio-hero-gradle_2x.png 2x, {@docRoot}images/tools/studio-hero-gradle.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Tạo nhiều tệp APK cho ứng dụng Android của bạn với các tính năng khác nhau bằng cách sử dụng cùng dự án.</p>
+  <p>Quản lý phụ thuộc của ứng dụng bằng Maven.</p>
+  <p>Xây dựng APK từ Android Studio hoặc dòng lệnh.</p>
+</div>
+
+
+
+
+<h2 class="feature norule">Tìm hiểu thêm về Android Studio</h2>
+<div style="background:#424242;padding:30px; color:#fff;margin:0 0 15px;">
+
+<a class="online landing-button green download-bundle-button" style="margin:0 0 40px 60px;float:right" href="">Download</a>
+
+  <ul>
+  <li>Xây dựng Phiên bản Cộng đồng IntelliJ IDEA, IDE Java phổ biến của JetBrains.</li>
+  <li>Hệ thống xây dựng linh hoạt dựa trên Gradle.</li>
+  <li>Xây dựng các biến thể và khởi tạo nhiều APK.</li>
+  <li>Hỗ trợ mẫu mở rộng cho các Dịch vụ của Google và các loại thiết bị khác nhau.</li>
+  <li>Trình chỉnh sửa bố trí phong phú hỗ trợ chỉnh sửa chủ đề.</li>
+  <li>Bộ công cụ Lint để giải quyết các vấn đề về hiệu năng, khả năng sử dụng, tính tương thích với phiên bản và các vấn đề khác.</li>
+  <li>ProGuard và các khả năng ký ứng dụng.</li>
+  <li>Hỗ trợ tích hợp cho Nền tảng Đám mây của Google, giúp dễ dàng tích hợp Google Cloud
+  Nhắn tin và Công cụ Ứng dụng.</li>
+  </ul>
+
+<p style="margin:0">
+Để biết thêm chi tiết về các tính năng có sẵn trong Android Studio,
+hãy đọc hướng dẫn <a href="{@docRoot}tools/studio/index.html">Nội dung Cơ bản về Android Studio</a>.</p>
+</div>
+
+
+<p>Nếu bạn đang sử dụng Eclipse với ADT, hãy lưu ý rằng hiện Android Studio là IDE chính thức
+cho Android, vì thế bạn nên di chuyển sang Android Studio để nhận tất cả cập nhật
+IDE mới nhất. Để được trợ giúp về di chuyển các dự án,
+hãy xem phần <a href="{@docRoot}sdk/installing/migrate.html">Di chuyển sang Android
+Studio</a>.</p>
+
+
+
+
+
+
+
+<h2 id="Requirements">Yêu cầu Hệ thống</h2>
+
+<h3>Windows</h3>
+
+<ul>
+<li>Microsoft&reg;  Windows&reg;  8/7/Vista/2003 (32 hoặc 64-bit)</li>
+<li>Tối thiểu 2 GB RAM, khuyến nghị 4 GB RAM</li>
+<li>Dung lượng trống đĩa cứng 400 MB</li>
+<li>Ít nhất 1 GB cho SDK Android, các ảnh hệ thống trình mô phỏng và bộ đệm ẩn</li>
+<li>Độ phân giải màn hình tối thiểu 1280 x 800</li>
+<li>Java Development Kit (JDK) 7 </li>
+<li>Tùy chọn dành cho trình mô phỏng tăng tốc: Bộ xử lý Intel® có hỗ trợ Intel® VT-x, Intel® EM64T
+(Intel® 64), và tính năng Execute Disable (XD) Bit</li>
+</ul>
+
+
+<h3>Mac OS X</h3>
+
+<ul>
+<li>Mac&reg;  OS X&reg;  10.8.5 hoặc cao hơn, lên tới 10.9 (Mavericks)</li>
+<li>Tối thiểu 2 GB RAM, khuyến nghị 4 GB RAM</li>
+<li>Dung lượng trống đĩa cứng 400 MB</li>
+<li>Ít nhất 1 GB cho SDK Android, các ảnh hệ thống trình mô phỏng và bộ đệm ẩn</li>
+<li>Độ phân giải màn hình tối thiểu 1280 x 800</li>
+<li>Java Runtime Environment (JRE) 6</li>
+<li>Java Development Kit (JDK) 7</li>
+<li>Tùy chọn dành cho trình mô phỏng tăng tốc: Bộ xử lý Intel® có hỗ trợ Intel® VT-x, Intel® EM64T
+(Intel® 64), và tính năng Execute Disable (XD) Bit</li>
+</ul>
+
+<p>Trên Mac OS, hãy chạy Android Studio bằng Java Runtime Environment (JRE) 6 để dựng
+phông chữ tối ưu. Khi đó, bạn có thể cấu hình dự án của mình để sử dụng Java Development Kit (JDK) 6 hoặc JDK 7.</p>
+
+
+
+<h3>Linux</h3>
+
+<ul>
+<li>Máy tính bàn GNOME hoặc KDE</li>
+<li>GNU C Library (glibc) 2.15 hoặc mới hơn</li>
+<li>Tối thiểu 2 GB RAM, khuyến nghị 4 GB RAM</li>
+<li>Dung lượng trống đĩa cứng 400 MB</li>
+<li>Ít nhất 1 GB cho SDK Android, các ảnh hệ thống trình mô phỏng và bộ đệm ẩn</li>
+<li>Độ phân giải màn hình tối thiểu 1280 x 800</li>
+<li>Oracle&reg;  Java Development Kit (JDK) 7 </li>
+</ul>
+<p>Được thử nghiệm trên Ubuntu&reg;  14.04, Trusty Tahr (có khả năng phân phối 64-bit khi chạy các ứng dụng
+32-bit).</p>
+
+
+
+
+<h2 id="Other" style="clear:left">Tùy chọn Tải xuống Khác</h2>
+
+<!-- alternative SDK options follows -->
diff --git a/docs/html-intl/intl/vi/sdk/installing/adding-packages.jd b/docs/html-intl/intl/vi/sdk/installing/adding-packages.jd
new file mode 100644
index 0000000..1c9072c
--- /dev/null
+++ b/docs/html-intl/intl/vi/sdk/installing/adding-packages.jd
@@ -0,0 +1,226 @@
+page.title=Thêm Gói SDK
+
+page.tags=trình quản lý sdk
+
+@jd:body
+
+<style>
+ol.large {
+  margin-left:0;
+}
+ol.large > li {
+  list-style-position: inside;
+  list-style-type:none;
+  margin:30px 0 0 0;
+  padding:30px 20px;
+  background:#eee;
+}
+ol.large > li:nth-child(odd) {
+}
+ol.large > li:before {
+  display:inline;
+  left:-40px;
+  float:left;
+  width:20px;
+  font-size:20px;
+  line-height:20px;
+}
+ol.large > li > h2 {
+  font-size:20px;
+  line-height:20px;
+  padding:0 0 0 20px;
+  margin:0 0 20px 0;
+  display:inline;
+  font-weight:normal;
+}
+ol.large > li:nth-child(1):before {
+  content:"1. ";
+}
+ol.large > li:nth-child(2):before {
+  content:"2. ";
+}
+ol.large > li:nth-child(3):before {
+  content:"3. ";
+}
+ol.large > li:nth-child(4):before {
+  content:"4. ";
+}
+ol.large > li:nth-child(5):before {
+  content:"5. ";
+}
+ol.large > li:nth-child(6):before {
+  content:"6. ";
+}
+</style>
+
+
+<p>
+Theo mặc định, SDK Android không bao gồm mọi thứ bạn cần để bắt đầu phát triển.
+SDK chia những công cụ, nền tảng và các thành phần khác vào các gói mà bạn có thể
+tải xuống nếu cần bằng cách sử dụng
+<a href="{@docRoot}tools/help/sdk-manager.html">Trình quản lý SDK Android</a>.
+Vì vậy, trước khi có thể bắt đầu, có một vài gói bạn nên thêm vào SDK Android của mình.</p>
+
+<p>Để bắt đầu thêm gói, hãy khởi chạy Trình quản lý SDK Android bằng một trong những cách sau:</p>
+<ul>
+  <li>Trong Android Studio, nhấp vào <strong>Trình quản lý SDK</strong>
+<img src="{@docRoot}images/tools/sdk-manager-studio.png" style="vertical-align:bottom;margin:0;height:17px" /> ở thanh công cụ.</li>
+  <li>Nếu bạn không đang sử dụng Android Studio:
+    <ul>
+      <li>Windows: Bấm đúp tệp <code>SDK Manager.exe</code> ở gốc của thư mục SDK
+  Android.</li>
+      <li>Mac/Linux: Mở một terminal và điều hướng đến thư mục <code>tools/</code> ở vị trí
+      nơi cài đặt SDK Android, rồi chạy <code>android sdk</code>.</li>
+    </ul>
+  </li>
+</ul>
+
+<p>Khi bạn mở Trình quản lý SDK lần đầu, một vài gói sẽ được chọn
+theo mặc định. Để nguyên những gói được chọn này, nhưng hãy chắc chắn bạn có mọi thứ mình cần
+để bắt đầu bằng cách làm theo những bước sau:</p>
+
+
+<ol class="large">
+<li>
+  <h2 id="GetTools" class="norule">Tải công cụ SDK mới nhất</h2>
+
+<img src="/images/sdk_manager_packages.png" alt="" width="350" style="float:right;margin-left:20px" />
+
+  <p>Tối thiểu khi thiết đặt SDK Android,
+  bạn nên tải xuống những công cụ và nền tảng Android mới nhất:</p>
+  <ol>
+   <li>Mở thư mục Tools và chọn:
+     <ul>
+       <li><strong>Công cụ SDK Android</strong></li>
+       <li><strong>Công cụ Nền tảng SDK Android</strong></li>
+       <li><strong>Công cụ Xây dựng SDK Android</strong> (phiên bản mới nhất)</li>
+     </ul>
+   </li>
+   <li>Mở thư mục Android X.X đầu tiên (phiên bản mới nhất) và chọn:
+     <ul>
+      <li><strong>Nền tảng SDK</strong></li>
+      <li>Một ảnh hệ thống cho trình mô phỏng, chẳng hạn như <br>
+      <strong>Ảnh Hệ thống ARM EABI v7a</strong></li>
+     </ul>
+   </li>
+  </ol>
+</li>
+
+<li>
+  <h2 id="GetSupportLib" class="norule">Tải thư viện hỗ trợ cho các API bổ sung</h2>
+
+  <div class="sidebox">
+    <p>Phải có thư viện hỗ trợ đối với:</p>
+    <ul>
+      <li><a href="{@docRoot}wear/index.html">Android Wear</a></li>
+      <li><a href="{@docRoot}tv/index.html">Android TV</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+    </ul>
+
+    <p>Nó cũng cung cấp những API phổ biến sau:</p>
+    <ul>
+      <li><a href="{@docRoot}reference/android/support/v4/widget/DrawerLayout.html">Ngăn kéo
+      điều hướng</a></li>
+      <li><a href="{@docRoot}reference/android/support/v4/view/ViewPager.html">Chế độ xem trượt nhanh</a></li>
+      <li><a href="{@docRoot}reference/android/support/v7/app/ActionBar.html">Thanh hành động
+      tương thích ngược</a></li>
+    </ul>
+  </div>
+
+  <p><a href="{@docRoot}tools/support-library/features.html">Thư viện Hỗ trợ Android</a>
+  cung cấp một tập API mở rộng tương thích với hầu hết các phiên bản của Android.</p>
+
+  <p>Mở thư mục <strong>Extras</strong> và chọn:</p>
+     <ul>
+       <li><strong>Kho Hỗ trợ Android</strong></li>
+       <li><strong>Thư viện Hỗ trợ Android</strong></li>
+     </ul>
+
+  <p>&nbsp;</p>
+  <p>&nbsp;</p>
+
+</li>
+
+
+<li>
+  <h2 id="GetGoogle" class="norule">Tải dịch vụ Google Play để có nhiều API hơn nữa</h2>
+
+  <div class="sidebox">
+
+    <p>Các API dịch vụ Google Play sẽ cung cấp nhiều tính năng và dịch vụ cho các ứng dụng Android
+    của bạn, chẳng hạn như:</p>
+    <ul>
+      <li><a href="{@docRoot}google/play-services/plus.html">Xác thực người dùng</a></li>
+      <li><a href="{@docRoot}google/play-services/maps.html">Google Maps</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+      <li><a href="{@docRoot}google/play-services/games.html">Thành tích và bảng xếp hạng
+      trò chơi</a></li>
+      <li><a href="{@docRoot}google/play-services/index.html">Và nhiều hơn nữa</a></li>
+    </ul>
+  </div>
+
+  <p>Để phát triển bằng các API của Google, bạn cần gói dịch vụ Google Play.</p>
+  <p>Mở thư mục <strong>Extras</strong> và chọn:</p>
+     <ul>
+       <li><strong>Kho Google</strong></li>
+       <li><strong>Dịch vụ Google Play</strong></li>
+     </ul>
+
+  <p class="note"><strong>Lưu ý:</strong> Các API dịch vụ Google Play không có sẵn trên tất cả
+  thiết bị dựa trên nền tảng Android, nhưng có sẵn trên tất cả thiết bị có Google Play Store. Để sử dụng những
+  API này trong trình mô phỏng Android, bạn cũng phải cài đặt ảnh hệ thống <strong>Google API</strong>
+  từ thư mục Android X.X mới nhất trong Trình quản lý SDK.</p>
+</li>
+
+
+<li>
+  <h2 id="Install" class="norule">Cài đặt gói</h2>
+  <p>Sau khi bạn đã chọn tất cả gói mong muốn, hãy tiếp tục cài đặt:</p>
+  <ol>
+   <li>Bấm <strong>Cài đặt X gói</strong>.</li>
+   <li>Trong cửa sổ tiếp theo, bấm đúp vào tên của từng gói ở bên trái
+   để chấp nhận thỏa thuận cấp phép cho từng gói.</li>
+   <li>Bấm <strong>Cài đặt</strong>.</li>
+  </ol>
+  <p>Tiến trình tải xuống được hiện ở dưới cùng của cửa sổ Trình quản lý SDK.
+  <strong>Không được thoát Trình quản lý SDK</strong> nếu không nó sẽ hủy bỏ việc tải xuống.</p>
+</li>
+
+<li>
+  <h2 id="Build" class="norule">Xây dựng một thứ gì đó!</h2>
+
+<p>Với những gói trên có trong SDK Android của bạn, giờ bạn đã sẵn sàng để xây dựng ứng dụng
+cho Android. Khi có sẵn các công cụ mới và API khác, chỉ cần khởi chạy Trình quản lý SDK
+  để tải xuống các gói mới cho SDK của bạn.</p>
+
+<p>Sau đây là một vài tùy chọn về cách bạn nên tiến hành:</p>
+
+<div class="cols" style="padding:10px 0">
+<div class="col-4">
+<h3>Bắt đầu</h3>
+<p>Nếu bạn mới làm quen với phát triển Android, hãy tìm hiểu những nội dung cơ bản của ứng dụng Androi bằng cách làm theo
+hướng dẫn <strong><a href="{@docRoot}training/basics/firstapp/index.html">Xây dựng Ứng dụng Đầu tiên của bạn</a></strong>.</p>
+
+</div>
+<div class="col-4 box">
+<h3>Xây dựng cho thiết bị đeo được</h3>
+<p>Nếu bạn sẵn sàng bắt đầu xây dựng ứng dụng cho thiết bị đeo được Android, hãy xem hướng dẫn
+<strong><a href="{@docRoot}wear/preview/start.html">Xây dựng Ứng dụng cho Android Wear</a></strong>.</p>
+
+</div>
+<div class="col-4 box">
+<h3>Sử dụng API của Google</h3>
+<p>Để bắt đầu sử dụng các API của Google, chẳng hạn như các dịch vụ Bản đồ hoặc
+Chơi Trò chơi, hãy xem hướng dẫn
+<strong><a href="{@docRoot}google/play-services/setup.html">Thiết đặt Dịch vụ Google Play
+</a></strong>.</p>
+
+</div>
+</div><!-- end cols -->
+
+
+</li>
+
+</ol>
+
+
diff --git a/docs/html-intl/intl/vi/training/material/animations.jd b/docs/html-intl/intl/vi/training/material/animations.jd
new file mode 100644
index 0000000..e93c99d
--- /dev/null
+++ b/docs/html-intl/intl/vi/training/material/animations.jd
@@ -0,0 +1,550 @@
+page.title=Định nghĩa Hoạt hình Tùy chỉnh
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Bài học này hướng dẫn bạn cách</h2>
+<ol>
+  <li><a href="#Touch">Tùy chỉnh Phản hồi Chạm</a></li>
+  <li><a href="#Reveal">Sử dụng Hiệu ứng Lộ ra</a></li>
+  <li><a href="#Transitions">Tùy chỉnh Chuyển tiếp Hoạt động</a></li>
+  <li><a href="#ViewState">Tạo Hiệu ứng Hoạt hình Thay đổi Trạng thái Xem</a></li>
+  <li><a href="#AnimVector">Tạo Hiệu ứng Hoạt hình Nội dung vẽ được Véc-tơ</a></li>
+</ol>
+<h2>Bạn cũng nên đọc</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Đặc tả phong cách Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design trên Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Hoạt hình theo phong cách material design phản hồi hành động của người dùng và cung cấp 
+tính liên tục trực quan khi người dùng tương tác với ứng dụng của bạn. Giao diện material cung cấp một số hoạt hình
+mặc định cho các nút và chuyển tiếp hoạt động, và Android 5.0 (API mức 21) và cao hơn cho phép bạn tùy chỉnh
+những hoạt hình này và tạo các hoạt hình mới:</p>
+
+<ul>
+<li>Phản hồi chạm</li>
+<li>Lộ ra Vòng tròn</li>
+<li>Chuyển tiếp hoạt động</li>
+<li>Chuyển động cong</li>
+<li>Thay đổi trạng thái xem</li>
+</ul>
+
+
+<h2 id="Touch">Tùy chỉnh Phản hồi Chạm</h2>
+
+<p>Phản hồi chạm trong Material Design đưa ra một xác nhận trực quan tức thời tại
+điểm tiếp xúc khi người dùng tương tác với các phần tử UI. Hoạt hình phản hồi chạm mặc định
+cho nút sẽ sử dụng lớp {@link android.graphics.drawable.RippleDrawable} mới để chuyển tiếp
+giữa các trạng thái khác nhau bằng hiệu ứng gợn sóng.</p>
+
+<p>Trong hầu hết trường hợp, bạn nên áp dụng tính năng này trong tệp XML dạng xem của mình bằng cách chỉ định nền
+dạng xem là:</p>
+
+<ul>
+<li><code>?android:attr/selectableItemBackground</code> cho gợn sóng có giới hạn.</li>
+<li><code>?android:attr/selectableItemBackgroundBorderless</code> cho gợn sóng lan ra ngoài
+dạng xem. Hiệu ứng sẽ được vẽ lên và được giới hạn bởi dạng xem mẹ gần nhất có nền
+không rỗng.</li>
+</ul>
+
+<p class="note"><strong>Lưu ý:</strong> <code>selectableItemBackgroundBorderless</code> là một thuộc tính
+mới được giới thiệu trong API mức 21.</p>
+
+
+<p>Hoặc, bạn có thể định nghĩa {@link android.graphics.drawable.RippleDrawable}
+làm tài nguyên XML bằng cách sử dụng phần tử <code>ripple</code>.</p>
+
+<p>Bạn có thể gán một màu cho các đối tượng {@link android.graphics.drawable.RippleDrawable}. Để thay đổi
+màu phản hồi chạm mặc định, hãy sử dụng thuộc tính <code>android:colorControlHighlight</code>
+của chủ đề.</p>
+
+<p>Để biết thêm thông tin, hãy xem tài liệu tham khảo API cho lớp {@link
+android.graphics.drawable.RippleDrawable}.</p>
+
+
+<h2 id="Reveal">Sử dụng Hiệu ứng Lộ ra</h2>
+
+<p>Hoạt hình lộ ra đảm bảo tính liên tục trực quan cho người dùng khi bạn hiện hoặc ẩn một nhóm phần tử
+UI. Phương thức {@link android.view.ViewAnimationUtils#createCircularReveal
+ViewAnimationUtils.createCircularReveal()} cho phép bạn tạo hiệu ứng hoạt hình một vòng tròn cắt hình
+để lộ ra hoặc ẩn một dạng xem.</p>
+
+<p>Để lộ ra một dạng xem ẩn trước đó bằng hiệu ứng này:</p>
+
+<pre>
+// previously invisible view
+View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the final radius for the clipping circle
+int finalRadius = Math.max(myView.getWidth(), myView.getHeight());
+
+// create the animator for this view (the start radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius);
+
+// make the view visible and start the animation
+myView.setVisibility(View.VISIBLE);
+anim.start();
+</pre>
+
+<p>Để ẩn một dạng xem hiển thị trước đó bằng hiệu ứng này:</p>
+
+<pre>
+// previously visible view
+final View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the initial radius for the clipping circle
+int initialRadius = myView.getWidth();
+
+// create the animation (the final radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, initialRadius, 0);
+
+// make the view invisible when the animation is done
+anim.addListener(new AnimatorListenerAdapter() {
+    &#64;Override
+    public void onAnimationEnd(Animator animation) {
+        super.onAnimationEnd(animation);
+        myView.setVisibility(View.INVISIBLE);
+    }
+});
+
+// start the animation
+anim.start();
+</pre>
+
+
+<h2 id="Transitions">Tùy chỉnh Chuyển tiếp Hoạt động</h2>
+
+<!-- shared transition video -->
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay="">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.webm">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.ogv">
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <p class="img-caption" style="margin-top:3px;margin-bottom:10px"><strong>Hình 1</strong> - Chuyển tiếp
+    với những phần tử chung.</p>
+    <em>Để phát lại phim, nhấp vào màn hình thiết bị</em>
+  </div>
+</div>
+
+<p>Chuyển tiếp hoạt động trong các ứng dụng theo phong cách material design cung cấp kết nối trực quan giữa các trạng thái khác nhau
+thông qua chuyển động và chuyển đổi giữa những phần tử hay dùng. Bạn có thể quy định hoạt hình tùy chỉnh cho
+các chuyển tiếp ra vào và chuyển tiếp phần tử chung giữa các hoạt động.</p>
+
+<ul>
+<li>Chuyển tiếp <strong>vào</strong> xác định các dạng xem trong một hoạt động sẽ vào cảnh đó như thế nào.
+Ví dụ, trong chuyển tiếp vào dạng <em>nổ tung</em>, dạng xem sẽ vào cảnh từ bên ngoài
+và bay về phía chính giữa màn hình.</li>
+
+<li>Chuyển tiếp <strong>ra</strong> xác định các dạng xem trong một hoạt động sẽ ra khỏi cảnh như thế nào. Ví
+ dụ, trong chuyển tiếp ra kiểu <em>nổ tung</em>, dạng xem sẽ ra khỏi cảnh từ
+trung tâm.</li>
+
+<li>Chuyển tiếp <strong>phần tử chung</strong> xác định các dạng xem chung giữa hai hoạt động
+sẽ chuyển tiếp như thế nào giữa những hoạt động này. Ví dụ, nếu hai hoạt động có cùng
+hình ảnh ở các vị trí và kích cỡ khác nhau, chuyển tiếp phần tử chung <em>changeImageTransform</em> 
+sẽ thể hiện và co giãn hình ảnh một cách mượt mà giữa những hoạt động này.</li>
+</ul>
+
+<p>Android 5.0 (API mức 21) hỗ trợ những chuyển tiếp ra vào sau:</p>
+
+<ul>
+<li><em>nổ tung</em> - Di chuyển các dạng xem vào hoặc ra khỏi chính giữa cảnh.</li>
+<li><em>trượt</em> - Di chuyển các dạng xem vào hoặc ra từ một trong các mép của cảnh.</li>
+<li><em>mờ dần</em> - Thêm hoặc gỡ bỏ dạng xem khỏi cảnh bằng cách thay đổi độ mờ đục của nó.</li>
+</ul>
+
+<p>Bất cứ chuyển tiếp nào mở rộng lớp {@link android.transition.Visibility} đều được hỗ trợ
+như một chuyển tiếp vào hoặc ra. Để biết thêm thông tin, hãy xem tài liệu tham khảo API cho lớp
+{@link android.transition.Transition}.</p>
+
+<p>Android 5.0 (API mức 21) cũng hỗ trợ những chuyển tiếp phần tử chung này:</p>
+
+<ul>
+<li><em>changeBounds</em> - Tạo hiệu ứng hoạt hình các thay đổi trong giới hạn bố trí của dạng xem mục tiêu.</li>
+<li><em>changeClipBounds</em> - Tạo hiệu ứng hoạt hình các thay đổi trong giới hạn cắt hình của dạng xem mục tiêu.</li>
+<li><em>changeTransform</em> - Tạo hiệu ứng hoạt hình các thay đổi về co giãn và xoay dạng xem mục tiêu.</li>
+<li><em>changeImageTransform</em> - Tạo hiệu ứng hoạt hình các thay đổi về kích cỡ và co giãn của ảnh mục tiêu.</li>
+</ul>
+
+<p>Khi bạn cho phép chuyển tiếp hoạt động trong ứng dụng của mình, chuyển tiếp mờ dần chéo cross-fading
+mặc định sẽ được kích hoạt giữa các hoạt động ra vào.</p>
+
+<img src="{@docRoot}training/material/images/SceneTransition.png" alt="" width="600" height="405" style="margin-top:20px" />
+<p class="img-caption">
+  <strong>Hình 2</strong> - Chuyển tiếp cảnh với một phần tử chung.
+</p>
+
+<h3>Quy định chuyển tiếp tùy chỉnh</h3>
+
+<p>Trước tiên, cho phép chuyển tiếp nội dung cửa sổ bằng thuộc tính <code>android:windowContentTransitions</code>
+khi bạn định nghĩa một kiểu kế thừa từ chủ đề material. Bạn cũng có thể quy định chuyển tiếp
+ra, vào và phần tử chung trong định nghĩa kiểu của mình:</p>
+
+<pre>
+&lt;style name="BaseAppTheme" parent="android:Theme.Material">
+  &lt;!-- enable window content transitions -->
+  &lt;item name="android:windowContentTransitions">true&lt;/item>
+
+  &lt;!-- specify enter and exit transitions -->
+  &lt;item name="android:windowEnterTransition">@transition/explode&lt;/item>
+  &lt;item name="android:windowExitTransition">@transition/explode&lt;/item>
+
+  &lt;!-- specify shared element transitions -->
+  &lt;item name="android:windowSharedElementEnterTransition">
+    &#64;transition/change_image_transform&lt;/item>
+  &lt;item name="android:windowSharedElementExitTransition">
+    &#64;transition/change_image_transform&lt;/item>
+&lt;/style>
+</pre>
+
+<p>Chuyển tiếp <code>change_image_transform</code> trong ví dụ này được định nghĩa như sau:</p>
+
+<pre>
+&lt;!-- res/transition/change_image_transform.xml -->
+&lt;!-- (see also Shared Transitions below) -->
+&lt;transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;changeImageTransform/>
+&lt;/transitionSet>
+</pre>
+
+<p>Phần tử <code>changeImageTransform</code> tương ứng với lớp
+{@link android.transition.ChangeImageTransform}. Để biết thêm thông tin, hãy xem tài liệu tham khảo API
+cho {@link android.transition.Transition}.</p>
+
+<p>Thay vào đó, để cho phép chuyển tiếp nội dung cửa sổ trong mã của bạn, hãy gọi phương thức
+{@link android.view.Window#requestFeature Window.requestFeature()}:</p>
+
+<pre>
+// inside your activity (if you did not enable transitions in your theme)
+getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+
+// set an exit transition
+getWindow().setExitTransition(new Explode());
+</pre>
+
+<p>Để quy định chuyển tiếp trong mã của bạn, hãy gọi những phương thức này bằng đối tượng {@link
+android.transition.Transition}:</p>
+
+<ul>
+  <li>{@link android.view.Window#setEnterTransition Window.setEnterTransition()}</li>
+  <li>{@link android.view.Window#setExitTransition Window.setExitTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementEnterTransition
+      Window.setSharedElementEnterTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementExitTransition
+      Window.setSharedElementExitTransition()}</li>
+</ul>
+
+<p>Phương thức {@link android.view.Window#setExitTransition setExitTransition()} và {@link
+android.view.Window#setSharedElementExitTransition setSharedElementExitTransition()} định nghĩa
+chuyển tiếp ra cho hoạt động gọi. Phương thức {@link android.view.Window#setEnterTransition
+setEnterTransition()} và {@link android.view.Window#setSharedElementEnterTransition
+setSharedElementEnterTransition()} định nghĩa chuyển tiếp vào cho hoạt động được gọi.</p>
+
+<p>Để có đầy đủ hiệu ứng của một chuyển tiếp, bạn phải cho phép chuyển tiếp nội dung cửa sổ trên cả hoạt động
+gọi và được gọi. Nếu không, hoạt động gọi sẽ bắt đầu chuyển tiếp ra,
+nhưng khi đó bạn sẽ thấy chuyển tiếp cửa sổ (như co giãn và mờ dần).</p>
+
+<p>Để bắt đầu một chuyển tiếp vào ngay khi có thể, hãy sử dụng phương thức
+{@link android.view.Window#setAllowEnterTransitionOverlap Window.setAllowEnterTransitionOverlap()}
+trên hoạt động được gọi. Nó cho phép bạn có chuyển tiếp vào ấn tượng hơn.</p>
+
+<h3>Bắt đầu một hoạt động bằng chuyển tiếp</h3>
+
+<p>Nếu bạn cho phép chuyển tiếp và đặt chuyển tiếp ra cho một hoạt động, chuyển tiếp sẽ được
+kích hoạt khi bạn khởi chạy một hoạt động khác như sau:</p>
+
+<pre>
+startActivity(intent,
+              ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
+</pre>
+
+<p>Nếu bạn đặt một chuyển tiếp vào cho hoạt động thứ hai, chuyển tiếp này cũng được kích hoạt khi hoạt động
+bắt đầu. Để vô hiệu hoá chuyển tiếp khi bạn bắt đầu một hoạt động khác, hãy cung cấp
+một nhóm tùy chọn <code>null</code>.</p>
+
+<h3>Bắt đầu một hoạt động bằng một phần tử chung</h3>
+
+<p>Để tạo một hoạt hình chuyển tiếp màn hình giữa hai hoạt động có một phần tử chung:</p>
+
+<ol>
+<li>Cho phép chuyển tiếp nội dung cửa sổ trong chủ đề của bạn.</li>
+<li>Quy định một chuyển tiếp phần tử chung trong kiểu của bạn.</li>
+<li>Định nghĩa chuyển tiếp của bạn dưới dạng một tài nguyên XML.</li>
+<li>Gán một tên chung cho các phần tử chung ở cả hai bố trí bằng thuộc tính
+    <code>android:transitionName</code>.</li>
+<li>Sử dụng phương thức {@link android.app.ActivityOptions#makeSceneTransitionAnimation
+ActivityOptions.makeSceneTransitionAnimation()}.</li>
+</ol>
+
+<pre>
+// get the element that receives the click event
+final View imgContainerView = findViewById(R.id.img_container);
+
+// get the common element for the transition in this activity
+final View androidRobotView = findViewById(R.id.image_small);
+
+// define a click listener
+imgContainerView.setOnClickListener(new View.OnClickListener() {
+    &#64;Override
+    public void onClick(View view) {
+        Intent intent = new Intent(this, Activity2.class);
+        // create the transition animation - the images in the layouts
+        // of both activities are defined with android:transitionName="robot"
+        ActivityOptions options = ActivityOptions
+            .makeSceneTransitionAnimation(this, androidRobotView, "robot");
+        // start the new activity
+        startActivity(intent, options.toBundle());
+    }
+});
+</pre>
+
+<p>Đối với các dạng xem động dùng chung mà bạn khởi tạo trong mã của mình, hãy sử dụng phương thức
+{@link android.view.View#setTransitionName View.setTransitionName()} để quy định một
+tên phần tử chung trong cả hai hoạt động.</p>
+
+<p>Để đảo ngược hoạt hình chuyển tiếp cảnh khi bạn kết thúc hoạt động thứ hai, hãy gọi phương thức
+{@link android.app.Activity#finishAfterTransition Activity.finishAfterTransition()}
+thay vì {@link android.app.Activity#finish Activity.finish()}.</p>
+
+<h3>Bắt đầu một hoạt động bằng nhiều phần tử chung</h3>
+
+<p>Để tạo một hoạt hình chuyển tiếp cảnh giữa hai hoạt động có nhiều hơn một phần tử
+chung, hãy định nghĩa các phần tử chung trong cả hai bố trí bằng thuộc tính <code>android:transitionName</code>
+ (hoặc sử dụng phương thức {@link android.view.View#setTransitionName View.setTransitionName()} 
+trong cả hai hoạt động), và tạo một đối tượng {@link android.app.ActivityOptions} như sau:</p>
+
+<pre>
+ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(this,
+        Pair.create(view1, "agreedName1"),
+        Pair.create(view2, "agreedName2"));
+</pre>
+
+
+<h2 id="CurvedMotion">Sử dụng Chuyển động Cong</h2>
+
+<p>Hoạt hình theo phong cách material design phụ thuộc vào đường cong làm mẫu hình nội suy thời gian
+và chuyển động không gian. Với Android 5.0 (API mức 21) trở lên, bạn có thể định nghĩa đường cong định thời tùy chỉnh và
+mẫu hình chuyển động cong cho hoạt hình.</p>
+
+<p>Lớp {@link android.view.animation.PathInterpolator} là một hàm nội suy mới dựa trên đường cong
+Bézier hoặc đối tượng {@link android.graphics.Path}. Hàm nội suy này quy định một đường cong chuyển động
+trong một hình vuông 1x1, với các điểm neo tại (0,0) và (1,1) cùng các điểm kiểm soát được quy định bằng cách sử dụng
+các tham đối của hàm dựng. Bạn cũng có thể định nghĩa một hàm nội suy đường dẫn dưới dạng tài nguyên XML:</p>
+
+<pre>
+&lt;pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
+    android:controlX1="0.4"
+    android:controlY1="0"
+    android:controlX2="1"
+    android:controlY2="1"/>
+</pre>
+
+<p>Hệ thống cung cấp tài nguyên XML cho ba đường cong cơ bản trong đặc tả
+material design:</p>
+
+<ul>
+  <li><code>&#64;interpolator/fast_out_linear_in.xml</code></li>
+  <li><code>&#64;interpolator/fast_out_slow_in.xml</code></li>
+  <li><code>&#64;interpolator/linear_out_slow_in.xml</code></li>
+</ul>
+
+<p>Bạn có thể chuyển một đối tượng {@link android.view.animation.PathInterpolator} tới phương thức {@link
+android.animation.Animator#setInterpolator Animator.setInterpolator()}.</p>
+
+<p>Lớp {@link android.animation.ObjectAnimator} có các hàm dựng mới cho phép bạn tạo hiệu ứng hoạt hình
+cho các tọa độ dọc theo một đường dẫn bằng hai hoặc nhiều thuộc tính đồng thời. Ví dụ, trình tạo hoạt hình sau
+sử dụng một đối tượng {@link android.graphics.Path} để tạo hiệu ứng hoạt hình cho thuộc tính X và Y của một dạng xem:</p>
+
+<pre>
+ObjectAnimator mAnimator;
+mAnimator = ObjectAnimator.ofFloat(view, View.X, View.Y, path);
+...
+mAnimator.start();
+</pre>
+
+
+<h2 id="ViewState">Tạo Hiệu ứng Hoạt hình Thay đổi Trạng thái Xem</h2>
+
+<p>Lớp {@link android.animation.StateListAnimator} cho phép bạn định nghĩa trình tạo hoạt hình để chạy khi
+trạng thái của dạng xem thay đổi. Ví dụ sau cho biết cách định nghĩa một {@link
+android.animation.StateListAnimator}  dưới dạng tài nguyên XML:</p>
+
+<pre>
+&lt;!-- animate the translationZ property of a view when pressed -->
+&lt;selector xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;item android:state_pressed="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="@android:integer/config_shortAnimTime"
+        android:valueTo="2dp"
+        android:valueType="floatType"/>
+        &lt;!-- you could have other objectAnimator elements
+             here for "x" and "y", or other properties -->
+    &lt;/set>
+  &lt;/item>
+  &lt;item android:state_enabled="true"
+    android:state_pressed="false"
+    android:state_focused="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="100"
+        android:valueTo="0"
+        android:valueType="floatType"/>
+    &lt;/set>
+  &lt;/item>
+&lt;/selector>
+</pre>
+
+<p>Để gắn kèm hoạt hình trạng thái dạng xem tùy chỉnh vào một dạng xem, hãy định nghĩa một trình tạo hoạt hình bằng cách sử dụng phần tử
+<code>selector</code> trong một tệp tài nguyên XML như trong ví dụ này, và gán nó cho dạng xem
+của bạn bằng thuộc tính <code>android:stateListAnimator</code>. Để gán một trình tạo hoạt hình danh sách trạng thái
+cho một dạng xem trong mã của bạn, hãy sử dụng phương thức {@link android.animation.AnimatorInflater#loadStateListAnimator
+AnimationInflater.loadStateListAnimator()} và gán trình tạo hoạt hình cho dạng xem của bạn bằng phương thức
+{@link android.view.View#setStateListAnimator View.setStateListAnimator()}.</p>
+
+<p>Khi chủ đề của bạn mở rộng ra chủ đề material, các nút sẽ có hoạt hình Z theo mặc định. Để tránh hành vi
+này trong nút của bạn, hãy đặt thuộc tính <code>android:stateListAnimator</code> thành
+<code>@null</code>.</p>
+
+<p>Lớp {@link android.graphics.drawable.AnimatedStateListDrawable} cho phép bạn tạo các nội dung vẽ được
+để hiển thị hoạt hình giữa các thay đổi trạng thái của dạng xem được liên kết. Một số widget hệ thống trong
+Android 5.0 sử dụng những hoạt hình này theo mặc định. Ví dụ sau cho biết cách
+cách định nghĩa {@link android.graphics.drawable.AnimatedStateListDrawable} dưới dạng tài nguyên XML:</p>
+
+<pre>
+&lt;!-- res/drawable/myanimstatedrawable.xml -->
+&lt;animated-selector
+    xmlns:android="http://schemas.android.com/apk/res/android">
+
+    &lt;!-- provide a different drawable for each state-->
+    &lt;item android:id="@+id/pressed" android:drawable="@drawable/drawableP"
+        android:state_pressed="true"/>
+    &lt;item android:id="@+id/focused" android:drawable="@drawable/drawableF"
+        android:state_focused="true"/>
+    &lt;item android:id="@id/default"
+        android:drawable="@drawable/drawableD"/>
+
+    &lt;!-- specify a transition -->
+    &lt;transition android:fromId="@+id/default" android:toId="@+id/pressed">
+        &lt;animation-list>
+            &lt;item android:duration="15" android:drawable="@drawable/dt1"/>
+            &lt;item android:duration="15" android:drawable="@drawable/dt2"/>
+            ...
+        &lt;/animation-list>
+    &lt;/transition>
+    ...
+&lt;/animated-selector>
+</pre>
+
+
+<h2 id="AnimVector">Tạo Hiệu ứng Hoạt hình Nội dung vẽ được Véc-tơ</h2>
+
+<p><a href="{@docRoot}training/material/drawables.html#VectorDrawables">Nội dung vẽ được Véc-tơ</a> sẽ co giãn được
+mà không làm mất độ sắc nét. Lớp {@link android.graphics.drawable.AnimatedVectorDrawable}
+cho phép bạn tạo hiệu ứng hoạt hình các thuộc tính của nội dung vẽ được véc-tơ.</p>
+
+<p>Thường thì bạn định nghĩa nội dung vẽ được véc-tơ hoạt hình theo ba tệp XML:</p>
+
+<ul>
+<li>Nội dung vẽ được véc-tơ với phần tử <code>&lt;vector&gt;</code> trong
+<code>res/drawable/</code></li>
+<li>Nội dung vẽ được véc-tơ hoạt hình với phần tử <code>&lt;animated-vector&gt;</code> trong
+<code>res/drawable/</code></li>
+<li>Một hoặc nhiều trình tạo hoạt hình đối tượng với phần tử <code>&lt;objectAnimator&gt;</code> trong
+<code>res/anim/</code></li>
+</ul>
+
+<p>Nội dung vẽ được véc-tơ hoạt hình có thể tạo hiệu ứng hoạt hình các thuộc tính của phần tử <code>&lt;group&gt;</code> và
+<code>&lt;path&gt;</code>. Phần tử <code>&lt;group&gt;</code> định nghĩa một bộ
+đường dẫn hoặc nhóm phụ và phần tử <code>&lt;path&gt;</code> định nghĩa các đường dẫn sẽ được vẽ.</p>
+
+<p>Khi định nghĩa một nội dung vẽ được véc-tơ mà bạn muốn tạo hiệu ứng hoạt hình, hãy sử dụng thuộc tính <code>android:name</code>
+để gán một tên duy nhất cho các nhóm và đường dẫn, sao cho bạn có thể tham chiếu tới chúng từ các định nghĩa
+trình tạo hoạt hình của mình. Ví dụ:</p>
+
+<pre>
+&lt;!-- res/drawable/vectordrawable.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="64dp"
+    android:width="64dp"
+    android:viewportHeight="600"
+    android:viewportWidth="600">
+    &lt;group
+        <strong>android:name="rotationGroup"</strong>
+        android:pivotX="300.0"
+        android:pivotY="300.0"
+        android:rotation="45.0" >
+        &lt;path
+            <strong>android:name="v"</strong>
+            android:fillColor="#000000"
+            android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
+    &lt;/group>
+&lt;/vector>
+</pre>
+
+<p>Định nghĩa nội dung vẽ được véc-tơ hoạt hình sẽ tham chiếu tới các nhóm và đường dẫn trong nội dung vẽ được véc-tơ theo
+tên của chúng:</p>
+
+<pre>
+&lt;!-- res/drawable/animvectordrawable.xml -->
+&lt;animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+  android:drawable="@drawable/vectordrawable" >
+    &lt;target
+        android:name="rotationGroup"
+        android:animation="@anim/rotation" />
+    &lt;target
+        android:name="v"
+        android:animation="@anim/path_morph" />
+&lt;/animated-vector>
+</pre>
+
+<p>Định nghĩa hoạt hình biểu diễn các đối tượng {@link android.animation.ObjectAnimator} hoặc {@link
+android.animation.AnimatorSet}. Trình tạo hoạt hình đầu tiên trong ví dụ này sẽ xoay nhóm
+đối tượng 360 độ:</p>
+
+<pre>
+&lt;!-- res/anim/rotation.xml -->
+&lt;objectAnimator
+    android:duration="6000"
+    android:propertyName="rotation"
+    android:valueFrom="0"
+    android:valueTo="360" />
+</pre>
+
+<p>Trình tạo hoạt hình thứ hai trong ví dụ này sẽ đổi dạng đường dẫn của nội dung vẽ được véc-tơ từ hình này sang
+hình khác. Cả hai đường dẫn đều phải tương thích với việc đổi dạng: chúng phải có cùng số lệnh
+và cùng số lượng tham số cho từng lệnh.</p>
+
+<pre>
+&lt;!-- res/anim/path_morph.xml -->
+&lt;set xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;objectAnimator
+        android:duration="3000"
+        android:propertyName="pathData"
+        android:valueFrom="M300,70 l 0,-70 70,70 0,0   -70,70z"
+        android:valueTo="M300,70 l 0,-70 70,0  0,140 -70,0 z"
+        android:valueType="pathType" />
+&lt;/set>
+</pre>
+
+<p>Để biết thêm thông tin, hãy xem tài liệu tham khảo API cho {@link
+android.graphics.drawable.AnimatedVectorDrawable}.</p>
diff --git a/docs/html-intl/intl/vi/training/material/compatibility.jd b/docs/html-intl/intl/vi/training/material/compatibility.jd
new file mode 100644
index 0000000..65e8131
--- /dev/null
+++ b/docs/html-intl/intl/vi/training/material/compatibility.jd
@@ -0,0 +1,168 @@
+page.title=Duy trì Tính tương thích
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Bài học này hướng dẫn bạn cách</h2>
+<ol>
+  <li><a href="#Theme">Định nghĩa Kiểu Thay thế</a></li>
+  <li><a href="#Layouts">Cung cấp Bố trí Thay thế</a></li>
+  <li><a href="#SupportLib">Sử dụng Thư viện Hỗ trợ</a></li>
+  <li><a href="#CheckVersion">Kiểm tra Phiên bản Hệ thống</a></li>
+</ol>
+<h2>Bạn cũng nên đọc</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Đặc tả phong cách Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design trên Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Một số tính năng của Material Design như chủ đề Material và chuyển tiếp hoạt động tùy chỉnh
+chỉ sẵn có trên Android 5.0 (API mức 21) trở lên. Tuy nhiên, bạn có thể thiết kế ứng dụng của mình để tận dụng
+những tính năng này khi chạy trên thiết bị hỗ trợ material design mà vẫn tương thích
+với thiết bị đang chạy các bản phát hành Android trước đây.</p>
+
+
+<h2 id="Theme">Định nghĩa Kiểu Thay thế</h2>
+
+<p>Bạn có thể cấu hình ứng dụng của mình để sử dụng chủ đề material trên những thiết bị hỗ trợ và chuyển về
+chủ đề cũ hơn trên những thiết bị đang chạy phiên bản Android cũ hơn:</p>
+
+<ol>
+<li>Định nghĩa một chủ đề kế thừa từ một chủ đề cũ hơn (như Holo) trong
+    <code>res/values/styles.xml</code>.</li>
+<li>Định nghĩa một chủ đề với cùng tên và kế thừa chủ đề material trong
+    <code>res/values-v21/styles.xml</code>.</li>
+<li>Đặt chủ đề này làm chủ đề cho ứng dụng của bạn trong tệp bản kê khai.</li>
+</ol>
+
+<p class="note"><strong>Lưu ý:</strong>
+Nếu ứng dụng của bạn sử dụng chủ đề material nhưng không cung cấp chủ đề thay thế bằng cách này,
+ứng dụng của bạn sẽ không chạy trên phiên bản Android trước 5.0.
+</p>
+
+
+<h2 id="Layouts">Cung cấp Bố trí Thay thế</h2>
+
+<p>Nếu những bố trí mà bạn thiết kế theo hướng dẫn về material design không sử dụng bất cứ
+thuộc tính XML mới nào được giới thiệu trong Android 5.0 (API mức 21), chúng sẽ hoạt động trên các phiên bản
+Android trước đó. Nếu không, bạn có thể cung cấp bố trí thay thế. Bạn cũng có thể cung cấp
+bố trí thay thế để tùy chỉnh diện mạo ứng dụng của mình trên các phiên bản Android cũ hơn.</p>
+
+<p>Tạo tệp bố trí của bạn cho Android 5.0 (API mức 21) bên trong <code>res/layout-v21/</code> và
+tệp bố trí thay thế của bạn cho các phiên bản Android cũ hơn trong <code>res/layout/</code>.
+Ví dụ, <code>res/layout/my_activity.xml</code> là một bố trí thay thế cho
+<code>res/layout-v21/my_activity.xml</code>.</p>
+
+<p>Để tránh lặp mã, hãy định nghĩa kiểu của bạn bên trong <code>res/values/</code>, sửa đổi
+các kiểu trong <code>res/values-v21/</code> cho các API mới và sử dụng kế thừa kiểu, định nghĩa
+kiểu cơ bản trong <code>res/values/</code> và kế thừa từ những kiểu trong <code>res/values-v21/</code>.</p>
+
+
+<h2 id="SupportLib">Sử dụng Thư viện Hỗ trợ</h2>
+
+<p><a href="{@docRoot}tools/support-library/features.html#v7">Thư viện Hỗ trợ v7</a>
+r21 và cao hơn gồm những tính năng material design sau:</p>
+
+<ul>
+<li><a href="{@docRoot}training/material/theme.html">Các kiểu mang phong cách material design</a> cho một số widget
+    hệ thống khi bạn áp dụng một trong các chủ đề <code>Theme.AppCompat</code>.</li>
+<li><a href="{@docRoot}training/material/theme.html#ColorPalette">Thuộc tính chủ đề bảng màu</a>
+   trong các chủ đề <code>Theme.AppCompat</code>.</li>
+<li>Widget {@link android.support.v7.widget.RecyclerView} để <a href="{@docRoot}training/material/lists-cards.html#RecyclerView">hiển thị các bộ sưu tập
+    dữ liệu</a>.</li>
+<li>Widget {@link android.support.v7.widget.CardView} để <a href="{@docRoot}training/material/lists-cards.html#CardView">tạo thẻ</a>.</li>
+<li>Lớp {@link android.support.v7.graphics.Palette} để <a href="{@docRoot}training/material/drawables.html#ColorExtract">trích xuất màu nổi bật từ
+    hình ảnh</a>.</li>
+</ul>
+
+<h3>Widget hệ thống</h3>
+
+<p>Chủ đề <code>Theme.AppCompat</code> cung cấp các kiểu phong cách material design cho những widget này:</p>
+
+<ul>
+  <li>{@link android.widget.EditText}</li>
+  <li>{@link android.widget.Spinner}</li>
+  <li>{@link android.widget.CheckBox}</li>
+  <li>{@link android.widget.RadioButton}</li>
+  <li>{@link android.support.v7.widget.SwitchCompat}</li>
+  <li>{@link android.widget.CheckedTextView}</li>
+</ul>
+
+<h3>Bảng màu</h3>
+
+<p>Để có được các kiểu phong cách material design và tùy chỉnh bảng màu bằng Thư viện Hỗ trợ v7 
+của Android, hãy áp dụng một trong các chủ đề <code>Theme.AppCompat</code>:</p>
+
+<pre>
+&lt;!-- extend one of the Theme.AppCompat themes -->
+&lt;style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
+    &lt;!-- customize the color palette -->
+    &lt;item name="colorPrimary">@color/material_blue_500&lt;/item>
+    &lt;item name="colorPrimaryDark">@color/material_blue_700&lt;/item>
+    &lt;item name="colorAccent">@color/material_green_A200&lt;/item>
+&lt;/style>
+</pre>
+
+<h3>Danh sách và Thẻ</h3>
+
+<p>Widget {@link android.support.v7.widget.RecyclerView} và {@link
+android.support.v7.widget.CardView} sẵn có trong các phiên bản Android cũ hơn thông qua
+Thư viện Hỗ trợ v7 của Android với những hạn chế sau:</p>
+<ul>
+<li>{@link android.support.v7.widget.CardView} quay lại triển khai đổ bóng theo lập trình
+    bằng cách sử dụng phần đệm bổ sung.</li>
+<li>{@link android.support.v7.widget.CardView} không cắt hình những dạng xem con của nó có giao cắt với
+    các góc bo tròn.</li>
+</ul>
+
+
+<h3>Phụ thuộc</h3>
+
+<p>Để sử dụng những tính năng này trong các phiên bản Android trước 5.0 (API mức 21), hãy thêm
+Thư viện Hỗ trợ v7 của Android vào dự án của bạn như một <a href="{@docRoot}/sdk/installing/studio-build.html#dependencies">Phần phụ thuộc Gradle</a>:</p>
+
+<pre>
+dependencies {
+    compile 'com.android.support:appcompat-v7:21.0.+'
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
+
+
+<h2 id="CheckVersion">Kiểm tra Phiên bản Hệ thống</h2>
+
+<p>Những tính năng sau chỉ sẵn có trong Android 5.0 (API mức 21) trở lên:</p>
+
+<ul>
+<li>Chuyển tiếp hoạt động</li>
+<li>Phản hồi chạm</li>
+<li>Lộ ra hoạt hình</li>
+<li>Hoạt hình dựa trên đường dẫn</li>
+<li>Nội dung vẽ được véc-tơ</li>
+<li>Nhuộm màu nội dung vẽ được</li>
+</ul>
+
+<p>Để duy trì tính tương thích với các phiên bản Android cũ hơn, hãy kiểm tra {@link
+android.os.Build.VERSION#SDK_INT version} vào thời gian chạy trước khi bạn gọi ra API cho bất cứ tính năng nào
+sau đây:</p>
+
+<pre>
+// Check if we're running on Android 5.0 or higher
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+    // Call some material design APIs here
+} else {
+    // Implement this feature without material design
+}
+</pre>
+
+<p class="note"><strong>Lưu ý:</strong> Để quy định ứng dụng của bạn hỗ trợ những phiên bản Android nào,
+hãy sử dụng thuộc tính <code>android:minSdkVersion</code> và <code>android:targetSdkVersion</code>
+trong tệp bản kê khai của bạn. Để sử dụng các tính năng của material design trong Android 5.0, hãy đặt
+thuộc tính <code>android:targetSdkVersion</code> thành <code>21</code>. Để biết thêm thông tin, hãy xem hướng dẫn
+ <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt; API
+</a>.</p>
diff --git a/docs/html-intl/intl/vi/training/material/drawables.jd b/docs/html-intl/intl/vi/training/material/drawables.jd
new file mode 100644
index 0000000..175e77d
--- /dev/null
+++ b/docs/html-intl/intl/vi/training/material/drawables.jd
@@ -0,0 +1,126 @@
+page.title=Làm việc với Nội dung vẽ được
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Bài học này hướng dẫn bạn cách</h2>
+<ol>
+  <li><a href="#DrawableTint">Nhuộm màu Tài nguyên Vẽ được</a></li>
+  <li><a href="#ColorExtract">Trích xuất Màu Nổi bật từ một Hình ảnh</a></li>
+  <li><a href="#VectorDrawables">Tạo Nội dung vẽ được Véc-tơ</a></li>
+</ol>
+<h2>Bạn cũng nên đọc</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Đặc tả phong cách Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design trên Android</a></li>
+</ul>
+</div>
+</div>
+
+<p>Những khả năng sau của nội dung vẽ được giúp bạn triển khai phong cách material design trong các ứng dụng của mình:</p>
+
+<ul>
+<li>Nhuộm màu nội dung vẽ được</li>
+<li>Trích xuất màu nổi bật</li>
+<li>Nội dung vẽ được véc-tơ</li>
+</ul>
+
+<p>Bài học này cho bạn biết cách sử dụng những tính năng này trong ứng dụng của mình.</p>
+
+
+<h2 id="DrawableTint">Nhuộm màu Tài nguyên Vẽ được</h2>
+
+<p>Với Android 5.0 (API mức 21) và cao hơn, bạn có thể nhuộm màu ảnh bitmap và ảnh chín miếng được định nghĩa làm
+mặt nạ alpha. Bạn có thể nhuộm chúng bằng tài nguyên màu hoặc những thuộc tính chủ đề nhằm phân giải thành các tài nguyên
+màu (ví dụ, <code>?android:attr/colorPrimary</code>). Thông thường, bạn chỉ tạo những tài sản này
+một lần và tô màu tự động cho chúng để khớp với chủ đề của mình.</p>
+
+<p>Bạn có thể áp dụng một màu nhuộm cho đối tượng {@link android.graphics.drawable.BitmapDrawable} hoặc {@link
+android.graphics.drawable.NinePatchDrawable} bằng phương thức {@code setTint()}. Bạn cũng có thể
+đặt màu nhuộm và chế độ trong bố trí của mình bằng các thuộc tính <code>android:tint</code> và
+<code>android:tintMode</code>.</p>
+
+
+<h2 id="ColorExtract">Trích xuất Màu Nổi bật từ một Hình ảnh</h2>
+
+<p>Thư viện Hỗ trợ Android r21 và cao hơn bao gồm lớp {@link
+android.support.v7.graphics.Palette}, cho phép bạn trích xuất màu nổi bật từ một hình ảnh.
+Lớp này trích xuất những màu nổi bật sau:</p>
+
+<ul>
+<li>Rực rỡ</li>
+<li>Tối rực rỡ</li>
+<li>Sáng rực rỡ</li>
+<li>Lặng</li>
+<li>Tối lặng</li>
+<li>Sáng lặng</li>
+</ul>
+
+<p>Để trích xuất những màu này, hãy chuyển một đối tượng {@link android.graphics.Bitmap} cho phương thức tĩnh 
+{@link android.support.v7.graphics.Palette#generate Palette.generate()} trong
+luồng chạy ngầm nơi bạn tải hình ảnh của mình. Nếu bạn không thể sử dụng luồng đó, hãy gọi phương thức
+{@link android.support.v7.graphics.Palette#generateAsync Palette.generateAsync()} và
+cung cấp một trình nghe.</p>
+
+<p>Bạn có thể truy xuất màu nổi bật từ hình ảnh bằng cách sử dụng các phương thức getter trong lớp
+<code>Palette</code> chẳng hạn như <code>Palette.getVibrantColor</code>.</p>
+
+<p>Để sử dụng lớp {@link android.support.v7.graphics.Palette} trong dự án của mình, hãy thêm
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Phần phụ thuộc Gradle</a> sau vào
+mô-đun ứng dụng của bạn:</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:palette-v7:21.0.0'
+}
+</pre>
+
+<p>Để biết thêm thông tin, hãy xem tài liệu tham khảo API cho lớp
+{@link android.support.v7.graphics.Palette}.</p>
+
+
+<h2 id="VectorDrawables">Tạo Nội dung vẽ được Véc-tơ</h2>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=wlFVIIstKmA" style="margin-top:18px">
+<div>
+    <h3>Video</h3>
+    <p>Đồ họa Véc-tơ Android</p>
+</div>
+</a>
+
+<p>Trong Android 5.0 (API mức 21) và cao hơn, bạn có thể định nghĩa nội dung vẽ được véc-tơ co giãn mà không làm mất
+độ sắc nét. Bạn chỉ cần một tệp tài sản cho một hình ảnh véc-tơ, đối lập với tệp tài sản cho
+từng mật độ màn hình trong trường hợp hình ảnh bitmap. Để tạo một hình ảnh véc-tơ, bạn định nghĩa chi tiết
+của hình ảnh trong phần tử XML <code>&lt;vector&gt;</code>.</p>
+
+<p>Ví dụ sau định nghĩa hình ảnh véc-tơ có hình một trái tim:</p>
+
+<pre>
+&lt;!-- res/drawable/heart.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    &lt;!-- intrinsic size of the drawable -->
+    android:height="256dp"
+    android:width="256dp"
+    &lt;!-- size of the virtual canvas -->
+    android:viewportWidth="32"
+    android:viewportHeight="32">
+
+  &lt;!-- draw a path -->
+  &lt;path android:fillColor="#8fff"
+      android:pathData="M20.5,9.5
+                        c-1.955,0,-3.83,1.268,-4.5,3
+                        c-0.67,-1.732,-2.547,-3,-4.5,-3
+                        C8.957,9.5,7,11.432,7,14
+                        c0,3.53,3.793,6.257,9,11.5
+                        c5.207,-5.242,9,-7.97,9,-11.5
+                        C25,11.432,23.043,9.5,20.5,9.5z" />
+&lt;/vector>
+</pre>
+
+<p>Hình ảnh véc-tơ được biểu diễn trong Android dưới dạng đối tượng {@link android.graphics.drawable.VectorDrawable}
+. Để biết thêm thông tin về cú pháp <code>pathData</code>, hãy xem tham chiếu <a href="http://www.w3.org/TR/SVG11/paths.html#PathData">Đường dẫn SVG</a>. Để biết thêm thông tin
+về việc tạo hiệu ứng hoạt hình các thuộc tính của nội dung vẽ được véc-tơ, hãy xem
+<a href="{@docRoot}training/material/animations.html#AnimVector">Tạo Hiệu ứng Hoạt hình Nội dung vẽ được Véc-tơ</a>.</p>
diff --git a/docs/html-intl/intl/vi/training/material/get-started.jd b/docs/html-intl/intl/vi/training/material/get-started.jd
new file mode 100644
index 0000000..9e612ad
--- /dev/null
+++ b/docs/html-intl/intl/vi/training/material/get-started.jd
@@ -0,0 +1,171 @@
+page.title=Bắt đầu
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Bài học này hướng dẫn bạn cách</h2>
+<ol>
+  <li><a href="#ApplyTheme">Áp dụng Chủ đề Material</a></li>
+  <li><a href="#Layouts">Thiết kế Bố trí của Bạn</a></li>
+  <li><a href="#Depth">Quy định Độ cao trong Dạng xem của Bạn</a></li>
+  <li><a href="#ListsCards">Tạo Danh sách và Thẻ</a></li>
+  <li><a href="#Animations">Tùy chỉnh Hoạt hình của Bạn</a></li>
+</ol>
+<h2>Bạn cũng nên đọc</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Đặc tả phong cách Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design trên Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Để tạo ứng dụng với material design:</p>
+
+<ol>
+  <li style="margin-bottom:10px">
+    Xem phần <a href="http://www.google.com/design/spec">đặc tả phong cách material design</a>.</li>
+  <li style="margin-bottom:10px">
+    Áp dụng chủ đề <strong>material</strong> cho ứng dụng của bạn.</li>
+  <li style="margin-bottom:10px">
+    Tạo <strong>bố trí</strong> của bạn theo hướng dẫn về material design.</li>
+  <li style="margin-bottom:10px">
+    Quy định <strong>độ cao</strong> cho dạng xem của bạn để đổ bóng.</li>
+  <li style="margin-bottom:10px">
+    Sử dụng <strong>widget</strong> hệ thống cho danh sách và thẻ.</li>
+  <li style="margin-bottom:10px">
+    Tùy chỉnh <strong>hoạt hình</strong> trong ứng dụng của bạn.</li>
+</ol>
+
+<h3>Duy trì tính tương thích ngược</h3>
+
+<p>Bạn có thể thêm nhiều tính năng material design vào ứng dụng của mình trong khi vẫn duy trì tính tương thích với
+các phiên bản Android trước 5.0. Để biết thêm thông tin, hãy xem phần
+<a href="{@docRoot}training/material/compatibility.html">Duy trì Tính tương thích</a>.</p>
+
+<h3>Cập nhật ứng dụng của bạn với material design</h3>
+
+<p>Để cập nhật một ứng dụng hiện tại bằng material design, hãy cập nhật các bố trí của bạn theo
+hướng dẫn về material design. Cũng nhớ kết hợp chiều sâu, phản hồi chạm và
+hoạt hình.</p>
+
+<h3>Tạo ứng dụng mới với material design</h3>
+
+<p>Nếu bạn tạo một ứng dụng mới với các tính năng của material design, <a href="http://www.google.com/design/spec">hướng dẫn về material design</a> cung cấp cho bạn một
+khuôn khổ thiết kế súc tích. Làm theo hướng dẫn đó và sử dụng chức năng mới trong khuôn khổ Android
+để thiết kế và phát triển ứng dụng của bạn.</p>
+
+
+<h2 id="ApplyTheme">Áp dụng Chủ đề Material</h2>
+
+<p>Để áp dụng chủ đề material trong ứng dụng của mình, hãy quy định một kiểu kế thừa từ
+<code>android:Theme.Material</code>:</p>
+
+<pre>
+&lt;!-- res/values/styles.xml -->
+&lt;resources>
+  &lt;!-- your theme inherits from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- theme customizations -->
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<p>Chủ đề material cung cấp các widget hệ thống được cập nhật để bạn có thể đặt bảng màu và
+hoạt hình mặc định cho phản hồi chạm và chuyển tiếp hoạt động. Để biết thêm chi tiết, hãy xem phần
+<a href="{@docRoot}training/material/theme.html">Sử dụng Chủ đề Material</a>.</p>
+
+
+<h2 id="Layouts">Thiết kế Bố trí của Bạn</h2>
+
+<p>Bên cạnh việc áp dụng và tùy chỉnh chủ đề material, bố trí của bạn cần tuân thủ
+<a href="http://www.google.com/design/spec">hướng dẫn về material design</a>. Khi thiết kế
+bố trí của bạn, hãy đặc biệt chú ý tới điều sau đây:</p>
+
+<ul>
+<li>Lưới đường cơ sở</li>
+<li>Dòng chính</li>
+<li>Giãn cách</li>
+<li>Kích cỡ mục tiêu chạm</li>
+<li>Cấu trúc bố trí</li>
+</ul>
+
+
+<h2 id="Depth">Quy định Độ cao trong Dạng xem của Bạn</h2>
+
+<p>Dạng xem có thể đổ bóng và giá trị độ cao của một dạng xem 
+xác định kích cỡ bóng và thứ tự vẽ của nó. Để đặt độ cao của một dạng xem, hãy sử dụng thuộc tính
+<code>android:elevation</code> trong bố trí của bạn:</p>
+
+<pre>
+&lt;TextView
+    android:id="&#64;+id/my_textview"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="&#64;string/next"
+    android:background="&#64;color/white"
+    android:elevation="5dp" />
+</pre>
+
+<p>Thuộc tính <code>translationZ</code> mới cho phép bạn tạo những hoạt hình phản ánh các thay đổi
+tạm thời về độ cao của một dạng xem. Thay đổi về độ cao có thể hữu ích khi
+<a href="{@docRoot}training/material/animations.html#ViewState">phản hồi lại các cử chỉ
+chạm</a>.</p>
+
+<p>Để biết thêm chi tiết, hãy xem phần <a href="{@docRoot}training/material/shadows-clipping.html">Định nghĩa
+Đổ bóng và Dạng xem Cắt hình</a>.</p>
+
+
+<h2 id="ListsCards">Tạo Danh sách và Thẻ</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} là một phiên bản dễ ghép nối hơn của {@link
+android.widget.ListView} có hỗ trợ các kiểu bố trí khác nhau và cung cấp những cải tiến về hiệu năng.
+{@link android.support.v7.widget.CardView} cho phép bạn hiện các mẩu thông tin bên trong thẻ với
+một diện mạo nhất quán giữa các ứng dụng. Ví dụ về mã sau đây minh họa cách thêm 
+{@link android.support.v7.widget.CardView} vào bố trí của bạn:</p>
+
+<pre>
+&lt;android.support.v7.widget.CardView
+    android:id="&#64;+id/card_view"
+    android:layout_width="200dp"
+    android:layout_height="200dp"
+    card_view:cardCornerRadius="3dp">
+    ...
+&lt;/android.support.v7.widget.CardView>
+</pre>
+
+<p>Để biết thêm thông tin, hãy xem phần <a href="{@docRoot}training/material/lists-cards.html">Tạo Danh sách
+và Thẻ</a>.</p>
+
+
+<h2 id="Animations">Tùy chỉnh Hoạt hình của Bạn</h2>
+
+<p>Android 5.0 (API mức 21) bao gồm các API mới để tạo hoạt hình tùy chỉnh trong ứng dụng của bạn.
+Ví dụ, bạn có thể cho phép chuyển tiếp hoạt động và định nghĩa một chuyển tiếp ra bên trong một
+hoạt động:</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // enable transitions
+        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+        setContentView(R.layout.activity_my);
+    }
+
+    public void onSomeButtonClicked(View view) {
+        getWindow().setExitTransition(new Explode());
+        Intent intent = new Intent(this, MyOtherActivity.class);
+        startActivity(intent,
+                      ActivityOptions
+                          .makeSceneTransitionAnimation(this).toBundle());
+    }
+}
+</pre>
+
+<p>Khi bạn bắt đầu một hoạt động khác từ hoạt động này, chuyển tiếp ra được kích hoạt.</p>
+
+<p>Để tìm hiểu thêm về các API hoạt hình mới, hãy xem <a href="{@docRoot}training/material/animations.html">Định nghĩa Hoạt hình Tùy chỉnh</a>.</p>
diff --git a/docs/html-intl/intl/vi/training/material/index.jd b/docs/html-intl/intl/vi/training/material/index.jd
new file mode 100644
index 0000000..44b74e1
--- /dev/null
+++ b/docs/html-intl/intl/vi/training/material/index.jd
@@ -0,0 +1,61 @@
+page.title=Material Design cho Nhà phát triển
+page.type=design
+page.image=images/cards/material_2x.png
+page.metaDescription=Tìm hiểu cách áp dụng material design cho ứng dụng của bạn.
+
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>Phụ thuộc và Điều kiện Tiên quyết</h2>
+  <ul>
+    <li>Android 5.0 (API mức 21)</li>
+  </ul>
+</div>
+</div>
+
+<p>Material design là một hướng dẫn toàn diện về thiết kế trực quan, chuyển động
+và tương tác giữa nhiều nền tảng và thiết bị. Để sử dụng material design trong ứng dụng Androi của mình, hãy làm theo hướng dẫn
+mô tả trong 
+<a href="http://www.google.com/design/spec/material-design/introduction.html">đặc tả
+material design</a> và sử dụng những thành phần và tính năng mới sẵn có trong Android 5.0
+(API mức 21).</p>
+
+<p>Bài học này sẽ cho bạn thấy cách tạo ứng dụng material design bằng những phần tử sau:</p>
+
+<ul>
+<li>Chủ đề material</li>
+<li>Widget cho thẻ và danh sách</li>
+<li>Đổ bóng và cắt xén dạng xem tùy chỉnh</li>
+<li>Nội dung vẽ được véc-tơ</li>
+<li>Hoạt hình tùy chỉnh</li>
+</ul>
+
+<p>Bài học này cũng hướng dẫn cho bạn cách duy trì tính tương thích với các phiên bản Android trước
+5.0 (API mức 21) khi bạn sử dụng các tính năng về material design trong ứng dụng của mình.</p>
+
+<h2>Bài học</h2>
+
+<dl>
+  <dt><a href="{@docRoot}training/material/get-started.html">Bắt đầu</a></dt>
+  <dd>Tìm hiểu cách cập nhật ứng dụng của bạn với các tính năng của material design.</dd>
+
+  <dt><a href="{@docRoot}training/material/theme.html">Sử dụng Chủ đề Material</a></dt>
+  <dd>Tìm hiểu cách áp dụng các kiểu phong cách material design cho ứng dụng của bạn.</dd>
+
+  <dt><a href="{@docRoot}training/material/lists-cards.html">Tạo Danh sách và Thẻ</a></dt>
+  <dd>Tìm hiểu cách tạo danh sách và thẻ với một diện mạo và cảm giác nhất quán bằng cách sử dụng widget hệ thống.</dd>
+
+  <dt><a href="{@docRoot}training/material/shadows-clipping.html">Định nghĩa Đổ bóng và Dạng xem Cắt hình</a></dt>
+  <dd>Tìm hiểu cách đặt độ cao cho dạng xem của bạn để tạo đổ bóng tùy chỉnh và cách cắt hình dạng xem.</dd>
+
+  <dt><a href="{@docRoot}training/material/drawables.html">Làm việc với Nội dung vẽ được</a></dt>
+  <dd>Tìm hiểu cách tạo nội dung vẽ được véc-tơ và cách nhuộm màu tài nguyên vẽ được.</dd>
+
+  <dt><a href="{@docRoot}training/material/animations.html">Định nghĩa Hoạt hình Tùy chỉnh</a></dt>
+  <dd>Tìm hiểu cách tạo hoạt hình tùy chỉnh cho các dạng xem và chuyển tiếp hoạt động bằng các phần tử chung.</dd>
+
+  <dt><a href="{@docRoot}training/material/compatibility.html">Duy trì Tính tương thích</a></dt>
+  <dd>Tìm hiểu cách duy trì tính tương thích với các phiên bản nền tảng trước Android 5.0.</dd>
+</dl>
diff --git a/docs/html-intl/intl/vi/training/material/lists-cards.jd b/docs/html-intl/intl/vi/training/material/lists-cards.jd
new file mode 100644
index 0000000..7127649
--- /dev/null
+++ b/docs/html-intl/intl/vi/training/material/lists-cards.jd
@@ -0,0 +1,266 @@
+page.title=Tạo Danh sách và Thẻ
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Bài học này hướng dẫn bạn cách</h2>
+<ol>
+  <li><a href="#RecyclerView">Tạo Danh sách</a></li>
+  <li><a href="#CardView">Tạo Thẻ</a></li>
+  <li><a href="#Dependencies">Thêm Phụ thuộc</a></li>
+</ol>
+<h2>Bạn cũng nên đọc</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Đặc tả phong cách Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design trên Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Để tạo danh sách và thẻ phức tạp bằng phong cách material design trong ứng dụng của mình, bạn có thể sử dụng widget
+{@link android.support.v7.widget.RecyclerView} và {@link android.support.v7.widget.CardView}
+.</p>
+
+
+<h2 id="RecyclerView">Tạo Danh sách</h2>
+
+<p>Widget {@link android.support.v7.widget.RecyclerView} là một phiên bản nâng cao và linh hoạt hơn
+của {@link android.widget.ListView}. Widget này là một bộ chứa để hiển thị các tập dữ liệu
+lớn có thể được cuộn rất hiệu quả bằng cách duy trì một số dạng xem hữu hạn. Sử dụng widget
+{@link android.support.v7.widget.RecyclerView} khi bạn có các bộ sưu tập dữ liệu với phần tử
+thay đổi vào thời gian chạy dựa vào hành động của người dùng hoặc sự kiện mạng.</p>
+
+<p>Lớp {@link android.support.v7.widget.RecyclerView} đơn giản hóa việc hiển thị và xử lý
+các tập dữ liệu lớn bằng cách cung cấp:</p>
+
+<ul>
+  <li>Trình quản lý bố trí để định vị mục</li>
+  <li>Hoạt hình mặc định cho các thao tác chung đối với mục như loại bỏ hoặc thêm mục</li>
+</ul>
+
+<p>Bạn cũng có sự linh hoạt để định nghĩa các trình quản lý bố trí tùy chỉnh và hoạt hình cho widget {@link
+android.support.v7.widget.RecyclerView}.</p>
+
+<img src="{@docRoot}training/material/images/RecyclerView.png" alt="" width="550" height="106" />
+<p class="img-caption">
+<strong>Hình 1</strong>. Widget <code>RecyclerView</code>.
+</p>
+
+<p>Để sử dụng widget {@link android.support.v7.widget.RecyclerView}, bạn phải quy định một
+trình điều hợp và trình quản lý bố trí. Để tạo một trình điều hợp, hãy mở rộng lớp {@link
+android.support.v7.widget.RecyclerView.Adapter RecyclerView.Adapter}. Chi tiết
+của triển khai phụ thuộc vào các chỉ định của tập dữ liệu của bạn và kiểu dạng xem. Để biết thêm
+thông tin, hãy xem <a href="#RVExamples">ví dụ</a> bên dưới.</p>
+
+<div style="float:right">
+<img src="{@docRoot}design/material/images/list_mail.png" alt="" width="250" height="426" />
+<p class="img-caption" style="margin-left:8px">
+<strong>Hình 2</strong> - Danh sách với <code>RecyclerView</code>.
+</p>
+</div>
+
+<p><strong>Trình quản lý bố trí</strong> sẽ định vị các dạng xem mục bên trong {@link
+android.support.v7.widget.RecyclerView} và xác định thời điểm sử dụng lại các dạng xem mục
+không còn hiển thị trước người dùng nữa. Để sử dụng lại (hoặc <em>tái chế</em>) một dạng xem, trình quản lý bố
+trí có thể yêu cầu trình điều hợp thay thế nội dung của dạng xem bằng một phần tử khác từ tập dữ liệu. Tái chế
+dạng xem bằng cách này sẽ cải thiện hiệu năng nhờ tránh tạo những dạng xem không cần thiết hoặc thực hiện
+tra cứu {@link android.app.Activity#findViewById findViewById()} tốn kém.</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} cung cấp những trình quản lý bố trí dựng sẵn sau:</p>
+
+<ul>
+<li>{@link android.support.v7.widget.LinearLayoutManager} hiện các mục trong một danh sách cuộn
+thẳng đứng hoặc nằm ngang.</li>
+<li>{@link android.support.v7.widget.GridLayoutManager} hiện các mục trong lưới.</li>
+<li>{@link android.support.v7.widget.StaggeredGridLayoutManager} hiện các mục trong một lưới so le.</li>
+</ul>
+
+<p>Để tạo một trình quản lý bố trí tùy chỉnh, hãy mở rộng lớp {@link
+android.support.v7.widget.RecyclerView.LayoutManager RecyclerView.LayoutManager}.</p>
+
+<h3>Hoạt hình</h3>
+
+<p>Hoạt hình để thêm và loại bỏ mục được kích hoạt theo mặc định trong {@link
+android.support.v7.widget.RecyclerView}. Để tùy chỉnh những hoạt hình này, hãy mở rộng lớp
+{@link android.support.v7.widget.RecyclerView.ItemAnimator RecyclerView.ItemAnimator} và sử dụng
+phương thức {@link android.support.v7.widget.RecyclerView#setItemAnimator RecyclerView.setItemAnimator()}
+.</p>
+
+<h3 id="RVExamples">Ví dụ</h3>
+
+<p>Ví dụ đoạn mã sau minh họa cách thêm
+{@link android.support.v7.widget.RecyclerView} vào bố trí:</p>
+
+<pre>
+&lt;!-- A RecyclerView with some commonly used attributes -->
+&lt;android.support.v7.widget.RecyclerView
+    android:id="@+id/my_recycler_view"
+    android:scrollbars="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
+</pre>
+
+<p>Sau khi thêm widget {@link android.support.v7.widget.RecyclerView} vào bố trí của bạn,
+hãy lấy một núm điều tác tới đối tượng, kết nối nó với một trình quản lý bố trí và gắn kèm một trình điều hợp cho dữ liệu
+cần được hiển thị:</p>
+
+<pre>
+public class MyActivity extends Activity {
+    private RecyclerView mRecyclerView;
+    private RecyclerView.Adapter mAdapter;
+    private RecyclerView.LayoutManager mLayoutManager;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.my_activity);
+        mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);
+
+        // use this setting to improve performance if you know that changes
+        // in content do not change the layout size of the RecyclerView
+        mRecyclerView.setHasFixedSize(true);
+
+        // use a linear layout manager
+        mLayoutManager = new LinearLayoutManager(this);
+        mRecyclerView.setLayoutManager(mLayoutManager);
+
+        // specify an adapter (see also next example)
+        mAdapter = new MyAdapter(myDataset);
+        mRecyclerView.setAdapter(mAdapter);
+    }
+    ...
+}
+</pre>
+
+<p>Trình điều hợp cung cấp truy cập vào các mục trong tập dữ liệu của bạn, tạo dạng xem cho mục và
+thay thế nội dung của một số dạng xem bằng mục dữ liệu mới khi mục ban đầu không còn
+hiển thị. Ví dụ đoạn mã sau đây thể hiện việc triển khai đơn giản của tập dữ liệu bao gồm
+một mảng xâu được hiển thị bằng widget {@link android.widget.TextView}:</p>
+
+<pre>
+public class MyAdapter extends RecyclerView.Adapter&lt;MyAdapter.ViewHolder> {
+    private String[] mDataset;
+
+    // Provide a reference to the views for each data item
+    // Complex data items may need more than one view per item, and
+    // you provide access to all the views for a data item in a view holder
+    public static class ViewHolder extends RecyclerView.ViewHolder {
+        // each data item is just a string in this case
+        public TextView mTextView;
+        public ViewHolder(TextView v) {
+            super(v);
+            mTextView = v;
+        }
+    }
+
+    // Provide a suitable constructor (depends on the kind of dataset)
+    public MyAdapter(String[] myDataset) {
+        mDataset = myDataset;
+    }
+
+    // Create new views (invoked by the layout manager)
+    &#64;Override
+    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
+                                                   int viewType) {
+        // create a new view
+        View v = LayoutInflater.from(parent.getContext())
+                               .inflate(R.layout.my_text_view, parent, false);
+        // set the view's size, margins, paddings and layout parameters
+        ...
+        ViewHolder vh = new ViewHolder(v);
+        return vh;
+    }
+
+    // Replace the contents of a view (invoked by the layout manager)
+    &#64;Override
+    public void onBindViewHolder(ViewHolder holder, int position) {
+        // - get element from your dataset at this position
+        // - replace the contents of the view with that element
+        holder.mTextView.setText(mDataset[position]);
+
+    }
+
+    // Return the size of your dataset (invoked by the layout manager)
+    &#64;Override
+    public int getItemCount() {
+        return mDataset.length;
+    }
+}
+</pre>
+
+
+<div style="float:right;margin-top:15px;margin-left:30px">
+<img src="{@docRoot}design/material/images/card_travel.png" alt="" width="225" height="383">
+<p class="img-caption" style="margin-left:12px">
+<strong>Hình 3</strong>. Ví dụ thẻ.
+</p>
+</div>
+
+<h2 id="CardView">Tạo Thẻ</h2>
+
+<p>{@link android.support.v7.widget.CardView} mở rộng lớp {@link android.widget.FrameLayout} và
+cho phép bạn hiển thị thông tin bên trong các thẻ có diện mạo nhất quán trên khắp nền tảng. Widget {@link
+android.support.v7.widget.CardView} có thể có đổ bóng và góc bo tròn.</p>
+
+<p>Để tạo một thẻ có bóng, hãy sử dụng thuộc tính <code>card_view:cardElevation</code>.
+{@link android.support.v7.widget.CardView} sử dụng độ cao thực và đổ bóng động trên Android 5.0
+(API mức 21) và cao hơn, và quay lại triển khai đổ bóng theo lập trình trên các phiên bản cũ hơn.
+Để biết thêm thông tin, hãy xem phần <a href="{@docRoot}training/material/compatibility.html">Duy trì
+Tính tương thích</a>.</p>
+
+<p>Sử dụng những thuộc tính sau để tùy chỉnh diện mạo của widget 
+{@link android.support.v7.widget.CardView}:</p>
+
+<ul>
+  <li>Để đặt bán kính góc trong bố trí của bạn, hãy sử dụng thuộc tính <code>card_view:cardCornerRadius</code>
+.</li>
+  <li>Để đặt bán kính góc trong mã của bạn, hãy sử dụng phương thức <code>CardView.setRadius</code>.</li>
+  <li>Để đặt màu nền của thẻ, hãy sử dụng thuộc tính <code>card_view:cardBackgroundColor</code>
+.</li>
+</ul>
+
+<p>Ví dụ về mã sau đây cho bạn thấy cách thêm widget {@link android.support.v7.widget.CardView}
+trong bố trí của mình:</p>
+
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    xmlns:card_view="http://schemas.android.com/apk/res-auto"
+    ... >
+    &lt;!-- A CardView that contains a TextView -->
+    &lt;android.support.v7.widget.CardView
+        xmlns:card_view="http://schemas.android.com/apk/res-auto"
+        android:id="@+id/card_view"
+        android:layout_gravity="center"
+        android:layout_width="200dp"
+        android:layout_height="200dp"
+        card_view:cardCornerRadius="4dp">
+
+        &lt;TextView
+            android:id="@+id/info_text"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+    &lt;/android.support.v7.widget.CardView>
+&lt;/LinearLayout>
+</pre>
+
+<p>Để biết thêm thông tin, hãy xem tài liệu tham khảo API cho {@link android.support.v7.widget.CardView}.</p>
+
+
+<h2 id="Dependencies">Thêm Phụ thuộc</h2>
+
+<p>Widget {@link android.support.v7.widget.RecyclerView} và {@link android.support.v7.widget.CardView}
+là bộ phận của <a href="{@docRoot}tools/support-library/features.html#v7">Thư viện Hỗ trợ
+v7</a>. Để sử dụng những widget này trong dự án của mình, hãy thêm những
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Phụ thuộc Gradle</a> này vào mô-đun
+ứng dụng của bạn:</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
diff --git a/docs/html-intl/intl/vi/training/material/shadows-clipping.jd b/docs/html-intl/intl/vi/training/material/shadows-clipping.jd
new file mode 100644
index 0000000..e9091f2
--- /dev/null
+++ b/docs/html-intl/intl/vi/training/material/shadows-clipping.jd
@@ -0,0 +1,133 @@
+page.title=Định nghĩa Đổ bóng và Dạng xem Cắt hình
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Bài học này hướng dẫn bạn cách</h2>
+<ol>
+  <li><a href="#Elevation">Gán Độ cao cho Dạng xem của Bạn</a></li>
+  <li><a href="#Shadows">Tùy chỉnh Đổ bóng và Viền của Dạng xem</a></li>
+  <li><a href="#Clip">Dạng xem Cắt hình</a></li>
+</ol>
+<h2>Bạn cũng nên đọc</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Đặc tả phong cách Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design trên Android</a></li>
+</ul>
+</div>
+</div>
+
+<p>Material design giới thiệu độ cao cho phần tử UI. Độ cao giúp người dùng hiểu được
+tầm quan trọng tương đối của từng phần tử và tập chung sự chú ý của họ vào tác vụ hiện có.</p>
+
+<p>Độ cao của một dạng xem, được biểu diễn bằng thuộc tính Z, sẽ xác định diện mạo trực quan của
+bóng đổ: dạng xem có giá trị Z cao hơn sẽ đổ bóng lớn hơn, mềm hơn. Dạng xem có giá trị Z cao hơn sẽ che khuất dạng xem 
+có giá trị Z thấp hơn; tuy nhiên, giá trị Z của một dạng xem không ảnh hưởng tới kích cỡ của dạng xem.</p>
+
+<p>Đổ bóng được vẽ bởi dạng xem mẹ của dạng xem cao hơn, do vậy nó phụ thuộc vào tiêu chuẩn cắt dạng xem,
+được cắt bởi dạng xem mẹ theo mặc định.</p>
+
+<p>Độ cao cũng hữu ích trong việc tạo hoạt hình ở nơi widget tạm thời dâng cao hơn
+mặt phẳng dạng xem khi thực hiện một hành động nào đó.</p>
+
+<p>Để biết thêm thông tin về độ cao trong material design, hãy xem
+<a href="http://www.google.com/design/spec/what-is-material/objects-in-3d-space.html">Đối tượng
+trong không gian 3D</a>.</p>
+
+
+<h2 id="Elevation">Gán Độ cao cho Dạng xem của Bạn</h2>
+
+<p>Giá trị Z của một dạng xem có hai thành phần:
+
+<ul>
+<li>Độ cao: Thành phần tĩnh.</li>
+<li>Độ dịch: Thành phần động được sử dụng cho hoạt hình.</li>
+</ul>
+
+<p><code>Z = elevation + translationZ</code></p>
+
+<img src="{@docRoot}training/material/images/shadows-depth.png" width="580" height="261" alt="" />
+<p class="img-caption"><strong>Hình 1</strong> - Đổ bóng cho các độ cao dạng xem khác nhau.</p>
+
+<p>Để đặt độ cao của dạng xem trong một định nghĩa bố trí, hãy sử dụng thuộc tính <code>android:elevation</code>
+. Để đặt độ cao của dạng xem trong mã của một hoạt động, hãy sử dụng phương thức 
+{@link android.view.View#setElevation View.setElevation()}.</p>
+
+<p>Để đặt độ dịch của dạng xem, hãy sử dụng phương thức {@link android.view.View#setTranslationZ
+View.setTranslationZ()}.</p>
+
+<p>Các phương thức {@link android.view.ViewPropertyAnimator#z ViewPropertyAnimator.z()} và {@link
+android.view.ViewPropertyAnimator#translationZ ViewPropertyAnimator.translationZ()} mới cho phép
+bạn dễ dàng tạo hiệu ứng hoạt hình cho độ cao của dạng xem. Để biết thêm thông tin, hãy xem tài liệu tham khảo API cho 
+{@link android.view.ViewPropertyAnimator} và hướng dẫn cho nhà phát triển về <a href="{@docRoot}guide/topics/graphics/prop-animation.html">Hoạt hình Thuộc tính</a>
+.</p>
+
+<p>Bạn cũng có thể sử dụng {@link android.animation.StateListAnimator} để
+quy định những hoạt hình này bằng cách khai báo. Điều này đặc biệt hữu ích đối với trường hợp các thay đổi
+trạng thái sẽ kích hoạt hoạt hình như khi người dùng nhấn một nút. Để biết thêm thông tin, hãy xem phần
+<a href="{@docRoot}training/material/animations.html#ViewState">Tạo Hiệu ứng Hoạt hình Thay đổi Trạng thái Xem</a>.</p>
+
+<p>Giá trị Z được đo bằng dp (điểm ảnh độc lập với mật độ).</p>
+
+
+<h2 id="Shadows">Tùy chỉnh Đổ bóng và Viền của Dạng xem</h2>
+
+<p>Các giới hạn nội dung vẽ được của nền dạng xem sẽ xác định hình dạng mặc định của bóng.
+<strong>Viền</strong> biểu thị hình dạng ngoài của một đối tượng đồ họa và định nghĩa vùng
+gợn sóng cho phản hồi chạm.</p>
+
+<p>Hãy cân nhắc dạng xem sau được định nghĩa với nội dung vẽ được làm nền:</p>
+
+<pre>
+&lt;TextView
+    android:id="@+id/myview"
+    ...
+    android:elevation="2dp"
+    android:background="@drawable/myrect" />
+</pre>
+
+<p>Nội dung vẽ được làm nền được định nghĩa là một hình chữ nhật với góc bo tròn:</p>
+
+<pre>
+&lt;!-- res/drawable/myrect.xml -->
+&lt;shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+    &lt;solid android:color="#42000000" />
+    &lt;corners android:radius="5dp" />
+&lt;/shape>
+</pre>
+
+<p>Dạng xem sẽ tạo đổ bóng có góc bo tròn do nội dung vẽ được làm nền sẽ định nghĩa
+viền của dạng xem. Khi cung cấp viền tùy chỉnh, nó ghi đè hình dạng mặc định của bóng đổ dạng xem.</p>
+
+<p>Để định nghĩa viền tùy chỉnh cho một dạng xem trong mã của bạn:<p>
+
+<ol>
+<li>Mở rộng lớp {@link android.view.ViewOutlineProvider}.</li>
+<li>Ghi đè phương thức {@link android.view.ViewOutlineProvider#getOutline getOutline()}.</li>
+<li>Gán trình cung cấp viền mới cho dạng xem của bạn bằng phương thức {@link
+android.view.View#setOutlineProvider View.setOutlineProvider()}.</li>
+</ol>
+
+<p>Bạn có thể tạo viền hình bầu dục và hình chữ nhật có góc bo tròn bằng cách sử dụng các phương thức trong lớp
+{@link android.graphics.Outline}. Trình cung cấp viền mặc định cho dạng xem sẽ lấy viền
+từ nền của dạng xem. Để ngăn dạng xem đổ bóng, hãy đặt trình cung cấp viền của nó
+thành <code>null</code>.</p>
+
+
+<h2 id="Clip">Dạng xem Cắt hình</h2>
+
+<p>Dạng xem cắt hình cho phép bạn dễ dàng thay đổi hình dạng của một dạng xem. Bạn có thể cắt hình dạng xem để
+nhất quán với các phần tử thiết kế khác hoặc để thay đổi hình dạng của một dạng xem để đáp ứng lại thông tin đầu vào của người dùng.
+Bạn có thể cắt một dạng xem thành vùng viền của nó bằng cách sử dụng phương thức {@link android.view.View#setClipToOutline
+View.setClipToOutline()} hoặc thuộc tính <code>android:clipToOutline</code>. Chỉ
+viền là hình chữ nhật, hình tròn và hình chữ nhật bo tròn mới hỗ trợ cắt hình như được xác định bởi phương thức
+{@link android.graphics.Outline#canClip Outline.canClip()}.</p>
+
+<p>Để cắt dạng xem thành hình dạng của một nội dung vẽ được, hãy đặt nội dung vẽ được làm nền của dạng xem
+(như minh họa bên trên) và gọi phương thức {@link android.view.View#setClipToOutline View.setClipToOutline()}
+.</p>
+
+<p>Cắt dạng xem là một thao tác tốn kém, vì vậy đừng tạo hiệu ứng hoạt hình cho hình dạng bạn sử dụng để
+cắt dạng xem. Để đạt được hiệu ứng này, hãy sử dụng hoạt hình <a href="{@docRoot}training/material/animations.html#Reveal">Hiệu ứng Lộ ra</a>.</p>
diff --git a/docs/html-intl/intl/vi/training/material/theme.jd b/docs/html-intl/intl/vi/training/material/theme.jd
new file mode 100644
index 0000000..9c46b5d
--- /dev/null
+++ b/docs/html-intl/intl/vi/training/material/theme.jd
@@ -0,0 +1,131 @@
+page.title=Sử dụng Chủ đề Material
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>Bài học này hướng dẫn bạn cách</h2>
+<ol>
+  <li><a href="#ColorPalette">Tùy chỉnh Bảng màu</a></li>
+  <li><a href="#StatusBar">Tùy chỉnh Thanh Trạng thái</a></li>
+  <li><a href="#Inheritance">Tạo Chủ đề Dạng xem Riêng</a></li>
+</ol>
+<h2>Bạn cũng nên đọc</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">Đặc tả phong cách Material Design</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Material Design trên Android</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>Chủ đề material mới cung cấp:</p>
+
+<ul>
+  <li>Widget hệ thống cho phép bạn đặt bảng màu của chúng</li>
+  <li>Hoạt hình phản hồi chạm cho widget hệ thống</li>
+  <li>Hoạt hình chuyển tiếp hoạt động</li>
+</ul>
+
+<p>Bạn có thể tùy chỉnh diện mạo của chủ đề material
+theo nhận diện thương hiệu của mình bằng một bảng màu mà bạn kiểm soát. Bạn có thể nhuộm màu thanh hành động và
+thanh trạng thái bằng cách sử dụng các thuộc tính chủ đề như minh họa trong <a href="#fig3">Hình 3</a>.</p>
+
+<p>Widget hệ thống có một thiết kế mới và hoạt hình phản hồi chạm. Bạn có thể tùy chỉnh
+bảng màu, hoạt hình phản hồi chạm và chuyển tiếp hoạt động cho ứng dụng của mình.</p>
+
+<p>Chủ đề material được định nghĩa là:</p>
+
+<ul>
+  <li><code>@android:style/Theme.Material</code> (phiên bản tối)</li>
+  <li><code>@android:style/Theme.Material.Light</code> (phiên bản sáng)</li>
+  <li><code>@android:style/Theme.Material.Light.DarkActionBar</code></li>
+</ul>
+
+<p>Để biết danh sách các kiểu material mà bạn có thể sử dụng, hãy xem tài liệu tham chiếu API cho
+{@link android.R.style R.style}.</p>
+
+<!-- two columns, dark/light material theme example -->
+<div style="width:700px;margin-top:25px;margin-bottom:10px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>Hình 1</strong>. Giao diện material tối</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>Hình 2</strong>. Giao diện material sáng</p>
+  </div>
+</div>
+<br style="clear:left">
+</div>
+
+<p class="note">
+<strong>Lưu ý:</strong> Chủ đề material chỉ sẵn có trong Android 5.0 (API mức 21) trở
+lên. <a href="{@docRoot}tools/support-library/features.html#v7">Thư viện Hỗ trợ v7</a>
+cung cấp chủ đề mang phong cách material design cho một số widget và hỗ trợ tùy chỉnh
+bảng màu. Để biết thêm thông tin, hãy xem phần
+<a href="{@docRoot}training/material/compatibility.html">Duy trì Tính tương thích</a>.
+</p>
+
+
+<h2 id="ColorPalette">Tùy chỉnh Bảng màu</h2>
+
+<p style="margin-bottom:30px">Để tùy chỉnh các màu cơ bản của chủ đề cho phù hợp với nhãn hiệu của bạn, hãy định nghĩa
+màu tùy chỉnh của bạn bằng thuộc tính chủ đề khi bạn kế thừa từ chủ đề material:</p>
+
+<pre>
+&lt;resources>
+  &lt;!-- inherit from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- Main theme colors -->
+    &lt;!--   your app branding color for the app bar -->
+    &lt;item name="android:colorPrimary">@color/primary&lt;/item>
+    &lt;!--   darker variant for the status bar and contextual app bars -->
+    &lt;item name="android:colorPrimaryDark">@color/primary_dark&lt;/item>
+    &lt;!--   theme UI controls like checkboxes and text fields -->
+    &lt;item name="android:colorAccent">@color/accent&lt;/item>
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<div style="float:right;margin-left:25px;margin-top:20px;margin-bottom:10px" id="fig3">
+<img src="{@docRoot}training/material/images/ThemeColors.png" width="250" height="445" />
+<p class="img-caption" style="margin-bottom:0px">
+<strong>Hình 3.</strong> Tùy chỉnh chủ đề material.</p>
+</div>
+
+
+<h2 id="StatusBar">Tùy chỉnh Thanh Trạng thái</h2>
+
+<p>Chủ đề material cho phép bạn dễ dàng tùy chỉnh thanh trạng thái để bạn có thể quy định
+màu cho phù hợp với nhãn hiệu của mình và đảm bảo đủ độ tương phản để hiển thị biểu tượng trạng thái màu trắng. Để
+đặt màu tùy chỉnh cho thanh trạng thái, hãy sử dụng thuộc tính <code>android:statusBarColor</code> khi
+bạn mở rộng chủ đề material. Theo mặc định, <code>android:statusBarColor</code> kế thừa
+giá trị của <code>android:colorPrimaryDark</code>.</p>
+
+<p>Bạn cũng có thể tự vẽ phía sau thanh trạng thái. Ví dụ, nếu bạn muốn hiển thị
+thanh trạng thái trong suốt trên một ảnh chụp, với graddien hơi tối để đảm bảo biểu tượng
+trạng thái màu trắng nhìn thấy được. Để làm vậy, hãy đặt thuộc tính <code>android:statusBarColor</code> thành
+<code>&#64;android:color/transparent</code> và điều chỉnh cờ cửa sổ nếu cần. Bạn cũng có thể
+sử dụng phương thức {@link android.view.Window#setStatusBarColor Window.setStatusBarColor()} cho hoạt hình
+hoặc hiệu ứng mờ dần.</p>
+
+<p class="note">
+<strong>Lưu ý:</strong> Thanh trạng thái cần luôn có một bản vẽ rõ ràng từ
+thanh công cụ chính, trừ trường hợp bạn hiển thị nội dung hình ảnh hoặc phương tiện phong phú từ cạnh tới cạnh phía sau
+những thanh này và khi bạn sử dụng gradient để đảm bảo rằng các biểu tượng vẫn nhìn thấy được.
+</p>
+
+<p>Khi bạn tùy chỉnh thanh điều hướng và trạng thái, hãy khiến cả hai đều trong suốt hoặc chỉ sửa đổi
+thanh trạng thái. Thanh điều hướng nên giữ lại màu đen trong mọi trường hợp khác.</p>
+
+
+<h2 id="Inheritance">Tạo Chủ đề Dạng xem Riêng</h3>
+
+<p>Những phần tử trong định nghĩa bố trí XML có thể quy định thuộc tính <code>android:theme</code> để
+tham chiếu tới một tài nguyên chủ đề. Thuộc tính này sửa đổi chủ đề cho phần tử và bất cứ
+phần tử con nào, điều này có ích đối với việc thay đổi bảng màu của chủ đề trong một phần cụ thể
+của giao diện.</p>
diff --git a/docs/html-intl/intl/zh-cn/design/get-started/principles.jd b/docs/html-intl/intl/zh-cn/design/get-started/principles.jd
index fbb46c9..1738c84 100644
--- a/docs/html-intl/intl/zh-cn/design/get-started/principles.jd
+++ b/docs/html-intl/intl/zh-cn/design/get-started/principles.jd
@@ -14,8 +14,8 @@
 
 <h2 id="enchant-me">让我着迷</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="delight-me">以意想不到的方式让我眼前一亮</h4>
 <p>漂亮的界面、精心布置的动画，或恰到好处的声效，都会带来快乐的体验。
@@ -23,7 +23,7 @@
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_delight.png">
 
@@ -32,15 +32,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="real-objects-more-fun">实际对象要比按钮和菜单更有趣</h4>
-<p>让用户可以直接触摸和操作您应用中的对象，让执行任务更轻松，让用户更满意。
+<p>让用户可以直接触摸和操作您应用中的对象，这样，可以让执行任务更轻松，让用户更满意。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_real_objects.png">
 
@@ -49,8 +49,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-it-mine">我的应用我做主</h4>
 <p>用户喜欢添加个性化手势，因为这样会让他们觉得更顺手并且一切尽在他们的掌控之中。提供感性、美观的默认手势，但也要考虑到趣味性，不要让可选的定制手势妨碍主要任务的操作。
@@ -58,7 +58,7 @@
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_it_mine.png">
 
@@ -67,15 +67,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="get-to-know-me">让应用了解我</h4>
 <p>逐渐了解用户的偏好。不要让用户反复做出相同的选择，将之前的选择列作快捷选择。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_get_to_know_me.png">
 
@@ -84,14 +84,14 @@
 
 <h2 id="simplify-my-life">让我的生活更轻松</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="keep-it-brief">语言简洁</h4>
 <p>使用简单的字词组成简短的句子。用户往往会跳过冗长的句子。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_keep_it_brief.png">
 
@@ -100,15 +100,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="pictures-faster-than-words">图片比文字更直观</h4>
 <p>考虑以图示意。它们会吸引用户的注意力，并且比文字更高效。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_pictures.png">
 
@@ -117,15 +117,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="decide-for-me">为我决定，但最终由我做主</h4>
 <p>先提供您心目中的最佳选择，而不是先进行询问。太多的选择和决策会让人不悦。
 只是在您的选择可能不当时，才赋予用户“撤消”的权利。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_decide_for_me.png">
 
@@ -134,15 +134,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="only-show-when-i-need-it">仅在我需要时显示我所需要的</h4>
 <p>如果一次性看到过多内容，用户会感到无所适从。将任务和信息细分为更小、更容易接受的片段。
 隐藏当前不必要的选项，并在用户操作期间提供指导。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_information_when_need_it.png">
 
@@ -151,15 +151,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="always-know-where-i-am">我应该始终清楚自己在哪里</h4>
 <p>让用户感到轻车熟路。为应用中的不同场景赋予不同的外观，使用过渡效果来展现屏幕之间的关系。
 提供任务进度反馈。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_navigation.png">
 
@@ -168,8 +168,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="never-lose-my-stuff">决不能让我的成果付诸东流</h4>
 <p>务必保存好用户耗费花时间创造的内容，让他们能随处访问这些内容。跨手机、平板电脑和计算机等平台，记住设置、个人手势和创作内容，
@@ -177,7 +177,7 @@
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_never_lose_stuff.png">
 
@@ -186,15 +186,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="looks-same-should-act-same">如果看上去一样，其行为也应当相同</h4>
 <p>通过视觉上的显著差异（而不是微妙差异）帮助用户区分不同的功能。避免使用固定模式，那样会导致外观相似的场景中，用户执行同样的输入，应用却给出不同的响应。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_looks_same.png">
 
@@ -203,15 +203,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="interrupt-only-if-important">只在确实对我很重要时才打断我</h4>
 <p>就像优秀的个人助理一样，不要让上司被一些无关紧要的琐事打扰。用户希望专注于核心任务，除非确实非常重要并且情况紧急，否则，打断用户会让人烦不胜烦。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_important_interruption.png">
 
@@ -220,8 +220,8 @@
 
 <h2 id="make-me-amazing">给我惊喜</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="give-me-tricks">到处为我提供有用的诀窍</h4>
 <p>如果能自己摸索出花样来，用户总是很开心的。利用直观的图案以及其他 Android 应用中常见的习惯手势，让您的应用更容易学习。
@@ -229,7 +229,7 @@
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_tricks.png">
 
@@ -238,16 +238,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="its-not-my-fault">不是我的错</h4>
-<p>在提醒用户改正错误时要礼貌。他们希望在使用您的应用时感觉自己很聪明。如果用户操作出错，请提供清晰的恢复说明，而不要让他们咀嚼详细的技术信息。如果您能在后台修复错误，那当然更好。
-
+<p>在提醒用户改正错误时要礼貌。他们希望在使用您的应用时感觉自己很聪明。
+如果用户操作出错，请提供清晰的恢复说明，而不要让他们咀嚼详细的技术信息。如果您能在后台修复错误，那当然更好。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_error.png">
 
@@ -256,15 +256,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="sprinkle-encouragement">多多鼓励</h4>
 <p>将复杂的任务分解为可轻松完成的小步骤。对操作提供反馈，哪怕只是微弱的灯光，也聊胜于无。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png">
 
@@ -273,8 +273,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="do-heavy-lifting-for-me">为我处理繁重事务</h4>
 <p>通过让新手完成他们认为自己不可能做到的事情，让他们感觉自己就像一名行家。例如，通过提供融合多种照片特效的快捷操作，只需几步，就可以让业余照片达到惊艳的效果。
@@ -282,7 +282,7 @@
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_heavy_lifting.png">
 
@@ -291,15 +291,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-important-things-fast">让重要事项能更快地完成</h4>
 <p>不是所有操作都同样重要。确定应用中哪些功能是最重要的，将这些功能放在便于找到和使用的地方，例如相机的快门按钮，或者音乐播放器中的暂停按钮。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_important_fast.png">
 
diff --git a/docs/html-intl/intl/zh-cn/design/material/index.jd b/docs/html-intl/intl/zh-cn/design/material/index.jd
index 78e6d38..b667bb8 100644
--- a/docs/html-intl/intl/zh-cn/design/material/index.jd
+++ b/docs/html-intl/intl/zh-cn/design/material/index.jd
@@ -1,7 +1,6 @@
-page.title=材料设计
-page.tags=Material, design
-page.type=设计
-page.image=design/material/images/MaterialLight.png
+page.title=Android 材料设计
+page.tags=Material,design,设计
+page.image=images/cards/design-material-for-android_2x.jpg
 
 @jd:body
 
@@ -53,13 +52,13 @@
   <li>用于自定义阴影和动画的全新 API</li>
 </ul>
 
-<p>有关在 Android 上实现材料设计的详细信息，请参阅<a href="{@docRoot}training/material/index.html">创建材料设计应用</a>。
+<p>有关在 Android 上实现材料设计的详细信息，请参阅<a href="{@docRoot}training/material/index.html">使用材料设计创建应用</a>。
 </p>
 
 
 <h3>材料主题</h3>
 
-<p>材料主题提供了新的应用样式和系统小工具，让您能够为触摸反馈以及活动转换设置配色工具以及默认动画。
+<p>材料主题提供了新的应用样式和系统小工具，让您能够为触摸反馈以及 Activity 转换设置配色工具以及默认动画。
 </p>
 
 <!-- two columns -->
@@ -136,7 +135,7 @@
 
 <h3>动画</h3>
 
-<p>动画 API 让您可为 UI 控件中的触摸反馈、视图状态更改以及活动转换创建自定义动画。
+<p>动画 API 让您可为 UI 控件中的触摸反馈、视图状态更改以及 Activity 转换创建自定义动画。
 </p>
 
 <p>这些 API 的作用是：</p>
@@ -149,7 +148,7 @@
 使用<strong>循环显示</strong>动画隐藏和显示视图。
 </li>
 <li style="margin-bottom:15px">
-使用自定义<strong>活动转换</strong>动画切换活动。
+使用自定义 <strong>Activity 转换</strong>动画切换 Activity。
 </li>
 <li style="margin-bottom:15px">
 使用<strong>曲线运动</strong>创建更自然的动画。
diff --git a/docs/html-intl/intl/zh-cn/design/patterns/compatibility.jd b/docs/html-intl/intl/zh-cn/design/patterns/compatibility.jd
new file mode 100644
index 0000000..7ec1bf3
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/design/patterns/compatibility.jd
@@ -0,0 +1,70 @@
+page.title=向后兼容性
+page.tags="support"
+page.metaDescription=关于 Android 4.x 如何让其 UI 设计适应早期硬件和操作系统版本的说明。
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/basics/supporting-devices/index.html">
+  <div>
+    <h3>开发者文档</h3>
+    <p>支持不同设备</p>
+  </div>
+</a>
+
+<p>Android 3.0 中的重大更改包括：</p>
+<ul>
+<li>弃用导航硬按键（返回、菜单、搜索、主屏幕），改为通过虚拟控件（返回、主屏幕、最近使用记录）处理导航。
+</li>
+<li>使用操作栏中的菜单的可靠模式。</li>
+</ul>
+<p>Android 4.0 将这些针对平板电脑的更改引入手机平台。</p>
+
+<h2 id="older-hardware">让 Android 4.0 适应早期硬件和应用</h2>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>带有虚拟导航控件的手机</h4>
+<p>针对 Android 3.0 和后续版本编写的 Android 应用在操作栏中显示操作。操作栏中放不下或者不够重要因而不值得显示在操作栏顶级菜单中的操作将显示在操作溢出菜单中。
+
+</p>
+<p>用户可通过在操作栏中触摸操作溢出菜单来访问该菜单。</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_virtual_nav.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>带有实体导航按键的手机</h4>
+<p>带有传统导航硬按键的 Android 手机在屏幕底部不会显示虚拟导航栏。
+其操作溢出菜单可从硬按键菜单中进行访问。其形成的操作弹出菜单与上例风格相同，但显示在屏幕底部。
+</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_physical_buttons.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>带有虚拟导航控件的手机上的传统应用</h4>
+<p>当您在带有虚拟导航控件的手机上运行为 Android 2.3 或更早版本编写的应用时，在虚拟导航栏的右侧将会显示操作溢出菜单控件。
+您可以触摸这些控件，以传统 Android 菜单风格显示应用的操作。
+</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_legacy_apps.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/zh-cn/design/patterns/confirming-acknowledging.jd b/docs/html-intl/intl/zh-cn/design/patterns/confirming-acknowledging.jd
index aa4ae1f..d4eaaff 100644
--- a/docs/html-intl/intl/zh-cn/design/patterns/confirming-acknowledging.jd
+++ b/docs/html-intl/intl/zh-cn/design/patterns/confirming-acknowledging.jd
@@ -4,12 +4,12 @@
 
 <p>在某些情况下，当用户在您的应用中调用某个操作时，最好使用文字内容来<em>确认</em>或<em>确知</em>该操作。</p>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_confirming.png">
     <p><strong>确认</strong>是要求用户确认自己确实希望执行刚才所调用的操作。在某些情况下，确认随需要用户考虑的操作所相关的警告或关键信息一起显示。</p>
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_acknowledge.png">
     <p><strong>确知</strong>就是显示一段文字信息，让用户知道自己刚才调用的操作已经完成。这将消除系统正在执行的隐式操作的不确定性。在某些情况下，确知随撤消操作的选项一起显示。</p>
   </div>
@@ -22,14 +22,14 @@
 <img src="{@docRoot}design/media/confirm_ack_flowchart.png">
 
 <h2>确认</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>示例：Google Play 书籍</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_books.png">
     <p>在该示例中，用户要求从其 Google Play 书架中删除一本书。系统显示了一条<a href="{@docRoot}design/building-blocks/dialogs.html#alerts">警告</a>来要求确认该操作，因为用户必须知道，一旦删除，该书籍将无法继续在任何设备上使用。</p>
     <p>在设计确认对话框时，请使用反映所请求操作的文字作为标题，使标题更有意义。</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>示例：Android Beam</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_beam.png">
     <p>确认不一定要显示在有两个按钮的警告中。在启动 Android Beam 后，系统提示用户触摸要分享的内容（本例中是一张照片）。如果他们决定不继续操作，只需移开手机即可。</p>
@@ -37,15 +37,15 @@
 </div>
 
 <h2>确知</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>示例：已保存中断的 Gmail 草稿</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png">
     <p>在本例中，如果用户在 Gmail 撰写邮件屏幕中向后或向上导航，可能会发生一些意外情况，此时会自动保存当前草稿。Toast 形式的确知会明确告知这一点。它会在几秒钟后消失。</p>
     <p>在这种情况下不能执行撤消操作，因为保存是由应用发起的，而不是由用户执行的。通过导航至草稿列表，可迅速方便地恢复邮件。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <h4>示例：已删除 Gmail 会话</h4>
     <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png">
     <p>在用户从 Gmail 中的列表删除某个会话后，会出现带撤消选项的确知。确知消息会一直等到用户采取无关操作才会消失，例如滚动列表。</p>
@@ -53,14 +53,14 @@
 </div>
 
 <h2>无需确认或确知</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>示例：+1 操作</h4>
     <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png">
     <p><strong>无需确认</strong>。如果用户意外触摸 +1 按钮，不会有什么大问题。他们只需再次触摸该按钮，撤消该操作即可。</p>
     <p><strong>无需确知</strong>。用户将看到 +1 按钮弹起并变红。这是非常明确的信号。</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>示例：从主屏幕删除应用</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png">
     <p><strong>无需确认</strong>。这属于有意操作：用户必须将项目拖放到相对较大并且独立的目标上。因此，很难发生意外。但是如果用户反悔决定，只需数秒钟时间即可复原。</p>
diff --git a/docs/html-intl/intl/zh-cn/design/patterns/navigation.jd b/docs/html-intl/intl/zh-cn/design/patterns/navigation.jd
index 339a2c5..5d8eae9 100644
--- a/docs/html-intl/intl/zh-cn/design/patterns/navigation.jd
+++ b/docs/html-intl/intl/zh-cn/design/patterns/navigation.jd
@@ -14,15 +14,15 @@
 Android 3.0对全局导航行为做出了重大改变。
 对用户来说，认真遵照“返回”和“向上”的指导准则可让应用的导航更可靠、更符合预期。
 </p>
-<p>Android 2.3 及更早的版本使用<em>返回</em>按钮来支持应用内的导航。在 Android 3.0 中引入操作栏后，出现了第二种导航机制：即<em>向上</em>按钮，由应用图标和左向箭头构成。
-
+<p>Android 2.3 及更早的版本使用系统<em>返回</em>按钮来支持应用内的导航。
+在 Android 3.0 中引入操作栏后，出现了第二种导航机制：即<em>向上</em>按钮，由应用图标和左向箭头构成。
 </p>
 
 <img src="{@docRoot}design/media/navigation_with_back_and_up.png">
 
-<h2 id="up-vs-back">向上和返回</h2>
+<h2 id="up-vs-back">向上与返回的比较</h2>
 
-<p>“向上”按钮用于根据屏幕之间的层级关系在应用中导航。
+<p>“向上”按钮用于根据屏幕之间的层级关系在某个应用内部导航。
 例如，如果屏幕 A 显示项目列表，并且选择某个项目会调出屏幕 B（该屏幕显示项目的更多详情），则屏幕 B 应提供可返回屏幕 A 的“向上”按钮。
 
 </p>
@@ -50,9 +50,9 @@
 <h2 id="within-app">应用内导航</h2>
 
 <h4>通过多个入口点导航屏幕</h4>
-<p>有时，某个屏幕在应用层级中的位置并不固定，可以从多个入口点抵达 &mdash; 例如可从应用中的其他任何屏幕抵达设置屏幕。在这种情况下，选择“向上”按钮会返回到引用屏幕，其行为跟“返回”按钮相同。
+<p>有时，某个屏幕在应用层级中的位置并不固定，可以从多个入口点抵达 &mdash; 例如可从应用中的其他任何屏幕抵达设置屏幕。
 
-
+在这种情况下，应选择“向上”按钮来返回到引用屏幕，其行为跟“返回”按钮相同。
 </p>
 <h4>更改屏幕中的视图</h4>
 <p>更改屏幕的视图选项不会更改“向上”或“返回”的行为：屏幕仍然位于应用层级中的同一位置，并且不会创建新的导航历史记录。
@@ -117,8 +117,8 @@
 <h4>间接通知</h4>
 
 <p>如果您的应用需要同时提供关于多个事件的信息，可使用一条通知将用户引导至某个间隙屏幕。
-该屏幕将这些事件汇总，并为用户提供深度导航应用的路径。这种样式的通知称为<em>间接通知</em>。
-
+该屏幕将这些事件汇总，并为用户提供深度导航应用的路径。
+这种样式的通知称为<em>间接通知</em>。
 </p>
 
 <p>与标准（直接）通知不同，在间接通知的间隙屏幕上按下“返回”会让用户回到触发通知的点 &mdash; 不会在返回栈中插入额外的屏幕。
@@ -153,53 +153,53 @@
 <h2 id="between-apps">在应用之间导航</h2>
 
 <p>Android 系统的一个基本优势在于能够让应用相互激活，这样用户就可以直接从一个应用导航到另一个应用。
-例如，需要获取照片的应用可激活相机应用，后者可将照片返回给前者。这对于开发者和用户来说都极为有利，开发者可以方便地利用来自其他应用的代码，而用户则在执行常用操作时可以获得一致的体验。
+例如，需要获取照片的应用可激活相机应用，后者可将照片返回给前者。
 
-
+这对于开发者和用户来说都极为有利，开发者可以方便地利用来自其他应用的代码，而用户则在执行常用操作时可以获得一致的体验。
 
 </p>
 
-<p>为了理解应用到应用的导航，必须理解下面探讨的 Android 框架行为
-。</p>
-
-<h4>活动、任务和意向</h4>
-
-<p>在 Android 中，<strong>活动</strong>是一个应用组件，用于定义信息屏幕以及用户可执行的所有相关操作。
-您的应用是活动的集合，由您创建的活动以及从其他应用重用的活动构成。
+<p>为了理解应用到应用的导航，必须理解下面探讨的 Android 框架行为。
 </p>
 
-<p><strong>任务</strong>是用户为达成某个目标而执行的活动序列。一个
-任务可以只利用一个应用的活动，也可以利用来自多个不同应用的活动。
+<h4>Activity、任务和 Intent</h4>
+
+<p>在 Android 中，<strong>Activity</strong> 是一个应用组件，用于定义信息屏幕以及用户可执行的所有相关操作。
+您的应用是 Activity 的集合，由您创建的 Activity 以及从其他应用重用的 Activity 构成。
 </p>
 
-<p><strong>意向</strong>是应用的一种机制，用于发出信号以表明需要另一个应用的辅助才能执行某个操作。
-应用的活动可指示其可响应哪些意向。
-对于诸如“分享”这样的常用意向，用户可能安装有许多可执行该请求的应用。
+<p><strong>任务</strong>是用户为达成某个目标而执行的 Activity 序列。一个
+任务可以只利用一个应用的 Activity，也可以利用来自多个不同应用的 Activity。
+</p>
+
+<p><strong>Intent</strong>是应用的一种机制，用于发出信号以表明需要另一个应用的辅助才能执行某个操作。
+应用的 Activity 可指示其可响应哪些 Intent。
+对于诸如“分享”这样的常用Intent，用户可能安装有许多可执行该请求的应用。
 </p>
 
 <h4>示例：在应用之间导航以支持分享</h4>
 
-<p>要了解如何结合使用活动、任务和意向，可以考虑一个应用如何让用户通过使用另一应用来分享内容的例子。例如，从主屏幕启动 Play 商店应用可启动新任务 A（参见下图）。
-
-在 Play 商店中导航并触摸某本促销图书来查看其详情之后，用户会停留在该任务中并通过添加活动来扩展该任务。
-触发“分享”操作会通过一个对话框来提示用户选择活动，该对话框中会列出来自不同应用、之前已注册用于处理“分享”意向的每一种活动。
+<p>要了解如何结合使用 Activity、任务和 Intent，可以考虑如何让一个应用允许用户通过使用另一应用来分享内容的例子。
+例如，从主屏幕启动 Play 商店应用可启动新任务 A（参见下图）。
+在 Play 商店中导航并触摸某本促销图书来查看其详情之后，用户会停留在该任务中并通过添加 Activity 来扩展该任务。
+触发“分享”操作会通过一个对话框来提示用户选择 Activity，该对话框中会列出来自不同应用、之前已注册用于处理“分享” Intent 的每一种 Activity。
 
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_inward.png">
 
-<p>如果用户选择通过 Gmail 分享，则会以延续任务 A 的形式添加 Gmail 的写邮件活动 &mdash; 而不会创建新任务。
+<p>如果用户选择通过 Gmail 分享，则会以延续任务 A 的形式添加 Gmail 的写邮件 Activity &mdash; 而不会创建新任务。
 如果 Gmail 在后台还运行有自己的任务，该任务不会受影响。
 </p>
 
-<p>在写邮件活动中，发送邮件或触摸“返回”按钮会让用户回到图书详情活动。
+<p>在写邮件 Activity 中，发送邮件或触摸“返回”按钮会让用户回到图书详情 Activity。
 之后继续触摸“返回”会在 Play 商店中继续回退，直至抵达主屏幕。
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_back.png">
 
-<p>尽管如此，用户可通过在写邮件活动中触摸“向上”按钮表明其希望留在 Gmail 中。
-此时会显示 Gmail 的会话列表活动，并为其创建新任务 B。新任务都始于主屏幕，因此从会话列表触摸“返回”按钮，始终会回到主屏幕。
+<p>尽管如此，用户可通过在写邮件 Activity 中触摸“向上”按钮表明其希望留在 Gmail 中。
+此时会显示 Gmail 的会话列表 Activity，并为其创建新任务 B。新任务都始于主屏幕，因此从会话列表触摸“返回”按钮，始终会回到主屏幕。
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_up.png">
@@ -208,6 +208,6 @@
 如果 Gmail 在后台还运行有自己的任务，该任务会被任务 B 取代 &mdash; 之前的上下文会被丢弃，以使用户达成新目标。
 </p>
 
-<p>如果您的应用经过注册，以使用应用中的深层活动来处理意向，可参阅<a href="#into-your-app">通过主屏幕小工具和通知进入您的应用</a>，获得有关如何指定“向上”导航行为的指导。
+<p>如果您的应用经过注册，以使用应用中的深层 Activity 来处理 Intent，可参阅<a href="#into-your-app">通过主屏幕小工具和通知进入您的应用</a>，获得有关如何指定“向上”导航行为的指导。
 
 </p>
diff --git a/docs/html-intl/intl/zh-cn/distribute/tools/promote/brand.jd b/docs/html-intl/intl/zh-cn/distribute/tools/promote/brand.jd
index 065673e..8984fc5 100644
--- a/docs/html-intl/intl/zh-cn/distribute/tools/promote/brand.jd
+++ b/docs/html-intl/intl/zh-cn/distribute/tools/promote/brand.jd
@@ -69,77 +69,6 @@
 
   <p>不得使用 Android 徽标专用的字体。</p>
 
-  <h2 id="brand-google_play">Google Play</h2>
-
-
-   <p>以下是关于 Google Play 品牌和相关资源的指南。</p>
-
-  <h4>在文本中使用 Google Play</h4>
-
-  <p>在文本中，请务必为首次出现或位于显著位置的 Google Play™ 加上 TM 符号。</p>
-
-  <p>在提及移动设备体验时，除非相应文本中是很明显的说明性内容，否则请使用“Google Play”。例如，营销资料的标题可以是“从 Google Play™ 下载我们的游戏”，但是说明性内容可以是“使用 Google Play™ 商店应用下载我们的游戏”。
-
-   <p>每次使用 Google Play 名称或图标时，你的资料中都应注明以下归属信息：</p>
-
-  <blockquote><em>Google Play 是 Google Inc. 的商标。</em></blockquote>
-
-
-    <div style="float:right;width:96px;margin-left:30px">
-       <img src="{@docRoot}images/brand/Google_Play_Store_96.png" alt="" />
-      <p style="text-align:center">
-         <a href="{@docRoot}images/brand/Google_Play_Store_48.png">48x48</a> |
-         <a href="{@docRoot}images/brand/Google_Play_Store_96.png">96x96</a><br />
-         <a href="{@docRoot}images/brand/Google_Play_Store_600.png">600x576</a>
-         </p>
-    </div>
-
-  <h4>Google Play 商店图标</h4>
-
-  <p>你可以使用 Google Play 商店图标，但不得修改它。</p>
-
-  <p>如上文所述，在文案中提及 Google Play 商店应用时，请使用全称：“Google Play 商店”。但直接标注 Google Play 商店图标时，可以只使用“Play 商店”，以便与设备上显示的图标标签一致。</p>
-
-
-  <h4>Google Play 徽章</h4>
-
-    <div style="float:right;clear:right;width:172px;margin-left:30px">
-      <img src="{@docRoot}images/brand/en_app_rgb_wo_60.png" alt="" />
-      <p style="text-align:center">
-         <a href="{@docRoot}images/brand/en_app_rgb_wo_45.png">129x45</a> |
-         <a href="{@docRoot}images/brand/en_app_rgb_wo_60.png">172x60</a></p>
-    </div>
-
-    <div style="float:right;clear:right;width:172px;margin-left:30px">
-      <img src="{@docRoot}images/brand/en_generic_rgb_wo_60.png" alt="" />
-      <p style="text-align:center">
-         <a href="{@docRoot}images/brand/en_generic_rgb_wo_45.png">129x45</a> |
-         <a href="{@docRoot}images/brand/en_generic_rgb_wo_60.png">172x60</a></p>
-    </div>
-
-    <p>你可以在网站和宣传资料中使用“即刻获取 Google Play”和“即刻获取 Android 应用 Google Play”徽标作为徽章，以指向你在 Google Play 上的商品。你也可以使用其他 Google Play 徽章格式，以及用于音乐、图书、杂志、电影和电视节目的徽章。要申请这些徽章，请使用 <a href="https://docs.google.com/forms/d/1YE5gZpAAcFKjYcUddCsK1Bv9a9Y-luaLVnkazVlaJ2w/viewform">Android 和 Google Play 品牌权限咨询表单</a>。</p>
-
-    <ul>
-      <li>请不要修改徽章图片的颜色、比例、间距或其他任何方面。
-      </li>
-      <li>当与其他应用市场的徽标一起使用时，Google Play 徽标尺寸不应小于这些徽标的尺寸。</li>
-      <li>在线使用时，徽章应链接至以下内容之一：
-        <ul>
-          <li>由你发布的商品的列表，例如：<br />
-          <span style="margin-left:1em">http://play.google.com/store/search?q=publisherName<em></em></span>
-          </li>
-          <li>Google Play 中相应应用的商品详情页，例如：<br />
-          <span style="margin-left:1em">http://play.google.com/store/apps/details?id=packageName<em></em></span>
-          </li>
-        </ul>
-      </li>
-    </ul>
-
-    <p>要快速创建链接至你在 Google Play 上的应用的徽章，请使用 <a href="{@docRoot}distribute/tools/promote/badges.html">Google Play 徽章生成器</a>（支持 40 多种语言）。</p>
-
-    <p>要创建自定义尺寸的徽章，请下载<a href="{@docRoot}distribute/tools/promote/badge-files.html">支持 40 多种语言的 Google Play 徽章</a>的 Adobe® Illustrator® (.ai) 文件。</p>
-
-    <p>要详细了解如何链接至 Google Play 中的商品详情页，请参阅<a href="{@docRoot}distribute/tools/promote/linking.html">链接至你的商品</a>。</p>
 
   <h2 id="Marketing_Review">营销审核和品牌咨询</h2>
 
diff --git a/docs/html-intl/intl/zh-cn/guide/components/activities.jd b/docs/html-intl/intl/zh-cn/guide/components/activities.jd
new file mode 100644
index 0000000..efc1fb1
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/activities.jd
@@ -0,0 +1,756 @@
+page.title=Activity
+page.tags=Activity, Intent 
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>本文内容</h2>
+<ol>
+  <li><a href="#Creating">创建 Activity</a>
+    <ol>
+      <li><a href="#UI">实现用户界面</a></li>
+      <li><a href="#Declaring">在清单文件中声明  Activity</a></li>
+    </ol>
+  </li>
+  <li><a href="#StartingAnActivity">启动 Activity</a>
+    <ol>
+      <li><a href="#StartingAnActivityForResult">启动 Activity 以获得结果</a></li>
+    </ol>
+  </li>
+  <li><a href="#ShuttingDown">结束 Activity</a></li>
+  <li><a href="#Lifecycle">管理 Activity 生命周期</a>
+    <ol>
+      <li><a href="#ImplementingLifecycleCallbacks">实现生命周期回调</a></li>
+      <li><a href="#SavingActivityState">保存 Activity 状态</a></li>
+      <li><a href="#ConfigurationChanges">处理配置变更</a></li>
+      <li><a href="#CoordinatingActivities">协调 Activity</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>关键类</h2>
+<ol>
+  <li>{@link android.app.Activity}</li>
+</ol>
+
+<h2>另请参阅</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/tasks-and-back-stack.html">任务和返回栈</a>
+</li>
+</ol>
+
+</div>
+</div>
+
+
+
+<p>{@link android.app.Activity}
+是一个应用组件，用户可与其提供的屏幕进行交互，以执行拨打电话、拍摄照片、发送电子邮件或查看地图等操作。
+每个 Activity 都会获得一个用于绘制其用户界面的窗口。窗口通常会充满屏幕，但也可小于屏幕并浮动在其他窗口之上。
+
+</p>
+
+<p> 一个应用通常由多个彼此松散联系的 Activity 组成。
+一般会指定应用中的某个 Activity 为“主” Activity，即首次启动应用时呈现给用户的那个 Activity。
+而且每个 Activity 均可启动另一个 Activity，以便执行不同的操作。
+每次新 Activity 启动时，前一 Activity 便会停止，但系统会在堆栈（“返回栈”）中保留该 Activity。
+
+当新 Activity 启动时，系统会将其推送到返回栈上，并取得用户焦点。
+返回栈遵循“后进先出”堆栈机制，因此，当用户完成当前 Activity 并按“返回”
+<em></em>
+按钮时，系统会从堆栈中将其弹出（并销毁），然后恢复前一 Activity。（<a href="{@docRoot}guide/components/tasks-and-back-stack.html">任务和返回栈</a>文档中对返回栈有更详细的阐述。）
+
+</p>
+
+<p>当一个 Activity 因某个新 Activity 启动而停止时，系统会通过该 Activity 的生命周期回调方法通知其这一状态变化。Activity 因状态变化&mdash;系统是创建 Activity、停止 Activity、恢复 Activity 还是销毁 Activity&mdash; 而收到的回调方法可能有若干种，每一种回调方法都会为您提供执行与该状态变化相应的特定操作的机会。
+
+
+
+
+例如，停止时，您的 Activity 应释放任何大型对象，例如网络或数据库连接。
+当 Activity 恢复时，您可以重新获取所需资源，并恢复执行中断的操作。
+这些状态转变都是 Activity 生命周期的一部分。
+</p>
+
+<p>本文的其余部分阐述有关如何创建和使用 Activity 的基础知识（包括对 Activity 生命周期工作方式的全面阐述），以便您正确管理各种 Activity 状态之间的转变。
+
+</p>
+
+
+
+<h2 id="Creating">创建 Activity</h2>
+
+<p>要创建 Activity，您必须创建 {@link android.app.Activity}
+的子类（或使用其现有子类）。您需要在子类中实现 Activity 在其生命周期的各种状态之间转变时（例如创建 Activity、停止 Activity、恢复 Activity 或销毁 Activity 时）系统调用的回调方法。
+
+两个最重要的回调方法是：
+</p>
+
+<dl>
+  <dt>{@link android.app.Activity#onCreate onCreate()}</dt>
+  <dd>您必须实现此方法。系统会在创建您的
+Activity 时调用此方法。您应该在实现内初始化 Activity 的必需组件。
+
+    最重要的是，您必须在此方法内调用 {@link android.app.Activity#setContentView
+    setContentView()}，以定义 Activity 用户界面的布局。</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>系统将此方法作为用户离开 Activity 的第一个信号（但并不总是意味着 Activity 会被销毁）进行调用。
+您通常应该在此方法内确认在当前用户会话结束后仍然有效的任何更改（因为用户可能不会返回）。
+
+</dd>
+</dl>
+
+<p>您还应使用几种其他生命周期回调方法，以便提供流畅的 Activity 间用户体验，以及处理导致您的 Activity 停止甚至被销毁的意外中断。
+
+后文的<a href="#Lifecycle">管理 Activity 生命周期</a>部分对所有生命周期回调方法进行了阐述。
+</p>
+
+
+
+<h3 id="UI">实现用户界面</h3>
+
+<p> Activity 的用户界面是由层级式视图&mdash;衍生自 {@link android.view.View}
+类的对象—提供的。每个视图都控制 Activity 窗口内的特定矩形空间，可对用户交互作出响应。
+例如，视图可以是在用户触摸时启动某项操作的按钮。
+</p>
+
+<p>您可以利用 Android
+提供的许多现成视图设计和组织您的布局。“小工具”是提供按钮、文本字段、复选框或仅仅是一幅图像等屏幕视觉（交互式）元素的视图。
+“布局”是衍生自 {@link
+android.view.ViewGroup}
+的视图，为其子视图提供唯一布局模型，例如线性布局、网格布局或相对布局。您还可以为 {@link android.view.View} 类和
+{@link android.view.ViewGroup}
+类创建子类（或使用其现有子类）来自行创建小工具和布局，然后将它们应用于您的 Activity 布局。</p>
+
+<p>利用视图定义布局的最常见方法是借助保存在您的应用资源内的 XML
+布局文件。这样一来，您就可以将用户界面的设计与定义 Activity 行为的源代码分开维护。
+您可以通过 {@link android.app.Activity#setContentView(int) setContentView()}
+将布局设置为 Activity 的 UI，从而传递布局的资源
+ID。不过，您也可以在 Activity 代码中创建新
+{@link android.view.View}，并通过将新 {@link
+android.view.View} 插入 {@link android.view.ViewGroup} 来创建视图层次，然后通过将根
+{@link android.view.ViewGroup} 传递到 {@link android.app.Activity#setContentView(View)
+setContentView()} 来使用该布局。</p>
+
+<p>如需了解有关创建用户界面的信息，请参阅<a href="{@docRoot}guide/topics/ui/index.html">用户界面</a>文档。</p>
+
+
+
+<h3 id="Declaring">在清单文件中声明 Activity</h3>
+
+<p>您必须在清单文件中声明您的 Activity，这样系统才能访问它。
+要声明您的 Activity，请打开您的清单文件，并将 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 元素添加为
+<a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+元素的子项。例如：</p>
+
+<pre>
+&lt;manifest ... &gt;
+  &lt;application ... &gt;
+      &lt;activity android:name=".ExampleActivity" /&gt;
+      ...
+  &lt;/application ... &gt;
+  ...
+&lt;/manifest &gt;
+</pre>
+
+<p>您还可以在此元素中加入几个其他特性，以定义 Activity 标签、Activity 图标或风格主题等用于设置 Activity
+UI
+风格的属性。<a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">{@code android:name}</a>
+特性是唯一的必需特性&mdash;它指定 Activity 的类名。应用一旦发布，即不应更改此类名，否则，可能会破坏诸如应用快捷方式等一些功能（请阅读博客文章
+<a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Things
+That Cannot Change</a>
+[不能更改的内容]）。</p>
+
+<p>请参阅 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+元素参考文档，了解有关在清单文件中声明 Activity 的详细信息。</p>
+
+
+<h4>使用 Intent 过滤器</h4>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> 元素还可指定各种 Intent 过滤器&mdash;使用 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;Intent-filter&gt;}</a>
+元素&mdash;以声明其他应用组件激活它的方法。</p>
+
+<p>当您使用 Android SDK 工具创建新应用时，系统自动为您创建的存根 Activity 包含一个 Intent 过滤器，其中声明了该 Activity 响应“主”操作且应置于“launcher”类别内。
+
+ Intent 过滤器的内容与以下所示类似：
+</p>
+
+<pre>
+&lt;activity android:name=".ExampleActivity" android:icon="@drawable/app_icon"&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 元素指定这是应用的“主”入口点。<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a>
+元素指定此 Activity 应列入系统的应用启动器内（以便用户启动该 Activity）。</p>
+
+<p>如果您打算让应用成为独立应用，不允许其他应用激活其 Activity，则您不需要任何其他 Intent 过滤器。
+正如前例所示，只应有一个 Activity 具有“主”操作和“launcher”类别。
+您不想提供给其他应用的 Activity 不应有任何 Intent 过滤器，您可以利用显式 Intent 自行启动它们（下文对此做了阐述）。
+
+</p>
+
+<p>不过，如果您想让 Activity 对衍生自其他应用（以及您的自有应用）的隐式 Intent 作出响应，则必须为 Activity 定义其他 Intent 过滤器。
+
+对于您想要作出响应的每一个 Intent 类型，您都必须加入相应的 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;Intent-filter&gt;}</a>，其中包括一个
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 元素，还可选择性地包括一个 <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 元素和/或一个 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a> 元素。这些元素指定您的 Activity 可以响应的 Intent 类型。
+</p>
+
+<p>如需了解有关您的 Activity 如何响应 Intent 的详细信息，请参阅<a href="{@docRoot}guide/components/intents-filters.html"> Intent 和 Intent 过滤器</a>文档。
+</p>
+
+
+
+<h2 id="StartingAnActivity">启动 Activity</h2>
+
+<p>您可以通过调用 {@link android.app.Activity#startActivity
+  startActivity()}，并将其传递给描述您想启动的 Activity 的 {@link android.content.Intent} 
+来启动另一个 Activity。Intent 对象会指定您想启动的具体 Activity 或描述您想执行的操作类型（系统会为您选择合适的 Activity，甚至是来自其他应用的 Activity）。
+
+
+Intent 对象还可能携带少量供所启动 Activity 使用的数据。
+</p>
+
+<p>在您的自有应用内工作时，您经常只需要启动某个已知 Activity。
+ 您可以通过使用类名创建一个显式定义您想启动的 Activity 的 Intent 对象来实现此目的。
+例如，可以通过以下代码让一个 Activity 启动另一个名为 {@code
+SignInActivity} 的 Activity：</p>
+
+<pre>
+Intent intent = new Intent(this, SignInActivity.class);
+startActivity(intent);
+</pre>
+
+<p>不过，您的应用可能还需要利用您的 Activity 数据执行某项操作，例如发送电子邮件、短信或状态更新。
+在这种情况下，您的应用自身可能不具有执行此类操作所需的 Activity，因此您可以改为利用设备上其他应用提供的 Activity 为您执行这些操作。
+
+这便是 Intent 对象的真正价值所在&mdash;您可以创建一个 Intent 对象，对您想执行的操作进行描述，系统会从其他应用启动相应的 Activity。
+
+
+如果有多个 Activity 可以处理 Intent，则用户可以选择要使用哪一个。
+例如，如果您想允许用户发送电子邮件，可以创建以下 Intent 对象：
+
+</p>
+
+<pre>
+Intent intent = new Intent(Intent.ACTION_SEND);
+intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);
+startActivity(intent);
+</pre>
+
+<p>添加到 Intent 中的 {@link android.content.Intent#EXTRA_EMAIL} extra 是一个字符串数组，其中包含应将电子邮件发送到的电子邮件地址。
+当电子邮件应用响应此 Intent 时，它会读取 extra 中提供的字符串数组，并将它们放入电子邮件撰写窗体的“收件人”字段。
+
+在这种情况下，电子邮件应用的 Activity 启动，并且当用户完成操作时，您的 Activity 会恢复执行。
+</p>
+
+
+
+
+<h3 id="StartingAnActivityForResult">启动 Activity 以获得结果</h3>
+
+<p>有时，您可能需要从启动的 Activity 获得结果。在这种情况下，请通过调用 {@link android.app.Activity#startActivityForResult
+  startActivityForResult()}（而非 {@link android.app.Activity#startActivity
+  startActivity()}）来启动 Activity。
+要想在随后收到后续 Activity 的结果，请实现
+{@link android.app.Activity#onActivityResult onActivityResult()} 回调方法。
+当后续 Activity 完成时，它会使用 {@link
+android.content.Intent} 向您的 {@link android.app.Activity#onActivityResult onActivityResult()}
+方法返回结果。</p>
+
+<p>例如，您可能希望用户选取其中一位联系人，以便您的 Activity 对该联系人中的信息执行某项操作。
+您可以通过以下代码创建此类 Intent 并处理结果：
+</p>
+
+<pre>
+private void pickContact() {
+    // Create an intent to "pick" a contact, as defined by the content provider URI
+    Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
+    startActivityForResult(intent, PICK_CONTACT_REQUEST);
+}
+
+&#64;Override
+protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+    // If the request went well (OK) and the request was PICK_CONTACT_REQUEST
+    if (resultCode == Activity.RESULT_OK &amp;&amp; requestCode == PICK_CONTACT_REQUEST) {
+        // Perform a query to the contact's content provider for the contact's name
+        Cursor cursor = getContentResolver().query(data.getData(),
+        new String[] {Contacts.DISPLAY_NAME}, null, null, null);
+        if (cursor.moveToFirst()) { // True if the cursor is not empty
+            int columnIndex = cursor.getColumnIndex(Contacts.DISPLAY_NAME);
+            String name = cursor.getString(columnIndex);
+            // Do something with the selected contact's name...
+        }
+    }
+}
+</pre>
+
+<p>上例显示的是，您在处理 Activity 结果时应该在 {@link
+android.app.Activity#onActivityResult onActivityResult()}
+方法中使用的基本逻辑。第一个条件检查请求是否成功（如果成功，则{@code resultCode} 将为 {@link android.app.Activity#RESULT_OK}）以及此结果响应的请求是否已知 &mdash; 在此情况下，{@code requestCode}与随 {@link android.app.Activity#startActivityForResult
+startActivityForResult()} 发送的第二个参数匹配。
+
+
+代码通过查询 {@link android.content.Intent} 中返回的数据（{@code data} 参数）从该处开始处理 Activity 结果。
+</p>
+
+<p>实际情况是，{@link
+android.content.ContentResolver} 对一个内容提供程序执行查询，后者返回一个
+{@link android.database.Cursor}，让查询的数据能够被读取。如需了解详细信息，请参阅<a href="{@docRoot}guide/topics/providers/content-providers.html">内容提供程序</a>文档。
+</p>
+
+<p>如需了解有关 Intent 用法的详细信息，请参阅<a href="{@docRoot}guide/components/intents-filters.html"> Intent 和 Intent 过滤器</a>文档。
+</p>
+
+
+<h2 id="ShuttingDown">结束 Activity</h2>
+
+<p>您可以通过调用 Activity 的 {@link android.app.Activity#finish
+finish()} 方法来结束该 Activity。您还可以通过调用
+{@link android.app.Activity#finishActivity finishActivity()} 结束您之前启动的另一个 Activity。</p>
+
+<p class="note"><strong>注：</strong>在大多数情况下，您不应使用这些方法显式结束 Activity。
+正如下文有关 Activity 生命周期的部分所述，Android 系统会为您管理 Activity 的生命周期，因此您无需完成自己的 Activity。
+
+调用这些方法可能对预期的用户体验产生不良影响，因此只应在您确实不想让用户返回此 Activity 实例时使用。
+
+</p>
+
+
+<h2 id="Lifecycle">管理 Activity 生命周期</h2>
+
+<p>通过实现回调方法管理 Activity 的生命周期对开发强大而又灵活的应用至关重要。
+
+Activity 的生命周期会直接受到 Activity 与其他 Activity、其任务及返回栈的关联性的影响。
+</p>
+
+<p>Activity 基本上以三种状态存在：</p>
+
+<dl>
+  <dt><i>已继续</i></dt>
+    <dd>此 Activity 位于屏幕前台并具有用户焦点。（有时也将此状态称作“运行中”。）
+</dd>
+
+  <dt><i>已暂停</i></dt>
+    <dd>另一个 Activity 位于屏幕前台并具有用户焦点，但此 Activity 仍可见。也就是说，另一个 Activity 显示在此 Activity 上方，并且该 Activity 部分透明或未覆盖整个屏幕。
+
+已暂停的 Activity 处于完全 Activity 状态（{@link android.app.Activity}
+对象保留在内存中，它保留了所有状态和成员信息，并与窗口管理器保持连接），但在内存极度不足的情况下，可能会被系统终止。
+</dd>
+
+  <dt><i>已停止</i></dt>
+    <dd>该 Activity 被另一个 Activity 完全遮盖（该 Activity 目前位于“后台”）。
+已停止的 Activity 同样仍处于 Activity 状态（{@link android.app.Activity}
+对象保留在内存中，它保留了所有状态和成员信息，但<em>未</em>与窗口管理器连接）。
+不过，它对用户不再可见，在他处需要内存时可能会被系统终止。
+</dd>
+</dl>
+
+<p>如果 Activity 处于暂停或停止状态，系统可通过要求其结束（调用其
+{@link android.app.Activity#finish finish()}
+方法）或直接终止其进程，将其从内存中删除。（将其结束或终止后）再次打开 Activity 时，必须重建。
+</p>
+
+
+
+<h3 id="ImplementingLifecycleCallbacks">实现生命周期回调</h3>
+
+<p>当一个 Activity 转入和转出上述不同状态时，系统会通过各种回调方法向其发出通知。
+所有回调方法都是挂钩，您可以在 Activity 状态发生变化时替代这些挂钩来执行相应操作。
+以下框架 Activity 包括每一个基本生命周期方法：
+</p>
+
+
+<pre>
+public class ExampleActivity extends Activity {
+    &#64;Override
+    public void {@link android.app.Activity#onCreate onCreate}(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // The activity is being created.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStart onStart()} {
+        super.onStart();
+        // The activity is about to become visible.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onResume onResume()} {
+        super.onResume();
+        // The activity has become visible (it is now "resumed").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onPause onPause()} {
+        super.onPause();
+        // Another activity is taking focus (this activity is about to be "paused").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStop onStop()} {
+        super.onStop();
+        // The activity is no longer visible (it is now "stopped")
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onDestroy onDestroy()} {
+        super.onDestroy();
+        // The activity is about to be destroyed.
+    }
+}
+</pre>
+
+<p class="note"><strong>注：</strong>正如以上示例所示，您在实现这些生命周期方法时必须始终先调用超类实现，然后再执行任何操作。
+</p>
+
+<p>这些方法共同定义 Activity 的整个生命周期。您可以通过实现这些方法监控 Activity 生命周期中的三个嵌套循环：
+ </p>
+
+<ul>
+<li>Activity 的<b>整个生命周期</b>发生在 {@link
+android.app.Activity#onCreate onCreate()} 调用与 {@link
+android.app.Activity#onDestroy} 调用之间。您的 Activity 应在 {@link android.app.Activity#onCreate onCreate()}
+中执行“全局”状态设置（例如定义布局），并释放 {@link android.app.Activity#onDestroy}
+中的所有其余资源。例如，如果您的 Activity 有一个在后台运行的线程，用于从网络上下载数据，它可能会在
+{@link android.app.Activity#onCreate onCreate()} 中创建该线程，然后在
+{@link
+android.app.Activity#onDestroy} 中停止该线程。</li>
+
+<li><p>Activity 的<b>可见生命周期</b>发生在 {@link
+android.app.Activity#onStart onStart()} 调用与 {@link
+android.app.Activity#onStop onStop()} 调用之间。在这段时间，用户可以在屏幕上看到 Activity 并与其交互。
+例如，当一个新 Activity 启动，并且此 Activity 不再可见时，系统会调用
+{@link android.app.Activity#onStop onStop()}。您可以在调用这两个方法之间保留向用户显示 Activity 所需的资源。
+例如，您可以在
+{@link
+android.app.Activity#onStart onStart()} 中注册一个 {@link android.content.BroadcastReceiver} 以监控影响 UI
+的变化，并在用户无法再看到您显示的内容时在 {@link android.app.Activity#onStop onStop()}
+中将其取消注册。在 Activity 的整个生命周期，当 Activity 在对用户可见和隐藏两种状态中交替变化时，系统可能会多次调用 {@link android.app.Activity#onStart onStart()} 和 {@link
+android.app.Activity#onStop onStop()}。
+</p></li>
+
+<li><p>Activity 的<b>前台生命周期</b>发生在 {@link
+android.app.Activity#onResume onResume()} 调用与 {@link android.app.Activity#onPause
+onPause()} 调用之间。在这段时间，Activity 位于屏幕上的所有其他 Activity 之前，并具有用户输入焦点。
+Activity 可频繁转入和转出前台&mdash;例如，当设备转入休眠状态或出现对话框时，系统会调用 {@link android.app.Activity#onPause onPause()}。
+
+由于此状态可能经常发生转变，因此这两个方法中应采用适度轻量级的代码，以避免因转变速度慢而让用户等待。
+</p></li>
+</ul>
+
+<p>图 1 说明了这些循环以及 Activity 在状态转变期间可能经过的路径。矩形表示回调方法，当 Activity 在不同状态之间转变时，您可以实现这些方法来执行操作。
+
+ <p>
+
+<img src="{@docRoot}images/activity_lifecycle.png" alt="" />
+<p class="img-caption"><strong>图 1. </strong>Activity 生命周期。</p>
+
+<p>表 1 列出了相同的生命周期回调方法，其中对每一种回调方法做了更详细的描述，并说明了每一种方法在 Activity 整个生命周期内的位置，包括在回调方法完成后系统能否终止 Activity。
+
+
+</p>
+
+<p class="table-caption"><strong>表 1. </strong>Activity 生命周期回调方法汇总表。
+</p>
+
+<table border="2" width="85%" frame="hsides" rules="rows">
+<colgroup align="left" span="3"></colgroup>
+<colgroup align="left"></colgroup>
+<colgroup align="center"></colgroup>
+<colgroup align="center"></colgroup>
+
+<thead>
+<tr><th colspan="3">方法</th> <th>描述</th> <th>是否能事后终止？</th> <th>后接</th></tr>
+</thead>
+
+<tbody>
+<tr>
+  <td colspan="3" align="left"><code>{@link android.app.Activity#onCreate onCreate()}</code></td>
+  <td>首次创建 Activity 时调用。
+      您应该在此方法中执行所有正常的静态设置&mdash;
+创建视图、将数据绑定到列表等等。系统向此方法传递一个 Bundle 对象，其中包含 Activity 的上一状态，不过前提是捕获了该状态（请参阅后文的<a href="#actstate">保存 Activity 状态</a>）。
+
+
+
+      <p>始终后接 {@code onStart()}。</p></td>
+  <td align="center">否</td>
+      <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td rowspan="5" style="border-left: none; border-right: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onRestart
+onRestart()}</code></td>
+   <td>在 Activity 已停止并即将再次启动前调用。
+
+       <p>始终后接 {@code onStart()}</p></td>
+   <td align="center">否</td>
+   <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStart onStart()}</code></td>
+   <td>在 Activity 即将对用户可见之前调用。
+       <p>如果 Activity 转入前台，则后接 {@code onResume()}，如果 Activity 转入隐藏状态，则后接 {@code onStop()}。
+</p></td>
+    <td align="center">否</td>
+    <td align="center">{@code onResume()} <br/>或<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td rowspan="2" style="border-left: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td align="left"><code>{@link android.app.Activity#onResume onResume()}</code></td>
+   <td>在 Activity 即将开始与用户进行交互之前调用。
+此时，Activity 处于 Activity 堆栈的顶层，并具有用户输入焦点。
+
+       <p>始终后接 {@code onPause()}。</p></td>
+   <td align="center">否</td>
+   <td align="center">{@code onPause()}</td>
+</tr>
+
+<tr>
+   <td align="left"><code>{@link android.app.Activity#onPause onPause()}</code></td>
+   <td>当系统即将开始继续另一个 Activity 时调用。
+此方法通常用于确认对持久性数据的未保存更改、停止动画以及其他可能消耗 CPU 的内容，诸如此类。
+
+它应该非常迅速地执行所需操作，因为它返回后，下一个 Activity 才能继续执行。
+
+       <p>如果 Activity 返回前台，则后接 {@code onResume()}，如果 Activity 转入对用户不可见状态，则后接 {@code onStop()}。
+
+</td>
+   <td align="center"><strong style="color:#800000">是</strong></td>
+   <td align="center">{@code onResume()} <br/>或<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStop onStop()}</code></td>
+   <td>Activity 对用户不再可见时调用。如果 Activity 被销毁，或另一个 Activity（一个现有 Activity 或新 Activity）继续执行并将其覆盖，就可能发生这种情况。
+
+
+       <p>如果 Activity 恢复与用户的交互，则后接 {@code onRestart()}，如果 Activity 被销毁，则后接
+{@code onDestroy()}。
+</p></td>
+   <td align="center"><strong style="color:#800000">是</strong></td>
+   <td align="center">{@code onRestart()} <br/>或<br/> {@code onDestroy()}</td>
+</tr>
+
+<tr>
+   <td colspan="3" align="left"><code>{@link android.app.Activity#onDestroy
+onDestroy()}</code></td>
+   <td>在 Activity 被销毁前调用。这是 Activity 将收到的最后调用。
+当 Activity 结束（有人调用 Activity 上的 <code>{@link android.app.Activity#finish
+       finish()}</code>），或系统为节省空间而暂时销毁该 Activity 实例时，可能会调用它。
+
+您可以通过
+ <code>{@link
+       android.app.Activity#isFinishing isFinishing()}</code> 方法区分这两种情形。</td>
+   <td align="center"><strong style="color:#800000">是</strong></td>
+   <td align="center"><em>无</em></td>
+</tr>
+</tbody>
+</table>
+
+<p>名为“是否能事后终止？”的列表示系统是否能在不执行另一行 Activity 代码的情况下，在<em>方法返回后</em>随时终止承载 Activity 的进程。
+
+有三个方法带有“是”标记：({@link
+android.app.Activity#onPause
+onPause()}、{@link android.app.Activity#onStop onStop()} 和 {@link android.app.Activity#onDestroy
+onDestroy()})。由于 {@link android.app.Activity#onPause onPause()}
+是这三个方法中的第一个，因此 Activity 创建后，{@link android.app.Activity#onPause onPause()}
+必定成为最后调用的方法，然后<em>才能</em>终止进程&mdash;如果系统在紧急情况下必须恢复内存，则可能不会调用
+{@link
+android.app.Activity#onStop onStop()} 和
+{@link android.app.Activity#onDestroy onDestroy()}。因此，您应该使用 {@link android.app.Activity#onPause onPause()}
+向存储设备写入至关重要的持久性数据（例如用户编辑）。不过，您应该对
+{@link android.app.Activity#onPause onPause()}
+调用期间必须保留的信息有所选择，因为该方法中的任何阻止过程都会妨碍向下一个 Activity 的转变并拖慢用户体验。
+</p>
+
+<p> 在<b>是否能在事后终止？</b>列中标记为“否”的方法可从系统调用它们的一刻起防止承载 Activity 的进程被终止。
+因此，在从 {@link android.app.Activity#onPause onPause()}
+返回的时间到 {@link android.app.Activity#onResume onResume()}
+被调用的时间，系统可以终止 Activity。在 {@link android.app.Activity#onPause onPause()}
+被再次调用并返回前，将无法再次终止 Activity。 </p>
+
+<p class="note"><strong>注：</strong>根据表
+1
+中的定义属于技术上无法“终止”的 Activity 仍可能被系统终止&mdash;但这种情况只有在无任何其他资源的极端情况下才会发生。<a href="{@docRoot}guide/components/processes-and-threads.html">进程和线程处理</a>文档对可能会终止 Activity 的情况做了更详尽的阐述。
+
+</p>
+
+
+<h3 id="SavingActivityState">保存 Activity 状态</h3>
+
+<p><a href="#Lifecycle">管理 Activity 生命周期</a>的引言部分简要提及，当 Activity 暂停或停止时，Activity 的状态会得到保留。
+
+确实如此，因为当 Activity 暂停或停止时，{@link android.app.Activity}
+对象仍保留在内存中 &mdash; 有关其成员和当前状态的所有信息仍处于 Activity 状态。
+因此，用户在 Activity 内所做的任何更改都会得到保留，这样一来，当 Activity 返回前台（当它“继续”）时，这些更改仍然存在。
+
+</p>
+
+<p>不过，当系统为了恢复内存而销毁某项 Activity 时，{@link
+android.app.Activity}
+对象也会被销毁，因此系统在继续 Activity 时根本无法让其状态保持完好，而是必须在用户返回Activity时重建 {@link android.app.Activity}
+对象。但用户并不知道系统销毁 Activity 后又对其进行了重建，因此他们很可能认为 Activity 状态毫无变化。
+
+在这种情况下，您可以实现另一个回调方法对有关 Activity 状态的信息进行保存，以确保有关 Activity 状态的重要信息得到保留：{@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}。
+
+</p>
+
+<p>系统会先调用
+{@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}，然后再使 Activity 变得易于销毁。系统会向该方法传递一个
+{@link android.os.Bundle}，您可以在其中使用 
+{@link
+android.os.Bundle#putString putString()} 和 {@link
+android.os.Bundle#putInt putInt()} 等方法以名称-值对形式保存有关 Activity 状态的信息。然后，如果系统终止您的应用进程，并且用户返回您的 Activity，则系统会重建该 Activity，并将
+{@link android.os.Bundle} 同时传递给
+{@link android.app.Activity#onCreate onCreate()} 和 {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}。您可以使用上述任一方法从
+{@link android.os.Bundle}
+提取您保存的状态并恢复该 Activity 状态。如果没有状态信息需要恢复，则传递给您的 {@link
+android.os.Bundle}
+是空值（如果是首次创建该 Activity，就会出现这种情况）。</p>
+
+<img src="{@docRoot}images/fundamentals/restore_instance.png" alt="" />
+<p class="img-caption"><strong>图 2. </strong>在两种情况下，Activity 重获用户焦点时可保持状态完好：系统在销毁 Activity 后重建 Activity，Activity 必须恢复之前保存的状态；系统停止 Activity 后继续执行 Activity，并且 Activity 状态保持完好。
+
+
+</p>
+
+<p class="note"><strong>注：</strong>无法保证系统会在销毁您的 Activity 前调用 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}，因为存在不需要保存状态的情况（例如用户使用“返回”
+<em></em>
+按钮离开您的 Activity 时，因为用户的行为是在显式关闭 Activity）。
+
+如果系统调用 {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()}，它会在调用 {@link
+android.app.Activity#onStop onStop()} 之前，并且可能会在调用 {@link android.app.Activity#onPause
+onPause()} 之前进行调用。</p>
+
+<p>不过，即使您什么都不做，也不实现 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}，{@link android.app.Activity}
+类的 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} 默认实现也会恢复部分 Activity 状态。具体地讲，默认实现会为布局中的每个
+{@link
+android.view.View} 调用相应的 {@link
+android.view.View#onSaveInstanceState onSaveInstanceState()}
+方法，让每个视图都能提供有关自身的应保存信息。Android
+框架中几乎每个小工具都会根据需要实现此方法，以便在重建 Activity 时自动保存和恢复对 UI
+所做的任何可见更改。例如，{@link android.widget.EditText}
+小工具保存用户输入的任何文本，{@link android.widget.CheckBox}
+小工具保存复选框的选中或未选中状态。您只需为想要保存其状态的每个小工具提供一个唯一的 ID（通过 <a href="{@docRoot}guide/topics/resources/layout-resource.html#idvalue">{@code android:id}</a>
+属性）。如果小工具没有 ID，则系统无法保存其状态。
+</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<p>您还可以通过将
+{@link android.R.attr#saveEnabled android:saveEnabled} 属性设置为 {@code "false"} 或通过调用 {@link android.view.View#setSaveEnabled setSaveEnabled()}
+方法显式阻止布局内的视图保存其状态。您通常不应将该属性禁用，但如果您想以不同方式恢复 Activity UI
+的状态，就可能需要这样做。</p>
+</div>
+</div>
+
+<p>尽管 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+的默认实现会保存有关您的Activity UI
+的有用信息，您可能仍需替代它以保存更多信息。例如，您可能需要保存在 Activity 生命周期内发生了变化的成员值（它们可能与
+UI 中恢复的值有关联，但默认情况下系统不会恢复储存这些 UI
+值的成员）。</p>
+
+<p>由于 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} 的默认实现有助于保存 UI 的状态，
+因此如果您为了保存更多状态信息而重写该方法，应始终先调用
+{@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+的超类实现，然后再执行任何操作。同样，如果您替代 {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}
+方法，也应调用它的超类实现，以便默认实现能够恢复视图状态。</p>
+
+<p class="note"><strong>注：</strong>由于无法保证系统会调用
+{@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()}，因此您只应利用它来记录 Activity 的瞬态（UI
+的状态）&mdash;切勿使用它来存储持久性数据，而应使用 {@link
+android.app.Activity#onPause onPause()}
+在用户离开 Activity 后存储持久性数据（例如应保存到数据库的数据）。</p>
+
+<p>您只需旋转设备，让屏幕方向发生变化，就能有效地测试您的应用的状态恢复能力。
+当屏幕方向变化时，系统会销毁并重建 Activity，以便应用可供新屏幕配置使用的备用资源。
+
+单凭这一理由，您的 Activity 在重建时能否完全恢复其状态就显得非常重要，因为用户在使用应用时经常需要旋转屏幕。
+
+</p>
+
+
+<h3 id="ConfigurationChanges">处理配置变更</h3>
+
+<p>有些设备配置可能会在运行时发生变化（例如屏幕方向、键盘可用性及语言）。
+发生此类变化时，Android 会重建运行中的 Activity（系统调用
+{@link android.app.Activity#onDestroy}，然后立即调用 {@link
+android.app.Activity#onCreate onCreate()}）。此行为旨在通过利用您提供的备用资源（例如适用于不同屏幕方向和屏幕尺寸的不同布局）自动重新加载您的应用来帮助它适应新配置。
+
+
+</p>
+
+<p>如果您对 Activity 进行了适当设计，让它能够按以上所述处理屏幕方向变化带来的重启并恢复 Activity 状态，那么在遭遇 Activity 生命周期中的其他意外事件时，您的应用将具有更强的适应性。
+
+</p>
+
+<p>正如上文所述，处理此类重启的最佳方法
+是利用 {@link
+  android.app.Activity#onSaveInstanceState onSaveInstanceState()} 和 {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}（或 {@link
+android.app.Activity#onCreate onCreate()}）保存并恢复 Activity 的状态。</p>
+
+<p>如需了解有关运行时发生的配置变更以及应对方法的详细信息，请阅读<a href="{@docRoot}guide/topics/resources/runtime-changes.html">处理运行时变更</a>指南。
+
+</p>
+
+
+
+<h3 id="CoordinatingActivities">协调 Activity</h3>
+
+ <p>当一个 Activity 启动另一个 Activity 时，它们都会体验到生命周期转变。第一个 Activity 暂停并停止（但如果它在后台仍然可见，则不会停止）时，系统会创建另一个 Activity。
+
+如果这些 Activity 共用保存到磁盘或其他地方的数据，必须了解的是，在创建第二个 Activity 前，第一个 Activity 不会完全停止。更确切地说，启动第二个 Activity 的过程与停止第一个 Activity 的过程存在重叠。
+
+
+</p>
+
+<p>生命周期回调的顺序经过明确定义，当两个 Activity 位于同一进程，并且由一个 Activity 启动另一个 Activity 时，其定义尤其明确。
+以下是当 Activity A
+启动 Activity B 时一系列操作的发生顺序： </p>
+
+<ol>
+<li>Activity A 的 {@link android.app.Activity#onPause onPause()} 方法执行。</li>
+
+<li>Activity B 的 {@link android.app.Activity#onCreate onCreate()}、{@link
+android.app.Activity#onStart onStart()} 和 {@link android.app.Activity#onResume onResume()}
+方法依次执行。（Activity B 现在具有用户焦点。）</li>
+
+<li>然后，如果 Activity A 在屏幕上不再可见，则其 {@link
+android.app.Activity#onStop onStop()} 方法执行。</li>
+</ol>
+
+ <p>您可以利用这种可预测的生命周期回调顺序管理从一个 Activity 到另一个 Activity 的信息转变。
+例如，如果您必须在第一个 Activity 停止时向数据库写入数据，以便下一个 Activity 能够读取该数据，则应在
+{@link android.app.Activity#onPause onPause()}
+而不是 {@link
+android.app.Activity#onStop onStop()} 执行期间向数据库写入数据。</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how Android maintains a history of activities and
+enables user multitasking, continue with the <b><a
+href="{@docRoot}guide/components/tasks-and-back-stack.html">Tasks and Back
+Stack</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/zh-cn/guide/components/bound-services.jd b/docs/html-intl/intl/zh-cn/guide/components/bound-services.jd
new file mode 100644
index 0000000..ed6aaf6
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/bound-services.jd
@@ -0,0 +1,658 @@
+page.title=绑定服务
+parent.title=服务
+parent.link=services.html
+@jd:body
+
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>本文内容</h2>
+<ol>
+  <li><a href="#Basics">基础知识</a></li>
+  <li><a href="#Creating">创建绑定服务</a>
+    <ol>
+      <li><a href="#Binder">扩展 Binder 类</a></li>
+      <li><a href="#Messenger">使用 Messenger</a></li>
+    </ol>
+  </li>
+  <li><a href="#Binding">绑定到服务</a></li>
+  <li><a href="#Lifecycle">管理绑定服务的生命周期</a></li>
+</ol>
+
+<h2>关键类</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.content.ServiceConnection}</li>
+  <li>{@link android.os.IBinder}</li>
+</ol>
+
+<h2>示例</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+      RemoteService}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>另请参阅</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/services.html">服务</a></li>
+</ol>
+</div>
+
+
+<p>绑定服务是客户端-服务器接口中的服务器。绑定服务可让组件（例如 Activity）绑定到服务、发送请求、接收响应，甚至执行进程间通信 (IPC)。
+
+绑定服务通常只在为其他应用组件服务时处于活动状态，不会无限期在后台运行。
+</p>
+
+<p>本文向您介绍如何创建绑定服务，包括如何绑定到来自其他应用组件的服务。
+不过，您还应参阅<a href="{@docRoot}guide/components/services.html">服务</a>文档，了解有关一般服务的更多信息，例如：如何利用服务传送通知、如何将服务设置为在前台运行等等。
+
+</p>
+
+
+<h2 id="Basics">基础知识</h2>
+
+<p>绑定服务是 {@link android.app.Service}
+类的实现，可让其他应用与其绑定和交互。要提供服务绑定，您必须实现 {@link android.app.Service#onBind onBind()}
+回调方法。该方法返回的
+{@link android.os.IBinder}
+对象定义了客户端用来与服务进行交互的编程接口。</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>绑定到已启动服务</h3>
+
+<p>正如<a href="{@docRoot}guide/components/services.html">服务</a>文档中所述，您可以创建同时具有已启动和绑定两种状态的服务。
+也就是说，可通过调用
+{@link android.content.Context#startService startService()}
+启动该服务，让服务无限期运行；此外，还可通过调用 {@link
+android.content.Context#bindService bindService()} 使客户端绑定到服务。
+  <p>如果您确实允许服务同时具有已启动和绑定状态，则服务启动后，系统“绝对不会”<em></em>在所有客户端都取消绑定时销毁服务。
+为此，您必须通过调用
+{@link android.app.Service#stopSelf stopSelf()} 或 {@link
+android.content.Context#stopService stopService()} 显式停止服务。</p>
+
+<p>尽管您通常应该实现
+{@link android.app.Service#onBind onBind()}
+<em>或</em> {@link android.app.Service#onStartCommand onStartCommand()}，但有时需要同时实现这两者。例如，音乐播放器可能发现让其服务无限期运行并同时提供绑定很有用处。
+这样一来，Activity 便可启动服务进行音乐播放，即使用户离开应用，音乐播放也不会停止。
+然后，当用户返回应用时，Activity 可绑定到服务，重新获得回放控制权。
+</p>
+
+<p>请务必阅读<a href="#Lifecycle">管理绑定服务的生命周期</a>部分，详细了解有关添加绑定已启动服务时该服务的生命周期信息。
+
+</p>
+</div>
+</div>
+
+<p>客户端可通过调用 {@link android.content.Context#bindService
+bindService()} 绑定到服务。调用时，它必须提供 {@link
+android.content.ServiceConnection} 的实现，后者会监控与服务的连接。{@link
+android.content.Context#bindService bindService()} 方法会立即无值返回，但当
+Android
+系统创建客户端与服务之间的连接时，会调用 {@link
+android.content.ServiceConnection} 上的 {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()}，向客户端传递用来与服务通信的
+{@link android.os.IBinder}。</p>
+
+<p>多个客户端可同时连接到一个服务。不过，只有在第一个客户端绑定时，系统才会调用服务的
+{@link android.app.Service#onBind onBind()}
+方法来检索 {@link android.os.IBinder}。系统随后无需再次调用
+{@link android.app.Service#onBind onBind()}，便可将同一 {@link android.os.IBinder} 传递至任何其他绑定的客户端。</p>
+
+<p>当最后一个客户端取消与服务的绑定时，系统会将服务销毁（除非
+{@link android.content.Context#startService startService()} 也启动了该服务）。</p>
+
+<p>当您实现绑定服务时，最重要的环节是定义您的
+{@link android.app.Service#onBind onBind()} 回调方法返回的接口。您可以通过几种不同的方法定义服务的
+{@link android.os.IBinder}
+接口，下文对这些方法逐一做了阐述。</p>
+
+
+
+<h2 id="Creating">创建绑定服务</h2>
+
+<p>创建提供绑定的服务时，您必须提供 {@link android.os.IBinder}，用以提供客户端用来与服务进行交互的编程接口。
+您可以通过三种方法定义接口：
+</p>
+
+<dl>
+  <dt><a href="#Binder">扩展 Binder 类</a></dt>
+  <dd>如果服务是供您的自有应用专用，并且在与客户端相同的进程中运行（常见情况），则应通过扩展
+{@link android.os.Binder}
+类并从 {@link android.app.Service#onBind onBind()}
+返回它的一个实例来创建接口。客户端收到 {@link android.os.Binder}
+后，可利用它直接访问 {@link android.os.Binder} 实现中乃至 {@link android.app.Service}
+中可用的公共方法。
+  <p>如果服务只是您的自有应用的后台工作线程，则优先采用这种方法。
+不以这种方式创建接口的唯一原因是，您的服务被其他应用或不同的进程占用。
+</dd>
+
+  <dt><a href="#Messenger">使用 Messenger</a></dt>
+  <dd>如需让接口跨不同的进程工作，则可使用
+{@link android.os.Messenger} 为服务创建接口。服务可以这种方式定义对应于不同类型
+{@link
+android.os.Message} 对象的 {@link android.os.Handler}。此 {@link android.os.Handler}
+是 {@link android.os.Messenger} 的基础，后者随后可与客户端分享一个 {@link android.os.IBinder}，从而让客户端能利用 {@link
+android.os.Message}
+对象向服务发送命令。此外，客户端还可定义自有
+{@link android.os.Messenger}，以便服务回传消息。
+  <p>这是执行进程间通信 (IPC) 的最简单方法，因为 {@link
+android.os.Messenger}
+会在单一线程中创建包含所有请求的队列，这样您就不必对服务进行线程安全设计。</p>
+  </dd>
+
+  <dt>使用 AIDL</dt>
+  <dd>AIDL（Android
+接口定义语言）执行所有将对象分解成原语的工作，操作系统可以识别这些原语并将它们编组到各进程中，以执行
+IPC。之前采用 {@link android.os.Messenger} 的方法实际上是以 AIDL
+作为其底层结构。如上所述，{@link android.os.Messenger}
+会在单一线程中创建包含所有客户端请求的队列，以便服务一次接收一个请求。不过，如果您想让服务同时处理多个请求，则可直接使用
+AIDL。
+在此情况下，您的服务必须具备多线程处理能力，并采用线程安全式设计。
+  <p>如需直接使用
+AIDL，您必须创建一个定义编程接口的 {@code .aidl} 文件。Android SDK
+工具利用该文件生成一个实现接口并处理 IPC
+的抽象类，您随后可在服务内对其进行扩展。</p>
+  </dd>
+</dl>
+
+  <p class="note"><strong>注：</strong>大多数应用“都不会”<strong></strong>使用
+AIDL
+来创建绑定服务，因为它可能要求具备多线程处理能力，并可能导致实现的复杂性增加。因此，AIDL
+并不适合大多数应用，本文也不会阐述如何将其用于您的服务。如果您确定自己需要直接使用
+AIDL，请参阅 <a href="{@docRoot}guide/components/aidl.html">AIDL</a>
+文档。</p>
+
+
+
+
+<h3 id="Binder">扩展 Binder 类</h3>
+
+<p>如果您的服务仅供本地应用使用，不需要跨进程工作，则可以实现自有
+{@link android.os.Binder}
+类，让您的客户端通过该类直接访问服务中的公共方法。</p>
+
+<p class="note"><strong>注：</strong>此方法只有在客户端和服务位于同一应用和进程内这一最常见的情况下方才有效。
+例如，对于需要将 Activity 绑定到在后台播放音乐的自有服务的音乐应用，此方法非常有效。
+
+</p>
+
+<p>以下是具体的设置方法：</p>
+<ol>
+  <li>在您的服务中，创建一个可满足下列任一要求的 {@link android.os.Binder} 实例：
+    <ul>
+      <li>包含客户端可调用的公共方法</li>
+      <li>返回当前 {@link android.app.Service}
+实例，其中包含客户端可调用的公共方法</li>
+      <li>或返回由服务承载的其他类的实例，其中包含客户端可调用的公共方法
+</li>
+    </ul>
+  <li>从 {@link
+android.app.Service#onBind onBind()} 回调方法返回此 {@link android.os.Binder} 实例。</li>
+  <li>在客户端中，从 {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} 回调方法接收
+{@link android.os.Binder}，并使用提供的方法调用绑定服务。</li>
+</ol>
+
+<p class="note"><strong>注：</strong>之所以要求服务和客户端必须在同一应用内，是为了便于客户端转换返回的对象和正确调用其
+API。服务和客户端还必须在同一进程内，因为此方法不执行任何跨进程编组。
+
+</p>
+
+<p>例如，以下这个服务可让客户端通过
+{@link android.os.Binder} 实现访问服务中的方法：</p>
+
+<pre>
+public class LocalService extends Service {
+    // Binder given to clients
+    private final IBinder mBinder = new LocalBinder();
+    // Random number generator
+    private final Random mGenerator = new Random();
+
+    /**
+     * Class used for the client Binder.  Because we know this service always
+     * runs in the same process as its clients, we don't need to deal with IPC.
+     */
+    public class LocalBinder extends Binder {
+        LocalService getService() {
+            // Return this instance of LocalService so clients can call public methods
+            return LocalService.this;
+        }
+    }
+
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        return mBinder;
+    }
+
+    /** method for clients */
+    public int getRandomNumber() {
+      return mGenerator.nextInt(100);
+    }
+}
+</pre>
+
+<p>{@code LocalBinder} 为客户端提供 {@code getService()} 方法，以检索 {@code LocalService}
+的当前实例。这样，客户端便可调用服务中的公共方法。
+例如，客户端可调用服务中的 {@code getRandomNumber()}。</p>
+
+<p>点击按钮时，以下这个 Activity 会绑定到 {@code LocalService} 并调用
+{@code getRandomNumber()}：</p>
+
+<pre>
+public class BindingActivity extends Activity {
+    LocalService mService;
+    boolean mBound = false;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to LocalService
+        Intent intent = new Intent(this, LocalService.class);
+        bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+
+    /** Called when a button is clicked (the button in the layout file attaches to
+      * this method with the android:onClick attribute) */
+    public void onButtonClick(View v) {
+        if (mBound) {
+            // Call a method from the LocalService.
+            // However, if this call were something that might hang, then this request should
+            // occur in a separate thread to avoid slowing down the activity performance.
+            int num = mService.getRandomNumber();
+            Toast.makeText(this, "number: " + num, Toast.LENGTH_SHORT).show();
+        }
+    }
+
+    /** Defines callbacks for service binding, passed to bindService() */
+    private ServiceConnection mConnection = new ServiceConnection() {
+
+        &#64;Override
+        public void onServiceConnected(ComponentName className,
+                IBinder service) {
+            // We've bound to LocalService, cast the IBinder and get LocalService instance
+            LocalBinder binder = (LocalBinder) service;
+            mService = binder.getService();
+            mBound = true;
+        }
+
+        &#64;Override
+        public void onServiceDisconnected(ComponentName arg0) {
+            mBound = false;
+        }
+    };
+}
+</pre>
+
+<p>上例说明了客户端如何使用 {@link android.content.ServiceConnection} 的实现和 {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()}
+回调绑定到服务。下文更详细介绍了绑定到服务的过程。
+</p>
+
+<p class="note"><strong>注：</strong>上例并未显式取消与服务的绑定，但所有客户端都应在适当的时间（例如当 Activity 暂停时）取消绑定。
+</p>
+
+<p>如需查看更多示例代码，请参阅 <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a> 中的 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+LocalService.java}</a> 类和 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.html">{@code
+LocalServiceActivities.java}</a> 类。</p>
+
+
+
+
+
+<h3 id="Messenger">使用 Messenger</h3>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h4>与 AIDL 比较</h4>
+  <p>当您需要执行 IPC 时，为您的接口使用 {@link android.os.Messenger}
+要比使用 AIDL 实现它更加简单，因为 {@link android.os.Messenger}
+会将所有服务调用排入队列，而纯粹的 AIDL
+接口会同时向服务发送多个请求，服务随后必须应对多线程处理。</p>
+  <p>对于大多数应用，服务不需要执行多线程处理，因此使用 {@link
+android.os.Messenger} 可让服务一次处理一个调用。如果您的服务必须执行多线程处理，则应使用 <a href="{@docRoot}guide/components/aidl.html">AIDL</a>
+来定义接口。</p>
+</div>
+</div>
+
+<p>如需让服务与远程进程通信，则可使用 {@link android.os.Messenger}
+为您的服务提供接口。利用此方法，您无需使用
+AIDL 便可执行进程间通信 (IPC)。</p>
+
+<p>以下是 {@link android.os.Messenger} 的使用方法摘要：</p>
+
+<ul>
+  <li>服务实现一个
+{@link android.os.Handler}，由其接收来自客户端的每个调用的回调</li>
+  <li>{@link android.os.Handler} 用于创建 {@link android.os.Messenger}
+对象（对 {@link android.os.Handler} 的引用）</li>
+  <li>{@link android.os.Messenger} 创建一个 {@link android.os.IBinder}，服务通过 {@link android.app.Service#onBind onBind()}
+使其返回客户端</li>
+  <li>客户端使用 {@link android.os.IBinder}
+将 {@link android.os.Messenger}（引用服务的 {@link android.os.Handler}）实例化，然后使用后者将 {@link android.os.Message}
+对象发送给服务</li>
+  <li>服务在其 {@link
+android.os.Handler} 中（具体地讲，是在 {@link android.os.Handler#handleMessage
+handleMessage()} 方法中）接收每个 {@link android.os.Message}</li>
+</ul>
+
+
+<p>这样，客户端并没有调用服务的“方法”。而客户端传递的“消息”（{@link android.os.Message}
+对象）是服务在其 {@link android.os.Handler}
+中接收的。</p>
+
+<p>以下是一个使用 {@link android.os.Messenger} 接口的简单服务示例：</p>
+
+<pre>
+public class MessengerService extends Service {
+    /** Command to the service to display a message */
+    static final int MSG_SAY_HELLO = 1;
+
+    /**
+     * Handler of incoming messages from clients.
+     */
+    class IncomingHandler extends Handler {
+        &#64;Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_SAY_HELLO:
+                    Toast.makeText(getApplicationContext(), "hello!", Toast.LENGTH_SHORT).show();
+                    break;
+                default:
+                    super.handleMessage(msg);
+            }
+        }
+    }
+
+    /**
+     * Target we publish for clients to send messages to IncomingHandler.
+     */
+    final Messenger mMessenger = new Messenger(new IncomingHandler());
+
+    /**
+     * When binding to the service, we return an interface to our messenger
+     * for sending messages to the service.
+     */
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        Toast.makeText(getApplicationContext(), "binding", Toast.LENGTH_SHORT).show();
+        return mMessenger.getBinder();
+    }
+}
+</pre>
+
+<p>请注意，服务就是在 {@link android.os.Handler}
+的 {@link android.os.Handler#handleMessage handleMessage()} 方法中接收传入的
+{@link android.os.Message}，并根据 {@link android.os.Message#what} 成员决定下一步操作。</p>
+
+<p>客户端只需根据服务返回的 {@link
+android.os.IBinder} 创建一个 {@link android.os.Messenger}，然后利用 {@link
+android.os.Messenger#send send()} 发送一条消息。例如，以下就是一个绑定到服务并向服务传递
+{@code MSG_SAY_HELLO} 消息的简单 Activity：</p>
+
+<pre>
+public class ActivityMessenger extends Activity {
+    /** Messenger for communicating with the service. */
+    Messenger mService = null;
+
+    /** Flag indicating whether we have called bind on the service. */
+    boolean mBound;
+
+    /**
+     * Class for interacting with the main interface of the service.
+     */
+    private ServiceConnection mConnection = new ServiceConnection() {
+        public void onServiceConnected(ComponentName className, IBinder service) {
+            // This is called when the connection with the service has been
+            // established, giving us the object we can use to
+            // interact with the service.  We are communicating with the
+            // service using a Messenger, so here we get a client-side
+            // representation of that from the raw IBinder object.
+            mService = new Messenger(service);
+            mBound = true;
+        }
+
+        public void onServiceDisconnected(ComponentName className) {
+            // This is called when the connection with the service has been
+            // unexpectedly disconnected -- that is, its process crashed.
+            mService = null;
+            mBound = false;
+        }
+    };
+
+    public void sayHello(View v) {
+        if (!mBound) return;
+        // Create and send a message to the service, using a supported 'what' value
+        Message msg = Message.obtain(null, MessengerService.MSG_SAY_HELLO, 0, 0);
+        try {
+            mService.send(msg);
+        } catch (RemoteException e) {
+            e.printStackTrace();
+        }
+    }
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to the service
+        bindService(new Intent(this, MessengerService.class), mConnection,
+            Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+}
+</pre>
+
+<p>请注意，此示例并未说明服务如何对客户端作出响应。如果您想让服务作出响应，则还需要在客户端中创建一个
+{@link android.os.Messenger}。然后，当客户端收到 {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()} 回调时，会向服务发送一条
+{@link android.os.Message}，并在其
+{@link android.os.Messenger#send send()} 方法的 {@link android.os.Message#replyTo}
+参数中包含客户端的 {@link android.os.Messenger}。</p>
+
+<p>如需查看如何提供双向消息传递的示例，请参阅 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerService.html">{@code
+MessengerService.java}</a>（服务）和 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.html">{@code
+MessengerServiceActivities.java}</a>（客户端）示例。</p>
+
+
+
+
+
+<h2 id="Binding">绑定到服务</h2>
+
+<p>应用组件（客户端）可通过调用 {@link android.content.Context#bindService bindService()}
+绑定到服务。Android
+系统随后调用服务的 {@link android.app.Service#onBind
+onBind()} 方法，该方法返回用于与服务交互的 {@link android.os.IBinder}。</p>
+
+<p>绑定是异步的。{@link android.content.Context#bindService
+bindService()} 会立即返回，“绝对不会”<em></em>使 {@link android.os.IBinder}
+返回客户端。要接收 {@link android.os.IBinder}，客户端必须创建一个 {@link
+android.content.ServiceConnection} 实例，并将其传递给 {@link android.content.Context#bindService
+bindService()}。{@link android.content.ServiceConnection} 包括一个回调方法，系统通过调用它来传递
+{@link android.os.IBinder}。</p>
+
+<p class="note"><strong>注：</strong>只有 Activity、服务和内容提供程序可以绑定到服务&mdash;您<strong>无法</strong>从广播接收器绑定到服务。
+</p>
+
+<p>因此，要想从您的客户端绑定到服务，您必须： </p>
+<ol>
+  <li>实现 {@link android.content.ServiceConnection}。
+    <p>您的实现必须重写两个回调方法：</p>
+    <dl>
+      <dt>{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}</dt>
+        <dd>系统会调用该方法以传递服务的　{@link android.app.Service#onBind onBind()}
+方法返回的 {@link android.os.IBinder}。</dd>
+      <dt>{@link android.content.ServiceConnection#onServiceDisconnected
+onServiceDisconnected()}</dt>
+        <dd>Android
+系统会在与服务的连接意外中断时（例如当服务崩溃或被终止时）调用该方法。当客户端取消绑定时，系统“绝对不会”<em></em>调用该方法。
+</dd>
+    </dl>
+  </li>
+  <li>调用 {@link
+android.content.Context#bindService bindService()} 以传递 {@link
+android.content.ServiceConnection} 实现。 </li>
+  <li>当系统调用您的 {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()}
+回调方法时，您可以使用接口定义的方法开始调用服务。</li>
+  <li>要断开与服务的连接，请调用 {@link
+android.content.Context#unbindService unbindService()}。
+    <p>当您的客户端被销毁时，它将取消与服务的绑定，但您应该始终在完成与服务的交互时或您的 Activity 暂停时取消绑定，以便服务能够在未被占用时关闭。
+
+（下文更详细地阐述了绑定和取消绑定的适当时机。）
+</p>
+  </li>
+</ol>
+
+<p>例如，以下代码段通过<a href="#Binder">扩展
+Binder 类</a>将客户端与上面创建的服务相连，因此它只需将返回的 {@link android.os.IBinder}
+转换为 {@code LocalService} 类并请求 {@code
+LocalService} 实例：</p>
+
+<pre>
+LocalService mService;
+private ServiceConnection mConnection = new ServiceConnection() {
+    // Called when the connection with the service is established
+    public void onServiceConnected(ComponentName className, IBinder service) {
+        // Because we have bound to an explicit
+        // service that is running in our own process, we can
+        // cast its IBinder to a concrete class and directly access it.
+        LocalBinder binder = (LocalBinder) service;
+        mService = binder.getService();
+        mBound = true;
+    }
+
+    // Called when the connection with the service disconnects unexpectedly
+    public void onServiceDisconnected(ComponentName className) {
+        Log.e(TAG, "onServiceDisconnected");
+        mBound = false;
+    }
+};
+</pre>
+
+<p>客户端可通过将此 {@link android.content.ServiceConnection} 传递至 {@link android.content.Context#bindService bindService()}
+绑定到服务。例如：</p>
+
+<pre>
+Intent intent = new Intent(this, LocalService.class);
+bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+</pre>
+
+<ul>
+  <li>{@link android.content.Context#bindService bindService()}
+的第一个参数是一个
+{@link android.content.Intent}，用于显式命名要绑定的服务（但 Intent 可能是隐式的）</li>
+<li>第二个参数是 {@link android.content.ServiceConnection} 对象</li>
+<li>第三个参数是一个指示绑定选项的标志。它通常应该是 {@link
+android.content.Context#BIND_AUTO_CREATE}，以便创建尚未激活的服务。
+其他可能的值为 {@link android.content.Context#BIND_DEBUG_UNBIND}
+和 {@link android.content.Context#BIND_NOT_FOREGROUND}，或 {@code 0}（表示无）。</li>
+</ul>
+
+
+<h3>附加说明</h3>
+
+<p>以下是一些有关绑定到服务的重要说明：</p>
+<ul>
+  <li>您应该始终捕获
+{@link android.os.DeadObjectException} 异常，它们是在连接中断时引发的。这是远程方法引发的唯一异常</li>
+  <li>对象是跨进程计数的引用 </li>
+  <li>您通常应该在客户端生命周期的匹配引入 (bring-up) 和退出 (tear-down) 时刻期间配对绑定和取消绑定。
+例如：
+    <ul>
+      <li>如果您只需要在 Activity 可见时与服务交互，则应在 {@link android.app.Activity#onStart onStart()}
+期间绑定，在 {@link
+android.app.Activity#onStop onStop()} 期间取消绑定。</li>
+      <li>如果您希望 Activity 在后台停止运行状态下仍可接收响应，则可在
+{@link android.app.Activity#onCreate onCreate()} 期间绑定，在 {@link android.app.Activity#onDestroy onDestroy()}
+期间取消绑定。请注意，这意味着您的 Activity 在其整个运行过程中（甚至包括后台运行期间）都需要使用服务，因此如果服务位于其他进程内，那么当您提高该进程的权重时，系统终止该进程的可能性会增加
+
+
+</li>
+    </ul>
+    <p class="note"><strong>注：</strong>通常情况下，<strong>切勿</strong>在 Activity 的 {@link android.app.Activity#onResume onResume()}
+和 {@link
+android.app.Activity#onPause onPause()}
+期间绑定和取消绑定，因为每一次生命周期转换都会发生这些回调，您应该使发生在这些转换期间的处理保持在最低水平。此外，如果您的应用内的多个 Activity 绑定到同一服务，并且其中两个 Activity 之间发生了转换，则如果当前 Activity 在下一次绑定（恢复期间）之前取消绑定（暂停期间），系统可能会销毁服务并重建服务。
+
+
+（<a href="{@docRoot}guide/components/activities.html#CoordinatingActivities">Activity</a>文档中介绍了这种有关 Activity 如何协调其生命周期的 Activity 转换。）
+
+</p>
+</ul>
+
+<p>如需查看更多显示如何绑定到服务的示例代码，请参阅 <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a> 中的 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+RemoteService.java}</a> 类。</p>
+
+
+
+
+
+<h2 id="Lifecycle">管理绑定服务的生命周期</h2>
+
+<p>当服务与所有客户端之间的绑定全部取消时，Android
+系统便会销毁服务（除非还使用 {@link android.app.Service#onStartCommand onStartCommand()} 启动了该服务）。因此，如果您的服务是纯粹的绑定服务，则无需对其生命周期进行管理&mdash;Android
+系统会根据它是否绑定到任何客户端代您管理。
+</p>
+
+<p>不过，如果您选择实现 {@link android.app.Service#onStartCommand
+onStartCommand()}
+回调方法，则您必须显式停止服务，因为系统现在已将服务视为<em>已启动</em>。在此情况下，服务将一直运行到其通过 {@link android.app.Service#stopSelf()}
+自行停止，或其他组件调用 {@link
+android.content.Context#stopService stopService()}
+为止，无论其是否绑定到任何客户端。</p>
+
+<p>此外，如果您的服务已启动并接受绑定，则当系统调用您的 {@link android.app.Service#onUnbind onUnbind()} 方法时，如果您想在客户端下一次绑定到服务时接收 
+{@link android.app.Service#onRebind
+onRebind()} 调用（而不是接收 {@link
+android.app.Service#onBind onBind()} 调用），则可选择返回
+{@code true}。{@link android.app.Service#onRebind
+onRebind()} 返回空值，但客户端仍在其 {@link android.content.ServiceConnection#onServiceConnected onServiceConnected()} 回调中接收
+{@link android.os.IBinder}。下文图 1
+说明了这种生命周期的逻辑。</p>
+
+
+<img src="{@docRoot}images/fundamentals/service_binding_tree_lifecycle.png" alt="" />
+<p class="img-caption"><strong>图 1.  </strong>允许绑定的已启动服务的生命周期。
+</p>
+
+
+<p>如需了解有关已启动服务生命周期的详细信息，请参阅<a href="{@docRoot}guide/components/services.html#Lifecycle">服务</a>文档。</p>
+
+
+
+
diff --git a/docs/html-intl/intl/zh-cn/guide/components/fragments.jd b/docs/html-intl/intl/zh-cn/guide/components/fragments.jd
new file mode 100644
index 0000000..a4c2cbb
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/fragments.jd
@@ -0,0 +1,812 @@
+page.title=片段
+parent.title=Activity
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本文内容</h2>
+  <ol>
+    <li><a href="#Design">设计原理</a></li>
+    <li><a href="#Creating">创建片段
+      <ol>
+        <li><a href="#UI">添加用户界面</a></li>
+        <li><a href="#Adding">向 Activity 添加片段</a></li>
+      </ol>
+    </li>
+    <li><a href="#Managing">管理片段</a></li>
+    <li><a href="#Transactions">执行片段事务</a></li>
+    <li><a href="#CommunicatingWithActivity">与 Activity 通信</a>
+      <ol>
+        <li><a href="#EventCallbacks">创建对 Activity 的事件回调</a></li>
+        <li><a href="#ActionBar">向操作栏添加项目</a></li>
+      </ol>
+    </li>
+    <li><a href="#Lifecycle">处理片段生命周期</a>
+      <ol>
+        <li><a href="#CoordinatingWithActivity">与 Activity 生命周期协调一致</a></li>
+      </ol>
+    </li>
+    <li><a href="#Example">示例</a></li>
+  </ol>
+
+  <h2>关键类</h2>
+  <ol>
+    <li>{@link android.app.Fragment}</li>
+    <li>{@link android.app.FragmentManager}</li>
+    <li>{@link android.app.FragmentTransaction}</li>
+  </ol>
+  
+  <h2>另请参阅</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/fragments/index.html">利用片段构建动态 UI</a></li>
+    <li><a href="{@docRoot}guide/practices/tablets-and-handsets.html">支持平板电脑和手机</a>
+</li>
+  </ol>
+</div>
+</div>
+
+<p>{@link android.app.Fragment} 表示
+{@link android.app.Activity} 中的行为或用户界面部分。您可以将多个片段组合在一个 Activity 中来构建多窗格
+UI，以及在多个 Activity 中重复使用某个片段。您可以将片段视为 Activity 的模块化组成部分，它具有自己的生命周期，能接收自己的输入事件，并且您可以在 Activity 运行时添加或删除片段（有点像您可以在不同 Activity 中重复使用的“子 Activity”）。
+
+
+</p>
+
+<p>片段必须始终嵌入在 Activity 中，其生命周期直接受宿主 Activity 生命周期的影响。
+例如，当 Activity 暂停时，其中的所有片段也会暂停；当 Activity 被销毁时，所有片段也会被销毁。
+不过，当 Activity 正在运行（处于<em>已恢复</em><a href="{@docRoot}guide/components/activities.html#Lifecycle">生命周期状态</a>）时，您可以独立操纵每个片段，如添加或移除它们。
+
+当您执行此类片段事务时，您也可以将其添加到由 Activity 管理的返回栈&mdash;Activity 中的每个返回栈条目都是一条已发生片段事务的记录。
+
+
+返回栈让用户可以通过按“返回”<em></em>按钮撤消片段事务（后退）。
+</p>
+
+<p>当您将片段作为 Activity 布局的一部分添加时，它存在于 Activity 视图层次结构的某个 {@link
+android.view.ViewGroup}
+内部，并且片段会定义其自己的视图布局。您可以通过在 Activity 的布局文件中声明片段，将其作为
+{@code &lt;fragment&gt;}
+元素插入您的 Activity 布局中，或者通过将其添加到某个现有
+{@link android.view.ViewGroup}，利用应用代码进行插入。不过，片段并非必须成为 Activity 布局的一部分；您还可以将没有自己
+UI
+的片段用作 Activity 的不可见工作线程。</p>
+
+<p>本文描述如何在开发您的应用时使用片段，包括将片段添加到 Activity 返回栈时如何保持其状态、如何与 Activity 及 Activity 中的其他片段共享事件、如何为 Activity 的操作栏发挥作用等等。
+
+
+</p>
+
+
+<h2 id="Design">设计原理</h2>
+
+<p>Android 在 Android 3.0（API 11 级）中引入了片段，主要是为了给大屏幕（如平板电脑）上更加动态和灵活的 UI
+设计提供支持。由于平板电脑的屏幕比手机屏幕大得多，因此可用于组合和交换
+UI
+组件的空间更大。利用片段实现此类设计时，您无需管理对视图层次结构的复杂更改。
+通过将 Activity 布局分成片段，您可以在运行时修改 Activity 的外观，并在由 Activity 管理的返回栈中保留这些更改。
+
+</p>
+
+<p>例如，新闻应用可以使用一个片段在左侧显示文章列表，使用另一个片段在右侧显示文章&mdash;两个片段并排显示在一个 Activity 中，每个片段都具有自己的一套生命周期回调方法，并各自处理自己的用户输入事件。
+
+
+因此，用户不需要使用一个 Activity 来选择文章，然后使用另一个 Activity 来阅读文章，而是可以在同一个 Activity 内选择文章并进行阅读，如图
+1
+中的平板电脑布局所示。</p>
+
+<p>您应该将每个片段都设计为可重复使用的模块化 Activity 组件。也就是说，由于每个片段都会通过各自的生命周期回调来定义其自己的布局和行为，您可以将一个片段加入多个 Activity，因此，您应该采用可复用式设计，避免直接从某个片段直接操纵另一个片段。
+
+
+这特别重要，因为模块化片段让您可以通过更改片段的组合方式来适应不同的屏幕尺寸。
+在设计可同时支持平板电脑和手机的应用时，您可以在不同的布局配置中重复使用您的片段，以根据可用的屏幕空间优化用户体验。
+
+例如，在手机上，如果不能在同一 Activity 内储存多个片段，可能必须利用单独片段来实现单窗格
+UI。
+</p>
+
+<img src="{@docRoot}images/fundamentals/fragments.png" alt="" />
+<p class="img-caption"><strong>图 1. </strong>有关由片段定义的两个
+UI
+模块如何适应不同设计的示例：通过组合成一个 Activity 来适应平板电脑设计，通过单独片段来适应手机设计。</p>
+
+<p>例如&mdash;仍然以新闻应用为例&mdash;在平板电脑尺寸的设备上运行时，该应用可以在<em>Activity
+A</em> 中嵌入两个片段。不过，在手机尺寸的屏幕上，没有足以储存两个片段的空间，因此<em>Activity
+A</em>
+只包括用于显示文章列表的片段，当用户选择文章时，它会启动<em>Activity
+B</em>，其中包括用于阅读文章的第二个片段。因此，应用可通过重复使用不同组合的片段来同时支持平板电脑和手机，如图
+1
+所示。</p>
+
+<p>如需了解有关通过利用不同片段组合来适应不同屏幕配置这种方法设计应用的详细信息，请参阅<a href="{@docRoot}guide/practices/tablets-and-handsets.html">支持平板电脑和手机</a>指南。
+</p>
+
+
+
+<h2 id="Creating">创建片段</h2>
+
+<div class="figure" style="width:327px">
+<img src="{@docRoot}images/fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>图 2. </strong>片段的生命周期（其 Activity 运行时）。
+</p>
+</div>
+
+<p>要想创建片段，您必须创建 {@link android.app.Fragment}
+的子类（或已有其子类）。{@link android.app.Fragment} 类的代码与
+{@link android.app.Activity} 非常相似。它包含与 Activity 类似的回调方法，如
+{@link android.app.Fragment#onCreate onCreate()}、{@link android.app.Fragment#onStart onStart()}、{@link android.app.Fragment#onPause onPause()}
+和 {@link android.app.Fragment#onStop onStop()}。实际上，如果您要将现有
+Android
+应用转换为使用片段，可能只需将代码从 Activity 的回调方法移入片段相应的回调方法中。
+</p>
+
+<p>通常，您至少应实现以下生命周期方法：</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onCreate onCreate()}</dt>
+  <dd>系统会在创建片段时调用此方法。您应该在实现内初始化您想在片段暂停或停止后恢复时保留的必需片段组件。
+
+</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+  <dd>系统会在片段首次绘制其用户界面时调用此方法。
+要想为您的片段绘制
+UI，您从此方法中返回的 {@link android.view.View} 必须是片段布局的根视图。如果片段未提供
+UI，您可以返回 null。</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>系统将此方法作为用户离开片段的第一个信号（但并不总是意味着此片段会被销毁）进行调用。
+您通常应该在此方法内确认在当前用户会话结束后仍然有效的任何更改（因为用户可能不会返回）。
+
+</dd>
+</dl>
+
+<p>大多数应用都应该至少为每个片段实现这三个方法，但您还应该使用几种其他回调方法来处理片段生命周期的各个阶段。
+
+<a href="#Lifecycle">处理片段生命周期</a>部分对所有生命周期回调方法做了更详尽的阐述。
+</p>
+
+
+<p>您可能还想扩展几个子类，而不是 {@link
+android.app.Fragment} 基类：</p>
+
+<dl>
+  <dt>{@link android.app.DialogFragment}</dt>
+  <dd>显示浮动对话框。使用此类创建对话框可有效地替代使用
+{@link android.app.Activity}
+类中的对话框帮助程序方法，因为您可以将片段对话框纳入由 Activity 管理的片段返回栈，从而使用户能够返回清除的片段。
+</dd>
+
+  <dt>{@link android.app.ListFragment}</dt>
+  <dd>显示由适配器（如 {@link
+android.widget.SimpleCursorAdapter}）管理的一系列项目，类似于 {@link android.app.ListActivity}。它提供了几种管理列表视图的方法，如用于处理点击事件的
+{@link
+android.app.ListFragment#onListItemClick(ListView,View,int,long) onListItemClick()}
+回调。</dd>
+
+  <dt>{@link android.preference.PreferenceFragment}</dt>
+  <dd>以列表形式显示 {@link android.preference.Preference} 对象的层次结构，类似于
+{@link android.preference.PreferenceActivity}。这在为您的应用创建“设置” Activity 时很有用处。
+</dd>
+</dl>
+
+
+<h3 id="UI">添加用户界面</h3>
+
+<p>片段通常用作 Activity 用户界面的一部分，将其自己的布局融入 Activity。
+</p>
+
+<p>要想为片段提供布局，您必须实现 {@link
+android.app.Fragment#onCreateView onCreateView()} 回调方法，Android
+系统会在片段需要绘制其布局时调用该方法。您对此方法的实现返回的
+{@link android.view.View} 必须是片段布局的根视图。</p>
+
+<p class="note"><strong>注：</strong>如果您的片段是 {@link
+android.app.ListFragment} 的子类，则默认实现会从
+{@link android.app.Fragment#onCreateView onCreateView()} 返回一个 {@link android.widget.ListView}，因此您无需实现它。</p>
+
+<p>要想从 {@link
+android.app.Fragment#onCreateView onCreateView()} 返回布局，您可以通过 XML 中定义的<a href="{@docRoot}guide/topics/resources/layout-resource.html">布局资源</a>来扩展布局。为帮助您执行此操作，{@link android.app.Fragment#onCreateView onCreateView()}
+提供了一个
+{@link android.view.LayoutInflater} 对象。</p>
+
+<p>例如，以下这个 {@link android.app.Fragment} 子类从 {@code example_fragment.xml}
+文件加载布局：</p>
+
+<pre>
+public static class ExampleFragment extends Fragment {
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+                             Bundle savedInstanceState) {
+        // Inflate the layout for this fragment
+        return inflater.inflate(R.layout.example_fragment, container, false);
+    }
+}
+</pre>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>创建布局</h3>
+  <p>在上例中，{@code R.layout.example_fragment} 是对应用资源中保存的名为
+{@code example_fragment.xml} 的布局资源的引用。如需了解有关如何在
+XML
+中创建布局的信息，请参阅<a href="{@docRoot}guide/topics/ui/index.html">用户界面</a>文档。</p>
+</div>
+</div>
+
+<p>传递至 {@link android.app.Fragment#onCreateView
+onCreateView()} 的 {@code container}
+参数是您的片段布局将插入到的父
+{@link android.view.ViewGroup}（来自 Activity 的布局）。{@code savedInstanceState}
+参数是在恢复片段时，提供上一片段实例相关数据的
+{@link android.os.Bundle}（<a href="#Lifecycle">处理片段生命周期</a>部分对恢复状态做了详细阐述）。
+</p>
+
+<p>{@link android.view.LayoutInflater#inflate(int,ViewGroup,boolean) inflate()}
+方法带有三个参数：</p>
+<ul>
+  <li>您想要扩展的布局的资源 ID；</li>
+  <li>将作为扩展布局父项的 {@link android.view.ViewGroup}。传递 {@code
+container}
+对系统向扩展布局的根视图（由其所属的父视图指定）应用布局参数具有重要意义；</li>
+  <li>指示是否应该在扩展期间将扩展布局附加至 {@link
+android.view.ViewGroup}（第二个参数）的布尔值。（在本例中，其值为
+false，因为系统已经将扩展布局插入 {@code
+container}&mdash;传递 true 值会在最终布局中创建一个多余的视图组。）</li>
+</ul>
+
+<p>现在，您已经了解了如何创建提供布局的片段。接下来，您需要将该片段添加到您的 Activity 中。
+</p>
+
+
+
+<h3 id="Adding">向 Activity 添加片段</h3>
+
+<p>通常，片段向宿主 Activity 贡献一部分
+UI，作为 Activity 总体视图层次结构的一部分嵌入到 Activity 中。可以通过两种方式向 Activity 布局添加片段：
+</p>
+
+<ul>
+  <li><b>在 Activity 的布局文件内声明片段</b>
+<p>在本例中，您可以将片段当作视图来为其指定布局属性。
+例如，以下是一个具有两个片段的 Activity 的布局文件：
+</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
+    &lt;fragment android:name="com.example.news.ArticleListFragment"
+            android:id="@+id/list"
+            android:layout_weight="1"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+    &lt;fragment android:name="com.example.news.ArticleReaderFragment"
+            android:id="@+id/viewer"
+            android:layout_weight="2"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+&lt;/LinearLayout&gt;
+</pre>
+  <p>{@code &lt;fragment&gt;} 中的 {@code android:name} 属性指定要在布局中实例化的 {@link
+android.app.Fragment} 类。</p>
+
+<p>当系统创建此 Activity 布局时，会实例化在布局中指定的每个片段，并为每个片段调用
+{@link android.app.Fragment#onCreateView onCreateView()}
+方法，以检索每个片段的布局。系统会直接插入片段返回的 {@link android.view.View} 来替代
+{@code &lt;fragment&gt;} 元素。</p>
+
+<div class="note">
+  <p><strong>注：</strong>每个片段都需要一个唯一的标识符，重启 Activity 时，系统可以使用该标识符来恢复片段（您也可以使用该标识符来捕获片段以执行某些事务，如将其删除）。
+
+可以通过三种方式为片段提供
+ID：</p>
+  <ul>
+    <li>为 {@code android:id} 属性提供唯一 ID</li>
+    <li>为 {@code android:tag} 属性提供唯一字符串</li>
+    <li>如果您未给以上两个属性提供值，系统会使用容器视图的 ID
+</li>
+  </ul>
+</div>
+  </li>
+
+  <li><b>或者通过编程方式将片段添加到某个现有 {@link android.view.ViewGroup}</b>
+<p>您可以在 Activity 运行期间随时将片段添加到 Activity 布局中。您只需指定要将片段放入哪个
+{@link
+android.view.ViewGroup}。</p>
+  <p>要想在您的 Activity 中执行片段事务（如添加、删除或替换片段），您必须使用
+{@link android.app.FragmentTransaction} 中的 API。您可以像下面这样从
+{@link android.app.Activity} 获取一个 {@link android.app.FragmentTransaction} 实例：</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()}
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>然后，您可以使用 {@link
+android.app.FragmentTransaction#add(int,Fragment) add()}
+方法添加一个片段，指定要添加的片段以及将其插入哪个视图。例如：</p>
+
+<pre>
+ExampleFragment fragment = new ExampleFragment();
+fragmentTransaction.add(R.id.fragment_container, fragment);
+fragmentTransaction.commit();
+</pre>
+
+  <p>传递到 {@link android.app.FragmentTransaction#add(int,Fragment) add()}
+的第一个参数是 {@link android.view.ViewGroup}，即应该放置片段的位置，由资源
+ID 指定，第二个参数是要添加的片段。</p>
+  <p>一旦您通过
+{@link android.app.FragmentTransaction} 做出了更改，就必须调用
+{@link android.app.FragmentTransaction#commit} 以使更改生效。</p>
+  </li>
+</ul>
+
+
+<h4 id="AddingWithoutUI">添加没有 UI 的片段</h4>
+
+<p>上例展示了如何向您的 Activity 添加片段以提供
+UI。不过，您还可以使用片段为 Activity 提供后台行为，而不显示额外
+UI。</p>
+
+<p>要想添加没有 UI 的片段，请使用 {@link
+android.app.FragmentTransaction#add(Fragment,String)} 从 Activity 添加片段（为片段提供一个唯一的字符串“标记”，而不是视图
+ID）。这会添加片段，但由于它并不与 Activity 布局中的视图关联，因此不会收到对
+{@link
+android.app.Fragment#onCreateView onCreateView()} 的调用。因此，您不需要实现该方法。</p>
+
+<p>并非只能为非 UI 片段提供字符串标记&mdash;您也可以为具有 UI
+的片段提供字符串标记&mdash;但如果片段没有
+UI，则字符串标记将是标识它的唯一方式。如果您想稍后从 Activity 中获取片段，则需要使用
+{@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}。</p>
+
+<p>如需查看将没有 UI 的片段用作后台工作线程的示例 Activity，请参阅 {@code
+FragmentRetainInstance.java} 示例，该示例包括在 SDK 示例（通过
+Android SDK 管理器提供）中，以 
+<code>&lt;sdk_root&gt;/APIDemos/app/src/main/java/com/example/android/apis/app/FragmentRetainInstance.java</code> 形式位于您的系统中。</p>
+
+
+
+<h2 id="Managing">管理片段</h2>
+
+<p>要想管理您的 Activity 中的片段，您需要使用 {@link android.app.FragmentManager}。要想获取它，请从您的 Activity 调用
+{@link android.app.Activity#getFragmentManager()}。</p>
+
+<p>您可以使用 {@link android.app.FragmentManager} 执行的操作包括：</p>
+
+<ul>
+  <li>通过 {@link
+android.app.FragmentManager#findFragmentById findFragmentById()}（对于在 Activity 布局中提供 UI
+的片段）或 {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}（对于提供或不提供 UI 的片段）获取 Activity 中存在的片段</li> 
+  <li>通过 {@link
+android.app.FragmentManager#popBackStack()}（模拟用户发出的 <em>Back</em> 命令）将片段从返回栈中弹出</li>
+  <li>通过 {@link
+android.app.FragmentManager#addOnBackStackChangedListener addOnBackStackChangedListener()} 注册一个侦听返回栈变化的侦听器</li>
+</ul>
+
+<p>如需了解有关这些方法以及其他方法的详细信息，请参阅 {@link
+android.app.FragmentManager} 类文档。</p>
+
+<p>如上文所示，您也可以使用 {@link android.app.FragmentManager}
+打开一个
+{@link android.app.FragmentTransaction}，通过它来执行某些事务，如添加和删除片段。</p>
+
+
+<h2 id="Transactions">执行片段事务</h2>
+
+<p>在 Activity 中使用片段的一大优点是，可以根据用户行为通过它们执行添加、删除、替换以及其他操作。
+您提交给 Activity 的每组更改都称为事务，您可以使用
+{@link
+android.app.FragmentTransaction} 中的 API 来执行一项事务。您也可以将每个事务保存到由 Activity 管理的返回栈内，从而让用户能够回退片段更改（类似于回退 Activity）。
+
+</p>
+
+<p>您可以像下面这样从 {@link
+android.app.FragmentManager} 获取一个 {@link android.app.FragmentTransaction} 实例：</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()};
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>每个事务都是您想要同时执行的一组更改。您可以使用
+{@link
+android.app.FragmentTransaction#add add()}、{@link android.app.FragmentTransaction#remove remove()} 和 {@link android.app.FragmentTransaction#replace replace()}
+等方法为给定事务设置您想要执行的所有更改。然后，要想将事务应用到 Activity，您必须调用
+{@link android.app.FragmentTransaction#commit()}。</p>
+</dl>
+
+<p>不过，在您调用 {@link
+android.app.FragmentTransaction#commit()} 之前，您可能想调用 {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}，以将事务添加到片段事务返回栈。
+该返回栈由 Activity 管理，允许用户通过按“返回”
+<em></em> 按钮返回上一片段状态。</p>
+
+<p>例如，以下示例说明了如何将一个片段替换成另一个片段，以及如何在返回栈中保留先前状态：
+</p>
+
+<pre>
+// Create new fragment and transaction
+Fragment newFragment = new ExampleFragment();
+FragmentTransaction transaction = getFragmentManager().beginTransaction();
+
+// Replace whatever is in the fragment_container view with this fragment,
+// and add the transaction to the back stack
+transaction.replace(R.id.fragment_container, newFragment);
+transaction.addToBackStack(null);
+
+// Commit the transaction
+transaction.commit();
+</pre>
+
+<p>在上例中，{@code newFragment}
+会替换目前在 {@code R.id.fragment_container} ID 所标识的布局容器中的任何片段（如有）。通过调用 {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}
+可将替换事务保存到返回栈，以便用户能够通过按“返回”
+<em></em>按钮撤消事务并回退到上一片段。</p>
+
+<p>如果您向事务添加了多个更改（如又一个 {@link
+android.app.FragmentTransaction#add add()} 或 {@link android.app.FragmentTransaction#remove
+remove()}），并且调用了 {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}，则在调用
+{@link android.app.FragmentTransaction#commit commit()} 前应用的所有更改都将作为单一事务添加到返回栈，并且“返回”
+<em></em>按钮会将它们一并撤消。</p>
+
+<p>向 {@link android.app.FragmentTransaction}
+添加更改的顺序无关紧要，不过：</p>
+<ul>
+  <li>您必须最后调用 {@link android.app.FragmentTransaction#commit()}</li>
+  <li>如果您要向同一容器添加多个片段，则您添加片段的顺序将决定它们在视图层次结构中的出现顺序
+</li>
+</ul>
+
+<p>如果您没有在执行删除片段的事务时调用 {@link android.app.FragmentTransaction#addToBackStack(String)
+addToBackStack()}，则事务提交时该片段会被销毁，用户将无法回退到该片段。
+不过，如果您在删除片段时调用了
+{@link android.app.FragmentTransaction#addToBackStack(String) addToBackStack()}，则系统会<em>停止</em>该片段，并在用户回退时将其恢复。
+
+</p>
+
+<p class="note"><strong>提示</strong>：对于每个片段事务，您都可以通过在提交前调用
+{@link android.app.FragmentTransaction#setTransition setTransition()}
+来应用过渡动画。</p>
+
+<p>调用 {@link android.app.FragmentTransaction#commit()}
+不会立即执行事务，而是在 Activity 的 UI
+线程（“主”线程）可以执行该操作时再安排其在线程上运行。不过，如有必要，您也可以从 UI 线程调用 {@link
+android.app.FragmentManager#executePendingTransactions()} 以立即执行
+{@link android.app.FragmentTransaction#commit()} 提交的事务。通常不必这样做，除非其他线程中的作业依赖该事务。
+</p>
+
+<p class="caution"><strong>注意：</strong>您只能在 Activity<a href="{@docRoot}guide/components/activities.html#SavingActivityState">保存其状态</a>（用户离开 Activity）之前使用 {@link
+android.app.FragmentTransaction#commit commit()}
+提交事务。如果您试图在该时间点后提交，则会引发异常。
+这是因为如需恢复 Activity，则提交后的状态可能会丢失。
+对于丢失提交无关紧要的情况，请使用 {@link
+android.app.FragmentTransaction#commitAllowingStateLoss()}。</p>
+
+
+
+
+<h2 id="CommunicatingWithActivity">与 Activity 通信</h2>
+
+<p>尽管 {@link android.app.Fragment} 是作为独立于
+{@link android.app.Activity}
+的对象实现，并且可在多个 Activity 内使用，但片段的给定实例会直接绑定到包含它的 Activity。</p>
+
+<p>具体地说，片段可以通过 {@link
+android.app.Fragment#getActivity()}
+访问 {@link android.app.Activity} 实例，并轻松地执行在 Activity 布局中查找视图等任务。</p>
+
+<pre>
+View listView = {@link android.app.Fragment#getActivity()}.{@link android.app.Activity#findViewById findViewById}(R.id.list);
+</pre>
+
+<p>同样地，您的 Activity 也可以使用
+{@link
+android.app.FragmentManager#findFragmentById findFragmentById()} 或 {@link
+android.app.FragmentManager#findFragmentByTag findFragmentByTag()}，通过从 {@link android.app.FragmentManager} 获取对 {@link android.app.Fragment} 的引用来调用片段中的方法。例如：</p>
+
+<pre>
+ExampleFragment fragment = (ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment);
+</pre>
+
+
+<h3 id="EventCallbacks">创建对 Activity 的事件回调</h3>
+
+<p>在某些情况下，您可能需要通过片段与 Activity 共享事件。执行此操作的一个好方法是，在片段内定义一个回调接口，并要求宿主 Activity 实现它。
+
+当 Activity 通过该接口收到回调时，可以根据需要与布局中的其他片段共享这些信息。
+</p>
+
+<p>例如，如果一个新闻应用的 Activity 有两个片段 &mdash;一个用于显示文章列表（片段 A），另一个用于显示文章（片段 B）&mdash;，那么片段 A必须在列表项被选定后告知 Activity，以便它告知片段 B 显示该文章。
+
+在本例中，{@code OnArticleSelectedListener}
+接口在片段 A 内声明：</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    ...
+    // Container Activity must implement this interface
+    public interface OnArticleSelectedListener {
+        public void onArticleSelected(Uri articleUri);
+    }
+    ...
+}
+</pre>
+
+<p>然后，该片段的宿主 Activity 会实现
+{@code OnArticleSelectedListener}
+接口并替代 {@code onArticleSelected()}，将来自片段 A
+的事件通知片段 B。为确保宿主 Activity 实现此界面，片段 A 的 {@link
+android.app.Fragment#onAttach onAttach()}
+回调方法（系统在向 Activity 添加片段时调用的方法）会通过转换传递到
+{@link android.app.Fragment#onAttach
+onAttach()} 中的 {@link android.app.Activity} 来实例化 {@code OnArticleSelectedListener} 的实例：</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        try {
+            mListener = (OnArticleSelectedListener) activity;
+        } catch (ClassCastException e) {
+            throw new ClassCastException(activity.toString() + " must implement OnArticleSelectedListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>如果 Activity 未实现界面，则片段会引发
+{@link java.lang.ClassCastException}。实现时，{@code mListener}
+成员会保留对 Activity 的 {@code OnArticleSelectedListener} 实现的引用，以便片段 A 可以通过调用
+{@code OnArticleSelectedListener}
+界面定义的方法与 Activity 共享事件。例如，如果片段 A 是
+{@link android.app.ListFragment}
+的一个扩展，则用户每次点击列表项时，系统都会调用片段中的 {@link android.app.ListFragment#onListItemClick
+onListItemClick()}，然后该方法会调用 {@code onArticleSelected()}
+以与 Activity 共享事件：</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onListItemClick(ListView l, View v, int position, long id) {
+        // Append the clicked item's row ID with the content provider Uri
+        Uri noteUri = ContentUris.{@link android.content.ContentUris#withAppendedId withAppendedId}(ArticleColumns.CONTENT_URI, id);
+        // Send the event and Uri to the host activity
+        mListener.onArticleSelected(noteUri);
+    }
+    ...
+}
+</pre>
+
+<p>传递到 {@link
+android.app.ListFragment#onListItemClick onListItemClick()} 的 {@code id} 参数是被点击项的行
+ID，即 Activity（或其他片段）用来从应用的 {@link
+android.content.ContentProvider} 获取文章的 ID。</p>
+
+<p><!--To see a complete implementation of this kind of callback interface, see the <a
+href="{@docRoot}resources/samples/NotePad/index.html">NotePad sample</a>. --><a href="{@docRoot}guide/topics/providers/content-providers.html">内容提供程序</a>文档中提供了有关内容提供程序用法的更多详情。
+</p>
+
+
+
+<h3 id="ActionBar">向操作栏添加项目</h3>
+
+<p>您的片段可以通过实现
+{@link android.app.Fragment#onCreateOptionsMenu(Menu,MenuInflater) onCreateOptionsMenu()} 向 Activity 的<a href="{@docRoot}guide/topics/ui/menus.html#options-menu">选项菜单</a>（并因此向<a href="{@docRoot}guide/topics/ui/actionbar.html">操作栏</a>）贡献菜单项。不过，为了使此方法能够收到调用，您必须在
+{@link
+android.app.Fragment#onCreate(Bundle) onCreate()} 期间调用 {@link
+android.app.Fragment#setHasOptionsMenu(boolean) setHasOptionsMenu()}，以指示片段想要向选项菜单添加菜单项（否则，片段将不会收到对
+{@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()}
+的调用）。</p>
+
+<p>您之后从片段添加到选项菜单的任何菜单项都将追加到现有菜单项之后。
+选定菜单项时，片段还会收到对 {@link
+android.app.Fragment#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}
+的回调。</p>
+
+<p>您还可以通过调用 {@link
+android.app.Fragment#registerForContextMenu(View) registerForContextMenu()}，在片段布局中注册一个视图来提供上下文菜单。用户打开上下文菜单时，片段会收到对
+{@link
+android.app.Fragment#onCreateContextMenu(ContextMenu,View,ContextMenu.ContextMenuInfo)
+onCreateContextMenu()} 的调用。当用户选择某个菜单项时，片段会收到对 {@link
+android.app.Fragment#onContextItemSelected(MenuItem) onContextItemSelected()} 的调用。</p>
+
+<p class="note"><strong>注：</strong>尽管您的片段会收到与其添加的每个菜单项对应的菜单项选定回调，但当用户选择菜单项时，Activity 会首先收到相应的回调。
+
+如果 Activity 对菜单项选定回调的实现不会处理选定的菜单项，则系统会将事件传递到片段的回调。
+这适用于选项菜单和上下文菜单。
+</p>
+
+<p>如需了解有关菜单的详细信息，请参阅<a href="{@docRoot}guide/topics/ui/menus.html">菜单</a>和<a href="{@docRoot}guide/topics/ui/actionbar.html">操作栏</a>开发者指南。</p>
+
+
+
+
+<h2 id="Lifecycle">处理片段生命周期</h2>
+
+<div class="figure" style="width:350px">
+<img src="{@docRoot}images/activity_fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>图 3. </strong>Activity 生命周期对片段生命周期的影响。
+</p>
+</div>
+
+<p>管理片段生命周期与管理 Activity 生命周期很相似。和 Activity 一样，片段也以三种状态存在：
+</p>
+
+<dl>
+  <dt><i>恢复</i></dt>
+    <dd>片段在运行中的 Activity 中可见。</dd>
+
+  <dt><i>暂停</i></dt>
+    <dd>另一个 Activity 位于前台并具有焦点，但此片段所在的 Activity 仍然可见（前台 Activity 部分透明，或未覆盖整个屏幕）。
+
+</dd>
+
+  <dt><i>停止</i></dt>
+    <dd>片段不可见。宿主 Activity 已停止，或片段已从 Activity 中删除，但已添加到返回栈。
+停止片段仍然处于活动状态（系统会保留所有状态和成员信息）。
+不过，它对用户不再可见，如果 Activity 被终止，它也会被终止。
+</dd>
+</dl>
+
+<p>同样与 Activity 一样，假使 Activity 的进程被终止，而您需要在重建 Activity 时恢复片段状态，您也可以使用 {@link
+android.os.Bundle}
+保留片段的状态。您可以在片段的 {@link
+android.app.Fragment#onSaveInstanceState onSaveInstanceState()} 回调期间保存状态，并可在
+{@link android.app.Fragment#onCreate onCreate()}、{@link
+android.app.Fragment#onCreateView onCreateView()} 或 {@link
+android.app.Fragment#onActivityCreated onActivityCreated()} 期间恢复状态。如需了解有关保存状态的详细信息，请参阅<a href="{@docRoot}guide/components/activities.html#SavingActivityState">Activity</a>文档。
+
+</p>
+
+<p>Activity 生命周期与片段生命周期之间的最显著差异在于它们在其各自返回栈中的存储方式。
+默认情况下，Activity 停止时会被放入由系统管理的 Activity 返回栈（以便用户通过“返回”
+<em></em>
+按钮回退到Activity，<a href="{@docRoot}guide/components/tasks-and-back-stack.html">任务和返回栈</a>对此做了阐述）。不过，仅当您在删除片段的事务执行期间通过调用
+{@link
+android.app.FragmentTransaction#addToBackStack(String) addToBackStack()}
+显式请求保存实例时，系统才会将片段放入由宿主 Activity 管理的返回栈。
+</p>
+
+<p>在其他方面，管理片段生命周期与管理 Activity 生命周期非常相似。
+因此，<a href="{@docRoot}guide/components/activities.html#Lifecycle">管理 Activity 生命周期</a>的做法同样适用于片段。
+但您还需要了解 Activity 的生命周期对片段生命周期的影响。
+</p>
+
+<p class="caution"><strong>注意：</strong>如需 {@link android.app.Fragment}
+内的某个 {@link android.content.Context}
+对象，可以调用 {@link android.app.Fragment#getActivity()}。但要注意，请仅在片段附加到 Activity 时调用
+{@link android.app.Fragment#getActivity()}。如果片段尚未附加，或在其生命周期结束期间分离，则
+{@link android.app.Fragment#getActivity()} 将返回 null。</p>
+
+
+<h3 id="CoordinatingWithActivity">与 Activity 生命周期协调一致</h3>
+
+<p>片段所在的 Activity 的生命周期会影响片段的生命周期，其表现为，Activity 的每次生命周期回调都会引发每个片段的类似回调。
+
+例如，当 Activity 收到 {@link android.app.Activity#onPause} 时，Activity 中的每个片段也会收到
+{@link android.app.Fragment#onPause}。</p>
+
+<p>不过，片段还有几个额外的生命周期回调，用于处理与 Activity 的唯一交互，以执行构建和销毁片段 UI 等操作。这些额外的回调方法是：
+
+</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onAttach onAttach()}</dt>
+    <dd>在片段已与 Activity 关联时调用（{@link
+android.app.Activity} 传递到此方法内）。</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+    <dd>调用它可创建与片段关联的视图层次结构。</dd>
+  <dt>{@link android.app.Fragment#onActivityCreated onActivityCreated()}</dt>
+    <dd>在 Activity 的 {@link android.app.Activity#onCreate
+onCreate()} 方法已返回时调用。</dd>
+  <dt>{@link android.app.Fragment#onDestroyView onDestroyView()}</dt>
+    <dd>在删除与片段关联的视图层次结构时调用。</dd>
+  <dt>{@link android.app.Fragment#onDetach onDetach()}</dt>
+    <dd>在取消片段与 Activity 的关联时调用。</dd>
+</dl>
+
+<p>图 3
+图示说明了受其宿主 Activity 影响的片段生命周期流。在该图中，您可以看到 Activity 的每个连续状态如何决定片段可以收到的回调方法。
+例如，当 Activity 收到其 {@link
+android.app.Activity#onCreate onCreate()} 回调时，Activity 中的片段只会收到
+{@link android.app.Fragment#onActivityCreated onActivityCreated()} 回调。</p>
+
+<p>一旦 Activity 达到恢复状态，您就可以意向 Activity 添加片段和删除其中的片段。
+因此，只有当 Activity 处于恢复状态时，片段的生命周期才能独立变化。
+</p>
+
+<p>不过，当 Activity 离开恢复状态时，片段会在 Activity 的推动下再次经历其生命周期。
+</p>
+
+
+
+
+<h2 id="Example">示例</h2>
+
+<p>为了将本文阐述的所有内容融会贯通，以下提供了一个示例，其中的 Activity 使用两个片段来创建一个双窗格布局。
+下面的 Activity 包括两个片段：一个用于显示莎士比亚戏剧标题列表，另一个用于从列表中选定戏剧时显示其摘要。
+
+此外，它还展示了如何根据屏幕配置提供不同的片段配置。
+</p>
+
+<p class="note"><strong>注：</strong><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html">{@code
+FragmentLayout.java}</a>
+中提供了此 Activity 的完整源代码。</p>
+
+<p>主 Activity 会在 {@link
+android.app.Activity#onCreate onCreate()} 期间以常规方式应用布局：</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java main}
+
+<p>应用的布局为 {@code fragment_layout.xml}：</p>
+
+{@sample development/samples/ApiDemos/res/layout-land/fragment_layout.xml layout}
+
+<p>通过使用此布局，系统可在 Activity 加载布局时立即实例化
+{@code TitlesFragment}（列出戏剧标题），而
+{@link android.widget.FrameLayout}（用于显示戏剧摘要的片段所在位置）则会占用屏幕右侧的空间，但最初处于空白状态。
+正如您将在下文所见的那样，用户从列表中选择某个项目后，系统才会将片段放入
+{@link android.widget.FrameLayout}。</p>
+
+<p>不过，并非所有屏幕配置都具有足够的宽度，可以并排显示戏剧列表和摘要。
+因此，以上布局仅用于横向屏幕配置（布局保存在
+{@code res/layout-land/fragment_layout.xml}）。</p>
+
+<p>因此，当屏幕纵向显示时，系统会应用以下布局（保存在
+{@code res/layout/fragment_layout.xml}）：</p>
+
+{@sample development/samples/ApiDemos/res/layout/fragment_layout.xml layout}
+
+<p>此布局仅包括 {@code TitlesFragment}。这意味着，当设备纵向显示时，只有戏剧标题列表可见。
+因此，当用户在此配置中点击某个列表项时，应用会启动一个新 Activity 来显示摘要，而不是加载另一个片段。
+
+</p>
+
+<p>接下来，您可以看到如何在片段类中实现此目的。第一个片段是 {@code
+TitlesFragment}，它显示莎士比亚戏剧标题列表。该片段扩展了 {@link
+android.app.ListFragment}，并依靠它来处理大多数列表视图工作。</p>
+
+<p>当您检查此代码时，请注意，用户点击列表项时可能会出现两种行为：系统可能会创建并显示一个新片段，从而在同一活动中显示详细信息（将片段添加到
+{@link
+android.widget.FrameLayout}），也可能会启动一个新活动（在该活动中可显示片段），具体取决于这两个布局中哪一个处于活动状态。
+</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java titles}
+
+<p>第二个片段 {@code DetailsFragment} 显示从
+{@code TitlesFragment} 的列表中选择的项目的戏剧摘要：</p>
+ 
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java details}
+
+<p>从 {@code TitlesFragment} 类中重新调用，如果用户点击某个列表项，且当前布局“根本不”<em></em>包括 {@code R.id.details}
+视图（即
+{@code DetailsFragment} 所属视图），则应用会启动 {@code DetailsActivity}
+Activity 以显示该项目的内容。</p>
+
+<p>以下是 {@code DetailsActivity}，它简单地嵌入了
+{@code DetailsFragment}，以在屏幕为纵向时显示所选的戏剧摘要：</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java
+details_activity}
+ 
+<p>请注意，如果配置为横向，则此 Activity 会自行完成，以便主 Activity 可以接管并沿 {@code TitlesFragment}
+显示
+{@code DetailsFragment}。如果用户在纵向显示时启动
+{@code DetailsActivity}，但随后旋转为横向（这会重启当前 Activity），就可能出现这种情况。</p>
+
+
+<p>如需查看使用片段的更多示例（以及本示例的完整源文件），请参阅
+<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Fragment">
+ApiDemos</a>（可从<a href="{@docRoot}resources/samples/get.html">示例 SDK 组件</a>下载）中提供的 API Demos 示例应用。</p>
+
+
diff --git a/docs/html-intl/intl/zh-cn/guide/components/fundamentals.jd b/docs/html-intl/intl/zh-cn/guide/components/fundamentals.jd
new file mode 100644
index 0000000..4ff22b6
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/fundamentals.jd
@@ -0,0 +1,480 @@
+page.title=应用基础知识
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文内容</h2>
+<ol>
+<li><a href="#Components">应用组件</a>
+  <ol>
+    <li><a href="#ActivatingComponents">启动组件</a></li>
+  </ol>
+</li>
+<li><a href="#Manifest">清单文件</a>
+  <ol>
+    <li><a href="#DeclaringComponents">声明组件</a></li>
+    <li><a href="#DeclaringRequirements">声明应用要求</a></li>
+  </ol>
+</li>
+<li><a href="#Resources">应用资源</a></li>
+</ol>
+</div>
+</div>
+
+<p>Android 应用采用 Java 编程语言编写。Android SDK
+工具将您的代码&mdash;连同任何数据和资源文件&mdash;编译到一个 APK： <i>Android 软件包</i>，即带有
+{@code .apk} 后缀的存档文件中。一个 APK 文件包含
+Android 应用的所有内容，它是基于 Android 系统的设备用来安装应用的文件。</p>
+
+<p>安装到设备后，每个 Android 应用都运行在自己的安全沙箱内： </p>
+
+<ul>
+ <li>Android 操作系统是一种多用户 Linux
+系统，其中的每个应用都是一位不同的用户；</li>
+
+<li>默认情况下，系统会为每个应用分配一个唯一的 Linux 用户 ID（该 ID
+仅由系统使用，应用并不知晓）。系统为应用中的所有文件设置权限，使得只有分配给该应用的用户 ID
+才能访问这些文件； </li>
+
+<li>每个进程都具有自己的虚拟机
+(VM)，因此应用代码是在与其他应用隔离的环境中运行；</li>
+
+<li>默认情况下，每个应用都在其自己的 Linux 进程内运行。Android
+会在需要执行任何应用组件时启动该进程，然后在不再需要该进程或系统必须为其他应用恢复内存时关闭该进程。
+</li>
+</ul>
+
+<p>Android 系统可以通过这种方式实现<em>最小权限原则</em>。也就是说，默认情况下，每个应用都只能访问执行其工作所需的组件，而不能访问其他组件。
+
+这样便营造出一个非常安全的环境，在这个环境中，应用无法访问系统中其未获得权限的部分。
+</p>
+
+<p>不过，应用仍然可以通过一些途径与其他应用共享数据以及访问系统服务：
+</p>
+
+<ul>
+  <li>可以安排两个应用共享同一 Linux 用户
+ID，在这种情况下，它们能够相互访问彼此的文件。为了节省系统资源，可以安排具有相同用户 ID
+的应用在同一 Linux 进程中运行，并共享同一
+VM（应用还必须使用相同的证书签署）；</li>
+  <li>应用可以请求访问设备数据（如用户的联系人、短信、可装入存储装置
+[SD 卡]、相机、蓝牙等）的权限。所有应用权限都必须由用户在安装时授予。
+</li>
+</ul>
+
+<p>以上内容阐述了有关 Android 应用在系统内存在方式的基础知识。本文的其余部分将向您介绍以下内容：
+</p>
+<ul>
+  <li>定义应用的核心框架组件</li>
+  <li>您用来声明组件和应用必需设备功能的清单文件
+</li>
+  <li>与应用代码分离并允许您的应用针对各种设备配置适当优化其行为的资源
+</li>
+</ul>
+
+
+
+<h2 id="Components">应用组件</h2>
+
+<p>应用组件是
+Android
+应用的基本构建基块。每个组件都是一个不同的点，系统可以通过它进入您的应用。并非所有组件都是用户的实际入口点，有些组件相互依赖，但每个组件都以独立实体形式存在，并发挥特定作用&mdash;每个组件都是唯一的构建基块，有助于定义应用的总体行为。
+
+</p>
+
+<p>共有四种不同的应用组件类型。每种类型都服务于不同的目的，并且具有定义组件的创建和销毁方式的不同生命周期。
+</p>
+
+<p>以下便是这四种应用组件类型：</p>
+
+<dl>
+
+<dt><b>Activity</b></dt>
+
+<dd><i>Activity</i>表示具有用户界面的单一屏幕。例如，电子邮件应用可能具有一个显示新电子邮件列表的 Activity、一个用于撰写电子邮件的 Activity 以及一个用于阅读电子邮件的 Activity。
+
+尽管这些 Activity 通过协作在电子邮件应用中形成了一种具有凝聚力的用户体验，但每一个 Activity 都独立于其他 Activity 而存在。
+
+因此，其他应用可以启动其中任何一个 Activity（如果电子邮件应用允许）。
+例如，相机应用可以启动电子邮件应用内用于撰写新电子邮件的 Activity，以便用户共享图片。
+
+
+<p>Activity 作为
+{@link android.app.Activity}
+的子类实现，您可以在<a href="{@docRoot}guide/components/activities.html">Activity</a>开发者指南中了解有关它的更多详情。</p>
+</dd>
+
+
+<dt><b>服务</b></dt>
+
+<dd><i>服务</i> 是一种在后台运行的组件，用于执行长时间运行的操作或为远程进程执行作业。
+服务不提供用户界面。
+例如，当用户位于其他应用中时，服务可能在后台播放音乐或者通过网络获取数据，但不会阻断用户与 Activity 的交互。
+
+诸如 Activity 等其他组件可以启动服务，让其运行或与其绑定以便与其进行交互。
+
+
+<p>服务作为
+{@link android.app.Service}
+的子类实现，您可以在<a href="{@docRoot}guide/components/services.html">服务</a>开发者指南中了解有关它的更多详情。</p>
+</dd>
+
+
+<dt><b>内容提供程序</b></dt>
+
+<dd>内容<i>提供程序</i> 管理一组共享的应用数据。您可以将数据存储在文件系统、SQLite
+数据库、Web
+上或您的应用可以访问的任何其他永久性存储位置。其他应用可以通过内容提供程序查询数据，甚至修改数据（如果内容提供程序允许）。
+例如，Android
+系统可提供管理用户联系人信息的内容提供程序。因此，任何具有适当权限的应用都可以查询内容提供程序的某一部分（如
+{@link
+android.provider.ContactsContract.Data}），以读取和写入有关特定人员的信息。
+
+<p>内容提供程序也适用于读取和写入您的应用不共享的私有数据。
+例如，<a href="{@docRoot}resources/samples/NotePad/index.html">记事本</a>示例应用使用内容提供程序来保存笔记。
+</p>
+
+<p>内容提供程序作为 {@link android.content.ContentProvider}
+的子类实现，并且必须实现让其他应用能够执行事务的一组标准
+API。如需了解详细信息，请参阅<a href="{@docRoot}guide/topics/providers/content-providers.html">内容提供程序</a>开发者指南。
+</p>
+</dd>
+
+
+<dt><b>广播接收器</b></dt>
+
+<dd>广播接收器<i></i> 是一种用于响应系统范围广播通知的组件。
+许多广播都是由系统发起的&mdash;例如，通知屏幕已关闭、电池电量不足或已拍摄照片的广播。应用也可以发起广播&mdash;例如，通知其他应用某些数据已下载至设备，并且可供其使用。
+
+
+尽管广播接收器不会显示用户界面，但它们可以<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">创建状态栏通知</a>，在发生广播事件时提醒用户。
+
+但广播接收器更常见的用途只是作为通向其他组件的“通道”，设计用于执行极少量的工作。
+例如，它可能会基于事件发起一项服务来执行某项工作。
+
+
+<p>广播接收器作为 {@link android.content.BroadcastReceiver}
+的子类实现，并且每条广播都作为 {@link android.content.Intent} 对象进行传递。如需了解详细信息，请参阅
+{@link android.content.BroadcastReceiver} 类。</p>
+</dd>
+
+</dl>
+
+
+
+<p>Android
+系统设计的独特之处在于，任何应用都可以启动其他应用的组件。例如，如果您想让用户使用设备的相机拍摄照片，很可能有另一个应用可以执行该操作，那么您的应用就可以利用该应用，而不是开发一个 Activity 来自行拍摄照片。
+
+您不需要集成甚至链接到该相机应用的代码，而是只需在拍摄照片的相机应用中启动该 Activity。
+
+
+完成拍摄时，系统甚至会将照片返回您的应用，以便您使用。对用户而言，就好像相机真正是您应用的组成部分。
+</p>
+
+<p>当系统启动某个组件时，会启动该应用的进程（如果尚未运行），并实例化该组件所需的类。
+例如，如果您的应用启动相机应用中拍摄照片的 Activity，则该 Activity 会在属于相机应用的进程，而不是您的应用的进程中运行。因此，与大多数其他系统上的应用不同，Android
+应用并没有单一入口点（例如，没有
+{@code main()}
+功能）。
+</p>
+
+<p>由于系统在单独的进程中运行每个应用，且其文件权限会限制对其他应用的访问，因此您的应用无法直接启动其他应用中的组件，但
+Android
+系统却可以。因此，要想启动其他应用中的组件，您必须向系统传递一则消息，说明您想启动特定组件的
+<em> Intent</em>。
+系统随后便会为您启动该组件。</p>
+
+
+<h3 id="ActivatingComponents">启动组件</h3>
+
+<p>四种组件类型中的三种&mdash;Activity、服务和广播接收器&mdash;通过名为
+<em> Intent </em>
+的异步消息进行启动。 Intent 会在运行时将各个组件相互绑定（您可以将 Intent 视为从其他组件请求操作的信使），无论组件属于您的应用还是其他应用。
+
+</p>
+
+<p>Intent 使用 {@link android.content.Intent}
+对象创建，它定义的消息用于启动特定组件或特定<em>类型</em>的组件&mdash; Intent 可以是显式的，也可以是隐式的。
+</p>
+
+<p>对于 Activity 和服务， Intent 定义要执行的操作（例如，“查看”或“发送”某个内容），并且可以指定要执行操作的数据的
+URI（以及正在启动的组件可能需要了解的信息）。
+例如， Intent 传达的请求可以是启动一个显示图像或打开网页的 Activity。
+在某些情况下，您可以启动 Activity 来接收结果，在这种情况下，Activity 也会在 {@link android.content.Intent}
+中返回结果（例如，您可以发出一个 Intent，让用户选取某位联系人并将其返回给您 &mdash; 返回 Intent 包括指向所选联系人的
+URI）。
+
+</p>
+
+<p>对于广播接收器， Intent 只会定义要广播的通知（例如，指示设备电池电量不足的广播只包括指示“电池电量不足”的已知操作字符串）。
+
+</p>
+
+<p> Intent 不会启动另一个组件类型 - 内容提供程序，后者会在成为
+{@link android.content.ContentResolver} 的请求目标时启动。内容解析程序通过内容提供程序处理所有直接事务，使得通过提供程序执行事务的组件可以无需执行事务，而是改为在
+{@link
+android.content.ContentResolver}
+对象上调用方法。这会在内容提供程序与请求信息的组件之间留出一个抽象层（以确保安全）。
+</p>
+
+<p>每种类型的组件有不同的启动方法：</p>
+<ul>
+  <li>您可以通过将 {@link android.content.Intent}
+传递到 {@link android.content.Context#startActivity
+startActivity()} 或
+{@link android.app.Activity#startActivityForResult startActivityForResult()}（当您想让 Activity 返回结果时）来启动 Activity（或为其安排新任务）；</li>
+  <li>您可以通过将
+{@link android.content.Intent} 传递到 {@link android.content.Context#startService
+startService()} 来启动服务（或对执行中的服务下达新指令）。或者，您也可以通过将 {@link android.content.Intent} 传递到
+{@link android.content.Context#bindService bindService()} 来绑定到该服务；</li>
+  <li>您可以通过将 {@link android.content.Intent} 传递到
+{@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}、{@link
+android.content.Context#sendOrderedBroadcast(Intent, String) sendOrderedBroadcast()} 或 {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()} 等方法来发起广播；</li>
+  <li>您可以通过在 {@link android.content.ContentResolver} 上调用 {@link
+android.content.ContentProvider#query query()} 来对内容提供程序执行查询。</li>
+</ul>
+
+<p>如需了解有关 Intent 用法的详细信息，请参阅 <a href="{@docRoot}guide/components/intents-filters.html"> Intent 和 Intent 过滤器</a>文档。
+以下文档中还提供了有关启动特定组件的详细信息：
+<a href="{@docRoot}guide/components/activities.html">Activity</a>、<a href="{@docRoot}guide/components/services.html">服务</a>、{@link
+android.content.BroadcastReceiver} 和<a href="{@docRoot}guide/topics/providers/content-providers.html">内容提供程序</a>。</p>
+
+
+<h2 id="Manifest">清单文件</h2>
+
+<p>在 Android
+系统启动应用组件之前，系统必须通过读取应用的 {@code AndroidManifest.xml}
+文件（“清单”文件）确认组件存在。您的应用必须在此文件中声明其所有组件，该文件必须位于应用项目目录的根目录中。
+</p>
+
+<p>除了声明应用的组件外，清单文件还有许多其他作用，如：
+</p>
+<ul>
+  <li>确定应用需要的任何用户权限，如互联网访问权限或对用户联系人的读取权限
+</li>
+  <li>根据应用使用的
+API，声明应用所需的最低<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API 级别</a></li>
+  <li>声明应用使用或需要的硬件和软件功能，如相机、蓝牙服务或多点触摸屏幕
+</li>
+  <li>应用需要链接的 API 库（Android 框架
+API 除外），如 <a href="http://code.google.com/android/add-ons/google-apis/maps-overview.html">Google Maps API
+库</a></li>
+  <li>其他功能</li>
+</ul>
+
+
+<h3 id="DeclaringComponents">声明组件</h3>
+
+<p>清单文件的主要任务是告知系统有关应用组件的信息。例如，清单文件可以想下面这样声明 Activity：
+ </p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest ... &gt;
+    &lt;application android:icon="@drawable/app_icon.png" ... &gt;
+        &lt;activity android:name="com.example.project.ExampleActivity"
+                  android:label="@string/example_label" ... &gt;
+        &lt;/activity&gt;
+        ...
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>在 <code><a
+href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+元素中，{@code android:icon}
+属性指向标识应用的图标所对应的资源。</p>
+
+<p>在 <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+元素中，{@code android:name} 属性指定 {@link
+android.app.Activity} 子类的完全限定类名，{@code android:label}
+属性指定用作 Activity 的用户可见标签的字符串。</p>
+
+<p>您必须通过以下方式声明所有应用组件：</p>
+<ul>
+  <li>Activity 的 <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+元素</li>
+  <li>服务的 <code><a
+href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+元素</li>
+  <li>广播接收器的 <code><a
+href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+元素</li>
+  <li>内容提供程序的 <code><a
+href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+元素</li>
+</ul>
+
+<p>您包括在源代码中，但未在清单文件中声明的 Activity、服务和内容提供程序对系统不可见，因此也永远不会运行。
+不过，广播接收器可以在清单文件中声明或在代码中动态创建（如
+{@link android.content.BroadcastReceiver}
+对象）并通过调用
+{@link android.content.Context#registerReceiver registerReceiver()}
+在系统中注册。</p>
+
+<p>如需了解有关如何为您的应用构建清单文件的详细信息，请参阅
+<a href="{@docRoot}guide/topics/manifest/manifest-intro.html">AndroidManifest.xml 文件</a>文档。 </p>
+
+
+
+<h3 id="DeclaringComponentCapabilities">声明组件功能</h3>
+
+<p>如上文<a href="#ActivatingComponents">启动组件</a>中所述，您可以使用
+{@link android.content.Intent} 来启动 Activity、服务和广播接收器。您可以通过在 Intent 中显式命名目标组件（使用组件类名）来执行此操作。
+不过，Intent 的真正强大之处在于<em>隐式 Intent </em> 概念。
+隐式 Intent 的作用无非是描述要执行的操作类型（还可选择描述您想执行的操作所针对的数据），让系统能够在设备上找到可执行该操作的组件，并启动该组件。
+
+
+如果有多个组件可以执行 Intent 所描述的操作，则由用户选择使用哪一个组件。
+</p>
+
+<p>系统通过将接收到的 Intent 与设备上的其他应用的清单文件中提供的 Intent 过滤器进行比较来确定可以响应 Intent 的组件。
+<i></i>
+</p>
+
+<p>当您在应用的清单文件中声明 Activity 时，可以选择性地加入声明 Activity 功能的 Intent 过滤器，以便响应来自其他应用的 Intent。
+
+您可以通过将
+<a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> 元素作为组件声明元素的子项进行添加来为您的组件声明 Intent 过滤器。</p>
+
+<p>例如，如果您开发的一个电子邮件应用包含一个用于撰写新电子邮件的 Activity，则可以像下面这样声明一个 Intent 过滤器来响应“send” Intent（以发送新电子邮件）：
+</p>
+<pre>
+&lt;manifest ... >
+    ...
+    &lt;application ... &gt;
+        &lt;activity android:name="com.example.project.ComposeEmailActivity">
+            &lt;intent-filter>
+                &lt;action android:name="android.intent.action.SEND" />
+                &lt;data android:type="*/*" />
+                &lt;category android:name="android.intent.category.DEFAULT" />
+            &lt;/intent-filter>
+        &lt;/activity>
+    &lt;/application&gt;
+&lt;/manifest>
+</pre>
+
+<p>然后，如果另一个应用创建了一个包含
+{@link
+android.content.Intent#ACTION_SEND} 操作的 Intent，并将其传递到 {@link android.app.Activity#startActivity
+startActivity()}，则系统可能会启动您的 Activity，以便用户能够草拟并发送电子邮件。</p>
+
+<p>如需了解有关创建 Intent 过滤器的详细信息，请参阅 <a href="{@docRoot}guide/components/intents-filters.html"> Intent 和 Intent 过滤器</a>文档。
+</p>
+
+
+
+<h3 id="DeclaringRequirements">声明应用要求</h3>
+
+<p>基于 Android
+系统的设备多种多样，并非所有设备都提供相同的特性和功能。为防止将您的应用安装在缺少应用所需特性的设备上，您必须通过在清单文件中声明设备和软件要求，为您的应用支持的设备类型明确定义一个配置文件。
+
+
+其中的大多数声明只是为了提供信息，系统不会读取它们，但
+Google Play
+等外部服务会读取它们，以便当用户在其设备中搜索应用时为用户提供过滤功能。</p>
+
+<p>例如，如果您的应用需要相机，并使用 Android 2.1（<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API</a> 7 级）中引入的
+API，您应该像下面这样在清单文件中以要求形式声明这些信息：</p> 
+
+<pre>
+&lt;manifest ... >
+    &lt;uses-feature android:name="android.hardware.camera.any"
+                  android:required="true" />
+    &lt;uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" />
+    ...
+&lt;/manifest>
+</pre>
+
+<p>现在，<em>没有</em>相机且 
+Android 版本<em>低于</em> 2.1 的设备将无法从 Google Play 安装您的应用。</p>
+
+<p>不过，您也可以声明您的应用使用相机，但并不<em>要求</em>必须使用。
+在这种情况下，您的应用必须将 <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#required">{@code required}</a>
+属性设置为
+{@code "false"}，并在运行时检查设备是否具有相机，然后根据需要禁用任何相机功能。</p>
+
+<p><a href="{@docRoot}guide/practices/compatibility.html">设备兼容性</a>文档中提供了有关如何管理应用与不同设备兼容性的详细信息。
+
+</p>
+
+
+
+<h2 id="Resources">应用资源</h2>
+
+<p>Android
+应用并非只包含代码&mdash;它还需要与源代码分离的资源，如图像、音频文件以及任何与应用的视觉呈现有关的内容。例如，您应该通过
+XML
+文件定义 Activity 用户界面的动画、菜单、样式、颜色和布局。使用应用资源能够在不修改代码的情况下轻松地更新应用的各种特性，并可通过提供备用资源集让您能够针对各种设备配置（如不同的语言和屏幕尺寸）优化您的应用。
+
+
+</p>
+
+<p>对于您的 Android 项目中包括的每一项资源，SDK
+构建工具都会定义一个唯一的整型 ID，您可以利用它来引用应用代码或 XML
+中定义的其他资源中的资源。例如，如果您的应用包含一个名为 {@code
+logo.png} 的图像文件（保存在 {@code res/drawable/} 目录中），则 SDK 工具会生成一个名为
+{@code R.drawable.logo} 的资源
+ID，您可以利用它来引用该图像并将其插入您的用户界面。</p>
+
+<p>提供与源代码分离的资源的其中一个最重要优点在于，您可以提供针对不同设备配置的备用资源。
+
+例如，通过在 XML 中定义 UI
+字符串，您可以将字符串翻译为其他语言，并将这些字符串保存在单独的文件中。然后，Android
+系统会根据向资源目录名称追加的语言<em>限定符</em>（如为法语字符串值追加 {@code res/values-fr/}）和用户的语言设置，对您的
+UI
+应用相应的语言字符串。</p>
+
+<p>Android 支持许多不同的备用资源<em>限定符</em>。限定符是一种加入到资源目录名称中，用来定义这些资源适用的设备配置的简短字符串。
+
+再举一例，您应该经常会根据设备的屏幕方向和尺寸为 Activity 创建不同的布局。
+
+例如，当设备屏幕为纵向（长型）时，您可能想要一种垂直排列按钮的布局；但当屏幕为横向（宽型）时，应按水平方向排列按钮。
+
+要想根据方向更改布局，您可以定义两种不同的布局，然后对每个布局的目录名称应用相应的限定符。
+
+然后，系统会根据当前设备方向自动应用相应的布局。
+</p>
+
+<p>如需了解有关可以在应用中包括的不同资源类型以及如何针对不同设备配置创建备用资源的详细信息，请阅读<a href="{@docRoot}guide/topics/resources/providing-resources.html">提供资源</a>。
+</p>
+
+
+
+<div class="next-docs">
+<div class="col-6">
+  <h2 class="norule">继续阅读以下方面的内容：</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/components/intents-filters.html"> Intent 和 Intent 过滤器</a>
+    </dt>
+    <dd>有关如何使用 {@link android.content.Intent} API 来启动应用组件（如 Activity 和服务）以及如何使您的应用组件可供其他应用使用的信息。
+
+</dd>
+    <dt><a href="{@docRoot}guide/components/activities.html">Activity</a></dt>
+    <dd>有关如何创建 {@link android.app.Activity} 类实例的信息，该类可在您的应用内提供一个具有用户界面的独立屏幕。
+</dd>
+    <dt><a href="{@docRoot}guide/topics/resources/providing-resources.html">提供资源</a></dt>
+    <dd>有关如何通过适当构建 Android 应用来使应用资源与应用代码分离的信息，包括如何针对特定设备配置提供备用资源。
+
+
+    </dd>
+  </dl>
+</div>
+<div class="col-6">
+  <h2 class="norule">您可能还对以下内容感兴趣：</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/practices/compatibility.html">设备兼容性</a></dt>
+    <dd>有关 Android 在不同设备类型上工作方式的信息，并介绍了如何针对不同设备优化您的应用，或如何限制您的应用在不同设备上的可用性。
+
+</dd>
+    <dt><a href="{@docRoot}guide/topics/security/permissions.html">系统权限</a></dt>
+    <dd>有关 Android 如何通过一种权限系统来限制应用对特定 API 访问权限的信息，该系统要求征得用户同意，才允许您的应用使用这些 API。
+</dd>
+  </dl>
+</div>
+</div>
+
diff --git a/docs/html-intl/intl/zh-cn/guide/components/index.jd b/docs/html-intl/intl/zh-cn/guide/components/index.jd
new file mode 100644
index 0000000..53e8184
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/index.jd
@@ -0,0 +1,57 @@
+page.title=应用组件
+page.landing=true
+page.landing.intro=利用 Android应用框架，您可以使用一组可重复使用的组件创建丰富的创新应用。此部分阐述您可以如何构建用于定义应用构建基块的组件，以及如何使用 Intent 将这些组件连接在一起。
+page.metaDescription=利用 Android应用框架，您可以使用一组可重复使用的组件创建丰富的创新应用。此部分阐述您可以如何构建用于定义应用构建基块的组件，以及如何使用 Intent 将这些组件连接在一起。
+page.landing.image=images/develop/app_components.png
+page.image=images/develop/app_components.png
+
+@jd:body
+
+<div class="landing-docs">
+
+  <div class="col-6">
+    <h3>博客文章</h3>
+    
+    <a href="http://android-developers.blogspot.com/2012/05/using-dialogfragments.html">
+      <h4>使用 DialogFragments</h4>
+      <p>在这篇帖子中，我将介绍如何使用带有 v4 支持库（旨在支持 Honeycomb 之前的设备实现向后兼容）的 DialogFragments 显示一个简单的编辑对话框，并使用一个接口向调用 Activity 返回一个结果。</p>
+    </a>
+
+    <a href="http://android-developers.blogspot.com/2011/03/fragments-for-all.html">
+      <h4>通用片段</h4>
+      <p>今天，我们已发布一个展示相同 Fragments API 的静态库（以及新的 LoaderManager 和其他几个类）。因此，与 Android 1.6 或更高版本兼容的应用可以使用 Fragment 创建与平板电脑兼容的用户界面。 </p>
+    </a>
+    
+    <a href="http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html">
+      <h4>多线程处理，性能卓越</h4>
+      <p>创建快速响应的应用的有效方法是：确保最大程度地减少主 UI
+线程的工作负载。任何可能会导致应用挂起的、耗时较长的任务均应在其他线程中进行处理。
+</p>
+    </a>
+  </div>
+
+  <div class="col-6">
+    <h3>培训</h3>
+    
+    <a href="http://developer.android.com/training/basics/activity-lifecycle/index.html">
+      <h4>管理 Activity 生命周期</h4>
+      <p>本课程介绍每个 Activity 实例将收到的重要生命周期回调方法，阐述可以如何利用这些方法使 Activity 达到用户预期，且避免它们在 Activity 不需要使用时消耗系统资源。
+
+</p>
+    </a>
+
+    <a href="http://developer.android.com/training/basics/fragments/index.html">
+      <h4>利用片段构建动态 UI</h4>
+      <p>本课程向您介绍如何利用片段创造动态的用户体验、针对不同屏幕尺寸的设备优化应用的用户体验，以及在实现以上目的的同时继续为运行低至
+Android 1.6 版本
+系统的设备提供支持。</p>
+    </a>
+
+    <a href="http://developer.android.com/training/sharing/index.html">
+      <h4>共享内容</h4>
+      <p>本课程阐述您可以通过使用 Intent API
+和 ActionProvider 对象在应用之间收发内容的一些常见方法。</p>
+    </a>
+  </div>
+
+</div>
diff --git a/docs/html-intl/intl/zh-cn/guide/components/intents-filters.jd b/docs/html-intl/intl/zh-cn/guide/components/intents-filters.jd
new file mode 100644
index 0000000..1c11a5b
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/intents-filters.jd
@@ -0,0 +1,899 @@
+page.title=Intent 和 Intent 过滤器
+page.tags="IntentFilter"
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文内容</h2>
+<ol>
+  <li><a href="#Types">Intent 类型</a></li>
+  <li><a href="#Building">构建 Intent </a>
+    <ol>
+      <li><a href="#ExampleExplicit">显式 Intent 示例</a></li>
+      <li><a href="#ExampleSend">隐式 Intent 示例</a></li>
+      <li><a href="#ForceChooser">强制使用应用选择器</a></li>
+    </ol>
+  </li>
+  <li><a href="#Receiving">接收隐式 Intent </a>
+    <ol>
+      <li><a href="#ExampleFilters">过滤器示例</a></li>
+    </ol>
+  </li>
+  <li><a href="#PendingIntent">使用待定 Intent </a></li>
+  <li><a href="#Resolution">Intent 解析</a>
+    <ol>
+      <li><a href="#ActionTest">操作测试</a></li>
+      <li><a href="#CategoryTest">类别测试</a></li>
+      <li><a href="#DataTest">数据测试</a></li>
+      <li><a href="#imatch">Intent 匹配</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>另请参阅</h2>
+<ol>
+<li><a href="{@docRoot}training/basics/intents/index.html">与其他应用交互</a></li>
+<li><a href="{@docRoot}training/sharing/index.html">共享内容</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+
+<p>{@link android.content.Intent}
+是一个消息传递对象，您可以使用它从其他<a href="{@docRoot}guide/components/fundamentals.html#Components">应用组件</a>请求操作。尽管
+ Intent
+可以通过多种方式促进组件之间的通信，但其基本用例主要包括以下三个：</p>
+
+<ul>
+<li><b>启动 Activity</b>：
+<p>{@link android.app.Activity} 表示应用中的一个屏幕。通过将
+{@link android.content.Intent} 传递给 {@link android.content.Context#startActivity startActivity()}，您可以启动新的
+{@link android.app.Activity} 实例。{@link android.content.Intent}
+描述了要启动的 Activity，并携带了任何必要的数据。</p>
+
+<p>如果您希望在 Activity 完成后收到结果，请调用
+{@link android.app.Activity#startActivityForResult
+startActivityForResult()}。在 Activity 的 {@link
+android.app.Activity#onActivityResult onActivityResult()} 回调中，您的 Activity 将结果作为单独的
+{@link android.content.Intent}
+对象接收。如需了解详细信息，请参阅<a href="{@docRoot}guide/components/activities.html">Activity</a>指南。</p></li>
+
+<li><b>启动服务</b>：
+<p>{@link android.app.Service}
+是一个不使用用户界面而在后台执行操作的组件。通过将
+{@link android.content.Intent}
+传递给 {@link android.content.Context#startService startService()}，您可以启动服务执行一次性操作（例如，下载文件）。{@link android.content.Intent}
+描述了要启动的服务，并携带了任何必要的数据。</p>
+
+<p>如果服务旨在使用客户端-服务器接口，则通过将 {@link android.content.Intent} 传递给
+{@link
+android.content.Context#bindService bindService()}</code>，您可以从其他组件绑定到此服务。如需了解详细信息，请参阅<a href="{@docRoot}guide/components/services.html">服务</a>指南。</p></li>
+
+<li><b>传递广播</b>：
+<p>广播是任何应用均可接收的消息。系统将针对系统事件（例如：系统启动或设备开始充电时）传递各种广播。通过将
+{@link android.content.Intent}
+传递给
+{@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}、{@link
+android.content.Context#sendOrderedBroadcast(Intent, String)
+sendOrderedBroadcast()} 或 {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}，您可以将广播传递给其他应用。</p>
+</li>
+</ul>
+
+
+
+
+<h2 id="Types">Intent 类型</h2>
+
+<p>Intent 分为两种类型：</p>
+
+<ul>
+<li><b>显式
+ Intent </b>：按名称（完全限定类名）指定要启动的组件。通常，您会在自己的应用中使用显式 Intent
+来启动组件，这是因为您知道要启动的 Activity 或服务的类名。例如，启动新 Activity 以响应用户操作，或者启动服务以在后台下载文件。
+
+</li>
+
+<li><b>隐式
+ Intent </b>：不会指定特定的组件，而是声明要执行的常规操作，从而允许其他应用中的组件来处理它。例如，如需在地图上向用户显示位置，则可以使用隐式
+ Intent，请求另一具有此功能的应用在地图上显示指定的位置。
+</li>
+</ul>
+
+<p>创建显式 Intent 启动 Activity 或服务时，系统将立即启动
+{@link android.content.Intent} 对象中指定的应用组件。</p>
+
+<div class="figure" style="width:446px">
+<img src="{@docRoot}images/components/intent-filters@2x.png" width="446" alt="" />
+<p class="img-caption"><strong>图 1. </strong>隐式
+ Intent 如何通过系统传递以启动其他 Activity 的图解：<b>[1]</b> Activity A 创建包含操作描述的
+{@link android.content.Intent}，并将其传递给 {@link
+android.content.Context#startActivity startActivity()}。<b>[2]</b>
+Android 系统搜索所有应用中与 Intent 匹配的 Intent 过滤器。<em></em>找到匹配项之后，<b>[3]</b> 该系统通过调用匹配 Activity（Activity
+B）的 {@link
+android.app.Activity#onCreate onCreate()} 方法并将其传递给 {@link android.content.Intent}，以此启动匹配 Activity。<em></em>
+</p>
+</div>
+
+<p>创建隐式 Intent
+时，Android 系统通过将 Intent 的内容与在设备上其他应用的<a href="{@docRoot}guide/topics/manifest/manifest-intro.html">清单文件</a>中声明的
+ Intent 过滤器进行比较，从而找到要启动的相应组件。<em></em>{@link android.content.Intent}如果 Intent 与 Intent
+过滤器匹配，则系统将启动该组件，并将其传递给对象。如果多个
+ Intent 过滤器兼容，则系统会显示一个对话框，支持用户选取要使用的应用。</p>
+
+<p>Intent
+过滤器是应用清单文件中的一个表达式，它指定该组件要接收的 Intent
+类型。例如，通过为 Activity 声明 Intent 过滤器，您可以使其他应用能够直接使用某一特定类型的
+ Intent 启动 Activity。同样，如果您没有为 Activity 声明任何
+ Intent 过滤器，则 Activity 只能通过显式
+ Intent 启动。<em></em></p>
+
+<p class="caution"><strong>警告：</strong>为了确保应用的安全性，启动
+{@link android.app.Service} 时，请始终使用显式
+ Intent，且不要为服务声明 Intent 过滤器。使用隐式
+ Intent 启动服务存在安全隐患，因为您无法确定哪些服务将响应
+ Intent，且用户无法看到哪些服务已启动。从 Android 5.0（API 级别 21）开始，如果使用隐式
+ Intent
+调用 {@link android.content.Context#bindService bindService()}，系统会抛出异常。</p>
+
+
+
+
+
+<h2 id="Building">构建 Intent </h2>
+
+<p>{@link android.content.Intent}
+对象携带了 Android
+系统用来确定要启动哪个组件的信息（例如，准确的组件名称或应当接收该
+ Intent 的组件类别），以及收件人组件为了正确执行操作而使用的信息（例如，要采取的操作以及要处理的数据）。</p>
+
+
+<p>{@link android.content.Intent} 中包含的主要信息如下：</p>
+
+<dl>
+
+<dt><b>组件名称</b></dt>
+<dd>要启动的组件名称。
+
+<p>这是可选项，但也是构建<b>显式</b>
+ Intent 的一项重要信息，这意味着
+ Intent 应当仅传递给由组件名称定义的应用组件。如果没有组件名称，则
+ Intent 是<b>隐式</b>的，且系统将根据其他
+ Intent  信息（例如，以下所述的操作、数据和类别）决定哪个组件应当接收 Intent。因此，如需在应用中启动特定的组件，则应指定该组件的名称。
+</p>
+
+<p class="note"><strong>注意：</strong>启动 {@link android.app.Service} 时，您应
+<strong>始终指定组件名称</strong>。否则，您无法确定哪项服务会响应
+ Intent，且用户无法看到哪项服务已启动。</p>
+
+<p>{@link android.content.Intent}
+的这一字段是
+{@link android.content.ComponentName}
+对象，您可以使用目标组件的完全限定类名指定此对象，其中包括应用的软件包名称。例如，{@code com.example.ExampleActivity}。您可以使用 {@link
+android.content.Intent#setComponent setComponent()}、{@link android.content.Intent#setClass
+setClass()}、{@link android.content.Intent#setClassName(String, String) setClassName()} 或
+{@link android.content.Intent} 构造函数设置组件名称。</p>
+
+</dd>
+
+<p><dt><b>操作</b></dt>
+<dd>指定要执行的通用操作（例如，“查看”或“选取”）的字符串。<em></em><em></em>
+
+<p>对于广播
+ Intent，这是指已发生且正在报告的操作。操作在很大程度上决定了其余 Intent 的构成，特别是数据和
+extra 中包含的内容。
+
+<p>您可以指定自己的操作，供
+ Intent 在您的应用内使用（或者供其他应用在您的应用中调用组件）。但是，您通常应该使用由
+{@link android.content.Intent} 类或其他框架类定义的操作常量。以下是一些用于启动 Activity 的常见操作：
+</p>
+
+<dl>
+<dt>{@link android.content.Intent#ACTION_VIEW}</dt>
+   <dd>如果您拥有一些某项 Activity 可向用户显示的信息（例如，要使用图库应用查看的照片；或者要使用地图应用查找的地址），请使用
+ Intent
+将此操作与 {@link
+android.content.Context#startActivity startActivity()} 结合使用。</dd>
+
+<dt>{@link android.content.Intent#ACTION_SEND}</dt>
+   <dd>这也称为“共享” Intent。如果您拥有一些用户可通过其他应用（例如，电子邮件应用或社交共享应用）共享的数据，则应使用 Intent 中将此操作与
+{@link
+android.content.Context#startActivity startActivity()} 结合使用。</dd>
+</dl>
+
+<p>有关更多定义通用操作的常量，请参阅{@link android.content.Intent}类引用。
+其他操作在
+Android 框架中的其他位置定义。例如，对于在系统的设置应用中打开特定屏幕的操作，将在 {@link android.provider.Settings}
+中定义。</p>
+
+<p>您可以使用 {@link android.content.Intent#setAction
+setAction()} 或 {@link android.content.Intent} 构造函数为 Intent 指定操作。</p>
+
+<p>如果定义自己的操作，请确保将应用的软件包名称作为前缀。
+例如：</p>
+<pre>static final String ACTION_TIMETRAVEL = "com.example.action.TIMETRAVEL";</pre>
+</dd>
+
+<dt><b>数据</b></dt>
+<dd>引用待操作数据和/或该数据
+MIME 类型的 URI（{@link android.net.Uri} 对象）。提供的数据类型通常由 Intent 的操作决定。例如，如果操作是
+{@link android.content.Intent#ACTION_EDIT}，则数据应包含待编辑文档的
+URI。
+
+<p>创建
+ Intent 时，除了指定
+URI
+以外，指定数据类型（其
+MIME 类型）往往也很重要。例如，能够显示图像的Activity可能无法播放音频文件，即便 URI 格式十分类似时也是如此。因此，指定数据的
+MIME 类型有助于 Android
+系统找到接收 Intent 的最佳组件。但有时，MIME 类型可以从 URI 中推断得出，特别当数据是
+{@code content:} URI 时尤其如此。这表明数据位于设备中，且由
+{@link android.content.ContentProvider} 控制，这使得数据 MIME 类型对系统可见。</p>
+
+<p>要仅设置数据 URI，请调用
+{@link android.content.Intent#setData setData()}。要仅设置 MIME 类型，请调用 {@link android.content.Intent#setType setType()}。如有必要，您可以使用
+{@link
+android.content.Intent#setDataAndType setDataAndType()} 同时显式设置二者。</p>
+
+<p class="caution"><strong>警告：</strong>若要同时设置 URI 和 MIME 类型，<strong>请勿</strong>调用
+{@link android.content.Intent#setData setData()} 和
+{@link android.content.Intent#setType setType()}，因为它们会互相抵消彼此的值。请始终使用
+{@link android.content.Intent#setDataAndType setDataAndType()} 同时设置
+URI 和 MIME 类型。</p>
+</dd>
+
+<p><dt><b>类别</b></dt>
+<dd>一个包含应处理 Intent
+组件类型的附加信息的字符串。您可以将任意数量的类别描述放入一个
+ Intent 中，但大多数
+ Intent 均不需要类别。以下是一些常见类别：
+
+<dl>
+<dt>{@link android.content.Intent#CATEGORY_BROWSABLE}</dt>
+  <dd>目标 Activity 允许本身通过 Web
+浏览器启动，以显示链接引用的数据，如图像或电子邮件。
+  </dd>
+<dt>{@link android.content.Intent#CATEGORY_LAUNCHER}</dt>
+  <dd>该 Activity 是任务的初始 Activity，在系统的应用启动器中列出。
+
+  </dd>
+</dl>
+
+<p>有关类别的完整列表，请参阅
+{@link android.content.Intent} 类描述。</p>
+
+<p>您可以使用 {@link android.content.Intent#addCategory addCategory()} 指定类别。</p>
+</dd>
+</dl>
+
+
+<p>以上列出的这些属性（组件名称、操作、数据和类别）表示
+ Intent 的既定特征。通过读取这些属性，Android
+系统能够解析应当启动哪个应用组件。</p>
+
+<p>但是，Intent
+也有可能会一些携带不影响其如何解析为应用组件的信息。Intent 还可以提供：</p>
+
+<dl>
+<dt><b>Extra</b></dt>
+<dd>携带完成请求操作所需的附加信息的键值对。正如某些操作使用特定类型的数据
+URI 一样，有些操作也使用特定的附加数据。
+
+<p>您可以使用各种
+{@link android.content.Intent#putExtra putExtra()} 方法添加附加数据，每种方法均接受两个参数：键名和值。您还可以创建一个包含所有附加数据的 {@link android.os.Bundle}
+对象，然后使用 {@link
+android.content.Intent#putExtras putExtras()} 将
+{@link android.os.Bundle} 插入 {@link android.content.Intent} 中。</p>
+
+<p>例如，使用
+{@link android.content.Intent#ACTION_SEND} 创建用于发送电子邮件的 Intent 时，可以使用
+{@link android.content.Intent#EXTRA_EMAIL} 键指定“目标”收件人，并使用
+{@link android.content.Intent#EXTRA_SUBJECT} 键指定“主题”。</p>
+
+<p>{@link android.content.Intent} 类将为标准化的数据类型指定多个 {@code EXTRA_*}
+常量。如需声明自己的附加数据
+键（对于应用接收的
+ Intent ），请确保将应用的软件包名称作为前缀。例如：</p>
+<pre>static final String EXTRA_GIGAWATTS = "com.example.EXTRA_GIGAWATTS";</pre>
+</dd>
+
+<dt><b>标志</b></dt>
+<dd>在 {@link android.content.Intent} 类中定义的、充当
+ Intent 元数据的标志。标志可以指示 Android
+系统如何启动 Activity（例如，Activity 应属于哪个
+<a href="{@docRoot}guide/components/tasks-and-back-stack.html">任务</a>
+），以及启动之后如何处理（例如，它是否属于最近的 Activity 列表）。
+
+<p>如需了解详细信息，请参阅 {@link android.content.Intent#setFlags setFlags()} 方法。</p>
+</dd>
+
+</dl>
+
+
+
+
+<h3 id="ExampleExplicit">显式 Intent 示例</h3>
+
+<p>显式
+ Intent 是指用于启动某个特定应用组件（例如，应用中的某个特定 Activity 或服务）的 Intent。要创建显式 Intent，请为
+{@link android.content.Intent} 对象定义组件名称。Intent
+的所有其他属性均为可选属性。</p>
+
+<p>例如，如果在应用中构建了一个名为
+{@code DownloadService}、旨在从 Web 中下载文件的服务，则可使用以下代码启动该服务：</p>
+
+<pre>
+// Executed in an Activity, so 'this' is the {@link android.content.Context}
+// The fileUrl is a string URL, such as "http://www.example.com/image.png"
+Intent downloadIntent = new Intent(this, DownloadService.class);
+downloadIntent.setData({@link android.net.Uri#parse Uri.parse}(fileUrl));
+startService(downloadIntent);
+</pre>
+
+<p>{@link android.content.Intent#Intent(Context,Class)}
+构造函数分别为应用和组件提供 {@link android.content.Context} 和
+{@link java.lang.Class} 对象。因此，此
+ Intent 将显式启动该应用中的 {@code DownloadService} 类。</p>
+
+<p>如需了解有关构建和启动服务的详细信息，请参阅<a href="{@docRoot}guide/components/services.html">服务</a>指南。
+</p>
+
+
+
+
+<h3 id="ExampleSend">隐式 Intent 示例</h3>
+
+<p>隐式
+ Intent 指定能够在可以执行相应操作的设备上调用任何应用的操作。如果您的应用无法执行该操作而其他应用可以，且您希望用户选取要使用的应用，则使用隐式
+ Intent 非常有用。</p>
+
+<p>例如，如果您希望用户与他人共享您的内容，请使用
+{@link android.content.Intent#ACTION_SEND}
+操作创建 Intent，并添加指定共享内容的 Extra。使用该
+ Intent 调用
+{@link android.content.Context#startActivity startActivity()} 时，用户可以选取共享内容所使用的应用。</p>
+
+<p class="caution"><strong>警告：</strong>用户可能没有任何应用处理您发送到
+{@link android.content.Context#startActivity
+startActivity()} 的隐式 Intent。<em></em>如果出现这种情况，则调用将会失败，且应用会崩溃。要验证 Activity 是否会接收
+ Intent，请对 {@link android.content.Intent} 对象调用 {@link android.content.Intent#resolveActivity
+resolveActivity()}。如果结果为非空，则至少有一个应用能够处理该
+ Intent，且可以安全调用
+{@link android.content.Context#startActivity startActivity()}。如果结果为空，则不应使用该
+ Intent。如有可能，您应禁用发出该
+ Intent 的功能。</p>
+
+
+<pre>
+// Create the text message with a string
+Intent sendIntent = new Intent();
+sendIntent.setAction(Intent.ACTION_SEND);
+sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
+sendIntent.setType("text/plain");
+
+// Verify that the intent will resolve to an activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(sendIntent);
+}
+</pre>
+
+<p class="note"><strong>注意：</strong>在这种情况下，系统并没有使用 URI，但已声明
+ Intent 的数据类型，用于指定 Extra 携带的内容。</p>
+
+
+<p>调用 {@link android.content.Context#startActivity startActivity()}
+时，系统将检查已安装的所有应用，确定哪些应用能够处理这种 Intent（即：含 {@link android.content.Intent#ACTION_SEND}
+操作并携带“文本/纯”数据的
+ Intent ）。如果只有一个应用能够处理，则该应用将立即打开并提供给
+ Intent。如果多个 Activity 接受
+ Intent，则系统将显示一个对话框，使用户能够选取要使用的应用。</p>
+
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/training/basics/intent-chooser.png" alt="">
+  <p class="img-caption"><strong>图 2. </strong>选择器对话框。</p>
+</div>
+
+<h3 id="ForceChooser">强制使用应用选择器</h3>
+
+<p>如果有多个应用响应隐式
+ Intent，则用户可以选择要使用的应用，并将其设置为该操作的默认选项。
+如果用户可能希望今后一直使用相同的应用执行某项操作（例如，打开网页时，用户往往倾向于仅使用一种
+Web
+浏览器），则这一点十分有用。</p>
+
+<p>但是，如果多个应用可以响应
+ Intent，且用户可能希望每次使用不同的应用，则应采用显式方式显示选择器对话框。选择器对话框要求用户选择每次操作要使用的应用（用户无法为该操作选择默认应用）。
+
+例如，当应用使用 {@link
+android.content.Intent#ACTION_SEND}
+操作执行“共享”时，用户根据目前的状况可能需要使用另一不同的应用，因此应当始终使用选择器对话框，如图 2 中所示。</p>
+
+
+
+
+<p>要显示选择器，请使用 {@link
+android.content.Intent#createChooser createChooser()} 创建 {@link android.content.Intent}，并将其传递给 {@link
+android.app.Activity#startActivity startActivity()}。例如：</p>
+
+<pre>
+Intent sendIntent = new Intent(Intent.ACTION_SEND);
+...
+
+// Always use string resources for UI text.
+// This says something like "Share this photo with"
+String title = getResources().getString(R.string.chooser_title);
+// Create intent to show the chooser dialog
+Intent chooser = Intent.createChooser(sendIntent, title);
+
+// Verify the original intent will resolve to at least one activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(chooser);
+}
+</pre>
+
+<p>这将显示一个对话框，其中包含响应传递给 {@link
+android.content.Intent#createChooser createChooser()}
+方法的 Intent 的应用列表，并使用提供的文本作为对话框标题。</p>
+
+
+
+
+
+
+
+
+
+<h2 id="Receiving">接收隐式 Intent </h2>
+
+<p>要公布应用可以接收哪些隐式
+ Intent，请在<a href="{@docRoot}guide/topics/manifest/manifest-intro.html">清单文件</a>中使用 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+元素为每个应用组件声明一个或多个 Intent 过滤器。每个
+ Intent 过滤器均根据 Intent 的操作、数据和类别指定自身接受的
+ Intent 类型。仅当隐式
+ Intent 可以通过 Intent 过滤器之一传递时，系统才会将该 Intent 传递给应用组件。</p>
+
+<p class="note"><strong>注意：</strong>显式
+ Intent 始终会传递给其目标，无论组件声明的 Intent 过滤器如何均是如此。</p>
+
+<p>应用组件应当为自身可执行的每个独特作业声明单独的过滤器。例如，图像库应用中的一个 Activity 可能会有两个过滤器，分别用于查看图像和编辑图像。
+
+当 Activity 启动时，它将检查
+{@link android.content.Intent} 并根据
+{@link android.content.Intent} 中的信息决定具体的行为（例如，是否显示编辑器控件）。</p>
+
+<p>每个
+ Intent 过滤器均由应用清单文件中的 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+元素定义，并嵌套在相应的应用组件（例如，<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+元素）中。在 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a>
+内部，您可以使用以下三个元素中的一个或多个指定要接受的
+ Intent 类型：</p>
+
+<dl>
+<dt><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a></dt>
+  <dd>在 {@code name} 属性中，声明接受的 Intent 操作。该值必须是操作的文本字符串值，而不是类常量。
+</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a></dt>
+  <dd>使用一个或多个指定
+数据
+URI（<code>scheme</code>、<code>host</code>、<code>port</code>、<code>path</code> 等）各个方面和 MIME 类型的属性，声明接受的数据类型。</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a></dt>
+  <dd>在 {@code name} 属性中，声明接受的 Intent 类别。该值必须是操作的文本字符串值，而不是类常量。
+
+
+  <p class="note"><strong>注意：</strong>为了接收隐式
+ Intent，<strong>必须</strong>将
+{@link android.content.Intent#CATEGORY_DEFAULT} 类别包括在 Intent 过滤器中。方法
+{@link android.app.Activity#startActivity startActivity()} 和
+{@link android.app.Activity#startActivityForResult startActivityForResult()} 将按照已申明 {@link android.content.Intent#CATEGORY_DEFAULT} 类别的方式处理所有
+ Intent。
+  如果未在 Intent 过滤器中声明此类别，则隐式
+ Intent 不会解析为您的 Activity。</p>
+  </dd>
+</dl>
+
+<p>例如，以下是一个使用 Intent 过滤器进行的 Activity 声明，当数据类型为文本时，系统将接收
+{@link android.content.Intent#ACTION_SEND}  Intent ：</p>
+
+<pre>
+&lt;activity android:name="ShareActivity">
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>您可以创建一个包括多个
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a>、<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>
+或
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a>
+实例的过滤器。创建时，仅需确定组件能够处理这些过滤器元素的任何及所有组合即可。
+</p>
+
+<p>如需仅以操作、数据和类别类型的特定组合来处理多种 Intent，则需创建多个
+ Intent 过滤器。</p>
+
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>限制对组件的访问</h2>
+<p>使用
+ Intent 过滤器时，无法安全地防止其他应用启动组件。尽管
+ Intent
+过滤器将组件限制为仅响应特定类型的隐式
+ Intent，但如果开发者确定您的组件名称，则其他应用有可能通过使用显式 Intent 启动您的应用组件。如果必须确保只有您自己的应用才能启动您的某一组件，请针对该组件将 <a href="{@docRoot}guide/topics/manifest/activity-element.html#exported">{@code
+exported}</a>
+属性设置为 {@code "false"}。<em></em>
+</p>
+</div>
+</div>
+
+<p>系统通过将
+ Intent 与所有这三个元素进行比较，根据过滤器测试隐式 Intent。隐式 Intent 若要传递给组件，必须通过所有这三项测试。如果
+ Intent 甚至无法匹配其中任何一项测试，则 Android
+系统不会将其传递给组件。但是，由于一个组件可能有多个
+ Intent
+过滤器，因此未能通过某一组件过滤器的 Intent 可能会通过另一过滤器。如需了解有关系统如何解析 Intent 的详细信息，请参阅下文的
+<a href="#Resolution"> Intent 解析</a>部分。</p>
+
+<p class="caution"><strong>警告：</strong>为了避免无意中运行不同应用的
+{@link android.app.Service}，请始终使用显式 Intent 启动您自己的服务，且不必为该服务声明
+ Intent 过滤器。</p>
+
+<p class="note"><strong>注意：</strong>
+对于所有 Activity，您必须在清单文件中声明
+ Intent 过滤器。但是，广播接收器的过滤器可以通过调用
+{@link android.content.Context#registerReceiver(BroadcastReceiver, IntentFilter, String,
+Handler) registerReceiver()} 动态注册。稍后，您可以使用 {@link
+android.content.Context#unregisterReceiver unregisterReceiver()} 注销该接收器。这样一来，应用便可仅在应用运行时的某一指定时间段内侦听特定的广播。
+
+</p>
+
+
+
+
+
+
+
+<h3 id="ExampleFilters">过滤器示例</h3>
+
+<p>为了更好地了解一些
+ Intent 过滤器的行为，我们一起来看看从社交共享应用的清单文件中截取的以下片段。</p>
+
+<pre>
+&lt;activity android:name="MainActivity">
+    &lt;!-- This activity is the main entry, should appear in app launcher -->
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.MAIN" />
+        &lt;category android:name="android.intent.category.LAUNCHER" />
+    &lt;/intent-filter>
+&lt;/activity>
+
+&lt;activity android:name="ShareActivity">
+    &lt;!-- This activity handles "SEND" actions with text data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter&gt;
+    &lt;!-- This activity also handles "SEND" and "SEND_MULTIPLE" with media data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;action android:name="android.intent.action.SEND_MULTIPLE"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="application/vnd.google.panorama360+jpg"/>
+        &lt;data android:mimeType="image/*"/>
+        &lt;data android:mimeType="video/*"/>
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>第一个 Activity {@code MainActivity}
+是应用的主要入口点。当用户最初使用启动器图标启动应用时，该 Activity 将打开：</p>
+<ul>
+  <li>{@link android.content.Intent#ACTION_MAIN} 操作指示这是主要入口点，且不要求输入任何
+ Intent 数据。</li>
+  <li>{@link android.content.Intent#CATEGORY_LAUNCHER}
+类别指示此 Activity 的图标应放入系统的应用启动器。如果
+<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+元素未使用 {@code icon} 指定图标，则系统将使用 <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a> 元素中的图标。</li>
+</ul>
+<p>这两个元素必须配对使用，Activity 才会显示在应用启动器中。</p>
+
+<p>第二个 Activity {@code ShareActivity}
+旨在便于共享文本和媒体内容。尽管用户可以通过从 {@code MainActivity} 导航进入此 Activity，但也可以从发出隐式
+ Intent（与两个
+ Intent 过滤器之一匹配）的另一应用中直接进入 {@code ShareActivity}。</p>
+
+<p class="note"><strong>注意：</strong>MIME 类型
+<a href="https://developers.google.com/panorama/android/">{@code
+application/vnd.google.panorama360+jpg}</a> 是一个指定全景照片的特殊
+数据类型，您可以使用 <a href="{@docRoot}reference/com/google/android/gms/panorama/package-summary.html">Google
+全景</a> API 对其进行处理。</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+<h2 id="PendingIntent">使用待定 Intent </h2>
+
+<p>{@link android.app.PendingIntent} 对象是 {@link
+android.content.Intent} 对象的包装器。{@link android.app.PendingIntent}
+的主要目的是授权外部应用使用包含的
+{@link android.content.Intent}，就像是它从您应用本身的进程中执行的一样。
+</p>
+
+<p>待定 Intent 的主要用例包括：</p>
+<ul>
+  <li>声明用户使用您的<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">通知</a>执行操作时所要执行的
+ Intent（Android 系统的 {@link android.app.NotificationManager}
+执行 {@link android.content.Intent}）。
+  <li>声明用户使用您的
+<a href="{@docRoot}guide/topics/appwidgets/index.html">应用小工具</a>执行操作时要执行的
+ Intent（主屏幕应用执行 {@link android.content.Intent}）。
+  <li>声明未来某一特定时间要执行的 Intent（Android
+系统的 {@link android.app.AlarmManager} 执行 {@link android.content.Intent}）。
+</ul>
+
+<p>由于每个 {@link android.content.Intent}
+对象均设计为由特定类型的应用组件进行处理（{@link android.app.Activity}、{@link android.app.Service} 或
+{@link android.content.BroadcastReceiver}），因此还必须基于相同的考虑因素创建
+{@link android.app.PendingIntent}。使用待定
+ Intent 时，应用不会使用调用（如 {@link android.content.Context#startActivity
+startActivity()}）执行该 Intent。相反，通过调用相应的创建器方法创建
+{@link android.app.PendingIntent} 时，您必须声明所需的组件类型：</p>
+
+<ul>
+  <li>{@link android.app.PendingIntent#getActivity PendingIntent.getActivity()}，适用于启动
+{@link android.app.Activity} 的 {@link android.content.Intent}。</li>
+  <li>{@link android.app.PendingIntent#getService PendingIntent.getService()}，适用于启动
+{@link android.app.Service} 的 {@link android.content.Intent}。</li>
+  <li>{@link android.app.PendingIntent#getBroadcast PendingIntent.getBroadcast()}，适用于启动
+{@link android.content.BroadcastReceiver} 的 {@link android.content.Intent}。</li>
+</ul>
+
+<p>除非您的应用正在从其他应用中接收待定
+ Intent，否则上述用于创建 {@link android.app.PendingIntent}
+的方法可能是您所需的唯一 {@link android.app.PendingIntent} 方法。<em></em></p>
+
+<p>每种方法均会提取当前的应用 {@link android.content.Context}、您要包装的
+{@link android.content.Intent} 以及一个或多个指定应如何使用该 Intent 的标志（例如，是否可以多次使用该
+ Intent）。</p>
+
+<p>如需了解有关使用待定
+ Intent 的详细信息，请参阅<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">通知</a>
+和<a href="{@docRoot}guide/topics/appwidgets/index.html">应用小工具</a> API 指南等手册中每个相应用例的相关文档。</p>
+
+
+
+
+
+
+
+<h2 id="Resolution"> Intent 解析</h2>
+
+
+<p>当系统收到隐式
+ Intent 以启动 Activity 时，它根据以下三个方面将该 Intent 与 Intent 过滤器进行比较，搜索该 Intent 的最佳 Activity：</p>
+
+<ul>
+  <li> Intent 操作
+  <li> Intent 数据（URI 和数据类型）
+  <li> Intent 类别
+</ul>
+
+<p>下文根据如何在应用的清单文件中声明
+ Intent 过滤器，描述 Intent 如何与相应的组件匹配。</p>
+
+
+<h3 id="ActionTest">操作测试</h3>
+
+<p>要指定接受的 Intent 操作， Intent 过滤器既可以不声明任何
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 元素，也可以声明多个此类元素。例如：</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.VIEW" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>要通过此过滤器，您在 {@link android.content.Intent}
+中指定的操作必须与过滤器中列出的某一操作匹配。</p>
+
+<p>如果该过滤器未列出任何操作，则
+ Intent 没有任何匹配项，因此所有 Intent 均无法通过测试。但是，如果
+{@link android.content.Intent}
+未指定操作，则会通过测试（只要过滤器至少包含一个操作）。</p>
+
+
+
+<h3 id="CategoryTest">类别测试</h3>
+
+<p>要指定接受的 Intent 类别， Intent 过滤器既可以不声明任何
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 元素，也可以声明多个此类元素。例如：</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+    &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>若要 Intent 通过类别测试，则 {@link android.content.Intent}
+中的每个类别均必须与过滤器中的类别匹配。反之则未必然，Intent
+过滤器声明的类别可以超出 {@link android.content.Intent}
+中指定的数量，且 {@link android.content.Intent} 仍会通过测试。因此，不含类别的
+ Intent 应当始终会通过此测试，无论过滤器中声明何种类别均是如此。</p>
+
+<p class="note"><strong>注意：</strong>
+Android
+会自动将 {@link android.content.Intent#CATEGORY_DEFAULT}
+类别应用于传递给 {@link
+android.content.Context#startActivity startActivity()} 和 {@link
+android.app.Activity#startActivityForResult startActivityForResult()} 的所有隐式
+ Intent。因此，如需 Activity 接收隐式 Intent，则必须将 {@code "android.intent.category.DEFAULT"} 的类别包括在其 Intent 过滤器中（如上文的
+{@code &lt;intent-filter&gt;} 示例所示）。</p>
+
+
+
+<h3 id="DataTest">数据测试</h3>
+
+<p>要指定接受的 Intent 数据， Intent 过滤器既可以不声明任何
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a> 元素，也可以声明多个此类元素。例如：</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="video/mpeg" android:scheme="http" ... /&gt;
+    &lt;data android:mimeType="audio/mpeg" android:scheme="http" ... /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>每个 <code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+元素均可指定 URI 结构和数据类型（MIME 介质类型）。URI 的每个部分均包含单独的
+{@code scheme}、{@code host}、{@code port}
+和 {@code path} 属性：
+</p>
+
+<p style="margin-left: 2em">{@code &lt;scheme&gt;://&lt;host&gt;:&lt;port&gt;/&lt;path&gt;}</p>
+
+<p>
+例如：
+</p>
+
+<p style="margin-left: 2em">{@code content://com.example.project:200/folder/subfolder/etc}</p>
+
+<p>在此 URI 中，架构是 {@code content}，主机是
+{@code com.example.project}，端口是 {@code 200}，路径是 {@code folder/subfolder/etc}。
+</p>
+
+<p>在 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>
+元素中，上述每个属性均为可选，但存在线性依赖关系：</p>
+<ul>
+  <li>如果未指定架构，则会忽略主机。</li>
+  <li>如果未指定主机，则会忽略端口。</li>
+  <li>如果未指定架构和主机，则会忽略路径。</li>
+</ul>
+
+<p>将
+ Intent 中的 URI 与过滤器中的 URI 规范进行比较时，它仅与过滤器中包含的部分 URI 进行比较。例如：</p>
+<ul>
+  <li>如果过滤器仅指定架构，则具有该架构的所有
+URI 均与该过滤器匹配。</li>
+  <li>如果过滤器指定架构和权限、但未指定路径，则具有相同架构和权限的所有 URI
+都会通过过滤器，无论其路径如何均是如此。</li>
+  <li>如果过滤器指定架构、权限和路径，则仅具有相同架构、权限和路径
+的 URI 才会通过过滤器。</li>
+</ul>
+
+<p class="note"><strong>注意：</strong>路径规范可以包含星号通配符
+(*)，因此仅需部分匹配路径名即可。</p>
+
+<p>数据测试会将 Intent 中的 URI 和 MIME
+类型与过滤器中指定的 URI 和 MIME 类型进行比较。规则如下：
+</p>
+
+<ol type="a">
+<li>仅当过滤器未指定任何 URI 或 MIME 类型时，不含 URI 和 MIME 类型的
+ Intent 才会通过测试。</li>
+
+<li>对于包含 URI、但不含 MIME 类型（既未显式声明，也无法通过
+URI 推断得出）的 Intent，仅当其 URI
+与过滤器的 URI 格式匹配、且过滤器同样未指定 MIME 类型时，才会通过测试。</li>
+
+<li>仅当过滤器列出相同的 MIME 类型且未指定 URI 格式时，包含 MIME
+类型、但不含 URI 的 Intent 才会通过测试。</li>
+
+<li>仅当 MIME 类型与过滤器中列出的类型匹配时，包含
+URI 和 MIME 类型（通过显式声明，或可以通过
+URI 推断得出）的 Intent 才会通过测试的 MIME 类型部分。如果 Intent 的 URI 与过滤器中的
+URI 匹配，或者如果 Intent 具有 {@code content:}
+或 {@code file:} URI
+且过滤器未指定 URI，则 Intent 会通过测试的 URI 部分。换而言之，如果过滤器仅列出 MIME 类型，则假定组件支持
+{@code content:} 和 {@code file:} 数据。<em></em></p></li>
+</ol>
+
+<p>
+最后一条规则，即规则
+(d)，反映了期望组件能够从文件中或内容提供商处获得本地数据。因此，其过滤器可以仅列出数据类型，而不必显式命名
+{@code content:} 和
+{@code file:}
+架构。这是一个典型的案例。例如，下文中的 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>
+元素向
+Android 指出，组件可从内容提供商处获得并显示图像数据：
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="image/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+<p>
+由于大部分可用数据均由内容提供商分发，因此指定数据类型（而非
+URI）的过滤器也许最为常见。
+</p>
+
+<p>
+另一常见的配置是具有架构和数据类型的过滤器。例如，下文中的 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>
+元素向
+Android
+指出，组件可从网络中检索视频数据以执行操作：
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:scheme="http" android:type="video/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+
+
+<h3 id="imatch"> Intent 匹配</h3>
+
+<p>通过
+ Intent
+过滤器匹配 Intent，这不仅有助于发现要激活的目标组件，还有助于发现设备上组件集的相关信息。例如，主页应用通过使用指定
+{@link android.content.Intent#ACTION_MAIN} 操作和
+{@link android.content.Intent#CATEGORY_LAUNCHER} 类别的
+ Intent 过滤器查找所有 Activity，以此填充应用启动器。</p>
+
+<p>您的应用可以采用类似的方式使用
+ Intent 匹配。{@link android.content.pm.PackageManager} 提供了一整套 {@code query...()}
+方法来返回所有能够接受特定 Intent
+的组件。此外，它还提供了一系列类似的 {@code resolve...()} 方法来确定响应 Intent
+的最佳组件。例如，{@link android.content.pm.PackageManager#queryIntentActivities
+queryIntentActivities()}
+将返回能够执行那些作为参数传递的
+ Intent 的所有 Activity 列表，而
+{@link
+android.content.pm.PackageManager#queryIntentServices
+queryIntentServices()}
+则可返回类似的服务列表。这两种方法均不会激活组件，而只是列出能够响应的组件。对于广播接收器，有一种类似的方法：
+{@link android.content.pm.PackageManager#queryBroadcastReceivers
+queryBroadcastReceivers()}。
+</p>
+
+
+
+
diff --git a/docs/html-intl/intl/zh-cn/guide/components/loaders.jd b/docs/html-intl/intl/zh-cn/guide/components/loaders.jd
new file mode 100644
index 0000000..d8427b0
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/loaders.jd
@@ -0,0 +1,494 @@
+page.title=加载器
+parent.title=Activity
+parent.link=activities.html
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>本文内容</h2>
+    <ol>
+    <li><a href="#summary">Loader API 摘要</a></li>
+    <li><a href="#app">在应用中使用加载器</a>
+      <ol>
+        <li><a href="#requirements"></a></li>
+        <li><a href="#starting">启动加载器</a></li>
+        <li><a href="#restarting">重启加载器</a></li>
+        <li><a href="#callback">使用 LoaderManager 回调</a></li>
+      </ol>
+    </li>
+    <li><a href="#example">示例</a>
+       <ol>
+         <li><a href="#more_examples">更多示例</a></li>
+        </ol>
+    </li>
+  </ol>
+    
+  <h2>关键类</h2>
+    <ol>
+      <li>{@link android.app.LoaderManager}</li>
+      <li>{@link android.content.Loader}</li>
+
+    </ol>   
+    
+    <h2>相关示例</h2>
+   <ol>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">
+LoaderCursor</a></li>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html">
+LoaderThrottle</a></li>
+   </ol>
+  </div>
+</div>
+
+<p>Android 3.0 中引入了加载器，支持轻松在 Activity 或片段中异步加载数据。
+加载器具有以下特征：</p>
+  <ul>
+    <li>可用于每个 {@link android.app.Activity} 和 {@link
+android.app.Fragment}。</li>
+    <li>支持异步加载数据。</li>
+    <li>监控其数据源并在内容变化时传递新结果。
+</li>
+    <li>在某一配置更改后重建加载器时，会自动重新连接上一个加载器的 Cursor。
+因此，它们无需重新查询其数据。
+</li>
+  </ul>
+ 
+<h2 id="summary">Loader API 摘要</h2>
+
+<p>在应用中使用加载器时，可能会涉及到多个类和接口。
+下表汇总了这些类和接口：</p>
+
+<table>
+  <tr>
+    <th>类/接口</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager}</td>
+    <td>一种与 {@link android.app.Activity} 或 {@link android.app.Fragment} 相关联的的抽象类，用于管理一个或多个 {@link
+android.content.Loader} 实例。
+这有助于应用管理与
+{@link android.app.Activity}
+或 {@link android.app.Fragment} 生命周期相关联的、运行时间较长的操作。它最常见的用法是与
+{@link android.content.CursorLoader}
+一起使用，但应用可自由写入其自己的加载器，用于加载其他类型的数据。
+    <br />
+    <br />
+    每个 Activity 或片段中只有一个 {@link android.app.LoaderManager}。但一个 {@link android.app.LoaderManager}
+可以有多个加载器。</td>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager.LoaderCallbacks}</td>
+    <td>一种回调接口，用于客户端与 {@link
+android.app.LoaderManager} 进行交互。例如，您可使用 {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+回调方法创建新的加载器。</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.Loader}</td>
+    <td>一种执行异步数据加载的抽象类。这是加载器的基类。
+您通常会使用 {@link
+android.content.CursorLoader}，但您也可以实现自己的子类。加载器处于Activity状态时，应监控其数据源并在内容变化时传递新结果。
+
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.content.AsyncTaskLoader}</td>
+    <td>提供 {@link android.os.AsyncTask} 来执行工作的抽象加载器。</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.CursorLoader}</td>
+    <td>{@link android.content.AsyncTaskLoader}
+的子类，它将查询 {@link android.content.ContentResolver} 并返回一个 {@link
+android.database.Cursor}。此类采用标准方式为查询 Cursor 实现 {@link
+android.content.Loader}
+协议。它是以 {@link android.content.AsyncTaskLoader}
+为基础而构建，在后台线程中执行 Cursor 查询，因此不会阻塞应用的 UI。使用此加载器是从
+{@link
+android.content.ContentProvider}
+异步加载数据的最佳方式，而不用通过片段或 Activity 的 API 来执行托管查询。</td>
+  </tr>
+</table>
+
+<p>上表中的类和接口是您在应用中用于实现加载器的基本组件。
+并非您创建的每个加载器都要用到上述所有类和接口。但是，为了初始化加载器以及实现一个 {@link android.content.Loader}
+类（如 {@link
+android.content.CursorLoader}），您始终需要要引用
+{@link
+android.app.LoaderManager}。下文将为您展示如何在应用中使用这些类和接口。
+</p>
+
+<h2 id ="app">在应用中使用加载器</h2>
+<p>此部分描述如何在 Android 应用中使用加载器。使用加载器的应用通常包括：
+</p>
+<ul>
+  <li>{@link android.app.Activity} 或 {@link android.app.Fragment}。</li>
+  <li>{@link android.app.LoaderManager} 的实例。</li>
+  <li>一个 {@link android.content.CursorLoader}，用于加载由 {@link
+android.content.ContentProvider} 支持的数据。您也可以实现自己的
+{@link android.content.Loader}
+或 {@link android.content.AsyncTaskLoader} 子类，从其他源中加载数据。</li>
+  <li>一个
+{@link android.app.LoaderManager.LoaderCallbacks}
+实现。您可以使用它来创建新加载器，并管理对现有加载器的引用。</li> 
+<li>一种显示加载器数据的方法，如 {@link
+android.widget.SimpleCursorAdapter}。</li>
+  <li>使用
+{@link android.content.CursorLoader} 时的数据源，如 {@link android.content.ContentProvider}。</li>
+</ul>
+<h3 id="starting">启动加载器</h3>
+
+<p>{@link android.app.LoaderManager} 可在 {@link android.app.Activity} 或
+{@link android.app.Fragment} 内管理一个或多个 {@link
+android.content.Loader} 实例。每个 Activity 或片段只有一个 {@link
+android.app.LoaderManager}。</p> 
+
+<p>通常，您会使用 Activity 的 {@link
+android.app.Activity#onCreate onCreate()} 方法或片段的
+{@link android.app.Fragment#onActivityCreated onActivityCreated()} 
+方法初始化 {@link android.content.Loader}。您执行操作如下：
+</p>
+
+<pre>// Prepare the loader.  Either re-connect with an existing one,
+// or start a new one.
+getLoaderManager().initLoader(0, null, this);</pre>
+
+<p>{@link android.app.LoaderManager#initLoader initLoader()}
+方法采用以下参数：</p>
+<ul>
+  <li>用于标识加载器的唯一 ID。在此示例中，ID 为 0。</li>
+<li>在构建时提供给加载器的可选参数（在此示例中为 <code>null</code>
+）。</li> 
+
+<li>{@link android.app.LoaderManager.LoaderCallbacks} 实现，
+{@link android.app.LoaderManager} 将调用此实现来报告加载器事件。在此示例中，本地类实现
+{@link
+android.app.LoaderManager.LoaderCallbacks}
+接口，因此它会将引用 {@code this} 传递给自己。</li> 
+</ul>
+<p>{@link android.app.LoaderManager#initLoader initLoader()}
+调用确保加载器已初始化且处于Activity状态。这可能会出现两种结果：</p>
+<ul>
+  <li>如果 ID
+指定的加载器已存在，则将重复使用上次创建的加载器。</li>
+  <li>如果
+ID 指定的加载器不存在，则 {@link android.app.LoaderManager#initLoader initLoader()} 将触发
+{@link android.app.LoaderManager.LoaderCallbacks}
+方法 {@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}。在此方法中，您可以实现代码以实例化并返回新加载器。有关详细介绍，请参阅 <a href="#onCreateLoader">onCreateLoader</a> 部分。<em></em>
+</li>
+</ul>
+<p>无论何种情况，给定的
+{@link android.app.LoaderManager.LoaderCallbacks}
+实现均与加载器相关联，且将在加载器状态变化时调用。如果在调用时，调用程序处于启动状态，且请求的加载器已存在并生成了数据，则系统将立即调用
+{@link
+android.app
+LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+（在 {@link android.app.LoaderManager#initLoader initLoader()}
+期间），因此您必须为此做好准备。有关此回调的详细介绍，请参阅
+<a href="#onLoadFinished">onLoadFinished</a>。</p>
+
+<p>请注意，{@link android.app.LoaderManager#initLoader initLoader()}
+方法将返回已创建的
+{@link android.content.Loader}，但您不必捕获其引用。{@link android.app.LoaderManager}
+将自动管理加载器的生命周期。{@link android.app.LoaderManager}
+将根据需要启动和停止加载，并维护加载器的状态及其相关内容。
+这意味着您很少直接与加载器进行交互（有关使用加载器方法调整加载器行为的示例，请参阅
+<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html">LoaderThrottle</a>
+示例）。当特殊事件发生时，您通常会使用
+{@link
+android.app.LoaderManager.LoaderCallbacks}
+方法干预加载进程。有关此主题的详细介绍，请参阅<a href="#callback">使用 LoaderManager 回调</a>。</p>
+
+<h3 id="restarting">重启加载器</h3>
+
+<p>当您使用
+{@link android.app.LoaderManager#initLoader initLoader()}
+时（如上所述），它将使用含有指定 ID 的现有加载器（如有）。如果没有，则它会创建一个。但有时，您想放弃这些旧数据并重新开始。
+</p>
+
+<p>要放弃旧数据，请使用 {@link
+android.app.LoaderManager#restartLoader restartLoader()}。例如，当用户的查询更改时，此 {@link android.widget.SearchView.OnQueryTextListener}
+实现将重启加载器。
+加载器需要重启，以便它能够使用修订后的搜索筛选器执行新查询：
+</p>
+
+<pre>
+public boolean onQueryTextChanged(String newText) {
+    // Called when the action bar search text has changed.  Update
+    // the search filter, and restart the loader to do a new query
+    // with this filter.
+    mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+    getLoaderManager().restartLoader(0, null, this);
+    return true;
+}</pre>
+
+<h3 id="callback">使用 LoaderManager 回调</h3>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} 是一个支持客户端与
+{@link android.app.LoaderManager} 交互的回调接口。 </p>
+<p>加载器（特别是
+{@link android.content.CursorLoader}）在停止运行后，仍需保留其数据。这样，应用即可保留 Activity 或片段的
+{@link android.app.Activity#onStop
+onStop()} 和
+{@link android.app.Activity#onStart onStart()}
+方法中的数据。当用户返回应用时，无需等待它重新加载这些数据。您可使用
+{@link android.app.LoaderManager.LoaderCallbacks}
+方法了解何时创建新加载器，并告知应用何时停止使用加载器的数据。</p>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks}
+包括以下方法：</p>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}：针对指定的
+ID 进行实例化并返回新的 {@link android.content.Loader}
+</li></ul>
+<ul>
+  <li> {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()}
+：将在先前创建的加载器完成加载时调用
+</li></ul>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onLoaderReset onLoaderReset()}：
+将在先前创建的加载器重置且其数据因此不可用时调用
+
+</li>
+</ul>
+<p>下文更详细地描述了这些方法。</p>
+
+<h4 id ="onCreateLoader">onCreateLoader</h4>
+
+<p>当您尝试访问加载器时（例如，通过
+{@link
+android.app.LoaderManager#initLoader initLoader()}），该方法将检查是否已存在由该 ID 指定的加载器。如果没有，它将触发 {@link
+android.app.LoaderManager.LoaderCallbacks} 方法 {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}。在此方法中，您可以创建新加载器。
+通常，这将是 {@link
+android.content.CursorLoader}，但您也可以实现自己的 {@link
+android.content.Loader} 子类。 </p>
+
+<p>在此示例中，{@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+回调方法创建了 {@link android.content.CursorLoader}。您必须使用其构造函数方法来构建
+{@link android.content.CursorLoader}。该方法需要对
+{@link
+android.content.ContentProvider} 执行查询时所需的一系列完整信息。具体地说，它需要：</p>
+<ul>
+  <li><em>uri</em>：用于检索内容的 URI </li>
+  <li><em>projection</em>：要返回的列的列表。传递
+<code>null</code> 时，将返回所有列，这样会导致效率低下 </li>
+  <li><em>selection</em>：一种用于声明要返回哪些行的过滤器，其格式为
+SQL WHERE 子句（WHERE 本身除外）。传递
+<code>null</code> 时，将为指定的 URI 返回所有行 </li>
+  <li><em>selectionArgs</em>：您可以在 selection 中包含 ?s，它将按照在 selection 中显示的顺序替换为
+<em>selectionArgs</em>
+中的值。该值将绑定为字串符 </li>
+  <li><em>sortOrder</em>：行的排序依据，其格式为 SQL
+ORDER BY 子句（ORDER BY 自身除外）。传递 <code>null</code>
+ 时，将使用默认排序顺序（可能并未排序）</li>
+</ul>
+<p>例如：</p>
+<pre>
+ // If non-null, this is the current filter the user has provided.
+String mCurFilter;
+...
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+    // This is called when a new Loader needs to be created.  This
+    // sample only has one Loader, so we don't care about the ID.
+    // First, pick the base URI to use depending on whether we are
+    // currently filtering.
+    Uri baseUri;
+    if (mCurFilter != null) {
+        baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                  Uri.encode(mCurFilter));
+    } else {
+        baseUri = Contacts.CONTENT_URI;
+    }
+
+    // Now create and return a CursorLoader that will take care of
+    // creating a Cursor for the data being displayed.
+    String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+            + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+            + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+    return new CursorLoader(getActivity(), baseUri,
+            CONTACTS_SUMMARY_PROJECTION, select, null,
+            Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+}</pre>
+<h4 id="onLoadFinished">onLoadFinished</h4>
+
+<p>当先前创建的加载器完成加载时，将调用此方法。该方法必须在为此加载器提供的最后一个数据释放之前调用。
+
+此时，您应移除所有使用的旧数据（因为它们很快会被释放），但不要自行释放这些数据，因为这些数据归其加载器所有，其加载器会处理它们。
+
+</p>
+
+
+<p>当加载器发现应用不再使用这些数据时，即会释放它们。
+例如，如果数据是来自 {@link
+android.content.CursorLoader} 的一个 Cursor，则您不应手动对其调用 {@link
+android.database.Cursor#close close()}。如果 Cursor 放置在
+{@link android.widget.CursorAdapter} 中，则应使用 {@link
+android.widget.SimpleCursorAdapter#swapCursor swapCursor()} 方法，使旧
+{@link android.database.Cursor} 不会关闭。例如：</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.<br
+/>SimpleCursorAdapter mAdapter;
+...
+
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+    // Swap the new cursor in.  (The framework will take care of closing the
+    // old cursor once we return.)
+    mAdapter.swapCursor(data);
+}</pre>
+
+<h4 id="onLoaderReset">onLoaderReset</h4>
+
+<p>此方法将在先前创建的加载器重置且其数据因此不可用时调用。
+通过此回调，您可以了解何时将释放数据，因而能够及时移除其引用。
+  </p>
+<p>此实现调用值为 <code>null</code>
+的{@link android.widget.SimpleCursorAdapter#swapCursor swapCursor()}：
+</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.
+SimpleCursorAdapter mAdapter;
+...
+
+public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+    // This is called when the last Cursor provided to onLoadFinished()
+    // above is about to be closed.  We need to make sure we are no
+    // longer using it.
+    mAdapter.swapCursor(null);
+}</pre>
+
+
+<h2 id="example">示例</h2>
+
+<p>以下是一个 
+{@link
+android.app.Fragment} 完整实现示例。它展示了一个 {@link android.widget.ListView}，其中包含针对联系人内容提供程序的查询结果。它使用 {@link
+android.content.CursorLoader} 管理提供程序的查询。</p>
+ 
+<p>应用如需访问用户联系人（正如此示例中所示），其清单文件必须包括权限
+{@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS}。
+</p>
+
+<pre>
+public static class CursorLoaderListFragment extends ListFragment
+        implements OnQueryTextListener, LoaderManager.LoaderCallbacks&lt;Cursor&gt; {
+
+    // This is the Adapter being used to display the list's data.
+    SimpleCursorAdapter mAdapter;
+
+    // If non-null, this is the current filter the user has provided.
+    String mCurFilter;
+
+    @Override public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+
+        // Give some text to display if there is no data.  In a real
+        // application this would come from a resource.
+        setEmptyText(&quot;No phone numbers&quot;);
+
+        // We have a menu item to show in action bar.
+        setHasOptionsMenu(true);
+
+        // Create an empty adapter we will use to display the loaded data.
+        mAdapter = new SimpleCursorAdapter(getActivity(),
+                android.R.layout.simple_list_item_2, null,
+                new String[] { Contacts.DISPLAY_NAME, Contacts.CONTACT_STATUS },
+                new int[] { android.R.id.text1, android.R.id.text2 }, 0);
+        setListAdapter(mAdapter);
+
+        // Prepare the loader.  Either re-connect with an existing one,
+        // or start a new one.
+        getLoaderManager().initLoader(0, null, this);
+    }
+
+    @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+        // Place an action bar item for searching.
+        MenuItem item = menu.add(&quot;Search&quot;);
+        item.setIcon(android.R.drawable.ic_menu_search);
+        item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+        SearchView sv = new SearchView(getActivity());
+        sv.setOnQueryTextListener(this);
+        item.setActionView(sv);
+    }
+
+    public boolean onQueryTextChange(String newText) {
+        // Called when the action bar search text has changed.  Update
+        // the search filter, and restart the loader to do a new query
+        // with this filter.
+        mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+        getLoaderManager().restartLoader(0, null, this);
+        return true;
+    }
+
+    @Override public boolean onQueryTextSubmit(String query) {
+        // Don't care about this.
+        return true;
+    }
+
+    @Override public void onListItemClick(ListView l, View v, int position, long id) {
+        // Insert desired behavior here.
+        Log.i(&quot;FragmentComplexList&quot;, &quot;Item clicked: &quot; + id);
+    }
+
+    // These are the Contacts rows that we will retrieve.
+    static final String[] CONTACTS_SUMMARY_PROJECTION = new String[] {
+        Contacts._ID,
+        Contacts.DISPLAY_NAME,
+        Contacts.CONTACT_STATUS,
+        Contacts.CONTACT_PRESENCE,
+        Contacts.PHOTO_ID,
+        Contacts.LOOKUP_KEY,
+    };
+    public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+        // This is called when a new Loader needs to be created.  This
+        // sample only has one Loader, so we don't care about the ID.
+        // First, pick the base URI to use depending on whether we are
+        // currently filtering.
+        Uri baseUri;
+        if (mCurFilter != null) {
+            baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                    Uri.encode(mCurFilter));
+        } else {
+            baseUri = Contacts.CONTENT_URI;
+        }
+
+        // Now create and return a CursorLoader that will take care of
+        // creating a Cursor for the data being displayed.
+        String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+                + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+                + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+        return new CursorLoader(getActivity(), baseUri,
+                CONTACTS_SUMMARY_PROJECTION, select, null,
+                Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+    }
+
+    public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+        // Swap the new cursor in.  (The framework will take care of closing the
+        // old cursor once we return.)
+        mAdapter.swapCursor(data);
+    }
+
+    public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+        // This is called when the last Cursor provided to onLoadFinished()
+        // above is about to be closed.  We need to make sure we are no
+        // longer using it.
+        mAdapter.swapCursor(null);
+    }
+}</pre>
+<h3 id="more_examples">更多示例</h3>
+
+<p><strong>ApiDemos</strong>
+中还提供了一些不同的示例，阐述如何使用加载器：</p>
+<ul>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">LoaderCursor</a>：上述代码段的完整版本
+
+</li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html">LoaderThrottle</a>：此示例显示当数据变化时，如何使用限制来减少内容提供程序的查询次数
+</li>
+</ul>
+
+<p>有关下载和安装 SDK
+示例的信息，请参阅<a href="http://developer.android.com/resources/samples/get.html">获取示例</a>。 </p>
+
diff --git a/docs/html-intl/intl/zh-cn/guide/components/processes-and-threads.jd b/docs/html-intl/intl/zh-cn/guide/components/processes-and-threads.jd
new file mode 100644
index 0000000..c88ecf4
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/processes-and-threads.jd
@@ -0,0 +1,411 @@
+page.title=进程和线程
+page.tags=生命周期,后台
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文内容</h2>
+<ol>
+<li><a href="#Processes">进程</a>
+  <ol>
+    <li><a href="#Lifecycle">进程生命周期</a></li>
+  </ol>
+</li>
+<li><a href="#Threads">线程</a>
+  <ol>
+    <li><a href="#WorkerThreads">工作线程</a></li>
+    <li><a href="#ThreadSafe">线程安全方法</a></li>
+  </ol>
+</li>
+<li><a href="#IPC">进程间通信</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>当某个应用组件启动且该应用没有运行其他任何组件时，Android
+系统会使用单个执行线程为应用启动新的
+Linux 进程。默认情况下，同一应用的所有组件在相同的进程和线程（称为“主”线程）中运行。
+如果某个应用组件启动且该应用已存在进程（因为存在该应用的其他组件），则该组件会在此进程内启动并使用相同的执行线程。
+
+但是，您可以安排应用中的其他组件在单独的进程中运行，并为任何进程创建额外的线程。
+
+</p>
+
+<p>本文档介绍进程和线程在 Android 应用中的工作方式。</p>
+
+
+<h2 id="Processes">进程</h2>
+
+<p>默认情况下，同一应用的所有组件均在相同的进程中运行，且大多数应用都不会改变这一点。
+但是，如果您发现需要控制某个组件所属的进程，则可在清单文件中执行此操作。
+</p>
+
+<p>各类组件元素的清单文件条目&mdash;<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>、<a href="{@docRoot}guide/topics/manifest/service-element.html">{@code
+&lt;service&gt;}</a>、<a href="{@docRoot}guide/topics/manifest/receiver-element.html">{@code
+&lt;receiver&gt;}</a> 和 <a href="{@docRoot}guide/topics/manifest/provider-element.html">{@code
+&lt;provider&gt;}</a>&mdash;均支持 
+{@code android:process} 属性，此属性可以指定该组件应在哪个进程运行。您可以设置此属性，使每个组件均在各自的进程中运行，或者使一些组件共享一个进程，而其他组件则不共享。
+此外，您还可以设置 {@code android:process}，使不同应用的组件在相同的进程中运行，但前提是这些应用共享相同的 Linux 用户 ID 并使用相同的证书进行签署。
+
+
+</p>
+
+<p>此外，<a href="{@docRoot}guide/topics/manifest/application-element.html">{@code
+&lt;application&gt;}</a> 元素还支持 {@code android:process}
+属性，以设置适用于所有组件的默认值。</p>
+
+<p>如果内存不足，而其他为用户提供更紧急服务的进程又需要内存时，Android
+可能会决定在某一时刻关闭某一进程。在被终止进程中运行的应用组件也会随之销毁。
+当这些组件需要再次运行时，系统将为它们重启进程。
+</p>
+
+<p>决定终止哪个进程时，Android
+系统将权衡它们对用户的相对重要程度。例如，相对于托管可见 Activity 的进程而言，它更有可能关闭托管屏幕上不再可见的 Activity 进程。
+因此，是否终止某个进程的决定取决于该进程中所运行组件的状态。
+下面，我们介绍决定终止进程所用的规则。
+ </p>
+
+
+<h3 id="Lifecycle">进程生命周期</h3>
+
+<p>Android 系统将尽量长时间地保持应用进程，但为了新建进程或运行更重要的进程，最终需要清除旧进程来回收内存。
+为了确定保留或终止哪些进程，系统会根据进程中正在运行的组件以及这些组件的状态，将每个进程放入“重要性层次结构”中。
+
+
+必要时，系统会首先消除重要性最低的进程，然后是重要性略逊的进程，依此类推，以回收系统资源。
+
+</p>
+
+<p>重要性层次结构一共有 5 级。以下列表按照重要程度列出了各类进程（第一个进程最重要，将是最后一个被终止的进程）：
+<em></em><em></em>
+</p>
+
+<ol>
+  <li><b>前台进程</b>
+    <p>用户当前操作所必需的进程。如果一个进程满足以下任一条件，即视为前台进程：
+</p>
+
+      <ul>
+        <li>托管用户正在交互的 {@link android.app.Activity}（已调用 {@link
+android.app.Activity} 的 {@link android.app.Activity#onResume onResume()}
+方法）</li>
+
+        <li>托管某个 {@link android.app.Service}，后者绑定到用户正在交互的 Activity
+</li>
+
+        <li>托管正在“前台”运行的
+{@link android.app.Service}（服务已调用 {@link android.app.Service#startForeground startForeground()}）
+
+        <li>托管正执行一个生命周期回调的
+{@link android.app.Service}（{@link android.app.Service#onCreate onCreate()}、{@link android.app.Service#onStart
+onStart()} 或 {@link android.app.Service#onDestroy onDestroy()}）</li>
+
+        <li>托管正执行其 {@link
+        android.content.BroadcastReceiver#onReceive onReceive()} 方法的 {@link android.content.BroadcastReceiver}</li>
+    </ul>
+
+    <p>通常，在任意给定时间前台进程都为数不多。只有在内在不足以支持它们同时继续运行这一万不得已的情况下，系统才会终止它们。
+此时，设备往往已达到内存分页状态，因此需要终止一些前台进程来确保用户界面正常响应。
+
+</p></li>
+
+  <li><b>可见进程</b>
+    <p>没有任何前台组件、但仍会影响用户在屏幕上所见内容的进程。
+如果一个进程满足以下任一条件，即视为可见进程：
+</p>
+
+      <ul>
+        <li>托管不在前台、但仍对用户可见的
+{@link android.app.Activity}（已调用其 {@link android.app.Activity#onPause onPause()} 方法）。例如，如果前台 Activity 启动了一个对话框，允许在其后显示上一 Activity，则有可能会发生这种情况
+
+</li>
+
+        <li>托管绑定到可见（或前台）Activity 的
+{@link android.app.Service}</li>
+      </ul>
+
+      <p>可见进程被视为是极其重要的进程，除非为了维持所有前台进程同时运行而必须终止，否则系统不会终止这些进程。
+ </p>
+    </li>
+
+  <li><b>服务进程</b>
+    <p>正在运行已使用 {@link
+android.content.Context#startService startService()}
+方法启动的服务且不属于上述两个更高类别进程的进程。尽管服务进程与用户所见内容没有直接关联，但是它们通常在执行一些用户关心的操作（例如，在后台播放音乐或从网络下载数据）。因此，除非内存不足以维持所有前台进程和可见进程同时运行，否则系统会让服务进程保持运行状态。
+
+
+ </p>
+  </li>
+
+  <li><b>后台进程</b>
+    <p>包含目前对用户不可见的 Activity 的进程（已调用 Activity 的
+{@link android.app.Activity#onStop onStop()} 方法）。这些进程对用户体验没有直接影响，系统可能随时终止它们，以回收内存供前台进程、可见进程或服务进程使用。
+
+
+通常会有很多后台进程在运行，因此它们会保存在
+LRU
+（最近最少使用）列表中，以确保包含用户最近查看的 Activity 的进程最后一个被终止。如果某个 Activity 正确实现了生命周期方法，并保存了其当前状态，则终止其进程不会对用户体验产生明显影响，因为当用户导航回该 Activity 时，Activity 会恢复其所有可见状态。
+
+
+有关保存和恢复状态的信息，请参阅<a href="{@docRoot}guide/components/activities.html#SavingActivityState">Activity</a>文档。
+</p>
+  </li>
+
+  <li><b>空进程</b>
+    <p>不含任何活动应用组件的进程。保留这种进程的的唯一目的是用作缓存，以缩短下次在其中运行组件所需的启动时间。
+
+为使总体系统资源在进程缓存和底层内核缓存之间保持平衡，系统往往会终止这些进程。
+</p>
+  </li>
+</ol>
+
+
+  <p>根据进程中当前活动组件的重要程度，Android
+会将进程评定为它可能达到的最高级别。例如，如果某进程托管着服务和可见 Activity，则会将此进程评定为可见进程，而不是服务进程。
+</p>
+
+  <p>此外，一个进程的级别可能会因其他进程对它的依赖而有所提高，即服务于另一进程的进程其级别永远不会低于其所服务的进程。
+
+例如，如果进程 A
+中的内容提供程序为进程 B 中的客户端提供服务，或者如果进程 A 中的服务绑定到进程 B 中的组件，则进程 A 始终被视为至少与进程
+B 同样重要。</p>
+
+  <p>由于运行服务的进程其级别高于托管后台 Activity 的进程，因此启动长时间运行操作的 Activity 最好为该操作启动<a href="{@docRoot}guide/components/services.html">服务</a>，而不是简单地创建工作线程，当操作有可能比 Activity 更加持久时尤要如此。例如，正在将图片上传到网站的 Activity 应该启动服务来执行上传，这样一来，即使用户退出 Activity，仍可在后台继续执行上传操作。使用服务可以保证，无论 Activity 发生什么情况，该操作至少具备“服务进程”优先级。
+
+
+
+
+
+同理，广播接收器也应使用服务，而不是简单地将耗时冗长的操作放入线程中。
+</p>
+
+
+
+
+<h2 id="Threads">线程</h2>
+
+<p>应用启动时，系统会为应用创建一个名为“主线程”的执行线程。
+此线程非常重要，因为它负责将事件分派给相应的用户界面小工具，其中包括绘图事件。
+此外，它也是应用与
+Android UI 工具包组件（来自 {@link
+android.widget} 和 {@link android.view} 软件包的组件）进行交互的线程。因此，主线程有时也称为
+UI 线程。</p>
+
+<p>系统绝对不会为每个组件实例创建单独的线程。<em></em>运行于同一进程的所有组件均在
+UI
+线程中实例化，并且对每个组件的系统调用均由该线程进行分派。因此，响应系统回调的方法（例如，报告用户操作的
+{@link android.view.View#onKeyDown onKeyDown()}
+或生命周期回调方法）始终在进程的 UI 线程中运行。</p>
+
+<p>例如，当用户触摸屏幕上的按钮时，应用的
+UI
+线程会将触摸事件分派给小工具，而小工具反过来又设置其按下状态，并将无效请求发布到事件队列中。UI
+线程从队列中取消该请求并通知小工具应该重绘自身。</p>
+
+<p>在应用执行繁重的任务以响应用户交互时，除非正确实施应用，否则这种单线程模式可能会导致性能低下。
+特别地，如果
+UI
+线程需要处理所有任务，则执行耗时很长的操作（例如，网络访问或数据库查询）将会阻塞整个
+UI。一旦线程被阻塞，将无法分派任何事件，包括绘图事件。从用户的角度来看，应用显示为挂起。
+更糟糕的是，如果 UI
+线程被阻塞超过几秒钟时间（目前大约是 5 秒钟），用户就会看到一个让人厌烦的“<a href="http://developer.android.com/guide/practices/responsiveness.html">应用无响应</a>”(ANR)
+对话框。如果引起用户不满，他们可能就会决定退出并卸载此应用。
+</p>
+
+<p>此外，Android UI 工具包并非线程安全工具包。<em></em>因此，您不得通过工作线程操纵
+UI，而只能通过
+UI 线程操纵用户界面。因此，Android 的单线程模式必须遵守两条规则：</p>
+
+<ol>
+<li>不要阻塞 UI 线程
+<li>不要在 UI 线程之外访问 Android UI 工具包
+</ol>
+
+<h3 id="WorkerThreads">工作线程</h3>
+
+<p>根据上述单线程模式，要保证应用 UI
+的响应能力，关键是不能阻塞 UI 线程。如果执行的操作不能很快完成，则应确保它们在单独的线程（“后台”或“工作”线程）中运行。
+
+</p>
+
+<p>例如，以下代码演示了一个点击侦听器从单独的线程下载图像并将其显示在
+{@link android.widget.ImageView} 中：</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            Bitmap b = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.setImageBitmap(b);
+        }
+    }).start();
+}
+</pre>
+
+<p>乍看起来，这段代码似乎运行良好，因为它创建了一个新线程来处理网络操作。
+但是，它违反了单线程模式的第二条规则：不要在
+UI 线程之外访问 Android UI 工具包<em></em>&mdash;此示例从工作线程（而不是 UI 线程）修改了 {@link
+android.widget.ImageView}。这可能导致出现不明确、不可预见的行为，但要跟踪此行为困难而又费时。
+</p>
+
+<p>为解决此问题，Android 提供了几种途径来从其他线程访问 UI
+线程。以下列出了几种有用的方法：</p>
+
+<ul>
+<li>{@link android.app.Activity#runOnUiThread(java.lang.Runnable)
+Activity.runOnUiThread(Runnable)}</li>
+<li>{@link android.view.View#post(java.lang.Runnable) View.post(Runnable)}</li>
+<li>{@link android.view.View#postDelayed(java.lang.Runnable, long) View.postDelayed(Runnable,
+long)}</li>
+</ul>
+
+<p>例如，您可以通过使用 {@link
+android.view.View#post(java.lang.Runnable) View.post(Runnable)} 方法修复上述代码：</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            final Bitmap bitmap = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.post(new Runnable() {
+                public void run() {
+                    mImageView.setImageBitmap(bitmap);
+                }
+            });
+        }
+    }).start();
+}
+</pre>
+
+<p>现在，上述实现属于线程安全型：在单独的线程中完成网络操作，而在 UI 线程中操纵
+{@link android.widget.ImageView}。</p>
+
+<p>但是，随着操作日趋复杂，这类代码也会变得复杂且难以维护。
+要通过工作线程处理更复杂的交互，可以考虑在工作线程中使用
+{@link android.os.Handler}
+处理来自 UI 线程的消息。当然，最好的解决方案或许是扩展 {@link android.os.AsyncTask} 类，此类简化了与
+UI 进行交互所需执行的工作线程任务。</p>
+
+
+<h4 id="AsyncTask">使用 AsyncTask</h4>
+
+<p>{@link android.os.AsyncTask}
+允许对用户界面执行异步操作。它会先阻塞工作线程中的操作，然后在 UI
+线程中发布结果，而无需您亲自处理线程和/或处理程序。</p>
+
+<p>要使用它，必须创建 {@link android.os.AsyncTask} 子类并实现 {@link
+android.os.AsyncTask#doInBackground doInBackground()}
+回调方法，该方法将在后台线程池中运行。要更新 UI，必须实现 {@link
+android.os.AsyncTask#onPostExecute onPostExecute()} 以传递 {@link
+android.os.AsyncTask#doInBackground doInBackground()} 返回的结果并在 UI 线程中运行，这样，您即可安全更新 UI。稍后，您可以通过从 UI 线程调用
+{@link android.os.AsyncTask#execute execute()}
+来运行任务。</p>
+
+<p>例如，您可以通过以下方式使用
+{@link android.os.AsyncTask} 来实现上述示例：</p>
+
+<pre>
+public void onClick(View v) {
+    new DownloadImageTask().execute("http://example.com/image.png");
+}
+
+private class DownloadImageTask extends AsyncTask&lt;String, Void, Bitmap&gt; {
+    /** The system calls this to perform work in a worker thread and
+      * delivers it the parameters given to AsyncTask.execute() */
+    protected Bitmap doInBackground(String... urls) {
+        return loadImageFromNetwork(urls[0]);
+    }
+    
+    /** The system calls this to perform work in the UI thread and delivers
+      * the result from doInBackground() */
+    protected void onPostExecute(Bitmap result) {
+        mImageView.setImageBitmap(result);
+    }
+}
+</pre>
+
+<p>现在 UI 是安全的，代码也得到简化，因为任务分解成了两部分：一部分应在工作线程内完成，另一部分应在
+UI 线程内完成。</p>
+
+<p>下面简要概述了 AsyncTask 的工作方法，但要全面了解如何使用此类，您应阅读 {@link android.os.AsyncTask}
+参考文档：</p>
+
+<ul>
+<li>可以使用泛型指定参数类型、进度值和任务最终值
+</li>
+<li>方法
+{@link android.os.AsyncTask#doInBackground doInBackground()} 会在工作线程上自动执行</li>
+<li>{@link android.os.AsyncTask#onPreExecute onPreExecute()}、{@link
+android.os.AsyncTask#onPostExecute onPostExecute()} 和 {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} 均在 UI 线程中调用</li>
+<li>{@link android.os.AsyncTask#doInBackground doInBackground()} 返回的值将发送到
+{@link android.os.AsyncTask#onPostExecute onPostExecute()}</li>
+<li>您可以随时在 {@link
+android.os.AsyncTask#doInBackground doInBackground()} 中调用{@link android.os.AsyncTask#publishProgress publishProgress()}，以在 UI 线程中执行 {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()}</li>
+<li>您可以随时取消任何线程中的任务</li>
+</ul>
+
+<p class="caution"><strong>注意：</strong>使用工作线程时可能会遇到另一个问题，即：<a href="{@docRoot}guide/topics/resources/runtime-changes.html">运行时配置变更</a>（例如，用户更改了屏幕方向）导致 Activity 意外重启，这可能会销毁工作线程。
+
+要了解如何在这种重启情况下坚持执行任务，以及如何在 Activity 被销毁时正确地取消任务，请参阅<a href="http://code.google.com/p/shelves/">书架</a>示例应用的源代码。
+
+</p>
+
+
+<h3 id="ThreadSafe">线程安全方法</h3>
+
+<p> 在某些情况下，您实现的方法可能会从多个线程调用，因此编写这些方法时必须确保其满足线程安全的要求。
+ </p>
+
+<p>这一点主要适用于可以远程调用的方法，如<a href="{@docRoot}guide/components/bound-services.html">绑定服务</a>中的方法。如果对
+{@link android.os.IBinder}
+中所实现方法的调用源自运行
+{@link android.os.IBinder IBinder}
+的同一进程，则该方法在调用方的线程中执行。但是，如果调用源自其他进程，则该方法将在从线程池选择的某个线程中执行（而不是在进程的 UI 线程中执行），线程池由系统在与 {@link android.os.IBinder
+IBinder} 相同的进程中维护。例如，即使服务的
+{@link android.app.Service#onBind onBind()} 方法将从服务进程的 UI
+线程调用，在
+{@link android.app.Service#onBind
+onBind()} 返回的对象中实现的方法（例如，实现 RPC 方法的子类）仍会从线程池中的线程调用。由于一个服务可以有多个客户端，因此可能会有多个池线程在同一时间使用同一
+{@link android.os.IBinder IBinder} 方法。因此，{@link android.os.IBinder
+IBinder} 方法必须实现为线程安全方法。</p>
+
+<p> 同样，内容提供程序也可接收来自其他进程的数据请求。尽管
+{@link android.content.ContentResolver} 和 {@link android.content.ContentProvider}
+类隐藏了如何管理进程间通信的细节，但响应这些请求的 {@link
+android.content.ContentProvider} 方法（{@link
+android.content.ContentProvider#query query()}、{@link android.content.ContentProvider#insert
+insert()}、{@link android.content.ContentProvider#delete delete()}、{@link
+android.content.ContentProvider#update update()} 和 {@link android.content.ContentProvider#getType
+getType()} 方法）将从内容提供程序所在进程的线程池中调用，而不是从进程的
+UI 线程调用。由于这些方法可能会同时从任意数量的线程调用，因此它们也必须实现为线程安全方法。
+ </p>
+
+
+<h2 id="IPC">进程间通信</h2>
+
+<p>Android 利用远程过程调用
+(RPC) 提供了一种进程间通信
+(IPC)
+机制，通过这种机制，由 Activity 或其他应用组件调用的方法将（在其他进程中）远程执行，而所有结果将返回给调用方。这就要求把方法调用及其数据分解至操作系统可以识别的程度，并将其从本地进程和地址空间传输至远程进程和地址空间，然后在远程进程中重新组装并执行该调用。
+
+然后，返回值将沿相反方向传输回来。
+Android 提供了执行这些 IPC
+事务所需的全部代码，因此您只需集中精力定义和实现 RPC 编程接口即可。 </p>
+
+<p>要执行 IPC，必须使用 {@link
+android.content.Context#bindService bindService()} 将应用绑定到服务上。如需了解详细信息，请参阅<a href="{@docRoot}guide/components/services.html">服务</a>开发者指南。</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For information about how to perform work in the background for an indefinite period of time
+(without a user interface), continue with the <b><a
+href="{@docRoot}guide/components/services.html">Services</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/zh-cn/guide/components/recents.jd b/docs/html-intl/intl/zh-cn/guide/components/recents.jd
new file mode 100644
index 0000000..2bf1a5b
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/recents.jd
@@ -0,0 +1,256 @@
+page.title=概览屏幕
+page.tags="recents","overview"
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>本文内容</h2>
+  <ol>
+    <li><a href="#adding">将任务添加到概览屏幕</a>
+      <ol>
+        <li><a href="#flag-new-doc">使用 Intent 标志添加任务</a></li>
+        <li><a href="#attr-doclaunch">使用 Activity 属性添加任务</a></li>
+      </ol>
+    </li>
+    <li><a href="#removing">删除任务</a>
+      <ol>
+        <li><a href="#apptask-remove">使用 AppTask 类删除任务</a></li>
+        <li><a href="#retain-finished">保留已完成的任务</a></li>
+      </ol>
+    </li>
+  </ol>
+
+  <h2>关键类</h2>
+  <ol>
+    <li>{@link android.app.ActivityManager.AppTask}</li>
+    <li>{@link android.content.Intent}</li>
+  </ol>
+
+  <h2>示例代码</h2>
+  <ol>
+    <li><a href="{@docRoot}samples/DocumentCentricApps/index.html">以文档为中心的应用</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>概览屏幕（也称为最新动态屏幕、最近任务列表或最近使用的应用）是一个系统级别
+UI，其中列出了最近访问过的<a href="{@docRoot}guide/components/activities.html">Activity</a>和<a href="{@docRoot}guide/components/tasks-and-back-stack.html">任务</a>。
+用户可以浏览该列表并选择要恢复的任务，也可以通过滑动清除任务将其从列表中删除。
+
+对于
+Android 5.0 版本（API 级别 21），包含多个文档的同一 Activity 的多个实例可能会以任务的形式显示在概览屏幕中。例如，Google Drive 可能对多个
+Google 文档中的每个文档均执行一个任务。每个文档均以任务的形式显示在概览屏幕中。
+</p>
+
+<img src="{@docRoot}images/components/recents.png" alt="" width="284" />
+<p class="img-caption"><strong>图 1. </strong>显示了三个
+Google Drive 文档的概览屏幕，每个文档分别以一个单独的任务表示。</p>
+
+<p>通常，您应该允许系统定义任务和 Activity 在概览屏幕中的显示方法，并且无需修改此行为。不过，应用可以确定 Activity 在概览屏幕中的显示方式和时间。
+
+您可以使用 {@link android.app.ActivityManager.AppTask}
+类来管理任务，使用
+{@link android.content.Intent}
+类的 Activity 标志来指定某 Activity 添加到概览屏幕或从中删除的时间。此外，您也可以使用 <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> 属性在清单文件中设置该行为。</p>
+
+<h2 id="adding">将任务添加到概览屏幕</h2>
+
+<p>通过使用 {@link android.content.Intent}
+类的标志添加任务，您可以更好地控制某文档在概览屏幕中打开或重新打开的时间和方式。使用
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+属性时，您可以选择始终在新任务中打开文档，或选择对文档重复使用现有任务。
+</p>
+
+<h3 id="flag-new-doc">使用 Intent 标志添加任务</h3>
+
+<p>为 Activity 创建新文档时，可调用
+{@link android.app.ActivityManager.AppTask}
+类的 {@link android.app.ActivityManager.AppTask#startActivity(android.content.Context, android.content.Intent, android.os.Bundle) startActivity()}
+方法，以向其传递启动 Activity 的 Intent。要插入逻辑换行符以便系统将 Activity 视为新任务显示在概览屏幕中，可在启动 Activity 的
+{@link android.content.Intent}
+的 {@link android.content.Intent#addFlags(int) addFlags()} 方法中传递 {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+标志。</p>
+
+<p class="note"><strong>注：</strong>{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+标志取代了 {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET}
+标志，后者自 Android 5.0（API 级别 21）起已弃用。</p>
+
+<p>如果在创建新文档时设置
+{@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}
+标志，则系统始终会以目标 Activity 作为根创建新任务。此设置允许同一文档在多个任务中打开。以下代码演示了主 Activity 如何执行此操作：
+</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">DocumentCentricActivity.java</a>
+</p>
+<pre>
+public void createNewDocument(View view) {
+      final Intent newDocumentIntent = newDocumentIntent();
+      if (useMultipleTasks) {
+          newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
+      }
+      startActivity(newDocumentIntent);
+  }
+
+  private Intent newDocumentIntent() {
+      boolean useMultipleTasks = mCheckbox.isChecked();
+      final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+      newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT);
+      newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+      return newDocumentIntent;
+  }
+
+  private static int incrementAndGet() {
+      Log.d(TAG, "incrementAndGet(): " + mDocumentCounter);
+      return mDocumentCounter++;
+  }
+}
+</pre>
+
+<p class="note"><strong>注：</strong>使用 {@code FLAG_ACTIVITY_NEW_DOCUMENT}
+标志启动的 Activity 必须具有在清单文件中设置的 {@code android:launchMode="standard"}
+属性值（默认）。</p>
+
+<p>当主 Activity 启动新 Activity 时，系统会搜遍现有任务，看看是否有任务的 Intent 与 Activity 的 Intent 组件名称和 Intent 数据相匹配。
+如果未找到任务或者 Intent 包含
+{@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}
+标志，则会以该 Activity 作为其根创建新任务。如果找到的话，则会将该任务转到前台并将新
+ Intent 
+传递给
+{@link android.app.Activity#onNewIntent onNewIntent()}。新 Activity 将获得 Intent 并在概览屏幕中创建新文档，如下例所示：</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">NewDocumentActivity.java</a>
+</p>
+<pre>
+&#64;Override
+protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_new_document);
+    mDocumentCount = getIntent()
+            .getIntExtra(DocumentCentricActivity.KEY_EXTRA_NEW_DOCUMENT_COUNTER, 0);
+    mDocumentCounterTextView = (TextView) findViewById(
+            R.id.hello_new_document_text_view);
+    setDocumentCounterText(R.string.hello_new_document_counter);
+}
+
+&#64;Override
+protected void onNewIntent(Intent intent) {
+    super.onNewIntent(intent);
+    /* If FLAG_ACTIVITY_MULTIPLE_TASK has not been used, this activity
+    is reused to create a new document.
+     */
+    setDocumentCounterText(R.string.reusing_document_counter);
+}
+</pre>
+
+
+<h3 id="#attr-doclaunch">使用 Activity 属性添加任务</h3>
+
+<p>此外，Activity 还可以在其清单文件中指定始终通过使用
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+属性 <a href="{@docRoot}guide/topics/manifest/activity-element.html#dlmode">{@code android:documentLaunchMode}</a> 进入新任务。
+此属性有四个值，会在用户使用该应用打开文档时产生以下效果：
+</p>
+
+<dl>
+  <dt>“{@code intoExisting}”</dt>
+  <dd>该 Activity 会对文档重复使用现有任务。这与不设置
+{@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}
+标志、但设置
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} 标志所产生的效果相同，如上文的<a href="#flag-new-doc">使用 Intent 标志添加任务</a>中所述。<em></em></dd>
+
+  <dt>“{@code always}”</dt>
+  <dd>该 Activity 为文档创建新任务，即便文档已打开也是如此。使用此值与同时设置
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+和 {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 标志所产生的效果相同。</dd>
+
+  <dt>“{@code none”}</dt>
+  <dd>该 Activity 不会为文档创建新任务。概览屏幕将按其默认方式对待此 Activity：为应用显示单个任务，该任务将从用户上次调用的任意 Activity 开始继续执行。
+
+</dd>
+
+  <dt>“{@code never}”</dt>
+  <dd>该 Activity 不会为文档创建新任务。设置此值会替代
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT}
+和 {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 标志的行为（如果在
+ Intent 
+中设置了其中一个标志），并且概览屏幕将为应用显示单个任务，该任务将从用户上次调用的任意 Activity 开始继续执行。</dd>
+</dl>
+
+<p class="note"><strong>注：</strong>对于除 {@code none} 和 {@code never}
+以外的值，必须使用 {@code launchMode="standard"} 定义 Activity。如果未指定此属性，则使用
+{@code documentLaunchMode="none"}。</p>
+
+<h2 id="removing">删除任务</h2>
+
+<p>默认情况下，在 Activity 结束后，文档任务会从概览屏幕中自动删除。
+您可以使用 {@link android.app.ActivityManager.AppTask}
+类、{@link android.content.Intent} 标志或 <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> 属性替代此行为。</p>
+
+<p>通过将
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+属性<a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">
+{@code android:excludeFromRecents}</a> 设置为 {@code true}，您可以始终将任务从概览屏幕中完全排除。</p>
+
+<p>您可以通过将
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+属性 <a href="{@docRoot}guide/topics/manifest/activity-element.html#maxrecents">{@code android:maxRecents}
+</a>设置为整型值，设置应用能够包括在概览屏幕中的最大任务数。默认值为 16。达到最大任务数后，最近最少使用的任务将从概览屏幕中删除。
+{@code android:maxRecents}
+的最大值为 50（内存不足的设备上为 25）；小于 1 的值无效。</p>
+
+<h3 id="#apptask-remove">使用 AppTask 类删除任务</h3>
+
+<p>在于概览屏幕创建新任务的 Activity 中，您可以通过调用
+{@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()}
+方法指定何时删除该任务以及结束所有与之相关的 Activity。</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">NewDocumentActivity.java</a>
+</p>
+<pre>
+public void onRemoveFromRecents(View view) {
+    // The document is no longer needed; remove its task.
+    finishAndRemoveTask();
+}
+</pre>
+
+<p class="note"><strong>注：</strong>如下所述，使用
+{@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()}
+方法代替使用 {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS}
+标记。</p>
+
+<h3 id="#retain-finished">保留已完成的任务</h3>
+
+<p>若要将任务保留在概览屏幕中（即使其 Activity 已完成），可在启动 Activity 的
+ Intent 的 {@link android.content.Intent#addFlags(int) addFlags()} 方法中传递
+{@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} 标志。</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">DocumentCentricActivity.java</a>
+</p>
+<pre>
+private Intent newDocumentIntent() {
+    final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+    newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT |
+      android.content.Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS);
+    newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+    return newDocumentIntent;
+}
+</pre>
+
+<p>要达到同样的效果，请将
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+属性<a href="{@docRoot}guide/topics/manifest/activity-element.html#autoremrecents">
+{@code android:autoRemoveFromRecents}</a> 设置为 {@code false}。文档 Activity 的默认值为
+{@code true}，常规 Activity 的默认值为 {@code false}。如前所述，使用此属性替代
+{@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} 标志。</p>
+
+
+
+
+
+
+
diff --git a/docs/html-intl/intl/zh-cn/guide/components/services.jd b/docs/html-intl/intl/zh-cn/guide/components/services.jd
new file mode 100644
index 0000000..9a00e70
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/services.jd
@@ -0,0 +1,813 @@
+page.title=服务
+@jd:body
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>本文内容</h2>
+<ol>
+<li><a href="#Basics">基础知识</a></li>
+<ol>
+  <li><a href="#Declaring">使用清单文件声明服务</a></li>
+</ol>
+<li><a href="#CreatingAService">创建启动服务</a>
+  <ol>
+    <li><a href="#ExtendingIntentService">扩展 IntentService 类</a></li>
+    <li><a href="#ExtendingService">扩展服务类</a></li>
+    <li><a href="#StartingAService">启动服务</a></li>
+    <li><a href="#Stopping">停止服务</a></li>
+  </ol>
+</li>
+<li><a href="#CreatingBoundService">创建绑定服务</a></li>
+<li><a href="#Notifications">向用户发送通知</a></li>
+<li><a href="#Foreground">在前台运行服务</a></li>
+<li><a href="#Lifecycle">管理服务生命周期</a>
+<ol>
+  <li><a href="#LifecycleCallbacks">实现生命周期回调</a></li>
+</ol>
+</li>
+</ol>
+
+<h2>关键类</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.app.IntentService}</li>
+</ol>
+
+<h2>示例</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.html">{@code
+      ServiceStartArguments}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>另请参阅</h2>
+<ol>
+<li><a href="{@docRoot}guide/components/bound-services.html">绑定服务</a></li>
+</ol>
+
+</div>
+
+
+<p>{@link android.app.Service}
+是一个可以在后台执行长时间运行操作而不使用用户界面的应用组件。服务可由其他应用组件启动，而且即使用户切换到其他应用，服务仍将在后台继续运行。
+
+此外，组件可以绑定到服务，以与之进行交互，甚至是执行进程间通信 (IPC)。
+例如，服务可以处理网络事务、播放音乐，执行文件 I/O
+或与内容提供程序交互，而所有这一切均可在后台进行。
+</p>
+
+<p>服务基本上分为两种形式：</p>
+
+<dl>
+  <dt>启动</dt>
+  <dd>当应用组件（如 Activity）通过调用
+{@link android.content.Context#startService startService()} 启动服务时，服务即处于“启动”状态。一旦启动，服务即可在后台无限期运行，即使启动服务的组件已被销毁也不受影响。
+已启动的服务通常是执行单一操作，而且不会将结果返回给调用方。例如，它可能通过网络下载或上传文件。
+
+操作完成后，服务会自行停止运行。
+</dd>
+  <dt>绑定</dt>
+  <dd>当应用组件通过调用 {@link
+android.content.Context#bindService bindService()} 绑定到服务时，服务即处于“绑定”状态。绑定服务提供了一个客户端-服务器接口，允许组件与服务进行交互、发送请求、获取结果，甚至是利用进程间通信 (IPC)
+跨进程执行这些操作。
+仅当与另一个应用组件绑定时，绑定服务才会运行。
+多个组件可以同时绑定到该服务，但全部取消绑定后，该服务即会被销毁。
+</dd>
+</dl>
+
+<p>虽然本文档是分开概括讨论这两种服务，但是您的服务可以同时以这两种方式运行，也就是说，它既可以是启动服务（以无限期运行），也允许绑定。问题只是在于您是否实现了一组回调方法：{@link
+android.app.Service#onStartCommand onStartCommand()}（允许组件启动服务）和 {@link
+android.app.Service#onBind onBind()}（允许绑定服务）。
+
+</p>
+
+<p>无论应用是处于启动状态还是绑定状态，抑或处于启动并且绑定状态，任何应用组件均可像使用活动那样通过调用 {@link android.content.Intent} 来使用服务（即使此服务来自另一应用）。
+
+不过，您可以通过清单文件将服务声明为私有服务，并阻止其他应用访问。
+<a href="#Declaring">使用清单文件声明服务</a>部分将对此做更详尽的阐述。
+
+</p>
+
+<p class="caution"><strong>注意：</strong>服务在其托管进程的主线程中运行，它既<strong>不</strong>创建自己的线程，也<strong>不</strong>在单独的进程中运行（除非另行指定）。
+
+这意味着，如果服务将执行任何
+CPU 密集型工作或阻止性操作（例如 MP3
+播放或联网），则应在服务内创建新线程来完成这项工作。通过使用单独的线程，可以降低发生“应用无响应”(ANR)
+错误的风险，而应用的主线程仍可继续专注于运行用户与 Activity 之间的交互。
+</p>
+
+
+<h2 id="Basics">基础知识</h2>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>您应使用服务还是线程？</h3>
+  <p>简单地说，服务是一种即使用户未与应用交互，但它仍可以在后台运行的组件。
+因此，您应仅在必要时才创建服务。
+</p>
+  <p>如需在主线程外部执行工作，不过只是在用户正在与应用交互时才有此需要，则应创建新线程而非服务。
+例如，如果您只是想在 Activity 运行的同时播放一些音乐，则可在
+{@link android.app.Activity#onCreate onCreate()}
+中创建线程，在 {@link
+android.app.Activity#onStart onStart()} 中启动线程，然后在 {@link android.app.Activity#onStop
+onStop()} 中停止线程。您还可以考虑使用
+{@link android.os.AsyncTask} 或 {@link android.os.HandlerThread}，而非传统的 {@link java.lang.Thread} 类。如需了解有关线程的详细信息，请参阅<a href="{@docRoot}guide/components/processes-and-threads.html#Threads">进程和线程</a>文档。
+</p>
+  <p>请记住，如果您确实要使用服务，则默认情况下，它仍会在应用的主线程中运行，因此，如果服务执行的是密集型或阻止性操作，则您仍应在服务内创建新线程。
+
+</p>
+</div>
+</div>
+
+<p>要创建服务，您必须创建
+{@link android.app.Service} 的子类（或使用它的一个现有子类）。在实现中，您需要重写一些回调方法，以处理服务生命周期的某些关键方面并提供一种机制将组件绑定到服务（如适用）。
+
+应重写的最重要的回调方法包括：</p>
+
+<dl>
+  <dt>{@link android.app.Service#onStartCommand onStartCommand()}</dt>
+    <dd>当另一个组件（如 Activity）通过调用
+{@link android.content.Context#startService
+startService()} 请求启动服务时，系统将调用此方法。一旦执行此方法，服务即会启动并可在后台无限期运行。
+如果您实现此方法，则在服务工作完成后，需要由您通过调用
+{@link android.app.Service#stopSelf stopSelf()} 或 {@link
+android.content.Context#stopService stopService()} 来停止服务。（如果您只想提供绑定，则无需实现此方法。）
+</dd>
+  <dt>{@link android.app.Service#onBind onBind()}</dt>
+    <dd>当另一个组件想通过调用 {@link android.content.Context#bindService
+bindService()}
+与服务绑定（例如执行 RPC）时，系统将调用此方法。在此方法的实现中，您必须通过返回
+{@link android.os.IBinder} 提供一个接口，供客户端用来与服务进行通信。请务必实现此方法，但如果您并不希望允许绑定，则应返回 null。
+</dd>
+  <dt>{@link android.app.Service#onCreate()}</dt>
+    <dd>首次创建服务时，系统将调用此方法来执行一次性设置程序（在调用
+{@link android.app.Service#onStartCommand onStartCommand()} 或
+{@link android.app.Service#onBind onBind()} 之前）。如果服务已在运行，则不会调用此方法。
+</dd>
+  <dt>{@link android.app.Service#onDestroy()}</dt>
+    <dd>当服务不再使用且将被销毁时，系统将调用此方法。服务应该实现此方法来清理所有资源，如线程、注册的侦听器、接收器等。
+
+这是服务接收的最后一个调用。</dd>
+</dl>
+
+<p>如果组件通过调用 {@link
+android.content.Context#startService startService()} 启动服务（这会导致对 {@link
+android.app.Service#onStartCommand onStartCommand()} 的调用），则服务将一直运行，直到服务使用
+{@link android.app.Service#stopSelf()}
+自行停止运行，或由其他组件通过调用 {@link android.content.Context#stopService stopService()} 停止它为止。</p>
+
+<p>如果组件是通过调用
+{@link android.content.Context#bindService bindService()} 来创建服务（且<em>未</em>调用
+{@link
+android.app.Service#onStartCommand onStartCommand()}），则服务只会在该组件与其绑定时运行。一旦该服务与所有客户端之间的绑定全部取消，系统便会销毁它。
+</p>
+
+<p>仅当内存过低且必须回收系统资源以供具有用户焦点的 Activity 使用时，Android
+系统才会强制停止服务。如果将服务绑定到具有用户焦点的 Activity，则它不太可能会终止；如果将服务声明为<a href="#Foreground">在前台运行</a>（稍后讨论），则它几乎永远不会终止。或者，如果服务已启动并要长时间运行，则系统会随着时间的推移降低服务在后台任务列表中的位置，而服务也将随之变得非常容易被终止；如果服务是启动服务，则您必须将其设计为能够妥善处理系统对它的重启。
+
+
+
+
+如果系统终止服务，那么一旦资源变得再次可用，系统便会重启服务（不过这还取决于从
+{@link
+android.app.Service#onStartCommand onStartCommand()} 返回的值，本文稍后会对此加以讨论）。如需了解有关系统会在何时销毁服务的详细信息，请参阅<a href="{@docRoot}guide/components/processes-and-threads.html">进程和线程</a>文档。
+
+</p>
+
+<p>在下文中，您将了解如何创建各类服务以及如何从其他应用组件使用服务。
+</p>
+
+
+
+<h3 id="Declaring">使用清单文件声明服务</h3>
+
+<p>如同 Activity（以及其他组件）一样，您必须在应用的清单文件中声明所有服务。
+</p>
+
+<p>要声明服务，请添加 <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a>
+元素作为 <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>
+元素的子元素。例如：</p>
+
+<pre>
+&lt;manifest ... &gt;
+  ...
+  &lt;application ... &gt;
+      &lt;service android:name=".ExampleService" /&gt;
+      ...
+  &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>如需了解有关使用清单文件声明服务的详细信息，请参阅
+<a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 元素参考文档。</p>
+
+<p>您还可将其他属性包括在
+<a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a>
+元素中，以定义一些特性，如启动服务及其运行所在进程所需的权限。<a href="{@docRoot}guide/topics/manifest/service-element.html#nm">{@code android:name}</a>
+属性是唯一必需的属性，用于指定服务的类名。应用一旦发布，即不应更改此类名，如若不然，可能会存在因依赖显式 Intent 启动或绑定服务而破坏代码的风险（请阅读博客文章<a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">Things That Cannot Change</a>[不能更改的内容]）。
+
+
+
+
+<p>为了确保应用的安全性，<strong>请始终使用显式 Intent 启动或绑定 {@link android.app.Service}</strong>，且不要为服务声明 Intent 过滤器。
+启动哪个服务存在一定的不确定性，而如果对这种不确定性的考量非常有必要，则可为服务提供 Intent 过滤器并从
+{@link
+android.content.Intent}
+中排除相应的组件名称，但随后必须使用 {@link
+android.content.Intent#setPackage setPackage()}
+ 方法设置 Intent 的软件包，这样可以充分消除目标服务的不确定性。</p>
+
+<p>此外，还可以通过添加
+<a href="{@docRoot}guide/topics/manifest/service-element.html#exported">{@code android:exported}</a>
+属性并将其设置为 {@code "false"}，确保服务仅适用于您的应用。这可以有效阻止其他应用启动您的服务，即便在使用显式 Intent 时也如此。
+</p>
+
+
+
+
+<h2 id="CreatingStartedService">创建启动服务</h2>
+
+<p>启动服务由另一个组件通过调用 {@link
+android.content.Context#startService startService()} 启动，这会导致调用服务的
+{@link android.app.Service#onStartCommand onStartCommand()} 方法。</p>
+
+<p>服务启动之后，其生命周期即独立于启动它的组件，并且可以在后台无限期地运行，即使启动服务的组件已被销毁也不受影响。
+
+因此，服务应通过调用
+{@link android.app.Service#stopSelf stopSelf()} 结束工作来自行停止运行，或者由另一个组件通过调用
+{@link android.content.Context#stopService stopService()} 来停止它。</p>
+
+<p>应用组件（如 Activity）可以通过调用 {@link
+android.content.Context#startService startService()} 方法并传递 {@link android.content.Intent} 对象
+（指定服务并包含待使用服务的所有数据）来启动服务。服务通过
+{@link android.app.Service#onStartCommand
+onStartCommand()} 方法接收此 {@link android.content.Intent}。</p>
+
+<p>例如，假设某 Activity 需要将一些数据保存到在线数据库中。该 Activity 可以启动一个协同服务，并通过向 
+{@link
+android.content.Context#startService startService()} 传递一个 Intent，为该服务提供要保存的数据。服务通过
+{@link
+android.app.Service#onStartCommand onStartCommand()} 接收 Intent，连接到 Internet 并执行数据库事务。事务完成之后，服务会自行停止运行并随即被销毁。
+</p>
+
+<p class="caution"><strong>注意：</strong>默认情况下，服务与服务声明所在的应用运行于同一进程，而且运行于该应用的主线程中。
+因此，如果服务在用户与来自同一应用的 Activity 进行交互时执行密集型或阻止性操作，则会降低 Activity 性能。
+
+为了避免影响应用性能，您应在服务内启动新线程。
+</p>
+
+<p>从传统上讲，您可以扩展两个类来创建启动服务：</p>
+<dl>
+  <dt>{@link android.app.Service}</dt>
+  <dd>这是适用于所有服务的基类。扩展此类时，必须创建一个用于执行所有服务工作的新线程，因为默认情况下，服务将使用应用的主线程，这会降低应用正在运行的所有 Activity 的性能。
+
+
+</dd>
+  <dt>{@link android.app.IntentService}</dt>
+  <dd>这是
+{@link android.app.Service} 的子类，它使用工作线程逐一处理所有启动请求。如果您不要求服务同时处理多个请求，这是最好的选择。
+您只需实现 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}
+方法即可，该方法会接收每个启动请求的 Intent，使您能够执行后台工作。</dd>
+</dl>
+
+<p>下文介绍如何使用其中任一类实现服务。
+</p>
+
+
+<h3 id="ExtendingIntentService">扩展 IntentService 类</h3>
+
+<p>由于大多数启动服务都不必同时处理多个请求（实际上，这种多线程情况可能很危险），因此使用
+{@link android.app.IntentService}
+类实现服务也许是最好的选择。</p>
+
+<p>{@link android.app.IntentService} 执行以下操作：</p>
+
+<ul>
+  <li>创建默认的工作线程，用于在应用的主线程外执行传递给 {@link
+android.app.Service#onStartCommand onStartCommand()}
+的所有 Intent。</li>
+  <li>创建工作队列，用于将一个 Intent 逐一传递给 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}
+实现，这样您就永远不必担心多线程问题。</li>
+  <li>在处理完所有启动请求后停止服务，因此您永远不必调用
+{@link android.app.Service#stopSelf}。</li>
+  <li>提供
+{@link android.app.IntentService#onBind onBind()} 的默认实现（返回 null）。</li>
+  <li>提供 {@link android.app.IntentService#onStartCommand
+onStartCommand()} 的默认实现，可将 Intent 依次发送到工作队列和 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} 实现。</li>
+</ul>
+
+<p>综上所述，您只需实现
+{@link
+android.app.IntentService#onHandleIntent onHandleIntent()} 来完成客户端提供的工作即可。（不过，您还需要为服务提供小型构造函数。）</p>
+
+<p>以下是 {@link android.app.IntentService} 的实现示例：</p>
+
+<pre>
+public class HelloIntentService extends IntentService {
+
+  /**
+   * A constructor is required, and must call the super {@link android.app.IntentService#IntentService}
+   * constructor with a name for the worker thread.
+   */
+  public HelloIntentService() {
+      super("HelloIntentService");
+  }
+
+  /**
+   * The IntentService calls this method from the default worker thread with
+   * the intent that started the service. When this method returns, IntentService
+   * stops the service, as appropriate.
+   */
+  &#64;Override
+  protected void onHandleIntent(Intent intent) {
+      // Normally we would do some work here, like download a file.
+      // For our sample, we just sleep for 5 seconds.
+      long endTime = System.currentTimeMillis() + 5*1000;
+      while (System.currentTimeMillis() &lt; endTime) {
+          synchronized (this) {
+              try {
+                  wait(endTime - System.currentTimeMillis());
+              } catch (Exception e) {
+              }
+          }
+      }
+  }
+}
+</pre>
+
+<p>您只需要一个构造函数和一个 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} 实现即可。</p>
+
+<p>如果您决定还重写其他回调方法（如 {@link
+android.app.IntentService#onCreate onCreate()}、{@link
+android.app.IntentService#onStartCommand onStartCommand()} 或 {@link
+android.app.IntentService#onDestroy onDestroy()}），请确保调用超类实现，以便
+{@link android.app.IntentService} 能够妥善处理工作线程的生命周期。</p>
+
+<p>例如，{@link android.app.IntentService#onStartCommand onStartCommand()}
+必须返回默认实现（即，如何将 Intent 传递给 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}）：</p>
+
+<pre>
+&#64;Override
+public int onStartCommand(Intent intent, int flags, int startId) {
+    Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+    return super.onStartCommand(intent,flags,startId);
+}
+</pre>
+
+<p>除
+{@link android.app.IntentService#onHandleIntent onHandleIntent()} 之外，您无需从中调用超类的唯一方法就是 {@link android.app.IntentService#onBind
+onBind()}（仅当服务允许绑定时，才需要实现该方法）。</p>
+
+<p>在下一部分中，您将了解如何在扩展
+{@link android.app.Service}
+基类时实现同类服务。该基类包含更多代码，但如需同时处理多个启动请求，则更适合使用该基类。</p>
+
+
+<h3 id="ExtendingService">扩展服务类</h3>
+
+<p>正如上一部分中所述，使用
+{@link android.app.IntentService} 显著简化了启动服务的实现。但是，若要求服务执行多线程（而不是通过工作队列处理启动请求），则可扩展
+{@link android.app.Service}
+类来处理每个 Intent。</p>
+
+<p>为了便于比较，以下提供了 {@link
+android.app.Service} 类实现的代码示例，该类执行的工作与上述使用 {@link
+android.app.IntentService} 的示例完全相同。也就是说，对于每个启动请求，它均使用工作线程执行作业，且每次仅处理一个请求。
+</p>
+
+<pre>
+public class HelloService extends Service {
+  private Looper mServiceLooper;
+  private ServiceHandler mServiceHandler;
+
+  // Handler that receives messages from the thread
+  private final class ServiceHandler extends Handler {
+      public ServiceHandler(Looper looper) {
+          super(looper);
+      }
+      &#64;Override
+      public void handleMessage(Message msg) {
+          // Normally we would do some work here, like download a file.
+          // For our sample, we just sleep for 5 seconds.
+          long endTime = System.currentTimeMillis() + 5*1000;
+          while (System.currentTimeMillis() &lt; endTime) {
+              synchronized (this) {
+                  try {
+                      wait(endTime - System.currentTimeMillis());
+                  } catch (Exception e) {
+                  }
+              }
+          }
+          // Stop the service using the startId, so that we don't stop
+          // the service in the middle of handling another job
+          stopSelf(msg.arg1);
+      }
+  }
+
+  &#64;Override
+  public void onCreate() {
+    // Start up the thread running the service.  Note that we create a
+    // separate thread because the service normally runs in the process's
+    // main thread, which we don't want to block.  We also make it
+    // background priority so CPU-intensive work will not disrupt our UI.
+    HandlerThread thread = new HandlerThread("ServiceStartArguments",
+            Process.THREAD_PRIORITY_BACKGROUND);
+    thread.start();
+
+    // Get the HandlerThread's Looper and use it for our Handler
+    mServiceLooper = thread.getLooper();
+    mServiceHandler = new ServiceHandler(mServiceLooper);
+  }
+
+  &#64;Override
+  public int onStartCommand(Intent intent, int flags, int startId) {
+      Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+
+      // For each start request, send a message to start a job and deliver the
+      // start ID so we know which request we're stopping when we finish the job
+      Message msg = mServiceHandler.obtainMessage();
+      msg.arg1 = startId;
+      mServiceHandler.sendMessage(msg);
+
+      // If we get killed, after returning from here, restart
+      return START_STICKY;
+  }
+
+  &#64;Override
+  public IBinder onBind(Intent intent) {
+      // We don't provide binding, so return null
+      return null;
+  }
+
+  &#64;Override
+  public void onDestroy() {
+    Toast.makeText(this, "service done", Toast.LENGTH_SHORT).show();
+  }
+}
+</pre>
+
+<p>正如您所见，与使用 {@link android.app.IntentService} 相比，这需要执行更多工作。</p>
+
+<p>但是，因为是由您自己处理对 {@link android.app.Service#onStartCommand
+onStartCommand()} 的每个调用，因此可以同时执行多个请求。此示例并未这样做，但如果您希望如此，则可为每个请求创建一个新线程，然后立即运行这些线程（而不是等待上一个请求完成）。
+
+</p>
+
+<p>请注意，{@link android.app.Service#onStartCommand onStartCommand()}
+方法必须返回整型数。整型数是一个值，用于描述系统应该如何在服务终止的情况下继续运行服务（如上所述，{@link
+android.app.IntentService}
+的默认实现将为您处理这种情况，不过您可以对其进行修改）。从
+{@link android.app.Service#onStartCommand onStartCommand()}
+返回的值必须是以下常量之一：</p>
+
+<dl>
+  <dt>{@link android.app.Service#START_NOT_STICKY}</dt>
+    <dd>如果系统在
+{@link android.app.Service#onStartCommand
+onStartCommand()} 返回后终止服务，则除非有挂起 Intent 要传递，否则系统不会重建服务。<em></em>这是最安全的选项，可以避免在不必要时以及应用能够轻松重启所有未完成的作业时运行服务。
+</dd>
+  <dt>{@link android.app.Service#START_STICKY}</dt>
+    <dd>如果系统在
+{@link android.app.Service#onStartCommand
+onStartCommand()} 返回后终止服务，则会重建服务并调用
+{@link
+android.app.Service#onStartCommand onStartCommand()}，但绝对不会重新传递最后一个 Intent。相反，除非有挂起 Intent 要启动服务（在这种情况下，将传递这些 Intent ），否则系统会通过空 Intent 调用
+{@link android.app.Service#onStartCommand onStartCommand()}。<em></em>这适用于不执行命令、但无限期运行并等待作业的媒体播放器（或类似服务）。
+</dd>
+  <dt>{@link android.app.Service#START_REDELIVER_INTENT}</dt>
+    <dd>如果系统在 {@link android.app.Service#onStartCommand
+onStartCommand()} 返回后终止服务，则会重建服务，并通过传递给服务的最后一个 Intent 调用
+{@link
+android.app.Service#onStartCommand onStartCommand()}。任何挂起 Intent 均依次传递。这适用于主动执行应该立即恢复的作业（例如下载文件）的服务。
+</dd>
+</dl>
+<p>有关这些返回值的更多详细信息，请查阅每个常量链接的参考文档。
+</p>
+
+
+
+<h3 id="StartingAService">启动服务</h3>
+
+<p>您可以通过将
+{@link android.content.Intent}（指定要启动的服务）传递给 {@link
+android.content.Context#startService startService()}，从 Activity 或其他应用组件启动服务。Android 系统调用服务的 {@link
+android.app.Service#onStartCommand onStartCommand()} 方法，并向其传递 {@link
+android.content.Intent}。（切勿直接调用 {@link android.app.Service#onStartCommand
+onStartCommand()}。）</p>
+
+<p>例如，Activity 可以结合使用显式 Intent 与 {@link android.content.Context#startService
+startService()}，启动上文中的示例服务 ({@code
+HelloSevice})：</p>
+
+<pre>
+Intent intent = new Intent(this, HelloService.class);
+startService(intent);
+</pre>
+
+<p>{@link android.content.Context#startService startService()} 方法将立即返回，且
+Android 系统调用服务的 {@link android.app.Service#onStartCommand
+onStartCommand()} 方法。如果服务尚未运行，则系统会先调用 {@link
+android.app.Service#onCreate onCreate()}，然后再调用 {@link android.app.Service#onStartCommand
+onStartCommand()}。</p>
+
+<p>如果服务亦未提供绑定，则使用
+{@link
+android.content.Context#startService startService()} 传递的 Intent 是应用组件与服务之间唯一的通信模式。但是，如果您希望服务返回结果，则启动服务的客户端可以为广播创建一个
+{@link android.app.PendingIntent}
+（使用 {@link android.app.PendingIntent#getBroadcast getBroadcast()}），并通过启动服务的
+{@link android.content.Intent} 传递给服务。然后，服务就可以使用广播传递结果。
+</p>
+
+<p>多个服务启动请求会导致多次对服务的
+{@link android.app.Service#onStartCommand onStartCommand()} 进行相应的调用。但是，要停止服务，只需一个服务停止请求（使用
+{@link android.app.Service#stopSelf stopSelf()} 或 {@link
+android.content.Context#stopService stopService()}）即可。</p>
+
+
+<h3 id="Stopping">停止服务</h3>
+
+<p>启动服务必须管理自己的生命周期。也就是说，除非系统必须回收内存资源，否则系统不会停止或销毁服务，而且服务在
+{@link android.app.Service#onStartCommand onStartCommand()}
+返回后会继续运行。因此，服务必须通过调用
+{@link android.app.Service#stopSelf stopSelf()} 自行停止运行，或者由另一个组件通过调用
+{@link android.content.Context#stopService stopService()} 来停止它。</p>
+
+<p>一旦请求使用 {@link android.app.Service#stopSelf stopSelf()}
+或 {@link
+android.content.Context#stopService stopService()} 停止服务，系统就会尽快销毁服务。</p>
+
+<p>但是，如果服务同时处理多个
+{@link
+android.app.Service#onStartCommand onStartCommand()}
+请求，则您不应在处理完一个启动请求之后停止服务，因为您可能已经收到了新的启动请求（在第一个请求结束时停止服务会终止第二个请求）。为了避免这一问题，您可以使用
+{@link android.app.Service#stopSelf(int)}
+确保服务停止请求始终基于最近的启动请求。也就说，在调用 {@link
+android.app.Service#stopSelf(int)} 时，传递与停止请求的 ID 对应的启动请求的 ID（传递给 {@link android.app.Service#onStartCommand onStartCommand()}
+的 <code>startId</code>）
+。然后，如果在您能够调用 {@link
+android.app.Service#stopSelf(int)} 之前服务收到了新的启动请求， ID 就不匹配，服务也就不会停止。</p>
+
+<p class="caution"><strong>注意：</strong>为了避免浪费系统资源和消耗电池电量，应用必须在工作完成之后停止其服务。
+如有必要，其他组件可以通过调用
+{@link
+android.content.Context#stopService stopService()} 来停止服务。即使为服务启用了绑定，一旦服务收到对
+{@link
+android.app.Service#onStartCommand onStartCommand()} 的调用，您始终仍须亲自停止服务。</p>
+
+<p>如需了解有关服务生命周期的详细信息，请参阅下面有关<a href="#Lifecycle">管理服务生命周期</a>的部分。</p>
+
+
+
+<h2 id="CreatingBoundService">创建绑定服务</h2>
+
+<p>绑定服务允许应用组件通过调用 {@link
+android.content.Context#bindService bindService()} 与其绑定，以便创建长期连接（通常不允许组件通过调用
+{@link
+android.content.Context#startService startService()} 来启动它）。<em></em></p>
+
+<p>如需与 Activity 和其他应用组件中的服务进行交互，或者需要通过进程间通信 (IPC) 向其他应用公开某些应用功能，则应创建绑定服务。
+
+</p>
+
+<p>要创建绑定服务，必须实现
+{@link
+android.app.Service#onBind onBind()} 回调方法以返回 {@link android.os.IBinder}，用于定义与服务通信的接口。然后，其他应用组件可以调用
+{@link android.content.Context#bindService bindService()}
+来检索该接口，并开始对服务调用方法。服务只用于与其绑定的应用组件，因此如果没有组件绑定到服务，则系统会销毁服务（您不必按通过
+{@link android.app.Service#onStartCommand onStartCommand()}
+启动的服务那样来停止绑定服务）。
+<em></em></p>
+
+<p>要创建绑定服务，首先必须定义指定客户端如何与服务通信的接口。
+服务与客户端之间的这个接口必须是
+{@link android.os.IBinder} 的实现，并且服务必须从
+{@link android.app.Service#onBind
+onBind()} 回调方法返回它。一旦客户端收到
+{@link android.os.IBinder}，即可开始通过该接口与服务进行交互。</p>
+
+<p>多个客户端可以同时绑定到服务。客户端完成与服务的交互后，会调用
+{@link android.content.Context#unbindService unbindService()} 取消绑定。一旦没有客户端绑定到该服务，系统就会销毁它。
+</p>
+
+<p>有多种方法实现绑定服务，其实现比启动服务更为复杂，因此绑定服务将在有关<a href="{@docRoot}guide/components/bound-services.html">绑定服务</a>的单独文档中专门讨论。
+
+</p>
+
+
+
+<h2 id="Notifications">向用户发送通知</h2>
+
+<p>一旦运行起来，服务即可使用 <a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">Toast 通知</a>或<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">状态栏通知</a>来通知用户所发生的事件。</p>
+
+<p>Toast 通知是指出现在当前窗口的表面、片刻随即消失不见的消息，而状态栏通知则在状态栏提供内含消息的图标，用户可以选择该图标来采取操作（例如启动 Activity）。
+
+</p>
+
+<p>通常，当某些后台工作已经完成（例如文件下载完成）且用户现在可以对其进行操作时，状态栏通知是最佳方法。
+
+当用户从展开视图中选定通知时，通知即可启动 Activity（例如查看已下载的文件）。
+</p>
+
+<p>如需了解详细信息，请参阅
+<a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">Toast 通知</a>或<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">状态栏通知</a>开发者指南。</p>
+
+
+
+<h2 id="Foreground">在前台运行服务</h2>
+
+<p>前台服务被认为是用户主动意识到的一种服务，因此在内存不足时，系统也不会考虑将其终止。
+前台服务必须为状态栏提供通知，状态栏位于“正在进行”标题下方，这意味着除非服务停止或从前台删除，否则不能清除通知。
+
+
+</p>
+
+<p>例如，应该将从服务播放音乐的音乐播放器设置为在前台运行，这是因为用户明确意识到其操作。
+
+状态栏中的通知可能表示正在播放的歌曲，并允许用户启动 Activity 来与音乐播放器进行交互。
+</p>
+
+<p>要请求让服务运行于前台，请调用 {@link
+android.app.Service#startForeground startForeground()}。此方法取两个参数：唯一标识通知的整型数和状态栏的
+{@link
+android.app.Notification}。例如：</p>
+
+<pre>
+Notification notification = new Notification(R.drawable.icon, getText(R.string.ticker_text),
+        System.currentTimeMillis());
+Intent notificationIntent = new Intent(this, ExampleActivity.class);
+PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
+notification.setLatestEventInfo(this, getText(R.string.notification_title),
+        getText(R.string.notification_message), pendingIntent);
+startForeground(ONGOING_NOTIFICATION_ID, notification);
+</pre>
+
+<p class="caution"><strong>注意：</strong>提供给 {@link
+android.app.Service#startForeground startForeground()} 的整型 ID 不得为 0。</p>
+
+
+<p>要从前台删除服务，请调用
+{@link android.app.Service#stopForeground stopForeground()}。此方法取一个布尔值，指示是否也删除状态栏通知。
+此方法绝对不会停止服务。
+<em></em>但是，如果您在服务正在前台运行时将其停止，则通知也会被删除。
+</p>
+
+<p>如需了解有关通知的详细信息，请参阅<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">创建状态栏通知</a>。
+</p>
+
+
+
+<h2 id="Lifecycle">管理服务生命周期</h2>
+
+<p>服务的生命周期比 Activity 的生命周期要简单得多。但是，密切关注如何创建和销毁服务反而更加重要，因为服务可以在用户没有意识到的情况下运行于后台。
+
+</p>
+
+<p>服务生命周期（从创建到销毁）可以遵循两条不同的路径：
+</p>
+
+<ul>
+<li>启动服务
+  <p>该服务在其他组件调用 {@link
+android.content.Context#startService startService()} 时创建，然后无限期运行，且必须通过调用
+{@link
+android.app.Service#stopSelf() stopSelf()} 来自行停止运行。此外，其他组件也可以通过调用
+{@link android.content.Context#stopService
+stopService()} 来停止服务。服务停止后，系统会将其销毁。</p></li>
+
+<li>绑定服务
+  <p>该服务在另一个组件（客户端）调用 {@link
+android.content.Context#bindService bindService()} 时创建。然后，客户端通过
+{@link android.os.IBinder} 接口与服务进行通信。客户端可以通过调用
+{@link android.content.Context#unbindService unbindService()} 关闭连接。多个客户端可以绑定到相同服务，而且当所有绑定全部取消后，系统即会销毁该服务。
+（服务不必自行停止运行。）
+<em></em></p></li>
+</ul>
+
+<p>这两条路径并非完全独立。也就是说，您可以绑定到已经使用
+{@link android.content.Context#startService startService()} 启动的服务。例如，可以通过使用
+{@link android.content.Intent}（标识要播放的音乐）调用 {@link android.content.Context#startService
+startService()} 来启动后台音乐服务。随后，可能在用户需要稍加控制播放器或获取有关当前播放歌曲的信息时，Activity 可以通过调用
+{@link
+android.content.Context#bindService bindService()}
+绑定到服务。在这种情况下，除非所有客户端均取消绑定，否则 {@link
+android.content.Context#stopService stopService()} 或 {@link android.app.Service#stopSelf
+stopSelf()} 不会真正停止服务。 </p>
+
+
+<h3 id="LifecycleCallbacks">实现生命周期回调</h3>
+
+<p>与 Activity 类似，服务也拥有生命周期回调方法，您可以实现这些方法来监控服务状态的变化并适时执行工作。
+以下框架服务展示了每种生命周期方法：
+</p>
+
+<pre>
+public class ExampleService extends Service {
+    int mStartMode;       // indicates how to behave if the service is killed
+    IBinder mBinder;      // interface for clients that bind
+    boolean mAllowRebind; // indicates whether onRebind should be used
+
+    &#64;Override
+    public void {@link android.app.Service#onCreate onCreate}() {
+        // The service is being created
+    }
+    &#64;Override
+    public int {@link android.app.Service#onStartCommand onStartCommand}(Intent intent, int flags, int startId) {
+        // The service is starting, due to a call to {@link android.content.Context#startService startService()}
+        return <em>mStartMode</em>;
+    }
+    &#64;Override
+    public IBinder {@link android.app.Service#onBind onBind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()}
+        return <em>mBinder</em>;
+    }
+    &#64;Override
+    public boolean {@link android.app.Service#onUnbind onUnbind}(Intent intent) {
+        // All clients have unbound with {@link android.content.Context#unbindService unbindService()}
+        return <em>mAllowRebind</em>;
+    }
+    &#64;Override
+    public void {@link android.app.Service#onRebind onRebind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()},
+        // after onUnbind() has already been called
+    }
+    &#64;Override
+    public void {@link android.app.Service#onDestroy onDestroy}() {
+        // The service is no longer used and is being destroyed
+    }
+}
+</pre>
+
+<p class="note"><strong>注：</strong>与 Activity 生命周期回调方法不同，您不需要调用这些回调方法的超类实现。
+<em></em></p>
+
+<img src="{@docRoot}images/service_lifecycle.png" alt="" />
+<p class="img-caption"><strong>图 2. </strong>服务生命周期左图显示了使用
+{@link android.content.Context#startService
+startService()} 所创建的服务的生命周期，右图显示了使用
+{@link android.content.Context#bindService bindService()} 所创建的服务的生命周期。</p>
+
+<p>通过实现这些方法，您可以监控服务生命周期的两个嵌套循环： </p>
+
+<ul>
+<li>服务的<strong>整个生命周期</strong>从调用 {@link
+android.app.Service#onCreate onCreate()} 开始起，到 {@link
+android.app.Service#onDestroy} 返回时结束。与 Activity 类似，服务也在
+{@link android.app.Service#onCreate onCreate()} 中完成初始设置，并在 {@link
+android.app.Service#onDestroy onDestroy()} 中释放所有剩余资源。例如，音乐播放服务可以在 {@link
+android.app.Service#onCreate onCreate()} 中创建用于播放音乐的线程，然后在 {@link
+android.app.Service#onDestroy onDestroy()} 中停止该线程。
+
+
+<p>无论服务是通过 {@link android.content.Context#startService startService()}
+还是 {@link
+android.content.Context#bindService bindService()} 创建，都会为所有服务调用 {@link android.app.Service#onCreate onCreate()} 和 {@link android.app.Service#onDestroy
+onDestroy()} 方法。</p></li>
+
+<li>服务的<strong>有效生命周期</strong>从调用 {@link
+android.app.Service#onStartCommand onStartCommand()} 或 {@link android.app.Service#onBind onBind()}
+方法开始。每种方法均有 {@link
+android.content.Intent} 对象，该对象分别传递到 {@link android.content.Context#startService
+startService()} 或 {@link android.content.Context#bindService bindService()}。
+<p>对于启动服务，有效生命周期与整个生命周期同时结束（即便是在
+{@link android.app.Service#onStartCommand
+onStartCommand()} 返回之后，服务仍然处于活动状态）。对于绑定服务，有效生命周期在 {@link
+android.app.Service#onUnbind onUnbind()} 返回时结束。</p>
+</li>
+</ul>
+
+<p class="note"><strong>注：</strong>尽管启动服务是通过调用
+{@link android.app.Service#stopSelf stopSelf()} 或 {@link
+android.content.Context#stopService stopService()} 来停止，但是该服务并无相应的回调（没有 {@code onStop()}
+回调）。因此，除非服务绑定到客户端，否则在服务停止时，系统会将其销毁&mdash;{@link
+android.app.Service#onDestroy onDestroy()} 是接收到的唯一回调。
+</p>
+
+<p>图 2 说明了服务的典型回调方法。尽管该图分开介绍通过
+{@link android.content.Context#startService startService()} 创建的服务和通过
+{@link android.content.Context#bindService bindService()}
+创建的服务，但是请记住，不管启动方式如何，任何服务均有可能允许客户端与其绑定。因此，最初使用
+{@link android.app.Service#onStartCommand
+onStartCommand()}（通过客户端调用 {@link android.content.Context#startService startService()}）启动的服务仍可接收对
+{@link android.app.Service#onBind onBind()} 的调用（当客户端调用
+{@link android.content.Context#bindService bindService()} 时）。</p>
+
+<p>如需了解有关创建提供绑定的服务的详细信息，请参阅<a href="{@docRoot}guide/components/bound-services.html">绑定服务</a>文档，该文档的<a href="{@docRoot}guide/components/bound-services.html#Lifecycle">管理绑定服务的生命周期</a>部分提供了有关
+{@link android.app.Service#onRebind onRebind()}
+回调方法的更多信息。
+</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>To learn how to query data from the system or other applications (such as contacts or media
+stored on the device), continue with the <b><a
+href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a></b>
+document.</p>
+-->
diff --git a/docs/html-intl/intl/zh-cn/guide/components/tasks-and-back-stack.jd b/docs/html-intl/intl/zh-cn/guide/components/tasks-and-back-stack.jd
new file mode 100644
index 0000000..07fdf6e
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/components/tasks-and-back-stack.jd
@@ -0,0 +1,578 @@
+page.title=任务和返回栈
+parent.title=Activity
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文内容</h2>
+<ol>
+<li><a href="#ActivityState">保存 Activity 状态</a></li></li>
+<li><a href="#ManagingTasks">管理任务</a>
+  <ol>
+    <li><a href="#TaskLaunchModes">定义启动模式</a></li>
+    <li><a href="#Affinities">处理关联</a></li>
+    <li><a href="#Clearing">清理返回栈</a></li>
+    <li><a href="#Starting">启动任务</a></li>
+  </ol>
+</li>
+</ol>
+
+<h2>文章</h2>
+<ol>
+  <li><a href="http://android-developers.blogspot.com/2010/04/multitasking-android-way.html">
+Android 多任务运行机制</a></li>
+</ol>
+
+<h2>另请参阅</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/navigation.html">Android
+设计：导航</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}
+清单文件元素</a></li>
+  <li><a href="{@docRoot}guide/components/recents.html">概览屏幕</a></li>
+</ol>
+</div>
+</div>
+
+
+<p>应用通常包含多个<a href="{@docRoot}guide/components/activities.html">Activity</a>。每个 Activity 均应围绕用户可以执行的特定操作设计，并且能够启动其他 Activity。
+
+例如，电子邮件应用可能有一个 Activity 显示新邮件的列表。用户选择某邮件时，会打开一个新 Activity 以查看该邮件。
+</p>
+
+<p>一个 Activity 甚至可以启动设备上其他应用中存在的 Activity。例如，如果应用想要发送电子邮件，则可将 Intent 定义为执行“发送”操作并加入一些数据，如电子邮件地址和电子邮件。
+
+然后，系统将打开其他应用中声明自己处理此类
+ Intent 的 Activity。在这种情况下， Intent 
+是要发送电子邮件，因此将启动电子邮件应用的“撰写”Activity（如果多个 Activity 支持相同
+ Intent，则系统会让用户选择要使用的 Activity）。发送电子邮件时，Activity 将恢复，看起来好像电子邮件 Activity 是您的应用的一部分。
+即使这两个 Activity 可能来自不同的应用，但是
+Android 仍会将 Activity 保留在相同的任务中，以维护这种无缝的用户体验。<em></em>
+</p>
+
+<p>任务是指在执行特定作业时与用户交互的一系列 Activity。
+这些 Activity 按照各自的打开顺序排列在堆栈（即“返回栈”）中。<em></em>
+</p>
+
+<!-- SAVE FOR WHEN THE FRAGMENT DOC IS ADDED
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h3>Adding fragments to a task's back stack</h3>
+
+<p>Your activity can also include {@link android.app.Fragment}s to the back stack. For example,
+suppose you have a two-pane layout using fragments, one of which is a list view (fragment A) and the
+other being a layout to display an item from the list (fragment B). When the user selects an item
+from the list, fragment B is replaced by a new fragment (fragment C). In this case, it might be
+desireable for the user to navigate back to reveal fragment B, using the <em>Back</em> button.</p>
+<p>In order to add fragment B to the back stack so that this is possible, you must call {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} before you {@link
+android.app.FragmentTransaction#commit()} the transaction that replaces fragment B with fragment
+C.</p>
+<p>For more information about using fragments and adding them to the back stack, see the {@link
+android.app.Fragment} class documentation.</p>
+
+</div>
+</div>
+-->
+
+<p>设备主屏幕是大多数任务的起点。当用户触摸应用启动器中的图标（或主屏幕上的快捷键）时，该应用的任务将出现在前台。
+
+如果应用不存在任务（应用最近未曾使用），则会创建一个新任务，并且该应用的“主”Activity 将作为堆栈中的根 Activity 打开。
+
+ </p>
+
+<p>当前 Activity 启动另一个 Activity 时，该新 Activity 会被推送到堆栈顶部，成为焦点所在。
+前一个 Activity 仍保留在堆栈中，但是处于停止状态。Activity 停止时，系统会保持其用户界面的当前状态。
+用户按“返回”按钮时，当前 Activity 会从堆栈顶部弹出（Activity 被销毁），而前一个 Activity 恢复执行（恢复其 UI 的前一状态）。<em></em>
+
+
+堆栈中的 Activity 永远不会重新排列，仅推入和弹出堆栈：由当前 Activity 启动时推入堆栈；用户使用“返回”按钮退出时弹出堆栈。<em></em>
+
+因此，返回栈以“后进先出”对象结构运行。
+
+图 1 通过时间线显示 Activity 之间的进度以及每个时间点的当前返回栈，直观呈现了这种行为。
+
+</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack.png" alt="" />
+<p class="img-caption"><strong>图 1. </strong>显示任务中的每个新 Activity 如何向返回栈添加项目。
+用户按“返回”按钮时，当前 Activity 随即被销毁，而前一个 Activity 恢复执行。<em></em>
+
+</p>
+
+
+<p>如果用户继续按“返回”，堆栈中的相应 Activity 就会弹出，以显示前一个 Activity，直到用户返回主屏幕为止（或者，返回任务开始时正在运行的任意 Activity）。<em></em>
+
+
+当所有 Activity 均从堆栈中删除后，任务即不复存在。</p>
+
+<div class="figure" style="width:287px">
+<img src="{@docRoot}images/fundamentals/diagram_multitasking.png" alt="" /> <p
+class="img-caption"><strong>图 2. </strong>两个任务：任务 B
+在前台接收用户交互，而任务 A 则在后台等待恢复。</p>
+</div>
+<div class="figure" style="width:215px">
+  <img src="{@docRoot}images/fundamentals/diagram_multiple_instances.png" alt="" /> <p
+class="img-caption"><strong>图 3. </strong>一个 Activity 将多次实例化。</p>
+</div>
+
+<p>任务是一个有机整体，当用户开始新任务或通过“主页”按钮转到主屏幕时，可以移动到“后台”。<em></em>
+尽管在后台时，该任务中的所有 Activity 全部停止，但是任务的返回栈仍旧不变，也就是说，当另一个任务发生时，该任务仅仅失去焦点而已，如图 2 中所示。
+
+
+然后，任务可以返回到“前台”，用户就能够回到离开时的状态。
+例如，假设当前任务（任务 A）的堆栈中有三个 Activity，即当前 Activity 下方还有两个 Activity。
+用户先按“主页”按钮，然后从应用启动器启动新应用。<em></em>
+
+显示主屏幕时，任务 A
+进入后台。新应用启动时，系统会使用自己的 Activity 堆栈为该应用启动一个任务（任务
+B）。与该应用交互之后，用户再次返回主屏幕并选择最初启动任务 A 的应用。现在，任务 A 出现在前台，其堆栈中的所有三个 Activity 保持不变，而位于堆栈顶部的 Activity 则会恢复执行。
+
+
+
+此时，用户还可以通过转到主屏幕并选择启动该任务的应用（或者，通过从<a href="{@docRoot}guide/components/recents.html">概览屏幕</a>选择该应用的任务）切换回任务 B。这是 Android 系统中的一个多任务示例。
+
+
+
+</p>
+
+<p class="note"><strong>注：</strong>后台可以同时运行多个任务。但是，如果用户同时运行多个后台任务，则系统可能会开始销毁后台 Activity，以回收内存资源，从而导致 Activity 状态丢失。请参阅下面有关<a href="#ActivityState"> Activity 状态</a>的部分。
+
+
+</p>
+
+<p>由于返回栈中的 Activity 永远不会重新排列，因此如果应用允许用户从多个 Activity 中启动特定 Activity，则会创建该 Activity 的新实例并推入堆栈中（而不是将 Activity 的任一先前实例置于顶部）。
+
+
+因此，应用中的一个 Activity 可能会多次实例化（即使 Activity 来自不同的任务），如图 3 所示。
+因此，如果用户使用“返回”按钮向后导航，则会按 Activity 每个实例的打开顺序显示这些实例（每个实例的 UI 状态各不相同）。<em></em>
+
+
+但是，如果您不希望 Activity 多次实例化，则可修改此行为。
+具体操作方法将在后面的<a href="#ManagingTasks">管理任务</a>部分中讨论。</p>
+
+
+<p>Activity 和任务的默认行为总结如下：</p>
+
+<ul>
+  <li>当 Activity A 启动 Activity B 时，Activity A 将会停止，但系统会保留其状态（例如，滚动位置和已输入表单中的文本）。如果用户在处于 Activity B 时按“返回”按钮，则 Activity A 将恢复其状态，继续执行。<em></em>
+
+
+</li>
+  <li>用户通过按“主页”按钮离开任务时，当前 Activity 将停止且其任务会进入后台。<em></em>
+
+系统将保留任务中每个 Activity 的状态。如果用户稍后通过选择开始任务的启动器图标来恢复任务，则任务将出现在前台并恢复执行堆栈顶部的 Activity。
+
+</li>
+  <li>如果用户按“返回”按钮，则当前 Activity 会从堆栈弹出并被销毁。<em></em>
+
+堆栈中的前一个 Activity 恢复执行。销毁 Activity 时，系统绝对不会保留该 Activity 的状态。<em></em>
+</li>
+  <li>即使来自其他任务，Activity 也可以多次实例化。</li>
+</ul>
+
+
+<div class="note design">
+<p><strong>导航设计</strong></p>
+  <p>如需了解有关 Android 应用导航工作方式的详细信息，请阅读 Android 设计的<a href="{@docRoot}design/patterns/navigation.html">导航</a>指南。</p>
+</div>
+
+
+<h2 id="ActivityState">保存 Activity 状态</h2>
+
+<p>正如上文所述，当 Activity 停止时，系统的默认行为会保留其状态。
+这样一来，当用户导航回到上一个 Activity 时，其用户界面与用户离开时一样。
+但是，在 Activity 被销毁且必须重建时，您可以而且<strong>应当</strong>主动使用回调方法保留 Activity 的状态。
+
+</p>
+
+<p>系统停止您的一个 Activity 时（例如，新 Activity 启动或任务转到前台），如果系统需要回收系统内存资源，则可能会完全销毁该 Activity。
+
+发生这种情况时，有关该 Activity 状态的信息将会丢失。如果发生这种情况，系统仍会知道该 Activity 存在于返回栈中，但是当该 Activity 被置于堆栈顶部时，系统一定会重建 Activity（而不是恢复 Activity）。
+
+
+为了避免用户的工作丢失，您应主动通过在 Activity 中实现
+{@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}
+回调方法来保留工作。
+</p>
+
+<p>如需了解有关如何保存 Activity 状态的详细信息，请参阅<a href="{@docRoot}guide/components/activities.html#SavingActivityState">Activity</a>文档。
+</p>
+
+
+
+<h2 id="ManagingTasks">管理任务</h2>
+
+<p>Android 管理任务和返回栈的方式（如上所述，即：将所有连续启动的 Activity 放入同一任务和“后进先出”堆栈中）非常适用于大多数应用，而您不必担心 Activity 如何与任务关联或者如何存在于返回栈中。
+
+
+但是，您可能会决定要中断正常行为。
+也许您希望应用中的 Activity 在启动时开始新任务（而不是放置在当前任务中）；或者，当启动 Activity 时，您希望将其现有实例上移一层（而不是在返回栈的顶部创建新实例）；或者，您希望在用户离开任务时，清除返回栈中除根 Activity 以外的所有其他 Activity。
+
+
+
+</p>
+
+<p>通过使用 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 清单文件元素中的属性和传递给 {@link android.app.Activity#startActivity startActivity()}
+的 Intent 中的标志，您可以执行所有这些操作以及其他操作。
+
+</p>
+
+<p>在这一方面，您可以使用的主要 <a href="{@docRoot}guide/topics/manifest/activity-element.html">
+{@code &lt;activity&gt;}</a> 属性包括：</p>
+
+<ul class="nolist">
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">
+  {@code taskAffinity}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">
+  {@code launchMode}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+  {@code allowTaskReparenting}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">
+  {@code clearTaskOnLaunch}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+  {@code alwaysRetainTaskState}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">
+  {@code finishOnTaskLaunch}</a></li>
+</ul>
+
+<p>您可以使用的主要 Intent 标志包括：</p>
+
+<ul class="nolist">
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</li>
+</ul>
+
+<p>在下文中，您将了解如何使用这些清单文件属性和 Intent 
+标志定义 Activity 与任务的关联方式，以及 Activity 在返回栈中的行为方式。</p>
+
+<p>此外，我们还单独介绍了有关如何在概览屏幕中显示和管理任务与 Activity 的注意事项。
+如需了解详细信息，请参阅<a href="{@docRoot}guide/components/recents.html">概览屏幕</a>。
+通常，您应该允许系统定义任务和 Activity 在概览屏幕中的显示方法，并且无需修改此行为。
+</p>
+
+<p class="caution"><strong>注意：</strong>大多数应用都不得中断 Activity 和任务的默认行为：
+如果确定您的 Activity 必须修改默认行为，当使用“返回”按钮从其他 Activity 和任务导航回到该 Activity 时，请务必要谨慎并确保在启动期间测试该 Activity 的可用性。请确保测试导航行为是否有可能与用户的预期行为冲突。<em></em>
+
+
+</p>
+
+
+<h3 id="TaskLaunchModes">定义启动模式</h3>
+
+<p>启动模式允许您定义 Activity 的新实例如何与当前任务关联。
+您可以通过两种方法定义不同的启动模式：</p>
+<ul class="nolist">
+  <li><a href="#ManifestForTasks">使用清单文件</a>
+    <p>在清单文件中声明 Activity 时，您可以指定 Activity 在启动时应该如何与任务关联。
+</li>
+  <li><a href="#IntentFlagsForTasks">使用 Intent 标志</a>
+    <p>调用 {@link android.app.Activity#startActivity startActivity()}
+时，可以在 {@link android.content.Intent}
+中加入一个标志，用于声明新 Activity 如何（或是否）与当前任务关联。</p></li>
+</ul>
+
+<p>因此，如果 Activity
+A 启动 Activity B，则 Activity B 可以在其清单文件中定义它应该如何与当前任务关联（如果可能），并且 Activity A 还可以请求 Activity B
+应该如何与当前任务关联。如果这两个 Activity 均定义 Activity B
+应该如何与任务关联，则 Activity A 的请求（如 Intent 中所定义）优先级要高于 Activity
+B 的请求（如其清单文件中所定义）。</p>
+
+<p class="note"><strong>注：</strong>某些适用于清单文件的启动
+模式不可用作 Intent 标志，同样，某些可用作 Intent 
+标志的启动模式无法在清单文件中定义。</p>
+
+
+<h4 id="ManifestForTasks">使用清单文件</h4>
+
+<p>在清单文件中声明 Activity 时，您可以使用 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+元素的 <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a>
+属性指定 Activity 应该如何与任务关联。</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a>
+属性指定有关应如何将 Activity 启动到任务中的指令。您可以分配给
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">launchMode</a></code>
+属性的启动模式共有四种：</p>
+
+<dl>
+<dt>{@code "standard"}（默认模式）</dt>
+  <dd>默认。系统在启动 Activity 的任务中创建 Activity 的新实例并向其传送
+ Intent。Activity 可以多次实例化，而每个实例均可属于不同的任务，并且一个任务可以拥有多个实例。
+</dd>
+<dt>{@code "singleTop"}</dt>
+  <dd>如果当前任务的顶部已存在 Activity 的一个实例，则系统会通过调用该实例的
+{@link
+android.app.Activity#onNewIntent onNewIntent()}
+方法向其传送 Intent，而不是创建 Activity 的新实例。Activity 可以多次实例化，而每个实例均可属于不同的任务，并且一个任务可以拥有多个实例（但前提是位于返回栈顶部的 Activity 并不是 Activity 的现有实例）。<em></em>
+
+
+  <p>例如，假设任务的返回栈包含根 Activity A 以及 Activity B、C
+和位于顶部的 D（堆栈是 A-B-C-D；D 位于顶部）。收到针对 D 类 Activity 的 Intent。如果 D
+具有默认的 {@code "standard"} 启动模式，则会启动该类的新实例，且堆栈会变成 A-B-C-D-D。但是，如果 D 的启动模式是 {@code "singleTop"}，则 D
+的现有实例会通过 {@link
+android.app.Activity#onNewIntent onNewIntent()} 接收 Intent，因为它位于堆栈的顶部；而堆栈仍为
+A-B-C-D。但是，如果收到针对 A 类 Activity 的 Intent，则会向堆栈添加 B 的新实例，即便其启动模式为 {@code "singleTop"} 也是如此。
+
+</p>
+  <p class="note"><strong>注：</strong>为某个 Activity 创建新实例时，用户可以按“返回”按钮返回到前一个 Activity。<em></em>
+但是，当 Activity 的现有实例处理新
+ Intent 时，则在新 Intent 到达
+{@link android.app.Activity#onNewIntent
+onNewIntent()}
+之前，用户无法按“返回”<em></em>按钮返回到 Activity 的状态。
+</p>
+</dd>
+
+<dt>{@code "singleTask"}</dt>
+  <dd>系统创建新任务并实例化位于新任务底部的 Activity。但是，如果该 Activity 的一个实例已存在于一个单独的任务中，则系统会通过调用现有实例的 {@link
+android.app.Activity#onNewIntent
+onNewIntent()} 方法向其传送
+ Intent，而不是创建新实例。一次只能存在 Activity 的一个实例。
+
+  <p class="note"><strong>注：</strong>尽管 Activity 在新任务中启动，但是用户按“返回”<em></em>按钮仍会返回到前一个 Activity。
+</p></dd>
+<dt>{@code "singleInstance"}。</dt>
+  <dd>与
+{@code "singleTask"} 相同，只是系统不会将任何其他 Activity 启动到包含实例的任务中。该 Activity 始终是其任务唯一仅有的成员；由此 Activity 启动的任何 Activity 均在单独的任务中打开。
+</dd>
+</dl>
+
+
+<p>我们再来看另一示例，Android 浏览器
+应用声明 Web 浏览器 Activity 应始终在其自己的任务中打开（通过在 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 元素中指定 {@code singleTask}
+启动模式）。这意味着，如果您的应用发出打开
+Android 浏览器的
+ Intent，则其 Activity 与您的应用位于不同的任务中。<em></em>相反，系统会为浏览器启动新任务，或者如果浏览器
+已有任务正在后台运行，则会将该任务上移一层以处理新
+ Intent。</p>
+
+<p>无论 Activity 是在新任务中启动，还是在与启动 Activity 相同的任务中启动，用户按“返回”<em></em>按钮始终会转到前一个 Activity。
+但是，如果启动指定
+{@code singleTask}
+启动模式的 Activity，则当某后台任务中存在该 Activity 的实例时，整个任务都会转移到前台。此时，返回栈包括上移到堆栈顶部的任务中的所有 Activity。
+
+图 4 显示了这种情况。</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack_singletask_multiactivity.png" alt="" />
+<p class="img-caption"><strong>图 4. </strong>显示如何将启动模式为“singleTask”的 Activity 添加到返回栈。
+如果 Activity 已经是某个拥有自己的返回栈的后台任务的一部分，则整个返回栈也会上移到当前任务的顶部。
+
+</p>
+
+<p>如需了解有关在清单文件中使用启动模式的详细信息，请参阅
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+元素文档，其中更详细地讨论了 {@code launchMode}
+属性和可接受的值。</p>
+
+<p class="note"><strong>注：</strong>使用 <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+属性为 Activity 指定的行为可由 Intent 
+附带的 Activity 启动标志替代，下文将对此进行讨论。</p>
+
+
+
+<h4 id="#IntentFlagsForTasks">使用 Intent 标志</h4>
+
+<p>启动 Activity 时，您可以通过在传递给 {@link
+android.app.Activity#startActivity startActivity()} 的 Intent 
+中加入相应的标志，修改 Activity 与其任务的默认关联方式。可用于修改默认行为的标志包括：
+</p>
+
+<p>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</dt>
+    <dd>在新任务中启动 Activity。如果已为正在启动的 Activity 运行任务，则该任务会转到前台并恢复其最后状态，同时 Activity 会在
+{@link android.app.Activity#onNewIntent onNewIntent()} 中收到新
+ Intent。
+    <p>正如前文所述，这会产生与 {@code "singleTask"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+值相同的行为。</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</dt>
+    <dd>如果正在启动的 Activity 是当前 Activity（位于返回栈的顶部），则
+现有实例会接收对 {@link android.app.Activity#onNewIntent onNewIntent()}
+的调用，而不是创建 Activity 的新实例。
+    <p>正如前文所述，这会产生与 {@code "singleTop"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+值相同的行为。</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</dt>
+    <dd>如果正在启动的 Activity 已在当前任务中运行，则会销毁当前任务顶部的所有 Activity，并通过 {@link android.app.Activity#onNewIntent onNewIntent()}
+将此 Intent 传递给 Activity 已恢复的实例（现在位于顶部），而不是启动该 Activity 的新实例。
+
+
+    <p>产生这种行为的 <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a>
+属性没有值。</p>
+    <p>{@code FLAG_ACTIVITY_CLEAR_TOP} 通常与
+{@code FLAG_ACTIVITY_NEW_TASK}
+结合使用。一起使用时，通过这些标志，可以找到其他任务中的现有 Activity，并将其放入可从中响应 Intent 
+的位置。 </p>
+    <p class="note"><strong>注：</strong>如果指定 Activity 的启动模式为
+{@code "standard"}，则该 Activity 也会从堆栈中删除，并在其位置启动一个新实例，以便处理传入的 Intent。
+
+这是因为当启动模式为 {@code "standard"}
+时，将始终为新 Intent 创建新实例。 </p>
+</dd>
+</dl>
+
+
+
+
+
+<h3 id="Affinities">处理关联</h3>
+
+<p>“关联”指示 Activity 优先属于哪个任务。<em></em>默认情况下，同一应用中的所有 Activity 彼此关联。
+因此，默认情况下，同一应用中的所有 Activity 优先位于相同任务中。
+不过，您可以修改 Activity 的默认关联。
+在不同应用中定义的 Activity 可以共享关联，或者可为在同一应用中定义的 Activity 分配不同的任务关联。
+
+</p>
+
+<p>可以使用 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+元素的
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a> 属性修改任何给定 Activity 的关联。</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+属性取字符串值，该值必须不同于
+在<a href="{@docRoot}guide/topics/manifest/manifest-element.html">
+{@code &lt;manifest&gt;}
+</a>元素中声明的默认软件包名称，因为系统使用该名称标识应用的默认任务关联。
+</p>
+
+<p>在两种情况下，关联会起作用：</p>
+<ul>
+  <li>启动 Activity 的 Intent 包含
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}
+标志。
+
+<p>默认情况下，新 Activity 会启动到调用
+{@link android.app.Activity#startActivity startActivity()} 的 Activity 任务中。它将推入与调用方相同的返回栈。
+但是，如果传递给
+{@link android.app.Activity#startActivity startActivity()}
+的 Intent 包含 {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}
+标志，则系统会寻找其他任务来储存新 Activity。这通常是新任务，但未做强制要求。
+如果现有任务与新 Activity 具有相同关联，则会将 Activity 启动到该任务中。
+否则，将开始新任务。</p>
+
+<p>如果此标志导致 Activity 开始新任务，且用户按“主页”按钮离开，则必须为用户提供导航回任务的方式。<em></em>
+
+有些实体（如通知管理器）始终在外部任务中启动 Activity，而从不作为其自身的一部分启动 Activity，因此它们始终将
+{@code FLAG_ACTIVITY_NEW_TASK} 放入传递给
+{@link android.app.Activity#startActivity startActivity()}
+的 Intent 中。请注意，如果 Activity 能够由可以使用此标志的外部实体调用，则用户可以通过独立方式返回到启动的任务，例如，使用启动器图标（任务的根 Activity 具有
+{@link android.content.Intent#CATEGORY_LAUNCHER}
+ Intent 过滤器；请参阅下面的<a href="#Starting">启动任务</a>部分）。
+
+</p>
+</li>
+
+  <li>Activity 将其<a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+{@code allowTaskReparenting}</a> 属性设置为 {@code "true"}。
+  <p>在这种情况下，Activity 可以从其启动的任务移动到与其具有关联的任务（如果该任务出现在前台）。
+</p>
+  <p>例如，假设将报告所选城市天气状况的 Activity 定义为旅行应用的一部分。
+它与同一应用中的其他 Activity 具有相同的关联（默认应用关联），并允许利用此属性重定父级。当您的一个 Activity 启动天气预报 Activity 时，它最初所属的任务与您的 Activity 相同。
+
+
+但是，当旅行应用的任务出现在前台时，系统会将天气预报 Activity 重新分配给该任务并显示在其中。
+</p>
+</li>
+</ul>
+
+<p class="note"><strong>提示</strong>：如果从用户的角度来看，一个 {@code .apk}
+文件包含多个“应用”，则您可能需要使用 <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a>
+属性将不同关联分配给与每个“应用”相关的 Activity。</p>
+
+
+
+<h3 id="Clearing">清理返回栈</h3>
+
+<p>如果用户长时间离开任务，则系统会清除所有 Activity 的任务，根任务除外。
+当用户再次返回到任务时，仅恢复根 Activity。系统这样做的原因是，经过很长一段时间后，用户可能已经放弃之前执行的操作，返回到任务是要开始执行新的操作。
+
+ </p>
+
+<p>您可以使用下列几个 Activity 属性修改此行为： </p>
+
+<dl>
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#always">alwaysRetainTaskState</a></code>
+</dt>
+<dd>如果在任务的根 Activity 中将此属性设置为 {@code "true"}，则不会发生刚才所述的默认行为。即使在很长一段时间后，任务仍将所有 Activity 保留在其堆栈中。
+
+</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#clear">clearTaskOnLaunch</a></code></dt>
+<dd>如果在任务的根 Activity 中将此属性设置为 {@code "true"}，则每当用户离开任务然后返回时，系统都会将堆栈清除到只剩下根 Activity。
+
+换而言之，它与<a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+{@code alwaysRetainTaskState}</a> 正好相反。
+即使只离开任务片刻时间，用户也始终会返回到任务的初始状态。
+</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#finish">finishOnTaskLaunch</a></code>
+</dt>
+<dd>此属性类似于
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">{@code clearTaskOnLaunch}</a>，但它对单个 Activity 起作用，而非整个任务。
+此外，它还有可能会导致任何 Activity 停止，包括根 Activity。
+设置为 {@code "true"}
+时，Activity 仍是任务的一部分，但是仅限于当前会话。如果用户离开然后返回任务，则任务将不复存在。
+</dd>
+</dl>
+
+
+
+
+<h3 id="Starting">启动任务</h3>
+
+<p>通过为 Activity 提供一个以 {@code "android.intent.action.MAIN"}
+为指定操作、以{@code "android.intent.category.LAUNCHER"}
+为指定类别的 Intent 过滤器，您可以将活动设置为任务的入口点。
+例如：</p>
+
+<pre>
+&lt;activity ... &gt;
+    &lt;intent-filter ... &gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+    ...
+&lt;/activity&gt;
+</pre>
+
+<p>此类 Intent 过滤器会使 Activity 的图标和标签显示在应用启动器中，让用户能够启动 Activity 并在启动之后随时返回到创建的任务中。
+
+
+</p>
+
+<p>第二个功能非常重要：用户必须能够在离开任务后，再使用此 Activity 启动器返回该任务。
+因此，只有在 Activity 具有
+{@link android.content.Intent#ACTION_MAIN}
+和 {@link android.content.Intent#CATEGORY_LAUNCHER}
+过滤器时，才应该使用将 Activity 标记为“始终启动任务”的两种<a href="#LaunchModes">启动模式</a>，即 {@code "singleTask"} 和
+{@code "singleInstance"}。例如，我们可以想像一下如果缺少过滤器会发生什么情况：
+ Intent 启动一个 {@code "singleTask"}
+Activity，从而启动一个新任务，并且用户花了些时间处理该任务。然后，用户按<em>主页</em>按钮。
+任务现已发送到后台，而且不可见。现在，用户无法返回到任务，因为该任务未显示在应用启动器中。
+</p>
+
+<p>如果您并不想用户能够返回到 Activity，对于这些情况，请将
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+元素的
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">{@code finishOnTaskLaunch}</a>
+设置为 {@code "true"}（请参阅<a href="#Clearing">清理堆栈</a>）。</p>
+
+<p>有关如何在概览屏幕中显示和管理任务与 Activity 的更多信息，请参阅<a href="{@docRoot}guide/components/recents.html">概览屏幕</a>。
+
+</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how to use intents to
+activate other application components and publish the intents to which your components
+respond, continue with the <b><a
+href="{@docRoot}guide/components/intents-filters.html">Intents and Intent
+Filters</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/zh-cn/guide/index.jd b/docs/html-intl/intl/zh-cn/guide/index.jd
new file mode 100644
index 0000000..01ab347
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/index.jd
@@ -0,0 +1,74 @@
+page.title=Android 简介
+
+@jd:body
+
+
+<div class="sidebox" style="width:220px"><!-- width to match col-4 below -->
+<p>要了解应用的工作原理，请从<a href="{@docRoot}guide/components/fundamentals.html">应用基础知识</a>开始入手。
+</p>
+<p>要立即开始编码，请仔细阅读<a href="{@docRoot}training/basics/firstapp/index.html">开发您的第一款应用</a>。</p>
+</div>
+
+<p>Android
+提供了一个内容丰富的应用框架，支持您在 Java 语言环境中为移动设备开发创新应用和游戏。在左侧导航窗格列出的文档中，提供了有关如何使用各种
+Android API 开发应用的详细信息。</p>
+
+<p>如果您是 Android 应用开发新手，则需了解以下有关
+Android 应用框架的基本概念，这一点至关重要：</p>
+
+
+<div class="landing-banner">
+
+<div class="col-6">
+
+<h4>应用提供多个入口点</h4>
+
+<p>Android
+应用都是将各种可单独调用的不同组件加以组合构建而成。例如，组件可以是为用户界面提供一个屏幕的单个“Activity”，也可以是在后台独立执行工作的“服务”。
+
+<em></em><em></em></p>
+
+<p>您可以使用<em> Intent </em>从一个组件启动另一个组件。甚至，您还可以启动不同应用中的组件，例如，启动地图应用中的 Activity 以显示地址。
+此模式可为单个应用提供多个入口点，并使任何应用均能够像用户“默认设置”一样处理其他应用可能调用的操作。
+
+</p>
+
+
+<p><b>了解详情</b>：</p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/components/fundamentals.html">应用基础知识</a>
+<li><a href="{@docRoot}guide/components/intents-filters.html">Intent 和 Intent 过滤器</a>
+<li><a href="{@docRoot}guide/components/activities.html">Activity</a>
+</ul>
+
+</div>
+
+
+<div class="col-6">
+
+<h4>应用可适应不同的设备</h4>
+
+<p>Android
+提供了一个自适应应用框架，您可以利用它为不同的设备配置提供独特的资源。例如，您可以针对不同的屏幕尺寸创建不同的
+XML
+布局文件，系统将根据当前设备的屏幕尺寸确定要应用的布局。</p>
+
+<p>如有任何应用功能需要相机等特定的硬件，则可在运行时查询设备功能的可用性。
+如有必要，您还可以声明您的应用所必需的功能，使
+Google Play
+商店等应用市场不得在不支持这些功能的设备上安装您的应用。</p>
+
+
+<p><b>了解详情</b>：</p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/practices/compatibility.html">设备兼容性</a>
+<li><a href="{@docRoot}guide/topics/resources/overview.html">资源概览</a>
+<li><a href="{@docRoot}guide/topics/ui/overview.html">用户界面概览</a>
+</ul>
+
+</div>
+
+</div><!-- end landing-banner -->
+
+
+
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/manifest/manifest-intro.jd b/docs/html-intl/intl/zh-cn/guide/topics/manifest/manifest-intro.jd
new file mode 100644
index 0000000..c7ade4f
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/manifest/manifest-intro.jd
@@ -0,0 +1,517 @@
+page.title=应用清单文件
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文内容</h2>
+<ol>
+<li><a href="#filestruct">清单文件结构</a></li>
+<li><a href="#filec">文件约定</a>
+<li><a href="#filef">文件功能</a>
+	<ol>
+	<li><a href="#ifs"> Intent 过滤器</a></li>
+	<li><a href="#iconlabel">图标和标签</a></li>
+	<li><a href="#perms">权限</a></li>
+	<li><a href="#libs">库</a></li>
+	</ol></li>
+</ol>
+</div>
+</div>
+
+<p>
+  每个应用的根目录中都必须包含一个
+AndroidManifest.xml 文件（且文件名精确无误）。 <span itemprop="description">清单文件为
+Android 系统提供有关您的应用的基本信息，系统必须获得这些信息才能运行任意应用代码。
+
+</span> 此外，清单文件还可执行以下操作：
+</p>
+
+<ul>
+<li>为应用的 Java
+软件包命名。软件包名称充当应用的唯一标识符</li>
+
+<li>描述应用的各个组件，即：构成应用的 Activity、服务、广播接收器和内容提供程序。
+
+为实现每个组件的类命名并发布其功能（例如，它们可以处理的
+{@link android.content.Intent 
+Intent} 消息）。根据这些声明，Android
+系统可以了解这组件具体是什么，以及在什么条件下可以启动它们</li>
+
+<li>确定将托管应用组件的进程</li>  
+
+<li>声明应用必须具备哪些权限才能访问
+API 中受保护的部分并与其他应用交互</li>  
+
+<li>还声明其他应用与该应用组件交互所需具备的权限
+</li>
+
+<li>列出 {@link android.app.Instrumentation}
+类，这些类可在应用运行期间提供分析和其他信息。这些声明只会在应用处在开发和测试阶段时出现在清单文件中；它们会在应用发布之前被删除
+
+</li>
+
+<li>声明应用所需的最低 Android API
+级别</li>
+
+<li>列出应用必须链接到的库</li>
+</ul>
+
+
+<h2 id="filestruct">清单文件结构</h2>
+
+<p>
+下图显示了清单文件的通用结构及其可包含的每个元素。
+每个元素及其所有属性全部记录在一个单独的文件中。
+要查看有关任何元素的详细信息，请点击该图中或其后按字母顺序排列的元素列表中相应的元素名称，或者点击任何其他地方提到的相应元素名称。
+
+
+ 
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration /&gt;</a>  <!-- ##api level 3## -->
+    <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html">&lt;compatible-screens /&gt;</a>  <!-- ##api level 9## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-gl-texture-element.html">&lt;supports-gl-texture /&gt;</a>  <!-- ##api level 11## -->
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;/activity&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;/activity-alias&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data/&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;/service&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;/receiver&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/path-permission-element.html">&lt;path-permission /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;/provider&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library /&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;/application&gt;</a>
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;/manifest&gt;</a>
+</pre>
+
+<p>
+可出现在清单文件中的所有元素按字母顺序罗列如下。
+这些是仅有的合法元素；您无法添加自己的元素或属性。
+  
+</p>
+
+<p style="margin-left: 2em">
+<code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration&gt;</a></code>  <!-- ##api level 3## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></code>
+</p>
+
+
+    
+
+<h2 id="filec">文件约定</h2>
+
+<p>
+有些约定和规则普遍适用于清单文件中的所有元素和属性：
+
+</p>
+
+<dl>
+<dt><b>元素</b></dt>
+<dd>只有
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 和
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+元素是必需的，它们都必须存在并且只能出现一次。其他大部分元素可以出现多次或者根本不出现，即便清单文件中必须至少存在其中某些元素才能完成任何有意义的操作也是如此。
+
+
+
+
+<p>
+如果一个元素包含某些内容，也就包含其他元素。所有值均通过属性进行设置，而不是通过元素内的字符数据设置。
+
+</p>
+
+<p>
+同一级别的元素通常不分先后顺序。例如，<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>、<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+和
+<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+元素可以按任何顺序混合在一起。
+（<code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+元素不适用此规则：
+它必须跟在别名所指的
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+之后。）
+</p></dd>
+
+<dt><b>属性</b></dt>
+<dd>从某种意义上说，所有属性都是可选的。但是，有些属性必须指定给元素以实现其目的。
+请使用本文档作为参考。
+对于真正可选的属性，它将指定默认值或声明缺乏规范时将执行何种操作。
+
+
+<p>除了根
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+元素的一些属性外，所有属性名称均以 {@code android:}
+前缀开头，例如，{@code android:alwaysRetainTaskState}。由于该前缀是通用的，因此在按名称引用属性时，本文档通常会将其忽略。
+
+</p></dd>
+
+<dt><b>声明类名</b></dt>
+<dd>许多元素对应于
+Java
+对象，其中包括应用本身的元素（<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+元素）及其主要组件
+&mdash;
+Activity
+(<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>)、服务
+(<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>)、广播接收器
+(<code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>)
+以及内容提供程序
+(<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>)。  
+
+<p>
+如果按照您针对组件类（{@link android.app.Activity}、{@link android.app.Service}、{@link android.content.BroadcastReceiver}
+和
+{@link android.content.ContentProvider}）几乎一直采用的方式来定义子类，则该子类需通过 {@code name} 属性来声明。
+该名称必须包含完整的软件包名称。
+例如，{@link android.app.Service}
+子类可能会声明如下：
+</p>
+
+<pre>&lt;manifest . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name="com.example.project.SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+但是，为了简便起见，如果字符串的第一个字符是句点，则字符串将追加到应用的软件包名称（正如
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+元素的
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html#package">package</a></code>
+属性中所指定）。
+以下赋值与上述方法相同： 
+</p>
+
+<pre>&lt;manifest package="com.example.project" . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name=".SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+当启动组件时，Android 会创建已命名子类的实例。如果未指定子类，则会创建基类的实例。
+
+</p></dd>
+
+<dt><b>多个值</b></dt>
+<dd>如果可以指定多个值，则几乎总是在重复此元素，而不是列出单个元素内的多个值。
+例如，Intent 过滤器可以列出多个操作：
+
+
+<pre>&lt;intent-filter . . . &gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.INSERT" /&gt;
+    &lt;action android:name="android.intent.action.DELETE" /&gt;
+    . . .
+&lt;/intent-filter&gt;</pre></dd>
+
+<dt><b>资源值</b></dt>
+<dd>某些属性的值可以显示给用户，例如，Activity 的标签和图标。
+这些属性的值应该本地化，因此需要通过资源或主题进行设置。
+资源值用以下格式表示：
+</p>
+
+<p style="margin-left: 2em">{@code @[<i>package</i>:]<i>type</i>:<i>name</i>}</p>
+
+<p>
+其中，如果资源与应用位于同一软件包中，则可忽略 <i>package</i> 名称；
+ <i>type</i> 是资源类型，如“字串符”或“图片”；
+ <i>name</i> 是标识特定资源的名称。例如：
+
+</p>
+
+<pre>&lt;activity android:icon="@drawable/smallPic" . . . &gt</pre>
+
+<p>
+主题中的值用类似的方法表示，但是以“{@code ?}”开头而不是“{@code @}”：
+
+</p>
+
+<p style="margin-left: 2em">{@code ?[<i>package</i>:]<i>type</i>:<i>name</i>}
+</p></dd>
+
+<dt><b>字串符值</b></dt>
+<dd>如果属性值为字串符，则必须使用双反斜杠（“{@code \\}”）
+转义字符。例如，使用“{@code \\n}”表示换行符或使用“{@code \\uxxxx}”表示
+Unicode 字符）。</dd>
+</dl>
+
+
+<h2 id="filef">文件功能</h2>
+
+<p>
+下文介绍如何在清单文件中利用某些
+Android 特性。
+</p>
+
+
+<h3 id="ifs"> Intent 过滤器</h3>
+
+<p>
+应用的核心组件（其 Activity、服务和广播接收器）由
+ <i>Intent </i>激活。Intent 是一系列用于描述所需操作的信息（{@link android.content.Intent}
+对象），其中包括要执行操作的数据、应执行操作的组件类别以及其他相关说明。
+
+Android
+会找到合适的组件来响应
+ Intent，根据需要启动组件的新实例，并将其传递到
+ Intent 对象。
+</p>
+
+<p>
+组件将通过“Intent 过滤器”公布其功能，即它们可响应的 Intent 类型。
+ <i></i> 由于
+Android 系统在启动某组件之前必须了解该组件可以处理哪些 Intent，因此 Intent 过滤器在清单文件中被指定为
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+元素。
+一个组件可能有任意数量的过滤器，其中每个过滤器描述一种不同的功能。
+
+</p>
+
+<p>
+显式命名目标组件的
+ Intent 将激活该组件；过滤器不起作用。但是，不按名称指定目标的
+ Intent 
+只有在能够通过组件的一个过滤器时才可激活该组件。
+</p>
+
+<p>
+有关如何根据
+ Intent 过滤器测试
+ Intent 对象的信息，请参阅单独的文档
+<a href="{@docRoot}guide/components/intents-filters.html"> Intent 和 Intent 过滤器</a>。
+</p>
+
+
+<h3 id="iconlabel">图标和标签</h3>
+
+<p>
+对于可以显示给用户的小图标和文本标签，大量元素具有 {@code icon} 和 {@code label}
+属性。此外，对于同样可以显示在屏幕上的较长说明文本，某些元素还具有
+{@code description}
+属性。例如，<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+元素具有所有这三个属性。因此，当系统询问用户是否授权给请求获得权限的应用时，权限图标、权限名称以及所需信息的说明均可呈现给用户。
+
+
+
+
+</p>
+
+<p>
+无论何种情况下，在包含元素中设置的图标和标签都将成为所有容器子元素的默认
+{@code icon} 和 {@code label} 设置。因此，在
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+元素中设置的图标和标签是每个应用组件的默认图标和标签。
+同样，为组件（例如，<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+元素）设置的图标和标签是组件每个
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+元素的默认设置。
+
+如果 <code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 元素设置标签，但是 Activity 及其
+ Intent 过滤器不执行此操作，则应用标签将被视为 Activity 和
+ Intent 过滤器的标签。
+
+
+</p>
+
+<p>
+在实现 Intent 过滤器公布的功能时，只要向用户呈现组件，系统便会使用为过滤器设置的图标和标签表示该组件。
+
+例如，具有“{@code android.intent.action.MAIN}”和“{@code android.intent.category.LAUNCHER}”设置的过滤器将 Activity 公布为可启动应用的功能，即，公布为应显示在应用启动器中的功能。
+
+
+
+因此，在过滤器中设置的图标和标签就是显示在启动器中的图标和标签。
+
+</p>
+
+
+<h3 id="perms">权限</h3>
+
+<p>
+  <i>权限</i> 是一种限制，用于限制对部分代码或设备上数据的访问。
+   施加限制是为了保护可能被误用以致破坏或损害用户体验的关键数据和代码。
+  
+</p>
+
+<p>
+每种权限均由一个唯一的标签标识。标签通常指示受限制的操作。
+例如，以下是由
+Android 定义的一些权限：
+</p>
+
+<p style="margin-left: 2em">{@code android.permission.CALL_EMERGENCY_NUMBERS}
+<br/>{@code android.permission.READ_OWNER_DATA}
+<br/>{@code android.permission.SET_WALLPAPER}
+<br/>{@code android.permission.DEVICE_POWER}</p>
+
+<p>
+一个功能最多只能由一种权限保护。
+</p>
+
+<p>
+如果应用需要访问受权限保护的功能，则必须在清单文件中使用
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+元素声明应用需要该权限。
+但是，将应用安装到设备上之后，安装程序会通过检查签署应用证书的颁发机构并（在某些情况下）询问用户，确定是否授予请求的权限。
+
+
+如果授予权限，则应用能够使用受保护的功能。
+
+否则，其访问这些功能的尝试将会失败，并且不会向用户发送任何通知。
+ 
+</p>
+
+<p>
+此外，应用也可以使用权限保护自己的组件（Activity、服务、广播接收器和内容提供程序）。
+它可以采用由
+Android
+定义（如
+{@link android.Manifest.permission android.Manifest.permission} 中所列）或由其他应用声明的任何权限。或者，它也可以定义自己的权限。新权限用
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+元素来声明。
+例如，Activity 可受到如下保护：
+</p>
+
+<pre>
+&lt;manifest . . . &gt;
+    &lt;permission android:name="com.example.project.DEBIT_ACCT" . . . /&gt;
+    &lt;uses-permission android:name="com.example.project.DEBIT_ACCT" /&gt;
+    . . .
+    &lt;application . . .&gt;
+        &lt;activity android:name="com.example.project.FreneticActivity"
+                  android:permission="com.example.project.DEBIT_ACCT"
+                  . . . &gt;
+            . . .
+        &lt;/activity&gt;
+    &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>
+请注意，在此示例中，{@code DEBIT_ACCT}
+权限不仅是通过
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+元素来声明，而且其使用也是通过
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+元素来请求。要让应用的其他组件也能够启动受保护的 Activity，就必须请求其使用权限，即便保护是由应用本身施加的亦如此。
+
+  
+</p>
+
+<p>
+同样还是在此示例中，如果将
+{@code permission}
+属性设置为在其他位置（例如，{@code android.permission.CALL_EMERGENCY_NUMBERS}）声明的权限，则无需使用
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+元素再次声明。
+但是，仍有必要通过
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 请求使用它。 
+</p>
+
+<p>
+<code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code>
+元素为一组将在代码中定义的权限声明命名空间。
+
+同时，
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+为一组权限（包括在清单文件中使用
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+元素声明的权限以及在其他位置声明的权限）定义标签。它只影响如何对提供给用户的权限进行分组。
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+元素并不指定哪些权限属于该组，而只是为组提供名称。
+
+通过向
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+元素的
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html#pgroup">permissionGroup</a></code>
+属性分配组名，将权限放入组中。
+
+</p>
+
+
+<h3 id="libs">库</h3>
+
+<p>
+每个应用均链接到默认的 Android 库，该库中包括构建应用（以及通用类，如 Activity、服务、 Intent 、视图、按钮、应用、ContentProvider 等）的基本软件包。
+
+
+
+</p>
+
+<p>
+但是，某些软件包驻留在自己的库中。如果应用使用来自其中任一软件包的代码，则必须明确要求其链接到这些软件包。
+
+清单文件必须包含单独的
+<code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
+元素来命名其中每个库。（库名称可在软件包的文档中找到。）
+
+</p>
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/providers/calendar-provider.jd b/docs/html-intl/intl/zh-cn/guide/topics/providers/calendar-provider.jd
new file mode 100644
index 0000000..5968284
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/providers/calendar-provider.jd
@@ -0,0 +1,1184 @@
+page.title=日历提供程序
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>本文内容</h2>
+    <ol>
+  <li><a href="#overview">基础知识</a></li>
+  <li><a href="#manifest">用户权限</a></li>
+  <li><a href="#calendar">日历表</a>
+<ol>
+      <li><a href="#query">查询日历</a></li>
+      <li><a href="#modify-calendar">修改日历</a></li>
+      <li><a href="#insert-calendar">插入日历</a></li>
+    </ol>
+  </li>
+  <li><a href="#events">事件表</a>
+<ol>
+      <li><a href="#add-event">添加事件</a></li>
+      <li><a href="#update-event">更新事件</a></li>
+      <li><a href="#delete-event">删除事件</a></li>
+    </ol>
+  </li>
+  <li><a href="#attendees">参加者表</a>
+<ol>
+      <li><a href="#add-attendees">添加参加者</a></li>
+    </ol>
+  </li>
+  <li><a href="#reminders">提醒表</a>
+<ol>
+      <li><a href="#add-reminders">添加提醒</a></li>
+    </ol>
+  </li>
+  <li><a href="#instances">实例表</a>
+  <ol>
+      <li><a href="#query-instances">查询实例表</a></li>
+  </ol></li>
+  <li><a href="#intents">日历 Intent 对象</a>
+  <ol>
+      <li><a href="#intent-insert">使用 Intent 对象插入事件</a></li>
+      <li><a href="#intent-edit">使用 Intent 对象编辑事件</a></li>
+      <li><a href="#intent-view">使用 Intent 对象查看日历数据</a></li>
+    </ol>
+  </li>
+  
+  <li><a href="#sync-adapter">同步适配器</a></li>
+</ol>
+
+    <h2>关键类</h2>
+    <ol>
+      <li>{@link android.provider.CalendarContract.Calendars}</li>
+      <li>{@link android.provider.CalendarContract.Events}</li>
+      <li>{@link android.provider.CalendarContract.Attendees}</li>
+      <li>{@link android.provider.CalendarContract.Reminders}</li>
+    </ol>
+</div>
+</div>
+
+<p>日历提供程序是用户日历事件的存储库。您可以利用
+Calendar Provider API
+对日历、事件、参加者、提醒等执行查询、插入、更新和删除操作。</p>
+
+
+<p>Calender Provider API 可供应用和同步适配器使用。规则因进行调用的程序类型而异。
+本文主要侧重于介绍使用
+Calendar Provider API 作为应用的情况。如需了解对各类同步适配器差异的阐述，请参阅<a href="#sync-adapter">同步适配器</a>。
+
+</p>
+
+
+<p>正常情况下，要想读取或写入日历数据，应用的清单文件必须包括<a href="#manifest">用户权限</a>中所述的适当权限。
+
+为简化常见操作的执行，日历提供程序提供了一组 Intent 对象，<a href="#intents">日历 Intent 对象</a>中对这些 Intent 做了说明。
+
+这些 Intent 对象会将用户转到日历应用，执行插入事件、查看事件和编辑事件操作。
+用户与日历应用交互，然后返回原来的应用。
+因此，您的应用不需要请求权限，也不需要提供用于查看事件或创建事件的用户界面。
+</p>
+
+<h2 id="overview">基础知识</h2>
+
+<p><a href="{@docRoot}guide/topics/providers/content-providers.html">内容提供程序</a>存储数据并使其可供应用访问。
+Android
+平台提供的内容提供程序（包括日历提供程序）通常以一组基于关系数据库模型的表格形式公开数据，在这个表格中，每一行都是一条记录，每一列都是特定类型和含义的数据。
+应用和同步适配器可以通过
+Calendar Provider API
+获得对储存用户日历数据的数据库表的读取/写入权限。</p>
+
+<p>每一个内容提供程序都会公开一个对其数据集进行唯一标识的公共
+URI（包装成一个 {@link android.net.Uri} 对象）。
+控制多个数据集（多个表）的内容提供程序会为每个数据集公开单独的 URI。
+所有提供程序 URI 都以字符串“content://”开头。
+这表示数据受内容提供程序的控制。
+日历提供程序会为其每个类（表）定义
+URI 常量。这些
+URI 的格式为 <code><em>&lt;class&gt;</em>.CONTENT_URI</code>。例如，{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}。
+</p>
+
+<p>图 1 是对日历提供程序数据模型的图形化表示。它显示了将彼此链接在一起的主要表和字段。
+</p>
+
+<img src="{@docRoot}images/providers/datamodel.png" alt="Calendar Provider Data Model" />
+<p class="img-caption"><strong>图 1. </strong>日历提供程序数据模型。</p>
+
+<p>用户可以有多个日历，可将不同类型的日历与不同类型的帐户（Google 日历、Exchange 等）关联。</p>
+
+<p>{@link android.provider.CalendarContract} 定义了日历和事件相关信息的数据模型。这些数据存储在以下所列的若干表中。</p>
+
+<table>
+  <tr>
+    <th>表（类）</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td><p>{@link android.provider.CalendarContract.Calendars}</p></td>
+    
+    <td>此表储存日历特定信息。
+此表中的每一行都包含一个日历的详细信息，例如名称、颜色、同步信息等。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Events}</td>
+    
+    <td>此表储存事件特定信息。
+此表中的每一行都包含一个事件的信息&mdash;例如事件名称、地点、开始时间、结束时间等。
+
+事件可一次性发生，也可多次重复发生。参加者、提醒和扩展属性存储在单独的表内。
+它们各自具有一个 {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}，用于引用 Events 表中的 {@link android.provider.BaseColumns#_ID}。
+
+</td>
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances}</td>
+    
+    <td>此表储存每个事件实例的开始时间和结束时间。
+此表中的每一行都表示一个事件实例。
+对于一次性事件，实例与事件为 1:1
+映射。对于重复事件，会自动生成多个行，分别对应多个事件实例。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Attendees}</td>
+    
+    <td>此表储存事件参加者（来宾）信息。
+每一行都表示事件的一位来宾。
+它指定来宾的类型以及事件的来宾出席响应。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Reminders}</td>
+    
+    <td>此表储存提醒/通知数据。
+每一行都表示事件的一个提醒。一个事件可以有多个提醒。
+每个事件的最大提醒数量在
+
+
+{@link android.provider.CalendarContract.CalendarColumns#MAX_REMINDERS}
+中指定，后者由拥有给定日历的同步适配器设置。提醒以事件发生前的分钟数形式指定，其具有一个可决定用户提醒方式的方法。
+</td>
+  </tr>
+  
+</table>
+
+<p>Calendar Provider API 以灵活、强大为设计宗旨。提供良好的最终用户体验以及保护日历及其数据的完整性也同样重要。
+
+因此，请在使用该 API
+时牢记以下要点：</p>
+
+<ul>
+
+<li><strong>插入、更新和查看日历事件。</strong>要想直接从日历提供程序插入事件、修改事件以及读取事件，您需要具备相应<a href="#manifest">权限</a>。不过，如果您开发的并不是完备的日历应用或同步适配器，则无需请求这些权限。您可以改用 Android 的日历应用支持的 Intent 对象将读取操作和写入操作转到该应用执行。当您使用 Intent 对象时，您的应用会将用户转到日历应用，在一个预填充表单中执行所需操作。
+完成操作后，用户将返回您的应用。通过将您的应用设计为通过日历执行常见操作，可以为用户提供一致、可靠的用户界面。
+
+这是推荐您采用的方法。
+如需了解详细信息，请参阅<a href="#intents">日历 Intent 对象</a>。
+</p>
+
+
+<li><strong>同步适配器。</strong>同步适配器用于将用户设备上的日历数据与其他服务器或数据源同步。
+在
+{@link android.provider.CalendarContract.Calendars} 和
+
+{@link android.provider.CalendarContract.Events}
+表中，预留了一些供同步适配器使用的列。提供程序和应用不应修改它们。实际上，除非以同步适配器形式进行访问，否则它们处于不可见状态。
+如需了解有关同步适配器的详细信息，请参阅<a href="#sync-adapter">同步适配器</a>。
+</li>
+
+</ul>
+
+
+<h2 id="manifest">用户权限</h2>
+
+<p>如需读取日历数据，应用必须在其清单文件中加入 {@link
+android.Manifest.permission#READ_CALENDAR} 权限。文件中必须包括用于删除、插入或更新日历数据的
+{@link android.Manifest.permission#WRITE_CALENDAR}
+权限：</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;...&gt;
+    &lt;uses-sdk android:minSdkVersion=&quot;14&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.READ_CALENDAR&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.WRITE_CALENDAR&quot; /&gt;
+    ...
+&lt;/manifest&gt;
+</pre>
+
+
+<h2 id="calendar">日历表</h2>
+
+<p>{@link android.provider.CalendarContract.Calendars} 表包含各日历的详细信息。
+应用和<a href="#sync-adapter">同步适配器</a>均可写入下列日历列。
+如需查看所支持字段的完整列表，请参阅
+
+{@link android.provider.CalendarContract.Calendars} 参考资料。</p>
+<table>
+  <tr>
+    <th>常量</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#NAME}</td>
+    <td>日历的名称。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#CALENDAR_DISPLAY_NAME}</td>
+    <td>该日历显示给用户时使用的名称。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#VISIBLE}</td>
+    
+    <td>表示是否选择显示该日历的布尔值。值为 0 表示不应显示与该日历关联的事件。
+
+值为 1
+表示应该显示与该日历关联的事件。此值影响 {@link
+android.provider.CalendarContract.Instances} 表中行的生成。</td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.CalendarColumns#SYNC_EVENTS}</td>
+    
+    <td>一个布尔值，表示是否应同步日历并将其事件存储在设备上。
+值为 0
+表示不同步该日历，也不将其事件存储在设备上。值为 1
+表示同步该日历的事件，并将其事件存储在设备上。</td>
+  </tr>
+</table>
+
+<h3 id="query">查询日历</h3>
+
+<p>以下示例说明了如何获取特定用户拥有的日历。
+为了简便起见，在此示例中，查询操作显示在用户界面线程（“主线程”）中。
+实际上，此操作应该在一个异步线程而非主线程中完成。
+如需查看更详细的介绍，请参阅<a href="{@docRoot}guide/components/loaders.html">加载器</a>。
+如果您的目的不只是读取数据，还要修改数据，请参阅 {@link android.content.AsyncQueryHandler}。
+
+</p>
+
+
+<pre>
+// Projection array. Creating indices for this array instead of doing
+// dynamic lookups improves performance.
+public static final String[] EVENT_PROJECTION = new String[] {
+    Calendars._ID,                           // 0
+    Calendars.ACCOUNT_NAME,                  // 1
+    Calendars.CALENDAR_DISPLAY_NAME,         // 2
+    Calendars.OWNER_ACCOUNT                  // 3
+};
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_ACCOUNT_NAME_INDEX = 1;
+private static final int PROJECTION_DISPLAY_NAME_INDEX = 2;
+private static final int PROJECTION_OWNER_ACCOUNT_INDEX = 3;</pre>
+  
+
+<div class="sidebox-wrapper"> <div class="sidebox"> <h3>为何必须加入
+ACCOUNT_TYPE？</h3> <p>如果您查询 {@link
+android.provider.CalendarContract.Calendars#ACCOUNT_NAME
+Calendars.ACCOUNT_NAME}，还必须将
+{@link android.provider.CalendarContract.Calendars#ACCOUNT_TYPE Calendars.ACCOUNT_TYPE}
+加入选定范围。这是因为，对于给定帐户，只有在同时指定其
+<code>ACCOUNT_NAME</code> 及其 <code>ACCOUNT_TYPE</code>
+的情况下，才能将其视为唯一帐户。<code>ACCOUNT_TYPE</code>
+字符串对应于在 {@link android.accounts.AccountManager}
+处注册帐户时使用的帐户验证器。还有一种名为 {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}
+的特殊帐户类型，用于未关联设备帐户的日历。{@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}
+帐户不会进行同步。</p> </div> </div> 
+
+
+<p> 在示例的下一部分，您需要构建查询。选定范围指定查询的条件。
+在此示例中，查询寻找的是
+<code>ACCOUNT_NAME</code>
+为“sampleuser@google.com”、<code>ACCOUNT_TYPE</code>
+为“com.google”、<code>OWNER_ACCOUNT</code>
+为“sampleuser@google.com”的日历。如果您想查看用户查看过的所有日历，而不只是用户拥有的日历，请省略
+<code>OWNER_ACCOUNT</code>。您可以利用查询返回的
+{@link android.database.Cursor}
+对象遍历数据库查询返回的结果集。
+如需查看有关在内容提供程序中使用查询的详细介绍，请参阅<a href="{@docRoot}guide/topics/providers/content-providers.html">内容提供程序</a>。
+</p>
+
+
+<pre>// Run query
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+Uri uri = Calendars.CONTENT_URI;   
+String selection = "((" + Calendars.ACCOUNT_NAME + " = ?) AND (" 
+                        + Calendars.ACCOUNT_TYPE + " = ?) AND ("
+                        + Calendars.OWNER_ACCOUNT + " = ?))";
+String[] selectionArgs = new String[] {"sampleuser@gmail.com", "com.google",
+        "sampleuser@gmail.com"}; 
+// Submit the query and get a Cursor object back. 
+cur = cr.query(uri, EVENT_PROJECTION, selection, selectionArgs, null);</pre>
+
+<p>以下后续部分使用游标单步调试结果集。它使用在示例开头设置的常量来返回每个字段的值。
+
+</p>
+    
+<pre>// Use the cursor to step through the returned records
+while (cur.moveToNext()) {
+    long calID = 0;
+    String displayName = null;
+    String accountName = null;
+    String ownerName = null;
+      
+    // Get the field values
+    calID = cur.getLong(PROJECTION_ID_INDEX);
+    displayName = cur.getString(PROJECTION_DISPLAY_NAME_INDEX);
+    accountName = cur.getString(PROJECTION_ACCOUNT_NAME_INDEX);
+    ownerName = cur.getString(PROJECTION_OWNER_ACCOUNT_INDEX);
+              
+    // Do something with the values...
+
+   ...
+}
+</pre>
+  
+<h3 id="modify-calendar">修改日历</h3>
+
+<p>如需执行日历更新，您可以通过
+URI 追加
+ID ({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 或第一个选定项形式提供日历的
+
+{@link
+android.provider.BaseColumns#_ID}。选定范围应以
+<code>&quot;_id=?&quot;</code> 开头，并且第一个
+<code>selectionArg</code> 应为日历的 {@link
+android.provider.BaseColumns#_ID}。
+您还可以通过在 URI
+中编码 ID 来执行更新。下例使用 ({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 方法更改日历的显示名称：
+
+</p>
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long calID = 2;
+ContentValues values = new ContentValues();
+// The new display name for the calendar
+values.put(Calendars.CALENDAR_DISPLAY_NAME, &quot;Trevor's Calendar&quot;);
+Uri updateUri = ContentUris.withAppendedId(Calendars.CONTENT_URI, calID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);</pre>
+
+<h3 id="insert-calendar">插入日历</h2>
+
+<p>日历设计为主要由同步适配器进行管理，因此您只应以同步适配器形式插入新日历。
+在大多数情况下，应用只能对日历进行一些表面更改，如更改显示名称。
+如果应用需要创建本地日历，可以利用
+{@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}
+的
+{@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE}，通过以同步适配器形式执行日历插入来实现目的。{@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}
+是一种特殊的帐户类型，用于未关联设备帐户的日历。
+这种类型的日历不与服务器同步。如需了解对同步适配器的阐述，请参阅<a href="#sync-adapter">同步适配器</a>。
+</p>
+
+<h2 id="events">事件表</h2>
+
+<p>{@link android.provider.CalendarContract.Events}
+表包含各事件的详细信息。要想添加、更新或删除事件，应用必须在其<a href="#manifest">清单文件</a>中加入
+{@link android.Manifest.permission#WRITE_CALENDAR}
+权限。</p>
+
+<p>应用和同步适配器均可写入下列事件列。
+如需查看所支持字段的完整列表，请参阅 {@link
+android.provider.CalendarContract.Events} 参考资料。</p>
+
+<table>
+  <tr>
+    <th>常量</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#CALENDAR_ID}</td>
+    <td>事件所属日历的 {@link android.provider.BaseColumns#_ID}。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ORGANIZER}</td>
+    <td>事件组织者（所有者）的电子邮件。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE}</td>
+    <td>事件的名称。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION}</td>
+    <td>事件的发生地点。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION}</td>
+    <td>事件的描述。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTSTART}</td>
+    <td>事件开始时间，以从公元纪年开始计算的协调世界时毫秒数表示。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTEND}</td>
+    <td>事件结束时间，以从公元纪年开始计算的协调世界时毫秒数表示。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}</td>
+    <td>事件的时区。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_END_TIMEZONE}</td>
+    <td>事件结束时间的时区。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DURATION}</td>
+    
+    <td><a href="http://tools.ietf.org/html/rfc5545#section-3.8.2.5">RFC5545</a>
+格式的事件持续时间。例如，值为
+<code>&quot;PT1H&quot;</code> 表示事件应持续一小时，值为
+<code>&quot;P2W&quot;</code> 表示持续 2 周。 </td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ALL_DAY}</td>
+    
+    <td>值为 1
+表示此事件占用一整天（按照本地时区的定义）。值为 0
+表示它是常规事件，可在一天内的任何时间开始和结束。</td>
+
+    
+  </tr>
+  
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RRULE}</td>
+    
+    <td>事件的重复发生规则格式。例如，<code>&quot;FREQ=WEEKLY;COUNT=10;WKST=SU&quot;</code>。
+您可以在<a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.3">此处</a>找到更多示例。
+</td>
+    
+  </tr>
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RDATE}</td>
+    <td>事件的重复发生日期。
+{@link android.provider.CalendarContract.EventsColumns#RDATE} 
+与 {@link android.provider.CalendarContract.EventsColumns#RRULE} 
+通常联合用于定义一组聚合重复实例。
+如需查看更详细的介绍，请参阅 <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.2">RFC5545 规范</a>。</td>
+</tr>
+ 
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY}</td>
+    
+    <td>将此事件视为忙碌时间还是可调度的空闲时间。
+ </td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_MODIFY}</td>
+    <td>来宾是否可修改事件。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_INVITE_OTHERS}</td>
+    <td>来宾是否可邀请其他来宾。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_SEE_GUESTS}</td>
+    <td>来宾是否可查看参加者列表。</td>
+  </tr>
+</table>
+
+<h3 id="add-event">添加事件</h3>
+
+<p>当您的应用插入新事件时，我们建议您按照<a href="#intent-insert">使用 Intent 对象插入事件</a>中所述使用
+{@link android.content.Intent#ACTION_INSERT INSERT} Intent 对象。不过，如需，也可直接插入事件。
+本节描述如何执行此操作。
+</p>
+
+
+<p>以下是插入新事件的规则： </p>
+<ul>
+
+  <li>您必须加入 {@link
+android.provider.CalendarContract.EventsColumns#CALENDAR_ID} 和 {@link
+android.provider.CalendarContract.EventsColumns#DTSTART}。</li>
+
+<li>您必须加入 {@link
+android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}。如需获取系统中已安装时区 ID
+的列表，请使用 {@link
+java.util.TimeZone#getAvailableIDs()}。请注意，如果您按<a href="#intent-insert">使用 Intent 对象插入事件</a>中所述通过
+{@link
+android.content.Intent#ACTION_INSERT INSERT} Intent 对象插入事件，则此规则不适用&mdash;在该情形下，系统会提供默认时区。
+</li>
+  
+  <li>对于非重复事件，您必须加入 {@link
+android.provider.CalendarContract.EventsColumns#DTEND}。 </li>
+  
+  
+  <li>对于重复事件，您必须加入 {@link
+android.provider.CalendarContract.EventsColumns#DURATION} 以及 {@link
+android.provider.CalendarContract.EventsColumns#RRULE} 或 {@link
+android.provider.CalendarContract.EventsColumns#RDATE}。请注意，如果您按<a href="#intent-insert">使用 Intent 对象插入事件</a>中所述通过
+{@link
+android.content.Intent#ACTION_INSERT INSERT} Intent 对象插入事件，则此规则不适用&mdash;在该情形下，您可以将 {@link
+android.provider.CalendarContract.EventsColumns#RRULE} 与 {@link android.provider.CalendarContract.EventsColumns#DTSTART} 和 {@link android.provider.CalendarContract.EventsColumns#DTEND}
+联用，日历应用会自动将其转换为持续时间。
+</li>
+  
+</ul>
+
+<p>以下是一个插入事件的示例。为了简便起见，此操作是在 UI
+线程内执行的。实际上，应该在异步线程中完成插入和更新，以便将操作移入后台线程。
+如需了解详细信息，请参阅
+{@link android.content.AsyncQueryHandler}。</p>
+
+
+<pre>
+long calID = 3;
+long startMillis = 0; 
+long endMillis = 0;     
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 9, 14, 7, 30);
+startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 9, 14, 8, 45);
+endMillis = endTime.getTimeInMillis();
+...
+
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Events.DTSTART, startMillis);
+values.put(Events.DTEND, endMillis);
+values.put(Events.TITLE, &quot;Jazzercise&quot;);
+values.put(Events.DESCRIPTION, &quot;Group workout&quot;);
+values.put(Events.CALENDAR_ID, calID);
+values.put(Events.EVENT_TIMEZONE, "America/Los_Angeles");
+Uri uri = cr.insert(Events.CONTENT_URI, values);
+
+// get the event ID that is the last element in the Uri
+long eventID = Long.parseLong(uri.getLastPathSegment());
+// 
+// ... do something with event ID
+//
+//</pre>
+
+<p class="note"><strong>注：</strong>请注意以上示例如何在事件创建后捕获事件
+ID。这是获取事件 ID
+的最简单方法。您经常需要使用事件 ID
+来执行其他日历操作&mdash;例如，向事件添加参加者或提醒。</p>
+
+
+<h3 id="update-event">更新事件</h3>
+
+<p>当您的应用想允许用户编辑事件时，我们建议您按照<a href="#intent-edit">使用 Intent 对象编辑事件</a>中所述使用
+{@link android.content.Intent#ACTION_EDIT EDIT}
+ Intent 对象。不过，如需，也可以直接编辑事件。
+如需执行事件更新，您可以通过 URI 追加 ID ({@link
+
+android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()})
+
+或第一个选定项形式提供事件的 <code>_ID</code>。
+选定范围应以 <code>&quot;_id=?&quot;</code> 开头，并且第一个<code>selectionArg</code> 应为事件的
+<code>_ID</code>。您还可以使用不含
+ID
+的选定范围执行更新。以下是一个更新事件的示例。它使用
+ {@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}
+方法更改事件的名称：</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 188;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri updateUri = null;
+// The new title for the event
+values.put(Events.TITLE, &quot;Kickboxing&quot;); 
+updateUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);  </pre>
+
+<h3 id="delete-event">删除事件</h3>
+
+<p>您可以通过将事件 {@link
+android.provider.BaseColumns#_ID} 作为 URI 追加 ID
+或通过使用标准选定范围来删除事件。如果您使用追加
+ID，则将无法同时使用选定范围。共有两个版本的删除：应用删除和同步适配器删除。应用删除将
+<em>deleted</em> 列设置为 1。此标志告知同步适配器该行已删除，并且应将此删除操作传播至服务器。
+
+同步适配器删除会将事件连同其所有关联数据从数据库中删除。
+以下是一个应用通过事件 {@link android.provider.BaseColumns#_ID}
+删除事件的示例：</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 201;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri deleteUri = null;
+deleteUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().delete(deleteUri, null, null);
+Log.i(DEBUG_TAG, &quot;Rows deleted: &quot; + rows);  
+</pre>
+
+<h2 id="attendees">参加者表</h2>
+
+<p>{@link android.provider.CalendarContract.Attendees}
+表的每一行都表示事件的一位参加者或来宾。调用 
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()} 
+会返回一个参加者列表，其中包含具有给定 {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}
+的事件的参加者。
+此 {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} 
+必须匹配特定事件的 {@link
+android.provider.BaseColumns#_ID}。</p> 
+
+<p>下表列出了可写入的字段。
+插入新参加者时，您必须加入除 <code>ATTENDEE_NAME</code> 之外的所有字段。
+
+</p>
+
+
+<table>
+  <tr>
+    <th>常量</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}</td>
+    <td>事件的 ID。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_NAME}</td>
+    <td>参加者的姓名。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_EMAIL}</td>
+    <td>参加者的电子邮件地址。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_RELATIONSHIP}</td>
+    <td><p>参加者与事件的关系。下列值之一：</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ATTENDEE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ORGANIZER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_PERFORMER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_SPEAKER}</li>
+    </ul>
+    </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_TYPE}</td>
+    <td><p>参加者的类型。下列值之一： </p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_REQUIRED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_OPTIONAL}</li>
+    </ul></td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS}</td>
+    <td><p>参加者的出席状态。下列值之一：</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_ACCEPTED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_DECLINED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_INVITED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_TENTATIVE}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-attendees">添加参加者</h3>
+
+<p>以下是一个为事件添加一位参加者的示例。请注意，{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}
+是必填项：
+</p>
+
+<pre>
+long eventID = 202;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Attendees.ATTENDEE_NAME, &quot;Trevor&quot;);
+values.put(Attendees.ATTENDEE_EMAIL, &quot;trevor@example.com&quot;);
+values.put(Attendees.ATTENDEE_RELATIONSHIP, Attendees.RELATIONSHIP_ATTENDEE);
+values.put(Attendees.ATTENDEE_TYPE, Attendees.TYPE_OPTIONAL);
+values.put(Attendees.ATTENDEE_STATUS, Attendees.ATTENDEE_STATUS_INVITED);
+values.put(Attendees.EVENT_ID, eventID);
+Uri uri = cr.insert(Attendees.CONTENT_URI, values);
+</pre>
+
+<h2 id="reminders">提醒表</h2>
+
+<p>{@link android.provider.CalendarContract.Reminders}
+表的每一行都表示事件的一个提醒。调用 
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()}
+会返回一个提醒列表，其中包含具有给定 {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} 的事件的提醒。
+</p>
+
+
+<p>下表列出了提醒的可写入字段。插入新提醒时，必须加入所有字段。
+请注意，同步适配器指定它们在
+{@link
+android.provider.CalendarContract.Calendars} 表中支持的提醒类型。详情请参阅 
+{@link android.provider.CalendarContract.CalendarColumns#ALLOWED_REMINDERS}
+。</p>
+
+
+<table>
+  <tr>
+    <th>常量</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#EVENT_ID}</td>
+    <td>事件的 ID。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#MINUTES}</td>
+    <td>事件发生前的分钟数，应在达到该时间时发出提醒。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#METHOD}</td>
+    <td><p>服务器上设置的提醒方法。下列值之一：</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_ALERT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_DEFAULT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_EMAIL}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_SMS}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-reminders">添加提醒</h3>
+
+<p>下例显示如何为事件添加提醒。提醒在事件发生前 15
+分钟发出。</p>
+<pre>
+long eventID = 221;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Reminders.MINUTES, 15);
+values.put(Reminders.EVENT_ID, eventID);
+values.put(Reminders.METHOD, Reminders.METHOD_ALERT);
+Uri uri = cr.insert(Reminders.CONTENT_URI, values);</pre>
+
+<h2 id="instances">实例表</h2>
+
+<p>
+{@link android.provider.CalendarContract.Instances}
+表储存事件实例的开始时间和结束时间。此表中的每一行都表示一个事件实例。
+实例表无法写入，只提供查询事件实例的途径。
+ </p>
+
+<p>下表列出了一些您可以执行实例查询的字段。请注意，
+时区由 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_TYPE} 
+和 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_INSTANCES} 定义。</p>
+
+
+<table>
+  <tr>
+    <th>常量</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#BEGIN}</td>
+    <td>实例的开始时间，以协调世界时毫秒数表示。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END}</td>
+    <td>实例的结束时间，以协调世界时毫秒数表示。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_DAY}</td>
+    
+    <td>与日历时区相应的实例儒略历结束日。
+ 
+    
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_MINUTE}</td>
+    
+    <td>从日历时区午夜开始计算的实例结束时间（分钟）。
+</td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#EVENT_ID}</td>
+    <td>该实例对应事件的 <code>_ID</code>。</td>
+  </tr>
+    <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_DAY}</td>
+    <td>与日历时区相应的实例儒略历开始日。 
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_MINUTE}</td>
+    
+    <td>从日历时区午夜开始计算的实例开始时间（分钟）。
+ 
+</td>
+    
+  </tr>
+
+</table>
+
+<h3 id="query-instances">查询实例表</h3>
+
+<p>如需查询实例表，您需要在 URI
+中指定查询的时间范围。在以下示例中，{@link android.provider.CalendarContract.Instances}
+通过其 {@link android.provider.CalendarContract.EventsColumns} 接口实现获得对 {@link
+android.provider.CalendarContract.EventsColumns#TITLE}
+字段的访问权限。
+换言之，{@link
+android.provider.CalendarContract.EventsColumns#TITLE} 是通过数据库视图，而不是通过查询原始
+{@link
+android.provider.CalendarContract.Instances} 表返回的。</p>
+
+<pre>
+private static final String DEBUG_TAG = "MyActivity";
+public static final String[] INSTANCE_PROJECTION = new String[] {
+    Instances.EVENT_ID,      // 0
+    Instances.BEGIN,         // 1
+    Instances.TITLE          // 2
+  };
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_BEGIN_INDEX = 1;
+private static final int PROJECTION_TITLE_INDEX = 2;
+...
+
+// Specify the date range you want to search for recurring
+// event instances
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2011, 9, 23, 8, 0);
+long startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2011, 10, 24, 8, 0);
+long endMillis = endTime.getTimeInMillis();
+  
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+
+// The ID of the recurring event whose instances you are searching
+// for in the Instances table
+String selection = Instances.EVENT_ID + " = ?";
+String[] selectionArgs = new String[] {"207"};
+
+// Construct the query with the desired date range.
+Uri.Builder builder = Instances.CONTENT_URI.buildUpon();
+ContentUris.appendId(builder, startMillis);
+ContentUris.appendId(builder, endMillis);
+
+// Submit the query
+cur =  cr.query(builder.build(), 
+    INSTANCE_PROJECTION, 
+    selection, 
+    selectionArgs, 
+    null);
+   
+while (cur.moveToNext()) {
+    String title = null;
+    long eventID = 0;
+    long beginVal = 0;    
+    
+    // Get the field values
+    eventID = cur.getLong(PROJECTION_ID_INDEX);
+    beginVal = cur.getLong(PROJECTION_BEGIN_INDEX);
+    title = cur.getString(PROJECTION_TITLE_INDEX);
+              
+    // Do something with the values. 
+    Log.i(DEBUG_TAG, "Event:  " + title); 
+    Calendar calendar = Calendar.getInstance();
+    calendar.setTimeInMillis(beginVal);  
+    DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
+    Log.i(DEBUG_TAG, "Date: " + formatter.format(calendar.getTime()));    
+    }
+ }</pre>
+
+<h2 id="intents">日历 Intent 对象</h2>
+<p>您的应用不需要读取和写入日历数据的<a href="#manifest">权限</a>。它可以改用 Android 的日历应用支持的 Intent 对象将读取和写入操作转到该应用执行。下表列出了日历提供程序支持的 Intent 对象：</p>
+<table>
+  <tr>
+    <th>操作</th>
+    <th>URI</th>
+
+    <th>描述</th>
+    <th>Extra</th>
+  </tr>
+  <tr>
+    <td><br>
+    {@link android.content.Intent#ACTION_VIEW VIEW} <br></td>
+    <td><p><code>content://com.android.calendar/time/&lt;ms_since_epoch&gt;</code></p>
+    您还可以通过 
+{@link android.provider.CalendarContract#CONTENT_URI CalendarContract.CONTENT_URI} 引用 URI。
+如需查看使用该 Intent 对象的示例，请参阅<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">使用 Intent 对象查看日历数据</a>。 
+
+    </td>
+    <td>打开日历后定位到 <code>&lt;ms_since_epoch&gt;</code> 指定的时间。</td>
+    <td>无。</td>
+  </tr>
+  <tr>
+    <td><p>{@link android.content.Intent#ACTION_VIEW VIEW} </p>
+
+     </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+    您还可以通过 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} 引用 URI。
+如需查看使用该 Intent 对象的示例，请参阅<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">使用 Intent 对象查看日历数据</a>。
+    
+    </td>
+    <td>查看 <code>&lt;event_id&gt;</code> 指定的事件。</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+  您还可以通过 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} 引用 URI。
+如需查看使用该 Intent 对象的示例，请参阅<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-edit">使用 Intent 对象编辑事件</a>。
+    
+    
+    </td>
+    <td>编辑 <code>&lt;event_id&gt;</code> 指定的事件。</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} <br>
+    <br>
+    {@link android.content.Intent#ACTION_INSERT INSERT} </td>
+    <td><p><code>content://com.android.calendar/events</code></p>
+    
+   您还可以通过 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} 引用 URI。
+如需查看使用该 Intent 对象的示例，请参阅<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-insert">使用 Intent 对象插入事件</a>。
+    
+    </td>
+
+    <td>创建事件。</td>
+    <td>下表列出的任一 Extra。</td>
+  </tr>
+</table>
+
+<p>下表列出了日历提供程序支持的 Intent  Extra：
+</p>
+<table>
+  <tr>
+    <th> Intent  Extra</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE Events.TITLE}</td>
+    <td>事件的名称。</td>
+  </tr>
+  <tr>
+  
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME}</td>
+    <td>事件开始时间，以从公元纪年开始计算的毫秒数表示。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME}</td>
+    
+    <td>事件结束时间，以从公元纪年开始计算的毫秒数表示。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_ALL_DAY
+CalendarContract.EXTRA_EVENT_ALL_DAY}</td>
+    
+    <td>一个布尔值，表示事件属于全天事件。值可以是
+<code>true</code> 或 <code>false</code>。</td> </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION
+Events.EVENT_LOCATION}</td>
+    
+    <td>事件的地点。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION
+Events.DESCRIPTION}</td>
+    
+    <td>事件描述。</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}</td>
+    <td>逗号分隔值形式的受邀者电子邮件地址列表。</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#RRULE Events.RRULE}</td>
+    <td>事件的重复发生规则。</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#ACCESS_LEVEL
+Events.ACCESS_LEVEL}</td>
+    
+    <td>事件是私人性质还是公共性质。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY
+Events.AVAILABILITY}</td>
+    
+    <td>将此事件视为忙碌时间还是可调度的空闲时间。</td>
+    
+</table> 
+<p>下文描述如何使用这些 Intent 对象。</p>
+
+
+<h3 id="intent-insert">使用 Intent 对象插入事件</h3>
+
+<p>您的应用可以利用 {@link android.content.Intent#ACTION_INSERT INSERT}
+ Intent 对象将事件插入任务转到日历应用执行。使用此方法时，您的应用甚至不需要在其<a href="#manifest">清单文件</a>中加入
+{@link
+android.Manifest.permission#WRITE_CALENDAR} 权限。</p>
+
+  
+<p>当用户运行使用此方法的应用时，应用会将其转到日历来完成事件添加操作。
+{@link
+android.content.Intent#ACTION_INSERT INSERT}  Intent 利用 extra
+字段为表单预填充日历中事件的详细信息。用户随后可取消事件、根据需要编辑表单或将事件保存到日历中。
+
+</p>
+  
+
+
+<p>以下是一个代码段，用于安排一个在 2012 年 1 月 19 日上午
+7:30 开始、8:30 结束的事件。请注意该代码段中的以下内容：</p>
+
+<ul>
+  <li>它将 {@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} 
+指定为 URI。</li>
+  
+  <li>它使用 {@link
+android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME} 和 {@link
+android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME} extra
+字段为表单预填充事件的时间。这些时间的值必须以从公元纪年开始计算的协调世界时毫秒数表示。
+</li>
+  
+  <li>它使用 {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}
+extra 字段提供以逗号分隔的受邀者电子邮件地址列表。</li>
+  
+</ul>
+<pre>
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 0, 19, 7, 30);
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 0, 19, 8, 30);
+Intent intent = new Intent(Intent.ACTION_INSERT)
+        .setData(Events.CONTENT_URI)
+        .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
+        .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
+        .putExtra(Events.TITLE, &quot;Yoga&quot;)
+        .putExtra(Events.DESCRIPTION, &quot;Group class&quot;)
+        .putExtra(Events.EVENT_LOCATION, &quot;The gym&quot;)
+        .putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)
+        .putExtra(Intent.EXTRA_EMAIL, &quot;rowan@example.com,trevor@example.com&quot;);
+startActivity(intent);
+</pre>
+
+<h3 id="intent-edit">使用 Intent 对象编辑事件</h3>
+
+<p>您可以按<a href="#update-event">更新事件</a>中所述直接更新事件。但使用 {@link
+android.content.Intent#ACTION_EDIT EDIT}  Intent 可以让不具有事件编辑权限的应用将事件编辑操作转到日历应用执行。当用户在日历中完成事件编辑后，将会返回原来的应用。
+
+
+</p> <p>以下是一个 Intent 对象的示例，它为指定事件设置新名称，并允许用户在日历中编辑事件。
+</p>
+
+
+<pre>long eventID = 208;
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_EDIT)
+    .setData(uri)
+    .putExtra(Events.TITLE, &quot;My New Title&quot;);
+startActivity(intent);</pre>
+
+<h3 id="intent-view">使用 Intent 对象查看日历数据</h3>
+<p>日历提供程序提供了两种不同的 {@link android.content.Intent#ACTION_VIEW VIEW}  Intent 对象使用方法：</p>
+<ul>
+  <li>打开日历并定位到特定日期。</li>
+  <li>查看事件。</li>
+
+</ul>
+<p>下例显示如何打开日历并定位到特定日期：</p>
+<pre>// A date-time specified in milliseconds since the epoch.
+long startMillis;
+...
+Uri.Builder builder = CalendarContract.CONTENT_URI.buildUpon();
+builder.appendPath(&quot;time&quot;);
+ContentUris.appendId(builder, startMillis);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+    .setData(builder.build());
+startActivity(intent);</pre>
+
+<p>下例显示如何打开事件进行查看：</p>
+<pre>long eventID = 208;
+...
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+   .setData(uri);
+startActivity(intent);
+</pre>
+
+
+<h2 id="sync-adapter">同步适配器</h2>
+
+
+<p>应用和同步适配器在访问日历提供程序的方式上只存在微小差异：
+</p>
+
+<ul>
+  <li>同步适配器需要通过将 {@link android.provider.CalendarContract#CALLER_IS_SYNCADAPTER} 设置为 <code>true</code> 来表明它是同步适配器。</li>
+  
+  
+  <li>同步适配器需要提供 {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_NAME} 和 {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} 作为 URI 中的查询参数。 </li>
+  
+  <li>与应用或小工具相比，同步适配器拥有写入权限的列更多。
+  例如，应用只能修改日历的少数几种特性，
+例如其名称、显示名称、能见度设置以及是否同步日历。
+相比之下，同步适配器不仅可以访问这些列，还能访问许多其他列，
+例如日历颜色、时区、访问级别、地点等等。不过，同步适配器受限于它指定的
+<code>ACCOUNT_NAME</code> 和 
+<code>ACCOUNT_TYPE</code>。</li> </ul>
+
+<p>您可以利用以下 helper 方法返回供与同步适配器一起使用的 URI：</p>
+<pre> static Uri asSyncAdapter(Uri uri, String account, String accountType) {
+    return uri.buildUpon()
+        .appendQueryParameter(android.provider.CalendarContract.CALLER_IS_SYNCADAPTER,&quot;true&quot;)
+        .appendQueryParameter(Calendars.ACCOUNT_NAME, account)
+        .appendQueryParameter(Calendars.ACCOUNT_TYPE, accountType).build();
+ }
+</pre>
+<p>如需查看同步适配器的实现示例（并非仅限与日历有关的实现），请参阅 
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a>。
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/providers/contacts-provider.jd b/docs/html-intl/intl/zh-cn/guide/topics/providers/contacts-provider.jd
new file mode 100644
index 0000000..7125fb9
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/providers/contacts-provider.jd
@@ -0,0 +1,2356 @@
+page.title=联系人提供程序
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<h2>内容快览</h2>
+<ul>
+    <li>Android 有关联系人的信息存储库。</li>
+    <li>
+        与 Web 同步。
+    </li>
+    <li>
+        集成社交流数据。
+    </li>
+</ul>
+<h2>本文内容</h2>
+<ol>
+    <li>
+        <a href="#InformationTypes">联系人提供程序组织</a>
+    </li>
+    <li>
+        <a href="#RawContactBasics">原始联系人</a>
+    </li>
+    <li>
+        <a href="#DataBasics">数据</a>
+    </li>
+    <li>
+        <a href="#ContactBasics">联系人</a>
+    </li>
+    <li>
+        <a href="#Sources">来自同步适配器的数据</a>
+    </li>
+    <li>
+        <a href="#Permissions">所需权限</a>
+    </li>
+    <li>
+        <a href="#UserProfile">用户个人资料</a>
+    </li>
+    <li>
+        <a href="#ContactsProviderMetadata">联系人提供程序元数据</a>
+    </li>
+    <li>
+        <a href="#Access">联系人提供程序访问</a>
+    <li>
+    </li>
+    <li>
+        <a href="#SyncAdapters">联系人提供程序同步适配器</a>
+    </li>
+    <li>
+        <a href="#SocialStream">社交流数据</a>
+    </li>
+    <li>
+        <a href="#AdditionalFeatures">其他联系人提供程序功能</a>
+    </li>
+</ol>
+<h2>关键类</h2>
+<ol>
+    <li>{@link android.provider.ContactsContract.Contacts}</li>
+    <li>{@link android.provider.ContactsContract.RawContacts}</li>
+    <li>{@link android.provider.ContactsContract.Data}</li>
+    <li>{@code android.provider.ContactsContract.StreamItems}</li>
+</ol>
+<h2>相关示例</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}resources/samples/ContactManager/index.html">
+联系人管理器
+</a>
+    </li>
+    <li>
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+示例同步适配器</a>
+    </li>
+</ol>
+<h2>另请参阅</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+内容提供程序基础知识
+</a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    联系人提供程序是一个强大而又灵活的 Android 组件，用于管理设备上有关联系人数据的中央存储库。
+联系人提供程序是您在设备的联系人应用中看到的数据源，您也可以在自己的应用中访问其数据，并可在设备与在线服务之间传送数据。
+
+提供程序储存有多种数据源，由于它会试图为每个联系人管理尽可能多的数据，因此造成其组织结构非常复杂。
+
+为此，该提供程序的 API 包含丰富的协定类和接口，为数据检索和修改提供便利。
+
+
+</p>
+<p>
+    本指南介绍下列内容：
+</p>
+    <ul>
+        <li>
+            提供程序基本结构
+        </li>
+        <li>
+            如何从提供程序检索数据
+        </li>
+        <li>
+            如何修改提供程序中的数据
+        </li>
+        <li>
+            如何编写用于同步服务器数据与联系人提供程序数据的同步适配器。
+
+        </li>
+    </ul>
+<p>
+    本指南假定您了解 Android 内容提供程序的基础知识。如需了解有关 Android 内容提供程序的更多信息，请阅读
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">内容提供程序基础知识</a>指南。
+
+
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">示例同步适配器</a>示例应用是一个示例，展示如何使用同步适配器在联系人提供程序与 Google 网络服务托管的一个示例应用之间传送数据。
+
+
+</p>
+<h2 id="InformationTypes">联系人提供程序组织</h2>
+<p>
+    联系人提供程序是 Android 内容提供程序的一个组件。它保留了三种类型的联系人数据，每一种数据都对应提供程序提供的一个表，如图 1 所示：
+
+
+</p>
+<img src="{@docRoot}images/providers/contacts_structure.png" alt="" height="364" id="figure1" />
+<p class="img-caption">
+  <strong>图 1. </strong>联系人提供程序表结构。
+</p>
+<p>
+    这三个表通常以其协定类的名称命名。这些类定义表所使用的内容 URI、列名称及列值相应的常量：
+
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Contacts} 表
+    </dt>
+    <dd>
+        表示不同联系人的行，基于聚合的原始联系人行。
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.RawContacts} 表
+    </dt>
+    <dd>
+        包含联系人数据摘要的行，针对特定用户帐户和类型。
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data} 表
+    </dt>
+    <dd>
+        包含原始联系人详细信息（例如电子邮件地址或电话号码）的行。
+    </dd>
+</dl>
+<p>
+    由 {@link android.provider.ContactsContract}
+中的协定类表示的其他表是辅助表，联系人提供程序利用它们来管理其操作，或为设备的联系人或电话应用中的特定功能提供支持。
+
+</p>
+<h2 id="RawContactBasics">原始联系人</h2>
+<p>
+    一个原始联系人表示来自某一帐户类型和帐户名称、有关某个联系人的数据。
+由于联系人提供程序允许将多个在线服务作为某一联系人的数据源，因此它允许同一联系人对应多个原始联系人。
+
+    借助支持多个原始联系人的特性，用户还可以将某一联系人在帐户类型相同的多个帐户中的数据进行合并。
+
+</p>
+<p>
+    原始联系人的大部分数据并不存储在
+{@link android.provider.ContactsContract.RawContacts} 表内，而是存储在
+{@link android.provider.ContactsContract.Data} 表中的一行或多行内。每个数据行都有一个
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID Data.RAW_CONTACT_ID} 列，其中包含其父级 {@link android.provider.ContactsContract.RawContacts} 行的 {@code android.provider.BaseColumns#_ID RawContacts._ID} 值。
+
+
+</p>
+<h3 id="RawContactsColumns">重要的原始联系人列</h3>
+<p>
+    表 1 列出了 {@link android.provider.ContactsContract.RawContacts} 表中的重要列。
+请阅读表后的说明：
+</p>
+<p class="table-caption" id="table1">
+    <strong>表 1. </strong>重要的原始联系人列。
+</p>
+<table>
+    <tr>
+        <th scope="col">列名称</th>
+        <th scope="col">用途</th>
+        <th scope="col">备注</th>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_NAME}
+        </td>
+        <td>
+            作为该原始联系人来源的帐户类型的帐户名称。
+            例如，Google 帐户的帐户名称是设备所有者的某个 Gmail
+地址。如需了解详细信息，请参阅有关
+ {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE} 的下一条目。
+
+        </td>
+        <td>
+            此名称的格式专用于其帐户类型。它不一定是电子邮件地址。
+
+        </td>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}
+        </td>
+        <td>
+            作为该原始联系人来源的帐户类型。例如，Google 帐户的帐户类型是 <code>com.google</code>。
+请务必使用您拥有或控制的域的域标识符限定您的帐户类型。
+这可以确保您的帐户类型具有唯一性。
+
+        </td>
+        <td>
+            提供联系人数据的帐户类型通常关联有同步适配器，用于与联系人提供程序进行同步。
+
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.RawContactsColumns#DELETED}
+        </td>
+        <td>
+            原始联系人的“已删除”标志。
+        </td>
+        <td>
+            此标志让联系人提供程序能够在内部保留该行，直至同步适配器能够从服务器删除该行，然后再从存储库中最终删除该行。
+
+
+        </td>
+    </tr>
+</table>
+<h4>说明</h4>
+<p>
+    以下是关于
+ {@link android.provider.ContactsContract.RawContacts} 表的重要说明：
+</p>
+<ul>
+    <li>
+        原始联系人的姓名并不存储其在
+{@link android.provider.ContactsContract.RawContacts} 中的行内，而是存储在
+{@link android.provider.ContactsContract.Data} 表的
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 行内。一个原始联系人在 {@link android.provider.ContactsContract.Data} 表中只有一个该类型的行。
+
+    </li>
+    <li>
+        <strong>注意：</strong>要想在原始联系人行中使用您自己的帐户数据，必须先在 {@link android.accounts.AccountManager} 中注册帐户。
+为此，请提示用户将帐户类型及其帐户名称添加到帐户列表。
+如果您不这样做，联系人提供程序将自动删除您的原始联系人行。
+
+        <p>
+            例如，如果您想让您的应用为您域名为 {@code com.example.dataservice}、基于 Web 的服务保留联系人数据，并且您的服务的用户帐户是 {@code becky.sharp@dataservice.example.com}，则用户必须先添加帐户“类型”({@code com.example.dataservice}) 和帐户“名称”({@code becky.smart@dataservice.example.com})，然后您的应用才能添加原始联系人行。
+
+
+
+
+            您可以在文档中向用户解释这项要求，也可以提示用户添加类型和名称，或者同时采用这两种措施。
+下文对帐户类型和帐户名称做了更详尽的描述。
+
+    </li>
+</ul>
+<h3 id="RawContactsExample">原始联系人数据来源</h3>
+<p>
+    为理解原始联系人的工作方式，假设有一位用户“Emily Dickinson”，她的设备上定义了以下三个用户帐户：
+
+</p>
+<ul>
+    <li><code>emily.dickinson@gmail.com</code></li>
+    <li><code>emilyd@gmail.com</code></li>
+    <li>Twitter 帐户“belle_of_amherst”</li>
+</ul>
+<p>
+    该用户已在 <em>Accounts</em> 设置中为全部三个帐户启用了
+<em>Sync Contacts</em>。
+</p>
+<p>
+    假定 Emily Dickinson 打开一个浏览器窗口，以
+<code>emily.dickinson@gmail.com</code> 身份登录 Gmail，然后打开
+“联系人”，并添加“Thomas Higginson”。后来，她以
+<code>emilyd@gmail.com</code> 身份登录 Gmail，并向“Thomas Higginson”发送一封电子邮件，此操作会自动将他添加为联系人。
+她还在 Twitter 上关注了“colonel_tom”（Thomas Higginson 的 Twitter ID）。
+
+</p>
+<p>
+    以上操作的结果是，联系人提供程序会创建以下这三个原始联系人：
+</p>
+<ol>
+    <li>
+        第一个原始联系人对应“Thomas Higginson”，关联帐户 <code>emily.dickinson@gmail.com</code>。
+        用户帐户类型是 Google。
+    </li>
+    <li>
+        第二个原始联系人对应“Thomas Higginson”，关联帐户 <code>emilyd@gmail.com</code>。
+        用户帐户类型也是 Google。由于添加的联系人对应的用户帐户不同，因此尽管名称与前一名称完全相同，也只能作为第二个原始联系人。
+
+
+    </li>
+    <li>
+        第三个原始联系人对应“Thomas Higginson”，关联帐户“belle_of_amherst”。用户帐户类型是 Twitter。
+
+    </li>
+</ol>
+<h2 id="DataBasics">数据</h2>
+<p>
+    如前文所做的说明，原始联系人的数据存储在一个
+{@link android.provider.ContactsContract.Data} 行中，该行链接到原始联系人的
+<code>_ID</code> 值。这使一位原始联系人可以拥有多个具有相同数据类型的实例，例如电子邮件地址或电话号码。
+例如，如果对应
+{@code emilyd@gmail.com} 的“Thomas Higginson”（关联 Google 帐户 <code>emilyd@gmail.com</code> 的 Thomas Higginson
+的原始联系人行）的住宅电子邮件地址为
+<code>thigg@gmail.com</code>，办公电子邮件地址为
+<code>thomas.higginson@gmail.com</code>，则联系人提供程序会存储这两个电子邮件地址行，并将它们都链接到原始联系人。
+
+</p>
+<p>
+    请注意，这个表中存储了不同类型的数据。显示姓名、电话号码、电子邮件、邮政地址、照片以及网站明细行都可以在 {@link android.provider.ContactsContract.Data} 表中找到。
+
+为便于管理这些数据，
+{@link android.provider.ContactsContract.Data} 表为一些列使用了描述性名称，为其他列使用了通用名称。
+使用描述性名称的列的内容具有相同的含义，与行中数据的类型无关，而使用通用名称的列的内容则会随数据类型的不同而具有不同的含义。
+
+
+</p>
+<h3 id="DescriptiveColumns">描述性列名称</h3>
+<p>
+    以下是一些描述性列名称的示例：
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Data#RAW_CONTACT_ID}
+    </dt>
+    <dd>
+        该数据对应的原始联系人 <code>_ID</code> 列的值。
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data#MIMETYPE}
+    </dt>
+    <dd>
+        该行中存储的数据类型，以自定义 MIME（多用途互联网邮件扩展）类型表示。联系人提供程序使用了
+{@link android.provider.ContactsContract.CommonDataKinds} 子类中定义的 MIME 类型。
+这些 MIME 类型为开源类型，可供与联系人提供程序协作的任何应用或同步适配器使用。
+
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY}
+    </dt>
+    <dd>
+        如果一个原始联系人可能具有多个这种类型的数据行，
+{@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} 列会标记
+包含该类型主要数据的数据行。例如，如果用户长按某个联系人的电话号码，并选择 <strong>Set default</strong>，则包含该号码的 {@link android.provider.ContactsContract.Data} 行会将其 {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} 列设置为一个非零值。
+
+
+
+
+    </dd>
+</dl>
+<h3 id="GenericColumns">通用列名称</h3>
+<p>
+    有 15 个通用列命名为 <code>DATA1</code> 至
+<code>DATA15</code>，可普遍适用；还有四个通用列命名为 <code>SYNC1</code> 至 <code>SYNC4</code>，只应由同步适配器使用。
+
+通用列名称常量始终有效，与行包含的数据类型无关。
+
+</p>
+<p>
+    <code>DATA1</code> 列为索引列。联系人提供程序总是在此列中存储其预期会成为最频繁查询目标的数据。
+例如，在一个电子邮件行中，此列包含实际电子邮件地址。
+
+</p>
+<p>
+    按照惯例，<code>DATA15</code> 为预留列，用于存储照片缩略图等二进制大型对象
+(BLOB) 数据。
+</p>
+<h3 id="TypeSpecificNames">类型专用列名称</h3>
+<p>
+    为便于处理特定类型行的列，联系人提供程序还提供了
+{@link android.provider.ContactsContract.CommonDataKinds} 子类中定义的类型专用列名称常量。
+这些常量只是为同一列名称提供不同的常量名称，这有助于您访问特定类型行中的数据。
+
+
+</p>
+<p>
+    例如，{@link android.provider.ContactsContract.CommonDataKinds.Email} 类为 {@link android.provider.ContactsContract.Data} 行定义类型专用列名称常量，该行的 MIME 类型为 {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+    Email.CONTENT_ITEM_TYPE}。
+
+
+该类包含电子邮件地址列的
+{@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS}
+常量。
+{@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS} 的实际值为“data1”，这与列的通用名称相同。
+
+</p>
+<p class="caution">
+    <strong>注意：</strong>请勿使用具有提供程序某个预定义 MIME 类型的行向
+{@link android.provider.ContactsContract.Data} 表中添加您自己的自定义数据。
+否则您可能会丢失数据，或导致提供程序发生故障。
+例如，如果某一行具有 MIME 类型
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+    Email.CONTENT_ITEM_TYPE}，并且
+<code>DATA1</code> 列包含的是用户名而不是电子邮件地址，您就不应添加该行。如果您为该行使用自定义的 MIME 类型，则可自由定义您的自定义类型专用的列名称，并随心所欲地使用这些列。
+
+</p>
+<p>
+    图 2 显示的是描述性列和数据列在
+{@link android.provider.ContactsContract.Data} 行中的显示情况，以及类型专用列名称“覆盖”通用列名称的情况
+
+</p>
+<img src="{@docRoot}images/providers/data_columns.png" alt="How type-specific column names map to generic column names" height="311" id="figure2" />
+<p class="img-caption">
+  <strong>图 2. </strong>类型专用列名称和通用列名称。
+</p>
+<h3 id="ColumnMaps">类型专用列名称类</h3>
+<p>
+    表 2 列出了最常用的类型专用列名称类：
+</p>
+<p class="table-caption" id="table2">
+  <strong>表 2. </strong>类型专用列名称类</p>
+<table>
+  <tr>
+    <th scope="col">映射类</th>
+    <th scope="col">数据类型</th>
+    <th scope="col">备注</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredName}</td>
+    <td>与该数据行关联的原始联系人的姓名数据。</td>
+    <td>一位原始联系人只有其中一行。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Photo}</td>
+    <td>与该数据行关联的原始联系人的主要照片。</td>
+    <td>一位原始联系人只有其中一行。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Email}</td>
+    <td>与该数据行关联的原始联系人的电子邮件地址。</td>
+    <td>一位原始联系人可有多个电子邮件地址。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal}</td>
+    <td>与该数据行关联的原始联系人的邮政地址。</td>
+    <td>一位原始联系人可有多个邮政地址。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}</td>
+    <td>将原始联系人链接到联系人提供程序内其中一组的标识符。</td>
+    <td>
+        组是帐户类型和帐户名称的一项可选功能。<a href="#Groups">联系人组</a>部分对其做了更详尽的描述。
+
+    </td>
+  </tr>
+</table>
+<h3 id="ContactBasics">联系人</h3>
+<p>
+    联系人提供程序通过将所有帐户类型和帐户名称的原始联系人行合并来形成<strong>联系人</strong>。
+这可以为显示和修改用户针对某一联系人收集的所有数据提供便利。
+联系人提供程序管理新联系人行的创建，以及原始联系人与现有联系人行的合并。
+系统不允许应用或同步适配器添加联系人，并且联系人行中的某些列是只读列。
+
+</p>
+<p class="note">
+    <strong>注：</strong>如果您试图通过
+{@link android.content.ContentResolver#insert(Uri,ContentValues) insert()} 向联系人提供程序添加联系人，会引发一个 {@link java.lang.UnsupportedOperationException} 异常。
+如果您试图更新一个列为“只读”的列，更新会被忽略。
+
+</p>
+<p>
+    如果添加的新原始联系人不匹配任何现有联系人，联系人提供程序会相应地创建新联系人。
+如果某个现有原始联系人的数据发生了变化，不再匹配其之前关联的联系人，则提供程序也会执行此操作。
+
+如果应用或同步适配器创建的新原始联系人“的确”<em></em>匹配某位现有联系人，则新原始联系人将与现有联系人合并。
+
+
+</p>
+<p>
+    联系人提供程序通过 {@link android.provider.ContactsContract.Contacts Contacts} 表中联系人行的
+<code>_ID</code> 列将联系人行与其各原始联系人行链接起来。
+原始联系人表 {@link android.provider.ContactsContract.RawContacts} 的 <code>CONTACT_ID</code> 列包含对应于每个原始联系人行所关联联系人行的 <code>_ID</code> 值。
+
+
+</p>
+<p>
+    {@link android.provider.ContactsContract.Contacts} 表还有一个
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} 列，它是一个指向联系人行的“永久性”链接。
+由于联系人提供程序会自动维护联系人，因此可能会在合并或同步时相应地更改联系人行的 {@code android.provider.BaseColumns#_ID} 值。
+
+即使发生这种情况，合并了联系人
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} 的内容 URI
+{@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI} 仍将指向联系人行，这样，您就能使用
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}
+保持指向“最喜爱”联系人的链接，以及执行其他操作。
+该列具有其自己的格式，与 {@code android.provider.BaseColumns#_ID} 列的格式无关。
+
+</p>
+<p>
+    图 3 显示的是这三个主要表的相互关系。
+</p>
+<img src="{@docRoot}images/providers/contacts_tables.png" alt="Contacts provider main tables" height="514" id="figure4" />
+<p class="img-caption">
+  <strong>图 3. </strong>联系人表、原始联系人表与详细信息表之间的关系。
+</p>
+<h2 id="Sources">来自同步适配器的数据</h2>
+<p>
+    虽然用户是直接将联系人数据输入到设备中，但这些数据也会通过<strong>同步适配器</strong>从 Web 服务流入联系人提供程序中，这些同步适配器可自动化设备与服务之间的数据传送。
+
+同步适配器在系统控制下在后台运行，它们会调用 {@link android.content.ContentResolver} 方法来管理数据。
+
+
+</p>
+<p>
+    在 Android 中，与同步适配器协作的 Web 服务通过帐户类型加以标识。
+    每个同步适配器都与一个帐户类型协作，但它可以支持该类型的多个帐户名称。
+<a href="#RawContactsExample">原始联系人数据来源</a>部分对帐户类型和帐户名称做了简要描述。
+下列定义提供了更多详细信息，并描述了帐户类型及帐户名称与同步适配器及服务之间的关系。
+
+</p>
+<dl>
+    <dt>
+        帐户类型
+    </dt>
+    <dd>
+        表示用户在其中存储数据的服务。在大多数时候，用户需要向服务验证身份。
+例如，Google Contacts 是一个以代码 <code>google.com</code> 标识的帐户类型。
+该值对应于
+{@link android.accounts.AccountManager} 使用的帐户类型。
+    </dd>
+    <dt>
+        帐户名称
+    </dt>
+    <dd>
+        表示某个帐户类型的特定帐户或登录名。Google Contacts 帐户与 Google 帐户相同，都是以电子邮件地址作为帐户名称。
+
+        其他服务可能使用一个单词的用户名或数字 ID。
+    </dd>
+</dl>
+<p>
+    帐户类型不必具有唯一性。用户可以配置多个 Google Contacts 帐户并将它们的数据下载到联系人提供程序；如果用户为个人帐户名称和工作帐户名称分别设置了一组联系人，就可能发生这种情况。
+
+帐户名称通常具有唯一性。
+它们共同标识联系人提供程序与外部服务之间的特定数据流。
+
+</p>
+<p>
+    如果您想将服务的数据传送到联系人提供程序，则需编写您自己的同步适配器。
+<a href="#SyncAdapters">联系人提供程序同步适配器</a>部分对此做了更详尽的描述。
+
+</p>
+<p>
+    图 4 显示的是联系人提供程序如何融入联系人数据的流动。
+在名为“同步适配器”的方框中，每个适配器都以其帐户类型命名。
+</p>
+<img src="{@docRoot}images/providers/ContactsDataFlow.png" alt="Flow of data about people" height="252" id="figure5" />
+<p class="img-caption">
+  <strong>图 4. </strong>联系人提供程序数据流。
+</p>
+<h2 id="Permissions">所需权限</h2>
+<p>
+    想要访问联系人提供程序的应用必须请求以下权限：
+
+</p>
+<dl>
+    <dt>对一个或多个表的读取权限</dt>
+    <dd>
+        {@link android.Manifest.permission#READ_CONTACTS}，在
+<code>AndroidManifest.xml</code> 中指定，使用
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> 元素作为
+<code>&lt;uses-permission android:name="android.permission.READ_CONTACTS"&gt;</code>。
+    </dd>
+    <dt>对一个或多个表的写入权限</dt>
+    <dd>
+        {@link android.Manifest.permission#WRITE_CONTACTS}，在
+<code>AndroidManifest.xml</code> 中指定，使用
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> 元素作为
+<code>&lt;uses-permission android:name="android.permission.WRITE_CONTACTS"&gt;</code>。
+    </dd>
+</dl>
+<p>
+    这些权限不适用于用户个人资料数据。下面的<a href="#UserProfile">用户个人资料</a>部分对用户个人资料及其所需权限做了阐述。
+
+
+</p>
+<p>
+    请切记，用户的联系人数据属于个人敏感数据。用户关心其隐私权，因此不希望应用收集有关其自身的数据或其联系人的数据。
+
+    如需权限来访问其联系人数据的理由并不充分，用户可能给您的应用作出差评或干脆拒绝安装。
+
+</p>
+<h2 id="UserProfile">用户个人资料</h2>
+<p>
+    {@link android.provider.ContactsContract.Contacts} 表有一行包含设备用户的个人资料数据。
+这些数据描述设备的 <code>user</code> 而不是用户的其中一位联系人。
+对于每个使用个人资料的系统，该个人资料联系人行都链接到某个原始联系人行。
+
+    每个个人资料原始联系人行可具有多个数据行。{@link android.provider.ContactsContract.Profile} 类中提供了用于访问用户个人资料的常量。
+
+</p>
+<p>
+    访问用户个人资料需要特殊权限。除了进行读取和写入所需的
+{@link android.Manifest.permission#READ_CONTACTS} 和
+{@link android.Manifest.permission#WRITE_CONTACTS} 权限外，如果想访问用户个人资料，还分别需要 {@code android.Manifest.permission#READ_PROFILE} 和
+{@code android.Manifest.permission#WRITE_PROFILE} 权限进行读取和写入访问。
+
+
+</p>
+<p>
+    请切记，您应该将用户的个人资料视为敏感数据。{@code android.Manifest.permission#READ_PROFILE} 权限让您可以访问设备用户的个人身份识别数据。
+
+请务必在您的应用的描述中告知用户您需要用户个人资料访问权限的原因。
+
+</p>
+<p>
+    要检索包含用户个人资料的联系人行，请调用 {@link android.content.ContentResolver#query(Uri,String[], String, String[], String)
+ContentResolver.query()}。
+将内容 URI 设置为
+{@link android.provider.ContactsContract.Profile#CONTENT_URI} 并且不要提供任何选择条件。
+您还可以使用该内容 URI 作为检索原始联系人或个人资料数据的基本 URI。
+例如，以下代码段用于检索个人资料数据：
+</p>
+<pre>
+// Sets the columns to retrieve for the user profile
+mProjection = new String[]
+    {
+        Profile._ID,
+        Profile.DISPLAY_NAME_PRIMARY,
+        Profile.LOOKUP_KEY,
+        Profile.PHOTO_THUMBNAIL_URI
+    };
+
+// Retrieves the profile from the Contacts Provider
+mProfileCursor =
+        getContentResolver().query(
+                Profile.CONTENT_URI,
+                mProjection ,
+                null,
+                null,
+                null);
+</pre>
+<p class="note">
+    <strong>注：</strong>如果您要检索多个联系人行并想要确定其中一个是否为用户个人资料，请测试该行的
+{@link android.provider.ContactsContract.ContactsColumns#IS_USER_PROFILE} 列。
+如果该联系人是用户个人资料，则此列设置为“1”。
+
+</p>
+<h2 id="ContactsProviderMetadata">联系人提供程序元数据</h2>
+<p>
+    联系人提供程序管理用于追踪存储库中联系人数据状态的数据。
+这些有关存储库的元数据存储在各处，其中包括原始联系人表行、数据表行和联系人表行、
+{@link android.provider.ContactsContract.Settings} 表以及
+{@link android.provider.ContactsContract.SyncState} 表。
+下表显示的是每一部分元数据的作用：
+
+</p>
+<p class="table-caption" id="table3">
+  <strong>表 3. </strong>联系人提供程序中的元数据</p>
+<table>
+    <tr>
+        <th scope="col">表</th>
+        <th scope="col">列</th>
+        <th scope="col">值</th>
+        <th scope="col">含义</th>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.RawContacts}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.SyncColumns#DIRTY}</td>
+        <td>“0”：上次同步以来未发生变化。</td>
+        <td rowspan="2">
+            标记设备上因发生变化而需要同步回服务器的原始联系人。
+当 Android 应用更新行时，联系人提供程序会自动设置该值。
+
+            <p>
+                修改原始联系人表或数据表的同步适配器应始终向他们使用的内容 URI 追加字符串 {@link android.provider.ContactsContract#CALLER_IS_SYNCADAPTER}。
+
+这可以防止提供程序将行标记为已更新。
+                否则，即使服务器是修改的来源，同步适配器修改仍显示为本地修改，并会发送到服务器。
+
+            </p>
+        </td>
+    </tr>
+    <tr>
+            <td>“1”：上次同步以来发生了变化，需要同步回服务器。</td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#VERSION}</td>
+        <td>此行的版本号。</td>
+        <td>
+            每当行或其相关数据发生变化时，联系人提供程序都会自动增加此值。
+
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.Data}</td>
+        <td>{@link android.provider.ContactsContract.DataColumns#DATA_VERSION}</td>
+        <td>此行的版本号。</td>
+        <td>
+            每当数据行发生变化时，联系人提供程序都会自动增加此值。
+
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}</td>
+        <td>
+            一个字符串值，用于在创建此原始联系人的帐户中对该联系人进行唯一标识。
+
+        </td>
+        <td>
+            当同步适配器创建新原始联系人时，此列应设置为该原始联系人在服务器中的唯一 ID。
+当 Android 应用创建新原始联系人时，应将此列留空。
+这是为了向同步适配器表明，它应该在服务器上创建新原始联系人，并获取
+ {@link android.provider.ContactsContract.SyncColumns#SOURCE_ID} 的值。
+
+            <p>
+                具体地讲，对于每个帐户类型，该源 ID 都必须是<strong>唯一</strong>的，并且应在所有同步中保持稳定：
+
+            </p>
+                <ul>
+                    <li>
+                        唯一：帐户的每个原始联系人都必须有自己的源 ID。如果您不强制执行此要求，会在联系人应用中引发问题。
+
+                        请注意，帐户<em>类型</em>相同的两个原始联系人可以具有相同的源 ID。
+例如，允许帐户 {@code emily.dickinson@gmail.com} 的原始联系人“Thomas Higginson”与帐户
+{@code emilyd@gmail.com} 的原始联系人“Thomas Higginson”具有相同的源 ID。
+
+
+                    </li>
+                    <li>
+                        稳定：源 ID 是该原始联系人在在线服务中的数据的永久性组成部分。
+例如，如果用户从应用设置中清除存储的联系人数据并重新同步，则恢复的原始联系人的源 ID 应与以前相同。
+
+如果您不强制执行此要求，快捷方式将停止工作。
+
+                    </li>
+                </ul>
+        </td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Groups}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.GroupsColumns#GROUP_VISIBLE}</td>
+        <td>“0”：此组中的联系人在 Android 应用 UI 中不应处于可见状态。</td>
+        <td>
+            此列用于兼容那些允许用户隐藏特定组中联系人的服务器。
+
+        </td>
+    </tr>
+    <tr>
+        <td>“1”：系统允许此组中的联系人在应用 UI 中处于可见状态。</td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Settings}</td>
+        <td rowspan="2">
+            {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE}</td>
+        <td>
+            “0”：对于此帐户和帐户类型，未归入组的联系人在 Android 应用 UI 中处于不可见状态。
+
+        </td>
+        <td rowspan="2">
+            默认情况下，如果联系人的所有原始联系人都未归入组，则它们将处于不可见状态（原始联系人的组成员身份通过 {@link android.provider.ContactsContract.Data} 表中的一个或多个
+{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership} 行指示）。
+
+
+            通过在 {@link android.provider.ContactsContract.Settings} 表行中为帐户类型和帐户设置此标志，您可以强制未归入组的联系人处于可见状态。
+
+            此标志的一个用途是显示不使用组的服务器上的联系人。
+        </td>
+    </tr>
+    <tr>
+        <td>
+            “1”：对于此帐户和帐户类型，未归入组的联系人在应用 UI 中处于可见状态。
+
+        </td>
+
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.SyncState}</td>
+        <td>（所有列）</td>
+        <td>
+            此表用于存储同步适配器的元数据。
+        </td>
+        <td>
+            利用此表，您可以将同步状态及其他同步相关数据持久地存储在设备中。
+
+        </td>
+    </tr>
+</table>
+<h2 id="Access">联系人提供程序访问</h2>
+<p>
+    本节描述访问联系人提供程序中数据的准则，侧重于阐述以下内容：
+
+</p>
+<ul>
+    <li>
+        实体查询。
+    </li>
+    <li>
+        批量修改。
+    </li>
+    <li>
+        通过 Intent 执行检索和修改。
+    </li>
+    <li>
+        数据完整性。
+    </li>
+</ul>
+<p>
+    <a href="#SyncAdapters">联系人提供程序同步适配器</a>部分也对通过同步适配器进行修改做了更详尽的阐述。
+
+</p>
+<h3 id="Entities">查询实体</h3>
+<p>
+    由于联系人提供程序表是以层级形式组织，因此对于检索某一行以及与其链接的所有“子”行，往往很有帮助。
+例如，要想显示某位联系人的所有信息，您可能需要检索某个
+{@link android.provider.ContactsContract.Contacts} 行的所有{@link android.provider.ContactsContract.RawContacts} 行，或者检索某个
+{@link android.provider.ContactsContract.RawContacts} 行的所有
+{@link android.provider.ContactsContract.CommonDataKinds.Email} 行。
+
+为便于执行此操作，联系人提供程序提供了<strong>实体</strong>构造，其作用类似于表间的数据库连接。
+
+
+</p>
+<p>
+    实体类似于一个表，由父表及其子表中的选定列组成。
+    当您查询实体时，需要根据实体中的可用列提供投影和搜索条件。
+结果会得到一个 {@link android.database.Cursor}，检索的每个子表行在其中都有一行与之对应。
+例如，如果您在
+{@link android.provider.ContactsContract.Contacts.Entity} 中查询某个联系人姓名以及该姓名所有原始联系人的所有 {@link android.provider.ContactsContract.CommonDataKinds.Email} 行，您会获得一个 {@link android.database.Cursor}，每个 {@link android.provider.ContactsContract.CommonDataKinds.Email} 行在其中都有一行与之对应。
+
+
+
+</p>
+<p>
+    实体简化了查询。使用实体时，您可以一次性检索联系人或原始联系人的所有联系人数据，而不必先通过查询父表获得ID，然后通过该 ID 查询子表。此外，联系人提供程序可通过单一事务处理实体查询，这确保了所检索数据的内部一致性。
+
+
+
+
+</p>
+<p class="note">
+    <strong>注：</strong>实体通常不包含父表和子表的所有列。
+如果您试图使用的列名称并未出现在实体的列名称常量列表中，则会引发一个 {@link java.lang.Exception}。
+
+</p>
+<p>
+    以下代码段说明如何检索某位联系人的所有原始联系人行。该代码段是一个大型应用的组成部分，包含“主”和“详”两个 Activity。
+主 Activity 显示一个联系人行列表；当用户选择一行时，该 Activity 会将其 ID 发送至详 Activity。
+
+详 Activity 使用 {@link android.provider.ContactsContract.Contacts.Entity} 显示与所选联系人关联的所有原始联系人中的所有数据行。
+
+
+</p>
+<p>
+    以下代码段摘自“detail”Activity：
+</p>
+<pre>
+...
+    /*
+     * Appends the entity path to the URI. In the case of the Contacts Provider, the
+     * expected URI is content://com.google.contacts/#/entity (# is the ID value).
+     */
+    mContactUri = Uri.withAppendedPath(
+            mContactUri,
+            ContactsContract.Contacts.Entity.CONTENT_DIRECTORY);
+
+    // Initializes the loader identified by LOADER_ID.
+    getLoaderManager().initLoader(
+            LOADER_ID,  // The identifier of the loader to initialize
+            null,       // Arguments for the loader (in this case, none)
+            this);      // The context of the activity
+
+    // Creates a new cursor adapter to attach to the list view
+    mCursorAdapter = new SimpleCursorAdapter(
+            this,                        // the context of the activity
+            R.layout.detail_list_item,   // the view item containing the detail widgets
+            mCursor,                     // the backing cursor
+            mFromColumns,                // the columns in the cursor that provide the data
+            mToViews,                    // the views in the view item that display the data
+            0);                          // flags
+
+    // Sets the ListView's backing adapter.
+    mRawContactList.setAdapter(mCursorAdapter);
+...
+&#64;Override
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+
+    /*
+     * Sets the columns to retrieve.
+     * RAW_CONTACT_ID is included to identify the raw contact associated with the data row.
+     * DATA1 contains the first column in the data row (usually the most important one).
+     * MIMETYPE indicates the type of data in the data row.
+     */
+    String[] projection =
+        {
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID,
+            ContactsContract.Contacts.Entity.DATA1,
+            ContactsContract.Contacts.Entity.MIMETYPE
+        };
+
+    /*
+     * Sorts the retrieved cursor by raw contact id, to keep all data rows for a single raw
+     * contact collated together.
+     */
+    String sortOrder =
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID +
+            " ASC";
+
+    /*
+     * Returns a new CursorLoader. The arguments are similar to
+     * ContentResolver.query(), except for the Context argument, which supplies the location of
+     * the ContentResolver to use.
+     */
+    return new CursorLoader(
+            getApplicationContext(),  // The activity's context
+            mContactUri,              // The entity content URI for a single contact
+            projection,               // The columns to retrieve
+            null,                     // Retrieve all the raw contacts and their data rows.
+            null,                     //
+            sortOrder);               // Sort by the raw contact ID.
+}
+</pre>
+<p>
+    加载完成时，{@link android.app.LoaderManager} 会调用一个
+{@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished(Loader, D)
+onLoadFinished()} 回调。此方法的传入参数之一是一个
+{@link android.database.Cursor}，其中包含查询的结果。在您自己的应用中，您可以从该 {@link android.database.Cursor} 获取数据，以进行显示或做进一步处理。
+
+</p>
+<h3 id="Transactions">批量修改</h3>
+<p>
+    您应尽可能地通过创建一个 {@link android.content.ContentProviderOperation} 对象 {@link java.util.ArrayList}
+并调用 {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}，以“批处理模式”在联系人提供程序中插入、更新和删除数据。
+
+由于联系人提供程序是在
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 中通过单一事务执行所有操作，因此您的修改绝不会使联系人存储库出现不一致问题。
+
+
+此外，批量修改还有便于同时插入原始联系人及其明细数据。
+
+</p>
+<p class="note">
+    <strong>注：</strong>要修改<em>单个</em>原始联系人，可以考虑向设备的联系人应用发送一个 Intent，而不是在您的应用中处理修改。<a href="#Intents">通过 Intent 执行检索和修改</a>部分对此操作做了更详尽的描述。
+
+
+
+</p>
+<h4>屈服点</h4>
+<p>
+    一个包含大量操作的批量修改可能会阻断其他进程，导致糟糕的总体用户体验。
+要将您想执行的所有修改组织到尽可能少的单独列表中，同时防止它们阻断系统，则应为一项或多项操作设置<strong>屈服点</strong>。
+
+
+    屈服点是一个 {@link android.content.ContentProviderOperation} 对象，其
+{@link android.content.ContentProviderOperation#isYieldAllowed()} 值设置为
+<code>true</code>。当联系人提供程序遇到屈服点时，它会暂停其工作，让其他进程运行，并关闭当前事务。
+当提供程序再次启动时，它会继续执行 {@link java.util.ArrayList} 中的下一项操作，并启动一个新的事务。
+
+
+</p>
+<p>
+    屈服点会导致每次调用
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 会产生多个事务。因此，您应该为针对一组相关行的最后一项操作设置屈服点。
+
+    例如，您应该为一组操作中添加原始联系人行及其关联数据行的最后一项操作，或者针对一组与一位联系人相关的行的最后一项操作设置屈服点。
+
+
+</p>
+<p>
+    屈服点也是一个原子操作单元。两个屈服点之间所有访问的成功或失败都将以一个单元的形式出现。
+如果您不设置任何屈服点，则最小的原子操作是整个批量操作。
+如果您使用了屈服点，则可以防止操作降低系统性能，还可确保一部分操作是原子操作。
+
+
+</p>
+<h4>修改向后引用</h4>
+<p>
+    当您将一个新原始联系人行及其关联的数据行作为一组
+{@link android.content.ContentProviderOperation} 对象插入时，需要通过将原始联系人的
+{@code android.provider.BaseColumns#_ID} 值作为
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID} 值插入，将数据行链接到原始联系人行。
+不过，当您为数据行创建
+{@link android.content.ContentProviderOperation} 时，该值不可用，因为您尚未对原始联系人行应用
+{@link android.content.ContentProviderOperation}。
+为解决此问题，
+{@link android.content.ContentProviderOperation.Builder} 类使用了
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()} 方法。
+    该方法让您可以插入或修改包含上一操作结果的列。
+
+</p>
+<p>
+    {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+方法具有两个参数：
+</p>
+    <dl>
+        <dt>
+            <code>key</code>
+        </dt>
+        <dd>
+            键-值对的键。此参数的值应为您要修改的表中某一列的名称。
+
+        </dd>
+        <dt>
+            <code>previousResult</code>
+        </dt>
+        <dd>
+            {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 中
+{@link android.content.ContentProviderResult} 对象数组内某一值以 0 开始的索引。
+应用批处理操作时，每个操作的结果都存储在一个中间结果数组内。
+
+<code>previousResult</code> 值是其中一个结果的索引，它通过 <code>key</code>
+值进行检索和存储。
+这样，您就可以插入一条新的原始联系人记录，并取回其
+{@code android.provider.BaseColumns#_ID} 值，然后在添加 {@link android.provider.ContactsContract.Data} 行时“向后引用”该值。
+
+            <p>
+                系统会在您首次调用
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 时创建整个结果数组，其大小与您提供的 {@link android.content.ContentProviderOperation} 对象的 {@link java.util.ArrayList} 大小相等。
+
+不过，结果数组中的所有元素都设置为 <code>null</code>，如果您试图向后引用某个尚未应用的操作的结果，
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+会引发一个 {@link java.lang.Exception}。
+
+
+
+            </p>
+        </dd>
+    </dl>
+<p>
+    以下代码段说明如何批量插入新原始联系人和数据。代码段中包括用于建立屈服点和使用向后引用的代码。
+这些代码段是扩展版本的 <code>createContacEntry()</code> 方法，该方法是 <code><a href="{@docRoot}resources/samples/ContactManager/index.html">
+    Contact Manager</a></code> 示例应用中 <code>ContactAdder</code> 类的组成部分。
+
+
+
+</p>
+<p>
+    第一个代码段用于检索 UI 中的联系人数据。此时，用户已经选择了应添加新原始联系人的帐户。
+
+</p>
+<pre>
+// Creates a contact entry from the current UI values, using the currently-selected account.
+protected void createContactEntry() {
+    /*
+     * Gets values from the UI
+     */
+    String name = mContactNameEditText.getText().toString();
+    String phone = mContactPhoneEditText.getText().toString();
+    String email = mContactEmailEditText.getText().toString();
+
+    int phoneType = mContactPhoneTypes.get(
+            mContactPhoneTypeSpinner.getSelectedItemPosition());
+
+    int emailType = mContactEmailTypes.get(
+            mContactEmailTypeSpinner.getSelectedItemPosition());
+</pre>
+<p>
+    下一个代码段用于创建将该原始联系人行插入
+{@link android.provider.ContactsContract.RawContacts} 表的操作：
+</p>
+<pre>
+    /*
+     * Prepares the batch operation for inserting a new raw contact and its data. Even if
+     * the Contacts Provider does not have any data for this person, you can't add a Contact,
+     * only a raw contact. The Contacts Provider will then add a Contact automatically.
+     */
+
+     // Creates a new array of ContentProviderOperation objects.
+    ArrayList&lt;ContentProviderOperation&gt; ops =
+            new ArrayList&lt;ContentProviderOperation&gt;();
+
+    /*
+     * Creates a new raw contact with its account type (server type) and account name
+     * (user's account). Remember that the display name is not stored in this row, but in a
+     * StructuredName data row. No other data is required.
+     */
+    ContentProviderOperation.Builder op =
+            ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI)
+            .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType())
+            .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    接着，代码会创建显示姓名行、电话行和电子邮件行的数据行。
+</p>
+<p>
+    每个操作生成器对象都使用
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+来获取
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}。引用指回来自第一次操作的 {@link android.content.ContentProviderResult} 对象，第一次操作就是添加原始联系人行并返回其新 {@code android.provider.BaseColumns#_ID}
+值。
+
+结果是，每个数据行都通过其
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}
+自动链接到其所属的 {@link android.provider.ContactsContract.RawContacts} 行。
+</p>
+<p>
+    添加电子邮件行的 {@link android.content.ContentProviderOperation.Builder} 对象带有
+{@link android.content.ContentProviderOperation.Builder#withYieldAllowed(boolean)
+withYieldAllowed()} 标志，用于设置屈服点：
+</p>
+<pre>
+    // Creates the display name for the new raw contact, as a StructuredName data row.
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * withValueBackReference sets the value of the first argument to the value of
+             * the ContentProviderResult indexed by the second argument. In this particular
+             * call, the raw contact ID column of the StructuredName data row is set to the
+             * value of the result returned by the first operation, which is the one that
+             * actually adds the raw contact row.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to StructuredName
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
+
+            // Sets the data row's display name to the name in the UI.
+            .withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified phone number and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Phone
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
+
+            // Sets the phone number and type
+            .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, phone)
+            .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, phoneType);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified email and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Email
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE)
+
+            // Sets the email address and type
+            .withValue(ContactsContract.CommonDataKinds.Email.ADDRESS, email)
+            .withValue(ContactsContract.CommonDataKinds.Email.TYPE, emailType);
+
+    /*
+     * Demonstrates a yield point. At the end of this insert, the batch operation's thread
+     * will yield priority to other threads. Use after every set of operations that affect a
+     * single contact, to avoid degrading performance.
+     */
+    op.withYieldAllowed(true);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    最后一个代码段显示的是
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 调用，用于插入新原始联系人行和数据行。
+
+</p>
+<pre>
+    // Ask the Contacts Provider to create a new contact
+    Log.d(TAG,"Selected account: " + mSelectedAccount.getName() + " (" +
+            mSelectedAccount.getType() + ")");
+    Log.d(TAG,"Creating contact: " + name);
+
+    /*
+     * Applies the array of ContentProviderOperation objects in batch. The results are
+     * discarded.
+     */
+    try {
+
+            getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
+    } catch (Exception e) {
+
+            // Display a warning
+            Context ctx = getApplicationContext();
+
+            CharSequence txt = getString(R.string.contactCreationFailure);
+            int duration = Toast.LENGTH_SHORT;
+            Toast toast = Toast.makeText(ctx, txt, duration);
+            toast.show();
+
+            // Log exception
+            Log.e(TAG, "Exception encountered while inserting contact: " + e);
+    }
+}
+</pre>
+<p>
+    此外，您还可以利用批处理操作实现<strong>乐观并发控制</strong>，这是一种无需锁定底层存储库便可应用修改事务的控制方法。
+
+    要使用此方法，您需要应用事务，然后检查是否存在可能已同时做出的其他修改。
+如果您发现了不一致的修改，请回滚事务并重试。
+
+</p>
+<p>
+    乐观并发控制对于移动设备很有用，因为在移动设备上，同一时间只有一位用户，并且同时访问数据存储库的情况很少见。
+由于未使用锁定功能，因此不用浪费时间设置锁定或等待其他事务解除锁定。
+
+</p>
+<p>
+    要在更新某个
+{@link android.provider.ContactsContract.RawContacts} 行时使用乐观并发控制，请按以下步骤操作：
+</p>
+<ol>
+    <li>
+        检索原始联系人的 {@link android.provider.ContactsContract.SyncColumns#VERSION}
+列以及要检索的其他数据。
+    </li>
+    <li>
+        创建一个适合使用
+{@link android.content.ContentProviderOperation#newAssertQuery(Uri)} 方法强制执行约束
+的 {@link android.content.ContentProviderOperation.Builder} 对象。对于内容 URI，请使用追加有原始联系人 {@code android.provider.BaseColumns#_ID} 的 {@link android.provider.ContactsContract.RawContacts#CONTENT_URI
+RawContacts.CONTENT_URI}
+。
+
+    </li>
+    <li>
+        对于 {@link android.content.ContentProviderOperation.Builder} 对象，请调用
+{@link android.content.ContentProviderOperation.Builder#withValue(String, Object)
+withValue()}，对 {@link android.provider.ContactsContract.SyncColumns#VERSION}
+列与您刚检索的版本号进行比较。
+    </li>
+    <li>
+        对于同一 {@link android.content.ContentProviderOperation.Builder}，请调用
+{@link android.content.ContentProviderOperation.Builder#withExpectedCount(int)
+withExpectedCount()}，确保此断言只对一行进行测试。
+    </li>
+    <li>
+        调用 {@link android.content.ContentProviderOperation.Builder#build()} 创建
+{@link android.content.ContentProviderOperation} 对象，然后将此对象添加为要传递至
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 的 {@link java.util.ArrayList} 中的第一个对象。
+
+    </li>
+    <li>
+        应用批处理事务。
+    </li>
+</ol>
+<p>
+    如果在您读取原始联系人行到您试图对其进行修改这段时间有另一项操作更新了该行，“断言”{@link android.content.ContentProviderOperation}
+将会失败，系统将终止整个批处理操作。
+此情况下，您可以选择重新执行批处理操作，或执行其他某操作。
+
+</p>
+<p>
+    以下代码段演示如何在使用 {@link android.content.CursorLoader} 查询一位原始联系人后创建一个“断言”
+{@link android.content.ContentProviderOperation}：
+
+</p>
+<pre>
+/*
+ * The application uses CursorLoader to query the raw contacts table. The system calls this method
+ * when the load is finished.
+ */
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor cursor) {
+
+    // Gets the raw contact's _ID and VERSION values
+    mRawContactID = cursor.getLong(cursor.getColumnIndex(BaseColumns._ID));
+    mVersion = cursor.getInt(cursor.getColumnIndex(SyncColumns.VERSION));
+}
+
+...
+
+// Sets up a Uri for the assert operation
+Uri rawContactUri = ContentUris.withAppendedId(RawContacts.CONTENT_URI, mRawContactID);
+
+// Creates a builder for the assert operation
+ContentProviderOperation.Builder assertOp = ContentProviderOperation.netAssertQuery(rawContactUri);
+
+// Adds the assertions to the assert operation: checks the version and count of rows tested
+assertOp.withValue(SyncColumns.VERSION, mVersion);
+assertOp.withExpectedCount(1);
+
+// Creates an ArrayList to hold the ContentProviderOperation objects
+ArrayList ops = new ArrayList&lt;ContentProviderOperationg&gt;;
+
+ops.add(assertOp.build());
+
+// You would add the rest of your batch operations to "ops" here
+
+...
+
+// Applies the batch. If the assert fails, an Exception is thrown
+try
+    {
+        ContentProviderResult[] results =
+                getContentResolver().applyBatch(AUTHORITY, ops);
+
+    } catch (OperationApplicationException e) {
+
+        // Actions you want to take if the assert operation fails go here
+    }
+</pre>
+<h3 id="Intents">通过 Intent 执行检索和修改</h3>
+<p>
+    通过向设备的联系人应用发送 Intent，您可以间接访问联系人提供程序。
+ Intent 会启动设备的联系人应用 UI，用户可以在其中执行与联系人有关的操作。
+通过这种访问方式，用户可以：
+    <ul>
+        <li>从列表中选取一位联系人并将其返回给您的应用以执行进一步操作。</li>
+        <li>编辑现有联系人的数据。</li>
+        <li>为其任一帐户插入新原始联系人。</li>
+        <li>删除联系人或联系人数据。</li>
+    </ul>
+<p>
+    如果用户要插入或更新数据，您可以先收集数据，然后将其作为 Intent 的一部分发送。
+
+</p>
+<p>
+    当您使用 Intent 通过设备的联系人应用访问联系人提供程序时，您无需自行编写用于访问该提供程序的 UI 或代码。
+您也无需请求对提供程序的读取或写入权限。
+设备的联系人应用可以将联系人读取权限授予给您，而且您是通过另一个应用对该提供程序进行修改，不需要拥有写入权限。
+
+
+</p>
+<p>
+    <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">内容提供程序基础知识</a>指南“通过 Intent 访问数据”部分详细描述了通过发送 Intent 来访问某提供程序的一般过程。
+
+表 4 汇总了您为可用任务使用的操作、MIME 类型以及数据值，{@link android.provider.ContactsContract.Intents.Insert} 参考文档列出了您可用于{@link android.content.Intent#putExtra(String, String) putExtra()} 的 Extra 值：
+
+
+
+
+</p>
+<p class="table-caption" id="table4">
+  <strong>表 4. </strong>联系人提供程序 Intent。
+</p>
+<table style="width:75%">
+    <tr>
+        <th scope="col" style="width:10%">任务</th>
+        <th scope="col" style="width:5%">操作</th>
+        <th scope="col" style="width:10%">数据</th>
+        <th scope="col" style="width:10%">MIME 类型</th>
+        <th scope="col" style="width:25%">备注</th>
+    </tr>
+    <tr>
+        <td><strong>从列表中选取一位联系人</strong></td>
+        <td>{@link android.content.Intent#ACTION_PICK}</td>
+        <td>
+            下列值之一：
+            <ul>
+                <li>
+{@link android.provider.ContactsContract.Contacts#CONTENT_URI Contacts.CONTENT_URI}，显示联系人列表。
+
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Phone#CONTENT_URI Phone.CONTENT_URI}，显示原始联系人的电话号码列表。
+
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal#CONTENT_URI
+StructuredPostal.CONTENT_URI}，显示原始联系人的邮政地址列表。
+
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_URI Email.CONTENT_URI}，显示原始联系人的电子邮件地址列表。
+
+                </li>
+            </ul>
+        </td>
+        <td>
+            未使用
+        </td>
+        <td>
+            显示原始联系人列表或一位原始联系人的数据列表，具体取决于您提供的内容 URI 类型。
+
+            <p>
+                调用
+ {@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()} 方法，该方法返回所选行的内容 URI。
+该 URI 的形式为：追加有该行 <code>LOOKUP_ID</code> 的表的内容 URI。
+
+                设备的联系人应用会在 Activity 的生命周期内将读取和写入权限授予给此内容 URI。
+如需了解更多详细信息，请参阅<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">内容提供程序基础知识</a>指南。
+
+
+            </p>
+        </td>
+    </tr>
+    <tr>
+        <td><strong>插入新原始联系人</strong></td>
+        <td>{@link android.provider.ContactsContract.Intents.Insert#ACTION Insert.ACTION}</td>
+        <td>不适用</td>
+        <td>
+            {@link android.provider.ContactsContract.RawContacts#CONTENT_TYPE
+RawContacts.CONTENT_TYPE}，用于一组原始联系人的 MIME 类型。
+        </td>
+        <td>
+            显示设备联系人应用的<strong>添加联系人</strong>屏幕。系统会显示您添加到 Intent 中的 Extra 值。
+如果是随
+{@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()}
+ 发送，系统会将新添加的原始联系人的内容 URI 传回给
+{@link android.app.Activity#onActivityResult(int, int, Intent) onActivityResult()}
+回调方法并作为后者 {@link android.content.Intent} 参数的“data”字段。
+要获取该值，请调用 {@link android.content.Intent#getData()}。
+        </td>
+    </tr>
+    <tr>
+        <td><strong>编辑联系人</strong></td>
+        <td>{@link android.content.Intent#ACTION_EDIT}</td>
+        <td>
+            该联系人的 {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI}。
+该编辑器 Activity 让用户能够对任何与该联系人关联的数据进行编辑。
+
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE
+Contacts.CONTENT_ITEM_TYPE}，一位联系人。</td>
+        <td>
+            显示联系人应用中的“编辑联系人”屏幕。系统会显示您添加到 Intent 中的 Extra 值。
+当用户点击<strong>完成</strong>保存编辑时，您的 Activity 会返回前台。
+
+        </td>
+    </tr>
+    <tr>
+        <td><strong>显示一个同样可以添加数据的选取器。</strong></td>
+        <td>{@link android.content.Intent#ACTION_INSERT_OR_EDIT}</td>
+        <td>
+            不适用
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE}
+        </td>
+         <td>
+            此 Intent 始终显示联系人应用的选取器屏幕。用户可以选取要编辑的联系人，或添加新联系人。
+根据用户的选择，系统会显示编辑屏幕或添加屏幕，还会显示您使用 Intent 传递的 Extra 数据。
+
+如果您的应用显示电子邮件或电话号码等联系人数据，请使用此 Intent 来允许用户向现有联系人添加数据。
+
+
+            <p class="note">
+                <strong>注：</strong>不需要通过此 Intent 的 Extra 发送姓名值，因为用户总是会选取现有姓名或添加新姓名。
+此外，如果您发送姓名，并且用户选择执行编辑操作，则联系人应用将显示您发送的姓名，该姓名将覆盖以前的值。
+
+如果用户未注意这一情况便保存了编辑，原有值将会丢失。
+
+            </p>
+         </td>
+    </tr>
+</table>
+<p>
+    设备的联系人应用不允许您使用 Intent 删除原始联系人或其任何数据。
+因此，要删除原始联系人，请使用
+{@link android.content.ContentResolver#delete(Uri, String, String[]) ContentResolver.delete()}
+或 {@link android.content.ContentProviderOperation#newDelete(Uri)
+ContentProviderOperation.newDelete()}。
+</p>
+<p>
+    以下代码段说明如何构建和发送一个插入新原始联系人和数据的 Intent：
+
+</p>
+<pre>
+// Gets values from the UI
+String name = mContactNameEditText.getText().toString();
+String phone = mContactPhoneEditText.getText().toString();
+String email = mContactEmailEditText.getText().toString();
+
+String company = mCompanyName.getText().toString();
+String jobtitle = mJobTitle.getText().toString();
+
+// Creates a new intent for sending to the device's contacts application
+Intent insertIntent = new Intent(ContactsContract.Intents.Insert.ACTION);
+
+// Sets the MIME type to the one expected by the insertion activity
+insertIntent.setType(ContactsContract.RawContacts.CONTENT_TYPE);
+
+// Sets the new contact name
+insertIntent.putExtra(ContactsContract.Intents.Insert.NAME, name);
+
+// Sets the new company and job title
+insertIntent.putExtra(ContactsContract.Intents.Insert.COMPANY, company);
+insertIntent.putExtra(ContactsContract.Intents.Insert.JOB_TITLE, jobtitle);
+
+/*
+ * Demonstrates adding data rows as an array list associated with the DATA key
+ */
+
+// Defines an array list to contain the ContentValues objects for each row
+ArrayList&lt;ContentValues&gt; contactData = new ArrayList&lt;ContentValues&gt;();
+
+
+/*
+ * Defines the raw contact row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues rawContactRow = new ContentValues();
+
+// Adds the account type and name to the row
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType());
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+// Adds the row to the array
+contactData.add(rawContactRow);
+
+/*
+ * Sets up the phone number data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues phoneRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+phoneRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
+);
+
+// Adds the phone number and its type to the row
+phoneRow.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phone);
+
+// Adds the row to the array
+contactData.add(phoneRow);
+
+/*
+ * Sets up the email data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues emailRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+emailRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE
+);
+
+// Adds the email address and its type to the row
+emailRow.put(ContactsContract.CommonDataKinds.Email.ADDRESS, email);
+
+// Adds the row to the array
+contactData.add(emailRow);
+
+/*
+ * Adds the array to the intent's extras. It must be a parcelable object in order to
+ * travel between processes. The device's contacts app expects its key to be
+ * Intents.Insert.DATA
+ */
+insertIntent.putParcelableArrayListExtra(ContactsContract.Intents.Insert.DATA, contactData);
+
+// Send out the intent to start the device's contacts app in its add contact activity.
+startActivity(insertIntent);
+</pre>
+<h3 id="DataIntegrity">数据完整性</h3>
+<p>
+    联系人存储库包含用户认为是正确且是最新的重要敏感数据，因此联系人提供程序具有规定清晰的数据完整性规则。
+您有责任在修改联系人数据时遵守这些规则。
+以下列出了其中的重要规则：
+
+</p>
+<dl>
+    <dt>
+        务必为您添加的每个 {@link android.provider.ContactsContract.RawContacts} 行添加一个 {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 行。
+
+    </dt>
+    <dd>
+        如果 {@link android.provider.ContactsContract.Data} 表中的
+{@link android.provider.ContactsContract.RawContacts} 行没有
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 行，可能会在聚合时引发问题。
+
+    </dd>
+    <dt>
+        务必将新 {@link android.provider.ContactsContract.Data} 行链接到其父
+{@link android.provider.ContactsContract.RawContacts} 行。
+    </dt>
+    <dd>
+        如果 {@link android.provider.ContactsContract.Data} 行未链接到
+{@link android.provider.ContactsContract.RawContacts}，则其在设备的联系人应用中将处于不可见状态，而且这可能会导致同步适配器出现问题。
+
+    </dd>
+    <dt>
+        请仅更改您拥有的那些原始联系人的数据。
+    </dt>
+    <dd>
+        请切记，联系人提供程序所管理的数据通常来自多个不同帐户类型/在线服务。
+您需要确保您的应用仅修改或删除归您所有的行的数据，并且仅通过您控制的帐户类型和帐户名称插入数据。
+
+
+    </dd>
+    <dt>
+        务必使用在 {@link android.provider.ContactsContract} 及其子类中为权限、内容 URI、URI 路径、列名称、MIME 类型以及
+{@link android.provider.ContactsContract.CommonDataKinds.CommonColumns#TYPE} 值定义的常量。
+
+    </dt>
+    <dd>
+        使用这些常量有助于您避免错误。如有任何常量被弃用，您还会从编译器警告收到通知。
+
+    </dd>
+</dl>
+<h3 id="CustomData">自定义数据行</h3>
+<p>
+    通过创建和使用自己的自定义 MIME 类型，您可以在 {@link android.provider.ContactsContract.Data} 表中插入、编辑、删除和检索您的自有数据行。
+这些行仅限使用 {@link android.provider.ContactsContract.DataColumns} 中定义的列，但您可以将您自己的类型专用列名称映射到默认列名称。
+
+
+在设备的联系人应用中，会显示这些行的数据，但无法对其进行编辑或删除，用户也无法添加其他数据。
+
+要允许用户修改您的自定义数据行，您必须在自己的应用中提供编辑器 Activity。
+
+</p>
+<p>
+    要显示您的自定义数据，请提供一个 <code>contacts.xml</code> 文件，其中须包含一个
+<code>&lt;ContactsAccountType&gt;</code> 元素，及其一个或多个
+<code>&lt;ContactsDataKind&gt;</code> 子元素。<a href="#SocialStreamDataKind"><code>&lt;ContactsDataKind&gt; element</code></a> 部分对此做了更详尽的描述。
+
+</p>
+<p>
+    如需了解有关自定义 MIME 类型的更多信息，请阅读<a href="{@docRoot}guide/topics/providers/content-provider-creating.html">创建内容提供程序</a>指南。
+
+
+</p>
+<h2 id="SyncAdapters">联系人提供程序同步适配器</h2>
+<p>
+    联系人提供程序专门设计用于处理设备与在线服务之间的联系人数据<strong>同步</strong>。
+借助同步功能，用户可以将现有数据下载到新设备，以及将现有数据上传到新帐户。
+
+    此外，同步还能确保用户掌握最新数据，无需考虑数据增加和更改的来源。
+同步的另一个优点是，即使设备未连接网络，联系人数据同样可用。
+
+</p>
+<p>
+    虽然您可以通过各种方式实现同步，不过 Android 系统提供了一个插件同步框架，可自动化完成下列任务：
+
+    <ul>
+
+    <li>
+        检查网络可用性。
+    </li>
+    <li>
+        根据用户偏好安排和执行同步。
+    </li>
+    <li>
+        重启已停止的同步。
+    </li>
+    </ul>
+<p>
+    要使用此框架，您需要提供一个同步适配器插件。每个同步适配器都专用于某个服务和内容提供程序，但可以处理同一服务的多个帐户名称。
+该框架还允许同一服务和提供程序具有多个同步适配器。
+
+</p>
+<h3 id="SyncClassesFiles">同步适配器类和文件</h3>
+<p>
+    您需要将同步适配器作为
+{@link android.content.AbstractThreadedSyncAdapter} 的子类进行实现，并作为 Android
+应用的一部分进行安装。系统通过您的应用清单文件中的元素以及由清单文件指向的一个特殊 XML 文件了解有关同步适配器的信息。
+该 XML 文件定义在线服务的帐户类型和内容提供程序的权限，它们共同对适配器进行唯一标识。
+
+用户为同步适配器的帐户类型添加一个帐户，并为与同步适配器同步的内容提供程序启用同步后，同步适配器才会激活。
+
+激活后，系统将开始管理适配器，并在必要时调用它，以在内容提供程序与服务器之间同步数据。
+
+</p>
+<p class="note">
+    <strong>注：</strong>将帐户类型用作同步适配器标识的一部分让系统可以发现从同一组织访问不同服务的同步适配器，并将它们组合在一起。
+
+例如，Google 在线服务的同步适配器都具有相同的帐户类型 <code>com.google</code>。
+当用户向其设备添加 Google 帐户时，已安装的所有 Google 服务同步适配器将一起列出；列出的每个同步适配器都与设备上不同的内容提供程序同步。
+
+
+</p>
+<p>
+    大多数服务都要求用户验证身份后才能访问数据，为此，Android 系统提供了一个身份验证框架，该框架与同步适配器框架类似，并且经常与其联用。
+
+该身份验证框架使用的插件身份验证器是
+{@link android.accounts.AbstractAccountAuthenticator} 的子类。
+身份验证器通过下列步骤验证用户的身份：
+
+    <ol>
+        <li>
+            收集用户名、用户密码或类似信息（用户的<strong>凭据</strong>）。
+
+        </li>
+        <li>
+            将凭据发送给服务
+        </li>
+        <li>
+            检查服务的回复。
+        </li>
+    </ol>
+<p>
+    如果服务接受了凭据，身份验证器便可存储凭据以供日后使用。
+由于插件身份验证器框架的存在，{@link android.accounts.AccountManager} 可以提供对身份验证器支持并选择公开的任何身份验证令牌（例如 OAuth2 身份验证令牌）的访问。
+
+
+</p>
+<p>
+    尽管身份验证并非必需，但大多数联系人服务都会使用它。
+    不过，您不一定要使用 Android 身份验证框架进行身份验证。
+</p>
+<h3 id="SyncAdapterImplementing">同步适配器实现</h3>
+<p>
+    要为联系人提供程序实现同步适配器，您首先要创建一个包含以下内容的
+Android 应用：
+</p>
+    <dl>
+        <dt>
+            一个 {@link android.app.Service} 组件，用于响应系统发出的绑定到同步适配器的请求。
+
+        </dt>
+        <dd>
+            当系统想要运行同步时，它会调用服务的
+{@link android.app.Service#onBind(Intent) onBind()} 方法，为同步适配器获取一个
+{@link android.os.IBinder}。这样，系统便可跨进程调用适配器的方法。
+
+            <p>
+                在<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">示例同步适配器</a>示例应用中，该服务的类名是 <code>com.example.android.samplesync.syncadapter.SyncService</code>。
+
+
+            </p>
+        </dd>
+        <dt>
+            作为
+{@link android.content.AbstractThreadedSyncAdapter} 具体子类实现的实际同步适配器。
+        </dt>
+        <dd>
+            此类的作用是从服务器下载数据、从设备上传数据以及解决冲突。
+适配器的主要工作是在方法 {@link android.content.AbstractThreadedSyncAdapter#onPerformSync(
+Account, Bundle, String, ContentProviderClient, SyncResult)
+onPerformSync()} 中完成的。
+必须将此类实例化为单一实例。
+            <p>
+                在<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">示例同步适配器</a>示例应用中，同步适配器是在 <code>com.example.android.samplesync.syncadapter.SyncAdapter</code> 类中定义的。
+
+
+            </p>
+        </dd>
+        <dt>
+            {@link android.app.Application} 的子类。
+        </dt>
+        <dd>
+            此类充当同步适配器单一实例的工厂。使用
+{@link android.app.Application#onCreate()} 方法实例化同步适配器，并提供一个静态“getter”方法，使单一实例返回同步适配器服务的
+{@link android.app.Service#onBind(Intent) onBind()} 方法。
+
+
+        </dd>
+        <dt>
+            <strong>可选：</strong>一个 {@link android.app.Service} 组件，用于响应系统发出的用户身份验证请求。
+
+        </dt>
+        <dd>
+            {@link android.accounts.AccountManager} 会启动此服务以开始身份验证流程。
+该服务的 {@link android.app.Service#onCreate()} 方法会将一个身份验证器对象实例化。
+当系统想要对应用同步适配器的用户帐户进行身份验证时，它会调用该服务的
+{@link android.app.Service#onBind(Intent) onBind()} 方法，为该身份验证器获取一个
+{@link android.os.IBinder}。
+这样，系统便可跨进程调用身份验证器的方法。
+
+            <p>
+                在<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">示例同步适配器</a>示例应用中，该服务的类名是 <code>com.example.android.samplesync.authenticator.AuthenticationService</code>。
+
+
+            </p>
+        </dd>
+        <dt>
+            <strong>可选：</strong>一个用于处理身份验证请求的
+{@link android.accounts.AbstractAccountAuthenticator} 具体子类。
+
+        </dt>
+        <dd>
+            {@link android.accounts.AccountManager} 就是调用此类所提供的方法向服务器验证用户的凭据。
+详细的身份验证过程会因服务器所采用技术的不同而有很大差异。
+您应该参阅服务器软件的文档，了解有关身份验证的更多信息。
+
+            <p>
+                在<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">示例同步适配器</a>示例应用中，身份验证器是在 <code>com.example.android.samplesync.authenticator.Authenticator</code> 类中定义的。
+
+
+            </p>
+        </dd>
+        <dt>
+            用于定义系统同步适配器和身份验证器的 XML 文件。
+        </dt>
+        <dd>
+            之前描述的同步适配器和身份验证器服务组件都是在应用清单文件中的
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/service-element.html">service</a>&gt;</code>
+元素内定义的。
+这些元素包含以下用于向系统提供特定数据的
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+子元素：
+
+
+            <ul>
+                <li>
+                    同步适配器服务的
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+元素指向
+XML 文件 <code>res/xml/syncadapter.xml</code>。而该文件则指定将与联系人提供程序同步的 Web 服务的 URI，以及指定该 Web 服务的帐户类型。
+
+
+                </li>
+                <li>
+                    <strong>可选：</strong>身份验证器的
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code>
+元素指向 XML 文件
+<code>res/xml/authenticator.xml</code>。而该文件则指定此身份验证器所支持的帐户类型，以及指定身份验证过程中出现的 UI 资源。
+
+在此元素中指定的帐户类型必须与为同步适配器指定的帐户类型相同。
+
+
+                </li>
+            </ul>
+        </dd>
+    </dl>
+<h2 id="SocialStream">社交流数据</h2>
+<p>
+    {@code android.provider.ContactsContract.StreamItems} 表和
+{@code android.provider.ContactsContract.StreamItemPhotos} 表管理来自社交网络的传入数据。
+您可以编写一个同步适配器，用其将您自己社交网络中的流数据添加到这些表中，也可以从这些表读取流数据并将其显示在您的自有应用中，或者同时采用这两种方法。
+
+利用这些功能，可以将您的社交网络服务和应用集成到 Android 的社交网络体验之中。
+
+</p>
+<h3 id="StreamText">社交流文本</h3>
+<p>
+    流项目始终与原始联系人关联。
+{@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID} 链接到原始联系人的 <code>_ID</code> 值。
+原始联系人的帐户类型和帐户名称也存储在流项目行中。
+
+</p>
+<p>
+    将您的流数据存储在以下列：
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_TYPE}
+    </dt>
+    <dd>
+        <strong>必备。</strong>与该流项目关联的原始联系人对应的用户帐户类型。
+请记得在插入流项目时设置此值。
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_NAME}
+    </dt>
+    <dd>
+        <strong>必备。</strong>与该流项目关联的原始联系人对应的用户帐户名称。
+请记得在插入流项目时设置此值。
+    </dd>
+    <dt>
+        标识符列
+    </dt>
+    <dd>
+        <strong>必备。</strong>您必须在插入流项目时插入下列标识符列：
+
+        <ul>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_ID}：此流项目关联的联系人的
+{@code android.provider.BaseColumns#_ID} 值。
+
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_LOOKUP_KEY}：此流项目关联的联系人的
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} 值。
+
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID}：此流项目关联的原始联系人的
+{@code android.provider.BaseColumns#_ID} 值。
+
+            </li>
+        </ul>
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#COMMENTS}
+    </dt>
+    <dd>
+        可选。存储可在流项目开头显示的摘要信息。
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TEXT}
+    </dt>
+    <dd>
+        流项目的文本，或为项目来源发布的内容，或是对生成流项目的某项操作的描述。
+此列可包含可由
+{@link android.text.Html#fromHtml(String) fromHtml()} 渲染的任何格式设置和嵌入式资源图像。
+提供程序可能会截断或省略较长内容，但它会尽力避免破坏标记。
+
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}
+    </dt>
+    <dd>
+        一个包含流项目插入时间或更新时间的文本字符串，以从公元纪年开始计算的<em>毫秒数</em>形式表示。
+此列由插入或更新流项目的应用负责维护；联系人提供程序不会自动对其进行维护。
+
+
+    </dd>
+</dl>
+<p>
+    要显示您的流项目的标识信息，请使用
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_ICON}、
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_LABEL} 和
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_PACKAGE} 链接到您的应用中的资源。
+
+</p>
+<p>
+    {@code android.provider.ContactsContract.StreamItems} 表还包含供同步适配器专用的列
+{@code android.provider.ContactsContract.StreamItemsColumns#SYNC1} 至
+{@code android.provider.ContactsContract.StreamItemsColumns#SYNC4}。
+
+</p>
+<h3 id="StreamPhotos">社交流照片</h3>
+<p>
+   {@code android.provider.ContactsContract.StreamItemPhotos} 表存储与流项目关联的照片。
+该表的
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#STREAM_ITEM_ID}列链接到 {@code android.provider.ContactsContract.StreamItems} 表 {@code android.provider.BaseColumns#_ID} 列中的值。
+
+照片引用存储在表中的以下列：
+
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotos#PHOTO} 列（一个二进制大型对象）。
+    </dt>
+    <dd>
+        照片的二进制表示，为便于存储和显示，由提供程序调整了尺寸。
+        此列可用于向后兼容使用它来存储照片的旧版本联系人提供程序。
+不过，在当前版本中，您不应使用此列来存储照片，
+而应使用
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID} 或
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}（下文对两者都做了描述）将照片存储在一个文件内。
+此列现在包含可用于读取的照片缩略图。
+
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID}
+    </dt>
+    <dd>
+        原始联系人照片的数字标识符。将此值追加到常量
+{@link android.provider.ContactsContract.DisplayPhoto#CONTENT_URI DisplayPhoto.CONTENT_URI}，获取指向单一照片文件的内容 URI，然后调用
+{@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+openAssetFileDescriptor()} 来获取照片文件的句柄。
+
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}
+    </dt>
+    <dd>
+        一个内容 URI，直接指向此行所表示的照片的照片文件。
+        通过此 URI 调用 {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+openAssetFileDescriptor()} 以获得照片文件的句柄。
+    </dd>
+</dl>
+<h3 id="SocialStreamTables">使用社交流表</h3>
+<p>
+    这些表的工作方式与联系人提供程序中的其他主表基本相同，不同的是：
+</p>
+    <ul>
+        <li>
+            这些表需要额外的访问权限。要读取它们的数据，您的应用必须具有 {@code android.Manifest.permission#READ_SOCIAL_STREAM} 权限。
+要修改它们，您的应用必须具有
+{@code android.Manifest.permission#WRITE_SOCIAL_STREAM} 权限。
+
+        </li>
+        <li>
+            对于 {@code android.provider.ContactsContract.StreamItems} 表，为每一位原始联系人存储的行数有限。
+一旦达到该限制，联系人提供程序即会自动删除
+{@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP} 最早的行，为新流项目行腾出空间。
+
+要获取该限制，请发出对内容 URI
+{@code android.provider.ContactsContract.StreamItems#CONTENT_LIMIT_URI} 的查询。
+您可以将内容 URI 以外的所有其他参数保持设置为 <code>null</code>。
+查询会返回一个 Cursor，其中包含一行，并且只有
+{@code android.provider.ContactsContract.StreamItems#MAX_ITEMS} 一列。
+
+        </li>
+    </ul>
+
+<p>
+    {@code android.provider.ContactsContract.StreamItems.StreamItemPhotos} 类定义了
+ {@code android.provider.ContactsContract.StreamItemPhotos} 的一个子表，其中包含某个流项目的照片行。
+
+</p>
+<h3 id="SocialStreamInteraction">社交流交互</h3>
+<p>
+    通过将联系人提供程序管理的社交流数据与设备的联系人应用相结合，可以在您的社交网络系统与现有联系人之间建立起有效的连接。
+
+这种结合实现了下列功能：
+</p>
+    <ul>
+        <li>
+            您可以通过同步适配器让您的社交网络服务与联系人提供程序同步，检索用户联系人的近期 Activity，并将其存储在
+ {@code android.provider.ContactsContract.StreamItems} 表和
+{@code android.provider.ContactsContract.StreamItemPhotos} 表中，以供日后使用。
+
+        </li>
+        <li>
+            除了定期同步外，您还可以在用户选择某位联系人进行查看时触发您的同步适配器以检索更多数据。
+这样，您的同步适配器便可检索该联系人的高分辨率照片和最近流项目。
+
+        </li>
+        <li>
+            通过在设备的联系人应用以及联系人提供程序中注册通知功能，您可以在用户查看联系人时<em>收到</em>一个 Intent，并在那时通过您的服务更新联系人的状态。
+
+与通过同步适配器执行完全同步相比，此方法可能更快速，占用的带宽也更少。
+
+        </li>
+        <li>
+            用户可以在查看设备联系人应用中的联系人时，将其添加到您的社交网络服务。
+您可以通过“邀请联系人”功能实现此目的，而该功能则是通过将 Activity 与 XML 文件结合使用来实现的，前者将现有联系人添加到您的社交网络，后者为设备的联系人应用以及联系人提供程序提供有关您的应用的详细信息。
+
+
+
+        </li>
+    </ul>
+<p>
+    流项目与联系人提供程序的定期同步与其他同步相同。
+如需了解有关同步的更多信息，请参阅
+<a href="#SyncAdapters">联系人提供程序同步适配器</a>部分。接下来的两节介绍如何注册通知和邀请联系人。
+
+</p>
+<h4>通过注册处理社交网络查看</h4>
+<p>
+    要注册您的同步适配器，以便在用户查看由您的同步适配器管理的联系人时收到通知，请执行以下步骤：
+
+</p>
+<ol>
+    <li>
+        在您项目的 <code>res/xml/</code> 目录中创建一个名为 <code>contacts.xml</code> 的文件。
+如果您已有该文件，可跳过此步骤。
+    </li>
+    <li>
+        在该文件中添加元素
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>。
+        如果该元素已存在，可跳过此步骤。
+    </li>
+    <li>
+        要注册一项服务，以便在用户于设备的联系人应用中打开某位联系人的详细信息页面时通知该服务，请为该元素添加
+<code>viewContactNotifyService="<em>serviceclass</em>"</code> 属性，其中
+<code><em>serviceclass</em></code> 是该服务的完全限定类名，应由该服务接收来自设备联系人应用的 Intent。
+
+对于这个通知程序服务，请使用一个扩展 {@link android.app.IntentService} 的类，以让该服务能够接收 Intent。
+
+传入 Intent 中的数据包含用户点击的原始联系人的内容 URI。
+您可以通过通知程序服务绑定到您的同步适配器，然后调用同步适配器来更新原始联系人的数据。
+
+    </li>
+</ol>
+<p>
+    要注册需要在用户点击流项目或照片（或同时点击这两者）时调用的 Activity，请执行以下步骤：
+</p>
+<ol>
+    <li>
+        在您项目的 <code>res/xml/</code> 目录中创建一个名为 <code>contacts.xml</code> 的文件。
+如果您已有该文件，可跳过此步骤。
+    </li>
+    <li>
+        在该文件中添加元素
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>。
+        如果该元素已存在，可跳过此步骤。
+    </li>
+    <li>
+        要注册某个 Activity，以处理用户在设备联系人应用中点击某个流项目的操作，请为该元素添加
+<code>viewStreamItemActivity="<em>activityclass</em>"</code> 属性，其中
+<code><em>activityclass</em></code> 是该 Activity 的完全限定类名，应由该 Activity 接收来自设备联系人应用的 Intent。
+
+
+    </li>
+    <li>
+        要注册某个 Activity，以处理用户在设备联系人应用中点击某个流照片的操作，请为该元素添加
+<code>viewStreamItemPhotoActivity="<em>activityclass</em>"</code> 属性，其中
+<code><em>activityclass</em></code> 是该 Activity 的完全限定类名，应由该 Activity 接收来自设备联系人应用的 Intent。
+
+
+    </li>
+</ol>
+<p>
+    <a href="#SocialStreamAcctType">&lt;ContactsAccountType&gt; 元素</a>部分对 <code>&lt;ContactsAccountType&gt;</code> 元素做了更详尽的描述。
+
+</p>
+<p>
+    传入 Intent 包含用户点击的项目或照片的内容 URI。
+    要让文本项目和照片具有独立的 Activity，请在同一文件中使用这两个属性。
+</p>
+<h4>与您的社交网络服务交互</h4>
+<p>
+    用户不必为了邀请联系人到您的社交网络网站而离开设备的联系人应用。
+取而代之是，您可以让设备的联系人应用发送一个 Intent，将联系人
+邀请到您的 Activity 之一。要设置此功能，请执行以下步骤：
+</p>
+<ol>
+    <li>
+        在您项目的 <code>res/xml/</code> 目录中创建一个名为 <code>contacts.xml</code> 的文件。
+如果您已有该文件，可跳过此步骤。
+    </li>
+    <li>
+        在该文件中添加元素
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code>。
+        如果该元素已存在，可跳过此步骤。
+    </li>
+    <li>
+        添加以下属性：
+        <ul>
+            <li><code>inviteContactActivity="<em>activityclass</em>"</code></li>
+            <li>
+                <code>inviteContactActionLabel="&#64;string/<em>invite_action_label</em>"</code>
+            </li>
+        </ul>
+        <code><em>activityclass</em></code> 值是应该接收该 Intent 的 Activity 的完全限定类名。
+<code><em>invite_action_label</em></code>
+值是一个文本字符串，将显示在设备联系人应用的 <strong>Add Connection</strong> 菜单中。
+
+    </li>
+</ol>
+<p class="note">
+    <strong>注：</strong><code>ContactsSource</code> 是
+<code>ContactsAccountType</code> 的一个已弃用的标记名称。
+</p>
+<h3 id="ContactsFile">contacts.xml 引用</h3>
+<p>
+    文件 <code>contacts.xml</code> 包含一些 XML 元素，这些元素控制您的同步适配器和应用与联系人应用及联系人提供程序的交互。
+下文对这些元素做了描述。
+
+</p>
+<h4 id="SocialStreamAcctType">&lt;ContactsAccountType&gt; 元素</h4>
+<p>
+    <code>&lt;ContactsAccountType&gt;</code> 元素控制您的应用与联系人应用的交互。
+它采用了以下语法：
+</p>
+<pre>
+&lt;ContactsAccountType
+        xmlns:android="http://schemas.android.com/apk/res/android"
+        inviteContactActivity="<em>activity_name</em>"
+        inviteContactActionLabel="<em>invite_command_text</em>"
+        viewContactNotifyService="<em>view_notify_service</em>"
+        viewGroupActivity="<em>group_view_activity</em>"
+        viewGroupActionLabel="<em>group_action_text</em>"
+        viewStreamItemActivity="<em>viewstream_activity_name</em>"
+        viewStreamItemPhotoActivity="<em>viewphotostream_activity_name</em>"&gt;
+</pre>
+<p>
+    <strong>包含它的文件：</strong>
+</p>
+<p>
+    <code>res/xml/contacts.xml</code>
+</p>
+<p>
+    <strong>可能包含的内容：</strong>
+</p>
+<p>
+    <strong><code>&lt;ContactsDataKind&gt;</code></strong>
+</p>
+<p>
+    <strong>描述：</strong>
+</p>
+<p>
+    声明 Android 组件和 UI 标签，让用户能够邀请他们的一位联系人加入社交网络，在他们的某个社交网络流更新时通知用户，以及执行其他操作。
+
+
+</p>
+<p>
+    请注意，对 <code>&lt;ContactsAccountType&gt;</code> 的属性而言，属性前缀 <code>android:</code> 并非必需的。
+
+</p>
+<p>
+    <strong>属性：</strong>
+</p>
+<dl>
+    <dt>{@code inviteContactActivity}</dt>
+    <dd>
+        您的应用中某个 Activity 的完全限定类名，您想要在用户于设备的联系人应用中选择 <strong>Add connection</strong> 时激活该 Activity。
+
+
+    </dd>
+    <dt>{@code inviteContactActionLabel}</dt>
+    <dd>
+        <strong>Add connection</strong> 菜单中为
+{@code inviteContactActivity} 中指定的 Activity 显示的文本字符串。
+        例如，您可以使用字符串“Follow in my network”。您可以为此标签使用字符串资源标识符。
+
+    </dd>
+    <dt>{@code viewContactNotifyService}</dt>
+    <dd>
+        您的应用中某项服务的完全限定类名，当用户查看联系人时，应由该服务接收通知。
+此通知由设备的联系人应用发送；您的应用可以根据通知将数据密集型操作推迟到必要时再执行。
+
+例如，您的应用对此通知的响应可以是：读入并显示联系人的高分辨率照片和最近的社交流项目。
+
+<a href="#SocialStreamInteraction">社交流交互</a>部分对此功能做了更详尽的描述。
+您可以在
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a> 示例应用的 <code>NotifierService.java</code> 文件中查看通知服务的示例。
+
+
+    </dd>
+    <dt>{@code viewGroupActivity}</dt>
+    <dd>
+        您的应用中某个可显示组信息的 Activity 的完全限定类名。
+当用户点击设备联系人应用中的组标签时，将显示此 Activity 的 UI。
+
+    </dd>
+    <dt>{@code viewGroupActionLabel}</dt>
+    <dd>
+        联系人应用为某个 UI 控件显示的标签，用户可通过该控件查看您的应用中的组。
+
+        <p>
+            例如，如果您在设备上安装了 Google+ 应用，并将
+Google+ 与联系人应用同步，就会看到 Google+ 圈子以组的形式出现在您的联系人应用的 <strong>Groups</strong> 选项卡内。
+如果您点击某个
+Google+ 圈子，就会看到该圈子内的联系人以“组”的形式列出。在该显示页面的顶部，您会看到一个 Google+ 图标；如果您点击它，控制权将切换给
+Google+ 应用。联系人应用以 Google+ 图标作为 {@code viewGroupActionLabel} 的值，通过
+{@code viewGroupActivity} 来实现此目的。
+
+
+        </p>
+        <p>
+            允许使用字符串资源标识符作为该属性的值。
+        </p>
+    </dd>
+    <dt>{@code viewStreamItemActivity}</dt>
+    <dd>
+        您的应用中某个 Activity 的完全限定类名，设备的联系人应用会在用户点击原始联系人的流项目时启动该 Activity。
+
+    </dd>
+    <dt>{@code viewStreamItemPhotoActivity}</dt>
+    <dd>
+        您的应用中某个 Activity 的完全限定类名，设备的联系人应用会在用户点击原始联系人流项目中的照片时启动该 Activity。
+
+
+    </dd>
+</dl>
+<h4 id="SocialStreamDataKind">&lt;ContactsDataKind&gt; 元素</h4>
+<p>
+    <code>&lt;ContactsDataKind&gt;</code> 元素控制您的应用的自定义数据行在联系人应用 UI 中的显示。它采用了以下语法：
+
+</p>
+<pre>
+&lt;ContactsDataKind
+        android:mimeType="<em>MIMEtype</em>"
+        android:icon="<em>icon_resources</em>"
+        android:summaryColumn="<em>column_name</em>"
+        android:detailColumn="<em>column_name</em>"&gt;
+</pre>
+<p>
+    <strong>包含它的文件：</strong>
+</p>
+<code>&lt;ContactsAccountType&gt;</code>
+<p>
+    <strong>描述：</strong>
+</p>
+<p>
+    此元素用于让联系人应用将自定义数据行的内容显示为原始联系人详细信息的一部分。
+<code>&lt;ContactsAccountType&gt;</code> 的每个 <code>&lt;ContactsDataKind&gt;</code> 子元素都代表您的同步适配器向 {@link android.provider.ContactsContract.Data} 表添加的某个自定义数据行类型。
+
+请为您使用的每个自定义 MIME 类型添加一个 <code>&lt;ContactsDataKind&gt;</code> 元素。
+如果您不想显示任何自定义数据行的数据，则无需添加该元素。
+
+</p>
+<p>
+    <strong>属性：</strong>
+</p>
+<dl>
+    <dt>{@code android:mimeType}</dt>
+    <dd>
+        您为
+{@link android.provider.ContactsContract.Data} 表中某个自定义数据行类型定义的自定义 MIME 类型。例如，可将值
+<code>vnd.android.cursor.item/vnd.example.locationstatus</code> 作为记录联系人最后已知位置的数据行的自定义 MIME 类型。
+
+    </dd>
+    <dt>{@code android:icon}</dt>
+    <dd>
+        联系人应用在您的数据旁显示的 Android
+<a href="{@docRoot}guide/topics/resources/drawable-resource.html"> Drawable资源</a>。
+它用于向用户指示数据来自您的服务。
+
+    </dd>
+    <dt>{@code android:summaryColumn}</dt>
+    <dd>
+        从数据行检索的两个值中第一个值的列名。该值显示为该数据行的第一个输入行。
+第一行专用作数据摘要，不过它是可选项。
+另请参阅
+<a href="#detailColumn">android:detailColumn</a>。
+    </dd>
+    <dt>{@code android:detailColumn}</dt>
+    <dd>
+        从数据行检索的两个值中第二个值的列名。该值显示为该数据行的第二个输入行。
+另请参阅
+{@code android:summaryColumn}。
+    </dd>
+</dl>
+<h2 id="AdditionalFeatures">其他联系人提供程序功能</h2>
+<p>
+    除了上文描述的主要功能外，联系人提供程序还为处理联系人数据提供了下列有用的功能：
+
+</p>
+    <ul>
+       <li>联系人组</li>
+       <li>照片功能</li>
+    </ul>
+<h3 id="Groups">联系人组</h3>
+<p>
+    联系人提供程序可以选择性地为相关联系人集合添加<strong>组</strong>数据标签。
+如果与某个用户帐户关联的服务器想要维护组，则与该帐户的帐户类型对应的同步适配器应在联系人提供程序与服务器之间传送组数据。
+
+当用户向服务器添加一个新联系人，然后将该联系人放入一个新组时，同步适配器必须将这个新组添加到
+ {@link android.provider.ContactsContract.Groups} 表中。
+原始联系人所属的一个或多个组使用 {@link android.provider.ContactsContract.CommonDataKinds.GroupMembership} MIME 类型存储在 {@link android.provider.ContactsContract.Data} 表内。
+
+
+</p>
+<p>
+    如果您设计的同步适配器会将服务器中的原始联系人数据添加到联系人提供程序，并且您不使用组，则需要指示提供程序让您的数据可见。
+
+在用户向设备添加帐户时执行的代码中，更新联系人提供程序为该帐户添加的 {@link android.provider.ContactsContract.Settings}
+行。
+在该行中，将
+{@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE
+Settings.UNGROUPED_VISIBLE} 列的值设置为 1。执行此操作后，即使您不使用组，联系人提供程序也会让您的联系人数据始终可见。
+
+</p>
+<h3 id="Photos">联系人照片</h3>
+<p>
+    {@link android.provider.ContactsContract.Data} 表通过 MIME 类型
+{@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+Photo.CONTENT_ITEM_TYPE} 以行的形式存储照片。该行的
+{@link android.provider.ContactsContract.RawContactsColumns#CONTACT_ID} 列链接到其所属原始联系人的
+{@code android.provider.BaseColumns#_ID} 列。
+    {@link android.provider.ContactsContract.Contacts.Photo} 类定义了一个
+{@link android.provider.ContactsContract.Contacts} 子表，其中包含联系人主要照片（联系人的主要原始联系人的主要照片）的照片信息。
+同样，
+{@link android.provider.ContactsContract.RawContacts.DisplayPhoto} 类定义了一个 {@link android.provider.ContactsContract.RawContacts} 子表，其中包含原始联系人主要照片的照片信息。
+
+
+</p>
+<p>
+    {@link android.provider.ContactsContract.Contacts.Photo} 和
+{@link android.provider.ContactsContract.RawContacts.DisplayPhoto} 参考文档包含检索照片信息的示例。
+并没有可用来检索原始联系人主要缩略图的实用类，但您可以向
+{@link android.provider.ContactsContract.Data} 表发送查询，从而通过选定原始联系人的
+{@code android.provider.BaseColumns#_ID}、
+{@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+Photo.CONTENT_ITEM_TYPE} 以及 {@link android.provider.ContactsContract.Data#IS_PRIMARY}
+列，找到原始联系人的主要照片行。
+
+</p>
+<p>
+    联系人的社交流数据也可能包含照片。这些照片存储在
+{@code android.provider.ContactsContract.StreamItemPhotos} 表中，<a href="#StreamPhotos">社交流照片</a>部分对该表做了更详尽的描述。
+
+</p>
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/providers/content-provider-basics.jd b/docs/html-intl/intl/zh-cn/guide/topics/providers/content-provider-basics.jd
new file mode 100644
index 0000000..4c91d3a
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/providers/content-provider-basics.jd
@@ -0,0 +1,1196 @@
+page.title=内容提供程序基础知识
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<!-- In this document -->
+<h2>本文内容</h2>
+<ol>
+    <li>
+        <a href="#Basics">概览</a>
+        <ol>
+            <li>
+                <a href="#ClientProvider">访问提供程序</a>
+            </li>
+            <li>
+                <a href="#ContentURIs">内容 URI</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#SimpleQuery">从提供程序检索数据</a>
+        <ol>
+            <li>
+                <a href="#RequestPermissions">请求读取访问权限</a>
+            </li>
+            <li>
+                <a href="#Query">构建查询</a>
+            </li>
+            <li>
+                <a href="#DisplayResults">显示查询结果</a>
+            </li>
+            <li>
+                <a href="#GettingResults">从查询结果中获取数据</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#Permissions">内容提供程序权限</a>
+    </li>
+    <li>
+        <a href="#Modifications">插入、更新和删除数据</a>
+        <ol>
+            <li>
+                <a href="#Inserting">插入数据</a>
+            </li>
+            <li>
+                <a href="#Updating">更新数据</a>
+            </li>
+            <li>
+                <a href="#Deleting">删除数据</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#DataTypes">提供程序数据类型</a>
+    </li>
+    <li>
+        <a href="#AltForms">提供程序访问的替代形式</a>
+        <ol>
+            <li>
+                <a href="#Batch">批量访问</a>
+            </li>
+            <li>
+                <a href="#Intents">通过 Intent 访问数据</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClasses">协定类</a>
+    </li>
+    <li>
+        <a href="#MIMETypeReference">MIME 类型引用</a>
+    </li>
+</ol>
+
+    <!-- Key Classes -->
+<h2>关键类</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.content.ContentResolver}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+
+    <!-- Related Samples -->
+<h2>相关示例</h2>
+    <ol>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+游标（联系人）</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+游标（电话）</a>
+        </li>
+    </ol>
+
+    <!-- See also -->
+<h2>另请参阅</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+创建内容提供程序</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+日历提供程序</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+    <!-- Intro paragraphs -->
+<p>
+    内容提供程序管理对中央数据存储库的访问。提供程序是 Android 应用的一部分，通常提供自己的 UI 来使用数据。
+
+但是，内容提供程序主要旨在供其他应用使用，这些应用使用提供程序客户端对象来访问提供程序。
+提供程序与提供程序客户端共同提供一致的标准数据界面，该界面还可处理跨进程通信并保护数据访问的安全性。
+
+
+</p>
+<p>
+    本主题介绍了以下基础知识：
+</p>
+    <ul>
+        <li>内容提供程序的工作方式。</li>
+        <li>用于从内容提供程序检索数据的 API。</li>
+        <li>用于在内容提供程序中插入、更新或删除数据的 API。</li>
+        <li>其他有助于使用提供程序的 API 功能。</li>
+    </ul>
+
+    <!-- Basics -->
+<h2 id="Basics">概览</h2>
+<p>
+    内容提供程序以一个或多个表（与在关系数据库中找到的表类似）的形式将数据呈现给外部应用。
+行表示提供程序收集的某种数据类型的实例，行中的每个列表示为实例收集的每条数据。
+
+
+</p>
+<p>
+    例如，Android 平台的内置提供程序之一是用户字典，它会存储用户想要保存的非标准字词的拼写。
+表 1 描述了数据在此提供程序表中的显示情况：
+
+</p>
+<p class="table-caption">
+    <strong>表 1：</strong>用户字典示例表格。
+</p>
+<table id="table1" style="width: 50%;">
+    <tr>
+        <th style="width:20%" align="center" scope="col">字词</th>
+        <th style="width:20%" align="center" scope="col">应用 id</th>
+        <th style="width:20%" align="center" scope="col">频率</th>
+        <th style="width:20%" align="center" scope="col">区域设置</th>
+        <th style="width:20%" align="center" scope="col">_ID</th>
+    </tr>
+    <tr>
+        <td align="center" scope="row">mapreduce</td>
+        <td align="center">user1</td>
+        <td align="center">100</td>
+        <td align="center">en_US</td>
+        <td align="center">1</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">precompiler</td>
+        <td align="center">user14</td>
+        <td align="center">200</td>
+        <td align="center">fr_FR</td>
+        <td align="center">2</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">applet</td>
+        <td align="center">user2</td>
+        <td align="center">225</td>
+        <td align="center">fr_CA</td>
+        <td align="center">3</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">const</td>
+        <td align="center">user1</td>
+        <td align="center">255</td>
+        <td align="center">pt_BR</td>
+        <td align="center">4</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">int</td>
+        <td align="center">user5</td>
+        <td align="center">100</td>
+        <td align="center">en_UK</td>
+        <td align="center">5</td>
+    </tr>
+</table>
+<p>
+    在表 1 中，每行表示可能无法在标准词典中找到的字词实例。
+每列表示该字词的某些数据，如该字词首次出现时的区域设置。
+列标题是存储在提供程序中的列名称。
+要引用行的区域设置，需要引用其 <code>locale</code> 列。对于此提供程序，<code>_ID</code> 列充当由提供程序自动维护的“主键”列。
+
+
+</p>
+<p class="note">
+    <strong>注</strong>：提供程序无需具有主键，也无需将 <code>_ID</code> 用作其主键的列名称（如果存在主键）。
+但是，如果您要将来自提供程序的数据与 {@link android.widget.ListView} 绑定，则其中一个列名称必须是 <code>_ID</code>。
+
+<a href="#DisplayResults">显示查询结果</a>部分详细说明了此要求。
+
+</p>
+<h3 id="ClientProvider">访问提供程序</h3>
+<p>
+    应用从具有 {@link android.content.ContentResolver} 客户端对象的内容提供程序访问数据。
+此对象具有调用提供程序对象（{@link android.content.ContentProvider} 的某个具体子类的实例）中同名方法的方法。
+
+
+{@link android.content.ContentResolver} 方法可提供持续存储的基本“CRUD”（创建、检索、更新和删除）功能。
+
+</p>
+<p>
+    客户端应用进程中的 {@link android.content.ContentResolver} 对象和拥有提供程序的应用中的 {@link android.content.ContentProvider} 对象可自动处理跨进程通信。
+{@link android.content.ContentProvider} 还可充当其数据存储库和表格形式的数据外部显示之间的抽象层。
+
+
+
+</p>
+<p class="note">
+    <strong>注</strong>：要访问提供程序，您的应用通常需要在其清单文件中请求特定权限。
+<a href="#Permissions">内容提供程序权限</a>部分详细介绍了此内容。
+
+</p>
+<p>
+    例如，要从用户字典提供程序中获取字词及其区域设置的列表，则需调用 {@link android.content.ContentResolver#query ContentResolver.query()}。
+
+    {@link android.content.ContentResolver#query query()} 方法会调用用户字典提供程序所定义的
+{@link android.content.ContentProvider#query ContentProvider.query()} 方法。
+以下代码行显示了
+{@link android.content.ContentResolver#query ContentResolver.query()} 调用：
+<p>
+<pre>
+// Queries the user dictionary and returns results
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,   // The content URI of the words table
+    mProjection,                        // The columns to return for each row
+    mSelectionClause                    // Selection criteria
+    mSelectionArgs,                     // Selection criteria
+    mSortOrder);                        // The sort order for the returned rows
+</pre>
+<p>
+    表 2 显示了
+    {@link android.content.ContentResolver#query 
+    query(Uri,projection,selection,selectionArgs,sortOrder)} 的参数如何匹配 SQL SELECT 语句：
+</p>
+<p class="table-caption">
+    <strong>表 2：</strong>Query() 与 SQL 查询对比。
+</p>
+<table id="table2" style="width: 75%;">
+    <tr>
+        <th style="width:25%" align="center" scope="col">query() 参数</th>
+        <th style="width:25%" align="center" scope="col">SELECT 关键字/参数</th>
+        <th style="width:50%" align="center" scope="col">备注</th>
+    </tr>
+    <tr>
+        <td align="center"><code>Uri</code></td>
+        <td align="center"><code>FROM <em>table_name</em></code></td>
+        <td><code>Uri</code> 映射至名为 <em>table_name</em> 的提供程序中的表。</td>
+    </tr>
+    <tr>
+        <td align="center"><code>projection</code></td>
+        <td align="center"><code><em>col,col,col,...</em></code></td>
+        <td>
+            <code>projection</code> 是应该为检索到的每个行包含的列的数组。
+
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>selection</code></td>
+        <td align="center"><code>WHERE <em>col</em> = <em>value</em></code></td>
+        <td><code>selection</code> 会指定选择行的条件。</td>
+    </tr>
+    <tr>
+        <td align="center"><code>selectionArgs</code></td>
+        <td align="center">
+            （没有完全等效项。选择参数会替换选择子句中 <code>?</code> 的占位符。）
+
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>sortOrder</code></td>
+        <td align="center"><code>ORDER BY <em>col,col,...</em></code></td>
+        <td>
+            <code>sortOrder</code> 指定行在返回的
+ {@link android.database.Cursor} 中的显示顺序。
+        </td>
+    </tr>
+</table>
+<h3 id="ContentURIs">内容 URI</h3>
+<p>
+    <strong>内容 URI</strong> 是用于在提供程序中标识数据的 URI。内容 URI    包括整个提供程序的符号名称（其<strong>权限</strong>）和一个指向表的名称（<strong>路径</strong>）。
+
+当您调用客户端方法来访问提供程序中的表时，该表的内容 URI 将是其参数之一。
+
+
+</p>
+<p>
+    在前面的代码行中，常量
+ {@link android.provider.UserDictionary.Words#CONTENT_URI} 包含用户字典的“字词”表的内容 URI。
+{@link android.content.ContentResolver}
+ 对象会分析出 URI 的授权，并通过将该授权与已知提供程序的系统表进行比较，来“解析”提供程序。
+然后，
+{@link android.content.ContentResolver} 可以将查询参数分派给正确的提供程序。
+
+</p>
+<p>
+    {@link android.content.ContentProvider} 使用内容 URI 的路径部分来选择要访问的表。
+提供程序通常会为其公开的每个表显示一条<strong>路径</strong>。
+</p>
+<p>
+    在前面的代码行中，“字词”表的完整 URI 是：
+</p>
+<pre>
+content://user_dictionary/words
+</pre>
+<p>
+    其中，<code>user_dictionary</code> 字符串是提供程序的授权，
+<code>words</code> 字符串是表的路径。字符串
+ <code>content://</code>（<strong>架构</strong>）始终显示，并将此标识为内容 URI。
+
+</p>
+<p>
+    许多提供程序都允许您通过将 ID 值追加到 URI 末尾来访问表中的单个行。例如，要从用户字典中检索 <code>_ID</code> 为
+ <code>4</code> 的行，则可使用此内容 URI：
+
+</p>
+<pre>
+Uri singleUri = ContentUris.withAppendedId(UserDictionary.Words.CONTENT_URI,4);
+</pre>
+<p>
+    在检索到一组行后想要更新或删除其中某一行时通常会用到 ID 值。
+
+</p>
+<p class="note">
+    <strong>注</strong>：{@link android.net.Uri} 和 {@link android.net.Uri.Builder} 类
+包含根据字符串构建格式规范的 URI 对象的便利方法。
+{@link android.content.ContentUris} 包含一些可以将 ID 值轻松追加到
+ URI 后的方法。前面的代码段就是使用 {@link android.content.ContentUris#withAppendedId
+    withAppendedId()} 将 ID 追加到用户字典内容 URI 后。
+</p>
+
+
+    <!-- Retrieving Data from the Provider -->
+<h2 id="SimpleQuery">从提供程序检索数据</h2>
+<p>
+    本节将以用户字典提供程序为例，介绍如何从提供程序中检索数据。
+
+</p>
+<p class="note">
+    为了明确进行说明，本节中的代码段将在“UI 线程”上调用
+ {@link android.content.ContentResolver#query ContentResolver.query()}。但在实际代码中，您应该在单独线程上异步执行查询。
+执行此操作的方式之一是使用 {@link android.content.CursorLoader} 类，<a href="{@docRoot}guide/components/loaders.html">加载器</a>指南中对此有更为详细的介绍。
+
+
+此外，前述代码行只是代码段；它们不会显示整个应用。
+
+</p>
+<p>
+    要从提供程序中检索数据，请按照以下基本步骤执行操作：
+</p>
+<ol>
+   <li>
+        请求对提供程序的读取访问权限。
+   </li>
+   <li>
+        定义将查询发送至提供程序的代码。
+   </li>
+</ol>
+<h3 id="RequestPermissions">请求读取访问权限</h3>
+<p>
+    要从提供程序检索数据，您的应需要具备对提供程序的“读取访问”权限。
+您无法在运行时请求此权限；相反，您需要使用<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>元素和提供程序定义的准确权限名称，在清单文件中指明您需要此权限。
+
+
+
+在您的清单文件中指定此元素后，您将有效地为应用“请求”此权限。
+用户安装您的应用时，会隐式授予允许此请求。
+
+</p>
+<p>
+    要找出您正在使用的提供程序的读取访问权限的准确名称，以及提供程序使用的其他访问权限的名称，请查看提供程序的文档。
+
+
+</p>
+<p>
+    <a href="#Permissions">内容提供程序权限</a>部分详细介绍了权限在访问提供程序过程中的作用。
+
+</p>
+<p>
+    用户字典提供程序在其清单文件中定义了权限
+ <code>android.permission.READ_USER_DICTIONARY</code>，因此希望从提供程序中进行读取的应用必需请求此权限。
+
+</p>
+<!-- Constructing the query -->
+<h3 id="Query">构建查询</h3>
+<p>
+    从提供程序中检索数据的下一步是构建查询。第一个代码段定义某些用于访问用户字典提供程序的变量：
+
+</p>
+<pre class="prettyprint">
+
+// A "projection" defines the columns that will be returned for each row
+String[] mProjection =
+{
+    UserDictionary.Words._ID,    // Contract class constant for the _ID column name
+    UserDictionary.Words.WORD,   // Contract class constant for the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant for the locale column name
+};
+
+// Defines a string to contain the selection clause
+String mSelectionClause = null;
+
+// Initializes an array to contain selection arguments
+String[] mSelectionArgs = {""};
+
+</pre>
+<p>
+    下一个代码段以用户字典提供程序为例，显示了如何使用
+ {@link android.content.ContentResolver#query ContentResolver.query()}。
+提供程序客户端查询与 SQL 查询类似，并且包含一组要返回的列、一组选择条件和排序顺序。
+
+</p>
+<p>
+    查询应该返回的列集被称为<strong>投影</strong>（变量 <code>mProjection</code>）。
+
+</p>
+<p>
+    用于指定要检索的行的表达式分割为选择子句和选择参数。
+选择子句是逻辑和布尔表达式、列名称和值（变量 <code>mSelectionClause</code>）的组合。
+如果您指定了可替换参数 <code>?</code> 而非值，则查询方法会从选择参数数组（变量 <code>mSelectionArgs</code>）中检索值。
+
+
+</p>
+<p>
+    在下一个代码段中，如果用户未输入字词，则选择子句将设置为 <code>null</code>，而且查询会返回提供程序中的所有字词。
+如果用户输入了字词，选择子句将设置为 <code>UserDictionary.Words.WORD + " = ?"</code> 且选择参数数组的第一个元素将设置为用户输入的字词。
+
+
+</p>
+<pre class="prettyprint">
+/*
+ * This defines a one-element String array to contain the selection argument.
+ */
+String[] mSelectionArgs = {""};
+
+// Gets a word from the UI
+mSearchString = mSearchWord.getText().toString();
+
+// Remember to insert code here to check for invalid or malicious input.
+
+// If the word is the empty string, gets everything
+if (TextUtils.isEmpty(mSearchString)) {
+    // Setting the selection clause to null will return all words
+    mSelectionClause = null;
+    mSelectionArgs[0] = "";
+
+} else {
+    // Constructs a selection clause that matches the word that the user entered.
+    mSelectionClause = UserDictionary.Words.WORD + " = ?";
+
+    // Moves the user's input string to the selection arguments.
+    mSelectionArgs[0] = mSearchString;
+
+}
+
+// Does a query against the table and returns a Cursor object
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,  // The content URI of the words table
+    mProjection,                       // The columns to return for each row
+    mSelectionClause                   // Either null, or the word the user entered
+    mSelectionArgs,                    // Either empty, or the string the user entered
+    mSortOrder);                       // The sort order for the returned rows
+
+// Some providers return null if an error occurs, others throw an exception
+if (null == mCursor) {
+    /*
+     * Insert code here to handle the error. Be sure not to use the cursor! You may want to
+     * call android.util.Log.e() to log this error.
+     *
+     */
+// If the Cursor is empty, the provider found no matches
+} else if (mCursor.getCount() &lt; 1) {
+
+    /*
+     * Insert code here to notify the user that the search was unsuccessful. This isn't necessarily
+     * an error. You may want to offer the user the option to insert a new row, or re-type the
+     * search term.
+     */
+
+} else {
+    // Insert code here to do something with the results
+
+}
+</pre>
+<p>
+    此查询与 SQL 语句相似：
+</p>
+<pre>
+SELECT _ID, word, locale FROM words WHERE word = &lt;userinput&gt; ORDER BY word ASC;
+</pre>
+<p>
+    在此 SQL 语句中，会使用实际的列名称而非协定类常量。
+</p>
+<h4 id="Injection">防止恶意输入</h4>
+<p>
+    如果内容提供程序管理的数据位于 SQL 数据库中，将不受信任的外部数据包括在原始 SQL 语句中可能会导致 SQL 注入。
+
+</p>
+<p>
+    考虑此选择子句：
+</p>
+<pre>
+// Constructs a selection clause by concatenating the user's input to the column name
+String mSelectionClause =  "var = " + mUserInput;
+</pre>
+<p>
+    如果您执行此操作，则会允许用户将恶意 SQL 串连到 SQL 语句上。
+    例如，用户可以为 <code>mUserInput</code> 输入“nothing; DROP TABLE *;”，这会生成选择子句 <code>var = nothing; DROP TABLE *;</code>。
+由于选择子句是作为 SQL 语句处理，因此这可能会导致提供程序擦除基础 SQLite 数据库中的所有表（除非提供程序设置为可捕获 <a href="http://en.wikipedia.org/wiki/SQL_injection">SQL 注入</a>尝试）。
+
+
+
+</p>
+<p>
+    要避免此问题，可使用一个用于将 <code>?</code> 作为可替换参数的选择子句以及一个单独的选择参数数组。
+执行此操作时，用户输入直接受查询约束，而不解释为 SQL 语句的一部分。
+
+    由于用户输入未作为 SQL 处理，因此无法注入恶意 SQL。请使用此选择子句，而不要使用串连来包括用户输入：
+
+</p>
+<pre>
+// Constructs a selection clause with a replaceable parameter
+String mSelectionClause =  "var = ?";
+</pre>
+<p>
+    按如下所示设置选择参数数组：
+</p>
+<pre>
+// Defines an array to contain the selection arguments
+String[] selectionArgs = {""};
+</pre>
+<p>
+    按如下所示将值置于选择参数数组中：
+</p>
+<pre>
+// Sets the selection argument to the user's input
+selectionArgs[0] = mUserInput;
+</pre>
+<p>
+    一个用于将 <code>?</code> 用作可替换参数的选择子句和一个选择参数数组是指定选择的首选方式，即使提供程序并未基于 SQL 数据库。
+
+
+</p>
+<!-- Displaying the results -->
+<h3 id="DisplayResults">显示查询结果</h3>
+<p>
+    {@link android.content.ContentResolver#query ContentResolver.query()} 客户端方法始终会返回符合以下条件的 {@link android.database.Cursor}：包含查询的投影为匹配查询选择条件的行指定的列。
+
+
+{@link android.database.Cursor} 对象为其包含的行和列提供随机读取访问权限。
+通过使用 {@link android.database.Cursor} 方法，您可以循环访问结果中的行、确定每个列的数据类型、从列中获取数据，并检查结果的其他属性。
+
+某些 {@link android.database.Cursor} 实现会在提供程序的数据发生更改时自动更新对象和/或在 {@link android.database.Cursor} 更改时触发观察程序对象中的方法。
+
+
+</p>
+<p class="note">
+    <strong>注</strong>：提供程序可能会根据发出查询的对象的性质来限制对列的访问。
+例如，联系人提供程序会限定只有同步适配器才能访问某些列，因此不会将它们返回至 Activity 或服务。
+
+</p>
+<p>
+    如果没有与选择条件匹配的行，则提供程序会返回 {@link android.database.Cursor#getCount Cursor.getCount()} 为 0（空游标）的 {@link android.database.Cursor} 对象。
+
+
+</p>
+<p>
+    如果出现内部错误，查询结果将取决于具体的提供程序。它可能会选择返回 <code>null</code>，或抛出 {@link java.lang.Exception}。
+
+</p>
+<p>
+    由于 {@link android.database.Cursor} 是行“列表”，因此显示 {@link android.database.Cursor} 内容的良好方式是通过 {@link android.widget.SimpleCursorAdapter} 将其与 {@link android.widget.ListView} 关联。
+
+
+</p>
+<p>
+    以下代码段将延续上一代码段的代码。它会创建一个包含由查询检索到的 {@link android.database.Cursor} 的 {@link android.widget.SimpleCursorAdapter} 对象，并将此对象设置为 {@link android.widget.ListView} 的适配器：
+
+
+
+</p>
+<pre class="prettyprint">
+// Defines a list of columns to retrieve from the Cursor and load into an output row
+String[] mWordListColumns =
+{
+    UserDictionary.Words.WORD,   // Contract class constant containing the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant containing the locale column name
+};
+
+// Defines a list of View IDs that will receive the Cursor columns for each row
+int[] mWordListItems = { R.id.dictWord, R.id.locale};
+
+// Creates a new SimpleCursorAdapter
+mCursorAdapter = new SimpleCursorAdapter(
+    getApplicationContext(),               // The application's Context object
+    R.layout.wordlistrow,                  // A layout in XML for one row in the ListView
+    mCursor,                               // The result from the query
+    mWordListColumns,                      // A string array of column names in the cursor
+    mWordListItems,                        // An integer array of view IDs in the row layout
+    0);                                    // Flags (usually none are needed)
+
+// Sets the adapter for the ListView
+mWordList.setAdapter(mCursorAdapter);
+</pre>
+<p class="note">
+    <strong>注</strong>：要通过 {@link android.database.Cursor} 支持 {@link android.widget.ListView}，游标必需包含名为 <code>_ID</code> 的列。
+
+    正因如此，前文显示的查询会为“字词”表检索 <code>_ID</code> 列，即使 {@link android.widget.ListView} 未显示该列。
+
+    此限制也解释了为什么大多数提供程序的每个表都具有 <code>_ID</code> 列。
+
+</p>
+
+        <!-- Getting data from query results -->
+<h3 id="GettingResults">从查询结果中获取数据</h3>
+<p>
+    您可以将查询结果用于其他任务，而不是仅显示它们。例如，您可以从用户字典中检索拼写，然后在其他提供程序中查找它们。
+
+要执行此操作，您需要在 {@link android.database.Cursor} 中循环访问行：
+</p>
+<pre class="prettyprint">
+
+// Determine the column index of the column named "word"
+int index = mCursor.getColumnIndex(UserDictionary.Words.WORD);
+
+/*
+ * Only executes if the cursor is valid. The User Dictionary Provider returns null if
+ * an internal error occurs. Other providers may throw an Exception instead of returning null.
+ */
+
+if (mCursor != null) {
+    /*
+     * Moves to the next row in the cursor. Before the first movement in the cursor, the
+     * "row pointer" is -1, and if you try to retrieve data at that position you will get an
+     * exception.
+     */
+    while (mCursor.moveToNext()) {
+
+        // Gets the value from the column.
+        newWord = mCursor.getString(index);
+
+        // Insert code here to process the retrieved word.
+
+        ...
+
+        // end of while loop
+    }
+} else {
+
+    // Insert code here to report an error if the cursor is null or the provider threw an exception.
+}
+</pre>
+<p>
+    {@link android.database.Cursor} 实现包含多个用于从对象中检索不同类型的数据的“获取”方法。
+例如，上一个代码段使用 {@link android.database.Cursor#getString getString()}。
+它们还具有 {@link android.database.Cursor#getType getType()} 方法，该方法会返回指示列的数据类型的值。
+
+
+</p>
+
+
+    <!-- Requesting permissions -->
+<h2 id="Permissions">内容提供程序权限</h2>
+<p>
+    提供程序的应用可以指定其他应用访问提供程序的数据所必需的权限。
+这些权限可确保用户了解应用将尝试访问的数据。
+根据提供程序的要求，其他应用会请求它们访问提供程序所需的权限。
+最终用户会在安装应用时看到所请求的权限。
+
+</p>
+<p>
+    如果提供程序的应用未指定任何权限，则其他应用将无权访问提供程序的数据。
+但是，无论指定权限为何，提供程序的应用中的组件始终具有完整的读取和写入访问权限。
+
+</p>
+<p>
+    如前所述，用户字典提供程序需要
+ <code>android.permission.READ_USER_DICTIONARY</code> 权限才能从中检索数据。
+    提供程序具有用于插入、更新或删除数据的单独 <code>android.permission.WRITE_USER_DICTIONARY</code> 权限。
+
+</p>
+<p>
+    要获取访问提供程序所需的权限，应用将通过其清单文件中的
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+ 元素来请求这些权限。Android 软件包管理器安装应用时，用户必须批准该应用请求的所有权限。
+如果用户批准所有权限，软件包管理器将继续安装；如果用户未批准这些权限，软件包管理器将中止安装。
+
+
+</p>
+<p>
+    以下
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 元素会请求对用户字典提供程序的读取访问权限：
+
+</p>
+<pre>
+    &lt;uses-permission android:name="android.permission.READ_USER_DICTIONARY"&gt;
+</pre>
+<p>
+    
+<a href="{@docRoot}guide/topics/security/security.html">安全与权限</a>指南中详细介绍了权限对提供程序访问的影响。
+</p>
+
+
+<!-- Inserting, Updating, and Deleting Data -->
+<h2 id="Modifications">插入、更新和删除数据</h2>
+<p>
+    与从提供程序检索数据的方式相同，也可以通过提供程序客户端和提供程序 {@link android.content.ContentProvider} 之间的交互来修改数据。
+
+    您通过传递到 {@link android.content.ContentProvider} 的对应方法的参数来调用 {@link android.content.ContentResolver} 方法。
+提供程序和提供程序客户端会自动处理安全性和跨进程通信。
+
+</p>
+<h3 id="Inserting">插入数据</h3>
+<p>
+    要将数据插入提供程序，可调用
+ {@link android.content.ContentResolver#insert ContentResolver.insert()}
+ 方法。此方法会在提供程序中插入新行并为该行返回内容 URI。
+    此代码段显示如何将新字词插入用户字典提供程序：
+</p>
+<pre class="prettyprint">
+// Defines a new Uri object that receives the result of the insertion
+Uri mNewUri;
+
+...
+
+// Defines an object to contain the new values to insert
+ContentValues mNewValues = new ContentValues();
+
+/*
+ * Sets the values of each column and inserts the word. The arguments to the "put"
+ * method are "column name" and "value"
+ */
+mNewValues.put(UserDictionary.Words.APP_ID, "example.user");
+mNewValues.put(UserDictionary.Words.LOCALE, "en_US");
+mNewValues.put(UserDictionary.Words.WORD, "insert");
+mNewValues.put(UserDictionary.Words.FREQUENCY, "100");
+
+mNewUri = getContentResolver().insert(
+    UserDictionary.Word.CONTENT_URI,   // the user dictionary content URI
+    mNewValues                          // the values to insert
+);
+</pre>
+<p>
+    新行的数据会进入单个 {@link android.content.ContentValues} 对象中，该对象在形式上与单行游标类似。
+此对象中的列不需要具有相同的数据类型，如果您不想指定值，则可以使用 {@link android.content.ContentValues#putNull ContentValues.putNull()} 将列设置为 <code>null</code>。
+
+
+</p>
+<p>
+    代码段不会添加 <code>_ID</code> 列，因为系统会自动维护此列。
+提供程序会向添加的每个行分配唯一的 <code>_ID</code> 值。
+通常，提供程序会将此值用作表的主键。
+</p>
+<p>
+    <code>newUri</code> 中返回的内容 URI 会按照以下格式标识新添加的行：
+
+</p>
+<pre>
+content://user_dictionary/words/&lt;id_value&gt;
+</pre>
+<p>
+    <code>&lt;id_value&gt;</code> 是新行的 <code>_ID</code> 内容。
+    大多数提供程序都能自动检测这种格式的内容 URI，然后在该特定行上执行请求的操作。
+
+</p>
+<p>
+    要从返回的 {@link android.net.Uri} 中获取 <code>_ID</code> 的值，请调用
+ {@link android.content.ContentUris#parseId ContentUris.parseId()}。
+</p>
+<h3 id="Updating">更新数据</h3>
+<p>
+    要更新行，请按照执行插入的方式使用具有更新值的 {@link android.content.ContentValues} 对象，并按照执行查询的方式使用选择条件。
+
+    您使用的客户端方法是
+ {@link android.content.ContentResolver#update ContentResolver.update()}。您只需将值添加至您要更新的列的 {@link android.content.ContentValues} 对象。
+如果您要清除列的内容，请将值设置为 <code>null</code>。
+
+</p>
+<p>
+    以下代码段会将区域设置具有语言“en”的所有行的区域设置更改为 <code>null</code>。
+返回值是已更新的行数：
+</p>
+<pre>
+// Defines an object to contain the updated values
+ContentValues mUpdateValues = new ContentValues();
+
+// Defines selection criteria for the rows you want to update
+String mSelectionClause = UserDictionary.Words.LOCALE +  "LIKE ?";
+String[] mSelectionArgs = {"en_%"};
+
+// Defines a variable to contain the number of updated rows
+int mRowsUpdated = 0;
+
+...
+
+/*
+ * Sets the updated value and updates the selected words.
+ */
+mUpdateValues.putNull(UserDictionary.Words.LOCALE);
+
+mRowsUpdated = getContentResolver().update(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mUpdateValues                       // the columns to update
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    您还应该在调用
+ {@link android.content.ContentResolver#update ContentResolver.update()} 时检查用户输入。如需了解有关此内容的更多详情，请阅读<a href="#Injection">防止恶意输入</a>部分。
+
+</p>
+<h3 id="Deleting">删除数据</h3>
+<p>
+    删除行与检索行数据类似：为要删除的行指定选择条件，客户端方法会返回已删除的行数。
+
+    以下代码段会删除应用 ID 与“用户”匹配的行。该方法会返回已删除的行数。
+
+</p>
+<pre>
+
+// Defines selection criteria for the rows you want to delete
+String mSelectionClause = UserDictionary.Words.APP_ID + " LIKE ?";
+String[] mSelectionArgs = {"user"};
+
+// Defines a variable to contain the number of rows deleted
+int mRowsDeleted = 0;
+
+...
+
+// Deletes the words that match the selection criteria
+mRowsDeleted = getContentResolver().delete(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    您还应该在调用
+ {@link android.content.ContentResolver#delete ContentResolver.delete()} 时检查用户输入。如需了解有关此内容的更多详情，请阅读<a href="#Injection">防止恶意输入</a>部分。
+
+</p>
+<!-- Provider Data Types -->
+<h2 id="DataTypes">提供程序数据类型</h2>
+<p>
+    内容提供程序可以提供多种不同的数据类型。用户字典提供程序仅提供文本，但提供程序也能提供以下格式：
+
+</p>
+    <ul>
+        <li>
+            整型
+        </li>
+        <li>
+            长整型（长）
+        </li>
+        <li>
+            浮点型
+        </li>
+        <li>
+            长浮点型（双倍）
+        </li>
+    </ul>
+<p>
+    提供程序经常使用的另一种数据类型是作为 64KB 字节的数组实施的二进制大型对象 (BLOB)。
+您可以通过查看
+ {@link android.database.Cursor} 类“获取”方法看到可用数据类型。
+</p>
+<p>
+    提供程序文档中通常都列出了其每个列的数据类型。
+    用户字典提供程序的数据类型列在其协定类 {@link android.provider.UserDictionary.Words} 参考文档中（<a href="#ContractClasses">协定类</a>部分对协定类进行了介绍）。
+
+
+    您也可以通过调用 {@link android.database.Cursor#getType
+ Cursor.getType()} 来确定数据类型。
+</p>
+<p>
+    提供程序还会维护其定义的每个内容 URI 的 MIME（多用途互联网邮件扩展）数据类型信息。您可以使用 MIME 类型信息查明应用是否可以处理提供程序提供的数据，或根据 MIME 类型选择处理类型。
+
+在使用包含复杂数据结构或文件的提供程序时，通常需要 MIME 类型。
+
+例如，联系人提供程序中的 {@link android.provider.ContactsContract.Data}
+ 表会使用 MIME 类型来标记每行中存储的联系人数据类型。
+要获取与内容 URI 对应的 MIME 类型，请调用
+ {@link android.content.ContentResolver#getType ContentResolver.getType()}。
+</p>
+<p>
+    <a href="#MIMETypeReference">MIME 类型引用</a>部分介绍了标准和自定义 MIME 类型的语法。
+
+</p>
+
+
+<!-- Alternative Forms of Provider Access -->
+<h2 id="AltForms">提供程序访问的替代形式</h2>
+<p>
+    提供程序访问的三种替代形式在应用开发过程中十分重要：
+</p>
+<ul>
+    <li>
+        <a href="#Batch">批量访问</a>：您可以通过
+ {@link android.content.ContentProviderOperation} 类中的方法创建一批访问调用，然后通过
+ {@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()} 应用它们。
+    </li>
+    <li>
+        异步查询：您应该在单独线程中执行查询。执行此操作的方式之一是使用 {@link android.content.CursorLoader} 对象。
+<a href="{@docRoot}guide/components/loaders.html">加载器</a>指南中的示例展示了如何执行此操作。
+
+
+    </li>
+    <li>
+        <a href="#Intents">通过 Intent 访问数据</a>：尽管您无法直接向提供程序发送 Intent，但可以向提供程序的应用发送 Intent，后者通常具有修改提供程序数据的最佳配置。
+
+
+    </li>
+</ul>
+<p>
+    下文将介绍批量访问和修改。
+</p>
+<h3 id="Batch">批量访问</h3>
+<p>
+    批量访问提供程序适用于插入大量行，或通过同一方法调用在多个表中插入行，或者通常用于跨进程界限将一组操作作为事务处理（原子操作）执行。
+
+
+</p>
+<p>
+    要在“批量模式”下访问提供程序，
+您可以创建 {@link android.content.ContentProviderOperation} 对象数组，然后使用 {@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()} 
+将其分派给内容提供程序。
+您需将内容提供程序的<em>授权</em>传递给此方法，而不是特定内容 URI。这样可使数组中的每个 {@link android.content.ContentProviderOperation} 对象都能适用于其他表。
+
+
+调用 {@link android.content.ContentResolver#applyBatch
+ ContentResolver.applyBatch()} 会返回结果数组。
+</p>
+<p>
+    {@link android.provider.ContactsContract.RawContacts} 协定类
+的说明包括展示批量注入的代码段。
+<a href="{@docRoot}resources/samples/ContactManager/index.html">联系人管理器</a>示例应用包含在其 <code>ContactAdder.java</code>
+ 源文件中进行批量访问的示例。
+
+</p>
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>使用帮助程序应用显示数据</h2>
+<p>
+    如果您的应用<em>具有</em>访问权限，您可能仍想使用 Intent 对象在其他应用中显示数据。
+例如，日历应用接受
+ {@link android.content.Intent#ACTION_VIEW} Intent 对象，用于显示特定的日期或事件。
+    这样，您可以在不创建自己的 UI 的情况下显示日历信息。如需了解有关此功能的详情，请参见<a href="{@docRoot}guide/topics/providers/calendar-provider.html">日历提供程序</a>指南。
+
+
+</p>
+<p>
+    您向其发送 Intent 对象的应用不一定要是与提供程序关联的应用。
+例如，您可以从联系人提供程序中检索联系人，然后将包含联系人图像的内容 URI 的 {@link android.content.Intent#ACTION_VIEW}  Intent 发送至图像查看器。
+
+
+</p>
+</div>
+</div>
+<h3 id="Intents">通过 Intent 访问数据</h3>
+<p>
+     Intent 可以提供对内容提供程序的间接访问。即使您的应用不具备访问权限，您也可以通过以下方式允许用户访问提供程序中的数据：从具有权限的应用中获取回结果 Intent，或者通过激活具有权限的应用，然后让用户在其中工作。
+
+
+
+</p>
+<h4>通过临时权限获取访问权限</h4>
+<p>
+    即使您没有适当的访问权限，也可以通过以下方式访问内容提供程序中的数据：将 Intent 发送至具有权限的应用，然后接收回包含“URI”权限的结果 Intent。
+
+
+    这些是特定内容 URI 的权限，将持续至接收该权限的 Activity 结束。
+具有永久权限的应用将通过在结果 Intent 中设置标志来授予临时权限：
+
+</p>
+<ul>
+    <li>
+        <strong>读取权限：</strong>
+{@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}
+    </li>
+    <li>
+        <strong>写入权限：</strong>
+{@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION}
+    </li>
+</ul>
+<p class="note">
+    <strong>注</strong>：这些标志不会为其授权包含在内容 URI 中的提供程序
+提供常规的读取或写入访问权限。访问权限仅适用于 URI 本身。
+</p>
+<p>
+    提供程序使用
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+元素的
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">android:grantUriPermission</a></code>
+属性以及
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+元素的
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+子元素在其清单文件中定义内容 URI 的 URI 权限。<a href="{@docRoot}guide/topics/security/security.html">安全与权限</a>指南中“URI 权限”部分更加详细地说明了 URI 权限机制。
+
+
+</p>
+<p>
+    例如，即使您没有
+ {@link android.Manifest.permission#READ_CONTACTS} 权限，也可以在联系人提供程序中检索联系人的数据。您可能希望在向联系人发送电子生日祝福的应用中执行此操作。
+您更愿意让用户控制应用所使用的联系人，而不是请求 {@link android.Manifest.permission#READ_CONTACTS}，让您能够访问用户的所有联系人及其信息。
+
+
+要执行此操作，您需要使用以下进程：
+</p>
+<ol>
+    <li>
+        您的应用会使用方法 {@link android.app.Activity#startActivityForResult
+  startActivityForResult()} 发送包含操作
+ {@link android.content.Intent#ACTION_PICK} 和“联系人”MIME 类型
+ {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE} 的 Intent 对象。
+
+    </li>
+    <li>
+        由于此 Intent 与“联系人”应用的“选择” Activity 的 Intent 过滤器相匹配，因此 Activity 会显示在前台。
+
+    </li>
+    <li>
+        在选择 Activity 中，用户选择要更新的联系人。
+发生此情况时，选择 Activity 会调用
+ {@link android.app.Activity#setResult setResult(resultcode, intent)}
+ 以设置用于返回至应用的 Intent。 Intent 包含用户选择的联系人的内容 URI，以及“extras”标志
+ {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}。
+这些标志会为您的应用授予读取内容 URI 所指向的联系人的数据的 URI
+ 权限。然后，选择 Activity 会调用 {@link android.app.Activity#finish()} 以返回对应用的控制。
+
+
+    </li>
+    <li>
+        您的 Activity 会返回至前台，系统会调用您的 Activity 的
+ {@link android.app.Activity#onActivityResult onActivityResult()}
+ 方法。此方法会收到“联系人”应用中选择 Activity 所创建的结果 Intent。
+
+    </li>
+    <li>
+        通过来自结果 Intent 的内容 URI，您可以读取来自联系人提供程序的联系人数据，即使您未在清单文件中请求对该提供程序的永久读取访问权限。
+
+您可以获取联系人的生日信息或其电子邮件地址，然后发送电子祝福。
+
+    </li>
+</ol>
+<h4>使用其他应用</h4>
+<p>
+    允许用户修改您无权访问的数据的简单方法是激活具有权限的应用，让用户在其中执行工作。
+
+</p>
+<p>
+    例如，日历应用接受
+ {@link android.content.Intent#ACTION_INSERT} Intent，这让您可以激活应用的插入 UI。您可以在此 Intent（应用将使用该 Intent 来预先填充 UI）中传递“额外”数据，由于定期事件具有复杂的语法，因此将事件插入日历提供程序的首选方式是激活具有
+ {@link android.content.Intent#ACTION_INSERT} 的日历应用，然后让用户在其中插入事件。
+
+
+
+</p>
+<!-- Contract Classes -->
+<h2 id="ContractClasses">协定类</h2>
+<p>
+    协定类定义帮助应用使用内容 URI、列名称、 Intent 操作以及内容提供程序的其他功能的常量。
+协定类未自动包含在提供程序中；提供程序的开发者需要定义它们，然后使其可用于其他开发者。
+
+Android
+ 平台中包含的许多提供程序都在软件包 {@link android.provider} 中具有对应的协定类。
+</p>
+<p>
+    例如，用户字典提供程序具有包含内容 URI 和列名称常量的协定类 {@link android.provider.UserDictionary}。
+
+“字词”表的内容 URI 在常量
+ {@link android.provider.UserDictionary.Words#CONTENT_URI UserDictionary.Words.CONTENT_URI} 中定义。
+    {@link android.provider.UserDictionary.Words} 类也包含列名称常量，本指南的示例代码段中就使用了该常量。
+例如，查询投影可以定义为：
+
+</p>
+<pre>
+String[] mProjection =
+{
+    UserDictionary.Words._ID,
+    UserDictionary.Words.WORD,
+    UserDictionary.Words.LOCALE
+};
+</pre>
+<p>
+    联系人提供程序的 {@link android.provider.ContactsContract} 也是一个协定类。
+    此类的参考文档包括示例代码段。其子类之一 {@link android.provider.ContactsContract.Intents.Insert} 是包含 Intent 和 Intent 数据的协定类。
+
+
+</p>
+
+
+<!-- MIME Type Reference -->
+<h2 id="MIMETypeReference">MIME 类型引用</h2>
+<p>
+    内容提供程序可以返回标准 MIME 媒体类型和/或自定义 MIME 类型字符串。
+</p>
+<p>
+    MIME 类型具有格式
+</p>
+<pre>
+<em>type</em>/<em>subtype</em>
+</pre>
+<p>
+    例如，众所周知的 MIME 类型 <code>text/html</code> 具有 <code>text</code> 类型和
+ <code>html</code> 子类型。如果提供程序为 URI 返回此类型，则意味着使用该 URI 的查询会返回包含 HTML 标记的文本。
+
+</p>
+<p>
+    自定义 MIME 类型字符串（也称为“特定于供应商”的 MIME 类型）具有更加复杂的<em>类型</em>和<em>子类型</em>值。
+<em>类型</em>值始终为
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>
+</pre>
+<p>
+    （多行）或
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>
+</pre>
+<p>
+    （单行）。
+</p>
+<p>
+    <em>子类型</em>特定于提供程序。Android 内置提供程序通常具有简单的子类型。
+例如，当联系人应用为电话号码创建行时，它会在行中设置以下 MIME 类型：
+
+</p>
+<pre>
+vnd.android.cursor.item/phone_v2
+</pre>
+<p>
+    请注意，子类型值只是 <code>phone_v2</code>。
+</p>
+<p>
+    其他提供程序开发者可能会根据提供程序的授权和表名称创建自己的子类型模式。
+例如，假设提供程序包含列车时刻表。
+    提供程序的授权是 <code>com.example.trains</code>，并包含表
+ Line1、Line2 和 Line3。在响应表 Line1 的内容 URI
+</p>
+<p>
+<pre>
+content://com.example.trains/Line1
+</pre>
+<p>
+    时，提供程序会返回 MIME 类型
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.example.line1
+</pre>
+<p>
+     在响应表 Line2 中第 5 行的内容 URI
+</p>
+<pre>
+content://com.example.trains/Line2/5
+</pre>
+<p>
+    时，提供程序会返回 MIME 类型
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.example.line2
+</pre>
+<p>
+    大多数内容提供程序都会为其使用的 MIME 类型定义协定类常量。例如，联系人提供程序协定类 {@link android.provider.ContactsContract.RawContacts} 会为单个原始联系人行的 MIME 类型定义常量
+ {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE}。
+
+
+
+</p>
+<p>
+    
+<a href="#ContentURIs">内容 URI</a> 部分介绍了单个行的内容 URI。
+</p>
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/providers/content-provider-creating.jd b/docs/html-intl/intl/zh-cn/guide/topics/providers/content-provider-creating.jd
new file mode 100644
index 0000000..6da5743
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/providers/content-provider-creating.jd
@@ -0,0 +1,1214 @@
+page.title=创建内容提供程序
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<h2>本文内容</h2>
+<ol>
+    <li>
+        <a href="#DataStorage">设计数据存储</a>
+    </li>
+    <li>
+        <a href="#ContentURI">设计内容 URI</a>
+    </li>
+    <li>
+        <a href="#ContentProvider">实现 ContentProvider 类</a>
+        <ol>
+            <li>
+                <a href="#RequiredAccess">必需方法</a>
+            </li>
+            <li>
+                <a href="#Query">实现 query() 方法</a>
+            </li>
+            <li>
+                <a href="#Insert">实现 insert() 方法</a>
+            </li>
+            <li>
+                <a href="#Delete">实现 delete() 方法</a>
+            </li>
+            <li>
+                <a href="#Update">实现 update() 方法</a>
+            </li>
+            <li>
+                <a href="#OnCreate">实现 onCreate() 方法</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#MIMETypes">实现内容提供程序 MIME 类型</a>
+        <ol>
+            <li>
+                <a href="#TableMIMETypes">表的 MIME 类型</a>
+            </li>
+            <li>
+                <a href="#FileMIMETypes">文件的 MIME 类型</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClass">实现协定类</a>
+    </li>
+    <li>
+        <a href="#Permissions">实现内容提供程序权限</a>
+    </li>
+    <li>
+        <a href="#ProviderElement">&lt;Provider&gt; 元素</a>
+    </li>
+    <li>
+        <a href="#Intents"> Intent 和数据访问</a>
+    </li>
+</ol>
+<h2>关键类</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+<h2>相关示例</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/NotePad/index.html">
+                记事本示例应用
+            </a>
+        </li>
+    </ol>
+<h2>另请参阅</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+            内容提供程序基础知识</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+            日历提供程序</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+
+<p>
+    内容提供程序管理对中央数据存储库的访问。您将
+    提供程序作为 Android 应用中的一个或多个类（连同清单文件
+    中的元素）实现。其中一个类会实现子类
+    {@link android.content.ContentProvider}，即您的提供程序与
+    其他应用之间的界面。尽管内容提供程序旨在向其他应用提供
+    数据，但您的应用中必定有这样一些 Activity，它们允许用户
+    查询和修改由提供程序管理的数据。
+</p>
+<p>
+    本主题的其余部分列出了开发内容提供程序的基本步骤和
+    需要使用的 API。
+</p>
+
+
+<!-- Before You Start Building -->
+<h2 id="BeforeYouStart">着手开发前的准备工作</h2>
+<p>
+    请在着手开发提供程序之前执行以下操作：
+</p>
+<ol>
+    <li>
+        <strong>决定您是否需要内容提供程序</strong>。如果您想提供下列一项或多项功能，则需要开发内容
+        提供程序：
+        <ul>
+            <li>您想为其他应用提供复杂的数据或文件</li>
+            <li>您想允许用户将复杂的数据从您的应用复制到其他应用中</li>
+            <li>您想使用搜索框架提供自定义搜索建议</li>
+        </ul>
+    <p>
+        如果完全是在
+        您自己的应用中使用，则“根本不”<em></em>需要提供程序即可使用 SQLite 数据库。
+    </p>
+    </li>
+    <li>
+        如果您尚未完成此项操作，请阅读
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        内容提供程序基础知识</a>主题，了解有关提供程序的详情。
+    </li>
+</ol>
+<p>
+    接下来，请按照以下步骤开发您的提供程序：
+</p>
+<ol>
+    <li>
+        为您的数据设计原始存储。内容提供程序以两种方式提供数据：
+        <dl>
+            <dt>
+                文件数据
+            </dt>
+            <dd>
+                通常存储在文件中的数据，如
+                照片、音频或视频。将文件存储在您的应用的私有
+                空间内。您的提供程序可以应其他应用发出的文件请求
+                提供文件句柄。
+            </dd>
+            <dt>
+                “结构化”数据
+            </dt>
+            <dd>
+                通常存储在数据库、数组或类似结构中的数据。
+                以兼容行列表的形式存储数据。行
+                表示实体，如人员或库存项目。列表示
+                实体的某项数据，如人员的姓名或商品的价格。此类数据通常
+                存储在 SQLite 数据库中，但您可以使用任何类型的
+                持久存储。如需了解有关
+                Android 系统中提供的存储类型的更多信息，请参阅<a href="#DataStorage">
+                设计数据存储</a>部分。
+            </dd>
+        </dl>
+    </li>
+    <li>
+        定义 {@link android.content.ContentProvider} 类及其
+        所需方法的具体实现。此类是您的数据与
+        Android 系统其余部分之间的界面。如需了解有关此类的详细信息，请参阅
+        <a href="#ContentProvider">实现 ContentProvider 类</a>部分。
+    </li>
+    <li>
+        定义提供程序的权限字符串、其内容 URI 以及列名称。如果您想让
+        提供程序的应用处理 Intent，则还要定义 Intent 操作、Extra 数据
+        以及标志。此外，还要定义想要访问您的数据的应用必须具备的权限。
+您应该考虑在一个单独的协定类中将所有这些值定义为常量；以后您可以将此类公开给其他开发者。
+如需了解有关内容 URI 的详细信息，请参阅<a href="#ContentURI">设计内容 URI</a> 部分。
+
+
+        如需了解有关 Intent 的详细信息，请参阅<a href="#Intents"> Intent 和数据访问</a>部分。
+
+    </li>
+    <li>
+        添加其他可选部分，如示例数据或可以在提供程序与云数据之间同步数据的 {@link android.content.AbstractThreadedSyncAdapter} 实现。
+
+
+    </li>
+</ol>
+
+
+<!-- Designing Data Storage -->
+<h2 id="DataStorage">设计数据存储</h2>
+<p>
+    内容提供程序是用于访问以结构化格式保存的数据的界面。在您创建该界面之前，必须决定如何存储数据。
+您可以按自己的喜好以任何形式存储数据，然后根据需要设计读写数据的界面。
+
+</p>
+<p>
+    以下是 Android 中提供的一些数据存储技术：
+</p>
+<ul>
+    <li>
+        Android 系统包括一个 SQLite 数据库 API，Android 自己的提供程序使用它来存储面向表的数据。
+{@link android.database.sqlite.SQLiteOpenHelper} 类可帮助您创建数据库，{@link android.database.sqlite.SQLiteDatabase} 类是用于访问数据库的基类。
+
+
+
+        <p>
+            请记住，您不必使用数据库来实现存储库。提供程序在外部表现为一组表，与关系数据库类似，但这并不是对提供程序内部实现的要求；
+
+
+        </p>
+    </li>
+    <li>
+        对于存储文件数据，Android 提供了各种面向文件的 API。
+        如需了解有关文件存储的更多信息，请阅读<a href="{@docRoot}guide/topics/data/data-storage.html">数据存储</a>主题。
+如果您要设计提供媒体相关数据（如音乐或视频）的提供程序，则可开发一个合并了表数据和文件的提供程序；
+
+
+    </li>
+    <li>
+        要想使用基于网络的数据，请使用 {@link java.net} 和 {@link android.net} 中的类。
+您也可以将基于网络的数据与本地数据存储（如数据库）同步，然后以表或文件的形式提供数据。
+
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">示例同步适配器</a>示例应用展示了这类同步。
+
+    </li>
+</ul>
+<h3 id="DataDesign">
+    数据设计考虑事项
+</h3>
+<p>
+    以下是一些设计提供程序数据结构的技巧：
+</p>
+<ul>
+    <li>
+        表数据应始终具有一个“主键”列，提供程序将其作为与每行对应的唯一数字值加以维护。
+您可以使用此值将该行链接到其他表中的相关行（将其用作“外键”）。
+尽管您可以为此列使用任何名称，但使用 {@link android.provider.BaseColumns#_ID BaseColumns._ID} 是最佳选择，因为将提供程序查询的结果链接到 {@link android.widget.ListView} 的条件是，检索到的其中一个列的名称必须是 <code>_ID</code>；
+
+
+
+
+    </li>
+    <li>
+        如果您想提供位图图像或其他非常庞大的文件导向型数据，请将数据存储在一个文件中，然后间接提供这些数据，而不是直接将其存储在表中。
+
+如果您执行了此操作，则需要告知提供程序的用户，他们需要使用 {@link android.content.ContentResolver} 文件方法来访问数据；
+
+    </li>
+    <li>
+        使用二进制大型对象 (BLOB) 数据类型存储大小或结构会发生变化的数据。
+例如，您可以使用 BLOB 列来存储<a href="http://code.google.com/p/protobuf">协议缓冲区</a>或 <a href="http://www.json.org">JSON 结构</a>。
+
+
+        <p>
+            您也可以使用 BLOB 来实现<em>独立于架构</em>的表。在这类表中，您需要以 BLOB 形式定义一个主键列、一个 MIME 类型列以及一个或多个通用列。
+
+这些 BLOB 列中数据的含义通过 MIME 类型列中的值指示。
+这样一来，您就可以在同一表中存储不同类型的行。
+举例来说，联系人提供程序的“数据”表 {@link android.provider.ContactsContract.Data} 便是一个独立于架构的表。
+
+
+        </p>
+    </li>
+</ul>
+<!-- Designing Content URIs -->
+<h2 id="ContentURI">设计内容 URI</h2>
+<p>
+    <strong>内容 URI</strong> 是用于在提供程序中标识数据的 URI。内容 URI 包括整个提供程序的符号名称（其<strong>权限</strong>）和一个指向表或文件的名称（<strong>路径</strong>）。
+
+可选 ID 部分指向
+    表中的单个行。
+    {@link android.content.ContentProvider} 的每一个数据访问方法都将内容 URI 作为参数；您可以利用这一点确定要访问的表、行或文件。
+
+</p>
+<p>
+    
+    <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">内容提供程序基础知识</a>主题中描述了内容 URI 的基础知识。
+
+</p>
+<h3>设计权限</h3>
+<p>
+    提供程序通常具有单一权限，该权限充当其 Android 内部名称。为避免与其他提供程序发生冲突，您应该使用 Internet 域所有权（反向）作为提供程序权限的基础。
+
+由于此建议也适用于 Android 软件包名称，因此您可以将提供程序权限定义为包含该提供程序的软件包名称的扩展名。
+
+例如，如果您的 Android 软件包名称为
+    <code>com.example.&lt;appname&gt;</code>，则应为提供程序授予权限 <code>com.example.&lt;appname&gt;.provider</code>。
+
+</p>
+<h3>设计路径结构</h3>
+<p>
+    开发者通常通过追加指向单个表的路径来根据权限创建内容 URI。
+例如，如果您有两个表：<em>table1</em> 和
+    <em>table2</em>，则可以通过合并上一示例中的权限来生成
+    内容 URI
+    <code>com.example.&lt;appname&gt;.provider/table1</code> 和
+    <code>com.example.&lt;appname&gt;.provider/table2</code>。路径并不限定于单个段，也无需为每一级路径都创建一个表。
+
+</p>
+<h3>处理内容 URI ID</h3>
+<p>
+    按照惯例，提供程序通过接受末尾具有行所对应 ID 值的内容 URI 来提供对表中单个行的访问。同样按照惯例，提供程序会将该 ID 值与表的 <code>_ID</code> 列进行匹配，并对匹配的行执行请求的访问。
+
+
+
+</p>
+<p>
+    这一惯例为访问提供程序的应用的常见设计模式提供了便利。应用会对提供程序执行查询，并使用 {@link android.widget.CursorAdapter} 以 {@link android.widget.ListView} 显示生成的 {@link android.database.Cursor}。
+
+
+    定义 {@link android.widget.CursorAdapter} 的条件是，
+    {@link android.database.Cursor} 中的其中一个列必须是 <code>_ID</code>
+</p>
+<p>
+    用户随后从 UI 上显示的行中选取其中一行，以查看或修改数据。
+应用会从支持
+    {@link android.widget.ListView} 的 {@link android.database.Cursor} 中获取对应行，获取该行的 <code>_ID</code> 值，将其追加到内容 URI，然后向提供程序发送访问请求。
+然后，提供程序便可对用户选取的特定行执行查询或修改。
+
+</p>
+<h3>内容 URI 模式</h3>
+<p>
+    为帮助您选择对传入的内容 URI 执行的操作，提供程序 API 加入了实用类 {@link android.content.UriMatcher}，它会将内容 URI“模式”映射到整型值。
+
+您可以在一个 <code>switch</code> 语句中使用这些整型值，为匹配特定模式的一个或多个内容 URI 选择所需操作。
+
+</p>
+<p>
+    内容 URI 模式使用通配符匹配内容 URI：
+</p>
+    <ul>
+        <li>
+            <strong><code>*</code></strong>：匹配由任意长度的任何有效字符组成的字符串
+        </li>
+        <li>
+            <strong><code>#</code></strong>：匹配由任意长度的数字字符组成的字符串
+        </li>
+    </ul>
+<p>
+    以设计和编码内容 URI 处理为例，假设一个具有权限 <code>com.example.app.provider</code> 的提供程序能识别以下指向表的内容 URI：
+
+
+</p>
+<ul>
+    <li>
+        <code>content://com.example.app.provider/table1</code>：一个名为 <code>table1</code> 的表
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset1</code>：一个名为
+        <code>dataset1</code> 的表
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset2</code>：一个名为
+        <code>dataset2</code> 的表
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table3</code>：一个名为 <code>table3</code> 的表
+    </li>
+</ul>
+<p>
+    提供程序也能识别追加了行 ID 的内容 URI，例如，<code>content://com.example.app.provider/table3/1</code> 对应由 <code>table3</code> 中 <code>1</code> 标识的行的内容 URI。
+
+
+</p>
+<p>
+    可以使用以下内容 URI 模式：
+</p>
+<dl>
+    <dt>
+        <code>content://com.example.app.provider/*</code>
+    </dt>
+    <dd>
+        匹配提供程序中的任何内容 URI。
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table2/*</code>：
+    </dt>
+    <dd>
+        匹配表 <code>dataset1</code>
+        和表 <code>dataset2</code> 的内容 URI，但不匹配 <code>table1</code> 或
+        <code>table3</code> 的内容 URI。
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table3/#</code>：匹配
+        <code>table3</code> 中单个行的内容 URI，如 <code>content://com.example.app.provider/table3/6</code> 对应由
+        <code>6</code> 标识的行的内容 URI。
+
+    </dt>
+</dl>
+<p>
+    以下代码段说明了 {@link android.content.UriMatcher} 中方法的工作方式。
+    此代码采用不同方式处理整个表的 URI 与单个行的 URI，它为表使用的内容 URI 模式是
+    <code>content://&lt;authority&gt;/&lt;path&gt;</code>，为单个行使用的内容 URI 模式则是
+    <code>content://&lt;authority&gt;/&lt;path&gt;/&lt;id&gt;</code>。
+
+</p>
+<p>
+    方法 {@link android.content.UriMatcher#addURI(String, String, int) addURI()} 会将权限和路径映射到一个整型值。
+方法 {@link android.content.UriMatcher#match(Uri)
+    match()} 会返回 URI 的整型值。<code>switch</code> 语句会在查询整个表与查询单个记录之间进行选择：
+
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider {
+...
+    // Creates a UriMatcher object.
+    private static final UriMatcher sUriMatcher;
+...
+    /*
+     * The calls to addURI() go here, for all of the content URI patterns that the provider
+     * should recognize. For this snippet, only the calls for table 3 are shown.
+     */
+...
+    /*
+     * Sets the integer value for multiple rows in table 3 to 1. Notice that no wildcard is used
+     * in the path
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3", 1);
+
+    /*
+     * Sets the code for a single row to 2. In this case, the "#" wildcard is
+     * used. "content://com.example.app.provider/table3/3" matches, but
+     * "content://com.example.app.provider/table3 doesn't.
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3/#", 2);
+...
+    // Implements ContentProvider.query()
+    public Cursor query(
+        Uri uri,
+        String[] projection,
+        String selection,
+        String[] selectionArgs,
+        String sortOrder) {
+...
+        /*
+         * Choose the table to query and a sort order based on the code returned for the incoming
+         * URI. Here, too, only the statements for table 3 are shown.
+         */
+        switch (sUriMatcher.match(uri)) {
+
+
+            // If the incoming URI was for all of table3
+            case 1:
+
+                if (TextUtils.isEmpty(sortOrder)) sortOrder = "_ID ASC";
+                break;
+
+            // If the incoming URI was for a single row
+            case 2:
+
+                /*
+                 * Because this URI was for a single row, the _ID value part is
+                 * present. Get the last path segment from the URI; this is the _ID value.
+                 * Then, append the value to the WHERE clause for the query
+                 */
+                selection = selection + "_ID = " uri.getLastPathSegment();
+                break;
+
+            default:
+            ...
+                // If the URI is not recognized, you should do some error handling here.
+        }
+        // call the code to actually do the query
+    }
+</pre>
+<p>
+    另一个类 {@link android.content.ContentUris} 会提供一些工具方法，用于处理内容 URI 的 <code>id</code> 部分。
+{@link android.net.Uri} 类和
+    {@link android.net.Uri.Builder} 类包括一些工具方法，用于解析现有
+    {@link android.net.Uri} 对象和构建新对象。
+</p>
+
+<!-- Implementing the ContentProvider class -->
+<h2 id="ContentProvider">实现 ContentProvider 类</h2>
+<p>
+    {@link android.content.ContentProvider} 实例通过处理来自其他应用的请求来管理对结构化数据集的访问。
+所有形式的访问最终都会调用 {@link android.content.ContentResolver}，后者接着调用
+    {@link android.content.ContentProvider} 的具体方法来获取访问权限。
+
+</p>
+<h3 id="RequiredAccess">必需方法</h3>
+<p>
+    抽象类 {@link android.content.ContentProvider} 定义了六个抽象方法，您必须将这些方法作为自己具体子类的一部分加以实现。
+所有这些方法（
+    {@link android.content.ContentProvider#onCreate() onCreate()} 除外）都由一个尝试访问您的内容提供程序的客户端应用调用：
+
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+        query()}
+    </dt>
+    <dd>
+        从您的提供程序检索数据。使用参数选择要查询的表、要返回的行和列以及结果的排序顺序。
+
+        将数据作为 {@link android.database.Cursor} 对象返回。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}
+    </dt>
+    <dd>
+        在您的提供程序中插入一个新行。使用参数选择目标表并获取要使用的列值。
+返回新插入行的内容 URI。
+
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+        update()}
+    </dt>
+    <dd>
+        更新您提供程序中的现有行。使用参数选择要更新的表和行，并获取更新后的列值。
+返回已更新的行数。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+    </dt>
+    <dd>
+        从您的提供程序中删除行。使用参数选择要删除的表和行。
+返回已删除的行数。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        返回内容 URI 对应的 MIME 类型。<a href="#MIMETypes">实现内容提供程序 MIME 类型</a>部分对此方法做了更详尽的描述。
+
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#onCreate() onCreate()}
+    </dt>
+    <dd>
+        初始化您的提供程序。Android 系统会在创建您的提供程序后立即调用此方法。
+请注意，
+        {@link android.content.ContentResolver} 对象尝试访问您的提供程序时，系统才会创建它。
+    </dd>
+</dl>
+<p>
+    请注意，这些方法的签名与同名的
+    {@link android.content.ContentResolver} 方法相同。
+</p>
+<p>
+    您在实现这些方法时应考虑以下事项：
+</p>
+<ul>
+    <li>
+        所有这些方法（{@link android.content.ContentProvider#onCreate() onCreate()}
+        除外）都可由多个线程同时调用，因此它们必须是线程安全方法。如需了解有关多个线程的更多信息，请参阅<a href="{@docRoot}guide/components/processes-and-threads.html">进程和线程</a>主题；
+
+
+
+    </li>
+    <li>
+        避免在 {@link android.content.ContentProvider#onCreate()
+        onCreate()} 中执行长时间操作。将初始化任务推迟到实际需要时进行。
+        <a href="#OnCreate">实现 onCreate() 方法</a>部分对此做了更详尽的描述；
+
+    </li>
+    <li>
+        尽管您必须实现这些方法，但您的代码只需返回要求的数据类型，无需执行任何其他操作。
+例如，您可能想防止其他应用向某些表插入数据。
+要实现此目的，您可以忽略
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} 调用并返回 0。
+
+    </li>
+</ul>
+<h3 id="Query">实现 query() 方法</h3>
+<p>
+    
+    {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()} 方法必须返回 {@link android.database.Cursor} 对象。如果失败，则会引发 {@link java.lang.Exception}。
+如果您使用 SQLite 数据库作为数据存储，则只需返回由 {@link android.database.sqlite.SQLiteDatabase} 类的其中一个
+    <code>query()</code> 方法返回的 {@link android.database.Cursor}。
+
+    如果查询不匹配任何行，您应该返回一个 {@link android.database.Cursor}
+    实例（其 {@link android.database.Cursor#getCount()} 方法返回 0）。
+    只有当查询过程中出现内部错误时，您才应该返回 <code>null</code>。
+</p>
+<p>
+    如果您不使用 SQLite 数据库作为数据存储，请使用 {@link android.database.Cursor} 的其中一个具体子类。
+例如，在 {@link android.database.MatrixCursor} 类实现的游标中，每一行都是一个 {@link java.lang.Object} 数组。
+对于此类，请使用 {@link android.database.MatrixCursor#addRow(Object[]) addRow()} 来添加新行。
+
+</p>
+<p>
+    请记住，Android 系统必须能够跨进程边界传播 {@link java.lang.Exception}。
+Android 可以为以下异常执行此操作，这些异常可能有助于处理查询错误：
+
+</p>
+<ul>
+    <li>
+        {@link java.lang.IllegalArgumentException}（您可以选择在提供程序收到无效的内容 URI 时引发此异常）
+
+    </li>
+    <li>
+        {@link java.lang.NullPointerException}
+    </li>
+</ul>
+<h3 id="Insert">实现 insert() 方法</h3>
+<p>
+    {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} 方法会使用 {@link android.content.ContentValues}
+    参数中的值向相应表中添加新行。
+如果 {@link android.content.ContentValues} 参数中未包含列名称，您可能想在您的提供程序代码或数据库架构中提供其默认值。
+
+
+</p>
+<p>
+    此方法应该返回新行的内容 URI。要想构建此方法，请使用
+    {@link android.content.ContentUris#withAppendedId(Uri, long) withAppendedId()} 向表的内容 URI 追加新行的 <code>_ID</code>（或其他主键）值。
+
+</p>
+<h3 id="Delete">实现 delete() 方法</h3>
+<p>
+    {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} 方法不需要从您的数据存储中实际删除行。
+如果您将同步适配器与提供程序一起使用，应该考虑为已删除的行添加“删除”标志，而不是将行整个移除。
+
+同步适配器可以检查是否存在已删除的行，并将它们从服务器中移除，然后再将它们从提供程序中删除。
+
+</p>
+<h3 id="Update">实现 update() 方法</h3>
+<p>
+    {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+    update()} 方法采用
+    {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} 所使用的相同 {@link android.content.ContentValues} 参数，以及
+{@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} 和
+    {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()} 所使用的相同 <code>selection</code> 和 <code>selectionArgs</code> 参数。
+这样一来，您就可以在这些方法之间重复使用代码。
+</p>
+<h3 id="OnCreate">实现 onCreate() 方法</h3>
+<p>
+    Android 系统会在启动提供程序时调用 {@link android.content.ContentProvider#onCreate()
+    onCreate()}。您只应在此方法中执行运行快速的初始化任务，并将数据库创建和数据加载推迟到提供程序实际收到数据请求时进行。
+
+如果您在
+    {@link android.content.ContentProvider#onCreate() onCreate()} 中执行长时间的任务，则会减慢提供程序的启动速度，
+进而减慢提供程序对其他应用的响应速度。
+
+</p>
+<p>
+    例如，如果您使用 SQLite 数据库，可以在
+    {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} 中创建一个新的 {@link android.database.sqlite.SQLiteOpenHelper} 对象，然后在首次打开数据库时创建 SQL 表。
+
+为简化这一过程，在您首次调用 {@link android.database.sqlite.SQLiteOpenHelper#getWritableDatabase
+    getWritableDatabase()} 时，它会自动调用
+    {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()} 方法。
+
+</p>
+<p>
+    以下两个代码段展示了
+    {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} 与
+    {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()} 之间的交互。第一个代码段是
+    {@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} 的实现：
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider
+
+    /*
+     * Defines a handle to the database helper object. The MainDatabaseHelper class is defined
+     * in a following snippet.
+     */
+    private MainDatabaseHelper mOpenHelper;
+
+    // Defines the database name
+    private static final String DBNAME = "mydb";
+
+    // Holds the database object
+    private SQLiteDatabase db;
+
+    public boolean onCreate() {
+
+        /*
+         * Creates a new helper object. This method always returns quickly.
+         * Notice that the database itself isn't created or opened
+         * until SQLiteOpenHelper.getWritableDatabase is called
+         */
+        mOpenHelper = new MainDatabaseHelper(
+            getContext(),        // the application context
+            DBNAME,              // the name of the database)
+            null,                // uses the default SQLite cursor
+            1                    // the version number
+        );
+
+        return true;
+    }
+
+    ...
+
+    // Implements the provider's insert method
+    public Cursor insert(Uri uri, ContentValues values) {
+        // Insert code here to determine which table to open, handle error-checking, and so forth
+
+        ...
+
+        /*
+         * Gets a writeable database. This will trigger its creation if it doesn't already exist.
+         *
+         */
+        db = mOpenHelper.getWritableDatabase();
+    }
+}
+</pre>
+<p>
+    下一个代码段是
+    {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()} 的实现，其中包括一个帮助程序类：
+</p>
+<pre class="prettyprint">
+...
+// A string that defines the SQL statement for creating a table
+private static final String SQL_CREATE_MAIN = "CREATE TABLE " +
+    "main " +                       // Table's name
+    "(" +                           // The columns in the table
+    " _ID INTEGER PRIMARY KEY, " +
+    " WORD TEXT"
+    " FREQUENCY INTEGER " +
+    " LOCALE TEXT )";
+...
+/**
+ * Helper class that actually creates and manages the provider's underlying data repository.
+ */
+protected static final class MainDatabaseHelper extends SQLiteOpenHelper {
+
+    /*
+     * Instantiates an open helper for the provider's SQLite data repository
+     * Do not do database creation and upgrade here.
+     */
+    MainDatabaseHelper(Context context) {
+        super(context, DBNAME, null, 1);
+    }
+
+    /*
+     * Creates the data repository. This is called when the provider attempts to open the
+     * repository and SQLite reports that it doesn't exist.
+     */
+    public void onCreate(SQLiteDatabase db) {
+
+        // Creates the main table
+        db.execSQL(SQL_CREATE_MAIN);
+    }
+}
+</pre>
+
+
+<!-- Implementing ContentProvider MIME Types -->
+<h2 id="MIMETypes">实现 ContentProvider MIME 类型</h2>
+<p>
+    {@link android.content.ContentProvider} 类具有两个返回 MIME 类型的方法：
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        您必须为任何提供程序实现的必需方法之一。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    </dt>
+    <dd>
+        系统在您的提供程序提供文件时要求实现的方法。
+    </dd>
+</dl>
+<h3 id="TableMIMETypes">表的 MIME 类型</h3>
+<p>
+    {@link android.content.ContentProvider#getType(Uri) getType()} 方法会返回一个 MIME 格式的
+    {@link java.lang.String}，后者描述内容
+    URI 参数返回的数据类型。{@link android.net.Uri} 参数可以是模式，而不是特定 URI；在这种情况下，您应该返回与匹配该模式的内容 URI 关联的数据类型。
+
+
+</p>
+<p>
+    对于文本、HTML 或 JPEG 等常见数据类型，
+    {@link android.content.ContentProvider#getType(Uri) getType()} 应该为该数据返回标准
+    MIME 类型。
+    <a href="http://www.iana.org/assignments/media-types/index.htm">IANA MIME Media Types</a>
+    网站上提供了这些标准类型的完整列表。
+</p>
+<p>
+    对于指向一个或多个表数据行的内容 URI，
+    {@link android.content.ContentProvider#getType(Uri) getType()} 应该以 Android 供应商特有 MIME 格式返回
+     MIME 类型：
+</p>
+<ul>
+    <li>
+        类型部分：<code>vnd</code>
+    </li>
+    <li>
+        子类型部分：
+        <ul>
+            <li>
+    如果 URI 模式用于单个行：<code>android.cursor.<strong>item</strong>/</code>
+            </li>
+            <li>
+    如果 URI 模式用于多个行：<code>android.cursor.<strong>dir</strong>/</code>
+            </li>
+        </ul>
+    </li>
+    <li>
+        提供程序特有部分：<code>vnd.&lt;name&gt;</code>.<code>&lt;type&gt;</code>
+        <p>
+            您提供 <code>&lt;name&gt;</code> 和 <code>&lt;type&gt;</code>。
+            <code>&lt;name&gt;</code> 值应具有全局唯一性，
+            <code>&lt;type&gt;</code> 值应在对应的 URI
+            模式中具有唯一性。适合选择贵公司的名称或您的应用 Android 软件包名称的某个部分作为 <code>&lt;name&gt;</code>。
+适合选择 URI 关联表的标识字符串作为 <code>&lt;type&gt;</code>。
+
+
+        </p>
+
+    </li>
+</ul>
+<p>
+    例如，如果提供程序的权限是
+    <code>com.example.app.provider</code>，并且它公开了一个名为
+    <code>table1</code> 的表，则 <code>table1</code> 中多个行的 MIME 类型是：
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.com.example.provider.table1
+</pre>
+<p>
+    对于 <code>table1</code> 的单个行，MIME 类型是：
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.com.example.provider.table1
+</pre>
+<h3 id="FileMIMETypes">文件的 MIME 类型</h3>
+<p>
+    如果您的提供程序提供文件，请实现 
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}。
+    该方法会为您的提供程序可以为给定内容 URI 返回的文件返回一个 MIME 类型 {@link java.lang.String} 数组。您应该通过 MIME 类型过滤器参数过滤您提供的 MIME 类型，以便只返回客户端想处理的那些 MIME 类型。
+
+
+</p>
+<p>
+    例如，假设提供程序以 <code>.jpg</code>、
+    <code>.png</code> 和 <code>.gif</code> 格式文件形式提供照片图像。
+    如果应用调用 {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()} 时使用了过滤器字符串 <code>image/*</code>（任何是“图像”的内容），则 {@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()} 方法应返回数组：
+
+
+</p>
+<pre>
+{ &quot;image/jpeg&quot;, &quot;image/png&quot;, &quot;image/gif&quot;}
+</pre>
+<p>
+    如果应用只对 <code>.jpg</code> 文件感兴趣，则可以在调用
+    {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+    ContentResolver.getStreamTypes()} 时使用过滤器字符串 <code>*\/jpeg</code>，{@link android.content.ContentProvider#getStreamTypes(Uri, String)
+    ContentProvider.getStreamTypes()} 应返回：
+
+<pre>
+{&quot;image/jpeg&quot;}
+</pre>
+<p>
+    如果您的提供程序未提供过滤器字符串中请求的任何 MIME 类型，则
+    {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    应返回 <code>null</code>。
+</p>
+
+
+<!--  Implementing a Contract Class -->
+<h2 id="ContractClass">实现协定类</h2>
+<p>
+    协定类是一种 <code>public final</code> 类，其中包含对 URI、列名称、MIME 类型以及其他与提供程序有关的元数据的常量定义。
+该类可确保即使 URI、列名称等数据的实际值发生变化，也可以正确访问提供程序，从而在提供程序与其他应用之间建立合同。
+
+
+
+</p>
+<p>
+    协定类对开发者也有帮助，因为其常量通常采用助记名称，因此可以降低开发者为列名称或 URI 使用错误值的可能性。
+由于它是一种类，因此可以包含 Javadoc 文档。
+集成开发环境（如
+    Eclipse）可以根据协定类自动完成常量名称，并为常量显示 Javadoc。
+
+</p>
+<p>
+    开发者无法从您的应用访问协定类的类文件，但他们可以通过您提供的 <code>.jar</code> 文件将其静态编译到其应用内。
+
+</p>
+<p>
+    举例来说，{@link android.provider.ContactsContract} 类及其嵌套类便属于协定类。
+
+</p>
+<h2 id="Permissions">实现内容提供程序权限</h2>
+<p>
+    <a href="{@docRoot}guide/topics/security/security.html">安全与权限</a>主题中详细描述了 Android 系统各个方面的权限和访问。
+
+    <a href="{@docRoot}guide/topics/data/data-storage.html">数据存储</a>主题也描述了各类存储实行中的安全与权限。
+
+    其中的要点简述如下：
+</p>
+<ul>
+    <li>
+        默认情况下，存储在设备内部存储上的数据文件是您的应用和提供程序的私有数据文件；
+
+    </li>
+    <li>
+        您创建的 {@link android.database.sqlite.SQLiteDatabase} 数据库是您的应用和提供程序的私有数据库；
+
+    </li>
+    <li>
+        默认情况下，您保存到外部存储的数据文件是<em>公用</em>并<em>可全局读取</em>的数据文件。
+您无法使用内容提供程序来限制对外部存储内文件的访问，因为其他应用可以使用其他 API 调用来对它们执行读取和写入操作；
+
+    </li>
+    <li>
+        用于在您的设备的内部存储上打开或创建文件或 SQLite 数据库的方法调用可能会为所有其他应用同时授予读取和写入访问权限。
+如果您将内部文件或数据库用作提供程序的存储库，并向其授予“可全局读取”或“可全局写入”访问权限，则您在清单文件中为提供程序设置的权限不会保护您的数据。
+
+
+内部存储中文件和数据库的默认访问权限是“私有”，对于提供程序的存储库，您不应更改此权限。
+
+    </li>
+</ul>
+<p>
+    如果您想使用内容提供程序权限来控制对数据的访问，则应将数据存储在内部文件、SQLite 数据库或“云”中（例如，远程服务器上），而且您应该保持文件和数据库为您的应用所私有。
+
+
+</p>
+<h3>实现权限</h3>
+<p>
+    即使底层数据为私有数据，所有应用仍可从您的提供程序读取数据或向其写入数据，因为在默认情况下，您的提供程序未设置权限。
+要想改变这种情况，请使用属性或
+    <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code> 元素的子元素在您的清单文件中为您的提供程序设置权限。
+您可以设置适用于整个提供程序、特定表、甚至特定记录的权限，或者设置同时适用于这三者的权限。
+
+</p>
+<p>
+    您可以通过清单文件中的一个或多个
+    <code><a href="{@docRoot}guide/topics/manifest/permission-element.html">
+    &lt;permission&gt;</a></code> 元素为您的提供程序定义权限。要使权限对您的提供程序具有唯一性，请为
+    <code><a href="{@docRoot}guide/topics/manifest/permission-element.html#nm">
+    android:name</a></code> 属性使用 Java 风格作用域。
+例如，将读取权限命名为
+    <code>com.example.app.provider.permission.READ_PROVIDER</code>。
+
+</p>
+<p>
+    以下列表描述了提供程序权限的作用域，从适用于整个提供程序的权限开始，然后逐渐细化。
+
+    更细化的权限优先于作用域较大的权限：
+</p>
+<dl>
+    <dt>
+        统一读写提供程序级别权限
+    </dt>
+    <dd>
+        一个同时控制对整个提供程序读取和写入访问的权限，通过
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 元素的 <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code> 属性指定。
+
+    </dd>
+    <dt>
+        单独的读取和写入提供程序级别权限
+    </dt>
+    <dd>
+        针对整个提供程序的读取权限和写入权限。您可以通过
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 元素的 <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+        android:readPermission</a></code> 属性和
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+        android:writePermission</a></code> 属性
+        指定它们。它们优先于
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code> 所需的权限。
+    </dd>
+    <dt>
+        路径级别权限
+    </dt>
+    <dd>
+        针对提供程序中内容 URI 的读取、写入或读取/写入权限。您可以通过
+        <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 元素的 <code><a href="{@docRoot}guide/topics/manifest/path-permission-element.html">
+        &lt;path-permission&gt;</a></code> 子元素指定您想控制的每个 URI。
+
+对于您指定的每个内容 URI，您都可以指定读取/写入权限、读取权限或写入权限，或同时指定所有三种权限。
+读取权限和写入权限优先于读取/写入权限。
+此外，路径级别权限优先于提供程序级别权限。
+
+    </dd>
+    <dt>
+        临时权限
+    </dt>
+    <dd>
+        一种权限级别，即使应用不具备通常需要的权限，该级别也能授予对应用的临时访问权限。
+临时访问功能可减少应用需要在其清单文件中请求的权限数量。
+
+当您启用临时权限时，只有持续访问您的所有数据的应用才需要“永久性”提供程序访问权限。
+
+
+        <p>
+            假设您需要实现电子邮件提供程序和应用的权限，如果您想允许外部图像查看器应用显示您的提供程序中的照片附件，
+
+为了在不请求权限的情况下为图像查看器提供必要的访问权限，可以为照片的内容 URI 设置临时权限。
+对您的电子邮件应用进行相应设计，使应用能够在用户想要显示照片时向图像查看器发送一个 Intent，其中包含照片的内容 URI 以及权限标志。
+
+图像查看器可随后查询您的电子邮件提供程序以检索照片，即使查看器不具备对您提供程序的正常读取权限，也不受影响。
+
+
+        </p>
+        <p>
+            要想启用临时权限，请设置
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 元素的
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> 属性，或者向您的
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 元素添加一个或多个
+            <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> 子元素。如果您使用了临时权限，则每当您从提供程序中移除对某个内容 URI 的支持，并且该内容 URI 关联了临时权限时，都需要调用
+            {@link android.content.Context#revokeUriPermission(Uri, int)
+            Context.revokeUriPermission()}。
+
+        </p>
+        <p>
+            该属性的值决定可访问的提供程序范围。
+            如果该属性设置为 <code>true</code>，则系统会向整个提供程序授予临时权限，该权限将替代您的提供程序级别或路径级别权限所需的任何其他权限。
+
+
+        </p>
+        <p>
+            如果此标志设置为 <code>false</code>，则您必须向
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 元素添加
+            <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> 子元素。每个子元素都指定授予的临时权限所对应的一个或多个内容 URI。
+
+        </p>
+        <p>
+            要向应用授予临时访问权限， Intent 必须包含
+            {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION} 和/或
+            {@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION} 标志。它们通过 {@link android.content.Intent#setFlags(int) setFlags()} 方法进行设置。
+
+        </p>
+        <p>
+            如果 <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> 属性不存在，则假设其为
+            <code>false</code>。
+        </p>
+    </dd>
+</dl>
+
+
+
+<!-- The Provider Element -->
+<h2 id="ProviderElement">&lt;Provider&gt; 元素</h2>
+<p>
+    与 {@link android.app.Activity} 和 {@link android.app.Service} 组件类似，必须使用
+    <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code> 元素在清单文件中为其应用定义
+    {@link android.content.ContentProvider} 的子类。
+Android 系统会从该元素获取以下信息：
+
+<dl>
+    <dt>
+        权限
+        (<a href="{@docRoot}guide/topics/manifest/provider-element.html#auth">{@code
+        android:authorities}</a>)
+    </dt>
+    <dd>
+        用于在系统内标识整个提供程序的符号名称。<a href="#ContentURI">设计内容 URI</a> 部分对此属性做了更详尽的描述。
+
+
+    </dd>
+    <dt>
+        提供程序类名
+        (<code>
+<a href="{@docRoot}guide/topics/manifest/provider-element.html#nm">android:name</a>
+        </code>)
+    </dt>
+    <dd>
+        实现 {@link android.content.ContentProvider} 的类。<a href="#ContentProvider">实现 ContentProvider 类</a>中对此类做了更详尽的描述。
+
+
+    </dd>
+    <dt>
+        权限
+    </dt>
+    <dd>
+        指定其他应用访问提供程序的数据所必须具备权限的属性：
+
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+                android:grantUriPermssions</a></code>：临时权限标志
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+                android:permission</a></code>：统一提供程序范围读取/写入权限
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+                android:readPermission</a></code>：提供程序范围读取权限
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+                android:writePermission</a></code>：提供程序范围写入权限
+            </li>
+        </ul>
+        <p>
+            <a href="#Permissions">实现内容提供程序权限</a>部分对权限及其对应属性做了更详尽的描述。
+
+
+        </p>
+    </dd>
+    <dt>
+        启动和控制属性
+    </dt>
+    <dd>
+        这些属性决定 Android 系统如何以及何时启动提供程序、提供程序的进程特性以及其他运行时设置：
+
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#enabled">
+                android:enabled</a></code>：允许系统启动提供程序的标志。
+            </li>
+              <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#exported">
+                android:exported</a></code>：允许其他应用使用此提供程序的标志。
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#init">
+                android:initOrder</a></code>：此提供程序相对于同一进程中其他提供程序的启动顺序。
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#multi">
+                android:multiProcess</a></code>：允许系统在与调用客户端相同的进程中启动提供程序的标志。
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#proc">
+                android:process</a></code>：应在其中运行提供程序的进程的名称。
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#sync">
+                android:syncable</a></code>：指示提供程序的数据将与服务器上的数据同步的标志。
+
+            </li>
+        </ul>
+        <p>
+            开发指南中针对
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code>
+            元素的主题提供了这些属性的完整资料。
+        </p>
+    </dd>
+    <dt>
+        信息属性
+    </dt>
+    <dd>
+        提供程序的可选图标和标签：
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#icon">
+                android:icon</a></code>：包含提供程序图标的 Drawable 资源。
+                该图标出现在<em>设置</em> &gt; <em>应用</em> &gt; <em>全部</em> 中应用列表内的提供程序标签旁；
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#label">
+                android:label</a></code>：描述提供程序和/或其数据的信息标签。
+该标签出现在<em>设置</em> &gt; <em>应用</em> &gt; <em>全部</em>中的应用列表内。
+
+            </li>
+        </ul>
+        <p>
+            开发指南中针对
+            <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 元素的主题提供了这些属性的完整资料。
+        </p>
+    </dd>
+</dl>
+
+<!-- Intent Access -->
+<h2 id="Intents">Intent 和数据访问</h2>
+<p>
+    应用可以通过 {@link android.content.Intent} 间接访问内容提供程序。
+    应用不会调用 {@link android.content.ContentResolver} 或
+    {@link android.content.ContentProvider} 的任何方法，而会发送一个启动 Activity 的 Intent，该 Activity 通常是提供程序自身应用的一部分。
+目标 Activity 负责检索和显示其 UI 中的数据。视 Intent 中的操作而定，目标 Activity 可能还会提示用户对提供程序的数据进行修改。
+
+
+    Intent 可能还包含目标 Activity 在 UI 中显示的“extra”数据；用户随后可以选择更改此数据，然后使用它来修改提供程序中的数据。
+
+
+</p>
+<p>
+
+</p>
+<p>
+    您可能想使用 Intent 访问权限来帮助确保数据完整性。您的提供程序可能依赖于根据严格定义的业务逻辑插入、更新和删除数据。
+如果是这种情况，则允许其他应用直接修改您的数据可能会导致无效的数据。
+
+如果您想让开发者使用 Intent 访问权限，请务必为其提供详尽的参考资料。
+    向他们解释为什么使用自身应用 UI 的 Intent 访问比尝试通过代码修改数据更好。
+
+</p>
+<p>
+    处理想要修改您的提供程序数据的传入 Intent 与处理其他 Intent 没有区别。
+您可以通过阅读<a href="{@docRoot}guide/components/intents-filters.html"> Intent 和 Intent 过滤器</a>主题了解有关 Intent 用法的更多信息。
+
+</p>
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/providers/content-providers.jd b/docs/html-intl/intl/zh-cn/guide/topics/providers/content-providers.jd
new file mode 100644
index 0000000..80c778a
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/providers/content-providers.jd
@@ -0,0 +1,108 @@
+page.title=内容提供程序
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<!-- In this document -->
+<h2>主题</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+            内容提供程序基础知识</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+            创建内容提供程序</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/calendar-provider.html">日历提供程序</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/contacts-provider.html">联系人提供程序</a>
+    </li>
+</ol>
+
+    <!-- Related Samples -->
+<h2>相关示例</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/ContactManager/index.html">
+            联系人管理器</a>应用
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        “游标（联系人）”
+        </a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        “游标（电话）”</a>
+        </li>
+        <li>
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+            示例同步适配器</a>
+        </li>
+    </ol>
+</div>
+</div>
+<p>
+    内容提供程序管理对结构化数据集的访问。它们封装数据，并提供用于定义数据安全性的机制。
+内容提供程序是连接一个进程中的数据与另一个进程中运行的代码的标准界面。
+
+</p>
+<p>
+    如果您想要访问内容提供程序中的数据，可以将应用的 {@link android.content.Context} 中的 {@link android.content.ContentResolver} 对象用作客户端来与提供程序通信。
+
+
+    {@link android.content.ContentResolver} 对象会与提供程序对象（即实现 {@link android.content.ContentProvider} 的类实例）通信。
+提供程序对象从客户端接收数据请求，执行请求的操作并返回结果。
+
+
+</p>
+<p>
+    如果您不打算与其他应用共享数据，则无需开发自己的提供程序。
+不过，您需要通过自己的提供程序在您自己的应用中提供自定义搜索建议。
+如果您想将复杂的数据或文件从您的应用复制并粘贴到其他应用中，也需要创建您自己的提供程序。
+
+</p>
+<p>
+    Android 本身包括的内容提供程序可管理音频、视频、图像和个人联系信息等数据。
+<code><a href="{@docRoot}reference/android/provider/package-summary.html">android.provider</a>
+    </code> 软件包参考文档中列出了部分提供程序。
+
+任何 Android 应用都可以访问这些提供程序，但会受到某些限制。
+
+</p><p>
+    以下主题对内容提供程序做了更详尽的描述：
+</p>
+<dl>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+            内容提供程序基础知识</a></strong>
+    </dt>
+    <dd>
+        如何访问内容提供程序中以表形式组织的数据。
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+            创建内容提供程序</a></strong>
+    </dt>
+    <dd>
+        如何创建您自己的内容提供程序。
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+        日历提供程序</a></strong>
+    </dt>
+    <dd>
+        如何访问作为 Android 平台一部分的日历提供程序。
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/contacts-provider.html">
+        联系人提供程序</a></strong>
+    </dt>
+    <dd>
+        如何访问作为 Android 平台一部分的联系人提供程序。
+    </dd>
+</dl>
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/providers/document-provider.jd b/docs/html-intl/intl/zh-cn/guide/topics/providers/document-provider.jd
new file mode 100644
index 0000000..fd36e29
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/providers/document-provider.jd
@@ -0,0 +1,916 @@
+page.title=存储访问框架
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文内容
+<a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
+        <span class="more">显示详细信息</span>
+        <span class="less" style="display:none">显示精简信息</span></a></h2>
+<ol id="toc44" class="hide-nested">
+    <li>
+        <a href="#overview">概览</a>
+    </li>
+    <li>
+        <a href="#flow">控制流</a>
+    </li>
+    <li>
+        <a href="#client">编写客户端应用</a>
+        <ol>
+        <li><a href="#search">搜索文档</a></li>
+        <li><a href="#process">处理结果</a></li>
+        <li><a href="#metadata">检查文档元数据</a></li>
+        <li><a href="#open">打开文档</a></li>
+        <li><a href="#create">创建新文档</a></li>
+        <li><a href="#delete">删除文档</a></li>
+        <li><a href="#edit">编辑文档</a></li>
+        <li><a href="#permissions">保留权限</a></li>
+        </ol>
+    </li>
+    <li><a href="#custom">编写自定义文档提供程序</a>
+        <ol>
+        <li><a href="#manifest">清单文件</a></li>
+        <li><a href="#contract">协定类</a></li>
+        <li><a href="#subclass">为 DocumentsProvider 创建子类</a></li>
+        <li><a href="#security">安全性</a></li>
+        </ol>
+    </li>
+
+</ol>
+<h2>关键类</h2>
+<ol>
+    <li>{@link android.provider.DocumentsProvider}</li>
+    <li>{@link android.provider.DocumentsContract}</li>
+</ol>
+
+<h2>视频</h2>
+
+<ol>
+    <li><a href="http://www.youtube.com/watch?v=zxHVeXbK1P4">
+DevBytes：Android 4.4 存储访问框架：提供程序</a></li>
+     <li><a href="http://www.youtube.com/watch?v=UFj9AEz0DHQ">
+DevBytes：Android 4.4 存储访问框架：客户端</a></li>
+</ol>
+
+
+<h2>代码示例</h2>
+
+<ol>
+    <li><a href="{@docRoot}samples/StorageProvider/index.html">
+存储提供程序</a></li>
+     <li><a href="{@docRoot}samples/StorageClient/index.html">
+StorageClient</a></li>
+</ol>
+
+<h2>另请参阅</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+内容提供程序基础知识
+</a>
+    </li>
+</ol>
+
+</div>
+</div>
+
+
+<p>Android 4.4（API 19 级）引入了存储访问框架 (SAF)。SAF
+让用户能够在其所有首选文档存储提供程序中方便地浏览并打开文档、图像以及其他文件。
+用户可以通过易用的标准 UI，以统一方式在所有应用和提供程序中浏览文件和访问最近使用的文件。
+</p>
+
+<p>云存储服务或本地存储服务可以通过实现封装其服务的
+{@link android.provider.DocumentsProvider} 参与此生态系统。只需几行代码，便可将需要访问提供程序文档的客户端应用与
+SAF
+集成。</p>
+
+<p>SAF 包括以下内容：</p>
+
+<ul>
+<li><strong>文档提供程序</strong>&mdash;一种内容提供程序，允许存储服务（如 Google
+云端硬盘）显示其管理的文件。文档提供程序作为
+{@link android.provider.DocumentsProvider}
+类的子类实现。文档提供程序的架构基于传统文件层次结构，但其实际数据存储方式由您决定。Android
+平台包括若干内置文档提供程序，如 Downloads、Images 和 Videos；
+
+</li>
+
+<li><strong>客户端应用</strong>&mdash;一种自定义应用，它调用
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 和/或
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT}  Intent 并接收文档提供程序返回的文件；
+</li>
+
+<li><strong>选取器</strong>&mdash;一种系统
+UI，允许用户访问所有满足客户端应用搜索条件的文档提供程序内的文档。</li>
+</ul>
+
+<p>SAF 提供的部分功能如下：</p>
+<ul>
+<li>允许用户浏览所有文档提供程序而不仅仅是单个应用中的内容；</li>
+<li>让您的应用获得对文档提供程序所拥有文档的长期、持久性访问权限。
+用户可以通过此访问权限添加、编辑、保存和删除提供程序上的文件；
+</li>
+<li>支持多个用户帐户和临时根目录，如只有在插入驱动器后才会出现的 USB
+存储提供程序。 </li>
+</ul>
+
+<h2 id ="overview">概览</h2>
+
+<p>SAF 围绕的内容提供程序是
+{@link android.provider.DocumentsProvider} 类的一个子类。在<em>文档提供程序</em>内，数据结构采用传统的文件层次结构：
+</p>
+<p><img src="{@docRoot}images/providers/storage_datamodel.png" alt="data model" /></p>
+<p class="img-caption"><strong>图 1. </strong>文档提供程序数据模型。根目录指向单个文档，后者随即启动整个结构树的扇出。
+</p>
+
+<p>请注意以下事项：</p>
+<ul>
+
+<li>每个文档提供程序都会报告一个或多个作为探索文档结构树起点的“根目录”。每个根目录都有一个唯一的
+{@link android.provider.DocumentsContract.Root#COLUMN_ROOT_ID}，并且指向表示该根目录下内容的文档（目录）。根目录采用动态设计，以支持多个帐户、临时
+USB
+存储设备或用户登录/注销等用例；
+
+
+</li>
+
+<li>每个根目录下都有一个文档。该文档指向 1 至 <em>N</em>
+个文档，而其中每个文档又可指向 1 至 <em>N</em> 个文档； </li>
+
+<li>每个存储后端都会通过使用唯一的
+{@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} 引用各个文件和目录来显示它们。文档
+ID
+必须具有唯一性，一旦发放便不得更改，因为它们用于所有设备重启过程中的永久性
+URI 授权；</li>
+
+
+<li>文档可以是可打开的文件（具有特定 MIME
+类型）或包含附加文档的目录（具有
+{@link android.provider.DocumentsContract.Document#MIME_TYPE_DIR} MIME 类型）；</li>
+
+<li>每个文档都可以具有不同的功能，如
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS COLUMN_FLAGS} 所述。例如，{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_WRITE}、{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE}
+和
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_THUMBNAIL}。多个目录中可以包含相同的
+{@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID}。
+
+</li>
+</ul>
+
+<h2 id="flow">控制流</h2>
+<p>如前文所述，文档提供程序数据模型基于传统文件层次结构。
+不过，只要可以通过
+{@link android.provider.DocumentsProvider} API
+访问数据，您实际上可以按照自己喜好的方式存储数据。例如，您可以使用基于标记的云存储来存储数据。</p>
+
+<p>图 2 中的示例展示的是照片应用如何利用 SAF
+访问存储的数据：</p>
+<p><img src="{@docRoot}images/providers/storage_dataflow.png" alt="app" /></p>
+
+<p class="img-caption"><strong>图 2. </strong>存储访问框架流</p>
+
+<p>请注意以下事项：</p>
+<ul>
+
+<li>在 SAF
+中，提供程序和客户端并不直接交互。客户端请求与文件交互（即读取、编辑、创建或删除文件）的权限；
+</li>
+
+<li>交互在应用（在本示例中为照片应用）触发 Intent 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 或 {@link android.content.Intent#ACTION_CREATE_DOCUMENT} 后开始。Intent 可能包括进一步细化条件的过滤器&mdash;例如，“为我提供所有 MIME
+类型为‘图像’的可打开文件”；
+</li>
+
+<li>Intent 触发后，系统选取器将检索每个已注册的提供程序，并向用户显示匹配的内容根目录；
+</li>
+
+<li>选取器会为用户提供一个标准的文档访问界面，但底层文档提供程序可能与其差异很大。
+例如，图 2
+显示了一个 Google 云端硬盘提供程序、一个 USB 提供程序和一个云提供程序。</li>
+</ul>
+
+<p>图 3 显示了一个选取器，一位搜索图像的用户在其中选择了一个
+Google 云端硬盘帐户：</p>
+
+<p><img src="{@docRoot}images/providers/storage_picker.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>图 3. </strong>选取器</p>
+
+<p>当用户选择 Google
+云端硬盘时，系统会显示图像，如图 4 所示。从这时起，用户就可以通过提供程序和客户端应用支持的任何方式与它们进行交互。
+
+
+<p><img src="{@docRoot}images/providers/storage_photos.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>图 4. </strong>图像</p>
+
+<h2 id="client">编写客户端应用</h2>
+
+<p>对于 Android 4.3
+及更低版本，如果您想让应用从其他应用中检索文件，它必须调用 {@link android.content.Intent#ACTION_PICK}
+或 {@link android.content.Intent#ACTION_GET_CONTENT} 等 Intent。然后，用户必须选择一个要从中选取文件的应用，并且所选应用必须提供一个用户界面，以便用户浏览和选取可用文件。
+
+ </p>
+
+<p>对于 Android 4.4 及更高版本，您还可以选择使用
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+ Intent，后者会显示一个由系统控制的选取器
+UI，用户可以通过它浏览其他应用提供的所有文件。用户只需通过这一个 UI
+便可从任何受支持的应用中选取文件。</p>
+
+<p>{@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+并非设计用于替代 {@link android.content.Intent#ACTION_GET_CONTENT}。应使用的 Intent 取决于应用的需要：
+</p>
+
+<ul>
+<li>如果您只想让应用读取/导入数据，请使用
+{@link android.content.Intent#ACTION_GET_CONTENT}。使用此方法时，应用会导入数据（如图像文件）的副本；
+</li>
+
+<li>如果您想让应用获得对文档提供程序所拥有文档的长期、持久性访问权限，请使用
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT}。
+例如，允许用户编辑存储在文档提供程序中的图像的照片编辑应用。
+ </li>
+
+</ul>
+
+
+<p>本节描述如何编写基于
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 和
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT} Intent 的客户端应用。</p>
+
+
+<h3 id="search">搜索文档</h3>
+
+<p>
+以下代码段使用
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+来搜索包含图像文件的文档提供程序：</p>
+
+<pre>private static final int READ_REQUEST_CODE = 42;
+...
+/**
+ * Fires an intent to spin up the &quot;file chooser&quot; UI and select an image.
+ */
+public void performFileSearch() {
+
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's file
+    // browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones)
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only images, using the image MIME data type.
+    // If one wanted to search for ogg vorbis files, the type would be &quot;audio/ogg&quot;.
+    // To search for all documents available via installed storage providers,
+    // it would be &quot;*/*&quot;.
+    intent.setType(&quot;image/*&quot;);
+
+    startActivityForResult(intent, READ_REQUEST_CODE);
+}</pre>
+
+<p>请注意以下事项：</p>
+<ul>
+<li>当应用触发 {@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+ Intent 时，后者会启动一个选取器来显示所有匹配的文档提供程序</li>
+
+<li>在 Intent 中添加类别 {@link android.content.Intent#CATEGORY_OPENABLE}
+可对结果进行过滤，以仅显示可以打开的文档（如图像文件）</li>
+
+<li>语句 {@code intent.setType("image/*")} 可做进一步过滤，以仅显示
+MIME 数据类型为图像的文档</li>
+</ul>
+
+<h3 id="results">处理结果</h3>
+
+<p>用户在选取器中选择文档后，系统就会调用
+{@link android.app.Activity#onActivityResult onActivityResult()}。指向所选文档的 URI
+包含在 {@code resultData}
+参数中。使用 {@link android.content.Intent#getData getData()}
+提取 URI。获得 URI 后，即可使用它来检索用户想要的文档。例如：
+</p>
+
+<pre>&#64;Override
+public void onActivityResult(int requestCode, int resultCode,
+        Intent resultData) {
+
+    // The ACTION_OPEN_DOCUMENT intent was sent with the request code
+    // READ_REQUEST_CODE. If the request code seen here doesn't match, it's the
+    // response to some other intent, and the code below shouldn't run at all.
+
+    if (requestCode == READ_REQUEST_CODE && resultCode == Activity.RESULT_OK) {
+        // The document selected by the user won't be returned in the intent.
+        // Instead, a URI to that document will be contained in the return intent
+        // provided to this method as a parameter.
+        // Pull that URI using resultData.getData().
+        Uri uri = null;
+        if (resultData != null) {
+            uri = resultData.getData();
+            Log.i(TAG, "Uri: " + uri.toString());
+            showImage(uri);
+        }
+    }
+}
+</pre>
+
+<h3 id="metadata">检查文档元数据</h3>
+
+<p>获得文档的 URI 后，即可获得对其元数据的访问权限。以下代码段用于获取 URI
+所指定文档的元数据并将其记入日志：</p>
+
+<pre>public void dumpImageMetaData(Uri uri) {
+
+    // The query, since it only applies to a single document, will only return
+    // one row. There's no need to filter, sort, or select fields, since we want
+    // all fields for one document.
+    Cursor cursor = getActivity().getContentResolver()
+            .query(uri, null, null, null, null, null);
+
+    try {
+    // moveToFirst() returns false if the cursor has 0 rows.  Very handy for
+    // &quot;if there's anything to look at, look at it&quot; conditionals.
+        if (cursor != null &amp;&amp; cursor.moveToFirst()) {
+
+            // Note it's called &quot;Display Name&quot;.  This is
+            // provider-specific, and might not necessarily be the file name.
+            String displayName = cursor.getString(
+                    cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
+            Log.i(TAG, &quot;Display Name: &quot; + displayName);
+
+            int sizeIndex = cursor.getColumnIndex(OpenableColumns.SIZE);
+            // If the size is unknown, the value stored is null.  But since an
+            // int can't be null in Java, the behavior is implementation-specific,
+            // which is just a fancy term for &quot;unpredictable&quot;.  So as
+            // a rule, check if it's null before assigning to an int.  This will
+            // happen often:  The storage API allows for remote files, whose
+            // size might not be locally known.
+            String size = null;
+            if (!cursor.isNull(sizeIndex)) {
+                // Technically the column stores an int, but cursor.getString()
+                // will do the conversion automatically.
+                size = cursor.getString(sizeIndex);
+            } else {
+                size = &quot;Unknown&quot;;
+            }
+            Log.i(TAG, &quot;Size: &quot; + size);
+        }
+    } finally {
+        cursor.close();
+    }
+}
+</pre>
+
+<h3 id="open-client">打开文档</h3>
+
+<p>获得文档的 URI
+后，即可打开文档或对其执行任何其他您想要执行的操作。</p>
+
+<h4>位图</h4>
+
+<p>以下示例展示了如何打开 {@link android.graphics.Bitmap}：</p>
+
+<pre>private Bitmap getBitmapFromUri(Uri uri) throws IOException {
+    ParcelFileDescriptor parcelFileDescriptor =
+            getContentResolver().openFileDescriptor(uri, "r");
+    FileDescriptor fileDescriptor = parcelFileDescriptor.getFileDescriptor();
+    Bitmap image = BitmapFactory.decodeFileDescriptor(fileDescriptor);
+    parcelFileDescriptor.close();
+    return image;
+}
+</pre>
+
+<p>请注意，您不应在 UI 线程上执行此操作。请使用
+{@link android.os.AsyncTask} 在后台执行此操作。打开位图后，即可在
+{@link android.widget.ImageView} 中显示它。
+</p>
+
+<h4>获取 InputStream</h4>
+
+<p>以下示例展示了如何从 URI 中获取
+{@link java.io.InputStream}。在此代码段中，系统将文件行读取到一个字符串中：</p>
+
+<pre>private String readTextFromUri(Uri uri) throws IOException {
+    InputStream inputStream = getContentResolver().openInputStream(uri);
+    BufferedReader reader = new BufferedReader(new InputStreamReader(
+            inputStream));
+    StringBuilder stringBuilder = new StringBuilder();
+    String line;
+    while ((line = reader.readLine()) != null) {
+        stringBuilder.append(line);
+    }
+    fileInputStream.close();
+    parcelFileDescriptor.close();
+    return stringBuilder.toString();
+}
+</pre>
+
+<h3 id="create">创建新文档</h3>
+
+<p>您的应用可以使用
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT}
+ Intent 在文档提供程序中创建新文档。要想创建文件，请为您的 Intent 提供一个 MIME
+类型和文件名，然后通过唯一的请求代码启动它。系统会为您执行其余操作：</p>
+
+
+<pre>
+// Here are some examples of how you might call this method.
+// The first parameter is the MIME type, and the second parameter is the name
+// of the file you are creating:
+//
+// createFile("text/plain", "foobar.txt");
+// createFile("image/png", "mypicture.png");
+
+// Unique request code.
+private static final int WRITE_REQUEST_CODE = 43;
+...
+private void createFile(String mimeType, String fileName) {
+    Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as
+    // a file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Create a file with the requested MIME type.
+    intent.setType(mimeType);
+    intent.putExtra(Intent.EXTRA_TITLE, fileName);
+    startActivityForResult(intent, WRITE_REQUEST_CODE);
+}
+</pre>
+
+<p>创建新文档后，即可在
+{@link android.app.Activity#onActivityResult onActivityResult()} 中获取其
+URI，以便继续向其写入内容。</p>
+
+<h3 id="delete">删除文档</h3>
+
+<p>如果您获得了文档的
+URI，并且文档的
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS Document.COLUMN_FLAGS}
+包含
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE SUPPORTS_DELETE}，便可以删除该文档。例如：</p>
+
+<pre>
+DocumentsContract.deleteDocument(getContentResolver(), uri);
+</pre>
+
+<h3 id="edit">编辑文档</h3>
+
+<p>您可以使用 SAF
+就地编辑文本文档。以下代码段会触发
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT}  Intent 
+并使用类别 {@link android.content.Intent#CATEGORY_OPENABLE}
+以仅显示可以打开的文档。它会进一步过滤以仅显示文本文件：</p>
+
+<pre>
+private static final int EDIT_REQUEST_CODE = 44;
+/**
+ * Open a file for writing and append some text to it.
+ */
+ private void editDocument() {
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's
+    // file browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only text files.
+    intent.setType(&quot;text/plain&quot;);
+
+    startActivityForResult(intent, EDIT_REQUEST_CODE);
+}
+</pre>
+
+<p>接下来，您可以从
+{@link android.app.Activity#onActivityResult onActivityResult()}（请参阅<a href="#results">处理结果</a>）调用代码以执行编辑。以下代码段可从
+{@link android.content.ContentResolver} 获取
+{@link java.io.FileOutputStream}。默认情况下，它使用“写入”模式。最佳做法是请求获得所需的最低限度访问权限，因此如果您只需要写入权限，就不要请求获得读取/写入权限。
+
+</p>
+
+<pre>private void alterDocument(Uri uri) {
+    try {
+        ParcelFileDescriptor pfd = getActivity().getContentResolver().
+                openFileDescriptor(uri, "w");
+        FileOutputStream fileOutputStream =
+                new FileOutputStream(pfd.getFileDescriptor());
+        fileOutputStream.write(("Overwritten by MyCloud at " +
+                System.currentTimeMillis() + "\n").getBytes());
+        // Let the document provider know you're done by closing the stream.
+        fileOutputStream.close();
+        pfd.close();
+    } catch (FileNotFoundException e) {
+        e.printStackTrace();
+    } catch (IOException e) {
+        e.printStackTrace();
+    }
+}</pre>
+
+<h3 id="permissions">保留权限</h3>
+
+<p>当您的应用打开文件进行读取或写入时，系统会为您的应用提供针对该文件的
+URI 授权。该授权将一直持续到用户设备重启时。但假定您的应用是图像编辑应用，而且您希望用户能够直接从应用中访问他们编辑的最后
+5
+张图像。如果用户的设备已经重启，您就需要将用户转回系统选取器以查找这些文件，这显然不是理想的做法。
+
+</p>
+
+<p>为防止出现这种情况，您可以保留系统为您的应用授予的权限。您的应用实际上是“获取”了系统提供的持久
+URI
+授权。这使用户能够通过您的应用持续访问文件，即使设备已重启也不受影响：
+</p>
+
+
+<pre>final int takeFlags = intent.getFlags()
+            &amp; (Intent.FLAG_GRANT_READ_URI_PERMISSION
+            | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
+// Check for the freshest data.
+getContentResolver().takePersistableUriPermission(uri, takeFlags);</pre>
+
+<p>还有最后一个步骤。您可能已经保存了应用最近访问的
+URI，但它们可能不再有效&mdash;另一个应用可能已删除或修改了文档。
+因此，您应该始终调用
+{@code getContentResolver().takePersistableUriPermission()}
+以检查有无最新数据。</p>
+
+<h2 id="custom">编写自定义文档提供程序</h2>
+
+<p>
+如果您要开发为文件提供存储服务（如云保存服务）的应用，可以通过编写自定义文档提供程序，通过
+SAF
+提供您的文件。本节描述如何执行此操作。
+</p>
+
+
+<h3 id="manifest">清单文件</h3>
+
+<p>要想实现自定义文档提供程序，请将以下内容添加到您的应用的清单文件：
+</p>
+<ul>
+
+<li>一个 API 19 级或更高级别的目标；</li>
+
+<li>一个声明自定义存储提供程序的
+<code>&lt;provider&gt;</code> 元素； </li>
+
+<li>提供程序的名称（即其类名），包括软件包名称。例如：<code>com.example.android.storageprovider.MyCloudProvider</code>；
+</li>
+
+<li>权限的名称，即您的软件包名称（在本例中为
+<code>com.example.android.storageprovider</code>）加内容提供程序的类型
+(<code>documents</code>)。例如，{@code com.example.android.storageprovider.documents}；</li>
+
+<li>属性 <code>android:exported</code> 设置为
+<code>&quot;true&quot;</code>。您必须导出提供程序，以便其他应用可以看到；</li>
+
+<li>属性 <code>android:grantUriPermissions</code> 设置为
+<code>&quot;true&quot;</code>。此设置允许系统向其他应用授予对提供程序中内容的访问权限。
+如需查看有关保留对特定文档授权的阐述，请参阅<a href="#permissions">保留权限</a>；
+</li>
+
+<li>{@code MANAGE_DOCUMENTS} 权限。默认情况下，提供程序对所有人可用。
+添加此权限将限定您的提供程序只能供系统使用。此限制具有重要的安全意义；
+</li>
+
+<li>{@code android:enabled}
+属性设置为在资源文件中定义的一个布尔值。此属性的用途是，在运行 Android 4.3
+或更低版本的设备上禁用提供程序。例如，{@code android:enabled="@bool/atLeastKitKat"}。除了在清单文件中加入此属性外，您还需要执行以下操作；
+
+<ul>
+<li>在 {@code res/values/} 下的 {@code bool.xml}
+资源文件中，添加以下行 <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>在 {@code res/values-v19/} 下的 {@code bool.xml}
+资源文件中，添加以下行 <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;true&lt;/bool&gt;</pre></li>
+</ul></li>
+
+<li>一个包括
+{@code android.content.action.DOCUMENTS_PROVIDER} 操作的 Intent 
+过滤器，以便在系统搜索提供程序时让您的提供程序出现在选取器中。</li>
+
+</ul>
+<p>以下是从一个包括提供程序的示例清单文件中摘录的内容：</p>
+
+<pre>&lt;manifest... &gt;
+    ...
+    &lt;uses-sdk
+        android:minSdkVersion=&quot;19&quot;
+        android:targetSdkVersion=&quot;19&quot; /&gt;
+        ....
+        &lt;provider
+            android:name=&quot;com.example.android.storageprovider.MyCloudProvider&quot;
+            android:authorities=&quot;com.example.android.storageprovider.documents&quot;
+            android:grantUriPermissions=&quot;true&quot;
+            android:exported=&quot;true&quot;
+            android:permission=&quot;android.permission.MANAGE_DOCUMENTS&quot;
+            android:enabled=&quot;&#64;bool/atLeastKitKat&quot;&gt;
+            &lt;intent-filter&gt;
+                &lt;action android:name=&quot;android.content.action.DOCUMENTS_PROVIDER&quot; /&gt;
+            &lt;/intent-filter&gt;
+        &lt;/provider&gt;
+    &lt;/application&gt;
+
+&lt;/manifest&gt;</pre>
+
+<h4 id="43">支持运行 Android 4.3 及更低版本的设备</h4>
+
+<p>{@link android.content.Intent#ACTION_OPEN_DOCUMENT}
+ Intent 仅可用于运行
+Android 4.4 及更高版本的设备。如果您想让应用支持 {@link android.content.Intent#ACTION_GET_CONTENT}
+以适应运行 Android 4.3
+及更低版本的设备，则应在您的清单文件中为运行 Android 4.4
+或更高版本的设备禁用 {@link android.content.Intent#ACTION_GET_CONTENT}  Intent 
+过滤器。应将文档提供程序和
+{@link android.content.Intent#ACTION_GET_CONTENT}
+视为具有互斥性。如果您同时支持这两者，您的应用将在系统选取器
+UI
+中出现两次，提供两种不同的方式来访问您存储的数据。这会给用户造成困惑。</p>
+
+<p>建议按照以下步骤为运行 Android 4.4 版或更高版本的设备禁用
+{@link android.content.Intent#ACTION_GET_CONTENT}  Intent 
+过滤器：</p>
+
+<ol>
+<li>在 {@code res/values/} 下的 {@code bool.xml}
+资源文件中，添加以下行 <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;true&lt;/bool&gt;</pre></li>
+
+<li>在 {@code res/values-v19/} 下的 {@code bool.xml}
+资源文件中，添加以下行 <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>添加一个<a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">Activity别名</a>，为
+4.4 版（API 19
+级）或更高版本禁用 {@link android.content.Intent#ACTION_GET_CONTENT}  Intent 
+过滤器。例如：
+
+<pre>
+&lt;!-- This activity alias is added so that GET_CONTENT intent-filter
+     can be disabled for builds on API level 19 and higher. --&gt;
+&lt;activity-alias android:name=&quot;com.android.example.app.MyPicker&quot;
+        android:targetActivity=&quot;com.android.example.app.MyActivity&quot;
+        ...
+        android:enabled=&quot;@bool/atMostJellyBeanMR2&quot;&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name=&quot;android.intent.action.GET_CONTENT&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.OPENABLE&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.DEFAULT&quot; /&gt;
+        &lt;data android:mimeType=&quot;image/*&quot; /&gt;
+        &lt;data android:mimeType=&quot;video/*&quot; /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity-alias&gt;
+</pre>
+</li>
+</ol>
+<h3 id="contract">协定类</h3>
+
+<p>通常，当您编写自定义内容提供程序时，其中一项任务是实现协定类，如<a href="{@docRoot}guide/topics/providers/content-provider-creating.html#ContractClass">内容提供程序</a>开发者指南中所述。
+
+
+协定类是一种 {@code public final} 类，它包含对
+URI、列名称、MIME
+类型以及其他与提供程序有关的元数据的常量定义。SAF
+会为您提供这些协定类，因此您无需自行编写：
+</p>
+
+<ul>
+   <li>{@link android.provider.DocumentsContract.Document}</li>
+   <li>{@link android.provider.DocumentsContract.Root}</li>
+</ul>
+
+<p>例如，当系统在您的文档提供程序中查询文档或根目录时，您可能会在游标中返回以下列：
+</p>
+
+<pre>private static final String[] DEFAULT_ROOT_PROJECTION =
+        new String[]{Root.COLUMN_ROOT_ID, Root.COLUMN_MIME_TYPES,
+        Root.COLUMN_FLAGS, Root.COLUMN_ICON, Root.COLUMN_TITLE,
+        Root.COLUMN_SUMMARY, Root.COLUMN_DOCUMENT_ID,
+        Root.COLUMN_AVAILABLE_BYTES,};
+private static final String[] DEFAULT_DOCUMENT_PROJECTION = new
+        String[]{Document.COLUMN_DOCUMENT_ID, Document.COLUMN_MIME_TYPE,
+        Document.COLUMN_DISPLAY_NAME, Document.COLUMN_LAST_MODIFIED,
+        Document.COLUMN_FLAGS, Document.COLUMN_SIZE,};
+</pre>
+
+<h3 id="subclass">为 DocumentsProvider 创建子类</h3>
+
+<p>编写自定义文档提供程序的下一步是为抽象类
+{@link android.provider.DocumentsProvider} 创建子类。您至少需要实现以下方法：
+</p>
+
+<ul>
+<li>{@link android.provider.DocumentsProvider#queryRoots queryRoots()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryDocument queryDocument()}</li>
+
+<li>{@link android.provider.DocumentsProvider#openDocument openDocument()}</li>
+</ul>
+
+<p>这些只是您需要严格实现的方法，但您可能还想实现许多其他方法。
+详情请参阅
+{@link android.provider.DocumentsProvider}。</p>
+
+<h4 id="queryRoots">实现 queryRoots</h4>
+
+<p>您实现的
+{@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} 必须使用在
+{@link android.provider.DocumentsContract.Root} 中定义的列返回一个指向文档提供程序所有根目录的 {@link android.database.Cursor}。</p>
+
+<p>在以下代码段中，{@code projection}
+参数表示调用方想要返回的特定字段。代码段会创建一个新游标，并为其添加一行&mdash;一个根目录，如
+Downloads 或 Images
+等顶层目录。大多数提供程序只有一个根目录。有时您可能有多个根目录，例如，当您具有多个用户帐户时。
+在这种情况下，只需再为游标添加一行。
+</p>
+
+<pre>
+&#64;Override
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+
+    // Create a cursor with either the requested fields, or the default
+    // projection if "projection" is null.
+    final MatrixCursor result =
+            new MatrixCursor(resolveRootProjection(projection));
+
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+    }
+
+    // It's possible to have multiple roots (e.g. for multiple accounts in the
+    // same app) -- just add multiple cursor rows.
+    // Construct one row for a root called &quot;MyCloud&quot;.
+    final MatrixCursor.RowBuilder row = result.newRow();
+    row.add(Root.COLUMN_ROOT_ID, ROOT);
+    row.add(Root.COLUMN_SUMMARY, getContext().getString(R.string.root_summary));
+
+    // FLAG_SUPPORTS_CREATE means at least one directory under the root supports
+    // creating documents. FLAG_SUPPORTS_RECENTS means your application's most
+    // recently used documents will show up in the &quot;Recents&quot; category.
+    // FLAG_SUPPORTS_SEARCH allows users to search all documents the application
+    // shares.
+    row.add(Root.COLUMN_FLAGS, Root.FLAG_SUPPORTS_CREATE |
+            Root.FLAG_SUPPORTS_RECENTS |
+            Root.FLAG_SUPPORTS_SEARCH);
+
+    // COLUMN_TITLE is the root title (e.g. Gallery, Drive).
+    row.add(Root.COLUMN_TITLE, getContext().getString(R.string.title));
+
+    // This document id cannot change once it's shared.
+    row.add(Root.COLUMN_DOCUMENT_ID, getDocIdForFile(mBaseDir));
+
+    // The child MIME types are used to filter the roots and only present to the
+    //  user roots that contain the desired type somewhere in their file hierarchy.
+    row.add(Root.COLUMN_MIME_TYPES, getChildMimeTypes(mBaseDir));
+    row.add(Root.COLUMN_AVAILABLE_BYTES, mBaseDir.getFreeSpace());
+    row.add(Root.COLUMN_ICON, R.drawable.ic_launcher);
+
+    return result;
+}</pre>
+
+<h4 id="queryChildDocuments">实现 queryChildDocuments</h4>
+
+<p>您实现的
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()} 必须使用在
+{@link android.provider.DocumentsContract.Document}
+中定义的列返回一个指向指定目录中所有文件的
+{@link android.database.Cursor}。</p>
+
+<p>当您在选取器 UI
+中选择应用时，系统会调用此方法。它会获取根目录下某个目录内的子文档。可以在文件层次结构的任何级别调用此方法，并非只能从根目录调用。
+以下代码段可创建一个包含所请求列的新游标，然后向游标添加父目录中每个直接子目录的相关信息。子目录可以是图像、另一个目录乃至任何文件：
+
+
+</p>
+
+<pre>&#64;Override
+public Cursor queryChildDocuments(String parentDocumentId, String[] projection,
+                              String sortOrder) throws FileNotFoundException {
+
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    final File parent = getFileForDocId(parentDocumentId);
+    for (File file : parent.listFiles()) {
+        // Adds the file's display name, MIME type, size, and so on.
+        includeFile(result, null, file);
+    }
+    return result;
+}
+</pre>
+
+<h4 id="queryDocument">实现 queryDocument</h4>
+
+<p>您实现的
+{@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+必须使用在 {@link android.provider.DocumentsContract.Document} 中定义的列返回一个指向指定文件的
+{@link android.database.Cursor}。
+</p>
+
+<p>除了特定文件的信息外，{@link android.provider.DocumentsProvider#queryDocument queryDocument()}
+方法返回的信息与
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}
+中传递的信息相同：</p>
+
+
+<pre>&#64;Override
+public Cursor queryDocument(String documentId, String[] projection) throws
+        FileNotFoundException {
+
+    // Create a cursor with the requested projection, or the default projection.
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    includeFile(result, documentId, null);
+    return result;
+}
+</pre>
+
+<h4 id="openDocument">实现 queryDocument</h4>
+
+<p>您必须实现 {@link android.provider.DocumentsProvider#openDocument
+openDocument()} 以返回表示指定文件的
+{@link android.os.ParcelFileDescriptor}。其他应用可以使用返回的 {@link android.os.ParcelFileDescriptor}
+来流式传输数据。用户选择了文件，并且客户端应用通过调用
+{@link android.content.ContentResolver#openFileDescriptor openFileDescriptor()}
+来请求对文件的访问权限，系统便会调用此方法。例如：
+</p>
+
+<pre>&#64;Override
+public ParcelFileDescriptor openDocument(final String documentId,
+                                         final String mode,
+                                         CancellationSignal signal) throws
+        FileNotFoundException {
+    Log.v(TAG, &quot;openDocument, mode: &quot; + mode);
+    // It's OK to do network operations in this method to download the document,
+    // as long as you periodically check the CancellationSignal. If you have an
+    // extremely large file to transfer from the network, a better solution may
+    // be pipes or sockets (see ParcelFileDescriptor for helper methods).
+
+    final File file = getFileForDocId(documentId);
+
+    final boolean isWrite = (mode.indexOf('w') != -1);
+    if(isWrite) {
+        // Attach a close listener if the document is opened in write mode.
+        try {
+            Handler handler = new Handler(getContext().getMainLooper());
+            return ParcelFileDescriptor.open(file, accessMode, handler,
+                        new ParcelFileDescriptor.OnCloseListener() {
+                &#64;Override
+                public void onClose(IOException e) {
+
+                    // Update the file with the cloud server. The client is done
+                    // writing.
+                    Log.i(TAG, &quot;A file with id &quot; +
+                    documentId + &quot; has been closed!
+                    Time to &quot; +
+                    &quot;update the server.&quot;);
+                }
+
+            });
+        } catch (IOException e) {
+            throw new FileNotFoundException(&quot;Failed to open document with id &quot;
+            + documentId + &quot; and mode &quot; + mode);
+        }
+    } else {
+        return ParcelFileDescriptor.open(file, accessMode);
+    }
+}
+</pre>
+
+<h3 id="security">安全性</h3>
+
+<p>假设您的文档提供程序是受密码保护的云存储服务，并且您想在开始共享用户的文件之前确保其已登录。如果用户未登录，您的应用应该执行哪些操作呢？
+
+解决方案是在您实现的
+{@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} 中返回零个根目录。也就是空的根目录游标：</p>
+
+<pre>
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+...
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+}
+</pre>
+
+<p>另一个步骤是调用
+{@code getContentResolver().notifyChange()}。还记得 {@link android.provider.DocumentsContract} 吗？我们将使用它来创建此
+URI。以下代码段会在每次用户的登录状态发生变化时指示系统查询文档提供程序的根目录。
+如果用户未登录，则调用
+{@link android.provider.DocumentsProvider#queryRoots queryRoots()}
+会返回一个空游标，如上文所示。这可以确保只有在用户登录提供程序后其中的文档才可用。
+</p>
+
+<pre>private void onLoginButtonClick() {
+    loginOrLogout();
+    getContentResolver().notifyChange(DocumentsContract
+            .buildRootsUri(AUTHORITY), null);
+}
+</pre>
\ No newline at end of file
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/resources/accessing-resources.jd b/docs/html-intl/intl/zh-cn/guide/topics/resources/accessing-resources.jd
new file mode 100644
index 0000000..e8e583a
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/resources/accessing-resources.jd
@@ -0,0 +1,337 @@
+page.title=访问资源
+parent.title=应用资源
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>内容快览</h2>
+  <ul>
+    <li>可以使用
+{@code R.drawable.myimage} 等来自 {@code R.java} 的整型数在代码中引用资源</li>
+    <li>可以使用 {@code
+&#64;drawable/myimage} 等特殊 XML 语法在资源中引用资源</li>
+    <li>您还可以通过
+{@link android.content.res.Resources} 中的方法访问您的应用资源</li>
+  </ul>
+
+  <h2>关键类</h2>
+  <ol>
+    <li>{@link android.content.res.Resources}</li>
+  </ol>
+
+  <h2>本文内容</h2>
+  <ol>
+    <li><a href="#ResourcesFromCode">在代码中访问资源</a></li>
+    <li><a href="#ResourcesFromXml">在 XML 中访问资源</a>
+      <ol>
+        <li><a href="#ReferencesToThemeAttributes">引用样式属性</a></li>
+      </ol>
+    </li>
+    <li><a href="#PlatformResources">访问平台资源</a></li>
+  </ol>
+
+  <h2>另请参阅</h2>
+  <ol>
+    <li><a href="providing-resources.html">提供资源</a></li>
+    <li><a href="available-resources.html">资源类型</a></li>
+  </ol>
+</div>
+</div>
+
+
+
+
+<p>您在应用中提供资源后（<a href="providing-resources.html">提供资源</a>中对此做了阐述），可通过引用其资源 ID 来应用该资源。所有资源 ID 都在您项目的 {@code R} 类中定义，后者由 {@code aapt} 工具自动生成。
+
+</p>
+
+<p>编译应用时，{@code aapt} 会生成 {@code R} 类，其中包含您的 {@code
+res/} 目录中所有资源的资源 ID。
+每个资源类型都有对应的 {@code R}
+子类（例如，{@code R.drawable}
+对应于所有 Drawable 资源），而该类型的每个资源都有对应的静态整型数（例如，{@code R.drawable.icon}）。这个整型数就是可用来检索资源的资源
+ID。</p>
+
+<p>尽管资源 ID 是在 {@code R} 类中指定的，但您应该永远都不需要在其中查找资源
+ID。资源 ID 始终由以下部分组成：</p>
+<ul>
+  <li><em>资源类型</em>：每个资源都被分到一个“类型”组中，例如 {@code
+string}、{@code drawable} 和 {@code layout}。如需了解有关不同类型的详细信息，请参阅<a href="available-resources.html">资源类型</a>。
+  </li>
+  <li><em>资源名称</em>，它是不包括扩展名的文件名；或是 XML
+{@code android:name}
+属性中的值，如果资源是简单值的话（例如字符串）。</li>
+</ul>
+
+<p>访问资源的方法有两种：</p>
+<ul>
+  <li><strong>在代码中</strong>：使用来自 {@code R}
+类的某个子类的静态整型数，例如：
+    <pre class="classic no-pretty-print">R.string.hello</pre>
+    <p>{@code string} 是资源类型，{@code hello} 是资源名称。当您提供此格式的资源 ID 时，有许多
+Android API 可以访问您的资源。请参阅<a href="#ResourcesFromCode">在代码中访问资源</a>。
+</p>
+  </li>
+  <li><strong>在 XML 中</strong>：使用同样与您
+{@code R} 类中定义的资源 ID 对应的特殊 XML 语法，例如：
+    <pre class="classic no-pretty-print">&#64;string/hello</pre>
+    <p>{@code string} 是资源类型，{@code hello} 是资源名称。您可以在 XML
+资源中任何应该存在您在资源中所提供值的地方使用此语法。请参阅<a href="#ResourcesFromXml">在 XML 中访问资源</a>。</p>
+  </li>
+</ul>
+
+
+
+<h2 id="ResourcesFromCode">在代码中访问资源 </h2>
+
+<p>您可以通过以方法参数的形式传递资源 ID，在代码中使用资源。例如，您可以设置一个
+{@link android.widget.ImageView}，以利用 {@link android.widget.ImageView#setImageResource(int) setImageResource()} 使用 {@code res/drawable/myimage.png}
+资源：</p>
+<pre>
+ImageView imageView = (ImageView) findViewById(R.id.myimageview);
+imageView.setImageResource(<strong>R.drawable.myimage</strong>);
+</pre>
+
+<p>您还可以利用 {@link
+android.content.res.Resources} 中的方法检索个别资源，您可以通过 {@link android.content.Context#getResources()}
+获得资源实例。</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>访问原始文件</h2>
+
+<p>尽管并不常见，但您的确有可能需要访问原始文件和目录。如果确有需要，则将您的文件保存在
+{@code res/} 中不起作用，因为从 {@code res/}
+读取资源的唯一方法是使用资源 ID。您可以改为将资源保存在
+{@code assets/} 目录中。</p>
+<p>保存在 {@code assets/} 目录中的文件“绝对没有”<em></em>资源
+ID，因此您无法通过 {@code R} 类或在 XML 中引用它们。您可以改为采用类似普通文件系统的方式查询
+{@code assets/} 目录中的文件，并利用
+{@link android.content.res.AssetManager} 读取原始数据。</p>
+<p>不过，如需的只是读取原始数据（例如视频文件或音频文件）的能力，则可将文件保存在 {@code res/raw/}
+目录中，并利用 {@link
+android.content.res.Resources#openRawResource(int) openRawResource()} 读取字节流。</p>
+
+</div>
+</div>
+
+
+<h3>语法</h3>
+
+<p>以下是在代码中引用资源的语法：</p>
+
+<pre class="classic no-pretty-print">
+[<em>&lt;package_name&gt;</em>.]R.<em>&lt;resource_type&gt;</em>.<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li><em>{@code &lt;package_name&gt;}</em>
+是资源所在包的名称（如果引用的资源来自您自己的资源包，则不需要）。</li>
+  <li><em>{@code &lt;resource_type&gt;}</em> 是资源类型的 {@code R} 子类。</li>
+  <li><em>{@code &lt;resource_name&gt;}</em>
+是不带扩展名的资源文件名，或 XML 元素中的 {@code android:name}
+属性值（如果资源是简单值）。</li>
+</ul>
+<p>如需了解有关各资源类型及其引用方法的详细信息，请参阅<a href="available-resources.html">资源类型</a>。
+</p>
+
+
+<h3>用例</h3>
+
+<p>有许多方法接受资源 ID 参数，您可以利用 {@link android.content.res.Resources}
+中的方法检索资源。您可以通过 {@link android.content.Context#getResources
+Context.getResources()} 获得 {@link
+android.content.res.Resources} 的实例。</p>
+
+
+<p>以下是一些在代码中访问资源的示例：</p>
+
+<pre>
+// Load a background for the current screen from a drawable resource
+{@link android.app.Activity#getWindow()}.{@link
+android.view.Window#setBackgroundDrawableResource(int)
+setBackgroundDrawableResource}(<strong>R.drawable.my_background_image</strong>) ;
+
+// Set the Activity title by getting a string from the Resources object, because
+//  this method requires a CharSequence rather than a resource ID
+{@link android.app.Activity#getWindow()}.{@link android.view.Window#setTitle(CharSequence)
+setTitle}(getResources().{@link android.content.res.Resources#getText(int)
+getText}(<strong>R.string.main_title</strong>));
+
+// Load a custom layout for the current screen
+{@link android.app.Activity#setContentView(int)
+setContentView}(<strong>R.layout.main_screen</strong>);
+
+// Set a slide in animation by getting an Animation from the Resources object
+mFlipper.{@link android.widget.ViewAnimator#setInAnimation(Animation)
+setInAnimation}(AnimationUtils.loadAnimation(this,
+        <strong>R.anim.hyperspace_in</strong>));
+
+// Set the text on a TextView object using a resource ID
+TextView msgTextView = (TextView) findViewById(<strong>R.id.msg</strong>);
+msgTextView.{@link android.widget.TextView#setText(int)
+setText}(<strong>R.string.hello_message</strong>);
+</pre>
+
+
+<p class="caution"><strong>注意：</strong>切勿手动修改 {@code
+R.java} 文件 &mdash; 它是在编译您的项目时由 {@code aapt}
+工具生成的。您下次编译时所有更改都会被替代。</p>
+
+
+
+<h2 id="ResourcesFromXml">在 XML 中访问资源</h2>
+
+<p>您可以利用对现有资源的引用为某些 XML
+属性和元素定义值。创建布局文件时，为给您的小工具提供字符串和图像，您经常要这样做。
+</p>
+
+<p>例如，如果您为布局添加一个
+{@link android.widget.Button}，应该为按钮文本使用<a href="string-resource.html">字符串资源</a>：</p>
+
+<pre>
+&lt;Button
+    android:layout_width="fill_parent"
+    android:layout_height="wrap_content"
+    android:text="<strong>@string/submit</strong>" /&gt;
+</pre>
+
+
+<h3>语法</h3>
+
+<p>以下是在 XML 资源中引用资源的语法：</p>
+
+<pre class="classic no-pretty-print">
+&#64;[<em>&lt;package_name&gt;</em>:]<em>&lt;resource_type&gt;</em>/<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li>{@code &lt;package_name&gt;}
+是资源所在包的名称（如果引用的资源来自同一包，则不需要）</li>
+  <li>{@code &lt;resource_type&gt;} 是资源类型的
+{@code R} 子类</li>
+  <li>{@code &lt;resource_name&gt;}
+是不带扩展名的资源文件名，或 XML 元素中的 {@code android:name}
+属性值（如果资源是简单值）。</li>
+</ul>
+
+<p>如需了解有关各资源类型及其引用方法的详细信息，请参阅<a href="available-resources.html">资源类型</a>。
+</p>
+
+
+<h3>用例</h3>
+
+<p>在某些情况下，您必须使用资源作为 XML
+中的值（例如，对小工具应用可绘制图像），但您也可以在 XML 中任何接受简单值的地方使用资源。例如，如果您具有以下资源文件，其中包括一个<a href="more-resources.html#Color">颜色资源</a>和一个<a href="string-resource.html">字符串资源</a>：
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+   &lt;color name="opaque_red">#f00&lt;/color>
+   &lt;string name="hello">Hello!&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>您可以在以下布局文件中使用这些资源来设置文本颜色和文本字符串：
+</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;color/opaque_red</strong>&quot;
+    android:text=&quot;<strong>&#64;string/hello</strong>&quot; /&gt;
+</pre>
+
+<p>在此情况下，您无需在资源引用中指定包名称，因为资源来自您自己的资源包。
+要引用系统资源，您需要加入包名称。
+例如：</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;android:color/secondary_text_dark</strong>&quot;
+    android:text=&quot;&#64;string/hello&quot; /&gt;
+</pre>
+
+<p class="note"><strong>注：</strong>您应该始终使用字符串
+资源，以便将您的应用本地化为其他语言。如需了解有关创建备用资源（例如本地化字符串）的信息，请参阅<a href="providing-resources.html#AlternativeResources">提供备用资源</a>。
+
+
+如需查看将您的应用本地化为其他语言的完整指南，请参阅<a href="localization.html">本地化</a>。
+</p>
+
+<p>您甚至可以在 XML 中使用资源创建别名。例如，您可以创建一个 Drawable 资源，将其作为另一个 Drawable 资源的别名：
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/other_drawable" />
+</pre>
+
+<p>这听起来多余，但对使用备用资源可能很有帮助。阅读更多关于<a href="providing-resources.html#AliasResources">创建别名资源</a>的内容。
+</p>
+
+
+
+<h3 id="ReferencesToThemeAttributes">引用样式属性</h3>
+
+<p>您可以通过样式属性资源在当前应用的风格主题中引用某个属性的值。
+通过引用样式属性，您可以不采用为 UI
+元素提供硬编码值这种方式，而是通过为 UI
+元素设置样式，使其匹配当前风格主题提供的标准变型来定制这些元素的外观。引用样式属性的实质作用是，“在当前风格主题中使用此属性定义的样式”。
+</p>
+
+<p>要引用样式属性，名称语法几乎与普通资源格式完全相同，只不过将 at 符号 ({@code @}) 改为问号 ({@code ?})，资源类型部分为可选项。
+
+例如：</p>
+
+<pre class="classic">
+?[<em>&lt;package_name&gt;</em>:][<em>&lt;resource_type&gt;</em>/]<em>&lt;resource_name&gt;</em>
+</pre>
+
+<p>例如，您可以通过以下代码引用一个属性，将文本颜色设置为与系统风格主题的“主要”文本颜色匹配：
+</p>
+
+<pre>
+&lt;EditText id=&quot;text&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;wrap_content&quot;
+    android:textColor=&quot;<strong>?android:textColorSecondary</strong>&quot;
+    android:text=&quot;&#64;string/hello_world&quot; /&gt;
+</pre>
+
+<p>在以上代码中，{@code android:textColor}
+属性表示当前风格主题中某个样式属性的名称。Android 现在会使用应用于 {@code android:textColorSecondary}
+样式属性的值作为 {@code android:textColor} 在这个小工具中的值。由于系统资源工具知道此环境中肯定存在某个属性资源，因此您无需显式声明类型（类型应为
+<code>?android:attr/textColorSecondary</code>）&mdash; 您可以将
+{@code attr}
+类型排除在外。</p>
+
+
+
+
+<h2 id="PlatformResources">访问平台资源</h2>
+
+<p>Android 包含许多标准资源，例如样式、风格主题和布局。要访问这些资源，请通过
+<code>android</code>
+包名称限定您的资源引用。例如，您可以将 Android 提供的布局资源用于
+{@link android.widget.ListAdapter} 中的列表项：</p>
+
+<pre>
+{@link android.app.ListActivity#setListAdapter(ListAdapter)
+setListAdapter}(new {@link
+android.widget.ArrayAdapter}&lt;String&gt;(this, <strong>android.R.layout.simple_list_item_1</strong>, myarray));
+</pre>
+
+<p>在上例中，{@link android.R.layout#simple_list_item_1}
+是平台为 {@link android.widget.ListView} 中的项目定义的布局资源。您可以使用它，而不必自行创建列表项布局。
+如需了解详细信息，请参阅<a href="{@docRoot}guide/topics/ui/layout/listview.html">列表视图</a>开发指南。
+</p>
+
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/resources/overview.jd b/docs/html-intl/intl/zh-cn/guide/topics/resources/overview.jd
new file mode 100644
index 0000000..21dbe6f
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/resources/overview.jd
@@ -0,0 +1,103 @@
+page.title=资源概览
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>主题</h2>
+  <ol>
+    <li><a href="providing-resources.html">提供资源</a></li>
+    <li><a href="accessing-resources.html">访问资源</a></li>
+    <li><a href="runtime-changes.html">处理运行时变更</a></li>
+    <li><a href="localization.html">本地化</a></li>
+  </ol>
+
+  <h2>参考文档</h2>
+  <ol>
+    <li><a href="available-resources.html">资源类型</a></li>
+  </ol>
+</div>
+</div>
+
+
+<p>您应该始终外部化资源，例如图像和应用代码中的字符串，这样有利于您单独维护这些资源。
+此外，通过外部化资源，您还可以提供支持特定设备配置（例如，不同的语言或屏幕尺寸）的备用资源，随着采用
+Android
+ 技术且配置各异的设备越来越多，这些资源的重要性也日益增加。
+为了提供与不同配置的兼容性，您必须使用各种按类型和配置对资源进行分组的子目录，对项目
+{@code res/}
+目录中的资源加以组织。
+</p>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram1.png" height="167" alt="" />
+<p class="img-caption">
+<strong>图 1. </strong>两种不同的设备，均使用默认布局（应用不提供备用布局）。
+</p>
+</div>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>图 2. </strong>两种不同的设备，分别使用针对不同屏幕尺寸提供的不同布局。
+</p>
+</div>
+
+<p>对于任意类型的资源，您均可以为应用指定默认资源和多个备用资源：
+<em></em><em></em></p>
+<ul>
+  <li>默认资源系指无论设备配置如何，或者在没有备用资源与当前配置相匹配时，均应使用的资源。
+
+</li>
+  <li>备用资源系指设计用于特定配置的资源。
+要指明某组资源适用于特定配置，请将相应的配置限定符追加到目录名称。
+</li>
+</ul>
+
+<p>例如，尽管默认 UI
+布局保存在
+{@code res/layout/} 目录中，但是您可以指定在屏幕处于横向时要使用的不同布局，方法是将其保存在 {@code res/layout-land/}
+目录中。Android
+可以通过将设备的当前配置与资源目录名称进行匹配，自动应用合适的资源。</p>
+
+<p>图 1
+说明了在没有备用资源可用时，系统如何为两种不同的设备应用相同布局。图 2
+显示的是同一应用针对大屏幕添加了备用布局资源。</p>
+
+<p>以下文档提供了有关如何组织应用资源、如何指定备用资源以及如何在应用中访问这些资源等的完整指南：
+</p>
+
+<dl>
+  <dt><strong><a href="providing-resources.html">提供资源</a></strong></dt>
+  <dd>您可在应用中提供何种资源、可将这些资源保存在何处以及如何为特定设备配置创建备用资源。
+</dd>
+  <dt><strong><a href="accessing-resources.html">访问资源</a></strong></dt>
+  <dd>如何通过从应用代码或其他
+XML 资源中引用来使用所提供的资源</dd>
+  <dt><strong><a href="runtime-changes.html">处理运行时变更</a></strong></dt>
+  <dd>如何管理在 Activity 运行时发生的配置变更。</dd>
+  <dt><strong><a href="localization.html">本地化</a></strong></dt>
+  <dd>从点到面地指导您使用备用资源本地化应用。尽管这只是备用资源的一种具体运用，但是这对于赢得更多用户非常重要。
+
+</dd>
+  <dt><strong><a href="available-resources.html">资源类型</a></strong></dt>
+  <dd>有关您可提供的各种资源类型的参考文档，其中描述了这些资源的
+XML 元素、属性和语法。例如，此参考文档向您展示了如何为应用菜单、可绘制对象、动画等创建资源。
+</dd>
+</dl>
+
+<!--
+<h2>Raw Assets</h2>
+
+<p>An alternative to saving files in {@code res/} is to save files in the {@code
+assets/} directory. This should only be necessary if you need direct access to original files and
+directories by name. Files saved in the {@code assets/} directory will not be given a resource
+ID, so you can't reference them through the {@code R} class or from XML resources. Instead, you can
+query data in the {@code assets/} directory like an ordinary file system, search through the
+directory and
+read raw data using {@link android.content.res.AssetManager}. For example, this can be more useful
+when dealing with textures for a game. However, if you only need to read raw data from a file
+(such as a video or audio file), then you should save files into the {@code res/raw/} directory and
+then read a stream of bytes using {@link android.content.res.Resources#openRawResource(int)}. This
+is uncommon, but if you need direct access to original files in {@code assets/}, refer to the {@link
+android.content.res.AssetManager} documentation.</p>
+-->
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/resources/providing-resources.jd b/docs/html-intl/intl/zh-cn/guide/topics/resources/providing-resources.jd
new file mode 100644
index 0000000..ea46d86
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/resources/providing-resources.jd
@@ -0,0 +1,1094 @@
+page.title=提供资源
+parent.title=应用资源
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>内容快览</h2>
+  <ul>
+    <li>不同类型的资源属于 {@code res/} 的不同子目录</li>
+    <li>备用资源提供特定于配置的资源文件</li>
+    <li>始终包含默认资源，使您的应用不依赖于特定的设备配置
+</li>
+  </ul>
+  <h2>本文内容</h2>
+  <ol>
+    <li><a href="#ResourceTypes">分组资源类型</a></li>
+    <li><a href="#AlternativeResources">提供备用资源</a>
+      <ol>
+        <li><a href="#QualifierRules">限定符命名规则</a></li>
+        <li><a href="#AliasResources">创建别名资源</a></li>
+      </ol>
+    </li>
+    <li><a href="#Compatibility">利用资源提供最佳设备兼容性</a></li>
+    <li><a href="#BestMatch">Android 如何找到最匹配资源</a></li>
+  </ol>
+
+  <h2>另请参阅</h2>
+  <ol>
+    <li><a href="accessing-resources.html">访问资源</a></li>
+    <li><a href="available-resources.html">资源类型</a></li>
+    <li><a href="{@docRoot}guide/practices/screens_support.html">支持多个屏幕</a>
+</li>
+  </ol>
+</div>
+</div>
+
+<p>您应该始终外部化应用资源，例如图像和代码中的字符串，这样有利于您单独维护这些资源。
+此外，您还应该为特定设备配置提供备用资源，方法是将它们分组到专门命名的资源目录中。
+在运行时，Android
+会根据当前配置使用适当的资源。例如，您可能需要根据屏幕尺寸提供不同的
+UI
+布局，或者根据语言设置提供不同的字符串。</p>
+
+<p>外部化应用资源后，即可使用在项目 {@code R} 类中生成的资源
+ID 访问这些资源。有关如何在应用中使用资源，我们将在<a href="accessing-resources.html">访问资源</a>中讨论。
+
+本文档介绍如何对 Android
+项目中的资源进行分组，以及如何为特定的设备配置提供备用资源。</p>
+
+
+<h2 id="ResourceTypes">分组资源类型</h2>
+
+<p>您应将各种资源放入项目
+{@code res/} 目录的特定子目录下。例如，以下是一个简单项目的文件层次结构：</p>
+
+<pre class="classic no-pretty-print">
+MyProject/
+    src/  <span style="color:black">
+        MyActivity.java  </span>
+    res/
+        drawable/  <span style="color:black">
+            graphic.png  </span>
+        layout/  <span style="color:black">
+            main.xml
+            info.xml</span>
+        mipmap/  <span style="color:black">
+            icon.png </span>
+        values/  <span style="color:black">
+            strings.xml  </span>
+</pre>
+
+<p>正如您在此示例中所看到的那样，{@code res/} 目录包含所有资源（在子目录下）：一个图像资源、两个布局资源、启动器图标的
+{@code mipmap/}
+目录以及一个字符串资源文件。资源目录名称非常重要，将在表 1
+中进行介绍。</p>
+
+<p class="note"><strong>注：</strong>如需了解有关使用 mipmap
+文件夹的详细信息，请参阅<a href="{@docRoot}tools/projects/index.html#mipmap">管理项目概览</a>。</p>
+
+<p class="table-caption" id="table1"><strong>表 1. </strong>项目 {@code res/}
+目录内支持的资源目录</p>
+
+<table>
+  <tr>
+    <th scope="col">目录</th>
+    <th scope="col">资源类型</th>
+  </tr>
+
+  <tr>
+    <td><code>animator/</code></td>
+    <td>用于定义<a href="{@docRoot}guide/topics/graphics/prop-animation.html">属性动画</a>的 XML
+文件。</td>
+  </tr>
+
+  <tr>
+    <td><code>anim/</code></td>
+    <td>定义<a href="{@docRoot}guide/topics/graphics/view-animation.html#tween-animation">渐变动画</a>的 XML
+文件。（属性动画也可以保存在此目录中，但是为了区分这两种类型，属性动画首选
+{@code animator/}
+目录。）</td>
+  </tr>
+
+  <tr>
+    <td><code>color/</code></td>
+    <td>用于定义颜色状态列表的 XML 文件。请参阅<a href="color-list-resource.html">颜色状态列表资源</a>
+</td>
+  </tr>
+
+  <tr>
+    <td><code>drawable/</code></td>
+
+    <td><p>位图文件（{@code .png}、{@code .9.png}、{@code .jpg}、{@code .gif}）或编译为以下 Drawable 资源子类型的
+XML 文件：</p>
+      <ul>
+        <li>位图文件</li>
+        <li>九宫格（可调整大小的位图）</li>
+        <li>状态列表</li>
+        <li>形状</li>
+        <li>动画 Drawable</li>
+        <li>其他 Drawable</li>
+      </ul>
+      <p>请参阅 <a href="drawable-resource.html">Drawable 资源</a>。</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>mipmap/</code></td>
+    <td>适用于不同启动器图标密度的 Drawable 文件。如需了解有关使用 {@code mipmap/} 文件夹管理启动器图标的详细信息，请参阅<a href="{@docRoot}tools/project/index.html#mipmap">管理项目概览</a>。
+
+</td>
+  </tr>
+
+  <tr>
+    <td><code>layout/</code></td>
+    <td>用于定义用户界面布局的 XML 文件。
+        请参阅<a href="layout-resource.html">布局资源</a>。</td>
+  </tr>
+
+  <tr>
+    <td><code>menu/</code></td>
+    <td>用于定义应用菜单（如选项菜单、上下文菜单或子菜单）的 XML
+文件。请参阅<a href="menu-resource.html">菜单资源</a>。</td>
+  </tr>
+
+  <tr>
+    <td><code>raw/</code></td>
+    <td><p>要以原始形式保存的任意文件。要使用原始
+{@link java.io.InputStream} 打开这些资源，请使用资源 ID（即 {@code R.raw.<em>filename</em>}）调用 {@link android.content.res.Resources#openRawResource(int)
+Resources.openRawResource()}。</p>
+      <p>但是，如需访问原始文件名和文件层次结构，则可以考虑将某些资源保存在
+{@code
+assets/} 目录下（而不是 {@code res/raw/}）。{@code assets/} 中的文件没有资源 ID，因此您只能使用 {@link android.content.res.AssetManager} 读取这些文件。
+</p></td>
+  </tr>
+
+  <tr>
+    <td><code>values/</code></td>
+    <td><p>包含字符串、整型数和颜色等简单值的 XML 文件。</p>
+      <p>其他 {@code res/} 子目录中的 XML
+资源文件是根据
+XML
+文件名定义单个资源，而目录中的 {@code values/} 文件可描述多个资源。对于此目录中的文件，{@code &lt;resources&gt;} 元素的每个子元素均定义一个资源。例如，{@code &lt;string&gt;} 元素创建
+{@code R.string} 资源，{@code &lt;color&gt;} 元素创建 {@code R.color}
+资源。</p>
+      <p>由于每个资源均用其自己的 XML
+元素定义，因此您可以根据自己的需要命名文件，并将不同的资源类型放在一个文件中。但是，为了清晰起见，您可能需要将独特的资源类型放在不同的文件中。
+例如，对于可在此目录中创建的资源，下面给出了相应的文件名约定：
+</p>
+      <ul>
+        <li>arrays.xml，用于资源数组（<a href="more-resources.html#TypedArray">类型化数组</a>）。</li>
+        <li>colors.xml：<a href="more-resources.html#Color">颜色值</a>。</li>
+        <li>dimens.xml：<a href="more-resources.html#Dimension">尺寸值</a>。</li>
+        <li>strings.xml：<a href="string-resource.html">字符串值</a>。
+</li>
+        <li>styles.xml：<a href="style-resource.html">样式</a>。</li>
+      </ul>
+      <p>请参阅<a href="string-resource.html">字符串资源</a>、<a href="style-resource.html">样式资源</a>和<a href="more-resources.html">更多资源类型</a>。
+
+</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>xml/</code></td>
+    <td>可以在运行时通过调用 {@link
+android.content.res.Resources#getXml(int) Resources.getXML()} 读取的任意 XML 文件。各种 XML
+配置文件（如<a href="{@docRoot}guide/topics/search/searchable-config.html">可搜索配置</a>）都必须保存在此处。
+<!-- or preferences configuration. --></td>
+  </tr>
+</table>
+
+<p class="caution"><strong>注意：</strong>切勿将资源文件直接保存在
+{@code res/} 目录内，这会导致出现编译错误。</p>
+
+<p>如需了解有关某些资源类型的详细信息，请参阅<a href="available-resources.html">资源类型</a>文档。</p>
+
+<p>保存在表 1
+中定义的子目录下的资源是“默认”资源。即，这些资源定义应用的默认设计和内容。但是，采用
+Android
+技术的不同设备类型可能需要不同类型的资源。例如，如果设备的屏幕尺寸大于标准屏幕，则应提供不同的布局资源，以充分利用额外的屏幕空间。
+或者，如果设备的语言设置不同，则应提供不同的字符串资源，以转换用户界面中的文本。
+
+要为不同的设备配置提供这些不同资源，除了默认资源以外，您还需要提供备用资源。
+
+</p>
+
+
+<h2 id="AlternativeResources">提供备用资源</h2>
+
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>图 1. </strong>两种不同的设备，均使用不同的布局资源。</p>
+</div>
+
+<p>几乎每个应用都应提供备用资源以支持特定的设备配置。
+例如，对于不同的屏幕密度和语言，您应分别包括备用 Drawable 资源和备用字符串资源。
+在运行时，Android
+会检测当前设备配置并为应用加载合适的资源。
+</p>
+
+<p>为一组资源指定特定于配置的备用资源：</p>
+<ol>
+  <li>在 {@code res/} 中创建一个以 {@code
+<em>&lt;resources_name&gt;</em>-<em>&lt;config_qualifier&gt;</em>} 形式命名的新目录。
+    <ul>
+      <li><em>{@code &lt;resources_name&gt;}</em> 是相应默认资源的目录名称（如表 1
+中所定义）。</li>
+      <li><em>{@code &lt;qualifier&gt;}</em> 是指定要使用这些资源的各个配置的名称（如表 2
+中所定义）。</li>
+    </ul>
+    <p>您可以追加多个 <em>{@code &lt;qualifier&gt;}</em>。以短划线将其分隔。
+</p>
+    <p class="caution"><strong>注意：</strong>追加多个限定符时，必须按照表
+2 中列出的相同顺序放置它们。如果限定符的顺序错误，则该资源将被忽略。
+</p>
+  </li>
+  <li>将相应的备用资源保存在此新目录下。这些资源文件的名称必须与默认资源文件完全一样。
+</li>
+</ol>
+
+<p>例如，以下是一些默认资源和备用资源：</p>
+
+<pre class="classic no-pretty-print">
+res/
+    drawable/   <span style="color:black">
+        icon.png
+        background.png    </span>
+    drawable-hdpi/  <span style="color:black">
+        icon.png
+        background.png  </span>
+</pre>
+
+<p>{@code hdpi}
+限定符表示该目录中的资源适用于屏幕密度较高的设备。其中每个 Drawable 目录中的图像已针对特定的屏幕密度调整大小，但是文件名完全相同。
+
+这样一来，用于引用 {@code icon.png} 或 {@code
+background.png}
+图像的资源 ID 始终相同，但是 Android
+会通过将设备配置信息与资源目录名称中的限定符进行比较，选择最符合当前设备的各个资源版本。</p>
+
+<p>Android
+支持若干配置限定符，您可以通过使用短划线分隔每个限定符，向一个目录名称添加多个限定符。表 2
+按优先顺序列出了有效的配置限定符；如果对资源目录使用多个限定符，则必须按照表中列出的顺序将它们添加到目录名称。
+
+</p>
+
+
+<p class="table-caption" id="table2"><strong>表 2. </strong>配置限定符名称。
+</p>
+<table>
+    <tr>
+        <th>配置</th>
+        <th>限定符值</th>
+        <th>描述</th>
+    </tr>
+    <tr id="MccQualifier">
+      <td>MCC 和 MNC</td>
+      <td>示例：<br/>
+        <code>mcc310</code><br/>
+        <code><nobr>mcc310-mnc004</nobr></code><br/>
+        <code>mcc208-mnc00</code><br/>
+        等等
+      </td>
+      <td>
+        <p>移动国家代码 (MCC)，（可选）后跟设备 SIM
+卡中的移动网络代码 (MNC)。例如，<code>mcc310</code> 是指美国的任一运营商，<code>mcc310-mnc004</code> 是指美国的 Verizon
+公司，<code>mcc208-mnc00</code> 是指法国的 Orange
+公司。</p>
+        <p>如果设备使用无线电连接（GSM 手机），则 MCC 和 MNC 值来自 SIM
+卡。</p>
+        <p>也可以单独使用
+MCC（例如，将国家/地区特定的合法资源包括在应用中）。如果只需根据语言指定，则改用“语言和区域”<em></em>限定符（稍后进行介绍）。
+如果决定使用 MCC 和
+MNC 限定符，请谨慎执行此操作并测试限定符是否按预期工作。</p>
+        <p>另请参阅配置字段
+{@link
+android.content.res.Configuration#mcc} 和 {@link
+android.content.res.Configuration#mnc}，这两个字段分别表示当前的移动国家代码和移动网络代码。</p>
+      </td>
+    </tr>
+    <tr id="LocaleQualifier">
+      <td>语言和区域</td>
+      <td>示例：<br/>
+        <code>en</code><br/>
+        <code>fr</code><br/>
+        <code>en-rUS</code><br/>
+        <code>fr-rFR</code><br/>
+        <code>fr-rCA</code><br/>
+        等等
+      </td>
+      <td><p>语言通过由两个字母组成的 <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php">ISO
+639-1</a> 语言代码定义，（可选）后跟两个字母组成的
+<a href="http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html">ISO
+3166-1-alpha-2</a> 区域码（前带小写字母“{@code r}”）。
+        </p><p>
+        这些代码不区分大小写；{@code r}
+前缀用于区分区域码。<em></em>
+        不能单独指定区域。</p>
+        <p>如果用户更改系统设置中的语言，它有可能在应用生命周期中发生改变。
+如需了解这会在运行期间给应用带来哪些影响，请参阅<a href="runtime-changes.html">处理运行时变更</a>。
+</p>
+        <p>有关针对其他语言本地化应用的完整指南，请参阅<a href="localization.html">本地化</a>。
+</p>
+        <p>另请参阅 {@link android.content.res.Configuration#locale} 配置字段，该字段表示当前的区域设置。
+</p>
+      </td>
+    </tr>
+    <tr id="LayoutDirectionQualifier">
+      <td>布局方向</td>
+      <td><code>ldrtl</code><br/>
+        <code>ldltr</code><br/>
+      </td>
+      <td><p>应用的布局方向。{@code ldrtl} 是指“布局方向从右到左”。{@code ldltr}
+是指“布局方向从左到右”，这是默认的隐式值。
+      </p>
+      <p>它适用于布局、图片或值等任何资源。
+      </p>
+      <p>例如，若要针对阿拉伯语提供某种特定布局，并针对任何其他“从右到左”语言（如波斯语或希伯来语）提供某种通用布局，则可编码如下：
+
+      </p>
+<pre class="classic no-pretty-print">
+res/
+    layout/   <span style="color:black">
+        main.xml  </span>(Default layout)
+    layout-ar/  <span style="color:black">
+        main.xml  </span>(Specific layout for Arabic)
+    layout-ldrtl/  <span style="color:black">
+        main.xml  </span>(Any "right-to-left" language, except
+                  for Arabic, because the "ar" language qualifier
+                  has a higher precedence.)
+</pre>
+        <p class="note"><strong>注：</strong>要为应用启用从右到左的布局功能，必须将 <a href="{@docRoot}guide/topics/manifest/application-element.html#supportsrtl">{@code
+supportsRtl}</a> 设置为
+{@code "true"}，并将 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> 设置为 17 或更高。</p>
+        <p><em>此项为API 级别 17 中新增配置。</em></p>
+      </td>
+    </tr>
+    <tr id="SmallestScreenWidthQualifier">
+      <td>smallestWidth</td>
+      <td><code>sw&lt;N&gt;dp</code><br/><br/>
+        示例：<br/>
+        <code>sw320dp</code><br/>
+        <code>sw600dp</code><br/>
+        <code>sw720dp</code><br/>
+        等等
+      </td>
+      <td>
+        <p>屏幕的基本尺寸，由可用屏幕区域的最小尺寸指定。
+具体来说，设备的 smallestWidth
+是屏幕可用高度和宽度的最小尺寸（您也可以将其视为屏幕的“最小可能宽度”）。无论屏幕的当前方向如何，您均可使用此限定符确保应用
+UI 的可用宽度至少为
+{@code &lt;N&gt;}dp。</p>
+        <p>例如，如果布局要求屏幕区域的最小尺寸始终至少为
+600dp，则可使用此限定符创建布局资源 {@code
+res/layout-sw600dp/}。仅当可用屏幕的最小尺寸至少为
+600dp 时，系统才会使用这些资源，而不考虑
+600dp 所代表的边是用户所认为的高度还是宽度。smallestWidth 是设备的固定屏幕尺寸特性；<strong>设备的 smallestWidth
+不会随屏幕方向的变化而改变</strong>。</p>
+        <p>设备的 smallestWidth 将屏幕装饰元素和系统 UI
+考虑在内。例如，如果设备的屏幕上有一些永久性 UI 元素占据沿
+smallestWidth
+轴的空间，则系统会声明 smallestWidth
+小于实际屏幕尺寸，因为这些屏幕像素不适用于您的
+UI。因此，使用的值应该是布局所需要<em></em>的实际最小尺寸（通常，无论屏幕的当前方向如何，此值都是布局支持的“最小宽度”）。</p>
+        <p>以下是一些可用于普通屏幕尺寸的值：</p>
+        <ul>
+          <li>320，适用于屏幕配置如下的设备：
+            <ul>
+              <li>240x320 ldpi（QVGA 手机）</li>
+              <li>320x480 mdpi（手机）</li>
+              <li>480x800 hdpi（高密度手机）</li>
+            </ul>
+          </li>
+          <li>480，适用于 480x800 mdpi 之类的屏幕（平板电脑/手机）。</li>
+          <li>600，适用于 600x1024 mdpi 之类的屏幕（7 英寸平板电脑）。</li>
+          <li>720，适用于 720x1280 mdpi 之类的屏幕（10 英寸平板电脑）。</li>
+        </ul>
+        <p>应用为多个资源目录提供不同的 
+smallestWidth 限定符值时，系统会使用最接近（但未超出）设备
+smallestWidth 的值。 </p>
+        <p><em>此项为 API 级别 13 中新增配置。</em></p>
+        <p>另请参阅 <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html#requiresSmallest">{@code
+android:requiresSmallestWidthDp}</a> 属性和 {@link
+android.content.res.Configuration#smallestScreenWidthDp} 配置字段，前者声明与应用兼容的最小
+smallestWidth；后者存放设备的
+smallestWidth 值。</p>
+        <p>如需了解有关设计不同屏幕和使用此限定符的详细信息，请参阅<a href="{@docRoot}guide/practices/screens_support.html">支持多个屏幕</a>开发者指南。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenWidthQualifier">
+      <td>可用宽度</td>
+      <td><code>w&lt;N&gt;dp</code><br/><br/>
+        示例：<br/>
+        <code>w720dp</code><br/>
+        <code>w1024dp</code><br/>
+        等等
+      </td>
+      <td>
+        <p>指定资源应该使用的最小可用屏幕宽度，以 {@code dp}
+为单位，由 <code>&lt;N&gt;</code> 值定义。在横向和纵向之间切换时，为了匹配当前实际宽度，此配置值也会随之发生变化。
+
+</p>
+        <p>应用为多个资源目录提供不同的此配置值时，系统会使用最接近（但未超出）设备当前屏幕宽度的值。
+
+此处的值考虑到了屏幕装饰元素，因此如果设备显示屏的左边缘或右边缘上有一些永久性 UI
+元素，考虑到这些 UI 
+元素，它会使用小于实际屏幕尺寸的宽度值，这样会减少应用的可用空间。
+
+</p>
+        <p><em>此项为 API 级别 13 中新增配置。</em></p>
+        <p>另请参阅
+{@link android.content.res.Configuration#screenWidthDp} 配置字段，该字段存放当前屏幕宽度。</p>
+        <p>如需了解有关设计不同屏幕和使用此限定符的详细信息，请参阅<a href="{@docRoot}guide/practices/screens_support.html">支持多个屏幕</a>开发者指南。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenHeightQualifier">
+      <td>可用高度</td>
+      <td><code>h&lt;N&gt;dp</code><br/><br/>
+        示例：<br/>
+        <code>h720dp</code><br/>
+        <code>h1024dp</code><br/>
+        等等
+      </td>
+      <td>
+        <p>指定资源应该使用的最小可用屏幕高度，以“dp”为单位，由 <code>&lt;N&gt;</code> 值定义。
+在横向和纵向之间切换时，为了匹配当前实际高度，此配置值也会随之发生变化。
+
+</p>
+        <p>应用为多个资源目录提供不同的此配置值时，系统会使用最接近（但未超出）设备当前屏幕高度的值。
+
+此处的值考虑到了屏幕装饰元素，因此如果设备显示屏的上边缘或下边缘有一些永久性 UI
+元素，考虑到这些 UI 
+元素，同时为减少应用的可用空间，它会使用小于实际屏幕尺寸的高度值。
+
+非固定的屏幕装饰元素（例如，全屏时可隐藏的手机状态栏）并不<em></em>在考虑范围内，标题栏或操作栏等窗口装饰也不在考虑范围内，因此应用必须准备好处理稍小于其所指定值的空间。
+
+
+
+
+        <p><em>此项为 API 级别 13 中新增配置。</em></p>
+        <p>另请参阅
+{@link android.content.res.Configuration#screenHeightDp} 配置字段，该字段存放当前屏幕宽度。</p>
+        <p>如需了解有关设计不同屏幕和使用此限定符的详细信息，请参阅<a href="{@docRoot}guide/practices/screens_support.html">支持多个屏幕</a>开发者指南。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenSizeQualifier">
+      <td>屏幕尺寸</td>
+      <td>
+        <code>small</code><br/>
+        <code>normal</code><br/>
+        <code>large</code><br/>
+        <code>xlarge</code>
+      </td>
+      <td>
+        <ul class="nolist">
+        <li>{@code small}：尺寸类似于低密度
+QVGA 屏幕的屏幕。小屏幕的最小布局尺寸约为
+320x426 dp 单位。例如，QVGA 低密度屏幕和 VGA
+高密度屏幕。</li>
+        <li>{@code normal}：尺寸类似于中等密度
+HVGA 屏幕的屏幕。标准屏幕的最小布局尺寸约为
+320x470 dp 单位。例如，WQVGA
+低密度屏幕、HVGA 中等密度屏幕、WVGA
+高密度屏幕。</li>
+        <li>{@code large}：尺寸类似于中等密度
+VGA 屏幕的屏幕。
+        大屏幕的最小布局尺寸约为 480x640 dp 单位。
+        例如，VGA 和 WVGA 中等密度屏幕。</li>
+        <li>{@code xlarge}：明显大于传统中等密度
+HVGA 屏幕的屏幕。超大屏幕的最小布局尺寸约为
+720x960 dp 单位。在大多数情况下，屏幕超大的设备体积过大，不能放进口袋，最常见的是平板式设备。
+
+<em>此项为 API 级别 9 中新增配置。</em></li>
+        </ul>
+        <p class="note"><strong>注：</strong>使用尺寸限定符并不表示资源仅<em></em>适用于该尺寸的屏幕。
+如果没有为备用资源提供最符合当前设备配置的限定符，则系统可能使用其中<a href="#BestMatch">最匹配</a>的资源。
+
+</p>
+        <p class="caution"><strong>注意：</strong>如果所有资源均使用大于<em></em>当前屏幕的尺寸限定符，则系统<strong>不</strong>会使用这些资源，并且应用在运行时将会崩溃（例如，如果所有布局资源均用 {@code
+xlarge} 限定符标记，但设备是标准尺寸的屏幕）。
+
+</p>
+        <p><em>此项为 API 级别 4 中新增配置。</em></p>
+        
+        <p>如需了解详细信息，请参阅<a href="{@docRoot}guide/practices/screens_support.html">支持多个屏幕</a>。
+</p>
+        <p>另请参阅 {@link android.content.res.Configuration#screenLayout} 配置字段，该字段表示屏幕是小尺寸、标准尺寸还是大尺寸。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenAspectQualifier">
+      <td>屏幕纵横比</td>
+      <td>
+        <code>long</code><br/>
+        <code>notlong</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code long}：宽屏，如 WQVGA、WVGA、FWVGA</li>
+          <li>{@code notlong}：非宽屏，如 QVGA、HVGA 和 VGA</li>
+        </ul>
+        <p><em>此项为 API 级别 4 中新增配置。</em></p>
+        <p>它完全基于屏幕的纵横比（宽屏较宽），而与屏幕方向无关。
+</p>
+        <p>另请参阅 {@link android.content.res.Configuration#screenLayout} 配置字段，该字段指示屏幕是否为宽屏。
+</p>
+      </td>
+    </tr>
+    <tr id="OrientationQualifier">
+      <td>屏幕方向</td>
+      <td>
+        <code>port</code><br/>
+        <code>land</code>  <!-- <br/>
+        <code>square</code>  -->
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code port}：设备处于纵向（垂直）</li>
+          <li>{@code land}：设备处于横向（水平）</li>
+          <!-- Square mode is currently not used. -->
+        </ul>
+        <p>如果用户旋转屏幕，它有可能在应用生命周期中发生改变。
+如需了解这会在运行期间给应用带来哪些影响，请参阅<a href="runtime-changes.html">处理运行时变更</a>。
+</p>
+        <p>另请参阅 {@link android.content.res.Configuration#orientation} 配置字段，该字段指示当前的设备方向。
+</p>
+      </td>
+    </tr>
+    <tr id="UiModeQualifier">
+      <td>UI 模式</td>
+      <td>
+        <code>car</code><br/>
+        <code>desk</code><br/>
+        <code>television</code><br/>
+        <code>appliance</code>
+<code>watch</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code car}：设备正在车载手机座上显示</li>
+          <li>{@code desk}：设备正在桌面手机座上显示</li>
+          <li>{@code television}：设备正在电视上显示，为用户提供“十英尺”体验，其
+UI 位于远离用户的大屏幕上，主要面向方向键或其他非指针式交互
+
+</li>
+          <li>{@code appliance}：设备用作不带显示屏的装置
+</li>
+          <li>{@code watch}：设备配有显示屏，戴在手腕上</li>
+        </ul>
+        <p><em>此项为 API 级别 8 中新增配置，API 13 中新增电视配置，API 20 中新增手表配置。</em></p>
+        <p>如需了解应用在设备插入手机座或从中移除时的响应方式，请阅读<a href="{@docRoot}training/monitoring-device-state/docking-monitoring.html">确定并监控插接状态和类型</a>。
+
+</p>
+        <p>如果用户将设备放入手机座中，它有可能在应用生命周期中发生改变。
+可以使用 {@link
+android.app.UiModeManager} 启用或禁用其中某些模式。如需了解这会在运行期间给应用带来哪些影响，请参阅<a href="runtime-changes.html">处理运行时变更</a>。
+</p>
+      </td>
+    </tr>
+    <tr id="NightQualifier">
+      <td>夜间模式</td>
+      <td>
+        <code>night</code><br/>
+        <code>notnight</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code night}：夜间</li>
+          <li>{@code notnight}：白天</li>
+        </ul>
+        <p><em>此项为 API 级别 8 中新增配置。</em></p>
+        <p>如果夜间模式停留在自动模式（默认），它有可能在应用生命周期中发生改变。在这种情况下，该模式会根据当天的时间进行调整。
+可以使用
+{@link android.app.UiModeManager} 启用或禁用此模式。如需了解这会在运行期间给应用带来哪些影响，请参阅<a href="runtime-changes.html">处理运行时变更</a>。
+</p>
+      </td>
+    </tr>
+    <tr id="DensityQualifier">
+      <td>屏幕像素密度 (dpi)</td>
+      <td>
+        <code>ldpi</code><br/>
+        <code>mdpi</code><br/>
+        <code>hdpi</code><br/>
+        <code>xhdpi</code><br/>
+        <code>xxhdpi</code><br/>
+        <code>xxxhdpi</code><br/>
+        <code>nodpi</code><br/>
+        <code>tvdpi</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code ldpi}：低密度屏幕；约为 120dpi。</li>
+          <li>{@code mdpi}：中等密度（传统 HVGA）屏幕；约为
+160dpi。</li>
+          <li>{@code hdpi}：高密度屏幕；约为 240dpi。</li>
+          <li>{@code xhdpi}：超高密度屏幕；约为 320dpi。<em>API
+级别 8 中新增配置</em></li>
+          <li>{@code xxhdpi}：超超高密度屏幕；约为 480dpi。<em>API
+级别 16 中新增配置</em></li>
+          <li>{@code xxxhdpi}：超超超高密度屏幕使用（仅限启动器图标，请参阅“支持多个屏幕”中的<a href="{@docRoot}guide/practices/screens_support.html#xxxhdpi-note">注释</a>）；约为
+640dpi。<em></em>
+<em>API
+级别 18 中新增配置</em></li>
+          <li>{@code nodpi}：它可用于您不希望缩放以匹配设备密度的位图资源。
+</li>
+          <li>{@code tvdpi}：密度介于 mdpi 和 hdpi 之间的屏幕；约为 213dpi。它并不是“主要”密度组，
+主要用于电视，而大多数应用都不需要它。对于大多数应用而言，提供 mdpi 和
+hdpi
+资源便已足够，系统将根据需要对其进行缩放。API 级别 13 中引入了此限定符。</li>
+        </ul>
+        <p>六个主要密度之间的缩放比为 3:4:6:8:12:16（忽略
+tvdpi 密度）。因此，9x9 (ldpi) 位图相当于 12x12 (mdpi)、18x18 (hdpi)、24x24 (xhdpi) 位图，依此类推。
+</p>
+        <p>如果您认为图像资源在电视或其他某些设备上呈现的效果不够好，而想尝试使用 tvdpi 资源，则缩放比例为
+1.33*mdpi。例如，mdpi
+屏幕的 100px x 100px 图像应该相当于 tvdpi 的133px x 133px。</p>
+        <p class="note"><strong>注：</strong>使用密度限定符并不表示资源仅适用于该密度的屏幕。
+<em></em>如果没有为备用资源提供最符合当前设备配置的限定符，则系统可能使用其中<a href="#BestMatch">最匹配</a>的资源。
+
+</p>
+        <p>如需了解有关如何处理不同屏幕密度以及 Android 如何缩放位图以适应当前密度的详细信息，请参阅<a href="{@docRoot}guide/practices/screens_support.html">支持多个屏幕</a>。
+
+</p>
+       </td>
+    </tr>
+    <tr id="TouchscreenQualifier">
+      <td>触摸屏类型</td>
+      <td>
+        <code>notouch</code><br/>
+        <code>finger</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code notouch}：设备没有触摸屏。</li>
+          <li>{@code finger}：设备有一个专供用户通过手指直接与其交互的触摸屏。
+</li>
+        </ul>
+        <p>另请参阅 {@link android.content.res.Configuration#touchscreen} 配置字段，该字段指示设备上的触摸屏类型。
+</p>
+      </td>
+    </tr>
+    <tr id="KeyboardAvailQualifier">
+      <td>键盘可用性</td>
+      <td>
+        <code>keysexposed</code><br/>
+        <code>keyshidden</code><br/>
+        <code>keyssoft</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code keysexposed}：设备具有可用的键盘。如果设备启用了软键盘（不无可能），那么即使硬键盘没有展示给用户，哪怕设备没有硬键盘，也可以使用此限定符。<em></em>
+
+如果没有提供或已经禁用软键盘，则只有在显示硬键盘时才会使用此限定符。
+
+</li>
+          <li>{@code keyshidden}：设备具有可用的硬键盘，但它处于隐藏状态，且设备没有启用软键盘。<em></em><em></em>
+</li>
+          <li>{@code keyssoft}：设备已经启用软键盘（无论是否可见）。
+</li>
+        </ul>
+        <p>如果提供了 <code>keysexposed</code> 资源，但未提供 <code>keyssoft</code>
+资源，那么只要系统已经启用软键盘，就会使用
+<code>keysexposed</code> 资源，而不考虑键盘是否可见。</p>
+        <p>如果用户打开硬键盘，它有可能在应用生命周期中发生改变。
+如需了解这会在运行期间给应用带来哪些影响，请参阅<a href="runtime-changes.html">处理运行时变更</a>。
+</p>
+        <p>另请参阅配置字段
+{@link
+android.content.res.Configuration#hardKeyboardHidden} 和 {@link
+android.content.res.Configuration#keyboardHidden}，这两个字段分别指示硬键盘的可见性和任何一种键盘（包括软键盘）的可见性。</p>
+      </td>
+    </tr>
+    <tr id="ImeQualifier">
+      <td>主要文本输入法</td>
+      <td>
+        <code>nokeys</code><br/>
+        <code>qwerty</code><br/>
+        <code>12key</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nokeys}：设备没有用于文本输入的硬按键。</li>
+          <li>{@code qwerty}：设备具有标准硬键盘（无论是否对用户可见）。
+
+</li>
+          <li>{@code 12key}：设备具有 12 键硬键盘（无论是否对用户可见）。
+</li>
+        </ul>
+        <p>另请参阅 {@link android.content.res.Configuration#keyboard} 配置字段，该字段指示可用的主要文本输入法。
+</p>
+      </td>
+    </tr>
+    <tr id="NavAvailQualifier">
+      <td>导航键可用性</td>
+      <td>
+        <code>navexposed</code><br/>
+        <code>navhidden</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code navexposed}：导航键可供用户使用。</li>
+          <li>{@code navhidden}：导航键不可用（例如，位于密封盖子后面）。
+</li>
+        </ul>
+        <p>如果用户显示导航键，它有可能在应用生命周期中发生改变。
+如需了解这会在运行期间给应用带来哪些影响，请参阅<a href="runtime-changes.html">处理运行时变更</a>。
+</p>
+        <p>另请参阅
+{@link android.content.res.Configuration#navigationHidden} 配置字段，该字段指示导航键是否处于隐藏状态。</p>
+      </td>
+    </tr>
+    <tr id="NavigationQualifier">
+      <td>主要非触摸导航方法</td>
+      <td>
+        <code>nonav</code><br/>
+        <code>dpad</code><br/>
+        <code>trackball</code><br/>
+        <code>wheel</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nonav}：除了使用触摸屏以外，设备没有其他导航设施。
+</li>
+          <li>{@code dpad}：设备具有用于导航的方向键。</li>
+          <li>{@code trackball}：设备具有用于导航的轨迹球。</li>
+          <li>{@code wheel}：设备具有用于导航的方向盘（不常见）。</li>
+        </ul>
+        <p>另请参阅 {@link android.content.res.Configuration#navigation}
+配置字段，该字段指示可用的导航方法类型。</p>
+      </td>
+    </tr>
+<!-- DEPRECATED
+    <tr>
+      <td>Screen dimensions</td>
+      <td>Examples:<br/>
+        <code>320x240</code><br/>
+        <code>640x480</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>The larger dimension must be specified first. <strong>This configuration is deprecated
+and should not be used</strong>. Instead use "screen size," "wider/taller screens," and "screen
+orientation" described above.</p>
+      </td>
+    </tr>
+-->
+    <tr id="VersionQualifier">
+      <td>平台版本（API 级别）</td>
+      <td>示例：<br/>
+        <code>v3</code><br/>
+        <code>v4</code><br/>
+        <code>v7</code><br/>
+        等等</td>
+      <td>
+        <p>设备支持的 API 级别。例如，<code>v1</code> 对应于 API 级别
+1（带有 Android 1.0 或更高版本系统的设备），<code>v4</code> 对应于 API 级别 4（带有 Android
+1.6 或更高版本系统的设备）。如需了解有关这些值的详细信息，请参阅
+<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Android API 级别</a>文档。</p>
+      </td>
+    </tr>
+</table>
+
+
+<p class="note"><strong>注：</strong>有些配置限定符是从 Android 1.0
+才开始添加，因此并非所有版本的 Android 系统都支持所有限定符。使用新限定符会隐式添加平台版本限定符，因此较旧版本系统的设备必然会忽略它。
+例如，使用
+<code>w600dp</code> 限定符会自动包括 <code>v13</code> 限定符，因为可用宽度限定符是 API 级别 13
+中的新增配置。为了避免出现任何问题，请始终包含一组默认资源（一组“不带限定符”的资源）。<em></em>
+如需了解详细信息，请参阅<a href="#Compatibility">利用资源提供最佳设备兼容性</a>部分。
+
+</p>
+
+
+
+<h3 id="QualifierRules">限定符命名规则</h3>
+
+<p>以下是一些关于使用配置限定符名称的规则：</p>
+
+<ul>
+    <li>您可以为单组资源指定多个限定符，并使用短划线分隔。例如，<code>drawable-en-rUS-land</code>
+适用于横排美国英语设备。
+</li>
+    <li>这些限定符必须遵循<a href="#table2">表 2</a> 中列出的顺序。例如：
+
+      <ul>
+        <li>错误：<code>drawable-hdpi-port/</code></li>
+        <li>正确：<code>drawable-port-hdpi/</code></li>
+      </ul>
+    </li>
+    <li>不能嵌套备用资源目录。例如，您不能拥有
+<code>res/drawable/drawable-en/</code>。</li>
+    <li>值不区分大小写。在处理之前，资源编译器会将目录名称转换为小写，以避免不区分大小写的文件系统出现问题。
+
+名称中使用的任何大写字母只是为了便于认读。</li>
+    <li>对于每种限定符类型，仅支持一个值。例如，若要对西班牙语和法语使用相同的 Drawable 文件，则您肯定不能拥有名为
+<code>drawable-rES-rFR/</code>
+的目录，<em></em>而是需要两个包含相应文件的资源目录，如
+<code>drawable-rES/</code>
+和 <code>drawable-rFR/</code>。然而，实际上您无需将相同的文件都复制到这两个位置。相反，您可以创建指向资源的别名。
+请参阅下面的<a href="#AliasResources">创建别名资源</a>。
+</li>
+</ul>
+
+<p>将备用资源保存到以这些限定符命名的目录中之后，Android
+会根据当前设备配置在应用中自动应用这些资源。
+每次请求资源时，Android
+都会检查备用资源目录是否包含所请求的资源文件，然后<a href="#BestMatch">找到最匹配资源</a>（下文进行介绍）。
+如果没有与特定设备配置匹配的备用资源，则
+Android
+会使用相应的默认资源（一组用于不含配置限定符的特定资源类型的资源）。
+</p>
+
+
+
+<h3 id="AliasResources">创建别名资源</h3>
+
+<p>如果您想将某一资源用于多种设备配置（但是不想作为默认资源提供），则无需将同一资源放入多个备用资源目录中。
+
+相反，您可以（在某些情况下）创建备用资源，充当保存在默认资源目录下的资源的别名。
+
+</p>
+
+<p class="note"><strong>注：</strong>并非所有资源都会提供相应机制让您创建指向其他资源的别名。
+特别是，{@code xml/} 目录中的动画资源、菜单资源、原始资源以及其他未指定资源均不提供此功能。
+</p>
+
+<p>例如，假设您有一个应用图标 {@code icon.png}，并且需要不同区域设置的独特版本。
+但是，加拿大英语和加拿大法语这两种区域设置需要使用同一版本。
+您可能会认为需要将相同的图像复制到加拿大英语和加拿大法语对应的资源目录中，但事实并非如此。
+
+相反，您可以将用于二者的图像另存为 {@code icon_ca.png}（除
+{@code icon.png}
+以外的任何名称），并将其放入默认 {@code res/drawable/} 目录中。然后，在 {@code
+res/drawable-en-rCA/}
+和 {@code res/drawable-fr-rCA/} 中创建 {@code icon.xml} 文件，使用 {@code &lt;bitmap&gt;} 元素引用 {@code icon_ca.png}资源。这样，您只需存储 PNG
+文件的一个版本和两个指向该版本的小型 XML 文件。（XML 文件示例如下。）</p>
+
+
+<h4>Drawable</h4>
+
+<p>要创建指向现有 Drawable 的别名，请使用
+{@code &lt;bitmap&gt;} 元素。例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/icon_ca" />
+</pre>
+
+<p>如果将此文件另存为
+{@code icon.xml}（例如，在备用资源目录中，另存为 {@code res/drawable-en-rCA/}），则会编译到可作为
+{@code R.drawable.icon} 引用的资源中，但实际上它是 {@code
+R.drawable.icon_ca} 资源（保存在 {@code res/drawable/} 中）的别名。</p>
+
+
+<h4>布局</h4>
+
+<p>要创建指向现有布局的别名，请使用包装在 {@code &lt;merge&gt;} 中的
+{@code &lt;include&gt;}元素。例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;merge>
+    &lt;include layout="@layout/main_ltr"/>
+&lt;/merge>
+</pre>
+
+<p>如果将此文件另存为 {@code main.xml}，则会编译到可作为
+{@code R.layout.main} 引用的资源中，但实际上它是 {@code R.layout.main_ltr}
+资源的别名。</p>
+
+
+<h4>字符串和其他简单值</h4>
+
+<p>要创建指向现有字符串的别名，只需将所需字符串的资源
+ID 用作新字符串的值即可。例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;string name="hello">Hello&lt;/string>
+    &lt;string name="hi">@string/hello&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>{@code R.string.hi} 资源现在是 {@code R.string.hello} 的别名。</p>
+
+<p> <a href="{@docRoot}guide/topics/resources/more-resources.html">其他简单值</a>的原理相同。
+例如，颜色：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;color name="yellow">#f00&lt;/color>
+    &lt;color name="highlight">@color/red&lt;/color>
+&lt;/resources>
+</pre>
+
+
+
+
+<h2 id="Compatibility">利用资源提供最佳设备兼容性</h2>
+
+<p>要使应用支持多种设备配置，则务必为应用使用的每种资源类型提供默认资源，这一点非常重要。
+</p>
+
+<p>例如，如果应用支持多种语言，请始终包含不带<em></em><a href="#LocaleQualifier">语言和区域限定符</a>的 {@code
+values/} 目录（用于保存字符串）。相反，如果您将所有字符串放入带有语言和区域限定符的目录中，则在语言设置不支持您的字符串的设备上运行应用时，应用将会崩溃。
+
+但是，只要提供默认 {@code values/} 资源，应用就会正常运行（即使用户不理解该语言，这也总比崩溃要好）。
+
+</p>
+
+<p>同样，如果您根据屏幕方向提供不同的布局资源，则应选择一个方向作为默认方向。
+例如，不要在 {@code
+layout-land/} 和 {@code layout-port/} 中分别提供横向和纵向的布局资源，而是保留其中之一作为默认设置，例如：{@code layout/}
+用于横向，{@code layout-port/} 用于纵向。</p>
+
+<p>提供默认资源至关重要，这不仅仅因为应用可能在超出预期的配置上运行，也因为新版
+Android
+有时会添加旧版本不支持的配置限定符。若要使用新的资源限定符，又希望维持对旧版
+Android 的代码兼容性，则当旧版
+Android
+运行应用时，如果不提供默认资源，应用将会崩溃，这是因为它无法使用以新限定符命名的资源。例如，如果将 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
+minSdkVersion}</a> 设置为 4，并使用<a href="#NightQualifier">夜间模式</a>（{@code night} 或 {@code notnight}，API
+级别 8 中新增配置）限定所有 Drawable 资源，则 API 级别 4 设备无法访问 Drawable 资源，而且会崩溃。在这种情况下，您可能希望 {@code notnight} 成为默认资源，为此，您应排除该限定符，使 Drawable 资源位于 {@code drawable/} 或
+{@code drawable-night/}
+中。</p>
+
+<p>因此，为了提供最佳设备兼容性，请始终为应用正确运行所必需的资源提供默认资源。
+然后，使用配置限定符为特定的设备配置创建备用资源。
+</p>
+
+<p>这条规则有一个例外：如果应用的 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> 为 4 或更高，则在提供带<a href="#DensityQualifier">屏幕密度</a>限定符的备用 Drawable 资源时，不<em></em>需要默认 Drawable 资源。
+
+即使没有默认 Drawable 资源，Android
+也可以从备用屏幕密度中找到最佳匹配项并根据需要缩放位图。
+但是，为了在所有类型的设备上提供最佳体验，您应该为所有三种类型的密度提供备用 Drawable。
+</p>
+
+
+
+<h2 id="BestMatch">Android 如何找到最匹配资源</h2>
+
+<p>当您请求要为其提供备用资源的资源时，Android
+会根据当前的设备配置选择要在运行时使用的备用资源。为演示
+Android 如何选择备用资源，假设以下 Drawable 目录分别包含相同图像的不同版本：
+</p>
+
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+drawable-fr-rCA/
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+
+<p>同时，假设设备配置如下：</p>
+
+<p style="margin-left:1em;">
+区域设置 = <code>en-GB</code> <br/>
+屏幕方向 = <code>port</code> <br/>
+屏幕像素密度 = <code>hdpi</code> <br/>
+触摸屏类型 = <code>notouch</code> <br/>
+主要文本输入法 = <code>12key</code>
+</p>
+
+<p>通过将设备配置与可用的备用资源进行比较，Android 从
+{@code drawable-en-port} 中选择 Drawable。</p>
+
+<p>系统使用以下逻辑决定要使用的资源：
+</p>
+
+
+<div class="figure" style="width:371px">
+<img src="{@docRoot}images/resources/res-selection-flowchart.png" alt="" height="471" />
+<p class="img-caption"><strong>图 2. </strong>Android
+如何找到最匹配资源的流程图。</p>
+</div>
+
+
+<ol>
+  <li>淘汰与设备配置冲突的资源文件。
+    <p><code>drawable-fr-rCA/</code> 目录与
+<code>en-GB</code> 区域设置冲突，因而被淘汰。</p>
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+<strike>drawable-fr-rCA/</strike>
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+<p class="note"><strong>例外：</strong>屏幕像素密度是唯一一个未因冲突而被淘汰的限定符。
+尽管设备的屏幕密度为
+hdpi，但是
+<code>drawable-port-ldpi/</code> 未被淘汰，因为此时每个屏幕密度均视为匹配。如需了解详细信息，请参阅<a href="{@docRoot}guide/practices/screens_support.html">支持多个屏幕</a>文档。
+</p></li>
+
+  <li>选择列表（<a href="#table2">表 2</a>）中（下一个）优先级最高的限定符。（先从 MCC
+开始，然后下移。） </li>
+  <li>是否有资源目录包括此限定符？  </li>
+    <ul>
+      <li>若无，请返回到第 2 步，看看下一个限定符。（在该示例中，除非达到语言限定符，否则答案始终为“否”。）
+</li>
+      <li>若有，请继续执行第 4 步。</li>
+    </ul>
+  </li>
+
+  <li>淘汰不含此限定符的资源目录。在该示例中，系统会淘汰所有不含语言限定符的目录。
+</li>
+<pre class="classic no-pretty-print">
+<strike>drawable/</strike>
+drawable-en/
+drawable-en-port/
+drawable-en-notouch-12key/
+<strike>drawable-port-ldpi/</strike>
+<strike>drawable-port-notouch-12key/</strike>
+</pre>
+<p class="note"><strong>例外：</strong>如果涉及的限定符是屏幕像素密度，则
+Android
+会选择最接近设备屏幕密度的选项。通常，Android
+倾向于缩小大型原始图像，而不是放大小型原始图像。请参阅<a href="{@docRoot}guide/practices/screens_support.html">支持多个屏幕</a>。
+</p>
+  </li>
+
+  <li>返回并重复第 2 步、第 3 步和第 4 步，直到只剩下一个目录为止。在此示例中，屏幕方向是下一个判断是否匹配的限定符。因此，未指定屏幕方向的资源被淘汰：
+
+
+<pre class="classic no-pretty-print">
+<strike>drawable-en/</strike>
+drawable-en-port/
+<strike>drawable-en-notouch-12key/</strike>
+</pre>
+<p>剩下的目录是 {@code drawable-en-port}。</p>
+  </li>
+</ol>
+
+<p>尽管对所请求的每个资源均执行此程序，但是系统仍会对某些方面做进一步优化。
+例如，系统一旦知道设备配置，即会淘汰可能永远无法匹配的备用资源。
+比如说，如果配置语言是英语（“en”），则系统绝不会将语言限定符设置为非英语的任何资源目录包含在选中的资源池中（不过，仍会将不带语言限定符的资源目录包含在该池中）。<em></em>
+
+
+</p>
+
+<p>根据屏幕尺寸限定符选择资源时，如果没有更好的匹配资源，则系统将使用专为小于当前屏幕的屏幕而设计的资源（例如，如有必要，大尺寸屏幕将使用标准尺寸的屏幕资源）。
+
+但是，如果唯一可用的资源大于当前屏幕，则系统<strong>不会</strong>使用这些资源，并且如果没有其他资源与设备配置匹配，应用将会崩溃（例如，如果所有布局资源均用 {@code xlarge} 限定符标记，但设备是标准尺寸的屏幕）。<em></em>
+
+
+
+</p>
+
+<p class="note"><strong>注：</strong>限定符的优先顺序（<a href="#table2">表
+2</a> 中）比与设备完全匹配的限定符数量更加重要。<em></em>例如，在上面的第
+4 步中，列表剩下的最后选项包括三个与设备完全匹配的限定符（方向、触摸屏类型和输入法），而
+<code>drawable-en</code>
+只有一个匹配参数（语言）。但是，语言的优先顺序高于其他两个限定符，因此
+<code>drawable-port-notouch-12key</code> 被淘汰。</p>
+
+<p>如需了解有关如何在应用中使用资源的更多信息，请转至<a href="accessing-resources.html">访问资源</a>。</p>
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/resources/runtime-changes.jd b/docs/html-intl/intl/zh-cn/guide/topics/resources/runtime-changes.jd
new file mode 100644
index 0000000..0df9998
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/resources/runtime-changes.jd
@@ -0,0 +1,281 @@
+page.title=处理运行时变更
+page.tags=Activity,生命周期
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>本文内容</h2>
+  <ol>
+    <li><a href="#RetainingAnObject">在配置变更期间保留对象</a></li>
+    <li><a href="#HandlingTheChange">自行处理配置变更</a>
+  </ol>
+
+  <h2>另请参阅</h2>
+  <ol>
+    <li><a href="providing-resources.html">提供资源</a></li>
+    <li><a href="accessing-resources.html">访问资源</a></li>
+    <li><a href="http://android-developers.blogspot.com/2009/02/faster-screen-orientation-change.html">加快屏幕方向变更</a>
+</li>
+  </ol>
+</div>
+</div>
+
+<p>有些设备配置可能会在运行时发生变化（例如屏幕方向、键盘可用性及语言）。
+发生这种变化时，Android
+会重启正在运行的
+{@link android.app.Activity}（先后调用 {@link android.app.Activity#onDestroy()} 和 {@link
+android.app.Activity#onCreate(Bundle) onCreate()}）。重启行为旨在通过利用与新设备配置匹配的备用资源自动重新加载您的应用，来帮助它适应新配置。
+
+</p>
+
+<p>要妥善处理重启行为，Activity 必须通过常规的<a href="{@docRoot}guide/components/activities.html#Lifecycle">Activity 生命周期</a>恢复其以前的状态，在 Activity 生命周期中，Android
+会在销毁 Activity 之前调用
+{@link android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()}，以便您保存有关应用状态的数据。
+
+然后，您可以在
+{@link android.app.Activity#onCreate(Bundle) onCreate()} 或 {@link
+android.app.Activity#onRestoreInstanceState(Bundle) onRestoreInstanceState()} 期间恢复 Activity 状态。</p>
+
+<p>要测试应用能否在保持应用状态完好的情况下自行重启，您应该在应用中执行各种任务时调用配置变更（例如，更改屏幕方向）。
+
+您的应用应该能够在不丢失用户数据或状态的情况下随时重启，以便处理如下事件：配置发生变化，或者用户收到来电并在应用进程被销毁很久之后返回到应用。
+
+
+要了解如何恢复 Activity 状态，请阅读<a href="{@docRoot}guide/components/activities.html#Lifecycle">Activity 生命周期</a>。</p>
+
+<p>但是，您可能会遇到这种情况：重启应用并恢复大量数据不仅成本高昂，而且给用户留下糟糕的使用体验。
+在这种情况下，您有两个其他选择：
+</p>
+
+<ol type="a">
+  <li><a href="#RetainingAnObject">在配置变更期间保留对象</a>
+  <p>允许 Activity 在配置变更时重启，但是要将有状态对象传递给 Activity 的新实例。
+</p>
+
+  </li>
+  <li><a href="#HandlingTheChange">自行处理配置变更</a>
+  <p>阻止系统在某些配置变更期间重启 Activity，但要在配置确实发生变化时接收回调，这样，您就能够根据需要手动更新 Activity。
+
+</p>
+  </li>
+</ol>
+
+
+<h2 id="RetainingAnObject">在配置变更期间保留对象</h2>
+
+<p>如果重启 Activity 需要恢复大量数据、重新建立网络连接或执行其他密集操作，那么因配置变更而引起的完全重启可能会给用户留下应用运行缓慢的体验。
+
+此外，依靠系统通过 {@link
+android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} 回调为您保存的
+{@link android.os.Bundle}，可能无法完全恢复 Activity 状态，因为它
+并非设计用于携带大型对象（例如位图），而且其中的数据必须先序列化，再进行反序列化，
+这可能会消耗大量内存并使得配置变更速度缓慢。在这种情况下，如果 Activity 因配置变更而重启，则可通过保留
+{@link
+android.app.Fragment} 来减轻重新初始化 Activity 的负担。此片段可能包含对您要保留的有状态对象的引用。
+</p>
+
+<p>当
+Android 系统因配置变更而关闭 Activity 时，不会销毁您已标记为要保留的 Activity 的片段。您可以将此类片段添加到 Activity 以保留有状态的对象。
+</p>
+
+<p>要在运行时配置变更期间将有状态的对象保留在片段中，请执行以下操作：</p>
+
+<ol>
+  <li>扩展 {@link android.app.Fragment}
+类并声明对有状态对象的引用。</li>
+  <li>在创建片段后调用 {@link android.app.Fragment#setRetainInstance(boolean)}。
+      </li>
+  <li>将片段添加到 Activity。</li>
+  <li>重启 Activity 后，使用 {@link android.app.FragmentManager}
+检索片段。</li>
+</ol>
+
+<p>例如，按如下所示定义片段：</p>
+
+<pre>
+public class RetainedFragment extends Fragment {
+
+    // data object we want to retain
+    private MyDataObject data;
+
+    // this method is only called once for this fragment
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // retain this fragment
+        setRetainInstance(true);
+    }
+
+    public void setData(MyDataObject data) {
+        this.data = data;
+    }
+
+    public MyDataObject getData() {
+        return data;
+    }
+}
+</pre>
+
+<p class="caution"><strong>注意：</strong>尽管您可以存储任何对象，但是切勿传递与
+{@link android.app.Activity} 绑定的对象，例如，{@link
+android.graphics.drawable.Drawable}、{@link android.widget.Adapter}、{@link android.view.View}
+或其他任何与 {@link android.content.Context} 关联的对象。否则，它将泄漏原始 Activity 实例的所有视图和资源。
+（泄漏资源意味着应用将继续持有这些资源，但是无法对其进行垃圾回收，因此可能会丢失大量内存。）
+
+</p>
+
+<p>然后，使用 {@link android.app.FragmentManager} 将片段添加到 Activity。在运行时配置变更期间再次启动 Activity 时，您可以获得片段中的数据对象。
+
+例如，按如下所示定义 Activity：</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    private RetainedFragment dataFragment;
+
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+
+        // find the retained fragment on activity restarts
+        FragmentManager fm = getFragmentManager();
+        dataFragment = (DataFragment) fm.findFragmentByTag(“data”);
+
+        // create the fragment and data the first time
+        if (dataFragment == null) {
+            // add the fragment
+            dataFragment = new DataFragment();
+            fm.beginTransaction().add(dataFragment, “data”).commit();
+            // load the data from the web
+            dataFragment.setData(loadMyData());
+        }
+
+        // the data is available in dataFragment.getData()
+        ...
+    }
+
+    &#64;Override
+    public void onDestroy() {
+        super.onDestroy();
+        // store the data in the fragment
+        dataFragment.setData(collectMyLoadedData());
+    }
+}
+</pre>
+
+<p>在此示例中，{@link android.app.Activity#onCreate(Bundle) onCreate()}
+添加了一个片段或恢复了对它的引用。此外，{@link android.app.Activity#onCreate(Bundle) onCreate()}
+还将有状态的对象存储在片段实例内部。{@link android.app.Activity#onDestroy() onDestroy()}
+对所保留的片段实例内的有状态对象进行更新。
+</p>
+
+
+
+
+
+<h2 id="HandlingTheChange">自行处理配置变更</h2>
+
+<p>如果应用在特定配置变更期间无需更新资源，并且因性能限制您需要尽量避免重启，则可声明 Activity 将自行处理配置变更，这样可以阻止系统重启 Activity。<em></em>
+
+
+</p>
+
+<p class="note"><strong>注：</strong>自行处理配置变更可能导致备用资源的使用更为困难，因为系统不会为您自动应用这些资源。
+
+只能在您必须避免Activity因配置变更而重启这一万般无奈的情况下，才考虑采用自行处理配置变更这种方法，而且对于大多数应用并不建议使用此方法。
+</p>
+
+<p>要声明由 Activity 处理配置变更，请在清单文件中编辑相应的 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>
+元素，以包含 <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a>
+属性以及代表要处理的配置的值。<a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a>属性的文档中列出了该属性的可能值（最常用的值包括 {@code "orientation"}
+和
+{@code "keyboardHidden"}，分别用于避免因屏幕方向和可用键盘改变而导致重启）。您可以在该属性中声明多个配置值，方法是用管道
+{@code |} 字符分隔这些配置值。</p>
+
+<p>例如，以下清单文件代码声明的 Activity 可同时处理屏幕方向变更和键盘可用性变更：
+</p>
+
+<pre>
+&lt;activity android:name=".MyActivity"
+          android:configChanges="orientation|keyboardHidden"
+          android:label="@string/app_name">
+</pre>
+
+<p>现在，当其中一个配置发生变化时，{@code MyActivity} 不会重启。相反，{@code MyActivity}
+会收到对 {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} 的调用。向此方法传递
+{@link android.content.res.Configuration}
+对象指定新设备配置。您可以通过读取
+{@link android.content.res.Configuration}
+中的字段，确定新配置，然后通过更新界面中使用的资源进行适当的更改。调用此方法时，Activity 的
+{@link android.content.res.Resources}
+对象会相应地进行更新，以根据新配置返回资源，这样，您就能够在系统不重启 Activity 的情况下轻松重置
+UI 的元素。</p>
+
+<p class="caution"><strong>注意：</strong>从
+Android
+3.2（API 级别 13）开始，当设备在纵向和横向之间切换时，<strong>“屏幕尺寸”也会发生变化</strong>。因此，在开发针对
+API 级别 13 或更高版本系统的应用时，若要避免由于设备方向改变而导致运行时重启（正如 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> 和 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>
+属性中所声明），则除了 {@code
+"orientation"} 值以外，您还必须添加 {@code "screenSize"} 值。即，您必须声明 {@code
+android:configChanges="orientation|screenSize"}。但是，如果您的应用是面向 API 级别
+12 或更低版本的系统，则 Activity 始终会自行处理此配置变更（即便是在
+Android 3.2 或更高版本的设备上运行，此配置变更也不会重启 Activity）。</p>
+
+<p>例如，以下 {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} 实现
+检查当前设备方向：</p>
+
+<pre>
+&#64;Override
+public void onConfigurationChanged(Configuration newConfig) {
+    super.onConfigurationChanged(newConfig);
+
+    // Checks the orientation of the screen
+    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
+        Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
+    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
+        Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
+    }
+}
+</pre>
+
+<p>{@link android.content.res.Configuration}
+对象代表所有当前配置，而不仅仅是已经变更的配置。大多数时候，您并不在意配置具体发生了哪些变更，而且您可以轻松地重新分配所有资源，为您正在处理的配置提供备用资源。
+
+例如，由于 {@link
+android.content.res.Resources} 对象现已更新，因此您可以通过
+{@link android.widget.ImageView#setImageResource(int)
+setImageResource()}
+重置任何 {@link android.widget.ImageView}，并且使用适合于新配置的资源（如<a href="providing-resources.html#AlternateResources">提供资源</a>中所述）。</p>
+
+<p>请注意，{@link
+android.content.res.Configuration} 字段中的值是与
+{@link android.content.res.Configuration} 类中的特定常量匹配的整型数。有关要对每个字段使用哪些常量的文档，请参阅
+{@link
+android.content.res.Configuration} 参考文档中的相应字段。</p>
+
+<p class="note"><strong>请谨记：</strong>在声明由 Activity 处理配置变更时，您有责任重置要为其提供备用资源的所有元素。
+如果您声明由 Activity 处理方向变更，而且有些图像应该在横向和纵向之间切换，则必须在
+{@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}
+期间将每个资源重新分配给每个元素。</p>
+
+<p>如果无需基于这些配置变更更新应用，则可不用实现
+{@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}。<em></em>在这种情况下，仍将使用在配置变更之前用到的所有资源，只是您无需重启 Activity。
+
+但是，应用应该始终能够在保持之前状态完好的情况下关闭和重启，因此您不得试图通过此方法来逃避在正常 Activity 生命周期期间保持您的应用状态。
+
+这不仅仅是因为还存在其他一些无法禁止重启应用的配置变更，还因为有些事件必须由您处理，例如用户离开应用，而在用户返回应用之前该应用已被销毁。
+
+
+</p>
+
+<p>如需了解有关您可以在 Activity 中处理哪些配置变更的详细信息，请参阅 <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> 文档和 {@link android.content.res.Configuration}
+类。</p>
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/ui/controls.jd b/docs/html-intl/intl/zh-cn/guide/topics/ui/controls.jd
new file mode 100644
index 0000000..0f1a543
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/ui/controls.jd
@@ -0,0 +1,90 @@
+page.title=输入控件
+parent.title=用户界面
+parent.link=index.html
+@jd:body
+
+<div class="figure" style="margin:0">
+  <img src="{@docRoot}images/ui/ui-controls.png" alt="" style="margin:0" />
+</div>
+
+<p>输入控件是您的应用用户界面中的交互式组件。Android 提供了多种可在 UI 中使用的控件，如按钮、文本字段、定位栏、复选框、缩放按钮、切换按钮等。
+
+</p>
+
+<p>向 UI 中添加输入控件与向 <a href="{@docRoot}guide/topics/ui/declaring-layout.html">XML 布局</a>中添加 XML 元素一样简单。例如，以下是一个包含文本字段和按钮的布局：
+</p>
+
+<pre style="clear:right">
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+    android:orientation="horizontal">
+    &lt;EditText android:id="@+id/edit_message"
+        android:layout_weight="1"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:hint="@string/edit_message" />
+    &lt;Button android:id="@+id/button_send"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/button_send"
+        android:onClick="sendMessage" />
+&lt;/LinearLayout>
+</pre>
+
+<p>每个输入控件都支持一组特定的输入事件，以便您处理用户输入文本或触摸按钮等事件。
+</p>
+
+
+<h2 id="CommonControls">通用控件</h2>
+<p>以下列出了您可以在应用中使用的一些通用控件。点击链接可了解有关各控件用法的详情。
+</p>
+
+<p class="note"><strong>注：</strong>除了此处列出的控件外，Android 还提供了几种其他控件。
+浏览 {@link android.widget} 软件包可发现更多控件。如果您的应用需要特定类型的输入控件，则可以构建您自己的<a href="{@docRoot}guide/topics/ui/custom-components.html">自定义组件</a>。
+</p>
+
+<table>
+    <tr>
+        <th scope="col">控件类型</th>
+        <th scope="col">描述</th>
+	<th scope="col">相关类</th>
+    </tr>
+    <tr>
+        <td><a href="controls/button.html">按钮</a></td>
+        <td>可由用户按压或点击来执行操作的按钮。</td>
+	<td>{@link android.widget.Button Button} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/text.html">文本字段</a></td>
+        <td>一种可编辑的文本字段。您可以使用 <code>AutoCompleteTextView</code> 小工具创建提供自动完成建议的文本输入小工具</td>
+	<td>{@link android.widget.EditText EditText}、{@link android.widget.AutoCompleteTextView}</td>
+    </tr>
+    <tr>
+        <td><a href="controls/checkbox.html">复选框</a></td>
+        <td>可由用户切换的启用/禁用开关。您应该在向用户呈现一组不互斥的可选选项时使用复选框。</td>
+	<td>{@link android.widget.CheckBox CheckBox} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/radiobutton.html">单选按钮</a></td>
+        <td>与复选框类似，不同的是只能选择组中的一个选项。</td>
+	<td>{@link android.widget.RadioGroup RadioGroup} 
+	<br>{@link android.widget.RadioButton RadioButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/togglebutton.html" style="white-space:nowrap">切换按钮</a></td>
+        <td>一种具有指示灯的开/关按钮。</td>
+	<td>{@link android.widget.ToggleButton ToggleButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/spinner.html">微调框</a></td>
+        <td>一种允许用户从值集中选择一个值的下拉列表。</td>
+	<td>{@link android.widget.Spinner Spinner} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/pickers.html">选取器</a></td>
+        <td>一种供用户通过使用向上/向下按钮或轻扫手势选择值集中单个值的对话框。使用 <code>DatePicker</code> 小工具输入日期（月、日、年）值，或使用 <code>TimePicker</code> 小工具输入时间（小时、分钟、上午/下午）值，系统将根据用户的区域设置自动设置所输入内容的格式。</td>
+	<td>{@link android.widget.DatePicker}、{@link android.widget.TimePicker}</td>
+    </tr>
+</table>
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/ui/declaring-layout.jd b/docs/html-intl/intl/zh-cn/guide/topics/ui/declaring-layout.jd
new file mode 100644
index 0000000..38e534e
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/ui/declaring-layout.jd
@@ -0,0 +1,492 @@
+page.title=布局
+page.tags=view,viewgroup
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本文内容</h2>
+<ol>
+  <li><a href="#write">编写 XML</a></li>
+  <li><a href="#load">加载 XML 资源</a></li>
+  <li><a href="#attributes">属性</a>
+    <ol>
+      <li><a href="#id">ID</a></li>
+      <li><a href="#layout-params">布局参数</a></li>
+    </ol>
+  </li>
+  <li><a href="#Position">布局位置</a></li>
+  <li><a href="#SizePaddingMargins">尺寸、内边距和外边距</a></li>
+  <li><a href="#CommonLayouts">常见布局</a></li>
+  <li><a href="#AdapterViews">使用适配器构建布局</a>
+    <ol>
+      <li><a href="#FillingTheLayout">使用数据填充适配器视图</a></li>
+      <li><a href="#HandlingUserSelections">处理点击事件</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>关键类</h2>
+  <ol>
+    <li>{@link android.view.View}</li>
+    <li>{@link android.view.ViewGroup}</li>
+    <li>{@link android.view.ViewGroup.LayoutParams}</li>
+  </ol>
+
+  <h2>另请参阅</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/firstapp/building-ui.html">构建简单的用户界面</a>
+</li> </div>
+</div>
+
+<p>布局定义用户界面的视觉结构，如<a href="{@docRoot}guide/components/activities.html">Activity</a>或<a href="{@docRoot}guide/topics/appwidgets/index.html">应用小工具</a>的
+UI。您可以通过两种方式声明布局：</p>
+<ul>
+<li><strong>在 XML 中声明 UI 元素</strong>。Android 提供了对应于 View 类及其子类的简明 XML
+词汇，如用于小工具和布局的词汇；</li>
+<li><strong>运行时实例化布局元素</strong>。您的应用可以通过编程创建
+View 对象和 ViewGroup 对象（并操纵其属性）。 </li>
+</ul>
+
+<p>Android 框架让您可以灵活地使用以下一种或两种方法来声明和管理应用的 UI。例如，您可以在 XML 中声明应用的默认布局，包括将出现在布局中的屏幕元素及其属性。然后，您可以在应用中添加可在运行时修改屏幕对象（包括那些已在 XML 中声明的对象）状态的代码。 </p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <ul>
+  <li><a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT
+  Plugin for Eclipse</a> 提供了 XML 的布局预览&mdash;
+  在 XML 文件处于打开状态时选择 <strong>Layout</strong> 选项卡</li>
+  <li>您还应尝试使用<a href="{@docRoot}tools/debugging/debugging-ui.html#hierarchyViewer">层次结构查看器</a>工具来调试布局&mdash;当您在模拟器或设备上进行调试时，它会显示布局属性值、绘制具有内边距/外边距指示符的线框以及完整渲染视图。
+
+
+
+</li>
+  <li>您可以利用 <a href="{@docRoot}tools/debugging/debugging-ui.html#layoutopt">layoutopt</a> 工具快速分析布局和层次结构中是否存在低效环节或其他问题。
+</li>
+</div>
+</div>
+
+<p>在 XML 中声明 UI 的优点在于，您可以更好地将应用的外观与控制应用行为的代码隔离。您的 UI 描述位于应用代码外部，这意味着您在修改或调整描述时无需修改您的源代码并重新编译。例如，您可以创建适用于不同屏幕方向、不同设备屏幕尺寸和不同语言的 XML 布局。此外，在 XML 中声明布局还能更轻松地显示 UI 的结构，从而简化问题调试过程。因此，本文将侧重于示范如何在 XML 中声明布局。如果您对在运行时实例化 View
+对象感兴趣，请参阅 {@link android.view.ViewGroup} 类和
+{@link android.view.View} 类的参考资料。</p>
+
+<p>一般而言，用于声明 UI 元素的 XML 词汇严格遵循类和方法的结构和命名方式，其中元素名称对应于类名称，属性名称对应于方法。实际上，这种对应关系往往非常直接，让您可以猜到对应于类方法的 XML 属性，或对应于给定 XML 元素的类。但请注意，并非所有词汇都完全相同。在某些情况下，在命名上略有差异。例如，EditText 元素具有的
+<code>text</code> 属性对应的类方法是 <code>EditText.setText()</code>。
+ </p>
+
+<p class="note"><strong>提示</strong>：如需了解有关不同布局类型的更多信息，请参阅<a href="{@docRoot}guide/topics/ui/layout-objects.html">常见布局对象</a>。
+
+<a href="{@docRoot}resources/tutorials/views/index.html">Hello 视图</a>教程指南中也提供了一系列有关构建各种布局的教程。</p>
+
+<h2 id="write">编写 XML</h2>
+
+<p>您可以利用 Android 的 XML 词汇，按照在 HTML 中创建包含一系列嵌套元素的网页的相同方式快速设计 UI 布局及其包含的屏幕元素。 </p>
+
+<p>每个布局文件都必须只包含一个根元素，并且该元素必须是视图对象或 ViewGroup 对象。定义根元素之后，即可再以子元素的形式添加其他布局对象或小工具，从而逐步构建定义布局的视图层次结构。例如，以下这个 XML 布局使用垂直 {@link android.widget.LinearLayout}
+来储存一个 {@link android.widget.TextView} 和一个 {@link android.widget.Button}：</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="Hello, I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="Hello, I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>在 XML 中声明布局后，请在您的 Android 项目 <code>res/layout/</code> 目录中以 <code>.xml</code> 扩展名保存文件，以便其能够正确编译。
+ </p>
+
+<p><a href="{@docRoot}guide/topics/resources/layout-resource.html">布局资源</a>文档中提供了有关布局 XML 文件语法的更多信息。</p>
+
+<h2 id="load">加载 XML 资源</h2>
+
+<p>当您编译应用时，每个 XML 布局文件都会编译到一个
+{@link android.view.View} 资源中。您应该在
+{@link android.app.Activity#onCreate(android.os.Bundle) Activity.onCreate()}
+回调实现中从您的应用代码加载布局资源。请通过调用 <code>{@link android.app.Activity#setContentView(int) setContentView()}</code>，以
+<code>R.layout.<em>layout_file_name</em></code>
+形式向其传递对布局资源的引用来执行此操作。例如，如果您的
+XML 布局保存为
+<code>main_layout.xml</code>，则需要像下面这样为您的 Activity 加载该布局：</p>
+<pre>
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.main_layout);
+}
+</pre>
+
+<p>启动您的 Activity 时，Android
+框架会调用 Activity 中的
+<code>onCreate()</code>
+回调方法（请参阅<a href="{@docRoot}guide/components/activities.html#Lifecycle">Activity</a>文档中有关生命周期的阐述）。</p>
+
+
+<h2 id="attributes">属性</h2>
+
+<p>每个视图对象和 ViewGroup 对象都支持各自的各类 XML
+属性。某些属性是视图对象的专用属性（例如，TextView 支持 <code>textSize</code>
+属性），但这些属性也会被任何可以扩展此类的视图对象继承。某些属性通用于所有 View
+对象，因为它们继承自根 View 类（如 <code>id</code>
+属性）。此外，其他属性被视为“布局参数”，即描述 View
+对象特定布局方向的属性，如该对象的父 ViewGroup
+对象所定义的属性。</p>
+
+<h3 id="id">ID</h3>
+
+<p>任何视图对象都可能具有关联的整型 ID，此 ID 用于在结构树中对 View
+对象进行唯一标识。编译应用后，此 ID 将作为整型数引用，但在布局 XML
+文件中，通常会在 <code>id</code> 属性中为该 ID 赋予字符串值。这是所有
+View 对象共用的 XML 属性（由 {@link android.view.View}
+类定义），您会经常用到它。XML 标记内部的 ID
+语法是：</p>
+<pre>android:id="&#64;+id/my_button"</pre>
+
+<p>字符串开头处的 @ 符号指示 XML 解析程序应该解析并展开
+ID 字符串的其余部分，并将其标识为 ID 资源。加号 (+)
+表示这是一个新的资源名称，必须创建该名称并将其添加到我们的资源（在 <code>R.java</code> 文件中）内。Android 框架还提供了许多其他 ID
+资源。引用 Android 资源 ID 时，不需要加号，但必须添加
+<code>android</code> 软件包命名空间，如下所示：</p>
+<pre>android:id="&#64;android:id/empty"</pre>
+<p>添加 <code>android</code> 软件包命名空间之后，现在，我们将从 <code>android.R</code>
+资源类而非本地资源类引用 ID。</p>
+
+<p>要想创建视图并从应用中引用它们，常见的模式是：</p>
+<ol>
+  <li>在布局文件中定义一个视图/小工具，并为其分配一个唯一的 ID：
+<pre>
+&lt;Button android:id="&#64;+id/my_button"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="&#64;string/my_button_text"/>
+</pre>
+  </li>
+  <li>然后创建一个 view
+对象实例，并从布局中捕获它（通常使用 <code>{@link android.app.Activity#onCreate(Bundle) onCreate()}</code> 方法）：
+<pre>
+Button myButton = (Button) findViewById(R.id.my_button);
+</pre>
+  </li>
+</ol>
+<p>创建 {@link android.widget.RelativeLayout}
+时，为 view 对象定义 ID 非常重要。在相对布局中，同级视图可以定义其相对于其他同级视图的布局，同级视图通过唯一的 ID
+进行引用。</p>
+<p>ID
+不需要在整个结构树中具有唯一性，但在您要搜索的结构树部分应具有唯一性（要搜索的部分往往是整个结构树，因此最好尽可能具有全局唯一性）。
+</p>
+
+
+<h3 id="layout-params">布局参数</h3>
+
+<p>名为 <code>layout_<em>something</em></code> 的 XML
+布局属性可为视图定义与其所在的 ViewGroup 相适的布局参数。</p>
+
+<p>每个 ViewGroup 类都会实现一个扩展 {@link
+android.view.ViewGroup.LayoutParams} 的嵌套类。此子类包含的属性类型会根据需要为视图组的每个子视图定义尺寸和位置。
+
+正如您在图 1
+中所见，父视图组为每个子视图（包括子视图组）定义布局参数。</p>
+
+<img src="{@docRoot}images/layoutparams.png" alt="" />
+<p class="img-caption"><strong>图 1. </strong>以可视化方式表示的视图层次结构，其中包含与每个视图关联的布局参数。
+</p>
+
+<p>请注意，每个 LayoutParams
+子类都有自己的值设置语法。每个子元素都必须定义适合其父元素的
+LayoutParams，但父元素也可为其子元素定义不同的 LayoutParams。 </p>
+
+<p>所有视图组都包括宽度和高度（<code>layout_width</code> 和
+<code>layout_height</code>），并且每个视图都必须定义它们。许多
+LayoutParams 还包括可选的外边距和边框。 <p>
+
+<p>您可以指定具有确切尺寸的宽度和高度，但您多半不想经常这样做。
+在更多的情况下，您会使用以下常量之一来设置宽度或高度：
+ </p>
+
+<ul>
+  <li><var>wrap_content</var> 指示您的视图将其大小调整为内容所需的尺寸
+</li>
+  <li><var>match_parent</var> （在 API 级别 8 之前名为 <var>fill_parent</var> ）指示您的视图尽可能采用其父视图组所允许的最大尺寸
+</li>
+</ul>
+
+<p>一般而言，建议不要使用绝对单位（如像素）来指定布局宽度和高度，
+而是使用相对测量单位，如密度无关像素单位
+(<var>dp</var>)、 <var>wrap_content</var> 或
+<var>match_parent</var>，这种方法更好，因为它有助于确保您的应用在各类尺寸的设备屏幕上正确显示。<a href="{@docRoot}guide/topics/resources/available-resources.html#dimension">可用资源</a>文档中定义了可接受的测量单位类型。
+
+
+
+</p>
+
+
+<h2 id="Position">布局位置</h2>
+   <p>
+   视图的几何形状就是矩形的几何形状。视图具有一个位置（以一对<em>水平向左</em>和<em>垂直向上</em>坐标表示）和两个尺寸（以宽度和高度表示）。
+
+位置和尺寸的单位是像素。
+
+   </p>
+
+   <p>
+   可以通过调用方法
+   {@link android.view.View#getLeft()} 和方法 {@link android.view.View#getTop()} 来检索视图的位置。前者会返回表示视图的矩形的水平向左（或称 X 轴）
+ 坐标。后者会返回表示视图的矩形的垂直向上（或称 Y 轴）坐标。
+这些方法都会返回视图相对于其父项的位置。
+例如，如果 <code>getLeft()</code> 返回 20，则意味着视图位于其直接父项左边缘向右 20 个像素处。
+
+
+   </p>
+
+   <p>
+   此外，系统还提供了几种便捷方法来避免不必要的计算，即 {@link android.view.View#getRight()} 和 {@link android.view.View#getBottom()}。
+
+   这些方法会返回表示视图的矩形的右边缘和下边缘的坐标。
+例如，调用 {@link android.view.View#getRight()}
+   类似于进行以下计算：<code>getLeft() + getWidth()</code>。
+   </p>
+
+
+<h2 id="SizePaddingMargins">尺寸、内边距和外边距</h2>
+   <p>
+   视图的尺寸通过宽度和高度表示。视图实际上具有两对宽度和高度值。
+
+   </p>
+
+   <p>
+   第一对称为<em>测量宽度</em>和<em>测量高度</em>。
+这些尺寸定义视图想要在其父项内具有的大小。
+
+   这些测量尺寸可以通过调用 {@link android.view.View#getMeasuredWidth()}
+   和 {@link android.view.View#getMeasuredHeight()} 来获得。
+   </p>
+
+   <p>
+   第二对简称为<em>宽度</em>和<em>高度</em>，有时称为<em>绘制宽度</em>和<em>绘制高度</em>。
+这些尺寸定义视图在绘制时和布局后在屏幕上的实际尺寸。
+
+这些值可以（但不必）与测量宽度和测量高度不同。
+宽度和高度可以通过调用
+   {@link android.view.View#getWidth()} 和 {@link android.view.View#getHeight()} 来获得。
+   </p>
+
+   <p>
+   要想测量其尺寸，视图需要将其内边距考虑在内。内边距以视图左侧、顶部、右侧和底部各部分的像素数表示。
+
+   内边距可用于以特定数量的
+   像素弥补视图的内容。例如，左侧内边距为 2，会将视图的内容从左边缘向右推
+ 2 个像素。可以使用
+   {@link android.view.View#setPadding(int, int, int, int)} 方法设置内边距，并通过调用
+   {@link android.view.View#getPaddingLeft()}、{@link android.view.View#getPaddingTop()}、{@link android.view.View#getPaddingRight()} 和 {@link android.view.View#getPaddingBottom()} 进行查询。
+
+   </p>
+
+   <p>
+   尽管视图可以定义内边距，但它并不支持外边距。
+不过，视图组可以提供此类支持。如需了解更多信息，请参阅
+   {@link android.view.ViewGroup} 和
+   {@link android.view.ViewGroup.MarginLayoutParams}。
+   </p>
+
+   <p>如需了解有关尺寸的详细信息，请参阅
+   <a href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">尺寸值</a>。
+   </p>
+
+
+
+
+
+
+<style type="text/css">
+div.layout {
+  float:left;
+  width:200px;
+  margin:0 0 20px 20px;
+}
+div.layout.first {
+  margin-left:0;
+  clear:left;
+}
+</style>
+
+
+
+
+<h2 id="CommonLayouts">常见布局</h2>
+
+<p>{@link android.view.ViewGroup}
+类的每个子类都提供了一种独特的方式来显示您在其中嵌套的视图。以下是
+Android 平台中内置的一些较为常见的布局类型。</p>
+
+<p class="note"><strong>注：</strong>尽管您可以通过将一个或多个布局嵌套在另一个布局内来实现您的
+UI
+设计，但应该使您的布局层次结构尽可能简略。布局的嵌套布局越少，绘制速度越快（扁平的视图层次结构优于深层的视图层次结构）。
+</p>
+
+<!--
+<h2 id="framelayout">FrameLayout</h2>
+<p>{@link android.widget.FrameLayout FrameLayout} is the simplest type of layout
+object. It's basically a blank space on your screen that you can
+later fill with a single object &mdash; for example, a picture that you'll swap in and out.
+All child elements of the FrameLayout are pinned to the top left corner of the screen; you cannot
+specify a different location for a child view. Subsequent child views will simply be drawn over
+previous ones,
+partially or totally obscuring them (unless the newer object is transparent).
+</p>
+-->
+
+
+<div class="layout first">
+  <h4><a href="layout/linear.html">线性布局</a></h4>
+  <a href="layout/linear.html"><img src="{@docRoot}images/ui/linearlayout-small.png" alt="" /></a>
+  <p>一种使用单个水平行或垂直行来组织子项的布局。它会在窗口长度超出屏幕长度时创建一个滚动条。
+</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/relative.html">相对布局</a></h4>
+  <a href="layout/relative.html"><img src="{@docRoot}images/ui/relativelayout-small.png" alt="" /></a>
+  <p>让您能够指定子对象彼此之间的相对位置（子对象 A
+在子对象 B 左侧）或子对象与父对象的相对位置（与父对象顶部对齐）。</p>
+</div>
+
+<div class="layout">
+  <h4><a href="{@docRoot}guide/webapps/webview.html">Web 视图</a></h4>
+  <a href="{@docRoot}guide/webapps/webview.html"><img src="{@docRoot}images/ui/webview-small.png" alt="" /></a>
+  <p>显示网页。</p>
+</div>
+
+
+
+
+<h2 id="AdapterViews" style="clear:left">使用适配器构建布局</h2>
+
+<p>如果布局的内容是属于动态或未预先确定的内容，您可以使用这样一种布局：在运行时通过子类
+{@link android.widget.AdapterView} 用视图填充布局。{@link android.widget.AdapterView}
+类的子类使用 {@link android.widget.Adapter}
+将数据与其布局绑定。{@link android.widget.Adapter}
+充当数据源与 {@link android.widget.AdapterView}
+布局之间的中间人&mdash;{@link android.widget.Adapter}（从数组或数据库查询等来源）检索数据，并将每个条目转换为可以添加到 {@link android.widget.AdapterView}
+布局中的视图。</p>
+
+<p>适配器支持的常见布局包括：</p>
+
+<div class="layout first">
+  <h4><a href="layout/listview.html">列表视图</a></h4>
+  <a href="layout/listview.html"><img src="{@docRoot}images/ui/listview-small.png" alt="" /></a>
+  <p>显示滚动的单列列表。</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/gridview.html">网格视图</a></h4>
+  <a href="layout/gridview.html"><img src="{@docRoot}images/ui/gridview-small.png" alt="" /></a>
+  <p>显示滚动的行列网格。</p>
+</div>
+
+
+
+<h3 id="FillingTheLayout" style="clear:left">使用数据填充适配器视图</h3>
+
+<p>您可以通过将 {@link android.widget.AdapterView} 实例与 {@link android.widget.Adapter} 绑定来填充 {@link android.widget.AdapterView}（如 {@link android.widget.ListView} 或
+{@link android.widget.GridView}），此操作会从外部来源检索数据，并创建表示每个数据条目的
+{@link
+android.view.View}。</p>
+
+<p>Android 提供了几个 {@link android.widget.Adapter} 子类，用于检索不同种类的数据和构建
+{@link android.widget.AdapterView} 的视图。两种最常见的适配器是：
+</p>
+
+<dl>
+  <dt>{@link android.widget.ArrayAdapter}</dt>
+    <dd>请在数据源为数组时使用此适配器。默认情况下，{@link
+android.widget.ArrayAdapter} 会通过在每个项目上调用 {@link
+java.lang.Object#toString()} 并将内容放入 {@link
+android.widget.TextView} 来为每个数组项创建视图。
+      <p>例如，如果您具有想要在 {@link
+android.widget.ListView} 中显示的字符串数组，请使用构造函数初始化一个新的
+{@link android.widget.ArrayAdapter}，为每个字符串和字符串数组指定布局：</p>
+<pre>
+ArrayAdapter&lt;String> adapter = new ArrayAdapter&lt;String>(this,
+        android.R.layout.simple_list_item_1, myStringArray);
+</pre>
+<p>此构造函数的参数是：</p>
+<ul>
+  <li>您的应用 {@link android.content.Context}</li>
+  <li>包含数组中每个字符串的 {@link android.widget.TextView} 的布局</li>
+  <li>字符串数组</li>
+</ul>
+<p>然后，只需在您的 {@link android.widget.ListView} 上调用
+{@link android.widget.ListView#setAdapter setAdapter()}：</p>
+<pre>
+ListView listView = (ListView) findViewById(R.id.listview);
+listView.setAdapter(adapter);
+</pre>
+
+      <p>要想自定义每个项的外观，您可以重写数组中各个对象的 {@link
+java.lang.Object#toString()} 方法。或者，要想为
+{@link android.widget.TextView} 之外的每个项创建视图（例如，如果您想为每个数组项创建一个
+{@link android.widget.ImageView}），请扩展 {@link
+android.widget.ArrayAdapter} 类并重写 {@link android.widget.ArrayAdapter#getView
+getView()} 以返回您想要为每个项获取的视图类型。</p>
+
+</dd>
+
+  <dt>{@link android.widget.SimpleCursorAdapter}</dt>
+    <dd>请在数据来自 {@link android.database.Cursor} 时使用此适配器。使用
+{@link android.widget.SimpleCursorAdapter} 时，您必须指定要为 {@link android.database.Cursor}
+中的每个行使用的布局，以及应该在哪些布局视图中插入 {@link android.database.Cursor}
+中的哪些列。例如，如果您想创建人员姓名和电话号码列表，则可以执行一个返回
+{@link
+android.database.Cursor}（包含对应每个人的行，以及对应姓名和号码的列）的查询。
+然后，您可以创建一个字符串数组，指定您想要在每个结果的布局中包含 {@link
+android.database.Cursor}
+中的哪些列，并创建一个整型数组，指定应该将每个列放入的对应视图：</p>
+<pre>
+String[] fromColumns = {ContactsContract.Data.DISPLAY_NAME,
+                        ContactsContract.CommonDataKinds.Phone.NUMBER};
+int[] toViews = {R.id.display_name, R.id.phone_number};
+</pre>
+<p>当您实例化 {@link android.widget.SimpleCursorAdapter}
+时，请传递要用于每个结果的布局、包含结果的 {@link android.database.Cursor} 以及以下两个数组：</p>
+<pre>
+SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
+        R.layout.person_name_and_number, cursor, fromColumns, toViews, 0);
+ListView listView = getListView();
+listView.setAdapter(adapter);
+</pre>
+<p>然后，{@link android.widget.SimpleCursorAdapter} 会使用提供的布局，将每个
+{@code
+fromColumns} 项插入对应的 {@code toViews} 视图，为 {@link android.database.Cursor} 中的每个行创建一个视图。</p>.</dd>
+</dl>
+
+
+<p>如果您在应用的生命周期中更改了适配器读取的底层数据，则应调用
+{@link android.widget.ArrayAdapter#notifyDataSetChanged()}。此操作会通知附加的视图，数据发生了变化，它应该自行刷新。
+</p>
+
+
+
+<h3 id="HandlingUserSelections">处理点击事件</h3>
+
+<p>您可以通过实现 {@link android.widget.AdapterView.OnItemClickListener}
+界面来响应 {@link android.widget.AdapterView} 中每一项上的点击事件。例如：</p>
+
+<pre>
+// Create a message handling object as an anonymous class.
+private OnItemClickListener mMessageClickedHandler = new OnItemClickListener() {
+    public void onItemClick(AdapterView parent, View v, int position, long id) {
+        // Do something in response to the click
+    }
+};
+
+listView.setOnItemClickListener(mMessageClickedHandler);
+</pre>
+
+
+
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/ui/dialogs.jd b/docs/html-intl/intl/zh-cn/guide/topics/ui/dialogs.jd
new file mode 100644
index 0000000..84922b4
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/ui/dialogs.jd
@@ -0,0 +1,798 @@
+page.title=对话框
+page.tags=提醒对话框,对话框片段
+
+@jd:body
+
+
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>本文内容</h2>
+<ol>
+  <li><a href="#DialogFragment">创建对话框片段</a></li>
+  <li><a href="#AlertDialog">构建提醒对话框</a>
+    <ol>
+      <li><a href="#AddingButtons">添加按钮</a></li>
+      <li><a href="#AddingAList">添加列表</a></li>
+      <li><a href="#CustomLayout">创建自定义布局</a></li>
+    </ol>
+  </li>
+  <li><a href="#PassingEvents">将事件传递回对话框的宿主</a></li>
+  <li><a href="#ShowingADialog">显示对话框</a></li>
+  <li><a href="#FullscreenDialog">全屏显示对话框或将其显示为嵌入式片段</a>
+    <ol>
+      <li><a href="#ActivityAsDialog">将 Activity 显示为大屏幕上的对话框</a></li>
+    </ol>
+  </li>
+  <li><a href="#DismissingADialog">清除对话框</a></li>
+</ol>
+
+    <h2>关键类</h2>
+    <ol>
+      <li>{@link android.app.DialogFragment}</li>
+      <li>{@link android.app.AlertDialog}</li>
+    </ol>
+    
+    <h2>另请参阅</h2>
+    <ol>
+      <li><a href="{@docRoot}design/building-blocks/dialogs.html">对话框设计指南</a></li>
+      <li><a href="{@docRoot}guide/topics/ui/controls/pickers.html">选取器</a>（日期/时间对话框）</li>
+    </ol>
+  </div>
+</div>
+
+<p>对话框是提示用户作出决定或输入额外信息的小窗口。
+对话框不会填充屏幕，通常用于需要用户采取行动才能继续执行的模式事件。
+</p>
+
+<div class="note design">
+<p><strong>对话框设计</strong></p>
+  <p>如需了解有关如何设计对话框的信息（包括语言建议），请阅读<a href="{@docRoot}design/building-blocks/dialogs.html">对话框</a>设计指南。
+</p>
+</div>
+
+<img src="{@docRoot}images/ui/dialogs.png" />
+
+<p>{@link android.app.Dialog}
+类是对话框的基类，但您应该避免直接实例化
+{@link android.app.Dialog}，而是使用下列子类之一：</p>
+<dl>
+  <dt>{@link android.app.AlertDialog}</dt>
+  <dd>此对话框可显示标题、最多三个按钮、可选择项列表或自定义布局。
+</dd>
+  <dt>{@link android.app.DatePickerDialog} 或 {@link android.app.TimePickerDialog}</dt>
+  <dd>此对话框带有允许用户选择日期或时间的预定义 UI。</dd>
+</dl>
+
+<div class="sidebox">
+<h2>避免使用 ProgressDialog</h2>
+<p>Android 包括另一种名为
+{@link android.app.ProgressDialog} 的对话框类，可显示具有进度条的对话框。不过，如需指示加载进度或不确定的进度，则应改为遵循<a href="{@docRoot}design/building-blocks/progress.html">进度和 Activity</a>的设计指南，并在您的布局中使用
+{@link android.widget.ProgressBar}。
+
+</p>
+</div>
+
+<p>这些类定义您的对话框的样式和结构，但您应该将
+{@link android.support.v4.app.DialogFragment}
+用作对话框的容器。{@link android.support.v4.app.DialogFragment}
+类提供您创建对话框和管理其外观所需的所有控件，而不是调用 {@link android.app.Dialog}
+对象上的方法。</p>
+
+<p>使用 {@link android.support.v4.app.DialogFragment}
+管理对话框可确保它能正确处理生命周期事件，如用户按“返回”<em></em>按钮或旋转屏幕时。
+此外，{@link
+android.support.v4.app.DialogFragment} 类还允许您将对话框的 UI 作为嵌入式组件在较大 UI 中重复使用，就像传统 {@link
+android.support.v4.app.Fragment}
+一样（例如，当您想让对话框 UI
+在大屏幕和小屏幕上具有不同外观时）。</p>
+
+<p>本指南的后文将描述如何将 {@link
+android.support.v4.app.DialogFragment} 与 {@link android.app.AlertDialog}
+对象结合使用。如果您想创建一个日期或时间选取器，应改为阅读<a href="{@docRoot}guide/topics/ui/controls/pickers.html">选取器</a>指南。
+</p>
+
+<p class="note"><strong>注：</strong>由于
+{@link android.app.DialogFragment} 类最初是通过
+Android 3.0（API 11 级）添加的，因此本文描述的是如何使用<a href="{@docRoot}tools/support-library/index.html">支持库</a>附带的 {@link
+android.support.v4.app.DialogFragment} 类。通过将该库添加到您的应用，您可以在运行
+Android 1.6 或更高版本的设备上使用 {@link android.support.v4.app.DialogFragment} 以及各种其他
+API。如果您的应用支持的最低版本是
+API 11 级或更高版本，则可使用 {@link
+android.app.DialogFragment} 的框架版本，但请注意，本文中的链接适用于支持库
+API。使用支持库时，请确保您导入的是
+<code>android.support.v4.app.DialogFragment</code>
+类，而“绝对不”<em></em>是 <code>android.app.DialogFragment</code>。</p>
+
+
+<h2 id="DialogFragment">创建对话框片段</h2>
+
+<p>您可以完成各种对话框设计&mdash;包括自定义布局以及<a href="{@docRoot}design/building-blocks/dialogs.html">对话框</a>设计指南中描述的布局&mdash;通过扩展
+{@link android.support.v4.app.DialogFragment}
+并在
+{@link android.support.v4.app.DialogFragment#onCreateDialog
+onCreateDialog()}
+回调方法中创建 {@link android.app.AlertDialog}。</p>
+
+<p>例如，以下是一个在
+{@link android.support.v4.app.DialogFragment} 内管理的基础 {@link android.app.AlertDialog}：</p>
+
+<pre>
+public class FireMissilesDialogFragment extends DialogFragment {
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Use the Builder class for convenient dialog construction
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // FIRE ZE MISSILES!
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // User cancelled the dialog
+                   }
+               });
+        // Create the AlertDialog object and return it
+        return builder.create();
+    }
+}
+</pre>
+
+<div class="figure" style="width:290px;margin:0 0 0 20px">
+<img src="{@docRoot}images/ui/dialog_buttons.png" alt="" />
+<p class="img-caption"><strong>图 1. </strong>一个包含消息和两个操作按钮的对话框。
+</p>
+</div>
+
+<p>现在，当您创建此类的实例并调用该对象上的 {@link
+android.support.v4.app.DialogFragment#show show()} 时，对话框将如图
+1 所示。</p>
+
+<p>下文将详细描述如何使用 {@link android.app.AlertDialog.Builder}
+API 创建对话框。</p>
+
+<p>根据对话框的复杂程度，您可以在
+{@link android.support.v4.app.DialogFragment}
+中实现各种其他回调方法，包括所有基础 <a href="{@docRoot}guide/components/fragments.html#Lifecycle">片段生命周期方法</a>。
+
+
+
+
+
+<h2 id="AlertDialog">构建提醒对话框</h2>
+
+
+<p>您可以通过 {@link android.app.AlertDialog}
+类构建各种对话框设计，并且该类通常是您需要的唯一对话框类。如图 2
+所示，提醒对话框有三个区域：</p>
+
+<div class="figure" style="width:311px;margin-top:0">
+<img src="{@docRoot}images/ui/dialogs_regions.png" alt="" style="margin-bottom:0" />
+<p class="img-caption"><strong>图 2. </strong>对话框的布局。</p>
+</div>
+
+<ol>
+<li><b>标题</b>
+  <p>这是可选项，只应在内容区域被详细消息、列表或自定义布局占据时使用。
+如需陈述的是一条简单消息或问题（如图 1 中的对话框），则不需要标题。
+</li>
+<li><b>内容区域</b>
+  <p>它可以显示消息、列表或其他自定义布局。</p></li>
+<li><b>操作按钮</b>
+  <p>对话框中的操作按钮不应超过三个。</p></li>
+</ol>
+
+<p>{@link android.app.AlertDialog.Builder}
+类提供的 API 允许您创建具有这几种内容（包括自定义布局）的
+{@link android.app.AlertDialog}。</p>
+
+<p>要想构建 {@link android.app.AlertDialog}，请执行以下操作：</p>
+
+<pre>
+<b>// 1. Instantiate an {@link android.app.AlertDialog.Builder} with its constructor</b>
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+
+<b>// 2. Chain together various setter methods to set the dialog characteristics</b>
+builder.setMessage(R.string.dialog_message)
+       .setTitle(R.string.dialog_title);
+
+<b>// 3. Get the {@link android.app.AlertDialog} from {@link android.app.AlertDialog.Builder#create()}</b>
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>以下主题介绍如何使用
+{@link android.app.AlertDialog.Builder} 类定义各种对话框属性。</p>
+
+
+
+
+<h3 id="AddingButtons">添加按钮</h3>
+
+<p>要想添加如图 2
+所示的操作按钮，请调用 {@link android.app.AlertDialog.Builder#setPositiveButton setPositiveButton()} 和
+{@link android.app.AlertDialog.Builder#setNegativeButton setNegativeButton()} 方法：</p>
+
+<pre style="clear:right">
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+// Add the buttons
+builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User clicked OK button
+           }
+       });
+builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User cancelled the dialog
+           }
+       });
+// Set other dialog properties
+...
+
+// Create the AlertDialog
+AlertDialog dialog = builder.create();
+</pre>
+
+<p><code>set...Button()</code>
+方法需要一个按钮标题（由<a href="{@docRoot}guide/topics/resources/string-resource.html">字符串资源</a>提供）和一个
+{@link android.content.DialogInterface.OnClickListener}，后者用于定义用户按下该按钮时执行的操作。
+</p>
+
+<p>您可以添加三种不同的操作按钮：</p>
+<dl>
+  <dt>肯定</dt>
+  <dd>您应该使用此按钮来接受并继续执行操作（“确定”操作）。</dd>
+  <dt>否定</dt>
+  <dd>您应该使用此按钮来取消操作。</dd>
+  <dt>中性</dt>
+  <dd>您应该在用户可能不想继续执行操作，但也不一定想要取消操作时使用此按钮。
+它出现在肯定按钮和否定按钮之间。
+例如，实际操作可能是“稍后提醒我”。</dd> 
+</dl>
+
+<p>对于每种按钮类型，您只能为 {@link
+android.app.AlertDialog} 添加一个该类型的按钮。也就是说，您不能添加多个“肯定”按钮。</p>
+
+
+
+<div class="figure" style="width:290px;margin:0 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_list.png" alt="" />
+<p class="img-caption"><strong>图 3. </strong>一个包含标题和列表的对话框。
+</p>
+</div>
+
+<h3 id="AddingAList">添加列表</h3>
+
+<p>可通过 {@link android.app.AlertDialog} API 提供三种列表：</p>
+<ul>
+<li>传统单选列表</li>
+<li>永久性单选列表（单选按钮）</li>
+<li>永久性多选列表（复选框）</li>
+</ul>
+
+<p>要想创建如图 3 所示的单选列表，请使用
+{@link android.app.AlertDialog.Builder#setItems setItems()} 方法：</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    builder.setTitle(R.string.pick_color)
+           .setItems(R.array.colors_array, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int which) {
+               // The 'which' argument contains the index position
+               // of the selected item
+           }
+    });
+    return builder.create();
+}
+</pre>
+
+<p>由于列表出现在对话框的内容区域，因此对话框无法同时显示消息和列表，您应该通过
+{@link android.app.AlertDialog.Builder#setTitle setTitle()}
+为对话框设置标题。要想指定列表项，请调用
+{@link
+android.app.AlertDialog.Builder#setItems setItems()} 来传递一个数组。或者，您也可以使用
+{@link
+android.app.AlertDialog.Builder#setAdapter setAdapter()} 指定一个列表。这样一来，您就可以使用 {@link android.widget.ListAdapter}
+以动态数据（如来自数据库的数据）支持列表。</p>
+
+<p>如果您选择通过 {@link android.widget.ListAdapter}
+支持列表，请务必使用
+{@link android.support.v4.content.Loader}，以便内容以异步方式加载。<a href="{@docRoot}guide/topics/ui/declaring-layout.html#AdapterViews">使用适配器构建布局</a>和<a href="{@docRoot}guide/components/loaders.html">加载程序</a>指南中对此做了进一步描述。
+
+
+</p>
+
+<p class="note"><strong>注：</strong>默认情况下，触摸列表项会清除对话框，除非您使用的是下列其中一种永久性选择列表。
+</p>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_checkboxes.png" />
+<p class="img-caption"><strong>图 4. </strong>
+多选项列表。</p>
+</div>
+
+
+<h4 id="Checkboxes">添加永久性多选列表或单选列表</h4>
+
+<p>要想添加多选项（复选框）或单选项（单选按钮）列表，请分别使用 
+{@link android.app.AlertDialog.Builder#setMultiChoiceItems(Cursor,String,String,
+DialogInterface.OnMultiChoiceClickListener) setMultiChoiceItems()} 或 
+{@link android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()}
+方法。</p>
+
+<p>例如，以下示例展示了如何创建如图 4
+所示的多选列表，将选定项保存在一个
+{@link java.util.ArrayList} 中：</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    mSelectedItems = new ArrayList();  // Where we track the selected items
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Set the dialog title
+    builder.setTitle(R.string.pick_toppings)
+    // Specify the list array, the items to be selected by default (null for none),
+    // and the listener through which to receive callbacks when items are selected
+           .setMultiChoiceItems(R.array.toppings, null,
+                      new DialogInterface.OnMultiChoiceClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int which,
+                       boolean isChecked) {
+                   if (isChecked) {
+                       // If the user checked the item, add it to the selected items
+                       mSelectedItems.add(which);
+                   } else if (mSelectedItems.contains(which)) {
+                       // Else, if the item is already in the array, remove it 
+                       mSelectedItems.remove(Integer.valueOf(which));
+                   }
+               }
+           })
+    // Set the action buttons
+           .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // User clicked OK, so save the mSelectedItems results somewhere
+                   // or return them to the component that opened the dialog
+                   ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   ...
+               }
+           });
+
+    return builder.create();
+}
+</pre>
+
+<p>尽管传统列表和具有单选按钮的列表都能提供“单选”操作，但如果您想持久保存用户的选择，则应使用
+{@link
+android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()}。也就是说，如果稍后再次打开对话框时系统应指示用户的当前选择，那么您就需要创建一个具有单选按钮的列表。
+
+</p>
+
+
+
+
+
+<h3 id="CustomLayout">创建自定义布局</h3>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_custom.png" alt="" />
+<p class="img-caption"><strong>图 5. </strong>自定义对话框布局。</p>
+</div>
+
+<p>如果您想让对话框具有自定义布局，请创建一个布局，然后通过调用
+{@link
+android.app.AlertDialog.Builder} 对象上的 {@link
+android.app.AlertDialog.Builder#setView setView()} 将其添加到 {@link android.app.AlertDialog}。</p>
+
+<p>默认情况下，自定义布局会填充对话框窗口，但您仍然可以使用
+{@link android.app.AlertDialog.Builder} 方法来添加按钮和标题。</p>
+
+<p>例如，以下是图 5 中对话框的布局文件：</p>
+
+<p style="clear:right" class="code-caption">res/layout/dialog_signin.xml</p>
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content">
+    &lt;ImageView
+        android:src="@drawable/header_logo"
+        android:layout_width="match_parent"
+        android:layout_height="64dp"
+        android:scaleType="center"
+        android:background="#FFFFBB33"
+        android:contentDescription="@string/app_name" />
+    &lt;EditText
+        android:id="@+id/username"
+        android:inputType="textEmailAddress"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="16dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="4dp"
+        android:hint="@string/username" />
+    &lt;EditText
+        android:id="@+id/password"
+        android:inputType="textPassword"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="4dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="16dp"
+        android:fontFamily="sans-serif"
+        android:hint="@string/password"/>
+&lt;/LinearLayout>
+</pre>
+
+<p class="note"><strong>提示</strong>：默认情况下，当您将 {@link android.widget.EditText}
+元素设置为使用 {@code "textPassword"}
+输入类型时，字体系列将设置为固定宽度。因此，您应该将其字体系列更改为
+{@code "sans-serif"}，以便两个文本字段都使用匹配的字体样式。</p>
+
+<p>要扩展 {@link android.support.v4.app.DialogFragment}
+中的布局，请通过 {@link android.app.Activity#getLayoutInflater()} 
+获取一个 {@link android.view.LayoutInflater} 并调用
+{@link android.view.LayoutInflater#inflate inflate()}，其中第一个参数是布局资源
+ID，第二个参数是布局的父视图。然后，您可以调用
+{@link android.app.AlertDialog#setView setView()}
+将布局放入对话框。</p>
+
+<pre>
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Get the layout inflater
+    LayoutInflater inflater = getActivity().getLayoutInflater();
+
+    // Inflate and set the layout for the dialog
+    // Pass null as the parent view because its going in the dialog layout
+    builder.setView(inflater.inflate(R.layout.dialog_signin, null))
+    // Add action buttons
+           .setPositiveButton(R.string.signin, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // sign in the user ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int id) {
+                   LoginDialogFragment.this.getDialog().cancel();
+               }
+           });      
+    return builder.create();
+}
+</pre>
+
+<div class="note">
+<p><strong>提示</strong>：如果您想要自定义对话框，可以改用对话框的形式显示 {@link android.app.Activity}，而不是使用 {@link android.app.Dialog}
+API。
+只需创建一个 Activity，并在
+<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> 清单文件元素中将其主题设置为
+{@link android.R.style#Theme_Holo_Dialog Theme.Holo.Dialog}：</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.Dialog" >
+</pre>
+<p>就这么简单。Activity 现在会显示在一个对话框窗口中，而非全屏显示。</p>
+</div>
+
+
+
+<h2 id="PassingEvents">将事件传回给对话框的宿主</h2>
+
+<p>当用户触摸对话框的某个操作按钮或从列表中选择某一项时，您的
+{@link android.support.v4.app.DialogFragment}
+可能会自行执行必要的操作，但通常您想将事件传递给打开该对话框的 Activity 或片段。
+为此，请定义一个界面，为每种点击事件定义一种方法。然后在从该对话框接收操作事件的宿主组件中实现该界面。
+
+</p>
+
+<p>例如，以下 {@link android.support.v4.app.DialogFragment}
+定义了一个界面，通过该界面将事件传回给宿主 Activity：</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    
+    /* The activity that creates an instance of this dialog fragment must
+     * implement this interface in order to receive event callbacks.
+     * Each method passes the DialogFragment in case the host needs to query it. */
+    public interface NoticeDialogListener {
+        public void onDialogPositiveClick(DialogFragment dialog);
+        public void onDialogNegativeClick(DialogFragment dialog);
+    }
+    
+    // Use this instance of the interface to deliver action events
+    NoticeDialogListener mListener;
+    
+    // Override the Fragment.onAttach() method to instantiate the NoticeDialogListener
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        // Verify that the host activity implements the callback interface
+        try {
+            // Instantiate the NoticeDialogListener so we can send events to the host
+            mListener = (NoticeDialogListener) activity;
+        } catch (ClassCastException e) {
+            // The activity doesn't implement the interface, throw exception
+            throw new ClassCastException(activity.toString()
+                    + " must implement NoticeDialogListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>对话框的宿主 Activity 会通过对话框片段的构造函数创建一个对话框实例，并通过实现的
+{@code NoticeDialogListener}
+界面接收对话框的事件：</p>
+
+<pre>
+public class MainActivity extends FragmentActivity
+                          implements NoticeDialogFragment.NoticeDialogListener{
+    ...
+    
+    public void showNoticeDialog() {
+        // Create an instance of the dialog fragment and show it
+        DialogFragment dialog = new NoticeDialogFragment();
+        dialog.show(getSupportFragmentManager(), "NoticeDialogFragment");
+    }
+
+    // The dialog fragment receives a reference to this Activity through the
+    // Fragment.onAttach() callback, which it uses to call the following methods
+    // defined by the NoticeDialogFragment.NoticeDialogListener interface
+    &#64;Override
+    public void onDialogPositiveClick(DialogFragment dialog) {
+        // User touched the dialog's positive button
+        ...
+    }
+
+    &#64;Override
+    public void onDialogNegativeClick(DialogFragment dialog) {
+        // User touched the dialog's negative button
+        ...
+    }
+}
+</pre>
+
+<p>由于宿主 Activity 会实现
+{@code NoticeDialogListener}&mdash;由以上显示的
+{@link android.support.v4.app.Fragment#onAttach onAttach()}
+回调方法强制执行 &mdash; 因此对话框片段可以使用界面回调方法向 Activity 传递点击事件：</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    ...
+
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Build the dialog and set up the button click handlers
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the positive button event back to the host activity
+                       mListener.onDialogPositiveClick(NoticeDialogFragment.this);
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the negative button event back to the host activity
+                       mListener.onDialogNegativeClick(NoticeDialogFragment.this);
+                   }
+               });
+        return builder.create();
+    }
+}
+</pre>
+
+
+
+<h2 id="ShowingADialog">显示对话框</h2>
+
+<p>如果您想显示对话框，请创建一个 {@link
+android.support.v4.app.DialogFragment} 实例并调用 {@link android.support.v4.app.DialogFragment#show
+show()}，以传递对话框片段的 {@link android.support.v4.app.FragmentManager}
+和标记名称。</p>
+
+<p>您可以通过从 {@link android.support.v4.app.FragmentActivity}
+调用 {@link android.support.v4.app.FragmentActivity#getSupportFragmentManager()} 或从
+{@link
+android.support.v4.app.Fragment} 调用 {@link
+android.support.v4.app.Fragment#getFragmentManager()} 来获取 {@link android.support.v4.app.FragmentManager}。例如：</p>
+
+<pre>
+public void confirmFireMissiles() {
+    DialogFragment newFragment = new FireMissilesDialogFragment();
+    newFragment.show(getSupportFragmentManager(), "missiles");
+}
+</pre>
+
+<p>第二个参数 {@code "missiles"}
+是系统用于保存片段状态并在必要时进行恢复的唯一标记名称。该标记还允许您通过调用
+{@link android.support.v4.app.FragmentManager#findFragmentByTag
+findFragmentByTag()} 获取片段的句柄。</p>
+
+
+
+
+<h2 id="FullscreenDialog">全屏显示对话框或将其显示为嵌入式片段</h2>
+
+<p>您可能采用以下 UI
+设计：您想让一部分 UI
+在某些情况下显示为对话框，但在其他情况下全屏显示或显示为嵌入式片段（也许取决于设备使用大屏幕还是小屏幕）。{@link android.support.v4.app.DialogFragment}
+类便具有这种灵活性，因为它仍然可以充当嵌入式 {@link
+android.support.v4.app.Fragment}。</p>
+
+<p>但在这种情况下，您不能使用 {@link android.app.AlertDialog.Builder AlertDialog.Builder}
+或其他 {@link android.app.Dialog} 对象来构建对话框。如果您想让 {@link android.support.v4.app.DialogFragment}
+具有嵌入能力，则必须在布局中定义对话框的
+UI，然后在
+{@link android.support.v4.app.DialogFragment#onCreateView
+onCreateView()} 回调中加载布局。</p>
+
+<p>以下示例 {@link android.support.v4.app.DialogFragment} 可以显示为对话框或嵌入式片段（使用名为
+<code>purchase_items.xml</code> 的布局）：</p>
+
+<pre>
+public class CustomDialogFragment extends DialogFragment {
+    /** The system calls this to get the DialogFragment's layout, regardless
+        of whether it's being displayed as a dialog or an embedded fragment. */
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        // Inflate the layout to use as dialog or embedded fragment
+        return inflater.inflate(R.layout.purchase_items, container, false);
+    }
+  
+    /** The system calls this only when creating the layout in a dialog. */
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // The only reason you might override this method when using onCreateView() is
+        // to modify any dialog characteristics. For example, the dialog includes a
+        // title by default, but your custom layout might not need it. So here you can
+        // remove the dialog title, but you must call the superclass to get the Dialog.
+        Dialog dialog = super.onCreateDialog(savedInstanceState);
+        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
+        return dialog;
+    }
+}
+</pre>
+
+<p>以下代码可根据屏幕尺寸决定将片段显示为对话框还是全屏
+UI：</p>
+
+<pre>
+public void showDialog() {
+    FragmentManager fragmentManager = getSupportFragmentManager();
+    CustomDialogFragment newFragment = new CustomDialogFragment();
+    
+    if (mIsLargeLayout) {
+        // The device is using a large layout, so show the fragment as a dialog
+        newFragment.show(fragmentManager, "dialog");
+    } else {
+        // The device is smaller, so show the fragment fullscreen
+        FragmentTransaction transaction = fragmentManager.beginTransaction();
+        // For a little polish, specify a transition animation
+        transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
+        // To make it fullscreen, use the 'content' root view as the container
+        // for the fragment, which is always the root view for the activity
+        transaction.add(android.R.id.content, newFragment)
+                   .addToBackStack(null).commit();
+    }
+}
+</pre>
+
+<p>如需了解有关执行片段事务的详细信息，请参阅<a href="{@docRoot}guide/components/fragments.html">片段</a>指南。
+</p>
+
+<p>在本示例中，<code>mIsLargeLayout</code>
+布尔值指定当前设备是否应该使用应用的大布局设计（进而将此片段显示为对话框，而不是全屏显示）。
+设置这种布尔值的最佳方法是声明一个<a href="{@docRoot}guide/topics/resources/more-resources.html#Bool">布尔资源值</a>，其中包含适用于不同屏幕尺寸的<a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">备用资源</a>值。
+
+例如，以下两个版本的布尔资源适用于不同的屏幕尺寸：
+</p>
+
+<p class="code-caption">res/values/bools.xml</p>
+<pre>
+&lt;!-- Default boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">false&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p class="code-caption">res/values-large/bools.xml</p>
+<pre>
+&lt;!-- Large screen boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">true&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p>然后，您可以在 Activity 的
+{@link android.app.Activity#onCreate onCreate()} 方法执行期间初始化 {@code mIsLargeLayout} 值：</p>
+
+<pre>
+boolean mIsLargeLayout;
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_main);
+
+    mIsLargeLayout = getResources().getBoolean(R.bool.large_layout);
+}
+</pre>
+
+
+
+<h3 id="ActivityAsDialog">在大屏幕上将 Activity 显示为对话框</h3>
+
+<p>相对于在小屏幕上将对话框显示为全屏
+UI，您可以通过在大屏幕上将 {@link android.app.Activity}
+显示为对话框来达到相同的效果。您选择的方法取决于应用设计，但当应用已经针对小屏幕进行设计，而您想要通过将短生存期 Activity 显示为对话框来改善平板电脑体验时，将 Activity 显示为对话框往往很有帮助。
+
+
+</p>
+
+<p>要想仅在大屏幕上将 Activity 显示为对话框，请将
+{@link android.R.style#Theme_Holo_DialogWhenLarge Theme.Holo.DialogWhenLarge}
+主题应用于 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> 清单文件元素：</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.DialogWhenLarge" >
+</pre>
+
+<p>如需了解有关通过主题设置 Activity 样式的详细信息，请参阅<a href="{@docRoot}guide/topics/ui/themes.html">样式和主题</a>指南。</p>
+
+
+
+<h2 id="DismissingADialog">清除对话框</h2>
+
+<p>当用户触摸使用
+{@link android.app.AlertDialog.Builder} 创建的任何操作按钮时，系统会为您清除对话框。</p>
+
+<p>系统还会在用户触摸某个对话框列表项时清除对话框，但列表使用单选按钮或复选框时除外。
+否则，您可以通过在 {@link
+android.support.v4.app.DialogFragment} 上调用
+{@link android.support.v4.app.DialogFragment#dismiss()} 来手动清除对话框。</p>
+
+<p>如需在对话框消失时执行特定操作，则可以在您的
+{@link
+android.support.v4.app.DialogFragment} 中实现 {@link
+android.support.v4.app.DialogFragment#onDismiss onDismiss()} 方法。</p>
+
+<p>您还可以<em>取消</em>对话框。这是一个特殊事件，它表示用户显式离开对话框，而不完成任务。
+如果用户按“返回”<em></em>按钮，触摸对话框区域外部的屏幕，或者您在 {@link
+android.app.Dialog} 上显式调用 {@link android.app.Dialog#cancel()}（例如，为了响应对话框中的“取消”按钮），就会发生这种情况。
+
+</p>
+
+<p>如上例所示，您可以通过在您的 {@link
+android.support.v4.app.DialogFragment} 中实现
+{@link android.support.v4.app.DialogFragment#onCancel onCancel()} 来响应取消事件。</p>
+
+<p class="note"><strong>注：</strong>系统会在每个调用 {@link android.support.v4.app.DialogFragment#onCancel onCancel()}
+回调的事件发生时立即调用
+{@link android.support.v4.app.DialogFragment#onDismiss onDismiss()}。不过，如果您调用 {@link android.app.Dialog#dismiss Dialog.dismiss()} 或
+{@link
+android.support.v4.app.DialogFragment#dismiss DialogFragment.dismiss()}，系统会调用
+{@link android.support.v4.app.DialogFragment#onDismiss onDismiss()}，“而绝不会”调用<em></em>
+{@link android.support.v4.app.DialogFragment#onCancel onCancel()}。因此，当用户在对话框中按“肯定”<em></em>按钮，从视图中移除对话框时，您通常应该调用
+{@link android.support.v4.app.DialogFragment#dismiss dismiss()}。
+</p>
+
+
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/ui/menus.jd b/docs/html-intl/intl/zh-cn/guide/topics/ui/menus.jd
new file mode 100644
index 0000000..b77f3bf
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/ui/menus.jd
@@ -0,0 +1,1031 @@
+page.title=菜单
+parent.title=用户界面
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本文内容</h2>
+<ol>
+  <li><a href="#xml">使用 XML 定义菜单</a></li>
+  <li><a href="#options-menu">创建选项菜单</a>
+    <ol>
+      <li><a href="#RespondingOptionsMenu">处理点击事件</a></li>
+      <li><a href="#ChangingTheMenu">在运行时更改菜单项</a></li>
+    </ol>
+  </li>
+  <li><a href="#context-menu">创建上下文菜单</a>
+    <ol>
+      <li><a href="#FloatingContextMenu">创建浮动上下文菜单</a></li>
+      <li><a href="#CAB">使用上下文操作模式</a></li>
+    </ol>
+  </li>
+  <li><a href="#PopupMenu">创建弹出菜单</a>
+    <ol>
+      <li><a href="#PopupEvents">处理点击事件</a></li>
+    </ol>
+  </li>
+  <li><a href="#groups">创建菜单组</a>
+    <ol>
+      <li><a href="#checkable">使用可选中的菜单项</a></li>
+    </ol>
+  </li>
+  <li><a href="#intents">添加基于 Intent 的菜单项</a>
+    <ol>
+      <li><a href="#AllowingToAdd">允许将 Activity 添加到其他菜单中</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>关键类</h2>
+  <ol>
+    <li>{@link android.view.Menu}</li>
+    <li>{@link android.view.MenuItem}</li>
+    <li>{@link android.view.ContextMenu}</li>
+    <li>{@link android.view.ActionMode}</li>
+  </ol>
+
+  <h2>另请参阅</h2>
+  <ol>
+    <li><a href="{@docRoot}guide/topics/ui/actionbar.html">操作栏</a></li>
+    <li><a href="{@docRoot}guide/topics/resources/menu-resource.html">菜单资源</a></li>
+    <li><a href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">从此告别菜单按钮</a>
+</li>
+  </ol>
+</div>
+</div>
+
+<p>菜单是许多应用中常见的用户界面组件。要提供熟悉而一致的用户体验，您应使用 {@link android.view.Menu} API
+呈现 Activity 中的用户操作和其他选项。
+</p>
+
+<p>从
+Android 3.0（API 级别 11）开始，采用 Android 技术的设备不必再提供一个专用“菜单”按钮。<em></em>随着这种改变，Android
+应用需摆脱对包含
+6 个项目的传统菜单面板的依赖，取而代之的是要提供一个操作栏来呈现常见的用户操作。</p>
+
+<p>尽管某些菜单项的设计和用户体验已发生改变，但定义一系列操作和选项所使用的语义仍是以
+{@link android.view.Menu} API 为基础。本指南将介绍所有
+Android 版本系统中三种基本菜单或操作呈现效果的创建方法：
+</p>
+
+<dl>
+  <dt><strong>选项菜单和操作栏</strong></dt>
+    <dd><a href="#options-menu">选项菜单</a>是某个 Activity 的主菜单项，
+供您放置对应用产生全局影响的操作，如“搜索”、“撰写电子邮件”和“设置”。
+
+  <p>如果您的应用是针对
+Android 2.3 或更低版本的系统而开发，则用户可以通过按“菜单”按钮显示选项菜单面板。<em></em></p>
+  <p>在
+Android 3.0 及更高版本的系统中，<a href="{@docRoot}guide/topics/ui/actionbar.html">操作栏</a>以屏幕操作项和溢出选项的组合形式呈现选项菜单中的各项。从 Android 3.0 开始，“菜单”按钮已弃用（某些设备没有该按钮），因此您应改为使用操作栏，来提供对操作和其他选项的访问。<em></em>
+
+
+</p>
+  <p>请参阅<a href="#options-menu">创建选项菜单</a>部分。</p>
+    </dd>
+    
+  <dt><strong>上下文菜单和上下文操作模式</strong></dt>
+  
+   <dd>上下文菜单是用户长按某一元素时出现的<a href="#FloatingContextMenu">浮动菜单</a>。
+它提供的操作将影响所选内容或上下文框架。
+
+  <p>开发针对 Android 3.0 及更高版本系统的应用时，您应改为使用<a href="#CAB">上下文操作模式</a>，以便对所选内容启用操作。此模式在屏幕顶部栏显示影响所选内容的操作项目，并允许用户选择多项。
+
+</p>
+  <p>请参阅<a href="#context-menu">创建上下文菜单</a>部分。</p>
+</dd>
+    
+  <dt><strong>弹出菜单</strong></dt>
+    <dd>弹出菜单将以垂直列表形式显示一系列项目，这些项目将锚定到调用该菜单的视图中。
+它特别适用于提供与特定内容相关的大量操作，或者为命令的另一部分提供选项。
+弹出菜单中的操作<strong>不会</strong>直接影响对应的内容，而上下文操作则会影响。
+
+相反，弹出菜单适用于与您 Activity 中的内容区域相关的扩展操作。
+
+  <p>请参阅<a href="#PopupMenu">创建弹出菜单</a>部分。</p>
+</dd>
+</dl>
+
+
+
+<h2 id="xml">使用 XML 定义菜单</h2>
+
+<p>对于所有菜单类型，Android
+提供了标准的 XML 格式来定义菜单项。您应在
+XML <a href="{@docRoot}guide/topics/resources/menu-resource.html">菜单资源</a>中定义菜单及其所有项，而不是在 Activity 的代码中构建菜单。定义后，您可以在 Activity 或片段中扩充菜单资源（将其作为
+{@link android.view.Menu}
+对象加载）。</p>
+
+<p>使用菜单资源是一种很好的做法，原因如下：</p>
+<ul>
+  <li>更易于使用 XML 可视化菜单结构</li>
+  <li>将菜单内容与应用的行为代码分离</li>
+  <li>允许您利用<a href="{@docRoot}guide/topics/resources/index.html">应用资源</a>框架，为不同的平台版本、屏幕尺寸和其他配置创建备用菜单配置
+</li>
+</ul>
+
+<p>要定义菜单，请在项目 <code>res/menu/</code>
+目录内创建一个 XML 文件，并使用以下元素构建菜单：</p>
+<dl>
+  <dt><code>&lt;menu></code></dt>
+    <dd>定义 {@link android.view.Menu}，即菜单项的容器。<code>&lt;menu></code>
+元素必须是该文件的根节点，并且能够包含一个或多个
+<code>&lt;item></code> 和 <code>&lt;group></code> 元素。</dd>
+
+  <dt><code>&lt;item></code></dt>
+    <dd>创建 {@link android.view.MenuItem}，此元素表示菜单中的一项，可能包含嵌套的 <code>&lt;menu></code>
+元素，以便创建子菜单。</dd>
+    
+  <dt><code>&lt;group></code></dt>
+    <dd>{@code &lt;item&gt;} 元素的不可见容器（可选）。它支持您对菜单项进行分类，使其共享活动状态和可见性等属性。
+如需了解详细信息，请参阅<a href="#groups">创建菜单组</a>部分。
+</dd>
+</dl>
+
+
+<p>以下是名为 <code>game_menu.xml</code> 的菜单示例：</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/new_game"
+          android:icon="@drawable/ic_new_game"
+          android:title="@string/new_game"
+          android:showAsAction="ifRoom"/&gt;
+    &lt;item android:id="@+id/help"
+          android:icon="@drawable/ic_help"
+          android:title="@string/help" /&gt;
+&lt;/menu&gt;
+</pre>
+
+<p><code>&lt;item></code>
+元素支持多个属性，您可使用这些属性定义项目的外观和行为。上述菜单中的项目包括以下属性：</p>
+
+<dl>
+  <dt>{@code android:id}</dt>
+    <dd>项目特有的资源
+ID，让应用能够在用户选择项目时识别该项目。</dd>
+  <dt>{@code android:icon}</dt>
+    <dd>引用一个要用作项目图标的 Drawable 类。</dd>
+  <dt>{@code android:title}</dt>
+    <dd>引用一个要用作项目标题的字符串。</dd>
+  <dt>{@code android:showAsAction}</dt>
+    <dd>指定此项应作为操作项目显示在<a href="{@docRoot}guide/topics/ui/actionbar.html">操作栏</a>中的时间和方式。</dd>
+</dl>
+
+<p>这些是您应使用的最重要属性，但还有许多其他属性。有关所有受支持属性的信息，请参阅<a href="{@docRoot}guide/topics/resources/menu-resource.html">菜单资源</a>文档。
+</p>
+
+<p>您可以通过以 {@code &lt;item&gt;}
+子元素的形式添加 {@code &lt;menu&gt;} 元素，向任何菜单（子菜单除外）中的某个菜单项添加子菜单。当应用具有大量可按主题进行组织的功能时，类似于 PC 应用程序菜单栏中的菜单项（“文件”、“编辑”、“视图”等），子菜单非常有用。
+
+例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/file"
+          android:title="@string/file" &gt;
+        &lt;!-- "file" submenu --&gt;
+        &lt;menu&gt;
+            &lt;item android:id="@+id/create_new"
+                  android:title="@string/create_new" /&gt;
+            &lt;item android:id="@+id/open"
+                  android:title="@string/open" /&gt;
+        &lt;/menu&gt;
+    &lt;/item&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>要在 Activity 中使用菜单，您需要使用 {@link android.view.MenuInflater#inflate(int,Menu)
+MenuInflater.inflate()} 扩充菜单资源（将 XML
+资源转换为可编程对象）。在下文中，您将了解如何扩充每种类型的菜单。
+</p>
+
+
+
+<h2 id="options-menu">创建选项菜单</h2>
+
+<div class="figure" style="width:200px;margin:0">
+  <img src="{@docRoot}images/options_menu.png" height="333" alt="" />
+  <p class="img-caption"><strong>图 1. </strong>Android 2.3 系统上浏览器
+中的选项菜单。</p>
+</div>
+
+<p>在选项菜单中，您应当包括与当前 Activity 上下文相关的操作和其他选项，如“搜索”、“撰写电子邮件”和“设置”。
+</p>
+
+<p>选项菜单中的项目在屏幕上的显示位置取决于您开发的应用所适用的 Android 版本：
+</p>
+
+<ul>
+  <li>如果您开发的应用是用于
+<strong>Android
+2.3.x（API 级别 10）或更低版本</strong>的系统，则当用户按“菜单”按钮时，选项菜单的内容会出现在屏幕底部，如图 1 所示。<em></em>打开时，第一个可见部分是图标菜单，其中包含多达 6 个菜单项。
+
+如果菜单包括 6 个以上项目，则
+Android
+会将第六项和其余项目放入溢出菜单。用户可以通过选择“更多”打开该菜单。<em></em></li>
+
+  <li>如果您开发的应用是用于 <strong>Android
+3.0（API 级别 11）及更高版本</strong>的系统，则选项菜单中的项目将出现在<a href="{@docRoot}guide/topics/ui/actionbar.html">操作栏</a>中。默认情况下，系统会将所有项目均放入操作溢出菜单中。用户可以使用操作栏右侧的操作溢出菜单图标（或者，通过按设备“菜单”按钮（如有））显示操作溢出菜单。
+
+<em></em>要支持快速访问重要操作，您可以将
+{@code android:showAsAction="ifRoom"}
+添加到对应的
+{@code &lt;item&gt;} 元素，从而将几个项目提升到操作栏中（请参阅图
+2）。 <p>如需了解有关操作项目和其他操作栏行为的详细信息，请参阅<a href="{@docRoot}guide/topics/ui/actionbar.html">操作栏</a>指南。 </p>
+<p class="note"><strong>注：</strong>即使您的应用不是针对
+Android 3.0 或更高版本的系统而开发，但仍可构建自己的操作栏布局，以获得类似的效果。<em></em>有关如何使用操作栏支持旧版
+Android
+的示例，请参阅<a href="{@docRoot}resources/samples/ActionBarCompat/index.html">操作栏兼容性</a>示例。</p>
+</li>
+</ul>
+
+<img src="{@docRoot}images/ui/actionbar.png" alt="" />
+<p class="img-caption"><strong>图 2. </strong>摘自
+<a href="{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb Gallery</a> 应用的操作栏，其中显示了导航选项卡和相机操作项目（以及操作溢出菜单按钮）。</p>
+
+<p>您可以通过 {@link android.app.Activity}
+子类或 {@link android.app.Fragment} 子类为选项菜单声明项目。如果您的 Activity 和片段均为选项菜单声明项目，则这些项目将合并到
+UI 中。系统将首先显示 Activity 的项目，随后按每个片段添加到 Activity 中的顺序显示该片段的项目。
+
+如有必要，您可以使用 {@code android:orderInCategory}
+属性，对需要移动的每个 {@code &lt;item&gt;} 中的菜单项重新排序。</p>
+
+<p>要为 Activity 指定选项菜单，请重写 {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}（Fragment 会提供自己的
+{@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()} 回调）。通过此方法，您可以将菜单资源（<a href="#xml">使用
+XML</a> 定义）扩充到回调中提供的 {@link
+android.view.Menu} 中。例如：</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu) {
+    MenuInflater inflater = {@link android.app.Activity#getMenuInflater()};
+    inflater.inflate(R.menu.game_menu, menu);
+    return true;
+}
+</pre>
+
+<p>此外，您还可以使用 {@link android.view.Menu#add(int,int,int,int)
+add()} 添加菜单项，并使用
+{@link android.view.Menu#findItem findItem()} 检索项目，以便使用 {@link android.view.MenuItem} API 修改其属性。</p>
+
+<p>如果您开发的应用是用于 Android 2.3.x 及更低版本的系统，则当用户首次打开选项菜单时，系统会调用 {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}
+来创建该菜单。如果您开发的应用是用于
+Android 3.0 及更高版本的系统，则系统将在启动 Activity 时调用
+{@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}，以便向操作栏显示项目。</p>
+
+
+
+<h3 id="RespondingOptionsMenu">处理点击事件</h3>
+
+<p>用户从选项菜单中选择项目（包括操作栏中的操作项目）时，系统将调用 Activity 的
+{@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} 方法。此方法将传递所选的 {@link android.view.MenuItem}。您可以通过调用
+{@link android.view.MenuItem#getItemId()} 方法来识别项目，该方法将返回菜单项的唯一 ID（由菜单资源中的 {@code android:id} 属性定义，或通过提供给 {@link android.view.Menu#add(int,int,int,int) add()}
+方法的整型数定义）。
+您可以将此
+ID 与已知的菜单项匹配，以执行适当的操作。例如：</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    // Handle item selection
+    switch (item.getItemId()) {
+        case R.id.new_game:
+            newGame();
+            return true;
+        case R.id.help:
+            showHelp();
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>成功处理菜单项后，系统将返回 {@code true}。如果未处理菜单项，则应调用 {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}
+的超类实现（默认实现将返回 false）。
+</p>
+
+<p>如果 Activity 包括片段，则系统将依次为 Activity 和每个片段（按照每个片段的添加顺序）调用 {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}
+，直到有一返回结果为
+{@code true} 或所有片段均调用完毕为止。</p>
+
+<p class="note"><strong>提示：</strong>Android 3.0 新增了一项功能，支持您在 XML 中使用 {@code android:onClick}
+属性为菜单项定义点击行为。该属性的值必须是 Activity 使用菜单定义的方法的名称。
+该方法必须是公用的，且接受单个
+{@link android.view.MenuItem}
+参数；当系统调用此方法时，它会传递所选的菜单项。如需了解详细信息和示例，请参阅<a href="{@docRoot}guide/topics/resources/menu-resource.html">菜单资源</a>文档。</p>
+
+<p class="note"><strong>提示：</strong>如果应用包含多个 Activity，且其中某些 Activity 提供相同的选项菜单，则可考虑创建一个仅实现
+{@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} 和 {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()}
+方法的 Activity。然后，为每个应共享相同选项菜单的 Activity 扩展此类。
+通过这种方式，您可以管理一个用于处理菜单操作的代码集，且每个子级类均会继承菜单行为。若要将菜单项添加到一个子级 Activity，请重写该 Activity 中的
+{@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()}。
+
+调用 {@code super.onCreateOptionsMenu(menu)}，以便创建原始菜单项，然后使用
+{@link
+android.view.Menu#add(int,int,int,int) menu.add()} 添加新菜单项。此外，您还可以替代各个菜单项的超类行为。
+</p>
+
+
+<h3 id="ChangingTheMenu">在运行时更改菜单项</h3>
+
+<p>系统调用
+{@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} 后，将保留您填充的 {@link android.view.Menu} 实例。除非菜单由于某些原因而失效，否则不会再次调用
+{@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}。但是，您仅应使用
+{@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} 来创建初始菜单状态，而不应使用它在 Activity 生命周期中执行任何更改。</p>
+
+<p>如需根据在 Activity 生命周期中发生的事件修改选项菜单，则可通过
+{@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}
+方法执行此操作。此方法向您传递
+{@link android.view.Menu}
+对象（因为该对象目前存在），以便您能够对其进行修改，如添加、删除或禁用项目。（此外，片段还提供 {@link
+android.app.Fragment#onPrepareOptionsMenu onPrepareOptionsMenu()} 回调。）</p>
+
+<p>在
+Android 2.3.x 及更低版本中，每当用户打开选项菜单时（按“菜单”按钮），系统均会调用 {@link
+android.app.Activity#onPrepareOptionsMenu(Menu)
+onPrepareOptionsMenu()}。<em></em></p>
+
+<p>在
+Android 3.0 及更高版本中，当菜单项显示在操作栏中时，选项菜单被视为始终处于打开状态。发生事件时，如果您要执行菜单更新，则必须调用
+{@link android.app.Activity#invalidateOptionsMenu invalidateOptionsMenu()} 来请求系统调用
+{@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}。</p>
+
+<p class="note"><strong>注：</strong>切勿根据目前处于焦点的
+{@link android.view.View}
+更改选项菜单中的项目。处于触摸模式（用户未使用轨迹球或方向键）时，视图无法形成焦点，因此切勿根据焦点修改选项菜单中的项目。
+
+若要为 {@link
+android.view.View} 提供上下文相关的菜单项，请使用<a href="#context-menu">上下文菜单</a>。</p>
+
+
+
+
+<h2 id="context-menu">创建上下文菜单</h2>
+
+<div class="figure" style="width:420px;margin-top:-1em">
+  <img src="{@docRoot}images/ui/menu-context.png" alt="" />
+  <p class="img-caption"><strong>图 3. </strong>浮动上下文菜单（左）和上下文操作栏（右）的屏幕截图。
+</p>
+</div>
+
+<p>上下文菜单提供了许多操作，这些操作影响 UI 中的特定项目或上下文框架。您可以为任何视图提供上下文菜单，但这些菜单通常用于
+{@link
+android.widget.ListView}、{@link android.widget.GridView}
+或用户可直接操作每个项目的其他视图集合中的项目。</p>
+
+<p>提供上下文操作的方法有两种：</p>
+<ul>
+  <li>使用<a href="#FloatingContextMenu">浮动上下文菜单</a>。用户长按（按住）一个声明支持上下文菜单的视图时，菜单显示为菜单项的浮动列表（类似于对话框）。
+
+用户一次可对一个项目执行上下文操作。
+</li>
+
+  <li>使用<a href="#CAB">上下文操作模式</a>。此模式是
+{@link android.view.ActionMode}
+的系统实现，它将在屏幕顶部显示上下文操作栏，其中包括影响所选项的操作项目。<em></em>当此模式处于活动状态时，用户可以同时对多项执行操作（如果应用允许）。
+</li>
+</ul>
+
+<p class="note"><strong>注：</strong>上下文操作模式可用于
+Android 3.0（API
+级别 11）及更高版本的系统，是显示上下文操作（如果可用）的首选方法。如果应用支持低于
+3.0 版本的系统，则应在这些设备上回退到浮动上下文菜单。</p>
+
+
+<h3 id="FloatingContextMenu">创建浮动上下文菜单</h3>
+
+<p>要提供浮动上下文菜单，请执行以下操作：</p>
+<ol>
+  <li>通过调用
+{@link android.app.Activity#registerForContextMenu(View) registerForContextMenu()}，注册应与上下文菜单关联的
+{@link android.view.View} 并将其传递给 {@link android.view.View}。
+  <p>如果 Activity 使用 {@link android.widget.ListView} 或 {@link android.widget.GridView}
+且您希望每个项目均提供相同的上下文菜单，请通过将
+{@link android.widget.ListView} 或 {@link android.widget.GridView} 传递给 {@link
+android.app.Activity#registerForContextMenu(View) registerForContextMenu()}，为上下文菜单注册所有项目。</p>
+</li>
+
+  <li>在 {@link android.app.Activity} 或 {@link android.app.Fragment} 中实现 {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()}
+方法。
+  <p>当注册后的视图收到长按事件时，系统将调用您的 {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()}
+方法。在此方法中，您通常可通过扩充菜单资源来定义菜单项。例如：
+</p>
+<pre>
+&#64;Override
+public void onCreateContextMenu(ContextMenu menu, View v,
+                                ContextMenuInfo menuInfo) {
+    super.onCreateContextMenu(menu, v, menuInfo);
+    MenuInflater inflater = getMenuInflater();
+    inflater.inflate(R.menu.context_menu, menu);
+}
+</pre>
+
+<p>{@link android.view.MenuInflater} 允许您通过<a href="{@docRoot}guide/topics/resources/menu-resource.html">菜单资源</a>扩充上下文菜单。回调方法参数包括用户所选的
+{@link android.view.View}，以及一个提供有关所选项的附加信息的
+{@link android.view.ContextMenu.ContextMenuInfo}
+对象。如果 Activity 有多个视图，每个视图均提供不同的上下文菜单，则可使用这些参数确定要扩充的上下文菜单。
+
+</p>
+</li>
+
+<li>实现 {@link android.app.Activity#onContextItemSelected(MenuItem)
+onContextItemSelected()}。
+  <p>用户选择菜单项时，系统将调用此方法，以便您能够执行适当的操作。
+例如：</p>
+
+<pre>
+&#64;Override
+public boolean onContextItemSelected(MenuItem item) {
+    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
+    switch (item.getItemId()) {
+        case R.id.edit:
+            editNote(info.id);
+            return true;
+        case R.id.delete:
+            deleteNote(info.id);
+            return true;
+        default:
+            return super.onContextItemSelected(item);
+    }
+}
+</pre>
+
+<p>{@link android.view.MenuItem#getItemId()}
+方法将查询所选菜单项的 ID，您应使用 {@code
+android:id} 属性将此 ID 分配给 XML 中的每个菜单项，如<a href="#xml">使用
+XML 定义菜单</a>部分所示。</p>
+
+<p>成功处理菜单项后，系统将返回 {@code true}。如果未处理菜单项，则应将菜单项传递给超类实现。
+如果 Activity 包括片段，则 Activity 将先收到此回调。
+通过在未处理的情况下调用超类，系统将事件逐一传递给每个片段中相应的回调方法（按照每个片段的添加顺序），直到返回
+{@code true} 或 {@code false}
+为止。（{@link android.app.Activity}
+和 {@code android.app.Fragment} 的默认实现返回 {@code
+false}，因此您始终应在未处理的情况下调用超类。）</p>
+</li>
+</ol>
+
+
+<h3 id="CAB">使用上下文操作模式</h3>
+
+<p>上下文操作模式是
+{@link android.view.ActionMode} 的一种系统实现，它将用户交互的重点转到执行上下文操作上。用户通过选择项目启用此模式时，屏幕顶部将出现一个“上下文操作栏”，显示用户可对当前所选项执行的操作。
+
+<em></em>启用此模式后，用户可以选择多个项目（若您允许）、取消选择项目以及继续在 Activity 内导航（在您允许的最大范围内）。
+
+当用户取消选择所有项目、按“返回”按钮或选择操作栏左侧的“完成”操作时，该操作模式将会禁用，且上下文操作栏将会消失。
+
+<em></em></p>
+
+<p class="note"><strong>注：</strong>上下文操作栏不一定与<a href="{@docRoot}guide/topics/ui/actionbar.html">操作栏</a>相关联。
+尽管表面上看来上下文操作栏取代了操作栏的位置，但事实上二者独立运行。
+
+</p>
+
+<p>如果您的应用是针对
+Android 3.0（API 级别 11）或更高版本的系统而开发，则通常应使用上下文操作模式（而不是<a href="#FloatingContextMenu">浮动上下文菜单</a>）显示上下文操作。</p>
+
+<p>对于提供上下文操作的视图，当出现以下两个事件（或之一）时，您通常应调用上下文操作模式：
+</p>
+<ul>
+  <li>用户长按视图。</li>
+  <li>用户选中复选框或视图内的类似 UI 组件。</li>
+</ul>
+
+<p>应用如何调用上下文操作模式以及如何定义每个操作的行为，具体取决于您的设计。
+设计基本上分为两种：</p>
+<ul>
+  <li>针对单个任意视图的上下文操作。</li>
+  <li>针对 {@link
+android.widget.ListView} 或 {@link android.widget.GridView}
+中项目组的批处理上下文操作（允许用户选择多个项目并针对所有项目执行操作）。</li>
+</ul>
+
+<p>下文介绍每种场景所需的设置。</p>
+
+
+<h4 id="CABforViews">为单个视图启用上下文操作模式</h4>
+
+<p>如果希望仅当用户选择特定视图时才调用上下文操作模式，则应：
+</p>
+<ol>
+  <li>实现 {@link android.view.ActionMode.Callback} 接口。在其回调方法中，您既可以为上下文操作栏指定操作，又可以响应操作项目的点击事件，还可以处理操作模式的其他生命周期事件。
+
+</li>
+  <li>当需要显示操作栏时（例如，用户长按视图），请调用
+{@link android.app.Activity#startActionMode startActionMode()}。</li>
+</ol>
+
+<p>例如：</p>
+
+<ol>
+  <li>实现 {@link android.view.ActionMode.Callback ActionMode.Callback} 接口：
+<pre>
+private ActionMode.Callback mActionModeCallback = new ActionMode.Callback() {
+
+    // Called when the action mode is created; startActionMode() was called
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate a menu resource providing context menu items
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context_menu, menu);
+        return true;
+    }
+
+    // Called each time the action mode is shown. Always called after onCreateActionMode, but
+    // may be called multiple times if the mode is invalidated.
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        return false; // Return false if nothing is done
+    }
+
+    // Called when the user selects a contextual menu item
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        switch (item.getItemId()) {
+            case R.id.menu_share:
+                shareCurrentItem();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    // Called when the user exits the action mode
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        mActionMode = null;
+    }
+};
+</pre>
+
+<p>请注意，这些事件回调与<a href="#options-menu">选项菜单</a>的回调几乎完全相同，只是其中每个回调还会传递与事件相关联的 {@link
+android.view.ActionMode} 对象。您可以使用
+{@link
+android.view.ActionMode} API 对 CAB 进行各种更改，例如：使用 {@link android.view.ActionMode#setTitle setTitle()}
+和 {@link
+android.view.ActionMode#setSubtitle setSubtitle()}（这对指示要选择多少个项目非常有用）修改标题和副标题。</p>
+
+<p>另请注意，操作模式被销毁时，上述示例会将 {@code mActionMode}
+变量设置为 null。在下一步中，您将了解如何初始化该变量，以及保存 Activity 或片段中的成员变量有何作用。
+</p>
+</li>
+
+  <li>调用 {@link android.app.Activity#startActionMode startActionMode()}
+以便适时启用上下文操作模式，例如：响应对 {@link
+android.view.View} 的长按操作：</p>
+
+<pre>
+someView.setOnLongClickListener(new View.OnLongClickListener() {
+    // Called when the user long-clicks on someView
+    public boolean onLongClick(View view) {
+        if (mActionMode != null) {
+            return false;
+        }
+
+        // Start the CAB using the ActionMode.Callback defined above
+        mActionMode = getActivity().startActionMode(mActionModeCallback);
+        view.setSelected(true);
+        return true;
+    }
+});
+</pre>
+
+<p>当您调用 {@link android.app.Activity#startActionMode startActionMode()} 时，系统将返回已创建的
+{@link android.view.ActionMode}。通过将其保存在成员变量中，您可以更改上下文操作栏来响应其他事件。
+在上述示例中，
+{@link android.view.ActionMode}
+用于在启动操作模式之前检查成员是否为空，以确保当 {@link android.view.ActionMode}
+实例已激活时不再重建该实例。</p>
+</li>
+</ol>
+
+
+
+<h4 id="CABforListView">在 ListView 或 GridView 中启用批处理上下文操作</h4>
+
+<p>如果您在 {@link android.widget.ListView} 或 {@link
+android.widget.GridView} 中有一组项目（或 {@link android.widget.AbsListView}
+的其他扩展），且需要允许用户执行批处理操作，则应：</p>
+
+<ul>
+  <li>实现
+{@link android.widget.AbsListView.MultiChoiceModeListener} 接口，并使用 {@link android.widget.AbsListView#setMultiChoiceModeListener
+setMultiChoiceModeListener()} 为视图组设置该接口。在侦听器的回调方法中，您既可以为上下文操作栏指定操作，也可以响应操作项目的点击事件，还可以处理从
+{@link android.view.ActionMode.Callback}
+接口继承的其他回调。</li>
+
+  <li>使用 {@link
+android.widget.AbsListView#CHOICE_MODE_MULTIPLE_MODAL} 参数调用 {@link android.widget.AbsListView#setChoiceMode setChoiceMode()}。</li>
+</ul>
+
+<p>例如：</p>
+
+<pre>
+ListView listView = getListView();
+listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
+listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
+
+    &#64;Override
+    public void onItemCheckedStateChanged(ActionMode mode, int position,
+                                          long id, boolean checked) {
+        // Here you can do something when items are selected/de-selected,
+        // such as update the title in the CAB
+    }
+
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        // Respond to clicks on the actions in the CAB
+        switch (item.getItemId()) {
+            case R.id.menu_delete:
+                deleteSelectedItems();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate the menu for the CAB
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context, menu);
+        return true;
+    }
+
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        // Here you can make any necessary updates to the activity when
+        // the CAB is removed. By default, selected items are deselected/unchecked.
+    }
+
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        // Here you can perform updates to the CAB due to
+        // an {@link android.view.ActionMode#invalidate} request
+        return false;
+    }
+});
+</pre>
+
+<p>就这么简单。现在，当用户通过长按选择项目时，系统即会调用 {@link
+android.widget.AbsListView.MultiChoiceModeListener#onCreateActionMode onCreateActionMode()}
+方法，并显示包含指定操作的上下文操作栏。当上下文操作栏可见时，用户可以选择其他项目。
+</p>
+
+<p>在某些情况下，如果上下文操作提供常用的操作项目，则您可能需要添加一个复选框或类似的
+UI
+元素来支持用户选择项目，这是因为他们可能没有发现长按行为。用户选中该复选框时，您可以通过使用
+{@link android.widget.AbsListView#setItemChecked setItemChecked()}
+将相应的列表项设置为选中状态，以此调用上下文操作模式。</p>
+
+
+
+
+<h2 id="PopupMenu">创建弹出菜单</h2>
+
+<div class="figure" style="width:220px">
+<img src="{@docRoot}images/ui/popupmenu.png" alt="" />
+<p><strong>图 4. </strong>Gmail 应用中的弹出菜单，锚定到右上角的溢出按钮。
+</p>
+</div>
+
+<p>{@link android.widget.PopupMenu}
+是锚定到 {@link android.view.View} 的模态菜单。如果空间足够，它将显示在定位视图下方，否则显示在其上方。它适用于：</p>
+<ul>
+  <li>为与特定内容确切相关的操作提供溢出样式菜单（例如，Gmail
+的电子邮件标头，如图 4 所示）。<em></em>
+    <p class="note"><strong>注：</strong>这与上下文菜单不同，后者通常用于影响所选内容的操作。
+<em></em>对于影响所选内容的操作，请使用<a href="#CAB">上下文操作模式</a>或<a href="#FloatingContextMenu">浮动上下文菜单</a>。
+</p></li>
+  <li>提供命令语句的另一部分（例如，标记为“添加”且使用不同的“添加”选项生成弹出菜单的按钮）。
+</li>
+  <li>提供类似于
+{@link android.widget.Spinner} 且不保留永久选择的下拉菜单。</li>
+</ul>
+
+
+<p class="note"><strong>注：</strong>{@link android.widget.PopupMenu} 在 API
+级别 11 及更高版本中可用。</p>
+
+<p>如果<a href="#xml">使用 XML 定义菜单</a>，则显示弹出菜单的方法如下：</p>
+<ol>
+  <li>实例化
+{@link android.widget.PopupMenu} 及其构造函数，该函数将提取当前应用的 {@link android.content.Context} 以及菜单应锚定到的
+{@link android.view.View}。</li>
+  <li>使用 {@link android.view.MenuInflater} 将菜单资源扩充到 {@link
+android.widget.PopupMenu#getMenu() PopupMenu.getMenu()} 返回的 {@link
+android.view.Menu} 对象中。在 API 级别 14 及更高版本中，您可以改为使用
+{@link android.widget.PopupMenu#inflate PopupMenu.inflate()}。</li>
+  <li>调用 {@link android.widget.PopupMenu#show() PopupMenu.show()}。</li>
+</ol>
+
+<p>例如，以下是一个使用
+{@link android.R.attr#onClick android:onClick} 属性显示弹出菜单的按钮：</p>
+
+<pre>
+&lt;ImageButton
+    android:layout_width="wrap_content" 
+    android:layout_height="wrap_content" 
+    android:src="@drawable/ic_overflow_holo_dark"
+    android:contentDescription="@string/descr_overflow_button"
+    android:onClick="showPopup" />
+</pre>
+
+<p>稍后，Activity 可按照如下方式显示弹出菜单：</p>
+
+<pre>
+public void showPopup(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+    MenuInflater inflater = popup.getMenuInflater();
+    inflater.inflate(R.menu.actions, popup.getMenu());
+    popup.show();
+}
+</pre>
+
+<p>在 API 级别 14 及更高版本中，您可以将两行合在一起，使用 {@link
+android.widget.PopupMenu#inflate PopupMenu.inflate()} 扩充菜单。</p>
+
+<p>当用户选择项目或触摸菜单以外的区域时，系统即会清除此菜单。
+您可使用 {@link
+android.widget.PopupMenu.OnDismissListener} 侦听清除事件。</p>
+
+<h3 id="PopupEvents">处理点击事件</h3>
+
+<p>要在用户选择菜单项时执行操作，您必须实现
+{@link
+android.widget.PopupMenu.OnMenuItemClickListener} 接口，并通过调用 {@link android.widget.PopupMenu#setOnMenuItemClickListener
+setOnMenuItemclickListener()} 将其注册到 {@link
+android.widget.PopupMenu}。用户选择项目时，系统会在接口中调用 {@link
+android.widget.PopupMenu.OnMenuItemClickListener#onMenuItemClick onMenuItemClick()}
+回调。</p>
+
+<p>例如：</p>
+
+<pre>
+public void showMenu(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+
+    // This activity implements OnMenuItemClickListener
+    popup.setOnMenuItemClickListener(this);
+    popup.inflate(R.menu.actions);
+    popup.show();
+}
+
+&#64;Override
+public boolean onMenuItemClick(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.archive:
+            archive(item);
+            return true;
+        case R.id.delete:
+            delete(item);
+            return true;
+        default:
+            return false;
+    }
+}
+</pre>
+
+
+<h2 id="groups">创建菜单组</h2>
+
+<p>菜单组是指一系列具有某些共同特征的菜单项。通过菜单组，您可以：
+</p>
+<ul>
+  <li>使用 {@link android.view.Menu#setGroupVisible(int,boolean)
+setGroupVisible()} 显示或隐藏所有项目</li>
+  <li>使用 {@link android.view.Menu#setGroupEnabled(int,boolean)
+setGroupEnabled()} 启用或禁用所有项目</li>
+  <li>使用 {@link
+android.view.Menu#setGroupCheckable(int,boolean,boolean) setGroupCheckable()} 指定所有项目是否可选中</li>
+</ul>
+
+<p>通过将 {@code &lt;item&gt;} 元素嵌套在菜单资源中的 {@code &lt;group&gt;}
+元素内，或者通过使用 {@link
+android.view.Menu#add(int,int,int,int) add()} 方法指定组 ID，您可以创建组。</p>
+
+<p>以下是包含组的菜单资源示例：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/menu_save"
+          android:icon="@drawable/menu_save"
+          android:title="@string/menu_save" /&gt;
+    &lt;!-- menu group --&gt;
+    &lt;group android:id="@+id/group_delete"&gt;
+        &lt;item android:id="@+id/menu_archive"
+              android:title="@string/menu_archive" /&gt;
+        &lt;item android:id="@+id/menu_delete"
+              android:title="@string/menu_delete" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>组中的项目出现在与第一项相同的级别，即：菜单中的所有三项均为同级。
+但是，您可以通过引用组 ID
+并使用上面列出的方法，修改组中两项的特征。此外，系统也绝不会分离已分组的项目。
+例如，如果为每个项目声明
+{@code
+android:showAsAction="ifRoom"}，则它们会同时显示在操作栏或操作溢出菜单中。</p>
+
+
+<h3 id="checkable">使用可选中的菜单项</h3>
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/radio_buttons.png" height="333" alt="" />
+  <p class="img-caption"><strong>图 5. </strong>含可选中项目的子菜单的屏幕截图。
+</p>
+</div>
+
+<p>作为启用/禁用选项的接口，菜单非常实用，既可针对独立选项使用复选框，也可针对互斥选项组使用单选按钮。
+
+图 5 显示了一个子菜单，其中的项目可使用单选按钮选中。
+</p>
+
+<p class="note"><strong>注：</strong>“图标菜单”（在选项菜单中）的菜单项无法显示复选框或单选按钮。
+如果您选择使“图标菜单”中的项目可选中，则必须在选中状态每次发生变化时交换图标和/或文本，手动指出该状态。
+
+</p>
+
+<p>您可以使用 {@code &lt;item&gt;} 元素中的 {@code
+android:checkable} 属性为各个菜单项定义可选中的行为，或者使用 {@code &lt;group&gt;} 元素中的
+{@code android:checkableBehavior} 属性为整个组定义可选中的行为。例如，此菜单组中的所有项目均可使用单选按钮选中：
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;group android:checkableBehavior="single"&gt;
+        &lt;item android:id="@+id/red"
+              android:title="@string/red" /&gt;
+        &lt;item android:id="@+id/blue"
+              android:title="@string/blue" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>{@code android:checkableBehavior} 属性接受以下任一选项：
+<dl>
+  <dt>{@code single}</dt>
+    <dd>组中只有一个项目可以选中（单选按钮）</dd>
+  <dt>{@code all}</dt>
+    <dd>所有项目均可选中（复选框）</dd>
+  <dt>{@code none}</dt>
+    <dd>所有项目均无法选中</dd>
+</dl>
+
+<p>您可以使用 {@code &lt;item&gt;}
+元素中的 {@code android:checked} 属性将默认的选中状态应用于项目，并可使用 {@link
+android.view.MenuItem#setChecked(boolean) setChecked()} 方法在代码中更改此默认状态。</p>
+
+<p>选择可选中项目后，系统将调用所选项目的相应回调方法（例如，{@link android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}）。
+此时，您必须设置复选框的状态，因为复选框或单选按钮不会自动更改其状态。
+
+您可以使用 {@link android.view.MenuItem#isChecked()}
+查询项目的当前状态（正如用户选择该项目之前一样），然后使用
+{@link android.view.MenuItem#setChecked(boolean) setChecked()} 设置选中状态。例如：</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.vibrate:
+        case R.id.dont_vibrate:
+            if (item.isChecked()) item.setChecked(false);
+            else item.setChecked(true);
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>如果未通过这种方式设置选中状态，则项目的可见状态（复选框或单选按钮）不会因为用户选择它而发生变化。
+
+如果已设置该状态，则 Activity 会保留项目的选中状态。这样一来，当用户稍后打开菜单时，您设置的选中状态将会可见。
+
+</p>
+
+<p class="note"><strong>注：</strong>可选中菜单项的使用往往因会话而异，且在应用销毁后不予保存。
+
+如果您想为用户保存某些应用设置，则应使用<a href="{@docRoot}guide/topics/data/data-storage.html#pref">共享首选项</a>存储数据。
+</p>
+
+
+
+<h2 id="intents">添加基于 Intent 的菜单项</h2>
+
+<p>有时，您希望菜单项通过使用
+{@link android.content.Intent} 启动 Activity（无论该 Activity 是位于您的应用还是其他应用中）。如果您知道自己要使用的 Intent，且具有启动 Intent 的特定菜单项，则可在相应的
+on-item-selected 回调方法（例如，{@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} 回调）期间使用
+{@link android.app.Activity#startActivity(Intent) startActivity()}
+执行 Intent。</p>
+
+<p>但是，如果不确定用户的设备是否包含可处理 Intent 的应用，则添加调用 Intent 的菜单项可能会导致该菜单项无法正常工作，这是因为 Intent 可能无法解析为 Activity。
+
+
+为了解决这一问题，当
+Android 在设备上找到可处理 Intent 的 Activity 时，则允许您向菜单动态添加菜单项。</p>
+
+<p>要根据接受 Intent 的可用 Activity 添加菜单项，请执行以下操作：</p>
+<ol>
+  <li>使用类别
+{@link android.content.Intent#CATEGORY_ALTERNATIVE} 和/或
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} 以及任何其他要求定义 Intent。</li>
+  <li>调用 {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+Menu.addIntentOptions()}。Android
+随后即会搜索能够执行 Intent 的所有应用，并将其添加到菜单中。</li>
+</ol>
+
+<p>如果未安装可处理 Intent 的应用，则不会添加任何菜单项。
+</p>
+
+<p class="note"><strong>注：</strong>
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE}
+用于处理屏幕上当前所选的元素。因此，只有在 {@link
+android.app.Activity#onCreateContextMenu(ContextMenu,View,ContextMenuInfo)
+onCreateContextMenu()} 中创建菜单时，才能使用它。</p>
+
+<p>例如：</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu){
+    super.onCreateOptionsMenu(menu);
+
+    // Create an Intent that describes the requirements to fulfill, to be included
+    // in our menu. The offering app must include a category value of Intent.CATEGORY_ALTERNATIVE.
+    Intent intent = new Intent(null, dataUri);
+    intent.addCategory(Intent.CATEGORY_ALTERNATIVE);
+
+    // Search and populate the menu with acceptable offering applications.
+    menu.addIntentOptions(
+         R.id.intent_group,  // Menu group to which new items will be added
+         0,      // Unique item ID (none)
+         0,      // Order for the items (none)
+         this.getComponentName(),   // The current activity name
+         null,   // Specific items to place first (none)
+         intent, // Intent created above that describes our requirements
+         0,      // Additional flags to control items (none)
+         null);  // Array of MenuItems that correlate to specific items (none)
+
+    return true;
+}</pre>
+
+<p>如果发现 Activity 提供的 Intent 过滤器与定义的 Intent 匹配，则会添加菜单项，并使用 Intent 过滤器
+<code>android:label</code>
+中的值作为菜单项标题，使用应用图标作为菜单项图标。{@link android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()}
+方法将返回已添加的菜单项数量。</p>
+
+<p class="note"><strong>注：</strong>调用
+{@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} 方法时，它将使用第一个参数中指定的菜单组替代所有菜单项。</p>
+
+
+<h3 id="AllowingToAdd">允许将 Activity 添加到其他菜单中</h3>
+
+<p>此外，您还可以为其他应用提供您的 Activity 服务，以便您的应用能够包含在其他应用的菜单中（与上述角色相反）。
+</p>
+
+<p>要包含在其他应用菜单中，您需要按常规方式定义 Intent 过滤器，但请确保为 Intent 过滤器类别添加
+{@link android.content.Intent#CATEGORY_ALTERNATIVE}
+和/或 {@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE}
+值。例如：</p>
+<pre>
+&lt;intent-filter label="&#64;string/resize_image">
+    ...
+    &lt;category android:name="android.intent.category.ALTERNATIVE" />
+    &lt;category android:name="android.intent.category.SELECTED_ALTERNATIVE" />
+    ...
+&lt;/intent-filter>
+</pre>
+
+<p>请仔细阅读<a href="/guide/components/intents-filters.html"> Intent 和 Intent 过滤器</a>文档中更多有关编写 Intent 过滤器的内容。
+</p>
+
+<p>有关使用此方法的应用示例，请参阅<a href="{@docRoot}resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html">记事本</a>示例代码。
+
+</p>
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/ui/notifiers/notifications.jd b/docs/html-intl/intl/zh-cn/guide/topics/ui/notifiers/notifications.jd
new file mode 100644
index 0000000..c0bd74c
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/ui/notifiers/notifications.jd
@@ -0,0 +1,979 @@
+page.title=通知
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>本文内容</h2>
+<ol>
+  <li><a href="#Design">设计注意事项</a></li>
+  <li><a href="#CreateNotification">创建通知</a>
+    <ol>
+      <li><a href="#Required">必需的通知内容</a></li>
+      <li><a href="#Optional">可选通知内容和设置</a></li>
+      <li><a href="#Actions">通知操作</a></li>
+      <li><a href="#Priority">通知优先级</a></li>
+      <li><a href="#SimpleNotification">创建简单通知</a></li>
+      <li><a href="#ApplyStyle">将扩展布局应用于通知</a></li>
+      <li><a href="#Compatibility">处理兼容性</a></li>
+    </ol>
+  </li>
+  <li><a href="#Managing">管理通知</a>
+    <ol>
+      <li><a href="#Updating">更新通知</a></li>
+      <li><a href="#Removing">删除通知</a></li>
+    </ol>
+  </li>
+  <li><a href="#NotificationResponse">启动 Activity 时保留导航</a>
+    <ol>
+      <li><a href="#DirectEntry">设置常规 Activity PendingIntent</a></li>
+      <li><a href="#ExtendedNotification">设置特殊 Activity PendingIntent</a></li>
+    </ol>
+  </li>
+  <li><a href="#Progress">在通知中显示进度</a>
+    <ol>
+      <li><a href="#FixedProgress">显示持续时间固定的进度指示器</a></li>
+      <li><a href="#ActivityIndicator">显示持续 Activity 指示器</a></li>
+    </ol>
+  </li>
+  <li><a href="#metadata">通知元数据</a></li>
+  <li><a href="#Heads-up">浮动通知</a></li>
+  <li><a href="#lockscreenNotification">锁定屏幕通知</a></li>
+    <ol>
+      <li><a href="#visibility">设置可见性</a></li>
+      <li><a href="#controllingMedia">在锁定屏幕上控制媒体播放</a></li>
+    </ol>
+  <li><a href="#CustomNotification">自定义通知布局</a></li>
+</ol>
+
+    <h2>关键类</h2>
+    <ol>
+        <li>{@link android.app.NotificationManager}</li>
+        <li>{@link android.support.v4.app.NotificationCompat}</li>
+    </ol>
+    <h2>视频</h2>
+    <ol>
+        <li>
+            <a href="http://www.youtube.com/watch?v=Yc8YrVc47TI&amp;feature=player_detailpage#t=1672s">
+            4.1 中的通知</a>
+        </li>
+    </ol>
+<h2>另请参阅</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}design/patterns/notifications.html">Android 设计：通知</a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    通知是您可以在应用的常规
+UI
+外部向用户显示的消息。当您告知系统发出通知时，它将先以图标的形式显示在<strong>通知区域</strong>中。用户可以打开<strong>抽屉式通知栏</strong>查看通知的详细信息。
+通知区域和抽屉式通知栏均是由系统控制的区域，用户可以随时查看。
+
+</p>
+<img id="figure1" src="{@docRoot}images/ui/notifications/notification_area.png" height="" alt="" />
+<p class="img-caption">
+    <strong>图 1. </strong>通知区域中的通知。
+</p>
+<img id="figure2" src="{@docRoot}images/ui/notifications/notification_drawer.png" width="280px" alt="" />
+<p class="img-caption">
+    <strong>图 2. </strong>抽屉式通知栏中的通知。
+</p>
+
+<p class="note"><strong>注：</strong>除非特别注明，否则本指南均引用版本
+4 <a href="{@docRoot}tools/support-library/index.html">支持库</a>中的 {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}
+类。Android
+3.0（API 级别 11）中已添加类
+{@link android.app.Notification.Builder Notification.Builder}。</p>
+
+<h2 id="Design">设计注意事项</h2>
+
+<p>作为 Android 用户界面的一个重要组成部分，通知具有自己的设计指导方针。Android
+5.0（API 级别 21）中引入的材料设计变更尤为重要，您应查阅<a href="{@docRoot}training/material/index.html">材料设计</a>培训资料了解详细信息。
+
+要了解如何设计通知及其交互，请阅读<a href="{@docRoot}design/patterns/notifications.html">通知</a>设计指南。
+</p>
+
+<h2 id="CreateNotification">创建通知</h2>
+
+<p>您可以在
+{@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}
+对象中为通知指定 UI 信息和操作。要创建通知，请调用
+{@link android.support.v4.app.NotificationCompat.Builder#build NotificationCompat.Builder.build()}，它将返回包含您的具体规范的
+{@link android.app.Notification} 对象。要发出通知，请通过调用
+{@link android.app.NotificationManager#notify NotificationManager.notify()} 将 {@link android.app.Notification}
+对象传递给系统。</p>
+
+<h3 id="Required">必需的通知内容</h3>
+<p>
+    {@link android.app.Notification} 对象必须包含以下内容：<em></em>
+</p>
+<ul>
+    <li>
+        小图标，由
+{@link android.support.v4.app.NotificationCompat.Builder#setSmallIcon setSmallIcon()} 设置
+    </li>
+    <li>
+        标题，由
+{@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()} 设置
+    </li>
+    <li>
+        详细文本，由
+{@link android.support.v4.app.NotificationCompat.Builder#setContentText setContentText()} 设置
+    </li>
+</ul>
+<h3 id="Optional">可选通知内容和设置</h3>
+<p>
+    所有其他通知设置和内容都是可选的。如需了解有关它们的更多详情，请参阅
+{@link android.support.v4.app.NotificationCompat.Builder} 参考文档。
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Actions">通知操作</h3>
+<p>
+    尽管通知操作都是可选的，但是您至少应向通知添加一个操作。
+    操作允许用户直接从通知转到应用中的
+{@link android.app.Activity}，他们可在其中查看一个或多个事件或执行进一步的操作。
+
+</p>
+<p>
+    一个通知可以提供多个操作。您应该始终定义一个当用户点击通知时会触发的操作；通常，此操作会在应用中打开
+{@link android.app.Activity}。
+您也可以向通知添加按钮来执行其他操作，例如，暂停闹铃或立即答复短信；此功能自
+Android
+4.1 起可用。如果使用其他操作按钮，则您还必须使这些按钮的功能在应用的
+{@link android.app.Activity}
+中可用；请参阅<a href="#Compatibility">处理兼容性</a>部分，以了解更多详情。
+</p>
+<p>
+    在 {@link android.app.Notification} 内部，操作本身由
+{@link android.app.PendingIntent} 定义，后者包含在应用中启动
+{@link android.app.Activity}
+的 {@link android.content.Intent}。要将
+{@link android.app.PendingIntent} 与手势相关联，请调用
+{@link android.support.v4.app.NotificationCompat.Builder} 的适当方法。例如，如果您要在用户点击抽屉式通知栏中的通知文本时启动
+{@link android.app.Activity}，则可通过调用
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()}
+来添加 {@link android.app.PendingIntent}。
+</p>
+<p>
+    在用户点击通知时启动 {@link android.app.Activity}
+是最常见的操作场景。此外，您还可以在用户清除通知时启动
+{@link android.app.Activity}。在 Android 4.1 及更高版本中，您可以通过操作按钮启动
+{@link android.app.Activity}。如需了解更多信息，请阅读参考指南的
+{@link android.support.v4.app.NotificationCompat.Builder} 部分。
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Priority">通知优先级</h3>
+<p>
+    您可以根据需要设置通知的优先级。优先级充当一个提示，提醒设备
+UI 应该如何显示通知。
+    要设置通知的优先级，请调用 {@link
+    android.support.v4.app.NotificationCompat.Builder#setPriority(int)
+    NotificationCompat.Builder.setPriority()} 并传入一个 {@link
+    android.support.v4.app.NotificationCompat} 优先级常量。有五个优先级别，范围从 {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_MIN} (-2) 到 {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_MAX} (2)；如果未设置，则优先级默认为 {@link
+    android.support.v4.app.NotificationCompat#PRIORITY_DEFAULT} (0)。
+
+
+</p>
+<p> 有关设置适当优先级别的信息，请参阅<a href="{@docRoot}design/patterns/notifications.html">通知</a>设计指南中的“正确设置和管理通知优先级”。
+
+
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="SimpleNotification">创建简单通知</h3>
+<p>
+    以下代码段说明了一个指定某项 Activity 在用户点击通知时打开的简单通知。
+请注意，该代码将创建
+{@link android.support.v4.app.TaskStackBuilder} 对象并使用它来为操作创建
+{@link android.app.PendingIntent}。<a href="#NotificationResponse">启动 Activity 时保留导航</a>部分对此模式做了更详尽的阐述：
+
+
+</p>
+<pre>
+NotificationCompat.Builder mBuilder =
+        new NotificationCompat.Builder(this)
+        .setSmallIcon(R.drawable.notification_icon)
+        .setContentTitle("My notification")
+        .setContentText("Hello World!");
+// Creates an explicit intent for an Activity in your app
+Intent resultIntent = new Intent(this, ResultActivity.class);
+
+// The stack builder object will contain an artificial back stack for the
+// started Activity.
+// This ensures that navigating backward from the Activity leads out of
+// your application to the Home screen.
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack for the Intent (but not the Intent itself)
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent that starts the Activity to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(
+            0,
+            PendingIntent.FLAG_UPDATE_CURRENT
+        );
+mBuilder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// mId allows you to update the notification later on.
+mNotificationManager.notify(mId, mBuilder.build());
+</pre>
+<p>就这么简单。您的用户现已收到通知。</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ApplyStyle">将扩展布局应用于通知</h3>
+<p>
+    要使通知出现在展开视图中，请先创建一个带有所需普通视图选项的
+{@link android.support.v4.app.NotificationCompat.Builder}
+对象。接下来，调用以扩展布局对象作为其参数的 {@link android.support.v4.app.NotificationCompat.Builder#setStyle
+    Builder.setStyle()}。
+</p>
+<p>
+    请记住，扩展通知在 Android 4.1 之前的平台上不可用。要了解如何处理针对
+Android 4.1 及更早版本平台的通知，请阅读<a href="#Compatibility">处理兼容性</a>部分。
+
+</p>
+<p>
+    例如，以下代码段演示了如何更改在前面的代码段中创建的通知，以便使用扩展布局：
+
+</p>
+<pre>
+NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
+    .setSmallIcon(R.drawable.notification_icon)
+    .setContentTitle("Event tracker")
+    .setContentText("Events received")
+NotificationCompat.InboxStyle inboxStyle =
+        new NotificationCompat.InboxStyle();
+String[] events = new String[6];
+// Sets a title for the Inbox in expanded layout
+inboxStyle.setBigContentTitle("Event tracker details:");
+...
+// Moves events into the expanded layout
+for (int i=0; i &lt; events.length; i++) {
+
+    inboxStyle.addLine(events[i]);
+}
+// Moves the expanded layout object into the notification object.
+mBuilder.setStyle(inBoxStyle);
+...
+// Issue the notification here.
+</pre>
+
+<h3 id="Compatibility">处理兼容性</h3>
+
+<p>
+    并非所有通知功能都可用于某特定版本，即便用于设置这些功能的方法位于支持库类
+{@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder}
+中也是如此。
+    例如，依赖于扩展通知的操作按钮仅会显示在 Android
+4.1 及更高版本的系统中，这是因为扩展通知本身仅在
+Android 4.1 及更高版本的系统中可用。
+</p>
+<p>
+    为了确保最佳兼容性，请使用
+{@link android.support.v4.app.NotificationCompat NotificationCompat} 及其子类（特别是
+{@link android.support.v4.app.NotificationCompat.Builder
+    NotificationCompat.Builder}）创建通知。此外，在实现通知时，请遵循以下流程：
+</p>
+<ol>
+    <li>
+        为所有用户提供通知的全部功能，无论他们使用何种版本的 Android 系统。
+为此，请验证是否可从应用的
+{@link android.app.Activity} 中获得所有功能。要执行此操作，您可能需要添加新的
+{@link android.app.Activity}。
+        <p>
+            例如，若要使用
+{@link android.support.v4.app.NotificationCompat.Builder#addAction addAction()} 提供停止和启动媒体播放的控件，请先在应用的
+{@link android.app.Activity}
+中实现此控件。
+        </p>
+    </li>
+    <li>
+        确保所有用户均可通过点击通知启动 {@link android.app.Activity} 来获得该Activity中的功能。
+为此，请为
+{@link android.app.Activity}
+创建 {@link android.app.PendingIntent}。调用
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+        setContentIntent()} 以将 {@link android.app.PendingIntent} 添加到通知。
+    </li>
+    <li>
+        现在，将要使用的扩展通知功能添加到通知。请记住，您添加的任何功能还必须在用户点击通知时启动的
+{@link android.app.Activity}
+中可用。
+    </li>
+</ol>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Managing">管理通知</h2>
+<p>
+    当您需要为同一类型的事件多次发出同一通知时，应避免创建全新的通知，
+而是应考虑通过更改之前通知的某些值和/或为其添加某些值来更新通知。
+
+</p>
+<p>
+    例如，Gmail 通过增加未读消息计数并将每封电子邮件的摘要添加到通知，通知用户收到了新的电子邮件。
+这称为“堆叠”通知；<a href="{@docRoot}design/patterns/notifications.html">通知</a>设计指南对此进行了更详尽的描述。
+
+
+</p>
+<p class="note">
+    <strong>注：</strong>此 
+Gmail 功能需要“收件箱”扩展布局，该布局是自 Android 4.1 版本起可用的扩展通知功能的一部分。
+</p>
+<p>
+    下文介绍如何更新和删除通知。
+</p>
+<h3 id="Updating">更新通知</h3>
+<p>
+    要将通知设置为能够更新，请通过调用
+{@link android.app.NotificationManager#notify(int, android.app.Notification) NotificationManager.notify()} 发出带有通知 ID 的通知。
+    要在发出之后更新此通知，请更新或创建
+{@link android.support.v4.app.NotificationCompat.Builder}
+对象，从该对象构建 {@link android.app.Notification} 对象，并发出与之前所用 ID 相同的
+{@link android.app.Notification}。如果之前的通知仍然可见，则系统会根据
+{@link android.app.Notification}
+对象的内容更新该通知。相反，如果之前的通知已被清除，系统则会创建一个新通知。
+
+</p>
+<p>
+    以下代码段演示了经过更新以反映所发生事件数量的通知。
+它将通知堆叠并显示摘要：
+</p>
+<pre>
+mNotificationManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Sets an ID for the notification, so it can be updated
+int notifyID = 1;
+mNotifyBuilder = new NotificationCompat.Builder(this)
+    .setContentTitle("New Message")
+    .setContentText("You've received new messages.")
+    .setSmallIcon(R.drawable.ic_notify_status)
+numMessages = 0;
+// Start of a loop that processes data and then notifies the user
+...
+    mNotifyBuilder.setContentText(currentText)
+        .setNumber(++numMessages);
+    // Because the ID remains unchanged, the existing notification is
+    // updated.
+    mNotificationManager.notify(
+            notifyID,
+            mNotifyBuilder.build());
+...
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Removing">删除通知</h3>
+<p>
+    除非发生以下情况之一，否则通知仍然可见：
+</p>
+<ul>
+    <li>
+        用户单独或通过使用“全部清除”清除了该通知（如果通知可以清除）。
+
+    </li>
+    <li>
+        用户点击通知，且您在创建通知时调用了
+{@link android.support.v4.app.NotificationCompat.Builder#setAutoCancel setAutoCancel()}。
+
+    </li>
+    <li>
+        您针对特定的通知 ID 调用了
+{@link android.app.NotificationManager#cancel(int) cancel()}。此方法还会删除当前通知。
+    </li>
+    <li>
+        您调用了
+{@link android.app.NotificationManager#cancelAll() cancelAll()} 方法，该方法将删除之前发出的所有通知。
+    </li>
+</ul>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="NotificationResponse">启动 Activity 时保留导航</h2>
+<p>
+    从通知中启动
+{@link android.app.Activity} 时，您必须保留用户的预期导航体验。  <i> </i> 点击“返回”应该使用户将应用的正常工作流回退到主屏幕，而点击“最新动态”则应将
+ <i> </i> {@link android.app.Activity} 显示为单独的任务。
+要保留导航体验，您应该在全新任务中启动
+{@link android.app.Activity}。如何设置
+{@link android.app.PendingIntent} 以获得全新任务取决于正在启动的
+{@link android.app.Activity} 的性质。一般有两种情况：
+</p>
+<dl>
+    <dt>
+        常规 Activity
+    </dt>
+    <dd>
+        您要启动的
+{@link android.app.Activity} 是应用的正常工作流的一部分。在这种情况下，请设置 {@link android.app.PendingIntent}
+以启动全新任务并为
+{@link android.app.PendingIntent}提供返回栈，这将重现应用的正常“返回”行为。 <i> </i>  
+        <p>
+            Gmail 应用中的通知演示了这一点。点击一封电子邮件消息的通知时，您将看到消息具体内容。
+触摸<b>返回</b>将使您从
+Gmail 回退到主屏幕，就好像您是从主屏幕（而不是通知）进入
+Gmail 一样。
+        </p>
+        <p>
+            无论您触摸通知时处于哪个应用，都会发生这种情况。
+例如，如果您在
+Gmail 中撰写消息时点击了一封电子邮件的通知，则会立即转到该电子邮件。  <i> </i>
+            触摸“返回”会依次转到收件箱和主屏幕，而不是转到您在撰写的邮件。
+
+        </p>
+    </dd>
+    <dt>
+        特殊 Activity
+    </dt>
+    <dd>
+        仅当从通知中启动时，用户才会看到此 {@link android.app.Activity}。
+        从某种意义上说，{@link android.app.Activity}
+是通过提供很难显示在通知本身中的信息来扩展通知。对于这种情况，请将
+{@link android.app.PendingIntent} 设置为在全新任务中启动。但是，由于启动的
+{@link android.app.Activity}
+不是应用 Activity 流程的一部分，因此无需创建返回栈。点击“返回”仍会将用户带到主屏幕。<i></i>
+
+    </dd>
+</dl>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="DirectEntry">设置常规 Activity PendingIntent</h3>
+<p>
+    要设置可启动直接进入 {@link android.app.Activity} 的
+{@link android.app.PendingIntent}，请执行以下步骤：
+</p>
+<ol>
+    <li>
+        在清单文件中定义应用的 {@link android.app.Activity} 层次结构。
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                添加对 Android 4.0.3 及更低版本的支持。为此，请通过添加
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+元素作为
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>的子项来指定正在启动的
+{@link android.app.Activity} 的父项。
+                <p>
+                    对于此元素，请设置
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a>="android.support.PARENT_ACTIVITY"</code>。
+                    设置
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#val">android:value</a>="&lt;parent_activity_name&gt;"</code>，其中，<code>&lt;parent_activity_name&gt;</code>
+是父
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+元素的
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a></code>
+值。请参阅下面的 XML 示例。
+                </p>
+            </li>
+            <li>
+                同样添加对 Android 4.1 及更高版本的支持。为此，请将
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#parent">android:parentActivityName</a></code>
+属性添加到正在启动的
+{@link android.app.Activity} 的
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 元素中。
+            </li>
+        </ol>
+        <p>
+            最终的 XML 应如下所示：
+        </p>
+<pre>
+&lt;activity
+    android:name=".MainActivity"
+    android:label="&#64;string/app_name" &gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+&lt;activity
+    android:name=".ResultActivity"
+    android:parentActivityName=".MainActivity"&gt;
+    &lt;meta-data
+        android:name="android.support.PARENT_ACTIVITY"
+        android:value=".MainActivity"/&gt;
+&lt;/activity&gt;
+</pre>
+    </li>
+    <li>
+        根据可启动
+{@link android.app.Activity} 的 {@link android.content.Intent} 创建返回栈：
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                创建 {@link android.content.Intent} 以启动 {@link android.app.Activity}。
+            </li>
+            <li>
+                通过调用 {@link android.app.TaskStackBuilder#create
+                TaskStackBuilder.create()} 创建堆栈生成器。
+            </li>
+            <li>
+                通过调用
+{@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()} 将返回栈添加到堆栈生成器。
+                对于在清单文件中所定义层次结构内的每个
+{@link android.app.Activity}，返回栈均包含可启动 {@link android.app.Activity} 的
+{@link android.content.Intent} 对象。此方法还会添加一些可在全新任务中启动堆栈的标志。
+
+                <p class="note">
+                    <strong>注：</strong>尽管
+{@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}
+的参数是对已启动
+{@link android.app.Activity} 的引用，但是方法调用不会添加可启动 {@link android.app.Activity} 的
+{@link android.content.Intent}，而是留待下一步进行处理。
+                </p>
+            </li>
+            <li>
+                通过调用
+{@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()}，添加可从通知中启动 {@link android.app.Activity}
+的 {@link android.content.Intent}。
+                将在第一步中创建的 {@link android.content.Intent}
+作为
+{@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()} 的参数传递。
+            </li>
+            <li>
+                如需，请通过调用 {@link android.support.v4.app.TaskStackBuilder#editIntentAt
+                TaskStackBuilder.editIntentAt()} 向堆栈中的 {@link android.content.Intent}
+对象添加参数。有时，需要确保目标 {@link android.app.Activity} 在用户使用“返回”导航回它时会显示有意义的数据。
+
+ <i> </i> 
+            </li>
+            <li>
+                通过调用
+{@link android.support.v4.app.TaskStackBuilder#getPendingIntent getPendingIntent()} 获得此返回栈的 {@link android.app.PendingIntent}。
+                然后，您可以使用此 {@link android.app.PendingIntent} 作为
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+                setContentIntent()} 的参数。
+            </li>
+        </ol>
+     </li>
+</ol>
+<p>
+    以下代码段演示了该流程：
+</p>
+<pre>
+...
+Intent resultIntent = new Intent(this, ResultActivity.class);
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+// Gets a PendingIntent containing the entire back stack
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
+...
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+builder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mNotificationManager.notify(id, builder.build());
+</pre>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ExtendedNotification">设置特殊 Activity PendingIntent</h3>
+<p>
+    下文介绍如何设置特殊 Activity
+{@link android.app.PendingIntent}。
+</p>
+<p>
+    特殊
+{@link android.app.Activity} 无需返回栈，因此您不必在清单文件中定义其
+{@link android.app.Activity} 层次结构，也不必调用
+{@link android.support.v4.app.TaskStackBuilder#addParentStack  addParentStack()}
+来构建返回栈。取而代之的是，您可使用清单文件设置
+{@link android.app.Activity} 任务选项，并通过调用 {@link android.app.PendingIntent#getActivity getActivity()}
+创建 {@link android.app.PendingIntent}：
+</p>
+<ol>
+    <li>
+        在清单文件中，将以下属性添加到 {@link android.app.Activity} 的
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+元素
+        <dl>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">android:name</a>="<i>activityclass</i>"</code>
+            </dt>
+            <dd>
+                Activity 的完全限定类名。
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">android:taskAffinity</a>=""</code>
+            </dt>
+            <dd>
+                与您在代码中设置的
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK}
+标志相结合，这可确保此 {@link android.app.Activity}
+不会进入应用的默认任务。任何具有应用默认关联的现有任务均不受影响。
+
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">android:excludeFromRecents</a>="true"</code>
+            </dt>
+            <dd>
+                  <i> </i>将新任务从“最新动态”中排除，这样用户就不会在无意中导航回它。
+
+            </dd>
+        </dl>
+        <p>
+            以下代码段显示了该元素：
+        </p>
+<pre>
+&lt;activity
+    android:name=".ResultActivity"
+...
+    android:launchMode="singleTask"
+    android:taskAffinity=""
+    android:excludeFromRecents="true"&gt;
+&lt;/activity&gt;
+...
+</pre>
+    </li>
+    <li>
+        构建并发出通知：
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                创建可启动 {@link android.app.Activity}的
+{@link android.content.Intent}。
+            </li>
+            <li>
+                通过使用
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK}
+和
+{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TASK FLAG_ACTIVITY_CLEAR_TASK} 标志调用
+{@link android.content.Intent#setFlags setFlags()}，将 {@link android.app.Activity} 设置为在新的空任务中启动。
+            </li>
+            <li>
+                为 {@link android.content.Intent} 设置所需的任何其他选项。
+            </li>
+            <li>
+                通过调用
+{@link android.app.PendingIntent#getActivity getActivity()} 从 {@link android.content.Intent} 中创建 {@link android.app.PendingIntent}。
+                然后，您可以使用此 {@link android.app.PendingIntent} 作为
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+                setContentIntent()} 的参数。
+            </li>
+        </ol>
+    <p>
+        以下代码段演示了该流程：
+    </p>
+<pre>
+// Instantiate a Builder object.
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+// Creates an Intent for the Activity
+Intent notifyIntent =
+        new Intent(this, ResultActivity.class);
+// Sets the Activity to start in a new, empty task
+notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
+                        | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+// Creates the PendingIntent
+PendingIntent notifyPendingIntent =
+        PendingIntent.getActivity(
+        this,
+        0,
+        notifyIntent,
+        PendingIntent.FLAG_UPDATE_CURRENT
+);
+
+// Puts the PendingIntent into the notification builder
+builder.setContentIntent(notifyPendingIntent);
+// Notifications are issued by sending them to the
+// NotificationManager system service.
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Builds an anonymous Notification object from the builder, and
+// passes it to the NotificationManager
+mNotificationManager.notify(id, builder.build());
+</pre>
+    </li>
+</ol>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Progress">在通知中显示进度</h2>
+<p>
+    通知可能包括动画形式的进度指示器，向用户显示正在进行的操作状态。
+如果您可以估计操作所需的时间以及任意时刻的完成进度，则使用“限定”形式的指示器（进度栏）。
+
+如果无法估计操作的时长，则使用“非限定”形式的指示器（Activity 指示器）。
+
+</p>
+<p>
+    平台的
+{@link android.widget.ProgressBar} 类实现中显示有进度指示器。
+</p>
+<p>
+    要在 Android 4.0 及更高版本的平台上使用进度指示器，需调用
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}。对于早期版本，您必须创建包括 {@link android.widget.ProgressBar}
+视图的自定义通知布局。
+
+</p>
+<p>
+    下文介绍如何使用
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()} 在通知中显示进度。
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="FixedProgress">显示持续时间固定的进度指示器</h3>
+<p>
+    要显示限定形式的进度栏，请通过调用
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress
+    setProgress(max, progress, false)} 将进度栏添加到通知，然后发出通知。随着操作继续进行，递增
+<code>progress</code> 并更新通知。操作结束时，
+<code>progress</code> 应该等于 <code>max</code>。调用
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()}
+的常见方法是将 <code>max</code> 设置为 100，然后将 <code>progress</code>
+作为操作的“完成百分比”值递增。
+</p>
+<p>
+    您可以在操作完成后仍保留显示进度栏，也可以将其删除。无论哪种情况，都请记住更新通知文本以显示操作已完成。
+
+    要删除进度栏，请调用
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress
+    setProgress(0, 0, false)}。例如：
+</p>
+<pre>
+...
+mNotifyManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mBuilder = new NotificationCompat.Builder(this);
+mBuilder.setContentTitle("Picture Download")
+    .setContentText("Download in progress")
+    .setSmallIcon(R.drawable.ic_notification);
+// Start a lengthy operation in a background thread
+new Thread(
+    new Runnable() {
+        &#64;Override
+        public void run() {
+            int incr;
+            // Do the "lengthy" operation 20 times
+            for (incr = 0; incr &lt;= 100; incr+=5) {
+                    // Sets the progress indicator to a max value, the
+                    // current completion percentage, and "determinate"
+                    // state
+                    mBuilder.setProgress(100, incr, false);
+                    // Displays the progress bar for the first time.
+                    mNotifyManager.notify(0, mBuilder.build());
+                        // Sleeps the thread, simulating an operation
+                        // that takes time
+                        try {
+                            // Sleep for 5 seconds
+                            Thread.sleep(5*1000);
+                        } catch (InterruptedException e) {
+                            Log.d(TAG, "sleep failure");
+                        }
+            }
+            // When the loop is finished, updates the notification
+            mBuilder.setContentText("Download complete")
+            // Removes the progress bar
+                    .setProgress(0,0,false);
+            mNotifyManager.notify(ID, mBuilder.build());
+        }
+    }
+// Starts the thread by calling the run() method in its Runnable
+).start();
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ActivityIndicator">显示持续 Activity 指示器</h3>
+<p>
+    要显示非限定形式的 Activity 指示器，请使用
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, true)}
+将其添加到通知（忽略前两个参数），然后发出通知。这样一来，指示器的样式就与进度栏相同，只是其动画还在继续。
+
+</p>
+<p>
+    在操作开始之际发出通知。除非您修改通知，否则动画将一直运行。
+操作完成后，调用
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, false)}，然后更新通知以删除 Activity 指示器。
+
+    请务必这样做；否则，即使操作完成，动画仍将运行。同时，请记得更改通知文本，以表明操作已完成。
+
+</p>
+<p>
+    要了解 Activity 指示器的工作方式，请参阅上述代码段。找到以下几行：
+</p>
+<pre>
+// Sets the progress indicator to a max value, the current completion
+// percentage, and "determinate" state
+mBuilder.setProgress(100, incr, false);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+<p>
+    将找到的这几行替换为以下几行：
+</p>
+<pre>
+ // Sets an activity indicator for an operation of indeterminate length
+mBuilder.setProgress(0, 0, true);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+
+<h2 id="metadata">通知元数据</h2>
+
+<p>通知可根据您使用以下
+{@link android.support.v4.app.NotificationCompat.Builder} 方法分配的元数据进行排序：</p>
+
+<ul>
+    <li>当设备处于“优先”模式时，{@link android.support.v4.app.NotificationCompat.Builder#setCategory(java.lang.String) setCategory()}
+会告知系统如何处理应用通知（例如，通知代表传入呼叫、即时消息还是闹铃）。
+</li>
+    <li>如果优先级字段设置为
+{@code PRIORITY_MAX} 或 {@code PRIORITY_HIGH} 的通知还有声音或振动，则 {@link android.support.v4.app.NotificationCompat.Builder#setPriority(int) setPriority()}
+会将其显示在小型浮动窗口中。</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#addPerson(java.lang.String) addPerson()}
+允许您向通知添加人员名单。您的应用可以使用此名单指示系统将指定人员发出的通知归成一组，或者将这些人员发出的通知视为更重要的通知。
+
+</li>
+</ul>
+
+<div class="figure" style="width:230px">
+  <img src="{@docRoot}images/ui/notifications/heads-up.png" alt="" width="" height="" id="figure3" />
+  <p class="img-caption">
+    <strong>图 3. </strong>显示浮动通知的全屏 Activity
+  </p>
+</div>
+
+<h2 id="Heads-up">浮动通知</h2>
+
+<p>对于 Android 5.0（API 级别 21），当设备处于活动状态时（即，设备未锁定且其屏幕已打开），通知可以显示在小型浮动窗口中（也称为“浮动通知”）。<em></em>
+
+这些通知看上去类似于精简版的通知​​，只是浮动通知还显示操作按钮。
+
+用户可以在不离开当前应用的情况下处理或清除浮动通知。
+</p>
+
+<p>可能触发浮动通知的条件示例包括：</p>
+
+<ul>
+  <li>用户的 Activity 处于全屏模式中（应用使用
+{@link android.app.Notification#fullScreenIntent}），或者</li>
+  <li>通知具有较高的优先级并使用铃声或振动
+</li>
+</ul>
+
+<h2 id="lockscreenNotification">锁定屏幕通知</h2>
+
+<p>随着
+Android 5.0（API 级别 21）的发布，通知现在还可显示在锁定屏幕上。您的应用可以使用此功能提供媒体播放控件以及其他常用操作。
+用户可以通过“设置”选择是否将通知显示在锁定屏幕上，并且您可以指定您应用中的通知在锁定屏幕上是否可见。
+</p>
+
+<h3 id="visibility">设置可见性</h3>
+
+<p>您的应用可以控制在安全锁定屏幕上显示的通知中可见的详细级别。
+调用 {@link android.support.v4.app.NotificationCompat.Builder#setVisibility(int) setVisibility()}
+并指定以下值之一：</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC}
+显示通知的完整内容。</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_SECRET}
+不会在锁定屏幕上显示此通知的任何部分。</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE}
+显示通知图标和内容标题等基本信息，但是隐藏通知的完整内容。</li>
+</ul>
+
+<p>设置 {@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE}
+后，您还可以提供其中隐藏了某些详细信息的替换版本通知内容。例如，短信
+应用可能会显示一条通知，指出“您有
+3 条新短信”，但是隐藏了短信内容和发件人。<em></em>要提供此替换版本的通知，请先使用
+{@link android.support.v4.app.NotificationCompat.Builder} 创建替换通知。创建专用通知对象时，请通过
+{@link android.support.v4.app.NotificationCompat.Builder#setPublicVersion(android.app.Notification) setPublicVersion()}
+方法为其附加替换通知。
+</p>
+
+<h3 id="controllingMedia">在锁定屏幕上控制媒体播放</h3>
+
+<p>在 Android 5.0（API 级别 21）中，锁定屏幕不再基于
+{@link android.media.RemoteControlClient}（现已弃用）显示媒体控件。取而代之的是，将
+{@link android.app.Notification.MediaStyle} 模板与
+{@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()}
+方法结合使用，后者可将操作转换为可点击的图标。</p>
+
+<p class="note"><strong>注：</strong>该模板和
+{@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()}
+方法未包含在支持库中，因此这些功能只能在 Android 5.0 及更高版本的系统上运行。</p>
+
+<p>要在 Android 5.0 系统的锁定屏幕上显示媒体播放控件，请将可见性设置为
+{@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC}，如上文所述。然后，添加操作并设置
+{@link android.app.Notification.MediaStyle}
+模板，如以下示例代码中所述：</p>
+
+<pre>
+Notification notification = new Notification.Builder(context)
+    // Show controls on lock screen even when user hides sensitive content.
+    .setVisibility(Notification.VISIBILITY_PUBLIC)
+    .setSmallIcon(R.drawable.ic_stat_player)
+    // Add media control buttons that invoke intents in your media service
+    .addAction(R.drawable.ic_prev, "Previous", prevPendingIntent) // #0
+    .addAction(R.drawable.ic_pause, "Pause", pausePendingIntent)  // #1
+    .addAction(R.drawable.ic_next, "Next", nextPendingIntent)     // #2
+    // Apply the media style template
+    .setStyle(new Notification.MediaStyle()
+    .setShowActionsInCompactView(1 /* #1: pause button */)
+    .setMediaSession(mMediaSession.getSessionToken())
+    .setContentTitle("Wonderful music")
+    .setContentText("My Awesome Band")
+    .setLargeIcon(albumArtBitmap)
+    .build();
+</pre>
+
+<p class="note"><strong>注：</strong>弃用 {@link android.media.RemoteControlClient}
+会对控制媒体产生进一步的影响。如需了解有关用于管理媒体会话和控制播放的新 API 的详细信息，请参阅<a href="{@docRoot}about/versions/android-5.0.html#MediaPlaybackControl">媒体播放控件</a>。
+
+</p>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="CustomNotification">自定义通知布局</h2>
+<p>
+    您可以利用通知框架定义自定义通知布局，由该布局定义通知在
+{@link android.widget.RemoteViews} 对象中的外观。
+    自定义布局通知类似于常规通知，但是它们是基于 XML 布局文件中所定义的
+{@link android.widget.RemoteViews}。
+</p>
+<p>
+    自定义通知布局的可用高度取决于通知视图。普通视图布局限制为
+64 dp，扩展视图布局限制为 256 dp。
+</p>
+<p>
+    要定义自定义通知布局，请首先实例化
+{@link android.widget.RemoteViews} 对象来扩充 XML 布局文件。然后，调用
+{@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}，而不是调用
+{@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()}
+等方法。要在自定义通知中设置内容详细信息，请使用
+{@link android.widget.RemoteViews}
+中的方法设置视图子项的值：
+</p>
+<ol>
+    <li>
+        在单独的文件中为通知创建 XML 布局。您可以根据需要使用任何文件名，但必须使用扩展名
+<code>.xml</code>。
+    </li>
+    <li>
+        在您的应用中，使用 {@link android.widget.RemoteViews}
+方法定义通知的图标和文本。通过调用
+{@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()} 将此 {@link android.widget.RemoteViews} 对象放入
+{@link android.support.v4.app.NotificationCompat.Builder} 中。避免在
+{@link android.widget.RemoteViews} 对象上设置背景
+{@link android.graphics.drawable.Drawable}，因为文本颜色可能使文本变得难以阅读。
+    </li>
+</ol>
+<p>
+    此外，{@link android.widget.RemoteViews} 类中还有一些方法可供您轻松将
+{@link android.widget.Chronometer} 或 {@link android.widget.ProgressBar}
+添加到通知布局。如需了解有关为通知创建自定义布局的详细信息，请参阅
+{@link android.widget.RemoteViews} 参考文档。
+</p>
+<p class="caution">
+    <strong>注意：</strong>使用自定义通知布局时，要特别注意确保自定义布局适用于不同的设备方向和分辨率。
+尽管这条建议适用于所有“视图”布局，但对通知尤为重要，因为抽屉式通知栏中的空间非常有限。
+
+不要让自定义布局过于复杂，同时确保在各种配置中对其进行测试。
+
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h4>对自定义通知文本使用样式资源</h4>
+<p>
+    始终对自定义通知的文本使用样式资源。通知的背景颜色可能因设备和系统版本的不同而异，使用样式资源有助于您充分考虑到这一点。
+
+从
+Android 2.3 开始，系统定义了标准通知布局文本的样式。若要在面向 Android
+2.3 或更高版本系统的多个应用中使用相同样式，则应确保文本在显示背景上可见。
+</p>
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/ui/overview.jd b/docs/html-intl/intl/zh-cn/guide/topics/ui/overview.jd
new file mode 100644
index 0000000..5097c76
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/ui/overview.jd
@@ -0,0 +1,71 @@
+page.title=UI 概览
+@jd:body
+
+
+<p>Android 应用中的所有用户界面元素都是使用 {@link android.view.View} 和
+{@link android.view.ViewGroup} 对象构建而成。{@link android.view.View}
+对象用于在屏幕上绘制可供用户交互的内容。{@link android.view.ViewGroup}
+对象用于储存其他 {@link android.view.View}（和
+{@link android.view.ViewGroup}）对象，以便定义界面的局部。</p>
+
+<p>Android 提供了一系列
+{@link android.view.View} 和 {@link
+android.view.ViewGroup} 子类，可为您提供常用输入控件（如按钮和文本字段）和各种布局模式（如线性布局或相对布局）。</p>
+
+
+<h2 id="Layout">用户界面布局</h2>
+
+<p>如图 1 所示，每个应用组件的用户界面都是使用 {@link
+android.view.View} 和 {@link android.view.ViewGroup} 对象的层次结构定义的。每个视图组都是一个用于组织子视图的不可见容器，而子视图可以是输入控件或其他可绘制某一
+UI
+部分的小工具。此层次结构树可繁可简，随需而定（但是简单的结构可提供最佳性能）。
+
+</p>
+
+<img src="{@docRoot}images/viewgroup.png" alt="" />
+<p class="img-caption"><strong>图 1. </strong>视图层次结构的图示，它定义了一个 UI
+布局。</p>
+
+<p>要声明布局，您可以实例化代码中的 {@link android.view.View} 对象并开始构建树，但是定义布局最简单且最有效的方法是使用 XML
+文件。如同 HTML 一样，XML
+也为布局提供了一种用户可读结构。</p>
+
+<p>视图的 XML 元素名称与其代表的 Android 类相对应。因此，
+<code>&lt;TextView&gt;</code> 元素用于在 UI 中创建一个 {@link android.widget.TextView} 小工具，而
+<code>&lt;LinearLayout&gt;</code> 元素用于创建一个 {@link android.widget.LinearLayout}
+视图组。 </p>
+
+<p>例如，包含文本视图和按钮的简单垂直布局如下所示：</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="fill_parent" 
+              android:layout_height="fill_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>在应用中加载布局资源时，Android
+会将布局的每个节点初始化为运行时对象，供您定义其他行为、查询对象状态或修改布局。
+</p>
+
+<p>有关创建 UI 布局的完整指南，请参阅 <a href="declaring-layout.html">XML
+布局</a>。
+
+  
+<h2 id="UIComponents">用户界面组件</h2>
+
+<p>您无需使用 {@link android.view.View} 和 {@link
+android.view.ViewGroup} 对象构建所有 UI。Android 提供了几个带有标准 UI 布局的应用组件，您只需定义内容。
+这些 UI
+组件均拥有一组唯一的 API，具体描述可参阅相应的文档，如<a href="{@docRoot}guide/topics/ui/actionbar.html">操作栏</a>、<a href="{@docRoot}guide/topics/ui/dialogs.html">对话框</a>和<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">状态通知</a>。</p>
+
+
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/ui/settings.jd b/docs/html-intl/intl/zh-cn/guide/topics/ui/settings.jd
new file mode 100644
index 0000000..f9be97b
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/ui/settings.jd
@@ -0,0 +1,1202 @@
+page.title=设置
+page.tags=首选项，首选项 Activity，首选项片段
+
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文内容</h2>
+<ol>
+  <li><a href="#Overview">概览</a>
+    <ol>
+      <li><a href="#SettingTypes">首选项</a></li>
+    </ol>
+  </li>
+  <li><a href="#DefiningPrefs">使用 XML 定义首选项</a>
+    <ol>
+      <li><a href="#Groups">创建设置组</a></li>
+      <li><a href="#Intents">使用 Intent </a></li>
+    </ol>
+  </li>
+  <li><a href="#Activity">创建首选项 Activity</a></li>
+  <li><a href="#Fragment">使用首选项片段</a></li>
+  <li><a href="#Defaults">设置默认值</a></li>
+  <li><a href="#PreferenceHeaders">使用首选项标头</a>
+    <ol>
+      <li><a href="#CreateHeaders">创建标头文件</a></li>
+      <li><a href="#DisplayHeaders">显示标头</a></li>
+      <li><a href="#BackCompatHeaders">使用首选项标头支持旧版本</a></li>
+    </ol>
+  </li>
+  <li><a href="#ReadingPrefs">读取首选项</a>
+    <ol>
+      <li><a href="#Listening">侦听首选项变更</a></li>
+    </ol>
+  </li>
+  <li><a href="#NetworkUsage">管理网络使用情况</a></li>
+  <li><a href="#Custom">构建自定义首选项</a>
+    <ol>
+      <li><a href="#CustomSelected">指定用户界面</a></li>
+      <li><a href="#CustomSave">保存设置的值</a></li>
+      <li><a href="#CustomInitialize">初始化当前值</a></li>
+      <li><a href="#CustomDefault">提供默认值</a></li>
+      <li><a href="#CustomSaveState">保存和恢复首选项的状态</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>关键类</h2>
+<ol>
+  <li>{@link android.preference.Preference}</li>
+  <li>{@link android.preference.PreferenceActivity}</li>
+  <li>{@link android.preference.PreferenceFragment}</li>
+</ol>
+
+
+<h2>另请参阅</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/settings.html">设置设计指南</a></li>
+</ol>
+</div>
+</div>
+
+
+
+
+<p>应用通常包括允许用户修改应用特性和行为的设置。例如，有些应用允许用户指定是否启用通知，或指定应用与云端同步数据的频率。
+
+</p>
+
+<p>若要为应用提供设置，您应该使用
+Android 的 {@link android.preference.Preference} API
+构建一个与其他 Android 应用中的用户体验一致的界面（包括系统设置）。本文旨在介绍如何使用
+{@link android.preference.Preference} API 构建应用设置。</p>
+
+<div class="note design">
+<p><strong>设置设计</strong></p>
+  <p>有关如何设计设置的信息，请阅读<a href="{@docRoot}design/patterns/settings.html">设置</a>设计指南。</p>
+</div>
+
+
+<img src="{@docRoot}images/ui/settings/settings.png" alt="" width="435" />
+<p class="img-caption"><strong>图 1. </strong>来自 Android 信息应用的设置的屏幕截图。
+选择由 {@link android.preference.Preference}
+定义的项目将打开一个用于更改设置的界面。</p>
+
+
+
+
+<h2 id="Overview">概览</h2>
+
+<p>设置是使用您在 XML 文件中声明的
+{@link android.preference.Preference}
+类的各种子类构建而成，而不是使用 {@link android.view.View} 对象构建用户界面。</p>
+
+<p>{@link android.preference.Preference}
+对象是单个设置的构建基块。每个 {@link android.preference.Preference} 均作为项目显示在列表中，并提供适当的
+UI 供用户修改设置。例如，{@link
+android.preference.CheckBoxPreference} 可创建一个列表项用于显示复选框，{@link
+android.preference.ListPreference} 可创建一个项目用于打开包含选择列表的对话框。</p>
+
+<p>您添加的每个 {@link android.preference.Preference} 都有一个相应的键值对，可供系统用来将设置保存在应用设置的默认
+{@link android.content.SharedPreferences}
+文件中。当用户更改设置时，系统会为您更新
+{@link android.content.SharedPreferences} 文件中的相应值。您只应在需要读取值以根据用户设置确定应用的行为时，才与关联的
+{@link android.content.SharedPreferences}
+文件直接交互。</p>
+
+<p>为每个设置保存在 {@link android.content.SharedPreferences}
+中的值可能是以下数据类型之一：</p>
+
+<ul>
+  <li>布尔型</li>
+  <li>浮点型</li>
+  <li>整型</li>
+  <li>长整型</li>
+  <li>字符串</li>
+  <li>字符串 {@link java.util.Set}</li>
+</ul>
+
+<p>由于应用的设置 UI 是使用 {@link android.preference.Preference}
+对象（而非
+{@link android.view.View} 对象）构建而成，因此您需要使用专门的 {@link android.app.Activity} 或
+{@link android.app.Fragment} 子类显示列表设置：</p>
+
+<ul>
+  <li>如果应用支持早于 3.0（API 级别 10 及更低级别）的 Android 版本，则您必须将 Activity 构建为
+{@link android.preference.PreferenceActivity} 类的扩展。</li>
+  <li>对于 Android 3.0 及更高版本，您应改用传统
+{@link android.app.Activity}，以托管可显示应用设置的 {@link android.preference.PreferenceFragment}。但是，如果您拥有多组设置，则还可以使用
+{@link android.preference.PreferenceActivity}
+为大屏幕创建双窗格布局。</li>
+</ul>
+
+<p><a href="#Activity">创建首选项 Activity</a>和<a href="#Fragment">使用首选项片段</a>
+部分将讨论如何设置 {@link android.preference.PreferenceActivity} 以及 {@link
+android.preference.PreferenceFragment} 实例。</p>
+
+
+<h3 id="SettingTypes">首选项</h3>
+
+<p>所有应用设置均由 {@link
+android.preference.Preference} 类的特定子类表示。每个子类均包括一组核心属性，允许您指定设置标题和默认值等内容。
+此外，每个子类还提供自己的专用属性和用户界面。
+例如，图 1 显示的是“信息”
+应用的设置屏幕截图。设置屏幕中的每个列表项均由不同的 {@link
+android.preference.Preference} 对象提供支持。</p>
+
+<p>一些最常用的首选项如下：</p>
+
+<dl>
+  <dt>{@link android.preference.CheckBoxPreference}</dt>
+  <dd>显示一个包含已启用或已禁用设置复选框的项目。保存的值是布尔型（如果选中则为
+<code>true</code>）。</dd>
+
+  <dt>{@link android.preference.ListPreference}</dt>
+  <dd>打开一个包含单选按钮列表的对话框。保存的值可以是任一受支持的值类型（如上所列）。
+</dd>
+
+  <dt>{@link android.preference.EditTextPreference}</dt>
+  <dd>打开一个包含 {@link android.widget.EditText} 小工具的对话框。保存的值是 {@link
+java.lang.String}。</dd>
+</dl>
+
+<p>有关所有其他子类及其对应属性的列表，请参阅 {@link android.preference.Preference}
+类。</p>
+
+<p>当然，内置类不能满足所有需求，您的应用可能需要更专业化的内容。
+例如，该平台目前不提供用于选取数字或日期的 {@link
+android.preference.Preference} 类。因此，您可能需要定义自己的
+{@link android.preference.Preference} 子类。如需有关执行此操作的帮助，请参阅<a href="#Custom">构建自定义首选项</a>部分。</p>
+
+
+
+<h2 id="DefiningPrefs">使用 XML 定义首选项</h2>
+
+<p>虽然您可以在运行时实例化新的 {@link android.preference.Preference}
+对象，不过您还是应该使用 {@link android.preference.Preference}
+对象的层次结构在 XML 中定义设置列表。使用 XML
+文件定义设置的集合是首选方法，因为该文件提供了一个便于更新的易读结构。此外，应用的设置通常是预先确定的，不过您仍可在运行时修改此集合。
+</p>
+
+<p>每个 {@link android.preference.Preference} 子类均可以使用与类名（如 {@code &lt;CheckBoxPreference&gt;}）匹配的 XML 元素来声明。
+</p>
+
+<p>您必须将 XML 文件保存在 {@code res/xml/} 目录中。尽管您可以随意命名该文件，但它通常命名为
+{@code preferences.xml}。您通常只需一个文件，因为层次结构中的分支（可打开各自的设置列表）是使用
+{@link android.preference.PreferenceScreen}
+的嵌套实例声明的。</p>
+
+<p class="note"><strong>注：</strong>若要为设置创建多窗格布局，则需要为每个片段提供单独的
+XML 文件。</p>
+
+<p>XML 文件的根节点必须是一个 {@link android.preference.PreferenceScreen
+&lt;PreferenceScreen&gt;} 元素。您可以在此元素内添加每个 {@link
+android.preference.Preference}。在
+{@link android.preference.PreferenceScreen &lt;PreferenceScreen&gt;}
+元素内添加的每个子项均将作为单独的项目显示在设置列表中。</p>
+
+<p>例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;CheckBoxPreference
+        android:key="pref_sync"
+        android:title="@string/pref_sync"
+        android:summary="@string/pref_sync_summ"
+        android:defaultValue="true" />
+    &lt;ListPreference
+        android:dependency="pref_sync"
+        android:key="pref_syncConnectionType"
+        android:title="@string/pref_syncConnectionType"
+        android:dialogTitle="@string/pref_syncConnectionType"
+        android:entries="@array/pref_syncConnectionTypes_entries"
+        android:entryValues="@array/pref_syncConnectionTypes_values"
+        android:defaultValue="@string/pref_syncConnectionTypes_default" />
+&lt;/PreferenceScreen>
+</pre>
+
+<p>在此示例中，有一个 {@link android.preference.CheckBoxPreference} 和 {@link
+android.preference.ListPreference}。这两项均包括以下三个属性：</p>
+
+<dl>
+  <dt>{@code android:key}</dt>
+  <dd>对于要保留数据值的首选项，必须拥有此属性。它指定系统在将此设置的值保存在
+{@link
+android.content.SharedPreferences} 中时所用的唯一键（字符串）。 
+  <p>不需要此属性的仅有情形是：首选项是
+{@link android.preference.PreferenceCategory} 或{@link android.preference.PreferenceScreen}，或者首选项指定要调用的
+{@link android.content.Intent}（使用 <a href="#Intents">{@code &lt;intent&gt;}</a> 元素）或要显示的 {@link android.app.Fragment}（使用 <a href="{@docRoot}reference/android/preference/Preference.html#attr_android:fragment">{@code
+android:fragment}</a> 属性）。<em></em></p>
+  </dd>
+  <dt>{@code android:title}</dt>
+  <dd>此属性为设置提供用户可见的名称。</dd>
+  <dt>{@code android:defaultValue}</dt>
+  <dd>此属性指定系统应该在 {@link
+android.content.SharedPreferences} 文件中设置的初始值。您应该为所有设置提供默认值。
+</dd>
+</dl>
+
+<p>有关所有其他受支持属性的信息，请参阅 {@link
+android.preference.Preference}（和相应子类）文档。</p>
+
+
+<div class="figure" style="width:300px">
+  <img src="{@docRoot}images/ui/settings/settings-titles.png" alt="" />
+  <p class="img-caption"><strong>图 2. </strong>带标题的设置类别。
+ <br/><b>1.</b>类别由 {@link
+android.preference.PreferenceCategory &lt;PreferenceCategory&gt;} 元素指定。 <br/><b>2.</b>标题由
+{@code android:title} 属性指定。</p>
+</div>
+
+
+<p>当设置列表超过 10 项时，您可能需要添加标题来定义设置组或在单独的屏幕中显示这些组。
+
+下文将介绍这些选项。</p>
+
+
+<h3 id="Groups">创建设置组</h3>
+
+<p>如果您提供的列表包含 10
+项或更多设置，则用户可能难以浏览、理解和处理这些设置。若要弥补这一点，您可以将部分或全部设置分成若干组，从而有效地将一个长列表转化为多个短列表。
+
+可以通过下列两种方法之一提供一组相关设置：</p>
+
+<ul>
+  <li><a href="#Titles">使用标题</a></li>
+  <li><a href="#Subscreens">使用子屏幕</a></li>
+</ul>
+
+<p>您可以使用其中一种或两种分组方法来组织应用的设置。决定要使用的技巧以及如何拆分设置时，应遵循 Android 设计的<a href="{@docRoot}design/patterns/settings.html">设置</a>指南中的准则。
+
+</p>
+
+
+<h4 id="Titles">使用标题</h4>
+
+<p>若要以分隔线分隔两组设置并为其提供标题（如图 2 所示），请将每组
+{@link android.preference.Preference} 对象放入 {@link
+android.preference.PreferenceCategory} 内。</p>
+
+<p>例如：</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;PreferenceCategory 
+        android:title="&#64;string/pref_sms_storage_title"
+        android:key="pref_key_storage_settings">
+        &lt;CheckBoxPreference
+            android:key="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_auto_delete"
+            android:title="&#64;string/pref_title_auto_delete"
+            android:defaultValue="false"... />
+        &lt;Preference 
+            android:key="pref_key_sms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_sms_delete"... />
+        &lt;Preference 
+            android:key="pref_key_mms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_mms_delete" ... />
+    &lt;/PreferenceCategory>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h4 id="Subscreens">使用子屏幕</h4>
+
+<p>若要将设置组放入子屏幕（如图 3 所示），请将
+{@link android.preference.Preference} 对象组放入 {@link
+android.preference.PreferenceScreen} 内。</p>
+
+<img src="{@docRoot}images/ui/settings/settings-subscreen.png" alt="" />
+<p class="img-caption"><strong>图 3. </strong>设置子屏幕。{@code
+&lt;PreferenceScreen&gt;} 元素创建的项目选中后，即会打开一个单独的列表来显示嵌套设置。
+</p>
+
+<p>例如：</p>
+
+<pre>
+&lt;PreferenceScreen  xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;!-- opens a subscreen of settings -->
+    &lt;PreferenceScreen
+        android:key="button_voicemail_category_key"
+        android:title="&#64;string/voicemail"
+        android:persistent="false">
+        &lt;ListPreference
+            android:key="button_voicemail_provider_key"
+            android:title="&#64;string/voicemail_provider" ... />
+        &lt;!-- opens another nested subscreen -->
+        &lt;PreferenceScreen
+            android:key="button_voicemail_setting_key"
+            android:title="&#64;string/voicemail_settings"
+            android:persistent="false">
+            ...
+        &lt;/PreferenceScreen>
+        &lt;RingtonePreference
+            android:key="button_voicemail_ringtone_key"
+            android:title="&#64;string/voicemail_ringtone_title"
+            android:ringtoneType="notification" ... />
+        ...
+    &lt;/PreferenceScreen>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h3 id="Intents">使用 Intent </h3>
+
+<p>在某些情况下，您可能需要首选项来打开不同的 Activity（而不是 Web
+浏览器等设置屏幕）或查看网页。要在用户选择首选项时调用 {@link
+android.content.Intent}，请将{@code &lt;intent&gt;}
+元素添加为相应 {@code &lt;Preference&gt;} 元素的子元素。</p>
+
+<p>例如，您可以按如下方法使用首选项打开网页：</p>
+
+<pre>
+&lt;Preference android:title="@string/prefs_web_page" >
+    &lt;intent android:action="android.intent.action.VIEW"
+            android:data="http://www.example.com" />
+&lt;/Preference>
+</pre>
+
+<p>您可以使用以下属性创建隐式和显式 Intent：</p>
+
+<dl>
+  <dt>{@code android:action}</dt>
+    <dd>要分配的操作（按照 {@link android.content.Intent#setAction setAction()}
+方法）。</dd>
+  <dt>{@code android:data}</dt>
+    <dd>要分配的数据（按照 {@link android.content.Intent#setData setData()} 方法）。</dd>
+  <dt>{@code android:mimeType}</dt>
+    <dd>要分配的 MIME 类型（按照 {@link android.content.Intent#setType setType()}
+方法）。</dd>
+  <dt>{@code android:targetClass}</dt>
+    <dd>组件名称的类部分（按照 {@link android.content.Intent#setComponent
+setComponent()} 方法）。</dd>
+  <dt>{@code android:targetPackage}</dt>
+    <dd>组件名称的软件包部分（按照 {@link
+android.content.Intent#setComponent setComponent()} 方法）。</dd>
+</dl>
+
+
+
+<h2 id="Activity">创建首选项 Activity</h2>
+
+<p>要在 Activity 中显示您的设置，请扩展 {@link
+android.preference.PreferenceActivity} 类。这是传统 {@link
+android.app.Activity} 类的扩展，该类根据 {@link
+android.preference.Preference} 对象的层次结构显示设置列表。当用户进行更改时，{@link android.preference.PreferenceActivity}
+会自动保留与每个 {@link
+android.preference.Preference} 相关的设置。</p>
+
+<p class="note"><strong>注：</strong>如果您是开发针对 Android 3.0 及
+更高版本系统的应用，则应改为使用 {@link android.preference.PreferenceFragment}。转到下文有关<a href="#Fragment">使用首选项片段</a>的部分。
+</p>
+
+<p>请记住最重要的一点，就是不要在 {@link
+android.preference.PreferenceActivity#onCreate onCreate()} 回调期间加载视图的布局。相反，请调用 {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} 以将在
+XML 文件中声明的首选项添加到 Activity。例如，一个能够正常工作的
+{@link android.preference.PreferenceActivity} 至少需要如下代码：</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        addPreferencesFromResource(R.xml.preferences);
+    }
+}
+</pre>
+
+<p>实际上，对于某些应用而言此，代码就已足够，因为用户修改某首选项后，系统会立即将所做的更改保存到默认 {@link android.content.SharedPreferences} 文件中，如需检查用户的设置，可以使用您的其他应用组件读取该文件。
+
+不过，许多应用需要的代码要稍微多一点，以侦听首选项发生的变化。有关侦听
+{@link android.content.SharedPreferences}
+文件变化的信息，请参阅<a href="#ReadingPrefs">读取首选项</a>部分。
+</p>
+
+
+
+
+<h2 id="Fragment">使用首选项片段</h2>
+
+<p>如果您是开发针对 Android 3.0（API 级别 11）及更高版本系统的应用，则应使用 {@link
+android.preference.PreferenceFragment} 显示 {@link android.preference.Preference}
+对象的列表。您可以将 {@link android.preference.PreferenceFragment} 添加到任何 Activity，而不必使用
+{@link android.preference.PreferenceActivity}。</p>
+
+<p>与仅使用上述 Activity 相比，无论您在构建何种 Activity，<a href="{@docRoot}guide/components/fragments.html">片段</a>都可为应用提供一个更加灵活的体系结构。
+
+因此，我们建议您尽可能使用 {@link
+android.preference.PreferenceFragment} 控制设置的显示，而不是使用 {@link
+android.preference.PreferenceActivity}。</p>
+
+<p>{@link android.preference.PreferenceFragment} 的实现就像定义
+{@link android.preference.PreferenceFragment#onCreate onCreate()} 方法以使用
+{@link android.preference.PreferenceFragment#addPreferencesFromResource
+addPreferencesFromResource()} 加载首选项文件一样简单。例如：</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Load the preferences from an XML resource
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+}
+</pre>
+
+<p>然后，正如您对其他任何
+{@link android.app.Fragment} 的处理一样，您可以将此片段添加到 {@link android.app.Activity}。例如：</p>
+
+<pre>
+public class SettingsActivity extends Activity {
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Display the fragment as the main content.
+        getFragmentManager().beginTransaction()
+                .replace(android.R.id.content, new SettingsFragment())
+                .commit();
+    }
+}
+</pre>
+
+<p class="note"><strong>注：</strong>{@link android.preference.PreferenceFragment} 没有自己的
+{@link android.content.Context} 对象。如需 {@link android.content.Context}
+对象，您可以调用 {@link android.app.Fragment#getActivity()}。但请注意，只应在该片段附加到 Activity 时才调用
+{@link android.app.Fragment#getActivity()}。如果该片段尚未附加或在其生命周期结束期间已分离，则
+{@link
+android.app.Fragment#getActivity()} 将返回空 null。</p>
+
+
+<h2 id="Defaults">设置默认值</h2>
+
+<p>您创建的首选项可能会为应用定义一些重要行为，因此在用户首次打开应用时，您有必要使用每个 {@link android.preference.Preference}
+的默认值初始化相关的
+{@link android.content.SharedPreferences}
+文件。</p>
+
+<p>首先，您必须使用 {@code android:defaultValue} 属性为 XML 文件中的每个 {@link
+android.preference.Preference}
+对象指定默认值。该值可以是适合相应
+{@link android.preference.Preference} 对象的任意数据类型。例如：
+</p>
+
+<pre>
+&lt;!-- default value is a boolean -->
+&lt;CheckBoxPreference
+    android:defaultValue="true"
+    ... />
+
+&lt;!-- default value is a string -->
+&lt;ListPreference
+    android:defaultValue="@string/pref_syncConnectionTypes_default"
+    ... />
+</pre>
+
+<p>然后，通过应用的主 Activity（以及用户首次进入应用所藉由的任何其他 Activity）中的 {@link android.app.Activity#onCreate onCreate()}
+方法调用 {@link android.preference.PreferenceManager#setDefaultValues
+setDefaultValues()}：
+</p>
+
+<pre>
+PreferenceManager.setDefaultValues(this, R.xml.advanced_preferences, false);
+</pre>
+
+<p>在
+{@link android.app.Activity#onCreate onCreate()}
+期间调用此方法可确保使用默认设置正确初始化应用，而应用可能需要读取这些设置以确定某些行为（例如，是否在蜂窝网络中下载数据）。
+</p>
+
+<p>此方法采用三个参数：</p>
+<ul>
+  <li>应用 {@link android.content.Context}。</li>
+  <li>要为其设置默认值的首选项 XML 文件的资源 ID。</li>
+  <li>一个布尔值，用于指示是否应该多次设置默认值。
+<p>如果该值为 <code>false</code>，则仅当过去从未调用此方法时（或者默认值共享首选项文件中的
+{@link android.preference.PreferenceManager#KEY_HAS_SET_DEFAULT_VALUES}为
+false 时），系统才会设置默认值。</p></li>
+</ul>
+
+<p>只要将第三个参数设置为
+<code>false</code>，您便可在每次启动 Activity 时安全地调用此方法，而不必通过重置为默认值来替代用户已保存的首选项。
+但是，如果将它设置为
+<code>true</code>，则需要使用默认值替代之前的所有值。</p>
+
+
+
+<h2 id="PreferenceHeaders">使用首选项标头</h2>
+
+<p>在极少数情况下，您可能需要设计设置，使第一个屏幕仅显示<a href="#Subscreens">子屏幕</a>的列表（例如在系统“设置”应用中，如图 4 和图 5 所示）。
+
+在开发针对 Android 3.0 及更高版本系统的此类设计时，您应该使用
+Android 3.0 中的新“标头”功能，而非使用嵌套的
+{@link android.preference.PreferenceScreen} 元素构建子屏幕。</p>
+
+<p>要使用标头构建设置，您需要：</p>
+<ol>
+  <li>将每组设置分成单独的 {@link
+android.preference.PreferenceFragment} 实例。即，每组设置均需要一个单独的 XML
+文件。</li>
+  <li>创建 XML
+标头文件，其中列出每个设置组并声明哪个片段包含对应的设置列表。</li>
+  <li>扩展 {@link android.preference.PreferenceActivity} 类以托管设置。</li>
+  <li>实现 {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()}
+回调以指定标头文件。</li>
+</ol>
+
+<p>使用此设计的一大好处是，在大屏幕上运行时，{@link android.preference.PreferenceActivity}
+会自动提供双窗格布局（如图 4 所示）。</p>
+
+<p>即使您的应用支持早于 3.0 的 Android 版本，您仍可将应用设计为使用
+{@link android.preference.PreferenceFragment}
+在较新版本的设备上呈现双窗格布局，同时仍支持较旧版本设备上传统的多屏幕层次结构（请参阅<a href="#BackCompatHeaders">使用首选项标头支持旧版本</a>部分）。
+
+</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-tablet.png" alt="" />
+<p class="img-caption"><strong>图 4. </strong>带标头的双窗格布局。 <br/><b>1.</b>标头用
+XML 标头文件定义。 <br/><b>2.</b>每组设置均由
+{@link android.preference.PreferenceFragment}（通过标头文件中的 {@code &lt;header&gt;}
+元素指定）定义。</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-handset.png" alt="" />
+<p class="img-caption"><strong>图 5. </strong>带设置标头的手机设备。选择项目后，相关的
+{@link android.preference.PreferenceFragment}
+将替换标头。</p>
+
+
+<h3 id="CreateHeaders" style="clear:left">创建标头文件</h3>
+
+<p>标头列表中的每组设置均由根 {@code &lt;preference-headers&gt;} 元素内的单个 {@code &lt;header&gt;}
+元素指定。例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;!-- key/value pairs can be included as arguments for the fragment. -->
+        &lt;extra android:name="someKey" android:value="someHeaderValue" />
+    &lt;/header>
+&lt;/preference-headers>
+</pre>
+
+<p>每个标头均可使用 {@code android:fragment} 属性声明在用户选择该标头时应打开的 {@link
+android.preference.PreferenceFragment} 实例。</p>
+
+<p>{@code &lt;extras&gt;} 元素允许您使用 {@link
+android.os.Bundle} 将键值对传递给片段。该片段可以通过调用 {@link
+android.app.Fragment#getArguments()} 检索参数。您向该片段传递参数的原因可能有很多，不过一个重要原因是，要对每个组重复使用
+{@link
+android.preference.PreferenceFragment}
+的相同子类，而且要使用参数来指定该片段应加载哪些首选项 XML 文件。</p>
+
+<p>例如，当每个标头均使用
+{@code "settings"} 键定义 {@code &lt;extra&gt;} 参数时，则可以对多个设置组重复使用以下片段：</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        String settings = getArguments().getString("settings");
+        if ("notifications".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_wifi);
+        } else if ("sync".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_sync);
+        }
+    }
+}
+</pre>
+
+
+
+<h3 id="DisplayHeaders">显示标头</h3>
+
+<p>要显示首选项标头，您必须实现 {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} 回调方法并调用
+{@link android.preference.PreferenceActivity#loadHeadersFromResource
+loadHeadersFromResource()}。例如：</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onBuildHeaders(List&lt;Header> target) {
+        loadHeadersFromResource(R.xml.preference_headers, target);
+    }
+}
+</pre>
+
+<p>当用户从标头列表中选择一个项目时，系统会打开相关的 {@link
+android.preference.PreferenceFragment}。</p>
+
+<p class="note"><strong>注：</strong>使用首选项标头时，{@link
+android.preference.PreferenceActivity} 的子类无需实现 {@link
+android.preference.PreferenceActivity#onCreate onCreate()}
+方法，因为 Activity 唯一所需执行的任务就是加载标头。</p>
+
+
+<h3 id="BackCompatHeaders">使用首选项标头支持旧版本</h3>
+
+<p>如果您的应用支持早于 3.0 的 Android
+版本，则在 Android 3.0 及更高版本系统上运行时，您仍可使用标头提供双窗格数据。为此，您只需另外创建
+一个使用基本 {@link android.preference.Preference
+&lt;Preference&gt;} 元素的首选项 XML 文件即可，这些基本元素的行为方式与标头项目类似（供较旧版本的 Android
+ 系统使用）。</p>
+
+<p>但是，每个 {@link
+android.preference.Preference &lt;Preference&gt;} 元素均会向 {@link android.preference.PreferenceActivity} 发送一个 {@link android.content.Intent}，指定要加载哪个首选项 XML 文件，而不是打开新的
+{@link android.preference.PreferenceScreen}。
+</p>
+
+<p>例如，下面就是一个用于 Android 3.0
+及更高版本系统的首选项标头 XML 文件 ({@code res/xml/preference_headers.xml})：</p> 
+
+<pre>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" />
+&lt;/preference-headers>
+</pre>
+
+<p>下面是为早于
+Android 3.0 版本的系统提供相同标头的首选项文件 ({@code res/xml/preference_headers_legacy.xml})：</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;Preference 
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one"  >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_ONE" />
+    &lt;/Preference>
+    &lt;Preference 
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_TWO" />
+    &lt;/Preference>
+&lt;/PreferenceScreen>
+</pre>
+
+<p>由于是从 Android 3.0 开始方添加对 {@code &lt;preference-headers&gt;} 的支持，因此只有在 Androd 3.0 或更高版本中运行时，系统才会在您的 {@link
+android.preference.PreferenceActivity}
+中调用 {@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()}。要加载“旧版”标头文件
+({@code preference_headers_legacy.xml})，您必须检查 Android
+版本，如果版本低于 Android 3.0 ({@link
+android.os.Build.VERSION_CODES#HONEYCOMB})，请调用 {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()}
+来加载旧版标头文件。例如：</p>
+
+<pre>
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    ...
+
+    if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+
+// Called only on Honeycomb and later
+&#64;Override
+public void onBuildHeaders(List&lt;Header> target) {
+   loadHeadersFromResource(R.xml.preference_headers, target);
+}
+</pre>
+
+<p>最后要做的就是处理传入 Activity 的
+{@link android.content.Intent}，以确定要加载的首选项文件。因此，请检索 Intent 的操作，并将其与在首选项 XML 的 {@code &lt;intent&gt;}
+标记中使用的已知操作字符串进行比较。</p>
+
+<pre>
+final static String ACTION_PREFS_ONE = "com.example.prefs.PREFS_ONE";
+...
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+
+    String action = getIntent().getAction();
+    if (action != null &amp;&amp; action.equals(ACTION_PREFS_ONE)) {
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+
+    else if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+</pre>
+
+<p>值得注意的是，连续调用 {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()}
+会将所有首选项堆叠在一个列表中，因此请将条件与
+else-if 语句链接在一起，确保它只调用一次。</p>
+
+
+
+
+
+<h2 id="ReadingPrefs">读取首选项</h2>
+
+<p>默认情况下，应用的所有首选项均保存到一个可通过调用静态方法
+{@link
+android.preference.PreferenceManager#getDefaultSharedPreferences
+PreferenceManager.getDefaultSharedPreferences()} 从应用内的任何位置访问的文件中。这将返回 {@link
+android.content.SharedPreferences} 对象，其中包含与
+{@link
+android.preference.PreferenceActivity} 中所用 {@link android.preference.Preference} 对象相关的所有键值对。</p>
+
+<p>例如，从应用中的任何其他 Activity 读取某个首选项值的方法如下：
+</p>
+
+<pre>
+SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
+String syncConnPref = sharedPref.getString(SettingsActivity.KEY_PREF_SYNC_CONN, "");
+</pre>
+
+
+
+<h3 id="Listening">侦听首选项变更</h3>
+
+<p>出于某些原因，您可能希望在用户更改任一首选项时立即收到通知。
+要在任一首选项发生更改时收到回调，请实现
+{@link android.content.SharedPreferences.OnSharedPreferenceChangeListener
+SharedPreference.OnSharedPreferenceChangeListener} 接口，并通过调用 {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()} 为
+{@link android.content.SharedPreferences} 对象注册侦听器。</p>
+
+<p>该接口只有 {@link
+android.content.SharedPreferences.OnSharedPreferenceChangeListener#onSharedPreferenceChanged
+onSharedPreferenceChanged()}
+一种回调方法，而且您可能会发现在 Activity 过程中实现该接口最为简单。例如：</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity
+                              implements OnSharedPreferenceChangeListener {
+    public static final String KEY_PREF_SYNC_CONN = "pref_syncConnectionType";
+    ...
+
+    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
+        String key) {
+        if (key.equals(KEY_PREF_SYNC_CONN)) {
+            Preference connectionPref = findPreference(key);
+            // Set summary to be the user-description for the selected value
+            connectionPref.setSummary(sharedPreferences.getString(key, ""));
+        }
+    }
+}
+</pre>
+
+<p>在此示例中，该方法检查更改的设置是否是针对已知的首选项键。它调用
+{@link android.preference.PreferenceActivity#findPreference findPreference()} 来获取已更改的
+{@link android.preference.Preference}
+对象，以便能够将项目摘要修改为对用户选择的说明。即，如果设置为 {@link
+android.preference.ListPreference} 或其他多选设置时，则当设置更改为显示当前状态（例如，图
+5 所示的“Sleep”设置）时，您应调用 {@link
+android.preference.Preference#setSummary setSummary()}。</p>
+
+<p class="note"><strong>注：</strong>正如 Android 设计有关<a href="{@docRoot}design/patterns/settings.html">设置</a>的文档中所述，我们建议您在用户每次更改首选项时更新
+{@link android.preference.ListPreference}
+的摘要，以描述当前设置。</p>
+
+<p>若要妥善管理 Activity 生命周期，我们建议您在
+{@link
+android.app.Activity#onResume} 和 {@link android.app.Activity#onPause} 回调期间分别注册和注销 {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener}。</p>
+
+<pre>
+&#64;Override
+protected void onResume() {
+    super.onResume();
+    getPreferenceScreen().getSharedPreferences()
+            .registerOnSharedPreferenceChangeListener(this);
+}
+
+&#64;Override
+protected void onPause() {
+    super.onPause();
+    getPreferenceScreen().getSharedPreferences()
+            .unregisterOnSharedPreferenceChangeListener(this);
+}
+</pre>
+
+<p class="caution"><strong>注意：</strong>目前，首选项管理器不会在您调用 {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}
+时存储对侦听器的强引用。但是，您必须存储对侦听器的强引用，否则它将很容易被当作垃圾回收。
+我们建议您将对侦听器的引用保存在只要您需要侦听器就会存在的对象的实例数据中。
+
+</p>
+
+<p>例如，在以下代码中，调用方未保留对侦听器的引用。
+因此，侦听器将容易被当作垃圾回收，并在将来某个不确定的时间失败：
+</p>
+
+<pre>
+prefs.registerOnSharedPreferenceChangeListener(
+  // Bad! The listener is subject to garbage collection!
+  new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+});
+</pre>
+
+<p>有鉴于此，请将对侦听器的引用存储在只要需要侦听器就会存在的对象的实例数据字段中：
+</p>
+
+<pre>
+SharedPreferences.OnSharedPreferenceChangeListener listener =
+    new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+};
+prefs.registerOnSharedPreferenceChangeListener(listener);
+</pre>
+
+<h2 id="NetworkUsage">管理网络使用情况</h2>
+
+
+<p>从 Android 4.0
+开始，通过系统的“设置”应用，用户可以了解自己的应用在前台和后台使用的网络数据量。然后，用户可以据此禁止具体的应用使用后台数据。
+为了避免用户禁止您的应用从后台访问数据，您应该有效地使用数据连接，并允许用户通过应用设置优化应用的数据使用。
+
+<p>
+
+<p>例如，您可以允许用户控制应用同步数据的频率，控制应用是否仅在有
+Wi-Fi 时才执行上传/下载操作，以及控制应用能否在漫游时使用数据，等等。为用户提供这些控件后，即使数据使用量接近他们在系统“设置”中设置的限制，他们也不大可能禁止您的应用访问数据，因为他们可以精确地控制应用使用的数据量。
+
+
+</p>
+
+<p>在 {@link android.preference.PreferenceActivity}
+中添加必要的首选项来控制应用的数据使用习惯后，您应立即在清单文件中为 {@link
+android.content.Intent#ACTION_MANAGE_NETWORK_USAGE} 添加 Intent 过滤器。例如：</p>
+
+<pre>
+&lt;activity android:name="SettingsActivity" ... >
+    &lt;intent-filter>
+       &lt;action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
+       &lt;category android:name="android.intent.category.DEFAULT" />
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>此 Intent 
+过滤器指示系统此 Activity 控制应用的数据使用情况。因此，当用户从系统的“设置”应用检查应用所使用的数据量时，可以使用“查看应用设置”按钮启动
+{@link android.preference.PreferenceActivity}，这样，用户就能够优化应用使用的数据量。
+
+<em></em></p>
+
+
+
+
+
+
+
+<h2 id="Custom">构建自定义首选项</h2>
+
+<p>Android 框架包括各种
+{@link android.preference.Preference}
+子类，您可以使用它们为各种不同类型的设置构建 UI。不过，您可能会发现自己需要的设置没有内置解决方案，例如，数字选取器或日期选取器。
+在这种情况下，您将需要通过扩展
+{@link android.preference.Preference} 类或其他子类之一来创建自定义首选项。</p>
+
+<p>扩展 {@link android.preference.Preference}
+类时，您需要执行以下几项重要操作：</p>
+
+<ul>
+  <li>指定在用户选择设置时显示的用户界面。</li>
+  <li>适时保存设置的值。</li>
+  <li>使用显示的当前（默认）值初始化
+{@link android.preference.Preference}。</li>
+  <li>在系统请求时提供默认值。</li>
+  <li>如果 {@link android.preference.Preference}
+提供自己的 UI（例如对话框），请保存并恢复状态以处理生命周期变更（例如，用户旋转屏幕）。</li>
+</ul>
+
+<p>下文介绍如何完成所有这些任务。</p>
+
+
+
+<h3 id="CustomSelected">指定用户界面</h3>
+
+  <p>如果您要直接扩展 {@link android.preference.Preference} 类，则需要实现
+{@link android.preference.Preference#onClick()}
+来定义在用户选择该项时发生的操作。不过，大多数自定义设置都会扩展 {@link android.preference.DialogPreference}
+以显示对话框，从而简化这一过程。扩展 {@link
+android.preference.DialogPreference} 时，必须在类构造函数中调用 {@link
+android.preference.DialogPreference#setDialogLayoutResource setDialogLayoutResourcs()}
+来指定对话框的布局。</p>
+
+  <p>例如，自定义 {@link
+android.preference.DialogPreference}
+可以使用下面的构造函数来声明布局并为默认的肯定和否定对话框按钮指定文本：</p>
+
+<pre>
+public class NumberPickerPreference extends DialogPreference {
+    public NumberPickerPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        
+        setDialogLayoutResource(R.layout.numberpicker_dialog);
+        setPositiveButtonText(android.R.string.ok);
+        setNegativeButtonText(android.R.string.cancel);
+        
+        setDialogIcon(null);
+    }
+    ...
+}
+</pre>
+
+
+
+<h3 id="CustomSave">保存设置的值</h3>
+
+<p>如果设置的值为整型数或是用于保存布尔值的
+{@link android.preference.Preference#persistBoolean persistBoolean()}，则可通过调用 {@link
+android.preference.Preference} 类的一个 {@code persist*()} 方法（如 {@link
+android.preference.Preference#persistInt persistInt()}）随时保存该值。</p>
+
+<p class="note"><strong>注：</strong>每个 {@link android.preference.Preference}
+均只能保存一种数据类型，因此您必须使用适合自定义
+{@link android.preference.Preference} 所用数据类型的 {@code persist*()} 方法。</p>
+
+<p>至于何时选择保留设置，则可能取决于要扩展的 {@link
+android.preference.Preference} 类。如果扩展
+{@link
+android.preference.DialogPreference}，则只能在对话框因肯定结果（用户选择“确定”按钮）而关闭时保留该值。</p>
+
+<p>当 {@link android.preference.DialogPreference} 关闭时，系统会调用 {@link
+android.preference.DialogPreference#onDialogClosed onDialogClosed()} 方法。该方法包括一个布尔参数，用于指定用户结果是否为“肯定”；如果值为
+<code>true</code>，则表示用户选择的是肯定按钮且您应该保存新值。
+例如：
+</p>
+
+<pre>
+&#64;Override
+protected void onDialogClosed(boolean positiveResult) {
+    // When the user selects "OK", persist the new value
+    if (positiveResult) {
+        persistInt(mNewValue);
+    }
+}
+</pre>
+
+<p>在此示例中，<code>mNewValue</code>
+是一个类成员，可存放设置的当前值。调用 {@link android.preference.Preference#persistInt persistInt()} 会将该值保存到
+{@link android.content.SharedPreferences} 文件（自动使用在此
+{@link android.preference.Preference} 的 XML 文件中指定的键）。</p>
+
+
+<h3 id="CustomInitialize">初始化当前值</h3>
+
+<p>系统将 {@link android.preference.Preference} 添加到屏幕时，会调用
+{@link android.preference.Preference#onSetInitialValue onSetInitialValue()}
+来通知您设置是否具有保留值。如果没有保留值，则此调用将为您提供默认值。
+</p>
+
+<p>{@link android.preference.Preference#onSetInitialValue onSetInitialValue()}
+方法传递一个布尔值 (<code>restorePersistedValue</code>)，以指示是否已为该设置保留值。
+如果值为 <code>true</code>，则应通过调用
+{@link
+android.preference.Preference} 类的一个 {@code getPersisted*()} 方法（如整型值对应的 {@link
+android.preference.Preference#getPersistedInt getPersistedInt()}）来检索保留值。通常，您会需要检索保留值，以便能够正确更新 UI 来反映之前保存的值。
+
+</p>
+
+<p>如果 <code>restorePersistedValue</code> 为
+<code>false</code>，则应使用在第二个参数中传递的默认值。</p>
+
+<pre>
+&#64;Override
+protected void onSetInitialValue(boolean restorePersistedValue, Object defaultValue) {
+    if (restorePersistedValue) {
+        // Restore existing state
+        mCurrentValue = this.getPersistedInt(DEFAULT_VALUE);
+    } else {
+        // Set default state from the XML attribute
+        mCurrentValue = (Integer) defaultValue;
+        persistInt(mCurrentValue);
+    }
+}
+</pre>
+
+<p>每种 {@code getPersisted*()}
+方法均采用一个参数，用于指定在实际上没有保留值或该键不存在时所要使用的默认值。在上述示例中，当
+{@link
+android.preference.Preference#getPersistedInt getPersistedInt()} 不能返回保留值时，局部常量用于指定默认值。</p>
+
+<p class="caution"><strong>注意：</strong>您<strong>不能</strong>使用
+<code>defaultValue</code> 作为 {@code getPersisted*()} 方法中的默认值，因为当
+<code>restorePersistedValue</code> 为 <code>true</code> 时，其值始终为 null。</p>
+
+
+<h3 id="CustomDefault">提供默认值</h3>
+
+<p>如果 {@link android.preference.Preference}
+类的实例指定一个默认值（使用 {@code android:defaultValue}
+属性），则在实例化对象以检索该值时，系统会调用 {@link android.preference.Preference#onGetDefaultValue
+onGetDefaultValue()}。您必须实现此方法，系统才能将默认值保存在 {@link
+android.content.SharedPreferences} 中。
+例如：</p>
+
+<pre>
+&#64;Override
+protected Object onGetDefaultValue(TypedArray a, int index) {
+    return a.getInteger(index, DEFAULT_VALUE);
+}
+</pre>
+
+<p>方法参数可提供您所需的一切：属性的数组和
+{@code android:defaultValue}（必须检索的值）的索引位置。之所以必须实现此方法以从该属性中提取默认值，是因为您必须为此属性指定在未定义属性值时所要使用的局部默认值。
+
+</p>
+
+
+
+<h3 id="CustomSaveState">保存和恢复首选项的状态</h3>
+
+<p>正如布局中的 {@link android.view.View}
+一样，在重启 Activity 或片段时（例如，用户旋转屏幕），{@link android.preference.Preference}
+子类也负责保存并恢复其状态。要正确保存并恢复
+{@link android.preference.Preference} 类的状态，您必须实现生命周期回调方法
+{@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} 和 {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()}。</p>
+
+<p>{@link android.preference.Preference} 的状态由实现
+{@link android.os.Parcelable} 接口的对象定义。Android 框架为您提供此类对象，作为定义状态对象（{@link
+android.preference.Preference.BaseSavedState}
+类）的起点。</p>
+
+<p>要定义 {@link android.preference.Preference} 类保存其状态的方式，您应该扩展
+{@link android.preference.Preference.BaseSavedState} 类。您只需重写几种方法并定义
+{@link android.preference.Preference.BaseSavedState#CREATOR}
+对象。</p>
+
+<p>对于大多数应用，如果 {@link android.preference.Preference}
+子类保存除整型数以外的其他数据类型，则可复制下列实现并直接更改处理
+{@code value} 的行。</p>
+
+<pre>
+private static class SavedState extends BaseSavedState {
+    // Member that holds the setting's value
+    // Change this data type to match the type saved by your Preference
+    int value;
+
+    public SavedState(Parcelable superState) {
+        super(superState);
+    }
+
+    public SavedState(Parcel source) {
+        super(source);
+        // Get the current preference's value
+        value = source.readInt();  // Change this to read the appropriate data type
+    }
+
+    &#64;Override
+    public void writeToParcel(Parcel dest, int flags) {
+        super.writeToParcel(dest, flags);
+        // Write the preference's value
+        dest.writeInt(value);  // Change this to write the appropriate data type
+    }
+
+    // Standard creator object using an instance of this class
+    public static final Parcelable.Creator&lt;SavedState> CREATOR =
+            new Parcelable.Creator&lt;SavedState>() {
+
+        public SavedState createFromParcel(Parcel in) {
+            return new SavedState(in);
+        }
+
+        public SavedState[] newArray(int size) {
+            return new SavedState[size];
+        }
+    };
+}
+</pre>
+
+<p>如果将上述 {@link android.preference.Preference.BaseSavedState}
+实现添加到您的应用（通常，作为 {@link android.preference.Preference}
+子类的子类），则需要为
+{@link android.preference.Preference} 子类实现 {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} 和 {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()} 方法。</p>
+
+<p>例如：</p>
+
+<pre>
+&#64;Override
+protected Parcelable onSaveInstanceState() {
+    final Parcelable superState = super.onSaveInstanceState();
+    // Check whether this Preference is persistent (continually saved)
+    if (isPersistent()) {
+        // No need to save instance state since it's persistent,
+        // use superclass state
+        return superState;
+    }
+
+    // Create instance of custom BaseSavedState
+    final SavedState myState = new SavedState(superState);
+    // Set the state's value with the class member that holds current
+    // setting value
+    myState.value = mNewValue;
+    return myState;
+}
+
+&#64;Override
+protected void onRestoreInstanceState(Parcelable state) {
+    // Check whether we saved the state in onSaveInstanceState
+    if (state == null || !state.getClass().equals(SavedState.class)) {
+        // Didn't save the state, so call superclass
+        super.onRestoreInstanceState(state);
+        return;
+    }
+
+    // Cast state to custom BaseSavedState and pass to superclass
+    SavedState myState = (SavedState) state;
+    super.onRestoreInstanceState(myState.getSuperState());
+    
+    // Set this Preference's widget to reflect the restored state
+    mNumberPicker.setValue(myState.value);
+}
+</pre>
+
diff --git a/docs/html-intl/intl/zh-cn/guide/topics/ui/ui-events.jd b/docs/html-intl/intl/zh-cn/guide/topics/ui/ui-events.jd
new file mode 100644
index 0000000..f9e97630
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/guide/topics/ui/ui-events.jd
@@ -0,0 +1,291 @@
+page.title=输入事件
+parent.title=用户界面
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本文内容</h2>
+  <ol>
+    <li><a href="#EventListeners">事件侦听器</a></li>
+    <li><a href="#EventHandlers">事件处理程序</a></li>
+    <li><a href="#TouchMode">触摸模式</a></li>
+    <li><a href="#HandlingFocus">处理焦点</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>在 Android 系统中，从用户与应用的交互中截获事件的方法不止一种。如考虑截获用户界面内的事件，则可从用户与之交互的特定视图对象中捕获事件。
+
+为此，View 类提供了多种方法。</p>
+
+<p>在您将用于构建布局的各种 View 类中，您可能会注意到几种看起来适用于
+UI 事件的公共回调方法。当该对象上发生相应的操作时，Android
+框架会调用这些方法。例如，在触摸一个视图对象（例如“按钮”）时，对该对象调用
+<code>onTouchEvent()</code> 方法。不过，为了截获此事件，您必须扩展 View 类并重写该方法。
+然而，为了处理此类事件而扩展每个视图对象并不现实。
+正因如此，View 类还包含一系列嵌套接口以及您可以更加轻松定义的回调。
+这些接口称为<a href="#EventListeners">事件侦听器</a>，是您捕获用户与
+UI 之间交互的票证。</p>
+
+<p>尽管您通常会使用事件侦听器来侦听用户交互，但有时您确实需要扩展 View 类以构建自定义组件。
+也许，您想扩展
+{@link android.widget.Button}
+类来丰富某些内容的样式。在这种情况下，您将能够使用该类的<a href="#EventHandlers">事件处理程序</a>为类定义默认事件行为。
+</p>
+
+
+<h2 id="EventListeners">事件侦听器</h2>
+
+<p>事件侦听器是 {@link android.view.View}
+类中包含一个回调方法的接口。当用户与 UI 项目之间的交互触发已注册此视图的侦听器时，Android
+框架将调用这些方法。</p>
+
+<p>各事件侦听器接口包含的回调方法如下：</p>
+
+<dl>
+  <dt><code>onClick()</code></dt>
+    <dd>在 {@link android.view.View.OnClickListener} 中。
+当用户触摸项目（处于触摸模式下）时，或者使用导航键或轨迹球聚焦于项目，然后按适用的“Enter”键或按下轨迹球时，将调用此方法。
+
+</dd>
+  <dt><code>onLongClick()</code></dt>
+    <dd>在 {@link android.view.View.OnLongClickListener} 中。
+当用户触摸并按住项目（处于触摸模式下）者，或者使用导航键或轨迹球聚焦于项目，然后按住适用的“Enter”键或按住轨迹球（持续一秒钟）时，将调用此方法。
+
+</dd>
+  <dt><code>onFocusChange()</code></dt>
+    <dd>在 {@link android.view.View.OnFocusChangeListener} 中。
+当用户使用导航键或轨迹球导航到或远离项目时，将调用此方法。</dd>
+  <dt><code>onKey()</code></dt>
+    <dd>在 {@link android.view.View.OnKeyListener} 中。
+当用户聚焦于项目并按下或释放设备上的硬按键时，将调用此方法。</dd>
+  <dt><code>onTouch()</code></dt>
+    <dd>在 {@link android.view.View.OnTouchListener} 中。
+当用户执行可视为触摸事件的操作时，其中包括按下、释放或屏幕上的任何移动手势（在项目边界内），将调用此方法。
+</dd>
+  <dt><code>onCreateContextMenu()</code></dt>
+    <dd>在 {@link android.view.View.OnCreateContextMenuListener} 中。
+当（因持续“长按”而）生成上下文菜单时，将调用此方法。请参阅<a href="{@docRoot}guide/topics/ui/menus.html#context-menu">菜单</a>开发者指南中有关上下文菜单的阐述。
+
+</dd>
+</dl>
+
+<p>这些方法是其相应接口的唯一成员。要定义其中一个方法并处理事件，请在 Activity 中实现嵌套接口或将其定义为匿名类。然后，将实现的实例传递给相应的
+<code>View.set...Listener()</code>
+方法。
+（例如，调用
+<code>{@link android.view.View#setOnClickListener(View.OnClickListener) setOnClickListener()}</code>
+并向其传递 {@link android.view.View.OnClickListener OnClickListener} 实现。）</p>
+
+<p>以下示例显示了如何为按钮注册点击侦听器。 </p>
+
+<pre>
+// Create an anonymous implementation of OnClickListener
+private OnClickListener mCorkyListener = new OnClickListener() {
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+};
+
+protected void onCreate(Bundle savedValues) {
+    ...
+    // Capture our button from layout
+    Button button = (Button)findViewById(R.id.corky);
+    // Register the onClick listener with the implementation above
+    button.setOnClickListener(mCorkyListener);
+    ...
+}
+</pre>
+
+<p>您可能还会发现，将
+OnClickListener 作为 Activity 的一部分来实现更为方便。这样可以避免加载额外的类和分配对象。例如：</p>
+<pre>
+public class ExampleActivity extends Activity implements OnClickListener {
+    protected void onCreate(Bundle savedValues) {
+        ...
+        Button button = (Button)findViewById(R.id.corky);
+        button.setOnClickListener(this);
+    }
+
+    // Implement the OnClickListener callback
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+    ...
+}
+</pre>
+
+<p>请注意，上述示例中的
+<code>onClick()</code> 回调没有返回值，但是其他某些事件侦听器方法必须返回布尔值。具体原因取决于事件。
+对于这几个事件侦听器，必须返回布尔值的原因如下：</p>
+<ul>
+  <li><code>{@link android.view.View.OnLongClickListener#onLongClick(View) onLongClick()}</code>：
+此方法返回一个布尔值，表示您是否已处理完事件，以及是否应该将它继续传下去。
+也就是说，返回“true”表示您已经处理事件且事件应就此停止；如果您尚未处理事件和/或事件应该继续传递给其他任何点击侦听器，则返回“false”。
+
+<em></em><em></em></li>
+  <li><code>{@link android.view.View.OnKeyListener#onKey(View,int,KeyEvent) onKey()}</code>：
+此方法返回一个布尔值，表示您是否已处理完事件，以及是否应该将它继续传下去。
+    也就是说，返回“true”表示您已经处理事件且事件应就此停止；如果您尚未处理事件和/或事件应该继续传递给其他任何按键侦听器，则返回“false”。
+
+<em></em><em></em></li>
+  <li><code>{@link android.view.View.OnTouchListener#onTouch(View,MotionEvent) onTouch()}</code>：
+此方法返回一个布尔值，表示侦听器是否处理完此事件。重要的是，此事件可以拥有多个分先后顺序的操作。
+因此，如果在收到关闭操作事件时返回“false”，则表示您并未处理完此事件，而且对其后续操作也不感兴趣。
+
+<em></em>因此，您无需执行事件内的任何其他操作，如手势或最终操作事件。
+</li>
+</ul>
+
+<p>请记住，硬按键事件总是传递给目前处于焦点的视图对象。它们从视图
+层次结构的顶部开始分派，然后向下，直至到达合适的目的地。如果您的视图对象（或视图对象的子项）目前具有焦点，那么您可以看到事件经由
+<code>{@link android.view.View#dispatchKeyEvent(KeyEvent)
+dispatchKeyEvent()}</code> 方法的分派过程。除了通过视图捕获按键事件，您还可以使用
+<code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>
+和 <code>{@link android.app.Activity#onKeyUp(int,KeyEvent) onKeyUp()}</code> 接收 Activity 内部的所有事件。</p>
+
+<p>此外，考虑应用的文本输入时，请记住：许多设备只有软件输入法。
+此类方法无需基于按键；某些可能使用语音输入、手写等。尽管输入法提供了类似键盘的界面，但它通常<strong>不会</strong>触发
+<code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code>
+系列的事件。除非您要将应用限制为带有硬键盘的设备，否则，在设计 UI 时切勿要求必须通过特定按键进行控制。
+
+特别是，当用户按下返回键时，不要依赖这些方法验证输入；请改用
+{@link android.view.inputmethod.EditorInfo#IME_ACTION_DONE}
+等操作让输入法知晓您的应用预计会作何反应，这样，可以通过一种有意义的方式更改其 UI。不要推断软件输入法应如何工作，只要相信它能够为应用提供已设置格式的文本即可。
+</p>
+
+<p class="note"><strong>注：</strong>Android 会先调用事件处理程序，然后从类定义调用合适的默认处理程序。
+因此，从这些事件侦听器返回“true”会停止将事件传播到其他事件侦听器，还会阻止回调视图对象中的默认事件处理程序。<em></em>
+
+因此，在返回“true”时请确保您要终止事件。<em></em></p>
+
+
+<h2 id="EventHandlers">事件处理程序</h2>
+
+<p>如果您从视图构建自定义组件，则将能够定义几种用作默认事件处理程序的回调方法。在有关<a href="{@docRoot}guide/topics/ui/custom-components.html">自定义组件</a>的文档中，您将了解某些用于事件处理的常见回调，其中包括：
+
+
+
+</p>
+<ul>
+  <li><code>{@link  android.view.View#onKeyDown}</code>：在发生新的按键事件时调用</li>
+  <li><code>{@link  android.view.View#onKeyUp}</code>：在发生按键弹起事件时调用</li>
+  <li><code>{@link  android.view.View#onTrackballEvent}</code>：在发生轨迹球运动事件时调用</li>
+  <li><code>{@link  android.view.View#onTouchEvent}</code>：在发生触摸屏运动事件时调用</li>
+  <li><code>{@link  android.view.View#onFocusChanged}</code>：在视图获得或失去焦点时调用</li>
+</ul>
+<p>还有一些其他方法值得您注意，尽管它们并非 View 类的一部分，但可能会直接影响所能采取的事件处理方式。
+因此，在管理布局内更复杂的事件时，请考虑使用以下其他方法：
+</p>
+<ul>
+  <li><code>{@link  android.app.Activity#dispatchTouchEvent(MotionEvent)
+    Activity.dispatchTouchEvent(MotionEvent)}</code>：此方法允许 {@link 
+    android.app.Activity} 在分派给窗口之前截获所有触摸事件。</li>
+  <li><code>{@link  android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)
+    ViewGroup.onInterceptTouchEvent(MotionEvent)}</code>：此方法允许 {@link
+    android.view.ViewGroup} 监视分派给子视图的事件。</li>
+  <li><code>{@link  android.view.ViewParent#requestDisallowInterceptTouchEvent(boolean)
+    ViewParent.requestDisallowInterceptTouchEvent(boolean)}</code>：
+对父视图调用此方法表明不应使用 <code>{@link 
+    android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)}</code> 截获触摸事件。</li>
+</ul>
+
+<h2 id="TouchMode">触摸模式</h2>
+<p>
+当用户使用方向键或轨迹球导航用户界面时，必须聚焦到可操作项目上（如按钮），以便用户看到将接受输入的对象。
+
+但是，如果设备具有触摸功能且用户开始通过触摸界面与之交互，则不再需要突出显示项目或聚焦到特定视图对象上。
+
+因此，有一种交互模式称为“触摸模式”。
+ 
+</p>
+<p>
+对于支持触摸功能的设备，当用户触摸屏幕时，设备会立即进入触摸模式。
+自此以后，只有
+{@link android.view.View#isFocusableInTouchMode}
+为“true”的视图才可聚焦，如文本编辑小工具。其他可触摸的视图（如按钮）在用户触摸时不会获得焦点；按下时它们只是触发点击侦听器。
+
+</p>
+<p>
+无论何时，只要用户点击方向键或滚动轨迹球，设备就会退出触摸模式并找到一个视图使其获得焦点。
+现在，用户可在不触摸屏幕的情况下继续与用户界面交互。
+
+</p>
+<p>
+整个系统（所有窗口和 Activity）都将保持触摸模式状态。要查询当前状态，您可以调用
+{@link android.view.View#isInTouchMode}
+来检查设备目前是否处于触摸模式。
+</p>
+
+
+<h2 id="HandlingFocus">处理焦点</h2>
+
+<p>该框架将处理例行焦点移动来响应用户输入。其中包括在视图被删除或隐藏时或在新视图变得可用时更改焦点。
+
+视图对象表示愿意通过
+<code>{@link android.view.View#isFocusable()}</code> 方法获得焦点。要设置视图能否获得焦点，请调用
+<code>{@link android.view.View#setFocusable(boolean) setFocusable()}</code>。在触摸模式中，您可以使用
+<code>{@link android.view.View#isFocusableInTouchMode()}</code> 查询视图是否允许聚焦，而且可以使用
+<code>{@link android.view.View#setFocusableInTouchMode(boolean) setFocusableInTouchMode()}</code> 对此进行更改。
+</p>
+
+<p>焦点移动所使用的算法会查找指定方向上距离最近的元素。
+在极少数情况下，默认算法可能与开发者的期望行为不一致。
+在这些情况下，您可以在布局文件中显式重写以下
+XML 属性：
+<var>nextFocusDown</var>、 <var>nextFocusLeft</var>、 <var>nextFocusRight</var>和
+<var>nextFocusUp</var>。将其中一个属性添加到失去焦点的视图。
+<em></em>将属性的值定义为应该聚焦的视图的
+ID。<em></em>例如：</p>
+<pre>
+&lt;LinearLayout
+    android:orientation="vertical"
+    ... >
+  &lt;Button android:id="@+id/top"
+          android:nextFocusUp="@+id/bottom"
+          ... />
+  &lt;Button android:id="@+id/bottom"
+          android:nextFocusDown="@+id/top"
+          ... />
+&lt;/LinearLayout>
+</pre>
+
+<p>一般来说，在此垂直布局中，从第一个按钮向上导航或从第二个按钮向下导航，焦点都不会移到任何其他位置。
+现在，顶部按钮已将底部按钮定义为
+ <var>nextFocusUp</var> （反之亦然），因而导航焦点将自上而下和自下而上循环往复。
+</p>
+
+<p>若要将一个视图声明为在 UI 中可聚焦（传统上并非如此），请在布局声明中将 <code>android:focusable</code> XML 属性添加到该视图。将值设置为
+
+ <var>true</var>。此外，您还可以使用
+<code>android:focusableInTouchMode</code> 将 Vew 声明为在触摸模式下可聚焦。</p>
+<p>要请求要获得焦点的特定视图，请调用 <code>{@link android.view.View#requestFocus()}</code>。</p>
+<p>要侦听焦点事件（视图获得或失去焦点时会收到通知），请使用
+<code>{@link android.view.View.OnFocusChangeListener#onFocusChange(View,boolean) onFocusChange()}</code>，
+如上文的<a href="#EventListeners">事件侦听器</a>部分中所述。</p>
+
+
+
+<!--
+<h2 is="EventCycle">Event Cycle</h2>
+   <p>The basic cycle of a View is as follows:</p>
+   <ol>
+    <li>An event comes in and is dispatched to the appropriate View. The View
+    handles the event and notifies any listeners.</li>
+    <li>If, in the course of processing the event, the View's bounds may need
+    to be changed, the View will call {@link android.view.View#requestLayout()}.</li>
+    <li>Similarly, if in the course of processing the event the View's appearance
+    may need to be changed, the View will call {@link android.view.View#invalidate()}.</li>
+    <li>If either {@link android.view.View#requestLayout()} or {@link android.view.View#invalidate()} were called,
+    the framework will take care of measuring, laying out, and drawing the tree
+    as appropriate.</li>
+   </ol>
+   
+   <p class="note"><strong>Note:</strong> The entire View tree is single threaded. You must always be on
+   the UI thread when calling any method on any View.
+   If you are doing work on other threads and want to update the state of a View
+   from that thread, you should use a {@link android.os.Handler}.
+   </p>
+-->
diff --git a/docs/html-intl/intl/zh-cn/index.jd b/docs/html-intl/intl/zh-cn/index.jd
index cdd81cd..ca3a84b 100644
--- a/docs/html-intl/intl/zh-cn/index.jd
+++ b/docs/html-intl/intl/zh-cn/index.jd
@@ -5,42 +5,81 @@
 
 @jd:body
 
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
 
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="/preview/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
   <div class="wrap" style="max-width:1100px;margin-top:0">
-    <div class="cols dac-hero-content">
-      <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
-      </div>
-      <div class="col-8of16 col-pull-7of16">
-        <div class="dac-hero-tag"></div>
-
-        <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
-        <p class="dac-hero-description">准备迎接 Android 的下一版本。在 Nexus 5、
-        6、9 和 Player 中测试应用。 </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/index.html">
+    <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+      <a href="{@docRoot}preview/index.html">
+        <h1 class="dac-hero-title">Android N Developer Preview</h1>
+        <p class="dac-hero-description">
+          Get ready for the next version of Android!
+          <strong>Test your apps</strong> on Nexus and other devices. Support new system
+          behaviors to <strong>save power and memory</strong>.
+          Extend your apps with <strong>multi-window UI</strong>,
+          <strong>direct reply notifications</strong> and more.
+        </p>
+        <a class="dac-hero-cta" href="/preview/index.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          开始！</a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
+          Learn more
+        </a><!--<br>
+        <a class="dac-hero-cta" href="/preview/support.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
+          Update to Developer Preview (final SDK)
+        </a><br>-->
+      </a>
+    </div>
+    <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+      <a href="{@docRoot}preview/index.html">
+        <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+             srcset="/images/home/n-preview-hero.png 1x,
+             /images/home/n-preview-hero_2x.png 2x">
         </a>
-      </div>
     </div>
   </div>
-</a>
-</article></section>
+</section>
 
-<div class="actions-bar dac-expand dac-invert">
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
   <div class="wrap dac-offset-parent">
     <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
       <i class="dac-sprite dac-arrow-down-gray"></i>
     </a>
+    <ul class="dac-actions">
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}sdk/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Get the SDK
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}samples/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Browse sample code
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}distribute/stories/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Watch stories
+        </a>
+      </li>
+    </ul>
+  </div><!-- end .wrap -->
+</div><!-- end .dac-actions -->
+
+<div id="useOldTemplates" style="display:none" class="actions-bar dac-expand dac-invert">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button="" href="#build-apps">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
     <div class="actions">
       <div><a href="{@docRoot}sdk/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
@@ -50,17 +89,15 @@
         <span class="dac-sprite dac-auto-chevron-large"></span>
         Browse Samples
       </a></div>
-      <div><a href="//www.youtube.com/user/androiddevelopers">
+      <div><a href="{@docRoot}distribute/stories/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
-        Watch Videos
+        Watch Stories
       </a></div>
     </div><!-- end .actions -->
   </div><!-- end .wrap -->
-</div><!-- end .actions-bar -->
+</div>
 
-
-
-<section class="dac-section dac-section-light" id="build-apps"><div class="wrap">
+<section class="dac-section dac-light" id="build-apps"><div class="wrap">
   <h1 class="dac-section-title">Build Beautiful Apps</h1>
   <div class="dac-section-subtitle">
     Resources to get you started with designing and developing for Android.
diff --git a/docs/html-intl/intl/zh-cn/preview/api-overview.jd b/docs/html-intl/intl/zh-cn/preview/api-overview.jd
deleted file mode 100644
index f7764cd..0000000
--- a/docs/html-intl/intl/zh-cn/preview/api-overview.jd
+++ /dev/null
@@ -1,521 +0,0 @@
-page.title=API 概览
-page.keywords=预览版,sdk,兼容性
-page.tags=previewresources, androidm
-sdk.platform.apiLevel=22-mnc
-page.image=images/cards/card-api-overview_16-9_2x.png
-@jd:body
-
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>本文内容
-<a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
-        <span class="more">显示详细信息</span>
-        <span class="less" style="display:none">显示精简信息</span></a></h2>
-
-<ol id="toc44" class="hide-nested">
-  <li><a href="#app-linking">应用链接</a></li>
-  <li><a href="#backup">自动备份应用</a></li>
-  <li><a href="#authentication">身份验证</a>
-    <ol>
-      <li><a href="#fingerprint-authentication">指纹身份验证</a></li>
-      <li><a href="#confirm-credential">确认凭据</a></li>
-    </ol>
-  </li>
-  <li><a href="#direct-share">直接共享</a></li>
-  <li><a href="#voice-interactions">语音交互</a></li>
-  <li><a href="#assist">助手 API</a></li>
-  <li><a href="#notifications">通知</a></li>
-  <li><a href="#bluetooth-stylus">蓝牙触控笔支持</a></li>
-  <li><a href="#ble-scanning">改进的蓝牙低功耗扫描</a></li>
-  <li><a href="#hotspot">Hotspot 2.0 第 1 版支持</a></li>
-  <li><a href="#4K-display">4K 显示模式</a></li>
-  <li><a href="#behavior-themeable-colorstatelists">主题化 ColorStateList</a></li>
-  <li><a href="#audio">音频功能</a></li>
-  <li><a href="#video">视频功能</a></li>
-  <li><a href="#camera">相机功能</a>
-    <ol>
-      <li><a href="#flashlight">闪光灯 API</a></li>
-      <li><a href="#reprocessing">相机再处理</a></li>
-    </ol>
-  </li>
-  <li><a href="#afw">Android for Work 功能</a></li>
-</ol>
-
-<h2>API 差异</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API 级别 22 至 M 预览版&raquo;</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>M 开发者预览版可让您预览即将推出的 Android 平台版本为用户和应用开发者提供的新功能。
-
-本文旨在介绍其中最值得关注的 API。</p>
-
-<p>M 开发者预览版的适用对象是<strong>喜欢尝鲜的开发者</strong>和<strong>测试人员</strong>。
-如果您有兴趣影响 Android 框架的发展方向，<a href="{@docRoot}preview/setup-sdk.html">欢迎试用 M 开发者预览版</a>并向我们提供反馈！
-
-
-</p>
-
-<p class="caution"><strong>注意</strong>：请不要在 Google Play 商店中发布基于 M 开发者预览版的应用。
-</p>
-
-<p class="note"><strong>注：</strong>本文经常提及的一些类和方法在 <a href="{@docRoot}">developer.android.com</a> 上尚未提供相关参考资料。
-这些 API 元素在本文中设置为 {@code code style} 格式（不带超链接）。
-如需查看这些元素的初步 API 文档，请下载<a href="{@docRoot}preview/download.html#docs">预览版参考资料</a>。
-</p>
-
-<h3>重要的行为变更</h3>
-
-<p>如果您之前发布过 Android 应用，请注意您的应用可能受到平台变化的影响。
-</p>
-
-<p>如需了解完整信息，请参阅<a href="behavior-changes.html">行为变更</a>。</p>
-
-<h2 id="app-linking">应用链接</h2>
-<p>此预览版通过提供功能更强大的应用链接，增强了 Android 的意向系统。您可以利用此功能将应用与您拥有的某个 Web 域关联。
-平台可以根据此关联确定在处理特定 Web 链接时默认使用的应用，跳过提示用户选择应用的步骤。如需了解如何实现此功能，请参阅<a href="{@docRoot}preview/features/app-linking.html">应用链接</a>。
-
-
-
-
-<h2 id="backup">自动备份应用</h2>
-<p>现在，系统可以自动为应用执行完整数据备份和恢复。对于以 M 预览版为目标平台的应用，系统会默认启用此行为，您无需额外添加任何代码。
-如果用户删除其 Google 帐户，其备份数据也会被删除。
-如需了解该功能的工作方式以及配置文件系统备份内容的方法，请参阅<a href="{@docRoot}preview/backup/index.html">自动备份应用</a>。
-
-</p>
-
-<h2 id="authentication">身份验证</h2>
-<p>本预览版提供一些新的 API，在受支持的设备上，用户只需扫描其指纹即可完成身份验证，还可检查系统最后一次使用设备解锁机制（如锁屏密码）对用户进行身份验证是发生在多久之前。
-
-这些 API 可与 <a href="{@docRoot}training/articles/keystore.html">Android 密钥库系统</a>结合使用。
-</p>
-
-<h3 id="fingerprint-authentication">指纹身份验证</h3>
-
-<p>如需通过指纹扫描验证用户身份，请获取新增 
-{@code android.hardware.fingerprint.FingerprintManager} 类的实例，并调用 
-{@code FingerprintManager.authenticate()} 方法。您的应用必须运行在带有指纹传感器的兼容设备上。
-您必须在应用中实现指纹身份验证流的用户界面，并在 UI 中使用标准 Android 指纹图标。<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">示例应用</a>中包含有 Android 指纹图标 ({@code c_fp_40px.png})。请注意，如果您要开发多个使用指纹身份验证的应用，每个应用必须独立验证用户的指纹。
-
-
-
-
-</p>
-
-<p>如需在您的应用中使用此功能，请先在清单文件中添加 {@code USE_FINGERPRINT} 权限。
-</p>
-
-<pre>
-&lt;uses-permission
-        android:name="android.permission.USE_FINGERPRINT" /&gt;
-</pre>
-
-<img src="{@docRoot}preview/images/fingerprint-screen.png" srcset="{@docRoot}preview/images/fingerprint-screen.png 1x, {@docRoot}preview/images/fingerprint-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-
-<p>如需查看指纹身份验证的应用实现，请参阅<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">指纹对话框示例</a>。
-
-</p>
-
-<p>如果您要测试此功能，请执行以下步骤：</p>
-<ol>
-<li>如果您尚未安装 Android SDK 工具 24.3 修订版，请执行此操作。</li>
-<li>转到<strong>设置 &gt; 安全 &gt; 指纹</strong>，然后按照登记说明在模拟器中登记新指纹。
-</li>
-<li>使用模拟器通过以下命令模拟指纹触摸事件。
-使用同一命令模拟锁屏上或应用中的指纹触摸事件。
-
-<pre class="no-prettyprint">
-adb -e emu finger touch &lt;finger_id&gt;
-</pre>
-<p>在 Windows 上，您可能需要运行带有 
-{@code finger touch <finger_id>} 参数的 {@code telnet 127.0.0.1 <emulator-id>} 命令。
-</p>
-</li>
-</ol>
-
-<h3 id="confirm-credential">确认凭据</h3>
-<p>您的应用可以根据用户在多久之前最后一次解锁设备来验证其身份。此功能让用户不必费心记忆应用特定密码，您也无需实现自己的身份验证用户界面。
-
-您的应用应当利用此功能并结合实现公钥或私钥，以进行用户身份验证。
-</p>
-
-<p>如需设置成功验证用户身份后可再次使用同一密钥的超时持续时间，请在设置 {@link javax.crypto.KeyGenerator} 或 
-{@link java.security.KeyPairGenerator} 时调用新增的 
-{@code android.security.keystore.KeyGenParameterSpec.setUserAuthenticationValidityDurationSeconds()}
- 方法。
-此功能目前适用于对称加密操作。
-</p>
-
-<p>避免过多显示重新验证对话框 -- 您的应用应尝试先使用加密对象，如果超时到期，请使用 
-{@link android.app.KeyguardManager#createConfirmDeviceCredentialIntent(java.lang.CharSequence, java.lang.CharSequence) createConfirmDeviceCredentialIntent()} 方法在您的应用内重新验证用户身份。
-
-
-</p>
-
-<p>如需查看此功能的应用实现，请参阅<a href="https://github.com/googlesamples/android-ConfirmCredential" class="external-link">确认凭据示例</a>。
-
-</p>
-
-<h2 id="direct-share">直接共享</h2>
-
-<img src="{@docRoot}preview/images/direct-share-screen.png" srcset="{@docRoot}preview/images/direct-share-screen.png 1x, {@docRoot}preview/images/direct-share-screen_2x.png 2x" style="float:right; margin:0 0 20px 30px" width="312" height="329" />
-
-<p>本预览版为您提供的 API 可让用户直观、快捷地进行共享。现在，您可以定义可在您的应用内启动特定活动的<em>直接共享目标</em>。这些直接共享目标通过“共享”<em></em>菜单公开给用户。
-
-此功能让用户可以向其他应用内的目标（如联系人）共享内容。
-例如，直接共享目标可以启动另一社交网络应用中的某个活动，让用户可以直接向该应用中的某位朋友或某个社区共享内容。
-
-</p>
-
-<p>如需启用直接共享目标，您必须定义一个类，用于扩展 
-{@code android.service.} <br>
-{@code chooser.ChooserTargetService} 类。在清单文件中声明您的 
-{@code ChooserTargetService}。在该声明内，指定 
-{@code BIND_CHOOSER_TARGET_SERVICE} 权限和一个带有 
-{@code SERVICE_INTERFACE} 操作的意向过滤器。</p>
-<p>以下示例展示了如何在清单文件中声明 {@code ChooserTargetService}。
-</p>
-<pre>
-&lt;service android:name=".ChooserTargetService"
-        android:label="&#64;string/service_name"
-        android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE"&gt;
-    &lt;intent-filter&gt;
-        &lt;action android:name="android.service.chooser.ChooserTargetService" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/service&gt;
-</pre>
-
-<p>对于您想要向 {@code ChooserTargetService} 公开的每个活动，请在您的应用清单文件中为其添加一个名为 
-{@code "android.service.chooser.chooser_target_service"} 的 
-{@code <meta-data>} 元素。
-</p>
-
-<pre>
-&lt;activity android:name=".MyShareActivity”
-        android:label="&#64;string/share_activity_label"&gt;
-    &lt;intent-filter>
-        &lt;action android:name="android.intent.action.SEND" /&gt;
-    &lt;/intent-filter>
-&lt;meta-data
-        android:name="android.service.chooser.chooser_target_service"
-        android:value=".ChooserTargetService" /&gt;
-&lt;/activity>
-</pre>
-
-<h2 id="voice-interactions">语音交互</h2>
-<p>
-本预览版提供了一个新的语音交互 API，与
-<a href="https://developers.google.com/voice-actions/" class="external-link">语音操作</a>一起使用时，可让您为应用内建对话式语音体验。
-调用 
-{@code android.app.Activity.isVoiceInteraction()} 方法可确定您的活动是否为响应语音操作而启动。
-如果是这样，则您的应用可以使用 
-{@code android.app.VoiceInteractor} 类请求用户进行语音确认、从选项列表中进行选择以及执行其他操作。
-如需了解有关实现语音操作的更多信息，请参阅 
-<a href="https://developers.google.com/voice-actions/interaction/" class="external-link">语音操作开发者网站</a>。
-</p>
-
-<h2 id="assist">助手 API</h2>
-<p>
-本预览版提供了一种让用户通过助手程序与应用进行互动的新方式。如需使用此功能，用户必须启用助手以使用当前上下文。
-启用后，用户可通过长按<strong>主页</strong>按钮在任何应用内召唤助手。
-</p>
-<p>您的应用可通过设置 
-{@link android.view.WindowManager.LayoutParams#FLAG_SECURE} 标志选择不与助手共享当前上下文。除了平台传递给助手的一组标准信息外，您的应用还可利用新增的 {@code android.app.Activity.AssistContent} 类共享其他信息。
-
-</p>
-
-<p>如需为助手提供您的应用内的其他上下文，请执行以下步骤：</p>
-
-<ol>
-<li>实现 {@link android.app.Application.OnProvideAssistDataListener} 接口。</li>
-<li>利用 
-{@link android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener) registerOnProvideAssistDataListener()} 注册此侦听器。</li>
-<li>如需提供特定于活动的上下文信息，请替代 
-{@link android.app.Activity#onProvideAssistData(android.os.Bundle) onProvideAssistData()}
- 回调和新增的 {@code Activity.onProvideAssistContent()} 回调（可选操作）。
-</ol>
-
-<h2 id="notifications">通知</h2>
-<p>本预览版针对通知功能引入了下列 API 变更：</p>
-<ul>
-  <li>新增了 {@code NotificationListenerService.INTERRUPTION_FILTER_ALARMS} 过滤级别，它对应于新增的“仅闹铃”<em></em>免打扰模式。
-</li>
-  <li>新增了 {@code Notification.CATEGORY_REMINDER} 类别值，用于区分用户安排的提醒与其他事件 ({@link android.app.Notification#CATEGORY_EVENT}) 和闹铃 ({@link android.app.Notification#CATEGORY_ALARM})。
-
-
-</li>
-  <li>新增了 {@code android.graphics.drawable.Icon} 类，可通过 {@code Notification.Builder.setSmallIcon(Icon)} 方法和 
-{@code Notification.Builder.setLargeIcon(Icon)} 方法附加到通知上。
-</li>
-  <li>新增了 {@code NotificationManager.getActiveNotifications()} 方法，让您的应用能够了解哪些通知目前处于活动状态。
-如需查看使用此功能的应用实现，请参阅<a href="https://github.com/googlesamples/android-ActiveNotifications" class="external-link">活动通知示例</a>。
-</li>
-</ul>
-
-<h2 id="bluetooth-stylus">蓝牙触控笔支持</h2>
-<p>本预览版改善了对用户使用蓝牙触控笔进行输入的支持。用户可将兼容的蓝牙触控笔与其手机或平板电脑配对并建立连接。
-连接后，来自触摸屏的位置信息将与来自触控笔的压力和按键信息融合，从而实现比单纯使用触摸屏更丰富的表达。
-
-您的应用可以通过在活动中注册新增的 
-{@code View.onStylusButtonPressListener} 回调和 {@code GestureDetector.OnStylusButtonPressListener}
- 回调侦听触控笔按键动作并执行辅助操作。
-</p>
-
-<p>可使用 {@link android.view.MotionEvent} 方法和常量来检测触控笔按键交互：
-</p>
-<ul>
-<li>如果用户使用带按键的触控笔触按应用屏幕，
-{@link android.view.MotionEvent#getToolType(int) getTooltype()} 方法会返回 
-{@link android.view.MotionEvent#TOOL_TYPE_STYLUS}。</li>
-<li>对于以 M 预览版为目标平台的应用，当用户按触控笔的主按键时，
-{@link android.view.MotionEvent#getButtonState() getButtonState()}
- 方法会返回 {@code MotionEvent.STYLUS_BUTTON_PRIMARY}。
-如果触控笔有辅助按键，当用户按下它时，同一方法会返回 
-{@code MotionEvent.STYLUS_BUTTON_SECONDARY}。如果用户同时按下两个按键，该方法会同时返回通过 OR 运算符连接起来的两个值 ({@code STYLUS_BUTTON_PRIMARY|STYLUS_BUTTON_SECONDARY})。
-
-</li>
-<li>
-对于以较低平台版本为目标的应用，
-{@link android.view.MotionEvent#getButtonState() getButtonState()} 方法返回 
-{@link android.view.MotionEvent#BUTTON_SECONDARY}（按下触控笔主按键时）、
-{@link android.view.MotionEvent#BUTTON_TERTIARY}（按下触控笔辅助按键时）之一或同时返回这两者。
-</li>
-</ul>
-
-<h2 id="ble-scanning">改进的蓝牙低功耗扫描</h2>
-<p>
-如果您的应用执行蓝牙低功耗扫描，可以使用新增的 
-{@code android.bluetooth.le.ScanSettings.Builder.setCallbackType()} 方法指定您只希望在下列条件下通知回调：首次找到与设置的 
-{@link android.bluetooth.le.ScanFilter} 匹配的播发数据包并且该数据包已有一段时间没有出现。
-
-这种扫描方法与旧平台版本中提供的方法相比更加节能。
-
-</p>
-
-<h2 id="hotspot">Hotspot 2.0 第 1 版支持</h2>
-<p>
-本预览版在 Nexus 6 和 Nexus 9 设备上添加了对 Hotspot 2.0 第 1 版规范的支持。如需在您的应用中设置 Hotspot 2.0 凭据，请使用新增的 
-{@link android.net.wifi.WifiEnterpriseConfig} 类方法，如 {@code setPlmn()} 方法和 
-{@code setRealm()} 方法。
-在 {@link android.net.wifi.WifiConfiguration} 对象中，您可以设置 
-{@link android.net.wifi.WifiConfiguration#FQDN} 字段和 {@code providerFriendlyName} 字段。
-新增的 {@code ScanResult.PasspointNetwork} 属性可指示检测到的网络是否为 Hotspot 2.0 接入点。
-
-</p>
-
-<h2 id="4K-display">4K 显示模式</h2>
-<p>现在，平台允许应用在兼容硬件上请求将显示分辨率升级到 4K 渲染。
-如需查询当前物理分辨率，请使用新增的 
-{@code android.view.Display.Mode} API。请注意，如果 UI 是以较低逻辑分辨率绘制并通过放大达到更高的物理分辨率，则 
-{@code Display.Mode.getPhysicalWidth()} 方法返回的物理分辨率可能不同于 {@link android.view.Display#getSize(android.graphics.Point) getSize()} 所报告的逻辑分辨率。
-
-</p>
-
-<p>您可以通过设置应用窗口的 {@code WindowManager.LayoutParams.preferredDisplayModeId} 属性请求系统更改应用运行时的物理分辨率。
-如果您想切换到 4K 显示分辨率，此功能会很有帮助。
-在 4K 显示模式下，UI 仍然以原始分辨率（如 1080p）渲染，通过放大达到 4K，但 
-{@link android.view.SurfaceView} 对象可能会以原生分辨率显示内容。
-</p>
-
-<h2 id="behavior-themeable-colorstatelists">主题化 ColorStateList</h2>
-<p>对于运行 M 预览版的设备，现在支持在 
-{@link android.content.res.ColorStateList} 中使用主题属性。
-{@link android.content.res.Resources#getColorStateList(int) getColorStateList()} 方法和 
-{@link android.content.res.Resources#getColor(int) getColor()} 方法已弃用。如果您要调用这些 API，请改为调用新增的 {@code Context.getColorStateList()} 方法或 
-{@code Context.getColor()} 方法。
-还可在 v4 appcompat 库中通过 {@link android.support.v4.content.ContextCompat} 使用这些方法。
-</p>
-
-<h2 id="audio">音频功能</h2>
-
-<p>本预览版增强了 Android 上的音频处理功能，包括： </p>
-<ul>
-  <li>通过新增的 {@code android.media.midi} API 提供了对 <a href="http://en.wikipedia.org/wiki/MIDI" class="external-link">MIDI</a>
- 协议的支持。使用这些 API 可发送和接收 MIDI 事件。
-</li>
-  <li>新增了 {@code android.media.AudioRecord.Builder} 类和 {@code android.media.AudioTrack.Builder}
- 类，分别用于创建数字音频采集和回放对象，还可用于配置音频源和接收器属性来替代系统默认值。
-</li>
-  <li>用于关联音频和输入设备的 API 钩子。如果您的应用允许用户通过与 Android TV 相连的游戏控制器或遥控器启动语音搜索，此功能尤为有用。系统会在用户启动搜索时调用新增的 {@code android.app.Activity.onSearchRequested()} 回调。
-
-
-如需确定用户的输入设备是否内置麦克风，请从该回调检索 {@link android.view.InputDevice} 对象，然后调用新增的 
-{@code InputDevice.hasMic()} 方法。
-</li>
-  <li>新增了 {@code android.media.AudioDevicesManager} 类，让您可以检索连接的所有源设备和接收器音频设备列表。
-如果您想让应用在音频设备连接或断开时收到通知，还可以指定一个 
-{@code android.media.OnAudioDeviceConnectionListener} 对象。
-</li>
-</ul>
-
-<h2 id="video">视频功能</h2>
-<p>本预览版为视频处理 API 添加了新功能，包括：</p>
-<ul>
-<li>新增了 {@code android.media.MediaSync} 类，可帮助应用同步渲染音频流和视频流。
-音频缓冲区以非锁定方式提交，并通过回调返回。
-此外，它还支持动态回放速率。
-</li>
-<li>新增了 {@code MediaDrm.EVENT_SESSION_RECLAIMED} 事件，它表示应用打开的会话已被资源管理器收回。
-如果您的应用使用 DRM 会话，则应处理此事件，并确保不使用收回的会话。
-
-</li>
-<li>新增了 {@code MediaCodec.CodecException.ERROR_RECLAIMED} 错误代码，它表示资源管理器收回了编解码器使用的媒体资源。
-出现此异常时，必须释放编解码器，因为它已转入终止状态。
-
-</li>
-<li>新增了 {@code MediaCodecInfo.CodecCapabilities.getMaxSupportedInstances()} 接口，用于获取有关支持的编解码器实例最大并发数量的提示。
-
-</li>
-<li>新增了 {@code MediaPlayer.setPlaybackParams()} 方法，用于设置快动作回放或慢动作回放的媒体回放速率。
-此外，它还会随视频一起自动拉长或加速音频回放。
-</li>
-</ul>
-
-<h2 id="camera">相机功能</h2>
-<p>本预览版提供了下列用于访问相机闪光灯和相机图像再处理的新 API：
-</p>
-
-<h3 id="flashlight">闪光灯 API</h3>
-<p>如果相机设备带有闪光灯，您可以通过调用 {@code CameraManager.setTorchMode()}
- 方法，在不打开相机设备的情况下打开或关闭闪光灯的火炬模式。应用对闪光灯或相机设备不享有独占所有权。
-每当相机设备不可用，或者开启火炬的其他相机资源不可用时，火炬模式即会被关闭并变为不可用状态。
-
-其他应用也可调用 {@code setTorchMode()} 来关闭火炬模式。
-当最后一个开启火炬模式的应用关闭时，火炬模式就会被关闭。
-</p>
-
-<p>您可以注册一个回调，通过调用 
-{@code CameraManager.registerTorchCallback()} 方法接收有关火炬模式状态的通知。第一次注册回调时，系统会立即调用它，并返回所有当前已知配备闪光灯的相机设备的火炬模式状态。
-
-如果成功开启或关闭火炬模式，系统会调用 
-{@code CameraManager.TorchCallback.onTorchModeChanged()} 方法。</p>
-
-<h3 id="reprocessing">再处理 API</h3>
-<p>{@link android.hardware.camera2 Camera2} API 进行了扩展，以支持 YUV 和专用不透明格式图像再处理。
-您的应用通过 {@code CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES} 确定再处理功能是否可用。
-如果设备支持再处理，您可以通过调用 
-{@code CameraDevice.createReprocessableCaptureSession()} 创建一个可再处理的相机捕获会话并创建输入缓冲区再处理请求。
-
-</p>
-
-<p>使用 {@code ImageWriter} 类可将输入缓冲区流与相机再处理输入相连。
-如需获得空白缓冲区，请遵循以下编程模型：</p>
-
-<ol>
-<li>调用 {@code ImageWriter.dequeueInputImage()} 方法。</li>
-<li>在输入缓冲区中填充数据。</li>
-<li>通过调用 {@code ImageWriter.queueInputImage()} 方法将缓冲区发送至相机。</li>
-</ol>
-
-<p>如果您将 {@code ImageWriter} 对象与 
-{@code android.graphics.ImageFormat.PRIVATE} 图像一起使用，您的应用并不能直接访问图像数据。
-请改为调用 {@code ImageWriter.queueInputImage()} 方法，将 {@code ImageFormat.PRIVATE} 图像直接传递给 
-{@code ImageWriter}，而无需进行任何缓冲区复制。
-</p>
-
-<p>{@code ImageReader} 类现在支持 {@code android.graphics.ImageFormat.PRIVATE} 格式图像流。
-凭借此支持特性，您的应用可使 
-{@code ImageReader} 输出图像保持为循环图像队列，还可选择一个或多个图像并将其发送给 
-{@code ImageWriter} 进行相机再处理。</p>
-
-<h2 id="afw">Android for Work 功能</h2>
-<p>本预览版提供了下列用于 Android for Work 的新 API：</p>
-<ul>
-  <li><strong>用于企业所有、单一用途设备的增强型控件</strong>：现在，设备所有者可以通过控制以下设置来改善企业所有、单一用途 (COSU) 设备的管理：
-
-
-  <ul>
-    <li>通过 
-{@code DevicePolicyManager.setKeyguardEnabledState()} 方法禁用或重新启用键盘锁。</li>
-    <li>通过 
-{@code DevicePolicyManager.setStatusBarEnabledState()} 方法禁用或重新启用状态栏（包括快速设置、通知以及启动 Google Now 的向上划动手势）。
-</li>
-    <li>通过 {@link android.os.UserManager} 常量 
-{@code DISALLOW_SAFE_BOOT} 禁用或重新启用安全启动</li>
-    <li>通过 
-{@link android.provider.Settings.Global} 常量 {@code STAY_ON_WHILE_PLUGGED_IN} 防止屏幕在插入电源的情况下关闭。</li>
-  </ul>
-  </li>
-  <li><strong>设备所有者静默式安装和卸载应用</strong>：现在，设备所有者可使用 {@link android.content.pm.PackageInstaller}
- API 在不依赖 Google Play for Work 的情况下静默式安装和卸载应用。
-现在，您可以通过设备所有者配置设备，从而无需用户干预即可获取并安装应用。
-此功能可用于在不激活 Google 帐户的情况下实现信息亭或其他此类设备的一键式配置。
-</li>
-<li><strong>静默式企业证书访问</strong>：现在，当应用调用 
-{@link android.security.KeyChain#choosePrivateKeyAlias(android.app.Activity,android.security.KeyChainAliasCallback,java.lang.String[],java.security.Principal[],java.lang.String,int,java.lang.String) choosePrivateKeyAlias()} 时，配置文件所有者或设备所有者可以在系统提示用户选择证书前调用 {@code DeviceAdminReceiver.onChoosePrivateKeyAlias()} 方法，静默式向发出请求的应用提供别名。
-
-
-此功能让您可以在无需用户干预的情况下授予托管应用访问证书的权限。
-</li>
-<li><strong>自动接受系统更新</strong>。现在，设备所有者可以通过 
-{@code DevicePolicyManager.setSystemUpdatePolicy()} 设置一个系统更新政策来自动接受系统更新（例如对于信息亭设备），或者推迟更新并在至多 30 天的时间内防止用户获取更新。
-
-此外，管理员还可设置每日必须获取更新的时间窗口，例如在信息亭设备无人使用的时段。
-有可用的系统更新时，系统会检查工作政策控制器应用是否设置了系统更新政策，并相应地执行操作。
-
-
-</li>
-<li>
-<strong>授权证书安装</strong>：配置文件所有者或设备所有者现在可以授权第三方应用调用以下 {@link android.app.admin.DevicePolicyManager} 证书管理 API：
-
-
-<ul>
-  <li>{@link android.app.admin.DevicePolicyManager#getInstalledCaCerts(android.content.ComponentName)
-getInstalledCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#hasCaCertInstalled(android.content.ComponentName,byte[])
-hasCaCertInstalled()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installCaCert(android.content.ComponentName,byte[])
-installCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallCaCert(android.content.ComponentName,byte[])
-uninstallCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallAllUserCaCerts(android.content.ComponentName)
-uninstallAllUserCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installKeyPair(android.content.ComponentName,java.security.PrivateKey,java.security.cert.Certificate,java.lang.String)
-installKeyPair()}</li>
-</ul>
-</li>
-<li><strong>企业恢复出厂设置保护</strong>：现在，配置设备所有者时，您可以通过设置 
-{@code DeviceManagerPolicy.EXTRA_PROVISIONING_RESET_PROTECTION_PARAMETERS} 捆绑包配置参数来解锁恢复出厂设置保护 (FRP)。
-在重置设备以解锁 FRP 和配置设备之后，NFC 编程器应用可提供这些参数，而无需事先配置 Google 帐户。
-
-如果您不修改这些参数，FRP 仍然发挥作用，必须使用之前激活的 Google 凭据方可激活设备。
-
-
-<p>此外，通过对 Google Play 服务设置应用限制，设备所有者可以指定用于 FRP 解锁的备用 Google 帐户，以替代在设备上激活的 Google 帐户。
-</p>
-</li>
-<img src="{@docRoot}preview/images/work-profile-screen.png" srcset="{@docRoot}preview/images/work-profile-screen.png 1x, {@docRoot}preview/images/work-profile-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-<li><strong>数据使用情况跟踪</strong>。现在，配置文件所有者或设备所有者可以利用新增的 
-{@code android.app.usage.NetworkStatsManager} 方法查询<strong>设置 &gt; 数据使用情况</strong>中显示的数据使用情况统计信息。
-配置文件所有者会被自动授予查询其管理的配置文件相关数据的权限，而设备所有者则被授予对其管理的主要用户使用情况数据的访问权。
-
-</li>
-<li><strong>运行时权限管理</strong>：
-<p>配置文件所有者或设备所有者可以利用 
-{@code DevicePolicyManager.setPermissionPolicy()} 设置适用于所有应用全部运行时请求的权限政策，以提示用户照常授予权限，或自动以静默方式授予或拒绝权限。
-
-如果设置后一种政策，则用户将无法修改配置文件所有者或设备所有者在应用权限屏幕的<strong>设置</strong>内所做的选择。
-
-</p></li>
-<li><strong>“设置”中的 VPN</strong>：现在，<strong>设置 &gt; 更多 &gt; VPN</strong> 中会显示 VPN 应用。此外，现在，关于 VPN 使用情况的通知取决于该 VPN 的配置方式。
-
-
-对于配置文件所有者，通知取决于该 VPN 是针对托管配置文件、个人配置文件还是同时针对这两者进行配置。
-对于设备所有者，通知取决于 VPN 是否针对整个设备进行配置。
-</li>
-<li><strong>工作状态通知</strong>：现在，每当来自托管配置文件的应用具有前台活动时，状态栏就会出现一个公文包图标。
-此外，如果设备直接解锁到托管配置文件中某个应用的活动，则会显示一个 Toast，通知用户他们位于托管配置文件内。
-
-
-</li>
-</ul>
-
-<p class="note">
-  如需详细了解 M 开发者预览版中的所有 API 变更，请参阅 <a href="{@docRoot}preview/download.html">API 差异报告</a>。
-</p>
diff --git a/docs/html-intl/intl/zh-cn/preview/backup/index.jd b/docs/html-intl/intl/zh-cn/preview/backup/index.jd
deleted file mode 100644
index 39786a3..0000000
--- a/docs/html-intl/intl/zh-cn/preview/backup/index.jd
+++ /dev/null
@@ -1,327 +0,0 @@
-page.title=自动备份应用
-page.tags=备份, 预览版资源, androidm
-page.keywords=备份, 自动备份, 预览版
-page.image=images/cards/card-auto-backup_2x.png
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文内容</h2>
-      <ol>
-        <li><a href="#overview">概览</a></li>
-        <li><a href="#configuring">配置数据备份</a></li>
-        <li><a href="#testing">测试备份配置</a></li>
-        <li><a href="#issues">已知问题</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  通常，用户需要投入大量的时间和精力在应用内创建数据和设置首选项。
-如果用户更换破损设备或升级至新设备，则保留用户数据对于确保提供卓越的用户体验至关重要。
-在这些情况下，运行 Android M 预览版系统的设备可以通过将应用数据自动备份到 Google Drive，帮助确保提供卓越的用户体验。
-
-这样，即使用户更换或升级设备，应用数据也可自动恢复。
-
-</p>
-
-<p>
-  对于运行 Android M 预览版的设备中所有已安装的应用，均可启用自动备份。无需额外提供应用代码。
-该系统允许用户选择禁止自动数据备份。
-此外，您还可以选择限制要备份应用中的哪些数据。
-</p>
-
-<p>
-  本文介绍了新系统行为，阐述了如何指定要为应用备份哪些数据。
-
-</p>
-
-<h2 id="overview">概览</h2>
-
-<p>
-  自动备份功能可以通过将应用在用户设备中创建的数据上传到用户的 Google Drive 帐户并进行加密，来保留这些数据。
-您或用户无需为数据存储付费，且保存的数据不计入用户个人的 Drive 配额。
-在 M 预览版运行期间，用户可针对每个 Android 应用存储多达 25MB 的数据。
-
-</p>
-
-<p>
-  当设备处于空闲、充电以及连接至 Wi-Fi 网络时，会每 24 小时自动备份一次数据。
-满足上述这些条件后，备份管理器服务会将所有可用的备份数据上传至云端。
-当用户改用新设备或卸载并重新安装备份的应用时，恢复操作会将备份的数据复制到新安装的应用的数据目录中。
-
-
-</p>
-
-<p class="note">
-  <strong>注：</strong>如果应用使用旧版 <a href="{@docRoot}google/backup/index.html">Android 备份服务</a>，则此新行为不适用，不过现有的备份行为会照常运行。
-
-
-</p>
-
-
-<h3 id="auto-exclude">自动排除的数据文件</h3>
-
-<p>
-  并非所有应用数据均应备份，例如临时文件和缓存文件就无需备份，因此自动备份服务会默认排除如下一些特定的数据文件：
-
-</p>
-
-<ul>
-  <li>通过 {@link android.content.Context#getCacheDir
-    getCacheDir()} 和 {@link android.content.ContextWrapper#getCodeCacheDir getCodeCacheDir()}
- 方法所引用的目录中的文件
-  </li>
-
-  <li>位于外部存储中的文件，除非这些文件是驻留在通过 
-{@link android.content.Context#getExternalFilesDir getExternalFilesDir()}
- 方法所引用的目录中
-  </li>
-
-  <li>位于通过 
-{@link android.content.Context#getNoBackupFilesDir getNoBackupFilesDir()} 方法所引用的目录中的文件
-  </li>
-</ul>
-
-<h2 id="configuring">配置数据备份</h2>
-
-<p>
-  除了上一部分中列出的自动排除的文件外，凡 M 预览版设备中安装的任何应用所创建的数据均会备份。
-您可以使用应用清单文件中的设置，进一步限制和配置应用中的哪些数据需要备份。
-
-</p>
-
-<h3 id="include-exclude">包括或排除数据</h3>
-
-<p>
-  根据应用所需的数据及其保存方式，您可能需要针对包括或排除哪些特定的文件或目录设置具体的规则。
-自动备份服务支持使用 XML 配置文件和应用清单文件来设置这些备份规则。
-
-您可以在应用清单文件中指定备份架构配置文件，如下例所示：
-
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:fullBackupContent="&#64;xml/mybackupscheme"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-<p>
-  在此示例代码中，<code>android:fullBackupContent</code> 属性指定了一个 XML 文件。该文件名为 
-<code>mybackupscheme.xml</code>，位于应用开发项目的 <code>res/xml/</code> 目录中。
-此配置文件包括关于要备份哪些文件的规则。
-下列示例代码显示了将某一特定文件排除在备份之外的配置文件：
-
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;full-backup-content&gt;
-    &lt;exclude domain="database" path="device_info.db"/&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  此示例备份配置仅将一个特定数据库文件排除在备份之外。
-  所有其他文件均予以备份。
-</p>
-
-<h4>备份配置语法</h4>
-
-<p>
-  您可以通过备份服务配置指定备份中要包括或排除哪些文件。
-数据备份配置 xml 文件的语法如下：
-</p>
-
-<pre>
-&lt;full-backup-content&gt;
-    &lt;include domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-    &lt;exclude domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  您可以使用下列元素和属性指定备份中要包括或排除哪些文件：
-
-</p>
-
-<ul>
-  <li>
-  <code>&lt;include&gt;</code>。如果您想指定一组要备份的资源，而不是默认由系统备份应用中的所有数据，请使用此元素。
-如果您指定了 <code>&lt;include&gt;</code> 标记，系统将仅备份使用此元素指定的资源。<em></em>
-
-
-  </li>
-
-  <li>
-  <code>&lt;exclude&gt;</code>。使用此元素指定一组要排除在备份之外的资源。
-除了使用此元素指定的资源外，系统将备份应用中的所有数据。
-
-  </li>
-
-  <li>
-  <code>domain.</code> 您想要在备份中包括或排除的资源类型。您可为此属性指定的有效值包括：
-
-  </li>
-
-  <li style="list-style: none">
-  <ul>
-    <li>
-    <code>root</code>。指定资源处于应用的根目录中
-    </li>
-
-    <li>
-    <code>file</code>。与通过 
-{@link android.content.Context#getFilesDir getFilesDir()} 方法返回的目录中的某个资源相对应
-    </li>
-
-    <li>
-    <code>database</code>。与通过 
-{@link android.content.Context#getDatabasePath getDatabasePath()} 方法或使用 
-{@link android.database.sqlite.SQLiteOpenHelper} 类返回的某个数据库相对应
-    </li>
-
-    <li>
-    <code>sharedpref</code>。与通过 {@link android.content.Context#getSharedPreferences getSharedPreferences()}
- 方法返回的某个 {@link android.content.SharedPreferences} 对象相对应
-
-    </li>
-
-    <li>
-    <code>external</code>。指定资源位于外部存储中，且与通过 
-{@link android.content.Context#getExternalFilesDir getExternalFilesDir()} 方法返回的目录中的某个文件相对应
-
-    </li>
-
-    <li>
-    <code>path</code>。您想要在备份中包括或排除的资源的文件路径
-
-    </li>
-  </ul>
-  </li>
-</ul>
-
-
-<h3 id="prohibit">禁止数据备份</h3>
-
-<p>
-  通过在清单文件的应用元素中将 
-<code>android:allowBackup</code> 属性设置为 <code>false</code>，您可选择阻止自动备份任何应用数据。
-此设置如下列示例代码所示：
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:allowBackup="false"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-
-<h2 id="testing">测试备份配置</h2>
-
-<p>
-  创建备份配置后，您应立即进行测试，确保应用能够保存数据，且数据能够正确恢复。
-
-</p>
-
-
-<h4>启用备份日志记录</h4>
-
-<p>
-  要帮助确定备份功能如何解析 XML 文件，请在执行测试备份之前启用日志记录功能：
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell setprop log.tag.BackupXmlParserLogging VERBOSE
-</pre>
-
-<h4>测试备份</h4>
-
-<p>要手动运行备份，您首先必须通过调用下列命令初始化备份管理器：
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr run
-</pre>
-
-<p>
-  然后，使用下列命令并以 <code>&lt;PACKAGE&gt;</code> 参数指定应用的软件包名称来手动备份应用：
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr fullbackup &lt;PACKAGE&gt;</pre>
-
-
-<h4>测试恢复</h4>
-
-<p>
-  要在备份应用数据后手动启动数据恢复，请调用下列命令，并以 <code>&lt;PACKAGE&gt;</code> 参数指定应用的软件包名称：
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr restore &lt;PACKAGE&gt;
-</pre>
-
-<p class="warning">
-  <b>警告：</b>执行恢复操作之前，此操作将阻止您的应用运行并擦除其数据。
-
-</p>
-
-<p>
-  您可以通过卸载并重新安装应用来启动数据恢复进程。应用安装完成后，系统会立即自动从云中恢复应用数据。
-
-</p>
-
-
-<h4>诊断备份问题</h4>
-
-<p>
-  如果遇到问题，可通过在<strong>设置 &gt; 备份</strong>中先关闭然后重新打开备份、将设备恢复出厂设置或者调用以下命令，来清除备份数据及关联的元数据：
-
-
-</p>
-
-<pre>$ adb shell bmgr wipe &lt;TRANSPORT&gt; &lt;PACKAGE&gt;</pre>
-
-<p>
-  <code>&lt;TRANSPORT&gt;</code> 值必须以 <code>com.google.android.gms</code> 为前缀。
-  要获取传输列表，请调用下列命令：
-</p>
-
-<pre>$ adb shell bmgr list transports</pre>
-
-<h2 id="issues">已知问题</h2>
-
-<p>以下是自动备份服务的已知问题：</p>
-
-<ul>
-  <li><strong>Google 云消息传递</strong>：对于使用 Google 云消息传递推送通知的应用，存在一个已知问题，即：备份通过 Google 云消息传递注册所返回的注册 ID 时，可能会中断已恢复应用的推送通知。为此，应用安装到新设备后，务必查询 API，看是否具有新注册 ID，这一点至关重要。如果已备份旧注册 ID，则不会出现这种情况。
-
-
-
-
-为避免这种现象，请从已备份文件集中排除注册 ID。
-
-  </li>
-</ul>
diff --git a/docs/html-intl/intl/zh-cn/preview/behavior-changes.jd b/docs/html-intl/intl/zh-cn/preview/behavior-changes.jd
deleted file mode 100644
index 39494b9..0000000
--- a/docs/html-intl/intl/zh-cn/preview/behavior-changes.jd
+++ /dev/null
@@ -1,402 +0,0 @@
-page.title=行为变更
-page.keywords=预览版,sdk,兼容性
-sdk.platform.apiLevel=MNC
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>本文内容</h2>
-
-<ol id="toc44" class="hide-nested">
-    <li><a href="#behavior-runtime-permissions">运行时权限</a></li>
-    <li><a href="#behavior-power">节能优化</a>
-        <ol>
-            <li><a href="#behavior-doze">打盹</a></li>
-            <li><a href="#behavior-app-standby">应用待机</a></li>
-        </ol>
-    </li>
-    <li><a href="#behavior-adoptable-storage">可采用的存储设备</a></li>
-    <li><a href="#behavior-apache-http-client">取消支持 Apache HTTP 客户端</a></li>
-    <li><a href="#behavior-audiomanager-Changes">音频管理器变更</a></li>
-    <li><a href="#behavior-test-selection">文本选择</a></li>
-    <li><a href="#behavior-keystore">Android 密钥库变更</a></li>
-    <li><a href="#behavior-network">Wi-Fi 和网络连接变更</a></li>
-    <li><a href="#behavior-camera">相机服务变更</a></li>
-    <li><a href="#behavior-art-runtime">ART 运行时</a></li>
-    <li><a href="#behavior-apk-validation">APK 验证</a></li>
-    <li><a href="#behavior-afw">Android for Work 变更</a></li>
-</ol>
-
-<h2>API 差异</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API 级别 22 至 M 预览版&raquo;</a> </li>
-</ol>
-
-
-<h2>另请参阅</h2>
-<ol>
-<li><a href="{@docRoot}preview/api-overview.html">M 开发者预览版 API 概览</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>M 开发者预览版除了提供诸多新特性和功能外，还对系统和 API 行为做出了各种变更。
-本文重点介绍您应该了解并在开发应用时加以考虑的一些重要变更。
-</p>
-
-<p>如果您之前发布过 Android 应用，请注意您的应用可能受到这些平台变更的影响。
-</p>
-
-<h2 id="behavior-runtime-permissions">运行时权限</h1>
-<p>本预览版引入了一种新的权限模型，如今，用户可直接在运行时管理应用权限。
-这种模型让用户能够更好地了解和控制权限，同时为应用开发者精简了安装和自动更新过程。用户可为所安装的各个应用分别授予或撤销权限。
-
- </p>
-
-<p>对于面向 M 预览版开发的应用，请务必在运行时检查和请求权限。
-如需确定您的应用是否已被授予权限，请调用新增的 {@code Context.checkSelfPermission()} 方法。
-如需请求权限，请调用新增的 
-{@code Activity.requestPermission()} 方法。即使您的应用不是针对 M 开发的，您也应该在新权限模型下测试您的应用。
-</p>
-
-<p>如需了解有关在您的应用中支持新权限模型的详细信息，请参阅开发者预览版的<a href="{@docRoot}preview/features/runtime-permissions.html">权限</a>页面。
-
-如需了解如何评估新模型对应用的影响，请参阅<a href="{@docRoot}preview/testing/guide.html#runtime-permissions">测试指南</a>。
-</p>
-
-<h2 id="behavior-power">节能优化</h2>
-<p>本预览版引入了针对空闲设备和应用的最新节能优化技术。</p>
-
-<h3 id="behavior-doze">打盹</h3>
-<p>如果设备未插入电源，并在屏幕关闭后的一段时间内保持不活动状态，则会进入<em>打盹</em>模式，在该模式下设备会尝试让系统保持休眠状态。
-在该模式下，设备会定期短时间恢复正常工作，以便进行应用同步，还可让系统执行任何挂起的操作。
-
-</p>
-
-<p>在打盹模式下，您的应用会受到以下限制：</p>
-<ul>
-<li>网络访问被禁用，除非您的应用获得高优先级 Google Cloud Messaging 操作消息 (tickle)。
-</li>
-<li><a href="{@docRoot}reference/android/os/PowerManager.WakeLock.html">唤醒锁</a>会被忽略。</li>
-<li>通过 {@link android.app.AlarmManager} 类设置的闹铃会被禁用，但通过 {@link android.app.AlarmManager#setAlarmClock setAlarmClock()} 方法和 {@code AlarmManager.setAndAllowWhileIdle()} 方法设置的闹铃除外。
-
-</li>
-<li>不执行 WiFi 扫描</li>
-<li>不允许运行同步适配器和 {@link android.app.job.JobScheduler} 的同步和作业。
-</li>
-</ul>
-</p>
-<p>当设备退出打盹模式时，它会执行任何挂起的作业和同步。</p>
-<p>您可以通过将运行 M 预览版的设备与您的开发计算机相连，并调用以下命令来测试此功能：
-
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-<p class="note"><strong>注</strong>：即将推出的 
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">
- Google Cloud Messaging</a> 版本允许您指定高优先级消息。
-如果您的应用收到高优先级 GCM 消息，即使设备处于打盹模式，系统也会向其授予短时间的网络访问权限。
-
-</p>
-
-<p>如需了解在您的应用中测试打盹模式的技巧，请参阅
-<a href="{@docRoot}preview/testing/guide.html#doze-standby">测试指南</a>。
- </p>
-
-<h3 id="behavior-app-standby">应用待机</h3>
-<p>使用本预览版时，系统会在应用未被主动使用时确定其处于空闲状态。
-除非系统检测到以下信号之一，否则将在一段时间后将您的应用视为处于空闲状态：
-</p>
-
-<ul>
-<li>用户显式启动应用。</li>
-<li>应用当前有一个进程位于前台（表现为活动或前台服务形式，或被另一活动或前台服务占用）。
-</li>
-<li>应用生成用户可在锁屏或通知托盘中看到的通知。
-</li>
-<li>用户通过<strong>设置</strong>显式请求不对应用进行优化。
-</li>
-</ul>
-
-<p>如果设备未插入电源，系统会将被视为处于空闲状态的应用的网络访问禁用，并暂停其同步和作业。
-当设备插入电源时，系统将允许这些应用访问网络并执行任何挂起的作业和同步。
-如果设备长时间处于空闲状态，系统将按每天大约一次的频率允许空闲状态的应用访问网络。
-</p>
-
-<p>您可以通过将运行 M 预览版的设备与您的开发计算机相连，并调用以下命令来测试此功能：
-
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell am set-idle &lt;packageName&gt; true
-$ adb shell am set-idle &lt;packageName&gt; false
-$ adb shell am get-idle &lt;packageName&gt;
-</pre>
-
-<p class="note"><strong>注</strong>：即将推出的 
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">
- Google Cloud Messaging</a> (GCM) 版本允许您指定高优先级消息。
-如果您的应用收到高优先级 GCM 消息，即使其处于空闲状态，也会被授予短时间的网络访问权限。
-
-</p>
-
-<p>如需了解在您的应用中测试应用待机的技巧，请参阅
-<a href="{@docRoot}preview/testing/guide.html#doze-standby">测试指南</a>。
- </p>
-
-<h2 id="behavior-adoptable-storage">可采用的存储设备</h2>
-<p>
-使用本预览版时，用户可以<em>采用</em> SD 卡等外部存储设备。采用外部存储设备可加密和格式化设备，使其具有类似内部存储设备的行为。
-用户可以利用此特性在存储设备之间移动应用及其私有数据。
-移动应用时，系统会遵守清单文件中的 
-<a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a>
- 首选项。
-</p>
-
-<p>请注意，在内部存储设备与外部存储设备之间移动应用时，如果您的应用访问以下 API 或字段，它们返回的文件路径将会动态变化。郑重建议：在生成文件路径时，请始终动态调用这些 API。请勿使用硬编码文件路径或之前生成的永久性完全限定文件路径。
-
-
-</p>
-
-<ul>
-<li>{@link android.content.Context} 方法：
-    <ul>
-        <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
-        <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
-        <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
-        <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
-        <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
-        <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
-        <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
-        <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
-        <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
-    </ul>
-</li>
-<li>{@link android.content.pm.ApplicationInfo} 字段：
-    <ul>
-        <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
-    </ul>
-</li>
-</ul>
-
-<p>如需在开发者预览版中调试此功能，您可以将一个 USB 驱动器通过一根 USB On-The-Go (OTG) 电缆连接到 Android 设备并运行以下命令启用对该 USB 驱动器的采用：
-</p>
-
-<pre class="no-prettyprint">
-$ adb shell sm set-force-adoptable true
-</pre>
-
-<h2 id="behavior-apache-http-client">取消支持 Apache HTTP 客户端</h2>
-<p>本预览版取消了对 Apache HTTP 客户端的支持。如果您的应用使用该客户端，并以 Android 2.3（API 级别 9）或更高版本为目标平台，请改用 {@link java.net.HttpURLConnection} 类。
-
-此 API 效率更高，因为它可以通过透明压缩和响应缓存减少网络使用，并可最大限度降低耗电量。
-如需继续使用 Apache HTTP API，您必须先在 {@code build.gradle} 文件中声明以下编译时依赖项：
-
-</p>
-<pre>
-android {
-    useLibrary 'org.apache.http.legacy'
-}
-</pre>
-<p>Android 正在从使用 OpenSSL 库转向使用 
-<a href="https://boringssl.googlesource.com/boringssl/" class="external-link">BoringSSL</a>
- 库。如果您要在应用中使用 Android NDK，请勿链接到并非 NDK API 组成部分的加密库，如 {@code libcrypto.so} 和 {@code libssl.so}。
-这些库并非公共 API，可能会在不同版本和设备上毫无征兆地发生变化或出现故障。此外，您还可能让自己暴露在安全漏洞的风险之下。
-
-请改为修改原生代码，以通过 JNI 调用 Java 加密 API，或静态链接到您选择的加密库。
-
-</p>
-
-<h2 id="behavior-audiomanager-Changes">音频管理器变更</h2>
-<p>不再支持通过 {@link android.media.AudioManager}
- 类直接设置音量或将特定音频流静音。{@link android.media.AudioManager#setStreamSolo(int,boolean)
-setStreamSolo()} 方法已弃用，您应该改为调用
-{@code AudioManager.requestAudioFocus()} 方法。类似地，
-{@link android.media.AudioManager#setStreamMute(int,boolean) setStreamMute()} 方法也已弃用，请改为调用 {@code AudioManager.adjustStreamVolume()} 方法并传入方向值 {@code ADJUST_MUTE} 或 {@code ADJUST_UNMUTE}。
-
-</p>
-
-<h2 id="behavior-test-selection">文本选择</h2>
-
-<img src="{@docRoot}preview/images/text-selection.gif" style="float:right; margin:0 0 20px 30px" width="360" height="640" />
-
-<p>现在，当用户在您的应用中选择文本时，您可以在一个<a href="http://www.google.com/design/spec/patterns/selection.html#selection-text-selection" class="external-link">浮动工具栏</a>中显示“剪切”<em></em>、“复制”<em></em>和“粘贴”<em></em>等文本选择操作。
-
-其在用户交互实现上与<a href="{@docRoot}guide/topics/ui/menus.html#CABforViews">为单个视图启用上下文操作模式</a>中所述的上下文操作栏类似。
-
-
-</p>
-
-<p>如需实现可用于文本选择的浮动工具栏，请在您的现有应用中做出以下更改：
-</p>
-<ol>
-<li>在 {@link android.view.View} 对象或 {@link android.app.Activity} 对象中，将 
-{@link android.view.ActionMode} 调用从 
-{@code startActionMode(Callback)} 更改为 {@code startActionMode(Callback, ActionMode.TYPE_FLOATING)}。</li>
-<li>改为使用 {@code ActionMode.Callback} 的现有实现扩展 
-{@code ActionMode.Callback2}。</li>
-<li>替代 {@code Callback2.onGetContentRect()} 方法，用于提供 {@link android.graphics.Rect} 内容对象（如文本选择矩形）在视图中的坐标。
-</li>
-<li>如果矩形的定位不再有效，并且这是唯一需要声明为无效的元素，请调用 {@code ActionMode.invalidateContentRect()} 方法。
-</li>
-</ol>
-
-<p>请注意，如果您使用 <a href="{@docRoot}tools/support-library/index.html">
- Android Support Library</a> 22.2 修订版，浮动工具栏不向后兼容，默认情况下 appcompat 会获得对 {@link android.view.ActionMode} 对象的控制权。
-
-这会禁止显示浮动工具栏。如需在 
-{@link android.support.v7.app.AppCompatActivity} 中启用 
-{@link android.view.ActionMode} 支持，请调用 
-{@code android.support.v7.app.AppCompatActivity.getDelegate()}，然后对返回的 
-{@link android.support.v7.app.AppCompatDelegate} 调用 
-{@code android.support.v7.app.AppCompatDelegate.setHandleNativeActionModesEnabled()}，并将输入参数设置为 {@code false}。
-此调用会将 {@link android.view.ActionMode} 对象的控制权交还给框架。
-在运行 M 预览版的设备上，框架可以支持 
-{@link android.support.v7.app.ActionBar} 模式或浮动工具栏模式；而在运行 M 预览版之前版本的设备上，框架仅支持 {@link android.support.v7.app.ActionBar} 模式。
-</p>
-
-<h2 id="behavior-keystore">Android 密钥库变更</h2>
-<p>使用本预览版时，
-<a href="{@docRoot}training/articles/keystore.html">Android 密钥库提供程序</a>不再支持 DSA，
-但仍支持 ECDSA。</p>
-
-<p>禁用或重置安全锁屏时（例如，由用户或设备管理员执行此类操作时），系统将不再删除需要闲时加密的密钥，
-但在上述事件期间会删除需要闲时加密的密钥。
-</p>
-
-<h2 id="behavior-network">Wi-Fi 和网络连接变更</h2>
-
-<p>本预览版对 Wi-Fi 和网络连接 API 引入了以下行为变更。</p>
-<ul>
-<li>现在，您的应用只能更改由您创建的 {@link android.net.wifi.WifiConfiguration} 对象的状态。
-系统不允许您修改或删除由用户或其他应用创建的 
-{@link android.net.wifi.WifiConfiguration} 对象；
-</li>
-<li>
-在之前的版本中，如果应用利用带有 
-{@code disableAllOthers=true} 设置的 
-{@link android.net.wifi.WifiManager#enableNetwork(int,boolean) enableNetwork()} 强制设备连接特定 Wi-Fi 网络，设备将会断开与蜂窝数据网络等其他网络的连接。
-在本预览版中，设备不再断开与上述其他网络的连接。如果您的应用的 {@code targetSdkVersion} 为 {@code “20”} 或更低，则会固定连接所选 Wi-Fi 网络。
-
-如果您的应用的 {@code targetSdkVersion} 为 {@code “21”} 或更高，请使用多网络 API（如 
-{@link android.net.Network#openConnection(java.net.URL) openConnection()} 、
-{@link android.net.Network#bindSocket(java.net.Socket) bindSocket()} 和新增的 
-{@code ConnectivityManager.bindProcessToNetwork()} 方法）来确保通过所选网络传送网络流量。
-
-</li>
-</ul>
-
-<h2 id="behavior-camera">相机服务变更</h2>
-<p>在本预览版中，相机服务中共享资源的访问模式已从之前的“先到先得”访问模式更改为高优先级进程优先的访问模式。
-
-对服务行为的变更包括：</p>
-<ul>
-<li>根据客户端应用进程的“优先级”授予对相机子系统资源的访问权，包括打开和配置相机设备。
-带有对用户可见活动或前台活动的应用进程一般会被授予较高的优先级，从而使相机资源的获取和使用更加可靠；
-
-</li>
-<li>当高优先级的应用尝试使用相机时，系统可能会“驱逐”正在使用相机客户端的低优先级应用。
-在已弃用的 {@link android.hardware.Camera} API 中，这会导致系统为被驱逐的客户端调用 
-{@link android.hardware.Camera.ErrorCallback#onError(int,android.hardware.Camera) onError()}。
-
-在 {@link android.hardware.camera2 Camera2} API 中，这会导致系统为被驱逐的客户端调用 
-{@link android.hardware.camera2.CameraDevice.StateCallback#onDisconnected(android.hardware.camera2.CameraDevice) onDisconnected()}；
-</li>
-<li>在配备相应相机硬件的设备上，不同的应用进程可同时独立打开和使用不同的相机设备。
-但现在，如果在多进程用例中同时访问相机会造成任何打开的相机设备的性能或能力严重下降，相机服务会检测到这种情况并禁止同时访问。
-
-即使并没有其他应用直接尝试访问同一相机设备，此变更也可能导致低优先级客户端被“驱逐”。
-
-
-</li>
-<li>
-更改当前用户会导致之前用户帐户拥有的应用内活动相机客户端被驱逐。
-对相机的访问仅限于访问当前设备用户拥有的用户个人资料。举例来说，这意味着，当用户切换到其他帐户后，“来宾”帐户实际上无法让使用相机子系统的进程保持运行状态。
-
-
-</li>
-</ul>
-
-<h2 id="behavior-art-runtime">ART 运行时</h2>
-<p>ART 运行时现在可正确实现 
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} 方法的访问规则。此变更修正了之前版本中 Dalvik 无法正确检查访问规则的问题。如果您的应用使用
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} 方法，并且您想替代访问检查，请调用 
-{@link java.lang.reflect.Constructor#setAccessible(boolean) setAccessible()} 方法（将输入参数设置为 {@code true}）。
-
-
-
-如果您的应用使用
-<a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7 appcompat 库</a>或
-<a href="{@docRoot}tools/support-library/features.html#v7-recyclerview">v7 recyclerview 库</a>，则您必须更新应用以使用这些库的最新版本。
-否则，请务必更新从 XML 引用的任何自定义类，以便能够访问它们的类构造函数。
-</p>
-
-<p>本预览版更新了动态链接程序的行为。动态链接程序现在可以识别库的 {@code soname} 与其路径之间的差异（<a href="https://code.google.com/p/android/issues/detail?id=6670" class="external-link">
-公开 bug 6670</a>），并且现在已实现了按 {@code soname} 搜索。
-
-
-之前包含错误的 {@code DT_NEEDED} 条目（通常是开发计算机文件系统上的绝对路径）却仍工作正常的应用，如今可能会出现加载失败。
-</p>
-
-<p>现已正确实现 {@code dlopen(3) RTLD_LOCAL} 标志。请注意，
-{@code RTLD_LOCAL} 是默认值，因此不显式使用 
-{@code RTLD_LOCAL} 的 {@code dlopen(3)} 调用将受到影响（除非您的应用显式使用 {@code RTLD_GLOBAL}）。使用 
-{@code RTLD_LOCAL} 时，在随后通过调用 
-{@code dlopen(3)} 加载的库中并不能使用这些符号（这与由 {@code DT_NEEDED} 条目引用的情况截然不同）。</p>
-</p>
-
-<h2 id="behavior-apk-validation">APK 验证</h2>
-<p>该平台现在执行的 APK 验证更为严格。如果在清单文件中声明的文件在 APK 中并不存在，该 APK 将被视为已损坏。
-移除任何内容后必须重新签署 APK。
-</p>
-
-<h2 id="behavior-afw">Android for Work 变更</h2>
-<p>本预览版包含下列针对 Android for Work 的行为变更：</p>
-<ul>
-<li><strong>个人上下文中的工作联系人。</strong>Google Dialer Call Log 现在会在用户查看通话记录时显示工作联系人。将 {@code DevicePolicyManager.setCrossProfileCallerIdDisabled()} 设置为 {@code true} 可在 Google Dialer Call Log 中隐藏托管配置文件联系人。
-
-
-仅当您将 {@code DevicePolicyManager.setBluetoothContactSharingDisabled()} 设置为 {@code false} 时，才可以通过蓝牙将工作联系人随个人联系人一起显示给设备。
-
-默认情况下，它设置为 {@code true}。
-
-</li>
-<li><strong>WiFi 配置移除</strong>：现在，当删除某个托管配置文件时，将会移除由配置文件所有者添加的 WiFi 配置（例如，通过调用
-{@link android.net.wifi.WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
-addNetwork()} 方法添加的配置）；
-</li>
-<li><strong>WiFi 配置锁定</strong>：用户无法再修改或删除任何由活动设备所有者创建的 WiFi 配置。
-用户仍可创建和修改其自己的 WiFi 配置，前提是尚未针对该用户设置 {@link android.os.UserManager} 常量 
-{@link android.os.UserManager#DISALLOW_CONFIG_WIFI}。
-</li>
-<li><strong>通过添加 Google 帐户下载工作策略控制器</strong>向托管环境以外的设备添加需要通过工作策略控制器 (WPC) 管理的 Google 帐户时，帐户添加流程现在会提示用户安装相应的 WPC。在设备初始设置向导中通过<strong>设置 &gt; 帐户</strong>添加帐户时，也会出现此行为。
-
-
-
-</li>
-<li><strong>对特定 DevicePolicyManager API 行为的变更</strong>：调用 {@link android.app.admin.DevicePolicyManager#setCameraDisabled(android.content.ComponentName,boolean) setCameraDisabled()} 方法只会影响调用该方法的用户的相机；从托管配置文件调用它不会影响主用户运行的相机应用。
-
-
-此外，
-{@link android.app.admin.DevicePolicyManager#setKeyguardDisabledFeatures(android.content.ComponentName,int) setKeyguardDisabledFeatures()} 方法现在除了可供设备所有者使用外，还可供配置文件所有者使用。
-配置文件所有者可设置以下键盘锁限制：
-
-<ul>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_TRUST_AGENTS} 和 
-{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_FINGERPRINT}，它们影响配置文件上级用户的键盘锁设置。
-</li>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS}，它只影响应用在托管配置文件中生成的通知。
-</li>
-</ul>
-</li>
-</ul>
diff --git a/docs/html-intl/intl/zh-cn/preview/download.jd b/docs/html-intl/intl/zh-cn/preview/download.jd
deleted file mode 100644
index c7ba9df..0000000
--- a/docs/html-intl/intl/zh-cn/preview/download.jd
+++ /dev/null
@@ -1,360 +0,0 @@
-page.title=下载
-page.image=images/cards/card-download_16-9_2x.png
-
-@jd:body
-
-<div style="position:relative; min-height:600px">
-
-  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
-
-    <p class="sdk-terms-intro">在下载和安装预览版 Android SDK 的组件之前，您必须同意下列条款和条件。
-</p>
-
-    <h2 class="norule">条款和条件</h2>
-
-    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
-本协议是 Android SDK 预览版许可协议（以下称为“许可协议”）。
-
-1. 简介
-
-1.1 Android SDK 预览版（在本许可协议中简称为“预览版”，具体包括 Android 系统文件、封装 API 以及预览版库文件（若可用））依据本许可协议的条款授权您使用。本许可协议在您与 Google 之间就您对“预览版”的使用构成具有法律约束力的合约。
-
-1.2 “Android”是指以 Android 开源项目（项目网址为 http://source.android.com/，其内容会不时更新）名义提供、面向设备的 Android 软件栈。
-
-1.3 “Google”是指 Google Inc.，是一家特拉华州公司，主要营业地位于：1600 Amphitheatre Parkway, Mountain View, CA 94043, United States。
-
-2. 接受许可协议
-
-2.1 要使用“预览版”，您必须先同意本许可协议。如果您不接受本许可协议，则不得使用“预览版”。
-
-2.2 点击接受并/或使用“预览版”，即表示您特此同意本许可协议的条款。
-
-2.3 如果依照美国或其他国家/地区（包括您居住或您使用“预览版”所在的国家/地区）的法律，您被禁止获取“预览版”，则您不得使用“预览版”，也不得接受本许可协议。
-
-2.4 如果您将在贵公司或组织内部使用“预览版”，则您同意代表您的雇主或其他实体接受本许可协议的约束，并且您表示并保证您拥有完全的合法授权令您的雇主或上述实体受本许可协议的约束。如果您不具备必要的授权，则不得代表您的雇主或其他实体接受本许可协议或使用“预览版”。
-
-3. Google 预览版许可
-
-3.1 Google 依据本许可协议的条款授予您个人或在贵公司或组织内部有限使用“预览版”的免版税、不可转让、非独占性、不可再授权且可撤销的许可，其用途仅限开发在 Android 平台上运行的应用。
-
-3.2 您同意 Google 或第三方拥有“预览版”中存在或相关的全部合法权利、所有权和利益，包括“预览版”中存在的任何知识产权。“知识产权”是指根据专利法、版权法、商业机密法、商标法享有的任何及全部权利，以及其他任何及全部专有权利。Google 保留所有未明确授予您的权利。
-
-3.3 您不得将“预览版”用于本许可协议未明确允许的任何用途。您不得：(a) 对“预览版”或“预览版”的任何部分进行复制（备份用途除外）、修改、改编、再分发、反编译、逆向工程、反汇编或创建其衍生品；或 (b) 将“预览版”的任何部分加载到移动手持终端或除个人计算机之外的任何其他硬件设备上，将“预览版”的任何部分与其他软件合并，或者发行任何融入“预览版”某一部分的软件或设备。
-
-3.4 您同意您将不会进行任何可能引起或导致 Android 碎片化的行动，包括但不限于分发、参与创建或以任何方式推广从“预览版”衍生的软件开发工具包。
-
-3.5 对于依据开源软件许可授权的“预览版”组件，其使用、复制和分发仅受该开源软件许可条款的制约，不受本许可协议的约束。您同意在依照被授予的所有权利作为被许可方期间，在遵守此类开源软件许可协议方面始终保持良好的信誉，并避免进行任何可能导致终止、暂停或违反此类权利的行动。
-
-3.6 您同意 Google 所提供“预览版”的形式和性质可随时发生变更，而无需事先通知您，并且未来的“预览版”版本可能会与在之前的“预览版”版本上开发的应用不兼容。您同意 Google 可单方面决定在未事先通知您的情况下全面停止（永久性或暂时性）向您或用户提供“预览版”（或“预览版”内的任何功能）。
-
-3.7 本许可协议内没有任何条款授予您使用 Google 的任何商品名、商标、服务标志、徽标、域名或其他独特品牌特征的权利。
-
-3.8 您同意您不会移除、遮盖或篡改“预览版”上可能贴有或“预览版”内可能包含的任何专有权利声明（包括版权声明和商标声明）。
-
-4. 您对“预览版”的使用
-
-4.1 Google 同意本许可协议中的任何条款均未授予 Google 从您（或您的许可方）处获取您依照本许可协议使用“预览版”开发的任何软件应用中存在或与其相关的权利、所有权或利益，包括这些应用中存在的任何知识产权。
-
-4.2 您同意只出于 (a) 本许可协议和 (b) 相关管辖区域内任何适用法律、法规或公认惯例或准则（包括有关向美国或其他相关国家/地区出口数据或软件或从美国或其他相关国家/地区进口数据或软件的任何法律）所允许的目的而使用“预览版”和编写应用。
-
-4.3 您同意，如果您使用“预览版”开发应用，您将会保护用户的隐私权和合法权利。如果用户向您提供用户名、密码或其他登录信息或个人信息，您必须确保用户知晓这些信息将供您的应用使用，并且您必须为这些用户提供足以满足法律要求的隐私声明和保护。如果您的应用存储由用户提供的个人信息或敏感信息，其存储方式必须安全。如果用户向您提供 Google 帐户信息，您的应用只能在用户允许时出于用户所许可的有限目的使用该信息访问用户的 Google 帐户。
-
-4.4 您同意您不会利用“预览版”从事任何干扰、中断、损坏或以未经授权方式访问 Google 或任何第三方的服务器、网络或其他财产或服务的Activity（包括应用的开发或分发）。
-
-4.5 您同意您对通过 Android 和/或 Android 应用创建、传输或显示的任何数据、内容或资源以及您的行为所导致的后果（包括 Google 可能遭受的任何损失或损害）负全责（Google 在上述方面对您或任何第三方不承担任何责任）。
-
-4.6 您同意您为违反本许可协议、任何适用的第三方合约或服务条款或任何适用法律或法规下的义务以及任何上述违规行为所导致的后果（包括 Google 或任何第三方可能遭受的任何损失或损害）负全责（Google 在上述方面对您或任何第三方不承担任何责任）。
-
-4.7 “预览版”正在开发中，您的测试和反馈是开发过程的重要环节。使用“预览版”，即表示您承认某些功能仍在开发实现之中，您不应期望“预览版”具备稳定版本的全部功能。您同意不使用此“预览版”公开发布或发运任何应用，因为此“预览版”在 Android SDK 正式发行之后将不再受支持。
-
-5. 您的开发者凭据
-
-5.1 您同意，对于 Google 可能向您发放或可能由您自行选择的任何开发者凭据，您有责任保持其机密性，并且您对以您的开发者凭据名义开发的所有应用负全责。
-
-6. 隐私权和信息
-
-6.1 为持续创新和改进“预览版”，Google 可能会从软件收集某些使用统计数据，包括但不限于唯一标识符、关联的 IP 地址、软件的版本号以及有关软件使用了“预览版”中哪些工具和/或服务及其使用方式的信息。在收集任何上述信息之前，“预览版”都会通知您并征求您的同意。如果您拒绝同意，我们将不会收集这些信息。
-
-6.2 我们会对收集的数据进行汇总调查，以便改进“预览版”，并会按照 Google 的隐私政策（网址为 http://www.google.com/policies/privacy/）维护数据。
-
-7. 第三方应用
-
-7.1 如果您使用“预览版”运行由第三方开发或访问由第三方提供的数据、内容或资源的应用，您同意 Google 对这些应用、数据、内容或资源不承担任何责任。您理解，您通过上述第三方应用可能访问到的所有数据、内容或资源由其提供者负全责，Google 对您因使用或访问其中任何第三方应用、数据、内容或资源而遭受的任何损失或损害不承担任何责任。
-
-7.2 您应知晓，通过此类第三方应用提供给您的数据、内容和资源可能受提供商（或代表他们的其他人员或公司）所拥有的知识产权的保护。除非相关所有者明确给予许可，否则您不得修改、出租、租赁、借出、出售、分发这些数据、内容或资源（的全部或部分），或以其为基础创建衍生品。
-
-7.3 您承认您对上述第三方应用、数据、内容或资源的使用可能受到您与相关第三方之间单独订立的条款的制约。
-
-8. 使用 Google API
-
-8.1 Google API
-
-8.1.1 如果您使用任何 API 从 Google 检索数据，即表示您承认这些数据可能受到 Google 或这些数据提供方（或代表他们的其他人员或公司）拥有的知识产权的保护。您对任何上述 API 的使用可能受到附加服务条款的制约。除非相关服务条款允许，否则您不得修改、出租、租赁、借出、出售、分发这些数据（的全部或部分），或以其为基础创建衍生品。
-
-8.1.2 如果您使用任何 API 从 Google 检索用户数据，即表示您承认并同意您只有在征得用户明确同意时才会检索数据，并且只能在用户允许时出于用户许可的有限目的检索数据。
-
-9. 终止许可协议
-
-9.1 本许可协议将持续有效，直至您或 Google 按以下规定终止本协议。
-
-9.2 如果您想终止本许可协议，可通过停止使用“预览版”以及任何相关开发者凭据予以终止。
-
-9.3 Google 有权在向您在作出通知后，有理由或无理由地随时终止与您订立的这份许可协议。
-
-9.4 本许可协议将在下列情况下自动终止，而无需另行通知或采取其他行动，以先符合条件者为准：
-(A) Google 在您居住或使用服务所在国家/地区停止向用户提供“预览版”或“预览版”的某些部分；
-(B) Google 发行 Android SDK 的最终版本。
-
-9.5 在本许可协议终止时，本许可协议中向您授予的许可将终止，您应立即完全停止使用“预览版”，并且第 10、11、12 和 14 节的条款将无限期继续存在。
-
-10. 免责声明
-
-10.1 您明确理解并同意，您使用“预览版”的风险将由您自行承担，并且“预览版”是按“原样”和“现状”提供，Google 不提供任何类型的担保。
-
-10.2 您对“预览版”的使用以及通过使用“预览版”下载或以其他方式获得的任何材料由您自行决定，风险自负，并且对于因此类使用而对您的计算机系统或其他设备造成的任何损害或数据损失由您单方面负责。在不对上文所述予以限制的条件下，您了解“预览版”并非稳定版本，可能存在将导致重大损害的错误、缺陷和安全漏洞，包括无法挽回地完全无法使用您的计算机系统或其他设备。
-
-10.3 Google 进一步明确拒绝任何类型的所有担保和条件，无论明示或暗示，包括但不限于有关适销性、特定用途适用性以及非侵权的暗示担保和条件。
-
-11. 有限责任
-
-11.1 您明确理解并同意，对于您可能遭遇的任何直接、间接、附带、特殊、继发或惩罚性损害（包括任何数据损失），Google 及其子公司和附属公司以及其许可方在任何责任理论下对您概不承担任何责任，无论 Google 或其代表是否已被告知或是否本应知晓发生任何上述损失的可能性。
-
-12. 赔偿
-
-12.1 您同意，在法律所允许的最大限度内，为 Google、其附属公司及其各自的董事、高管、员工和代理商提供辩护，使其免于因下列情况引起或产生的任何及所有索赔、诉讼、起诉或诉讼程序以及任何及所有损失、债务、损害、成本和费用（包括合理的律师费用）而承担责任或遭受损害：(a) 您对“预览版”的使用；(b) 您在“预览版”上开发的任何应用侵犯任何人的任何知识产权或诽谤任何人或侵犯其公开权或隐私权；以及 (c) 您的任何行为有悖于本许可协议
-
-13. 许可协议的更改
-
-13.1 Google 可能会在分发新版本“预览版”时对许可协议做出更改。做出这些更改后，Google 将在提供“预览版”的网站上公布新版本的许可协议。
-
-14. 一般法律条款
-
-14.1 本许可协议构成您与 Google 之间的完整法律协议，管辖您对“预览版”（不包括 Google 可能依据另外的书面协议向您提供的任何服务）的使用，并完全取代您之前与 Google 之间签订的、与“预览版”有关的任何协议。
-
-14.2 您同意，如果 Google 未行使或未强制执行本许可协议包含的任何法定权利或救济（或 Google 在任何适用法律下享有的相关利益），不得视为 Google 正式放弃这些权利，Google 仍可获得这些权利或救济。
-
-14.3 如果任何拥有管辖权的法院将本许可协议的任何条款裁定为无效，则该条款将从本许可协议中删除，而不会影响本许可协议的其余部分。本许可协议的其余条款将继续有效且可强制执行。
-
-14.4 您承认并同意，Google 集团旗下的每一家公司都将成为本许可协议的第三方受益人，并且此类其他公司将有权直接强制执行和依赖本许可协议中任何授予其利益（或支持其权利）的条款。除此之外，任何其他人员或公司均不得成为本许可协议的第三方受益人。
-
-14.5 出口限制。“预览版”受美国出口法律和法规的制约。您必须遵守适用于“预览版”的所有国内和国际出口法律和法规。这些法律包括目的地、最终用户和最终用途方面的限制。
-
-14.6 未经 Google 事先书面批准，您不得擅自转让或转移本许可协议，未经此类批准而试图进行的任何转让均为无效。未经 Google 事先书面批准，您不得委托您依据本许可协议所应承担的责任或义务。
-
-14.7 本许可协议以及您与 Google 依据本许可协议而建立的关系受加利福尼亚州法律管辖，而无论其是否与其他法律条款冲突。您与 Google 同意服从位于加利福尼亚州圣克拉拉县内法院的专属司法管辖权，以解决本许可协议引起的任何法律事务。尽管有上述规定，您同意仍允许 Google 在任何管辖区域申请禁令救济（或同等类型的紧急法律救济）。
-  </div><!-- sdk terms -->
-
-
-
-    <div id="sdk-terms-form">
-      <p>
-        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
-        <label id="agreeLabel" for="agree">我已阅读并同意上述条款和条件</label>
-      </p>
-      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
-    </div>
-
-
-  </div><!-- end TOS -->
-
-
-  <div id="landing">
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文内容</h2>
-      <ol>
-        <li><a href="#sdk">Android 6.0 SDK</a></li>
-        <li><a href="#docs">开发者文档</a></li>
-        <li><a href="#images">硬件系统映像</a></li>
-      </ol>
-     <h2>Legacy downloads</h2>
-        <ol>
-           <li><a href="{@docRoot}preview/download_mp1.html">Developer Preview 1</a></li>
-           <li><a href="{@docRoot}preview/download_mp2.html">Developer Preview 2</a></li>
-        </ol>
-  </div>
-</div>
-
-
-<p>
-  Android M 预览版 SDK 包括开发工具、Android 系统文件和库文件，旨在帮助您在下一版本的平台中测试您的应用以及该平台提供的新 API。
-本文旨在介绍如何获得“预览版”的可下载组件，以便测试您的应用。
-
-</p>
-
-
-<h2 id="sdk">Android 6.0 SDK</h2>
-
-<p>
-  预览版 SDK 可通过 <a href="{@docRoot}tools/help/sdk-manager.html">Android SDK 管理器</a>下载。如需了解有关下载和配置预览版 SDK 的详细信息，请参阅<a href="{@docRoot}preview/setup-sdk.html#downloadSdk">设置预览版 SDK</a>。
-
-</p>
-
-
-<h2 id="docs">开发者文档</h2>
-
-<p>
-  开发者文档下载软件包提供详细的 API 参考信息和“预览版”的 API 差异报告。
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Description</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="docs-dl">
-    <td>Android M Preview 3<br>Developer Docs</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >m-preview-3-developer-docs.zip</a><br>
-      MD5: d99b14b0c06d31c8dfecb25072654ca3<br>
-      SHA-1: 9cefeeda07676130da606a1796e1c00fffc667c1
-    </td>
-  </tr>
-</table>
-
-
-<h2 id="images">硬件系统映像</h2>
-
-<p>
-  这些系统映像允许您在实际设备上安装预览版平台，以便进行测试。
-通过使用这些映像之一配置设备，您可以安装并测试您的应用，以了解其在下一版本平台上的性能表现。
-在设备上安装系统映像的过程会<em>删除设备中的所有数据</em>，因此您应该在安装系统映像之前备份数据。
-
-
-</p>
-
-<p class="warning">
-  <b>警告：</b>以下 Android 系统映像是预览版，可能会随时发生变化。您对这些系统映像的使用受 Android SDK 预览版许可协议的制约。
-Android 预览版系统映像并非稳定版本，可能包含会对您的计算机系统、设备和数据造成损害的错误和缺陷。
-
-Android 预览版系统映像未经过与出厂操作系统相同的测试，可能会导致您的手机和安装的服务与应用停止工作。
-
-
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Device</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="hammerhead">
-    <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >hammerhead-MPA44I-preview-2ebbc049.tgz</a><br>
-      MD5: 91a924fb0c9f8e716e3b4c9954fd0dbb<br>
-      SHA-1: 2ebbc049b68c4da8baeee3e42bb94d7a965ba4a3
-    </td>
-  </tr>
-  <tr id="shamu">
-    <td>Nexus 6 <br>"shamu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >shamu-MPA44I-preview-62b9c486.tgz</a><br>
-      MD5: ac6e58da86125073d9c395257fd42664<br>
-      SHA-1: 62b9c486fd7a5020e228d53ca5acd5c1857e48ff
-    </td>
-  </tr>
-  <tr id="volantis">
-    <td>Nexus 9 <br>"volantis"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >volantis-MPA44I-preview-5c30a6e2.tgz</a><br>
-      MD5: 7f83768757913d3fea945a661020d185<br>
-      SHA-1: 5c30a6e2acd11a81f4105b12d23ff654f534f699
-    </td>
-  </tr>
-
-  <tr id="fugu">
-    <td>Nexus Player <br>"fugu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >fugu-MPA44I-preview-2860040a.tgz</a><br>
-      MD5: 438da8d37da9e341a69cfb16a4001ac5<br>
-      SHA-1: 2860040a326582f1ff5f702bf9a1ef002717fc98
-    </td>
-  </tr>
-
-</table>
-
-<h3 id="install-image">将映像安装到设备</h3>
-
-<p>
-  要使用设备映像进行测试，您必须将其安装到兼容设备上。请按照下面的说明安装系统映像：
-
-</p>
-
-<ol>
-  <li>下载并解压此处列出的系统映像包之一。</li>
-  <li>备份设备中您希望予以保留的任何数据。</li>
-  <li>按照
-<a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
- 中的说明将映像刷入设备中。</li>
-</ol>
-
-<p class="note">
-  <strong>注：</strong>为开发设备刷入预览版系统映像之后，它将通过无线 (OTA) 更新自动升级到下一个预览版本。
-
-</p>
-
-<h3 id="revertDevice">将设备还原至出厂规格</h3>
-
-<p>
-  如果您想要卸载预览版并将设备还原至出厂规格，请转到
-<a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a> 并下载要为设备刷入的映像。
-按照该页面上的说明将映像刷入设备中。
-
-</p>
-
-  </div><!-- landing -->
-
-</div><!-- relative wrapper -->
-
-
-
-<script>
-  var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
-  function onDownload(link) {
-
-    $("#downloadForRealz").html("Download " + $(link).text());
-    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
-
-    $("#tos").fadeIn('fast');
-    $("#landing").fadeOut('fast');
-
-    return true;
-  }
-
-
-  function onAgreeChecked() {
-    /* verify that the TOS is agreed */
-    if ($("input#agree").is(":checked")) {
-      /* reveal the download button */
-      $("a#downloadForRealz").removeClass('disabled');
-    } else {
-      $("a#downloadForRealz").addClass('disabled');
-    }
-  }
-
-  function onDownloadForRealz(link) {
-    if ($("input#agree").is(':checked')) {
-    /*
-      $("#tos").fadeOut('fast');
-      $("#landing").fadeIn('fast');
-    */
-
-      ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
-
-    /*
-      location.hash = "";
-    */
-      return true;
-    } else {
-      return false;
-    }
-  }
-
-  $(window).hashchange( function(){
-    if (location.hash == "") {
-      location.reload();
-    }
-  });
-
-</script>
diff --git a/docs/html-intl/intl/zh-cn/preview/features/app-linking.jd b/docs/html-intl/intl/zh-cn/preview/features/app-linking.jd
deleted file mode 100644
index 77a532f..0000000
--- a/docs/html-intl/intl/zh-cn/preview/features/app-linking.jd
+++ /dev/null
@@ -1,123 +0,0 @@
-page.title=应用链接
-page.image=images/cards/card-app-linking_2x.png
-page.keywords=应用链接, 深层链接, 意向
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文内容</h2>
-      <ol>
-        <li><a href="#web-assoc">声明网站关联</a></li>
-        <li><a href="#verfy-links">请求应用链接验证</a></li>
-        <li><a href="#user-manage">管理应用链接设置</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Android 意向系统是一种让应用能够处理内容和请求的灵活机制。
-  可能会有多个应用在其意向过滤器中声明一致的 URI 模式。如果用户点击的 Web 链接没有默认的启动处理程序，平台可能会显示一个对话框，让用户从一系列已声明一致意向过滤器的应用中进行选择。
-
-
-</p>
-
-<p>
-  Android M 开发者预览版引入了对应用链接的支持，后者在现有链接处理方式基础上进行了改进，允许应用开发者将应用与他们拥有的 Web 域进行关联。
-当开发者创建此关联时，平台可以自动确定在处理特定 Web 链接时默认使用的应用，略过询问用户的步骤。
-
-
-</p>
-
-
-<h2 id="web-assoc">声明网站关联</h2>
-
-<p>
-  网站所有者必须声明与应用的关联才能建立应用链接。网站所有者可以通过在域上众所周知的位置承载一个名为 {@code statements.json} 的 JSON 文件声明与应用的关系：
-
-
-</p>
-
-<pre>http://&lt;domain&gt;:&lt;optional port&gt;/.well-known/statements.json</pre>
-
-<p class="note">
-  <strong>注：</strong>
-  在 M 开发者预览版运行期间，系统会通过 HTTP 协议对该 JSON 文件进行验证。当平台正式发布后，系统将通过 HTTPS 加密协议对该文件进行验证。
-
-</p>
-
-<p>
-  该 JSON 文件指定应作为该域下 URL 默认处理程序使用的 Android 应用。
-它根据以下字段标识该应用：
-</p>
-
-<ul>
-  <li>{@code package_name}：该应用的清单文件中声明的软件包名称；</li>
-
-  <li>{@code sha256_cert_fingerprints}：应用签名证书的 SHA256 指纹。
-    您可以利用 Java 密钥工具，通过以下命令生成该指纹：
-    <pre>keytool -list -v -keystore my-release-key.keystore</pre>
-  </li>
-</ul>
-
-<p>
-  以下文件清单显示的是一个 
-{@code statements.json} 文件的内容和格式示例：
-</p>
-
-<pre>
-[{
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": "<strong>&lt;package name&gt;</strong>",
-    "sha256_cert_fingerprints": ["<strong>6C:EC:C5:0E:34:AE....EB:0C:9B</strong>"]
-  }
-}]
-</pre>
-
-
-<h2 id="verfy-links">请求应用链接验证</h2>
-
-<p>
-  应用可以请求平台自动根据相应 Web 域上承载的 {@code statements.json} 文件验证由其意向过滤器数据元素内的主机名称定义的任何应用链接。
-
-要请求应用链接验证，请按以下清单文件代码段中所示向清单文件中所需的每个意向过滤器添加一个 {@code android:autoVerify}
- 属性：
-
-</p>
-
-<pre>
-&lt;activity ...&gt;
-    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-        &lt;action android:name="android.intent.action.VIEW" /&gt;
-        &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-        &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-        &lt;data android:scheme="http" android:host="www.android.com" /&gt;
-        &lt;data android:scheme="https" android:host="www.android.com" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/activity&gt;
-</pre>
-
-<p>
-  如果应用清单文件中存在 {@code android:autoVerify} 属性，平台会在安装应用时尝试验证应用链接。
-如果平台无法成功验证应用链接，则不会将应用设置为处理 Web 链接的首选应用。
-用户下一次打开其中一个链接时，平台将退回原有模式，向用户显示一个对话框。
-
-
-</p>
-
-<p class="note">
-  <strong>注：</strong>在测试时，如果验证失败，但用户已经使用系统的“设置”应用显式允许应用在不询问用户的情况下打开受支持的链接，则可能会出现误报。在这种情况下，不会显示对话框，链接会直接指向您的应用，不过这完全是由于用户设置的缘故，并不是因为验证成功。
-
-
-
-</p>
-
-
-<h2 id="user-manage">管理应用链接设置</h2>
-
-<p>
-  用户可以更改应用链接设置，让系统按首选方式处理 URL。您可以在系统“设置”应用的<strong>设置 &gt; 应用 &gt; 应用信息 &gt; 默认打开</strong>下查看和管理应用链接。
-
-
-</p>
diff --git a/docs/html-intl/intl/zh-cn/preview/features/runtime-permissions.jd b/docs/html-intl/intl/zh-cn/preview/features/runtime-permissions.jd
deleted file mode 100644
index 8e361fb6..0000000
--- a/docs/html-intl/intl/zh-cn/preview/features/runtime-permissions.jd
+++ /dev/null
@@ -1,794 +0,0 @@
-page.title=权限
-page.tags=previewresources, androidm
-page.keywords=permissions, runtime, preview
-page.image={@docRoot}preview/features/images/permissions_check.png
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>内容快览</h2>
-    <ul>
-      <li>如果您的应用主要面向 M 预览版 SDK，则会在运行时（而非安装时）提示用户授予权限。
-</li>
-      <li>用户可以随时从应用“设置”屏幕撤销权限。
-</li>
-      <li>每次运行时，应用均需检查自身是否具备所需的权限。
-</li>
-    </ul>
-
-    <h2>本文内容</h2>
-    <ol>
-      <li><a href="#overview">概览</a></li>
-      <li><a href="#coding">为运行时权限编码</a></li>
-      <li><a href="#testing">测试运行时权限</a></li>
-      <li><a href="#best-practices">最佳做法</a></li>
-    </ol>
-
-<!--
-  <h2>Related Samples</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-
-<!--
-  <h2>See also</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-  </div> <!-- qv -->
-</div> <!-- qv-wrapper -->
-
-
-<p>
-  M 开发者预览版引入了一种新的应用权限模型，旨在简化用户安装和升级应用的过程。
-如果在 M 预览版上运行的应用支持新权限模型，则用户无需在安装或升级应用时授予任何权限。相反，应用会根据需要请求权限，且系统将向用户显示一个请求权限的对话框。
-
-
-
-
-</p>
-
-<p>
-  如果应用支持新权限模型，则仍可在运行旧版 Android 的设备上使用旧权限模型安装并运行此应用。
-
-
-</p>
-
-<h2 id="overview">
-  概览
-</h2>
-
-<p>
-  通过 M 开发者预览版，该平台引入了新的应用权限模型。
-以下概述了此新模型的主要组件：
-</p>
-
-<ul>
-  <li>
-    <strong>声明权限：</strong>应用使用清单文件声明其所需的所有权限，就像在早期的 Android 平台中一样。
-
-  </li>
-
-  <li>
-    <strong>权限组：</strong>权限根据相应的功能分为若干
-<em>权限组</em>。例如，
-<code>CONTACTS</code> 权限组包含读取和写入用户联系人和个人资料信息的权限。
-
-  </li>
-
-  <li>
-    <p><strong>安装时授予的有限权限：</strong>当用户安装或更新应用时，系统将授予应用所请求的属于 {@link
-    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL} 的所有权限。
-
-
-    例如，闹铃和 Internet 权限属于 {@link
-    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}，因此系统将在安装应用时自动授予这些权限。
-
-    </p>
-
-    <p>此外，系统还可以授予应用签名和系统权限，如<a href="#system-apps">系统应用和签名权限</a>中所述。
-
-系统不会在安装应用时提示用户授予任何权限。<em></em>
-</p>
-  </li>
-
-  <li>
-    <strong>用户在运行时授予权限：</strong>当应用请求权限时，系统将向用户显示一个对话框，然后调用应用的回调函数来通知它是否已授予权限。
-
-如果用户授予某项权限，则应用将获得应用清单文件中声明的、该权限功能区域中的所有权限。
-
-
-  </li>
-
-</ul>
-
-<p>
-  对于需要权限的功能，此权限模型将改变应用的行为方式。
-以下概述了您调整此模型时所应遵循的开发实践：
-
-</p>
-
-<ul>
-
-  <li>
-    <strong>始终检查权限：</strong>当应用必须执行任何需要权限的操作时，应先检查它是否已具备该权限。
-
-如果没有，则请求授予该权限。
-
-  </li>
-
-  <li>
-    <strong>妥善处理权限不足的情况：</strong>如果应用未被授予适当的权限，则应正常处理失败情况。
-
-    例如，如果只有新增的功能需要该权限，则应用可以禁用该功能。
-如果该权限对于应用正常运行至关重要，则应用可能会禁用其所有功能，并通知用户需要授予该权限。
-
-
-  </li>
-
-  <div class="figure" style="width:220px" id="fig-perms-screen">
-    <img src="{@docRoot}preview/features/images/app-permissions-screen_2x.png" srcset="{@docRoot}preview/features/images/app-permissions-screen.png 1x, {@docRoot}preview/features/images/app-permissions-screen_2x.png 2x" alt="" width="220">
-    <p class="img-caption">
-      <strong>图 1.</strong>应用“设置”中的“权限”屏幕。
-    </p>
-  </div>
-
-  <li>
-    <strong>权限可撤销：</strong>用户可以随时撤销应用的权限。
-即使用户禁用应用的权限，应用也不会收到通知。<em></em>
-再次强调：您的应用应在执行任何受限操作之前验证是否具备所需的权限。
-
-  </li>
-</ul>
-
-<p class="note">
-  <strong>注：</strong>如果应用主要面向 M 开发者预览版，则必须使用新权限模型。
-<em></em>
-</p>
-
-<p>
-  截至 M 开发者预览版发布，并非所有 Google 应用均已完全实现新权限模型。
-Google 会在 M 开发者预览版运行期间更新这些应用，以便严格遵守权限切换设置。
-
-
-</p>
-
-<p class="note">
-  <strong>注：</strong>如果您的应用拥有自己的 API 接口，请先确保调用方具备访问该数据所需的必要权限，然后再代理权限。
-
-
-</p>
-
-<h3 id="system-apps">
-  系统应用和签名权限
-</h3>
-
-<p>
-  通常，当用户安装应用时，系统仅授予应用
- {@link android.content.pm.PermissionInfo#PROTECTION_NORMAL
-  PROTECTION_NORMAL}。但在某些情况下，系统将授予应用更多权限：
-
-</p>
-
-<ul>
-  <li>如果应用是系统映像的一部分，则系统会自动授予该应用清单文件中列出的所有权限。
-
-  </li>
-
-  <li>如果应用请求提供清单文件中属于 {@link
-  android.content.pm.PermissionInfo#PROTECTION_SIGNATURE PROTECTION_SIGNATURE} 的权限，且该应用已使用与声明这些权限的应用相同的证书进行签名，则系统将在安装请求权限的应用时向其授予这些权限。
-
-
-
-  </li>
-</ul>
-
-<p>
-  在这两种情况下，用户仍可随时撤销权限，具体方法是：转到系统的<strong>设置</strong>屏幕，然后选择<strong>应用 &gt;</strong>
-
- <i>应用名称</i> <strong>&gt; 权限</strong>。应用应在运行时继续检查权限，并根据需要请求权限。
-
-
-</p>
-
-<h3 id="compatibility">
-  前后兼容性
-</h3>
-
-<p>
-  如果应用并非面向 M 开发者预览版，则即使是在 M 预览版设备上，该应用也会继续使用旧权限模型。
-当用户安装应用时，系统将要求用户授予应用清单文件中列出的所有权限。
-
-
-</p>
-
-<p class="note">
-  <strong>注：</strong>在运行 M 开发者预览版的设备上，用户可以从应用的“设置”屏幕禁用任何应用（包括旧版应用）的权限。
-
-如果用户禁用某旧版应用的权限，则系统将以静默方式禁用相应的功能。
-当应用尝试执行需要该权限的操作时，该操作不一定会导致出现异常。
-
-相反，它可能会返回空数据集、报告错误或以其他方式表现出异常行为。
-例如，如果您未经许可查询日历，则该方法会返回空数据集。
-
-</p>
-
-<p>
-  如果您在未运行 M 预览版的设备上使用新权限模型安装应用，则系统将采用与其他任何应用相同的方式处理：系统会在安装应用时要求用户授予声明的所有权限。
-
-
-
-</p>
-
-<p class="note">
-  <strong>注：</strong>对于预览版本，您必须将最低 SDK 版本设置为 M 预览版 SDK，才可使用预览版 SDK 进行编译。
-这意味着在开发者预览版运行期间，您无法在旧版平台上测试此类应用。
-
-
-</p>
-
-<h3 id="perms-vs-intents">权限与意向的比较</h3>
-
-<p>
-  许多情况下，您可以使用以下两种方式之一来让您的应用执行某项任务。
-您可以将应用设置为请求执行操作本身所需的权限。
-或者，您可以将应用设置为通过传送意向，让其他应用来执行任务。
-
-</p>
-
-<p>
-  例如，假设应用需要能够使用设备相机拍摄照片。
-应用可以请求
-<code>android.permission.CAMERA</code> 权限，以便允许其直接访问相机。
-然后，应用将使用 Camera API 控制相机并拍摄照片。
-利用此方法，您的应用能够完全控制摄影过程，并支持您将相机 UI 合并至应用中。
-
-
-</p>
-
-<p>
-  但是，如果您无需此类控制，则可仅使用 {@link
-  android.provider.MediaStore#ACTION_IMAGE_CAPTURE ACTION_IMAGE_CAPTURE} 意向来请求图像。
-启动该意向时，系统会提示用户选择相机应用（如果没有默认相机应用），然后该应用将拍摄照片。
-
-该相机应用会将照片返回给应用的 {@link
-  android.app.Activity#onActivityResult onActivityResult()} 方法。
-</p>
-
-<p>
-  同样，如果您需要打电话、访问用户的联系人或要执行其他操作，则可通过创建适当的意向来完成，或者您可以请求相应的权限并直接访问相应的对象。
-
-每种方法各有优缺点。
-
-</p>
-
-<p>
-  如果使用权限：
-</p>
-
-<ul>
-  <li>应用可在您执行操作时完全控制用户体验。
-但是，如此广泛的控制会增加任务的复杂性，因为您需要设计适当的 UI。
-
-  </li>
-
-  <li>当您首次执行操作时，系统会显示一次让用户授予权限的提示。
-之后，应用即可执行操作，不再需要用户进行其他交互。
-但是，如果用户不授予权限（或稍后撤销权限），则应用根本无法执行操作。
-
-
-  </li>
-</ul>
-
-<p>
-  如果使用意向：
-</p>
-
-<ul>
-  <li>您无需为操作设计 UI。处理意向的应用将提供 UI。不过这意味着您无法控制用户体验。
-
-用户可以与您从未见过的应用进行交互。
-
-  </li>
-
-  <li>如果用户没有适用于操作的默认应用，则系统会提示用户选择应用。如果用户未指定默认处理程序，则必须在每次执行此操作时额外处理一个对话框。
-
-
-
-  </li>
-</ul>
-
-<h2 id="coding">为运行时权限编码</h2>
-
-<p>
-  如果应用主要面向新的 M 开发者预览版，则您必须使用新权限模型。
-这意味着除了通过清单文件声明所需的权限以外，您还必须检查应用运行时是否已有相应的权限，如果没有，则需要请求权限。
-
-
-
-</p>
-
-<h3 id="enabling">
-  启用新权限模型
-</h3>
-
-<p>
-  要启用新的 M 开发者预览版权限模型，请将应用的
-<code>targetSdkVersion</code> 属性设置为 <code>"MNC"</code>，并将
-<code>compileSdkVersion</code> 设置为 <code>"android-MNC"</code>。这样可启用所有新的权限功能。
-
-</p>
-
-<p>
-  对于预览版本，您必须将 <code>minSdkVersion</code> 设置为
-<code>"MNC"</code>，才能使用预览版 SDK 进行编译。
-</p>
-
-<h3 id="m-only-perm">
-  指定仅用于 M 预览版的权限
-</h3>
-
-<p>
-  您可以使用应用清单文件中的新 <code>&lt;uses-permission-sdk-m&gt;</code> 元素指明仅在 M 开发者预览版中需要某权限。
-如果您以这种方式声明权限，则每当在旧版设备上安装应用时，系统都不会提示用户或向应用授予权限。通过使用 <code>&lt;uses-permission-sdk-m&gt;</code>
- 元素，您可以将新权限添加到更新后的应用版本，而不必强制用户在安装更新时授予权限。
-
-
-
-
-
-</p>
-
-<p>
-  如果应用在已安装 M 开发者预览版的设备上运行，则
-<code>&lt;uses-permission-sdk-m&gt;</code> 的行为与
-<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 相同。
-  系统不会在安装应用时提示用户授予任何权限，且应用将根据需要请求权限。
-
-</p>
-
-<h3 id="prompting">
-  提示授予权限
-</h3>
-
-<p>
-  如果应用使用新的 M 开发者预览版权限模型，则在运行 M 预览版的设备上首次启动应用时，系统不会要求用户授予所有权限。
-
-相反，应用将根据需要请求权限。
-当应用请求某权限时，系统会向用户显示一个对话框。
-
-</p>
-
-<p>
-  如果应用在已安装 SDK 22 或更低版本的设备上运行，则应用将使用旧权限模型。
-当用户安装应用时，系统将提示他们授予应用在清单文件中请求的所有权限，但那些带有 <code>&lt;uses-permission-sdk-m&gt;</code> 标记的权限除外。
-
-
-</p>
-
-<h4 id="check-platform">检查运行应用的平台</h4>
-
-<p>
-  只有运行 M 开发者预览版的设备支持此权限模型。
-在调用其中任何方法之前，应用均应通过检查 {@link android.os.Build.VERSION#CODENAME
-  Build.VERSION.CODENAME} 的值来验证运行应用的平台。
-
-如果设备正在运行 M 开发者预览版，则
-{@link android.os.Build.VERSION#CODENAME CODENAME} 为 <code>"MNC"</code>。
-</p>
-
-<h4 id="check-for-permission">检查应用是否具备所需的权限</h4>
-
-<p>当用户尝试执行需要权限的操作时，应用将检查目前是否具备执行此操作所需的权限。
-为此，应用将调用
-<code>Context.checkSelfPermission(
-<i>permission_name</i>)</code>。即便知道用户已授予该权限，应用也应执行此检查，因为用户可以随时撤销应用的权限。
-
-
-例如，如果用户需要使用应用拍摄照片，则应用将调用
-<code>Context.checkSelfPermission(Manifest.permission.CAMERA)</code>。
-</p>
-
-<p class="table-caption" id="permission-groups">
-  <strong>表 1.</strong>权限和权限组。</p>
-<table>
-  <tr>
-    <th scope="col">权限组</th>
-    <th scope="col">权限</th>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CALENDAR</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CALENDAR</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.WRITE_CALENDAR</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CAMERA</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.CAMERA</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CONTACTS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_PROFILE</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_PROFILE</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.LOCATION</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.ACCESS_FINE_LOCATION</code>
-        </li>
-        <li>
-          <code>android.permission.ACCESS_COARSE_LOCATION</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.MICROPHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.RECORD_AUDIO</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.PHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_PHONE_STATE</code>
-        </li>
-        <li>
-          <code>android.permission.CALL_PHONE</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CALL_LOG</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CALL_LOG</code>
-        </li>
-        <li>
-          <code>com.android.voicemail.permission.ADD_VOICEMAIL</code>
-        </li>
-        <li>
-          <code>android.permission.USE_SIP</code>
-        </li>
-        <li>
-          <code>android.permission.PROCESS_OUTGOING_CALLS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SENSORS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.BODY_SENSORS</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.USE_FINGERPRINT</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SMS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.SEND_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_WAP_PUSH</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_MMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CELL_BROADCASTS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-</table>
-
-<h4 id="request-permissions">根据需要请求权限</h4>
-
-<p>如果应用尚无所需的权限，则应用将调用
-<code>Activity.requestPermissions(String[], int)</code> 方法，请求提供一项或多项适当的权限。
-应用将传递所需的一项或多项权限，以及整数“请求代码”。
-
-  此方法异步运行：它会立即返回，并且在用户响应对话框之后，系统会使用结果调用应用的回调方法，将应用传递的相同“请求代码”传递到 <code>requestPermissions()</code>。
-
-
-</p>
-
-  <p>以下代码检查应用是否具备读取用户联系人所需的权限，并根据需要请求该权限：
-</p>
-
-<pre>
-if (checkSelfPermission(Manifest.permission.READ_CONTACTS)
-        != PackageManager.PERMISSION_GRANTED) {
-    requestPermissions(new String[]{Manifest.permission.READ_CONTACTS},
-            MY_PERMISSIONS_REQUEST_READ_CONTACTS);
-
-    // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
-    // app-defined int constant
-
-    return;
-}
-</pre>
-
-<h4 id="handle-response">处理权限请求响应</h4>
-
-<p>
-  当应用请求权限时，系统将向用户显示一个对话框。
-当用户响应时，系统将调用应用的
-<code>Activity.onRequestPermissionsResult(int, String[], int[])</code>
-，向其传递用户响应。应用需要替代该方法。回调会将您传递的相同请求代码传递给
-<code>requestPermissions()</code>。
-例如，如果应用请求
-<code>READ_CONTACTS</code> 访问权限，则可能采用以下回调方法：
-
-</p>
-
-<pre>
-&#64;Override
-public void onRequestPermissionsResult(int requestCode,
-        String permissions[], int[] grantResults) {
-    switch (requestCode) {
-        case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
-            if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
-
-                // permission was granted, yay! do the
-                // calendar task you need to do.
-
-            } else {
-
-                // permission denied, boo! Disable the
-                // functionality that depends on this permission.
-            }
-            return;
-        }
-
-        // other 'switch' lines to check for other
-        // permissions this app might request
-    }
-}
-</pre>
-
-  <p>如果用户授予权限，则系统会为应用授予应用清单文件为该功能区域列出的所有权限。
-如果用户拒绝请求，则您应采取适当的操作。
-例如，您可以禁用任何取决于此权限的菜单操作。
-
-  </li>
-</p>
-
-<p>
-  当系统要求用户授予权限时，用户可以选择指示系统不再要求提供该权限。
-在这种情况下，当应用使用 <code>requestPermissions()</code> 请求该权限时，系统会立即拒绝此请求。
-
-在这种情况下，如果用户已再次明确拒绝您的请求，则系统会以同样的方式调用您的 <code>onRequestPermissionsResult()</code>。
-
-因此，您的应用不能假设用户采取了任何直接交互行为。
-
-</p>
-
-<h2 id="testing">测试运行时权限</h2>
-
-
-<p>
-  如果应用主要面向 M 开发者预览版，则您必须测试它是否正确处理权限。
-您不能假设应用在运行时具备任何特定的权限。
-应用首次启动时，它可能没有任何权限，且用户可以随时撤销或恢复权限。
-
-
-</p>
-
-<p>
-  您应测试应用，确保它在所有权限情况下均可正常运行。
-通过 M 预览版 SDK，我们提供了新的
-<a href="{@docRoot}tools/help/adb.html">Android
-  Debug Bridge (adb)</a> 命令，支持您使用需要尝试的任何权限设置测试应用。
-
-</p>
-
-<h3>
-  新 adb 命令和选项
-</h3>
-
-<p>
-  M 预览版 SDK 平台工具提供了多个新命令，支持您测试应用处理权限的方式。
-
-</p>
-
-<h4>
-  使用权限安装
-</h4>
-
-<p>
-  您可以使用 <a href="{@docRoot}tools/help/adb.html#move"><code>adb
-  install</code></a> 命令的新 <code>-g</code> 选项，该选项将安装应用并授予其清单文件中列出的所有权限：
-
-</p>
-
-<pre class="no-pretty-print">
-$ adb install -g &lt;path_to_apk&gt;
-</pre>
-
-<h4>
-  授予和撤销权限
-</h4>
-
-<p>
-  您可以使用新的 ADB <a href="{@docRoot}tools/help/adb.html#pm">软件包管理器 (pm)</a> 命令向已安装的应用授予权限和撤销其权限。此功能对于自动化测试非常有用。
-
-
-</p>
-
-<p>
-  要授予权限，请使用软件包管理器的 <code>grant</code> 命令：
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<p>
-  例如，要向录音​​授予 com.example.myapp 软件包权限，请使用以下命令：
-
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant com.example.myapp android.permission.RECORD_AUDIO
-</pre>
-
-<p>
-  要撤销权限，请使用软件包管理器的 <code>revoke</code> 命令：
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm revoke &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<h2 id="best-practices">最佳做法</h2>
-
-<p>
-  新权限模型为用户带来更流畅的体验，让他们能够更轻松地安装应用，并得心应手地使用应用的各项功能。
-
-为了充分利用该新模型，我们建议采用下列最佳做法。
-
-</p>
-
-
-<h3 id="bp-what-you-need">仅请求自己所需的权限</h3>
-
-<p>
-  每次您请求权限时，实际上是在强迫用户作出决定。
-  如果用户拒绝请求，则会减少应用的功能。
-  您应尽量减少提出这些请求的次数。
-</p>
-
-<p>
-  例如，应用往往可以通过使用
-<a href="{@docRoot}guide/components/intents-filters.html">意向</a>（而不是请求权限）获得所需的功能。
-如果应用需要使用手机的相机拍摄照片，则可使用
- {@link
-  android.provider.MediaStore#ACTION_IMAGE_CAPTURE
-  MediaStore.ACTION_IMAGE_CAPTURE} 意向。当应用执行该意向时，系统会提示用户选择已安装的相机应用拍摄照片。
-
-
-</p>
-
-<h3 id="bp-dont-overwhelm">
-  不要让用户感到无所适从
-</h3>
-
-<p>
-  如果您让用户一次面对大量权限请求，用户可能会感到无所适从并因此退出应用。替代做法是，您应根据需要请求权限。
-
-
-</p>
-
-<p>
-  某些情况下，您的应用可能绝对需要一项或多项权限。在这种情况下，合理的做法是，在应用启动之后立即请求所有权限。
-
-例如，如果您运行摄影应用，则该应用需要访问设备的相机。
-当用户首次启动该应用时，不会对请求使用相机所需的权限感到惊讶。
-
-但是，如果同一应用还具备与用户联系人共享照片的功能，则您不应在首次启动时请求用户提供该权限，<em></em>
-
-而是等到用户尝试使用“共享”功能之后，再请求该权限。
-
-</p>
-
-<p>
-  如果应用提供了教程，则合理的做法是，在教程结束时请求提供应用的必要权限。
-
-</p>
-
-<h3 id="bp-explain">
-  解释需要权限的原因
-</h3>
-
-<p>
-  系统在您调用
-<code>requestPermissions()</code> 时显示的权限对话框将说明应用所需的权限，但不会解释为何需要这些权限。
-在某些情况下，用户可能会感到困惑。
-  最好在调用 <code>requestPermissions()</code> 之前向用户解释应用需要权限的原因。
-
-</p>
-
-<p>
-  例如，摄影应用可能需要使用位置服务，以便能够为照片添加地理标签。
-通常，用户可能不了解照片能够包含位置信息，并且对摄影应用想要了解具体位置感到不解。
-
-因此在这种情况下，应用最好在调用
-<code>requestPermissions()</code> 之前告知此功能的相关信息。<em></em>
-
-</p>
-
-<p>
-  其中一种办法是将这些请求纳入应用教程。这样，教程可以依次显示应用的每项功能，并在显示每项功能时解释需要哪些相应的权限。
-
-例如，摄影应用的教程可以演示其“与您的联系人共享照片”功能，然后告知用户需要为应用授予权限以便其查看用户的联系人。
-
-
-然后，应用可以调用 <code>requestPermissions()</code>，要求用户提供该访问权限。
-当然，并非所有用户都会按照教程操作，因此您仍需在应用的正常操作期间检查和请求权限。
-
-
-</p>
diff --git a/docs/html-intl/intl/zh-cn/preview/index.jd b/docs/html-intl/intl/zh-cn/preview/index.jd
deleted file mode 100644
index caed4cb..0000000
--- a/docs/html-intl/intl/zh-cn/preview/index.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=Android M 开发者预览版
-page.tags="preview",
-meta.tags="preview, M preview", androidm
-fullpage=true
-section.landing=true
-header.hide=1
-footer.hide=1
-@jd:body
-
-<section class="dac-expand dac-hero dac-light" >
-  <div class="wrap">
-    <div class="cols dac-hero-content">
-      <div class="col-9of16 col-push-7of16 dac-hero-figure">
-        <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png" srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
-             {@docRoot}images/home/devices-hero_620px_2x.png 2x">
-      </div>
-      <div class="col-7of16 col-pull-9of16">
-        <h1 class="dac-hero-title">Android M 开发者预览版</h1>
-        <p class="dac-hero-description">
-          准备迎接 Android 的下一版本。在 Nexus 5、6、9 和 Player 中测试应用。
-了解新功能：<strong>运行权限</strong>、<strong>瞌睡</strong>和<strong>应用待机</strong>省电功能、新的<strong>协助技术</strong>等。
-
-
-        </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/overview.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          开始！
-</a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-      </div>
-    </div>
-    <div class="dac-section dac-small">
-      <div class="resource-widget resource-flow-layout col-16"
-           data-query="collection:preview/landing/resources"
-           data-cardSizes="6x2"
-           data-maxResults="6"></div>
-    </div>
-  </div>
-</section>
-
-<section class="dac-section dac-gray"><div class="wrap">
-  <h1 class="dac-section-title">资源</h1>
-  <div class="dac-section-subtitle">
-    帮助您的应用准备使用 Android M 的必备信息。
-  </div>
-
-  <div class="resource-widget resource-flow-layout col-16"
-       data-query="collection:preview/landing/more"
-       data-cardSizes="6x6"
-       data-maxResults="16"></div>
-
-    <ul class="dac-section-links">
-      <li class="dac-section-link">
-        <a href="https://code.google.com/p/android-developer-preview/">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          报告问题
-</a>
-      </li>
-      <li class="dac-section-link"><a href="http://g.co/dev/AndroidMDevPreview">
-        <span class="dac-sprite dac-auto-chevron"></span>
-        加入 G+ 社区
-</a>
-      </li>
-    </ul>
-  </div>
-</section>
-
diff --git a/docs/html-intl/intl/zh-cn/preview/license.jd b/docs/html-intl/intl/zh-cn/preview/license.jd
deleted file mode 100644
index 31363be..0000000
--- a/docs/html-intl/intl/zh-cn/preview/license.jd
+++ /dev/null
@@ -1,143 +0,0 @@
-page.title=许可协议
-
-@jd:body
-
-<p>
-在开始使用 Android SDK 预览版之前，您必须同意下列条款和条件。正如下文所述，请注意：这是 Android SDK 的预览版本，可能随时更改，恕不另行通知，您使用此版本的风险由您自行承担。
-Android SDK 预览版并非稳定版本，可能包含会对您的计算机系统、设备和数据造成损害的错误和缺陷。
-</p>
-
-<p>
-本协议是 Android SDK 预览版许可协议（以下称为“许可协议”）。
-</p>
-<div class="sdk-terms" style="height:auto;border:0;padding:0;width:700px">
-1. 简介
-
-1.1 Android SDK 预览版（在本许可协议中简称为“预览版”，具体包括 Android 系统文件、封装 API 以及预览版库文件（若可用））依据本许可协议的条款授权您使用。本许可协议在您与 Google 之间就您对“预览版”的使用构成具有法律约束力的合约。
-
-1.2 “Android”是指以 Android 开源项目（项目网址为 http://source.android.com/，其内容会不时更新）名义提供、面向设备的 Android 软件栈。
-
-1.3 “Google”是指 Google Inc.，是一家特拉华州公司，主要营业地位于：1600 Amphitheatre Parkway, Mountain View, CA 94043, United States。
-
-2. 接受许可协议
-
-2.1 要使用“预览版”，您必须先同意本许可协议。如果您不接受本许可协议，则不得使用“预览版”。
-
-2.2 点击接受并/或使用“预览版”，即表示您特此同意本许可协议的条款。
-
-2.3 如果依照美国或其他国家/地区（包括您居住或您使用“预览版”所在的国家/地区）的法律，您被禁止获取“预览版”，则您不得使用“预览版”，也不得接受本许可协议。
-
-2.4 如果您将在贵公司或组织内部使用“预览版”，则您同意代表您的雇主或其他实体接受本许可协议的约束，并且您表示并保证您拥有完全的合法授权令您的雇主或上述实体受本许可协议的约束。如果您不具备必要的授权，则不得代表您的雇主或其他实体接受本许可协议或使用“预览版”。
-
-3. Google 预览版许可
-
-3.1 Google 依据本许可协议的条款授予您个人或在贵公司或组织内部有限使用“预览版”的免版税、不可转让、非独占性、不可再授权且可撤销的许可，其用途仅限开发在 Android 平台上运行的应用。
-
-3.2 您同意 Google 或第三方拥有“预览版”中存在或相关的全部合法权利、所有权和利益，包括“预览版”中存在的任何知识产权。“知识产权”是指根据专利法、版权法、商业机密法、商标法享有的任何及全部权利，以及其他任何及全部专有权利。Google 保留所有未明确授予您的权利。
-
-3.3 您不得将“预览版”用于本许可协议未明确允许的任何用途。您不得：(a) 对“预览版”或“预览版”的任何部分进行复制（备份用途除外）、修改、改编、再分发、反编译、逆向工程、反汇编或创建其衍生品；或 (b) 将“预览版”的任何部分加载到移动手持终端或除个人计算机之外的任何其他硬件设备上，将“预览版”的任何部分与其他软件合并，或者发行任何融入“预览版”某一部分的软件或设备。
-
-3.4 您同意您将不会进行任何可能引起或导致 Android 碎片化的行动，包括但不限于分发、参与创建或以任何方式推广从“预览版”衍生的软件开发工具包。
-
-3.5 对于依据开源软件许可授权的“预览版”组件，其使用、复制和分发仅受该开源软件许可条款的制约，不受本许可协议的约束。您同意在依照被授予的所有权利作为被许可方期间，在遵守此类开源软件许可协议方面始终保持良好的信誉，并避免进行任何可能导致终止、暂停或违反此类权利的行动。
-
-3.6 您同意 Google 所提供“预览版”的形式和性质可随时发生变更，而无需事先通知您，并且未来的“预览版”版本可能会与在之前的“预览版”版本上开发的应用不兼容。您同意 Google 可单方面决定在未事先通知您的情况下全面停止（永久性或暂时性）向您或用户提供“预览版”（或“预览版”内的任何功能）。
-
-3.7 本许可协议内没有任何条款授予您使用 Google 的任何商品名、商标、服务标志、徽标、域名或其他独特品牌特征的权利。
-
-3.8 您同意您不会移除、遮盖或篡改“预览版”上可能贴有或“预览版”内可能包含的任何专有权利声明（包括版权声明和商标声明）。
-
-4. 您对“预览版”的使用
-
-4.1 Google 同意本许可协议中的任何条款均未授予 Google 从您（或您的许可方）处获取您依照本许可协议使用“预览版”开发的任何软件应用中存在或与其相关的权利、所有权或利益，包括这些应用中存在的任何知识产权。
-
-4.2 您同意只出于 (a) 本许可协议和 (b) 相关管辖区域内任何适用法律、法规或公认惯例或准则（包括有关向美国或其他相关国家/地区出口数据或软件或从美国或其他相关国家/地区进口数据或软件的任何法律）所允许的目的而使用“预览版”和编写应用。
-
-4.3 您同意，如果您使用“预览版”开发应用，您将会保护用户的隐私权和合法权利。如果用户向您提供用户名、密码或其他登录信息或个人信息，您必须确保用户知晓这些信息将供您的应用使用，并且您必须为这些用户提供足以满足法律要求的隐私声明和保护。如果您的应用存储由用户提供的个人信息或敏感信息，其存储方式必须安全。如果用户向您提供 Google 帐户信息，您的应用只能在用户允许时出于用户所许可的有限目的使用该信息访问用户的 Google 帐户。
-
-4.4 您同意您不会利用“预览版”从事任何干扰、中断、损坏或以未经授权方式访问 Google 或任何第三方的服务器、网络或其他财产或服务的Activity（包括应用的开发或分发）。
-
-4.5 您同意您对通过 Android 和/或 Android 应用创建、传输或显示的任何数据、内容或资源以及您的行为所导致的后果（包括 Google 可能遭受的任何损失或损害）负全责（Google 在上述方面对您或任何第三方不承担任何责任）。
-
-4.6 您同意您为违反本许可协议、任何适用的第三方合约或服务条款或任何适用法律或法规下的义务以及任何上述违规行为所导致的后果（包括 Google 或任何第三方可能遭受的任何损失或损害）负全责（Google 在上述方面对您或任何第三方不承担任何责任）。
-
-4.7 “预览版”正在开发中，您的测试和反馈是开发过程的重要环节。使用“预览版”，即表示您承认某些功能仍在开发实现之中，您不应期望“预览版”具备稳定版本的全部功能。您同意不使用此“预览版”公开发布或发运任何应用，因为此“预览版”在 Android SDK 正式发行之后将不再受支持。
-
-5. 您的开发者凭据
-
-5.1 您同意，对于 Google 可能向您发放或可能由您自行选择的任何开发者凭据，您有责任保持其机密性，并且您对以您的开发者凭据名义开发的所有应用负全责。
-
-6. 隐私权和信息
-
-6.1 为持续创新和改进“预览版”，Google 可能会从软件收集某些使用统计数据，包括但不限于唯一标识符、关联的 IP 地址、软件的版本号以及有关软件使用了“预览版”中哪些工具和/或服务及其使用方式的信息。在收集任何上述信息之前，“预览版”都会通知您并征求您的同意。如果您拒绝同意，我们将不会收集这些信息。
-
-6.2 我们会对收集的数据进行汇总调查，以便改进“预览版”，并会按照 Google 的隐私政策（网址为 http://www.google.com/policies/privacy/）维护数据。
-
-7. 第三方应用
-
-7.1 如果您使用“预览版”运行由第三方开发或访问由第三方提供的数据、内容或资源的应用，您同意 Google 对这些应用、数据、内容或资源不承担任何责任。您理解，您通过上述第三方应用可能访问到的所有数据、内容或资源由其提供者负全责，Google 对您因使用或访问其中任何第三方应用、数据、内容或资源而遭受的任何损失或损害不承担任何责任。
-
-7.2 您应知晓，通过此类第三方应用提供给您的数据、内容和资源可能受提供商（或代表他们的其他人员或公司）所拥有的知识产权的保护。除非相关所有者明确给予许可，否则您不得修改、出租、租赁、借出、出售、分发这些数据、内容或资源（的全部或部分），或以其为基础创建衍生品。
-
-7.3 您承认您对上述第三方应用、数据、内容或资源的使用可能受到您与相关第三方之间单独订立的条款的制约。
-
-8. 使用 Google API
-
-8.1 Google API
-
-8.1.1 如果您使用任何 API 从 Google 检索数据，即表示您承认这些数据可能受到 Google 或这些数据提供方（或代表他们的其他人员或公司）拥有的知识产权的保护。您对任何上述 API 的使用可能受到附加服务条款的制约。除非相关服务条款允许，否则您不得修改、出租、租赁、借出、出售、分发这些数据（的全部或部分），或以其为基础创建衍生品。
-
-8.1.2 如果您使用任何 API 从 Google 检索用户数据，即表示您承认并同意您只有在征得用户明确同意时才会检索数据，并且只能在用户允许时出于用户许可的有限目的检索数据。
-
-9. 终止许可协议
-
-9.1 本许可协议将持续有效，直至您或 Google 按以下规定终止本协议。
-
-9.2 如果您想终止本许可协议，可通过停止使用“预览版”以及任何相关开发者凭据予以终止。
-
-9.3 Google 有权在向您作出通知后，有理由或无理由地随时终止与您订立的这份许可协议。
-
-9.4 本许可协议将在下列情况下自动终止，而无需另行通知或采取其他行动，以先符合条件者为准：
-(A) Google 在您居住或使用服务所在国家/地区停止向用户提供“预览版”或“预览版”的某些部分；
-(B) Google 发行 Android SDK 的最终版本。
-
-9.5 在本许可协议终止时，本许可协议中向您授予的许可将终止，您应立即完全停止使用“预览版”，并且第 10、11、12 和 14 节的条款将无限期继续存在。
-
-10. 免责声明
-
-10.1 您明确理解并同意，您使用“预览版”的风险将由您自行承担，并且“预览版”是按“原样”和“现状”提供，Google 不提供任何类型的担保。
-
-10.2 您对“预览版”的使用以及通过使用“预览版”下载或以其他方式获得的任何材料由您自行决定，风险自负，并且对于因此类使用而对您的计算机系统或其他设备造成的任何损害或数据损失由您单方面负责。在不对上文所述予以限制的条件下，您了解“预览版”并非稳定版本，可能存在将导致重大损害的错误、缺陷和安全漏洞，包括无法挽回地完全无法使用您的计算机系统或其他设备。
-
-10.3 Google 进一步明确拒绝任何类型的所有担保和条件，无论明示或暗示，包括但不限于有关适销性、特定用途适用性以及非侵权的暗示担保和条件。
-
-11. 有限责任
-
-11.1 您明确理解并同意，对于您可能遭遇的任何直接、间接、附带、特殊、继发或惩罚性损害（包括任何数据损失），Google 及其子公司和附属公司以及其许可方在任何责任理论下对您概不承担任何责任，无论 Google 或其代表是否已被告知或是否本应知晓发生任何上述损失的可能性。
-
-12. 赔偿
-
-12.1 您同意，在法律所允许的最大限度内，为 Google、其附属公司及其各自的董事、高管、员工和代理商提供辩护，使其免于因下列情况引起或产生的任何及所有索赔、诉讼、起诉或诉讼程序以及任何及所有损失、债务、损害、成本和费用（包括合理的律师费用）而承担责任或遭受损害：(a) 您对“预览版”的使用；(b) 您在“预览版”上开发的任何应用侵犯任何人的任何知识产权或诽谤任何人或侵犯其公开权或隐私权；以及 (c) 您的任何行为有悖于本许可协议
-
-13. 许可协议的更改
-
-13.1 Google 可能会在分发新版本“预览版”时对许可协议做出更改。做出这些更改后，Google 将在提供“预览版”的网站上公布新版本的许可协议。
-
-14. 一般法律条款
-
-14.1 本许可协议构成您与 Google 之间的完整法律协议，管辖您对“预览版”（不包括 Google 可能依据另外的书面协议向您提供的任何服务）的使用，并完全取代您之前与 Google 之间签订的、与“预览版”有关的任何协议。
-
-14.2 您同意，如果 Google 未行使或未强制执行本许可协议包含的任何法定权利或救济（或 Google 在任何适用法律下享有的相关利益），不得视为 Google 正式放弃这些权利，Google 仍可获得这些权利或救济。
-
-14.3 如果任何拥有管辖权的法院将本许可协议的任何条款裁定为无效，则该条款将从本许可协议中删除，而不会影响本许可协议的其余部分。本许可协议的其余条款将继续有效且可强制执行。
-
-14.4 您承认并同意，Google 集团旗下的每一家公司都将成为本许可协议的第三方受益人，并且此类其他公司将有权直接强制执行和依赖本许可协议中任何授予其利益（或支持其权利）的条款。除此之外，任何其他人员或公司均不得成为本许可协议的第三方受益人。
-
-14.5 出口限制。“预览版”受美国出口法律和法规的制约。您必须遵守适用于“预览版”的所有国内和国际出口法律和法规。这些法律包括目的地、最终用户和最终用途方面的限制。
-
-14.6 未经 Google 事先书面批准，您不得擅自转让或转移本许可协议，未经此类批准而试图进行的任何转让均为无效。未经 Google 事先书面批准，您不得委托您依据本许可协议所应承担的责任或义务。
-
-14.7 本许可协议以及您与 Google 依据本许可协议而建立的关系受加利福尼亚州法律管辖，而无论其是否与其他法律条款冲突。您与 Google 同意服从位于加利福尼亚州圣克拉拉县内法院的专属司法管辖权，以解决本许可协议引起的任何法律事务。尽管有上述规定，您同意仍允许 Google 在任何管辖区域申请禁令救济（或同等类型的紧急法律救济）。
-
-
-</div>
\ No newline at end of file
diff --git a/docs/html-intl/intl/zh-cn/preview/overview.jd b/docs/html-intl/intl/zh-cn/preview/overview.jd
deleted file mode 100644
index d931db0..0000000
--- a/docs/html-intl/intl/zh-cn/preview/overview.jd
+++ /dev/null
@@ -1,389 +0,0 @@
-page.title=计划概览
-page.metaDescription=欢迎参加 Android M 开发者预览版计划。此计划将为您提供针对 Android 的下一版本测试和优化应用所需的所有功能。
-page.image=images/cards/card-preview_16-9_2x.png
-page.tags="preview", "developer", "android"
-
-@jd:body
-
-<div class="cols" style=
-"background-color:#ffebc3; padding: 5px 0;margin-bottom:1em; text-align:center;">
-<h3>
-    Developer Preview 2 is now available
-  </h3>
-
- <ul class="dac-section-links">
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-notes">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Read the Notes</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-get">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Get the Update</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="https://code.google.com/p/android-developer-preview/">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Report Issues</a>
-    </li>
-  </ul>
-</div>
-
-<p>
-  欢迎使用 <strong>Android M 开发者预览版</strong>计划。此计划将为您提供针对 Android 的下一版本测试和优化应用所需的所有功能。
-
-它是一款免费软件。您仅需下载 M 开发者预览版工具即可立即使用。
-
-</p>
-
-<div style="background-color:#eceff1;padding:1em;">
-<div class="wrap">
-  <div class="cols">
-    <div class="col-4of12">
-      <h5>
-        硬件和模拟器系统映像
-      </h5>
-
-      <p>
-        在 Nexus 5、6、9 和 Player（适用于电视）以及模拟器中运行并测试应用。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        最新的平台代码
-      </h5>
-
-      <p>
-        我们将在预览版期间提供多次更新，因此您将可以针对最新的平台变更测试您的应用。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        通过 OTA（空中下载技术）更新
-      </h5>
-
-      <p>
-        在向设备刷入初始预览版后，即可通过 OTA 技术获取更新。
-
-      </p>
-    </div>
-  </div>
-
-  <div class="cols">
-
-
-    <div class="col-4of12">
-      <h5>
-        新行为和新功能
-      </h5>
-
-      <p>
-        尽早做好支持新平台行为（例如新运行时权限模型和省电功能）的准备工作。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        为处理开发者反馈问题而设的优先窗口
-      </h5>
-
-      <p>
-        在最初的几周里，我们将优先处理开发者报告的问题，以便尽快测试并提供反馈。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        反馈和支持
-      </h5>
-
-      <p>
-        使用<a href="https://code.google.com/p/android-developer-preview/">问题跟踪器</a>向我们报告问题并提供反馈。
-        与 <a href="http://g.co/dev/AndroidMDevPreview">M&nbsp;开发者社区</a>中的其他开发者建立联系。
-
-      </p>
-    </div>
-  </div>
-</div>
-</div>
-
-<!--
-<p>
-  With the M Developer Preview, you'll get an early start on testing your apps,
-  with enough time to make adjustments before the public platform release later
-  in the year. We'll provide several updates to the Preview tools in the weeks
-  ahead, so you can keep in sync with the latest changes as the platform moves
-  toward launch.
-</p>
-<img src="{@docRoot}preview/images/m-preview-timeline.png" alt=
-"Preview program timeline" id="timeline">
-<p>
-  You can help us improve the platform by <a href=
-  "https://code.google.com/p/android-developer-preview/">reporting issues</a>
-  through our feedback channels. This is especially
-  critical in the first month of the preview, when we’ll be giving priority to
-  developer-reported issues and feedback.
-</p> -->
-
-
-<h2 id="timeline">
-  时间表和更新
-</h2>
-<img src="{@docRoot}preview/images/m-preview-timeline-crop.png" alt="Preview program timeline" id="timeline">
-<p>
-  M 开发者预览版从 5 月 28 日开始一直运行到最终 Android M SDK 发布为止。最终的 Android M SDK 将于 2015 年第三季度公众版发布之前不久发布。
-
-
-</p>
-
-<p>
-  在开发阶段的各个里程碑，我们将为您的测试设备提供预览版更新。
-  暂定的里程碑包括
-</p>
-
-<ul>
-  <li>
-    <strong>预览版&nbsp;1</strong>（5 月底发布初始预览版）；
-  </li>
-
-  <li>
-    <strong>预览版&nbsp;2</strong>（6 月底/7 月初）；
-  </li>
-
-  <li>
-    <strong>预览版&nbsp;3</strong>（7 月底发布近乎最终版本）
-  </li>
-</ul>
-
-<p>
-  这些更新将促进形成<strong>最终版本的 SDK</strong>（第三季度末），为 Android 新版本以及最终的系统行为和功能交付官方 API。
-
-
-</p>
-
-<p>
-  如果您在 Android M 中进行测试和开发，我们郑重建议您随着预览版更新的发布，<strong>将开发环境保持为相应的最新版本</strong>。
-
-  为了简化这一过程，我们将为已刷入预览版内部版本的设备提供<strong>空中下载 (OTA) 更新</strong>功能，并提供可供您手动下载并刷入的系统映像。
-
-
-</p>
-<p class="note">
-  <strong>注：</strong>最终的 SDK 和系统映像无法通过 OTA 交付，而是需要<strong>手动刷入</strong>到测试设备中。</strong>
-
-
-</p>
-
-<p>
-  当有预览版更新可用时，我们将通过 <a href="http://android-developers.blogspot.com/">Android 开发者博客</a>、此站点以及 <a href="http://g.co/dev/AndroidMDevPreview">Android M 开发者社区</a>通知您。
-
-
-</p>
-
-<h2 id="preview_tools">
-  预览版具有哪些功能？
-</h2>
-
-<p>
-  M 开发者预览版包括您在各种使用不同屏幕尺寸、网络技术、CPU/GPU 芯片和硬件架构的设备中测试现有应用所需的所有功能。
-
-
-</p>
-
-<h4>
-  SDK 工具
-</h4>
-
-<p>
-  您可通过 <a href="{@docRoot}sdk/installing/adding-packages.html">Android Studio</a> 中的 SDK 管理器下载这些组件：
-</p>
-
-<ul>
-  <li>M 开发者预览版 <strong>SDK 工具</strong>
-  </li>
-
-  <li>M 开发者预览版<strong>模拟器系统映像</strong>（32 位和 64 位）
-
-  </li>
-
-  <li>适用于 Android TV 的 M 开发者预览版<strong>模拟器系统映像</strong>（32 位）
-
-  </li>
-</ul>
-
-<h4>
-  硬件系统映像
-</h4>
-
-<p>
-  您可从<a href="download.html">“下载”页面</a>中下载这些供 Nexus 设备使用的硬件系统映像：
-
-</p>
-
-<ul>
-  <li>
-    <strong>Nexus 5</strong> (GSM/LTE) “hammerhead” 设备系统映像
-  </li>
-
-  <li>
-    <strong>Nexus 6</strong> “shamu” 设备系统映像
-  </li>
-
-  <li>
-    <strong>Nexus 9</strong> (Wi-Fi) “volantis” 设备系统映像
-  </li>
-
-  <li>
-    <strong>Nexus Player</strong> (Android TV) “fugu” 设备系统映像
-  </li>
-</ul>
-
-<h4>
-  文档和示例代码
-</h4>
-
-<p>
-  以下文档资源有助于您了解预览版：
-</p>
-
-<ul>
-  <li>
-    <a href="setup-sdk.html">设置 SDK</a>，提供入门指南的分步说明。
-
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/testing/guide.html">测试指南</a>和<a href="behavior-changes.html">行为变更</a>，带您了解主要测试领域。
-  </li>
-
-  <li>新 API 文档，包括 <a href="api-overview.html">API 概览</a>、可下载的 <a href="{@docRoot}preview/download.html#docs">API 参考资料</a>以及有关<a href="{@docRoot}preview/features/runtime-permissions.html">权限</a>、<a href="{@docRoot}preview/backup/index.html">应用备份</a>等主要功能的详细开发者指南。
-
-
-
-
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/samples.html">示例代码</a>，演示如何支持权限和其他新功能。
-
-  </li>
-
-  <li>
-    M 开发者预览版当前版本的<a href="{@docRoot}preview/support.html#release-notes">版本说明</a>，包括变更说明和差异报告。
-
-  </li>
-</ul>
-
-<h4>
-  支持资源
-</h4>
-
-<p>
-  在 M 开发者预览版中测试和开发时，您可使用以下支持资源：
-
-</p>
-
-<ul>
-  <li><a href="https://code.google.com/p/android-developer-preview/">M 开发者预览版问题跟踪器</a>是您的<strong>主要反馈渠道。</strong>
-
-您可通过问题跟踪器报告错误、性能问题和一般反馈。
-您还可检查<a href="https://code.google.com/p/android-developer-preview/wiki/KnownIssues">已知问题</a>并找出解决方法步骤。
-
-  </li>
-
-  <li><a href="http://g.co/dev/AndroidMDevPreview">Android M 开发者社区</a>是一家 Google+ 社区。在此社区中，您可<strong>与其他使用 Android M 的开发者建立联系</strong>。您可以共享观察结果或想法，或查找 Android M 问题的解决方法。
-
-
-
-  </li>
-</ul>
-
-
-<h2 id="preview_apis_and_publishing">
-  锁定目标、预览版 API 和发布
-</h2>
-
-<p>
-  Android M 开发者预览版是仅面向开发的版本，
-<strong>并不具有标准的 API 级别</strong>。如果您想选择拒绝通过兼容性行为测试您的应用（强烈推荐），则可将应用的 <code><a href=
-  "/guide/topics/manifest/uses-sdk-element.html">targetSdkVersion</a></code>
- 设置为 <code>“MNC”</code>，从而锁定 M 开发者预览版。
-
-
-</p>
-
-<p>
-  Android M 开发者预览版提供<strong>预览 API</strong> 功能
-&mdash; 在最终的 SDK 发布之前，这些 API 都不是正式的 API。目前，最终的 SDK 计划于 2015 年第三季度发布。
-这意味着一段时期内，特别是该计划的最初几周内，
-<strong>API 可能会出现细微变化</strong>。
-我们会通过 Android M 开发者预览版的每次更新，为您提供一份变更摘要。
-
-</p>
-
-<p class="note">
-  请注意，尽管预览版 API 可能会更改，但运行时权限和省电功能等基本系统行为仍保持稳定，可以立即用于测试。
-
-
-</p>
-
-<p>
-  关于发布，Google Play 会<strong>禁止发布面向 M 开发者预览版的应用</strong>。
-当 Android M 最终版本 SDK 可用时，您可以锁定官方 Android M API 级别，并将应用发布至 Google Play。
-
-与此同时，如果您需要将针对 Android M 的应用分发给测试者，则可通过电子邮件或从您的站点直接下载实现这一点。
-
-
-</p>
-
-<h2 id="get_started">
-  如何开始
-</h2>
-
-<p>
-  要开始测试应用，请执行以下操作：
-</p>
-
-<ol>
-  <li>查看 <a href="{@docRoot}preview/api-overview.html">API 概览</a>和<a href="{@docRoot}preview/behavior-changes.html">行为变更</a>，大致了解新功能及其如何影响您的应用。
-
-特别地，您需要了解新的<a href="{@docRoot}preview/features/runtime-permissions.html">运行时权限</a>模型、省电功能和自动备份。
-
-
-  </li>
-
-  <li>遵循有关<a href="{@docRoot}preview/setup-sdk.html">设置预览版 SDK</a> 和配置测试设备的说明，来设置您的环境。
-
-
-  </li>
-
-  <li>遵循<a href="https://developers.google.com/android/nexus/images">刷入说明</a>，刷入 Nexus 5、6、9 和 Player 的最新 M 开发者预览版系统映像。
-
-为开发设备刷入系统映像后，预览版更新将通过无线 (OTA) 更新进行交付。</a>
-
-  </li>
-
-  <li>下载 <a href="{@docRoot}preview/download.html#docs">M 预览版 API 参考资料</a>和 <a href="{@docRoot}preview/samples.html">M 预览版示例</a>，更深入地了解新 API 功能以及如何在应用中使用这些功能。
-
-
-
-  </li>
-
-  <li>加入 <a href="http://g.co/dev/AndroidMDevPreview">Android M 开发者社区</a>，获取最新资讯并与使用新平台的其他开发者建立联系。
-
-
-  </li>
-</ol>
-
-<p>
-  感谢您参加 Android M 开发者预览版计划！
-</p>
diff --git a/docs/html-intl/intl/zh-cn/preview/samples.jd b/docs/html-intl/intl/zh-cn/preview/samples.jd
deleted file mode 100644
index 9f16319..0000000
--- a/docs/html-intl/intl/zh-cn/preview/samples.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=示例
-page.image=images/cards/samples-new_2x.png
-@jd:body
-
-<p>
-  以下是 M 开发者预览版的代码示例。要在 Android Studio 中下载示例，请选择<b>文件 &gt; 导入示例</b>菜单选项。
-
-</p>
-
-<p class="note">
-  <strong>注：</strong>这些可下载的项目设计用于与 Gradle 和 Android Studio 结合使用。
-
-</p>
-
-
-<h3 id="RuntimePermissions">运行时权限</h3>
-
-<p>
- Android M 改变了系统权限运行的方式。系统会在运行时（而不是安装期间）要求用户批准权限请求。
-此示例显示了如何请求这些权限。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-RuntimePermissions">在 GitHub 中获取</a></p>
-
-<h3 id="ConfirmCredentials">确认凭据</h3>
-
-<p>
- 此示例演示了在您的应用中如何使用设备凭据作为身份验证方法。
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ConfirmCredential">在 GitHub 中获取</a>
-</p>
-
-<h3 id="FingerprintDialog">指纹对话框</h3>
-
-<p>
- 此示例演示了在您的应用中如何识别已注册的指纹以验证用户的身份。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-FingerprintDialog">在 GitHub 中获取</a></p>
-
-<h3 id="AutomaticBackup">自动备份应用</h3>
-
-<p>
- Android M 引入了自动备份应用设置功能。此示例演示如何向应用添加筛选规则，以管理设置备份。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-AutoBackupForApps">在 GitHub 中获取</a></p>
-
-<h3 id="CameraRaw">相机 2 RAW</h3>
-
-<p>
-  演示如何使用 <code>Camera2</code> API 捕获 RAW 相机缓冲区并将其另存为 <code>DNG</code> 文件。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-Camera2Raw">在 GitHub 中获取</a></p>
-
-<h3 id="ActiveNotification">活动通知</h3>
-
-<p>
-  此示例演示 <a href="{@docRoot}reference/android/app/NotificationManager.html"><code>NotificationManager</code></a>
- 如何让您了解应用当前显示的通知数量。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ActiveNotifications">在 GitHub 中获取</a></p>
diff --git a/docs/html-intl/intl/zh-cn/preview/setup-sdk.jd b/docs/html-intl/intl/zh-cn/preview/setup-sdk.jd
deleted file mode 100644
index e9910b4..0000000
--- a/docs/html-intl/intl/zh-cn/preview/setup-sdk.jd
+++ /dev/null
@@ -1,207 +0,0 @@
-page.title=设置预览版 SDK
-page.image=images/cards/card-set-up_16-9_2x.png
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文内容</h2>
-      <ol>
-        <li><a href="#get-as13">获取 Android Studio 1.3</a></li>
-        <li><a href="#get-sdk">获取预览版 SDK</a></li>
-        <li><a href="#create-update">创建或更新项目</a></li>
-        <li><a href="#setup-test">测试设置</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>M 开发者预览版 SDK 可通过 Android SDK 管理器获取。本文假定您熟悉 Android 应用开发的相关操作，例如：使用 Android SDK 管理器和创建项目。
-
-如果您是首次使用 Android，请先参阅<a href="{@docRoot}training/basics/firstapp/index.html">开发您的第一款应用</a>培训课程。</a>
-
-</p>
-
-<h2 id="get-as13">获取 Android Studio 1.3</h2>
-
-<p>开发者预览版与处于预览版状态的 Android Studio 1.3 结合使用时效果最佳。
-强烈建议您安装 Android Studio 1.3 的预览版本，以便与预览版 SDK 结合使用。
-</p>
-
-<p class="caution"><strong>注意：</strong>Android Studio 1.3 的 Canary 预览版仍处于活动的开发状态。
-如果您正使用主要开发机器测试开发者预览版，则可创建另一套 Android Studio 安装系统供测试使用。
-
-</p>
-
-<p>要安装 Android Studio 1.3 预览版，请执行以下操作：</p>
-
-<ol>
-  <li>下载并启动 <a href="{@docRoot}tools/studio/index.html">Android Studio</a>。
-
-  </li>
-
-  <li>打开<strong>设置</strong>窗口（在 Windows 中，您可通过选择<strong>文件 &gt; 设置</strong>执行此操作）。
-选择<strong>外观和行为 &gt; 系统设置 &gt; 更新</strong>面板。
-
-
-
-    <p class="aside">在 OSX 中，您可在 Android Studio 的<strong>首选项</strong>窗口中找到<strong>外观和行为</strong>面板。
-
-</p>
-  </li>
-
-  <li> 在<strong>更新</strong>面板中，选择选项<strong>自动检查更新:
-Canary 渠道</strong>。
-  </li>
-
-  <li>在<strong>更新</strong>面板中，选择<strong>立即检查</strong>，以检查最新的 Canary 内部版本。
-当系统出现提示时，请下载并安装该内部版本。
-
-  </li>
-</ol>
-
-<h2 id="get-sdk">获取预览版 SDK</h2>
-
-<p>要将预览版 SDK 组件添加到开发环境，请执行以下操作：</p>
-
-<ol>
-  <li>启动 Android Studio 1.3 预览版。
-  </li>
-
-  <li>打开<strong>设置</strong>窗口（在 Windows 中，您可通过选择<strong>文件 &gt; 设置</strong>执行此操作）。
-选择<strong>外观和行为 &gt; 系统设置 &gt; 更新</strong>面板。
-
-
-
-    <p class="aside">在 OSX 中，您可在 Android Studio 的<strong>首选项</strong>窗口中找到<strong>外观和行为</strong>面板。
-
-</p>
-  </li>
-
-  <li>在<strong>更新</strong>面板中，选择选项<strong>自动检查更新:
-Canary 渠道</strong>和<strong>自动检查 Android SDK 的更新:
-预览版渠道</strong>。
-  </li>
-
-  <li>启动 <strong>Android SDK 管理器</strong>。（对于 Android Studio 1.3，SDK 管理器已集成至 Android Studio，而不是独立应用。）
-
-
-  </li>
-
-  <li>在<strong>平台</strong>部分下，选择 <strong>Android MNC 预览版</strong>。
-
-  </li>
-
-  <li>在<strong>工具</strong>部分中，选择最新的 Android <strong>SDK 工具</strong>、<strong>平台工具</strong>和<strong>构建工具</strong>。
-
-
-  </li>
-
-  <li>点击<strong>安装软件包</strong>并接受所有软件包的许可协议。
-
-  </li>
-
-  <li>验证是否已安装 M 开发者预览版，具体方式如下：打开<strong>设置</strong>窗口并选择<strong>外观与行为 &gt; 系统设置 &gt; Android SDK</strong> 面板。
-
-</li>
-
-  <li>在 <strong>Android SDK</strong> 面板中，选择 <strong>SDK 平台</strong>选项卡。
-<strong>Android MNC 预览版</strong>应作为“已安装”列出<em></em>。
-另外，打开 <strong>SDK 工具</strong>选项卡，确认是否已安装最新工具。
-
-
-  </li>
-</ol>
-<p>完成上述步骤后，预览版组件即可用于您的开发环境。
- </p>
-
-
-<h2 id="create-update">创建或更新项目</h2>
-
-<p>
-  为使用预览版 API，您必须创建或更新一个使用预览版组件的开发项目。
-
-</p>
-
-
-<h3 id="create">创建新项目</h3>
-
-<p>
-  建议使用 Android Studio 创建一个使用该预览版的项目。按照<a href="{@docRoot}sdk/installing/create-project.html">创建项目</a>中所描述的步骤操作，直到转到项目向导中的“外形”<em></em>屏幕为止。
-
-然后执行下列步骤，创建为该预览版配置的项目。
-
-</p>
-
-<ul>
-  <li>选中<strong>手机和平板电脑</strong>。</li>
-  <li>选择 <strong>MNC:Android M (预览版)</strong>（在<strong>最低 SDK</strong> 中）。
-</li>
-</ul>
-
-
-<h3 id="update">更新现有项目</h3>
-
-<p>
-  对于现有项目，您必须修改项目配置以启用预览版 API。在开发环境中，打开模块的 <code>build.gradle</code> 文件，并按如下所示设置这些值：
-
-
-</p>
-
-<ul>
-  <li>将 <code>compileSdkVersion</code> 设置为 <code>'android-MNC'</code></li>
-  <li>将 <code>minSdkVersion</code> 设置为 <code>'MNC'</code></li>
-  <li>将 <code>targetSdkVersion</code> 设置为 <code>'MNC'</code></li>
-</ul>
-
-
-<h2 id="setup-test">测试设置</h2>
-
-<p>
-  要使用预览版测试应用，您必须拥有已配置平台预览版本的物理设备或虚拟设备。
-如果您拥有兼容设备，则可安装预览版平台进行测试。
-另外，您可以配置用于测试的虚拟设备。
-</p>
-
-<h3 id="setup-device">设置物理设备</h3>
-
-<p>
-  如果您拥有 Nexus 5、Nexus 6、Nexus 9 或 Android TV，则可在这些设备中安装预览版系统映像，来测试您的应用。通过使用 Android 虚拟设备管理器工具，您可从 Android Studio 内设置带有平台预览版本的虚拟设备。
-
-
-
-</p>
-
-<p class="caution">
-  <strong>重要说明：</strong>在设备中安装预览版映像会删除此设备中的所有数据，因此您应在安装预览版映像之前备份数据。<em></em>
-
-</p>
-
-<h3 id="setupAVD">设置虚拟设备</h3>
-
-<p>
-  通过使用 Android 虚拟设备管理器工具，您可从 Android Studio 内设置带有平台预览版本的虚拟设备。
-
-</p>
-
-<p>要使用 AVD 管理器创建 AVD，请执行以下操作：</p>
-
-<ol>
-  <li>在开发环境中安装预览版 SDK，如<a href="{@docRoot}preview/setup-sdk.html">设置预览版 SDK</a> 中所述。
-
-</li>
-  <li>按照<a href="{@docRoot}tools/devices/managing-avds.html">使用 AVD 管理器管理 AVD </a>中的步骤操作。
-
-使用以下设置：
-    <ul>
-      <li><strong>设备：</strong>Nexus 5、Nexus 6、Nexus 9 或 Android TV</li>
-      <li><strong>目标：</strong>
-       Android M（预览版）- API 级别 M</li>
-      <li><strong>ABI：</strong>x86</li>
-    </ul>
-  </li>
-</ol>
-
-<p>
-  如需了解有关创建测试用虚拟设备的详细信息，请参阅<a href="{@docRoot}tools/devices/index.html">管理虚拟设备</a>。
-</p>
diff --git a/docs/html-intl/intl/zh-cn/preview/testing/guide.jd b/docs/html-intl/intl/zh-cn/preview/testing/guide.jd
deleted file mode 100644
index 256d5bb..0000000
--- a/docs/html-intl/intl/zh-cn/preview/testing/guide.jd
+++ /dev/null
@@ -1,187 +0,0 @@
-page.title=测试指南
-page.image=images/cards/card-build_16x9_2x.png
-page.keywords=预览资源,androidm,测试,权限
-
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文内容</h2>
-      <ol>
-        <li><a href="#runtime-permissions">测试权限</a></li>
-        <li><a href="#doze-standby">测试瞌睡模式和应用待机模式</a></li>
-        <li><a href="#ids">自动备份和设备标识符</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  利用 Android M 开发者预览版，您有机会确保应用可使用下一平台版本。
-如 <a href="{@docRoot}preview/api-overview.html">API 概览</a>和<a href="{@docRoot}preview/behavior-changes.html">行为变更</a>中所述，该预览版包括大量 API 和可能影响应用的行为变更。
-
-使用预览版测试应用时，您应重点关注一些特定的系统变更，确保用户拥有愉悦的体验。
-
-
-</p>
-
-<p>
-  本指南介绍可使用您的应用测试预览版的哪些功能以及如何测试。您应确定优先测试以下特定预览版功能，因为它们可能会对应用行为产生较大影响。
-
-
-</p>
-
-<ul>
-  <li><a href="#runtime-permissions">权限</a>
-  </li>
-  <li><a href="#doze-standby">瞌睡模式和应用待机模式</a>
-  </li>
-  <li><a href="#ids">自动备份和设备标识符</a></li>
-</ul>
-
-<p>
-  如需了解有关如何使用预览版系统映像设置设备或虚拟设备以进行测试的详细信息，请参阅<a href="{@docRoot}preview/setup-sdk.html">设置预览版 SDK</a>。
-
-</p>
-
-
-<h2 id="runtime-permissions">测试权限</h2>
-
-<p>
-  新<a href="{@docRoot}preview/features/runtime-permissions.html">权限</a>模型改变了用户向您的应用分配权限的方式。
-您的应用必须在运行时要求用户提供各项权限，而不是在安装过程中要求授予所有权限。
-
-对于用户而言，此行为有助于他们更精细地控制每个应用的Activity，并更深入地了解应用为何请求提供特定权限的上下文信息。
-用户可以随时向应用授予某项权限或撤销其某项权限。
-预览版的这种功能最有可能会对应用行为产生影响，而且可能会阻止某些应用功能运行或只能在降级状态中运行。
-
-
-</p>
-
-<p class="caution">
-  这一变更会影响在新平台上运行的所有应用，即便这些应用并非面向新平台版本开发亦是如此。
-该平台为旧版应用提供有限的兼容性行为，但您现在应当开始计划将应用迁移到新权限模型，以便在官方平台启动时发布更新的应用版本。
-
-
-</p>
-
-
-<h3 id="permission-test-tips">测试提示</h3>
-
-<p>
-  使用以下测试提示有助于您计划并通过新权限行为执行应用测试。
-
-</p>
-
-<ul>
-  <li>识别应用的当前权限和相关的代码路径</li>
-  <li>跨受权限保护的服务和数据测试用户流程</li>
-  <li>使用授予/撤销权限的各种组合进行测试</li>
-  <li>使用 {@code adb} 工具从命令行管理权限：
-    <ul>
-      <li>按组列出权限和状态：
-        <pre>adb shell pm list permissions -d -g</pre>
-      </li>
-      <li>使用以下语法授予或撤销一项或多项权限：<br>
-        <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
-      </li>
-    </ul>
-  </li>
-  <li>针对使用权限的服务对应用进行分析</li>
-</ul>
-
-<h3 id="permission-test-strategy">测试策略</h3>
-
-<p>
-  权限更改会影响应用的结构和设计，以及您为用户提供的用户体验和流程。
-您应评估应用的当前权限使用情况并开始计划要提供的新流程。
-平台的正式版本提供兼容性行为，但您应计划更新应用，而不是依赖于这些行为。
-
-
-</p>
-
-<p>
-  确定应用实际需要和使用的权限，然后找出各种使用受权限保护的服务的代码路径。
-您可通过结合使用新平台测试和代码分析完成此操作。
-在测试中，您应通过将应用的 {@code targetSdkVersion} 更改为预览版，重点关注选择运行时权限。
-如需了解详细信息，请参阅<a href="{@docRoot}preview/setup-sdk.html#">设置预览版 SDK</a>。
-
-</p>
-
-<p>
-  使用已撤销和已添加权限的各种组合进行测试，突出显示依赖于权限的用户流程。
-如果依赖关系不明显或不符合逻辑，则您应考虑重构或划分该流程，以消除依赖关系或阐明需要权限的原因。
-
-
-</p>
-
-<p>
-  如需了解有关运行时权限行为、测试和最佳做法的详细信息，请参阅<a href="{@docRoot}preview/features/runtime-permissions.html">权限</a>开发者预览版页面。
-
-
-</p>
-
-
-<h2 id="doze-standby">测试瞌睡模式和应用待机模式</h2>
-
-<p>
-  当设备处于空闲状态或应用未聚焦时，瞌睡模式和应用待机模式的节能功能将限制应用可执行的后台处理工作量。
-系统可对应用实施的限制包括：限制或禁止访问网络、暂停后台任务、暂停通知、忽略唤醒请求和闹铃。
-
-要确保应用在完成这些节能优化后正常运行，您应通过模拟这些低功耗状态对应用进行测试。
-
-
-</p>
-
-<h4 id="doze">在瞌睡模式下测试您的应用</h4>
-
-<p>要在瞌睡模式下测试您的应用，请执行以下操作：</p>
-
-<ol>
-<li>使用 M 预览版系统映像配置硬件设备或虚拟设备</li>
-<li>将设备连接到开发计算机并安装应用</li>
-<li>运行应用并使其保持活动状态</li>
-<li>通过运行以下命令，模拟进入瞌睡模式的设备：
-
-<pre>
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-
-  </li>
-  <li>观察重新激活设备时的应用行为。确保应用在设备退出瞌睡模式时正常恢复
-</li>
-</ol>
-
-
-<h4 id="standby">在应用待机模式下测试您的应用</h4>
-
-<p>要在应用待机模式下测试您的应用，请执行以下操作：</p>
-
-<ol>
-  <li>使用 M 预览版系统映像配置硬件设备或虚拟设备</li>
-  <li>将设备连接到开发计算机并安装应用</li>
-  <li>运行应用并使其保持活动状态</li>
-  <li>通过运行以下命令，模拟进入待机模式的应用：
-
-<pre>
-$ adb shell am broadcast -a android.os.action.DISCHARGING
-$ adb shell am set-idle &lt;packageName&gt; true
-</pre>
-
-  </li>
-  <li>使用以下命令模拟如何唤醒应用：
-    <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
-  </li>
-  <li>观察唤醒后的应用行为。确保应用从待机模式中正常恢复。
-特别地，您应检查应用的通知和后台作业是否按预期继续运行
-</li>
-</ol>
-
-<h2 id="ids">自动备份应用和设备特定的标识符</h2>
-
-<p>如果应用坚持在内部存储中使用任何设备特定的标识符，如 Google 云消息传递注册 ID，请确保遵循最佳做法将存储位置从自动备份中排除，如<a href="{@docRoot}preview/backup/index.html">自动备份应用</a>中所述。
-
-
-
- </p>
diff --git a/docs/html-intl/intl/zh-cn/preview/testing/performance.jd b/docs/html-intl/intl/zh-cn/preview/testing/performance.jd
deleted file mode 100644
index 1f88854..0000000
--- a/docs/html-intl/intl/zh-cn/preview/testing/performance.jd
+++ /dev/null
@@ -1,656 +0,0 @@
-page.title=测试显示性能
-page.image=images/cards/card-test-performance_2x.png
-page.keywords=性能, fps, 工具
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文内容</h2>
-      <ol>
-        <li><a href="#measure">测量 UI 性能</a>
-          <ul>
-            <li><a href="#aggregate">聚合帧统计信息</a></li>
-            <li><a href="#timing-info">精确的帧时间信息</a></li>
-            <li><a href="#timing-dump">简单的帧时间转储</a></li>
-            <li><a href="#collection-window">控制统计信息收集的时段</a></li>
-            <li><a href="#diagnose">诊断性能回归</a></li>
-            <li><a href="#resources">其他资源</a></li>
-          </ul>
-        </li>
-        <li><a href="#automate">自动化 UI 性能测试</a>
-          <ul>
-            <li><a href="#ui-tests">设置 UI 测试</a></li>
-            <li><a href="#automated-tests">设置自动化 UI 测试</a></li>
-            <li><a href="#triage">分类并解决观察到的问题</a></li>
-          </ul>
-        </li>
-      </ol>
-  </div>
-</div>
-
-
-<p>
-  用户界面 (UI) 性能测试可确保您的应用不仅满足其功能要求，同时确保用户与应用之间的交互顺畅无比，能够以每秒连续 60 帧（<a href="https://www.youtube.com/watch?v=CaMTIgxCSqU&amp;index=25&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">为什么选择 60fps？</a>）的帧速运行，而不会出现任何帧丢失或延迟的现象，也就是我们通常所说的“卡顿”。<em></em>
-
-
-本文档介绍可用于测量 UI 性能的工具并提出一种将 UI 性能测量集成到测试实践中的方法。
-
-
-</p>
-
-
-<h2 id="measure">测量 UI 性能</h2>
-
-<p>
-  为了改善性能，您首先必须能够测量系统性能，然后诊断并识别可能来自管道各个部分的问题。
-
-
-</p>
-
-<p>
-  <a href="https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a> 是一种在设备上运行并转储感兴趣的系统服务状态信息的 Android 工具。<em></em>
-
-通过向 dumpsys 传递“gfxinfo”命令，可以提供 logcat 格式的输出，其中包含有关与录制阶段期间发生的动画帧相关的性能信息。
-
-<em></em>
-</p>
-
-<pre>
-&gt; adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt;
-</pre>
-
-<p>
-  此命令可以生成多个不同表达形式的帧时间数据。
-</p>
-
-<h3 id="aggregate">聚合帧统计信息</h3>
-
-<p>
-  借助 M 预览版，该命令可将在整个进程生命周期中收集的帧数据的聚合分析打印输出到 logcat。
-例如：
-</p>
-
-<pre class="noprettyprint">
-Stats since: 752958278148ns
-Total frames rendered: 82189
-Janky frames: 35335 (42.99%)
-90th percentile: 34ms
-95th percentile: 42ms
-99th percentile: 69ms
-Number Missed Vsync: 4706
-Number High input latency: 142
-Number Slow UI thread: 17270
-Number Slow bitmap uploads: 1542
-Number Slow draw: 23342
-</pre>
-
-<p>
-  这些高级统计信息可以较高水平地传达应用的呈现性能及其在多个帧之间的稳定性。
-
-</p>
-
-
-<h3 id="timing-info">精确的帧时间信息</h3>
-
-<p>
-  M 预览版附带提供了一个适用于 gfxinfo 的新命令，即：framestats，该命令根据最近的帧提供非常详细的帧时间信息，让您能够更准确地查出并调试问题。<em></em>
-
-
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats
-</pre>
-
-<p>
-  此命令根据应用生成的最后 120 帧，打印输出带有纳秒时间戳的帧时间信息。以下是来自 adb dumpsys gfxinfo &lt;软件包名称&gt; framestats 的原始输出示例：
-
-
-</p>
-
-<pre class="noprettyprint">
-0,49762224585003,49762241251670,9223372036854775807,0,49762257627204,49762257646058,49762257969704,49762258002100,49762265541631,49762273951162,49762300914808,49762303675954,
-0,49762445152142,49762445152142,9223372036854775807,0,49762446678818,49762446705589,49762447268818,49762447388037,49762453551527,49762457134131,49762474889027,49762476150120,
-0,49762462118845,49762462118845,9223372036854775807,0,49762462595381,49762462619287,49762462919964,49762462968454,49762476194547,49762476483454,49762480214964,49762480911527,
-0,49762479085548,49762479085548,9223372036854775807,0,49762480066370,49762480099339,49762481013089,49762481085850,49762482232152,49762482478350,49762485657620,49762486116683,
-</pre>
-
-<p>
-  每行输出均代表应用生成的一帧。每行都有固定的列数，用于描述帧生成管道的每个阶段所花的时间。
-下文将详细描述此格式，包括每列代表的具体内容。
-
-</p>
-
-
-<h4 id="fs-data-format">Framestats 数据格式</h4>
-
-<p>
-  由于数据块是 CSV 格式的输出，因此将其粘贴到所选的电子表格工具或使用脚本进行收集和解析非常简单。
-下表解释了输出数据列的格式。
-所有时间戳均以纳秒计。
-</p>
-
-<ul>
-  <li>标志
-    <ul>
-      <li>“标志”列带有“0”的行可以通过从 FRAME_COMPLETED 列中减去 INTENDED_VSYNC 列计算得出总帧时间。
-
-      </li>
-
-      <li>该列为非零值的行将被忽略，因为其对应的帧已被确定为偏离正常性能，其布局和绘制时间预计超过 16 毫秒。
-
-可能出现这种情况有如下几个原因：
-        <ul>
-          <li>窗口布局发生变化（例如，应用的第一帧或在旋转后）
-
-          </li>
-
-          <li>此外，如果帧的某些值包含无意义的时间戳，则也可能跳过该帧。
-例如，如果帧的运行速度超过 60fps，或者如果屏幕上的所有内容最终都准确无误，则可能跳过该帧，这不一定表示应用中存在问题。
-
-
-          </li>
-        </ul>
-      </li>
-    </ul>
-  </li>
-
-  <li>INTENDED_VSYNC
-    <ul>
-      <li>帧的预期起点。如果此值不同于 VSYNC，则表示 UI 线程中发生的工作使其无法及时响应垂直同步信号。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>VSYNC
-    <ul>
-      <li>所有垂直同步侦听器中使用的时间值和帧绘图（Choreographer 帧回调、动画、View.getDrawingTime() 等等）
-
-      </li>
-
-      <li>如需进一步了解 VSYNC 及其对应用产生的影响，请观看<a href="https://www.youtube.com/watch?v=1iaHxmfZGGc&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=23">了解 VSYNC</a> 视频。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>OLDEST_INPUT_EVENT
-    <ul>
-      <li>输入队列中最早输入事件的时间戳或 Long.MAX_VALUE（如果帧没有输入事件）。
-
-      </li>
-
-      <li>此值主要用于平台工作，对应用开发者的作用有限。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>NEWEST_INPUT_EVENT
-    <ul>
-      <li>输入队列中最新输入事件的时间戳或 0（如果帧没有输入事件）。
-
-      </li>
-
-      <li>此值主要用于平台工作，对应用开发者的作用有限。
-
-      </li>
-
-      <li>但是，可以通过查看 (FRAME_COMPLETED - NEWEST_INPUT_EVENT) 大致了解应用增加的延迟时间。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>HANDLE_INPUT_START
-    <ul>
-      <li>将输入事件分派给应用的时间戳。
-      </li>
-
-      <li>通过观察此时间戳与 ANIMATION_START 之间的时差，可以测量应用处理输入事件所花的时间。
-
-      </li>
-
-      <li>如果这个数字较高（&gt; 2 毫秒），则表明应用处理 View.onTouchEvent() 等输入事件所花的时间太长，这意味着此工作需要进行优化或转交给其他线程。
-
-请注意，有些情况下（例如，启动新Activity或类似活动的点击事件），这个数字较大是预料之中并且可以接受的。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>ANIMATION_START
-    <ul>
-      <li>在 Choreographer 中注册的动画运行的时间戳。
-      </li>
-
-      <li>通过观察此时间戳与 PERFORM_TRANVERSALS_START 之间的时差，可以确定评估正在运行的所有动画（ObjectAnimator、ViewPropertyAnimator 和通用转换）所需的时间。
-
-
-      </li>
-
-      <li>如果这个数字较高（&gt; 2 毫秒），请检查您的应用是否编写了任何自定义动画，或检查 ObjectAnimator 在对哪些字段设置动画并确保它们适用于动画。
-
-
-      </li>
-
-      <li>如需了解有关 Choreographer 的更多信息，请观看<a href="https://developers.google.com/events/io/sessions/325418001">利弊</a>视频。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>PERFORM_TRAVERSALS_START
-    <ul>
-      <li>如果您从此值中扣除 DRAW_START，则可推断出完成布局和测量阶段所需的时间（请注意，在滚动或动画期间，您会希望此时间接近于零）。
-
-
-      </li>
-
-      <li>如需了解有关呈现管道的测量和布局阶段的更多信息，请观看<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">失效、布局和性能</a>视频。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>DRAW_START
-    <ul>
-      <li>performTraversals 绘制阶段的开始时间。这是记录任何失效视图的显示列表的起点。
-
-      </li>
-
-      <li>此时间与 SYNC_START 之间的时差就是对树中的所有失效视图调用 View.draw() 所需的时间。
-
-      </li>
-
-      <li>如需了解有关绘图模型的详细信息，请参阅<a href="{@docRoot}guide/topics/graphics/hardware-accel.html#hardware-model">硬件加速</a>或<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">失效、布局和性能</a>视频。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>SYNC_START
-    <ul>
-      <li>绘制同步阶段的开始时间。
-      </li>
-
-      <li>如果此时间与 ISSUE_DRAW_COMMANDS_START 之间的时差较大（约 &gt; 0.4 毫秒），则通常表示绘制了大量必须上传到 GPU 的新位图。
-
-
-      </li>
-
-      <li>如需进一步了解同步阶段，请观看 <a href="https://www.youtube.com/watch?v=VzYkVL1n4M8&amp;index=24&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">GPU 呈现模式分析</a>视频。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>ISSUE_DRAW_COMMANDS_START
-    <ul>
-      <li>硬件呈现器开始向 GPU 发出绘图命令的时间。
-      </li>
-
-      <li>此时间与 FRAME_COMPLETED 之间的时差让您可以大致了解应用生成的 GPU 工作量。
-绘制过度或呈现效果不佳等问题都会在此显示出来。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>SWAP_BUFFERS
-    <ul>
-      <li>调用 eglSwapBuffers 的时间，此调用不属于平台工作，相对乏味。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>FRAME_COMPLETED
-    <ul>
-      <li>全部完成！处理此帧所花的总时间可以通过执行 FRAME_COMPLETED - INTENDED_VSYNC 计算得出。
-
-      </li>
-    </ul>
-  </li>
-
-</ul>
-
-<p>
-  您可以通过不同的方法使用此数据。一种简单却有用的可视化方式就是在不同的延迟时段中显示帧时间 (FRAME_COMPLETED - INTENDED_VSYNC) 分布的直方图（参见下图）。
-
-此图直观地表明，大部分帧非常有效，截止时间远低于 16 毫秒（显示为红色），但是少数帧明显超出了截止时间。
-
-我们可以观察此直方图中的变化趋势，了解所产生的整体变化或新异常值。
-此外，您还可以根据数据中的多个时间戳绘制表示输入延迟、布局所用时间或其他类似关注指标的图形。
-
-
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-framestats.png">
-
-
-<h3 id="timing-dump">简单的帧时间转储</h3>
-
-<p>
-  如果在“开发者选项”中将 <strong>GPU 呈现模式分析</strong>设置为<strong>在 adb shell dumpsys gfxinfo 中</strong>，则 <code>adb shell dumpsys gfxinfo</code> 命令会打印输出最近 120 帧的时间信息，这些信息分为几个不同的类别，其相应的值以制表符分隔。
-
-
-这些数据可以用于大致表明绘图管道的哪些部分可能速度较慢。
-
-</p>
-
-<p>
-  与上述 <a href="#fs-data-format">framestats</a> 类似，将其粘贴到所选的电子表格工具或使用脚本进行收集和解析同样非常简单。
-
-下图详细显示了应用生成的许多帧的具体时间分布。
-
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-frame-latency.png">
-
-<p>
-  运行 gfxinfo、复制输出、将其粘贴到电子表格应用并将数据绘制成堆积条形图的结果。
-
-</p>
-
-<p>
-  每个垂直条均代表一个动画帧；其高度代表计算该动画帧所需的毫秒数。
-垂直条的每个彩色分段均代表呈现管道的一个不同阶段，因此您可以看到应用的哪些部分可能会出现瓶颈。
-
-如需了解有关呈现管道的详细信息，请参阅<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;index=27&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">失效、布局和性能</a>视频。
-
-
-</p>
-
-
-<h3 id="collection-window">控制统计信息收集的时段</h3>
-
-<p>
-  Framestats 和简单的帧计时均可在极短的时间内（相当于约呈现 2 秒）收集数据。
-要精确控制此时间范围（例如，将数据限制于特定动画），您可以重置所有计数器并汇总收集的统计信息。
-
-
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; reset
-</pre>
-
-<p>
-  这也可以与转储命令结合使用来定期进行收集和重置，从而持续捕获时间范围不到 2 秒的帧。
-
-
-</p>
-
-
-<h3 id="diagnose">诊断性能回归</h3>
-
-<p>
-  要查出问题并保持应用运行状况良好，第一步最好是识别回归。
-但是，dumpsys 仅确定是否存在问题及其相对严重性。
-您仍需诊断性能问题的具体原因并找到适当的解决方法。
-为此，我们强烈建议您使用 <a href="{@docRoot}tools/help/systrace.html">systrace</a> 工具。
-
-</p>
-
-
-<h3 id="resources">其他资源</h3>
-
-<p>
-  如需了解有关 Android 呈现管道的工作原理、可能存在的常见问题以及如何解决这些问题的详细信息，以下其他资源可能对您有所帮助：
-
-
-</p>
-
-<ul>
-  <li>呈现性能 101
-  </li>
-  <li>为什么选择 60fps？
-  </li>
-  <li>Android UI 和 GPU
-  </li>
-  <li>失效、布局和性能
-  </li>
-  <li>使用 Systrace 分析 UI 性能
-  </li>
-</ul>
-
-
-<h2 id="automate">自动化 UI 性能测试</h2>
-
-<p>
-  UI 性能测试方法之一是让测试人员对目标应用执行一系列用户操作，并目视检查是否存在卡顿现象，或花费大量时间使用工具驱动型方法来查明是否存在卡顿现象。
-
-但是，这种人工方法充满风险：人为感知帧率变化的能力参差不齐，并且此过程又费时、繁琐且易于出错。
-
-
-</p>
-
-<p>
-  更为有效的方法是记录并分析自动化 UI 测试中的关键性能指标。
-Android M 开发者预览版包括新的日志记录功能。利用这些功能，您可以轻松确定应用动画中的卡顿数量和严重性，您还可以使用这些功能构建严格的流程，用于确定当前性能并跟踪未来的性能目标。
-
-
-
-</p>
-
-<p>
-  本文将向您介绍一种使用这些数据自动化性能测试的推荐方法。
-
-</p>
-
-<p>
-  此方法主要分为两个关键操作。首先，确定测试对象和测试方法；其次，设置和维护自动化测试环境。
-
-
-</p>
-
-
-<h3 id="ui-tests">设置 UI 测试</h3>
-
-<p>
-  在开始进行自动化测试之前，您必须做出一些较高层次的决策，以便准确了解测试空间和可能存在的需求。
-
-</p>
-
-<h4>
-  识别要测试的关键动画/流程
-</h4>
-
-<p>
-  请记住，流畅的动画中断时，用户对低劣性能的感触最深。
-因此，在识别要测试的 UI 操作类型时，集中精力处理用户最常见或对用户体验最为重要的关键动画非常有用。
-
-例如，以下是对识别有所帮助的一些常见场景：
-</p>
-
-<ul>
-  <li>滚动主要的 ListView 或 RecyclerView
-  </li>
-
-  <li>异步等待周期内的动画
-  </li>
-
-  <li>可能涉及位图加载/操纵的所有操作
-  </li>
-
-  <li>包括 Alpha 值混合处理在内的动画
-  </li>
-
-  <li>使用画布绘制的自定义视图
-  </li>
-</ul>
-
-<p>
-  与团队中的工程师、设计师和产品经理开展合作，优先处理测试覆盖范围内的这些关键产品动画。
-
-</p>
-
-<h4>
-  定义未来的目标并予以跟踪
-</h4>
-
-<p>
-  从较高层面来看，确定具体的性能目标、专注于编写测试并收集相关数据至关重要。
-例如：
-</p>
-
-<ul>
-  <li>您是否只是首次想要开始跟踪 UI 性能以了解详情？
-  </li>
-
-  <li>您是否想要防止未来可能引入的性能回归？
-  </li>
-
-  <li>您当前是否有 90% 的帧运行顺畅且希望在本季度达到 98%？
-  </li>
-
-  <li>您是否有 98% 的帧运行顺畅且不希望出现性能回归？
-  </li>
-
-  <li>提高低端设备上的性能是否为您的目标？
-  </li>
-</ul>
-
-<p>
-  在所有这些情况下，您都将需要进行历史跟踪，以显示多个应用版本中的性能。
-
-</p>
-
-<h4>
-  识别用于测试的设备
-</h4>
-
-<p>
-  应用性能因其所在设备而异。某些设备的内存可能更少，GPU 功能略弱或 CPU 芯片速度较慢。
-这意味着动画在一套硬件上表现良好，但在其他硬件上可能并非如此，而且可能因为其他管道部分中出现的瓶颈表现更为糟糕。
-
-因此，考虑到用户可能会看到的这种变化，请选取各种设备（包括当前的高端设备、低端设备、平板电脑等）来执行测试。
-
-找出 CPU 性能、RAM、屏幕密度、尺寸等方面的变化。
-在高端设备上顺利通过的测试在低端设备上可能会失败。
-
-</p>
-
-<h4>
-  基本的 UI 测试框架
-</h4>
-
-<p>
-  <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a> 和 <a href="{@docRoot}training/testing/ui-testing/espresso-testing.html">Espresso</a> 等测试套件是为了帮助自动化用户使用应用过程中的操作而构建。
-
-这些套件是模拟用户与您的设备进行交互的简单框架。
-要使用这些框架，您需要有效创建通过一组用户操作运行的独特脚本，并在设备中演示这些脚本。
-
-
-</p>
-
-<p>
-  通过结合这些自动化测试以及 <code>dumpsys gfxinfo</code>，您可以快速创建可再生成的系统，然后您可使用此系统执行测试并测量特定条件的性能信息。
-
-
-</p>
-
-
-<h3 id="automated-tests">设置自动化 UI 测试</h3>
-
-<p>
-  您能够执行 UI 测试并拥有从单一测试收集数据的管道后，下一个重要步骤就是采用可以在多种设备上多次执行该测试的框架，并汇总生成的性能数据，以供开发团队做进一步分析。
-
-
-
-</p>
-
-<h4>
-  测试自动化框架
-</h4>
-
-<p>
-  有一点值得注意，UI 测试框架（例如，<a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a>）直接在目标设备/模拟器上运行，
-而性能信息收集则是由主机通过 ADB 发送命令来驱动 dumpsys gfxinfo 完成的。<em></em>
-为帮助桥接这些单独实体的自动化，我们开发了 <a href="{@docRoot}tools/help/monkeyrunner_concepts.html">MonkeyRunner</a> 框架；这是一款在主机上运行的脚本编写系统，可以向一组连接设备发出命令并从中接收数据。
-
-
-
-</p>
-
-<p>
-  为正确自动化 UI 性能测试而构建一套脚本时，至少应当能够利用 monkeyRunner 完成以下任务：
-
-</p>
-
-<ul>
-  <li>向一个或多个目标设备或模拟器加载并启动所需的 APK。
-  </li>
-
-  <li>启动 UI Automator 的 UI 测试并允许执行该测试
-  </li>
-
-  <li>通过 dumpsys gfxinfo 收集性能信息。<em></em><em></em>
-  </li>
-
-  <li>汇总信息并以有效的方式重新向开发者显示。
-  </li>
-</ul>
-
-
-<h3 id="triage">分类并解决观察到的问题</h3>
-
-<p>
-  一旦确定问题模式或回归，下一步就是识别和应用修复。
-如果自动化测试框架保持帧的精确时间分解，则可帮助您审查最近的可疑代码/布局更改（出现回归时），或在切换到人工调查时缩小分析的系统范围。
-
-
-对于人工调查，<a href="{@docRoot}tools/help/systrace.html">systrace</a> 是一个很好的着手点，它可显示有关呈现管道的每个阶段、系统中的每个线程和核心以及您定义的任何自定义事件标记的精确时间信息。
-
-
-</p>
-
-<h4>
-  准确分析时间
-</h4>
-
-<p>
-  需要注意的是，获取和测量呈现性能所需的时间并非易事。
-就其本质而言，这些数字不具有确定性，往往会随系统状态、可用内存量、热节流以及太阳耀斑到达地面的最后时间而波动。
-
-问题在于，尽管同一测试可以运行两次，但获得的结果可能略有不同，它们彼此接近，却并不完全相同。
-
-
-</p>
-
-<p>
-  以这种方式准确收集和分析数据意味着多次运行同一测试，且以平均值或中值的形式累积结果（为了简单起见，我们将其称为“批处理”）。这可为您提供测试性能的粗略近似值，而无需确切的时间。
-
-
-
-</p>
-
-<p>
-  您可对代码更改前和更改后的应用均使用批处理，了解这些更改对性能产生的相对影响。
-如果更改前批处理的平均帧率大于更改后批处理的平均帧率，则此特定更改通常可为您带来全面的性能优势。
-
-
-</p>
-
-<p>
-  这意味着您执行的任何自动化 UI 测试均应考虑这一概念以及测试期间可能出现的任何异常。
-例如，如果应用性能因某些设备问题（不是由应用引起）骤降，则您可能需要重新运行批处理以便获得更精确的时间。
-
-
-
-</p>
-
-<p>
-  那么，在获得更有意义的测量结果之前，您应运行多少次测试？至少应运行 10 次，次数越多（例如 50 或 100 次）获得的结果更精确（当然，您现在是牺牲时间换取精确度）
-
-
-</p>
diff --git a/docs/html-intl/intl/zh-cn/sdk/index.jd b/docs/html-intl/intl/zh-cn/sdk/index.jd
new file mode 100644
index 0000000..4de6022
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/sdk/index.jd
@@ -0,0 +1,429 @@
+page.title=下载 Android Studio 和 SDK 工具
+page.tags=sdk, android studio
+page.template=sdk
+page.image=images/cards/android-studio_2x.png
+header.hide=1
+page.metaDescription=下载官方 Android IDE 和开发者工具，构建适用于 Android 手机、平板电脑、可穿戴设备、电视等设备的应用。
+
+@jd:body
+
+<style type="text/css">
+  .offline {display:none;}
+  h2.feature {
+    padding-top:30px;
+    margin-top:0;
+    clear:both;
+  }
+  .feature-blurb {
+  margin:0px; font-size:16px; font-weight:300;
+  padding-top:40px;
+  }
+
+  .landing-button .small {
+    font-size: 12px;
+    font-weight: normal;
+    line-height: 12px;
+    display: block;
+  }
+
+  h1.studio-logo {
+    width:226px;
+    height:78px;
+    display:block;
+    padding:0;
+    white-space: nowrap;
+    text-indent: -10000px;
+    font-size:0px;
+    background: url({@docRoot}images/tools/studio-logo.png);
+    background-image: -webkit-image-set(url({@docRoot}images/tools/studio-logo.png) 1x, url({@docRoot}images/tools/studio-logo_2x.png) 2x);
+    background-size: 226px 78px;
+  }
+
+</style>
+
+
+
+
+
+<div style="position:relative;">
+
+
+<div class="wrap" id="tos" style="display:none;width:inherit;height:650px">
+<div class="col-13" style="margin:0;">&nbsp;</div><!-- provides top margin for content -->
+
+<h1 id="tos-header" style="margin-top:0">下载</h1>
+
+<p class="sdk-terms-intro">在安装 Android Studio 或独立 SDK
+工具之前，您必须同意下列条款和条件。</p>
+
+<div class="sdk-terms" onfocus="this.blur()">
+<h2 class="norule">条款和条件</h2>
+本协议是 Android 软件开发工具包许可协议
+
+<h3>1. Introduction</h3>
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+
+<h3>2. Accepting this License Agreement</h3>
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
+
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
+
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+
+
+<h3>3. SDK License from Google</h3>
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
+
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
+
+3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
+
+
+<h3>4. Use of the SDK by You</h3>
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+
+<h3>5. Your Developer Credentials</h3>
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+
+<h3>6. Privacy and Information</h3>
+6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy.
+
+
+<h3>7. Third Party Applications</h3>
+7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
+
+
+<h3>8. Using Android APIs</h3>
+8.1 Google Data APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+
+<h3>9. Terminating this License Agreement</h3>
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
+(B) Google is required to do so by law; or
+(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
+(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
+
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+
+
+<h3>10. DISCLAIMER OF WARRANTIES</h3>
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+
+<h3>11. LIMITATION OF LIABILITY</h3>
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+
+<h3>12. Indemnification</h3>
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
+
+
+<h3>13. Changes to the License Agreement</h3>
+13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available.
+
+
+<h3>14. General Legal Terms</h3>
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+
+<em>November 20, 2015</em>
+</div>
+
+
+
+
+
+<div id="next-steps" style="display:none;position:absolute;width:inherit">
+  <p>您距离构建 Android 应用只有几步之遥！</p>
+  <p>系统很快就会将您重定向到
+<a id="next-link" href="{@docRoot}sdk/installing/index.html">安装 Android SDK</a>。</p>
+
+</div><!-- end next-steps -->
+
+
+
+<div id="sdk-terms-form">
+<p>
+<input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+<label id="agreeLabel" for="agree">我已阅读并同意上述条款和条件</label>
+</p>
+<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+</div>
+
+
+</div><!-- end TOS -->
+
+
+
+
+
+
+<div id="landing">
+
+<div class="col-13">&nbsp;</div><!-- provides top margin for content -->
+
+<img src="{@docRoot}images/tools/studio-hero.png" srcset="{@docRoot}images/tools/studio-hero_2x.png 2x, {@docRoot}images/tools/studio-hero.png 1x" width="760" height="400"/>
+
+<div style="color: #fff; width:226px; height:0; overflow:visible; position:absolute; top:40px; left:25px">
+
+<h1 class="studio-logo" style="margin:0 0 35px !important">Android Studio</h1>
+
+<p style="font-size: 16px; color:#bbb; position: absolute;left: 297px; top: 5px; display: block;
+width: 400px;text-align: center;">官方 Android IDE</p>
+
+<ul style="font-size:12px;line-height:19px;">
+<li>Android Studio IDE</li>
+<li>Android SDK 工具</li>
+<li>Android 6.0 (Marshmallow) 平台</li>
+<li>Android 6.0 模拟器系统映像（附带 Google API）</li>
+</ul>
+
+<a class="online landing-button green download-bundle-button"
+href="#Other" >Download Android Studio<br/><span class='small'></span></a>
+
+<!-- this appears when viewing the offline docs -->
+<p class="offline">
+如需获得 Android Studio 或独立 SDK 工具，请访问 <a href="http://developer.android.com/sdk/index.html">developer.android.com/sdk/</a>
+</p>
+</div>
+
+<ul>
+  <li><a href="#Requirements">系统要求</a></li>
+  <li><a href="#Other">其他下载选项</a></li>
+  <li><a href="{@docRoot}sdk/installing/migrate.html">迁移至 Android Studio</a></li>
+  <li><a href="https://docs.google.com/a/google.com/forms/d/1mjsyfzv3HAnDY-_Kfj-3QJKdpuksyMFs9e73CRwmT6Q/viewform" target="_blank">参加调查</a></li>
+</ul>
+
+
+
+
+<h2 class="feature norule" >智能代码编辑器</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-code.png" srcset="{@docRoot}images/tools/studio-hero-code_2x.png 2x, {@docRoot}images/tools/studio-hero-code.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android Studio 的核心是一个智能代码编辑器，可进行高级代码完成、重构和代码分析。
+</p>
+  <p>这款功能强大的代码编辑器可帮助您成为更高产的 Android 应用开发者。</p>
+</div>
+
+
+
+
+
+<h2 class="feature norule">代码模板和 GitHub 集成</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-import.png" srcset="{@docRoot}images/tools/studio-hero-import_2x.png 2x, {@docRoot}images/tools/studio-hero-import.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>新项目向导让开始一个新项目变得前所未有的简单。</p>
+
+  <p>可使用适用于不同模式（如抽屉式导航栏和视图分页器）的模板代码开始项目，甚至可以从 GitHub
+导入 Google 代码示例。</p>
+</div>
+
+
+
+
+<h2 class="feature norule">多屏幕应用开发</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-screens.png" srcset="{@docRoot}images/tools/studio-hero-screens_2x.png 2x, {@docRoot}images/tools/studio-hero-screens.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>构建适用于 Android 手机、平板电脑、Android Wear、Android TV、Android Auto
+以及 Google Glass 的应用。</p>
+  <p>Android Studio 内全新的 Android
+项目视图和模块支持让应用项目和资源管理变得更加轻松。
+</div>
+
+
+
+
+<h2 class="feature norule">用于模拟所有形状和尺寸的虚拟设备</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-avds.png" srcset="{@docRoot}images/tools/studio-hero-avds_2x.png 2x, {@docRoot}images/tools/studio-hero-avds.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android Studio 预先配置了经过优化的模拟器映像。</p>
+  <p>经过更新和精简的虚拟设备管理器可为常见 Android
+设备提供预定义设备配置文件。</p>
+</div>
+
+
+
+
+<h2 class="feature norule">
+Android 版本借助 Gradle 演进</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-gradle.png" srcset="{@docRoot}images/tools/studio-hero-gradle_2x.png 2x, {@docRoot}images/tools/studio-hero-gradle.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>使用同一项目为您的 Android 应用创建多个具有不同功能的 APK。</p>
+  <p>使用 Maven 管理应用依赖项。</p>
+  <p>使用 Android Studio 或命令行构建 APK。</p>
+</div>
+
+
+
+
+<h2 class="feature norule">有关 Android Studio 的详细信息</h2>
+<div style="background:#424242;padding:30px; color:#fff;margin:0 0 15px;">
+
+<a class="online landing-button green download-bundle-button" style="margin:0 0 40px 60px;float:right" href="">Download</a>
+
+  <ul>
+  <li>这款由 JetBrains 推出并广受欢迎的 Java IDE 以 IntelliJ IDEA Community Edition 为基础构建</li>
+  <li>基于 Gradle 的灵活构建系统</li>
+  <li>构建变体和多 APK 生成</li>
+  <li>为 Google 服务和各种设备类型提供扩展模板支持</li>
+  <li>支持主题编辑的富布局编辑器</li>
+  <li>可捕捉性能、可用性、版本兼容性以及其他问题的 Lint 工具</li>
+  <li>ProGuard 和应用签名功能</li>
+  <li>内置对 Google 云平台的支持，可轻松集成 Google Cloud
+  Messaging 和应用引擎</li>
+  </ul>
+
+<p style="margin:0">
+有关 Android Studio
+所提供功能的更多详细信息，请阅读 <a href="{@docRoot}tools/studio/index.html">Android Studio 基础知识</a>指南。</p>
+</div>
+
+
+<p>如果您一直在使用附带 ADT 的 Eclipse，请注意 Android Studio 现已成为 Android
+的官方 IDE，因此您应迁移至 Android Studio，以获得所有最新的 IDE
+更新。如果在迁移项目时需要帮助，请参阅<a href="{@docRoot}sdk/installing/migrate.html">迁移至
+Android
+Studio</a>。</p>
+
+
+
+
+
+
+
+<h2 id="Requirements">系统要求</h2>
+
+<h3>Windows</h3>
+
+<ul>
+<li>Microsoft&reg; Windows&reg; 8/7/Vista/2003（32 位或 64 位）</li>
+<li>最低：2GB RAM，推荐：4GB RAM</li>
+<li>400MB 硬盘空间</li>
+<li>Android SDK、模拟器系统映像及缓存至少需要 1GB 空间</li>
+<li>最低屏幕分辨率：1280 x 800</li>
+<li>Java 开发工具包 (JDK) 7 </li>
+<li>用于加速模拟器的选件：支持 Intel® VT-x、Intel® EM64T (Intel® 64) 和禁止执行
+(XD) 位功能的 Intel® 处理器</li>
+</ul>
+
+
+<h3>Mac OS X</h3>
+
+<ul>
+<li>Mac&reg; OS X&reg; 10.8.5 或更高版本，直至 10.9 (Mavericks)</li>
+<li>最低：2GB RAM，推荐：4GB RAM</li>
+<li>400MB 硬盘空间</li>
+<li>Android SDK、模拟器系统映像及缓存至少需要 1GB 空间</li>
+<li>最低屏幕分辨率：1280 x 800</li>
+<li>Java 运行组件环境 (JRE) 6</li>
+<li>Java 开发工具包 (JDK) 7</li>
+<li>用于加速模拟器的选件：支持 Intel® VT-x、Intel® EM64T (Intel® 64)
+和禁止执行 (XD) 位功能的 Intel® 处理器</li>
+</ul>
+
+<p>在 Mac OS 上运行附带 Java 运行组件环境 (JRE) 6 的 Android Studio
+可优化字体渲染。您随后可将您的项目配置为使用 Java 开发工具包 (JDK) 6 或 JDK 7。</p>
+
+
+
+<h3>Linux</h3>
+
+<ul>
+<li>GNU 网络对象模型环境或 KDE 桌面</li>
+<li>GNU C Library (glibc) 2.15 或更高版本</li>
+<li>最低：2GB RAM，推荐：4GB RAM</li>
+<li>400MB 硬盘空间</li>
+<li>Android SDK、模拟器系统映像及缓存至少需要 1GB 空间</li>
+<li>最低屏幕分辨率：1280 x 800</li>
+<li>Oracle&reg; Java 开发工具包 (JDK) 7 </li>
+</ul>
+<p>已在
+Ubuntu&reg; 14.04 (Trusty Tahr)（能够运行 32 位应用的 64 位分发）上进行了测试。</p>
+
+
+
+
+<h2 id="Other" style="clear:left">其他下载选项</h2>
+
+<!-- alternative SDK options follows -->
diff --git a/docs/html-intl/intl/zh-cn/sdk/installing/adding-packages.jd b/docs/html-intl/intl/zh-cn/sdk/installing/adding-packages.jd
new file mode 100644
index 0000000..4d5d7ec
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/sdk/installing/adding-packages.jd
@@ -0,0 +1,226 @@
+page.title=添加 SDK 软件包
+
+page.tags=sdk 管理器
+
+@jd:body
+
+<style>
+ol.large {
+  margin-left:0;
+}
+ol.large > li {
+  list-style-position: inside;
+  list-style-type:none;
+  margin:30px 0 0 0;
+  padding:30px 20px;
+  background:#eee;
+}
+ol.large > li:nth-child(odd) {
+}
+ol.large > li:before {
+  display:inline;
+  left:-40px;
+  float:left;
+  width:20px;
+  font-size:20px;
+  line-height:20px;
+}
+ol.large > li > h2 {
+  font-size:20px;
+  line-height:20px;
+  padding:0 0 0 20px;
+  margin:0 0 20px 0;
+  display:inline;
+  font-weight:normal;
+}
+ol.large > li:nth-child(1):before {
+  content:"1. ";
+}
+ol.large > li:nth-child(2):before {
+  content:"2. ";
+}
+ol.large > li:nth-child(3):before {
+  content:"3. ";
+}
+ol.large > li:nth-child(4):before {
+  content:"4. ";
+}
+ol.large > li:nth-child(5):before {
+  content:"5. ";
+}
+ol.large > li:nth-child(6):before {
+  content:"6. ";
+}
+</style>
+
+
+<p>
+默认情况下，Android SDK
+并不包括您着手开发所需的一切内容。SDK
+将工具、平台和其他组件分成若干个软件包，您可以通过
+<a href="{@docRoot}tools/help/sdk-manager.html">Android SDK 管理器</a>根据需要下载这些软件包。因此您需要先为 Android SDK
+添加几个软件包，然后才能着手开发。</p>
+
+<p>要添加软件包，请先通过下列方式之一启动 Android SDK 管理器：</p>
+<ul>
+  <li>在 Android Studio 中，点击工具栏中的 <strong>SDK 管理器</strong>
+<img src="{@docRoot}images/tools/sdk-manager-studio.png" style="vertical-align:bottom;margin:0;height:17px" />。</li>
+  <li>如果您未使用 Android Studio：
+    <ul>
+      <li>Windows：双击 Android
+ SDK 根目录中的 <code>SDK Manager.exe</code> 文件。</li>
+      <li>Mac/Linux：打开一个终端，导航到 Android SDK 安装
+位置的 <code>tools/</code> 目录，然后执行 <code>android sdk</code>。</li>
+    </ul>
+  </li>
+</ul>
+
+<p>当您首次打开 SDK
+管理器时，有几个软件包默认处于选定状态。保持它们的选定状态，但务必按照下列步骤获得着手开发所需的一切内容：
+</p>
+
+
+<ol class="large">
+<li>
+  <h2 id="GetTools" class="norule">获得最新的 SDK 工具</h2>
+
+<img src="/images/sdk_manager_packages.png" alt="" width="350" style="float:right;margin-left:20px" />
+
+  <p>在安装 Android SDK 时，
+您至少应下载最新工具和 Android 平台：</p>
+  <ol>
+   <li>打开 Tools 目录并选择：
+     <ul>
+       <li><strong>Android SDK Tools</strong></li>
+       <li><strong>Android SDK Platform-tools</strong></li>
+       <li><strong>Android SDK Build-tools</strong>（最高版本）</li>
+     </ul>
+   </li>
+   <li>打开第一个 Android X.X 文件夹（最新版本）并选择：
+     <ul>
+      <li><strong>SDK Platform</strong></li>
+      <li>模拟器系统映像，例如 <br>
+      <strong>ARM EABI v7a System Image</strong></li>
+     </ul>
+   </li>
+  </ol>
+</li>
+
+<li>
+  <h2 id="GetSupportLib" class="norule">获得其他 API 的支持库</h2>
+
+  <div class="sidebox">
+    <p>以下项目需要支持库：</p>
+    <ul>
+      <li><a href="{@docRoot}wear/index.html">Android Wear</a></li>
+      <li><a href="{@docRoot}tv/index.html">Android TV</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+    </ul>
+
+    <p>它还提供了以下受欢迎的 API：</p>
+    <ul>
+      <li><a href="{@docRoot}reference/android/support/v4/widget/DrawerLayout.html">Navigation
+      drawer</a></li>
+      <li><a href="{@docRoot}reference/android/support/v4/view/ViewPager.html">Swipe views</a></li>
+      <li><a href="{@docRoot}reference/android/support/v7/app/ActionBar.html">Backward-compatible
+      action bar</a></li>
+    </ul>
+  </div>
+
+  <p><a href="{@docRoot}tools/support-library/features.html">Android 支持库</a>提供了一组丰富的 API，可兼容大多数版本的 Android。
+</p>
+
+  <p>打开 <strong>Extras</strong> 目录并选择：</p>
+     <ul>
+       <li><strong>Android Support Repository</strong></li>
+       <li><strong>Android Support Library</strong></li>
+     </ul>
+
+  <p>&nbsp;</p>
+  <p>&nbsp;</p>
+
+</li>
+
+
+<li>
+  <h2 id="GetGoogle" class="norule">为更多 API 获得 Google Play 服务</h2>
+
+  <div class="sidebox">
+
+    <p>Google Play services API 为您的 Android
+ 应用提供了各种功能和服务，例如：</p>
+    <ul>
+      <li><a href="{@docRoot}google/play-services/plus.html">用户身份验证</a></li>
+      <li><a href="{@docRoot}google/play-services/maps.html">Google 地图</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+      <li><a href="{@docRoot}google/play-services/games.html">游戏成就和
+排行榜</a></li>
+      <li><a href="{@docRoot}google/play-services/index.html">更多其他功能</a></li>
+    </ul>
+  </div>
+
+  <p>要使用 Google API 进行开发，您需要 Google Play 服务包：</p>
+  <p>打开 <strong>Extras</strong> 目录并选择：</p>
+     <ul>
+       <li><strong>Google Repository</strong></li>
+       <li><strong>Google Play services</strong></li>
+     </ul>
+
+  <p class="note"><strong>注：</strong>并非所有采用
+ Android 技术的设备上都提供 Google Play Services API，但所有安装了 Google Play 商店的设备均提供这些 API。要在 Android 模拟器中使用这些
+ API，您还必须安装 SDK 管理器中最新 Android X.X 目录内的 <strong>Google APIs</strong>
+ 系统映像。</p>
+</li>
+
+
+<li>
+  <h2 id="Install" class="norule">安装软件包</h2>
+  <p>选择想要安装的所有软件包后，即可继续执行安装：</p>
+  <ol>
+   <li>点击 <strong>Install X packages</strong>。</li>
+   <li>在下一个窗口中，双击左侧的每个软件包名称，
+以接受各软件包的许可协议。</li>
+   <li>点击 <strong>Install</strong>。</li>
+  </ol>
+  <p>SDK 管理器窗口底部显示下载进度。
+  <strong>切勿退出 SDK 管理器</strong>，否则它会取消下载。</p>
+</li>
+
+<li>
+  <h2 id="Build" class="norule">赶快着手开发吧！</h2>
+
+<p>现在您的 Android SDK 已包含上述软件包，您随时可以着手开发
+ Android 应用。当新工具以及其他 API 推出时，只需启动 SDK 管理器
+，为您的 SDK 下载新软件包。</p>
+
+<p>以下几个方案可为您的开发工作提供指导：</p>
+
+<div class="cols" style="padding:10px 0">
+<div class="col-4">
+<h3>入门指南</h3>
+<p>如果您是第一次开发 Android
+应用，请按照<strong><a href="{@docRoot}training/basics/firstapp/index.html">开发您的第一款应用</a></strong>指南了解 Android 应用的基础知识。</p>
+
+</div>
+<div class="col-4 box">
+<h3>开发穿戴式设备应用</h3>
+<p>如果您已准备好着手开发 Android
+穿戴式设备应用，请参阅<strong><a href="{@docRoot}wear/preview/start.html">开发 Android Wear 应用</a></strong>。</p>
+
+</div>
+<div class="col-4 box">
+<h3>使用 Google API</h3>
+<p>要开始使用 Google API，例如 Google Maps API 或 Google
+Play Game Services
+API，请参阅<strong><a href="{@docRoot}google/play-services/setup.html">设置 Google Play
+服务</a></strong>指南。</p>
+
+</div>
+</div><!-- end cols -->
+
+
+</li>
+
+</ol>
+
+
diff --git a/docs/html-intl/intl/zh-cn/training/material/animations.jd b/docs/html-intl/intl/zh-cn/training/material/animations.jd
new file mode 100644
index 0000000..75e5bad
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/material/animations.jd
@@ -0,0 +1,550 @@
+page.title=定义定制动画
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+  <li><a href="#Touch">定制触摸反馈</a></li>
+  <li><a href="#Reveal">使用揭露效果</a></li>
+  <li><a href="#Transitions">定制操作行为转换</a></li>
+  <li><a href="#ViewState">为视图状态改变添加动画</a></li>
+  <li><a href="#AnimVector">为矢量图片添加动画</a></li>
+</ol>
+<h2>您也应该阅读</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料设计规范</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 材料设计</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>材料设计中的动画将为用户提供操作反馈并在用户与您的应用进行互动时提供视觉连续性。
+材料主题将为按钮与操作行为转换提供一些默认动画，而 Android 5.0（API 级别 21）及更高版本可让您定制这些动画，同时也可创建新动画：
+
+</p>
+
+<ul>
+<li>触摸反馈</li>
+<li>循环揭露</li>
+<li>操作行为转换</li>
+<li>曲线运动</li>
+<li>视图状态改变</li>
+</ul>
+
+
+<h2 id="Touch">定制触摸反馈</h2>
+
+<p>材料设计中的触摸反馈可在用户与 UI 元素互动时，在接触点上提供即时视觉确认。
+适用于按钮的默认触摸动画使用全新 {@link android.graphics.drawable.RippleDrawable} 类别，以波纹效果实现不同状态间的转换。
+
+</p>
+
+<p>在大多数情况下，您应以下列方式指定视图背景，在您的视图 XML 中应用此功能：
+</p>
+
+<ul>
+<li><code>?android:attr/selectableItemBackground</code> 指定有界的波纹。</li>
+<li><code>?android:attr/selectableItemBackgroundBorderless</code> 指定越过视图边界的波纹。
+它将由一个非空背景的视图的最近父项所绘制和设定边界。
+</li>
+</ul>
+
+<p class="note"><strong>注意：</strong><code>selectableItemBackgroundBorderless</code> 是 API 级别 21 中推出的新属性。
+</p>
+
+
+<p>此外，您可利用 <code>ripple</code> 元素将 {@link android.graphics.drawable.RippleDrawable}
+定义为一个 XML 资源。</p>
+
+<p>您可以为 {@link android.graphics.drawable.RippleDrawable} 对象指定一种颜色。如果要改变默认触摸反馈颜色，请使用主题的 <code>android:colorControlHighlight</code>
+属性。
+</p>
+
+<p>如果要了解更多信息，请参阅 {@link
+android.graphics.drawable.RippleDrawable} 类别的 API 参考文档。</p>
+
+
+<h2 id="Reveal">使用揭露效果</h2>
+
+<p>当您显示或隐藏一组 UI
+元素时，揭露动画可为用户提供视觉连续性。{@link android.view.ViewAnimationUtils#createCircularReveal
+ViewAnimationUtils.createCircularReveal()} 方法让您能够为裁剪区域添加动画以揭露或隐藏视图。
+</p>
+
+<p>如果要使用此效果揭露之前不可见的视图：</p>
+
+<pre>
+// previously invisible view
+View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the final radius for the clipping circle
+int finalRadius = Math.max(myView.getWidth(), myView.getHeight());
+
+// create the animator for this view (the start radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius);
+
+// make the view visible and start the animation
+myView.setVisibility(View.VISIBLE);
+anim.start();
+</pre>
+
+<p>如果要使用此效果隐藏之前可见的视图：</p>
+
+<pre>
+// previously visible view
+final View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the initial radius for the clipping circle
+int initialRadius = myView.getWidth();
+
+// create the animation (the final radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, initialRadius, 0);
+
+// make the view invisible when the animation is done
+anim.addListener(new AnimatorListenerAdapter() {
+    &#64;Override
+    public void onAnimationEnd(Animator animation) {
+        super.onAnimationEnd(animation);
+        myView.setVisibility(View.INVISIBLE);
+    }
+});
+
+// start the animation
+anim.start();
+</pre>
+
+
+<h2 id="Transitions">定制操作行为转换</h2>
+
+<!-- shared transition video -->
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay="">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.webm">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.ogv">
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <p class="img-caption" style="margin-top:3px;margin-bottom:10px"><strong>图 1</strong> - 拥有共享元素的转换。
+</p>
+    <em>如果要重新播放影片，请点击设备屏幕</em>
+  </div>
+</div>
+
+<p>材料设计应用中的操作行为转换透过通用元素之间的移动和转换提供不同状态之间的视觉连接。
+您可为进入、退出转换以及操作行为之间的共享元素转换指定定制动画。
+</p>
+
+<ul>
+<li><strong>进入</strong>转换将决定操作行为中视图如何进入场景。例如，在<em>分解</em>进入转换中，视图将从屏幕外进入场景并飞往屏幕中心。
+
+</li>
+
+<li><strong>退出</strong>转换将决定操作行为中应用行为的显示视图如何退出场景。例如，在<em>分解</em>退出转换中，视图将从屏幕中心退出场景。
+
+</li>
+
+<li><strong>共享元素</strong>转换将决定两个操作行为转换之间共享的视图如何在这些操作行为中转换。
+例如，如果两个操作行为拥有相同的图像，但其位置与大小不同，<em>changeImageTransform</em> 共享元素转换将在这些操作行为之间平滑地转换与缩放图像。
+
+</li>
+</ul>
+
+<p>Android 5.0（API 级别 21）支持这些进入与退出转换：</p>
+
+<ul>
+<li><em>分解</em> - 从场景中心移入或移出视图。</li>
+<li><em>滑动</em> - 从场景边缘移入或移出视图。</li>
+<li><em>淡入淡出</em> - 通过调整透明度在场景中增添或移除视图。</li>
+</ul>
+
+<p>任何扩展 {@link android.transition.Visibility} 类别的转换均将获得进入或退出转换支持。
+如果要了解更多信息，请参阅
+{@link android.transition.Transition} 类别的 API 参考文档。</p>
+
+<p>Android 5.0（API 级别 21）也支持这些共享元素转换：</p>
+
+<ul>
+<li><em>changeBounds</em> - 为目标视图的布局边界的变化添加动画。</li>
+<li><em>changeClipBounds</em> - 为目标视图的裁剪边界的变化添加动画。</li>
+<li><em>changeTransform</em> - 为目标视图的缩放与旋转变化添加动画。</li>
+<li><em>changeImageTransform</em> - 为目标图像的大小与缩放变化添加动画。</li>
+</ul>
+
+<p>当您在您的应用中启用操作行为转换，默认的交叉淡入淡出转换将在进入与退出操作行为之间激活。
+</p>
+
+<img src="{@docRoot}training/material/images/SceneTransition.png" alt="" width="600" height="405" style="margin-top:20px" />
+<p class="img-caption">
+  <strong>图 2</strong> - 拥有一个共享元素的场景转换。
+</p>
+
+<h3>指定定制转换</h3>
+
+<p>首先，在定义您从材料主题继承的风格时，使用 <code>android:windowContentTransitions</code>
+属性启用窗口内容转换。您也可在您的风格定义中指定进入、退出以及共享元素转换：
+</p>
+
+<pre>
+&lt;style name="BaseAppTheme" parent="android:Theme.Material">
+  &lt;!-- enable window content transitions -->
+  &lt;item name="android:windowContentTransitions">true&lt;/item>
+
+  &lt;!-- specify enter and exit transitions -->
+  &lt;item name="android:windowEnterTransition">@transition/explode&lt;/item>
+  &lt;item name="android:windowExitTransition">@transition/explode&lt;/item>
+
+  &lt;!-- specify shared element transitions -->
+  &lt;item name="android:windowSharedElementEnterTransition">
+    &#64;transition/change_image_transform&lt;/item>
+  &lt;item name="android:windowSharedElementExitTransition">
+    &#64;transition/change_image_transform&lt;/item>
+&lt;/style>
+</pre>
+
+<p>此示例中的 <code>change_image_transform</code> 转换定义如下：</p>
+
+<pre>
+&lt;!-- res/transition/change_image_transform.xml -->
+&lt;!-- (see also Shared Transitions below) -->
+&lt;transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;changeImageTransform/>
+&lt;/transitionSet>
+</pre>
+
+<p><code>changeImageTransform</code> 元素与
+{@link android.transition.ChangeImageTransform} 类别相对应。如果要了解更多信息，请参阅 {@link android.transition.Transition} 的 API
+参考。</p>
+
+<p>如果要在您的代码中启用窗口内容转换，请调用
+{@link android.view.Window#requestFeature Window.requestFeature()} 方法：</p>
+
+<pre>
+// inside your activity (if you did not enable transitions in your theme)
+getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+
+// set an exit transition
+getWindow().setExitTransition(new Explode());
+</pre>
+
+<p>如果要在您的代码中指定转换，请以 {@link
+android.transition.Transition} 对象调用这些方法：</p>
+
+<ul>
+  <li>{@link android.view.Window#setEnterTransition Window.setEnterTransition()}</li>
+  <li>{@link android.view.Window#setExitTransition Window.setExitTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementEnterTransition
+      Window.setSharedElementEnterTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementExitTransition
+      Window.setSharedElementExitTransition()}</li>
+</ul>
+
+<p>{@link android.view.Window#setExitTransition setExitTransition()} 和 {@link
+android.view.Window#setSharedElementExitTransition setSharedElementExitTransition()} 方法定义正在调用的操作行为的退出转换。
+{@link android.view.Window#setEnterTransition
+setEnterTransition()} 与 {@link android.view.Window#setSharedElementEnterTransition
+setSharedElementEnterTransition()} 方法定义被调用的操作行为的进入转换。</p>
+
+<p>如果要取得转换的完整效果，您必须在正在调用以及被调用的操作行为上启用窗口内容转换。
+否则，正在调用的操作行为将开始退出转换，但是您将会看到窗口转换（例如缩放或淡入淡出）。
+</p>
+
+<p>如果要尽快开始进入转换，请针对被调用的操作行为使用
+{@link android.view.Window#setAllowEnterTransitionOverlap Window.setAllowEnterTransitionOverlap()}
+方法。这可以让您实现更生动的进入转换。</p>
+
+<h3>使用转换启动一个操作行为</h3>
+
+<p>如果您启用转换并且为一个操作行为设置退出转换，那么在您启动另一个操作行为时，转换将以下列方式激活：
+</p>
+
+<pre>
+startActivity(intent,
+              ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
+</pre>
+
+<p>如果您已为第二个操作行为设置进入转换，则转换也将会在操作行为启动时激活。
+如果要在您启动另一个操作行为时禁用转换，请提供
+<code>null</code> 选项包。</p>
+
+<h3>以共享元素启动一个操作行为</h3>
+
+<p>如果要在两个拥有共享元素的操作行为之间安排屏幕转换动画：</p>
+
+<ol>
+<li>请在您的主题中启用窗口内容转换。</li>
+<li>在您的风格中指定一个共享元素转换。</li>
+<li>将您的转换定义为 XML 资源。</li>
+<li>利用
+<code>android:transitionName</code> 属性对两个布局中的共享元素指定一个通用名称。</li>
+<li>使用 {@link android.app.ActivityOptions#makeSceneTransitionAnimation
+ActivityOptions.makeSceneTransitionAnimation()} 方法。</li>
+</ol>
+
+<pre>
+// get the element that receives the click event
+final View imgContainerView = findViewById(R.id.img_container);
+
+// get the common element for the transition in this activity
+final View androidRobotView = findViewById(R.id.image_small);
+
+// define a click listener
+imgContainerView.setOnClickListener(new View.OnClickListener() {
+    &#64;Override
+    public void onClick(View view) {
+        Intent intent = new Intent(this, Activity2.class);
+        // create the transition animation - the images in the layouts
+        // of both activities are defined with android:transitionName="robot"
+        ActivityOptions options = ActivityOptions
+            .makeSceneTransitionAnimation(this, androidRobotView, "robot");
+        // start the new activity
+        startActivity(intent, options.toBundle());
+    }
+});
+</pre>
+
+<p>对于在您的代码中生成的共享动态视图，请使用
+{@link android.view.View#setTransitionName View.setTransitionName()} 方法在两个操作行为中指定一个通用元素名称。
+</p>
+
+<p>如果要在完成第二项操作行为时反转场景转换动画，请调用
+{@link android.app.Activity#finishAfterTransition Activity.finishAfterTransition()}
+方法而非 {@link android.app.Activity#finish Activity.finish()}。</p>
+
+<h3>以多个共享元素启动一个操作行为</h3>
+
+<p>如果要在两个拥有多个共享元素的操作行为之间安排场景转换动画，请以 <code>android:transitionName</code>
+属性（或在两个操作行为中使用 {@link android.view.View#setTransitionName View.setTransitionName()} 方法）定义共享元素，并以下列方式创建一个 {@link android.app.ActivityOptions} 对象：
+
+</p>
+
+<pre>
+ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(this,
+        Pair.create(view1, "agreedName1"),
+        Pair.create(view2, "agreedName2"));
+</pre>
+
+
+<h2 id="CurvedMotion">使用曲线运动</h2>
+
+<p>材料设计中的动画利用曲线实现时间内插与空间移动模式。
+利用 Android 5.0（API 级别 21）及更高版本，您可为动画定义定制时间曲线以及曲线运动模式。
+</p>
+
+<p>{@link android.view.animation.PathInterpolator} 类别是一个基于贝塞尔曲线或 {@link android.graphics.Path} 对象的全新插入器。
+此插入器在一个 1x1 的正方形内指定一个运动曲线，定位点位于 (0,0) 以及 (1,1)，而控制点则使用构造函数参数指定。
+
+您也可以将路径插入器定义为一个 XML 资源：</p>
+
+<pre>
+&lt;pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
+    android:controlX1="0.4"
+    android:controlY1="0"
+    android:controlX2="1"
+    android:controlY2="1"/>
+</pre>
+
+<p>系统将为材料设计规范中的三种基本曲线提供 XML 资源：
+</p>
+
+<ul>
+  <li><code>&#64;interpolator/fast_out_linear_in.xml</code></li>
+  <li><code>&#64;interpolator/fast_out_slow_in.xml</code></li>
+  <li><code>&#64;interpolator/linear_out_slow_in.xml</code></li>
+</ul>
+
+<p>您可以将一个 {@link android.view.animation.PathInterpolator} 对象传递给 {@link
+android.animation.Animator#setInterpolator Animator.setInterpolator()} 方法。</p>
+
+<p>{@link android.animation.ObjectAnimator} 类别拥有新的构造函数，可让您一次使用两个或更多属性在路径上为坐标添加动画。
+例如，下列动画使用 {@link android.graphics.Path} 对象为视图的 X 和 Y 属性添加动画：
+</p>
+
+<pre>
+ObjectAnimator mAnimator;
+mAnimator = ObjectAnimator.ofFloat(view, View.X, View.Y, path);
+...
+mAnimator.start();
+</pre>
+
+
+<h2 id="ViewState">为视图状态改变添加动画</h2>
+
+<p>{@link android.animation.StateListAnimator} 类别让您能够定义视图状态改变时运行的动画。
+下列示例显示如何将 {@link
+android.animation.StateListAnimator} 定义为一个 XML 资源：</p>
+
+<pre>
+&lt;!-- animate the translationZ property of a view when pressed -->
+&lt;selector xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;item android:state_pressed="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="@android:integer/config_shortAnimTime"
+        android:valueTo="2dp"
+        android:valueType="floatType"/>
+        &lt;!-- you could have other objectAnimator elements
+             here for "x" and "y", or other properties -->
+    &lt;/set>
+  &lt;/item>
+  &lt;item android:state_enabled="true"
+    android:state_pressed="false"
+    android:state_focused="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="100"
+        android:valueTo="0"
+        android:valueType="floatType"/>
+    &lt;/set>
+  &lt;/item>
+&lt;/selector>
+</pre>
+
+<p>如果要将定制视图状态动画附加至一个视图，请依照此示例使用 XML 资源文件中的
+<code>selector</code> 元素定义一个动画，并使用 <code>android:stateListAnimator</code> 属性将此动画分配给您的视图。
+如果要将一个状态列表动画分配给您的代码内的一个视图，请使用 {@link android.animation.AnimatorInflater#loadStateListAnimator
+AnimationInflater.loadStateListAnimator()} 方法，并以
+{@link android.view.View#setStateListAnimator View.setStateListAnimator()} 方法将动画分配给您的视图。
+</p>
+
+<p>当您的主题扩展材料主题时，在默认情况下按钮将拥有一个 Z 动画。如果要避免您的按钮出现这类行为，请将 <code>android:stateListAnimator</code> 属性设置为
+<code>@null</code>。
+</p>
+
+<p>{@link android.graphics.drawable.AnimatedStateListDrawable} 类别让您能够创建图片，显示相关视图之间的状态变化。
+Android 5.0 中的某些系统小组件在默认情况下使用这些动画。
+下列示例显示如何将 {@link android.graphics.drawable.AnimatedStateListDrawable} 定义为一个 XML 资源：
+</p>
+
+<pre>
+&lt;!-- res/drawable/myanimstatedrawable.xml -->
+&lt;animated-selector
+    xmlns:android="http://schemas.android.com/apk/res/android">
+
+    &lt;!-- provide a different drawable for each state-->
+    &lt;item android:id="@+id/pressed" android:drawable="@drawable/drawableP"
+        android:state_pressed="true"/>
+    &lt;item android:id="@+id/focused" android:drawable="@drawable/drawableF"
+        android:state_focused="true"/>
+    &lt;item android:id="@id/default"
+        android:drawable="@drawable/drawableD"/>
+
+    &lt;!-- specify a transition -->
+    &lt;transition android:fromId="@+id/default" android:toId="@+id/pressed">
+        &lt;animation-list>
+            &lt;item android:duration="15" android:drawable="@drawable/dt1"/>
+            &lt;item android:duration="15" android:drawable="@drawable/dt2"/>
+            ...
+        &lt;/animation-list>
+    &lt;/transition>
+    ...
+&lt;/animated-selector>
+</pre>
+
+
+<h2 id="AnimVector">为矢量图片添加动画</h2>
+
+<p><a href="{@docRoot}training/material/drawables.html#VectorDrawables">矢量图片</a>可在不丢失定义的情况下缩放。
+{@link android.graphics.drawable.AnimatedVectorDrawable}
+类别可让您为矢量图片的属性添加动画。</p>
+
+<p>您通常可以在 3 个 XML 文件中定义添加动画的矢量图片：</p>
+
+<ul>
+<li>在
+<code>res/drawable/</code> 中拥有 <code>&lt;vector&gt;</code> 元素的矢量图片</li>
+<li>在
+<code>res/drawable/</code> 中拥有 <code>&lt;animated-vector&gt;</code> 元素且已添加动画的矢量图片</li>
+<li>在
+<code>res/anim/</code> 中拥有 <code>&lt;objectAnimator&gt;</code> 元素的一个或多个对象动画</li>
+</ul>
+
+<p>添加动画的矢量图片可为 <code>&lt;group&gt;</code> 以及
+<code>&lt;path&gt;</code> 元素的属性添加动画。<code>&lt;group&gt;</code> 元素定义路径集或子组，而 <code>&lt;path&gt;</code> 元素则定义将绘制的路径。
+</p>
+
+<p>当您定义一个您想要添加动画的矢量图片时，请使用 <code>android:name</code>
+属性给这些群组和路径指定一个唯一名称，以便让您能够从您的动画定义中引用这些群组或路径。
+例如：</p>
+
+<pre>
+&lt;!-- res/drawable/vectordrawable.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="64dp"
+    android:width="64dp"
+    android:viewportHeight="600"
+    android:viewportWidth="600">
+    &lt;group
+        <strong>android:name="rotationGroup"</strong>
+        android:pivotX="300.0"
+        android:pivotY="300.0"
+        android:rotation="45.0" >
+        &lt;path
+            <strong>android:name="v"</strong>
+            android:fillColor="#000000"
+            android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
+    &lt;/group>
+&lt;/vector>
+</pre>
+
+<p>已添加动画的矢量图片定义按名称引用矢量图片内的群组和路径：
+</p>
+
+<pre>
+&lt;!-- res/drawable/animvectordrawable.xml -->
+&lt;animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+  android:drawable="@drawable/vectordrawable" >
+    &lt;target
+        android:name="rotationGroup"
+        android:animation="@anim/rotation" />
+    &lt;target
+        android:name="v"
+        android:animation="@anim/path_morph" />
+&lt;/animated-vector>
+</pre>
+
+<p>动画定义代表着 {@link android.animation.ObjectAnimator} 或 {@link
+android.animation.AnimatorSet} 对象。此示例中的第一个动画将目标群组旋转 360 度：
+</p>
+
+<pre>
+&lt;!-- res/anim/rotation.xml -->
+&lt;objectAnimator
+    android:duration="6000"
+    android:propertyName="rotation"
+    android:valueFrom="0"
+    android:valueTo="360" />
+</pre>
+
+<p>此示例中的第二个动画对矢量图片的路径进行变形。
+两个路径均需可兼容变形操作：两个路径均需拥有相同数量的指令，而且每个指令均需拥有相同数量的参数。
+</p>
+
+<pre>
+&lt;!-- res/anim/path_morph.xml -->
+&lt;set xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;objectAnimator
+        android:duration="3000"
+        android:propertyName="pathData"
+        android:valueFrom="M300,70 l 0,-70 70,70 0,0   -70,70z"
+        android:valueTo="M300,70 l 0,-70 70,0  0,140 -70,0 z"
+        android:valueType="pathType" />
+&lt;/set>
+</pre>
+
+<p>如果要了解更多信息，请参阅 {@link
+android.graphics.drawable.AnimatedVectorDrawable} 的 API 参考文档。</p>
diff --git a/docs/html-intl/intl/zh-cn/training/material/compatibility.jd b/docs/html-intl/intl/zh-cn/training/material/compatibility.jd
new file mode 100644
index 0000000..aa23d4b
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/material/compatibility.jd
@@ -0,0 +1,168 @@
+page.title=维护兼容性
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+  <li><a href="#Theme">定义备用样式</a></li>
+  <li><a href="#Layouts">提供备用布局</a></li>
+  <li><a href="#SupportLib">使用支持内容库</a></li>
+  <li><a href="#CheckVersion">检查系统版本</a></li>
+</ol>
+<h2>您也应该阅读</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料设计规范</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 材料设计</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>有些材料设计功能（例如材料主题和定制操作行为转换）仅在 Android 5.0（API 级别 21）及更高版本中提供。
+不过，您可为您的应用进行设计，使应用在支持材料设计的设备上运行时可使用这些功能，且同时能够与运行早期版本 Android 的设备兼容。
+
+</p>
+
+
+<h2 id="Theme">定义备用样式</h2>
+
+<p>您可对您的应用进行配置，使应用能够在支持它的设备上使用材料主题，并且能够在运行早期版本 Android 的设备上还原至早期版本的主题：
+</p>
+
+<ol>
+<li>定义一个从
+<code>res/values/styles.xml</code> 中的早期版本主题（例如 Holo）继承的主题。</li>
+<li>定义一个从
+<code>res/values-v21/styles.xml</code> 中的材料主题继承且拥有相同名称的主题。</li>
+<li>在清单文件中将此主题设置为您的应用主题。</li>
+</ol>
+
+<p class="note"><strong>注意</strong>：如果您的应用使用材料主题，但没有以这方式提供备用主题，您的应用将无法在 Android 5.0 之前的 Android 版本上运行。
+
+
+</p>
+
+
+<h2 id="Layouts">提供备用布局</h2>
+
+<p>如果您根据材料设计指导方针设计的布局没有使用 Android 5.0（API 级别 21）所推出的新 XML 属性，这些布局将能够在早期版本的 Android 上运行。
+
+或者，您也可以提供备用布局。您也可以提供备用布局以定制应用在早期版本的 Android 上的呈现方式。
+</p>
+
+<p>您可在 <code>res/layout-v21/</code> 内创建用于 Android 5.0（API 级别 21）的布局文件，同时也可在 <code>res/layout/</code> 内创建用于早期版本 Android 的备用布局文件。例如，<code>res/layout/my_activity.xml</code> 是
+<code>res/layout-v21/my_activity.xml</code> 的备用布局。
+
+</p>
+
+<p>为避免代码重复，请在 <code>res/values/</code> 内定义您的风格，在 <code>res/values-v21/</code> 内为新 API 修改风格，以及使用风格继承（即：在 <code>res/values/</code> 内定义基础风格，然后在 <code>res/values-v21/</code> 内继承这些风格）。
+
+</p>
+
+
+<h2 id="SupportLib">使用支持内容库</h2>
+
+<p><a href="{@docRoot}tools/support-library/features.html#v7">v7 支持内容库</a>
+r21 及更高版本包括下列材料设计功能：</p>
+
+<ul>
+<li>应用其中一个 <code>Theme.AppCompat</code> 主题时可取得适用于一些系统小组件的<a href="{@docRoot}training/material/theme.html">材料设计风格</a>。
+</li>
+<li><code>Theme.AppCompat</code> 主题中拥有<a href="{@docRoot}training/material/theme.html#ColorPalette">配色工具主题属性</a>。
+</li>
+<li><a href="{@docRoot}training/material/lists-cards.html#RecyclerView">显示数据集合</a>的 {@link android.support.v7.widget.RecyclerView} 小组件。
+</li>
+<li><a href="{@docRoot}training/material/lists-cards.html#CardView">创建卡片</a>的 {@link android.support.v7.widget.CardView} 小组件。</li>
+<li><a href="{@docRoot}training/material/drawables.html#ColorExtract">从图像萃取突出颜色</a>的 {@link android.support.v7.graphics.Palette} 类别。
+</li>
+</ul>
+
+<h3>系统小组件</h3>
+
+<p><code>Theme.AppCompat</code> 主题可为这些小组件提供材料设计风格：</p>
+
+<ul>
+  <li>{@link android.widget.EditText}</li>
+  <li>{@link android.widget.Spinner}</li>
+  <li>{@link android.widget.CheckBox}</li>
+  <li>{@link android.widget.RadioButton}</li>
+  <li>{@link android.support.v7.widget.SwitchCompat}</li>
+  <li>{@link android.widget.CheckedTextView}</li>
+</ul>
+
+<h3>配色工具</h3>
+
+<p>如果要利用 Android v7 支持内容库取得材料设计风格以及定制配色工具，请应用其中一个 <code>Theme.AppCompat</code> 主题：
+</p>
+
+<pre>
+&lt;!-- extend one of the Theme.AppCompat themes -->
+&lt;style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
+    &lt;!-- customize the color palette -->
+    &lt;item name="colorPrimary">@color/material_blue_500&lt;/item>
+    &lt;item name="colorPrimaryDark">@color/material_blue_700&lt;/item>
+    &lt;item name="colorAccent">@color/material_green_A200&lt;/item>
+&lt;/style>
+</pre>
+
+<h3>列表和卡片</h3>
+
+<p>{@link android.support.v7.widget.RecyclerView} 以及 {@link
+android.support.v7.widget.CardView} 小组件可通过 Android v7 支持内容库提供给早期版本 Android，但有如下限制：
+</p>
+<ul>
+<li>{@link android.support.v7.widget.CardView} 使用额外边距返回编程阴影实现。
+</li>
+<li>{@link android.support.v7.widget.CardView} 不会裁剪其与圆角相交的子视图。
+</li>
+</ul>
+
+
+<h3>依赖项</h3>
+
+<p>如果要在 Android 5.0（API 级别 21）之前的 Android 版本中使用这些功能，请将
+Android v7 支持内容库作为 <a href="{@docRoot}/sdk/installing/studio-build.html#dependencies">Gradle 依赖项</a>包括在您的项目中：</p>
+
+<pre>
+dependencies {
+    compile 'com.android.support:appcompat-v7:21.0.+'
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
+
+
+<h2 id="CheckVersion">检查系统版本</h2>
+
+<p>下列功能仅在 Android 5.0（API 级别 21）及更高版本中提供：</p>
+
+<ul>
+<li>操作行为转换</li>
+<li>触摸反馈</li>
+<li>揭露动画</li>
+<li>基于路径的动画</li>
+<li>矢量图片</li>
+<li>图片着色</li>
+</ul>
+
+<p>如果要保留与早期版本 Android 的兼容性，请您在运行时检查系统 {@link
+android.os.Build.VERSION#SDK_INT version}，然后再为下列的任何一个功能调用 API：
+</p>
+
+<pre>
+// Check if we're running on Android 5.0 or higher
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+    // Call some material design APIs here
+} else {
+    // Implement this feature without material design
+}
+</pre>
+
+<p class="note"><strong>注意：</strong>如果要指定您的应用所支持的 Android 版本，请使用您的清单文件中的 <code>android:minSdkVersion</code> 以及 <code>android:targetSdkVersion</code>
+属性。
+如果要在 Android 5.0 内使用材料设计功能，请将 <code>android:targetSdkVersion</code> 属性设置为 <code>21</code>。
+如果要了解更多信息，请参阅
+<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt; API
+指南</a>。</p>
diff --git a/docs/html-intl/intl/zh-cn/training/material/drawables.jd b/docs/html-intl/intl/zh-cn/training/material/drawables.jd
new file mode 100644
index 0000000..8a65431
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/material/drawables.jd
@@ -0,0 +1,126 @@
+page.title=使用图片
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+  <li><a href="#DrawableTint">为图片资源着色</a></li>
+  <li><a href="#ColorExtract">从图像萃取突出颜色</a></li>
+  <li><a href="#VectorDrawables">创建矢量图片</a></li>
+</ol>
+<h2>您也应该阅读</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料设计规范</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 材料设计</a></li>
+</ul>
+</div>
+</div>
+
+<p>下列适用于图片的功能将协助您在您的应用中实现材料设计：</p>
+
+<ul>
+<li>图片着色</li>
+<li>突出颜色萃取</li>
+<li>矢量图片</li>
+</ul>
+
+<p>本课程将向您展示如何在您的应用中使用这些功能。</p>
+
+
+<h2 id="DrawableTint">为图片资源着色</h2>
+
+<p>利用 Android 5.0（API 级别 21）及更高版本，您可为位图以及定义为 Alpha 蒙版的点九图着色。
+您可使用颜色资源或分解为颜色资源（例如 <code>?android:attr/colorPrimary</code>）的主题属性为其着色。
+通常，您只有一次机会创建这些资产并自动为其上色以符合您的主题。
+</p>
+
+<p>您可利用 {@code setTint()} 方法为 {@link android.graphics.drawable.BitmapDrawable} 或 {@link
+android.graphics.drawable.NinePatchDrawable} 对象着色。您也可以利用 <code>android:tint</code> 以及
+<code>android:tintMode</code> 属性设置您的布局中的着色颜色和模式。
+</p>
+
+
+<h2 id="ColorExtract">从图像萃取突出颜色</h2>
+
+<p>Android 支持内容库 r21 及更高版本包括 {@link
+android.support.v7.graphics.Palette} 类别，可让您从图像萃取突出颜色。此类别将萃取下列突出颜色：
+</p>
+
+<ul>
+<li>鲜艳</li>
+<li>鲜艳深色</li>
+<li>鲜艳浅色</li>
+<li>低调</li>
+<li>低调深色</li>
+<li>低调浅色</li>
+</ul>
+
+<p>如果要萃取这些颜色，请将 {@link android.graphics.Bitmap} 对象传递给位于您上载图像的背景线程的
+{@link android.support.v7.graphics.Palette#generate Palette.generate()} 静态方法。
+如果您无法使用此线程，请调用
+{@link android.support.v7.graphics.Palette#generateAsync Palette.generateAsync()} 方法并提供一个侦听程序。
+</p>
+
+<p>您可使用
+<code>Palette</code> 类别（例如 <code>Palette.getVibrantColor</code>）中的 getter 方法从图像检索突出颜色。</p>
+
+<p>如果要在项目中使用 {@link android.support.v7.graphics.Palette} 类别，请将下列
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Gradle 依赖项</a>添加至您的应用模块：
+</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:palette-v7:21.0.0'
+}
+</pre>
+
+<p>如果要了解更多信息，请参阅{@link android.support.v7.graphics.Palette}
+类别的 API 参考文档。</p>
+
+
+<h2 id="VectorDrawables">创建矢量图片</h2>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=wlFVIIstKmA" style="margin-top:18px">
+<div>
+    <h3>视频</h3>
+    <p>Android 矢量图形</p>
+</div>
+</a>
+
+<p>在 Android 5.0（API 级别 21）及更高版本中，您可定义矢量图片，而且图片可在不损失清晰度的情况下缩放。
+您只需一个资产文件即可创建一个矢量图像，而位图图像则需要为每个屏幕密度提供一个资产文件。
+如果要创建一个矢量图像，请您在 <code>&lt;vector&gt;</code> XML 元素中定义形状的详情。
+</p>
+
+<p>下列示例以心形定义一个矢量图像：</p>
+
+<pre>
+&lt;!-- res/drawable/heart.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    &lt;!-- intrinsic size of the drawable -->
+    android:height="256dp"
+    android:width="256dp"
+    &lt;!-- size of the virtual canvas -->
+    android:viewportWidth="32"
+    android:viewportHeight="32">
+
+  &lt;!-- draw a path -->
+  &lt;path android:fillColor="#8fff"
+      android:pathData="M20.5,9.5
+                        c-1.955,0,-3.83,1.268,-4.5,3
+                        c-0.67,-1.732,-2.547,-3,-4.5,-3
+                        C8.957,9.5,7,11.432,7,14
+                        c0,3.53,3.793,6.257,9,11.5
+                        c5.207,-5.242,9,-7.97,9,-11.5
+                        C25,11.432,23.043,9.5,20.5,9.5z" />
+&lt;/vector>
+</pre>
+
+<p>矢量图像在 Android 中以 {@link android.graphics.drawable.VectorDrawable}
+对象表示。如果要了解更多有关 <code>pathData</code> 语法的信息，请参阅 <a href="http://www.w3.org/TR/SVG11/paths.html#PathData">SVG 路径参考</a>。如果要了解更多有关为矢量图片属性添加动画的信息，请参阅<a href="{@docRoot}training/material/animations.html#AnimVector">为矢量图片添加动画</a>。
+
+</p>
diff --git a/docs/html-intl/intl/zh-cn/training/material/get-started.jd b/docs/html-intl/intl/zh-cn/training/material/get-started.jd
new file mode 100644
index 0000000..16db97b
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/material/get-started.jd
@@ -0,0 +1,171 @@
+page.title=入门指南
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+  <li><a href="#ApplyTheme">使用材料主题</a></li>
+  <li><a href="#Layouts">设计布局</a></li>
+  <li><a href="#Depth">指定您视图内的高度</a></li>
+  <li><a href="#ListsCards">创建列表与卡片</a></li>
+  <li><a href="#Animations">定制您的动画</a></li>
+</ol>
+<h2>您也应该阅读</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料设计规范</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 材料设计</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>如果要使用材料设计创建应用：</p>
+
+<ol>
+  <li style="margin-bottom:10px">
+    请查阅<a href="http://www.google.com/design/spec">材料设计规范</a>。</li>
+  <li style="margin-bottom:10px">
+    在您的应用中使用材料<strong>主题</strong>。</li>
+  <li style="margin-bottom:10px">
+    遵循材料设计指导方针创建您的<strong>布局</strong>。</li>
+  <li style="margin-bottom:10px">
+    指定您视图要投射阴影的<strong>高度</strong>。</li>
+  <li style="margin-bottom:10px">
+    使用系统<strong>小组件</strong>呈现列表与卡片。</li>
+  <li style="margin-bottom:10px">
+    定制您的应用中的<strong>动画</strong>。</li>
+</ol>
+
+<h3>保持后向兼容性</h3>
+
+<p>您可将多个材料设计功能添加至您的应用，同时保持与 Android 5.0 之前的 Android 版本的兼容性。
+如果要了解更多信息，请参阅
+<a href="{@docRoot}training/material/compatibility.html">保持兼容性</a>。</p>
+
+<h3>使用材料设计更新您的应用</h3>
+
+<p>如果要更新现有应用以纳入材料设计，请遵循材料设计指导方针更新您的布局。
+同时也须确保纳入深度、触摸反馈和动画。
+</p>
+
+<h3>使用材料设计创建新应用</h3>
+
+<p>如果您要使用材料设计功能创建新应用，<a href="http://www.google.com/design/spec">材料设计指导方针</a>将为您提供一个紧密结合的设计框架。
+请遵循这些指导方针并使用 Android
+框架中的新功能来设计与开发您的应用。</p>
+
+
+<h2 id="ApplyTheme">使用材料主题</h2>
+
+<p>如果要在您的应用中使用材料主题，请指定一个从
+<code>android:Theme.Material</code> 继承的风格：</p>
+
+<pre>
+&lt;!-- res/values/styles.xml -->
+&lt;resources>
+  &lt;!-- your theme inherits from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- theme customizations -->
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<p>材料主题提供更新的系统小组件，让您能够为触摸反馈以及操作行为转换设置配色工具以及默认动画。
+有关更多详情，请参阅<a href="{@docRoot}training/material/theme.html">使用材料主题</a>。
+</p>
+
+
+<h2 id="Layouts">设计布局</h2>
+
+<p>除了应用及定制材料主题，您的布局同时也应符合<a href="http://www.google.com/design/spec">材料设计指导方针</a>。
+设计布局时，请特别注意下列几点：
+</p>
+
+<ul>
+<li>基线格点</li>
+<li>关键线</li>
+<li>间距</li>
+<li>触摸目标大小</li>
+<li>布局结构</li>
+</ul>
+
+
+<h2 id="Depth">指定您视图内的高度</h2>
+
+<p>视图可透射阴影，而视图的高度值将决定其阴影的大小以及其显示顺序。
+如果要设置视图的高度，请使用您的布局中的
+<code>android:elevation</code> 属性：</p>
+
+<pre>
+&lt;TextView
+    android:id="&#64;+id/my_textview"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="&#64;string/next"
+    android:background="&#64;color/white"
+    android:elevation="5dp" />
+</pre>
+
+<p>新的 <code>translationZ</code> 属性可让您创建反映出视图高度临时变化的动画。
+高度变化可在<a href="{@docRoot}training/material/animations.html#ViewState">响应触摸手势</a>时发挥作用。
+
+</p>
+
+<p>有关更多详情，请参阅<a href="{@docRoot}training/material/shadows-clipping.html">定义阴影与裁剪视图</a>。
+</p>
+
+
+<h2 id="ListsCards">创建列表与卡片</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} 是 {@link
+android.widget.ListView} 的可插入版本，支持不同布局类型，具有更高性能。
+{@link android.support.v7.widget.CardView} 让您能够展示卡片内的各种信息并且在各种应用中实现一致的呈现方式。
+下列代码示例将展示如何将
+{@link android.support.v7.widget.CardView} 包括在您的布局中：</p>
+
+<pre>
+&lt;android.support.v7.widget.CardView
+    android:id="&#64;+id/card_view"
+    android:layout_width="200dp"
+    android:layout_height="200dp"
+    card_view:cardCornerRadius="3dp">
+    ...
+&lt;/android.support.v7.widget.CardView>
+</pre>
+
+<p>如需了解详细信息，请参阅<a href="{@docRoot}training/material/lists-cards.html">创建列表和卡片</a>。
+</p>
+
+
+<h2 id="Animations">定制您的动画</h2>
+
+<p>Android 5.0（API 级别 21）包括新 API，可用于在您的应用中创建定制动画。例如，您可启用操作行为转换并定义操作行为内的退出转换：
+
+</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // enable transitions
+        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+        setContentView(R.layout.activity_my);
+    }
+
+    public void onSomeButtonClicked(View view) {
+        getWindow().setExitTransition(new Explode());
+        Intent intent = new Intent(this, MyOtherActivity.class);
+        startActivity(intent,
+                      ActivityOptions
+                          .makeSceneTransitionAnimation(this).toBundle());
+    }
+}
+</pre>
+
+<p>当您从此操作行为启动另一个操作行为时，退出转换将被激活。</p>
+
+<p>如果要了解有关新动画 API 的更多详情，请参阅<a href="{@docRoot}training/material/animations.html">定义定制动画</a>。</p>
diff --git a/docs/html-intl/intl/zh-cn/training/material/index.jd b/docs/html-intl/intl/zh-cn/training/material/index.jd
new file mode 100644
index 0000000..dea1483
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/material/index.jd
@@ -0,0 +1,61 @@
+page.title=面向开发者的材料设计
+page.type=设计
+page.image=images/cards/material_2x.png
+page.metaDescription=学习如何将材料设计运用到您的应用中。
+
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>依赖项和先决条件</h2>
+  <ul>
+    <li>Android 5.0（API 级别 21）</li>
+  </ul>
+</div>
+</div>
+
+<p>材料设计是专为设计适用于多个平台和设备的视觉、运动与互动效果而制定的综合指南。
+如果要在您的 Android 应用中使用材料设计，请遵循<a href="http://www.google.com/design/spec/material-design/introduction.html">材料设计规范</a>内所述的指导方针，并使用 Android 5.0（API 级别 21）所提供的新组件与功能。
+
+
+
+</p>
+
+<p>本课程将向您介绍如何利用下列元素创建材料设计应用：</p>
+
+<ul>
+<li>材料主题</li>
+<li>用于创建卡片与列表的小组件</li>
+<li>定制阴影以及视图裁剪</li>
+<li>矢量图片</li>
+<li>定制动画</li>
+</ul>
+
+<p>本课程也将向您展示在您的应用中使用材料设计功能时应如何保持与 Android
+5.0（API 级别 21）之前的 Android 版本的兼容性。</p>
+
+<h2>课程</h2>
+
+<dl>
+  <dt><a href="{@docRoot}training/material/get-started.html">入门指南</a></dt>
+  <dd>了解如何使用材料设计功能更新您的应用。</dd>
+
+  <dt><a href="{@docRoot}training/material/theme.html">使用材料主题</a></dt>
+  <dd>了解如何在您的应用中使用材料设计风格。</dd>
+
+  <dt><a href="{@docRoot}training/material/lists-cards.html">创建列表与卡片</a></dt>
+  <dd>了解如何使用系统小组件创建拥有一致的呈现方式与风格的列表与卡片。</dd>
+
+  <dt><a href="{@docRoot}training/material/shadows-clipping.html">定义阴影与裁剪视图</a></dt>
+  <dd>了解如何为您的视图设置高度以便创建定制阴影以及如何裁剪视图。</dd>
+
+  <dt><a href="{@docRoot}training/material/drawables.html">使用 Drawables</a></dt>
+  <dd>了解如何创建矢量图片以及如何为资源着色。</dd>
+
+  <dt><a href="{@docRoot}training/material/animations.html">定义定制动画</a></dt>
+  <dd>了解如何为视图以及拥有共享元素的操作行为创建定制动画。</dd>
+
+  <dt><a href="{@docRoot}training/material/compatibility.html">维护兼容性</a></dt>
+  <dd>了解如何维护与 Android 5.0 之前各种平台版本的兼容性。</dd>
+</dl>
diff --git a/docs/html-intl/intl/zh-cn/training/material/lists-cards.jd b/docs/html-intl/intl/zh-cn/training/material/lists-cards.jd
new file mode 100644
index 0000000..47efe26
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/material/lists-cards.jd
@@ -0,0 +1,266 @@
+page.title=创建列表与卡片
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+  <li><a href="#RecyclerView">创建列表</a></li>
+  <li><a href="#CardView">创建卡片</a></li>
+  <li><a href="#Dependencies">添加依赖关系</a></li>
+</ol>
+<h2>您也应该阅读</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料设计规范</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 材料设计</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>如果要在您的应用中使用材料设计风格创建复杂列表与卡片，您可使用
+{@link android.support.v7.widget.RecyclerView} 以及 {@link android.support.v7.widget.CardView}
+小组件。</p>
+
+
+<h2 id="RecyclerView">创建列表</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} 小组件比 {@link android.widget.ListView} 更高级且更具灵活性。
+此小组件是一个用于显示庞大数据集的容器，可通过保持有限数量的视图进行非常有效的滚动操作。
+如果您有数据集合，其中的元素将因用户操作或网络事件而发生改变，请使用
+{@link android.support.v7.widget.RecyclerView} 小组件。
+</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} 类别将通过提供下列功能简化庞大数据集的显示与处理：
+</p>
+
+<ul>
+  <li>用于项目定位的布局管理器</li>
+  <li>用于通用项目操作（例如删除或添加项目）的默认动画</li>
+</ul>
+
+<p>您也可灵活选择如何为 {@link
+android.support.v7.widget.RecyclerView} 小组件定义定制布局管理器与动画。</p>
+
+<img src="{@docRoot}training/material/images/RecyclerView.png" alt="" width="550" height="106" />
+<p class="img-caption">
+<strong>图 1</strong>.<code>RecyclerView</code> 小组件。
+</p>
+
+<p>如果要使用 {@link android.support.v7.widget.RecyclerView} 小组件，您必须指定一个适配器和一个布局管理器。
+如果要创建一个适配器，请扩展 {@link
+android.support.v7.widget.RecyclerView.Adapter RecyclerView.Adapter} 类别。实现的详情将取决于数据集的具体信息以及视图的类型。
+如果要了解更多信息，请参阅下列<a href="#RVExamples">示例</a>。
+</p>
+
+<div style="float:right">
+<img src="{@docRoot}design/material/images/list_mail.png" alt="" width="250" height="426" />
+<p class="img-caption" style="margin-left:8px">
+<strong>图 2</strong> - 随附 <code>RecyclerView</code> 的列表。
+</p>
+</div>
+
+<p><strong>布局管理器</strong>将确定 {@link
+android.support.v7.widget.RecyclerView} 内各项目视图的位置并决定何时重新使用用户已不可见的项目视图。
+如果要重新使用（或<em>重复使用</em>）一个视图，布局管理器可能会要求适配器以数据集中的另一个元素替换视图的内容。
+以此方式重复使用视图将可避免创建不必要的视图或执行成本高昂的 {@link android.app.Activity#findViewById findViewById()} 查找，从而改善性能。
+
+</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} 提供这些内置布局管理器：</p>
+
+<ul>
+<li>{@link android.support.v7.widget.LinearLayoutManager} 以垂直或水平滚动列表方式显示项目。
+</li>
+<li>{@link android.support.v7.widget.GridLayoutManager} 在网格中显示项目。</li>
+<li>{@link android.support.v7.widget.StaggeredGridLayoutManager} 在分散对齐网格中显示项目。</li>
+</ul>
+
+<p>如果要创建一个定制布局管理器，请扩展 {@link
+android.support.v7.widget.RecyclerView.LayoutManager RecyclerView.LayoutManager} 类别。</p>
+
+<h3>动画</h3>
+
+<p>{@link
+android.support.v7.widget.RecyclerView} 在默认情况下启用增添与删除项目的动画。如果要定制这些动画，请扩展
+{@link android.support.v7.widget.RecyclerView.ItemAnimator RecyclerView.ItemAnimator} 类别并使用 {@link android.support.v7.widget.RecyclerView#setItemAnimator RecyclerView.setItemAnimator()}
+方法。
+</p>
+
+<h3 id="RVExamples">示例</h3>
+
+<p>下列代码示例将展示如何将
+{@link android.support.v7.widget.RecyclerView} 添加至布局：</p>
+
+<pre>
+&lt;!-- A RecyclerView with some commonly used attributes -->
+&lt;android.support.v7.widget.RecyclerView
+    android:id="@+id/my_recycler_view"
+    android:scrollbars="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
+</pre>
+
+<p>将 {@link android.support.v7.widget.RecyclerView} 小组件添加至您的布局后，立即获取对象图柄并将其连接至布局管理器，同时附加一个适配器以便显示数据：
+
+</p>
+
+<pre>
+public class MyActivity extends Activity {
+    private RecyclerView mRecyclerView;
+    private RecyclerView.Adapter mAdapter;
+    private RecyclerView.LayoutManager mLayoutManager;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.my_activity);
+        mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);
+
+        // use this setting to improve performance if you know that changes
+        // in content do not change the layout size of the RecyclerView
+        mRecyclerView.setHasFixedSize(true);
+
+        // use a linear layout manager
+        mLayoutManager = new LinearLayoutManager(this);
+        mRecyclerView.setLayoutManager(mLayoutManager);
+
+        // specify an adapter (see also next example)
+        mAdapter = new MyAdapter(myDataset);
+        mRecyclerView.setAdapter(mAdapter);
+    }
+    ...
+}
+</pre>
+
+<p>适配器可让您存取数据集中的项目，为项目创建视图，并且在原始项目不再可见时以新数据项目替换视图的某些内容。
+
+下列代码示例将展示一个简单的实现，目标为一个包含使用 {@link android.widget.TextView} 小组件显示的字符串阵列的数据集：
+</p>
+
+<pre>
+public class MyAdapter extends RecyclerView.Adapter&lt;MyAdapter.ViewHolder> {
+    private String[] mDataset;
+
+    // Provide a reference to the views for each data item
+    // Complex data items may need more than one view per item, and
+    // you provide access to all the views for a data item in a view holder
+    public static class ViewHolder extends RecyclerView.ViewHolder {
+        // each data item is just a string in this case
+        public TextView mTextView;
+        public ViewHolder(TextView v) {
+            super(v);
+            mTextView = v;
+        }
+    }
+
+    // Provide a suitable constructor (depends on the kind of dataset)
+    public MyAdapter(String[] myDataset) {
+        mDataset = myDataset;
+    }
+
+    // Create new views (invoked by the layout manager)
+    &#64;Override
+    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
+                                                   int viewType) {
+        // create a new view
+        View v = LayoutInflater.from(parent.getContext())
+                               .inflate(R.layout.my_text_view, parent, false);
+        // set the view's size, margins, paddings and layout parameters
+        ...
+        ViewHolder vh = new ViewHolder(v);
+        return vh;
+    }
+
+    // Replace the contents of a view (invoked by the layout manager)
+    &#64;Override
+    public void onBindViewHolder(ViewHolder holder, int position) {
+        // - get element from your dataset at this position
+        // - replace the contents of the view with that element
+        holder.mTextView.setText(mDataset[position]);
+
+    }
+
+    // Return the size of your dataset (invoked by the layout manager)
+    &#64;Override
+    public int getItemCount() {
+        return mDataset.length;
+    }
+}
+</pre>
+
+
+<div style="float:right;margin-top:15px;margin-left:30px">
+<img src="{@docRoot}design/material/images/card_travel.png" alt="" width="225" height="383">
+<p class="img-caption" style="margin-left:12px">
+<strong>图 3</strong>.卡片示例。
+</p>
+</div>
+
+<h2 id="CardView">创建卡片</h2>
+
+<p>{@link android.support.v7.widget.CardView} 扩展 {@link android.widget.FrameLayout} 类别并让您能够显示卡片内的信息，这些信息在整个平台中拥有一致的呈现方式。{@link
+android.support.v7.widget.CardView} 小组件可拥有阴影和圆角。
+</p>
+
+<p>如果要使用阴影创建卡片，请使用 <code>card_view:cardElevation</code> 属性。{@link android.support.v7.widget.CardView} 在 Android 5.0（API 级别 21）及更高版本中使用真实高度与动态阴影，而在早期的 Android 版本中则返回编程阴影实现。如需了解详细信息，请参阅<a href="{@docRoot}training/material/compatibility.html">保持兼容性</a>
+
+
+
+</p>
+
+<p>使用这些属性定制
+{@link android.support.v7.widget.CardView} 小组件的外观：</p>
+
+<ul>
+  <li>如果要在您的布局中设置圆角半径，请使用 <code>card_view:cardCornerRadius</code>
+属性。</li>
+  <li>如果要在您的代码中设置圆角半径，请使用 <code>CardView.setRadius</code> 方法。</li>
+  <li>如果要设置卡片的背景颜色，请使用 <code>card_view:cardBackgroundColor</code>
+属性。</li>
+</ul>
+
+<p>下列代码示例将展示如何将 {@link android.support.v7.widget.CardView}
+小组件包括在您的布局中：</p>
+
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    xmlns:card_view="http://schemas.android.com/apk/res-auto"
+    ... >
+    &lt;!-- A CardView that contains a TextView -->
+    &lt;android.support.v7.widget.CardView
+        xmlns:card_view="http://schemas.android.com/apk/res-auto"
+        android:id="@+id/card_view"
+        android:layout_gravity="center"
+        android:layout_width="200dp"
+        android:layout_height="200dp"
+        card_view:cardCornerRadius="4dp">
+
+        &lt;TextView
+            android:id="@+id/info_text"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+    &lt;/android.support.v7.widget.CardView>
+&lt;/LinearLayout>
+</pre>
+
+<p>如果要了解更多信息，请参阅 {@link android.support.v7.widget.CardView} 的 API 参考。</p>
+
+
+<h2 id="Dependencies">添加依赖项</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} 与 {@link android.support.v7.widget.CardView}
+小组件为 <a href="{@docRoot}tools/support-library/features.html#v7">v7 支持内容库</a>的一部分。
+如果要在您的项目中使用这些小组件，请将这些
+<a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Gradle 依赖项</a>添加至您的应用模块：
+</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
diff --git a/docs/html-intl/intl/zh-cn/training/material/shadows-clipping.jd b/docs/html-intl/intl/zh-cn/training/material/shadows-clipping.jd
new file mode 100644
index 0000000..e063d33
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/material/shadows-clipping.jd
@@ -0,0 +1,133 @@
+page.title=定义阴影与裁剪视图
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+  <li><a href="#Elevation">指定视图高度</a></li>
+  <li><a href="#Shadows">定制视图阴影与轮廓</a></li>
+  <li><a href="#Clip">裁剪视图</a></li>
+</ol>
+<h2>您也应该阅读</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料设计规范</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 材料设计</a></li>
+</ul>
+</div>
+</div>
+
+<p>材料设计为 UI 元素引入高度。高度将帮助用户了解每个元素的相对重要性，让他们能够集中于手边的工作。
+</p>
+
+<p>由 Z 属性所表示的视图高度将决定其阴影的视觉外观：拥有较高 Z 值的视图将投射更大且更柔和的阴影。
+拥有较高 Z 值的视图将挡住拥有较低 Z 值的视图；不过视图的 Z 值并不影响视图的大小。
+</p>
+
+<p>阴影是由提升的视图的父项所绘制，因此将受到标准视图裁剪的影响，而在默认情况下裁剪将由父项执行。
+</p>
+
+<p>此外，在创建其中的小组件在执行某些操作行为时会暂时升至视图平面之上的动画时，高度也很实用。
+</p>
+
+<p>要了解更多有关材料设计高度的信息，请参阅
+<a href="http://www.google.com/design/spec/what-is-material/objects-in-3d-space.html">3D 空间内的对象</a>。
+</p>
+
+
+<h2 id="Elevation">指定视图高度</h2>
+
+<p>视图的 Z 值包含两个组件：
+
+<ul>
+<li>高度：静态组件。</li>
+<li>转换：用于动画的动态组件。</li>
+</ul>
+
+<p><code>Z = elevation + translationZ</code></p>
+
+<img src="{@docRoot}training/material/images/shadows-depth.png" width="580" height="261" alt="" />
+<p class="img-caption"><strong>图 1</strong> - 不同视图高度的阴影。</p>
+
+<p>如果要在布局定义中设置视图的高度，请使用 <code>android:elevation</code>
+ 属性。如果要在操作行为的代码中设置视图高度，请使用
+{@link android.view.View#setElevation View.setElevation()} 方法。</p>
+
+<p>如果要设置视图转换，请使用 {@link android.view.View#setTranslationZ
+View.setTranslationZ()} 方法。</p>
+
+<p>全新的 {@link android.view.ViewPropertyAnimator#z ViewPropertyAnimator.z()} 与 {@link
+android.view.ViewPropertyAnimator#translationZ ViewPropertyAnimator.translationZ()} 方法让您能够轻松地为视图高度添加动画。
+如果要了解更多信息，请参阅
+{@link android.view.ViewPropertyAnimator} 的 API 参考以及<a href="{@docRoot}guide/topics/graphics/prop-animation.html">属性动画</a>开发指南。
+</p>
+
+<p>您也可使用 {@link android.animation.StateListAnimator} 以说明性方式指定这些动画。
+当状态改变会触发动画（例如当用户按下按钮）时，此方法特别有用。
+如果要了解更多信息，请参阅<a href="{@docRoot}training/material/animations.html#ViewState">为视图状态改变添加动画</a>。
+</p>
+
+<p>Z 值以 dp（密度独立像素）为单位度量。</p>
+
+
+<h2 id="Shadows">定制视图阴影与轮廓</h2>
+
+<p>视图的背景图片的边界将决定其阴影的默认形状。<strong>轮廓</strong>代表图形对象的外形并定义触摸反馈的波纹区域。
+
+</p>
+
+<p>下面举一个以背景图片定义的视图示例：</p>
+
+<pre>
+&lt;TextView
+    android:id="@+id/myview"
+    ...
+    android:elevation="2dp"
+    android:background="@drawable/myrect" />
+</pre>
+
+<p>背景图片被定义为一个拥有圆角的矩形：</p>
+
+<pre>
+&lt;!-- res/drawable/myrect.xml -->
+&lt;shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+    &lt;solid android:color="#42000000" />
+    &lt;corners android:radius="5dp" />
+&lt;/shape>
+</pre>
+
+<p>视图将投射一个带有圆角的阴影，因为背景图片将定义视图的轮廓。
+如果提供一个定制轮廓，则此轮廓将替代视图阴影的默认形状。</p>
+
+<p>如果要为您的代码中的视图定义定制轮廓：<p>
+
+<ol>
+<li>扩展 {@link android.view.ViewOutlineProvider} 类别。</li>
+<li>替代 {@link android.view.ViewOutlineProvider#getOutline getOutline()} 方法。</li>
+<li>利用 {@link
+android.view.View#setOutlineProvider View.setOutlineProvider()} 方法向您的视图指定新的轮廓提供程序。</li>
+</ol>
+
+<p>您可使用
+{@link android.graphics.Outline} 类别中的方法创建带有圆角的椭圆形和矩形轮廓。视图的默认轮廓提供程序将从视图背景取得轮廓。
+如果要防止视图投射阴影，请将其轮廓提供程序设置为 <code>null</code>。
+</p>
+
+
+<h2 id="Clip">裁剪视图</h2>
+
+<p>裁剪视图让您能够轻松改变视图形状。您可以裁剪视图，以便与其他设计元素保持一致，也可以根据用户输入改变视图形状。您可使用 {@link android.view.View#setClipToOutline
+View.setClipToOutline()} 方法或 <code>android:clipToOutline</code> 属性将视图裁剪至其轮廓区域。
+
+由
+{@link android.graphics.Outline#canClip Outline.canClip()} 方法所决定，仅有矩形、圆形和圆角矩形轮廓支持裁剪。
+</p>
+
+<p>如果要将视图裁剪至图片的形状，请将图片设置为视图背景（如上所示）并调用 {@link android.view.View#setClipToOutline View.setClipToOutline()}
+方法。
+</p>
+
+<p>裁剪视图是一个成本高昂的操作，因此不可为您用于裁剪视图的形状添加动画。
+如果要实现此效果，请使用<a href="{@docRoot}training/material/animations.html#Reveal">揭露效果</a>动画。</p>
diff --git a/docs/html-intl/intl/zh-cn/training/material/theme.jd b/docs/html-intl/intl/zh-cn/training/material/theme.jd
new file mode 100644
index 0000000..5a45d4b
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/material/theme.jd
@@ -0,0 +1,131 @@
+page.title=使用材料主题
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+  <li><a href="#ColorPalette">定制配色工具</a></li>
+  <li><a href="#StatusBar">定制状态栏</a></li>
+  <li><a href="#Inheritance">主题个别视图</a></li>
+</ol>
+<h2>您也应该阅读</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料设计规范</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 材料设计</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>新材料主题将提供：</p>
+
+<ul>
+  <li>让您设置主题配色工具的系统小组件</li>
+  <li>适用于系统小组件的触摸反馈动画</li>
+  <li>操作行为转换动画</li>
+</ul>
+
+<p>您可使用您所控制的配色工具，按照您的品牌形象定制材料主题的外观。
+您可使用主题属性为操作栏和状态栏着色，如<a href="#fig3">图 3</a> 所示。
+</p>
+
+<p>系统小组件拥有全新的设计与触摸反馈动画。您可为您的应用定制配色工具、触摸反馈动画以及操作行为转换。
+</p>
+
+<p>材料主题的定义为：</p>
+
+<ul>
+  <li><code>@android:style/Theme.Material</code>（深色版本）</li>
+  <li><code>@android:style/Theme.Material.Light</code>（浅色版本）</li>
+  <li><code>@android:style/Theme.Material.Light.DarkActionBar</code></li>
+</ul>
+
+<p>如果要了解您可使用的材料风格，请参阅
+{@link android.R.style R.style} 的 API 参考。</p>
+
+<!-- two columns, dark/light material theme example -->
+<div style="width:700px;margin-top:25px;margin-bottom:10px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>图 1</strong>.深色材料主题</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>图 2</strong>.浅色材料主题</p>
+  </div>
+</div>
+<br style="clear:left">
+</div>
+
+<p class="note">
+<strong>注意：</strong>材料主题仅在 Android 5.0（API 级别 21）及更高版本中提供。
+<a href="{@docRoot}tools/support-library/features.html#v7">v7 支持内容库</a>为一些小组件提供附带材料设计风格的主题，同时为配色工具定制提供支持。
+
+如果要了解更多信息，请参阅
+<a href="{@docRoot}training/material/compatibility.html">保持兼容性</a>。
+</p>
+
+
+<h2 id="ColorPalette">定制配色工具</h2>
+
+<p style="margin-bottom:30px">如果要定制主题的基色以符合您的品牌，您可在进行材料主题继承时使用主题属性定义您的定制颜色：
+</p>
+
+<pre>
+&lt;resources>
+  &lt;!-- inherit from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- Main theme colors -->
+    &lt;!--   your app branding color for the app bar -->
+    &lt;item name="android:colorPrimary">@color/primary&lt;/item>
+    &lt;!--   darker variant for the status bar and contextual app bars -->
+    &lt;item name="android:colorPrimaryDark">@color/primary_dark&lt;/item>
+    &lt;!--   theme UI controls like checkboxes and text fields -->
+    &lt;item name="android:colorAccent">@color/accent&lt;/item>
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<div style="float:right;margin-left:25px;margin-top:20px;margin-bottom:10px" id="fig3">
+<img src="{@docRoot}training/material/images/ThemeColors.png" width="250" height="445" />
+<p class="img-caption" style="margin-bottom:0px">
+<strong>图 3.</strong>定制材料主题。</p>
+</div>
+
+
+<h2 id="StatusBar">定制状态栏</h2>
+
+<p>材料主题可让您轻松定制状态栏，因此您可以指定一个符合自己品牌特色且对比度足够高、能够显示白色状态图标的颜色。
+如果要为状态栏设置定制颜色，您可在扩展材料主题时使用 <code>android:statusBarColor</code> 属性。
+
+默认情况下，<code>android:statusBarColor</code> 将继承 <code>android:colorPrimaryDark</code> 的值。
+</p>
+
+<p>您也可自行将状态栏移到后侧。例如，您想在一个照片上以透明的方式显示状态栏，同时利用细微的深色渐变以确保白色状态图标仍保持可见。
+
+如果要执行此操作，请将 <code>android:statusBarColor</code> 属性设置为
+<code>&#64;android:color/transparent</code> 并根据需要调整窗口标志。您也可以使用 {@link android.view.Window#setStatusBarColor Window.setStatusBarColor()} 方法进行动画或淡出设置。
+
+</p>
+
+<p class="note">
+<strong>注意：</strong>在多数情况下，状态栏与主工具栏之间应该有一个清楚的分割，您在这些栏的后侧显示全屏的丰富图像或媒体内容以及使用颜色渐变以确保图表仍保持可见的情况除外。
+
+
+</p>
+
+<p>定制导航栏和状态栏时，您可选择将导航栏和状态栏变透明或仅修改状态栏。
+在所有其他情况中，导航栏均应保持黑色。</p>
+
+
+<h2 id="Inheritance">主题个别视图</h3>
+
+<p>XML 布局定义内的元素可指定 <code>android:theme</code> 属性，而该属性将引用一个主题资源。
+此属性可修改元素以及任何子元素的主题，有助于改变界面中特定部分的主题配色工具。
+
+</p>
diff --git a/docs/html-intl/intl/zh-cn/training/wearables/apps/creating-app-china.jd b/docs/html-intl/intl/zh-cn/training/wearables/apps/creating-app-china.jd
new file mode 100644
index 0000000..4e33d36
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/wearables/apps/creating-app-china.jd
@@ -0,0 +1,156 @@
+page.title=创建面向中国市场的 Android Wear 应用
+parent.title=培训
+parent.link=creating.html
+page.tags= "可穿戴式", "应用", "中国"
+page.article=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+  <li><a href="#ChinaSDK">在面向中国市场的 Android Wear 上支持您的应用</a></li>
+  <li><a href="#other-services">使用其他 Google Play Services API</a></li>
+</ol>
+<h2>依赖项和先决条件</h2>
+<ol>
+<li> 在手持式设备和可穿戴式设备上安装 Android 4.3（API 级别 18）或更高版本。</li>
+</ol>
+<h2>下载</h2>
+<ol>
+<div class="download-box">
+<a href="https://dl.google.com/androidwear/developers/china/google-play-services-7-8-87.zip" class="button">独立客户端库</a>
+<p class="filename">google-play-services-7-8-87.zip</p>
+</div>
+</ol>
+</div>
+</div>
+
+
+<p>
+在中国销售的手持式设备没有预装 Google Play 服务。为此，在面向中国市场的设备上运行的可穿戴式设备应用必须通过 Android Wear 协同应用与配对的手持式设备进行通信。
+
+为了让您能够开发出可与面向中国市场的 Android Wear 和面向全球其他市场的 Android Wear 配合使用的 APK，我们提供了专用版本的 Google Play services 客户端库。
+
+</p>
+
+<p>
+此客户端库与 Android 4.3（API 级别 18）及更高版本兼容，您只需将其拖放到您的应用中。
+您无需编写任何新代码，只需更改几个项目配置设置，然后重新编译应用。
+
+</p>
+
+
+<p>本页面的其余部分将介绍如何执行此过程。</p>
+
+
+
+<h2 id = "ChinaSDK">在面向中国市场的 Android Wear 上支持您的应用</h2>
+
+<p>
+<p>为了在所有手持式设备上支持您的可穿戴式设备应用，您必须下载 Google Play
+services 7.8.87 客户端库，并将其作为 Maven 存储库添加到您的项目中，配置开发项目以使用该库，然后重新编译您的应用。
+
+</p>
+
+<h3>添加 Google Play services 7.8.87 库</h3>
+
+<p>Google Play services 7.8.87 客户端库作为 Maven 存储库分发。要将此存储库添加到项目，请：
+</p>
+
+<ol>
+<li><a href="https://dl.google.com/androidwear/developers/china/google-play-services-7-8-87.zip">下载</a>客户端库。
+文件名为 {@code google-play-services-7-8-87.zip}。
+</li>
+<li>通过从下载的 zip 文件提取 {@code google-play-services-7-8-87/} 目录来创建本地 Maven 存储库，并将其放入项目的根目录中。
+
+</li>
+<li>在顶级项目 {@code build.gradle} 文件中，指定新创建的本地 Maven {@code google-play-services-7-8-87} 存储库的位置。
+
+</li>
+<p>
+以下示例向您展示如何操作：
+</p>
+<pre>
+allprojects {
+  repositories {
+
+        maven {
+                url "${rootProject.projectDir}/google-play-services-7-8-87"
+              }
+       // ... other repositories may go here ...
+
+    }</pre>
+</ol>
+<h3>配置应用以使用库</h3>
+<p>在 <em>mobile</em> 模块的 {@code build.gradle} 文件中，将 Google Play services 依赖项替换为指向客户端库（来自新添加的存储库）的引用。
+以下示例向您展示如何操作：
+
+</p>
+
+
+<pre>
+dependencies{
+    ...
+    wearApp project(':wear')
+    compile 'com.google.android.gms:play-services-wearable:7.8.87'
+    ...
+    }
+</pre>
+<p><em>wear</em> 模块的 {@code build.gradle} 文件也必须使用此版本的客户端库，例如：
+
+</p>
+<pre>
+dependencies {
+    compile 'com.google.android.support:wearable:1.3.0'
+    compile 'com.google.android.gms:play-services-wearable:7.8.87'
+}
+</pre>
+
+<p class="note"><strong>注</strong>：如果您在可穿戴式设备应用中使用任何其他 Google Play services API，则必须有选择地将这些 Google Play services API 添加到应用中，并显式指定 7.8.87 版本。
+
+例如，若要将 Google 位置 API 包含到可穿戴式设备应用中，则在您的 {@code build.gradle} 文件中添加以下行：
+
+</p>
+<pre>
+compile 'com.google.android.gms:play-services-location:7.8.87'
+</pre>
+</p>
+<h3>构建项目</h3>
+
+
+<p>现在，您可以<a href="{@docRoot}training/wearables/apps/packaging.html">构建</a>应用的新版本，并将其全局部署到 Android 手持式设备。
+</p>
+</ol>
+
+
+<h2 id= "other-services">使用其他 Google Play services API</h2>
+
+<p>
+如果您的应用使用 Google Play services API 而不是 Wearable API，那么您的应用需要检查这些 API 在运行时是否可用以及是否能够做出恰当的响应。
+检查 Google Play services API 可用性的方式有两种：
+
+</p>
+
+<ol>
+<li>使用独立的 <a href="https://developers.google.com/android/reference/com/google/android/gms/
+common/api/GoogleApiClient.html">{@code GoogleApiClient}</a> 实例来连接到其他 API。此界面包含回调以提醒您的应用连接成功还是失败。若要了解如何处理连接故障，请参阅<a href="https://developers.google.com/android/guides/api-client">访问 Google API</a>。
+
+
+</li>
+
+<li>使用
+<a href="https://developers.google.com/android/
+reference/com/google/android/gms/common/api/GoogleApiClient.Builder.html">{@code GoogleApiClient.Builder}
+</a>
+的 <a href="https://developers.google.com/android/reference/com/google/android/gms/common/
+api/GoogleApiClient.Builder.html#addApiIfAvailable(com.google.android.gms.common.api.Api&lt;O&gt;, O,
+com.google.android.gms.common.api.Scope...)"> {@code addApiIfAvailable()}</a> 方法以连接到必需的 API。在触发 <a href="https://developers.google.com/android/reference/
+com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks#onConnected(android.os.Bundle)">
+{@code onConnected()}</a> 回调后，使用 <a href="https://developers.google.com/android/reference/com/google/android/gms/common/api/
+GoogleApiClient.html#hasConnectedApi(com.google.android.gms.common.api.Api&lt;?&gt;)">
+ {@code hasConnectedApi()}</a> 方法检查所请求的每个 API 是否均已正确连接。
+
+
+</ol>
diff --git a/docs/html-intl/intl/zh-cn/training/wearables/apps/creating.jd b/docs/html-intl/intl/zh-cn/training/wearables/apps/creating.jd
new file mode 100644
index 0000000..5c9ec3f
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/wearables/apps/creating.jd
@@ -0,0 +1,225 @@
+page.title=创建并运行可穿戴式设备应用
+page.tags=wear
+helpoutsWidget=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+  <li><a href="#UpdateSDK">更新 SDK</a></li>
+  <li><a href="#SetupEmulator">设置 Android Wear 模拟器或设备</a></li>
+  <li><a href="#CreateProject">创建项目</a></li>
+  <li><a href="#Install">安装可穿戴式设备应用</a></li>
+  <li><a href="#Libraries">包含正确的库</a></li>
+</ol>
+</div>
+</div>
+
+<p>可穿戴式设备应用直接在可穿戴式设备上运行，让您可以直接访问可穿戴式设备上的底层硬件（如传感器）、Activity、服务等。
+
+</p>
+
+<p>如果您想要发布到 Google Play 商店，还需要提供包含可穿戴式设备应用的协同手持式设备应用。可穿戴式设备不支持 Google Play 商店，因此，用户可下载协同手持式设备应用，后者自动将可穿戴式设备应用推送到可穿戴式设备上。
+
+
+手持式设备应用还可用于执行繁重的处理、网络操作或其他工作，以及将处理结果发送到可穿戴式设备。
+
+
+</p>
+
+<p>此课程介绍如何设置设备或模拟器，并创建一个同时包含可穿戴式设备应用和手持式设备应用的项目。
+
+</p>
+
+<h2 id="UpdateSDK">更新 SDK</h2>
+
+<p>在您着手构建可穿戴式设备应用前，必须：</p>
+
+<ul>
+  <li><strong>将您的 SDK 工具更新到 23.0.0 或更高版本</strong>
+    <br>
+    利用更新后的 SDK 工具，您可以构建和测试可穿戴式设备应用。
+  </li>
+  <li><strong>将您的 SDK 平台更新为 Android 4.4W.2 (API 20) 或更高版本</strong>
+    <br>
+    更新后的平台版本提供了新的可穿戴式设备应用 API。
+  </li>
+</ul>
+
+<p>若要将 SDK 更新为上述组件，请参阅<a href="{@docRoot}sdk/installing/adding-packages.html#GetTools">获取最新的 SDK 工具</a>
+。</p>
+
+
+<h2 id="SetupEmulator">设置 Android Wear 模拟器或设备</h2>
+<p>我们建议您在真实的硬件上进行开发，以便您可以更好地衡量用户体验。
+不过，通过模拟器，您可以测试不同类型的屏幕形状，这对于测试非常有用。
+</p>
+
+<h3>设置 Android Wear 虚拟设备</h3>
+
+<p>若要设置 Android Wear 虚拟设备，请：</p>
+<ol>
+  <li>点击 <b>Tools &gt; Android &gt; AVD Manager</b>。</li>
+  <li>点击 <b>Create Virtual Device...</b>。</li>
+  <ol>
+    <li>在“Category”列表中点击 <b>Wear</b>：</li>
+    <li>选择 Android Wear Square 或 Android Wear Round。</li>
+    <li>点击 <b>Next</b>。</li>
+    <li>选择版本名称（例如，KitKat Wear）。</li>
+    <li>点击 <b>Next</b>。</li>
+    <li>（可选）更改虚拟设备的任意首选项。</li>
+    <li>点击 <b>Finish</b>。</li>
+  </ol>
+<li>启动模拟器：
+<ol>
+  <li>选择您刚创建的虚拟设备。</li>
+  <li>点击 <b>Play</b> 按钮。</li>
+  <li>等待模拟器初始化并显示 Android Wear 主屏幕。</li>
+</ol>
+</li>
+<li>将手持式设备与模拟器配对：
+<ol>
+  <li>在手持式设备上，从 Google Play 安装 Android Wear 应用。</li>
+  <li>通过 USB 将手持式设备连接到计算机。</li>
+  <li>将 AVD 的通信端口转发到连接的手持式设备（每次连接手持式设备时必须进行此操作）：
+
+  <pre>adb -d forward tcp:5601 tcp:5601</pre>
+  </li>
+  <li>在手持式设备上启动 Android Wear 应用并连接到模拟器。</li>
+  <li>点击 Android Wear 应用右上角的菜单并选择
+<b>Demo Cards</b>。</li>
+  <li>您选择的卡片作为通知显示在模拟器主屏幕上。</li>
+</ol>
+</li>
+</ol>
+
+<h3 id="SetupDevice">设置 Android Wear 设备</h3>
+<p>若要设置 Android Wear 设备，请：</p>
+<ol>
+  <li>在手持式设备上安装 Android Wear 应用，可通过 Google Play 获取。</li>
+  <li>按照应用的说明将手持式设备与可穿戴式设备配对。
+  这样，您可以测试同步的手持式设备通知（如果您正在构建这些通知）。</li>
+  <li>在您的手机上使 Android Wear 应用保持打开状态。</li>
+  <li>在 Android Wear 设备上启用 adb 调试。</li>
+  <ol>
+    <li>请转到 <strong>Settings &gt; About</strong>。</li>
+    <li>连续点击 <strong>Build number</strong> 七次。</li>
+    <li>向右滑动返回“Settings”菜单。</li>
+    <li>转到屏幕底部的 <strong>Developer options</strong>。
+    </li>
+    <li>点击 <strong>ADB Debugging</strong> 以启用 adb。</li>
+  </ol>
+  <li>通过 USB 将可穿戴式设备连接到您的计算机，以便您可以在开发时将应用直接安装在可穿戴式设备上。
+可穿戴式设备应用和 Android Wear 应用上会显示一条消息，提示您允许调试。
+</li>
+
+  <p class="note"><strong>注</strong>：如果您无法通过 USB 将可穿戴式设备连接到计算机，您可以尝试<a href="{@docRoot}training/wearables/apps/bt-debugging.html">通过蓝牙连接</a>。
+
+
+  </p>
+
+  <li>在 Android Wear 应用上，选择 <strong>Always allow from this computer</strong> 并点击
+<strong>OK</strong>。</li>
+</ol>
+
+<p>Android Studio 上的 Android 工具窗口显示来自可穿戴式设备的系统日志。<i></i>
+运行 <code>adb devices</code> 命令也可列出可穿戴式设备。</p>
+
+<h2 id="CreateProject">创建项目</h2>
+
+<p>若要着手开发，请先创建包含可穿戴式设备和手持式设备应用模块的应用项目。
+在 Android Studio 中，点击 <b>File</b> &gt;
+ <b>New Project</b>，并按照项目向导说明操作，如<a href="{@docRoot}sdk/installing/create-project.html">创建项目</a>中所述。
+
+按照向导进行操作时，请输入以下信息：</p>
+
+<ol>
+  <li>在 <b>Configure your Project</b> 窗口中，输入应用名称和软件包名称。
+</li>
+  <li>在 <b>Form Factors</b> 窗口中：
+    <ul>
+      <li>选择 <b>Phone and Tablet</b>，然后在 <b>Minimum SDK</b> 下选择 <b>API 9: Android 2.3 (Gingerbread)</b>。
+</li>
+      <li>选择 <b>Wear</b>，然后在 <b>Minimum SDK</b> 下选择 <b>API 20: Android 4.4 (KitKat Wear)</b>。
+</li>
+    </ul>
+  </li>
+  <li>在第一个 <b>Add an Activity</b> 窗口中，针对移动设备添加空白 Activity。</li>
+  <li>在第二个 <b>Add an Activity</b> 窗口中，针对穿戴设备添加空白 Activity。</li>
+</ol>
+  <p>向导完成时，Android Studio 将创建一个包含两个模块（<b>mobile</b>
+和 <b>wear</b>）的新项目。现在，您有一个可供手持式设备应用和可穿戴式设备应用使用的项目，您可以针对该项目创建 Activity、服务和自定义布局。
+手持式设备应用处理大多数繁重事务，如网络通信、密集型处理或需要大量用户交互的任务。
+
+当应用完成这些操作时，您的应用可通过通知或同步数据并将其发送到可穿戴式设备，将处理结果通知给可穿戴式设备。
+
+</p>
+
+  <p class="note"><b>注</b>：<b>wear</b> 模块还包含一个使用
+<a href="{@docRoot}reference/android/support/wearable/view/WatchViewStub.html"><code>WatchViewStub</code></a>的 "Hello World" Activity。
+
+  该类可根据设备屏幕是圆形还是方形扩充布局。
+  <a href="{@docRoot}reference/android/support/wearable/view/WatchViewStub.html"><code>WatchViewStub</code></a>
+ 类是<a href="{@docRoot}training/wearables/apps/layouts.html#UiLibrary">可穿戴式设备支持库</a>提供的 UI 小工具之一。
+
+
+  </p>
+</li>
+
+<h2 id="Install">安装可穿戴式设备应用</h2>
+
+<p>开发时，与手持式设备应用相似，直接将应用安装到可穿戴式设备。使用 Android Studio 上的 <code>adb install</code> 或 <b>Play</b> 按钮。
+</p>
+
+<p>准备向用户发布应用时，将可穿戴式设备应用嵌入手持式设备应用的内部。
+用户从 Google Play 安装手持式设备应用时，已连接的可穿戴式设备会自动接收可穿戴式设备应用。
+</p>
+
+<p class="note"><b>注</b>：自动安装可穿戴式设备应用的功能仅支持发布密钥，如果您使用调试密钥签署应用，将无法自动安装。
+有关如何正确打包可穿戴式设备应用的完整信息，请参阅<a href="{@docRoot}training/wearables/apps/packaging.html">打包可穿戴式设备应用</a>
+
+。</p>
+
+<li>
+要将“Hello World”应用安装到可穿戴式设备，请从 <b>Run/Debug
+configuration</b> 下拉菜单中选择 <b>wear</b>，然后点击 <b>Play</b> 按钮。此时，该 Activity 将出现在可穿戴式设备上并显示“Hello world!”
+
+</li></ol>
+<h2 id="Libraries">包含正确的库</h2>
+
+<p>项目向导将在相应模块的 <code>build.gradle</code> 文件中为您导入正确的依赖项。不过，这些依赖项并不是必需的，因此，请阅读以下说明以了解您是否需要它们：
+
+
+</p>
+
+<b>通知</b>
+<p><a href="{@docRoot}tools/support-library/features.html#v4">Android
+v4 支持库</a>（或 v13，其包含 v4）包含的 API 可扩展手持式设备上的现有通知，使之支持可穿戴式设备。
+</p>
+
+<p>对于仅显示在可穿戴式设备上的通知（意味着这些通知由可穿戴式设备上运行的应用发出），您只需在可穿戴式设备上使用标准框架 API（API 级别 20），并在项目的 <b>mobile</b> 模块中移除支持库依赖项。
+
+
+
+</p>
+
+<b>Wearable Data Layer</b>
+<p>若要通过 Wearable Data Layer API 在可穿戴式设备和手持式设备之间同步和发送数据，您需要最新版本的
+<a href="{@docRoot}google/play-services/setup.html">Google Play 服务</a>。如果您不打算使用这些 API，则从这两个模块中移除依赖项。
+
+</p>
+
+<b>Wearable UI 支持库</b>
+<p>这是非官方库，其包含<a href="{@docRoot}training/wearables/apps/layouts.html#UiLibrary">专为可穿戴式设备设计的 UI 小工具</a>。
+
+我们建议您在应用中使用这些库，因为它们可作为最佳实践的范例，但仍可随时进行更改。
+不过，更新库时，您的应用不会中断，因为这些库已编译到您的应用中。
+要从更新的库中获取新功能，您只需静态链接新版本，然后相应更新您的应用。
+此库仅适用于创建可穿戴式设备应用。
+
+</p>
+
+<p>在后面的课程中，您将学习如何创建专为可穿戴式设备设计的布局，以及如何使用平台支持的各种语音操作。
+</p>
diff --git a/docs/html-intl/intl/zh-tw/design/get-started/principles.jd b/docs/html-intl/intl/zh-tw/design/get-started/principles.jd
index 27cce81..c5d40d4 100644
--- a/docs/html-intl/intl/zh-tw/design/get-started/principles.jd
+++ b/docs/html-intl/intl/zh-tw/design/get-started/principles.jd
@@ -9,13 +9,13 @@
 
 <p>
 當您套用您本身的創意與設計思維時，請考慮這些原則。
-偏離一般做法要帶有目的。
+除非有特定目的，否則請遵循這些原則。
 </p>
 
 <h2 id="enchant-me">使人著迷</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="delight-me">以出乎意外的方式取悅人</h4>
 <p>漂亮的外觀、精心設置的動畫，或時機恰到好處的音效，都是令人感到喜悅的體驗。
@@ -23,7 +23,7 @@
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_delight.png">
 
@@ -32,15 +32,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="real-objects-more-fun">真實的物件比按鈕和功能表更有趣</h4>
-<p>讓人們可以在您應用程式中直接輕觸和操縱物件，這可減少執行某項工作所需的認知過程，同時在情緒上更令人感到滿足。
+<h4 id="real-objects-more-fun">真實的物件比生硬的按鈕和選單，更能夠引人入勝。</h4>
+<p>您所設計的應用程式應該要能讓使用者可直接輕觸並操縱物件。這將可減少執行工作所需的認知準備，同時也能讓使用者在情緒上更為滿足。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_real_objects.png">
 
@@ -49,16 +49,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-it-mine">提供個人設定</h4>
-<p>人們喜歡加上個人風格，因為這有助於他們感到自在並握有主控權。提供能令人感受及美觀的預設設定，但也可以考慮使用不會阻礙主要工作卻又好玩的可選用性自訂項目。
+<p>很多人喜歡加上個人風格，因為這有助於他們感到自在並握有主控權。提供實用且美觀的預設設定，但也可以考慮使用不會阻礙主要工作而且有趣的選用自訂項目。
 
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_it_mine.png">
 
@@ -67,15 +67,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="get-to-know-me">設法了解使用者</h4>
-<p>隨著時間而學習使用者的偏好。讓人們易於取得之前的選擇，而不是一再詢問他們會做出相同選擇的問題。
+<p>隨著時間而學習使用者的偏好。讓使用者容易取得之前的選擇，而不是一再請他們做出相同的選擇。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_get_to_know_me.png">
 
@@ -84,14 +84,14 @@
 
 <h2 id="simplify-my-life">簡化生活</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="keep-it-brief">保持簡潔</h4>
-<p>以簡單單字組成簡短語句。人們傾向於略過冗長的句子。</p>
+<p>以簡單單字組成簡短語句。多數人傾向於略過冗長的句子。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_keep_it_brief.png">
 
@@ -100,15 +100,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="pictures-faster-than-words">圖片的傳達效果更勝於言語</h4>
-<p>請考慮使用圖片來解釋想法。圖片能吸引人們的注意力，並比言語更有效率。
+<p>請考慮使用圖片來解釋想法。圖片能吸引目光，並比言語更有效率。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_pictures.png">
 
@@ -117,15 +117,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="decide-for-me">幫使用者決定，但使用者擁有最終決定權</h4>
-<p>做出最好的猜測，先行動，而非先詢問。太多的選擇和決定會讓人們不高興。
+<p>做出最好的猜測，先行動，而非先詢問。太多的選擇和決定會讓使用者覺得很痛苦。
 為防止錯誤，務必允許復原。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_decide_for_me.png">
 
@@ -134,15 +134,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="only-show-when-i-need-it">必要時僅顯示使用者需要的東西</h4>
-<p>人們無法承受一次看到太多東西。將工作和資訊細分成小型、易消化的區塊。
-隱藏當下不重要的選項，但在人們需要選擇時要明確指導。</p>
+<h4 id="only-show-when-i-need-it">必要時僅顯示使用者需要的內容</h4>
+<p>多數人無法承受一次看到太多東西。將工作和資訊細分成小型、易消化的區塊。
+隱藏當下不重要的選項，但在需要選擇時要明確指導。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_information_when_need_it.png">
 
@@ -151,15 +151,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
-<h4 id="always-know-where-i-am">使用者應該總是清楚所在位置</h4>
-<p>給人們信心，知道自己沒有迷路。讓您應用程式中的各處看起來都有獨特性，並使用轉換來顯示畫面之間的關係。
+<h4 id="always-know-where-i-am">使用者應該永遠清楚所在位置</h4>
+<p>給使用者信心，知道自己沒有迷路。讓您應用程式中的各個地方看起來都有獨特性，並使用轉換來顯示畫面之間的關係。
 針對進行中的工作提供回饋。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_navigation.png">
 
@@ -168,8 +168,8 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="never-lose-my-stuff">別弄丟使用者的東西</h4>
 <p>儲存使用者花時間所建立的資訊，並且讓使用者可從任何地方存取。跨手機、平板電腦和電腦記住設定、個人風格和建立的資訊。
@@ -177,7 +177,7 @@
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_never_lose_stuff.png">
 
@@ -186,15 +186,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="looks-same-should-act-same">如果看起來一樣，就應該有相同的動作</h4>
-<p>讓功能看起來就不一樣，而非變化微妙，這可以協助人們辨別功能差異。在相同輸入環境下，因為模式看起來很類似但卻有不同的動作，請盡量避免使用。
+<p>讓功能看起來就不一樣，而非變化微妙，這可以協助使用者辨別功能差異。在相同輸入環境下，請盡量避免使用看起來很類似但作用卻不同的模式。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_looks_same.png">
 
@@ -203,15 +203,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="interrupt-only-if-important">重要時才打斷</h4>
-<p>就像一位好的私人助理，讓人們免於無關緊要的枝微末節。人們總想集中注意力，除非很重要且具時效性，不然貿然中斷會令人感到費力且沮喪。
+<p>就像一位好的私人助理，應該讓使用者免於無關緊要的枝微末節。使用者總想集中注意力，除非很重要且具時效性，否則貿然中斷會令人感到費力且沮喪。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_important_interruption.png">
 
@@ -220,16 +220,16 @@
 
 <h2 id="make-me-amazing">讓使用者驚艷</h2>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="give-me-tricks">提供使用者各處通用的訣竅</h4>
-<p>當人們能自行弄清楚來龍去脈時是很棒的體驗。運用來自其他 Android 應用程式的視覺模式和肌肉記憶效應，讓使用者更易於學會您的應用程式。
+<p>當使用者能自行弄清楚來龍去脈時是很棒的體驗。運用來自其他 Android 應用程式的視覺模式和肌肉記憶效應，讓使用者更易於學會您的應用程式。
 例如，擺動手勢可能是很好的導覽捷徑。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_tricks.png">
 
@@ -238,16 +238,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="its-not-my-fault">不是使用者的錯</h4>
-<p>提示人們更正時要溫和。人們使用您的應用程式時，會想要感受到自已非常明智。如果有什麼不對，請提供明確的復原指示，但不需要使用者明瞭技術細節。如果可以，請盡量在幕後修正。
-
+<p>提示使用者進行更正時要溫和。使用者使用您的應用程式時，不會自覺是笨蛋。
+若有地方出錯，請提供明確的復原指示，但不需要使用者明瞭技術細節。如果可以，請盡量在幕後修正。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_error.png">
 
@@ -256,15 +256,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="sprinkle-encouragement">分段鼓勵</h4>
-<p>將複雜工作細分成更小的步驟，讓使用者可以輕鬆完成。對動作給予回饋，即使只是個微光效果。
+<p>將複雜工作細分成更小的步驟，讓使用者可以輕鬆完成。對動作給予回饋，即使只是細微的動作。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png">
 
@@ -273,16 +273,16 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="do-heavy-lifting-for-me">為使用者處理繁重的工作</h4>
-<p>讓新手也能做出以前從未想像過可以辦到的事情，讓使用者有專家的感覺。例如，組合多個相片效果的捷徑，只要幾個步驟，即可讓業餘照片令人驚艷。
+<p>讓新手也能做到以前從未想像過可以完成的事情，讓使用者覺得自己是專家。例如，組合多個相片效果的捷徑，只要幾個步驟，即可讓業餘照片令人驚艷。
 
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_heavy_lifting.png">
 
@@ -291,15 +291,15 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
+<div class="cols">
+  <div class="col-7">
 
 <h4 id="make-important-things-fast">快速找到重要的功能</h4>
-<p>並非所有的動作都一視同仁。決定應用程式中最重要的部分，並讓使用者易於找到並可迅速使用，例如相機的快門按鈕或音樂播放器的暫停按鈕。
+<p>並非所有的動作都平等。決定應用程式中最重要的部分，並讓使用者易於找到並可迅速使用，例如相機的快門按鈕或音樂播放器的暫停按鈕。
 </p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
 
     <img src="{@docRoot}design/media/principles_make_important_fast.png">
 
diff --git a/docs/html-intl/intl/zh-tw/design/material/index.jd b/docs/html-intl/intl/zh-tw/design/material/index.jd
index 620ee6e..464dc2a 100644
--- a/docs/html-intl/intl/zh-tw/design/material/index.jd
+++ b/docs/html-intl/intl/zh-tw/design/material/index.jd
@@ -1,7 +1,6 @@
-page.title=材料設計
-page.tags=Material, design
-page.type=設計
-page.image=design/material/images/MaterialLight.png
+page.title=Android 材料設計
+page.tags=Material,design, 設計
+page.image=images/cards/design-material-for-android_2x.jpg
 
 @jd:body
 
@@ -41,25 +40,25 @@
 
 <p itemprop="description">材料設計是一份內容廣泛的綜合性指南，引導您跨平台、跨裝置進行視覺、動態和互動的設計。
 Android 現已納入對材料設計應用程式的支援。
-如果要在 Android 應用程式中使用材料設計，請依照<a href="http://www.google.com/design/spec">材料設計規格</a>中定義的指示，並使用
-Android
-5.0 (API 層級 21) 或後續版本中的新元件和新功能。</p>
+如果要在 Android 應用程式中使用材料設計，請依照<a href="http://www.google.com/design/spec">材料設計規格</a>中定義的指示，並使用 Android 5.0 (API 級別 21) 或後續版本中的新元件和新功能。
+
+</p>
 
 <p>Android 提供下列元素，供您打造材料設計應用程式：</p>
 
 <ul>
-  <li>一個新的設計風格</li>
-  <li>用於複雜檢視的小工具</li>
+  <li>新的設計風格</li>
+  <li>用於複雜視圖的小工具</li>
   <li>自訂陰影和動畫的新 API</li>
 </ul>
 
-<p>如需取得如何在 Android 上實作材料設計的詳細資訊，請詳見<a href="{@docRoot}training/material/index.html">使用材料設計建立應用程式</a>。
+<p>如需取得如何在 Android 上實作材料設計的詳細資訊，請參閱<a href="{@docRoot}training/material/index.html">使用材料設計建立應用程式</a>。
 </p>
 
 
 <h3>材料設計風格</h3>
 
-<p>材料設計風格提供您應用程式使用的新樣式、可以讓您設定色板的系統小工具，並針對輕觸回饋與操作行為轉換提供預設動畫。
+<p>材料設計風格提供您應用程式使用的新樣式、可以讓您設定色板的系統小工具，並針對輕觸回饋與操作 Activity 轉換提供預設動畫。
 </p>
 
 <!-- two columns -->
@@ -92,8 +91,8 @@
 <div style="width:700px;margin-top:25px;margin-bottom:20px">
 <div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
   <img src="{@docRoot}design/material/images/list_mail.png" width="500" height="426" />
-  <p>新的 <code>RecyclerView</code> 小工具是 <code>ListView</code>
-更容易插入的版本，支援不同的版面配置類型，並提供效能改善。</p>
+  <p>新的 <code>RecyclerView</code> 小工具是 <code>ListView</code> 更容易插入的版本，支援不同的版面配置類型，並提供效能改善。
+</p>
 </div>
 <div style="float:left;width:250px;margin-right:0px;">
   <img src="{@docRoot}design/material/images/card_travel.png" width="500" height="426" />
@@ -109,12 +108,12 @@
 
 <h3>檢視陰影</h3>
 
-<p>除了 X 和 Y 屬性外，Android 中的檢視現在也有 Z 屬性。
-這個新屬性代表檢視的高度，這會決定：</p>
+<p>除了 X 和 Y 屬性外，Android 中的視圖現在也有 Z 屬性。
+這個新屬性代表視圖的高度，這會決定：</p>
 
 <ul>
-<li>陰影大小：帶有較高 Z 值的檢視會投射更大的陰影。</li>
-<li>繪製順序：具有較高 Z 值的檢視會顯示在其他檢視之上。</li>
+<li>陰影大小：Z 值較高的視圖會投射更大的陰影。</li>
+<li>繪製順序：Z 值較高的視圖會顯示在其他視圖之上。</li>
 </ul>
 
 <div style="width:290px;margin-left:35px;float:right">
@@ -130,39 +129,38 @@
   </div>
 </div>
 
-<p>如需取得詳細資訊，請參閱<a href="{@docRoot}training/material/shadows-clipping.html">定義陰影和裁剪檢視</a>。
+<p>如需詳細資訊，請參閱<a href="{@docRoot}training/material/shadows-clipping.html">定義陰影和裁剪視圖</a>。
 </p>
 
 
 <h3>動畫</h3>
-
-<p>新的動畫 API 可針對 UI 控制項的輕觸回饋、檢視狀態中的變更，以及行為轉換，讓您建立自訂動畫。
+<p>新的動畫 API 可針對 UI 控制項的輕觸回饋、視圖狀態中的變更，以及操作行為轉換，讓您建立自訂動畫。
 </p>
 
 <p>這些 API 讓您可以：</p>
 
 <ul>
 <li style="margin-bottom:15px">
-回應您檢視中有<strong>輕觸回饋</strong>動畫的輕觸事件。
+回應您視圖中有<strong>輕觸回饋</strong>動畫的輕觸事件。
 </li>
 <li style="margin-bottom:15px">
-隱藏和顯示有<strong>循環顯示</strong>動畫的檢視。
+隱藏和顯示有<strong>循環顯示</strong>動畫的視圖。
 </li>
 <li style="margin-bottom:15px">
-在有自訂<strong>行為轉換</strong>動畫的行為間切換。
+在包含自訂<strong>操作行為轉換</strong>動畫的行為間切換。
 </li>
 <li style="margin-bottom:15px">
 使用<strong>曲線動作</strong>建立更自然的動畫。
 </li>
 <li style="margin-bottom:15px">
-在帶有<strong>檢視狀態變更</strong>動畫的一個或多個檢視屬性中變更動畫。
+在包含<strong>視圖狀態變更</strong>動畫的一個或多個視圖屬性中變更動畫。
 </li>
 <li style="margin-bottom:15px">
-在檢視狀態變更間，顯示<strong>狀態清單可繪項目</strong>中的動畫。
+在視圖狀態變更之間，顯示<strong>狀態清單可繪項目</strong>中的動畫。
 </li>
 </ul>
 
-<p>輕觸回饋動畫會內建於數個標準檢視中，例如按鈕等。新 API 可讓您自訂這些動畫，並將其新增至您的自訂檢視中。
+<p>輕觸回饋動畫會內建於數個標準視圖中，例如按鈕等。新 API 可讓您自訂這些動畫，並將其新增至您的自訂視圖中。
 </p>
 
 <p>如需詳細資訊，請參閱<a href="{@docRoot}training/material/animations.html">定義自訂動畫</a>。
@@ -176,7 +174,7 @@
 <ul>
 <li><strong>矢量可繪項目</strong>可以調整大小，但又不會喪失定義，最適合於應用程式中的單色圖示。
 </li>
-<li><strong>可繪項目著色</strong>可讓您在執行階段將點陣圖定義為 Alpha 遮罩，並以一個顏色進行著色。
+<li><strong>繪製著色</strong>可讓您在執行階段將點陣圖定義為 Alpha 遮罩，並以一個顏色進行著色。
 </li>
 <li><strong>顏色提取</strong>可讓您自動從點陣圖影像中提取顯著顏色。
 </li>
diff --git a/docs/html-intl/intl/zh-tw/design/patterns/compatibility.jd b/docs/html-intl/intl/zh-tw/design/patterns/compatibility.jd
new file mode 100644
index 0000000..b65b90b
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/design/patterns/compatibility.jd
@@ -0,0 +1,70 @@
+page.title=向下相容性
+page.tags="support"
+page.metaDescription=有關 Android 4.x 改寫針對舊硬體和 OS 版本設計的 UI 之備註。
+@jd:body
+
+<a class="notice-developers" href="{@docRoot}training/basics/supporting-devices/index.html">
+  <div>
+    <h3>開發人員文件</h3>
+    <p>支援不同裝置</p>
+  </div>
+</a>
+
+<p>Android 3.0 主要更新包含：</p>
+<ul>
+<li>淘汰導覽硬體鍵 (返回、選單、搜尋、首頁)，以虛擬控制按鍵取代實體導覽按鍵 (返回、首頁、最近使用記錄)。
+</li>
+<li>健全的動作列選單使用模式。</li>
+</ul>
+<p>Android 4.0 版本將平板電腦的變更套用於手機平台。</p>
+
+<h2 id="older-hardware">針對舊版本的硬體及應用程式，改寫 Android 4.0</h2>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>使用虛擬導覽控制鍵的手機</h4>
+<p>專為 Android 3.0 及之後版本設計的應用程式會在動作列中顯示動作。擠不進動作列或重要性不足的動作，會顯示在動作溢位中。
+
+</p>
+<p>使用者可輕觸動作列中的動作溢位以存取它。</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_virtual_nav.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>使用實體導覽鍵的手機</h4>
+<p>使用實體導覽鍵的 Android 手機不會在螢幕底部顯示虛擬導覽列。
+如要存取動作溢位，請使用選單硬體按鍵。所產生的動作彈出式選單的風格與先前範例相同，但會顯示在螢幕頂部。
+</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_physical_buttons.png">
+
+  </div>
+</div>
+
+<div class="cols">
+  <div class="col-6">
+
+<h4>在使用虛擬導覽控制鍵的手機上執行舊版應用程式</h4>
+<p>當您在具備虛擬導覽控制鍵的手機上，執行為 Android 2.3 或之前版本所設計的應用程式時，動作溢位控制會顯示在虛擬導覽列的右側。
+您可以輕觸控制鍵，以顯示傳統 Android 選單風格的應用程式動作。
+</p>
+
+  </div>
+  <div class="col-7">
+
+    <img src="{@docRoot}design/media/compatibility_legacy_apps.png">
+
+  </div>
+</div>
diff --git a/docs/html-intl/intl/zh-tw/design/patterns/confirming-acknowledging.jd b/docs/html-intl/intl/zh-tw/design/patterns/confirming-acknowledging.jd
index ac8975f..a92a017 100644
--- a/docs/html-intl/intl/zh-tw/design/patterns/confirming-acknowledging.jd
+++ b/docs/html-intl/intl/zh-tw/design/patterns/confirming-acknowledging.jd
@@ -2,14 +2,14 @@
 page.tags=dialog,toast,notification
 @jd:body
 
-<p>在某些情況下，當使用者在您應用程式中呼叫一個動作時，最好是透過文字來「確認」(confirm) <em></em>或「確認完成」<em></em>(acknowledge)。</p>
+<p>在某些情況下，當使用者在您應用程式中呼叫一個動作時，最好是透過文字來「確認」<em></em>或「確認完成」<em></em>。</p>
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_confirming.png">
     <p><strong>確認</strong>是要求使用者確認真的要進行剛剛呼叫的動作。在某些情況下，確認訊息出現時會伴隨警告或需要使用者考量是否採取動作的相關重要資訊。</p>
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <img src="{@docRoot}design/media/confirm_ack_acknowledge.png">
     <p><strong>確認完成</strong>是顯示文字，讓使用者知道已經完成剛剛呼叫的動作。這會排除系統正在採取之隱式作業的不確定性。在某些情況下，確認完成出現時會伴隨復原動作的選項。</p>
   </div>
@@ -22,14 +22,14 @@
 <img src="{@docRoot}design/media/confirm_ack_flowchart.png">
 
 <h2>確認</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>範例：Google Play 書籍</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_books.png">
     <p>在此範例中，使用者已要求從其 Google Play 媒體庫中刪除一本書籍。顯示<a href="{@docRoot}design/building-blocks/dialogs.html#alerts">警示</a>來確認此動作，因為使用者必須了解將不再針對任何裝置提供這本書籍。</p>
     <p>設計一個確認的對話方塊時，要讓標題具有意義就必須回應要求的動作。</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>範例：Android Beam</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_beam.png">
     <p>確認不一定要以具有兩個按鈕的警示來呈現。在啟動 Android Beam 之後，會提示使用者輕觸要共用的內容 (在此範例中是一張照片)。如果他們決定不進行，只要移開他們的電話即可。</p>
@@ -37,15 +37,15 @@
 </div>
 
 <h2>確認完成</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>範例：已儲存放棄的 Gmail 草稿</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png">
-    <p>在此範例中，如果使用者從 Gmail 撰寫畫面返回，可能會發生預期外的狀況：會自動儲存目前的草稿。以快顯通知 (toast) 形式出現的確認完成，會讓使用者明瞭此情況。確認完成會在幾秒鐘後淡出。</p>
+    <p>在此範例中，如果使用者從 Gmail 撰寫畫面返回，可能會發生預期外的狀況：會自動儲存目前的草稿。以快顯通知形式出現的確認完成，會讓使用者明瞭此情況。確認完成會在幾秒鐘後淡出。</p>
     <p>在此並不合適使用復原功能，因為儲存動作是由應用程式發起，而非使用者。瀏覽至草稿清單，就可以方便且快速地繼續撰寫。</p>
 
   </div>
-  <div class="layout-content-col span-6">
+  <div class="col-6">
     <h4>範例：已刪除 Gmail 會話群組</h4>
     <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png">
     <p>使用者從 Gmail 清單中刪除一個會話群組後，會出現確認完成訊息，並提供一個復原選項。確認完成會持續出現，直到使用者採取不相關的動作，例如捲動清單。</p>
@@ -53,14 +53,14 @@
 </div>
 
 <h2>無「確認」或「確認完成」</h2>
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
+<div class="cols">
+  <div class="col-6">
     <h4>範例：+1 中</h4>
     <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png">
     <p><strong>確認並非必要</strong>。如果使用者不小心按了 + 1 按鈕，這並不是什麼大問題。他們可以再次輕觸按鈕，復原此動作。</p>
-    <p><strong>確認完成並非必要</strong>。使用者將會看到 +1 彈起並變成紅色。這是個非常明確的訊號。</p>
+    <p><strong>確認完成並非必要</strong>。使用者將會看到 +1 按鈕彈起並變成紅色。這是個非常明確的訊號。</p>
   </div>
-  <div class="layout-content-col span-7">
+  <div class="col-7">
     <h4>範例：從主螢幕移除應用程式</h4>
     <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png">
     <p><strong>確認並非必要</strong>。這是特意設計的動作：使用者必須拖曳項目放到相對較大且隔離的目標上。因此極不可能發生意外狀況。但如果使用者後悔所做的決定，只需幾秒鐘，就可以恢復原狀。</p>
diff --git a/docs/html-intl/intl/zh-tw/design/patterns/navigation.jd b/docs/html-intl/intl/zh-tw/design/patterns/navigation.jd
index db160c2..a568cb1d 100644
--- a/docs/html-intl/intl/zh-tw/design/patterns/navigation.jd
+++ b/docs/html-intl/intl/zh-tw/design/patterns/navigation.jd
@@ -10,71 +10,71 @@
   </div>
 </a>
 
-<p itemprop="description">一致的導覽是整體使用者體驗的必備組成。基本導覽的行為若不一致又令人意外，是最令使用者感到更沮喪的狀況。
+<p itemprop="description">一致的導覽是整體使用者體驗的要件。以不一致且非預期方式運作的基本導覽行為最令使用者感到沮喪。
 Android 3.0 已將重大變更導入全域的導覽行為中。
-完全遵循 [返回] 及 [上一層] 的方針，會讓使用者感到您的應用程式導覽既可靠又符合預期。
+仔細遵循以下指導方針原則以設定 [返回] 及 [上一層] 按鈕，讓您的應用程式更可靠且符合預期。
 </p>
-<p>Android 2.3 和更早版本依賴系統 [返回]
-<em></em>按鈕，以支援應用程式內的導覽。在 Android 3.0 導入動作列之後，出現第二個導覽機制：[上一層]
-<em></em>按鈕，由應用程式圖示和左指符號組成。</p>
+<p>Android 2.3 及之前版本均使用 [返回]<em></em> 按鈕在應用程式中進行導覽。
+在 Android 3.0 導入導覽列功能，使用者有了另一種導覽方式：[上一層]<em></em> 按鈕，由應用程式圖示及左指插入號組成。
+</p>
 
 <img src="{@docRoot}design/media/navigation_with_back_and_up.png">
 
-<h2 id="up-vs-back">[上一層] vs.[返回]</h2>
+<h2 id="up-vs-back">[返回] 及 [上一層]</h2>
 
-<p>[上一層] 按鈕用於在畫面間有階層關係的應用程式中導覽。
-例如，如果畫面 A
-顯示項目清單，然後選擇其中一個項目導致進入畫面 B (更詳細呈現該項目)，那麼畫面 B 應該提供 [上一層] 按鈕，以便返回畫面 A。
+<p>[上一層] 按鈕用於在應用程式中，根據畫面之間的階層關係進行導覽。
+例如，如果畫面 A 顯示項目清單，然後選擇其中一個項目導致進入畫面 B (更詳細呈現該項目)，那麼畫面 B 應該提供 [上一層] 按鈕，以便返回畫面 A。
+
 </p>
-<p>如果畫面是在應用程式中的最頂端 (亦即應用程式的首頁)，則不應該會有 [上一層]按鈕。
+<p>如果畫面是在應用程式中的最頂端 (亦即應用程式的首頁)，則不應該會有 [上一層] 按鈕。
 </p>
 
 <p>系統 [返回] 按鈕用於逆時間順序導覽，透過歷程記錄，可以經歷使用者最近使用過的畫面。
 [返回] 通常基於畫面之間的暫時關係，而非應用程式的階層。
 </p>
 
-<p>當先前檢視的畫面也是目前畫面的階層父項時，按下
-[返回] 按鈕和按下 [上一層] 按鈕效果相同 &mdash; 這是常見的狀況。
-然而，與 [上一層] 按鈕不同的是 (該按鈕可以確保使用者仍停留在您的應用程式內)：[返回]
-按鈕可以讓使用者返回主畫面，或甚至是不同的應用程式。</p>
+<p>當先前檢視的畫面也是目前畫面的階層父項時，按下 [返回] 按鈕和按下 [上一層] 按鈕效果相同 &mdash; 這是常見的狀況。
+
+然而，與 [上一層] 按鈕不同的是 (該按鈕可以確保使用者仍停留在您的應用程式內)：[返回] 按鈕可以讓使用者返回主螢幕，或甚至是不同的應用程式。
+</p>
 
 <img src="{@docRoot}design/media/navigation_up_vs_back_gmail.png">
 
 <p>[返回] 按鈕還支援幾個間接關聯畫面對畫面導覽的行為：
 </p>
 <ul>
-<li>關閉浮動視窗 (對話、快顯)</li>
+<li>關閉浮動視窗 (對話框、快顯)</li>
 <li>關閉內容相關的動作列，並從選取項目移除醒目顯示</li>
 <li>隱藏畫面鍵盤 (IME)</li>
 </ul>
 <h2 id="within-app">在應用程式內導覽</h2>
 
-<h4>導覽至具有多重入口的畫面</h4>
-<p>有時候，一個畫面在應用程式的階層中並沒有嚴謹的位置，而且可以從多個入口存取 &mdash; 例如可以從您應用程式中任何其他畫面存取的設定畫面。在這種情況下，[上一層]
-按鈕應該選擇返回導引至此畫面的前一畫面，這個行為與 [返回] 相同。
+<h4>導覽至具有多個進入點的畫面</h4>
+<p>有時畫面在應用程式中的階層並不明確，可從多個入口點進入畫面 &mdash; 例如，可從應用程式中的任何其他畫面進入的設定畫面。
 
+在這種情況下，應按下 [上一層] 按鈕回到之前的參照畫面，操作方式與 [返回] 按鈕相同。
 </p>
-<h4>在畫面內變更檢視</h4>
-<p>變更畫面的檢視選項並不會變更 [上一層] 或 [返回] 的行為：畫面仍維持在應用程式階層中的相同位置，並不會建立新的導覽歷程記錄。
+<h4>在畫面內變更視圖</h4>
+<p>變更畫面的視圖選項並不會變更 [上一層] 或 [返回] 的行為：畫面仍維持在應用程式階層中的相同位置，並不會建立新的導覽歷程記錄。
 </p>
-<p>這類檢視變更的範例如下：</p>
+<p>這類視圖變更的範例如下：</p>
 <ul>
-<li>使用標籤和/或左與右滑動來切換檢視</li>
-<li>使用下拉清單 (亦即折疊標籤) 切換檢視</li>
+<li>使用標籤和/或左與右滑動來切換視圖</li>
+<li>使用下拉清單 (亦即折疊標籤) 切換視圖</li>
 <li>篩選清單</li>
 <li>對清單排序</li>
 <li>變更顯示特性 (如縮放)</li>
 </ul>
 <h4>在同層級畫面間導覽</h4>
-<p>當您的應用程式支援從項目清單導覽至項目之一的詳細檢視時，使用者通常會想使用方向導覽功能，以便從該項目導覽至清單中的前一個或後一個項目。
+<p>當您的應用程式支援從項目清單導覽至項目之一的詳細視圖時，使用者通常會想使用方向導覽功能，以便從該項目導覽至清單中的前一個或後一個項目。
 
 例如在 Gmail 中，可以很容易從會話群組向左或右滑動，方便檢視相同「收件匣」中的較新或舊會話群組。
-就像在一個畫面中變更檢視時，這類導覽不會變更 [上一層] 或 [返回] 的行為。
+就像在一個畫面中變更視圖時，這類導覽不會變更 [上一層] 或 [返回] 的行為。
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_siblings_gmail.png">
 
-<p>然而有一個明顯的例外是，在不被引用清單綁在一起的相關詳細資料檢視之間瀏覽時 &mdash; 例如在 Play 商店中於相同開發者的不同應用程式之間瀏覽時，或是在相同演出者的專輯間瀏覽時。
+<p>然而有一個明顯的例外是，在未與引用清單繫結在一起的相關詳細資料視圖之間瀏覽時 &mdash; 例如在 Play 商店中於相同開發者的不同應用程式之間瀏覽時，或是在相同演出者的專輯間瀏覽時。
 
 在這些情況下，瀏覽每個連結都會產生歷程記錄，這會造成 [返回] 按鈕會經歷每個先前檢視過的畫面。
 [上一層] 應該會繼續略過這些相關的畫面，並導覽到最近檢視過的容器畫面。
@@ -82,16 +82,16 @@
 
 <img src="{@docRoot}design/media/navigation_between_siblings_market1.png">
 
-<p>基於您對詳細資料檢視的瞭解，您有能力讓 [上一層] 行為甚至變得更聰明。
+<p>基於您對詳細資料視圖的瞭解，您有能力讓 [上一層] 行為甚至變得更聰明。
 再延伸說明之前提及的 Play 商店範例，想像使用者已從最近檢視的「書籍」導覽至「電影」改編的詳細資料。
-在這種情況下，[上一層]
-可以返回到使用者之前沒有導覽過的上層容器 (電影)。</p>
+在這種情況下，[上一層] 可以返回到使用者之前沒有導覽過的上層容器 (電影)。
+</p>
 
 <img src="{@docRoot}design/media/navigation_between_siblings_market2.png">
 
-<h2 id="into-your-app">透過「主畫面小工具」和「通知」，導覽至您的應用程式</h2>
+<h2 id="into-your-app">透過「主螢幕小工具」和「通知」，導覽至您的應用程式</h2>
 
-<p>您可以使用主畫面小工具或通知，協助您直接導覽至深入您應用程式階層中的畫面。
+<p>您可以使用主螢幕小工具或通知，協助您直接導覽至深入您應用程式階層中的畫面。
 例如，Gmail 的「收件匣」小工具和新郵件通知，都可以略過「收件匣」畫面，將使用者直接帶到會話群組檢視之中。
 </p>
 
@@ -100,7 +100,7 @@
 <ul>
 <li>如果目的地畫面通常是透過您應用程式中的一個特定畫面到達，那麼 [上一層] 應該要導覽至該畫面。<em></em>
 </li>
-<li>否則<em></em>， [上一層] 應該導覽至您應用程式的最頂端 (「主」) 畫面。</li>
+<li>否則<em></em>， [上一層] 應該導覽至您應用程式的最頂端 (「主」) 螢幕。</li>
 </ul>
 
 <p>就 [返回] 按鈕而言，您應讓導覽更符合預期，方法是在工作的返回堆疊中，插入前往應用程式最頂端畫面的完整向上導覽路徑。
@@ -108,30 +108,30 @@
 
 </p>
 
-<p>舉例來說，Gmail 的主畫面小工具有一個按鈕，可以直接往下進入撰寫畫面。
-來自撰寫畫面的 [上一層] 或 [返回] 按鈕，會將使用者帶到「收件匣」中，而此處的 [返回] 按鈕則可繼續前往至「主畫面」。
+<p>舉例來說，Gmail 的主螢幕小工具有一個按鈕，可以直接往下進入撰寫畫面。
+來自撰寫畫面的 [上一層] 或 [返回] 按鈕，會將使用者帶到「收件匣」中，而此處的 [返回] 按鈕則可繼續前往至「主螢幕」。
 </p>
 
 <img src="{@docRoot}design/media/navigation_from_outside_back.png">
 
 <h4>間接通知</h4>
 
-<p>當您的應用程式需要同時呈現多個事件的資訊時，可以使用單一通知，引導使用者進入一個插頁畫面。
-此畫面會摘要這些事件，並提供路徑，讓使用者可以深入應用程式之中。這種風格的通知稱為「間接通知」<em></em>。
-
+<p>若應用程式必須同時呈現多個事件，可利用單一通知，引導使用者進入插頁畫面。
+插頁畫面會概述所有事件，並提供讓使用者可以深入應用程式之中的路徑。
+這種通知方式稱為<em>間接通知</em>。
 </p>
 
 <p>與標準 (直接) 通知不同的是，從間接通知的插頁畫面按下 [返回]，會讓使用者返回至通知觸發的起點 &mdash; 無其他畫面會插入至返回堆疊之中。
 
-一旦使用者從插頁畫面繼續進入應用程式之後，[上一層]
-與 [返回] 會如上所述，其行為就像針對標準通知一樣：在應用程式內導覽，而非返回插頁畫面。
+一旦使用者從插頁畫面繼續進入應用程式之後，[上一層] 與 [返回] 會如上所述，其行為就像針對標準通知一樣：在應用程式內導覽，而非返回插頁畫面。
+
 </p>
 
 <p>例如，假設 Gmail 中的使用者收到來自「行事曆」的間接通知。輕觸這個通知會打開插頁畫面，而此畫面會顯示數個不同事件的提醒。
 
 從插頁畫面輕觸 [返回]，會讓使用者返回至 Gmail。輕觸特定事件會將使用者帶離插頁畫面，並進入完整的「行事曆」應用程式，顯示事件的詳細資料。
 
-從事件詳細資料中，[上一層] 和 [返回] 會導覽至「行事曆」的最頂層檢視。</p>
+從事件詳細資料中，[上一層] 和 [返回] 會導覽至「行事曆」的最頂層視圖。</p>
 
 <img src="{@docRoot}design/media/navigation_indirect_notification.png">
 
@@ -139,75 +139,75 @@
 
 <p>快顯通知<em></em>會略過通知匣，直接出現在使用者面前。
 這不常使用，<strong>應該要保留在需要適時回應，以及必須中斷使用者前後關聯動作的時候</strong>。
-例如，Talk
-就使用這種風格，用來提示使用者有朋友邀請加入視訊聊天，而且此邀請會在幾秒之後自動過期。
+例如，Talk 就使用這種風格，用來提示使用者有朋友邀請加入視訊聊天，而且此邀請會在幾秒之後自動過期。
+
 </p>
 
 <p>就導覽行為而言，快顯通知緊接著間接通知插頁畫面的行為。
-[返回] 會關閉快顯通知。如果使用者從快顯導覽進入通知應用程式，[上一層]
-和 [返回] 會遵循標準通知的規則，只在應用程式內導覽。
+[返回] 會關閉快顯通知。如果使用者從快顯導覽進入通知應用程式，[上一層] 和 [返回] 會遵循標準通知的規則，只在應用程式內導覽。
+
 </p>
 
 <img src="{@docRoot}design/media/navigation_popup_notification.png">
 
 <h2 id="between-apps">在應用程式間導覽</h2>
 
-<p>Android 系統的基本優點之一是應用程式互相啟動的能力，讓使用者能夠直接從一個應用程式導覽至另一個應用程式。
-例如，需要擷取一張相片的應用程式可以啟動「相機」應用程式，而此應用程式會將相片傳回引用的應用程式。開發人員可以輕鬆利用其他應用程式的程式碼，而使用者在經常執行的動作中可以享受一致性的體驗，這對雙方都是一大好處。
+<p>Android 系統的主要優勢在於應用程式之間可彼此互連，使用者可從一個應用程式中直接導覽至另一個應用程式。
+舉例來說，需要拍攝相片的的應用程式，可開啟「相機」應用程式，然後再返回原始參照應用程式中。
 
-
+這項功能不僅使開發人員可輕鬆地利用其他應用程式的程式碼，還可讓使用者透過一致的作業方式享受常用功能。
 
 </p>
 
-<p>要瞭解應用程式對應用程式的導覽，重要的是要瞭解以下討論的 Android 架構行為。
+<p>欲了解應用程式對應用程式的導覽行為，必須先了解以下介紹的 Android 架構行為。
 </p>
 
-<h4>活動、工作和意圖</h4>
+<h4>Activity、工作和意圖</h4>
 
-<p>在 Android 中，<strong>活動</strong>是一個應用程式元件，定義了資訊畫面，以及使用者可以執行的所有關聯動作。
-您的應用程式是個活動的集合，包括您可以建立及您能從其他應用程式重複使用的活動。
+<p>在 Android 中，<strong>Activity</strong> 是一個應用程式元件，定義了資訊畫面，以及使用者可以執行的所有關聯動作。
+您的應用程式是個 Activity 的集合，包括您可以建立及您能從其他應用程式重複使用的 Activity。
 </p>
 
-<p><strong>工作</strong>是使用者遵循以達到目標的一系列活動。單一工作可以利用來自單一應用程式的活動，或是汲取數個不同應用程式的活動。
+<p><strong>工作</strong>是使用者遵循以達到目標的一系列 Activity。單一工作可以利用來自單一應用程式的 Activity，或是汲取數個不同應用程式的 Activity。
 
 </p>
 
-<p><strong>意向</strong>是指應用程式所發出想要另一套應用程式協助執行某動作訊號的機制。
-應用程式的活動可指示其可回應哪些意向。
-針對如「共用」等常見意向，使用者可能已安裝許多可以滿足此要求的應用程式。
+<p><strong>意圖</strong>是指應用程式所發出想要另一套應用程式協助執行某動作訊號的機制。
+應用程式的 Activity 可指示其可回應哪些意圖。
+針對如「共用」等常見意圖，使用者可能已安裝許多可以滿足此要求的應用程式。
 </p>
 
-<h4>範例：在應用程式間導覽，以支援共用</h4>
+<h4>例如：在多個應用程式中導覽以支援共用功能</h4>
 
-<p>要理解活動、工作和意向如何攜手合作，請思考應用程式如何讓使用者使用另一套應用程式來共用內容。例如，從「主」畫面啟動 Play 商店應用程式，開始新工作 A (見下圖)。
-
-在導覽經歷 Play 商店，並輕觸一本促銷的書籍以查看詳細資料後，使用者仍會停留在相同工作中，並透過新增行為延伸工作。
-觸發「共用」動作會提示使用者一個對話框，列出已註冊可用來處理「共用」意向的每個活動 (來自不同的應用程式)。
+<p>要了解使用活動、工作和意圖如何相互作用，必須先考慮一個應用程式如何讓使用者利用另一個應用程式共用內容。
+例如，在首頁中開啟 Play 商店應用程式，並開始工作 A (如下所示)。
+使用者在 Play 商店應用程式中結束導覽後，輕觸促銷的書籍以查看細節，這時仍會停留在相同的工作中，同時新增活動以延伸功能。
+觸發「共用」動作會提示使用者一個對話框，列出已註冊可用來處理「共用」意圖的每個 Activity (來自不同的應用程式)。
 
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_inward.png">
 
-<p>當使用者選擇透過 Gmail 共用，Gmail
-的撰寫活動會被新增為工作 A 的延續 &mdash; 而不會建立新工作。如果 Gmail 有本身的工作正在背景執行，這並不會影響該工作。
+<p>當使用者選擇透過 Gmail 共用，Gmail 的撰寫 Activity 會被新增為工作 A 的延續 &mdash; 而不會建立新工作。
+如果 Gmail 有本身的工作正在背景執行，這並不會影響該工作。
 </p>
 
-<p>從撰寫活動中，傳送訊息或輕觸 [返回] 按鈕，會讓使用者返回至書籍詳細資料的活動。
-繼續輕觸 [返回] 則會經由 Play 商店往回導覽，最終到達「主畫面」。
+<p>從撰寫 Activity 中，傳送訊息或輕觸 [返回] 按鈕，會讓使用者返回至書籍詳細資料的 Activity。
+繼續輕觸 [返回] 則會經由 Play 商店往回導覽，最終到達「主螢幕」。
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_back.png">
 
-<p>然而，透過輕觸撰寫行為的 [上一層]，代表使用者指明停留在 Gmail 的意願。
-Gmail 的會話群組清單活動會隨即出現，並針對該活動建立一個新的工作 B。新工作的最後根源都是「主畫面」，所以從會話群組輕觸 [返回] 會返回至該處。
+<p>然而，透過輕觸撰寫 Activity 的 [上一層]，代表使用者指明停留在 Gmail 的意願。
+Gmail 的會話群組清單 Activity 會隨即出現，並針對該 Activity 建立一個新的工作 B。新工作的最後根源都是「主螢幕」，所以從會話群組輕觸 [返回] 會返回至該處。
 </p>
 
 <img src="{@docRoot}design/media/navigation_between_apps_up.png">
 
-<p>工作 A 仍然存在背景之中，而使用者可能會在稍後返回 (例如，透過「最近」畫面)。
+<p>工作 A 仍然存在背景之中，而使用者可能會在稍後返回 (例如，透過「最近使用記錄」畫面)。
 如果 Gmail 在背景正在執行自己的工作，則其會被工作 B 取代 &mdash; 並捨棄之前的前後關係，而就使用者的新目標。
 </p>
 
-<p>當您的應用程式註冊來處理具有深入應用程式階層活動的意向時，請參考<a href="#into-your-app">透過主畫面視窗小工具和通知，導覽至您的應用程式</a>，取得如何指定 [上一層] 導覽的指導方針。
+<p>當您的應用程式註冊來處理具有深入應用程式階層 Activity 的意圖時，請參考<a href="#into-your-app">透過主螢幕小工具和通知，導覽至您的應用程式</a>，取得如何指定 [上一層] 導覽的指導方針。
 
 </p>
diff --git a/docs/html-intl/intl/zh-tw/guide/components/activities.jd b/docs/html-intl/intl/zh-tw/guide/components/activities.jd
new file mode 100644
index 0000000..ea09349
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/activities.jd
@@ -0,0 +1,756 @@
+page.title=Activity
+page.tags=Activity,意圖
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>本文件內容</h2>
+<ol>
+  <li><a href="#Creating">建立 Activity</a>
+    <ol>
+      <li><a href="#UI">實作使用者介面</a></li>
+      <li><a href="#Declaring">在宣示說明中宣告 Activity</a></li>
+    </ol>
+  </li>
+  <li><a href="#StartingAnActivity">啟動 Activity</a>
+    <ol>
+      <li><a href="#StartingAnActivityForResult">啟動 Activity 以取得結果</a></li>
+    </ol>
+  </li>
+  <li><a href="#ShuttingDown">關閉 Activity</a></li>
+  <li><a href="#Lifecycle">管理 Activity 生命週期</a>
+    <ol>
+      <li><a href="#ImplementingLifecycleCallbacks">實作生命週期回呼</a></li>
+      <li><a href="#SavingActivityState">儲存 Activity 狀態</a></li>
+      <li><a href="#ConfigurationChanges">處理設定變更</a></li>
+      <li><a href="#CoordinatingActivities">協調 Activity</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>重要類別</h2>
+<ol>
+  <li>{@link android.app.Activity}</li>
+</ol>
+
+<h2>另請參閱</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/tasks-and-back-stack.html">工作和返回堆疊</a>
+</li>
+</ol>
+
+</div>
+</div>
+
+
+
+<p>{@link android.app.Activity} 是提供畫面的應用程式元件，使用者可以與此畫面互動以執行動作，例如撥號、拍照、傳送電子郵件或檢視地圖。
+
+每個 Activity 都會有專屬視窗，用於繪製其使用者介面。視窗一般會佔滿螢幕，但也可能小於螢幕或在其他視窗上方浮動。
+
+</p>
+
+<p> 應用程式通常由多個 Activity 組成，這些 Activity 之間的繫結鬆散。
+一般來說，應用程式中的某個 Activity 會指定為「主要」Activity。使用者第一次啟動應用程式時，會將此 Activity 向使用者顯示。
+然後，每個 Activity 可以啟動另一個 Activity，以執行不同的動作。
+每次啟動新的 Activity 時，之前的 Activity 會停止，但系統將該 Activity 保留在堆疊中(即「返回堆疊」)。
+
+新的 Activity 啟動時會推送至返回堆疊，然後取得使用者焦點。
+返回堆疊遵循基本的「後進先出」堆疊機制，因此，使用者完成目前的 Activity，按下 [返回] 按鈕<em></em>時，目前的 Activity 會從堆疊被推出 (並終止)，然後繼續之前的 Activity。
+
+(返回堆疊在<a href="{@docRoot}guide/components/tasks-and-back-stack.html">工作和返回堆疊</a>文件中，有更詳細的說明)。
+
+</p>
+
+<p>Activity 因啟動新的 Activity 而停止時，Activity 的生命週期回呼方法會通知此狀態的變更。由於 Activity 狀態的變更 &mdash; 可能是系統建立、停止、繼續或終止 Activity 時 &mdash; Activity 會收到數個回呼方法，而且每個回呼都提供您執行適合該次狀態變更的特定工作機會。
+
+
+
+
+例如，停止時，您的 Activity 應釋放任何大型物件，例如網路或資料庫連線。
+Activity 繼續時，您可以重新取得必要資源，並繼續之前中斷的動作。
+這些狀態轉換都是 Activity 生命週期的一部分。
+</p>
+
+<p>本文件的其他部分會討論建置和使用 Activity 的基本概念，包括完整討論 Activity 生命週期的運作方式，讓您可以正確地管理各種 Activity 狀態之間的轉換。
+
+</p>
+
+
+
+<h2 id="Creating">建立 Activity</h2>
+
+<p>如要建立 Activity，您必須建立 {@link android.app.Activity} 的子類別 (或它現有的子類別)。
+在您的子類別中，您需要實作回呼方法，當 Activity 在其生命週期的各種狀態之間轉換時，系統可以呼叫此回呼方法。例如，Activity 建立、停止、繼續或終止時。
+
+最重要的兩個回呼方法如下：
+</p>
+
+<dl>
+  <dt>{@link android.app.Activity#onCreate onCreate()}</dt>
+  <dd>您必須實作此方法。系統建立您的 Activity 時會呼叫此方法。
+在您的實作中，應該初始化 Activity 的基本元件。
+
+    最重要的是，您必須在這裡呼叫 {@link android.app.Activity#setContentView
+ setContentView()}，才能定義 Activity 使用者介面的版面配置。</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>系統呼叫此方法做為使用者離開您的 Activity 的第一個指標 (但並非一定表示該 Activity 遭到終止)。
+您通常需要透過這個方法提交要在目前的使用者工作階段以外保留的任何變更 (原因在於使用者可能不會返回)。
+
+</dd>
+</dl>
+
+<p>還有一些您應使用的其他生命週期回呼方法，以便提供 Activity 之間流暢的使用者體驗，並處理讓您的 Activity 停止、甚至終止的非預期中斷。
+
+如需所有生命週期回呼方法的相關資訊，請參閱<a href="#Lifecycle">管理 Activity 生命週期</a>。
+</p>
+
+
+
+<h3 id="UI">實作使用者介面</h3>
+
+<p> Activity 的使用者介面是由階層的檢視所提供 &mdash; 衍生自 {@link android.view.View} 類別的物件。
+每個檢視都控制 Activity 視窗內特定的長方形空間，並且可以回應使用者的互動。
+例如，檢視可能是按鈕，使用者觸碰此按鈕時會初始化一個動作。
+</p>
+
+<p>Android 提供許多現成的檢視，您可以用於設計並組織您的版面配置。
+「小工具」是在畫面上提供視覺和互動元素的檢視，例如按鈕、文字欄位、核取方塊或只是一張影像。
+「版面配置」是衍生自 {@link
+android.view.ViewGroup} 的檢視，讓子檢視可具有獨特的版面配置模型，例如線性版面配置、網格版面配置或相對版面配置。
+您也可以製作 {@link android.view.View} 和
+{@link android.view.ViewGroup} 類別 (或現有子類別) 的子類別，以建立您自己的小工具和版面配置，然後套用到您的 Activity 版面配置。
+</p>
+
+<p>使用檢視定義版面配置的最常見方式，是使用 XML 版面配置檔案 (儲存於您的應用程式資源)。
+這樣一來，您可以分別維護使用者介面的設計和定義 Activity 行為的原始程式碼。
+您可以使用 {@link android.app.Activity#setContentView(int) setContentView()} 傳送版面配置的資源 ID，將版面配置設為 Activity 的 UI。
+
+不過，您也可以透過將新的 {@link
+android.view.View} 插入 {@link android.view.ViewGroup}，然後藉由將根
+{@link android.view.ViewGroup} 傳送給 {@link android.app.Activity#setContentView(View)
+setContentView()} 來使用該版面配置，以便在您的 Activity 程式碼中建立新的 {@link android.view.View}，並且建置視圖層次。
+</p>
+
+<p>如需關於建立使用者介面的詳細資訊，請參閱<a href="{@docRoot}guide/topics/ui/index.html">使用者介面</a>。</p>
+
+
+
+<h3 id="Declaring">在宣示說明中宣告 Activity</h3>
+
+<p>您必須在宣示說明檔案中宣告 Activity，系統才能加以存取。
+如要宣告您的 Activity，請開啟宣示說明檔案，然後新增 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 元素做為 <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a> 元素的下層物件。
+
+範例：</p>
+
+<pre>
+&lt;manifest ... &gt;
+  &lt;application ... &gt;
+      &lt;activity android:name=".ExampleActivity" /&gt;
+      ...
+  &lt;/application ... &gt;
+  ...
+&lt;/manifest &gt;
+</pre>
+
+<p>您可以包括此元素中的其他屬性 (attribute) 來定義屬性 (property)，例如 Activity 的標籤、Activity 的圖示或 Activity UI 的設計風格。<a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">{@code android:name}</a> 屬性 (attribute) 是唯一必須的屬性 &mdash; 它會指定 Activity 的類別名稱。
+
+
+一旦發佈應用程式，您就不得變更此名稱，這是因為這樣做可能會破壞一些功能，例如應用程式捷徑 (閱讀部落格貼文：<a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">不能變更的事項</a>)。
+
+
+</p>
+
+<p>請參閱 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 元素參考文件，進一步瞭解如何在宣示說明中宣告 Activity。
+</p>
+
+
+<h4>使用意圖篩選器</h4>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> 元素也可以指定各種意圖篩選器 &mdash; 使用 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> 元素 &mdash; 以便宣告其他應用程式元件啟動它的方式。
+</p>
+
+<p>使用 Android SDK 工具建立新的應用程式時，自動為您建立的
+虛設常式 Activity 會內含意圖篩選器。含意圖篩選器會宣告回應
+「主要」動作的 Activity，並且應放置在「啟動器」類別。意圖篩選器看起來會如下所示：
+</p>
+
+<pre>
+&lt;activity android:name=".ExampleActivity" android:icon="@drawable/app_icon"&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 元素指出這是應用程式的「主要」進入點。<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 元素指出此 Activity 應列於系統的應用程式啟動器 (以允許使用者啟動此 Activity)。
+</p>
+
+<p>如果您本來就要讓應用程式獨自運作，不要讓其他應用程式啟動其 Activity，則不需要任何其他意圖篩選器。
+只有一個 Activity 可以有「主要」動作和「啟動器」類別，如同上一個範例所示。
+您不要讓其他應用程式使用的 Activity，則不應使用意圖篩選器，而且您可以使用明確的意圖自行加以啟動 (將於以下小節討論)。
+
+</p>
+
+<p>不過，如果您的 Activity 需要回應從其他應用程式 (和您自己的應用程式) 傳送過來的隱含式意圖，則必須為您的 Activity 定義額外的意圖篩選器。
+
+針對您要回應的意圖類型，您必須包括 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a>，其中內含
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 元素和 <a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 元素 (選用) 和/或 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a> 元素。這些元素會指定您的 Activity 可以回應哪些類型的意圖。
+</p>
+
+<p>如需關於您的 Activity 如何回應意圖的詳細資訊，請參閱<a href="{@docRoot}guide/components/intents-filters.html">意圖和意圖篩選器</a>。
+</p>
+
+
+
+<h2 id="StartingAnActivity">啟動 Activity</h2>
+
+<p>透過呼叫 {@link android.app.Activity#startActivity
+ startActivity()}、將 {@link android.content.Intent} (描述要啟動的 Activity) 傳給它，您可以啟動另一個 Activity。
+意圖會指出您要啟動的那個 Activity，或描述您要執行的動作類型 (而讓系統為您選取適當的 Activity，甚至可以是來自不同應用程式的 Activity)。
+
+
+意圖也可以攜帶少量的資料給已啟動的 Activity 使用。
+</p>
+
+<p>在您自己的應用程式內運作時，通常只要啟動已知的 Activity。
+ 建立意圖並明確定義您要啟動的 Activity (使用類別名稱)，可以達成此目的。
+例如，以下示範 Activity 如何啟動另一個名為 {@code
+SignInActivity} 的 Activity：</p>
+
+<pre>
+Intent intent = new Intent(this, SignInActivity.class);
+startActivity(intent);
+</pre>
+
+<p>不過，您的應用程式也希望可以執行其他動作，例如使用您 Activity 中的資料以傳送電子郵件、文字訊息或狀態更新。
+在此情況下，您的應用程式可能就沒有專屬的 Activity 來執行這類動作。因此，您可以改為運用裝置上其他應用程式提供的 Activity。讓這些 Activity 為您執行所需的動作。
+
+這正是意圖寶貴的地方 &mdash; 您可以建立意圖，在其中描述您要執行的動作，然後系統會從另一個應用程式啟動適當的 Activity。
+
+
+如果有多個 Activity 都可以處理意圖，則使用者可以選取要使用哪個 Activity。
+例如，如果要讓使用者傳送電子郵件訊息，您可以建立下列意圖：
+
+</p>
+
+<pre>
+Intent intent = new Intent(Intent.ACTION_SEND);
+intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);
+startActivity(intent);
+</pre>
+
+<p>加入意圖的 {@link android.content.Intent#EXTRA_EMAIL} 額外值是一個字串陣列，由應該要寄送電子郵件的電子郵件地址所組成。
+電子郵件應用程式回應此意圖時，它會讀取額外值中提供的字串陣列，並將這些內容放置在編寫電子郵件表單的「收件人」欄位。
+
+在此情況下，電子郵件應用程式的 Activity 會啟動，並且會在使用者完成後，繼續您的 Activity。
+</p>
+
+
+
+
+<h3 id="StartingAnActivityForResult">啟動 Activity 以取得結果</h3>
+
+<p>有時候，您會想要收到由您啟動 Activity 的結果。如要接收結果，請透過呼叫 {@link android.app.Activity#startActivityForResult
+ startActivityForResult()} (而非 {@link android.app.Activity#startActivity
+ startActivity()}) 以啟動 Activity。
+如要接收後續 Activity 的結果，請實作 {@link android.app.Activity#onActivityResult onActivityResult()} 回呼方法。
+
+後續 Activity 完成時，會將 {@link
+android.content.Intent} 中的結果傳回到您的 {@link android.app.Activity#onActivityResult onActivityResult()} 方法。
+</p>
+
+<p>例如，您可能會讓使用者在聯絡人中挑選一位，讓您的 Activity 可以針對該聯絡人的資訊進行一些處理。
+以下示範如何建立這類意圖，並處理結果：
+</p>
+
+<pre>
+private void pickContact() {
+    // Create an intent to "pick" a contact, as defined by the content provider URI
+    Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
+    startActivityForResult(intent, PICK_CONTACT_REQUEST);
+}
+
+&#64;Override
+protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+    // If the request went well (OK) and the request was PICK_CONTACT_REQUEST
+    if (resultCode == Activity.RESULT_OK &amp;&amp; requestCode == PICK_CONTACT_REQUEST) {
+        // Perform a query to the contact's content provider for the contact's name
+        Cursor cursor = getContentResolver().query(data.getData(),
+        new String[] {Contacts.DISPLAY_NAME}, null, null, null);
+        if (cursor.moveToFirst()) { // True if the cursor is not empty
+            int columnIndex = cursor.getColumnIndex(Contacts.DISPLAY_NAME);
+            String name = cursor.getString(columnIndex);
+            // Do something with the selected contact's name...
+        }
+    }
+}
+</pre>
+
+<p>此範例顯示您應該在您的 {@link
+android.app.Activity#onActivityResult onActivityResult()} 方法中使用的基本邏輯，以便處理 Activity 結果。
+第一個條件會檢查要求是否成功 &mdash; 如果成功，則{@code resultCode} 會是 {@link android.app.Activity#RESULT_OK} &mdash;，以及此結果回應的要求是否為已知的要求 &mdash; 範例中的 {@code requestCode} 符合以 {@link android.app.Activity#startActivityForResult
+startActivityForResult()} 傳送的第二個參數。
+
+
+程式碼在這裡透過查詢 {@link android.content.Intent} ({@code data} 參數) 中傳回的資料，來處理 Activity 結果。
+</p>
+
+<p>其中的過程是，{@link
+android.content.ContentResolver} 針對內容供應程式執行查詢，所傳回的
+{@link android.database.Cursor} 可以讀取查詢到的資料。如需詳細資訊，請參閱<a href="{@docRoot}guide/topics/providers/content-providers.html">內容供應程式</a>。
+</p>
+
+<p>如需關於使用意圖的詳細資訊，請參閱<a href="{@docRoot}guide/components/intents-filters.html">意圖和意圖篩選器</a>。
+</p>
+
+
+<h2 id="ShuttingDown">關閉 Activity</h2>
+
+<p>呼叫 Activity 的 {@link android.app.Activity#finish
+finish()} 方法，可以關閉此 Activity。您也可以呼叫
+{@link android.app.Activity#finishActivity finishActivity()}，關閉您之前啟動的個別 Activity。</p>
+
+<p class="note"><strong>注意：</strong>大多數情況，您不應使用這些方法明確地結束 Activity。
+如同下一節所討論的 Activity 生命週期，Android 系統會為您管理 Activity 的生命週期，所以您不需要結束您自己的 Activity。
+
+呼叫這些方法對使用者體驗有負面的影響，只有在您十分確定不希望使用者返回 Activity 的此執行個體時，才加以呼叫。
+
+</p>
+
+
+<h2 id="Lifecycle">管理 Activity 生命週期</h2>
+
+<p>實作回呼方法來管理 Activity 的生命週期，對於開發強大且有彈性的應用程式來說，相當重要。
+
+Activity 的生命週期受到相關其他 Activity、本身的工作以及返回堆疊的直接影響。
+</p>
+
+<p>Activity 基本上有以下三種狀態：</p>
+
+<dl>
+  <dt><i>已繼續</i></dt>
+    <dd>Activity 位於螢幕的前景，具有使用者焦點 (此狀態有時候也稱為「執行中」)。
+</dd>
+
+  <dt><i>已暫停</i></dt>
+    <dd>前景中有其他具備焦點的 Activity，但系統仍然可以看到這個 Activity。也就是說，這個 Activity 上方有另一個，該 Activity 為半透明，或是未覆蓋整個螢幕。
+
+已暫停的 Activity 是完全有效的 ({@link android.app.Activity} 物件會保留在記憶體中、維護所有狀態和成員資訊，以及繼續附加至視窗管理員)，但在系統記憶體極低的情況下會遭到終止。
+
+</dd>
+
+  <dt><i>已停止</i></dt>
+    <dd>另一個 Activity 已完全遮蓋原本的 Activity (原本的 Activity 現在位於「背景」)。
+已停止的 Activity 仍然是有效的 ({@link android.app.Activity} 物件會保留在記憶體中、維護所有狀態和成員資訊，但「不會」<em></em>附加至視窗管理員)。
+
+只是使用者不會再看到已停止的 Activity，而且其他地方需要記憶體時，系統會將它終止。
+</dd>
+</dl>
+
+<p>如果 Activity 已暫停或已停止，系統可以透過要求它結束 (呼叫其 {@link android.app.Activity#finish finish()} 方法) 或直接終止其處理程序，將它從記憶體中刪除。
+
+Activity 遭到結束或終止後，再次開啟時，必須全部重新建立。
+</p>
+
+
+
+<h3 id="ImplementingLifecycleCallbacks">實作生命週期回呼</h3>
+
+<p>Activity 在不同的狀態之間轉換時 (如上所述)，會透過各種回呼方法進行通知。
+所有的回呼方法都是虛設，請加以覆寫，以便在 Activity 狀態變更時，執行適當的工作。
+下列主要 Activity 包括每個基礎生命週期方法：
+</p>
+
+
+<pre>
+public class ExampleActivity extends Activity {
+    &#64;Override
+    public void {@link android.app.Activity#onCreate onCreate}(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // The activity is being created.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStart onStart()} {
+        super.onStart();
+        // The activity is about to become visible.
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onResume onResume()} {
+        super.onResume();
+        // The activity has become visible (it is now "resumed").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onPause onPause()} {
+        super.onPause();
+        // Another activity is taking focus (this activity is about to be "paused").
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onStop onStop()} {
+        super.onStop();
+        // The activity is no longer visible (it is now "stopped")
+    }
+    &#64;Override
+    protected void {@link android.app.Activity#onDestroy onDestroy()} {
+        super.onDestroy();
+        // The activity is about to be destroyed.
+    }
+}
+</pre>
+
+<p class="note"><strong>注意：</strong>實作這些生命週期方法時，一定要先呼叫超級類別實作，才能執行任何工作，如同以上範例所示。
+</p>
+
+<p>總而言之，這些方法定義了 Activity 的整個生命週期。透過實作這些方法，您可以監視 Activity 生命週期中的三個巢狀迴圈：
+ </p>
+
+<ul>
+<li>Activity 的<b>整個生命週期</b>是介於 {@link
+android.app.Activity#onCreate onCreate()} 呼叫和 {@link
+android.app.Activity#onDestroy} 呼叫之間。您的 Activity 應在 {@link android.app.Activity#onCreate onCreate()} 中設定「全域」狀態 (例如定義版面配置)，並且在 {@link android.app.Activity#onDestroy} 中釋放所有剩餘的資源。
+
+例如，如果您的 Activity 有一個執行緒在背景執行，並從網路下載資料，那麼最好可以在 {@link android.app.Activity#onCreate onCreate()} 中建立該執行緒，然後在 {@link
+android.app.Activity#onDestroy} 中將它停止。
+
+</li>
+
+<li><p>Activity 的<b>可見生命週期</b>是介於 {@link
+android.app.Activity#onStart onStart()} 呼叫和 {@link
+android.app.Activity#onStop onStop()} 呼叫之間。在此期間，使用者可以在螢幕上看到該 Activity，並與之互動。
+例如，啟動新的 Activity，而這個 Activity 不再看得到時，會呼叫 {@link android.app.Activity#onStop onStop()}。
+在這兩個方法之間，您可以維護需要讓使用者看到的資源。
+例如，您可以在{@link
+android.app.Activity#onStart onStart()} 中註冊
+{@link android.content.BroadcastReceiver}，以監視影響到 UI 的變更，然後當使用者不再看到您顯示的內容時，在 {@link android.app.Activity#onStop onStop()} 中將它取消註冊。
+
+系統可以在 Activity 的整個生命週期時，多次呼叫 {@link android.app.Activity#onStart onStart()} 和 {@link
+android.app.Activity#onStop onStop()}，因為 Activity 對使用者而言會一直在顯示和隱藏之間切換。
+</p></li>
+
+<li><p>Activity 的<b>前景生命週期</b>是介於 {@link
+android.app.Activity#onResume onResume()} 呼叫和 {@link android.app.Activity#onPause
+onPause()} 呼叫之間。在此期間，Activity 會在螢幕上所有其他 Activity 的前面，而且具有使用者輸入焦點。
+Activity 可以經常在前景和背景之間轉換 &mdash; 例如，裝置進入睡眠或顯示對話方塊時，會呼叫 {@link android.app.Activity#onPause onPause()}。
+
+由於此狀態可能會經常轉換，因此這兩個方法中的程式碼應十分精簡，這樣可以避免使用者在轉換時等待。
+</p></li>
+</ul>
+
+<p>圖 1 說明 Activity 在轉換狀態時的可能迴圈和路徑。長方形代表您可以實作的回呼方法，以便 Activity 在轉換狀態時執行操作。
+
+ <p>
+
+<img src="{@docRoot}images/activity_lifecycle.png" alt="" />
+<p class="img-caption"><strong>圖 1.</strong>Activity 生命週期。</p>
+
+<p>表 1 列出相同的生命週期回呼方法，其中詳細描述每個回呼方法，並且指出每個回呼方法在 Activity 整個生命週期中的位置，包括系統是否可以在回呼方法完成後終止 Activity。
+
+
+</p>
+
+<p class="table-caption"><strong>表 1.</strong>Activity 生命週期回呼方法摘要。
+</p>
+
+<table border="2" width="85%" frame="hsides" rules="rows">
+<colgroup align="left" span="3"></colgroup>
+<colgroup align="left"></colgroup>
+<colgroup align="center"></colgroup>
+<colgroup align="center"></colgroup>
+
+<thead>
+<tr><th colspan="3">方法</th> <th>描述</th> <th>完成後是否可終止？</th> <th>下一個方法</th></tr>
+</thead>
+
+<tbody>
+<tr>
+  <td colspan="3" align="left"><code>{@link android.app.Activity#onCreate onCreate()}</code></td>
+  <td>一開始建立 Activity 時呼叫。
+      您應該在這裡所有的一般靜態設定 &mdash; 建立檢視、將資料繫結至清單等等。
+「套件」物件會傳送給此方法，如果有擷取到狀態，此物件會內含 Activity 的上一個狀態 (請參閱下文的<a href="#actstate">儲存 Activity 狀態</a>)。
+
+
+
+      <p>後面一定會接著 {@code onStart()}。</p></td>
+  <td align="center">否</td>
+      <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td rowspan="5" style="border-left: none; border-right: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onRestart
+onRestart()}</code></td>
+   <td>Activity 已停止後，即將再次啟動之前呼叫。
+
+       <p>後面一定會接著 {@code onStart()}。</p></td>
+   <td align="center">否</td>
+   <td align="center">{@code onStart()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStart onStart()}</code></td>
+   <td>Activity 即將要讓使用者看到之前呼叫。
+       <p>如果 Activity 移到前景，後面會接著 {@code onResume()}，如果變成隱藏，後面會接著 {@code onStop()}。
+</p></td>
+    <td align="center">否</td>
+    <td align="center">{@code onResume()} <br/>或<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td rowspan="2" style="border-left: none;">&nbsp;&nbsp;&nbsp;&nbsp;</td>
+   <td align="left"><code>{@link android.app.Activity#onResume onResume()}</code></td>
+   <td>Activity 即將與使用者開始互動之前呼叫。
+此時，Activity 位於 Activity 堆疊的最上方，接受使用的輸入。
+
+       <p>後面一定會接著 {@code onPause()}。</p></td>
+   <td align="center">否</td>
+   <td align="center">{@code onPause()}</td>
+</tr>
+
+<tr>
+   <td align="left"><code>{@link android.app.Activity#onPause onPause()}</code></td>
+   <td>系統即將開始繼續另一個 Activity 時呼叫。
+認可對永久資料的未儲存變更、停止動畫，以及會使用 CPU 等等資源的其他操作時，一般會使用此方法。
+
+不論此操作會執行什麼動作，都要快速完成，這是因為此方法傳回後，才會繼續下一個 Activity。
+
+       <p>如果 Activity 返回前景，後面會接著 {@code onResume()}，如果變成使用者看不到它，後面會接著 {@code onStop()}。
+
+</td>
+   <td align="center"><strong style="color:#800000">是</strong></td>
+   <td align="center">{@code onResume()} <br/>或<br/> {@code onStop()}</td>
+</tr>
+
+<tr>
+   <td colspan="2" align="left"><code>{@link android.app.Activity#onStop onStop()}</code></td>
+   <td>使用者看不到 Activity 時呼叫。Activity 遭到終止或另一個 Activity (不論是現有 Activity 或新的 Activity) 已經繼續，而且將它覆蓋住，就會發生此情形。
+
+
+       <p>如果 Activity 回來與使用者互動，後面會接著 {@code onRestart()}，如果 Activity 離開，後面會接著
+ {@code onDestroy()}。
+</p></td>
+   <td align="center"><strong style="color:#800000">是</strong></td>
+   <td align="center">{@code onRestart()} <br/>或<br/> {@code onDestroy()}</td>
+</tr>
+
+<tr>
+   <td colspan="3" align="left"><code>{@link android.app.Activity#onDestroy
+onDestroy()}</code></td>
+   <td>在 Activity 終止前呼叫。Activity 會接收到的最後呼叫。
+Activity 正在完成 (有人在 Activity 上呼叫 <code>{@link android.app.Activity#finish
+       finish()}</code>)，或系統正在暫時終止 Activity 的這個執行個體以節省空間時，會呼叫此方法。
+
+您可以使用 <code>{@link
+       android.app.Activity#isFinishing isFinishing()}</code> 方法分辨這兩種情況。
+</td>
+   <td align="center"><strong style="color:#800000">是</strong></td>
+   <td align="center"><em>無</em></td>
+</tr>
+</tbody>
+</table>
+
+<p>此欄標示為「完成後是否可終止？」表示系統是否可以「在方法傳回後」隨時終止代管 Activity 的處理程序<em></em>，而不需要執行另一行 Activity 的程式碼。
+
+有三個方法標示為「是」：({@link
+android.app.Activity#onPause
+onPause()}、{@link android.app.Activity#onStop onStop()} 以及 {@link android.app.Activity#onDestroy
+onDestroy()})。由於 {@link android.app.Activity#onPause onPause()} 是這三個方法中的第一個方法，Activity 建立後，{@link android.app.Activity#onPause onPause()} 是一定會呼叫的最後一個方法，之後處理程序才能加以終止<em></em> &mdash; 如果系統必須緊急收回記憶體，可能就不會呼叫 {@link
+android.app.Activity#onStop onStop()} 和 {@link android.app.Activity#onDestroy onDestroy()}。
+
+
+
+因此，您應該使用 {@link android.app.Activity#onPause onPause()} 將極為重要的永久資料 (例如使用者的編輯內容) 寫入儲存空間。
+不過，您應選擇哪些資訊必須在 {@link android.app.Activity#onPause onPause()} 期間加以保留，這是因為此方法中的任何程序遭到封鎖，都無法轉換到下一個 Activity，而且會讓使用者體驗變慢。
+
+
+</p>
+
+<p> 在「是否可終止」<b></b>欄標示為「否」的方法，從呼叫這些方法的那一刻起，會保護代管 Activity 的處理程序不會遭到終止。
+因此，Activity 從 {@link android.app.Activity#onPause onPause()} 傳回到呼叫
+ {@link android.app.Activity#onResume onResume()} 的期間為可終止。
+再次呼叫和傳回
+{@link android.app.Activity#onPause onPause()} 之前，Activity 為不可終止。 </p>
+
+<p class="note"><strong>注意：</strong>表 1 中定義為不是「可終止」的 Activity 仍可遭到系統終止 &mdash; 但只會發生在無技可施的情況下。
+
+Activity 可加以終止的時機，於<a href="{@docRoot}guide/components/processes-and-threads.html">處理和執行緒</a>文件中有更詳細的討論。
+
+</p>
+
+
+<h3 id="SavingActivityState">儲存 Activity 狀態</h3>
+
+<p><a href="#Lifecycle">管理 Activity 生命週期</a>的簡介中提到，當 Activity 暫停或停止時，會保留 Activity 的狀態。
+
+這點是成立的，原因在於當 {@link android.app.Activity} 物件暫停或停止時，它仍然保留在記憶體中 &mdash; 關於它的成員和目前狀態的所有資訊，仍然為有效的。
+
+因此，使用者在 Activity 內所做的任何變更，都會保留下來。所以，當 Activity 返回前景 (當它「繼續」時)，那些變更仍然會在原地。
+
+</p>
+
+<p>不過，當系統終止 Activity 以收回記憶體時，{@link
+android.app.Activity} 物件會遭到終止，所以系統就無法將它及其狀態完好無缺地繼續。
+如果使用者瀏覽回 {@link android.app.Activity} 物件，系統必須加以重新建立。
+但是，使用者不會注意到系統已終止該 Activity 並加以重新建立，可能因此期待 Activity 就跟之前的狀態一樣。
+
+如果是這樣，您可以實作額外的回呼方法，以確認 Activity 狀態相關的重要資訊會保留下來。此回呼方法讓您儲存關於 Activity 狀態的資訊：{@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}。
+
+</p>
+
+<p>系統會在終止 Activity 之前呼叫 {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()}。
+系統會將 {@link android.os.Bundle} 傳送給此方法，您可以使用 {@link
+android.os.Bundle#putString putString()} 和 {@link
+android.os.Bundle#putInt putInt()} 之類的方法，將 Activity 相關的狀態資訊以名稱-值組的方式儲存。
+
+然後，如果系統終止應用程式處理程序，並且使用者瀏覽回您的 Activity，則系統會重新建立 Activity，然後將 {@link android.os.Bundle} 傳送給 {@link android.app.Activity#onCreate onCreate()} 和 {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()}。
+
+您可以使用以上其中一種方法，從 {@link android.os.Bundle} 擷取已儲存的狀態，然後還原 Activity 狀態。
+
+如果沒有狀態資訊可供還原，則傳送過來的 {@link
+android.os.Bundle} 為空值 (null) (第一次建立 Activity 時，就是這種情況)。
+</p>
+
+<img src="{@docRoot}images/fundamentals/restore_instance.png" alt="" />
+<p class="img-caption"><strong>圖 2.</strong>Activity 返回使用者焦點，同時具備完整狀態的兩種方式：Activity 遭到終止，然後重新建立，Activity 必須還原之前儲存的狀態；或者Activity 已停止，然後繼續，Activity 狀態維持完整。
+
+
+</p>
+
+<p class="note"><strong>注意：</strong>不保證在您的 Activity 遭到終止之前，一定會呼叫 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}，這是因為有時會發生不需要儲存狀態的情形 (例如，使用者使用「返回」按鈕離開您的 Activity 時<em></em>，原因在於使用者明確地關閉 Activity)。
+
+
+
+如果系統要呼叫 {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()}，會在 {@link
+android.app.Activity#onStop onStop()} 之前呼叫，可能會在 {@link android.app.Activity#onPause
+onPause()} 之前呼叫。</p>
+
+<p>不過，即使您沒有做任何事，沒有實作 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()}，有些 Activity 狀態會經由{@link android.app.Activity} 類別的預設實作 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} 而還原。
+具體來說，預設實作會針對版面配置中的每一個 {@link
+android.view.View} 呼叫對應的 {@link
+android.view.View#onSaveInstanceState onSaveInstanceState()} 方法，這樣可以讓每個檢視提供本身應該要儲存的相關資訊。
+
+在 Android 架構中，幾乎每個小工具都適當地實作此方法，因此 UI 中可見的變更都會自動儲存，並於 Activity 重新建立時加以還原。
+
+例如，{@link android.widget.EditText} 小工具會儲存使用者輸入的任何文字，而 {@link android.widget.CheckBox} 小工具則會儲存是否勾選。
+
+您只要針對需要儲存狀態的每個小工具，提供唯一的 ID (使用 <a href="{@docRoot}guide/topics/resources/layout-resource.html#idvalue">{@code android:id}</a> 屬性) 即可。
+如果小工具沒有 ID，則系統無法儲存其狀態。
+</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<p>您也可以明確地讓版面配置中的檢視停止儲存其狀態，只要將
+{@link android.R.attr#saveEnabled android:saveEnabled} 屬性設為 {@code "false"}，或呼叫 {@link android.view.View#setSaveEnabled setSaveEnabled()} 方法即可。
+您通常不應停用儲存狀態的功能，不過，如果您想要還原不同的 Activity UI 狀態，則另當別論。
+</p>
+</div>
+</div>
+
+<p>儘管 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} 的預設實作會儲存 Activity UI 相關的實用資訊，您仍然需要加以覆寫，以儲存額外的資訊，例如，您需要儲存 Activity 生命期間變更的成員值 (此真可能與 UI 中要還原的值有關，但保留那些 UI 值的成員預設不會加以還原)。
+
+
+
+</p>
+
+<p>由於 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} 的預設實作可協助儲存 UI 的狀態，因此，如果您覆寫此方法以儲存額外的狀態資訊，一定要再執行任何動作之前，呼叫 {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()} 的超級類別實作。
+
+
+同樣的情況，您也要呼叫 {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} 的超級類別實作 (如果您將它覆寫)，讓預設實作可以還原檢視狀態。
+</p>
+
+<p class="note"><strong>注意：</strong>由於不保證一定會呼叫 {@link android.app.Activity#onSaveInstanceState
+onSaveInstanceState()}，您只能用它來記錄 Activity 的短暫狀態 (UI 的狀態) &mdash; 不應該用它儲存永久資料。
+
+而是要在使用者離開 Activity 時，利用 {@link
+android.app.Activity#onPause onPause()} 來儲存永內資料 (例如要儲存到資料庫的資料)。
+</p>
+
+<p>測試應用程式是否能夠還原其狀態的好方式，只要旋轉裝置，改變螢幕方向即可。
+螢幕方向改變時，系統會終止 Activity 並重新建立，以便套用針對新的螢幕設定而提供使用的替代資源。
+
+單單就這一點而言，您的 Activity 在重新建立時可以完整還原，就非常重要了，這是因為使用者操作應用程式時會經常旋轉螢幕。
+
+</p>
+
+
+<h3 id="ConfigurationChanges">處理設定變更</h3>
+
+<p>有些裝置設定可以在執行階段期間進行變更 (例如，螢幕方向、鍵盤可用性和語言)。
+發生這類變更時，Android 會重新建立執行中的 Activity (系統呼叫 {@link android.app.Activity#onDestroy}，然後立即呼叫 {@link
+android.app.Activity#onCreate onCreate()})。
+此行為的設計透過自動重新載入應用程式與提供的替代資源 (例如針對不同的螢幕方向和大小的不同版面配置)，可協助應用程式適應新的設定。
+
+
+</p>
+
+<p>如果您如上所述正確地設計 Activity，處理由於螢幕方向變更的重新啟動，然後還原 Activity 的狀態，您的應用程式對於 Activity 生命週期中的不可預期事件，會更具有抗性。
+
+</p>
+
+<p>處理這類重新啟動的最佳方式，是使用 {@link
+android.app.Activity#onSaveInstanceState onSaveInstanceState()} 和 {@link
+android.app.Activity#onRestoreInstanceState onRestoreInstanceState()} (或 {@link
+android.app.Activity#onCreate onCreate()}) 儲存並還原 Activity 的狀態，如同上一節所討論。
+</p>
+
+<p>如需關於執行階段發生的設定變更，以及如何加以處理的詳細資訊，請參閱<a href="{@docRoot}guide/topics/resources/runtime-changes.html">處理執行階段變更</a>指南。
+
+</p>
+
+
+
+<h3 id="CoordinatingActivities">協調 Activity</h3>
+
+ <p>Activity 啟動另一個 Activity 時，它們兩者都經歷生命週期轉換。第一個 Activity 暫停並停止 (雖然如果仍然可以在背景看到它，表示它並未真的「停止」)，而另一個 Activity 建立起來。
+
+若這些 Activity 共用儲存到磁碟或其他地方的資料，第一個 Activity 在第二個 Activity 已建立之前，不會完全停止，瞭解這件事很重要。然而，啟動第二個 Activity 的處理程序與停止第一個 Activity 的處理程序會重疊。
+
+
+</p>
+
+<p>生命週期回呼的順序定義的很好，尤其是當兩個 Activity 位於相同的處理程序，而其中一個 Activity 啟動另一個 Activity 時。
+Activity A 啟動 Activity B 時所發生的操作順利如下：
+ </p>
+
+<ol>
+<li>Activity A 的 {@link android.app.Activity#onPause onPause()} 方法會執行。</li>
+
+<li>Activity B 按順序執行 {@link android.app.Activity#onCreate onCreate()}、{@link
+android.app.Activity#onStart onStart()} 以及 {@link android.app.Activity#onResume onResume()} 方法。
+(Activity B 現在擁有使用者焦點)。</li>
+
+<li>然後，如果螢幕上已經看不到 Activity A，就會執行 Activity A 的 {@link
+android.app.Activity#onStop onStop()} 方法。</li>
+</ol>
+
+ <p>這一段可預測的生命週期回呼，可以讓您管理 Activity 之間資訊的轉換。
+例如，如果第一個 Activity 停止時，您必須寫入資料庫，讓接下來的 Activity 可以讀取，那麼您應該在 {@link android.app.Activity#onPause onPause()} 期間寫入，而不是在 {@link
+android.app.Activity#onStop onStop()} 期間寫入。
+
+</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how Android maintains a history of activities and
+enables user multitasking, continue with the <b><a
+href="{@docRoot}guide/components/tasks-and-back-stack.html">Tasks and Back
+Stack</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/zh-tw/guide/components/bound-services.jd b/docs/html-intl/intl/zh-tw/guide/components/bound-services.jd
new file mode 100644
index 0000000..da47634
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/bound-services.jd
@@ -0,0 +1,658 @@
+page.title=繫結服務
+parent.title=服務
+parent.link=services.html
+@jd:body
+
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>本文件內容</h2>
+<ol>
+  <li><a href="#Basics">基本概念</a></li>
+  <li><a href="#Creating">建立繫結服務</a>
+    <ol>
+      <li><a href="#Binder">延伸 Binder 類別</a></li>
+      <li><a href="#Messenger">使用 Messenger</a></li>
+    </ol>
+  </li>
+  <li><a href="#Binding">繫結至服務</a></li>
+  <li><a href="#Lifecycle">管理繫結服務的週期</a></li>
+</ol>
+
+<h2>重要類別</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.content.ServiceConnection}</li>
+  <li>{@link android.os.IBinder}</li>
+</ol>
+
+<h2>範例</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+      RemoteService}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>另請參閱</h2>
+<ol>
+  <li><a href="{@docRoot}guide/components/services.html">服務</a></li>
+</ol>
+</div>
+
+
+<p>繫結服務是主從介面中的伺服器。繫結服務讓元件 (例如 Activity) 可以繫結至服務、傳送要求、接收回應，甚至執行處理程序間通訊 (IPC)。
+
+繫結服務通常只會在服務另一個應用程式元件時才存在，而且不會在背景中一直執行。
+</p>
+
+<p>本文會告訴您如何建立繫結服務，包括如何從其他應用程式元件繫結至服務。
+不過，如需關於服務的一般其他資訊，可參閱<a href="{@docRoot}guide/components/services.html">服務</a>文件，例如如何從服務傳遞通知、設定服務在前景執行等等。
+
+</p>
+
+
+<h2 id="Basics">基本概念</h2>
+
+<p>繫結服務是 {@link android.app.Service} 類別的實作，允許其他應用程式繫結至此實作，並與之互動。
+若服務要要提供繫結功能，您必須實作 {@link android.app.Service#onBind onBind()} 回呼方法。
+此方法會傳回 {@link android.os.IBinder} 物件，其中定義程式設計介面。用戶端可以使用此介面與服務互動。
+
+</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>繫結至已啟動的服務</h3>
+
+<p>我們在<a href="{@docRoot}guide/components/services.html">服務</a>文件中討論過，您可以建立已啟動且繫結的服務。
+也就是說，此服務可以透過呼叫 {@link android.content.Context#startService startService()} 加以啟動，讓此服務一直無限執行，也可以透過呼叫 {@link
+android.content.Context#bindService bindService()}，讓用戶端繫結至此服務。
+
+
+  <p>如果您允許服務被啟動且繫結，當服務啟動後，系統「不會」<em></em>在所有用戶端都解除繫結時將此服務終結。
+您必須透過呼叫 {@link android.app.Service#stopSelf stopSelf()} 或 {@link
+android.content.Context#stopService stopService()} 明確地停止服務。
+</p>
+
+<p>雖然您通常只會實作 {@link android.app.Service#onBind onBind()} 或<em></em> {@link android.app.Service#onStartCommand onStartCommand()}，但有時候需要實作兩者。
+
+例如，此功能對於音樂播放器就很實用，除了可以讓服務無限期執行，也可以提供繫結功能。
+這樣一來，Activity 就可以啟用服務並播放音樂，然後即使使用者離開應用程式後，音樂仍然繼續播放。
+使用者後續回到此應用程式時，Activity 可以繫結至服務，以重新取得播放的控制權。
+</p>
+
+<p>務必閱讀<a href="#Lifecycle">管理繫結服務的週期</a>，以取得關於新增繫結至已啟動的服務時，此服務週期的詳細資訊。
+
+</p>
+</div>
+</div>
+
+<p>用戶端可以透過呼叫 {@link android.content.Context#bindService
+bindService()} 繫結至服務。這麼做時，用戶端必須實作 {@link
+android.content.ServiceConnection} 以監視與服務之間的連線狀況。{@link
+android.content.Context#bindService bindService()} 方法會立即傳回 (不含值)，當 Android 系統在用戶端和服務之間建立連線時，會呼叫 {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} (位於 {@link
+android.content.ServiceConnection}) 以傳遞 {@link android.os.IBinder} (用戶端可以用來與服務溝通)。
+
+
+</p>
+
+<p>多個用戶端可以同時連線至該服務。不過，系統只會在用戶端第一次繫結時，呼叫服務的
+{@link android.app.Service#onBind onBind()} 方法，以擷取 {@link android.os.IBinder}。
+然後，系統會將同一個 {@link android.os.IBinder} 傳遞給其他任何繫結的用戶端，不會再次呼叫 {@link android.app.Service#onBind onBind()}。
+</p>
+
+<p>最後一個用戶端從服務解除繫結時，系統會終結服務 (除非服務也是由 {@link android.content.Context#startService startService()} 所啟動)。
+</p>
+
+<p>實作繫結服務時，最重要的部分是定義您的 {@link android.app.Service#onBind onBind()} 回呼方法傳回的介面。
+您可以使用幾種不同的方式來定義服務的 {@link android.os.IBinder} 介面，以下小節將討論其中的每一種技術。
+
+</p>
+
+
+
+<h2 id="Creating">建立已繫結的服務</h2>
+
+<p>建立提供繫結功能的服務時，您必須提供 {@link android.os.IBinder} 程式設計介面。用戶端可以使用此介面與服務互動。
+定義介面有三種方式：
+</p>
+
+<dl>
+  <dt><a href="#Binder">延伸 Binder 類別</a></dt>
+  <dd>如果您的服務只讓您自己的應用程式使用，而且跟用戶端執行在同一個處理程序 (此作法很常見)，則應該要透過延伸 {@link android.os.Binder} 類別，並從
+{@link android.app.Service#onBind onBind()} 傳回此類別的執行個體來建立介面。
+
+用戶端接收 {@link android.os.Binder} 後，可以用它直接存取 {@link android.os.Binder} 實作或 {@link android.app.Service} 提供的公用方法。
+
+
+  <p>若您的服務只是您自己應用程式的背景工作者，建議使用此方式。
+除非您的服務是由其他應用程式或跨個別處理程序使用，才不用以此方式建立自己的介面。
+</dd>
+
+  <dt><a href="#Messenger">使用 Messenger</a></dt>
+  <dd>如果您的介面需要跨不同處理程序運作，則可以建立內含 {@link android.os.Messenger} 服務的介面。
+此服務定義了回應不同類型 {@link
+android.os.Message} 物件的 {@link android.os.Handler}。
+這個 {@link android.os.Handler} 是 {@link android.os.Messenger} 的基礎，之後可以與用戶端分享 {@link android.os.IBinder}，讓用戶端使用 {@link
+android.os.Message} 物件傳送命令給此服務。
+
+此外，用戶端可以定義專屬的 {@link android.os.Messenger}，服務就可以傳回訊息。
+
+  <p>這是處理程序間通訊 (IPC) 最簡單的執行方式，因為 {@link
+android.os.Messenger} 會將所有要求都排列到單一個執行緒，因此，就不用將服務設計成執行緒安全的形式。
+</p>
+  </dd>
+
+  <dt>使用 AIDL</dt>
+  <dd>AIDL (Android 介面定義語言) 的工作是將物件分解為作業系統瞭解的始類型，然後將這些原始類型在各個處理程序間進行封送，以執行 IPC。先前使用 {@link android.os.Messenger} 的技術，實際上就是以 AIDL 作為底層結構。
+
+
+如上所述，{@link android.os.Messenger} 會在單一執行緒中建立所有用戶端要求的佇列，所以服務一次會接收一個要求。
+不過，如果您要讓服務可以同時處理多個要求，則可以直接使用 AIDL。
+
+在此情況下，您的服務必須具備多執行緒的功能，而且是以執行緒安全的形式建置。
+  <p>如要直接使用 AIDL，您必須建立 {@code .aidl} 檔案，並在其中定義程式設計介面。
+Android SDK 工具會使用此檔案產生一個抽象類別，以便實作介面並處理 IPC。您就可以在服務內加以延伸。
+
+</p>
+  </dd>
+</dl>
+
+  <p class="note"><strong>注意：</strong>大部分應用程式<strong>不應</strong>使用 AIDL 建立繫結服務，若自行建立的話，就需要實作多執行緒功能，可能會導致更複雜的實作。
+
+因此，AIDL 不適用於大部分應用程式，而且本文不會討論如何在您的服務中使用 AIDL。
+如果您確定需要直接使用 AIDL，請參閱 <a href="{@docRoot}guide/components/aidl.html">AIDL</a> 文件。
+
+</p>
+
+
+
+
+<h3 id="Binder">延伸 Binder 類別</h3>
+
+<p>如果您的服務只會在本機應用程式使用，而且不需要跨處理程序運作，則可以實作您自己的 {@link android.os.Binder} 類別，讓用戶端直接存取服務中的公用方法。
+
+</p>
+
+<p class="note"><strong>注意：</strong>用戶端和服務都位於相同應用程式和處理程序時才適用，這也是最常見的情況。
+例如，需要將 Activity 繫結到其專屬服務 (在背景播放音樂)的音樂應用程式，就很適合。
+
+</p>
+
+<p>設定的方式如下：</p>
+<ol>
+  <li>在您的服務中建立 {@link android.os.Binder} 的執行個體，以具備以下其中一種功用：
+    <ul>
+      <li>包含用戶端可以呼叫的公用方法</li>
+      <li>傳回目前的 {@link android.app.Service} 執行個體，其中含有用戶端可以呼叫的公用方法
+</li>
+      <li>傳回由服務所裝載另一個類別的執行個體，而此服務含有用戶端可以呼叫的公用方法
+</li>
+    </ul>
+  <li>從 {@link
+android.app.Service#onBind onBind()} 回呼方法傳回此 {@link android.os.Binder} 的執行個體。</li>
+  <li>在用戶端方面，從 {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} 回呼方法接收 {@link android.os.Binder}，然後使用提供的方法呼叫繫結服務。
+</li>
+</ol>
+
+<p class="note"><strong>注意：</strong>服務和用戶端必須位於相同的應用程式，是因為用戶端才可以轉換傳回的物件，然後正確地呼叫其 API。
+服務和用戶端也必須位於相同的處理程序，因為此技術不會執行任何跨處理程序間旳封送。
+
+</p>
+
+<p>例如，以下的服務可以讓用戶端透過實作的 {@link android.os.Binder} 存取服務中的方法：
+</p>
+
+<pre>
+public class LocalService extends Service {
+    // Binder given to clients
+    private final IBinder mBinder = new LocalBinder();
+    // Random number generator
+    private final Random mGenerator = new Random();
+
+    /**
+     * Class used for the client Binder.  Because we know this service always
+     * runs in the same process as its clients, we don't need to deal with IPC.
+     */
+    public class LocalBinder extends Binder {
+        LocalService getService() {
+            // Return this instance of LocalService so clients can call public methods
+            return LocalService.this;
+        }
+    }
+
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        return mBinder;
+    }
+
+    /** method for clients */
+    public int getRandomNumber() {
+      return mGenerator.nextInt(100);
+    }
+}
+</pre>
+
+<p>{@code LocalBinder} 提供 {@code getService()} 方法，讓用戶端擷取 {@code LocalService} 目前的執行個體。
+這樣可以讓用戶端呼叫服務中的公用方法。
+例如，用戶端可以從服務呼叫 {@code getRandomNumber()}。</p>
+
+<p>當按一下按鈕時，會發生繫結至 {@code LocalService} 並呼叫 {@code getRandomNumber()}的 Activity：
+</p>
+
+<pre>
+public class BindingActivity extends Activity {
+    LocalService mService;
+    boolean mBound = false;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to LocalService
+        Intent intent = new Intent(this, LocalService.class);
+        bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+
+    /** Called when a button is clicked (the button in the layout file attaches to
+      * this method with the android:onClick attribute) */
+    public void onButtonClick(View v) {
+        if (mBound) {
+            // Call a method from the LocalService.
+            // However, if this call were something that might hang, then this request should
+            // occur in a separate thread to avoid slowing down the activity performance.
+            int num = mService.getRandomNumber();
+            Toast.makeText(this, "number: " + num, Toast.LENGTH_SHORT).show();
+        }
+    }
+
+    /** Defines callbacks for service binding, passed to bindService() */
+    private ServiceConnection mConnection = new ServiceConnection() {
+
+        &#64;Override
+        public void onServiceConnected(ComponentName className,
+                IBinder service) {
+            // We've bound to LocalService, cast the IBinder and get LocalService instance
+            LocalBinder binder = (LocalBinder) service;
+            mService = binder.getService();
+            mBound = true;
+        }
+
+        &#64;Override
+        public void onServiceDisconnected(ComponentName arg0) {
+            mBound = false;
+        }
+    };
+}
+</pre>
+
+<p>上述範例顯示：用戶端如何使用 
+{@link android.content.ServiceConnection} 的實作和 {@link
+android.content.ServiceConnection#onServiceConnected onServiceConnected()} 回呼，繫結至服務。下一節提供關於繫結至服務處理程序的詳細資訊。
+</p>
+
+<p class="note"><strong>注意：</strong>上述範例未明確從服務解除繫結，但所有用戶端都應該在適當時間解除繫結 (例如，Activity 暫停時)。
+</p>
+
+<p>如要取得更多範例程式碼，請參閱 <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a> 中的 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+LocalService.java}</a> 類別和 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.html">{@code
+LocalServiceActivities.java}</a> 類別。</p>
+
+
+
+
+
+<h3 id="Messenger">使用 Messenger</h3>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h4>與 AIDL 的比較</h4>
+  <p>需要執行 IPC 時，使用 {@link android.os.Messenger} 作為介面較簡單 (與使用 AIDL 實作介面相比)，因為 {@link android.os.Messenger} 佇列都會呼叫服務，但是單純的 AIDL 介面會同時將要求傳送給服務。因此，服務必須具備處理多執行緒功能。
+
+
+</p>
+  <p>對於大部分應用程式而言，服務不需要執行多執行緒，所以使用 {@link
+android.os.Messenger} 讓服務一次處理一個呼叫。如果您的服務必須處理多執行緒，則要使用 <a href="{@docRoot}guide/components/aidl.html">AIDL</a> 定義您的介面。
+</p>
+</div>
+</div>
+
+<p>如果服務要和遠端處理程序溝通，則可以使用 
+{@link android.os.Messenger} 為您的服務提供介面。此技術讓您不需要使用 AIDL，就可以執行處理程序間通訊 (IPC)。
+</p>
+
+<p>以下是使用 {@link android.os.Messenger} 的摘要：</p>
+
+<ul>
+  <li>此服務實作 {@link android.os.Handler}，可以從用戶端接收每個呼叫的回呼。
+</li>
+  <li>{@link android.os.Handler} 用於建立 {@link android.os.Messenger} 物件 (這是 {@link android.os.Handler} 的參照)。
+</li>
+  <li>{@link android.os.Messenger} 會建立 {@link android.os.IBinder}，服務會從 {@link android.app.Service#onBind onBind()} 傳回給用戶端。
+</li>
+  <li>用戶端使用 {@link android.os.IBinder} 將 {@link android.os.Messenger} (參照服務的 {@link android.os.Handler}) 具現化，用戶端就可以用來將
+{@link android.os.Message} 物件傳送給服務。
+</li>
+  <li>服務會在其 {@link
+android.os.Handler} 中接收每個 {@link android.os.Message} &mdash; 更明確地說，就是在 {@link android.os.Handler#handleMessage
+handleMessage()} 方法中加以接收。</li>
+</ul>
+
+
+<p>這樣一來，用戶端就不需要呼叫服務的任何「方法」。用戶端只要傳遞「訊息」({@link android.os.Message} 物件)，服務就會在其 {@link android.os.Handler} 中接收。
+
+</p>
+
+<p>以下是使用 {@link android.os.Messenger} 介面的簡單範例服務：</p>
+
+<pre>
+public class MessengerService extends Service {
+    /** Command to the service to display a message */
+    static final int MSG_SAY_HELLO = 1;
+
+    /**
+     * Handler of incoming messages from clients.
+     */
+    class IncomingHandler extends Handler {
+        &#64;Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_SAY_HELLO:
+                    Toast.makeText(getApplicationContext(), "hello!", Toast.LENGTH_SHORT).show();
+                    break;
+                default:
+                    super.handleMessage(msg);
+            }
+        }
+    }
+
+    /**
+     * Target we publish for clients to send messages to IncomingHandler.
+     */
+    final Messenger mMessenger = new Messenger(new IncomingHandler());
+
+    /**
+     * When binding to the service, we return an interface to our messenger
+     * for sending messages to the service.
+     */
+    &#64;Override
+    public IBinder onBind(Intent intent) {
+        Toast.makeText(getApplicationContext(), "binding", Toast.LENGTH_SHORT).show();
+        return mMessenger.getBinder();
+    }
+}
+</pre>
+
+<p>請注意，
+{@link android.os.Handler} 中的 {@link android.os.Handler#handleMessage handleMessage()} 方法是服務接收傳入 {@link android.os.Message} 的位置，也是根據 {@link android.os.Message#what} 成員，決定後續執行動作的位置。
+</p>
+
+<p>用戶端只需要根據服務傳回的 {@link
+android.os.IBinder}，建立 {@link android.os.Messenger}，然後使用 {@link
+android.os.Messenger#send send()} 傳送訊息。例如，以下的簡單 Activity 會繫結至服務，然後將 {@code MSG_SAY_HELLO} 訊息傳遞給服務：
+</p>
+
+<pre>
+public class ActivityMessenger extends Activity {
+    /** Messenger for communicating with the service. */
+    Messenger mService = null;
+
+    /** Flag indicating whether we have called bind on the service. */
+    boolean mBound;
+
+    /**
+     * Class for interacting with the main interface of the service.
+     */
+    private ServiceConnection mConnection = new ServiceConnection() {
+        public void onServiceConnected(ComponentName className, IBinder service) {
+            // This is called when the connection with the service has been
+            // established, giving us the object we can use to
+            // interact with the service.  We are communicating with the
+            // service using a Messenger, so here we get a client-side
+            // representation of that from the raw IBinder object.
+            mService = new Messenger(service);
+            mBound = true;
+        }
+
+        public void onServiceDisconnected(ComponentName className) {
+            // This is called when the connection with the service has been
+            // unexpectedly disconnected -- that is, its process crashed.
+            mService = null;
+            mBound = false;
+        }
+    };
+
+    public void sayHello(View v) {
+        if (!mBound) return;
+        // Create and send a message to the service, using a supported 'what' value
+        Message msg = Message.obtain(null, MessengerService.MSG_SAY_HELLO, 0, 0);
+        try {
+            mService.send(msg);
+        } catch (RemoteException e) {
+            e.printStackTrace();
+        }
+    }
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+        // Bind to the service
+        bindService(new Intent(this, MessengerService.class), mConnection,
+            Context.BIND_AUTO_CREATE);
+    }
+
+    &#64;Override
+    protected void onStop() {
+        super.onStop();
+        // Unbind from the service
+        if (mBound) {
+            unbindService(mConnection);
+            mBound = false;
+        }
+    }
+}
+</pre>
+
+<p>注意，此範例並未顯示服務回應用戶端的方式。如果您希望
+服務有所回應，則同時需要在用戶端建立 {@link android.os.Messenger}。之後，用戶端接收 {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()} 回呼時，會傳送 {@link android.os.Message} 給服務，其中包括用戶端的 {@link android.os.Messenger} (位於 {@link android.os.Messenger#send send()} 方法的 {@link android.os.Message#replyTo} 參數中)。
+
+
+</p>
+
+<p>您可以在 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerService.html">{@code
+MessengerService.java}</a> (服務) 和 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.html">{@code
+MessengerServiceActivities.java}</a> (用戶端) 的範例中看到如何進行雙向傳訊的例子。</p>
+
+
+
+
+
+<h2 id="Binding">繫結至服務</h2>
+
+<p>應用程式元件 (用戶端) 可以透過呼叫
+{@link android.content.Context#bindService bindService()}，繫結至服務。然後，Android 系統會呼叫服務的 {@link android.app.Service#onBind
+onBind()} 方法 (此方法傳回 {@link android.os.IBinder} 以便與服務互動)。
+</p>
+
+<p>繫結為非同步。{@link android.content.Context#bindService
+bindService()} 會立即傳回，但「不會」將<em></em> {@link android.os.IBinder} 傳回給用戶端。
+如要接收 {@link android.os.IBinder}，用戶端必須建立 {@link
+android.content.ServiceConnection} 的執行個體，然後將此執行個體傳送給 {@link android.content.Context#bindService
+bindService()}。{@link android.content.ServiceConnection} 內含回呼方法，系統會呼叫此方法以傳遞 {@link android.os.IBinder}。
+</p>
+
+<p class="note"><strong>注意：</strong>只有 Activity、服務以及內容提供者可以繫結至服務 &mdash; 您<strong>不能</strong>從廣播接收者繫結至服務。
+</p>
+
+<p>因此，如要從用戶端繫結至服務，必須符合下列條件： </p>
+<ol>
+  <li>實作 {@link android.content.ServiceConnection}。
+    <p>實作中必須覆寫兩個回呼方法：</p>
+    <dl>
+      <dt>{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()}</dt>
+        <dd>系統會呼叫此方法來傳遞 {@link android.os.IBinder} (由服務的 {@link android.app.Service#onBind onBind()} 方法所傳回)。
+</dd>
+      <dt>{@link android.content.ServiceConnection#onServiceDisconnected
+onServiceDisconnected()}</dt>
+        <dd>與服務之間的連線突然遺失時 (例如服務當機或遭到終止時)，Android 系統會呼收此方法。
+用戶端解除繫結時，「不會」<em></em>呼叫此方法。
+</dd>
+    </dl>
+  </li>
+  <li>呼叫會傳送 {@link
+android.content.ServiceConnection} 實作的 {@link
+android.content.Context#bindService bindService()}。 </li>
+  <li>系統呼叫 {@link android.content.ServiceConnection#onServiceConnected
+onServiceConnected()} 回呼方法時，您就可以使用介面定義的方法，開始呼叫服務。
+</li>
+  <li>如要與服務中斷連線，請呼叫 {@link
+android.content.Context#unbindService unbindService()}。
+    <p>用戶端遭到終結時，會與服務解除繫結。不過，您應該要在與服務完成互動時，或者 Activity 暫停，要讓服務未使用時可以加以關閉的情況下，一定要解除繫結。
+
+(以下將有繫結和解除繫結適當時機的詳細討論)。
+</p>
+  </li>
+</ol>
+
+<p>例如，下列程式碼片段會透過<a href="#Binder">延伸 Binder 類別</a>，將用戶端連線到上述建立的服務，因此用戶端只要將傳回的
+{@link android.os.IBinder} 轉換為 {@code LocalService} 類別，然後要求 {@code
+LocalService} 執行個體：
+</p>
+
+<pre>
+LocalService mService;
+private ServiceConnection mConnection = new ServiceConnection() {
+    // Called when the connection with the service is established
+    public void onServiceConnected(ComponentName className, IBinder service) {
+        // Because we have bound to an explicit
+        // service that is running in our own process, we can
+        // cast its IBinder to a concrete class and directly access it.
+        LocalBinder binder = (LocalBinder) service;
+        mService = binder.getService();
+        mBound = true;
+    }
+
+    // Called when the connection with the service disconnects unexpectedly
+    public void onServiceDisconnected(ComponentName className) {
+        Log.e(TAG, "onServiceDisconnected");
+        mBound = false;
+    }
+};
+</pre>
+
+<p>使用此 {@link android.content.ServiceConnection}，用戶端可以透過將它傳送給 {@link android.content.Context#bindService bindService()} 而繫結至服務。
+例如：</p>
+
+<pre>
+Intent intent = new Intent(this, LocalService.class);
+bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+</pre>
+
+<ul>
+  <li>{@link android.content.Context#bindService bindService()} 的第一個參數是
+{@link android.content.Intent}，明確地指定服務進行繫結 (儘管意圖是隱含的)。
+</li>
+<li>第二個參數是 {@link android.content.ServiceConnection} 物件。</li>
+<li>第三個參數是旗標，用來指出繫結的選項。如果服務尚未存在，通常是使用 {@link
+android.content.Context#BIND_AUTO_CREATE} 以建立服務。其他可能的值為 {@link android.content.Context#BIND_DEBUG_UNBIND}和 {@link android.content.Context#BIND_NOT_FOREGROUND}，或者 {@code 0} 代表無。
+
+</li>
+</ul>
+
+
+<h3>其他注意事項</h3>
+
+<p>以下是關於繫結至服務的一些重要注意事項：</p>
+<ul>
+  <li>您一定要設陷 {@link android.os.DeadObjectException} 例外狀況 (連線中斷時會擲回此例外狀況)。
+遠端方法只會擲回這個例外狀況。</li>
+  <li>物件會跨處理程序計算參照。 </li>
+  <li>繫結和解除繫結通常應成對使用，以符合用戶端的開始和結束週期。
+例如：
+    <ul>
+      <li>如果您只要在 Activity 可見時與服務互動，則要在 {@link android.app.Activity#onStart onStart()} 時繫結，並於 {@link
+android.app.Activity#onStop onStop()} 時解除繫結。
+</li>
+      <li>如果您希望 Activity 即使在背景中停止時，仍然會接收回應，則可以在 {@link android.app.Activity#onCreate onCreate()} 時繫結，並於{@link android.app.Activity#onDestroy onDestroy()} 時解除繫結。
+
+請注意，這表示您的 Activity 在整個執行期間 (即使是在背景執行也一樣) 都需要使用服務，因此，如果服務位於另一個處理程序，您要增加該處理程序的權重。但系統很可能因而將它終止。
+
+
+</li>
+    </ul>
+    <p class="note"><strong>注意：</strong>Activity 的 {@link android.app.Activity#onResume onResume()} 和 {@link
+android.app.Activity#onPause onPause()} 期間，通常<strong>不要</strong>繫結和解除繫結，因為這些回呼會在每個週期轉換時發生，而且您應該要讓這些轉換期間所發生的處理動作保持在最少狀態。
+
+另外，如果您的應用程式中有多個 Activity 繫結至同一個服務，而這兩個 Activity 之間會進行轉換，則服務會在目前的 Activity 解除繫結(暫停) 時，而下一個 Activity 繫結之前 (繼續時)，先終結後再重新建立
+
+
+(此 Activity 轉換如何在 Activity 之間協調其週期的資訊，於 <a href="{@docRoot}guide/components/activities.html#CoordinatingActivities">Activity</a> 文件中說明)。
+
+</p>
+</ul>
+
+<p>如要取得如何繫結至服務的更多範例程式碼，請參閱 <a href="{@docRoot}resources/samples/ApiDemos/index.html">ApiDemos</a> 中的 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html">{@code
+RemoteService.java}</a> 類別。</p>
+
+
+
+
+
+<h2 id="Lifecycle">管理繫結服務的週期</h2>
+
+<p>服務與所有用戶端解除繫結時，Android 系統會將服務終結 (除非服務是和 {@link android.app.Service#onStartCommand onStartCommand()} 一起啟動的)。
+如果您的服務純粹是繫結服務，就不用管理它的週期&mdash; Android 系統會根據服務是否繫結至任何用戶端，為您管理服務。
+
+</p>
+
+<p>不過，如果您選擇實作 {@link android.app.Service#onStartCommand
+onStartCommand()} 回呼方法，則必須明確停止服務，因為服務現在會視為「已啟動」<em></em>。
+如果是此情形，除非服務本身使用 {@link android.app.Service#stopSelf()} 自行停止，或另一個元件呼叫 {@link
+android.content.Context#stopService stopService()} 加以停止，否則服務會持續執行，不論它是否繫結至任何用戶端。
+
+</p>
+
+<p>此外，如果您的服務已啟動並且接受繫結，當系統呼叫您的 {@link android.app.Service#onUnbind onUnbind()} 方法時，可以選擇傳回 
+{@code true} (如果您希望用戶端下次繫結至服務時，可以接收 {@link android.app.Service#onRebind
+onRebind()} 呼叫，而不是接收 {@link
+android.app.Service#onBind onBind()} 的呼叫)。{@link android.app.Service#onRebind
+onRebind()} 會傳回空值，但用戶端仍然會在其
+{@link android.content.ServiceConnection#onServiceConnected onServiceConnected()} 回呼中接收到 {@link android.os.IBinder}。以下「圖 1」說明這類週期的邏輯。
+
+</p>
+
+
+<img src="{@docRoot}images/fundamentals/service_binding_tree_lifecycle.png" alt="" />
+<p class="img-caption"><strong>圖 1.</strong>服務的週期開始後，就允許繫結行為。
+</p>
+
+
+<p>如需關於已啟動服務週期的詳細資訊，請參閱<a href="{@docRoot}guide/components/services.html#Lifecycle">服務</a>文件。</p>
+
+
+
+
diff --git a/docs/html-intl/intl/zh-tw/guide/components/fragments.jd b/docs/html-intl/intl/zh-tw/guide/components/fragments.jd
new file mode 100644
index 0000000..e54769b
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/fragments.jd
@@ -0,0 +1,812 @@
+page.title=片段
+parent.title=Activity
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本文件內容</h2>
+  <ol>
+    <li><a href="#Design">設計概念</a></li>
+    <li><a href="#Creating">建立片段</a>
+      <ol>
+        <li><a href="#UI">新增使用者介面</a></li>
+        <li><a href="#Adding">將片段新增到 Activity 中</a></li>
+      </ol>
+    </li>
+    <li><a href="#Managing">管理片段</a></li>
+    <li><a href="#Transactions">進行片段交易</a></li>
+    <li><a href="#CommunicatingWithActivity">與 Activity 通訊</a>
+      <ol>
+        <li><a href="#EventCallbacks">為 Activity 建立事件回呼</a></li>
+        <li><a href="#ActionBar">將項目新增到動作列中</a></li>
+      </ol>
+    </li>
+    <li><a href="#Lifecycle">處理片段生命週期</a>
+      <ol>
+        <li><a href="#CoordinatingWithActivity">調整 Activity 生命週期</a></li>
+      </ol>
+    </li>
+    <li><a href="#Example">範例說明</a></li>
+  </ol>
+
+  <h2>重要類別</h2>
+  <ol>
+    <li>{@link android.app.Fragment}</li>
+    <li>{@link android.app.FragmentManager}</li>
+    <li>{@link android.app.FragmentTransaction}</li>
+  </ol>
+  
+  <h2>另請參閱</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/fragments/index.html">使用片段建置動態 UI</a></li>
+    <li><a href="{@docRoot}guide/practices/tablets-and-handsets.html">支援平板電腦和手機</a>
+</li>
+  </ol>
+</div>
+</div>
+
+<p>{@link android.app.Fragment} 代表一種行為或 
+{@link android.app.Activity} 中的一部分使用者介面。您可以合併單一 Activity 中的多個片段，藉此建置
+多窗格 UI 以及在多個 Activity 中重複使用片段。您可以將片段想成是 Activity 的模組化區段，片段擁有自己的生命週期、接收自己的輸入事件，而且您可以在 Activity 執行時新增或移除片段 (有點像是您可以在不同 Activity 中重複使用的「子 Activity」)。
+
+
+</p>
+
+<p>片段必須一律嵌入 Activity 中，而主要 Activity 的生命週期會直接影響片段的生命週期。
+例如，當 Activity 暫停時，其中的所有片段也會一併暫停；而當 Activity 遭到刪除時，所有片段也會一併刪除。
+不過，當 Activity 執行時 (該 Activity 會處於繼續進行<em></em><a href="{@docRoot}guide/components/activities.html#Lifecycle">生命週期狀態</a>)，您可以個別操縱所有片段，例如新增或移除片段。
+
+當您進行片段交易這類操作時，您也可以將片段加到 Activity 所管理的返回堆疊中 &mdash; Activity 中的所有返回堆疊項目均為所發生片段交易的記錄。
+
+
+返回堆疊可讓使用者復原片段交易 (往回瀏覽)，只要按下 [返回]<em></em> 按鈕即可。
+</p>
+
+<p>當您將片段新增為 Activity 版面配置的一部分後，片段就會位於 Activity 檢視階層中的 {@link
+android.view.ViewGroup}，而且片段會自行定義專屬的版面配置。您可以宣告 Activity 版面配置檔案中的片段，或是在應用程式的程式碼中將片段加到現有的 {@link android.view.ViewGroup} 中，藉此在 Activity 版面配置中將片段插入為 {@code &lt;fragment&gt;} 元素。
+
+
+
+不過，片段未必要成為 Activity 版面配置的一部分；您也可以選擇不透過其 UI，以隱形工作人員的身分使用 Activity 的片段。
+
+</p>
+
+<p>本文說明如何建置應用程式以使用片段，包括片段如何在加到 Activity 返回堆疊時保持自身狀態、如何與 Activity 和 Activity 中的其他片段共用活動、如何製作 Activity 欄等等。
+
+
+</p>
+
+
+<h2 id="Design">設計概念</h2>
+
+<p>我們在 Android 3.0 (API 級別 11) 中導入了片段，主要目的是為了在大型螢幕 (例如平板電腦) 上支援更多動態和彈性 UI 設計。
+由於平板電腦的螢幕比手機大上許多，因此有更多空間可結合及交換 UI 元件。
+
+片段可實現這種介面設計，而不必讓您管理複雜的檢視階層變更。
+將 Activity 的版面配置劃分成片段後，您就可以修改 Activity 在執行階段的外觀，以及保留 Activity 所管理返回堆疊的相關變更。
+
+</p>
+
+<p>例如，某個新聞應用程式可使用單一片段在畫面左側顯示文章清單，並且使用另一個片段在畫面右側顯示某篇文章 &mdash; 這兩個片段是以並排方式出現在某個 Activity 中，而每個片段都有自己的一組生命週期回呼方法，可自行處理其使用者輸入事件。
+
+
+因此，使用者可以在相同 Activity 中選取並閱讀某篇文章 (如圖 1 中的平板電腦版面配置所示)，而不必使用不同 Activity 選取及閱讀文章。
+
+</p>
+
+<p>請務必將每個片段設計成模組化和可重複使用的 Activity 元件。這是因為每個片段會根據其生命週期回呼，定義專屬版面配置和行為，而您可將單一片段加到多個 Activity 中，故請將其設計成可重複使用的元件，同時避免直接操縱個別片段。
+
+
+由於模組化片段可讓您針對不同螢幕大小變更片段組合，因此請務必這麼做。
+設計您的應用程式以支援平板電腦和手機時，您可以在不同版面配置設定中重複使用片段，藉此根據可用的螢幕空間提供最佳的使用者體驗。
+
+以手機為例說明，如果相同 Activity 中有多個片段不相符，則只要分割片段即可提供單一面板式的 UI。
+
+</p>
+
+<img src="{@docRoot}images/fundamentals/fragments.png" alt="" />
+<p class="img-caption"><strong>圖 1.</strong>片段所定義的兩個 UI 模組如何針對平板電腦設計合併成單一 Activity、如何針對手機設計分割成個別 Activity。
+
+</p>
+
+<p>例如 &mdash; 延續新聞應用程式範例加以說明 &mdash; 在平板電腦大小的裝置上執行的應用程式可將兩個片段嵌入「Activity A」<em></em>。
+不過，在手機大小的螢幕上，由於螢幕空間不足以容納兩個片段，因此「Activity A」<em></em>只會包含文章清單的片段，而當使用者選取文章後，系統就會啟動內含第二個片段的「Activity B」<em></em>，讓使用者閱讀文章。
+
+
+因此，應用程式可透過重複使用不同片段組合的方式，同時支援平板電腦和手機 (如圖 1 所示)。
+
+</p>
+
+<p>如要進一步瞭解如何使用不同片段組合針對各種螢幕設定設計應用程式，請參閱<a href="{@docRoot}guide/practices/tablets-and-handsets.html">支援平板電腦和手機</a>指南。
+</p>
+
+
+
+<h2 id="Creating">建立片段</h2>
+
+<div class="figure" style="width:327px">
+<img src="{@docRoot}images/fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>圖 2.</strong>片段的生命週期 (當其中的 Activity 處於執行狀態時)。
+</p>
+</div>
+
+<p>如要建立片段，您必須建立 {@link android.app.Fragment} 的子類別 (或是其現有的子類別)。
+{@link android.app.Fragment} 類別內含與{@link android.app.Activity} 十分雷同的程式碼。
+該程式碼包括與 Activity 類似的回呼方法，例如 {@link android.app.Fragment#onCreate onCreate()}、{@link android.app.Fragment#onStart onStart()}、
+{@link android.app.Fragment#onPause onPause()} 和 {@link android.app.Fragment#onStop onStop()}。
+事實上，如果您是設定現有 Android 應用程式改用片段，只要將 Activity 的回呼方法中的程式碼移到片段的個別回呼方法即可。
+
+
+</p>
+
+<p>一般來說，您至少必須實作下列生命週期方法：</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onCreate onCreate()}</dt>
+  <dd>系統會在建立片段時呼叫這個方法。在實作這個方法時，您必須初始化您想保留的必要片段元件，以便恢復已暫停或停止的片段。
+
+</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+  <dd>系統會在片段初次顯示其使用者介面時呼叫這個方法。
+您必須透過這個方法傳回 {@link android.view.View} (片段版面配置的根目錄)，才能顯示片段的 UI。
+如果片段並未提供 UI 的話，則可以傳回空值。
+</dd>
+  <dt>{@link android.app.Activity#onPause onPause()}</dt>
+  <dd>系統會在使用者初次離開片段時呼叫這個方法 (即使使用者這麼做未必會刪除片段)。
+您通常需要透過這個方法提交要在目前的使用者工作階段以外保留的任何變更 (原因在於使用者可能不會返回)。
+
+</dd>
+</dl>
+
+<p>大多數應用程式都至少必須針對每個片段實作這三個方法，不過您也必須使用幾個其他回呼方法來控制片段生命週期的各種狀態。
+
+如要進一步瞭解所有回呼方法，請參閱<a href="#Lifecycle">處理片段生命週期</a>。
+</p>
+
+
+<p>以下列出幾個您可能會想擴充的子類別 (基礎 {@link
+android.app.Fragment} 類別除外)：</p>
+
+<dl>
+  <dt>{@link android.app.DialogFragment}</dt>
+  <dd>顯示浮動對話方塊。使用這個類別建立對話方塊是使用 {@link android.app.Activity} 類別中的對話方塊協助程式方法的推薦替代方法，這是因為使用此類別可將片段對話方塊納入 Activity 所管理的片段堆疊，讓使用者得已返回已關閉的片段。
+
+
+</dd>
+
+  <dt>{@link android.app.ListFragment}</dt>
+  <dd>顯示配接器 (例如 {@link
+android.widget.SimpleCursorAdapter}) 所管理的項目清單；與 {@link android.app.ListActivity} 方法相似。這個方法可提供數種管理清單檢視畫面的方法，例如可處理點擊事件的 {@link
+android.app.ListFragment#onListItemClick(ListView,View,int,long) onListItemClick()}回呼。
+
+</dd>
+
+  <dt>{@link android.preference.PreferenceFragment}</dt>
+  <dd>列出 {@link android.preference.Preference} 物件的階層；與
+{@link android.preference.PreferenceActivity} 方法相似。為應用程式建立「設定」Activity 時，這個方法就非常實用。
+</dd>
+</dl>
+
+
+<h3 id="UI">新增使用者介面</h3>
+
+<p>片段通常是當作某 Activity 的使用者介面使用，而且可將自身的版面配置提供給 Activity。
+</p>
+
+<p>如要提供片段的版面配置，您必須實作 {@link
+android.app.Fragment#onCreateView onCreateView()} 回呼方法，讓 Android 系統呼叫片段顯示其版面配置。
+實作這個方法時，您必須傳回
+{@link android.view.View} (片段版面配置的根目錄)。</p>
+
+<p class="note"><strong>注意：</strong>如果您的片段是 {@link
+android.app.ListFragment} 的子類別，則實作完畢後系統預設會傳回 {@link android.app.Fragment#onCreateView onCreateView()} 的
+{@link android.widget.ListView}，因此您不必加以實作。</p>
+
+<p>如要從 {@link
+android.app.Fragment#onCreateView onCreateView()} 傳回版面配置，您可以從 XML 中定義的<a href="{@docRoot}guide/topics/resources/layout-resource.html">l版面配置資源</a>擴大它。為協助您完成這項作業，{@link android.app.Fragment#onCreateView onCreateView()} 提供了 
+{@link android.view.LayoutInflater} 物件。
+</p>
+
+<p>例如，以下是 {@link android.app.Fragment} 的子類別，可從 
+{@code example_fragment.xml} 檔案載入版面配置：</p>
+
+<pre>
+public static class ExampleFragment extends Fragment {
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+                             Bundle savedInstanceState) {
+        // Inflate the layout for this fragment
+        return inflater.inflate(R.layout.example_fragment, container, false);
+    }
+}
+</pre>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>建立版面配置</h3>
+  <p>在上方範例中，{@code R.layout.example_fragment} 是應用程式中儲存的
+「{@code example_fragment.xml}」版面配置資源的參照資料。如要瞭解如何在 XML 中建立版面配置，請參閱<a href="{@docRoot}guide/topics/ui/index.html">使用者介面</a>。
+
+</p>
+</div>
+</div>
+
+<p>傳入 {@link android.app.Fragment#onCreateView
+onCreateView()} 的 {@code container} 參數是上層 {@link android.view.ViewGroup} (來自 Activity 的版面配置)，系統會將您的片段版面配置插入其中。
+
+{@code savedInstanceState} 參數是 {@link android.os.Bundle}，當片段即將恢復時 (如要進一步瞭解還原狀態，請參閱<a href="#Lifecycle">處理片段生命週期</a>)，這個參數就會提供先前的片段執行個體的相關資料。
+
+
+</p>
+
+<p>{@link android.view.LayoutInflater#inflate(int,ViewGroup,boolean) inflate()} 方法採用三種引數：
+</p>
+<ul>
+  <li>您想要擴大的版面配置的資源 ID。</li>
+  <li>要設為擴大過後版面配置的上層檢視的 {@link android.view.ViewGroup}。請務必傳遞 {@code
+container}，以便讓系統將版面配置參數套用至擴大過後版面配置的根檢視 (由將做為其目標的父檢視所指定)。
+</li>
+  <li>用於指示系統是否要在擴大期間將擴大過後的版面配置附加到 {@link
+android.view.ViewGroup} (第二個參數) 的布林值 (由於系統已將擴大過後的版面配置插入 {@code
+container}，因此布林值應為 false &mdash; 如果您傳送 true，會導致系統在最終版面配置中建立多餘的檢視群組)。
+</li>
+</ul>
+
+<p>您現在已瞭解如何建立可提供版面配置的片段了。接著，請將建立好的片段新增至 Activity。
+</p>
+
+
+
+<h3 id="Adding">將片段新增到 Activity 中</h3>
+
+<p>片段通常會將一部分 UI 嵌入主要 Activity 的整體檢視階層中。
+您有兩種方式可將片段新增到 Activity 版面配置：
+</p>
+
+<ul>
+  <li><b>宣告 Activity 版面配置檔案內含的片段。</b>
+<p>選用這種方式時，您可以將片段視為檢視，為其指定版面配置屬性。
+例如，以下是內含兩個片段的 Activity 版面配置檔案：
+</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
+    &lt;fragment android:name="com.example.news.ArticleListFragment"
+            android:id="@+id/list"
+            android:layout_weight="1"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+    &lt;fragment android:name="com.example.news.ArticleReaderFragment"
+            android:id="@+id/viewer"
+            android:layout_weight="2"
+            android:layout_width="0dp"
+            android:layout_height="match_parent" /&gt;
+&lt;/LinearLayout&gt;
+</pre>
+  <p>{@code &lt;fragment&gt;} 中的 {@code android:name} 屬性可指定系統呼叫版面配置中的 {@link
+android.app.Fragment} 類別。</p>
+
+<p>系統建立這個 Activity 版面配置後，就會呼叫版面配置中指定的任何片段，並為每個片段呼叫 {@link android.app.Fragment#onCreateView onCreateView()} 方法，藉此擷取所有片段的版面配置。
+
+系統會插入片段所傳回的 {@link android.view.View} 來取代 {@code &lt;fragment&gt;} 元素。
+</p>
+
+<div class="note">
+  <p><strong>注意：</strong>您必須為每個片段提供專屬識別碼，以便系統在 Activity 重新開始時復原片段 (您也可以使用此識別碼擷取要交易的片段，例如移除片段)。
+
+您有三種方式可提供片段的 ID：
+</p>
+  <ul>
+    <li>提供內含專屬 ID 的 {@code android:id} 屬性。</li>
+    <li>提供內含不重複字串的 {@code android:tag} 屬性。</li>
+    <li>如果您未提供上述兩項屬性，系統會採用容器檢視的 ID。
+</li>
+  </ul>
+</div>
+  </li>
+
+  <li><b>或者，利用程式將片段新增至現有的 {@link android.view.ViewGroup}。</b>
+<p>只要 Activity 處於執行狀態，您都可以將片段新增至 Activity 版面配置。方法很簡單，只要指定您想在其中加入片段的 {@link
+android.view.ViewGroup} 即可。
+</p>
+  <p>如要在 Activity 中進行片段交易 (例如新增、移除或替換片段)，請使用 {@link android.app.FragmentTransaction} 中的 API 進行。
+您可以透過以下方式取得 {@link android.app.Activity} 的 {@link android.app.FragmentTransaction} 執行個體：
+</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()}
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>接著，您就可以使用 {@link
+android.app.FragmentTransaction#add(int,Fragment) add()} 方法指定要新增的片段，以及要插入片段的目標檢視。
+例如：</p>
+
+<pre>
+ExampleFragment fragment = new ExampleFragment();
+fragmentTransaction.add(R.id.fragment_container, fragment);
+fragmentTransaction.commit();
+</pre>
+
+  <p>第一個傳入 {@link android.app.FragmentTransaction#add(int,Fragment) add()} 的引數是要在其中插入片段的 {@link android.view.ViewGroup} (使用資源 ID 加以指定)，而第二個參數則是要新增的引數。
+
+</p>
+  <p>透過
+{@link android.app.FragmentTransaction} 完成變更後，請呼叫 {@link android.app.FragmentTransaction#commit} 以便讓變更生效。
+</p>
+  </li>
+</ul>
+
+
+<h4 id="AddingWithoutUI">新增不顯示 UI 的片段</h4>
+
+<p>上述範例說明如何將片段新增至 Activity，以提供 UI。但事實上，您也可以使用片段為 Activity 提供背景行為，避免顯示額外的 UI。
+
+</p>
+
+<p>如要新增不顯示使 UI 的片段，請使用 {@link
+android.app.FragmentTransaction#add(Fragment,String)} 從 Activity 新增片段 (請提供片段的不重複字串「標記」，而不是檢視 ID)。
+這樣即可新增片段，但由於該片段並未與 Activity 版面配置中的檢視相關聯，因此不會接收 {@link
+android.app.Fragment#onCreateView onCreateView()} 的呼叫。
+如此一來，您就不必實作該方法。</p>
+
+<p>提供片段的字串標記並不是採用非 UI 片段時的必要步驟 &mdash; 您也可以提供沒有 UI 的片段的字串標記 &mdash; 不過，如果片段沒有 UI，則字串標記將成為識別片段的唯一途徑。
+
+如果您想之後再從 Activity 中取得片段，請使用 {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()}。
+</p>
+
+<p>如需使用沒有 UI 的片段做為背景工作者的 Activity 範例，請參閱 SDK 範例中位於以下路徑的 {@code
+FragmentRetainInstance.java} 範例 (可透過 Android SDK Manager 存取)<code>&lt;sdk_root&gt;/APIDemos/app/src/main/java/com/example/android/apis/app/FragmentRetainInstance.java</code>。
+
+</p>
+
+
+
+<h2 id="Managing">管理片段</h2>
+
+<p>如要管理 Activity 中的片段，請使用 {@link android.app.FragmentManager}。如要取得這些片段，請呼叫 Activity 中的 {@link android.app.Activity#getFragmentManager()}。
+</p>
+
+<p>您可透過 {@link android.app.FragmentManager} 執行下列操作：</p>
+
+<ul>
+  <li>使用 {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} (針對在 Activity 版面配置中提供 UI 的片段) 或 {@link android.app.FragmentManager#findFragmentByTag
+findFragmentByTag()} (針對未提供 UI 的片段) 取得 Activity 中的現有片段。
+</li> 
+  <li>使用 {@link
+android.app.FragmentManager#popBackStack()} (模擬使用者的「返回」<em></em>命令) 將片段從返回堆疊中推出。</li>
+  <li>使用 {@link
+android.app.FragmentManager#addOnBackStackChangedListener addOnBackStackChangedListener()} 針對返回堆疊的變更項目註冊監聽器。</li>
+</ul>
+
+<p>如要進一步瞭解上述方法以及其他方法，請參閱 {@link
+android.app.FragmentManager} 類別說明文件。</p>
+
+<p>如上一節所述，您也可以使用 {@link android.app.FragmentManager} 開啟 {@link android.app.FragmentTransaction}，以便進行片段交易 (例如新增及移除片段)。
+
+</p>
+
+
+<h2 id="Transactions">進行片段交易</h2>
+
+<p>使用 Activity 中片段的一項實用功能，就是新增、移除、替換片段以及對它們執行其他動作，藉此反映使用者互動。
+您針對 Activity 提交的每組變更稱為交易，而您可以使用 {@link
+android.app.FragmentTransaction} 中的進行這種交易。
+此外，您也可以儲存對 Activity 所管理的返回堆疊進行的交易，讓使用者能夠往回瀏覽片段變更 (如同往回瀏覽 Activity)。
+
+</p>
+
+<p>您可以從 {@link
+android.app.FragmentManager} 中取得如下所示的 {@link android.app.FragmentTransaction}：</p>
+
+<pre>
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()};
+FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
+</pre>
+
+<p>每次交易都是您想同時進行的一組變更。您可以使用 {@link
+android.app.FragmentTransaction#add add()}、{@link android.app.FragmentTransaction#remove remove()}和 {@link android.app.FragmentTransaction#replace replace()} 等方法設定您想針對特定交易進行的變更。
+
+接著，只要呼叫 {@link android.app.FragmentTransaction#commit()}，就能將該交易套用至 Activity。
+</p>
+</dl>
+
+<p>不過，您可能會為了新增交易至片段交易返回堆疊，先呼叫 {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}，然後再呼叫 {@link
+android.app.FragmentTransaction#commit()}。
+返回堆疊是由 Activity 所管理，可讓使用者透過按下 [返回]<em></em> 按鈕的方式，返回先前的片段狀態。
+</p>
+
+<p>以下範例可讓您替換片段，並且保留先前的返回堆疊狀態：
+</p>
+
+<pre>
+// Create new fragment and transaction
+Fragment newFragment = new ExampleFragment();
+FragmentTransaction transaction = getFragmentManager().beginTransaction();
+
+// Replace whatever is in the fragment_container view with this fragment,
+// and add the transaction to the back stack
+transaction.replace(R.id.fragment_container, newFragment);
+transaction.addToBackStack(null);
+
+// Commit the transaction
+transaction.commit();
+</pre>
+
+<p>在這個範例中，{@code newFragment} 會針對依據 {@code R.id.fragment_container} ID 識別的版面配置容器，
+替換其中的任何現有片段 (如果有的話)。系統會呼叫 {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}，將替換交易儲存到返回堆疊，以便使用者按下 [返回]<em></em> 按鈕來復原交易以及返回上一個片段。
+
+</p>
+
+<p>如果您將多項變更新增至交易 (例如新增另一個 {@link
+android.app.FragmentTransaction#add add()} 或 {@link android.app.FragmentTransaction#remove
+remove()})，並且呼叫 {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()}，那麼您在呼叫 {@link android.app.FragmentTransaction#commit commit()} 之前套用的所有變更都會新增至返回堆疊做為單次交易，在這種情況下，按下 [返回]<em></em> 按鈕就能一次復原所有變更。
+
+</p>
+
+<p>您將變更新增至 {@link android.app.FragmentTransaction} 的順序並不會造成任何影響，但請注意以下例外狀況：
+</p>
+<ul>
+  <li>務必最後才呼叫 {@link android.app.FragmentTransaction#commit()}</li>
+  <li>如果您是將多個片段新增至同一容器，那麼您新增片段的順序將決定這些片段在檢視階層中的顯示順序
+</li>
+</ul>
+
+<p>如果您並未在進行移除片段的交易時呼叫 {@link android.app.FragmentTransaction#addToBackStack(String)
+addToBackStack()}，該片段會在您提交交易後遭到刪除，而且使用者無法往回瀏覽至該片段。
+不過，如果您在移除片段時呼叫 {@link android.app.FragmentTransaction#addToBackStack(String) addToBackStack()}，則該片段將會遭到「停止」<em></em>，而且會在使用者往回瀏覽時繼續進行。
+
+
+</p>
+
+<p class="note"><strong>提示：</strong>您可以在進行每次片段交易時套用交易動畫，方法是在提交交易前呼叫 {@link android.app.FragmentTransaction#setTransition setTransition()}。
+
+</p>
+
+<p>呼叫 {@link android.app.FragmentTransaction#commit()} 並不會立即進行交易，
+而是會讓系統排定 UI 執行緒 (「主要」執行緒) 可執行這個方法時，立即加以執行。
+不過，您可以視需要透過 UI 執行緒呼叫 {@link
+android.app.FragmentManager#executePendingTransactions()}，立即執行 {@link android.app.FragmentTransaction#commit()} 所提交的交易。
+您通常不必這樣做，除非該交易是其他執行緒的工作的必要元件。
+</p>
+
+<p class="caution"><strong>注意：</strong>您可以使用 {@link
+android.app.FragmentTransaction#commit commit()} 來提交交易，但僅限於 Activity <a href="{@docRoot}guide/components/activities.html#SavingActivityState">儲存其狀態</a>之前 (也就是使用者離開 Activity 之前)。
+如果您在這個時間點之後嘗試提交交易，就會發生例外狀況，
+這是因為狀態會在交易提交後遺失 (如果需要復原 Activity 的話)。
+如果想確保狀態遺失不會造成任何影響，請使用 {@link
+android.app.FragmentTransaction#commitAllowingStateLoss()} 提交交易。</p>
+
+
+
+
+<h2 id="CommunicatingWithActivity">與 Activity 通訊</h2>
+
+<p>雖然 {@link android.app.Fragment} 是實作成不同於
+{@link android.app.Activity} 的物件，而且可在多個 Activity 中使用，特定片段執行個體仍會直接與含有該物件的 Activity 建立關聯。
+</p>
+
+<p>因此，片段可存取內含{@link
+android.app.Fragment#getActivity()} 的 {@link android.app.Activity} 執行個體，以及輕鬆進行在 Activity 版面配置中尋找檢視等工作：
+</p>
+
+<pre>
+View listView = {@link android.app.Fragment#getActivity()}.{@link android.app.Activity#findViewById findViewById}(R.id.list);
+</pre>
+
+<p>相同地，您的 Activity 可利用 {@link
+android.app.FragmentManager#findFragmentById findFragmentById()} 或 {@link
+android.app.FragmentManager#findFragmentByTag findFragmentByTag()} 從 {@link android.app.FragmentManager} 中取得 {@link android.app.Fragment} 參照資料，以呼叫片段中的方法。
+例如：</p>
+
+<pre>
+ExampleFragment fragment = (ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment);
+</pre>
+
+
+<h3 id="EventCallbacks">為 Activity 建立事件回呼</h3>
+
+<p>在某些情況下，您可能需要可用來與 Activity 分享事件的片段。如果您需要這種片段，建議您在片段內定義回呼介面，然後要求主要 Activity 實作該片段。
+
+當 Activity 透過介面接收回呼後，即可視需要與版面配置中的其他片段分享這項資訊。
+</p>
+
+<p>例如，假設新聞應用程式的 Activity 中有兩個片段 &mdash; 一個用於顯示文章清單 (片段 A)，另一個用於顯示文章 (片段 B) &mdash; 其中的片段 A 必須告知 Activity 使用者選取清單項目的時間點，以便通知片段 B 顯示文章。
+
+在這個範例中，{@code OnArticleSelectedListener} 介面是在片段 A 中完成宣告：
+</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    ...
+    // Container Activity must implement this interface
+    public interface OnArticleSelectedListener {
+        public void onArticleSelected(Uri articleUri);
+    }
+    ...
+}
+</pre>
+
+<p>接著，代管片段的 Activity 會實作 {@code OnArticleSelectedListener} 介面，並且覆寫 {@code onArticleSelected()} 以便將片段 A 的事件告知片段 B。為了確保主要 Activity 可實作該介面，片段 A 的 {@link
+android.app.Fragment#onAttach onAttach()} 回呼方法 (系統將片段新增至 Activity 時會呼叫這種方法) 轉換傳入 {@link android.app.Fragment#onAttach
+onAttach()} 的 {@link android.app.Activity}，藉此呼叫 {@code OnArticleSelectedListener} 執行個體：
+
+
+
+
+</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        try {
+            mListener = (OnArticleSelectedListener) activity;
+        } catch (ClassCastException e) {
+            throw new ClassCastException(activity.toString() + " must implement OnArticleSelectedListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>如果 Activity 並未實作介面，那麼片段會擲回
+{@link java.lang.ClassCastException}。成功擲回時，{@code mListener} 成員會保留 Activity 所實作 
+{@code OnArticleSelectedListener} 的參照資料，以便片段 A 呼叫 {@code OnArticleSelectedListener} 介面定義的方法與 Activity 分享事件。
+
+例如，假設片段 A 是
+{@link android.app.ListFragment} 的延伸，則每當使用者點擊清單項目時，系統就會呼叫片段中的 {@link android.app.ListFragment#onListItemClick
+onListItemClick()}，讓該方法呼叫 {@code onArticleSelected()} 以便與 Activity 分享事件：
+
+</p>
+
+<pre>
+public static class FragmentA extends ListFragment {
+    OnArticleSelectedListener mListener;
+    ...
+    &#64;Override
+    public void onListItemClick(ListView l, View v, int position, long id) {
+        // Append the clicked item's row ID with the content provider Uri
+        Uri noteUri = ContentUris.{@link android.content.ContentUris#withAppendedId withAppendedId}(ArticleColumns.CONTENT_URI, id);
+        // Send the event and Uri to the host activity
+        mListener.onArticleSelected(noteUri);
+    }
+    ...
+}
+</pre>
+
+<p>傳入 {@link
+android.app.ListFragment#onListItemClick onListItemClick()} 的 {@code id} 參數是使用者所點擊項目的資料列 ID，可讓 Activity (或其他片段) 用來從應用程式的 {@link
+android.content.ContentProvider} 擷取文章。
+</p>
+
+<p><!--To see a complete implementation of this kind of callback interface, see the <a
+href="{@docRoot}resources/samples/NotePad/index.html">NotePad sample</a>. -->如要進一步瞭解如何使用內容供應程式，請參閱<a href="{@docRoot}guide/topics/providers/content-providers.html">內容供應程式</a>。
+</p>
+
+
+
+<h3 id="ActionBar">將項目新增到動作列中</h3>
+
+<p>片段可實作
+{@link android.app.Fragment#onCreateOptionsMenu(Menu,MenuInflater) onCreateOptionsMenu()} 來為 Activity 的<a href="{@docRoot}guide/topics/ui/menus.html#options-menu">選項選單</a> (以及<a href="{@docRoot}guide/topics/ui/actionbar.html">動作列</a>) 提供選單項目。不過，您必須在呼叫 {@link
+android.app.Fragment#onCreate(Bundle) onCreate()} 時呼叫 {@link
+android.app.Fragment#setHasOptionsMenu(boolean) setHasOptionsMenu()}，告知系統該片段會新增項目到「選項選單」，這個方法才能接收呼叫 (否則該片段將無法接收
+{@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()} 的呼叫)。
+
+</p>
+
+<p>您之後透過片段新增到「選項選單」的任何物件都會附加到現有的選單項目。
+該片段也會在使用者選取選單項目時接收 {@link
+android.app.Fragment#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} 的回呼。
+</p>
+
+<p>此外，您也可以在片段版面配置中註冊檢視來提供內容選單，方法是呼叫 {@link
+android.app.Fragment#registerForContextMenu(View) registerForContextMenu()}。當使用者開啟內容選單時，片段就會接收 {@link
+android.app.Fragment#onCreateContextMenu(ContextMenu,View,ContextMenu.ContextMenuInfo)
+onCreateContextMenu()} 的呼叫。
+而當使用者選取某個項目時，片段則會接收 {@link
+android.app.Fragment#onContextItemSelected(MenuItem) onContextItemSelected()} 的呼叫。</p>
+
+<p class="note"><strong>注意：</strong>雖然片段會在使用者選取項目時，針對所有新增的選單項目接收回呼，不過最先在使用者選取選單項目時接收個別回呼的是 Activity。
+
+如果 Activity 在使用者選取項目時所實作的回呼無法處理所選項目，則系統會將該事件傳送到片段的回呼中。
+這種情況會發生在「選項選單」和內容選單。
+</p>
+
+<p>如要進一步瞭解選單，請參閱<a href="{@docRoot}guide/topics/ui/menus.html">選單</a>和<a href="{@docRoot}guide/topics/ui/actionbar.html">動作列</a>開發人員指南。</p>
+
+
+
+
+<h2 id="Lifecycle">處理片段生命週期</h2>
+
+<div class="figure" style="width:350px">
+<img src="{@docRoot}images/activity_fragment_lifecycle.png" alt="" />
+<p class="img-caption"><strong>圖 3.</strong>Activity 生命週期對片段生命週期造成的影響。
+</p>
+</div>
+
+<p>管理片段生命週期的方式與管理 Activity 生命週期十分雷同。與 Activity 相同，片段有以下三種狀態：
+</p>
+
+<dl>
+  <dt><i>已繼續</i></dt>
+    <dd>系統會在執行中的 Activity 內顯示片段。</dd>
+
+  <dt><i>已暫停</i></dt>
+    <dd>前景中有其他具備焦點的 Activity，但系統仍會顯示含有這個片段的 Activity (前景 Activity 處於半透明狀態，或是未覆蓋整個螢幕)。
+
+</dd>
+
+  <dt><i>已停止</i></dt>
+    <dd>系統不會顯示片段。這可能是因為主要 Activity 已停止，或是加到返回堆疊的片段已從 Activity 中移除。
+已停止的片段仍處於有效狀態 (系統會保留所有狀態和成員資訊)，
+但使用者無法看到這類片段，而且當 Activity 遭到刪除時，這些片段也會一併刪除。
+</dd>
+</dl>
+
+<p>與 Activity 相同，您可以使用 {@link
+android.os.Bundle} 保留片段的狀態，以便在 Activity 的處理程序遭到刪除後想重新建立 Activity 時，還原片段狀態。
+您可以在片段的 {@link
+android.app.Fragment#onSaveInstanceState onSaveInstanceState()} 回呼期間儲存狀態，並且在
+{@link android.app.Fragment#onCreate onCreate()}、{@link
+android.app.Fragment#onCreateView onCreateView()} 或 {@link
+android.app.Fragment#onActivityCreated onActivityCreated()} 時還原狀態。如要進一步瞭解如何儲存狀態，請參閱 <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Activity</a>。
+
+</p>
+
+<p>Activity 與片段生命週期之間最明顯的差異是，生命週期儲存在個別返回堆疊的方式。
+在預設情況下，Activity 停止後會插入系統所管理的 Activity 堆疊，方便使用者按下 [返回]<em></em> 按鈕來返回該 Activity (如<a href="{@docRoot}guide/components/tasks-and-back-stack.html">工作和返回堆疊</a>所述)。不過，片段只會在您進行移除片段的交易期間，呼叫 {@link
+android.app.FragmentTransaction#addToBackStack(String) addToBackStack()} 來要求系統儲存執行個體時，插入主要 Activity 所管理的返回堆疊。
+
+
+
+
+</p>
+
+<p>在其他情況下，管理片段生命週期的方式與管理 Activity 生命週期十分雷同。
+因此，<a href="{@docRoot}guide/components/activities.html#Lifecycle">管理 Activity 生命週期</a>的做法同樣適用於片段。
+不過，建議您參考相關資源，瞭解 Activity 生命週期對片段生命週期造成的影響。
+</p>
+
+<p class="caution"><strong>注意：</strong>如果您需要 {@link android.app.Fragment} 的
+{@link android.content.Context} 物件，請呼叫 {@link android.app.Fragment#getActivity()}。不過，請務必只在確定片段是附加到 Activity 的情況下，再呼叫 {@link android.app.Fragment#getActivity()}。
+
+如果片段未附加到 Activity，或是片段因超過生命週期而遭到卸除，則 {@link android.app.Fragment#getActivity()} 將傳回空值。
+</p>
+
+
+<h3 id="CoordinatingWithActivity">調整 Activity 生命週期</h3>
+
+<p>內含片段的 Activity 的生命週期會直接影響片段的生命週期，這樣一來，Activity 的每次生命週期回呼會針對每個片段產生相似的回呼。
+
+例如，當 Activity 收到 {@link android.app.Activity#onPause} 後，Activity 中的每個片段都會收到 {@link android.app.Fragment#onPause}。
+</p>
+
+<p>不過，片段有幾個額外的生命週期回呼，可用於處理與 Activity 之間的特殊互動，以執行建置或刪除片段 UI 等動作。以下是這些額外的回呼方法：
+
+</p>
+
+<dl>
+  <dt>{@link android.app.Fragment#onAttach onAttach()}</dt>
+    <dd>當片段與 Activity 建立關聯時，系統就會呼叫這個方法 ({@link
+android.app.Activity} 會傳入與片段相關聯的 Activity)。</dd>
+  <dt>{@link android.app.Fragment#onCreateView onCreateView()}</dt>
+    <dd>系統會呼叫這個方法來建立與片段相關聯的檢視階層。</dd>
+  <dt>{@link android.app.Fragment#onActivityCreated onActivityCreated()}</dt>
+    <dd>當 Activity 的 {@link android.app.Activity#onCreate
+onCreate()} 方法成功傳回時，系統就會呼叫這個方法。</dd>
+  <dt>{@link android.app.Fragment#onDestroyView onDestroyView()}</dt>
+    <dd>當使用者移除與片段相關聯的檢視階層時，系統就會呼叫這個方法。</dd>
+  <dt>{@link android.app.Fragment#onDetach onDetach()}</dt>
+    <dd>當使用者將片段與 Activity 解除關聯時，系統就會呼叫這個方法。</dd>
+</dl>
+
+<p>如圖 3 所述，片段生命週期的流程會受到主要 Activity 的影響。
+您可以透過該圖片瞭解 Activity 的連續狀態如何決定片段要接收的回呼方法。
+例如，當 Activity 收到 {@link
+android.app.Activity#onCreate onCreate()} 回呼後，Activity 中的片段就不會收到
+{@link android.app.Fragment#onActivityCreated onActivityCreated()} 以外的回呼。</p>
+
+<p>Activity 一旦進入已恢復狀態，您便可視需要在 Activity 中新增或移除片段。
+因此，只有處於已恢復狀態的 Activity 會影響片段的生命週期。
+</p>
+
+<p>不過，當 Activity 不再處於已恢復狀態後，Activity 就會再次推送片段的生命週期。
+</p>
+
+
+
+
+<h2 id="Example">範例說明</h2>
+
+<p>以下提供使用兩個片段建立兩個面板的版面配置的 Activity 範例，藉此綜合說明本文所述內容。
+下方 Activity 包含一個用於顯示莎士比亞劇作清單的片段，以及另一個用於在使用者選取清單項目時顯示劇作摘要的片段。
+
+這個 Activity 範例同時示範了如何根據螢幕設定提供不同的片段設定。
+</p>
+
+<p class="note"><strong>注意：</strong>如需這個 Activity 的完整原始碼，請查閱 
+<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html">{@code
+FragmentLayout.java}</a>。</p>
+
+<p>主要 Activity 會在 {@link
+android.app.Activity#onCreate onCreate()} 時以常見的方式套用版面配置：</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java main}
+
+<p>Activity 套用的版面配置為 {@code fragment_layout.xml}：</p>
+
+{@sample development/samples/ApiDemos/res/layout-land/fragment_layout.xml layout}
+
+<p>使用這個版面配置可讓系統在 Activity 載入版面配置時，呼叫 {@code TitlesFragment} (這個類別會列出劇本名稱)，而 {@link android.widget.FrameLayout} (顯示劇本摘要的片段將納入的目標類別) 則會佔用螢幕右側的空間，但在一開始會保持空白狀態。
+
+
+如下方所示，系統只會在使用者從清單中選取項目後，才將片段插入 {@link android.widget.FrameLayout}。
+</p>
+
+<p>不過，並非所有螢幕設定都有足夠的空間同時並排顯示劇作清單以及劇作摘要。
+因此，上方版面配置只適用於橫向螢幕設定，系統會將它儲存在 {@code res/layout-land/fragment_layout.xml} 中。
+</p>
+
+<p>而在螢幕為直向的情況下，系統會套用儲存在 {@code res/layout/fragment_layout.xml} 中的以下版面配置：
+</p>
+
+{@sample development/samples/ApiDemos/res/layout/fragment_layout.xml layout}
+
+<p>這個版面配置只包含 {@code TitlesFragment}。也就是說，如果裝置採用直向螢幕設定，系統只會顯示劇作名稱清單。
+因此，當使用者在採用這種設定的裝置上點擊清單項目後，應用程式就會啟動新 Activity 來顯示劇作摘要，而不是載入第二個片段。
+
+</p>
+
+<p>接著，請看看片段類別如何達到以上目標。首先是用於顯示莎士比亞劇作名稱清單的 {@code
+TitlesFragment}。這個片段會延伸 {@link
+android.app.ListFragment}，並且依據該類別控制大多數的清單檢視工作。</p>
+
+<p>如果您檢查這個程式碼，將會發現使用者點擊清單項目後會觸發兩種行為：視採用的版面配置而定，系統會建立並呈現新的片段，以便在同一 Activity 中顯示詳細資料 (將片段加到 {@link
+android.widget.FrameLayout})，或是啟動新的 Activity (藉此顯示片段)。
+
+</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java titles}
+
+<p>第二個片段 {@code DetailsFragment} 則會針對
+{@code TitlesFragment} 中，使用者所選清單項目的劇本摘要：</p>
+ 
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java details}
+
+<p>針對 {@code TitlesFragment} 類別發出的回呼，如果使用者點擊清單項目，而且目前的版面配置「並未」<em></em>包含 {@code R.id.details} 檢視 ({@code DetailsFragment} 所屬的檢視)，則應用程式會執行 {@code DetailsActivity} Activity 來顯示項目內容。
+
+
+</p>
+
+<p>以下是會在螢幕採用橫向版面設定時，嵌入 {@code DetailsFragment} 以顯示所選劇本摘要的 {@code DetailsActivity}：
+</p>
+
+{@sample development/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java
+details_activity}
+ 
+<p>請注意，這個 Activity 會在螢幕採用橫向版面配置的情況下自行結束，因此主要 Activity 會接續顯示 {@code TitlesFragment} 旁的 {@code DetailsFragment}。如果使用者在採用直向版面配置的裝置上執行 {@code DetailsActivity}，然後將該裝置旋轉成橫向 (這會重新執行目前的 Activity)，就可能會發生這種情況。
+
+
+</p>
+
+
+<p>如需更多使用片段的範例 (以及本範例的原始檔案)，請參閱<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Fragment">ApiDemos</a> 所提供的 API Demos 範例應用程式 (可透過 <a href="{@docRoot}resources/samples/get.html">SDK 元件範本</a>下載)。
+
+</p>
+
+
diff --git a/docs/html-intl/intl/zh-tw/guide/components/fundamentals.jd b/docs/html-intl/intl/zh-tw/guide/components/fundamentals.jd
new file mode 100644
index 0000000..d3b3c28
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/fundamentals.jd
@@ -0,0 +1,480 @@
+page.title=應用程式基礎知識
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文件內容</h2>
+<ol>
+<li><a href="#Components">應用程式元件</a>
+  <ol>
+    <li><a href="#ActivatingComponents">啟用元件</a></li>
+  </ol>
+</li>
+<li><a href="#Manifest">宣示說明檔案</a>
+  <ol>
+    <li><a href="#DeclaringComponents">宣告元件</a></li>
+    <li><a href="#DeclaringRequirements">宣告應用程式需求</a></li>
+  </ol>
+</li>
+<li><a href="#Resources">應用程式資源</a></li>
+</ol>
+</div>
+</div>
+
+<p>Android 應用程式是以 Java 程式語言編寫而成。Android SDK 工具可將您的程式碼 &mdash; 連同任何相關資料和資源檔案 &mdash; 編入 APK (
+ <i>Android 套件，</i>使用 {@code .apk} 後綴字詞的封存檔)。
+APK 檔案包含 Android 應用程式的所有內容，搭載 Android 作業系統的裝置會使用這種檔案來安裝應用程式。
+</p>
+
+<p>Android 應用程式安裝到裝置之後，便可在專屬的安全性沙箱中執行： </p>
+
+<ul>
+ <li>Android 作業系統是一種支援多位使用者的 Linux 系統；在這種系統中，每款應用程式即代表不同的使用者。
+</li>
+
+<li>在預設情況下，系統會為每款應用程式指派一個不重複 Linux 使用者 ID (只有系統可使用這個 ID，應用程式無法取得這項資訊)。
+系統會為應用程式中的所有檔案設定權限，因此只有該應用程式指派的使用者 ID 可存取這些檔案。
+ </li>
+
+<li>所有處理程序都有專屬的虛擬機器 (VM)，供系統在獨立環境中執行應用程式的程式碼。
+</li>
+
+<li>在預設情況下，每款應用程式會在專屬的 Linux 處理程序中執行。Android 會在需要執行應用程式的任何元件時啟動處理程序，並且在不必執行應用程式元件，或系統必須復原記憶體供其他應用程式使用時關閉處理程序。
+
+</li>
+</ul>
+
+<p>如此一來，Android 系統就會實作「最低權限原則」<em></em>。換句話說，在預設情況下，所有應用程式只能存取執行工作時所需的元件。
+
+這樣一來，應用程式便無法存取系統的某些部分，藉此建立十分安全的執行環境。
+</p>
+
+<p>不過，應用程式可透過一些方式與其他應用程式分享資料，以及存取系統服務：
+</p>
+
+<ul>
+  <li>兩款應用程式可共用相同的 Linux 使用者 ID，以便存取彼此的檔案。
+為了節省系統資源，共用相同使用者 ID 的應用程式可在相同 Linux 處理程序中執行，以及共用相同的 VM (前提是應用程式必須使用相同的憑證進行簽署)。
+
+</li>
+  <li>應用程式可要求存取裝置資料 (例如使用者的聯絡人資料、簡訊、掛載式儲存空間 (SD 卡)、相機、藍牙等)。
+使用者必須在安裝期間授予所有應用程式權限。
+</li>
+</ul>
+
+<p>本文提供有關 Android 應用程式如何在系統中運作的基本概念，其餘部分則說明以下幾點：
+</p>
+<ul>
+  <li>定義應用程式的核心架構元件。</li>
+  <li>用於宣告應用程式所需元件和裝置功能的宣示說明檔案。
+</li>
+  <li>應用程式的程式碼以外的資源；這些資源可讓您的應用程式針對各種裝置設定最佳化本身的行為。
+</li>
+</ul>
+
+
+
+<h2 id="Components">應用程式元件</h2>
+
+<p>應用程式元件是 Android 應用程式的重要設計模組。每個元件 都是系統進入您應用程式的不同要點。並非所有元件都是使用者的實際進入點；某些元件的定義取決於其他元件，但所有元件都是獨立的個體，扮演著特定角色 &mdash; 換句話說，每個元件都是獨特的設計模組，可協助定義您應用程式的整體行為。
+
+
+
+</p>
+
+<p>應用程式元件可分為 4 種不同類型。每種類型的用途和生命週期均不相同，可定義元件的建立及刪除方式。
+</p>
+
+<p>以下是應用程式元件的 4 種類型：</p>
+
+<dl>
+
+<dt><b>Activity</b></dt>
+
+<dd>單一 <i>Activity</i> 代表顯示使用者介面的一個畫面。例如，電子郵件應用程式可包含一個用於顯示新郵件清單的 Activity、一個用於撰寫郵件的 Activity，以及一個用於閱讀郵件的 Activity。
+
+雖然電子郵件應用程式的 Activity 會共同運作，以提供豐富的使用者體驗，不過每個 Activity 都是不同的個體。
+
+因此，其他應用程式可執行其中任何一項 Activity (如果電子郵件應用程式允許的話)。
+例如，相機應用程式可在電子郵件應用程式中，執行用於撰寫新郵件的 Activity，以便讓使用者分享相片。
+
+
+<p>Activity 是實作成 {@link android.app.Activity} 的子類別；詳情請參閱 <a href="{@docRoot}guide/components/activities.html">Activity</a> 開發人員指南。
+
+</p>
+</dd>
+
+
+<dt><b>服務</b></dt>
+
+<dd>單一 <i>服務</i> 是在背景執行的元件，用於進行長期作業或遠端處理程序工作。
+服務並不會提供使用者介面。
+例如，服務可在使用者位於其他應用程式時在背景撥放音樂，或是透過網路擷取資料，同時允許使用者與 Activity 進行互動。
+
+其他元件 (例如 Activity) 可啟動並讓服務執行，或是繫結至 Activity 以便與其進行互動。
+
+
+<p>服務是實作成 {@link android.app.Service} 的子類別；詳情請參閱<a href="{@docRoot}guide/components/services.html">服務</a>開發人員指南。
+
+</p>
+</dd>
+
+
+<dt><b>內容供應程式</b></dt>
+
+<dd>單一 <i>內容供應程式</i> 可管理一組已分享的應用程式資料。您可以將資料儲存在檔案系統、SQLite 資料庫、網路上，或是您應用程式可存取的任何其他永久儲存空間。
+
+其他應用程式可透過內容供應程式查詢或甚至修改資料 (如果內容供應程式允許這麼做的話)。
+例如，Android 系統會提供用於管理使用者聯絡資訊的內容供應程式。
+因此，任何具備適當權限的應用程式均可查詢內容供應程式的一部分 (例如 {@link
+android.provider.ContactsContract.Data})，以便讀取及寫入有關特定使用者的相關資訊。
+
+
+<p>此外，內容供應程式也可用於讀取及寫入只有您應用程式能存取的不公開資料。
+例如，<a href="{@docRoot}resources/samples/NotePad/index.html">Note Pad</a> 範例應用程式可使用內容供應程式儲存記事。
+</p>
+
+<p>內容供應程式是實作成 {@link android.content.ContentProvider} 的子類別，而且必須實作一組標準 API 以便讓其他應用程式執行交易。
+
+如需詳細資訊，請參閱<a href="{@docRoot}guide/topics/providers/content-providers.html">內容供應程式</a>開發人員指南。
+</p>
+</dd>
+
+
+<dt><b>廣播接收器</b></dt>
+
+<dd>單一 <i>廣播接收器</i> 是一種元件，可回應整個系統的廣播通知。
+大多數廣播都是由系統所發出 &mdash; 例如，系統會發出廣播來通知使用者螢幕已關閉、電池電量不足，或相片已拍攝完成。此外，應用程式也可發出廣播 &mdash; 例如說發出廣播來通知其他應用程式特定資料已下載到裝置，可供它們使用。
+
+
+雖然廣播接收器無法顯示使用者介面，但它們可<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">建立狀態列通知</a>，告訴使用者發生了廣播事件。
+
+具體而言，廣播接收器只是其他元件的「閘道」，用於執行極少量的工作。
+例如，廣播接收器可啟動服務依據事件執行特定工作。
+
+
+<p>廣播接收器是實作為成 {@link android.content.BroadcastReceiver} 的子類別，而每個廣播都是由 {@link android.content.Intent} 物件所發出。
+如需詳細資訊，請參閱 {@link android.content.BroadcastReceiver} 類別。
+</p>
+</dd>
+
+</dl>
+
+
+
+<p>Android 系統設計的一項特色是，任何應用程式都可啟動其他應用程式的元件。
+例如，假設您想讓使用者透過裝置相機拍攝相片，您的應用程式可利用其他具備相關功能的應用程式 (如果有的話)　以達到這個目標，這樣您就不必自行建立用於拍攝相片的 Activity。
+
+您不需要納入或連結相機應用程式的程式碼，只要啟動相機應用程式中用於拍攝像片的 Activity 即可。
+
+
+啟動相關 Activity 後，系統就會將相片傳回您的應用程式供您使用。對於使用者而言，相機就宛如是您應用程式的一部分。
+</p>
+
+<p>當系統啟動某個元件後，就會啟動該應用程式的處理程序 (如果該應用程式目前並非處於執行中狀態) 並且呼叫該元件所需的類別。
+例如，假設您的應用程式啟動相機應用程式中用於拍攝相片的 Activity，則該 Activity 會在隸屬於相機應用程式的處理程序中執行，而不是您應用程式的處理程序。因此，與大多數其他系統的應用程式不同，Android 應用程式沒有單一進入點 (例如沒有 {@code main()} 函式)。
+
+
+
+</p>
+
+<p>系統是在個別處理程序 (具備檔案權限，可限制其他應用程式存取) 中執行每款應用程式，因此您的應用程式無法直接啟動其他應用程式的元件，不過 Android 系統可以。
+
+基於這個原因，如要啟動其他應用程式的元件，您必須向指定「意圖」<em></em>的系統發送訊息，以啟動特定元件。
+
+系統隨後會為您啟用所需的元件。</p>
+
+
+<h3 id="ActivatingComponents">啟用元件</h3>
+
+<p>4 種元件類型的其中 3 種 &mdash; Activity、服務和廣播接收器 &mdash; 是透過「意圖」<em></em>這種非同步訊息啟用。意圖會在執行階段將元件與彼此繫結 (您可以意圖想成要求其他元件進行動作的傳令員)，不論元件是否屬於您的應用程式。
+
+
+
+</p>
+
+<p>意圖是使用 {@link android.content.Intent} 物件建立而成，該物件可定義訊息來啟用特定元件或特定「類型」<em></em>的元件 &mdash; 意圖可以採取明確或隱含設定。
+
+</p>
+
+<p>針對 Activity 和服務，意圖會定義要執行的動作 (例如「查看」或「傳送」某項目)，並且可能會指定執行動作的目標資料 URI (以及通知要啟用的元件)。
+
+例如，意圖可傳達某 Activity 的要求，顯示圖片或開啟網頁。
+在某些情況下，您可以啟動 Activity 來接收結果，此時該 Activity 也會傳回{@link android.content.Intent} 的結果 (例如，您可以發出意圖讓使用者挑選聯絡人資料，並將該資訊傳回給您 &mdash; 傳回意圖會包含指向所選聯絡人的 URI )。
+
+
+
+</p>
+
+<p>針對廣播接收器，意圖只會定義要廣播的通知 (例如，用於通知裝置電量不足的廣播只會包含指出「電池電量不足」的已知動作字串)。
+
+</p>
+
+<p>其他元件類型和內容供應程式並非由意圖所啟用，而是在受 {@link android.content.ContentResolver} 發出的要求所指定時由系統啟用。
+內容解析程式可處理內容供應程式的所有直接交易，因此與供應程式進行交易的元件不必呼叫 {@link
+android.content.ContentResolver} 物件的方法。
+
+這樣會在內容供應程式與要求資訊 (基於安全目的) 之間保留抽象層。
+</p>
+
+<p>用於啟用各種元件的方法有以下幾種：</p>
+<ul>
+  <li>將 {@link android.content.Intent} 傳送到 {@link android.content.Context#startActivity
+startActivity()} 或 {@link android.app.Activity#startActivityForResult startActivityForResult()}　(如果您想讓 Activity 傳回結果的話) 即可啟動 Activity (或是指派新工作給 Activity)。
+
+</li>
+  <li>將 {@link android.content.Intent} 傳送到 {@link android.content.Context#startService
+startService()} 即可啟動服務　(或是指派新指示給正在執行的服務)。
+或者，您也可以將 {@link android.content.Intent} 傳送到
+{@link android.content.Context#bindService bindService()} 來繫結至服務。</li>
+  <li>將 {@link android.content.Intent} 傳送到
+{@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}、{@link
+android.content.Context#sendOrderedBroadcast(Intent, String) sendOrderedBroadcast()} 或 {@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()} 等方法即可啟用廣播。</li>
+  <li>對 {@link android.content.ContentResolver} 呼叫{@link
+android.content.ContentProvider#query query()} 即可查詢內容供應程式。</li>
+</ul>
+
+<p>如要進一步瞭解如何使用意圖，請參閱<a href="{@docRoot}guide/components/intents-filters.html">意圖和意圖篩選器</a>。
+如要進一步瞭解如何啟用特定元件，請參閱下列說明文件：
+<a href="{@docRoot}guide/components/activities.html">Activity</a>、<a href="{@docRoot}guide/components/services.html">服務</a>、{@link
+android.content.BroadcastReceiver} 和<a href="{@docRoot}guide/topics/providers/content-providers.html">內容供應程式</a>。</p>
+
+
+<h2 id="Manifest">宣示說明檔案</h2>
+
+<p>Android 系統必須先讀取應用程式的 {@code AndroidManifest.xml} 檔案 (「宣示說明」檔案)　確認應用程式元件確實存在，才能啟動該元件。
+
+您的應用程式必須在這個檔案中宣告本身的所有元件，而該檔案必須位於應用程式專案目錄的根目錄。
+</p>
+
+<p>除了宣告應用程式的元件以外，宣示說明還可以進行許多工作，包括：
+</p>
+<ul>
+  <li>識別應用程式所需的任何使用者權限，例如網際網路存取權或使用者合約的讀取存取權。
+</li>
+  <li>根據應用程式使用的 API，宣告應用程式所需的最低 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API 級別</a>。
+</li>
+  <li>宣告應用程式所使用或所需的硬體和軟體，例如相機、藍牙服務或多點觸控螢幕。
+</li>
+  <li>應用程式需要連結的 API 程式庫 (除了 Android 架構　API 以外)，例如 <a href="http://code.google.com/android/add-ons/google-apis/maps-overview.html">Google 地圖程式庫</a>。
+
+</li>
+  <li>還有其他工作</li>
+</ul>
+
+
+<h3 id="DeclaringComponents">宣告元件</h3>
+
+<p>宣告說明的主要工作是將應用程式的元件告知系統。例如，宣告說明檔案可用如下方式宣告 Activity：
+ </p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest ... &gt;
+    &lt;application android:icon="@drawable/app_icon.png" ... &gt;
+        &lt;activity android:name="com.example.project.ExampleActivity"
+                  android:label="@string/example_label" ... &gt;
+        &lt;/activity&gt;
+        ...
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>在 <code><a
+href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>元素中，{@code android:icon} 屬性會指向識別應用程式的圖示資源。
+
+</p>
+
+<p>而在 <code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 元素中，
+{@code android:name} 屬性會指定 {@link
+android.app.Activity} 子類別的完整類別名稱，{@code android:label} 屬性則會指定要當作 Activity 的使用者可見標籤使用的字串。
+</p>
+
+<p>您必須用以下方式宣告所有應用程式元件：</p>
+<ul>
+  <li><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>：Activity 適用的元素
+</li>
+  <li><code><a
+href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>：服務適用的元素
+</li>
+  <li><code><a
+href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>：廣播接收器適用的元素
+</li>
+  <li><code><a
+href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>：內容供應程式適用的元素
+</li>
+</ul>
+
+<p>系統看不到您納入來源但未在宣示說明中宣告的 Activity、服務和內容供應程式，因此系統無法執行這些項目。
+不過，您可在宣示說明宣告廣播接收器，或是透過程式碼以動態方式建立廣播接收器 (將廣播接收器建立為 
+{@link android.content.BroadcastReceiver} 物件)，然後呼叫 {@link android.content.Context#registerReceiver registerReceiver()}
+向系統註冊廣播接收器。
+
+</p>
+
+<p>如要進一步瞭解如何為應用程式建立宣示說明檔案，請參閱 <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">AndroidManifest.xml 檔案</a>。
+ </p>
+
+
+
+<h3 id="DeclaringComponentCapabilities">宣告元件功能</h3>
+
+<p>如<a href="#ActivatingComponents">啟用元件</a>所述，您可以使用
+{@link android.content.Intent} 來啟動 Activity、服務和廣播接收器。如要這麼做，請在意圖中明確指定目標元件 (使用元件類別名稱)。
+不過，意圖最大的功能在於「隱含意圖」<em></em>的概念。
+隱含意圖可簡單描述要執行的動作類型 (或是執行動作的資料依據) 以及讓系統在裝置中找出可執行動作的元件，然後加以啟動。
+
+
+如果意圖指出有多個元件可執行動作，則使用者可選取要使用的元件。
+</p>
+
+<p>系統會比對接受到的意圖與裝置上其他應用程式的宣示說明檔案中提供的意圖篩選器，藉此識別可回應意圖的元件。
+<i></i>
+</p>
+
+<p>在應用程式的宣示說明中宣告 Activity 時，您可視需要納入宣告 Activity 功能的意圖篩選器，以便讓 Activity 可回應其他應用程式的意圖。
+
+您可以為元件宣告意圖篩選器，方法是將 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code
+&lt;intent-filter&gt;}</a> 元素新增為元件宣告元素的子元素。
+</p>
+
+<p>例如，假設您以用於撰寫新郵件的 Activity 建置電子郵件應用程式，您可以下列方式宣告意圖篩選器來回應「傳送」意圖 (藉此傳送新郵件)：
+</p>
+<pre>
+&lt;manifest ... >
+    ...
+    &lt;application ... &gt;
+        &lt;activity android:name="com.example.project.ComposeEmailActivity">
+            &lt;intent-filter>
+                &lt;action android:name="android.intent.action.SEND" />
+                &lt;data android:type="*/*" />
+                &lt;category android:name="android.intent.category.DEFAULT" />
+            &lt;/intent-filter>
+        &lt;/activity>
+    &lt;/application&gt;
+&lt;/manifest>
+</pre>
+
+<p>接著，如果其他應用程式透過 {@link
+android.content.Intent#ACTION_SEND} 動作建立了意圖並傳送到 {@link android.app.Activity#startActivity
+startActivity()}，系統就可能會啟動您的 Activity 讓使用者撰寫及傳送郵件。
+</p>
+
+<p>如要進一不瞭解如何建立意圖篩選器，請參閱<a href="{@docRoot}guide/components/intents-filters.html">意圖和意圖篩選器</a>。
+</p>
+
+
+
+<h3 id="DeclaringRequirements">宣告應用程式需求</h3>
+
+<p>並非所有搭載 Android 作業系統的裝置都能提供完整功能。
+為了避免使用者在缺少應用程式所需功能的裝置上安裝您的應用程式，請務必在宣示說明檔案中宣告裝置和軟體需求，清楚定義您的應用程式支援的裝置類型。
+
+
+大多數宣告僅供使用者參考，系統無法讀取，但 Google Play 等外部服務可讀取這些宣示，以便在使用者透過自己的裝置搜尋應用程式時提供篩選功能。
+
+</p>
+
+<p>例如，假設您的應用程式需要相機且採用 Android 2.1 (<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API 級別</a> 7) 導入的 API，建議您用下列方式在宣示說明檔案中宣告這些需求：
+</p> 
+
+<pre>
+&lt;manifest ... >
+    &lt;uses-feature android:name="android.hardware.camera.any"
+                  android:required="true" />
+    &lt;uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" />
+    ...
+&lt;/manifest>
+</pre>
+
+<p>如此一來，「沒有」<em></em>相機且搭載 Android 2.1「以下版本」<em></em>的裝置就無法從 Google Play 安裝您的應用程式。
+</p>
+
+<p>不過，您也可以宣告您的應用程式會使用相機，但相機並非應用程式的「必要」<em></em>配備。
+在這種情況下，應用程式的 <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#required">{@code required}</a>屬性必須設為 {@code "false"}，而且應用程式必須在執行階段檢查裝置是否具備相機，並且視需要停用任何相機功能。
+
+</p>
+
+<p>如要進一步瞭解如何管理應用程式與不同裝置的相容性，請參閱<a href="{@docRoot}guide/practices/compatibility.html">裝置相容性</a>。
+
+</p>
+
+
+
+<h2 id="Resources">應用程式資源</h2>
+
+<p>Android 應用程式是以程式碼等其他要素開發而成 &mdash; 例如圖片、音訊檔案以及與應用程式視覺效果相關的其他資源。例如，您必須使用 XML 檔案定義 Activity 使用者介面的動畫、選單、樣式、顏色以及版面配置。
+
+
+使用應用程式資源可協助更新應用程式的各種特性，而不必修改程式碼 &mdash; 或是提供多組替代資源 &mdash; 藉此針對各種裝置設定 (例如不同的語言和螢幕大小) 最佳化您的應用程式。
+
+
+</p>
+
+<p>針對您在 Android 專案中加入的所有資源，SDK 建置工具會定義一個整數 ID，讓您用於從應用程式的程式碼或 XML 中定義的其他資源參照特定資源。
+
+例如，假設您的應用程式含有名為 {@code
+logo.png} 的圖片檔案 (儲存在 {@code res/drawable/} 目錄中)，SDK 工具會產生名為 {@code R.drawable.logo} 的資源 ID，讓您用於參照圖片並將其插入使用者介面。
+
+</p>
+
+<p>提供原始碼以外資源的一個重點是針對不同的裝置設定提供替代資源。
+
+例如，您可以在 XML 中定義使用者介面字串，藉此將字串翻譯成其他語言，以及將這些字串儲存成個別檔案。
+接著，視您附加到資源目錄名稱的語言「修飾語」<em></em> (例如代表法文字串值的 {@code res/values-fr/})，以及使用者的語言設定而定，Android 系統會為您的 UI 套用適當的語言字串。
+
+
+</p>
+
+<p>Android 針對替代資源支援各種「修飾語」<em></em>。修飾語是一個簡短字串；您可在資源目錄名稱中加入修飾語，藉此定義應使用這些資源的裝置設定。
+
+例如，您通常需要為 Activity 建立多種版面配置 (視裝置螢幕的方向和大小而定)。
+
+例如，假設裝置螢幕的方向為縱向 (直版)，版面配置的按鈕就必須以垂直方向排列；假設裝置螢幕的方向為橫向 (寬版)，則版面配置的按鈕就必須以水平方向排列。
+
+如要根據螢幕方向變更版面配置，請建立兩種版面配置，然後為每個版面配置目錄名稱套用適當的修飾語。
+
+如此系統就會根據目前的裝置方向，自動套用適當的版面配置。
+</p>
+
+<p>如要進一步瞭解您可在應用程式中加入的資源類型，以及如何針對不同的裝置設定建立替代資源，請詳閱<a href="{@docRoot}guide/topics/resources/providing-resources.html">提供資源</a>。
+</p>
+
+
+
+<div class="next-docs">
+<div class="col-6">
+  <h2 class="norule">繼續閱讀有關下列主題的說明文章：</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/components/intents-filters.html">意圖和意圖篩選器</a>
+    </dt>
+    <dd>說明如何使用 {@link android.content.Intent} API 來啟用應用程式元件 (例如 Activity 和服務)，以及如何將應用程式元件提供給其他應用程式使用。
+
+</dd>
+    <dt><a href="{@docRoot}guide/components/activities.html">Activity</a></dt>
+    <dd>說明如何建立 {@link android.app.Activity} 類別執行個體，以便讓應用程式的使用者介面提供不同內容。
+</dd>
+    <dt><a href="{@docRoot}guide/topics/resources/providing-resources.html">提供資源</a></dt>
+    <dd>說明 Android 應用程式如何區別應用程式資源與程式碼，包括如何針對特定裝置設定供替代資源。
+
+
+    </dd>
+  </dl>
+</div>
+<div class="col-6">
+  <h2 class="norule">您可能也會想瞭解下列主題：</h2>
+  <dl>
+    <dt><a href="{@docRoot}guide/practices/compatibility.html">裝置相容性</a></dt>
+    <dd>說明 Android 如何在各種裝置上運作，以及如何針對各個裝置最佳化您的應用程式，或針對不同裝置限制應用程式提供的功能。
+
+</dd>
+    <dt><a href="{@docRoot}guide/topics/security/permissions.html">系統權限</a></dt>
+    <dd>說明 Android 如何運用系統權限規定應用程式必須取得使用者同意才能使用特定 API。
+</dd>
+  </dl>
+</div>
+</div>
+
diff --git a/docs/html-intl/intl/zh-tw/guide/components/index.jd b/docs/html-intl/intl/zh-tw/guide/components/index.jd
new file mode 100644
index 0000000..f34c712
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/index.jd
@@ -0,0 +1,57 @@
+page.title=應用程式元件
+page.landing=true
+page.landing.intro=Android 的應用程式架構可讓您使用一系列可重複使用的元件，建立內容豐富的新穎應用程式。本節說明如何建置元件來定義應用程式的設計模組，以及如何使用意圖連結這些元件。
+page.metaDescription=Android 的應用程式架構可讓您使用一系列可重複使用的元件，建立內容豐富的新穎應用程式。本節說明如何建置元件來定義應用程式的設計模組，以及如何使用意圖連結這些元件。
+page.landing.image=images/develop/app_components.png
+page.image=images/develop/app_components.png
+
+@jd:body
+
+<div class="landing-docs">
+
+  <div class="col-6">
+    <h3>部落格文章</h3>
+    
+    <a href="http://android-developers.blogspot.com/2012/05/using-dialogfragments.html">
+      <h4>使用 DialogFragments</h4>
+      <p>本文示範如何搭配 v4 支援程式庫 (可針對 Honeycomb 以下版本裝置提供向下相容性支援) 使用 DialogFragments 來顯示簡易的編輯對話方塊，以及透過介面將結果回傳給呼叫「Activity」。</p>
+    </a>
+
+    <a href="http://android-developers.blogspot.com/2011/03/fragments-for-all.html">
+      <h4>適用於各種裝置的片段</h4>
+      <p>我們於今日推出的靜態程式庫可列出相同的 Fragments API (以及新的 LoaderManager 和些許其他類別)，讓與 Android 1.6 以下版本相容的應用程式能夠使用片段來建立相容於平板電腦的使用者介面。 </p>
+    </a>
+    
+    <a href="http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html">
+      <h4>運用多個執行緒來提升效能</h4>
+      <p>建立回應式應用程式的建議做法是，最小化您的主要 UI 執行緒所執行的工作數。
+方法是讓應用程式透過其他執行緒處理任何所需執行時間偏長的工作。
+</p>
+    </a>
+  </div>
+
+  <div class="col-6">
+    <h3>培訓</h3>
+    
+    <a href="http://developer.android.com/training/basics/activity-lifecycle/index.html">
+      <h4>管理 Activity 生命週期</h4>
+      <p>本課程說明每個「Activity」執行個體都會接收的生命週期重要回呼方法，並且說明如何使用這些方法，讓 Activity 的運作能符合使用者的預期，以及讓 Activity 在不需要系統資源時不耗用這類資源。
+
+</p>
+    </a>
+
+    <a href="http://developer.android.com/training/basics/fragments/index.html">
+      <h4>使用片段建置動態 UI</h4>
+      <p>本課程示範如何使用片段來設計動態使用者體驗，以及如何針對各種螢幕大小的裝置最佳化您的應用程式使用者體驗，同時讓應用程式繼續支援搭載 Android 1.6 等舊版作業系統的裝置。
+
+</p>
+    </a>
+
+    <a href="http://developer.android.com/training/sharing/index.html">
+      <h4>分享內容</h4>
+      <p>本課程說明幾個使用 Intent API 和 Action Provider 物件在不同應用程式間傳送及接收內容的常見方法。
+</p>
+    </a>
+  </div>
+
+</div>
diff --git a/docs/html-intl/intl/zh-tw/guide/components/intents-filters.jd b/docs/html-intl/intl/zh-tw/guide/components/intents-filters.jd
new file mode 100644
index 0000000..d3edac3
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/intents-filters.jd
@@ -0,0 +1,899 @@
+page.title=意圖和意圖篩選器
+page.tags="IntentFilter"
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文件內容</h2>
+<ol>
+  <li><a href="#Types">意圖類型</a></li>
+  <li><a href="#Building">建置意圖</a>
+    <ol>
+      <li><a href="#ExampleExplicit">明確意圖範例</a></li>
+      <li><a href="#ExampleSend">隱含意圖範例</a></li>
+      <li><a href="#ForceChooser">強制顯示應用程式選擇器</a></li>
+    </ol>
+  </li>
+  <li><a href="#Receiving">接收隱含意圖</a>
+    <ol>
+      <li><a href="#ExampleFilters">篩選器範例</a></li>
+    </ol>
+  </li>
+  <li><a href="#PendingIntent">使用待處理意圖</a></li>
+  <li><a href="#Resolution">意圖解析</a>
+    <ol>
+      <li><a href="#ActionTest">動作測試</a></li>
+      <li><a href="#CategoryTest">類別測試</a></li>
+      <li><a href="#DataTest">資料測試</a></li>
+      <li><a href="#imatch">意圖比對</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>另請參閱</h2>
+<ol>
+<li><a href="{@docRoot}training/basics/intents/index.html">與其他應用程式互動</a></li>
+<li><a href="{@docRoot}training/sharing/index.html">分享內容</a></li>
+</ol>
+
+</div>
+</div>
+
+
+
+
+<p>{@link android.content.Intent} 是可用來向另一個<a href="{@docRoot}guide/components/fundamentals.html#Components">應用程式元件</a>要求動作的傳訊物件。
+
+雖然意圖有幾種方式可加速元件間的通訊，但共有三種基本使用案例：
+</p>
+
+<ul>
+<li><b>如何啟動 Activity：</b>
+<p>{@link android.app.Activity} 代表應用程式中的單一畫面。您可以將 {@link android.content.Intent} 傳送至 {@link android.content.Context#startActivity startActivity()} 來啟動
+{@link android.app.Activity} 的新執行個體。
+{@link android.content.Intent} 可描述要啟動的 Activity 並攜帶任何必要資料。
+</p>
+
+<p>如果您想要在 Activity 完成時收到結果，
+請呼叫 {@link android.app.Activity#startActivityForResult
+startActivityForResult()}。Activity 的 {@link android.app.Activity#onActivityResult onActivityResult()}回呼中的個別 {@link android.content.Intent} 物件，就是 Activity 收到的結果。
+
+如需詳細資訊，請參閱 <a href="{@docRoot}guide/components/activities.html">Activity</a> 指南。
+</p></li>
+
+<li><b>如何啟動服務：</b>
+<p>{@link android.app.Service} 是可以在背景中執行操作的元件，但沒有使用者介面。
+您可以將 {@link android.content.Intent} 傳送至
+{@link android.content.Context#startService startService()} 來啟動服務以執行一次性操作 (例如下載檔案)。
+{@link android.content.Intent} 可描述要啟動的服務並攜帶任何必要資料。
+</p>
+
+<p>如果服務是採用主從介面設計，您可以將 {@link android.content.Intent} 傳送至 {@link
+android.content.Context#bindService bindService()} 來繫結至另一個元件的服務。</code>
+如需詳細資訊，請參閱<a href="{@docRoot}guide/components/services.html">服務</a>指南。</p></li>
+
+<li><b>如何傳送廣播：</b>
+<p>廣播是指任何應用程式都可接收的訊息。系統會傳送各種系統事件廣播，例如系統開機或裝置開始充電。
+您可以將 {@link android.content.Intent} 傳送至 {@link android.content.Context#sendBroadcast(Intent) sendBroadcast()}、
+{@link android.content.Context#sendOrderedBroadcast(Intent, String) 或{@link
+android.content.Context#sendStickyBroadcast sendStickyBroadcast()}，以向其他應用程式傳送廣播。
+
+
+</p>
+</li>
+</ul>
+
+
+
+
+<h2 id="Types">意圖類型</h2>
+
+<p>意圖類型分為兩種：</p>
+
+<ul>
+<li><b>明確意圖</b>：可依名稱 (完整類別名稱) 指定要啟動的元件。
+一般情況下，您會使用明確意圖啟動您應用程式中的元件，這是因為您知道 Activity 的類別名稱或您想要啟動的服務。
+例如，為回應使用者動作而啟動新的 Activity，或啟動服務以在背景下載檔案。
+
+</li>
+
+<li><b>隱含意圖</b>：不會指定特定元件，而會宣告要執行的一般動作，讓另一個應用程式的元件來處理它。
+例如，如果您想要向使用者顯示地圖上的某個位置，可以使用隱含意圖，要求另一個支援應用程式在地圖上顯示指定的位置。
+
+</li>
+</ul>
+
+<p>當您建立明確意圖以啟動 Activity 或服務時，系統會立即啟動
+{@link android.content.Intent} 物件中指定的應用程式元件。</p>
+
+<div class="figure" style="width:446px">
+<img src="{@docRoot}images/components/intent-filters@2x.png" width="446" alt="" />
+<p class="img-caption"><strong>圖 1.</strong>說明如何透過系統傳送隱含意圖以啟動另一個 Activity：<b>[1]</b> Activity A <em></em> 會建立含有動作描述的{@link android.content.Intent} 並傳送至 {@link
+android.content.Context#startActivity startActivity()}。<b>[2]</b> Android 系統會搜尋所有應用程式，以找出符合該意圖的意圖篩選器。
+
+
+找到相符項目時，<b>[3]</b> 系統會呼叫其 {@link android.app.Activity#onCreate onCreate()} 方法，並將 {@link android.content.Intent} 傳送給它來啟動相符的 Activity (Activity B<em></em>)。
+
+
+</p>
+</div>
+
+<p>當您建立隱含意圖時，Android 系統會比較意圖內容和裝置上其他應用程式的<a href="{@docRoot}guide/topics/manifest/manifest-intro.html">宣示說明檔案</a>中宣告的「意圖篩選器」<em></em>，以找出要啟動的適當元件。
+
+如果意圖和意圖篩選器相符，系統會啟動該元件，並將 {@link android.content.Intent} 物件傳送給它。
+如果有多個意圖篩選器符合意圖，系統會顯示對話方塊，供使用者挑選要使用的應用程式。
+</p>
+
+<p>意圖篩選器是應用程式宣示說明檔案中的運算式，可指定元件要接收的意圖類型。
+
+例如，藉由宣告 Activity 的意圖篩選器，可讓其他應用程式使用特定意圖類型直接啟動您的 Activity。
+同樣地，如果您「不」<em></em>為 Activity 宣告任何意圖篩選器，就只能以明確意圖啟動它。
+
+</p>
+
+<p class="caution"><strong>注意：</strong>為了確保您的應用程式安全，請一律使用明確意圖啟動 {@link android.app.Service}，並且不要宣告服務的意圖篩選器。
+
+使用隱含意圖啟動服務會危害安全性，原因在於您無法確定哪個服務會回應意圖，而且使用者無法得知系統會啟動哪項服務。
+
+從 Android 5.0 (API 級別 21) 開始，如果您使用隱含意圖呼叫 {@link android.content.Context#bindService bindService()}，系統都會擲回例外狀況。
+
+</p>
+
+
+
+
+
+<h2 id="Building">建置意圖</h2>
+
+<p>{@link android.content.Intent} 物件攜帶 Android 系統用來判斷要啟動哪個元件的資訊 (例如應接收意圖的確切元件名稱或元件類別)，再加上接收者元件用以適當執行動作的資訊 (例如要執行的動作和據以執行的資料)。
+
+
+</p>
+
+
+<p>{@link android.content.Intent} 包含的主要資訊如下：</p>
+
+<dl>
+
+<dt><b>元件名稱</b></dt>
+<dd>要啟動元件的名稱。
+
+<p>雖可選擇是否使用，但這卻是讓意圖「明確」<b></b>的重要資訊，表示意圖只能傳送至元件名稱所定義的應用程式元件。
+
+如果不使用元件名稱，意圖會是「隱含」<b></b>的，因此系統會根據其他意圖資訊來決定哪個元件應接收意圖 (例如動作、資料及類別 &mdash; 如下所述)。
+
+如果您需要啟動應用程式中的特定元件，就應該指定元件名稱。
+</p>
+
+<p class="note"><strong>注意：</strong>啟動 {@link android.app.Service} 時，請務必指定元件名稱。
+<strong></strong>否則，您無法確定哪個服務會回應意圖，而且使用者無法得知系統會啟動哪項服務。
+</p>
+
+<p>{@link android.content.Intent} 的這個欄位是
+{@link android.content.ComponentName} 物件，您可以使用目標元件的完整類別名稱加以指定，包括應用程式的封裝名稱。例如，
+
+{@code com.example.ExampleActivity}。您可以使用 {@link
+android.content.Intent#setComponent setComponent()}、{@link android.content.Intent#setClass
+setClass()}、{@link android.content.Intent#setClassName(String, String) setClassName()} 或
+{@link android.content.Intent} 建構函式來設定元件名稱。</p>
+
+</dd>
+
+<p><dt><b>動作</b></dt>
+<dd>以字串指定要執行的一般動作 (例如「檢視」<em></em>或「挑選」<em></em>)。
+
+<p>就廣播意圖而言，這是指已發生且系統回報的動作。動作大半決定其餘意圖的建構方式 &mdash; 特別是資料與額外資料中包含的項目。
+
+
+
+<p>您可以在應用程式內指定自己的動作以供意圖使用 (或由其他應用程式用來呼叫應用程式中的元件)，但您應使用 {@link android.content.Intent} 類別或其他架構類別定義的動作常數。
+
+以下是可啟動 Activity 的一些常見動作：
+</p>
+
+<dl>
+<dt>{@link android.content.Intent#ACTION_VIEW}</dt>
+   <dd>當您有一些資訊可讓 Activity 向使用者顯示時，例如要在圖庫應用程式檢視的相片或要在地圖應用程式檢視的地址，就可以透過 {@link android.content.Context#startActivity startActivity()} 使用意圖中的這個動作。
+
+
+</dd>
+
+<dt>{@link android.content.Intent#ACTION_SEND}</dt>
+   <dd>也稱為「分享」意圖，當您有一些資料可供使用者透過其他應用程式分享時，例如電子郵件應用程式或社交分享應用程式，才應透過 {@link android.content.Context#startActivity startActivity()} 使用意圖中的這個動作。
+
+</dd>
+</dl>
+
+<p>如要進一步瞭解定義一般動作的常數，請參閱 {@link android.content.Intent} 類別參考文件。
+其他動作則是在 Android 架構的其他位置完成定義，例如可在系統設定應用程式中開啟特定畫面的動作位在 {@link android.provider.Settings} 中。
+
+</p>
+
+<p>您可以透過 {@link android.content.Intent#setAction
+setAction()} 或 {@link android.content.Intent} 建構函式來指定意圖的動作。</p>
+
+<p>如果您定義自己的動作，請務必加入您應用程式的封裝名稱做為前置詞。
+例如：</p>
+<pre>static final String ACTION_TIMETRAVEL = "com.example.action.TIMETRAVEL";</pre>
+</dd>
+
+<dt><b>資料</b></dt>
+<dd>URI ({@link android.net.Uri} 物件) 可參考據以執行的資料和/或該資料的 MIME 類型。
+提供的資料類型通常是由意圖的動作控制。例如，如果動作是 {@link android.content.Intent#ACTION_EDIT}，資料就應包含欲編輯文件的 URI。
+
+
+
+<p>建立意圖時，除了意圖的 URI 以外，請務必指定資料類型 (其 MIME 類型)。
+
+
+例如，能夠顯示影像的 Activity 可能無法播放音訊檔案，即使有類似的 URI 格式。
+因此，指定資料的 MIME 格式可協助 Android 系統找出最適合接收意圖的元件。
+
+不過 &mdash; 尤其是當資料指出資料位在裝置何處且受
+{@link android.content.ContentProvider} 控制讓系統看見資料 MIME 類型的
+{@code content:} URI 時，有時能夠從 URI 推論出 MIME 類型。</p>
+
+<p>如果您只想設定資料 URI，請呼叫 {@link android.content.Intent#setData setData()}。
+如要設定 MIME 類型，請呼叫 {@link android.content.Intent#setType setType()}。您還可以視需要利用
+{@link
+android.content.Intent#setDataAndType setDataAndType()} 明確設定兩者。</p>
+
+<p class="caution"><strong>注意：</strong>如果您想同時設定 URI 與 MIME 類型，「請勿」<strong></strong>呼叫 {@link android.content.Intent#setData setData()} 和
+{@link android.content.Intent#setType setType()}，原因是這兩者會抵銷彼此的值。
+請務必使用 {@link android.content.Intent#setDataAndType setDataAndType()} 來設定 URI 與 MIME 類型。
+
+</p>
+</dd>
+
+<p><dt><b>類別</b></dt>
+<dd>字串當中包含哪種元件應處理意圖的其他相關資訊。
+意圖中可放置的類別描述數目並沒有限制，但大多數意圖都不需要類別。
+以下是一些常見類別：
+
+
+<dl>
+<dt>{@link android.content.Intent#CATEGORY_BROWSABLE}</dt>
+  <dd>目標 Activity 允許自己由網頁瀏覽器啟動，以顯示連結所參照的資料 &mdash; 例如影像或電子郵件訊息。
+
+  </dd>
+<dt>{@link android.content.Intent#CATEGORY_LAUNCHER}</dt>
+  <dd>Activity 是工作的初始 Activity，而且列在系統的應用程式啟動器中。
+
+  </dd>
+</dl>
+
+<p>如需類別的完整清單，請參閱 {@link android.content.Intent} 類別描述。
+</p>
+
+<p>您可以使用 {@link android.content.Intent#addCategory addCategory()} 來指定類別。</p>
+</dd>
+</dl>
+
+
+<p>以上列出的屬性 (元件名稱、動作、資料及類別) 代表意圖的定義特性。
+藉由讀取這些屬性，Android 系統就能分析出應啟動的應用程式元件。
+</p>
+
+<p>不過，意圖還能攜帶其他不影響如何將它解析成應用程式元件的資訊。
+意圖還能提供：</p>
+
+<dl>
+<dt><b>額外資料</b></dt>
+<dd>鍵值對當中攜帶完成要求動作所需的其他資訊。
+和有些動作會使用特定種類的資料 URI 一樣，有些動作也會使用特定的額外資料。
+
+<p>您可以使用各種 {@link android.content.Intent#putExtra putExtra()}方法來新增額外資料，每種方法都接受兩個參數：索引鍵名稱與值。
+
+
+您也可以使用所有的額外資料建立 {@link android.os.Bundle} 物件，再透過 {@link
+android.content.Intent#putExtras putExtras()} 將 {@link android.content.Intent} 插入 {@link android.os.Bundle}。</p>
+
+<p>例如，建立意圖以使用
+{@link android.content.Intent#ACTION_SEND} 來傳送電子郵件時，您可以利用
+{@link android.content.Intent#EXTRA_EMAIL} 索引鍵指定「收件者」，並使用
+{@link android.content.Intent#EXTRA_SUBJECT} 索引鍵指定「主旨」。</p>
+
+<p>{@link android.content.Intent} 類別指定許多用於標準化資料類型的
+{@code EXTRA_*} 常數。如果您需要宣告自己的額外資料索引鍵 (用於您應用程式接收的意圖)，請務必加入您應用程式的封裝名稱做為前置詞。
+
+例如：</p>
+<pre>static final String EXTRA_GIGAWATTS = "com.example.EXTRA_GIGAWATTS";</pre>
+</dd>
+
+<dt><b>旗標</b></dt>
+<dd>{@link android.content.Intent} 類別中定義的旗標，可當成意圖的中繼資料使用。
+旗標可指示 Android 系統如何啟動 Activity (例如，Activity 屬於哪個
+<a href="{@docRoot}guide/components/tasks-and-back-stack.html">工作</a>) 以及如何處理已啟動的 Activity (例如，它是否屬於最近 Activity 清單)。
+
+
+
+<p>如需詳細資訊，請參閱 {@link android.content.Intent#setFlags setFlags()} 方法。</p>
+</dd>
+
+</dl>
+
+
+
+
+<h3 id="ExampleExplicit">明確意圖範例</h3>
+
+<p>您用來啟動特定應用程式元件的就是明確意圖，例如應用程式中的特定 Activity 或服務。如要建立明確意圖，請定義
+
+{@link android.content.Intent}物件的元件名稱 &mdash; 其他意圖屬性均為選用性質。
+</p>
+
+<p>例如，您在應用程式中建置稱為 {@code DownloadService} 的服務，其設計為從網頁下載檔案，您可以使用下列程式碼來啟動該服務：
+</p>
+
+<pre>
+// Executed in an Activity, so 'this' is the {@link android.content.Context}
+// The fileUrl is a string URL, such as "http://www.example.com/image.png"
+Intent downloadIntent = new Intent(this, DownloadService.class);
+downloadIntent.setData({@link android.net.Uri#parse Uri.parse}(fileUrl));
+startService(downloadIntent);
+</pre>
+
+<p>{@link android.content.Intent#Intent(Context,Class)} 建構函式提供應用程式 {@link android.content.Context} 與元件 ({@link java.lang.Class} 物件)。
+
+因此，這個意圖會明確啟動應用程式中的
+{@code DownloadService} 類別。</p>
+
+<p>如要進一步瞭解如何建置及啟動服務，請參閱<a href="{@docRoot}guide/components/services.html">服務</a>指南。
+</p>
+
+
+
+
+<h3 id="ExampleSend">隱含意圖範例</h3>
+
+<p>隱藏意圖指定的動作會呼叫裝置上任何能執行該動作的應用程式。
+當您的應用程式無法執行該動作，但其他應用程式或許能執行，而您想讓使用者挑選要使用的應用程式時，使用隱含意圖相當有用。
+</p>
+
+<p>例如，您有想讓使用者與其他人分享的內容，可使用
+{@link android.content.Intent#ACTION_SEND} 動作來建立意圖，以及新增可指定要分享內容的額外資料。
+當您使用該意圖呼叫
+{@link android.content.Context#startActivity startActivity()} 時，使用者就能挑選要用以分享內容的應用程式。
+</p>
+
+<p class="caution"><strong>注意：</strong>使用者可能會沒有「任何」<em></em>
+應用程式可處理您傳送至 {@link android.content.Context#startActivity
+startActivity()} 的隱含意圖。如果發生這種情況，呼叫會失敗且應用程式將會當機。如要確認 Activity 將可收到意圖，請在
+{@link android.content.Intent} 物件上呼叫 {@link android.content.Intent#resolveActivity
+resolveActivity()}。如果結果不是 null，表示至少有一個應用程式能夠處理該意圖，可以放心呼叫
+
+{@link android.content.Context#startActivity startActivity()}。如果結果為 null，表示您不應使用該意圖，可以的話您還必須將發出該意圖的功能停用。
+
+</p>
+
+
+<pre>
+// Create the text message with a string
+Intent sendIntent = new Intent();
+sendIntent.setAction(Intent.ACTION_SEND);
+sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
+sendIntent.setType("text/plain");
+
+// Verify that the intent will resolve to an activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(sendIntent);
+}
+</pre>
+
+<p class="note"><strong>注意：</strong>在這種情況下，不會使用 URI，但會宣告意圖的資料類型，以指定額外資料所攜帶的內容。
+</p>
+
+
+<p>呼叫 {@link android.content.Context#startActivity startActivity()} 時，系統會檢查所有安裝的應用程式，判斷哪些可以處理這種意圖 (含有 {@link android.content.Intent#ACTION_SEND}動作和攜帶「純文字」資料的意圖)。
+
+
+如果只有一個應用程式能夠處理，該應用程式會立即開啟並獲派該意圖。
+如果有多個 Activity 接受該意圖，系統會顯示對話方塊，供使用者挑選要使用的應用程式。
+</p>
+
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/training/basics/intent-chooser.png" alt="">
+  <p class="img-caption"><strong>圖 2.</strong>選擇器對話方塊。</p>
+</div>
+
+<h3 id="ForceChooser">強制顯示應用程式選擇器</h3>
+
+<p>有多個應用程式均回應您的隱含意圖時，使用者可以選擇要使用的應用程式，並將該應用程式當成動作的預設選擇。
+
+如果在執行動作時使用者希望之後都使用同一應用程式 (例如使用者偏好使用某個特定網頁瀏覽器開啟網頁，這項功能就非常實用。
+
+</p>
+
+<p>不過，如果有多個應用程式能回應該意圖，而使用者每次都想使用不同的應用程式，您應該明確顯示選擇器對話方塊。
+選擇器對話方塊每次都會要求使用者選取要用於該動作的應用程式 (使用者無法為該動作選取預設應用程式)。
+
+例如，當您的應用程式使用 {@link
+android.content.Intent#ACTION_SEND} 動作執行「分享」時，使用者可能希望根據當下的情況使用不同的應用程式來分享，此時您應該一律使用選擇器對話方塊，如圖 2 所示。
+</p>
+
+
+
+
+<p>如要顯示選擇器，請使用 {@link
+android.content.Intent#createChooser createChooser()} 建立 {@link android.content.Intent}，並將其傳送至 {@link
+android.app.Activity#startActivity startActivity()}。例如：</p>
+
+<pre>
+Intent sendIntent = new Intent(Intent.ACTION_SEND);
+...
+
+// Always use string resources for UI text.
+// This says something like "Share this photo with"
+String title = getResources().getString(R.string.chooser_title);
+// Create intent to show the chooser dialog
+Intent chooser = Intent.createChooser(sendIntent, title);
+
+// Verify the original intent will resolve to at least one activity
+if (sendIntent.resolveActivity(getPackageManager()) != null) {
+    startActivity(chooser);
+}
+</pre>
+
+<p>以上範例會顯示對話方塊 (將回應意圖的應用程式清單傳送至 {@link
+android.content.Intent#createChooser createChooser()} 方法)，並使用提供的文字做為對話方塊的標題。
+</p>
+
+
+
+
+
+
+
+
+
+<h2 id="Receiving">接收隱含意圖</h2>
+
+<p>如要通知應用程式可接收的隱含內容，請在<a href="{@docRoot}guide/topics/manifest/manifest-intro.html">宣告說明檔案</a>中利用 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a> 元素，針對您的每個應用程式元件宣告一或多個意圖篩選器。每個意圖篩選器都會根據意圖的動作、資料和類別，指定其接受的意圖類型。
+
+
+
+只有在意圖通過您的其中一個意圖篩選器時，系統才會將隱含意圖傳送至您的應用程式元件。
+</p>
+
+<p class="note"><strong>注意：</strong>不論元件宣告的意圖篩選器為何，明確意圖一律會傳送至其目標。
+</p>
+
+<p>應用程式元件應為其所能執行的各個獨特工作宣告不同的篩選器。例如，圖片庫應用程式中的一個 Activity 可能會有兩個篩選器：一個用於檢視圖片的篩選器，以及另一個用於編輯圖片的篩選器。
+
+當 Activity 啟動時，它會檢查
+{@link android.content.Intent} 並根據
+{@link android.content.Intent} 中的資訊決定如何運作 (例如，是否要檢視編輯器控制項)。</p>
+
+<p>每個意圖篩選器都是由 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a> 元素定義在應用程式的宣示說明檔案中，以巢狀方式置於對應的應用程式元件 (例如，<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 元素)。
+
+
+在 <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">{@code &lt;intent-filter&gt;}</a> 內，您可以使用以下三個元素當中的一或多個元素，指定要接受的意圖類型：
+
+</p>
+
+<dl>
+<dt><a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a></dt>
+  <dd>在 {@code name} 屬性中，宣告接受的意圖動作。值必須是動作的常值字串值，不得為類別常數。
+</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a></dt>
+  <dd>使用一或多項屬性指定資料 URI (
+<code>scheme</code>、<code>host</code>、<code>port</code>、
+<code>path</code> 等) 與 MIME 類型的各層面，以宣告接受的資料類型。</dd>
+<dt><a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a></dt>
+  <dd>在 {@code name} 屬性中，宣告接受的意圖類別。值必須是動作的常值字串值，不得為類別常數。
+
+
+  <p class="note"><strong>注意：</strong>如要接收隱含意圖，您「必須」<strong></strong>在意圖篩選器中納入 {@link android.content.Intent#CATEGORY_DEFAULT} 類別。
+
+
+{@link android.app.Activity#startActivity startActivity()} 與
+{@link android.app.Activity#startActivityForResult startActivityForResult()} 方法對所有意圖進行處理時，就像已宣告
+{@link android.content.Intent#CATEGORY_DEFAULT} 類別一樣。
+  如果您未在意圖篩選器中宣告此類別，任何隱含意圖都不會解析為 Activity。
+</p>
+  </dd>
+</dl>
+
+<p>例如，假設資料類型為文字，以下 Activity 宣告的意圖篩選器都可接受
+{@link android.content.Intent#ACTION_SEND} 意圖：</p>
+
+<pre>
+&lt;activity android:name="ShareActivity">
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>想要建立包含多個
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code &lt;action&gt;}</a>、
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> 或
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code &lt;category&gt;}</a> 執行個體的篩選器也沒關係。
+如果您這樣做，只需要確定該元件能處理這些篩選器元素的任何組合。
+</p>
+
+<p>當您想要處理多種意圖，但只限特定的動作、資料及類別類型組合時，您必須建立多個意圖篩選器。
+</p>
+
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>限制存取元件</h2>
+<p>使用意圖篩選器並無法安全地防止其他應用程式啟動您的元件。
+雖然意圖篩選器限制元件只能回應特定的隱含意圖，如果開發人員決定您的元件名稱，另一款應用程式還是有可能使用明確意圖來啟動您的應用程式元件。
+
+
+如果必須「限定只有您自己的應用程式」<em></em>才能啟動您的元件，請將該元件的
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#exported">{@code
+exported}</a> 屬性設定為 {@code "false"}。
+</p>
+</div>
+</div>
+
+<p>藉由將意圖與三個元素個別比較，針對篩選器來測試隱含意圖。
+如要傳送至元件，意圖必須通過共三個測試。
+
+如果無一相符，Android 系統就不會將意圖傳送至該元件。不過，由於元件可能會有多個意圖篩選器，未通過其中一個元件篩選器的意圖可能會通過另一個篩選器。
+
+
+如要進一步瞭解系統如何解析意圖，請參閱下文的<a href="#Resolution">意圖解析</a>。</p>
+
+<p class="caution"><strong>注意：</strong>如要避免一時疏忽而執行不同應用程式的
+{@link android.app.Service}，請一律使用明確意圖啟動您自己的服務，同時不要宣告服務的意圖篩選器。
+</p>
+
+<p class="note"><strong>注意：</strong>對於所有 Activity，您都必須在宣示說明檔案中宣告意圖篩選器。
+
+不過，廣播接收器的篩選器可以藉由呼叫
+{@link android.content.Context#registerReceiver(BroadcastReceiver, IntentFilter, String,
+Handler) registerReceiver()} 進行動態註冊。您之後可以利用 {@link
+android.content.Context#unregisterReceiver unregisterReceiver()} 來取消註冊接收器。這樣做可在您的應用程式執行時，讓應用程式只能在指定期間內接聽特定廣播。
+
+</p>
+
+
+
+
+
+
+
+<h3 id="ExampleFilters">篩選器範例</h3>
+
+<p>如要進一步瞭解意圖篩選器行為，可以看看社交分享應用程式宣示說明檔案中的以下程式碼片段。
+</p>
+
+<pre>
+&lt;activity android:name="MainActivity">
+    &lt;!-- This activity is the main entry, should appear in app launcher -->
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.MAIN" />
+        &lt;category android:name="android.intent.category.LAUNCHER" />
+    &lt;/intent-filter>
+&lt;/activity>
+
+&lt;activity android:name="ShareActivity">
+    &lt;!-- This activity handles "SEND" actions with text data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="text/plain"/>
+    &lt;/intent-filter&gt;
+    &lt;!-- This activity also handles "SEND" and "SEND_MULTIPLE" with media data -->
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.SEND"/>
+        &lt;action android:name="android.intent.action.SEND_MULTIPLE"/>
+        &lt;category android:name="android.intent.category.DEFAULT"/>
+        &lt;data android:mimeType="application/vnd.google.panorama360+jpg"/>
+        &lt;data android:mimeType="image/*"/>
+        &lt;data android:mimeType="video/*"/>
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>第一個 Activity {@code MainActivity} 是應用程式的主要進入點 &mdash; 這個 Activity 會在使用者使用啟動器圖示初次啟動應用程式時開啟：
+</p>
+<ul>
+  <li>{@link android.content.Intent#ACTION_MAIN} 動作可指出這是主要進入點且預期沒有任何意圖資料。
+</li>
+  <li>{@link android.content.Intent#CATEGORY_LAUNCHER} 類別可指出此 Activity 的圖示應該放在系統的應用程式啟動器中。
+如果 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a>元素未以 {@code icon} 指定圖示，系統會使用 <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a> 元素中的圖示。
+
+</li>
+</ul>
+<p>上述兩項必須成對，Activity 才會顯示在應用程式啟動器中。</p>
+
+<p>第二個 Activity {@code ShareActivity} 是用來加速分享文字與媒體內容。
+雖然使用者可能藉由從 {@code MainActivity} 來瀏覽它而進入此 Activity，但它們也能從發出隱含意圖 (符合兩個意圖篩選器之一) 的另一款應用程式直接進入 {@code ShareActivity}。
+
+</p>
+
+<p class="note"><strong>注意：</strong>
+<a href="https://developers.google.com/panorama/android/">{@code
+application/vnd.google.panorama360+jpg}</a> MIME 類型是指定全景相片的特殊資料類型，您可以透過
+<a href="{@docRoot}reference/com/google/android/gms/panorama/package-summary.html">Google 全景</a> API 來處理。
+</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+<h2 id="PendingIntent">使用待處理意圖</h2>
+
+<p>{@link android.app.PendingIntent} 物件是環繞 {@link
+android.content.Intent} 物件的包裝函式。{@link android.app.PendingIntent} 的主要用途是將權限授予外部應用程式，以便使用包含的 {@link android.content.Intent}，有如從應用程式自己的程序執行一般。
+
+
+</p>
+
+<p>待處理意圖的主要使用案例包括：</p>
+<ul>
+  <li>宣告當使用者透過您的<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">通知</a>執行動作時要執行的意圖 (Android 系統的 {@link android.app.NotificationManager} 會執行 {@link android.content.Intent})。
+
+
+  <li>宣告當使用者透過您的<a href="{@docRoot}guide/topics/appwidgets/index.html">應用程式小工具</a>執行動作時要執行的意圖 (主螢幕應用程式會執行 {@link android.content.Intent})。
+
+
+  <li>宣告要在未來的指定時間內執行的意圖 (Android 系統的 {@link android.app.AlarmManager} 會執行 {@link android.content.Intent})。
+
+</ul>
+
+<p>由於每個 {@link android.content.Intent} 物件都設計為要由特定的應用程式元件類型來處理 ({@link android.app.Activity}、{@link android.app.Service} 或 {@link android.content.BroadcastReceiver})，因此請務必以相同的考量建立 {@link android.app.PendingIntent}。
+
+
+使用待處理意圖時，您的應用程式將不會透過像是
+{@link android.content.Context#startActivity
+startActivity()} 的呼叫來執行意圖。當您藉由呼叫以下的個別建立者方法建立
+{@link android.app.PendingIntent} 時，您必須改為宣告意圖元件類型：</p>
+
+<ul>
+  <li>{@link android.app.PendingIntent#getActivity PendingIntent.getActivity()} 適用於啟動 {@link android.app.Activity} 的 {@link android.content.Intent}。
+</li>
+  <li>{@link android.app.PendingIntent#getService PendingIntent.getService()} 適用於啟動 {@link android.app.Service} 的 {@link android.content.Intent}。
+</li>
+  <li>{@link android.app.PendingIntent#getBroadcast PendingIntent.getBroadcast()} 適用於啟動 {@link android.content.BroadcastReceiver} 的 {@link android.content.Intent}。
+</li>
+</ul>
+
+<p>除非您的應用程式「收到」<em></em>來自其他應用程式的待處理意圖，否則您可能只需要上述建立
+{@link android.app.PendingIntent} 的
+{@link android.app.PendingIntent} 方法。</p>
+
+<p>每個方法會採用目前的應用程式 {@link android.content.Context}、您要包裝的
+{@link android.content.Intent} 以及一或多個指定應如何使用意圖的旗標 (例如該意圖是否能使用多次)。
+</p>
+
+<p>如要進一步瞭解如何使用待處理意圖，請參閱個別使用案例的參考文件，例如<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">通知</a>以及<a href="{@docRoot}guide/topics/appwidgets/index.html">應用程式小工具</a> API 指南。
+
+</p>
+
+
+
+
+
+
+
+<h2 id="Resolution">意圖解析</h2>
+
+
+<p>當系統收到要啟動 Activity 的隱含意圖時，會根據三個層面來比較意圖與意圖篩選器，以便為該意圖搜尋最適合的 Activity。
+</p>
+
+<ul>
+  <li>意圖動作
+  <li>意圖資料 (URI 與資料類型)
+  <li>意圖類別
+</ul>
+
+<p>下列各節就如何在應用程式宣示說明檔案中宣告意圖篩選器這點，說明如何比對意圖以找出適當的元件。
+</p>
+
+
+<h3 id="ActionTest">動作測試</h3>
+
+<p>如要指定接受的意圖動作，意圖篩選器可以宣告零或多個
+<a href="{@docRoot}guide/topics/manifest/action-element.html">{@code
+&lt;action&gt;}</a> 元素。例如：</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.VIEW" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>如要通過此篩選器，{@link android.content.Intent} 中指定的動作必須與篩選器中列出的其中一個動作相符。
+</p>
+
+<p>如果篩選器未列出任何可供意圖比對的動作，所有意圖都無法通過測試。
+不過，如果 {@link android.content.Intent} 未指定任何動作，它就會通過測試 (只要篩選器至少包含一個動作即可)。
+
+</p>
+
+
+
+<h3 id="CategoryTest">類別測試</h3>
+
+<p>如要指定接受的意圖類別，意圖篩選器可以宣告零或多個
+<a href="{@docRoot}guide/topics/manifest/category-element.html">{@code
+&lt;category&gt;}</a> 元素。例如：</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+    &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>{@link android.content.Intent} 中的每個類別都必須與篩選器中的類別相符，意圖才會通過類別測試。
+不需要反向進行 &mdash; 意圖篩選器宣告的類別可以比
+{@link android.content.Intent} 中指定的類別多，而
+{@link android.content.Intent} 仍可通過測試。因此，不論篩選器中宣告的類別為何，未包含類別的意圖一律可通過此測試。
+</p>
+
+<p class="note"><strong>注意：</strong>Android 會將 {@link android.content.Intent#CATEGORY_DEFAULT} 類別自動套用到所有傳送至 {@link
+android.content.Context#startActivity startActivity()} 與 {@link
+android.app.Activity#startActivityForResult startActivityForResult()} 的隱含意圖。因此，如果您希望 Activity 收到隱含意圖，Activity 的意圖篩選器就必須包含
+{@code "android.intent.category.DEFAULT"} 的類別 (如先前的 {@code &lt;intent-filter&gt;} 範例中所示)。
+
+
+
+</p>
+
+
+
+<h3 id="DataTest">資料測試</h3>
+
+<p>如要指定接受的意圖資料，意圖篩選器可以宣告零或多個
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code
+&lt;data&gt;}</a> 元素。例如：</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="video/mpeg" android:scheme="http" ... /&gt;
+    &lt;data android:mimeType="audio/mpeg" android:scheme="http" ... /&gt;
+    ...
+&lt;/intent-filter&gt;
+</pre>
+
+<p>每個 <code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+ 元素都能指定 URI 結構與資料類型 (MIME 媒體類型)。URI 的每個部分都有個別的屬性：
+{@code scheme}、{@code host}、{@code port} 和 {@code path}。
+
+</p>
+
+<p style="margin-left: 2em">{@code &lt;scheme&gt;://&lt;host&gt;:&lt;port&gt;/&lt;path&gt;}</p>
+
+<p>
+例如：
+</p>
+
+<p style="margin-left: 2em">{@code content://com.example.project:200/folder/subfolder/etc}</p>
+
+<p>在這個 URI 中，配置為 {@code content}、主機為 {@code com.example.project}、連接埠為 {@code 200}，而路徑為 {@code folder/subfolder/etc}。
+
+</p>
+
+<p>在 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> 元素中，上述所有屬性均為選用性質，但具有線性相依性：
+</p>
+<ul>
+  <li>如果未指定配置，就會忽略主機。</li>
+  <li>如果未指定主機，就會忽略連接埠。</li>
+  <li>如果配置與主機均未指定，就會忽略路徑。</li>
+</ul>
+
+<p>將意圖中的 URI 與篩選器中的 URI 規格比較時，只會比較篩選器中所包含的 URI 部分。
+例如：</p>
+<ul>
+  <li>如果篩選器只指定配置，含有該配置的所有 URI 都會與篩選器相符。
+</li>
+  <li>如果篩選器指定了配置與授權，但未指定路徑，不論其路徑為何，含有相同配置與授權的所有 URI 都會通過篩選器。
+</li>
+  <li>如果篩選器指定了配置、授權和路徑，則只有包含相同配置、授權和路徑的 URI 才會通過篩選器。
+</li>
+</ul>
+
+<p class="note"><strong>注意：</strong>路徑規格可以包含萬用字元星號 (*)，以要求僅部分相符的路徑名稱。
+</p>
+
+<p>資料測試會比較意圖中的 URI 與 MIME 類型，以及篩選器中指定的 URI 與 MIME 類型。
+以下說明規則：
+</p>
+
+<ol type="a">
+<li>只有在篩選器未指定任何 URI 或 MIME 類型時，未包含 URI 或 MIME 類型的意圖才會通過測試。
+</li>
+
+<li>只有在其 URI 與篩選器的 URI 格式相符，而且篩選器同樣未指定 MIME 類型時，包含 URI 但沒有 MIME 類型 (既非明確也無法從 URI 推測得出) 的意圖才會通過測試。
+
+</li>
+
+<li>只有在篩選器列出相同的 MIME 類型且未指定 URI 格式時，包含 MIME 類型但沒有 URI 的意圖才會通過測試。
+</li>
+
+<li>只有在 MIME 類型與篩選器中列出的類型相符時，包含 URI 與 MIME 類型 (明確或可從 URI 推測得出) 的意圖才會通過 MIME 類型部分的測試。
+
+如果它的 URI 與篩選器中的 URI 相符，或如果它有
+{@code content:} 或 {@code file:} URI，而且篩選器未指定 URI 時，就會通過 URI 部分的測試。換句話說，如果它的篩選器「只」<em></em>列出 MIME 類型，就會假設元件支援 {@code content:} 與 {@code file:} 資料。
+
+
+</p></li>
+</ol>
+
+<p>
+最後一項規則 (規則 (d)) 可反映出希望元件能夠從檔案或內容供應程式取得本機資料的期望。
+
+因此，其篩選器可以只列出資料類型，同時不需要明確命名
+{@code content:} 與 {@code file:} 配置。
+此為典型案例。例如，如下所示的 <a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a> 元素可以告訴 Android，元件能夠從內容供應程式取得影像資料並加以顯示：
+
+
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:mimeType="image/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+<p>
+由於大部分可用資料都是由內容供應程式分配，因此指定資料類型但未指定 URI 的篩選器也許會最常見。
+
+</p>
+
+<p>
+另一個常見的設定是含有配置與資料類型的篩選器。例如，如下所示的
+<a href="{@docRoot}guide/topics/manifest/data-element.html">{@code &lt;data&gt;}</a>元素可以告訴 Android，元件能夠從網路擷取影片資料以執行動作：
+
+
+</p>
+
+<pre>
+&lt;intent-filter&gt;
+    &lt;data android:scheme="http" android:type="video/*" /&gt;
+    ...
+&lt;/intent-filter&gt;</pre>
+
+
+
+<h3 id="imatch">意圖比對</h3>
+
+<p>和意圖篩選器比對的意圖不只可探尋要啟動的目標元件，還能探尋裝置上元件集合的相關資料。
+
+例如，主畫面應用程式會利用指定
+{@link android.content.Intent#ACTION_MAIN} 動作與
+{@link android.content.Intent#CATEGORY_LAUNCHER} 類別的意圖篩選器來尋找所有 Activity，以填入應用程式啟動器。
+</p>
+
+<p>您的應用程式能以類似的方式使用意圖比對。
+{@link android.content.pm.PackageManager} 有一組 {@code query...()}方法可將接受特定意圖的所有元件傳回，還有一系列類似的
+{@code resolve...()} 方法可決定回應意圖的最佳元件。
+
+例如，
+{@link android.content.pm.PackageManager#queryIntentActivities
+queryIntentActivities()} 會傳回所有 Activity 清單，上述的 Activity 都可以執行當成引數傳送的意圖，以及
+{@link
+android.content.pm.PackageManager#queryIntentServices
+queryIntentServices()} 可傳回類似的服務清單。
+
+這些方法不會啟動元件，只會列出可以回應的元件。類似的方法
+{@link android.content.pm.PackageManager#queryBroadcastReceivers
+queryBroadcastReceivers()} 可用於廣播接收器。
+</p>
+
+
+
+
diff --git a/docs/html-intl/intl/zh-tw/guide/components/loaders.jd b/docs/html-intl/intl/zh-tw/guide/components/loaders.jd
new file mode 100644
index 0000000..89bfc80
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/loaders.jd
@@ -0,0 +1,494 @@
+page.title=載入器
+parent.title=Activity
+parent.link=activities.html
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>本文件內容</h2>
+    <ol>
+    <li><a href="#summary">載入器 API 摘要</a></li>
+    <li><a href="#app">在應用程式中使用載入器</a>
+      <ol>
+        <li><a href="#requirements"></a></li>
+        <li><a href="#starting">啟動載入器</a></li>
+        <li><a href="#restarting">重新啟動載入器</a></li>
+        <li><a href="#callback">使用 LoaderManager 回呼</a></li>
+      </ol>
+    </li>
+    <li><a href="#example">範例說明</a>
+       <ol>
+         <li><a href="#more_examples">其他範例</a></li>
+        </ol>
+    </li>
+  </ol>
+    
+  <h2>重要類別</h2>
+    <ol>
+      <li>{@link android.app.LoaderManager}</li>
+      <li>{@link android.content.Loader}</li>
+
+    </ol>   
+    
+    <h2>相關範例</h2>
+   <ol>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">LoaderCursor
+</a></li>
+     <li> <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html">LoaderThrottle
+</a></li>
+   </ol>
+  </div>
+</div>
+
+<p>在 Android 3.0 導入的載入器可輕鬆在 Activity 或片段中，以非同步方式載入資料。
+載入器的特性如下：</p>
+  <ul>
+    <li>適用於所有 {@link android.app.Activity} 和 {@link
+android.app.Fragment} 。</li>
+    <li>提供以非同步方式載入資料。</li>
+    <li>監視其資料來源，並在內容變更時傳送新的結果。
+</li>
+    <li>可在設定變更後重新建立時，自動重新連接到上次載入器的游標，
+因此不需要重新查詢資料。
+</li>
+  </ul>
+ 
+<h2 id="summary">載入器 API 摘要</h2>
+
+<p>有多個類別和介面可能與在應用程式中使用載入器有關。
+請參閱下表的摘要說明：</p>
+
+<table>
+  <tr>
+    <th>類別/介面</th>
+    <th>說明</th>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager}</td>
+    <td>與 {@link android.app.Activity} 或
+{@link android.app.Fragment} 相關聯的抽象類別，可用於管理一或多個 {@link
+android.content.Loader} 執行個體。這可以協助應用程式管理所需執行時間較長的操作與 {@link android.app.Activity} 或 {@link android.app.Fragment} 生命週期搭配使用，這最常與
+{@link android.content.CursorLoader} 搭配使用，不過應用程式能夠撰寫自己的載入器來載入其他類型的資料。
+
+
+
+    <br />
+    <br />
+    每個 Activity 或片段只能有一個 {@link android.app.LoaderManager}，但 {@link android.app.LoaderManager} 可以有多個載入器。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.app.LoaderManager.LoaderCallbacks}</td>
+    <td>可供用戶端與 {@link
+android.app.LoaderManager} 互動的回呼介面。例如，您使用 {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}
+回呼方法來建立新的載入器。</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.Loader}</td>
+    <td>以非同步方式載入資料的抽象類別。這是載入器的基本類別。
+您通常會使用 {@link
+android.content.CursorLoader}，但您也可以實作自己的子類別。載入器處於使用中時，應會監視其資料來源，並在內容有變更時傳送新的結果。
+
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.content.AsyncTaskLoader}</td>
+    <td>提供 {@link android.os.AsyncTask} 以執行工作的抽象載入器。</td>
+  </tr>
+  <tr>
+    <td>{@link android.content.CursorLoader}</td>
+    <td>查詢
+{@link android.content.ContentResolver} 並傳回 {@link
+android.database.Cursor} 的 {@link android.content.AsyncTaskLoader} 子類別。此類別會以標準方式實作 {@link
+android.content.Loader} 通訊協定，用來查詢建置於 {@link android.content.AsyncTaskLoader} 的游標，以便在背景執行緒中執行游標查詢，藉此避免封鎖應用程式的 UI。
+
+
+以非同步方式從 {@link
+android.content.ContentProvider} 載入資料，而不是透過片段或 Activity 的 API 來管理查詢，最好的方法就是使用此載入器。
+</td>
+  </tr>
+</table>
+
+<p>上表中的類別和介面就是您將用來在應用程式中實作載入器的基本元件。
+上述元件不需要在您建立載入器時全部使用，但您必須一律參照到 {@link
+android.app.LoaderManager}，才能初始化載入器並實作
+{@link android.content.Loader} 類別，例如 {@link
+android.content.CursorLoader}。
+以下各節說明如何在應用程式中使用這些類別和介面。
+</p>
+
+<h2 id ="app">在應用程式中使用載入器</h2>
+<p>本節說明如何在 Android 應用程式中使用載入器。使用載入器的應用程式通常包括下列物件：
+</p>
+<ul>
+  <li>{@link android.app.Activity} 或 {@link android.app.Fragment}。</li>
+  <li>{@link android.app.LoaderManager} 的執行個體。</li>
+  <li>可載入 {@link
+android.content.ContentProvider} 所備份資料的 {@link android.content.CursorLoader}。或者，您可以實作自己的
+{@link android.content.Loader} 子類別或 {@link android.content.AsyncTaskLoader}，從其他來源載入資料。
+</li>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks} 的實作。
+您可以在這裡建立新的載入器和管理對現有載入器的參照。
+</li> 
+<li>顯示載入器資料的一種方式，例如 {@link
+android.widget.SimpleCursorAdapter}。</li>
+  <li>使用 {@link android.content.CursorLoader} 時的資料來源，例如 {@link android.content.ContentProvider}。
+</li>
+</ul>
+<h3 id="starting">啟動載入器</h3>
+
+<p>{@link android.app.LoaderManager} 可在 {@link android.app.Activity} 或 {@link android.app.Fragment} 內管理一或多個 {@link
+android.content.Loader} 執行個體。
+每個 Activity 或片段只能有一個 {@link
+android.app.LoaderManager}。</p> 
+
+<p>您通常會在 Activity 的 {@link
+android.app.Activity#onCreate onCreate()} 方法內或在片段的 {@link android.app.Fragment#onActivityCreated onActivityCreated()} 方法內，初始化 {@link android.content.Loader}，
+
+如下所示：
+</p>
+
+<pre>// Prepare the loader.  Either re-connect with an existing one,
+// or start a new one.
+getLoaderManager().initLoader(0, null, this);</pre>
+
+<p>{@link android.app.LoaderManager#initLoader initLoader()} 方法採用下列參數：
+</p>
+<ul>
+  <li>可識別載入器的不重複 ID。在本範例中，此 ID 為 0。</li>
+<li>可在建構時提供給載入器的選用引數 (在本範例中為<code>null</code>)。
+</li> 
+
+<li>{@link android.app.LoaderManager.LoaderCallbacks} 實作，
+{@link android.app.LoaderManager} 會呼叫此實作來回報載入器事件。在本範例中，本機類別會實作 {@link
+android.app.LoaderManager.LoaderCallbacks} 執行個體，以將參照傳送給它自己 ({@code this})。
+
+</li> 
+</ul>
+<p>{@link android.app.LoaderManager#initLoader initLoader()} 呼叫可確保載入器已初始化且處於有效狀態。
+可能會有兩種結果：</p>
+<ul>
+  <li>如果 ID 所指定的載入器已經存在，就會重複使用上次建立的載入器。
+</li>
+  <li>如果 ID 所指定的載入器「不存在」<em></em>，
+{@link android.app.LoaderManager#initLoader initLoader()} 會觸發
+{@link android.app.LoaderManager.LoaderCallbacks} 方法 {@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}。
+您可以在這裡實作程式碼以具現化及傳回新的載入器。
+如需詳細資訊，請參閱 <a href="#onCreateLoader">onCreateLoader</a>。</li>
+</ul>
+<p>在任一情況下，指定的 {@link android.app.LoaderManager.LoaderCallbacks}實作會與載入器建立關聯且會在載入器狀態變更時呼叫。
+
+如果進行此呼叫時，呼叫器處於已啟動狀態，而要求的載入器已經存在並產生自己的資料，那麼系統會立即呼叫 {@link
+android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()} (在 {@link android.app.LoaderManager#initLoader initLoader()} 期間)，請務必做好發生這種情況的準備。
+
+
+
+如要進一步瞭解此回呼，請參閱 <a href="#onLoadFinished">onLoadFinished
+</a>。</p>
+
+<p>請注意，{@link android.app.LoaderManager#initLoader initLoader()}方法會傳回建立的 {@link android.content.Loader}，但您不需要擷取它的參照。
+
+{@link android.app.LoaderManager} 會自動管理載入器的生命週期。
+{@link android.app.LoaderManager} 會在必要時啟動及停止載入，並維護載入器的狀態與其相關內容。
+
+顧名思義，您鮮少會直接與載入器互動 (但如需使用載入器方法微調載入器行為的範例，請參閱 <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a> 範例)。
+
+當發生特定事件時，您最常會使用 {@link
+android.app.LoaderManager.LoaderCallbacks} 方法來介入載入程序。
+
+如要進一步瞭解此主題，請參閱<a href="#callback">使用 LoaderManager 回呼</a>。</p>
+
+<h3 id="restarting">重新啟動載入器</h3>
+
+<p>當您使用 {@link android.app.LoaderManager#initLoader initLoader()} (如上所示)，它會使用已指定 ID 的現有載入器 (如果有的話)。
+
+如果沒有，就會自行建立載入器。不過，有時候您會想捨棄舊資料並從頭開始。
+</p>
+
+<p>如要捨棄舊資料，請使用 {@link
+android.app.LoaderManager#restartLoader restartLoader()}。例如，當使用者的查詢改變時，實作 {@link android.widget.SearchView.OnQueryTextListener} 會重新啟動載入器。
+
+您必須重新啟動載入器，才能使用修訂後的搜尋篩選器執行新的查詢：
+</p>
+
+<pre>
+public boolean onQueryTextChanged(String newText) {
+    // Called when the action bar search text has changed.  Update
+    // the search filter, and restart the loader to do a new query
+    // with this filter.
+    mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+    getLoaderManager().restartLoader(0, null, this);
+    return true;
+}</pre>
+
+<h3 id="callback">使用 LoaderManager 回呼</h3>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} 是回呼介面，可讓用戶端與 {@link android.app.LoaderManager} 互動。
+ </p>
+<p>載入器 (特別是 {@link android.content.CursorLoader}) 在停止之後，應該會保留它們的資料。
+這可讓應用程式保留其在 Activity 或片段的 {@link android.app.Activity#onStop
+onStop()} 與 {@link android.app.Activity#onStart onStart()} 方法間的資料，好讓使用者回到應用程式時，不必枯等資料重新載入。
+
+
+您可以使用 {@link android.app.LoaderManager.LoaderCallbacks} 方法，藉以得知何時該建立新的載入器，以及指示應用程式何時該停止使用載入器的資料。
+
+</p>
+
+<p>{@link android.app.LoaderManager.LoaderCallbacks} 包含以下方法：
+</p>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()} — 具現化及傳回指定 ID 的新 {@link android.content.Loader}。
+
+</li></ul>
+<ul>
+  <li> {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished onLoadFinished()} — 當先前建立的載入器已完成其載入工作時呼叫。
+
+</li></ul>
+<ul>
+  <li>{@link android.app.LoaderManager.LoaderCallbacks#onLoaderReset onLoaderReset()} — 正要重設先前建立的載入器時呼叫，使其資料無法使用。
+
+
+</li>
+</ul>
+<p>以上方法在下列幾節有更詳細的說明。</p>
+
+<h4 id ="onCreateLoader">onCreateLoader</h4>
+
+<p>當您嘗試存取載入器 (例如，透過 {@link
+android.app.LoaderManager#initLoader initLoader()}) 時，系統會檢查根據 ID 指定的載入器是否已存在。
+如果不存在，就會觸發 {@link
+android.app.LoaderManager.LoaderCallbacks} 方法 {@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()}。您可以在這裡建立新的載入器。
+這通常會是 {@link
+android.content.CursorLoader}，但您也可以實作自己的 {@link
+android.content.Loader} 子類別。 </p>
+
+<p>在此範例中，{@link
+android.app.LoaderManager.LoaderCallbacks#onCreateLoader onCreateLoader()} 回呼方法會建立 {@link android.content.CursorLoader}。
+您必須使用其建構函式方法來建置
+{@link android.content.CursorLoader}，其需要一組完整的資訊才能對 {@link
+android.content.ContentProvider} 執行查詢。
+具體來說，建構函式方法需要以下項目：</p>
+<ul>
+  <li>uri<em></em> - 要擷取內容的 URI。 </li>
+  <li>projection<em></em> - 要傳回的欄清單。傳送
+<code>null</code> 將會傳回無效的所有欄。 </li>
+  <li>selection<em></em> - 篩選器會採用 SQL WHERE 子句的格式 (WHERE 本身除外) 宣告要傳回的列。
+傳送
+<code>null</code> 將會傳回指定 URI 的所有列。 </li>
+  <li>selectionArgs<em></em> - 您可能會在選取項目中包含 ?s，而其會由來自 selectionArgs<em></em> 的值按照其出現在選取項目中的順序所取代。
+
+值將會繫結為字串。 </li>
+  <li>sortOrder<em></em> - 如何採用 SQL ORDER BY 子句的格式 (ORDER BY 本身除外) 來排列各列的順序。
+傳遞 <code>null</code> 將會使用預設的排序順序，其可能是無排序順序。
+</li>
+</ul>
+<p>例如：</p>
+<pre>
+ // If non-null, this is the current filter the user has provided.
+String mCurFilter;
+...
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+    // This is called when a new Loader needs to be created.  This
+    // sample only has one Loader, so we don't care about the ID.
+    // First, pick the base URI to use depending on whether we are
+    // currently filtering.
+    Uri baseUri;
+    if (mCurFilter != null) {
+        baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                  Uri.encode(mCurFilter));
+    } else {
+        baseUri = Contacts.CONTENT_URI;
+    }
+
+    // Now create and return a CursorLoader that will take care of
+    // creating a Cursor for the data being displayed.
+    String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+            + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+            + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+    return new CursorLoader(getActivity(), baseUri,
+            CONTACTS_SUMMARY_PROJECTION, select, null,
+            Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+}</pre>
+<h4 id="onLoadFinished">onLoadFinished</h4>
+
+<p>這個方法是在先前建立的載入器已完成其載入工作時呼叫。
+此方法一律是在提供給此載入器的最後資料發佈之前呼叫。
+此時，您應要移除所有使用的舊資料 (由於資料即將發佈)，但不應自行發佈，因為載入器擁有該資料且將會負責處理。
+
+</p>
+
+
+<p>一旦應用程式不再使用資料時，載入器就會立即發佈資料。
+例如，如果資料是來自 {@link
+android.content.CursorLoader} 的游標，您不應該自行對它呼叫 {@link
+android.database.Cursor#close close()}。如果正要將該游標放入
+{@link android.widget.CursorAdapter}，您應該使用 {@link
+android.widget.SimpleCursorAdapter#swapCursor swapCursor()} 方法，如此才不會關閉舊的
+{@link android.database.Cursor}。例如：</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.<br
+/>SimpleCursorAdapter mAdapter;
+...
+
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+    // Swap the new cursor in.  (The framework will take care of closing the
+    // old cursor once we return.)
+    mAdapter.swapCursor(data);
+}</pre>
+
+<h4 id="onLoaderReset">onLoaderReset</h4>
+
+<p>這個方法是在正要重設先前建立的載入器時呼叫，以便使其資料無法使用。
+此回呼方法可讓您知道即將要發佈資料，而能先行將其參照移除。
+  </p>
+<p>此實作會以 <code>null</code> 的值呼叫 
+{@link android.widget.SimpleCursorAdapter#swapCursor swapCursor()}：
+</p>
+
+<pre>
+// This is the Adapter being used to display the list's data.
+SimpleCursorAdapter mAdapter;
+...
+
+public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+    // This is called when the last Cursor provided to onLoadFinished()
+    // above is about to be closed.  We need to make sure we are no
+    // longer using it.
+    mAdapter.swapCursor(null);
+}</pre>
+
+
+<h2 id="example">範例說明</h2>
+
+<p>例如，以下是 {@link
+android.app.Fragment} 的完整實作，
+其顯示的 {@link android.widget.ListView} 包含聯絡人內容供應程式的查詢結果。它使用 {@link
+android.content.CursorLoader} 管理對供應程式的查詢。</p>
+ 
+<p>如本範例所示，針對要存取使用者聯絡人的應用程式，它的宣示說明必須包含 {@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS} 權限。
+
+</p>
+
+<pre>
+public static class CursorLoaderListFragment extends ListFragment
+        implements OnQueryTextListener, LoaderManager.LoaderCallbacks&lt;Cursor&gt; {
+
+    // This is the Adapter being used to display the list's data.
+    SimpleCursorAdapter mAdapter;
+
+    // If non-null, this is the current filter the user has provided.
+    String mCurFilter;
+
+    @Override public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+
+        // Give some text to display if there is no data.  In a real
+        // application this would come from a resource.
+        setEmptyText(&quot;No phone numbers&quot;);
+
+        // We have a menu item to show in action bar.
+        setHasOptionsMenu(true);
+
+        // Create an empty adapter we will use to display the loaded data.
+        mAdapter = new SimpleCursorAdapter(getActivity(),
+                android.R.layout.simple_list_item_2, null,
+                new String[] { Contacts.DISPLAY_NAME, Contacts.CONTACT_STATUS },
+                new int[] { android.R.id.text1, android.R.id.text2 }, 0);
+        setListAdapter(mAdapter);
+
+        // Prepare the loader.  Either re-connect with an existing one,
+        // or start a new one.
+        getLoaderManager().initLoader(0, null, this);
+    }
+
+    @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+        // Place an action bar item for searching.
+        MenuItem item = menu.add(&quot;Search&quot;);
+        item.setIcon(android.R.drawable.ic_menu_search);
+        item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+        SearchView sv = new SearchView(getActivity());
+        sv.setOnQueryTextListener(this);
+        item.setActionView(sv);
+    }
+
+    public boolean onQueryTextChange(String newText) {
+        // Called when the action bar search text has changed.  Update
+        // the search filter, and restart the loader to do a new query
+        // with this filter.
+        mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
+        getLoaderManager().restartLoader(0, null, this);
+        return true;
+    }
+
+    @Override public boolean onQueryTextSubmit(String query) {
+        // Don't care about this.
+        return true;
+    }
+
+    @Override public void onListItemClick(ListView l, View v, int position, long id) {
+        // Insert desired behavior here.
+        Log.i(&quot;FragmentComplexList&quot;, &quot;Item clicked: &quot; + id);
+    }
+
+    // These are the Contacts rows that we will retrieve.
+    static final String[] CONTACTS_SUMMARY_PROJECTION = new String[] {
+        Contacts._ID,
+        Contacts.DISPLAY_NAME,
+        Contacts.CONTACT_STATUS,
+        Contacts.CONTACT_PRESENCE,
+        Contacts.PHOTO_ID,
+        Contacts.LOOKUP_KEY,
+    };
+    public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+        // This is called when a new Loader needs to be created.  This
+        // sample only has one Loader, so we don't care about the ID.
+        // First, pick the base URI to use depending on whether we are
+        // currently filtering.
+        Uri baseUri;
+        if (mCurFilter != null) {
+            baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI,
+                    Uri.encode(mCurFilter));
+        } else {
+            baseUri = Contacts.CONTENT_URI;
+        }
+
+        // Now create and return a CursorLoader that will take care of
+        // creating a Cursor for the data being displayed.
+        String select = &quot;((&quot; + Contacts.DISPLAY_NAME + &quot; NOTNULL) AND (&quot;
+                + Contacts.HAS_PHONE_NUMBER + &quot;=1) AND (&quot;
+                + Contacts.DISPLAY_NAME + &quot; != '' ))&quot;;
+        return new CursorLoader(getActivity(), baseUri,
+                CONTACTS_SUMMARY_PROJECTION, select, null,
+                Contacts.DISPLAY_NAME + &quot; COLLATE LOCALIZED ASC&quot;);
+    }
+
+    public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
+        // Swap the new cursor in.  (The framework will take care of closing the
+        // old cursor once we return.)
+        mAdapter.swapCursor(data);
+    }
+
+    public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
+        // This is called when the last Cursor provided to onLoadFinished()
+        // above is about to be closed.  We need to make sure we are no
+        // longer using it.
+        mAdapter.swapCursor(null);
+    }
+}</pre>
+<h3 id="more_examples">其他範例</h3>
+
+<p><strong>ApiDemos</strong> 中有數個不同的範例，示範如何使用載入器：
+</p>
+<ul>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html">LoaderCursor</a> - 上述程式碼片段的完整版本在此。
+
+</li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html"> LoaderThrottle</a> - 以範例說明如何使用節流功能在其資料變更時降低內容供應程式執行的查詢數目。
+</li>
+</ul>
+
+<p>如要進一步瞭解如何下載及安裝 SDK 範例，請參閱<a href="http://developer.android.com/resources/samples/get.html">取得範例</a>。
+ </p>
+
diff --git a/docs/html-intl/intl/zh-tw/guide/components/processes-and-threads.jd b/docs/html-intl/intl/zh-tw/guide/components/processes-and-threads.jd
new file mode 100644
index 0000000..74dbb8e
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/processes-and-threads.jd
@@ -0,0 +1,411 @@
+page.title=處理程序和執行緒
+page.tags=生命週期、背景
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文件內容</h2>
+<ol>
+<li><a href="#Processes">處理程序</a>
+  <ol>
+    <li><a href="#Lifecycle">處理程序生命週期</a></li>
+  </ol>
+</li>
+<li><a href="#Threads">執行緒</a>
+  <ol>
+    <li><a href="#WorkerThreads">工作者執行緒</a></li>
+    <li><a href="#ThreadSafe">安全執行緒方法</a></li>
+  </ol>
+</li>
+<li><a href="#IPC">處理程序間通訊</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>當應用程式元件啟動且該應用程式未執行任何其他元件時，Android 系統會以執行單一執行緒的方式，為該應用程式啟動新的 Linux 處理程序。
+
+預設會以相同的處理程序和執行緒 (稱為「主要」執行緒) 執行相同應用程式的所有元件。
+如果應用程式元件啟動且已有該應用程式的處理程序存在 (由於應用程式還有另一個元件存在)，那麼元件會在該處理程序中啟動，並使用相同的執行緒執行。
+
+不過，您可以安排應用程式中的不同元件以個別處理程序執行，還可以為任何處理程序建立額外的執行緒。
+
+</p>
+
+<p>本文件說明處理程序和執行緒如何在 Android 應用程式中運作。</p>
+
+
+<h2 id="Processes">處理程序</h2>
+
+<p>在預設情況下，系統會以相同的處理程序執行相同應用程式的所有元件，而且大部分應用程式都是如此。
+不過，如果您需要控制特定元件所屬的處理程序，可以在宣示說明檔案中這麼做。
+</p>
+
+<p>每種元件元素 &mdash; <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a>、<a href="{@docRoot}guide/topics/manifest/service-element.html">{@code
+&lt;service&gt;}</a>、<a href="{@docRoot}guide/topics/manifest/receiver-element.html">{@code
+&lt;receiver&gt;}</a> 和 <a href="{@docRoot}guide/topics/manifest/provider-element.html">{@code
+&lt;provider&gt;}</a> &mdash; 的宣示說明項目都支援 {@code android:process} 屬性，這項屬性能指定元件應在哪個處理程序執行。
+您可以設定此屬性讓每個元件都以自己的處理程序執行，或只讓當中的部分元件共用同一處理程序。
+您也可以設定 
+{@code android:process}，讓不同應用程式的元件以相同的處理程序執行，只要這些應用程式分享相同的 Linux 使用者 ID 並以相同的憑證簽署。
+
+</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/application-element.html">{@code
+&lt;application&gt;}</a> 元素也支援 {@code android:process} 屬性，以設定要套用到所有元件的預設值。
+</p>
+
+<p>Android 可能會在記憶體不足且需要其他處理程序更立即為使用者提供服務時，決定關閉處理程序。
+使用已終止的處理程序執行的應用程式元件會因此而終結。
+當再次有工作需要執行時，就會為這些元件再次啟動處理程序。
+</p>
+
+<p>Android 系統會將處理程序對使用者的相對重要性加權，以決定要終止的處理程序。
+例如，相較於代管可見 Activity 的處理程序，系統較容易關閉代管已不在螢幕上顯示的 Activity 的處理程序。
+因此，是否要終止處理程序，取決於以該處理程序執行中的元件狀態。
+如要瞭解用於決定是否終止處理程序的規則，請參閱下文。
+ </p>
+
+
+<h3 id="Lifecycle">處理程序生命週期</h3>
+
+<p>Android 系統會儘可能持續維護處理程序，但最終仍必須移除舊的處理程序，以便回收記憶體供新的或更重要的處理程序使用。
+系統會根據以該處理程序執行的元件和那些元件的狀態，將每個處理程序放入「重要性階層」，藉此決定要保留以及要終止的處理程序。
+
+
+重要性最低的處理程序會最先遭到終止，接著是重要性次低的處理程序，依此類推，視需要收回系統資源。
+
+</p>
+
+<p>重要性階層共有五個層級。下方清單依照重要性的順序列出不同類型的處理程序 (第一個處理程序為「最重要」<em></em>且會「最後終止」<em></em>)：
+
+</p>
+
+<ol>
+  <li><b>前景處理程序</b>
+    <p>這種處理程序是指使用者目前執行的工作所需的處理程序。針對下列任一情況，系統或將處理程序視為位於前景中：
+</p>
+
+      <ul>
+        <li>使用者正與其代管的 {@link android.app.Activity} 互動 (已呼叫 {@link
+android.app.Activity} 的 {@link android.app.Activity#onResume onResume()} 方法)。
+</li>
+
+        <li>其代管的 {@link android.app.Service} 已繫結至正在與使用者互動的 Activity。
+</li>
+
+        <li>其代管的 {@link android.app.Service} 正「在前景」執行中 (服務已呼叫 {@link android.app.Service#startForeground startForeground()})。
+
+
+        <li>其代管的 {@link android.app.Service} 正在執行本身的其中一個生命週期回呼 ({@link android.app.Service#onCreate onCreate()}、{@link android.app.Service#onStart onStart()} 或 {@link android.app.Service#onDestroy onDestroy()})。
+
+</li>
+
+        <li>其代管的 {@link android.content.BroadcastReceiver} 正在執行本身的 {@link
+android.content.BroadcastReceiver#onReceive onReceive()} 方法。</li>
+    </ul>
+
+    <p>一般來說，在任何指定時間內只會有幾個前景處理程序存在。只有在記憶體過低而全都無法繼續執行時，才會採取這最後的手段來終止它們。
+在這種情況下，裝置通常已達到記憶體分頁處理狀態，因此必須終止一些前景處理程序，才能讓使用者介面保持回應。
+
+</p></li>
+
+  <li><b>可見處理程序</b>
+    <p>這種處理程序是指沒有任何前景元件的處理程序，但仍會影響使用者在螢幕上看見的內容。
+針對下列任一情況，系統會將處理程序視為可見：
+</p>
+
+      <ul>
+        <li>其代管的 {@link android.app.Activity} 不在前景中，但使用者仍可看見 (已呼叫它的 {@link android.app.Activity#onPause onPause()} 方法)。
+例如，如果前景 Activity 啟動的對話方塊允許在它身後看見先前的 Activity，就會發生這種情況。
+
+</li>
+
+        <li>其代管的 {@link android.app.Service} 已繫結至可見 (或前景) Activity。
+</li>
+      </ul>
+
+      <p>可見處理程序相當重要而且不會遭到終止，除非系統為了讓所有前景處理程序維持執行而必須終止這類處理程序。
+ </p>
+    </li>
+
+  <li><b>服務處理程序</b>
+    <p>這種處理程序是指正在執行已使用 {@link
+android.content.Context#startService startService()} 方法啟動的服務的處理程序；此處理程序不屬於上述兩種較重要的類別。
+雖然服務處理程序是間接繫結至使用者所見內容，但通常會執行使用者重視的工作 (例如，在背景中播放音樂，或下載網路上的資料)，因此除非記憶體不足，無法讓所有前景與可見處理程序保持執行，否則系統會讓這類處理程序繼續執行。
+
+
+ </p>
+  </li>
+
+  <li><b>背景處理程序</b>
+    <p>這種處理程序會保留使用者目前看不見的 Activity (已呼叫 Activity 的 
+{@link android.app.Activity#onStop onStop()} 方法)。這些處理程序會間接影響使用者體驗，且系統能隨時將其終止，藉此回收記憶體以供前景、可見或服務處理程序使用。
+
+
+通常會有許多背景處理程序處於執行中，因此會將它們放在 LRU (最近最少使用) 清單中，以確保在最後才將包含使用者最近最常見 Activity 的處理程序終止。
+
+如果 Activity 正確實作其生命週期方法並儲存其目前狀態，終止其處理程序不會對使用者體驗造成任何可察覺的影響，原因是當使用者瀏覽回 Activity 時，該 Activity 會還原它的所有可見狀態。
+
+
+如要進一步瞭解如何儲存及還原狀態，請參閱 <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Activity</a>。
+</p>
+  </li>
+
+  <li><b>空白處理程序</b>
+    <p>這種處理程序是指未保留任何使用中應用程式元件的處理程序。讓這類處理程序保持有效的唯一目的是將其用於快取，以改善元件下次執行時所需的啟動時間。
+
+系統通常會終止這些處理程序，以平衡處理程序快取與底層核心快取之間的整體系統資源。
+</p>
+  </li>
+</ol>
+
+
+  <p>Android 會根據在處理程序中目前處於使用中的元件重要性，將處理程序盡量排在最高層級。
+例如，如果處理程序代管一項服務和一個可見 Activity，此處理程序的會排為可見處理程序，而不是服務處理程序。
+</p>
+
+  <p>此外，還可能因為它有其他相依處理程序，而導致處理程序的排名提升：為另一個處理程序提供服務的處理程序，其排名絕不能低於為其提供服務的處理程序。
+
+例如，如果處理程序 A 的內容供應程式為處理程序 B 中的用戶端提供服務，或處理程序 A 中的服務繫結至處理程序 B 中的元件，則系統至少會將處理程序 A 視為和處理程序 B 一樣重要。
+
+</p>
+
+  <p>由於執行服務的處理程序排名會比包含背景 Activity 的處理程序排名高，因此初始化長時間執行操作的 Activity 可能適合啟動該操作的<a href="{@docRoot}guide/components/services.html">服務</a>，而不只是建立工作者執行緒 &mdash; 特別是該操作可能會比 Activity 持久。例如，將圖片上傳至網站 Activity 應該啟動要執行上傳的服務，如果使用者離開 Activity，上傳處理程序也能在背景中繼續進行。如果使用服務，不論 Activity 發生什麼情況，都可保證該操作的優先順序至少會是「服務處理程序」。
+
+
+
+
+
+廣播接收器應該採用服務，而不是只在執行緒中放置時間耗用操作，也是相同的理由。
+</p>
+
+
+
+
+<h2 id="Threads">執行緒</h2>
+
+<p>當應用程式啟動時，系統會為執行該應用程式建立一個稱為「主要」的執行緒。
+這個執行緒非常重要，原因是它負責將事件分配給適當的使用者介面小工具，包括繪製事件。
+您的應用程式與 Android UI 工具組中的元件 ({@link
+android.widget} 和 {@link android.view} 中的元件) 互動時，也需要使用這個執行緒。
+因此，主要執行緒有時也稱為 UI 執行緒。
+</p>
+
+<p>系統「不會」<em></em>為每個元件執行個體建立個別的執行緒。以相同處理程序執行的所有元件都是利用 UI 執行緒來具現化，而且都是由該執行緒分配系統呼叫的每個元件。
+
+因此，回應系統回呼的方法 (例如報告使用者動作的 {@link android.view.View#onKeyDown onKeyDown()} 或生命週期回呼方法) 一律會以該處理程序的 UI 執行緒執行。
+
+</p>
+
+<p>例如，當使用者輕觸畫面上的按鈕時，您應用程式的 UI 執行緒會將輕觸事件分配給小工具，接著設定其按下狀態並對事件佇列張貼失效要求。
+
+UI 執行緒會將要求從佇列中移除，然後通知小工具應重新繪製本身。
+</p>
+
+<p>當您的應用程式密集執行作業以回應使用者互動時，除非您適當實作應用程式，否則這種單一執行緒模型會降低效能。
+具體來說，假設一切都在 UI 執行緒中進行，如果執行像是網路存取或資料庫查詢的長時間操作，將會封鎖整個 UI。當執行緒遭到封鎖時，會無法分配任何事件 (包括繪製事件)。
+
+
+從使用者的觀點來看，應用程式似乎閒置不動。
+更糟的是，如果 UI 執行緒遭到封鎖長達數秒 (目前約為 5 秒)，就會向使用者顯示的「<a href="http://developer.android.com/guide/practices/responsiveness.html">應用程式沒有回應</a>」(ANR) 對話方塊。
+
+使用者接著會決定結束您的應用程式，並可能因感到不滿而將其解除安裝。
+</p>
+
+<p>此外，Andoid UI 工具組「並非」<em></em>安全執行緒，因此請勿透過工作者執行緒操縱 UI &mdash; 使用者介面的所有操縱作業都必須從 UI 執行緒來執行。
+
+基於上述原因，Android 的單一執行緒模型只有兩項簡單規則：</p>
+
+<ol>
+<li>不要封鎖 UI 執行緒
+<li>不要從 UI 執行緒以外的位置存取 Android UI 工具組
+</ol>
+
+<h3 id="WorkerThreads">工作者執行緒</h3>
+
+<p>因為上述的單一執行緒模型，所以不封鎖 UI 執行緒對於應用程式 UI 的回應能力至關重要。
+如果您有不會立即執行的操作，請務必以不同的執行緒 (「背景」或「工作者」執行緒) 執行這類操作。
+
+</p>
+
+<p>例如，以下是從個別執行緒下載圖片並顯示在 {@link android.widget.ImageView} 的部分點擊接聽器程式碼：
+</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            Bitmap b = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.setImageBitmap(b);
+        }
+    }).start();
+}
+</pre>
+
+<p>首先，由於這會建立新的執行緒來處理網路操作，所以看起來似乎可以正常運作。
+不過，它違反單一執行緒模型的第二項規則：「不要從 UI 執行緒以外的位置存取 Android UI 工具組」<em></em>&mdash; 這個範例修改工作者執行緒中的 {@link
+android.widget.ImageView}，而不是 UI 執行緒。
+這樣會產生未定義且預期外的行為，不但難以追蹤且耗費時間。
+</p>
+
+<p>為修正這個問題，Android 提供數種可從其他執行緒存取 UI 執行緒的方法。
+以下是可協助修正此問題的方法清單：</p>
+
+<ul>
+<li>{@link android.app.Activity#runOnUiThread(java.lang.Runnable)
+Activity.runOnUiThread(Runnable)}</li>
+<li>{@link android.view.View#post(java.lang.Runnable) View.post(Runnable)}</li>
+<li>{@link android.view.View#postDelayed(java.lang.Runnable, long) View.postDelayed(Runnable,
+long)}</li>
+</ul>
+
+<p>例如，您可以使用 {@link
+android.view.View#post(java.lang.Runnable) View.post(Runnable)} 方法來修正上述程式碼：</p>
+
+<pre>
+public void onClick(View v) {
+    new Thread(new Runnable() {
+        public void run() {
+            final Bitmap bitmap = loadImageFromNetwork("http://example.com/image.png");
+            mImageView.post(new Runnable() {
+                public void run() {
+                    mImageView.setImageBitmap(bitmap);
+                }
+            });
+        }
+    }).start();
+}
+</pre>
+
+<p>現在這個實作才是安全執行緒：雖然從不同的執行緒完成網路操作，但卻是從 UI 執行緒操縱 {@link android.widget.ImageView}。
+</p>
+
+<p>不過，隨著操作複雜度日益增加，這種程式碼也會變得複雜且難以維護。
+如要利用工作者執行緒處理更複雜的互動，您可能要考慮在工作者執行緒中使用 {@link android.os.Handler}，以處理從 UI 執行緒傳送的訊息。
+
+最佳解決方案也許是擴充 {@link android.os.AsyncTask} 類別，將必須與 UI 互動的工作者執行緒工作執行簡化。
+</p>
+
+
+<h4 id="AsyncTask">使用 AsyncTask</h4>
+
+<p>{@link android.os.AsyncTask} 可讓您透過使用者介面執行非同步工作。
+它會以工作者執行緒執行封鎖操作，然後將結果發行在 UI 執行緒，完全不需要您自行處理執行緒和/或處理常式。
+</p>
+
+<p>使用方法是您必須要有子類別 {@link android.os.AsyncTask}，並實作以背景執行緒集區執行的 {@link
+android.os.AsyncTask#doInBackground doInBackground()} 回呼方法。
+如要更新您的 UI，請實作 {@link
+android.os.AsyncTask#onPostExecute onPostExecute()} 來傳送 {@link
+android.os.AsyncTask#doInBackground doInBackground()} 的結果，然後以 UI 執行緒執行，如此您才能安全地更新 UI。
+接著，您可以從 UI 執行緒呼叫 {@link android.os.AsyncTask#execute execute()} 來執行該工作。
+</p>
+
+<p>例如，您可以使用 {@link android.os.AsyncTask} 這種方法實作先前的範例：
+</p>
+
+<pre>
+public void onClick(View v) {
+    new DownloadImageTask().execute("http://example.com/image.png");
+}
+
+private class DownloadImageTask extends AsyncTask&lt;String, Void, Bitmap&gt; {
+    /** The system calls this to perform work in a worker thread and
+      * delivers it the parameters given to AsyncTask.execute() */
+    protected Bitmap doInBackground(String... urls) {
+        return loadImageFromNetwork(urls[0]);
+    }
+    
+    /** The system calls this to perform work in the UI thread and delivers
+      * the result from doInBackground() */
+    protected void onPostExecute(Bitmap result) {
+        mImageView.setImageBitmap(result);
+    }
+}
+</pre>
+
+<p>現在 UI 很安全，而且程式碼變得更簡單，這是因為它將工作分成兩部分，一部分應在工作者執行緒上完成，而另一部分應在 UI 執行緒上完成。
+</p>
+
+<p>建議您參閱 {@link android.os.AsyncTask} 參考資料，以全面瞭解如何使用此類別；以下是其如何運作的快速總覽：
+</p>
+
+<ul>
+<li>您可以使用泛型來指定參數類型、進度值以及工作的最終值
+</li>
+<li>{@link android.os.AsyncTask#doInBackground doInBackground()} 方法會在工作者執行緒中自動執行
+</li>
+<li>{@link android.os.AsyncTask#onPreExecute onPreExecute()}、{@link
+android.os.AsyncTask#onPostExecute onPostExecute()} 和 {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()} 全都是透過 UI 執行緒呼叫。</li>
+<li>{@link android.os.AsyncTask#doInBackground doInBackground()} 傳回的值會傳送至
+{@link android.os.AsyncTask#onPostExecute onPostExecute()}</li>
+<li>您隨時都可用 {@link
+android.os.AsyncTask#doInBackground doInBackground()} 呼叫 {@link android.os.AsyncTask#publishProgress publishProgress()}，以便透過 UI 執行緒執行 {@link
+android.os.AsyncTask#onProgressUpdate onProgressUpdate()}。</li>
+<li>您可以從任何執行緒隨時取消工作</li>
+</ul>
+
+<p class="caution"><strong>注意：</strong>使用工作者執行緒可能會遇到的另一個問題是，由於<a href="{@docRoot}guide/topics/resources/runtime-changes.html">執行階段設定變更</a> (例如使用者變更螢幕方向時) 使您的 Activity 意外重新啟動，而可能會終止您的工作者站執行緒。
+
+請參閱 <a href="http://code.google.com/p/shelves/">Shelves</a> 範例應用程式的原始程式碼，以瞭解如何在遇到其中一種重新啟動情況時保留您的工作，以及如何在 Activity 遭到終止時適當取消該工作。
+
+</p>
+
+
+<h3 id="ThreadSafe">安全執行緒方法</h3>
+
+<p> 在某些情況下，您實作的方法可能是從多個執行緒呼叫，因此務必要撰寫成安全執行緒。
+ </p>
+
+<p>這種情況主要發生在可從遠端呼叫的方法，例如<a href="{@docRoot}guide/components/bound-services.html">已繫結服務</a>中的方法。當在源自執行 {@link android.os.IBinder IBinder} 的相同處理程序中實作 {@link android.os.IBinder} 方法上的呼叫時，該方法是以呼叫端的執行緒執行。
+
+
+
+不過，當呼叫源自另一個處理程序時，會從系統在相同處理程序中當成 {@link android.os.IBinder
+IBinder} (未以處理程序的 UI 執行緒執行) 維護的執行緒集區，以選擇的執行緒來執行該方法。例如，雖然服務的
+{@link android.app.Service#onBind onBind()} 方法可從服務處理程序的 UI 執行緒呼叫，但以 {@link android.app.Service#onBind
+onBind()} 傳回的物件實作的方法會從集區中的執行緒呼叫。
+
+由於服務能有多個用戶端，同時也能有多個集區執行緒採用相同的
+{@link android.os.IBinder IBinder} 方法。因此 {@link android.os.IBinder
+IBinder} 方法必須實作為安全執行緒。</p>
+
+<p> 同樣地，內容供應程式能接收源自其他處理程序的資料要求。
+雖然 {@link android.content.ContentResolver} 與 {@link android.content.ContentProvider}
+類別會隱藏如何管理處理程序間通訊的詳細資料，但回應這些要求的 {@link
+android.content.ContentProvider} 方法 &mdash; {@link
+android.content.ContentProvider#query query()}、{@link android.content.ContentProvider#insert
+insert()}、{@link android.content.ContentProvider#delete delete()}、{@link
+android.content.ContentProvider#update update()} 和 {@link android.content.ContentProvider#getType
+getType()} &mdash; 是在內容供應程式的處理程序中從執行緒集區呼叫，而不是該處理程序的 UI 執行緒。
+由於可能會同時有任意數目的執行緒呼叫這些方法，因此它們也要實作為安全執行緒。
+ </p>
+
+
+<h2 id="IPC">處理程序間通訊</h2>
+
+<p>Android 提供一項使用遠端程序呼叫 (RPC) 進行處理程序間通訊 (IPC) 的機制，RPC 是指 (以另一個處理程序) 從遠端執行由 Activity 或其他應用程式元件呼叫的方法，再加上要傳回給呼叫端的任何結果。
+
+
+這需要將方法呼叫與其資料分解成作業系統能夠瞭解的程度，將它從本機處理程序與位址空間傳輸到遠端處理程序與位址空間，然後再重新組合和重新實作呼叫。
+
+接著，再以相反的方向傳輸傳回值。
+Android 提供進行這些 IPC 交易的所有程式碼，讓您可以專心定義及實作 RPC 程式設計介面。
+ </p>
+
+<p>如要執行 IPC，您的應用程式必須使用 {@link
+android.content.Context#bindService bindService()} 來繫結至服務。如需詳細資訊，請參閱<a href="{@docRoot}guide/components/services.html">服務</a>開發人員指南。</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For information about how to perform work in the background for an indefinite period of time
+(without a user interface), continue with the <b><a
+href="{@docRoot}guide/components/services.html">Services</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/zh-tw/guide/components/recents.jd b/docs/html-intl/intl/zh-tw/guide/components/recents.jd
new file mode 100644
index 0000000..d56c12c
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/recents.jd
@@ -0,0 +1,256 @@
+page.title=總覽畫面
+page.tags="recents","overview"
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>本文件內容</h2>
+  <ol>
+    <li><a href="#adding">新增工作到總覽畫面</a>
+      <ol>
+        <li><a href="#flag-new-doc">使用意圖旗標來新增工作</a></li>
+        <li><a href="#attr-doclaunch">使用 Activity 屬性來新增工作</a></li>
+      </ol>
+    </li>
+    <li><a href="#removing">移除工作</a>
+      <ol>
+        <li><a href="#apptask-remove">使用 AppTask 類別來移除工作</a></li>
+        <li><a href="#retain-finished">保留結束的工作</a></li>
+      </ol>
+    </li>
+  </ol>
+
+  <h2>重要類別</h2>
+  <ol>
+    <li>{@link android.app.ActivityManager.AppTask}</li>
+    <li>{@link android.content.Intent}</li>
+  </ol>
+
+  <h2>程式碼範例</h2>
+  <ol>
+    <li><a href="{@docRoot}samples/DocumentCentricApps/index.html">以文件為中心的應用程式</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>總覽畫面 (也被稱為最近畫面、最近工作清單，或最近的應用程式) 是系統層級的 UI，可以列出最近存取的 <a href="{@docRoot}guide/components/activities.html">Activity</a> 與<a href="{@docRoot}guide/components/tasks-and-back-stack.html">工作</a>。
+
+使用者可以透過清單導覽並選擇要繼續的工作，或是使用者可以滑動的方式從清單移除工作。
+
+使用 Android 5.0 版本 (API 級別 21)，相同 Activity (包含不同文件) 的多個執行個體可以在總覽畫面中顯示為工作。
+例如：對多份 Google 文件，Google 雲端硬碟能讓每份文件都對應一個工作。
+每份文件在總覽畫面中都會顯示為工作。
+</p>
+
+<img src="{@docRoot}images/components/recents.png" alt="" width="284" />
+<p class="img-caption"><strong>圖 1.</strong>總覽畫面會顯示三份 Google 雲端硬碟文件，每份都分別顯示為一項工作。
+</p>
+
+<p>一般而言，您應該允許系統定義如何在總覽畫面中呈現工作與 Activity，而且不需要修改此行為。
+然而，您的應用程式可以決定要如何與在何時於總覽畫面中顯示 Activity。
+
+{@link android.app.ActivityManager.AppTask} 類別讓您可以管理工作，而 {@link android.content.Intent} 類別的 Activity 旗標可以讓您指定何時從總覽畫面新增或移除 Activity。
+
+此外，<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> 屬性可以讓您設定宣示說明中的行為。</p>
+
+<h2 id="adding">新增工作到總覽畫面</h2>
+
+<p>使用 {@link android.content.Intent} 類別的旗標可以新增工作，該工作針對何時與如何在總覽畫面中開啟或重新開啟文件，可給予更多控制權。
+當您使用
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>屬性時，您可以選擇永遠在新工作開啟文件或對文件重複使用現有工作。
+
+</p>
+
+<h3 id="flag-new-doc">使用意圖旗標來新增工作</h3>
+
+<p>當您建立 Activity 的新文件時，您可以呼叫
+ {@link android.app.ActivityManager.AppTask} 類別的 {@link android.app.ActivityManager.AppTask#startActivity(android.content.Context, android.content.Intent, android.os.Bundle) startActivity()}方法，傳送啟動 Activity 的意圖至新文件。
+
+如要插入邏輯中斷，讓系統可以將您的 Activity 當作總覽視窗中的新工作，傳送啟動 Activity 的 {@link android.content.Intent}其 {@link android.content.Intent#addFlags(int) addFlags()} 方法中的 {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} 旗標。
+
+
+</p>
+
+<p class="note"><strong>注意：</strong>{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} 旗標會取代 {@link android.content.Intent#FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET} 旗標，後者已從 Android 5.0 (API 級別 21) 起失效。
+
+</p>
+
+<p>如果您在建立新文件時設定 {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 旗標，則系統永遠會在建立新工作時也在根目錄建立目標 Activity。此設定允許可以在一個以上的工作中開啟相同的文件。
+
+下列程式碼示範主要 Activity 如何處理：
+</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">
+DocumentCentricActivity.java</a></p>
+<pre>
+public void createNewDocument(View view) {
+      final Intent newDocumentIntent = newDocumentIntent();
+      if (useMultipleTasks) {
+          newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
+      }
+      startActivity(newDocumentIntent);
+  }
+
+  private Intent newDocumentIntent() {
+      boolean useMultipleTasks = mCheckbox.isChecked();
+      final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+      newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT);
+      newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+      return newDocumentIntent;
+  }
+
+  private static int incrementAndGet() {
+      Log.d(TAG, "incrementAndGet(): " + mDocumentCounter);
+      return mDocumentCounter++;
+  }
+}
+</pre>
+
+<p class="note"><strong>注意：</strong>與 {@code FLAG_ACTIVITY_NEW_DOCUMENT} 旗標一起啟動的 Activity 務必要在宣示說明中設定 {@code android:launchMode="standard"} 屬性值 (預設)。
+
+</p>
+
+<p>當主要 Activity 啟動新的 Activity 時，系統會透過現有工作搜尋其意圖和 Activity 意圖元件名稱及意圖資料相同的 Activity。
+如果找不到工作，或意圖已包含 {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 旗標，則會建立新的工作並使用 Activity 做為其根目錄。
+
+如果找到工作，則會將該工作帶到前面並傳送新的意圖到 {@link android.app.Activity#onNewIntent onNewIntent()}。
+新的 Activity 會取得意圖並在總覽視窗中建立新的文件，如下列範例所示：
+
+</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">NewDocumentActivity.java
+</a></p>
+<pre>
+&#64;Override
+protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_new_document);
+    mDocumentCount = getIntent()
+            .getIntExtra(DocumentCentricActivity.KEY_EXTRA_NEW_DOCUMENT_COUNTER, 0);
+    mDocumentCounterTextView = (TextView) findViewById(
+            R.id.hello_new_document_text_view);
+    setDocumentCounterText(R.string.hello_new_document_counter);
+}
+
+&#64;Override
+protected void onNewIntent(Intent intent) {
+    super.onNewIntent(intent);
+    /* If FLAG_ACTIVITY_MULTIPLE_TASK has not been used, this activity
+    is reused to create a new document.
+     */
+    setDocumentCounterText(R.string.reusing_document_counter);
+}
+</pre>
+
+
+<h3 id="#attr-doclaunch">使用 Activity 屬性來新增工作</h3>
+
+<p>Activity 也可以在宣示說明中指定為永遠啟動新工作，這可透過使用<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 屬性的 <a href="{@docRoot}guide/topics/manifest/activity-element.html#dlmode">
+{@code android:documentLaunchMode}</a> 達成。
+
+此屬性有四個值，在使用者使用應用程式開啟文件時，會產生下列效果：
+</p>
+
+<dl>
+  <dt>"{@code intoExisting}"</dt>
+  <dd>Activity 會對文件重複使用現有的工作。設定
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} 旗標，但「不」<em></em>設定
+{@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 旗標，會與上述<a href="#flag-new-doc">使用意圖旗標來新增工作</a>達到相同效果。
+</dd>
+
+  <dt>"{@code always}"</dt>
+  <dd>Activity 會為文件建立新的工作，就算文件已開始也會建立新的工作。使用此值與設定 {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} 與 {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 旗標會達到相同效果。
+
+</dd>
+
+  <dt>"{@code none”}"</dt>
+  <dd>Activity 不會為文件建立新的工作。總覽視窗會將 Activity 當作預設：會顯示應用程式的單一工作，該工作會從使用者最後呼叫的 Activity 繼續。
+
+</dd>
+
+  <dt>"{@code never}"</dt>
+  <dd>Activity 不會為文件建立新的工作。設定此值會覆寫 {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} 與 {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK} 旗標的行為，如果任一個已於意圖中設定，總覽視窗會顯示應用程式的單一工作，該工作會從使用者最後呼叫的 Activity 繼續。
+
+
+
+</dd>
+</dl>
+
+<p class="note"><strong>注意：</strong>如果值不是 {@code none} 與 {@code never}，則 Activity 必須使用 {@code launchMode="standard"} 定義。
+如果沒有指定此屬性，則會使用 
+{@code documentLaunchMode="none"}。</p>
+
+<h2 id="removing">移除工作</h2>
+
+<p>依照預設，當 Activity 結束時，會自動將文件工作從總覽畫面移除。
+您可以使用 {@link android.app.ActivityManager.AppTask} 類別，搭配 {@link android.content.Intent} 旗標或 <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">
+&lt;activity&gt;</a></code> 屬性，來覆寫此行為。
+</p>
+
+<p>您可以完全從總覽畫面排除工作，設定方式為將
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 屬性的<a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">
+{@code android:excludeFromRecents}</a> 設為 {@code true}。
+</p>
+
+<p>您可以設定應用程式可以納入總覽視窗的最大工作數目，方法是對 <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 屬性 <a href="{@docRoot}guide/topics/manifest/activity-element.html#maxrecents">{@code android:maxRecents}</a> 設定整數值。
+
+
+預設值為 16。當達到工作的最大值時，會從總覽視窗移除最近最少使用的工作。
+{@code android:maxRecents} 的最大值是 50 (在低記憶體裝置上是 25)；數值不可以小於 1。
+</p>
+
+<h3 id="#apptask-remove">使用 AppTask 類別來移除工作</h3>
+
+<p>在總覽畫面建立新工作的 Activity 中，您可以指定何時移除工作與結束所有相關 Activity，方法為呼叫{@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()} 方法。
+
+</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">NewDocumentActivity.java
+</a></p>
+<pre>
+public void onRemoveFromRecents(View view) {
+    // The document is no longer needed; remove its task.
+    finishAndRemoveTask();
+}
+</pre>
+
+<p class="note"><strong>注意：</strong>使用
+{@link android.app.ActivityManager.AppTask#finishAndRemoveTask() finishAndRemoveTask()} 方法覆寫 {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} 標籤的使用，會在下面討論。
+
+</p>
+
+<h3 id="#retain-finished">保留結束的工作</h3>
+
+<p>如果您要保留總覽畫面中的工作 (就算其 Activity 已結束)， 方法為傳送啟動 Activity 的意圖其 {@link android.content.Intent#addFlags(int) addFlags()} 方法中的
+{@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} 旗標。
+</p>
+
+<p class="code-caption"><a href="{@docRoot}samples/DocumentCentricApps/index.html">DocumentCentricActivity.java
+</a></p>
+<pre>
+private Intent newDocumentIntent() {
+    final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class);
+    newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT |
+      android.content.Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS);
+    newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet());
+    return newDocumentIntent;
+}
+</pre>
+
+<p>如要達到相同效果，可以設定
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 屬性的 <a href="{@docRoot}guide/topics/manifest/activity-element.html#autoremrecents">
+{@code android:autoRemoveFromRecents}</a> 為 {@code false}。
+對文件 Activity 的預設值為 {@code true}，對定期 Activity 的預設值則為 {@code false}。
+如同之前的討論，使用此屬性可以覆寫 {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS} 旗標。
+</p>
+
+
+
+
+
+
+
diff --git a/docs/html-intl/intl/zh-tw/guide/components/services.jd b/docs/html-intl/intl/zh-tw/guide/components/services.jd
new file mode 100644
index 0000000..d6a440d
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/services.jd
@@ -0,0 +1,813 @@
+page.title=服務
+@jd:body
+
+<div id="qv-wrapper">
+<ol id="qv">
+<h2>本文件內容</h2>
+<ol>
+<li><a href="#Basics">基本概念</a></li>
+<ol>
+  <li><a href="#Declaring">在宣示說明中宣告服務</a></li>
+</ol>
+<li><a href="#CreatingAService">建立已啟動的服務</a>
+  <ol>
+    <li><a href="#ExtendingIntentService">延伸 IntentService 類別</a></li>
+    <li><a href="#ExtendingService">延伸服務類別</a></li>
+    <li><a href="#StartingAService">啟動服務</a></li>
+    <li><a href="#Stopping">停止服務</a></li>
+  </ol>
+</li>
+<li><a href="#CreatingBoundService">建立已繫結的服務</a></li>
+<li><a href="#Notifications">傳送通知給使用者</a></li>
+<li><a href="#Foreground">在前景中執行服務</a></li>
+<li><a href="#Lifecycle">管理服務的生命週期</a>
+<ol>
+  <li><a href="#LifecycleCallbacks">實作生命週期回呼</a></li>
+</ol>
+</li>
+</ol>
+
+<h2>重要類別</h2>
+<ol>
+  <li>{@link android.app.Service}</li>
+  <li>{@link android.app.IntentService}</li>
+</ol>
+
+<h2>範例</h2>
+<ol>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.html">{@code
+      ServiceStartArguments}</a></li>
+  <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
+      LocalService}</a></li>
+</ol>
+
+<h2>另請參閱</h2>
+<ol>
+<li><a href="{@docRoot}guide/components/bound-services.html">已繫結的服務</a></li>
+</ol>
+
+</div>
+
+
+<p>{@link android.app.Service} 是可以在背景中長時間執行操作的應用程式元件，且不提供使用者介面。
+也是另一個可以啟動服務的應用程式元件，就算使用者切換至其他應用程式，也會繼續在背景中執行。
+
+此外，元件也可以繫結至服務，以便與其互動，甚至執行處理程序間通訊 (IPC)。
+例如，服務可能處理網路交易、播放音樂、執行檔案輸入/輸出或與內容供應程式互動，這些都可以從背景執行。
+
+</p>
+
+<p>服務基本上可以採取兩種形式：</p>
+
+<dl>
+  <dt>啟動</dt>
+  <dd>服務「啟動」表示應用程式元件 (例如 Activity) 透過呼叫
+{@link android.content.Context#startService startService()} 來啟動服務。一旦啟動，服務可以無限次數地在背景中執行，就算啟動服務的元件已終結也不會影響。
+通常，已啟動的服務會執行單一操作且不會將結果傳回呼叫端。例如，服務可能會透過網路下載或上傳檔案。
+
+當操作完成時，服務應該會自行終結。
+</dd>
+  <dt>繫結</dt>
+  <dd>服務「繫結」表示應用程式元件透過呼叫 {@link
+android.content.Context#bindService bindService()} 來繫結至服務。已繫結的服務提供主從式介面，讓元件可以與服務互動、傳送要求、取得結果，甚至可以使用處理程序間通訊 (IPC) 來跨程序達到目的。
+
+已繫結的服務伴隨另一個繫結至服務的應用程式元件執行。
+多重元件可以一次繫結至服務，但是當所有元件都取消繫結時，服務就會被終結。
+</dd>
+</dl>
+
+<p>雖然此文件通常分別討論服務的這兩種類別，但您的服務兩種方式都可以執行 &mdash; 可以啟動服務 (無限次數地執行) 也允許繫結。
+這僅與您是否實作兩種回呼方法而定：{@link
+android.app.Service#onStartCommand onStartCommand()} 允許元件啟動服務，而 {@link
+android.app.Service#onBind onBind()} 則允許繫結。
+</p>
+
+<p>不論您的應用程式是否啟動、繫結或兩者都有，任何應用程式元件可以使用服務 (就算來自不同的應用程式)，與任何元件可以使用 Activity 的方式相同 &mdash; 使用 {@link android.content.Intent} 啟動服務。
+
+然而，您可以宣告服務為私用、位於宣示說明檔案之中，與封鎖從其他應用程式存取。
+如需更多討論資訊，請詳見<a href="#Declaring">在宣示說明中宣告服務</a>。
+
+</p>
+
+<p class="caution"><strong>注意：</strong>服務會在其託管程序的主執行緒中執行 &mdash; 服務<strong>不會</strong>建立自己的執行緒且<strong>不會</strong>在另外的程序中執行 (除非您另行指定)。
+
+這代表如果您的服務即將從事任何 CPU 密集的作業或封鎖操作 (如播放 MP3 或連線網路)，您應該在服務中建立新的執行緒來執行這些工作。
+
+透過使用另外的執行緒，您會降低應用程式不回應 (ANR) 錯誤的風險，且應用程式的主執行緒仍可以專務於使用者與您的 Activity 互動。
+
+</p>
+
+
+<h2 id="Basics">基本概念</h2>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>應該使用服務或執行緒？</h3>
+  <p>服務簡單而言就是可以在背景中執行的元件，就算使用者不與您的應用程式互動也不會影響。
+所以，您應該只在需要時才建立服務。
+</p>
+  <p>如果您必須在主執行緒外執行作業，但只有在使用者與您應用程式互動時才需要，則您可能應該建立新的執行緒而非服務。
+例如，如果您想要播放一些音樂，但只在執行您的 Activity 時播放，您可能在
+{@link android.app.Activity#onCreate onCreate()} 中建立執行緒，在 {@link
+android.app.Activity#onStart onStart()} 中開始執行該執行緒，然後在 {@link android.app.Activity#onStop
+onStop()} 中停止。
+也可以考慮使用 {@link android.os.AsyncTask} 或 {@link android.os.HandlerThread}，來代替傳統的 {@link java.lang.Thread} 類別。
+如需更多有關執行緒的資訊，請參閱<a href="{@docRoot}guide/components/processes-and-threads.html#Threads">程序與執行緒</a>文件。
+</p>
+  <p>請記得如果您確實使用服務，依照預設會在您應用程式的主執行緒中執行該服務，所以，如果服務執行密集的操作或封鎖操作，則您仍應在服務中建立新的執行緒。
+
+</p>
+</div>
+</div>
+
+<p>如要建立服務，您必須建立 {@link android.app.Service} 的子類別 (或是其現有的子類別之一)。
+在您的實作中，如果可以，您必須覆寫某些回呼方法，這些方法負責處理服務生命週期的關鍵層面，並提供元件繫結至服務的機制。
+
+您應該覆寫的最重要回呼方法為：</p>
+
+<dl>
+  <dt>{@link android.app.Service#onStartCommand onStartCommand()}</dt>
+    <dd>當另一個元件 (如 Activity) 透過呼叫 {@link android.content.Context#startService
+startService()} 來要求啟動服務時，系統會呼叫此方法。
+一旦執行此方法，服務會被啟動且可以無限次數地在背景中執行。
+如果您實作此方法，當作業完成時，您必須負責停止服務，方式為呼叫 {@link android.app.Service#stopSelf stopSelf()} 或 {@link
+android.content.Context#stopService stopService()}。
+(如果您只想要提供繫結功能，您不需要實作此方法)。
+</dd>
+  <dt>{@link android.app.Service#onBind onBind()}</dt>
+    <dd>當其他元件想要與服務 (如執行 RPC) 繫結時，系統會透過呼叫 {@link android.content.Context#bindService
+bindService()} 來呼叫此方法。
+在您實作此方法時，透過傳回 {@link android.os.IBinder}，您必須提供用戶端可用來與服務通訊的介面。
+您必須永遠實作此方法，但如果您不想允許繫結，則您應該傳回 null。
+</dd>
+  <dt>{@link android.app.Service#onCreate()}</dt>
+    <dd>當第一次建立服務時，系統會呼叫此方法來執行一次性的設定程序 (在其呼叫 {@link android.app.Service#onStartCommand onStartCommand()} 或
+{@link android.app.Service#onBind onBind()} 之前)。
+如果已經執行服務，則不會呼叫此方法。
+</dd>
+  <dt>{@link android.app.Service#onDestroy()}</dt>
+    <dd>當不再使用服務且正在終結服務時，系統會呼叫此方法。您的服務應該實作此方法來清除任何如執行緒、註冊的接聽器，接收器等資源。
+
+這會是服務接收到的最後呼叫。</dd>
+</dl>
+
+<p>如果透過呼叫 {@link
+android.content.Context#startService startService()} (這是呼叫至 {@link
+android.app.Service#onStartCommand onStartCommand()} 的結果) 讓元件啟動服務，則服務仍會保持執行狀態，直到使用 {@link android.app.Service#stopSelf()} 讓服務自行停止或透過呼叫
+{@link android.content.Context#stopService stopService()} 由其他元件停止服務。
+</p>
+
+<p>如果元件呼叫
+{@link android.content.Context#bindService bindService()} 來建立服務 (且「沒有」呼叫 {@link
+android.app.Service#onStartCommand onStartCommand()}<em></em>)，則服務會伴隨繫結至服務的元件執行。
+一旦服務與所有用戶端解除繫結時，系統會終結服務。
+</p>
+
+<p>只有在記憶體不足且必須復原擁有使用者焦點的 Activity 其系統資源時，Android 系統才會強制停止服務。
+如果服務已繫結至擁有使用者焦點的 Activity，則該服務不太容易被終止，且如果服務被宣告為<a href="#Foreground">在前景中執行</a> (稍後會討論)，則該服務幾乎不會被終止。
+否則，如果長時間執行於前景中啟動的服務，則系統會隨時間降低該服務在背景工作清單中的位置，且該服務會很容易被終止 &mdash; 如果已啟動您的服務，則您必須設計讓系統可以完美地處理重新啟動。
+
+
+
+如果系統終止服務，則系統會在可以再度取得資源時立即重新啟動服務 (雖然這也會依據您從 {@link
+android.app.Service#onStartCommand onStartCommand()} 傳回的值而有所不同，稍後會討論)。
+如需更多有關系統何時可能終結服務的資訊，請參閱<a href="{@docRoot}guide/components/processes-and-threads.html">程序與執行緒</a>文件。
+
+</p>
+
+<p>在下列小節，您將看到您如何可以建立每種類型的服務與如何從不同應用程式元件使用。
+</p>
+
+
+
+<h3 id="Declaring">在宣示說明中宣告服務</h3>
+
+<p>就如同 Activity (與其他元件)，您必須在您應用程式的宣示說明檔案中宣告所有服務。
+</p>
+
+<p>如要宣告您的服務，可以新增 <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 元素為 <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application&gt;}</a>元素的子項。
+
+例如：</p>
+
+<pre>
+&lt;manifest ... &gt;
+  ...
+  &lt;application ... &gt;
+      &lt;service android:name=".ExampleService" /&gt;
+      ...
+  &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>如需更多有關在宣示說明中宣告您服務的行系資訊，請參閱 <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 元素。
+</p>
+
+<p>您還可以在 <a href="{@docRoot}guide/topics/manifest/service-element.html">{@code &lt;service&gt;}</a> 元素中包含其他屬性，用來定義如啟動服務所需權限的屬性，與服務應該執行的程序。
+
+<a href="{@docRoot}guide/topics/manifest/service-element.html#nm">{@code android:name}</a> 屬性是唯一必備的屬性 &mdash; 用來指定服務的類別名稱。
+一旦您發佈應用程式，您就不應該變更此名稱，因為如果這樣做，會由於依賴明確的意圖來啟動或繫結服務 (閱讀部落格貼文、<a href="http://android-developers.blogspot.com/2011/06/things-that-cannot-change.html">不能變更的事項</a>)，造成程式碼中斷的風險。
+
+
+
+
+<p>如要確認您的應用程式是安全的，<strong>當啟動或繫結您的 {@link android.app.Service} 時，永遠使用明確意圖</strong>，且不要宣告服務的意圖篩選器。
+如果允許一定程度的模糊來決定啟動的服務是重要的，您可以提供您的服務意圖篩選器，並從 {@link
+android.content.Intent} 排除元件名稱，但您仍需使用 {@link
+android.content.Intent#setPackage setPackage()} 設定意圖的封裝，這會提供目標服務足夠明確、避免含糊的指示。
+
+
+</p>
+
+<p>此外，您可以確保只有您的應用程式可以使用您的服務，方法為包含 <a href="{@docRoot}guide/topics/manifest/service-element.html#exported">{@code android:exported}</a> 屬性並將其設定為 {@code "false"}。
+
+這可以有效地避免其他應用程式啟動您的服務，就算使用明確意圖時也是如此。
+</p>
+
+
+
+
+<h2 id="CreatingStartedService">建立已啟動的服務</h2>
+
+<p>已啟動的服務是由其他應用程式呼叫 {@link
+android.content.Context#startService startService()} 所啟動的，由呼叫至服務的
+{@link android.app.Service#onStartCommand onStartCommand()} 方法所導致。</p>
+
+<p>當服務啟動，其生命週期與啟動服務的元件無關，且服務可以無限次數地在背景中執行，就算啟動服務的元件已終結也不會影響。
+
+因此，當服務的工作藉由呼叫 {@link android.app.Service#stopSelf stopSelf()} 而完成時，服務應該會自行停止，或藉由呼叫 {@link android.content.Context#stopService stopService()}，其他元件也可以停止服務。
+
+</p>
+
+<p>如 Activity 等應用程式元件可以透過呼叫 {@link
+android.content.Context#startService startService()} 與傳送用來指定服務及包含服務所要使用任何資料的
+{@link android.content.Intent}，來啟動服務。服務會接收 {@link android.app.Service#onStartCommand
+onStartCommand()} 方法中的此 {@link android.content.Intent}。
+</p>
+
+<p>例如，假設 Activity 需要一些資料到線上資料庫。藉由傳送意圖至 {@link
+android.content.Context#startService startService()}，Activity 可以啟動伴隨服務並傳送要儲存的資料。
+服務會接收 {@link
+android.app.Service#onStartCommand onStartCommand()} 中的意圖，連線到網際網路，並執行資料庫交易。
+當操作完成時，服務應該會自行終結。
+</p>
+
+<p class="caution"><strong>注意：</strong>服務會在與應用程式相同的程序中執行，服務會在該程序中被宣告，且依照預設，會位於該應用程式的主執行緒之中。
+所以，在使用者與來自相同應用程式的 Activity 互動時，如果您的服務執行密集的操作或封鎖操作，則該服務將會降低 Activity 的效能。
+
+要避免影響應用程式的效能，您應該在服務之中啟動新的執行緒。
+</p>
+
+<p>傳統上，有兩種類別可以延伸為建立已啟動的服務：</p>
+<dl>
+  <dt>{@link android.app.Service}</dt>
+  <dd>這是所有服務的基本類別。當您延伸此類別時，建立用來執行所有服務工作的新執行緒是非常重要的，因為依照預設，服務會使用您應用程式的主執行緒，這會降低任何您應用程式所執行 Activity 的效能。
+
+
+</dd>
+  <dt>{@link android.app.IntentService}</dt>
+  <dd>這是 {@link android.app.Service} 的子類別，會使用 worker 執行緒來處理所有的啟動要求，一次一個。
+如果您不需要您的服務同時處理多個要求，則這是最佳的選項。
+您唯一要做的就是實作 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()}，這會接收每個起始要求的意圖 ，所以您可以在背景執行。
+</dd>
+</dl>
+
+<p>下列小節說明如何可以使用這些類別之一來實作您的服務。
+</p>
+
+
+<h3 id="ExtendingIntentService">延伸 IntentService 類別</h3>
+
+<p>因為大多數的已啟動服務不需要同時處理多個要求(多重執行緒策略事實上是危險的)，如果您使用 {@link android.app.IntentService} 類別來實作您的服務可能是最佳的方法。
+
+</p>
+
+<p>{@link android.app.IntentService} 會達到下列目的：</p>
+
+<ul>
+  <li>建立預設的 worker 執行緒，該執行緒會執行所有傳送至 {@link
+android.app.Service#onStartCommand onStartCommand()} 的意圖，並與您應用程式的主執行緒有所分別。
+</li>
+  <li>建立工作佇列，該佇列會一次傳送一個意圖到您的 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} 實作，所以您絕對不需要擔心多重執行緒的問題。
+</li>
+  <li>在所有啟動要求都已處理後，停止服務，這樣您永遠不需要呼叫
+{@link android.app.Service#stopSelf}。</li>
+  <li>提供傳回 null 的 {@link android.app.IntentService#onBind onBind()} 其預設實作。
+</li>
+  <li>提供傳送意圖至工作佇列的 {@link android.app.IntentService#onStartCommand
+onStartCommand()} 其預設實作，然後傳送至您的 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} 實作。</li>
+</ul>
+
+<p>所有這一切都說明了您要做的就是實作 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()} 來完成用戶端提供的工作。
+(雖然，您也需要提供小型建構函式給服務)。</p>
+
+<p>下列是 {@link android.app.IntentService} 實作的範例：</p>
+
+<pre>
+public class HelloIntentService extends IntentService {
+
+  /**
+   * A constructor is required, and must call the super {@link android.app.IntentService#IntentService}
+   * constructor with a name for the worker thread.
+   */
+  public HelloIntentService() {
+      super("HelloIntentService");
+  }
+
+  /**
+   * The IntentService calls this method from the default worker thread with
+   * the intent that started the service. When this method returns, IntentService
+   * stops the service, as appropriate.
+   */
+  &#64;Override
+  protected void onHandleIntent(Intent intent) {
+      // Normally we would do some work here, like download a file.
+      // For our sample, we just sleep for 5 seconds.
+      long endTime = System.currentTimeMillis() + 5*1000;
+      while (System.currentTimeMillis() &lt; endTime) {
+          synchronized (this) {
+              try {
+                  wait(endTime - System.currentTimeMillis());
+              } catch (Exception e) {
+              }
+          }
+      }
+  }
+}
+</pre>
+
+<p>您需要的是：{@link
+android.app.IntentService#onHandleIntent onHandleIntent()} 的建構函式與實作。</p>
+
+<p>如果您決定也要覆寫其他回呼方法，如 {@link
+android.app.IntentService#onCreate onCreate()}、{@link
+android.app.IntentService#onStartCommand onStartCommand()} 或 {@link
+android.app.IntentService#onDestroy onDestroy()}，請確認呼叫超級實作，這樣
+{@link android.app.IntentService} 才可以適當處理 worker 執行緒的生命。</p>
+
+<p>例如，{@link android.app.IntentService#onStartCommand onStartCommand()} 必須傳回預設的實作 (這就是意圖如何被傳送至 {@link
+android.app.IntentService#onHandleIntent onHandleIntent()})：
+</p>
+
+<pre>
+&#64;Override
+public int onStartCommand(Intent intent, int flags, int startId) {
+    Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+    return super.onStartCommand(intent,flags,startId);
+}
+</pre>
+
+<p>除了 {@link android.app.IntentService#onHandleIntent onHandleIntent()}，您不需要呼叫超級類別的唯一方法就是 {@link android.app.IntentService#onBind
+onBind()} (但只有在您的服務允許繫結時才需要實作)。
+</p>
+
+<p>在下一節，您會看到在延伸基本 {@link android.app.Service} 類別時，如何實作同類的服務，這需要寫更多程式碼，但是如果您需要同時處理多個啟動要求時，這可能是比較合適的處理方式。
+
+</p>
+
+
+<h3 id="ExtendingService">延伸服務類別</h3>
+
+<p>如同您在前一節看到的，使用 {@link android.app.IntentService} 可讓您已啟動服務的實作變得非常容易。
+然而，如果您要求您的服務執行多重執行緒 (取代透過工作佇列處理啟動要求)，則您可以延伸 {@link android.app.Service} 類別來處理每個意圖。
+
+</p>
+
+<p>為了對比之用，下列程式碼範例是 {@link
+android.app.Service} 類別的實作，該類別執行與上述使用 {@link
+android.app.IntentService} 範例相同的工作。也就是，對每個啟動要求，會使用 worker 執行緒來執行工作，且一次只處理一個要求。
+</p>
+
+<pre>
+public class HelloService extends Service {
+  private Looper mServiceLooper;
+  private ServiceHandler mServiceHandler;
+
+  // Handler that receives messages from the thread
+  private final class ServiceHandler extends Handler {
+      public ServiceHandler(Looper looper) {
+          super(looper);
+      }
+      &#64;Override
+      public void handleMessage(Message msg) {
+          // Normally we would do some work here, like download a file.
+          // For our sample, we just sleep for 5 seconds.
+          long endTime = System.currentTimeMillis() + 5*1000;
+          while (System.currentTimeMillis() &lt; endTime) {
+              synchronized (this) {
+                  try {
+                      wait(endTime - System.currentTimeMillis());
+                  } catch (Exception e) {
+                  }
+              }
+          }
+          // Stop the service using the startId, so that we don't stop
+          // the service in the middle of handling another job
+          stopSelf(msg.arg1);
+      }
+  }
+
+  &#64;Override
+  public void onCreate() {
+    // Start up the thread running the service.  Note that we create a
+    // separate thread because the service normally runs in the process's
+    // main thread, which we don't want to block.  We also make it
+    // background priority so CPU-intensive work will not disrupt our UI.
+    HandlerThread thread = new HandlerThread("ServiceStartArguments",
+            Process.THREAD_PRIORITY_BACKGROUND);
+    thread.start();
+
+    // Get the HandlerThread's Looper and use it for our Handler
+    mServiceLooper = thread.getLooper();
+    mServiceHandler = new ServiceHandler(mServiceLooper);
+  }
+
+  &#64;Override
+  public int onStartCommand(Intent intent, int flags, int startId) {
+      Toast.makeText(this, "service starting", Toast.LENGTH_SHORT).show();
+
+      // For each start request, send a message to start a job and deliver the
+      // start ID so we know which request we're stopping when we finish the job
+      Message msg = mServiceHandler.obtainMessage();
+      msg.arg1 = startId;
+      mServiceHandler.sendMessage(msg);
+
+      // If we get killed, after returning from here, restart
+      return START_STICKY;
+  }
+
+  &#64;Override
+  public IBinder onBind(Intent intent) {
+      // We don't provide binding, so return null
+      return null;
+  }
+
+  &#64;Override
+  public void onDestroy() {
+    Toast.makeText(this, "service done", Toast.LENGTH_SHORT).show();
+  }
+}
+</pre>
+
+<p>如同您看到的，比起使用 {@link android.app.IntentService}，這需要花更多功夫。</p>
+
+<p>然而，因為您自行處理每個對 {@link android.app.Service#onStartCommand
+onStartCommand()} 的呼叫，您可以同時執行多個要求。那不是這個範例要做的，但如果那是您想要的，那麼您可以針對每個要求建立新的執行緒，並立即執行 (代替等待之前的要求結束)。
+
+</p>
+
+<p>請注意：{@link android.app.Service#onStartCommand onStartCommand()} 方法必須傳回整數。
+整數是一個數值，說明在系統終止服務的事件中，系統該如何繼續服務 (如上述的討論，雖然您可以修改，但 {@link
+android.app.IntentService} 的預設實作會替您處理)。
+從
+{@link android.app.Service#onStartCommand onStartCommand()} 傳回的值必須是下列常數之一：
+</p>
+
+<dl>
+  <dt>{@link android.app.Service#START_NOT_STICKY}</dt>
+    <dd>如果系統在 {@link android.app.Service#onStartCommand
+onStartCommand()} 回傳後終止服務，除非有待決的意圖要傳送，否則請「不要」<em></em>建立服務。
+在非必要時與應用程式可以簡單地重新啟動任何未完成的工作時，這是避免執行服務的最安全方式。
+</dd>
+  <dt>{@link android.app.Service#START_STICKY}</dt>
+    <dd>如果系統在 {@link android.app.Service#onStartCommand
+onStartCommand()} 回傳後終止服務，請重新建立服務並呼叫 {@link
+android.app.Service#onStartCommand onStartCommand()}，但「不要」<em></em>重新傳送最後的意圖。
+相反地，除非有待決的意圖要啟動服務傳送，否則系統會使用 null 意圖呼叫 {@link android.app.Service#onStartCommand onStartCommand()}，如果有待決的意圖要啟動服務，則會傳送那些意圖。
+
+這適用於媒體播放程式 (或類似服務) 這類不執行命令，但可以無次數限制執行與等待工作的服務。
+</dd>
+  <dt>{@link android.app.Service#START_REDELIVER_INTENT}</dt>
+    <dd>如果系統在 {@link android.app.Service#onStartCommand
+onStartCommand()} 回傳後終止服務，請重新建立服務並使用傳送至服務的最後意圖呼叫 {@link
+android.app.Service#onStartCommand onStartCommand()}。
+任何待決的意圖會反過來由後往前傳送。這適用的服務為主動執行如下載檔案等應該立即繼續的工作。
+</dd>
+</dl>
+<p>如需有關這些傳回值的詳細資訊，請參閱每個常數的連結參考文件。
+</p>
+
+
+
+<h3 id="StartingAService">啟動服務</h3>
+
+<p>您可以透過傳送
+{@link android.content.Intent} (指定要啟動的服務) 到 {@link
+android.content.Context#startService startService()}，從 Activity 或其他應用程式元件來啟動服務。Android 系統會呼叫服務的 {@link
+android.app.Service#onStartCommand onStartCommand()} 方法並傳送 {@link
+android.content.Intent} 給該方法。(絕對不要直接呼叫 {@link android.app.Service#onStartCommand
+onStartCommand()})。</p>
+
+<p>例如，使用明確意圖並搭配 {@link android.content.Context#startService
+startService()}，Activity 可以啟動前小節範例中的服務 ({@code
+HelloSevice})：</p>
+
+<pre>
+Intent intent = new Intent(this, HelloService.class);
+startService(intent);
+</pre>
+
+<p>{@link android.content.Context#startService startService()} 方法會立即回傳且Android 系統會呼叫服務的 {@link android.app.Service#onStartCommand
+onStartCommand()} 方法。
+如果尚未開始執行服務，系統會先呼叫 {@link
+android.app.Service#onCreate onCreate()}，然後呼叫 {@link android.app.Service#onStartCommand
+onStartCommand()}。</p>
+
+<p>如果服務也不提供繫結，則與意圖一同傳送的 {@link
+android.content.Context#startService startService()} 是在應用程式元件與服務間通訊的唯一模式。
+然而，如果您想要服務將結果送回，則啟動服務的用戶端會針對廣播建立 {@link android.app.PendingIntent}(搭配 {@link android.app.PendingIntent#getBroadcast getBroadcast()}) 並將其傳送至服務，該服務在啟動服務的 {@link android.content.Intent} 之中。
+
+
+然後服務就可使用廣播來傳送結果。
+</p>
+
+<p>多個啟動服務的要求會導致多個相關呼叫至服務的
+{@link android.app.Service#onStartCommand onStartCommand()}。然而，只允許一個要求可以停止服務 (使用 {@link android.app.Service#stopSelf stopSelf()} 或 {@link
+android.content.Context#stopService stopService()})。
+</p>
+
+
+<h3 id="Stopping">停止服務</h3>
+
+<p>已啟動的服務必須管理本身的生命週期。也就是，系統不會停止或終結服務，除非系統必須復原系統記憶體，而服務會在 {@link android.app.Service#onStartCommand onStartCommand()} 回傳後繼續執行。
+
+所以，服務務必自我停止，可透過呼叫 {@link android.app.Service#stopSelf stopSelf()} 達成，或透過呼叫 {@link android.content.Context#stopService stopService()} 讓其他元件可以停止服務。
+
+</p>
+
+<p>一旦要求使用 {@link android.app.Service#stopSelf stopSelf()} 或 {@link
+android.content.Context#stopService stopService()} 停止，系統會盡快終結服務。
+</p>
+
+<p>然而，如果您的服務同時處理多個對 {@link
+android.app.Service#onStartCommand onStartCommand()} 的要求，則在您開始處理啟動要求時，您不應該停止服務，因為您仍可能會收到新的啟動要求 (在第一個要求結束時停止可能會終止第二個要求)。
+
+如要避免發生此問題，您可以使用 {@link android.app.Service#stopSelf(int)} 來確保您停止服務的要求會總是基於最新的啟動要求。
+
+也就是，當您呼叫 {@link
+android.app.Service#stopSelf(int)} 時，會傳送啟動要求的 ID (<code>startId</code> 已傳送至 {@link android.app.Service#onStartCommand onStartCommand()}) 至您相關的停止要求。
+
+然而，如果服務在您可以呼叫 {@link
+android.app.Service#stopSelf(int)} 之前，就收到新的啟動要求，則 ID 將不會相符，服務也不會停止。</p>
+
+<p class="caution"><strong>注意：</strong>在您的應用程式完成工作時，應用程式停止其服務是非常重要的，這可以避免浪費系統資源與消耗電池電力。
+如果必要，透過呼叫 {@link
+android.content.Context#stopService stopService()}，其他元件可以停止服務。
+就算您啟動服務的繫結，如果曾接收對 {@link
+android.app.Service#onStartCommand onStartCommand()} 的呼叫，您永遠仍必須自行停止服務。
+</p>
+
+<p>如需有關服務生命週期的詳細資訊，請參閱下節<a href="#Lifecycle">管理服務的生命週期</a>。</p>
+
+
+
+<h2 id="CreatingBoundService">建立已繫結的服務</h2>
+
+<p>已繫結的服務是允許應用程式元件透過呼叫 {@link
+android.content.Context#bindService bindService()} 來建立繫結的服務，這是為了建立長期的連線 (一般而言，並不允許元件透過呼叫 {@link
+android.content.Context#startService startService()} 來「啟動」<em></em> )。
+</p>
+
+<p>當您想要透過處理程序間通訊 (IPC)，與來自 Activity 的服務及您應用程式中的其他元件互動時，或是想要揭露您應用程式的特定功能給其他應用程式時，您應該建立已繫結的服務。
+
+</p>
+
+<p>如要建立已繫結的服務，您必須實作 {@link
+android.app.Service#onBind onBind()} 回呼方法並傳回
+{@link android.os.IBinder} (這用來定義與服務溝通的介面)。接著其他應用程式元件可以呼叫
+{@link android.content.Context#bindService bindService()} 來擷取介面並開始服務上的呼叫方法。
+服務只會為了服務所繫結應用程式元件才存在，
+所以當沒有繫結服務的元件時，系統會終結服務 (當服務透過
+{@link android.app.Service#onStartCommand onStartCommand()} 啟動時，您「不」<em></em>需要停止已繫結的服務)。
+</p>
+
+<p>如要建立已繫結的服務，您必須做的第一件事就是定義用來指定用戶端如何與服務通訊的介面。
+介於服務與用戶端間的介面必須是 {@link android.os.IBinder} 的實作，也是您服務必須從 {@link android.app.Service#onBind
+onBind()} 回呼方法傳回的。
+
+一旦用戶端收到 {@link android.os.IBinder}，可以透過介面開始與服務互動。
+</p>
+
+<p>服務一次可以繫結多個用戶端。當用戶端完成與服務互動時，會呼叫 {@link android.content.Context#unbindService unbindService()} 來取消繫結。
+一旦沒有用戶端與服務繫結，系統就會終結服務。
+</p>
+
+<p>有多個方法可以實作已繫結的服務，且實作比已啟動服務更加複雜，所以會在另一份有關<a href="{@docRoot}guide/components/bound-services.html">已繫結的服務</a>文件中討論已繫結的服務。
+
+</p>
+
+
+
+<h2 id="Notifications">傳送通知給使用者</h2>
+
+<p>一旦執行，服務可以使用<a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">快顯通知</a>或<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">狀態列通知</a>來通知事件的使用者。</p>
+
+<p>快顯通知是一個會出現在目前視窗表面上短暫時間然後消失的訊息，此時狀態列通知會在狀態列提供一個圖示與訊息，使用者可以選擇然後採取行動 (例如啟動 Activity)。
+
+</p>
+
+<p>通常，當已完成某些背景作業(如完成檔案下載) 且使用者現在可以採取行動時，狀態列通知是最佳的方法。
+
+當使用者從擴展的檢視選取通知時，通知可以啟動 Activity (如檢視已下載檔案)。
+</p>
+
+<p>如需更多資訊，請參閱<a href="{@docRoot}guide/topics/ui/notifiers/toasts.html">快顯通知</a>或<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">狀態列通知</a>開發人員指南。
+</p>
+
+
+
+<h2 id="Foreground">在前景中執行服務</h2>
+
+<p>前景服務是被認為使用者已主動意識到、就算在記憶體不足時系統也不會終結的服務。
+前景服務必須提供通知給狀態列，狀態列會放置在「進行中」標題之下，這表示除非服務已被停止或從前景移除，否則無法解除通知。
+
+
+</p>
+
+<p>例如，播放來自某服務音樂的音樂播放器應該被設為在前景中執行，因為使用者明確意識到這項操作。
+
+狀態列中的通知可能會指出目前播放的歌曲，並允許使用者啟動 Activity 來與音樂播放器互動。
+</p>
+
+<p>如要要求您的服務在前景中執行，可以呼叫 {@link
+android.app.Service#startForeground startForeground()}。此方法有兩個參數：一個整數用來唯一識別通知，以及 {@link
+android.app.Notification} 供狀態列使用。
+例如：</p>
+
+<pre>
+Notification notification = new Notification(R.drawable.icon, getText(R.string.ticker_text),
+        System.currentTimeMillis());
+Intent notificationIntent = new Intent(this, ExampleActivity.class);
+PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
+notification.setLatestEventInfo(this, getText(R.string.notification_title),
+        getText(R.string.notification_message), pendingIntent);
+startForeground(ONGOING_NOTIFICATION_ID, notification);
+</pre>
+
+<p class="caution"><strong>注意：</strong>您給 {@link
+android.app.Service#startForeground startForeground()} 的整數 ID 不能為 0。</p>
+
+
+<p>如要從前景移除服務，可以呼叫 {@link
+android.app.Service#stopForeground stopForeground()}。此方法有一個布林數，表示是否同時移除狀態列通知。
+此方法「不會」<em></em>停止服務。
+然而，如果您在服務仍於前景執行時停止服務，則也會移除通知。
+</p>
+
+<p>如需更多有關通知的資訊，請參閱<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">建立狀態列通知</a>。
+</p>
+
+
+
+<h2 id="Lifecycle">管理服務的生命週期</h2>
+
+<p>服務的生命週期比 Activity 的生命週期要簡單多了。然而，密切關注如何建立與終結服務就更重要了，因為在使用者沒有意識到的狀況下可在背景中執行服務。
+
+</p>
+
+<p>服務生命週期 &mdash; 從何時建立到何時終結 &mdash; 可以遵循兩種不同的路徑：
+</p>
+
+<ul>
+<li>已啟動的服務
+  <p>當其他元件呼叫 {@link
+android.content.Context#startService startService()} 時，會建立服務。然後服務可無限次數執行，且必須自行停止，方法是呼叫 {@link
+android.app.Service#stopSelf() stopSelf()}。
+透過呼叫 {@link android.content.Context#stopService
+stopService()}，其他元件可以停止服務。
+當服務停止時，系統會終結服務。</p></li>
+
+<li>已繫結的服務
+  <p>當其他元件 (一個用戶端) 呼叫 {@link
+android.content.Context#bindService bindService()} 時，會建立服務。然後用戶端會透過
+{@link android.os.IBinder} 介面與服務通訊。用戶端也可以呼叫
+{@link android.content.Context#unbindService unbindService()} 來切斷連線。多重用戶端可以繫結至相同的服務，但是當所有用戶端都取消繫結時，系統就會終結服務。
+(服務「不」<em></em>需要自行停止)。
+</p></li>
+</ul>
+
+<p>這兩種路徑不是完全獨立的。也就是，您可以繫結至已經使用
+{@link android.content.Context#startService startService()} 啟動的服務。例如，可以啟動背景音樂服務，方法是呼叫 {@link android.content.Context#startService
+startService()} 並搭配可識別要播放音樂的 {@link android.content.Intent}。
+之後，使用者可能會想要透過播放器試試某些控制或取得關於目前歌曲的資訊，可以將 Activity 繫結至服務，方法為呼叫 {@link
+android.content.Context#bindService bindService()}。
+
+就這個的案子而言，除非所有的用戶端都取消繫結，否則 {@link
+android.content.Context#stopService stopService()} 或 {@link android.app.Service#stopSelf
+stopSelf()} 不會實際上停止服務。 </p>
+
+
+<h3 id="LifecycleCallbacks">實作生命週期回呼</h3>
+
+<p>就如同 Activity，服務有您可以實作來監控服務狀態變更與在適合時段執行作業的生命週期回呼方法。
+下列服務會示範每個生命週期方法：
+</p>
+
+<pre>
+public class ExampleService extends Service {
+    int mStartMode;       // indicates how to behave if the service is killed
+    IBinder mBinder;      // interface for clients that bind
+    boolean mAllowRebind; // indicates whether onRebind should be used
+
+    &#64;Override
+    public void {@link android.app.Service#onCreate onCreate}() {
+        // The service is being created
+    }
+    &#64;Override
+    public int {@link android.app.Service#onStartCommand onStartCommand}(Intent intent, int flags, int startId) {
+        // The service is starting, due to a call to {@link android.content.Context#startService startService()}
+        return <em>mStartMode</em>;
+    }
+    &#64;Override
+    public IBinder {@link android.app.Service#onBind onBind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()}
+        return <em>mBinder</em>;
+    }
+    &#64;Override
+    public boolean {@link android.app.Service#onUnbind onUnbind}(Intent intent) {
+        // All clients have unbound with {@link android.content.Context#unbindService unbindService()}
+        return <em>mAllowRebind</em>;
+    }
+    &#64;Override
+    public void {@link android.app.Service#onRebind onRebind}(Intent intent) {
+        // A client is binding to the service with {@link android.content.Context#bindService bindService()},
+        // after onUnbind() has already been called
+    }
+    &#64;Override
+    public void {@link android.app.Service#onDestroy onDestroy}() {
+        // The service is no longer used and is being destroyed
+    }
+}
+</pre>
+
+<p class="note"><strong>注意：</strong>不像 Activity 生命週期回呼方法，您「不」<em></em>需要呼叫這些回呼方法的超級類別實作。
+</p>
+
+<img src="{@docRoot}images/service_lifecycle.png" alt="" />
+<p class="img-caption"><strong>圖 2.</strong>服務生命週期。左圖顯示使用 {@link android.content.Context#startService
+startService()} 建立服務的生命週期，右圖顯示使用
+{@link android.content.Context#bindService bindService()} 建立服務的生命週期。
+</p>
+
+<p>透過實作這些方法，您可以監控服務生命週期中的兩個巢狀迴圈： </p>
+
+<ul>
+<li>服務的<strong>整個生命</strong>發生在 {@link
+android.app.Service#onCreate onCreate()} 被呼叫的時間與 {@link
+android.app.Service#onDestroy} 回傳的時間之間。就像 Activity，服務於
+{@link android.app.Service#onCreate onCreate()} 中開始其初始設定，並於 {@link
+android.app.Service#onDestroy onDestroy()} 中釋出所有剩餘的資訊。例如，音樂播放服務可以建立執行緒，且音樂會於 {@link
+android.app.Service#onCreate onCreate()} 中播放，然後在 {@link
+android.app.Service#onDestroy onDestroy()} 中停止執行緒。
+
+
+<p>{@link android.app.Service#onCreate onCreate()} 與 {@link android.app.Service#onDestroy
+onDestroy()} 方法可供所有服務呼叫，不論服務是否由 {@link android.content.Context#startService startService()} 或 {@link
+android.content.Context#bindService bindService()} 所建立。
+</p></li>
+
+<li>服務的<strong>使用生命</strong>從對 {@link
+android.app.Service#onStartCommand onStartCommand()} 或 {@link android.app.Service#onBind onBind()} 的呼叫開始。
+每個方法都被遞交 {@link
+android.content.Intent}，也會被分別傳送至 {@link android.content.Context#startService
+startService()} 或 {@link android.content.Context#bindService bindService()}。
+<p>如果服務已啟動，使用生命的結束時間與整個生命結束的時間相同 (就算在 {@link android.app.Service#onStartCommand
+onStartCommand()} 回傳後，服務仍在作用中)。
+如果服務已繫結，使用生命的會於 {@link
+android.app.Service#onUnbind onUnbind()} 回傳時結束。</p>
+</li>
+</ul>
+
+<p class="note"><strong>注意：</strong>雖然已啟動的服務可藉由對
+ {@link android.app.Service#stopSelf stopSelf()} 或 {@link
+android.content.Context#stopService stopService()} 的呼叫來停止，但沒有服務的相對應回呼 (沒有 {@code onStop()} 回呼)。
+所有，除非服務已繫結至用戶端，系統會在服務停止時終結服務 &mdash; {@link
+android.app.Service#onDestroy onDestroy()} 是唯一收到的回呼。
+</p>
+
+<p>圖 2 說明服務的回呼方法。雖然圖示區隔由
+{@link android.content.Context#startService startService()} 所建立的服務與由
+{@link android.content.Context#bindService bindService()} 所建立的服務，但請記住，任何服務不論是如何建立的，都可能可以允許使用者繫結。
+
+所以，一開始使用 {@link android.app.Service#onStartCommand
+onStartCommand()} 啟動的服務 (由用戶端呼叫 {@link android.content.Context#startService startService()})仍可以接收對 {@link android.app.Service#onBind onBind()} 的呼叫 (當用戶端呼叫
+{@link android.content.Context#bindService bindService()} 時)。
+</p>
+
+<p>針對建立提供已繫結的服務，如需更多詳細資訊，請參閱<a href="{@docRoot}guide/components/bound-services.html">已繫結的服務</a>文件，其中在<a href="{@docRoot}guide/components/bound-services.html#Lifecycle">管理已繫結服務的生命週期</a>包含更多有關 {@link android.app.Service#onRebind onRebind()}回呼方法的詳細資訊。
+
+
+</p>
+
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>To learn how to query data from the system or other applications (such as contacts or media
+stored on the device), continue with the <b><a
+href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a></b>
+document.</p>
+-->
diff --git a/docs/html-intl/intl/zh-tw/guide/components/tasks-and-back-stack.jd b/docs/html-intl/intl/zh-tw/guide/components/tasks-and-back-stack.jd
new file mode 100644
index 0000000..e23301d
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/components/tasks-and-back-stack.jd
@@ -0,0 +1,578 @@
+page.title=工作和返回堆疊
+parent.title=Activity
+parent.link=activities.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文件內容</h2>
+<ol>
+<li><a href="#ActivityState">儲存 Activity 狀態</a></li></li>
+<li><a href="#ManagingTasks">管理工作</a>
+  <ol>
+    <li><a href="#TaskLaunchModes">定義啟動模式</a></li>
+    <li><a href="#Affinities">處理親和性</a></li>
+    <li><a href="#Clearing">清除返回堆疊</a></li>
+    <li><a href="#Starting">開始工作</a></li>
+  </ol>
+</li>
+</ol>
+
+<h2>文章</h2>
+<ol>
+  <li><a href="http://android-developers.blogspot.com/2010/04/multitasking-android-way.html">  Android 的多工作業方式
+</a></li>
+</ol>
+
+<h2>另請參閱</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/navigation.html">Android 設計：導覽
+</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;} 宣示說明元素
+</a></li>
+  <li><a href="{@docRoot}guide/components/recents.html">總覽畫面</a></li>
+</ol>
+</div>
+</div>
+
+
+<p>一個應用程式通常包含多個 <a href="{@docRoot}guide/components/activities.html">Activity</a>。每個 Activity 應根據使用者可執行的特定動作類型加以設計，且要能啟動其他 Activity。
+
+例如，電子郵件應用程式可能會有一個可顯示新訊息清單的 Activity。
+當使用者選擇一則訊息，會開啟新的 Activity 以檢視該訊息。</p>
+
+<p>Activity 甚至可啟動裝置上其他應用程式的 Activity。例如，如果您的應用程式想要傳送一封電子郵件訊息，您可以定義一個意圖以執行「傳送」動作並包含一些資料，像是電子郵件地址和訊息。
+
+其他應用程式中宣告處理此意圖類型的 Activity 就會開啟。
+在這種情況下，意圖就是要傳送電子郵件，因此電子郵件應用程式會啟動「撰寫」Activity (如果有多個 Activity 支援相同的意圖，則系統會讓使用者選擇要使用的 Activity)。
+
+電子郵件傳送後，您的 Activity 就會繼續，並將電子郵件 Activity 視為您應用程式的一部分。
+雖然 Activity 可能來自不同的應用程式，但 Android 會將兩個 Activity 放在相同的工作中，以維護使用者體驗的流暢性。
+
+<em></em></p>
+
+<p>工作是執行特定工作時，與使用者互動的 Activity 集合。
+Activity 會在堆疊 (返回堆疊<em></em>) 中依照每個 Activity 開啟的順序加以排列。
+</p>
+
+<!-- SAVE FOR WHEN THE FRAGMENT DOC IS ADDED
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h3>Adding fragments to a task's back stack</h3>
+
+<p>Your activity can also include {@link android.app.Fragment}s to the back stack. For example,
+suppose you have a two-pane layout using fragments, one of which is a list view (fragment A) and the
+other being a layout to display an item from the list (fragment B). When the user selects an item
+from the list, fragment B is replaced by a new fragment (fragment C). In this case, it might be
+desireable for the user to navigate back to reveal fragment B, using the <em>Back</em> button.</p>
+<p>In order to add fragment B to the back stack so that this is possible, you must call {@link
+android.app.FragmentTransaction#addToBackStack addToBackStack()} before you {@link
+android.app.FragmentTransaction#commit()} the transaction that replaces fragment B with fragment
+C.</p>
+<p>For more information about using fragments and adding them to the back stack, see the {@link
+android.app.Fragment} class documentation.</p>
+
+</div>
+</div>
+-->
+
+<p>裝置主螢幕是大多數工作開始的地方。當使用者輕觸應用程式啟動組件上的某個圖示 (或主螢幕上的捷徑 ) 時，應用程式工作會移到前景。
+
+如果應用程式沒有工作 (最近未使用應用程式)，則會建立新的工作，且該應用程式的「主要」Activity 會以堆疊中的根 Activity 形式開啟。
+
+</p>
+
+<p>當目前的 Activity 啟動另一個 Activity 時，會將新的 Activity 推到堆疊的頂端並取得焦點。
+之前的 Activity 會留在堆疊中，但已停止。Activity 停止後，系統會保留其使用者介面的目前狀態。
+當使用者按下 [返回] 按鈕<em></em>，會將目前的 Activity 從堆疊頂端推出 (Activity 已終結)，並繼續進行之前的 Activity (還原其 UI 之前的狀態)。
+
+
+堆疊中的 Activity 不會重新整理，只會從堆疊推入和推出 &mdash; 由目前 Activity 啟動時推入堆疊，而當使用者使用 [返回] 按鈕離開時推出堆疊。<em></em>
+
+因此，返回堆疊會以「後進先出」的物件結構進行運作。
+
+圖 1 透過時間軸將此行為視覺化，以時間軸顯示 Activity 間的進度以及每個時間點的目前返回堆疊。
+
+</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack.png" alt="" />
+<p class="img-caption"><strong>圖 1.</strong>顯示工作中每個新 Activity 如何將項目新增到返回堆疊。
+當使用者按下 [返回] 按鈕，目前的 Activity 將會終結，而之前的 Activity 則會繼續進行。<em></em>
+
+</p>
+
+
+<p>如果使用者持續按下 [返回]<em></em>，則會持續推出堆疊中的每個 Activity 以顯示之前的 Activity，直到使用者返回主螢幕 (或到工作開始時執行的 Activity)。
+
+
+當堆疊中的 Activity 全部移除後，工作將不再存在。</p>
+
+<div class="figure" style="width:287px">
+<img src="{@docRoot}images/fundamentals/diagram_multitasking.png" alt="" /> <p
+class="img-caption"><strong>圖 2.</strong>兩個工作：工作 B 在前景收到使用者互動，而工作 A 在背景等待繼續。
+</p>
+</div>
+<div class="figure" style="width:215px">
+  <img src="{@docRoot}images/fundamentals/diagram_multiple_instances.png" alt="" /> <p
+class="img-caption"><strong>圖 3.</strong>單一 Activity 會具現化很多次。</p>
+</div>
+
+<p>工作是一個緊密結合的單位，當使用者開始新的工作時可以移到「背景」，或透過 [首頁] 按鈕前往主螢幕。<em></em>
+在背景時，工作中的所有 Activity 都會停止，但該工作的返回堆疊會保留下來 &mdash; 該工作純粹失去焦點，由另一個工作取而代之，如圖 2 所示。
+
+
+之後，工作可以返回「前景」，讓使用者繼續未完成的工作。
+例如，假設目前的工作 (工作 A) 的堆疊中有三個 Activity &mdash; 兩個位於目前的 Activity 下。
+使用者按下 [首頁] 按鈕，<em></em>然後從應用程式啟動新的應用程式。
+
+當主螢幕出現時，工作 A 會移到背景。
+新的應用程式啟動時，系統會啟動該應用程式的工作 (工作 B)，該應用程式會有自己的 Activity 堆疊。
+與該應用程式互動之後，使用者會再次回到首頁，並選取原來啟動工作 A 的應用程式。現在，工作 A 移到了前景 &mdash; 堆疊中的三個 Activity 全部保持不變，而堆疊中最頂端的 Activity 則會繼續進行。
+
+
+
+此時，使用者也能切換回工作 B，前往首頁並選取啟動該工作的應用程式圖示 (或從<a href="{@docRoot}guide/components/recents.html">總覽畫面</a>選取應用程式工作)。這是在 Android 執行多工作業的範例。
+
+
+
+</p>
+
+<p class="note"><strong>注意：</strong>背景可以一次執行多個工作。
+不過，如果使用者同時執行多個背景工作，系統可能會開始終結背景 Activity 以復原記憶體，導致 Activity 狀態遺失。
+請參閱下列有關 <a href="#ActivityState">Activity 狀態</a>的章節。
+</p>
+
+<p>由於返回堆疊中的 Activity 不會重新整理，如果您的應用程式允許使用者從一個以上的 Activity 中啟動特定 Activity，則會建立該 Activity 的新執行個體並推入堆疊 (而不會將 Activity 任何之前的執行個體移到最頂端)。
+
+
+因此，您應用程式中的一個 Activity 可能會具現化很多次 (甚至來自不同的工作)，如圖 3 所示。
+也因為這樣，如果使用者使用 [返回] 按鈕瀏覽之前的資訊，Activity 的每個執行個體會依開啟的順序顯示<em></em> (每個會有自己的 UI 狀態)。
+
+
+不過，如果您不希望 Activity 具現化一次以上，則可以修改這個行為。
+如需詳細步驟，請參閱下文的<a href="#ManagingTasks">管理工作</a>。</p>
+
+
+<p>摘要說明 Activity 和工作的預設行為：</p>
+
+<ul>
+  <li>當 Activity A 啟動 Activity B，Activity A 會停止，但系統會保留其狀態(例如捲軸位置和輸入表單的文字)。
+
+如果使用者在 Activity B 按下 [返回] 按鈕，<em></em>Activity A 的狀態會復原並繼續執行。
+</li>
+  <li>當使用者按下 [首頁] 按鈕離開工作，<em></em>目前的 Activity 會停止且其工作會移到背景。
+
+系統會保留工作中所有 Activity 的狀態。如果使用者稍後選取啟動工作的啟動組件圖示繼續執行工作，工作會移到前景並在堆疊頂端繼續執行 Activity。
+
+</li>
+  <li>如果使用者按下 [返回] 按鈕<em></em>，會將目前的 Activity 從堆疊推出並終結。
+
+堆疊中之前的 Activity 會繼續進行。Activity 終結後，系統將不會保留 Activity 的狀態。
+<em></em></li>
+  <li>Activity 可以具現化很多次，即使來自其他工作也一樣。</li>
+</ul>
+
+
+<div class="note design">
+<p><strong>導覽設計</strong></p>
+  <p>如需應用程式導覽如何在 Android 運作的詳細資訊，請參閱 Android 設計的<a href="{@docRoot}design/patterns/navigation.html">導覽</a>指南。</p>
+</div>
+
+
+<h2 id="ActivityState">儲存 Activity 狀態</h2>
+
+<p>如上所述，系統的預設行為會在 Activity 停止時保留 Activity 的狀態。
+如此一來，當使用者瀏覽之前的 Activity 時，其使用者介面的顯示方式將與離開時一樣。
+不過，您可以 &mdash; 也<strong>應該</strong> &mdash; 使用回呼方法主動保留 Activity 的狀態，以防止 Activity 遭到終結且必須重新建立的情況。
+
+</p>
+
+<p>如果系統停止您其中一個 Activity (例如，當新的 Activity 開始或工作移到背景)，當系統需要復原系統記憶體時，可能會完全終結該 Activity。
+
+發生這種情況時，與 Activity 狀態相關的資訊都將遺失。如果發生這種情況，系統仍然知道該 Activity 位於返回堆疊中，但是當 Activity 移到堆疊頂端時，系統必須重新建立該 Activity (而不是繼續執行)。
+
+
+如果不想讓使用者的工作遺失，您應該在 Activity 中實作 {@link android.app.Activity#onSaveInstanceState onSaveInstanceState()} 回呼方法，主動保留該工作。
+
+
+</p>
+
+<p>如需儲存 Activity 狀態的詳細資訊，請參閱 <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Activity</a> 文件。
+</p>
+
+
+
+<h2 id="ManagingTasks">管理工作</h2>
+
+<p>如上所述，Android 管理工作和返回堆疊的方式 &mdash; 將連續啟動的所有 Activity 放在相同的工作及「後進先出」堆疊中 &mdash; 對大多數應用程式而言非常好用，而且您不需擔心 Activity 與工作關聯的方式或它們如何存在於返回堆疊中。
+
+
+不過，您也許會想中斷一般的行為。
+您或許會希望應用程式的 Activity 可以在啟動時開始一個新的工作 (而不是放入目前的工作中)；或者當您啟動一個 Activity 時，您可能會想使用其現有的執行個體 (而不是在返回堆疊頂端建立新的執行個體)；又或者當使用者離開工作時，您想要清除返回堆疊中的所有 Activity，只留下根 Activity。
+
+
+
+</p>
+
+<p>如要執行這些工作及更多工作，您可以使用 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 宣示說明元素中的屬性，以及您傳送到 {@link android.app.Activity#startActivity startActivity()} 之意圖中的旗標。
+
+
+</p>
+
+<p>就這個情況而言，您可以使用的主要 <a href="{@docRoot}guide/topics/manifest/activity-element.html">
+{@code &lt;activity&gt;}</a> 屬性包括：</p>
+
+<ul class="nolist">
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">
+  {@code taskAffinity}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">
+  {@code launchMode}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+  {@code allowTaskReparenting}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">
+  {@code clearTaskOnLaunch}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+  {@code alwaysRetainTaskState}</a></li>
+  <li><a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">
+  {@code finishOnTaskLaunch}</a></li>
+</ul>
+
+<p>而您可以使用的主要意圖旗標包括：</p>
+
+<ul class="nolist">
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</li>
+  <li>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</li>
+</ul>
+
+<p>在以下各節中，您將瞭解如何使用這些宣示說明屬性和意圖旗標，定義 Activity 與工作關聯的方式以及它們在返回堆疊中的行為。
+</p>
+
+<p>同時，還會分開討論工作與 Activity 如何在總覽畫面表示和進行管理。
+請參閱<a href="{@docRoot}guide/components/recents.html">總覽畫面</a>以取得詳細資訊。
+一般而言，您應該允許系統定義如何在總覽畫面中呈現工作與 Activity，而且不需要修改此行為。
+</p>
+
+<p class="caution"><strong>注意：</strong>大多數應用程式不應中斷 Activity 和工作的預設行為：
+如果您判斷修改 Activity 的預設行為是必要的，請謹慎小心並記得測試啟動期間 Activity 的可用性，以及使用 [返回] 按鈕從其他 Activity 和工作瀏覽到此 Activity 的情況。請記得測試可能會與使用者預期的行為衝突的瀏覽行為。<em></em>
+
+
+</p>
+
+
+<h3 id="TaskLaunchModes">定義啟動模式</h3>
+
+<p>啟動模式可讓您定義 Activity 的新執行個體與目前工作關聯的方式。
+您可用兩種方法定義不同的啟動模式：</p>
+<ul class="nolist">
+  <li><a href="#ManifestForTasks">使用宣示說明檔案</a>
+    <p>當您在宣示說明檔案中宣告 Activity 時，您可以指定 Activity 啟動時該如何與工作關聯。
+</li>
+  <li><a href="#IntentFlagsForTasks">使用意圖旗標</a>
+    <p>當您呼叫 {@link android.app.Activity#startActivity startActivity()} 時，您可以在 {@link android.content.Intent} 包含一個旗標，宣告新 Activity 應如何 (或是否) 與目前的工作關聯。
+
+</p></li>
+</ul>
+
+<p>因此，如果 Activity A 啟動 Activity B，Activity B 可以在其宣示說明中定義它應如何與目前的工作 (如果有) 關聯，而且 Activity A 也能要求 Activity B 應如何與目前的工作關聯。
+
+如果這兩個 Activity 皆定義 Activity B 應如何與工作關聯，相較於 Activity B 的要求 (如宣示說明中所定義)，會優先採用 Activity A 的要求 (如意圖中所定義)。
+
+</p>
+
+<p class="note"><strong>注意：</strong>某些宣示說明檔案中提供的啟動模式可能沒有對應的意圖旗標，同樣地，某些意圖旗標提供的啟動模式無法在宣示說明中定義。
+
+</p>
+
+
+<h4 id="ManifestForTasks">使用宣示說明檔案</h4>
+
+<p>當您在宣示說明檔案中宣告 Activity 時，您可以使用 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 元素的 <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> 屬性，指定 Activity 應如何與工作關聯。
+
+</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code
+launchMode}</a> 屬性可指定應如何將 Activity 啟動至工作內的指示。
+您可以為
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">launchMode</a></code> 屬性指定四種不同的啟動模式：
+</p>
+
+<dl>
+<dt>{@code "standard"} (預設模式)</dt>
+  <dd>預設。系統在啟動 Activity 的工作中建立新的執行個體，並將意圖路由至該處。
+Activity 可以具現化很多次，每個執行個體可屬於不同的工作，而且一個工作可以有多個執行個體。
+</dd>
+<dt>{@code "singleTop"}</dt>
+  <dd>如果 Activity 的執行個體已經出現在目前工作的頂端，系統會透過呼叫其 {@link
+android.app.Activity#onNewIntent onNewIntent()} 方法，將意圖路由至該執行個體，而不是建立新的 Activity 執行個體。
+
+Activity 可以具現化很多次，每個執行個體可屬於不同的工作，而且一個工作可以有多個執行個體 (但僅限於返回堆疊頂端的 Activity 不是現有的 Activity 執行個體時<em></em>)。
+
+
+  <p>例如，假設工作的返回堆疊包含根 Activity A 及 Activity B、C 及在最頂端的 D (堆疊為 A-B-C-D；D 在最頂端)。
+類型 D Activity 的意圖抵達。
+如果 D 有預設的 {@code "standard"} 啟動模式，則會啟動新的類別執行個體，且堆疊會變成 A-B-C-D-D。不過，如果 D 啟動模式為 {@code "singleTop"}，D 的現有執行個體會透過 {@link
+android.app.Activity#onNewIntent onNewIntent()} 接收意圖，這是因為它位於堆疊的最頂端 &mdash; 堆疊會維持 A-B-C-D。不過，如果類型 B Activity 的意圖抵達，則 B 的新執行個體會新增到堆疊中，即使其啟動模式為 {@code "singleTop"} 也是如此。
+
+
+
+</p>
+  <p class="note"><strong>注意：</strong>建立新的 Activity 執行個體之後，使用者可按下 [返回]<em></em> 按鈕，返回之前的 Activity。
+但是，如果處理新意圖的是現有的 Activity 執行個體，則使用者無法按下 [返回]<em></em> 按鈕回到新意圖抵達 {@link android.app.Activity#onNewIntent
+onNewIntent()} 之前的 Activity 狀態。
+
+
+
+</p>
+</dd>
+
+<dt>{@code "singleTask"}</dt>
+  <dd>系統會建立新的工作並在新工作的根目錄將 Activity 具現化。不過，如果 Activity 的執行個體已經出現在其他工作中，系統會透過呼叫其 {@link
+android.app.Activity#onNewIntent onNewIntent()} 方法，將意圖路由至現有的執行個體，而不是建立新的執行個體。
+
+一次只能有一個 Activity 執行個體。
+
+  <p class="note"><strong>注意：</strong>雖然 Activity 是在新工作中啟動，使用者仍可使用 [返回] 按鈕返回之前的 Activity。
+<em></em></p></dd>
+<dt>{@code "singleInstance"}。</dt>
+  <dd>與 {@code "singleTask"} 一樣，差別在於系統不會將任何其他 Activity 啟動至保留執行個體的工作中。
+Activity 一律是其工作的唯一成員；使用此項目啟動的任何 Activity 會在個別的工作中開啟。
+</dd>
+</dl>
+
+
+<p>另外一個例子，Android 瀏覽器應用程式宣告網頁瀏覽器 Activity 應永遠在自己的工作中開啟 &mdash; 透過在 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 元素指定 {@code singleTask} 啟動模式。
+這表示如果您的應用程式發出開啟 Android 瀏覽器的意圖，其 Activity 不會與您的應用程式放在同一個工作中。<em></em>
+
+
+而是會為瀏覽器啟動新的工作，或者如果瀏覽器已經有工作在背景執行，會將該工作帶出來處理新的意圖。
+
+</p>
+
+<p>無論 Activity 在新工作啟動或與啟動該 Activity 之 Activity 的相同工作中啟動，使用者都能使用 [返回] 按鈕返回之前的 Activity。<em></em>
+不過，如果您啟動指定 {@code singleTask} 啟動模式的 Activity，如果該 Activity 的執行個體存在於背景工作中，則該工作會整個移到前景。
+
+此時，返回堆疊現在包含已帶出且位於堆疊頂端之工作的所有 Activity。
+
+圖 4 說明這種類型的情況。</p>
+
+<img src="{@docRoot}images/fundamentals/diagram_backstack_singletask_multiactivity.png" alt="" />
+<p class="img-caption"><strong>圖 4.</strong>顯示含有啟動模式 "singleTask" 的 Activity 如何新增到返回堆疊。
+如果 Activity 已經是背景工作的一部份且有自己的返回堆疊，則整個返回堆疊都會帶出來，位於目前工作的最頂端。
+
+</p>
+
+<p>如要進一步瞭解如何使用宣示說明檔案中的啟動模式，請參閱 <code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 元素，其中會有 {@code launchMode} 屬性和可接受值的詳細說明。
+
+
+</p>
+
+<p class="note"><strong>注意：</strong>您使用 <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 屬性指定的 Activity 行為可被啟動 Activity 之意圖所含的旗標所覆寫，如下一節所述。
+
+</p>
+
+
+
+<h4 id="#IntentFlagsForTasks">使用意圖旗標</h4>
+
+<p>啟動 Activity 時，您可以在傳送到 {@link
+android.app.Activity#startActivity startActivity()} 的意圖中包含旗標，以修改 Activity 及其工作的預設關聯。
+您可以用來修改預設行為的旗標包括：
+</p>
+
+<p>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}</dt>
+    <dd>在新工作中啟動 Activity。如果工作已為您目前啟動的 Activity 執行，該工作會移到前景並復原至上個狀態，而且 Activity 會在 {@link android.app.Activity#onNewIntent onNewIntent()} 收到新的意圖。
+
+
+    <p>這會產生與 {@code "singleTask"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 值相同的行為，如上節所述。
+</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP}</dt>
+    <dd>如果現在正在啟動的 Activity 是目前的 Activity (位於返回堆疊的頂端)，則現有執行個體會收到 {@link android.app.Activity#onNewIntent onNewIntent()} 呼叫，而不會建立新的 Activity 執行個體。
+
+
+    <p>這會產生與 {@code "singleTop"} <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 值相同的行為，如上節所述。
+</p></dd>
+  <dt>{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TOP}</dt>
+    <dd>如果正在啟動的 Activity 已在目前的工作中執行，則不會啟動新的 Activity 執行個體，而是會終結位於其上方的所有其他 Activity，且此意圖會透過 {@link android.app.Activity#onNewIntent onNewIntent()} 傳送到繼續執行的 Activity 執行個體 (現在位於頂端)。
+
+
+
+    <p>沒有任何 <a href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">{@code launchMode}</a> 屬性值可以產生此行為。
+</p>
+    <p>{@code FLAG_ACTIVITY_CLEAR_TOP} 最常與 {@code FLAG_ACTIVITY_NEW_TASK} 搭配使用。
+一起使用時，這些旗標可以找出位於其他工作中的現有 Activity，然後將它放置於可以回應意圖的地方。
+
+ </p>
+    <p class="note"><strong>注意：</strong>如果指定 Activity 的啟動模式為 {@code "standard"}，它也會從堆疊中移除，改為啟動新的執行個體處理傳入的意圖。
+
+
+這是因為當啟動模式為 {@code "standard"} 時，一律會為新的意圖建立新的執行個體。
+ </p>
+</dd>
+</dl>
+
+
+
+
+
+<h3 id="Affinities">處理親和性</h3>
+
+<p>親和性<em></em>可指出 Activity 偏好屬於哪個工作。根據預設，相同應用程式的所有 Activity 間互相都有親和性。
+因此，根據預設，相同應用程式的所有 Activity 都偏好位於相同的工作。
+不過，您可以修改 Activity 的預設親和性。
+不同應用程式中定義的 Activity 可以共用親和性，或者相同應用程式中定義的 Activity 可以指派不同的工作親和性。
+
+</p>
+
+<p>您可以使用 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 元素的 <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a> 屬性修改任何指定 Activity 的親和性。
+
+</p>
+
+<p><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a> 屬性使用字串值，但必須與 <a href="{@docRoot}guide/topics/manifest/manifest-element.html">
+{@code &lt;manifest&gt;}</a> 元素中宣告的預設封裝名稱不同，因為系統使用該名稱來識別應用程式的預設工作親和性。
+
+
+
+</p>
+
+<p>在兩種情況下會用到親和性：</p>
+<ul>
+  <li>當啟動 Activity 的意圖包含 
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK} 旗標。
+
+
+<p>根據預設，新的 Activity 會啟動至 Activity (名為 {@link android.app.Activity#startActivity startActivity()}) 的工作中。
+系統會將它推入至與呼叫端相同的返回堆疊。
+不過，如果傳送至 
+{@link android.app.Activity#startActivity startActivity()} 的意圖包含 {@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK} 旗標，則系統會找尋不同的工作來放置新的 Activity。
+
+這通常是新工作。
+不過，它不一定要是新工作。如果現有工作中有與新 Activity 相同的親和性，Activity 會啟動至該工作中。
+如果沒有，會開始新的工作。</p>
+
+<p>如果此旗標導致 Activity 開始新的工作，而使用者按 [首頁] 按鈕離開它，必須要有方法可以讓使用者回來瀏覽這個工作。<em></em>
+
+有些實體 (例如，通知管理員) 總是從外部工作開始 Activity，從來不使用自己的工作，因此他們都會將 {@code FLAG_ACTIVITY_NEW_TASK} 放入傳送到 
+{@link android.app.Activity#startActivity startActivity()} 的意圖。
+
+如果您的 Activity 可以由外部實體呼叫且可能使用此旗標，記得要提供使用者獨立的方法回到啟動的工作，例如，透過啟動組件圖示 (工作的根 Activity 有一個 {@link android.content.Intent#CATEGORY_LAUNCHER} 意圖篩選器；請參閱下方的<a href="#Starting">開始工作</a>)。
+
+
+
+</p>
+</li>
+
+  <li>當 Activity 的<a href="{@docRoot}guide/topics/manifest/activity-element.html#reparent">
+{@code allowTaskReparenting}</a> 屬性設為 {@code "true"}。
+  <p>在這種情況下，當工作移到前景時，Activity 可以從其啟動的工作移到與其有親和性的工作。
+</p>
+  <p>例如，假設將報告所選城市天氣狀況的 Activity 定義為旅遊應用程式的一部份。
+它與相同應用程式中的其他 Activity 有相同的親和性 (預設的應用程式親和性)，而且它允許與此屬性重設父代。
+當您的其中一個 Activity 開始氣象報告程式 Activity，它一開始屬於與您 Activity 相同的工作。
+
+不過，當旅遊應用程式工作移到前景，氣象報告程式 Activity 就會重新指派給該工作，並在其中顯示。
+</p>
+</li>
+</ul>
+
+<p class="note"><strong>提示：</strong>如果從使用者的角度來看 {@code .apk} 檔案包含一個以上的「應用程式」，您可能會想要使用 <a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">{@code taskAffinity}</a> 屬性對與每個「應用程式」關聯的 Activity 指派不同的親和性。
+
+</p>
+
+
+
+<h3 id="Clearing">清除返回堆疊</h3>
+
+<p>如果使用者離開工作一段很長的時間，系統會清除根 Activity 以外所有 Activity 的工作
+。當使用者再次回到工作，只會復原根 Activity。
+系統會有這樣的行為是因為在一段很長的時間後，使用者很可能會放棄他們之前在做的工作，並回到工作開始其他新的工作。
+ </p>
+
+<p>您可以使用下列一些 Activity 屬性來修改這個行為： </p>
+
+<dl>
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#always">alwaysRetainTaskState</a></code>
+</dt>
+<dd>如果這項屬性在工作的根 Activity 中設為 {@code "true"}，則剛描述的預設行為不會發生。
+即使過了很長的一段時間，工作仍然會在堆疊保留所有的 Activity。
+</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#clear">clearTaskOnLaunch</a></code></dt>
+<dd>如果這項屬性在工作的根 Activity 中設為 {@code "true"}，則剛描述的預設行為不會發生。
+即使過了很長的一段時間，工作仍然會在堆疊保留所有的 Activity。
+換句話說，它與 
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#always">
+{@code alwaysRetainTaskState}</a> 相反。即便使用者只離開工作一小段時間，使用者還是會回到工作的起始狀態。
+</dd>
+
+<dt><code><a
+href="{@docRoot}guide/topics/manifest/activity-element.html#finish">finishOnTaskLaunch</a></code>
+</dt>
+<dd>這項屬性與 <a href="{@docRoot}guide/topics/manifest/activity-element.html#clear">{@code clearTaskOnLaunch}</a> 相似，但它在單一 Activity 上作業，而不是在整個工作。
+
+它也會導致任何 Activity 離開，包含根 Activity。
+如果設成 {@code "true"}，Activity 只會在目前的工作階段留在此工作中。
+如果使用者離開後再回到工作，該工作將不再存在。
+</dd>
+</dl>
+
+
+
+
+<h3 id="Starting">開始工作</h3>
+
+<p>您可以給予 Activity 一個意圖篩選器，將 
+{@code "android.intent.action.MAIN"} 設定為指定的動作， 
+{@code "android.intent.category.LAUNCHER"} 設定為指定的類別，以便將該 Activity 設定為工作的進入點。
+例如：</p>
+
+<pre>
+&lt;activity ... &gt;
+    &lt;intent-filter ... &gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+    ...
+&lt;/activity&gt;
+</pre>
+
+<p>這類意圖篩選器可在應用程式啟動組件顯示 Activity 的圖示和標籤，讓使用者啟動 Activity 並回到 Activity 啟動後任何時間建立的工作。
+
+
+</p>
+
+<p>第二項功能很重要：使用者必須能夠在離開工作後，使用此 Activity 啟動組件回到此工作。
+由於這個原因，兩個將 Activity 標示為一律啟動工作的<a href="#LaunchModes">啟動模式</a> {@code "singleTask"} 和 
+{@code "singleInstance"}，應只能在 Activity 有 {@link android.content.Intent#ACTION_MAIN} 和 {@link android.content.Intent#CATEGORY_LAUNCHER} 篩選器時才能使用。
+
+
+例如，試想如果缺少篩選器會發生什麼情況：
+意圖會啟動 {@code "singleTask"} Activity、起始新工作，然後使用者會花一些時間在該工作進行作業。
+之後，使用者按下 [首頁]<em></em> 按鈕。
+此工作現在會傳送到背景而且不會顯示。現在，使用者沒有辦法回到工作，這是因為應用程式啟動組件沒有代表此工作的項目。
+</p>
+
+<p>在您不希望使用者返回 Activity 的情況下，將
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 元素的
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#finish">{@code finishOnTaskLaunch}</a> 設定為 {@code "true"} (請參閱<a href="#Clearing">清除堆疊</a>)。
+
+</p>
+
+<p>如要進一步瞭解工作和 Activity 在總覽畫面中的顯示及管理方式，請參閱<a href="{@docRoot}guide/components/recents.html">總覽畫面</a>。
+
+</p>
+
+<!--
+<h2>Beginner's Path</h2>
+
+<p>For more information about how to use intents to
+activate other application components and publish the intents to which your components
+respond, continue with the <b><a
+href="{@docRoot}guide/components/intents-filters.html">Intents and Intent
+Filters</a></b> document.</p>
+-->
diff --git a/docs/html-intl/intl/zh-tw/guide/index.jd b/docs/html-intl/intl/zh-tw/guide/index.jd
new file mode 100644
index 0000000..f7ad966
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/index.jd
@@ -0,0 +1,74 @@
+page.title=Android 簡介
+
+@jd:body
+
+
+<div class="sidebox" style="width:220px"><!-- width to match col-4 below -->
+<p>如要瞭解應用程式的運作方式，請參閱<a href="{@docRoot}guide/components/fundamentals.html">應用程式基礎知識</a>。
+</p>
+<p>如果想立即編寫程式碼，請參閱<a href="{@docRoot}training/basics/firstapp/index.html">建立您的第一個應用程式</a>。</p>
+</div>
+
+<p>Android 提供內容豐富的應用程式架構，可讓您在 Java 語言環境中建置適用於行動裝置的新穎應用程式和遊戲。
+您可以參閱左側導覽區所列的文件，進一步瞭解如何使用 Android 的各種 API 建置應用程式。
+</p>
+
+<p>如果您是剛開始接觸 Android 開發環境，請務必詳閱下列有關 Android 應用程式架構的基本概念：
+</p>
+
+
+<div class="landing-banner">
+
+<div class="col-6">
+
+<h4>應用程式可提供多個進入點</h4>
+
+<p>Android 應用程式是由許多不同元件建置而成，應用程式可個別呼叫每個元件。
+例如，「Activity」<em></em>可在單一畫面中顯示使用者介面，而「服務」<em></em>則個別可在背景中執行作業。
+
+</p>
+
+<p>您可以透過某個元件使用「意圖」<em></em>啟動另一個元件。您甚至可以啟動其他應用程式中的元件，例如啟動地圖應用程式的 Activity 來顯示地址。
+這個模型可為單一應用程式提供多個進入點，還能讓任何應用程式針對其他應用程式可能呼叫的動作，以使用者設定的「預設值」運作。
+
+</p>
+
+
+<p><b>瞭解詳情：</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/components/fundamentals.html">應用程式基礎知識</a>
+<li><a href="{@docRoot}guide/components/intents-filters.html">意圖和意圖篩選器</a>
+<li><a href="{@docRoot}guide/components/activities.html">Activity</a>
+</ul>
+
+</div>
+
+
+<div class="col-6">
+
+<h4>應用程式會針對不同裝置進行調整</h4>
+
+<p>Android 提供的應用程式架構可視情況進行調整，讓您能夠針對不同的裝置設定提供專屬資源。
+例如，您可以針對不同的螢幕大小建立各種 XML 版面配置檔案，藉此讓系統根據目前裝置的螢幕大小決定要套用的版面配置設定。
+
+</p>
+
+<p>如果有應用程式功能需要特定硬體 (例如相機) 才能運作，您可以在執行階段查詢裝置功能的可用性。
+此外，您還可以視需要宣告您的應用程式所需的功能，以便讓 Google Play 商店等應用程式市集禁止使用者在不支援相關功能的裝置上安裝您的應用程式。
+
+</p>
+
+
+<p><b>瞭解詳情：</b></p>
+<ul class="nolist">
+<li><a href="{@docRoot}guide/practices/compatibility.html">裝置相容性</a>
+<li><a href="{@docRoot}guide/topics/resources/overview.html">資源總覽</a>
+<li><a href="{@docRoot}guide/topics/ui/overview.html">使用者介面總覽</a>
+</ul>
+
+</div>
+
+</div><!-- end landing-banner -->
+
+
+
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/manifest/manifest-intro.jd b/docs/html-intl/intl/zh-tw/guide/topics/manifest/manifest-intro.jd
new file mode 100644
index 0000000..5e42e37
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/manifest/manifest-intro.jd
@@ -0,0 +1,517 @@
+page.title=應用程式宣示說明
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文件內容</h2>
+<ol>
+<li><a href="#filestruct">宣示說明檔案結構</a></li>
+<li><a href="#filec">檔案轉換</a>
+<li><a href="#filef">檔案功能</a>
+	<ol>
+	<li><a href="#ifs">意圖篩選器</a></li>
+	<li><a href="#iconlabel">圖示和標籤</a></li>
+	<li><a href="#perms">權限</a></li>
+	<li><a href="#libs">程式庫</a></li>
+	</ol></li>
+</ol>
+</div>
+</div>
+
+<p>
+  每個應用程式的根目錄都必須包含 AndroidManifest.xml 檔案 (名稱要一字不差)。
+ <span itemprop="description">宣示說明檔案可向 Android 系統顯示應用程式的基本資訊，也就是系統在執行該應用程式的任何程式碼之前必須具備的資訊。
+
+
+</span> 宣示說明可執行下列動作：
+</p>
+
+<ul>
+<li>為應用程式的 Java 封裝命名。
+封裝名稱可當成應用程式的唯一識別碼使用。</li>
+
+<li>描述應用程式的元件 &mdash; 組成應用程式的 Activity、服務、廣播接收器和內容供應程式。
+
+為實作每個元件的類別命名以及發佈類別的功能 (例如，類別可處理的 {@link android.content.Intent 
+Intent} 訊息)。
+這些宣告可讓 Android 系統瞭解元件為何以及可在哪些情況下啟動。
+</li>
+
+<li>決定代管應用程式元件的程序。</li>  
+
+<li>宣告應用程式必須擁有哪些權限，才能存取 API 受保護的部分以及與其他應用程式互動。
+</li>  
+
+<li>宣示說明亦可宣告其他項目必須擁有哪些權限，才能與應用程式的元件互動。
+</li>
+
+<li>列出可在應用程式執行時提供分析和其他資訊的 {@link android.app.Instrumentation} 類別。
+只有在應用程式開發及測試完成的情況下，宣示說明中才會顯示這些宣告；這些宣告會在應用程式發佈之前移除。
+
+</li>
+
+<li>宣告應用程式要求的最低 Android API 級別。
+</li>
+
+<li>列出應用程式必須連結的程式庫。</li>
+</ul>
+
+
+<h2 id="filestruct">宣示說明檔案結構</h2>
+
+<p>
+下圖顯示宣示說明檔案的一般結構和可納入其中的元素。
+每個元素和其所有屬性都會完全記錄在個別檔案中。
+如要查看任一元素的詳細資訊，只要按一下圖表中的元素名稱、圖表後方按字母順序列出的元素清單，或在他處提及的任何元素名稱。
+
+
+ 
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk /&gt;</a>
+    <a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration /&gt;</a>  <!-- ##api level 3## -->
+    <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens /&gt;</a>  <!-- ##api level 4## -->
+    <a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html">&lt;compatible-screens /&gt;</a>  <!-- ##api level 9## -->
+    <a href="{@docRoot}guide/topics/manifest/supports-gl-texture-element.html">&lt;supports-gl-texture /&gt;</a>  <!-- ##api level 11## -->
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category /&gt;</a>
+                <a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;/activity&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;/activity-alias&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data/&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;/service&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a> . . . <a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;/intent-filter&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;/receiver&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data /&gt;</a>
+            <a href="{@docRoot}guide/topics/manifest/path-permission-element.html">&lt;path-permission /&gt;</a>
+        <a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;/provider&gt;</a>
+
+        <a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library /&gt;</a>
+
+    <a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;/application&gt;</a>
+
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;/manifest&gt;</a>
+</pre>
+
+<p>
+下方按字母順序列出可出現在宣示說明檔案中的所有元素。
+只有這些才是符合資格的元素，您無法新增自己的元素或屬性。
+  
+</p>
+
+<p style="margin-left: 2em">
+<code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">&lt;supports-screens&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration&gt;</a></code>  <!-- ##api level 3## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code>  <!-- ##api level 4## -->
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></code>
+</p>
+
+
+    
+
+<h2 id="filec">檔案轉換</h2>
+
+<p>
+某些轉換和規則通常適用於宣示說明中的所有元素與屬性：
+
+</p>
+
+<dl>
+<dt><b>元素</b></dt>
+<dd>只有
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 與
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 是必要元素，務必顯示兩者且這些元素只能出現一次。
+雖然您至少必須顯示當中的一些元素，才能完成有意義的作業，但大部分其他元素可以出現數次或完全不出現。
+
+
+
+
+<p>
+如果可以的話，元素還可以包含其他元素。所有值並非當成元素內的字元資料使用，而是透過屬性設定。
+
+</p>
+
+<p>
+系統通常不會將位於相同層級的元素排序。例如，
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>、
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code> 和 
+<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code> 元素能以任何順序排列組合。
+(
+<code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code> 元素是這項規則的例外狀況：
+由於它是
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 的別名，因此必須跟在該元素的後面)。
+
+</p></dd>
+
+<dt><b>屬性</b></dt>
+<dd>形式上而言，所有屬性均為選用性質。不過，您必須為元素指定某些屬性，才能達到其目的。
+請使用本文件當成參考指南。
+真正的選用屬性會提及在缺少規格時要使用的預設值或狀態。
+
+
+<p>除了
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 根元素的某些屬性以外，所有屬性名稱都是以前置詞 {@code android:}為開頭，例如 {@code android:alwaysRetainTaskState}。
+
+由於前置詞是通用的，因此按名稱參照屬性時，文件通常會加以省略。
+
+</p></dd>
+
+<dt><b>宣告類別名稱</b></dt>
+<dd>許多元素都會對應到 Java 物件，包括應用程式本身的元素 (
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 元素) 與其主要元件：Activity (<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>)、服務 (<code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>)、廣播接收器 (<code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code>) 以及內容供應程式 (<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>)。
+
+
+
+
+
+
+
+
+  
+
+<p>
+如果您一如往常定義元件類別 ({@link android.app.Activity}、{@link android.app.Service}、
+{@link android.content.BroadcastReceiver} 及 {@link android.content.ContentProvider}) 般定義子類別，就會透過 {@code name} 屬性宣告子類別。
+
+該名稱必須包含完整的封裝指定名稱。
+例如，{@link android.app.Service} 子類別可能會以下列格式宣告：
+
+</p>
+
+<pre>&lt;manifest . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name="com.example.project.SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+不過，採用速記法時，如果字串的第一個字元是句點，就會將字串附加到應用程式的封裝名稱 (如同由
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 元素的
+<code><a href="{@docRoot}guide/topics/manifest/manifest-element.html#package">package</a></code> 屬性指定)。
+
+
+下列的指派結果會和上述相同： 
+</p>
+
+<pre>&lt;manifest package="com.example.project" . . . &gt;
+    &lt;application . . . &gt;
+        &lt;service android:name=".SecretService" . . . &gt;
+            . . .
+        &lt;/service&gt;
+        . . .
+    &lt;/application&gt;
+&lt;/manifest&gt;</pre>
+
+<p>
+啟動元件時，Android 會建立具名子類別的執行個體。如果未指定子類別，就會建立基本類別的執行個體。
+
+</p></dd>
+
+<dt><b>多個值</b></dt>
+<dd>如果可以指定多個值，該元素幾乎會一直重複，而不是在單一元素內列出多個值。
+例如，意圖篩選器能列出數種動作：
+
+
+<pre>&lt;intent-filter . . . &gt;
+    &lt;action android:name="android.intent.action.EDIT" /&gt;
+    &lt;action android:name="android.intent.action.INSERT" /&gt;
+    &lt;action android:name="android.intent.action.DELETE" /&gt;
+    . . .
+&lt;/intent-filter&gt;</pre></dd>
+
+<dt><b>資源值</b></dt>
+<dd>有些屬性的值可以供使用者查看 &mdash; 例如 Activity 的標籤和圖示。
+您必須將這些屬性的值本地化，以便從資源或主題設定這些值。
+資源值是採用下列格式表示：
+</p>
+
+<p style="margin-left: 2em">{@code @[<i>package</i>:]<i>type</i>:<i>name</i>}</p>
+
+<p>
+其中的<i>package</i> 名稱可以省略 (如果資源所在的封裝和應用程式相同的話)，
+ <i>type</i> 是指資源類型 &mdash; 例如「字串」或「可繪項目」 &mdash; 而
+ <i>name</i> 則是可識別特定資源的名稱。範例：
+
+</p>
+
+<pre>&lt;activity android:icon="@drawable/smallPic" . . . &gt</pre>
+
+<p>
+主題中的值會以類似的方式表示，但字首會是 '{@code ?}'，而不是 '{@code @}'：
+
+</p>
+
+<p style="margin-left: 2em">{@code ?[<i>package</i>:]<i>type</i>:<i>name</i>}
+</p></dd>
+
+<dt><b>字串值</b></dt>
+<dd>如果屬性值為字串，必須使用雙反斜線 ('{@code \\}')來溢出字元，例如 '{@code \\n}'表示換行字元，或 '{@code \\uxxxx}' 表示 Unicode 字元。
+
+</dd>
+</dl>
+
+
+<h2 id="filef">檔案功能</h2>
+
+<p>
+下列各節說明如何在宣示說明檔案中反映部分 Android 功能。
+
+</p>
+
+
+<h3 id="ifs">意圖篩選器</h3>
+
+<p>
+應用程式的核心元件 (即應用程式的 Activity、服務和廣播接收器) 是由
+ <i>意圖</i>啟動。意圖是一組資訊組合 ({@link android.content.Intent} 物件)，用於說明要採取的動作 &mdash; 包括執行依據的資料、應執行動作的元件類別，以及其他相關的指示。
+
+
+Android 會找出適當的元件來回應意圖、視需要啟動元件的新執行個體，以及將意圖物件傳送給它。
+
+
+
+</p>
+
+<p>
+元件會通知其功能 (元件可回應的意圖類型)，而通知途徑是
+ <i>意圖篩選器</i>。由於 Android 系統必須先瞭解元件能夠處理哪些意圖，才能啟動該元件，因此意圖篩選器在宣示說明中會指定為
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code> 元素。
+
+
+元件可包含的篩選器數目不拘，每個篩選器描述的功能各不相同。
+
+</p>
+
+<p>
+明確命名目標元件的意圖會啟動該元件，而不必使用篩選器。
+但未指定目標名稱的意圖，只有在其通過其中一個元件的篩選器後，才能啟動元件。
+
+
+</p>
+
+<p>
+如要瞭解意圖物件測試意圖篩選器的方式，請參閱<a href="{@docRoot}guide/components/intents-filters.html">意圖和意圖篩選器</a>。
+
+
+
+</p>
+
+
+<h3 id="iconlabel">圖示和標籤</h3>
+
+<p>
+許多元素都有可供小型圖示與文字標籤使用的 {@code icon} 和 {@code label} 屬性，而使用者可看到這些圖示和標籤。
+有些元素還包含可供較長說明文字使用的
+{@code description} 屬性，這個說明文字亦可顯示在螢幕上。
+例如，假設
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 元素含有上述三種屬性，當系統詢問使用者是否將權限授予發出要求的應用程式時，可以將代表權限的圖示、該權限的名稱以及所需的描述全都向使用者顯示。
+
+
+
+
+</p>
+
+<p>
+在各種情況下，元件中設定的圖示和標籤會成為所有容器下層元素的預設
+{@code icon} 與 {@code label} 設定因此，
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 元素中設定的圖示和標籤會是應用程式各元件的預設圖示和標籤。
+
+同樣地，為元件 (例如
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 元素) 設定的圖示和標籤會是元件的
+<code><a href="{@docRoot}guide/topics/manifest/intent-filter-element.html">&lt;intent-filter&gt;</a></code> 元素預設值。
+
+
+如果 
+<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> 元素設有一個標籤，但 Activity 與其意圖篩選器並未設定該標籤，系統會將應用程式標籤視為 Activity 和意圖篩選器的標籤。
+
+
+
+</p>
+
+<p>
+每當執行篩選器通告的功能，要向使用者顯示元件時，就會將為意圖篩選器設定的圖示和標籤用來代表元件。
+
+例如，包含
+"{@code android.intent.action.MAIN}" 與
+"{@code android.intent.category.LAUNCHER}" 設定的篩選器會將某 Activity 宣告為啟動應用程式的 Activity，也就是應顯示在應用程式啟動器中的 Activity。
+
+因此，顯示在啟動器中的會是篩選器中設定的圖示和標籤。
+
+</p>
+
+
+<h3 id="perms">權限</h3>
+
+<p>
+單一 <i>權限</i> 是指一項限制，可限制某部分程式碼或裝置上資料的存取權。
+   系統會強制實施這項限制，以保護會遭到誤用而扭曲或損害使用者體驗的重要資料與程式碼。
+  
+</p>
+
+<p>
+各項權限都是用不重複的標籤加以辨識。該標籤通常會指出受到限制的動作。
+例如，以下是 Android 定義的一些權限：
+
+</p>
+
+<p style="margin-left: 2em">{@code android.permission.CALL_EMERGENCY_NUMBERS}
+<br/>{@code android.permission.READ_OWNER_DATA}
+<br/>{@code android.permission.SET_WALLPAPER}
+<br/>{@code android.permission.DEVICE_POWER}</p>
+
+<p>
+單一功能最多只能利用一項權限來加以保護。
+</p>
+
+<p>
+如果應用程式需要存取受權限保護的功能，它必須在宣示說明中利用
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 元素來宣告其需要該項權限。
+
+接著，要在裝置上安裝該應用程式時，安裝程式會檢查簽署該應用程式憑證的授權單位 (在某些情況下還會詢問使用者)，然後決定是否授予要求的權限。
+
+
+如果授予權限，該應用程式就能夠使用受保護的功能。
+
+如果不授予權限，存取相關功能的嘗試就會失敗，但使用者不會收到任何通知。
+ 
+</p>
+
+<p>
+應用程式也能利用權限來保護自己的元件 (Activity、服務、廣播接收器和內容供應程式)。
+它能使用 Android 定義的任何權限 (列於 
+{@link android.Manifest.permission android.Manifest.permission}) 或其他應用程式宣告的任何權限。
+
+此外，應用程式也能自行定義權限。新的權限是以
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 元素宣告。
+
+例如，您可以利用下列權限保護 Activity：
+</p>
+
+<pre>
+&lt;manifest . . . &gt;
+    &lt;permission android:name="com.example.project.DEBIT_ACCT" . . . /&gt;
+    &lt;uses-permission android:name="com.example.project.DEBIT_ACCT" /&gt;
+    . . .
+    &lt;application . . .&gt;
+        &lt;activity android:name="com.example.project.FreneticActivity"
+                  android:permission="com.example.project.DEBIT_ACCT"
+                  . . . &gt;
+            . . .
+        &lt;/activity&gt;
+    &lt;/application&gt;
+&lt;/manifest&gt;
+</pre>
+
+<p>
+請注意，在本範例中，不只以
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 元素宣告 {@code DEBIT_ACCT} 權限，還使用 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 元素來要求使用此權限。
+
+
+即使保護是由應用程式本身強制施行，還是必須要求使用該權限，應用程式的其他元件才能啟動受保護的 Activity。
+
+  
+</p>
+
+<p>
+在相同的範例中，如果 {@code permission} 屬性設定為在別處宣告的權限 (例如 {@code android.permission.CALL_EMERGENCY_NUMBERS})，就不必再次使用
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 元素來宣告。
+
+
+
+不過，還是必須利用
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 來要求使用。 
+</p>
+
+<p>
+
+<code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code> 元素可為程式碼將定義的一組權限宣告命名空間。
+
+此外，
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code> 可為一組權限定義標籤 (以
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 元素在宣示說明中宣告的權限或在別處宣告的權限)。
+
+它只會影響在向使用者呈現權限時的分組方式。
+
+<code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code> 元素不會指定各權限所屬的群組，只會指定群組的名稱。
+
+只要將群組名稱指派給
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 元素
+<code><a href="{@docRoot}guide/topics/manifest/permission-element.html#pgroup">permissionGroup</a></code> 的屬性，就能將權限放入群組中。
+
+
+
+</p>
+
+
+<h3 id="libs">程式庫</h3>
+
+<p>
+每款應用程式都會與預設的 Android 程式庫連結，該程式庫中包含的基本封裝可用於建置應用程式 (使用 Activity、Service、Intent、View、Button、Application、ContentProvider 等一般類別)。
+
+
+
+</p>
+
+<p>
+不過，有些封裝是存放在其專屬的程式庫中。如果您的應用程式使用來自這類封裝的程式碼，您必須明確要求與其建立連結。
+
+宣示說明必須包含個別的
+<code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code> 元素，才能命名各個程式庫。
+(您可以在封裝的說明文件中找到程式庫名稱)。
+
+</p>
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/providers/calendar-provider.jd b/docs/html-intl/intl/zh-tw/guide/topics/providers/calendar-provider.jd
new file mode 100644
index 0000000..42434e4
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/providers/calendar-provider.jd
@@ -0,0 +1,1184 @@
+page.title=日曆供應程式
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+    <h2>本文件內容</h2>
+    <ol>
+  <li><a href="#overview">基本概念</a></li>
+  <li><a href="#manifest">使用者權限</a></li>
+  <li><a href="#calendar">日曆表格</a>
+<ol>
+      <li><a href="#query">查詢日曆</a></li>
+      <li><a href="#modify-calendar">修改日曆</a></li>
+      <li><a href="#insert-calendar">插入日曆</a></li>
+    </ol>
+  </li>
+  <li><a href="#events">活動表格</a>
+<ol>
+      <li><a href="#add-event">新增活動</a></li>
+      <li><a href="#update-event">更新活動</a></li>
+      <li><a href="#delete-event">刪除活動</a></li>
+    </ol>
+  </li>
+  <li><a href="#attendees">參與者表格</a>
+<ol>
+      <li><a href="#add-attendees">新增參與者</a></li>
+    </ol>
+  </li>
+  <li><a href="#reminders">提醒表格</a>
+<ol>
+      <li><a href="#add-reminders">新增提醒</a></li>
+    </ol>
+  </li>
+  <li><a href="#instances">執行個體表格</a>
+  <ol>
+      <li><a href="#query-instances">查詢執行個體表格</a></li>
+  </ol></li>
+  <li><a href="#intents">日曆意圖</a>
+  <ol>
+      <li><a href="#intent-insert">使用意圖插入活動</a></li>
+      <li><a href="#intent-edit">使用意圖編輯活動</a></li>
+      <li><a href="#intent-view">使用意圖檢視日曆資料</a></li>
+    </ol>
+  </li>
+  
+  <li><a href="#sync-adapter">同步配接器</a></li>
+</ol>
+
+    <h2>重要類別</h2>
+    <ol>
+      <li>{@link android.provider.CalendarContract.Calendars}</li>
+      <li>{@link android.provider.CalendarContract.Events}</li>
+      <li>{@link android.provider.CalendarContract.Attendees}</li>
+      <li>{@link android.provider.CalendarContract.Reminders}</li>
+    </ol>
+</div>
+</div>
+
+<p>「日曆供應程式」是使用者日曆活動的存放庫。「日曆供應程式」API 允許您在日曆、活動、參與者、提醒等等項目中執行查詢、插入、更新以及刪除操作。
+
+</p>
+
+
+<p>「日曆供應程式」API 可以由應用程式和同步配接器使用。規則取決於發出呼叫的程式類型。
+本文件主要著重於將「日曆供應程式」API 作為應用程式使用。
+如要瞭解同步配接器不一樣的資訊，請參閱<a href="#sync-adapter">同步配接器</a>。
+
+</p>
+
+
+<p>一般而言，如要讀取或寫入日曆資料，應用程式的宣示說明必須含有適當的權限 (於<a href="#manifest">使用者權限</a>中描述)。
+
+如要更輕鬆執行常見操作，「日曆供應程式」提供一組意圖 (於<a href="#intents">日曆意圖</a>中描述)。
+
+這些意圖會將使用者帶往「日曆」應用程式，以插入、檢視以及編輯活動。
+使用者與「日曆」應用程式互動後，回到原來的應用程式。
+因此，您的應用程式不需要要求權限，也不需要提供檢視或建立活動的使用者介面。
+</p>
+
+<h2 id="overview">基本概念</h2>
+
+<p><a href="{@docRoot}guide/topics/providers/content-providers.html">內容供應程式</a>會儲存資料，讓應用程式可以存取這些資料。
+內容供應程式是由 Android 平台所提供 (包括「日曆供應程式」)，通常會根據關聯式資料庫模型，以一組表格的形式公開資料。表格中的每一列都是一筆記錄，而每一欄則是特定類型和意義的資料。
+
+透過「日曆供應程式」API，應用程式和同步配接器可以取得資料庫表格 (此資料庫表格含有使用者日曆資料) 的讀取/寫入存取權。
+
+</p>
+
+<p>每個內容供應程式都會公開一個公用 URI (包裝為 
+{@link android.net.Uri} 物件)，可唯一識別其資料集。
+控制多個資料集 (多個表格) 的內容供應程式會為每個資料集公開個別的 URI。
+供應程式所有 URI 的開頭字串為「content://」。
+這表示資料是受到內容供應程式的控制。
+「日曆供應程式」會為每個類別 (表格) 的 URI 定義常數。
+這些 URI 的格式為 <code><em>&lt;class&gt;</em>.CONTENT_URI</code>。
+例如，{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}。
+</p>
+
+<p>「圖 1」顯示「日曆供應程式」資料模型的圖形表示。它顯示主要表格以及將每個表格連接在一起的欄位。
+</p>
+
+<img src="{@docRoot}images/providers/datamodel.png" alt="Calendar Provider Data Model" />
+<p class="img-caption"><strong>圖 1.</strong>「日曆供應程式」資料模型。</p>
+
+<p>使用者可以有多個日曆，而且不同的日曆可以與不同類型的帳戶 (Google 日曆、Exchange 等等) 關聯。</p>
+
+<p>{@link android.provider.CalendarContract} 會定義日曆的資料模型和活動相關資訊。此資料儲存於一些表格，列示如下。</p>
+
+<table>
+  <tr>
+    <th>表格 (類別)</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td><p>{@link android.provider.CalendarContract.Calendars}</p></td>
+    
+    <td>此表格內含日曆特定的資訊。
+此表格中的每一列包含單一日曆的詳細資訊，例如名稱、色彩、同步資訊等等。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Events}</td>
+    
+    <td>此表格內含活動特定的資訊。
+此表格中的每一列包含單一活動的資訊 &mdash; 例如，活動標題、位置、開始時間、結束時間等等。
+
+活動可以只發生一次或發生多次。參與者、提醒以及延伸屬性儲存於個別的表格。
+它們每一個都有 {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}，會參照「活動」表格中的 {@link android.provider.BaseColumns#_ID}。
+
+</td>
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances}</td>
+    
+    <td>此表格內含活動每次發生的開始和結束時間。
+此表格的每一列代表單一活動發生。
+單次活動執行個體和活動的對應為 1:1。
+對於週期性活動，則會自動產生多個列，對應到該活動的多次發生。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Attendees}</td>
+    
+    <td>此表格內含活動參與者 (邀請對象) 的資訊。
+每一列代表一個活動的單一邀請對象。
+其中會指出邀請對象類型，以及邀請對象是否出席該活動的回應。
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Reminders}</td>
+    
+    <td>此表格內含警示/通知資訊。
+每一列代表一個活動的單一警示。一個活動可以設定多個提醒。
+每個活動的最大數量提醒指定於 
+{@link android.provider.CalendarContract.CalendarColumns#MAX_REMINDERS}，此項是由擁有指定日曆的同步配接器所設定。
+
+
+提醒是以分鐘數指定活動發生前的時間，而且有一個方法用於決定通知使用者的方式。
+</td>
+  </tr>
+  
+</table>
+
+<p>「日曆供應程式」API 的設計具備彈性且功能強大。提供良好的使用者體驗，以及保護日曆及其資料的完整性，兩者一樣重要。
+
+關於這一點，使用此 API 時，請記得以下事項：
+</p>
+
+<ul>
+
+<li><strong>插入、更新以及檢視日曆活動。</strong>如要從「日曆供應程式」直接插入、修改以及讀取活動，您需要具備適當的<a href="#manifest">權限</a>。然而，如果您不是要建置功能豐富的日曆應用程式，則不需要要求這些權限。您可以改用 Android「日曆」應用程式支援的意圖，將讀取和寫入操作交給您的應用程式。使用意圖時，您的應用程式可以將使用者傳送到「日曆」應用程式，在預先填好的表單中執行想要的操作。
+完成之後，使用者會回到您的應用程式。將應用程式設計成透過「日曆」來執行常見的操作，即可為使用者提供一致且完整的使用者介面。
+
+我們建議您採用此方式。
+如需詳細資訊，請參閱<a href="#intents">日曆意圖</a>。
+</p>
+
+
+<li><strong>同步配接器。</strong>同步配接器會將使用者裝置的日曆資料與另一台伺服器或資料來源進行同步。
+在 
+{@link android.provider.CalendarContract.Calendars} 和
+{@link android.provider.CalendarContract.Events} 表格中，會保留某些欄讓同步配接器使用。供應程式和應用程式不應加以修改。
+
+事實上，除非以同步配接器進行存取，否則看不到這些保留的欄。
+如需關於同步配接器的詳細資訊，請參閱<a href="#sync-adapter">同步配接器</a>。
+</li>
+
+</ul>
+
+
+<h2 id="manifest">使用者權限</h2>
+
+<p>如要讀取日曆資料，應用程式必須在其宣示說明檔案中包含 {@link
+android.Manifest.permission#READ_CALENDAR} 權限。宣示說明檔案必須包含 {@link android.Manifest.permission#WRITE_CALENDAR} 權限，才能刪除、插入或更新日曆資料：
+
+</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;...&gt;
+    &lt;uses-sdk android:minSdkVersion=&quot;14&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.READ_CALENDAR&quot; /&gt;
+    &lt;uses-permission android:name=&quot;android.permission.WRITE_CALENDAR&quot; /&gt;
+    ...
+&lt;/manifest&gt;
+</pre>
+
+
+<h2 id="calendar">日曆表格</h2>
+
+<p>{@link android.provider.CalendarContract.Calendars} 表格包含個別日曆的詳細資訊。
+下列「日曆」欄可以讓應用程式和<a href="#sync-adapter">同步配接器</a>寫入。
+如需關於支援欄位的完整清單，請參閱
+{@link android.provider.CalendarContract.Calendars} 參照。
+</p>
+<table>
+  <tr>
+    <th>常數</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#NAME}</td>
+    <td>日曆的名稱。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#CALENDAR_DISPLAY_NAME}</td>
+    <td>使用者看到此日曆的名稱。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Calendars#VISIBLE}</td>
+    
+    <td>指出是否選擇要顯示日曆的布林值。值 0 表示與此日曆關聯的活動不應顯示。
+
+值 1 表示與此日曆關聯的活動應顯示。
+此值會影響 {@link
+android.provider.CalendarContract.Instances} 表格中列的產生。</td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.CalendarColumns#SYNC_EVENTS}</td>
+    
+    <td>指出日曆是否應同步，並且讓日曆的活動儲存在裝置上的布林值。
+值 0 表示不同步此日曆，並且不要在裝置上儲存其活動。
+值 1 表示同步此日曆的活動，並且在裝置上儲存其活動。
+</td>
+  </tr>
+</table>
+
+<h3 id="query">查詢日曆</h3>
+
+<p>以下的範例顯示如何取得特定使用者擁有的日曆。
+為了簡化起見，本範例中的查詢操作顯示於使用者介面執行緒 (即「主要執行緒」) 中。
+實務上，應該以非同步執行緒來完成，而不是使用主要執行緒。
+如需更多討論，請參閱<a href="{@docRoot}guide/components/loaders.html">載入器</a>。
+如果您不只要讀取資料，還要加以修改，請參閱 {@link android.content.AsyncQueryHandler}。
+
+</p>
+
+
+<pre>
+// Projection array. Creating indices for this array instead of doing
+// dynamic lookups improves performance.
+public static final String[] EVENT_PROJECTION = new String[] {
+    Calendars._ID,                           // 0
+    Calendars.ACCOUNT_NAME,                  // 1
+    Calendars.CALENDAR_DISPLAY_NAME,         // 2
+    Calendars.OWNER_ACCOUNT                  // 3
+};
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_ACCOUNT_NAME_INDEX = 1;
+private static final int PROJECTION_DISPLAY_NAME_INDEX = 2;
+private static final int PROJECTION_OWNER_ACCOUNT_INDEX = 3;</pre>
+  
+
+<div class="sidebox-wrapper"> <div class="sidebox"> <h3>為什麼一定要包含 ACCOUNT_TYPE？
+</h3> <p>如果您要針對 {@link
+android.provider.CalendarContract.Calendars#ACCOUNT_NAME
+Calendars.ACCOUNT_NAME} 進行查詢，也必須在選項中包含 
+{@link android.provider.CalendarContract.Calendars#ACCOUNT_TYPE Calendars.ACCOUNT_TYPE}。
+這是因為只有同時提供指定帳戶的 <code>ACCOUNT_NAME</code> 和
+<code>ACCOUNT_TYPE</code> 情況下，此帳戶才會視為唯一的。
+<code>ACCOUNT_TYPE</code> 是對應至帳戶驗證器的字串。帳戶使用
+{@link android.accounts.AccountManager} 註冊時，會使用此帳戶驗證器。
+沒有與裝置帳戶關聯的日曆也有一種特殊類型的帳戶，稱為 {@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL}。{@link
+android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} 帳戶不會進行同步。
+
+</p> </div> </div> 
+
+
+<p> 在範例的下一個部分，您將建構查詢。選項會指定查詢的條件。
+在此範例中，查詢會尋找日曆中有 <code>ACCOUNT_NAME</code> "sampleuser@google.com"、<code>ACCOUNT_TYPE</code> "com.google" 以及 <code>OWNER_ACCOUNT</code> "sampleuser@google.com" 的內容。
+
+
+
+如果您要查看使用者可以檢視的所有日曆，不是只查看使用者擁有的日曆，請略過 <code>OWNER_ACCOUNT</code>。此查詢會傳回 {@link android.database.Cursor} 物件。您可以使用此物件周遊資料庫查詢傳回的結果集。
+
+
+
+如需關於在內容供應程式中使用查詢的詳細討論，請參閱<a href="{@docRoot}guide/topics/providers/content-providers.html">內容供應程式</a>。
+</p>
+
+
+<pre>// Run query
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+Uri uri = Calendars.CONTENT_URI;   
+String selection = "((" + Calendars.ACCOUNT_NAME + " = ?) AND (" 
+                        + Calendars.ACCOUNT_TYPE + " = ?) AND ("
+                        + Calendars.OWNER_ACCOUNT + " = ?))";
+String[] selectionArgs = new String[] {"sampleuser@gmail.com", "com.google",
+        "sampleuser@gmail.com"}; 
+// Submit the query and get a Cursor object back. 
+cur = cr.query(uri, EVENT_PROJECTION, selection, selectionArgs, null);</pre>
+
+<p>下一節會使用游標逐步檢視結果集。它會使用範例一開始設定好的常數，傳回每個欄位的值。
+
+</p>
+    
+<pre>// Use the cursor to step through the returned records
+while (cur.moveToNext()) {
+    long calID = 0;
+    String displayName = null;
+    String accountName = null;
+    String ownerName = null;
+      
+    // Get the field values
+    calID = cur.getLong(PROJECTION_ID_INDEX);
+    displayName = cur.getString(PROJECTION_DISPLAY_NAME_INDEX);
+    accountName = cur.getString(PROJECTION_ACCOUNT_NAME_INDEX);
+    ownerName = cur.getString(PROJECTION_OWNER_ACCOUNT_INDEX);
+              
+    // Do something with the values...
+
+   ...
+}
+</pre>
+  
+<h3 id="modify-calendar">修改日曆</h3>
+
+<p>如要執行日曆的更新，您可以提供日曆的 {@link
+android.provider.BaseColumns#_ID}，可以是 URI 的附加 ID 
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 或以第一個選擇項目方式提供。
+
+
+選項的開頭應該是 <code>&quot;_id=?&quot;</code>，而且第一個 
+<code>selectionArg</code> 應該是日曆的 {@link
+android.provider.BaseColumns#_ID}。
+您也可以透過將 ID 編碼在 URI 中，以執行更新。此範例會使用 
+({@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 方式變更日曆的顯示名稱：
+
+
+</p>
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long calID = 2;
+ContentValues values = new ContentValues();
+// The new display name for the calendar
+values.put(Calendars.CALENDAR_DISPLAY_NAME, &quot;Trevor's Calendar&quot;);
+Uri updateUri = ContentUris.withAppendedId(Calendars.CONTENT_URI, calID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);</pre>
+
+<h3 id="insert-calendar">插入日曆</h2>
+
+<p>日曆的設計主要是由同步配接器進行管理，因此您只能以同步配接器的方式插入新日曆。
+在大多數情況下，應用程式只能對日曆進行與外觀相關的變更，例如變更顯示名稱
+。如果應用程式需要建立本機日曆，請以同步配接器的方式插入日曆，方法是使用 {@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} 的 {@link android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE}。
+{@link android.provider.CalendarContract#ACCOUNT_TYPE_LOCAL} 是特殊的日曆帳戶類型，它沒有與裝置帳戶關聯。
+
+
+
+
+
+此類型的日曆不會同步至伺服器。如需關於同步配接器的相關討論，請參閱<a href="#sync-adapter">同步配接器</a>。
+</p>
+
+<h2 id="events">活動表格</h2>
+
+<p>{@link android.provider.CalendarContract.Events} 表格包含個人活動的詳細資訊。
+如要新增、更新或刪除活動，應用程式必須在<a href="#manifest">宣示說明檔案</a>中包括 {@link android.Manifest.permission#WRITE_CALENDAR}權限。
+
+</p>
+
+<p>下列「活動」欄可以讓應用程式和同步配接器寫入。
+如需關於支援欄位的完整清單，請參閱 {@link
+android.provider.CalendarContract.Events} 參照。</p>
+
+<table>
+  <tr>
+    <th>常數</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#CALENDAR_ID}</td>
+    <td>活動所屬日曆的 {@link android.provider.BaseColumns#_ID}。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ORGANIZER}</td>
+    <td>活動主辦人 (擁有者) 的電子郵件。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE}</td>
+    <td>活動的標題。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION}</td>
+    <td>舉辦活動的地點。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION}</td>
+    <td>活動的描述。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTSTART}</td>
+    <td>活動開始的時間，以紀元元年 1 月 1 日零時起算經過的 UTC 毫秒數為單位。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DTEND}</td>
+    <td>活動結束的時間，以紀元元年 1 月 1 日零時起算經過的 UTC 毫秒數為單位。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}</td>
+    <td>活動的時區。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_END_TIMEZONE}</td>
+    <td>活動結束時間的時區。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DURATION}</td>
+    
+    <td>活動的持續期間，以 <a href="http://tools.ietf.org/html/rfc5545#section-3.8.2.5">RFC5545</a> 格式表示。例如，值 <code>&quot;PT1H&quot;</code> 表示活動持續一小時，而值 <code>&quot;P2W&quot;</code> 指出持續 2 週。
+
+
+ </td>
+
+
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#ALL_DAY}</td>
+    
+    <td>值 1 表示此活動需要整天，如同當地時區所定義。
+值 0 表示定期活動，會在一天中的任何時間開始和結束。
+</td>
+
+    
+  </tr>
+  
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RRULE}</td>
+    
+    <td>活動的週期規則。例如，<code>&quot;FREQ=WEEKLY;COUNT=10;WKST=SU&quot;</code>。
+您可以在<a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.3">這裡</a>查看更多範例。
+</td>
+    
+  </tr>
+  
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#RDATE}</td>
+    <td>活動重複發生的日期。您通常會將 {@link android.provider.CalendarContract.EventsColumns#RDATE} 和 {@link android.provider.CalendarContract.EventsColumns#RRULE} 一起使用，以定義週期性活動的彙總集合。
+
+
+
+如需更多討論，請參閱 <a href="http://tools.ietf.org/html/rfc5545#section-3.8.5.2">RFC5545 規格</a>。</td>
+</tr>
+ 
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY}</td>
+    
+    <td>活動要視為忙碌或有空 (可以安排其他活動) 的時間。
+ </td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_MODIFY}</td>
+    <td>邀請對象是否可以修改活動。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_INVITE_OTHERS}</td>
+    <td>邀請對象是否可以邀請其他人。 </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#GUESTS_CAN_SEE_GUESTS}</td>
+    <td>邀請對象是否可以看到參與者清單。</td>
+  </tr>
+</table>
+
+<h3 id="add-event">新增活動</h3>
+
+<p>您的應用程式插入新活動時，我們建議您使用 
+{@link android.content.Intent#ACTION_INSERT INSERT} 意圖 (如同<a href="#intent-insert">使用意圖插入活動</a>所述)。不過，如果需要，您也可以直接插入活動。
+本節將描述如何執行此動作。
+</p>
+
+
+<p>以下是插入新活動的規則： </p>
+<ul>
+
+  <li>您必須包括 {@link
+android.provider.CalendarContract.EventsColumns#CALENDAR_ID} 和 {@link
+android.provider.CalendarContract.EventsColumns#DTSTART}。</li>
+
+<li>您必須包括 {@link
+android.provider.CalendarContract.EventsColumns#EVENT_TIMEZONE}。如要取得系統已安裝時區 ID 的清單，請使用 {@link
+java.util.TimeZone#getAvailableIDs()}。
+請注意，如果您是透過 {@link
+android.content.Intent#ACTION_INSERT INSERT} 意圖 (如同<a href="#intent-insert">使用意圖插入活動</a> &mdash; 所描述的案例) 插入活動，則不適用此規則，將會提供預設時區。
+
+</li>
+  
+  <li>對於非週期性活動，您必須包括 {@link
+android.provider.CalendarContract.EventsColumns#DTEND}。 </li>
+  
+  
+  <li>對於週期性活動，您必須包括 {@link
+android.provider.CalendarContract.EventsColumns#DURATION}，以及 {@link
+android.provider.CalendarContract.EventsColumns#RRULE} 或 {@link
+android.provider.CalendarContract.EventsColumns#RDATE}。請注意，如果您是透過 {@link
+android.content.Intent#ACTION_INSERT INSERT} 意圖 (如同<a href="#intent-insert">使用意圖插入活動</a> &mdash; 所描述的案例) 插入活動，則不適用此規則。您可以使用 {@link
+android.provider.CalendarContract.EventsColumns#RRULE} 搭配 {@link android.provider.CalendarContract.EventsColumns#DTSTART} 和 {@link android.provider.CalendarContract.EventsColumns#DTEND}，然後「日曆」應用程式就會自動將它轉換為一段持續時間。
+
+
+</li>
+  
+</ul>
+
+<p>以下是插入活動的範例。為了簡化，會在 UI 執行緒中執行此示範。
+實際運作時，插入和更新應該在非同步執行緒中完成，以便將動作移至背景執行緒。
+如需詳細資訊，請參閱 {@link android.content.AsyncQueryHandler}。
+</p>
+
+
+<pre>
+long calID = 3;
+long startMillis = 0; 
+long endMillis = 0;     
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 9, 14, 7, 30);
+startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 9, 14, 8, 45);
+endMillis = endTime.getTimeInMillis();
+...
+
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Events.DTSTART, startMillis);
+values.put(Events.DTEND, endMillis);
+values.put(Events.TITLE, &quot;Jazzercise&quot;);
+values.put(Events.DESCRIPTION, &quot;Group workout&quot;);
+values.put(Events.CALENDAR_ID, calID);
+values.put(Events.EVENT_TIMEZONE, "America/Los_Angeles");
+Uri uri = cr.insert(Events.CONTENT_URI, values);
+
+// get the event ID that is the last element in the Uri
+long eventID = Long.parseLong(uri.getLastPathSegment());
+// 
+// ... do something with event ID
+//
+//</pre>
+
+<p class="note"><strong>注意：</strong>查看本範例如何在建立活動後擷取活動 ID。
+這是取得活動 ID 的最簡單方式。您經常需要活動 ID 來執行其他日曆操作 &mdash; 例如，在活動中新增參與者或提醒。
+
+</p>
+
+
+<h3 id="update-event">更新活動</h3>
+
+<p>您的應用程式允許使用者編輯活動時，我們建議您使用 {@link android.content.Intent#ACTION_EDIT EDIT} 意圖編輯活動 (如同<a href="#intent-edit">使用意圖插入活動</a>所述)。不過，如果需要，您也可以直接編輯活動。
+
+
+如要執行活動的更新，您要提供活動的 <code>_ID</code>，可以是 URI 的附加 ID ({@link
+android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()}) 或以第一個選擇項目方式提供。
+
+
+選項的開頭應該是 <code>&quot;_id=?&quot;</code>，而且第一個 
+<code>selectionArg</code> 應該是活動的 <code>_ID</code>。
+您也可以使用不含 ID 的選項進行更新。以下是更新活動的範例。
+
+它使用 
+{@link android.content.ContentUris#withAppendedId(android.net.Uri,long) withAppendedId()} 方式變更活動的標題：
+</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 188;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri updateUri = null;
+// The new title for the event
+values.put(Events.TITLE, &quot;Kickboxing&quot;); 
+updateUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().update(updateUri, values, null, null);
+Log.i(DEBUG_TAG, &quot;Rows updated: &quot; + rows);  </pre>
+
+<h3 id="delete-event">刪除活動</h3>
+
+<p>您可以透過活動 URI 的附加 ID {@link
+android.provider.BaseColumns#_ID} 或使用標準選擇方式來刪除活動。
+如果您使用附加 ID，就不能進行選擇。刪除有兩種方式：以應用程式和以同步配接器。
+應用程式刪除會將 <em>deleted</em> 欄設定為 1。
+此旗標會告訴同步配接器該列已刪除，而且此刪除應傳播到伺服器。
+
+同步配接器會從資料庫刪除活動及其相關的所有資料。
+以下是應用程式透過活動的 {@link android.provider.BaseColumns#_ID}刪除活動的範例：
+</p>
+
+
+<pre>private static final String DEBUG_TAG = "MyActivity";
+...
+long eventID = 201;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+Uri deleteUri = null;
+deleteUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+int rows = getContentResolver().delete(deleteUri, null, null);
+Log.i(DEBUG_TAG, &quot;Rows deleted: &quot; + rows);  
+</pre>
+
+<h2 id="attendees">參與者表格</h2>
+
+<p>{@link android.provider.CalendarContract.Attendees} 表格的每一列都代表活動的單一參與者或邀請對象。
+呼叫 
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()} 會傳回指定 {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} 活動的參與者清單。
+
+此 {@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} 必須符合特定活動的 {@link
+android.provider.BaseColumns#_ID}。
+
+</p> 
+
+<p>下表列出可寫入的欄位。
+插入新的參與者時，您必須包括 <code>ATTENDEE_NAME</code> 以外的所有項目。
+
+</p>
+
+
+<table>
+  <tr>
+    <th>常數</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID}</td>
+    <td>活動的 ID。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_NAME}</td>
+    <td>參與者的名稱。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_EMAIL}</td>
+    <td>參與者的電子郵件地址。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_RELATIONSHIP}</td>
+    <td><p>參與者與活動的關係。可以是以下其中一種：</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ATTENDEE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_ORGANIZER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_PERFORMER}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#RELATIONSHIP_SPEAKER}</li>
+    </ul>
+    </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_TYPE}</td>
+    <td><p>參與者的類型。可以是以下其中一種： </p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_REQUIRED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#TYPE_OPTIONAL}</li>
+    </ul></td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS}</td>
+    <td><p>參與者的出席狀態。可以是以下其中一種：</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_ACCEPTED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_DECLINED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_INVITED}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_NONE}</li>
+        <li>{@link android.provider.CalendarContract.AttendeesColumns#ATTENDEE_STATUS_TENTATIVE}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-attendees">新增參與者</h3>
+
+<p>以下是將單一參與者新增至活動的範例。請注意，
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} 為必要的：
+</p>
+
+<pre>
+long eventID = 202;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Attendees.ATTENDEE_NAME, &quot;Trevor&quot;);
+values.put(Attendees.ATTENDEE_EMAIL, &quot;trevor@example.com&quot;);
+values.put(Attendees.ATTENDEE_RELATIONSHIP, Attendees.RELATIONSHIP_ATTENDEE);
+values.put(Attendees.ATTENDEE_TYPE, Attendees.TYPE_OPTIONAL);
+values.put(Attendees.ATTENDEE_STATUS, Attendees.ATTENDEE_STATUS_INVITED);
+values.put(Attendees.EVENT_ID, eventID);
+Uri uri = cr.insert(Attendees.CONTENT_URI, values);
+</pre>
+
+<h2 id="reminders">提醒表格</h2>
+
+<p>{@link android.provider.CalendarContract.Reminders} 表格的每一列都代表活動的單一提醒。
+呼叫 
+{@link android.provider.CalendarContract.Reminders#query(android.content.ContentResolver, long, java.lang.String[]) query()} 會傳回指定 
+{@link android.provider.CalendarContract.AttendeesColumns#EVENT_ID} 活動的提醒清單。
+</p>
+
+
+<p>下表列出提醒可寫入的欄位。插入新的提醒時，必須包括所有項目。
+請注意，同步配接器會在 {@link
+android.provider.CalendarContract.Calendars} 表格中指出同步配接器支援的提醒類型。
+如需詳細資料，請參閱 
+{@link android.provider.CalendarContract.CalendarColumns#ALLOWED_REMINDERS}。
+</p>
+
+
+<table>
+  <tr>
+    <th>常數</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#EVENT_ID}</td>
+    <td>活動的 ID。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#MINUTES}</td>
+    <td>活動之前的幾分鐘要觸發提醒。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.RemindersColumns#METHOD}</td>
+    <td><p>鬧鐘方法 (如伺服器上所設定)。可以是以下其中一種：</p>
+      <ul>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_ALERT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_DEFAULT}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_EMAIL}</li>
+        <li>{@link android.provider.CalendarContract.RemindersColumns#METHOD_SMS}</li>
+    </ul></td>
+  </tr>
+</table>
+
+<h3 id="add-reminders">新增提醒</h3>
+
+<p>此範例會在活動新增提醒。此提醒會在活動 15 分鐘之前觸發。
+</p>
+<pre>
+long eventID = 221;
+...
+ContentResolver cr = getContentResolver();
+ContentValues values = new ContentValues();
+values.put(Reminders.MINUTES, 15);
+values.put(Reminders.EVENT_ID, eventID);
+values.put(Reminders.METHOD, Reminders.METHOD_ALERT);
+Uri uri = cr.insert(Reminders.CONTENT_URI, values);</pre>
+
+<h2 id="instances">執行個體表格</h2>
+
+<p>
+{@link android.provider.CalendarContract.Instances} 表格內含活動每次發生的開始和結束時間。
+此表格的每一列代表單一活動發生。
+執行個體表格無法寫入，僅供查詢活動的發生。
+ </p>
+
+<p>下表列出您可以針對執行個體查詢的欄位。請注意，時區是由 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_TYPE} 和 
+{@link android.provider.CalendarContract.CalendarCache#KEY_TIMEZONE_INSTANCES} 所定義。
+
+</p>
+
+
+<table>
+  <tr>
+    <th>常數</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#BEGIN}</td>
+    <td>執行個體的開始時間，以 UTC 毫秒數為單位。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END}</td>
+    <td>執行個體的結束時間，以 UTC 毫秒數為單位。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_DAY}</td>
+    
+    <td>執行個體的凱撒曆結束日，與「日曆」的時區相關。
+ 
+    
+</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#END_MINUTE}</td>
+    
+    <td>執行個體的結束分鐘，從「日曆」時區的午夜開始計算。
+</td>
+    
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#EVENT_ID}</td>
+    <td>此執行個體活動的 <code>_ID</code>。</td>
+  </tr>
+    <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_DAY}</td>
+    <td>執行個體的凱撒曆開始日，與「日曆」的時區相關。 
+ </td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.Instances#START_MINUTE}</td>
+    
+    <td>執行個體的開始分鐘，從午夜開始計算，與「日曆」的時區相關。
+ 
+</td>
+    
+  </tr>
+
+</table>
+
+<h3 id="query-instances">查詢執行個體表格</h3>
+
+<p>如要查詢「執行個體」表格，您需要在 URI 中指定查詢的範圍時間。在本範例中，{@link android.provider.CalendarContract.Instances} 是透過 {@link android.provider.CalendarContract.EventsColumns} 介面的實作，得以存取 {@link
+android.provider.CalendarContract.EventsColumns#TITLE} 欄位。
+
+
+換句話說，{@link
+android.provider.CalendarContract.EventsColumns#TITLE} 是透過資料庫視觀表所傳回，而不是透過查詢原始 {@link
+android.provider.CalendarContract.Instances} 表格。
+
+</p>
+
+<pre>
+private static final String DEBUG_TAG = "MyActivity";
+public static final String[] INSTANCE_PROJECTION = new String[] {
+    Instances.EVENT_ID,      // 0
+    Instances.BEGIN,         // 1
+    Instances.TITLE          // 2
+  };
+  
+// The indices for the projection array above.
+private static final int PROJECTION_ID_INDEX = 0;
+private static final int PROJECTION_BEGIN_INDEX = 1;
+private static final int PROJECTION_TITLE_INDEX = 2;
+...
+
+// Specify the date range you want to search for recurring
+// event instances
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2011, 9, 23, 8, 0);
+long startMillis = beginTime.getTimeInMillis();
+Calendar endTime = Calendar.getInstance();
+endTime.set(2011, 10, 24, 8, 0);
+long endMillis = endTime.getTimeInMillis();
+  
+Cursor cur = null;
+ContentResolver cr = getContentResolver();
+
+// The ID of the recurring event whose instances you are searching
+// for in the Instances table
+String selection = Instances.EVENT_ID + " = ?";
+String[] selectionArgs = new String[] {"207"};
+
+// Construct the query with the desired date range.
+Uri.Builder builder = Instances.CONTENT_URI.buildUpon();
+ContentUris.appendId(builder, startMillis);
+ContentUris.appendId(builder, endMillis);
+
+// Submit the query
+cur =  cr.query(builder.build(), 
+    INSTANCE_PROJECTION, 
+    selection, 
+    selectionArgs, 
+    null);
+   
+while (cur.moveToNext()) {
+    String title = null;
+    long eventID = 0;
+    long beginVal = 0;    
+    
+    // Get the field values
+    eventID = cur.getLong(PROJECTION_ID_INDEX);
+    beginVal = cur.getLong(PROJECTION_BEGIN_INDEX);
+    title = cur.getString(PROJECTION_TITLE_INDEX);
+              
+    // Do something with the values. 
+    Log.i(DEBUG_TAG, "Event:  " + title); 
+    Calendar calendar = Calendar.getInstance();
+    calendar.setTimeInMillis(beginVal);  
+    DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
+    Log.i(DEBUG_TAG, "Date: " + formatter.format(calendar.getTime()));    
+    }
+ }</pre>
+
+<h2 id="intents">日曆意圖</h2>
+<p>您的應用程式不需要<a href="#manifest">權限</a>，即可讀取和寫入日曆資料。您可以改用 Android「日曆」應用程式支援的意圖，將讀取和寫入操作交給您的應用程式。下表列出「日曆供應程式」支援的意圖：</p>
+<table>
+  <tr>
+    <th>動作</th>
+    <th>URI</th>
+
+    <th>描述</th>
+    <th>Extra</th>
+  </tr>
+  <tr>
+    <td><br>
+    {@link android.content.Intent#ACTION_VIEW VIEW} <br></td>
+    <td><p><code>content://com.android.calendar/time/&lt;ms_since_epoch&gt;</code></p>
+    您也可以使用 
+{@link android.provider.CalendarContract#CONTENT_URI CalendarContract.CONTENT_URI} 參照 URI。如需使用此意圖的範例，請參閱<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">使用意圖檢視日曆資料</a>。
+ 
+
+    </td>
+    <td>開啟日曆到 <code>&lt;ms_since_epoch&gt;</code> 指定的時間。</td>
+    <td>無。</td>
+  </tr>
+  <tr>
+    <td><p>{@link android.content.Intent#ACTION_VIEW VIEW} </p>
+
+     </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+    您也可以使用 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} 參照 URI。如需使用此意圖的範例，請參閱<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-view">使用意圖檢視日曆資料</a>。
+
+    
+    </td>
+    <td>檢視 <code>&lt;event_id&gt;</code> 指定的活動。</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} </td>
+    <td><p><code>content://com.android.calendar/events/&lt;event_id&gt;</code></p>
+    
+  您也可以使用 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} 參照 URI。如需使用此意圖的範例，請參閱<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-edit">使用意圖編輯活動</a>。
+
+    
+    
+    </td>
+    <td>編輯 <code>&lt;event_id&gt;</code> 指定的活動。</td>
+
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME CalendarContract.EXTRA_EVENT_BEGIN_TIME}<br>
+      <br>
+      <br>
+    {@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME CalendarContract.EXTRA_EVENT_END_TIME}</td>
+  </tr>
+
+  <tr>
+    <td>{@link android.content.Intent#ACTION_EDIT EDIT} <br>
+    <br>
+    {@link android.content.Intent#ACTION_INSERT INSERT} </td>
+    <td><p><code>content://com.android.calendar/events</code></p>
+    
+   您也可以使用 
+{@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI} 參照 URI。如需使用此意圖的範例，請參閱<a href="{@docRoot}guide/topics/providers/calendar-provider.html#intent-insert">使用意圖插入活動</a>。
+
+    
+    </td>
+
+    <td>建立活動。</td>
+    <td>Extra 列於下表。</td>
+  </tr>
+</table>
+
+<p>下表列出「日曆供應程式」支援的意圖 Extra：
+</p>
+<table>
+  <tr>
+    <th>意圖 Extra</th>
+    <th>描述</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#TITLE Events.TITLE}</td>
+    <td>活動的名稱。</td>
+  </tr>
+  <tr>
+  
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME}</td>
+    <td>活動開始時間，以紀元元年 1 月 1 日零時起算經過的毫秒數為單位。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME}</td>
+    
+    <td>活動結束時間，以紀元元年 1 月 1 日零時起算經過的毫秒數為單位。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract#EXTRA_EVENT_ALL_DAY
+CalendarContract.EXTRA_EVENT_ALL_DAY}</td>
+    
+    <td>指出活動為整天的布林值。值可以是 
+<code>true</code> 或 <code>false</code>。</td> </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#EVENT_LOCATION
+Events.EVENT_LOCATION}</td>
+    
+    <td>活動的地點。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#DESCRIPTION
+Events.DESCRIPTION}</td>
+    
+    <td>活動描述。</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL}</td>
+    <td>邀請對象的電子郵件地址 (以逗號分隔的清單)。</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#RRULE Events.RRULE}</td>
+    <td>活動的週期規則。</td>
+  </tr>
+  <tr>
+    <td>
+    {@link android.provider.CalendarContract.EventsColumns#ACCESS_LEVEL
+Events.ACCESS_LEVEL}</td>
+    
+    <td>活動為私人或公開性質。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.CalendarContract.EventsColumns#AVAILABILITY
+Events.AVAILABILITY}</td>
+    
+    <td>活動要視為忙碌或有空 (可以安排其他活動) 的時間。</td>
+    
+</table> 
+<p>以下各節說明如何使用這些意圖。</p>
+
+
+<h3 id="intent-insert">使用意圖插入活動</h3>
+
+<p>使用 {@link android.content.Intent#ACTION_INSERT INSERT} 意圖讓您的應用程式將活動插入工作交給「日曆」本身。使用此方式，您的應用程式就不需要將 {@link
+android.Manifest.permission#WRITE_CALENDAR} 權限包括在其<a href="#manifest">宣示說明檔案</a>中。
+
+</p>
+
+  
+<p>使用者執行採用此方式的應用程式時，此應用程式會將使用者
+傳送到「日曆」以完成新增活動的操作。{@link
+android.content.Intent#ACTION_INSERT INSERT} 意圖會使用額外的欄位將「日曆」中活動的詳細資訊，預先填入表單。
+然後，使用者可以取消活動、視需要編輯表單或將活動儲存到其日曆。
+
+</p>
+  
+
+
+<p>以下的程式碼片段會在 2012 年 1 月 19 日安排活動，此活動的期間是從上午 7:30 到上午 8:30。
+請注意下列關於此程式碼片段的事項：</p>
+
+<ul>
+  <li>它指定 {@link android.provider.CalendarContract.Events#CONTENT_URI Events.CONTENT_URI}  作為 URI。
+</li>
+  
+  <li>它使用 {@link
+android.provider.CalendarContract#EXTRA_EVENT_BEGIN_TIME
+CalendarContract.EXTRA_EVENT_BEGIN_TIME} 和 {@link
+android.provider.CalendarContract#EXTRA_EVENT_END_TIME
+CalendarContract.EXTRA_EVENT_END_TIME} 額外欄位，將活動的時間預先填入表單。
+這些時間值必須以自紀元元年 1 月 1 日零時起算經過的 UTC 毫秒數為單位。
+</li>
+  
+  <li>它使用 {@link android.content.Intent#EXTRA_EMAIL Intent.EXTRA_EMAIL} 額外欄位提供逗號分隔的受邀者清單 (以電子郵件地址指定)。
+</li>
+  
+</ul>
+<pre>
+Calendar beginTime = Calendar.getInstance();
+beginTime.set(2012, 0, 19, 7, 30);
+Calendar endTime = Calendar.getInstance();
+endTime.set(2012, 0, 19, 8, 30);
+Intent intent = new Intent(Intent.ACTION_INSERT)
+        .setData(Events.CONTENT_URI)
+        .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
+        .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
+        .putExtra(Events.TITLE, &quot;Yoga&quot;)
+        .putExtra(Events.DESCRIPTION, &quot;Group class&quot;)
+        .putExtra(Events.EVENT_LOCATION, &quot;The gym&quot;)
+        .putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)
+        .putExtra(Intent.EXTRA_EMAIL, &quot;rowan@example.com,trevor@example.com&quot;);
+startActivity(intent);
+</pre>
+
+<h3 id="intent-edit">使用意圖編輯活動</h3>
+
+<p>您可以直接更新活動，如同<a href="#update-event">更新活動</a>所述。不過，使用 {@link
+android.content.Intent#ACTION_EDIT EDIT} 意圖可以讓不具備權限的應用程式將活動編輯操作交給「日曆」應用程式。使用者在「日曆」中完成活動的編輯操作時，使用者就會回到原來的應用程式。
+
+
+</p> <p>以下的意圖範例會為指定的活動設定名稱，然後讓使用者在「日曆」中編輯此活動。
+</p>
+
+
+<pre>long eventID = 208;
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_EDIT)
+    .setData(uri)
+    .putExtra(Events.TITLE, &quot;My New Title&quot;);
+startActivity(intent);</pre>
+
+<h3 id="intent-view">使用意圖檢視日曆資料</h3>
+<p>「日曆供應程式」提供兩種不同的方式來使用 {@link android.content.Intent#ACTION_VIEW VIEW} 意圖：</p>
+<ul>
+  <li>開啟「日曆」到特定的日期。</li>
+  <li>檢視某個活動。</li>
+
+</ul>
+<p>以下的範例顯示如何開啟「日曆」到特定的日期：</p>
+<pre>// A date-time specified in milliseconds since the epoch.
+long startMillis;
+...
+Uri.Builder builder = CalendarContract.CONTENT_URI.buildUpon();
+builder.appendPath(&quot;time&quot;);
+ContentUris.appendId(builder, startMillis);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+    .setData(builder.build());
+startActivity(intent);</pre>
+
+<p>以下的範例顯示如何開啟某個活動以便檢視。</p>
+<pre>long eventID = 208;
+...
+Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
+Intent intent = new Intent(Intent.ACTION_VIEW)
+   .setData(uri);
+startActivity(intent);
+</pre>
+
+
+<h2 id="sync-adapter">同步配接器</h2>
+
+
+<p>應用程式和同步配接器存取「日曆供應程式」的方式只有些微差異：
+</p>
+
+<ul>
+  <li>同步配接器需要透過將 {@link android.provider.CalendarContract#CALLER_IS_SYNCADAPTER} 設定為 <code>true</code>，以指出這是同步配接器。</li>
+  
+  
+  <li>同步配接器需要在 URI 中提供 {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_NAME} 和 {@link
+android.provider.CalendarContract.SyncColumns#ACCOUNT_TYPE} 作為查詢參數。 </li>
+  
+  <li>同步配接器與應用程式或小工具相比，有更多欄的寫入權限。
+  例如，應用程式只能修改日曆的一些特性，例如名稱、顯示名稱、能見度設定，以及日曆是否同步。
+
+相較之下，同步配接器不只能存取這些欄，還可以存取很多其他欄，例如日曆色彩、時區、存取級別、位置等等。然而，同步配接器受限於所指定的 <code>ACCOUNT_NAME</code> 和 
+<code>ACCOUNT_TYPE</code>。
+
+</li> </ul>
+
+<p>以下是您可用於傳回 URI 的協助程式方法，以便與同步配接器搭配使用：</p>
+<pre> static Uri asSyncAdapter(Uri uri, String account, String accountType) {
+    return uri.buildUpon()
+        .appendQueryParameter(android.provider.CalendarContract.CALLER_IS_SYNCADAPTER,&quot;true&quot;)
+        .appendQueryParameter(Calendars.ACCOUNT_NAME, account)
+        .appendQueryParameter(Calendars.ACCOUNT_TYPE, accountType).build();
+ }
+</pre>
+<p>如需實作同步配接器的範例 (並非與「日曆」特別相關)，請參閱 
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a>。
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/providers/contacts-provider.jd b/docs/html-intl/intl/zh-tw/guide/topics/providers/contacts-provider.jd
new file mode 100644
index 0000000..b5f8880
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/providers/contacts-provider.jd
@@ -0,0 +1,2356 @@
+page.title=聯絡人供應程式
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<h2>快速檢視</h2>
+<ul>
+    <li>Android 關於人員資訊的存放庫。</li>
+    <li>
+        與網頁同步。
+    </li>
+    <li>
+        整合社交串流資料。
+    </li>
+</ul>
+<h2>本文件內容</h2>
+<ol>
+    <li>
+        <a href="#InformationTypes">聯絡人供應程式組織架構</a>
+    </li>
+    <li>
+        <a href="#RawContactBasics">原始聯絡人</a>
+    </li>
+    <li>
+        <a href="#DataBasics">資料</a>
+    </li>
+    <li>
+        <a href="#ContactBasics">聯絡人</a>
+    </li>
+    <li>
+        <a href="#Sources">來自同步配接器的資料</a>
+    </li>
+    <li>
+        <a href="#Permissions">必要權限</a>
+    </li>
+    <li>
+        <a href="#UserProfile">使用者設定檔</a>
+    </li>
+    <li>
+        <a href="#ContactsProviderMetadata">聯絡人供應程式中繼資料</a>
+    </li>
+    <li>
+        <a href="#Access">聯絡人供應程式存取</a>
+    <li>
+    </li>
+    <li>
+        <a href="#SyncAdapters">聯絡人供應程式同步配接器</a>
+    </li>
+    <li>
+        <a href="#SocialStream">社交串流資料</a>
+    </li>
+    <li>
+        <a href="#AdditionalFeatures">其他聯絡人供應程式功能</a>
+    </li>
+</ol>
+<h2>重要類別</h2>
+<ol>
+    <li>{@link android.provider.ContactsContract.Contacts}</li>
+    <li>{@link android.provider.ContactsContract.RawContacts}</li>
+    <li>{@link android.provider.ContactsContract.Data}</li>
+    <li>{@code android.provider.ContactsContract.StreamItems}</li>
+</ol>
+<h2>相關範例</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}resources/samples/ContactManager/index.html">聯絡人管理員
+</a>
+
+    </li>
+    <li>
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">
+範例同步配接器</a>
+    </li>
+</ol>
+<h2>另請參閱</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        內容供應程式基本概念
+        </a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    聯絡人供應程式是強大且有彈性的 Android 元件，負責管理裝置上與人員相關的中央資料存放庫。
+聯絡人供應程式是裝置中聯絡人應用程式的資料來源，您也可以在自己的應用程式中存取其資料，並且在裝置和線上服務之間傳輸資料。
+
+供應程式內含範圍寬廣的資料來源，而且嘗試管理每個人愈來愈多的資料，組織架構因而變得很複雜。
+
+基於這個原因，供應程式的 API 包括豐富的合約類別和介面，可幫助資料的擷取和修改。
+
+
+</p>
+<p>
+    本指南描述以下各項：
+</p>
+    <ul>
+        <li>
+            基本的供應程式結構。
+        </li>
+        <li>
+            如何從供應程式擷取資料。
+        </li>
+        <li>
+            如何修改供應程式中的資料。
+        </li>
+        <li>
+            如何針對從伺服器到聯絡人供應程式的資料同步編寫同步配接器。
+
+        </li>
+    </ul>
+<p>
+    本指南假設您瞭解 Android 內容供應程式基本概念。如要更瞭解 Android 內容供應程式的詳細資訊，請閱讀<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">內容供應程式基本概念</a>指南。
+
+
+<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">範例同步配接器</a>範例應用程式是使用同步配接器在聯絡人供應程式和 Google 網路服務代管的範例應用程式之間傳輸資料的例子。
+
+
+
+</p>
+<h2 id="InformationTypes">聯絡人供應程式組織架構</h2>
+<p>
+    聯絡人供應程式是 Android 內容供應程式元件。負責維護三種與人有關的資料類型，每一種類型都會對應到供應程式所提供的表格，如圖 1 所示：
+
+
+</p>
+<img src="{@docRoot}images/providers/contacts_structure.png" alt="" height="364" id="figure1" />
+<p class="img-caption">
+  <strong>圖 1.</strong>聯絡人供應程式表格結構。
+</p>
+<p>
+    這三個表格通常會以其合約類別的名稱來稱呼。類別會定義內容 URI 的常數、欄名稱以及表格所使用的欄值：
+
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Contacts} 表格
+    </dt>
+    <dd>
+        根據原始聯絡人列的彙總，代表不同人員的列。
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.RawContacts} 表格
+    </dt>
+    <dd>
+        內含人員資料摘要的列，針對使用者帳戶和類型。
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data} 表格
+    </dt>
+    <dd>
+        內含原始聯絡人詳細資料的列，例如電子郵件地址或電話號碼。
+    </dd>
+</dl>
+<p>
+    合約類別在 {@link android.provider.ContactsContract} 中呈現的其他表格都是輔助表格。聯絡人供應程式使用輔助表格來管理其操作，或支援裝置中聯絡人或電話應用程式的特定功能。
+
+
+</p>
+<h2 id="RawContactBasics">原始聯絡人</h2>
+<p>
+    原始聯絡人是來自單一帳戶類型和帳戶名稱的人員資料。
+因為聯絡人供應程式允許一個人有多種線上服務做為資料來源，所以聯絡人供應程式可以讓同一個人有多個原始聯絡人。
+
+    多個原始聯絡人也可以讓使用者，將相同帳戶類型中多個帳戶的人員資料合併。
+
+</p>
+<p>
+    原始聯絡人的大部分資料不是儲存在
+{@link android.provider.ContactsContract.RawContacts} 表格，而是儲存在 {@link android.provider.ContactsContract.Data} 表格中的一或多個列。
+每個資料列都有一欄
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID Data.RAW_CONTACT_ID}，當中包含其上層資料列 {@link android.provider.ContactsContract.RawContacts} 的 {@code android.provider.BaseColumns#_ID RawContacts._ID} 值。
+
+
+</p>
+<h3 id="RawContactsColumns">重要的原始聯絡人欄</h3>
+<p>
+    {@link android.provider.ContactsContract.RawContacts} 表格中的重要欄列於表 1。
+請詳閱表格下方的注意事項：
+</p>
+<p class="table-caption" id="table1">
+    <strong>表 1.</strong>重要的原始聯絡人欄。
+</p>
+<table>
+    <tr>
+        <th scope="col">欄名稱</th>
+        <th scope="col">用途</th>
+        <th scope="col">備註</th>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_NAME}
+        </td>
+        <td>
+            帳戶類型 (此原始聯絡人的來源) 的帳戶名稱。
+            例如，Google 帳戶的帳戶名稱是裝置擁有者的其中一個 Gmail 地址。
+請參閱下一個項目，進一步瞭解
+ {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}。
+
+        </td>
+        <td>
+            不同的帳戶類型的名稱格式各不相同。帳戶名稱不一定是電子郵件地址。
+
+        </td>
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.SyncColumns#ACCOUNT_TYPE}
+        </td>
+        <td>
+            帳戶類型是此原始聯絡人的來源。例如，Google 帳戶的帳戶類型為 <code>com.google</code>。
+一定要將帳戶類型加上您所擁有或控制網域的網域識別碼。
+這樣可以確認您的帳戶類型是唯一的。
+
+        </td>
+        <td>
+            提供聯絡人資料的帳戶類型通常有關聯的同步配接器，可以與聯絡人供應程式同步。
+
+    </tr>
+    <tr>
+        <td>
+            {@link android.provider.ContactsContract.RawContactsColumns#DELETED}
+        </td>
+        <td>
+            原始聯絡人的「已刪除」旗標。
+        </td>
+        <td>
+            此旗標讓聯絡人供應程式可以在內部維護列，直到同步配接器從其伺服器刪除該列，最後從存放庫刪除該列。
+
+
+        </td>
+    </tr>
+</table>
+<h4>備註</h4>
+<p>
+    以下是有關
+ {@link android.provider.ContactsContract.RawContacts} 表格的注意事項：
+</p>
+<ul>
+    <li>
+        原始聯絡人的名稱不是儲存於本身在
+{@link android.provider.ContactsContract.RawContacts} 的列，而是儲存在 {@link android.provider.ContactsContract.Data} 表格的
+ {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 列中。
+原始聯絡人在 {@link android.provider.ContactsContract.Data} 表格中只有一列這種類型。
+
+    </li>
+    <li>
+        <strong>注意：</strong>如要使用您在原始聯絡人列中自己的帳戶資料，必須先向 {@link android.accounts.AccountManager} 註冊。
+如要註冊，請提示使用者將帳戶類型及其帳戶名稱新增至帳戶清單。
+如果沒有這麼做，聯絡人供應程式將自動刪除您的原始聯絡人列。
+
+        <p>
+            例如，如果您希望應用程式維護網域為 {@code com.example.dataservice} 網頁式服務的聯絡人資料，此服務的使用者帳戶是 {@code becky.sharp@dataservice.example.com}，這名使用者必須先新增帳戶「類型」({@code com.example.dataservice}) 和帳戶「名稱」
+({@code becky.smart@dataservice.example.com})，您的應用程式才能新增原始聯絡人列。
+
+
+
+            您可以在文件中向使用者說明此需求，或提示使用者同時新增類型和名稱。
+帳戶類型和帳戶名稱在下一節有更詳細的說明。
+
+    </li>
+</ul>
+<h3 id="RawContactsExample">原始聯絡人資料的來源</h3>
+<p>
+    如要瞭解原始聯絡人的運作方式，假設一位使用者 Emily Dickinson 在其裝置上定義了下列三個使用者帳戶：
+
+</p>
+<ul>
+    <li><code>emily.dickinson@gmail.com</code></li>
+    <li><code>emilyd@gmail.com</code></li>
+    <li>Twitter 帳戶「belle_of_amherst」</li>
+</ul>
+<p>
+    此使用者在「帳戶」<em></em>設定中為這三個帳戶啟用了「同步聯絡人」<em></em>。
+
+</p>
+<p>
+    假設 Emily Dickinson 開啟瀏覽器視窗，使用
+ <code>emily.dickinson@gmail.com</code>登入 Gmail，開啟[聯絡人] 並新增「Thomas Higginson」。
+接著，她使用
+ <code>emilyd@gmail.com</code>登入 Gmail，並寄送電子郵件給「Thomas Higginson」(系統已自動將他新增為聯絡人)。
+她也在 Twitter 上關注「colonel_tom」(Thomas Higginson 的 Twitter ID)。
+
+</p>
+<p>
+    聯絡人供應程式建立三個原始聯絡人的方式如下：
+</p>
+<ol>
+    <li>
+        「Thomas Higginson」的原始聯絡人與 <code>emily.dickinson@gmail.com</code> 相關聯。
+        該使用者帳戶類型為 Google。
+    </li>
+    <li>
+        「Thomas Higginson」的第二個原始聯絡人與 <code>emilyd@gmail.com</code> 相關聯。
+        該使用者帳戶類型也是 Google。儘管第二個原始聯絡人的名稱與前一個名稱完全相同，但此人是針對不同使用者帳戶所新增的。
+
+
+    </li>
+    <li>
+        「Thomas Higginson」的第三個原始聯絡人與「belle_of_amherst」相關聯。該使用者帳戶類型是 Twitter。
+
+    </li>
+</ol>
+<h2 id="DataBasics">資料</h2>
+<p>
+    如前所述，原始聯絡人的資料是儲存在
+ {@link android.provider.ContactsContract.Data} 列，而此列會連結到原始聯絡人的
+ <code>_ID</code> 值。這樣讓原始聯絡人的相同資料類型可以有多個執行個體，例如電子郵件地址或電話號碼。
+例如，如果{@code emilyd@gmail.com} 的 "Thomas Higginson" (Thomas Higginson 的原始聯絡人列，與 Google 帳戶 <code>emilyd@gmail.com</code> 關聯) 的住家電子郵件地址為
+ <code>thigg@gmail.com</code>，而工作電子郵件地址為
+ <code>thomas.higginson@gmail.com</code>，則聯絡人供應程式會儲存這兩個電子郵件地址列，並將兩者連結到原始聯絡人。
+
+
+
+</p>
+<p>
+    請注意，此單一表格中儲存了不同類型的資料。{@link android.provider.ContactsContract.Data} 表格中可以看到顯示名稱、電話號碼、電子郵件、郵寄地址、相片以及網站詳細資料等列。
+
+為了協助管理這些內容，
+{@link android.provider.ContactsContract.Data} 表格有一些欄附有描述性名稱，而其他欄則有一般名稱。
+描述性名稱欄的內容有相同的意義 (無論列中的資料類型為何)，而一般名稱欄的內容則視資料的類型會有不同的意義。
+
+
+</p>
+<h3 id="DescriptiveColumns">描述性欄名稱</h3>
+<p>
+    以下提供幾個描述性欄名稱範例：
+</p>
+<dl>
+    <dt>
+        {@link android.provider.ContactsContract.Data#RAW_CONTACT_ID}
+    </dt>
+    <dd>
+        原始聯絡人 <code>_ID</code> 欄的資料值。
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.Data#MIMETYPE}
+    </dt>
+    <dd>
+        儲存在此列中的資料類型，以自訂 MIME 類型表示。聯絡人供應程式會使用
+ {@link android.provider.ContactsContract.CommonDataKinds} 子類別中定義的MIME 類型。
+這些 MIME 類型屬開放原始碼，可以和聯絡人供應程式搭配的任何應用程式或同步配接器都可以加以使用。
+
+    </dd>
+    <dt>
+        {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY}
+    </dt>
+    <dd>
+        如果原始聯絡人的此類型資料列出現多次，則
+ {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} 欄會在包含主要資料類型的資料列加上旗標。
+例如，使用者長按聯絡人的電話號碼並選取 [設為預設值]<strong></strong>，則包含該號碼的 {@link android.provider.ContactsContract.Data} 列就會將它的 {@link android.provider.ContactsContract.DataColumns#IS_PRIMARY} 欄設為零以外的值。
+
+
+
+
+    </dd>
+</dl>
+<h3 id="GenericColumns">一般欄名稱</h3>
+<p>
+    一般欄有 15 個 (名稱為 <code>DATA1</code> 到
+ <code>DATA15</code>)，系統通常會提供這些欄。另外有 4 個一般欄(<code>SYNC1</code> 到 <code>SYNC4</code>) 只能透過同步配接器使用。
+
+不管列中的資料類型為何，一定可以使用一般欄名稱常數。
+
+</p>
+<p>
+    <code>DATA1</code> 欄會建立索引。聯絡人供應程式一律會使用此欄的資料，而且供應程式預期此欄為最常查詢的目標。
+例如，在電子郵件列中，此欄內含實際的電子郵件地址。
+
+</p>
+<p>
+    一般來說，<code>DATA15</code> 欄會保留用於儲存「二進位大型物件」(BLOB) 資料，例如相片縮圖。
+
+</p>
+<h3 id="TypeSpecificNames">類型特定的欄名稱</h3>
+<p>
+    為了要協助欄處理具有特定類型的列，聯絡人供應程式也提供類型特定的欄名稱常數。這些常數會在
+ {@link android.provider.ContactsContract.CommonDataKinds}的子類別中定義。
+常數只是為相同欄名稱指定不同的常數名稱，以協助您存取列中特定類型的資料。
+
+
+</p>
+<p>
+    例如，{@link android.provider.ContactsContract.CommonDataKinds.Email} 類別定義了 {@link android.provider.ContactsContract.Data} 列的類型特定欄名稱常數。此列內含 MIME 類型 {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+Email.CONTENT_ITEM_TYPE}。
+
+
+類別含有電子郵件地址欄的常數
+ {@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS}。
+
+ {@link android.provider.ContactsContract.CommonDataKinds.Email#ADDRESS}的實際值是「data1」。此值與欄的一般名稱相同。
+
+</p>
+<p class="caution">
+    <strong>注意：</strong>如果
+ {@link android.provider.ContactsContract.Data} 表格使用供應程式預先定義 MIME 類型的其中一種，請不要將您自訂的資料新增至此表格。
+假如將您自訂的資料新增至此表格，可能會遺失資料或讓供應程式發生故障。
+例如，您不應該將含有 MIME 類型 {@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_ITEM_TYPE
+Email.CONTENT_ITEM_TYPE} (內含使用者名稱，而不是電子郵件地址) 的列新增至 <code>DATA1</code> 欄。
+
+如果您的列使用自訂 MIME 類型，那麼您可以自行定義專屬的類型特定的欄名稱，並按照您的需求使用這些欄。
+
+</p>
+<p>
+    圖 2 顯示描述性欄和資料欄顯示在
+ {@link android.provider.ContactsContract.Data} 列的樣式，以及類型特定欄名稱與一般欄名稱的「重疊」方式。
+
+</p>
+<img src="{@docRoot}images/providers/data_columns.png" alt="How type-specific column names map to generic column names" height="311" id="figure2" />
+<p class="img-caption">
+  <strong>圖 2.</strong>特定類型欄名稱與一般欄名稱。
+</p>
+<h3 id="ColumnMaps">特定類型欄名稱類別</h3>
+<p>
+    表 2 列出最常用的特定類型欄名稱類別：
+</p>
+<p class="table-caption" id="table2">
+  <strong>表 2.</strong>特定類型欄名稱類別</p>
+<table>
+  <tr>
+    <th scope="col">對應類別</th>
+    <th scope="col">資料類型</th>
+    <th scope="col">備註</th>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredName}</td>
+    <td>原始聯絡人 (與此資料列相關聯) 的名稱資料。</td>
+    <td>原始聯絡人只有一列此資料。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Photo}</td>
+    <td>原始聯絡人 (與此資料列相關聯) 的主要相片。</td>
+    <td>原始聯絡人只有一列此資料。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.Email}</td>
+    <td>原始聯絡人 (與此資料列相關聯) 的電子郵件地址。</td>
+    <td>原始聯絡人可以有多個電子郵件地址。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal}</td>
+    <td>原始聯絡人 (與此資料列相關聯) 的郵寄地址。</td>
+    <td>原始聯絡人可以有多個郵寄地址。</td>
+  </tr>
+  <tr>
+    <td>{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership}</td>
+    <td>將原始聯絡人連結至聯絡人供應程式內其中一個群組的識別碼。</td>
+    <td>
+        群組是帳戶類型和帳戶名稱的選用功能。如要進一步瞭解群組，請參閱<a href="#Groups">聯絡人群組</a>。
+
+    </td>
+  </tr>
+</table>
+<h3 id="ContactBasics">聯絡人</h3>
+<p>
+    聯絡人供應程式會合併所有帳戶類型和帳戶名稱的原始聯絡人，而成為「聯絡人」<strong></strong>。
+藉此協助使用者顯示及修改針對某個人所收集的所有資料。
+聯絡人供應程式負責建立新的聯絡人列，以及彙總原始聯絡人與現有的聯絡人列。
+應用程式或同步配接器都可以新增聯絡人，而聯絡人列中的某些欄屬於唯讀性質。
+
+</p>
+<p class="note">
+    <strong>注意：</strong>如果您嘗試使用
+ {@link android.content.ContentResolver#insert(Uri,ContentValues) insert()} 將聯絡人新增至聯絡人供應程式，將會收到 {@link java.lang.UnsupportedOperationException} 例外狀況。
+如果您試著更新列為「唯讀」的欄，則會略過此更新作業。
+
+</p>
+<p>
+    如果新增的原始聯絡人與現有的聯絡人都不相符，聯絡人供應程式就會建立新的聯絡人。
+如果現有原始聯絡人的資料在變更後，不再與之前附加的聯絡人相符，則供應程式也會建立新的聯絡人。
+
+如果應用程式或同步配接器建立的新原始聯絡人「符合」<em></em>現有的聯絡人，則新的原始聯絡人會彙總為現有的聯絡人。
+
+
+</p>
+<p>
+    聯絡人供應程式使用 {@link android.provider.ContactsContract.Contacts Contacts} 表格中的聯絡人
+ <code>_ID</code> 欄，將聯絡人列連結到其原始聯絡人列。
+原始聯絡人表格
+ {@link android.provider.ContactsContract.RawContacts} 的 <code>CONTACT_ID</code> 欄，內含聯絡人列 (與每個原始聯絡人列相關聯) 的 <code>_ID</code> 值。
+
+</p>
+<p>
+    {@link android.provider.ContactsContract.Contacts} 表格也有
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} 欄，此為聯絡人列的「永久」連結。
+因為聯絡人供應程式會自動維護聯絡人，它會變更聯絡人列的 {@code android.provider.BaseColumns#_ID} 值，以回應彙總或同步操作。
+
+即使發生這種情況，與聯絡人的
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} 合併的內容 URI {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI} 仍會指向聯絡人列，因此，您可以使用
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY}
+ 來維護「常用聯絡人」等聯絡人的連結。
+
+此欄有自己的格式，與 {@code android.provider.BaseColumns#_ID} 欄的格式無關。
+
+</p>
+<p>
+    圖 3 說明這三個主要表格彼此之間的關係。
+</p>
+<img src="{@docRoot}images/providers/contacts_tables.png" alt="Contacts provider main tables" height="514" id="figure4" />
+<p class="img-caption">
+  <strong>圖 3.</strong>聯絡人、原始聯絡人以及詳細資料表格的關係。
+</p>
+<h2 id="Sources">來自同步配接器的資料</h2>
+<p>
+    使用者將聯絡人資料直接輸入裝置，但資料也會過「同步配接器」從網路服務流入聯絡人供應程式<strong></strong> (同步配接器會自動將資料在裝置和服務之間傳輸)。
+
+同步配接器受到系統的控制、在背景執行，並且會呼叫 {@link android.content.ContentResolver} 方法來管理資料。
+
+
+</p>
+<p>
+    在 Android 中，與同步配接器搭配運作的網路服務，是透過帳戶類型加以識別。
+    每個同步配接器會與一種帳戶類型搭配，但可以支援該類型的多個帳戶名稱。
+帳戶類型和帳戶名稱在<a href="#RawContactsExample">原始聯絡人資料的來源</a>中會有更詳細的說明。
+ 下列定義提供更詳細的資訊，說明帳戶類型和名稱與同步配接器和服務之間的關係。
+
+</p>
+<dl>
+    <dt>
+        帳戶類型
+    </dt>
+    <dd>
+        識別使用者儲存資料的服務。在大部分情況下，使用者必須經過服務的驗證。
+例如，Google 聯絡人是一種帳戶類型，由程式碼 <code>google.com</code> 加以識別。
+此值會對應到
+ {@link android.accounts.AccountManager} 所使用的帳戶類型。
+    </dd>
+    <dt>
+        帳戶名稱
+    </dt>
+    <dd>
+        識別特定帳戶或帳戶類型的登入。Google 聯絡人帳戶與 Google 帳戶相同，都是使用電子郵件地址做為帳戶名稱。
+
+        其他服務可能是以單一文字使用者名稱或數值 ID 做為帳戶名稱。
+    </dd>
+</dl>
+<p>
+    帳戶類型不必是唯一的。使用者可以設定多個 Google 聯絡人帳戶，並將其資料下載至聯絡人供應程式；如果使用者有一組個人帳戶名稱的個人聯絡人，還有另一組工作用的聯絡人，就可能發生此情形。
+
+帳戶名稱通常是唯一的。
+兩者加起來，就可以識別聯絡人供應程式和外部服務之間的特定資料流程。
+
+</p>
+<p>
+    如果您要將服務的資料傳輸到聯絡人供應程式，則需要編寫您自己的同步配接器。
+如要進一步瞭解同步配接器，請參閱<a href="#SyncAdapters">聯絡人供應程式同步配接器</a>。
+
+</p>
+<p>
+    圖 4 顯示聯絡人供應程式在人員相關的資料流程中所扮演的角色。
+在標記為「同步配接器」的方塊中，每個配接器都以其帳戶類型做為標籤。
+</p>
+<img src="{@docRoot}images/providers/ContactsDataFlow.png" alt="Flow of data about people" height="252" id="figure5" />
+<p class="img-caption">
+  <strong>圖 4.</strong>聯絡人供應程式資料流程。
+</p>
+<h2 id="Permissions">必要權限</h2>
+<p>
+    要存取聯絡人供應程式的應用程式必須要求下列權限：
+
+</p>
+<dl>
+    <dt>一或多份表格的讀取權限</dt>
+    <dd>
+        {@link android.Manifest.permission#READ_CONTACTS}，在
+ <code>AndroidManifest.xml</code> 的
+ <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> 元素中，以
+ <code>&lt;uses-permission android:name="android.permission.READ_CONTACTS"&gt;</code> 指定。
+    </dd>
+    <dt>一或多份表格的寫入權限</dt>
+    <dd>
+        {@link android.Manifest.permission#WRITE_CONTACTS}，在
+<code>AndroidManifest.xml</code> 的
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">
+        &lt;uses-permission&gt;</a></code> 元素中，以
+<code>&lt;uses-permission android:name="android.permission.WRITE_CONTACTS"&gt;</code> 指定。
+    </dd>
+</dl>
+<p>
+    這些權限不會延伸到使用者設定檔資料。如要瞭解使用者設定檔及其必要權限，請參閱<a href="#UserProfile">使用者設定檔</a>。
+
+
+</p>
+<p>
+    請記住，使用者的聯絡人資料是個人的敏感資訊。使用者很關心隱私權相關的問題，因此不希望應用程式收集使用者本身或其聯絡人的相關資訊。
+
+    如果沒有明確說明為何需要存取使用者的聯絡人資料，使用者可能會給您的應用程式低評分，或直接拒絕安裝。
+
+</p>
+<h2 id="UserProfile">使用者設定檔</h2>
+<p>
+    {@link android.provider.ContactsContract.Contacts} 表格中有一列內含裝置使用者的設定檔資料，
+此資料描述裝置的 <code>user</code>，而不是其中一位使用者的聯絡人。
+針對使用設定檔的每個系統，設定檔聯絡人列會連結到原始聯絡人列。
+
+    每個設定檔原始聯絡人列可以有多個資料列。{@link android.provider.ContactsContract.Profile} 類別中提供存取使用者設定檔的常數。
+
+</p>
+<p>
+    存取使用者設定檔需要特殊權限。除了
+{@link android.Manifest.permission#READ_CONTACTS} 和
+{@link android.Manifest.permission#WRITE_CONTACTS} 的讀取和寫入權限以外，存取使用者設定檔還分別需要 {@code android.Manifest.permission#READ_PROFILE} 讀取權限和
+{@code android.Manifest.permission#WRITE_PROFILE} 寫入權限。
+
+
+</p>
+<p>
+    請務必將使用者的設定檔視為敏感資訊。
+{@code android.Manifest.permission#READ_PROFILE}權限可以讓您存取裝置上使用者的身分識別資料。
+請務必在應用程式的簡介中告訴使用者，為何需要使用者設定檔存取權限。
+
+</p>
+<p>
+    如要擷取內含使用者的設定檔的聯絡人列，請呼叫 {@link android.content.ContentResolver#query(Uri,String[], String, String[], String)
+ContentResolver.query()}。
+將內容 URI 設為 
+{@link android.provider.ContactsContract.Profile#CONTENT_URI}，並且不要提供任何選取條件。
+您也可以使用此內容 URI 做為擷取原始聯絡人或設定檔資料的基礎 URI。
+例如，以下程式碼片段會擷取設定檔資料：
+</p>
+<pre>
+// Sets the columns to retrieve for the user profile
+mProjection = new String[]
+    {
+        Profile._ID,
+        Profile.DISPLAY_NAME_PRIMARY,
+        Profile.LOOKUP_KEY,
+        Profile.PHOTO_THUMBNAIL_URI
+    };
+
+// Retrieves the profile from the Contacts Provider
+mProfileCursor =
+        getContentResolver().query(
+                Profile.CONTENT_URI,
+                mProjection ,
+                null,
+                null,
+                null);
+</pre>
+<p class="note">
+    <strong>注意：</strong>如果您擷取了多個聯絡人列，而想要判斷其中之一是否為使用者設定檔，請測試該列的
+{@link android.provider.ContactsContract.ContactsColumns#IS_USER_PROFILE} 欄。
+如果聯絡人為使用者設定檔，此欄會設為「1」。
+
+</p>
+<h2 id="ContactsProviderMetadata">聯絡人供應程式中繼資料</h2>
+<p>
+    聯絡人供應程式管理的資料可以追蹤存放庫中聯絡人資料的
+狀態。存放庫相關的中繼資料儲存在不同的位置，包括
+「原始聯絡人」、「資料」以及「聯絡人」表格列，
+{@link android.provider.ContactsContract.Settings} 表格以及
+{@link android.provider.ContactsContract.SyncState} 表格。以下表格說明
+這些中繼資料的作用：
+</p>
+<p class="table-caption" id="table3">
+  <strong>表 3.</strong>聯絡人供應程式的中繼資料</p>
+<table>
+    <tr>
+        <th scope="col">表格</th>
+        <th scope="col">欄</th>
+        <th scope="col">值</th>
+        <th scope="col">意義</th>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.RawContacts}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.SyncColumns#DIRTY}</td>
+        <td>「0」：上次同步後沒有變更。</td>
+        <td rowspan="2">
+            標記裝置上經過變更，且必須同步回伺服器的原始聯絡人。
+Android 應用程式更新列時，聯絡人供應程式會自動設定此值。
+
+            <p>
+                修改原始聯絡人或資料表格的同步配接器一律會將字串{@link android.provider.ContactsContract#CALLER_IS_SYNCADAPTER} 附加到其使用的內容 URI，
+
+藉此防止供應程式將列標記為已變更 (dirty)。
+                否則，同步配接器修改會顯示為本機修改，因而傳送到伺服器，儘管伺服器才是修改的來源。
+
+            </p>
+        </td>
+    </tr>
+    <tr>
+            <td>「1」：上次同步後已變更，需要同步回伺服器。</td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#VERSION}</td>
+        <td>此列的版本號碼。</td>
+        <td>
+            每當列或其相關資料變更時，聯絡人供應程式都會自動增加此值。
+
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.Data}</td>
+        <td>{@link android.provider.ContactsContract.DataColumns#DATA_VERSION}</td>
+        <td>此列的版本號碼。</td>
+        <td>
+            每當資料列變更時，聯絡人供應程式都會自動增加此值。
+
+        </td>
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.RawContacts}</td>
+        <td>{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID}</td>
+        <td>
+            可唯一識別帳戶原始聯絡人的字串值(此帳戶是以此字串值所建立)。
+
+        </td>
+        <td>
+            同步配接器建立新的原始聯絡人時，此欄應設為原始聯絡人的伺服器唯一 ID。
+Android 應用程式建立新的原始聯絡人時，應用程式應將此欄保留空白。
+這樣會提供訊號給同步配接器，要在伺服器上建立新的原始聯絡人，然後取得
+{@link android.provider.ContactsContract.SyncColumns#SOURCE_ID} 值。
+
+            <p>
+                尤其是來源 ID 對於每個帳戶類型必須具備<strong>唯一性</strong>，在同步時應該很穩定：
+
+            </p>
+                <ul>
+                    <li>
+                        唯一：帳戶的每個原始聯絡人都必須有自己的來源 ID。如果沒有強制執行此條件，則聯絡人應用程式會發生問題。
+
+                        請注意，同一個帳戶「類型」<em></em>的兩個原始聯絡人可能會有相同的來源 ID。
+例如，{@code emily.dickinson@gmail.com} 帳戶的原始聯絡人「Thomas Higginson」與
+ {@code emilyd@gmail.com} 帳戶的原始聯絡人「Thomas Higginson」的來源 ID相同。
+
+
+                    </li>
+                    <li>
+                        穩定：來源 ID 是線上服務中原始聯絡人資料的永久部分。
+例如，如果使用者從應用程式設定中清除「聯絡人儲存空間」，然後重新同步，則還原的原始聯絡人的來源 ID 應該與先前相同。
+
+如果沒有強制執行此條件，捷徑將停止運作。
+
+                    </li>
+                </ul>
+        </td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Groups}</td>
+        <td rowspan="2">{@link android.provider.ContactsContract.GroupsColumns#GROUP_VISIBLE}</td>
+        <td>「0」：Android 應用程式 UI 中不應顯示此群組中的聯絡人。</td>
+        <td>
+            有些伺服器可以讓使用者隱藏某些群組中的聯絡人，此欄的設計提供了與這類伺服器的相容性。
+
+        </td>
+    </tr>
+    <tr>
+        <td>「1」：應用程式 UI 中會顯示此群組中的聯絡人。</td>
+    </tr>
+    <tr>
+        <td rowspan="2">{@link android.provider.ContactsContract.Settings}</td>
+        <td rowspan="2">
+            {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE}</td>
+        <td>
+            「0」：針對此帳戶和帳戶類型，Android 應用程式 UI 中不會顯示不屬於群組的聯絡人。
+
+        </td>
+        <td rowspan="2">
+            如果沒有任何原始聯絡人屬於某個群組，則聯絡人預設為不可見(原始聯絡人的群組成員資格是由{@link android.provider.ContactsContract.Data} 表格中的一或多個
+{@link android.provider.ContactsContract.CommonDataKinds.GroupMembership} 列所指出)。
+
+
+            在 {@link android.provider.ContactsContract.Settings} 表格列中為帳戶類型和帳戶設定此旗標，可以強制讓不屬於任何群組的聯絡人成為可見的。
+
+            此旗標的其中一個用途是，顯示伺服器中不屬於任何群組的聯絡人。
+        </td>
+    </tr>
+    <tr>
+        <td>
+            「1」：針對此帳戶和帳戶類型，應用程式 UI 中會顯示不屬於群組的聯絡人。
+
+        </td>
+
+    </tr>
+    <tr>
+        <td>{@link android.provider.ContactsContract.SyncState}</td>
+        <td>(全部)</td>
+        <td>
+            使用此表格儲存同步配接器的中繼資料。
+        </td>
+        <td>
+            使用此表格，您可以儲存同步狀態，以及其他與同步相關、會永久放在裝置上的資料。
+
+        </td>
+    </tr>
+</table>
+<h2 id="Access">聯絡人供應程式存取</h2>
+<p>
+    本節說明從聯絡人供應程式存取資料的指導方針，著重於以下各項：
+
+</p>
+<ul>
+    <li>
+        實體查詢。
+    </li>
+    <li>
+        批次修改。
+    </li>
+    <li>
+        使用意圖進行擷取及修改。
+    </li>
+    <li>
+        資料完整性。
+    </li>
+</ul>
+<p>
+    從同步配接器進行修改，在<a href="#SyncAdapters">聯絡人供應程式同步配接器</a>中也提供更詳細的資訊。
+
+</p>
+<h3 id="Entities">實體查詢</h3>
+<p>
+    因為聯絡人供應程式為階層式表格，擷取某一列及連結至此列的所有「子」列時非常實用。
+例如，如要顯示人員的所有資訊，您可能要擷取單一
+ {@link android.provider.ContactsContract.Contacts} 列的
+所有 {@link android.provider.ContactsContract.RawContacts} 列，或單一
+{@link android.provider.ContactsContract.RawContacts} 列的所有
+{@link android.provider.ContactsContract.CommonDataKinds.Email} 列。
+為了協助此操作，聯絡人供應程式提供<strong>實體</strong>建構，其運作方式就像是資料庫結合各個表格一樣。
+
+
+</p>
+<p>
+    實體就像是一份表格，由上層表格及其下層表格中的選取欄所組成。
+    查詢實體時，您會提供投影 (projection) 和搜尋條件根據該實體可用的欄。
+結果會是 {@link android.database.Cursor}，擷取到的每個下層表格列在其中都會有一列。
+例如，如果您查詢
+{@link android.provider.ContactsContract.Contacts.Entity} 的聯絡人名稱，並且查詢所有 {@link android.provider.ContactsContract.CommonDataKinds.Email} 列中該名稱的所有原始聯絡人，則會取回 {@link android.database.Cursor}，每個 {@link android.provider.ContactsContract.CommonDataKinds.Email} 列都會有一列。
+
+
+
+</p>
+<p>
+    實體簡化查詢。使用實體，您可以一次擷取聯絡人或原始聯絡人的所有聯絡人資料，而不用先查詢父項表格以取得 ID，再以此 ID 查詢子項表格。另外，聯絡人供應程式會在單一交易中處理針對實體的查詢，以確保所擷取的資料在內部的一致性。
+
+
+
+
+</p>
+<p class="note">
+    <strong>注意：</strong>實體通常不會包含上層表格和下層表格的所有欄。
+如果您嘗試使用的欄名稱未列在實體的欄名稱常數中，將會收到 {@link java.lang.Exception}。
+
+</p>
+<p>
+    以下程式碼片段展示如何擷取一位聯絡人的所有原始聯絡人列。此程式碼片段屬於大型應用程式的一部分，此應用程式有兩個 Activity：「主要」和「詳細」。
+主要 Activity 會顯示聯絡人列的清單，當使用者選取其中一項時，此 Activity 會將其 ID 傳送給詳細 Activity。
+
+詳細 Activity 會使用 {@link android.provider.ContactsContract.Contacts.Entity}，針對所選取的聯絡人，顯示與其關聯的所有原始聯絡人的所有資料列。
+
+
+</p>
+<p>
+    此程式碼片段是取自「詳細」Activity：
+</p>
+<pre>
+...
+    /*
+     * Appends the entity path to the URI. In the case of the Contacts Provider, the
+     * expected URI is content://com.google.contacts/#/entity (# is the ID value).
+     */
+    mContactUri = Uri.withAppendedPath(
+            mContactUri,
+            ContactsContract.Contacts.Entity.CONTENT_DIRECTORY);
+
+    // Initializes the loader identified by LOADER_ID.
+    getLoaderManager().initLoader(
+            LOADER_ID,  // The identifier of the loader to initialize
+            null,       // Arguments for the loader (in this case, none)
+            this);      // The context of the activity
+
+    // Creates a new cursor adapter to attach to the list view
+    mCursorAdapter = new SimpleCursorAdapter(
+            this,                        // the context of the activity
+            R.layout.detail_list_item,   // the view item containing the detail widgets
+            mCursor,                     // the backing cursor
+            mFromColumns,                // the columns in the cursor that provide the data
+            mToViews,                    // the views in the view item that display the data
+            0);                          // flags
+
+    // Sets the ListView's backing adapter.
+    mRawContactList.setAdapter(mCursorAdapter);
+...
+&#64;Override
+public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
+
+    /*
+     * Sets the columns to retrieve.
+     * RAW_CONTACT_ID is included to identify the raw contact associated with the data row.
+     * DATA1 contains the first column in the data row (usually the most important one).
+     * MIMETYPE indicates the type of data in the data row.
+     */
+    String[] projection =
+        {
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID,
+            ContactsContract.Contacts.Entity.DATA1,
+            ContactsContract.Contacts.Entity.MIMETYPE
+        };
+
+    /*
+     * Sorts the retrieved cursor by raw contact id, to keep all data rows for a single raw
+     * contact collated together.
+     */
+    String sortOrder =
+            ContactsContract.Contacts.Entity.RAW_CONTACT_ID +
+            " ASC";
+
+    /*
+     * Returns a new CursorLoader. The arguments are similar to
+     * ContentResolver.query(), except for the Context argument, which supplies the location of
+     * the ContentResolver to use.
+     */
+    return new CursorLoader(
+            getApplicationContext(),  // The activity's context
+            mContactUri,              // The entity content URI for a single contact
+            projection,               // The columns to retrieve
+            null,                     // Retrieve all the raw contacts and their data rows.
+            null,                     //
+            sortOrder);               // Sort by the raw contact ID.
+}
+</pre>
+<p>
+    載入完成時，{@link android.app.LoaderManager} 會呼叫 {@link android.app.LoaderManager.LoaderCallbacks#onLoadFinished(Loader, D)
+    onLoadFinished()} 的回呼。
+此方法的其中一個傳入引數是內含查詢結果的
+ {@link android.database.Cursor}。在您的應用程式中，您可以從這個 {@link android.database.Cursor} 取得資料，然後加以顯示或進一步處理。
+
+</p>
+<h3 id="Transactions">批次修改</h3>
+<p>
+    您應該儘可能透過建立
+ {@link android.content.ContentProviderOperation} 物件的{@link java.util.ArrayList}，然後呼叫
+ {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()}，以「批次模式」在聯絡人供應程式中進行資料的插入、更新以及刪除。
+因為聯絡人供應程式會在單一交易中執行 
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 的所有操作，所以您所做的修改不會讓聯絡人存放庫處於不一致的狀態。
+
+
+批次修改同時也有助於插入原始聯絡人及其詳細資料。
+
+</p>
+<p class="note">
+    <strong>注意：</strong>如要修改「單一」<em></em>原始聯絡人，請考慮將意圖傳送到裝置的聯絡人應用程式，而不要在您的應用程式中處理修改操作。這些動作在<a href="#Intents">使用意圖擷取和修改</a>中有更詳細的資料。
+
+
+
+</p>
+<h4>降伏點</h4>
+<p>
+    包含大量操作的批次修改可能會封鎖其他處理程序，導致整體的使用者體驗不良。
+如要將您想要執行的所有修改，儘可能安排在較少的清單中執行，同時要避免這些修改讓系統無法進行其他操作，則應該要為一或多個操作設定「降伏點」<strong></strong>。
+
+
+    降伏點是一個 {@link android.content.ContentProviderOperation} 物件，而且其
+{@link android.content.ContentProviderOperation#isYieldAllowed()} 值是設為
+<code>true</code>。當聯絡人供應程式遇到降伏點時，會暫停它的工作，以便讓其他處理程序執行，並關閉目前的交易。
+供應程式再次啟動時，會繼續 {@link java.util.ArrayList} 中的下一項操作，並啟動新的交易。
+
+
+</p>
+<p>
+    降伏點會讓每次呼叫
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 產生一個以上的交易。基於這項原因，您必須將上次操作的降伏點設為一組相關的列。
+
+    例如，您應該為以下兩種上次操作設定降伏點：新增原始聯絡人列及其相關資料列的一組動作，或與單一聯絡人相關的一組列。
+
+
+</p>
+<p>
+    降伏點也是微型操作的單位。兩個降伏點之間的所有存取會以單一單元來看待為成功或失敗。
+如果沒有設定任何降伏點，則最小的微型操作就是整批操作。
+如果使用降伏點，您可以防止操作降低系統效能，同時確保操作的子集是微型操作。
+
+
+</p>
+<h4>修改反向參考</h4>
+<p>
+    以一組
+ {@link android.content.ContentProviderOperation} 物件插入新的原始聯絡人及其關聯的資料列時，您必須透過插入原始聯絡人的
+ {@code android.provider.BaseColumns#_ID} 值做為
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID} 值，將資料列連結到原始聯絡人列。
+不過，此
+值在您為資料列建立 {@link android.content.ContentProviderOperation}
+時並不存在，這是因為您尚未替原始聯絡人列
+套用 {@link android.content.ContentProviderOperation}。為解決此狀況，{@link android.content.ContentProviderOperation.Builder} 類別提供了
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()} 這個方法。
+
+    此方法可以讓您使用之前操作的結果來插入或修改欄。
+
+</p>
+<p>
+    {@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}
+方法有兩個引數：
+</p>
+    <dl>
+        <dt>
+            <code>key</code>
+        </dt>
+        <dd>
+            鍵值對的鍵。此引數的值是您要修改表格中的欄名稱。
+
+        </dd>
+        <dt>
+            <code>previousResult</code>
+        </dt>
+        <dd>
+            
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 中的
+{@link android.content.ContentProviderResult} 物件以 0 開始的陣列索引值。套用批次操作時，每次操作結果都會儲存在結果的中繼陣列。
+
+<code>previousResult</code> 值是這些結果的其中一個索引，這些結果是以 <code>key</code>值擷取並加以儲存。
+
+這樣可以讓您插入新的原始聯絡人記錄，並取得其
+{@code android.provider.BaseColumns#_ID} 值，然後在您新增 {@link android.provider.ContactsContract.Data} 列時，做為此值的「反向參考」。
+
+            <p>
+                您首次呼叫
+ {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 時會建立整個結果陣列，此陣列的大小等同於您所提供
+ {@link android.content.ContentProviderOperation} 物件的{@link java.util.ArrayList} 大小。
+不過，結果陣列中的所有元素會設為 <code>null</code>，如果您嘗試要針對尚未套用的操作結果製作反向參考，
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}則會擲回 {@link java.lang.Exception}。
+
+
+
+
+            </p>
+        </dd>
+    </dl>
+<p>
+    以下程式碼片段展示如何插入大量新的原始聯絡人和資料。其中包括建立降伏點和使用反向參考的程式碼。
+此程式碼片段是 <code>createContacEntry()</code> 方法的擴充版本。而這個方法是
+ <code><a href="{@docRoot}resources/samples/ContactManager/index.html">
+    Contact Manager</a></code> 範例應用程式中
+ <code>ContactAdder</code> 類別的一部分。
+
+</p>
+<p>
+    第一個程式碼片段會從 UI 擷取聯絡人資料。此時，使用者已經選好要加入的新原始聯絡人帳戶。
+
+</p>
+<pre>
+// Creates a contact entry from the current UI values, using the currently-selected account.
+protected void createContactEntry() {
+    /*
+     * Gets values from the UI
+     */
+    String name = mContactNameEditText.getText().toString();
+    String phone = mContactPhoneEditText.getText().toString();
+    String email = mContactEmailEditText.getText().toString();
+
+    int phoneType = mContactPhoneTypes.get(
+            mContactPhoneTypeSpinner.getSelectedItemPosition());
+
+    int emailType = mContactEmailTypes.get(
+            mContactEmailTypeSpinner.getSelectedItemPosition());
+</pre>
+<p>
+    下一個程式碼片段的操作會將原始聯絡人列插入
+{@link android.provider.ContactsContract.RawContacts} 表格：
+</p>
+<pre>
+    /*
+     * Prepares the batch operation for inserting a new raw contact and its data. Even if
+     * the Contacts Provider does not have any data for this person, you can't add a Contact,
+     * only a raw contact. The Contacts Provider will then add a Contact automatically.
+     */
+
+     // Creates a new array of ContentProviderOperation objects.
+    ArrayList&lt;ContentProviderOperation&gt; ops =
+            new ArrayList&lt;ContentProviderOperation&gt;();
+
+    /*
+     * Creates a new raw contact with its account type (server type) and account name
+     * (user's account). Remember that the display name is not stored in this row, but in a
+     * StructuredName data row. No other data is required.
+     */
+    ContentProviderOperation.Builder op =
+            ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI)
+            .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType())
+            .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    接著，程式碼會建立顯示名稱、電話以及電子郵件列的資料列。
+</p>
+<p>
+    每項操作建立器物件會使用
+{@link android.content.ContentProviderOperation.Builder#withValueBackReference(String, int) withValueBackReference()}來取得
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID}。
+參照會指向第一項操作中的 {@link android.content.ContentProviderResult} 物件 (第一項操作會新增原始聯絡人列，並傳回其新的 {@code android.provider.BaseColumns#_ID} 值)。
+
+
+因此，每個資料列會透過其
+{@link android.provider.ContactsContract.DataColumns#RAW_CONTACT_ID} 自動連結到它所屬的新 {@link android.provider.ContactsContract.RawContacts} 列。
+
+</p>
+<p>
+    新增電子郵件列的 {@link android.content.ContentProviderOperation.Builder} 物件會帶有 {@link android.content.ContentProviderOperation.Builder#withYieldAllowed(boolean)
+    withYieldAllowed()} 旗標，而這會設定降伏點：
+
+</p>
+<pre>
+    // Creates the display name for the new raw contact, as a StructuredName data row.
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * withValueBackReference sets the value of the first argument to the value of
+             * the ContentProviderResult indexed by the second argument. In this particular
+             * call, the raw contact ID column of the StructuredName data row is set to the
+             * value of the result returned by the first operation, which is the one that
+             * actually adds the raw contact row.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to StructuredName
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
+
+            // Sets the data row's display name to the name in the UI.
+            .withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified phone number and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Phone
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
+
+            // Sets the phone number and type
+            .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, phone)
+            .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, phoneType);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+
+    // Inserts the specified email and type as a Phone data row
+    op =
+            ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
+            /*
+             * Sets the value of the raw contact id column to the new raw contact ID returned
+             * by the first operation in the batch.
+             */
+            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
+
+            // Sets the data row's MIME type to Email
+            .withValue(ContactsContract.Data.MIMETYPE,
+                    ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE)
+
+            // Sets the email address and type
+            .withValue(ContactsContract.CommonDataKinds.Email.ADDRESS, email)
+            .withValue(ContactsContract.CommonDataKinds.Email.TYPE, emailType);
+
+    /*
+     * Demonstrates a yield point. At the end of this insert, the batch operation's thread
+     * will yield priority to other threads. Use after every set of operations that affect a
+     * single contact, to avoid degrading performance.
+     */
+    op.withYieldAllowed(true);
+
+    // Builds the operation and adds it to the array of operations
+    ops.add(op.build());
+</pre>
+<p>
+    最後一個程式碼片段顯示
+{@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 的呼叫，以插入新的原始聯絡人和資料列。
+
+</p>
+<pre>
+    // Ask the Contacts Provider to create a new contact
+    Log.d(TAG,"Selected account: " + mSelectedAccount.getName() + " (" +
+            mSelectedAccount.getType() + ")");
+    Log.d(TAG,"Creating contact: " + name);
+
+    /*
+     * Applies the array of ContentProviderOperation objects in batch. The results are
+     * discarded.
+     */
+    try {
+
+            getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
+    } catch (Exception e) {
+
+            // Display a warning
+            Context ctx = getApplicationContext();
+
+            CharSequence txt = getString(R.string.contactCreationFailure);
+            int duration = Toast.LENGTH_SHORT;
+            Toast toast = Toast.makeText(ctx, txt, duration);
+            toast.show();
+
+            // Log exception
+            Log.e(TAG, "Exception encountered while inserting contact: " + e);
+    }
+}
+</pre>
+<p>
+    批次操作也可以讓您實作<strong>開放式並行存取控制</strong>，此方法可以在套用修改交易時，不需要鎖定底層存放庫。
+
+    如要使用此方法，您要套用交易，然後檢查同時發生的其他修改操作。
+如果您發現不一致的修改，請將交易復原並加以重試。
+
+</p>
+<p>
+    開放式並行存取控制很適合用在行動裝置，這是因為行動裝置一次只會有一位使用者，而且很少會發生同時存取資料存放庫的情形。
+由於不會使用到鎖定，因此您不必花時間在設定鎖定，或等待其他交易釋放鎖定。
+
+</p>
+<p>
+    如要在更新單一
+ {@link android.provider.ContactsContract.RawContacts} 列時使用開放式並行存取控制，請遵循以下步驟：
+</p>
+<ol>
+    <li>
+        隨著您要擷取的其他資料，一起擷取原始聯絡人的 {@link android.provider.ContactsContract.SyncColumns#VERSION} 欄。
+
+    </li>
+    <li>
+        使用
+ {@link android.content.ContentProviderOperation#newAssertQuery(Uri)} 方法建立適合用於強制執行限制的{@link android.content.ContentProviderOperation.Builder} 物件。
+如果是內容 URI，請使用 {@link android.provider.ContactsContract.RawContacts#CONTENT_URI
+RawContacts.CONTENT_URI} 並附加原始聯絡人的 {@code android.provider.BaseColumns#_ID}。
+
+
+    </li>
+    <li>
+        如果是 {@link android.content.ContentProviderOperation.Builder} 物件，請呼叫 {@link android.content.ContentProviderOperation.Builder#withValue(String, Object)
+        withValue()}，以比較 {@link android.provider.ContactsContract.SyncColumns#VERSION} 欄和您剛才擷取的版本號碼。
+
+
+    </li>
+    <li>
+        如果是相同的 {@link android.content.ContentProviderOperation.Builder}，請呼叫 {@link android.content.ContentProviderOperation.Builder#withExpectedCount(int)
+withExpectedCount()} 以確保此判斷提示只測試一列。
+
+    </li>
+    <li>
+        呼叫 {@link android.content.ContentProviderOperation.Builder#build()} 以建立
+{@link android.content.ContentProviderOperation} 物件，然後將此物件新增為您傳送到
+ {@link android.content.ContentResolver#applyBatch(String, ArrayList) applyBatch()} 的第一個 {@link java.util.ArrayList} 物件。
+
+    </li>
+    <li>
+        套用批次交易。
+    </li>
+</ol>
+<p>
+    如果在您讀取原始聯絡人列和嘗試加以修改之間，有另一項操作要加以更新，則「判斷提示」{@link android.content.ContentProviderOperation} 將會失敗，而且整個批次的操作將會退出。
+
+您之後可以選擇重試此批次作業或採取其他動作。
+
+</p>
+<p>
+    以下程式碼片段展示如何在使用 {@link android.content.CursorLoader} 查詢單一原始聯絡人後，建立「判斷提示」
+{@link android.content.ContentProviderOperation}：
+
+</p>
+<pre>
+/*
+ * The application uses CursorLoader to query the raw contacts table. The system calls this method
+ * when the load is finished.
+ */
+public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor cursor) {
+
+    // Gets the raw contact's _ID and VERSION values
+    mRawContactID = cursor.getLong(cursor.getColumnIndex(BaseColumns._ID));
+    mVersion = cursor.getInt(cursor.getColumnIndex(SyncColumns.VERSION));
+}
+
+...
+
+// Sets up a Uri for the assert operation
+Uri rawContactUri = ContentUris.withAppendedId(RawContacts.CONTENT_URI, mRawContactID);
+
+// Creates a builder for the assert operation
+ContentProviderOperation.Builder assertOp = ContentProviderOperation.netAssertQuery(rawContactUri);
+
+// Adds the assertions to the assert operation: checks the version and count of rows tested
+assertOp.withValue(SyncColumns.VERSION, mVersion);
+assertOp.withExpectedCount(1);
+
+// Creates an ArrayList to hold the ContentProviderOperation objects
+ArrayList ops = new ArrayList&lt;ContentProviderOperationg&gt;;
+
+ops.add(assertOp.build());
+
+// You would add the rest of your batch operations to "ops" here
+
+...
+
+// Applies the batch. If the assert fails, an Exception is thrown
+try
+    {
+        ContentProviderResult[] results =
+                getContentResolver().applyBatch(AUTHORITY, ops);
+
+    } catch (OperationApplicationException e) {
+
+        // Actions you want to take if the assert operation fails go here
+    }
+</pre>
+<h3 id="Intents">使用意圖進行擷取及修改</h3>
+<p>
+    將意圖傳送給裝置的聯絡人應用程式，可讓您間接存取聯絡人供應程式。
+意圖會啟動裝置的聯絡人應用程式 UI，使用者可以在此執行與聯絡人相關的工作。
+透過此類型的存取方式，使用者可以：
+    <ul>
+        <li>從清單挑選聯絡人，並將它傳送給應用程式以進行其他操作。</li>
+        <li>編輯現有的聯絡人資料。</li>
+        <li>為使用者的任何帳戶插入新的原始聯絡人。</li>
+        <li>刪除聯絡人或聯絡人資料。</li>
+    </ul>
+<p>
+    如果使用者正在插入或更新資料，您可以先收集資料，然後讓它成為意圖的一部分加以傳送。
+
+</p>
+<p>
+    當您透過裝置的聯絡人應用程式使用意圖來存取聯絡人供應程式時，不需要自已撰寫存取供應程式的 UI 或程式碼。
+您也不需要要求供應程式的讀取或寫入權限。
+裝置的聯絡人應用程式可以將某個聯絡人的讀取權限委派給您，而且因為是透過另一個應用程式對供應程式進行修改，所以不需要具備寫入權限。
+
+
+</p>
+<p>
+    傳送意圖以存取供應程式的一般流程在<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">內容供應程式基本概念</a>指南的「透過意圖存取資料」中有詳細的說明。
+
+表 4 摘要說明您可以在工作中使用的動作、MIME 類型以及資料值，而您可以和
+ {@link android.content.Intent#putExtra(String, String) putExtra()} 搭配使用的額外值則列於 {@link android.provider.ContactsContract.Intents.Insert} 的參考文件：
+
+
+
+</p>
+<p class="table-caption" id="table4">
+  <strong>表 4.</strong>聯絡人供應程式意圖。
+</p>
+<table style="width:75%">
+    <tr>
+        <th scope="col" style="width:10%">工作</th>
+        <th scope="col" style="width:5%">動作</th>
+        <th scope="col" style="width:10%">資料</th>
+        <th scope="col" style="width:10%">MIME 類型</th>
+        <th scope="col" style="width:25%">備註</th>
+    </tr>
+    <tr>
+        <td><strong>從清單挑選聯絡人</strong></td>
+        <td>{@link android.content.Intent#ACTION_PICK}</td>
+        <td>
+            可以是以下其中一種：
+            <ul>
+                <li>
+{@link android.provider.ContactsContract.Contacts#CONTENT_URI Contacts.CONTENT_URI}，可顯示聯絡人的清單。
+
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Phone#CONTENT_URI Phone.CONTENT_URI}，可顯示原始聯絡人的電話號碼清單。
+
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.StructuredPostal#CONTENT_URI
+StructuredPostal.CONTENT_URI}，可顯示原始聯絡人的郵寄地址清單。
+
+                </li>
+                <li>
+{@link android.provider.ContactsContract.CommonDataKinds.Email#CONTENT_URI Email.CONTENT_URI}，可顯示原始聯絡人的電子郵件地址清單。
+
+                </li>
+            </ul>
+        </td>
+        <td>
+            未使用
+        </td>
+        <td>
+            顯示原始聯絡人清單或原始聯絡人的資料清單，視您提供的內容 URI 類型而定。
+
+            <p>
+                呼叫
+{@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()}可傳回所選取列的內容 URI。
+URI 的格式是表格的內容 URI 附加列的 <code>LOOKUP_ID</code>。
+
+                裝置的聯絡人應用程式會在 Activity 的生命週期內，將讀取和寫入權限委派給此內容 URI。
+詳情請參閱<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">內容供應程式基本概念</a>指南。
+
+
+            </p>
+        </td>
+    </tr>
+    <tr>
+        <td><strong>插入新的原始聯絡人</strong></td>
+        <td>{@link android.provider.ContactsContract.Intents.Insert#ACTION Insert.ACTION}</td>
+        <td>不適用</td>
+        <td>
+            {@link android.provider.ContactsContract.RawContacts#CONTENT_TYPE
+RawContacts.CONTENT_TYPE}，一組原始聯絡人的 MIME 類型。
+        </td>
+        <td>
+            顯示裝置聯絡人應用程式中的「新增聯絡人」<strong></strong>畫面。會顯示您新增至意圖的額外值。
+如果隨著
+{@link android.app.Activity#startActivityForResult(Intent, int) startActivityForResult()} 一起傳送，則新增的原始聯絡人內容 URI 會在 {@link android.content.Intent} 引數的 [資料] 欄位中傳回給 Activity 的
+{@link android.app.Activity#onActivityResult(int, int, Intent) onActivityResult()}回呼方法。
+
+
+如要取得此值，請呼叫 {@link android.content.Intent#getData()}。
+        </td>
+    </tr>
+    <tr>
+        <td><strong>編輯聯絡人</strong></td>
+        <td>{@link android.content.Intent#ACTION_EDIT}</td>
+        <td>
+            聯絡人的 {@link android.provider.ContactsContract.Contacts#CONTENT_LOOKUP_URI}。
+編輯器 Activity 可讓使用者編輯與此聯絡人關聯的任何資料。
+
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE
+Contacts.CONTENT_ITEM_TYPE}，單一聯絡人。</td>
+        <td>
+            顯示聯絡人應用程式中的「編輯聯絡人」畫面。顯示您新增至意圖的額外值。
+使用者按一下 [完成]<strong></strong> 來儲存編輯內容時，您的 Activity 會回到前景。
+
+        </td>
+    </tr>
+    <tr>
+        <td><strong>顯示也能夠新增資料的挑選器</strong></td>
+        <td>{@link android.content.Intent#ACTION_INSERT_OR_EDIT}</td>
+        <td>
+            不適用
+        </td>
+        <td>
+            {@link android.provider.ContactsContract.Contacts#CONTENT_ITEM_TYPE}
+        </td>
+         <td>
+            此意圖一律會顯示聯絡人應用程式的挑選器畫面。使用者可以挑選要編輯的聯絡人，或新增聯絡人。
+不論使用者選擇編輯或新增，所顯示的畫面中也會顯示您在意圖中傳送的額外資料。
+
+如果您的應用程式顯示電子郵件或電話號碼之類的聯絡人資料，使用此意圖會讓使用者將資料新增至現有聯絡人。
+
+
+            <p class="note">
+                <strong>注意：</strong>不需要在意圖的額外值中傳送名稱值，這是因為使用者一定會挑選現有名稱或新增名稱。
+再者，如果您傳送名稱，而使用者選擇編輯，則聯絡人應用程式會覆寫之前的值，以顯示您傳送的名稱。
+
+如果使用者沒有注意到此情形並儲存本次編輯，則會遺失舊的值。
+
+            </p>
+         </td>
+    </tr>
+</table>
+<p>
+    裝置的聯絡人應用程式不會讓您刪除原始聯絡人或任何含有意圖的資料。
+如要刪除原始聯絡人，請改用
+{@link android.content.ContentResolver#delete(Uri, String, String[]) ContentResolver.delete()} 或 {@link android.content.ContentProviderOperation#newDelete(Uri)
+ContentProviderOperation.newDelete()}。
+
+</p>
+<p>
+    以下程式碼片段展示如何建構及傳送可插入新原始聯絡人和資料，的意圖：
+
+</p>
+<pre>
+// Gets values from the UI
+String name = mContactNameEditText.getText().toString();
+String phone = mContactPhoneEditText.getText().toString();
+String email = mContactEmailEditText.getText().toString();
+
+String company = mCompanyName.getText().toString();
+String jobtitle = mJobTitle.getText().toString();
+
+// Creates a new intent for sending to the device's contacts application
+Intent insertIntent = new Intent(ContactsContract.Intents.Insert.ACTION);
+
+// Sets the MIME type to the one expected by the insertion activity
+insertIntent.setType(ContactsContract.RawContacts.CONTENT_TYPE);
+
+// Sets the new contact name
+insertIntent.putExtra(ContactsContract.Intents.Insert.NAME, name);
+
+// Sets the new company and job title
+insertIntent.putExtra(ContactsContract.Intents.Insert.COMPANY, company);
+insertIntent.putExtra(ContactsContract.Intents.Insert.JOB_TITLE, jobtitle);
+
+/*
+ * Demonstrates adding data rows as an array list associated with the DATA key
+ */
+
+// Defines an array list to contain the ContentValues objects for each row
+ArrayList&lt;ContentValues&gt; contactData = new ArrayList&lt;ContentValues&gt;();
+
+
+/*
+ * Defines the raw contact row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues rawContactRow = new ContentValues();
+
+// Adds the account type and name to the row
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_TYPE, mSelectedAccount.getType());
+rawContactRow.put(ContactsContract.RawContacts.ACCOUNT_NAME, mSelectedAccount.getName());
+
+// Adds the row to the array
+contactData.add(rawContactRow);
+
+/*
+ * Sets up the phone number data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues phoneRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+phoneRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
+);
+
+// Adds the phone number and its type to the row
+phoneRow.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phone);
+
+// Adds the row to the array
+contactData.add(phoneRow);
+
+/*
+ * Sets up the email data row
+ */
+
+// Sets up the row as a ContentValues object
+ContentValues emailRow = new ContentValues();
+
+// Specifies the MIME type for this data row (all data rows must be marked by their type)
+emailRow.put(
+        ContactsContract.Data.MIMETYPE,
+        ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE
+);
+
+// Adds the email address and its type to the row
+emailRow.put(ContactsContract.CommonDataKinds.Email.ADDRESS, email);
+
+// Adds the row to the array
+contactData.add(emailRow);
+
+/*
+ * Adds the array to the intent's extras. It must be a parcelable object in order to
+ * travel between processes. The device's contacts app expects its key to be
+ * Intents.Insert.DATA
+ */
+insertIntent.putParcelableArrayListExtra(ContactsContract.Intents.Insert.DATA, contactData);
+
+// Send out the intent to start the device's contacts app in its add contact activity.
+startActivity(insertIntent);
+</pre>
+<h3 id="DataIntegrity">資料完整性</h3>
+<p>
+    因為聯絡人存放庫內含重要的敏感資料，使用者會期待這些資料為正確且為最新狀態，聯絡人供應程式對於資料完整性有定義良好的規則。
+因此，您在修改聯絡人資料時，必須符合這些規則。
+以下列出重要規則：
+
+</p>
+<dl>
+    <dt>
+        務必為您新增的每個 {@link android.provider.ContactsContract.RawContacts} 列新增 {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 列。
+
+    </dt>
+    <dd>
+        {@link android.provider.ContactsContract.Data} 表格中不含
+ {@link android.provider.ContactsContract.CommonDataKinds.StructuredName} 列的
+{@link android.provider.ContactsContract.RawContacts} 列，在彙總時會造成問題。
+
+    </dd>
+    <dt>
+        務必將 {@link android.provider.ContactsContract.Data} 列連結到其上層的
+{@link android.provider.ContactsContract.RawContacts} 列。
+    </dt>
+    <dd>
+        裝置的聯絡人應用程式中將看不到未連結到
+ {@link android.provider.ContactsContract.RawContacts} 的 {@link android.provider.ContactsContract.Data} 列，而且與同步配接器搭配使用時可能會造成問題。
+
+    </dd>
+    <dt>
+        只針對您擁有的原始聯絡人變更資料。
+    </dt>
+    <dd>
+        請記住，聯絡人供應程式通常用來管理來自不同帳戶類型或線上服務的資料。
+您必須確認應用程式只會修改或刪除屬於您的資料列，並且確認應用程式插入的資料只含有您可控制的帳戶類型和名稱。
+
+
+    </dd>
+    <dt>
+        務必使用 {@link android.provider.ContactsContract} 及其子類別中定義的常數，做為授權、內容 URI、URI 路徑、欄名稱、MIME 類型以及
+{@link android.provider.ContactsContract.CommonDataKinds.CommonColumns#TYPE} 值。
+
+    </dt>
+    <dd>
+        使用這些常數可協助您避免發生錯誤。如果有任何常數已失效，則編譯器會發出通知。
+
+    </dd>
+</dl>
+<h3 id="CustomData">自訂資料列</h3>
+<p>
+    透過建立自訂的 MIME 類型，您可以插入、編輯、刪除以及擷取 {@link android.provider.ContactsContract.Data} 表格中您自己的資料列。
+儘管您可以將自己的類型特定欄名稱對應到預設的欄名稱，您的列仍受限於使用
+ {@link android.provider.ContactsContract.DataColumns} 中所定義的欄。
+
+在裝置的聯絡人應用程式中，可以顯示您的列中資料，但無法加以編輯或刪除，而且使用者無法新增其他資料。
+
+如要讓使用者修改您自訂的資料列，您必須在自己的應用程式中提供編輯器 Activity。
+
+</p>
+<p>
+    如要顯示自己的資料，請提供 <code>contacts.xml</code> 檔案，其中要包含
+<code>&lt;ContactsAccountType&gt;</code> 元素以及一或多個其
+<code>&lt;ContactsDataKind&gt;</code> 子元素。詳情請參閱 <a href="#SocialStreamDataKind"><code>&lt;ContactsDataKind&gt; element</code></a>一節。
+
+</p>
+<p>
+    如要更瞭解自訂 MIME 類型的詳細資訊，請閱讀<a href="{@docRoot}guide/topics/providers/content-provider-creating.html">建立內容供應程式</a>指南。
+
+
+</p>
+<h2 id="SyncAdapters">聯絡人供應程式同步配接器</h2>
+<p>
+    聯絡人供應程式的設計是專門用來處理裝置和線上服務之間聯絡人資料的「同步作業」<strong></strong>。
+以便讓使用者將現有資料下載到新裝置，以及將現有資料上傳到新帳戶。
+
+    同步作業也可以確保使用者手邊使用的是最新的資料，不論來源經過哪些新增和變更。
+同步作業的另一個好處是，即使裝置沒有連上網路，使用者仍然可以存取聯絡人資料。
+
+</p>
+<p>
+    您可以用各種方式實作同步作業，不過 Android 系統提供的外掛程式同步架構可以將以下工作自動化：
+
+    <ul>
+
+    <li>
+        檢查網路可用性。
+    </li>
+    <li>
+        根據使用者偏好設定，安排並執行同步作業。
+    </li>
+    <li>
+        重新啟動已停止的同步作業。
+    </li>
+    </ul>
+<p>
+    如要使用此架構，您要提供同步配接器外掛程式。每個同步配接器對於服務和內容供應程式來說是唯一的，但可以處理相同服務的多個帳戶名稱。
+此架構也可以讓相同服務和供應程式使用多個同步配接器。
+
+</p>
+<h3 id="SyncClassesFiles">同步配接器類別和檔案</h3>
+<p>
+    您將同步配接器實做為 {@link android.content.AbstractThreadedSyncAdapter} 的子類別，並以 Android 應用程式的一部分加以安裝。
+
+系統會從應用程式宣示說明中的元素，以及從宣示說明所指向的特殊 XML 檔案中瞭解同步配接器的相關資訊。
+此 XML 檔案定義線上服務的帳戶類型，以及內容供應程式的授權，這兩者可用來唯一識別此配接器。
+
+同步配接器要在使用者新增同步配接器的帳戶類型，
+並啟用要與同步配接器的內容供應程式同步後，
+同步配接器才會變成使用中。此時，系統會開始管理配接器並視需要加以呼叫，以便在內容供應程式和伺服器之間進行同步。
+
+</p>
+<p class="note">
+    <strong>注意：</strong>使用帳戶類型做為同步配接器識別的一部分，可以讓系統在偵測後，將存取不同服務、但來自相同組織的同步配接器群組在一起。
+
+例如，Google 線上服務的同步配接器都有相同的帳戶類型 <code>com.google</code>。
+使用者將 Google 帳戶新增至其裝置後，所有已安裝的 Google 服務同步配接器會列在一起，每個列出的同步配接器會與裝置上不同的內容供應程式進行同步。
+
+
+</p>
+<p>
+    由於大多數服務都需要在存取資料之前先驗證其身分，因此 Android 系統提供類似的驗證架構，而且通常會與同步配接器架構一起搭配使用。
+
+驗證架構使用外掛程式驗證器，這是
+ {@link android.accounts.AbstractAccountAuthenticator} 的子類別。
+驗證器會以下列步驟驗證使用者的身分：
+
+    <ol>
+        <li>
+            收集使用者的名稱、密碼或類似資訊 (使用者的<strong>憑證</strong>)。
+
+        </li>
+        <li>
+            將憑證傳送給服務
+        </li>
+        <li>
+            檢驗服務的回覆。
+        </li>
+    </ol>
+<p>
+    如果服務接受此憑證，則驗證器可以儲存憑證供以後使用。
+由於外掛程式驗證器架構的緣故，
+{@link android.accounts.AccountManager} 可以存取驗證器支援且選擇顯示的任何 authtoken，例如 OAuth2 authtoken。
+
+</p>
+<p>
+    雖然驗證並非必要，大部分聯絡人服務仍會加以使用。
+    不過，您不一定要使用 Android 驗證架構來進行驗證動作。
+</p>
+<h3 id="SyncAdapterImplementing">同步配接器實作</h3>
+<p>
+    如要實作聯絡人供應程式的同步配接器，要從建立內含以下各項的 Android 應用程式開始：
+
+</p>
+    <dl>
+        <dt>
+            回應來自系統的要求，以繫結至同步配接器的 {@link android.app.Service} 元件。
+
+        </dt>
+        <dd>
+            系統要執行同步時，會呼叫服務的
+ {@link android.app.Service#onBind(Intent) onBind()} 方法，以取得同步配接器的
+ {@link android.os.IBinder}。這樣可以讓系統以跨處理程序的方式呼叫配接器的方法。
+
+            <p>
+                在<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">範例同步配接器</a>範例應用程式中，此服務的名稱為
+ <code>com.example.android.samplesync.syncadapter.SyncService</code>。
+
+            </p>
+        </dd>
+        <dt>
+            實際的同步配接器是以
+ {@link android.content.AbstractThreadedSyncAdapter} 的實體子類別加以實作。
+        </dt>
+        <dd>
+            此類別會執行的工作包括：從伺服器下載資料、從裝置上傳資料以及解決衝突。
+配接器的主要工作會使用 {@link android.content.AbstractThreadedSyncAdapter#onPerformSync(
+Account, Bundle, String, ContentProviderClient, SyncResult)
+onPerformSync()} 方法完成。
+此類別必須以單一執行個體的方式加以具現化。
+            <p>
+                在<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">範例同步配接器</a>範例應用程式中，同步配接器定義在
+<code>com.example.android.samplesync.syncadapter.SyncAdapter</code> 類別中。
+
+            </p>
+        </dd>
+        <dt>
+            {@link android.app.Application} 的子類別。
+        </dt>
+        <dd>
+            此類別就像是同步配接器單一執行個體的工廠。使用
+{@link android.app.Application#onCreate()} 方法具現化同步配接器，並提供靜態的「getter」方法將單一執行個體傳回給同步配接器服務的
+{@link android.app.Service#onBind(Intent) onBind()} 方法。
+
+
+        </dd>
+        <dt>
+            <strong>選用：</strong>回應系統針對使用者發出的驗證要求的 {@link android.app.Service} 元件。
+
+        </dt>
+        <dd>
+            {@link android.accounts.AccountManager} 會啟動此服以開始驗證程序。
+服務的 {@link android.app.Service#onCreate()} 方法會具現化為驗證器物件。
+系統需驗證應用程式同步配接器的使用者帳戶時，會呼叫服務的 
+{@link android.app.Service#onBind(Intent) onBind()} 方法以取得驗證器的
+ {@link android.os.IBinder}。
+這樣可以讓系統以跨處理程序的方式呼叫驗證器的方法。
+
+            <p>
+                在<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">範例同步配接器</a>範例應用程式中，此服務的類別名稱為
+<code>com.example.android.samplesync.authenticator.AuthenticationService</code>。
+
+            </p>
+        </dd>
+        <dt>
+            <strong>選用：</strong>處理驗證要求的
+{@link android.accounts.AbstractAccountAuthenticator} 實體子類別。
+
+        </dt>
+        <dd>
+            {@link android.accounts.AccountManager} 會呼叫此類別提供的方法，透過伺服器驗證使用者的憑證。
+驗證程序的詳細方式會根據所使用的伺服器技術，而有很大的差異。
+建議您參閱伺服器軟體的說明文件，進一步瞭解驗證。
+
+            <p>
+                在<a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">範例同步配接器</a>範例應用程式中，驗證器是在
+<code>com.example.android.samplesync.authenticator.Authenticator</code> 類別中完成定義。
+
+            </p>
+        </dd>
+        <dt>
+            定義系統同步配接器和驗證器的 XML 檔案。
+        </dt>
+        <dd>
+            應用程式宣示說明中的
+ <code>&lt;<a href="{@docRoot}guide/topics/manifest/service-element.html">service</a>&gt;</code> 元素會定義之前說明的同步配接器和驗證器服務元件。
+
+這些元素包含的
+<code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code> 子元素可提供系統的特定資料：
+
+
+
+            <ul>
+                <li>
+                    同步配接器服務的
+ <code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code> 元素，此元素會指向 XML 檔案 <code>res/xml/syncadapter.xml</code>。
+
+此檔案會按順序指出
+將與聯絡人供應程式同步的網路服務 URI，
+以及網路服務的帳戶類型。
+                </li>
+                <li>
+                    <strong>選用：</strong>驗證器服務的
+ <code>&lt;<a href="{@docRoot}guide/topics/manifest/meta-data-element.html">meta-data</a>&gt;</code> 元素，此元素會指向 XML 檔案
+<code>res/xml/authenticator.xml</code>。
+此檔案會按順序指出此驗證器支援的帳戶類型，以及驗證程序中會出現的 UI 資源。
+
+此元素中指定的帳戶類型必須與同步配接器中指定的帳戶類型相同。
+
+
+                </li>
+            </ul>
+        </dd>
+    </dl>
+<h2 id="SocialStream">社交串流資料</h2>
+<p>
+    {@code android.provider.ContactsContract.StreamItems} 和
+{@code android.provider.ContactsContract.StreamItemPhotos} 表格負責管理社交網路的傳入資料。
+您可以編寫一個同步配接器，將來自您自己網路的串流資料
+新增至這些表格，或是可以從這些表格讀取串流資料，然後
+顯示於您自己的應用程式中，或同時具備這兩種功能。有了這些功能，您的社交網路服務和應用程式就可以整合到 Android 的社交網路體驗。
+
+</p>
+<h3 id="StreamText">社交串流文字</h3>
+<p>
+    串流項目永遠會與原始聯絡人關聯。
+{@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID} 會連結到原始聯絡人的
+ <code>_ID</code> 值。原始聯絡人的帳戶類型和帳戶名稱也會儲存在串流項目列。
+
+</p>
+<p>
+    串流中的資料會儲存在下列各欄：
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_TYPE}
+    </dt>
+    <dd>
+        <strong>必要。</strong>與此串流項目相關聯的原始聯絡人使用者帳戶類型。
+請記得在插入串流項目時設定此值。
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_NAME}
+    </dt>
+    <dd>
+        <strong>必要。</strong>與此串流項目相關聯的原始聯絡人使用者帳戶名稱。
+請記得在插入串流項目時設定此值。
+    </dd>
+    <dt>
+        識別碼欄
+    </dt>
+    <dd>
+        <strong>必要。</strong>您必須在插入串流項目時插入以下識別碼欄：
+
+        <ul>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_ID}：與此串流項目相關聯的聯絡人
+{@code android.provider.BaseColumns#_ID} 值。
+
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#CONTACT_LOOKUP_KEY}：與此串流項目相關聯的聯絡人
+{@code android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} 值。
+
+            </li>
+            <li>
+                {@code android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID}：與此串流項目相關聯的原始聯絡人
+{@code android.provider.BaseColumns#_ID} 值。
+
+            </li>
+        </ul>
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#COMMENTS}
+    </dt>
+    <dd>
+        選用。儲存您可以在串流項目開頭顯示的摘要資訊。
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TEXT}
+    </dt>
+    <dd>
+        串流項目的文字，可能是項目來源張貼的內容，或者會產生串流項目動作的描述。
+此欄可以包含
+{@link android.text.Html#fromHtml(String) fromHtml()} 能夠轉譯的任何格式內嵌資源影像。
+供應程式會截斷較長的內容，但會試著避免破壞標籤。
+
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}
+    </dt>
+    <dd>
+        內含插入或更新串流項目時間的文字字串，
+，以「毫秒」<em></em>為單位。插入或更新串流項目的應用程式負責維護此欄，聯絡人供應程式不會自動加以維護。
+
+
+    </dd>
+</dl>
+<p>
+    如要顯示串流項目的識別資訊，請使用
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_ICON}、
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_LABEL} 以及
+{@code android.provider.ContactsContract.StreamItemsColumns#RES_PACKAGE} 連結到應用程式中的資源。
+
+</p>
+<p>
+    {@code android.provider.ContactsContract.StreamItems} 表格也包含
+{@code android.provider.ContactsContract.StreamItemsColumns#SYNC1} 到
+{@code android.provider.ContactsContract.StreamItemsColumns#SYNC4} 欄，專門供同步配接器使用。
+
+</p>
+<h3 id="StreamPhotos">社交串流相片</h3>
+<p>
+   {@code android.provider.ContactsContract.StreamItemPhotos} 表格會儲存與串流項目相關聯的相片。
+表格的
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#STREAM_ITEM_ID} 欄會連結到
+ {@code android.provider.ContactsContract.StreamItems} 表格中 {@code android.provider.BaseColumns#_ID} 欄的值。
+相片參照會儲存在表格中的以下各欄：
+
+</p>
+<dl>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotos#PHOTO} 欄 (BLOB)。
+    </dt>
+    <dd>
+        相片的二進位檔，由供應程式調整大小以進行儲存和顯示。
+        此欄是要提供與使用舊版聯絡人供應程式儲存相片的向下相容性。
+不過，在目前版本中，您不應使用此欄來儲存相片。
+請改用 {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID} 或
+{@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI} (下文提供這兩者的相關說明) 在檔案中儲存相片。
+
+此欄現在包含相片的縮圖可供讀取。
+
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID}
+    </dt>
+    <dd>
+        原始聯絡人相片的數字識別碼。將此值附加到常數
+{@link android.provider.ContactsContract.DisplayPhoto#CONTENT_URI DisplayPhoto.CONTENT_URI} 可取得指向單一相片檔案的內容 URI，然後呼叫 {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+openAssetFileDescriptor()} 可取得此相片檔案的控制代碼。
+
+
+    </dd>
+    <dt>
+        {@code android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}
+    </dt>
+    <dd>
+        直接指向此列所呈現相片的相片檔案內容 URI。
+        使用此 URI 呼叫 {@link android.content.ContentResolver#openAssetFileDescriptor(Uri, String)
+openAssetFileDescriptor()} 可取得相片檔案的控制代碼。
+    </dd>
+</dl>
+<h3 id="SocialStreamTables">使用社交串流表格</h3>
+<p>
+    這些表格的運作方式與聯絡人供應程式中的其他主要表格大致相同，以下各項除外：
+</p>
+    <ul>
+        <li>
+            這些表格需要額外的存取權限。如要從中讀取，您的應用程式必須具備 {@code android.Manifest.permission#READ_SOCIAL_STREAM} 權限。
+如要加以修改，您的應用程式必須具備
+{@code android.Manifest.permission#WRITE_SOCIAL_STREAM} 權限。
+
+        </li>
+        <li>
+            針對 {@code android.provider.ContactsContract.StreamItems} 表格，每個原始聯絡人的儲存列數是有限制的。
+達到此限制後，聯絡人供應程式會自動刪除
+{@code android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP} 最舊的列，為新的串流項目列騰出空間。
+
+如要取得此限制，請發出查詢給內容 URI
+{@code android.provider.ContactsContract.StreamItems#CONTENT_LIMIT_URI}。
+您只要將內容 URI 設為 <code>null</code> 即可，其餘引數不需要處理。
+此查詢會傳回內含單一列的 Cursor 與單一欄
+{@code android.provider.ContactsContract.StreamItems#MAX_ITEMS}。
+
+        </li>
+    </ul>
+
+<p>
+    類別 {@code android.provider.ContactsContract.StreamItems.StreamItemPhotos} 定義了單一串流項目，且內含相片列的 {@code android.provider.ContactsContract.StreamItemPhotos} 子表格。
+
+
+</p>
+<h3 id="SocialStreamInteraction">社交串流互動</h3>
+<p>
+    社交串流資料受到聯絡人供應程式與裝置聯絡人應用程式的管理，提供強大的方式將您的社交網路系統與現有聯絡人連接起來。
+
+提供下列功能：
+</p>
+    <ul>
+        <li>
+            使用同步配接器將您的社交網路服務同步到聯絡人供應程式後，您可以擷取某位使用者的聯絡人最近 Activity，並將它儲存在 {@code android.provider.ContactsContract.StreamItems} 和
+{@code android.provider.ContactsContract.StreamItemPhotos} 表格中，供後續使用。
+
+
+        </li>
+        <li>
+            除了一般同步之外，您可以在使用者選取要檢視的聯絡人時，觸發您的同步配接器，以擷取其他資料。
+此舉可讓您的同步配接器擷取聯絡人高解析度的相片，以及聯絡人最近的串流項目。
+
+        </li>
+        <li>
+            藉由向裝置的聯絡人應用程式和聯絡人供應程式註冊通知，您可以在檢視聯絡人時「收到」<em></em>意圖，並於此時更新您服務中的聯絡人狀態。
+
+相較於與同步配接器執行完整同步，
+此方式較快速且使用的頻寬較少。
+        </li>
+        <li>
+            使用者在裝置的聯絡人應用程式查看聯絡人時，可以將聯絡人新增至您的社交網路服務。
+您可以透過「邀請聯絡人」啟用上述功能。「邀請聯絡人」會啟用一連串的 Activity，將現有聯絡人新增至您的網路和 XML 檔案。此檔案會將您應用程式的詳細資訊提供給裝置的聯絡人應用程式和聯絡人供應程式。
+
+
+
+        </li>
+    </ul>
+<p>
+    串流項目與聯絡人供應程式的一般同步與其他同步相同。
+如要進一步瞭解同步，請參閱<a href="#SyncAdapters">聯絡人供應程式同步配接器</a>。
+以下兩節說明如何註冊通知和邀請聯絡人。
+
+</p>
+<h4>註冊以處理社交網路檢視</h4>
+<p>
+    註冊您的同步配接器，使其在使用者查看由您的同步配接器所管理的聯絡人時收到通知：
+
+</p>
+<ol>
+    <li>
+        在專案的 <code>res/xml/</code> 目錄中建立名稱為 <code>contacts.xml</code>的檔案。
+如果已經有這個檔案，可略過此步驟。
+    </li>
+    <li>
+        在此檔案中，新增
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code> 元素。
+        如果這個元素已經存在，可略過此步驟。
+    </li>
+    <li>
+        為了註冊服務，讓使用者在裝置的聯絡人應用程式中開啟聯絡人的詳細資訊頁面時收到通知，請將
+ <code>viewContactNotifyService="<em>serviceclass</em>"</code> 屬性新增至此元素，其中
+ <code><em>serviceclass</em></code> 是該服務的完整類別名稱，而此服務會收到來自裝置聯絡人應用程式的意圖。
+
+對於通知器服務而言，使用擴充 {@link android.app.IntentService} 的類別可以讓此服務接收意圖。
+
+傳入意圖的資料中含有使用者所點擊該名原始聯絡人的內容 URI。
+您可以從通知器服務繫結，然後呼叫您的同步配接器，以更新原始聯絡人的資料。
+
+    </li>
+</ol>
+<p>
+    如何註冊使用者點擊串流項目或相片 (或兩者) 時所呼叫的 Activity：
+</p>
+<ol>
+    <li>
+        在專案的 <code>res/xml/</code> 目錄中建立名稱為 <code>contacts.xml</code>的檔案。
+如果已經有這個檔案，可略過此步驟。
+    </li>
+    <li>
+        在此檔案中，新增
+<code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code> 元素。
+        如果這個元素已經存在，可略過此步驟。
+    </li>
+    <li>
+        為了註冊其中一個 Activity，讓它處理使用者在裝置的聯絡人應用程式中點擊串流項目的 Activity，請將
+ <code>viewStreamItemActivity="<em>activityclass</em>"</code> 屬性新增至此元素，其中
+ <code><em>activityclass</em></code> 是該 Activity 的完整類別名稱，而此 Activity 會收到來自裝置聯絡人應用程式的意圖。
+
+
+    </li>
+    <li>
+        為了註冊其中一個 Activity，讓它處理使用者在裝置的聯絡人應用程式中點擊串流相片的活動，請將
+ <code>viewStreamItemPhotoActivity="<em>activityclass</em>"</code> 屬性新增至此元素，其中
+ <code><em>activityclass</em></code> 是該 Activity 的完整類別名稱，而此 Activity 會收到來自裝置聯絡人應用程式的意圖。
+
+
+    </li>
+</ol>
+<p>
+    如要進一步瞭解 <code>&lt;ContactsAccountType&gt;</code> 元素，請參閱 <a href="#SocialStreamAcctType">&lt;ContactsAccountType&gt; 元素</a>。
+
+</p>
+<p>
+    傳入意圖的資料中含有使用者所按下項目或相片的內容 URI。
+    如要針對文字項目和相片採取不同的 Activity，請在相同的檔案中同時使用兩個屬性。
+</p>
+<h4>與社交網路服務互動</h4>
+<p>
+    使用者不需要離開裝置的聯絡人應用程式，就可以邀請聯絡人到您的社交網路網站。
+您可以改為讓裝置的聯絡人應用程式傳送意圖，以邀請聯絡人前往您的 Activity。
+如要進行此設定：
+</p>
+<ol>
+    <li>
+        在專案的 <code>res/xml/</code> 目錄中建立名稱為 <code>contacts.xml</code>的檔案。
+如果已經有這個檔案，可略過此步驟。
+    </li>
+    <li>
+        在此檔案中，新增 <code>&lt;ContactsAccountType xmlns:android="http://schemas.android.com/apk/res/android"&gt;</code> 元素。
+
+        如果這個元素已經存在，可略過此步驟。
+    </li>
+    <li>
+        新增下列屬性：
+        <ul>
+            <li><code>inviteContactActivity="<em>activityclass</em>"</code></li>
+            <li>
+                <code>inviteContactActionLabel="&#64;string/<em>invite_action_label</em>"</code>
+            </li>
+        </ul>
+        <code><em>activityclass</em></code> 值是 Activity 的完整類別名稱，以此 Activity 接收意圖。
+<code><em>invite_action_label</em></code> 值是顯示在裝置聯絡人應用程式內 [新增連線]<strong></strong> 選單中的文字字串。
+ 
+
+    </li>
+</ol>
+<p class="note">
+    <strong>注意：</strong><code>ContactsSource</code> 是
+ <code>ContactsAccountType</code> 已淘汰的標籤名稱。
+</p>
+<h3 id="ContactsFile">contacts.xml 參照</h3>
+<p>
+    <code>contacts.xml</code> 檔案包含的 XML 元素，可控制您的同步配接器與應用程式 (聯絡人應用程式和聯絡人供應程式) 之間的互動。
+這些元素在以下各節有詳細的說明。
+
+</p>
+<h4 id="SocialStreamAcctType">&lt;ContactsAccountType&gt; 元素</h4>
+<p>
+    <code>&lt;ContactsAccountType&gt;</code> 元素控制您的應用程式與聯絡人應用程式之間的互動。
+此元素的語法如下：
+</p>
+<pre>
+&lt;ContactsAccountType
+        xmlns:android="http://schemas.android.com/apk/res/android"
+        inviteContactActivity="<em>activity_name</em>"
+        inviteContactActionLabel="<em>invite_command_text</em>"
+        viewContactNotifyService="<em>view_notify_service</em>"
+        viewGroupActivity="<em>group_view_activity</em>"
+        viewGroupActionLabel="<em>group_action_text</em>"
+        viewStreamItemActivity="<em>viewstream_activity_name</em>"
+        viewStreamItemPhotoActivity="<em>viewphotostream_activity_name</em>"&gt;
+</pre>
+<p>
+    <strong>包含於：</strong>
+</p>
+<p>
+    <code>res/xml/contacts.xml</code>
+</p>
+<p>
+    <strong>可以包含：</strong>
+</p>
+<p>
+    <strong><code>&lt;ContactsDataKind&gt;</code></strong>
+</p>
+<p>
+    <strong>描述：</strong>
+</p>
+<p>
+    宣告 Android 元件和 UI 標籤，讓使用者可以邀請聯絡人加入社交網路、使用者的社交網路串流更新內容時通知使用者等等。
+
+
+</p>
+<p>
+    請注意，<code>&lt;ContactsAccountType&gt;</code> 的屬性不需要使用屬性前置詞 <code>android:</code>。
+
+</p>
+<p>
+    <strong>屬性：</strong>
+</p>
+<dl>
+    <dt>{@code inviteContactActivity}</dt>
+    <dd>
+        使用者從裝置的聯絡人應用程式選取[新增連線]<strong></strong>時，您希望在應用程式中啟動的 Activity 完整類別名稱。
+
+
+    </dd>
+    <dt>{@code inviteContactActionLabel}</dt>
+    <dd>
+        在 [新增連線]<strong></strong> 選單的
+ {@code inviteContactActivity} 中所指定 Activity 的顯示文字字串。
+        例如，您可以使用「關注我的網路活動」字串。此標籤可以使用字串資源識別碼。
+
+    </dd>
+    <dt>{@code viewContactNotifyService}</dt>
+    <dd>
+        使用者檢視聯絡人時，要接收通知的應用程式中的服務完整類別名稱。
+此通知是由裝置的聯絡人應用程式所傳送，這樣可以讓您的應用程式延後要處理大量資料的操作，需要時再加以處理。
+
+例如，您的應用程式可以藉由讀取並顯示聯絡人的高解析度相片，以及最近的社交串流項目，以回應此通知。
+
+如要進一步瞭解此功能，請參閱<a href="#SocialStreamInteraction">社交串流互動</a>。
+您可以在
+ <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">SampleSyncAdapter</a> 範例應用程式的 <code>NotifierService.java</code>中查看通知服務的範例。
+
+
+    </dd>
+    <dt>{@code viewGroupActivity}</dt>
+    <dd>
+        應用程式中可以顯示群組資訊的 Activity 完整類別名稱。
+使用者在裝置的聯絡人應用程式中按一下群組標籤時，會顯示此 Activity 的 UI。
+
+    </dd>
+    <dt>{@code viewGroupActionLabel}</dt>
+    <dd>
+        聯絡人應用程式顯示 UI 控制項的標籤，可以讓使用者在您的應用程式中查看群組。
+
+        <p>
+            例如，如果您在裝置上安裝 Google+ 應用程式，而您將Google+ 與聯絡人應用程式進行同步，您會看到 Google+ 社交圈已列為聯絡人應用程式 [群組]<strong></strong> 標籤中的群組。
+
+如果按一下 Google+ 社交圈，您會看到該社交圈中的人員已列為「群組」。
+系統會在畫面頂端顯示 Google+ 圖示，如果您按一下此圖示，則控制權會切換到 Google+ 應用程式。聯絡人應用程式使用
+{@code viewGroupActivity} 執行此動作，並使用 Google+ 圖示做為
+{@code viewGroupActionLabel} 的值。
+
+
+        </p>
+        <p>
+            此屬性可以使用字串資源識別碼。
+        </p>
+    </dd>
+    <dt>{@code viewStreamItemActivity}</dt>
+    <dd>
+        使用者按一下原始聯絡人的串流項目時，裝置的聯絡人應用程式所啟動應用程式中的 Activity 完整類別名稱。
+
+    </dd>
+    <dt>{@code viewStreamItemPhotoActivity}</dt>
+    <dd>
+        使用者按一下原始聯絡人串流項目中的相片時，裝置的聯絡人應用程式所啟動應用程式中的 Activity 完整類別名稱。
+
+
+    </dd>
+</dl>
+<h4 id="SocialStreamDataKind">&lt;ContactsDataKind&gt; 元素</h4>
+<p>
+    <code>&lt;ContactsDataKind&gt;</code> 元素控制聯絡人應用程式的 UI 中，您的應用程式自訂資料列所顯示的控制項。此元素的語法如下：
+
+</p>
+<pre>
+&lt;ContactsDataKind
+        android:mimeType="<em>MIMEtype</em>"
+        android:icon="<em>icon_resources</em>"
+        android:summaryColumn="<em>column_name</em>"
+        android:detailColumn="<em>column_name</em>"&gt;
+</pre>
+<p>
+    <strong>包含於：</strong>
+</p>
+<code>&lt;ContactsAccountType&gt;</code>
+<p>
+    <strong>描述：</strong>
+</p>
+<p>
+    使用此元素讓聯絡人應用程式，將自訂資料列的內容顯示為原始聯絡人詳細資訊的一部分。
+<code>&lt;ContactsAccountType&gt;</code> 的每個 <code>&lt;ContactsDataKind&gt;</code> 子元素都代表同步配接器新增至 {@link android.provider.ContactsContract.Data} 表格的自訂資料列類型。
+
+針對您使用的每個自訂 MIME 類型，新增一個
+ <code>&lt;ContactsDataKind&gt;</code> 元素。如果您不要顯示某個自訂資料列的資料，就不用為該列新增元素。
+
+</p>
+<p>
+    <strong>屬性：</strong>
+</p>
+<dl>
+    <dt>{@code android:mimeType}</dt>
+    <dd>
+        您在
+ {@link android.provider.ContactsContract.Data} 表格中已經為自訂資料列類型所定義的自訂 MIME 類型。例如，
+<code>vnd.android.cursor.item/vnd.example.locationstatus</code> 值可能是
+記錄聯絡人最後已知位置資料列的自訂 MIME 類型。
+    </dd>
+    <dt>{@code android:icon}</dt>
+    <dd>
+        聯絡人應用程式顯示在資料旁邊的 Android
+<a href="{@docRoot}guide/topics/resources/drawable-resource.html">可繪資源</a>。
+使用此項向使用者指出資料是來自您的服務。
+
+    </dd>
+    <dt>{@code android:summaryColumn}</dt>
+    <dd>
+        從資料列擷取兩個值，其中第一個值的欄名稱。此資料列的值會顯示為該項目的第一行。
+第一行的用意是做為資料的摘要使用，但為選用。
+另請參閱
+ <a href="#detailColumn">android:detailColumn</a>。
+    </dd>
+    <dt>{@code android:detailColumn}</dt>
+    <dd>
+        從資料列擷取兩個值，其中第二個值的欄名稱。此資料列的值會顯示為該項目的第二行。
+另請參閱
+{@code android:summaryColumn}。
+    </dd>
+</dl>
+<h2 id="AdditionalFeatures">其他聯絡人供應程式功能</h2>
+<p>
+    除了上一節所描述的主要功能之外，聯絡人供應程式也提供以下實用功能來處理聯絡人資料：
+
+</p>
+    <ul>
+       <li>聯絡人群組</li>
+       <li>相片功能</li>
+    </ul>
+<h3 id="Groups">聯絡人群組</h3>
+<p>
+    聯絡人供應程式可以選擇為群組<strong></strong>資料相關的聯絡人集合貼上標籤。
+如果與使用者帳戶關聯的伺服器要維護群組，該帳戶的帳戶類型所屬的同步配接器，應該要在聯絡人供應程式和伺服器之間傳輸群組資料。
+
+使用者將新的聯絡人新增至伺服器，然後將此聯絡人放置於新群組時，同步配接器必須將新群組新增至 {@link android.provider.ContactsContract.Groups} 表格。
+
+原始聯絡人所屬的一或多個群組會使用 {@link android.provider.ContactsContract.CommonDataKinds.GroupMembership} MIME 類型儲存在 {@link android.provider.ContactsContract.Data} 表格。
+
+
+</p>
+<p>
+    如果您設計的同步配接器，會將原始聯絡人資料從伺服器新增至聯絡人供應程式，表示您並未使用群組，那麼您需要告訴供應程式讓您的資料變成可見的。
+
+在使用者將帳戶新增至裝置時，要執行的程式碼中，更新聯絡人供應程式為帳戶新增的 {@link android.provider.ContactsContract.Settings} 列。
+
+在此列中，將 {@link android.provider.ContactsContract.SettingsColumns#UNGROUPED_VISIBLE
+Settings.UNGROUPED_VISIBLE} 欄的值設為 1。
+這麼做之後，即使您沒有使用群組，聯絡人供應程式
+一律會讓您的聯絡人資料成為可見的。
+</p>
+<h3 id="Photos">聯絡人相片</h3>
+<p>
+    {@link android.provider.ContactsContract.Data} 表格會使用 MIME 類型 {@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+Photo.CONTENT_ITEM_TYPE} 在列中儲存相片。
+列的
+{@link android.provider.ContactsContract.RawContactsColumns#CONTACT_ID} 欄是連結到其所屬原始聯絡人的
+ {@code android.provider.BaseColumns#_ID} 欄。
+    類別 {@link android.provider.ContactsContract.Contacts.Photo} 定義了
+ {@link android.provider.ContactsContract.Contacts} 的子表格，其中包含聯絡人主要相片的相片資訊，也就是聯絡人之主要原始聯絡人的主要相片。
+同樣地，
+類別 {@link android.provider.ContactsContract.RawContacts.DisplayPhoto} 定義了 {@link android.provider.ContactsContract.RawContacts} 的子表格，其中包含原始聯絡人之主要相片的相片資訊。
+
+
+</p>
+<p>
+    {@link android.provider.ContactsContract.Contacts.Photo} 和
+{@link android.provider.ContactsContract.RawContacts.DisplayPhoto} 的參考文件含有擷取相片資訊的範例。
+擷取原始聯絡人的主要縮圖沒有方便使用的類別，不過您可以傳送查詢到
+{@link android.provider.ContactsContract.Data} 表格，然後選取原始聯絡人的
+{@code android.provider.BaseColumns#_ID}、{@link android.provider.ContactsContract.CommonDataKinds.Photo#CONTENT_ITEM_TYPE
+Photo.CONTENT_ITEM_TYPE} 以及 {@link android.provider.ContactsContract.Data#IS_PRIMARY} 欄，以尋找原始聯絡人的主要相片列。
+
+
+
+</p>
+<p>
+    人員的社交串流資料可能也包括相片。這些資訊都儲存在
+{@code android.provider.ContactsContract.StreamItemPhotos} 表格。<a href="#StreamPhotos">社交串流相片</a>中針對此表格會有更詳細的說明。
+
+</p>
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/providers/content-provider-basics.jd b/docs/html-intl/intl/zh-tw/guide/topics/providers/content-provider-basics.jd
new file mode 100644
index 0000000..7831478
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/providers/content-provider-basics.jd
@@ -0,0 +1,1196 @@
+page.title=內容供應程式基本概念
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+<!-- In this document -->
+<h2>本文件內容</h2>
+<ol>
+    <li>
+        <a href="#Basics">總覽</a>
+        <ol>
+            <li>
+                <a href="#ClientProvider">存取供應程式</a>
+            </li>
+            <li>
+                <a href="#ContentURIs">內容 URI</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#SimpleQuery">從供應程式擷取資料</a>
+        <ol>
+            <li>
+                <a href="#RequestPermissions">要求讀取權限</a>
+            </li>
+            <li>
+                <a href="#Query">建構查詢</a>
+            </li>
+            <li>
+                <a href="#DisplayResults">顯示查詢結果</a>
+            </li>
+            <li>
+                <a href="#GettingResults">從查詢結果取得資料</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#Permissions">內容供應程式權限</a>
+    </li>
+    <li>
+        <a href="#Modifications">插入、更新及刪除資料</a>
+        <ol>
+            <li>
+                <a href="#Inserting">插入資料</a>
+            </li>
+            <li>
+                <a href="#Updating">更新資料</a>
+            </li>
+            <li>
+                <a href="#Deleting">刪除資料</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#DataTypes">供應程式資料類型</a>
+    </li>
+    <li>
+        <a href="#AltForms">供應程式存取權的替代形式</a>
+        <ol>
+            <li>
+                <a href="#Batch">批次存取</a>
+            </li>
+            <li>
+                <a href="#Intents">透過意圖存取資料</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClasses">合約類別</a>
+    </li>
+    <li>
+        <a href="#MIMETypeReference">MIME 類型參考資料</a>
+    </li>
+</ol>
+
+    <!-- Key Classes -->
+<h2>重要類別</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.content.ContentResolver}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+
+    <!-- Related Samples -->
+<h2>相關範例</h2>
+    <ol>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">
+        游標 (使用者)</a>
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">
+        游標 (電話)</a>
+        </li>
+    </ol>
+
+    <!-- See also -->
+<h2>另請參閱</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+            建立內容供應程式</a>
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+            日曆供應程式</a>
+        </li>
+    </ol>
+</div>
+</div>
+
+    <!-- Intro paragraphs -->
+<p>
+    內容供應程式可管理中央資料存放庫的存取權。供應程式是 Android 應用程式的一部分，通常可提供本身的 UI 方便使用者處理資料。
+
+不過，內容供應程式主要是供其他應用程式使用 (透過供應程式用戶端物件進行存取)。
+供應程式與供應程式用戶端可提供一致的標準介面，除了可用於存取資料，還能用來處理程序間通訊以及保護資料存取的安全。
+
+
+</p>
+<p>
+    本主題涵蓋以下基本概念：
+</p>
+    <ul>
+        <li>內容供應程式的運作方式。</li>
+        <li>可用於從內容供應程式擷取資料的 API。</li>
+        <li>可用於插入、更新或刪除內容供應程式資料的 API。</li>
+        <li>有助於使用供應程式的其他 API 功能。</li>
+    </ul>
+
+    <!-- Basics -->
+<h2 id="Basics">總覽</h2>
+<p>
+    內容供應程式會向外部應用程式以一或多份表格顯示資料，這些表格的樣式類似於關聯式資料庫中的表格。
+每個資料列代表供應程式所收集部分資料類型的單一執行個體，而列中的每個資料欄則代表針對該執行個體收集的個別資料。
+
+
+</p>
+<p>
+    例如，Android 平台內建的其中一個供應程式是使用者字典，其中儲存使用者想保留的非標準字詞的拼寫方式。
+表 1 說明此供應程式表格顯示這種資料的方式：
+
+</p>
+<p class="table-caption">
+    <strong>表 1：</strong>使用者字典表格範例。
+</p>
+<table id="table1" style="width: 50%;">
+    <tr>
+        <th style="width:20%" align="center" scope="col">字詞</th>
+        <th style="width:20%" align="center" scope="col">應用程式 ID</th>
+        <th style="width:20%" align="center" scope="col">頻率</th>
+        <th style="width:20%" align="center" scope="col">地區</th>
+        <th style="width:20%" align="center" scope="col">_ID</th>
+    </tr>
+    <tr>
+        <td align="center" scope="row">mapreduce</td>
+        <td align="center">user1</td>
+        <td align="center">100</td>
+        <td align="center">en_US</td>
+        <td align="center">1</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">precompiler</td>
+        <td align="center">user14</td>
+        <td align="center">200</td>
+        <td align="center">fr_FR</td>
+        <td align="center">2</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">applet</td>
+        <td align="center">user2</td>
+        <td align="center">225</td>
+        <td align="center">fr_CA</td>
+        <td align="center">3</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">const</td>
+        <td align="center">user1</td>
+        <td align="center">255</td>
+        <td align="center">pt_BR</td>
+        <td align="center">4</td>
+    </tr>
+    <tr>
+        <td align="center" scope="row">int</td>
+        <td align="center">user5</td>
+        <td align="center">100</td>
+        <td align="center">en_UK</td>
+        <td align="center">5</td>
+    </tr>
+</table>
+<p>
+    在表 1 中，每個資料列代表標準字典未收錄的某個字詞執行個體。
+每個資料欄則代表該字詞的部分資料，例如初次出現該字詞的地區。
+欄標題為儲存在供應程式中的欄名稱。
+如果想得知某一列的地區，請查看相對應的 <code>locale</code> 欄。以這個供應程式為例，<code>_ID</code> 欄的用途與供應程式自動維護的「主索引鍵」欄相同。
+
+
+</p>
+<p class="note">
+    <strong>注意：</strong>供應程式不需具備主索引鍵，也不必採用 <code>_ID</code> 做為主索引鍵欄的名稱 (如果有此欄的話)。
+不過，如果您想將供應程式的資料繫結至 {@link android.widget.ListView}，就必須將其中一個資料欄命名為 <code>_ID</code>。
+
+如要進一步瞭解這項規定，請參閱<a href="#DisplayResults">顯示查詢結果</a>。
+
+</p>
+<h3 id="ClientProvider">存取供應程式</h3>
+<p>
+    應用程式會透過 {@link android.content.ContentResolver} 用戶端物件存取內容供應程式的資料。
+此物件內含的方法可呼叫供應程式物件 ({@link android.content.ContentProvider} 子類別的其中一項執行個體) 中的同名方法。
+
+
+{@link android.content.ContentResolver} 方法可提供永久儲存空間的「CRUD」(建立、擷取、更新、刪除) 基本功能。
+
+</p>
+<p>
+    用戶端應用程式處理程序中的 {@link android.content.ContentResolver} 物件以及擁有供應程式的應用程式中的 {@link android.content.ContentProvider} 物件，會自動處理程序間通訊。
+{@link android.content.ContentProvider} 還可當作其資料存放庫與外部資料表格之間的抽象層。
+
+
+
+</p>
+<p class="note">
+    <strong>注意：</strong>如要存取供應程式，您的應用程式通常必須透過本身的宣示說明檔案要求特定權限。
+如需詳細資料，請參閱<a href="#Permissions">內容供應程式權限</a>。
+
+</p>
+<p>
+    例如，如要從使用者字典供應程式取得一份列出字詞及其地區的清單，請呼叫 {@link android.content.ContentResolver#query ContentResolver.query()}。
+
+    {@link android.content.ContentResolver#query query()} 方法會呼叫使用者字典供應程式所定義的
+{@link android.content.ContentProvider#query ContentProvider.query()} 方法。
+以下是 
+{@link android.content.ContentResolver#query ContentResolver.query()} 呼叫的程式碼：
+<p>
+<pre>
+// Queries the user dictionary and returns results
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,   // The content URI of the words table
+    mProjection,                        // The columns to return for each row
+    mSelectionClause                    // Selection criteria
+    mSelectionArgs,                     // Selection criteria
+    mSortOrder);                        // The sort order for the returned rows
+</pre>
+<p>
+    表 2 列出 
+{@link android.content.ContentResolver#query
+query(Uri,projection,selection,selectionArgs,sortOrder)} 的引數及相對應的 SQL SELECT 陳述式：
+</p>
+<p class="table-caption">
+    <strong>表 2：</strong>Query() 與 SQL 查詢的對照表。
+</p>
+<table id="table2" style="width: 75%;">
+    <tr>
+        <th style="width:25%" align="center" scope="col">query() 引數</th>
+        <th style="width:25%" align="center" scope="col">SELECT 關鍵字/參數</th>
+        <th style="width:50%" align="center" scope="col">備註</th>
+    </tr>
+    <tr>
+        <td align="center"><code>Uri</code></td>
+        <td align="center"><code>FROM <em>table_name</em></code></td>
+        <td><code>Uri</code> 會對應至供應程式中名為的「table_name」<em></em>表格。</td>
+    </tr>
+    <tr>
+        <td align="center"><code>projection</code></td>
+        <td align="center"><code><em>col,col,col,...</em></code></td>
+        <td>
+            <code>projection</code> 代表需針對每個擷取的資料列
+納入的一系列資料欄。
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>selection</code></td>
+        <td align="center"><code>WHERE <em>col</em> = <em>value</em></code></td>
+        <td><code>selection</code> 會指定資料列選取條件。</td>
+    </tr>
+    <tr>
+        <td align="center"><code>selectionArgs</code></td>
+        <td align="center">
+            (沒有任何相對應的關鍵字/參數。選取引數會取代選取子句中的 
+<code>?</code> 預留位置。)
+        </td>
+    </tr>
+    <tr>
+        <td align="center"><code>sortOrder</code></td>
+        <td align="center"><code>ORDER BY <em>col,col,...</em></code></td>
+        <td>
+            <code>sortOrder</code> 會指定資料列在傳回的 {@link android.database.Cursor} 中的顯示順序。
+
+        </td>
+    </tr>
+</table>
+<h3 id="ContentURIs">內容 URI</h3>
+<p>
+    <strong>內容 URI</strong> 是指用於識別供應程式資料的 URI，內容 URI 包括整個供應程式的符號名稱 (亦即供應程式的<strong>授權</strong>)，以及指向表格的名稱 (亦即<strong>路徑</strong>)。
+
+當您呼叫用戶端方法來存取供應程式中的表格時，該表格的內容 URI 即為其中一個引數。
+
+
+</p>
+<p>
+    在上方程式碼中，
+{@link android.provider.UserDictionary.Words#CONTENT_URI} 常數包含使用者字典表格「字詞」的內容 URI。
+{@link android.content.ContentResolver} 物件會剖析該 URI 的授權，然後比較授權和已知供應程式的系統表格，藉此「解析」供應程式。
+
+接著 {@link android.content.ContentResolver} 可以查詢引數分派給正確的供應程式。
+
+
+</p>
+<p>
+    {@link android.content.ContentProvider} 會使用內容 URI 的路徑部分選擇要存取的表格。
+供應程式通常包含用於公開每個表格的「路徑」<strong></strong>。
+</p>
+<p>
+    以上方程式碼為例，「字詞」的完整 URI 會如下所示：
+</p>
+<pre>
+content://user_dictionary/words
+</pre>
+<p>
+    其中的 <code>user_dictionary</code> 字串代表供應程式的授權，而 <code>words</code> 字串則是表格的路徑。
+字串 <code>content://</code> (<strong>配置</strong>) 一律會顯示，而起會將此項目識別為內容 URI。
+
+
+</p>
+<p>
+    許多供應程式都可讓您存取表格中的單一資料列，方法是在 URI 後方附加 ID 值。例如，如要從使用者字典擷取 <code>_ID</code> 為 <code>4</code> 的資料列，請使用以下內容 URI：
+
+
+</p>
+<pre>
+Uri singleUri = ContentUris.withAppendedId(UserDictionary.Words.CONTENT_URI,4);
+</pre>
+<p>
+    在更新或刪除您擷取的一組資料列時，通常需要使用 ID 值。
+
+</p>
+<p class="note">
+    <strong>注意：</strong>{@link android.net.Uri} 和 {@link android.net.Uri.Builder} 類別包含可用於從字串建構格式正確之 URI 物件的簡便方法。
+而 {@link android.content.ContentUris} 則包含可用於將 ID 值附加至 URI 的簡便方法。上方程式碼片段是使用 {@link android.content.ContentUris#withAppendedId
+withAppendedId()} 將 ID 附加至 UserDictionary 內容 URI。
+
+
+</p>
+
+
+    <!-- Retrieving Data from the Provider -->
+<h2 id="SimpleQuery">從供應程式擷取資料</h2>
+<p>
+    本節以使用者字典供應程式為例，說明如何從供應程式擷取資料。
+
+</p>
+<p class="note">
+    為了避免造成混淆，本節中的程式碼片段是透過「UI 執行緒」呼叫 {@link android.content.ContentResolver#query ContentResolver.query()}。
+不過在實際程式碼中，您需要透過個別執行緒以非同步方式進行查詢。
+您可以使用 {@link android.content.CursorLoader} 類別 (詳情請參閱<a href="{@docRoot}guide/components/loaders.html">載入器</a>指南) 來完成這項作業。
+
+
+此外，本節中的程式碼都只是程式碼片段，無法呈現完整的應用程式。
+
+</p>
+<p>
+    如要從供應程式擷取資料，請按照下列基本步驟操作：
+</p>
+<ol>
+   <li>
+        要求供應程式的讀取權限。
+   </li>
+   <li>
+        定義可將查詢傳送至供應程式的程式碼。
+   </li>
+</ol>
+<h3 id="RequestPermissions">要求讀取權限</h3>
+<p>
+    您的應用程式需取得供應程式的「讀取權限」，才能從供應程式擷取資料。
+您無法在執行階段要求此權限；您必須使用 <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 元素和供應程式所定義的確切權限名稱，在宣示說明中指明您需要此權限。
+
+
+
+在宣示說明中指定此元素後，即可為您的應用程式「要求」這項權限。
+當使用者安裝您應用程式時，他們會間接核准此要求。
+
+</p>
+<p>
+    如要找出所使用供應程式的確切讀取權限名稱，以及該供應程式使用的其他存取權限名稱，請查閱供應程式的說明文件。
+
+
+</p>
+<p>
+    如要進一步瞭解用於存取供應程式的權限角色，請參閱<a href="#Permissions">內容供應程式權限</a>。
+
+</p>
+<p>
+    使用者字典供應程式會在本身的宣示說明檔案中定義 <code>android.permission.READ_USER_DICTIONARY</code> 權限，因此想讀取該供應程式的應用程式都必須要求此權限。
+
+
+</p>
+<!-- Constructing the query -->
+<h3 id="Query">建構查詢</h3>
+<p>
+    從供應程式擷取資料的下一個步驟是建構查詢。本節中的第一個程式碼片段可定義數個用於存取使用者字典供應程式的變數：
+
+</p>
+<pre class="prettyprint">
+
+// A "projection" defines the columns that will be returned for each row
+String[] mProjection =
+{
+    UserDictionary.Words._ID,    // Contract class constant for the _ID column name
+    UserDictionary.Words.WORD,   // Contract class constant for the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant for the locale column name
+};
+
+// Defines a string to contain the selection clause
+String mSelectionClause = null;
+
+// Initializes an array to contain selection arguments
+String[] mSelectionArgs = {""};
+
+</pre>
+<p>
+    下一個程式碼片段以使用者字典供應程式為例，示範 {@link android.content.ContentResolver#query ContentResolver.query()} 的使用方式。
+
+供應程式用戶端查詢類似於 SQL 查詢，包含一組要傳回的資料欄、一組選取條件以及一個排序順序。
+
+</p>
+<p>
+    查詢需傳回的一組資料欄稱為「投影」<strong></strong>(即 <code>mProjection</code> 變數)。
+
+</p>
+<p>
+    指定要擷取的資料列的運算式會分為選取子句和選取引數。
+選取子句包含邏輯運算式和布林運算式、欄名稱和值 (即 <code>mSelectionClause</code> 變數)。
+如果您指定可替換的參數 <code>?</code>，而不是某個值，則查詢方法會從選取引數陣列 (即 <code>mSelectionArgs</code> 變數) 擷取相關值。
+
+
+</p>
+<p>
+    在下方程式碼片段中，如果使用者未輸入任何字詞，選取子句會設定為 <code>null</code>，此時查詢會傳回供應程式中的所有字詞。
+如果使用者輸入了某個字詞，則選取子句會設定為 <code>UserDictionary.Words.WORD + " = ?"</code>，而選取引數陣列的第一個元素會設為使用者所輸入的字詞。
+
+
+</p>
+<pre class="prettyprint">
+/*
+ * This defines a one-element String array to contain the selection argument.
+ */
+String[] mSelectionArgs = {""};
+
+// Gets a word from the UI
+mSearchString = mSearchWord.getText().toString();
+
+// Remember to insert code here to check for invalid or malicious input.
+
+// If the word is the empty string, gets everything
+if (TextUtils.isEmpty(mSearchString)) {
+    // Setting the selection clause to null will return all words
+    mSelectionClause = null;
+    mSelectionArgs[0] = "";
+
+} else {
+    // Constructs a selection clause that matches the word that the user entered.
+    mSelectionClause = UserDictionary.Words.WORD + " = ?";
+
+    // Moves the user's input string to the selection arguments.
+    mSelectionArgs[0] = mSearchString;
+
+}
+
+// Does a query against the table and returns a Cursor object
+mCursor = getContentResolver().query(
+    UserDictionary.Words.CONTENT_URI,  // The content URI of the words table
+    mProjection,                       // The columns to return for each row
+    mSelectionClause                   // Either null, or the word the user entered
+    mSelectionArgs,                    // Either empty, or the string the user entered
+    mSortOrder);                       // The sort order for the returned rows
+
+// Some providers return null if an error occurs, others throw an exception
+if (null == mCursor) {
+    /*
+     * Insert code here to handle the error. Be sure not to use the cursor! You may want to
+     * call android.util.Log.e() to log this error.
+     *
+     */
+// If the Cursor is empty, the provider found no matches
+} else if (mCursor.getCount() &lt; 1) {
+
+    /*
+     * Insert code here to notify the user that the search was unsuccessful. This isn't necessarily
+     * an error. You may want to offer the user the option to insert a new row, or re-type the
+     * search term.
+     */
+
+} else {
+    // Insert code here to do something with the results
+
+}
+</pre>
+<p>
+    這個查詢類似下方的 SQL 陳述式：
+</p>
+<pre>
+SELECT _ID, word, locale FROM words WHERE word = &lt;userinput&gt; ORDER BY word ASC;
+</pre>
+<p>
+    這個 SQL 陳述式會使用實際的欄名稱，而不是合約類別常數。
+</p>
+<h4 id="Injection">防範惡意輸入</h4>
+<p>
+    如果內容供應程式所管理的資料是儲存在 SQL 資料庫中，在原始 SQL 陳述式中納入不受信任的外部資料可能會導致 SQL 遭植入惡意程式碼。
+
+</p>
+<p>
+    以下提供選取子句範例：
+</p>
+<pre>
+// Constructs a selection clause by concatenating the user's input to the column name
+String mSelectionClause =  "var = " + mUserInput;
+</pre>
+<p>
+    使用這個選取子句可讓使用者能夠將惡意 SQL 串連至您的 SQL 陳述式。
+    例如，使用者可針對 <code>mUserInput</code> 輸入「nothing; DROP TABLE *;」，以產生 <code>var = nothing; DROP TABLE *;</code> 選取子句。
+由於系統會將選取子句視為 SQL 陳述式，因此這種選取子句可能會導致供應程式清除底層 SQLite 資料庫中的所有表格 (除非您設定供應程式捕捉 <a href="http://en.wikipedia.org/wiki/SQL_injection">SQL 植入</a>嘗試)。
+
+
+
+</p>
+<p>
+    為了避免發生這個問題，請使用包含 <code>?</code> 可替換參數和一系列選取引數的選取子句。
+當您執行此動作時，使用者輸入會直接繫結到查詢，而不是被解譯為 SQL 陳述式的一部分。
+
+    這樣一來，系統就不會將選取子句視為 SQL，進而防止使用者輸入植入惡意 SQL。您也可以使用以下選取子句，而不是透過串連方式納入使用者輸入：
+
+</p>
+<pre>
+// Constructs a selection clause with a replaceable parameter
+String mSelectionClause =  "var = ?";
+</pre>
+<p>
+    設定如下所示的一系列選取引數：
+</p>
+<pre>
+// Defines an array to contain the selection arguments
+String[] selectionArgs = {""};
+</pre>
+<p>
+    如下所示在選取引數中加入一個值：
+</p>
+<pre>
+// Sets the selection argument to the user's input
+selectionArgs[0] = mUserInput;
+</pre>
+<p>
+    建議您使用包含 <code>?</code> 可替換參數和一系列選取引數的選取子句，即使供應程式並非以 SQL 資料庫為基礎亦然。
+
+
+</p>
+<!-- Displaying the results -->
+<h3 id="DisplayResults">顯示查詢結果</h3>
+<p>
+    {@link android.content.ContentResolver#query ContentResolver.query()} 用戶端方法一律會針對符合查詢選取條件的資料列，傳回內含查詢的投影所指定資料欄的 {@link android.database.Cursor}。
+
+{@link android.database.Cursor} 物件會針對本身包含的資料列和資料欄提供隨機讀取存取權。
+
+您可以使用 {@link android.database.Cursor} 方法逐一查看結果中的資料列、決定每個資料欄的資料類型、匯出資料欄的資料，以及檢查結果的其他屬性。
+
+實作某些 {@link android.database.Cursor} 方法可在供應程式的資料變更時自動更新相關物件，或在 {@link android.database.Cursor} 變更時觸發觀察器物件中的方法，或是同時進行以上兩者。
+
+
+</p>
+<p class="note">
+    <strong>注意：</strong>供應程式可能會根據建立查詢物件的屬性限制資料欄的存取權。
+例如，內容供應程式會限制同步配接器存取部分資料欄，避免將這些資料欄傳回 Activity 或服務。
+
+</p>
+<p>
+    如果沒有任何資料欄符合選取條件，則供應程式會傳回 {@link android.database.Cursor#getCount Cursor.getCount()} 為 0 的 
+{@link android.database.Cursor} 物件 (即沒有任何內容的游標)。
+
+</p>
+<p>
+    如果發生內部錯誤，查詢結果將取決於供應程式的決定。供應程式可能會選擇傳回 <code>null</code>，或是擲回 {@link java.lang.Exception}。
+
+</p>
+<p>
+    由於 {@link android.database.Cursor} 是一份資料欄「清單」，因此要顯示 {@link android.database.Cursor} 的內容，最佳做法是透過 {@link android.widget.SimpleCursorAdapter} 將其連結至 {@link android.widget.ListView}。
+
+
+</p>
+<p>
+    以下程式碼片段是上一個程式碼片段的延伸。它會建立內含查詢所擷取 {@link android.database.Cursor} 的 
+{@link android.widget.SimpleCursorAdapter} 物件，並將該物件設定為 {@link android.widget.ListView} 的配接器：
+
+
+</p>
+<pre class="prettyprint">
+// Defines a list of columns to retrieve from the Cursor and load into an output row
+String[] mWordListColumns =
+{
+    UserDictionary.Words.WORD,   // Contract class constant containing the word column name
+    UserDictionary.Words.LOCALE  // Contract class constant containing the locale column name
+};
+
+// Defines a list of View IDs that will receive the Cursor columns for each row
+int[] mWordListItems = { R.id.dictWord, R.id.locale};
+
+// Creates a new SimpleCursorAdapter
+mCursorAdapter = new SimpleCursorAdapter(
+    getApplicationContext(),               // The application's Context object
+    R.layout.wordlistrow,                  // A layout in XML for one row in the ListView
+    mCursor,                               // The result from the query
+    mWordListColumns,                      // A string array of column names in the cursor
+    mWordListItems,                        // An integer array of view IDs in the row layout
+    0);                                    // Flags (usually none are needed)
+
+// Sets the adapter for the ListView
+mWordList.setAdapter(mCursorAdapter);
+</pre>
+<p class="note">
+    <strong>注意：</strong>如要返回內含 {@link android.database.Cursor} 的{@link android.widget.ListView}，您必須為游標加入名為 <code>_ID</code> 的資料欄。
+
+    因為這樣，上述查詢會擷取「字詞」表格的 <code>_ID</code> 欄，即使 {@link android.widget.ListView} 未顯示該資料欄亦然。
+
+    這項限制也是為何大多數供應程式會針對本身的所有表格設定 <code>_ID</code> 欄的原因。
+
+</p>
+
+        <!-- Getting data from query results -->
+<h3 id="GettingResults">從查詢結果取得資料</h3>
+<p>
+    除了單純顯示查詢結果以外，您還可以將它們用於其他工作。例如，您可以從使用者字典擷取拼字，然後在其他供應程式中查閱這些拼字。
+
+如要這麼做，請逐一查看 {@link android.database.Cursor} 中的資料列：
+</p>
+<pre class="prettyprint">
+
+// Determine the column index of the column named "word"
+int index = mCursor.getColumnIndex(UserDictionary.Words.WORD);
+
+/*
+ * Only executes if the cursor is valid. The User Dictionary Provider returns null if
+ * an internal error occurs. Other providers may throw an Exception instead of returning null.
+ */
+
+if (mCursor != null) {
+    /*
+     * Moves to the next row in the cursor. Before the first movement in the cursor, the
+     * "row pointer" is -1, and if you try to retrieve data at that position you will get an
+     * exception.
+     */
+    while (mCursor.moveToNext()) {
+
+        // Gets the value from the column.
+        newWord = mCursor.getString(index);
+
+        // Insert code here to process the retrieved word.
+
+        ...
+
+        // end of while loop
+    }
+} else {
+
+    // Insert code here to report an error if the cursor is null or the provider threw an exception.
+}
+</pre>
+<p>
+    {@link android.database.Cursor} 實作方法包含數個用於從物件擷取不同資料類型的「get」方法。
+例如，上方程式碼片段使用了 {@link android.database.Cursor#getString getString()}。
+此外，這種實作方法還包括 
+{@link android.database.Cursor#getType getType()} 方法，可傳回指定資料欄資料類型的值。
+
+</p>
+
+
+    <!-- Requesting permissions -->
+<h2 id="Permissions">內容供應程式權限</h2>
+<p>
+    供應程式的應用程式可指定其他應用程式在存取供應程式的資料時所需的權限。
+這些權限可確保使用者瞭解應用程式嘗試存取的資料為何。
+根據供應程式需求，其他應用程式必須取得相關必要權限才能存取供應程式。
+使用者可在安裝應用程式時得知這些必要的權限。
+
+</p>
+<p>
+    如果供應程式的應用程式未指定任何權限，則其他應用程式就無法存取供應程式的資料。
+不過，供應程式的應用程式元件一律會具備完整的讀取及寫入存取權，無論供應程式指定的權限為何。
+
+</p>
+<p>
+    如上所述，使用者字典供應程式要求其他應用程式需取得 <code>android.permission.READ_USER_DICTIONARY</code> 權限，才能擷取其中的資料。
+
+    而該供應程式還個別針對插入、更新或刪除資料用途，指定了不同的 <code>android.permission.WRITE_USER_DICTIONARY</code> 權限。
+
+</p>
+<p>
+    如要取得存取供應程式時所需的權限，應用程式可利用 <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 元素在本身的宣示說明檔案中要求相關權限。
+
+當 Android 套件管理員安裝應用程式時，使用者必須授予該應用程式要求的所有權限。
+使用者授予所有權限後，套件管理員才能繼續進行安裝作業；如果使用者不授予權限，則套件管理員就會取消安裝。
+
+
+</p>
+<p>
+    以下的 
+<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+ 元素會要求使用者字典供應程式的讀取存取權：
+</p>
+<pre>
+    &lt;uses-permission android:name="android.permission.READ_USER_DICTIONARY"&gt;
+</pre>
+<p>
+    如要進一步瞭解權限對供應程式存取的影響，請參閱<a href="{@docRoot}guide/topics/security/security.html">安全性和權限</a>指南。
+
+</p>
+
+
+<!-- Inserting, Updating, and Deleting Data -->
+<h2 id="Modifications">插入、更新及刪除資料</h2>
+<p>
+    透過從供應程式擷取資料的相同方式，您也可以利用供應程式用戶端與供應程式的 {@link android.content.ContentProvider} 之間的互動來修改資料。
+
+    如要這麼做，請呼叫其中引數已傳送到相對應 {@link android.content.ContentProvider} 方法的 {@link android.content.ContentResolver} 方法。
+供應程式和供應程式用戶端會自動處理安全性和處理程序間通訊。
+
+</p>
+<h3 id="Inserting">插入資料</h3>
+<p>
+    如要在供應程式中插入資料，請呼叫 
+{@link android.content.ContentResolver#insert ContentResolver.insert()} 方法。
+這個方法會在供應程式中插入新的資料列，並傳回該列的內容 URI。
+    以下程式碼片段示範如何在使用者字典供應程式中插入新的字詞：
+</p>
+<pre class="prettyprint">
+// Defines a new Uri object that receives the result of the insertion
+Uri mNewUri;
+
+...
+
+// Defines an object to contain the new values to insert
+ContentValues mNewValues = new ContentValues();
+
+/*
+ * Sets the values of each column and inserts the word. The arguments to the "put"
+ * method are "column name" and "value"
+ */
+mNewValues.put(UserDictionary.Words.APP_ID, "example.user");
+mNewValues.put(UserDictionary.Words.LOCALE, "en_US");
+mNewValues.put(UserDictionary.Words.WORD, "insert");
+mNewValues.put(UserDictionary.Words.FREQUENCY, "100");
+
+mNewUri = getContentResolver().insert(
+    UserDictionary.Word.CONTENT_URI,   // the user dictionary content URI
+    mNewValues                          // the values to insert
+);
+</pre>
+<p>
+    新資料列的資料會傳入單一 {@link android.content.ContentValues} 物件，該物件的格式與單列游標類似。
+您不必為這個物件中的資料欄指定相同的資料類型，而且如果您不想指定任何值，可以將資料欄設定為 <code>null</code> 以使用 {@link android.content.ContentValues#putNull ContentValues.putNull()}。
+
+
+</p>
+<p>
+    該程式碼片段並不會新增 <code>_ID</code> 欄，這是因為系統自動會維護該欄。
+供應程式會將不重複值 <code>_ID</code> 指派給新增的所有資料列。
+供應程式通常會採用該值做為表格的主索引鍵。
+</p>
+<p>
+    <code>newUri</code> 以下方格式傳回的內容 URI 可用於識別新增的資料列：
+
+</p>
+<pre>
+content://user_dictionary/words/&lt;id_value&gt;
+</pre>
+<p>
+    <code>&lt;id_value&gt;</code> 是 ID 為 <code>_ID</code> 的資料列內容。
+    大多數供應程式可自動偵測這種格式的內容 URI，並據以針對指定的資料列執行特定作業。
+
+</p>
+<p>
+    如要從傳回的 {@link android.net.Uri} 取得 <code>_ID</code> 的值，請呼叫 
+{@link android.content.ContentUris#parseId ContentUris.parseId()}。
+</p>
+<h3 id="Updating">更新資料</h3>
+<p>
+    如要更新資料列，請使用內含經過更新的值 (與您在插入資料時所使用的值相同) 以及選取條件 (與您在建立查詢時所使用的選取條件相同) 的 {@link android.content.ContentValues} 物件。
+
+    您所使用的用戶端方法為 
+{@link android.content.ContentResolver#update ContentResolver.update()}。您只需針對要更新的資料欄，將相關值加到 {@link android.content.ContentValues} 物件即可。
+如果您想清除資料欄的內容，請將值設定為 <code>null</code>。
+
+</p>
+<p>
+    以下程式碼片段會針對地區代碼含有「en」字詞的所有資料列，將其地區代碼變更為 <code>null</code>。
+系統會傳回已更新的資料列數量：
+</p>
+<pre>
+// Defines an object to contain the updated values
+ContentValues mUpdateValues = new ContentValues();
+
+// Defines selection criteria for the rows you want to update
+String mSelectionClause = UserDictionary.Words.LOCALE +  "LIKE ?";
+String[] mSelectionArgs = {"en_%"};
+
+// Defines a variable to contain the number of updated rows
+int mRowsUpdated = 0;
+
+...
+
+/*
+ * Sets the updated value and updates the selected words.
+ */
+mUpdateValues.putNull(UserDictionary.Words.LOCALE);
+
+mRowsUpdated = getContentResolver().update(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mUpdateValues                       // the columns to update
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    建議您在呼叫 {@link android.content.ContentResolver#update ContentResolver.update()} 時對使用者輸入進行檢測。
+如需詳細資訊，請參閱<a href="#Injection">防範惡意輸入</a>。
+
+</p>
+<h3 id="Deleting">刪除資料</h3>
+<p>
+    刪除資料列的方法與擷取資料列資料類似：您必須為想刪除的資料列指定選取條件，用戶端方法最後會傳回已刪除的資料列數量。
+
+    以下程式碼片段可刪除應用程式 ID 為「user」的資料列。此外，這個方法還會傳回已刪除的資料列數量。
+
+</p>
+<pre>
+
+// Defines selection criteria for the rows you want to delete
+String mSelectionClause = UserDictionary.Words.APP_ID + " LIKE ?";
+String[] mSelectionArgs = {"user"};
+
+// Defines a variable to contain the number of rows deleted
+int mRowsDeleted = 0;
+
+...
+
+// Deletes the words that match the selection criteria
+mRowsDeleted = getContentResolver().delete(
+    UserDictionary.Words.CONTENT_URI,   // the user dictionary content URI
+    mSelectionClause                    // the column to select on
+    mSelectionArgs                      // the value to compare to
+);
+</pre>
+<p>
+    建議您在呼叫 {@link android.content.ContentResolver#delete ContentResolver.delete()}　時對使用者輸入進行檢測。
+如需詳細資訊，請參閱<a href="#Injection">防範惡意輸入</a>。
+
+</p>
+<!-- Provider Data Types -->
+<h2 id="DataTypes">供應程式資料類型</h2>
+<p>
+    內容供應程式可提供多種資料類型。使用者字典供應程式只能提供文字，但供應程式還可提供下列格式：
+
+</p>
+    <ul>
+        <li>
+            整數
+        </li>
+        <li>
+            長整數 (long)
+        </li>
+        <li>
+            浮點數
+        </li>
+        <li>
+            長浮點數 (double)
+        </li>
+    </ul>
+<p>
+    供應程式慣用的其他資料類型為二進位大型物件 (BLOB)，這種資料會實作成 64 KB 位元組陣列。
+如果想瞭解可用的資料類型，請查閱 {@link android.database.Cursor} 類別的「get」方法。
+
+</p>
+<p>
+    供應程式的說明文件通常會列出其中每個資料欄的資料類型。
+    使用者字典供應程式的資料類型列在其合約類別 {@link android.provider.UserDictionary.Words} 的參考文件 (如需合約類別的相關資訊，請參閱<a href="#ContractClasses">合約類別</a>一節) 中。
+
+
+    您也可以呼叫 {@link android.database.Cursor#getType
+Cursor.getType()} 來確認可用的資料類型。
+</p>
+<p>
+    此外，供應程式也會保留任何所定義內容 URI 的 MIME 資料類型資訊。您可以利用 MIME 類型資訊確認您的應用程式是否可處理供應程式所提供的資料，或是根據 MIME 類型選擇處理方式類型。
+
+當您使用內含複雜的資料結構或檔案的供應程式時，通常需要使用 MIME 類型。
+
+例如，聯絡人供應程式中的 {@link android.provider.ContactsContract.Data} 表格會使用 MIME 類型為每個資料列中儲存的聯絡人資料加上標籤。
+
+如要取得與內容 URI 相對應的 MIME 類型，請呼叫 
+{@link android.content.ContentResolver#getType ContentResolver.getType()}。
+</p>
+<p>
+    如要瞭解標準與自訂 MIME 類型的語法，請參閱 <a href="#MIMETypeReference">MIME 類型參考資料</a>。
+
+</p>
+
+
+<!-- Alternative Forms of Provider Access -->
+<h2 id="AltForms">供應程式存取權的替代形式</h2>
+<p>
+    開發應用程式時會使用到 3 種供應程式存取權的替代形式：
+</p>
+<ul>
+    <li>
+        <a href="#Batch">批次存取</a>：您可以使用 {@link android.content.ContentProviderOperation} 類別中的方法建立批次存取權呼叫，然後利用 {@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()} 套用這些呼叫。
+
+
+    </li>
+    <li>
+        非同步查詢：建議您在個別執行緒中進行查詢。您可以使用 {@link android.content.CursorLoader} 類別來完成這項作業。
+如需相關示範說明，請參閱<a href="{@docRoot}guide/components/loaders.html">載入器</a>指南中的範例。
+
+
+    </li>
+    <li>
+        <a href="#Intents">透過意圖存取資料</a>：您無法直接將意圖傳送到供應程式，但可以將意圖傳送到供應程式的應用程式；供應程式的應用程式通常是修改供應程式資料的最佳環境。
+
+
+    </li>
+</ul>
+<p>
+    如需透過意圖進行批次存取和修改作業的相關資訊，請參閱下文。
+</p>
+<h3 id="Batch">批次存取</h3>
+<p>
+    您可利用供應程式的批次存取功能插入大量資料列、透過相同方法呼叫在多個表格中插入資料列，或是透過單次交易 (微型作業) 在處理程序之間執行一組作業。
+
+
+</p>
+<p>
+    如要以「批次模式」存取供應程式，請建立一系列 {@link android.content.ContentProviderOperation} 物件，然後使用 {@link android.content.ContentResolver#applyBatch ContentResolver.applyBatch()} 將這些物件分派給內容供應程式。
+
+
+請將內容供應程式的「授權」<em></em>(而不是特定內容 URI) 傳入這個方法。這樣可讓陣列中的所有 {@link android.content.ContentProviderOperation} 物件能夠在不同表格中運作。
+
+
+如果您呼叫 {@link android.content.ContentResolver#applyBatch
+ContentResolver.applyBatch()}，則系統會傳回一系列結果。
+</p>
+<p>
+    {@link android.provider.ContactsContract.RawContacts} 合約類別的說明包含可展示批次插入作業的程式碼片段。
+<a href="{@docRoot}resources/samples/ContactManager/index.html">聯絡人管理員</a>範例應用程式的 <code>ContactAdder.java</code> 來源檔案包含批次存取範例供您參考。
+
+
+
+</p>
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>使用協助程式顯示資料</h2>
+<p>
+    如果您的應用程式「沒有」<em></em>存取權限，而您仍想使用意圖在其他應用程式中顯示資料。
+例如，日曆應用程式接受用於顯示特定日期或活動的 {@link android.content.Intent#ACTION_VIEW} 意圖。
+
+    這樣可讓您顯示日曆資訊，而不必自行建立使用者介面。如要進一步瞭解此功能，請參閱<a href="{@docRoot}guide/topics/providers/calendar-provider.html">日曆供應程式</a>指南。
+
+
+</p>
+<p>
+    您傳送意圖的目標應用程式未必要與供應程式建立關聯。
+例如，您可以從聯絡人供應程式擷取聯絡人資料，然後將內含聯絡人圖片內容 URI 的 {@link android.content.Intent#ACTION_VIEW} 意圖傳送到圖片檢視器。
+
+
+</p>
+</div>
+</div>
+<h3 id="Intents">透過意圖存取資料</h3>
+<p>
+    意圖可提供內容供應程式的間接存取權。即使您的應用程式沒有存取權限，您仍可透過以下方式允許使用者存取供應程式的資料：從具備權限的應用程式取回結果意圖，或是啟用具備權限的應用程式並允許使用者存取該應用程式。
+
+
+
+</p>
+<h4>透過臨時權限取得存取權</h4>
+<p>
+    即使沒有適當的存取權限，您仍可存取內容供應程式的資料，方法是傳送意圖到沒有權限的應用程式，然後接收內含「URI」權限的結果意圖。
+
+
+    URI 權限是特定內容 URI 專用的權限；在接收權限的 Activity 結束之前，這類權限會維持有效狀態。
+具備永久權限的應用程式可授予臨時權限，只要在結果意圖中設定旗標即可：
+
+</p>
+<ul>
+    <li>
+        <strong>讀取權限：</strong>
+        {@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}
+    </li>
+    <li>
+        <strong>寫入權限：</strong>
+        {@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION}
+    </li>
+</ul>
+<p class="note">
+    <strong>注意：</strong>這些旗標並不會將讀取或寫入存取權授予系統在內容 URI 中提供授權的供應程式。存取權僅供 URI 使用。
+
+</p>
+<p>
+    供應程式會使用 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+ 元素的 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">android:grantUriPermission</a></code>
+ 屬性以及 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html">&lt;provider&gt;</a></code>
+ 元素的 
+<code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">&lt;grant-uri-permission&gt;</a></code>
+ 子元素在本身的宣示說明中為內容 URI 定義 URI 權限。如要進一步瞭解 URI 權限的運作機制，請參閱<a href="{@docRoot}guide/topics/security/security.html">安全性和權限</a>指南的「URI 權限」。
+
+
+</p>
+<p>
+    例如，即使您沒有 {@link android.Manifest.permission#READ_CONTACTS} 權限，您仍可透過聯絡人供應程式擷取聯絡人資料。
+您可能會想透過可用來在聯絡人的生日當天傳送電子賀卡給對方的應用程式進行這項動作。
+您偏好讓使用者控管要讓您的應用程式使用的聯絡人資料，而不是要求 {@link android.Manifest.permission#READ_CONTACTS} 授權您存取使用者的所有聯絡人以及個人資訊。
+
+
+為了達到這個目的，您進行了下列程序：
+</p>
+<ol>
+    <li>
+        您的應用程式使用 {@link android.app.Activity#startActivityForResult
+startActivityForResult()} 方法，傳送了內含 
+{@link android.content.Intent#ACTION_PICK} 動作的意圖以及「聯絡人」MIME 類型 
+{@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE}。
+
+    </li>
+    <li>
+        由於該意圖符合聯絡人應用程式的「選取」Activity 的意圖篩選器，因此該 Activity 會在移動到前景。
+
+    </li>
+    <li>
+        在選取 Activity 中，使用者選取了要更新的聯絡人。
+一旦使用者進行這項動作，選取 Activity 便會呼叫 
+{@link android.app.Activity#setResult setResult(resultcode, intent)} 來設定要傳回您應用程式的意圖。
+該意圖包含使用者所選聯絡人的內容 URI，以及「額外」的旗標 
+{@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION}。
+這些旗標可將 URI 權限授予您的應用程式，以便其讀取內容 URI 指向的聯絡人資料。選取 Activity 隨後會呼叫 {@link android.app.Activity#finish()} 來傳回您應用程式的控制權。
+
+
+
+    </li>
+    <li>
+        您的 Activity 返回前景，而系統呼叫您 Activity 的 
+{@link android.app.Activity#onActivityResult onActivityResult()} 方法。
+這個方法可接收聯絡人應用程式中的選取 Activity 所建立的結果意圖。
+
+    </li>
+    <li>
+        即使您未在宣示說明中要求供應程式的永久讀取權限，只要利用結果意圖的內容 URI 即可從聯絡人供應程式讀取聯絡人資料。
+
+您之後可以取得聯絡人的出生日期資訊或聯絡人的電子郵件地址，以便傳送電子賀卡給對方。
+
+    </li>
+</ol>
+<h4>使用其他應用程式</h4>
+<p>
+    允許使用者修改您無法存取的資料的簡單方式，是啟用具備相關權限的應用程式，並且讓使用者透過該應用程式進行修改作業。
+
+</p>
+<p>
+    例如，日曆應用程式接受可讓您啟用應用程式插入 UI 的 
+{@link android.content.Intent#ACTION_INSERT} 意圖。您可以在該意圖中傳入「額外」的資料，供應用程式用於預先填入使用者介面。由於週期性活動的語法較為複雜，因此建議您利用 {@link android.content.Intent#ACTION_INSERT} 啟用日曆應用程式，然後讓使用者透過該應用程式將活動插入日曆供應程式。
+
+
+
+
+</p>
+<!-- Contract Classes -->
+<h2 id="ContractClasses">合約類別</h2>
+<p>
+    合約類別可定義協助應用程式使用內容 URI、欄名稱、意圖動作，以及內容供應程式的其他功能的常數。
+合約類別並不會自動納入供應程式；供應程式的開發人員必須自行定義合約類別，然後將其提供給其他開發人員。
+
+Android 平台內建的大多數供應程式都可在 {@link android.provider} 套件中取得對應的合約類別。
+
+</p>
+<p>
+    例如，使用者字典供應程式有一個內含內容 URI 和欄名稱常數的 {@link android.provider.UserDictionary} 合約類別。
+「字詞」表格的內容 URI 是在 
+{@link android.provider.UserDictionary.Words#CONTENT_URI UserDictionary.Words.CONTENT_URI} 常數中定義。
+
+    此外，{@link android.provider.UserDictionary.Words} 類別也包含欄名稱常數，可用於本指南中的程式碼片段範例。
+例如，您可以將查詢投影定義成如下所示：
+
+</p>
+<pre>
+String[] mProjection =
+{
+    UserDictionary.Words._ID,
+    UserDictionary.Words.WORD,
+    UserDictionary.Words.LOCALE
+};
+</pre>
+<p>
+    聯絡人供應程式的另一個合約類別為 {@link android.provider.ContactsContract}。
+    此類別的參考文件附有程式碼片段範例。其中一個 
+{@link android.provider.ContactsContract.Intents.Insert} 子類別為內含意圖常數和意圖資料的合約類別。
+
+</p>
+
+
+<!-- MIME Type Reference -->
+<h2 id="MIMETypeReference">MIME 類型參考資料</h2>
+<p>
+    內容供應程式可傳回標準 MIME 媒體類型或自訂媒體類型字串，或是以上兩者。
+</p>
+<p>
+    以下是 MIME 類型的格式
+</p>
+<pre>
+<em>type</em>/<em>subtype</em>
+</pre>
+<p>
+    例如，常見的 MIME 類型 <code>text/html</code> 包含 <code>text</code> 類型以及 <code>html</code> 子類型。
+如果供應程式傳回這種 URI 類型，代表採用該 URI 的查詢會傳回內含 HTML 標記的文字。
+
+</p>
+<p>
+    自訂 MIME 類型字串 (亦稱為「廠商專用」MIME 類型) 包含較為複雜的類型<em></em>和子類型<em></em>值。
+針對多個資料欄，類型值<em></em>一律會如下所示
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>
+</pre>
+<p>
+    或者，針對單一資料欄，類型值一律會如下所示
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>
+</pre>
+<p>
+    。
+</p>
+<p>
+    子類型<em></em>為供應程式專用。Android 內建的供應程式通常包含簡易的子類型。
+例如，當聯絡人應用程式建立電話號碼資料列時，會為該列設定下列 MIME 類型：
+
+</p>
+<pre>
+vnd.android.cursor.item/phone_v2
+</pre>
+<p>
+    請注意，子類型值為 <code>phone_v2</code>。
+</p>
+<p>
+    其他的供應程式開發人員可能會根據供應程式的授權和表格名稱，自行建立專屬的子類型模式。
+例如，考慮一個包含火車時刻表的供應程式。
+    供應程式的授權為 <code>com.example.trains</code> 且包括 Line1、Line2 和 Line3 表格。
+根據 Line1 表格的內容 URI
+</p>
+<p>
+<pre>
+content://com.example.trains/Line1
+</pre>
+<p>
+    供應程式會傳回 MIME 類型
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.example.line1
+</pre>
+<p>
+     根據 Line1 表格的內容 URI
+</p>
+<pre>
+content://com.example.trains/Line2/5
+</pre>
+<p>
+    供應程式會傳回 MIME 類型
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.example.line2
+</pre>
+<p>
+    大多數內容供應程式會針對其使用的 MIME 類型定義合約類別常數。例如，聯絡人供應程式的合約類別 {@link android.provider.ContactsContract.RawContacts} 會為某個 MIME 類型的原始聯絡人列定義 {@link android.provider.ContactsContract.RawContacts#CONTENT_ITEM_TYPE} 常數。
+
+
+
+
+</p>
+<p>
+    如要進一步瞭解個別資料列的內容 URI，請參閱<a href="#ContentURIs">內容 URI</a>。
+
+</p>
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/providers/content-provider-creating.jd b/docs/html-intl/intl/zh-tw/guide/topics/providers/content-provider-creating.jd
new file mode 100644
index 0000000..3d46ee4
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/providers/content-provider-creating.jd
@@ -0,0 +1,1214 @@
+page.title=建立內容供應程式
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<h2>本文件內容</h2>
+<ol>
+    <li>
+        <a href="#DataStorage">設計資料儲存空間</a>
+    </li>
+    <li>
+        <a href="#ContentURI">設計內容 URI</a>
+    </li>
+    <li>
+        <a href="#ContentProvider">實作 ContentProvider 類別</a>
+        <ol>
+            <li>
+                <a href="#RequiredAccess">必要方法</a>
+            </li>
+            <li>
+                <a href="#Query">實作 query() 方法</a>
+            </li>
+            <li>
+                <a href="#Insert">實作 insert() 方法</a>
+            </li>
+            <li>
+                <a href="#Delete">實作 delete() 方法</a>
+            </li>
+            <li>
+                <a href="#Update">實作 update() 方法</a>
+            </li>
+            <li>
+                <a href="#OnCreate">實作 onCreate() 方法</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#MIMETypes">實作內容供應程式 MIME 類型</a>
+        <ol>
+            <li>
+                <a href="#TableMIMETypes">表格 MIME 類型</a>
+            </li>
+            <li>
+                <a href="#FileMIMETypes">檔案 MIME 類型</a>
+            </li>
+        </ol>
+    </li>
+    <li>
+        <a href="#ContractClass">實作合約類別</a>
+    </li>
+    <li>
+        <a href="#Permissions">實作內容供應程式權限</a>
+    </li>
+    <li>
+        <a href="#ProviderElement">&lt;provider&gt; 元素</a>
+    </li>
+    <li>
+        <a href="#Intents">意圖和資料存取權</a>
+    </li>
+</ol>
+<h2>重要類別</h2>
+    <ol>
+        <li>
+            {@link android.content.ContentProvider}
+        </li>
+        <li>
+            {@link android.database.Cursor}
+        </li>
+        <li>
+            {@link android.net.Uri}
+        </li>
+    </ol>
+<h2>相關範例</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/NotePad/index.html">                Note Pad 範例應用程式
+            </a>
+
+        </li>
+    </ol>
+<h2>另請參閱</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">        內容供應程式基本存放庫概念</a>
+
+        </li>
+        <li>
+            <a href="{@docRoot}guide/topics/providers/calendar-provider.html">        日曆供應程式</a>
+
+        </li>
+    </ol>
+</div>
+</div>
+
+
+<p>
+    內容供應程式可管理中央資料存放庫的存取權。您可以將供應程式實作成 Android 應用程式的一或多個類別，以及宣示說明檔案的元素。
+
+您的其中一個類別會實作子類別
+{@link android.content.ContentProvider} (供應程式與其他應用程式之間的介面)。
+雖然內容供應程式的用途是將資料提供給其他應用程式，不過您也可以在應用程式中加入 Activity，讓使用者查詢及修改供應程式所管理的資料。
+
+
+</p>
+<p>
+    本主題的其餘部分為一份說明建置內容供應程式的步驟清單，以及一份可供您使用的 API 清單。
+
+</p>
+
+
+<!-- Before You Start Building -->
+<h2 id="BeforeYouStart">建置供應程式的前置作業</h2>
+<p>
+    請先完成下列事項，再開始建置供應程式：
+</p>
+<ol>
+    <li>
+        <strong>評估建置內容供應程式的必要性</strong>。如果您想提供下列功能，您就必須建置內容供應程式：
+
+        <ul>
+            <li>您想將複雜的資料或檔案提供給其他應用程式。</li>
+            <li>您想讓使用者從您的應用程式將複雜的資料複製到其他應用程式。</li>
+            <li>您想使用搜尋架構提供自訂搜尋建議。</li>
+        </ul>
+    <p>
+        如果您的應用程式內建所有您想提供的功能，您就「不需要」<em></em>建置供應程式來使用 SQLite 資料庫。
+
+    </p>
+    </li>
+    <li>
+        詳閱<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">內容供應程式基本概念</a>進一步瞭解供應程式 (如果您尚未閱讀該文章的話)。
+
+
+    </li>
+</ol>
+<p>
+    完成上述事項後，請按照下列步驟建置供應程式：
+</p>
+<ol>
+    <li>
+        為您的資料設計原始儲存空間。內容供應程式會以兩種方式提供資料：
+        <dl>
+            <dt>
+                檔案資料
+            </dt>
+            <dd>
+                通常儲存在檔案中的資料，例如相片、音訊或影片。
+這種檔案會儲存在您應用程式的私人空間中。
+您的供應程式可針對此檔案提供處理支援，藉此回應其他應用程式發出的檔案要求。
+
+            </dd>
+            <dt>
+                「結構化」資料
+            </dt>
+            <dd>
+                通常儲存在資料庫、陣列或類似結構中的資料。
+                這種資料會採用與內含資料列和資料欄的表格相容的格式儲存。資料列代表一個實體，例如某個人或庫存中的商品。
+而資料欄則代表實體的部分資料，例如某個人的名稱或商品的售價。
+這種資料類型一般會儲存在 SQLite 資料庫，但您也可以將它儲存在其他類型的永久儲存空間。
+
+如要進一步瞭解 Android 系統提供的儲存空間類型，請參閱<a href="#DataStorage">設計資料儲存空間</a>。
+
+
+            </dd>
+        </dl>
+    </li>
+    <li>
+        定義 {@link android.content.ContentProvider} 類別及其所需方法的實作方式。
+這個類別是您的資料與 Android 系統其餘部分之間的介面。
+如要進一步瞭解這個類別，請參閱<a href="#ContentProvider">實作 ContentProvider 類別</a>。
+
+    </li>
+    <li>
+        定義供應程式的授權字串、內容 URI 和資料列名稱。如果您希望供應程式的應用程式能控制意圖，請同時定義意圖動作、額外資料和旗標。
+
+此外，您還需要針對想存取您資料的應用程式，定義其所需的權限。
+建議您將這些值定義為個別合約類別中的常數；您之後可將這個類別提供給其他開發人員。
+如要進一步瞭解內容 URI，請參閱<a href="#ContentURI">設計內容 URI</a>。
+
+
+        如要進一步瞭解意圖，請參閱<a href="#Intents">意圖和資料存取權</a>。
+
+    </li>
+    <li>
+        視需要進行其他動作，例如新增範例資料，或實作 {@link android.content.AbstractThreadedSyncAdapter} 讓應程式與雲端資料之間的資料保持同步。
+
+
+    </li>
+</ol>
+
+
+<!-- Designing Data Storage -->
+<h2 id="DataStorage">設計資料儲存空間</h2>
+<p>
+    內容供應程式是模組化格式資料的介面。建議這個介面之前，請先決定您儲存資料的方式。
+您可用任何偏好格式儲存資料，然後設計對應介面來讀取及寫入所需資料。
+
+</p>
+<p>
+    以下是 Android 提供的部分資料儲存技術：
+</p>
+<ul>
+    <li>
+        Android 系統內含 SQLite 資料庫 API，可讓 Android 本身的供應程式用於儲存以表格為基礎的資料。
+
+{@link android.database.sqlite.SQLiteOpenHelper} 類別可協助您建立資料庫，而 {@link android.database.sqlite.SQLiteDatabase} 類別則是用於存取資料庫的基礎類別。
+
+
+        <p>
+            請記住，您不需要使用資料庫實作存放庫。供應程式會以一組表格的形式對外顯示 (類似於相關的資料庫)，不過這並非在內部實作供應程式的必要條件。
+
+
+        </p>
+    </li>
+    <li>
+        如果您想儲存檔案資料，請使用 Android 提供的多種適用於檔案的 API。
+        如要進一步瞭解檔案儲存空間，請參閱<a href="{@docRoot}guide/topics/data/data-storage.html">資料儲存空間</a>。
+如果您想設計可提供媒體相關資料 (例如音樂或影片) 的供應程式，建議您建立結合表格資料與檔案的供應程式。
+
+
+    </li>
+    <li>
+        如果您想存取以網路為基準的資料，請使用 {@link java.net} 和
+{@link android.net} 中的類別。您也可以將以網路為基準的資料同步到本機資料儲存空間 (例如資料庫)，然後以表格或檔案的形式提供資料。
+
+        <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">範例同步配接器</a>應用程式範例示範了如何進行這種同步處理作業。
+
+    </li>
+</ul>
+<h3 id="DataDesign">
+    資料設計注意事項
+</h3>
+<p>
+    以下提供一些有關設計供應程式資料結構的祕訣：
+</p>
+<ul>
+    <li>
+        表格資料一律需包含「主索引鍵」欄，方便供應程式保存每個資料列的數值。
+您可以使用這些值將資料列連結至其他表格中的相關資料列 (也就是將這些值當作「外部索引鍵」使用)。
+事實上，您也可以使用此資料欄的任何名稱進行連結，但使用 {@link android.provider.BaseColumns#_ID BaseColumns._ID} 是最佳做法，這是因為將供應程式的查詢結果連結至
+{@link android.widget.ListView} 時需要將某個擷取出的資料列命名為 
+<code>_ID</code>。
+
+
+    </li>
+    <li>
+        如果您想提供點陣圖或檔案資料的一大部分，請將資料儲存在檔案中，然後以間接方式提供該檔案，而不要直接將該檔案儲存在表格中。
+
+如果您採用這種做法，請務必通知供應程式的使用者採用
+{@link android.content.ContentResolver} 檔案方法來存取資料。
+    </li>
+    <li>
+        使用二進位大型物件 (BLOB) 資料類型儲存大小或結構不同的資料。
+例如，您可以使用 BLOB 欄儲存<a href="http://code.google.com/p/protobuf">通訊協定緩衝區</a> 或　<a href="http://www.json.org">JSON 結構</a>。
+
+
+        <p>
+            此外，您也可以使用 BLOB 實作「按結構定義分門別類」<em></em>的表格。在這種表格中，您需要定義主索引鍵欄、MIME 類型欄和一或多個 BLOB 一般資料欄。
+
+MIME 類型欄中的值會決定 BLOB 欄的資料定義，
+這可讓您在同一表格中儲存多種資料列類型。
+聯絡人供應程式的「資料」表格
+{@link android.provider.ContactsContract.Data} 即為按結構定義分門別類的表格範例。
+
+        </p>
+    </li>
+</ul>
+<!-- Designing Content URIs -->
+<h2 id="ContentURI">設計內容 URI</h2>
+<p>
+    <strong>內容 URI</strong> 是指用於識別供應程式資料的 URI，其中包括整個供應程式的符號名稱 (亦即供應程式的<strong>授權</strong>)，以及指向表格或檔案的名稱 (亦即<strong>路徑</strong>)。
+
+選用的 ID 部分則會指向表格中的個別資料欄。
+
+{@link android.content.ContentProvider} 的每個資料存取方法均包括一個內容 URI (引數)；該內容 URI 可讓您決定要存取哪個表格、資料列或檔案。
+
+</p>
+<p>
+    如需內容 URI 的基本概念，請參閱<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">內容供應程式基本概念</a>。
+
+
+</p>
+<h3>設計授權</h3>
+<p>
+    供應程式通常會包含一個授權，可當做供應程式 Android 內部名稱。為了避免與其他供應程式發生衝突，請務必反向使用網際網路網域擁有權作為供應程式授權的基礎。
+
+此外，也請針對 Android 套件名稱採取此建議做法；您可以將供應程式授權定義為內含供應程式的套件名稱的副檔名。
+
+例如，假設您 Android 套件的名稱為
+ <code>com.example.&lt;appname&gt;</code>，則請將供應程式的授權定義為 
+<code>com.example.&lt;appname&gt;.provider</code>。
+</p>
+<h3>設計路徑結構</h3>
+<p>
+    開發人員通常只要附加指向個別表格的路徑，即可從授權建立內容 URI。
+例如，假設您有「table1」<em></em>和「table2」<em></em>這兩個表格，則您可以結合上述範例中的授權來產生內容 URI 
+<code>com.example.&lt;appname&gt;.provider/table1</code> 和 
+<code>com.example.&lt;appname&gt;.provider/table2</code>。
+
+路徑並不侷限於單一區隔，而您也不必為每個路徑層級產生表格。
+
+</p>
+<h3>處理內容 URI ID</h3>
+<p>
+    一般來說，供應程式可利用 URI 尾端資料列的 ID 值接受內容 URI，藉此提供某個資料列的存取權。此外，供應程式通常也可比對 ID 值與表格的 <code>_ID</code> 欄，然後對相符的資料列執行要求的存取動作。
+
+
+
+</p>
+<p>
+    這種機制可協助採用一般設計模式應用程式存取供應程式，讓應用程式對供應程式執行查詢，並且利用 {@link android.widget.CursorAdapter} 在 {@link android.widget.ListView} 中顯示最終的 {@link android.database.Cursor}。
+
+
+    定義 {@link android.widget.CursorAdapter} 時需要將
+{@link android.database.Cursor} 的其中一個資料列設為 <code>_ID</code>。
+</p>
+<p>
+    使用者之後挑選了顯示在 UI 中的某一資料列，以查看或修改資料。
+應用程式會從支援
+ {@link android.widget.ListView} 的 {@link android.database.Cursor} 取得對應的資料列、取得該資料列的 <code>_ID</code> 值，然後將該值附加到內容 URI 並向供應程式發出存取要求。
+供應程式之後可對使用者挑選的資料列進行查詢或修改。
+
+</p>
+<h3>內容 URI 模式</h3>
+<p>
+    為協助您決定要對傳入內容 URI 採取什麼動作，供應程式 API 提供了簡便類別 {@link android.content.UriMatcher}，可將內容 URI「模式」對應至整數值。
+
+您可以在 <code>switch</code> 陳述式中使用整數值，決定要對符合特定模式的內容 URI 採取的動作。
+
+</p>
+<p>
+    內容 URI 模式會比對採用萬用字元的內容 URI：
+</p>
+    <ul>
+        <li>
+            <strong><code>*</code>：</strong>比對由任何有效字元組成的字串；長度不限。
+        </li>
+        <li>
+            <strong><code>#</code>：</strong>比對由數字組成的字串；長度不限。
+        </li>
+    </ul>
+<p>
+    以設計及編寫內容 URI 處理方式為例，假設供應程式內含 <code>com.example.app.provider</code> 授權，可識別下列指向表格的內容 URI：
+
+
+</p>
+<ul>
+    <li>
+        <code>content://com.example.app.provider/table1</code>：名稱為 <code>table1</code> 的表格。
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset1</code>：名稱為 
+<code>dataset1</code> 的表格。
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table2/dataset2</code>：名稱為 
+<code>dataset2</code> 的表格。
+    </li>
+    <li>
+        <code>content://com.example.app.provider/table3</code>：名稱為 <code>table3</code> 的表格。
+    </li>
+</ul>
+<p>
+    此外，供應程式也會識別附有資料列 ID 的內容 URI，例如 <code>content://com.example.app.provider/table3/1</code> 會指定 <code>table3</code> 中 ID 為
+ <code>1</code> 的資料列。
+
+</p>
+<p>
+    以下是可能的內容 URI 模式：
+</p>
+<dl>
+    <dt>
+        <code>content://com.example.app.provider/*</code>
+    </dt>
+    <dd>
+        與供應程式的任何內容 URI 相符。
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table2/*</code>：
+    </dt>
+    <dd>
+        與 <code>dataset1</code> 和 <code>dataset2</code> 表格的內容 URI 相符，但與 <code>table1</code> 或 
+<code>table3</code> 的內容 URI 不符。
+
+    </dd>
+    <dt>
+        <code>content://com.example.app.provider/table3/#</code>：比對 <code>table3</code> 中單一資料列的內容 URI，例如
+ <code>content://com.example.app.provider/table3/6</code> 會比對其中的
+ <code>6</code> 所指定的資料列。
+
+    </dt>
+</dl>
+<p>
+    以下程式碼片段說明各種方法在 {@link android.content.UriMatcher} 中的運作方式。
+    這個程式碼會以不同方式處理整個表格的 URI 以及單一資料列的 URI；針對表格使用內容 URI 模式 
+<code>content://&lt;authority&gt;/&lt;path&gt;</code>，針對單一資料列則使用 
+<code>content://&lt;authority&gt;/&lt;path&gt;/&lt;id&gt;</code>。
+
+</p>
+<p>
+    {@link android.content.UriMatcher#addURI(String, String, int) addURI()} 方法會將授權和
+路徑對應至某個整數值，而 {@link android.content.UriMatcher#match(Uri)
+    match()} 方法會傳回 URI 的整數值。<code>switch</code> 陳述式則會要查詢整個表格，還是查詢單一記錄：
+
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider {
+...
+    // Creates a UriMatcher object.
+    private static final UriMatcher sUriMatcher;
+...
+    /*
+     * The calls to addURI() go here, for all of the content URI patterns that the provider
+     * should recognize. For this snippet, only the calls for table 3 are shown.
+     */
+...
+    /*
+     * Sets the integer value for multiple rows in table 3 to 1. Notice that no wildcard is used
+     * in the path
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3", 1);
+
+    /*
+     * Sets the code for a single row to 2. In this case, the "#" wildcard is
+     * used. "content://com.example.app.provider/table3/3" matches, but
+     * "content://com.example.app.provider/table3 doesn't.
+     */
+    sUriMatcher.addURI("com.example.app.provider", "table3/#", 2);
+...
+    // Implements ContentProvider.query()
+    public Cursor query(
+        Uri uri,
+        String[] projection,
+        String selection,
+        String[] selectionArgs,
+        String sortOrder) {
+...
+        /*
+         * Choose the table to query and a sort order based on the code returned for the incoming
+         * URI. Here, too, only the statements for table 3 are shown.
+         */
+        switch (sUriMatcher.match(uri)) {
+
+
+            // If the incoming URI was for all of table3
+            case 1:
+
+                if (TextUtils.isEmpty(sortOrder)) sortOrder = "_ID ASC";
+                break;
+
+            // If the incoming URI was for a single row
+            case 2:
+
+                /*
+                 * Because this URI was for a single row, the _ID value part is
+                 * present. Get the last path segment from the URI; this is the _ID value.
+                 * Then, append the value to the WHERE clause for the query
+                 */
+                selection = selection + "_ID = " uri.getLastPathSegment();
+                break;
+
+            default:
+            ...
+                // If the URI is not recognized, you should do some error handling here.
+        }
+        // call the code to actually do the query
+    }
+</pre>
+<p>
+    另一個 {@link android.content.ContentUris} 類別可提供使用內容 URI 的 <code>id</code> 部分的簡便方法。
+{@link android.net.Uri} 和 
+{@link android.net.Uri.Builder} 類別則可提供剖析現有 
+{@link android.net.Uri} 物件及建置新物件的簡便方法。
+</p>
+
+<!-- Implementing the ContentProvider class -->
+<h2 id="ContentProvider">實作 ContentProvider 類別</h2>
+<p>
+    {@link android.content.ContentProvider} 執行個體可透過處理其他應用程式所發出要求的方式，管理一組結構化資料的存取權。
+所有形式的存取權最終都會呼叫 {@link android.content.ContentResolver}，而這個類別隨後會呼叫 {@link android.content.ContentProvider} 方法來取得存取權。
+
+
+</p>
+<h3 id="RequiredAccess">必要方法</h3>
+<p>
+    抽象類別 {@link android.content.ContentProvider} 會定義 6 種方法，而您必須將這些方法實作成您所擁有子類別的一部分。
+嘗試存取您內容供應程式的用戶端應用程式會呼叫以下所有方法 
+({@link android.content.ContentProvider#onCreate() onCreate()} 除外)：
+
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+        query()}
+    </dt>
+    <dd>
+        從您的供應程式擷取檔案。您可以使用引數來選取要查詢的表格、要傳回的資料列和資料欄，以及最終結果的排序順序。
+
+        以 {@link android.database.Cursor} 物件的形式傳回資料。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()}
+    </dt>
+    <dd>
+        在供應程式中插入新的資料列。您可以使用引數來選取目標表格，以及取得要使用的資料欄值。
+此外，這個方法還可傳回新插入資料欄的內容 URI。
+
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+        update()}
+    </dt>
+    <dd>
+        更新供應程式中的現有資料欄。您可以使用引數來選取要更新的表格和資料列，以及取得更新過後的資料欄值。
+此外，這個方法還可傳回經過更新的資料列數量。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()}
+    </dt>
+    <dd>
+        從您的供應程式中刪除資料列。您可以使用引數來選取要刪除的表格和資料列。
+此外，這個方法還可傳回遭刪除的資料列數量。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        傳回與內容 URI 相對應的 MIME 類型。如要進一步瞭解這個方法，請參閱<a href="#MIMETypes">實作內容供應程式 MIME 類型</a>。
+
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#onCreate() onCreate()}
+    </dt>
+    <dd>
+        初始化您的供應程式。Android 系統會在建立供應程式後立即呼叫這個方法。
+請注意，一旦
+ {@link android.content.ContentResolver} 嘗試存取您的供應程式，Android 系統便會建立供應程式。
+    </dd>
+</dl>
+<p>
+    請注意，上述方法採用的簽名與同名的 
+{@link android.content.ContentResolver} 方法相同。
+</p>
+<p>
+    實作這些方法時請注意下列事項：
+</p>
+<ul>
+    <li>
+        多重執行緒可能會同時呼叫 {@link android.content.ContentProvider#onCreate() onCreate()} 以外的所有方法，因此請務必確保這些方法不會對執行緒造成負面影響。
+如要進一步瞭解多重執行緒，請參閱<a href="{@docRoot}guide/components/processes-and-threads.html">處理程序和執行緒</a>。
+
+
+
+    </li>
+    <li>
+        避免透過 {@link android.content.ContentProvider#onCreate()
+        onCreate()} 進行需大量時間才可完成的作業。除非有實質上的需求，否則請延遲初始化工作。
+        如需相關資訊，請參閱<a href="#OnCreate">實作 onCreate() 方法</a>。
+
+    </li>
+    <li>
+        雖然您必須實作這些方法，但您的程式碼只需傳回預期的資料類型即可，不必傳回任何其他資料。
+例如，您可能想避免其他應用程式將資料插入部分表格。
+在這種情況下，您可以略過呼叫
+{@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} 並傳回 0。
+
+    </li>
+</ul>
+<h3 id="Query">實作 query() 方法</h3>
+<p>
+    {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()} 方法如果未傳回 {@link android.database.Cursor} 物件，便會發生錯誤而擲回 {@link java.lang.Exception}。
+
+如果您採用 SQLite 資料庫做為資料儲存空間，您可以直接傳回
+{@link android.database.sqlite.SQLiteDatabase} 類別的任一 <code>query()</code> 方法所傳回的 {@link android.database.Cursor}。
+
+    如果查詢不符任何資料列，您就必須傳回其中的 {@link android.database.Cursor#getCount()} 方法傳回 0 的
+ {@link android.database.Cursor} 執行個體。
+    請注意，只有在查詢程序發生內部錯誤時，您才需要傳回 <code>null</code>。
+</p>
+<p>
+    如果您並非採用 SQLite 資料庫做為資料儲存空間，請使用
+ {@link android.database.Cursor} 的子類別。例如，{@link android.database.MatrixCursor} 類別
+會一系列 {@link java.lang.Object} 的所有資料列中實作游標。您可以搭配這個類別使用 {@link android.database.MatrixCursor#addRow(Object[]) addRow()} 來新增資料列。
+
+</p>
+<p>
+    請記住，您必須確保 Android 系統能夠與 {@link java.lang.Exception} 通訊，而不會受到處理程序的限制。
+Android 可以針對下列例外狀況執行這項動作，藉此協助解決查詢錯誤：
+
+</p>
+<ul>
+    <li>
+        {@link java.lang.IllegalArgumentException} (如果供應程式接收的內容 URI 無效，您可以選擇擲回這個類別)
+
+    </li>
+    <li>
+        {@link java.lang.NullPointerException}
+    </li>
+</ul>
+<h3 id="Insert">實作 insert() 方法</h3>
+<p>
+    {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} 方法會利用 {@link android.content.ContentValues} 引數中的值，在適當的表格中新增資料列。
+
+如果 {@link android.content.ContentValues} 引數中沒有資料欄名稱，建議您在供應程式的程式碼或資料庫的結構定義中，提供預設的資料欄名稱。
+
+
+</p>
+<p>
+    這個方法會傳回新資料列的內容 URI。如要建構這個方法，請使用 {@link android.content.ContentUris#withAppendedId(Uri, long) withAppendedId()}，將新資料列的 <code>_ID</code> (或其他主索引鍵) 值附加到表格的內容 URI。
+
+
+</p>
+<h3 id="Delete">實作 delete() 方法</h3>
+<p>
+    {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} 方法並不會從您的資料儲存空間中刪除資料列。
+如果您搭配供應程式使用同步配接器，建議您為已刪除的資料列加上「已刪除」標示，而不是徹底移除資料列。
+
+同步配接器可檢查已刪除的資料列，並且將這些資料列從伺服器中移除，然後再從供應程式中將它們刪除。
+
+</p>
+<h3 id="Update">實作 update() 方法</h3>
+<p>
+    {@link android.content.ContentProvider#update(Uri, ContentValues, String, String[])
+    update()} 方法會採用 {@link android.content.ContentProvider#insert(Uri, ContentValues) insert()} 所使用的相同 {@link android.content.ContentValues} 引數，以及
+ {@link android.content.ContentProvider#delete(Uri, String, String[]) delete()} 和 {@link android.content.ContentProvider#query(Uri, String[], String, String[], String)
+    ContentProvider.query()} 所使用的相同 <code>selection</code> 與 <code>selectionArgs</code> 引數，
+
+
+以便讓您針對這些方法重複使用相同的程式碼。
+</p>
+<h3 id="OnCreate">實作 onCreate() 方法</h3>
+<p>
+    Android 系統會在啟動供應程式時呼叫 {@link android.content.ContentProvider#onCreate()
+    onCreate()}。建議您只使用這個方法執行可快速完成的初始化工作，並且等到供應程式實際收到資料要求後，再建立資料庫以及載入資料。
+
+如果您使用 {@link android.content.ContentProvider#onCreate() onCreate()} 進行需大量時間才能完成工作，啟動供應程式所需的時間就會延長。
+
+此外，這樣也會延遲供應程式回應其他應用程式的時間。
+
+</p>
+<p>
+    例如，如果您採用 SQLite 資料庫，您可以透過 
+{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} 建立新的 {@link android.database.sqlite.SQLiteOpenHelper} 物件，然後在初次開啟資料庫時建立 SQL 表格。
+
+為了加快這個程序，當您初次呼叫 {@link android.database.sqlite.SQLiteOpenHelper#getWritableDatabase
+getWritableDatabase()} 時，該方法會自動呼叫 {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+SQLiteOpenHelper.onCreate()} 方法。
+
+
+</p>
+<p>
+    以下兩個程式碼片段展示了 
+{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()} 與 {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+    SQLiteOpenHelper.onCreate()} 之間的互動過程。
+而第一個程式碼片段是用於實作 
+{@link android.content.ContentProvider#onCreate() ContentProvider.onCreate()}：
+</p>
+<pre class="prettyprint">
+public class ExampleProvider extends ContentProvider
+
+    /*
+     * Defines a handle to the database helper object. The MainDatabaseHelper class is defined
+     * in a following snippet.
+     */
+    private MainDatabaseHelper mOpenHelper;
+
+    // Defines the database name
+    private static final String DBNAME = "mydb";
+
+    // Holds the database object
+    private SQLiteDatabase db;
+
+    public boolean onCreate() {
+
+        /*
+         * Creates a new helper object. This method always returns quickly.
+         * Notice that the database itself isn't created or opened
+         * until SQLiteOpenHelper.getWritableDatabase is called
+         */
+        mOpenHelper = new MainDatabaseHelper(
+            getContext(),        // the application context
+            DBNAME,              // the name of the database)
+            null,                // uses the default SQLite cursor
+            1                    // the version number
+        );
+
+        return true;
+    }
+
+    ...
+
+    // Implements the provider's insert method
+    public Cursor insert(Uri uri, ContentValues values) {
+        // Insert code here to determine which table to open, handle error-checking, and so forth
+
+        ...
+
+        /*
+         * Gets a writeable database. This will trigger its creation if it doesn't already exist.
+         *
+         */
+        db = mOpenHelper.getWritableDatabase();
+    }
+}
+</pre>
+<p>
+    第二個程式碼片段則是用於實作 {@link android.database.sqlite.SQLiteOpenHelper#onCreate(SQLiteDatabase)
+SQLiteOpenHelper.onCreate()}，包括協助程式類別：
+
+</p>
+<pre class="prettyprint">
+...
+// A string that defines the SQL statement for creating a table
+private static final String SQL_CREATE_MAIN = "CREATE TABLE " +
+    "main " +                       // Table's name
+    "(" +                           // The columns in the table
+    " _ID INTEGER PRIMARY KEY, " +
+    " WORD TEXT"
+    " FREQUENCY INTEGER " +
+    " LOCALE TEXT )";
+...
+/**
+ * Helper class that actually creates and manages the provider's underlying data repository.
+ */
+protected static final class MainDatabaseHelper extends SQLiteOpenHelper {
+
+    /*
+     * Instantiates an open helper for the provider's SQLite data repository
+     * Do not do database creation and upgrade here.
+     */
+    MainDatabaseHelper(Context context) {
+        super(context, DBNAME, null, 1);
+    }
+
+    /*
+     * Creates the data repository. This is called when the provider attempts to open the
+     * repository and SQLite reports that it doesn't exist.
+     */
+    public void onCreate(SQLiteDatabase db) {
+
+        // Creates the main table
+        db.execSQL(SQL_CREATE_MAIN);
+    }
+}
+</pre>
+
+
+<!-- Implementing ContentProvider MIME Types -->
+<h2 id="MIMETypes">實作 ContentProvider MIME 類型</h2>
+<p>
+    {@link android.content.ContentProvider} 類別包含兩種用於傳回 MIME 類型的方法：
+</p>
+<dl>
+    <dt>
+        {@link android.content.ContentProvider#getType(Uri) getType()}
+    </dt>
+    <dd>
+        您必須針對任何供應程式實作的其中一個必要方法。
+    </dd>
+    <dt>
+        {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}
+    </dt>
+    <dd>
+        如果您的供應程式會提供檔案，您就需要實作這個方法。
+    </dd>
+</dl>
+<h3 id="TableMIMETypes">表格 MIME 類型</h3>
+<p>
+    {@link android.content.ContentProvider#getType(Uri) getType()} 方法會採用 MIME 格式傳回
+ {@link java.lang.String}，以說明 URI 引數所傳回的資料類型。
+{@link android.net.Uri} 可以是一個模式 (而非特定 URI)；在這種情況下，建議您傳回與符合模式的內容 URI 相關聯的資料類型。
+
+
+</p>
+<p>
+    針對文字、HTML、JPEG 等常見資料類型，
+{@link android.content.ContentProvider#getType(Uri) getType()} 會傳回該資料的標準 MIME 類型。
+如需這些標準模式的完整清單，請造訪
+ <a href="http://www.iana.org/assignments/media-types/index.htm">IANA MIME 媒體類型</a>網站。
+
+</p>
+<p>
+    針對指向表格資料的資料列的內容 URI，
+{@link android.content.ContentProvider#getType(Uri) getType()} 會採用 Android 廠商專用的 MINE 格式傳回 MIME 類型：
+
+</p>
+<ul>
+    <li>
+        類型部分：<code>vnd</code>
+    </li>
+    <li>
+        子類型部分：
+        <ul>
+            <li>
+    如果 URI 模式適用於單一資料列：<code>android.cursor.<strong>item</strong>/</code>
+            </li>
+            <li>
+    如果 URI 模式適用於一個以上的資料列：<code>android.cursor.<strong>dir</strong>/</code>
+            </li>
+        </ul>
+    </li>
+    <li>
+        供應程式專用部分：<code>vnd.&lt;name&gt;</code>.<code>&lt;type&gt;</code>
+        <p>
+            您需要提供 <code>&lt;name&gt;</code> 和 <code>&lt;type&gt;</code>。
+            <code>&lt;name&gt;</code> 必須是全域唯一值，而 <code>&lt;type&gt;</code> 必須為相對應 URI 模式的專屬值。
+
+建議您使用貴公司的名稱或您應用程式的部分 Android 套件名稱做為 <code>&lt;name&gt;</code>。
+針對 
+<code>&lt;type&gt;</code>，則建議您使用可識別與 URI 相關的表格的字串。
+
+        </p>
+
+    </li>
+</ul>
+<p>
+    例如，假設供應程式的授權為 
+<code>com.example.app.provider</code>，而該授權可提供 
+<code>table1</code> 這個表格，則 <code>table1</code> 中多個資料列的 MIME 類型會如下所示：
+</p>
+<pre>
+vnd.android.cursor.<strong>dir</strong>/vnd.com.example.provider.table1
+</pre>
+<p>
+    而 <code>table1</code> 中單一資料列的 MIME 類型則會如下所示：
+</p>
+<pre>
+vnd.android.cursor.<strong>item</strong>/vnd.com.example.provider.table1
+</pre>
+<h3 id="FileMIMETypes">檔案 MIME 類型</h3>
+<p>
+    如果您的供應程式會提供檔案，您就需要實作
+{@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()}。
+    該方法會針對您的供應程式可為特定 URI 傳回的檔案，傳回一系列 MIME 類型的 {@link java.lang.String}。建議您按 MIME 類型篩選器引數篩選您提供的 MIME 類型，方便您只傳回用戶端想處理的 MIME 類型。
+
+
+</p>
+<p>
+    例如，假設您的供應程式會採用 <code>.jpg</code>、
+<code>.png</code> 和 <code>.gif</code> 檔案格式提供相片。
+    當有應用程式使用篩選器字串 <code>image/*</code> (類型為「圖片」的任何檔案) 呼叫 {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+ContentResolver.getStreamTypes()} 時，{@link android.content.ContentProvider#getStreamTypes(Uri, String)
+ContentProvider.getStreamTypes()} 方法就會傳回如下所示的陣列：
+
+
+</p>
+<pre>
+{ &quot;image/jpeg&quot;, &quot;image/png&quot;, &quot;image/gif&quot;}
+</pre>
+<p>
+    如果應用程式只想取得 <code>.jpg</code> 檔案，則可以使用篩選器字串 <code>*\/jpeg</code> 呼叫 {@link android.content.ContentResolver#getStreamTypes(Uri, String)
+ContentResolver.getStreamTypes()}，此時 {@link android.content.ContentProvider#getStreamTypes(Uri, String)
+ContentProvider.getStreamTypes()} 會傳回如下所示的陣列：
+
+
+<pre>
+{&quot;image/jpeg&quot;}
+</pre>
+<p>
+    如果您的供應程式並未提供任何篩選器字串所要求的 MIME 類型，則
+ {@link android.content.ContentProvider#getStreamTypes(Uri, String) getStreamTypes()} 會傳回 <code>null</code>。
+
+</p>
+
+
+<!--  Implementing a Contract Class -->
+<h2 id="ContractClass">實作合約類別</h2>
+<p>
+    合約類別是 <code>public final</code> 類別，內含以下項目的固定不變定義：URI、欄名稱、MIME 類型以及供應程式擁有的其他中繼資料。
+這個類別會在供應程式與其他應用程式之間建立合約，藉此確保使用者在 URI、欄名等值有變更的情況下，仍可正常存取供應程式。
+
+
+
+</p>
+<p>
+    此外，由於合約類別針對其常數採用了好記的名稱，因此可協助開發人員避免使用錯誤的欄名或 URI 值。
+與其他類別相同，合約類別也包含 Javadoc 說明文件。
+如 Eclipse 這類整合式開發環境可利用合約類別自動填入常數名稱，並針對常數顯示 Javadoc。
+
+
+</p>
+<p>
+    開發人員無法存取您應用程式中合約類別的類別檔案，但可以靜態方式從您提供的 <code>.jar</code> 檔案中將類別檔案編入其應用程式。
+
+</p>
+<p>
+    {@link android.provider.ContactsContract} 類別及其巢狀類別均為合約類別範例。
+
+</p>
+<h2 id="Permissions">實作內容供應程式權限</h2>
+<p>
+    如需 Android 系統提供的所有權限和存取權的詳細資訊，請參閱<a href="{@docRoot}guide/topics/security/security.html">安全性和權限</a>。
+
+    您也可以參閱<a href="{@docRoot}guide/topics/data/data-storage.html">資料儲存空間</a>，瞭解各種儲存空間實際提供的安全性和權限。
+
+    簡言之，請注意下列重點：
+</p>
+<ul>
+    <li>
+        在預設情況下，儲存在裝置內部儲存空間的資料檔案只有您的應用程式和供應程式可存取。
+
+    </li>
+    <li>
+        您所建立的 {@link android.database.sqlite.SQLiteDatabase} 資料庫只有您的應用程式和供應程式可存取。
+
+    </li>
+    <li>
+        在預設情況下，您儲存到外部儲存空間的資料檔案為「公開分享」<em></em>，任何人均可讀取<em></em>。
+您無法使用內容供應程式針對外部儲存空間中的檔案限制存取權，這是因為其他應用程式可使用其他 API 呼叫讀取及寫入這類檔案。
+
+    </li>
+    <li>
+        呼叫用於開啟/建立檔案，或是用於在裝置內部儲存空間中開啟/建立 SQLite 儲存庫的方法，可能會同時將讀取及寫入存取權授予其他所有應用程式。
+如果您採用內部檔案或資料庫做為供應程式的存放庫，並且將「開放讀取」或「開放寫入」存取權授予該存放庫，則您在供應程式的宣示說明中設定的權限無助於保護您的資料安全。
+
+
+內部儲存空間中的檔案和儲存庫的預設存取權為「不公開」；請勿針對供應程式的存放庫變更此存取權。
+
+    </li>
+</ul>
+<p>
+    如果您想使用內容供應程式權限控制資料的存取權，建議您將資料儲存在內部檔案、SQLite 資料庫或「雲端」(例如遠端伺服器)，並確保只有您的應用程式可以存取這些檔案和資料庫。
+
+
+</p>
+<h3>實作權限</h3>
+<p>
+    在預設情況下，您的供應程式不會設定任何權限，因此即使底層資料的存取權限為「不公開」，任何應用程式都可透過您的供應程式讀取及寫入資料。
+如果想改變這種情況，請使用屬性或 <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code> 元素的子元素，在供應程式的宣示說明檔案中設定權限。
+
+您可以選擇讓設定好的權限套用至整個供應程式、特定表格或記錄，或是套用至以上三者。
+
+</p>
+<p>
+    您可以使用一或多項 <code><a href="{@docRoot}guide/topics/manifest/permission-element.html">
+    &lt;permission&gt;</a></code> 元素，在供應程式的宣示說明檔案中定義權限。
+為了將權限設為僅適用於您的供應程式，請針對
+ <code><a href="{@docRoot}guide/topics/manifest/permission-element.html#nm">
+    android:name</a></code> 屬性使用 Java 式範圍。
+例如，請將讀取權限命名為 
+<code>com.example.app.provider.permission.READ_PROVIDER</code>。
+
+</p>
+<p>
+    以下列出供應程式權限範圍的詳細說明；這份清單將從套用至整個供應程式的權限開始說明，接著逐一說明套用範圍較小的權限。
+
+    套用範圍較小權限的優先等級會比套用範圍較大的權限來得高：
+</p>
+<dl>
+    <dt>
+        供應程式層級的單一讀取寫入權限
+    </dt>
+    <dd>
+        這項權限是由 <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 元素的 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code> 屬性所指定，可控制整個供應程式的讀取及寫入存取權。
+
+    </dd>
+    <dt>
+        供應程式層級的個別讀取及寫入權限
+    </dt>
+    <dd>
+        整個供應程式的讀取權限及寫入權限。您可以使用 <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 元素的
+ <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+        android:readPermission</a></code> 和 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+        android:writePermission</a></code> 屬性指定這兩項權限。
+這些權限的優先等級比 
+<code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+        android:permission</a></code> 所需的權限來得高。
+    </dd>
+    <dt>
+        路徑層級權限
+    </dt>
+    <dd>
+        供應程式內容 URI 的讀取、寫入或讀取/寫入權限。您可以使用
+ <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+        &lt;provider&gt;</a></code> 元素的
+ <code><a href="{@docRoot}guide/topics/manifest/path-permission-element.html">
+        &lt;path-permission&gt;</a></code> 子元素指定您想控制的所有 URI。
+針對您所指定的每個內容 URI，您可以指定讀取/寫入權限、讀取權限或寫入權限，或是以上三種權限。
+讀取及寫入權限的優先等級比讀取/寫入權限來得高。
+此外，路徑層級權限的優先等級比供應程式層級權限來得高。
+
+    </dd>
+    <dt>
+        臨時權限
+    </dt>
+    <dd>
+        這種權限層級可將臨時存取權授予某個應用程式，即使該應用程式不具備一般的必要權限。
+臨時存取功能可減少應用程式的宣示說明所需的權限數量。
+
+在啟用臨時權限的情況下，只有會繼續存取您資料的應用程式，需要供應程式的「永久」權限。
+
+
+        <p>
+            如果想允許外部的圖片檢視器應用程式顯示您供應程式中的相片附加檔案，請將實作電子郵件供應程式和應用程式時所需的權限納入考量。
+
+如要授予圖片檢視器必要的存取權，而不發出權限要求，請設定相片內容 URI 的臨時權限。
+並且將您的電子郵件應用程式設計成在使用者想顯示相片時，將內含相片內容 URI 和權限旗標的意圖傳送給圖片檢視器。
+
+讓圖片檢視器在檢視器沒有供應程式的一般讀取權限的情況下，仍可查詢電子郵件供應程式來擷取相片。
+
+
+        </p>
+        <p>
+            如要啟用臨時權限，請設定
+ <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 元素的
+ <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> 元素，或是在
+ <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 元素中新增一或多項
+ <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> 子元素。如果您有使用臨時權限，您就必須在從供應程式中移除內容 URI 支援，以及將內容 URI 與臨時權限建立關聯時呼叫 {@link android.content.Context#revokeUriPermission(Uri, int)
+Context.revokeUriPermission()}。
+
+
+        </p>
+        <p>
+            屬性的值會決定供應程式的可存取部分。
+            如果將屬性設為 <code>true</code>，則系統會將臨時權限授予整個供應程式，從而覆寫供應程式層級或路徑層級權限所需的任何其他權限。
+
+
+        </p>
+        <p>
+            如果將這個旗標設為 <code>false</code>，您就必須在
+ <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 元素中加入
+ <code><a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">
+            &lt;grant-uri-permission&gt;</a></code> 子元素。每項子元素都會指定要授予臨時存取權的內容 URI。
+
+        </p>
+        <p>
+            如要將臨時存取權委派給某款應用程式，您就必須在意圖中加入 
+{@link android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION} 或 
+{@link android.content.Intent#FLAG_GRANT_WRITE_URI_PERMISSION} 旗標，或是同時加入以上兩者。請使用 
+{@link android.content.Intent#setFlags(int) setFlags()} 方法設定這些旗標。
+        </p>
+        <p>
+            如果系統未顯示 <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+            android:grantUriPermissions</a></code> 屬性，代表該屬性是設為
+ <code>false</code>。
+        </p>
+    </dd>
+</dl>
+
+
+
+<!-- The Provider Element -->
+<h2 id="ProviderElement">&lt;provider&gt; 元素</h2>
+<p>
+    與 {@link android.app.Activity} 和 {@link android.app.Service} 元件相同，您必須使用
+ <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    &lt;provider&gt;</a></code> 元素在應用程式的宣示說明檔案中定義 {@link android.content.ContentProvider} 子類別：Android 系統會從元素取得下列資訊：
+
+
+
+<dl>
+    <dt>
+        授權
+        (<a href="{@docRoot}guide/topics/manifest/provider-element.html#auth">{@code
+        android:authorities}</a>)
+    </dt>
+    <dd>
+        用於識別系統內整個供應程式的符號名稱。如要進一步瞭解這項屬性，請參閱<a href="#ContentURI">設定內容 URI</a>。
+
+
+    </dd>
+    <dt>
+        供應程式類別名稱
+        (<code>
+<a href="{@docRoot}guide/topics/manifest/provider-element.html#nm">android:name</a>
+        </code>)
+    </dt>
+    <dd>
+        實作 {@link android.content.ContentProvider} 的類別。如要進一步瞭解這個類別，請參閱<a href="#ContentProvider">實作 ContentProvider </a>。
+
+
+    </dd>
+    <dt>
+        權限
+    </dt>
+    <dd>
+        這些屬性可指定其他應用程式在存取供應程式的資料時所需的權限：
+
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
+                android:grantUriPermssions</a></code>：臨時的權限旗標。
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#prmsn">
+                android:permission</a></code>：供應程式範圍的單一讀取/寫入權限。
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#rprmsn">
+                android:readPermission</a></code>：供應程式範圍的讀取權限。
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#wprmsn">
+                android:writePermission</a></code>：供應程式範圍的寫入權限。
+            </li>
+        </ul>
+        <p>
+            如要進一步瞭解權限及相對應的屬性，請參閱<a href="#Permissions">實作內容供應程式權限</a>。
+
+
+        </p>
+    </dd>
+    <dt>
+        啟動及控制屬性
+    </dt>
+    <dd>
+        這些屬性可決定 Android 系統啟動供應程式的方式和時間、供應程式的處理程序特性，以及其他執行階段設定：
+
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#enabled">
+                android:enabled</a></code>：可讓系統啟動供應程式的旗標。
+            </li>
+              <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#exported">
+                android:exported</a></code>：可讓其他應用程式使用這個供應程式的旗標。
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#init">
+                android:initOrder</a></code>：這個供應程式的啟動順序 (相對於相同處理程序中的其他供應程式)。
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#multi">
+                android:multiProcess</a></code>：可讓系統將相同處理程序中的供應程式啟動成呼叫用戶端的旗標。
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#proc">
+                android:process</a></code>：執行供應程式的處理程序名稱。
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#sync">
+                android:syncable</a></code>：指示系統將供應程式的資料與伺服器的資料保持同步的旗標。
+
+            </li>
+        </ul>
+        <p>
+            如需上述屬性的完整說明，請參閱開發人員指南的
+ <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 元素。
+
+        </p>
+    </dd>
+    <dt>
+        資訊屬性
+    </dt>
+    <dd>
+        選用的供應程式圖示和標籤：
+        <ul>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#icon">
+                android:icon</a></code>：內含供應程式圖示的可繪資源。
+                這個圖示會顯示在應用程式清單 ([設定]<em></em> &gt; [應用程式]<em></em> &gt; [全部]<em></em>) 中，供應程式標籤的旁邊。
+
+            </li>
+            <li>
+                <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#label">
+                android:label</a></code>：附有供應程式或其資料或以上兩者的說明的資訊標籤。
+這個標籤會顯示在應用程式清單 ([設定]<em></em> &gt; [應用程式]<em></em> &gt; [全部]<em></em>) 中。
+
+            </li>
+        </ul>
+        <p>
+            如需上述屬性的完整說明，請參閱開發人員指南的
+ <code><a href="{@docRoot}guide/topics/manifest/provider-element.html">
+            &lt;provider&gt;</a></code> 元素。
+        </p>
+    </dd>
+</dl>
+
+<!-- Intent Access -->
+<h2 id="Intents">意圖和資料存取權</h2>
+<p>
+    應用程式可透過 {@link android.content.Intent} 以間接方式存取內容供應程式。
+    利用這種存取方式的應用程式不會呼叫 {@link android.content.ContentResolver} 或 
+{@link android.content.ContentProvider} 的任何方法，而是會傳送可啟動 Activity (此 Activity 通常屬於供應程式本身的應用程式) 的意圖。
+目標 Activity 會負責擷取資料並在本身的 UI 中顯示該資料。視意圖中的動作而定，目標 Activity 也可能會提示使用者修改供應程式的資料。
+
+
+    此外，意圖還可能會包含目標 Activity 顯示在 UI 中的「額外」資料；使用者之後可選擇是否要先變更這些資料，然後再將其用於修改供應程式的資料。
+
+
+</p>
+<p>
+
+</p>
+<p>
+    您可以使用意圖存取權來確保資料的完整性。您的供應程式可能會將根據詳細定義的業務邏輯插入、更新及刪除的資料做為運作依據。
+如果是這樣，允許其他應用程式直接修改您的資料可能會導致資料失效。
+
+如果想讓開發人員使用意圖存取權，請務必保留相關的完整記錄。
+    並且向他們說明為何使用您應用程式 UI 的意圖存取權，比嘗試使用自己的程式碼修改資料來得好。
+
+</p>
+<p>
+    處理想修改供應程式資料的傳入意圖的方式與處理其他意圖完全相同。
+如要進一步瞭解如何使用意圖，請參閱<a href="{@docRoot}guide/components/intents-filters.html">意圖和意圖篩選器</a>。
+
+</p>
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/providers/content-providers.jd b/docs/html-intl/intl/zh-tw/guide/topics/providers/content-providers.jd
new file mode 100644
index 0000000..7f7fa34
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/providers/content-providers.jd
@@ -0,0 +1,108 @@
+page.title=內容供應程式
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+
+<!-- In this document -->
+<h2>本文主題</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">        內容供應程式基本概念</a>
+
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-creating.html">        建立內容供應程式</a>
+
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/calendar-provider.html">日曆供應程式</a>
+    </li>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/contacts-provider.html">聯絡人供應程式</a>
+    </li>
+</ol>
+
+    <!-- Related Samples -->
+<h2>相關範例</h2>
+    <ol>
+        <li>
+            <a href="{@docRoot}resources/samples/ContactManager/index.html">            聯絡人管理員</a>應用程式
+
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html">        「游標 (使用者)」        </a>
+
+
+        </li>
+        <li>
+        <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html">        「游標 (電話)」</a>
+
+        </li>
+        <li>
+            <a href="{@docRoot}resources/samples/SampleSyncAdapter/index.html">            範例同步配接器</a>
+
+        </li>
+    </ol>
+</div>
+</div>
+<p>
+    內容供應程式可管理一組結構化資料的存取權、壓縮資料以及提供用於定義資料安全性的機制。
+內容供應程式是一種標準介面，可將某個處理程序中的資料與另一個處理程序中執行的程式碼建立連結。
+
+</p>
+<p>
+    如果想透過內容供應程式存取資料，請使用您應用程式的 {@link android.content.Context} 中的{@link android.content.ContentResolver} 物件，以用戶端的身分與供應程式通訊。
+
+
+    {@link android.content.ContentResolver} 物件會與供應程式物件 (實作 {@link android.content.ContentProvider} 的類別執行個體) 通訊。
+而供應程式物件則會接收用戶端發出的資料要求、執行要求的動作，以及傳回最終結果。
+
+
+</p>
+<p>
+    如果您打算與其他應用程式分享您的資料，您不必自行開發供應程式。
+不過，您必須為自己的應用程式準備專屬供應程式，以提供自訂搜尋建議。
+此外，如果您想從自己的應用程式複製複雜的資料或檔案並貼到其他應用程式，也需要準備專屬的供應程式。
+
+</p>
+<p>
+    Android 隨附內容供應程式，可用於管理音訊、影片、圖片、個人聯絡資訊等資料。
+如果想查看 Android 隨附的部分內容供應程式，請參閱 <code><a href="{@docRoot}reference/android/provider/package-summary.html">android.provider</a>
+    </code> 套件的參考文件。
+
+這些供應程式可透過任何 Android 應用程式存取，只不過使用上有些許限制。
+
+</p><p>
+    如果想進一步瞭解內容供應程式，請參閱下列主題：
+</p>
+<dl>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        內容供應程式基本概念</a></strong>
+    </dt>
+    <dd>
+        如何在資料已整理成表格的情況下，透過內容供應程式存取資料。
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/content-provider-creating.html">
+        建立內容供應程式</a></strong>
+    </dt>
+    <dd>
+        如何自行建立內容供應程式。
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/calendar-provider.html">
+        日曆供應程式</a></strong>
+    </dt>
+    <dd>
+        如何存取屬於 Android 平台一部分的日曆供應程式。
+    </dd>
+    <dt>
+        <strong><a href="{@docRoot}guide/topics/providers/contacts-provider.html">
+        聯絡人供應程式</a></strong>
+    </dt>
+    <dd>
+        如何存取屬於 Android 平台一部分的聯絡人供應程式。
+    </dd>
+</dl>
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/providers/document-provider.jd b/docs/html-intl/intl/zh-tw/guide/topics/providers/document-provider.jd
new file mode 100644
index 0000000..1dc7c46
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/providers/document-provider.jd
@@ -0,0 +1,916 @@
+page.title=儲存空間存取架構
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文件內容
+<a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
+        <span class="more">顯示更多</span>
+        <span class="less" style="display:none">顯示較少</span></a></h2>
+<ol id="toc44" class="hide-nested">
+    <li>
+        <a href="#overview">總覽</a>
+    </li>
+    <li>
+        <a href="#flow">控管流程</a>
+    </li>
+    <li>
+        <a href="#client">編寫用戶端應用程式</a>
+        <ol>
+        <li><a href="#search">搜尋文件</a></li>
+        <li><a href="#process">處理結果</a></li>
+        <li><a href="#metadata">檢查文件中繼資料</a></li>
+        <li><a href="#open">開啟文件</a></li>
+        <li><a href="#create">建立新文件</a></li>
+        <li><a href="#delete">刪除文件</a></li>
+        <li><a href="#edit">編輯文件</a></li>
+        <li><a href="#permissions">保留權限</a></li>
+        </ol>
+    </li>
+    <li><a href="#custom">編寫自訂文件供應程式</a>
+        <ol>
+        <li><a href="#manifest">宣示說明</a></li>
+        <li><a href="#contract">合約</a></li>
+        <li><a href="#subclass">將 DocumentsProvider 設為子類別</a></li>
+        <li><a href="#security">安全性</a></li>
+        </ol>
+    </li>
+
+</ol>
+<h2>重要類別</h2>
+<ol>
+    <li>{@link android.provider.DocumentsProvider}</li>
+    <li>{@link android.provider.DocumentsContract}</li>
+</ol>
+
+<h2>相關影片</h2>
+
+<ol>
+    <li><a href="http://www.youtube.com/watch?v=zxHVeXbK1P4">DevBytes：
+Android 4.4 儲存空間存取架構：供應程式</a></li>
+     <li><a href="http://www.youtube.com/watch?v=UFj9AEz0DHQ">DevBytes：
+Android 4.4 儲存空間存取架構：用戶端</a></li>
+</ol>
+
+
+<h2>程式碼範例</h2>
+
+<ol>
+    <li><a href="{@docRoot}samples/StorageProvider/index.html">儲存空間供應程式</a>
+</li>
+     <li><a href="{@docRoot}samples/StorageClient/index.html">StorageClient</a>
+</li>
+</ol>
+
+<h2>另請參閱</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+        內容供應程式基本概念
+        </a>
+    </li>
+</ol>
+
+</div>
+</div>
+
+
+<p>Android 4.4 (API 級別 19) 導入了「儲存空間存取架構」(Storage Access Framework (SAF))，SAF 可方便使用者透過偏好的文件儲存空間供應程式開啟文件、圖片等其他檔案。
+
+提供簡單易用的標準 UI 可讓使用者在各種應用程式和供應程式中，以相同的方式瀏覽檔案及存取近期開啟的檔案。
+</p>
+
+<p>雲端或本機儲存服務可實作會封裝服務本身的
+{@link android.provider.DocumentsProvider}，藉此加入這個生態系統。您只需編寫幾行程式碼，即可將需要存取供應程式文件的用戶端應用程式與 SAF 整合。
+
+</p>
+
+<p>SAF 內含下列項目：</p>
+
+<ul>
+<li><strong>文件供應程式</strong> &mdash; 可讓儲存服務 (例如 Google 雲端硬碟) 顯示所管理檔案的內容供應程式。
+文件供應程式是當作
+{@link android.provider.DocumentsProvider} 類別的子類別使用。文件供應程式結構定義是以傳統檔案階層為依據，不論您為文件供應程式設定的資料儲存方式為何。Android 平台內建數種文件供應程式，例如「下載」、「圖片」和「影片」。
+
+
+
+</li>
+
+<li><strong>用戶端應用程式</strong> &mdash; 可呼叫
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 和 (或)
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT} 意圖及接收文件供應程式所傳回檔案的自訂應用程式。
+</li>
+
+<li><strong>挑選器</strong> &mdash; 可讓使用者透過所有符合用戶端應用程式搜尋條件的文件供應程式存取文件的系統 UI。
+</li>
+</ul>
+
+<p>以下是 SAF 提供的部分功能：</p>
+<ul>
+<li>可讓使用者透過所有文件供應程式 (而非單一應用程式) 瀏覽內容。</li>
+<li>可將文件供應程式所擁有文件的存取權永久授予您的應用程式，
+方便使用者透過相關供應程式新增、編輯、儲存及刪除檔案。
+</li>
+<li>支援多個使用者帳戶和暫時性的根目錄，例如只在插入電腦時才會顯示的 USB 儲存空間供應程式。
+ </li>
+</ul>
+
+<h2 id ="overview">總覽</h2>
+
+<p>SAF 是以內容供應程式 ({@link android.provider.DocumentsProvider} 類別的子類別) 為基礎。
+「文件供應程式」<em></em>中的資料結構採用如下所示的傳統檔案階層：
+</p>
+<p><img src="{@docRoot}images/providers/storage_datamodel.png" alt="data model" /></p>
+<p class="img-caption"><strong>圖 1.</strong>文件供應程式資料模型。「根目錄」會指向單一「文件」，接著該文件會展開成樹狀結構的分支。請注意下列事項：
+</p>
+
+<p></p>
+<ul>
+
+<li>每個文件供應程式都會回報一或多個「根目錄」(也就是文件樹狀結構的起始點)。每個根目錄都有專屬的 {@link android.provider.DocumentsContract.Root#COLUMN_ROOT_ID}，可導向至代表該根目錄所含內容的某份文件 (某個目錄)。根目錄的設計架構是動態的，能夠支援多重帳戶、暫時性 USB 儲存裝置或使用者登入/登出等使用狀況。
+
+
+
+
+
+</li>
+
+<li>每個根目錄都內含一份文件，而該文件會指向 N<em></em> 份文件的 1，每份文件又可指向另外 N<em></em> 份文件的 1。
+ </li>
+
+<li>每個儲存空間後端都會透過唯一的
+{@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} 來參照個別檔案，藉此顯示這些檔案及目錄。文件 ID 不得重複而且一旦核發便不得更改，原因在於裝置重新啟動時會將這些 ID 用於永久 URI 授權。
+
+
+</li>
+
+
+<li>文件可以是可開啟的檔案 (類型為 MIME) 或內含其他文件的目錄 (類型為
+{@link android.provider.DocumentsContract.Document#MIME_TYPE_DIR} MIME )。
+</li>
+
+<li>每份文件的功能會視
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS COLUMN_FLAGS} 而有所不同，例如 {@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_WRITE}、
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE} 和
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_THUMBNAIL}。相同的 {@link android.provider.DocumentsContract.Document#COLUMN_DOCUMENT_ID} 可以納入多個目錄中。
+
+
+</li>
+</ul>
+
+<h2 id="flow">控管流程</h2>
+<p>如上所述，文件供應程式資料模型是以傳統檔案階層為基礎。
+不過，您可以自己偏好的方式儲存您的資料，只要所儲存資料可透過 {@link android.provider.DocumentsProvider} API 存取即可。例如，您可以將資料存放在標籤式的雲端儲存空間。
+
+</p>
+
+<p>圖 2 是相片應用程式如何使用 SAF 存取已儲存資料的說明範例：
+</p>
+<p><img src="{@docRoot}images/providers/storage_dataflow.png" alt="app" /></p>
+
+<p class="img-caption"><strong>圖 2.</strong>儲存空間存取架構</p>
+
+<p>請注意下列事項：</p>
+<ul>
+
+<li>在 SAF 中，供應程式與用戶端無法直接進行互動。
+用戶端必須取得相關權限才能與檔案進行互動 (也就是讀取、編輯、建立或刪除檔案)。
+</li>
+
+<li>應用程式 (在此範例中為相片應用程式) 觸發
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 或 {@link android.content.Intent#ACTION_CREATE_DOCUMENT} 意圖後，互動程序便會開始。意圖可能包括用於縮小條件範圍的篩選器 &mdash; 例如「將所有內含　MIME 類型『圖片』的可開啟檔案提供給我」。
+
+</li>
+
+<li>一旦觸發意圖，系統挑選器就會前往所有已註冊的供應程式，並且向使用者顯示相符的內容根目錄。
+</li>
+
+<li>即便底層文件供應程式可能不盡相同，挑選器仍會提供使用者可用於存取文件的標準介面。
+例如圖 2 中的 Google 雲端硬碟供應程式、USB 供應程式和雲端供應程式。
+</li>
+</ul>
+
+<p>圖 3 顯示的是使用者搜尋指定 Google 雲端硬碟帳戶中的圖片時所用的挑選器：
+</p>
+
+<p><img src="{@docRoot}images/providers/storage_picker.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>圖 3.</strong>挑選器</p>
+
+<p>使用者選取 Google 雲端硬碟後，系統就會顯示相關圖片 (如圖 4 所示)。
+此時，使用者即可與這些圖片進行供應程式和用戶端應用程式支援的互動。
+
+
+<p><img src="{@docRoot}images/providers/storage_photos.png" width="340" alt="picker" style="border:2px solid #ddd" /></p>
+
+<p class="img-caption"><strong>圖 4.</strong>相關圖片</p>
+
+<h2 id="client">編寫用戶端應用程式</h2>
+
+<p>如果您想讓應用程式在搭載 Android 4.3 以下版本的裝置上從其他應用程式擷取檔案，您的應用程式就必須呼叫 {@link android.content.Intent#ACTION_PICK}或 {@link android.content.Intent#ACTION_GET_CONTENT} 意圖。
+
+接著，使用者必須選取某款應用程式來選取檔案，而且選定的應用程式必須提供使用者介面，讓使用者瀏覽及挑選可用的檔案。
+
+ </p>
+
+<p>針對搭載 Android 4.4 以上版本的裝置，您的應用程式還可以呼叫 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 意圖，以顯示系統所控管的挑選器 UI，方便使用者瀏覽其他應用程式提供的所有檔案。
+
+透過這個單一 UI，使用者可以從任何受支援的應用程式挑選檔案。
+</p>
+
+<p>{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 並不是 {@link android.content.Intent#ACTION_GET_CONTENT} 的替代意圖，實際上應呼叫的意圖取決於您應用程式的需求。
+
+</p>
+
+<ul>
+<li>如果您只想讓應用程式讀取/匯入資料，請呼叫 {@link android.content.Intent#ACTION_GET_CONTENT}，
+以便應用程式匯入資料 (例如圖片檔) 的複本。
+</li>
+
+<li>如果您想將文件供應程式所擁有文件的存取權永久授予您的應用程式，請呼叫 {@link android.content.Intent#ACTION_OPEN_DOCUMENT}。
+
+例如可讓使用者編輯文件供應程式中所儲存圖片的相片編輯應用程式。
+ </li>
+
+</ul>
+
+
+<p>本節說明如何根據
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 和
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT} 意圖編寫用戶端應用程式。</p>
+
+
+<h3 id="search">搜尋文件</h3>
+
+<p>
+以下程式碼片段採用 {@link android.content.Intent#ACTION_OPEN_DOCUMENT}，可搜尋內含圖片檔的文件供應程式：
+
+</p>
+
+<pre>private static final int READ_REQUEST_CODE = 42;
+...
+/**
+ * Fires an intent to spin up the &quot;file chooser&quot; UI and select an image.
+ */
+public void performFileSearch() {
+
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's file
+    // browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones)
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only images, using the image MIME data type.
+    // If one wanted to search for ogg vorbis files, the type would be &quot;audio/ogg&quot;.
+    // To search for all documents available via installed storage providers,
+    // it would be &quot;*/*&quot;.
+    intent.setType(&quot;image/*&quot;);
+
+    startActivityForResult(intent, READ_REQUEST_CODE);
+}</pre>
+
+<p>請注意下列事項：</p>
+<ul>
+<li>當應用程式觸發 {@link android.content.Intent#ACTION_OPEN_DOCUMENT} 意圖時，挑選器便會啟動並顯示所有相符的文件供應程式。
+</li>
+
+<li>將 {@link android.content.Intent#CATEGORY_OPENABLE} 這個類別加入意圖中可篩選搜尋結果，限定系統只顯示可開啟的文件 (例如圖片檔)。
+</li>
+
+<li>使用 {@code intent.setType("image/*")} 陳述式可進一步篩選搜尋結果，顯示系統只顯示內含 MIME 類型圖片的文件。
+</li>
+</ul>
+
+<h3 id="results">處理結果</h3>
+
+<p>使用者在挑選器中選取某份文件後，便會呼叫
+{@link android.app.Activity#onActivityResult onActivityResult()}。指向所選文件的 URI 包含在 {@code resultData} 參數中。
+
+請使用 {@link android.content.Intent#getData getData()} 擷取 URI，然後使用該 URI 擷取使用者所需的文件。
+例如：
+</p>
+
+<pre>&#64;Override
+public void onActivityResult(int requestCode, int resultCode,
+        Intent resultData) {
+
+    // The ACTION_OPEN_DOCUMENT intent was sent with the request code
+    // READ_REQUEST_CODE. If the request code seen here doesn't match, it's the
+    // response to some other intent, and the code below shouldn't run at all.
+
+    if (requestCode == READ_REQUEST_CODE && resultCode == Activity.RESULT_OK) {
+        // The document selected by the user won't be returned in the intent.
+        // Instead, a URI to that document will be contained in the return intent
+        // provided to this method as a parameter.
+        // Pull that URI using resultData.getData().
+        Uri uri = null;
+        if (resultData != null) {
+            uri = resultData.getData();
+            Log.i(TAG, "Uri: " + uri.toString());
+            showImage(uri);
+        }
+    }
+}
+</pre>
+
+<h3 id="metadata">檢查文件中繼資料</h3>
+
+<p>取得文件的 URI 後，您就可以存取該文件的中繼資料。以下程式碼片段會擷取 URI 所指定文件的中繼資料並且加以記錄：
+</p>
+
+<pre>public void dumpImageMetaData(Uri uri) {
+
+    // The query, since it only applies to a single document, will only return
+    // one row. There's no need to filter, sort, or select fields, since we want
+    // all fields for one document.
+    Cursor cursor = getActivity().getContentResolver()
+            .query(uri, null, null, null, null, null);
+
+    try {
+    // moveToFirst() returns false if the cursor has 0 rows.  Very handy for
+    // &quot;if there's anything to look at, look at it&quot; conditionals.
+        if (cursor != null &amp;&amp; cursor.moveToFirst()) {
+
+            // Note it's called &quot;Display Name&quot;.  This is
+            // provider-specific, and might not necessarily be the file name.
+            String displayName = cursor.getString(
+                    cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
+            Log.i(TAG, &quot;Display Name: &quot; + displayName);
+
+            int sizeIndex = cursor.getColumnIndex(OpenableColumns.SIZE);
+            // If the size is unknown, the value stored is null.  But since an
+            // int can't be null in Java, the behavior is implementation-specific,
+            // which is just a fancy term for &quot;unpredictable&quot;.  So as
+            // a rule, check if it's null before assigning to an int.  This will
+            // happen often:  The storage API allows for remote files, whose
+            // size might not be locally known.
+            String size = null;
+            if (!cursor.isNull(sizeIndex)) {
+                // Technically the column stores an int, but cursor.getString()
+                // will do the conversion automatically.
+                size = cursor.getString(sizeIndex);
+            } else {
+                size = &quot;Unknown&quot;;
+            }
+            Log.i(TAG, &quot;Size: &quot; + size);
+        }
+    } finally {
+        cursor.close();
+    }
+}
+</pre>
+
+<h3 id="open-client">開啟文件</h3>
+
+<p>取得文件的 URI 後，您就可以開啟該文件或是對該文件執行任何所需操作。
+</p>
+
+<h4>點陣圖</h4>
+
+<p>以下範例可開啟 {@link android.graphics.Bitmap}：</p>
+
+<pre>private Bitmap getBitmapFromUri(Uri uri) throws IOException {
+    ParcelFileDescriptor parcelFileDescriptor =
+            getContentResolver().openFileDescriptor(uri, "r");
+    FileDescriptor fileDescriptor = parcelFileDescriptor.getFileDescriptor();
+    Bitmap image = BitmapFactory.decodeFileDescriptor(fileDescriptor);
+    parcelFileDescriptor.close();
+    return image;
+}
+</pre>
+
+<p>請注意，請不要針對 UI 執行緒進行這項作業，請在背景中使用 {@link android.os.AsyncTask} 進行。
+開啟點陣圖後，您就可以在 {@link android.widget.ImageView} 中顯示該點陣圖。
+
+</p>
+
+<h4>取得 InputStream</h4>
+
+<p>以下範例可從 URI 中取得 {@link java.io.InputStream}。在這個程式碼片段中，系統會將每行檔案解讀為單一字串：
+</p>
+
+<pre>private String readTextFromUri(Uri uri) throws IOException {
+    InputStream inputStream = getContentResolver().openInputStream(uri);
+    BufferedReader reader = new BufferedReader(new InputStreamReader(
+            inputStream));
+    StringBuilder stringBuilder = new StringBuilder();
+    String line;
+    while ((line = reader.readLine()) != null) {
+        stringBuilder.append(line);
+    }
+    fileInputStream.close();
+    parcelFileDescriptor.close();
+    return stringBuilder.toString();
+}
+</pre>
+
+<h3 id="create">建立新文件</h3>
+
+<p>應用程式可在文件供應程式中使用
+{@link android.content.Intent#ACTION_CREATE_DOCUMENT} 意圖建立新文件。
+如要建立新檔案，請將 MIME 類型和檔案名稱提供給意圖，然後使用專屬的要求程式碼執行該意圖。
+系統會為您完成其餘的作業：</p>
+
+
+<pre>
+// Here are some examples of how you might call this method.
+// The first parameter is the MIME type, and the second parameter is the name
+// of the file you are creating:
+//
+// createFile("text/plain", "foobar.txt");
+// createFile("image/png", "mypicture.png");
+
+// Unique request code.
+private static final int WRITE_REQUEST_CODE = 43;
+...
+private void createFile(String mimeType, String fileName) {
+    Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as
+    // a file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Create a file with the requested MIME type.
+    intent.setType(mimeType);
+    intent.putExtra(Intent.EXTRA_TITLE, fileName);
+    startActivityForResult(intent, WRITE_REQUEST_CODE);
+}
+</pre>
+
+<p>建立新文件後，您可在
+{@link android.app.Activity#onActivityResult onActivityResult()} 中取得該文件的 URI，
+以便繼續在其中編寫程式碼。</p>
+
+<h3 id="delete">刪除文件</h3>
+
+<p>如果您已取得文件的 URI，而且文件的
+{@link android.provider.DocumentsContract.Document#COLUMN_FLAGS Document.COLUMN_FLAGS} 含有
+{@link android.provider.DocumentsContract.Document#FLAG_SUPPORTS_DELETE SUPPORTS_DELETE}，您就可以刪除該文件。
+
+例如：</p>
+
+<pre>
+DocumentsContract.deleteDocument(getContentResolver(), uri);
+</pre>
+
+<h3 id="edit">編輯文件</h3>
+
+<p>您可以使用 SAF 即時編輯文字文件。以下程式碼片段會觸發 {@link android.content.Intent#ACTION_OPEN_DOCUMENT} 意圖並使用 {@link android.content.Intent#CATEGORY_OPENABLE} 類別限制系統只顯示可開啟的文件。
+
+
+
+此外，這個程式碼還會進一步篩選搜尋結果，讓系統只顯示文字檔：</p>
+
+<pre>
+private static final int EDIT_REQUEST_CODE = 44;
+/**
+ * Open a file for writing and append some text to it.
+ */
+ private void editDocument() {
+    // ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's
+    // file browser.
+    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+
+    // Filter to only show results that can be &quot;opened&quot;, such as a
+    // file (as opposed to a list of contacts or timezones).
+    intent.addCategory(Intent.CATEGORY_OPENABLE);
+
+    // Filter to show only text files.
+    intent.setType(&quot;text/plain&quot;);
+
+    startActivityForResult(intent, EDIT_REQUEST_CODE);
+}
+</pre>
+
+<p>接著，您可以利用 {@link android.app.Activity#onActivityResult onActivityResult()} (詳情請參閱<a href="#results">處理結果</a>) 呼叫程式碼執行編輯動作。以下程式碼片段會利用 {@link android.content.ContentResolver} 取得 {@link java.io.FileOutputStream}。
+
+
+在預設情況下，這個程式碼片段會使用「寫入」模式。這種方法可索取最少量的所需存取權，因此如果您只需要寫入存取權，請勿要求讀取/寫入：
+
+</p>
+
+<pre>private void alterDocument(Uri uri) {
+    try {
+        ParcelFileDescriptor pfd = getActivity().getContentResolver().
+                openFileDescriptor(uri, "w");
+        FileOutputStream fileOutputStream =
+                new FileOutputStream(pfd.getFileDescriptor());
+        fileOutputStream.write(("Overwritten by MyCloud at " +
+                System.currentTimeMillis() + "\n").getBytes());
+        // Let the document provider know you're done by closing the stream.
+        fileOutputStream.close();
+        pfd.close();
+    } catch (FileNotFoundException e) {
+        e.printStackTrace();
+    } catch (IOException e) {
+        e.printStackTrace();
+    }
+}</pre>
+
+<h3 id="permissions">保留權限</h3>
+
+<p>應用程式開啟要讀取或寫入的檔案後，系統會將該檔案的 URI 權限授予您的應用程式。
+除非使用者重新啟動裝置，否則這項權限會持續保持有效狀態。不過，假如您的應用程式為圖片編輯應用程式，而您希望使用者可直接透過您的應用程式存取他們最近編輯的 5 張圖片。如果使用者重新啟動的裝置，就您必須將使用者傳回系統挑選器來搜尋所需檔案，而這並非最佳做法。
+
+
+
+</p>
+
+<p>為了避免這種情況發生，您可以保留系統授予您應用程式的權限。實際上，您的應用程式會「取得」系統授予的永久性 URI 權限。
+
+這種權限可讓使用者持續透過您的應用程式存取檔案，即使其裝置重新啟動也無妨：
+</p>
+
+
+<pre>final int takeFlags = intent.getFlags()
+            &amp; (Intent.FLAG_GRANT_READ_URI_PERMISSION
+            | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
+// Check for the freshest data.
+getContentResolver().takePersistableUriPermission(uri, takeFlags);</pre>
+
+<p>除了上述指示外，您還需要完成最後一個步驟。您儲存了您的應用程式最近存取的 URI，但這些 URI 有可能已失效 &mdash; 原因在於其他應用程式刪除或修改了文件。
+
+因此，建議您一律呼叫
+{@code getContentResolver().takePersistableUriPermission()} 檢查最新資料。
+</p>
+
+<h2 id="custom">編寫自訂文件供應程式</h2>
+
+<p>
+如果您想開發可提供檔案儲存服務 (例如雲端儲存服務) 的應用程式，可以編寫自訂文件供應程式透過 SAF 提供您的檔案。
+
+本節說明如何編寫這類程式。
+</p>
+
+
+<h3 id="manifest">宣示說明</h3>
+
+<p>如要實作自訂文件供應程式，請將以下項目加入應用程式的宣示說明：
+</p>
+<ul>
+
+<li>19 以上的 API 級別目標。</li>
+
+<li>宣告自訂儲存空間供應程式的
+<code>&lt;provider&gt;</code> 元素。 </li>
+
+<li>供應程式的名稱 (也就是供應程式的類別名稱)，包括套件名稱。範例：<code>com.example.android.storageprovider.MyCloudProvider</code>。
+</li>
+
+<li>授權的名稱 (也就是套件的名稱；在此範例中為 
+<code>com.example.android.storageprovider</code>) 以及內容供應程式的類型
+(<code>documents</code>)。範例：{@code com.example.android.storageprovider.documents}。</li>
+
+<li>設為 <code>&quot;true&quot;</code> 的 <code>android:exported</code> 屬性。您必須將供應程式匯出，方便其他應用程式加以偵測。
+</li>
+
+<li>設為 <code>&quot;true&quot;</code> 的
+<code>android:grantUriPermissions</code> 屬性。這項設定可讓系統將供應程式內容的存取權授予其他應用程式。
+如果想瞭解如何保留特定文件的權限，請參閱<a href="#permissions">保留權限</a>。
+</li>
+
+<li>{@code MANAGE_DOCUMENTS} 權限。在預設情況下，所有人都可使用供應程式。
+加入這項權限可針對系統設定供應程式限制，藉此提高其安全性。
+</li>
+
+<li>設定資源檔案所定義布林值的 {@code android:enabled} 屬性。
+這項屬性可用於針對搭載 Android 4.3 以下版本的裝置停用供應程式。範例：{@code android:enabled="@bool/atLeastKitKat"}。
+除了在宣示說明中加入這項屬性以外，您還必須執行下列操作：
+
+<ul>
+<li>在位於 {@code res/values/} 的 {@code bool.xml} 資源檔案中，新增以下程式碼：
+ <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>在位於 {@code res/values-v19/} 的 {@code bool.xml} 資源檔案中，新增以下程式碼：
+ <pre>&lt;bool name=&quot;atLeastKitKat&quot;&gt;true&lt;/bool&gt;</pre></li>
+</ul></li>
+
+<li>內含 
+{@code android.content.action.DOCUMENTS_PROVIDER} 動作的意圖篩選器，讓您的供應程式能夠在系統搜尋供應程式時顯示在挑選器中。
+</li>
+
+</ul>
+<p>以下是內含供應程式的範例宣示說明例外狀況：</p>
+
+<pre>&lt;manifest... &gt;
+    ...
+    &lt;uses-sdk
+        android:minSdkVersion=&quot;19&quot;
+        android:targetSdkVersion=&quot;19&quot; /&gt;
+        ....
+        &lt;provider
+            android:name=&quot;com.example.android.storageprovider.MyCloudProvider&quot;
+            android:authorities=&quot;com.example.android.storageprovider.documents&quot;
+            android:grantUriPermissions=&quot;true&quot;
+            android:exported=&quot;true&quot;
+            android:permission=&quot;android.permission.MANAGE_DOCUMENTS&quot;
+            android:enabled=&quot;&#64;bool/atLeastKitKat&quot;&gt;
+            &lt;intent-filter&gt;
+                &lt;action android:name=&quot;android.content.action.DOCUMENTS_PROVIDER&quot; /&gt;
+            &lt;/intent-filter&gt;
+        &lt;/provider&gt;
+    &lt;/application&gt;
+
+&lt;/manifest&gt;</pre>
+
+<h4 id="43">支援搭載 Android 4.3 以下版本的裝置</h4>
+
+<p>只有搭載 Android 4.4 以上版本的裝置可使用 
+{@link android.content.Intent#ACTION_OPEN_DOCUMENT} 意圖。如果您想讓應用程式支援 {@link android.content.Intent#ACTION_GET_CONTENT} 以便與搭載 Android 4.3 以下版本的裝置相容，請針對搭載 Android 4.4 以上版本的裝置停用宣示說明中的 {@link android.content.Intent#ACTION_GET_CONTENT} 意圖篩選器。
+
+
+
+
+文件供應器和 {@link android.content.Intent#ACTION_GET_CONTENT} 是完全不同的項目。
+
+如果您同時支援這兩個項目，您的應用程式就會重複出現在系統挑選器 UI 中，讓使用者可透過兩種不同方式存取您儲存的資料，
+
+而這樣會造成混淆。</p>
+
+<p>以下提供針對搭載 Android 4.4 以上版本的裝置停用
+{@link android.content.Intent#ACTION_GET_CONTENT} 意圖篩選器的建議做法：
+</p>
+
+<ol>
+<li>在位於 {@code res/values/} 的 {@code bool.xml} 資源檔案中，新增以下程式碼：
+ <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;true&lt;/bool&gt;</pre></li>
+
+<li>在位於 {@code res/values-v19/} 的 {@code bool.xml} 資源檔案中，新增以下程式碼：
+ <pre>&lt;bool name=&quot;atMostJellyBeanMR2&quot;&gt;false&lt;/bool&gt;</pre></li>
+
+<li>新增
+<a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">Activity 別名</a>來針對搭載 Android 4.4 (API 級別 19) 以上版本的裝置停用 {@link android.content.Intent#ACTION_GET_CONTENT} 意圖篩選器。
+
+例如：
+
+<pre>
+&lt;!-- This activity alias is added so that GET_CONTENT intent-filter
+     can be disabled for builds on API level 19 and higher. --&gt;
+&lt;activity-alias android:name=&quot;com.android.example.app.MyPicker&quot;
+        android:targetActivity=&quot;com.android.example.app.MyActivity&quot;
+        ...
+        android:enabled=&quot;@bool/atMostJellyBeanMR2&quot;&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name=&quot;android.intent.action.GET_CONTENT&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.OPENABLE&quot; /&gt;
+        &lt;category android:name=&quot;android.intent.category.DEFAULT&quot; /&gt;
+        &lt;data android:mimeType=&quot;image/*&quot; /&gt;
+        &lt;data android:mimeType=&quot;video/*&quot; /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity-alias&gt;
+</pre>
+</li>
+</ol>
+<h3 id="contract">合約</h3>
+
+<p>一般來說，當您編寫自訂內容供應程式時，需要完成的其中一項工作為實作合約類別 (詳情請參閱<a href="{@docRoot}guide/topics/providers/content-provider-creating.html#ContractClass">內容供應程式</a>開發人員指南)。
+
+
+合約類別是 {@code public final} 類別，內含以下項目的固定不變定義：URI、欄名稱、MIME 類型以及供應程式擁有的其他中繼資料。
+
+SAF 可為您提供以下合約類別，因此您不必自行編 寫合約：
+
+</p>
+
+<ul>
+   <li>{@link android.provider.DocumentsContract.Document}</li>
+   <li>{@link android.provider.DocumentsContract.Root}</li>
+</ul>
+
+<p>例如，以下是在文件供應程式查詢文件或根目錄時可能會傳回的資料欄：
+</p>
+
+<pre>private static final String[] DEFAULT_ROOT_PROJECTION =
+        new String[]{Root.COLUMN_ROOT_ID, Root.COLUMN_MIME_TYPES,
+        Root.COLUMN_FLAGS, Root.COLUMN_ICON, Root.COLUMN_TITLE,
+        Root.COLUMN_SUMMARY, Root.COLUMN_DOCUMENT_ID,
+        Root.COLUMN_AVAILABLE_BYTES,};
+private static final String[] DEFAULT_DOCUMENT_PROJECTION = new
+        String[]{Document.COLUMN_DOCUMENT_ID, Document.COLUMN_MIME_TYPE,
+        Document.COLUMN_DISPLAY_NAME, Document.COLUMN_LAST_MODIFIED,
+        Document.COLUMN_FLAGS, Document.COLUMN_SIZE,};
+</pre>
+
+<h3 id="subclass">將 DocumentsProvider 設為子類別</h3>
+
+<p>編寫自動文件供應程式的下一個步驟是，將抽象類別 {@link android.provider.DocumentsProvider} 設為子類別。
+您至少必須實作下列方法：
+</p>
+
+<ul>
+<li>{@link android.provider.DocumentsProvider#queryRoots queryRoots()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()}</li>
+
+<li>{@link android.provider.DocumentsProvider#queryDocument queryDocument()}</li>
+
+<li>{@link android.provider.DocumentsProvider#openDocument openDocument()}</li>
+</ul>
+
+<p>以上是您必須實作的方法，不過您可能會視需要實作其他方法。
+詳情請參閱 {@link android.provider.DocumentsProvider}。
+</p>
+
+<h4 id="queryRoots">實作 queryRoots</h4>
+
+<p>實作 {@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} 後系統會使用 {@link android.provider.DocumentsContract.Root} 中定義的資料欄，傳回指向文件供應程式所有根目錄的 {@link android.database.Cursor}。
+
+</p>
+
+<p>在以下程式碼片段中，{@code projection} 參數代表呼叫者想返回的特定欄位。
+這個程式碼片隊會建立新游標並在其中加入一列 &mdash; 也就是根目錄或頂層目錄 (例如「下載」或「圖片」)。
+
+大多數供應程式只有一個根目錄。而您可以有多個根目錄，例如擁有多個使用者帳戶的情況下。
+在這種情況下，只要在游標中加入第二列即可。
+</p>
+
+<pre>
+&#64;Override
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+
+    // Create a cursor with either the requested fields, or the default
+    // projection if "projection" is null.
+    final MatrixCursor result =
+            new MatrixCursor(resolveRootProjection(projection));
+
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+    }
+
+    // It's possible to have multiple roots (e.g. for multiple accounts in the
+    // same app) -- just add multiple cursor rows.
+    // Construct one row for a root called &quot;MyCloud&quot;.
+    final MatrixCursor.RowBuilder row = result.newRow();
+    row.add(Root.COLUMN_ROOT_ID, ROOT);
+    row.add(Root.COLUMN_SUMMARY, getContext().getString(R.string.root_summary));
+
+    // FLAG_SUPPORTS_CREATE means at least one directory under the root supports
+    // creating documents. FLAG_SUPPORTS_RECENTS means your application's most
+    // recently used documents will show up in the &quot;Recents&quot; category.
+    // FLAG_SUPPORTS_SEARCH allows users to search all documents the application
+    // shares.
+    row.add(Root.COLUMN_FLAGS, Root.FLAG_SUPPORTS_CREATE |
+            Root.FLAG_SUPPORTS_RECENTS |
+            Root.FLAG_SUPPORTS_SEARCH);
+
+    // COLUMN_TITLE is the root title (e.g. Gallery, Drive).
+    row.add(Root.COLUMN_TITLE, getContext().getString(R.string.title));
+
+    // This document id cannot change once it's shared.
+    row.add(Root.COLUMN_DOCUMENT_ID, getDocIdForFile(mBaseDir));
+
+    // The child MIME types are used to filter the roots and only present to the
+    //  user roots that contain the desired type somewhere in their file hierarchy.
+    row.add(Root.COLUMN_MIME_TYPES, getChildMimeTypes(mBaseDir));
+    row.add(Root.COLUMN_AVAILABLE_BYTES, mBaseDir.getFreeSpace());
+    row.add(Root.COLUMN_ICON, R.drawable.ic_launcher);
+
+    return result;
+}</pre>
+
+<h4 id="queryChildDocuments">實作 queryChildDocuments</h4>
+
+<p>實作
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()} 後系統會使用
+{@link android.provider.DocumentsContract.Document} 中定義的資料欄，傳回指向特定目錄中所有檔案的 {@link android.database.Cursor}。
+
+</p>
+
+<p>當您在挑選器 UI 中選擇應用程式的根目錄後，就會呼叫這個方法，藉此取得根目錄內某個目錄中的下層文件。
+您可以在檔案階層的任何層級中呼叫這個方法，而不單單只能在根目錄中呼叫。
+以下程式碼片段會使用要求的資料欄建立新游標，然後加入該游標中上層目錄的任何下層物件相關資訊。下層物件可以是圖片、其他目錄等任何檔案：
+
+
+</p>
+
+<pre>&#64;Override
+public Cursor queryChildDocuments(String parentDocumentId, String[] projection,
+                              String sortOrder) throws FileNotFoundException {
+
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    final File parent = getFileForDocId(parentDocumentId);
+    for (File file : parent.listFiles()) {
+        // Adds the file's display name, MIME type, size, and so on.
+        includeFile(result, null, file);
+    }
+    return result;
+}
+</pre>
+
+<h4 id="queryDocument">實作 queryDocument</h4>
+
+<p>實作
+{@link android.provider.DocumentsProvider#queryDocument queryDocument()} 後系統會使用 {@link android.provider.DocumentsContract.Document} 中定義的資料欄，傳回指向特定檔案的 {@link android.database.Cursor}。
+
+
+</p>
+
+<p>{@link android.provider.DocumentsProvider#queryDocument queryDocument()}方法會針對特定檔案傳回
+{@link android.provider.DocumentsProvider#queryChildDocuments queryChildDocuments()} 所傳送的相同資訊：
+
+</p>
+
+
+<pre>&#64;Override
+public Cursor queryDocument(String documentId, String[] projection) throws
+        FileNotFoundException {
+
+    // Create a cursor with the requested projection, or the default projection.
+    final MatrixCursor result = new
+            MatrixCursor(resolveDocumentProjection(projection));
+    includeFile(result, documentId, null);
+    return result;
+}
+</pre>
+
+<h4 id="openDocument">實作 openDocument</h4>
+
+<p>您必須實作 {@link android.provider.DocumentsProvider#openDocument
+openDocument()} 來傳回代表特定檔案的 
+{@link android.os.ParcelFileDescriptor}。其他應用程式可利用傳回的 {@link android.os.ParcelFileDescriptor} 傳輸資料。
+使用者選取檔案而且用戶端應用程式呼叫
+{@link android.content.ContentResolver#openFileDescriptor openFileDescriptor()} 要求存取該檔案後，系統就會呼叫這個方法。範例：
+
+</p>
+
+<pre>&#64;Override
+public ParcelFileDescriptor openDocument(final String documentId,
+                                         final String mode,
+                                         CancellationSignal signal) throws
+        FileNotFoundException {
+    Log.v(TAG, &quot;openDocument, mode: &quot; + mode);
+    // It's OK to do network operations in this method to download the document,
+    // as long as you periodically check the CancellationSignal. If you have an
+    // extremely large file to transfer from the network, a better solution may
+    // be pipes or sockets (see ParcelFileDescriptor for helper methods).
+
+    final File file = getFileForDocId(documentId);
+
+    final boolean isWrite = (mode.indexOf('w') != -1);
+    if(isWrite) {
+        // Attach a close listener if the document is opened in write mode.
+        try {
+            Handler handler = new Handler(getContext().getMainLooper());
+            return ParcelFileDescriptor.open(file, accessMode, handler,
+                        new ParcelFileDescriptor.OnCloseListener() {
+                &#64;Override
+                public void onClose(IOException e) {
+
+                    // Update the file with the cloud server. The client is done
+                    // writing.
+                    Log.i(TAG, &quot;A file with id &quot; +
+                    documentId + &quot; has been closed!
+                    Time to &quot; +
+                    &quot;update the server.&quot;);
+                }
+
+            });
+        } catch (IOException e) {
+            throw new FileNotFoundException(&quot;Failed to open document with id &quot;
+            + documentId + &quot; and mode &quot; + mode);
+        }
+    } else {
+        return ParcelFileDescriptor.open(file, accessMode);
+    }
+}
+</pre>
+
+<h3 id="security">安全性</h3>
+
+<p>假如您的文件供應程式為受密碼保護的雲端儲存服務，而您先想確認使用者都已登入，然後再開始分享其檔案。那麼在使用者未登入的情況下，您的應用程式應採取什麼行動？
+
+解決方案是不要讓文件供應程式在您實作 {@link android.provider.DocumentsProvider#queryRoots
+queryRoots()} 後傳回任何根目錄。
+換句話說，就是讓供應程式傳回空的根目錄游標：</p>
+
+<pre>
+public Cursor queryRoots(String[] projection) throws FileNotFoundException {
+...
+    // If user is not logged in, return an empty root cursor.  This removes our
+    // provider from the list entirely.
+    if (!isUserLoggedIn()) {
+        return result;
+}
+</pre>
+
+<p>另一個需採取的步驟是呼叫 {@code getContentResolver().notifyChange()}。還記得 {@link android.provider.DocumentsContract} 嗎？
+我們會使用該類別建立 URI。以下程式碼片段會指示系統在使用者的登入狀態變更時，查詢文件供應程式的根目錄。
+
+如果使用者未登入，呼叫 {@link android.provider.DocumentsProvider#queryRoots queryRoots()} 就會如上所述傳回空的游標。
+
+這樣可確保只有登入供應程式的使用者可存取其中的文件。
+</p>
+
+<pre>private void onLoginButtonClick() {
+    loginOrLogout();
+    getContentResolver().notifyChange(DocumentsContract
+            .buildRootsUri(AUTHORITY), null);
+}
+</pre>
\ No newline at end of file
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/resources/accessing-resources.jd b/docs/html-intl/intl/zh-tw/guide/topics/resources/accessing-resources.jd
new file mode 100644
index 0000000..3a5a961
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/resources/accessing-resources.jd
@@ -0,0 +1,337 @@
+page.title=存取資源
+parent.title=應用程式資源
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>快速檢視</h2>
+  <ul>
+    <li>使用 {@code R.java} 中的整數可以參照程式碼中的資源，例如
+{@code R.drawable.myimage}</li>
+    <li>使用特殊 XML 語法可以參照資源中的資源，例如 {@code
+&#64;drawable/myimage}</li>
+    <li>您也可以使用
+{@link android.content.res.Resources} 中的方法存取應用程式資源</li>
+  </ul>
+
+  <h2>重要類別</h2>
+  <ol>
+    <li>{@link android.content.res.Resources}</li>
+  </ol>
+
+  <h2>本文件內容</h2>
+  <ol>
+    <li><a href="#ResourcesFromCode">存取程式碼中的資源</a></li>
+    <li><a href="#ResourcesFromXml">存取 XML 中的資源</a>
+      <ol>
+        <li><a href="#ReferencesToThemeAttributes">參照樣式屬性</a></li>
+      </ol>
+    </li>
+    <li><a href="#PlatformResources">存取平台資源</a></li>
+  </ol>
+
+  <h2>另請參閱</h2>
+  <ol>
+    <li><a href="providing-resources.html">提供資源</a></li>
+    <li><a href="available-resources.html">資源類型</a></li>
+  </ol>
+</div>
+</div>
+
+
+
+
+<p>提供應用程式中的資源 (於<a href="providing-resources.html">提供資源</a>中討論) 後，您可以參照其資源 ID 加以應用。所有資源 ID 會在專案的 {@code R} 類別中定義。此類別是由 {@code aapt} 工具自動產生的。
+
+</p>
+
+<p>編譯應用程式後，{@code aapt} 會產生 {@code R} 類別。此類別內含 {@code
+res/} 目錄中所有資源的資源 ID。
+每一種資源類型都有 {@code R} 子類別 (例如，所有可繪項目資源的
+{@code R.drawable})，而這種類型的每一種資源都有靜態整數 (例如，{@code R.drawable.icon})。
+此整數就是資源 ID，您可以用於擷取資源。
+</p>
+
+<p>儘管資源 ID 都指定於 {@code R} 類別，您不需要為了取得資源 ID 而加以查看。資源 ID 的組成如下：
+</p>
+<ul>
+  <li>資源類型<em></em>：每一種資源會以「類型」分類，例如 {@code
+string}、{@code drawable} 以及 {@code layout}。如需有關不同類型的詳細資訊，請參閱<a href="available-resources.html">資源類型</a>。
+  </li>
+  <li>資源名稱<em></em>可能是：檔案名稱，不含副檔名；或 XML {@code android:name} 屬性中的值，如果資源是簡單值 (例如字串)。
+
+</li>
+</ul>
+
+<p>您有兩種方式可存取資源：</p>
+<ul>
+  <li><strong>在程式碼中：</strong>使用 {@code R} 類別中子類別的靜態整數，例如：
+
+    <pre class="classic no-pretty-print">R.string.hello</pre>
+    <p>{@code string} 是資源類型，而 {@code hello} 是資源名稱。若您以此格式提供資源 ID 時，很多 Android API 都可以存取您的資源。
+請參閱<a href="#ResourcesFromCode">在程式碼中存取資源</a>。
+</p>
+  </li>
+  <li><strong>在 XML 中：</strong>使用特殊 XML 語法，也可以對應到您在 {@code R} 類別中定義的資源 ID，例如：
+
+    <pre class="classic no-pretty-print">&#64;string/hello</pre>
+    <p>{@code string} 是資源類型，而 {@code hello} 是資源名稱。您可以在 XML 資源中的任何位置使用此語法，只要符合您在資源中所提供的預期值即可。
+請參閱<a href="#ResourcesFromXml">存取 XML 中的資源</a>。</p>
+  </li>
+</ul>
+
+
+
+<h2 id="ResourcesFromCode">在程式碼中存取資源 </h2>
+
+<p>您可以將資源 ID 作為方法參數傳遞，在程式碼中使用資源。例如，您可以利用 {@link android.widget.ImageView#setImageResource(int) setImageResource()} 將 {@link android.widget.ImageView} 設定為使用 {@code res/drawable/myimage.png} 資源：
+
+</p>
+<pre>
+ImageView imageView = (ImageView) findViewById(R.id.myimageview);
+imageView.setImageResource(<strong>R.drawable.myimage</strong>);
+</pre>
+
+<p>您也可以使用 {@link
+android.content.res.Resources} (以 {@link android.content.Context#getResources()} 可取得執行個體) 中的方法擷取個別的資源。
+</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>存取原始檔案</h2>
+
+<p>雖然不常見，但您有時需要存取原始檔案和目錄。如果有此需求，則不能將檔案儲存在 {@code res/}，因為要從 
+{@code res/} 讀取資源的唯一方式是透過資源 ID。不過，您可以將資源儲存在 
+{@code assets/} 目錄。
+</p>
+<p>儲存在 {@code assets/} 目錄中的檔案「不會」<em></em>指定資源 ID，因此您無法透過 {@code R} 類別或從 XML 資源參照這些檔案。
+您可以改為查詢 {@code assets/} 目錄中的檔案，就像一般檔案系統一樣，並使用 
+{@link android.content.res.AssetManager} 讀取原始資料。
+</p>
+<p>不過，如果您只是要讀取原始資料 (例如影片或音訊檔案)，可以將檔案儲存在 {@code res/raw/} 目錄，然後使用 {@link
+android.content.res.Resources#openRawResource(int) openRawResource()} 讀取位元組串流。
+</p>
+
+</div>
+</div>
+
+
+<h3>語法</h3>
+
+<p>在程式碼中參照資源的語法如下：</p>
+
+<pre class="classic no-pretty-print">
+[<em>&lt;package_name&gt;</em>.]R.<em>&lt;resource_type&gt;</em>.<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li>{@code &lt;package_name&gt;}<em></em> 資源所在的封裝名稱 (從您自己的封裝中參照資源時，不需要此名稱)。
+</li>
+  <li>{@code &lt;resource_type&gt;}<em></em> 是資源類型的 {@code R} 子類別。</li>
+  <li>{@code &lt;resource_name&gt;}<em></em> 可以是不含副檔名的資源檔案名稱，或是 XML 元素中的 {@code android:name} 屬性值 (簡單值)。
+
+</li>
+</ul>
+<p>請參閱<a href="available-resources.html">資源類型</a>，以取得關於每個資源類型及其參照方式的詳細資訊。
+</p>
+
+
+<h3>使用案例</h3>
+
+<p>很多方法都接受資源 ID 參數，您可以使用
+{@link android.content.res.Resources} 中的方法擷取資源。您可以透過以下方式取得 {@link
+android.content.res.Resources} 的執行個體：{@link android.content.Context#getResources
+Context.getResources()}。</p>
+
+
+<p>以下是在程式碼中存取資源的範例：</p>
+
+<pre>
+// Load a background for the current screen from a drawable resource
+{@link android.app.Activity#getWindow()}.{@link
+android.view.Window#setBackgroundDrawableResource(int)
+setBackgroundDrawableResource}(<strong>R.drawable.my_background_image</strong>) ;
+
+// Set the Activity title by getting a string from the Resources object, because
+//  this method requires a CharSequence rather than a resource ID
+{@link android.app.Activity#getWindow()}.{@link android.view.Window#setTitle(CharSequence)
+setTitle}(getResources().{@link android.content.res.Resources#getText(int)
+getText}(<strong>R.string.main_title</strong>));
+
+// Load a custom layout for the current screen
+{@link android.app.Activity#setContentView(int)
+setContentView}(<strong>R.layout.main_screen</strong>);
+
+// Set a slide in animation by getting an Animation from the Resources object
+mFlipper.{@link android.widget.ViewAnimator#setInAnimation(Animation)
+setInAnimation}(AnimationUtils.loadAnimation(this,
+        <strong>R.anim.hyperspace_in</strong>));
+
+// Set the text on a TextView object using a resource ID
+TextView msgTextView = (TextView) findViewById(<strong>R.id.msg</strong>);
+msgTextView.{@link android.widget.TextView#setText(int)
+setText}(<strong>R.string.hello_message</strong>);
+</pre>
+
+
+<p class="caution"><strong>注意：</strong>您不應手動修改 {@code
+R.java} 檔案 &mdash; 此檔案是在編譯專案時由 {@code aapt} 工具所產生。
+下次編譯時會覆寫所有變更內容。</p>
+
+
+
+<h2 id="ResourcesFromXml">存取 XML 中的資源</h2>
+
+<p>您可以使用現有資源的參照，為某些 XML 屬性和元素定義值。
+您在建立版面配置檔案時，會經常以此方式提供字串和影像讓小工具使用。
+</p>
+
+<p>例如，如果您要將 {@link android.widget.Button} 加入版面配置，應該使用按鈕文字的<a href="string-resource.html">字串資源</a>：
+</p>
+
+<pre>
+&lt;Button
+    android:layout_width="fill_parent"
+    android:layout_height="wrap_content"
+    android:text="<strong>@string/submit</strong>" /&gt;
+</pre>
+
+
+<h3>語法</h3>
+
+<p>在 XML 資源中參照資源的語法如下：</p>
+
+<pre class="classic no-pretty-print">
+&#64;[<em>&lt;package_name&gt;</em>:]<em>&lt;resource_type&gt;</em>/<em>&lt;resource_name&gt;</em>
+</pre>
+
+<ul>
+  <li>{@code &lt;package_name&gt;} 資源所在的封裝名稱 (從同一個封裝中參照資源時，不需要此名稱)
+</li>
+  <li>{@code &lt;resource_type&gt;} 是資源類型的
+{@code R} 子類別。</li>
+  <li>{@code &lt;resource_name&gt;} 可以是不含副檔名的資源檔案名稱，或是 XML 元素中的 {@code android:name} 屬性值 (簡單值)。
+
+</li>
+</ul>
+
+<p>請參閱<a href="available-resources.html">資源類型</a>，以取得關於每個資源類型及其參照方式的詳細資訊。
+</p>
+
+
+<h3>使用案例</h3>
+
+<p>有時候您必須在 XML 中使用資源，而不能使用值 (例如，將可繪項目影像套用至小工具)。不過，您也可以在 XML 中接受簡單值的任何位置使用資源。
+例如，如果您有下列資源檔案，其中內含<a href="more-resources.html#Color">色彩資源</a>和<a href="string-resource.html">字串資源</a>：
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+   &lt;color name="opaque_red">#f00&lt;/color>
+   &lt;string name="hello">Hello!&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>您可以在下列版面配置檔案中使用這些資源，以設定文字色彩和文字字串：
+</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;color/opaque_red</strong>&quot;
+    android:text=&quot;<strong>&#64;string/hello</strong>&quot; /&gt;
+</pre>
+
+<p>在此情況下，您不用在資源參照中指定封裝名稱，因為資源是來自您自己的封裝。
+如要參照系統資源，則需要使用封裝名稱。
+範例：</p>
+
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;EditText xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;fill_parent&quot;
+    android:textColor=&quot;<strong>&#64;android:color/secondary_text_dark</strong>&quot;
+    android:text=&quot;&#64;string/hello&quot; /&gt;
+</pre>
+
+<p class="note"><strong>注意：</strong>您一律都要使用字串資源，便於應用程式當地語系化。
+如需關於建立替代資源 (例如當地語系化的字串) 的詳細資訊，請參閱<a href="providing-resources.html#AlternativeResources">提供替代資源</a>。
+
+
+如需將應用程式當地語系化的詳細指南，請參閱<a href="localization.html">當地語系化</a>。
+</p>
+
+<p>您甚至可以在 XML 中使用資源以建立別名。例如：您可以用其他可繪項目資源的別名，建立可繪項目資源：
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/other_drawable" />
+</pre>
+
+<p>聽起來多此一舉，但是，當您使用替代資源時，就非常實用。深入瞭解<a href="providing-resources.html#AliasResources">建立別名資源</a>。
+</p>
+
+
+
+<h3 id="ReferencesToThemeAttributes">參照樣式屬性</h3>
+
+<p>樣式屬性資源可以讓您在目前套用的設計風格中參照屬性的值。
+參照樣式屬性可以讓您透過目前設計風格提供的標準變化自訂 UI 元素外觀，而不需要使用硬式編碼值。
+
+參照樣式屬性基本上就是「使用目前設計風格中此屬性所定義的樣式」。
+</p>
+
+<p>如要參照樣式屬性，名稱語法幾乎和一般資源格式相同，只要把小老鼠符號 ({@code @}) 換成問號 ({@code ?}) 即可，而且您可以選擇是否要使用資源類型。
+
+範例：</p>
+
+<pre class="classic">
+?[<em>&lt;package_name&gt;</em>:][<em>&lt;resource_type&gt;</em>/]<em>&lt;resource_name&gt;</em>
+</pre>
+
+<p>例如，您可以參照屬性，讓文字色彩符合系統設計風格的「主要」文字色彩，方式如下：
+</p>
+
+<pre>
+&lt;EditText id=&quot;text&quot;
+    android:layout_width=&quot;fill_parent&quot;
+    android:layout_height=&quot;wrap_content&quot;
+    android:textColor=&quot;<strong>?android:textColorSecondary</strong>&quot;
+    android:text=&quot;&#64;string/hello_world&quot; /&gt;
+</pre>
+
+<p>這裡的 {@code android:textColor} 屬性指出目前設計風格中樣式屬性的名稱。
+Android 現在會將套用至 {@code android:textColorSecondary} 樣式屬性的值，當成此小工具中 {@code android:textColor} 的值。
+因為系統資源工具知道在此環境中會有一個屬性資源，您不需要明確陳述其類型 (
+<code>?android:attr/textColorSecondary</code>)&mdash; 可以不需要寫上出 {@code attr} 類型。
+
+</p>
+
+
+
+
+<h2 id="PlatformResources">存取平台資源</h2>
+
+<p>Android 內含多種標準資源，例如樣式、設計風格以及版面配置。如要存取這些資源，則必須在參照資源時使用
+<code>android</code> 封裝名稱。
+例如，Android 在 {@link android.widget.ListAdapter} 中提供版面配置資源，您可以用於列出項目：
+</p>
+
+<pre>
+{@link android.app.ListActivity#setListAdapter(ListAdapter)
+setListAdapter}(new {@link
+android.widget.ArrayAdapter}&lt;String&gt;(this, <strong>android.R.layout.simple_list_item_1</strong>, myarray));
+</pre>
+
+<p>在此範例中，{@link android.R.layout#simple_list_item_1} 是一個版面配置資源，由平台為 {@link android.widget.ListView} 中的項目所定義。
+您可以加以使用，而不用自行建立清單項目的版面配置。
+如需詳細資訊，請參閱<a href="{@docRoot}guide/topics/ui/layout/listview.html">清單檢視</a>開發人員指南。
+</p>
+
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/resources/overview.jd b/docs/html-intl/intl/zh-tw/guide/topics/resources/overview.jd
new file mode 100644
index 0000000..68197d1
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/resources/overview.jd
@@ -0,0 +1,103 @@
+page.title=資源總覽
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本文主題</h2>
+  <ol>
+    <li><a href="providing-resources.html">提供資源</a></li>
+    <li><a href="accessing-resources.html">存取資源</a></li>
+    <li><a href="runtime-changes.html">處理執行階段變更</a></li>
+    <li><a href="localization.html">本地化</a></li>
+  </ol>
+
+  <h2>參考資料</h2>
+  <ol>
+    <li><a href="available-resources.html">資源類型</a></li>
+  </ol>
+</div>
+</div>
+
+
+<p>建議您一律將應用程式程式碼當中像是圖片和字串的資源具體化，以便個別加以維護。
+將資源具體化也可讓您提供支援特定裝置設定的替代資源，例如不同語言或螢幕大小，隨著提供不同設定的 Android 裝置日漸增加，這點也變得日益重要。
+
+
+為了提供不同設定的相容性，您必須整理專案的 {@code res/} 目錄中的資源，使用各種子目錄按類型與設定將資源分門別類。
+
+
+</p>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram1.png" height="167" alt="" />
+<p class="img-caption">
+<strong>圖 1.</strong>兩個不同的裝置，個別使用預設的版面配置 (應用程式未提供替代的版面配置)。
+</p>
+</div>
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>圖 2.</strong>兩個不同的裝置，個別使用不同螢幕大小所提供的不同版面配置。
+</p>
+</div>
+
+<p>針對任何資源類型，您都能為應用程式指定「預設」<em></em>與多項「替代」<em></em>資源。
+</p>
+<ul>
+  <li>不論裝置設定為何，或在沒有符合目前設定的替代資源時，您都應該使用預設資源。
+
+</li>
+  <li>您設計用來與特定設定搭配使用的就是替代資源。
+如要為某個設定指定一組資源，請將適當的設定限定詞附加到目錄名稱。
+</li>
+</ul>
+
+<p>例如，假設您的預設 UI 版面配置儲存在 {@code res/layout/} 目錄，您可能要指定一個不同的版面配置並儲存在
+{@code res/layout-land/} 目錄中，以在螢幕處於橫向時使用。
+
+Android 會在比對裝置目前的設定與您的資源目錄名稱後，自動套用適當的資源。
+</p>
+
+<p>圖 1 說明系統如何在沒有替代資源可用時，對兩個不同裝置套用相同的版面配置。
+圖 2 說明相同的應用程式為較大的螢幕新增替代版面配置資源的情況。
+</p>
+
+<p>下文提供完整的說明，指引您如何整理應用程式資源、指定替代資源、在您的應用程式中存取這些資源等等：
+</p>
+
+<dl>
+  <dt><strong><a href="providing-resources.html">提供資源</a></strong></dt>
+  <dd>您可在應用程式中加入哪些資源類型，儲存在哪裡以及如何針對不同的裝置設定建立替代資源。
+</dd>
+  <dt><strong><a href="accessing-resources.html">存取資源</a></strong></dt>
+  <dd>如何使用您提供的資源 (在應用程式的程式碼中或在其他 XML 資源中參考)。
+</dd>
+  <dt><strong><a href="runtime-changes.html">處理執行階段變更</a></strong></dt>
+  <dd>如何管理在 Activity 執行期間發生的設定變更。</dd>
+  <dt><strong><a href="localization.html">本地化</a></strong></dt>
+  <dd>從細節到整體的說明，指引您使用替代資源將應用程式本地化。雖然這只是替代資源的一種特殊用途，但為了觸及更多使用者，這樣做非常重要。
+
+</dd>
+  <dt><strong><a href="available-resources.html">資源類型</a></strong></dt>
+  <dd>您能提供的各種資源類型參考資料，描述其 XML 元件、屬性及語法。
+例如，此參考資料說明如何建立應用程式選單、可繪項目、動畫等資源。
+</dd>
+</dl>
+
+<!--
+<h2>Raw Assets</h2>
+
+<p>An alternative to saving files in {@code res/} is to save files in the {@code
+assets/} directory. This should only be necessary if you need direct access to original files and
+directories by name. Files saved in the {@code assets/} directory will not be given a resource
+ID, so you can't reference them through the {@code R} class or from XML resources. Instead, you can
+query data in the {@code assets/} directory like an ordinary file system, search through the
+directory and
+read raw data using {@link android.content.res.AssetManager}. For example, this can be more useful
+when dealing with textures for a game. However, if you only need to read raw data from a file
+(such as a video or audio file), then you should save files into the {@code res/raw/} directory and
+then read a stream of bytes using {@link android.content.res.Resources#openRawResource(int)}. This
+is uncommon, but if you need direct access to original files in {@code assets/}, refer to the {@link
+android.content.res.AssetManager} documentation.</p>
+-->
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/resources/providing-resources.jd b/docs/html-intl/intl/zh-tw/guide/topics/resources/providing-resources.jd
new file mode 100644
index 0000000..0938dc0
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/resources/providing-resources.jd
@@ -0,0 +1,1094 @@
+page.title=提供資源
+parent.title=應用程式資源
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>快速檢視</h2>
+  <ul>
+    <li>不同類型的資源屬於 {@code res/} 中不同的子目錄</li>
+    <li>替代資源提供特定設定資源檔案</li>
+    <li>始終要包含預設資源，如此應用程式才不會依賴特定裝置設定
+</li>
+  </ul>
+  <h2>本文件內容</h2>
+  <ol>
+    <li><a href="#ResourceTypes">分組資源類型</a></li>
+    <li><a href="#AlternativeResources">提供替代資源</a>
+      <ol>
+        <li><a href="#QualifierRules">限定詞名稱規則</a></li>
+        <li><a href="#AliasResources">建立別名資源</a></li>
+      </ol>
+    </li>
+    <li><a href="#Compatibility">使用資源提供最佳的裝置相容性</a></li>
+    <li><a href="#BestMatch">Android 如何尋找最相符的資源</a></li>
+  </ol>
+
+  <h2>另請參閱</h2>
+  <ol>
+    <li><a href="accessing-resources.html">存取資源</a></li>
+    <li><a href="available-resources.html">資源類型</a></li>
+    <li><a href="{@docRoot}guide/practices/screens_support.html">支援多個螢幕</a>
+</li>
+  </ol>
+</div>
+</div>
+
+<p>您應該一律將應用程式資源具體化，例如影像和程式碼字串，以便單獨維護它們。
+同時，您還應該將替代資源分組到特殊命名的資源目錄中，為特定裝置設定提供替代資源。
+Android 會在執行階段根據目前的設定使用適當的資源。
+例如，您可能會想根據螢幕大小提供不同的 UI 版面配置，或者根據語言設定提供不同的字串。
+
+</p>
+
+<p>具體化您的應用程式資源後，可以使用在專案 {@code R} 類別中產生的資源 ID 來存取它們。
+在應用程式使用資源的方法在<a href="accessing-resources.html">存取資源</a>中有相關討論。
+
+本文件說明如何在 Android 專案分組您的資源，並為特定裝置設定提供替代資源。
+</p>
+
+
+<h2 id="ResourceTypes">分組資源類型</h2>
+
+<p>您應該將每個資源類型放在專案
+{@code res/} 目錄的特定子目錄中。例如，下列為簡單專案的檔案階層：</p>
+
+<pre class="classic no-pretty-print">
+MyProject/
+    src/  <span style="color:black">
+        MyActivity.java  </span>
+    res/
+        drawable/  <span style="color:black">
+            graphic.png  </span>
+        layout/  <span style="color:black">
+            main.xml
+            info.xml</span>
+        mipmap/  <span style="color:black">
+            icon.png </span>
+        values/  <span style="color:black">
+            strings.xml  </span>
+</pre>
+
+<p>如您在此範例所見，{@code res/} 目錄包含所有資源 (在子目錄中)：一個影像資源、兩個版面配置資源、啟動器圖示的 {@code mipmap/} 目錄，以及字串資源檔案。
+
+資源目錄名稱非常重要，在表 1 有相關說明。
+</p>
+
+<p class="note"><strong>注意：</strong>如需有關使用 mipmap 資料夾的詳細資訊，請參閱<a href="{@docRoot}tools/projects/index.html#mipmap">管理專案總覽</a>。
+</p>
+
+<p class="table-caption" id="table1"><strong>表 1.</strong>專案 {@code res/} 目錄內部支援資源目錄。
+</p>
+
+<table>
+  <tr>
+    <th scope="col">目錄</th>
+    <th scope="col">資源類型</th>
+  </tr>
+
+  <tr>
+    <td><code>animator/</code></td>
+    <td>定義<a href="{@docRoot}guide/topics/graphics/prop-animation.html">屬性動畫</a>的 XML 檔案。
+</td>
+  </tr>
+
+  <tr>
+    <td><code>anim/</code></td>
+    <td>定義 <a href="{@docRoot}guide/topics/graphics/view-animation.html#tween-animation">tween 動畫</a>的 XML 檔案。
+(屬性動畫也能儲存在這個目錄中，但建議將屬性動畫放在{@code animator/} 目錄中，以區分這兩個類型。)
+
+</td>
+  </tr>
+
+  <tr>
+    <td><code>color/</code></td>
+    <td>定義色彩狀態清單的 XML 檔案。請參閱<a href="color-list-resource.html">色彩狀態清單資源</a>
+</td>
+  </tr>
+
+  <tr>
+    <td><code>drawable/</code></td>
+
+    <td><p>編譯成下列可繪項目資源子類型的點陣圖檔案 ({@code .png}、{@code .9.png}、{@code .jpg}、{@code .gif}) 或 XML 檔案：
+</p>
+      <ul>
+        <li>點陣圖檔案</li>
+        <li>九宮格影像 (可重新調整大小的點陣圖)</li>
+        <li>狀態清單</li>
+        <li>形狀</li>
+        <li>動畫可繪項目</li>
+        <li>其他可繪項目</li>
+      </ul>
+      <p>請參閱<a href="drawable-resource.html">可繪項目資源</a>。</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>mipmap/</code></td>
+    <td>適用於不同啟動器圖示密度的可繪項目檔案。如需有關使用 {@code mipmap/} 資料夾管理啟動器圖示的詳細資訊，請參閱<a href="{@docRoot}tools/project/index.html#mipmap">管理專案總覽</a>。
+
+</td>
+  </tr>
+
+  <tr>
+    <td><code>layout/</code></td>
+    <td>定義使用者介面版面配置的 XML 檔案。
+        請參閱<a href="layout-resource.html">版面配置資源</a>。</td>
+  </tr>
+
+  <tr>
+    <td><code>menu/</code></td>
+    <td>定義應用程式選單 (例如，選項選單、操作選單或子選單) 的 XML 檔案。
+請參閱<a href="menu-resource.html">選單資源</a>。</td>
+  </tr>
+
+  <tr>
+    <td><code>raw/</code></td>
+    <td><p>以原始格式儲存的任意檔案。如要使用原始
+{@link java.io.InputStream} 開啟這些資源，使用資源 ID 呼叫 {@link android.content.res.Resources#openRawResource(int)
+Resources.openRawResource()}，資源 ID 為 {@code R.raw.<em>filename</em>}。</p>
+      <p>然而，如果您需要存取原始檔案名稱和檔案階層，可以考慮將一些資源儲存在 {@code
+assets/} 目錄中 (而不是 {@code res/raw/})。
+位於 {@code assets/} 的檔案不會有資源 ID，因此您只能使用 {@link android.content.res.AssetManager} 讀取它們。
+</p></td>
+  </tr>
+
+  <tr>
+    <td><code>values/</code></td>
+    <td><p>包含簡單值 (例如，字串、整數和色彩) 的 XML 檔案。</p>
+      <p>位於其他 {@code res/} 子目錄的 XML 資源檔案會根據 XML 檔案名稱定義單一資源，而位於 {@code values/} 目錄的檔案則會描述多個資源。
+針對這個目錄中的檔案，{@code &lt;resources&gt;} 元素的每個子項都會定義單一資源。
+
+例如，{@code &lt;string&gt;} 元素建立一個
+{@code R.string} 資源，{@code &lt;color&gt;} 元素建立一個 {@code R.color}資源。
+</p>
+      <p>由於每個資源都是以自己的 XML 元素定義，您可以依照自己的喜好命名檔案，並將不同的資源類型放在一個檔案中。
+然而，為了更加清楚，您可以將唯一資源類型放在不同的檔案中。
+例如，針對您可以在此目錄建立的資源，這裡提供一些檔案名稱慣例：
+</p>
+      <ul>
+        <li>arrays.xml 適用於資源陣列 (<a href="more-resources.html#TypedArray">具類型的陣列</a>)。</li>
+        <li>colors.xml 適用於<a href="more-resources.html#Color">色彩值</a></li>
+        <li>dimens.xml 適用於<a href="more-resources.html#Dimension">維度值</a>。</li>
+        <li>strings.xml 適用於<a href="string-resource.html">字串值</a>。
+</li>
+        <li>styles.xml 適用於<a href="style-resource.html">樣式</a>。</li>
+      </ul>
+      <p>請參閱<a href="string-resource.html">字串資源</a>、
+<a href="style-resource.html">樣式資源</a>和
+<a href="more-resources.html">更多資源類型</a>。</p>
+    </td>
+  </tr>
+
+  <tr>
+    <td><code>xml/</code></td>
+    <td>可以在執行階段讀取的任意 XML 檔案，方法是呼叫 {@link
+android.content.res.Resources#getXml(int) Resources.getXML()}。各種 XML 設定檔案都必須儲存在這裡，例如<a href="{@docRoot}guide/topics/search/searchable-config.html">可搜尋項目設定</a>。
+
+<!-- or preferences configuration. --></td>
+  </tr>
+</table>
+
+<p class="caution"><strong>注意：</strong>千萬不要將資源檔案直接儲存在
+{@code res/} 目錄內 &mdash; 會發生編譯錯誤。</p>
+
+<p>如需特定資源類型的詳細資訊，請參閱<a href="available-resources.html">資源類型</a>文件。</p>
+
+<p>您儲存在表 1 定義之子目錄的資源是您的「預設」資源。
+也就是說，這些資源會定義您應用程式的預設設計和內容。
+然而，不同類型的 Android 平台裝置可能需要不同類型的資源。
+例如，如果裝置的螢幕大於一般螢幕，則您需要提供不同的版面配置資源，以充分利用額外的螢幕空間。
+或者，如果裝置有不同的語言設定，則您需要提供不同的字串資源，以翻譯您使用者介面中的文字。
+
+如要為不同裝置設定提供這些不同的資源，除了預設資源之外，您還需要提供替代資源。
+
+</p>
+
+
+<h2 id="AlternativeResources">提供替代資源</h2>
+
+
+<div class="figure" style="width:429px">
+<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" />
+<p class="img-caption">
+<strong>圖 1.</strong>兩個不同的裝置，個別使用不同的版面配置資源。</p>
+</div>
+
+<p>幾乎每個應用程式都應提供替代資源以支援特定裝置設定。
+例如，您應該為不同的螢幕密度包含替代可繪項目資源，並為不同語言提供替代字串資源。
+Android 會在執行階段偵測目前的裝置設定，並為您的應用程式載入適當的資源。
+
+</p>
+
+<p>如要為一組資源指定特定設定的替代項目：</p>
+<ol>
+  <li>在 {@code res/} 建立一個新的目錄，命名的格式為 {@code
+<em>&lt;resources_name&gt;</em>-<em>&lt;config_qualifier&gt;</em>}。
+    <ul>
+      <li><em>{@code &lt;resources_name&gt;}</em> 是對應預設資源 (定義在表 1) 的目錄名稱。
+</li>
+      <li><em>{@code &lt;qualifier&gt;}</em> 是用來指定要使用這些資源之個別設定的名稱 (定義在表 2)。
+</li>
+    </ul>
+    <p>您可以附加一個以上的 <em>{@code &lt;qualifier&gt;}</em>。使用破折號分隔每個項目。
+</p>
+    <p class="caution"><strong>注意：</strong>附加多個限定詞時，您必須以表 2 列出的相同順序放置它們。
+如果限定詞的順序錯誤，將會忽略該資源。
+</p>
+  </li>
+  <li>將各個替代資源儲存在這個新的目錄。資源檔案的名稱必須和預設資源檔案的名稱完全相同。
+</li>
+</ol>
+
+<p>例如，這裡有些預設和替代資源：</p>
+
+<pre class="classic no-pretty-print">
+res/
+    drawable/   <span style="color:black">
+        icon.png
+        background.png    </span>
+    drawable-hdpi/  <span style="color:black">
+        icon.png
+        background.png  </span>
+</pre>
+
+<p>{@code hdpi} 限定詞代表該目錄的資源適用於高密度螢幕裝置。
+這些可繪項目目錄中的影像大小已調整為符合特定螢幕密度，但是檔案名稱完全相同。
+
+如此一來，您用來參照 {@code icon.png} 或 {@code
+background.png} 影像的資源 ID 一律都會相同，但 Android 會透過比對裝置設定資訊和資源目錄名稱中的限定詞，選擇最符合目前裝置的每個資源版本。
+
+</p>
+
+<p>Android 支援多種設定限定詞，而且您可以將多個限定詞加到一個目錄名稱，並用破折號分隔每個限定詞。
+表 2 依優先等級列出有效的設定限定詞 &mdash; 如果您針對一個資源目錄使用多個限定詞，您必須依表格中列出的順序將它們新增到目錄名稱。
+
+
+</p>
+
+
+<p class="table-caption" id="table2"><strong>表 2.</strong>設定限定詞名稱。
+</p>
+<table>
+    <tr>
+        <th>設定</th>
+        <th>限定詞值</th>
+        <th>描述</th>
+    </tr>
+    <tr id="MccQualifier">
+      <td>MCC 和 MNC</td>
+      <td>範例：<br/>
+        <code>mcc310</code><br/>
+        <code><nobr>mcc310-mnc004</nobr></code><br/>
+        <code>mcc208-mnc00</code><br/>
+        等等。
+      </td>
+      <td>
+        <p>行動裝置國家/地區代碼 (MCC) 後面會選擇性加上裝置 SIM 卡上的行動裝置網路代碼 (MNC)
+。例如，<code>mcc310</code> 代表美國地區的所有行動通訊業者、
+        <code>mcc310-mnc004</code> 代表美國地區的 Verizon，以及 <code>mcc208-mnc00</code> 代表法國地區的 Orange。
+</p>
+        <p>如果裝置使用無線電連線 (GSM 手機)，MCC 和 MNC 值都會來自SIM 卡。
+</p>
+        <p>您也可以單獨使用 MCC (例如，在應用程式包含國家特定法律資源)。
+如果您只需根據語言進行指定，則改為使用「語言和區域」<em></em>限定詞 (稍後將會討論)。
+如果您決定使用 MCC 和 MNC 限定詞，應謹慎使用，並測試是否可按預期運作。
+</p>
+        <p>另請查看設定欄位 {@link
+android.content.res.Configuration#mcc} 和 {@link
+android.content.res.Configuration#mnc}，分別提供目前的行動裝置國家代碼和行動裝置網路代碼。
+</p>
+      </td>
+    </tr>
+    <tr id="LocaleQualifier">
+      <td>語言和區域</td>
+      <td>範例：<br/>
+        <code>en</code><br/>
+        <code>fr</code><br/>
+        <code>en-rUS</code><br/>
+        <code>fr-rFR</code><br/>
+        <code>fr-rCA</code><br/>
+        等等。
+      </td>
+      <td><p>語言是以兩個字母的 <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php">ISO 639-1</a> 語言代碼定義，後面可以視需要加上兩個字母的 <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html">ISO 3166-1-alpha-2</a> 區域代碼 (前面加上小寫 "{@code r}")。
+
+
+
+        </p><p>
+        代碼「沒有」<em></em>大小寫之分；{@code r} 首碼是用來區分區域部分。
+
+        您不能只指定區域。</p>
+        <p>如果使用者在系統設定變更其語言，此設定就會在應用程式生命週期內發生變更。
+請參閱<a href="runtime-changes.html">處理執行階段變更</a>，以瞭解這會如何在執行階段期間影響您的應用程式。
+</p>
+        <p>請參閱<a href="localization.html">當地語系化</a>，以取得將您的應用程式當地語系化成其他語言的詳細指南。
+</p>
+        <p>另請查看 {@link android.content.res.Configuration#locale} 設定欄位，這會提供目前的地區設定。
+</p>
+      </td>
+    </tr>
+    <tr id="LayoutDirectionQualifier">
+      <td>版面配置方向</td>
+      <td><code>ldrtl</code><br/>
+        <code>ldltr</code><br/>
+      </td>
+      <td><p>應用程式的版面配置方向。{@code ldrtl} 代表「版面配置方向右至左」。
+      {@code ldltr} 代表「版面配置方向左至右」，而且是預設隱含值。
+      </p>
+      <p>這適用於任何資源，例如版面配置、可繪項目或值。
+      </p>
+      <p>例如，如果您想針對阿拉伯語言提供一些特定版面配置，以及為任何其他「右至左」語言 (像是波斯文或希伯來文) 提供幾個一般版面配置，則程式碼如下：
+
+      </p>
+<pre class="classic no-pretty-print">
+res/
+    layout/   <span style="color:black">
+        main.xml  </span>(Default layout)
+    layout-ar/  <span style="color:black">
+        main.xml  </span>(Specific layout for Arabic)
+    layout-ldrtl/  <span style="color:black">
+        main.xml  </span>(Any "right-to-left" language, except
+                  for Arabic, because the "ar" language qualifier
+                  has a higher precedence.)
+</pre>
+        <p class="note"><strong>注意：</strong>如要為您的應用程式啟用右至左版面配置功能，您必須將 <a href="{@docRoot}guide/topics/manifest/application-element.html#supportsrtl">{@code
+        supportsRtl}</a> 設成 {@code "true"}，以及將 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> 設成 17 或更高。
+</p>
+        <p>已新增至 API 級別 17。<em></em></p>
+      </td>
+    </tr>
+    <tr id="SmallestScreenWidthQualifier">
+      <td>smallestWidth</td>
+      <td><code>sw&lt;N&gt;dp</code><br/><br/>
+        範例：<br/>
+        <code>sw320dp</code><br/>
+        <code>sw600dp</code><br/>
+        <code>sw720dp</code><br/>
+        等等。
+      </td>
+      <td>
+        <p>螢幕的基本大小，也就是可用
+螢幕區域的最短維度。具體而言，裝置的 smallestWidth 是螢幕最短的可用高度和寬度 (您也可以把它當成螢幕的「最小寬度」)。
+您可以使用此限定詞確保無論螢幕目前的方向為何，您的應用程式至少有 {@code &lt;N&gt;} dps 的寬度可供 UI 使用。
+
+</p>
+        <p>例如，如果您的版面配置需要隨時保持至少 600 dp 的最小螢幕區域維度，則您可以使用此限定詞建立版面配置資源 {@code
+res/layout-sw600dp/}。
+系統只會在可用螢幕的最小維度至少是 600dp 時使用這些資源，無論 600dp 的長度對使用者而言是高度或寬度都一樣。
+
+smallestWidth 是螢幕的固定螢幕大小特性；<strong>裝置的 smallestWidth 不會隨著螢幕方向的改變而變更。</strong>
+</p>
+        <p>裝置的 smallestWidth 會將螢幕裝飾和系統 UI 列入計算。例如，如果裝置的螢幕上有一些永久的 UI 元素，且這些元素佔用了 smallestWidth 座標軸上的空間，系統會宣告 smallestWidth 小於實際螢幕大小，因為這些是 UI 無法使用的螢幕像素。
+
+
+因此，您使用的值應該是版面配置所需的實際最小維度<em></em> (這個值通常是您版面配置支援的「最小寬度」，無論螢幕目前的方向為何都一樣)。
+
+</p>
+        <p>您可以針對一般螢幕大小在這裡使用的一些值：</p>
+        <ul>
+          <li>320 適用於採用以下螢幕設定的裝置：
+            <ul>
+              <li>240x320 ldpi (QVGA 手機)</li>
+              <li>320x480 mdpi (手機)</li>
+              <li>480x800 hdpi (高密度手機)</li>
+            </ul>
+          </li>
+          <li>480 適用於 480x800 mdpi 這類螢幕 (平板電腦/手機)。</li>
+          <li>600 適用於 600x1024 mdpi 這類螢幕 (7" 平板電腦)。</li>
+          <li>720 適用於 720x1280 mdpi 這類螢幕 (10" 平板電腦)。</li>
+        </ul>
+        <p>當您的應用程式為 smallestWidth 限定詞提供多個值不相同的資源目錄時，系統會使用最接近 (不超過)裝置 smallestWidth 的值。
+
+ </p>
+        <p>已新增至 API 級別 13。<em></em></p>
+        <p>另請查看 <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html#requiresSmallest">{@code
+android:requiresSmallestWidthDp}</a> 屬性，該屬性會宣告與您應用程式相容的最小 smallestWidth，以及 {@link
+android.content.res.Configuration#smallestScreenWidthDp} 設定欄位，此欄位保留裝置的 smallestWidth 值。
+
+</p>
+        <p>如需設計不同螢幕及使用此限定詞的詳細資訊，請參閱<a href="{@docRoot}guide/practices/screens_support.html">支援多個螢幕</a>開發人員指南。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenWidthQualifier">
+      <td>可用寬度</td>
+      <td><code>w&lt;N&gt;dp</code><br/><br/>
+        範例：<br/>
+        <code>w720dp</code><br/>
+        <code>w1024dp</code><br/>
+        等等。
+      </td>
+      <td>
+        <p>指定資源應使用的最小可用螢幕寬度，以 {@code dp} 單位計算 &mdash; 由 <code>&lt;N&gt;</code> 值定義。
+這個設定值會隨著螢幕方向變更為橫向或直向而改變，以符合目前實際的寬度。
+
+</p>
+        <p>當您的應用程式為這個設定提供多個值不相同的資源目錄時，系統會使用最接近 (不超過) 裝置目前螢幕寬度的值。
+
+這個值會將螢幕裝飾列入計算，因此如果裝置顯示的左邊緣或右邊緣有一些永久的 UI 元素，則會使用比實際螢幕大小更小的寬度值，將這些 UI 元素列入計算並減少應用程式的可用空間。
+
+
+
+</p>
+        <p>已新增至 API 級別 13。<em></em></p>
+        <p>另請查看 {@link android.content.res.Configuration#screenWidthDp} 設定欄位，該欄位保留目前的螢幕寬度。
+</p>
+        <p>如需設計不同螢幕及使用此限定詞的詳細資訊，請參閱<a href="{@docRoot}guide/practices/screens_support.html">支援多個螢幕</a>開發人員指南。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenHeightQualifier">
+      <td>可用高度</td>
+      <td><code>h&lt;N&gt;dp</code><br/><br/>
+        範例：<br/>
+        <code>h720dp</code><br/>
+        <code>h1024dp</code><br/>
+        等等。
+      </td>
+      <td>
+        <p>指定資源應使用的最小可用螢幕高度，以「dp」單位計算 &mdash; 由 <code>&lt;N&gt;</code> 值定義。
+這個設定值會隨著螢幕方向變更為橫向或直向而改變，以符合目前實際的高度。
+
+</p>
+        <p>當您的應用程式為這個設定提供多個值不相同的資源目錄時，系統會使用最接近 (不超過) 裝置目前螢幕高度的值。
+
+這個值會將螢幕裝飾列入計算，因此如果裝置顯示的上邊緣或下邊緣有一些永久的 UI 元素，則會使用比實際螢幕大小更小的高度值，將這些 UI 元素列入計算並減少應用程式的可用空間。
+
+
+
+不固定的螢幕裝飾 (例如，可在全螢幕時隱藏的手機狀態列) 在這裡不<em></em>列入計算，標題列或動作列這類視窗裝飾也不會列入計算，因此應用程式必須做好準備因應比其指定還小的空間。
+
+
+
+
+        <p>已新增至 API 級別 13。<em></em></p>
+        <p>另請查看 {@link android.content.res.Configuration#screenHeightDp} 設定欄位，該欄位保留目前的螢幕寬度。
+</p>
+        <p>如需設計不同螢幕及使用此限定詞的詳細資訊，請參閱<a href="{@docRoot}guide/practices/screens_support.html">支援多個螢幕</a>開發人員指南。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenSizeQualifier">
+      <td>螢幕大小</td>
+      <td>
+        <code>small</code><br/>
+        <code>normal</code><br/>
+        <code>large</code><br/>
+        <code>xlarge</code>
+      </td>
+      <td>
+        <ul class="nolist">
+        <li>{@code small}：與低密度 QVGA 螢幕大小相似的螢幕
+。小螢幕的最低版面配置大小約 320x426 dp 單位。
+範例包含 QVGA 低密度和 VGA 高密度。
+</li>
+        <li>{@code normal}：與中密度 HVGA 螢幕大小相似的螢幕。
+一般螢幕的最低版面配置大小約 320x470 dp 單位。
+這類螢幕的範例有 WQVGA 低密度、HVGA 中密度、WVGA高密度。
+
+</li>
+        <li>{@code large}：與中密度 VGA 螢幕大小相似的螢幕。
+
+        大螢幕的最低版面配置大小約 480x640 dp 單位。
+        範例包含 VGA 和 WVGA 中密度螢幕。</li>
+        <li>{@code xlarge}：比傳統中密度 HVGA 螢幕大很多的螢幕。
+超大螢幕的最低版面配置大小約 720x960 dp 單位。
+在大多數情況下，使用超大螢幕的裝置由於尺寸過大無法放入口袋，因此最有可能是平板電腦樣式的裝置。
+
+已新增至 API 級別 9。<em></em></li>
+        </ul>
+        <p class="note"><strong>注意：</strong>使用大小限定詞不代表資源僅適用於該大小的螢幕。<em></em>
+如果您提供的替代資源沒有更符合目前裝置設定的限定詞，系統將使用<a href="#BestMatch">最符合</a>的資源。
+
+</p>
+        <p class="caution"><strong>注意：</strong>如果所有資源都使用比目前螢幕更大<em></em>的大小限定詞，系統將不會<strong></strong>使用這些資源，您的應用程式將會在執行階段當機 (例如，如果所有版面配置資源都標記為 {@code
+xlarge} 限定詞，但裝置為一般大小螢幕)。
+
+</p>
+        <p>已新增至 API 級別 4。<em></em></p>
+        
+        <p>請參閱<a href="{@docRoot}guide/practices/screens_support.html">支援多個螢幕</a>以取得詳細資訊。
+</p>
+        <p>另請查看 {@link android.content.res.Configuration#screenLayout} 設定欄位，該欄位會指出螢幕為小螢幕、一般螢幕或大螢幕。
+
+</p>
+      </td>
+    </tr>
+    <tr id="ScreenAspectQualifier">
+      <td>螢幕外觀</td>
+      <td>
+        <code>long</code><br/>
+        <code>notlong</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code long}：長螢幕，例如 WQVGA、WVGA、FWVGA</li>
+          <li>{@code notlong}：非長螢幕，例如 QVGA、HVGA、VGA</li>
+        </ul>
+        <p>已新增至 API 級別 4。<em></em></p>
+        <p>這純粹是依照螢幕的外觀比例來判定 (「長」螢幕是較寬的螢幕)。這與螢幕方向無關。
+</p>
+        <p>另請查看 {@link android.content.res.Configuration#screenLayout} 設定欄位，該欄位會指出螢幕是否為長螢幕。
+</p>
+      </td>
+    </tr>
+    <tr id="OrientationQualifier">
+      <td>螢幕方向</td>
+      <td>
+        <code>port</code><br/>
+        <code>land</code>  <!-- <br/>
+        <code>square</code>  -->
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code port}：裝置的方向為直向 (垂直)</li>
+          <li>{@code land}：裝置的方向為橫向 (水平)</li>
+          <!-- Square mode is currently not used. -->
+        </ul>
+        <p>如果使用者旋轉螢幕，此設定就會在應用程式生命週期內發生變更。
+請參閱<a href="runtime-changes.html">處理執行階段變更</a>，以瞭解這會如何在執行階段期間影響您的應用程式。
+</p>
+        <p>另請查看 {@link android.content.res.Configuration#orientation} 設定欄位，該欄位會指出目前的裝置方向。
+</p>
+      </td>
+    </tr>
+    <tr id="UiModeQualifier">
+      <td>UI 模式</td>
+      <td>
+        <code>car</code><br/>
+        <code>desk</code><br/>
+        <code>television</code><br/>
+        <code>appliance</code>
+        <code>watch</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code car}：在車用座架顯示的裝置</li>
+          <li>{@code desk}：在桌面座架顯示的裝置</li>
+          <li>{@code television}：在電視上顯示的裝置，提供在離使用者很遠的大螢幕上顯示 UI 的「十英呎」體驗，主要透過 DPAD 或其他非指標互動指定方向。
+
+
+</li>
+          <li>{@code appliance}：做為設備使用的裝置，沒有顯示器
+</li>
+          <li>{@code watch}：裝置有佩戴在手腕上的顯示器</li>
+        </ul>
+        <p>已新增至 API 級別 8、電視已新增至 API 13、手錶已新增至 API 20。<em></em></p>
+        <p>如要瞭解從座架插入或移除裝置時，您的應用程式可以如何回應的相關資訊，請參閱<a href="{@docRoot}training/monitoring-device-state/docking-monitoring.html">判斷和監控座架狀態和類型</a>。
+
+</p>
+        <p>如果使用者將裝置放入座架，此設定就會在應用程式生命週期內發生變更。
+您可以使用 {@link
+android.app.UiModeManager} 啟用或停用這些模式。請參閱<a href="runtime-changes.html">處理執行階段變更</a>，以瞭解這會如何在執行階段期間影響您的應用程式。
+</p>
+      </td>
+    </tr>
+    <tr id="NightQualifier">
+      <td>夜間模式</td>
+      <td>
+        <code>night</code><br/>
+        <code>notnight</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code night}：夜間時間</li>
+          <li>{@code notnight}：日間模式</li>
+        </ul>
+        <p>已新增至 API 級別 8。<em></em></p>
+        <p>如果從自動模式 (預設) 的夜間模式離開，在這種情況下模式會隨著日間時間變更，此設定就會在應用程式生命週期內發生變更。
+您可以使用 {@link android.app.UiModeManager} 啟用或停用這個模式。
+請參閱<a href="runtime-changes.html">處理執行階段變更</a>，以瞭解這會如何在執行階段期間影響您的應用程式。
+</p>
+      </td>
+    </tr>
+    <tr id="DensityQualifier">
+      <td>螢幕像素密度 (dpi)</td>
+      <td>
+        <code>ldpi</code><br/>
+        <code>mdpi</code><br/>
+        <code>hdpi</code><br/>
+        <code>xhdpi</code><br/>
+        <code>xxhdpi</code><br/>
+        <code>xxxhdpi</code><br/>
+        <code>nodpi</code><br/>
+        <code>tvdpi</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code ldpi}：低密度螢幕；約 120dpi。</li>
+          <li>{@code mdpi}：中密度 (在傳統 HVGA) 螢幕；約 160dpi。
+</li>
+          <li>{@code hdpi}：高密度螢幕；約 240dpi。</li>
+          <li>{@code xhdpi}：特高密度螢幕；約 320dpi。已新增至 API 級別 8。
+<em></em></li>
+          <li>{@code xxhdpi}：特特高密度螢幕；約 480dpi。已新增至 API 級別 16。
+<em></em></li>
+          <li>{@code xxxhdpi}：特特特高密度使用 (僅限啟動器圖示，請參閱支援多個螢幕中的<a href="{@docRoot}guide/practices/screens_support.html#xxxhdpi-note">注意</a><em></em>)；約 640dpi。
+
+已新增至 API 級別 18。
+<em></em></li>
+          <li>{@code nodpi}：如果您不想縮放點陣圖資源以符合裝置密度，可使用此設定。
+</li>
+          <li>{@code tvdpi}：介於 mdpi 和 hdpi 的螢幕；約 213dpi。這不屬於「主要」密度群組。
+這大部分用於電視，大多數應用程式應該不需要用到 &mdash;mdpi 和 hdpi 資源對大多數應用程式已經足夠，系統將視需要縮放它們。
+
+這個限定詞由 API 級別 13 導入。</li>
+        </ul>
+        <p>六個主要密度之間有一個 3:4:6:8:12:16 縮放比例 (忽略tvdpi 密度)。
+因此，ldpi 的 9x9 點陣圖等同於 mdpi 的 12x12 點陣圖、hdpi 的 18x18 點陣圖、xhdpi 的 24x24 點陣圖，以此類推。
+</p>
+        <p>如果您覺得影像資源在電視或其他特定裝置上看起來不夠美觀，而想嘗試 tvdpi 資源，比例因數為 1.33*mdpi。
+例如，mdpi 螢幕上的 100px x 100px 影像在 tvdpi 螢幕應該是 133px x 133px。
+</p>
+        <p class="note"><strong>注意：</strong>使用密度限定詞不代表資源僅適用於該密度的螢幕。
+<em></em>如果您提供的替代資源沒有更符合目前裝置設定的限定詞，系統將使用<a href="#BestMatch">最符合</a>的資源。
+
+</p>
+        <p>請參閱<a href="{@docRoot}guide/practices/screens_support.html">支援多個螢幕</a>，深入瞭解如何處理不同的螢幕密度，以及 Android會如何縮放點陣圖以符合目前的密度。
+
+</p>
+       </td>
+    </tr>
+    <tr id="TouchscreenQualifier">
+      <td>觸控螢幕類型</td>
+      <td>
+        <code>notouch</code><br/>
+        <code>finger</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code notouch}：沒有觸控螢幕的裝置。</li>
+          <li>{@code finger}：裝置含有觸控螢幕，其目的是透過使用者的手指進行方向互動。
+</li>
+        </ul>
+        <p>另請查看 {@link android.content.res.Configuration#touchscreen} 設定欄位，該欄位會指出裝置的觸控螢幕類型。
+</p>
+      </td>
+    </tr>
+    <tr id="KeyboardAvailQualifier">
+      <td>鍵盤可用性</td>
+      <td>
+        <code>keysexposed</code><br/>
+        <code>keyshidden</code><br/>
+        <code>keyssoft</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code keysexposed}：裝置包含鍵盤。如果裝置啟用軟體鍵盤 (可能性很高)，即使沒有將硬體鍵盤展示給使用者或甚至裝置沒有硬體鍵盤時，都可使用此設定。
+
+<em></em>如果沒有提供或已停用軟體鍵盤，則只能在展示硬體鍵盤時使用此設定。
+
+</li>
+          <li>{@code keyshidden}：裝置有可用的硬體鍵盤但已隱藏起來，且裝置沒有啟用軟體鍵盤。
+<em></em><em></em></li>
+          <li>{@code keyssoft}：裝置已啟用軟體鍵盤，無論是可見或不可見。
+</li>
+        </ul>
+        <p>如果您提供 <code>keysexposed</code> 資源但沒有 <code>keyssoft</code>資源，只要系統已啟用軟體鍵盤，無論鍵盤是否可見，系統都會使用 <code>keysexposed</code> 資源。
+
+</p>
+        <p>如果使用者開啟硬體鍵盤，此設定就會在應用程式生命週期內發生變更。
+請參閱<a href="runtime-changes.html">處理執行階段變更</a>，以瞭解這會如何在執行階段期間影響您的應用程式。
+</p>
+        <p>另請查看設定欄位 {@link
+android.content.res.Configuration#hardKeyboardHidden} 和 {@link
+android.content.res.Configuration#keyboardHidden}，這兩個欄位會分別指出硬體鍵盤的可見度，以及任何其他類型鍵盤 (包含軟體) 的可見度。
+</p>
+      </td>
+    </tr>
+    <tr id="ImeQualifier">
+      <td>主要文字輸入方式</td>
+      <td>
+        <code>nokeys</code><br/>
+        <code>qwerty</code><br/>
+        <code>12key</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nokeys}：裝置沒有硬體按鍵可輸入文字。</li>
+          <li>{@code qwerty}：裝置有硬體 qwerty 軟體鍵盤，無論使用者是否可見。
+
+</li>
+          <li>{@code 12key}：裝置有硬體 12 鍵鍵盤，無論使用者是否可見。
+</li>
+        </ul>
+        <p>另請查看 {@link android.content.res.Configuration#keyboard} 設定欄位，該欄位會指出可用的主要文字輸入方式。
+</p>
+      </td>
+    </tr>
+    <tr id="NavAvailQualifier">
+      <td>導覽鍵可用性</td>
+      <td>
+        <code>navexposed</code><br/>
+        <code>navhidden</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code navexposed}：使用者可使用導覽鍵。</li>
+          <li>{@code navhidden}：不提供導覽鍵 (例如，位於密合蓋子的後方)。
+</li>
+        </ul>
+        <p>如果使用者顯示導覽鍵，此設定就會在應用程式生命週期內發生變更。
+請參閱<a href="runtime-changes.html">處理執行階段變更</a>，以瞭解這會如何在執行階段期間影響您的應用程式。
+</p>
+        <p>另請查看 {@link android.content.res.Configuration#navigationHidden} 設定欄位，該欄位會指出導覽鍵是否隱藏起來。
+</p>
+      </td>
+    </tr>
+    <tr id="NavigationQualifier">
+      <td>主要的非觸控導覽方式</td>
+      <td>
+        <code>nonav</code><br/>
+        <code>dpad</code><br/>
+        <code>trackball</code><br/>
+        <code>wheel</code>
+      </td>
+      <td>
+        <ul class="nolist">
+          <li>{@code nonav}：裝置除了使用觸控螢幕之外沒有其他導覽設施。
+</li>
+          <li>{@code dpad}：裝置有導覽用的方向鍵 (d-pad)。</li>
+          <li>{@code trackball}：裝置有導覽用的軌跡球。</li>
+          <li>{@code wheel}：裝置有導覽用的方向輪 (不常見)。</li>
+        </ul>
+        <p>另請查看 {@link android.content.res.Configuration#navigation} 設定欄位，該欄位會指出可用的導覽方式類型。
+</p>
+      </td>
+    </tr>
+<!-- DEPRECATED
+    <tr>
+      <td>Screen dimensions</td>
+      <td>Examples:<br/>
+        <code>320x240</code><br/>
+        <code>640x480</code><br/>
+        etc.
+      </td>
+      <td>
+        <p>The larger dimension must be specified first. <strong>This configuration is deprecated
+and should not be used</strong>. Instead use "screen size," "wider/taller screens," and "screen
+orientation" described above.</p>
+      </td>
+    </tr>
+-->
+    <tr id="VersionQualifier">
+      <td>平台版本 (API 級別)</td>
+      <td>範例：<br/>
+        <code>v3</code><br/>
+        <code>v4</code><br/>
+        <code>v7</code><br/>
+        等等。</td>
+      <td>
+        <p>裝置支援的 API 級別。例如，<code>v1</code> 代表 API 級別1 (裝置安裝 Android 1.0 以上版本)，以及 <code>v4</code> 代表 API 級別 4 (裝置安裝 Android1.6 以上版本)。
+
+請參閱 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Android API 級別</a>文件以取得有關這些值的詳細資訊。
+</p>
+      </td>
+    </tr>
+</table>
+
+
+<p class="note"><strong>注意：</strong>有些設定限定詞從 Android1.0 就已新增，因此並非所有 Android 版本都支援所有限定詞。
+使用新的限定詞會以隱含的方式新增平台版本的限定詞，因此較舊的裝置一定會忽略它。
+例如，使用
+ <code>w600dp</code> 限定詞最自動包含 <code>v13</code> 限定詞，因為可用寬度限定詞是 API 級別 13 的新項目。
+為了避免發生任何問題，永遠要包含一組預設資源 (一組沒有限定詞的資源<em></em>)。
+如需詳細資訊，請參閱<a href="#Compatibility">使用資源提供最佳的裝置相容性</a>一節。
+
+</p>
+
+
+
+<h3 id="QualifierRules">限定詞名稱規則</h3>
+
+<p>這裡有一些使用設定限定詞名稱的規則：</p>
+
+<ul>
+    <li>您可以為一組資源指定多個限定詞，以破折號分隔。例如，
+<code>drawable-en-rUS-land</code> 適用於橫向的美國英文裝置。
+</li>
+    <li>限定詞的順序必須與<a href="#table2">表 2</a> 所列的一樣。例如：
+
+      <ul>
+        <li>錯誤：<code>drawable-hdpi-port/</code></li>
+        <li>正確：<code>drawable-port-hdpi/</code></li>
+      </ul>
+    </li>
+    <li>替代資源目錄不可為巢狀。例如，您不能有
+<code>res/drawable/drawable-en/</code>。</li>
+    <li>值有大小寫之分。資源編譯器會將目錄名稱轉換為小寫再處理，以避免有大小寫之分的檔案系統發生問題。
+
+名稱中的任何大寫只是為了方便閱讀。</li>
+    <li>每個限定詞類型只支援一個值。例如，如果您想在西班牙文和法文使用相同的可繪項目檔案，則不能將目錄命名為 <em></em>
+<code>drawable-rES-rFR/</code>。
+您必須有兩個資源目錄，例如 
+<code>drawable-rES/</code> 和 <code>drawable-rFR/</code>，這兩個目錄要包含適當的檔案。
+但是，您不需要實際將相同的檔案複製到這兩位置。您可以為資源建立別名。
+請參閱下方的
+<a href="#AliasResources">建立別名資源</a>。</li>
+</ul>
+
+<p>當您將替代資源儲存到以這些限定詞命名的目錄後，Android 會根據目前的裝置設定自動將資源套用到您的應用程式。
+
+每次要求資源時，Android 會檢查包含要求之資源檔案的替代資源目錄，然後<a href="#BestMatch">尋找最符合的資源
+</a> (下方有相關討論)。
+如果沒有符合特定裝置設定的替代資源，則 Android 會使用對應的預設資源 (特定資源類型的資源組，不含設定限定詞)。
+
+
+</p>
+
+
+
+<h3 id="AliasResources">建立別名資源</h3>
+
+<p>如果您要將資源用於一個以上的裝置設定 (但不想以預設資源的形式提供)，您不需要將相同的資源放入一個以上的替代資源目錄。
+
+您可以 (在某些情況下) 建立一個替代資源，將它做為儲存在您預設資源目錄的資源別名。
+
+</p>
+
+<p class="note"><strong>注意：</strong>並非所有資源都提供為其他資源建立別名的機制。
+特別是動畫、選單、原始項目和其他在 {@code xml/} 目錄中未指定的資源都不提供這項功能。
+</p>
+
+<p>例如，想像您有一個應用程式圖示 {@code icon.png}，且必須為不同的地區設定提供唯一的版本。
+但是，加拿大英文和加拿大法文這兩個地區設定必須使用相同的版本。
+您可能會假設必須在加拿大英文和加拿大法文這兩個資源目錄中複製相同的影像，但並不需要這樣做。
+
+您可以將這兩個地區設定的影像儲存成 {@code icon_ca.png} ({@code icon.png} 以外的任何名稱)，然後將該影像放入預設的 {@code res/drawable/} 目錄。
+
+之後，在 {@code
+res/drawable-en-rCA/} 建立一個 {@code icon.xml} 檔案，以及建立 {@code res/drawable-fr-rCA/}，用於參照使用 {@code &lt;bitmap&gt;} 元素的 {@code icon_ca.png} 資源。
+這樣可以讓您只儲存一個版本的 PNG 檔案，以及指向該檔案的兩個小 XML 檔案。
+(範例 XML 檔案如下所示。)</p>
+
+
+<h4>可繪項目</h4>
+
+<p>如要為現有的可繪項目建立別名，請使用 {@code &lt;bitmap&gt;} 元素。
+例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:src="@drawable/icon_ca" />
+</pre>
+
+<p>如果您將此檔案儲存成 {@code icon.xml} (在替代資源目錄中，像是 
+{@code res/drawable-en-rCA/})，系統會將它編譯成可當作 {@code R.drawable.icon} 參照的資源，但它實際上是 {@code
+R.drawable.icon_ca} 資源 (儲存在 {@code res/drawable/}) 的別名。
+</p>
+
+
+<h4>版面配置</h4>
+
+<p>如要為現有的可繪項目建立別名，請使用以 {@code &lt;merge&gt;} 包裝的{@code &lt;include&gt;} 元素。
+例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;merge>
+    &lt;include layout="@layout/main_ltr"/>
+&lt;/merge>
+</pre>
+
+<p>如果您將此檔案儲存成 {@code main.xml}，系統會將它編譯成可當作 {@code R.layout.main} 參照的資源，但它實際上是 {@code R.layout.main_ltr} 資源的別名。
+
+</p>
+
+
+<h4>字串和其他簡單值</h4>
+
+<p>如要為現有的字串建立別名，只要將所需字串的資源 ID 當作新字串的值即可。
+例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;string name="hello">Hello&lt;/string>
+    &lt;string name="hi">@string/hello&lt;/string>
+&lt;/resources>
+</pre>
+
+<p>{@code R.string.hi} 資源現在是 {@code R.string.hello} 的別名。</p>
+
+<p> <a href="{@docRoot}guide/topics/resources/more-resources.html">其他簡易值</a>的運作方法也一樣。
+例如，一個顏色：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;resources>
+    &lt;color name="yellow">#f00&lt;/color>
+    &lt;color name="highlight">@color/red&lt;/color>
+&lt;/resources>
+</pre>
+
+
+
+
+<h2 id="Compatibility">使用資源提供最佳的裝置相容性</h2>
+
+<p>如要讓您的應用程式支援多個裝置設定，務必要為您應用程式使用的每個資源類型提供預設資源。
+</p>
+
+<p>例如，如果您的應用程式支援多個語言，一律要包含一個 {@code
+values/} 目錄 (儲存字串的位置)，其中「不包含」<em></em><a href="#LocaleQualifier">語言和區域限定詞</a>。如果您將所有字串檔案放在含有語言和區域限定詞的目錄中，當執行應用程式的裝置，其語言設定不受字串支援時，應用程式就會當機。
+
+不過，只要您提供預設 {@code values/} 資源，
+應用程式就能正常運作 (即便使用者不懂該語言 &mdash; 仍然比當機好)。
+</p>
+
+<p>同樣地，如果您根據螢幕方向提供不同的版面配置資源，您應該選擇一個方向做為您的預設值。
+例如，不要在 {@code
+layout-land/} 提供橫向版面配置資源及在 {@code layout-port/} 提供直向版面配置資源，而是留下一個做為預設值，例如 {@code layout/} 做為橫向和 {@code layout-port/} 做為直向。
+</p>
+
+<p>提供預設資源很重要，這不只是因為您的應用程式可能執行您未預期到的設定，還因為新的 Android 版本有時候會新增舊版不支援的設定限定詞。
+
+如果您使用新的資源限定詞，但與舊版 Android 保持程式碼相容，則舊版 Android 執行您的應用程式時，如果您沒有提供預設資源，應用程式就會當機，這是因為它無法使用以新限定詞命名的資源。
+
+
+例如，如果您的 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
+minSdkVersion}</a> 設為 4，而且您讓所有可繪項目資源具備使用<a href="#NightQualifier">夜間模式</a>的資格 (已新增到 API 級別 8 的 {@code night} 或 {@code notnight})，則 API 級別 4 裝置將無法存取您的可繪項目資源且會當機。
+在這種情況下，您可能會想要將 {@code notnight} 當作預設資源，因此您應該要排除該限定詞，讓您的可繪項目資源成為 {@code drawable/} 或 {@code drawable-night/}。
+
+</p>
+
+<p>因此，如要提供最佳的裝置相容性，請務必針對應用程式正常執行所需的資源提供預設資源。
+然後，使用設定限定詞為特定裝置設定建立替代資源。
+</p>
+
+<p>這個規則有一個例外狀況：如果您應用程式的 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> 為 4 或高，當您提供含有<em></em><a href="#DensityQualifier">螢幕密度</a>限定詞的替代可繪項目資源時，則不需要預設可繪項目資源。
+
+即使沒有預設可繪項目資源，Android 仍然可從替代螢幕密度中找到最符合的項目，並視需要縮放點陣圖。
+
+不過，為了在所有裝置類型獲得最佳體驗，您應該為這三種密度類型提供替代可繪項目。
+</p>
+
+
+
+<h2 id="BestMatch">Android 如何尋找最相符的資源</h2>
+
+<p>當您要求已提供替代項目的資源時，Android 會根據目前的裝置設定，選擇執行階段要使用的替代資源。
+為了示範 Android 如何選取替代資源，假設下列可繪項目目錄分別包含相同影像的不同版本：
+
+</p>
+
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+drawable-fr-rCA/
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+
+<p>同時假設裝置設定如下：</p>
+
+<p style="margin-left:1em;">
+地區設定 = <code>en-GB</code> <br/>
+螢幕方向 = <code>port</code> <br/>
+螢幕像素密度 = <code>hdpi</code> <br/>
+觸控螢幕類型 = <code>notouch</code> <br/>
+主要文字輸入方式 = <code>12key</code>
+</p>
+
+<p>Android 透過比對裝置設定和可用的替代資源，從 {@code drawable-en-port} 選取可繪項目。
+</p>
+
+<p>系統使用下列邏輯決定要使用的資源：
+</p>
+
+
+<div class="figure" style="width:371px">
+<img src="{@docRoot}images/resources/res-selection-flowchart.png" alt="" height="471" />
+<p class="img-caption"><strong>圖 2.</strong>Android 如何尋找最相符資源的流程圖。
+</p>
+</div>
+
+
+<ol>
+  <li>排除與裝置設定衝突的資源檔案。
+    <p>已排除 <code>drawable-fr-rCA/</code> 目錄，因為它與 <code>en-GB</code> 地區設定衝突。
+</p>
+<pre class="classic no-pretty-print">
+drawable/
+drawable-en/
+<strike>drawable-fr-rCA/</strike>
+drawable-en-port/
+drawable-en-notouch-12key/
+drawable-port-ldpi/
+drawable-port-notouch-12key/
+</pre>
+<p class="note"><strong>例外狀況：</strong>螢幕像素密度是唯一沒有因為衝突而被排除的限定詞。
+即使裝置的螢幕密度是 hdpi 但仍然沒有排除 
+<code>drawable-port-ldpi/</code>，因為此刻每個螢幕密度都視為相符。
+如需詳細資訊，請參閱<a href="{@docRoot}guide/practices/screens_support.html">支援多個螢幕</a>文件。
+</p></li>
+
+  <li>在清單 (<a href="#table2">表 2</a>) 中選擇 (下一個) 最高優先等級的限定詞(從 MCC 往下移動)。
+ </li>
+  <li>有任何資源目錄包含此限定詞嗎？  </li>
+    <ul>
+      <li>如果沒有，回到步驟 2 查看下一個限定詞。(在此範例中，回答一直是「否」，直到語言限定詞為止。)
+</li>
+      <li>如果有，繼續到步驟 4。</li>
+    </ul>
+  </li>
+
+  <li>排除不包含此限定詞的來源目錄。在此範例中，系統排除所有不包含語言限定詞的目錄：
+</li>
+<pre class="classic no-pretty-print">
+<strike>drawable/</strike>
+drawable-en/
+drawable-en-port/
+drawable-en-notouch-12key/
+<strike>drawable-port-ldpi/</strike>
+<strike>drawable-port-notouch-12key/</strike>
+</pre>
+<p class="note"><strong>例外狀況：</strong>如果提到的限定詞是螢幕像素密度，Android 會選擇最符合裝置螢幕密度的選項。一般而言，Android 偏好縮小較大的原始影像以放大較小的原始影像。
+
+
+請參閱<a href="{@docRoot}guide/practices/screens_support.html">支援多個螢幕</a>。
+</p>
+  </li>
+
+  <li>重複步驟 2、3 和 4，直到剩下一個目錄為止。在此範例中，螢幕方向是下個有相符項目的限定詞。
+因此，將排除沒有指定螢幕方向的資源：
+
+<pre class="classic no-pretty-print">
+<strike>drawable-en/</strike>
+drawable-en-port/
+<strike>drawable-en-notouch-12key/</strike>
+</pre>
+<p>剩下的目錄是 {@code drawable-en-port}。</p>
+  </li>
+</ol>
+
+<p>雖然會針對每個要求的資源執行此程序，但系統還是會進一步最佳化某些方面。
+其中一個最佳化是一旦知道裝置設定，它將排除永遠無法符合的替代資源。
+例如，如果設定語言是英文 ("en")，則語言限定詞設定為不是英文的任何資源目錄永遠都不會包含在檢查的資源集區內 (但仍會包含<em>不含</em>語言限定詞的資源目錄)。
+
+
+</p>
+
+<p>根據螢幕大小限定詞選取資源時，如果沒有最符合的資源，系統會使用適用於比目前螢幕更小之螢幕設計的資源 (例如，如有需要，大型螢幕會使用一般大小螢幕資源)。
+
+然而，如果唯一可用的資源比目前螢幕<em>更大</em>，系統將<strong>不會</strong>使用這些資源，如果沒有其他資源符合裝置設定，則應用程式將會當機 (例如，如果所有版面配置資源都標記為 {@code xlarge} 限定詞，但裝置為一般大小螢幕)。
+
+
+
+</p>
+
+<p class="note"><strong>注意：</strong>限定詞的優先等級<em></em> (在<a href="#table2">表 2</a>) 比完全符合裝置的限定詞數量更重要。
+例如，在上述步驟 4，清單的最後一個選擇包含三個完全符合裝置的限定詞 (方向、觸控螢幕類型和輸入方法)，而 <code>drawable-en</code> 只有一個相符的參數(語言)。
+
+
+然而，語言的優先等級高於這些其他限定詞，因此將排除
+<code>drawable-port-notouch-12key</code>。</p>
+
+<p>如需深入瞭解在應用程式使用資源的方法，請繼續閱讀<a href="accessing-resources.html">存取資源</a>。</p>
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/resources/runtime-changes.jd b/docs/html-intl/intl/zh-tw/guide/topics/resources/runtime-changes.jd
new file mode 100644
index 0000000..7a8b3ae
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/resources/runtime-changes.jd
@@ -0,0 +1,281 @@
+page.title=處理執行階段變更
+page.tags=Activity、生命週期
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+  <h2>本文件內容</h2>
+  <ol>
+    <li><a href="#RetainingAnObject">變更設定期間保留物件</a></li>
+    <li><a href="#HandlingTheChange">自行處理設定變更</a>
+  </ol>
+
+  <h2>另請參閱</h2>
+  <ol>
+    <li><a href="providing-resources.html">提供資源</a></li>
+    <li><a href="accessing-resources.html">存取資源</a></li>
+    <li><a href="http://android-developers.blogspot.com/2009/02/faster-screen-orientation-change.html">快速的螢幕方向變更
+</a></li>
+  </ol>
+</div>
+</div>
+
+<p>有些裝置設定可以在執行階段期間進行變更 (例如，螢幕方向、鍵盤可用性和語言)。
+進行這類變更時，Android 會重新啟動執行中的 
+{@link android.app.Activity} (呼叫 {@link android.app.Activity#onDestroy()}，後面加上 {@link
+android.app.Activity#onCreate(Bundle) onCreate()})。
+重新啟動行為的設計是以符合新裝置設定的替代資源自動重新載入您的應用程式，以協助您的應用程式適應新的設定。
+
+</p>
+
+<p>如要正確處理重新啟動，務必透過一般 <a href="{@docRoot}guide/components/activities.html#Lifecycle">Activity 生命週期</a>將您的 Activity 還原為之前的狀態，其中 Android 會先呼叫
+{@link android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} 再終結您的 Activity，讓您能儲存應用程式狀態的相關資料。
+
+
+之後，您便能在 {@link android.app.Activity#onCreate(Bundle) onCreate()} 或 {@link
+android.app.Activity#onRestoreInstanceState(Bundle) onRestoreInstanceState()} 期間還原狀態。
+</p>
+
+<p>如要測試您的應用程式是否使用原本的應用程式狀態重新啟動，您應該在應用程式執行各種工作時呼叫設定變更 (例如變更螢幕方向)。
+
+您的應用程式應該能隨時重新啟動而不會遺失使用者資料或狀態，以便處理設定變更這類事件，或是使用者接聽來電，然後很久後才在應用程式程序可能終結後才返回應用程式的這類情況。
+
+
+如要瞭解如何還原您的 Activity 狀態，請參閱 <a href="{@docRoot}guide/components/activities.html#Lifecycle">Activity 生命週期</a>。</p>
+
+<p>不過，您可能遇到重新啟動應用程式以及還原大量資料的成本很昂貴，而且會產生使用者體驗不佳的情況。
+在這種情況下，您有兩種其他選擇：
+</p>
+
+<ol type="a">
+  <li><a href="#RetainingAnObject">變更設定期間保留物件</a>
+  <p>允許您的 Activity 在設定變更時重新啟動，但將可設定狀態的物件帶到 Activity 的新執行個體中。
+</p>
+
+  </li>
+  <li><a href="#HandlingTheChange">自行處理設定變更</a>
+  <p>避免系統在某些設定變更期間重新啟動您的 Activity，但在設定變更時接收回呼，您便能視需要手動更新您的 Activity。
+
+</p>
+  </li>
+</ol>
+
+
+<h2 id="RetainingAnObject">變更設定期間保留物件</h2>
+
+<p>如果重新啟動您的 Activity 需要復原大量資料、重新建立網路連線或執行其他密集型操作，則由於設定變更造成的完整重新啟動可能會拖慢使用者體驗。
+
+此外，您可能無法透過 {@link android.os.Bundle} 完全還原您的 Activity 狀態，這是系統透過 {@link android.app.Activity#onSaveInstanceState(Bundle) onSaveInstanceState()} 回呼所為您所儲存的&mdash;它的設計並不是用來傳送大型物件 (例如點陣圖)，而且其中的資料必須先序列化再還原序列化，這會耗用大量記憶體並讓設定變更變慢。
+
+
+
+在這種情況下，您可以在 Activity 因設定變更而重新啟動時，透過保留 {@link
+android.app.Fragment} 的方式來減少重新初始化 Activity 的負擔。
+這個片段可包含您要保留可設定狀態物件的參考資料。
+</p>
+
+<p>當 Android 系統因設定變更而關閉您的 Activity 時，您標示要保留的 Activity 片段不會被終結。
+您可以將這類片段新增至您的 Activity 以保留可設定狀態的物件。
+</p>
+
+<p>如要在執行階段設定變更期間，在片段中保留可設定狀態的物件：</p>
+
+<ol>
+  <li>延伸 {@link android.app.Fragment} 類別並宣告可設定狀態物件的參考資料。
+</li>
+  <li>片段建立之後，呼叫 {@link android.app.Fragment#setRetainInstance(boolean)}。
+      </li>
+  <li>將片段新增至您的 Activity。</li>
+  <li>當 Activity 重新啟動時，使用 {@link android.app.FragmentManager} 擷取片段。
+</li>
+</ol>
+
+<p>例如，將您的片段定義如下：</p>
+
+<pre>
+public class RetainedFragment extends Fragment {
+
+    // data object we want to retain
+    private MyDataObject data;
+
+    // this method is only called once for this fragment
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // retain this fragment
+        setRetainInstance(true);
+    }
+
+    public void setData(MyDataObject data) {
+        this.data = data;
+    }
+
+    public MyDataObject getData() {
+        return data;
+    }
+}
+</pre>
+
+<p class="caution"><strong>注意：</strong>雖然您可以儲存任何物件，但您不應該傳送與 {@link android.app.Activity} 相關的物件，例如 {@link
+android.graphics.drawable.Drawable}、{@link android.widget.Adapter}、{@link android.view.View} 或任何與 {@link android.content.Context} 關聯的其他物件。
+
+如果您這樣做，會流失原始 Activity 執行個體的所有檢視和資源。
+(資源流失表示您的應用程式會繼續保留資源但無法回收記憶體，因此會流失大量記憶體。)
+
+</p>
+
+<p>然後使用 {@link android.app.FragmentManager} 將片段新增至您的 Activity。您可以在執行階段設定變更期間，於 Activity 再次啟動時，從片段取得資料物件。
+
+例如，將您的 Activity 定義如下：</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    private RetainedFragment dataFragment;
+
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+
+        // find the retained fragment on activity restarts
+        FragmentManager fm = getFragmentManager();
+        dataFragment = (DataFragment) fm.findFragmentByTag(“data”);
+
+        // create the fragment and data the first time
+        if (dataFragment == null) {
+            // add the fragment
+            dataFragment = new DataFragment();
+            fm.beginTransaction().add(dataFragment, “data”).commit();
+            // load the data from the web
+            dataFragment.setData(loadMyData());
+        }
+
+        // the data is available in dataFragment.getData()
+        ...
+    }
+
+    &#64;Override
+    public void onDestroy() {
+        super.onDestroy();
+        // store the data in the fragment
+        dataFragment.setData(collectMyLoadedData());
+    }
+}
+</pre>
+
+<p>在此範例中，{@link android.app.Activity#onCreate(Bundle) onCreate()} 會在 Activity 新增片段或還原參考資料。
+{@link android.app.Activity#onCreate(Bundle) onCreate()} 也會在片段執行個體內儲存可設定狀態的物件。
+
+{@link android.app.Activity#onDestroy() onDestroy()} 會在保留的片段執行個體內更新可設定狀態的物件。
+</p>
+
+
+
+
+
+<h2 id="HandlingTheChange">自行處理設定變更</h2>
+
+<p>如果您的應用程式在特定設定變更期間不需要更新資源，「且」<em></em>您具有效能限制，要求您避免 Activity 重新啟動，則您可以宣告您的 Activity 自行處理設定變更，這樣可避免系統重新啟動您的 Activity。
+
+
+</p>
+
+<p class="note"><strong>注意：</strong>自行處理設定變更讓替代資源的使用變得更加困難，因為系統無法幫您自動套用。
+
+當您必須避免因為設定變更而造成重新啟動時，應將這個方式視為最後手段，而且不建議對大部分的應用程式使用。
+</p>
+
+<p>如要宣告您的 Activity 處理設定變更，可在宣示說明檔案中編輯適當的 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity&gt;}</a> 元素以包含 <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> 屬性和值，代表您要處理的設定。
+
+<a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> 屬性的可能值列於文件中 (最常用的值是 {@code "orientation"}，可避免在螢幕方向變更時重新啟動，而 {@code "keyboardHidden"} 可避免鍵盤可用性變更時重新啟動)。
+
+您可以使用直立線符號 {@code |} 字元來分隔，在屬性中宣告多個設定值。
+</p>
+
+<p>例如，下列宣示說明程式碼宣告同時處理螢幕方向變更和鍵盤可用性變更的 Activity：
+</p>
+
+<pre>
+&lt;activity android:name=".MyActivity"
+          android:configChanges="orientation|keyboardHidden"
+          android:label="@string/app_name">
+</pre>
+
+<p>現在，當其中一個設定變更時， {@code MyActivity} 便不會重新啟動。
+而是由 {@code MyActivity} 接收對 {@link android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} 的呼叫。
+這個方法傳送一個 {@link android.content.res.Configuration} 物件，指定新裝置設定。
+
+讀取 {@link android.content.res.Configuration} 中的欄位時，您可判斷新的設定，並且更新您介面中使用的資源來進行適當的變更。
+
+此時，會呼叫這個方法，Activity 的 {@link android.content.res.Resources} 物件會根據新設定進行更新以傳回資源，因此您便能輕鬆地重新設定 UI 的元素，系統無需重新啟動您的 Activity。
+
+
+</p>
+
+<p class="caution"><strong>注意：</strong>從 Android 3.2 (API 級別 13) 開始，裝置在橫向與直向之間進行切換時，<strong>「螢幕大小」也會跟著變更</strong>。
+
+因此，在開發 API 級別 13 或更高級別時 (如 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> 和 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> 屬性所宣告)，如果您要避免因為方向變更而造成執行階段重新啟動，除了{@code
+"orientation"} 值之外，您還必須包含 {@code "screenSize"} 值。
+
+也就是說，您必須宣告 {@code
+android:configChanges="orientation|screenSize"}。不過，如果您的應用程式是針對 API 級別 12 或更低級別，則您的 Activity 一律要自行處理這個設定變更 (即使在 Android 3.2 或更高版本的裝置上執行時，這個設定變更也不會重新啟動您的 Activity)。
+
+</p>
+
+<p>例如，下列 {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} 實作會檢查目前的裝置方向：
+</p>
+
+<pre>
+&#64;Override
+public void onConfigurationChanged(Configuration newConfig) {
+    super.onConfigurationChanged(newConfig);
+
+    // Checks the orientation of the screen
+    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
+        Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
+    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
+        Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
+    }
+}
+</pre>
+
+<p>{@link android.content.res.Configuration} 物件代表目前所有的設定，而不只是已變更的設定。
+大多數情況下，您不用特別留意設定如何變更，只要重新指派所有的資源，提供替代項目給您正在處理的設定。
+
+例如，因為 {@link
+android.content.res.Resources} 物件現在已更新，您可以使用 {@link android.widget.ImageView#setImageResource(int)
+setImageResource()} 重新設定任何 {@link android.widget.ImageView}並且針對新設定，使用適當的資源 (如<a href="providing-resources.html#AlternateResources">提供資源</a>中所述)。
+
+</p>
+
+<p>請注意，{@link
+android.content.res.Configuration} 欄位的值，是與 {@link android.content.res.Configuration} 類別的特定常數相符的整數。
+如需與每個欄位搭配使用之常數的相關文件，請參閱 {@link
+android.content.res.Configuration} 參考資料中的適當欄位。
+</p>
+
+<p class="note"><strong>請記住：</strong>當您宣告您的 Activity 以處理設定變更時，您要負責為提供的替代項目重新設定所有元素。
+如果您宣告您的 Activity 以處理方向變更，而且具有應該在橫向與直向之間進行方向變更的影像，則您必須在 {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()} 期間對每個元素重新指派每個資源。
+
+</p>
+
+<p>如果您不需要根據這些設定變更來更新您的應用程式，可改為不必<em></em>實作 {@link
+android.app.Activity#onConfigurationChanged(Configuration) onConfigurationChanged()}。
+在此情況下，仍然可使用設定變更前使用的所有資源，而您只要避免重新啟動您的 Activity 即可。
+
+不過，您的應用程式應該能夠關閉以及重新啟動成之前原本的狀態，因此在一般 Activity 生命週期期間無法保留您的狀態時，就不應考慮使用這個方法。
+
+這不只是因為有其他設定變更讓您無法防止重新啟動應用程式，還因為有您應該處理事件，例如當使用者離開應用程式後，使用者返回應用程式之前應用程式已終結。
+
+
+</p>
+
+<p>如需有關您在 Activity 中可以處理哪些設定變更的詳細資訊，請參閱 <a href="{@docRoot}guide/topics/manifest/activity-element.html#config">{@code
+android:configChanges}</a> 文件和 {@link android.content.res.Configuration} 類別。
+</p>
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/ui/controls.jd b/docs/html-intl/intl/zh-tw/guide/topics/ui/controls.jd
new file mode 100644
index 0000000..0f27ae4
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/ui/controls.jd
@@ -0,0 +1,90 @@
+page.title=輸入控制項
+parent.title=使用者介面
+parent.link=index.html
+@jd:body
+
+<div class="figure" style="margin:0">
+  <img src="{@docRoot}images/ui/ui-controls.png" alt="" style="margin:0" />
+</div>
+
+<p>輸入控制項是應用程式使用者介面中的互動元件。Android 提供了多種控制項讓您在 UI 中使用，例如按鈕、文字欄位、搜尋列、核取方塊、縮放按鈕、切換按鈕等。
+
+</p>
+
+<p>在使用者介面中加入輸入控制項，就如同將 XML 元素加到 <a href="{@docRoot}guide/topics/ui/declaring-layout.html">XML 版面配置</a>一樣簡單。例如，以下是包含文字欄位和按鈕的版面配置：
+</p>
+
+<pre style="clear:right">
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+    android:orientation="horizontal">
+    &lt;EditText android:id="@+id/edit_message"
+        android:layout_weight="1"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:hint="@string/edit_message" />
+    &lt;Button android:id="@+id/button_send"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/button_send"
+        android:onClick="sendMessage" />
+&lt;/LinearLayout>
+</pre>
+
+<p>每個輸入控制項均支援一組特定輸入事件，方便您處理使用者輸入文字或輕觸按鈕等事件。
+</p>
+
+
+<h2 id="CommonControls">一般控制項</h2>
+<p>下方列出您可在應用程式中使用的部分一般控制項。只要點進清單中的相關連結，即可進一步瞭解如何使用這些控制項。
+</p>
+
+<p class="note"><strong>注意：</strong>本文並未列出 Android 提供的部分控制項。
+如果想查看未列出的控制項，請瀏覽 {@link android.widget} 套件。如果您的應用程式需要特定類型的輸入控制項，您可以自行建置<a href="{@docRoot}guide/topics/ui/custom-components.html">自訂元件</a>。
+</p>
+
+<table>
+    <tr>
+        <th scope="col">控制項類型</th>
+        <th scope="col">說明</th>
+	<th scope="col">相關類別</th>
+    </tr>
+    <tr>
+        <td><a href="controls/button.html">按鈕</a></td>
+        <td>可供使用者按下或點擊來執行某項動作的按鈕。</td>
+	<td>{@link android.widget.Button Button} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/text.html">文字欄位</a></td>
+        <td>可編輯的文字欄位。您可以使用 <code>AutoCompleteTextView</code> 小工具建立可提供自動完成建議的文字輸入小工具。</td>
+	<td>{@link android.widget.EditText EditText}、{@link android.widget.AutoCompleteTextView}</td>
+    </tr>
+    <tr>
+        <td><a href="controls/checkbox.html">核取方塊</a></td>
+        <td>可供使用者切換的開啟/關閉開關。如果想為使用者提供一組互不相斥的可選取選項時，請使用核取方塊。</td>
+	<td>{@link android.widget.CheckBox CheckBox} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/radiobutton.html">圓形按鈕</a></td>
+        <td>功用與核取方塊類似，但會限制使用者只能從一組選項中選取一個選項。</td>
+	<td>{@link android.widget.RadioGroup RadioGroup} 
+	<br>{@link android.widget.RadioButton RadioButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/togglebutton.html" style="white-space:nowrap">切換按鈕</a></td>
+        <td>附有亮光指標的開啟/關閉按鈕。</td>
+	<td>{@link android.widget.ToggleButton ToggleButton} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/spinner.html">微調按鈕</a></td>
+        <td>可供使用者從一組選項中選取單一值的下拉式清單。</td>
+	<td>{@link android.widget.Spinner Spinner} </td>
+    </tr>
+    <tr>
+        <td><a href="controls/pickers.html">挑選器</a></td>
+        <td>可供使用者透過向上/向下按鈕或滑動手勢選取單一值的對話方塊。此外，挑選器還會提供 <code>DatePicker</code> 程式碼小工具和 <code>TimePicker</code> 小工具，分別讓使用者輸入日期值 (年、月、日) 以及時間值 (小時、分鐘、AM/PM)；系統會自動根據使用者所在的地區為這些值設定對應的格式。</td>
+	<td>{@link android.widget.DatePicker}、{@link android.widget.TimePicker}</td>
+    </tr>
+</table>
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/ui/declaring-layout.jd b/docs/html-intl/intl/zh-tw/guide/topics/ui/declaring-layout.jd
new file mode 100644
index 0000000..7275571
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/ui/declaring-layout.jd
@@ -0,0 +1,492 @@
+page.title=版面配置
+page.tags=view,viewgroup
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本文件內容</h2>
+<ol>
+  <li><a href="#write">編寫 XML</a></li>
+  <li><a href="#load">載入 XML 資源</a></li>
+  <li><a href="#attributes">屬性</a>
+    <ol>
+      <li><a href="#id">ID</a></li>
+      <li><a href="#layout-params">版面配置參數</a></li>
+    </ol>
+  </li>
+  <li><a href="#Position">版面配置位置</a></li>
+  <li><a href="#SizePaddingMargins">大小、邊距和邊界</a></li>
+  <li><a href="#CommonLayouts">常見版面配置</a></li>
+  <li><a href="#AdapterViews">使用配接器建置版面配置</a>
+    <ol>
+      <li><a href="#FillingTheLayout">將資料填入配接器檢視</a></li>
+      <li><a href="#HandlingUserSelections">處理點擊事件</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>重要類別</h2>
+  <ol>
+    <li>{@link android.view.View}</li>
+    <li>{@link android.view.ViewGroup}</li>
+    <li>{@link android.view.ViewGroup.LayoutParams}</li>
+  </ol>
+
+  <h2>另請參閱</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/firstapp/building-ui.html">建置簡易使用者
+介面</a></li> </div>
+</div>
+
+<p>版面配置會定義使用者介面 (例如 <a href="{@docRoot}guide/components/activities.html">Activity</a> 或<a href="{@docRoot}guide/topics/appwidgets/index.html">應用程式小工具</a>的使用者介面) 的視覺結構。您可以兩種方式宣告版面配置：
+</p>
+<ul>
+<li><strong>在 XML 中宣告 UI 元素</strong>。Android 提供的 XML 字彙不僅簡單明瞭，還可對應至 View 類別和子類別 (例如小工具和版面配置)。
+</li>
+<li><strong>在執行階段啟動版面配置元素</strong>。您的應用程式可透過程式建立 View 和 ViewGroup 物件 (以及操控其屬性)。
+ </li>
+</ul>
+
+<p>Android 架構可讓您彈性使用上述任一或兩種方法來宣告及管理應用程式的 UI。例如，您可以在 XML 中宣告應用程式的預設版面配置，包括會顯示在應用程式中的元素及其屬性。接著，您可在執行階段為應用程式加入程式碼來修改螢幕物件的狀態，包括您在 XML 中宣告的物件。 </p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <ul>
+  <li><a href="{@docRoot}tools/sdk/eclipse-adt.html">Eclipse 專用的 ADT 外掛程式</a>可提供 XML 的版面配置預覽 &mdash; 只要開啟您想預覽的 XML 檔案，然後選取 [版面配置]<strong></strong> 標籤即可。
+
+</li>
+  <li>同時也建議您使用 <a href="{@docRoot}tools/debugging/debugging-ui.html#hierarchyViewer">階層檢視器</a>工具針對版面配置進行除錯 &mdash; 這項工具會顯示版面配置屬性值、繪製線框並在其中加上編距/邊界標記，以及提供完整檢視 (如果您是透過模擬器或裝置進行除錯的話)。
+
+
+
+</li>
+  <li><a href="{@docRoot}tools/debugging/debugging-ui.html#layoutopt">layoutopt</a> 工具可讓您快速分析版面配置和階層，以找出效能不佳等其他問題。
+</li>
+</div>
+</div>
+
+<p>在 XML 中宣告 UI 可讓您進一步將應用程式的顯示畫面與控制應用程式行為的程式碼區隔開來。這樣可將 UI 說明置於應用程式的程式碼外部，方便您修改或調整使用者介面說明，而不必修改並重新編譯原始碼。例如，您可以針對不同的螢幕方向、裝置螢幕大小和語言建立各種 XML 檔案。此外，在 XML 中宣告版面配置可協助以視覺效果呈現 UI 的結構，方便您進行除錯。針對上述優點，本文件著重於說明如何在 XML 中宣告版面配置。如果您想在執行階段啟動 View 物件，請參閱 {@link android.view.ViewGroup} 和 {@link android.view.View} 類別參考文件。
+
+</p>
+
+<p>一般來說，用於宣告 UI 元素的 XML 字彙會遵從類別與方法的結構和名稱，其中元素名稱對應至類別名稱，而屬性名稱則對應至方法。事實上，這些對應關係十分直接，您可以輕易猜出某個 XML 屬性對應的哪個類別方法，或某個類別對應的特定 XML 元素為何。不過請注意，並非所有字彙均為相同。在部分情況下，您會發現某些不同的名稱。例如，EditText 元素包含對應至 <code>EditText.setText()</code> 的 <code>text</code> 屬性。
+
+ </p>
+
+<p class="note"><strong>提示：</strong>如要進一步瞭解各種版面配置類型，請參閱<a href="{@docRoot}guide/topics/ui/layout-objects.html">常見版面配置物件</a>。
+您也可以參閱 <a href="{@docRoot}resources/tutorials/views/index.html">Hello Views</a> 教學指南，取得一系列說明如何建置各種版面配置的教學課程。
+</p>
+
+<h2 id="write">編寫 XML</h2>
+
+<p>您可以使用 Android 的 XML 字彙，快速設計 UI 版面配置和其中包含的螢幕元素，方法與採用 HTML 建立網頁相同 &mdash; 都需要建置一系列巢狀元素。 </p>
+
+<p>每個版面配置檔案均需包含 1 個根元素 (必須為 View 或 ViewGroup 物件)。定義根元素後，您就可以將額外的物件或小工具新增為子元素，逐步建置檢檢視階層視階層來定義您的版面配置。例如，以下是使用直向 {@link android.widget.LinearLayout} 以納入
+{@link android.widget.TextView} 和 {@link android.widget.Button} 的 XML 版面配置：</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="Hello, I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="Hello, I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>在 XML 中宣告版面配置後，請使用 <code>.xml</code> 副檔名將檔案儲存到 Android 專案的 <code>res/layout/</code> 目錄中，藉此讓系統妥善加以編譯。
+ </p>
+
+<p>如要進一步瞭解 XML 版面配置檔案的語法，請參閱<a href="{@docRoot}guide/topics/resources/layout-resource.html">版面配置資源</a>。</p>
+
+<h2 id="load">載入 XML 資源</h2>
+
+<p>當您編譯應用程式時，系統會將所有 XML 版面配置檔案編入
+{@link android.view.View} 資源。在這種情況下，您必須透過 {@link android.app.Activity#onCreate(android.os.Bundle) Activity.onCreate()} 回呼，載入應用程式的程式碼中的版面配置資源，方法是呼叫 <code>{@link android.app.Activity#setContentView(int) setContentView()}</code>，然後採用以下格式將其參考資源傳送到版面配置資源：
+<code>R.layout.<em>layout_file_name</em></code>。例如，假設您將 XML 版面配置儲存成 <code>main_layout.xml</code>，您就必須針對如下所示的 Activity 載入該 XML：
+
+
+
+
+</p>
+<pre>
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.main_layout);
+}
+</pre>
+
+<p>Android 架構會在 Activity 啟動時呼叫 Activity 中的 <code>onCreate()</code> 回呼方法 (如需生命週期相關資訊，請參閱 <a href="{@docRoot}guide/components/activities.html#Lifecycle">Activity</a>)。
+
+
+</p>
+
+
+<h2 id="attributes">屬性</h2>
+
+<p>所有 View 和 ViewGroup 物件均支援本身專用的各種 XML 屬性。部分屬性僅適用於 View 物件 (例如 TextView 可支援 <code>textSize</code> 屬性)，不過可能延伸這個類別的 View 物件也會沿用這些屬性。由於某些屬性是沿用自 View 根類別，因此會成為所有 View 物件的常用屬性 (例如 <code>id</code> 屬性)。
+
+
+
+而系統會將其他屬性視為「版面配置參數」，這些屬性可說明 View 物件的特定版面配置方向 (View 由物件的 ViewGroup 上層物件所定義)。
+
+</p>
+
+<h3 id="id">ID</h3>
+
+<p>任何 View 物件都可能包含一個相關聯的整數 ID，可用於識別樹狀結構中的 View。在應用程式編寫期間，雖然這個 ID 通常是在 XML 版面配置檔案的 <code>id</code> 屬性中指派為字串，系統仍會將其解讀為整數。此為所有 View 物件常用的 XML 屬性 (由 {@link android.view.View} 類別所定義)；您會經常使用的這項屬性。以下是 XML 標記中的 ID 語法：
+
+
+
+
+</p>
+<pre>android:id="&#64;+id/my_button"</pre>
+
+<p>字串開頭的 @ 符號可指示 XML 剖析器應剖析或展開 ID 字串的其餘部分，並且將其視為 ID 資源。
+加號符號 (+) 表示此為系統必須建立並加到資源 (<code>R.java</code> 檔案) 中的新資源名稱。
+Android 架構提供了多種其他 ID 資源。
+參照 Android 資源 ID 時，您不必加入 + 符號，但必須加入 <code>android</code> 套件命名空間，如下所示：
+</p>
+<pre>android:id="&#64;android:id/empty"</pre>
+<p>只要加入 <code>android</code> 套件命名空間，系統就會從 <code>android.R</code> 資源類別參照 ID，而不是從本機資源類別。
+</p>
+
+<p>以下是透過應用程式建立檢視和參照的一般方法：</p>
+<ol>
+  <li>在版面配置檔案中定義檢視/小工具，並為該檔案指派不重複 ID：
+<pre>
+&lt;Button android:id="&#64;+id/my_button"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="&#64;string/my_button_text"/>
+</pre>
+  </li>
+  <li>接著，建立檢視物件執行個體，並從版面配置中擷取該執行個體 (通常使用 <code>{@link android.app.Activity#onCreate(Bundle) onCreate()}</code> 方法進行擷取)：
+
+<pre>
+Button myButton = (Button) findViewById(R.id.my_button);
+</pre>
+  </li>
+</ol>
+<p>請務必在建立 {@link android.widget.RelativeLayout} 時為檢視物件定義 ID。在相關的版面配置中，同層級的檢視可將本身的版面配置與其他同層級的檢視建立關聯，而不重複 ID 正是這些版面配置的參照依據。
+
+</p>
+<p>整個樹狀結構的 ID 不必是不重複 ID，但您所搜尋樹狀結構部分的 ID 就必須是不重複 ID (由於您搜尋的部分通常是整個樹狀結構，因此建議您為其定義不重複 ID)。
+
+</p>
+
+
+<h3 id="layout-params">版面配置參數</h3>
+
+<p>名為 <code>layout_<em>something</em></code> 的 XML 版面配置屬性會為適用於所屬 ViewGroup 的 View 定義版面配置參數。
+</p>
+
+<p>所有 ViewGroup 類別都會實作可延伸 {@link
+android.view.ViewGroup.LayoutParams} 的巢狀類別。這個子類別包含定義下層檢視大小和位置的屬性類型，而這些屬性類型也適用於檢視群組。
+
+如圖 1 所示，上層檢視群組為每個下層檢視 (包括下層檢視群組) 定義了版面配置參數。
+</p>
+
+<img src="{@docRoot}images/layoutparams.png" alt="" />
+<p class="img-caption"><strong>圖 1.</strong>檢視層級以及與每個檢視相關聯的版面配置參數。
+</p>
+
+<p>請注意，所有 LayoutParams 子類別都包含用於設定值的專屬語法。
+而每個子元素都必須定義適用於其上層元素的 LayoutParams，即便子元素也會為其下層物件定義不同的 LayoutParams。
+ </p>
+
+<p>所有檢視群組均包含寬度和高度 (<code>layout_width</code> 和
+<code>layout_height</code>)，而每個檢視都必須定義這些值。大多數 LayoutParams 還會包含選用的標界和邊框。
+ <p>
+
+<p>您可以依據測量結果指定寬度和高度 (您通常不必經常指定這些值)。
+在大多數情況下，您需使用以下任一常數設定寬度或高度：
+ </p>
+
+<ul>
+  <li><var>wrap_content</var> 可指示檢視自行將大小調整成其內容所需的尺寸。
+</li>
+  <li><var>match_parent</var> (在 API 級別 8 之前稱為 <var>fill_parent</var> ) 可指示檢視自行將大小擴展成上層檢視群組允許的上限。
+</li>
+</ul>
+
+<p>一般來說，我們不建議您使用絕對單位 (例如像素) 指定版面配置的寬度和高度。
+建議做法是使用相對測量單位 (例如依據密度的像素單位 (
+<var>dp</var>)、 <var>wrap_content</var>或
+<var>match_parent</var>指定這些值，這是因為這樣可協助確保應用程式在各種裝置螢幕大小中能保有最佳顯示效果。如需支援的測量類型的定義，請參閱<a href="{@docRoot}guide/topics/resources/available-resources.html#dimension">可用資源</a>。
+
+
+
+</p>
+
+
+<h2 id="Position">版面配置位置</h2>
+   <p>
+   檢視的形狀為矩形。檢視包含一個位置值 (以一組「水平」<em></em>和「垂直」<em></em>座標表示)，以及兩個尺寸值 (以寬度和高度表示)。
+
+位置和尺寸的單位均為像素。
+
+   </p>
+
+   <p>
+   您可以呼叫 {@link android.view.View#getLeft()} 和 {@link android.view.View#getTop()} 方法來擷取檢視的位置值。
+第一個方法會傳回顯示檢視的矩形區塊的水平座標 (X 座標)；
+第二個方法則會傳回顯示檢視的矩形區塊的垂直座標 (Y 座標)。
+這兩個方法都會傳回檢視相對於其上層項目的位置。
+例如，假設 <code>getLeft()</code> 傳回 20，表示該檢視位於其直屬上層項目左側邊緣向右平移 20 像素的位置。
+
+
+   </p>
+
+   <p>
+   我們也提供了 {@link android.view.View#getRight()} 和 {@link android.view.View#getBottom()} 這兩個簡易方法，可用於避免不必要的運算程序。
+
+   這些方法會傳回險是檢視的矩形區塊的右下角座標。
+例如，呼叫 {@link android.view.View#getRight()} 的用途與以下運算式類似：<code>getLeft() + getWidth()</code>。
+
+   </p>
+
+
+<h2 id="SizePaddingMargins">大小、邊距和邊界</h2>
+   <p>
+   檢視的大小是以寬度和高度表示。單一檢視會包含兩組寬度和高度值。
+
+   </p>
+
+   <p>
+   第一組值稱為「寬度測定值」<em></em>和「高度測定值」<em></em>，
+可定義檢視在上層項目中的尺寸。
+您可以呼叫 {@link android.view.View#getMeasuredWidth()} 和 {@link android.view.View#getMeasuredHeight()} 來取得尺寸測定值。
+
+
+   </p>
+
+   <p>
+   第二組值簡稱「寬度」<em></em>和「高度」<em></em>，或是「寬度描繪值」<em></em>和「高度描繪值」<em></em>，
+可定義檢視在螢幕中的實際大小 (描繪期間以及版面配置之後)。
+
+這些值可能 (但未必) 會與寬度和高度測量值不同。
+您可以呼叫 
+{@link android.view.View#getWidth()} 和 {@link android.view.View#getHeight()} 來取得尺寸描繪值。
+   </p>
+
+   <p>
+   測量檢視的尺寸時，系統會將檢視的邊距納入考量。邊距是指檢視的上、下、左、右部分 (單位為像素)，
+
+   可用於將檢視內容偏移特定像素。
+例如，2 像素的左側邊距可將檢視內容由左側邊緣向右平移 2 像素。
+您可以使用
+{@link android.view.View#setPadding(int, int, int, int)} 方法來設定邊距，以及呼叫
+{@link android.view.View#getPaddingLeft()}、{@link android.view.View#getPaddingTop()}、
+{@link android.view.View#getPaddingRight()} 和 {@link android.view.View#getPaddingBottom()} 來查詢邊距。
+   </p>
+
+   <p>
+   雖然檢視可定義邊距，但無法針對邊界提供任何支援。
+不過，檢視群組可提供這類支援。詳情請參閱
+{@link android.view.ViewGroup} 和
+{@link android.view.ViewGroup.MarginLayoutParams}。
+   </p>
+
+   <p>如要進一步瞭解尺寸，請參閱<a href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">尺寸值</a>。
+
+   </p>
+
+
+
+
+
+
+<style type="text/css">
+div.layout {
+  float:left;
+  width:200px;
+  margin:0 0 20px 20px;
+}
+div.layout.first {
+  margin-left:0;
+  clear:left;
+}
+</style>
+
+
+
+
+<h2 id="CommonLayouts">常見版面配置</h2>
+
+<p>{@link android.view.ViewGroup} 類別的所有子類別均可以獨有方式顯示您在當中套疊的檢視。
+以下提供幾個 Android 平台內建的常見版面配置類型。
+</p>
+
+<p class="note"><strong>注意：</strong>雖然您可以將版面配置套疊在一起來符合您的 UI 設計，但建議您盡可能讓版面配置階層維持淺薄。
+
+套疊的版面配置越少，版面配置的描繪速度就越快 (建議您使用寬的檢視階層，而不是深的檢視階層)。
+</p>
+
+<!--
+<h2 id="framelayout">FrameLayout</h2>
+<p>{@link android.widget.FrameLayout FrameLayout} is the simplest type of layout
+object. It's basically a blank space on your screen that you can
+later fill with a single object &mdash; for example, a picture that you'll swap in and out.
+All child elements of the FrameLayout are pinned to the top left corner of the screen; you cannot
+specify a different location for a child view. Subsequent child views will simply be drawn over
+previous ones,
+partially or totally obscuring them (unless the newer object is transparent).
+</p>
+-->
+
+
+<div class="layout first">
+  <h4><a href="layout/linear.html">線性版面配置</a></h4>
+  <a href="layout/linear.html"><img src="{@docRoot}images/ui/linearlayout-small.png" alt="" /></a>
+  <p>這種版面配置可將其下層物件整合至單一水平或垂直列。如果視窗長度超過螢幕長度，線性版面配置就會建立捲軸方便使用者捲動畫面。
+</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/relative.html">相對版面配置</a></h4>
+  <a href="layout/relative.html"><img src="{@docRoot}images/ui/relativelayout-small.png" alt="" /></a>
+  <p>這種版面配置可讓您指定下層物件之間的相對位置 (指定下層物件 A 位於下層物件 B 的左側)，或指定下層物件與上層物件的相對位置 (指定下層物件緊貼上層物件的頂端)。
+</p>
+</div>
+
+<div class="layout">
+  <h4><a href="{@docRoot}guide/webapps/webview.html">網頁檢視</a></h4>
+  <a href="{@docRoot}guide/webapps/webview.html"><img src="{@docRoot}images/ui/webview-small.png" alt="" /></a>
+  <p>這種版面配置可顯示網頁。</p>
+</div>
+
+
+
+
+<h2 id="AdapterViews" style="clear:left">使用配接器建置版面配置</h2>
+
+<p>如果您版面配置的內容為動態內容，而不是預先定義的內容，您可以在執行階段將子類別為 {@link android.widget.AdapterView} 的版面配置填入檢視中。
+
+{@link android.widget.AdapterView} 類別的子類別會使用 {@link android.widget.Adapter} 將資料繫結至本身的版面配置。
+{@link android.widget.Adapter} 就如同是資料來源與 {@link android.widget.AdapterView} 版面配置的中間人 &mdash; {@link android.widget.Adapter} 會從陣列或資料庫查詢等來源擷取資料，然後將這些資料轉換成可加入 {@link android.widget.AdapterView} 版面配置的檢視。
+
+
+</p>
+
+<p>以下是配接器支援的常見版面配置：</p>
+
+<div class="layout first">
+  <h4><a href="layout/listview.html">清單檢視</a></h4>
+  <a href="layout/listview.html"><img src="{@docRoot}images/ui/listview-small.png" alt="" /></a>
+  <p>這種版面配置可顯示能夠捲動的單欄清單。</p>
+</div>
+
+<div class="layout">
+  <h4><a href="layout/gridview.html">格狀檢視</a></h4>
+  <a href="layout/gridview.html"><img src="{@docRoot}images/ui/gridview-small.png" alt="" /></a>
+  <p>這種版面配置可顯示能夠捲動的資料欄和資料列網格。</p>
+</div>
+
+
+
+<h3 id="FillingTheLayout" style="clear:left">將資料填入配接器檢視</h3>
+
+<p>您可將 {@link android.widget.AdapterView} 執行個體繫結至
+{@link android.widget.Adapter} 以便從外部來源擷取資料，並建立可顯示所有資料的 {@link
+android.view.View}，藉此填入 {@link android.widget.AdapterView} (例如 {@link android.widget.ListView} 或 {@link android.widget.GridView}。
+</p>
+
+<p>Android 提供數個 {@link android.widget.Adapter} 子類別可用於擷取不同資料類型以及為 {@link android.widget.AdapterView} 建置檢視。
+以下是兩種常見的配接器：
+</p>
+
+<dl>
+  <dt>{@link android.widget.ArrayAdapter}</dt>
+    <dd>如果您的資料來源是陣列，請使用這個配接器。在預設情況下，{@link
+android.widget.ArrayAdapter} 會針對每個陣列項目呼叫 {@link
+java.lang.Object#toString()} 並取代 {@link
+android.widget.TextView} 中的內容，藉此為每個陣列項目建立檢視。
+      <p>例如，如果您想在 {@link
+android.widget.ListView} 中顯示一系列字串，請使用建構函式為每個字串和字串陣列指定版面配置，藉此初始化新的 {@link android.widget.ArrayAdapter}：
+</p>
+<pre>
+ArrayAdapter&lt;String> adapter = new ArrayAdapter&lt;String>(this,
+        android.R.layout.simple_list_item_1, myStringArray);
+</pre>
+<p>這個建構函式的引數包括：</p>
+<ul>
+  <li>您的應用程式 {@link android.content.Context}</li>
+  <li>含有陣列中所有字串的 {@link android.widget.TextView} 的版面配置</li>
+  <li>字串陣列</li>
+</ul>
+<p>接著，針對您的 {@link android.widget.ListView} 呼叫 
+{@link android.widget.ListView#setAdapter setAdapter()}：</p>
+<pre>
+ListView listView = (ListView) findViewById(R.id.listview);
+listView.setAdapter(adapter);
+</pre>
+
+      <p>如要自訂每個項目的外觀，您可以針對陣列中的物件覆寫 {@link
+java.lang.Object#toString()} 方法。或者，如果想為 {@link android.widget.TextView} 以外的所有項目建立檢視 (例如，如果您想為所有陣列項目建立 {@link android.widget.ImageView})，請延伸 {@link
+android.widget.ArrayAdapter} 類別並覆寫 {@link android.widget.ArrayAdapter#getView
+getView()}，以傳回您想為所有項目建立的檢視類型。
+
+</p>
+
+</dd>
+
+  <dt>{@link android.widget.SimpleCursorAdapter}</dt>
+    <dd>如果您的資料來自 {@link android.database.Cursor}，請使用這個配接器。使用
+{@link android.widget.SimpleCursorAdapter} 時，您必須指定要用於 {@link android.database.Cursor} 中所有資料列的版面配置，以及指定要將 {@link android.database.Cursor} 中的哪些資料欄插入哪些版面配置檢視。
+
+例如，如果您想建立一份列出使用者名稱和電話號碼的清單，請執行查詢來傳回 {@link
+android.database.Cursor}，其中包含一個列出每位使用者的資料列，以及多個列出名稱和電話號碼的資料欄。
+
+接著，請建立一個字串陣列以便從 {@link
+android.database.Cursor} 指定您想在版面配置中列出每項結果的資料欄，以及建立一個整數陣列為每個資料欄指定對應的值：
+</p>
+<pre>
+String[] fromColumns = {ContactsContract.Data.DISPLAY_NAME,
+                        ContactsContract.CommonDataKinds.Phone.NUMBER};
+int[] toViews = {R.id.display_name, R.id.phone_number};
+</pre>
+<p>當您啟動 {@link android.widget.SimpleCursorAdapter} 時，請傳送用於顯示所有結果的版面配置、包含結果的 {@link android.database.Cursor}，以及下列兩個陣列：
+</p>
+<pre>
+SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
+        R.layout.person_name_and_number, cursor, fromColumns, toViews, 0);
+ListView listView = getListView();
+listView.setAdapter(adapter);
+</pre>
+<p>{@link android.widget.SimpleCursorAdapter} 隨即會將每個 {@code
+fromColumns} 項目插入相對應的 {@code toViews} 檢視，藉此利用提供的版面配置為
+{@link android.database.Cursor} 中的所有資料列建立專屬檢視。</p>.</dd>
+</dl>
+
+
+<p>如果您在應用程式的效期內更改配接器讀取的底層資料，您就必須呼叫 {@link android.widget.ArrayAdapter#notifyDataSetChanged()}。
+這樣會通知附加的檢視由於資料已變更，因此需進行重新整理。
+</p>
+
+
+
+<h3 id="HandlingUserSelections">處理點擊事件</h3>
+
+<p>只要實作 {@link android.widget.AdapterView.OnItemClickListener} 介面，即可回應 {@link android.widget.AdapterView} 中所有項目的點擊事件。
+例如：</p>
+
+<pre>
+// Create a message handling object as an anonymous class.
+private OnItemClickListener mMessageClickedHandler = new OnItemClickListener() {
+    public void onItemClick(AdapterView parent, View v, int position, long id) {
+        // Do something in response to the click
+    }
+};
+
+listView.setOnItemClickListener(mMessageClickedHandler);
+</pre>
+
+
+
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/ui/dialogs.jd b/docs/html-intl/intl/zh-tw/guide/topics/ui/dialogs.jd
new file mode 100644
index 0000000..b0ae12e
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/ui/dialogs.jd
@@ -0,0 +1,798 @@
+page.title=對話方塊
+page.tags=alertdialog,dialogfragment
+
+@jd:body
+
+
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>本文件內容</h2>
+<ol>
+  <li><a href="#DialogFragment">建立對話方塊片段</a></li>
+  <li><a href="#AlertDialog">建置快訊對話方塊</a>
+    <ol>
+      <li><a href="#AddingButtons">加入按鈕</a></li>
+      <li><a href="#AddingAList">加入清單</a></li>
+      <li><a href="#CustomLayout">建立自訂版面配置</a></li>
+    </ol>
+  </li>
+  <li><a href="#PassingEvents">將事件傳回對話方塊的主控件</a></li>
+  <li><a href="#ShowingADialog">顯示對話方塊</a></li>
+  <li><a href="#FullscreenDialog">顯示全螢幕對話方塊或內嵌片段</a>
+    <ol>
+      <li><a href="#ActivityAsDialog">針對大型螢幕將 Activity 顯示為對話方塊</a></li>
+    </ol>
+  </li>
+  <li><a href="#DismissingADialog">關閉對話方塊</a></li>
+</ol>
+
+    <h2>重要類別</h2>
+    <ol>
+      <li>{@link android.app.DialogFragment}</li>
+      <li>{@link android.app.AlertDialog}</li>
+    </ol>
+    
+    <h2>另請參閱</h2>
+    <ol>
+      <li><a href="{@docRoot}design/building-blocks/dialogs.html">對話方塊設計指南</a></li>
+      <li><a href="{@docRoot}guide/topics/ui/controls/pickers.html">挑選器</a> (日期/時間對話方塊)</li>
+    </ol>
+  </div>
+</div>
+
+<p>對話方塊是一種小型視窗，可提示使用者做出決定或輸入額外資訊。
+對話視窗並不會佔滿整個螢幕，而且通常是供強制回應事件使用，這種事件會要求使用者必須先完成特定動作，才能繼續下一步。
+</p>
+
+<div class="note design">
+<p><strong>設計對話方塊</strong></p>
+  <p>如要瞭解如何設計對話方塊，包括建議使用的設計語言，請參閱<a href="{@docRoot}design/building-blocks/dialogs.html">對話方塊</a>設計指南。
+</p>
+</div>
+
+<img src="{@docRoot}images/ui/dialogs.png" />
+
+<p>{@link android.app.Dialog} 類別是對話方塊的基礎類別，但請避免直接啟動 {@link android.app.Dialog}。建議您改用下列其中一個子類別：
+
+</p>
+<dl>
+  <dt>{@link android.app.AlertDialog}</dt>
+  <dd>這種對話方塊可以顯示一個標題、最多三個按鈕、一系列可選取項目或一個自訂版面配置。
+</dd>
+  <dt>{@link android.app.DatePickerDialog} 或 {@link android.app.TimePickerDialog}</dt>
+  <dd>這種對話方塊會提供預先定義的 UI，可讓使用者選取日期或時間。</dd>
+</dl>
+
+<div class="sidebox">
+<h2>避免使用 ProgressDialog</h2>
+<p>Android 包含另一個稱為
+{@link android.app.ProgressDialog} 的對話方塊類別，可顯示內含進度列的對話方塊。不過，如果您需要向使用者指明載入進度或不明朗的進度，建議您按照<a href="{@docRoot}design/building-blocks/progress.html">進度和 Activity</a> 設計指導方針中的指示操作，並且在版面配置中使用 {@link android.widget.ProgressBar}。
+
+
+</p>
+</div>
+
+<p>上述類別可定義對話方塊的樣式和結構，但建議您使用 {@link android.support.v4.app.DialogFragment} 做為對話方塊的容器。
+{@link android.support.v4.app.DialogFragment} 類別可提供您所需的所有控制項，方便您建立對話方塊及管理對話方塊的外觀，如此您不必對 {@link android.app.Dialog} 物件呼叫方法。
+
+
+</p>
+
+<p>使用 {@link android.support.v4.app.DialogFragment} 管理對話方塊可確保對話方塊能正確控制生命週期事件，例如使用者點擊 [返回]<em></em> 按鈕或旋轉螢幕。
+
+此外，{@link
+android.support.v4.app.DialogFragment} 類別還能像傳統的 {@link
+android.support.v4.app.Fragment} 一樣讓您重複使用對話方塊的 UI，做為大型 UI 中的可嵌入元件 (例如當您想讓對話方塊使用者介面在大型和小型螢幕上呈現不同外觀時)。
+
+</p>
+
+<p>本指南的以下各節說明如何搭配 {@link android.app.AlertDialog} 物件使用 {@link
+android.support.v4.app.DialogFragment}。
+如果您是想建立日期或時間挑選器，請改為參閱<a href="{@docRoot}guide/topics/ui/controls/pickers.html">挑選器</a>指南。
+</p>
+
+<p class="note"><strong>注意：</strong>{@link android.app.DialogFragment} 類別最初是在 Android 3.0 (API 級別 11) 中導入，因此本文說明如何使用<a href="{@docRoot}tools/support-library/index.html">支援程式庫</a>提供的 {@link
+android.support.v4.app.DialogFragment} 類別。
+
+只要將這個程式庫加到您的應用程式，即可在搭載 Android 1.6 以上版本的裝置上使用 {@link android.support.v4.app.DialogFragment} 以及多種其他 API。
+
+如果您應用程式支援的最低版本為 API 級別 11 以上版本，您就可以使用架構版本的 {@link
+android.app.DialogFragment}，但請注意，本文中提供的連結是用於取得支援程式庫 API。
+
+使用支援程式庫時，請務必匯入 <code>android.support.v4.app.DialogFragment</code> 類別，而「不是」<em></em><code>android.app.DialogFragment</code>。
+
+</p>
+
+
+<h2 id="DialogFragment">建立對話方塊片段</h2>
+
+<p>如果想建立多種對話方塊設計 &mdash; 包括自訂版面配置和<a href="{@docRoot}design/building-blocks/dialogs.html">對話方塊</a>設計指南中所述的對話方塊設計 &mdash; 只要延伸
+{@link android.support.v4.app.DialogFragment} 然後利用
+{@link android.support.v4.app.DialogFragment#onCreateDialog
+onCreateDialog()} 回呼方法建立 {@link android.app.AlertDialog} 即可。
+
+</p>
+
+<p>例如，假設您利用 {@link android.support.v4.app.DialogFragment} 管理以下的基本
+{@link android.app.AlertDialog}：</p>
+
+<pre>
+public class FireMissilesDialogFragment extends DialogFragment {
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Use the Builder class for convenient dialog construction
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // FIRE ZE MISSILES!
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // User cancelled the dialog
+                   }
+               });
+        // Create the AlertDialog object and return it
+        return builder.create();
+    }
+}
+</pre>
+
+<div class="figure" style="width:290px;margin:0 0 0 20px">
+<img src="{@docRoot}images/ui/dialog_buttons.png" alt="" />
+<p class="img-caption"><strong>圖 1.</strong>
+包含一段訊息和兩個動作按鈕的對話方塊。</p>
+</div>
+
+<p>在這種情況下，如果您建立這個類別執行個體，然後對該物件呼叫 {@link
+android.support.v4.app.DialogFragment#show show()}，就會顯示如圖 1 所示的對話方塊。
+</p>
+
+<p>如要進一步瞭解如何使用 {@link android.app.AlertDialog.Builder} API 建立對話方塊，請參閱下一節。
+</p>
+
+<p>視對話方塊的複雜程度而定，您可以在 {@link android.support.v4.app.DialogFragment} 中實作多種其他回呼方法，包括所有的基本<a href="{@docRoot}guide/components/fragments.html#Lifecycle">片段生命週期方法</a>。
+
+
+
+
+
+
+
+<h2 id="AlertDialog">建置快訊對話方塊</h2>
+
+
+<p>{@link android.app.AlertDialog} 通常是您需要使用的唯一對話方塊類別，可讓您建置多種對話方塊設計。如圖 2 所示，快訊對話方塊是由 3 個區塊組合而成：
+
+</p>
+
+<div class="figure" style="width:311px;margin-top:0">
+<img src="{@docRoot}images/ui/dialogs_regions.png" alt="" style="margin-bottom:0" />
+<p class="img-caption"><strong>圖 2.</strong>對話方塊的版面配置。</p>
+</div>
+
+<ol>
+<li><b>標題</b>
+  <p>此為選用區塊；只有在內容區域提供詳細訊息、一份清單或自訂版面配置時，您才需要使用標題。
+如果您想提供一段簡短訊息或一個簡易問題 (如圖 1 所示的對話方塊)，您就不必使用標題。
+</li>
+<li><b>內容區塊</b>
+  <p>這個區塊可以顯示一段訊息、一份清單或其他自訂版面配置。</p></li>
+<li><b>動作按鈕</b>
+  <p>單一對話方塊最多只能包含 3 個動作按鈕。</p></li>
+</ol>
+
+<p>{@link android.app.AlertDialog.Builder} 類別提供的 API 可讓您建立包含這些內容類型 (包括自訂版面配置) 的 {@link android.app.AlertDialog}。
+
+</p>
+
+<p>如何建置 {@link android.app.AlertDialog}：</p>
+
+<pre>
+<b>// 1. Instantiate an {@link android.app.AlertDialog.Builder} with its constructor</b>
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+
+<b>// 2. Chain together various setter methods to set the dialog characteristics</b>
+builder.setMessage(R.string.dialog_message)
+       .setTitle(R.string.dialog_title);
+
+<b>// 3. Get the {@link android.app.AlertDialog} from {@link android.app.AlertDialog.Builder#create()}</b>
+AlertDialog dialog = builder.create();
+</pre>
+
+<p>以下主題說明如何定義多種採用 {@link android.app.AlertDialog.Builder} 類別的對話方塊屬性。
+</p>
+
+
+
+
+<h3 id="AddingButtons">加入按鈕</h3>
+
+<p>想要加入如圖 2 所示的動作按鈕，請呼叫 {@link android.app.AlertDialog.Builder#setPositiveButton setPositiveButton()} 和
+{@link android.app.AlertDialog.Builder#setNegativeButton setNegativeButton()} 方法：
+</p>
+
+<pre style="clear:right">
+AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+// Add the buttons
+builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User clicked OK button
+           }
+       });
+builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+           public void onClick(DialogInterface dialog, int id) {
+               // User cancelled the dialog
+           }
+       });
+// Set other dialog properties
+...
+
+// Create the AlertDialog
+AlertDialog dialog = builder.create();
+</pre>
+
+<p><code>set...Button()</code> 方法會要求<a href="{@docRoot}guide/topics/resources/string-resource.html">字串資源</a>提供的按鈕標題，以及可定義使用者點擊按鈕後需要完成的動作的{@link android.content.DialogInterface.OnClickListener}。
+
+
+</p>
+
+<p>您可以加入的動作按鈕分為 3 種：</p>
+<dl>
+  <dt>正面</dt>
+  <dd>這種按鈕的用途是接受及繼續進行特定動作 (「確定」按鈕)。</dd>
+  <dt>負面</dt>
+  <dd>這種按鈕的用途是取消動作。</dd>
+  <dt>中立</dt>
+  <dd>如果使用者不想繼續進行特定動作，但並非要取消動作，請使用這種按鈕。
+這種按鈕會顯示在正面和負面按鈕之間。
+範例：[稍後提醒我] 按鈕。</dd> 
+</dl>
+
+<p>您可以將以上其中一種按鈕加入 {@link
+android.app.AlertDialog}；換句話說，您最多只能加入一個「正面」按鈕。</p>
+
+
+
+<div class="figure" style="width:290px;margin:0 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_list.png" alt="" />
+<p class="img-caption"><strong>圖 3.</strong>
+包含一個標題和一份清單的對話方塊。</p>
+</div>
+
+<h3 id="AddingAList">加入清單</h3>
+
+<p>{@link android.app.AlertDialog} API 可提供以下 3 種清單類型：</p>
+<ul>
+<li>傳統的單一選項清單</li>
+<li>永續性的單一選項清單 (圓形按鈕)</li>
+<li>永續性的多重選項清單 (核取方塊)</li>
+</ul>
+
+<p>想要建立如圖 3 所示的單一選項清單，請使用 {@link android.app.AlertDialog.Builder#setItems setItems()} 方法：
+</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    builder.setTitle(R.string.pick_color)
+           .setItems(R.array.colors_array, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int which) {
+               // The 'which' argument contains the index position
+               // of the selected item
+           }
+    });
+    return builder.create();
+}
+</pre>
+
+<p>由於清單會出現在對話方塊的內容區塊中，因此對話方塊無法同時顯示訊息和清單，而且您必須使用 {@link android.app.AlertDialog.Builder#setTitle setTitle()} 為對話方塊設定標題。
+
+如要指定清單列出的項目，請呼叫 {@link
+android.app.AlertDialog.Builder#setItems setItems()} 來傳送陣列。或者，您也可以使用 {@link
+android.app.AlertDialog.Builder#setAdapter setAdapter()} 指定清單。
+
+如此一來，您就可以使用 {@link android.widget.ListAdapter} 為清單加入動態資料 (例如資料庫中的動態資料)。
+</p>
+
+<p>如果您選擇讓清單採用 {@link android.widget.ListAdapter}，請一律使用 {@link android.support.v4.content.Loader} 以非同步方式載入內容。
+
+詳情請參閱<a href="{@docRoot}guide/topics/ui/declaring-layout.html#AdapterViews">使用配接器建置版面配置</a>和<a href="{@docRoot}guide/components/loaders.html">載入器</a>指南。
+
+
+</p>
+
+<p class="note"><strong>注意：</strong>在預設情況下，輕觸某個清單項目會關閉對話方塊，除非您使用以下的永續性選項清單。
+</p>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_checkboxes.png" />
+<p class="img-caption"><strong>圖 4.</strong>
+多重選項清單。</p>
+</div>
+
+
+<h4 id="Checkboxes">加入永續性的多重選項或單一選項清單</h4>
+
+<p>如要加入多重選項 (核取方塊) 或單一選項 (圓形按鈕)，請使用
+{@link android.app.AlertDialog.Builder#setMultiChoiceItems(Cursor,String,String,
+DialogInterface.OnMultiChoiceClickListener) setMultiChoiceItems()} 或
+{@link android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()} 方法。
+</p>
+
+<p>例如，以下說明如何建立如圖 4 所示能夠在 {@link java.util.ArrayList} 中儲存所選項目的多重選項清單：
+
+</p>
+
+<pre style="clear:right">
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    mSelectedItems = new ArrayList();  // Where we track the selected items
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Set the dialog title
+    builder.setTitle(R.string.pick_toppings)
+    // Specify the list array, the items to be selected by default (null for none),
+    // and the listener through which to receive callbacks when items are selected
+           .setMultiChoiceItems(R.array.toppings, null,
+                      new DialogInterface.OnMultiChoiceClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int which,
+                       boolean isChecked) {
+                   if (isChecked) {
+                       // If the user checked the item, add it to the selected items
+                       mSelectedItems.add(which);
+                   } else if (mSelectedItems.contains(which)) {
+                       // Else, if the item is already in the array, remove it 
+                       mSelectedItems.remove(Integer.valueOf(which));
+                   }
+               }
+           })
+    // Set the action buttons
+           .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // User clicked OK, so save the mSelectedItems results somewhere
+                   // or return them to the component that opened the dialog
+                   ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   ...
+               }
+           });
+
+    return builder.create();
+}
+</pre>
+
+<p>雖然傳統清單和包含圓形按鈕的清單都可提供「單選」動作，但如果您想保留使用者的選擇，請使用 {@link
+android.app.AlertDialog.Builder#setSingleChoiceItems(int,int,DialogInterface.OnClickListener) 
+setSingleChoiceItems()}。也就是說，如果您想讓對話方塊再次開啟時顯示使用者目前所選的選項，請建立包含圓形按鈕的清單。
+
+
+</p>
+
+
+
+
+
+<h3 id="CustomLayout">建立自訂版面配置</h3>
+
+<div class="figure" style="width:290px;margin:-30px 0 0 40px">
+<img src="{@docRoot}images/ui/dialog_custom.png" alt="" />
+<p class="img-caption"><strong>圖 5.</strong>自訂的對話方塊版面配置。</p>
+</div>
+
+<p>如果您想自訂對話方塊的版面配置，請建立所需的版面配置，然後對 {@link
+android.app.AlertDialog.Builder} 物件呼叫 {@link
+android.app.AlertDialog.Builder#setView setView()}，將新建的版面配置加到 {@link android.app.AlertDialog}。
+</p>
+
+<p>自訂版面配置預設會佔滿整個對話方塊視窗，但您仍可使用 {@link android.app.AlertDialog.Builder} 方法在其中加入按鈕和標題。
+</p>
+
+<p>例如，以下是圖 5 所示的對話方塊版面配置檔案：</p>
+
+<p style="clear:right" class="code-caption">res/layout/dialog_signin.xml</p>
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content">
+    &lt;ImageView
+        android:src="@drawable/header_logo"
+        android:layout_width="match_parent"
+        android:layout_height="64dp"
+        android:scaleType="center"
+        android:background="#FFFFBB33"
+        android:contentDescription="@string/app_name" />
+    &lt;EditText
+        android:id="@+id/username"
+        android:inputType="textEmailAddress"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="16dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="4dp"
+        android:hint="@string/username" />
+    &lt;EditText
+        android:id="@+id/password"
+        android:inputType="textPassword"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="4dp"
+        android:layout_marginLeft="4dp"
+        android:layout_marginRight="4dp"
+        android:layout_marginBottom="16dp"
+        android:fontFamily="sans-serif"
+        android:hint="@string/password"/>
+&lt;/LinearLayout>
+</pre>
+
+<p class="note"><strong>提示：</strong>在預設情況下，如果您設定 {@link android.widget.EditText} 元素使用 {@code "textPassword"} 輸入類型，字型系列就會設為等寬字型，因此您必須將該元素的字型系列變更為 {@code "sans-serif"}，讓文字欄位採用對應的字型。
+
+
+</p>
+
+<p>如要擴大 {@link android.support.v4.app.DialogFragment} 中的版面配置，請透過 {@link android.app.Activity#getLayoutInflater()} 取得 {@link android.view.LayoutInflater}，然後呼叫{@link android.view.LayoutInflater#inflate inflate()} (其中的第一個參數為版面配置資源 ID，第二個參數則是版面配置的上層檢視)。接著，您可以呼叫 {@link android.app.AlertDialog#setView setView()} 來取代對話方塊中的版面配置。
+
+
+
+
+
+</p>
+
+<pre>
+&#64;Override
+public Dialog onCreateDialog(Bundle savedInstanceState) {
+    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+    // Get the layout inflater
+    LayoutInflater inflater = getActivity().getLayoutInflater();
+
+    // Inflate and set the layout for the dialog
+    // Pass null as the parent view because its going in the dialog layout
+    builder.setView(inflater.inflate(R.layout.dialog_signin, null))
+    // Add action buttons
+           .setPositiveButton(R.string.signin, new DialogInterface.OnClickListener() {
+               &#64;Override
+               public void onClick(DialogInterface dialog, int id) {
+                   // sign in the user ...
+               }
+           })
+           .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+               public void onClick(DialogInterface dialog, int id) {
+                   LoginDialogFragment.this.getDialog().cancel();
+               }
+           });      
+    return builder.create();
+}
+</pre>
+
+<div class="note">
+<p><strong>提示：</strong>如果您想自訂對話方塊，請改為將 {@link android.app.Activity} 顯示為對話方塊，而不是使用 {@link android.app.Dialog} API。
+
+方法很簡單，只要建立 Activity 然後在 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> 宣示說明元素中將其主題設為 
+{@link android.R.style#Theme_Holo_Dialog Theme.Holo.Dialog} 即可：
+</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.Dialog" >
+</pre>
+<p>這樣一來，Activity 就會顯示在對話方塊視窗，而不是以全螢幕模式顯示。</p>
+</div>
+
+
+
+<h2 id="PassingEvents">將事件傳回對話方塊的主控件</h2>
+
+<p>使用者在對話方塊中輕觸任一動作按鈕或從清單中選取一個項目後，您的 {@link android.support.v4.app.DialogFragment} 可能會自行執行必要動作，不過，您通常會想將事件傳送到 Activity 或對話方塊開啟的片段。
+
+
+如要這麼做，請透過每個點擊事件類型適用的方法定義介面，然後在會接收對話方塊的動作事件的主機元件中實作該介面。
+
+</p>
+
+<p>例如，以下是定義用於將事件傳回主機 Activity 的介面的 {@link android.support.v4.app.DialogFragment}：
+</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    
+    /* The activity that creates an instance of this dialog fragment must
+     * implement this interface in order to receive event callbacks.
+     * Each method passes the DialogFragment in case the host needs to query it. */
+    public interface NoticeDialogListener {
+        public void onDialogPositiveClick(DialogFragment dialog);
+        public void onDialogNegativeClick(DialogFragment dialog);
+    }
+    
+    // Use this instance of the interface to deliver action events
+    NoticeDialogListener mListener;
+    
+    // Override the Fragment.onAttach() method to instantiate the NoticeDialogListener
+    &#64;Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        // Verify that the host activity implements the callback interface
+        try {
+            // Instantiate the NoticeDialogListener so we can send events to the host
+            mListener = (NoticeDialogListener) activity;
+        } catch (ClassCastException e) {
+            // The activity doesn't implement the interface, throw exception
+            throw new ClassCastException(activity.toString()
+                    + " must implement NoticeDialogListener");
+        }
+    }
+    ...
+}
+</pre>
+
+<p>代管對話方塊的 Activity 會建立包含對話方塊片段的建構函式的對話方塊執行個體，以及透過您實作的 {@code NoticeDialogListener} 介面接收對話方塊的事件：
+
+</p>
+
+<pre>
+public class MainActivity extends FragmentActivity
+                          implements NoticeDialogFragment.NoticeDialogListener{
+    ...
+    
+    public void showNoticeDialog() {
+        // Create an instance of the dialog fragment and show it
+        DialogFragment dialog = new NoticeDialogFragment();
+        dialog.show(getSupportFragmentManager(), "NoticeDialogFragment");
+    }
+
+    // The dialog fragment receives a reference to this Activity through the
+    // Fragment.onAttach() callback, which it uses to call the following methods
+    // defined by the NoticeDialogFragment.NoticeDialogListener interface
+    &#64;Override
+    public void onDialogPositiveClick(DialogFragment dialog) {
+        // User touched the dialog's positive button
+        ...
+    }
+
+    &#64;Override
+    public void onDialogNegativeClick(DialogFragment dialog) {
+        // User touched the dialog's negative button
+        ...
+    }
+}
+</pre>
+
+<p>由於主機 Activity 會實作 {@code NoticeDialogListener} &mdash; 如上所述的 {@link android.support.v4.app.Fragment#onAttach onAttach()} 回呼方法會強制執行這個 Activity &mdash; 因此對話方塊片段可以使用介面回呼方法將點擊事件傳送到 Activity：
+
+
+</p>
+
+<pre>
+public class NoticeDialogFragment extends DialogFragment {
+    ...
+
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // Build the dialog and set up the button click handlers
+        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+        builder.setMessage(R.string.dialog_fire_missiles)
+               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the positive button event back to the host activity
+                       mListener.onDialogPositiveClick(NoticeDialogFragment.this);
+                   }
+               })
+               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
+                   public void onClick(DialogInterface dialog, int id) {
+                       // Send the negative button event back to the host activity
+                       mListener.onDialogNegativeClick(NoticeDialogFragment.this);
+                   }
+               });
+        return builder.create();
+    }
+}
+</pre>
+
+
+
+<h2 id="ShowingADialog">顯示對話方塊</h2>
+
+<p>如果想顯示對話方塊，請建立 {@link
+android.support.v4.app.DialogFragment} 執行個體並呼叫 {@link android.support.v4.app.DialogFragment#show
+show()} 來傳送對話方塊片段的 {@link android.support.v4.app.FragmentManager} 和標籤名稱。
+</p>
+
+<p>如要取得 {@link android.support.v4.app.FragmentManager}，請呼叫
+{@link android.support.v4.app.FragmentActivity} 中的
+{@link android.support.v4.app.FragmentActivity#getSupportFragmentManager()} 或 {@link
+android.support.v4.app.Fragment} 中的 {@link
+android.support.v4.app.Fragment#getFragmentManager()}。例如：</p>
+
+<pre>
+public void confirmFireMissiles() {
+    DialogFragment newFragment = new FireMissilesDialogFragment();
+    newFragment.show(getSupportFragmentManager(), "missiles");
+}
+</pre>
+
+<p>第二個引數 {@code "missiles"} 是不重複的標籤名稱，可供系統視需要用於儲存及還原片段狀態。
+此外，該標籤還可讓您呼叫
+ {@link android.support.v4.app.FragmentManager#findFragmentByTag
+findFragmentByTag()} 來取得片段的控點。</p>
+
+
+
+
+<h2 id="FullscreenDialog">顯示全螢幕對話方塊或內嵌片段</h2>
+
+<p>您可能會想建立 UI 設計，讓 UI 片段在某些情況下於該設計中顯示為對話方塊，而不是其他設計中的全螢幕或內嵌片段 (例如視裝置採用螢幕大小而定)。
+
+{@link android.support.v4.app.DialogFragment} 類別能為您提供這樣的彈性，這是因為該類別仍可做為可嵌入的 {@link
+android.support.v4.app.Fragment} 使用。
+</p>
+
+<p>不過，您無法使用 {@link android.app.AlertDialog.Builder AlertDialog.Builder} 或其他 {@link android.app.Dialog} 物件來建置這種對話方塊。
+如果您想建立可嵌入的 {@link android.support.v4.app.DialogFragment}，請務必在版面配置中定義對話方塊的 UI，然後透過 {@link android.support.v4.app.DialogFragment#onCreateView
+onCreateView()} 回呼載入版面配置。
+
+
+</p>
+
+<p>以下的 {@link android.support.v4.app.DialogFragment} 範例可顯示為對話方塊或可嵌入片段 (使用名為 <code>purchase_items.xml</code> 的版面配置)：
+</p>
+
+<pre>
+public class CustomDialogFragment extends DialogFragment {
+    /** The system calls this to get the DialogFragment's layout, regardless
+        of whether it's being displayed as a dialog or an embedded fragment. */
+    &#64;Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        // Inflate the layout to use as dialog or embedded fragment
+        return inflater.inflate(R.layout.purchase_items, container, false);
+    }
+  
+    /** The system calls this only when creating the layout in a dialog. */
+    &#64;Override
+    public Dialog onCreateDialog(Bundle savedInstanceState) {
+        // The only reason you might override this method when using onCreateView() is
+        // to modify any dialog characteristics. For example, the dialog includes a
+        // title by default, but your custom layout might not need it. So here you can
+        // remove the dialog title, but you must call the superclass to get the Dialog.
+        Dialog dialog = super.onCreateDialog(savedInstanceState);
+        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
+        return dialog;
+    }
+}
+</pre>
+
+<p>以下的程式碼可根據螢幕大小，決定要將片段顯示為對話方塊或全螢幕 UI：
+</p>
+
+<pre>
+public void showDialog() {
+    FragmentManager fragmentManager = getSupportFragmentManager();
+    CustomDialogFragment newFragment = new CustomDialogFragment();
+    
+    if (mIsLargeLayout) {
+        // The device is using a large layout, so show the fragment as a dialog
+        newFragment.show(fragmentManager, "dialog");
+    } else {
+        // The device is smaller, so show the fragment fullscreen
+        FragmentTransaction transaction = fragmentManager.beginTransaction();
+        // For a little polish, specify a transition animation
+        transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
+        // To make it fullscreen, use the 'content' root view as the container
+        // for the fragment, which is always the root view for the activity
+        transaction.add(android.R.id.content, newFragment)
+                   .addToBackStack(null).commit();
+    }
+}
+</pre>
+
+<p>如要進一步瞭解如何進行片段交易，請參閱<a href="{@docRoot}guide/components/fragments.html">片段</a>指南。
+</p>
+
+<p>在本範例中，<code>mIsLargeLayout</code> 布林值可指定是否要讓目前的裝置採用應用程式的大型版面配置設計 (藉此將這個片段顯示為對話方塊，而不是全螢幕)。
+
+設定這種布林值的最佳做法，是使用<a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">替代資源</a>值為不同裝置大小宣告<a href="{@docRoot}guide/topics/resources/more-resources.html#Bool">布林資源值</a>。
+
+例如，以下是適用於不同螢幕大小的 2 種布林資源版本：
+</p>
+
+<p class="code-caption">res/values/bools.xml</p>
+<pre>
+&lt;!-- Default boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">false&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p class="code-caption">res/values-large/bools.xml</p>
+<pre>
+&lt;!-- Large screen boolean values -->
+&lt;resources>
+    &lt;bool name="large_layout">true&lt;/bool>
+&lt;/resources>
+</pre>
+
+<p>接著，您可以在呼叫 Activity 的 {@link android.app.Activity#onCreate onCreate()} 方法時初始化 {@code mIsLargeLayout} 值：
+</p>
+
+<pre>
+boolean mIsLargeLayout;
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_main);
+
+    mIsLargeLayout = getResources().getBoolean(R.bool.large_layout);
+}
+</pre>
+
+
+
+<h3 id="ActivityAsDialog">針對大型螢幕將 Activity 顯示為對話方塊</h3>
+
+<p>您可以針對大型螢幕將 {@link android.app.Activity} 顯示為對話方塊，而不是將對話方塊顯示為全螢幕 UI，藉此達到相同結果。
+
+您要採用的方法取決於您的應用程式設計，但如果您的應用程式是針對小型螢幕進行設計，將 Activity 顯示為對話方塊通常就能獲得良好效果，而如果您想針對平板電腦改善使用者體驗，請將生命週期較短的 Activity 顯示為對話方塊。
+
+
+</p>
+
+<p>如果只想針對大型螢幕將 Activity 顯示為對話方塊，請為 <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
+&lt;activity&gt;}</a> 宣示元素套用 {@link android.R.style#Theme_Holo_DialogWhenLarge Theme.Holo.DialogWhenLarge} 主題：
+
+</p>
+
+<pre>
+&lt;activity android:theme="&#64;android:style/Theme.Holo.DialogWhenLarge" >
+</pre>
+
+<p>如要進一步瞭解如何運用主題設定 Activity 的樣式，請參閱<a href="{@docRoot}guide/topics/ui/themes.html">樣式和主題</a>指南。</p>
+
+
+
+<h2 id="DismissingADialog">關閉對話方塊</h2>
+
+<p>只要使用者輕觸任何用 {@link android.app.AlertDialog.Builder} 建立的動作按鈕，系統就會為您關閉對話方塊。
+</p>
+
+<p>此外，系統也會在使用者輕觸對話方塊清單中的項目時，關閉對話方塊，但如果清單採用圓形按鈕或核取方塊，系統就不會關閉對話方塊。
+不過，您可以對 {@link
+android.support.v4.app.DialogFragment} 呼叫 {@link android.support.v4.app.DialogFragment#dismiss()}，藉此手動關閉對話方塊。
+</p>
+
+<p>如果您需要在對話方塊關閉時執行特定動作，請在 {@link
+android.support.v4.app.DialogFragment} 中實作 {@link
+android.support.v4.app.DialogFragment#onDismiss onDismiss()} 方法。
+</p>
+
+<p>此外，您還可以「取消」<em></em>對話方塊。這種特殊事件可用於指明使用者尚未完成工作便關閉對話方塊。
+如果使用者按下 [返回]<em></em> 按鈕、輕觸對話方塊以外的螢幕畫面，或如果您對 {@link
+android.app.Dialog} 呼叫 {@link android.app.Dialog#cancel()} (例如藉此回應對話方塊中的 [取消] 按鈕)，就會發生這個事件。
+
+</p>
+
+<p>如上方範例所示，您可以在 {@link
+android.support.v4.app.DialogFragment} 類別中實作 {@link android.support.v4.app.DialogFragment#onCancel onCancel()} 來回應取消事件。
+</p>
+
+<p class="note"><strong>注意：</strong>系統會在發生會呼叫 {@link android.support.v4.app.DialogFragment#onCancel onCancel()} 回呼的事件時呼叫
+{@link android.support.v4.app.DialogFragment#onDismiss onDismiss()}。
+不過，如果您呼叫 {@link android.app.Dialog#dismiss Dialog.dismiss()} 或 {@link
+android.support.v4.app.DialogFragment#dismiss DialogFragment.dismiss()}，則系統會呼叫 {@link android.support.v4.app.DialogFragment#onDismiss onDismiss()}「而不是」<em></em>{@link android.support.v4.app.DialogFragment#onCancel onCancel()}。
+
+
+因此，我們通常建議您在使用者點擊您對話方塊中的「正面」<em></em>按鈕以便將對話方塊從檢視移除時，呼叫 {@link android.support.v4.app.DialogFragment#dismiss dismiss()}。
+
+</p>
+
+
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/ui/menus.jd b/docs/html-intl/intl/zh-tw/guide/topics/ui/menus.jd
new file mode 100644
index 0000000..be1fa7f
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/ui/menus.jd
@@ -0,0 +1,1031 @@
+page.title=選單
+parent.title=使用者介面
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本文件內容</h2>
+<ol>
+  <li><a href="#xml">在 XML 中定義選單</a></li>
+  <li><a href="#options-menu">建立選項選單</a>
+    <ol>
+      <li><a href="#RespondingOptionsMenu">處理點擊事件</a></li>
+      <li><a href="#ChangingTheMenu">在執行階段變更選單項目</a></li>
+    </ol>
+  </li>
+  <li><a href="#context-menu">建立內容關聯選單</a>
+    <ol>
+      <li><a href="#FloatingContextMenu">建立浮動內容選單</a></li>
+      <li><a href="#CAB">使用內容關聯動作模式</a></li>
+    </ol>
+  </li>
+  <li><a href="#PopupMenu">建立彈出式選單</a>
+    <ol>
+      <li><a href="#PopupEvents">處理點擊事件</a></li>
+    </ol>
+  </li>
+  <li><a href="#groups">建立選單群組</a>
+    <ol>
+      <li><a href="#checkable">使用可核取的選單項目</a></li>
+    </ol>
+  </li>
+  <li><a href="#intents">根據意圖新增選單項目</a>
+    <ol>
+      <li><a href="#AllowingToAdd">允許將 Activity 新增至其他選單</a></li>
+    </ol>
+  </li>
+</ol>
+
+  <h2>重要類別</h2>
+  <ol>
+    <li>{@link android.view.Menu}</li>
+    <li>{@link android.view.MenuItem}</li>
+    <li>{@link android.view.ContextMenu}</li>
+    <li>{@link android.view.ActionMode}</li>
+  </ol>
+
+  <h2>另請參閱</h2>
+  <ol>
+    <li><a href="{@docRoot}guide/topics/ui/actionbar.html">動作列</a></li>
+    <li><a href="{@docRoot}guide/topics/resources/menu-resource.html">選單資源</a></li>
+    <li><a href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">和選單按鈕說再見
+</a></li>
+  </ol>
+</div>
+</div>
+
+<p>選單在許多類型的應用程式中都是常見的使用者介面元件。為提供熟悉且一致的使用者體驗，您應該使用
+{@link android.view.Menu} API 來呈現 Activity 中的使用者動作與其他選項。
+</p>
+
+<p>從 Android 3.0 (API 級別 11) 開始，提供 Android 的裝置不再需要提供專屬的「選單」<em></em>按鈕。
+有此變更之後，Android 應用程式應可脫離對傳統有 6 個項目的選單面板的依賴，改為提供動作列來呈現一般的使用者動作。
+
+</p>
+
+<p>雖然有些選單項目的設計與使用者體驗有所變更，但依然是根據
+{@link android.view.Menu} API 來定義一組動作與選項的語意。本指南說明如何在所有版本的 Android 上，建立三個基本類型的選單或動作呈現方式：
+
+</p>
+
+<dl>
+  <dt><strong>選項選單和動作列</strong></dt>
+    <dd><a href="#options-menu">選項選單</a>是 Activity 的主要選單項目集合。
+您應該將對應用程式有全域影響的動作放置在此，例如「搜尋」、「撰寫電子郵件」及「設定」。
+
+  <p>如果您是為 Android 2.3 以下版本進行開發，使用者可按下「選單」<em></em>按鈕來顯示選項選單面板。
+</p>
+  <p>在 Android 3.0 以上版本，選項選單的項目是當成螢幕上的動作項目與溢出選項組合，以<a href="{@docRoot}guide/topics/ui/actionbar.html">動作列</a>呈現。
+從 Android 3.0 開始，「選單」<em></em>按鈕已淘汰 (有些裝置甚至沒有)，因此您應轉向使用動作列來存取動作和其他選項。
+
+
+</p>
+  <p>請參閱<a href="#options-menu">建立選項選單</a>。</p>
+    </dd>
+    
+  <dt><strong>內容選單和內容關聯動作模式</strong></dt>
+  
+   <dd>內容選單是會在使用者長按某元素時顯示的<a href="#FloatingContextMenu">浮動選單</a>。
+它提供的動作會影響所選取內容或內容畫面。
+
+  <p>針對 Android 3.0 以上版本進行開發時，您應該改為使用<a href="#CAB">關聯比對動作模式</a>，以啟用所選取內容的動作。此模式顯示的動作項目會影響畫面頂端列中選取的內容，並允許使用者選取多個項目。
+
+</p>
+  <p>請參閱<a href="#context-menu">建立內容關聯選單</a>。</p>
+</dd>
+    
+  <dt><strong>彈出式選單</strong></dt>
+    <dd>彈出式選單顯示的項目清單會以垂直清單的方式，錨定在呼叫該選單的檢視。
+它很適合用來提供與特定內容有關的動作溢出，或針對第二部分的命令提供選項。
+彈出式選單中的動作「不」<strong></strong>應直接影響對應內容，應由內容關聯動作直接影響。
+
+彈出式選單主要用於您 Activity 中與內容區域相關的延伸動作。
+
+  <p>請參閱<a href="#PopupMenu">建立彈出式選單</a>。</p>
+</dd>
+</dl>
+
+
+
+<h2 id="xml">在 XML 中定義選單</h2>
+
+<p>對於所有選單類型，Android 提供標準 XML 格式來定義選單項目。
+您應該在 XML <a href="{@docRoot}guide/topics/resources/menu-resource.html">選單資源</a>中定義選單與其相關項目，而不是在您 Activity 的程式碼中建置選單。
+接著，您可以擴大 Activity 或片段中的選單資源 (當成
+{@link android.view.Menu} 物件載入)。
+</p>
+
+<p>建議使用選單資源的幾個理由如下：</p>
+<ul>
+  <li>較容易視覺化 XML 中的選單結構。</li>
+  <li>可將選單內容和您應用程式的行為程式碼分開。</li>
+  <li>可讓您運用<a href="{@docRoot}guide/topics/resources/index.html">應用程式資源</a>架構，為不同的平台版本、螢幕大小及其他設定，建立替代選單設定。
+</li>
+</ul>
+
+<p>如要定義選單，可在專案的 <code>res/menu/</code> 目錄內建立 XML 檔案，然後利用下列元素建置選單：
+</p>
+<dl>
+  <dt><code>&lt;menu></code></dt>
+    <dd>定義選單項目的容器 {@link android.view.Menu}。<code>&lt;menu></code> 元素必須是檔案的根節點，並可保留一或多個
+<code>&lt;item></code> 與 <code>&lt;group></code> 元素。
+</dd>
+
+  <dt><code>&lt;item></code></dt>
+    <dd>建立代表選單中單一項目的 {@link android.view.MenuItem}。此元素可以包含巢狀
+<code>&lt;menu></code> 元素以建立子選單。</dd>
+    
+  <dt><code>&lt;group></code></dt>
+    <dd>可供 {@code &lt;item&gt;} 元素選用的不可見容器。它可讓您將選單項目分類，以便分享屬性，例如有效狀態與可見度。
+如需詳細資訊，請參閱<a href="#groups">建立選單群組</a>。
+</dd>
+</dl>
+
+
+<p>稱為 <code>game_menu.xml</code> 的範例選單如下：</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/new_game"
+          android:icon="@drawable/ic_new_game"
+          android:title="@string/new_game"
+          android:showAsAction="ifRoom"/&gt;
+    &lt;item android:id="@+id/help"
+          android:icon="@drawable/ic_help"
+          android:title="@string/help" /&gt;
+&lt;/menu&gt;
+</pre>
+
+<p><code>&lt;item></code> 元素支援數個屬性，您可以用來定義項目的外觀與行為。
+上述選單中的項目包括下列屬性：</p>
+
+<dl>
+  <dt>{@code android:id}</dt>
+    <dd>項目獨有的資源 ID，當使用者選取該項目時可讓應用程式辨識出來。
+</dd>
+  <dt>{@code android:icon}</dt>
+    <dd>要當成項目圖示使用的可繪項目參考資料。</dd>
+  <dt>{@code android:title}</dt>
+    <dd>要當成項目標題使用的字串參考資料。</dd>
+  <dt>{@code android:showAsAction}</dt>
+    <dd>指定此項目應何時且如何顯示為<a href="{@docRoot}guide/topics/ui/actionbar.html">動作列</a>中的動作項目。</dd>
+</dl>
+
+<p>這些都是您應該使用的最重要屬性，但不侷限於上述這幾個。
+如需所有支援屬性的詳細資訊，請參閱<a href="{@docRoot}guide/topics/resources/menu-resource.html">選單資源</a>。</p>
+
+<p>您可以藉由將 {@code &lt;menu&gt;} 元素新增為 {@code &lt;item&gt;} 的子項，將子選單新增至任何選單 (子選單除外) 的項目。
+當您的應用程式有很多可按主題分類的功能，例如 PC 應用程式選單列中的項目 (檔案、編輯、檢視等等) 時，子選單相當有用。
+
+例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/file"
+          android:title="@string/file" &gt;
+        &lt;!-- "file" submenu --&gt;
+        &lt;menu&gt;
+            &lt;item android:id="@+id/create_new"
+                  android:title="@string/create_new" /&gt;
+            &lt;item android:id="@+id/open"
+                  android:title="@string/open" /&gt;
+        &lt;/menu&gt;
+    &lt;/item&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>如要在 Activity 中使用選單，您必須使用 {@link android.view.MenuInflater#inflate(int,Menu)
+MenuInflater.inflate()} 擴大選單資源 (將 XML 轉換成可程式化的物件)。
+下列各節將說明如何擴大各種
+選單類型的選單。</p>
+
+
+
+<h2 id="options-menu">建立選項選單</h2>
+
+<div class="figure" style="width:200px;margin:0">
+  <img src="{@docRoot}images/options_menu.png" height="333" alt="" />
+  <p class="img-caption"><strong>圖 1.</strong>Android 2.3 裝置上瀏覽器中的選項選單。
+</p>
+</div>
+
+<p>您應該在選項選單中包括與目前 Activity 內容關聯動作和其他選項，例如「搜尋」、「撰寫電子郵件」及「設定」。
+</p>
+
+<p>選項選單中的項目會顯示在螢幕上的哪個位置，取決於您為其開發應用程式的版本。
+</p>
+
+<ul>
+  <li>如果您為「Android 2.3.x (API 級別 10) 以下版本」<strong></strong>開發應用程式，當使用者按下[選單]<em></em> 按鈕，選項選單的內容會顯示在螢幕底部，如圖 1 所示。
+
+開啟時，第一個可見部分就是最多可保留六個選單項目的圖示選單。
+
+如果您的選單包含六個以上的項目，Android 會將第六個與其餘的項目放入溢出選單，使用者可透過選取[更多]<em></em> 來開啟。
+
+</li>
+
+  <li>如果您為「Android 3.0 (API 級別 11) 以上版本」<strong></strong>開發應用程式，選項選單中的項目會顯示在<a href="{@docRoot}guide/topics/ui/actionbar.html">動作列</a>。
+在預設情況下，系統會將所有項目放入動作溢出，使用者可以利用動作列右側的動作溢出圖示來顯示 (或按裝置的「選單」<em></em>按鈕，如果有的話)。
+
+為了能夠快速存取重要的動作，您可以將 {@code android:showAsAction="ifRoom"} 新增至對應的 {@code &lt;item&gt;} 元素，將要顯示在動作列的幾個項目升階 (請參閱圖 2)。
+
+
+
+ <p>如需動作項目與其他動作列行為的詳細資訊，請參閱<a href="{@docRoot}guide/topics/ui/actionbar.html">動作列</a>指南。 </p>
+<p class="note"><strong>注意：</strong>即使您「並非」<em></em>為 Android 3.0 以上版本進行開發，您仍可建置自己的動作列版面配置，達到類似的效果。
+如需如何支援舊版Android 提供動作列的範例，請參閱<a href="{@docRoot}resources/samples/ActionBarCompat/index.html">動作列相容性</a>範例。
+
+</p>
+</li>
+</ul>
+
+<img src="{@docRoot}images/ui/actionbar.png" alt="" />
+<p class="img-caption"><strong>圖 2.</strong><a href="{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb 圖片庫</a>應用程式的動作列，顯示導覽索引標籤與相機動作項目 (再加上動作溢出按鈕)。
+</p>
+
+<p>您可以從 {@link android.app.Activity} 子類別或 {@link android.app.Fragment} 子類別宣告選項選單的項目。
+如果您的 Activity 與片段都宣告選項選單的項目，兩者會在 UI 中結合。
+
+先顯示 Activity 的項目，接著會依片段新增至 Activity 的順序顯示各片段的項目。
+您可以視需要在您想移動的 {@code &lt;item&gt;} 中，利用其 {@code android:orderInCategory}屬性重新排列選單項目的順序。
+</p>
+
+<p>如要指定 Activity 的選項選單，可覆寫 {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} (片段會提供自己的
+{@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()} 回呼)。在這種方法中，您可以將選單資源(<a href="#xml">在 XML 中完成定義</a>) 擴大回呼中提供的 {@link
+android.view.Menu}。
+例如：</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu) {
+    MenuInflater inflater = {@link android.app.Activity#getMenuInflater()};
+    inflater.inflate(R.menu.game_menu, menu);
+    return true;
+}
+</pre>
+
+<p>透過 {@link android.view.MenuItem} API，您也可以使用 {@link android.view.Menu#add(int,int,int,int)
+add()} 來新增選單項目，以及利用 {@link android.view.Menu#findItem findItem()} 擷取項目來修訂它們的屬性。
+</p>
+
+<p>如果您是為 Android 2.3.x 以下版本開發應用程式，當使用者初次開啟選單時，系統會呼叫 {@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}，以建立選項選單。
+如果您是為 Android 3.0 以上版本開發應用程式，啟動 Activity 時，系統會呼叫
+{@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}，以在動作列顯示項目。
+</p>
+
+
+
+<h3 id="RespondingOptionsMenu">處理點擊事件</h3>
+
+<p>使用者從選項選單 (包括動作列中的動作項目) 中選取項目時，系統會呼叫您 Activity 的
+{@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} 方法。此方法會傳送所選取的 {@link android.view.MenuItem}。您可以呼叫
+{@link android.view.MenuItem#getItemId()} 傳回選單項目的唯一 ID (由選單資源中的
+{@code android:id} 屬性或透過指定給
+{@link android.view.Menu#add(int,int,int,int) add()} 方法的整數來定義) 來識別該項目。您可以將此 ID 和已知選單項目比對，以執行適當動作。
+例如：</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    // Handle item selection
+    switch (item.getItemId()) {
+        case R.id.new_game:
+            newGame();
+            return true;
+        case R.id.help:
+            showHelp();
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>當您成功處理選單項目時會傳回 {@code true}。如果您不處理選單項目，應該呼叫
+{@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} 的超級類別實作 (預設實作會傳回 false)。
+</p>
+
+<p>如果您的 Activity 包含片段，系統會先呼叫 Activity 的 {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()}，再依片段的新增順序呼叫各片段，直到其中之一傳回
+{@code true} 或所有片段均已呼叫。
+</p>
+
+<p class="note"><strong>提示：</strong>Android 3.0 新增的功能可讓您在 XML 中使用
+{@code android:onClick} 屬性定義選單項目的點擊行為。該屬性值必須是使用選單的 Activity 所定義的方法名稱。
+它必須是公用方法且接受單一
+{@link android.view.MenuItem} 參數，當系統呼叫此方法時，它會傳送選取的選單項目。
+如需詳細資訊與範例，請參閱<a href="{@docRoot}guide/topics/resources/menu-resource.html">選單資源</a>文件。</p>
+
+<p class="note"><strong>提示：</strong>如果您的應用程式包含多個 Activity 且有一些提供相同的選項選單，可考慮建立只實作
+{@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} 與 {@link android.app.Activity#onOptionsItemSelected(MenuItem)
+onOptionsItemSelected()} 方法的 Activity。
+接著，針對應共用相同選項選單的 Activity 擴充此類別。
+如此一來，您可以管理一組處理選單動作的程式碼，以及每一個繼承選單行為的子系類別。
+
+
+如果您想要將選單項目新增至其中一個子系 Activity，請覆寫該 Activity 中的 {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()}。呼叫 {@code super.onCreateOptionsMenu(menu)} 以建立原始的選單項目，然後利用
+{@link
+android.view.Menu#add(int,int,int,int) menu.add()} 來新增選單項目。您也可以覆寫個別選單項目的超級類別行為。
+</p>
+
+
+<h3 id="ChangingTheMenu">在執行階段變更選單項目</h3>
+
+<p>系統呼叫 {@link android.app.Activity#onCreateOptionsMenu(Menu)
+onCreateOptionsMenu()} 之後，會保留您填入的 {@link android.view.Menu} 執行個體，除非該選單因某種理由而變無效，否則不會再次呼叫
+{@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()}。
+不過，{@link
+android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} 應該只用來建立初始選單狀態，您不要在 Activity 生命週期間用來進行變更。
+</p>
+
+<p>如果您想要根據 Activity 生命週期當中發生的事件來修改選項選單，您可以使用
+{@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()} 方法這麼做。
+這個方法會將目前存在的
+{@link android.view.Menu} 物件傳送給您加以修改，例如新增、移除或停用項目
+(片段也會提供 {@link
+android.app.Fragment#onPrepareOptionsMenu onPrepareOptionsMenu()} 回呼)。</p>
+
+<p>在 Android 2.3.x 以下版本，每當使用者開啟選項選單 (按下 [選單]<em></em>
+按鈕) 時，系統都會呼叫 {@link
+android.app.Activity#onPrepareOptionsMenu(Menu)
+onPrepareOptionsMenu()}。</p>
+
+<p>在 Android 3.0 以上版本，當選單項目顯示在動作列時會一律將選項選單視為開啟。
+當事件發生且您想要執行選單更新時，您必須呼叫
+{@link android.app.Activity#invalidateOptionsMenu invalidateOptionsMenu()}，以要求系統呼叫
+{@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}。</p>
+
+<p class="note"><strong>注意：</strong>您不應該根據目前處於焦點狀態的
+{@link android.view.View}，變更選項選單中的項目。
+處於輕觸模式 (使用者未使用軌跡球或導覽用的方向鍵) 時，檢視無法成為焦點，因此您不應該使用焦點當成修改選項選單中項目時的依據。
+
+如果您想要在 {@link
+android.view.View} 提供具內容相關性的選單項目，請使用<a href="#context-menu">內容選單</a>。</p>
+
+
+
+
+<h2 id="context-menu">建立內容關聯選單</h2>
+
+<div class="figure" style="width:420px;margin-top:-1em">
+  <img src="{@docRoot}images/ui/menu-context.png" alt="" />
+  <p class="img-caption"><strong>圖 3.</strong>浮動內容選單的螢幕擷取畫面 (左) 與內容關聯動作列 (右)。
+</p>
+</div>
+
+<p>內容關聯選單提供的動作會影響 UI 中的特定項或內容畫面。
+
+您可以為任何檢視提供內容選單，但它們通常用於使用者能直接對各項目執行動作的 {@link
+android.widget.ListView}、{@link android.widget.GridView} 或其他檢視集合中的項目。</p>
+
+<p>您有兩種方式可提供內容關聯動作：</p>
+<ul>
+  <li>在<a href="#FloatingContextMenu">浮動內容選單</a>中。當使用者長按 (按住不放) 某個宣告支援內容選單的檢視時，選單會顯示為浮動的選單項目清單 (類似於對話方塊)。
+
+使用者一次可對一個項目執行內容關聯動作。
+</li>
+
+  <li>在<a href="#CAB">內容關聯動作模式</a>中。此模式是
+{@link android.view.ActionMode} 的系統實作，在畫面頂端將會影響將所選項目的動作項目顯示在「內容關聯動作列」<em></em>。
+此模式處於使用中時，使用者能一次對多個項目執行某一動作 (如果您的應用程式允許的話)。
+</li>
+</ul>
+
+<p class="note"><strong>注意：</strong>Android 3.0 (API 級別 11) 以上版本可以使用內容關聯動作模式，此模式同時是可以顯示內容關聯動作時的偏好技術。
+
+如果您的應用程式支援 3.0 以下版本，您應該在這類裝置上切換為浮動內容選單。
+</p>
+
+
+<h3 id="FloatingContextMenu">建立浮動內容選單</h3>
+
+<p>如何提供浮動內容選單：</p>
+<ol>
+  <li>呼叫 {@link android.app.Activity#registerForContextMenu(View) registerForContextMenu()} 並將 {@link android.view.View} 傳送給它，向應該建立關聯的內容選單註冊 {@link android.view.View}。
+
+
+  <p>如果您的 Activity 使用 {@link android.widget.ListView} 或 {@link android.widget.GridView}，且您希望每個項目都提供相同的內容選單，可將 {@link android.widget.ListView} 或 {@link android.widget.GridView} 傳送至 {@link
+android.app.Activity#registerForContextMenu(View) registerForContextMenu()} 來註冊內容選單的所有項目。
+
+</p>
+</li>
+
+  <li>在您的 {@link android.app.Activity} 或 {@link android.app.Fragment} 中實作 {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()} 方法。
+
+  <p>當註冊的檢視收到長按事件時，系統會呼叫 {@link
+android.view.View.OnCreateContextMenuListener#onCreateContextMenu onCreateContextMenu()} 方法。
+您可以在這裡定義選單項目，方法通常是擴大選單資源。例如：
+</p>
+<pre>
+&#64;Override
+public void onCreateContextMenu(ContextMenu menu, View v,
+                                ContextMenuInfo menuInfo) {
+    super.onCreateContextMenu(menu, v, menuInfo);
+    MenuInflater inflater = getMenuInflater();
+    inflater.inflate(R.menu.context_menu, menu);
+}
+</pre>
+
+<p>{@link android.view.MenuInflater} 可讓您從<a href="{@docRoot}guide/topics/resources/menu-resource.html">選單資源</a>擴大內容選單。回呼方法參數包括使用者選取的
+{@link android.view.View}，以及提供其他所選取項目相關資訊的 {@link android.view.ContextMenu.ContextMenuInfo} 物件。
+
+如果 Activity 有數個分別提供不同內容選單的檢視，您可以使用這些參數來決定要擴大的內容選單。
+
+</p>
+</li>
+
+<li>實作 {@link android.app.Activity#onContextItemSelected(MenuItem)
+onContextItemSelected()}。
+  <p>當使用者選取選單項目時，系統會呼叫此方法，以便您執行適當的動作。
+例如：</p>
+
+<pre>
+&#64;Override
+public boolean onContextItemSelected(MenuItem item) {
+    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
+    switch (item.getItemId()) {
+        case R.id.edit:
+            editNote(info.id);
+            return true;
+        case R.id.delete:
+            deleteNote(info.id);
+            return true;
+        default:
+            return super.onContextItemSelected(item);
+    }
+}
+</pre>
+
+<p>{@link android.view.MenuItem#getItemId()} 方法會查詢選定選單項目的 ID，使用
+{@code
+android:id} 屬性在 XML 中指派給各個選單項目，如<a href="#xml">在 XML 中定義選單</a>一節所述。
+</p>
+
+<p>當您成功處理選單項目時會傳回 {@code true}。如果您不處理選單項目，請將選單項目傳送至超級類別實作。
+如果您的 Activity 包括片段，該 Activity 會先收到此回呼。
+在不處理時呼叫超級類別，系統就可以一次一個 (依片段的新增順序) 將事件傳送至各片段中的個別回呼方法，直到傳回
+{@code true} 或 {@code false}。
+(
+{@link android.app.Activity} 與 {@code android.app.Fragment} 的預設實作會傳回 {@code
+false}，因此當您不處理時，務必要呼叫超級類別。)</p>
+</li>
+</ol>
+
+
+<h3 id="CAB">使用內容關聯動作模式</h3>
+
+<p>內容關聯動作模式是 {@link android.view.ActionMode} 的系統實作，執行內容關聯動作時著重於與使用者互動。
+當使用者選取項目而啟用此模式時，「內容關聯動作列」<em></em>會出現在畫面頂端，呈現使用者可在目前所選項目上執行的動作。
+
+此模式啟用時，使用者能選取多個項目 (如果您允許的話)、取消選取項目，還可以在 Activity 內繼續瀏覽 (在您允許的範圍內)。
+
+當使用者取消選取所有項目、按下 [後退] 按鈕，或選取該列左側的[完成]<em></em> 按鈕時，動作模式會停用且內容　關聯　動作列也會消失。
+
+</p>
+
+<p class="note"><strong>注意：</strong>內容關聯動作列不一定要與<a href="{@docRoot}guide/topics/ui/actionbar.html">動作列</a>關聯。
+即使內容相關動作列在視覺上覆蓋動作列的位置，兩者依然獨立運作。
+
+</p>
+
+<p>如果您在為 Android 3.0 (API 級別 11) 以上版本進行開發，您應使用內容關聯動作模式來呈現內容動作，而不是<a href="#FloatingContextMenu">浮動內容選單</a>。
+</p>
+
+<p>針對提供內容相關動作的檢視，您應該就下列兩種事件之一 (或兩者) 呼叫內容關聯動作模式：
+</p>
+<ul>
+  <li>使用者長按檢視。</li>
+  <li>使用者選取檢視內的核取方塊或類似 UI 元件。</li>
+</ul>
+
+<p>應用程式如何呼叫內容關聯動作模式以及如何定義每個動作的行為，視您的設計而定。
+基本上可分為兩種設計：</p>
+<ul>
+  <li>在個別的任意檢視上執行內容關聯動作。</li>
+  <li>針對 {@link
+android.widget.ListView} 或 {@link android.widget.GridView} (允許使用者選取多個項目並對全部執行同一動作) 中的項目群組批次執行內容關聯動作。
+</li>
+</ul>
+
+<p>下列各節說明每種情況所需的設定。</p>
+
+
+<h4 id="CABforViews">為個別的檢視啟用內容關離動作模式</h4>
+
+<p>如果您只有在使用者選取特定檢視時，才想要呼叫內容關聯動作模式，建議您採取以下動作：
+</p>
+<ol>
+  <li>實作 {@link android.view.ActionMode.Callback} 介面。在它的回呼方法中，您可以指定內容相關動作列的動作、回應動作項目的點擊事件，以及處理動作模式的其他生命週期事件。
+
+</li>
+  <li>當您想要顯示該列時 (例如當使用者長按檢視時)，可呼叫 {@link android.app.Activity#startActionMode startActionMode()}。
+</li>
+</ol>
+
+<p>例如：</p>
+
+<ol>
+  <li>實作 {@link android.view.ActionMode.Callback ActionMode.Callback} 介面：
+<pre>
+private ActionMode.Callback mActionModeCallback = new ActionMode.Callback() {
+
+    // Called when the action mode is created; startActionMode() was called
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate a menu resource providing context menu items
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context_menu, menu);
+        return true;
+    }
+
+    // Called each time the action mode is shown. Always called after onCreateActionMode, but
+    // may be called multiple times if the mode is invalidated.
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        return false; // Return false if nothing is done
+    }
+
+    // Called when the user selects a contextual menu item
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        switch (item.getItemId()) {
+            case R.id.menu_share:
+                shareCurrentItem();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    // Called when the user exits the action mode
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        mActionMode = null;
+    }
+};
+</pre>
+
+<p>請注意，這些事件回呼幾乎和<a href="#options-menu">選項選單</a>的回呼一模一樣，只是每一個都會傳送與事件關聯的 {@link
+android.view.ActionMode} 物件。您可以使用 {@link
+android.view.ActionMode} API 對 CAB 進行各種變更，例如使用
+{@link android.view.ActionMode#setTitle setTitle()} 與 {@link
+android.view.ActionMode#setSubtitle setSubtitle()} 修改標題與子標題 (指出已選取的項目數量相當有用)。
+</p>
+
+<p>同時請注意，當動作模式終結時，上述範例會將 {@code mActionMode} 變數設為 null。
+在下個步驟中，您將看到它是如何初始化，以及如何儲存 Activity 或片段中的成員變數，非常實用。
+</p>
+</li>
+
+  <li>呼叫 {@link android.app.Activity#startActionMode startActionMode()} (可以的話) 以啟用內容關聯動作模式，例如回應長按 {@link
+android.view.View}。
+</p>
+
+<pre>
+someView.setOnLongClickListener(new View.OnLongClickListener() {
+    // Called when the user long-clicks on someView
+    public boolean onLongClick(View view) {
+        if (mActionMode != null) {
+            return false;
+        }
+
+        // Start the CAB using the ActionMode.Callback defined above
+        mActionMode = getActivity().startActionMode(mActionModeCallback);
+        view.setSelected(true);
+        return true;
+    }
+});
+</pre>
+
+<p>當您呼叫 {@link android.app.Activity#startActionMode startActionMode()} 時，系統會傳回建立的
+{@link android.view.ActionMode}。只要將此儲存在成員變數中，您就可以變更內容關聯動作列以回應其他事件。
+在上述範例中，
+{@link android.view.ActionMode} 是用來確保不會重新建立已在使用中的 {@link android.view.ActionMode} 執行個體，方法是在將動作模式啟動之前，檢查成員是否為 null。
+
+</p>
+</li>
+</ol>
+
+
+
+<h4 id="CABforListView">啟用 ListView 或 GridView 中的批次內容相關動作</h4>
+
+<p>如果您在 {@link android.widget.ListView} 或 {@link
+android.widget.GridView} (或 {@link android.widget.AbsListView} 的另一個延伸) 中有一系列項目，且想要允許使用者執行批次動作，請進行以下動作：
+</p>
+
+<ul>
+  <li>實作 {@link android.widget.AbsListView.MultiChoiceModeListener} 介面並使用
+{@link android.widget.AbsListView#setMultiChoiceModeListener
+setMultiChoiceModeListener()} 加以設定以供檢視群組使用。在接聽器的回呼方法中，您可以指定內容相關動作列的動作、回應動作項目的點擊事件，以及處理從 {@link android.view.ActionMode.Callback} 介面繼承的其他回呼。
+
+</li>
+
+  <li>使用 {@link
+android.widget.AbsListView#CHOICE_MODE_MULTIPLE_MODAL} 引數呼叫 {@link android.widget.AbsListView#setChoiceMode setChoiceMode()}。</li>
+</ul>
+
+<p>例如：</p>
+
+<pre>
+ListView listView = getListView();
+listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
+listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
+
+    &#64;Override
+    public void onItemCheckedStateChanged(ActionMode mode, int position,
+                                          long id, boolean checked) {
+        // Here you can do something when items are selected/de-selected,
+        // such as update the title in the CAB
+    }
+
+    &#64;Override
+    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
+        // Respond to clicks on the actions in the CAB
+        switch (item.getItemId()) {
+            case R.id.menu_delete:
+                deleteSelectedItems();
+                mode.finish(); // Action picked, so close the CAB
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    &#64;Override
+    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+        // Inflate the menu for the CAB
+        MenuInflater inflater = mode.getMenuInflater();
+        inflater.inflate(R.menu.context, menu);
+        return true;
+    }
+
+    &#64;Override
+    public void onDestroyActionMode(ActionMode mode) {
+        // Here you can make any necessary updates to the activity when
+        // the CAB is removed. By default, selected items are deselected/unchecked.
+    }
+
+    &#64;Override
+    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
+        // Here you can perform updates to the CAB due to
+        // an {@link android.view.ActionMode#invalidate} request
+        return false;
+    }
+});
+</pre>
+
+<p>這樣一來，當使用者以長按的方式選取項目時，系統就會呼叫 {@link
+android.widget.AbsListView.MultiChoiceModeListener#onCreateActionMode onCreateActionMode()}
+方法，並顯示包含指定動作的內容相關動作列。可以看見內容關聯動作列時，使用者即可選取其他項目。
+</p>
+
+<p>在某些情況下，內容關聯動作提供一般動作項目，因為使用者可能未發現有長按行為，所以您可能希望新增核取方塊或類似的 UI 元素，讓他們選取項目。
+
+當使用者選取核取方塊時，您可以使用 {@link android.widget.AbsListView#setItemChecked setItemChecked()} 將個別的清單項目設定成已核取狀態，以呼叫內容關聯動作模式。
+
+</p>
+
+
+
+
+<h2 id="PopupMenu">建立彈出式選單</h2>
+
+<div class="figure" style="width:220px">
+<img src="{@docRoot}images/ui/popupmenu.png" alt="" />
+<p><strong>圖 4.</strong>Gmail 應用程式中的彈出式選單錨定於右上角的溢出按鈕。
+</p>
+</div>
+
+<p>{@link android.widget.PopupMenu} 是錨定於 {@link android.view.View} 的強制回應選單。
+有空間的畫會顯示在錨定檢視下方或檢視上方。適合用途：</p>
+<ul>
+  <li>為與特定內容關聯動作提供溢出樣式選單 (例如 Gmail 的電子郵件標頭，如圖 4 所示)。<em></em>
+
+    <p class="note"><strong>注意：</strong>內容選單一般用於會「影響」<em></em>所選取內容的動作，與這並不相同。
+對於會影響所選取內容的動作，請使用<a href="#CAB">內容關聯動作模式</a>或<a href="#FloatingContextMenu">浮動內容選單</a>。
+</p></li>
+  <li>提供命令句的第二部分 (例如，標示為「新增」的按鈕會產生包含不同「新增」選項的彈出式選單)。
+</li>
+  <li>提供類似於 {@link android.widget.Spinner} (不保留永續性選擇) 的下拉式清單。
+</li>
+</ul>
+
+
+<p class="note"><strong>注意：</strong> API 級別 11 以上版本才可以使用 {@link android.widget.PopupMenu}。
+</p>
+
+<p>如果您<a href="#xml">在 XML 中定義選單</a>，以下說明如何顯示彈出式選單：</p>
+<ol>
+  <li>透過其建構函式將 {@link android.widget.PopupMenu} 具現化，使用應錨定選單的目前應用程式
+{@link android.content.Context} 與 {@link android.view.View}。
+</li>
+  <li>使用 {@link android.view.MenuInflater} 將您的選單資源擴大成
+{@link
+android.widget.PopupMenu#getMenu() PopupMenu.getMenu()} 所傳回的 {@link android.view.Menu} 物件。針對 14 以上的 API 級別，您可以改用
+{@link android.widget.PopupMenu#inflate PopupMenu.inflate()}。</li>
+  <li>呼叫 {@link android.widget.PopupMenu#show() PopupMenu.show()}。</li>
+</ol>
+
+<p>例如，以下是含有 {@link android.R.attr#onClick android:onClick} 屬性可顯示彈出式選單的按鈕。
+</p>
+
+<pre>
+&lt;ImageButton
+    android:layout_width="wrap_content" 
+    android:layout_height="wrap_content" 
+    android:src="@drawable/ic_overflow_holo_dark"
+    android:contentDescription="@string/descr_overflow_button"
+    android:onClick="showPopup" />
+</pre>
+
+<p>接著，該 Activity 可以顯示彈出式選單，如下所示：</p>
+
+<pre>
+public void showPopup(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+    MenuInflater inflater = popup.getMenuInflater();
+    inflater.inflate(R.menu.actions, popup.getMenu());
+    popup.show();
+}
+</pre>
+
+<p>在 14 以上的 API 級別中，您可以利用 {@link
+android.widget.PopupMenu#inflate PopupMenu.inflate()} 將兩行結合來擴大選單。</p>
+
+<p>當使用者選取某項目或輕觸選單區域外時會關閉選單。
+您可以使用 {@link
+android.widget.PopupMenu.OnDismissListener} 來接聽關閉事件。</p>
+
+<h3 id="PopupEvents">處理點擊事件</h3>
+
+<p>如要在使用者選取選單項目時執行動作，您必須呼叫 {@link android.widget.PopupMenu#setOnMenuItemClickListener
+setOnMenuItemclickListener()} 來實作 {@link
+android.widget.PopupMenu.OnMenuItemClickListener} 介面並向您的 {@link
+android.widget.PopupMenu} 註冊。
+當使用者選取項目時，系統會在您的介面中呼叫 {@link
+android.widget.PopupMenu.OnMenuItemClickListener#onMenuItemClick onMenuItemClick()} 回呼。
+</p>
+
+<p>例如：</p>
+
+<pre>
+public void showMenu(View v) {
+    PopupMenu popup = new PopupMenu(this, v);
+
+    // This activity implements OnMenuItemClickListener
+    popup.setOnMenuItemClickListener(this);
+    popup.inflate(R.menu.actions);
+    popup.show();
+}
+
+&#64;Override
+public boolean onMenuItemClick(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.archive:
+            archive(item);
+            return true;
+        case R.id.delete:
+            delete(item);
+            return true;
+        default:
+            return false;
+    }
+}
+</pre>
+
+
+<h2 id="groups">建立選單群組</h2>
+
+<p>選單群組是指某些特性相同的選單項目集合。您可以利用群組：
+</p>
+<ul>
+  <li>透過 {@link android.view.Menu#setGroupVisible(int,boolean)
+setGroupVisible()} 來顯示或隱藏所有項目</li>
+  <li>透過 {@link android.view.Menu#setGroupEnabled(int,boolean)
+setGroupEnabled()} 來啟用或停用所有項目</li>
+  <li>透過 {@link
+android.view.Menu#setGroupCheckable(int,boolean,boolean) setGroupCheckable()} 指定是否可核取所有項目</li>
+</ul>
+
+<p>您可以將 {@code &lt;item&gt;} 元素堆疊在選單資源中的 {@code &lt;group&gt;}元素內，或使用 {@link
+android.view.Menu#add(int,int,int,int) add()} 方法指定群組 ID 來建立群組。
+</p>
+
+<p>以下是包含群組的範例選單資源：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;item android:id="@+id/menu_save"
+          android:icon="@drawable/menu_save"
+          android:title="@string/menu_save" /&gt;
+    &lt;!-- menu group --&gt;
+    &lt;group android:id="@+id/group_delete"&gt;
+        &lt;item android:id="@+id/menu_archive"
+              android:title="@string/menu_archive" /&gt;
+        &lt;item android:id="@+id/menu_delete"
+              android:title="@string/menu_delete" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>群組中的項目和第一個項目都會顯示在同一層，選單中的這三個項目都屬於同層級。
+不過，您可以參考群組 ID 並使用上方所述的方法，修改群組當中兩個項目的特性。
+系統也絕不會將群組的項目分離。
+例如，如果您針對每個項目宣告 {@code
+android:showAsAction="ifRoom"}，它們都會顯示在動作列中或顯示在動作溢出中。
+</p>
+
+
+<h3 id="checkable">使用可勾選的選單項目</h3>
+
+<div class="figure" style="width:200px">
+  <img src="{@docRoot}images/radio_buttons.png" height="333" alt="" />
+  <p class="img-caption"><strong>圖 5.</strong>包含可勾選項目的子選單螢幕擷取畫面。
+</p>
+</div>
+
+<p>對於獨立選項使用核取方塊，或對互斥選項群組使用選項按鈕，將選單當成開啟或關閉選項的介面，相當實用。
+
+圖 5 顯示的子選單包含能以圓形按鈕勾選的項目。
+</p>
+
+<p class="note"><strong>注意：</strong>圖示選單 (出自選項選單) 中的選單項目無法顯示核取方塊或選項按鈕。
+如果您選擇要將圖示選單中的項目設為可勾選，每當狀態變更時，您都必須切換圖示和/或文字，手動指出勾選狀態。
+
+</p>
+
+<p>您可以使用 {@code &lt;item&gt;} 元素中的 {@code
+android:checkable} 屬性，為個別的選單項目定義可勾選行為，或利用 {@code &lt;group&gt;} 元素中的 {@code android:checkableBehavior} 屬性來為整個群組定義。
+例如，此選單群組中的所有項目都可以利用選項按鈕勾選。
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+    &lt;group android:checkableBehavior="single"&gt;
+        &lt;item android:id="@+id/red"
+              android:title="@string/red" /&gt;
+        &lt;item android:id="@+id/blue"
+              android:title="@string/blue" /&gt;
+    &lt;/group&gt;
+&lt;/menu&gt;
+</pre>
+
+<p>{@code android:checkableBehavior} 屬性可接受其中一項：
+<dl>
+  <dt>{@code single}</dt>
+    <dd>只能勾選群組中的一個項目 (圓形按鈕)</dd>
+  <dt>{@code all}</dt>
+    <dd>可勾選所有項目 (核取方塊)</dd>
+  <dt>{@code none}</dt>
+    <dd>沒有任何項目可供勾選</dd>
+</dl>
+
+<p>您可以使用
+{@code &lt;item&gt;} 元素中的 {@code android:checked} 屬性將預設的勾選狀態套用至項目，並使用 {@link
+android.view.MenuItem#setChecked(boolean) setChecked()} 方法在程式碼中變更它。</p>
+
+<p>已選取可勾選項目時，系統會呼叫所選取個別項目的回呼方法 (例如 {@link android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()})。
+您必須在這裡設定核取方塊的狀態，原因是核取方塊或選項按鈕並不會自動變更其狀態。
+
+您可以利用 
+{@link android.view.MenuItem#isChecked()} 來查詢項目的目前狀態 (使用者選取它之前的狀態)，然後利用
+{@link android.view.MenuItem#setChecked(boolean) setChecked()} 來設定勾選狀態。例如：</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.vibrate:
+        case R.id.dont_vibrate:
+            if (item.isChecked()) item.setChecked(false);
+            else item.setChecked(true);
+            return true;
+        default:
+            return super.onOptionsItemSelected(item);
+    }
+}
+</pre>
+
+<p>如果您不以這種方式設定已勾選狀態，將無法在使用者選取時變更項目 (核取方塊或選項按鈕) 的可見狀態。
+
+當您確實設定狀態，Activity 會保留項目的已勾選狀態，當使用者稍後開啟選單時，即可看見您設定的已勾選狀態。
+
+</p>
+
+<p class="note"><strong>注意：</strong>可勾選的選單項目只能在各工作階段上使用，並不會在應用程式終結後儲存。
+
+如果想為使用者儲存特定應用程式設定，請使用<a href="{@docRoot}guide/topics/data/data-storage.html#pref">共用偏好設定</a>。
+</p>
+
+
+
+<h2 id="intents">根據意圖新增選單項目</h2>
+
+<p>有時候您會希望選單項目使用 {@link android.content.Intent}來啟動 Activity (不論是您的應用程式或另一應用程式中的 Activity)。
+當您知道想要使用的意圖，同時有應繼承該意圖的特定選單項目時，您可在使用者選取項目時才回呼的適當方法實作期間使用
+{@link android.app.Activity#startActivity(Intent) startActivity()} 執行該意圖 (例如 {@link
+android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} callback) 回呼)。
+
+</p>
+
+<p>不過，如果您不確定使用者的裝置是否包含可處理該意圖的應用程式，而新增可呼叫它的選單項目會導致選單項目無法運作，原因可能是該意圖不會解析成 Activity。
+
+
+為解決這個問題，當 Android 在處理您意圖的裝置上找到 Activity 時，Android 會讓您將選單項目動態新增至選單。
+</p>
+
+<p>如何根據接受意圖的可用 Activity 來新增選單項目：</p>
+<ol>
+  <li>定義類別為
+{@link android.content.Intent#CATEGORY_ALTERNATIVE} 和/或
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} 的意圖，再加上其他需求。</li>
+  <li>呼叫 {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+Menu.addIntentOptions()}。Android 接著會搜尋可執行該意圖的任何應用程式，並將其新增至您的選單。
+</li>
+</ol>
+
+<p>如果未安裝可滿足該意圖的應用程式，則不會新增任何選單項目。
+</p>
+
+<p class="note"><strong>注意：</strong>
+{@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} 是用來處理畫面上目前選取的元素。
+因此，請只在 {@link
+android.app.Activity#onCreateContextMenu(ContextMenu,View,ContextMenuInfo)
+onCreateContextMenu()} 中建立選單的情況下才使用。</p>
+
+<p>例如：</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu){
+    super.onCreateOptionsMenu(menu);
+
+    // Create an Intent that describes the requirements to fulfill, to be included
+    // in our menu. The offering app must include a category value of Intent.CATEGORY_ALTERNATIVE.
+    Intent intent = new Intent(null, dataUri);
+    intent.addCategory(Intent.CATEGORY_ALTERNATIVE);
+
+    // Search and populate the menu with acceptable offering applications.
+    menu.addIntentOptions(
+         R.id.intent_group,  // Menu group to which new items will be added
+         0,      // Unique item ID (none)
+         0,      // Order for the items (none)
+         this.getComponentName(),   // The current activity name
+         null,   // Specific items to place first (none)
+         intent, // Intent created above that describes our requirements
+         0,      // Additional flags to control items (none)
+         null);  // Array of MenuItems that correlate to specific items (none)
+
+    return true;
+}</pre>
+
+<p>找到的各個 Activity 提供的意圖篩選器如果與定義的意圖相符，就會新增選單項目，使用意圖篩選器的 <code>android:label</code> 中的值當成選單項目標題，並將應用程式圖示當成選單項目圖示。
+
+此外，
+{@link android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} 方法還會傳回新增的選單項目數量。</p>
+
+<p class="note"><strong>注意：</strong>當您呼叫 {@link
+android.view.Menu#addIntentOptions(int,int,int,ComponentName,Intent[],Intent,int,MenuItem[])
+addIntentOptions()} 時，它會覆寫第一個引數中所指定選單群組中的任何或所有選單項目。
+</p>
+
+
+<h3 id="AllowingToAdd">允許將 Activity 新增至其他選單</h3>
+
+<p>您也能向其他應用程式提供 Activity 的服務，這樣即可在其他應用程式的選單中包含您的應用程式 (與上述的角色顛倒)。
+</p>
+
+<p>如要包含在其他應用程式選單中，您必須照常定義意圖篩選器，但務必為意圖篩選器類別納入 
+{@link android.content.Intent#CATEGORY_ALTERNATIVE} 和/或 {@link android.content.Intent#CATEGORY_SELECTED_ALTERNATIVE} 值。
+
+例如：</p>
+<pre>
+&lt;intent-filter label="&#64;string/resize_image">
+    ...
+    &lt;category android:name="android.intent.category.ALTERNATIVE" />
+    &lt;category android:name="android.intent.category.SELECTED_ALTERNATIVE" />
+    ...
+&lt;/intent-filter>
+</pre>
+
+<p>如要進一步瞭解如何編寫意圖篩選器，請參閱<a href="/guide/components/intents-filters.html">意圖和意圖篩選器</a>。
+</p>
+
+<p>如需採用此技術的範例應用程式，請參閱 <a href="{@docRoot}resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html">NotePad</a> 範例程式碼。
+
+</p>
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/ui/notifiers/notifications.jd b/docs/html-intl/intl/zh-tw/guide/topics/ui/notifiers/notifications.jd
new file mode 100644
index 0000000..b853744
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/ui/notifiers/notifications.jd
@@ -0,0 +1,979 @@
+page.title=通知
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>本文件內容</h2>
+<ol>
+  <li><a href="#Design">設計注意事項</a></li>
+  <li><a href="#CreateNotification">建立通知</a>
+    <ol>
+      <li><a href="#Required">必要的通知內容</a></li>
+      <li><a href="#Optional">選用的通知內容和設定</a></li>
+      <li><a href="#Actions">通知動作</a></li>
+      <li><a href="#Priority">通知優先順序</a></li>
+      <li><a href="#SimpleNotification">建立簡易通知</a></li>
+      <li><a href="#ApplyStyle">將擴充版面配置套用至通知</a></li>
+      <li><a href="#Compatibility">處理相容性</a></li>
+    </ol>
+  </li>
+  <li><a href="#Managing">管理通知</a>
+    <ol>
+      <li><a href="#Updating">更新通知</a></li>
+      <li><a href="#Removing">移除通知</a></li>
+    </ol>
+  </li>
+  <li><a href="#NotificationResponse">啟動 Activity 時保留導覽</a>
+    <ol>
+      <li><a href="#DirectEntry">設定一般 Activity PendingIntent</a></li>
+      <li><a href="#ExtendedNotification">設定特殊 Activity PendingIntent</a></li>
+    </ol>
+  </li>
+  <li><a href="#Progress">在通知中顯示進度</a>
+    <ol>
+      <li><a href="#FixedProgress">顯示時間長度固定的進度指示器</a></li>
+      <li><a href="#ActivityIndicator">顯示持續性 Activity 指示器</a></li>
+    </ol>
+  </li>
+  <li><a href="#metadata">通知中繼資料</a></li>
+  <li><a href="#Heads-up">抬頭通知</a></li>
+  <li><a href="#lockscreenNotification">鎖定螢幕通知</a></li>
+    <ol>
+      <li><a href="#visibility">設定可見度</a></li>
+      <li><a href="#controllingMedia">在鎖定螢幕上控制媒體播放</a></li>
+    </ol>
+  <li><a href="#CustomNotification">自訂通知版面配置</a></li>
+</ol>
+
+    <h2>重要類別</h2>
+    <ol>
+        <li>{@link android.app.NotificationManager}</li>
+        <li>{@link android.support.v4.app.NotificationCompat}</li>
+    </ol>
+    <h2>相關影片</h2>
+    <ol>
+        <li>
+            <a href="http://www.youtube.com/watch?v=Yc8YrVc47TI&amp;feature=player_detailpage#t=1672s">4.1 版中的通知
+</a>
+        </li>
+    </ol>
+<h2>另請參閱</h2>
+<ol>
+    <li>
+        <a href="{@docRoot}design/patterns/notifications.html">Android 設計：通知</a>
+    </li>
+</ol>
+</div>
+</div>
+<p>
+    通知是您應用程式的一般 UI 以外，可以向使用者顯示的訊息。當您告訴系統發出通知時，它會先在「通知區域」<strong></strong>顯示為圖示。
+
+使用者可開啟「通知匣」<strong></strong>來查看通知的詳細資料。
+通知區域與通知匣都是使用者可隨時查看的系統控制區域。
+
+</p>
+<img id="figure1" src="{@docRoot}images/ui/notifications/notification_area.png" height="" alt="" />
+<p class="img-caption">
+    <strong>圖 1.</strong>通知區域中的通知。
+</p>
+<img id="figure2" src="{@docRoot}images/ui/notifications/notification_drawer.png" width="280px" alt="" />
+<p class="img-caption">
+    <strong>圖 2.</strong>通知匣中的通知。
+</p>
+
+<p class="note"><strong>注意：</strong>除非另外註明，否則本指南參照<a href="{@docRoot}tools/support-library/index.html">支援程式庫</a> 4 版中的 
+{@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} 類別。類別 {@link android.app.Notification.Builder Notification.Builder} 是在 Android 3.0 (API 級別 11) 新增。
+
+
+</p>
+
+<h2 id="Design">設計注意事項</h2>
+
+<p>做為 Android 使用者介面重要部分，通知有自己的設計指導方針。
+在 Android 5.0 (API 級別 21) 導入的質感設計變更，更是特別重要。
+如需詳情，請參閱<a href="{@docRoot}training/material/index.html">質感設計</a>。
+如要瞭解如何設計通知與其互動，請參閱<a href="{@docRoot}design/patterns/notifications.html">通知</a>設計指南。
+</p>
+
+<h2 id="CreateNotification">建立通知</h2>
+
+<p>您會為 
+{@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} 物件中的通知指定 UI 資訊與動作。
+如要建立通知本身，您可以呼叫 
+{@link android.support.v4.app.NotificationCompat.Builder#build NotificationCompat.Builder.build()}，其傳回的 
+{@link android.app.Notification} 物件會包含您的規格。如要發出通知，您可以呼叫 {@link android.app.NotificationManager#notify NotificationManager.notify()} 將 {@link android.app.Notification} 物件傳送至系統。
+
+</p>
+
+<h3 id="Required">必要的通知內容</h3>
+<p>
+    {@link android.app.Notification} 物件「必須」<em></em>包含下列項目：
+</p>
+<ul>
+    <li>
+        小圖示，由
+{@link android.support.v4.app.NotificationCompat.Builder#setSmallIcon setSmallIcon()} 設定
+    </li>
+    <li>
+        標題，由
+{@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()} 設定
+    </li>
+    <li>
+        詳情文字，由
+{@link android.support.v4.app.NotificationCompat.Builder#setContentText setContentText()} 設定
+    </li>
+</ul>
+<h3 id="Optional">選用的通知內容和設定</h3>
+<p>
+    所有其他的通知設定與內容均為選用。如需詳情，請參閱
+{@link android.support.v4.app.NotificationCompat.Builder} 的參考文件。
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Actions">通知動作</h3>
+<p>
+    動作雖屬選用性質，但您至少必須將一個動作新增至通知。
+    動作可讓使用者從通知直接移至您應用程式中的
+{@link android.app.Activity}，他們能在那裡查看一或多個事件或執行進一步工作。
+
+</p>
+<p>
+    通知可以提供多個動作。您應該一律定義會在使用者按一下通知時觸發的動作。
+這個動作通常會開啟您應用程式中的
+{@link android.app.Activity}。您也可以將按鈕新增至通知來執行其他動作，例如延遲鬧鐘或立即回應文字訊息。自 Android 4.1 起才提供此功能。
+
+如果您使用其他動作按鈕，也務必要在您應用程式的 {@link android.app.Activity} 中提供此功能。
+
+如需詳情，請參閱<a href="#Compatibility">處理相容性</a>。
+</p>
+<p>
+    在 {@link android.app.Notification} 內，動作本身是由
+{@link android.app.PendingIntent} 完成定義，其中包含的
+{@link android.content.Intent} 會啟動您應用程式中的
+{@link android.app.Activity}。如要將 
+{@link android.app.PendingIntent} 與手勢關聯，可呼叫
+{@link android.support.v4.app.NotificationCompat.Builder} 的適當方法。例如，如果當使用者按一下通知匣中的通知文字時，您希望啟動
+{@link android.app.Activity}，可呼叫
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent setContentIntent()} 來新增 {@link android.app.PendingIntent}。
+
+</p>
+<p>
+    最常見的動作情況就是在使用者按一下通知時啟動 {@link android.app.Activity}。
+您也可以在使用者關閉通知時啟動 {@link android.app.Activity}。
+在 Android 4.1 以上版本中，您可以透過動作按鈕啟動
+{@link android.app.Activity}。如需詳情，請參閱
+{@link android.support.v4.app.NotificationCompat.Builder} 的參考指南。
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Priority">通知優先順序</h3>
+<p>
+    如有需要，您可以設定通知的優先順序。優先順序就像是提示一樣，可讓裝置 UI 知道該如何顯示通知。
+
+    如要設定通知的優先順序，可呼叫 {@link
+android.support.v4.app.NotificationCompat.Builder#setPriority(int)
+NotificationCompat.Builder.setPriority()}，然後傳入其中一個 {@link
+android.support.v4.app.NotificationCompat} 優先順序常數。共有五個優先順序級別，範圍從
+{@link
+android.support.v4.app.NotificationCompat#PRIORITY_MIN} (-2) 到 {@link
+android.support.v4.app.NotificationCompat#PRIORITY_MAX} (2)。如未加以設定，優先順序會預設為
+{@link
+android.support.v4.app.NotificationCompat#PRIORITY_DEFAULT} (0)。
+</p>
+<p> 如要瞭解如何設定適當的優先順序級別，請參閱<a href="{@docRoot}design/patterns/notifications.html">通知</a>設計指南中的「正確地設定及管理通知優先順序」。
+
+
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="SimpleNotification">建立簡易通知</h3>
+<p>
+    下列程式碼片段說明簡易的通知，指定要在使用者按一下通知時開啟的 Activity。
+請注意，以下程式碼會建立
+{@link android.support.v4.app.TaskStackBuilder} 物件，並使用此物件建立動作的
+{@link android.app.PendingIntent}。如要進一步瞭解這種模式，請參閱<a href="#NotificationResponse">啟動 Activity 時保留導覽</a>：
+
+
+</p>
+<pre>
+NotificationCompat.Builder mBuilder =
+        new NotificationCompat.Builder(this)
+        .setSmallIcon(R.drawable.notification_icon)
+        .setContentTitle("My notification")
+        .setContentText("Hello World!");
+// Creates an explicit intent for an Activity in your app
+Intent resultIntent = new Intent(this, ResultActivity.class);
+
+// The stack builder object will contain an artificial back stack for the
+// started Activity.
+// This ensures that navigating backward from the Activity leads out of
+// your application to the Home screen.
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack for the Intent (but not the Intent itself)
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent that starts the Activity to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(
+            0,
+            PendingIntent.FLAG_UPDATE_CURRENT
+        );
+mBuilder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// mId allows you to update the notification later on.
+mNotificationManager.notify(mId, mBuilder.build());
+</pre>
+<p>這樣一來，您的使用者就會收到通知。</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ApplyStyle">將擴充版面配置套用至通知</h3>
+<p>
+    如要讓通知顯示在擴充的檢視中，請先建立含有您所需一般檢視選項的
+{@link android.support.v4.app.NotificationCompat.Builder} 物件。
+接著，將擴充版面配置物件當成引數，呼叫 {@link android.support.v4.app.NotificationCompat.Builder#setStyle
+Builder.setStyle()}。
+</p>
+<p>
+    請記住，Android 4.1 以下版本平台不支援擴充通知。如要進一步瞭解如何處理 Android 4.1 以下版本平台的通知，請參閱<a href="#Compatibility">處理相容性</a>。
+
+
+</p>
+<p>
+    例如，下列程式碼片段示範如何更改上述程式碼片段中建立的通知，以使用擴充版面配置：
+
+</p>
+<pre>
+NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
+    .setSmallIcon(R.drawable.notification_icon)
+    .setContentTitle("Event tracker")
+    .setContentText("Events received")
+NotificationCompat.InboxStyle inboxStyle =
+        new NotificationCompat.InboxStyle();
+String[] events = new String[6];
+// Sets a title for the Inbox in expanded layout
+inboxStyle.setBigContentTitle("Event tracker details:");
+...
+// Moves events into the expanded layout
+for (int i=0; i &lt; events.length; i++) {
+
+    inboxStyle.addLine(events[i]);
+}
+// Moves the expanded layout object into the notification object.
+mBuilder.setStyle(inBoxStyle);
+...
+// Issue the notification here.
+</pre>
+
+<h3 id="Compatibility">處理相容性</h3>
+
+<p>
+    即使支援程式庫類別 {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} 中有設定這些功能的方法，特定版本也不一定能使用所有通知功能。
+
+
+    例如，取決於擴充通知的動作按鈕，只能在 Android 4.1 以上版本中顯示，原因是擴充通知本身只能在 Android 4.1 以上版本中使用。
+
+
+</p>
+<p>
+    為確保能有最佳相容性，可利用
+{@link android.support.v4.app.NotificationCompat NotificationCompat} 與其子類別來建立通知，特別是
+{@link android.support.v4.app.NotificationCompat.Builder
+NotificationCompat.Builder}。此外，實作通知時，請按照下列程序操作：
+</p>
+<ol>
+    <li>
+        不論使用者所用的版本為何，請向所有使用者提供所有所有通知功能。
+如要這麼做，請驗證可從您應用程式的
+{@link android.app.Activity} 使用所有功能。您可能會想要新增
+{@link android.app.Activity} 來執行此動作。
+        <p>
+            例如，如果您想要使用
+{@link android.support.v4.app.NotificationCompat.Builder#addAction addAction()}
+ 以提供可停止和開始媒體播放的控制項，可先在您應用程式的
+{@link android.app.Activity} 中實作此控制項。
+        </p>
+    </li>
+    <li>
+        藉由在使用者按一下通知時啟動功能，可確保所有使用者都能使用 {@link android.app.Activity} 中的功能。
+如要這樣做，請為 {@link android.app.Activity} 建立 {@link android.app.PendingIntent}。
+
+呼叫
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+setContentIntent()} 以將 {@link android.app.PendingIntent} 新增至通知。
+    </li>
+    <li>
+        現在，可以將您想要使用的擴充通知功能新增至通知。請記住，您新增的任何功能也必須能在使用者點選通知時所啟動的
+{@link android.app.Activity} 中使用。
+
+    </li>
+</ol>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Managing">管理通知</h2>
+<p>
+    當您必須對相同類型的事件發出多次通知時，請避免建立全新的通知。
+您應該考慮變更或新增 (或兩者) 就有通知的某些值來加以更新。
+
+</p>
+<p>
+    例如，Gmail 藉由新增其未讀訊息計數並將每封電子郵件的摘要新增至通知，藉此通知使用者新電子郵件已送達。
+而這稱為「堆疊」通知。詳情請參閱<a href="{@docRoot}design/patterns/notifications.html">通知</a>設計指南。
+
+
+</p>
+<p class="note">
+    <strong>注意：</strong>此 Gmail 功能需要「收件匣」擴充版面配置，也屬於 Android 4.1 以上版本才能使用的擴充通知功能。
+
+</p>
+<p>
+    以下各節說明如何更新及移除通知。
+</p>
+<h3 id="Updating">更新通知</h3>
+<p>
+    藉由呼叫
+{@link android.app.NotificationManager#notify(int, android.app.Notification) NotificationManager.notify()} 連同通知 ID 一起發出，即可將通知設定成可以更新。
+    如要在發出此通知後加以更新，可以更新或建立
+{@link android.support.v4.app.NotificationCompat.Builder} 物件，從中建置
+{@link android.app.Notification} 物件，並將
+{@link android.app.Notification} 連同您先前使用的相同 ID 一起發出。如果仍可看見先前的通知，系統會更新 {@link android.app.Notification} 物件內容中的通知。
+
+如果已關閉先前的通知，會改為建立新的通知。
+
+</p>
+<p>
+    以下程式碼片段示範如何更新通知以反映發生的事件數目。
+以堆疊通知的方式顯示摘要：
+</p>
+<pre>
+mNotificationManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Sets an ID for the notification, so it can be updated
+int notifyID = 1;
+mNotifyBuilder = new NotificationCompat.Builder(this)
+    .setContentTitle("New Message")
+    .setContentText("You've received new messages.")
+    .setSmallIcon(R.drawable.ic_notify_status)
+numMessages = 0;
+// Start of a loop that processes data and then notifies the user
+...
+    mNotifyBuilder.setContentText(currentText)
+        .setNumber(++numMessages);
+    // Because the ID remains unchanged, the existing notification is
+    // updated.
+    mNotificationManager.notify(
+            notifyID,
+            mNotifyBuilder.build());
+...
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="Removing">移除通知</h3>
+<p>
+    下列其中一個情況發生之前，都會看見通知：
+</p>
+<ul>
+    <li>
+        使用者個別關閉通知，或透過「全部清除」的方式關閉通知 (如果可以清除通知的話)。
+
+    </li>
+    <li>
+        使用者按一下通知，而您在建立通知時呼叫
+{@link android.support.v4.app.NotificationCompat.Builder#setAutoCancel setAutoCancel()}。
+
+    </li>
+    <li>
+        您對特定通知 ID 呼叫 {@link android.app.NotificationManager#cancel(int) cancel()}。這種方法也會刪除進行中的通知。
+
+    </li>
+    <li>
+        您呼叫 {@link android.app.NotificationManager#cancelAll() cancelAll()}，將先前發出的所有通知移除。
+
+    </li>
+</ul>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="NotificationResponse">啟動 Activity 時保留導覽</h2>
+<p>
+    當您從通知啟動 {@link android.app.Activity} 時，您必須保留使用者預期的導覽體驗。
+按一下  <i>[返回]</i> 應可將使用者從應用程式的一般工作流程帶回主螢幕，而按一下 
+ <i>[近期記錄]</i> 應會將
+{@link android.app.Activity} 顯示為個別的工作。如要保留導覽體驗，請以全新的工作啟動
+{@link android.app.Activity}。您該如何設定
+{@link android.app.PendingIntent} 以取得全新工作，取決於即將啟動的
+{@link android.app.Activity} 屬性。一般有兩種情況：
+</p>
+<dl>
+    <dt>
+        一般 Activity
+    </dt>
+    <dd>
+        您即將啟動的 {@link android.app.Activity} 屬於應用程式的一般工作流程。
+在這種情況下，設定 {@link android.app.PendingIntent}以啟動全新工作，再連同返回堆疊一起提供 {@link android.app.PendingIntent}，可再次產生應用程式的一般
+
+ <i>返回</i> 行為。
+        <p>
+            Gmail 應用程式的通知可示範這種情況。當您點選某一封電子郵件訊息的通知後，您會看到訊息本身。
+輕觸 [返回]<b></b>可將您從 Gmail 帶回主螢幕，就像您剛才從主螢幕進入 Gmail，而不是從通知進入。
+
+
+        </p>
+        <p>
+            不論您所在的應用程式為何，當您輕觸通知時，都會發生這種情況。
+例如，如果您在 Gmail 撰寫訊息，而您點選某一封電子郵件的通知，就會立即前往該封電子郵件。
+輕觸  <i>[返回]</i>
+            會將您帶往收件匣，然後再到主螢幕，而不是到您正在撰寫的訊息。
+
+        </p>
+    </dd>
+    <dt>
+        特殊 Activity
+    </dt>
+    <dd>
+        只有從通知啟動這個 {@link android.app.Activity} 時，使用者才會看到它。
+        在某種意義上，{@link android.app.Activity}藉由提供難以在通知本身顯示的資訊來擴充通知。
+針對這種情況，請設定
+{@link android.app.PendingIntent} 以全新工作啟動。您不必建立返回堆疊，原因是啟動的
+{@link android.app.Activity} 不屬於應用程式的 Activity 流程。
+按一下  <i>[返回]</i> 還是會將使用者帶回主螢幕。
+
+    </dd>
+</dl>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="DirectEntry">設定一般 Activity PendingIntent</h3>
+<p>
+    如要設定會啟動直接項目
+{@link android.app.Activity} 的 {@link android.app.PendingIntent}，請按照下列步驟操作：
+</p>
+<ol>
+    <li>
+        在宣示說明中定義您應用程式的 {@link android.app.Activity} 階層。
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                新增 Android 4.0.3 以下版本的支援。如要這樣做，請將
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html">&lt;meta-data&gt;</a></code> 元素新增為
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 的下層物件，以指定您要啟動
+{@link android.app.Activity} 的上層物件。
+
+                <p>
+                    針對此元素設定
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a>="android.support.PARENT_ACTIVITY"</code>。
+                    設定
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#val">android:value</a>="&lt;parent_activity_name&gt;"</code>，其中 <code>&lt;parent_activity_name&gt;</code> 是上層
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 元素的
+<code><a href="{@docRoot}guide/topics/manifest/meta-data-element.html#nm">android:name</a></code> 值。
+
+
+如需範例，請參閱下列 XML。
+                </p>
+            </li>
+            <li>
+                此外您還需要新增 Android 4.1 以上版本的支援。為此，請將 
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#parent">android:parentActivityName</a></code> 屬性新增到您要啟動 {@link android.app.Activity} 的
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 元素。
+
+
+            </li>
+        </ol>
+        <p>
+            最後的 XML 看起來會如下所示：
+        </p>
+<pre>
+&lt;activity
+    android:name=".MainActivity"
+    android:label="&#64;string/app_name" &gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MAIN" /&gt;
+        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+&lt;activity
+    android:name=".ResultActivity"
+    android:parentActivityName=".MainActivity"&gt;
+    &lt;meta-data
+        android:name="android.support.PARENT_ACTIVITY"
+        android:value=".MainActivity"/&gt;
+&lt;/activity&gt;
+</pre>
+    </li>
+    <li>
+        根據啟動
+{@link android.app.Activity} 的 {@link android.content.Intent} 建立返回堆疊：
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                建立 {@link android.content.Intent} 以啟動 {@link android.app.Activity}。
+            </li>
+            <li>
+                呼叫 {@link android.app.TaskStackBuilder#create
+TaskStackBuilder.create()} 來建立堆疊建立器。
+            </li>
+            <li>
+                呼叫
+{@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()} 將返回堆疊新增至堆疊建立器。
+                對於您在宣示說明中所定義階層中的每個 {@link android.app.Activity}
+而言，返回堆疊包含會啟動
+{@link android.app.Activity} 的 {@link android.content.Intent} 物件。此方法也會新增以全新工作啟動堆疊的旗標。
+
+                <p class="note">
+                    <strong>注意：</strong>雖然
+{@link android.support.v4.app.TaskStackBuilder#addParentStack addParentStack()}的引數是參考啟動的 {@link android.app.Activity}，但呼叫的方法不會新增會啟動
+{@link android.app.Activity} 的
+{@link android.content.Intent}，
+這項工作是在下個步驟中完成。
+                </p>
+            </li>
+            <li>
+                呼叫
+{@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()} 來新增會從通知啟動 {@link android.app.Activity} 的 {@link android.content.Intent}。
+
+                將您在第一個步驟中建立的 {@link android.content.Intent} 當成
+{@link android.support.v4.app.TaskStackBuilder#addNextIntent addNextIntent()} 的引數傳送。
+
+            </li>
+            <li>
+                如有必要，呼叫
+{@link android.support.v4.app.TaskStackBuilder#editIntentAt
+TaskStackBuilder.editIntentAt()} 在堆疊上將引數新增至 {@link android.content.Intent} 物件。當使用者使用以下方式導覽時，有必要確保目標
+{@link android.app.Activity} 可顯示有意義的資料：
+ <i>返回</i>。
+            </li>
+            <li>
+                呼叫
+{@link android.support.v4.app.TaskStackBuilder#getPendingIntent getPendingIntent()} 來取得 {@link android.app.PendingIntent} 以用於此返回堆疊。
+                接著，您可以使用這個 {@link android.app.PendingIntent} 當成
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+setContentIntent()} 的引數。
+            </li>
+        </ol>
+     </li>
+</ol>
+<p>
+    以下程式碼片段會示範程序：
+</p>
+<pre>
+...
+Intent resultIntent = new Intent(this, ResultActivity.class);
+TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+// Adds the back stack
+stackBuilder.addParentStack(ResultActivity.class);
+// Adds the Intent to the top of the stack
+stackBuilder.addNextIntent(resultIntent);
+// Gets a PendingIntent containing the entire back stack
+PendingIntent resultPendingIntent =
+        stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
+...
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+builder.setContentIntent(resultPendingIntent);
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mNotificationManager.notify(id, builder.build());
+</pre>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ExtendedNotification">設定特殊 Activity PendingIntent</h3>
+<p>
+    下一節說明如何設定特殊 Activity
+{@link android.app.PendingIntent}。
+</p>
+<p>
+    特殊 {@link android.app.Activity} 不需要返回堆疊，因此您不必在宣示說明中定義其
+{@link android.app.Activity} 階層，也不用呼叫
+{@link android.support.v4.app.TaskStackBuilder#addParentStack  addParentStack()}來建置返回堆疊。
+
+而是使用宣示說明設定 {@link android.app.Activity} 工作選項，並呼叫
+{@link android.app.PendingIntent#getActivity getActivity()} 來建立 {@link android.app.PendingIntent}：
+
+</p>
+<ol>
+    <li>
+        在您的宣示說明中，將下列屬性新增至 {@link android.app.Activity} 的
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> 元素
+
+        <dl>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#nm">android:name</a>="<i>activityclass</i>"</code>
+            </dt>
+            <dd>
+                Activity 的完整類別名稱。
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#aff">android:taskAffinity</a>=""</code>
+            </dt>
+            <dd>
+                結合您在程式碼中設定的
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK} 旗標，可確保此 {@link android.app.Activity} 不會前往應用程式的預設工作。
+
+具有應用程式預設親和性的任何現有工作均不受影響。
+
+            </dd>
+            <dt>
+<code><a href="{@docRoot}guide/topics/manifest/activity-element.html#exclude">android:excludeFromRecents</a>="true"</code>
+            </dt>
+            <dd>
+                從 [近期記錄] 中排除新的工作，<i></i>，避免使用者意外返回瀏覽。
+
+            </dd>
+        </dl>
+        <p>
+            以下程式碼片段顯示該元素：
+        </p>
+<pre>
+&lt;activity
+    android:name=".ResultActivity"
+...
+    android:launchMode="singleTask"
+    android:taskAffinity=""
+    android:excludeFromRecents="true"&gt;
+&lt;/activity&gt;
+...
+</pre>
+    </li>
+    <li>
+        建置並發出通知：
+        <ol style="list-style-type: lower-alpha;">
+            <li>
+                建立會啟動 {@link android.app.Activity} 的{@link android.content.Intent}。
+
+            </li>
+            <li>
+                使用旗標
+{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK FLAG_ACTIVITY_NEW_TASK} 與
+{@link android.content.Intent#FLAG_ACTIVITY_CLEAR_TASK FLAG_ACTIVITY_CLEAR_TASK} 呼叫
+{@link android.content.Intent#setFlags setFlags()} 來設定 {@link android.app.Activity} 以全新的空白工作啟動。
+
+            </li>
+            <li>
+                為 {@link android.content.Intent} 設定您需要的任何其他選項。
+            </li>
+            <li>
+                呼叫 {@link android.app.PendingIntent#getActivity getActivity()} 從{@link android.content.Intent} 中建立 {@link android.app.PendingIntent}。
+
+                接著，您可以使用這個 {@link android.app.PendingIntent} 當成
+{@link android.support.v4.app.NotificationCompat.Builder#setContentIntent
+setContentIntent()} 的引數。
+            </li>
+        </ol>
+    <p>
+        以下程式碼片段會示範程序：
+    </p>
+<pre>
+// Instantiate a Builder object.
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+// Creates an Intent for the Activity
+Intent notifyIntent =
+        new Intent(this, ResultActivity.class);
+// Sets the Activity to start in a new, empty task
+notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
+                        | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+// Creates the PendingIntent
+PendingIntent notifyPendingIntent =
+        PendingIntent.getActivity(
+        this,
+        0,
+        notifyIntent,
+        PendingIntent.FLAG_UPDATE_CURRENT
+);
+
+// Puts the PendingIntent into the notification builder
+builder.setContentIntent(notifyPendingIntent);
+// Notifications are issued by sending them to the
+// NotificationManager system service.
+NotificationManager mNotificationManager =
+    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+// Builds an anonymous Notification object from the builder, and
+// passes it to the NotificationManager
+mNotificationManager.notify(id, builder.build());
+</pre>
+    </li>
+</ol>
+<!-- ------------------------------------------------------------------------------------------ -->
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="Progress">在通知中顯示進度</h2>
+<p>
+    通知可包含動畫進度指示器，向使用者顯示進行中操作的狀態。
+如果您隨時可預估操作花費的時間以及完成程度，可以使用形式「明確」的指示器 (進度列)。
+
+如果您無法預估操作的時間長度，請使用形式「不明確」的指示器 (Activity 指示器)。
+
+</p>
+<p>
+    進度指示器是使用平台的
+{@link android.widget.ProgressBar} 類別實作來顯示。
+</p>
+<p>
+    從 Android 4.0 開始，只要呼叫
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()} 即可在平台上使用進度指示器。對於先前的版本，您必須建立自己的自訂通知版面配置，當中還要包含 {@link android.widget.ProgressBar} 檢視。
+
+
+</p>
+<p>
+    下列各節說明如何使用
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()} 在通知中顯示進度。
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="FixedProgress">顯示時間長度固定的進度指示器</h3>
+<p>
+    如要顯示明確的進度列，請呼叫
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress
+setProgress(max, progress, false)} 將該列新增至您的通知，然後發出通知。隨著您的操作進行，
+<code>progress</code> 會增加並更新通知。操作結束時，
+<code>progress</code> 應該等於 <code>max</code>。呼叫
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress()} 的常見方法是將 <code>max</code> 設定為 100，然後新增 <code>progress</code> 做為操作的「完成百分比」值。
+
+
+</p>
+<p>
+    當操作完成時，您可以繼續顯示進度列或將其移除。不論是任何一種情況，都務必更新通知文字來指出操作已完成。
+
+    如要移除進度列，請呼叫 
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress
+setProgress(0, 0, false)}。例如：
+</p>
+<pre>
+...
+mNotifyManager =
+        (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+mBuilder = new NotificationCompat.Builder(this);
+mBuilder.setContentTitle("Picture Download")
+    .setContentText("Download in progress")
+    .setSmallIcon(R.drawable.ic_notification);
+// Start a lengthy operation in a background thread
+new Thread(
+    new Runnable() {
+        &#64;Override
+        public void run() {
+            int incr;
+            // Do the "lengthy" operation 20 times
+            for (incr = 0; incr &lt;= 100; incr+=5) {
+                    // Sets the progress indicator to a max value, the
+                    // current completion percentage, and "determinate"
+                    // state
+                    mBuilder.setProgress(100, incr, false);
+                    // Displays the progress bar for the first time.
+                    mNotifyManager.notify(0, mBuilder.build());
+                        // Sleeps the thread, simulating an operation
+                        // that takes time
+                        try {
+                            // Sleep for 5 seconds
+                            Thread.sleep(5*1000);
+                        } catch (InterruptedException e) {
+                            Log.d(TAG, "sleep failure");
+                        }
+            }
+            // When the loop is finished, updates the notification
+            mBuilder.setContentText("Download complete")
+            // Removes the progress bar
+                    .setProgress(0,0,false);
+            mNotifyManager.notify(ID, mBuilder.build());
+        }
+    }
+// Starts the thread by calling the run() method in its Runnable
+).start();
+</pre>
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h3 id="ActivityIndicator">顯示持續性 Activity 指示器</h3>
+<p>
+    如要顯示不明確的 Activity 指示器，可利用
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, true)}(可忽略前兩個引數) 將這類指示器新增至通知，然後發出通知。
+結果是指示器會有和進度列相同的樣式，只不過其中的動畫會持續播放。
+
+</p>
+<p>
+    在操作一開始發出通知。動畫會持續播放，直到您修改通知為止。
+操作完成時，可呼叫
+{@link android.support.v4.app.NotificationCompat.Builder#setProgress setProgress(0, 0, false)}，然後更新通知以移除 Activity 指示器。
+
+    請務必這樣做，不然即使操作完成後，動畫還是會繼續播放。此外，請務必變更通知文字來指出操作已完成。
+
+</p>
+<p>
+    如要查看 Activity 指示器如何運作，請參考上方的程式碼片段。找出下列幾行程式碼：
+</p>
+<pre>
+// Sets the progress indicator to a max value, the current completion
+// percentage, and "determinate" state
+mBuilder.setProgress(100, incr, false);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+<p>
+    用下列幾行取代您找到的程式碼：
+</p>
+<pre>
+ // Sets an activity indicator for an operation of indeterminate length
+mBuilder.setProgress(0, 0, true);
+// Issues the notification
+mNotifyManager.notify(0, mBuilder.build());
+</pre>
+
+<h2 id="metadata">通知中繼資料</h2>
+
+<p>通知會按照您以下列
+{@link android.support.v4.app.NotificationCompat.Builder} 方法指派的中繼資料加以排序：</p>
+
+<ul>
+    <li>當裝置處於「優先順序」模式時 (例如，如果您的通知代表來電、即時訊息或鬧鐘)，{@link android.support.v4.app.NotificationCompat.Builder#setCategory(java.lang.String) setCategory()} 會指示系統如何處理您的應用程式通知。
+
+</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#setPriority(int) setPriority()} 會將具有優先順序欄位的通知設定為 {@code PRIORITY_MAX} 或 {@code PRIORITY_HIGH}，而如果通知也有聲音或振動，就會以小型浮動視窗顯示。
+
+</li>
+    <li>{@link android.support.v4.app.NotificationCompat.Builder#addPerson(java.lang.String) addPerson()} 可讓您將人員名單新增至通知。
+您的應用程式可用這種方式通知系統，應該將來自指定人員的通知歸在同一組，或是將較重要人員發出的通知排序。
+
+</li>
+</ul>
+
+<div class="figure" style="width:230px">
+  <img src="{@docRoot}images/ui/notifications/heads-up.png" alt="" width="" height="" id="figure3" />
+  <p class="img-caption">
+    <strong>圖 3.</strong>顯示抬頭通知的全螢幕 Activity
+  </p>
+</div>
+
+<h2 id="Heads-up">抬頭通知</h2>
+
+<p>針對 Android 5.0 (API 級別 21)，當裝置處於使用中 (也就是裝置已解鎖且螢幕處於開啟) 時，通知能以小型浮動視窗顯示 (也稱為「抬頭」<em></em>通知)。
+
+這些通知類似於精簡版的通知，只不過抬頭通知也會顯示動作按鈕。
+
+使用者不需要離開目前的應用程式，就可以執行動作或關閉抬頭通知。
+</p>
+
+<p>可能觸發抬頭通知的範例情況包括：</p>
+
+<ul>
+  <li>使用者的 Activity 處於全螢幕模式 (應用程式使用
+{@link android.app.Notification#fullScreenIntent})；或者</li>
+  <li>通知擁有高優先順序，並使用鈴聲或振動
+</li>
+</ul>
+
+<h2 id="lockscreenNotification">鎖定螢幕通知</h2>
+
+<p>隨著 Android 5.0 (API 級別 21) 版發行，通知現在可以顯示在鎖定螢幕上。
+您的應用程式可使用此功能，提供媒體播放控制項和其他常見動作。
+使用者可以選擇是否透過 [設定] 在鎖定螢幕上顯示通知，您還可以指定是否能在鎖定螢幕上看見來自您應用程式的通知。
+</p>
+
+<h3 id="visibility">設定可見度</h3>
+
+<p>您的應用程式可控制安全鎖定螢幕上所顯示通知的詳細資料可見程度。
+您可以呼叫 {@link android.support.v4.app.NotificationCompat.Builder#setVisibility(int) setVisibility()}，然後指定下列其中一個值：
+</p>
+
+<ul>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC}：顯示通知的完整內容。
+</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_SECRET}：不在鎖定螢幕上顯示此通知的任何部分。
+</li>
+    <li>{@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE}：顯示基本資訊，例如通知的圖示與內容標題，但隱藏通知的完整內容。
+</li>
+</ul>
+
+<p>已設定 {@link android.support.v4.app.NotificationCompat#VISIBILITY_PRIVATE} 時，您還可提供可隱藏特定詳細資料的通知內容替代版本。
+例如，SMS 應用程式可能會顯示「您有 3 則簡訊」<em></em>，但隱藏訊息內容與寄件者。
+
+如要提供此替代通知，可先使用 {@link android.support.v4.app.NotificationCompat.Builder} 來建立替代通知。
+建立私人通知物件時，透過 {@link android.support.v4.app.NotificationCompat.Builder#setPublicVersion(android.app.Notification) setPublicVersion()} 方法附加上替代通知。
+
+
+</p>
+
+<h3 id="controllingMedia">在鎖定螢幕上控制媒體播放</h3>
+
+<p>在 Android 5.0 (API 級別 21) 中，鎖定螢幕不會再依據 {@link android.media.RemoteControlClient} (現已淘汰) 顯示媒體控制項。
+利用 {@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()} 方法使用 {@link android.app.Notification.MediaStyle} 範本，將動作轉換成可點擊的圖示。
+
+
+</p>
+
+<p class="note"><strong>注意：</strong>支援程式庫不包含範本與 {@link android.app.Notification.Builder#addAction(android.app.Notification.Action) addAction()} 方法，因此這些功能只能在 Android 5.0 以上版本中執行。
+
+</p>
+
+<p>如要在 Android 5.0 的鎖定螢幕上顯示媒體播放控制項，請將可見度設定為 {@link android.support.v4.app.NotificationCompat#VISIBILITY_PUBLIC}，如上所述。
+接著，新增動作並設定 {@link android.app.Notification.MediaStyle} 範本，如以下程式碼範例所示：
+
+</p>
+
+<pre>
+Notification notification = new Notification.Builder(context)
+    // Show controls on lock screen even when user hides sensitive content.
+    .setVisibility(Notification.VISIBILITY_PUBLIC)
+    .setSmallIcon(R.drawable.ic_stat_player)
+    // Add media control buttons that invoke intents in your media service
+    .addAction(R.drawable.ic_prev, "Previous", prevPendingIntent) // #0
+    .addAction(R.drawable.ic_pause, "Pause", pausePendingIntent)  // #1
+    .addAction(R.drawable.ic_next, "Next", nextPendingIntent)     // #2
+    // Apply the media style template
+    .setStyle(new Notification.MediaStyle()
+    .setShowActionsInCompactView(1 /* #1: pause button */)
+    .setMediaSession(mMediaSession.getSessionToken())
+    .setContentTitle("Wonderful music")
+    .setContentText("My Awesome Band")
+    .setLargeIcon(albumArtBitmap)
+    .build();
+</pre>
+
+<p class="note"><strong>注意：</strong>進一步實作控制媒體的 {@link android.media.RemoteControlClient} 已失效。
+如要進一步瞭解管理媒體工作階段與控制播放的新 API，請參閱<a href="{@docRoot}about/versions/android-5.0.html#MediaPlaybackControl">媒體播放控制項</a>。
+
+</p>
+
+
+<!-- ------------------------------------------------------------------------------------------ -->
+<h2 id="CustomNotification">自訂通知版面配置</h2>
+<p>
+    通知架構可讓您定義自訂通知版面配置，藉此定義 {@link android.widget.RemoteViews} 物件中的通知外觀。
+
+    自訂配置通知類似於一般通知，只不過這類通知是以 XML 版面配置檔案中定義的 {@link android.widget.RemoteViews} 為基礎。
+
+</p>
+<p>
+    自訂通知版面配置的可用高度取決於通知檢視。一般檢視的版面配置以 64 dp 為限，而擴充檢視的版面配置以 256 dp 為限。
+
+</p>
+<p>
+    如要定義自訂通知版面配置，請從具現化可擴大 XML 配置檔案的 
+{@link android.widget.RemoteViews} 物件著手。接著，改為呼叫 {@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()}，而不是呼叫像是 {@link android.support.v4.app.NotificationCompat.Builder#setContentTitle setContentTitle()} 的方法。
+
+
+如要設定自訂通知中的內容詳細資料，可使用 {@link android.widget.RemoteViews} 中的方法來設定檢視下層物件的值：
+
+
+</p>
+<ol>
+    <li>
+        以個別檔案建立通知的 XML 版面配置。您可以使用任何檔案名稱，但副檔名必須為 <code>.xml</code>。
+
+    </li>
+    <li>
+        在您的應用程式中，使用 {@link android.widget.RemoteViews} 方法來定義通知的圖示與文字。
+藉由呼叫 {@link android.support.v4.app.NotificationCompat.Builder#setContent setContent()} 將這個 {@link android.widget.RemoteViews} 物件放入您的 {@link android.support.v4.app.NotificationCompat.Builder}。
+
+避免在您的 {@link android.widget.RemoteViews} 物件上設定背景 {@link android.graphics.drawable.Drawable}，這是因為這樣做可能會使您的文字色彩變得無法閱讀。
+
+
+    </li>
+</ol>
+<p>
+    {@link android.widget.RemoteViews} 類別還包含您可用來將 {@link android.widget.Chronometer} 或 {@link android.widget.ProgressBar} 輕鬆新增至通知版面配置的方法。
+
+如要進一步瞭解如何為您的通知建立自訂版面配置，請參閱 {@link android.widget.RemoteViews} 參考文件。
+
+</p>
+<p class="caution">
+    <strong>注意：</strong>當您使用自訂通知版面配置時，請特別注意，確保您的自訂版面配置適用於不同的裝置方向或解析度。
+雖然此建議適用於所有檢視版面配置，但對於通知而言特別重要，原因是通知匣的空間十分有限。
+
+不要建立過於複雜的自訂版面配置，而且一定要在不同的設定中加以測試。
+
+</p>
+<!-- ------------------------------------------------------------------------------------------ -->
+<h4>針對自訂通知文字使用樣式資源</h4>
+<p>
+    自訂通知文字一律使用樣式資源。在不同的裝置與版本間可能會有不同的通知背景色彩，因此使用樣式資源可協助您將這點列入考量。
+
+從 Android 2.3 開始，系統已定義了標準通知版面配置資料的樣式。
+如果您在適用於 Android 2.3 以上版本的應用程式中使用相同的樣式，將可確保能在顯示背景上看見您的文字。
+
+</p>
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/ui/overview.jd b/docs/html-intl/intl/zh-tw/guide/topics/ui/overview.jd
new file mode 100644
index 0000000..44d05a8
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/ui/overview.jd
@@ -0,0 +1,71 @@
+page.title=UI 總覽
+@jd:body
+
+
+<p>Android 應用程式中的所有使用者介面元素都是使用 {@link android.view.View} 與
+{@link android.view.ViewGroup} 物件。{@link android.view.View} 物件可在畫面上繪製使用者能與之互動的項目。
+{@link android.view.ViewGroup} 物件可保留其他
+{@link android.view.View} (與 {@link android.view.ViewGroup}) 物件，以定義介面的版面配置。
+</p>
+
+<p>Android 提供 {@link android.view.View} 與{@link
+android.view.ViewGroup} 子類別集合，提供一般輸入控制項 (例如按鈕與文字欄位) 及各種版面配置模型 (例如線性或相對)。
+</p>
+
+
+<h2 id="Layout">使用者介面版面配置</h2>
+
+<p>應用程式每個元件的使用者介面是使用 {@link
+android.view.View} 與 {@link android.view.ViewGroup} 物件的階層來定義，如圖 1 所示。每個檢視群組都是不可見容器，用以組織子檢視，而子檢視可能是輸入控制項或其他繪製部分 UI 的小工具。這個階層樹狀結構可依您的需求簡單或複雜化 (但簡化才會有最佳效能)。
+
+
+
+</p>
+
+<img src="{@docRoot}images/viewgroup.png" alt="" />
+<p class="img-caption"><strong>圖 1.</strong>定義 UI 版面配置的檢視階層圖例
+</p>
+
+<p>如要宣告版面配置，您可以在程式碼中將 {@link android.view.View} 物件具現化，然後開始建置樹狀結構，但最簡單也最有效的方法是使用 XML 檔案來定義您的版面配置。
+
+XML 提供類似於 HTML 且人類看得懂的版面配置結構。</p>
+
+<p>檢視的 XML 元素名稱相當於它個別代表的 Android 類別。因此，
+<code>&lt;TextView&gt;</code> 元素可在您的 UI 中建立 {@link android.widget.TextView} 小工具，而
+<code>&lt;LinearLayout&gt;</code> 元素可以建立 {@link android.widget.LinearLayout} 檢視群組。
+ </p>
+
+<p>例如，上面有一個文字檢視與按鈕的簡單垂直版面配置，看起來像這樣：</p>
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="fill_parent" 
+              android:layout_height="fill_parent"
+              android:orientation="vertical" >
+    &lt;TextView android:id="@+id/text"
+              android:layout_width="wrap_content"
+              android:layout_height="wrap_content"
+              android:text="I am a TextView" />
+    &lt;Button android:id="@+id/button"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="I am a Button" />
+&lt;/LinearLayout>
+</pre>
+
+<p>當您載入應用程式中的版面配置資源時，Android 會將每個版面配置節點初始化成執行階段物件，您再用來定義其他行為、查詢物件狀態或修改版面配置。
+
+</p>
+
+<p>如需建立 UI 版面配置的完整指南，請參閱 <a href="declaring-layout.html">XML 版面配置</a>。
+
+
+  
+<h2 id="UIComponents">使用者介面元件</h2>
+
+<p>您不必使用 {@link android.view.View} 與 {@link
+android.view.ViewGroup} 物件來建置您的所有 UI。Android 提供的數個應用程式元件會提供標準 UI 版面配置，您只需要定義內容即可。
+這些 UI 元件各自有一組獨特的 API，如其各自的文件中所述，例如<a href="{@docRoot}guide/topics/ui/actionbar.html">動作列</a>、<a href="{@docRoot}guide/topics/ui/dialogs.html">對話方塊</a>及<a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">狀態通知</a>。
+</p>
+
+
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/ui/settings.jd b/docs/html-intl/intl/zh-tw/guide/topics/ui/settings.jd
new file mode 100644
index 0000000..91ac929
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/ui/settings.jd
@@ -0,0 +1,1202 @@
+page.title=設定
+page.tags=偏好設定、偏好設定 Activity、偏好設定片段
+
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>本文件內容</h2>
+<ol>
+  <li><a href="#Overview">總覽</a>
+    <ol>
+      <li><a href="#SettingTypes">偏好設定</a></li>
+    </ol>
+  </li>
+  <li><a href="#DefiningPrefs">在 XML 中定義偏好設定</a>
+    <ol>
+      <li><a href="#Groups">建立設定群組</a></li>
+      <li><a href="#Intents">使用意圖</a></li>
+    </ol>
+  </li>
+  <li><a href="#Activity">建立偏好設定 Activity</a></li>
+  <li><a href="#Fragment">使用偏好設定片段</a></li>
+  <li><a href="#Defaults">設定預設值</a></li>
+  <li><a href="#PreferenceHeaders">使用偏好設定標頭</a>
+    <ol>
+      <li><a href="#CreateHeaders">建立標頭檔案</a></li>
+      <li><a href="#DisplayHeaders">顯示標頭</a></li>
+      <li><a href="#BackCompatHeaders">使用偏好設定標頭支援舊版</a></li>
+    </ol>
+  </li>
+  <li><a href="#ReadingPrefs">讀取偏好設定</a>
+    <ol>
+      <li><a href="#Listening">接聽偏好設定變更</a></li>
+    </ol>
+  </li>
+  <li><a href="#NetworkUsage">管理網路使用量</a></li>
+  <li><a href="#Custom">建置自訂偏好設定</a>
+    <ol>
+      <li><a href="#CustomSelected">指定使用者介面</a></li>
+      <li><a href="#CustomSave">儲存設定值</a></li>
+      <li><a href="#CustomInitialize">初始化目前值</a></li>
+      <li><a href="#CustomDefault">提供預設值</a></li>
+      <li><a href="#CustomSaveState">儲存和還原偏好設定狀態</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>重要類別</h2>
+<ol>
+  <li>{@link android.preference.Preference}</li>
+  <li>{@link android.preference.PreferenceActivity}</li>
+  <li>{@link android.preference.PreferenceFragment}</li>
+</ol>
+
+
+<h2>另請參閱</h2>
+<ol>
+  <li><a href="{@docRoot}design/patterns/settings.html">設定設計指南</a></li>
+</ol>
+</div>
+</div>
+
+
+
+
+<p>應用程式通常會包含可讓使用者修改應用程式功能和行為的設定。例如，有些應用程式可讓使用者指定是否啟用通知，或指定應用程式與雲端同步資料的頻率。
+
+</p>
+
+<p>如果您想要為應用程式提供設定，應該使用 Android {@link android.preference.Preference} API 建置與其他 Android 應用程式使用者體驗一致的介面 (包含系統設定)。
+
+本文件說明如何使用 {@link android.preference.Preference} API 建置應用程式設定。
+</p>
+
+<div class="note design">
+<p><strong>設定設計</strong></p>
+  <p>如要瞭解如何設計設定，請參閱<a href="{@docRoot}design/patterns/settings.html">設定</a>設計指南。</p>
+</div>
+
+
+<img src="{@docRoot}images/ui/settings/settings.png" alt="" width="435" />
+<p class="img-caption"><strong>圖 1.</strong>Android 簡訊應用程式設定的螢幕擷取畫面。
+選取一個 {@link android.preference.Preference} 定義的項目可以開啟介面變更設定。
+</p>
+
+
+
+
+<h2 id="Overview">總覽</h2>
+
+<p>現在不使用 {@link android.view.View} 物件建置使用者介面，而是使用您在 XML 檔案中所宣告 {@link android.preference.Preference} 類別的各種子類別來建置設定。
+
+</p>
+
+<p>一個 {@link android.preference.Preference} 物件是單一設定的建置區塊。
+每個 {@link android.preference.Preference} 都以項目的形式在清單中顯示，並為使用者提供適當的 UI 以修改設定。
+例如，{@link
+android.preference.CheckBoxPreference} 可以建立顯示核取方塊的清單項目，而 {@link
+android.preference.ListPreference} 可以建立開啟對話方塊 (其中包含選擇清單) 的項目。</p>
+
+<p>每個您新增的 {@link android.preference.Preference} 都會有一個對應的鍵值配對，系統可使用此鍵值對將設定儲存到您應用程式設定的預設 {@link android.content.SharedPreferences} 檔案。
+
+當使用者變更設定，系統會為您更新 {@link android.content.SharedPreferences} 檔案中的對應值。
+您唯一需要與關聯的 {@link android.content.SharedPreferences} 檔案直接互動的時候，是當您需要讀取值才能根據使用者設定判斷應用程式行為時。
+
+</p>
+
+<p>儲存在 {@link android.content.SharedPreferences} 的每個設定值可以是下列其中一個資料類型：
+</p>
+
+<ul>
+  <li>布林值</li>
+  <li>浮動</li>
+  <li>整數</li>
+  <li>長整數</li>
+  <li>字串</li>
+  <li>字串 {@link java.util.Set}</li>
+</ul>
+
+<p>由於您的應用程式設定 UI 是使用 {@link android.preference.Preference} 物件，而不是 {@link android.view.View} 物件建置，因此您需要使用專門的 {@link android.app.Activity} 或 {@link android.app.Fragment} 子類別來顯示清單設定：
+
+
+</p>
+
+<ul>
+  <li>如果應用程式支援的 Android 版本早於 3.0 (API 級別 10 及較早版本)，您必須以 {@link android.preference.PreferenceActivity} 類別延伸的形式建置 Activity。
+</li>
+  <li>在 Android 3.0 及更新版本上，您應該使用傳統 {@link android.app.Activity}，它託管了顯示應用程式設定的 {@link android.preference.PreferenceFragment}。
+
+然而，當您有多個設定群組時，還可以使用 {@link android.preference.PreferenceActivity} 在大螢幕建立兩個面板的版面配置。
+</li>
+</ul>
+
+<p>如何設定 {@link android.preference.PreferenceActivity} 和 {@link
+android.preference.PreferenceFragment} 執行個體在<a href="#Activity">建立偏好設定 Activity</a> 和<a href="#Fragment">使用偏好設定片段</a>小節中有相關說明。
+</p>
+
+
+<h3 id="SettingTypes">偏好設定</h3>
+
+<p>應用程式的每個設定都會以 {@link
+android.preference.Preference} 類別的特定子類別代表。每個子類別包含一組核心屬性，可讓您為設定指定標題等項目和預設值。
+每個子類別還提供自己專屬的屬性和使用者介面。
+例如，圖 1 顯示簡訊應用程式設定的螢幕擷取畫面。
+設定畫面中的每個清單項目都由不同的 {@link
+android.preference.Preference} 物件支援。</p>
+
+<p>下列為幾個最常見的偏好設定：</p>
+
+<dl>
+  <dt>{@link android.preference.CheckBoxPreference}</dt>
+  <dd>為啟用或停用的設定顯示含有核取方塊的項目。儲存的值是布林值 (如果選取 <code>true</code>)。
+</dd>
+
+  <dt>{@link android.preference.ListPreference}</dt>
+  <dd>開啟含有選項按鈕清單的對話方塊。儲存的值可以是任何支援的值類型 (如上所列)。
+</dd>
+
+  <dt>{@link android.preference.EditTextPreference}</dt>
+  <dd>開啟含有 {@link android.widget.EditText} 小工具的對話方塊。儲存的值是 {@link
+java.lang.String}。</dd>
+</dl>
+
+<p>請參閱 {@link android.preference.Preference} 類別，以取得所有其他子類別及其對應屬性的清單。
+</p>
+
+<p>當然，內建類別無法滿足所有需要，您的應用程式可能需要更專門的功能。
+例如，平台目前無法提供 {@link
+android.preference.Preference} 類別以選取數字或日期。因此，您可能需要定義自己的 {@link android.preference.Preference} 子類別。
+如需執行此操作的協助，請參閱<a href="#Custom">建置自訂偏好設定</a>。</p>
+
+
+
+<h2 id="DefiningPrefs">在 XML 中定義偏好設定</h2>
+
+<p>雖然您可以在執行階段將新的 {@link android.preference.Preference} 物件具現化，但您仍應該在 XML 中定義設定清單，並在其中包含 {@link android.preference.Preference} 物件的階層。
+
+使用 XML 檔案定義設定集合是較建議的做法，因為該檔案提供的易讀結構很容易更新。
+而且，雖然您仍然可以在執行階段修改集合，但您的應用程式設定通常是預先定義好的。
+</p>
+
+<p>每個 {@link android.preference.Preference} 子類別都可透過與類別名稱相符的 XML 元素進行宣告，例如 {@code &lt;CheckBoxPreference&gt;}。
+</p>
+
+<p>您必須將 XML 檔案儲存在 {@code res/xml/} 目錄中。雖然您可以自由命名檔案，但在傳統上會命名為 {@code preferences.xml}。
+您通常只需要一個檔案，因為階層 (會開啟自己的設定清單) 中的子目錄是透過 {@link android.preference.PreferenceScreen} 的巢狀執行個體進行宣告。
+
+</p>
+
+<p class="note"><strong>注意：</strong>如果您想要為設定建立多個面板的版面配置，則您需要為每個片段準備個別的 XML 檔案。
+</p>
+
+<p>XML 檔案的根節點必須是 {@link android.preference.PreferenceScreen
+&lt;PreferenceScreen&gt;} 元素。您要將每個 {@link
+android.preference.Preference} 新增到此元素內。您在 {@link android.preference.PreferenceScreen &lt;PreferenceScreen&gt;} 元素內新增的每個子項會在設定清單中顯示為單一項目。
+
+</p>
+
+<p>例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;CheckBoxPreference
+        android:key="pref_sync"
+        android:title="@string/pref_sync"
+        android:summary="@string/pref_sync_summ"
+        android:defaultValue="true" />
+    &lt;ListPreference
+        android:dependency="pref_sync"
+        android:key="pref_syncConnectionType"
+        android:title="@string/pref_syncConnectionType"
+        android:dialogTitle="@string/pref_syncConnectionType"
+        android:entries="@array/pref_syncConnectionTypes_entries"
+        android:entryValues="@array/pref_syncConnectionTypes_values"
+        android:defaultValue="@string/pref_syncConnectionTypes_default" />
+&lt;/PreferenceScreen>
+</pre>
+
+<p>此範例中有一個 {@link android.preference.CheckBoxPreference} 和一個 {@link
+android.preference.ListPreference}。這兩個項目都包含下列三個屬性：</p>
+
+<dl>
+  <dt>{@code android:key}</dt>
+  <dd>需要這個屬性才能保留資料值的偏好設定。它會指定當系統將此設定值儲存於 {@link
+android.content.SharedPreferences} 時要使用的唯一索引鍵 (字串)。
+ 
+  <p>只有在下列情況下不需要此屬性：<em></em>偏好設定為 {@link android.preference.PreferenceCategory} 或 {@link android.preference.PreferenceScreen}，或者偏好設定指定 {@link android.content.Intent} 進行呼叫 (搭配 <a href="#Intents">{@code &lt;intent&gt;}</a> 元素) 或 {@link android.app.Fragment} 進行顯示 (搭配 <a href="{@docRoot}reference/android/preference/Preference.html#attr_android:fragment">{@code
+android:fragment}</a> 屬性)。
+
+</p>
+  </dd>
+  <dt>{@code android:title}</dt>
+  <dd>這可為設定提供使用者可見的名稱。</dd>
+  <dt>{@code android:defaultValue}</dt>
+  <dd>這可指定系統在 {@link
+android.content.SharedPreferences} 檔案中應設定的初始值。您應該為所有設定提供預設值。
+</dd>
+</dl>
+
+<p>如需所有其他支援的屬性相關資訊，請參閱 {@link
+android.preference.Preference} (及個別子類別) 文件。</p>
+
+
+<div class="figure" style="width:300px">
+  <img src="{@docRoot}images/ui/settings/settings-titles.png" alt="" />
+  <p class="img-caption"><strong>圖 2.</strong>設定含有標題的類別。
+ <br/><b>1.</b>類別以 {@link
+android.preference.PreferenceCategory &lt;PreferenceCategory&gt;} 元素指定。 <br/><b>2.</b>標題以 {@code android:title} 屬性指定。
+</p>
+</div>
+
+
+<p>如果您的設定清單超過約 10 個項目，您可以新增標題來定義設定群組，或在分開的畫面顯示這些群組。
+
+這些選項在下列幾節有詳細的描述。</p>
+
+
+<h3 id="Groups">建立設定群組</h3>
+
+<p>如果您的清單有 10 個以上的項目，掃描、理解和處理這些項目對使用者而言可能會很困難。
+如要解決這個問題，可將部分或所有設定分成不同的群組，有效地將一長串清單分成多個簡短的清單。
+
+一組包含相關設定的群組可以下列其中一種方式顯示：</p>
+
+<ul>
+  <li><a href="#Titles">使用標題</a></li>
+  <li><a href="#Subscreens">使用子畫面</a></li>
+</ul>
+
+<p>您可以使用上述一種或兩種分組技巧來整理您的應用程式設定。決定要使用哪種方法或如何分割設定時，您應該要依照 Android 設計<a href="{@docRoot}design/patterns/settings.html">設定</a>指南中的指導方針進行。
+
+</p>
+
+
+<h4 id="Titles">使用標題</h4>
+
+<p>如果您想要在設定群組間使用標題區分 (如圖 2 所示)，將 {@link android.preference.Preference} 物件的每個群組放入 {@link
+android.preference.PreferenceCategory}。
+</p>
+
+<p>例如：</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;PreferenceCategory 
+        android:title="&#64;string/pref_sms_storage_title"
+        android:key="pref_key_storage_settings">
+        &lt;CheckBoxPreference
+            android:key="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_auto_delete"
+            android:title="&#64;string/pref_title_auto_delete"
+            android:defaultValue="false"... />
+        &lt;Preference 
+            android:key="pref_key_sms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_sms_delete"... />
+        &lt;Preference 
+            android:key="pref_key_mms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_mms_delete" ... />
+    &lt;/PreferenceCategory>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h4 id="Subscreens">使用子畫面</h4>
+
+<p>如果您想將設定群組放入子畫面 (如圖 3 所示)，將 {@link android.preference.Preference} 物件的群組放入 {@link
+android.preference.PreferenceScreen}。
+</p>
+
+<img src="{@docRoot}images/ui/settings/settings-subscreen.png" alt="" />
+<p class="img-caption"><strong>圖 3.</strong>設定子畫面。{@code
+&lt;PreferenceScreen&gt;} 元素建立的項目會在選取時開啟獨立的清單以顯示巢狀設定。
+</p>
+
+<p>例如：</p>
+
+<pre>
+&lt;PreferenceScreen  xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;!-- opens a subscreen of settings -->
+    &lt;PreferenceScreen
+        android:key="button_voicemail_category_key"
+        android:title="&#64;string/voicemail"
+        android:persistent="false">
+        &lt;ListPreference
+            android:key="button_voicemail_provider_key"
+            android:title="&#64;string/voicemail_provider" ... />
+        &lt;!-- opens another nested subscreen -->
+        &lt;PreferenceScreen
+            android:key="button_voicemail_setting_key"
+            android:title="&#64;string/voicemail_settings"
+            android:persistent="false">
+            ...
+        &lt;/PreferenceScreen>
+        &lt;RingtonePreference
+            android:key="button_voicemail_ringtone_key"
+            android:title="&#64;string/voicemail_ringtone_title"
+            android:ringtoneType="notification" ... />
+        ...
+    &lt;/PreferenceScreen>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h3 id="Intents">使用意圖</h3>
+
+<p>在某些情況下，您可能會希望偏好設定項目開啟不同的 Activity 而不是設定畫面，例如，開啟網路瀏覽器以檢視網頁。
+如要在使用者選取偏好設定項目時呼叫 {@link
+android.content.Intent}，請新增 {@code &lt;intent&gt;} 元素做為對應 {@code &lt;Preference&gt;} 元素的子項。
+</p>
+
+<p>例如，您可以使用下列方法透過偏好設定項目開啟網頁：</p>
+
+<pre>
+&lt;Preference android:title="@string/prefs_web_page" >
+    &lt;intent android:action="android.intent.action.VIEW"
+            android:data="http://www.example.com" />
+&lt;/Preference>
+</pre>
+
+<p>您可以使用下列屬性建立隱含和明確意圖：</p>
+
+<dl>
+  <dt>{@code android:action}</dt>
+    <dd>根據 {@link android.content.Intent#setAction setAction()} 方法指派的動作。
+</dd>
+  <dt>{@code android:data}</dt>
+    <dd>根據 {@link android.content.Intent#setData setData()} 方法指派的資料。</dd>
+  <dt>{@code android:mimeType}</dt>
+    <dd>根據 {@link android.content.Intent#setType setType()} 方法指派的 MIME 類型。
+</dd>
+  <dt>{@code android:targetClass}</dt>
+    <dd>根據 {@link android.content.Intent#setComponent
+setComponent()} 方法指派的元件名稱類別部分。</dd>
+  <dt>{@code android:targetPackage}</dt>
+    <dd>根據 {@link
+android.content.Intent#setComponent setComponent()} 方法指派的元件名稱封裝部分。</dd>
+</dl>
+
+
+
+<h2 id="Activity">建立偏好設定 Activity</h2>
+
+<p>如要在 Activity 中顯示設定，延伸 {@link
+android.preference.PreferenceActivity} 類別。這是傳統 {@link
+android.app.Activity} 類別的延伸，可根據 {@link
+android.preference.Preference} 物件的階層顯示設定清單。當使用者進行變更時，{@link android.preference.PreferenceActivity} 會自動保留與每個 {@link
+android.preference.Preference} 關聯的設定。
+</p>
+
+<p class="note"><strong>注意：</strong>如果您針對 Android 3.0 及更新版本開發應用程式，您應該改為使用 {@link android.preference.PreferenceFragment}。
+前往下一個<a href="#Fragment">使用偏好設定片段</a>章節。
+</p>
+
+<p>最需要注意的一件事就是，不要在 {@link
+android.preference.PreferenceActivity#onCreate onCreate()} 呼叫期間載入檢視的版面配置。您應該要呼叫 {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()}，將您在 XML 檔案中宣告的偏好設定新增到 Activity 中。
+例如，下列為功能 {@link android.preference.PreferenceActivity} 所需的基本程式碼：
+</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        addPreferencesFromResource(R.xml.preferences);
+    }
+}
+</pre>
+
+<p>事實上，這個程式碼對某些應用程式而言已經足夠，因為使用者修改偏好設定後，系統會將變更儲存到預設 {@link android.content.SharedPreferences} 檔案，當您需要檢查使用者設定時，您的其他應用程式元件就能進行讀取。
+
+但是，許多應用程式需要更多一點程式碼，以接聽對偏好設定進行的變更。
+如需在 {@link android.content.SharedPreferences} 檔案接聽變更的相關資訊，請參閱<a href="#ReadingPrefs">讀取偏好設定</a>。
+
+</p>
+
+
+
+
+<h2 id="Fragment">使用偏好設定片段</h2>
+
+<p>如果您針對 Android 3.0 (API 級別 11) 及更新版本進行開發，您應該使用 {@link
+android.preference.PreferenceFragment} 顯示 {@link android.preference.Preference} 物件清單。
+您可以將 {@link android.preference.PreferenceFragment} 新增到任何 Activity &mdash; 您不需要使用 {@link android.preference.PreferenceActivity}。
+</p>
+
+<p><a href="{@docRoot}guide/components/fragments.html">片段</a>單就 Activity 而言，可為您的應用程式提供更有彈性的架構，無論您建置哪一種 Activity 都一樣。
+
+因此，我們建議您盡可能使用 {@link
+android.preference.PreferenceFragment} 來控制設定的顯示，而不要使用 {@link
+android.preference.PreferenceActivity}。</p>
+
+<p>實作 {@link android.preference.PreferenceFragment} 可以很簡單，只要定義 {@link android.preference.PreferenceFragment#onCreate onCreate()} 方法，透過 {@link android.preference.PreferenceFragment#addPreferencesFromResource
+addPreferencesFromResource()} 載入偏好設定檔案。
+
+例如：</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Load the preferences from an XML resource
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+}
+</pre>
+
+<p>之後，您可以將此片段新增至 {@link android.app.Activity}，做法與任何其他
+{@link android.app.Fragment} 一樣。例如：</p>
+
+<pre>
+public class SettingsActivity extends Activity {
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Display the fragment as the main content.
+        getFragmentManager().beginTransaction()
+                .replace(android.R.id.content, new SettingsFragment())
+                .commit();
+    }
+}
+</pre>
+
+<p class="note"><strong>注意：</strong>{@link android.preference.PreferenceFragment} 沒有自己的 {@link android.content.Context} 物件。
+如果您需要 {@link android.content.Context} 物件，可以呼叫 {@link android.app.Fragment#getActivity()}。
+不過，必須小心，只能在片段附加到 Activity 時才能呼叫 {@link android.app.Fragment#getActivity()}。
+如果未附加片段，或是在生命週期期間中斷連結，{@link
+android.app.Fragment#getActivity()} 將傳回 null。
+</p>
+
+
+<h2 id="Defaults">設定預設值</h2>
+
+<p>您建立的偏好設定可能為應用程式定義了一些重要的行為，因此當使用者第一次開啟您的應用程式時，務必使用每個 {@link android.preference.Preference} 預設值來初始化關聯的 {@link android.content.SharedPreferences} 檔案。
+
+
+</p>
+
+<p>您必須要做的第一件事，就是使用 {@code android:defaultValue} 屬性指定 XML 檔案中每個 {@link
+android.preference.Preference} 物件的預設值。
+值可以是適用於對應 {@link android.preference.Preference} 物件的任何資料類型。
+例如：
+</p>
+
+<pre>
+&lt;!-- default value is a boolean -->
+&lt;CheckBoxPreference
+    android:defaultValue="true"
+    ... />
+
+&lt;!-- default value is a string -->
+&lt;ListPreference
+    android:defaultValue="@string/pref_syncConnectionTypes_default"
+    ... />
+</pre>
+
+<p>之後，從您應用程式主 Activity &mdash; 以及使用者第一次進入您應用程式所使用的任何其他 Activity &mdash; 的 {@link android.app.Activity#onCreate onCreate()} 方法呼叫 {@link android.preference.PreferenceManager#setDefaultValues
+setDefaultValues()}：
+
+</p>
+
+<pre>
+PreferenceManager.setDefaultValues(this, R.xml.advanced_preferences, false);
+</pre>
+
+<p>在 {@link android.app.Activity#onCreate onCreate()} 期間呼叫它，可確保您的應用程式正確地以預設值初始化，您的應用程式可能需要讀取這些預設值，才能判斷一些行為 (例如，使用行動網路時是否可下載資料)。
+
+
+</p>
+
+<p>這個方法採用三種引數：</p>
+<ul>
+  <li>您的應用程式 {@link android.content.Context}。</li>
+  <li>您要設定預設值之偏好設定 XML 檔案的資源 ID。</li>
+  <li>布林值指出預設值是否要設定一次以上。
+<p>如果為 <code>false</code>，系統只會在過去從未呼叫此方法時設定預設值 (或者預設值共用偏好設定檔案的 {@link android.preference.PreferenceManager#KEY_HAS_SET_DEFAULT_VALUES} 為 false)。
+
+</p></li>
+</ul>
+
+<p>只要將第三個引數設為 <code>false</code>，您可以在每次 Activity 啟動時很安全地呼叫此方法，而不會將使用者儲存的偏好設定重設為預設值。
+
+不過，如果您將它設為 <code>true</code>，會將任何之前的值覆寫為預設值。
+</p>
+
+
+
+<h2 id="PreferenceHeaders">使用偏好設定標頭</h2>
+
+<p>在少數情況下，您可能會想將設定設計為只在第一個畫面顯示<a href="#Subscreens">子畫面</a>清單(與系統設定應用程式一樣，如圖 4 和 5 所示)。
+
+當您為 Android 3.0 及更新版本開發這類設計時，您應該使用 Android 3.0 的新「標頭」功能，而不是使用巢狀 {@link android.preference.PreferenceScreen} 元素建置子畫面。
+
+</p>
+
+<p>如要使用標頭建置設定，您必須：</p>
+<ol>
+  <li>將每個設定群組分成不同的 {@link
+android.preference.PreferenceFragment} 執行個體。也就是說，每個設定群組需要一個獨立的 XML 檔案。
+</li>
+  <li>建立一個 XML 標頭檔案，其中列出每個設定群組以及宣告哪些片段包含對應的設定清單。
+</li>
+  <li>延伸 {@link android.preference.PreferenceActivity} 類別以託管您的設定。</li>
+  <li>實作 {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} 回呼以指定標頭檔案。
+</li>
+</ol>
+
+<p>使用這個設計最大的好處在於在大螢幕執行時，
+{@link android.preference.PreferenceActivity} 會自動顯示兩個面板的版面配置，如圖 4 所示。</p>
+
+<p>即使應用程式支援的 Android 版本較 3.0 舊，您還是可以建置應用程式在新版的裝置上使用 {@link android.preference.PreferenceFragment} 顯示兩個面板，同時仍然支援舊版裝置上的傳統多畫面階層 (請參閱<a href="#BackCompatHeaders">使用偏好設定標頭支援舊版</a>)。
+
+
+
+</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-tablet.png" alt="" />
+<p class="img-caption"><strong>圖 4.</strong>含標頭的兩個面板版面配置。 <br/><b>1.</b>標頭以 XML 標頭檔案定義。
+ <br/><b>2.</b>每個設定群組是由標頭檔案 {@code &lt;header&gt;} 元素指定的{@link android.preference.PreferenceFragment} 所定義。
+
+</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-handset.png" alt="" />
+<p class="img-caption"><strong>圖 5.</strong>含設定標頭的手機裝置。選取項目後，關聯的 {@link android.preference.PreferenceFragment} 會取代標頭。
+
+</p>
+
+
+<h3 id="CreateHeaders" style="clear:left">建立標頭檔案</h3>
+
+<p>您標頭清單中的每個設定群組是由根 {@code &lt;preference-headers&gt;} 元素中的單一 {@code &lt;header&gt;} 元素指定。
+例如：</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;!-- key/value pairs can be included as arguments for the fragment. -->
+        &lt;extra android:name="someKey" android:value="someHeaderValue" />
+    &lt;/header>
+&lt;/preference-headers>
+</pre>
+
+<p>有了 {@code android:fragment} 屬性，每個標頭會宣告當使用者選取標頭時，應該開啟的 {@link
+android.preference.PreferenceFragment} 執行個體。</p>
+
+<p>{@code &lt;extras&gt;} 元素可讓您將鍵值配對傳送到 {@link
+android.os.Bundle} 中的片段。片段可以透過呼叫 {@link
+android.app.Fragment#getArguments()} 擷取引數。您可以因各種理由將引數傳送到片段，但其中一個最好的理由是針對每個群組重複使用 {@link
+android.preference.PreferenceFragment} 中相同的子類別，並使用引數指定應載入片段的偏好設定 XML 檔案。
+
+</p>
+
+<p>例如，當每個標頭使用 {@code "settings"} 索引鍵定義 {@code &lt;extra&gt;} 引數時，下列片段可在多個設定群組重複使用：
+</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        String settings = getArguments().getString("settings");
+        if ("notifications".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_wifi);
+        } else if ("sync".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_sync);
+        }
+    }
+}
+</pre>
+
+
+
+<h3 id="DisplayHeaders">顯示標頭</h3>
+
+<p>如要顯示偏好設定標頭，必須實作 {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} 回呼方法，並呼叫 {@link android.preference.PreferenceActivity#loadHeadersFromResource
+loadHeadersFromResource()}。
+例如：</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onBuildHeaders(List&lt;Header> target) {
+        loadHeadersFromResource(R.xml.preference_headers, target);
+    }
+}
+</pre>
+
+<p>當使用者從標頭清單選取項目時，系統會開啟關聯的 {@link
+android.preference.PreferenceFragment}。</p>
+
+<p class="note"><strong>注意：</strong>使用偏好設定標頭時，{@link
+android.preference.PreferenceActivity} 的子類別不需要實作 {@link
+android.preference.PreferenceActivity#onCreate onCreate()} 方法，這是因為 Activity 唯一需要做的工作就是載入標頭。
+</p>
+
+
+<h3 id="BackCompatHeaders">使用偏好設定標頭支援舊版</h3>
+
+<p>如果您應用程式支援的 Android 版本比 3.0 舊，您仍然可以在 Android 3.0 及更新版本執行時，使用標頭提供兩個面板的版面配置。
+您只需要建立一個額外的偏好設定 XML 檔案，該檔案要使用行為與標頭項目 (供舊版 Android 使用) 一樣的基本 {@link android.preference.Preference
+&lt;Preference&gt;} 元素。
+
+</p>
+
+<p>但是，不會開啟新的 {@link android.preference.PreferenceScreen}，每個 {@link
+android.preference.Preference &lt;Preference&gt;} 元素會傳送一個 {@link android.content.Intent} 到 {@link android.preference.PreferenceActivity}，以指定要載入的偏好設定 XML 檔案。
+
+</p>
+
+<p>例如，下列為使用 Android 3.0及更新版本的偏好設定標頭 XML 檔案 ({@code res/xml/preference_headers.xml})：
+</p> 
+
+<pre>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" />
+&lt;/preference-headers>
+</pre>
+
+<p>而，這裡有個偏好設定檔案為 Android 3.0 以下版本提供相同的標頭 ({@code res/xml/preference_headers_legacy.xml})：
+</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;Preference 
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one"  >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_ONE" />
+    &lt;/Preference>
+    &lt;Preference 
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_TWO" />
+    &lt;/Preference>
+&lt;/PreferenceScreen>
+</pre>
+
+<p>因為 Android 3.0 已加入對 {@code &lt;preference-headers&gt;} 的支援，系統只會在 Androd 3.0 或更新版本執行時，才會呼叫 {@link
+android.preference.PreferenceActivity} 中的 {@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()}。
+如要載入「舊版」標頭檔案 ({@code preference_headers_legacy.xml})，您必須檢查 Android 版本，如果版本比 Android 3.0 更舊 ({@link
+android.os.Build.VERSION_CODES#HONEYCOMB})，呼叫 {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} 以載入舊版標頭檔案。
+
+
+例如：</p>
+
+<pre>
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    ...
+
+    if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+
+// Called only on Honeycomb and later
+&#64;Override
+public void onBuildHeaders(List&lt;Header> target) {
+   loadHeadersFromResource(R.xml.preference_headers, target);
+}
+</pre>
+
+<p>最後一件要做的事，是處理傳送到 Activity 的 {@link android.content.Intent}，以識別要載入的偏好設定檔案。
+擷取意圖的動作，並將它與偏好設定 XML {@code &lt;intent&gt;} 標籤中使用的已知動作字串進行比對：
+</p>
+
+<pre>
+final static String ACTION_PREFS_ONE = "com.example.prefs.PREFS_ONE";
+...
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+
+    String action = getIntent().getAction();
+    if (action != null &amp;&amp; action.equals(ACTION_PREFS_ONE)) {
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+
+    else if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+</pre>
+
+<p>請注意，{@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} 的連續呼叫會將所有偏好設定堆疊在單一清單中，因此請確定將條件鏈結到 else-if 陳述式時只會呼叫它一次。
+
+</p>
+
+
+
+
+
+<h2 id="ReadingPrefs">讀取偏好設定</h2>
+
+<p>根據預設，透過呼叫靜態方法 {@link
+android.preference.PreferenceManager#getDefaultSharedPreferences
+PreferenceManager.getDefaultSharedPreferences()}，您應用程式中的所有偏好設定會儲存可從應用程式內任何地方存取的檔案中。
+這會傳回 {@link
+android.content.SharedPreferences} 物件，其中包含與您 {@link
+android.preference.PreferenceActivity} 使用之 {@link android.preference.Preference} 物件關聯的所有鍵值配對。
+</p>
+
+<p>例如，下列說明如何從應用程式中的任何其他 Activity 讀取其中一個偏好設定值：
+</p>
+
+<pre>
+SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
+String syncConnPref = sharedPref.getString(SettingsActivity.KEY_PREF_SYNC_CONN, "");
+</pre>
+
+
+
+<h3 id="Listening">接聽偏好設定變更</h3>
+
+<p>使用者變更其中一個偏好設定後，您想要立即收到通知的原因有好幾個。
+如要在任何偏好設定發生變更時收到回呼，實作 {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener
+SharedPreference.OnSharedPreferenceChangeListener} 介面，並呼叫 {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()} 為 {@link android.content.SharedPreferences} 物件註冊接聽器。
+
+</p>
+
+<p>介面只有一個回呼方式 {@link
+android.content.SharedPreferences.OnSharedPreferenceChangeListener#onSharedPreferenceChanged
+onSharedPreferenceChanged()}，而且在 Activity 中實作介面可能對您來說會更為容易。
+例如：</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity
+                              implements OnSharedPreferenceChangeListener {
+    public static final String KEY_PREF_SYNC_CONN = "pref_syncConnectionType";
+    ...
+
+    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
+        String key) {
+        if (key.equals(KEY_PREF_SYNC_CONN)) {
+            Preference connectionPref = findPreference(key);
+            // Set summary to be the user-description for the selected value
+            connectionPref.setSummary(sharedPreferences.getString(key, ""));
+        }
+    }
+}
+</pre>
+
+<p>在此範例中，方法會檢查是否是針對已知的偏好設定索引鍵設定進行變更。它會呼叫 {@link android.preference.PreferenceActivity#findPreference findPreference()} 以取得變更的 {@link android.preference.Preference} 物件，以便將項目摘要修改為使用者選取的描述。
+
+
+也就是說，當設定為 {@link
+android.preference.ListPreference} 或其他多選擇設定時，如果設定變更為顯示目前狀態 (如圖 5 顯示的休眠設定)，您應該呼叫 {@link
+android.preference.Preference#setSummary setSummary()}。
+</p>
+
+<p class="note"><strong>注意：</strong>如 Android 設計文件中有關<a href="{@docRoot}design/patterns/settings.html">設定</a>的說明所述，我們建議您在每次使用者變更偏好設定時更新 {@link android.preference.ListPreference} 的摘要，以描述目前的設定。
+
+</p>
+
+<p>為了在 Activity 中正確管理生命週期，我們建議您分別在 {@link
+android.app.Activity#onResume} 和 {@link android.app.Activity#onPause} 回呼期間，註冊和解決註冊您的 {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener}：
+</p>
+
+<pre>
+&#64;Override
+protected void onResume() {
+    super.onResume();
+    getPreferenceScreen().getSharedPreferences()
+            .registerOnSharedPreferenceChangeListener(this);
+}
+
+&#64;Override
+protected void onPause() {
+    super.onPause();
+    getPreferenceScreen().getSharedPreferences()
+            .unregisterOnSharedPreferenceChangeListener(this);
+}
+</pre>
+
+<p class="caution"><strong>注意：</strong>當您呼叫 {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()} 時，偏好設定管理員目前不會在接聽器儲存強式參照。
+您必須將強式參照儲存到接聽器，否則它會很容易受記憶體回收的影響。
+我們建議您在物件的執行個體資料中保留接聽器參照，如此一來您可以在需要接聽器時隨時使用。
+
+</p>
+
+<p>例如，在下列程式碼中，呼叫器沒有保留接聽器參照。
+因此，接聽器將受到記憶體回收的支配，而且會在未來不明確的時間發生失敗：
+</p>
+
+<pre>
+prefs.registerOnSharedPreferenceChangeListener(
+  // Bad! The listener is subject to garbage collection!
+  new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+});
+</pre>
+
+<p>將接聽器參照儲存在物件的執行個體資料欄位中，可以在需要接聽器時隨時使用：
+</p>
+
+<pre>
+SharedPreferences.OnSharedPreferenceChangeListener listener =
+    new SharedPreferences.OnSharedPreferenceChangeListener() {
+  public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
+    // listener implementation
+  }
+};
+prefs.registerOnSharedPreferenceChangeListener(listener);
+</pre>
+
+<h2 id="NetworkUsage">管理網路使用量</h2>
+
+
+<p>從 Android 4.0 開始，系統的設定應用程式允許使用者查看應用程式在前景和背景時使用了多少網路資料。
+然後，使用者可以停用個別應用程式的背景資料。
+如要避免使用者停用您的應用程式從背景存取資料，您應該有效率地使用資料連線，並允許使用者透過應用程式設定精簡您的應用程式資料使用量。
+
+<p>
+
+<p>例如，您可以讓使用者控制同步資料的頻率，無論您的應用程式只在 Wi-Fi 上執行上傳/下載、應用程式在漫遊使用資料等。
+使用者有了這些控制項，就比較不會在快要達到在系統設定中設定的限制時停用您應用程式的資料存取，因為他們可以準確地控制您應用程式使用的資料量。
+
+
+</p>
+
+<p>您在 {@link android.preference.PreferenceActivity} 新增所需的偏好設定以控制應用程式的資料習慣後，您應該在宣示說明檔新增 {@link
+android.content.Intent#ACTION_MANAGE_NETWORK_USAGE} 的意圖篩選器。
+例如：</p>
+
+<pre>
+&lt;activity android:name="SettingsActivity" ... >
+    &lt;intent-filter>
+       &lt;action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
+       &lt;category android:name="android.intent.category.DEFAULT" />
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>這個意圖篩選器向系統指出，是 Activity 在控制您的應用程式資料使用量。
+因此，當使用者從系統設定應用程式檢查您的應用程式使用了多少資料量時，可以使用 [檢視應用程式設定] 按鈕啟動您的<em></em> {@link android.preference.PreferenceActivity}，讓使用者精簡您應用程式使用的資料量。
+
+
+</p>
+
+
+
+
+
+
+
+<h2 id="Custom">建置自訂偏好設定</h2>
+
+<p>Android 架構包含各式各樣的 {@link android.preference.Preference} 子類別，可讓您建置所種不同設定類型的 UI。不過，您可能會發現內建解決方案中可能沒有您所需的設定，例如數字挑選器或日期挑選器。
+
+
+在這類情況下，您需要延伸 {@link android.preference.Preference} 類別或其中一個其他子類別，以建立自訂的偏好設定。
+</p>
+
+<p>當您延伸 {@link android.preference.Preference} 類別時，需要執行幾個重要工作：
+</p>
+
+<ul>
+  <li>指定使用者選取設定時要顯示的使用者介面。</li>
+  <li>視需要儲存設定值。</li>
+  <li>顯示 {@link android.preference.Preference} 時，使用目前 (或預設) 值加以初始化。
+</li>
+  <li>在系統要求時提供預設值。</li>
+  <li>如果 {@link android.preference.Preference} 提供自己的 UI (例如對話方塊)，儲存並還原狀態以處理生命週期變更 (例如，當使用者旋轉螢幕時)。
+</li>
+</ul>
+
+<p>以下各節說明如何完成這些工作。</p>
+
+
+
+<h3 id="CustomSelected">指定使用者介面</h3>
+
+  <p>如果您直接延伸 {@link android.preference.Preference} 類別，必須實作 {@link android.preference.Preference#onClick()} 以定義使用者選取項目時的動作。
+
+不過，大多數自訂設定會延伸 {@link android.preference.DialogPreference} 來顯示對話方塊，以簡化程序。
+延伸 {@link
+android.preference.DialogPreference} 時，您必須在類別建構函式期間呼叫 {@link
+android.preference.DialogPreference#setDialogLayoutResource setDialogLayoutResourcs()}，以指定對話方塊的版面配置。
+</p>
+
+  <p>例如，下列為自訂 {@link
+android.preference.DialogPreference} 的建構函式，該偏好設定宣告版面配置並指定預設正值和負值對話方塊按鈕的文字：
+</p>
+
+<pre>
+public class NumberPickerPreference extends DialogPreference {
+    public NumberPickerPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        
+        setDialogLayoutResource(R.layout.numberpicker_dialog);
+        setPositiveButtonText(android.R.string.ok);
+        setNegativeButtonText(android.R.string.cancel);
+        
+        setDialogIcon(null);
+    }
+    ...
+}
+</pre>
+
+
+
+<h3 id="CustomSave">儲存設定值</h3>
+
+<p>您可以呼叫其中一個 {@link
+android.preference.Preference} 類別的 {@code persist*()} 方法隨時儲存設定值，例如，如果設定值是整數，使用 {@link
+android.preference.Preference#persistInt persistInt()}，或者使用 {@link android.preference.Preference#persistBoolean persistBoolean()} 儲存布林值。
+</p>
+
+<p class="note"><strong>注意：</strong>每個 {@link android.preference.Preference} 只能儲存一個資料類型，因此您必須使用適合您自訂 {@link android.preference.Preference} 使用之資料類型的 {@code persist*()} 方法。
+
+</p>
+
+<p>當您選擇保留設定時，可以依據您延伸的 {@link
+android.preference.Preference} 類別加以設定。如果您延伸 {@link
+android.preference.DialogPreference}，則應該只在對話方塊因正值結果 (使用者選取 [確定] 按鈕) 關閉時保留該值。
+</p>
+
+<p>當 {@link android.preference.DialogPreference} 關閉時，系統會呼叫 {@link
+android.preference.DialogPreference#onDialogClosed onDialogClosed()} 方法。這個方法包括一個布林值引數，指定使用者結果是否為「正值」&mdash; 如果值為
+<code>true</code>，則表示使用者選取正值按鈕，而您應該儲存新值。
+例如：
+</p>
+
+<pre>
+&#64;Override
+protected void onDialogClosed(boolean positiveResult) {
+    // When the user selects "OK", persist the new value
+    if (positiveResult) {
+        persistInt(mNewValue);
+    }
+}
+</pre>
+
+<p>在此範例中，<code>mNewValue</code> 是保留設定目前值的類別成員。
+呼叫 {@link android.preference.Preference#persistInt persistInt()} 可將值儲存到 {@link android.content.SharedPreferences} 檔案 (自動使用 XML 檔案中為此 {@link android.preference.Preference} 指定的索引鍵)。
+
+</p>
+
+
+<h3 id="CustomInitialize">初始化目前值</h3>
+
+<p>當系統將您的 {@link android.preference.Preference} 新增到畫面時，會呼叫 {@link android.preference.Preference#onSetInitialValue onSetInitialValue()} 以通知您設定是否有持續值。
+
+如果沒有持續值，這個呼叫會提供您預設值。
+</p>
+
+<p>{@link android.preference.Preference#onSetInitialValue onSetInitialValue()} 方法會傳送布林值 <code>restorePersistedValue</code>，以指出該設定的值是否已經持續。
+
+如果是 <code>true</code>，則您應該呼叫其中一個 {@link
+android.preference.Preference} 類別的 {@code getPersisted*()} 方法以擷取持續值，例如，如果為整數值，可使用 {@link
+android.preference.Preference#getPersistedInt getPersistedInt()}。
+您通常都會想要擷取持續值，如此您可以正確的更新 UI 以反映之前儲存的值。
+
+</p>
+
+<p>如果 <code>restorePersistedValue</code> 是 <code>false</code>，則您應該使用在第二引數中傳送的預設值。
+</p>
+
+<pre>
+&#64;Override
+protected void onSetInitialValue(boolean restorePersistedValue, Object defaultValue) {
+    if (restorePersistedValue) {
+        // Restore existing state
+        mCurrentValue = this.getPersistedInt(DEFAULT_VALUE);
+    } else {
+        // Set default state from the XML attribute
+        mCurrentValue = (Integer) defaultValue;
+        persistInt(mCurrentValue);
+    }
+}
+</pre>
+
+<p>在實際上沒有持續值或沒有索引鍵的情況下，每個 {@code getPersisted*()} 方法會採用指定要使用之預設值的引數。
+在上述範例中，會使用本機常數來指定預設值，以避免 {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} 無法傳回持續值。
+</p>
+
+<p class="caution"><strong>注意：</strong>您<strong>無法</strong>使用 <code>defaultValue</code> 作為 {@code getPersisted*()} 方法中的預設值，因為當 <code>restorePersistedValue</code> 為 <code>true</code> 時，其值永遠是 null。
+
+</p>
+
+
+<h3 id="CustomDefault">提供預設值</h3>
+
+<p>如果 {@link android.preference.Preference} 類別的執行個體指定預設值 (包含 {@code android:defaultValue} 屬性)，則系統會在將物件具現化時呼叫 {@link android.preference.Preference#onGetDefaultValue
+onGetDefaultValue()}，以擷取值。
+
+您必須實作此方法，才能讓系統將預設值儲存在 {@link
+android.content.SharedPreferences} 中。
+例如：</p>
+
+<pre>
+&#64;Override
+protected Object onGetDefaultValue(TypedArray a, int index) {
+    return a.getInteger(index, DEFAULT_VALUE);
+}
+</pre>
+
+<p>方法引數可以提供您所需的所有物件：屬性陣列，以及您必須擷取之 {@code android:defaultValue} 的索引位置。
+您必須實作此方法以便從屬性擷取預設值的原因，是因為您必須在未定義值的情況為屬性指定一個本機預設值。
+
+</p>
+
+
+
+<h3 id="CustomSaveState">儲存和還原偏好設定狀態</h3>
+
+<p>如同版面配置中的 {@link android.view.View}，您的 {@link android.preference.Preference} 子類別負責在 Activity 或片段重新啟動 (例如，當使用者旋轉螢幕時) 時，儲存和還原其狀態。
+
+如要正確的儲存和還原 {@link android.preference.Preference} 類別的狀態，您必須實作生命週期回呼方法 {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} 和 {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()}。
+
+</p>
+
+<p>您 {@link android.preference.Preference} 的狀態由實作 {@link android.os.Parcelable} 介面的物件定義。
+Android 架構為您提供這類物件作為定義狀態物件的起始點：{@link
+android.preference.Preference.BaseSavedState} 類別。
+</p>
+
+<p>如要定義 {@link android.preference.Preference} 類別儲存狀態的方法，您應該延伸 {@link android.preference.Preference.BaseSavedState} 類別。
+您只需要覆寫幾個方法，然後定義 {@link android.preference.Preference.BaseSavedState#CREATOR}物件。
+
+</p>
+
+<p>對於大多數應用程式而言，如果您的 {@link android.preference.Preference} 子類別儲存整數以外的資料類型，您可以複製下列實作，然後變更處理 {@code value} 的行即可。
+
+</p>
+
+<pre>
+private static class SavedState extends BaseSavedState {
+    // Member that holds the setting's value
+    // Change this data type to match the type saved by your Preference
+    int value;
+
+    public SavedState(Parcelable superState) {
+        super(superState);
+    }
+
+    public SavedState(Parcel source) {
+        super(source);
+        // Get the current preference's value
+        value = source.readInt();  // Change this to read the appropriate data type
+    }
+
+    &#64;Override
+    public void writeToParcel(Parcel dest, int flags) {
+        super.writeToParcel(dest, flags);
+        // Write the preference's value
+        dest.writeInt(value);  // Change this to write the appropriate data type
+    }
+
+    // Standard creator object using an instance of this class
+    public static final Parcelable.Creator&lt;SavedState> CREATOR =
+            new Parcelable.Creator&lt;SavedState>() {
+
+        public SavedState createFromParcel(Parcel in) {
+            return new SavedState(in);
+        }
+
+        public SavedState[] newArray(int size) {
+            return new SavedState[size];
+        }
+    };
+}
+</pre>
+
+<p>將上述 {@link android.preference.Preference.BaseSavedState} 實作新增到您的應用程式 (通常做為 {@link android.preference.Preference} 子類別的子類別) 之後，您需要針對 {@link android.preference.Preference} 子類別實作 {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} 和 {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()} 方法。
+
+
+</p>
+
+<p>例如：</p>
+
+<pre>
+&#64;Override
+protected Parcelable onSaveInstanceState() {
+    final Parcelable superState = super.onSaveInstanceState();
+    // Check whether this Preference is persistent (continually saved)
+    if (isPersistent()) {
+        // No need to save instance state since it's persistent,
+        // use superclass state
+        return superState;
+    }
+
+    // Create instance of custom BaseSavedState
+    final SavedState myState = new SavedState(superState);
+    // Set the state's value with the class member that holds current
+    // setting value
+    myState.value = mNewValue;
+    return myState;
+}
+
+&#64;Override
+protected void onRestoreInstanceState(Parcelable state) {
+    // Check whether we saved the state in onSaveInstanceState
+    if (state == null || !state.getClass().equals(SavedState.class)) {
+        // Didn't save the state, so call superclass
+        super.onRestoreInstanceState(state);
+        return;
+    }
+
+    // Cast state to custom BaseSavedState and pass to superclass
+    SavedState myState = (SavedState) state;
+    super.onRestoreInstanceState(myState.getSuperState());
+    
+    // Set this Preference's widget to reflect the restored state
+    mNumberPicker.setValue(myState.value);
+}
+</pre>
+
diff --git a/docs/html-intl/intl/zh-tw/guide/topics/ui/ui-events.jd b/docs/html-intl/intl/zh-tw/guide/topics/ui/ui-events.jd
new file mode 100644
index 0000000..68714e8
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/guide/topics/ui/ui-events.jd
@@ -0,0 +1,291 @@
+page.title=輸入事件
+parent.title=使用者介面
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>本文件內容</h2>
+  <ol>
+    <li><a href="#EventListeners">事件接聽器</a></li>
+    <li><a href="#EventHandlers">事件處理常式</a></li>
+    <li><a href="#TouchMode">輕觸模式</a></li>
+    <li><a href="#HandlingFocus">處理焦點</a></li>
+  </ol>
+
+</div>
+</div>
+
+<p>在 Android，有多種方法可以攔截使用者與應用程式互動的事件。
+如果考慮的是使用者介面內的事件，方法就是從與使用者互動的特定檢視物件中擷取事件。
+檢視類別提供執行此動作的方法。</p>
+
+<p>在您用來撰寫版面配置的各種檢視類別中，您會發現多種公用回呼方法，對 UI 事件似乎相當實用。
+當該物件發生個別動作時，Android 架構會呼叫這些方法。
+例如，輕觸檢視 (例如按鈕) 時，會在該物件上呼叫 <code>onTouchEvent()</code> 方法。
+不過，為了攔截這個事件，您必須延伸類別並覆寫方法。
+然而，延伸每個檢視物件以便處理這類事件並不實際。
+這就是檢視類別也包含巢狀介面與回呼的集合的原因，這樣您就能更輕鬆地定義。
+這些介面稱為<a href="#EventListeners">事件接聽器</a>，就是用來擷取使用者與您 UI 互動的票券。
+</p>
+
+<p>雖然您更常使用事件接聽器來接聽使用者互動，未來您可能會想要延伸檢視類別以建置自訂元件。
+或許您想要延伸 {@link android.widget.Button} 類別讓一些項目更為出色。
+
+在這種情況下，您能夠使用類別<a href="#EventHandlers">事件處理常式</a>來為您的類別定義預設事件行為。
+</p>
+
+
+<h2 id="EventListeners">事件接聽器</h2>
+
+<p>事件接聽器是 {@link android.view.View} 類別中的一個介面，該類別包含單一回呼方法。
+當使用者與 UI 中的項目互動並觸發接聽器所註冊的檢視時，Android 架構就會呼叫這些方法。
+</p>
+
+<p>事件接聽器介面包含下列回呼方法：</p>
+
+<dl>
+  <dt><code>onClick()</code></dt>
+    <dd>從 {@link android.view.View.OnClickListener}。使用者輕觸項目 (處於輕觸模式時)，或將焦點放在具有導覽鍵或軌跡球的項目上，然後按適當的 "enter" 鍵或按下軌跡球時，就會呼叫。
+
+
+</dd>
+  <dt><code>onLongClick()</code></dt>
+    <dd>從 {@link android.view.View.OnLongClickListener}。使用者輕觸並按住項目 (處於輕觸模式時)，或將焦點放在具有導覽鍵或軌跡球的項目上，然後按住適當的 "enter" 鍵或按住軌跡球 (一秒) 時，就會呼叫。
+
+
+</dd>
+  <dt><code>onFocusChange()</code></dt>
+    <dd>從 {@link android.view.View.OnFocusChangeListener}。使用者使用導覽鍵或軌跡球導覽至項目或離開項目時，就會呼叫。
+</dd>
+  <dt><code>onKey()</code></dt>
+    <dd>從 {@link android.view.View.OnKeyListener}。使用者將焦點放在項目上，然後按下或放開裝置上的硬體鍵時，就會呼叫。
+</dd>
+  <dt><code>onTouch()</code></dt>
+    <dd>從 {@link android.view.View.OnTouchListener}。當使用者執行符合輕觸事件資格的動作時，包括按下、放開或在螢幕上的任何移動手勢 (在項目邊界內)，就會呼叫。
+
+</dd>
+  <dt><code>onCreateContextMenu()</code></dt>
+    <dd>從 {@link android.view.View.OnCreateContextMenuListener}。建置操作選單時 (產生持續「長按」的效果)，就會呼叫。
+請參閱<a href="{@docRoot}guide/topics/ui/menus.html#context-menu">選單</a>開發人員指南的操作選單相關討論。
+
+</dd>
+</dl>
+
+<p>這些方法是其個別介面的唯一要素。如要定義其中一種方法並處理您的事件，可在您的 Activity 中實作巢狀介面或將它定義為匿名類別。然後，將您的實作執行個體傳送至個別的 <code>View.set...Listener()</code> 方法。
+
+
+(例如，呼叫
+<code>{@link android.view.View#setOnClickListener(View.OnClickListener) setOnClickListener()}</code>，將您的 {@link android.view.View.OnClickListener OnClickListener} 實作傳送給它。)
+</p>
+
+<p>下列範例說明如何為某個按鈕註冊 on-click 接聽器。 </p>
+
+<pre>
+// Create an anonymous implementation of OnClickListener
+private OnClickListener mCorkyListener = new OnClickListener() {
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+};
+
+protected void onCreate(Bundle savedValues) {
+    ...
+    // Capture our button from layout
+    Button button = (Button)findViewById(R.id.corky);
+    // Register the onClick listener with the implementation above
+    button.setOnClickListener(mCorkyListener);
+    ...
+}
+</pre>
+
+<p>您也會發現在 Activity 中實作 OnClickListener 會更為方便。這樣可避免額外的類別載入和物件配置。
+例如：</p>
+<pre>
+public class ExampleActivity extends Activity implements OnClickListener {
+    protected void onCreate(Bundle savedValues) {
+        ...
+        Button button = (Button)findViewById(R.id.corky);
+        button.setOnClickListener(this);
+    }
+
+    // Implement the OnClickListener callback
+    public void onClick(View v) {
+      // do something when the button is clicked
+    }
+    ...
+}
+</pre>
+
+<p>請注意，上述範例的 <code>onClick()</code> 回呼不會傳回任何值，但某些其他事件接聽器方法必須傳回布林值。
+這個原因取決於事件。
+少數執行此事件的原因如下：</p>
+<ul>
+  <li><code>{@link android.view.View.OnLongClickListener#onLongClick(View) onLongClick()}</code> - 這會傳回一個布林值，指出您是否已使用此事件，未來不應該繼續執行。
+亦即，傳回 <em>true</em> 指出您已處理事件，應該在這裡停止；如果您未處理事件和/或事件應該繼續在任何其他 on-click 接聽器上執行，則會傳回 <em>false</em>。
+
+
+</li>
+  <li><code>{@link android.view.View.OnKeyListener#onKey(View,int,KeyEvent) onKey()}</code> - 這會傳回一個布林值，指出您是否已使用此事件，未來不應該繼續執行。
+
+    亦即，傳回 <em>true</em> 指出您已處理事件，應該在這裡停止；如果您未處理事件和/或事件應該繼續在任何其他 on-key 接聽器上執行，則會傳回 <em>false</em>。
+
+</li>
+  <li><code>{@link android.view.View.OnTouchListener#onTouch(View,MotionEvent) onTouch()}</code> - 這會傳回一個布林值，指出您的接聽器是否已使用此事件。
+最重要的是，這個事件可以處理彼此接續的多個動作。
+因此，收到向下動作事件時如果您傳回 <em>false</em>，就表示您尚未使用事件，而且對於這個事件的後續動作也不感興趣。
+
+因此，您不需要在事件內執行任何其他動作，例如手指手勢或最終動作事件。
+</li>
+</ul>
+
+<p>請記住，硬體按鍵事件一律會傳送至目前焦點中的檢視。它們會從檢視階層的最上層開始發送，然後往下直到到達適當的目的地為止。
+如果焦點現在位於您的檢視 (或檢視的子項)，則您可以透過 <code>{@link android.view.View#dispatchKeyEvent(KeyEvent)
+dispatchKeyEvent()}</code> 方法查看事件過程。
+作為透過您的檢視擷取按鍵事件的替代方法，您也可以使用 <code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code> 和 <code>{@link android.app.Activity#onKeyUp(int,KeyEvent) onKeyUp()}</code> 接收您 Activity 內的所有事件。
+
+</p>
+
+<p>此外，當您思考應用程式的文字輸入時，請記住，許多裝置只有軟體輸入方法。
+這類方法不需要以按鍵為基礎；有些可能會使用語音輸入、手寫等方式。即使輸入方法出現類似鍵盤的介面，也通常<strong>不會</strong>觸發事件的
+<code>{@link android.app.Activity#onKeyDown(int,KeyEvent) onKeyDown()}</code> 系列。
+您不應該建置需要按下特定按鍵才能控制的 UI，除非您想將應用程式限制為使用硬體鍵盤的裝置。
+
+尤其是當使用者按 Return 鍵時，不要藉助這些方法來驗證輸入；改為使用像 {@link android.view.inputmethod.EditorInfo#IME_ACTION_DONE} 的動作向輸入方法示意您應用程式預期的反應方式，讓它能夠以有意義的方式變更其 UI。
+
+避免假設軟體輸入方法應該會如何運作，只要相信它能為您的應用程式提供既有的格式化文字。
+</p>
+
+<p class="note"><strong>注意：</strong>Android 會先呼叫事件處理常式，然後再從類別定義呼叫適當的預設處理常式。
+因此，從這些事件接聽器傳回 <em>true</em> 將會停止將事件傳播到其他事件接聽器，也會封鎖對檢視中預設事件處理常式的回呼。
+
+因此，要確定您傳回 <em>true</em> 時要終止事件。</p>
+
+
+<h2 id="EventHandlers">事件處理常式</h2>
+
+<p>如果您正從檢視建置自訂元件，則您就能定義多種回呼方法做為預設事件處理常式。在<a href="{@docRoot}guide/topics/ui/custom-components.html">自訂元件</a>的相關文件中，您將瞭解事件處理常式的一些常見回呼，包括：
+
+
+
+</p>
+<ul>
+  <li><code>{@link  android.view.View#onKeyDown}</code> - 當發生新的按鍵事件時就會進行呼叫。</li>
+  <li><code>{@link  android.view.View#onKeyUp}</code> - 當發生向上鍵事件時就會進行呼叫。</li>
+  <li><code>{@link  android.view.View#onTrackballEvent}</code> - 當發生軌跡球動作事件時就會進行呼叫。</li>
+  <li><code>{@link  android.view.View#onTouchEvent}</code> - 當發生觸控螢幕動作事件時就會進行呼叫。</li>
+  <li><code>{@link  android.view.View#onFocusChanged}</code> - 當檢視獲得或失去焦點時就會進行呼叫。</li>
+</ul>
+<p>您還必須注意其他一些方法，這些方法不屬於檢視類別，但會直接影響您能夠處理事件的方式。
+因此，在版面配置中管理更複雜的事件時，請考量下列其他方法：
+</p>
+<ul>
+  <li><code>{@link  android.app.Activity#dispatchTouchEvent(MotionEvent)
+    Activity.dispatchTouchEvent(MotionEvent)}</code> - 這讓您的 {@link
+android.app.Activity} 能在發送至視窗之前攔截所有輕觸事件。</li>
+  <li><code>{@link  android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)
+    ViewGroup.onInterceptTouchEvent(MotionEvent)}</code> - 這讓 {@link
+android.view.ViewGroup} 在發送至子檢視時能監控事件。</li>
+  <li><code>{@link  android.view.ViewParent#requestDisallowInterceptTouchEvent(boolean)
+    ViewParent.requestDisallowInterceptTouchEvent(boolean)}</code> - 呼叫這個父檢視以指出不應該使用 <code>{@link 
+    android.view.ViewGroup#onInterceptTouchEvent(MotionEvent)}</code> 攔截輕觸事件。
+</li>
+</ul>
+
+<h2 id="TouchMode">輕觸模式</h2>
+<p>
+使用者以方向鍵或軌跡球瀏覽使用者介面時，必須對可動作的項目 (例如按鈕) 提供焦點，這樣使用者就能看到什麼項目將接受輸入。
+
+不過，如果裝置具有輕觸功能，而且使用者透過輕觸方式開始與介面互動，就不需要再將項目反白顯示，或是對特定檢視提供焦點。
+
+因此，這就是名稱為「輕觸模式」的互動模式。
+ 
+</p>
+<p>
+如果是具備輕觸功能的裝置，使用者輕觸螢幕之後，裝置就會進入輕觸模式。
+從這點以此類推，只有 
+{@link android.view.View#isFocusableInTouchMode} 為 true 的檢視才可設定焦點，例如文字編輯小工具。
+其他可輕觸的檢視，例如按鈕，在輕觸時不會成為焦點；按下時，只會觸發 on-click 接聽器。
+
+</p>
+<p>
+使用者在任何時候點擊方向鍵或使用軌跡球捲動時，裝置會結束輕觸模式，然後找尋要成為焦點的檢視。
+現在，使用者可繼續與使用者介面互動，而不必輕觸螢幕。
+
+</p>
+<p>
+整個系統 (所有視窗和 Activity) 都會保留輕觸模式的狀態。如要查詢目前的狀態，您可以呼叫 
+{@link android.view.View#isInTouchMode} 以查看裝置目前是否處於輕觸模式。
+
+</p>
+
+
+<h2 id="HandlingFocus">處理焦點</h2>
+
+<p>架構會處理慣例焦點移動以回應使用者輸入。
+這包括在移除或隱藏檢視時變更焦點，或是新檢視可用時。
+檢視可透過 <code>{@link android.view.View#isFocusable()}</code> 方法指出它們成為焦點的意願。
+如要變更檢視是否可成為焦點，可呼叫 <code>{@link android.view.View#setFocusable(boolean) setFocusable()}</code>。
+處於輕觸模式時，您可使用 <code>{@link android.view.View#isFocusableInTouchMode()}</code> 查詢檢視是否允許成為焦點。
+
+您可以使用 <code>{@link android.view.View#setFocusableInTouchMode(boolean) setFocusableInTouchMode()}</code> 進行變更。
+</p>
+
+<p>焦點移動是以演算法為依據，在指定的方向尋找最接近的項目。
+在少數情況下，預設的演算法與開發人員預期的行為可能不符。
+在這些情況下，您可以在版面配置檔案使用下列 XML 屬性進行明確的覆寫：
+
+<var>nextFocusDown</var>、 <var>nextFocusLeft</var>、 <var>nextFocusRight</var>和
+<var>nextFocusUp</var>。在移出焦點的檢視中，新增下列其中一個屬性<em></em>。
+將屬性的值定義為應該成為焦點之檢視的 ID<em></em>。
+例如：</p>
+<pre>
+&lt;LinearLayout
+    android:orientation="vertical"
+    ... >
+  &lt;Button android:id="@+id/top"
+          android:nextFocusUp="@+id/bottom"
+          ... />
+  &lt;Button android:id="@+id/bottom"
+          android:nextFocusDown="@+id/top"
+          ... />
+&lt;/LinearLayout>
+</pre>
+
+<p>一般來說，在這個直式版面配置中，從第一個按鈕往上瀏覽或從第二個按鈕往下瀏覽都不會到任何地方。
+現在，上方按鈕已將下方按鈕定義為
+ <var>nextFocusUp</var> (反之亦然)，導覽焦點會從上到下以及從下到上循環。
+</p>
+
+<p>如果您想在 UI 中將檢視宣告為可設定焦點 (傳統上不行)，可在您的版面配置宣告中將 <code>android:focusable</code> XML 屬性新增至檢視。
+
+將值設定為 <var>true</var>。您也可以使用 <code>android:focusableInTouchMode</code> 在輕觸模式中將檢視宣告為可設定焦點。
+</p>
+<p>如要要求特定檢視成為焦點，可呼叫 <code>{@link android.view.View#requestFocus()}</code>。</p>
+<p>如要接聽焦點事件 (在檢視獲得或失去焦點時收到通知)，可使用
+<code>{@link android.view.View.OnFocusChangeListener#onFocusChange(View,boolean) onFocusChange()}</code> (如上述<a href="#EventListeners">事件接聽器</a>中所討論)。
+</p>
+
+
+
+<!--
+<h2 is="EventCycle">Event Cycle</h2>
+   <p>The basic cycle of a View is as follows:</p>
+   <ol>
+    <li>An event comes in and is dispatched to the appropriate View. The View
+    handles the event and notifies any listeners.</li>
+    <li>If, in the course of processing the event, the View's bounds may need
+    to be changed, the View will call {@link android.view.View#requestLayout()}.</li>
+    <li>Similarly, if in the course of processing the event the View's appearance
+    may need to be changed, the View will call {@link android.view.View#invalidate()}.</li>
+    <li>If either {@link android.view.View#requestLayout()} or {@link android.view.View#invalidate()} were called,
+    the framework will take care of measuring, laying out, and drawing the tree
+    as appropriate.</li>
+   </ol>
+   
+   <p class="note"><strong>Note:</strong> The entire View tree is single threaded. You must always be on
+   the UI thread when calling any method on any View.
+   If you are doing work on other threads and want to update the state of a View
+   from that thread, you should use a {@link android.os.Handler}.
+   </p>
+-->
diff --git a/docs/html-intl/intl/zh-tw/index.jd b/docs/html-intl/intl/zh-tw/index.jd
index cf1376f..a5772ef 100644
--- a/docs/html-intl/intl/zh-tw/index.jd
+++ b/docs/html-intl/intl/zh-tw/index.jd
@@ -5,42 +5,81 @@
 
 @jd:body
 
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
 
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="/preview/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
   <div class="wrap" style="max-width:1100px;margin-top:0">
-    <div class="cols dac-hero-content">
-      <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
-      </div>
-      <div class="col-8of16 col-pull-7of16">
-        <div class="dac-hero-tag"></div>
-
-        <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
-        <p class="dac-hero-description">準備使用新版 Android。在 Nexus 5、6、9 和
-        Player 上測試您的應用程式。 </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/index.html">
+    <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+      <a href="{@docRoot}preview/index.html">
+        <h1 class="dac-hero-title">Android N Developer Preview</h1>
+        <p class="dac-hero-description">
+          Get ready for the next version of Android!
+          <strong>Test your apps</strong> on Nexus and other devices. Support new system
+          behaviors to <strong>save power and memory</strong>.
+          Extend your apps with <strong>multi-window UI</strong>,
+          <strong>direct reply notifications</strong> and more.
+        </p>
+        <a class="dac-hero-cta" href="/preview/index.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          開始使用！
-        </a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
+          Learn more
+        </a><!--<br>
+        <a class="dac-hero-cta" href="/preview/support.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-      </div>
+          Update to Developer Preview (final SDK)
+        </a><br>-->
+      </a>
+    </div>
+    <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+      <a href="{@docRoot}preview/index.html">
+        <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+             srcset="/images/home/n-preview-hero.png 1x,
+             /images/home/n-preview-hero_2x.png 2x">
+        </a>
     </div>
   </div>
-</a>
-</article></section>
+</section>
 
-<div class="actions-bar dac-expand dac-invert">
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
   <div class="wrap dac-offset-parent">
     <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
       <i class="dac-sprite dac-arrow-down-gray"></i>
     </a>
+    <ul class="dac-actions">
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}sdk/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Get the SDK
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}samples/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Browse sample code
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}distribute/stories/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Watch stories
+        </a>
+      </li>
+    </ul>
+  </div><!-- end .wrap -->
+</div><!-- end .dac-actions -->
+
+<div id="useOldTemplates" style="display:none" class="actions-bar dac-expand dac-invert">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button="" href="#build-apps">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
     <div class="actions">
       <div><a href="{@docRoot}sdk/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
@@ -50,17 +89,15 @@
         <span class="dac-sprite dac-auto-chevron-large"></span>
         Browse Samples
       </a></div>
-      <div><a href="//www.youtube.com/user/androiddevelopers">
+      <div><a href="{@docRoot}distribute/stories/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
-        Watch Videos
+        Watch Stories
       </a></div>
     </div><!-- end .actions -->
   </div><!-- end .wrap -->
-</div><!-- end .actions-bar -->
+</div>
 
-
-
-<section class="dac-section dac-section-light" id="build-apps"><div class="wrap">
+<section class="dac-section dac-light" id="build-apps"><div class="wrap">
   <h1 class="dac-section-title">Build Beautiful Apps</h1>
   <div class="dac-section-subtitle">
     Resources to get you started with designing and developing for Android.
diff --git a/docs/html-intl/intl/zh-tw/preview/api-overview.jd b/docs/html-intl/intl/zh-tw/preview/api-overview.jd
deleted file mode 100644
index a68f0cd..0000000
--- a/docs/html-intl/intl/zh-tw/preview/api-overview.jd
+++ /dev/null
@@ -1,521 +0,0 @@
-page.title=API 總覽
-page.keywords=預覽,sdk,相容性
-page.tags=previewresources, androidm
-sdk。platform.apiLevel=22-mnc
-page.image=images/cards/card-api-overview_16-9_2x.png
-@jd:body
-
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>本文件內容
-<a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
-        <span class="more">顯示更多內容</span>
-        <span class="less" style="display:none">顯示較少內容</span></a></h2>
-
-<ol id="toc44" class="hide-nested">
-  <li><a href="#app-linking">應用程式連結</a></li>
-  <li><a href="#backup">針對應用程式進行自動備份</a></li>
-  <li><a href="#authentication">驗證</a>
-    <ol>
-      <li><a href="#fingerprint-authentication">指紋驗證</a></li>
-      <li><a href="#confirm-credential">確認認證</a></li>
-    </ol>
-  </li>
-  <li><a href="#direct-share">直接分享</a></li>
-  <li><a href="#voice-interactions">語音互動</a></li>
-  <li><a href="#assist">協助 API</a></li>
-  <li><a href="#notifications">通知</a></li>
-  <li><a href="#bluetooth-stylus">藍牙手寫筆支援</a></li>
-  <li><a href="#ble-scanning">已改進藍牙低電量掃描</a></li>
-  <li><a href="#hotspot">無線基地台 2.0 版本 1 支援</a></li>
-  <li><a href="#4K-display">4K 顯示模式</a></li>
-  <li><a href="#behavior-themeable-colorstatelists">具備設計風格的 ColorStateList</a></li>
-  <li><a href="#audio">音訊功能</a></li>
-  <li><a href="#video">影片功能</a></li>
-  <li><a href="#camera">相機功能</a>
-    <ol>
-      <li><a href="#flashlight">閃光燈 API</a></li>
-      <li><a href="#reprocessing">相機重新處理</a></li>
-    </ol>
-  </li>
-  <li><a href="#afw">Android for Work 功能</a></li>
-</ol>
-
-<h2>API 差異</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API 級別 22 到 M 預覽版&raquo;</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>M 開發人員預覽版讓您能夠搶先查看即將發行的 Android 平台版本，這個版本將提供可供使用者和應用程式開發人員使用的新功能。
-
-本文件提供最值得受到矚目的 API 簡介。</p>
-
-<p>M 開發人員預覽版的適用對象是<strong>早期採用的開發人員</strong>和<strong>測試者</strong>。
-如果您對於如何影響 Android 架構方向深感興趣，請<a href="{@docRoot}preview/setup-sdk.html">嘗試使用 M 開發人員預覽版</a>，然後將您的意見反應傳送給我們！
-
-
-</p>
-
-<p class="caution"><strong>注意：</strong>請勿將使用 M 開發人員預覽版的應用程式發行到 Google Play 商店。
-</p>
-
-<p class="note"><strong>注意：</strong>本文件通常會參考 <a href="{@docRoot}">developer.android.com</a> 上尚未提供可用參考資料的類別和方法。
-這些 API 元素在本文件中的格式是 {@code code style} (不含超連結)。
-如需這些元素的 API 初稿文件，請下載<a href="{@docRoot}preview/download.html#docs">預覽版參考資料</a>。
-</p>
-
-<h3>重要行為變更</h3>
-
-<p>如果您先前曾發行過適用於 Android 的應用程式，請注意，您的應用程式會受到平台中的變更所影響。
-</p>
-
-<p>如需完整資訊，請參閱<a href="behavior-changes.html">行為變更</a>。</p>
-
-<h2 id="app-linking">應用程式連結</h2>
-<p>這個預覽版提供功能更強大的應用程式連結來增強 Android 的意圖系統。此功能讓您能夠將應用程式關聯到您自己的 Web 網域。
-根據這個關聯，平台可以判斷要用來處理特定 Web 連結的預設應用程式，並略過提示使用者選取應用程式的程序。如要深入瞭解如何實作此功能，請參閱<a href="{@docRoot}preview/features/app-linking.html">應用程式連結</a>。
-
-
-
-
-<h2 id="backup">針對應用程式進行自動備份</h2>
-<p>系統現在會針對應用程式執行自動完整資料備份與還原。預設會針對目標為 M 預覽版的應用程式啟用這個行為；您不需要新增任何其他的程式碼。
-如果使用者刪除他們的 Google 帳戶，也會同時刪除他們的備份資料。
-如要深入瞭解此功能的運作方式以及如何在檔案系統上設定要備份的內容，請參閱<a href="{@docRoot}preview/backup/index.html">針對應用程式進行自動備份</a>。
-
-</p>
-
-<h2 id="authentication">驗證</h2>
-<p>這個預覽版提供新的 API，讓您能夠在支援的裝置上利用使用者的指紋掃描來驗證他們，並使用裝置解鎖機制 (例如鎖定螢幕密碼) 來檢查距離最後一次驗證該使用者的時間有多接近。
-
-將這些 API 與 <a href="{@docRoot}training/articles/keystore.html">Android 金鑰存放區系統</a>搭配使用。
-</p>
-
-<h3 id="fingerprint-authentication">指紋驗證</h3>
-
-<p>如要透過指紋掃描驗證使用者，請取得新的
-{@code android.hardware.fingerprint.FingerprintManager} 類別的執行個體，然後呼叫
-{@code FingerprintManager.authenticate()} 方法。您的應用程式必須在配備指紋感應器的相容裝置上執行。
-您必須在應用程式上實作適用於指紋驗證流程的使用者介面，並在您的 UI 中使用標準的 Android 指紋圖示。Android 指紋圖示 ({@code c_fp_40px.png}) 隨附於<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">範例應用程式</a>中。如果您正在開發多個使用指紋驗證的應用程式，請注意，每個應用程式都必須個別驗證使用者的指紋。
-
-
-
-
-</p>
-
-<p>如要在您的應用程式中使用此功能，請先在您的宣示說明中新增 {@code USE_FINGERPRINT} 權限。
-</p>
-
-<pre>
-&lt;uses-permission
-        android:name="android.permission.USE_FINGERPRINT" /&gt;
-</pre>
-
-<img src="{@docRoot}preview/images/fingerprint-screen.png" srcset="{@docRoot}preview/images/fingerprint-screen.png 1x, {@docRoot}preview/images/fingerprint-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-
-<p>如要查看指紋驗證的應用程式實作，請參閱<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">指紋對話方塊範例</a>。
-
-</p>
-
-<p>如果您正在測試此功能，請依照下列步驟執行：</p>
-<ol>
-<li>安裝 Android SDK 工具修訂版 24.3 (如果您尚未安裝)。</li>
-<li>前往 [設定] &gt; [安全性] &gt; [指紋]<strong></strong>，然後依照註冊指示，在模擬器中註冊新的指紋。
-</li>
-<li>使用模擬器，利用下列命令來模擬指紋輕觸事件。
-使用同一個命令，在鎖定螢幕上或您的應用程式中模擬指紋輕觸事件。
-
-<pre class="no-prettyprint">
-adb -e emu finger touch &lt;finger_id&gt;
-</pre>
-<p>在 Windows 上，您可能必須執行 {@code telnet 127.0.0.1 <emulator-id>}，後面接著
-{@code finger touch <finger_id>}。
-</p>
-</li>
-</ol>
-
-<h3 id="confirm-credential">確認認證</h3>
-<p>您的應用程式可以根據使用者最近一次將裝置解鎖的時間有多接近來驗證他們。此功能讓使用者不需記住其他應用程式特定的密碼，並且讓您不需要實作自己的驗證使用者介面。
-
-您的應用程式應該將此功能與公用或秘密金鑰實作搭配使用，來進行使用者驗證。
-</p>
-
-<p>如要設定在成功驗證使用者之後，同一個金鑰可重複使用的逾時時間長度，可在您設定 {@link javax.crypto.KeyGenerator} 或
-{@link java.security.KeyPairGenerator} 時，呼叫新的
-{@code android.security.keystore.KeyGenParameterSpec.setUserAuthenticationValidityDurationSeconds()}
-方法。
-此功能目前適用於對稱式密碼編譯操作。
-</p>
-
-<p>避免過度顯示重新驗證對話方塊 -- 您的應用程式應該先嘗試使用密碼編譯物件，如果逾時過期，才使用
-{@link android.app.KeyguardManager#createConfirmDeviceCredentialIntent(java.lang.CharSequence, java.lang.CharSequence) createConfirmDeviceCredentialIntent()}
-方法在您的應用程式內重新驗證使用者。
-
-</p>
-
-<p>如要查看此功能的應用程式實作，請參閱<a href="https://github.com/googlesamples/android-ConfirmCredential" class="external-link">確認認證範例</a>。
-
-</p>
-
-<h2 id="direct-share">直接分享</h2>
-
-<img src="{@docRoot}preview/images/direct-share-screen.png" srcset="{@docRoot}preview/images/direct-share-screen.png 1x, {@docRoot}preview/images/direct-share-screen_2x.png 2x" style="float:right; margin:0 0 20px 30px" width="312" height="329" />
-
-<p>這個預覽版提供 API，讓使用者能夠以直覺且快速的方式進行分享。您現在可以定義「直接分享目標」<em></em>，在您的應用程式中啟動特定的行為。這些直接分享目標是透過 [分享]<em></em> 選單來向使用者公開。
-
-此功能讓使用者能夠將內容分享到其他應用程式內的目標，例如聯絡人。
-例如，直接分享目標可以在其他社交網路應用程式中啟動某個活動，讓使用者能夠在該應用程式中，直接與特定的朋友或社群分享內容。
-
-</p>
-
-<p>如要啟用直接分享目標，您必須定義一個類別來擴充
-{@code android.service.} <br>
-{@code chooser.ChooserTargetService} 類別。在宣示說明中宣告您的
-{@code ChooserTargetService}。在該宣告中，指定
-{@code BIND_CHOOSER_TARGET_SERVICE} 權限以及含有
-{@code SERVICE_INTERFACE} 動作的意圖篩選條件。</p>
-<p>下列範例示範如何在您的宣示說明中宣告 {@code ChooserTargetService}。
-</p>
-<pre>
-&lt;service android:name=".ChooserTargetService"
-        android:label="&#64;string/service_name"
-        android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE"&gt;
-    &lt;intent-filter&gt;
-        &lt;action android:name="android.service.chooser.ChooserTargetService" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/service&gt;
-</pre>
-
-<p>針對您要向 {@code ChooserTargetService} 公開的每個活動，在您的應用程式宣示說明中，新增名稱為
-{@code "android.service.chooser.chooser_target_service"} 的
-{@code <meta-data>} 元素。
-</p>
-
-<pre>
-&lt;activity android:name=".MyShareActivity”
-        android:label="&#64;string/share_activity_label"&gt;
-    &lt;intent-filter>
-        &lt;action android:name="android.intent.action.SEND" /&gt;
-    &lt;/intent-filter>
-&lt;meta-data
-        android:name="android.service.chooser.chooser_target_service"
-        android:value=".ChooserTargetService" /&gt;
-&lt;/activity>
-</pre>
-
-<h2 id="voice-interactions">語音互動</h2>
-<p>
-這個預覽版提供新的語音互動 API，可與<a href="https://developers.google.com/voice-actions/" class="external-link">語音操作</a>搭配使用，讓您能夠在應用程式內建置交談式語音體驗。
-
-呼叫
-{@code android.app.Activity.isVoiceInteraction()} 方法，來判斷是否已啟動您的活動來回應語音操作。
-如果是，則您的應用程式可以使用
-{@code android.app.VoiceInteractor} 類別，來要求使用者進行語音確認、從選項清單中選取，以及其他更多動作。
-如要深入瞭解如何實作語音操作，請參閱<a href="https://developers.google.com/voice-actions/interaction/" class="external-link">語音操作開發人員網站</a>。
-
-</p>
-
-<h2 id="assist">協助 API</h2>
-<p>
-這個預覽版提供一種新方式，可透過小幫手吸引使用者來使用您的應用程式。如要使用此功能，使用者必須啟用小幫手來使用目前的內容。
-啟用之後，使用者就能夠在所有應用程式內，按住 <strong>Home</strong> 按鈕不放來啟用小幫手。
-</p>
-<p>您的應用程式可以設定
-{@link android.view.WindowManager.LayoutParams#FLAG_SECURE} 旗標，選擇不要與小幫手分享目前的內容。除了平台傳遞給小幫手的一組標準資訊之外，您的應用程式也可以使用新的 {@code android.app.Activity.AssistContent} 類別來分享其他資訊。
-
-</p>
-
-<p>如要將您應用程式的其他內容提供給小幫手，請依照下列步驟執行：</p>
-
-<ol>
-<li>實作 {@link android.app.Application.OnProvideAssistDataListener} 介面。</li>
-<li>使用
-{@link android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener) registerOnProvideAssistDataListener()} 來註冊這個監聽器。</li>
-<li>如要提供特定活動的內容資訊，請覆寫
- {@link android.app.Activity#onProvideAssistData(android.os.Bundle) onProvideAssistData()}
-回呼，然後選擇性地覆寫新的 {@code Activity.onProvideAssistContent()} 回呼。
-</ol>
-
-<h2 id="notifications">通知</h2>
-<p>這個預覽版新增了下列適用於通知的 API 變更：</p>
-<ul>
-  <li>新的 {@code NotificationListenerService.INTERRUPTION_FILTER_ALARMS} 篩選條件級別，會對應至新的「僅允許鬧鐘」<em></em>的請勿打擾模式。
-</li>
-  <li>新的 {@code Notification.CATEGORY_REMINDER} 類別值，可用來分辨來自其他事件 ({@link android.app.Notification#CATEGORY_EVENT}) 與鬧鐘 ({@link android.app.Notification#CATEGORY_ALARM}) 的使用者排程提醒。
-
-
-</li>
-  <li>新的 {@code android.graphics.drawable.Icon} 類別，可以透過 {@code Notification.Builder.setSmallIcon(Icon)} 和
-{@code Notification.Builder.setLargeIcon(Icon)} 方法來附加您的通知。
-</li>
-  <li>新的 {@code NotificationManager.getActiveNotifications()} 方法，讓您的應用程式能夠找出它們目前有哪些通知仍處於有效狀態。
-如要查看使用此功能的應用程式實作，請參閱<a href="https://github.com/googlesamples/android-ActiveNotifications" class="external-link">使用中通知範例</a>。
-</li>
-</ul>
-
-<h2 id="bluetooth-stylus">藍牙手寫筆支援</h2>
-<p>這個預覽版提供對於使用者使用藍牙手寫筆進行輸入的改良支援。使用者可以將相容的藍芽手寫筆與他們的手機或平板電腦配對並連線。
-連線之後，來自觸控螢幕的位置資訊會與來自手寫筆的壓力和按鈕資訊結合，比起單獨使用觸控螢幕，這樣能夠提供更大範圍的表達方式。
-
-您的應用程式可以藉由在您的活動中註冊新的
-{@code View.onStylusButtonPressListener} 和 {@code GestureDetector.OnStylusButtonPressListener}
-回呼，來監聽手寫筆按鈕的按下動作，並執行次要動作。
-</p>
-
-<p>使用 {@link android.view.MotionEvent} 方法和常數來偵測手寫筆按鈕互動：
-</p>
-<ul>
-<li>如果使用者使用具有一個按鈕的手寫筆輕觸應用程式的螢幕，則
-{@link android.view.MotionEvent#getToolType(int) getTooltype()} 方法會傳回
-{@link android.view.MotionEvent#TOOL_TYPE_STYLUS}。</li>
-<li>針對目標為 M 預覽版的應用程式，
-{@link android.view.MotionEvent#getButtonState() getButtonState()}
-方法會在使用者按下主要手寫筆按鈕時傳回 {@code MotionEvent.STYLUS_BUTTON_PRIMARY}。
-如果手寫筆有第二個按鈕，則當使用者按下該按鈕時，同一個方法會傳回
-{@code MotionEvent.STYLUS_BUTTON_SECONDARY}。如果使用者同時按下這兩個按鈕，此方法即會使用 OR 連結，一併傳回這兩個值 ({@code STYLUS_BUTTON_PRIMARY|STYLUS_BUTTON_SECONDARY})。
-
-</li>
-<li>
-針對目標為較低平台版本的應用程式，
-{@link android.view.MotionEvent#getButtonState() getButtonState()} 方法會傳回
-{@link android.view.MotionEvent#BUTTON_SECONDARY} (針對主要手寫筆按鈕的按下動作)、
-{@link android.view.MotionEvent#BUTTON_TERTIARY} (針對次要手寫筆按鈕的按下動作)，或兩者。
-</li>
-</ul>
-
-<h2 id="ble-scanning">已改進藍牙低電量掃描</h2>
-<p>
-如果您的應用程式會執行藍芽低電量掃描，就可以使用新的
-{@code android.bluetooth.le.ScanSettings.Builder.setCallbackType()} 方法，來指定如果先找到符合
-{@link android.bluetooth.le.ScanFilter} 組合的廣告封包，以及在某個時段中找不到它時，只需通知回呼。
-
-比起先前平台版本中所提供的功能，這個掃描方法功能更強大且更有效率。
-
-</p>
-
-<h2 id="hotspot">無線基地台 2.0 版本 1 支援</h2>
-<p>
-這個預覽版在 Nexus 6 和 Nexus 9 裝置上新增對於無線基地台 2.0 版本 1 規格的支援。如要在您的應用程式中佈建無線基地台 2.0 認證，請使用
-{@link android.net.wifi.WifiEnterpriseConfig} 類別的新方法，例如 {@code setPlmn()} 和
-{@code setRealm()}。
-在 {@link android.net.wifi.WifiConfiguration} 物件中，您可以設定
-{@link android.net.wifi.WifiConfiguration#FQDN} 和 {@code providerFriendlyName} 欄位。新的 {@code ScanResult.PasspointNetwork} 屬性指出偵測到的網路是否代表無線基地台 2.0 存取點。
-
-
-</p>
-
-<h2 id="4K-display">4K 顯示模式</h2>
-<p>此平台現在允許應用程式能夠要求將在相容硬體中呈現的顯示解析度升級到 4K。
-如要查詢目前的實際解析度，請使用新的
-{@code android.view.Display.Mode} API。如果 UI 是使用較低的邏輯解析度來繪製，並向上升級為較高的實際解析度，請注意，
-{@code Display.Mode.getPhysicalWidth()} 方法傳回的實際解析度可能會與 {@link android.view.Display#getSize(android.graphics.Point) getSize()} 報告的邏輯解析度不同。
-
-</p>
-
-<p>您可以在應用程式執行時，藉由設定應用程式視窗的 {@code WindowManager.LayoutParams.preferredDisplayModeId} 屬性，來要求系統變更該應用程式中的實際解析度。
-如果您想要切換為 4K 顯示解析度，這個功能非常實用。
-儘管在 4K 顯示模式中，UI 會持續使用原始解析度 (例如 1080p) 來呈現並向上升級為 4K，但是
-{@link android.view.SurfaceView} 物件可能會以原生解析度來顯示內容。
-</p>
-
-<h2 id="behavior-themeable-colorstatelists">具備設計風格的 ColorStateList</h2>
-<p>針對執行 M 預覽版的裝置，
-{@link android.content.res.ColorStateList} 中目前支援設計風格屬性。
-{@link android.content.res.Resources#getColorStateList(int) getColorStateList()} 和
-{@link android.content.res.Resources#getColor(int) getColor()} 方法已過時。如果您正在呼叫這些 API，請改為呼叫新的 {@code Context.getColorStateList()} 或
-{@code Context.getColor()} 方法。
-您也可以透過 {@link android.support.v4.content.ContextCompat}，在 v4 appcompat 程式庫中取得這些方法。
-</p>
-
-<h2 id="audio">音訊功能</h2>
-
-<p>這個預覽版在 Android 上新增了音訊處理的增強功能，包括： </p>
-<ul>
-  <li>利用新的 {@code android.media.midi} API，來支援 <a href="http://en.wikipedia.org/wiki/MIDI" class="external-link">MIDI</a> 通訊協定。
-使用這些 API 來傳送與接收 MIDI 事件。
-</li>
-  <li>新的 {@code android.media.AudioRecord.Builder} 和 {@code android.media.AudioTrack.Builder}
-類別，可分別建立數位音訊擷取和播放物件，並設定音訊來源和接收屬性來覆寫系統預設值。
-</li>
-  <li>API 勾點，適合用來關聯音訊與輸入裝置。如果您的應用程式允許使用者從連接到 Android TV 的遊戲控制器或遙控器啟動音訊搜尋，則這特別有用。系統會在使用者啟動搜尋時，叫用新的 {@code android.app.Activity.onSearchRequested()} 回呼。
-
-
-如要判斷使用者的輸入裝置是否有內建的麥克風，請從該回呼中擷取 {@link android.view.InputDevice} 物件，然後呼叫新的
-{@code InputDevice.hasMic()} 方法。
-</li>
-  <li>新的 {@code android.media.AudioDevicesManager} 類別，讓您能夠擷取所有已連接的來源與接收音訊裝置的清單。
-如果您想要讓應用程式在連接或中斷連接音訊裝置時收到通知，也可以指定
-{@code android.media.OnAudioDeviceConnectionListener} 物件。
-</li>
-</ul>
-
-<h2 id="video">影片功能</h2>
-<p>這個預覽版在影片處理 API 中增加了新功能，包括：</p>
-<ul>
-<li>新的 {@code android.media.MediaSync} 類別，可協助應用程式同步轉譯音訊和影片串流。
-音訊緩衝區是利用非封鎖的方式來提交，並透過回呼來傳回。
-它也支援動態播放速率。
-</li>
-<li>新的 {@code MediaDrm.EVENT_SESSION_RECLAIMED} 事件，指出應用程式開啟的工作階段已由資源管理員所回收。
-如果您的應用程式使用 DRM 工作階段，就應該處理這個事件，並確定不會使用回收的工作階段。
-
-</li>
-<li>新的 {@code MediaCodec.CodecException.ERROR_RECLAIMED} 錯誤碼，表示資源管理員已回收轉碼器所使用的媒體資源。
-如果發生這個例外狀況，就必須釋放轉碼器，就如同它已進入終止狀態。
-
-</li>
-<li>新的 {@code MediaCodecInfo.CodecCapabilities.getMaxSupportedInstances()} 介面，可取得支援並行轉碼器執行個體數目上限的提示。
-
-</li>
-<li>新的 {@code MediaPlayer.setPlaybackParams()} 方法，可將媒體播放速率設定為快速或慢速播放。
-這也可以和影片一起自動延伸或加速音訊播放。
-</li>
-</ul>
-
-<h2 id="camera">相機功能</h2>
-<p>這個預覽版包含下列可用來存取相機閃光燈和相機重新處理影像的 API：
-</p>
-
-<h3 id="flashlight">閃光燈 API</h3>
-<p>如果相機裝置具有閃光裝置，則您可以呼叫 {@code CameraManager.setTorchMode()}
-方法，在不開啟相機裝置的情況下，開啟或關閉閃光裝置的閃光模式。應用程式不具備閃光裝置或相機裝置的獨佔擁有權。
-每當相機裝置變成無法使用時，或者，當其他相機資源讓閃光變成無法使用時，閃光模式也會關閉且變成無法使用。
-
-其他應用程式也會呼叫 {@code setTorchMode()}
-來關閉閃光模式。關閉最後一個開啟閃光模式的應用程式時，閃光模式即會關閉。
-</p>
-
-<p>您可以呼叫
-{@code CameraManager.registerTorchCallback()} 方法，來註冊回呼要收到有關閃光模式狀態的通知。第一次註冊回呼時，會立即使用所有目前已知具有閃光裝置之相機裝置的閃光模式來呼叫它。
-
-如果成功開啟或關閉閃光模式，即會叫用
-{@code CameraManager.TorchCallback.onTorchModeChanged()} 方法。</p>
-
-<h3 id="reprocessing">重新處理 API</h3>
-<p>{@link android.hardware.camera2 Camera2} API 已擴充，支援重新處理 YUV 和私人不透明格式的影像。
-您的應用程式會判斷是否可透過 {@code CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES} 使用重新處理功能。
-如果裝置支援重新處理，您就可以呼叫
-{@code CameraDevice.createReprocessableCaptureSession()} 來建立可重新處理的相機拍攝工作階段，然後建立適用於重新處理輸入緩衝區的要求。
-
-</p>
-
-<p>使用 {@code ImageWriter} 類別，將輸入緩衝區流程連接到相機重新處理輸入。
-如要取得空的緩衝區，請依照這個程式設計模型執行：</p>
-
-<ol>
-<li>呼叫 {@code ImageWriter.dequeueInputImage()} 方法。</li>
-<li>在輸入緩衝區中填入資料。</li>
-<li>呼叫 {@code ImageWriter.queueInputImage()} 方法，將緩衝區傳送到相機。</li>
-</ol>
-
-<p>如果您將 {@code ImageWriter} 物件和
-{@code android.graphics.ImageFormat.PRIVATE} 影像一起使用，您的應用程式就無法直接存取影像資料。
-請改為呼叫 {@code ImageWriter.queueInputImage()} 方法但不含任何緩衝區複本，直接將 {@code ImageFormat.PRIVATE} 影像傳遞到
-{@code ImageWriter}。
-</p>
-
-<p>{@code ImageReader} 類別現在支援 {@code android.graphics.ImageFormat.PRIVATE} 格式的影像串流。
-這個支援讓您的應用程式能夠保留
-{@code ImageReader} 輸出影像的循環影像佇列、選取一或多個影像，然後將它們傳送到
-{@code ImageWriter} 以進行相機重新處理。</p>
-
-<h2 id="afw">Android for Work 功能</h2>
-<p>這個預覽版包含下列適用於 Android for Work 功能的新 API：</p>
-<ul>
-  <li><strong>已增強適用於公司擁有、單一用途裝置的控制項：</strong>裝置擁有者現在可以控制下列設定，來改進公司擁有、單一用途 (COSU) 裝置的管理：
-
-
-  <ul>
-    <li>使用
-{@code DevicePolicyManager.setKeyguardEnabledState()} 方法來停用或重新啟用滑動解鎖。</li>
-    <li>使用
-{@code DevicePolicyManager.setStatusBarEnabledState()} 方法，來停用或重新啟用狀態列 (包括快速設定、通知，以及啟動 Google 即時資訊的導覽向上滑動手勢)。
-</li>
-    <li>使用 {@link android.os.UserManager} 常數
-{@code DISALLOW_SAFE_BOOT} 來停用或重新啟用安全開機。</li>
-    <li>使用 
-  {@link android.provider.Settings.Global} 常數 {@code STAY_ON_WHILE_PLUGGED_IN}，防止螢幕在使用者為裝置連接電源時關閉。</li>
-  </ul>
-  </li>
-  <li><strong>透過裝置擁有者自動安裝與解除安裝應用程式：</strong>裝置擁有者現在可以使用 {@link android.content.pm.PackageInstaller}
-API (與 Google Play for Work 無關) 自動安裝與解除安裝應用程式。
-您現在可以透過裝置擁有者佈建裝置，該裝置擁有者可在不與使用者互動的情況下擷取並安裝應用程式。
-如要在不啟用 Google 帳戶的情況下輕觸一次就能佈建 Kiosk 或其他這類裝置，這個功能非常有用。
-</li>
-<li><strong>自動存取企業憑證：</strong>當應用程式呼叫
-{@link android.security.KeyChain#choosePrivateKeyAlias(android.app.Activity,android.security.KeyChainAliasCallback,java.lang.String[],java.security.Principal[],java.lang.String,int,java.lang.String) choosePrivateKeyAlias()} 時，在系統提示使用者選取憑證之前，設定檔或裝置擁有者現在會呼叫 {@code DeviceAdminReceiver.onChoosePrivateKeyAlias()} 方法，為提出要求的應用程式自動提供別名。
-
-
-這個功能讓您能夠在不與使用者互動的情況下，為受管理的應用程式授與存取憑證的權限。
-</li>
-<li><strong>自動接受系統更新。</strong>藉由使用
-{@code DevicePolicyManager.setSystemUpdatePolicy()} 來設定系統更新原則，裝置擁有者現在可以自動接受系統更新 (例如，在 Kiosk 裝置的案例中)，或者延後更新，並防止使用者進行更新，最多 30 天。
-
-因此，系統管理員可以設定必須取得更新的每日時間範圍 ，例如，在 Kiosk 裝置處於未使用狀態時。
-在系統更新可供使用時，系統就會檢查工作原則控制器應用程式是否已設定系統更新原則，並據以運作。
-
-
-</li>
-<li>
-<strong>委派的憑證安裝：</strong>設定檔或裝置擁有者現在可以授與第三方廠商的應用程式呼叫這些 {@link android.app.admin.DevicePolicyManager} 憑證管理 API 的能力：
-
-
-<ul>
-  <li>{@link android.app.admin.DevicePolicyManager#getInstalledCaCerts(android.content.ComponentName)
-getInstalledCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#hasCaCertInstalled(android.content.ComponentName,byte[])
-hasCaCertInstalled()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installCaCert(android.content.ComponentName,byte[])
-installCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallCaCert(android.content.ComponentName,byte[])
-uninstallCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallAllUserCaCerts(android.content.ComponentName)
-uninstallAllUserCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installKeyPair(android.content.ComponentName,java.security.PrivateKey,java.security.cert.Certificate,java.lang.String)
-installKeyPair()}</li>
-</ul>
-</li>
-<li><strong>企業原廠重設保護：</strong>佈建裝置擁有者時，您現在可以藉由設定
-{@code DeviceManagerPolicy.EXTRA_PROVISIONING_RESET_PROTECTION_PARAMETERS} 套件組合，來設定參數以解除鎖定原廠重設保護 (FRP)。
-NFC 程式設計人員應用程式可以在已重設裝置來解除鎖定 FRP 並佈建裝置之後提供這些參數，而不需使用先前設定的 Google 帳戶。
-
-如果您並未修改這些參數，FRP 會就地保留，並防止裝置在沒有先前啟用的 Google 認證的情況下啟用。
-
-
-<p>此外，裝置擁有者可以在 Google Play 服務上設定應用程式限制，來指定可用來解除鎖定 FRP 的替代 Google 帳戶，以取代已在裝置上啟用的帳戶。
-</p>
-</li>
-<img src="{@docRoot}preview/images/work-profile-screen.png" srcset="{@docRoot}preview/images/work-profile-screen.png 1x, {@docRoot}preview/images/work-profile-screen_2x.png 2x" style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-<li><strong>資料使用量追蹤。</strong>設定檔或裝置擁有者現在可以使用新的
-{@code android.app.usage.NetworkStatsManager} 方法，針對可在 [設定] &gt; [資料]<strong></strong> 使用量中看見的資料使用量統計資料進行查詢。
-系統會自動授與設定檔擁有者權限來查詢他們所管理之設定檔上的資料，在此同時，裝置擁有者會取得受管理的主要使用者之使用量資料的存取權限。
-
-</li>
-<li><strong>執行階段權限管理：</strong>
-<p>設定檔或裝置擁有者可以使用
-{@code DevicePolicyManager.setPermissionPolicy()}，針對所有應用程式的所有執行階段要求設定權限原則，以提示使用者授與一般權限，或者以無訊息方式自動授與或拒絕該權限。
-
-如果設定了後項原則，使用者就無法在應用程式權限畫面的 [設定]<strong></strong> 中，修改設定檔或裝置擁有者所做的選項。
-
-</p></li>
-<li><strong>設定中的 VPN：</strong>VPN 應用程式現在可以在 [設定] &gt; [更多] &gt; [VPN]<strong></strong> 中看見。此外，伴隨 VPN 使用量出現的通知是該 VPN 設定方式的特定通知。
-
-
-針對設定檔擁有者，通知是專門用來通知是否已針對受管理的設定檔、個人設定檔或兩者設定了 VPN。
-針對裝置擁有者，通知是專門用來通知是否已針對整個裝置設定了 VPN。
-</li>
-<li><strong>工作狀態通知：</strong>每當來自受管理設定檔的應用程式在前景中有活動時，狀態列上就會出現公事包圖示。
-因此，如果直接將裝置解除鎖定至受管理設定檔中應用程式的活動，即會顯示一個快顯通知，通知使用者他們正處於工作設定檔內。
-
-
-</li>
-</ul>
-
-<p class="note">
-  如需 M 開發人員預覽版中所有 API 變更的詳細檢視，請參閱 <a href="{@docRoot}preview/download.html">API 差異報告</a>。
-</p>
diff --git a/docs/html-intl/intl/zh-tw/preview/backup/index.jd b/docs/html-intl/intl/zh-tw/preview/backup/index.jd
deleted file mode 100644
index edb8b98..0000000
--- a/docs/html-intl/intl/zh-tw/preview/backup/index.jd
+++ /dev/null
@@ -1,327 +0,0 @@
-page.title=針對應用程式進行自動備份
-page.tags=backup, previewresources, androidm
-page.keywords=backup, autobackup, preview
-page.image=images/cards/card-auto-backup_2x.png
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文件內容</h2>
-      <ol>
-        <li><a href="#overview">總覽</a></li>
-        <li><a href="#configuring">設定資料備份</a></li>
-        <li><a href="#testing">測試備份設定</a></li>
-        <li><a href="#issues">已知問題</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  使用者通常會在應用程式中花費很多時間精力建立資料和設定偏好設定。
-如果使用者換掉壞掉的裝置或升級到新的裝置時，能夠保存裝置上的資料，就能夠讓使用者獲得良好的體驗。
-執行 Android M 預覽版系統的裝置可以協助在上述情況自動將應用程式資料備份到 Google 雲端硬碟，讓使用者獲得良好的體驗。
-
-如果使用者變更或升級裝置，應用程式資料會自動儲存。
-
-</p>
-
-<p>
-  在執行 Android M 預覽版的裝置上安裝的所有應用程式，預設都會啟用自動備份。不需要任何額外的應用程式程式碼。
-系統則提供使用者不進行自動備份資料的選項。
-您也可以選擇限制要備份應用程式的哪些資料。
-</p>
-
-<p>
-  本文件說明新的系統行為，以及如何指定備份應用程式的哪些資料。
-
-</p>
-
-<h2 id="overview">總覽</h2>
-
-<p>
-  自動備份功能保存應用程式資料的方法，是將使用者裝置上建立的資料上傳到使用者的 Google 雲端硬碟帳戶，然後將資料加密。
-儲存資料不會向您或使用者收費，儲存的資料也不會計入使用者個人雲端硬碟的容量配額。
-在 M 預覽版期間，使用者最多可以為每個 Android 應用程式儲存 25 MB 的資料。
-
-</p>
-
-<p>
-  當裝置閒置、正在充電且連線到 Wi-Fi 網路時，每 24 小時會執行一次自動備份。
-當符合上述情況時，備份管理員服務就會將所有可用的備份資料上傳到雲端。
-當使用者轉換到新的裝置，或者解除安裝又重新安裝已備份的應用程式時，系統會進行一項還原作業，將備份的資料複製到新安裝之應用程式的資料目錄。
-
-
-</p>
-
-<p class="note">
-  <strong>注意：</strong>如果您的應用程式使用舊版
- <a href="{@docRoot}google/backup/index.html">Android 備份服務</a>，這個新的行為就不適用，現有的備份行為還是如往常運作。
-
-</p>
-
-
-<h3 id="auto-exclude">自動排除的資料檔案</h3>
-
-<p>
-  並非所有應用程式資料都需要備份，例如暫存檔案和快取，因此自動備份服務預設會排除某些資料檔案：
-
-</p>
-
-<ul>
-  <li>{@link android.content.Context#getCacheDir
-getCacheDir()} 和 {@link android.content.ContextWrapper#getCodeCacheDir getCodeCacheDir()}
-方法所參考目錄中的檔案。
-  </li>
-
-  <li>位於外部儲存空間的檔案，除非這些檔案位於
-{@link android.content.Context#getExternalFilesDir getExternalFilesDir()}
-方法所參考的目錄中。
-  </li>
-
-  <li>{@link android.content.Context#getNoBackupFilesDir getNoBackupFilesDir()} 方法所參考目錄中的檔案。
-
-  </li>
-</ul>
-
-<h2 id="configuring">設定資料備份</h2>
-
-<p>
-  除了上一節所列自動排除的檔案之外，其餘由 M 預覽版裝置上安裝的任何應用程式所建立的資料一律都會備份。
-您可以使用應用程式宣示說明中的設定，進一步限制和設定要備份應用程式的哪些資料。
-
-</p>
-
-<h3 id="include-exclude">納入或排除資料</h3>
-
-<p>
-  根據您的應用程式需要的資料和您儲存資料的方式，您可能需要設定特定的規則來納入或排除某些檔案或目錄。
-自動備份服務支援使用 XML 設定檔和應用程式宣示說明來設定這些備份規則。
-
-在應用程式宣示說明中，您可以依照下列範例指定備份配置設定檔：
-
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:fullBackupContent="&#64;xml/mybackupscheme"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-<p>
-  在此範例程式碼中，<code>android:fullBackupContent</code> 屬性指定應用程式開發專案的 <code>res/xml/</code> 目錄中，名為
-<code>mybackupscheme.xml</code> 的 XML 檔案。
-此設定檔包含要備份哪些檔案的規則。
-下列範例程式碼顯示排除特定檔案不要進行備份的設定檔：
-
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;full-backup-content&gt;
-    &lt;exclude domain="database" path="device_info.db"/&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  此範例備份設定只排除特定資料庫檔案不要進行備份。
-  其他所有檔案都會備份。
-</p>
-
-<h4>備份設定語法</h4>
-
-<p>
-  您可以使用備份服務設定指定要將哪些檔案納入或排除備份。
-資料備份設定 XML 檔案的語法如下所示：
-</p>
-
-<pre>
-&lt;full-backup-content&gt;
-    &lt;include domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-    &lt;exclude domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  您可以使用下列元素和屬性指定要將哪些檔案納入備份或從備份排除：
-
-</p>
-
-<ul>
-  <li>
-  <code>&lt;include&gt;</code>。如果您想要指定備份一組資源，請使用此元素，而不要讓系統預設備份應用程式的所有資料。
-當您指定
-<code>&lt;include&gt;</code> 標籤時，系統只會備份此元素「指定的資源」<em></em>。
-
-  </li>
-
-  <li>
-  <code>&lt;exclude&gt;</code>。如果您想要指定一組資源不要進行備份，請使用此元素。
-系統會備份應用程式中除了此元素指定之資源以外的其他所有資料。
-
-  </li>
-
-  <li>
-  <code>domain.</code> 您想要納入或排除備份的資源類型。此屬性可以指定的有效值包括：
-
-  </li>
-
-  <li style="list-style: none">
-  <ul>
-    <li>
-    <code>root</code>。指定資源位於應用程式的根目錄。
-    </li>
-
-    <li>
-    <code>file</code>。位於
-{@link android.content.Context#getFilesDir getFilesDir()} 方法傳回的目錄中的資源。
-    </li>
-
-    <li>
-    <code>database</code>。{@link android.content.Context#getDatabasePath getDatabasePath()} 方法或使用
-{@link android.database.sqlite.SQLiteOpenHelper} 類別傳回的資料庫。
-
-    </li>
-
-    <li>
-    <code>sharedpref</code>。{@link android.content.Context#getSharedPreferences getSharedPreferences()}
-方法傳回的 {@link android.content.SharedPreferences} 物件。
-
-    </li>
-
-    <li>
-    <code>external</code>。指定資源位於外部儲存空間，並且位於
-{@link android.content.Context#getExternalFilesDir getExternalFilesDir()} 方法傳回的目錄中的檔案。
-
-    </li>
-
-    <li>
-    <code>path</code>。您想要納入或排除備份的資源檔案路徑。
-
-    </li>
-  </ul>
-  </li>
-</ul>
-
-
-<h3 id="prohibit">禁止資料備份</h3>
-
-<p>
-  您可以在應用程式的宣示說明元素中將
-<code>android:allowBackup</code> 屬性設定為 <code>false</code>，選擇不要對任何應用程式資料進行自動備份。
-此設定如下列範例程式碼所示：
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:allowBackup="false"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-
-<h2 id="testing">測試備份設定</h2>
-
-<p>
-  如果您建立了備份設定，就要進行測試，以確保您的應用程式能正確儲存和還原資料。
-
-</p>
-
-
-<h4>啟用備份記錄</h4>
-
-<p>
-  如要協助判斷備份功能如何剖析您的 XML 檔案，請在執行測試備份之前先啟用記錄功能：
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell setprop log.tag.BackupXmlParserLogging VERBOSE
-</pre>
-
-<h4>測試備份</h4>
-
-<p>如要手動執行備份，首先您必須呼叫下列命令以初始化備份管理員：
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr run
-</pre>
-
-<p>
-  接著，您要使用下列命令，將 <code>&lt;PACKAGE&gt;</code> 參數指定為您應用程式的套件名稱，手動備份您的應用程式：
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr fullbackup &lt;PACKAGE&gt;</pre>
-
-
-<h4>測試還原</h4>
-
-<p>
-  如要在應用程式資料備份之後手動啟動還原，請呼叫下列命令，將 <code>&lt;PACKAGE&gt;</code> 參數指定為您應用程式的套件名稱：
-
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr restore &lt;PACKAGE&gt;
-</pre>
-
-<p class="warning">
-  <b>警告：</b>這個動作在執行還原作業之前會先停止您的應用程式，然後清除其中的資料。
-
-</p>
-
-<p>
-  如果解除安裝又重新安裝應用程式，就會針對應用程式啟動還原程序。應用程式安裝完成之後，就會自動從雲端還原應用程式資料。
-
-</p>
-
-
-<h4>疑難排解備份</h4>
-
-<p>
-  如果您遇到問題，可以在 [設定] &gt; [備份]<strong></strong> 中關閉備份再開啟、將裝置重設為出廠值，或是呼叫下列命令，清除備份資料及相關的中繼資料：
-
-
-</p>
-
-<pre>$ adb shell bmgr wipe &lt;TRANSPORT&gt; &lt;PACKAGE&gt;</pre>
-
-<p>
-  <code>&lt;TRANSPORT&gt;</code> 值前面必須加上 <code>com.google.android.gms</code>。
-  如要取得傳輸清單，請呼叫下列命令：
-</p>
-
-<pre>$ adb shell bmgr list transports</pre>
-
-<h2 id="issues">已知問題</h2>
-
-<p>以下是自動備份服務的已知問題：</p>
-
-<ul>
-  <li><strong>Google 雲端通訊</strong> - 使用「Google 雲端通訊」推送通知的應用程式有一個已知問題，亦即備份由「Google 雲端通訊」註冊程序傳回的註冊 ID，會讓還原後的應用程式無法傳送推送通知。在新裝置安裝 API 之後，需要向 API 查詢新的註冊 ID，因此如果之前備份了舊的註冊 ID，就會發生問題。
-
-
-
-
-如要避免發生這個情況，請不要備份包含註冊 ID 的檔案。
-
-  </li>
-</ul>
diff --git a/docs/html-intl/intl/zh-tw/preview/behavior-changes.jd b/docs/html-intl/intl/zh-tw/preview/behavior-changes.jd
deleted file mode 100644
index 405aea1..0000000
--- a/docs/html-intl/intl/zh-tw/preview/behavior-changes.jd
+++ /dev/null
@@ -1,402 +0,0 @@
-page.title=行為變更
-page.keywords=預覽版,sdk,相容性
-sdk.platform.apiLevel=MNC
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>本文件內容</h2>
-
-<ol id="toc44" class="hide-nested">
-    <li><a href="#behavior-runtime-permissions">執行階段權限</a></li>
-    <li><a href="#behavior-power">省電最佳化</a>
-        <ol>
-            <li><a href="#behavior-doze">休眠</a></li>
-            <li><a href="#behavior-app-standby">應用程式待命</a></li>
-        </ol>
-    </li>
-    <li><a href="#behavior-adoptable-storage">可採用的儲存裝置</a></li>
-    <li><a href="#behavior-apache-http-client">移除 Apache HTTP 用戶端</a></li>
-    <li><a href="#behavior-audiomanager-Changes">AudioManager 變更</a></li>
-    <li><a href="#behavior-test-selection">文字選取</a></li>
-    <li><a href="#behavior-keystore">Android 金鑰存放區變更</a></li>
-    <li><a href="#behavior-network">Wi-Fi 和網路變更</a></li>
-    <li><a href="#behavior-camera">相機服務變更</a></li>
-    <li><a href="#behavior-art-runtime">ART 執行階段</a></li>
-    <li><a href="#behavior-apk-validation">APK 驗證</a></li>
-    <li><a href="#behavior-afw">Android for Work 變更</a></li>
-</ol>
-
-<h2>API 差異</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API 級別 22 到 M 預覽版&raquo;</a> </li>
-</ol>
-
-
-<h2>另請參閱</h2>
-<ol>
-<li><a href="{@docRoot}preview/api-overview.html">M 開發人員預覽版 API 總覽</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>除了新特性和功能以外，M 開發人員預覽版還包含各種不同的系統變更和 API 行為變更。
-本文件將強調說明一些您應該知道且在您的應用程式中加以考量的重要變更。
-</p>
-
-<p>如果您先前曾發行過適用於 Android 的應用程式，請注意，您的應用程式可能會受到平台中的這類變更所影響。
-</p>
-
-<h2 id="behavior-runtime-permissions">執行階段權限</h1>
-<p>這個預覽版引進了新的權限模型，使用者現在可以在執行階段直接管理應用程式權限。
-這個模型為使用者提供了改良的能見度並使其可完全控制權限，同時為應用程式開發人員提供更流暢的安裝和自動更新程序。使用者可以針對安裝的應用程式個別授與或撤銷權限。
-
- </p>
-
-<p>在目標為 M 預覽版的應用程式中，請務必在執行階段檢查並要求權限。
-如要判斷您的應用程式是否已獲授與權限，請呼叫新的 {@code Context.checkSelfPermission()} 方法。
-如要要求權限，請呼叫新的
-{@code Activity.requestPermission()} 方法。即使您的應用程式目標不是 M，還是應該在新的權限模型下測試您的應用程式。
-</p>
-
-<p>如需在您的應用程式中支援新權限模型的詳細資訊，請參閱<a href="{@docRoot}preview/features/runtime-permissions.html">權限</a>開發人員預覽版頁面。
-
-如需評估對您應用程式的影響的祕訣，請參閱<a href="{@docRoot}preview/testing/guide.html#runtime-permissions">測試指南</a>。
-</p>
-
-<h2 id="behavior-power">省電最佳化</h2>
-<p>這個預覽版針對閒置的裝置和應用程式引進了新的省電最佳化功能。</p>
-
-<h3 id="behavior-doze">休眠</h3>
-<p>如果拔除裝置電源並關閉螢幕使其保持靜止狀態一段時間，該裝置即會進入「休眠」<em></em>模式，它會嘗試讓系統保持睡眠狀態。
-在此模式中，裝置會在短期間內定期繼續執行正常操作，因此，會進行應用程式同步處理，而系統可以執行任何待處理的操作。
-
-</p>
-
-<p>處於休眠狀態時，下列限制會套用到您的應用程式：</p>
-<ul>
-<li>除非您的應用程式接收到高優先順序的 Google 雲端通訊活動訊號 (Tickle)，否則會停用網路存取。
-</li>
-<li><a href="{@docRoot}reference/android/os/PowerManager.WakeLock.html">喚醒鎖定</a>會被忽略。</li>
-<li>使用 {@link android.app.AlarmManager} 類別排定的鬧鐘會被停用，但使用 {@link android.app.AlarmManager#setAlarmClock setAlarmClock()}方法和 {@code AlarmManager.setAndAllowWhileIdle()} 設定的鬧鐘則不會被停用。
-
-</li>
-<li>WiFi 掃描不會執行。</li>
-<li>不容許執行您同步配接器的同步處理和工作以及 {@link android.app.job.JobScheduler}。
-</li>
-</ul>
-</p>
-<p>當裝置離開休眠狀態時，就會執行所有待處理的工作和同步處理。</p>
-<p>您可以測試此功能，方法是將執行 M 預覽版的裝置連接到您的開發電腦並呼叫下列命令：
-
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-<p class="note"><strong>注意：</strong>即將發行的 <a href="https://developers.google.com/cloud-messaging/" class="external-link">Google 雲端通訊</a>版本讓您能夠指定高優先順序的訊息。
-
-
-如果您的應用程式收到高優先順序的 GCM 訊息，即使裝置處於休眠狀態，系統還是會授與它短暫的網路存取權限。
-
-</p>
-
-<p>如需如何在您的應用程式中測試休眠的祕訣，請參閱<a href="{@docRoot}preview/testing/guide.html#doze-standby">測試指南</a>。
-
- </p>
-
-<h3 id="behavior-app-standby">應用程式待命</h3>
-<p>使用這個預覽版時，系統可在應用程式處於未使用狀態時，判斷它們是否處於閒置狀態。
-除非系統偵測到以下任一個訊號，否則會在一段時間之後將應用程式視為閒置：
-</p>
-
-<ul>
-<li>使用者明確啟動應用程式。</li>
-<li>應用程式目前在前景中有一個處理程序 (可能是做為活動或前景服務，也可能正由其他活動或前景服務所使用)。
-</li>
-<li>應用程式產生使用者可以在鎖定螢幕或通知匣中看見的通知。
-</li>
-<li>使用者透過 [設定]<strong></strong> 明確要求應用程式不需進行最佳化。
-</li>
-</ul>
-
-<p>如果拔除了裝置電源，即會停用被視為閒置之應用程式的網路存取，並擱置它們的同步處理和工作。
-為裝置插上電源時，就允許這些應用程式進行網路存取，且可執行所有已擱置的工作和同步處理。
-如果裝置長時間處於閒置狀態，則允許閒置的應用程式進行網路存取，大約是一天一次。
-</p>
-
-<p>您可以測試此功能，方法是將執行 M 預覽版的裝置連接到您的開發電腦並呼叫下列命令：
-
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell am set-idle &lt;packageName&gt; true
-$ adb shell am set-idle &lt;packageName&gt; false
-$ adb shell am get-idle &lt;packageName&gt;
-</pre>
-
-<p class="note"><strong>注意：</strong>即將發行的 <a href="https://developers.google.com/cloud-messaging/" class="external-link">Google 雲端通訊</a> (GCM) 版本讓您能夠指定高優先順序的訊息。
-
-
-如果您的應用程式收到高優先順序的 GCM 訊息，即使應用程式處於閒置狀態，系統還是會授與它短暫的網路存取權限。
-
-</p>
-
-<p>如需如何在您的應用程式中測試應用程式待命的祕訣，請參閱<a href="{@docRoot}preview/testing/guide.html#doze-standby">測試指南</a>。
-
- </p>
-
-<h2 id="behavior-adoptable-storage">可採用的儲存裝置</h2>
-<p>
-使用這個預覽版時，使用者可以採用<em></em>像是 SD 卡的外部儲存裝置。採用外部儲存裝置會加密並格式化裝置，使其可如內部儲存空間般運作。
-此功能讓使用者能夠在儲存裝置之間移動應用程式和這些應用程式的私人資料。
-移動應用程式時，系統會採用宣示說明中的 <a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a> 偏好設定。
-
-
-</p>
-
-<p>如果您的應用程式會存取下列 API 或欄位，請注意，在內部和外部儲存裝置之間移動應用程式時，它們傳回的檔案路徑將會動態變更。建置檔案路徑時，強烈建議您一律動態呼叫這些 API。請勿使用硬式編碼的檔案路徑或保留先前建置的完整檔案路徑。
-
-
-</p>
-
-<ul>
-<li>{@link android.content.Context} 方法：
-    <ul>
-        <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
-        <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
-        <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
-        <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
-        <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
-        <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
-        <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
-        <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
-        <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
-    </ul>
-</li>
-<li>{@link android.content.pm.ApplicationInfo} 欄位：
-    <ul>
-        <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
-    </ul>
-</li>
-</ul>
-
-<p>如要在開發人員預覽版中對此功能進行偵錯，您可以執行下列命令來採用 USB 磁碟機 (這個磁碟機是透過 USB On-The-Go (OTG) 纜線連接到 Android 裝置)：
-</p>
-
-<pre class="no-prettyprint">
-$ adb shell sm set-force-adoptable true
-</pre>
-
-<h2 id="behavior-apache-http-client">移除 Apache HTTP 用戶端</h2>
-<p>這個預覽版已移除對於 Apache HTTP 用戶端的支援。如果您的應用程式正在使用這個用戶端且目標為 Android 2.3 (API 級別 9) 或更高版本，請改為使用 {@link java.net.HttpURLConnection} 類別。
-
-這個 API 的效率更高，因為它能透過透明的壓縮和回應快取來降低網路使用量，並將電源耗用量降至最低。
-如要繼續使用 Apache HTTP API，您必須先在 {@code build.gradle} 檔案中宣告下列編譯時期的相依性：
-
-</p>
-<pre>
-android {
-    useLibrary 'org.apache.http.legacy'
-}
-</pre>
-<p>Android 正從 OpenSSL 移至 <a href="https://boringssl.googlesource.com/boringssl/" class="external-link">BoringSSL</a> 程式庫。
-
-如果您正在應用程式中使用 Android NDK，請勿連結不屬於 NDK API 一部分的密碼編譯程式庫，例如 {@code libcrypto.so} 和 {@code libssl.so}。
-這些程式庫不是公用 API，而且可能在沒有通知的情況下，在新的版本和裝置上變更或終止支援。此外，您可能會讓自己暴露於安全性弱點中。
-
-因此，請改為修改您的原生程式碼，透過 JNI 來呼叫 Java 密碼編譯 API，或以靜態方式連結您選擇的密碼編譯程式庫。
-
-</p>
-
-<h2 id="behavior-audiomanager-Changes">AudioManager 變更</h2>
-<p>不再支援透過 {@link android.media.AudioManager} 類別直接設定音量或將特定串流設定為靜音。
-{@link android.media.AudioManager#setStreamSolo(int,boolean)
-setStreamSolo()} 方法已過時，您應該改為呼叫
-{@code AudioManager.requestAudioFocus()} 方法。同樣地，
-{@link android.media.AudioManager#setStreamMute(int,boolean) setStreamMute()} 方法已過時；請改為呼叫 {@code AudioManager.adjustStreamVolume()} 方法並傳入方向值 {@code ADJUST_MUTE} 或 {@code ADJUST_UNMUTE}。
-
-</p>
-
-<h2 id="behavior-test-selection">文字選取</h2>
-
-<img src="{@docRoot}preview/images/text-selection.gif" style="float:right; margin:0 0 20px 30px" width="360" height="640" />
-
-<p>當使用者在您的應用程式中選取文字時，您現在可以在<a href="http://www.google.com/design/spec/patterns/selection.html#selection-text-selection" class="external-link">浮動工具列</a>中顯示文字選取動作，例如，剪下<em></em>、複製<em></em>及貼上<em></em>。
-
-使用者互動實作類似於針對內容關聯動作列所做的實作，如<a href="{@docRoot}guide/topics/ui/menus.html#CABforViews">為個別的檢視啟用內容關聯動作模式</a>中所述。
-
-
-</p>
-
-<p>如要實作適用於文字選取的浮動工具列，請在您現有的應用程式中進行下列變更：
-</p>
-<ol>
-<li>在您的 {@link android.view.View} 或 {@link android.app.Activity} 物件中，將
-{@link android.view.ActionMode} 呼叫從
-{@code startActionMode(Callback)} 變更為 {@code startActionMode(Callback, ActionMode.TYPE_FLOATING)}。</li>
-<li>進行 {@code ActionMode.Callback} 的現有實作，並改為讓它擴充
-{@code ActionMode.Callback2}。</li>
-<li>覆寫 {@code Callback2.onGetContentRect()} 方法，以在檢視中提供內容 {@link android.graphics.Rect} 物件 (例如，文字選取矩形區塊) 的座標。
-</li>
-<li>如果矩形區塊位置不再有效，而且這是唯一變成無效的元素，請呼叫 {@code ActionMode.invalidateContentRect()} 方法。
-</li>
-</ol>
-
-<p>如果您正在使用 <a href="{@docRoot}tools/support-library/index.html">Android 支援程式庫</a>版本 22.2，請注意，浮動工具列無法向下相容，而且 appcompat 預設會取得 {@link android.view.ActionMode} 物件的完整控制權。
-
-
-這可防止浮動工具列顯示。如要在
-{@link android.support.v7.app.AppCompatActivity} 中啟用
-{@link android.view.ActionMode} 支援，請呼叫
-{@code android.support.v7.app.AppCompatActivity.getDelegate()}，然後在傳回的
-{@link android.support.v7.app.AppCompatDelegate} 物件中呼叫
-{@code android.support.v7.app.AppCompatDelegate.setHandleNativeActionModesEnabled()}，並將輸入參數設定為 {@code false}。
-這個呼叫會將 {@link android.view.ActionMode} 物件的控制權傳回架構中。
-儘管在 M 預覽版之前的裝置中，只支援 {@link android.support.v7.app.ActionBar} 模式，但在執行 M 預覽版的裝置中，允許架構支援
-{@link android.support.v7.app.ActionBar} 或浮動工具列模式。
-</p>
-
-<h2 id="behavior-keystore">Android 金鑰存放區變更</h2>
-<p>使用這個預覽版時，<a href="{@docRoot}training/articles/keystore.html">Android 金鑰存放區供應程式</a>不再支援 DSA。
-
-但仍支援 ECDSA。</p>
-
-<p>在停用或重設安全鎖定螢幕時 (例如，由使用者或裝置管理員執行)，將不再刪除其餘不需加密的金鑰。
-在這些事件期間，將會刪除其餘需要加密的金鑰。
-</p>
-
-<h2 id="behavior-network">Wi-Fi 和網路變更</h2>
-
-<p>這個預覽版引進了下列對於 Wi-Fi 和網路 API 的行為變更。</p>
-<ul>
-<li>唯有當您建立了 {@link android.net.wifi.WifiConfiguration} 物件時，您的應用程式現在才能變更這些物件的狀態。
-系統不容許您修改或刪除由使用者或其他應用程式所建立的
-{@link android.net.wifi.WifiConfiguration} 物件。
-</li>
-<li>
-在以前，如果應用程式使用
-{@link android.net.wifi.WifiManager#enableNetwork(int,boolean) enableNetwork()} 搭配
-{@code disableAllOthers=true} 設定來強制裝置連接到特定的 Wi-Fi 網路，裝置即會中斷與其他網路的連線，例如行動數據。
-在這個預覽版中，裝置不再中斷與這類其他網路的連線。如果您應用程式的 {@code targetSdkVersion} 是 {@code “20”} 或更低版本，即會將它固定到選取的 Wi-Fi 網路。
-
-如果您應用程式的 {@code targetSdkVersion} 是 {@code “21”} 或更高版本，請使用多網路 API (例如，
-{@link android.net.Network#openConnection(java.net.URL) openConnection()}、
-{@link android.net.Network#bindSocket(java.net.Socket) bindSocket()} 及新的
-{@code ConnectivityManager.bindProcessToNetwork()} 方法)，以確保會在選取的網路上傳送它的網路流量。
-
-</li>
-</ul>
-
-<h2 id="behavior-camera">相機服務變更</h2>
-<p>在這個預覽版中，在相機服務中存取分享資源的模型已經從先前的「先進先服務」存取模型變更為依照優先順序針對處理程序進行處理的存取模型。
-
-對於服務行為的變更如下：</p>
-<ul>
-<li>存取相機子系統資源 (包括開啟和設定相機裝置) 的權限是根據用戶端應用程式處理程序的「優先順序」來授與。
-通常會為具有使用者可看見或前景活動的應用程式處理程序提供較高的優先順序，讓相機資源的取得和使用更可靠。
-
-</li>
-<li>優先順序較低之應用程式的使用中相機用戶端可能會在優先順序較高的應用程式嘗試使用相機時被系統「撤出」。
-在已過時的 {@link android.hardware.Camera} API 中，這會導致針對被撤出的用戶端呼叫
-{@link android.hardware.Camera.ErrorCallback#onError(int,android.hardware.Camera) onError()}。
-
-在 {@link android.hardware.camera2 Camera2} API 中，會導致針對被撤出的用戶端呼叫
-{@link android.hardware.camera2.CameraDevice.StateCallback#onDisconnected(android.hardware.camera2.CameraDevice) onDisconnected()}
-。</li>
-<li>在配備適當相機硬體的裝置上，個別的應用程式處理程序能夠單獨開啟，同時使用不同的相機裝置。
-但是，相機服務現在可以偵測到且不允許多處理程序使用案例，同時存取會對任何已開啟的相機裝置造成顯著的效能或功能降級。
-
-此變更可能會導致優先順序較低的用戶端被「撤出」，即使沒有任何其他應用程式正直接嘗試存取同一個相機裝置也一樣。
-
-
-</li>
-<li>
-變更目前的使用者會導致先前的使用者帳戶所擁有之應用程式的使用中相機用戶端被撤出。
-相機的存取權受限於目前裝置使用者所擁有的使用者設定檔。例如，這實際上表示「訪客」帳戶在使用者切換到不同帳戶之後，將無法保留使用相機子系統的執行中處理程序。
-
-
-</li>
-</ul>
-
-<h2 id="behavior-art-runtime">ART 執行階段</h2>
-<p>ART 執行階段現在可以正確實作
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} 方法的存取規則。這個變更會修正 Dalvik 在先前版本中以不正確方式檢查存取規則的問題。如果您的應用程式使用
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} 方法且您想要覆寫存取檢查，請搭配已設定為 {@code true} 的輸入參數呼叫
-{@link java.lang.reflect.Constructor#setAccessible(boolean) setAccessible()} 方法。
-
-
-
-如果您的應用程式使用 <a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7 appcompat 程式庫</a>或 <a href="{@docRoot}tools/support-library/features.html#v7-recyclerview">v7 recyclerview 程式庫</a>，您就必須更新應用程式來使用這些程式庫的最新版本。
-
-
-否則，請確定從 XML 參考的所有自訂類別都會更新，如此一來就能存取其類別建構函式。
-</p>
-
-<p>這個預覽版會更新動態連結器的行為。動態連結器現在瞭解程式庫的 {@code soname} 與其路徑 (<a href="https://code.google.com/p/android/issues/detail?id=6670" class="external-link">公開的 Bug 6670</a>) 之間的差異，而且現在會實作依 {@code soname} 進行搜尋。
-
-
-
-先前可運作但含有錯誤 {@code DT_NEEDED} 項目 (通常是組建電腦之檔案系統上的絕對路徑) 的應用程式可能會在載入時失敗。
-</p>
-
-<p>{@code dlopen(3) RTLD_LOCAL} 旗標現在會以正確的方式實作。請注意，
-{@code RTLD_LOCAL} 是預設值，因此，對 {@code dlopen(3)} 的呼叫 (不會明確使用
-{@code RTLD_LOCAL}) 將會受到影響 (除非您的應用程式明確使用 {@code RTLD_GLOBAL})。使用
-{@code RTLD_LOCAL}，由後續呼叫
-{@code dlopen(3)} (相對於 {@code DT_NEEDED} 項目所參考) 所載入的程式庫將無法使用符號。</p>
-</p>
-
-<h2 id="behavior-apk-validation">APK 驗證</h2>
-<p>此平台現在會執行較嚴格的 APK 驗證。如果檔案宣告於宣示說明中但未出現在 APK 本身中，則 APK 會被視為毀損。
-如果移除了任何內容，就必須重新簽署 APK。
-</p>
-
-<h2 id="behavior-afw">Android for Work 變更</h2>
-<p>這個預覽版包含下列對於 Android for Work 的行為變更：</p>
-<ul>
-<li><strong>個人內容中的工作聯絡人。</strong>Google 撥號程式通話記錄現在會在使用者檢視過去的通話記錄時顯示工作聯絡人。將 {@code DevicePolicyManager.setCrossProfileCallerIdDisabled()} 設定為 {@code true}，可以在 Google 撥號程式通話記錄中隱藏工作設定檔聯絡人。
-
-
-只有在您將 {@code DevicePolicyManager.setBluetoothContactSharingDisabled()} 設定為 {@code false} 時，工作聯絡人才會透過藍牙，與個人聯絡人一起顯示於裝置上。
-
-預設會設定為 {@code true}。
-
-</li>
-<li><strong>移除 WiFi 設定：</strong>如果將工作設定檔刪除，則現在會移除由設定檔擁有者所新增的 WiFi 設定 (例如，透過呼叫
-{@link android.net.wifi.WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
-addNetwork()} 方法)。
-</li>
-<li><strong>鎖定 WiFi 設定：</strong>使用者無法再修改或刪除任何由使用中裝置擁有者所建立的 WiFi 設定。
-只要尚未針對使用者設定 {@link android.os.UserManager} 常數
-{@link android.os.UserManager#DISALLOW_CONFIG_WIFI}，該使用者就仍能建立和修改他們自己的 WiFi 設定。
-</li>
-<li><strong>透過 Google 帳戶新增來下載工作原則控制器：</strong>在將要求透過工作原則控制器 (WPC) 應用程式進行管理的 Google 帳戶新增到受管理內容以外的裝置時，新增帳戶流程現在會提示使用者安裝適當的 WPC。這個行為也適用於在初始裝置設定精靈中透過 [設定] &gt; [帳戶]<strong></strong> 來新增的帳戶。
-
-
-
-</li>
-<li><strong>對於特定 DevicePolicyManager API 行為的變更：</strong>呼叫 {@link android.app.admin.DevicePolicyManager#setCameraDisabled(android.content.ComponentName,boolean) setCameraDisabled()}
-方法，只會對正在呼叫之使用者的相機產生影響；從受管理的設定檔呼叫它則不會對在主要使用者上執行的相機應用程式產生影響。
-
-此外，除了裝置擁有者，
-{@link android.app.admin.DevicePolicyManager#setKeyguardDisabledFeatures(android.content.ComponentName,int) setKeyguardDisabledFeatures()}
-方法現在還可供設定檔擁有者使用。設定檔擁有者可以設定下列滑動解鎖限制：
-
-<ul>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_TRUST_AGENTS} 和
-{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_FINGERPRINT}，它們會對設定檔上層使用者的滑動解鎖設定產生影響。
-</li>
-<li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS}，這只會影響受管理設定檔中由應用程式所產生的通知。
-</li>
-</ul>
-</li>
-</ul>
diff --git a/docs/html-intl/intl/zh-tw/preview/download.jd b/docs/html-intl/intl/zh-tw/preview/download.jd
deleted file mode 100644
index 163af2c..0000000
--- a/docs/html-intl/intl/zh-tw/preview/download.jd
+++ /dev/null
@@ -1,360 +0,0 @@
-page.title=下載
-page.image=images/cards/card-download_16-9_2x.png
-
-@jd:body
-
-<div style="position:relative; min-height:600px">
-
-  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
-
-    <p class="sdk-terms-intro">在下載和安裝 Android 預覽版
-SDK 的元件之前 ，您必須同意遵守下列條款和條件。</p>
-
-    <h2 class="norule">條款和條件</h2>
-
-    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
-這是「Android SDK 預覽版授權協議」(以下稱「授權協議」)。
-
-1.簡介
-
-1.1「Android SDK 預覽版」(在「授權協議」中稱為「預覽版」，包括 (如果有可用的) Android 系統檔案、經過封裝的 API 和預覽版程式庫檔案) 是在「授權協議」之條款的約束下授權給您使用。「授權協議」就您對「預覽版」的使用，構成您與 Google 間具法律約束力之合約。
-
-1.2「Android」係指「Android 軟體開放原始碼專案」(http://source.android.com/) 所提供的 Android 裝置軟體堆疊 (不定期更新)。
-
-1.3「Google」係指 Google Inc.，是一家在美國德拉瓦州註冊的公司，地址為 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States。
-
-2.接受「授權協議」
-
-2.1 必須先同意遵守「授權協議」，才能使用此「預覽版」。如果不接受「授權協議」，您就無法使用此「預覽版」。
-
-2.2 按一下 [接受] 且/或使用「預覽版」，即表示您同意「授權協議」的條款。
-
-2.3 如果您是美國或其他國家/地區 (包括您所居住或使用此「預覽版」的國家/地區) 的法律所禁止接收此「預覽版」的人員，就不得使用此「預覽版」及接受「授權協議」。
-
-2.4 如果您將在公司或組織內部使用「預覽版」，您就要代表雇主或其他實體同意受「授權協議」約束，且您代表並保證具備完整法定權限來約束您的雇主或這類實體遵守「授權協議」。如果您不具備必要的權限，就不得代表您的雇主或其他實體接受「授權協議」或使用此「預覽版」。
-
-3.Google 的預覽版授權
-
-3.1 在「授權協議」之條款的約束下，Google 授權您使用此「預覽版」，此授權為買斷式、不可轉讓、非獨占性、不可轉授權、有限且可撤銷，僅在您公司或組織內部私下或內部使用。此「預覽版」僅供您用於開發在 Android 平台上執行的應用程式。
-
-3.2 您同意 Google 或第三方對此「預覽版」擁有一切法定權利及權益，包括存在於此「預覽版」中的任何「智慧財產權」。「智慧財產權」係指專利法、著作權法、商業秘密法、商標法及任何和所有其他專利權下的任何及一切權利。Google 保留一切未明確授予您的權利。
-
-3.3 您不得將此「預覽版」用於「授權協議」未明文許可的任何用途。除非適用的第三方授權所需，否則您不得：(a) 對此「預覽版」或其任何部分進行複製 (備份用途除外)、修改、改編、轉散佈、反向組譯、還原工程、解編或製作衍生成品；或是 (b) 將此「預覽版」的任何部分載入至行動電話或個人電腦以外的任何其他硬體裝置、將此「預覽版」的任何部分與其他軟體結合，或散佈包含此「預覽版」之任一部分的任何軟體或裝置。
-
-3.4 您同意不會從事任何可能導致或造成 Android 分裂的活動，包括但不限於以任何形式散佈從此「預覽版」衍生的軟體開發套件、參其製作或宣傳。
-
-3.5 對開放原始碼軟體授權下所授權之「預覽版」的使用、複製及散佈，完全受該開放原始碼軟體授權的條款管制，而不受「授權協議」管制。您同意遵守從這類開放原始碼軟體授權獲得的所有權利，並且避免採取任何可能終止、中止或侵害這類權利的行為。
-
-3.6 您同意 Google 可在不事先通知您的情況下變更其所提供之「預覽版」的形式和本質，且此「預覽版」的未來版本可與在此「預覽版」的先前版本上開發的應用程式不相容。您同意 Google 通常可全權斟酌永久或暫時停止提供此「預覽版」(或此「預覽版」的任何功能) 給您或使用者，毋須事先通知。
-
-3.7「授權協議」中的所有條款皆未授予您任何使用 Google 之商業名稱、商標、服務標章、標誌、網域名稱或其他明確品牌特徵的權利。
-
-3.8 您同意不會移除、遮蔽或更改可能附加至或內含在此「預覽版」中的任何專利權通知 (包括著作權和商標通知)。
-
-4.您對「預覽版」的使用
-
-4.1 Google 同意在「授權協議」下，任何條款皆未從您 (或您的授權人) 賦予 Google 對您使用此「預覽版」開發之任何軟體應用程式的任何權利及權益，包括存在於這些應用程式中的任何智慧財產權。
-
-4.2 您同意只就 (a)「授權協議」和 (b) 相關管轄權中任何適用法律、規定或是普遍獲得接受之慣例或指導方針 (包括任何有關將資料或軟體輸出或輸入美國或其他相關國家/地區的法律) 所允許的用途使用此「預覽版」及撰寫應用程式。
-
-4.3 您同意如果使用此「預覽版」開發應用程式，您將保護使用者的隱私權和法定權利。如果使用者提供您使用者名稱、密碼或是其他登入資訊或個人資訊，您必須告知使用者這類資訊將提供給您的應用程式使用，並且必須為這些使用者提供法定充分的隱私權通知和保護。如果您的應用程式會儲存使用者所提供的個人或敏感資訊，它必須確保這些資訊安全無虞。如果使用者提供 Google 帳戶資訊給您，則只有在每個使用者已授權您存取其 Google 帳戶並僅限用於使用者所授權之用途的情況下，您的應用程式才能使用該資訊來存取使用者的 Google 帳戶。
-
-4.4 您同意不會使用此「預覽版」從事任何不當Activity，例如開發或散佈會以未經授權的方式干擾、妨礙、損害或存取 Google 或任何第三方之伺服器、網路或是其他財產或服務的應用程式。
-
-4.5 您同意對您透過 Android 裝置和 (或) Android 應用程式建立、傳輸或顯示的任何資料、內容或資源，以及上述行為造成的後果 (包括 Google 可能蒙受的任何損失或損害) 負起全責 (而 Google 對您或任何第三方就上述一切不需負任何責任)。
-
-4.6 您同意對違反在此「授權協議」、任何適用之第三方合約或《服務條款》或是任何適用之法律或規定下所必須遵守的義務，以及違反相關義務造成的後果 (包括 Google 或任何第三方可能蒙受的任何損失或損害) 負起全責 (而 Google 對您或任何第三方就上述一切不需負任何責任)。
-
-4.7「預覽版」目前正在開發中，因此您的測試與意見反應對開發程序非常重要。使用「預覽版」，您即認同某些功能仍處於開發階段，因此您不應期待「預覽版」擁有穩定版本的完整功能。在官方 Android SDK 發行之後，此「預覽版」不再受到支援時，您同意不使用此「預覽版」公開散佈或隨附任何應用程式。
-
-5.您的開發人員認證
-
-5.1 您同意負責保密 Google 可能核發給您或您自己選擇的任何開發人員認證，並且對在您開發人員認證名義下開發的所有應用程式負起全責。
-
-6.隱私權和資訊
-
-6.1 為了持續更新及改進此「預覽版」，Google 可能會從軟體收集某些使用狀況統計數據，包括但不限於軟體的唯一識別碼、相關 IP 位址、版本號碼，以及有關使用此「預覽版」中的哪些工具和 (或) 服務及其使用方式的相關資訊。在收集這類資訊之前，此「預覽版」會先通知您並徵求您的同意。如果您不同意，Google 將不會收集這類資訊。
-
-6.2 Google 會彙總並檢查收集到的資料，據以改善此「預覽版」，並且會依據《Google 隱私權政策》(http://www.google.com/policies/privacy/) 加以妥善保存。
-
-7.第三方應用程式
-
-7.1 如果您使用此「預覽版」來執行第三方開發的應用程式，或是執行會存取第三方所提供之資料、內容或資源的應用程式，您同意 Google 不需對這類應用程式、資料、內容或資源負任何責任。您瞭解您透過第三方應用程式存取的所有資料、內容或資源是由其提供者負起全責，而 Google 對您因使用或存取任何這些第三方應用程式、資料、內容或資源所造成的損失或損害不需負任何責任。
-
-7.2 您瞭解第三方應用程式提供給您的資料、內容或資源可能受到提供者 (或代表他們的其他人員或公司) 所擁有的智慧財產權保護。您不得根據這類資料、內容或資源 (不論是整個或部分) 修改、出租、出借、販售、散佈或製作衍生成品，除非相關擁有者明確授權您從事上述活動。
-
-7.3 您瞭解使用第三方應用程式、資料、內容或資源可能受到您與相關第三方之間的個別條款約束。
-
-8.使用 Google API
-
-8.1 Google API
-
-8.1.1 如果您使用任何 API 從 Google 擷取資料，您瞭解這些資料可能受到 Google 或資料提供者 (或代表他們的其他人員或公司) 所擁有的智慧財產權保護。您對任何這類 API 的使用可能受到其他《服務條款》約束。除非相關《服務條款》明文允許，否則您不得根據這類資料 (不論是整個或部分) 修改、出租、出借、販售、散佈或製作衍生成品。
-
-8.1.2 使用任何 API 從 Google 擷取使用者的資料時，您瞭解並同意只有在該使用者明確同意且授權您擷取其資料，而且僅限用於使用者所授權之用途的情況下，您才能擷取資料。
-
-9.終止「授權協議」
-
-9.1 除非您或 Google 終止「授權協議」(請見下方說明)，否則「授權協議」將持續具有效力。
-
-9.2 如果想終止「授權協議」，只要停止使用此「預覽版」及任何相關的開發人員憑證即可。
-
-9.3 Google 可隨時通知您終止「授權協議」，無論有無原因。
-
-9.4「授權協議」在先發生下列任一情況時，將自動終止而不另行通知或採取其他行動：
-(A) Google 決定不再提供此「預覽版」或此「預覽版」的特定部分給您所居住或使用此服務之國家/地區的使用者；或
-(B) Google 發行最終版本的 Android SDK。
-
-9.5 當「授權條款」終止時，您在「授權協議」所獲得的授權也將會一併終止，您將立即停止「預覽版」的所有使用，而第 10、11、12 和 14 項的條款將無限期持續適用。
-
-10.免責聲明
-
-10.1 您明確瞭解並同意完全自負使用此「預覽版」的風險，並且此「預覽版」是依「現況」和「可提供性」提供，Google 不負任何擔保責任。
-
-10.2 您對使用此「預覽版」及透過此「預覽版」以下載或其他方式取得的任何內容，需自行斟酌和自負風險，而且您對因這類使用而對您的電腦系統或其他裝置所造成的任何損害或資料遺失，需負起全責。不限於前述，您瞭解此「預覽版」不是穩定的版本，可能會包含許多錯誤、瑕疵和安全性弱點而對您的電腦系統或其他裝置造成嚴重的損害，包括完全、不可回復的損失。
-
-10.3 Google 進一步明確表示不提供任何形式的瑕疵擔保和條件 (不論明示或默示)，包括但不限於適售性、適合特定用途及未侵權的默示擔保和條件。
-
-11.責任限制
-
-11.1 您明確瞭解並同意在任何歸責理論下，就可能由您引起的任何直接、間接、附隨性、特殊性、衍生性或懲罰性損害賠償 (包括任何資料遺失)，不論 Google 或其代表是否已獲告知或應已瞭解發生任何這類損失的可能性，Google、其子公司和關係企業及其授權人不必對您負起任何責任。
-
-12.賠償
-
-12.1 在法律允許的最大範圍內，您同意為 Google、其子公司及其個別董監事、主管、員工和代理人，就任何和一切索賠、法律行動、訴訟或訴訟程序，以及因下列原因而引起的任何和一切損失、責任、損害賠償、費用及開支 (包括合理的律師費)，提供辯護、賠償損失並確保其免於承擔賠償責任：(a) 您使用此「預覽版」；(b) 您使用此「預覽版」開發的應用程式侵害任何人的任何智慧財產權，或是詆毀任何人或違反其公開權或隱私權；以及 (c) 您未遵守「授權協議」。
-
-13.對「授權協議」做出的變更
-
-13.1 Google 可在散佈此「預覽版」的新版本時修改「授權協議」。做出這類變更後，Google 會在提供此「預覽版」的網站上提供「授權協議」的新版本。
-
-14.一般法律條款
-
-14.1「授權協議」構成您與 Google 之間的法律協議，用於管制您對此「預覽版」(不包括 Google 依據個別書面協議提供給您的任何服務) 的使用，並完全取代先前您與 Google 之間就此「預覽版」簽署的相關協議。
-
-14.2 您同意如果 Google 未行使或執行「授權協議」所含的任何法律權利或救濟 (或在任何適用法律下對 Google 有利的權益)，並不代表 Google 正式放棄權利，Google 日後仍可行使這些權利或救濟。
-
-14.3 如果經任何法院 (就此事宜依管轄權決定) 裁決「授權協議」中有任何條款無效，則該條款將自「授權協議」中移除，「授權協議」的其餘部分則不受影響。「授權協議」的其餘條款將持續具有效力且可執行。
-
-14.4 您瞭解並同意 Google 旗下子公司體系的每位成員都是「授權協議」的第三方受益人，而且這類其他公司有權直接執行和依據「授權協議」中對其授予權益 (或對其有利之權利) 的任何條款。除此之外的任何其他人員或公司皆非「授權協議」的第三方受益人。
-
-14.5 出口限制。此「預覽版」受美國出口法規約束。您必須遵守適用於此「預覽版」的所有國內和國際出口法規。這些法律包括對目的地、使用者及最終用途的限制。
-
-14.6 未事先取得 Google 事先書面核准的情況下，您不得轉讓或轉移「授權協議」，未經這類核准的任何轉讓將會失效。您不得在未事先取得 Google 書面核准的情況下，委派其「授權協議」涵蓋的責任或義務。
-
-14.7「授權協議」以及您與 Google 就「授權協議」構成的關係皆受加州法律管轄，毋須理會其法律牴觸條款。您和 Google 同意服從位於加州聖塔克拉拉 (Santa Clara, California) 郡內法院的專屬管轄權，以解決由「授權協議」產生的任何法律事務。儘管如此，您同意 Google 仍可在任何管轄權中申請禁制令救濟 (或同等類型的緊急法定救濟)。
-  </div><!-- sdk terms -->
-
-
-
-    <div id="sdk-terms-form">
-      <p>
-        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
-        <label id="agreeLabel" for="agree">我已閱讀並同意上述條款及細則</label>
-      </p>
-      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
-    </div>
-
-
-  </div><!-- end TOS -->
-
-
-  <div id="landing">
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文件內容</h2>
-      <ol>
-        <li><a href="#sdk">Android 6.0 SDK</a></li>
-        <li><a href="#docs">開發人員文件</a></li>
-        <li><a href="#images">硬體系統映像</a></li>
-      </ol>
-     <h2>Legacy downloads</h2>
-        <ol>
-           <li><a href="{@docRoot}preview/download_mp1.html">Developer Preview 1</a></li>
-           <li><a href="{@docRoot}preview/download_mp2.html">Developer Preview 2</a></li>
-        </ol>
-  </div>
-</div>
-
-
-<p>
-  Android M 預覽版 SDK 有開發工具、Android 系統檔案以及程式庫檔案，可以幫助測試您的應用程式和下一個平台版本隨附的新 API。
-本文件會說明如何取得可下載的預覽版元件來測試您的應用程式。
-
-</p>
-
-
-<h2 id="sdk">Android 6.0 SDK</h2>
-
-<p>
-  預覽版 SDK 可透過 <a href="{@docRoot}tools/help/sdk-manager.html">Android SDK 管理器</a>下載取得。如需有關下載和設定預覽版 SDK 的詳細資訊，請參閱<a href="{@docRoot}preview/setup-sdk.html#downloadSdk">設定預覽版 SDK</a>。
-
-</p>
-
-
-<h2 id="docs">開發人員文件</h2>
-
-<p>
-  開發人員文件下載套件提供詳細的 API 參考資料和預覽版的 API 差異報告。
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Description</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="docs-dl">
-    <td>Android M Preview 3<br>Developer Docs</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >m-preview-3-developer-docs.zip</a><br>
-      MD5: d99b14b0c06d31c8dfecb25072654ca3<br>
-      SHA-1: 9cefeeda07676130da606a1796e1c00fffc667c1
-    </td>
-  </tr>
-</table>
-
-
-<h2 id="images">硬體系統映像</h2>
-
-<p>
-  這些系統映像可以讓您在實體裝置上安裝預覽版的平台來進行測試。
-使用其中一個映像設定裝置，您就可以安裝並測試您的應用程式，瞭解應用程式在下一個版本的平台上表現如何。
-在裝置上安裝系統映像的過程中，會「移除裝置當中所有的資料」，因此您應該在安裝系統映像之前備份您的資料。<em></em>
-
-
-</p>
-
-<p class="warning">
-  <b>警告：</b>下列 Android 系統映像是預覽版，可能隨時會有變更。使用這些系統映像受到「Android SDK 預覽版授權協議」的約束。
-Android 預覽版系統映像還不是穩定的版本，可能會包含許多錯誤和瑕疵而對您的電腦系統、裝置和資料造成損害。
-
-預覽版的 Android 系統映像與出廠作業系統的測試不同，可能會導致您的手機和安裝的服務與應用程式停止運作。
-
-
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Device</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="hammerhead">
-    <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >hammerhead-MPA44I-preview-2ebbc049.tgz</a><br>
-      MD5: 91a924fb0c9f8e716e3b4c9954fd0dbb<br>
-      SHA-1: 2ebbc049b68c4da8baeee3e42bb94d7a965ba4a3
-    </td>
-  </tr>
-  <tr id="shamu">
-    <td>Nexus 6 <br>"shamu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >shamu-MPA44I-preview-62b9c486.tgz</a><br>
-      MD5: ac6e58da86125073d9c395257fd42664<br>
-      SHA-1: 62b9c486fd7a5020e228d53ca5acd5c1857e48ff
-    </td>
-  </tr>
-  <tr id="volantis">
-    <td>Nexus 9 <br>"volantis"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >volantis-MPA44I-preview-5c30a6e2.tgz</a><br>
-      MD5: 7f83768757913d3fea945a661020d185<br>
-      SHA-1: 5c30a6e2acd11a81f4105b12d23ff654f534f699
-    </td>
-  </tr>
-
-  <tr id="fugu">
-    <td>Nexus Player <br>"fugu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >fugu-MPA44I-preview-2860040a.tgz</a><br>
-      MD5: 438da8d37da9e341a69cfb16a4001ac5<br>
-      SHA-1: 2860040a326582f1ff5f702bf9a1ef002717fc98
-    </td>
-  </tr>
-
-</table>
-
-<h3 id="install-image">在裝置上安裝映像</h3>
-
-<p>
-  如果要使用裝置映像進行測試，您必須先在相容的裝置上安裝映像。請依照下面的指示安裝系統映像：
-
-</p>
-
-<ol>
-  <li>下載此處列出的其中一個系統映像，然後解壓縮。</li>
-  <li>備份您要保留的所有裝置資料。</li>
-  <li>依照
-<a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
-的指示，將映像更新到您的裝置。</li>
-</ol>
-
-<p class="note">
-  <strong>注意：</strong>在您使用預覽版系統映像更新開發裝置之後，裝置就會透過無線 (OTA) 更新方式自動升級為下一個預覽版版本。
-
-</p>
-
-<h3 id="revertDevice">將裝置還原成出廠規格</h3>
-
-<p>
-  如果您要解除安裝預覽版並將裝置還原成出廠規格，請至
-<a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a> 並下載您要為裝置更新的映像。
-依照該頁面的指示，將映像更新到您的裝置。
-
-</p>
-
-  </div><!-- landing -->
-
-</div><!-- relative wrapper -->
-
-
-
-<script>
-  var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
-  function onDownload(link) {
-
-    $("#downloadForRealz").html("Download " + $(link).text());
-    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
-
-    $("#tos").fadeIn('fast');
-    $("#landing").fadeOut('fast');
-
-    return true;
-  }
-
-
-  function onAgreeChecked() {
-    /* verify that the TOS is agreed */
-    if ($("input#agree").is(":checked")) {
-      /* reveal the download button */
-      $("a#downloadForRealz").removeClass('disabled');
-    } else {
-      $("a#downloadForRealz").addClass('disabled');
-    }
-  }
-
-  function onDownloadForRealz(link) {
-    if ($("input#agree").is(':checked')) {
-    /*
-      $("#tos").fadeOut('fast');
-      $("#landing").fadeIn('fast');
-    */
-
-      ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
-
-    /*
-      location.hash = "";
-    */
-      return true;
-    } else {
-      return false;
-    }
-  }
-
-  $(window).hashchange( function(){
-    if (location.hash == "") {
-      location.reload();
-    }
-  });
-
-</script>
diff --git a/docs/html-intl/intl/zh-tw/preview/features/app-linking.jd b/docs/html-intl/intl/zh-tw/preview/features/app-linking.jd
deleted file mode 100644
index 5be8a0f..0000000
--- a/docs/html-intl/intl/zh-tw/preview/features/app-linking.jd
+++ /dev/null
@@ -1,123 +0,0 @@
-page.title=應用程式連結
-page.image=images/cards/card-app-linking_2x.png
-page.keywords=應用程式連結, 深層連結, 意圖
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文件內容</h2>
-      <ol>
-        <li><a href="#web-assoc">宣告網站關聯</a></li>
-        <li><a href="#verfy-links">要求應用程式連結驗證</a></li>
-        <li><a href="#user-manage">管理應用程式連結設定</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Android 意圖系統是一個彈性機制，讓應用程式能夠用來處理內容和要求。
-  有許多應用程式可能會在它們的意圖篩選條件中宣告相符的 URI 模式。當使用者按一下不含預設啟動處理常式的 Web 連結時，平台可能會顯示一個對話方塊，讓使用者能夠從具備已宣告相符意圖篩選條件的應用程式清單中選取。
-
-
-</p>
-
-<p>
-  Android M 開發人員預覽版引進了應用程式連結的支援，這樣就能藉由允許應用程式開發人員將應用程式關聯至他們所擁有的 Web 網域，來改善現有的連結處理。
-當開發人員建立這個關聯時，平台可以自動判斷要用來處理特定 Web 連結的預設應用程式，並略過詢問使用者的程序。
-
-
-</p>
-
-
-<h2 id="web-assoc">宣告網站關聯</h2>
-
-<p>
-  網站擁有者必須宣告與應用程式的關聯，才能建立應用程式連結。站台擁有者可藉由在網域上的已知位置裝載名為 {@code statements.json} 的 JSON 檔案，來宣告與應用程式的關係：
-
-
-</p>
-
-<pre>http://&lt;domain&gt;:&lt;optional port&gt;/.well-known/statements.json</pre>
-
-<p class="note">
-  <strong>注意：</strong>
-  在 M 開發人員預覽版期間，會透過 http 通訊協定來驗證 JSON 檔案。如果是平台的正式版本，就會透過加密的 https 通訊協定來驗證該檔案。
-
-</p>
-
-<p>
-  這個 JSON 檔案會指出應該在這個網域中用來做為 URL 預設處理常式的 Android 應用程式。
-它會根據下列欄位來識別應用程式：
-</p>
-
-<ul>
-  <li>{@code package_name}：宣告於應用程式宣示說明中的套件名稱。</li>
-
-  <li>{@code sha256_cert_fingerprints}：您應用程式簽署憑證的 SHA256 指紋。
-    您可以使用 Java 金鑰工具，利用下列命令來產生指紋：
-    <pre>keytool -list -v -keystore my-release-key.keystore</pre>
-  </li>
-</ul>
-
-<p>
-  下列檔案清單會顯示
-{@code statements.json} 檔案的內容與格式範例：
-</p>
-
-<pre>
-[{
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": "<strong>&lt;package name&gt;</strong>",
-    "sha256_cert_fingerprints": ["<strong>6C:EC:C5:0E:34:AE....EB:0C:9B</strong>"]
-  }
-}]
-</pre>
-
-
-<h2 id="verfy-links">要求應用程式連結驗證</h2>
-
-<p>
-  應用程式可以要求平台根據裝載於個別 Web 網域上的 {@code statements.json} 檔案，自動驗證在其意圖篩選條件的資料元素中由主機名稱所定義的任何應用程式連結。
-
-如要要求應用程式連結驗證，請將 {@code android:autoVerify}
- 屬性新增到宣示說明中每個所需的意圖篩選條件中，如下列宣示說明程式碼片段所示：
-
-</p>
-
-<pre>
-&lt;activity ...&gt;
-    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-        &lt;action android:name="android.intent.action.VIEW" /&gt;
-        &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-        &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-        &lt;data android:scheme="http" android:host="www.android.com" /&gt;
-        &lt;data android:scheme="https" android:host="www.android.com" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/activity&gt;
-</pre>
-
-<p>
-  當 {@code android:autoVerify} 屬性出現在應用程式宣示說明時，平台即會在安裝該應用程式時嘗試驗證應用程式連結。
-如果平台無法成功驗證應用程式連結，就無法將該應用程式設定為偏好使用的應用程式來處理 Web 連結。
-當使用者下次開啟其中一個連結時，平台就切換回為該使用者展示一個對話方塊。
-
-
-</p>
-
-<p class="note">
-  <strong>注意：</strong>在測試期間，如果驗證失敗，可能會產生誤判，但是使用者已經使用系統「設定」應用程式，明確地啟用應用程式來自動開啟支援的連結。在此案例中，不會顯示任何對話方塊，而且連結會直接連至您的應用程式，但這只是基於使用者的設定，而不是因為驗證成功所致。
-
-
-
-</p>
-
-
-<h2 id="user-manage">管理應用程式連結設定</h2>
-
-<p>
-  使用者可以變更應用程式連結設定，讓他們能夠以偏好使用的方式來處理 URL。您可以在系統「設定」應用程式中，於 [設定] &gt; [應用程式] &gt; [應用程式資訊] &gt; [預設開啟]<strong></strong> 下方，檢閱和管理應用程式連結。
-
-
-</p>
diff --git a/docs/html-intl/intl/zh-tw/preview/features/runtime-permissions.jd b/docs/html-intl/intl/zh-tw/preview/features/runtime-permissions.jd
deleted file mode 100644
index cf756aa..0000000
--- a/docs/html-intl/intl/zh-tw/preview/features/runtime-permissions.jd
+++ /dev/null
@@ -1,794 +0,0 @@
-page.title=權限
-page.tags=previewresources, androidm
-page.keywords=權限, 執行階段, 預覽
-page.image={@docRoot}preview/features/images/permissions_check.png
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>快速檢視</h2>
-    <ul>
-      <li>如果您的應用程式是以 M 預覽版 SDK 為目標，它會提示使用者在執行階段授與權限，而不是安裝期間。
-</li>
-      <li>使用者能隨時從應用程式 [設定] 畫面撤銷權限。
-</li>
-      <li>您的應用程式每次執行時都需要檢查它是否有所需的權限。
-</li>
-    </ul>
-
-    <h2>本文件內容</h2>
-    <ol>
-      <li><a href="#overview">總覽</a></li>
-      <li><a href="#coding">編寫執行階段權限的程式碼</a></li>
-      <li><a href="#testing">測試執行階段權限</a></li>
-      <li><a href="#best-practices">建議做法</a></li>
-    </ol>
-
-<!--
-  <h2>Related Samples</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-
-<!--
-  <h2>See also</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-  </div> <!-- qv -->
-</div> <!-- qv-wrapper -->
-
-
-<p>
-  M 開發人員預覽版導入新的應用程式權限模型，簡化使用者安裝和升級應用程式的程序。
-如果 M 預覽版上執行的應用程式支援新的權限模型，使用者安裝或升級應用程式時，不需要授與任何權限。應用程式會在需要時才要求權限，而且系統會對使用者顯示要求權限的對話方塊。
-
-
-
-
-</p>
-
-<p>
-  如果應用程式支援新的權限模型，它仍能在在執行舊版 Android 的裝置上安裝並執行 (在那些裝置上使用舊的權限模型)。
-
-
-</p>
-
-<h2 id="overview">
-  總覽
-</h2>
-
-<p>
-  使用 M 開發人員預覽版，平台導入新的應用程式權限模型。
-以下是這個新模型的主要元件摘要：
-</p>
-
-<ul>
-  <li>
-    <strong>宣告權限：</strong>應用程式會在宣示說明中宣告所需的所有權限，如舊版 Android 平台。
-
-  </li>
-
-  <li>
-    <strong>權限群組：</strong>權限會根據其功能分為「權限群組」
-<em></em>。例如，
-<code>CONTACTS</code> 權限群組包含讀取和寫入使用者聯絡人與設定檔資訊的權限。
-
-  </li>
-
-  <li>
-    <p><strong>安裝期間授與的有限權限：</strong>當使用者安裝或更新應用程式時，系統會將應用程式所要求且歸入 {@link
-android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL} 的所有權限授與應用程式。
-
-
-    例如，會在安裝期間自動授與歸入 {@link
-android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL} 的鬧鐘與網際網路權限。
-
-    </p>
-
-    <p>系統也會授與應用程式簽名和系統權限，如<a href="#system-apps">系統應用程式和簽名</a>所述。
-
-安裝期間「不」<em></em>會提示使用者授與任何權限。
-</p>
-  </li>
-
-  <li>
-    <strong>使用者在執行階段授與權限：</strong>應用程式要求權限時，系統會對使用者顯示對話方塊，接著呼叫應用程式的回呼函數，通知它是否已授與權限。
-
-如果使用者授與權限，應用程式會獲得在應用程式宣示說明中所宣告之權限功能區域中的所有權限。
-
-
-  </li>
-
-</ul>
-
-<p>
-  此權限模型改變應用程式要求權限的功能行為。
-以下是您應遵循以調整此模型的開發做法摘要：
-
-</p>
-
-<ul>
-
-  <li>
-    <strong>一律檢查是否具備權限：</strong>當應用程式需要執行任何需要權限的動作時，都應要先檢查是否具備有該權限。
-
-若不具備，即要求獲得授與該權限。
-
-  </li>
-
-  <li>
-    <strong>適當處理缺少權限的情況：</strong>如果應用程式未獲授與適當的權限，它應要能完全處理失敗。
-
-    例如，若只有新增功能需要該權限，應用程式可以將該功能停用。
-如果應用程式務必要具備該權限才能運作，應用程式可以停用其所有功能，並通知使用者務必要授與該權限。
-
-
-  </li>
-
-  <div class="figure" style="width:220px" id="fig-perms-screen">
-    <img src="{@docRoot}preview/features/images/app-permissions-screen_2x.png" srcset="{@docRoot}preview/features/images/app-permissions-screen.png 1x, {@docRoot}preview/features/images/app-permissions-screen_2x.png 2x" alt="" width="220">
-    <p class="img-caption">
-      <strong>圖 1.</strong>應用程式 [設定] 的權限畫面。
-    </p>
-  </div>
-
-  <li>
-    <strong>權限可以撤銷：</strong>使用者可以隨時撤銷應用程式的權限。
-如果使用者關閉應用程式的權限，並「不」<em></em>會通知應用程式。
-再次強調，您的應用程式在執行任何受限制的動作之前，應該驗證它是否具備所需的權限。
-
-  </li>
-</ul>
-
-<p class="note">
-  <strong>注意：</strong>如果應用程式是以 M 開發人員預覽版為目標，「務必要」
-<em></em>使用新的權限模型。
-</p>
-
-<p>
-  自 M 開發人員預覽版推出起，並非所有 Google 應用程式都完全實作新的權限模型。
-Google 正透過 M 開發人員預覽版逐漸更新這些應用程式，以適當保留權限切換設定。
-
-
-</p>
-
-<p class="note">
-  <strong>注意：</strong>如果您的應用程式有自己的 API 介面，務必要先確定呼叫端具備存取該資料的必要權限後，再 Proxy 權限。
-
-
-</p>
-
-<h3 id="system-apps">
-  系統應用程式和簽名權限
-</h3>
-
-<p>
-  一般來說，當使用者安裝應用程式時，系統只會將
- {@link android.content.pm.PermissionInfo#PROTECTION_NORMAL
- PROTECTION_NORMAL} 授與應用程式。不過，在某些情況下，系統會授與應用程式更多權限：
-
-</p>
-
-<ul>
-  <li>如果應用程式屬於系統映像的一部分，會自動獲授與其宣示說明中列出的所有權限。
-
-  </li>
-
-  <li>如果應用程式要求宣示說明中歸入 {@link
-android.content.pm.PermissionInfo#PROTECTION_SIGNATURE PROTECTION_SIGNATURE} 的權限，並和宣告那些權限的應用程式一樣，以相同的憑證簽署應用程式，系統會在安裝時將那些權限授與要求的應用程式。
-
-
-
-  </li>
-</ul>
-
-<p>
-  在這兩種情況下，使用者仍能隨時撤銷權限，只要前往系統的 [設定]<strong></strong> 畫面，然後選擇 [應用程式] &gt;<strong></strong>
-
- <i>app_name</i> &gt; [權限]<strong></strong>。應用程式應持續在執行階段檢查是否具備權限，並在必要時予以要求。
-
-
-</p>
-
-<h3 id="compatibility">
-  往後和回溯相容性
-</h3>
-
-<p>
-  如果應用程式不是以 M 開發人員預覽版為目標，即使在 M 預覽版裝置上，應用程式也會持續使用舊的權限模型。
-當使用者安裝應用程式時，系統會要求使用者授與應用程式的宣示說明中列出的所有權現。
-
-
-</p>
-
-<p class="note">
-  <strong>注意：</strong>在執行 M 開發人員預覽版的裝置上，使用者能從應用程式的設定畫面關閉任何應用程式 (包括舊版應用程式) 的權限。
-
-如果使用者關閉舊版應用程式的權限，系統會自動停用適當功能。
-當應用程式嘗試執行需要那項權限的操作時，該操作不一定會造成例外狀況。
-
-而可能傳回空的資料集，通知發生錯誤，或展示未預期的行為。
-例如，如果您不具備查詢行事曆的權限，方法會傳回空的資料集。
-
-</p>
-
-<p>
-  如果您在並非執行 M 預覽版的裝置上使用新的權限模型來安裝應用程式，系統會將它和任何其他應用程式一視同仁：系統會在安裝期間要求使用者授與所有宣告的權限。
-
-
-
-</p>
-
-<p class="note">
-  <strong>注意：</strong>對於預覽版，您必須將 SDK 最低版本設定為 M 預覽版 SDK，才能以預覽版 SDK 編譯。
-這表示在開發人員預覽版期間，您將無法在舊版平台上測試這類應用程式。
-
-
-</p>
-
-<h3 id="perms-vs-intents">權限與意圖比較</h3>
-
-<p>
-  在許多情況下，您可以為應用程式在兩種方法當中擇一來執行工作。
-您可以讓應用程式要求權限以自行執行操作。
-或者，您可以讓應用程式使用意圖，讓其他應用程式來執行工作。
-
-</p>
-
-<p>
-  例如，假設您的應用程式需要能夠使用裝置相機拍攝相片。
-您的應用程式能要求
-<code>android.permission.CAMERA</code> 權限，讓應用程式直接存取相機。
-接著，應用程式會使用相機 API 來控制相機並拍攝相片。
-這種方法可讓您的應用程式對攝影處理程序有完整控制權，並讓您將相機 UI 納入應用程式。
-
-
-</p>
-
-<p>
-  不過，如果您不需要這類控制權，您可以只使用 {@link
-android.provider.MediaStore#ACTION_IMAGE_CAPTURE ACTION_IMAGE_CAPTURE} 意圖來要求影像。
-當您啟動意圖時，會提示使用者選擇相機應用程式 (如果還沒有預設的相機應用程式)，然後該應用程式會拍攝相片。
-
-相機應用程式會將相片傳回應用程式的 {@link
- android.app.Activity#onActivityResult onActivityResult()} 方法。
-</p>
-
-<p>
-  同樣地，如果您需要撥打電話、存取使用者的聯絡人等等，您都可以建立適當的意圖來執行，或是要求權限，然後直接存取適當的物件。
-
-每種方法各有利弊。
-
-</p>
-
-<p>
-  如果您使用權限：
-</p>
-
-<ul>
-  <li>當您執行操作時，應用程式對使用者體驗有完整控制權。
-不過，如此多樣化控制使您必須設計適當的 UI，而增加工作複雜度。
-
-  </li>
-
-  <li>當您初次執行操作時，會提示使用者授與權限 (僅此一次)。
-之後應用程式可以逕行執行該操作，不需要再與使用者有其他互動。
-不過，如果使用者未授與權限 (或稍後予以撤銷)，您的應用程式會完全無法執行該操作。
-
-
-  </li>
-</ul>
-
-<p>
-  如果您使用意圖：
-</p>
-
-<ul>
-  <li>您不必為該操作設計 UI。處理意圖的應用程式會提供 UI。不過，這表示您對使用者體驗沒有控制權。
-
-使用者可能會和您不曾見過的應用程式互動。
-
-  </li>
-
-  <li>如果使用者沒有執行該操作的預設應用程式，系統會提示使用者選擇應用程式。如果使用者未指定預設處理常式，每次執行操作時可能都要完成額外的對話方塊。
-
-
-
-  </li>
-</ul>
-
-<h2 id="coding">編寫執行階段權限的程式碼</h2>
-
-<p>
-  如果您的應用程式是以新的 M 開發人員預覽版為目標，請務必使用新的權限模型。
-這表示除了在宣示說明中宣告所需的權限之外，您也必須在執行階段檢查是否具備權限，並在您不具備時要求權限。
-
-
-
-</p>
-
-<h3 id="enabling">
-  啟用新的權限模型
-</h3>
-
-<p>
-  如要啟用新的 M 開發人員預覽版權限模型，可將應用程式的
-<code>targetSdkVersion</code> 屬性設定為 <code>"MNC"</code>，並將
-<code>compileSdkVersion</code> 設定為 <code>"android-MNC"</code>。這樣做可啟用所有新權限功能。
-
-</p>
-
-<p>
-  對於預覽版，您必須將 <code>minSdkVersion</code> 設定為
-<code>"MNC"</code>，才能以預覽版 SDK 編譯。
-</p>
-
-<h3 id="m-only-perm">
-  指定只限 M 預覽版使用的權限
-</h3>
-
-<p>
-  您可以在宣示說明中使用新的 <code>&lt;uses-permission-sdk-m&gt;</code> 元素，指出只有在 M 預覽版上才需要某權限。
-如果您以這種方式宣告權限，每當在舊版裝置上安裝應用程式時，系統都不會提示使用者或將權限授與應用程式。藉由使用 <code>&lt;uses-permission-sdk-m&gt;</code> 元素，當使用者安裝更新時，您不需要強制他們授與權限，就可以將新的權限新增至更新的應用程式版本。
-
-
-
-
-
-
-</p>
-
-<p>
-  如果應用程式在使用 M 開發人員預覽版的裝置上執行，
-<code>&lt;uses-permission-sdk-m&gt;</code> 的運作方式會和
-<code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code> 相同。
-  當他們安裝應用程式時，系統不會提示使用者授與任何權限，而應用程式會在需要時才要求權限。
-
-</p>
-
-<h3 id="prompting">
-  提示授與權限
-</h3>
-
-<p>
-  如果您的應用程式使用新的 M 開發人員預覽版權限模型，在執行 M 預覽版的裝置上初次啟動應用程式時，不會要求使用者授與所有權限。
-
-您的應用程式會在需要時才要求權限。
-應用程式要求權限時，系統會對使用者顯示對話方塊。
-
-</p>
-
-<p>
-  如果您的應用程式在 SDK 22 以下版本的裝置上執行，應用程式會使用舊的權限模型。
-當使用者安裝應用程式時，會提示他們授與應用程式在其宣示說明中要求的所有權限，但標示為 <code>&lt;uses-permission-sdk-m&gt;</code> 的那些權限除外。
-
-
-</p>
-
-<h4 id="check-platform">檢查應用程式執行所在的平台</h4>
-
-<p>
-  只有執行 M 開發人員預覽版的裝置上才支援此權限模型。
-呼叫這些方法之前，應用程式應該檢查 {@link android.os.Build.VERSION#CODENAME
- Build.VERSION.CODENAME} 的值，驗證它執行所在的平台。
-
-如果裝置是執行 M 開發人員預覽版，
-{@link android.os.Build.VERSION#CODENAME CODENAME} 是 <code>"MNC"</code>。
-</p>
-
-<h4 id="check-for-permission">檢查應用程式是否具備所需權限</h4>
-
-<p>當使用者嘗試執行需要權限的操作時，應用程式會檢查它目前是否具備可執行此操作的權限。
-如要這麼做，應用程式可呼叫
-
-<code>Context.checkSelfPermission(<i>permission_name</i>)</code>。由於使用者可以隨時撤銷應用程式的權限，即使應用程式知道使用者已授與該權限，還是應該執行此檢查。
-
-
-例如，如果使用者想要使用應用程式拍攝相片，應用程式會呼叫 <code>Context.checkSelfPermission(Manifest.permission.CAMERA)</code>。
-
-</p>
-
-<p class="table-caption" id="permission-groups">
-  <strong>表 1.</strong>權限和權限群組。</p>
-<table>
-  <tr>
-    <th scope="col">權限群組</th>
-    <th scope="col">權限</th>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CALENDAR</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CALENDAR</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.WRITE_CALENDAR</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CAMERA</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.CAMERA</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CONTACTS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_PROFILE</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_PROFILE</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.LOCATION</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.ACCESS_FINE_LOCATION</code>
-        </li>
-        <li>
-          <code>android.permission.ACCESS_COARSE_LOCATION</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.MICROPHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.RECORD_AUDIO</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.PHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_PHONE_STATE</code>
-        </li>
-        <li>
-          <code>android.permission.CALL_PHONE</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CALL_LOG</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CALL_LOG</code>
-        </li>
-        <li>
-          <code>com.android.voicemail.permission.ADD_VOICEMAIL</code>
-        </li>
-        <li>
-          <code>android.permission.USE_SIP</code>
-        </li>
-        <li>
-          <code>android.permission.PROCESS_OUTGOING_CALLS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SENSORS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.BODY_SENSORS</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.USE_FINGERPRINT</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SMS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.SEND_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_WAP_PUSH</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_MMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CELL_BROADCASTS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-</table>
-
-<h4 id="request-permissions">必要時要求權限</h4>
-
-<p>如果應用程式還沒有所需的權限，應用程式會呼叫
-<code>Activity.requestPermissions(String[], int)</code> 方法以要求適當的權限。
-應用程式會傳遞它所需的權限，還有整數「要求代碼」。
-
-  這種方法以非同步方式運作：它會立即傳回，並在使用者回應對話方塊後，系統會以該結果呼叫應用程式的回呼方法，傳遞應用程式傳遞給 <code>requestPermissions()</code> 的相同「要求代碼」。
-
-
-</p>
-
-  <p>下列程式碼會檢查應用程式是否具備讀取使用者聯絡人的權限，並在必要時要求權限。
-</p>
-
-<pre>
-if (checkSelfPermission(Manifest.permission.READ_CONTACTS)
-        != PackageManager.PERMISSION_GRANTED) {
-    requestPermissions(new String[]{Manifest.permission.READ_CONTACTS},
-            MY_PERMISSIONS_REQUEST_READ_CONTACTS);
-
-    // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
-    // app-defined int constant
-
-    return;
-}
-</pre>
-
-<h4 id="handle-response">處理權限要求回應</h4>
-
-<p>
-  當應用程式要求權限時，系統會對使用者呈現對話方塊。
-當使用者回應時，系統會呼叫 <code>Activity.onRequestPermissionsResult(int, String[], int[])</code> 並將使用者回應傳遞給它。
-
-您的應用程式需要覆寫該方法。將您傳遞給 <code>requestPermissions()</code> 的相同要求代碼傳遞給回呼。
-
-例如，如果應用程式要求 <code>READ_CONTACTS</code> 存取權，可能會有下列回呼方法：
-
-
-</p>
-
-<pre>
-&#64;Override
-public void onRequestPermissionsResult(int requestCode,
-        String permissions[], int[] grantResults) {
-    switch (requestCode) {
-        case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
-            if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
-
-                // permission was granted, yay! do the
-                // calendar task you need to do.
-
-            } else {
-
-                // permission denied, boo! Disable the
-                // functionality that depends on this permission.
-            }
-            return;
-        }
-
-        // other 'switch' lines to check for other
-        // permissions this app might request
-    }
-}
-</pre>
-
-  <p>如果使用者授與權限，系統就會將應用程式宣示說明所列出該功能區域的所有權限給予應用程式。
-如果使用者拒絕要求，您應該執行適當動作。
-例如，您可能會停用依存於此權限的任何選單動作。
-
-  </li>
-</p>
-
-<p>
-  系統要求使用者授與權限時，使用者可選擇告知系統不要再次要求該權限。
-在上述情況下，當應用程式使用 <code>requestPermissions()</code> 要求該權限時，系統會立即拒絕要求。
-
-在這種情況下，如果使用者再次明確拒絕您的要求，系統會以相同的方式呼叫您的 <code>onRequestPermissionsResult()</code>。
-
-基於這個理由，您的應用程式不能假設已與使用者發生任何直接互動。
-
-</p>
-
-<h2 id="testing">測試執行階段權限</h2>
-
-
-<p>
-  如果您的應用程式是以新的 M 開發人員預覽版為目標，您必須測試它是否能適當處理權限。
-您不能假設應用程式在執行時具備任何特定權限。
-應用程式初次啟動時，很可能不具備任何權限，且使用者可隨時撤銷或還原權限。
-
-
-</p>
-
-<p>
-  您應該測試應用程式，確保它在所有權限情況下都能正常運作。
-使用 M 預覽版 SDK，我們現在提供 <a href="{@docRoot}tools/help/adb.html">Android 偵錯橋 (adb)</a> 命令，不管需要嘗試哪種權限設定都能讓您測試。
-
-
-
-</p>
-
-<h3>
-  新的 adb 命令和選項
-</h3>
-
-<p>
-  M 預覽版 SDK 平台工具提供的數個命令可讓您測試應用程式如何處理權限。
-
-</p>
-
-<h4>
-  連同權限一併安裝
-</h4>
-
-<p>
-  您可以使用 <a href="{@docRoot}tools/help/adb.html#move"><code>adb
-  install</code></a> 命令的新 <code>-g</code> 選項，安裝應用程式並授與其宣示說明中列出的所有權限：
-
-</p>
-
-<pre class="no-pretty-print">
-$ adb install -g &lt;path_to_apk&gt;
-</pre>
-
-<h4>
-  授與和撤銷權限
-</h4>
-
-<p>
-  您可以使用新的 ADB <a href="{@docRoot}tools/help/adb.html#pm">套件管理員 (pm)</a> 命令，對安裝的應用程式授與和撤銷權限。此功能在自動化測試時非常實用。
-
-
-</p>
-
-<p>
-  如要授與權限，可使用套件管理員的 <code>grant</code> 命令：
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<p>
-  例如，如要將可錄製音訊的權限授與 com.example.myapp 套件，請使用此命令：
-
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant com.example.myapp android.permission.RECORD_AUDIO
-</pre>
-
-<p>
-  如要撤銷權限，可使用套件管理員的 <code>revoke</code> 命令：
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm revoke &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<h2 id="best-practices">最佳做法</h2>
-
-<p>
-  新的權限模型讓使用者有更順暢的體驗，並能輕鬆安裝應用程式且對應用程式執行的工作感到自在。
-
-建議使用下列最佳做法以充分利用新的模型。
-
-</p>
-
-
-<h3 id="bp-what-you-need">只要求您所需的權限</h3>
-
-<p>
-  每次要求權限時，您都是在強迫使用者做出決定。
-  如果使用者拒絕要求，就會減少您應用程式的功能。
-  您應該儘可能減少提出這些要求的次數。
-</p>
-
-<p>
-  例如，您的應用程式可經常使用<a href="{@docRoot}guide/components/intents-filters.html">意圖</a>來取得所需功能，而不是要求權限。
-
-如果您的應用程式需要使用手機的相機拍攝相片，應用程式可以使用 {@link
-  android.provider.MediaStore#ACTION_IMAGE_CAPTURE
-  MediaStore.ACTION_IMAGE_CAPTURE} 意圖。
-當您的應用程式執行意圖時，系統會提示使用者選擇已安裝的相機應用程式來拍攝相片。
-
-
-</p>
-
-<h3 id="bp-dont-overwhelm">
-  別讓使用者無法承受
-</h3>
-
-<p>
-  如果您讓使用者一次面對太多權限要求，可能會讓使用者無法承受而結束您的應用程式。您應該改為在需要時才要求權限。
-
-
-</p>
-
-<p>
-  在某些情況下，您的應用程式可能必須具備一或多個權限。在那種情況下，在應用程式啟動時立即要求所有權限是合理的舉措。
-
-例如，如果您建立攝影應用程式，該應用程式會需要存取裝置相機。
-使用者初次啟動應用程式時，看到要求使用相機的權限不會被嚇到。
-
-但如果相同的應用程式具有與使用者聯絡人分享相片的功能，您可能「不」<em></em>應該在初次啟動時要求該權限。
-
-可以等到使用者嘗試使用「分享」功能時，再要求該權限。
-
-</p>
-
-<p>
-  如果您的應用程式提供教學課程，在教學課程結束時要求應用程式的基本權限是合理的舉措。
-
-</p>
-
-<h3 id="bp-explain">
-  說明需要權限的原因
-</h3>
-
-<p>
-  當您呼叫
-<code>requestPermissions()</code> 時，系統顯示的權限對話方塊會說明您的應用程式想要的權限，但不會說明原因。
-在某些情況下，使用者可能會感到不解。
-  在呼叫 <code>requestPermissions()</code> 前對使用者說明應用程式想要權限的原因是不錯的想法。
-
-</p>
-
-<p>
-  例如，攝影應用程式可能想要使用定位服務，以便將相片加上地理標籤。
-一般使用者可能不明白相片可以包含定位資訊，而不明白為何攝影應用程式會想要知道位置。
-
-在這種情況下，在呼叫 <code>requestPermissions()</code>「之前」<em></em>，將此功能的相關資訊告訴使用者會是不錯的想法。
-
-
-</p>
-
-<p>
-  您可以將這些要求與應用程式教學課程結合來完成此作業。教學課程可依序顯示應用程式的各項功能，並可以同時說明需要哪些權限。
-
-例如，攝影應用程式的教學課程可以示範「與聯絡人分享相片」功能，接著告訴使用者需要提供權限，應用程式才能看到使用者的聯絡人。
-
-
-接著，應用程式可以呼叫 <code>requestPermissions()</code>，要求使用者提供該存取權。
-當然，並非每位使用者都會依照教學課程執行動作，所以您仍需要在應用程式的正常操作期間檢查和要求權限。
-
-
-</p>
diff --git a/docs/html-intl/intl/zh-tw/preview/index.jd b/docs/html-intl/intl/zh-tw/preview/index.jd
deleted file mode 100644
index 3aaf382..0000000
--- a/docs/html-intl/intl/zh-tw/preview/index.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=Android M 開發人員預覽版
-page.tags="preview",
-meta.tags="preview, M preview", androidm
-fullpage=true
-section.landing=true
-header.hide=1
-footer.hide=1
-@jd:body
-
-<section class="dac-expand dac-hero dac-light" >
-  <div class="wrap">
-    <div class="cols dac-hero-content">
-      <div class="col-9of16 col-push-7of16 dac-hero-figure">
-        <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png" srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
-             {@docRoot}images/home/devices-hero_620px_2x.png 2x">
-      </div>
-      <div class="col-7of16 col-pull-9of16">
-        <h1 class="dac-hero-title">Android M 開發人員預覽版</h1>
-        <p class="dac-hero-description">
-          準備使用新版 Android。在 Nexus 5、6、9 和 Player 上測試您的應用程式。
-瞭解新功能 &mdash; <strong>執行階段權限</strong>、<strong>休眠</strong>、<strong>應用程式待命</strong>等省電功能、新的<strong>輔助技術</strong>，以及其他功能。
-
-
-        </p>
-
-        <a class="dac-hero-cta" href="{@docRoot}preview/overview.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          開始使用！
-</a><br>
-        <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Developer Preview 3 (final SDK)</a>
-      </div>
-    </div>
-    <div class="dac-section dac-small">
-      <div class="resource-widget resource-flow-layout col-16"
-           data-query="collection:preview/landing/resources"
-           data-cardSizes="6x2"
-           data-maxResults="6"></div>
-    </div>
-  </div>
-</section>
-
-<section class="dac-section dac-gray"><div class="wrap">
-  <h1 class="dac-section-title">資源</h1>
-  <div class="dac-section-subtitle">
-    以下重要資訊可幫助您的應用程式準備好使用 Android M。
-  </div>
-
-  <div class="resource-widget resource-flow-layout col-16"
-       data-query="collection:preview/landing/more"
-       data-cardSizes="6x6"
-       data-maxResults="16"></div>
-
-    <ul class="dac-section-links">
-      <li class="dac-section-link">
-        <a href="https://code.google.com/p/android-developer-preview/">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          回報問題
-</a>
-      </li>
-      <li class="dac-section-link"><a href="http://g.co/dev/AndroidMDevPreview">
-        <span class="dac-sprite dac-auto-chevron"></span>
-        參加 G+ 社群
-</a>
-      </li>
-    </ul>
-  </div>
-</section>
-
diff --git a/docs/html-intl/intl/zh-tw/preview/license.jd b/docs/html-intl/intl/zh-tw/preview/license.jd
deleted file mode 100644
index c4acb91..0000000
--- a/docs/html-intl/intl/zh-tw/preview/license.jd
+++ /dev/null
@@ -1,143 +0,0 @@
-page.title=授權協議
-
-@jd:body
-
-<p>
-如果想要開始使用 Android SDK 預覽版，您必須同意遵守下列條款和條件。如下方所述，請注意這是 Android SDK 預覽版，可能隨時會有變更，請您自負使用風險。
-Android SDK 預覽版還不是穩定的版本，可能會包含許多錯誤和瑕疵而對您的電腦系統、裝置和資料造成嚴重的損害。
-</p>
-
-<p>
-這是「Android SDK 預覽版授權協議」(以下稱「授權協議」)。
-</p>
-<div class="sdk-terms" style="height:auto;border:0;padding:0;width:700px">
-1.簡介
-
-1.1「Android SDK 預覽版」(在「授權協議」中稱為「預覽版」，包括 (如果有可用的) Android 系統檔案、經過封裝的 API 和預覽版程式庫檔案) 是在「授權協議」之條款的約束下授權給您使用。「授權協議」就您對「預覽版」的使用，構成您與 Google 間具法律約束力之合約。
-
-1.2「Android」係指「Android 軟體開放原始碼專案」(http://source.android.com/) 所提供的 Android 裝置軟體堆疊 (不定期更新)。
-
-1.3「Google」係指 Google Inc.，是一家在美國德拉瓦州註冊的公司，地址為 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States。
-
-2.接受「授權協議」
-
-2.1 必須先同意遵守「授權協議」，才能使用此「預覽版」。如果不接受「授權協議」，您就無法使用此「預覽版」。
-
-2.2 按一下 [接受] 且/或使用「預覽版」，即表示您同意「授權協議」的條款。
-
-2.3 如果您是美國或其他國家/地區 (包括您所居住或使用此「預覽版」的國家/地區) 的法律所禁止接收此「預覽版」的人員，就不得使用此「預覽版」及接受「授權協議」。
-
-2.4 如果您將在公司或組織內部使用「預覽版」，您就要代表雇主或其他實體同意受「授權協議」約束，且您代表並保證具備完整法定權限來約束您的雇主或這類實體遵守「授權協議」。如果您不具備必要的權限，就不得代表您的雇主或其他實體接受「授權協議」或使用此「預覽版」。
-
-3.Google 的預覽版授權
-
-3.1 在「授權協議」之條款的約束下，Google 授權您使用此「預覽版」，此授權為買斷式、不可轉讓、非獨占性、不可轉授權、有限且可撤銷，僅在您公司或組織內部私下或內部使用。此「預覽版」僅供您用於開發在 Android 平台上執行的應用程式。
-
-3.2 您同意 Google 或第三方對此「預覽版」擁有一切法定權利及權益，包括存在於此「預覽版」中的任何「智慧財產權」。「智慧財產權」係指專利法、著作權法、商業秘密法、商標法及任何和所有其他專利權下的任何及一切權利。Google 保留一切未明確授予您的權利。
-
-3.3 您不得將此「預覽版」用於「授權協議」未明文許可的任何用途。除非適用的第三方授權所需，否則您不得：(a) 對此「預覽版」或其任何部分進行複製 (備份用途除外)、修改、改編、轉散佈、反向組譯、還原工程、解編或製作衍生成品；或是 (b) 將此「預覽版」的任何部分載入至行動電話或個人電腦以外的任何其他硬體裝置、將此「預覽版」的任何部分與其他軟體結合，或散佈包含此「預覽版」之任一部分的任何軟體或裝置。
-
-3.4 您同意不會從事任何可能導致或造成 Android 分裂的活動，包括但不限於以任何形式散佈從此「預覽版」衍生的軟體開發套件、參其製作或宣傳。
-
-3.5 對開放原始碼軟體授權下所授權之「預覽版」的使用、複製及散佈，完全受該開放原始碼軟體授權的條款管制，而不受「授權協議」管制。您同意遵守從這類開放原始碼軟體授權獲得的所有權利，並且避免採取任何可能終止、中止或侵害這類權利的行為。
-
-3.6 您同意 Google 可在不事先通知您的情況下變更其所提供之「預覽版」的形式和本質，且此「預覽版」的未來版本可與在此「預覽版」的先前版本上開發的應用程式不相容。您同意 Google 通常可全權斟酌永久或暫時停止提供此「預覽版」(或此「預覽版」的任何功能) 給您或使用者，毋須事先通知。
-
-3.7「授權協議」中的所有條款皆未授予您任何使用 Google 之商業名稱、商標、服務標章、標誌、網域名稱或其他明確品牌特徵的權利。
-
-3.8 您同意不會移除、遮蔽或更改可能附加至或內含在此「預覽版」中的任何專利權通知 (包括著作權和商標通知)。
-
-4.您對「預覽版」的使用
-
-4.1 Google 同意在「授權協議」下，任何條款皆未從您 (或您的授權人) 賦予 Google 對您使用此「預覽版」開發之任何軟體應用程式的任何權利及權益，包括存在於這些應用程式中的任何智慧財產權。
-
-4.2 您同意只就 (a)「授權協議」和 (b) 相關管轄權中任何適用法律、規定或是普遍獲得接受之慣例或指導方針 (包括任何有關將資料或軟體輸出或輸入美國或其他相關國家/地區的法律) 所允許的用途使用此「預覽版」及撰寫應用程式。
-
-4.3 您同意如果使用此「預覽版」開發應用程式，您將保護使用者的隱私權和法定權利。如果使用者提供您使用者名稱、密碼或是其他登入資訊或個人資訊，您必須告知使用者這類資訊將提供給您的應用程式使用，並且必須為這些使用者提供法定充分的隱私權通知和保護。如果您的應用程式會儲存使用者所提供的個人或敏感資訊，它必須確保這些資訊安全無虞。如果使用者提供 Google 帳戶資訊給您，則只有在每個使用者已授權您存取其 Google 帳戶並僅限用於使用者所授權之用途的情況下，您的應用程式才能使用該資訊來存取使用者的 Google 帳戶。
-
-4.4 您同意不會使用此「預覽版」從事任何不當活動，例如開發或散佈會以未經授權的方式干擾、妨礙、損害或存取 Google 或任何第三方之伺服器、網路或是其他財產或服務的應用程式。
-
-4.5 您同意對您透過 Android 裝置和 (或) Android 應用程式建立、傳輸或顯示的任何資料、內容或資源，以及上述行為造成的後果 (包括 Google 可能蒙受的任何損失或損害) 負起全責 (而 Google 對您或任何第三方就上述一切不需負任何責任)。
-
-4.6 您同意對違反在此「授權協議」、任何適用之第三方合約或《服務條款》或是任何適用之法律或規定下所必須遵守的義務，以及違反相關義務造成的後果 (包括 Google 或任何第三方可能蒙受的任何損失或損害) 負起全責 (而 Google 對您或任何第三方就上述一切不需負任何責任)。
-
-4.7「預覽版」目前正在開發中，因此您的測試與意見反應對開發程序非常重要。使用「預覽版」，您即認同某些功能仍處於開發階段，因此您不應期待「預覽版」擁有穩定版本的完整功能。在官方 Android SDK 發行之後，此「預覽版」不再受到支援時，您同意不使用此「預覽版」公開散佈或隨附任何應用程式。
-
-5.您的開發人員認證
-
-5.1 您同意負責保密 Google 可能核發給您或您自己選擇的任何開發人員認證，並且對在您開發人員認證名義下開發的所有應用程式負起全責。
-
-6.隱私權和資訊
-
-6.1 為了持續更新及改進此「預覽版」，Google 可能會從軟體收集某些使用狀況統計數據，包括但不限於軟體的唯一識別碼、相關 IP 位址、版本號碼，以及有關使用此「預覽版」中的哪些工具和 (或) 服務及其使用方式的相關資訊。在收集這類資訊之前，此「預覽版」會先通知您並徵求您的同意。如果您不同意，Google 將不會收集這類資訊。
-
-6.2 Google 會彙總並檢查收集到的資料，據以改善此「預覽版」，並且會依據《Google 隱私權政策》(http://www.google.com/policies/privacy/) 加以妥善保存。
-
-7.第三方應用程式
-
-7.1 如果您使用此「預覽版」來執行第三方開發的應用程式，或是執行會存取第三方所提供之資料、內容或資源的應用程式，您同意 Google 不需對這類應用程式、資料、內容或資源負任何責任。您瞭解您透過第三方應用程式存取的所有資料、內容或資源是由其提供者負起全責，而 Google 對您因使用或存取任何這些第三方應用程式、資料、內容或資源所造成的損失或損害不需負任何責任。
-
-7.2 您瞭解第三方應用程式提供給您的資料、內容或資源可能受到提供者 (或代表他們的其他人員或公司) 所擁有的智慧財產權保護。您不得根據這類資料、內容或資源 (不論是整個或部分) 修改、出租、出借、販售、散佈或製作衍生成品，除非相關擁有者明確授權您從事上述活動。
-
-7.3 您瞭解使用第三方應用程式、資料、內容或資源可能受到您與相關第三方之間的個別條款約束。
-
-8.使用 Google API
-
-8.1 Google API
-
-8.1.1 如果您使用任何 API 從 Google 擷取資料，您瞭解這些資料可能受到 Google 或資料提供者 (或代表他們的其他人員或公司) 所擁有的智慧財產權保護。您對任何這類 API 的使用可能受到其他《服務條款》約束。除非相關《服務條款》明文允許，否則您不得根據這類資料 (不論是整個或部分) 修改、出租、出借、販售、散佈或製作衍生成品。
-
-8.1.2 使用任何 API 從 Google 擷取使用者的資料時，您瞭解並同意只有在該使用者明確同意且授權您擷取其資料，而且僅限用於使用者所授權之用途的情況下，您才能擷取資料。
-
-9.終止「授權協議」
-
-9.1 除非您或 Google 終止「授權協議」(請見下方說明)，否則「授權協議」將持續具有效力。
-
-9.2 如果想終止「授權協議」，只要停止使用此「預覽版」及任何相關的開發人員憑證即可。
-
-9.3 Google 可隨時通知您終止「授權協議」，無論有無原因。
-
-9.4「授權協議」在先發生下列任一情況時，將自動終止而不另行通知或採取其他行動：
-(A) Google 決定不再提供此「預覽版」或此「預覽版」的特定部分給您所居住或使用此服務之國家/地區的使用者；或
-(B) Google 發行最終版本的 Android SDK。
-
-9.5 當「授權條款」終止時，您在「授權協議」所獲得的授權也將會一併終止，您將立即停止「預覽版」的所有使用，而第 10、11、12 和 14 項的條款將無限期持續適用。
-
-10.免責聲明
-
-10.1 您明確瞭解並同意完全自負使用此「預覽版」的風險，並且此「預覽版」是依「現況」和「可提供性」提供，Google 不負任何擔保責任。
-
-10.2 您對使用此「預覽版」及透過此「預覽版」以下載或其他方式取得的任何內容，需自行斟酌和自負風險，而且您對因這類使用而對您的電腦系統或其他裝置所造成的任何損害或資料遺失，需負起全責。不限於前述，您瞭解此「預覽版」不是穩定的版本，可能會包含許多錯誤、瑕疵和安全性弱點而對您的電腦系統或其他裝置造成嚴重的損害，包括完全、不可回復的損失。
-
-10.3 Google 進一步明確表示不提供任何形式的瑕疵擔保和條件 (不論明示或默示)，包括但不限於適售性、適合特定用途及未侵權的默示擔保和條件。
-
-11.責任限制
-
-11.1 您明確瞭解並同意在任何歸責理論下，就可能由您引起的任何直接、間接、附隨性、特殊性、衍生性或懲罰性損害賠償 (包括任何資料遺失)，不論 Google 或其代表是否已獲告知或應已瞭解發生任何這類損失的可能性，Google、其子公司和關係企業及其授權人不必對您負起任何責任。
-
-12.賠償
-
-12.1 在法律允許的最大範圍內，您同意為 Google、其子公司及其個別董監事、主管、員工和代理人，就任何和一切索賠、法律行動、訴訟或訴訟程序，以及因下列原因而引起的任何和一切損失、責任、損害賠償、費用及開支 (包括合理的律師費)，提供辯護、賠償損失並確保其免於承擔賠償責任：(a) 您使用此「預覽版」；(b) 您使用此「預覽版」開發的應用程式侵害任何人的任何智慧財產權，或是詆毀任何人或違反其公開權或隱私權；以及 (c) 您未遵守「授權協議」。
-
-13.對「授權協議」做出的變更
-
-13.1 Google 可在散佈此「預覽版」的新版本時修改「授權協議」。做出這類變更後，Google 會在提供此「預覽版」的網站上提供「授權協議」的新版本。
-
-14.一般法律條款
-
-14.1「授權協議」構成您與 Google 之間的法律協議，用於管制您對此「預覽版」(不包括 Google 依據個別書面協議提供給您的任何服務) 的使用，並完全取代先前您與 Google 之間就此「預覽版」簽署的相關協議。
-
-14.2 您同意如果 Google 未行使或執行「授權協議」所含的任何法律權利或救濟 (或在任何適用法律下對 Google 有利的權益)，並不代表 Google 正式放棄權利，Google 日後仍可行使這些權利或救濟。
-
-14.3 如果經任何法院 (就此事宜依管轄權決定) 裁決「授權協議」中有任何條款無效，則該條款將自「授權協議」中移除，「授權協議」的其餘部分則不受影響。「授權協議」的其餘條款將持續具有效力且可執行。
-
-14.4 您瞭解並同意 Google 旗下子公司體系的每位成員都是「授權協議」的第三方受益人，而且這類其他公司有權直接執行和依據「授權協議」中對其授予權益 (或對其有利之權利) 的任何條款。除此之外的任何其他人員或公司皆非「授權協議」的第三方受益人。
-
-14.5 出口限制。此「預覽版」受美國出口法規約束。您必須遵守適用於此「預覽版」的所有國內和國際出口法規。這些法律包括對目的地、使用者及最終用途的限制。
-
-14.6 未事先取得 Google 事先書面核准的情況下，您不得轉讓或轉移「授權協議」，未經這類核准的任何轉讓將會失效。您不得在未事先取得 Google 書面核准的情況下，委派其「授權協議」涵蓋的責任或義務。
-
-14.7「授權協議」以及您與 Google 就「授權協議」構成的關係皆受加州法律管轄，毋須理會其法律牴觸條款。您和 Google 同意服從位於加州聖塔克拉拉 (Santa Clara, California) 郡內法院的專屬管轄權，以解決由「授權協議」產生的任何法律事務。儘管如此，您同意 Google 仍可在任何管轄權中申請禁制令救濟 (或同等類型的緊急法定救濟)。
-
-
-</div>
\ No newline at end of file
diff --git a/docs/html-intl/intl/zh-tw/preview/overview.jd b/docs/html-intl/intl/zh-tw/preview/overview.jd
deleted file mode 100644
index 9693eec..0000000
--- a/docs/html-intl/intl/zh-tw/preview/overview.jd
+++ /dev/null
@@ -1,389 +0,0 @@
-page.title=程式總覽
-page.metaDescription=歡迎使用 Android M 開發人員預覽版，本程式提供為新版 Android 測試和最佳化您應用程式所需的一切。
-page.image=images/cards/card-preview_16-9_2x.png
-page.tags="preview", "developer", "android"
-
-@jd:body
-
-<div class="cols" style=
-"background-color:#ffebc3; padding: 5px 0;margin-bottom:1em; text-align:center;">
-<h3>
-    Developer Preview 2 is now available
-  </h3>
-
- <ul class="dac-section-links">
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-notes">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Read the Notes</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="{@docRoot}preview/support.html#preview2-get">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Get the Update</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="https://code.google.com/p/android-developer-preview/">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Report Issues</a>
-    </li>
-  </ul>
-</div>
-
-<p>
-  歡迎使用「Android M 開發人員預覽版」<strong></strong>，本程式提供為新版 Android 測試和最佳化您應用程式所需的一切。
-
-免費使用，您只要下載 M 開發人員預覽版工具，就能立即開始使用。
-
-</p>
-
-<div style="background-color:#eceff1;padding:1em;">
-<div class="wrap">
-  <div class="cols">
-    <div class="col-4of12">
-      <h5>
-        硬體與模擬器系統映像
-      </h5>
-
-      <p>
-        在 Nexus 5、6、9 和 Player (適用於電視) ，以及模擬器上執行和測試您的應用程式。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        最新的平台程式碼
-      </h5>
-
-      <p>
-        我們將在預覽版期間提供多次更新，讓您能夠針對最新的平台變更進行測試。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        透過 OTA 傳遞更新
-      </h5>
-
-      <p>
-        在您將裝置刷新為初始預覽版之後，就能以無線方式取得更新。
-
-      </p>
-    </div>
-  </div>
-
-  <div class="cols">
-
-
-    <div class="col-4of12">
-      <h5>
-        新行為和功能
-      </h5>
-
-      <p>
-        儘早開始開發以支援新的平台行為，例如新的執行階段權限模型和省電功能。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        開發人員限時優先回報問題
-      </h5>
-
-      <p>
-        在前幾個星期內，我們將讓開發人員優先回報問題，因此請盡快測試並提供意見反應。
-
-      </p>
-    </div>
-
-    <div class="col-4of12">
-      <h5>
-        意見反應與支援
-      </h5>
-
-      <p>
-        使用<a href="https://code.google.com/p/android-developer-preview/">問題追蹤器</a>回報問題並提供意見反應。
-        與 <a href="http://g.co/dev/AndroidMDevPreview">M&nbsp;開發人員社群</a>中的其他開發人員聯絡。
-
-      </p>
-    </div>
-  </div>
-</div>
-</div>
-
-<!--
-<p>
-  With the M Developer Preview, you'll get an early start on testing your apps,
-  with enough time to make adjustments before the public platform release later
-  in the year. We'll provide several updates to the Preview tools in the weeks
-  ahead, so you can keep in sync with the latest changes as the platform moves
-  toward launch.
-</p>
-<img src="{@docRoot}preview/images/m-preview-timeline.png" alt=
-"Preview program timeline" id="timeline">
-<p>
-  You can help us improve the platform by <a href=
-  "https://code.google.com/p/android-developer-preview/">reporting issues</a>
-  through our feedback channels. This is especially
-  critical in the first month of the preview, when we’ll be giving priority to
-  developer-reported issues and feedback.
-</p> -->
-
-
-<h2 id="timeline">
-  時間軸和更新
-</h2>
-<img src="{@docRoot}preview/images/m-preview-timeline-crop.png" alt="Preview program timeline" id="timeline">
-<p>
-  M 開發人員預覽版可從 5 月 28 日開始執行，直到我們將在 2015 年第 3 季正式發行之前發行的最終版 Android M SDK。
-
-
-</p>
-
-<p>
-  我們將在主要的開發里程碑為您的測試裝置提供更新。
-  里程碑暫定如下
-</p>
-
-<ul>
-  <li>
-    <strong>預覽版&nbsp;1</strong> (初始預覽版，五月下旬)、
-  </li>
-
-  <li>
-    <strong>預覽版&nbsp;2</strong> (六月下旬/七月上旬) 及
-  </li>
-
-  <li>
-    <strong>預覽版&nbsp;3</strong> (接近最終版，七月下旬)
-  </li>
-</ul>
-
-<p>
-  這些更新最終會成為「最終版 SDK」<strong></strong> (稍後於第 3 季)，為新版 Android 提供正式的 API，以及最終的系統行為和功能。
-
-
-</p>
-
-<p>
-  當您在 Android M 上測試和開發時，強烈建議您在預覽版更新發行時立即更新，讓「您的開發環境保持在最新狀態」<strong></strong>。
-
-  為了讓程序更簡單，我們將對更新為預覽版建置的裝置<strong>以無線 (OTA) 方式提供更新</strong>，還會提供您能手動下載和更新的系統映像。
-
-
-</p>
-<p class="note">
-  <strong>注意：</strong>最終版 SDK 與系統映像無法以 OTA 方式提供，將必須<strong>以手動方式更新</strong>至您的測試裝置。</strong>
-
-
-</p>
-
-<p>
-  我們將透過 <a href="http://android-developers.blogspot.com/">Android 開發人員部落格</a>，還有本網站與 <a href="http://g.co/dev/AndroidMDevPreview">Android M 開發人員社群</a>來通知您有可用的預覽版更新。
-
-
-</p>
-
-<h2 id="preview_tools">
-  預覽版新增功能
-</h2>
-
-<p>
-  M 開發人員預覽版包含您針對各種不同螢幕大小、網路技術、 CPU/GPU 晶片組及硬體架構，測試現有應用程式所需的一切。
-
-
-</p>
-
-<h4>
-  SDK 工具
-</h4>
-
-<p>
-  您可以透過 <a href="{@docRoot}sdk/installing/adding-packages.html">Android Studio</a> 中的「SDK 管理器」下載以下元件：
-</p>
-
-<ul>
-  <li>M 開發人員預覽版 <strong>SDK 工具</strong>
-  </li>
-
-  <li>M 開發人員預覽版<strong>模擬器系統映像</strong> (32 位元和 64 位元)
-
-  </li>
-
-  <li>M 開發人員預覽版<strong>模擬器系統映像 (適用於 Android TV)</strong> (32 位元)
-
-  </li>
-</ul>
-
-<h4>
-  硬體系統映像
-</h4>
-
-<p>
-  您可以從<a href="download.html">下載頁面</a>下載適用於 Nexus 裝置的以下硬體系統映像：
-
-</p>
-
-<ul>
-  <li>
-    <strong>Nexus 5</strong> (GSM/LTE)“hammerhead”裝置系統映像
-  </li>
-
-  <li>
-    <strong>Nexus 6</strong>“shamu”裝置系統映像
-  </li>
-
-  <li>
-    <strong>Nexus 9</strong> (Wi-Fi)“volantis”裝置系統映像
-  </li>
-
-  <li>
-    <strong>Nexus Player</strong> (Android TV)“fugu”裝置系統映像
-  </li>
-</ul>
-
-<h4>
-  文件和範例程式碼
-</h4>
-
-<p>
-  這些文件資源可協助您瞭解預覽版：
-</p>
-
-<ul>
-  <li>
-    <a href="setup-sdk.html">設定 SDK</a> 涵蓋開始使用的逐步指示。
-
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/testing/guide.html">測試指南</a>與<a href="behavior-changes.html">行為變更</a>指出要測試的主要區域。
-  </li>
-
-  <li>新 API 的文件，包括 <a href="api-overview.html">API 總覽</a>、可下載的 <a href="{@docRoot}preview/download.html#docs">API 參考資料</a>以及主要功能 (例如<a href="{@docRoot}preview/features/runtime-permissions.html">權限</a>、<a href="{@docRoot}preview/backup/index.html">應用程式備份</a>及其他功能) 的詳細開發人員指南。
-
-
-
-
-  </li>
-
-  <li>
-    示範如何支援權限和其他新功能的<a href="{@docRoot}preview/samples.html">範例程式碼</a>。
-
-  </li>
-
-  <li>
-    適用於目前 M 開發人員預覽版的<a href="{@docRoot}preview/support.html#release-notes">版本資訊</a>，包括變更資訊與差異報告。
-
-  </li>
-</ul>
-
-<h4>
-  支援資源
-</h4>
-
-<p>
-  在 M 開發人員預覽版上測試和開發時，請使用以下支援資源：
-
-</p>
-
-<ul>
-  <li><a href="https://code.google.com/p/android-developer-preview/">M 開發人員預覽版問題追蹤器</a>是您的<strong>主要意見反應</strong>管道。
-
-您可以透過問題追蹤器來回報錯誤、效能問題及一般意見反應。
-您也可以檢查<a href="https://code.google.com/p/android-developer-preview/wiki/KnownIssues">已知問題</a>
-和尋找因應方式步驟。
-  </li>
-
-  <li><a href="http://g.co/dev/AndroidMDevPreview">Android M 開發人員社群</a>是您能<strong>與其他 Android M 開發人員聯絡</strong>的 Google+ 社群。您可以分享有關 Android M 的觀察或想法，或尋找解答。
-
-
-
-  </li>
-</ul>
-
-
-<h2 id="preview_apis_and_publishing">
-  目標設定、預覽版 API 及發行
-</h2>
-
-<p>
-  Android M 開發人員預覽版是開發專用的版本，而且<strong>沒有標準的 API 層級</strong>。
-如果您想要選擇退出相容性行為以測試您的應用程式 (強烈建議)，您可以將應用程式的 <code><a href=
-  "/guide/topics/manifest/uses-sdk-element.html">targetSdkVersion</a></code> 設定為 <code>“MNC”</code>，就能以 M 開發人員預覽版為目標。
-
-
-
-</p>
-
-<p>
-  Android M 開發人員預覽版提供<strong>預覽版 API</strong> &mdash; 在最終版 SDK (目前規劃在 2015 年第三季) 發行之前的都不是正式 API。
-
-這表示您可以預期 API 會隨時間而有些許變更，特別是程式一開始的幾週。<strong></strong>
-
-我們會將 Android M 開發人員預覽版每次更新的變更摘要提供給您。
-
-</p>
-
-<p class="note">
-  請注意，雖然預覽版 API 可能會改變，但例如執行階段權限和省電功能等基本系統行為，均已穩定且能夠立即測試。
-
-
-</p>
-
-<p>
-  在發行方面，Google Play 會<strong>禁止您發行以 M 開發人員預覽版為目標的應用程式</strong>。
-當 Android M 最終版 SDK 推出時，您將能夠以正式 Android M API 層級為目標，並將您的應用程式發行至 Google Play。
-
-同時，您可以透過電子郵件或直接從您的網站下載，來對測試者散佈以 Android M 為目標的應用程式。
-
-
-</p>
-
-<h2 id="get_started">
-  如何開始
-</h2>
-
-<p>
-  如要開始測試您的應用程式：
-</p>
-
-<ol>
-  <li>檢閱 <a href="{@docRoot}preview/api-overview.html">API 總覽</a>與<a href="{@docRoot}preview/behavior-changes.html">行為變更</a>，以瞭解新增功能，還有它會如何影響您的應用程式。
-
-特別是瞭解新的<a href="{@docRoot}preview/features/runtime-permissions.html">執行階段權限</a>模型、省電功能以及自動化備份。
-
-
-  </li>
-
-  <li>依照<a href="{@docRoot}preview/setup-sdk.html">設定預覽版 SDK</a> 的指示來設定您的環境，並設定測試裝置。
-
-
-  </li>
-
-  <li>依照<a href="https://developers.google.com/android/nexus/images">刷新指示</a>，針對 Nexus 5、6、9 及 Player 刷新最新的 M 開發人員預覽版系統映像。
-
-在您刷新開發裝置之後，預覽版更新將以無線 (OTA) 更新</a>的方式提供。
-
-  </li>
-
-  <li>下載 <a href="{@docRoot}preview/download.html#docs">M 預覽版 API 參考資料</a>與 <a href="{@docRoot}preview/samples.html">M 預覽版範例</a>，以深入瞭解新的 API 功能以及如何在您的應用程式中運用。
-
-
-
-  </li>
-
-  <li>加入 <a href="http://g.co/dev/AndroidMDevPreview">Android M 開發人員社群</a>以取得最新消息，並與其他使用新平台的開發人員聯絡。
-
-
-  </li>
-</ol>
-
-<p>
-  感謝您參與 Android M 開發人員預覽版程式！
-</p>
diff --git a/docs/html-intl/intl/zh-tw/preview/samples.jd b/docs/html-intl/intl/zh-tw/preview/samples.jd
deleted file mode 100644
index 2ef9a60..0000000
--- a/docs/html-intl/intl/zh-tw/preview/samples.jd
+++ /dev/null
@@ -1,70 +0,0 @@
-page.title=範例
-page.image=images/cards/samples-new_2x.png
-@jd:body
-
-<p>
-  下列提供 M 開發人員預覽版的程式碼範例。如要下載 Android Studio 的範例，請選取 [File] (檔案) &gt; [Import Samples] (匯入範例) 選單選項。
-<b></b>
-</p>
-
-<p class="note">
-  <strong>注意：</strong>這些可下載的專案是專為與 Gradle 和 Android Studio 一起使用而設計。
-
-</p>
-
-
-<h3 id="RuntimePermissions">執行階段權限</h3>
-
-<p>
- Android M 改變系統權限的運作方式。改為在執行階段才要求使用者核准權限要求，而不是安裝期間。
-這個範例顯示如何要求這些權限。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-RuntimePermissions">在 GitHub 上取得</a></p>
-
-<h3 id="ConfirmCredentials">確認認證</h3>
-
-<p>
- 這個範例示範如何在您的應用程式中使用裝置認證做為驗證方法。
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ConfirmCredential">在 GitHub 上取得</a>
-</p>
-
-<h3 id="FingerprintDialog">指紋對話方塊</h3>
-
-<p>
- 這個範例示範如何在您的應用程式中辨識註冊的指紋以驗證使用者。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-FingerprintDialog">在 GitHub 上取得</a></p>
-
-<h3 id="AutomaticBackup">針對應用程式進行自動備份</h3>
-
-<p>
- Android M 導入自動備份應用程式設定的功能。這個範例示範如何將篩選規則新增至應用程式以管理設定備份。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-AutoBackupForApps">在 GitHub 上取得</a></p>
-
-<h3 id="CameraRaw">相機 2 Raw</h3>
-
-<p>
-  示範如何使用 <code>Camera2</code> API，以擷取 RAW 相機緩衝區並另存為 <code>DNG</code> 檔案。
-
-</p>
-
-<p><a href="https://github.com/googlesamples/android-Camera2Raw">在 GitHub 上取得</a></p>
-
-<h3 id="ActiveNotification">使用中通知</h3>
-
-<p>
-  這個範例示範 
-<a href="{@docRoot}reference/android/app/NotificationManager.html"><code>NotificationManager</code></a>
- 如何將您應用程式目前顯示的通知數目告訴您。
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ActiveNotifications">在 GitHub 上取得</a></p>
diff --git a/docs/html-intl/intl/zh-tw/preview/setup-sdk.jd b/docs/html-intl/intl/zh-tw/preview/setup-sdk.jd
deleted file mode 100644
index 1769f74..0000000
--- a/docs/html-intl/intl/zh-tw/preview/setup-sdk.jd
+++ /dev/null
@@ -1,207 +0,0 @@
-page.title=設定預覽版 SDK
-page.image=images/cards/card-set-up_16-9_2x.png
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文件內容</h2>
-      <ol>
-        <li><a href="#get-as13">取得 Android Studio 1.3</a></li>
-        <li><a href="#get-sdk">取得預覽版 SDK</a></li>
-        <li><a href="#create-update">建立或更新專案</a></li>
-        <li><a href="#setup-test">設定以進行測試</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>M 開發人員預覽版 SDK 可以從 Android SDK Manager 取得。本文件假設您熟悉 Android 應用程式開發工作，例如使用 Android SDK Manager 和建立專案。
-
-如果您是 Android 的新手，請先參閱<a href="{@docRoot}training/basics/firstapp/index.html">建置您的第一個應用程式</a>訓練課程。
-</a>
-</p>
-
-<h2 id="get-as13">取得 Android Studio 1.3</h2>
-
-<p>開發人員預覽版最適合與處於預覽版狀態的 Android Studio 1.3 一起使用。
-強烈建議您安裝 Android Studio 1.3 預覽版與開發人員預覽版一起使用。
-</p>
-
-<p class="caution"><strong>注意：</strong>Android Studio 1.3 的測試預覽版仍在持續開發中。
-如果您使用主要開發電腦來測試開發人員預覽版，可以建立第二個 Android Studio 安裝以用於測試。
-
-</p>
-
-<p>如要安裝 Android Studio 1.3 預覽版：</p>
-
-<ol>
-  <li>下載並啟動 <a href="{@docRoot}tools/studio/index.html">Android Studio</a>。
-
-  </li>
-
-  <li>開啟 [Settings] (設定) 視窗 (在 Windows 上，您可以選擇 [檔案] &gt; [設定] 來執行此動作)。<strong>
-</strong><strong></strong>選擇 [Appearance &amp; Behavior] (外觀和行為) &gt; [System Settings] (系統設定) &gt; [Updates] (更新) 面板。<strong></strong>
-
-
-
-    <p class="aside">在 OSX 上，您可以在 Android Studio 的「Preferences」(偏好設定) 視窗中，找到 [Appearance &amp; Behavior] (外觀和行為) 面板。<strong></strong><strong></strong>
-
-</p>
-  </li>
-
-  <li> 在「Updates」(更新) 面板上，選擇以下選項：[Automatically check updates for: (自動檢查以下的可用更新：)
-<strong></strong><strong>Canary Channel] (測試版管道)。</strong>
-  </li>
-
-  <li>在「Updates」(更新) 面板上，選取 [Check Now] (立即檢查) 以檢查是否有可用的最新測試版建置。<strong></strong><strong></strong>
-版本請在系統提示您時，下載並安裝該版本。
-
-  </li>
-</ol>
-
-<h2 id="get-sdk">取得預覽版 SDK</h2>
-
-<p>如要將預覽版 SDK 元件新增至您的開發環境：</p>
-
-<ol>
-  <li>啟動 Android Studio 1.3 預覽版。
-  </li>
-
-  <li>開啟 [Settings] (設定) 視窗 (在 Windows 上，您可以選擇 [檔案] &gt; [設定] 來執行此動作)。<strong></strong><strong></strong>
-選擇 [Appearance &amp; Behavior] (外觀和行為) &gt; [System Settings] (系統設定) &gt; [Updates] (更新) 面板。<strong></strong>
-
-
-
-    <p class="aside">在 OSX 上，您可以在 Android Studio 的「Preferences」(偏好設定) 視窗中，找到 [Appearance &amp; Behavior] (外觀和行為) 面板。<strong></strong><strong></strong>
-
-</p>
-  </li>
-
-  <li>在「Updates」(更新) 面板上，選擇以下選項：[Automatically check updates for: (自動檢查以下的可用更新：)
-<strong></strong><strong></strong>Canary Channel] (測試版管道) 以及 [Automatically check updates for Android SDK: (自動檢查 Android SDK 的可用更新：)<strong>
-Preview Channel] (預覽版管道)。</strong>
-  </li>
-
-  <li>啟動 <strong>Android Studio Manager</strong>。(使用 Android Studio 1.3，SDK Manager 會與 Android Studio 整合，而不是獨立的應用程式。)
-
-
-  </li>
-
-  <li>在「Platforms」(平台) 區段下，選取 [Android MNC Preview] (Android MNC 預覽版)。<strong></strong><strong></strong>
-
-  </li>
-
-  <li>在「Tools」(工具) 區段中，選擇最新的 Android SDK 工具、平台工具以及建置工具。<strong></strong><strong></strong><strong></strong><strong></strong>
-
-
-  </li>
-
-  <li>按一下 [Install packages] (安裝套件) 並接受所有套件的授權合約。<strong></strong>
-
-  </li>
-
-  <li>開啟 [Settings] (設定) 視窗，然後選擇 [Appearance &amp; Behavior] (外觀和行為) &gt; [System Settings] (系統設定) &gt; [Android SDK] 面板，來驗證已安裝 M 開發人員預覽版。<strong></strong><strong></strong>
-
-</li>
-
-  <li>在「Android SDK」面板上，選擇 [SDK Platforms] (SDK 平台) 索引標籤。<strong></strong><strong></strong>
-「Android MNC Preview」(Android MNC 預覽版) 應該會列在「Installed」(已安裝)。<strong></strong><em></em>
-此外，開啟 [SDK Tools] (SDK 工具) 索引標籤以確認已經安裝最新的工具。<strong></strong>
-
-
-  </li>
-</ol>
-<p>完成這些步驟之後，就能在您的開發環境中使用預覽版元件。
- </p>
-
-
-<h2 id="create-update">建立或更新專案</h2>
-
-<p>
-  為了使用預覽版 API，您必須建立或更新開發專案，才能使用預覽版元件。
-
-</p>
-
-
-<h3 id="create">建立新專案</h3>
-
-<p>
-  建議您使用 Android Studio 搭配預覽版來建立專案。依照<a href="{@docRoot}sdk/installing/create-project.html">建立專案</a>中所述的步驟執行，直到您到達專案精靈中的「大小」畫面。
-
-<em></em>接著，執行下列步驟以建立為預覽版設定的專案。
-
-</p>
-
-<ul>
-  <li>核取 [Phone and Tablet] (手機與平板電腦)。<strong></strong></li>
-  <li>選取 [MNC：<strong></strong>Android M (Preview)] (Android M (預覽版))，它位於 [Minimum SDK] (SDK 最低版本)。<strong></strong>
-</li>
-</ul>
-
-
-<h3 id="update">更新現有的專案</h3>
-
-<p>
-  對於現有專案，您必須修改專案設定以啟用預覽版 API。在您的開發環境中，開啟模組的 <code>build.gradle</code> 檔案，然後將這些值設定如下：
-
-
-</p>
-
-<ul>
-  <li>將 <code>compileSdkVersion</code> 設定為 <code>'android-MNC'</code></li>
-  <li>將 <code>minSdkVersion</code> 設定為 <code>'MNC'</code></li>
-  <li>將 <code>targetSdkVersion</code> 設定為 <code>'MNC'</code></li>
-</ul>
-
-
-<h2 id="setup-test">設定以進行測試</h2>
-
-<p>
-  利用預覽版測試應用程式，需要您將裝置或虛擬裝置設定為使用平台的預覽版本。
-如果您有相容的裝置，您可以安裝預覽版平台以用於測試。
-否則，您可以設定虛擬裝置以用於測試。
-</p>
-
-<h3 id="setup-device">設定實體裝置</h3>
-
-<p>
-  如果您有 Nexus 5、Nexus 6、Nexus 9 或 Android 電視，您可以在這些裝置上安裝預覽版系統映像，以測試您的應用程式。您可以使用 Android Virtual Device Manager (Android 虛擬裝置管理員) 工具，從 Android Studio 內設定使用平台預覽版本的虛擬裝置。
-
-
-
-</p>
-
-<p class="caution">
-  <strong>重要說明：</strong>在裝置上安裝預覽版映像，會「移除當中的所有資料」，因此您應該在安裝預覽版映像之前備份任何資料。<em></em>
-
-</p>
-
-<h3 id="setupAVD">設定虛擬裝置</h3>
-
-<p>
-  您可以使用 Android Virtual Device Manager (Android 虛擬裝置管理員) 工具，從 Android Studio 內設定使用平台預覽版本的虛擬裝置。
-
-</p>
-
-<p>如要使用 AVD Manager 來建立 AVD：</p>
-
-<ol>
-  <li>請在您的開發環境中安裝預覽版 SDK，如<a href="{@docRoot}preview/setup-sdk.html">設定預覽版 SDK</a> 中所述。
-
-</li>
-  <li>依照<a href="{@docRoot}tools/devices/managing-avds.html">使用 AVD Manager 來管理 AVD</a>中的步驟執行。
-
-使用下列設定：
-    <ul>
-      <li><strong>裝置：</strong>Nexus 5、Nexus 6、Nexus 9 或 Android 電視</li>
-      <li><strong>目標：</strong>
-       Android M (預覽版) - API 級別 M</li>
-      <li><strong>ABI：</strong> x86</li>
-    </ul>
-  </li>
-</ol>
-
-<p>
-  如需建立虛擬裝置以用於測試的詳細資訊，請參閱<a href="{@docRoot}tools/devices/index.html">管理虛擬裝置</a>。
-</p>
diff --git a/docs/html-intl/intl/zh-tw/preview/testing/guide.jd b/docs/html-intl/intl/zh-tw/preview/testing/guide.jd
deleted file mode 100644
index 879ec02..0000000
--- a/docs/html-intl/intl/zh-tw/preview/testing/guide.jd
+++ /dev/null
@@ -1,187 +0,0 @@
-page.title=測試指南
-page.image=images/cards/card-build_16x9_2x.png
-page.keywords=previewresources,androidm,testing,permissions
-
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文件內容</h2>
-      <ol>
-        <li><a href="#runtime-permissions">測試權限</a></li>
-        <li><a href="#doze-standby">測試休眠與應用程式待命</a></li>
-        <li><a href="#ids">自動備份與裝置識別碼</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Android M 開發人員預覽版能夠讓您有機會確保您的應用程式能搭配下一個版本的平台運作。
-此預覽版包含許多 API 和足以影響應用程式的行為變更，如 <a href="{@docRoot}preview/api-overview.html">API 總覽</a>和<a href="{@docRoot}preview/behavior-changes.html">行為變更</a>中所述。
-
-使用預覽版測試應用程式時，您必須著重在許多特定的系統變更，以確保使用者都能擁有良好的體驗。
-
-
-</p>
-
-<p>
-  本指南說明對應用程式測試預覽功能的內容與方法。您應優先測試這些特定的預覽功能，因為這些功能可能會對您的應用程式行為有非常大的影響：
-
-
-</p>
-
-<ul>
-  <li><a href="#runtime-permissions">權限</a>
-  </li>
-  <li><a href="#doze-standby">休眠與應用程式待命</a>
-  </li>
-  <li><a href="#ids">自動備份與裝置識別碼</a></li>
-</ul>
-
-<p>
-  如需有關如何設定使用預覽版系統映像的裝置或虛擬裝置以進行測試的詳細資訊，請參閱<a href="{@docRoot}preview/setup-sdk.html">設定預覽版 SDK</a>。
-
-</p>
-
-
-<h2 id="runtime-permissions">測試權限</h2>
-
-<p>
-  新的<a href="{@docRoot}preview/features/runtime-permissions.html">權限</a>模型改變使用者對您的應用程式分配權限的方式。
-以前在安裝過程中會授與所有權限，現在您的應用程式則必須在執行階段向使用者要求個別的權限。
-
-對於使用者而言，這個行為能夠對每個應用程式的Activity提供更細膩的控制，而且也能更瞭解應用程式為何要要求特定權限。
-使用者可以隨時個別對應用程式授與或撤銷權限。
-預覽版的這個功能最有可能影響到您應用程式的行為，而且可能會導致應用程式某些功能無法正常運作，或者這些功能會以降級的狀態運作。
-
-
-</p>
-
-<p class="caution">
-  這個變更會影響在新平台上執行的所有應用程式，甚至影響並非針對新平台版本開發的應用程式。
-平台會對舊版應用程式提供有限的相容性行為，但是您最好還是立即開始規劃將應用程式移轉到新的權限模型，以便能在官方平台上市時發佈更新的應用程式版本。
-
-
-</p>
-
-
-<h3 id="permission-test-tips">測試祕訣</h3>
-
-<p>
-  使用下列測試祕訣，可以幫助您使用新的權限行為，規劃和執行應用程式測試。
-
-</p>
-
-<ul>
-  <li>辨別應用程式目前的權限與相關的程式碼路徑。</li>
-  <li>針對所有權限保護的服務與資料測試使用者流程。</li>
-  <li>測試各種組合的授與/撤銷權限。</li>
-  <li>從命令列使用 {@code adb} 工具管理權限：
-    <ul>
-      <li>依群組列出權限與狀態：
-        <pre>adb shell pm list permissions -d -g</pre>
-      </li>
-      <li>使用下列語法授與或撤銷一或多個權限：<br>
-        <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
-      </li>
-    </ul>
-  </li>
-  <li>分析使用權限的應用程式服務。</li>
-</ul>
-
-<h3 id="permission-test-strategy">測試策略</h3>
-
-<p>
-  權限變更會影響應用程式的結構和設計，同時也會影響使用者的體驗以及您提供給使用者的流程。
-您應該評估應用程式目前的權限作法，然後開始規劃您要提供的新流程。
-官方版本的平台會提供相容性行為，但是您最好規劃更新您的應用程式，而不要依賴這些行為。
-
-
-</p>
-
-<p>
-  辨別您的應用程式實際需要且使用到的權限，然後找出使用受權限保護之服務的各種程式碼路徑。
-您可以在新平台上測試，並且進行程式碼分析，來達到上述目的。
-測試時，您應該變更應用程式的 {@code targetSdkVersion} 為預覽版本，著重在加入執行階段權限。
-如需詳細資訊，請參閱<a href="{@docRoot}preview/setup-sdk.html#">設定預覽版 SDK</a>。
-
-</p>
-
-<p>
-  測試各種撤銷/加入權限的組合，著重在依據這些權限的使用者流程。
-如果相依性不明顯或邏輯不清楚時，您可以考慮重新分解或劃分流程以消除相依性，或是更清楚為何需要某個權限。
-
-
-</p>
-
-<p>
-  如需有關執行階段權限行為、測試和建議做法的詳細資訊，請參閱 <a href="{@docRoot}preview/features/runtime-permissions.html">權限</a>開發人員預覽版頁面。
-
-
-</p>
-
-
-<h2 id="doze-standby">測試休眠與應用程式待命</h2>
-
-<p>
-  當裝置處於閒置狀態，或者當您的應用程式不在使用中時，「休眠」與「應用程式待命」的省電功能會限制應用程式可以執行的背景處理量。
-系統可能加諸在應用程式的限制，包括網路受到限制或沒有網路、背景工作暫停、通知暫停、喚醒要求被略過，以及警示被略過。
-
-如要確保您的應用程式能正確運作，而且這些省電功能也達到最好的效益，您應該透過模擬這些低電量狀態，測試您的應用程式。
-
-
-</p>
-
-<h4 id="doze">搭配休眠測試應用程式</h4>
-
-<p>對您的應用程式測試休眠：</p>
-
-<ol>
-<li>設定 M 預覽版系統映像的硬體裝置或虛擬裝置。</li>
-<li>將裝置連線到您的開發電腦並安裝您的應用程式。</li>
-<li>執行您的應用程式並讓應用程式保持使用中。</li>
-<li>執行下列命令，模擬裝置進入「休眠」模式：
-
-<pre>
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-
-  </li>
-  <li>觀察當裝置重新啟動時的應用程式行為。當裝置結束「休眠」時，確定應用程式順利回復。
-</li>
-</ol>
-
-
-<h4 id="standby">搭配應用程式待命測試應用程式</h4>
-
-<p>對您的應用程式測試應用程式待命模式：</p>
-
-<ol>
-  <li>設定 M 預覽版系統映像的硬體裝置或虛擬裝置。</li>
-  <li>將裝置連線到您的開發電腦並安裝您的應用程式。</li>
-  <li>執行您的應用程式並讓應用程式保持使用中。</li>
-  <li>執行下列命令，模擬應用程式進入待命模式：
-
-<pre>
-$ adb shell am broadcast -a android.os.action.DISCHARGING
-$ adb shell am set-idle &lt;packageName&gt; true
-</pre>
-
-  </li>
-  <li>使用下列命令，模擬喚醒應用程式：
-    <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
-  </li>
-  <li>觀察當應用程式被喚醒時的行為。確定應用程式順利從待命模式回復。
-您尤其要檢查應用程式通知與背景工作是否有如預期般繼續運作
-。</li>
-</ol>
-
-<h2 id="ids">針對應用程式進行自動備份與裝置特定識別碼</h2>
-
-<p>如果您的應用程式在內部儲存空間存有任何裝置特定識別碼，例如 Google
-雲端通訊註冊 ID，請確認按照建議做法排除這些儲存位置不要進行自動備份，如<a href="{@docRoot}preview/backup/index.html">針對應用程式進行自動備份</a>中所述。
-
-
- </p>
diff --git a/docs/html-intl/intl/zh-tw/preview/testing/performance.jd b/docs/html-intl/intl/zh-tw/preview/testing/performance.jd
deleted file mode 100644
index 5437e9d..0000000
--- a/docs/html-intl/intl/zh-tw/preview/testing/performance.jd
+++ /dev/null
@@ -1,656 +0,0 @@
-page.title=測試顯示效能
-page.image=images/cards/card-test-performance_2x.png
-page.keywords=效能, fps, 工具
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>本文件內容</h2>
-      <ol>
-        <li><a href="#measure">測量 UI 效能</a>
-          <ul>
-            <li><a href="#aggregate">彙總畫面統計資料</a></li>
-            <li><a href="#timing-info">精確畫面計時資訊</a></li>
-            <li><a href="#timing-dump">簡易畫面計時傾印</a></li>
-            <li><a href="#collection-window">控制統計資料收集時間</a></li>
-            <li><a href="#diagnose">診斷效能回復</a></li>
-            <li><a href="#resources">其他資源</a></li>
-          </ul>
-        </li>
-        <li><a href="#automate">自動化 UI 效能測試</a>
-          <ul>
-            <li><a href="#ui-tests">設定 UI 測試</a></li>
-            <li><a href="#automated-tests">設定自動化 UI 測試</a></li>
-            <li><a href="#triage">分類和修正觀察到的問題</a></li>
-          </ul>
-        </li>
-      </ol>
-  </div>
-</div>
-
-
-<p>
-  使用者介面效能測試可確保您的應用程式不只符合功能需求，與使用者與應用程式的互動也無比順暢，執行時每秒一致有 60 個畫面 (<a href="https://www.youtube.com/watch?v=CaMTIgxCSqU&amp;index=25&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">為什麼 60fps？</a>)，任何畫面都不會遺漏或延遲，或稱為「閃避」<em></em>現象。
-
-
-本文件說明可用以測量 UI 效能的工具，以及呈現可將 UI 效能測量與測試做法整合的方法。
-
-
-</p>
-
-
-<h2 id="measure">測量 UI 效能</h2>
-
-<p>
-  為改善效能，首先您需要測量系統效能的能力，接著在管道的各部分發生問題時加以診斷和辨識。
-
-
-</p>
-
-<p>
-  <em><a href="https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></em> 是一種 Android 工具，可在裝置上執行和傾印有關系統服務狀態的有趣資訊。
-
-將 <em>gfxinfo</em> 命令傳送至 dumpsys，會將錄製階段所發生與動畫的畫面相關的效能資訊以 logcat 提供輸出。
-
-
-</p>
-
-<pre>
-&gt; adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt;
-</pre>
-
-<p>
-  此命令會產生多種不同的畫面計時資料。
-</p>
-
-<h3 id="aggregate">彙總畫面統計資料</h3>
-
-<p>
-  使用 M 預覽版，命令會在程序的生命週期全程收集畫面資料，並將彙總的分析列印到 logcat。
-例如：
-</p>
-
-<pre class="noprettyprint">
-Stats since: 752958278148ns
-Total frames rendered: 82189
-Janky frames: 35335 (42.99%)
-90th percentile: 34ms
-95th percentile: 42ms
-99th percentile: 69ms
-Number Missed Vsync: 4706
-Number High input latency: 142
-Number Slow UI thread: 17270
-Number Slow bitmap uploads: 1542
-Number Slow draw: 23342
-</pre>
-
-<p>
-  這些高階統計資料是以高階方式轉換應用程式的轉譯效能，還有其在許多畫面的穩定性。
-
-</p>
-
-
-<h3 id="timing-info">精確畫面計時資訊</h3>
-
-<p>
-  M 預覽版隨附新的命令 gfxinfo，而 <em>framestats</em> 可從最近的畫面提供相當詳細的畫面計時資訊，讓您可以追蹤並更準確進行除錯。
-
-
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats
-</pre>
-
-<p>
-  此命令會從應用程式所產生至少 120 個畫面當中，加上奈秒時間戳記印出畫面計時資訊。以下範例是 adb dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats 的原始輸出：
-
-
-</p>
-
-<pre class="noprettyprint">
-0,49762224585003,49762241251670,9223372036854775807,0,49762257627204,49762257646058,49762257969704,49762258002100,49762265541631,49762273951162,49762300914808,49762303675954,
-0,49762445152142,49762445152142,9223372036854775807,0,49762446678818,49762446705589,49762447268818,49762447388037,49762453551527,49762457134131,49762474889027,49762476150120,
-0,49762462118845,49762462118845,9223372036854775807,0,49762462595381,49762462619287,49762462919964,49762462968454,49762476194547,49762476483454,49762480214964,49762480911527,
-0,49762479085548,49762479085548,9223372036854775807,0,49762480066370,49762480099339,49762481013089,49762481085850,49762482232152,49762482478350,49762485657620,49762486116683,
-</pre>
-
-<p>
-  這裡的每一行輸出都代表應用程式產生的一個畫面。每行都有固定的資料欄編號，描述畫面產生管道的各階段所花費的時間。
-下一節會詳細說明此格式，包括各資料欄代表的意義。
-
-</p>
-
-
-<h4 id="fs-data-format">Framestats 資料格式</h4>
-
-<p>
-  由於資料區塊是以 CSV 格式輸出，所以可以直接將它貼到選擇的試算表工具，或使用指令碼來收集和剖析。
-下表說明輸出資料欄的格式。
-所有時間戳記都以奈秒為單位。
-</p>
-
-<ul>
-  <li>FLAGS
-    <ul>
-      <li>FLAGS 資料欄的資料列均為 0，從 FRAME_COMPLETED 資料欄減去 INTENDED_VSYNC 資料欄可計算得出總畫面時間。
-
-      </li>
-
-      <li>如果這個值非零，應該略過該資料列，因為從正常效能來判斷，畫面已是極端值，版面配置與繪製預期都要花費 16ms 以上的時間。
-
-以下是發生這種情況的幾個原因：
-        <ul>
-          <li>視窗版面配置改變 (例如應用程式的第一個畫面或經過旋轉)
-
-          </li>
-
-          <li>也可能是略過畫面，在這種情況下，某些值會含有記憶體回收的時間戳記。
-例如，如果畫面速度超過 60fps，或如果螢幕上空無一物，最後卻有所改變，就可能會略過畫面，這不一定是應用程式發生問題的徵兆。
-
-
-          </li>
-        </ul>
-      </li>
-    </ul>
-  </li>
-
-  <li>INTENDED_VSYNC
-    <ul>
-      <li>預期的畫面起始點。如果這個值和VSYNC 不同，表示 UI 執行緒中發生的工作使它無法即時回應 vsync 訊號。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>VSYNC
-    <ul>
-      <li>用於所有 vsync 接聽器和繪製畫面的時間值 (Choreographer 畫面回呼、動畫、View.getDrawingTime() 等等)
-
-      </li>
-
-      <li>如要深入瞭解有關 VSYNC 和它如何影響您的應用程式，請參閱<a href="https://www.youtube.com/watch?v=1iaHxmfZGGc&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=23">瞭解 VSYNC</a> 影片。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>OLDEST_INPUT_EVENT
-    <ul>
-      <li>輸入佇列中最舊輸入事件的時間戳記，或為 Long.MAX_VALUE，若沒有該畫面的輸入事件的話。
-
-      </li>
-
-      <li>這個值主要用於平台工作，對應用程式開發人員用處不大。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>NEWEST_INPUT_EVENT
-    <ul>
-      <li>輸入佇列中最新輸入事件的時間戳記，或為 0，若沒有該畫面的輸入事件的話。
-
-      </li>
-
-      <li>這個值主要用於平台工作，對應用程式開發人員用處不大。
-
-      </li>
-
-      <li>不過，透過查看 (FRAME_COMPLETED - NEWEST_INPUT_EVENT)，可以大略知道應用程式還會延遲多少時間。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>HANDLE_INPUT_START
-    <ul>
-      <li>將輸入事件分配給應用程式時的時間戳記。
-      </li>
-
-      <li>查看這個值與 ANIMATION_START 之間的時間，即可測量出應用程式花費在處理輸入事件的時間。
-
-      </li>
-
-      <li>如果這個數字很高 (&gt;2ms)，這表示應用程式花費在處理輸入事件(例如 View.onTouchEvent()) 的時間過長，指出需要將這項工作最佳化，或卸載交由其他執行緒處理。
-
-請注意，還有一些情況本就預期且可接受這個數字較大，例如會啟動新活動或類似工作的點擊事件。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>ANIMATION_START
-    <ul>
-      <li>向 Choreographer 註冊的動畫執行時的時間戳記。
-      </li>
-
-      <li>查看這個值與 PERFORM_TRANVERSALS_START 之間的時間，即可判斷它花費多久的時間評估所有執行中的動畫器 (常見的有 ObjectAnimator、ViewPropertyAnimator 及 Transitions)。
-
-
-      </li>
-
-      <li>如果這個數字很高 (&gt;2ms)，可查看您的應用程式是否撰寫任何自訂動畫器，或 ObjectAnimators 正進行動畫處理的資料欄，並確定它們都適用於動畫。
-
-
-      </li>
-
-      <li>如要深入瞭解 Choreographer，請參閱<a href="https://developers.google.com/events/io/sessions/325418001">順滑流暢與否</a>影片。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>PERFORM_TRAVERSALS_START
-    <ul>
-      <li>如果您從這個值中減去 DRAW_START，就可以得知版面配置和測量階段花費多久的時間完成。(請注意，在捲動或動畫期間，您會希望這個值趨近於零。)
-
-
-      </li>
-
-      <li>如要深入瞭解轉譯管道的測量與版面配置階段，請參閱<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">無效判定、版面配置及效能</a>影片。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>DRAW_START
-    <ul>
-      <li>performTraversals 的繪製階段開始的時間。這是判定無效的任何檢視顯示清單的記錄起始點。
-
-      </li>
-
-      <li>這個值與 SYNC_START 之間的時間，就是對樹狀結構中所有無效判定檢視呼叫 View.draw() 所花費的時間。
-
-      </li>
-
-      <li>如需繪製模型的詳細資訊，請參閱<a href="{@docRoot}guide/topics/graphics/hardware-accel.html#hardware-model">硬體加速</a>或<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">無效判定、版面配置及效能</a>影片。
-
-
-      </li>
-    </ul>
-  </li>
-
-  <li>SYNC_START
-    <ul>
-      <li>繪製的同步階段開始的時間。
-      </li>
-
-      <li>如果這個值與 ISSUE_DRAW_COMMANDS_START 之間的時間相當長 (約為 &gt;0.4ms )，通常代表已繪製許多必須上傳至 GPU 的新點陣圖。
-
-
-      </li>
-
-      <li>如要深入瞭解同步階段，請參閱<a href="https://www.youtube.com/watch?v=VzYkVL1n4M8&amp;index=24&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">設定檔 GPU 轉譯</a>影片。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>ISSUE_DRAW_COMMANDS_START
-    <ul>
-      <li>硬體轉譯器開始對 GPU 發出繪製命令的時間。
-      </li>
-
-      <li>這個值與 FRAME_COMPLETED 之間的時間大約就是應用程式產生的 GPU 工作量。
-太過度繪製或無效轉譯效果之類的問題都會顯示於此。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>SWAP_BUFFERS
-    <ul>
-      <li>相對於無趣的平台工作以外，呼叫 eglSwapBuffers 的時間。
-
-      </li>
-    </ul>
-  </li>
-
-  <li>FRAME_COMPLETED
-    <ul>
-      <li>全部完成！花費在處理這個畫面的總時間，計算方法是 FRAME_COMPLETED - INTENDED_VSYNC。
-
-      </li>
-    </ul>
-  </li>
-
-</ul>
-
-<p>
-  您能以不同的方式使用這項資料。顯示不同延遲貯體中畫面時間分布的長條圖就是一種簡單但實用的方式，請見下圖。
-
-本圖可一目瞭然地告訴我們，大部分畫面都低於 16ms 的上限 (紅色除外)，但只有幾個畫面明顯超過上限。
-
-我們可以查看此長條圖一段時間的變化，觀察出現的大規模位移或產生新的極端值。
-您也能根據資料中的許多時間戳記將輸入延遲、花費在版面配置的時間或其他類似的有趣度量指標繪成圖表。
-
-
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-framestats.png">
-
-
-<h3 id="timing-dump">簡易畫面計時傾印</h3>
-
-<p>
-  如果 [開發人員選項] 中的 [設定檔 GPU 轉譯]<strong></strong> 設定為 [In adb shell dumpsys gfxinfo]<strong></strong>
-，<code>adb shell dumpsys gfxinfo</code> 命令會印出最近 120 個畫面的計時資訊，以定位鍵分隔值分成數個不同類別。
-
-這項資料非常適合用來指出可能是繪製管道的哪個部分太慢。
-
-</p>
-
-<p>
-  類似於上述的 <a href="#fs-data-format">framestats</a>，可以直接將它貼到選擇的試算表工具，或使用指令碼來收集和剖析。
-
-下圖顯示許多由應用程式產生的畫面花費時間的分類細項。
-
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-frame-latency.png">
-
-<p>
-  執行 gfxinfo、複製輸出、將輸出貼入試算表應用程式，然後將資料繪製成堆疊長條圖的結果。
-
-</p>
-
-<p>
-  每個直條都代表動畫的一個畫面，其高度代表計算該畫面所花費的毫秒數。
-長條的每個色塊都代表轉譯管道的不同階段，好讓您看出應用程式的哪部分可能產生瓶頸。
-
-如需瞭解繪製管道以及如何最佳化的詳細資訊，請參閱硬體加速或<a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;index=27&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">無效判定、版面配置及效能</a>影片。
-
-
-</p>
-
-
-<h3 id="collection-window">控制統計資料收集時間</h3>
-
-<p>
-  framestats 與簡單的畫面計時都會收集極短時間內的資料 – 轉譯約需兩秒。
-為了精確控制這段時間，例如只限特定動畫的資料，您可以重設所有計數器，然後彙總收集的統計資料。
-
-
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; reset
-</pre>
-
-<p>
-  這也能和傾印命令本身結合使用，定期收集和重設，持續擷取兩秒時間內的畫面。
-
-
-</p>
-
-
-<h3 id="diagnose">診斷效能回復</h3>
-
-<p>
-  識別回復是追蹤問題和維護應用程式健康情況的第一步。
-不過，dumpsys 只能識別有問題存在與相關的嚴重性。
-您仍需要診斷造成效能問題的特定原因，以及找出適當的修正方式。
-因此，強烈建議您使用 <a href="{@docRoot}tools/help/systrace.html">systrace</a> 工具。
-
-</p>
-
-
-<h3 id="resources">其他資源</h3>
-
-<p>
-  如需 Android 的轉譯管道如何運作、常見問題以及如何修正的詳細資訊，下列的一些資訊可能會很實用：
-
-
-</p>
-
-<ul>
-  <li>轉譯效能 101
-  </li>
-  <li>為什麼 60fps？
-  </li>
-  <li>Android UI 和 GPU
-  </li>
-  <li>無效判定、版面配置及效能
-  </li>
-  <li>利用 Systrace 分析 UI 效能
-  </li>
-</ul>
-
-
-<h2 id="automate">自動化 UI 效能測試</h2>
-
-<p>
-  UI 效能測試的方法之一就是讓測試人員對目標應用程式執行一組使用者操作，並以肉眼查看，或花費很長一段時間使用工具導向的方法，尋找閃避現象。
-
-但這種靠人工的方式充滿危險，人類對畫面率變化的感知能力因人而異，而且這種方法也很費時、繁瑣且容易出錯。
-
-
-</p>
-
-<p>
-  較有效率的方法是從自動化的 UI 測試中記錄和分析重要效能度量指標。
-Android M 開發人員預覽版包含新的記錄功能，能夠輕鬆判斷應用程式動畫中閃避現象的數量與嚴重程度，還能用來建置嚴謹的程序，判斷目前的效能並追蹤未來的效能目標。
-
-
-
-</p>
-
-<p>
-  本文會逐步說明建議用來使用資料以自動化效能測試的方法。
-
-</p>
-
-<p>
-  這種方法大多分成兩個主要動作。首先，識別您要測試的項目，以及測試的方法。其次是設定和維護自動化測試環境。
-
-
-</p>
-
-
-<h3 id="ui-tests">設定 UI 測試</h3>
-
-<p>
-  在您開始進行自動化測試之前，務必要決定幾個高階決策，才能適當瞭解您的測試空間與可能會有的需求。
-
-</p>
-
-<h4>
-  識別要測試的主要動畫 / 流程
-</h4>
-
-<p>
-  請記住，流暢的動畫有所中斷時，就是使用者最容易看見效能低落的時候。
-因此，識別要測試哪種類型的 UI 動作時，最好著重在使用者最常看見或對他們的體驗最重要的主要動畫。
-
-例如，以下是一些可能有利於識別的常見情況：
-</p>
-
-<ul>
-  <li>捲動主要的 ListView 或 RecyclerView
-  </li>
-
-  <li>非同步等待週期內的動畫
-  </li>
-
-  <li>當中會載入 / 操縱點陣圖的任何動畫
-  </li>
-
-  <li>包含 Alpha 透明混色的動畫
-  </li>
-
-  <li>使用畫布繪製的自訂檢視
-  </li>
-</ul>
-
-<p>
-  和您團隊的工程人員、設計師及產品經理合作，優先考慮將這些主要產品動畫放入測試涵蓋範圍內。
-
-</p>
-
-<h4>
-  定義未來目標並予以追蹤
-</h4>
-
-<p>
-  從高階觀點來看，重要的是識別特定的效能目標，並著重在撰寫測試及收集相關資料。
-例如：
-</p>
-
-<ul>
-  <li>您是否只想初次開始追蹤 UI 效能以深入瞭解？
-  </li>
-
-  <li>您是否想要避免可能在未來導入的回復？
-  </li>
-
-  <li>今日有 90% 的順暢畫面並想要在本季達到 98%？
-  </li>
-
-  <li>今日有 98% 的順暢畫面且不想要回復？
-  </li>
-
-  <li>您的目標是改善低階裝置上的效能嗎？
-  </li>
-</ul>
-
-<p>
-  在上述的這些情況中，您會想要有歷史追蹤功能，來顯示不同應用程式版本間的效能。
-
-</p>
-
-<h4>
-  識別測試要用的裝置
-</h4>
-
-<p>
-  應用程式效能會因其執行所在裝置而異。有些裝置包含的記憶體較少、GPU 較不強大或 CPU 晶片速度較慢。
-這表示可在某組硬體上執行良好的動畫，在其他組合上不一定能執行良好，更糟的是可能會在管道的不同部分產生瓶頸。
-
-使用者所見可能會不同，為將這點列入考量，請挑選涵蓋當前高階裝置、低階裝置、平板電腦等的一系列裝置執行測試。
-
-尋找 CPU 效能、RAM、畫面密度、大小等方面的變化。
-高階裝置上通過的測試，在低階裝置上可能會失敗。
-
-</p>
-
-<h4>
-  UI 測試的基本架構
-</h4>
-
-<p>
-  工具套件 (例如 <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a> 和 <a href="{@docRoot}training/testing/ui-testing/espresso-testing.html">Espresso</a>) 是為協助將使用者在您的應用程式四處移動的動作自動化而建置。
-
-這些都是模擬使用者與裝置互動的簡單架構。
-如要使用這些架構，您要有效地建立會逐一執行一組使用者動作的獨特指令碼，然後在裝置上自行播放。
-
-
-</p>
-
-<p>
-  連同 <code>dumpsys gfxinfo</code>，再結合這些自動化測試，您可快速建立可重現系統，讓您執行測試並測量該特定情況下的效能資訊。
-
-
-</p>
-
-
-<h3 id="automated-tests">設定自動化 UI 測試</h3>
-
-<p>
-  在您能夠執行 UI 測試，還有可從單一測試收集資料的管道後，下一個重要步驟是利用可多次執行該項測試的架構，然後彙總產生的效能資料，以供您的開發團隊進一步分析。
-
-
-
-</p>
-
-<h4>
-  測試自動化的架構
-</h4>
-
-<p>
-  直接在目標裝置/模擬器上執行的 UI 測試架構 (例如 <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a>) 毫無價值。
-因為效能收集資訊是由主控機器透過 ADB 傳送命令驅動 <em>dumpsys gfxinfo</em> 來完成。
-<a href="{@docRoot}tools/help/monkeyrunner_concepts.html">MonkeyRunner</a> 架構是為了協助橋接這些個別實體開發。在主控機器上執行的指令碼處理系統可對一組連接的裝置發出命令，也能接收來自這些裝置的資料。
-
-
-
-</p>
-
-<p>
-  建置一組指令碼以適當自動化 UI 效能測試，至少應能利用 monkeyRunner 來完成下列工作：
-
-</p>
-
-<ul>
-  <li>對目標裝置或模擬器載入和啟動所需的 APK。
-  </li>
-
-  <li>啟動並允許執行 UI Automator UI 測試
-  </li>
-
-  <li>透過 dumpsys gfxinfo 收集效能資訊。<em></em><em></em>
-  </li>
-
-  <li>彙總資訊並以對開發人員有用的方式顯示。
-  </li>
-</ul>
-
-
-<h3 id="triage">分類和修正觀察到的問題</h3>
-
-<p>
-  在辨識出問題模式與回復之後，下一個步驟是辨識和套用修正。
-如果您的自動化測試架構會為畫面保留精確的計時分類細項，可幫助您詳細審察目前可疑的程式碼/版面配置變化 (在回復的情況下)，或在您切換為靠人工探究時縮小要分析的系統部分。
-
-
-如需靠人工探究時，<a href="{@docRoot}tools/help/systrace.html">systrace</a> 是開始進行的好地方，顯示轉譯管道各階段、系統中每個執行緒與核心，還有您所定義任何自訂事件標記的精確計時資訊。
-
-
-</p>
-
-<h4>
-  適當分析暫時的計時
-</h4>
-
-<p>
-  請務必注意，從轉譯效能中取得和測量計時的困難度。
-這些數字不具決定性且通常受系統狀態、可用記憶體數目、溫度調節，還有上次太陽閃焰何時衝擊您所在地區影響。
-
-重點是您執行相同的測試兩次，而每次得到的數字都有些微不同，數字很接近但不會完全相同。
-
-
-</p>
-
-<p>
-  以這種方式適當收集和分析資料，表示執行相同的測試多次，並累積結果取平均值或中間值。(為了簡單起見，我們稱之為「批次」) 這可讓您粗略計算測試的效能，而不需要精確的計時。
-
-
-
-</p>
-
-<p>
-  在變更的程式碼之間使用批次，可看出那些變更對效能的影響。
-如果前次變更批次的平均畫面率大於後來變更批次，您通常會有那項特定變更的整體 win wrt 效能。
-
-
-</p>
-
-<p>
-  這表示您執行的任何自動化 UI 測試都應將此概念列入考量，同時考量可能會在測試期間發生的任何異常情況。
-例如，您的應用程式效能若因為某些裝置問題而突然下降 (並非由您的應用程式引起)，您可能會想要重新執行批次，以讓取得的計時較不混亂。
-
-
-
-</p>
-
-<p>
-  應該執行多少次測試才能獲得有意義的測量結果呢？最少應執行 10 次，若執行更多次 (像是 50 或 100 次) 可以產生更準確的結果 (當然您現在是以時間換取準確度)。
-
-
-</p>
diff --git a/docs/html-intl/intl/zh-tw/sdk/index.jd b/docs/html-intl/intl/zh-tw/sdk/index.jd
new file mode 100644
index 0000000..ba11c46
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/sdk/index.jd
@@ -0,0 +1,429 @@
+page.title=下載 Android Studio 和 SDK 工具
+page.tags=sdk, android studio
+page.template=sdk
+page.image=images/cards/android-studio_2x.png
+header.hide=1
+page.metaDescription=下載官方 Android IDE 和開發人員工具以建置適用於 Android 手機、平板電腦、穿戴式裝置、電視等裝置的應用程式。
+
+@jd:body
+
+<style type="text/css">
+  .offline {display:none;}
+  h2.feature {
+    padding-top:30px;
+    margin-top:0;
+    clear:both;
+  }
+  .feature-blurb {
+  margin:0px; font-size:16px; font-weight:300;
+  padding-top:40px;
+  }
+
+  .landing-button .small {
+    font-size: 12px;
+    font-weight: normal;
+    line-height: 12px;
+    display: block;
+  }
+
+  h1.studio-logo {
+    width:226px;
+    height:78px;
+    display:block;
+    padding:0;
+    white-space: nowrap;
+    text-indent: -10000px;
+    font-size:0px;
+    background: url({@docRoot}images/tools/studio-logo.png);
+    background-image: -webkit-image-set(url({@docRoot}images/tools/studio-logo.png) 1x, url({@docRoot}images/tools/studio-logo_2x.png) 2x);
+    background-size: 226px 78px;
+  }
+
+</style>
+
+
+
+
+
+<div style="position:relative;">
+
+
+<div class="wrap" id="tos" style="display:none;width:inherit;height:650px">
+<div class="col-13" style="margin:0;">&nbsp;</div><!-- provides top margin for content -->
+
+<h1 id="tos-header" style="margin-top:0">下載</h1>
+
+<p class="sdk-terms-intro">在安裝 Android Studio 或單獨的 SDK 工具之前，您必須同意遵守下列條款及細則。
+</p>
+
+<div class="sdk-terms" onfocus="this.blur()">
+<h2 class="norule">條款及細則</h2>
+此為「Android 軟體開發套件授權協議」
+
+<h3>1. Introduction</h3>
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+
+<h3>2. Accepting this License Agreement</h3>
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
+
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
+
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+
+
+<h3>3. SDK License from Google</h3>
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
+
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
+
+3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
+
+
+<h3>4. Use of the SDK by You</h3>
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+
+<h3>5. Your Developer Credentials</h3>
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+
+<h3>6. Privacy and Information</h3>
+6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy.
+
+
+<h3>7. Third Party Applications</h3>
+7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
+
+
+<h3>8. Using Android APIs</h3>
+8.1 Google Data APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+
+<h3>9. Terminating this License Agreement</h3>
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
+(B) Google is required to do so by law; or
+(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
+(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
+
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+
+
+<h3>10. DISCLAIMER OF WARRANTIES</h3>
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+
+<h3>11. LIMITATION OF LIABILITY</h3>
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+
+<h3>12. Indemnification</h3>
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
+
+
+<h3>13. Changes to the License Agreement</h3>
+13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available.
+
+
+<h3>14. General Legal Terms</h3>
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+
+<em>November 20, 2015</em>
+</div>
+
+
+
+
+
+<div id="next-steps" style="display:none;position:absolute;width:inherit">
+  <p>只要再進行幾個步驟，即可建置適用於 Android 的應用程式！</p>
+  <p>系統即將把您重新導向至
+<a id="next-link" href="{@docRoot}sdk/installing/index.html">安裝 Android SDK</a> 網頁。</p>
+
+</div><!-- end next-steps -->
+
+
+
+<div id="sdk-terms-form">
+<p>
+<input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+<label id="agreeLabel" for="agree">我已閱讀並同意上述條款及細則</label>
+</p>
+<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+</div>
+
+
+</div><!-- end TOS -->
+
+
+
+
+
+
+<div id="landing">
+
+<div class="col-13">&nbsp;</div><!-- provides top margin for content -->
+
+<img src="{@docRoot}images/tools/studio-hero.png" srcset="{@docRoot}images/tools/studio-hero_2x.png 2x, {@docRoot}images/tools/studio-hero.png 1x" width="760" height="400"/>
+
+<div style="color: #fff; width:226px; height:0; overflow:visible; position:absolute; top:40px; left:25px">
+
+<h1 class="studio-logo" style="margin:0 0 35px !important">Android Studio</h1>
+
+<p style="font-size: 16px; color:#bbb; position: absolute;left: 297px; top: 5px; display: block;
+width: 400px;text-align: center;">官方 Android IDE</p>
+
+<ul style="font-size:12px;line-height:19px;">
+<li>Android Studio IDE</li>
+<li>Android SDK 工具</li>
+<li>Android 6.0 (Marshmallow) 平台</li>
+<li>含 Google API 的 Android 6.0 模擬器系統映像檔</li>
+</ul>
+
+<a class="online landing-button green download-bundle-button"
+href="#Other" >Download Android Studio<br/><span class='small'></span></a>
+
+<!-- this appears when viewing the offline docs -->
+<p class="offline">
+想要取得 Android Studio 或獨立 SDK 工具，請造訪 <a href="http://developer.android.com/sdk/index.html">developer.android.com/sdk/</a>
+</p>
+</div>
+
+<ul>
+  <li><a href="#Requirements">系統需求</a></li>
+  <li><a href="#Other">其他下載選項</a></li>
+  <li><a href="{@docRoot}sdk/installing/migrate.html">遷移至 Android Studio</a></li>
+  <li><a href="https://docs.google.com/a/google.com/forms/d/1mjsyfzv3HAnDY-_Kfj-3QJKdpuksyMFs9e73CRwmT6Q/viewform" target="_blank">參與問卷調查</a></li>
+</ul>
+
+
+
+
+<h2 class="feature norule" >智慧型程式碼編輯器</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-code.png" srcset="{@docRoot}images/tools/studio-hero-code_2x.png 2x, {@docRoot}images/tools/studio-hero-code.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android Studio 的核心是一個智慧型程式碼編輯器，能夠進行進階的程式碼自動完成、重構及程式碼分析作業。
+</p>
+  <p>這項功能強大的程式碼編輯器可協助您成為更具生產力的 Android 應用程式開發人員。</p>
+</div>
+
+
+
+
+
+<h2 class="feature norule">程式碼範本與 GitHub 整合</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-import.png" srcset="{@docRoot}images/tools/studio-hero-import_2x.png 2x, {@docRoot}images/tools/studio-hero-import.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>全新的專案精靈可協助您及早發起新專案。</p>
+
+  <p>您可以使用模式 (例如導覽匣和資料檢視巡覽區) 範本程式碼，甚至是從 GitHub 匯入 Google 程式碼來發起專案。
+</p>
+</div>
+
+
+
+
+<h2 class="feature norule">多螢幕應用程式開發</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-screens.png" srcset="{@docRoot}images/tools/studio-hero-screens_2x.png 2x, {@docRoot}images/tools/studio-hero-screens.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>建置適用於 Android 手機、平板電腦、Android Wear、Android TV、Android Auto 和 Google Glass 的應用程式。
+</p>
+  <p>透過 Android Studio 中新的「Android 專案檢視」和模組支援功能，管理應用程式專案和相關資源變得更加容易。
+
+</div>
+
+
+
+
+<h2 class="feature norule">適用於所有形狀和大小的虛擬裝置</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-avds.png" srcset="{@docRoot}images/tools/studio-hero-avds_2x.png 2x, {@docRoot}images/tools/studio-hero-avds.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>Android Studio 隨附預先設定、經過最佳化的模擬器映像檔。</p>
+  <p>經過更新及簡化的 Virtual Device Manager (虛擬裝置管理員) 可為常見的 Android 裝置提供預先定義的裝置設定檔。
+</p>
+</div>
+
+
+
+
+<h2 class="feature norule">
+Android 版本已隨 Gradle 更新</h2>
+
+<div class="col-9">
+  <img src="{@docRoot}images/tools/studio-hero-gradle.png" srcset="{@docRoot}images/tools/studio-hero-gradle_2x.png 2x, {@docRoot}images/tools/studio-hero-gradle.png 1x" width="520" />
+</div><!-- end col-9 (left column) -->
+
+<div class="col-4 feature-blurb">
+  <p>可使用同一項專案為您的 Android 應用程式建立多個具有不同功能的 APK。</p>
+  <p>可使用 Maven 管理應用程式依附功能。</p>
+  <p>可使用 Android Studio 或命令列建置 APK。</p>
+</div>
+
+
+
+
+<h2 class="feature norule">瞭解 Android Studio</h2>
+<div style="background:#424242;padding:30px; color:#fff;margin:0 0 15px;">
+
+<a class="online landing-button green download-bundle-button" style="margin:0 0 40px 60px;float:right" href="">Download</a>
+
+  <ul>
+  <li>以 IntelliJ IDEA Community Edition (JetBrains 所推出的常用 Java IDE) 為基礎。</li>
+  <li>具有彈性的 Gradle 型建置系統。</li>
+  <li>可產生建置變體和多個 APK。</li>
+  <li>可為 Google 各項服務和各種裝置類型提供額外的範本支援。</li>
+  <li>具有支援主題編輯功能的版面配置編輯器。</li>
+  <li>具有可取得效能、可用性、版本相容性資料及偵測其他問題的 Lint 工具。</li>
+  <li>具有 ProGuard 和應用程式簽署功能。</li>
+  <li>內建 Google Cloud Platform 支援，可讓您輕鬆整合 Google Cloud Messaging 與 App Engine。
+</li>
+  </ul>
+
+<p style="margin:0">
+如要進一步瞭解 Android Studio 提供的功能，請參閱《<a href="{@docRoot}tools/studio/index.html">Android Studio 基本概念</a>》指南。
+</p>
+</div>
+
+
+<p>如果您搭配 ADT 使用 Eclipse，請注意，Android Studio 現已成為 Android 的官方 IDE，因此請遷移至 Android Studio 以接收 IDE 的所有更新資訊。
+
+如果想瞭解如何遷移專案，請參閱<a href="{@docRoot}sdk/installing/migrate.html">遷移至 Android Studio</a>。
+
+</p>
+
+
+
+
+
+
+
+<h2 id="Requirements">系統需求</h2>
+
+<h3>Windows</h3>
+
+<ul>
+<li>Microsoft&reg; Windows&reg; 8/7/Vista/2003 (32 或 64 位元)</li>
+<li>2 GB 以上的 RAM (建議準備 4 GB 的 RAM)</li>
+<li>400 MB 的硬碟空間</li>
+<li>至少 1 GB (供 Android SDK、模擬器系統映像檔及快取使用)</li>
+<li>1280 x 800 以上的螢幕解析度</li>
+<li>Java Development Kit (JDK) 7 </li>
+<li>提升模擬器效能的選用配件：支援 Intel® VT-x、Intel® EM64T (Intel® 64) 及 Execute Disable (XD) Bit 功能的 Intel® 處理器
+</li>
+</ul>
+
+
+<h3>Mac OS X</h3>
+
+<ul>
+<li>Mac&reg; OS X&reg; 10.8.5 以上版本；最高可支援 10.9 (Mavericks)</li>
+<li>2 GB 以上的 RAM (建議準備 4 GB 的 RAM)</li>
+<li>400 MB 的硬碟空間</li>
+<li>至少 1 GB (供 Android SDK、模擬器系統映像檔及快取使用)</li>
+<li>1280 x 800 以上的螢幕解析度</li>
+<li>Java Runtime Environment (JRE) 6</li>
+<li>Java Development Kit (JDK) 7</li>
+<li>提升模擬器效能的選用配件：支援 Intel® VT-x、Intel® EM64T (Intel® 64) 及 Execute Disable (XD) Bit 功能的 Intel® 處理器
+</li>
+</ul>
+
+<p>如果您使用 Mac OS，可搭配 Java Runtime Environment (JRE) 6 執行 Android Studio 以獲得最佳字型顯示效果。
+此外，您還可以設定專案使用 Java Development Kit (JDK) 6 或 JDK 7。</p>
+
+
+
+<h3>Linux</h3>
+
+<ul>
+<li>GNOME 或 KDE 桌面</li>
+<li>GNU C 程式庫 (glibc) 2.15 以上版本</li>
+<li>2 GB 以上的 RAM (建議準備 4 GB 的 RAM)</li>
+<li>400 MB 的硬碟空間</li>
+<li>至少 1 GB (供 Android SDK、模擬器系統映像檔及快取使用)</li>
+<li>1280 x 800 以上的螢幕解析度</li>
+<li>Oracle&reg; Java Development Kit (JDK) 7 </li>
+</ul>
+<p>已在 Ubuntu&reg; 14.04 Trusty Tahr (能夠執行 32 位元應用程式的 64 位元發行版本) 上經過測試。
+</p>
+
+
+
+
+<h2 id="Other" style="clear:left">其他下載選項</h2>
+
+<!-- alternative SDK options follows -->
diff --git a/docs/html-intl/intl/zh-tw/sdk/installing/adding-packages.jd b/docs/html-intl/intl/zh-tw/sdk/installing/adding-packages.jd
new file mode 100644
index 0000000..563df51
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/sdk/installing/adding-packages.jd
@@ -0,0 +1,226 @@
+page.title=新增 SDK 封裝
+
+page.tags=sdk manager
+
+@jd:body
+
+<style>
+ol.large {
+  margin-left:0;
+}
+ol.large > li {
+  list-style-position: inside;
+  list-style-type:none;
+  margin:30px 0 0 0;
+  padding:30px 20px;
+  background:#eee;
+}
+ol.large > li:nth-child(odd) {
+}
+ol.large > li:before {
+  display:inline;
+  left:-40px;
+  float:left;
+  width:20px;
+  font-size:20px;
+  line-height:20px;
+}
+ol.large > li > h2 {
+  font-size:20px;
+  line-height:20px;
+  padding:0 0 0 20px;
+  margin:0 0 20px 0;
+  display:inline;
+  font-weight:normal;
+}
+ol.large > li:nth-child(1):before {
+  content:"1. ";
+}
+ol.large > li:nth-child(2):before {
+  content:"2. ";
+}
+ol.large > li:nth-child(3):before {
+  content:"3. ";
+}
+ol.large > li:nth-child(4):before {
+  content:"4. ";
+}
+ol.large > li:nth-child(5):before {
+  content:"5. ";
+}
+ol.large > li:nth-child(6):before {
+  content:"6. ";
+}
+</style>
+
+
+<p>
+Android SDK 預設不會包括開發所需的所有內容。SDK 將工具、平台及其他元件劃分為不同的封裝。您可以使用
+ <a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a> 視需要下載。因此，您要先將封裝加入 Android SDK 後，才可以開始進行。
+
+
+</p>
+
+<p>如要新增封裝，請透過下列其中一種方式啟動 Android SDK Manager：</p>
+<ul>
+  <li>在 Android Studio 中，按一下工具列的 [<strong>SDK Manager</strong>]
+<img src="{@docRoot}images/tools/sdk-manager-studio.png" style="vertical-align:bottom;margin:0;height:17px" />。</li>
+  <li>如果您不是使用 Android Studio：
+    <ul>
+      <li>Windows：按兩下位於 Android SDK 目錄之根目錄的 <code>SDK Manager.exe</code> 檔案。
+</li>
+      <li>Mac/Linux：開啟終端機並瀏覽到安裝 Android SDK 的 <code>tools/</code> 目錄，然後執行 <code>android sdk</code>。
+</li>
+    </ul>
+  </li>
+</ul>
+
+<p>第一次開啟 SDK Manager 時，預設會選取多個封裝。
+保留預設選取的封裝，但務必按照以下步驟確認您已經取得開發所需的所有內容：
+</p>
+
+
+<ol class="large">
+<li>
+  <h2 id="GetTools" class="norule">取得最新的 SDK 工具</h2>
+
+<img src="/images/sdk_manager_packages.png" alt="" width="350" style="float:right;margin-left:20px" />
+
+  <p>設定 Android SDK 時，您一定要下載最新的工具和平台：
+</p>
+  <ol>
+   <li>開啟 Tools 目錄並選取：
+     <ul>
+       <li><strong>Android SDK 工具</strong></li>
+       <li><strong>Android SDK 平台工具</strong></li>
+       <li><strong>Android SDK 建置工具</strong> (最新版本)</li>
+     </ul>
+   </li>
+   <li>開啟第一個 Android X.X 資料夾 (最新版本) 並選取：
+     <ul>
+      <li><strong>SDK 平台</strong></li>
+      <li>模擬器的系統映像，例如 <br>
+      <strong>ARM EABI v7a 系統映像</strong></li>
+     </ul>
+   </li>
+  </ol>
+</li>
+
+<li>
+  <h2 id="GetSupportLib" class="norule">取得額外 API 的支援程式庫</h2>
+
+  <div class="sidebox">
+    <p>以下各項需要支援程式庫：</p>
+    <ul>
+      <li><a href="{@docRoot}wear/index.html">Android Wear</a></li>
+      <li><a href="{@docRoot}tv/index.html">Android 電視</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+    </ul>
+
+    <p>支援程式庫也提供常用的 API：</p>
+    <ul>
+      <li><a href="{@docRoot}reference/android/support/v4/widget/DrawerLayout.html">導覽匣</a>
+</li>
+      <li><a href="{@docRoot}reference/android/support/v4/view/ViewPager.html">滑動檢視</a></li>
+      <li><a href="{@docRoot}reference/android/support/v7/app/ActionBar.html">向下相容的動作列</a>
+</li>
+    </ul>
+  </div>
+
+  <p><a href="{@docRoot}tools/support-library/features.html">Android 支援程式庫</a>提供的 API 延伸集合，可以與大部分的 Android 版本相容。
+</p>
+
+  <p>開啟 <strong>Extras</strong> 目錄並選取：</p>
+     <ul>
+       <li><strong>Android 支援存放庫</strong></li>
+       <li><strong>Android 支援程式庫</strong></li>
+     </ul>
+
+  <p>&nbsp;</p>
+  <p>&nbsp;</p>
+
+</li>
+
+
+<li>
+  <h2 id="GetGoogle" class="norule">從 Google Play 服務取得更多 API</h2>
+
+  <div class="sidebox">
+
+    <p>Google Play 服務 API 為 Android 應用程式提供多種功能與服務，例如：
+</p>
+    <ul>
+      <li><a href="{@docRoot}google/play-services/plus.html">使用者驗證</a></li>
+      <li><a href="{@docRoot}google/play-services/maps.html">Google 地圖</a></li>
+      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
+      <li><a href="{@docRoot}google/play-services/games.html">遊戲關卡和排行榜</a>
+</li>
+      <li><a href="{@docRoot}google/play-services/index.html">更多功能與服務</a></li>
+    </ul>
+  </div>
+
+  <p>如要使用 Google API 進行開發，您需要 Google Play 服務封裝：</p>
+  <p>開啟 <strong>Extras</strong> 目錄並選取：</p>
+     <ul>
+       <li><strong>Google 存放庫</strong></li>
+       <li><strong>Google Play 服務</strong></li>
+     </ul>
+
+  <p class="note"><strong>注意：</strong>並非所有 Android 裝置都提供 Google Play 服務，但內含 Google Play 市集的所有裝置都可以使用 Google Play 服務。
+如要在 Android 模擬器中使用這些 API，您必須從 SDK Manager 最新的 Android X.X 目錄中安裝 <strong>Google API</strong> 系統映像。
+
+</p>
+</li>
+
+
+<li>
+  <h2 id="Install" class="norule">安裝封裝</h2>
+  <p>您選好需要的所有封裝後，就可以繼續安裝：</p>
+  <ol>
+   <li>按一下 [<strong>安裝 X 封裝</strong>]。</li>
+   <li>在下一個視窗中，按兩下左側的每個封裝名稱，以接受每項的授權合約。
+</li>
+   <li>按一下 [<strong>安裝</strong>]。</li>
+  </ol>
+  <p>SDK Manager 視窗的下方會顯示下載進度。
+  <strong>請勿結束 SDK Manager</strong>，下載會因而取消。</p>
+</li>
+
+<li>
+  <h2 id="Build" class="norule">開始建置！</h2>
+
+<p>Android SDK 現在已內含上述封裝，您可以開始建置 Android 應用程式了。
+若有新的工具和其他 API，只要啟動 SDK Manager 即可將新的封裝下載到 SDK。
+</p>
+
+<p>以下是繼續進行的選項：</p>
+
+<div class="cols" style="padding:10px 0">
+<div class="col-4">
+<h3>開始使用</h3>
+<p>如果您是 Android 開發新手，可參考<strong><a href="{@docRoot}training/basics/firstapp/index.html">建置第一個應用程式</a></strong>指南瞭解 Android 應用程式的基本概念。
+</p>
+
+</div>
+<div class="col-4 box">
+<h3>建置穿戴式應用程式</h3>
+<p>如果您準備好開始建置 Android 穿戴式裝置的應用程式，請參閱<strong><a href="{@docRoot}wear/preview/start.html">建置 Android Wear 的應用程式</a></strong>指南。
+</p>
+
+</div>
+<div class="col-4 box">
+<h3>使用 Google API</h3>
+<p>如要開始使用 Google API (例如「地圖」或 Play Game 服務)，請參閱<strong><a href="{@docRoot}google/play-services/setup.html">設定 Google Play 服務</a></strong>指南。
+
+
+</p>
+
+</div>
+</div><!-- end cols -->
+
+
+</li>
+
+</ol>
+
+
diff --git a/docs/html-intl/intl/zh-tw/training/material/animations.jd b/docs/html-intl/intl/zh-tw/training/material/animations.jd
new file mode 100644
index 0000000..ba28575
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/training/material/animations.jd
@@ -0,0 +1,550 @@
+page.title=定義自訂動畫
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本課程示範</h2>
+<ol>
+  <li><a href="#Touch">自訂輕觸回饋</a></li>
+  <li><a href="#Reveal">使用顯示效果</a></li>
+  <li><a href="#Transitions">自訂操作行為轉換</a></li>
+  <li><a href="#ViewState">動畫顯示視圖狀態變更</a></li>
+  <li><a href="#AnimVector">動畫顯示矢量可繪</a></li>
+</ol>
+<h2>您也應該閱讀</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料設計規格</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 上的材料設計</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>材料設計中的動畫讓使用者在進行操作動作之後獲得回饋，並且在使用者與您的應用程式互動時提供視覺上的連續性。
+材料設計風格針對按鈕和操作行為轉換，提供某些預設的動畫，而 Android 5.0 (API 級別 21) 以上版本則可讓您自訂這些動畫並建立新的動畫：
+
+</p>
+
+<ul>
+<li>輕觸回饋</li>
+<li>循環顯示</li>
+<li>操作行為轉換</li>
+<li>曲線動作</li>
+<li>視圖狀態變更</li>
+</ul>
+
+
+<h2 id="Touch">自訂輕觸回饋</h2>
+
+<p>當使用者與 UI 元素互動時，材料設計中的輕觸回饋在接觸點提供即時的視覺化確認。
+按鈕的預設輕觸回饋動畫使用新的 {@link android.graphics.drawable.RippleDrawable} 類別，透過漣漪效果在不同狀態之間進行轉換。
+
+</p>
+
+<p>大多數情況下，您應該在視圖 XML 中將視圖背景指定為下列項目以套用此功能：
+</p>
+
+<ul>
+<li>對有邊界的漣漪指定為 <code>?android:attr/selectableItemBackground</code>。</li>
+<li>對延伸出視圖的漣漪指定為 <code>?android:attr/selectableItemBackgroundBorderless</code>。
+這會繪製在具有非空背景的視圖之最接近父項上，並以其作為邊界。
+</li>
+</ul>
+
+<p class="note"><strong>注意：</strong><code>selectableItemBackgroundBorderless</code> 是 API 級別 21 推出的新屬性。
+</p>
+
+
+<p>或者，您也可以使用 <code>ripple</code> 元素將 {@link android.graphics.drawable.RippleDrawable} 定義為 XML 資源。
+</p>
+
+<p>您可以對 {@link android.graphics.drawable.RippleDrawable} 物件指定色彩。如要變更預設的輕觸回饋色彩，請使用設計風格的 <code>android:colorControlHighlight</code> 屬性。
+
+</p>
+
+<p>如需詳細資訊，請參閱 {@link
+android.graphics.drawable.RippleDrawable} 類別的 API 參考資料。</p>
+
+
+<h2 id="Reveal">使用顯示效果</h2>
+
+<p>當您顯示或隱藏一組 UI 元素時，顯示動畫可提供使用者視覺上的連續性。
+{@link android.view.ViewAnimationUtils#createCircularReveal
+ViewAnimationUtils.createCircularReveal()}方法可讓您以動畫顯示裁剪的圓形，以顯示或隱藏視圖。
+</p>
+
+<p>使用下列效果顯示之前看不見的視圖：</p>
+
+<pre>
+// previously invisible view
+View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the final radius for the clipping circle
+int finalRadius = Math.max(myView.getWidth(), myView.getHeight());
+
+// create the animator for this view (the start radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius);
+
+// make the view visible and start the animation
+myView.setVisibility(View.VISIBLE);
+anim.start();
+</pre>
+
+<p>使用下列效果隱藏之前看見的視圖：</p>
+
+<pre>
+// previously visible view
+final View myView = findViewById(R.id.my_view);
+
+// get the center for the clipping circle
+int cx = (myView.getLeft() + myView.getRight()) / 2;
+int cy = (myView.getTop() + myView.getBottom()) / 2;
+
+// get the initial radius for the clipping circle
+int initialRadius = myView.getWidth();
+
+// create the animation (the final radius is zero)
+Animator anim =
+    ViewAnimationUtils.createCircularReveal(myView, cx, cy, initialRadius, 0);
+
+// make the view invisible when the animation is done
+anim.addListener(new AnimatorListenerAdapter() {
+    &#64;Override
+    public void onAnimationEnd(Animator animation) {
+        super.onAnimationEnd(animation);
+        myView.setVisibility(View.INVISIBLE);
+    }
+});
+
+// start the animation
+anim.start();
+</pre>
+
+
+<h2 id="Transitions">自訂操作行為轉換</h2>
+
+<!-- shared transition video -->
+<div style="width:290px;margin-left:35px;float:right">
+  <div class="framed-nexus5-port-span-5">
+  <video class="play-on-hover" autoplay="">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.mp4">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.webm">
+    <source src="{@docRoot}design/material/videos/ContactsAnim.ogv">
+  </video>
+  </div>
+  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
+    <p class="img-caption" style="margin-top:3px;margin-bottom:10px"><strong>圖 1</strong> - 使用分享元素的轉換。
+</p>
+    如要重播影片，請按一下裝置螢幕<em></em>
+  </div>
+</div>
+
+<p>材料設計應用程式中的操作行為轉換透過常見元素之間的動作和轉換，在不同的狀態之間提供視覺上的連接效果。
+您可針對進入和離開轉換及不同操作行為之間分享元素的轉換指定自訂動畫。
+</p>
+
+<ul>
+<li><strong>進入</strong>轉換決定操作行為中的視圖如何進入場景。例如，在爆炸<em></em>進入轉換中，視圖會從外面進入場景，接著飛入螢幕的中央。
+
+</li>
+
+<li><strong>離開</strong>轉換決定操作行為中的視圖如何離開場景。例如，在爆炸<em></em>離開轉換中，視圖會從中央離開場景。
+
+</li>
+
+<li><strong>分享元素</strong>轉換決定在兩個操作行為轉換之間分享的視圖如何在這些操作行為之間轉換。
+例如，若兩個操作行為在不同的位置和大小具有相同的影像，changeImageTransform<em></em> 分享元素轉換會在這些操作行為之間流暢地解譯影像以及調整影像的大小。
+
+</li>
+</ul>
+
+<p>Android 5.0 (API 級別 21) 支援下列進入和離開轉換：</p>
+
+<ul>
+<li>爆炸<em></em> - 視圖從場景的中央移入和移出。</li>
+<li>滑動<em></em> - 視圖從場景的其中一邊移入和移出。</li>
+<li>淡化<em></em> - 改變視圖的透明度，以將視圖加入場景，或從場景中移除。</li>
+</ul>
+
+<p>所有延伸 {@link android.transition.Visibility} 類別的轉換都可作為進入或離開轉換。
+如需詳細資訊，請參閱 {@link android.transition.Transition} 類別的 API 參考資料。
+</p>
+
+<p>Android 5.0 (API 級別 21) 也支援下列分享元素轉換：</p>
+
+<ul>
+<li>changeBounds<em></em> - 動畫顯示目標視圖版面配置邊界的變更。</li>
+<li>changeClipBounds<em></em> - 動畫顯示目標視圖裁剪邊界的變更。</li>
+<li>changeTransform<em></em> - 動畫顯示目標視圖比例和旋轉方向的變更。</li>
+<li><em>changeImageTransform</em> - 動畫顯示目標影像大小和比例的變更。</li>
+</ul>
+
+<p>當您在應用程式中啟用操作行為轉換時，進入和離開操作行為之間會啟動預設交錯淡化轉換。
+</p>
+
+<img src="{@docRoot}training/material/images/SceneTransition.png" alt="" width="600" height="405" style="margin-top:20px" />
+<p class="img-caption">
+  <strong>圖 2</strong> - 使用一個分享元素的場景轉換。
+</p>
+
+<h3>指定自訂轉換</h3>
+
+<p>首先，當您定義一個從材料設計風格繼承而來的樣式時，請使用 <code>android:windowContentTransitions</code> 屬性啟用視窗內容轉換。
+您也可在樣式定義中指定進入、離開和分享元素轉換：
+</p>
+
+<pre>
+&lt;style name="BaseAppTheme" parent="android:Theme.Material">
+  &lt;!-- enable window content transitions -->
+  &lt;item name="android:windowContentTransitions">true&lt;/item>
+
+  &lt;!-- specify enter and exit transitions -->
+  &lt;item name="android:windowEnterTransition">@transition/explode&lt;/item>
+  &lt;item name="android:windowExitTransition">@transition/explode&lt;/item>
+
+  &lt;!-- specify shared element transitions -->
+  &lt;item name="android:windowSharedElementEnterTransition">
+    &#64;transition/change_image_transform&lt;/item>
+  &lt;item name="android:windowSharedElementExitTransition">
+    &#64;transition/change_image_transform&lt;/item>
+&lt;/style>
+</pre>
+
+<p>此範例中的 <code>change_image_transform</code> 轉換定義如下：</p>
+
+<pre>
+&lt;!-- res/transition/change_image_transform.xml -->
+&lt;!-- (see also Shared Transitions below) -->
+&lt;transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;changeImageTransform/>
+&lt;/transitionSet>
+</pre>
+
+<p><code>changeImageTransform</code> 元素對應至 {@link android.transition.ChangeImageTransform} 類別。
+如需詳細資訊，請參閱 {@link android.transition.Transition} 的 API 參考資料。
+</p>
+
+<p>如要在程式碼中改為啟用視窗內容轉換，請呼叫 {@link android.view.Window#requestFeature Window.requestFeature()}方法：
+</p>
+
+<pre>
+// inside your activity (if you did not enable transitions in your theme)
+getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+
+// set an exit transition
+getWindow().setExitTransition(new Explode());
+</pre>
+
+<p>如要在程式碼中指定轉換，請以 {@link
+android.transition.Transition} 物件呼叫下列方法：</p>
+
+<ul>
+  <li>{@link android.view.Window#setEnterTransition Window.setEnterTransition()}</li>
+  <li>{@link android.view.Window#setExitTransition Window.setExitTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementEnterTransition
+      Window.setSharedElementEnterTransition()}</li>
+  <li>{@link android.view.Window#setSharedElementExitTransition
+      Window.setSharedElementExitTransition()}</li>
+</ul>
+
+<p>{@link android.view.Window#setExitTransition setExitTransition()} 和 {@link
+android.view.Window#setSharedElementExitTransition setSharedElementExitTransition()} 方法定義了呼叫操作行為的離開轉換。
+{@link android.view.Window#setEnterTransition
+setEnterTransition()} 和 {@link android.view.Window#setSharedElementEnterTransition
+setSharedElementEnterTransition()} 方法定義被呼叫操作行為的進入轉換。</p>
+
+<p>如要取得轉換的完整效果，您必須同時對呼叫與被呼叫操作行為啟用視窗內容轉換。
+否則，呼叫操作行為會啟動離開轉換，然後您只會看到視窗轉換 (類似調整大小或淡化)。
+</p>
+
+<p>如要立即啟動進入轉換，請對被呼叫的操作行為使用 {@link android.view.Window#setAllowEnterTransitionOverlap Window.setAllowEnterTransitionOverlap()} 方法。
+
+這樣您就會有更戲劇性的進入轉換。</p>
+
+<h3>使用轉換啟動操作行為</h3>
+
+<p>若您啟用轉換並對操作行為設定離開轉換，當您啟動另一個操作行為時，就會啟動轉換，如下所示：
+</p>
+
+<pre>
+startActivity(intent,
+              ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
+</pre>
+
+<p>若您已針對第二個操作行為設定進入轉換，當操作行為啟動時，也會啟動轉換。
+若要在啟動另一個操作行為時停用轉換，請提供 <code>null</code> 選項組合。
+</p>
+
+<h3>使用一個分享元素啟動操作行為</h3>
+
+<p>在兩個擁有分享元素的操作行為之間製作螢幕轉換動畫：</p>
+
+<ol>
+<li>在設計風格中啟用視窗內容轉換。</li>
+<li>在樣式中指定分享元素轉換。</li>
+<li>將您的轉換定義為 XML 資源。</li>
+<li>使用 <code>android:transitionName</code> 屬性，對兩個版面配置中的分享元素指定通用名稱。
+</li>
+<li>使用 {@link android.app.ActivityOptions#makeSceneTransitionAnimation
+ActivityOptions.makeSceneTransitionAnimation()} 方法。</li>
+</ol>
+
+<pre>
+// get the element that receives the click event
+final View imgContainerView = findViewById(R.id.img_container);
+
+// get the common element for the transition in this activity
+final View androidRobotView = findViewById(R.id.image_small);
+
+// define a click listener
+imgContainerView.setOnClickListener(new View.OnClickListener() {
+    &#64;Override
+    public void onClick(View view) {
+        Intent intent = new Intent(this, Activity2.class);
+        // create the transition animation - the images in the layouts
+        // of both activities are defined with android:transitionName="robot"
+        ActivityOptions options = ActivityOptions
+            .makeSceneTransitionAnimation(this, androidRobotView, "robot");
+        // start the new activity
+        startActivity(intent, options.toBundle());
+    }
+});
+</pre>
+
+<p>對於您在程式碼中所產生的分享動態視圖，請使用 {@link android.view.View#setTransitionName View.setTransitionName()} 方法，在兩個操作行為中指定通用元素名稱。
+
+</p>
+
+<p>如要在完成第二個操作行為時倒轉場景轉換動畫，請呼叫 {@link android.app.Activity#finishAfterTransition Activity.finishAfterTransition()} 方法而不是 {@link android.app.Activity#finish Activity.finish()}。
+
+</p>
+
+<h3>使用多個分享元素啟動操作行為</h3>
+
+<p>如要在兩個具有多個分享元素的操作行為之間製作場景轉換動畫，請使用 <code>android:transitionName</code> 屬性在兩個版面配置中定義分享元素 (或在兩個操作行為中使用 {@link android.view.View#setTransitionName View.setTransitionName()} 方法)，然後建立 {@link android.app.ActivityOptions} 物件，如下所示：
+
+
+</p>
+
+<pre>
+ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(this,
+        Pair.create(view1, "agreedName1"),
+        Pair.create(view2, "agreedName2"));
+</pre>
+
+
+<h2 id="CurvedMotion">使用曲線動作</h2>
+
+<p>材料設計中的動畫依據使用時間插值法和空間移動模式的曲線而定。
+在 Android 5.0 (API 級別 21) 及以上版本中，您可為動畫定義自訂時間曲線和曲線動作模式。
+</p>
+
+<p>{@link android.view.animation.PathInterpolator} 類別是根據貝茲曲線 (Bézier curve) 或 {@link android.graphics.Path} 物件的一種新插值器。
+這個插值器在一個 1x1 的方格中指定動作曲線，在 (0,0) 和 (1,1) 有兩個錨定點，以及使用建構函式引數指定的控制點。
+
+您也可以將路徑插值器定義為 XML 資源：</p>
+
+<pre>
+&lt;pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
+    android:controlX1="0.4"
+    android:controlY1="0"
+    android:controlX2="1"
+    android:controlY2="1"/>
+</pre>
+
+<p>系統在材料設計規格中提供三種基本曲線的 XML 資源：
+</p>
+
+<ul>
+  <li><code>&#64;interpolator/fast_out_linear_in.xml</code></li>
+  <li><code>&#64;interpolator/fast_out_slow_in.xml</code></li>
+  <li><code>&#64;interpolator/linear_out_slow_in.xml</code></li>
+</ul>
+
+<p>您可將 {@link android.view.animation.PathInterpolator} 物件傳送至 {@link
+android.animation.Animator#setInterpolator Animator.setInterpolator()} 方法。</p>
+
+<p>{@link android.animation.ObjectAnimator} 類別有新的建構函式，可讓您一次使用兩個以上的屬性沿著路徑以動畫顯示座標。
+例如，下列動畫器使用 {@link android.graphics.Path} 物件，以動畫顯示視圖的 X 和 Y 屬性：
+</p>
+
+<pre>
+ObjectAnimator mAnimator;
+mAnimator = ObjectAnimator.ofFloat(view, View.X, View.Y, path);
+...
+mAnimator.start();
+</pre>
+
+
+<h2 id="ViewState">動畫顯示視圖狀態變更</h2>
+
+<p>{@link android.animation.StateListAnimator} 類別可讓您定義視圖狀態變更時所執行的動畫器。
+下列範例示範如何將 {@link
+android.animation.StateListAnimator} 定義為 XML 資源：</p>
+
+<pre>
+&lt;!-- animate the translationZ property of a view when pressed -->
+&lt;selector xmlns:android="http://schemas.android.com/apk/res/android">
+  &lt;item android:state_pressed="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="@android:integer/config_shortAnimTime"
+        android:valueTo="2dp"
+        android:valueType="floatType"/>
+        &lt;!-- you could have other objectAnimator elements
+             here for "x" and "y", or other properties -->
+    &lt;/set>
+  &lt;/item>
+  &lt;item android:state_enabled="true"
+    android:state_pressed="false"
+    android:state_focused="true">
+    &lt;set>
+      &lt;objectAnimator android:propertyName="translationZ"
+        android:duration="100"
+        android:valueTo="0"
+        android:valueType="floatType"/>
+    &lt;/set>
+  &lt;/item>
+&lt;/selector>
+</pre>
+
+<p>如要將自訂的視圖狀態動畫連接到視圖，請依照此範例在 XML 資源檔案中使用 <code>selector</code> 元素定義動畫器，並使用 <code>android:stateListAnimator</code> 屬性將其指派到您的視圖。
+
+如要在程式碼中為視圖指派狀態清單動畫器，請使用 {@link android.animation.AnimatorInflater#loadStateListAnimator
+AnimationInflater.loadStateListAnimator()} 方法，然後使用 {@link android.view.View#setStateListAnimator View.setStateListAnimator()} 方法將動畫器指派到您的視圖。
+
+</p>
+
+<p>當您的設計風格延伸材料設計風格時，按鈕預設會有 Z 動畫。如果要避免在按鈕中出現這類行為，請將 <code>android:stateListAnimator</code> 屬性設定為 <code>@null</code>。
+
+</p>
+
+<p>{@link android.graphics.drawable.AnimatedStateListDrawable} 類別可讓您在相關視圖的狀態變更之間，建立顯示動畫的可繪項目。
+Android 5.0 中的某些系統小工具預設會使用這些動畫。
+下列範例示範如何將 {@link android.graphics.drawable.AnimatedStateListDrawable} 定義為 XML 資源：
+</p>
+
+<pre>
+&lt;!-- res/drawable/myanimstatedrawable.xml -->
+&lt;animated-selector
+    xmlns:android="http://schemas.android.com/apk/res/android">
+
+    &lt;!-- provide a different drawable for each state-->
+    &lt;item android:id="@+id/pressed" android:drawable="@drawable/drawableP"
+        android:state_pressed="true"/>
+    &lt;item android:id="@+id/focused" android:drawable="@drawable/drawableF"
+        android:state_focused="true"/>
+    &lt;item android:id="@id/default"
+        android:drawable="@drawable/drawableD"/>
+
+    &lt;!-- specify a transition -->
+    &lt;transition android:fromId="@+id/default" android:toId="@+id/pressed">
+        &lt;animation-list>
+            &lt;item android:duration="15" android:drawable="@drawable/dt1"/>
+            &lt;item android:duration="15" android:drawable="@drawable/dt2"/>
+            ...
+        &lt;/animation-list>
+    &lt;/transition>
+    ...
+&lt;/animated-selector>
+</pre>
+
+
+<h2 id="AnimVector">動畫顯示矢量可繪</h2>
+
+<p><a href="{@docRoot}training/material/drawables.html#VectorDrawables">矢量可繪</a>可以調整大小，但又不會喪失定義。
+{@link android.graphics.drawable.AnimatedVectorDrawable} 類別可讓您以動畫顯示矢量可繪的屬性。
+</p>
+
+<p>您通常會在下列三個 XML 檔案中定義能可動矢量可繪：</p>
+
+<ul>
+<li>在 <code>res/drawable/</code> 中包含 <code>&lt;vector&gt;</code> 元素的矢量可繪
+</li>
+<li>在 <code>res/drawable/</code> 中包含 <code>&lt;animated-vector&gt;</code> 元素的可動矢量可繪
+</li>
+<li>在 <code>res/anim/</code> 中包含 <code>&lt;objectAnimator&gt;</code> 元素的一或多個物件動畫器
+</li>
+</ul>
+
+<p>可動的矢量可繪能以動畫顯示 <code>&lt;group&gt;</code> 和 <code>&lt;path&gt;</code> 元素的屬性。
+<code>&lt;group&gt;</code> 元素定義一組路徑或子群組，而 <code>&lt;path&gt;</code> 元素則定義要繪製的路徑。
+</p>
+
+<p>當您定義要可動的矢量可繪時，請使用 <code>android:name</code> 屬性為群組和路徑指派唯一的名稱，以便從您的動畫器定義參考這些群組和路徑。
+
+例如：</p>
+
+<pre>
+&lt;!-- res/drawable/vectordrawable.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="64dp"
+    android:width="64dp"
+    android:viewportHeight="600"
+    android:viewportWidth="600">
+    &lt;group
+        <strong>android:name="rotationGroup"</strong>
+        android:pivotX="300.0"
+        android:pivotY="300.0"
+        android:rotation="45.0" >
+        &lt;path
+            <strong>android:name="v"</strong>
+            android:fillColor="#000000"
+            android:pathData="M300,70 l 0,-70 70,70 0,0 -70,70z" />
+    &lt;/group>
+&lt;/vector>
+</pre>
+
+<p>可動的矢量可繪定義是依照名稱來參考矢量可繪中的群組和路徑：
+</p>
+
+<pre>
+&lt;!-- res/drawable/animvectordrawable.xml -->
+&lt;animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+  android:drawable="@drawable/vectordrawable" >
+    &lt;target
+        android:name="rotationGroup"
+        android:animation="@anim/rotation" />
+    &lt;target
+        android:name="v"
+        android:animation="@anim/path_morph" />
+&lt;/animated-vector>
+</pre>
+
+<p>動畫定義代表 {@link android.animation.ObjectAnimator} 或 {@link
+android.animation.AnimatorSet} 物件。此範例中的第一個動畫器會 360 度旋轉目標群組：
+</p>
+
+<pre>
+&lt;!-- res/anim/rotation.xml -->
+&lt;objectAnimator
+    android:duration="6000"
+    android:propertyName="rotation"
+    android:valueFrom="0"
+    android:valueTo="360" />
+</pre>
+
+<p>此範例中的第二個動畫器會將矢量可繪的路徑從一種形狀變成另外一種形狀。
+兩個路徑必須相容才能變形：意即兩個路徑必須有相同數量的命令，而每個命令必須有相同數量的參數。
+</p>
+
+<pre>
+&lt;!-- res/anim/path_morph.xml -->
+&lt;set xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;objectAnimator
+        android:duration="3000"
+        android:propertyName="pathData"
+        android:valueFrom="M300,70 l 0,-70 70,70 0,0   -70,70z"
+        android:valueTo="M300,70 l 0,-70 70,0  0,140 -70,0 z"
+        android:valueType="pathType" />
+&lt;/set>
+</pre>
+
+<p>如需詳細資訊，請參閱 {@link
+android.graphics.drawable.AnimatedVectorDrawable} 的 API 參考資料。</p>
diff --git a/docs/html-intl/intl/zh-tw/training/material/compatibility.jd b/docs/html-intl/intl/zh-tw/training/material/compatibility.jd
new file mode 100644
index 0000000..767788b
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/training/material/compatibility.jd
@@ -0,0 +1,168 @@
+page.title=維持相容性
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本課程示範</h2>
+<ol>
+  <li><a href="#Theme">定義替代樣式</a></li>
+  <li><a href="#Layouts">提供替代版面配置</a></li>
+  <li><a href="#SupportLib">使用支援程式庫</a></li>
+  <li><a href="#CheckVersion">檢查系統版本</a></li>
+</ol>
+<h2>您也應該閱讀</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料設計規格</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 上的材料設計</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>某些材料設計功能如材料設計風格和自訂操作行為轉換等，只能在 Android 5.0 (API 級別 21) 及以上版本中使用。
+然而，您還是可以將應用程式設計為在支援材料設計的裝置上執行時才使用這些功能，並仍然與執行舊版 Android 的裝置相容。
+
+</p>
+
+
+<h2 id="Theme">定義替代樣式</h2>
+
+<p>您可以設定應用程式在支援材料設計風格的裝置上執行時才予以使用，在執行舊版 Android 的裝置上執行時則轉換成舊版的設計風格：
+</p>
+
+<ol>
+<li>在 <code>res/values/styles.xml</code> 中定義繼承自舊版設計風格 (例如 Holo) 的設計風格。
+</li>
+<li>在 <code>res/values-v21/styles.xml</code> 中定義與材料設計風格相同名稱的設計風格。
+</li>
+<li>在宣示說明檔案中將此設計風格設定為應用程式的設計風格。</li>
+</ol>
+
+<p class="note"><strong>注意</strong>：若您的應用程式使用材料設計風格，但卻未以此方式提供替代設計風格，您的應用程式將無法在 Android 5.0 之前的版本上執行。
+
+
+</p>
+
+
+<h2 id="Layouts">提供替代版面配置</h2>
+
+<p>若您根據材料設計指南所設計的版面配置並未使用任何 Android 5.0 (API 級別 21) 中推出的全新 XML 屬性，則這些版面配置就可以在舊版 Android 上運作。
+
+或者，您也可以提供替代的版面配置。您也可提供替代的版面配置以自訂應用程式在舊版 Android 上如何顯示。
+</p>
+
+<p>在 <code>res/layout-v21/</code> 內建立 Android 5.0 (API 級別 21) 的版面配置檔案，並在 <code>res/layout/</code> 內建立舊版 Android 的替代版面配置檔案。例如，<code>res/layout/my_activity.xml</code> 是 <code>res/layout-v21/my_activity.xml</code> 的替代版面配置。
+
+
+</p>
+
+<p>為了避免程式碼重複，請在 <code>res/values/</code> 內定義您的樣式，在 <code>res/values-v21/</code> 中針對新的 API 修改樣式，再使用樣式繼承，在 <code>res/values/</code> 中定義基礎樣式，然後從 <code>res/values-v21/</code> 中的樣式繼承。
+
+</p>
+
+
+<h2 id="SupportLib">使用支援程式庫</h2>
+
+<p><a href="{@docRoot}tools/support-library/features.html#v7">v7 支援程式庫</a> r21 以及更新版本包含下列材料設計功能：
+</p>
+
+<ul>
+<li>當您套用其中一個 <code>Theme.AppCompat</code> 設計風格時，某些系統小工具的<a href="{@docRoot}training/material/theme.html">材料設計樣式</a>。
+</li>
+<li>在 <code>Theme.AppCompat</code> 設計風格中的<a href="{@docRoot}training/material/theme.html#ColorPalette">色板設計風格屬性</a>。
+</li>
+<li><a href="{@docRoot}training/material/lists-cards.html#RecyclerView">顯示資料集合</a>的 {@link android.support.v7.widget.RecyclerView} 小工具。
+</li>
+<li><a href="{@docRoot}training/material/lists-cards.html#CardView">建立卡片</a>的 {@link android.support.v7.widget.CardView} 小工具。</li>
+<li><a href="{@docRoot}training/material/drawables.html#ColorExtract">從影像提取顯著顏色</a>的 {@link android.support.v7.graphics.Palette} 類別。
+</li>
+</ul>
+
+<h3>系統小工具</h3>
+
+<p><code>Theme.AppCompat</code> 設計風格提供下列小工具的材料設計樣式：</p>
+
+<ul>
+  <li>{@link android.widget.EditText}</li>
+  <li>{@link android.widget.Spinner}</li>
+  <li>{@link android.widget.CheckBox}</li>
+  <li>{@link android.widget.RadioButton}</li>
+  <li>{@link android.support.v7.widget.SwitchCompat}</li>
+  <li>{@link android.widget.CheckedTextView}</li>
+</ul>
+
+<h3>色板</h3>
+
+<p>如果要取得材料設計樣式並使用 Android v7 支援程式庫自訂色板，請套用其中一個 <code>Theme.AppCompat</code> 設計風格：
+</p>
+
+<pre>
+&lt;!-- extend one of the Theme.AppCompat themes -->
+&lt;style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
+    &lt;!-- customize the color palette -->
+    &lt;item name="colorPrimary">@color/material_blue_500&lt;/item>
+    &lt;item name="colorPrimaryDark">@color/material_blue_700&lt;/item>
+    &lt;item name="colorAccent">@color/material_green_A200&lt;/item>
+&lt;/style>
+</pre>
+
+<h3>清單和卡片</h3>
+
+<p>在舊版 Android 中，透過 Android v7 支援程式庫可以使用 {@link android.support.v7.widget.RecyclerView} 和 {@link
+android.support.v7.widget.CardView} 小工具，但有下列限制：
+</p>
+<ul>
+<li>{@link android.support.v7.widget.CardView} 只能使用額外的填補方式，有計畫地實作陰影。
+</li>
+<li>{@link android.support.v7.widget.CardView} 不會裁剪與圓形邊角重疊的下方視圖。
+</li>
+</ul>
+
+
+<h3>相依性</h3>
+
+<p>如果要在 Android 5.0 (API 級別 21) 以前的版本中使用這些功能，請在您的專案中包含 Android v7 支援程式庫做為 <a href="{@docRoot}/sdk/installing/studio-build.html#dependencies">Gradle 相依性</a>：
+</p>
+
+<pre>
+dependencies {
+    compile 'com.android.support:appcompat-v7:21.0.+'
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
+
+
+<h2 id="CheckVersion">檢查系統版本</h2>
+
+<p>下列功能只能在 Android 5.0 (API 級別 21) 以及更新版本中使用：</p>
+
+<ul>
+<li>操作行為轉換</li>
+<li>輕觸回饋</li>
+<li>顯示動畫</li>
+<li>路徑型動畫</li>
+<li>矢量可繪</li>
+<li>繪製著色</li>
+</ul>
+
+<p>如要維持與舊版 Android 的相容性，在呼叫這些功能的 API 之前，請先在執行期間檢查系統 {@link
+android.os.Build.VERSION#SDK_INT version}：
+</p>
+
+<pre>
+// Check if we're running on Android 5.0 or higher
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+    // Call some material design APIs here
+} else {
+    // Implement this feature without material design
+}
+</pre>
+
+<p class="note"><strong>注意：</strong>如果要指定應用程式支援的 Android 版本，請在您的宣示說明檔案中使用 <code>android:minSdkVersion</code> 和 <code>android:targetSdkVersion</code> 屬性。
+
+如果要在 Android 5.0 中使用材料設計功能，請將 <code>android:targetSdkVersion</code> 屬性設定為 <code>21</code>。
+如需詳細資訊，請參閱 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt; API 指南</a>。
+
+</p>
diff --git a/docs/html-intl/intl/zh-tw/training/material/drawables.jd b/docs/html-intl/intl/zh-tw/training/material/drawables.jd
new file mode 100644
index 0000000..ae807c0
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/training/material/drawables.jd
@@ -0,0 +1,126 @@
+page.title=使用可繪項目
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本課程示範</h2>
+<ol>
+  <li><a href="#DrawableTint">為可繪項目資源著色</a></li>
+  <li><a href="#ColorExtract">從影像提取顯著顏色</a></li>
+  <li><a href="#VectorDrawables">建立矢量可繪</a></li>
+</ol>
+<h2>您也應該閱讀</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料設計規格</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 上的材料設計</a></li>
+</ul>
+</div>
+</div>
+
+<p>下列可繪項目功能可以幫助您在應用程式中運用材料設計：</p>
+
+<ul>
+<li>繪製著色</li>
+<li>顯著顏色提取</li>
+<li>矢量可繪</li>
+</ul>
+
+<p>本課程示範如何在應用程式中使用這些功能。</p>
+
+
+<h2 id="DrawableTint">為可繪項目資源著色</h2>
+
+<p>若您使用 Android 5.0 (API 級別 21) 或以上版本，您可對點陣圖和定義為 Alpha 遮罩的九宮格影像著色。
+您可使用顏色資源或解析為顏色資源的設計風格屬性 (如 <code>?android:attr/colorPrimary</code> 為圖片著色。
+這些資產您通常只會建立一次，然後自動著色以符合您的設計風格。
+</p>
+
+<p>您可使用 {@code setTint()} 方法對 {@link android.graphics.drawable.BitmapDrawable} 或 {@link
+android.graphics.drawable.NinePatchDrawable} 物件套用著色。您也可以使用 <code>android:tint</code> 和 <code>android:tintMode</code> 屬性，設定版面配置中的著色顏色和模式。
+
+</p>
+
+
+<h2 id="ColorExtract">從影像提取顯著顏色</h2>
+
+<p>Android 支援程式庫 r21 和更新版本包含 {@link
+android.support.v7.graphics.Palette} 類別，可讓您從影像提取出顯著的顏色。此類別會提取下列顯著顏色：
+</p>
+
+<ul>
+<li>鮮明</li>
+<li>鮮明 (深色)</li>
+<li>鮮明 (淺色)</li>
+<li>柔和</li>
+<li>柔和 (深色)</li>
+<li>柔和 (淺色)</li>
+</ul>
+
+<p>如果要提取這些顏色，請將 {@link android.graphics.Bitmap} 物件傳遞到載入影像之背景執行緒中的 {@link android.support.v7.graphics.Palette#generate Palette.generate()} 靜態方法。
+
+如果您無法使用該執行緒，請改為呼叫 {@link android.support.v7.graphics.Palette#generateAsync Palette.generateAsync()} 方法並提供接聽程式。
+
+</p>
+
+<p>您可使用 <code>Palette</code> 類別中的 getter 方法 (如 <code>Palette.getVibrantColor</code> 從影像擷取顯著顏色。
+</p>
+
+<p>如果要在專案中使用 {@link android.support.v7.graphics.Palette} 類別，請在應用程式的模組中加入下列 <a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Gradle 相依性</a>：
+
+</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:palette-v7:21.0.0'
+}
+</pre>
+
+<p>如需詳細資訊，請參閱 {@link android.support.v7.graphics.Palette} 類別的 API 參考資料。
+</p>
+
+
+<h2 id="VectorDrawables">建立矢量可繪</h2>
+
+<!-- video box -->
+<a class="notice-developers-video" href="https://www.youtube.com/watch?v=wlFVIIstKmA" style="margin-top:18px">
+<div>
+    <h3>影片</h3>
+    <p>Android Vector Graphics</p>
+</div>
+</a>
+
+<p>在 Android 5.0 (API 級別 21) 或以上版本中，您可定義矢量可繪，這種圖形可以調整大小但不會遺失定義。
+一個矢量影像只需要一個資產檔案，但點陣圖影像的每一種螢幕密度都需要一個資產檔案。
+如果要建立矢量影像，您必須在 <code>&lt;vector&gt;</code> XML 元素內定義圖形的詳細資料。
+</p>
+
+<p>下列範例定義一個具有心形圖案的矢量影像：</p>
+
+<pre>
+&lt;!-- res/drawable/heart.xml -->
+&lt;vector xmlns:android="http://schemas.android.com/apk/res/android"
+    &lt;!-- intrinsic size of the drawable -->
+    android:height="256dp"
+    android:width="256dp"
+    &lt;!-- size of the virtual canvas -->
+    android:viewportWidth="32"
+    android:viewportHeight="32">
+
+  &lt;!-- draw a path -->
+  &lt;path android:fillColor="#8fff"
+      android:pathData="M20.5,9.5
+                        c-1.955,0,-3.83,1.268,-4.5,3
+                        c-0.67,-1.732,-2.547,-3,-4.5,-3
+                        C8.957,9.5,7,11.432,7,14
+                        c0,3.53,3.793,6.257,9,11.5
+                        c5.207,-5.242,9,-7.97,9,-11.5
+                        C25,11.432,23.043,9.5,20.5,9.5z" />
+&lt;/vector>
+</pre>
+
+<p>在 Android 中，{@link android.graphics.drawable.VectorDrawable} 物件代表矢量影像。
+如需有關 <code>pathData</code> 語法的詳細資訊，請參閱 <a href="http://www.w3.org/TR/SVG11/paths.html#PathData">SVG 路徑參考資料</a>。如需有關繪製矢量可繪屬性的詳細資訊，請參閱<a href="{@docRoot}training/material/animations.html#AnimVector">動畫顯示矢量可繪</a>。
+
+</p>
diff --git a/docs/html-intl/intl/zh-tw/training/material/get-started.jd b/docs/html-intl/intl/zh-tw/training/material/get-started.jd
new file mode 100644
index 0000000..dfa0074
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/training/material/get-started.jd
@@ -0,0 +1,171 @@
+page.title=開始使用
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本課程示範</h2>
+<ol>
+  <li><a href="#ApplyTheme">套用材料設計風格</a></li>
+  <li><a href="#Layouts">設計版面配置</a></li>
+  <li><a href="#Depth">指定視圖中的高度</a></li>
+  <li><a href="#ListsCards">建立清單和卡片</a></li>
+  <li><a href="#Animations">自訂動畫</a></li>
+</ol>
+<h2>您也應該閱讀</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料設計規格</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 上的材料設計</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>如果要使用材料設計建立應用程式：</p>
+
+<ol>
+  <li style="margin-bottom:10px">
+    請閱讀<a href="http://www.google.com/design/spec">材料設計規格</a>。</li>
+  <li style="margin-bottom:10px">
+    對應用程式套用材料<strong>設計風格</strong>。</li>
+  <li style="margin-bottom:10px">
+    依照材料設計指南建立<strong>版面配置</strong>。</li>
+  <li style="margin-bottom:10px">
+    指定視圖的<strong>高度</strong>來投射出陰影。</li>
+  <li style="margin-bottom:10px">
+    使用系統<strong>小工具</strong>製作清單和卡片。</li>
+  <li style="margin-bottom:10px">
+    自訂應用程式中的<strong>動畫</strong>。</li>
+</ol>
+
+<h3>維持向下相容性</h3>
+
+<p>您可在應用程式中加入多種材料設計功能，同時維持與 Android 5.0 之前版本的相容性。
+如需詳細資訊，請參閱<a href="{@docRoot}training/material/compatibility.html">維持相容性</a>。
+</p>
+
+<h3>更新應用程式以納入材料設計功能</h3>
+
+<p>如要更新現有應用程式以納入材料設計功能，請依照下列材料設計指南更新版面配置。
+同時確保加入深度、輕觸回饋和動畫。
+</p>
+
+<h3>使用材料設計建立新應用程式</h3>
+
+<p>如果您要使用材料設計功能建立新應用程式，<a href="http://www.google.com/design/spec">材料設計指南</a>可以提供一致性的設計架構。
+請依照下列指南，使用 Android 架構中的新功能來設計和開發應用程式。
+</p>
+
+
+<h2 id="ApplyTheme">套用材料設計風格</h2>
+
+<p>如要在應用程式中套用材料設計風格，請指定一個繼承自 <code>android:Theme.Material</code> 的樣式：
+</p>
+
+<pre>
+&lt;!-- res/values/styles.xml -->
+&lt;resources>
+  &lt;!-- your theme inherits from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- theme customizations -->
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<p>材料設計風格提供已更新的系統小工具，可讓您設定系統小工具的色板和預設動畫，作為輕觸回饋與操作行為轉換。
+如需詳細資訊，請參閱<a href="{@docRoot}training/material/theme.html">使用材料設計風格</a>。
+</p>
+
+
+<h2 id="Layouts">設計版面配置</h2>
+
+<p>除了套用和自訂材料設計風格之外，您的版面配置也必須遵守<a href="http://www.google.com/design/spec">材料設計指南</a>。
+當您設計版面配置時，請注意下列事項：
+</p>
+
+<ul>
+<li>基準線網格</li>
+<li>邊線</li>
+<li>間距</li>
+<li>輕觸目標大小</li>
+<li>版面配置結構</li>
+</ul>
+
+
+<h2 id="Depth">指定視圖中的高度</h2>
+
+<p>檢視可以投射出陰影，因此檢視的高度值會決定陰影的大小及其繪製順序。
+如要設定視圖的高度，請在版面配置中使用 <code>android:elevation</code> 屬性：
+</p>
+
+<pre>
+&lt;TextView
+    android:id="&#64;+id/my_textview"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:text="&#64;string/next"
+    android:background="&#64;color/white"
+    android:elevation="5dp" />
+</pre>
+
+<p>您可以使用新的 <code>translationZ</code> 屬性建立動畫，來反映視圖高度的短暫變化。
+高度變化可以用來<a href="{@docRoot}training/material/animations.html#ViewState">回應輕觸手勢</a>。
+
+</p>
+
+<p>如需詳細資訊，請參閱<a href="{@docRoot}training/material/shadows-clipping.html">定義陰影和裁剪檢視</a>。
+</p>
+
+
+<h2 id="ListsCards">建立清單和卡片</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} 是一個更容易插入的 {@link
+android.widget.ListView} 版本，可支援不同的版面配置類型並提供更好的效能。{@link android.support.v7.widget.CardView} 可讓您在不同的應用程式之間以一致的外觀顯示卡片內部的資訊。
+
+下列程式碼範例示範如何在版面配置中加入 {@link android.support.v7.widget.CardView}：
+</p>
+
+<pre>
+&lt;android.support.v7.widget.CardView
+    android:id="&#64;+id/card_view"
+    android:layout_width="200dp"
+    android:layout_height="200dp"
+    card_view:cardCornerRadius="3dp">
+    ...
+&lt;/android.support.v7.widget.CardView>
+</pre>
+
+<p>如需詳細資訊，請參閱<a href="{@docRoot}training/material/lists-cards.html">建立清單和卡片</a>。
+</p>
+
+
+<h2 id="Animations">自訂動畫</h2>
+
+<p>Android 5.0 (API 級別 21) 包含許多新的 API 以便在應用程式中建立自訂動畫。例如，您可以啟用操作行為轉換，並在操作行為內部定義離開轉換：
+
+</p>
+
+<pre>
+public class MyActivity extends Activity {
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // enable transitions
+        getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
+        setContentView(R.layout.activity_my);
+    }
+
+    public void onSomeButtonClicked(View view) {
+        getWindow().setExitTransition(new Explode());
+        Intent intent = new Intent(this, MyOtherActivity.class);
+        startActivity(intent,
+                      ActivityOptions
+                          .makeSceneTransitionAnimation(this).toBundle());
+    }
+}
+</pre>
+
+<p>當您從這個操作行為開始另一個操作行為時，就會啟動離開轉換。</p>
+
+<p>如需深入了解新的動畫 API，請參閱<a href="{@docRoot}training/material/animations.html">定義自訂動畫</a>。</p>
diff --git a/docs/html-intl/intl/zh-tw/training/material/index.jd b/docs/html-intl/intl/zh-tw/training/material/index.jd
new file mode 100644
index 0000000..5599d59
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/training/material/index.jd
@@ -0,0 +1,61 @@
+page.title=開發人員材料設計
+page.type=設計
+page.image=images/cards/material_2x.png
+page.metaDescription=學習如何套用材料設計至您的應用程式。
+
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>相依性和先決條件</h2>
+  <ul>
+    <li>Android 5.0 (API 級別 21)</li>
+  </ul>
+</div>
+</div>
+
+<p>材料設計是一份廣泛綜合性的指南，引導您跨平台、跨裝置進行視覺、動態和互動的設計。
+如要在 Android 應用程式中使用材料設計，請依照<a href="http://www.google.com/design/spec/material-design/introduction.html">材料設計規格中的指示</a>，使用 Android 5.0 (API 級別 21) 中的新元件和新功能。
+
+
+
+</p>
+
+<p>本課程示範如何使用下列元素建立材料設計應用程式：</p>
+
+<ul>
+<li>材料設計風格</li>
+<li>卡片和清單的小工具</li>
+<li>自訂陰影和裁剪視圖</li>
+<li>矢量可繪</li>
+<li>自訂動畫</li>
+</ul>
+
+<p>本課程也示範當您在應用程式中使用材料設計功能時，如何與 Android 5.0 (API 級別 21) 之前的版本維持相容性。
+</p>
+
+<h2>課程</h2>
+
+<dl>
+  <dt><a href="{@docRoot}training/material/get-started.html">開始使用</a></dt>
+  <dd>了解如何更新應用程式以納入材料設計功能。</dd>
+
+  <dt><a href="{@docRoot}training/material/theme.html">使用材料設計風格</a></dt>
+  <dd>了解如何對應用程式套用材料設計樣式。</dd>
+
+  <dt><a href="{@docRoot}training/material/lists-cards.html">建立清單和卡片</a></dt>
+  <dd>了解如何使用系統小工具，建立外觀和操作方式一致的清單和卡片。</dd>
+
+  <dt><a href="{@docRoot}training/material/shadows-clipping.html">定義陰影和裁剪視圖</a></dt>
+  <dd>了解如何對視圖設定高度建立自訂陰影，以及如何裁剪視圖。</dd>
+
+  <dt><a href="{@docRoot}training/material/drawables.html">使用可繪項目</a></dt>
+  <dd>了解如何建立矢量可繪項目，以及如何對可繪資源著色。</dd>
+
+  <dt><a href="{@docRoot}training/material/animations.html">定義自訂動畫</a></dt>
+  <dd>了解如何使用分享元素對視圖建立自訂動畫和操作行為轉換。</dd>
+
+  <dt><a href="{@docRoot}training/material/compatibility.html">維持相容性</a></dt>
+  <dd>了解如何與 Android 5.0 之前的平台版本維持相容性。</dd>
+</dl>
diff --git a/docs/html-intl/intl/zh-tw/training/material/lists-cards.jd b/docs/html-intl/intl/zh-tw/training/material/lists-cards.jd
new file mode 100644
index 0000000..71adffb
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/training/material/lists-cards.jd
@@ -0,0 +1,266 @@
+page.title=建立清單和卡片
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本課程示範</h2>
+<ol>
+  <li><a href="#RecyclerView">建立清單</a></li>
+  <li><a href="#CardView">建立卡片</a></li>
+  <li><a href="#Dependencies">新增相依性</a></li>
+</ol>
+<h2>您也應該閱讀</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料設計規格</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 上的材料設計</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>如要在應用程式中使用材料設計樣式建立複雜的清單和卡片，可以使用 {@link android.support.v7.widget.RecyclerView} 和 {@link android.support.v7.widget.CardView} 小工具。
+
+</p>
+
+
+<h2 id="RecyclerView">建立清單</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} 小工具是比較進階和彈性的 {@link android.widget.ListView} 版本。
+這個小工具是一個用來顯示大型資料集的容器，只要維護少數幾個視圖，就可極有效率地捲動資料集。
+當您的資料集元素在執行階段會根據使用者操作動作或網路事件而變更，請使用 {@link android.support.v7.widget.RecyclerView} 小工具。
+
+</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} 類別會提供下列項目，簡化大型資料集的顯示和處理方式：
+</p>
+
+<ul>
+  <li>版面配置管理員，用來將項目定位</li>
+  <li>常見項目操作 (例如移除或新增項目) 的預設動畫</li>
+</ul>
+
+<p>您也可針對 {@link
+android.support.v7.widget.RecyclerView} 小工具定義自訂的版面配置管理員。</p>
+
+<img src="{@docRoot}training/material/images/RecyclerView.png" alt="" width="550" height="106" />
+<p class="img-caption">
+<strong>圖 1.</strong><code>RecyclerView</code> 小工具。
+</p>
+
+<p>如果要使用 {@link android.support.v7.widget.RecyclerView} 小工具，您必須指定配接器和版面配置管理員。
+如要建立配接器，請延伸 {@link
+android.support.v7.widget.RecyclerView.Adapter RecyclerView.Adapter} 類別。實作的詳細情形根據您的資料集和檢視類型而定。
+如需詳細資訊，請參閱下面的<a href="#RVExamples">範例</a>。
+</p>
+
+<div style="float:right">
+<img src="{@docRoot}design/material/images/list_mail.png" alt="" width="250" height="426" />
+<p class="img-caption" style="margin-left:8px">
+<strong>圖 2</strong> - 含有 <code>RecyclerView</code> 的清單。
+</p>
+</div>
+
+<p><strong>版面配置管理員</strong>會將 {@link
+android.support.v7.widget.RecyclerView} 內的項目視圖定位，並判斷何時要重複使用使用者不會再看到的項目視圖。
+如要重複使用 (或回收<em></em>) 某個視圖，版面配置管理員會要求配接器以資料集中不同的元素，取代視圖的內容。
+使用此方式回收視圖可避免建立不必要的視圖或執行耗費資源的 {@link android.app.Activity#findViewById findViewById()} 查詢，以增進效能。
+
+</p>
+
+<p>{@link android.support.v7.widget.RecyclerView} 提供下列內建的版面配置管理員：</p>
+
+<ul>
+<li>{@link android.support.v7.widget.LinearLayoutManager} 在垂直或水平捲動清單中顯示項目。
+</li>
+<li>{@link android.support.v7.widget.GridLayoutManager} 會在網格中顯示項目。</li>
+<li>{@link android.support.v7.widget.StaggeredGridLayoutManager} 會在交錯網格中顯示項目。</li>
+</ul>
+
+<p>如要建立自訂版面配置管理員，請延伸 {@link
+android.support.v7.widget.RecyclerView.LayoutManager RecyclerView.LayoutManager} 類別。</p>
+
+<h3>動畫</h3>
+
+<p>在 {@link
+android.support.v7.widget.RecyclerView} 中，預設已啟用新增和移除項目的動畫。如果要自訂這些動畫，請延伸 {@link android.support.v7.widget.RecyclerView.ItemAnimator RecyclerView.ItemAnimator} 類別並使用 {@link android.support.v7.widget.RecyclerView#setItemAnimator RecyclerView.setItemAnimator()} 方法。
+
+
+</p>
+
+<h3 id="RVExamples">範例</h3>
+
+<p>下列程式碼範例示範如何在版面配置中加入 {@link android.support.v7.widget.RecyclerView}：
+</p>
+
+<pre>
+&lt;!-- A RecyclerView with some commonly used attributes -->
+&lt;android.support.v7.widget.RecyclerView
+    android:id="@+id/my_recycler_view"
+    android:scrollbars="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
+</pre>
+
+<p>一旦您在版面配置中加入 {@link android.support.v7.widget.RecyclerView} 小工具之後，先取得該物件的控制代碼、將控制代碼連線到版面配置管理員，再連接配接器以便顯示資料：
+
+</p>
+
+<pre>
+public class MyActivity extends Activity {
+    private RecyclerView mRecyclerView;
+    private RecyclerView.Adapter mAdapter;
+    private RecyclerView.LayoutManager mLayoutManager;
+
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.my_activity);
+        mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view);
+
+        // use this setting to improve performance if you know that changes
+        // in content do not change the layout size of the RecyclerView
+        mRecyclerView.setHasFixedSize(true);
+
+        // use a linear layout manager
+        mLayoutManager = new LinearLayoutManager(this);
+        mRecyclerView.setLayoutManager(mLayoutManager);
+
+        // specify an adapter (see also next example)
+        mAdapter = new MyAdapter(myDataset);
+        mRecyclerView.setAdapter(mAdapter);
+    }
+    ...
+}
+</pre>
+
+<p>配接器可存取資料集中的項目、建立項目的視圖，並在原來的項目無法再顯示時，使用新的資料項目取代某些視圖的內容。
+
+下列程式碼範例簡單實作一個由使用 {@link android.widget.TextView} 小工具顯示的字串陣列所組成的資料集：
+</p>
+
+<pre>
+public class MyAdapter extends RecyclerView.Adapter&lt;MyAdapter.ViewHolder> {
+    private String[] mDataset;
+
+    // Provide a reference to the views for each data item
+    // Complex data items may need more than one view per item, and
+    // you provide access to all the views for a data item in a view holder
+    public static class ViewHolder extends RecyclerView.ViewHolder {
+        // each data item is just a string in this case
+        public TextView mTextView;
+        public ViewHolder(TextView v) {
+            super(v);
+            mTextView = v;
+        }
+    }
+
+    // Provide a suitable constructor (depends on the kind of dataset)
+    public MyAdapter(String[] myDataset) {
+        mDataset = myDataset;
+    }
+
+    // Create new views (invoked by the layout manager)
+    &#64;Override
+    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
+                                                   int viewType) {
+        // create a new view
+        View v = LayoutInflater.from(parent.getContext())
+                               .inflate(R.layout.my_text_view, parent, false);
+        // set the view's size, margins, paddings and layout parameters
+        ...
+        ViewHolder vh = new ViewHolder(v);
+        return vh;
+    }
+
+    // Replace the contents of a view (invoked by the layout manager)
+    &#64;Override
+    public void onBindViewHolder(ViewHolder holder, int position) {
+        // - get element from your dataset at this position
+        // - replace the contents of the view with that element
+        holder.mTextView.setText(mDataset[position]);
+
+    }
+
+    // Return the size of your dataset (invoked by the layout manager)
+    &#64;Override
+    public int getItemCount() {
+        return mDataset.length;
+    }
+}
+</pre>
+
+
+<div style="float:right;margin-top:15px;margin-left:30px">
+<img src="{@docRoot}design/material/images/card_travel.png" alt="" width="225" height="383">
+<p class="img-caption" style="margin-left:12px">
+<strong>圖 3.</strong>卡片範例。
+</p>
+</div>
+
+<h2 id="CardView">建立卡片</h2>
+
+<p>{@link android.support.v7.widget.CardView} 會延伸{@link android.widget.FrameLayout} 類別，讓您跨平台以一致的外觀顯示卡片內部的資訊。{@link
+android.support.v7.widget.CardView} 小工具可以有陰影和圓形邊角。
+</p>
+
+<p>如要建立有陰影的卡片，請使用 <code>card_view:cardElevation</code> 屬性。在 Android 5.0 (API 級別 21) 以及以上版本，{@link android.support.v7.widget.CardView} 使用實際高度和動態陰影，但在較舊的版本上只能有計畫地實作陰影。如需詳細資訊，請參閱<a href="{@docRoot}training/material/compatibility.html">維持相容性</a>。
+
+
+
+</p>
+
+<p>使用下列屬性可自訂 {@link android.support.v7.widget.CardView} 小工具的外觀：
+</p>
+
+<ul>
+  <li>如果要在版面配置中設定圓角的半徑，請使用 <code>card_view:cardCornerRadius</code> 屬性。
+ </li>
+  <li>如果要在程式碼中設定圓角的半徑，請使用 <code>CardView.setRadius</code> 方法。</li>
+  <li>如果要設定卡片的背景顏色，請使用 <code>card_view:cardBackgroundColor</code> 屬性。
+ </li>
+</ul>
+
+<p>下列程式碼範例示範如何在版面配置中加入 {@link android.support.v7.widget.CardView}小工具：
+ </p>
+
+<pre>
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    xmlns:card_view="http://schemas.android.com/apk/res-auto"
+    ... >
+    &lt;!-- A CardView that contains a TextView -->
+    &lt;android.support.v7.widget.CardView
+        xmlns:card_view="http://schemas.android.com/apk/res-auto"
+        android:id="@+id/card_view"
+        android:layout_gravity="center"
+        android:layout_width="200dp"
+        android:layout_height="200dp"
+        card_view:cardCornerRadius="4dp">
+
+        &lt;TextView
+            android:id="@+id/info_text"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+    &lt;/android.support.v7.widget.CardView>
+&lt;/LinearLayout>
+</pre>
+
+<p>如需詳細資訊，請參閱 {@link android.support.v7.widget.CardView} 的 API 參考資料。</p>
+
+
+<h2 id="Dependencies">新增相依性</h2>
+
+<p>{@link android.support.v7.widget.RecyclerView} 和 {@link android.support.v7.widget.CardView} 小工具都屬於 <a href="{@docRoot}tools/support-library/features.html#v7">v7 支援程式庫</a>。
+
+如要在專案中使用這些小工具，請在應用程式的模組中加入下列 <a href="{@docRoot}sdk/installing/studio-build.html#dependencies">Gradle 相依性</a>：
+
+</p>
+
+<pre>
+dependencies {
+    ...
+    compile 'com.android.support:cardview-v7:21.0.+'
+    compile 'com.android.support:recyclerview-v7:21.0.+'
+}
+</pre>
diff --git a/docs/html-intl/intl/zh-tw/training/material/shadows-clipping.jd b/docs/html-intl/intl/zh-tw/training/material/shadows-clipping.jd
new file mode 100644
index 0000000..d8c996d
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/training/material/shadows-clipping.jd
@@ -0,0 +1,133 @@
+page.title=定義陰影和裁剪視圖
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本課程示範</h2>
+<ol>
+  <li><a href="#Elevation">指定視圖的高度</a></li>
+  <li><a href="#Shadows">自訂視圖陰影和外框</a></li>
+  <li><a href="#Clip">裁剪視圖</a></li>
+</ol>
+<h2>您也應該閱讀</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料設計規格</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 上的材料設計</a></li>
+</ul>
+</div>
+</div>
+
+<p>材料設計為 UI 元素引入高度的概念。高度有助使用者了解每個元素的相對重要性並將焦點放在手邊的工作上。
+</p>
+
+<p>視圖的高度以 Z 屬性表示，決定其陰影的視覺外觀：視圖的 Z 值越高，投射範圍越大，陰影也就越柔和。
+Z 值較高的視圖會遮住 Z 值較低的視圖。然而，視圖的 Z 值不會影響視圖的大小。
+</p>
+
+<p>陰影是由較高的上層視圖繪製，因此也和標準視圖裁剪一樣，預設由上層視圖裁剪陰影。
+</p>
+
+<p>當小工具在執行某些操作動作而暫時升高到視圖平面的上方時，高度對於建立動畫也非常實用。
+</p>
+
+<p>如需有關材料設計高度的詳細資訊，請參閱 <a href="http://www.google.com/design/spec/what-is-material/objects-in-3d-space.html">3D 空間中的物件</a>。
+
+</p>
+
+
+<h2 id="Elevation">指定視圖的高度</h2>
+
+<p>視圖的 Z 值有兩個部分：
+
+<ul>
+<li>高度：靜態部分。</li>
+<li>解譯：用在動畫的動態部分。</li>
+</ul>
+
+<p><code>Z = elevation + translationZ</code></p>
+
+<img src="{@docRoot}training/material/images/shadows-depth.png" width="580" height="261" alt="" />
+<p class="img-caption"><strong>圖 1</strong> - 不同視圖高度的陰影。</p>
+
+<p>如要在版面配置定義中設定視圖的高度，請使用 <code>android:elevation</code> 屬性。
+如果要在操作行為的程式碼中設定檢視的高度，請使用 {@link android.view.View#setElevation View.setElevation()} 方法。
+</p>
+
+<p>如要在操作行為的程式碼中設定檢視的高度，請使用 {@link android.view.View#setTranslationZ
+View.setTranslationZ()} 方法。</p>
+
+<p>新的 {@link android.view.ViewPropertyAnimator#z ViewPropertyAnimator.z()} 和 {@link
+android.view.ViewPropertyAnimator#translationZ ViewPropertyAnimator.translationZ()} 方法可以很輕易地讓視圖高度變得栩栩如生。
+如需詳細資訊，請參閱 {@link android.view.ViewPropertyAnimator}的 API 參考資料和<a href="{@docRoot}guide/topics/graphics/prop-animation.html">屬性動畫開發人員指南</a>。
+
+</p>
+
+<p>您也可以使用 {@link android.animation.StateListAnimator} 以宣告的方式指定這些動畫。
+當狀態變更觸發動畫時， 例如使用者按下按鈕，這會特別實用。
+如需詳細資訊，請參閱<a href="{@docRoot}training/material/animations.html#ViewState">動畫顯示視圖狀態變更</a>。
+</p>
+
+<p>Z 值的測量單位為 dp (密度獨立像素)。</p>
+
+
+<h2 id="Shadows">自訂視圖陰影和外框</h2>
+
+<p>檢視背景可繪項目的邊界決定了視圖陰影的預設形狀。<strong>外框</strong>代表圖形物件的外部形狀，並可定義輕觸回饋的漣漪區域。
+
+</p>
+
+<p>我們來看看這個使用背景可繪項目定義的視圖：</p>
+
+<pre>
+&lt;TextView
+    android:id="@+id/myview"
+    ...
+    android:elevation="2dp"
+    android:background="@drawable/myrect" />
+</pre>
+
+<p>背景可繪項目定義為有圓形邊角的長方形：</p>
+
+<pre>
+&lt;!-- res/drawable/myrect.xml -->
+&lt;shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+    &lt;solid android:color="#42000000" />
+    &lt;corners android:radius="5dp" />
+&lt;/shape>
+</pre>
+
+<p>因為背景可繪項目定義了視圖的外框，所以視圖投射出有圓形邊角的陰影。
+如果提供自訂的外框，則會覆寫視圖陰影的預設形狀。</p>
+
+<p>在程式碼中定義視圖的自訂外框：<p>
+
+<ol>
+<li>延伸 {@link android.view.ViewOutlineProvider} 類別。</li>
+<li>覆寫 {@link android.view.ViewOutlineProvider#getOutline getOutline()} 方法。</li>
+<li>使用 {@link
+android.view.View#setOutlineProvider View.setOutlineProvider()} 方法對您的視圖指定新的外框提供者。</li>
+</ol>
+
+<p>您可以使用 {@link android.graphics.Outline} 類別中的方法，建立橢圓形外框和有圓形邊角的長方形外框。
+視圖的預設外框提供者會從視圖的背景取得外框。
+如果要避免視圖投射出陰影，請將視圖的外框提供者設定為 <code>null</code>。
+</p>
+
+
+<h2 id="Clip">裁剪視圖</h2>
+
+<p>裁剪視圖可以讓您輕鬆地變更視圖的形狀。您可以裁剪視圖，讓視圖與其他設計元素有一致的外觀，或變更視圖的形狀來回應使用者的輸入。您可以使用 {@link android.view.View#setClipToOutline
+View.setClipToOutline()} 方法或 <code>android:clipToOutline</code> 屬性，將視圖裁剪為其外框區域。
+
+根據 {@link android.graphics.Outline#canClip Outline.canClip()} 方法的定義，只有長方形、圓形和圓角長方形的外框才支援裁剪。
+
+</p>
+
+<p>如要將視圖裁剪為可繪項目的形狀，請將可繪項目設定為視圖的背景 (如上所示)，然後呼叫 {@link android.view.View#setClipToOutline View.setClipToOutline()} 方法。
+
+</p>
+
+<p>裁剪視圖是一種耗費資源的操作，所以請不要將您用來裁剪視圖的形狀做成動畫。
+如果想要達到這種效果，請使用<a href="{@docRoot}training/material/animations.html#Reveal">顯示效果</a>動畫。</p>
diff --git a/docs/html-intl/intl/zh-tw/training/material/theme.jd b/docs/html-intl/intl/zh-tw/training/material/theme.jd
new file mode 100644
index 0000000..61cd8bd
--- /dev/null
+++ b/docs/html-intl/intl/zh-tw/training/material/theme.jd
@@ -0,0 +1,131 @@
+page.title=使用材料設計風格
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本課程示範</h2>
+<ol>
+  <li><a href="#ColorPalette">自訂色板</a></li>
+  <li><a href="#StatusBar">自訂狀態列</a></li>
+  <li><a href="#Inheritance">設計風格個別視圖</a></li>
+</ol>
+<h2>您也應該閱讀</h2>
+<ul>
+  <li><a href="http://www.google.com/design/spec">材料設計規格</a></li>
+  <li><a href="{@docRoot}design/material/index.html">Android 上的材料設計</a></li>
+</ul>
+</div>
+</div>
+
+
+<p>新的材料設計風格提供：</p>
+
+<ul>
+  <li>可設定其色板的系統小工具</li>
+  <li>系統小工具的輕觸回饋動畫</li>
+  <li>操作行為轉換動畫</li>
+</ul>
+
+<p>您可根據品牌特性，使用您控制的色板以自訂材料設計風格的外觀。
+您可以使用風格主題屬性，為行為欄和狀態列著色，如<a href="#fig3">圖 3</a> 所示。
+</p>
+
+<p>系統小工具經過全新設計，有輕觸回饋動畫。您可以為應用程式自訂色板、輕觸回饋動畫，以及操作行為轉換。
+</p>
+
+<p>材料設計風格定義為：</p>
+
+<ul>
+  <li><code>@android:style/Theme.Material</code> (深色版本)</li>
+  <li><code>@android:style/Theme.Material.Light</code> (淺色版本)</li>
+  <li><code>@android:style/Theme.Material.Light.DarkActionBar</code></li>
+</ul>
+
+<p>如需您可以使用的材料樣式清單，請參閱 {@link android.R.style R.style} 的 API 參考資料。
+</p>
+
+<!-- two columns, dark/light material theme example -->
+<div style="width:700px;margin-top:25px;margin-bottom:10px">
+<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
+  <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>圖 1</strong>.深色材料設計風格</p>
+  </div>
+</div>
+<div style="float:left;width:250px;margin-right:0px;">
+  <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238">
+  <div style="width:170px;margin:0 auto">
+  <p style="margin-top:8px;font-size:12px"><strong>圖 2</strong>.淺色材料設計風格</p>
+  </div>
+</div>
+<br style="clear:left">
+</div>
+
+<p class="note">
+<strong>注意：</strong>材料設計風格只能在 Android 5.0 (API 級別 21) 及以上版本中使用。
+<a href="{@docRoot}tools/support-library/features.html#v7">v7 支援程式庫</a>針對某些小工具提供使用材料設計樣式的設計風格，並支援自訂色板。
+
+如需詳細資訊，請參閱<a href="{@docRoot}training/material/compatibility.html">維持相容性</a>。
+
+</p>
+
+
+<h2 id="ColorPalette">自訂色板</h2>
+
+<p style="margin-bottom:30px">如要自訂設計風格的基礎顏色來搭配您的品牌，在繼承材料設計風格時，請使用設計風格屬性定義您的自訂顏色：
+</p>
+
+<pre>
+&lt;resources>
+  &lt;!-- inherit from the material theme -->
+  &lt;style name="AppTheme" parent="android:Theme.Material">
+    &lt;!-- Main theme colors -->
+    &lt;!--   your app branding color for the app bar -->
+    &lt;item name="android:colorPrimary">@color/primary&lt;/item>
+    &lt;!--   darker variant for the status bar and contextual app bars -->
+    &lt;item name="android:colorPrimaryDark">@color/primary_dark&lt;/item>
+    &lt;!--   theme UI controls like checkboxes and text fields -->
+    &lt;item name="android:colorAccent">@color/accent&lt;/item>
+  &lt;/style>
+&lt;/resources>
+</pre>
+
+<div style="float:right;margin-left:25px;margin-top:20px;margin-bottom:10px" id="fig3">
+<img src="{@docRoot}training/material/images/ThemeColors.png" width="250" height="445" />
+<p class="img-caption" style="margin-bottom:0px">
+<strong>圖 3.</strong>自訂材料設計風格。</p>
+</div>
+
+
+<h2 id="StatusBar">自訂狀態列</h2>
+
+<p>材料設計風格可讓您輕鬆自訂狀態列，因此，您可指定符合品牌的顏色，並提供足夠的對比來顯示白色的狀態圖示。
+如要設定狀態列的自訂顏色，請在延伸材料設計風格時使用 <code>android:statusBarColor</code> 屬性。
+
+<code>android:statusBarColor</code> 預設會繼承 <code>android:colorPrimaryDark</code> 的值。
+</p>
+
+<p>您也可以自行繪製狀態列。例如，若您想在相片上面顯示透明的狀態列，卻想搭配一點深色的漸層以確保白色的狀態圖示清晰可見。
+
+請將 <code>android:statusBarColor</code> 屬性設定為 <code>&#64;android:color/transparent</code>，並且視需要調整視窗標幟。
+您也可以使用 {@link android.view.Window#setStatusBarColor Window.setStatusBarColor()} 方法顯示動畫或進行淡化。
+
+</p>
+
+<p class="note">
+<strong>注意：</strong>狀態列應該與主要工具列有清楚區分的輪廓，除非您想在這些列後面顯示全版的豐富圖像或媒體內容，或使用漸層以確保圖示清晰可見。
+
+
+</p>
+
+<p>當您自訂瀏覽列和狀態列時，請讓兩者都變成透明，或者只修改狀態列。
+在其他所有狀況下，瀏覽列都必須保持黑色。</p>
+
+
+<h2 id="Inheritance">設計風格個別視圖</h3>
+
+<p>XML 版面配置定義中的元素可以指定 <code>android:theme</code> 屬性，參考設計風格資源。
+此屬性會修改元素和所有子元素的設計風格，對於改變介面特定部份的設計風格色板非常實用。
+
+</p>
diff --git a/docs/html/_redirects.yaml b/docs/html/_redirects.yaml
index 5d59130..5ce98ff 100644
--- a/docs/html/_redirects.yaml
+++ b/docs/html/_redirects.yaml
@@ -1,5 +1,5 @@
 # WARNING: THIS FILE IS NOT USED IN PRODUCTION
-# CHANGES MADE HERE **DO NOT EFFECT** developer.android.com
+# CHANGES MADE HERE **DO NOT AFFECT** developer.android.com
 
 # Instead, update the following file in the current docs release branch:
 # <docs-release-branch>/vendor/google/docs/app-engine-server/v3/redirects.yaml
diff --git a/docs/html/about/_book.yaml b/docs/html/about/_book.yaml
new file mode 100644
index 0000000..04150bd
--- /dev/null
+++ b/docs/html/about/_book.yaml
@@ -0,0 +1,49 @@
+toc:
+- title: Marshmallow
+  path: /about/versions/marshmallow/index.html
+  section:
+  - title: Android 6.0 APIs
+    path: /about/versions/marshmallow/android-6.0.html
+  - title: Android 6.0 Changes
+    path: /about/versions/marshmallow/android-6.0-changes.html
+  - title: Android 6.0 Samples
+    path: /about/versions/marshmallow/samples.html
+
+- title: Lollipop
+  path: /about/versions/lollipop.html
+  section:
+  - title: Android 5.1 APIs
+    path: /about/versions/android-5.1.html
+  - title: Android 5.0 APIs
+    path: /about/versions/android-5.0.html
+    custom_link_attributes:
+    - es-lang="API de Android 5.0"
+    - ja-lang="Android 5.0 API"
+    - ko-lang="Android 5.0 API"
+    - ru-lang="API для Android 5.0"
+    - zh-cn-lang="Android 5.0 API"
+    - zh-tw-lang="Android 5.0 API"
+  - title: Android 5.0 Changes
+    path: /about/versions/android-5.0-changes.html
+
+- title: KitKat
+  path: /about/versions/kitkat.html
+  section:
+  - title: Android 4.4 APIs
+    path: /about/versions/android-4.4.html
+
+- title: Jelly Bean
+  path: /about/versions/jelly-bean.html
+  section:
+  - title: Android 4.3 APIs
+    path: /about/versions/android-4.3.html
+  - title: Android 4.2 APIs
+    path: /about/versions/android-4.2.html
+  - title: Android 4.1 APIs
+    path: /about/versions/android-4.1.html
+
+- title: About Android
+  path: /about/android.html
+
+- title: Dashboards
+  path: /about/dashboards/index.html
diff --git a/docs/html/about/about_toc.cs b/docs/html/about/about_toc.cs
index 45e8eb3..a456012 100644
--- a/docs/html/about/about_toc.cs
+++ b/docs/html/about/about_toc.cs
@@ -1,5 +1,16 @@
 <ul id="nav">
-
+  <li class="nav-section">
+    <div class="nav-section-header"><a href="<?cs var:toroot ?>about/versions/marshmallow/index.html">
+      <span class="en">Marshmallow</span></a></div>
+      <ul>
+        <li><a href="<?cs var:toroot ?>about/versions/marshmallow/android-6.0.html">
+        Android 6.0 APIs</a></li>
+        <li><a href="<?cs var:toroot ?>about/versions/marshmallow/android-6.0-changes.html">
+        Android 6.0 Changes</a></li>
+        <li><a href="<?cs var:toroot ?>about/versions/marshmallow/samples.html">
+        Android 6.0 Samples</a></li>
+      </ul>
+  </li>
   <li class="nav-section">
     <div class="nav-section-header"><a href="<?cs var:toroot ?>about/versions/lollipop.html"
               zh-tw-lang="Lollipop"
diff --git a/docs/html/about/android.jd b/docs/html/about/android.jd
index ad0ea7c..e3b6958 100644
--- a/docs/html/about/android.jd
+++ b/docs/html/about/android.jd
@@ -26,7 +26,7 @@
 <blockquote>Every day more than a million new Android devices are activated worldwide.</blockquote>
 
 <p>Android’s openness has made it a favorite for consumers and developers alike,
-driving strong growth in app consumption. Android users download more than 
+driving strong growth in app consumption. Android users download 
 billions of apps and games from Google Play each month. </p>
 
 <p>With its partners, Android is continuously pushing the boundaries of hardware and software
@@ -76,7 +76,7 @@
 packaging Android apps. Using the IDE, you can develop on any available Android
 device or create virtual devices that emulate any hardware configuration.</p>
 
-<blockquote>1.5 billion downloads a month and growing. Get your apps in front
+<blockquote>Billion downloads a month and growing. Get your apps in front
 of millions of users at Google's scale.</blockquote>
 
 <h3>Open marketplace for distributing your apps</h3>
@@ -107,5 +107,5 @@
 the best apps promotional slots in curated collections.
 </p>
 
-<p>Preinstalled on hundreds of billions of Android devices around the world,
+<p>Preinstalled on billions of Android devices around the world,
 Google Play can be a growth engine for your business.</p>
\ No newline at end of file
diff --git a/docs/html/about/dashboards/index.jd b/docs/html/about/dashboards/index.jd
index ff6b681..f0e1a3c 100644
--- a/docs/html/about/dashboards/index.jd
+++ b/docs/html/about/dashboards/index.jd
@@ -1,7 +1,9 @@
 page.title=Dashboards
-page.metaDescription=page.metaDescription=Charts that give you an overview of device characteristics and platform versions that are active in the Android ecosystem.
+page.metaDescription=page.metaDescription=An overview of device characteristics and platform versions that are active in the Android ecosystem.
 page.tags="android, dashboard, platforms, versions"
-meta.tags="ecosystem, versions, whatsnew"
+meta.tags="ecosystem, versions, whatsnew, dashboards"
+page.image=https://chart.googleapis.com/chart?chl=GL%202.0%7CGL%203.0%7CGL%203.1&chf=bg%2Cs%2C00000000&chd=t%3A51.6%2C40.7%2C7.7&chco=c4df9b%2C6fad0c&cht=p&chs=400x250
+
 @jd:body
 
 <style>
@@ -57,7 +59,7 @@
 </div>
 
 
-<p style="clear:both"><em>Data collected during a 7-day period ending on August 3, 2015.
+<p style="clear:both"><em>Data collected during a 7-day period ending on April 4, 2016.
 <br/>Any versions with less than 0.1% distribution are not shown.</em>
 </p>
 
@@ -88,7 +90,7 @@
 </div>
 
 
-<p style="clear:both"><em>Data collected during a 7-day period ending on August 3, 2015.
+<p style="clear:both"><em>Data collected during a 7-day period ending on April 4, 2016.
 
 <br/>Any screen configurations with less than 0.1% distribution are not shown.</em></p>
 
@@ -108,7 +110,7 @@
 
 
 <img alt="" style="float:right"
-src="//chart.googleapis.com/chart?chl=GL%202.0%7CGL%203.0%7CGL%203.1&chf=bg%2Cs%2C00000000&chd=t%3A59.8%2C36.8%2C3.4&chco=c4df9b%2C6fad0c&cht=p&chs=400x250">
+src="//chart.googleapis.com/chart?chl=GL%202.0%7CGL%203.0%7CGL%203.1&chf=bg%2Cs%2C00000000&chd=t%3A50.9%2C40.7%2C8.4&chco=c4df9b%2C6fad0c&cht=p&chs=400x250">
 
 <p>To declare which version of OpenGL ES your application requires, you should use the {@code
 android:glEsVersion} attribute of the <a
@@ -126,21 +128,21 @@
 </tr>
 <tr>
 <td>2.0</td>
-<td>59.8%</td>
+<td>50.9%</td>
 </tr>
 <tr>
 <td>3.0</td>
-<td>36.8%</td>
+<td>40.7%</td>
 </tr>
 <tr>
 <td>3.1</td>
-<td>3.4%</td>
+<td>8.4%</td>
 </tr>
 </table>
 
 
 
-<p style="clear:both"><em>Data collected during a 7-day period ending on August 3, 2015</em></p>
+<p style="clear:both"><em>Data collected during a 7-day period ending on April 4, 2016</em></p>
 
 
 
@@ -152,30 +154,30 @@
   {
     "data": {
       "Large": {
-        "hdpi": "0.6",
+        "hdpi": "0.5",
         "ldpi": "0.3",
-        "mdpi": "4.9",
-        "tvdpi": "2.3",
-        "xhdpi": "0.6"
+        "mdpi": "4.6",
+        "tvdpi": "2.2",
+        "xhdpi": "0.5"
       },
       "Normal": {
-        "hdpi": "40.6",
-        "mdpi": "6.9",
+        "hdpi": "41.5",
+        "mdpi": "4.9",
         "tvdpi": "0.1",
-        "xhdpi": "20.4",
-        "xxhdpi": "15.8"
+        "xhdpi": "23.9",
+        "xxhdpi": "14.9"
       },
       "Small": {
-        "ldpi": "3.6"
+        "ldpi": "2.4"
       },
       "Xlarge": {
         "hdpi": "0.3",
-        "mdpi": "3.0",
-        "xhdpi": "0.6"
+        "mdpi": "3.2",
+        "xhdpi": "0.7"
       }
     },
-    "densitychart": "//chart.googleapis.com/chart?chs=400x250&cht=p&chco=c4df9b%2C6fad0c&chf=bg%2Cs%2C00000000&chd=t%3A3.9%2C14.8%2C2.4%2C41.5%2C21.6%2C15.8&chl=ldpi%7Cmdpi%7Ctvdpi%7Chdpi%7Cxhdpi%7Cxxhdpi",
-    "layoutchart": "//chart.googleapis.com/chart?chs=400x250&cht=p&chco=c4df9b%2C6fad0c&chf=bg%2Cs%2C00000000&chd=t%3A3.9%2C8.7%2C83.8%2C3.6&chl=Xlarge%7CLarge%7CNormal%7CSmall"
+    "densitychart": "//chart.googleapis.com/chart?chl=ldpi%7Cmdpi%7Ctvdpi%7Chdpi%7Cxhdpi%7Cxxhdpi&chd=t%3A2.7%2C12.7%2C2.3%2C42.3%2C25.1%2C14.9&chf=bg%2Cs%2C00000000&chco=c4df9b%2C6fad0c&cht=p&chs=400x250",
+    "layoutchart": "//chart.googleapis.com/chart?chl=Xlarge%7CLarge%7CNormal%7CSmall&chd=t%3A4.2%2C8.1%2C85.3%2C2.4&chf=bg%2Cs%2C00000000&chco=c4df9b%2C6fad0c&cht=p&chs=400x250"
   }
 ];
 
@@ -183,52 +185,57 @@
 var VERSION_DATA =
 [
   {
-    "chart": "//chart.googleapis.com/chart?chs=500x250&cht=p&chco=c4df9b%2C6fad0c&chf=bg%2Cs%2C00000000&chd=t%3A0.3%2C4.6%2C4.1%2C33.6%2C39.3%2C18.1&chl=Froyo%7CGingerbread%7CIce%20Cream%20Sandwich%7CJelly%20Bean%7CKitKat%7CLollipop",
+    "chart": "//chart.googleapis.com/chart?chl=Froyo%7CGingerbread%7CIce%20Cream%20Sandwich%7CJelly%20Bean%7CKitKat%7CLollipop%7CMarshmallow&chd=t%3A0.1%2C2.6%2C2.2%2C21.3%2C33.4%2C35.8%2C4.6&chf=bg%2Cs%2C00000000&chco=c4df9b%2C6fad0c&cht=p&chs=500x250",
     "data": [
       {
         "api": 8,
         "name": "Froyo",
-        "perc": "0.3"
+        "perc": "0.1"
       },
       {
         "api": 10,
         "name": "Gingerbread",
-        "perc": "4.6"
+        "perc": "2.6"
       },
       {
         "api": 15,
         "name": "Ice Cream Sandwich",
-        "perc": "4.1"
+        "perc": "2.2"
       },
       {
         "api": 16,
         "name": "Jelly Bean",
-        "perc": "13.0"
+        "perc": "7.8"
       },
       {
         "api": 17,
         "name": "Jelly Bean",
-        "perc": "15.9"
+        "perc": "10.5"
       },
       {
         "api": 18,
         "name": "Jelly Bean",
-        "perc": "4.7"
+        "perc": "3.0"
       },
       {
         "api": 19,
         "name": "KitKat",
-        "perc": "39.3"
+        "perc": "33.4"
       },
       {
         "api": 21,
         "name": "Lollipop",
-        "perc": "15.5"
+        "perc": "16.4"
       },
       {
         "api": 22,
         "name": "Lollipop",
-        "perc": "2.6"
+        "perc": "19.4"
+      },
+      {
+        "api": 23,
+        "name": "Marshmallow",
+        "perc": "4.6"
       }
     ]
   }
@@ -316,27 +323,16 @@
     "api":22,
     "link":"<a href='/about/versions/android-5.1.html'>5.1</a>",
     "codename":"Lollipop"
+  },
+  {
+    "api":23,
+    "link":"<a href='/about/versions/marshmallow/index.html'>6.0</a>",
+    "codename":"Marshmallow"
   }
 ];
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
 $(document).ready(function(){
   // for each set of data (each month)
   $.each(VERSION_DATA, function(i, set) {
diff --git a/docs/html/about/index.jd b/docs/html/about/index.jd
index 215fc3c..22f504e 100644
--- a/docs/html/about/index.jd
+++ b/docs/html/about/index.jd
@@ -119,40 +119,4 @@
 <p>Preinstalled on hundreds of millions of Android devices around the world,
 Google Play can be a growth engine for your business.</p>
 
-<p><a class="landing-page-link" href="{@docRoot}about/start.html">GET STARTED</a></p>
-
-<div style="background: #F0F0F0;
-            border-top: 1px solid #DDD;
-            padding: 20px 0 24px 0;
-            overflow: auto;
-            clear:both;
-            margin-bottom:-10px;
-            margin-top:60px;"">
-   <div style="padding:0 0 0 29px;">
-        <h4>Developer Story: Robot Invader</h4>
-          <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
-            -moz-border-radius: 5px;
-            border-radius: 5px height:78px;
-            width: 78px;
-            float: left;
-            margin: 17px 20px 9px 0;" src=
-            "//g0.gstatic.com/android/market/com.robotinvader.knightmare/hi-256-0-9e08d83bc8d01649e167131d197ada1cd1783fb0">
-          <div style="width:700px;">
-          <p style="margin-top:26px;margin-bottom:12px;">Robot Invader chose 
-              Android as the launch platform for their first game, 
-              <a data-g-event="Developers Page" data-g-label="Case Study Link" href=
-              "//play.google.com/store/apps/details?id=com.robotinvader.knightmare"><em>Wind-up
-              Knight</em></a>.
-           </p>
-           <p>
-              Hear from the developers themselves how Android helped them reach more
-              than 100 devices with a single app binary, then iterate rapidly to ensure
-              a great experience for users.
-           </p>
-           </div>
-           <iframe style="float:left;
-             margin-right:24px;
-             margin-top:14px;" width="700" height="394" src=
-             "http://www.youtube.com/embed/hTtlLiUTowY" frameborder="0" allowfullscreen></iframe>
-   </div> 
-</div>
\ No newline at end of file
+<p><a class="landing-page-link" href="{@docRoot}about/start.html">GET STARTED</a></p>
\ No newline at end of file
diff --git a/docs/html/about/versions/android-1.5.jd b/docs/html/about/versions/android-1.5.jd
index ca8771b..522f855 100644
--- a/docs/html/about/versions/android-1.5.jd
+++ b/docs/html/about/versions/android-1.5.jd
@@ -80,12 +80,12 @@
     //$(".toggleme", toggleable).slideDown("fast");
     toggleable.removeClass("closed");
     toggleable.addClass("open");
-    $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
+    $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/styles/disclosure_up.png"));
   } else {
     //$(".toggleme", toggleable).slideUp("fast");
     toggleable.removeClass("open");
     toggleable.addClass("closed");
-    $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
+    $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/styles/disclosure_down.png"));
   }
   return false;
 }
@@ -115,7 +115,7 @@
 
 <div class="toggleable opened">
   <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" />
+        <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-img" height="9px" width="9px" />
         Android 1.5, Revision 4</a> <em>(May 2010)</em></a>
   <div class="toggleme">
 <dl>
@@ -138,7 +138,7 @@
 
 <div class="toggleable closed">
   <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+        <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
         Android 1.5, Revision 3</a> <em>(July 2009)</em></a>
   <div class="toggleme">
 <dl>
@@ -152,7 +152,7 @@
 
 <div class="toggleable closed">
   <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+        <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
         Android 1.5, Revision 2</a> <em>(May 2009)</em></a>
   <div class="toggleme">
 <p>Not available as an SDK component &mdash; please use Android 1.5, r3 instead. </p>
@@ -161,7 +161,7 @@
 
 <div class="toggleable closed">
   <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+        <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
         Android 1.5, Revision 1</a> <em>(April 2009)</em></a>
   <div class="toggleme">
 <p>Not available as an SDK component &mdash; please use Android 1.5, r3 instead. </p>
diff --git a/docs/html/about/versions/android-1.6.jd b/docs/html/about/versions/android-1.6.jd
old mode 100644
new mode 100755
index e727f55..dc30b49
--- a/docs/html/about/versions/android-1.6.jd
+++ b/docs/html/about/versions/android-1.6.jd
@@ -63,7 +63,7 @@
 <h2 id="features">Platform Highlights</h2>
 
 <p>For a list of new user features and platform highlights, see the <a
-href="http://developer.android.com/about/versions/android-{@sdkPlatformVersion}-highlights.html">Android 
+href="http://developer.android.com/about/versions/android-{@sdkPlatformVersion}-highlights.html">Android
 {@sdkPlatformVersion} Platform Highlights</a> document.</p>
 
 
@@ -82,12 +82,12 @@
     //$(".toggleme", toggleable).slideDown("fast");
     toggleable.removeClass("closed");
     toggleable.addClass("open");
-    $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
+    $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/styles/disclosure_up.png"));
   } else {
     //$(".toggleme", toggleable).slideUp("fast");
     toggleable.removeClass("open");
     toggleable.addClass("closed");
-    $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
+    $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/styles/disclosure_down.png"));
   }
   return false;
 }
@@ -117,7 +117,7 @@
 
 <div class="toggleable opened">
   <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" />
+        <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-img" height="9px" width="9px" />
         Android 1.6, Revision 3</a> <em>(May 2010)</em></a>
   <div class="toggleme">
 <dl>
@@ -125,11 +125,11 @@
 <dd>
 <p>Requires SDK Tools r6 or higher.</p>
 </dd>
-<dt>Tools:</dt> 
+<dt>Tools:</dt>
 <dd>
-<ul> 
+<ul>
 <li>Adds support for library projects in the Ant build system.</li>
-</ul> 
+</ul>
 </dd>
 </dl>
  </div>
@@ -137,7 +137,7 @@
 
 <div class="toggleable closed">
   <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+        <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
         Android 1.6, Revision 2</a> <em>(December 2009)</em></a>
   <div class="toggleme">
 <dl>
@@ -146,33 +146,33 @@
 <p>Requires SDK Tools r4 or higher.</p>
 </dd>
 
-<dt>API related:</dt> 
+<dt>API related:</dt>
 <dd>
-<ul> 
+<ul>
 <li>Properly exposes CDMA-related constants in <code><a href="{@docRoot}reference/android/telephony/TelephonyManager.html">android.telephony.TelephonyManager</a></code>: <code>DATA_ACTIVITY_DORMANT</code>,
 <code>PHONE_TYPE_CDMA</code>, <code>NETWORK_TYPE_CDMA</code>,
 <code>NETWORK_TYPE_EVDO_0</code>, <code>NETWORK_TYPE_EVDO_A</code>, and
-<code>NETWORK_TYPE_1xRTT</code>.</li> 
-</ul> 
+<code>NETWORK_TYPE_1xRTT</code>.</li>
+</ul>
 </dd>
-<dt>System image:</dt> 
+<dt>System image:</dt>
 <dd>
-<ul> 
-<li>Fixes bug so that Bitmap's density is now propagated through Parcelable.</li> 
-<li>Fixes NinePatchDrawable to properly scale its reported padding for compatibility mode.</li> 
-<li>Fixes TextView to properly compute styled font metrics based on the screen density.</li> 
+<ul>
+<li>Fixes bug so that Bitmap's density is now propagated through Parcelable.</li>
+<li>Fixes NinePatchDrawable to properly scale its reported padding for compatibility mode.</li>
+<li>Fixes TextView to properly compute styled font metrics based on the screen density.</li>
 <li>Updates kernel to 2.6.29, to match kernel on commercially
-available Android-powered devices.</li> 
-</ul> 
+available Android-powered devices.</li>
+</ul>
 </dd>
-<dt>Tools:</dt> 
+<dt>Tools:</dt>
 <dd>
-<ul> 
+<ul>
 <li>Adds new Ant build system with support for Emma instrumentation projects
-(code coverage).</li> 
-<li>Fixes emulator skins to properly emulate d-pad in landscape mode.</li> 
-<li>Fixes density rendering in the layout editor in ADT.</li> 
-</ul> 
+(code coverage).</li>
+<li>Fixes emulator skins to properly emulate d-pad in landscape mode.</li>
+<li>Fixes density rendering in the layout editor in ADT.</li>
+</ul>
 </dd>
 </dl>
  </div>
@@ -180,7 +180,7 @@
 
 <div class="toggleable closed">
   <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+        <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
         Android 1.6, Revision 1</a> <em>(September 2009)</em></a>
   <div class="toggleme">
 <dl>
@@ -227,8 +227,8 @@
           <li><code>OvershootInterpolator</code></li>
         </ul>
       </li>
-      <li>New XML attribute <code>android:onClick</code> to specify a View's 
-<a href="/reference/android/view/View.OnClickListener.html">View.OnClickListener</a> 
+      <li>New XML attribute <code>android:onClick</code> to specify a View's
+<a href="/reference/android/view/View.OnClickListener.html">View.OnClickListener</a>
 from a layout file.
       </li>
       <li>New support for dealing with varying screen densities. Density
@@ -236,8 +236,8 @@
 correct scaling. The framework will automatically scale bitmaps and
 nine-patches based on the density the resource was found under and the
 density of the screen, etc.
-      </li><p>To use APIs introduced in Android {@sdkPlatformVersion} in your application, you need to 
-set the proper value, "{@sdkPlatformApiLevel}", in the attributes of the <code>&lt;uses-sdk&gt;</code> 
+      </li><p>To use APIs introduced in Android {@sdkPlatformVersion} in your application, you need to
+set the proper value, "{@sdkPlatformApiLevel}", in the attributes of the <code>&lt;uses-sdk&gt;</code>
 element in your application's manifest. </p>
     </ul>
 
@@ -295,33 +295,33 @@
 <h3 id="AndroidManifest">Android Manifest elements</h3>
 
     <ul>
-      <li>New <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">{@code 
-      <supports-screens>}</a> element lets you specify the device screen sizes that your
+      <li>New <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html">{@code
+      &lt;supports-screens>}</a> element lets you specify the device screen sizes that your
       application is designed and tested to support, where "size" is a combination
-      of resolution and density. If your application is run on a device whose screen 
-      size is not specified in the <code>&lt;supports-screen&gt;</code> element, the system 
+      of resolution and density. If your application is run on a device whose screen
+      size is not specified in the <code>&lt;supports-screen&gt;</code> element, the system
       displays the application in <em>compatibility mode</em>, which performs best-effort scaling
-      of the application UI to match the resolution and density of the screen. 
+      of the application UI to match the resolution and density of the screen.
 
     <p>The attributes available for defining an application's screen support are:
 
         <ul>
 
           <li><code>smallScreen</code>: Boolean value that indicates whether the
-            application is designed to run on devices with small screens. 
+            application is designed to run on devices with small screens.
             Examples: QVGA low density; VGA high density.
           </li>
-          <li><code>normalScreens</code>: Boolean value that indicates whether 
-            the application is designed to run on devices with normal screens. 
+          <li><code>normalScreens</code>: Boolean value that indicates whether
+            the application is designed to run on devices with normal screens.
             Examples: WQVGA low density; HVGA medium density; WVGA high density.
           </li>
-          <li><code>largeScreens</code>: Boolean value that indicates whether 
-            the application is designed to run on devices with significantly 
+          <li><code>largeScreens</code>: Boolean value that indicates whether
+            the application is designed to run on devices with significantly
             larger screens, such that special care may be required on
-            the application's part to make proper use of the screen area. 
+            the application's part to make proper use of the screen area.
             Examples: VGA medium density; WVGA medium density.
           </li>
-          <li><code>anyDensity</code>: Boolean value that indicates whether 
+          <li><code>anyDensity</code>: Boolean value that indicates whether
             the application can accommodate any screen density.
           </li>
           <li><code>resizable</code>: Boolean value that indicates whether
@@ -331,28 +331,28 @@
     </p>
     </li>
 
-      <li>New <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code <uses-feature>}</a>
+      <li>New <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code &lt;uses-feature>}</a>
         element lets an application specify hardware (or other)
         features that it requires to function normally. When an application
         specifies such features, the system allows the application to be installed only
         on devices that offer the required features. The element supports these
         attributes:
         <ul>
-          <li><code>name</code>: The name of the feature required by the application. Currently accepts 
-          "android.hardware.camera" and "android.hardware.camera.autofocus" values, which specify that a 
+          <li><code>name</code>: The name of the feature required by the application. Currently accepts
+          "android.hardware.camera" and "android.hardware.camera.autofocus" values, which specify that a
           camera and camera autofocus are required, respectively.</li>
           <li><code>glEsVersion</code>: Indicates the minimum version of OpenGL ES required.</li>
         </ul>
       </li>
-      <li>New attributes for the 
-      <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">{@code <uses-sdk>}</a> element:
+      <li>New attributes for the
+      <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">{@code &lt;uses-sdk>}</a> element:
         <ul>
-          <li><code>targetSdkVersion</code>: Indicates the API Level that the application is targeting. 
-          It is able to run on older versions (down to minSdkVersion), but was explicitly tested to 
-          work with the version specified here. Specifying this version allows the platform to 
-          disable compatibility code that is not required or enable newer features that are not 
+          <li><code>targetSdkVersion</code>: Indicates the API Level that the application is targeting.
+          It is able to run on older versions (down to minSdkVersion), but was explicitly tested to
+          work with the version specified here. Specifying this version allows the platform to
+          disable compatibility code that is not required or enable newer features that are not
           available to older applications. </li>
-          <li><code>maxSdkVersion</code>: Indicates the maximum API Level on which an application is 
+          <li><code>maxSdkVersion</code>: Indicates the maximum API Level on which an application is
           designed to run. <strong>Important:</strong> Please read the <a
           href="{@docRoot}guide/topics/manifest/uses-sdk-element.html"><code>&lt;uses-sdk&gt;</code></a>
           documentation before using this attribute. </li>
@@ -366,13 +366,13 @@
 
     <ul>
       <li>{@link android.Manifest.permission#CHANGE_WIFI_MULTICAST_STATE
-          CHANGE_WIFI_MULTICAST_STATE}: Allows applications to enter Wi-Fi 
+          CHANGE_WIFI_MULTICAST_STATE}: Allows applications to enter Wi-Fi
           Multicast mode.
       </li>
-      <li>{@link android.Manifest.permission#GLOBAL_SEARCH}: Allows the 
+      <li>{@link android.Manifest.permission#GLOBAL_SEARCH}: Allows the
           global search system to access the data of a specified content provider.
-      </li> 
-      <li>{@link android.Manifest.permission#INSTALL_LOCATION_PROVIDER INSTALL_LOCATION_PROVIDER}: 
+      </li>
+      <li>{@link android.Manifest.permission#INSTALL_LOCATION_PROVIDER INSTALL_LOCATION_PROVIDER}:
           Allows an application to install a location provider into the Location Manager.
       </li>
       <li>READ_HISTORY_BOOKMARKS:
@@ -380,13 +380,13 @@
           and bookmarks.
       </li>
       <li>WRITE_HISTORY_BOOKMARKS:
-          Allows an application to write (but not read) the user's browsing history 
+          Allows an application to write (but not read) the user's browsing history
           and bookmarks.
       </li>
-      <li>{@link android.Manifest.permission#WRITE_EXTERNAL_STORAGE WRITE_EXTERNAL_STORAGE}: 
+      <li>{@link android.Manifest.permission#WRITE_EXTERNAL_STORAGE WRITE_EXTERNAL_STORAGE}:
           Allows an application to write to external storage. Applications using API Level 3
-          and lower will be implicitly granted this permission (and this will be visible to 
-          the user); Applications using API Level 4 or higher must explicitly request this 
+          and lower will be implicitly granted this permission (and this will be visible to
+          the user); Applications using API Level 4 or higher must explicitly request this
           permission.
       </li>
     </ul>
@@ -394,8 +394,8 @@
 
 <h3 id="api-diff">API differences report</h3>
 
-<p>For a detailed view of API changes in Android {@sdkPlatformVersion} (API Level {@sdkPlatformApiLevel}), as compared to 
-the previous version, see the <a href="{@docRoot}sdk/api_diff/{@sdkPlatformApiLevel}/changes.html">API 
+<p>For a detailed view of API changes in Android {@sdkPlatformVersion} (API Level {@sdkPlatformApiLevel}), as compared to
+the previous version, see the <a href="{@docRoot}sdk/api_diff/{@sdkPlatformApiLevel}/changes.html">API
 Differences Report</a>.</p>
 
 <h2 id="apps">Built-in Applications</h2>
@@ -438,8 +438,8 @@
 <p>The system image included in the downloadable platform provides a variety of
 built-in locales. In some cases, region-specific strings are available for the
 locales. In other cases, a default version of the language is used. The
-languages that are available in the Android {@sdkPlatformVersion} system 
-image are listed below (with <em>language</em>_<em>country/region</em> 
+languages that are available in the Android {@sdkPlatformVersion} system
+image are listed below (with <em>language</em>_<em>country/region</em>
 locale descriptor).</p>
 
 <table style="border:0;margin-bottom:0;padding-bottom:0;">
@@ -479,13 +479,13 @@
 </tr>
 </table>
 
-<p>Localized UI strings match the locales that are accessible 
+<p>Localized UI strings match the locales that are accessible
 through Settings.</p>
 
 <h2 id="skins">Emulator Skins</h2>
 
-<p>The downloadable platform includes a set of emulator skins that you can 
-use for modeling your application in different screen sizes and resolutions. 
+<p>The downloadable platform includes a set of emulator skins that you can
+use for modeling your application in different screen sizes and resolutions.
 The emulator skins are: </p>
 
 <ul>
diff --git a/docs/html/about/versions/android-2.0.1.jd b/docs/html/about/versions/android-2.0.1.jd
index ba00231..2974152 100644
--- a/docs/html/about/versions/android-2.0.1.jd
+++ b/docs/html/about/versions/android-2.0.1.jd
@@ -82,12 +82,12 @@
     //$(".toggleme", toggleable).slideDown("fast");
     toggleable.removeClass("closed");
     toggleable.addClass("open");
-    $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
+    $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/styles/disclosure_up.png"));
   } else {
     //$(".toggleme", toggleable).slideUp("fast");
     toggleable.removeClass("open");
     toggleable.addClass("closed");
-    $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
+    $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/styles/disclosure_down.png"));
   }
   return false;
 }
@@ -113,7 +113,7 @@
 
 <div class="toggleable closed">
   <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+        <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
         Android 2.0.1, Revision 1</a> <em>(December 2009)</em></a>
   <div class="toggleme">
 <dl>
diff --git a/docs/html/about/versions/android-2.0.jd b/docs/html/about/versions/android-2.0.jd
index 82bb78f..5c0d3dc 100644
--- a/docs/html/about/versions/android-2.0.jd
+++ b/docs/html/about/versions/android-2.0.jd
@@ -75,12 +75,12 @@
     //$(".toggleme", toggleable).slideDown("fast");
     toggleable.removeClass("closed");
     toggleable.addClass("open");
-    $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
+    $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/styles/disclosure_up.png"));
   } else {
     //$(".toggleme", toggleable).slideUp("fast");
     toggleable.removeClass("open");
     toggleable.addClass("closed");
-    $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
+    $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/styles/disclosure_down.png"));
   }
   return false;
 }
@@ -106,7 +106,7 @@
 
 <div class="toggleable opened">
   <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" />
+        <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-img" height="9px" width="9px" />
         Android 2.0, Revision 1</a> <em>(October 2009)</em></a>
   <div class="toggleme">
 <dl>
diff --git a/docs/html/about/versions/android-2.1.jd b/docs/html/about/versions/android-2.1.jd
index 2d5988a..02dec7e 100644
--- a/docs/html/about/versions/android-2.1.jd
+++ b/docs/html/about/versions/android-2.1.jd
@@ -78,7 +78,7 @@
 <div class="toggle-content opened" style="padding-left:1em;">
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-opened.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_up.png"
 class="toggle-content-img" alt="" />
   Android {@sdkPlatformVersion}, Revision 3</a> <em>(July 2011)</em>
 </a></p>
@@ -106,7 +106,7 @@
 <div class="toggle-content closed" style="padding-left:1em;">
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />
   Android {@sdkPlatformVersion}, Revision 2</a> <em>(May 2010)</em>
 </a></p>
@@ -133,7 +133,7 @@
 <div class="toggle-content closed" style="padding-left:1em;">
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />
   Android {@sdkPlatformVersion}, Revision 1</a> <em>(January 2010)</em>
 </a></p>
diff --git a/docs/html/about/versions/android-4.0-highlights.jd b/docs/html/about/versions/android-4.0-highlights.jd
old mode 100644
new mode 100755
index f2b35ac..c980af6
--- a/docs/html/about/versions/android-4.0-highlights.jd
+++ b/docs/html/about/versions/android-4.0-highlights.jd
@@ -143,7 +143,7 @@
 favorites tray</strong></p>
 
 <p>New home screen <strong>folders</strong> offer a new way for users to group
-their apps and shortcuts logically, just by dragging one onto another. Also, 
+their apps and shortcuts logically, just by dragging one onto another. Also,
 in All Apps launcher, users can now simply <strong>drag an app</strong> to get
 information about it or immediately uninstall it, or disable a pre-installed app.</p>
 
@@ -210,7 +210,7 @@
 
 <p style="margin-top:1em;margin-bottom:.75em;"><strong>Improved text input and
 spell-checking</strong></p>
-  
+
 <p>The soft keyboard in Android 4.0 makes text input even faster and more
 accurate. Error correction and word suggestion are improved through a new set of
 default dictionaries and more accurate heuristics for handling cases such as
@@ -693,7 +693,7 @@
 <h3 id="communication-dev">Communication and sharing</h3>
 
 <p>Android 4.0 extends social and sharing features to any application on the
-device. Applications can integrate contacts, profile data, stream items, 
+device. Applications can integrate contacts, profile data, stream items,
 and calendar events from any of the user’s activities or social networks.</p>
 
 
@@ -914,8 +914,8 @@
 Because hierarchies are flatter, developers can also manage alignments between
 components that are visually related to each other even when they are not
 logically related, for precise control over application UI. GridLayout is also
-specifically designed to be configured by drag-and-drop design tools such as the
-ADT Plug-in for Eclipse.</p>
+specifically designed to be configured by drag-and-drop design tools such as
+Android Studio.</p>
 
 
 <p style="margin-top:1em;margin-bottom:.75em;"><strong>OpenGL ES texture
@@ -998,7 +998,7 @@
 screen position, and more. Applications can also request changes to certain
 properties to help manage focus and selected state. For example, an
 accessibility service could use these new capabilities to add convenient
-features such as screen-search by text. </p> 
+features such as screen-search by text. </p>
 
 
 <p style="margin-top:1em;margin-bottom:.75em;"><strong>Text-to-speech
diff --git a/docs/html/about/versions/android-4.0.3.jd b/docs/html/about/versions/android-4.0.3.jd
index fef9ce1..3be684d 100644
--- a/docs/html/about/versions/android-4.0.3.jd
+++ b/docs/html/about/versions/android-4.0.3.jd
@@ -45,7 +45,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" /><strong>Table of Contents</strong>
   </a></p>
 
@@ -264,7 +264,7 @@
 {@link android.media.CamcorderProfile#QUALITY_TIME_LAPSE_QVGA} constants.</li>
 
 <li>New methods {@link android.hardware.Camera.Parameters#setVideoStabilization(boolean) setVideoStabilization()},
-{@link android.hardware.Camera.Parameters#getVideoStabilization() setVideoStabilization()}, and {@link android.hardware.Camera.Parameters#isVideoStabilizationSupported() isVideoStabilizationSupported()}
+{@link android.hardware.Camera.Parameters#getVideoStabilization() getVideoStabilization()}, and {@link android.hardware.Camera.Parameters#isVideoStabilizationSupported() isVideoStabilizationSupported()}
 let you check and manage video stabilization for a {@link android.hardware.Camera}.</li>
 </ul>
 
diff --git a/docs/html/about/versions/android-4.0.jd b/docs/html/about/versions/android-4.0.jd
index 1b103b7..4318582 100644
--- a/docs/html/about/versions/android-4.0.jd
+++ b/docs/html/about/versions/android-4.0.jd
@@ -49,7 +49,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />
     <strong>Table of Contents</strong>
   </a></p>
diff --git a/docs/html/about/versions/android-4.2.jd b/docs/html/about/versions/android-4.2.jd
old mode 100644
new mode 100755
index f903156..c26d4a2
--- a/docs/html/about/versions/android-4.2.jd
+++ b/docs/html/about/versions/android-4.2.jd
@@ -549,7 +549,7 @@
 </dl>
 
 <p class="note"><strong>Note:</strong> Although Filterscript support is in the platform, developer
-support will be available in ADT and SDK Tools Release 21.0.1. </p>
+support will be available in SDK Tools Release 21.0.1. </p>
 
 
 <p>For a detailed view of all API changes in Android 4.2, see the
diff --git a/docs/html/about/versions/android-4.4.jd b/docs/html/about/versions/android-4.4.jd
index 0d58a1d..b898fe3 100644
--- a/docs/html/about/versions/android-4.4.jd
+++ b/docs/html/about/versions/android-4.4.jd
@@ -149,7 +149,7 @@
 <p>Your app might behave differently when running on Android 4.4, especially when you update your app's <a
 href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> to "19" or higher.</p>
 
-<p>The code underlying the {@link android.webkit.WebView} class and related APIs has been upgraded to be based on a modern snapshot of the Chromium source code. This brings a variety of improvements for performance, support for new HTML5 features, and support for remote debugging of your {@link android.webkit.WebView} content. The scope of this upgrade means that if your app uses {@link android.webkit.WebView}, it's behavior may be impacted in some cases. Although known behavior changes are documented and mostly affect your app only when you update your app's <a
+<p>The code underlying the {@link android.webkit.WebView} class and related APIs has been upgraded to be based on a modern snapshot of the Chromium source code. This brings a variety of improvements for performance, support for new HTML5 features, and support for remote debugging of your {@link android.webkit.WebView} content. The scope of this upgrade means that if your app uses {@link android.webkit.WebView}, its behavior may be impacted in some cases. Although known behavior changes are documented and mostly affect your app only when you update your app's <a
 href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> to "19" or higher&mdash;the new {@link android.webkit.WebView} operates in "quirks mode" to provide some legacy functionality in apps that target API level 18 and lower&mdash;it's possible that your app depends on unknown behaviors from the previous version of {@link android.webkit.WebView}.</p>
 
 <p>So if your existing app uses {@link android.webkit.WebView}, it's important that you test on Android 4.4 as soon as possible and consult <a href="{@docRoot}guide/webapps/migrating.html">Migrating to WebView in Android 4.4</a> for information about how your app might be affected when you update your <a
diff --git a/docs/html/about/versions/kitkat.jd b/docs/html/about/versions/kitkat.jd
index dff3508..2987bd4 100644
--- a/docs/html/about/versions/kitkat.jd
+++ b/docs/html/about/versions/kitkat.jd
@@ -58,11 +58,10 @@
     <img src="{@docRoot}images/kk-devices.png" alt="Android 4.4 on phone and tablet" width="380">
   </div>
 
-  <div class="landing-docs" style="float:right;clear:both;margin:22px 0 2em 3em;">
-  <div class="col-4 normal-links highlights" style="font-size:12px;">
-    <h3 id="thisd" >Key Developer Features</h3>
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2 id="features" >Key Developer Features</h3>
     <ul style="list-style-type:none;">
-      <!--<li><a href="#44-ui">UI refresh</a></li>-->
       <li><a href="#44-hce">Host Card Emulation</a></li>
       <li><a href="#44-printing">Printing framework</a></li>
       <li><a href="#44-storage-access">Storage access framework</a></li>
diff --git a/docs/html/about/versions/marshmallow/android-6.0-changes.jd b/docs/html/about/versions/marshmallow/android-6.0-changes.jd
new file mode 100644
index 0000000..b44142e
--- /dev/null
+++ b/docs/html/about/versions/marshmallow/android-6.0-changes.jd
@@ -0,0 +1,418 @@
+page.title=Android 6.0 Changes
+page.keywords=marshmallow,android60,sdk,compatibility
+meta.tags=marshmallow,api23,android60,androidm
+sdk.platform.apiLevel=23
+page.image=images/cards/samples-new_2x.png
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>In this document</h2>
+
+<ol id="toc44" class="hide-nested">
+    <li><a href="#behavior-runtime-permissions">Runtime Permissions</a></li>
+    <li><a href="#behavior-power">Doze and App Standby</a></li>
+    <li><a href="#behavior-apache-http-client">Apache HTTP Client Removal</a></li>
+    <li><a href="#behavior-apache-http-client">BoringSSL</a></li>
+    <li><a href="#behavior-hardware-id">Access to Hardware Identifiers</a></li>
+    <li><a href="#behavior-notifications">Notifications</a></li>
+    <li><a href="#behavior-audiomanager-Changes">AudioManager Changes</a></li>
+    <li><a href="#behavior-text-selection">Text Selection</a></li>
+    <li><a href="#behavior-bookmark-browser">Browser Bookmark Changes</a></li>
+    <li><a href="#behavior-keystore">Android Keystore Changes</a></li>
+    <li><a href="#behavior-network">Wi-Fi and Networking Changes</a></li>
+    <li><a href="#behavior-camera">Camera Service Changes</a></li>
+    <li><a href="#behavior-runtime">Runtime</a></li>
+    <li><a href="#behavior-apk-validation">APK Validation</a></li>
+    <li><a href="#behavior-usb">USB Connection</a></li>
+    <li><a href="#behavior-afw">Android for Work Changes</a></li>
+</ol>
+
+<h2>API Differences</h2>
+<ol>
+<li><a href="{@docRoot}sdk/api_diff/23/changes.html">API level 22 to 23 &raquo;</a> </li>
+</ol>
+
+
+<h2>See Also</h2>
+<ol>
+<li><a href="{@docRoot}about/versions/marshmallow/android-6.0.html">Android 6.0 API Overview</a> </li>
+</ol>
+
+</div>
+</div>
+
+<p>Along with new features and capabilities, Android 6.0 (API level 23) includes a variety of
+system changes and API behavior changes. This document highlights
+some of the key changes that you should understand and account for in your apps.</p>
+
+<p>If you have previously published an app for Android, be aware that these changes in the
+platform affect your app.</p>
+
+<h2 id="behavior-runtime-permissions">Runtime Permissions</h1>
+<p>This release introduces a new permissions model, where users can now directly manage
+app permissions at runtime. This model gives users improved visibility and control over
+permissions, while streamlining the installation and auto-update processes for app developers.
+Users can grant or revoke permissions individually for installed apps. </p>
+
+<p>On your apps that target Android 6.0 (API level 23) or higher, make sure to check for and request
+permissions at runtime. To determine if your app has been granted a permission, call the
+new {@link android.content.Context#checkSelfPermission(java.lang.String) checkSelfPermission()}
+method. To request a permission, call the new
+{@link android.app.Activity#requestPermissions(java.lang.String[], int) requestPermissions()}
+method. Even if your app is not targeting Android 6.0 (API level 23), you should test your app under
+the new permissions model.</p>
+
+<p>For details on supporting the new permissions model in your app, see
+<a href="{@docRoot}training/permissions/index.html">
+Working with System Permissions</a>. For tips on how to assess the impact on your app,
+see <a href="{@docRoot}training/permissions/best-practices.html#testing">Permissions Best Practices</a>.</p>
+
+<h2 id="behavior-power">Doze and App Standby</h2>
+<p>This release introduces new power-saving optimizations for idle devices and apps. These
+features affect all apps so make sure to test your apps in these new modes.</p>
+<ul>
+<li><strong>Doze</strong>: If a user unplugs a device and leaves it stationary, with its screen off,
+for a period of time, the device goes into <em>Doze</em> mode, where it attempts to keep the system
+in a sleep state. In this mode, devices periodically resume normal operations for brief periods of
+time so that app syncing can occur and the system can perform any pending operations.
+<li><strong>App Standby</strong>: App Standby allows the system to determine that an app is idle
+when the user is not actively using it. The system makes this determination when the user does not
+touch the app for a certain period of time. If the device is unplugged, the system disables network
+access and suspends syncs and jobs for the apps it deems idle.</li>
+</ul>
+
+<p>To learn more about these power-saving changes, see
+<a href="{@docRoot}training/monitoring-device-state/doze-standby.html">Optimizing for Doze and App Standby</a>.</p>
+
+<h2 id="behavior-apache-http-client">Apache HTTP Client Removal</h2>
+
+<p>Android 6.0 release removes support for the Apache HTTP client. If your app is using this client and
+targets Android 2.3 (API level 9) or higher, use the {@link java.net.HttpURLConnection} class
+instead. This API is more efficient because it reduces network use through transparent compression
+and response caching, and minimizes power consumption. To continue using the Apache HTTP APIs, you
+must first declare the following compile-time dependency in your {@code build.gradle} file:
+</p>
+<pre>
+android {
+    useLibrary 'org.apache.http.legacy'
+}
+</pre>
+
+<h2 id="boringSSL">BoringSSL </h2>
+
+<p>Android is moving away from OpenSSL to the
+<a href="https://boringssl.googlesource.com/boringssl/" class="external-link">BoringSSL</a>
+library. If you’re using the Android NDK in your app, don't link against cryptographic libraries
+that are not a part of the NDK API, such as {@code libcrypto.so} and {@code libssl.so}. These
+libraries are not public APIs, and may change or break without notice across releases and devices.
+In addition, you may expose yourself to security vulnerabilities. Instead, modify your
+native code to call the Java cryptography APIs via JNI or to statically link against a
+cryptography library of your choice.</p>
+
+<h2 id="behavior-hardware-id">Access to Hardware Identifier</h2>
+<p>To provide users with greater data protection, starting in this release, Android
+removes programmatic access to the device’s local hardware identifier for
+apps using the Wi-Fi and Bluetooth APIs. The
+{@link android.net.wifi.WifiInfo#getMacAddress() WifiInfo.getMacAddress()} and the
+{@link android.bluetooth.BluetoothAdapter#getAddress() BluetoothAdapter.getAddress()} methods
+now return a constant value of {@code 02:00:00:00:00:00}.</p>
+
+<p>To access the hardware identifiers of nearby external devices via Bluetooth and Wi-Fi scans,
+your app must now have the {@link android.Manifest.permission#ACCESS_FINE_LOCATION} or
+{@link android.Manifest.permission#ACCESS_COARSE_LOCATION} permissions:</p>
+<ul>
+<li>{@link android.net.wifi.WifiManager#getScanResults() WifiManager.getScanResults()}</li>
+<li>{@link android.bluetooth.BluetoothDevice#ACTION_FOUND BluetoothDevice.ACTION_FOUND}</li>
+<li>{@link android.bluetooth.le.BluetoothLeScanner#startScan(android.bluetooth.le.ScanCallback)
+BluetoothLeScanner.startScan()}</li>
+</ul>
+
+<p class="note"><strong>Note</strong>: When a device running Android 6.0 (API level 23) initiates a
+background Wi-Fi or Bluetooth scan, the operation is visible to external devices as
+originating from a randomized MAC address.</p>
+
+<h2 id="behavior-notifications">Notifications</h2>
+<p>
+This release removes the {@code Notification.setLatestEventInfo()} method. Use the
+{@link android.app.Notification.Builder} class instead to construct notifications. To update a
+notification repeatedly, reuse the {@link android.app.Notification.Builder} instance. Call the
+{@link android.app.Notification.Builder#build()} method to get
+updated {@link android.app.Notification} instances.
+</p>
+<p>The {@code adb shell dumpsys notification} command no longer prints out your notification text.
+Use the {@code adb shell dumpsys notification --noredact} command instead to print out the text
+in a notification object.</p>
+
+<h2 id="behavior-audiomanager-Changes">AudioManager Changes</h2>
+<p>Setting the volume directly or muting specific streams via the {@link android.media.AudioManager}
+class is no longer supported. The {@link android.media.AudioManager#setStreamSolo(int,boolean)
+setStreamSolo()} method is deprecated, and you should call the
+{@link android.media.AudioManager#requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, int, int) requestAudioFocus()}
+method instead. Similarly, the
+{@link android.media.AudioManager#setStreamMute(int,boolean) setStreamMute()} method is
+deprecated; instead, call the {@link android.media.AudioManager#adjustStreamVolume(int, int, int)
+adjustStreamVolume()} method and pass in the direction value
+{@link android.media.AudioManager#ADJUST_MUTE} or
+{@link android.media.AudioManager#ADJUST_UNMUTE}.</p>
+
+
+<h2 id="behavior-text-selection">Text Selection</h2>
+
+<img src="{@docRoot}images/android-6.0/text-selection.gif"
+style="float:right; margin:0 0 20px 30px" width="360" height="640" />
+
+<p>When users select text in your app, you can now display text selection actions such as
+<em>Cut</em>, <em>Copy</em>, and <em>Paste</em> in a
+<a href="http://www.google.com/design/spec/patterns/selection.html#selection-text-selection"
+class="external-link">floating toolbar</a>. The user interaction implementation is similar to that
+for the contextual action bar, as described in
+<a href="{@docRoot}guide/topics/ui/menus.html#CABforViews">
+Enabling the contextual action mode for individual views</a>.</p>
+
+<p>To implement a floating toolbar for text selection, make the following changes in your existing
+apps:</p>
+<ol>
+<li>In your {@link android.view.View} or {@link android.app.Activity} object, change your
+{@link android.view.ActionMode} calls from
+{@code startActionMode(Callback)} to {@code startActionMode(Callback, ActionMode.TYPE_FLOATING)}.</li>
+<li>Take your existing implementation of {@code ActionMode.Callback} and make it extend
+{@link android.view.ActionMode.Callback2} instead.</li>
+<li>Override the
+{@link android.view.ActionMode.Callback2#onGetContentRect(android.view.ActionMode, android.view.View, android.graphics.Rect) onGetContentRect()}
+method to provide the coordinates of the content {@link android.graphics.Rect} object
+(such as a text selection rectangle) in the view.</li>
+<li>If the rectangle positioning is no longer valid, and this is the only element to be invalidated,
+call the {@link android.view.ActionMode#invalidateContentRect() invalidateContentRect()} method.</li>
+</ol>
+
+<p>If you are using <a href="{@docRoot}tools/support-library/index.html">
+Android Support Library</a> revision 22.2, be aware that floating toolbars are not
+backward-compatible and appcompat takes control over {@link android.view.ActionMode} objects by
+default. This prevents floating toolbars from being displayed. To enable
+{@link android.view.ActionMode} support in an
+{@link android.support.v7.app.AppCompatActivity}, call
+{@link android.support.v7.app.AppCompatActivity#getDelegate()}, then call
+{@link android.support.v7.app.AppCompatDelegate#setHandleNativeActionModesEnabled(boolean)
+setHandleNativeActionModesEnabled()} on the returned
+{@link android.support.v7.app.AppCompatDelegate} object and set the input
+parameter to {@code false}. This call returns control of {@link android.view.ActionMode} objects to
+the framework. In devices running Android 6.0 (API level 23), that allows the framework to support
+{@link android.support.v7.app.ActionBar} or floating toolbar modes, while on devices running
+Android 5.1 (API level 22) or lower, only the {@link android.support.v7.app.ActionBar} modes are
+supported.</p>
+
+<h2 id="behavior-bookmark-browser">Browser Bookmark Changes</h2>
+<p>This release removes support for global bookmarks. The
+{@code android.provider.Browser.getAllBookmarks()} and {@code android.provider.Browser.saveBookmark()}
+methods are now removed. Likewise, the {@code READ_HISTORY_BOOKMARKS} and {@code WRITE_HISTORY_BOOKMARKS}
+permissions are removed. If your app targets Android 6.0 (API level 23) or higher, don't access
+bookmarks from the global provider or use the bookmark permissions. Instead, your app should store
+bookmarks data internally.</p>
+
+<h2 id="behavior-keystore">Android Keystore Changes</h2>
+<p>With this release, the
+<a href="{@docRoot}training/articles/keystore.html">Android Keystore provider</a> no longer supports
+DSA. ECDSA is still supported.</p>
+
+<p>Keys which do not require encryption at rest will no longer be deleted when secure lock screen
+is disabled or reset (for example, by the user or a Device Administrator). Keys which require
+encryption at rest will be deleted during these events.</p>
+
+<h2 id="behavior-network">Wi-Fi and Networking Changes</h2>
+
+<p>This release introduces the following behavior changes to the Wi-Fi and networking APIs.</p>
+<ul>
+<li>Your apps can now change the state of {@link android.net.wifi.WifiConfiguration} objects only
+if you created these objects. You are not permitted to modify or delete
+{@link android.net.wifi.WifiConfiguration} objects created by the user or by other apps.
+</li>
+<li>
+Previously, if an app forced the device to connect to a specific Wi-Fi network by using
+{@link android.net.wifi.WifiManager#enableNetwork(int,boolean) enableNetwork()} with the
+{@code disableAllOthers=true} setting, the device disconnected from other networks such as
+cellular data. In This release, the device no longer disconnects from such other networks. If
+your app’s {@code targetSdkVersion} is {@code “20”} or lower, it is pinned to the selected
+Wi-Fi network. If your app’s {@code targetSdkVersion} is {@code “21”} or higher, use the
+multinetwork APIs (such as
+{@link android.net.Network#openConnection(java.net.URL) openConnection()},
+{@link android.net.Network#bindSocket(java.net.Socket) bindSocket()}, and the new
+{@link android.net.ConnectivityManager#bindProcessToNetwork(android.net.Network)
+bindProcessToNetwork()} method) to ensure that its network traffic is sent on the selected network.</li>
+</ul>
+
+<h2 id="behavior-camera">Camera Service Changes</h2>
+<p>In This release, the model for accessing shared resources in the camera service has been changed
+from the previous “first come, first serve” access model to an access model where high-priority
+processes are favored.  Changes to the service behavior include:</p>
+<ul>
+<li>Access to camera subsystem resources, including opening and configuring a camera device, is
+awarded based on the “priority” of the client application process. Application processes with
+user-visible or foreground activities are generally given a higher-priority, making camera resource
+acquisition and use more dependable.</li>
+<li>Active camera clients for lower priority apps may be “evicted” when a higher priority
+application attempts to use the camera.  In the deprecated {@link android.hardware.Camera} API,
+this results in
+{@link android.hardware.Camera.ErrorCallback#onError(int,android.hardware.Camera) onError()} being
+called for the evicted client. In the {@link android.hardware.camera2 Camera2} API, it results in
+{@link android.hardware.camera2.CameraDevice.StateCallback#onDisconnected(android.hardware.camera2.CameraDevice) onDisconnected()}
+being called for the evicted client.</li>
+<li>On devices with appropriate camera hardware, separate application processes are able to
+independently open and use separate camera devices simultaneously. However, multi-process use
+cases, where simultaneous access causes significant degradation of performance or capabilities of
+any of the open camera devices, are now detected and disallowed by the camera service. This change
+may result in “evictions” for lower priority clients even when no other app is directly
+attempting to access the same camera device.
+</li>
+<li>
+Changing the current user causes active camera clients in apps owned by the previous user account
+to be evicted.  Access to the camera is limited to user profiles owned by the current device user.
+In practice, this means that a “Guest” account, for example, will not be able to leave running
+processes that use the camera subsystem when the user has switched to a different account.
+</li>
+</ul>
+
+<h2 id="behavior-runtime">Runtime</h2>
+<p>The ART runtime now properly implements access rules for the
+{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} method. This
+change fixes a problem where Dalvik was checking access rules incorrectly in previous versions.
+If your app uses the
+{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} method and you
+want to override access checks, call the
+{@link java.lang.reflect.Constructor#setAccessible(boolean) setAccessible()} method with the input
+parameter set to {@code true}. If your app uses the
+<a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7 appcompat library</a> or the
+<a href="{@docRoot}tools/support-library/features.html#v7-recyclerview">v7 recyclerview library</a>,
+you must update your app to use to the latest versions of these libraries. Otherwise, make sure that
+any custom classes referenced from XML are updated so that their class constructors are accessible.</p>
+
+<p>This release updates the behavior of the dynamic linker. The dynamic linker now understands the
+difference between a library’s {@code soname} and its path
+(<a href="https://code.google.com/p/android/issues/detail?id=6670" class="external-link">
+public bug 6670</a>), and search by {@code soname} is now
+implemented. Apps which previously worked that have bad {@code DT_NEEDED} entries
+(usually absolute paths on the build machine’s file system) may fail when loaded.</p>
+
+<p>The {@code dlopen(3) RTLD_LOCAL} flag is now correctly implemented. Note that
+{@code RTLD_LOCAL} is the default, so calls to {@code dlopen(3)} that didn’t explicitly use
+{@code RTLD_LOCAL} will be affected (unless your app explicitly used {@code RTLD_GLOBAL}). With
+{@code RTLD_LOCAL}, symbols will not be made available to libraries loaded by later calls to
+{@code dlopen(3)} (as opposed to being referenced by {@code DT_NEEDED} entries).</p>
+</p>
+
+<p>
+On previous versions of Android, if your app requested the system to load a shared library with
+text relocations, the system displayed a warning but still allowed the library to be loaded.
+Beginning in this release, the system rejects this library if your app's target SDK version is 23
+or higher. To help you detect if a library failed to load, your app should log the
+{@code dlopen(3)} failure, and include the problem description text that the {@code dlerror(3)}
+call returns. To learn more about handling text relocations, see this
+<a href="https://wiki.gentoo.org/wiki/Hardened/Textrels_Guide" class="external-link">guide</a>.</p>
+
+<h2 id="behavior-apk-validation">APK Validation</h2>
+<p>The platform now performs stricter validation of APKs. An APK is considered corrupt if a file is
+declared in the manifest but not present in the APK itself. An APK must be re-signed if any of the
+contents are removed.</p>
+
+<h2 id="behavior-usb">USB Connection</h2>
+<p>Device connections through the USB port are now set to charge-only mode by default. To access
+the device and its content over a USB connection, users must explicitly grant permission for such
+interactions. If your app supports user interactions with the device over a USB port, take into
+consideration that the interaction must be explicitly enabled.
+</p>
+
+<h2 id="behavior-afw">Android for Work Changes</h2>
+<p>This release includes the following behavior changes for Android for Work:</p>
+<ul>
+  <li><strong>Work contacts in personal contexts.</strong> The Google Dialer
+Call Log now displays work contacts when the user views past calls.
+Setting
+{@link android.app.admin.DevicePolicyManager#setCrossProfileCallerIdDisabled(android.content.ComponentName, boolean) setCrossProfileCallerIdDisabled()}
+to {@code true} hides the work profile contacts in the Google Dialer Call Log. Work contacts can be
+displayed along with personal contacts to devices over Bluetooth only if
+you set {@link android.app.admin.DevicePolicyManager#setBluetoothContactSharingDisabled(android.content.ComponentName, boolean)
+setBluetoothContactSharingDisabled()} to {@code false}. By default, it is set to {@code true}.
+  </li>
+  <li><strong>Wi-Fi configuration removal:</strong> Wi-Fi configurations added by a Profile Owner
+(for example, through calls to the
+{@link android.net.wifi.WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
+addNetwork()} method) are now removed if that work profile is deleted.
+  </li>
+  <li><strong>Wi-Fi configuration lockdown:</strong> Any Wi-Fi configuration created by
+  an active Device Owner can no longer be modified or deleted by the user if
+  {@link android.provider.Settings.Global#WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN} is non-zero.
+  The user can still create and modify their own Wi-Fi configurations. Active Device
+  Owners have the privilege of editing or removing any Wi-Fi configurations, including
+  those not created by them.
+  </li>
+<li><strong>Download device policy controller via Google account addition:</strong> When a Google
+account that requires management via a device policy controller (DPC) app is added to a device
+outside of a managed context, the add account flow now prompts the user to install the
+appropriate WPC. This behavior also applies to accounts added via
+<strong>Settings > Accounts</strong> and in the initial device setup wizard.</li>
+<li><strong>Changes to specific {@link android.app.admin.DevicePolicyManager} API behaviors:</strong>
+  <ul>
+  <li>Calling the
+{@link android.app.admin.DevicePolicyManager#setCameraDisabled(android.content.ComponentName,boolean) setCameraDisabled()}
+method affects the camera for the calling user only; calling it from the managed profile doesn’t
+affect camera apps running on the primary user.</li>
+  <li>In addition, the
+{@link android.app.admin.DevicePolicyManager#setKeyguardDisabledFeatures(android.content.ComponentName,int) setKeyguardDisabledFeatures()}
+    method is now available for Profile Owners, as well as to Device Owners. </li>
+  <li>A Profile Owner can set these keyguard restrictions:
+    <ul>
+    <li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_TRUST_AGENTS} and
+    {@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_FINGERPRINT}, which affect the
+    keyguard settings for the profile’s parent user.</li>
+    <li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS}, which
+    only affects notifications generated by applications in the managed profile.</li>
+    </ul>
+  </li>
+  <li>The {@code DevicePolicyManager.createAndInitializeUser()} and {@code DevicePolicyManager.createUser()} methods have been deprecated.</li>
+  <li>The {@link android.app.admin.DevicePolicyManager#setScreenCaptureDisabled(android.content.ComponentName, boolean) setScreenCaptureDisabled()}
+method now also blocks the assist structure when an app of the given user is in the foreground. </li>
+  <li>{@link android.app.admin.DevicePolicyManager#EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM}
+now defaults to SHA-256. SHA-1 is still supported for backwards compatibility but will be removed
+in future.
+{@link android.app.admin.DevicePolicyManager#EXTRA_PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM}
+now only accepts SHA-256.</li>
+  <li>Device initializer APIs which existed in the Android 6.0 (API level 23) are now removed.</li>
+    <li><code>EXTRA_PROVISIONING_RESET_PROTECTION_PARAMETERS</code> is removed so NFC bump
+provisioning cannot programmatically unlock a factory reset protected device.</li>
+<li>You can now use the {@link android.app.admin.DevicePolicyManager#EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE}
+extra to pass data to the device owner app during NFC provisioning of the managed device.</li>
+    <li>Android for Work APIs are optimized for M runtime permissions, including Work profiles,
+assist layer, and others. New {@link android.app.admin.DevicePolicyManager} permission APIs don't
+affect pre-M apps.</li>
+<li>When users back out of the synchronous part of the setup flow initiated through an
+{@link android.app.admin.DevicePolicyManager#ACTION_PROVISION_MANAGED_PROFILE} or
+{@link android.app.admin.DevicePolicyManager#ACTION_PROVISION_MANAGED_DEVICE} intent, the system
+now returns a {@link android.app.Activity#RESULT_CANCELED} result code.</li>
+    </ul></li>
+
+<li><strong>Changes to other APIs</strong>:
+<ul>
+    <li>Data Usage: The {@code android.app.usage.NetworkUsageStats} class has been renamed
+{@link android.app.usage.NetworkStats}.</li>
+</ul>
+    </li>
+
+    <li><strong>Changes to global settings</strong>:
+    <ul>
+    <li>These settings can no longer be set via {@link android.app.admin.DevicePolicyManager#setGlobalSetting(android.content.ComponentName, java.lang.String, java.lang.String) setGlobalSettings()}</code>:
+<ul>
+    <li><code>BLUETOOTH_ON</code></li>
+    <li><code>DEVELOPMENT_SETTINGS_ENABLED</code></li>
+    <li><code>MODE_RINGER</code></li>
+    <li><code>NETWORK_PREFERENCE</code></li>
+    <li><code>WIFI_ON</code></li>
+</ul>
+    </li>
+    <li>These global settings can now be set via {@link android.app.admin.DevicePolicyManager#setGlobalSetting(android.content.ComponentName, java.lang.String, java.lang.String) setGlobalSettings()}:
+    <ul>
+    <li>{@link android.provider.Settings.Global#WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN}</li>
+    </ul>
+    </li>
+    </ul>
+</ul>
diff --git a/docs/html/about/versions/marshmallow/android-6.0.jd b/docs/html/about/versions/marshmallow/android-6.0.jd
new file mode 100644
index 0000000..779ecf4
--- /dev/null
+++ b/docs/html/about/versions/marshmallow/android-6.0.jd
@@ -0,0 +1,605 @@
+page.title=Android 6.0 APIs
+page.keywords=marshmallow,sdk,compatibility
+page.tags=androidm,marshmallow
+sdk.platform.apiLevel=23
+page.image=images/cards/card-api-overview_16-9_2x.png
+page.metaDescription=Get to know the new developer features in Android 6.0 Marshmallow.
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>In this document
+    <a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
+        <span class="more">show more</span>
+        <span class="less" style="display:none">show less</span></a></h2>
+
+<ol id="toc44" class="hide-nested">
+
+  <li><a href="#fingerprint-authentication">Fingerprint Authentication</a></li>
+  <li><a href="#confirm-credential">Confirm Credential</a></li>
+  <li><a href="#app-linking">App Linking</a></li>
+  <li><a href="#backup">Auto Backup for Apps</a></li>
+  <li><a href="#direct-share">Direct Share</a></li>
+  <li><a href="#voice-interactions">Voice Interactions</a></li>
+  <li><a href="#assist">Assist API</a></li>
+  <li><a href="#adoptable-storage">Adoptable Storage</a></li>
+  <li><a href="#notifications">Notifications</a></li>
+  <li><a href="#bluetooth-stylus">Bluetooth Stylus Support</a></li>
+  <li><a href="#ble-scanning">Improved Bluetooth Low Energy Scanning</a></li>
+  <li><a href="#hotspot">Hotspot 2.0 Release 1 Support</a></li>
+  <li><a href="#4K-display">4K Display Mode</a></li>
+  <li><a href="#behavior-themeable-colorstatelists">Themeable ColorStateLists</a></li>
+  <li><a href="#audio">Audio Features</a></li>
+  <li><a href="#video">Video Features</a></li>
+  <li><a href="#camera">Camera Features</a>
+    <ol>
+      <li><a href="#flashlight">Flashlight API</a></li>
+      <li><a href="#reprocessing">Camera Reprocessing</a></li>
+    </ol>
+  </li>
+  <li><a href="#afw">Android for Work Features</a></li>
+</ol>
+
+<h2>API Differences</h2>
+<ol>
+<li><a href="{@docRoot}sdk/api_diff/23/changes.html">API level 22 to 23 &raquo;</a> </li>
+</ol>
+
+</div>
+</div>
+
+<p>Android 6.0 (<a href="{@docRoot}reference/android/os/Build.VERSION_CODES.html#M">M</a>)
+offers new features for users and app developers. This document provides an introduction to the
+most notable APIs.</p>
+
+<h3 id="Start">Start developing</h3>
+
+<p>To start building apps for Android 6.0, you must first <a href="{@docRoot}sdk/index.html">get
+the Android SDK</a>. Then use the <a href="{@docRoot}tools/help/sdk-manager.html">SDK Manager</a>
+to download the Android 6.0 SDK Platform and System Images.</p>
+
+
+<h3 id="ApiLevel">Update your target API level</h3>
+
+<p>To better optimize your app for devices running Android {@sdkPlatformVersion},
+  set your <a
+href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> to
+<code>"{@sdkPlatformApiLevel}"</code>, install your app on an Android
+{@sdkPlatformVersion} system image, test it, then publish the updated app with
+this change.</p>
+
+<p>You can use Android {@sdkPlatformVersion} APIs while also supporting older
+versions by adding conditions to your code that check for the system API level
+before executing APIs not supported by your <a
+href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a>.
+To learn more about maintaining backward compatibility, read <a
+href="{@docRoot}training/basics/supporting-devices/platforms.html">Supporting
+Different Platform Versions</a>.</p>
+
+<p>For more information about how API levels work, read <a
+href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">What is API
+Level?</a></p>
+
+<h2 id="fingerprint-authentication">Fingerprint Authentication</h2>
+
+<p>This release offers new APIs to let you authenticate users by using their fingerprint scans on
+supported devices, Use these APIs in conjunction with
+the <a href="{@docRoot}training/articles/keystore.html">Android Keystore system</a>.</p>
+
+<p>To authenticate users via fingerprint scan, get an instance of the new
+{@link android.hardware.fingerprint.FingerprintManager} class and call the
+{@link android.hardware.fingerprint.FingerprintManager#authenticate(android.hardware.fingerprint.FingerprintManager.CryptoObject, android.os.CancellationSignal, int, android.hardware.fingerprint.FingerprintManager.AuthenticationCallback, android.os.Handler) authenticate()}
+method. Your app must be running on a compatible
+device with a fingerprint sensor. You must implement the user interface for the fingerprint
+authentication flow on your app, and use the standard Android fingerprint icon in your UI.
+The Android fingerprint icon ({@code c_fp_40px.png}) is included in the
+<a href="{@docRoot}samples/FingerprintDialog/index.html">Fingerprint Dialog sample</a>. If you are
+developing multiple apps that use fingerprint authentication, note that each app must authenticate
+the user’s fingerprint independently.
+</p>
+
+<p>To use this feature in your app, first add the
+  {@link android.Manifest.permission#USE_FINGERPRINT} permission in your manifest.</p>
+
+<pre>
+&lt;uses-permission
+        android:name="android.permission.USE_FINGERPRINT" /&gt;
+</pre>
+<img src="{@docRoot}images/android-6.0/fingerprint-screen.png"
+srcset="{@docRoot}images/android-6.0/fingerprint-screen.png 1x, {@docRoot}images/android-6.0/fingerprint-screen_2x.png 2x"
+style="float:right; margin:0 0 10px 20px" width="282" height="476" />
+
+<p>To see an app implementation of fingerprint authentication, refer to the
+<a href="{@docRoot}samples/FingerprintDialog/index.html">Fingerprint Dialog sample</a>. For a
+demonstration of how you can use these authentication
+  APIs in conjunction with other Android APIs, see the video
+  <a class="video-shadowbox-button" href="https://www.youtube.com/watch?v=VOn7VrTRlA4">
+  Fingerprint and Payment APIs</a>.</p>
+
+<p>If you are testing this feature, follow these steps:</p>
+<ol>
+<li>Install Android SDK Tools Revision 24.3, if you have not done so.</li>
+<li>Enroll a new fingerprint in the emulator by going to
+<strong>Settings > Security > Fingerprint</strong>, then follow the enrollment instructions.</li>
+<li>Use an emulator to emulate fingerprint touch events with the
+following command. Use the same command to emulate fingerprint touch events on the lockscreen or
+in your app.
+<pre class="no-prettyprint">
+adb -e emu finger touch &lt;finger_id&gt;
+</pre>
+<p>On Windows, you may have to run {@code telnet 127.0.0.1 &lt;emulator-id&gt;} followed by
+  {@code finger touch &lt;finger_id&gt;}.
+</p>
+</li>
+</ol>
+
+<h2 id="confirm-credential">Confirm Credential</h2>
+<p>Your app can authenticate users based on how recently they last unlocked their device. This
+feature frees users from having to remember additional app-specific passwords, and avoids the need
+for you to implement your own authentication user interface. Your app should use this feature in
+conjunction with a public or secret key implementation for user authentication.</p>
+
+<p>To set the timeout duration for which the same key can be re-used after a user is successfully
+authenticated, call the new
+{@link android.security.keystore.KeyGenParameterSpec.Builder#setUserAuthenticationValidityDurationSeconds(int) setUserAuthenticationValidityDurationSeconds()}
+method when you set up a {@link javax.crypto.KeyGenerator} or
+{@link java.security.KeyPairGenerator}.</p>
+
+<p>Avoid showing the re-authentication dialog excessively -- your apps should try using the
+cryptographic object first and if the the timeout expires, use the
+{@link android.app.KeyguardManager#createConfirmDeviceCredentialIntent(java.lang.CharSequence, java.lang.CharSequence) createConfirmDeviceCredentialIntent()}
+method to re-authenticate the user within your app.
+</p>
+
+<p>To see an app implementation of this feature, refer to the
+<a href="{@docRoot}samples/ConfirmCredential/index.html">
+  Confirm Credential sample</a>.</p>
+
+<h2 id="app-linking">App Linking</h2>
+<p>This release enhances Android’s intent system by providing more powerful app linking.
+This feature allows you to associate an app with a web domain you own. Based on this
+association, the platform can determine the default app to use to handle a particular
+web link and skip prompting users to select an app. To learn how to implement this feature, see
+<a href="{@docRoot}training/app-links/index.html">Handling App Links</a>.
+
+<h2 id="backup">Auto Backup for Apps</h2>
+<p>The system now performs automatic full data backup and restore for apps. Your app must target
+  Android 6.0 (API level 23) to enable this behavior; you do not need to add any additional code.
+  If users delete their Google accounts, their backup data is deleted as well. To learn how this
+  feature works and how to configure what to back up on the file system, see
+  <a href="{@docRoot}training/backup/autosyncapi.html">Configuring Auto Backup for Apps</a>.</p>
+
+<h2 id="direct-share">Direct Share</h2>
+
+<img src="{@docRoot}images/android-6.0/direct-share-screen.png"
+srcset="{@docRoot}images/android-6.0/direct-share-screen.png 1x, {@docRoot}images/android-6.0/direct-share-screen_2x.png 2x"
+style="float:right; margin:0 0 20px 30px" width="312" height="329" />
+
+<p>This release provides you with APIs to make sharing intuitive and quick for users. You can now
+define <em>direct share targets</em> that launch a specific activity in your app. These direct share
+targets are exposed to users via the <em>Share</em> menu. This feature allows users to share
+content to targets, such as contacts, within other apps. For example, the direct share target might
+launch an activity in another social network app, which lets the user share content directly to a
+specific friend or community in that app.</p>
+
+<p>To enable direct share targets you must define a class that extends the
+{@link android.service.chooser.ChooserTargetService} class. Declare your
+service in the manifest. Within that declaration, specify the
+{@link android.Manifest.permission#BIND_CHOOSER_TARGET_SERVICE} permission and an
+intent filter using the
+{@link android.service.chooser.ChooserTargetService#SERVICE_INTERFACE SERVICE_INTERFACE} action.</p>
+<p>The following example shows how you might declare the
+{@link android.service.chooser.ChooserTargetService} in your manifest.</p>
+<pre>
+&lt;service android:name=".ChooserTargetService"
+        android:label="&#64;string/service_name"
+        android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE"&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.service.chooser.ChooserTargetService" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/service&gt;
+</pre>
+
+<p>For each activity that you want to expose to
+{@link android.service.chooser.ChooserTargetService}, add a
+{@code &lt;meta-data&gt;} element with the name
+{@code "android.service.chooser.chooser_target_service"} in your app manifest.
+</p>
+
+<pre>
+&lt;activity android:name=".MyShareActivity”
+        android:label="&#64;string/share_activity_label"&gt;
+    &lt;intent-filter>
+        &lt;action android:name="android.intent.action.SEND" /&gt;
+    &lt;/intent-filter>
+&lt;meta-data
+        android:name="android.service.chooser.chooser_target_service"
+        android:value=".ChooserTargetService" /&gt;
+&lt;/activity>
+</pre>
+
+<h2 id="voice-interactions">Voice Interactions</h2>
+<p>
+This release provides a new voice interaction API which, together with
+<a href="https://developers.google.com/voice-actions/" class="external-link">Voice Actions</a>,
+allows you to build conversational voice experiences into your apps. Call the
+{@link android.app.Activity#isVoiceInteraction()} method to determine if a voice action triggered
+your activity. If so, your app can use the
+{@link android.app.VoiceInteractor} class to request a voice confirmation from the user, select
+from a list of options, and more.</p>
+
+<p>Most voice interactions originate from a user voice action. A voice interaction activity can
+also, however, start without user input. For example, another app launched through a voice
+interaction can also send an intent to launch a voice interaction. To determine if your activity
+launched from a user voice query or from another voice interaction app, call the
+{@link android.app.Activity#isVoiceInteractionRoot()} method. If another app launched your
+activity, the method returns {@code false}. Your app may then prompt the user to confirm that
+they intended this action.</p>
+
+<p>To learn more about implementing voice actions, see the
+<a href="https://developers.google.com/voice-actions/interaction/"
+class="external-link">Voice Actions developer site</a>.
+</p>
+
+<h2 id="assist">Assist API</h2>
+<p>
+This release offers a new way for users to engage with your apps through an assistant. To use this
+feature, the user must enable the assistant to use the current context. Once enabled, the user
+can summon the assistant within any app, by long-pressing on the <strong>Home</strong> button.</p>
+<p>Your app can elect to not share the current context with the assistant by setting the
+{@link android.view.WindowManager.LayoutParams#FLAG_SECURE} flag. In addition to the
+standard set of information that the platform passes to the assistant, your app can share
+additional information by using the new {@link android.app.assist.AssistContent} class.</p>
+
+<p>To provide the assistant with additional context from your app, follow these steps:</p>
+
+<ol>
+<li>Implement the {@link android.app.Application.OnProvideAssistDataListener} interface.</li>
+<li>Register this listener by using
+{@link android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener) registerOnProvideAssistDataListener()}.</li>
+<li>In order to provide activity-specific contextual information, override the
+{@link android.app.Activity#onProvideAssistData(android.os.Bundle) onProvideAssistData()}
+callback and, optionally, the new
+{@link android.app.Activity#onProvideAssistContent(android.app.assist.AssistContent) onProvideAssistContent()}
+callback.
+</ol>
+
+<h2 id="adoptable-storage">Adoptable Storage Devices</h2>
+<p>
+With this release, users can <em>adopt</em> external storage devices such as SD cards. Adopting an
+external storage device encrypts and formats the device to behave like internal storage. This
+feature allows users to move both apps and private data of those apps between storage devices. When
+moving apps, the system respects the
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a>
+preference in the manifest.</p>
+
+<p>If your app accesses the following APIs or fields, be aware that the file paths they return
+will dynamically change when the app is moved between internal and external storage devices.
+When building file paths, it is strongly recommended that you always call these APIs dynamically.
+Don’t use hardcoded file paths or persist fully-qualified file paths that were built previously.</p>
+
+<ul>
+<li>{@link android.content.Context} methods:
+    <ul>
+        <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
+        <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
+        <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
+        <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
+        <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
+        <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
+        <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
+        <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
+        <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
+    </ul>
+</li>
+<li>{@link android.content.pm.ApplicationInfo} fields:
+    <ul>
+        <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
+        <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
+        <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
+        <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
+        <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
+        <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
+    </ul>
+</li>
+</ul>
+
+<p>To debug this feature, you can enable adoption of a USB drive that is
+connected to an Android device through a USB On-The-Go (OTG) cable, by running this command:</p>
+
+<pre class="no-prettyprint">
+$ adb shell sm set-force-adoptable true
+</pre>
+
+<h2 id="notifications">Notifications</h2>
+<p>This release adds the following API changes for notifications:</p>
+<ul>
+  <li>New {@link android.app.NotificationManager#INTERRUPTION_FILTER_ALARMS} filter level that
+    corresponds to the new <em>Alarms only</em> do not disturb mode.</li>
+  <li>New {@link android.app.Notification#CATEGORY_REMINDER} category value that is used to
+  distinguish user-scheduled reminders from other events
+  ({@link android.app.Notification#CATEGORY_EVENT}) and alarms
+  ({@link android.app.Notification#CATEGORY_ALARM}).</li>
+  <li>New {@link android.graphics.drawable.Icon} class that you can attach to your notifications
+  via the
+  {@link android.app.Notification.Builder#setSmallIcon(android.graphics.drawable.Icon) setSmallIcon()}
+  and {@link android.app.Notification.Builder#setLargeIcon(android.graphics.drawable.Icon) setLargeIcon()}
+  methods. Similarly, the
+  {@link android.app.Notification.Builder#addAction(int, java.lang.CharSequence, android.app.PendingIntent)
+  addAction()} method now accepts an {@link android.graphics.drawable.Icon} object instead of a
+  drawable resource ID.</li>
+  <li>New {@link android.app.NotificationManager#getActiveNotifications()} method that allows your
+  apps to find out which of their notifications are currently alive. To see an app implementation
+  that uses this feature, see the
+  <a href="{@docRoot}samples/ActiveNotifications/index.html">Active Notifications sample</a>.</li>
+</ul>
+
+<h2 id="bluetooth-stylus">Bluetooth Stylus Support</h2>
+<p>This release provides improved support for user input using a Bluetooth stylus. Users can pair
+and connect a compatible Bluetooth stylus with their phone or tablet.  While connected, position
+information from the touch screen is fused with pressure and button information from the stylus to
+provide a greater range of expression than with the touch screen alone. Your app can listen for
+stylus button presses and perform secondary actions, by registering
+{@link android.view.View.OnContextClickListener} and
+{@link android.view.GestureDetector.OnContextClickListener} objects in your activity.</p>
+
+<p>Use the {@link android.view.MotionEvent} methods and constants to detect stylus button
+interactions:</p>
+<ul>
+<li>If the user touches a stylus with a button on the screen of your app, the
+{@link android.view.MotionEvent#getToolType(int) getTooltype()} method returns
+{@link android.view.MotionEvent#TOOL_TYPE_STYLUS}.</li>
+<li>For apps targeting Android 6.0 (API level 23), the
+{@link android.view.MotionEvent#getButtonState() getButtonState()}
+method returns {@link android.view.MotionEvent#BUTTON_STYLUS_PRIMARY} when the user
+presses the primary stylus button. If the stylus has a second button, the same method returns
+{@link android.view.MotionEvent#BUTTON_STYLUS_SECONDARY} when the user presses it. If the user presses
+both buttons simultaneously, the method returns both values OR'ed together
+({@link android.view.MotionEvent#BUTTON_STYLUS_PRIMARY}|{@link android.view.MotionEvent#BUTTON_STYLUS_SECONDARY}).</li>
+<li>
+For apps targeting a lower platform version, the
+{@link android.view.MotionEvent#getButtonState() getButtonState()} method returns
+{@link android.view.MotionEvent#BUTTON_SECONDARY} (for primary stylus button press),
+{@link android.view.MotionEvent#BUTTON_TERTIARY} (for secondary stylus button press), or both.
+</li>
+</ul>
+
+<h2 id="ble-scanning">Improved Bluetooth Low Energy Scanning</h2>
+<p>
+If your app performs performs Bluetooth Low Energy scans, use the new
+{@link android.bluetooth.le.ScanSettings.Builder#setCallbackType(int) setCallbackType()}
+method to specify that you want the system to notify callbacks when it first finds, or sees after a
+long time, an advertisement packet matching the set {@link android.bluetooth.le.ScanFilter}. This
+approach to scanning is more power-efficient than what’s provided in the previous platform version.
+</p>
+
+<h2 id="hotspot">Hotspot 2.0 Release 1 Support</h2>
+<p>
+This release adds support for the Hotspot 2.0 Release 1 spec on Nexus 6 and Nexus 9 devices. To
+provision Hotspot 2.0 credentials in your app, use the new methods of the
+{@link android.net.wifi.WifiEnterpriseConfig} class, such as
+{@link android.net.wifi.WifiEnterpriseConfig#setPlmn(java.lang.String) setPlmn()} and
+{@link android.net.wifi.WifiEnterpriseConfig#setRealm(java.lang.String) setRealm()}. In the
+{@link android.net.wifi.WifiConfiguration} object, you can set the
+{@link android.net.wifi.WifiConfiguration#FQDN} and the
+{@link android.net.wifi.WifiConfiguration#providerFriendlyName} fields.
+The new {@link android.net.wifi.ScanResult#isPasspointNetwork()} method indicates if a detected
+network represents a Hotspot 2.0 access point.
+</p>
+
+<h2 id="4K-display">4K Display Mode</h2>
+<p>The platform now allows apps to request that the display resolution be upgraded to 4K rendering
+on compatible hardware. To query the current physical resolution, use the new
+{@link android.view.Display.Mode} APIs. If the UI is drawn at a lower logical resolution and is
+upscaled to a larger physical resolution, be aware that the physical resolution the
+{@link android.view.Display.Mode#getPhysicalWidth()} method returns may differ from the logical
+resolution reported by {@link android.view.Display#getSize(android.graphics.Point) getSize()}.</p>
+
+<p>You can request the system to change the physical resolution in your app as it runs, by setting
+the {@link android.view.WindowManager.LayoutParams#preferredDisplayModeId} property of your app’s
+window.  This feature is useful if you want to switch to 4K display resolution. While in 4K display
+mode, the UI continues to be rendered at the original resolution (such as 1080p) and is upscaled to
+4K, but {@link android.view.SurfaceView} objects may show content at the native resolution.</p>
+
+<h2 id="behavior-themeable-colorstatelists">Themeable ColorStateLists</h2>
+<p>Theme attributes are now supported in
+{@link android.content.res.ColorStateList} for devices running on Android 6.0 (API level 23). The
+{@link android.content.res.Resources#getColorStateList(int) Resources.getColorStateList()} and
+{@link android.content.res.Resources#getColor(int) Resources.getColor()} methods have been
+deprecated. If you are calling these APIs, call the new
+{@link android.content.Context#getColorStateList(int) Context.getColorStateList()} or
+{@link android.content.Context#getColor(int) Context.getColor()} methods instead. These methods are
+also available in the v4 appcompat library via {@link android.support.v4.content.ContextCompat}.</p>
+
+<h2 id="audio">Audio Features</h2>
+
+<p>This release adds enhancements to audio processing on Android, including: </p>
+<ul>
+  <li>Support for the <a href="http://en.wikipedia.org/wiki/MIDI" class="external-link">MIDI</a>
+protocol, with the new {@link android.media.midi} APIs. Use these APIs to send and receive MIDI
+events.</li>
+  <li>New {@link android.media.AudioRecord.Builder} and {@link android.media.AudioTrack.Builder}
+classes to create digital audio capture and playback objects respectively, and configure audio
+source and sink properties to override the system defaults.</li>
+  <li>API hooks for associating audio and input devices. This is particularly useful if your app
+allows users to start a voice search from a game controller or remote control connected to Android
+TV. The system invokes the new
+{@link android.app.Activity#onSearchRequested(android.view.SearchEvent) onSearchRequested()}
+callback when the user starts a search. To determine if the user's input device has a built-in
+microphone, retrieve the {@link android.view.InputDevice} object from that callback, then call the
+new {@link android.view.InputDevice#hasMicrophone()} method.</li>
+  <li>New {@link android.media.AudioManager#getDevices(int) getDevices()} method which lets you
+retrieve a list of all audio devices currently connected to the system. You can also register an
+{@link android.media.AudioDeviceCallback} object if you want the system to notify your app
+when an audio device connects or disconnects.</li>
+</ul>
+
+<h2 id="video">Video Features</h2>
+<p>This release adds new capabilities to the video processing APIs, including:</p>
+<ul>
+<li>New {@link android.media.MediaSync} class which helps applications to synchronously render
+audio and video streams. The audio buffers are submitted in non-blocking fashion and are
+returned via a callback. It also supports dynamic playback rate.
+</li>
+<li>New {@link android.media.MediaDrm#EVENT_SESSION_RECLAIMED} event, which indicates that a
+session opened by the app has been reclaimed by the resource manager. If your app uses DRM sessions,
+you should handle this event and make sure not to use a reclaimed session.
+</li>
+<li>New {@link android.media.MediaCodec.CodecException#ERROR_RECLAIMED} error code, which indicates
+that the resource manager reclaimed the media resource used by the codec. With this exception, the
+codec must be released, as it has moved to terminal state.
+</li>
+<li>New {@link android.media.MediaCodecInfo.CodecCapabilities#getMaxSupportedInstances()
+getMaxSupportedInstances()} interface to get a hint for the max number of the supported
+concurrent codec instances.
+</li>
+<li>New {@link android.media.MediaPlayer#setPlaybackParams(android.media.PlaybackParams)
+setPlaybackParams()} method to set the media playback rate for fast or
+slow motion playback. It also stretches or speeds up the audio playback automatically in
+conjunction with the video.</li>
+</ul>
+
+<h2 id="camera">Camera Features</h2>
+<p>This release includes the following new APIs for accessing the camera’s flashlight and for
+camera reprocessing of images:</p>
+
+<h3 id="flashlight">Flashlight API</h3>
+<p>If a camera device has a flash unit, you can call the
+{@link android.hardware.camera2.CameraManager#setTorchMode(java.lang.String, boolean) setTorchMode()}
+method to switch the flash unit’s torch mode on or off without opening the camera device. The app
+does not have exclusive ownership of the flash unit or the camera device. The torch mode is turned
+off and becomes unavailable whenever the camera device becomes unavailable, or when other camera
+resources keeping the torch on become unavailable. Other apps can also call
+{@link android.hardware.camera2.CameraManager#setTorchMode(java.lang.String, boolean) setTorchMode()}
+to turn off the torch mode. When the last app that turned on the torch mode is closed, the torch
+mode is turned off.</p>
+
+<p>You can register a callback to be notified about torch mode status by calling the
+{@link android.hardware.camera2.CameraManager#registerTorchCallback(android.hardware.camera2.CameraManager.TorchCallback, android.os.Handler) registerTorchCallback()}
+method. The first time the callback is registered, it is immediately called with the torch mode
+status of all currently known camera devices with a flash unit. If the torch mode is turned on or
+off successfully, the
+{@link android.hardware.camera2.CameraManager.TorchCallback#onTorchModeChanged(java.lang.String, boolean) onTorchModeChanged()}
+method is invoked.</p>
+
+<h3 id="reprocessing">Reprocessing API</h3>
+<p>The {@link android.hardware.camera2 Camera2} API is extended to support YUV and private
+opaque format image reprocessing. To determine if these reprocessing capabilities are available,
+call {@link android.hardware.camera2.CameraManager#getCameraCharacteristics(java.lang.String)
+getCameraCharacteristics()} and check for the
+{@link android.hardware.camera2.CameraCharacteristics#REPROCESS_MAX_CAPTURE_STALL} key. If a
+device supports reprocessing, you can create a reprocessable camera capture session by calling
+<a href="/reference/android/hardware/camera2/CameraDevice.html#createReprocessableCaptureSession(android.hardware.camera2.params.InputConfiguration, java.util.List<android.view.Surface>, android.hardware.camera2.CameraCaptureSession.StateCallback, android.os.Handler)"><code>createReprocessableCaptureSession()</code></a>,
+and create requests for input buffer reprocessing.</p>
+
+<p>Use the {@link android.media.ImageWriter} class to connect the input buffer flow to the camera
+reprocessing input. To get an empty buffer, follow this programming model:</p>
+
+<ol>
+<li>Call the {@link android.media.ImageWriter#dequeueInputImage()} method.</li>
+<li>Fill the data into the input buffer.</li>
+<li>Send the buffer to the  camera by calling the
+{@link android.media.ImageWriter#queueInputImage(android.media.Image) queueInputImage()} method.</li>
+</ol>
+
+<p>If you are using a {@link android.media.ImageWriter} object together with an
+{@link android.graphics.ImageFormat#PRIVATE} image, your app cannot access the image
+data directly. Instead, pass the {@link android.graphics.ImageFormat#PRIVATE} image directly to the
+{@link android.media.ImageWriter} by calling the
+{@link android.media.ImageWriter#queueInputImage(android.media.Image) queueInputImage()} method
+without any buffer copy.</p>
+
+<p>The {@link android.media.ImageReader} class now supports
+{@link android.graphics.ImageFormat#PRIVATE} format image streams. This support allows your app to
+maintain a circular image queue of {@link android.media.ImageReader} output images, select one or
+more images, and send them to the {@link android.media.ImageWriter} for camera reprocessing.</p>
+
+<h2 id="afw">Android for Work Features</h2>
+<p>This release includes the following new APIs for Android for Work:</p>
+<ul>
+  <li><strong>Enhanced controls for Corporate-Owned, Single-Use devices:</strong> The Device Owner
+can now control the following settings to improve management of
+Corporate-Owned, Single-Use (COSU) devices:
+  <ul>
+    <li>Disable or re-enable the keyguard with the
+{@link android.app.admin.DevicePolicyManager#setKeyguardDisabled(android.content.ComponentName, boolean)
+setKeyguardDisabled()} method.</li>
+    <li>Disable or re-enable the status bar (including quick settings, notifications, and the
+navigation swipe-up gesture that launches Google Now) with the
+{@link android.app.admin.DevicePolicyManager#setStatusBarDisabled(android.content.ComponentName, boolean) setStatusBarDisabled()}
+method.</li>
+    <li>Disable or re-enable safe boot with the {@link android.os.UserManager} constant
+{@link android.os.UserManager#DISALLOW_SAFE_BOOT}.</li>
+    <li>Prevent the screen from turning off while plugged in with the
+  {@link android.provider.Settings.Global#STAY_ON_WHILE_PLUGGED_IN} constant.</li>
+  </ul>
+  </li>
+  <li><strong>Silent install and uninstall of apps by Device Owner:</strong> A Device Owner can now
+silently install and uninstall applications using the {@link android.content.pm.PackageInstaller}
+APIs, independent of Google Play for Work. You can now provision devices through a Device Owner that
+fetches and installs apps without user interaction. This feature is useful for enabling one-touch
+provisioning of kiosks or other such devices without activating a Google account.</li>
+<li><strong>Silent enterprise certificate access: </strong> When an app calls
+{@link android.security.KeyChain#choosePrivateKeyAlias(android.app.Activity,android.security.KeyChainAliasCallback,java.lang.String[],java.security.Principal[],java.lang.String,int,java.lang.String) choosePrivateKeyAlias()},
+prior to the user being prompted to select a certificate, the Profile or Device Owner can now call
+the {@link android.app.admin.DeviceAdminReceiver#onChoosePrivateKeyAlias(android.content.Context, android.content.Intent, int, android.net.Uri, java.lang.String) onChoosePrivateKeyAlias()}
+method to provide the alias silently to the requesting application. This feature lets you grant
+managed apps access to certificates without user interaction.</li>
+<li><strong>Auto-acceptance of system updates.</strong> By setting a system update policy with
+{@link android.app.admin.DevicePolicyManager#setSystemUpdatePolicy(android.content.ComponentName, android.app.admin.SystemUpdatePolicy) setSystemUpdatePolicy()},
+a Device Owner can now auto-accept a system
+update, for instance in the case of a kiosk device, or postpone the update and prevent it being
+taken by the user for up to 30 days. Furthermore, an administrator can set a daily time window in
+which an update must be taken, for example during the hours when a kiosk device is not in use. When
+a system update is available, the system checks if the device policy controller app has set a system
+update policy, and behaves accordingly.
+</li>
+<li>
+<strong>Delegated certificate installation:</strong> A Profile or Device Owner can now grant a
+third-party app the ability to call these {@link android.app.admin.DevicePolicyManager} certificate
+management APIs:
+<ul>
+  <li>{@link android.app.admin.DevicePolicyManager#getInstalledCaCerts(android.content.ComponentName)
+getInstalledCaCerts()}</li>
+  <li>{@link android.app.admin.DevicePolicyManager#hasCaCertInstalled(android.content.ComponentName,byte[])
+hasCaCertInstalled()}</li>
+  <li>{@link android.app.admin.DevicePolicyManager#installCaCert(android.content.ComponentName,byte[])
+installCaCert()}</li>
+  <li>{@link android.app.admin.DevicePolicyManager#uninstallCaCert(android.content.ComponentName,byte[])
+uninstallCaCert()}</li>
+  <li>{@link android.app.admin.DevicePolicyManager#uninstallAllUserCaCerts(android.content.ComponentName)
+uninstallAllUserCaCerts()}</li>
+  <li>{@link android.app.admin.DevicePolicyManager#installKeyPair(android.content.ComponentName,java.security.PrivateKey,java.security.cert.Certificate,java.lang.String)
+installKeyPair()}</li>
+</ul>
+</li>
+<img src="{@docRoot}images/android-6.0/work-profile-screen.png"
+srcset="{@docRoot}images/android-6.0/work-profile-screen.png 1x, {@docRoot}images/android-6.0/work-profile-screen_2x.png 2x"
+style="float:right; margin:0 0 10px 20px" width="282" height="476" />
+<li><strong>Data usage tracking.</strong> A Profile or Device Owner can now query for the
+data usage statistics visible in <strong>Settings > Data</strong> usage by using the new
+{@link android.app.usage.NetworkStatsManager} methods. Profile Owners are automatically granted
+permission to query data on the profile they manage, while Device Owners get access to usage data
+of the managed primary user.</li>
+<li><strong>Runtime permission management:</strong>
+<p>A Profile or Device Owner can set a permission policy
+for all runtime requests of all applications using
+{@link android.app.admin.DevicePolicyManager#setPermissionPolicy(android.content.ComponentName, int)
+setPermissionPolicy()}, to either prompt the user to grant the permission or automatically grant or
+deny the permission silently. If the latter policy is set, the user cannot
+modify the selection made by the Profile or Device Owner within the app’s permissions screen in
+<strong>Settings</strong>.</p></li>
+<li><strong>VPN in Settings:</strong> VPN apps are now visible in
+    <strong>Settings > More > VPN</strong>.
+Additionally, the notifications that accompany VPN usage are now specific to how that VPN is
+configured. For Profile Owner, the notifications are specific to whether the VPN is configured
+for a managed profile, a personal profile, or both. For a Device Owner, the notifications are
+specific to whether the VPN is configured for the entire device.</li>
+<li><strong>Work status notification:</strong> A status bar briefcase icon now appears whenever
+an app from the managed profile has an activity in the foreground. Furthermore, if the device is
+unlocked directly to the activity of an app in the managed profile, a toast is displayed notifying
+the user that they are within the work profile.
+</li>
+</ul>
diff --git a/docs/html/about/versions/marshmallow/index.jd b/docs/html/about/versions/marshmallow/index.jd
new file mode 100644
index 0000000..35edd72
--- /dev/null
+++ b/docs/html/about/versions/marshmallow/index.jd
@@ -0,0 +1,88 @@
+page.title=Android 6.0 Marshmallow
+page.tags="marshmallow"
+meta.tags="marshamallow","android60"
+fullpage=true
+nonavpage=true
+forcelocalnav=true
+header.hide=1
+footer.hide=1
+@jd:body
+
+<section class="dac-expand dac-hero dac-light" >
+  <div class="wrap">
+    <div class="cols dac-hero-content">
+      <div class="col-9of16 col-push-7of16 dac-hero-figure">
+        <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png"
+             srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
+             {@docRoot}images/home/devices-hero_620px_2x.png 2x">
+      </div>
+      <div class="col-7of16 col-pull-9of16">
+        <h1 class="dac-hero-title">Android 6.0 Marshmallow</h1>
+        <p class="dac-hero-description">
+          <strong>Get your apps ready for Android 6.0 Marshmallow!</strong>
+          Explore what's new &mdash; <strong>runtime permissions</strong>,
+          <strong>Doze</strong> and <strong>App Standby</strong> power-saving features, new
+          <strong>assist technology</strong>, and more.
+        </p>
+
+        <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/android-6.0-changes.html">
+          <span class="dac-sprite dac-auto-chevron"></span>
+          Get started
+        </a><br>
+      </div>
+    </div>
+    <div class="dac-section dac-small">
+      <div class="resource-widget resource-flow-layout col-16"
+           data-query="collection:marshmallow/landing/resources"
+           data-cardSizes="6x2"
+           data-maxResults="3">
+      </div>
+    </div>
+  </div>
+</section>
+
+<div class="wrap dac-offset-parent">
+  <a class="dac-fab dac-scroll-button" data-scroll-button href="#resources">
+    <i class="dac-sprite dac-arrow-down-gray"></i>
+  </a>
+</div>
+
+<section class="dac-section dac-gray" id="resources"><div class="wrap">
+  <h1 class="dac-section-title">Resources</h1>
+  <div class="dac-section-subtitle">
+    Essential information to help you get your apps ready for Android 6.0.
+  </div>
+
+  <div class="resource-widget resource-flow-layout col-16"
+       data-query="collection:marshmallow/landing/more"
+       data-cardSizes="6x6"
+       data-items-per-page="15"
+       data-initial-results="3"></div>
+  </div>
+</section>
+
+<section class="dac-section" id="videos"><div class="wrap">
+  <h1 class="dac-section-title">Videos</h1>
+  <div class="dac-section-subtitle">
+    New Android capabilities and the right way to use them in your apps.
+  </div>
+
+  <div class="resource-widget resource-flow-layout col-16"
+       data-query="collection:marshmallow/landing/videos"
+       data-cardSizes="6x6"
+       data-items-per-page="15"
+       data-initial-results="6"></div>
+  </div>
+</section>
+
+<section class="dac-section dac-gray dac-small" id="latest"><div class="wrap">
+  <h2 class="norule">Latest</h2>
+  <div class="resource-widget resource-flow-layout col-16"
+      data-query="type:blog+tag:marshmallow"
+      data-sortOrder="-timestamp"
+      data-cardSizes="6x6"
+      data-maxResults="24"
+      data-items-per-page="15"
+      data-initial-results="3">
+  </div>
+</section>
diff --git a/docs/html/about/versions/marshmallow/samples.jd b/docs/html/about/versions/marshmallow/samples.jd
new file mode 100644
index 0000000..1422151
--- /dev/null
+++ b/docs/html/about/versions/marshmallow/samples.jd
@@ -0,0 +1,89 @@
+page.title=Android 6.0 Samples
+page.image=images/cards/card-build_16x9_2x.png
+page.tags=marshmallow, samples
+meta.tags=marshmallow,androidm,samples
+page.metaDescription=Code to get your started with Android 6.0 APIs.
+@jd:body
+
+<p>
+  Download or browse sample projects to get started with Android 6.0
+  APIs (API level 23). You can download the samples
+  directly from Android Studio &mdash; just select the <b>File > Import
+  Samples</b> menu option and pick the sample you want.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> These downloadable projects are designed
+   for use with Gradle and Android Studio.
+</p>
+
+<ul>
+<li id="ActiveNotification">
+<a href="{@docRoot}samples/ActiveNotifications/index.html">Active Notification</a>: This sample demonstrates how the
+  <a href="{@docRoot}reference/android/app/NotificationManager.html"><code>NotificationManager</code></a>
+  can tell you how many notifications your app is currently showing.
+</li>
+
+<li id="AutomaticBackup">
+<a href="{@docRoot}samples/AutoBackupForApps/index.html">Auto Backup for Apps</a>: Android 6.0
+(API level 23) introduces automatic backup for app settings. This sample demonstrates how to add
+filtering rules to an app in order to manage settings backup.
+</li>
+
+<li id="CameraRaw">
+<a href="{@docRoot}samples/Camera2Raw/index.html">Camera 2 Raw</a>: This sample demonstrates how to
+use the <code>Camera2</code> API to capture RAW camera buffers and save them as
+<code>DNG</code> files.
+</li>
+
+<li id="ConfirmCredential">
+  <a href="{@docRoot}samples/ConfirmCredential/index.html">Confirm Credential</a>: This sample
+  demonstrates how to use device credentials as an authentication method in your app.
+</li>
+
+<li id="DeviceOwner"><a href="{@docRoot}samples/DeviceOwner/index.html">Device Owner</a>: This
+  sample demonstrates how to use the device owner features to manage and
+  configure a device.
+</li>
+
+<li id="DirectShare"><a href="{@docRoot}samples/DirectShare/index.html">Direct Share</a>:
+  This sample demonstrates how to provide the
+  <a href="{@docRoot}about/versions/marshmallow/android-6.0.html#direct-share">Direct Share</a>
+  feature. The app shows some options directly in the list of share intent candidates.
+</li>
+
+<li id="FingerprintDialog">
+  <a href="{@docRoot}samples/FingerprintDialog/index.html">Fingerprint
+  Dialog</a>:
+  This sample demonstrates how to recognize registered fingerprints to
+  authenticate your app's user.
+</li>
+
+<li id="MidiScope">
+  <a href="{@docRoot}samples/MidiScope/index.html">MidiScope</a>:
+  This sample demonstrates how to use the <a href=
+  "{@docRoot}reference/android/media/midi/package-summary.html">MIDI API</a> to
+  receive and process MIDI signals coming from an attached input device.
+</li>
+
+<li id="MidiSynth">
+  <a href="{@docRoot}samples/MidiSynth/index.html">MidiSynth</a>:
+  This sample demonstrates how to use the <a href=
+  "{@docRoot}reference/android/media/midi/package-summary.html">MIDI API</a> to
+  receive and play MIDI messages coming from an attached input device.
+</li>
+
+<li id="NfcProvisioning"><a href="{@docRoot}samples/NfcProvisioning/index.html">NFC Provisioning</a>:
+  This sample demonstrates how to use NFC to provision other devices with a
+  specific device owner.
+</li>
+
+<li id="RuntimePermissions">
+  <a href=
+  "{@docRoot}samples/RuntimePermissions/index.html">RuntimePermissions</a>:
+  This sample shows runtime permissions available in Android 6.0 (API level 23)
+  and higher. Display the log on screen to follow the execution. If executed on
+  an Android 6.0 device, the app displays an additional option to access
+  contacts using an 6.0-only optional permission.
+</li>
+</ul>
\ No newline at end of file
diff --git a/docs/html/auto/images/assets/landing/01.gif b/docs/html/auto/images/assets/landing/01.gif
index 7a75f87..1433463 100644
--- a/docs/html/auto/images/assets/landing/01.gif
+++ b/docs/html/auto/images/assets/landing/01.gif
Binary files differ
diff --git a/docs/html/auto/images/assets/landing/02.gif b/docs/html/auto/images/assets/landing/02.gif
index 655c5bc..c0f9e52 100644
--- a/docs/html/auto/images/assets/landing/02.gif
+++ b/docs/html/auto/images/assets/landing/02.gif
Binary files differ
diff --git a/docs/html/auto/images/assets/landing/03.gif b/docs/html/auto/images/assets/landing/03.gif
index 195315a..7dacf59 100644
--- a/docs/html/auto/images/assets/landing/03.gif
+++ b/docs/html/auto/images/assets/landing/03.gif
Binary files differ
diff --git a/docs/html/auto/images/assets/landing/04.png b/docs/html/auto/images/assets/landing/04.png
index aecdb58..2e0df02 100644
--- a/docs/html/auto/images/assets/landing/04.png
+++ b/docs/html/auto/images/assets/landing/04.png
Binary files differ
diff --git a/docs/html/auto/images/assets/landing/05.png b/docs/html/auto/images/assets/landing/05.png
index a3baba4..564a6fd 100644
--- a/docs/html/auto/images/assets/landing/05.png
+++ b/docs/html/auto/images/assets/landing/05.png
Binary files differ
diff --git a/docs/html/auto/images/assets/landing/06.png b/docs/html/auto/images/assets/landing/06.png
index fe74a49..dcbba9a 100644
--- a/docs/html/auto/images/assets/landing/06.png
+++ b/docs/html/auto/images/assets/landing/06.png
Binary files differ
diff --git a/docs/html/auto/images/logos/auto/genesis.png b/docs/html/auto/images/logos/auto/genesis.png
new file mode 100644
index 0000000..488b888
--- /dev/null
+++ b/docs/html/auto/images/logos/auto/genesis.png
Binary files differ
diff --git a/docs/html/auto/images/logos/auto/jaguar.png b/docs/html/auto/images/logos/auto/jaguar.png
new file mode 100644
index 0000000..19778cb
--- /dev/null
+++ b/docs/html/auto/images/logos/auto/jaguar.png
Binary files differ
diff --git a/docs/html/auto/images/logos/auto/lambo.png b/docs/html/auto/images/logos/auto/lambo.png
new file mode 100644
index 0000000..c0d121c
--- /dev/null
+++ b/docs/html/auto/images/logos/auto/lambo.png
Binary files differ
diff --git a/docs/html/auto/images/logos/auto/landrover.png b/docs/html/auto/images/logos/auto/landrover.png
new file mode 100644
index 0000000..343b946
--- /dev/null
+++ b/docs/html/auto/images/logos/auto/landrover.png
Binary files differ
diff --git a/docs/html/auto/images/logos/auto/mahindra.png b/docs/html/auto/images/logos/auto/mahindra.png
index bd3957a..afed645 100644
--- a/docs/html/auto/images/logos/auto/mahindra.png
+++ b/docs/html/auto/images/logos/auto/mahindra.png
Binary files differ
diff --git a/docs/html/auto/images/ui/gearhead_custom_UI.png b/docs/html/auto/images/ui/gearhead_custom_UI.png
index a3baba4..fce7eb8 100644
--- a/docs/html/auto/images/ui/gearhead_custom_UI.png
+++ b/docs/html/auto/images/ui/gearhead_custom_UI.png
Binary files differ
diff --git a/docs/html/auto/images/ui/gearhead_custom_user_actions.png b/docs/html/auto/images/ui/gearhead_custom_user_actions.png
index 8e65ee04..5aedbb9 100644
--- a/docs/html/auto/images/ui/gearhead_custom_user_actions.png
+++ b/docs/html/auto/images/ui/gearhead_custom_user_actions.png
Binary files differ
diff --git a/docs/html/auto/images/ui/gearhead_day.png b/docs/html/auto/images/ui/gearhead_day.png
index a3baba4..5593caa 100644
--- a/docs/html/auto/images/ui/gearhead_day.png
+++ b/docs/html/auto/images/ui/gearhead_day.png
Binary files differ
diff --git a/docs/html/auto/images/ui/gearhead_drawer_generic.png b/docs/html/auto/images/ui/gearhead_drawer_generic.png
index 94dd305..1d6fc85 100644
--- a/docs/html/auto/images/ui/gearhead_drawer_generic.png
+++ b/docs/html/auto/images/ui/gearhead_drawer_generic.png
Binary files differ
diff --git a/docs/html/auto/images/ui/gearhead_drawers_customized.png b/docs/html/auto/images/ui/gearhead_drawers_customized.png
index fe74a49..308e8cf 100644
--- a/docs/html/auto/images/ui/gearhead_drawers_customized.png
+++ b/docs/html/auto/images/ui/gearhead_drawers_customized.png
Binary files differ
diff --git a/docs/html/auto/images/ui/gearhead_generic_UI.png b/docs/html/auto/images/ui/gearhead_generic_UI.png
index d7cd53d..cd51929 100644
--- a/docs/html/auto/images/ui/gearhead_generic_UI.png
+++ b/docs/html/auto/images/ui/gearhead_generic_UI.png
Binary files differ
diff --git a/docs/html/auto/images/ui/gearhead_lens_switching.png b/docs/html/auto/images/ui/gearhead_lens_switching.png
index 9fb8b65..39e4bc6 100644
--- a/docs/html/auto/images/ui/gearhead_lens_switching.png
+++ b/docs/html/auto/images/ui/gearhead_lens_switching.png
Binary files differ
diff --git a/docs/html/auto/images/ui/gearhead_night.png b/docs/html/auto/images/ui/gearhead_night.png
index 8f1ecdd..424df16 100644
--- a/docs/html/auto/images/ui/gearhead_night.png
+++ b/docs/html/auto/images/ui/gearhead_night.png
Binary files differ
diff --git a/docs/html/auto/images/ui/gearhead_overview.png b/docs/html/auto/images/ui/gearhead_overview.png
index 00b35ce..21948f7 100644
--- a/docs/html/auto/images/ui/gearhead_overview.png
+++ b/docs/html/auto/images/ui/gearhead_overview.png
Binary files differ
diff --git a/docs/html/auto/index.jd b/docs/html/auto/index.jd
index 2f0ffd5..843aabf 100644
--- a/docs/html/auto/index.jd
+++ b/docs/html/auto/index.jd
@@ -4,6 +4,7 @@
 no_footer_links=true
 page.type=about
 page.image=/images/cards/android-auto_2x.png
+nonavpage=true
 
 @jd:body
 
@@ -331,7 +332,8 @@
           </div>
           <div class="landing-body landing-align-center">
               <div class="landing-subhead">
-                Android Auto is coming soon to new cars from these manufacturers
+              We've partnered with manufacturers around the world to bring
+               the Android platform to cars.
               </div>
           </div>
 
@@ -430,20 +432,28 @@
               </a>
             </div>
             <div class="col-5">
+              <a href="http://www.genesismotors.com/en/index.html">
+                  <img src="{@docRoot}auto/images/logos/auto/genesis.png"
+                      width="120" height="120" class="img-logo" />
+              </a>
+            </div>
+
+            <div class="col-5">
               <a href="http://www.gmc.com/">
                   <img src="{@docRoot}auto/images/logos/auto/gmc.png"
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
+            </div>
+            <div class="cols cols-leftp">
             <div class="col-5">
               <a href="http://www.holden.com/">
                   <img src="{@docRoot}auto/images/logos/auto/holden.png"
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
-          </div>
 
-          <div class="cols cols-leftp">
+
             <div class="col-5">
               <a href="http://www.honda.com/">
                   <img src="{@docRoot}auto/images/logos/auto/honda.png"
@@ -462,15 +472,21 @@
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
+            </div>
+            <div class="cols cols-leftp">
+             <div class="col-5">
+              <a href="http://www.jaguar.com/index.html">
+                  <img src="{@docRoot}auto/images/logos/auto/jaguar.png"
+                      width="120" height="120" class="img-logo" />
+              </a>
+            </div>
             <div class="col-5">
               <a href="http://www.jeep.com/">
                   <img src="{@docRoot}auto/images/logos/auto/jeep.png"
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
-          </div>
 
-          <div class="cols cols-leftp">
             <div class="col-5">
               <a href="http://www.kia.com/worldwide/">
                   <img src="{@docRoot}auto/images/logos/auto/kia.png"
@@ -478,6 +494,21 @@
               </a>
             </div>
             <div class="col-5">
+              <a href=" http://www.lamborghini.com/">
+                  <img src="{@docRoot}auto/images/logos/auto/lambo.png"
+                      width="120" height="120" class="img-logo" />
+              </a>
+            </div>
+            </div>
+            <div class="cols cols-leftp">
+            <div class="col-5">
+              <a href=" http://www.landrover.com/">
+                  <img src="{@docRoot}auto/images/logos/auto/landrover.png"
+                      width="120" height="120" class="img-logo" />
+              </a>
+            </div>
+
+            <div class="col-5">
               <a href="http://www.mahindra.com/">
                   <img src="{@docRoot}auto/images/logos/auto/mahindra.png"
                       width="120" height="120" class="img-logo" />
@@ -495,15 +526,16 @@
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
-          </div>
+            </div>
 
-          <div class="cols cols-leftp">
-            <div class="col-5">
+              <div class="cols cols-leftp">
+              <div class="col-5">
               <a href="http://www.mitsubishi-motors.com/">
                   <img src="{@docRoot}auto/images/logos/auto/mitsubishi.png"
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
+
             <div class="col-5">
               <a href="http://www.nissan-global.com/">
                   <img src="{@docRoot}auto/images/logos/auto/nissan.png"
@@ -522,15 +554,15 @@
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
-          </div>
-
-          <div class="cols cols-leftp">
+            </div>
+            <div class="cols cols-leftp">
             <div class="col-5">
               <a href="http://www.ramtrucks.com/">
                   <img src="{@docRoot}auto/images/logos/auto/ram.png"
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
+
             <div class="col-5">
               <a href="http://www.renault.com/">
                   <img src="{@docRoot}auto/images/logos/auto/renault.png"
@@ -549,21 +581,23 @@
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
-          </div>
-
-          <div class="cols cols-leftp">
+            </div>
+            <div class="cols cols-leftp">
             <div class="col-5">
               <a href="http://www.smotor.com/">
                   <img src="{@docRoot}auto/images/logos/auto/ssangyong.png"
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
+
             <div class="col-5">
               <a href="http://www.subaru-global.com/">
                   <img src="{@docRoot}auto/images/logos/auto/subaru.png"
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
+
+
             <div class="col-5">
               <a href="http://www.globalsuzuki.com/automobile/">
                   <img src="{@docRoot}auto/images/logos/auto/suzuki.png"
@@ -576,25 +610,22 @@
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
-          </div>
-
-          <div class="cols cols-leftp">
-            <div class="col-5"></div>
+            </div>
+            <div class="cols cols-leftp">
             <div class="col-5">
               <a href="http://www.volkswagen.com/">
                   <img src="{@docRoot}auto/images/logos/auto/volkswagen.png"
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
+
             <div class="col-5">
               <a href="http://www.volvocars.com/intl">
                   <img src="{@docRoot}auto/images/logos/auto/volvo.png"
                       width="120" height="120" class="img-logo" />
               </a>
             </div>
-            <div class="col-5"></div>
-
-          </div>
+            </div>
         </div>
       </div>
 
@@ -619,25 +650,6 @@
         </div>
       </div>
   </div>
-  <div class="content-footer wrap" itemscope="" itemtype="http://schema.org/SiteNavigationElement"
-    style="border-top: none;">
-
-    <div class="layout-content-col col-16" style="padding-top:4px">
-      <style>#___plusone_0 {float:right !important;}</style>
-      <div class="g-plusone" data-size="medium"></div>
-    </div>
-  </div>
-
-  <div id="footer" class="wrap" style="width:940px;position:relative;top:-35px;z-index:-1">
-    <div id="copyright">
-        Except as noted, this content is
-        licensed under <a href="http://creativecommons.org/licenses/by/2.5/">
-        Creative Commons Attribution 2.5</a>. For details and
-        restrictions, see the <a href="{@docRoot}license.html">Content
-        License</a>.
-    </div>
-  </div>
-</div> <!-- end .landing-hero-container -->
 
   <script>
   $("a.landing-down-arrow").on("click", function(e) {
diff --git a/docs/html/design/_book.yaml b/docs/html/design/_book.yaml
new file mode 100644
index 0000000..4575475
--- /dev/null
+++ b/docs/html/design/_book.yaml
@@ -0,0 +1,111 @@
+toc:
+- title: Creative Vision
+  path: /design/get-started/creative-vision.html
+  section:
+  - title: Design Principles
+    path: /design/get-started/principles.html
+    custom_link_attributes:
+    - es-lang="Principios de diseño para Android"
+    - ja-lang="Android デザイン指針"
+    - ko-lang="Android 디자인 원칙"
+    - pt-br-lang="Princípios de projeto para Android"
+    - ru-lang="Принципы проектирования Android"
+    - zh-cn-lang="Android 设计原则"
+    - zh-tw-lang="Android 設計原則"
+  - title: New in Android
+    path: /design/patterns/new.html
+
+- title: Material for Android
+  path: /design/material/index.html
+  custom_link_attributes:
+  - ja-lang="マテリアル デザイン"
+  - ko-lang="머티어리얼 디자인"
+  - zh-cn-lang="材料设计"
+  - zh-tw-lang="材料設計"
+
+- title: Devices
+  path: /design/devices.html
+  section:
+  - title: Phones & Tablets
+    path: /design/handhelds/index.html
+  - title: Wear
+    path: /design/wear/index.html
+    section:
+    - title: Creative Vision
+      path: /design/wear/creative-vision.html
+    - title: Design Principles
+      path: /design/wear/principles.html
+    - title: App Structure
+      path: /design/wear/structure.html
+    - title: Context Awareness
+      path: /design/wear/context.html
+    - title: UI Patterns
+      path: /design/wear/patterns.html
+    - title: Style
+      path: /design/wear/style.html
+    - title: Watch Faces
+      path: /design/wear/watchfaces.html
+  - title: TV
+    path: /design/tv/index.html
+    section:
+    - title: Creative Vision
+      path: /design/tv/principles.html
+    - title: UI Patterns
+      path: /design/tv/patterns.html
+    - title: Style
+      path: /design/tv/style.html
+  - title: Auto
+    path: /design/auto/index.html
+
+- title: Pure Android
+  path: /design/patterns/index.html
+  section:
+  - title: Devices and Displays
+    path: /design/style/devices-displays.html
+  - title: Navigation
+    path: /design/patterns/navigation.html
+    custom_link_attributes:
+    - es-lang="Navegación con los botones Back y Up"
+    - ja-lang="Back と Up を使用したナビゲーション"
+    - ko-lang="뒤로 및 위로 탐색 기능이 포함된 탐색"
+    - pt-br-lang="Navegação com Voltar e Para cima"
+    - ru-lang="Навигация с помощью кнопок \"Назад\" и \"Вверх\""
+    - zh-cn-lang="使用返回和向上导航"
+    - zh-tw-lang="使用 [返回] 及 [上一層] 導覽"
+  - title: Notifications
+    path: /design/patterns/notifications.html
+    custom_link_attributes:
+    - es-lang="Notificaciones"
+    - ja-lang="通知"
+    - ko-lang="알림"
+    - pt-br-lang="Notificações"
+    - ru-lang="Уведомления"
+    - zh-cn-lang="通知"
+    - zh-tw-lang="通知"
+  - title: Widgets
+    path: /design/patterns/widgets.html
+  - title: Swipe Views
+    path: /design/patterns/swipe-views.html
+  - title: Full Screen
+    path: /design/patterns/fullscreen.html
+  - title: Confirming & Acknowledging
+    path: /design/patterns/confirming-acknowledging.html
+    custom_link_attributes:
+    - es-lang="Confirmación y reconocimiento"
+    - ja-lang="確認と通知"
+    - ko-lang="확인 및 승인하기"
+    - pt-br-lang="Confirmação e reconhecimento"
+    - ru-lang="Подтверждение и уведомление"
+    - zh-cn-lang="确认和确知"
+    - zh-tw-lang="確認及確認完成"
+  - title: Pure Android
+    path: /design/patterns/pure-android.html
+  - title: Compatibility
+    path: /design/patterns/compatibility.html
+  - title: Accessibility
+    path: /design/patterns/accessibility.html
+  - title: Help
+    path: /design/patterns/help.html
+
+- title: Downloads
+  path: /design/downloads/index.html
diff --git a/docs/html/design/auto/index.jd b/docs/html/design/auto/index.jd
index 49bd221..117ce63 100644
--- a/docs/html/design/auto/index.jd
+++ b/docs/html/design/auto/index.jd
@@ -2,13 +2,6 @@
 page.tags="design","Auto"
 @jd:body
 
-<a class="notice-developers" href="{@docRoot}training/auto/index.html">
-  <div>
-    <h3>Developer Docs</h3>
-    <p>Building Apps for Auto</p>
-  </div>
-</a>
-
 <div class="sidebox-wrapper">
 <div class="sidebox">
   <h2><strong>UI Guidelines</strong></h2>
@@ -26,6 +19,22 @@
 </div>
 </div>
 
+<a class="notice-developers" href="{@docRoot}training/auto/index.html">
+  <div>
+    <h3>Developer Docs</h3>
+    <p>Building Apps for Auto</p>
+  </div>
+</a>
+
+<a href="http://www.youtube.com/watch?v=vG9c5egwEYY"
+        class="notice-developers-video">
+<div>
+    <h3>Video</h3>
+    <p>Designing For Drivers</p>
+</div>
+</a>
+
+
 <p>Android Auto provide a standardized user interface and user interaction
 model that works across vehicles. As a designer, you do not
 need to worry about vehicle-specific hardware differences. This page
diff --git a/docs/html/design/design_toc.cs b/docs/html/design/design_toc.cs
index 477eb23..a837a04 100644
--- a/docs/html/design/design_toc.cs
+++ b/docs/html/design/design_toc.cs
@@ -18,13 +18,11 @@
 
   <li class="nav-section">
     <div class="nav-section-header empty"><a href="<?cs var:toroot ?>design/material/index.html"
-       es-lang="Material Design"
        ja-lang="マテリアル デザイン"
        ko-lang="머티어리얼 디자인"
-       pt-br-lang="Material Design"
-       ru-lang="Material Design"
        zh-cn-lang="材料设计"
-       zh-tw-lang="材料設計">
+       zh-tw-lang="材料設計"
+       >
     Material for Android</a></div>
   </li>
 
@@ -59,10 +57,9 @@
   </li>
 
   <li class="nav-section">
-    <div class="nav-section-header"><a href="<?cs var:toroot ?>design/style/index.html">Pure Android</a></div>
+    <div class="nav-section-header"><a href="<?cs var:toroot ?>design/patterns/index.html">Pure Android</a></div>
     <ul>
       <li><a href="<?cs var:toroot ?>design/style/devices-displays.html">Devices and Displays</a></li>
-      <li><a href="<?cs var:toroot ?>design/patterns/app-structure.html">App Structure</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/navigation.html"
        es-lang="Navegación con los botones Back y Up"
        ja-lang="Back と Up を使用したナビゲーション"
@@ -85,7 +82,6 @@
       <li><a href="<?cs var:toroot ?>design/patterns/widgets.html">Widgets</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/swipe-views.html">Swipe Views</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/fullscreen.html">Full Screen</a></li>
-
       <li><a href="<?cs var:toroot ?>design/patterns/confirming-acknowledging.html"
        es-lang="Confirmación y reconocimiento"
        ja-lang="確認と通知"
@@ -95,7 +91,6 @@
        zh-cn-lang="确认和确知"
        zh-tw-lang="確認及確認完成">
        Confirming &amp; Acknowledging</a></li>
-
       <li><a href="<?cs var:toroot ?>design/patterns/pure-android.html">Pure Android</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/compatibility.html">Compatibility</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/accessibility.html">Accessibility</a></li>
diff --git a/docs/html/design/devices.jd b/docs/html/design/devices.jd
index 3d23d07..4616836 100644
--- a/docs/html/design/devices.jd
+++ b/docs/html/design/devices.jd
@@ -1,7 +1,5 @@
 page.title=Android devices
-page.viewport_width=970
 section.landing=true
-header.hide=1
 footer.hide=1
 page.image=images/cards/android-devices_2x.jpg
 @jd:body
diff --git a/docs/html/design/downloads/index.jd b/docs/html/design/downloads/index.jd
index 089a4af..788c7c1 100644
--- a/docs/html/design/downloads/index.jd
+++ b/docs/html/design/downloads/index.jd
@@ -1,8 +1,11 @@
 page.title=Downloads
-page.tags=Icons,stencils,color swatches
+page.tags="icons","stencils","colors,"swatches"
+meta.tags="downloads, design, tools"
+section.landing=true
+footer.hide=true
+nonavpage=true
+forcelocalnav=true
 @jd:body
-
-
 <p>For icons, sticker sheets, and other downloadable resources, visit the
 <a href="http://www.google.com/design">Design site</a> or use the links below. </p>
 
@@ -28,10 +31,10 @@
   </div>
   <div class="col-4">
   <a class="download-button"  onClick="ga('send', 'event', 'Design', 'Download', 'Wear Toolkit AI');"
-    href="{@docRoot}downloads/design/Android_Wear_Toolkit_20140722.ai">Adobe&reg; Illustrator&reg; Toolkit</a>
+    href="{@docRoot}downloads/design/Android_Wear_Toolkit_371.ai">Adobe&reg; Illustrator&reg; Toolkit</a>
 
   <a class="download-button"  onClick="ga('send', 'event', 'Design', 'Download', 'Wear Toolkit PDF');"
-    href="{@docRoot}downloads/design/Android_Wear_Toolkit_20140722.pdf">PDF Toolkit</a>
+    href="{@docRoot}downloads/design/Android_Wear_Toolkit_371.pdf">PDF Toolkit</a>
   </div>
 </div>
 
@@ -105,7 +108,7 @@
   <div class="col-4">
 
     <img src="{@docRoot}design/media/downloads_wear_Slide_Ai_Icon.png" width="150"
-         style="width:150px;margin:0 auto;display:block">
+         style="width:150px;margin:0 auto 15px;display:block">
 
   </div>
   <div class="col-4">
@@ -125,7 +128,7 @@
   <div class="col-4">
 
     <img src="{@docRoot}design/media/downloads_wear_Slide_Psd_Icon.png" width="150"
-         style="width:150px;margin:0 auto;display:block">
+         style="width:150px;margin:0 auto 15px;display:block">
 
   </div>
   <div class="col-4">
@@ -145,11 +148,35 @@
   <div class="col-4">
 
     <img src="{@docRoot}design/media/downloads_wear_Slide_IconExample.png" width="150"
-         style="width:150px;margin:0 auto;display:block">
+         style="width:150px;margin:0 auto 20px;display:block">
 
   </div>
   <div class="col-4">
   <a class="download-button"  onClick="ga('send', 'event', 'Design', 'Download', 'Wear Watch Face Example Specifications');"
     href="{@docRoot}downloads/design/Slide_IconExample.psd">Adobe&reg; Photoshop&reg; Icon</a>
   </div>
+</div>
+
+<div class="cols">
+  <div class="col-5">
+  <h4>Hardware technical drawings</h4>
+<p>Technical drawings and specifications for the latest Android Wear devices.
+</p>
+
+  </div>
+  <div class="col-4">
+
+    <img src="{@docRoot}design/media/nemo_preview.png" width="150"
+         style="width:150px;margin:0 auto;display:block">
+
+  </div>
+  <div class="col-4">
+  <a class="download-button"  onClick="ga('send', 'event', 'Design', 'Download', 'Hardware Technical Drawings');"
+    href="{@docRoot}downloads/design/AndroidWear_AllGear_TechDrawings&Spec_20151101_square.png">
+PNG Toolkit (Square)</a>
+
+  <a class="download-button"  onClick="ga('send', 'event', 'Design', 'Download', 'Hardware Technical Drawings');"
+    href="{@docRoot}downloads/design/AndroidWear_AllGear_TechDrawings&Spec_20151101_round.png">
+PNG Toolkit (Round)</a>
+  </div>
 </div>
\ No newline at end of file
diff --git a/docs/html/design/get-started/creative-vision.jd b/docs/html/design/get-started/creative-vision.jd
index 974d5d0..26bc1b2 100644
--- a/docs/html/design/get-started/creative-vision.jd
+++ b/docs/html/design/get-started/creative-vision.jd
@@ -1,8 +1,11 @@
 page.title=Creative Vision
+section.landing=true
+footer.hide=1
 page.image=images/cards/design-creative-vision_2x.jpg
+
 @jd:body
 
-<img src="{@docRoot}design/media/creative_vision_main.png">
+<img src="{@docRoot}design/media/creative_vision_main.png" style="width:100%;margin-top:">
 
 <div class="vspace size-1">&nbsp;</div>
 
@@ -15,7 +18,7 @@
 <div class="vspace size-1">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-4">
+  <div class="col-1of3">
 
 <h4>Enchant me</h4>
 <p>Beauty is more than skin deep. Android apps are sleek and aesthetically pleasing on multiple levels.
@@ -24,7 +27,7 @@
 simplicity and purpose to create a magical experience that is effortless and powerful.</p>
 
   </div>
-  <div class="col-5">
+  <div class="col-1of3">
 
 <h4>Simplify my life</h4>
 <p>Android apps make life easier and are easy to understand. When people use your app for the first
@@ -35,7 +38,7 @@
 irrelevant flash.</p>
 
   </div>
-  <div class="col-4">
+  <div class="col-1of3">
 
 <h4>Make me amazing</h4>
 <p>It's not enough to make an app that is easy to use. Android apps empower people to try new things
diff --git a/docs/html/design/get-started/principles.jd b/docs/html/design/get-started/principles.jd
index 172a4e4..9e8a371 100644
--- a/docs/html/design/get-started/principles.jd
+++ b/docs/html/design/get-started/principles.jd
@@ -15,7 +15,7 @@
 <h2 id="enchant-me">Enchant Me</h2>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="delight-me">Delight me in surprising ways</h4>
 <p>A beautiful surface, a carefully-placed animation, or a well-timed sound effect is a joy to
@@ -23,7 +23,7 @@
 force is at hand.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_delight.png">
 
@@ -33,14 +33,14 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="real-objects-more-fun">Real objects are more fun than buttons and menus</h4>
 <p>Allow people to directly touch and manipulate objects in your app. It reduces the cognitive effort
 needed to perform a task while making it more emotionally satisfying.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_real_objects.png">
 
@@ -50,7 +50,7 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="make-it-mine">Let me make it mine</h4>
 <p>People love to add personal touches because it helps them feel at home and in control. Provide
@@ -58,7 +58,7 @@
 primary tasks.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_make_it_mine.png">
 
@@ -68,14 +68,14 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="get-to-know-me">Get to know me</h4>
 <p>Learn peoples' preferences over time. Rather than asking them to make the same choices over and
 over, place previous choices within easy reach.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_get_to_know_me.png">
 
@@ -85,13 +85,13 @@
 <h2 id="simplify-my-life">Simplify My Life</h2>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="keep-it-brief">Keep it brief</h4>
 <p>Use short phrases with simple words. People are likely to skip sentences if they're long.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_keep_it_brief.png">
 
@@ -101,14 +101,14 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="pictures-faster-than-words">Pictures are faster than words</h4>
 <p>Consider using pictures to explain ideas. They get people's attention and can be much more efficient
 than words.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_pictures.png">
 
@@ -118,14 +118,14 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="decide-for-me">Decide for me but let me have the final say</h4>
 <p>Take your best guess and act rather than asking first. Too many choices and decisions make people
 unhappy. Just in case you get it wrong, allow for 'undo'.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_decide_for_me.png">
 
@@ -135,14 +135,14 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="only-show-when-i-need-it">Only show what I need when I need it</h4>
 <p>People get overwhelmed when they see too much at once. Break tasks and information into small,
 digestible chunks. Hide options that aren't essential at the moment, and teach people as they go.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_information_when_need_it.png">
 
@@ -152,14 +152,14 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="always-know-where-i-am">I should always know where I am</h4>
 <p>Give people confidence that they know their way around. Make places in your app look distinct and
 use transitions to show relationships among screens. Provide feedback on tasks in progress.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_navigation.png">
 
@@ -169,7 +169,7 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="never-lose-my-stuff">Never lose my stuff</h4>
 <p>Save what people took time to create and let them access it from anywhere. Remember settings,
@@ -177,7 +177,7 @@
 easiest thing in the world.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_never_lose_stuff.png">
 
@@ -187,14 +187,14 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="looks-same-should-act-same">If it looks the same, it should act the same</h4>
 <p>Help people discern functional differences by making them visually distinct rather than subtle.
 Avoid modes, which are places that look similar but act differently on the same input.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_looks_same.png">
 
@@ -204,14 +204,14 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="interrupt-only-if-important">Only interrupt me if it's important</h4>
 <p>Like a good personal assistant, shield people from unimportant minutiae. People want to stay
 focused, and unless it's critical and time-sensitive, an interruption can be taxing and frustrating.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_important_interruption.png">
 
@@ -221,7 +221,7 @@
 <h2 id="make-me-amazing">Make Me Amazing</h2>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="give-me-tricks">Give me tricks that work everywhere</h4>
 <p>People feel great when they figure things out for themselves. Make your app easier to learn by
@@ -229,7 +229,7 @@
 may be a good navigational shortcut.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_tricks.png">
 
@@ -239,7 +239,7 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="its-not-my-fault">It's not my fault</h4>
 <p>Be gentle in how you prompt people to make corrections. They want to feel smart when they use your
@@ -247,7 +247,7 @@
 If you can fix it behind the scenes, even better.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_error.png">
 
@@ -257,14 +257,14 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="sprinkle-encouragement">Sprinkle encouragement</h4>
 <p>Break complex tasks into smaller steps that can be easily accomplished. Give feedback on actions,
 even if it's just a subtle glow.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png">
 
@@ -274,7 +274,7 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="do-heavy-lifting-for-me">Do the heavy lifting for me</h4>
 <p>Make novices feel like experts by enabling them to do things they never thought they could. For
@@ -282,7 +282,7 @@
 only a few steps.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_heavy_lifting.png">
 
@@ -292,14 +292,14 @@
 <div class="vspace size-2">&nbsp;</div>
 
 <div class="cols">
-  <div class="col-7">
+  <div class="col-7of12">
 
 <h4 id="make-important-things-fast">Make important things fast</h4>
 <p>Not all actions are equal. Decide what's most important in your app and make it easy to find and
 fast to use, like the shutter button in a camera, or the pause button in a music player.</p>
 
   </div>
-  <div class="col-6">
+  <div class="col-5of12">
 
     <img src="{@docRoot}design/media/principles_make_important_fast.png">
 
diff --git a/docs/html/design/handhelds/index.jd b/docs/html/design/handhelds/index.jd
old mode 100644
new mode 100755
index 81c2c19..4a4526c
--- a/docs/html/design/handhelds/index.jd
+++ b/docs/html/design/handhelds/index.jd
@@ -79,9 +79,9 @@
 </li>
 <li>
 <h4>Navigation Bar</h4>
-<p>New for phones in Android 4.0, the navigation bar is present only on devices that don't have
+<p>The navigation bar is present only on devices that don't have
   the traditional hardware keys. It houses the device navigation controls Back, Home, and
-  Recents, and also displays a menu for apps written for Android 2.3 or earlier.</p>
+  Recents.</p>
 </li>
 </ol>
 
diff --git a/docs/html/design/index.jd b/docs/html/design/index.jd
index 799a64f..b4e909f 100644
--- a/docs/html/design/index.jd
+++ b/docs/html/design/index.jd
@@ -1,10 +1,11 @@
 fullpage=true
 page.title=Design
-page.viewport_width=970
 section.landing=true
 meta.tags="beautifulapps, design, ux, patterns, holo, appquality, landing"
+page.metaDescription=Create beautiful experiences in your apps.
 header.hide=1
 footer.hide=1
+nonavpage=true
 @jd:body
 
 <section class="dac-expand dac-hero dac-light">
@@ -46,7 +47,7 @@
     <i class="dac-sprite dac-arrow-down-gray"></i>
   </a>
 </div>
-<section class="dac-section dac-gray dac-small dac-invert" id="latest"><div class="wrap">
+<section class="dac-section dac-gray dac-small" id="latest"><div class="wrap">
   <h2 class="norule">Latest</h2>
   <div class="resource-widget resource-flow-layout col-16"
        data-query="collection:design/landing/latest"
diff --git a/docs/html/design/material/index.jd b/docs/html/design/material/index.jd
index c5893a7..701c951 100644
--- a/docs/html/design/material/index.jd
+++ b/docs/html/design/material/index.jd
@@ -1,8 +1,8 @@
 page.title=Material Design for Android
 page.tags=Material,design
-page.type=design
 page.image=images/cards/design-material-for-android_2x.jpg
-
+footer.hide=true
+forcelocalnav=true
 @jd:body
 
 <!-- developer docs box -->
diff --git a/docs/html/design/media/nemo_preview.png b/docs/html/design/media/nemo_preview.png
new file mode 100644
index 0000000..757b87a
--- /dev/null
+++ b/docs/html/design/media/nemo_preview.png
Binary files differ
diff --git a/docs/html/design/patterns/actionbar.jd b/docs/html/design/patterns/actionbar.jd
index ef02c53..262172b 100644
--- a/docs/html/design/patterns/actionbar.jd
+++ b/docs/html/design/patterns/actionbar.jd
@@ -13,10 +13,10 @@
   </div>
 </a>
 
-<a class="notice-developers" href="{@docRoot}guide/topics/ui/actionbar.html">
+<a class="notice-developers" href="{@docRoot}training/appbar/index.html">
   <div>
     <h3>Developer Docs</h3>
-    <p>Action Bar</p>
+    <p>Adding the App Bar</p>
   </div>
 </a>
 
diff --git a/docs/html/design/patterns/index.jd b/docs/html/design/patterns/index.jd
new file mode 100644
index 0000000..01e5c0d
--- /dev/null
+++ b/docs/html/design/patterns/index.jd
@@ -0,0 +1,29 @@
+page.title=Pure Android
+footer.hide=1
+@jd:body
+
+<style>
+#landing-graphic-container {
+  position: relative;
+}
+
+#text-overlay {
+  position: absolute;
+  left: 0;
+  top: 402px;
+  width: 220px;
+}
+</style>
+
+<div id="landing-graphic-container">
+  <div id="text-overlay">
+    <span itemprop="description">Build visually compelling apps that look great on any
+    device.</span>
+    <br><br>
+    <a href="{@docRoot}design/style/devices-displays.html" class="landing-page-link">Devices and Displays</a>
+  </div>
+
+  <a href="{@docRoot}design/style/devices-displays.html">
+    <img src="{@docRoot}design/media/design_elements_landing.png">
+  </a>
+</div>
diff --git a/docs/html/design/patterns/navigation.jd b/docs/html/design/patterns/navigation.jd
old mode 100644
new mode 100755
index 703528e..abb3a73
--- a/docs/html/design/patterns/navigation.jd
+++ b/docs/html/design/patterns/navigation.jd
@@ -11,11 +11,10 @@
 </a>
 
 <p itemprop="description">Consistent navigation is an essential component of the overall user experience. Few things frustrate
-users more than basic navigation that behaves in inconsistent and unexpected ways. Android 3.0
-introduced significant changes to the global navigation behavior. Thoughtfully following the
-guidelines for Back and Up will make your app's navigation predictable and reliable for your users.</p>
-<p>Android 2.3 and earlier relied upon the system <em>Back</em> button for supporting navigation within an
-app. With the introduction of action bars in Android 3.0, a second navigation mechanism appeared:
+users more than basic navigation that behaves in inconsistent and unexpected ways. Thoughtfully
+following the guidelines for Back and Up will make your app's navigation predictable and reliable
+for your users.</p>
+<p>Action bars provide a second, standard navigation mechanism:
 the <em>Up</em> button, consisting of the app icon and a left-point caret.</p>
 
 <img src="{@docRoot}design/media/navigation_with_back_and_up.png">
diff --git a/docs/html/design/patterns/new.jd b/docs/html/design/patterns/new.jd
old mode 100644
new mode 100755
index 47b05b2..df4c2ed
--- a/docs/html/design/patterns/new.jd
+++ b/docs/html/design/patterns/new.jd
@@ -196,10 +196,7 @@
   <div class="col-7">
     <p>Android 4.0 removes the need for traditional hardware keys on
     phones by replacing them with a virtual navigation bar that houses
-    the Back, Home and Recents buttons. Read the
-    <a href="{@docRoot}design/patterns/compatibility.html">Compatibility</a>
-    pattern to learn how the OS adapts to phones with hardware buttons and
-    how pre-Android 3.0 apps that rely on menu keys are supported.</p>
+    the Back, Home and Recents buttons.</p>
   </div>
   <div class="col-6">
     <img src="{@docRoot}design/media/whats_new_nav_bar.png">
diff --git a/docs/html/design/patterns/notifications.jd b/docs/html/design/patterns/notifications.jd
index fdd435c..844c3b6 100644
--- a/docs/html/design/patterns/notifications.jd
+++ b/docs/html/design/patterns/notifications.jd
@@ -1,22 +1,22 @@
 page.title=Notifications
-page.tags="notifications","design","L"
+page.tags="notifications","design"
 @jd:body
 
-  <a class="notice-developers" href="{@docRoot}training/notify-user/index.html">
+  <a class="notice-developers right" href="{@docRoot}training/notify-user/index.html">
   <div>
     <h3>Developer Docs</h3>
     <p>Notifying the User</p>
   </div>
 </a>
 
-<a class="notice-designers" href="notifications_k.html">
+<a class="notice-designers right" href="notifications_k.html">
   <div>
     <h3>Notifications in Android 4.4 and Lower</h3>
   </div>
 </a>
 
 <!-- video box -->
-<a class="notice-developers-video" href="https://www.youtube.com/watch?v=Uiq2kZ2JHVY">
+<a class="notice-developers-video right" href="https://www.youtube.com/watch?v=Uiq2kZ2JHVY">
 <div>
     <h3>Video</h3>
     <p>DevBytes: Notifications in the Android L Developer Preview</p>
diff --git a/docs/html/design/patterns/notifications_k.jd b/docs/html/design/patterns/notifications_k.jd
index 01a12a7..39ee269 100644
--- a/docs/html/design/patterns/notifications_k.jd
+++ b/docs/html/design/patterns/notifications_k.jd
@@ -1,14 +1,15 @@
-page.title=Notifications in Android 4.4 and Lower
+page.title=Notifications, Android 4.4 and Lower
+footer.hide=1
 @jd:body
 
-<a class="notice-developers" href="{@docRoot}training/notify-user/index.html">
+<a class="notice-developers right" href="{@docRoot}training/notify-user/index.html">
   <div>
     <h3>Developer Docs</h3>
     <p>Notifying the User</p>
   </div>
 </a>
 
-<a class="notice-designers" href="notifications.html">
+<a class="notice-designers right" href="notifications.html">
   <div>
     <h3>Notifications in Android 5.0</h3>
   </div>
diff --git a/docs/html/design/patterns/pure-android.jd b/docs/html/design/patterns/pure-android.jd
index e617711..6446e39 100644
--- a/docs/html/design/patterns/pure-android.jd
+++ b/docs/html/design/patterns/pure-android.jd
@@ -65,28 +65,6 @@
 
 <div class="vspace size-2">&nbsp;</div>
 
-<div class="cols">
-  <div class="col-5">
-
-<h4>Don't use bottom tab bars</h4>
-<p>Other platforms use the bottom tab bar to switch between the app's views. Per platform convention,
-Android's tabs for view control are shown in action bars at the top of the screen instead. In
-addition, Android apps may use a bottom bar to display actions on a split action bar.</p>
-<p>You should follow this guideline to create a consistent experience with other apps on the Android
-platform and to avoid confusion between actions and view switching on Android.</p>
-<p>For more information on how to properly use action bars for view control, see
-<a href="{@docRoot}design/patterns/actionbar.html">Action Bars</a>.</p>
-
-  </div>
-  <div class="col-8">
-
-    <img src="{@docRoot}design/media/migrating_ios_dialers.png">
-    <div class="figure-caption">
-      Android dialer with tabs in an action bar vs. bottom tabs in iOS.
-    </div>
-
-  </div>
-</div>
 
 <div class="cols">
   <div class="col-5">
diff --git a/docs/html/design/patterns/swipe-views.jd b/docs/html/design/patterns/swipe-views.jd
index 9ee33db..789538d 100644
--- a/docs/html/design/patterns/swipe-views.jd
+++ b/docs/html/design/patterns/swipe-views.jd
@@ -2,7 +2,7 @@
 page.tags=viewpager,navigation,tabs
 @jd:body
 
-<a class="notice-developers" href="{@docRoot}training/implementing-navigation/lateral.html">
+<a class="notice-developers right" href="{@docRoot}training/implementing-navigation/lateral.html">
   <div>
     <h3>Developer Docs</h3>
     <p>Creating Swipe Views with Tabs</p>
@@ -20,7 +20,7 @@
 related data items, such as images, chats, or emails, and then pick one of the items to see the
 detail contents in a separate screen.</p>
 
-<img src="{@docRoot}design/media/swipe_views.png">
+<img itemprop="image" src="{@docRoot}design/media/swipe_views.png">
 <div class="figure-caption">
   Master (left) and detail (right) views.
 </div>
diff --git a/docs/html/design/patterns/widgets.jd b/docs/html/design/patterns/widgets.jd
old mode 100644
new mode 100755
index b149af6..42f563a
--- a/docs/html/design/patterns/widgets.jd
+++ b/docs/html/design/patterns/widgets.jd
@@ -87,7 +87,10 @@
 <div class="cols">
   <div class="col-6">
     <h3>Widget resizing</h3>
-    <p>With version 3.1, Android introduced resizable widgets to the platform. Resizing allows users to adjust the height and/or the width of a widget within the constraints of the home panel placement grid. You can decide if your widget is freely resizable or if it is constrained to horizontal or vertical size changes. You do not have to support resizing if your particular widget is inherently fixed-size.</p>
+    <p>Resizing allows users to adjust the height and/or the width of a widget within the
+constraints of the home panel placement grid. You can decide if your widget is freely resizable or
+if it is constrained to horizontal or vertical size changes. You do not have to support resizing if
+your particular widget is inherently fixed-size.</p>
     <p>Allowing users to resize widgets has important benefits:</p>
     <ul>
       <li>They can fine-tune how much information they want to see on each widget.</li>
@@ -103,7 +106,7 @@
   </div>
 </div>
 
-<p>Planning a resize strategy for your widget depends on the type of widget you're creating. List or grid-based collection widgets are usually straightforward because resizing the widget will simply expand or contract the vertical scrolling area. Regardless of the of the widget's size, the user can still scroll all information elements into view. Information widgets on the other hand require a bit more hands-on planning, since they are not scrollable and all content has to fit within a given size. You will have to dynamically adjust your widget's content and layout to the size the user defined through the resize operation.</p>
+<p>Planning a resize strategy for your widget depends on the type of widget you're creating. List or grid-based collection widgets are usually straightforward because resizing the widget will simply expand or contract the vertical scrolling area. Regardless of the widget's size, the user can still scroll all information elements into view. Information widgets on the other hand require a bit more hands-on planning, since they are not scrollable and all content has to fit within a given size. You will have to dynamically adjust your widget's content and layout to the size the user defined through the resize operation.</p>
 <img src="{@docRoot}design/media/widgets_resizing02.png">
 <p>In this simple example the user can horizontally resize a weather widget in 4 steps and expose richer information about the weather at the current location as the widget grows.</p>
 <p>For each widget size determine how much of your app's information should surface. For smaller sizes concentrate on the essential and then add more contextual information as the widget grows horizontally and vertically.</p>
diff --git a/docs/html/design/style/devices-displays.jd b/docs/html/design/style/devices-displays.jd
index caa77da..9edfadd 100644
--- a/docs/html/design/style/devices-displays.jd
+++ b/docs/html/design/style/devices-displays.jd
@@ -3,15 +3,7 @@
 
 @jd:body
 
-<a class="notice-designers-material"
-  href="http://www.google.com/design/spec/layout/principles.html">
-  <div>
-    <h3>Material Design</h3>
-    <p>Layout Principles<p>
-  </div>
-</a>
-
-<p>Android powers hundreds of millions of phones, tablets, and other devices in a wide variety of screen sizes and
+<p>Android powers more than a billion phones, tablets, and other devices in a wide variety of screen sizes and
 form factors. By taking advantage of Android's flexible layout system, you can create apps that
 gracefully scale from large tablets to smaller phones.</p>
 
diff --git a/docs/html/design/tv/images/icon.png b/docs/html/design/tv/images/icon.png
index ae34e18..9cf584c 100644
--- a/docs/html/design/tv/images/icon.png
+++ b/docs/html/design/tv/images/icon.png
Binary files differ
diff --git a/docs/html/design/tv/images/overscan.png b/docs/html/design/tv/images/overscan.png
index fb7e4bc..7957e97 100644
--- a/docs/html/design/tv/images/overscan.png
+++ b/docs/html/design/tv/images/overscan.png
Binary files differ
diff --git a/docs/html/design/tv/patterns.jd b/docs/html/design/tv/patterns.jd
index ccec285..622e678 100644
--- a/docs/html/design/tv/patterns.jd
+++ b/docs/html/design/tv/patterns.jd
@@ -39,9 +39,10 @@
 <h2 id="recommendation">Recommendations</h2>
 
 <p>The first row of the Android TV home screen displays cards for content recommended by applications.
-Your application provides these recommendations, as described in <a href="{@docRoot}training/tv/discovery/recommendations.html">
-</a>. For a visual overview of recommendations, see <a href="design/tv/index.html#recommendations">
-Design for Android TV</a>.</p>
+Your application provides these recommendations, as described in
+<a href="{@docRoot}training/tv/discovery/recommendations.html">Recommending TV Content</a>.
+For a visual overview of recommendations, see
+<a href="{@docRoot}design/tv/index.html#recommendations">Designing for Android TV</a>.</p>
 
 <div class="cols">
   <div class="col-8 with-callouts">
@@ -75,7 +76,7 @@
 should be different than the one provided for the large icon, and meet the following specifications:</p>
 
 <ul>
-  <li>Measure 2016 x 1134 pixels (1920 x 1080 plus 5% margin for for motion)</li>
+  <li>Measure 2016 x 1134 pixels (1920 x 1080 plus 5% margin for motion)</li>
   <li id="solid-background">Must not be transparent</li>
 </ul>
 
@@ -113,20 +114,24 @@
 
 <h4>Small icon</h4>
 
-<p>Recommendation cards include a small icon that is imposed over a colored background. The icon and
-background color display at 100% opacity when the card is selected, and at 50% opacity when not
-selected.</p>
+<p>Recommendation cards include a small icon that is imposed over a colored
+background. The icon and background color both display at 100% opacity when the card
+is selected and at 50% opacity when the card is not selected.</p>
 
 <img src="{@docRoot}design/tv/images/icon.png" alt="Recommendation icon examples" />
 
-<p>Here are the requirements for recommendation small icons:</p>
+<p>Here are the requirements for a small recommendation icon:</p>
 
 <ul>
-  <li>Flat image</li>
-  <li>Monocolor: size 16x16dp, white (#fff) icon with transparent background, PNG format</li>
-  <li>Graphics should be centered within the icon image</li>
+  <li>Visually flat graphic, monocolor, 16x16dp</li>
+  <li>Color <code>#eeeeee</code> with transparency</li>
+  <li>Graphic centered over transparent background</li>
+  <li>PNG file format</li>
 </ul>
 
+<p class="note"><strong>Note:</strong> The color value <code>#eeeeee</code> is actually a light
+gray, but it is used by the system to create a background which appears white.</p>
+
 <h2>Audio Feedback</h2>
 
 <p>Sounds on Android TV bring a cinematic quality to the interaction experience. You should
diff --git a/docs/html/design/tv/style.jd b/docs/html/design/tv/style.jd
index dd10a8a..4c43983 100644
--- a/docs/html/design/tv/style.jd
+++ b/docs/html/design/tv/style.jd
@@ -51,9 +51,11 @@
 
 <img src="{@docRoot}design/tv/images/overscan.png" alt="Overscan borders for TV" />
 
-<p>Build a 10% margin into your TV screen designs to account for overscan area the TV may not
-  display correctly. On a 1920 x 1080 pixel screen, this margin should be a minimum of 27px from the
-  top and bottom edges and a minimum of 48px from the right and left edges of the picture.</p>
+<p>Build a 5% margin into your TV screen designs to account for overscan area the TV may not
+  display correctly. On a 1920 x 1080 screen, this margin should be a minimum of 27 pixels
+  from the top and bottom edges and a minimum of 48 pixels from the right and left edges of the
+  picture.
+  </p>
 
 
 <h2>Color</h2>
diff --git a/docs/html/develop/index.jd b/docs/html/develop/index.jd
index bbd2f71..460d056 100644
--- a/docs/html/develop/index.jd
+++ b/docs/html/develop/index.jd
@@ -13,6 +13,12 @@
   <div class="wrap">
     <div class="cols dac-hero-content">
       <div class="col-1of2 col-push-1of2 dac-hero-figure">
+        <!--
+        <iframe width="448" height="252"
+            src="//www.youtube.com/embed/Z98hXV9GmzY?autohide=1&amp;showinfo=0"
+            frameborder="0" allowfullscreen=""
+            style="float: right;"></iframe>
+        -->
         <img class="dac-hero-image" src="{@docRoot}images/develop/hero_image_studio5_2x.png"
           srcset="/images/develop/hero_image_studio5.png 1x, /images/develop/hero_image_studio5_2x.png 2x" />
       </div>
@@ -53,15 +59,15 @@
   </a>
 </div>
 
-<section class="dac-section dac-gray dac-small dac-invert" id="latest"><div class="wrap">
+<section class="dac-section dac-gray dac-small" id="latest"><div class="wrap">
   <h2 class="norule">Latest</h2>
   <div class="resource-widget resource-flow-layout col-16"
-       data-query="type:youtube+tag:develop+tag:featured, type:blog+tag:develop+tag:featured"
-       data-query="collection:develop/landing/latest"
-       data-sortOrder="-timestamp"
-       data-cardSizes="6x6"
-       data-maxResults="12"
-       data-initial-results="3"></div>
+    data-query="type:youtube+tag:develop+tag:featured, type:blog+tag:develop+tag:featured"
+    data-sortOrder="-timestamp"
+    data-cardSizes="6x6"
+    data-items-per-page="6"
+    data-maxResults="15"
+    data-initial-results="3"></div>
 </div></section>
 
 <section class="dac-section dac-light"><div class="wrap">
@@ -74,9 +80,27 @@
        data-cardSizes="6x6"
        data-maxResults="15"
        data-initial-results="3"
+       data-items-per-page="6"
        data-sortOrder="random"></div>
 </div></section>
 
+<section class="dac-section dac-gray"><div class="wrap">
+  <h1 class="dac-section-title">Android development patterns</h1>
+  <div class="dac-section-subtitle">
+    Fundamental components and best practices that can help you build better apps.
+  </div>
+  <div class="resource-widget resource-flow-layout col-16"
+       data-query="collection:develop/landing/devpatterns"
+       data-cardSizes="6x6"
+       data-maxResults="3"></div>
+  <ul class="dac-section-links">
+    <li class="dac-section-link"><a href="https://www.youtube.com/playlist?list=PLWz5rJ2EKKc-lJo_RGGXL2Psr8vVCTWjM">
+      <span class="dac-sprite dac-auto-chevron"></span>
+      Playlist
+    </a></li>
+  </ul>
+</div></section>
+
 <section class="dac-section dac-section-light"><div class="wrap">
   <h1 class="dac-section-title">Android performance patterns</h1>
   <div class="dac-section-subtitle">
@@ -97,7 +121,7 @@
 <section class="dac-section dac-gray"><div class="wrap">
   <h1 class="dac-section-title">Ubiquitous computing on Android</h1>
   <div class="dac-section-subtitle">
-    A great experience for your users across devices. 
+    A great experience for your users across devices.
   </div>
   <div class="resource-widget resource-flow-layout col-16"
        data-query="collection:develop/landing/ubicomp"
@@ -128,5 +152,6 @@
        data-sortOrder="random"
        data-cardSizes="6x6"
        data-initial-results="6"
-       data-maxResults="12"></div>
+       data-items-per-page="24"
+       data-maxResults="24"></div>
 </div></section>
diff --git a/docs/html/distribute/analyze/_book.yaml b/docs/html/distribute/analyze/_book.yaml
new file mode 100644
index 0000000..1e24cb9
--- /dev/null
+++ b/docs/html/distribute/analyze/_book.yaml
@@ -0,0 +1,18 @@
+toc:
+- title: Get Started with Analytics
+  path: /distribute/analyze/start.html
+
+- title: Measure What Matters
+  path: /distribute/analyze/measure.html
+
+- title: Understand User Value
+  path: /distribute/analyze/understand-user-value.html
+
+- title: Improve Marketing ROI
+  path: /distribute/analyze/improve-roi.html
+
+- title: Build Better Apps
+  path: /distribute/analyze/build-better-apps.html
+
+- title: Act Across Google Services
+  path: /distribute/analyze/google-services.html
diff --git a/docs/html/distribute/analyze/start.jd b/docs/html/distribute/analyze/start.jd
index c3a1f87..0221f72 100644
--- a/docs/html/distribute/analyze/start.jd
+++ b/docs/html/distribute/analyze/start.jd
@@ -1,5 +1,5 @@
 page.title=Get Started with Analytics
-page.metaDescription=Unlock the power of Analytics by choosing the implementation that works best for your app.
+page.metaDescription=Get advanced insight into how players discover and play your games.
 page.tags="analytics, user behavior"
 page.image=images/cards/card-analytics_2x.png
 
diff --git a/docs/html/distribute/engage/_book.yaml b/docs/html/distribute/engage/_book.yaml
new file mode 100644
index 0000000..ef86a2a
--- /dev/null
+++ b/docs/html/distribute/engage/_book.yaml
@@ -0,0 +1,30 @@
+toc:
+- title: Increase Usage through Intents
+  path: /distribute/engage/intents.html
+
+- title: Build Useful Widgets
+  path: /distribute/engage/widgets.html
+
+- title: Use Rich Notifications
+  path: /distribute/engage/notifications.html
+
+- title: Drive Usage with Search
+  path: /distribute/engage/deep-linking.html
+
+- title: Drive Engagement with Ads
+  path: /distribute/engage/ads.html
+
+- title: Encourage Competition
+  path: /distribute/engage/game-services.html
+
+- title: Understand User Behavior
+  path: /distribute/engage/analytics.html
+
+- title: Add Google Sign-in
+  path: /distribute/engage/easy-signin.html
+
+- title: Integrate GCM
+  path: /distribute/engage/gcm.html
+
+- title: Get Feedback with Beta Tests
+  path: /distribute/engage/beta.html
diff --git a/docs/html/distribute/engage/beta.jd b/docs/html/distribute/engage/beta.jd
new file mode 100644
index 0000000..85ab5e5
--- /dev/null
+++ b/docs/html/distribute/engage/beta.jd
@@ -0,0 +1,113 @@
+page.title=Get real user feedback with beta tests
+page.metaDescription=Run alpha and beta tests from the developer console, and make improvements and correct issues before you release.
+page.image=images/cards/distribute/engage/beta.jpg
+page.tags="beta, alpha, release channels"
+Xnonavpage=true
+
+@jd:body
+
+<p>
+  With alpha or beta tests run from the Developer Console you can collect user
+  feedback on early versions of your app, then make improvements and correct
+  issues before you release to the full Play Store audience.
+</p>
+
+<img src="{@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test.png"
+  srcset="{@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test.png 1x,
+      {@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test_2x.png 2x"
+  width="500">
+
+<p>Testing your app with a select group of users will give you a chance to fix any technical or user experience issues before you release it widely, so that you can be confident about releasing the best version of your app to the majority of your users. Feedback from your test users won't affect your app’s public rating.</p>
+
+<p>
+  Learn more about <a href=
+  "https://support.google.com/googleplay/android-developer/answer/3131213"
+  class="external-link">how to run a beta test.</a>
+</p>
+
+<h2 id="how-to">How to Do It</h2>
+
+<ul>
+
+<ul>
+  <li>
+    <strong>Open beta —</strong> Use an open beta when you want any user who
+    has the link to be able to join your beta with just one click. One of the
+    advantages of an open beta is that it allows you to scale to a large number
+    of testers. However, you can also limit the maximum number of users who can
+    join.
+  </li>
+
+  <li>
+    <strong>Closed beta using email addresses —</strong> If you want to
+    restrict which users can access your beta, you have a new option: you can
+    now set up a closed beta using lists of individual email addresses which
+    you can add individually or upload as a .csv file. These users will be able
+    to join your beta via a one-click opt-in link.
+  </li>
+
+  <li>
+    <strong>Closed beta with Google+ community or Google Group —</strong> You
+    can continue to use betas with Google+ communities or Google Groups. You
+    can also move closed betas to an open beta while maintaining your existing
+    testers.
+  </li>
+</ul>
+
+<h2 id="tips">Tips</h2>
+
+<ul>
+  <li>Your testers will need to have a Google Account (<code>@gmail.com</code>)
+  or a Google Apps account to join a test.
+  </li>
+
+  <li>Use alpha tests for early experimental versions of your app that might
+  contain incomplete or unstable functionality, and use beta tests for apps
+  that should be complete and stable.
+  </li>
+
+  <li>Start testing with a small group of more trusted testers in an alpha
+  test, then expand your test to a larger group of testers in a beta test.
+  </li>
+
+  <li>Testers can't leave public reviews for alpha/beta apps on Google Play, so
+  include a feedback channel or provide the option to send feedback by email,
+  website, or a message forum.
+  </li>
+
+  <li>For an APK to be available to alpha testers it must have a higher version
+  number than your beta or production version, and for beta testers the APK
+  must have a higher version number than your production version.
+  </li>
+
+  <li>Alpha testers receive the alpha, beta, or production version of your app
+  with the highest version code that is compatible with their device, while
+  beta testers receive the beta or production version of your app with the
+  highest version code that is compatible with their device. This also means
+  that posting a higher version number APK cancels earlier tests of earlier
+  versions, so posting a production 2.0 version would cancel a beta test of
+  version 1.9 and that beta test would have canceled an alpha test of version
+  1.8.
+  </li>
+
+  <li>Also consider using <a href=
+  "https://www.google.com/insights/consumersurveys/" class=
+  "external-link">Google Consumer Surveys</a> to conduct market research and
+  gather user feedback at scale.
+  </li>
+</ul>
+
+<p style="clear:both">
+</p>
+
+<div class="dynamic-grid">
+<div class="headerLine">
+<h2 id="related-resources">Related Resources</h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/googleplay/beta"
+  data-sortOrder="-timestamp"
+  data-cardSizes="9x3"
+  data-maxResults="6"></div>
+  </div>
diff --git a/docs/html/distribute/engage/engage_toc.cs b/docs/html/distribute/engage/engage_toc.cs
index 91206d3..e86623f 100644
--- a/docs/html/distribute/engage/engage_toc.cs
+++ b/docs/html/distribute/engage/engage_toc.cs
@@ -29,6 +29,7 @@
         <span class="en">Drive Engagement with Ads</span></a>
     </div>
   </li>
+
   <li class="nav-section">
     <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs
         var:toroot?>distribute/engage/game-services.html">
@@ -53,7 +54,12 @@
         <span class="en">Integrate GCM</span></a>
     </div>
   </li>
-
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs
+        var:toroot?>distribute/engage/beta.html">
+        <span class="en">Get Feedback with Beta Tests</span></a>
+    </div>
+  </li>
 </ul>
 
 <script type="text/javascript">
diff --git a/docs/html/distribute/engage/game-services.jd b/docs/html/distribute/engage/game-services.jd
index 1c77d2d..4a22035 100644
--- a/docs/html/distribute/engage/game-services.jd
+++ b/docs/html/distribute/engage/game-services.jd
@@ -1,90 +1,193 @@
 page.title=Encourage Competition
 page.metaDescription= Bring out the competitor in your users with cloud save, multiplayer game play, and more.
-page.tags="games"
-page.image=/images/google/gps-play_games_logo.png
+page.tags="games, games services, play games"
+page.image=/images/cards/distribute/engage/card-game-services.png
 
 @jd:body
 
-<div class="figure" style="width:330px;">
-  <img src="{@docRoot}images/google/gps-play_games_logo.png">
+
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>Features</h2>
+    <ul>
+      <li><a href="#simplify">Simplify your game development</a></li>
+      <li><a href="#acquire-users">Acquire and engage users</a></li>
+      <li><a href="#socialize">Socialize your games</a></li>
+      <li><a href="#extend">Extend across form factors</a></li>
+      <li><a href="#manage">Manage your games</a></li>
+    </ul>
+  </div>
 </div>
 
 <p>
-  Increase game installs, in-app revenue, and engagement with <a href=
-  "{@docRoot}google/play-services/games.html">Google Play
-  Game Services</a>. Bring out the competitor in your users with cloud save,
-  multiplayer game play, and more.
+  Three out of four Android users download games to their device, making games
+  one the most popular additions to users’ devices. Making your games stand out
+  from the crowd is therefore key to success.
 </p>
 
+<div class="figure">
+  <img src="{@docRoot}images/google/gps-play_games_logo.png"
+        srcset="{@docRoot}images/google/gps-play_games_logo.png 1x,
+            {@docRoot}images/google/gps-play_games_logo_2x.png 2x"
+      alt="" width="170" />
+</div>
+
+<p>
+  Google Play game services save you from implementing popular game features
+  yourself such as achievements, leaderboards, real-time multiplayer, and
+  others. You can also let players sign in using their Google identity and
+  share their gaming experience with friends. And there is comprehensive
+  reporting and statistics to help you track and improve your game’s
+  performance.
+</p>
+
+<p>
+  Start now by visiting <a href="https://developers.google.com/games/services/"
+  class="external-link">Google Play game services.</a>
+</p>
+
+<h3 id="simplify">Simplify your game development</h3>
+
 <ul>
   <li>
-    <p>
-      <a href=
-      "https://developers.google.com/games/services/android/achievements">Achievements</a>
-      encourage players to try new features, resulting in more time spent in
-      your games.
-    </p>
+    <strong>Set up Google Play Games Services:</strong> Use the Google Play
+    Developer Console to manage games services and configure metadata for
+    authorizing and authenticating your game.
   </li>
 
   <li>
-    <p>
-      <a href=
-      "https://developers.google.com/games/services/android/leaderboards">Leaderboards</a>
-      are a fun way to drive competition among your players.
-    </p>
-  </li>
-
-  <li>
-    <p>
-      <a href=
-      "https://developers.google.com/games/services/android/cloudsave">Cloud
-      Save</a> allows users to continue where they left off on another device
-      or platform.
-    </p>
-  </li>
-
-  <li>
-    <p>
-      Multiplayer features allow users to invite friends to install games and
-      play together in <a href=
-      "https://developers.google.com/games/services/common/concepts/realtimeMultiplayer">
-      real-time</a> or <a href=
-      "https://developers.google.com/games/services/common/concepts/turnbasedMultiplayer">
-      turn-by-turn</a>.
-    </p>
-  </li>
-
-  <li>
-    <p>
-      <a href=
-      "https://play.google.com/store/apps/details?id=com.google.android.play.games">
-      Google Play Games App</a> provides additional exposure to increase
-      downloads and gameplay. It helps users play with friends, see what others
-      are playing, and discover featured games.
-    </p>
+    <strong>Use the Play Games APIs:</strong> Start integrating popular gaming
+    features into your games by using the <a href=
+    "https://developers.google.com/games/services/" class=
+    "external-link">Google Play Games Services APIs.</a>
   </li>
 </ul>
 
-<p>
-  And there is no need to worrying about device or OS version support. Google
-  Play Game Services is backward compatible, allowing you to reach more
-  users with less effort. Get started on <a href=
-  "{@docRoot}google/play-services/games.html">Google Play
-  Game Services</a>. For more tips on keeping gamers engaged, see the <a href=
-  "{@docRoot}distribute/essentials/best-practices/games.html">
-  Game Developer Best Practices</a>.
+<h3 id="acquire-users">Acquire and engage users</h3>
+
+<ul>
+  <li>
+    <strong>Player Analytics:</strong> View details on multiplayer games,
+    average revenue per paying user (ARPPU), sessions per user, and more; as
+    well as set and monitor daily revenue targets from a comprehensive
+    dashboard of player and engagement statistics.
+  </li>
+
+  <li>
+    <strong>Achievements:</strong> Set goals to encourage players to spend more
+    time in your games and try new features; reward them with experience points
+    that players redeem to gain level-ups in their Play Games profile.
+  </li>
+
+  <li>
+    <strong>Quests:</strong> Offer players in-game rewards and benefits for
+    exploring your game more deeply: use particular items, reach a certain
+    level, or perform a specific game action. And set up quests without the
+    need to release an app update.
+  </li>
+</ul>
+
+<h3 id="socialize">Socialize your games</h3>
+
+<ul>
+  <li>
+    <strong>Leaderboards:</strong> Drive competition among your players with
+    daily, weekly, and all-time leaderboards. Create multiple leaderboards for
+    game levels or other game features.
+  </li>
+
+  <li>
+    <strong>Multiplayer games:</strong> Add the challenge of playing against
+    others to your real-time and turn-by-turn games. Players can invite friends
+    to install your game across form factors and supported platforms.
+  </li>
+
+  <li>
+    <strong>Game gifts:</strong> Drive downloads and engagement by giving your
+    players the ability to send virtual in-game objects to their friends. Also
+    let players request gifts and use gifts as a trading mechanism within
+    games.
+  </li>
+</ul>
+
+<h3 id="extend">Extend across form factors</h3>
+
+<ul>
+  <li>
+    <strong>Saved Games:</strong> Save game states to the cloud and enable
+    players to resume games anytime on any of their devices. Cover images and
+    descriptions show players where they left off and attract them back.
+  </li>
+
+  <li>
+    <strong>Nearby Connections API:</strong> Enhance the experience of your
+    games for Android TV by connecting seamlessly with smartphones and tablets,
+    to use them as second-screen controllers.
+  </li>
+</ul>
+
+<h3 id="manage">Manage your games</h3>
+
+<ul>
+  <li>
+    <strong>Easily update your game metadata:</strong> Simplify your game
+    testing and player account management with the <a href=
+    "https://developers.google.com/games/services/management/" class=
+    "external-link">Google Play games services Management API.</a>
+  </li>
+
+  <li>
+    <strong>Automate your game production and distribution tasks:</strong>
+    Modify listings and upload icons for achievements and leaderboards with the
+    <a href="https://developers.google.com/games/services/publishing/" class=
+    "external-link">Google Play games services Publishing API.</a>
+  </li>
+
+  <li>
+    <strong>Insights and alerts:</strong> Get information on how to improve
+    your multiplayer, leaderboards, achievements, and other game services
+    implementations from the Developer Console.
+  </li>
+
+  <li>
+    <strong>Anti-piracy:</strong> Optionally disable game services for games
+    not purchased from the Play Store.
+  </li>
+</ul>
+
+<h3 id="tips">Tips</h3>
+<ul>
+  <li>The best Google Play game services integrations are highly visible,
+  customized, achievable, and incentivized.
+  </li>
+
+  <li>Prompt players to sign in to Google Play game services when your game
+  launches. This ensures they get access to the game service features, and also
+  maximizes the number of players online and ready to collaborate.
+  </li>
+
+  <li>Avoid creating achievements that rely too much on elements beyond the
+  player's control or cannot be earned once the player has made a decision in
+  your game.
+  </li>
+
+  <li>With Google Play game services, you can add seamless interaction between
+  Android and your games on the web and other platforms.
+  </li>
+</ul>
+
+<p style="clear:both">
 </p>
 
+<div class="dynamic-grid">
 <div class="headerLine">
-  <h2 id="related-resources">
-    Related Resources
-  </h2>
-
-
+<h2 id="related-resources">Related Resources</h2>
 </div>
 
-<div class="resource-widget resource-flow-layout col-13" data-query=
-"collection:distribute/engage/googleplaygames" data-sortorder="-timestamp"
-data-cardsizes="9x3" data-maxresults="6">
-</div>
-
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/engage/googleplaygames"
+  data-sortOrder="-timestamp"
+  data-cardSizes="9x3"
+  data-maxResults="6"></div>
+  </div>
diff --git a/docs/html/distribute/essentials/_book.yaml b/docs/html/distribute/essentials/_book.yaml
new file mode 100644
index 0000000..e8b7811
--- /dev/null
+++ b/docs/html/distribute/essentials/_book.yaml
@@ -0,0 +1,50 @@
+toc:
+- title: Core App Quality
+  path: /distribute/essentials/quality/core.html
+  custom_link_attributes:
+  - zh-cn-lang="应用的核心质量"
+
+- title: Tablet App Quality
+  path: /distribute/essentials/quality/tablets.html
+  custom_link_attributes:
+  - zh-cn-lang="平板电脑应用的质量"
+
+- title: Wear App Quality
+  path: /distribute/essentials/quality/wear.html
+
+- title: TV App Quality
+  path: /distribute/essentials/quality/tv.html
+
+- title: Auto App Quality
+  path: /distribute/essentials/quality/auto.html
+
+- title: Launch Checklist
+  path: /distribute/tools/launch-checklist.html
+  custom_link_attributes:
+  - zh-cn-lang="发布检查清单"
+
+- title: Localization Checklist
+  path: /distribute/tools/localization-checklist.html
+  custom_link_attributes:
+  - zh-cn-lang="本地化检查清单"
+
+- title: Brand Guidelines
+  path: /distribute/tools/promote/brand.html
+  custom_link_attributes:
+  - zh-cn-lang="品牌指南"
+
+- title: Device Art Generator
+  path: /distribute/tools/promote/device-art.html
+
+- title: Google Play Badges
+  path: https://play.google.com/intl/en_us/badges/
+  custom_link_attributes:
+  - zh-cn-lang="Google Play 徽章生成器"
+
+- title: Linking to Your Products
+  path: /distribute/tools/promote/linking.html
+  custom_link_attributes:
+  - zh-cn-lang="链接到您的商品"
+
+- title: Alternative Distribution
+  path: /distribute/tools/open-distribution.html
diff --git a/docs/html/distribute/essentials/essentials_toc.cs b/docs/html/distribute/essentials/essentials_toc.cs
index 072aa08..a78252d 100644
--- a/docs/html/distribute/essentials/essentials_toc.cs
+++ b/docs/html/distribute/essentials/essentials_toc.cs
@@ -51,7 +51,7 @@
     </div>
   </li>
   <li class="nav-section">
-    <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/tools/promote/badges.html" zh-cn-lang="Google Play 徽章生成器">
+    <div class="nav-section empty" style="font-weight:normal"><a href="https://play.google.com/intl/en_us/badges/" zh-cn-lang="Google Play 徽章生成器">
             <span class="en">Google Play Badges</span></a>
     </div>
   </li>
diff --git a/docs/html/distribute/essentials/index.jd b/docs/html/distribute/essentials/index.jd
index 6185e54..636c11d 100644
--- a/docs/html/distribute/essentials/index.jd
+++ b/docs/html/distribute/essentials/index.jd
@@ -1,5 +1,5 @@
 page.title=Essentials for a Successful App
-meta.tags="landing, quality"
+meta.tags="guidelines, quality"
 page.tags="guidelines", "tablet", "quality"
 section.landing=true
 nonavpage=true
@@ -12,21 +12,23 @@
   process of monitoring feedback and making improvement after launch.
 </p>
 
-<h2 id="guidelines">Quality Guidelines</h2>
+<section class="dac-section dac-small" id="latest-games"><div class="wrap">
+<h2 id="guidelines" class="norule">Quality Guidelines</h2>
 
 <div class="resource-widget resource-flow-layout landing col-16"
   data-query="collection:distribute/essentials/guidelines"
   data-cardSizes="6x6"
   data-maxResults="9">
-</div>
+</div></div></section>
 
-<h2 id="tools">Tools &amp; Resources</h2>
+<section class="dac-section dac-small" id="latest-games"><div class="wrap">
+<h2 id="tools" class="norule">Tools &amp; Resources</h2>
 
 <div class="resource-widget resource-flow-layout landing col-16"
   data-query="collection:distribute/essentials/tools"
   data-cardSizes="6x6"
   data-maxResults="9">
-</div>
+</div></div></section>
 
 <!-- <h2>Related resources</h2>
 
diff --git a/docs/html/distribute/essentials/quality/auto.jd b/docs/html/distribute/essentials/quality/auto.jd
index f547616..386b1d8 100644
--- a/docs/html/distribute/essentials/quality/auto.jd
+++ b/docs/html/distribute/essentials/quality/auto.jd
@@ -50,7 +50,7 @@
 <ol>
   <li> Use the Android Auto simulator to validate each checklist item. The simulator allows you to
   sideload your app for testing. For more information on the simulator, see
-  <a href="{@docRoot}training/auto/start/index.html#test-it">Run and Test Auto Apps</a>.</li>
+  <a href="{@docRoot}training/auto/start/index.html#test-it-dhu">Run and Test Auto Apps</a>.</li>
   <li>Test your app in a vehicle by uploading your app to the alpha/beta channel on Google Play.
   Apps will not work on Auto in vehicles unless they are installed from the Play Store.
   For more information, see <a
@@ -91,7 +91,8 @@
   These criteria ensure that your app follows critical design and interaction patterns
   to ensure a consistent, intuitive, and enjoyable user experience on Android Auto. Many elements,
   such as the navigation drawer, card backgrounds, fonts and icon colors, are set and rendered by
-  the system. Your own app-specific design elements must meet the following criteria.
+  the system. Your own app-specific design elements must meet the following criteria when running
+  on a device connected to Android Auto.
 </p>
 
 <table>
@@ -170,8 +171,8 @@
   <td>
     <p style="margin-bottom:.5em;">
     App never activates the phone screen to present any form of visual information (notifications,
-    toasts, video, images, advertising, etc.) on the phone screen while the app is active in Android
-    Auto.
+    toasts, video, images, advertising, etc.) on the phone screen while the app is interacting
+    with the Android Auto dashboard unit.
     </p>
   </td>
 </tr>
@@ -295,7 +296,7 @@
 
 <p>
   These criteria ensure that your app is configured correctly and provides expected
-  functional behavior.
+  functional behavior  when running on a device connected to Android Auto.
 </p>
 
 
diff --git a/docs/html/distribute/essentials/quality/core.jd b/docs/html/distribute/essentials/quality/core.jd
index cfe1a2a..4b0b546 100644
--- a/docs/html/distribute/essentials/quality/core.jd
+++ b/docs/html/distribute/essentials/quality/core.jd
@@ -238,7 +238,7 @@
 
 <div class="resource-widget resource-flow-layout col-13" data-query=
 "collection:distribute/essentials/corequalityguidelines/visualdesign"
-data-sortorder="-timestamp" data-cardsizes="9x3,9x3,6x3,6x3,6x3"
+data-sortorder="-timestamp" data-cardsizes="6x3"
 data-maxresults="6">
 </div>
 
@@ -592,6 +592,23 @@
   </td>
   </tr>
 
+  <tr id="PS-B1">
+  <td>
+    Battery
+  </td>
+  <td>
+    PS-B1
+  </td>
+  <td>
+    App supports power management features in Android 6.0+ (Doze and App Standby)
+    properly. In the case where core functionality is disrupted by power management,
+    only qualified apps may request an exemption.
+  </td>
+  <td>
+    <a href="#BA-1">BA-1</a>
+  </td>
+  </tr>
+
   <tr id="PS-M1">
   <td>
     Media
@@ -702,7 +719,7 @@
   </tr>
 
   <tr id="GP-P1">
-  <td rowspan="2">
+  <td rowspan="3">
     Policies
   </td>
   <td>
@@ -729,17 +746,31 @@
     "http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=188189">
     Content Rating Guidelines</a>.
     </p>
-
-    <p style="margin-bottom:.25em;">
-    Especially, note that apps that request permission to use the device
-    location cannot be given the maturity level "Everyone".
-    </p>
   </td>
   <td>
     <a href="#gp">GP-1</a>
   </td>
   </tr>
 
+  <tr id="GP-P2">
+  <td>
+    GP-P3
+  </td>
+  <td>
+    <p style="margin-bottom:.5em;">
+    App supports power management features in Android 6.0+ (Doze and App Standby)
+    properly. In the case where core functionality is disrupted by power management,
+    only qualified apps may request an exemption.
+    See <a
+    href="{@docRoot}training/monitoring-device-state/doze-standby.html#other_use_cases">Support
+    for other use cases</a> in Doze and App Standby.</p>
+    </p>
+  </td>
+  <td>
+    <a href="#gp">GP-4</a>
+  </td>
+  </tr>
+
   <tr id="GP-D1">
   <td rowspan="3">
     App&nbsp;Details Page
@@ -957,8 +988,7 @@
     Switch to another app to send the test app into the background. Go to
     Settings and check whether the test app has any services running while in
     the background. In Android 4.0 and higher, go to the Apps screen and find
-    the app in the "Running" tab. In earlier versions, use "Manage
-    Applications" to check for running services.
+    the app in the "Running" tab.
   </td>
   </tr>
 
@@ -1088,8 +1118,29 @@
   </td>
   </tr>
 
+  <tr id="BA-1">
+  <td>
+    Battery
+  </td>
+  <td>
+    BA-1
+  </td>
+  <td>
+    <p style="margin-bottom:.5em;">
+    Repeat <em>Core Suite</em> across Doze and App Standby cycles.
+    </p>
+
+    <p style="margin-bottom:.25em;">
+    Pay close attention to alarms, timers, notifications, syncs, and so on.
+    See <a
+    href="{@docRoot}training/monitoring-device-state/doze-standby.html#testing_doze_and_app_standby">Testing
+    with Doze and App Standby</a> for requirements and guidelines.
+    </p>
+  </td>
+  </tr>
+
   <tr id="gp">
-  <td rowspan="3">
+  <td rowspan="4">
     Google Play
   </td>
   <td>
@@ -1125,6 +1176,17 @@
 
   <tr id="GP-4">
   <td>
+    GP-4
+  </td>
+  <td>
+  Review <a
+  href="{@docRoot}training/monitoring-device-state/doze-standby.html#other_use_cases">Support
+  for other use cases</a> in Doze and App Standby.
+  </td>
+  </tr>
+
+  <tr id="GP-4">
+  <td>
     Payments
   </td>
   <td>
diff --git a/docs/html/distribute/googleplay/_book.yaml b/docs/html/distribute/googleplay/_book.yaml
new file mode 100644
index 0000000..009d1c07
--- /dev/null
+++ b/docs/html/distribute/googleplay/_book.yaml
@@ -0,0 +1,100 @@
+toc:
+- title: The Google Play Opportunity
+  path: /distribute/googleplay/about.html
+  custom_link_attributes:
+  - es-lang="La oportunidad de Google Play"
+  - ja-lang="Google Play の可能性"
+  - ko-lang="Google Play 활용 기회"
+  - pt-br-lang="A oportunidade do Google Play"
+  - ru-lang="Возможности Google Play"
+  - zh-cn-lang="Google Play 蕴藏的机会"
+  - zh-tw-lang="Google Play商機"
+
+- title: Get Started with Publishing
+  path: /distribute/googleplay/start.html
+  custom_link_attributes:
+  - es-lang="Comienza a publicar"
+  - ja-lang="アプリを公開する"
+  - ko-lang="게시 시작하기"
+  - pt-br-lang="Introdução à publicação"
+  - ru-lang="Первые шаги в публикациях"
+  - zh-cn-lang="开始发布"
+  - zh-tw-lang="開始發行"
+
+- title: Developer Console
+  path: /distribute/googleplay/developer-console.html
+  custom_link_attributes:
+  - es-lang="Consola para desarrolladores"
+  - ja-lang="デベロッパー コンソール"
+  - ko-lang="개발자 콘솔"
+  - pt-br-lang="Console do Desenvolvedor"
+  - ru-lang="Консоль разработчика"
+  - zh-cn-lang="开发者控制台"
+
+- title: Distribute to Android Wear
+  path: /distribute/googleplay/wear.html
+  custom_link_attributes:
+  - es-lang="Distribución para Android Wear"
+  - ja-lang="Android Wear への配布"
+  - ko-lang="Android Wear에 배포"
+  - pt-br-lang="Distribuindo para Android Wear"
+  - ru-lang="Распространение приложений Android Wear"
+  - zh-cn-lang="分发到 Android Wear"
+  - zh-tw-lang="散佈至 Android Wear"
+
+- title: Distribute to Android TV
+  path: /distribute/googleplay/tv.html
+  custom_link_attributes:
+  - es-lang="Distribución para Android TV"
+  - ja-lang="Android TV への配布"
+  - ko-lang="Android TV에 배포"
+  - pt-br-lang="Distribuindo para Android TV"
+  - ru-lang="Распространение приложений в Android TV"
+  - zh-cn-lang="分发到 Android TV"
+  - zh-tw-lang="散佈至 Android 電視"
+
+- title: Distribute to Android Auto
+  path: /distribute/googleplay/auto.html
+  custom_link_attributes:
+  - es-lang="Distribución para Android Auto"
+  - ja-lang="Android Auto への配布"
+  - ko-lang="Android Auto에 배포"
+  - pt-br-lang="Distribuindo para o Android Auto"
+  - ru-lang="Распространение приложений для Android Auto"
+  - zh-cn-lang="分发到 Android Auto"
+  - zh-tw-lang="散佈至 Android Auto"
+
+- title: Designed for Families
+  path: /distribute/googleplay/families/about.html
+  custom_link_attributes:
+  - es-lang="Diseñado para la familia"
+  - ru-lang="Для всей семьи"
+  - zh-cn-lang="为家庭设计"
+
+- title: Google Play for Work
+  path: /distribute/googleplay/work/about.html
+
+- title: Google Play for Education
+  path: /distribute/googleplay/edu/about.html
+  section:
+  - title: Publish Apps
+    path: /distribute/googleplay/edu/start.html
+  - title: Video Resources
+    path: /distribute/googleplay/edu/videos.html
+
+- title: Stream Your Content with Cast
+  path: /distribute/googleplay/cast.html
+
+- title: Build VR with Cardboard
+  path: /distribute/googleplay/cardboard.html
+
+- title: Find Success on Google Play
+  path: /distribute/googleplay/guide.html
+  custom_link_attributes:
+  - es-lang="Cómo tener éxito en Google Play"
+  - ja-lang="Google Play で成功を手にする"
+  - ko-lang="Google Play에서 성공 모색"
+  - pt-br-lang="Obtendo sucesso no Google Play"
+  - ru-lang="Найдите свой путь к успеху в Google Play"
+  - zh-cn-lang="在 Google Play 上取得成功"
+  - zh-tw-lang="在 Google Play 上尋找成功"
diff --git a/docs/html/distribute/googleplay/about.jd b/docs/html/distribute/googleplay/about.jd
index 543d7d3..a93d1c7 100644
--- a/docs/html/distribute/googleplay/about.jd
+++ b/docs/html/distribute/googleplay/about.jd
@@ -6,367 +6,148 @@
 
 @jd:body
 
-    <div id="qv-wrapper">           
+<div id="qv-wrapper">
   <div id="qv">
   <h2>About Google Play</h2>
     <ol style="list-style-type:none;">
-      <li><a href="#reach">Worldwide Reach, Rapid Growth</a></li>
-      <li><a href="#ratings-reviews">User Ratings and Reviews</a></li>
-      <li><a href="#category-browsing">Category Browsing</a></li>
-      <li><a href="#search">Search</a></li>
-      <li><a href="#top-charts-and-lists">Top Charts and Lists</a></li>
-      <li><a href="#featured-staff-picks">Featured, Staff Picks, Collections, and Badges</a></li>
-      <li><a href="#product-detail-pages">Store Listing Pages</a></li>
-      <li><a href="#related-resources">Related Resources</a></li>
+
+      <li><a href="#playstore-discovery">Discovery on the Play Store and the Top Lists</a></li>
+      <li><a href="#playstore-listing">Your Play Store Listing</a></li>
+      <li><a href="#devpage">Your Developer Page</a></li>
+      <li><a href="#search-discovery">Discovery through Search</a></li>
+      <li><a href="#browsing">Personalized browsing experience</a></li>
+      <li><a href="#featured-staff-picks">Featured Apps and Collections</a></li>
+      <li><a href="#editors-choice">Editor's Choice, Top Developer, and Other Badges</a></li>
     </ol>
   </div>
 </div>
 
+<h2 id="reach">Reach Users Around the World</h2>
+
 <p>
   Google Play is the premier store for distributing Android apps. When you
-  publish on Google Play, you put your apps in front of Android's huge base of
-  active customers, in more than 190 countries and territories across the
+  publish on Google Play, you put your apps in front of over 1 billion active
+  Android users, in more than 190 countries and territories across the
   world.
 </p>
 
-<div>
-  <img src="{@docRoot}images/gp-about-0.jpg" alt="Google Play on an Android Tablet"
-  style="width:480px;position:relative" />
-</div>
+<img src="{@docRoot}images/distribute/googleplay/about_hero_play-opportunity.png"
+  srcset="{@docRoot}images/distribute/googleplay/about_hero_play-opportunity.png 1x,
+      {@docRoot}images/distribute/googleplay/about_hero_play-opportunity_2x.png 2x"
+  alt="" width="460" />
 
-<p>
-  Google Play is a central part of the Android experience. New users
-  personalize their devices with apps, games, and other Google Play content.
-  Existing users return regularly to see what's trending and new. Downloading
-  new apps is extremely convenient and fast&mdash; Google Play pushes apps to
-  the user's devices instantly, over the air.
-</p>
+<div class="wrap">
 
-<p>
-  Google Play is also a top destination for web users. Anyone with a browser
-  can explore Google Play on the web. Android users can even buy and install
-  the apps they want and Google Play pushes them automatically to their devices
-  with no cables required.
-</p>
-
-<p>
-  The accessibility and convenience of the Google Play web site give you new
-  ways to drive traffic to your products from many sources, such as online ads,
-  web search and cross-linking. Google Play is designed to connect users with
-  great apps and games. It provides key channels to get your app noticed and
-  gain traction in the marketplace.
-</p>
-
-<div class="headerLine">
-  <h2 id="ratings-reviews">
-    User Ratings and Reviews
-  </h2>
-
-
-</div>
-
-<p>
-  Prospective users look at ratings and reviews as key benchmarks of app
-  quality. By rating apps from one to five stars and posting reviews, Android
-  users show their appreciation for the apps they have downloaded.
-</p>
-
-<p>
-  <strong>Your app's rating is one of the most important factors influencing
-  its ranking</strong> in the Google Play lists and search results. It's also
-  one of the key metrics that the editorial staff looks for when curating apps
-  and games for promotion in the store.
-</p>
-
-<div class="img" style="padding: 1em auto;width:96%;">
-  <img src="{@docRoot}images/gp-rating-web.png" style="border:1px solid #ddd;">
-</div>
-
-<div class="headerLine">
-  <h2 id="category-browsing">
-    Category Browsing
-  </h2>
-
-
-</div>
-
-<p>
-  When you publish an app in Google Play, you pick the category where you want
-  users to find your app. More than 30 categories are available. Inside each
-  category, apps are ranked based on a combination of ratings, reviews,
-  downloads, country, and other factors.
-</p>
-
-<div class="headerLine">
-  <h2 id="search">
-    Search
-  </h2>
-
-
-</div>
-
-<p>
-  Search on Google Play lets users pinpoint an app or game quickly. Search uses
-  powerful heuristics to suggest terms as the user types, and it offers direct
-  links to apps as suggestions. In results, users find the most relevant, most
-  popular apps at the top.
-</p>
-
-<div class="headerLine">
-  <h2 id="top-charts-and-lists">
-    Top Charts and Lists
-  </h2>
-
-
-</div>
-
-<div class="figure">
-  <img src="{@docRoot}images/gp-about-top.jpg">
-</div>
-
-<p>
-  Top charts keep users in touch with what’s popular and trending with Android
-  users, right from the Apps and Games home pages. The charts stay fresh,
-  updating several times each day based on recent download activity. As an
-  app's ratings and download activity grow, it can move up in the charts.
-</p>
-
-<p>
-  To make the charts as relevant as possible for users across the world, they
-  are also country-specific in Google Play's most popular countries. As your
-  apps get traction and build momentum in downloads and ratings, they’ll climb
-  one or more of the top charts and gain even more exposure.
-</p>
-
-<table style="width:50%;">
-  <tr>
-    <td>
-      Top Free
-    </td>
-    <td>
-      Free apps and free games lists
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      Top Paid
-    </td>
-    <td>
-      Paid apps and paid games lists
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      Top Grossing
-    </td>
-    <td>
-      Gross proceeds, free or paid
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      Top New Free
-    </td>
-    <td>
-      Less than 30 days old
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      Top New Paid
-    </td>
-    <td>
-      Less than 30 days old
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      Trending
-    </td>
-    <td>
-      New arrivals growing quickly in installs
-    </td>
-  </tr>
-</table>
-
-<div class="headerLine">
-  <h2 id="featured-staff-picks">
-    Featured, Staff Picks, Collections, and Badges
-  </h2>
-
-
-</div>
-
-<p>
-  The Google Play editorial team is dedicated to bringing the best apps to the
-  attention of users and setting the tone for app quality throughout the store.
-  It constantly reviews apps from across Google Play to find not only the
-  best-known apps and games, but also the "diamonds in the rough" that they
-  want more people to see. The team promotes great apps in the
-  <em>Featured</em>, <em>Staff Picks</em>, and other collections.
-</p>
-
-<p>
-  You can't nominate your app for featuring, but the team is always monitoring
-  Google Play for great apps. If you build an app that users love and that
-  looks great on Android devices, the editorial team will notice.
-</p>
-
-<h3 id="featured-staff-picks2">
-  Featured and Staff Picks
-</h3>
-
-<p>
-  Each week the Google Play editorial staff selects a new set of apps to
-  promote in its popular <em>Featured</em> and <em>Staff Picks</em>
-  collections.
-</p>
-
-<p>
-  The <em>Featured</em> collections highlight the latest and greatest app and
-  game titles available for Android. The list also includes the best and most
-  popular apps in the top categories are also featured. <em>Staff Picks</em>
-  collects all recently featured apps and games on Google Play. To focus on
-  tablet users, A special <em>Staff Picks</em> collection highlights the best
-  apps for Android tablets.
-</p>
-
-<table style="text-align:center;margin:1.5em 0;">
-  <tr>
-    <td style="border:none;">
-      <img src="{@docRoot}images/gp-about-picks1.jpg">
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-6of12">
+      <h3 id="playstore-discovery">Discovery on the Play Store and the top lists</h3>
       <p>
-        Featured
+        The Play Store has been built to make discovering relevant apps, games, and
+        other content simple and pleasurable. Users can browse over 30 categories of
+        ranked apps. They can also discover popular and trending apps from one of the
+        ‘top charts’; updated throughout the day, they’re even country-specific in
+        Google Play's most popular countries.
       </p>
-    </td>
-    <td style="border:none;">
-      <img src="{@docRoot}images/gp-about-picks2.jpg">
-      <p>
-        Collection
-      </p>
-    </td>
-    <td style="border:none;">
-      <img src="{@docRoot}images/gp-about-picks3.jpg">
-      <p>
-        Editors' Choice
-      </p>
-    </td>
-  </tr>
-</table>
-
-<h3 id="collections">
-  App collections
-</h3>
-
-<p>
-  From time to time the editorial staff puts together a collection of apps and
-  games based on a theme or seasonal event. Users frequently use these lists to
-  select apps, attracted by the timeliness of the collection.
-</p>
-
-<p>
-  The editorial staff chooses apps for collection promotions &mdash;
-  high-quality apps that show the best of Android on phones and tablets. The
-  staff also looks for apps that can make an interesting or unique contribution
-  to the collection as a whole.
-</p>
-
-<h3 id="editors-choice">
-  <img style="margin-right:.25em;margin-bottom:.5em;" src=
-  "{@docRoot}images/editorschoice_ann.png"> Editors' Choice
-</h3>
-
-<p>
-  <em>Editors’ Choice</em> is a curated collection of apps that highlights some
-  of the very best apps available on Android. Editors choose these apps for
-  quality and great user interface, long-term popularity and innovative use of
-  Android features.
-</p>
-
-<p>
-  Apps chosen for <em>Editors’ Choice</em> also receive a badge that is
-  displayed wherever the app name is seen in Google Play.
-</p>
-
-<h3 id="top-developer">
-  <img style="margin-right:.25em;margin-bottom:.5em;" src=
-  "{@docRoot}images/topdev_ann.png"> Top Developer
-</h3>
-
-<p>
-  Top Developer is a badge recognizing established, respected developers for
-  their commitment to launching high-quality and innovative apps on Android.
-  The Google Play editorial staff awards a Top Developer badge from
-  time-to-time based on the cumulative work of the developer.
-</p>
-
-<p>
-  The Top Developer badge appears next to the developer name wherever it is
-  displayed in Google Play. The badge means long-term recognition of all of the
-  developer’s apps. It signifies an additional level of trust and confidence
-  users have in a developer’s products.
-</p>
-
-<div class="headerLine">
-  <h2 id="product-detail-pages">
-    Store Listing Pages
-  </h2>
-
-
-</div>
-
-<div class="figure">
-  <img src="{@docRoot}images/gp-about-listing.jpg">
-</div>
-
-<p>
-  Your app’s Google Play storefront is its <em>store listing page</em>: a rich
-  and colorful page that lets you promote your app, highlight its ratings and
-  reviews, and show what your app can do.
-</p>
-
-<p>
-  Your store listing is where your users come to find out everything about your
-  app. When they see your app listed in search results, top charts, category
-  listings, and collections, one tap takes them directly to your store listing.
-</p>
-
-<p>
-  Manage your product details page through the <a href=
-  "https://play.google.com/apps/publish/">Google Play Developer Console</a>
-  from any web browser. Sign in to upload or update your brand assets, and
-  enter your product details in the languages of your markets.
-</p>
-
-<p>
-  When you publish, Google Play adds your app’s ratings, reviews, links to your
-  other products, and more. It also makes sure your store listing page looks
-  great on phones, tablets, and in a web browser.
-</p>
-
-<p>
-  You can link web users directly to your product details page from outside
-  Google Play, such as from your web site, an ad campaign, reviews, social
-  media posts, and more. See <a href=
-  "{@docRoot}distribute/tools/promote/linking.html">Linking to Your
-  Products</a> to find out how.
-</p>
-
-<p style="clear:both">
-</p>
-
-<div class="headerLine">
-<h2>Related Resources</h2>
-</div>
-
-<div class="resource-widget resource-flow-layout col-13"
-  data-query="collection:distribute/googleplay"
-  data-sortOrder="-timestamp"
-  data-cardSizes="9x3"
-  data-maxResults="4"></div>
     </div>
+    <div class="col-5of12 col-push-1of12">
+     <img src="{@docRoot}images/distribute/googleplay/about_play_store_home.png"
+        style="padding-top:1em;" width="225">
+    </div>
+  </div>
+
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-6of12">
+      <h3 id="playstore-listing">Your Play Store listing</h3>
+      <p>
+        Your app’s Play Store listing is where users come to find out everything
+        about your app: hero image or video, age rating, total downloads, summary
+        rating, features, and screenshots. Users can also see the ratings and reviews
+        left by other users, which are an important influence on your app’s ranking
+        in lists and search. When creating your app’s page you can take advantage of
+        <a href="{@docRoot}distribute/users/experiments.html"
+        >Store Listing Experiments</a> to test variations in
+        text and graphics and find the combination that drives the most downloads.
+      </p>
+    </div>
+    <div class="col-5of12 col-push-1of12">
+     <img src="{@docRoot}images/distribute/googleplay/about_play_store_listing.png"
+          style="padding-top:1em;" width="225">
+    </div>
+  </div>
+
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-6of12">
+      <h3 id="devpage">Your developer page</h3>
+      <p>
+        You can now promote your brand using your new <a href=
+        "https://support.google.com/googleplay/android-developer/answer/6226441"
+        class="external-link">developer page.</a> Add a hero image, logo, and
+        description, then optionally add a link to your website and a featured app.
+        This is a great way to increase exposure, in addition to your
+        developer-specific app collection on Google Play.
+      </p>
+    </div>
+    <div class="col-5of12 col-push-1of12">
+     <img src="{@docRoot}images/distribute/googleplay/about_developer_page.png"
+          style="padding-top:1em;" width="225">
+    </div>
+  </div>
+
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-6of12">
+      <h3 id="search-discovery">Discovery through search</h3>
+      <p>
+        Search on Google Play is one of the single biggest drivers of installs and it
+        lets users pinpoint an app or game quickly. Search uses powerful heuristics
+        to suggest terms as the user types, and it offers direct links to apps as
+        suggestions. In results, users find the most relevant and most popular apps
+        at the top.
+      </p>
+    </div>
+    <div class="col-5of12 col-push-1of12">
+     <img src="{@docRoot}images/distribute/googleplay/about_search_results.png"
+          style="padding-top:1em;" width="225">
+    </div>
+  </div>
+
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-6of12">
+      <h3 id="browsing">Personalized browsing experience</h3>
+      <p>
+        Using manual and algorithmic curation, the Play Store creates unique
+        collections that represent deeper user interests. These collections are then
+        matched with a user’s interests and displayed on their Play Store home page.
+        Since its introduction this more-personalized approach to app listings has
+        doubled the likelihood a user will install an app. This example shows the
+        home page of a user who enjoys outdoor activity and fitness apps.
+      </p>
+    </div>
+    <div class="col-5of12 col-push-1of12">
+     <img src="{@docRoot}images/distribute/googleplay/about_personalized_home.png"
+          style="padding-top:1em;" width="225">
+    </div>
+  </div>
+</div>
+
+<h2 id="featured-staff-picks">Featured Apps and Collections</h2>
+<p>
+  The Google Play editorial team bring the best apps to the attention of users
+  through the Featured, Staff Picks, and Editor’s Choice collections.
+  Periodically they also create app collections based on a theme or seasonal
+  event. The apps and games featured will include some that are popular and
+  well known, but also innovative and groundbreaking apps that haven’t built
+  their ranking yet.
+</p>
+
+<h2 id="editors-choice">Editor's Choice, Top Developer, and Other Badges</h2>
+<p>
+  The best apps and games and the developers who create them are awarded badges
+  by the Google Play editorial staff: Editors’ Choice, Top Developer, and
+  others. Displayed with the app and developer name when they are seen in
+  Google Play, they give users an additional level of trust and confidence in
+  your apps.
+</p>
diff --git a/docs/html/distribute/googleplay/cardboard.jd b/docs/html/distribute/googleplay/cardboard.jd
index d5965d1..8d21c2f 100644
--- a/docs/html/distribute/googleplay/cardboard.jd
+++ b/docs/html/distribute/googleplay/cardboard.jd
@@ -1,6 +1,7 @@
 page.title=Build VR with Google Cardboard
 page.metaDescription=Build apps and games with VR, for a viewer anyone can buy.
-page.tags=vr, carboard, games
+page.tags=vr, cardboard, games
+page.image=images/cards/card-cardboard_2x.png
 @jd:body
 
 <p>
diff --git a/docs/html/distribute/googleplay/developer-console.jd b/docs/html/distribute/googleplay/developer-console.jd
index 7631980..c826e82 100644
--- a/docs/html/distribute/googleplay/developer-console.jd
+++ b/docs/html/distribute/googleplay/developer-console.jd
@@ -1,27 +1,20 @@
 page.title=Developer Console
 page.metaDescription=Learn about the Developer Console, your home for app publishing on Google Play.
 page.image=images/cards/dev-console_2x.jpg
+page.tags="play, publish, google, google play"
 Xnonavpage=true
 
 @jd:body
-    
-    <div id="qv-wrapper">           
+
+    <div id="qv-wrapper">
   <div id="qv">
-    <h2>Publishing Features</h2>
+    <h2>Features</h2>
     <ol>
-      <li><a href="#allapps">All Applications</a></li>
-      <li><a href="#account-details">Your Account Details</a></li>
-      <li><a href="#merchant-account">Linking Your Merchant Account</a></li>
-      <li><a href="#multiple-user-accounts">Multiple User Accounts</a></li>
-      <li><a href="#alpha-beta">Alpha and Beta Testing</a></li>
-      <li><a href="#staged-rollouts">Staged Rollouts</a></li>
-      <li><a href="#multiple-apk">Multiple APK Support</a></li>
-      <li><a href="#selling-pricing-your-products">Selling and Pricing</a></li>
-      <li><a href="#in-app-products">In-App Products</a></li>
-      <li><a href="#distribution-controls">Distribution Controls</a></li>
-      <li><a href="#reviews-reports">User Reviews, Crash Reports</a></li>
-      <li><a href="#app-stats">App Stats</a></li>
-      <li><a href="#related-resources">Related Resources</a></li>
+      <li><a href="#latest">Latest blog posts</a></li>
+      <li><a href="#publish">Publish with confidence</a></li>
+      <li><a href="#aquire-users">Acquire users</a></li>
+      <li><a href="#insights">Actionable insights</a></li>
+      <li><a href="#manage">Manage your app</a></li>
     </ol>
   </div>
 </div>
@@ -30,8 +23,9 @@
   The <a href="https://play.google.com/apps/publish/">Google Play Developer
   Console</a> is your home for publishing operations and tools.
 </p>
-<!-- <img src="{@docRoot}images/gp-dc-startscreen.jpg" style="width:480px;" /> -->
-<img src="{@docRoot}images/gp-devconsole-home.png" style="width:480px;">
+
+<img src="{@docRoot}images/distribute/googleplay/gp-devconsole-home.png" style="width:480px;">
+
 <p>
   Upload apps, build your product pages, configure prices and distribution, and
   publish. You can manage all phases of publishing on Google Play through the
@@ -44,547 +38,252 @@
   verification by email, you can sign in to your Google Play Developer Console.
 </p>
 
+
+<p style="clear:both">
+</p>
+
+<div class="dynamic-grid">
 <div class="headerLine">
-  <h2 id="allapps">
-    All Applications
-  </h2>
-
-
+<h2 id="latest">Latest blog posts</h2>
 </div>
 
-<p>
-  Start in All Applications, which gives you a quick overview of your apps,
-  lets you jump to stats, reviews, and product details, or upload a new app.
-</p>
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="type:blog+tag:developerconsole+tag:featured"
+  data-sortOrder="-timestamp"
+  data-cardSizes="6x3"
+  data-maxResults="3"></div>
+  </div>
 
-<div style="padding:1em 0em 0em 0em;">
-  <img src="{@docRoot}images/gp-dc-home.png" class="border-img">
-</div>
+<h2 id="publish">Publish with confidence</h2>
 
-<div class="headerLine" style="margin-top:-6px">
-  <h2 id="account-details">
-    Your Account Details
-  </h2>
+<div class="wrap">
+  <h3 id="alpha-beta">Alpha and beta tests</h3>
 
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        Distribute your pre-release app to users as an open beta with a
+        one-click, opt-in URL or as a closed beta using an email list, Google
+        Group, or Google+ community. Users can then provide feedback, while not
+        affecting your app’s public reviews and rating. This valuable feedback
+        will help you test features and improve the quality of your app.
+        <a href="{@docRoot}distribute/engage/beta.html">Learn more</a>.
+      </p>
+    </div>
 
-</div>
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test.png"
+      srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test.png 1x, {@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test_2x.png 2x"
+      width="500">
+    </div>
+  </div>
 
-<p>
-  Specify basic developer profile information about yourself or your company on
-  the accounts detail page. This identifies you to Google Play and your
-  customers. You can go back at any time to edit the information and change
-  your settings.
-</p>
+  <h3 id="cloud-test">Cloud Test Lab</h3>
 
-<div>
-  <img src="{@docRoot}images/gp-dc-profile.png" class="frame">
-</div>
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        Get free automated testing of your app on physical devices covering
+        nearly every brand, model, and version of the devices your users might
+        be using. The lab will help you quickly find compatibility issues you
+        may miss using only your available test devices. Sign-up in the
+        Developer Console to become an early tester before this feature becomes
+        more widely available. <a href=
+        "https://developers.google.com/cloud-test-lab/" class=
+        "external-link">Learn more and sign up for updates.</a>
+      </p>
+    </div>
 
-<p>
-  Your developer profile contains:
-</p>
-
-<ul>
-  <li>
-    <p>
-      Developer name &mdash; displayed on your store listing page and elsewhere
-      on Google Play.
-    </p>
-  </li>
-
-  <li>
-    <p>
-      Contact information &mdash; used by Google only, it isn't seen by your
-      customers.
-    </p>
-  </li>
-
-  <li>
-    <p>
-      Web site URL &mdash; displayed on your store listing page.
-    </p>
-  </li>
-</ul>
-
-<p>
-  On the account details page you can also add restricted access for marketers
-  and other teams, register for a merchant account, or set up test accounts for
-  Google Play licensing.
-</p>
-
-<div class="headerLine">
-  <h2 id="merchant-account">
-    Linking Your Merchant Account
-  </h2>
-
-
-</div>
-
-<p>
-  If you want to sell apps or in-app products, link your Google payments merchant
-  account to your developer profile. Google Play uses the linked merchant
-  account for financial and tax identification, as well as for monthly payouts
-  from sales.
-</p>
-
-<div class="headerLine">
-  <h2 id="multiple-user-accounts">
-    Multiple User Accounts
-  </h2>
-
-
-</div>
-
-<p>
-  Set up user accounts for other team members to access different parts of your
-  Developer Console.
-</p>
-
-<div style="width:550px;">
-  <img src="{@docRoot}images/gp-dc-invite.png" class="frame">
-</div>
-
-<p>
-  The first account registered is the <em>account owner</em>, with full access
-  to all parts of the console. The owner can add <em>user accounts</em> and
-  manage console access.
-</p>
-
-<p>
-  For example, an owner can grant users access to publishing and app
-  configuration, but not to financial reports. Learn how to <a href=
-  "https://support.google.com/googleplay/android-developer/answer/2528691">set
-  up multiple accounts</a> now.
-</p>
-
-<div class="headerLine">
-  <h2 id="store-listing-details">
-    Store Listing Details
-  </h2>
-
-
-</div>
-
-<p>
-  Use the Developer Console to set up a <em>Store Listing page</em>. This is
-  the home for your app in Google Play. It's the page users see on their mobile
-  phones or on the web to learn about your app and download it.
-</p>
-
-<p>
-  Upload custom brand assets, screenshots, and videos to highlight what's great
-  about your app. Provide a localized description, add notes about the latest
-  version, and more. You can update your store listing at any time.
-</p>
-
-<div>
-  <img src="{@docRoot}images/gp-dc-details.png" class="frame">
-</div>
-
-<div class="headerLine">
-  <h2 id="upload-instantly-publish">
-    Upload and Instantly Publish
-  </h2>
-
-
-</div>
-
-<p>
-  From the Developer Console you can quickly upload and publish a release-ready
-  Android application package file. The app is a <em>draft</em> until you
-  publish it, at which time Google Play makes your store listing page and app
-  available to users&mdash;your app appears in the store listings within hours,
-  not weeks.
-</p>
-
-<p>
-  Once your app is published, you can update it as often as you want: Change
-  prices, configuration, and distribution options at any time, without needing
-  to update your app binary.
-</p>
-
-<p>
-  As you add features or address code issues, you can publish an updated binary
-  at any time. The new version is available almost immediately and existing
-  customers are notified that an update is ready for download. Users can also
-  accept automatic updates to your app, so that your updates are delivered and
-  installed as soon as you publish them. You can unpublish your apps app at any
-  time.
-</p>
-
-<div class="headerLine">
-  <h2 id="alpha-beta">
-    Alpha and Beta Testing
-  </h2>
-
-
-</div>
-
-<p>
-  It's always valuable to get real-world feedback from users, especially before
-  launch. Google Play makes it easy to distribute pre-release versions of your
-  app to alpha and beta test groups anywhere in the world.
-</p>
-
-<p>
-  In the <strong>APK</strong> section of your Google Play Developer Console
-  you’ll find the <strong>Alpha Testing</strong> and <strong>Beta
-  Testing</strong> tabs. Here you can upload versions of your apps’ APK files
-  and define a list of testers as a <a href=
-  "https://support.google.com/groups/answer/46601">Google Group</a> or <a href=
-  "https://support.google.com/plus/topic/2888488">Google+ Community</a>. Once
-  this is done you’ll receive a URL that you forward to your testers, from
-  which they can opt-in to the testing program.
-</p>
-
-<div>
-  <img src="{@docRoot}images/gp-dc-ab.png" class="frame">
-</div>
-
-<p>
-  After opting-in, your testers then go to your app’s product page and when
-  they download the app Google Play will deliver them the alpha or beta version
-  as appropriate. Incidentally, if a user happens to be opted-in to both your
-  testing groups, Google Play will always deliver them the alpha test version.
-</p>
-
-<p>
-  Note that users cannot provide feedback and reviews on alpha and beta
-  versions of your apps. To gather feedback you could used the <a href=
-  "https://support.google.com/groups/answer/46601">Google Group</a> or <a href=
-  "https://support.google.com/plus/topic/2888488">Google+ Community</a>, or
-  setup an email address or your own website.
-</p>
-
-<p>
-  You can use these testing programs to <a href=
-  "{@docRoot}distribute/essentials/optimizing-your-app.html">optimize your
-  apps</a>, help with <a href=
-  "{@docRoot}distribute/users/expand-to-new-markets.html">rollout to new
-  markets</a>, and start <a href=
-  "{@docRoot}distribute/users/build-community.html">building your
-  community</a>. There is also more information on using beta test in the
-  <a href="{@docRoot}distribute/tools/launch-checklist.html">Launch
-  Checklist</a> and <a href=
-  "{@docRoot}distribute/tools/localization-checklist.html">Localization
-  Checklist</a>.
-</p>
-
-<div class="headerLine">
-  <h2 id="staged-rollouts">
-    Staged Rollouts
-  </h2>
-
-
-</div>
-
-<p>
-  You can also stage the rollout of your apps using the Production tab in the
-  APK section of your Google Play Developer Console. Here you can define the
-  percentage of user who’ll be able to download your app.
-</p>
-
-<p>
-  Staging your rollout will help limit the impact of unexpected bugs or server
-  load and enable you to gauge user feedback with an unbiased sample of users.
-  Users can rate and review your apps during staged roll outs, so if you’re
-  hesitant, start your rollout to a small percentage of users. Be sure to watch
-  for and respond to any negative reviews.
-</p>
-
-<p>
-  Note that rollbacks aren’t supported due to the <a href=
-  "{@docRoot}tools/publishing/versioning.html">app versioning requirements</a>
-  of the Android platform. If you need to rollback, consider launching a
-  previous APK with a new version number. However, this practice should be used
-  only as a last resort, as users will lose access to new features and your old
-  app may not be forward-compatible with your server changes or data formats,
-  so be sure to run <a href="#alpha-beta">alpha and beta tests</a> of your
-  updates.
-</p>
-
-<div class="headerLine">
-  <h2 id="multiple-apk">
-    Multiple APK Support
-  </h2>
-
-
-</div>
-
-<p>
-  In most cases, a single app package (APK) is all you need, and it’s usually
-  the easiest way to manage and maintain the app. However, if you need to
-  deliver a different APK to different devices, Google Play provides a way to
-  do that.
-</p>
-
-<p>
-  <em>Multiple APK support</em> lets you create multiple app packages that use
-  the same package name but differ in their OpenGL texture compression formats,
-  screen-size support, or Android platform versions supported. You can simply
-  upload all the APKs under a single product listing and Google Play selects
-  the best ones to deliver to users, based on the characteristics of their
-  devices.
-</p>
-
-<p>
-  You can also upload up to two secondary downloads for each published APK,
-  including multiple APKs, using the <em>APK Expansion Files</em> option. Each
-  expansion file can be up to 2GB and contain any type of code or assets.
-  Google Play hosts them for free and handles the download of the files as part
-  of the normal app installation.
-</p>
-
-<div class="headerLine">
-  <h2 id="selling-pricing-your-products">
-    Selling and Pricing Your Products
-  </h2>
-
-
-</div>
-
-<div class="figure-right">
-  <img src="{@docRoot}images/gp-buyer-currency.png" class="frame">
-</div>
-
-<p>
-  You have tools to set prices for your apps and in-app products. Your app can
-  be free to download or priced, requiring payment before download.
-</p>
-
-<ul>
-  <li>If you publish your app as free, it must <strong>remain free for the life
-  of the app</strong>. Free apps can be downloaded by all users in Google Play.
-  </li>
-
-  <li>If you publish it as priced, you can later change it to free. Priced apps
-  can be purchased and downloaded only by users who have registered a form of
-  payment in Google Play.
-  </li>
-</ul>
-
-<div class="sidebox-wrapper" style="float:right;">
-  <div class="sidebox">
-    <p>
-      See <a href=
-      "http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&amp;answer=138294&amp;topic=2365624&amp;ctx=topic">
-      Supported locations for distributing applications</a> for a list of
-      countries where you can distribute or sell your apps.
-    </p>
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_cloud-test-lab.png"
+      srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_cloud-test-lab.png 1x, {@docRoot}images/distribute/googleplay/dev-console_cloud-test-lab_2x.png 2x"
+      width="500">
+    </div>
   </div>
 </div>
 
-<p>
-  You can also offer in-app products and subscriptions, whether the app is free
-  or priced. Set prices separately for priced apps, in-app products, and
-  subscriptions.
-</p>
+<h3 id="staged-rollouts">Staged rollouts</h3>
 
 <p>
-  When users browse your app product pages or initiate a purchase, Google Play
-  shows them the price they’ll be charged in their local currency.
+  Release app updates progressively to an increasing portion of your users and
+  monitor for missed issues. Then take the opportunity to fix problems before
+  all your users are affected. <a href=
+  "https://support.google.com/googleplay/android-developer/answer/3131213"
+  class="external-link">Learn more.</a>
 </p>
 
-<p>
-  For each product, you initially set a default price in your own currency. If
-  you do no more, Google Play will automatically set local prices once a month
-  based on the US-Dollar price for your app.
+<p class="aside">
+  <strong>Tip:</strong> If you find an issue during a rollout stage you can
+  halt the rollout to further minimize the effect, and then resume rollout once
+  a fix has been made.
 </p>
 
-<p>
-  However, Google Play gives you complete control over how you price your
-  products in each country. To start you can manually set fixed local prices
-  from the default price, using the <strong>auto-convert prices now</strong>
-  feature. You can then review these prices and set new ones for any countries
-  you wish &mdash; the price for each country is independent, so you can adjust
-  one price without affecting others. For most countries, the price you set is
-  the final price charged to users, including taxes.
-</p>
+<h2 id="aquire-users">Aquire users</h2>
 
-<p>
-  For more on pricing your apps, see <a href=
-  "{@docRoot}distribute/users/expand-to-new-markets.html#localize-your-google-play-listing">
-  Expand into New Markets</a>.
-</p>
+  <h3 id="adwords">AdWords Universal App Campaigns</h3>
 
-<div class="headerLine">
-  <h2 id="in-app-products">
-    In-app Products
-  </h2>
-
-
-</div>
-
-<p>
-  You can sell in-app products and subscriptions using <a href=
-  "{@docRoot}google/play/billing/index.html">Google Play In-app Billing</a> as
-  a way to monetize your apps. In-app products are one-time purchases, while
-  subscriptions are recurring charges on a monthly or annual basis.
-</p>
-
-<p>
-  In the <strong>In-app Products</strong> section for a specific published or
-  draft APK you:
-</p>
-
-<ul>
-  <li>Create product lists for in-app products and subscriptions.
-  </li>
-
-  <li>Set prices.
-  </li>
-
-  <li>Publish the products with the app or withdraw obsolete products.
-  </li>
-</ul>
-
-<p>
-  For details on how to implement In-app Billing, see the <a href=
-  "{@docRoot}google/play/billing/index.html">In-app Billing</a> developer
-  documentation. You make use of in-app products in the <a href=
-  "{@docRoot}distribute/monetize/premium.html">Premium</a>, <a href=
-  "{@docRoot}distribute/monetize/freemium.html">Freemium</a>, and <a href=
-  "{@docRoot}distribute/monetize/subscriptions.html">Subscription</a>
-  monetization models
-</p>
-
-<div class="headerLine">
-  <h2 id="distribution-controls">
-    Distribution Controls
-  </h2>
-
-
-</div>
-
-<p>
-  Manage which countries and territories your apps will distribute to. For some
-  countries, you can choose which carriers you want to target. You can also see
-  the list of devices your app is available for, based on any distribution
-  rules declared in its manifest file.
-</p>
-
-<h3 id="geotargeting">
-  Geographic targeting
-</h3>
-
-<p>
-  You can use controls in the Google Play Developer Console to easily manage
-  the geographic distribution of your apps, without any changes in your
-  application binary. You can specify which countries and territories you want
-  to distribute to, and even which carriers (for some countries).
-</p>
-
-<p>
-  When users visit the store, Google Play makes sure that they are in one of
-  your targeted countries before downloading your app. You can change your
-  country and carrier targeting at any time just by saving changes in the
-  Google Play Developer Console.
-</p>
-
-<div class="figure-right" style="width:500px;">
-  <img src="{@docRoot}images/gp-supported-dev-requirements.png" class="frame">
-</div>
-
-<p>
-  To help you market to users around the world, you can <a href=
-  "{@docRoot}distribute/tools/launch-checklist.html#start-localization">localize
-  your store listing</a>, including app details and description, promotional
-  graphics, screenshots, and more.
-</p>
-
-<h3 id="captargeting">
-  Capabilities targeting
-</h3>
-
-<p>
-  Google Play also lets you control distribution according to device features
-  or capabilities that your app depends on. There are several types of
-  dependencies that the app can define in its manifest, such as hardware
-  features, OpenGL texture compression formats, libraries, Android platform
-  versions, and others.
-</p>
-
-<p>
-  When you upload your app, Google Play reads the dependencies and sets up any
-  necessary distribution rules. For technical information about declaring
-  dependencies, read <a href="{@docRoot}google/play/filters.html">Filters on
-  Google Play</a>.
-</p>
-
-<p>
-  For pinpoint control over distribution, Google Play lets you see all of the
-  devices your app is available to based on its dependencies (if any). From the
-  Google Play Developer Console, you can list the supported devices and even
-  exclude specific devices if needed.
-</p>
-
-<div class="headerLine">
-  <h2 id="reviews-reports">
-    User Reviews and Crash Reports
-  </h2>
-
-
-</div>
-
-<div class="figure-right" style="width:500px;">
-  <img src="{@docRoot}images/gp-dc-reviews.png" class="frame">
-  <p class="img-caption">
-    The User reviews section gives you access to user reviews for a specific
-    app. You can filter reviews in a number of ways to locate issues more
-    easily and support your customers more effectively.
+  <p>
+    Easily and conveniently buy AdWords app install ads, across Search
+    (including Play Search), YouTube, AdMob, and the Google Display Network.
+    Simply set a budget and cost per acquisition and Google takes care of the
+    rest. <a href="{@docRoot}distribute/users/promote-with-ads.html">Learn
+    more</a>.
   </p>
+
+<div class="wrap">
+  <h3 id="listing-experiments">Store Listing Experiments</h3>
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        Test variations of the images and text used to promote and describe
+        your app on your Play store listing. Then when enough data has been
+        collected, choose to make the winning combination visible on Google
+        Play. <a href="{@docRoot}distribute/users/experiments.html">Learn
+        more</a>.
+      </p>
+
+      <p class="aside">
+        <strong>Tip:</strong> You can even try out different orders for your
+        screenshots and other images to discover which grabs users’ attention
+        the best.
+      </p>
+    </div>
+
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_store-listing-experiment.png"
+      srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_store-listing-experiment.png 1x, {@docRoot}images/distribute/googleplay/dev-console_store-listing-experiment_2x.png 2x"
+      width="500">
+    </div>
+  </div>
+
+  <h3 id="user-perf-report">User Acquisition performance report</h3>
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        Discover where visitors to your Play Store listing come from, how many
+        go on to install your app, and how many buy your in-app products in the
+        User Acquisition performance report; compare cohorts, examine
+        acquisition channels, and see details of users and buyers. <a href=
+        "{@docRoot}distribute/users/user-acquisition.html">Learn more</a>.
+      </p>
+    </div>
+
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_conversion-funnel.png"
+      srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_conversion-funnel.png 1x, {@docRoot}images/distribute/googleplay/dev-console_conversion-funnel_2x.png 2x"
+      width="500">
+    </div>
+  </div>
 </div>
 
-<p>
-  Google Play makes it easy for users to submit reviews of your app for the
-  benefit of other users. The reviews give you usability feedback, support
-  requests, and details of important functionality issues direct from your
-  customers.
-</p>
+<h2 id="insights">Actionable insights</h2>
 
-<p>
-  Use crash reports for debugging and improving your app. You can see crash
-  reports with stack trace and other data, submitted automatically from Android
-  devices.
-</p>
+<div class="wrap">
 
-<div class="headerLine">
-  <h2 id="app-stats">
-    App Statistics
-  </h2>
+<h3 id="player-analytics">Player Analytics</h3>
 
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        With Google Play game services integration, discover more about the
+        behaviour of your game players; how they play and how they buy. Also get
+        help setting and monitoring revenue budgets. <a href=
+        "{@docRoot}distribute/engage/game-services.html">Learn more</a>.
+      </p>
+    </div>
 
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_player-analytics.png"
+      srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_player-analytics.png 1x, {@docRoot}images/distribute/googleplay/dev-console_player-analytics_2x.png 2x"
+      width="500">
+    </div>
+  </div>
+
+<h3 id="stats">Detailed statistics and reports</h3>
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        Get a wide range of reports on the performance of your app and behaviour
+        of users; such as installs, revenue, crashes, and more. Turn on email
+        alerts to be notified of any sudden changes to important stats. <a href=
+        "https://support.google.com/googleplay/android-developer/topic/3450942?ref_topic=3450986"
+        class="external-link">Learn more.</a>
+      </p>
+    </div>
+
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_statistics.png" srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_statistics.png 1x, {@docRoot}images/distribute/googleplay/dev-console_statistics_2x.png 2x"
+      width="500">
+    </div>
+  </div>
 </div>
 
-<div class="figure" style="width:500px">
-  <img src="{@docRoot}images/gp-dc-stats.png">
-  <p class="img-caption">
-    <b>App statistics page</b>: Shows you a variety of statistics about a
-    specific app's installation performance.
-  </p>
-</div>
+
+<h3 id="optimization"> Optimization tips</h3>
 
 <p>
-  You get detailed statistics on the install performance of your app.
+  Get tips, based on automatic app scanning, on ways in which you can improve
+  your app, everything from updating old APIs to suggestions for languages you
+  should consider localizing to.
 </p>
 
-<p>
-  See installation metrics measured by unique users as well as by unique
-  devices. View active installs, total installs, upgrades, daily installs and
-  uninstalls, and metrics about ratings.
-</p>
+<h2 id="manage">Manage your app</h2>
+
+<h3 id="manage-apks">Manage your APKs</h3>
 
 <p>
-  Zoom into the installation numbers by metric, including Android platform
-  version, device, country, language, app version, and carrier. View the
-  installation data for each dimension on timeline charts.
+  Upload and manage your Android application packages (APK) to the Developer
+  Console as drafts or to your Alpha, Beta, or Production channels. <a href=
+  "https://support.google.com/googleplay/android-developer/answer/113469?ref_topic=3450986"
+  class="external-link">Learn more.</a>
 </p>
 
+<p class="aside">
+  <strong>Tip:</strong> Ensure users get the best possible experience for the
+  smallest app downloads by creating multiple APKs with just the right content
+  for device screen size, hardware features and more.
+</p>
+
+<h3 id="iap">In-app products and subscriptions</h3>
+
 <p>
-  These charts highlight your app’s installation peaks and longer-term trends.
-  They help you learn your user’s adoption behavior, correlate statistics to
-  promotions, see the effect of app improvements, and other factors. Focus in
-  on data inside a dimension by adding specific points to the timeline.
+  Manage your in-app products and price them for local markets accordingly.
+  Offer weekly, monthly, annual, or seasonal subscriptions and take advantage
+  of features such as grace periods and trials. <a href=
+  "https://support.google.com/googleplay/android-developer/topic/3452896?ref_topic=3452890"
+  class="external-link">Learn more.</a>
+</p>
+
+<h3 id="pricing">Pricing and distribution</h3>
+
+<p>
+  Control the price of your app for each country you choose to distribute to.
+  Make your app available to new audiences — opt-in to Android Auto, Android
+  TV, and Android Wear, as well as Designed for Families, Google Play for Work,
+  and Google Play for Education. <a href=
+  "https://support.google.com/googleplay/android-developer/answer/113469#pricing"
+  class="external-link">Learn more</a>.
+</p>
+
+<p class="external-link">
+  <strong>Tip:</strong> You can set prices in other countries automatically
+  based on current exchange rates using the <strong>auto-convert prices
+  now</strong> feature.
 </p>
 
 <p style="clear:both">
@@ -596,7 +295,7 @@
 </div>
 
 <div class="resource-widget resource-flow-layout col-13"
-  data-query="collection:distribute/googleplay/developerconsole"
+  data-query="collection:distribute/googleplay/developerconsole/related"
   data-sortOrder="-timestamp"
   data-cardSizes="9x3"
   data-maxResults="6"></div>
diff --git a/docs/html/distribute/googleplay/families/about.jd b/docs/html/distribute/googleplay/families/about.jd
index 9b85c9a..fa7af7c 100644
--- a/docs/html/distribute/googleplay/families/about.jd
+++ b/docs/html/distribute/googleplay/families/about.jd
@@ -174,4 +174,39 @@
   for Families program and Google Play opportunities, sign up using the
   <a href="https://docs.google.com/forms/d/1EtvUWqlkxS6RxHJjeI-3-7uzdbIZx6n9Cocy2D369B8/viewform">
   Designed for Families Interest Form</a>
-</p>
\ No newline at end of file
+</p>
+
+<h2 id="playbook">
+  Find Success with the Family Playbook
+</h2>
+
+<p>
+  Read our developer guide, "The Family Playbook", to get tips on how to succeed
+  with family and kid-focused apps and games on Google Play.
+</p>
+
+<p>
+  The Family Playbook is a companion guide to <a href="https://g.co/play/developerguide">The
+  Secrets to App Success on Google Play</a> and includes best practices and advice from
+  other developers to help you tailor your apps for families and kids in order to
+  provide high quality, age-appropriate content.
+</p>
+
+<div style="text-align:center">
+  <a href="http://g.co/play/familyplaybook">
+  <img alt="Get it on Google Play"
+   src="https://play.google.com/intl/en_us/badges/images/books/en-play-badge-border.png"
+   style="height:60px" />
+  </a>
+</div>
+
+<p>
+  You can also <a
+  href="{@docRoot}shareables/distribute/family_playbook/family_playbook_v2a_en.pdf">download
+  the pdf</a>.
+</p>
+
+<p>
+  We’d love to hear your feedback so we can continue to improve our developer
+  resources, please <a href="http://goo.gl/xZL1No">let us know what you think</a>.
+</p>
diff --git a/docs/html/distribute/googleplay/googleplay_toc.cs b/docs/html/distribute/googleplay/googleplay_toc.cs
index 60da6d2..021a986 100644
--- a/docs/html/distribute/googleplay/googleplay_toc.cs
+++ b/docs/html/distribute/googleplay/googleplay_toc.cs
@@ -39,19 +39,6 @@
     </div>
   </li>
   <li class="nav-section">
-    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/guide.html"
-       es-lang="Cómo tener éxito en Google Play"
-       ja-lang="Google Play で成功を手にする"
-       ko-lang="Google Play에서 성공 모색"
-       pt-br-lang="Obtendo sucesso no Google Play"
-       ru-lang="Найдите свой путь к успеху в Google Play"
-       zh-cn-lang="在 Google Play 上取得成功"
-       zh-tw-lang="在 Google Play 上尋找成功">
-           Find Success on <span style="white-space:nowrap">Google Play
-        </a>
-    </div>
-  </li>
-  <li class="nav-section">
     <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/wear.html"
        es-lang="Distribución para Android Wear"
        ja-lang="Android Wear への配布"
@@ -132,7 +119,20 @@
   </li>
   <li class="nav-section">
     <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/cardboard.html">
-          <span class="en">Build VR with <span style="white-space:nowrap">Google Cardboard</span></span>
+          <span class="en">Build VR with <span style="white-space:nowrap">Cardboard</span></span>
+        </a>
+    </div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/guide.html"
+       es-lang="Cómo tener éxito en Google Play"
+       ja-lang="Google Play で成功を手にする"
+       ko-lang="Google Play에서 성공 모색"
+       pt-br-lang="Obtendo sucesso no Google Play"
+       ru-lang="Найдите свой путь к успеху в Google Play"
+       zh-cn-lang="在 Google Play 上取得成功"
+       zh-tw-lang="在 Google Play 上尋找成功">
+           Find Success on <span style="white-space:nowrap">Google Play
         </a>
     </div>
   </li>
@@ -142,4 +142,4 @@
     buildToggleLists();
     changeNavLang(getLangPref());
 //-->
-</script>
\ No newline at end of file
+</script>
diff --git a/docs/html/distribute/googleplay/guide.jd b/docs/html/distribute/googleplay/guide.jd
index 8317206..6cb8cc0 100644
--- a/docs/html/distribute/googleplay/guide.jd
+++ b/docs/html/distribute/googleplay/guide.jd
@@ -1,7 +1,8 @@
-page.title=Finding Success on Google Play
-page.metaDescription=A guide to help you find success with your app or game business on Google Play.
-meta.tags="distribute", "bestpractices"
-page.tags="google play", "business", "monetize", "engagement"
+page.title=Find Success on Google Play
+page.metaDescription=The updated guide that helps you find success with your app or game business on Google Play.
+page.tags="play,protips"
+page.timestamp=1447437450
+meta.tags="secrets, success, play, google"
 page.image=distribute/images/play_dev_guide.png
 
 @jd:body
@@ -9,63 +10,34 @@
 <p>
   We’ve created a downloadable guide to help you find success with your app or
   game business on Google Play. In it, you’ll find features, tips, and best
-  practices to help you build an effective strategy.
+  practices to help you build an effective strategy to improve the quality,
+  reach, retention, and monetization of your apps and games.
 </p>
 
-<p>
-  The guide is separated into the following sections:
-</p>
-<ul>
-  <li>
-    <strong>Publishing on Google Play</strong> &mdash; using the Google Play
-    Developer Console to distribute your app to over 1 billion Android users
-    worldwide.
-  </li>
+<a href="https://play.google.com/store/books/details?id=O2a5CgAAQBAJ&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1">
+  <img src="{@docRoot}images/distribute/secrets_v2_banner.jpg">
+</a>
 
-  <li>
-    <strong>Quality</strong> &mdash; The fundamentals of building a great app
-    and an insight into the Google Play guidelines and policies.
-  </li>
+<div style="text-align:center">
+  <a href="https://play.google.com/store/books/details?id=O2a5CgAAQBAJ&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1">
+  <img alt="Get it on Google Play"
+   src="https://play.google.com/intl/en_us/badges/images/books/en-play-badge-border.png"
+   style="height:60px" />
+  </a>
+</div>
 
-  <li>
-    <strong>Discoverability &amp; reach</strong> &mdash; Maximizing your app's
-    discoverability and reaching the widest audience possible.
-  </li>
-
-  <li>
-    <strong>Engagement &amp; retention</strong> &mdash; Converting
-    installations into active users and improving user retention.
-  </li>
-
-  <li>
-    <strong>Monetization</strong> &mdash; Monetization strategies to generate
-    ongoing, growing revenue streams.
-  </li>
-
-  <li>
-    <strong>Measurement with Google Analytics</strong> &mdash; Understanding
-    your users and improving your app experience, conversions, and marketing.
-  </li>
-
-  <li>
-    <strong>Going global</strong> &mdash; Launching your app in local markets
-    around the world.
-  </li>
-</ul>
-
-<p>
-  Download the guide by clicking the image below or <a href=
-  "http://goo.gl/DFjbrS">get it on Google Play</a>.
+<p><a
+  href="https://docs.google.com/forms/d/1KFE9D7NlOrxM_jzmyMeZGaczgg1xo57jBoGq0R5nnsU/viewform">Sign
+  up to be notified</a> when the guide is released in the following languages:
+  Bahasa Indonesia, Deutsch, español (Latinoamérica), le français, português do
+  Brasil, <span style="white-space: nowrap;">tiếng Việt</span>, <span style="white-space:
+  nowrap;">русский язы́к</span>, <span style="white-space: nowrap;">ไทย</span>,
+  <span style="white-space: nowrap;">한국어</span>, <span style="white-space: nowrap;">中文
+  (简体)</span>, <span style="white-space: nowrap;">中文 (繁體)</span>, and <span style="white-space:
+  nowrap;">日本語</span>.
 </p>
 
-<p>
-  We’ll release the guide in more languages in the coming months. Check back to
-  this website regularly as we post information on new features and best
-  practices to help you distribute and monetize your app.
+<p>You can also <a
+  href="{@docRoot}shareables/distribute/secrets_play/v2/web/secrets_to_app_success_v2_en.pdf">download
+  the pdf</a>.
 </p>
-  <div class="resource-widget resource-flow-layout col-16"
-    data-query="collection:play_dev_guide"
-    data-cardSizes="9x6"
-    data-maxResults="1">
-  </div>
-
diff --git a/docs/html/distribute/googleplay/index.jd b/docs/html/distribute/googleplay/index.jd
index 3b5966f..c69ce23 100644
--- a/docs/html/distribute/googleplay/index.jd
+++ b/docs/html/distribute/googleplay/index.jd
@@ -11,22 +11,24 @@
   help you gain traction in the marketplace.</span>
 </p>
 
-  <h2>Overview</h2>
+  <section class="dac-section dac-small" id="latest-games"><div class="wrap">
+  <h2 class="norule">Overview</h2>
 
   <div class="resource-widget resource-flow-layout landing col-16"
     data-query="collection:distribute/gp/gplanding"
     data-sortOrder="-timestamp"
     data-cardSizes="6x6"
     data-maxResults="3">
-  </div>
+    </div></div></section>
 
-  <h2 id="opportunities">Opportunities &amp; Programs</h2>
+  <section class="dac-section dac-small" id="latest-games"><div class="wrap">
+  <h2 id="opportunities" class="norule">Opportunities &amp; Programs</h2>
 
   <div class="resource-widget resource-flow-layout landing col-16"
     data-query="collection:distribute/gp/gpfelanding"
     data-cardSizes="6x6"
     data-maxResults="10">
-  </div>
+  </div></div></section>
 
 <!--  <h2>Related resources</h2>
 
diff --git a/docs/html/distribute/googleplay/work/about.jd b/docs/html/distribute/googleplay/work/about.jd
index 20fec7a..a31bca2 100644
--- a/docs/html/distribute/googleplay/work/about.jd
+++ b/docs/html/distribute/googleplay/work/about.jd
@@ -66,7 +66,9 @@
   <li>Request the minimum permissions that your app needs.</li>
   <li>Make sure communication to your backend and data in your backend is secure.</li>
   <li>Implement authorization policies that will minimize the number of your employees that can access user data.</li>
-  <li><a href={@docRoot}training/enterprise/app-compatibility.html">Offer compatibility with work profile</a> and test that with the <a href="{@docRoot}samples/BasicManagedProfile/index.html">BasicManagedProfile sample app</a>.</li>
+  <li><a href={@docRoot}training/enterprise/app-compatibility.html>Offer compatibility with work
+  profile</a> and test that with the <a href="{@docRoot}samples/BasicManagedProfile/index.html"
+  >BasicManagedProfile sample app</a>.</li>
   <li>Support <a href="{@docRoot}training/enterprise/app-restrictions.html">app restrictions</a> so that IT admins can remotely configure your app through leading EMM solutions.</li>
 </ul>
 
diff --git a/docs/html/distribute/index.jd b/docs/html/distribute/index.jd
index a6ece63..6384773 100644
--- a/docs/html/distribute/index.jd
+++ b/docs/html/distribute/index.jd
@@ -1,5 +1,6 @@
 fullpage=true
 page.title=Distribute Your Apps
+page.image=images/distribute/google-play-bg.jpg
 page.viewport_width=970
 section.landing=true
 header.hide=1
@@ -7,6 +8,17 @@
 page.metaDescription=The most visited store in the world for Android apps. Cloud-connected and always synced, it's never been easier for users to find and download your apps.
 
 @jd:body
+
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
+
 <div class="dac-hero-carousel" data-carousel-query="collection:distribute/landing/carousel">
 </div>
 
@@ -16,16 +28,64 @@
   </a>
 </div>
 
-<section class="dac-section dac-gray dac-small dac-invert" id="latest"><div class="wrap">
+<section id="useOldTemplates" style="display:none" class="dac-section dac-gray dac-small" id="latest"><div class="wrap">
   <h2 class="norule">Latest</h2>
   <div class="resource-widget resource-flow-layout col-16"
       data-query="type:youtube+tag:googleplay+tag:developerstory+tag:featured, type:blog+tag:googleplay+tag:distribute+tag:featured"
       data-sortOrder="-timestamp"
       data-cardSizes="6x6"
-      data-maxResults="12"
+      data-maxResults="3"
+      data-items-per-page="6"
       data-initial-results="3"></div>
 </div></section>
 
+<section id="useUpdatedTemplates" style="display:none" class="dac-section dac-gray dac-small" id="latest"><div class="wrap">
+  <h2 class="norule">Latest</h2>
+
+  <div class="dac-filter dac-filter-section" data-filter="#latest-resources">
+    <div data-tabs>
+      <span class="dac-filter-title">Showing:</span>
+      <ol class="dac-tab-bar">
+        <li class="dac-tab-item" data-tab-item="goal">
+          <p class="dac-tab-title">Goals <i class="dac-tab-arrow dac-sprite dac-expand-more-black"></i></p>
+          <span data-filter-count="goal" class="dac-filter-count dac-disabled">0</span>
+        </li>
+        <li class="dac-tab-item" data-tab-item="type">
+          <p class="dac-tab-title">Types <i class="dac-filter-item-arrow dac-sprite dac-expand-more-black"></i></p>
+          <span data-filter-count="type" class="dac-filter-count dac-disabled">0</span>
+        </li>
+      </ol>
+
+      <ol class="dac-tab-views" data-tab-views>
+        <li class="dac-tab-view" data-tab-view="goal">
+          <div class="dac-filter-item" data-filter-value="category:googleplay" data-filter-name="Get Started"></div>
+          <div class="dac-filter-item" data-filter-value="category:users" data-filter-name="Get Users"></div>
+          <div class="dac-filter-item" data-filter-value="category:engage" data-filter-name="Engage"></div>
+          <div class="dac-filter-item" data-filter-value="category:monetize" data-filter-name="Earn"></div>
+          <div class="dac-filter-item" data-filter-value="category:analyze" data-filter-name="Analyze"></div>
+          <div class="dac-filter-item" data-filter-value="category:stories" data-filter-name="Stories"></div>
+
+        </li>
+        <li class="dac-tab-view" data-tab-view="type">
+          <div class="dac-filter-item" data-filter-value="type:distribute" data-filter-name="Articles"></div>
+          <div class="dac-filter-item" data-filter-value="type:youtube" data-filter-name="Videos"></div>
+          <div class="dac-filter-item" data-filter-value="type:blog" data-filter-name="Blog posts"></div>
+        </li>
+      </ol>
+    </div>
+
+    <ul class="dac-filter-chips" data-filter-chips></ul>
+  </div>
+
+  <div class="resource-flow-layout col-16" id="latest-resources"
+      data-query="type:distribute, type:youtube+tag:googleplay, type:blog+tag:googleplay+tag:featured"
+      data-sortOrder="-timestamp"
+      data-cardSizes="6x6"
+      data-items-per-page="6"
+      data-initial-results="6"></div>
+</div></section>
+
+
 <section class="dac-section dac-invert dac-darken-bg" style="background-image: url(/images/distribute/google-play-bg.jpg)"><div class="wrap">
   <div class="cols"><div class="col-10of12 col-push-1of12">
     <h1 class="dac-section-title">Reach the world with Google Play</h1>
diff --git a/docs/html/distribute/monetize/_book.yaml b/docs/html/distribute/monetize/_book.yaml
new file mode 100644
index 0000000..2ebc695
--- /dev/null
+++ b/docs/html/distribute/monetize/_book.yaml
@@ -0,0 +1,18 @@
+toc:
+- title: Premium
+  path: /distribute/monetize/premium.html
+
+- title: Freemium
+  path: /distribute/monetize/freemium.html
+
+- title: Subscriptions
+  path: /distribute/monetize/subscriptions.html
+
+- title: AdMob Ads
+  path: /distribute/monetize/ads.html
+
+- title: E-commerce
+  path: /distribute/monetize/ecommerce.html
+
+- title: Purchasing
+  path: /distribute/monetize/payments.html
diff --git a/docs/html/distribute/stories/_book.yaml b/docs/html/distribute/stories/_book.yaml
new file mode 100644
index 0000000..d49238e
--- /dev/null
+++ b/docs/html/distribute/stories/_book.yaml
@@ -0,0 +1,9 @@
+toc:
+- title: Latest
+  path: /distribute/stories/index.html
+
+- title: Apps
+  path: /distribute/stories/apps.html
+
+- title: Games
+  path: /distribute/stories/games.html
diff --git a/docs/html/distribute/stories/apps.jd b/docs/html/distribute/stories/apps.jd
new file mode 100644
index 0000000..9a642dc
--- /dev/null
+++ b/docs/html/distribute/stories/apps.jd
@@ -0,0 +1,34 @@
+page.title=Developer Stories: Apps
+meta.tags="apps, developer story"
+page.timestamp=1381449601
+page.image=images/cards/distribute/stories/intuit-mint.png
+page.metaDescription=How app developers are making use of localization, tablet features.
+
+@jd:body
+
+<p>
+  Learn more about how app developers are using Google Play services to delight
+  their users.
+</p>
+
+<section class="dac-section dac-small" id="app-videos"><div class="wrap">
+  <h2 class="norule">Videos</h2>
+
+  <div class="resource-widget resource-flow-layout col-16"
+      data-query="type:youtube+tag:developerstory+tag:apps"
+      data-sortOrder="-timestamp"
+      data-cardSizes="6x6"
+      data-items-per-page="15"
+      data-initial-results="6"></div>
+</div></section>
+
+<section class="dac-section dac-small" id="apps-articles"><div class="wrap">
+  <h2 class="norule">Articles</h2>
+
+  <div class="resource-widget resource-flow-layout col-16"
+      data-query="type:distribute+tag:developerstory+tag:apps"
+      data-sortOrder="-timestamp"
+      data-cardSizes="6x6"
+      data-items-per-page="15"
+      data-initial-results="3"></div>
+</div></section>
\ No newline at end of file
diff --git a/docs/html/distribute/stories/apps/intuit-mint.jd b/docs/html/distribute/stories/apps/intuit-mint.jd
new file mode 100644
index 0000000..5b2e400
--- /dev/null
+++ b/docs/html/distribute/stories/apps/intuit-mint.jd
@@ -0,0 +1,82 @@
+page.title=Mint finds more screen real estate gives more engagement
+page.metaDescription=Intuit expands their Mint app to the tablet.
+page.tags="developerstory", "apps", "googleplay"
+page.image=images/cards/distribute/stories/intuit-mint.png
+page.timestamp=1456340902
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/intuit-mint-icon.png"
+  height="113" />
+</div>
+
+<p>
+  Intuit wanted to expand their
+  <a class="external-link"
+  href="http://play.google.com/store/apps/details?id=com.mint">Mint.com
+  Personal Finance</a> offering for mobile by including a version optimized for
+  Android tablets. However, they knew that taking the layout that worked for
+  phones and simply showing an enlarged version wouldn’t take full advantage of
+  the opportunities that tablets afford.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  Following the Tablet Quality guidelines, the Intuit team updated Mint to
+  target 7- to 10-inch tablets, in addition to phones. “We knew we had a lot
+  more real estate, and we wanted to provide a more immersive experience for
+  our users” said Ken Sun, Intuit Group Product Manager for Mint.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:380px">
+  <img
+   src="{@docRoot}images/distribute/stories/intuit-mint-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/intuit-mint-screenshot.png 1x
+  {@docRoot}images/distribute/stories/intuit-mint-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Mint used the extra screen area on tablets to offer quick access to
+    additional tools and information
+  </p>
+</div>
+
+<p>
+  Intuit’s Mint app, which has a 4-star rating on Google Play, brings a number
+  of features to Android tablets that aren’t available for phones. These include
+  a more visual presentation of personal financial data: a change that has
+  contributed to <b>much higher user engagement</b>.
+</p>
+
+<p>
+  For example, 50 percent more Android tablet users have Mint sessions of <b>
+  five minutes or longer</b> than they do on phones.
+</p>
+
+<p>
+  Intuit also noted that customer budget operations (view, edit, drill-down,
+  and others) are <b>seven times higher on Android tablets</b> than they are on
+  phones.
+</p>
+
+<p>
+  Ken noted that “We’ve found that phone usage is indicative of a customer’s
+  regular financial check-in, while tablet usage points towards more analysis
+  and interaction with that customer’s personal financial data. This is the
+  sort of immersive engagement experience we were looking for; the tablet and
+  phone apps serve as great complements to each other."
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out more about creating a tablet version of your app by reviewing the
+  <a href="http://developer.android.com/distribute/essentials/quality/tablets.html">
+  Tablet App Quality</a> guidelines and growing your user base.
+</p>
diff --git a/docs/html/distribute/stories/apps/remember-the-milk.jd b/docs/html/distribute/stories/apps/remember-the-milk.jd
new file mode 100644
index 0000000..16c0caf
--- /dev/null
+++ b/docs/html/distribute/stories/apps/remember-the-milk.jd
@@ -0,0 +1,77 @@
+page.title=Remember The Milk lifts installs with tablet design
+page.metaDescription=The team at Remember The Milk redesigned their app for tablets.
+page.tags="developerstory", "apps", "googleplay"
+page.image=images/cards/distribute/stories/remember-the-milk.jpg
+page.timestamp=1456340902
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/rememberthemilk-icon.png"
+  height="113" />
+</div>
+
+<p>
+  When the Android tablet guidelines came out, the team at Remember The Milk had
+  already been thinking about a redesign for
+  <a class="external-link"
+  href="http://play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">
+  Remember The Milk</a> their feature-packed to-do list app; never forget the
+  milk (or anything else) again.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  “We took this as an opportunity to think about how we were going to approach
+  Android tablets differently from a user experience perspective,” says Omar
+  Kilani, Co-founder of Remember The Milk. “The guidelines were a helpful
+  resource, and with the extra screen real estate tablets afford, users have
+  the opportunity to see all of their data in context and drill down on more
+  items."
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:367px">
+  <img
+   src="{@docRoot}images/distribute/stories/rememberthemilk-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/rememberthemilk-screenshot.png 1x
+  {@docRoot}images/distribute/stories/rememberthemilk-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Tablet version of Remember The Milk
+  </p>
+</div>
+
+<p>
+  In addition to the basic changes to bring the app to tablets, the team also
+  came out with a number of other goodies — including a new set of widgets and
+  richer notifications, and more ways to provide an immersive experience for
+  their users. And importantly, following the guidelines meant they could
+  deliver a <b>single APK for phones and tablets</b>.
+</p>
+
+<p>
+  Following the
+  <a class="external-link"
+  href="http://blog.rememberthemilk.com/2013/04/the-all-new-remember-the-milk-for-android-and-tablets-too/">
+  update</a> of the Android app, in part to meet the tablet design criteria,
+  Remember The Milk saw an <b>83% increase in tablet installs</b>. They also
+  noted that Nexus 7 was theat most popular Android device for the app.
+</p>
+
+<p>
+  Omar Kilani, concludesd that “For us, designing for tablets was an investment that has really paid off.”
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out more about creating a tablet version of your app by reviewing the
+  <a href="http://developer.android.com/distribute/essentials/quality/tablets.html">
+  Tablet App Quality</a> guidelines and growing your user base.
+</p>
diff --git a/docs/html/distribute/stories/apps/sayhi.jd b/docs/html/distribute/stories/apps/sayhi.jd
new file mode 100644
index 0000000..1beb028
--- /dev/null
+++ b/docs/html/distribute/stories/apps/sayhi.jd
@@ -0,0 +1,83 @@
+page.title=SayHi Chat grows installs and user engagement with App Translation Service
+page.metaDescription=The SayHi team used details from Google Analytics, the DAU and user growth numbers, to identify several candidate languages for new translations.
+page.tags="developerstory", "apps", "googleplay"
+page.image=images/cards/distribute/stories/sayhichat.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/sayhichat-icon.png"
+  height="113" />
+</div>
+
+<p>
+  The <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.unearby.sayhi">
+  SayHi Chat app</a>, a social app to help its users find people nearby, was
+  first released in Japanese, Chinese, and English. It soon became one of the
+  most popular apps in Japan, Hong Kong, and Taiwan.
+</p>
+
+
+<h3>What they did</h3>
+
+<p>
+  The SayHi team realized that the global growth of SayHi was being restricted
+  by the limited number of languages in which the app was available. Using
+  details from Google Analytics, the DAU and user growth numbers, the SayHi team
+  identified several candidate languages for new translations. After looking at
+  the total of Android and iOS users in each market, they settled on a list of
+  13 additional languages. They then engaged the App Translation Service through
+  the Google Play Developer Console to complete the translations.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:194px">
+  <img width="194"
+   src="{@docRoot}images/distribute/stories/sayhichat-screenshot.jpg"
+   srcset=
+  "{@docRoot}images/distribute/stories/sayhichat-screenshot.jpg 1x
+  {@docRoot}images/distribute/stories/sayhichat-screenshot_2x.jpg 2x">
+  <p class="img-caption">
+    Arabic version of SayHi Chat
+  </p>
+</div>
+
+<p>
+  SayHi launched in its new languages in August 2013 and immediately saw a 120
+  percent increase in install rates. In addition, the app entered the Top 10
+  apps rankings in countries including Poland and Italy.
+</p>
+
+<p>
+  Notably, they also saw steady growth in Spain after replacing their previous
+  non-professional Spanish translation with a professional one produced by the
+  App Translation Service.
+</p>
+
+<p>
+  There was also an increase of about 20 percent in revenue and around a 50
+  percent increase in User Reviews in the new languages.
+</p>
+
+<p>
+  Yan Shi, senior developer at SayHi, says “The App Translation Service is
+  really easy to use and the completion time for translation requests is very
+  good.”
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out more about the
+  <a href="http://developer.android.com/distribute/tools/localization-checklist.html#gp-trans">
+  App Translation Service</a> and read the full
+  <a href="https://developer.android.com/distribute/tools/localization-checklist.html">
+  Localization checklist</a> to simplify the process of localizing your app or
+  game for users across the globe.
+</p>
diff --git a/docs/html/distribute/stories/games.jd b/docs/html/distribute/stories/games.jd
index 2351eed..fe059eb 100644
--- a/docs/html/distribute/stories/games.jd
+++ b/docs/html/distribute/stories/games.jd
@@ -1,28 +1,35 @@
-page.title=Developer Stories: Google Play Game Services
-meta.tags="google play, story, stories, games, global"
+page.title=Developer Stories: Games
+meta.tags="google play, games, global, developer story"
+page.timestamp=1381449601
 page.image=/images/distribute/glu-ew-gpgames.jpg
 page.metaDescription=How game studios are using Google Play game services to deliver new gaming experiences for their users.
 
 @jd:body
 
 <p>
-  <a href="https://developers.google.com/games/">Google Play game services</a>
-  lets you add great social features to your games quickly, without having to
-  build them yourself. You can add multiplayer, game invites, quests, and a
-  variety of other features &mdash; all from within your app. Google provides
-  cross-platform game and player infrastructure for you, as well as insights
-  and analytics to help you understand the activities of users in your games.
+  Learn how top game studios are taking advantage of Google Play game services
+  &mdash; the features they've added and the results they are seeing.
 </p>
 
-<p>
-  The case study presentations below highlight how top game studios are taking
-  advantage of Google Play game services &mdash; the features they've added and
-  the results they are seeing. Each deck (PDF) is focused on a single game and
-  how it uses a specific Google Play gemes feature.
-</p>
+<section class="dac-section dac-small" id="games-videos"><div class="wrap">
+  <h2 class="norule">Videos</h2>
 
-<div class="resource-widget resource-flow-layout col-13"
-    data-query="collection:distribute/stories/games"
-    data-sortOrder="-timestamp"
-    data-cardSizes="18x12"
-    data-maxResults="32"></div>
\ No newline at end of file
+  <div class="resource-widget resource-flow-layout col-16"
+      data-query="type:youtube+tag:developerstory+tag:games"
+      data-sortOrder="-timestamp"
+      data-cardSizes="6x6"
+      data-items-per-page="15"
+      data-initial-results="6"></div>
+</div></section>
+
+<section class="dac-section dac-small" id="games-articles"><div class="wrap">
+  <h2 class="norule">Articles</h2>
+
+  <div class="resource-widget resource-flow-layout col-16"
+      data-query="type:distribute+tag:developerstory+tag:games"
+      data-sortOrder="-timestamp"
+      data-cardSizes="6x6"
+      data-items-per-page="15"
+      data-initial-results="6"></div>
+</div></section>
+
diff --git a/docs/html/distribute/stories/games/concrete-bowling.jd b/docs/html/distribute/stories/games/concrete-bowling.jd
new file mode 100644
index 0000000..f4f6549
--- /dev/null
+++ b/docs/html/distribute/stories/games/concrete-bowling.jd
@@ -0,0 +1,93 @@
+page.title=Concrete Software increases engagement with quests
+page.metaDescription=Concrete Software makes use of Google Play games services in its 10-pin bowling game, PBA Bowling Challenge.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/concrete-bowling.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img
+  src="{@docRoot}images/distribute/stories/concrete-bowling-icon.png" />
+</div>
+
+<p>
+  Concrete Software makes use of Google Play games services in its 10-pin
+  bowling game,
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.concretesoftware.pbachallenge_androidmarket">
+  PBA Bowling Challenge</a>. Once users have signed in with Google Play games
+  services they’re able to take part in multiplayer games, view leaderboards,
+  and gain achievements.
+</p>
+
+
+<h3>What they did</h3>
+
+<p>
+  To offer players new game content, Concrete Software implemented Google Play
+  games services quests. Easily accessible from the game’s home screen, quests
+  are designed with clear goals that integrated into in-game goals and core
+  experience. Each quest stated rewards; offered a progress tracker, which
+  updates as users advance; gave a clear deadline; and a call to action button.
+  Both short-term and long-term quests were offered to users.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:310px">
+  <img
+   src="{@docRoot}images/distribute/stories/concrete-bowling-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/concrete-bowling-screenshot.png 1x
+  {@docRoot}images/distribute/stories/concrete-bowling-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Prominent and customized quest icon displayed on home screen
+  </p>
+</div>
+
+<p>
+  Quests appealed most to dedicated users, and yet there is still an increase
+  in their engagement after using quests. <b>Sessions per user improved 14.4
+  percent</b> DoD upon quests acceptance, and <b>3.7 percent</b> DoD upon
+  completion. While users who accepted a quest <b>started 98 percent more
+  sessions per day</b>; users who completed a quest <b>started 140.2 percent
+  </b> more.
+</p>
+
+<p>
+  Concrete Software also found that quest acceptance and completion rates
+  increased overtime, while daily active users (DAU) remained constant. Among
+  users who accepted the first quest, almost <b>48% of the users accepted a
+  second</b> quest. Among those who completed the first, <b>78% accepted a
+  second</b>.
+</p>
+
+<p>
+  Quests also had a positive impact on retention with one day retention for
+  users who accepted a quest being <b>39.2 percent higher</b> than the average;
+  for users who completed a quest, it’s <b>60.7 percent higher</b> than the
+  average.
+</p>
+
+<p>
+  See examples of how Concrete Software integrated Google Play games services
+  into the <a class="external-link"
+  href="{@docRoot}shareables/stories/ConcreteSoftware_PBABowling_gpgs.pdf">
+  UI of PBA Bowling Challenge</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out how to
+  <a class="external-link"
+  href="https://developers.google.com/games/services/common/concepts/quests">
+  implement quests</a> in your games and discover more about
+  <a href="https://developer.android.com/distribute/engage/game-services.html">
+  using Google Play games services</a> in your games to increase player
+  engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/doctor-who-legacy.jd b/docs/html/distribute/stories/games/doctor-who-legacy.jd
new file mode 100644
index 0000000..d62e250
--- /dev/null
+++ b/docs/html/distribute/stories/games/doctor-who-legacy.jd
@@ -0,0 +1,97 @@
+page.title=Achievements drive engagement in Doctor Who: Legacy
+page.metaDescription=The Tiny Rebel Games integrated achievements and cloud services from Google Play games services into the award-winning Doctor Who: Legacy game, under license from BBC Worldwide.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/doctor-who-legacy.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/doctor-who-legacy-icon.png"
+  height="113" />
+</div>
+
+<p>
+  The Tiny Rebel Games team has a combined experience of over 35 years in
+  creating blockbuster console, PC, and mobile games in the areas of production,
+  design, marketing, social media, PR, and distribution.
+</p>
+
+<p>
+  They are the publisher and co-developer (along with Seed Studio in Taiwan) of
+  the award-winning
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.tinyrebel.doctorwholegacy">
+  Doctor Who: Legacy</a> game, under license from BBC Worldwide.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  Tiny Rebel Games integrated achievements and cloud services from Google
+  Play games services into Doctor Who: Legacy. Achievements were supported with
+  beautifully designed and customized badges to encourage players to unlock. To
+  delight users with quick wins, achievements can be unlocked from within the
+  first play session. In addition, percentage progress updates keep players
+  motivated.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:237px">
+  <img
+   src="{@docRoot}images/distribute/stories/doctor-who-legacy-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/doctor-who-legacy-screenshot.png 1x
+  {@docRoot}images/distribute/stories/doctor-who-legacy-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Beautifully designed achievements badges encourage unlock
+  </p>
+</div>
+
+<p>
+  After integrating achievements, Tiny Rebel Games saw a dramatic increase in
+  daily revenues as a result of an increase in daily installs and the average
+  revenue per install
+</p>
+
+<p>
+  Some key metrics include:
+  <ul>
+    <li>Average <b>daily revenue increased 108 percent</b> from the 30 days
+    before to the 30 days after integrating Google Play games services.</li>
+    <li>30-day <b>average revenue per install increased 53 percent</b> after
+    implementation.</li>
+    <li>Among achievement earners, <b>integration increased daily average
+    revenue per user by ~33 percent</b>.</li>
+  </ul>
+</p>
+
+<p>
+  "Google Play has been a tremendous partner of ours in our launch and support
+  of Doctor Who: Legacy, which to date remains our most successful platform in
+  terms of downloads and revenue. Integration of cloud services and achievements
+  dramatically improved our daily revenues and we continue to look to add
+  additional services like the newly announced Google Quests," says Susan
+  Cummings, CEO and Executive Producer at Tiny Rebel Games.
+</p>
+
+<p>
+  See examples of how Tiny Rebel Games integrated Google Play games services
+  achievements into the
+  <a href="{@docRoot}shareables/stories/TinyRebel_DoctorWhoLegacy_gpgs.pdf">
+  UI of Doctor Who: Legacy</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out how to add
+  <a href="https://developers.google.com/games/services/common/concepts/achievements">achievements</a> to your games and discover more about
+  <a href="https://developer.android.com/distribute/engage/game-services.html">
+  using Google Play games services</a> in your games to increase player
+  engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/dots.jd b/docs/html/distribute/stories/games/dots.jd
new file mode 100644
index 0000000..e3851c2
--- /dev/null
+++ b/docs/html/distribute/stories/games/dots.jd
@@ -0,0 +1,84 @@
+page.title=Dots increased installs by over 6% using Store Listing Experiments
+page.metaDescription=Game developer Playdots decided to use Store Listing Experiments to see if different game screenshots could impact installs for their game Two Dots. They found that game screenshots showing gameplay mechanics drove more installs from the store listing page than their existing non-gameplay screenshots.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/dots.png
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/dots-icon.png" height="113" />
+</div>
+
+<p>
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.nerdyoctopus.gamedots&hl=en">
+  Dots</a>, the successful puzzle strategy game from games developer Playdots
+  Inc., was produced by <a class="external-link"
+  href="https://betaworks.com/">Betaworks</a> in 2013.
+  It achieved over 20 million downloads in its first year, with over five
+  billion games having played on Android and iOS since launch. For the follow
+  up,
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.weplaydots.twodotsandroid&hl=en">
+  Two Dots</a>, Playdots decided to use
+  <a class="external-link"
+  href="https://support.google.com/googleplay/android-developer/answer/6227309">
+  Store Listing Experiments</a> to see if
+  different game screenshots could impact installs. They found that game
+  screenshots showing gameplay mechanics drove more installs from the store
+  listing page than their existing non-gameplay screenshots.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  Dots used a localized store listing experiment in the Google Play Developer
+  Console to test Two Dots screenshots in the US. They targeted 50 percent of
+  users with non-gameplay screenshots (the “control”) and the other 50 percent
+  with gameplay screenshots, to see how graphically demonstrating gameplay would
+  impact installs.
+</p>
+
+<h3>Results</h3>
+
+<p>
+  The results revealed that screenshots showing gameplay mechanics drove 6
+  percent more installs than the control group using non-gameplay screenshots.
+</p>
+
+  <img
+   src="{@docRoot}images/distribute/stories/dots-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/dots-screenshot.png 1x
+  {@docRoot}images/distribute/stories/dots-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Beautifully designed achievements badges encourage unlock
+  </p>
+
+<p>
+  In a follow up experiment they tested whether including text emphasizing
+  gameplay performed better than screenshots without text. The results showed
+  that screenshots with text highlighting gameplay had an 8 percent increase in
+  installs compared to those without.
+</p>
+
+<p>
+  Dots commented that “sometimes you have to step back and think about what your
+  objective is: illustrate gameplay. So that’s what we did — and the simplest
+  changes impacted our conversion by a huge percentage.”
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Learn how to run
+  <a class="external-link"
+  href="https://support.google.com/googleplay/android-developer/answer/6227309">
+  Store Listing Experiments</a> and read our best practices for
+  <a href="https://developer.android.com/distribute/users/experiments.html">
+  running successful experiments</a>.
+</p>
diff --git a/docs/html/distribute/stories/games/g4a-indian-rummy.jd b/docs/html/distribute/stories/games/g4a-indian-rummy.jd
new file mode 100644
index 0000000..0655f80
--- /dev/null
+++ b/docs/html/distribute/stories/games/g4a-indian-rummy.jd
@@ -0,0 +1,93 @@
+page.title=Ease-of-use and fast turnaround time benefits Indian Rummy.
+page.metaDescription=Games4All localized their apps based upon popularity.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/g4a-indian-rummy.jpg
+page.timestamp=1456340902
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/indian-rummy-icon.png"
+  height="113" />
+</div>
+
+<p>
+  Games4All (G4A) develops a variety of games that they distribute broadly to
+  users around the world.
+</p>
+
+<p>
+  After noticing that certain apps — including
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=org.games4all.android.games.indianrummy.prod">
+  Indian Rummy</a>, a card game in which players try to form sets and sequences
+  of cards — had become especially popular in specific countries, they decided
+  to localize those apps.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  Initially they used a local agency to do the translations and got great
+  results — the release of localized versions increased the number of users
+  tremendously.
+</p>
+
+<p>
+  Building on that success, G4A expanded their localization goals, but found
+  that translation quality varied among their vendors and costs limited the
+  language/game combinations they could translate. That's when G4A decided to try
+  the App Translation Service.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" class="style:376px">
+  <img
+   src="{@docRoot}images/distribute/stories/indian-rummy-screenshot.jpg"
+   srcset=
+  "{@docRoot}images/distribute/stories/indian-rummy-screenshot.jpg 1x
+  {@docRoot}images/distribute/stories/indian-rummy-screenshot_2x.jpg 2x">
+  <p class="img-caption">
+    Dutch version of Indian Rummy
+  </p>
+</div>
+
+<p>
+  G4A found that the cost per translation was much lower with the App Translation Service compared to local companies. The process was much easier too, G4A simply had to provide texts in the strings.xml format.
+</p>
+
+<p>
+  Initially, G4A translated Indian Rummy into five languages through the App
+  Translation Service. As a result they’ve <b>doubled the number of users</b>
+  in French and German languages and seen a <b>300 percent increase in user
+  engagement</b> with the localized versions.
+</p>
+
+<p>
+  They also found that making slight changes to games rules based on local
+  nuances was key to the game's success.
+</p>
+
+<p>
+  “In contrast [to the App Translation Service], our previous experiences with
+  translation agencies were much more difficult: files often required extensive
+  conversion operations to make them usable, and turnaround times varied
+  wildly,” says G4A founder Pieter Olivier. He continues, "With the App
+  Translation Service, the turnaround time is usually measured in days instead
+  of weeks that we were used to with traditional translation agencies."
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out more about the
+  <a href="http://developer.android.com/distribute/tools/localization-checklist.html#gp-trans">
+  App Translation Service</a> and read the full
+<a href="https://developer.android.com/distribute/tools/localization-checklist.html">
+  Localization checklist</a> to simplify the process of localizing your app or
+  game for users across the globe.
+</p>
diff --git a/docs/html/distribute/stories/games/gameloft-asphalt8.jd b/docs/html/distribute/stories/games/gameloft-asphalt8.jd
new file mode 100644
index 0000000..991c829
--- /dev/null
+++ b/docs/html/distribute/stories/games/gameloft-asphalt8.jd
@@ -0,0 +1,90 @@
+page.title=Gameloft drives viral distribution with friend invitations
+page.metaDescription=Gameloft makes extensive use of Google Play games services.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/gameloft-asphalt8.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img
+  src="{@docRoot}images/distribute/stories/gameloft-asphalt8-icon.png"
+  height="113" />
+</div>
+
+<p>
+  Founded in 2000 Gameloft has grown to deliver over 500 games, with over 2
+  million of their games being downloaded every day across smartphones and
+  feature phones.
+</p>
+
+<p>
+  Gameloft makes extensive use of Google Play games services.
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.gameloft.android.ANMP.GloftA8HM">
+  Asphalt 8: Airborne</a> is no exception including Google Play games services
+  sign-in, leaderboards, and achievements.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  To drive downloads of Asphalt 8: Airborne, Gameloft introduced friend invites.
+  Gameloft chose to display the invite option clearly next to social media
+  iconography, which started a smooth and easy friends invite flow. Then the
+  friend invites look and feel was designed to fit the game’s artistic style to
+  create a more trusted and immersive experience.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:310px">
+  <img
+   src="{@docRoot}images/distribute/stories/gameloft-asphalt8-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/gameloft-asphalt8-screenshot.png 1x
+  {@docRoot}images/distribute/stories/gameloft-asphalt8-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Friend invites match the game’s artistic style
+  </p>
+</div>
+
+<p>
+  Gameloft found that adding friends invites enhanced the overall user
+  experience and helped increase viral distribution of Asphalt 8: Airborne.
+</p>
+
+<p>
+  In addition, retention and the percentage of payers are positively correlated
+  with Google Play games sign-ins. Users that signed-in are <b>300 percent more
+  likely to come back after three days, and 400 percent more likely after seven
+  days</b>. In addition, they’re <b>3.5 times more likely to convert to payers
+  </b>.
+</p>
+
+<p>
+  Gameloft’s experience with Google Play games services has resulted in their
+  integration into the majority of Gameloft’s games.
+</p>
+
+<p>
+  See examples of how Gameloft integrated Google Play games services into the
+  <a class="external-link"
+  href="{@docRoot}shareables/stories/Gameloft_Asphalt8_gpgs.pdf">
+  UI of Asphalt 8</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out how to add
+  <a class="external-link"
+  href="https://developers.google.com/games/services/common/concepts/realtimeMultiplayer#invitations">
+  friend invitations</a> in your multi-player games and more about
+  <a href="https://developer.android.com/distribute/engage/game-services.html">
+  using Google Play games services</a> in your games to increase your player
+  engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/glu-eternity-warriors.jd b/docs/html/distribute/stories/games/glu-eternity-warriors.jd
new file mode 100644
index 0000000..bb6b400
--- /dev/null
+++ b/docs/html/distribute/stories/games/glu-eternity-warriors.jd
@@ -0,0 +1,85 @@
+page.title=Glu adds games gifts to Eternity Warriors 3 to driver player engagement
+page.metaDescription=Glu Mobile makes extensive use of Google Play games in Eternity Warriors 3 this including sign-in, leaderboards, achievements, and multiplayer games features.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/glu-eternity-warriors.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img
+  src="{@docRoot}images/distribute/stories/glu-eternity-warriors-icon.jpg"
+  height="113" />
+</div>
+
+<p>
+  Found in 2001, Glu  Mobile is a leading global developer and publisher of
+  free-to-play games for smartphone and tablet devices.
+</p>
+
+<p>
+  The company makes extensive use of Google Play games services across its
+  portfolio: in Eternity Warriors 3 this includes sign-in, leaderboards,
+  achievements, and multiplayer games features.
+</p>
+
+
+<h3>What they did</h3>
+
+<p>
+  To help drive installs and player engagement, Glu added games gifts to
+  Eternity Warriors 3. They made this new feature accessible from the home
+  screen, providing it exposure by grouping it with similar “freebies” options.
+  In addition, so not to interrupt the in-game experience, they implemented an
+  automatic transition back to the gifting screen after sending requests.
+</p>
+
+<p>
+  To promote the addition of games gifts Glu:
+  <ul>
+    <li>sent push notifications to users telling them about the gifting feature.
+    </li>
+    <li>showed a full screen in-game screen promoting the gifting feature.</li>
+    <li>ran promos during promo events.</li>
+  </ul>
+</p>
+
+<p>
+  Glu went a step further by integrating friends invites into the gifts UI,
+  with the option easily accessible in the Gifting screen.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:378px">
+  <img
+   src="{@docRoot}images/distribute/stories/glu-eternity-warriors-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/glu-eternity-warriors-screenshot.png 1x
+  {@docRoot}images/distribute/stories/glu-eternity-warriors-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Gifting options are clearly displayed
+  </p>
+</div>
+
+<p>
+  Glu found that the gifting feature has a very high response rate and the gift
+  requests’ <b>fulfillment rate doubled</b> within 30 days of the feature’s
+  launch. Also these rates continued to increase over time among Eternity
+  Warriors 3 players.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out how to add
+  <a class="external-link"
+  href="https://developers.google.com/games/services/android/giftRequests">
+  game gifts</a> to your games and discover more about
+  <a href="https://developer.android.com/distribute/engage/game-services.html">
+  using Google Play games services</a> in your games to increase player
+  engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/glu-tap-baseball.jd b/docs/html/distribute/stories/games/glu-tap-baseball.jd
new file mode 100644
index 0000000..30be8e9
--- /dev/null
+++ b/docs/html/distribute/stories/games/glu-tap-baseball.jd
@@ -0,0 +1,71 @@
+page.title=Glu increased their conversion rate over 2% with Store Listing Experiments
+page.metaDescription=Glu Mobile decided to use Store Listing Experiments to see if different background colors in the game’s icon would affect installs. They found that a lighter background resulted in more installs.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/glu-tap-baseball.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/glu-tap-baseball-icon.jpg"
+  height="113" />
+</div>
+
+<p>
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.glu.baseball15&hl=en">
+  Tap Sports Baseball 2015</a> is a sports game by US games developer Glu
+  Mobile. Founded in 2001, Glu Mobile is a leading global developer and
+  publisher of free-to-play games for smartphone and tablet devices.
+</p>
+
+<p>
+  Glu Mobile decided to use
+  <a class="external-link"
+  href="https://support.google.com/googleplay/android-developer/answer/6227309">
+  Store Listing Experiments</a> to see if different background colors in the
+  game’s icon would affect installs. They found that a lighter background
+  resulted in more installs.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  <a class="external-link"
+  href="https://play.google.com/store/apps/dev?id=8633921029894576093">Glu
+  Mobile</a> used a global store listing experiment in the Google Play Developer
+  Console to test three different background colors in the game’s icon.
+</p>
+
+<h3>Results</h3>
+
+<p>
+  The results showed that of three different color schemes —  blue, light blue,
+  and light red — an icon with a light blue background converted 2.9 percent
+  more visitors than the original control icon.
+</p>
+
+
+  <img
+   src="{@docRoot}images/distribute/stories/glu-tap-baseball-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/glu-tap-baseball-screenshot.png 1x
+  {@docRoot}images/distribute/stories/glu-tap-baseball-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Beautifully designed achievements badges encourage unlock
+  </p>
+
+
+<h3>Get started</h3>
+
+<p>
+  Learn how to run
+  <a class="external-link"
+  href="https://support.google.com/googleplay/android-developer/answer/6227309">
+  Store Listing Experiments</a> and read our best practices for
+  <a href="https://developer.android.com/distribute/users/experiments.html">
+  running successful experiments</a>.
+</p>
diff --git a/docs/html/distribute/stories/games/hotheadgames-firefight.jd b/docs/html/distribute/stories/games/hotheadgames-firefight.jd
new file mode 100644
index 0000000..ac1461a
--- /dev/null
+++ b/docs/html/distribute/stories/games/hotheadgames-firefight.jd
@@ -0,0 +1,90 @@
+page.title=Hothead Games grows retention and revenues with leaderboards and achievements
+page.metaDescription=Following their experience with Google Play games services in Rivals at War: Firefight, Hothead Games includes its features in all their games.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/hotheadgames-firefight.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/hotheadgames-firefight-icon.png"
+  height="113" />
+</div>
+
+<p>
+  Hothead Games was founded in 2006 and took the plunge into mobile games in
+  2011. This move has proved very successful, allowing the company to continue
+  growing into 2016 by creating and publishing great games exclusively for
+  mobile users.
+</p>
+
+<p>
+  Following their experience with Google Play games services in
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.hotheadgames.google.free.valorcmd">
+  Rivals at War: Firefight</a> they plan to include its features in all their
+  games.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  To start, the Google Play games services sign-in icon was given a prominent
+  position on the home screen so it was clear and easily accessible. They then
+  added leaderboards with their own beautifully designed badges as well as
+  achievements. Both were aligned and displayed with related in-game missions
+  showing players their progress and rewards earned. Notifications were used to
+  give players instant gratification when achievements were unlocked.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:379px">
+  <img
+   src="{@docRoot}images/distribute/stories/hotheadgames-firefight-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/hotheadgames-firefight-screenshot.png 1x
+  {@docRoot}images/distribute/stories/hotheadgames-firefight-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Beautifully designed and specialized leaderboards
+  </p>
+</div>
+
+<p>
+  Hothead games found that retention, average revenue per daily active user
+  (ARPDAU), and average revenue per user (ARPU) positively correlated with
+  Google Play games sign-ins. The metrics for users signed-in with Google Play
+  games services include:
+  <ul>
+    <li>Day one retention <b>125 percent higher</b> and day seven retention
+    <b>182 percent higher</b>.</li>
+    <li>ARPDAU <b>134 percent higher</b>.</li>
+    <li>ARPU <b>900 percent higher</b>.</li>
+  </ul>
+</p>
+
+<p>
+  See examples of how Hothead Games integrated Google Play games services
+  leaderboards and achievements into the
+  <a class="external-link"
+  href="{@docRoot}shareables/stories/HotheadGames_RivalsatWar_gpgs.pdf">
+  UI of Rivals at War: Firefight</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out how to add
+  <a class="external-link"
+  href="https://developers.google.com/games/services/common/concepts/leaderboards">
+  leaderboards</a> and
+  <a class="external-link"
+  href="https://developers.google.com/games/services/common/concepts/achievements">
+  achievements</a> to your games and discover more about
+  <a href="https://developer.android.com/distribute/engage/game-services.html">
+  using Google Play games services</a> in your games to increase player
+  engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/kongregate-adv-cap.jd b/docs/html/distribute/stories/games/kongregate-adv-cap.jd
new file mode 100644
index 0000000..8338934
--- /dev/null
+++ b/docs/html/distribute/stories/games/kongregate-adv-cap.jd
@@ -0,0 +1,76 @@
+page.title=Kongregate increases AdVenture Capitalist conversions by 5% with Store Listing Experiments
+page.metaDescription=AdVenture Capitalist, a builder game from games developers HyperHippo and Kongregate, was originally built for the web and released as a mobile version in May 2015. Kongregate decided to use Store Listing Experiments to see if different graphics could impact their installs.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/kongregate-adv-cap.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/kongregate-adv-cap-icon.png"
+  height="113" />
+</div>
+
+<p>
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.kongregate.mobile.adventurecapitalist.google&hl=en">
+  AdVenture Capitalist</a> a builder game from games developers HyperHippo and
+  Kongregate, was originally built for the web and released as a mobile version
+  in May 2015. Kongregate decided to use
+  <a class="external-link"
+  href="https://support.google.com/googleplay/android-developer/answer/6227309">
+  Store Listing Experiments</a> to see if different graphics
+  could impact their installs. They found that graphics illustrating the game’s
+  builder mechanics and strategy drove more installs from the store listing page
+  than their existing graphics.
+
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  <a class="external-link"
+  href="https://play.google.com/store/apps/developer?id=Kongregate">
+  Kongregate</a> used a global store listing experiment in the Google Play
+  Developer Console to test two variant designs of feature art. Their prediction
+  was that their current control graphic would outperform the variant designs,
+  because of the game’s brand and icon reputation on the web.
+</p>
+
+<h3>Results</h3>
+
+<p>
+  The results revealed that variant graphics showing more of the game’s builder
+  mechanics and strategy drove more installs compared to the existing branded
+  icon.
+</p>
+
+  <img
+   src="{@docRoot}images/distribute/stories/kongregate-adv-cap-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/kongregate-adv-cap-screenshot.png 1x
+  {@docRoot}images/distribute/stories/kongregate-adv-cap-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Beautifully designed achievements badges encourage unlock
+  </p>
+
+<p>
+  Jeff Gurian, Senior Marketing Director at Kongregate commented that: "Google
+  Play's Store Listing Experiments tool allows us to maximize ASO performance
+  across all of our channels in a live environment, for free — it is now our
+  primary tool for testing."
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Learn how to run
+  <a class="external-link"
+  href="https://support.google.com/googleplay/android-developer/answer/6227309">
+  Store Listing Experiments</a> and read our best practices for
+  <a href="https://developer.android.com/distribute/users/experiments.html">
+  running successful experiments</a>.
+</p>
diff --git a/docs/html/distribute/stories/games/kongregate-global-assault.jd b/docs/html/distribute/stories/games/kongregate-global-assault.jd
new file mode 100644
index 0000000..e8fec2d
--- /dev/null
+++ b/docs/html/distribute/stories/games/kongregate-global-assault.jd
@@ -0,0 +1,78 @@
+page.title=Kongregate increases Global Assault installs by 92 percent with Store Listing Experiments
+page.metaDescription=Kongregate decided to use Store Listing Experiments to see if different artwork could impact the installs of their game Global Assault. They found that icons illustrating dynamic game play drove more installs from the store listing page than their existing icon.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/kongregate-global-assault.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img
+  src="{@docRoot}images/distribute/stories/kongregate-global-assault-icon.png"
+  height="113" />
+</div>
+
+<p>
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.kongregate.mobile.globalassault.google">
+  Global Assault</a> is a free-to-play, 3D strategy RPG developed and produced
+  by Kongregate that was released in November 2014. Kongregate decided to use
+  <a class="external-link"
+  href="https://support.google.com/googleplay/android-developer/answer/6227309">
+  Store Listing Experiments</a> to see if different artwork could impact their
+  installs. They found that icons illustrating dynamic game play drove more
+  installs from the store listing page than their existing icon.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  <a class="external-link"
+  href="https://play.google.com/store/apps/developer?id=Kongregate">
+  Kongregate</a> used a global store listing experiment in the Google Play
+  Developer Console to test three new icons. From previous internal tests, they
+  believed that their existing icon, the control, would perform best in terms of
+  installs.
+</p>
+
+<h3>Results</h3>
+
+<p>
+  The results showed that one new icon, the ‘Chopper’ variant, outperformed the
+  control group by 92 percent in terms of installs. Based on these findings,
+  Kongregate changed Global Assault’s icon on Google Play to the ‘Chopper’
+  image.
+</p>
+
+
+  <img
+   src="{@docRoot}images/distribute/stories/kongregate-global-assault-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/kongregate-global-assault-screenshot.png 1x
+  {@docRoot}images/distribute/stories/kongregate-global-assault-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Beautifully designed achievements badges encourage unlock
+  </p>
+
+
+<p>
+  Jeff Gurian, Senior Marketing Director at Kongregate commented that “as a
+  publisher we are responsible for handling the marketing spend of our
+  developers. If we can improve conversion rates through art or graphics by even
+  0.5% it is extremely valuable to us — and the Store Listing Experiment tool
+  gives us the data we need to make those decisions.”
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Learn how to run
+  <a class="external-link"
+  href="https://support.google.com/googleplay/android-developer/answer/6227309">
+  Store Listing Experiments</a> and read our best practices for
+  <a href="https://developer.android.com/distribute/users/experiments.html">
+  running successful experiments</a>.
+</p>
diff --git a/docs/html/distribute/stories/games/leos-fortune.jd b/docs/html/distribute/stories/games/leos-fortune.jd
new file mode 100644
index 0000000..8b20596
--- /dev/null
+++ b/docs/html/distribute/stories/games/leos-fortune.jd
@@ -0,0 +1,80 @@
+page.title=Saved games help bring players back to Leo’s Fortune
+page.metaDescription=1337 & Senri implemented Google Play games services saved games in their game Leo’s Fortune.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/leos-fortune.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/leos-fortune-icon.png"
+  height="113" />
+</div>
+
+<p>
+  1337 & Senri, a software development firm based in Gothenburg, Sweden, have
+  collaborated on a number of games, including
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.leosfortune">
+  Leo’s Fortune</a> and
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.senri.da">Devil's
+  Attorney</a>.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  Senri implemented Google Play games services saved games in Leo’s Fortune. Each saved game includes a screenshot showing the date and time of the last play session, as well as the current chapter and total play time. In addition progress information is displayed clearly in Play Games destination app’s home screen.
+</p>
+
+<p>
+  In addition, they also implemented one Leaderboard per chapter, which fits
+  well with the flow and objective of the game.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:304px">
+  <img
+   src="{@docRoot}images/distribute/stories/leos-fortune-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/leos-fortune-screenshot.png 1x
+  {@docRoot}images/distribute/stories/leos-fortune-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Players can view and restart games
+  </p>
+</div>
+
+<p>
+  Adoption of cloud saved games, achievements, and leaderboards was very high
+  among players of Leo’s Fortune.
+</p>
+
+<p>
+  They found that Google Play games services users are 22 percent more likely to
+  come back after 1 day and 17 percent more likely after 2 days.
+</p>
+
+<p>
+  See examples of how 1337 & Senri integrated Google Play games services saved
+  games, achievements, and leaderboards into the
+  <a class="external-link"
+  href="{@docRoot}shareables/stories/Senri_LeosFortune_gpgs.pdf">
+  UI of Leo's Fortune</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out how to add
+  <a class="external-link"
+  href="https://developers.google.com/games/services/common/concepts/savedgames">
+  saved games</a> to your games and discover more about
+  <a href="https://developer.android.com/distribute/engage/game-services.html">
+  using Google Play games services</a> in your games to increase player
+  engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/noodlecake-super-stickman.jd b/docs/html/distribute/stories/games/noodlecake-super-stickman.jd
new file mode 100644
index 0000000..54a4794
--- /dev/null
+++ b/docs/html/distribute/stories/games/noodlecake-super-stickman.jd
@@ -0,0 +1,108 @@
+page.title=Noodlecake engages players with multiplayer in Super Stickman Golf 2
+page.metaDescription=For the update to Super Stickman Golf, Noodlecake made extensive use of Google Play games services.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/noodlecake-super-stickman.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/noodlecake-super-stickman-icon.png"
+  height="113" />
+</div>
+
+<p>
+  Founded in early 2011, Noodlecake Studios is an indie game studio based in
+  Canada. Noodlecake found success with its first game, Super Stickman Golf.
+  Since then they have expanded into publishing and releasing games on multiple
+  platforms.
+</p>
+
+<p>
+  For the update to Super Stickman Golf Noodlecake made extensive use of
+  Google Play games services.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  In
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.noodlecake.ssg2">
+  Super Stickman Golf 2</a> Noodlecake implemented a game open screen that
+  prompts the user to sign in, with a clear value proposition. Once the user has
+  signed in, they’re given the option to auto sign-in in the future. For users
+  who don’t select this option, sign-in is prominently displayed on the game’s
+  home screen.
+</p>
+
+<p>
+  In addition to achievements, the main Google Play games services feature in
+  Super Stickman Golf 2 is multiplayer. Users have two multiplayer options:
+  turn based or race mode,  which engage with different types of players.
+  Players can find an opponent among their friends or one at random to start a
+  game immediately. And to minimize drop-off asynchronous gameplay starts
+  immediately after an invite is issued.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:379px">
+  <img
+   src="{@docRoot}images/distribute/stories/noodlecake-super-stickman-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/noodlecake-super-stickman-screenshot.png 1x
+  {@docRoot}images/distribute/stories/noodlecake-super-stickman-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Two multiplayer options engage with different types of players
+  </p>
+</div>
+
+<p>
+  Noodlecake found that user acquisition, retention, and engagement positively
+  correlated with the use of Google Play Games by players. This is consistent
+  across different games and genres, not just for Stickman Golf 2.
+</p>
+
+<p>
+  Also multiplayer, in addition to increasing user engagement, is also an
+  effective user acquisition channel.
+</p>
+
+<p>
+  Some key metrics include:
+  <ul>
+    <li>~96 percent increase in the number of users after Google Play games
+    services integration.</li>
+    <li>~26 percent decrease in the user attrition rate.</li>
+    <li>~6 percent increase in session length.</li>
+  </ul>
+</p>
+
+<p>
+  See examples of how Noodlecake Studio integrated Google Play games services
+  multiplayer and achievements into the
+  <a style="external-link"
+  href="{@docRoot}shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.pdf">
+  UI of Super Stickman Golf 2</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out how to add
+  <a class="external-link"
+  href="https://developers.google.com/games/services/common/concepts/realtimeMultiplayer">
+  real-time</a> or
+  <a class="external-link"
+  href="https://developers.google.com/games/services/common/concepts/turnbasedMultiplayer">
+  turn-based</a> multiplayer and
+  <a class="external-link"
+  href="https://developers.google.com/games/services/common/concepts/achievements">achievements</a> to your games and discover more about
+  <a href="https://developer.android.com/distribute/engage/game-services.html">
+  using Google Play games services</a> in your games to increase player
+  engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/rvappstudios-zombie.jd b/docs/html/distribute/stories/games/rvappstudios-zombie.jd
new file mode 100644
index 0000000..134bac4
--- /dev/null
+++ b/docs/html/distribute/stories/games/rvappstudios-zombie.jd
@@ -0,0 +1,70 @@
+page.title=Localization improves Zombie Ragdoll engagement at launch
+page.metaDescription=Zombie Ragdoll is a physics based zombie shooting game launched by RV AppStudios in August 2013. Having attended Google I/O talks, the team at RV AppStudios was inspired to go global with Zombie Ragdoll at launch.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/rvappstudios-zombie.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/rvappstudios-zombie-icon.png" height="113" />
+</div>
+
+<p>
+  <a class="external-link" href="
+  https://play.google.com/store/apps/details?id=com.rvappstudios.zombieragdoll">
+  Zombie Ragdoll</a> is a physics based zombie shooting game launched by RV AppStudios in August
+  2013. Inspired by Google I/O talks about reaching global users on Google Play, the team at RV
+  AppStudios was inspired to go global with Zombie Ragdoll at launch.
+</p>
+
+
+<h3>What they did</h3>
+
+<p>
+  Using the App Translation Service in the Google Play Developer Console,
+  RV AppStudios launched Zombie Ragdoll localized into 20 languages.
+  In addition to localizing the text within the game, they also localized
+  game assets to specific countries and cultures.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:380px">
+  <img width="380"
+   src="{@docRoot}images/distribute/stories/rvappstudios-zombie-screenshot.jpg"
+   srcset=
+  "{@docRoot}images/distribute/stories/rvappstudios-zombie-screenshot.jpg 1x
+  {@docRoot}images/distribute/stories/rvappstudios-zombie-screenshot_2x.jpg 2x">
+  <p class="img-caption">
+    Hindi version of Zombie Ragdoll
+  </p>
+</div>
+
+<p>
+  After launch 80% of downloads came from non-English speaking countries,
+  improving engagement with users worldwide. In addition, there was
+  growth in use in countries where their apps hadn’t been as popular
+  before; achieving significant traction in countries such as Vietnam,
+  Russia, Philippines, and Thailand.
+</p>
+
+<p>
+  Vivek Dave, founder of RV AppStudios says, “Users want a personalized
+  experience, and by offering a localized game with translation of text and
+  graphic assets, we believe users will connect at a much deeper level.""
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out more about the App Translation Service <a href="
+  http://developer.android.com/distribute/tools/localization-checklist.html#gp-trans">
+  here</a> and read the full <a href="
+  https://developer.android.com/distribute/tools/localization-checklist.html">
+  Localization checklist</a> to simplify the process of localizing your app
+  or game for users across the globe.
+</p>
diff --git a/docs/html/distribute/stories/games/tiny-co.jd b/docs/html/distribute/stories/games/tiny-co.jd
new file mode 100644
index 0000000..b8435ba
--- /dev/null
+++ b/docs/html/distribute/stories/games/tiny-co.jd
@@ -0,0 +1,78 @@
+page.title=TinyCo finds monetization opportunities on tablets
+page.metaDescription=TinyCo launches their line of apps across multiple form factors.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/tiny-co.jpg
+page.timestamp=1456340902
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/tinyvillage-icon.png"
+  height="113" />
+</div>
+
+<p>
+  App developer TinyCo, makers of a suite of games such as Tiny Monsters,
+  decided to prioritize launching effectively across multiple platforms. They
+  chose Android as one of their primary launch platforms because of its large
+  installed base and global reach. They also knew that the growing base of
+  Android tablet users represented a huge opportunity.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  <a class="external-link"
+  href="http://play.google.com/store/apps/details?id=com.tinyco.village">
+  Tiny Village</a>, a game targeting 7- to 10-inch tablets and phones, was their
+  first title to take advantage of the strategy, and it proved to be a winning
+  one — especially in terms of Android tablets.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:336px">
+  <img
+   src="{@docRoot}images/distribute/stories/tinyvillage-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/tinyvillage-screenshot.png 1x
+  {@docRoot}images/distribute/stories/tinyvillage-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Tiny Village monetized better on tablets
+  </p>
+</div>
+
+<p>
+  In the six months from launch TinyCo saw Android tablet <b>downloads more than
+  triple</b>.
+</p>
+
+<p>
+  When used on tablets Tiny Village also showed an increase in average revenue
+  per paying user (ARPPU) — about 35% higher than on smaller-screen devices such
+  as phones. Additionally, average revenue per user <b>(ARPU) is now about 35%
+  higher</b> as well. “The game is just much more immersive on tablets,” said
+  Rajeev Nagpal, Head of Product at TinyCo.
+</p>
+
+<p>
+  There has also been a <b>consistent increase in retention</b> over other
+  platforms, an important metric for games according to Nagpal.
+</p>
+
+<p>
+  “With continued optimization of the gameplay experience and a genuine
+  commitment to our Android offering through our Griffin engine, all of our
+  metrics started to rise,” said Nagpal.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Find out more about creating a tablet version of your app by reviewing the
+  <a href="http://developer.android.com/distribute/essentials/quality/tablets.html">
+  Tablet App Quality</a> guidelines and growing your user base.
+</p>
diff --git a/docs/html/distribute/stories/games/two-dots.jd b/docs/html/distribute/stories/games/two-dots.jd
new file mode 100644
index 0000000..a2299ce
--- /dev/null
+++ b/docs/html/distribute/stories/games/two-dots.jd
@@ -0,0 +1,77 @@
+page.title=Two Dots increased installs by 7 percent using Store Listing Experiments
+page.metaDescription=Two Dots, the sequel to the popular game Dots, is a free-to-play puzzle game launched by Playdots, Inc. Playdots decided to use Store Listing Experiments to see if adding a call to action in the games’ store listing short descriptions had an impact on installs.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/two-dots.png
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/two-dots-icon.png"
+  height="113" />
+</div>
+
+<p>
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.weplaydots.twodotsandroid&hl=en">
+  Two Dots</a>, the sequel to the popular game
+  <a class="external-link"
+  href="https://play.google.com/store/apps/details?id=com.nerdyoctopus.gamedots&hl=en">
+  Dots</a>, is a free-to-play puzzle game launched by Playdots, Inc. in May
+  2014. Since launch it has gained over 30 million downloads, seen over five
+  billion games played, and achieved 15 times the revenue of the original Dots
+  game within a year. Dots decided to use
+  <a class="external-link"
+  href="https://support.google.com/googleplay/android-developer/answer/6227309">
+  Store Listing Experiments</a> to see if adding a call to action in the games'
+  store listing short descriptions had an impact on installs.
+
+</p>
+
+<h3>What they did</h3>
+
+<p>
+  Dots used localized store listing experiments in the Google Play Developer
+  Console to test both games’ short descriptions. They compared the games’
+  current descriptions — the control, with no call to action — against variant
+  descriptions, targeting half of their traffic with the variant descriptions.
+</p>
+
+<h3>Results</h3>
+
+<p>
+  The results showed that the addition of a call to action in the short
+  description had a positive impact on installs.
+</p>
+
+
+  <img
+   src="{@docRoot}images/distribute/stories/two-dots-screenshot.png"
+   srcset=
+  "{@docRoot}images/distribute/stories/two-dots-screenshot.png 1x
+  {@docRoot}images/distribute/stories/two-dots-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Beautifully designed achievements badges encourage unlock
+  </p>
+
+
+<p>
+  In Dots, the conversion rate increased by 2 percent with a simple call to
+  action in the variant text. In Two Dots, where a call to action was combined
+  with messaging that the game is the “best puzzle game on Android”, conversion
+  rates increased by 7 percent compared to the control description.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+  Learn how to run
+  <a clas="external-link"
+  href="https://support.google.com/googleplay/android-developer/answer/6227309">
+  Store Listing Experiments</a> and read our best practices for
+  <a href="https://developer.android.com/distribute/users/experiments.html">
+  running successful experiments</a>.
+</p>
diff --git a/docs/html/distribute/stories/glu-dh.jd b/docs/html/distribute/stories/glu-dh.jd
new file mode 100644
index 0000000..3353f69
--- /dev/null
+++ b/docs/html/distribute/stories/glu-dh.jd
@@ -0,0 +1,75 @@
+page.title=Glu improves player lifetime value with Google Play games services sign-in
+page.metaDescription=With the release of their game Deer Hunter 2014, leading developer and publisher Glu Mobile found that Google Play games services helped improve the user experience leading to increased player happiness.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/glu-dh.jpg
+timestamp=1456787470
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+  <img src="{@docRoot}images/distribute/stories/glu-dh-icon.jpg" height="113"
+      srcset="{@docRoot}images/distribute/stories/glu-dh-icon.jpg 1x,
+      {@docRoot}images/distribute/stories/glu-dh-icon_2x.jpg 2x" />
+</div>
+
+<p>
+  With the release of their game <a href=
+  "https://play.google.com/store/apps/details?id=com.glu.deerhunt2" class=
+  "external-link">Deer Hunter 2014</a>, leading developer and publisher Glu
+  Mobile found that Google Play games services helped improve the user
+  experience leading to increased player happiness. These happy players then
+  tended to play longer and have a higher <em>lifetime value (LTV)</em>.
+</p>
+
+
+<h3>What they did</h3>
+
+<p>
+  Glu implemented Google Play games services sign-in as part of Deer Hunter
+  2014. Users were given the option to auto sign-in and, for those that didn’t
+  take that option, sign-in was displayed prominently on the game’s home
+  screen.
+</p>
+
+<p>
+  For users who were signed in, Glu offered leaderboards and achievements,
+  found through easily recognizable and accessible icons on the game’s home
+  screen. Achievements were customized to fit the flow of the game, with the
+  degree of progress displayed to keep players motivated. Multiple leaderboards
+  were provided to engage players through different goals; with friends-only
+  leaderboards, in addition to the public ones, to keep the experience social.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:380px">
+  <img src="{@docRoot}images/distribute/stories/glu-dh-screenshot.png"
+    width="380"
+    srcset="{@docRoot}images/distribute/stories/glu-dh-screenshot.png 1x,
+   {@docRoot}images/distribute/stories/glu-dh-screenshot_2x.png 2x">
+  <p class="img-caption">
+    Games services features shown with easily recognizable icons after
+    user signs in
+  </p>
+</div>
+
+<p>
+  Overall, Glu found that Google Play games services helped identify
+  high-quality players, improve segmentation and user targeting.
+</p>
+
+<p>
+  The results from Deer Hunter 2014 showed that sessions per user and lifetime
+  value were positively correlated with Google Play games sign-ins: signed-in
+  users reported engagement at 62 percent higher and average LTV 211 percent
+  higher than users who didn’t sign-in.
+</p>
+
+<p>
+  This success also supported the guidelines for Google Play games services
+  integrations: make them highly visible, customized, achievable, and
+  incentivized.
+</p>
diff --git a/docs/html/distribute/stories/index.jd b/docs/html/distribute/stories/index.jd
index ca7647d..8fe1019 100644
--- a/docs/html/distribute/stories/index.jd
+++ b/docs/html/distribute/stories/index.jd
@@ -1,13 +1,39 @@
 page.title=Developer Stories
-section.landing=true
+excludeFromSuggestions=true
 page.metaDescription=Android developers, their apps, and their successes with Android and Google Play.
 
 @jd:body
 
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
+
 <p>Android developers, their apps, and their successes with Android and Google Play.</p>
 
-<div class="resource-widget resource-flow-layout col-13"
-    data-query="type:youtube+tag:developerstory"
-    data-sortOrder="-timestamp"
-    data-cardSizes="18x12"
-    data-maxResults="32"></div>
+<section class="dac-section dac-small" id="latest-apps"><div class="wrap">
+  <h2 class="norule">Latest from apps</h2>
+
+  <div class="resource-widget resource-flow-layout col-16"
+      data-query="type:distribute+tag:developerstory+tag:apps, type:youtube+tag:developerstory+tag:apps"
+      data-sortOrder="-timestamp"
+      data-cardSizes="6x6"
+      data-items-per-page="15"
+      data-initial-results="9"></div>
+</div></section>
+
+<section class="dac-section dac-small" id="latest-games"><div class="wrap">
+  <h2 class="norule">Latest from games</h2>
+
+  <div class="resource-widget resource-flow-layout col-16"
+      data-query="type:distribute+tag:developerstory+tag:games,type:youtube+tag:developerstory+tag:games"
+      data-sortOrder="-timestamp"
+      data-cardSizes="6x6"
+      data-items-per-page="15"
+      data-initial-results="9"></div>
+</div></section>
diff --git a/docs/html/distribute/stories/localization.jd b/docs/html/distribute/stories/localization.jd
deleted file mode 100644
index d6e6ccf..0000000
--- a/docs/html/distribute/stories/localization.jd
+++ /dev/null
@@ -1,330 +0,0 @@
-page.title=Developer Stories: Localization in Google Play
-meta.tags="google play, developer story, localization, global"
-page.tags="stories", "video", "case study"
-page.image=/images/distribute/zombie-ragdoll-n5-land.jpg
-page.metaDescription=Hear from Android developers who have successfully used the Google Play App Translation Service.
-
-@jd:body
-
-<p>
-  As you build your app and distribute it across the world through Google Play,
-  localization becomes an increasingly important tool to reach more users.
-  Localization involves a <a href=
-  "{@docRoot}distribute/googleplay/publish/localizing.html">variety of tasks</a>, but
-  most important is creating quality translations of your app's UI strings and
-  marketing materials.
-</p>
-
-<p>
-  Managing the translation process across multiple languages can be a
-  challenge, especially if you need to locate translators on your own. That’s
-  why Google Play offers the App Translation Service right from the Developer
-  Console. It's a single place where you can go to source professional
-  translators, get cost estimates, and then send your strings and other
-  materials for translation.
-</p>
-
-<p>
-  Here are some stories from developers who have used Google Play's App Translation
-  Service to localize their apps and the results they've seen as they've
-  expand their offerings beyond a single language.
-</p>
-
-<!-- START STORY -->
-
-<div style="margin-bottom:2em;padding-top:10px;" id="zombieragdoll">
-
-<h3 style="line-height:1.25em">Zombie Ragdoll: Improved user engagement<br /> with localized versions</h3>
-
-  <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
-            -moz-border-radius: 5px;
-            border-radius: 5px height:78px;
-            width: 78px;
-            float: left;
-            margin: 12px 20px 9px 20px;" src=
-            "https://lh4.ggpht.com/m-Ew8c8C_nGctbP6PSPGOaVNnGFryReOE2yHXJ9Z6Prk1nsDyx5w5TmWfg-P5N3HypA=w124">
-
-  <div style="list-style: none;height:100%;
-  float: right;
-  border-top: 1px solid #9C0;
-  width: 220px;
-  margin: 4px 20px;padding: .5em;">
-
-    <h5>About the app</h5>
-
-    <ul>
-      <li><a href="https://play.google.com/store/apps/details?id=com.rvappstudios.zombieragdoll">Zombie Ragdoll</a></li>
-      <li>A fun zombie-based physics game</li>
-    </ul>
-
-    <h5>Localization Results</h5>
-
-    <ul>
-      <li>Increased engagement because of appeal of the localized version</li>
-      <li>80% of installs came from users of non-English languages</li>
-      </ul>
-
-    <div style="padding:.5em 0 0 1em;">
-      <a href="https://play.google.com/store/apps/details?id=com.rvappstudios.zombieragdoll">
-        <img alt="Android app on Google Play"
-         src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
-      </a>
-
-    </div>
-  </div>
-
-  <div style="line-height:1.4em;">
-
-<p>
-  The 2013 Google I/O talks about <a href=
-  "https://developers.google.com/events/io/sessions/326345917">Building Android
-  Apps for a Global Audience</a> and <a href=
-  "https://developers.google.com/events/io/sessions/326455375">What’s New for
-  Developers in Google Play</a> inspired developers at RV AppStudios to go global
-  from very beginning for their new game, Zombie Ragdoll. They launched Zombie
-  Ragdoll in August 2013, localized into 20 languages.
-</p>
-
-<p>
-  They quickly saw the impact of their decision to ship simultaneously in
-  multiple languages through increased non-English installs and improved
-  engagement with users worldwide. In addition, they started getting
-  significant usage in countries where their apps had not been as popular
-  before. They are seeing great traction in countries like Vietnam, Russia,
-  Philippines and Thailand.
-</p>
-
-<p>
-  Vivek Dave, founder of RV AppStudios, credits the success of Zombie Ragdoll
-  to localization:
-</p>
-
-<p>
-  "The value of localization is clear, it helps discoverability and helps
-  connect with the users in other countries. So when the localization
-  opportunity arose, we immediately jumped on it. Android is worldwide, and we
-  would be severely limiting ourselves if we focused on English as the only
-  language.
-</p>
-
-<p>
-  "The App Translation Service offered in the Google Play Developer Console is
-  extremely easy to use and the pricing is very attractive. Developers with
-  limited localization experience can easily create, upload, and translate
-  their app."
-</p>
-
-
-<p>
-  RV AppStudios not only localizes the text within the game, but also localizes
-  the game assets to a specific country/culture. Dave says, “Users want a
-  personalized experience, and by offering a localized game with translation of
-  text and graphic assets, we believe users will connect at a much deeper level
-  with the game.”
-</p>
-
-
-  <div style="margin-top:8px;float:left;margin-right:24px;">
-    <img src="{@docRoot}images/distribute/zombie-ragdoll-n5-land.jpg" style="width:470px;">
-  </div>
-
-
-    <div style="margin-top:128px;">
-      <p class="img-caption"><strong>Hindi version of Zombie Ragdoll</strong>:
-      Localized screenshots and videos in the app's Google Play listing go a
-      long way toward increasing the number of installs.</p>
-    </div>
-
-  </div>
-
-</div> <!-- END STORY -->
-
-<!-- START STORY -->
-
-<div style="margin-bottom:2em;padding-top:18px;clear:both;" id="sayhichat">
-
-<h3>SayHi Chat: Install growth and user engagement<br />
-  from professional translations</h3>
-
-  <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
-            -moz-border-radius: 5px;
-            border-radius: 5px height:78px;
-            width: 78px;
-            float: left;
-            margin: 12px 20px 9px 20px;" src=
-            "https://lh5.ggpht.com/qiL6CF1Hktz618T3mbGrxvm_OoeheQ78FgG7zr90C2MCRiz4IDQsbKuHT4xQGiWEU8o=w124">
-
-  <div style="list-style: none;height:100%;
-  float: right;
-  border-top: 1px solid #9C0;
-  width: 220px;
-  margin: 4px 20px;padding: .5em;">
-
-    <h5>About the app</h5>
-
-    <ul>
-      <li><a href="https://play.google.com/store/apps/details?id=com.unearby.sayhi">SayHi Chat,
-      Love, Meet, Dating</a></li>
-      <li>A social app to help you find people nearby</li>
-    </ul>
-
-    <h5>Localization Results</h5>
-
-    <ul>
-      <li>120% growth in language installs for new languages added</li>
-      <li>~20% increase in revenue and ~50% increase in User Reviews in the new
-        languages</li>
-      </ul>
-
-    <div style="padding:.5em 0 0 1em;">
-      <a href="https://play.google.com/store/apps/details?id=com.unearby.sayhi">
-        <img alt="Android app on Google Play"
-         src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
-      </a>
-
-    </div>
-  </div>
-
-  <div style="line-height:1.4em;">
-
-<p>
-  The SayHi Chat app started out only in Japanese, Chinese and English. It soon
-  became one of the most popular apps in Japan, Hong Kong, and Taiwan. The
-  SayHi team realized it was time to launch in more languages, as the language
-  barrier was restricting how fast SayHi could grow globally. </p>
-
-  <p>Yan Shi, senior
-  developer at SayHi, says: "We checked Google Analytics for our DAU and user
-  growth numbers in each country, we also looked at total Android and iOS users
-  in those markets before finalizing our next set of languages.
-</p>
-
-  <div style="margin-top:8px;float:left;width:270px;">
-    <img src="{@docRoot}images/distribute/hichat-n5-port.jpg" style="width:240px;margin-right:48px;">
-  </div>
-
-<p>
-  SayHi used the App Translation Service to launch in 13 additional languages
-  in August 2013 and immediately saw 120% increase in install rates. In
-  addition, they are seeing their app ranked in Top 10 apps in countries like
-  Poland and Italy.
-</p>
-
-<p>Notably, they saw steady growth in Spain after replacing their previous
-  non-professional Spanish translation with a professional one produced through
-  the App Translation Service.</p>
-
-<p>
-  Yan Shi adds, “The App Translation Service is really easy to use and
-  the completion time for translation requests is very good.”
-</p>
-
-    <div style="width:600px;margin-top:98px;padding:0;">
-      <p class="img-caption"><strong>Arabic version of SayHi Chat</strong>:
-        User engagement increased significantly with
-        the localized version.</p>
-    </div>
-
-  </div>
-</div> <!-- END STORY -->
-
-
-<div style="margin-bottom:2em;clear:both;padding-top:18px;" id="g4a"><!-- START STORY -->
-
-<h3 style="line-spacing:1.25em;">G4A Indian Rummy: Benefitting from ease-of-use and<br /> fast turnaround time</h3>
-
-  <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
-            -moz-border-radius: 5px;
-            border-radius: 5px height:78px;
-            width: 78px;
-            float: left;
-            margin: 12px 20px 9px 20px;" src=
-            "https://lh4.ggpht.com/IxSyQgO0LWzPRoLfCrER06-0kr6aMAa2azF7eNYB30EBZAGOLYJUZulknPockbTlDYU=w124">
-
-  <div style="list-style: none;height:100%;
-  float: right;
-  border-top: 1px solid #9C0;
-  width: 220px;
-  margin: 4px 20px;padding: .5em;">
-
-    <h5>About the app</h5>
-
-    <ul>
-      <li><a href="https://play.google.com/store/apps/details?id=org.games4all.android.games.indianrummy.prod">G4A Indian Rummy</a></li>
-      <li>A card game in which the players try to form sets and sequences of cards</li>
-    </ul>
-
-    <h5>Localization Results</h5>
-
-    <ul>
-      <li>Double the number of users in French and German languages</li>
-      <li>300% increase in user engagement with localized version</li>
-      </ul>
-
-    <div style="padding:.5em 0 0 1em;">
-      <a href="https://play.google.com/store/apps/details?id=com.rvappstudios.zombieragdoll">
-        <img alt="Android app on Google Play"
-         src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
-      </a>
-    </div>
-  </div>
-
-  <div style="line-height:1.4em;">
-
-<p>
-  Games4All (G4A) is the developer of Indian Rummy and a variety of games that
-  they distribute broadly to users around the world. After noticing that
-  certain apps had become especially popular in specific countries, they
-  decided to localize those apps. Initially they used a local agency to do
-  the translation and got great results &mdash; the number of users in
-  that language increased tremendously when they released the localized
-  version.
-</p>
-
-<p>
-  Building on that success, G4A expanded their localization goals but
-  found that translation quality varied across their vendors and costs limited the
-  language/game combinations they could try. That's when G4A decided to try the
-  App Translation Service.
-</p>
-
-<p>
-  Founder Pieter Olivier says, "When we heard that the App Translation
-  Service was available in the Developer Console, we jumped at the opportunity.
-  We've now been using the App Translation Service for several months and found
-  that the cost per translation is much lower than with local companies and the
-  process is much easier."
-</p>
-
-<p>So far, G4A has translated the game Indian Rummy into five languages through
-   the App Translation Service.</p>
-
-<p>
-  Olivier continues, "The first thing we did was convert all of our texts into
-  the strings.xml format. After that using the service was extremely easy and
-  straightforward. In contrast, our previous experiences with translation
-  agencies were much more difficult: files often required extensive conversion
-  operations to make them usable, and turnaround times varied wildly.
-</p>
-
-<p>
-  "With the App Translation Service, the turnaround time is usually measured in
-  days instead of weeks that we were used to with traditional translation
-  agencies."
-</p>
-
-  <div style="margin-top:14px;float:left;margin-right:24px;">
-    <img src="{@docRoot}images/distribute/indian-rummy-n4-land.jpg" style="width:470px;">
-  </div>
-
-    <div style="margin-top:158px;">
-      <p class="img-caption"><strong>Dutch
-      version of Indian Rummy</strong>: Making slight changes to games rules based on
-      local nuances was key to success of the game.</p>
-    </div>
-
-  </div>
-
-
-
-</div> <!-- END STORY -->
\ No newline at end of file
diff --git a/docs/html/distribute/stories/stories_toc.cs b/docs/html/distribute/stories/stories_toc.cs
index 54b7639..cd86af8 100644
--- a/docs/html/distribute/stories/stories_toc.cs
+++ b/docs/html/distribute/stories/stories_toc.cs
@@ -1,30 +1,27 @@
 <ul id="nav">
   <li class="nav-section">
-    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/index.html">
-            <span class="en">Videos</span></a>
+    <div class="nav-section-header empty" style="font-weight:normal">
+    <a href="<?cs var:toroot?>distribute/stories/index.html">
+      <span class="en">Latest</span></a>
     </div>
   </li>
   <li class="nav-section">
-    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/localization.html">
-            <span class="en">Going Global</span></a>
+    <div class="nav-section-header empty" style="font-weight:normal">
+    <a href="<?cs var:toroot?>distribute/stories/apps.html">
+      <span class="en">Apps</span>
+    </a>
     </div>
   </li>
   <li class="nav-section">
-    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/games.html">
-            <span class="en">Games</span>
-          </a>
-    </div>
-  </li>
-  <li class="nav-section">
-    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/tablets.html">
-          <span class="en">Tablets</span>
-        </a>
+    <div class="nav-section-header empty" style="font-weight:normal">
+    <a href="<?cs var:toroot?>distribute/stories/games.html">
+      <span class="en">Games</span>
+    </a>
     </div>
   </li>
 
 </ul>
 
-
 <script type="text/javascript">
 <!--
     buildToggleLists();
diff --git a/docs/html/distribute/stories/tablets.jd b/docs/html/distribute/stories/tablets.jd
deleted file mode 100644
index 771fa52..0000000
--- a/docs/html/distribute/stories/tablets.jd
+++ /dev/null
@@ -1,368 +0,0 @@
-page.title=Developer Stories: The Opportunity of Android Tablets
-meta.tags="google play, developer story, journal, tablets, pure"
-pdage.metaDescription=Developers are investing in a full tablet experience for their apps and seeing those investments pay off big.
-page.image=/images/distribute/rememberthemilk.png
-
-@jd:body
-
-
-<p>"More" and more, developers are investing in a full tablet experience
-for their apps and are seeing those investments pay off big. The increased
-screen area on tablets opens up a world of possibilities, allowing for more
-engagement with the user &mdash; which can mean an increase in usage as well as
-more monetization opportunities. And with the growing wave of Android tablets that
-continue to hit the market, it’s an important piece of any developer’s mobile
-offering. </p>
-
-<p>Here are some stories from developers who are seeing real results as they
-expand their offering to include Android tablets.</p>
-
-
-<div style="margin-bottom:2em;" id="rememberthemilk"><!-- START STORY -->
-
-<h3>Remember The Milk: Lifting installs with tablet design</h3>
-
-  <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
-            -moz-border-radius: 5px;
-            border-radius: 5px height:78px;
-            width: 78px;
-            float: left;
-            margin: 12px 20px 9px 20px;" src=
-            "http://lh3.ggpht.com/xmnal18taauP2mjQFEhr1PhcItQ_W32IRuaD86IoL2U_4E-mfeKiliKtkISgOuA6Ln9n=w124">
-          
-  <div style="list-style: none;height:100%;
-  float: right;
-  border-top: 1px solid #9C0;
-  width: 220px;
-  margin: 4px 20px;padding: .5em;">
-  
-
-    <h5>About the app</h5> 
-    
-    
-    <ul>
-      <li><a href="http://play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">Remember The Milk</a></li>
-      <li>A feature-packed to-do list app; never forget the milk (or anything else) again</li>
-    </ul>
-
-    <h5>Tablet Results</h5> 
-
-    <ul>
-      <li>83% jump in tablet installs following update </li>
-      <li>Nexus 7 is most popular Android device for app </li>
-      <li>Single APK for phones and tablets</li>
-      </ul>
-    
-    <div style="padding:.5em 0 0 1em;">
-      <a href="http://play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">
-        <img alt="Android app on Google Play"
-         src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
-      </a>
-      
-    </div>
-  </div>
-
-  <div style="line-height:1.4em;">
-    <p style="margin-top:0;margin-bottom:12px;">When the Android tablet guidelines
-      came out in 2012, the team at Remember The Milk had already been thinking about
-      a redesign for their <a href="http://play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">feature-packed
-      to-do list app</a>. Omar Kilani, Co-founder of Remember The Milk, explains how
-      <a href="http://blog.rememberthemilk.com/2013/04/the-all-new-remember-the-milk-for-android-and-tablets-too/">updating</a>
-      their app to meet the tablet guidelines lead to an 83% jump in tablet installs: </p>
-
-    <p>“We took this as an opportunity to think about how we were going to approach
-      Android tablets differently from a user experience perspective. The guidelines
-      were a helpful resource, and with the extra screen real estate tablets afford,
-      users have the opportunity to see all of their data in context and drill down
-      on more items. All of this is accomplished using a single APK on Play, even though
-      the phone and tablet versions each capture completely different use cases for us.”</p>
-
-    <p>“In the month after updating, we saw our tablet installs on Google Play jump 83%,
-      and the Nexus 7 is now the most popular Android device amongst our users. For us,
-      designing for tablets was an investment that has really paid off.”</p>
-
-    <p>The team also came out with a number of other goodies &mdash; including a new set of
-      widgets and richer notifications, and more ways to provide an immersive experience
-      for their users.</p>
-  </div>
-
-  <div style="clear:both;margin-top:30px;width:auto;">
-  
-    <img src="{@docRoot}images/distribute/rememberthemilk.png">
-
-    <div style="width:600px;margin-top:0px;padding:0 90px;">
-      <p class="image-caption"><span style="font-weight:500;">Tablet redesign led to lift
-      in installs</span>: Following the redesign of the Android app, in part to meet the tablet
-      design criteria, Remember The Milk saw an 83% increase in tablet installs.</p>
-    </div>
-
-  </div>
-
-</div> <!-- END STORY -->
-
-
-<div style="margin-bottom:2em;" id="mint"><!-- START STORY -->
-
-<h3>Mint: More screen real estate = more engagement</h3>
-
-  <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
-            -moz-border-radius: 5px;
-            border-radius: 5px height:78px;
-            width: 78px;
-            float: left;
-            margin: 12px 20px 9px 20px;" src=
-            "https://lh5.ggpht.com/0xAIZJ1uE05b4RHNHgBBTIH6nRdPTY660T104xY7O2GbHXwab6YVmpU5yYg8yacfBg=w124">
-          
-  <div style="list-style: none;height:100%;
-  float: right;
-  border-top: 1px solid #9C0;
-  width: 220px;
-  margin: 4px 20px;padding: .5em;">
-  
-
-    <h5>About the app</h5> 
-    
-    
-    <ul>
- <li><a href="http://play.google.com/store/apps/details?id=com.mint">Mint.com Personal Finance</a> by Intuit Inc.</li>
-      <li>Financial management app targeting 7- to 10-inch tablets and phones</li>
-    </ul>
-
-    <h5>Tablet Results</h5> 
-
-    <ul>
-      <li>Able to offer richer UI features</li>
-      <li>Much higher user engagement</li>
-      <li>Longer sessions &mdash; more Android tablet users have sessions longer than 5 minutes</li>
-      </ul>
-    
-    <div style="padding:.5em 0 0 1em;">
-<a href="http://play.google.com/store/apps/details?id=com.mint">
-  <img alt="Android app on Google Play"
-       src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
-</a>
-      
-    </div>
-  </div>
-
-  <div style="line-height:1.4em;">
-    <p style="margin-top:0;margin-bottom:12px;">When Intuit was thinking about
-expanding their Mint mobile offering to include a version optimized for Android
-tablets, they knew that taking the layout that worked for phones and simply
-showing an enlarged version wouldn’t take full advantage of the opportunities
-that tablets afford.</p>
-    
-    <p>“We knew we had a lot more real estate, and we wanted to provide a more
-immersive experience for our users” said Ken Sun, Intuit Group Product Manager
-at Mint.</p>
-
-<p>Intuit’s Mint app, which has a 4-star rating on Google Play, brings a number
-of features to Android tablets that aren’t available for phones, including a
-more visual presentation of personal financial data.</p>
-
-<p>“Whereas our app for phones is used throughout the day for quick sessions,
-we’ve seen a larger percentage of our tablet usage happen in the evening, for
-much longer sessions,” said Sun. “People are doing a lot more than just checking
-their spending. They’re looking at historical trends, re-categorizing
-transactions, analyzing the data and setting financial goals for the future
-&mdash; digging much deeper and being more thoughtful. One example is how much
-users are interacting with their own budgets in the tablet app.  Customer budget
-operations (view, edit, drill-down, etc.) are 7x higher on Android tablets than
-they are on phones.”</p>
-
-<p>Fifty percent more Android tablet users have Mint sessions of 5 minutes or
-longer than they do on phones.  “We’ve found that phone usage is indicative of a
-customer’s regular financial check-in, while tablet usage points towards more
-analysis and interaction with that customer’s personal financial data.  This is
-the sort of immersive engagement experience we were looking for; the tablet and
-phone apps serve as great complements to each other."</p>
-  </div>
-
-  <div style="clear:both;margin-top:40px;width:auto;">
-  
-    <img src="{@docRoot}images/distribute/mint.png">
-
-    <div style="width:600px;margin-top:0px;padding:0 90px;">
-      <p class="image-caption"><span style="font-weight:500;">Making the most of tablet screens</span>: Mint used the extra screen area on tablets to offer quick access to additional tools and information.</p>
-    </div>
-
-  </div>
-
-</div> <!-- END STORY -->
-
-
-<div style="margin:3em auto"><!-- START STORY -->
-
-
-<h3>TinyCo: Monetization opportunities abound on tablets</h3>
-
-  <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
-            -moz-border-radius: 5px;
-            border-radius: 5px height:78px;
-            width: 78px;
-            float: left;
-            margin: 12px 20px 30px 20px;" src=
-            "https://lh6.ggpht.com/QTy7lOGRTS58NW4XEeym2sxpWKDmRNod_n3kBrHlqTRIyzIv2gkw8DfwiR4GIAdxiHw=w124">
-
-          
-  <div style="list-style: none;height:100%;
-  float: right;
-  border-top: 1px solid #9C0;
-  width: 220px;
-  margin: 4px 20px;padding: .5em;">
-
-    <h5>About the app</h5> 
-
-    <ul>
-                <li><a href="http://play.google.com/store/apps/details?id=com.tinyco.village">Tiny Village</a> by TinyCo</li>
-            <li>Game targeting 7- to 10-inch tablets and phones</li>
-    </ul>
-
-    <h5>Tablet Results</h5> 
-
-    <ul>
-      <li>35% higher average revenue per paying user (ARPPU)</li>
-      <li>Consistent increase in user retention</li>
-      <li>3x increase in downloads to Android tablets in the last 6 months</li>
-    </ul>
-    
-    <div style="padding:.5em 0 0 1em;">
-<a href="http://play.google.com/store/apps/details?id=com.tinyco.village">
-  <img alt="Android app on Google Play"
-       src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
-</a>
-      
-    </div>
-  </div>
-
-  <div style="line-height:1.4em;">
-    <p style="margin-top:0;margin-bottom:12px;">
-    
-<p>Over a year ago, app developer TinyCo, makers of a suite of games such as
-Tiny Monsters, decided to prioritize launching across multiple platforms
-effectively. They chose Android as one of their primary launch platforms because
-of its large installed base and global reach. They also knew that the growing
-base of Android tablet users represented a huge opportunity.</p>
-    
-    <p>Tiny Village was their first title to take advantage of the strategy, and
-it proved to be a winning one &mdash; especially in terms of Android
-tablets.</p>
-    
-    <p> “With continued optimization of the gameplay experience and a genuine
-commitment to our Android offering through our Griffin engine, all of our
-metrics started to rise,” said Rajeev Nagpal, Head of Product at TinyCo. In
-fact, they’ve seen Android tablet downloads more than triple in the last six
-months.</p>
-
-    <p>One of the first things they noticed about usage of Tiny Village on
-tablets was an increase in average revenue per paying user (ARPPU)&mdash;about 35%
-higher than on smaller-screen devices such as phones. Additionally, average
-revenue per user ARPU is now about 35% higher as well. “The game is just much
-more immersive on tablet.”</p>
-
-    <p>In addition to an increase in monetization metrics, they’ve also seen a
-consistent increase in retention over other platforms. “These are really
-important metrics for games &mdash; if you can get users to both stay around
-longer and spend more while they’re there, you have a recipe for success.”</p>
-  </div>
-
-  <div style="clear:both;margin-top:40px;width:auto;">
-  
-    <img src="{@docRoot}images/distribute/tinyvillage.png">
-
-    <div style="width:600px;margin-top:0px;padding:0 90px;">
-      <p class="image-caption"><span style="font-weight:500;">More monetization
-on tablets</span>: On Android tablets TinyCo has seen higher ARPPU and user
-retention than on phones.</p>
-    </div>
-
-  </div>
-
-</div> <!-- END STORY -->
-
-
-<div style="margin-bottom:2em;"><!-- START STORY -->
-
-<h3>Instapaper: Riding the growing wave of Android tablets</h3>
-
-
-  <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
-            -moz-border-radius: 5px;
-            border-radius: 5px height:78px;
-            width: 78px;
-            float: left;
-            margin: 12px 20px 9px 20px;" src=
-            "https://lh3.ggpht.com/30KKcrIFO8V_wRfhnHaI9l0CLH_orIVFE7Xywtr9TBxAf0hi2BaZkKyBOs63Yfavpg=w124">
-
-          
-  <div style="list-style: none;height:100%;
-  float: right;
-  border-top: 1px solid #9C0;
-  width: 220px;
-  margin: 4px 20px;padding: .5em;">
-  
-  
-  
-
-    <h5>About the app</h5> 
-    <ul>
-                <li><a href="http://play.google.com/store/apps/details?id=com.instapaper.android">Instapaper</a> by Mobelux</li>
-      <li>Content-browsing utility that targets 7- to 10-inch tablets and phones</li>
-    </ul>
-
-    <h5>Tablet Results</h5> 
-
-    <ul>
-      <li>Tablets are now 50% of the app's installed base.</li>
-    </ul>
-    
-    <div style="padding:.5em 0 0 1em;">
-<a href="http://play.google.com/store/apps/details?id=com.instapaper.android">
-  <img alt="Android app on Google Play"
-       src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
-</a>
-      
-    </div>
-  </div>
-
-  <div style="line-height:1.4em;">
-    <p style="margin-top:0;margin-bottom:12px;">Instapaper for Android is an app
-for saving web content to read later. Developer Mobelux decided that creating a
-great UI for Android tablet users would be an essential part of their initial launch
-plan.</p>
-    
-    <p>The app launched at the beginning of the summer of 2012, just in time to
-take advantage of a new tide of Android tablets, including the <span
-style="white-space:nowrap;">Nexus 7</span> tablet. The app has since seen huge
-popularity among tablet users, in particular, on Nexus 7. On the day that
-pre-orders of Nexus 7 began arriving, Mobelux saw a 600% jump in downloads of
-its app on Google Play.</p>
-
-    <p>“We saw a promising new set of Android tablets about to hit the market
-and wanted to position ourselves to be ready for them” said Jeff Rock of
-Mobelux. “It was a market that others were hesitant to explore, but the decision
-to prioritize tablets has paid off very well for us.”</p>
-
-    <p>Since that initial 600% jump in downloads, Instapaper for Android has
-continued to see a successful run on Android tablets. In fact, Android tablets
-now represent about 50% of their installed base. “With more and more Android
-tablets coming online, we’re excited to see how our investment in Android
-tablets continues to pay off.”</p>
-  </div>
-
-  <div style="clear:both;margin-top:40px;width:auto;">
-  
-    <img src="{@docRoot}images/distribute/instapaper.png">
-
-    <div style="width:600px;margin-top:0px;padding:0 90px;">
-      <p class="image-caption"><span style="font-weight:500;">Popular with
-tablet users</span>: A great tablet UI and browsing convenience make Instapaper
-popular with Android tablet users.</p>
-    </div>
-
-  </div>
-
-</div> <!-- END STORY -->
-
-
-
diff --git a/docs/html/distribute/tools/_book.yaml b/docs/html/distribute/tools/_book.yaml
new file mode 100644
index 0000000..57e03ba
--- /dev/null
+++ b/docs/html/distribute/tools/_book.yaml
@@ -0,0 +1,31 @@
+toc:
+- title: Launch Checklist
+  path: /distribute/tools/launch-checklist.html
+  custom_link_attributes:
+  - zh-cn-lang="发布检查清单"
+
+- title: Localization Checklist
+  path: /distribute/tools/localization-checklist.html
+  custom_link_attributes:
+  - zh-cn-lang="本地化检查清单"
+
+- title: Device Art Generator
+  path: /distribute/tools/promote/device-art.html
+
+- title: Google Play Badges
+  path: /distribute/tools/promote/badges.html
+  custom_link_attributes:
+  - zh-cn-lang="Google Play 徽章生成器"
+
+- title: Linking to Your Products
+  path: /distribute/tools/promote/linking.html
+  custom_link_attributes:
+  - zh-cn-lang="链接到您的商品"
+
+- title: Brand Guidelines
+  path: /distribute/tools/promote/brand.html
+  custom_link_attributes:
+  - zh-cn-lang="品牌指南"
+
+- title: Alternative Distribution
+  path: /distribute/tools/open-distribution.html
diff --git a/docs/html/distribute/tools/launch-checklist.jd b/docs/html/distribute/tools/launch-checklist.jd
index 962e3ff..a68f98b 100644
--- a/docs/html/distribute/tools/launch-checklist.jd
+++ b/docs/html/distribute/tools/launch-checklist.jd
@@ -290,7 +290,7 @@
 <p>
   The overall size of your app can affect its design and how you publish it on
   Google Play. Currently, the maximum size for an APK published on Google Play
-  is <strong>50 MB</strong>. If your app exceeds that size, or if you want to
+  is <strong>100 MB</strong>. If your app exceeds that size, or if you want to
   offer a secondary download, you can use <a href=
   "{@docRoot}google/play/expansion-files.html">APK Expansion Files</a>, which
   Google Play will host for free on its server infrastructure and automatically
@@ -300,7 +300,7 @@
 <ul>
   <li>
     <p>
-      The maximum size for an APK published on Google Play is 50 MB.
+      The maximum size for an APK published on Google Play is 100 MB.
     </p>
   </li>
 
diff --git a/docs/html/distribute/tools/localization-checklist.jd b/docs/html/distribute/tools/localization-checklist.jd
index e640243..1497c36 100644
--- a/docs/html/distribute/tools/localization-checklist.jd
+++ b/docs/html/distribute/tools/localization-checklist.jd
@@ -549,12 +549,6 @@
   <img src="{@docRoot}images/gp-localization-trans-0.png" class="border-img">
 </div>
 
-<h3 class="rel-resources clearfloat">Related resources</h3>
-
-<div class="resource-widget resource-flow-layout col-13" data-query=
-"collection:distribute/toolsreference/localizationchecklist/translatestrings"
-data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
-</div>
 
 <div class="headerLine">
   <h2 id="test">
diff --git a/docs/html/distribute/tools/promote/badges.jd b/docs/html/distribute/tools/promote/badges.jd
deleted file mode 100644
index eb09333..0000000
--- a/docs/html/distribute/tools/promote/badges.jd
+++ /dev/null
@@ -1,362 +0,0 @@
-page.title=Google Play Badge Generator
-page.image=/images/gp-badges-set.png
-page.metaDescription=Build badges for your app in just a few clicks, or download hi-res badge assets localized for a variety of languages.
-meta.tags="disttools, promoting, deviceart, marketing, googleplay"
-page.tags="badge, google play"
-
-@jd:body
-
-<p itemprop="description">Google Play badges enable you to promote your apps with
-official branding in your online ads, promotional materials, or anywhere you want
-a link to your apps</p>
-
-<p>In the form below,
-input your app's package name or publisher name, choose the badge style,
-click <em>Build my badge</em>, then paste the HTML into your web content.</p>
-
-<p>If you're creating a promotional web page for your app, you should also use the
-<a href="{@docRoot}distribute/tools/promote/device-art.html">Device Art Generator</a>, which quickly
-wraps your screenshots in real device artwork.</p>
-
-<p>For guidelines when using the Google Play badge and other brand assets,
-see the <a href="{@docRoot}distribute/tools/promote/brand.html#brand-google_play">Brand
-Guidelines</a>.</p>
-
-<style type="text/css">
-
-form.button-form {
-  margin-top:2em;
-}
-
-/* the label and input elements are blocks that float left in order to
-   keep the left edgets of the input aligned, and IE 6/7 do not fully support "inline-block" */
-label.block {
-  display: block;
-  float: left;
-  width: 100px;
-  padding-right: 10px;
-}
-
-input.text {
-  display: block;
-  float: left;
-  width: 250px;
-}
-
-div.button-row {
-  white-space:nowrap;
-  min-height:80px;
-}
-
-div.button-row input {
-  vertical-align:middle;
-  margin:0 5px 0 0;
-}
-
-#jd-content div.button-row img {
-  margin: 0;
-  vertical-align:middle;
-}
-
-</style>
-
-<script type="text/javascript">
-
-// locales for which we have the 'app' badge
-var APP_LANGS = ['it','pt-br','pt-pt','nl','ko','ja','fr','es','es-419','en','de'];
-
-// variables for creating 'try it out' demo button
-var imagePath = "https://developer.android.com/images/brand/"
-var linkStart = "<a href=\"https://play.google.com/store/";
-var imageStart = "\">\n"
-        + "  <img alt=\"";
-  // leaves opening for the alt text value
-var imageSrc = "\"\n       src=\"" + imagePath;
-  // leaves opening for the image file name
-var imageEnd = ".png\" />\n</a>";
-
-// variables for creating code snippet
-var linkStartCode = "&lt;a href=\"https://play.google.com/store/";
-var imageStartCode = "\"&gt;\n"
-        + "  &lt;img alt=\"";
-  // leaves opening for the alt text value
-var imageSrcCode = "\"\n       src=\"" + imagePath;
-  // leaves opening for the image file name
-var imageEndCode = ".png\" />\n&lt;/a>";
-
-/** Generate the HTML snippet and demo based on form values */
-function buildButton(form) {
-  var lang = $('#locale option:selected').val();
-  var selectedValue = lang + $('form input[type=radio]:checked').val();
-  var altText = selectedValue.indexOf("generic") != -1 ? "Get it on Google Play" : "Android app on Google Play";
-
-  if (form["package"].value != "com.example.android") {
-    $("#preview").show();
-    var packageName = escapeHTML(form["package"].value);
-    $("#snippet").show().html(linkStartCode + "apps/details?id=" + packageName
-            + imageStartCode + altText + imageSrcCode
-            + selectedValue + imageEndCode);
-    $("#button-preview").html(linkStart + "apps/details?id=" + packageName
-            + imageStart + altText + imageSrc
-            + selectedValue + imageEnd);
-
-    // Send the event to Analytics
-    ga('send', 'event', 'Distribute', 'Create Google Play Badge', 'Package ' + selectedValue);
-  } else if (form["publisher"].value != "Example, Inc.") {
-    $("#preview").show();
-    var publisherName = escapeHTML(form["publisher"].value);
-    $("#snippet").show().html(linkStartCode + "search?q=pub:" + publisherName
-            + imageStartCode + altText + imageSrcCode
-            + selectedValue + imageEndCode);
-    $("#button-preview").html(linkStart + "search?q=pub:" + publisherName
-            + imageStart + altText + imageSrc
-            + selectedValue + imageEnd);
-
-    // Send the event to Analytics
-    ga('send', 'event', 'Distribute', 'Create Google Play Badge', 'Publisher ' + selectedValue);
-  } else {
-    alert("Please enter your package name or publisher name");
-  }
-  return false;
-}
-
-/** Listen for Enter key */
-function onTextEntered(event, form, me) {
-  // 13 = enter
-  if (event.keyCode == 13) {
-    buildButton(form);
-  }
-}
-
-/** When input is focused, remove example text and disable other input */
-function onInputFocus(object, example) {
-  if (object.value == example) {
-    $(object).val('').css({'color' : '#000'});
-  }
-  $('input[type="text"]:not(input[name='+object.name+'])',
-          object.parentNode).attr('disabled','true');
-  $('#'+object.name+'-clear').show();
-}
-
-/** When input is blured, restore example text if appropriate and enable other input */
-function onInputBlur(object, example) {
-  if (object.value.length < 1) {
-    $(object).attr('value',example).css({'color':'#ccc'});
-    $('input[type="text"]', object.parentNode).removeAttr('disabled');
-    $('#'+object.name+'-clear').hide();
-  }
-}
-
-/** Clear the form to start over */
-function clearLabel(id, example) {
-  $("#preview").hide();
-  $('#'+id+'').html('').attr('value',example).css({'color':'#ccc'});
-  $('input[type="text"]', $('#'+id+'').parent()).removeAttr('disabled');
-  $('#'+id+'-clear').hide();
-  return false;
-}
-
-/** Switch the badge urls for selected language */
-function changeBadgeLang() {
-  var lang = $('#locale option:selected').val();
-
-  // check if we have the 'app' badge for this lang and show notice if not
-  $("div.button-row.error").remove();  // remove any existing instance of error message
-  if ($.inArray(lang,APP_LANGS) == -1) {
-    $("div.button-row.app").hide();
-    $("div.button-row.app").after('<div class="button-row error"><p class="note" style="margin:1em 0 -1em">'
-        + 'Sorry, we currently don\'t have the '
-        + '<em>Android app on Google Play</em> badge translated for '
-        + $("select#locale option[value="+lang+"]").attr("title")
-        + '.<br>Please check back later or instead use the <em>Get it on Google Play</em> badge below.'
-        + '</p></div>');
-  } else {
-    $("div.button-row.app").show(); // show the 'app' badge row
-  }
-
-  $('.button-row img').each(function() {
-    var id = $(this).parent().attr('for');
-    var imgName = lang + $('input#'+id).attr('value') + '.png';
-    var lastSlash = $(this).attr('src').lastIndexOf('/');
-    var imgPath = $(this).attr('src').substring(0, lastSlash+1);
-    $(this).attr('src', imgPath + imgName);
-  });
-}
-
-/** When the doc is ready, find the inputs and color the input grey if the value is the example
-    text. This is necessary to handle back-navigation, which can auto-fill the form with previous
-    values (and text should not be grey) */
-$(document).ready(function() {
-  $(".button-form input.text").each(function(index) {
-    if ($(this).val() == $(this).attr("default")) {
-      $(this).css("color","#ccc");
-    } else {
-      /* This is necessary to handle back-navigation to the page after form was filled */
-      $('input[type="text"]:not(input[name='+this.name+'])',
-              this.parentNode).attr('disabled','true');
-      $('#'+this.name+'-clear').show();
-    }
-  });
-});
-
-</script>
-
-<form class="button-form">
-  <label class="block" for="locale">Language:</label>
-  <select id="locale" style="display:block;float:left;margin:0"
-          onchange="changeBadgeLang()">
-    <option title="Afrikaans"
-            value="af">Afrikaans</option>
-    <option title="Arabic"
-            value="ar">العربية</option>
-    <option title="Belarusian"
-            value="be">Беларуская</option>
-    <option title="Bulgarian"
-            value="bg">Български</option>
-    <option title="Catalan"
-            value="ca">Català</option>
-    <option title="Chinese (China)"
-            value="zh-cn">中文 (中国)</option>
-    <option title="Chinese (Hong Kong)"
-            value="zh-hk">中文（香港）</option>
-    <option title="Chinese (Taiwan)"
-            value="zh-tw">中文 (台灣)</option>
-    <option title="Croatian"
-            value="hr">Hrvatski</option>
-    <option title="Czech"
-            value="cs">Česky</option>
-    <option title="Danish"
-            value="da">Dansk</option>
-    <option title="Dutch"
-            value="nl">Nederlands</option>
-    <option title="Estonian"
-            value="et">Eesti</option>
-    <option title="Farsi - Persian"
-            value="fa">فارسی</option>
-    <option title="Filipino"
-            value="fil">Tagalog</option>
-    <option title="Finnish"
-            value="fi">Suomi</option>
-    <option title="French"
-            value="fr">Français</option>
-    <option title="German"
-            value="de">Deutsch</option>
-    <option title="Greek"
-            value="el">Ελληνικά</option>
-    <option title="English"
-            value="en" selected="true">English</option>
-<!--
-    <option title="Hebrew"
-            value="iw-he">עברית</option>
--->
-    <option title="Hungarian"
-            value="hu">Magyar</option>
-    <option title="Indonesian"
-            value="id-in">Bahasa Indonesia</option>
-    <option title="Italian"
-            value="it">Italiano</option>
-    <option title="Japanese"
-            value="ja">日本語</option>
-    <option title="Korean"
-            value="ko">한국어</option>
-    <option title="Latvian"
-            value="lv">Latviešu</option>
-    <option title="Lithuanian"
-            value="lt">Lietuviškai</option>
-    <option title="Malay"
-            value="ms">Bahasa Melayu</option>
-    <option title="Norwegian"
-            value="no">Norsk (bokmål)‎</option>
-    <option title="Polish"
-            value="pl">Polski</option>
-    <option title="Portuguese (Brazil)"
-            value="pt-br">Português (Brasil)</option>
-    <option title="Portuguese (Portugal)"
-            value="pt-pt">Português (Portugal)</option>
-    <option title="Romanian"
-            value="ro">Română</option>
-    <option title="Russian"
-            value="ru">Русский</option>
-    <option title="Serbian"
-            value="sr">Српски / srpski</option>
-    <option title="Slovak"
-            value="sk">Slovenčina</option>
-    <option title="Slovenian"
-            value="sl">Slovenščina</option>
-    <option title="Spanish (Spain)"
-            value="es">Español (España)</option>
-    <option title="Spanish (Latin America)"
-            value="es-419">Español (Latinoamérica)</option>
-    <option title="Swedish"
-            value="sv">Svenska</option>
-    <option title="Swahili"
-            value="sw">Kiswahili</option>
-    <option title="Thai"
-            value="th">ไทย</option>
-    <option title="Turkish"
-            value="tr">Türkçe</option>
-    <option title="Ukrainian"
-            value="uk">Українська</option>
-    <option title="Vietnamese"
-            value="vi">Tiếng Việt</option>
-    <option title="Zulu"
-            value="zu">isiZulu</option>
-  </select>
-  <p style="clear:both;margin:0">&nbsp;</p>
-  <label class="block" for="package" style="clear:left">Package name:</label>
-  <input class="text" type="text" id="package" name="package"
-         value="com.example.android"
-         default="com.example.android"
-         onfocus="onInputFocus(this, 'com.example.android')"
-         onblur="onInputBlur(this, 'com.example.android')"
-         onkeyup="return onTextEntered(event, this.parentNode, this)"/>&nbsp;
-         <a id="package-clear" style="display:none" href="#"
-            onclick="return clearLabel('package','com.example.android');">clear</a>
-  <p style="clear:both;margin:0">&nbsp;<em>or</em></p>
-  <label class="block" style="margin-top:5px" for="publisher">Publisher&nbsp;name:</label>
-  <input class="text" type="text" id="publisher" name="publisher"
-         value="Example, Inc."
-         default="Example, Inc."
-         onfocus="onInputFocus(this, 'Example, Inc.')"
-         onblur="onInputBlur(this, 'Example, Inc.')"
-         onkeyup="return onTextEntered(event, this.parentNode, this)"/>&nbsp;
-         <a id="publisher-clear" style="display:none" href="#"
-            onclick="return clearLabel('publisher','Example, Inc.');">clear</a>
-         <br/><br/>
-
-
-<div class="button-row app">
-  <input type="radio" name="buttonStyle" value="_app_rgb_wo_45" id="ws" />
-    <label for="ws"><img src="{@docRoot}images/brand/en_app_rgb_wo_45.png"
-alt="Android app on Google Play (small)" /></label>
-    &nbsp;&nbsp;&nbsp;&nbsp;
-  <input type="radio" name="buttonStyle" value="_app_rgb_wo_60" id="wm" />
-    <label for="wm"><img src="{@docRoot}images/brand/en_app_rgb_wo_60.png"
-alt="Android app on Google Play (large)" /></label>
-</div>
-
-<div class="button-row">
-  <input type="radio" name="buttonStyle" value="_generic_rgb_wo_45" id="ns" checked="checked" />
-    <label for="ns"><img src="{@docRoot}images/brand/en_generic_rgb_wo_45.png"
-alt="Get it on Google Play (small)" /></label>
-    &nbsp;&nbsp;&nbsp;&nbsp;
-  <input type="radio" name="buttonStyle" value="_generic_rgb_wo_60" id="nm" />
-    <label for="nm"><img src="{@docRoot}images/brand/en_generic_rgb_wo_60.png"
-alt="Get it on Google Play (large)" /></label>
-</div>
-
-  <input class="button" onclick="return buildButton(this.parentNode);"
-    type="button" value="Build my badge" style="padding:10px" />
-  <br/>
-</form>
-
-<div id="preview" style="display:none">
-  <p>Copy and paste this HTML into your web site:</p>
-  <textarea id="snippet" cols="100" rows="5" onclick="this.select()"
-style="font-family:monospace;background-color:#efefef;padding:5px;display:none;margin-bottom:1em">
-  </textarea >
-
-<p>Test your badge:</p>
-<div id="button-preview" style="margin-top:1em"></div>
-</div>
-
diff --git a/docs/html/distribute/tools/promote/brand.jd b/docs/html/distribute/tools/promote/brand.jd
index cf83a5e..409dfdd 100644
--- a/docs/html/distribute/tools/promote/brand.jd
+++ b/docs/html/distribute/tools/promote/brand.jd
@@ -14,6 +14,12 @@
 href="https://support.google.com/googleplay/contact/brand_developer">Android and Google Play Brand Permissions Inquiry form</a> to submit your
 marketing for review.</p>
 
+<p>
+  If you need Google Play badges or guidelines, please see the
+  <a href="https://play.google.com/intl/en_us/badges/">Google Play Badge</a> page.
+</p>
+
+
 <h2 id="brand-android">Android</h2>
 
  <p>The following are guidelines for the Android brand
@@ -101,103 +107,10 @@
 
 <p>The custom typeface may not be used.</p>
 
-<p>The following are guidelines for the Google Play brand.</p>
-
-<h4>Google Play&#8482; Badges</h4>
-
-  <div style="float:right;clear:right;width:172px;margin-left:30px">
-    <img src="{@docRoot}images/brand/en_app_rgb_wo_60.png" alt="">
-    <p style="text-align:center">
-       <a href="{@docRoot}images/brand/en_app_rgb_wo_45.png">129x45</a> |
-       <a href="{@docRoot}images/brand/en_app_rgb_wo_60.png">172x60</a></p>
-  </div>
-
-  <div style="float:right;clear:right;width:172px;margin-left:30px">
-    <img src="{@docRoot}images/brand/en_generic_rgb_wo_60.png" alt="">
-    <p style="text-align:center">
-       <a href="{@docRoot}images/brand/en_generic_rgb_wo_45.png">129x45</a> |
-       <a href="{@docRoot}images/brand/en_generic_rgb_wo_60.png">172x60</a></p>
-  </div>
-
-  <p>Use the "Get it on Google Play" and "Android App on Google Play" badges on your website and
-  promotional materials to point to your products on Google Play. These badges are both available
-  in over 40 languages. Additional Google Play badge formats and
-    badges for music, books, magazines, movies, and TV shows are also available.
-    Use the  <a
-    href="https://support.google.com/googleplay/contact/brand_developer">Android
-    and Google Play Brand Permissions Inquiry form</a> to request
-    those badges.</p>
-
-  <p>Google Play badge guidelines:</p>
-  <ul>
-    <li>Don't modify the color, proportions, spacing, or any other aspect of the badge.</li>
-    <li>When used alongside logos for other application marketplaces, the Google Play badge
-    should be of equal or greater size.</li>
-    <li>When used online, the badge should link to either:</li>
-      <ul>
-        <li>A list of products published by you, for example:<br />
-        <span style="margin-left:1em;">http://play.google.com/store/search?q=<em>publisherName</em></span>
-        </li>
-        <li>A specific app product details page within Google Play, for example:<br />
-        <span style="margin-left:1em;">http://play.google.com/store/apps/details?id=<em>packageName</em></span>
-        </li>
-      </ul>
-    <li>You do not need to include a legal attribution if you are only using a Google Play badge.
-    However, keep in mind that:</li>
-     <ul>
-     <li>If you make any mention of Google Play or Android outside of the badge a legal attribution
-     must be included. </li>
-     <li>If you are including another app store’s legal attribution then include this legal
-     attribution:</li>
-      <ul>
-      <li>Google Play is a trademark of Google Inc.</li>
-      </ul>
-    </li>
-    <li>Use of the Google Play badge does not need to be reviewed or approved by the Google Play
-    brand team unless the marketing campaign will have over 1 million impressions.</li>
-  </ul>
-
-  <p>To quickly create a badge that links to your apps on Google Play,
-  use the <a
-  href="{@docRoot}distribute/tools/promote/badges.html">Google Play badge generator</a>
-  (badges available in over 40 languages).</p>
-
-  <p>For details on all the ways that you can link to your product details page in Google Play,
-    see <a href="{@docRoot}distribute/tools/promote/linking.html">Linking to your products</a>.</p>
-
-<h2 id="Marketing_Review">Google Play in Text</h2>
-
-<p>Any use of Google Play in text must be reviewed and approved by the Google Play brand team.
-Submit your marketing via the <a href="https://support.google.com/googleplay/contact/brand_developer">
-Android and Google Play Partner Brand Inquiry Form.</a></p>
-
-<p>Always include a ™ symbol on the first or most prominent instance of Google Play™ in text.</p>
-
-<p>When mentioning that a product is available on Google Play always say “on Google Play”</p>
-
-<ul>
-<li><span style="color:red">Incorrect</span>: Our app is now available from Google Play.</li>
-<li><span style="color:green">Correct</span>: Our app is now available on Google Play.</li>
-</ul>
-<br>
-<p>Only refer to Google Play as the Google Play™ store app in instructional text meant to inform a
-customer about how to find or download your product on Google Play.</p>
-
-<ul>
-<li><span style="color:red">Incorrect</span>:  Download our games using the Google Play™ store app.</li>
-<li><span style="color:green">Correct</span>: This is how you download our app using the Google
-Play™ store app.</li>
-</ul>
-<br>
-
-<p>Any use of the Google Play name in your marketing or communications needs to be accompanied by
-this legal attribution:</p>
-
-<p><em>Google Play is a trademark of Google Inc.</em></p>
 
 <h2 id="Marketing_Review">Marketing Reviews and Brand Inquiries</h2>
 
 <p>Use the <a
 href="https://support.google.com/googleplay/contact/brand_developer">Android
 and Google Play Brand Permissions Inquiry form</a> to submit any marketing
-reviews or brand inquires. Typical response time is at least one week.</p>
\ No newline at end of file
+reviews or brand inquires. Typical response time is at least one week.</p>
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/land_back.png
new file mode 100644
index 0000000..6407fbe
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/land_back.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/land_fore.png
new file mode 100644
index 0000000..b831f48
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/land_shadow.png
new file mode 100644
index 0000000..79b5930
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/port_back.png
new file mode 100644
index 0000000..33691b2
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/port_back.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/port_fore.png
new file mode 100644
index 0000000..c227a92
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/port_shadow.png
new file mode 100644
index 0000000..3a19d6f
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/thumb.png
new file mode 100644
index 0000000..4f56fee
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_5x/thumb.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/land_back.png
new file mode 100644
index 0000000..3495b13
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/land_back.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/land_fore.png
new file mode 100644
index 0000000..e8c7413
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/land_shadow.png
new file mode 100644
index 0000000..e88906b
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/port_back.png
new file mode 100644
index 0000000..9c311fd
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/port_back.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/port_fore.png
new file mode 100644
index 0000000..442ab87
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/port_shadow.png
new file mode 100644
index 0000000..4b4e526
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/thumb.png
new file mode 100644
index 0000000..5ef0098
--- /dev/null
+++ b/docs/html/distribute/tools/promote/device-art-resources/nexus_6p/thumb.png
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_back.png
deleted file mode 100644
index 697fb7d..0000000
--- a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_back.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_fore.png
deleted file mode 100644
index 735262f..0000000
--- a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_fore.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_shadow.png
deleted file mode 100644
index cfb7952..0000000
--- a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_shadow.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_back.png
deleted file mode 100644
index 5bb815a..0000000
--- a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_back.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_fore.png
deleted file mode 100644
index 1be3b21..0000000
--- a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_fore.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_shadow.png
deleted file mode 100644
index 7e8aff2..0000000
--- a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_shadow.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/thumb.png
deleted file mode 100644
index b5db82e..0000000
--- a/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/thumb.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/distribute/tools/promote/device-art.jd b/docs/html/distribute/tools/promote/device-art.jd
index d321074..9b4dd14 100644
--- a/docs/html/distribute/tools/promote/device-art.jd
+++ b/docs/html/distribute/tools/promote/device-art.jd
@@ -186,7 +186,7 @@
     {
       id: 'nexus_5',
       title: 'Nexus 5',
-      url: 'http://www.google.com/nexus/5/',
+      url: 'https://www.google.com/nexus/5/',
       physicalSize: 5,
       physicalHeight: 5.43,
       density: 'XXHDPI',
@@ -195,11 +195,25 @@
       portRes: ['shadow', 'back', 'fore'],
       portOffset: [304,436],
       portSize: [1080,1920],
+      archived: true
+    },
+    {
+      id: 'nexus_5x',
+      title: 'Nexus 5X',
+      url: 'https://www.google.com/nexus/5x/',
+      physicalSize: 5.2,
+      physicalHeight: 5.625,
+      density: '420DPI',
+      landRes: ['shadow', 'back', 'fore'],
+      landOffset: [485,313],
+      portRes: ['shadow', 'back', 'fore'],
+      portOffset: [305,485],
+      portSize: [1080,1920],
     },
     {
       id: 'nexus_6',
       title: 'Nexus 6',
-      url: 'http://www.google.com/nexus/6/',
+      url: 'https://www.google.com/nexus/6/',
       physicalSize: 6,
       physicalHeight: 6.27,
       density: '560DPI',
@@ -207,7 +221,21 @@
       landOffset: [489,327],
       portRes: ['shadow', 'back', 'fore'],
       portOffset: [327,489],
-      portSize: [1440, 2560],
+      portSize: [1440, 2560], 
+      archived: true
+    },
+    {
+      id: 'nexus_6p',
+      title: 'Nexus 6P',
+      url: 'https://www.google.com/nexus/6p/',
+      physicalSize: 5.7,
+      physicalHeight: 6.125,
+      density: '560DPI',
+      landRes: ['shadow', 'back', 'fore'],
+      landOffset: [579,321],
+      portRes: ['shadow', 'back', 'fore'],
+      portOffset: [312,579],
+      portSize: [1440, 2560]
     },
     {
       id: 'nexus_7',
@@ -221,12 +249,13 @@
       landOffset: [326,245],
       portRes: ['shadow', 'back', 'fore'],
       portOffset: [244,326],
-      portSize: [800,1280]
+      portSize: [800,1280],
+      archived: true
     },
     {
       id: 'nexus_9',
       title: 'Nexus 9',
-      url: 'http://www.google.com/nexus/9/',
+      url: 'https://www.google.com/nexus/9/',
       physicalSize: 9,
       physicalHeight: 8.98,
       actualResolution: [1536,2048],
@@ -240,7 +269,7 @@
     {
       id: 'nexus_10',
       title: 'Nexus 10',
-      url: 'http://www.google.com/nexus/10/',
+      url: 'https://www.google.com/nexus/10/',
       physicalSize: 10,
       physicalHeight: 7,
       actualResolution: [1600,2560],
@@ -253,23 +282,9 @@
       archived: true
     },
     {
-      id: 'nexus_7_2012',
-      title: 'Nexus 7 (2012)',
-      url: 'http://www.google.com/nexus/7/',
-      physicalSize: 7,
-      physicalHeight: 7.81,
-      density: '213dpi',
-      landRes: ['shadow', 'back', 'fore'],
-      landOffset: [315,270],
-      portRes: ['shadow', 'back', 'fore'],
-      portOffset: [264,311],
-      portSize: [800,1280],
-      archived: true
-    },
-    {
       id: 'nexus_4',
       title: 'Nexus 4',
-      url: 'http://www.google.com/nexus/4/',
+      url: 'https://www.google.com/nexus/4/',
       physicalSize: 4.7,
       physicalHeight: 5.27,
       density: 'XHDPI',
@@ -283,7 +298,7 @@
     {
       id: 'wear',
       title: 'Android Wear',
-      url: 'http://www.android.com/wear/',
+      url: 'https://www.android.com/wear/',
       physicalSize: 1.8,
       physicalHeight: 1.8,
       density: 'HDPI',
@@ -296,7 +311,7 @@
     {
       id: 'wear_square',
       title: 'Android Wear Square',
-      url: 'http://www.android.com/wear/',
+      url: 'https://www.android.com/wear/',
       physicalSize: 1.8,
       physicalHeight: 1.8,
       density: 'HDPI',
@@ -310,7 +325,7 @@
     {
       id: 'wear_round',
       title: 'Android Wear Round',
-      url: 'http://www.android.com/wear/',
+      url: 'https://www.android.com/wear/',
       physicalSize: 1.8,
       physicalHeight: 1.8,
       density: 'HDPI',
diff --git a/docs/html/distribute/users/_book.yaml b/docs/html/distribute/users/_book.yaml
new file mode 100644
index 0000000..0febb02
--- /dev/null
+++ b/docs/html/distribute/users/_book.yaml
@@ -0,0 +1,33 @@
+toc:
+- title: Create a Great Listing
+  path: /distribute/users/your-listing.html
+
+- title: Promote with Ads
+  path: /distribute/users/promote-with-ads.html
+
+- title: Drive Installs from Search
+  path: /distribute/users/appindexing.html
+
+- title: Expand to New Markets
+  path: /distribute/users/expand-to-new-markets.html
+
+- title: Offer Over-the-air Installs
+  path: /distribute/users/ota-installs.html
+
+- title: Smarter App Invites
+  path: /distribute/users/app-invites.html
+
+- title: Drive installs from YouTube
+  path: /distribute/users/youtube.html
+
+- title: Cross-Sell with House Ads
+  path: /distribute/users/house-ads.html
+
+- title: Increase installs with Store Listing Experiments
+  path: /distribute/users/experiments.html
+
+- title: Add an App Install Banner On Your Mobile Website
+  path: /distribute/users/banners.html
+
+- title: Understand Where Your Users Come From
+  path: /distribute/users/user-acquisition.html
diff --git a/docs/html/distribute/users/appindexing.jd b/docs/html/distribute/users/appindexing.jd
deleted file mode 100644
index 04114e3..0000000
--- a/docs/html/distribute/users/appindexing.jd
+++ /dev/null
@@ -1,47 +0,0 @@
-page.title=Drive installs from Google Search
-page.metaDescription=Surface the content of your apps in Google Search and link it to app installs.
-meta.tags="getusers", "search", "appindexing"
-page.tags="app indexing", "search", "get users"
-page.image=images/cards/google-search_2x.png
-@jd:body
-
-<p>Google Search now helps users discover your app, with App Indexing. When users
-search with Google on their Android device the results will include details of
-relevant, indexed apps. The search results will include an install button that
-takes users to your app in the Google Play store. And when your app is
-installed, the user will be taken straight to the right content within it.</p>
-
-<div class="figure-left">
-<img src="{@docRoot}images/distribute/appindexing.gif">
-</div>
-
-<p>This free service expands your opportunities to turn the investment you’ve made
-in creating an outstanding app or game into installs. </p>
-
-<p>Start now by adding deep linking support to your app, verifying your app’s
-official website, and defining deep links. To learn how, check out these <a
-href="https://developers.google.com/app-indexing/webmasters/details">instructions</a>. </p>
-
-<p>Once your app is index, links to its content will join the 30 billion app index
-links already available to Google Search.</p>
-
-<h2 id=tips>Tips</h2>
-
-<ul>
-  <li> App Indexing will also be used as a ranking signal for all users on Android,
-regardless of whether they have your app installed or not. 
-  <li> App Indexing also helps drive use of your app — when your app is installed on a
-user’s device, search results will include deep links to your app that bring
-the user straight to the relevant app content.
-  <li> Use the App Indexing API to help users discover relevant content in your app
-before they complete a query with auto-completions.
-</ul>
-
-<h2 id=related_resources>Related resources</h2>
-
-<div class="resource-widget resource-flow-layout col-13"
-  data-query="collection:distribute/users/appindexing"
-  data-sortOrder="-timestamp"
-  data-cardSizes="9x3"
-  data-maxResults="6"></div>
-
diff --git a/docs/html/distribute/users/banners.jd b/docs/html/distribute/users/banners.jd
new file mode 100644
index 0000000..d889ac7
--- /dev/null
+++ b/docs/html/distribute/users/banners.jd
@@ -0,0 +1,64 @@
+page.title=Add An App Install Banner On Your Mobile Website
+page.metaDescription=Add a native app install banner to your mobile website and allow visitors to install your app straight from your site.
+page.image=images/cards/card-install-banners_16x9_2x.png
+page.tags="banner, chrome, web"
+Xnonavpage=true
+
+@jd:body
+
+<!--
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>In this document</h2>
+    <ol>
+      <li>TOC item</li>
+    </ol>
+  </div>
+</div>
+-->
+
+<div class="figure" style="width:138px">
+  <img src="{@docRoot}images/distribute/users/banners.png"
+    srcset="{@docRoot}images/distribute/users/banners.png 1x,
+        {@docRoot}images/distribute/users/banners_2x.png 2x"
+    width="138">
+</div>
+
+<p>
+  Add a native app install banner to your mobile website and offer visitors the
+  added convenience of installing your app or game straight from your site.
+</p>
+
+<p>
+  Learn how to <a href=
+  "https://developers.google.com/web/updates/2015/03/increasing-engagement-with-app-install-banners-in-chrome-for-android#native"
+  class="external-link">add a native app install banner</a> to your mobile
+  site.
+</p>
+
+<h3 id="how">How it Works</h3>
+
+<p>
+  App install banners are offered as an extension of Chrome’s ability to
+  deliver Web App install banners. You can setup this feature in a web app
+  manifest file. In the manifest you define how your app will appear on the
+  user’s system, how it should be launched, and whether its banner has priority
+  over the banner for your Web App. Then, as long as your site is delivered
+  over HTTPS, after a user visits your site on two separate days within a two
+  week period they’ll be shown your app’s install banner.
+</p>
+
+<p style="clear:both">
+</p>
+
+<div class="dynamic-grid">
+<div class="headerLine">
+<h2 id="related-resources">Related Resources</h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/googleplay/banners/related"
+  data-sortOrder="-timestamp"
+  data-cardSizes="9x3"
+  data-maxResults="6"></div>
+  </div>
diff --git a/docs/html/distribute/users/build-community.jd b/docs/html/distribute/users/build-community.jd
deleted file mode 100644
index 23b9d88..0000000
--- a/docs/html/distribute/users/build-community.jd
+++ /dev/null
@@ -1,183 +0,0 @@
-page.title=Build Community
-page.metaDescription=Build a loyal following with great support and communication.
-page.tags="users, growth, community"
-page.image=/images/cards/card-build-community_16-9_2x.png
-
-@jd:body
-
-
-<p>
-  Fans of your apps love to help others, turn newer users into fans, and bring
-  you more users as they talk about your app. Building a community can help you
-  tap into those influencers to help you improve your app and provide support
-  to others.
-</p>
-
-<div class="figure">
-  <img src="{@docRoot}images/cards/card-build-community_16-9_2x.png">
-</div>
-
-<p>
-  Building your own community can help you bring content that will delight
-  users and get them talking about your apps to friends, family and others in
-  their social network.
-</p>
-
-<div class="headerLine">
-  <h2 id="starting-your-community">
-  Starting Your Community
-  </h2>
-
-
-</div>
-
-<p>
-  In conjunction with your apps’ design and development, you should start
-  defining and building your community infrastructure. There’s no one approach
-  that fits all, and the approach for each of your apps may need to be a little
-  different. You should start by thinking about your potential users and asking
-  questions such as:
-</p>
-
-<ul>
-  <li>
-  <p>
-    How will my users prefer to interact? Game users may prefer a modern feed
-    style community, users of a financial management app a more traditional
-    discussion forum.
-  </p>
-  </li>
-
-  <li>
-  <p>
-    Should I have a community for all my apps or should each app have its
-    own? Will users be turned off if the community isn’t just about the app
-    that interests them or can I make it a way to turn them onto my other
-    apps?
-  </p>
-  </li>
-
-  <li>
-  <p>
-    Will different countries or territories, or speakers of particular
-    languages need separate forums? How will I handle feedback in languages I
-    don’t know?
-  </p>
-  </li>
-
-  <li>
-  <p>
-    Do I need any additional policies beyond those governing the tool used to
-    host the community?
-  </p>
-  </li>
-</ul>
-
-<p>
-  Any way you do it, starting your community early helps you build momentum as
-  you turn happy users into influencers.
-</p>
-
-<p>
-  Consider inviting your existing users through a rich notification or an
-  opt-in on your website. Don’t overlook inviting your critics too. If you have
-  been able to address their earlier issues you may convert them into
-  supporters — it’s not unknown for your harshest critics to become your most
-  enthusiastic fans if you address their concerns.
-</p>
-
-<p>
-  When you use the <a href=
-  "{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">beta-testing
-  feature</a> in Google Play, you’ll create a testers group through a <a href=
-  "https://support.google.com/groups/answer/46601">Google Group</a> or <a href=
-  "https://support.google.com/plus/topic/2888488">Google+ Community</a> to
-  define who gets your software for testing. Consider managing these groups as
-  communities in their own right.
-</p>
-
-<div class="headerLine">
-  <h2 id="tools-to-build-your-community">
-  Tools to Build Your Community
-  </h2>
-
-
-</div>
-
-<p>
-  There are many tools you can use to build your community. Before you launch,
-  inviting <a href="http://www.google.com/+/business/">Google+</a> users or
-  <a href="https://support.google.com/groups/answer/46601?hl=en">Google
-  Groups</a> to <a href=
-  "{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">beta-test</a>
-  your app can help you kickstart your community while you listen to and
-  respond to your user feedback.
-</p>
-
-<p>
-  Once you’ve launched, your Google+ or other social media presence can help
-  you continue to gather feedback, answer questions, and get input on updates.
-  Use social media to get the conversation started. Post updates to your
-  followers, announce new apps, and host contests. Ask followers to re-post so
-  that they bring new users into the conversation. Fans love to profess their
-  passion for great apps, so be sure to give them plenty of reason to do so.
-</p>
-
-<p>
-  Forums like <a href=
-  "https://support.google.com/groups/answer/46601?hl=en">Google Groups</a> are
-  particularly well suited to help you and your users provide support to
-  others. By helping out your community, you’re building your fan base who will
-  share their experiences with other prospective customers.
-</p>
-
-<p>
-  Respond to comments and reviews on both your product details page on Google
-  Play and <a href="http://youtube.com">YouTube</a> pages. Prospective
-  customers are influenced by reviews and comments, so be sure to manage your
-  brand in every channel you can.
-</p>
-
-<div class="headerLine">
-  <h2 id="managing-your-community">
-  Managing Your Community
-  </h2>
-
-
-</div>
-
-<div class="figure">
-  <img src="{@docRoot}images/gp-community-0.png">
-</div>
-
-<p>
-  Engaged users want you to succeed. Let them know you’re listening! Responding
-  to posts, comments, and other social media mentions improves your ratings by
-  letting users know you care.
-</p>
-
-<p>
-  Update the product based on user feedback and announce new releases. Users
-  often change their original star ratings after feeling heard, inspiring more
-  users to install your apps.
-</p>
-
-<p>
-  There are many ways to make your community feel special. Consider polls to
-  let users influence product updates. Use competitions to inspire and reward
-  your community. Giving a special <em>member of the week</em> badge is an easy
-  way to recognize those that help others. Or get users involved in testing new
-  versions or new apps to make them feel special.
-</p>
-
-<div class="headerLine">
-  <h2 id="related-resources">
-  Related Resources
-  </h2>
-
-</div>
-<div class="resource-widget resource-flow-layout col-13"
-  data-query="collection:distribute/users/buildcommunity"
-  data-sortOrder="-timestamp"
-  data-cardSizes="9x3"
-  data-maxResults="6"></div>
\ No newline at end of file
diff --git a/docs/html/distribute/users/experiments.jd b/docs/html/distribute/users/experiments.jd
new file mode 100644
index 0000000..215d3a2
--- /dev/null
+++ b/docs/html/distribute/users/experiments.jd
@@ -0,0 +1,121 @@
+page.title=Increase installs with Store Listing Experiments
+page.metaDescription=Run experiments to find the best possible Play Store listing page.
+page.image=images/cards/distribute/users/experiments.png
+page.tags="ab testing, experiments, testing"
+Xnonavpage=true
+
+@jd:body
+
+<p>
+  First impressions matter, so having the best possible Play Store listing page
+  for your app is vital. Store Listing Experiments let you test combinations of
+  text and graphics to find the ones that bring you the most installs.
+</p>
+
+<img src="{@docRoot}images/distribute/googleplay/hero-store-listing-experiment.png"
+  srcset="{@docRoot}images/distribute/googleplay/hero-store-listing-experiment.png 1x,
+      {@docRoot}images/distribute/googleplay/hero-store-listing-experiment_2x.png 2x"
+ width="460">
+
+<p>
+  Learn how to <a href=
+  "https://support.google.com/googleplay/android-developer/answer/6227309"
+  class="external-link">get started with Store Listing Experiments.</a>
+</p>
+
+<h3 id="planning">Tips for planning a successful experiment</h3>
+<ul>
+  <li>Make sure that you have a question or objective in mind when designing
+  your experiments.
+  </li>
+
+  <li>Test one attribute at a time to get the clearest results, but test
+  similar changes in icons and feature graphics together, for example comparing
+  use of character art against objects from a game.
+  </li>
+
+  <li>Start testing with your app icon, because it can have a huge impact on
+  whether users pick your app from search results and category lists.
+  </li>
+
+  <li>Test all of your listing’s attributes; after icons, test screenshots and
+  short descriptions as they are seen by users from search results and category
+  lists. Test the feature graphic as a priority, as it has such a presence on
+  your store listing’s page.
+  </li>
+</ul>
+
+<h3 id="graphics">Tips for your graphics and text</h3>
+<ul>
+  <li>Create up to three alternatives for your hi-res icon, feature graphic,
+  screenshots, promo video, short description, and full description.
+  </li>
+
+  <li>Set up a Global experiment for graphics against your default language or
+  a Localized experiment for both text and graphics in a specific language.
+  Experiment with screenshots and their order.
+  </li>
+
+  <li>Be bold about testing different artwork, but iterate on the results to
+  confirm and improve your findings.
+  </li>
+
+  <li>Make sure short descriptions clearly demonstrate an app or game’s value
+  to users.
+  </li>
+</ul>
+
+<h3 id="success">Tips for running successful experiments</h3>
+<ul>
+  <li>Test one asset at a time, unless testing completely different designs for
+  a store listing page against one another.
+  </li>
+
+  <li>Run your experiment for at least 7 days, even if you have enough traffic
+  to get meaningful results in a few days. Depending on the percentage of your
+  audience you’re showing the experiment too and the traffic on your listings
+  page it may take anything from a few days to several weeks to get a
+  result.
+  </li>
+
+  <li>Run your experiments with 50 percent of your audience, the maximum
+  allowed, to get results faster; particularly for localized tests that may be
+  visible to only a small percentage of your users.
+  </li>
+
+  <li>Check the banner on the Experiments page to see progress. Once enough
+  data has been collected the winner is displayed and you can apply it to your
+  store listing.
+  </li>
+</ul>
+
+<p style="clear:both">
+</p>
+
+<!-- TBA
+<div class="dynamic-grid">
+<div class="headerLine">
+<h2 id="successes">See how other developers have successfully run Store
+  Listing Experiments
+</h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/googleplay/experiments/successes"
+  data-sortOrder="-timestamp"
+  data-cardSizes="9x3"
+  data-maxResults="9"></div>
+  </div>
+-->
+
+<div class="dynamic-grid">
+<div class="headerLine">
+<h2 id="related-resources">Related Resources</h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/googleplay/experiments/related"
+  data-sortOrder="-timestamp"
+  data-cardSizes="6x6"
+  data-maxResults="6"></div>
+  </div>
diff --git a/docs/html/distribute/users/promote-with-ads.jd b/docs/html/distribute/users/promote-with-ads.jd
index f0e3256..2db4ca3 100644
--- a/docs/html/distribute/users/promote-with-ads.jd
+++ b/docs/html/distribute/users/promote-with-ads.jd
@@ -29,10 +29,8 @@
       </h3>
       <img src="/images/distribute/promote_ads_play.png">
       <p class="figure-caption">
-        Search ads on Google Play are still undergoing testing and not yet
-        available to buy. <a href=
-        "http://android-developers.blogspot.com/2015/02/a-new-way-to-promote-your-app-on-google.html">
-        Find out more</a>.
+        Promote your app on Google Play when users are searching and browsing
+        for apps.
       </p>
     </div>
 
diff --git a/docs/html/distribute/users/user-acquisition.jd b/docs/html/distribute/users/user-acquisition.jd
new file mode 100644
index 0000000..3f073f5
--- /dev/null
+++ b/docs/html/distribute/users/user-acquisition.jd
@@ -0,0 +1,102 @@
+page.title=Understand Where Your Users Come From
+page.metaDescription=Use the Developer Console to identify the channels that bring the greatest volume of high-value users.
+page.image=images/cards/distribute/users/user-acquisition.jpg
+page.tags="user acquisition, reports, cohorts"
+Xnonavpage=true
+
+@jd:body
+
+<!--
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>In this document</h2>
+    <ol>
+      <li>TOC item</li>
+    </ol>
+  </div>
+</div>
+-->
+
+<p>
+  Whether you pay to acquire users or not, you want to focus your acquisition
+  efforts on the channels that bring you the greatest volume of high-value
+  users. It’s now easy to identify those channels from the User Acquisition
+  page in the Developer Console.
+</p>
+
+<img src="{@docRoot}images/distribute/googleplay/dev-console_conversion-funnel.png"
+  srcset="{@docRoot}images/distribute/googleplay/dev-console_conversion-funnel.png 1x,
+      {@docRoot}images/distribute/googleplay/dev-console_conversion-funnel_2x.png 2x"
+ width="500">
+
+<p>
+  From the performance report you can follow users — whether originating as
+  organic or paid traffic — from discovery to installation then onto their
+  purchase of your in-app products, with convenient predefined reporting
+  criteria. With the improved understanding of where your most valuable users
+  come from, you can better focus your efforts.
+</p>
+
+<p>
+  Learn more about how to <a href=
+  "https://support.google.com/googleplay/android-developer/answer/6263332"
+  class="external-link">measure your app’s user acquisition channels.</a>
+</p>
+
+<h2 id="how-to">How to use the User Acquisition performance report</h2>
+
+<ul>
+  <li>
+    <strong>Compare cohorts:</strong> In this report, a <em>cohort</em> is a
+    group of users who’ve visited your app’s store listing during a selected
+    date range. For example, if you update your app’s icon on the Play Store,
+    you’ll want to see how the change affects installs and in-app purchases.
+    You can do this by selecting cohorts before and after your app update, and
+    measure how your change impacted conversion rates.
+  </li>
+
+  <li>
+    <strong>Examine acquisition channels:</strong> For your defined cohort, you
+    can explore how user behaviour and value differ between acquisition
+    channels, such as organic Play Store traffic, AdWords campaigns, tracked
+    channels, and searches. Drill down into specific channels to explore user
+    behaviour in detail.
+  </li>
+
+  <li>
+    <strong>See users:</strong> Get stats for all the <strong>store listing
+    visitors</strong> (users who visited your app’s store listing) and
+    <strong>installers</strong>. This helps you understand how prospects are
+    converting into users.
+  </li>
+
+  <li>
+    <strong>See buyers:</strong> If you sell in-app products, the funnel report
+    can also tell you about <strong>new buyers</strong> and <strong>repeat
+    buyers</strong>. This helps you understand how quickly your in-app products
+    and subscriptions are gaining traction with users.
+  </li>
+</ul>
+
+<p class="aside">
+  <strong>Tip:</strong> If you’re directing your users to your mobile app from
+  your website, you can track conversions by adding a UTM campaign source and a
+  campaign name tag to the <a href=
+  "https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-url-builder"
+  class="external-link">Google Play store URL.</a>
+</p>
+
+<p style="clear:both">
+</p>
+
+<div class="dynamic-grid">
+<div class="headerLine">
+<h2 id="related-resources">Related Resources</h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/googleplay/useracquisition/related"
+  data-sortOrder="-timestamp"
+  data-cardSizes="9x3"
+  data-maxResults="6"></div>
+  </div>
diff --git a/docs/html/distribute/users/users_toc.cs b/docs/html/distribute/users/users_toc.cs
index 1e4085b..f84c926 100644
--- a/docs/html/distribute/users/users_toc.cs
+++ b/docs/html/distribute/users/users_toc.cs
@@ -47,6 +47,26 @@
         </a>
     </div>
   </li>
+
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/experiments.html">
+          <span class="en">Increase installs with Store Listing Experiments</span>
+        </a>
+    </div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/banners.html">
+          <span class="en">Add an App Install Banner On Your Mobile Website</span>
+        </a>
+    </div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/user-acquisition.html">
+          <span class="en">Understand Where Your Users Come From</span>
+        </a>
+    </div>
+  </li>
+
 </ul>
 
 
diff --git a/docs/html/google/_book.yaml b/docs/html/google/_book.yaml
new file mode 100644
index 0000000..01efa4f
--- /dev/null
+++ b/docs/html/google/_book.yaml
@@ -0,0 +1,78 @@
+toc:
+- title: Google Play In-app Billing
+  path: /google/play/billing/index.html
+  custom_link_attributes:
+  - zh-cn-lang="应用内结算"
+  section:
+  - title: Overview
+    path: /google/play/billing/billing_overview.html
+    custom_link_attributes:
+    - zh-cn-lang="应用内结算概述"
+  - title: Version 3 API
+    path: /google/play/billing/api.html
+    custom_link_attributes:
+    - zh-cn-lang="应用内结算 API"
+    section:
+    - title: Implementing the API
+      path: /google/play/billing/billing_integrate.html
+    - title: Reference
+      path: /google/play/billing/billing_reference.html
+  - title: Subscriptions
+    path: /google/play/billing/billing_subscriptions.html
+  - title: Promotions
+    path: /google/play/billing/billing_promotions.html
+  - title: Security and Design
+    path: /google/play/billing/billing_best_practices.html
+    custom_link_attributes:
+    - zh-cn-lang="安全性和设计"
+  - title: Testing In-app Billing
+    path: /google/play/billing/billing_testing.html
+    custom_link_attributes:
+    - zh-cn-lang="测试应用内结算"
+  - title: Administering In-app Billing
+    path: /google/play/billing/billing_admin.html
+    custom_link_attributes:
+    - zh-cn-lang="管理应用内结算"
+  - title: Version Notes
+    path: /google/play/billing/versions.html
+
+- title: Filters on Google Play
+  path: /google/play/filters.html
+  custom_link_attributes:
+  - es-lang="Filtros en Google Play"
+  - ja-lang="Google Play 上のフィルタ"
+  - ko-lang="Google Play 필터"
+  - pt-br-lang="Filtros no Google Play"
+  - ru-lang="Фильтры в Google Play"
+  - zh-cn-lang="Google Play 上的筛选器"
+  - zh-tw-lang="Google Play 上的篩選器"
+
+- title: Google Play Developer API
+  path: /google/play/developer-api.html
+
+- title: Advertising ID
+  path: /google/play-services/id.html
+
+- title: Multiple APK Support
+  path: /google/play/publishing/multiple-apks.html
+
+- title: APK Expansion Files
+  path: /google/play/expansion-files.html
+
+- title: Application Licensing
+  path: /google/play/licensing/index.html
+  section:
+  - title: Licensing Overview
+    path: /google/play/licensing/overview.html
+  - title: Setting Up for Licensing
+    path: /google/play/licensing/setting-up.html
+  - title: Adding Licensing to Your App
+    path: /google/play/licensing/adding-licensing.html
+  - title: Licensing Reference
+    path: /google/play/licensing/licensing-reference.html
+
+- title: Android Backup Service
+  path: /google/backup/index.html
+  section:
+  - title: Register
+    path: /google/backup/signup.html
diff --git a/docs/html/google/backup/signup.jd b/docs/html/google/backup/signup.jd
index f9ad600..598003d 100644
--- a/docs/html/google/backup/signup.jd
+++ b/docs/html/google/backup/signup.jd
@@ -208,7 +208,7 @@
 <input id="pname" type="text" name="pname" size="47" value="" onkeyup="onFormInput()"
 onfocus="boxFocusChanged(this,true)" onblur="boxFocusChanged(this,false)"/>
 </p>
-<p><a href="" class="button disabled" id="registerButton" 
+<p><a href="" class="dac-button dac-raised dac-primary disabled ndk" id="registerButton" 
 onclick="onRegister(); return false;" >Register with Android Backup Service</a></p>
 </div>
 
diff --git a/docs/html/google/google_toc.cs b/docs/html/google/google_toc.cs
index ffdc22d..e5d8c13 100644
--- a/docs/html/google/google_toc.cs
+++ b/docs/html/google/google_toc.cs
@@ -17,20 +17,13 @@
               <span class="en">Reference</span></a></li>
               </ul>
       </li>
-      <li class="nav-section"><div class="nav-section-header"><a href="<?cs var:toroot?>google/play/billing/v2/api.html">
-              <span class="en">Version 2 API</span></a></div>
-              <ul>
-              <li><a href="<?cs var:toroot?>google/play/billing/v2/billing_integrate.html">
-              <span class="en">Implementing the API</span></a></li>
-              <li><a href="<?cs var:toroot?>google/play/billing/v2/billing_subscriptions.html">
-              <span class="en">Subscriptions</span></a></li>
-              <li><a href="<?cs var:toroot?>google/play/billing/v2/billing_reference.html">
-              <span class="en">Reference</span></a></li>
-              </ul>
-      </li>
+
       <li><a href="<?cs var:toroot?>google/play/billing/billing_subscriptions.html">
               <span class="en">Subscriptions</span></a>
       </li>
+      <li><a href="<?cs var:toroot?>google/play/billing/billing_promotions.html">
+              <span class="en">Promotions</span></a>
+      </li>
       <li><a href="<?cs var:toroot?>google/play/billing/billing_best_practices.html" zh-cn-lang="安全性和设计">
               <span class="en">Security and Design</span></a>
       </li>
@@ -64,6 +57,11 @@
               <span class="en">Google Play Developer API</span></a>
       </div>
   </li>
+  <li class="nav-section">
+  <div class="nav-section-header empty"><a href="<?cs var:toroot?>google/play-services/id.html">
+              <span class="en">Advertising ID</span></a>
+      </div>
+  </li>
     <li class="nav-section">
   <div class="nav-section-header empty"><a href="<?cs var:toroot ?>google/play/publishing/multiple-apks.html">
           <span class="en">Multiple APK Support</span></a>
diff --git a/docs/html/google/index.jd b/docs/html/google/index.jd
index a2a6c50..b3ceee3 100644
--- a/docs/html/google/index.jd
+++ b/docs/html/google/index.jd
@@ -39,12 +39,13 @@
   </a>
 </div>
 
-<section class="dac-section dac-gray dac-small dac-invert" id="latest"><div class="wrap">
+<section class="dac-section dac-gray dac-small" id="latest"><div class="wrap">
   <h2 class="norule">Latest</h2>
   <div class="resource-widget resource-flow-layout col-16"
        data-query="type:blog+tag:googleservices+tag:featured"
        data-cardSizes="6x6"
-       data-maxResults="12"
+       data-maxResults="15"
+       data-items-per-page="6"
        data-initial-results="3"></div>
   </div>
 </section>
@@ -68,7 +69,7 @@
   </div>
 </section>
 
-<section class="dac-section dac-gray dac-small dac-invert" id="videos"><div class="wrap">
+<section class="dac-section dac-gray dac-small" id="videos"><div class="wrap">
   <h2 class="norule">Videos</h2>
   <div class="resource-widget resource-flow-layout col-16"
        data-query="collection:google/landing/videos"
diff --git a/docs/html/google/play-services/id.jd b/docs/html/google/play-services/id.jd
new file mode 100644
index 0000000..f95ebef
--- /dev/null
+++ b/docs/html/google/play-services/id.jd
@@ -0,0 +1,193 @@
+page.title=Advertising ID
+page.tags=Ads,Advertising ID,ID
+
+@jd:body
+<div class="landing-banner">
+
+<div class="col-8">
+<p itemprop="description">
+  The advertising ID is a user-specific, unique, resettable ID for advertising,
+  provided by Google Play services. It gives users better controls and provides
+  developers with a simple, standard system to continue to monetize your apps.
+  It is an anonymous identifier for advertising purposes and enables users to
+  reset their identifier or opt out of interest-based ads within Google Play
+  apps.
+</p>
+<p>
+  The advertising ID is accessible through a straightforward API that you can
+  implement in your apps. For details, take a look at the <a href=
+  "#get_started">overview</a> and the <a href=
+  "https://developers.google.com/android/reference/com/google/android/gms/ads/identifier/package-summary">
+  advertising ID API reference</a>.
+</p>
+</div>
+</div>
+<div class="landing-docs">
+  <div class="col-6 normal-links">
+    <h3 style="clear:left">Key Developer Features</h3>
+      <h4>Standard, simple ID</h4>
+      <p>The advertising ID is a part of a standard, simple system for serving ads and performing analytics.</p>
+      <h4>Giving users control</h4>
+      <p>Users  can reset their advertising ID or opt out of interest-based ads at any time, right from the Google Settings app.
+      Their preferences apply across all ad companies that use the advertising ID.</p>
+
+  </div>
+  <div class="col-6 normal-links">
+    <h3 style="clear:left">Getting Started</h3>
+    <h4>1. Get the Google Play services SDK</h4>
+    <p>The advertising ID APIs are part of the Google Play services platform.</p>
+    <p>To get started, <a href="https://developers.google.com/android/guides/setup">set up
+      the Google Play services SDK</a>. </p>
+    <h4>2. Read the docs and example code</h4>
+    <p>Once you've installed the Google Play services package, review the <a href="#get_started">overview</a>
+    below, as well as the <a href="#example">example</a>.</p>
+    <p>
+    For detailed documentation, take a look at the <a href=
+  "https://developers.google.com/android/reference/com/google/android/gms/ads/identifier/package-summary">
+    advertising ID API reference documentation</a>.
+    </p>
+  </div>
+</div>
+<p class="caution" style=
+"background-color:#fffdeb;width:100%;margin-bottom:1em;padding:.5em;">
+  As a reminder, please note that starting <strong>1 August 2014</strong>, new
+  apps and app updates distributed through Google Play must use the advertising
+  ID in lieu of any other persistent identifiers for any advertising purposes,
+  on devices that support the advertising ID.<br>
+  <br>
+  To learn how to check your app's compliance through the Developer Console, or
+  for details on the associated developer policy changes, please see the
+  <a href=
+  "https://support.google.com/googleplay/android-developer/answer/6048248">Advertising
+  ID topic</a> in the Google Play developer help center.
+</p>
+<h2 id="get_started">Using the Advertising ID</h2>
+<p>
+  The <strong>advertising ID</strong> is a unique but
+  user-resettable string identifier that lets ad networks and other apps anonymously
+  identify a user. The user's advertising ID is made available to apps through APIs
+  provided in Google Play services.
+</p>
+<p>
+  Users can reset their advertising ID at any time, right from the Ads section of the
+  Google Settings app on their devices. From the same app, users can also
+  opt-out of targeted advertising based on the advertising ID by setting the appropriate
+  <strong style="white-space:nowrap">ad tracking preference</strong>. When the
+  user opts-out of targeted ads, this ad tracking preference is made available
+  to apps through a Google Play services API.
+</p>
+<p>
+  Apps making use of the advertising ID <strong>must check for and respect</strong> the
+  user's ad tracking preference. Also please note that any use of the advertising ID
+  must abide by the terms of the <a class="external-link"
+  href="http://play.google.com/about/developer-content-policy.html#ADID">Google Play
+  Developer Content Policies</a>.
+</p>
+<h3 id="format">Format of the Advertising ID</h3>
+<p>
+  Google Play services APIs expose the user's advertising ID as a string format of UUID,
+  with values similar to this:
+</p>
+<p style="margin-left:1.5em;"><code>"38400000-8cf0-11bd-b23e-10b96e40000d"</code></p>
+<h3 id="requirements">Requirements</h3>
+<ul>
+  <li>The advertising ID APIs are supported in Google Play services 4.0+</li>
+  <li>Support for the advertising ID on specific devices is based on their installed versions
+  of Google Play services</li>
+</ul>
+<h3 id="obtaining">Obtaining the user's advertising ID and ad tracking preference</h3>
+<p>
+  If you want to use the advertising ID in your app, you must first install the Google
+  Play services SDK. As noted in the requirements above, you should install the
+  SDK for Google Play services 4.0 or higher if you will develop using the advertising ID
+  APIs. For information about how to get started, see <a href=
+  "https://developers.google.com/android/guides/setup">Setting Up Google Play services</a>.
+</p>
+<p>
+  The advertising ID APIs are available in the <a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/package-summary.html">
+  <code>com.google.android.gms.ads.identifier</code></a> package in the Google
+  Play Services library. To obtain the user's advertising ID and tracking preference,
+  call the method
+  <a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.html#getAdvertisingIdInfo(android.content.Context)">
+  <code>getAdvertisingIdInfo()</code></a>, which returns an <a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html">
+  <code>AdvertisingIdClient.Info</code></a> encapsulating the user's current Advertising ID
+  and tracking preference.
+</p>
+<p class="note">
+  <strong>Note:</strong> The
+  <a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.html#getAdvertisingIdInfo(android.content.Context)"><code>getAdvertisingIdInfo()</code></a>
+  method is a blocking call, so you must not call it on the main (UI) thread.
+  If called on the main thread, the method throws
+  {@link java.lang.IllegalStateException}.
+</p>
+<p>
+  Once you've retrieved the
+  <a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html">
+  <code>AdvertisingIdClient.Info</code></a>
+  object, you can use its <a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html#getId()">
+  <code>getId()</code></a> and <a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html#isLimitAdTrackingEnabled()">
+  <code>isLimitAdTrackingEnabled()</code></a> methods to access the advertising ID and
+  ad tracking preference.
+</p>
+<table>
+<tr>
+<th>Method</th>
+<th>Description</th>
+</tr>
+<tr>
+<td><code>public String <a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html#getId()">getId()</a></code></td>
+<td style="white-space:nowrap;">Retrieves the advertising ID.</td>
+</tr>
+<tr>
+<td style="white-space:nowrap;"><code>public boolean <a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html#isLimitAdTrackingEnabled()">isLimitAdTrackingEnabled()</a></code></td>
+<td>Retrieves whether the user has limit ad tracking enabled or not.</td>
+</tr>
+</table>
+<p>
+  The advertising ID APIs do not include a "reset" method. Only users can initiate a
+  reset of their own advertising IDs, through the Google Settings application.
+</p>
+<p>
+  For more information about the advertising ID APIs, see the <a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/package-summary.html">
+  reference documentation</a>.
+</p>
+<h3 id="example">Example implementation</h3>
+<p>
+  Here's a basic illustration of how you can retrieve the user's advertising ID and ad
+  tracking preference in your app:
+</p>
+<pre>
+import com.google.android.gms.ads.identifier.AdvertisingIdClient;
+import com.google.android.gms.ads.identifier.AdvertisingIdClient.Info;
+import com.google.android.gms.common.GooglePlayServicesAvailabilityException;
+import com.google.android.gms.common.GooglePlayServicesNotAvailableException;
+import java.io.IOException;
+...
+// Do not call this function from the main thread. Otherwise,
+// an IllegalStateException will be thrown.
+public void getIdThread() {
+  Info adInfo = null;
+  try {
+    adInfo = AdvertisingIdClient.getAdvertisingIdInfo(mContext);
+  } catch (IOException e) {
+    // Unrecoverable error connecting to Google Play services (e.g.,
+    // the old version of the service doesn't support getting AdvertisingId).
+
+  } catch (GooglePlayServicesAvailabilityException e) {
+    // Encountered a recoverable error connecting to Google Play services.
+  } catch (GooglePlayServicesNotAvailableException e) {
+    // Google Play services is not available entirely.
+  }
+  final String id = adInfo.getId();
+  final boolean isLAT = adInfo.isLimitAdTrackingEnabled();
+}</pre>
diff --git a/docs/html/google/play/billing/api.jd b/docs/html/google/play/billing/api.jd
index bc710f9..6816ff1 100644
--- a/docs/html/google/play/billing/api.jd
+++ b/docs/html/google/play/billing/api.jd
@@ -11,53 +11,96 @@
   <ol>
     <li><a href="#producttypes">Product Types</a>
        <ol>
-       <li><a href="#managed">Managed In-app Products</a><li>
-       <li><a href="#subs">Subscriptions</a><li>
+       <li><a href="#managed">Managed In-app Products</a></li>
+       <li><a href="#subs">Subscriptions</a></li>
        </ol>
     </li>
     <li><a href="#purchase">Purchasing Items</a></li>
     <li><a href="#consume">Consuming In-app Products</a>
        <ol>
-       <li><a href="#consumetypes">Non-consumable and Consumable In-app Products</a><li>
-       <li><a href="#managingconsumables">Managing Consumable Purchases</a><li>
+       <li><a href="#consumetypes">Non-consumable and Consumable In-app Products</a></li>
+       <li><a href="#managingconsumables">Managing Consumable Purchases</a></li>
        </ol>
     </li>
     <li><a href="#caching">Local Caching</a></li>
   </ol>
-  
+
   <h2>Reference</h2>
   <ol>
     <li><a href="{@docRoot}google/play/billing/billing_reference.html">In-app Billing
     Reference (V3)</a></li>
   </ol>
-  
+
  <h2>See also</h2>
   <ol>
     <li><a href="{@docRoot}training/in-app-billing/index.html">Selling In-app Products</a></li>
-  </ol>  
+  </ol> 
 </div>
 </div>
 
-<p>The In-app Billing Version 3 API makes it easier for you to integrate In-app Billing into your applications. The features in this version include improved synchronous purchase flow, APIs to let you easily track ownership of consumable goods, and local caching of in-app purchase data.</p>
+<p>
+  The In-app Billing Version 3 API makes it easier for you to integrate In-app
+  Billing into your applications. The features in this version include improved
+  synchronous purchase flow, APIs to let you easily track ownership of
+  consumable goods, and local caching of in-app purchase data.
+</p>
 
 <h2 id="producttypes">Product Types</h2>
-<p>You define your products using the Google Play Developer Console, including product type, SKU, price, description, and so on. For more information, see <a
-href="{@docRoot}google/play/billing/billing_admin.html">Administering In-app Billing</a>. The Version 3 API supports managed in-app products and subscriptions.</p>
+
+<p>
+  You define your products using the Google Play Developer Console, including
+  product type, SKU, price, description, and so on. For more information, see
+  <a href="{@docRoot}google/play/billing/billing_admin.html">Administering
+  In-app Billing</a>. The Version 3 API supports managed in-app products and
+  subscriptions.
+</p>
+
 <h3 id="managed">Managed In-app Products</h3>
-<p>Managed in-app products are items that have their ownership information tracked and managed by Google Play. When a user purchases a managed in-app item, Google Play stores the purchase information for each item on a per-user basis. This enables you to later query Google Play at any time to restore the state of the items a specific user has purchased. This information is persistent on the Google Play servers even if the user uninstalls the application or if they change devices.</p>
-<p>If you are using the Version 3 API, you can also consume managed items within your application. You would typically implement consumption for items that can be purchased multiple times (such as in-game currency, fuel, or magic spells). Once purchased, a managed item cannot be purchased again until you consume the item, by sending a consumption request to Google Play. To learn more about in-app product consumption, see <a href="#consume">Consuming Items</a></p>
+
+<p>
+  Managed in-app products are items that have their ownership information
+  tracked and managed by Google Play. When a user purchases a managed in-app
+  item, Google Play stores the purchase information for each item on a per-user
+  basis. This enables you to later query Google Play at any time to restore the
+  state of the items a specific user has purchased. This information is
+  persistent on the Google Play servers even if the user uninstalls the
+  application or if they change devices.
+</p>
+
+<p>
+  If you are using the Version 3 API, you can also consume managed items within
+  your application. You would typically implement consumption for items that
+  can be purchased multiple times (such as in-game currency, fuel, or magic
+  spells). Once purchased, a managed item cannot be purchased again until you
+  consume the item, by sending a consumption request to Google Play. To learn
+  more about in-app product consumption, see <a href="#consume">Consuming
+  Items</a>.
+</p>
 
 <h3 id="subs">Subscriptions</h3>
-<p>A subscription is a product type offered in In-app Billing that lets you sell 
-content, services, or features to users from inside your app with recurring 
-monthly or annual billing. You can sell subscriptions to almost any type of 
-digital content, from any type of app or game. To understand how  
-subscriptions work, see <a href="{@docRoot}google/play/billing/billing_subscriptions.html">In-app Billing Subscriptions</a>.</p>
-<p>With the Version 3 API, you can use the same purchase flow for buying 
-subscriptions and retrieving subscription purchase information as with in-app 
-products. For a code example, see <a href="{@docRoot}google/play/billing/billing_integrate.html#Subs">Implementing Subscriptions</a>.</p>
-<p class="caution"><strong>Important</strong>: Unlike in-app products, 
-subscriptions cannot be consumed.</p>
+
+<p>
+  A subscription is a product type offered in In-app Billing that lets you sell
+  content, services, or features to users from inside your app with recurring
+  monthly or annual billing. You can sell subscriptions to almost any type of
+  digital content, from any type of app or game. To understand how
+  subscriptions work, see <a href=
+  "{@docRoot}google/play/billing/billing_subscriptions.html">In-app Billing
+  Subscriptions</a>.
+</p>
+
+<p>
+  With the Version 3 API, you can use the same purchase flow for buying
+  subscriptions and retrieving subscription purchase information as with in-app
+  products. For a code example, see <a href=
+  "{@docRoot}google/play/billing/billing_integrate.html#Subs">Implementing
+  Subscriptions</a>.
+</p>
+
+<p class="caution">
+  <strong>Important</strong>: Unlike in-app products, subscriptions cannot be
+  consumed.
+</p>
 
 <h2 id="purchase">Purchasing Items</h2>
 
@@ -68,71 +111,205 @@
 </p>
 </div>
 
-<p>A typical purchase flow with the Version 3 API is as follows:
+<p>A typical purchase flow with the Version 3 API is as follows:</p>
+
 <ol>
-<li>Your application sends a {@code isBillingSupported} request to Google Play to determine that the target version of the In-app Billing API that you are using is supported.  </li>
-<li>When your application starts or user logs in, it's good practice to check with Google Play to determine what items are owned by the user. To query the user's in-app purchases, send a {@code getPurchases} request. If the request is successful, Google Play returns a {@code Bundle} containing a list of product IDs of the purchased items, a list of the individual purchase details, and a list of the signatures for the purchases.</li>
-<li>Usually, you'll want to inform the user of the products that are available for purchase. To query the details of the in-app products that you defined in Google Play, your application can send a {@code getSkuDetails} request. You must specify a list of product IDs in the query request. If the request is successful, Google Play returns a {@code Bundle} containing product details including the product’s price, title, description, and the purchase type. 
-</li>
-<li>If an in-app product is not owned by the user, you can initiate a purchase for it. To start a purchase request, your application sends a {@code getBuyIntent} request, specifying the product ID of the item to purchase, along with other parameters. You should record the product ID when you create a new in-app product in the Developer Console.
-  <ol type="a">
-  <li>Google Play returns a {@code Bundle} that contains a {@code PendingIntent} which you application uses to start the checkout UI for the purchase.</li>
-  <li>Your application launches the pending intent by calling the {@code startIntentSenderForResult} method.</li>
-  <li>When the checkout flow finishes (that is, the user successfully purchases the item or cancels the purchase), Google Play sends a response {@code Intent} to your {@code onActivityResult} method. The result code of the {@code onActivityResult} has a result code that indicates whether the purchase was successful or canceled. The response {@code Intent} contains information about the purchased item, including a {@code purchaseToken} String that is generated by Google Play to uniquely identify this purchase transaction. The {@code Intent} also contains the signature of the purchase, signed with your private developer key.</li> 
-  </ol>
-</li>
+  <li>Your application sends a {@code isBillingSupported} request to Google
+  Play to determine that the target version of the In-app Billing API that you
+  are using is supported.
+  </li>
+
+  <li>When your application starts or user logs in, it's good practice to check
+  with Google Play to determine what items are owned by the user. To query the
+  user's in-app purchases, send a {@code getPurchases} request. If the request
+  is successful, Google Play returns a {@code Bundle} containing a list of
+  product IDs of the purchased items, a list of the individual purchase
+  details, and a list of the signatures for the purchases.
+  </li>
+
+  <li>Usually, you'll want to inform the user of the products that are
+  available for purchase. To query the details of the in-app products that you
+  defined in Google Play, your application can send a {@code getSkuDetails}
+  request. You must specify a list of product IDs in the query request. If the
+  request is successful, Google Play returns a {@code Bundle} containing
+  product details including the product’s price, title, description, and the
+  purchase type.
+  </li>
+
+  <li>If an in-app product is not owned by the user, you can initiate a
+  purchase for it. To start a purchase request, your application sends a {@code
+  getBuyIntent} request, specifying the product ID of the item to purchase,
+  along with other parameters. You should record the product ID when you create
+  a new in-app product in the Developer Console.
+    <ol type="a">
+      <li>Google Play returns a {@code Bundle} that contains a {@code
+      PendingIntent} which your application uses to start the checkout UI for
+      the purchase.
+      </li>
+
+      <li>Your application launches the pending intent by calling the {@code
+      startIntentSenderForResult} method.
+      </li>
+
+      <li>When the checkout flow finishes (that is, the user successfully
+      purchases the item or cancels the purchase), Google Play sends a response
+      {@code Intent} to your {@code onActivityResult} method. The result code
+      of the {@code onActivityResult} has a result code that indicates whether
+      the purchase was successful or canceled. The response {@code Intent}
+      contains information about the purchased item, including a {@code
+      purchaseToken} String that is generated by Google Play to uniquely
+      identify this purchase transaction. The {@code Intent} also contains the
+      signature of the purchase, signed with your private developer key.
+      </li>
+    </ol>
+  </li>
 </ol>
+
+<p>
+  To learn more about the Version 3 API calls and server responses, see
+  <a href="{@docRoot}google/play/billing/billing_reference.html">In-app Billing
+  Reference</a>.
 </p>
-<p>To learn more about the Version 3 API calls and server responses, see <a href="{@docRoot}google/play/billing/billing_reference.html">In-app Billing Reference</a>.</p>
 
 <h2 id="consume">Consuming In-app Products</h2>
-<p>You can use the consumption mechanism to track the user's ownership of in-app 
-products.</p>
-<p>In Version 3, all in-app products are managed. This means that the user's 
-ownership of all in-app item purchases is maintained by Google Play, and your 
-application can query the user's purchase information when needed. When the user 
-successfully purchases an in-app product, that purchase is recorded in Google 
-Play. Once an in-app product is purchased, it is considered to be "owned". 
-In-app products in the "owned" state cannot be purchased from Google Play. You 
-must send a consumption request for the "owned" in-app product before Google 
-Play makes it available for purchase again. Consuming the in-app product reverts 
-it to the "unowned" state, and discards the previous purchase data.</p>
+
+<p>
+  You can use the consumption mechanism to track the user's ownership of in-app
+  products.
+</p>
+
+<p>
+  In Version 3, all in-app products are managed. This means that the user's
+  ownership of all in-app item purchases is maintained by Google Play, and your
+  application can query the user's purchase information when needed. When the
+  user successfully purchases an in-app product, that purchase is recorded in
+  Google Play. Once an in-app product is purchased, it is considered to be
+  "owned". In-app products in the "owned" state cannot be purchased from Google
+  Play. You must send a consumption request for the "owned" in-app product
+  before Google Play makes it available for purchase again. Consuming the
+  in-app product reverts it to the "unowned" state, and discards the previous
+  purchase data.
+</p>
+
 <div class="figure" style="width:420px">
-<img src="{@docRoot}images/in-app-billing/v3/iab_v3_consumption_flow.png" id="figure2" height="300"/>
+<img src="{@docRoot}images/in-app-billing/v3/iab_v3_consumption_flow.png"
+    id="figure2" height="300"/>
 <p class="img-caption">
   <strong>Figure 2.</strong> The basic sequence for a consumption request.
 </p>
 </div>
-<p>To retrieve the list of product's owned by the user, your application sends a {@code getPurchases} call to Google Play. Your application can make a consumption request by sending a {@code consumePurchase} call. In the request argument, you must specify the in-app product's unique {@code purchaseToken} String that you obtained from Google Play when it was purchased. Google Play returns a status code indicating if the consumption was recorded successfully.</p>
+
+<p>
+  To retrieve the list of product's owned by the user, your application sends a
+  {@code getPurchases} call to Google Play. Your application can make a
+  consumption request by sending a {@code consumePurchase} call. In the request
+  argument, you must specify the in-app product's unique {@code purchaseToken}
+  String that you obtained from Google Play when it was purchased. Google Play
+  returns a status code indicating if the consumption was recorded
+  successfully.
+</p>
 
 <h3 id="consumetypes">Non-consumable and Consumable In-app Products</h3>
-<p>It's up to you to decide if you want to handle your in-app products as non-consumable or consumable items.</p>
+
+<p>
+  It's up to you to decide if you want to handle your in-app products as
+  non-consumable or consumable items.
+</p>
+
 <dl>
-<dt>Non-consumable Items</dt>
-<dd>Typically, you would not implement consumption for in-app products that can only be purchased once in your application and provide a permanent benefit. Once purchased, these items will be permanently associated to the user's Google account. An example of a non-consumable in-app product is a premium upgrade or a level pack.</dd>
-<dt>Consumable items</dt>
-<dd>In contrast, you can implement consumption for items that can be made available for purchase multiple times. Typically, these items provide certain temporary effects. For example, the user's in-game character might gain life points or gain extra gold coins in their inventory. Dispensing the benefits or effects of the purchased item in your application is called <em>provisioning</em> the in-app product. You are responsible for controlling and tracking how in-app products are provisioned to the users.
-<p class="note"><strong>Important:</strong> Before provisioning the consumable in-app product in your application, you must send a consumption request to Google Play and receive a successful response indicating that the consumption was recorded.</p>
-</dd>
+  <dt>
+    Non-consumable Items
+  </dt>
+
+  <dd>
+    Typically, you would not implement consumption for in-app products that can
+    only be purchased once in your application and provide a permanent benefit.
+    Once purchased, these items will be permanently associated to the user's
+    Google account. An example of a non-consumable in-app product is a premium
+    upgrade or a level pack.
+  </dd>
+
+  <dt>
+    Consumable items
+  </dt>
+
+  <dd>
+    In contrast, you can implement consumption for items that can be made
+    available for purchase multiple times. Typically, these items provide
+    certain temporary effects. For example, the user's in-game character might
+    gain life points or gain extra gold coins in their inventory. Dispensing
+    the benefits or effects of the purchased item in your application is called
+    <em>provisioning</em> the in-app product. You are responsible for
+    controlling and tracking how in-app products are provisioned to the users.
+    <p class="note">
+      <strong>Important:</strong> Before provisioning the consumable in-app
+      product in your application, you must send a consumption request to
+      Google Play and receive a successful response indicating that the
+      consumption was recorded.
+    </p>
+  </dd>
 </dl>
+
 <h3 id="managingconsumables">Managing consumable purchases in your application</h3>
 <p>Here is the basic flow for purchasing a consumable in-app product:</p>
+
 <ol>
-<li>Launch a purchase flow with a {@code getBuyIntent} call</li>
-<li>Get a response {@code Bundle}from Google Play indicating if the purchase completed successfully.</li>
-<li>If the purchase was successful, consume the purchase by making a {@code consumePurchase} call.</li>
-<li>Get a response code from Google Play indicating if the consumption completed successfully.</li>
-<li>If the consumption was successful, provision the product in your application.</li>
+  <li>Launch a purchase flow with a {@code getBuyIntent} call
+  </li>
+
+  <li>Get a response {@code Bundle}from Google Play indicating if the purchase
+  completed successfully.
+  </li>
+
+  <li>If the purchase was successful, consume the purchase by making a {@code
+  consumePurchase} call.
+  </li>
+
+  <li>Get a response code from Google Play indicating if the consumption
+  completed successfully.
+  </li>
+
+  <li>If the consumption was successful, provision the product in your
+  application.
+  </li>
 </ol>
-<p>Subsequently, when the user starts up or logs in to your application, you should check if the user owns any outstanding consumable in-app products; if so, make sure to consume and provision those items. Here's the recommended application startup flow if you implement consumable in-app products in your application:</p>
+
+<p>
+  Subsequently, when the user starts up or logs in to your application, you
+  should check if the user owns any outstanding consumable in-app products; if
+  so, make sure to consume and provision those items. Here's the recommended
+  application startup flow if you implement consumable in-app products in your
+  application:
+</p>
+
 <ol>
-<li>Send a {@code getPurchases} request to query the owned in-app products for the user.</li>
-<li>If there are any consumable in-app products, consume the items by calling {@code consumePurchase}. This step is necessary because the application might have completed the purchase order for the consumable item, but stopped or got disconnected before the application had the chance to send a consumption request.</li>
-<li>Get a response code from Google Play indicating if the consumption completed successfully.</li>
-<li>If the consumption was successful, provision the product in your application.</li>
+  <li>Send a {@code getPurchases} request to query the owned in-app products
+  for the user.
+  </li>
+
+  <li>If there are any consumable in-app products, consume the items by calling
+  {@code consumePurchase}. This step is necessary because the application might
+  have completed the purchase order for the consumable item, but stopped or got
+  disconnected before the application had the chance to send a consumption
+  request.
+  </li>
+
+  <li>Get a response code from Google Play indicating if the consumption
+  completed successfully.
+  </li>
+
+  <li>If the consumption was successful, provision the product in your
+  application.
+  </li>
 </ol>
 
 <h2 id="caching">Local Caching</h2>
-<p>Because the Google Play client now caches In-app Billing information locally on the device, you can use the Version 3 API to query for this information more frequently, for example through a {@code getPurchases} call. Unlike with previous versions of the API, many Version 3 API calls will be serviced through cache lookups instead of through a network connection to Google Play, which significantly speeds up the API's response time. </p>
 
-
+<p>
+  Because the Google Play client now caches In-app Billing information locally
+  on the device, you can use the Version 3 API to query for this information
+  more frequently, for example through a {@code getPurchases} call. Unlike with
+  previous versions of the API, many Version 3 API calls will be serviced
+  through cache lookups instead of through a network connection to Google Play,
+  which significantly speeds up the API's response time.
+</p>
diff --git a/docs/html/google/play/billing/billing_admin.jd b/docs/html/google/play/billing/billing_admin.jd
index 009495b..ff7acc9 100644
--- a/docs/html/google/play/billing/billing_admin.jd
+++ b/docs/html/google/play/billing/billing_admin.jd
@@ -130,9 +130,10 @@
     a product ID.</p>
   </li>
   <li><strong>Product Type</strong>
-    <p>The product type can be <strong>Managed per user account</strong>, <strong>Unmanaged</strong>,
-    or <strong>Subscription</strong>. You can never change an item's product type after you set it. For more
-    information, see <a href="#billing-purchase-type">Choosing a product type</a> later in this
+    <p>The product type can be <strong>Managed per user account</strong>,
+    <strong>Unmanaged</strong>, or <strong>Subscription</strong>. You can never
+    change an item's product type after you set it. For more information, see
+    <a href="#billing-purchase-type">Choosing a product type</a> later in this
     document.</p>
   </li>
   <li><strong>Publishing State</strong>
@@ -154,14 +155,15 @@
     application.</p>
   </li>
   <li><strong>Title</strong>
-    <p>The title is a short descriptor for the item. For example, "Sleeping potion." Titles must be
-    unique across an application's namespace. Every item must have a title. The title is visible to
+    <p>The title is a short descriptor for the item. For example, "Sleeping potion."
+    Every item must have a title. The title is visible to
     users during checkout. For optimum appearance, titles should be no longer than 25 characters;
     however, titles can be up to 55 characters in length.</p>
   </li>
   <li><strong>Description</strong>
     <p>The description is a long descriptor for the item. For example, "Instantly puts creatures to
-    sleep. Does not work on angry elves." Every item must have a description. Descriptions can be up to 80 characters in length.</p>
+    sleep. Does not work on angry elves." Every item must have a description. Descriptions can be
+    up to 80 characters in length.</p>
   </li>
   <li><strong>Price</strong>
     <p>You must provide a default price in your home currency. You can also provide prices in other
@@ -171,22 +173,25 @@
     <p>To specify prices in other currencies, you can manually enter the price for each
     currency or you can click <strong>Auto Fill</strong> and let Google Play do a one-time
     conversion from your home currency to the currencies you are targeting (see figure 3).</p>
-    <p>For subscription items, note that you can not change the item's price once you have published it. </p>
+    <p>For subscription items, note that you can not change the item's price once you have published
+    it.</p>
   </li>
 </ul>
 
 <div style="margin:1em;">
-<img style="border:1px solid #ddd;padding-bottom:.5em" src="{@docRoot}images/in-app-billing/billing_list_form_2.png" xheight="1226" id="figure3" />
+<img style="border:1px solid #ddd;padding-bottom:.5em"
+    src="{@docRoot}images/in-app-billing/billing_list_form_2.png"
+    xheight="1226" id="figure3" />
 <p class="img-caption" style="padding-left:.5em;">
   <strong>Figure 3.</strong> Specifying additional currencies for an in-app product.
 </p>
 </div>
 
 <p>For more information about product IDs and product lists, see <a
-href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1072599">Creating In-App Product
-IDs</a>. For more information about pricing, see <a
-href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1153485">In-App Billing
-Pricing</a>.</p>
+href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1072599">
+Creating In-App Product IDs</a>. For more information about pricing, see <a
+href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1153485">
+In-App Billing Pricing</a>.</p>
 
 <p class="note"><strong>Note</strong>: Be sure to plan your product ID namespace. You cannot reuse
 or modify product IDs after you save them.</p>
@@ -196,14 +201,15 @@
 <p>To add a batch of items to a product list using a CSV file, you first need to create your CSV
 file. The data values that you specify in the CSV file represent the same data values you specify
 manually through the In-app Products UI (see <a href="#billing-form-add">Adding items one at a time
-to a product list</a>). 
+to a product list</a>).
 
 <p>If you are importing and exporting CSV files with in-app products, please
 keep tax-inclusive pricing in mind. If you use auto-fill, you can provide a
 tax-exclusive default price and tax-inclusive prices will be auto-filled. If you
 do not use auto-fill, prices you provide must include tax.</p>
 
-<p class="note"><strong>Note:</strong> Batch upload of product lists containing subscriptions is not yet supported.</p>
+<p class="note"><strong>Note:</strong> Batch upload of product lists containing
+subscriptions is not yet supported.</p>
 
 The CSV file uses commas (,) and semi-colons (;) to separate data values.
 Commas are used to separate primary data values, and semi-colons are used to separate subvalues. For
@@ -287,7 +293,8 @@
   </li>
   <li><em>price</em>
     <p>This is equivalent to the Price in the In-app Products UI. The price must be specified in
-    micro-units. To convert a currency value to micro-units, you multiply the real value by 1,000,000.
+    micro-units. To convert a currency value to micro-units, you multiply the real value by
+    1,000,000.
     For example, if you want to sell an in-app item for $1.99 you specify 1990000 in the
     <em>price</em> field.</p>
   </li>
@@ -413,8 +420,8 @@
 application. For more information, see <a
 href="{@docRoot}google/play/billing/v2/api.html#billing-action-notify">Handling
 IN_APP_NOTIFY messages</a> and <a
-href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1153485">In-app Billing
-Pricing</a>.</p>
+href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1153485">
+In-app Billing Pricing</a>.</p>
 
 <p class="caution"><strong>Important:</strong> You cannot use the API to issue
 refunds or cancel In-app Billing transactions. You must do this manually through your Google
@@ -442,7 +449,7 @@
 Order Number as the value of <code>orderID</code>. Here's an
 example:</p>
 
-<pre>"orderId" : "12999556515565155651.5565135565155651"</pre>
+<pre>"orderId" : "GPA.1234-5678-9012-34567"</pre>
 
 <p>For transactions dated previous to 5 December 2012, Google checkout assigned
 a Google Order Number and reported that number as the value of
@@ -453,10 +460,11 @@
 
 <h2 id="billing-testing-setup">Setting Up Test Accounts</h2>
 
-<p>The Google Play Developer Console lets you set up one or more test accounts. A test account is a
-regular Google account that you register on the Developer Console as a test account. Test accounts are
-authorized to make in-app purchases from applications that you have uploaded to the Google Play
-Developer Console but have not yet published.</p>
+<p>The Google Play Developer Console lets you set up one or more test accounts.
+A test account is a regular Google account that you register on the Developer
+Console as a test account. Test accounts are authorized to make in-app purchases
+from applications that you have uploaded to the Google Play Developer Console
+but have not yet published.</p>
 
 <p>You can use any Google account as a test account. Test accounts are useful if you want to let
 multiple people test In-app Billing on applications without giving them access to your publisher
@@ -547,6 +555,3 @@
 <p>For general information about how to post to the groups listed above, see <a
 href="{@docRoot}resources/community-groups.html">Developer Forums</a> document in the Resources
 tab.</p>
-
-
-
diff --git a/docs/html/google/play/billing/billing_best_practices.jd b/docs/html/google/play/billing/billing_best_practices.jd
index 015e7c3..70084b8 100644
--- a/docs/html/google/play/billing/billing_best_practices.jd
+++ b/docs/html/google/play/billing/billing_best_practices.jd
@@ -72,7 +72,7 @@
   line to your Proguard configuration file:</p>
   <p><code>-keep class com.android.vending.billing.**</code></p>
 </div>
-  
+
 <h3 id="sample">Modify all sample application code</h3>
 <p>The In-app Billing sample application is publicly distributed and can be downloaded by anyone,
 which means it is relatively easy for an attacker to reverse engineer your application if you use
@@ -90,16 +90,33 @@
 nonces on the server.</p>
 
 <h3 id="payload">Set the developer payload string when making purchase requests</h3>
-<p>With the In-app Billing Version 3 API, you can include a 'developer payload' string token when sending your purchase request to Google Play. Typically, this is used to pass in a string token that uniquely identifies this purchase request. If you specify a string value, Google Play returns this string along with the purchase response. Subsequently, when you make queries about this purchase, Google Play returns this string together with the purchase details.</p>
-<p>You should pass in a string token that helps your application to identify the user who made the purchase, so that you can later verify that this is a legitimate purchase by that user. For consumable items, you can use a randomly generated string, but for non-consumable items you should use a string that uniquely identifies the user.</p>
-<p>When you get back the response from Google Play, make sure to verify that the developer payload string matches the token that you sent previously with the purchase request. As a further security precaution, you should perform the verification on your own secure server.</p>
+<p>With the In-app Billing Version 3 API, you can include a 'developer payload'
+string token when sending your purchase request to Google Play. Typically, this
+is used to pass in a string token that uniquely identifies this purchase request.
+If you specify a string value, Google Play returns this string along with the
+purchase response. Subsequently, when you make queries about this purchase,
+Google Play returns this string together with the purchase details.</p>
+<p>You should pass in a string token that helps your application to identify the user who
+made the purchase, so that you can later verify that this is a legitimate purchase by
+that user. For consumable items, you can use a randomly generated string, but for non-
+consumable items you should use a string that uniquely identifies the user.</p>
+
+<p class="note">
+  <strong>Note:</strong> Do not use the user's
+  email address in the payload string, since that address may change.
+</p>
+
+<p>When you get back the response from Google Play, make sure to verify that the
+developer payload string matches the token that you sent previously with the purchase
+request. As a further security precaution, you should perform the verification on your
+own secure server.</p>
 
 
 <h3 id="trademark">Take action against trademark and copyright infringement</h3>
 <p>If you see your content being redistributed on Google Play, act quickly and decisively. File a
-<a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=141511">trademark notice
-of infringement</a> or a <a href="http://www.google.com/android_dmca.html">copyright notice of
-infringement</a>.</p>
+<a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=141511">
+trademark notice of infringement</a> or a <a href="http://www.google.com/android_dmca.html">
+copyright notice of infringement</a>.</p>
 
 <h3 id="revocable">Implement a revocability scheme for unlocked content</h3>
 <p>If you are using a remote server to deliver or manage content, have your application verify the
@@ -112,4 +129,3 @@
 example, XOR with some other string) to hide the actual key. The key itself is not secret
 information, but you do not want to make it easy for a hacker or malicious user to replace the
 public key with another key.</p>
-
diff --git a/docs/html/google/play/billing/billing_integrate.jd b/docs/html/google/play/billing/billing_integrate.jd
old mode 100644
new mode 100755
index 52973a8..c658f70
--- a/docs/html/google/play/billing/billing_integrate.jd
+++ b/docs/html/google/play/billing/billing_integrate.jd
@@ -16,8 +16,8 @@
        <li><a href="#QueryDetails">Querying Items Available for Purchase</a><li>
        <li><a href="#Purchase">Purchasing an Item</a></li>
        <li><a href="#QueryPurchases">Querying Purchased Items</a></li>
-       <li><a href="#Consume">Consuming a Purchase</a><li>
-       <li><a href="#Subs">Implementing Subscriptions</a><li>
+       <li><a href="#Consume">Consuming a Purchase</a></li>
+       <li><a href="#Subs">Implementing Subscriptions</a></li>
        </ol>
     </li>
     <li><a href="#billing-security">Securing Your App</a>
@@ -38,15 +38,35 @@
 </div>
 </div>
 
-<p>In-app Billing on Google Play provides a straightforward, simple interface for sending In-app Billing requests and managing In-app Billing transactions using Google Play. The information below covers the basics of how to make calls from your application to the In-app Billing service using the Version 3 API. </p>
+<p>
+  In-app Billing on Google Play provides a straightforward, simple interface
+  for sending In-app Billing requests and managing In-app Billing transactions
+  using Google Play. The information below covers the basics of how to make
+  calls from your application to the In-app Billing service using the Version 3
+  API.
+</p>
 
-<p class="note"><strong>Note:</strong> To see a complete implementation and learn how to test your application, see the <a href="{@docRoot}training/in-app-billing/index.html">Selling In-app Products</a> training class. The training class provides a complete sample In-app Billing application, including convenience classes to handle key tasks related to setting up your connection, sending billing requests and processing responses from Google Play, and managing background threading so that you can make In-app Billing calls from your main activity.</p>
+<p class="note">
+  <strong>Note:</strong> To see a complete implementation and learn how to test
+  your application, see the <a href=
+  "{@docRoot}training/in-app-billing/index.html">Selling In-app Products</a>
+  training class. The training class provides a complete sample In-app Billing
+  application, including convenience classes to handle key tasks related to
+  setting up your connection, sending billing requests and processing responses
+  from Google Play, and managing background threading so that you can make
+  In-app Billing calls from your main activity.
+</p>
 
-<p>Before you start, be sure that you read the <a href="{@docRoot}google/play/billing/billing_overview.html">In-app Billing Overview</a> to familiarize yourself with
-concepts that will make it easier for you to implement In-app Billing.</p>
+<p>
+  Before you start, be sure that you read the <a href=
+  "{@docRoot}google/play/billing/billing_overview.html">In-app Billing
+  Overview</a> to familiarize yourself with concepts that will make it easier
+  for you to implement In-app Billing.
+</p>
 
 <p>To implement In-app Billing in your application, you need to do the
 following:</p>
+
 <ol>
   <li>Add the In-app Billing library to your project.</li>
   <li>Update your {@code AndroidManifest.xml} file.</li>
@@ -70,51 +90,81 @@
 <li>Select <strong>Google Play Billing Library</strong>.</li>
 <li>Click <strong>Install packages</strong> to complete the download.</li>
 </ol>
-<p>The {@code IInAppBillingService.aidl} file will be installed to {@code <sdk>/extras/google/play_billing/}.</p>
+<p>The {@code IInAppBillingService.aidl} file will be installed to {@code &lt;sdk&gt;/extras/google/play_billing/}.</p>
 
 <p>To add the AIDL to your project:</p>
-<ol>
-<li>Copy the {@code IInAppBillingService.aidl} file to your Android project.
-  <ul>
-  <li>If you are using Eclipse:
-     <ol type="a">
-        <li>If you are starting from an existing Android project, open the project
-in Eclipse. If you are creating a new Android project from scratch, click
-<strong>File</strong> &gt; <strong>New</strong> &gt; <strong>Android Application
-Project</strong>, then follow the instructions in the <strong>New Android
-Application</strong> wizard to create a new project in your workspace.</li>
-	<li>In the {@code /src} directory, click <strong>File</strong> &gt;
-<strong>New</strong> &gt; <strong>Package</strong>, then create a package named {@code com.android.vending.billing}.</li>
-	<li>Copy the {@code IInAppBillingService.aidl} file from {@code <sdk>/extras/google/play_billing/} and paste it into the {@code src/com.android.vending.billing/}
-folder in your workspace.</li>
-     </ol>
-  </li>
-  <li>If you are developing in a non-Eclipse environment: Create the following
-directory {@code /src/com/android/vending/billing} and copy the
-{@code IInAppBillingService.aidl} file into this directory. Put the AIDL file
-into your project and use the Ant tool to build your project so that the
-<code>IInAppBillingService.java</code> file gets generated.</li>
-  </ul>
-</li>
-<li>Build your application. You should see a generated file named
-{@code IInAppBillingService.java} in the {@code /gen} directory of your
-project.</li>
-</ol>
 
+<ol>
+  <li>First, download the Google Play Billing Library to your Android project:
+      <ol type="a">
+      <li>Select <strong>Tools > Android > SDK Manager</strong>.</li>
+      <li>Under <strong>Appearance & Behavior > System Settings > Android SDK</strong>,
+          select the <em>SDK Tools</em> tab to select and download <em>Google Play Billing
+          Library</em>.</li></ol>
+
+  <li>Next, copy the {@code IInAppBillingService.aidl} file to your project.
+    <ul>
+      <li>If you are using Android Studio:
+        <ol type="a">
+          <li>Navigate to {@code src/main} in the Project tool window.</li>
+
+          <li>Select <strong>File > New > Directory</strong> and enter {@code aidl} in the
+          <em>New Directory</em> window, then select <strong>OK</strong>.
+
+          <li>Select <strong>File > New > Package</strong> and enter 
+          {@code com.android.vending.billing} in the <em>New Package</em> window, then select
+          <strong>OK</strong>.</li>
+
+          <li>Using your operating system file explorer, navigate to 
+          {@code &lt;sdk&gt;/extras/google/play_billing/}, copy the 
+          {@code IInAppBillingService.aidl} file, and paste it into the 
+          {@code com.android.vending.billing} package in your project.
+          </li>
+        </ol>
+      </li>
+
+      <li>If you are developing in a non-Android Studio environment: Create the
+      following directory {@code /src/com/android/vending/billing} and copy the
+      {@code IInAppBillingService.aidl} file into this directory. Put the AIDL
+      file into your project and use the Gradle tool to build your project so that
+      the <code>IInAppBillingService.java</code> file gets generated.
+      </li>
+    </ul>
+  </li>
+
+  <li>Build your application. You should see a generated file named {@code
+  IInAppBillingService.java} in the {@code /gen} directory of your project.
+  </li>
+</ol>
 
 <h2 id="billing-permission">Updating Your Application's Manifest</h2>
 
-<p>In-app billing relies on the Google Play application, which handles all communication between your application and the Google Play server. To use the Google Play application, your application must request the proper permission. You can do this by adding the {@code com.android.vending.BILLING} permission to your AndroidManifest.xml file. If your application does not declare the In-app Billing permission, but attempts to send billing requests, Google Play will refuse the requests and respond with an error.</p>
+<p>
+  In-app billing relies on the Google Play application, which handles all
+  communication between your application and the Google Play server. To use the
+  Google Play application, your application must request the proper permission.
+  You can do this by adding the {@code com.android.vending.BILLING} permission
+  to your AndroidManifest.xml file. If your application does not declare the
+  In-app Billing permission, but attempts to send billing requests, Google Play
+  will refuse the requests and respond with an error.
+</p>
 
-<p>To give your app the necessary permission, add this line in your {@code Android.xml} manifest file:</p>
+<p>
+  To give your app the necessary permission, add this line in your {@code
+  Android.xml} manifest file:
+</p>
+
 <pre>
 &lt;uses-permission android:name="com.android.vending.BILLING" /&gt;
 </pre>
 
 <h2 id="billing-service">Creating a ServiceConnection</h2>
 
-<p>Your application must have a {@link android.content.ServiceConnection} to facilitate messaging between
-your application and Google Play. At a minimum, your application must do the following:</p>
+<p>
+  Your application must have a {@link android.content.ServiceConnection} to
+  facilitate messaging between your application and Google Play. At a minimum,
+  your application must do the following:
+</p>
 
 <ul>
   <li>Bind to {@code IInAppBillingService}.
@@ -123,8 +173,18 @@
 </ul>
 
 <h3>Binding to IInAppBillingService</h3>
-<p>To establish a connection with the In-app Billing service on Google Play, implement a {@link android.content.ServiceConnection} to bind your activity to {@code IInAppBillingService}. Override the {@link android.content.ServiceConnection#onServiceDisconnected onServiceDisconnected} and {@link
-android.content.ServiceConnection#onServiceConnected onServiceConnected} methods to get a reference to the {@code IInAppBillingService} instance after a connection has been established.</p>
+
+<p>
+  To establish a connection with the In-app Billing service on Google Play,
+  implement a {@link android.content.ServiceConnection} to bind your activity
+  to {@code IInAppBillingService}. Override the {@link
+  android.content.ServiceConnection#onServiceDisconnected
+  onServiceDisconnected} and {@link
+  android.content.ServiceConnection#onServiceConnected onServiceConnected}
+  methods to get a reference to the {@code IInAppBillingService} instance after
+  a connection has been established.
+</p>
+
 <pre>
 IInAppBillingService mService;
 
@@ -142,20 +202,52 @@
 };
 </pre>
 
-<p>In your activity’s {@link android.app.Activity#onCreate onCreate} method, perform the binding by calling the {@link android.content.Context#bindService bindService} method. Pass the method an {@link android.content.Intent} that references the In-app Billing service and an instance of the {@link android.content.ServiceConnection} that you created, and explicitly set the Intent's target package name to <code>com.android.vending</code> &mdash; the package name of Google Play app.</p>
+<p>
+  In your activity’s {@link android.app.Activity#onCreate onCreate} method,
+  perform the binding by calling the {@link android.content.Context#bindService
+  bindService} method. Pass the method an {@link android.content.Intent} that
+  references the In-app Billing service and an instance of the {@link
+  android.content.ServiceConnection} that you created, and explicitly set the
+  Intent's target package name to <code>com.android.vending</code> — the
+  package name of Google Play app.
+</p>
 
-<p class="caution"><strong>Caution:</strong> To protect the security of billing transactions, always make sure to explicitly set the intent's target package name to <code>com.android.vending</code>, using {@link android.content.Intent#setPackage(java.lang.String) setPackage()} as shown in the example below. Setting the package name explicitly ensures that <em>only</em> the Google Play app can handle billing requests from your app, preventing other apps from intercepting those requests.</p>
+<p class="caution">
+  <strong>Caution:</strong> To protect the security of billing transactions,
+  always make sure to explicitly set the intent's target package name to
+  <code>com.android.vending</code>, using {@link
+  android.content.Intent#setPackage(java.lang.String) setPackage()} as shown in
+  the example below. Setting the package name explicitly ensures that
+  <em>only</em> the Google Play app can handle billing requests from your app,
+  preventing other apps from intercepting those requests.
+</p>
 
 <pre>&#64;Override
 public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_main);
-  Intent serviceIntent = new Intent("com.android.vending.billing.InAppBillingService.BIND");
+  Intent serviceIntent =
+      new Intent("com.android.vending.billing.InAppBillingService.BIND");
   serviceIntent.setPackage("com.android.vending");
   bindService(serviceIntent, mServiceConn, Context.BIND_AUTO_CREATE);
+}
 </pre>
-<p>You can now use the mService reference to communicate with the Google Play service.</p>
-<p class="note"><strong>Important:</strong> Remember to unbind from the In-app Billing service when you are done with your {@link android.app.Activity}. If you don’t unbind, the open service connection could cause your device’s performance to degrade. This example shows how to perform the unbind operation on a service connection to In-app Billing called {@code mServiceConn} by overriding the activity’s {@link android.app.Activity#onDestroy onDestroy} method.</p>
+
+<p>
+  You can now use the mService reference to communicate with the Google Play
+  service.
+</p>
+
+<p class="note">
+  <strong>Important:</strong> Remember to unbind from the In-app Billing
+  service when you are done with your {@link android.app.Activity}. If you
+  don’t unbind, the open service connection could cause your device’s
+  performance to degrade. This example shows how to perform the unbind
+  operation on a service connection to In-app Billing called {@code
+  mServiceConn} by overriding the activity’s {@link
+  android.app.Activity#onDestroy onDestroy} method.
+</p>
+
 <pre>
 &#64;Override
 public void onDestroy() {
@@ -166,16 +258,37 @@
 }
 </pre>
 
-<p>For a complete implementation of a service connection that binds to the {@code IInAppBillingService},
-see the <a href="{@docRoot}training/in-app-billing/preparing-iab-app.html">Selling In-app
-Products</a> training class and associated sample.</p>
-
+<p>
+  For a complete implementation of a service connection that binds to the
+  {@code IInAppBillingService}, see the <a href=
+  "{@docRoot}training/in-app-billing/preparing-iab-app.html">Selling In-app
+  Products</a> training class and associated sample.
+</p>
 <h2 id="billing-requests">Making In-app Billing Requests</h2>
-<p>Once your application is connected to Google Play, you can initiate purchase requests for in-app products. Google Play provides a checkout interface for users to enter their payment method, so your application does not need to handle payment transactions directly. When an item is purchased, Google Play recognizes that the user has ownership of that item and prevents the user from purchasing another item with the same product ID until it is consumed. You can control how the item is consumed in your application, and notify Google Play to make the item available for purchase again. You can also query Google Play to quickly retrieve the list of purchases that were made by the user. This is useful, for example, when you want to restore the user's purchases when your user launches your app.
+<p>
+  Once your application is connected to Google Play, you can initiate purchase
+  requests for in-app products. Google Play provides a checkout interface for
+  users to enter their payment method, so your application does not need to
+  handle payment transactions directly. When an item is purchased, Google Play
+  recognizes that the user has ownership of that item and prevents the user
+  from purchasing another item with the same product ID until it is consumed.
+  You can control how the item is consumed in your application, and notify
+  Google Play to make the item available for purchase again. You can also query
+  Google Play to quickly retrieve the list of purchases that were made by the
+  user. This is useful, for example, when you want to restore the user's
+  purchases when your user launches your app.
 </p>
 
 <h3 id="QueryDetails">Querying for Items Available for Purchase</h3>
-<p>In your application, you can query the item details from Google Play using the In-app Billing Version 3 API. To pass a request to the In-app Billing service, first create a {@link android.os.Bundle}  that contains a String {@link java.util.ArrayList} of product IDs with key "ITEM_ID_LIST", where each string is a product ID for an purchasable item.</p>
+
+<p>
+  In your application, you can query the item details from Google Play using
+  the In-app Billing Version 3 API. To pass a request to the In-app Billing
+  service, first create a {@link android.os.Bundle} that contains a String
+  {@link java.util.ArrayList} of product IDs with key "ITEM_ID_LIST", where
+  each string is a product ID for an purchasable item.
+</p>
+
 <pre>
 ArrayList&lt;String&gt; skuList = new ArrayList&lt;String&gt; ();
 skuList.add("premiumUpgrade");
@@ -183,19 +296,51 @@
 Bundle querySkus = new Bundle();
 querySkus.putStringArrayList(“ITEM_ID_LIST”, skuList);
 </pre>
-<p>To retrieve this information from Google Play, call the {@code getSkuDetails} method on the In-app Billing Version 3 API, and pass the method the In-app Billing API version (“3”), the package name of your calling app, the purchase type (“inapp”), and the {@link android.os.Bundle} that you created.</p>
+
+<p>
+  To retrieve this information from Google Play, call the {@code getSkuDetails}
+  method on the In-app Billing Version 3 API, and pass the method the In-app
+  Billing API version (“3”), the package name of your calling app, the purchase
+  type (“inapp”), and the {@link android.os.Bundle} that you created.
+</p>
+
 <pre>
 Bundle skuDetails = mService.getSkuDetails(3,
    getPackageName(), "inapp", querySkus);
 </pre>
-<p>If the request is successful, the returned {@link android.os.Bundle}has a response code of {@code BILLING_RESPONSE_RESULT_OK} (0).</p>
-<p class="note"><strong>Warning:</strong> Do not call the {@code getSkuDetails} method on the main thread. Calling this method triggers a network request which could block your main thread.  Instead, create a separate thread and call the {@code getSkuDetails} method from inside that thread.</p>
 
-<p>To see all the possible response codes from Google Play, see <a href="{@docRoot}google/play/billing/billing_reference.html#billing-codes">In-app Billing Reference</a>.</p>
+<p>
+  If the request is successful, the returned {@link android.os.Bundle}has a
+  response code of {@code BILLING_RESPONSE_RESULT_OK} (0).
+</p>
 
-<p>The query results are stored in a String ArrayList with key {@code DETAILS_LIST}.  The purchase information is stored in the String in JSON format. To see the types of product detail information that are returned, see <a href="{@docRoot}google/play/billing/billing_reference.html#getSkuDetails">In-app Billing Reference</a>.</p>
+<p class="note">
+  <strong>Warning:</strong> Do not call the {@code getSkuDetails} method on the
+  main thread. Calling this method triggers a network request which could block
+  your main thread. Instead, create a separate thread and call the {@code
+  getSkuDetails} method from inside that thread.
+</p>
 
-<p>In this example, you are retrieving the prices for your in-app items from the skuDetails {@link android.os.Bundle} returned from the previous code snippet.</p>
+<p>
+  To see all the possible response codes from Google Play, see <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#billing-codes">In-app
+  Billing Reference</a>.
+</p>
+
+<p>
+  The query results are stored in a String ArrayList with key {@code
+  DETAILS_LIST}. The purchase information is stored in the String in JSON
+  format. To see the types of product detail information that are returned, see
+  <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getSkuDetails">In-app
+  Billing Reference</a>.
+</p>
+
+<p>
+  In this example, you are retrieving the prices for your in-app items from the
+  skuDetails {@link android.os.Bundle} returned from the previous code snippet.
+</p>
+
 <pre>
 int response = skuDetails.getInt("RESPONSE_CODE");
 if (response == 0) {
@@ -213,31 +358,69 @@
 </pre>
 
 <h3 id="Purchase">Purchasing an Item</h3>
-<p>To start a purchase request from your app, call the {@code getBuyIntent} method on the In-app Billing service. Pass in to the method the In-app Billing API version (“3”), the package name of your calling app, the product ID for the item to purchase, the purchase type (“inapp” or "subs"), and a {@code developerPayload} String. The {@code developerPayload} String is used to  specify any additional arguments that you want Google Play to send back along with the purchase information.</p>
+<p>
+  To start a purchase request from your app, call the {@code getBuyIntent}
+  method on the In-app Billing service. Pass in to the method the In-app
+  Billing API version (“3”), the package name of your calling app, the product
+  ID for the item to purchase, the purchase type (“inapp” or "subs"), and a
+  {@code developerPayload} String. The {@code developerPayload} String is used
+  to specify any additional arguments that you want Google Play to send back
+  along with the purchase information.
+</p>
 
 <pre>
 Bundle buyIntentBundle = mService.getBuyIntent(3, getPackageName(),
    sku, "inapp", "bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ");
 </pre>
+
 <p>
-If the request is successful, the returned {@link android.os.Bundle} has a response code of {@code BILLING_RESPONSE_RESULT_OK} (0) and a {@link android.app.PendingIntent} that you can use to start the purchase flow. To see all the possible response codes from Google Play, see <a href="{@docRoot}google/play/billing/billing_reference.html#billing-codes">In-app Billing Reference</a>. Next, extract a {@link android.app.PendingIntent} from the response {@link android.os.Bundle} with key {@code BUY_INTENT}.
+  If the request is successful, the returned {@link android.os.Bundle} has a
+  response code of {@code BILLING_RESPONSE_RESULT_OK} (0) and a {@link
+  android.app.PendingIntent} that you can use to start the purchase flow. To
+  see all the possible response codes from Google Play, see <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#billing-codes">In-app
+  Billing Reference</a>. Next, extract a {@link android.app.PendingIntent} from
+  the response {@link android.os.Bundle} with key {@code BUY_INTENT}.
 </p>
+
 <pre>
 PendingIntent pendingIntent = buyIntentBundle.getParcelable("BUY_INTENT");
 </pre>
+
 <p>
-To complete the purchase transaction, call the {@link android.app.Activity#startIntentSenderForResult startIntentSenderForResult} method and use the {@link android.app.PendingIntent} that you created. In this example, you are using an arbitrary value of 1001 for the request code.</p>
+  To complete the purchase transaction, call the {@link
+  android.app.Activity#startIntentSenderForResult startIntentSenderForResult}
+  method and use the {@link android.app.PendingIntent} that you created. In
+  this example, you are using an arbitrary value of 1001 for the request code.
+</p>
+
 <pre>
 startIntentSenderForResult(pendingIntent.getIntentSender(),
    1001, new Intent(), Integer.valueOf(0), Integer.valueOf(0),
    Integer.valueOf(0));
 </pre>
-<p>Google Play sends a response to your {@link android.app.PendingIntent} to the {@link android.app.Activity#onActivityResult onActivityResult} method of your application. The {@link android.app.Activity#onActivityResult onActivityResult} method will have a result code of {@code Activity.RESULT_OK} (1) or {@code Activity.RESULT_CANCELED} (0). To see the types of order information that is returned in the response {@link android.content.Intent}, see <a href="{@docRoot}google/play/billing/billing_reference.html#getBuyIntent">In-app Billing Reference</a>.</p>
 
-<p>The purchase data for the order is a String in JSON format that is mapped to the {@code INAPP_PURCHASE_DATA} key in the response {@link android.content.Intent}, for example:
+<p>
+  Google Play sends a response to your {@link android.app.PendingIntent} to the
+  {@link android.app.Activity#onActivityResult onActivityResult} method of your
+  application. The {@link android.app.Activity#onActivityResult
+  onActivityResult} method will have a result code of {@code
+  Activity.RESULT_OK} (1) or {@code Activity.RESULT_CANCELED} (0). To see the
+  types of order information that is returned in the response {@link
+  android.content.Intent}, see <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getBuyIntent">In-app
+  Billing Reference</a>.
+</p>
+
+<p>
+  The purchase data for the order is a String in JSON format that is mapped to
+  the {@code INAPP_PURCHASE_DATA} key in the response {@link
+  android.content.Intent}, for example:
+</p>
+
 <pre>
 '{
-   "orderId":"12999763169054705758.1371079406387615",
+   "orderId":"GPA.1234-5678-9012-34567",
    "packageName":"com.example.app",
    "productId":"exampleSku",
    "purchaseTime":1345678900000,
@@ -246,17 +429,22 @@
    "purchaseToken":<em>"opaque-token-up-to-1000-characters"</em>
  }'
 </pre>
+
+<p class="note">
+  <strong>Note:</strong> Google Play generates a token for the purchase. This
+  token is an opaque character sequence that may be up to 1,000 characters
+  long. Pass this entire token to other methods, such as when you consume the
+  purchase, as described in <a href=
+  "{@docRoot}training/in-app-billing/purchase-iab-products.html#Consume">Consume
+  a Purchase</a>. Do not abbreviate or truncate this token; you must save and
+  return the entire token.
 </p>
 
-<p class="note"><strong>Note:</strong> Google Play generates a token for the
-purchase. This token is an opaque character sequence that may be up to 1,000
-characters long. Pass this entire token to other methods, such as when you
-consume the purchase, as described in
-<a href="{@docRoot}training/in-app-billing/purchase-iab-products.html#Consume">Consume
-a Purchase</a>. Do not abbreviate or truncate this token; you must save and
-return the entire token.</p>
+<p>
+  Continuing from the previous example, you get the response code, purchase
+  data, and signature from the response {@link android.content.Intent}.
+</p>
 
-<p>Continuing from the previous example, you get the response code, purchase data, and signature from the response {@link android.content.Intent}.</p>
 <pre>
 &#64;Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
@@ -280,16 +468,59 @@
    }
 }
 </pre>
-<p class="note"><strong>Security Recommendation:</strong>  When you send a purchase request, create a String token that uniquely identifies this purchase request and include this token in the {@code developerPayload}.You can use a randomly generated string as the token. When you receive the purchase response from Google Play, make sure to check the returned data signature, the {@code orderId}, and the {@code developerPayload} String. For added security, you should perform the checking on your own secure server. Make sure to verify that the {@code orderId} is a unique value that you have not previously processed, and the {@code developerPayload} String matches the token that you sent previously with the purchase request.</p>
+
+<p class="note">
+  <strong>Security Recommendation:</strong> When you send a purchase request,
+  create a String token that uniquely identifies this purchase request and
+  include this token in the {@code developerPayload}.You can use a randomly
+  generated string as the token. When you receive the purchase response from
+  Google Play, make sure to check the returned data signature, the {@code
+  orderId}, and the {@code developerPayload} String. For added security, you
+  should perform the checking on your own secure server. Make sure to verify
+  that the {@code orderId} is a unique value that you have not previously
+  processed, and the {@code developerPayload} String matches the token that you
+  sent previously with the purchase request.
+</p>
 
 <h3 id="QueryPurchases">Querying for Purchased Items</h3>
-<p>To retrieve information about purchases made by a user from your app, call the {@code getPurchases} method on the In-app Billing Version 3 service. Pass in to the method the In-app Billing API version (“3”), the package name of your calling app, and the purchase type (“inapp” or "subs").</p>
+
+<p>
+  To retrieve information about purchases made by a user from your app, call
+  the {@code getPurchases} method on the In-app Billing Version 3 service. Pass
+  in to the method the In-app Billing API version (“3”), the package name of
+  your calling app, and the purchase type (“inapp” or "subs").
+</p>
+
 <pre>
 Bundle ownedItems = mService.getPurchases(3, getPackageName(), "inapp", null);
 </pre>
-<p>The Google Play service returns only the purchases made by the user account that is currently logged in to the device. If the request is successful, the returned {@link android.os.Bundle} has a response code of 0. The response {@link android.os.Bundle} also contains a list of the product IDs, a list of the order details for each purchase, and the signatures for each purchase.</p>
-<p>To improve performance, the In-app Billing service returns only up to 700 products that are owned by the user when {@code getPurchase} is first called. If the user owns a large number of products, Google Play includes a String token mapped to the key {@code INAPP_CONTINUATION_TOKEN} in the response {@link android.os.Bundle} to indicate that more products can be retrieved. Your application can then make a subsequent {@code getPurchases} call, and pass in this token as an argument. Google Play continues to return a continuation token in the response {@link android.os.Bundle} until all products that are owned by the user has been sent to your app.</p>
-<p>For more information about the data returned by {@code getPurchases}, see <a href="{@docRoot}google/play/billing/billing_reference.html#getPurchases">In-app Billing Reference</a>. The following example shows how you can retrieve this data from the response.
+
+<p>
+  The Google Play service returns only the purchases made by the user account
+  that is currently logged in to the device. If the request is successful, the
+  returned {@link android.os.Bundle} has a response code of 0. The response
+  {@link android.os.Bundle} also contains a list of the product IDs, a list of
+  the order details for each purchase, and the signatures for each purchase.
+</p>
+
+<p>
+  To improve performance, the In-app Billing service returns only up to 700
+  products that are owned by the user when {@code getPurchase} is first called.
+  If the user owns a large number of products, Google Play includes a String
+  token mapped to the key {@code INAPP_CONTINUATION_TOKEN} in the response
+  {@link android.os.Bundle} to indicate that more products can be retrieved.
+  Your application can then make a subsequent {@code getPurchases} call, and
+  pass in this token as an argument. Google Play continues to return a
+  continuation token in the response {@link android.os.Bundle} until all
+  products that are owned by the user has been sent to your app.
+</p>
+
+<p>For more information about the data returned by {@code getPurchases}, see
+  <a href="{@docRoot}google/play/billing/billing_reference.html#getPurchases">
+  In-app Billing Reference</a>. The following example shows how you can
+  retrieve this data from the response.
+</p>
+
 <pre>
 int response = ownedItems.getInt("RESPONSE_CODE");
 if (response == 0) {
@@ -302,7 +533,7 @@
    String continuationToken =
       ownedItems.getString("INAPP_CONTINUATION_TOKEN");
 
-   for (int i = 0; i < purchaseDataList.size(); ++i) {
+   for (int i = 0; i &lt; purchaseDataList.size(); ++i) {
       String purchaseData = purchaseDataList.get(i);
       String signature = signatureList.get(i);
       String sku = ownedSkus.get(i);
@@ -314,43 +545,76 @@
    // if continuationToken != null, call getPurchases again
    // and pass in the token to retrieve more items
 }
-
 </pre>
 
+
 <h3 id="Consume">Consuming a Purchase</h3>
-<p>You can use the In-app Billing Version 3 API to track the ownership of
-purchased in-app products in Google Play. Once an in-app product is purchased,
-it is considered to be "owned" and cannot be purchased from Google Play. You
-must send a consumption request for the in-app product before Google Play makes
-it available for purchase again.</p>
-<p class="caution"><strong>Important</strong>: Managed in-app products are
-consumable, but subscriptions are not.</p>
-<p>How you use the consumption mechanism in your app is up to you. Typically,
-you would implement consumption for in-app products with temporary benefits that
-users may want to purchase multiple times (for example, in-game currency or
-equipment). You would typically not want to implement consumption for in-app
-products that are purchased once and provide a permanent effect (for example,
-a premium upgrade).</p>
-<p>To record a purchase consumption, send the {@code consumePurchase} method to
-the In-app Billing service and pass in the {@code purchaseToken} String value
-that identifies the purchase to be removed. The {@code purchaseToken} is part
-of the data returned in the {@code INAPP_PURCHASE_DATA} String by the Google
-Play service following a successful purchase request. In this example, you are
-recording the consumption of a product that is identified with the
-{@code purchaseToken} in the {@code token} variable.</p>
+
+<p>
+  You can use the In-app Billing Version 3 API to track the ownership of
+  purchased in-app products in Google Play. Once an in-app product is
+  purchased, it is considered to be "owned" and cannot be purchased from Google
+  Play. You must send a consumption request for the in-app product before
+  Google Play makes it available for purchase again.
+</p>
+
+<p class="caution">
+  <strong>Important</strong>: Managed in-app products are consumable, but
+  subscriptions are not.
+</p>
+
+<p>
+  How you use the consumption mechanism in your app is up to you. Typically,
+  you would implement consumption for in-app products with temporary benefits
+  that users may want to purchase multiple times (for example, in-game currency
+  or equipment). You would typically not want to implement consumption for
+  in-app products that are purchased once and provide a permanent effect (for
+  example, a premium upgrade).
+</p>
+
+<p>
+  To record a purchase consumption, send the {@code consumePurchase} method to
+  the In-app Billing service and pass in the {@code purchaseToken} String value
+  that identifies the purchase to be removed. The {@code purchaseToken} is part
+  of the data returned in the {@code INAPP_PURCHASE_DATA} String by the Google
+  Play service following a successful purchase request. In this example, you
+  are recording the consumption of a product that is identified with the {@code
+  purchaseToken} in the {@code token} variable.
+</p>
+
 <pre>
 int response = mService.consumePurchase(3, getPackageName(), token);
 </pre>
-<p class="note"><strong>Warning:</strong> Do not call the {@code consumePurchase} method on the main thread.  Calling this method triggers a network request which could block your main thread.  Instead, create a separate thread and call the {@code consumePurchase} method from inside that thread.</p>
-<p>It's your responsibility to control and track how the in-app product is provisioned to the user. For example, if the user purchased in-game currency, you should update the player's inventory with the amount of currency purchased.</p>
-<p class="note"><strong>Security Recommendation:</strong> You must send a consumption request before provisioning the benefit of the consumable in-app purchase to the user. Make sure that you have received a successful consumption response from Google Play before you provision the item.</p>
+
+<p class="note">
+  <strong>Warning:</strong> Do not call the {@code consumePurchase} method on
+  the main thread. Calling this method triggers a network request which could
+  block your main thread. Instead, create a separate thread and call the {@code
+  consumePurchase} method from inside that thread.
+</p>
+
+<p>
+  It's your responsibility to control and track how the in-app product is
+  provisioned to the user. For example, if the user purchased in-game currency,
+  you should update the player's inventory with the amount of currency
+  purchased.
+</p>
+
+<p class="note">
+  <strong>Security Recommendation:</strong> You must send a consumption request
+  before provisioning the benefit of the consumable in-app purchase to the
+  user. Make sure that you have received a successful consumption response from
+  Google Play before you provision the item.
+</p>
 
 <h3 id="Subs">Implementing Subscriptions</h3>
+
 <p>Launching a purchase flow for a subscription is similar to launching the
 purchase flow for a product, with the exception that the product type must be set
 to "subs". The purchase result is delivered to your Activity's
 {@link android.app.Activity#onActivityResult onActivityResult} method, exactly
 as in the case of in-app products.</p>
+
 <pre>
 Bundle bundle = mService.getBuyIntent(3, "com.example.myapp",
    MY_SKU, "subs", developerPayload);
@@ -363,12 +627,15 @@
        Integer.valueOf(0), Integer.valueOf(0), Integer.valueOf(0));
 }
 </pre>
+
 <p>To query for active subscriptions, use the {@code getPurchases} method, again
 with the product type parameter set to "subs".</p>
+
 <pre>
 Bundle activeSubs = mService.getPurchases(3, "com.example.myapp",
                    "subs", continueToken);
 </pre>
+
 <p>The call returns a {@code Bundle} with all the active subscriptions owned by
 the user. Once a subscription expires without renewal, it will no longer appear
 in the returned {@code Bundle}.</p>
@@ -383,7 +650,7 @@
 
 <p class="note"><strong>Note:</strong>To find the public key portion of this key
 pair, open your application's details in the Developer Console, then click on
-<strong>Services & APIs</strong>, and look at the field titled
+<strong>Services &amp; APIs</strong>, and look at the field titled
 <strong>Your License Key for This Application</strong>.</p>
 
 <p>The Base64-encoded RSA public key generated by Google Play is in binary
@@ -399,13 +666,5 @@
 verification on that server.</p>
 
 <p>For more information about best practices for security and design, see <a
-href="{@docRoot}google/play/billing/billing_best_practices.html">Security and Design</a>.</p>
-
-
-
-
-
-
-
-
-
+href="{@docRoot}google/play/billing/billing_best_practices.html">Security and
+Design</a>.</p>
diff --git a/docs/html/google/play/billing/billing_overview.jd b/docs/html/google/play/billing/billing_overview.jd
index 732e328..cc56468 100644
--- a/docs/html/google/play/billing/billing_overview.jd
+++ b/docs/html/google/play/billing/billing_overview.jd
@@ -29,7 +29,13 @@
   </ol>
    <h2>Related Samples</h2>
   <ol>
-    <li><a href="{@docRoot}training/in-app-billing/preparing-iab-app.html#GetSample">Sample Application (V3)</a></li>
+    <li><a href="{@docRoot}training/in-app-billing/preparing-iab-app.html#GetSample">Sample
+      Application (V3)</a></li>
+  </ol>
+   <h2>Related Videos</h2>
+  <ol>
+    <li><a href="https://www.youtube.com/watch?v=UvCl5Xx7Z5o">Implementing
+      Freemium</a></li>
   </ol>
 </div>
 </div>
@@ -40,12 +46,13 @@
 
 <p class="note"><b>Note</b>: Ensure that you comply with applicable laws in the countries where you
 distribute apps. For example, in EU countries, laws based on the
-<a href="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=OJ:L:2005:149:0022:0039:EN:PDF">Unfair
-Commercial Practices Directive</a> prohibit direct exhortations to children to buy advertised
+<a href="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=OJ:L:2005:149:0022:0039:EN:PDF">
+Unfair Commercial Practices Directive</a> prohibit direct exhortations to children to buy advertised
 products or to persuade their parents or other adults to buy advertised products for them.
 See the
-<a href="http://ec.europa.eu/consumers/enforcement/docs/common_position_on_online_games_en.pdf">position
-of the EU consumer protection authorities</a> for more information on this and other topics.
+<a href="http://ec.europa.eu/consumers/enforcement/docs/common_position_on_online_games_en.pdf">
+position of the EU consumer protection authorities</a> for more information on this and other
+topics.
 </p>
 
 <h2 id="api">In-app Billing API</h2>
@@ -65,7 +72,9 @@
 <p>In-app billing Version 3 is the latest version, and maintains very broad
 compatibility across the range of Android devices. In-app Billing Version 3 is
 supported on devices running Android 2.2 or higher that have the latest version
-of the Google Play store installed (<a href="{@docRoot}about/dashboards/index.html">a vast majority</a> of active devices).</p>
+of the Google Play store installed (<a
+href="{@docRoot}about/dashboards/index.html">a vast majority</a> of active
+devices).</p>
 
 <h4>Version 3 features</h4>
 <ul>
@@ -107,7 +116,9 @@
 <p>You can specify these types of products for your In-app Billing application
 — <em>managed in-app products</em> and <em>subscriptions</em>. Google Play
 handles and tracks ownership for in-app products and subscriptions on your
-application on a per user account basis. <a href="{@docRoot}google/play/billing/api.html#producttypes">Learn more about the product types supported by In-app Billing Version 3</a>.</p>
+application on a per user account basis.
+<a href="{@docRoot}google/play/billing/api.html#producttypes">Learn more about
+the product types supported by In-app Billing Version 3</a>.</p>
 
 <h2 id="console">Google Play Developer Console</h2>
 <p>The Developer Console is where you can publish your
@@ -146,7 +157,9 @@
 provides a sample application that demonstrates how to sell in-app products and subscriptions
 from inside an app.</p>
 
-<p>The <a href="{@docRoot}training/in-app-billing/preparing-iab-app.html#GetSample">TrivialDrive sample for the Version 3 API</a> sample shows how to use the In-app Billing Version 3 API
+<p>The <a href="{@docRoot}training/in-app-billing/preparing-iab-app.html#GetSample">
+TrivialDrive sample for the Version 3 API</a> sample shows how to use the In-app
+Billing Version 3 API
 to implement in-app product and subscription purchases for a driving game. The
 application demonstrates how to send In-app Billing requests, and handle
 synchronous responses from Google Play. The application also shows how to record
@@ -160,7 +173,7 @@
 and Design</a>.</p>
 
 <h2 id="migration">Migration Considerations</h2>
-<p>The In-app Billing Version 2 API is deprecated and will be discontinued in January 2015.
+<p>The In-app Billing Version 2 API was discontinued in January 2015.
 If you have an existing In-app Billing implementation that uses API Version 2 or
 earlier, you must migrate to <a href="{@docRoot}google/play/billing/api.html">In-app Billing Version
 3</a>.</p>
@@ -173,11 +186,5 @@
 treated as managed products if you make a purchase request for these items using
 the Version 3 API. You do not need to create a new product entry in Developer
 Console for these items, and you can use the same product IDs to purchase these
-items. They will still continue to be treated as unmanaged items if you make a
-purchase request for them using the Version 2 or earlier API.
+items.
 </ul>
-
-
-
-
-
diff --git a/docs/html/google/play/billing/billing_promotions.jd b/docs/html/google/play/billing/billing_promotions.jd
new file mode 100644
index 0000000..ccf50fc
--- /dev/null
+++ b/docs/html/google/play/billing/billing_promotions.jd
@@ -0,0 +1,301 @@
+page.title=In-app Promotions
+parent.title=In-app Billing
+parent.link=index.html
+page.metaDescription=Support promo codes in your app, which let you give content or features away to a limited number of users free of charge.
+page.image=/images/play_dev.jpg
+page.tags="promotions, billing, promo codes"
+meta.tags="monetization, inappbilling, promotions"
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>Quickview</h2>
+  <h2>In this document</h2>
+  <ol>
+    <li><a href="#workflow">Creating and Redeeming Promo Codes</a></li>
+    <li><a href="#supporting">Supporting Promo Codes In Your App</a></li>
+    <li><a href="#testing">Testing In-app Promotions</a></li>
+  </ol>
+  <h2>See also</h2>
+  <ol>
+    <li><a href="{@docRoot}google/play/billing/billing_integrate.html">Implementing
+    In-app Billing</a></li>
+    <!-- TODO: link to blog post when available -->
+  </ol>
+</div>
+</div>
+
+<p>
+  Promo codes let you give content or features away to a limited number of
+  users free of charge. Once you create a promo code, you can distribute it
+  subject to the
+  <!--TODO: Link to TOS when/if they're available as a web page --> terms of
+  service. The user enters the promo code in your app or in the Play Store app,
+  and gets the item at no cost. You can use promo codes in many ways to
+  creatively engage with users. For example:
+</p>
+
+<ul>
+  <li>A game could have a special item, such as a character or decoration,
+  that's only available to players who attend an event. The developer could
+  distribute cards with promo codes at the event, and users would enter their
+  promo code to unlock the item.
+  </li>
+
+  <li>An app developer might distribute promo codes at local businesses, to
+  encourage potential users to try the app.
+  </li>
+
+  <li>An app developer might give out "friends and family" codes to its employees to
+  share with their friends.
+  </li>
+</ul>
+
+<p>
+  Every promo code is associated with a particular <em>product ID</em> (also
+  known as a <em>SKU</em>). You can create promo codes for your existing in-app
+  products. You can also keep a SKU off the Play Store, so the only way to get
+  that item is by entering that SKU's promo code. When a user enters the promo
+  code in the Play Store or in their app, the user gets the item, just as if
+  they paid full price for it. If your app already uses <a href=
+  "{@docRoot}google/play/billing/api.html">In-app Billing version 3</a> to
+  support in-app purchases, it's easy to add support for promo codes.
+</p>
+
+<h2 id="workflow">Creating and Redeeming Promo Codes</h2>
+
+<p>
+  You create promo codes through the <a href=
+  "https://play.google.com/apps/publish/" class="external-link">Google Play
+  Developer Console</a>. Each promo code is associated with a single product item
+  registered in the developer console.
+</p>
+
+<p>
+  When a user gets a promo code, they redeem it in one of two ways:
+</p>
+
+<ul>
+  <li>The user can enter the promo code as part of the app's ordinary purchase flow, as
+  described in <a href="{@docRoot}google/play/billing/billing_integrate.html">
+  Implementing In-app Billing</a>. As far as the app is concerned, this is
+  just like an ordinary purchase, except that the user makes payment with a
+  promo code instead of with money.
+  </li>
+
+  <li>The user can redeem the code in the Google Play Store app. Once the user
+  enters the code, the Play Store prompts the user to open the app (if they have
+  the latest version installed) or to download or update it. (We do not
+  currently support redeeming promo codes from the Google Play web store.)
+  </li>
+</ul>
+
+<p>
+  If the promo code is for a <a href=
+  "{@docRoot}google/play/billing/api.html#consumetypes">consumable product</a>,
+  the user can apply an additional code for the same product <em>after</em> the first
+  product is consumed. For example, a game might offer promo codes for a bundle
+  of extra lives. Betty has two different promo codes for that bundle. She
+  redeems a single promo code, then launches the game. When the game launches,
+  the her character receives the lives, consuming the item. She can now redeem
+  the second promo code for another bundle of lives. (She cannot redeem the
+  second promo code until after she consumes the item she purchased with the
+  first promo code.)
+</p>
+
+<h2 id="supporting">Supporting Promo Codes In Your App</h2>
+
+<p>
+  To support promotion codes, your app should call the <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a>
+  method whenever the app starts or resumes. This method returns a bundle of all
+  current, unconsumed purchases, including purchases the user made by redeeming
+  a promo code. This simplest approach is to call <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a>
+  in your activity's {@link android.app.Activity#onResume onResume()} method,
+  since that callback fires when the activity is created, as well as when the
+  activity is unpaused. Calling <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a>
+  on startup and resume guarantees that your app will find out about all
+  purchases and redemptions the user may have made while the app wasn't
+  running. Furthermore, if a user makes a purchase while the app is running and
+  your app misses it for any reason, your app will still find out about the
+  purchase the next time the activity resumes and calls <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a>.
+</p>
+
+<p>
+  In addition, your app should allow users to redeem promo codes inside the app
+  itself. If your app supports the in-app purchase workflow (described in
+  <a href=
+  "{@docRoot}google/play/billing/billing_integrate.html#billing-requests">Making
+  In-app Billing Requests</a>), your app automatically supports in-app
+  redemption of promo codes. When you launch the in-app purchase UI,
+  the user has the option to pay for the purchase with
+  a promo code. Your activity's {@link android.app.Activity#onActivityResult
+  onActivityResult()} method receives a response intent telling the app whether the
+  purchase was completed. However, your app should still call <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a>
+  on startup and resume, just in case the purchase and consumption workflow
+  didn't complete. For example, if the user successfully redeems a promo code,
+  and then your app crashes before the item is consumed, your app still gets
+  information about the purchase when the app calls <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a> on its next startup.
+</p>
+
+<p>
+  Your app should also support the scenario where a user redeems a promo code
+  in the Play Store app while the app is running. Your app can find out right
+  away when the user redeems a code by registering a listener for the
+  <code>PURCHASES_UPDATED</code> intent. The Play Store fires this intent
+  whenever a user redeems a promo code.
+</p>
+
+<p>
+  To listen for the <code>PURCHASES_UPDATED</code> intent, dynamically create a
+  {@link android.content.BroadcastReceiver} object and register it to listen
+  for <code>"com.android.vending.billing.PURCHASES_UPDATED"</code>. Register
+  the receiver by putting code like this in your activity's {@link
+  android.app.Activity#onResume onResume()} method:
+</p>
+
+<pre>IntentFilter promoFilter =
+    new IntentFilter("com.android.vending.billing.PURCHASES_UPDATED");
+registerReceiver(myPromoReceiver, promoFilter);</pre>
+
+<p>
+  When the user makes a purchase, the system invokes your broadcast receiver's
+  {@link android.content.BroadcastReceiver#onReceive onReceive()} method. That
+  method should call <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a>
+  to see what purchases the user has made.
+</p>
+
+<p>
+  Your activity's {@link android.app.Activity#onPause onPause()} method should
+  unregister the broadcast receiver, to reduce system overhead when your app
+  isn't running:
+</p>
+
+<pre>unRegisterReceiver(myPromoReceiver);</pre>
+
+<p class="note">
+  <strong>Note:</strong> You should not register this broadcast receiver in the
+  app manifest. Declaring the receiver in the manifest can cause the system to
+  launch the app to handle the intent if the user makes a purchase while the app
+  isn't running. This behavior is not necessary, and may be annoying to the
+  user. Instead, your app should call <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a>
+  when the user launches it, to find out about any purchases the user made
+  while the app wasn't running.
+</p>
+
+<h2 id="testing">Testing In-app Promotions</h2>
+
+<p>
+  If your app supports in-app promotions, you should test the following use
+  cases.
+</p>
+
+<h3 id="test-inapp">User redeems promo code in the app</h3>
+
+<p>
+  If the user redeems a promo code within the app's purchase flow, as described
+  in <a href=
+  "{@docRoot}google/play/billing/billing_integrate.html#billing-requests">Making
+  In-app Billing Requests</a>, the system invokes your activity's {@link
+  android.app.Activity#onActivityResult onActivityResult()} method to handle
+  the purchase. Verify that {@link android.app.Activity#onActivityResult
+  onActivityResult()} handles the purchase properly, whether the user uses cash
+  or a promo code.
+</p>
+
+<h3 id="test-playstore">User redeems promo code in the Play Store</h3>
+
+<p>
+  If the user redeems a promo code in the Play Store, there are several
+  possible workflows. You should verify each one of these.
+</p>
+
+<h4 id="test-app-uninstalled">App is not installed</h4>
+
+<p>
+  If the user redeems a promo code for an app that is not installed on the
+  device, the Play Store prompts the user to install the app. (If the app is
+  installed but not up-to-date, the Play Store prompts the user to update the
+  app.) You should test the following sequence on a device that does not
+  have your app installed.
+</p>
+
+<ol>
+  <li>User redeems a promo code for the app in the Play Store. The Play Store
+  prompts the user to install your app.
+  </li>
+
+  <li>User installs and launches your app. Verify that on startup, the app
+  calls <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a>
+  and correctly detects the purchase the user made with the promo code.
+  </li>
+</ol>
+
+<h4 id="test-app-not-running">App is installed, but not running</h4>
+
+<p>
+  If the user redeems a promo code for an app that is installed on the device,
+  the Play Store prompts the user to switch to the app.  You should test the
+  following sequence on a device that has your app installed but not running:
+</p>
+
+<ol>
+  <li>User redeems a promo code for the app in the Play Store. The Play Store
+  prompts the user to switch to your app.
+  </li>
+
+  <li>User launches your app. Verify that on startup, the app calls <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a>
+  and correctly detects the purchase the user made with the promo code.
+  </li>
+</ol>
+
+<h4 id="test-app-running">App is installed and running
+</h4>
+
+<p>
+  If the user redeems a promo code for an app that is currently running on the
+  device, the Play Store notifies the app via a <code>PURCHASES_UPDATED</code>
+  intent. You should test the following sequence:
+</p>
+
+<ol>
+  <li>User launches the app. Verify that the app has properly registered itself to
+  receive the <code>PURCHASES_UPDATED</code> intent.
+  </li>
+
+  <li>User launches the Play Store app and redeems a promo code for the app. The Play
+  Store fires a <code>PURCHASES_UPDATED</code> intent. Verify that your app's
+  {@link android.content.BroadcastReceiver#onReceive
+  BroadcastReceiver.onReceive()} callback fires to handle the intent.
+  </li>
+
+  <li>Your {@link android.content.BroadcastReceiver#onReceive onReceive()}
+  method should respond to the intent by calling <a href=
+  "{@docRoot}google/play/billing/billing_reference.html#getPurchases"
+  ><code>getPurchases()</code></a>. Verify that it calls this method, and that
+  it correctly detects the purchase the user made with the promo code.
+  </li>
+
+  <li>User switches back to your app. Verify that the user has the purchased
+  item.
+  </li>
+</ol>
diff --git a/docs/html/google/play/billing/billing_reference.jd b/docs/html/google/play/billing/billing_reference.jd
index b06d874..45ec785 100644
--- a/docs/html/google/play/billing/billing_reference.jd
+++ b/docs/html/google/play/billing/billing_reference.jd
@@ -29,11 +29,17 @@
   </ol>
 </div>
 </div>
-<p>This documentation provides technical reference information for using the In-app Billing Version 3 API. </p>
+<p>This documentation provides technical reference information for using the
+In-app Billing Version 3 API. </p>
 
 <h2 id="billing-codes">Server Response Codes</h2>
-<p>The following table lists all of the server response codes that are sent from Google Play to your application. Google Play sends the response code synchronously as an integer mapped to the {@code RESPONSE_CODE} key in the response {@code Bundle}. Your application must handle all of these response codes.</p>
-
+<p>
+  The following table lists all of the server response codes that are sent from
+  Google Play to your application. Google Play sends the response code
+  synchronously as an integer mapped to the {@code RESPONSE_CODE} key in the
+  response {@code Bundle}. Your application must handle all of these response
+  codes.
+</p>
 <p class="table-caption" id="response-codes-table">
 <strong>Table 1.</strong> Summary of response codes for In-app Billing Version 3 API calls.</p>
 <table>
@@ -70,7 +76,10 @@
   <tr>
     <td>{@code BILLING_RESPONSE_RESULT_DEVELOPER_ERROR}</td>
     <td>5</td>
-    <td>Invalid arguments provided to the API. This error can also indicate that the application was not correctly signed or properly set up for In-app Billing in Google Play, or does not have the necessary permissions in its manifest</td>
+    <td>Invalid arguments provided to the API. This error can also indicate that
+    the application was not correctly signed or properly set up for In-app
+    Billing in Google Play, or does not have the necessary permissions in its
+    manifest</td>
   </tr>
   <tr>
     <td>{@code BILLING_RESPONSE_RESULT_ERROR}</td>
@@ -90,13 +99,23 @@
 </table>
 
 <h2 id="billing-interface">API Reference</h2>
-<p>The In-app Billing Version 3 API is defined in the {@code IInAppBillingService.aidl} file, which is included with the Version 3 <a href="{@docRoot}training/in-app-billing/preparing-iab-app.html#GetSample">sample application</a>.</p>
+<p>The In-app Billing Version 3 API is defined in the {@code
+  IInAppBillingService.aidl} file, which is included with the Version 3
+  <a href="{@docRoot}training/in-app-billing/preparing-iab-app.html#GetSample">
+  sample application</a>.</p>
 
 <h3 id="getSkuDetails">The getSkuDetails() method</h3>
-<p>This method returns product details for a list of product IDs. In the response {@code Bundle} sent by Google Play, the query results are stored in a String {@code ArrayList} mapped to the {@code DETAILS_LIST} key. Each String in the details list contains product details for a single product in JSON format. The fields in the JSON string with the product details are summarized in table 2.</p>
-
+<p>
+  This method returns product details for a list of product IDs. In the
+  response {@code Bundle} sent by Google Play, the query results are stored in
+  a String {@code ArrayList} mapped to the {@code DETAILS_LIST} key. Each
+  String in the details list contains product details for a single product in
+  JSON format. The fields in the JSON string with the product details are
+  summarized in table 2.
+</p>
 <p class="table-caption" id="product-details-table">
-<strong>Table 2.</strong> Description of JSON fields with product item details returned from a {@code getSkuDetails} request.</p>
+<strong>Table 2.</strong> Description of JSON fields with product item details
+returned from a {@code getSkuDetails} request.</p>
 <table>
   <tr>
     <th scope="col">Key</th>
@@ -179,7 +198,8 @@
 </table>
 </p>
 
-<p>Table 4 describes the JSON fields that are returned in the response data for a purchase order.</p>
+<p>Table 4 describes the JSON fields that are returned in the response data for
+a purchase order.</p>
 <p class="table-caption" id="purchase-data-table">
 <strong>Table 4.</strong>  Descriptions of the JSON fields for {@code INAPP_PURCHASE_DATA}.</p>
 <table>
@@ -208,7 +228,9 @@
   <tr>
     <td>{@code orderId}</td>
     <td>A unique order identifier for the transaction. This identifier
-      corresponds to the Google payments order ID.</td>
+      corresponds to the Google payments order ID. If the order is a test
+      purchase made through the In-app Billing Sandbox, {@code orderId} is
+      blank.</td>
   </tr>
   <tr>
     <td>{@code packageName}</td>
@@ -216,7 +238,9 @@
   </tr>
   <tr>
     <td>{@code productId}</td>
-    <td>The item's product identifier. Every item has a product ID, which you must specify in the application's product list on the Google Play Developer Console.</td>
+    <td>The item's product identifier. Every item has a product ID, which you
+      must specify in the application's product list on the Google Play
+      Developer Console.</td>
   </tr>
   <tr>
     <td>{@code purchaseTime}</td>
@@ -304,7 +328,11 @@
 </p>
 
 <h3 id="getPurchases">The getPurchases() method</h3>
-<p>This method returns the current un-consumed products owned by the user. Table 5 lists the response data that is returned in the {@code Bundle}.</p>
+<p>This method returns the current un-consumed products owned by the user,
+  including both purchased items and items acquired by redeeming a promo code.
+  Table 5 lists the response data that is returned in the
+  {@link android.os.Bundle}.</p>
+
 <p class="table-caption" id="getpurchases-response-table">
 <strong>Table 6.</strong> Response data from a {@code getPurchases} request.</p>
 <table>
@@ -330,8 +358,13 @@
   </tr>
   <tr>
     <td>{@code INAPP_CONTINUATION_TOKEN}</td>
-    <td>String containing a continuation token to retrieve the next set of in-app products owned by the user. This is only set by the Google Play service if the number of products owned by the user is very large. When a continuation token is present in the response, you must make another call to {@code getPurchases} and pass in the continuation token that you received. The subsequent {@code getPurchases} call returns more purchases and possibly another continuation token.</td>
+    <td>String containing a continuation token to retrieve the next set of
+      in-app products owned by the user. This is only set by the Google Play
+      service if the number of products owned by the user is very large. When a
+      continuation token is present in the response, you must make another call
+      to {@code getPurchases} and pass in the continuation token that you
+      received. The subsequent {@code getPurchases} call returns more purchases
+      and possibly another continuation token.</td>
   </tr>
 </table>
 </p>
-
diff --git a/docs/html/google/play/billing/billing_subscriptions.jd b/docs/html/google/play/billing/billing_subscriptions.jd
index 13660b0..069947d 100644
--- a/docs/html/google/play/billing/billing_subscriptions.jd
+++ b/docs/html/google/play/billing/billing_subscriptions.jd
@@ -21,8 +21,10 @@
   </ol>
   <h2>See also</h2>
   <ol>
-    <li><a href="{@docRoot}google/play/billing/billing_integrate.html#Subs">Implementing Subscriptions (V3)</a></li>
-    <li><a href="https://developers.google.com/android-publisher/">Google Play Developer API</a></li>
+    <li><a href="{@docRoot}google/play/billing/billing_integrate.html#Subs">Implementing
+    Subscriptions (V3)</a></li>
+    <li><a href="https://developers.google.com/android-publisher/">Google Play
+    Developer API</a></li>
   </ol>
 </div>
 </div>
@@ -109,11 +111,12 @@
 <p>In general the same basic policies and terms apply to subscriptions as to
 standard in-app products, however there are some differences. For complete
 information about the current policies and terms, please read the <a
-href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en
-&answer=140504">policies document</a>.</p>
+href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=140504">
+policies document</a>.</p>
 
 <p>To learn about the minimum system requirements for
-subscriptions, see the <a href="{@docRoot}google/play/billing/versions.html#Subs">Version Notes</a>.</p>
+subscriptions, see the <a href="{@docRoot}google/play/billing/versions.html#Subs">
+Version Notes</a>.</p>
 
 <h2 id="administering">Configuring Subscription Items</h2>
 
@@ -167,9 +170,14 @@
   <li>Monthly &mdash; Google Play bills the customer’s Google payments account at
   the time of purchase and monthly subsequent to the purchase date (exact billing
   intervals can vary slightly over time).</li>
+  <li>3 Months &mdash; Google Play bills the customer’s Google payments account at
+  the time of purchase and every three months after that (exact billing
+  intervals can vary slightly over time).</li>
+  <li>6 Months &mdash; Google Play bills the customer’s Google payments account at
+  the time of purchase and every six months after that (exact billing
+  intervals can vary slightly over time).</li>
   <li>Annually &mdash; Google Play bills the customer's Google payments account at
   the time of purchase and again on the same date in subsequent years.</li>
-
   <li>Seasonal &mdash; Google Play bills the customer's Google payments account at
   the beginning of each "season" (you specify the season beginning and end
   dates). This
@@ -194,15 +202,8 @@
 href="{@docRoot}google/play/developer-api.html">Google Play Developer API</a>.</p>
 
 <p>If a recurring payment fails (for example, because the customer’s credit
-card has become invalid), the subscription does not renew. How your app is
-notified depends on the In-app Billing API version that you are using:</p>
-<ul>
-<li>With In-app Billing Version 3, the failed or expired subscription is no longer
-returned when you call {@code getPurchases}.</li>
-<li>With In-app Billing Version 2, Google Play notifies your app at the end of
-the active cycle that the purchase state of the subscription is now "Expired".
-</li>
-</ul>
+card has become invalid), the subscription does not renew. The {@code
+getPurchases()} method does not return failed or expired subscriptions.</p>
 
 <p class="note"><strong>Recommendation</strong>: Include business logic in your
 app to notify your backend servers of subscription purchases, tokens, and any
@@ -312,7 +313,8 @@
 try your subscription content before buying it. The trial period runs for the
 period of time that you set and then automatically converts to a full
 subscription managed according to the subscription's billing interval and
-price. Free trials are supported for monthly and annual subscriptions only, and are not supported for seasonal subscriptions.</p>
+price. Google Play supports free trials for all subscription types, including
+seasonal subscriptions.</p>
 
 <p>To take advantage of a free trial, a user must "purchase" the full
 subscription through the standard In-app Billing flow, providing a valid form of
@@ -330,10 +332,10 @@
 the amount set
 for the full subscription, and continuing at the subscription interval. If
 necessary, the user can cancel the subscription at any time during the trial
-period. In this case, Google Play <em>marks the subscription as expired immediately</em>,
-rather than waiting until the end of the trial period. The user has not
-paid for the trial period and so is not entitled to continued access after
-cancellation.</p>
+period. In this case, the subscription remains active until the end of the
+trial period, but Google Play sets the subscription <em>not</em> to renew
+automatically; at the end of the trial period the subscription expires, and
+Google Play does not charge the user.</p>
 
 <p>You can set up a trial period for a subscription in the Developer Console,
 without needing to modify or update your APK. Just locate and edit the
@@ -369,6 +371,24 @@
 product from the product list offered in your app to prevent users from seeing
 or purchasing it.</p>
 
+<h3 id="prorate">Prorated Seasonal Subscription Prices</h3>
+
+<p>You can set up prorated prices for users who buy seasonal subscriptions
+after the season's start date. You specify the date on which the discounted
+price takes effect. The discounted price takes effect at 0:00 UTC on
+the specified date. You can set multiple prorated prices, dropping the
+subscription price lower and lower as the season goes on. If a user purchases
+a prorated seasonal subscription and remains subscribed until the start of the
+next season, Google Play charges them the full subscription price when the next
+season starts.</p>
+
+<p>For example, the professional checkers season runs from March 1 to August 31.
+The <em>Checkers Dilettante</em> app offers a seasonal subscription for €10. The
+app also offers two prorated prices: €7.50 for users who sign up on or after
+June 1, and €5 for users who sign up on or after
+August 15. Regardless of when the user signs up, the seasonal subscription ends
+on August 31.</p>
+
 <h2 id="cancellation">Subscription Cancellation</h2>
 
 <p>Users can view the status of all of their subscriptions and cancel them if
@@ -398,7 +418,8 @@
 refund their subscription payments.
 Removing content that any subscriber is entitled to access
 will result in penalties. Please see the <a
-href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=140504">policies document</a> for more information. </p>
+href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=140504">
+policies document</a> for more information. </p>
 
 <h3 id="uninstall">App uninstallation</h3>
 
@@ -443,8 +464,8 @@
 outside of the app and Google Play (such as to a web site).</p>
 
 <p>For complete details about terms and policies, see the <a
-href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=140504">policies
-document</a>.</p>
+href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=140504">
+policies document</a>.</p>
 
 <h3 id="orderId">Subscription order numbers</h3>
 
@@ -453,10 +474,11 @@
 subscription and denotes
 each recurring transaction by appending an integer as follows: </p>
 
-<p><span style="color:#777"><code style="color:#777">12999556515565155651.5565135565155651</code> (base order number)</span><br />
-<code>12999556515565155651.5565135565155651..0</code> (first recurrence orderID)<br />
-<code>12999556515565155651.5565135565155651..1</code> (second recurrence orderID)<br />
-<code>12999556515565155651.5565135565155651..2</code> (third recurrence orderID)<br />
+<p><span style="color:#777"><code style="color:#777">GPA.1234-5678-9012-34567</code>
+(base order number)</span><br />
+<code>GPA.1234-5678-9012-34567..0</code> (first recurrence orderID)<br />
+<code>GPA.1234-5678-9012-34567..1</code> (second recurrence orderID)<br />
+<code>GPA.1234-5678-9012-34567..2</code> (third recurrence orderID)<br />
 ...<br /></p>
 
 <p>Google Play provides the order number as the value of the
diff --git a/docs/html/google/play/billing/billing_testing.jd b/docs/html/google/play/billing/billing_testing.jd
index f0eb254..018276d 100644
--- a/docs/html/google/play/billing/billing_testing.jd
+++ b/docs/html/google/play/billing/billing_testing.jd
@@ -26,16 +26,27 @@
 
 <ul>
 <li>Test purchases, which let license-test users purchase your published in-app
-    items, but without any actual charges to their accounts.</li>
+    items, without any actual charges to their accounts.</li>
 <li>Static billing responses from Google Play, for testing in early development</p>
 </ul>
 
-<p>To test In-app Billing in an application you must install the application on an Android-powered
-device. You cannot use the Android emulator to test In-app Billing.  The device you use for testing
-must run a standard version of the Android 1.6 or later platform (API level 4 or higher), and have
-the most current version of the Google Play application installed. If a device is not running the
-most current Google Play application, your application won't be able to send In-app Billing
-requests to Google Play. For general information about how to set up a device for use in
+<p>To test in-app billing, you need to publish your app to an <a
+href="https://support.google.com/googleplay/android-developer/answer/3131213">alpha
+or beta channel in Google Play.</a></p>
+
+<p>After you publish an app to an alpha or beta channel, it can take a few hours
+for the app to be available for testers. The version code of an APK on a test device
+must match the version currently uploaded to the alpha or beta channel on Google Play.</p>
+
+<p class="caution"><strong>Important</strong>: To test in-app products or make in-app
+purchases in your alpha or beta channel app, each tester
+needs to <a href="https://support.google.com/googleplay/android-developer/answer/3131213">opt-in
+to your app’s alpha or beta test</a>. On your test’s opt-in URL, your
+testers will get an explanation of what it means to be a tester and a link to opt-in.</p>
+
+<p>You can test on any Android-powered hardware device running Android 1.6 or higher.
+The most current version of the Google Play application must be installed on the device.
+For general information about how to set up a device for use in
 developing Android applications, see <a href="{@docRoot}tools/device.html">Using Hardware
 Devices</a>.</p>
 
@@ -43,18 +54,23 @@
 
 <p>When your In-app Billing implementation is ready, you can test purchasing of your in-app SKUs in two ways:</p>
 
-<ul> <li><strong>Test purchases</strong>, which let your selected license-test
+<ul>
+<li><strong>Test purchases</strong>, which let your selected license-test
 users purchase your in-app products without any resulting charges to the user.
-Test purchases can be used in alpha/beta releases or in published apps. </li>
+Test purchases can be used in alpha/beta releases only. </li>
 <li><strong>Real purchases</strong>, which let regular users make real purchases
-of your in-app products with actual charges to the user’s payment instruments.
-You can use Google Play’s alpha and beta release groups to manage
-the users who can make live purchases using your implementation.  </li>
+of your in-app products with actual charges to the user’s payment instruments.</li>
 </ul>
 
-<p>The sections below provide more detail about how to use these approaches for
+<p>In either case, you need to publish your app to Google Play's
+<a href="https://support.google.com/googleplay/android-developer/answer/3131213">alpha
+  and beta release channels</a> to manage the users who can make purchases.</p>
+
+  <p>The sections below provide more detail about how to use these approaches for
 testing and validation. </p>
 
+
+
 <h3 id="test-purchases">Test Purchases (In-app Billing Sandbox)</h3>
 
 <p>Test purchases offer a secure, convenient way to enable larger-scale testing
@@ -66,15 +82,18 @@
 <p>Once authorized for testing access, those users can make purchases without
 being charged.
 Test purchases are real orders and Google Play processes them in the same way as
-other orders. When purchases are complete, Google Play prevents the orders from
+other orders. However, the <code>orderId</code> field for test purchases is
+blank.
+When purchases are complete, Google Play prevents the orders from
 going to financial processing, ensuring that there are no actual charges to user
-accounts, and automatically canceling the completed orders after 14 days. </p>
+accounts, and automatically canceling the completed orders after 14 days.</p>
 
 <p class="note">
   <strong>Note:</strong> Test subscription purchases recur daily, regardless of
   the product's subscription period.
 </p>
 
+
 <h4 id="setup">Setting up test purchases</h4>
 
 <p>It’s easy to set up test purchases&mdash;any user account can be chosen to be
@@ -83,7 +102,7 @@
 method).</p>
 
 <p>First, upload and publish in-app products that you want testers to be able to
-purchase. You can upload and publish in-app products in the Developer Console. 
+purchase. You can upload and publish in-app products in the Developer Console.
 Note that you can upload and publish your in-app items before you publish the
 APK itself.</p>
 
@@ -97,13 +116,25 @@
 within 15 minutes those users can begin making test purchases of your in-app
 products.</p>
 
-<p class="note"><strong>Note</strong>: To make test purchases, the license test
-account must be on the user’s Android device. If the device has more than one
+<p class="caution"><strong>Important</strong>: After you publish your app
+to an alpha or beta channel, your testers need to <a
+href="https://support.google.com/googleplay/android-developer/answer/3131213">opt-in
+to your app’s alpha or beta test</a> using the provided opt-in URL before they
+can make test purchases. </p>
+
+<p class="note"><strong>Note</strong>: License test accounts
+must be on the user’s Android device. If the device has more than one
 account, the purchase will be made with the account that downloaded the app. If
 none of the accounts has downloaded the app, the purchase is made with the first
 account. Users can confirm the account that is making a purchase by expanding the
 purchase dialog.</p>
 
+<p class="note">
+  <strong>Note:</strong> For test subscription purchases, leave the {@code orderId}
+  field blank. You can use the {@code purchaseToken} field to identify test purchases.
+</p>
+
+
 <h4 id="tp-account">Test purchases and developer account</h4>
 <p>Authorized license test accounts are associated with your developer account
 in Google Play, rather than with a specific APK or package name. Identifying an
@@ -133,6 +164,22 @@
 by looking up their order numbers.</li>
 </ul>
 
+<p>
+  You can cancel test subscriptions purchases from the app page in the Play Store,
+  or use the 
+  <a href="https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/cancel">
+  {@code cancel}</a> method.
+</p>
+
+<p class="caution">
+  <strong>Important:</strong> The
+  <a href="https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/refund">
+  {@code refund}</a> and
+  <a href="https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/revoke">
+  {@code revoke}</a> methods do not support test purchases.
+</p>
+
+
 <h3 id="transations">Testing with real transactions</h3>
 <p>As you prepare to launch an app that uses In-app Billing, you can make use of
 Google Play alpha/beta release options to do validation and load testing on your
@@ -145,13 +192,19 @@
 license accounts in your alpha and beta distribution groups, those users will
 only be able to make test purchases. </p>
 
+<p class="caution"><strong>Important</strong>: After you publish your app
+to an alpha or beta channel, your testers need to <a
+href="https://support.google.com/googleplay/android-developer/answer/3131213">opt-in
+to your app’s alpha or beta test</a> using the provided opt-in URL before they
+can make test purchases. </p>
+
 
 <h2 id="billing-testing-static">Testing with Static Responses</h2>
 
 <p>We recommend that you first test your In-app Billing implementation using static responses from
 Google Play. This enables you to verify that your application is handling the primary Google
-Play responses correctly and that your application is able to verify signatures correctly. You can do this
-even if the app hasn't been published yet.</p>
+Play responses correctly and that your application is able to verify signatures correctly. You can
+do this even if the app hasn't been published yet.</p>
 
 <p>To test your implementation with static responses, you make an In-app Billing request using a
 special item that has a reserved product ID. Each reserved product ID returns a specific static
@@ -199,9 +252,11 @@
     billing service. Refunds must be initiated by you (the merchant). After you process a refund
     request through your Google payments merchant account, a refund message is sent to your application by
     Google Play. This occurs only when Google Play gets notification from Google payments that
-    a refund has been made. For more information about refunds, see <a href="{@docRoot}google/play/billing/v2/api.html#billing-action-notify">Handling
-IN_APP_NOTIFY messages</a> and <a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1153485">In-app Billing
-Pricing</a>.</p>
+    a refund has been made. For more information about refunds, see <a
+    href="{@docRoot}google/play/billing/v2/api.html#billing-action-notify">Handling
+    IN_APP_NOTIFY messages</a> and <a
+    href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1153485"
+    >In-app Billing Pricing</a>.</p>
   </li>
   <li><strong>android.test.item_unavailable</strong>
     <p>When you make an In-app Billing request with this product ID, Google Play responds as
diff --git a/docs/html/google/play/billing/index.jd b/docs/html/google/play/billing/index.jd
index ae6e222..b2e9fe4 100644
--- a/docs/html/google/play/billing/index.jd
+++ b/docs/html/google/play/billing/index.jd
@@ -14,6 +14,18 @@
 <div class="sidebox">
   <h2><strong>New in In-App Billing</strong></h2>
   <ul>
+  <li><strong>In-app Promotions</strong>&mdash;Developers can create promo codes
+    which users can redeem for content or features.</li>
+  <li><strong>Prorated Subscription Prices</strong>&mdash;Content providers can
+    lower the price of seasonal subscriptions for users who sign up late in the
+    season. For example, a sports-related service might lower the subscription
+    price halfway through the sport's season.</li>
+  <li><strong>Free Trials</strong>&mdash;Content providers can
+    offer free trial periods for all kinds of subscriptions, including
+    seasonal subscriptions. If a user cancels the subscription in the trial
+    period, they pay nothing. If they do not cancel by the end of the
+    trial period, the subscription automatically converts to a paid
+    subscription.</li>
   <li><strong>Subscription Upgrade/Downgrade</strong>&mdash;A user can
     subscribe to a higher or lower tier of subscription while their current
     subscription is active. The old subscription is canceled, and the unused
@@ -24,9 +36,9 @@
     period.</li>
   <li><strong>IAB Sandbox</strong>&mdash;The In-app Billing Sandbox now supports
     testing subscription purchases.</li>
-  <li><strong>IAB v2 shutdown</strong>&mdash;In-app Billing v2 API is deprecated
-    and will be shut down in January 2015. If your app is still using In-app Billing
-    v2, please migrate to the v3 API as soon as possible.</li>
+  <li><strong>As of January 2015, the In-App Billing v2 API is shut down.
+    If your app is still using In-app Billing
+    v2, please migrate to the v3 API as soon as possible.</strong></li>
   <li><strong>Seasonal subscriptions</strong>&mdash;You can now set up a
     recurring <a href="billing_subscriptions.html#user-billing">seasonal
     subscription</a> that starts and ends on the same date each year (for
@@ -68,14 +80,17 @@
 provides a sample application that demonstrates how to sell standard in-app
 products and subscriptions from inside an app.</p>
 
-<p>To get started, read the documents below or take the <a href="{@docRoot}training/in-app-billing/index.html">Selling
-    In-app Products</a> training class.</p>
+<p>To get started, read the documents below or take the
+<a href="{@docRoot}training/in-app-billing/index.html">Selling In-app
+Products</a> training class.</p>
 
 <dl>
-  <dt><strong><a href="{@docRoot}google/play/billing/billing_overview.html">Overview</a></strong></dt>
+  <dt><strong><a href="{@docRoot}google/play/billing/billing_overview.html">
+      Overview</a></strong></dt>
     <dd>Read this document for a description of the underlying concepts in In-app Billing.</dd>
   <dt><strong><a href="{@docRoot}google/play/billing/api.html">Version 3 API</a></strong></dt>
-    <dd>Read the documents in this section for an overview of the latest version of In-app Billing, as well as implementation details and API reference.</dd>
+    <dd>Read the documents in this section for an overview of the latest version of In-app Billing,
+      as well as implementation details and API reference.</dd>
   <dt><strong><a href="{@docRoot}google/play/billing/billing_best_practices.html">Security
   and Design</a></strong></dt>
     <dd>Review these best practices to help ensure that your In-app Billing implementation is
diff --git a/docs/html/google/play/billing/v2/api.jd b/docs/html/google/play/billing/v2/api.jd
deleted file mode 100644
index 31dfdc9..0000000
--- a/docs/html/google/play/billing/v2/api.jd
+++ /dev/null
@@ -1,525 +0,0 @@
-page.title=In-app Billing Version 2
-excludeFromSuggestions=true
-@jd:body
-
-<p class="caution" style=
-"background-color:#fffdeb;width:100%;margin-bottom:1em;padding:.5em;">
-  The <strong>In-app Billing Version 2 API</strong> has been deprecated in
-  favor of the Version 3 API. If your app is using In-app Billing, please
-  <strong>make sure that it is using the Version 3 API</strong>. If your app is
-  still using the Version 2 API, you must <strong>migrate to the Version 3 API
-  as soon as possible</strong>.<br>
-  <br>
-  We plan to turn off the In-app Billing Version 2 service on <strong>January
-  27, 2015</strong>, after which time users will <strong>no longer be able to
-  purchase in-app items and subscriptions through the Version 2 API</strong>.
-  We strongly encourage and recommend you migrate your apps to use Version 3
-  API by November 2014, to provide ample time for users to update their apps to
-  the new version.<br>
-  <br>
-  For more information, please see the <a href=
-  "http://support.google.com/googleplay/android-developer/answer/6090268">Help Center
-  article</a>. For common questions about transitioning your implementation to
-  In-app Billing Version 3, please see <a href=
-  "{@docRoot}google/play/billing/billing_overview.html#migration">Migration
-  Considerations</a>.
-</p>
-    <div id="qv-wrapper" style="margin-top:0;">
-<div id="qv">
-
-  <h2>In this document</h2>
-  <ol>
-    <li><a href="#billing-types">Product and Purchase Types</a></li>
-    <li><a href="#billing-arch">Service Architecture</a></li>
-    <li><a href="#billing-msgs">Service Messages</a></li>
-    <ol>
-      <li><a href="#billing-request">Request messages</a></li>
-      <li><a href="#billing-response">Broadcast intents</a></li>
-      <li><a href="#billing-message-sequence">Messaging sequence</a></li>
-      <li><a href="#billing-action-notify">Handling IN_APP_NOTIFY messages</a></li>
-    </ol>
-    <li><a href="#billing-security">Security Controls</a></li>
-    <li><a href="#billing-limitations">Requirements and Limitations</a></li>
-  </ol>
-</div>
-</div>
-
-<p>In-app Billing version 2 is the legacy version of the Google Play In-app
-Billing. Like Version 3, it lets you interact with the Google Play purchase flow
-and payments system indirectly, by means of IPC communication with the Play
-Store app installed on the device. </p>
-
-<p>Unlike Version 3, the Version 2 API is
-asynchronous and uses service messages sent as broadcast intents, so
-it is more complicated than Version 3. </p>
-
-<h2 id="billing-types">Product Types</h2>
-
-<p>In-app Billing Version supports three different product types
-to give you flexibility in how you monetize your app. In all cases, you define
-your products using the Google Play Developer Console, including product type,
-SKU, price, description, and so on. For more information, see <a
-href="{@docRoot}google/play/billing/billing_admin.html">Administering In-app Billing</a>.</p>
-
-<ul>
-<li><em>Managed per user account</em> &mdash; Items that can be purchased only
-once per user account on Google Play. When a user purchases an item that uses
-the "managed per user account" product type, Google Play permanently stores the
-transaction information for each item on a per-user basis. This enables you to
-later query Google Play to restore the state of the items a specific user has
-purchased. If a user attempts to purchase a managed item that has already been
-purchased, Google Play prevents the user from purchasing the item again and
-displays an "Item already purchased" error.
-
-<p>The "managed" product type is useful if you are selling
-items such as game levels or application features. These items are not transient
-and usually need to be restored whenever a user reinstalls your application,
-wipes the data on their device, or installs your application on a new
-device.</p>
-
-<li><em>Unmanaged</em> &mdash; Items that do not have their transaction
-information stored on Google Play. This means that you cannot later query Google
-Play to retrieve transaction information for those items. For "unmanaged"
-purchases, you are responsible for managing the transaction information. Also,
-Google Play does not attempt to prevent the user from purchasing an item
-multiple times if it uses the "unmanaged" product type. It's up to you to
-control how many times an unmanaged item can be purchased.</p>
-
-<p>The "unmanaged" product type is useful if you are selling consumable items,
-such as fuel or magic spells. These items are consumed within your application
-and are usually purchased multiple times.</p></li>
-
-<li><em>Subscriptions</em> &mdash; Items that are sold with a
-developer-specified, recurring billing interval. When a user purchases a
-subscription, Google Play and its payment processor automatically bill the
-user's account at the specified interval and price, charging the amount to the
-original payment method. Once the user purchases a subscription, Google Play
-continues billing the account indefinitely, without requiring approval or action
-from the user. The user can cancel the subscription at any time. 
-
-<p>Subscriptions can only be sold using the "managed per user account" purchase
-type. As with in-app products, once the user has purchased an in-app product
-there is no refund window. Users desiring refunds must contact the developer
-directly. For more information about subscriptions and how to sell them in your
-apps, see the <a href="{@docRoot}google/play/billing/v2/billing_subscriptions.html">Subscriptions</a>
-document.</p></li>
-</ul>
-
-<h2 id="billing-arch">Service Architecture</h2>
-
-<p>Your app accesses the In-app Billing service using an API that is exposed by
-the Google Play app installed on the device. The Google Play app then uses an
-asynchronous message loop to convey billing requests and responses between your
-application and the Google Play server. In practice, your application never
-directly communicates with the Google Play server (see figure 1). Instead, your
-application sends billing requests to the Google Play application over
-interprocess communication (IPC) and receives purchase responses from the Google
-Play application in the form of asynchronous broadcast intents. Your application
-does not manage any network connections between itself and the Google Play
-server or use any special APIs from the Android platform.</p>
-
-<div class="figure" style="width:440px">
-<img src="/images/billing_arch.png" alt="" height="582" />
-<p class="img-caption">
-  <strong>Figure 1.</strong> Your application sends and receives billing messages through the
-  Google Play application, which handles all communication with the Google Play server.</p>
-</div>
-
-<p>Some in-app billing implementations may also use a private remote server to deliver content or
-validate transactions, but a remote server is not required to implement in-app billing. A remote
-server can be useful if you are selling digital content that needs to be delivered to a user's
-device, such as media files or photos. You might also use a remote server to store users'
-transaction history or perform various in-app billing security tasks, such as signature
-verification. Although you can handle all security-related tasks in your application, performing
-those tasks on a remote server is recommended because it helps make your application less vulnerable
-to security attacks.</p>
-
-<p>A typical in-app billing implementation relies on three components:</p>
-<ul>
-  <li>A {@link android.app.Service Service} (named <code>BillingService</code> in the sample application),
-  which processes purchase messages from the application and sends billing requests to the Google
-  Play in-app billing service.</li>
-  <li>A {@link android.content.BroadcastReceiver BroadcastReceiver} (named <code>BillingReceiver</code> in the sample
-  application), which receives all asynchronous billing responses from the Google Play
-  application.</li>
-  <li>A security component (named <code>Security</code> in the sample application), which performs
-  security-related tasks, such as signature verification and nonce generation. For more information
-  about in-app billing security, see <a href="#billing-security">Security controls</a> later in this
-  document.</li>
-</ul>
-
-<p>You may also want to incorporate two other components to support in-app billing:</p>
-<ul>
-  <li>A response {@link android.os.Handler Handler} (named <code>ResponseHandler</code> in the sample
-  application), which provides application-specific processing of purchase notifications, errors,
-  and other status messages.</li>
-  <li>An observer (named <code>PurchaseObserver</code> in the sample application), which is
-  responsible for sending callbacks to your application so you can update your user interface with
-  purchase information and status.</li>
-</ul>
-
-<p>In addition to these components, your application must provide a way to store information about
-users' purchases and some sort of user interface that lets users select items to purchase. You do
-not need to provide a checkout user interface. When a user initiates an in-app purchase, the Google
-Play application presents the checkout user interface to your user. When the user completes the
-checkout process, your application resumes.</p>
-
-<h2 id="billing-msgs">In-app Billing Messages</h2>
-
-<p>When the user initiates a purchase, your application sends billing messages to Google Play's
-in-app billing service (named <code>MarketBillingService</code>) using simple IPC method calls. The
-Google Play application responds to all billing requests synchronously, providing your
-application with status notifications and other information. The Google Play application also
-responds to some billing requests asynchronously, providing your application with error messages and
-detailed transaction information. The following section describes the basic request-response
-messaging that takes place between your application and the Google Play application.</p>
-
-<h3 id="billing-request">In-app billing requests</h3>
-
-<p>Your application sends in-app billing requests by invoking a single IPC method
-(<code>sendBillingRequest()</code>), which is exposed by the <code>MarketBillingService</code>
-interface. This interface is defined in an <a
-href="{@docRoot}guide/components/aidl.html">Android Interface Definition Language</a> file
-(<code>IMarketBillingService.aidl</code>). You can <a
-href="{@docRoot}google/play/billing/v2/billing_integrate.html#billing-download">download</a> this AIDL
-file with the in-app billing sample application.</p>
-
-<p>The <code>sendBillingRequest()</code> method has a single {@link android.os.Bundle Bundle} parameter.
-The Bundle that you deliver must include several key-value pairs that specify various parameters for
-the request, such as the type of billing request you are making, the item that is being purchased and
-its type, and the application that is making the request. For more information about the Bundle keys
-that are sent with a request, see <a
-href="{@docRoot}google/play/billing/v2/billing_reference.html#billing-interface">In-app Billing
-Service Interface</a>.
-
-<p>One of the most important keys that every request Bundle must have is the
-<code>BILLING_REQUEST</code> key. This key lets you specify the type of billing request you are
-making. Google Play's in-app billing service supports the following five types of billing
-requests:</p>
-
-<ul>
-  <li><code>CHECK_BILLING_SUPPORTED</code>
-    <p>This request verifies that the Google Play application supports in-app billing. You
-    usually send this request when your application first starts up. This request is useful if you
-    want to enable or disable certain UI features that are relevant only to in-app billing.</p>
-  </li>
-  <li><code>REQUEST_PURCHASE</code>
-    <p>This request sends a purchase message to the Google Play application and is the foundation
-    of in-app billing. You send this request when a user indicates that he or she wants to purchase
-    an item in your application. Google Play then handles the financial transaction by displaying
-    the checkout user interface.</p>
-  </li>
-  <li><code>GET_PURCHASE_INFORMATION</code>
-    <p>This request retrieves the details of a purchase state change. A purchase changes state when
-    a requested purchase is billed successfully or when a user cancels a transaction during
-    checkout. It can also occur when a previous purchase is refunded. Google Play notifies your
-    application when a purchase changes state, so you only need to send this request when there is
-    transaction information to retrieve.</p>
-  </li>
-  <li><code>CONFIRM_NOTIFICATIONS</code>
-    <p>This request acknowledges that your application received the details of a purchase state
-    change. Google Play sends purchase state change notifications to your application until you
-    confirm that you received them.</p>
-  </li>
-  <li><code>RESTORE_TRANSACTIONS</code>
-    <p>This request retrieves a user's transaction status for <a
-    href="{@docRoot}google/play/billing/billing_admin.html#billing-purchase-type">managed
-    purchases</a> and <a
-    href="{@docRoot}google/play/billing/billing_admin.html#billing-purchase-type">subscriptions</a>.
-    You should send this request only when you need to retrieve a user's transaction
-    status, which is usually only when your application is reinstalled or installed for the first
-    time on a device.</p>
-  </li>
-</ul>
-
-<h3 id="billing-response">In-app Billing Responses</h3>
-
-<p>The Google Play application responds to in-app billing requests with both synchronous and
-asynchronous responses. The synchronous response is a {@link android.os.Bundle Bundle} with the following
-three keys:</p>
-
-<ul>
-  <li><code>RESPONSE_CODE</code>
-    <p>This key provides status information and error information about a request.</p>
-  </li>
-  <li><code>PURCHASE_INTENT</code>
-    <p>This key provides a {@link android.app.PendingIntent PendingIntent}, which you use to launch the checkout
-    activity.</p>
-  </li>
-  <li><code>REQUEST_ID</code>
-    <p>This key provides you with a request identifier, which you can use to match asynchronous
-    responses with requests.</p>
-  </li>
-</ul>
-<p>Some of these keys are not relevant to every request. For more information, see <a
-href="#billing-message-sequence">Messaging sequence</a> later in this document.</p>
-
-<p>The asynchronous response messages are sent in the form of individual broadcast intents and
-include the following:</p>
-
-<ul>
-    <li><code>com.android.vending.billing.RESPONSE_CODE</code>
-    <p>This response contains a Google Play server response code, and is sent after you make an
-    in-app billing request. A server response code can indicate that a billing request was
-    successfully sent to Google Play or it can indicate that some error occurred during a billing
-    request. This response is <em>not</em> used to report any purchase state changes (such as refund
-    or purchase information). For more information about the response codes that are sent with this
-    response, see <a
-    href="{@docRoot}google/play/billing/v2/billing_reference.html#billing-codes">Server Response Codes
-    for In-app Billing</a>.</p>
-  </li>
-  <li><code>com.android.vending.billing.IN_APP_NOTIFY</code>
-    <p>This response indicates that a purchase has changed state, which means a purchase succeeded,
-    was canceled, or was refunded. This response contains one or more notification IDs. Each
-    notification ID corresponds to a specific server-side message, and each messages contains
-    information about one or more transactions. After your application receives an
-    <code>IN_APP_NOTIFY</code> broadcast intent, you send a <code>GET_PURCHASE_INFORMATION</code>
-    request with the notification IDs to retrieve message details.</p>
-  </li>
-  <li><code>com.android.vending.billing.PURCHASE_STATE_CHANGED</code>
-    <p>This response contains detailed information about one or more transactions. The transaction
-    information is contained in a JSON string. The JSON string is signed and the signature is sent
-    to your application along with the JSON string (unencrypted). To help ensure the security of
-    your in-app billing messages, your application can verify the signature of this JSON string.</p>
-  </li>
-</ul>
-
-<p>The JSON string that is returned with the <code>PURCHASE_STATE_CHANGED</code> intent provides
-your application with the details of one or more billing transactions. An example of this JSON
-string for a subscription item is shown below:</p>
-<pre class="no-pretty-print" style="color:black">{ "nonce" : 1836535032137741465,
-  "orders" :
-    [{ "notificationId" : "android.test.purchased",
-       "orderId" : "transactionId.android.test.purchased",
-       "packageName" : "com.example.dungeons",
-       "productId" : "android.test.purchased",
-       "developerPayload" : "bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ",
-       "purchaseTime" : 1290114783411,
-       "purchaseState" : 0,
-       "purchaseToken" : "rojeslcdyyiapnqcynkjyyjh" }]
-}
-</pre>
-
-<p>For more information about the fields in this JSON string, see <a
-href="{@docRoot}google/play/billing/v2/billing_reference.html#billing-intents">In-app Billing
-Broadcast Intents</a>.</p>
-
-<h3 id="billing-message-sequence">Messaging sequence</h3>
-
-<p>The messaging sequence for a typical purchase request is shown in figure 2. Request types for
-each <code>sendBillingRequest()</code> method are shown in <strong>bold</strong>, broadcast intents
-are shown in <em>italic</em>. For clarity, figure 2 does not show the <code>RESPONSE_CODE</code>
-broadcast intents that are sent for every request.</p>
-
-<p>The basic message sequence for an in-app purchase request is as follows:</p>
-
-<ol>
-  <li>Your application sends a purchase request (<code>REQUEST_PURCHASE</code> type), specifying a
-  product ID and other parameters.</li>
-  <li>The Google Play application sends your application a Bundle with the following keys:
-  <code>RESPONSE_CODE</code>, <code>PURCHASE_INTENT</code>, and <code>REQUEST_ID</code>. The
-  <code>PURCHASE_INTENT</code> key provides a {@link android.app.PendingIntent PendingIntent}, which your
-  application uses to start the checkout UI for the given product ID.</li>
-  <li>Your application launches the pending intent, which launches the checkout UI.
-    <p class="note"><strong>Note:</strong> You must launch the pending intent from an activity
-    context and not an application context.</p>
-  </li>
-  <li>When the checkout flow finishes (that is, the user successfully purchases the item or cancels
-  the purchase), Google Play sends your application a notification message (an
-  <code>IN_APP_NOTIFY</code> broadcast intent). The notification message includes a notification ID,
-  which references the transaction.</li>
-  <li>Your application requests the transaction information by sending a
-  <code>GET_PURCHASE_STATE_CHANGED</code> request, specifying the notification ID for the
-  transaction.</li>
-  <li>The Google Play application sends a Bundle with a <code>RESPONSE_CODE</code> key and a 
-  <code>REQUEST_ID</code> key.
-  <li>Google Play sends the transaction information to your application in a
-  <code>PURCHASE_STATE_CHANGED</code> broadcast intent.</li>
-  <li>Your application confirms that you received the transaction information for the given
-  notification ID by sending a confirmation message (<code>CONFIRM_NOTIFICATIONS</code> type),
-  specifying the notification ID for which you received transaction information.</li>
-  <li>The Google Play application sends your application a Bundle with a
-  <code>RESPONSE_CODE</code> key and a <code>REQUEST_ID</code> key.</li>
-</ol>
-
-<img src="/images/billing_request_purchase.png" height="231" id="figure2" />
-<p class="img-caption">
-  <strong>Figure 2.</strong> Message sequence for a purchase request.
-</p>
-
-<p>Keep in mind, you must send a confirmation when you receive transaction information from Google
-Play (step 8 in figure 2). If you don't send a confirmation message, Google Play will
-continue sending <code>IN_APP_NOTIFY</code> messages for the transactions you have not
-confirmed. As a best practice, you should not send a <code>CONFIRM_NOTIFICATIONS</code> request for
-a purchased item until you have delivered the item to the user. This way, if your application
-crashes or something else prevents your application from delivering the product, your application
-will still receive an <code>IN_APP_NOTIFY</code> broadcast intent from Google Play indicating
-that you need to deliver the product. Also, as a best practice, your application must be able to
-handle <code>IN_APP_NOTIFY</code> messages that contain multiple orders.</p>
-
-<p>The messaging sequence for a restore transaction request is shown in figure 3. Request types for
-each <code>sendBillingRequest()</code> method are shown in <strong>bold</strong>, broadcast intents
-are shown in <em>italic</em>. For clarity, figure 3 does not show the <code>RESPONSE_CODE</code>
-broadcast intents that are sent for every request.</p>
-
-<div class="figure" style="width:490px">
-<img src="/images/billing_restore_transactions.png" alt="" height="168" />
-<p class="img-caption">
-  <strong>Figure 3.</strong> Message sequence for a restore transactions request.
-</p>
-</div>
-
-<p>The request triggers three responses. The first is a {@link android.os.Bundle Bundle} with a
-<code>RESPONSE_CODE</code> key and a <code>REQUEST_ID</code> key. Next, the Google Play
-application sends a <code>RESPONSE_CODE</code> broadcast intent, which provides status information
-or error information about the request. As always, the <code>RESPONSE_CODE</code> message references
-a specific request ID, so you can determine which request a <code>RESPONSE_CODE</code> message
-pertains to.</p>
-
-<p>The <code>RESTORE_TRANSACTIONS</code> request type also triggers a
-<code>PURCHASE_STATE_CHANGED</code> broadcast intent, which contains the same type of transaction
-information that is sent during a purchase request. Unlike with a purchase request, however, the transactions
-are given without any associated notification IDs, so you do not need to respond to this
-intent with a <code>CONFIRM_NOTIFICATIONS</code> message. </p>
-
-<p class="note"><strong>Note:</strong> You should use the <code>RESTORE_TRANSACTIONS</code> request
-type only when your application is installed for the first time on a device or when your
-application has been removed from a device and reinstalled.</p>
-
-<p>The messaging sequence for checking whether in-app billing is supported is shown in figure 4. The
-request type for the <code>sendBillingRequest()</code> method is shown in <strong>bold</strong>.</p>
-
-<div class="figure" style="width:454px">
-<img src="/images/billing_check_supported.png" alt="" height="168" />
-<p class="img-caption">
-  <strong>Figure 4.</strong> Message sequence for checking whether in-app billing is supported.
-</p>
-</div>
-
-<p>The synchronous response for a <code>CHECK_BILLING_SUPPORTED</code> request provides a Bundle
-with a server response code.  A <code>RESULT_OK</code> response code indicates that in-app billing
-is supported; a <code>RESULT_BILLING_UNAVAILABLE</code> response code indicates that in-app billing
-is unavailable because the API version you specified is unrecognized or the user is not eligible to
-make in-app purchases (for example, the user resides in a country that does not allow in-app
-billing). A <code>SERVER_ERROR</code> can also be returned, indicating that there was a problem with
-the Google Play server.</p>
-
-<h3 id="billing-action-notify">Handling IN_APP_NOTIFY messages</h3>
-
-<p>Usually, your application receives an <code>IN_APP_NOTIFY</code> broadcast intent from Google
-Play in response to a <code>REQUEST_PURCHASE</code> message (see figure 2). The
-<code>IN_APP_NOTIFY</code> broadcast intent informs your application that the state of a requested
-purchase has changed. To retrieve the details of that purchase, your application sends a
-<code>GET_PURCHASE_INFORMATION</code> request. Google Play responds with a
-<code>PURCHASE_STATE_CHANGED</code> broadcast intent, which contains the details of the purchase
-state change. Your application then sends a <code>CONFIRM_NOTIFICATIONS</code> message, informing
-Google Play that you have received the purchase state change information.</p>
-
-<p>In some special cases, you may receive multiple <code>IN_APP_NOTIFY</code> messages even though
-you have confirmed receipt of the purchase information, or you may receive
-<code>IN_APP_NOTIFY</code> messages for a purchase change even though you never initiated the
-purchase. Your application must handle both of these special cases.</p>
-
-<h4>Handling multiple IN_APP_NOTIFY messages</h4>
-
-<p>When Google Play receives a <code>CONFIRM_NOTIFICATIONS</code> message for a given
-<code>PURCHASE_STATE_CHANGED</code> message, it usually stops sending <code>IN_APP_NOTIFY</code>
-intents for that <code>PURCHASE_STATE_CHANGED</code> message. Sometimes, however, Google
-Play may send repeated <code>IN_APP_NOTIFY</code> intents for a
-<code>PURCHASE_STATE_CHANGED</code> message even though your application has sent a
-<code>CONFIRM_NOTIFICATIONS</code> message. This can occur if a device loses network connectivity
-while you are sending the <code>CONFIRM_NOTIFICATIONS</code> message. In this case, Google Play
-might not receive your <code>CONFIRM_NOTIFICATIONS</code> message and it could send multiple
-<code>IN_APP_NOTIFY</code> messages until it receives acknowledgement that you received the
-transaction message. Therefore, your application must be able to recognize that the subsequent
-<code>IN_APP_NOTIFY</code> messages are for a previously processed transaction. You can do this by
-checking the <code>orderID</code> that's contained in the JSON string because every transaction has
-a unique <code>orderId</code>.</p>
-
-<h4>Handling refunds and other unsolicited IN_APP_NOTIFY messages</h4>
-
-<p>There are two cases where your application may receive <code>IN_APP_NOTIFY</code> broadcast
-intents even though your application has not sent a <code>REQUEST_PURCHASE</code> message. Figure 5
-shows the messaging sequence for both of these cases. Request types for each
-<code>sendBillingRequest()</code> method are shown in <strong>bold</strong>, broadcast intents are
-shown in <em>italic</em>. For clarity, figure 5 does not show the <code>RESPONSE_CODE</code>
-broadcast intents that are sent for every request.</p>
-
-<div class="figure" style="width:481px">
-<img src="/images/billing_refund.png" alt="" height="189" />
-<p class="img-caption">
-  <strong>Figure 5.</strong> Message sequence for refunds and other unsolicited
-IN_APP_NOTIFY messages.</p>
-</div>
-
-<p>In the first case, your application may receive an <code>IN_APP_NOTIFY</code> broadcast intent
-when a user has your application installed on two (or more) devices and the user makes an in-app
-purchase from one of the devices. In this case, Google Play sends an <code>IN_APP_NOTIFY</code>
-message to the second device, informing the application that there is a purchase state change. Your
-application can handle this message the same way it handles the response from an
-application-initiated <code>REQUEST_PURCHASE</code> message, so that ultimately your application
-receives a <code>PURCHASE_STATE_CHANGED</code> broadcast intent message that includes information
-about the item that has been purchased. This applies only to items that have their product type
-set to "managed per user account."</p>
-
-<p>In the second case, your application can receive an <code>IN_APP_NOTIFY</code> broadcast intent
-when Google Play receives a refund notification from Google. In this case, Google
-Play sends an <code>IN_APP_NOTIFY</code> message to your application. Your application can handle
-this message the same way it handles responses from an application-initiated
-<code>REQUEST_PURCHASE</code> message so that ultimately your application receives a
-<code>PURCHASE_STATE_CHANGED</code> message that includes information about the item that has been
-refunded. The refund information is included in the JSON string that accompanies the
-<code>PURCHASE_STATE_CHANGED</code> broadcast intent. Also, the <code>purchaseState</code> field in
-the JSON string is set to 2.</p>
-
-<p class="caution"><strong>Important:</strong> You cannot use the API to
-issue refunds or cancel in-app billing transactions. You must do this manually through your
-Google payments merchant account. However, you can use the API to retrieve order
-information.</p>
-
-<h2 id="billing-security">Security Controls</h2>
-
-<p>To help ensure the integrity of the transaction information that is sent to your application,
-Google Play signs the JSON string that is contained in the <code>PURCHASE_STATE_CHANGED</code>
-broadcast intent. Google Play uses the private key that is associated with the app to create
-this signature. The Developer Console generates an RSA key pair for each app.
-You can find the public key portion of this key pair in the app's publishing details
-in the Developer Console, under <strong>Settings</strong>, in the License Key field.</p>
-
-<p>When Google Play signs a billing response, it includes the signed JSON string (unencrypted)
-and the signature. When your application receives this signed response you can use the public key
-portion of your RSA key pair to verify the signature. By performing signature verification you can
-help detect responses that have been tampered with or that have been spoofed. You can perform this
-signature verification step in your application; however, if your application connects to a secure
-remote server then we recommend that you perform the signature verification on that server.</p>
-
-<p>In-app billing also uses nonces (a random number used once) to help verify the integrity of the
-purchase information that's returned from Google Play. Your application must generate a nonce and
-send it with a <code>GET_PURCHASE_INFORMATION</code> request and a <code>RESTORE_TRANSACTIONS</code>
-request. When Google Play receives the request, it adds the nonce to the JSON string that
-contains the transaction information. The JSON string is then signed and returned to your
-application. When your application receives the JSON string, you need to verify the nonce as well as
-the signature of the JSON string.</p>
-
-<p>For more information about best practices for security and design, see <a
-href="{@docRoot}google/play/billing/billing_best_practices.html">Security and Design</a>.</p>
-
-<h2 id="billing-limitations">In-app Billing Requirements and Limitations</h2>
-
-<p>Before you get started with in-app billing, be sure to review the following requirements and
-limitations.</p>
-
-<ul>
-  <li>In-app billing can be implemented only in applications that you publish through Google
-  Play.</li>
-  <li>You must have a Google payments Merchant account to use Google Play In-app Billing.</li>
-  <li>To support subscriptions, version 3.5 or higher of the Google Play app is required. </li>
-  <li>In-app Billing requires Android 1.6 (API level 4) or higher.</li>
-  <li>You can use in-app billing to sell only digital content. You cannot use in-app billing to sell
-  physical goods, personal services, or anything that requires physical delivery.</li>
-  <li>Google Play does not provide any form of content delivery. You are responsible for
-  delivering the digital content that you sell in your applications.</li>
-  <li>You cannot implement in-app billing on a device that never connects to the network. To
-  complete in-app purchase requests, a device must be able to access the Google Play server over
-  the network. </li>
-</ul>
diff --git a/docs/html/google/play/billing/v2/billing_integrate.jd b/docs/html/google/play/billing/v2/billing_integrate.jd
deleted file mode 100644
index 1345c19..0000000
--- a/docs/html/google/play/billing/v2/billing_integrate.jd
+++ /dev/null
@@ -1,1145 +0,0 @@
-page.title=Implementing In-app Billing <span style="font-size:16px;">(IAB Version 2)</span>
-excludeFromSuggestions=true
-@jd:body
-
-<p class="caution" style=
-"background-color:#fffdeb;width:100%;margin-bottom:1em;padding:.5em;">
-  The <strong>In-app Billing Version 2 API</strong> has been deprecated in
-  favor of the Version 3 API. If your app is using In-app Billing, please
-  <strong>make sure that it is using the Version 3 API</strong>. If your app is
-  still using the Version 2 API, you must <strong>migrate to the Version 3 API
-  as soon as possible</strong>.<br>
-  <br>
-  We plan to turn off the In-app Billing Version 2 service on <strong>January
-  27, 2015</strong>, after which time users will <strong>no longer be able to
-  purchase in-app items and subscriptions through the Version 2 API</strong>.
-  We strongly encourage and recommend you migrate your apps to use Version 3
-  API by November 2014, to provide ample time for users to update their apps to
-  the new version.<br>
-  <br>
-  For more information, please see the <a href=
-  "http://support.google.com/googleplay/android-developer/answer/6090268">Help Center
-  article</a>. For common questions about transitioning your implementation to
-  In-app Billing Version 3, please see <a href=
-  "{@docRoot}google/play/billing/billing_overview.html#migration">Migration
-  Considerations</a>.
-</p>
-    <div id="qv-wrapper" style="margin-top:0;">
-<div id="qv">
-  <h2>In this document</h2>
-  <ol>
-    <li><a href="#billing-download">Downloading the Sample</a></li>
-    <li><a href="#billing-add-aidl">Adding the AIDL file to your project</a></li>
-    <li><a href="#billing-permission">Updating Your Manifest</a></li>
-    <li><a href="#billing-service">Creating a Service</a></li>
-    <li><a href="#billing-broadcast-receiver">Creating a BroadcastReceiver</a></li>
-    <li><a href="#billing-security">Securing Your App</a></li>
-    <li><a href="#billing-implement">Modifying Your Application Code</a></li>
-  </ol>
-  <h2>Downloads</h2>
-  <ol>
-    <li><a href="#billing-download">Sample Application (V2)</a></li>
-  </ol>
-</div>
-</div>
-
-<p>This document helps you implement In-app Billing Version 2 by stepping through the primary
-implementation tasks, using the sample application as an example.</p>
-
-<p>Before you implement in-app billing in your own application, be sure that you read <a
-href="{@docRoot}google/play/billing/v2/api.html">Overview of In-app Billing Version 2</a> and <a
-href="{@docRoot}google/play/billing/billing_best_practices.html">Security and Design</a>. These
-documents provide background information that will make it easier for you to implement in-app
-billing.</p>
-
-<p>To implement in-app billing in your application, you need to do the following:</p>
-<ol>
-  <li><a href="#billing-download">Download the in-app billing sample application</a>.</li>
-  <li><a href="#billing-add-aidl">Add the IMarketBillingService.aidl file</a> to your project.</li>
-  <li><a href="#billing-permission">Update your AndroidManifest.xml file</a>.</li>
-  <li><a href="#billing-service">Create a Service</a> and bind it to the
-  <code>MarketBillingService</code> so your application can send billing requests and receive
-  billing responses from Google Play.</li>
-  <li><a href="#billing-broadcast-receiver">Create a BroadcastReceiver</a> to handle broadcast
-  intents from Google Play.</li>
-  <li><a href="#billing-signatures">Create a security processing component</a> to verify the
-  integrity of the transaction messages that are sent by Google Play.</li>
-  <li><a href="#billing-implement">Modify your application code</a> to support in-app billing.</li>
-</ol>
-
-<h2 id="billing-download">Downloading the Sample Application</h2>
-
-<p>The in-app billing sample application shows you how to perform several tasks that are common to
-all in-app billing implementations, including:</p>
-
-<ul>
-  <li>Sending in-app billing requests to Google Play.</li>
-  <li>Handling synchronous responses from Google Play.</li>
-  <li>Handling broadcast intents (asynchronous responses) from Google Play.</li>
-  <li>Using in-app billing security mechanisms to verify the integrity of billing responses.</li>
-  <li>Creating a user interface that lets users select items for purchase.</li>
-</ul>
-
-<p>The sample application includes an application file (<code>Dungeons.java</code>), the AIDL file
-for the <code>MarketBillingService</code> (<code>IMarketBillingService.aidl</code>), and several
-classes that demonstrate in-app billing messaging. It also includes a class that demonstrates basic
-security tasks, such as signature verification.</p>
-
-<p>Table 1 lists the source files that are included with the sample application.</p>
-<p class="table-caption" id="source-files-table"><strong>Table 1.</strong> In-app billing sample
-application source files.</p>
-
-<table>
-<tr>
-<th>File</th>
-<th>Description</th>
-</tr>
-
-<tr>
-<td>IMarketBillingService.aidl</td>
-<td>Android Interface Definition Library (AIDL) file that defines the IPC interface to Google
-Play's in-app billing service (<code>MarketBillingService</code>).</td>
-</tr>
-
-<tr>
-<td>Dungeons.java</td>
-<td>Sample application file that provides a UI for making purchases and displaying purchase
-history.</td>
-</tr>
-
-<tr>
-<td>PurchaseDatabase.java</td>
-<td>A local database for storing purchase information.</td>
-</tr>
-
-<tr>
-  <td>BillingReceiver.java</td>
-  <td>A {@link android.content.BroadcastReceiver} that receives asynchronous response messages
-  (broadcast intents) from Google Play. Forwards all messages to the
-  <code>BillingService</code>.</td>
-</tr>
-<tr>
-  <td>BillingService.java</td>
-  <td>A {@link android.app.Service} that sends messages to Google Play on behalf of the
-  application by connecting (binding) to the <code>MarketBillingService</code>.</td>
-</tr>
-
-<tr>
-  <td>ResponseHandler.java</td>
-  <td>A {@link android.os.Handler} that contains methods for updating the purchases database and the
-  UI.</td>
-</tr>
-
-<tr>
-  <td>PurchaseObserver.java</td>
-  <td>An abstract class for observing changes related to purchases.</td>
-</tr>
-
-<tr>
-<td>Security.java</td>
-<td>Provides various security-related methods.</td>
-</tr>
-
-<tr>
-<td>Consts.java</td>
-<td>Defines various Google Play constants and sample application constants. All constants that
-are defined by Google Play must be defined the same way in your application.</td>
-</tr>
-
-<tr>
-<td>Base64.java and Base64DecoderException.java</td>
-<td>Provides conversion services from binary to Base64 encoding. The <code>Security</code> class
-relies on these utility classes.</td>
-</tr>
-
-</table>
-
-<p>The in-app billing sample application is available as a downloadable component of the Android
-SDK. To download the sample application component, launch the Android SDK Manager and then
-select the <strong>Google Market Billing package</strong> component (see figure 1), and click <strong>Install
-Selected</strong> to begin the download.</p>
-
-
-<img src="{@docRoot}images/billing_package.png" height="325" id="figure1" />
-<p class="img-caption">
-  <strong>Figure 1.</strong> The Google Market Billing package contains the sample application and
-  the AIDL file.
-</p>
-
-<p>When the download is complete, the Android SDK Manager saves the component into the
-following directory:</p>
-
-<p><code>&lt;sdk&gt;/extras/google/market_billing/</code></p>
-
-<p>If you want to see an end-to-end demonstration of in-app billing before you integrate in-app
-billing into your own application, you can build and run the sample application. Building and
-running the sample application involves three tasks:</p>
-
-<ul>
-  <li>Configuring and building the sample application.</li>
-  <li>Uploading the sample application to Google Play.</li>
-  <li>Setting up test accounts and running the sample application.</li>
-</ul>
-
-<p class="note"><strong>Note:</strong> Building and running the sample application is necessary only
-if you want to see a demonstration of in-app billing. If you do not want to run the sample
-application, you can skip to the next section, <a href="#billing-add-aidl">Adding the AIDL file to
-your project</a>.</p>
-
-<h3>Configuring and building the sample application</h3>
-
-<p>Before you can run the sample application, you need to configure it and build it by doing the
-following:</p>
-
-<ol>
-  <li><strong>Add your app's public key to the sample application code.</strong>
-    <p>This enables the application to verify the signature of the transaction information that is
-    returned from Google Play. To add your public key to the sample application code, do the
-    following:</p>
-    <ol>
-      <li>Log in to your Google Play <a href="http://play.google.com/apps/publish">Developer
-      console</a>.</li>
-      <li>On the upper left part of the page, All Applications, click the application name.</strong>.</li>
-      <li>On the Edit Profile page, scroll down to the <strong>Licensing &amp; In-app
-      Billing</strong> panel.</li>
-      <li>Copy your public key.</li>
-      <li>Open <code>src/com/example/dungeons/Security.java</code> in the editor of your choice.
-        <p>You can find this file in the sample application's project folder.</p>
-      </li>
-      <li>Add your public key to the following line of code:
-        <p><code>String base64EncodedPublicKey = "your public key here";</code></p>
-      </li>
-      <li>Save the file.</li>
-    </ol>
-  </li>
-  <li><strong>Change the package name of the sample application.</strong>
-    <p>The current package name is <code>com.example.dungeons</code>. Google Play does not let
-    you upload applications with package names that contain <code>com.example</code>, so you must
-    change the package name to something else.</p>
-  </li>
-  <li><strong>Build the sample application in release mode and sign it.</strong>
-    <p>To learn how to build and sign applications, see <a
-    href="{@docRoot}tools/building/index.html">Building and Running</a>.</p>
-  </li>
-</ol>
-
-<h3>Uploading the sample application</h3>
-
-<p>After you build a release version of the sample application and sign it, you need to upload it as
-a draft to the Google Play Developer Console. You also need to create a product list for the in-app
-items that are available for purchase in the sample application. The following instructions show you
-how to do this.</p>
-
-<p class="caution"><strong>Caution:</strong> Draft applications are no longer
-supported. To test an application, publish it in the <a
-href="{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">alpha
-or beta channels</a>. For more information, see <a
-href="{@docRoot}google/play/billing/billing_testing.html#draft_apps">Draft Apps
-are No Longer Supported</a>.</p>
-
-<ol>
-  <li><strong>Upload the release version of the sample application to Google Play.</strong>
-    <p>Do not publish the sample application; leave it as an unpublished draft application. The
-    sample application is for demonstration purposes only and should not be made publicly available
-    on Google Play. To learn how to upload an application to Google Play, see <a
-    href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=113469">Uploading
-    applications</a>.</p>
-  </li>
-  <li><strong>Create a product list for the sample application.</strong>
-    <p>The sample application lets you purchase two items: a two-handed sword
-    (<code>sword_001</code>) and a potion (<code>potion_001</code>). We recommend that you set up
-    your product list so that <code>sword_001</code> has a purchase type of "Managed per user
-    account" and <code>potion_001</code> has a purchase type of "Unmanaged" so you can see how these
-    two purchase types behave. To learn how to set up a product list, see <a
-    href="{@docRoot}google/play/billing/billing_admin.html#billing-list-setup">Creating a Product
-    List</a>.</p>
-    <p class="note"><strong>Note:</strong> You must publish the items in your product
-    list (<code>sword_001</code> and <code>potion_001</code>) even though you are not publishing the
-    sample application. Also, you must have a Google payments merchant account to add items to the
-    sample application's product list.</p>
-  </li>
-</ol>
-
-<h3>Running the sample application</h3>
-
-<p>You cannot run the sample application in the emulator. You must install the sample application
-onto a device to run it. To run the sample application, do the following:</p>
-
-<ol>
-  <li><strong>Make sure you have at least one test account registered under your Google Play
-  publisher account.</strong>
-    <p>You cannot purchase items from yourself, so you need to
-    create at least one test account that you can use to purchase items in the sample application.
-    To learn how to set up a test account, see <a
-    href="{@docRoot}google/play/billing/billing_testing.html#billing-testing-setup">Setting up Test
-    Accounts</a>.</p>
-  </li>
-  <li><strong>Verify that your device is running a supported version of the Google Play
-  application or the MyApps application.</strong>
-    <p>If your device is running Android 3.0, in-app billing requires version 5.0.12 (or higher) of
-    the MyApps application. If your device is running any other version of Android, in-app billing
-    requires version 2.3.4 (or higher) of the Google Play application. To learn how to check the
-    version of the Google Play application, see <a
-    href="http://market.android.com/support/bin/answer.py?answer=190860">Updating Google
-    Play</a>.</p>
-  </li>
-  <li><strong>Install the application onto your device.</strong>
-    <p>Even though you uploaded the application to Google Play, the application is not published,
-    so you cannot download it from Google Play to a device. Instead, you must install the
-    application onto your device. To learn how to install an application onto a device, see <a
-    href="{@docRoot}tools/building/building-cmdline.html#RunningOnDevice">Running on a
-    device</a>.</p>
- </li>
- <li><strong>Make one of your test accounts the primary account on your device.</strong>
-    <p>The primary account on your device must be one of the <a
-    href="{@docRoot}google/play/billing/billing_admin.html#billing-testing-setup">test accounts</a>
-    that you registered on the Google Play Developer Console. If the primary account on your device is not a
-    test account, you must do a factory reset of the device and then sign in with one of your test
-    accounts. To perform a factory reset, do the following:</p>
-    <ol>
-      <li>Open Settings on your device.</li>
-      <li>Touch <strong>Privacy</strong>.</li>
-      <li>Touch <strong>Factory data reset</strong>.</li>
-      <li>Touch <strong>Reset phone</strong>.</li>
-      <li>After the phone resets, be sure to sign in with one of your test accounts during the
-      device setup process.</li>
-    </ol>
-  </li>
-  <li><strong>Run the application and purchase the sword or the potion.</strong>
-    <p>When you use a test account to purchase items, the test account is billed through Google
-    payments and your Google payments merchant account receives a payout for the purchase.
-    Therefore, you may want to refund purchases that are made with test accounts, otherwise the
-    purchases will show up as actual payouts to your merchant account.</p>
-</ol>
-
-<p class="note"><strong>Note</strong>: Debug log messages are turned off by default in the
-sample application. You can turn them on by setting the variable <code>DEBUG</code>
-to <code>true</code> in the <code>Consts.java</code> file.</p>
-
-<h2 id="billing-add-aidl">Adding the AIDL file to your project</h2>
-
-<p>The sample application contains an Android Interface Definition Language (AIDL) file,  which
-defines the interface to Google Play's in-app billing service
-(<code>MarketBillingService</code>). When you add this file to your project, the Android build
-environment creates an interface file (<code>IMarketBillingService.java</code>). You can then use
-this interface to make billing requests by invoking IPC method calls.</p>
-
-<p>If you are using the ADT plug-in with Eclipse, you can just add this file to your
-<code>/src</code> directory. Eclipse will automatically generate the interface file when you build
-your project (which should happen immediately). If you are not using the ADT plug-in, you can put
-the AIDL file into your project and use the Ant tool to build your project so that the
-<code>IMarketBillingService.java</code> file gets generated.</p>
-
-<p>To add the <code>IMarketBillingService.aidl</code> file to your project, do the following:</p>
-
-<ol>
-  <li>Create the following directory in your application's <code>/src</code> directory:
-    <p><code>com/android/vending/billing/</code></p>
-  </li>
-  <li>Copy the <code>IMarketBillingService.aidl</code> file into the
-  <code>sample/src/com/android/vending/billing/</code> directory.</li>
-  <li>Build your application.</li>
-</ol>
-
-<p>You should now find a generated interface file named <code>IMarketBillingService.java</code> in
-the <code>gen</code> folder of your project.</p>
-
-<h2 id="billing-permission">Updating Your Application's Manifest</h2>
-
-<p>In-app billing relies on the Google Play application, which handles all communication between
-your application and the Google Play server. To use the Google Play application, your
-application must request the proper permission. You can do this by adding the
-<code>com.android.vending.BILLING</code> permission to your AndroidManifest.xml file. If your
-application does not declare the in-app billing permission, but attempts to send billing requests,
-Google Play will refuse the requests and respond with a <code>RESULT_DEVELOPER_ERROR</code>
-response code.</p>
-
-<p>In addition to the billing permission, you need to declare the {@link
-android.content.BroadcastReceiver} that you will use to receive asynchronous response messages
-(broadcast intents) from Google Play, and you need to declare the {@link android.app.Service}
-that you will use to bind with the <code>IMarketBillingService</code> and send messages to Google
-Play. You must also declare <a
-href="{@docRoot}guide/topics/manifest/intent-filter-element.html">intent filters</a> for the {@link
-android.content.BroadcastReceiver} so that the Android system knows how to handle the broadcast
-intents that are sent from the Google Play application.</p>
-
-<p>For example, here is how the in-app billing sample application declares the billing permission,
-the {@link android.content.BroadcastReceiver}, the {@link android.app.Service}, and the intent
-filters. In the sample application, <code>BillingReceiver</code> is the {@link
-android.content.BroadcastReceiver} that handles broadcast intents from the Google Play
-application and <code>BillingService</code> is the {@link android.app.Service} that sends requests
-to the Google Play application.</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-  package="com.example.dungeons"
-  android:versionCode="1"
-  android:versionName="1.0"&gt;
-
-  &lt;uses-permission android:name="com.android.vending.BILLING" /&gt;
-
-  &lt;application android:icon="@drawable/icon" android:label="@string/app_name"&gt;
-    &lt;activity android:name=".Dungeons" android:label="@string/app_name"&gt;
-      &lt;intent-filter&gt;
-        &lt;action android:name="android.intent.action.MAIN" /&gt;
-        &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
-      &lt;/intent-filter&gt;
-    &lt;/activity&gt;
-
-    &lt;service android:name="BillingService" /&gt;
-
-    &lt;receiver android:name="BillingReceiver"&gt;
-      &lt;intent-filter&gt;
-        &lt;action android:name="com.android.vending.billing.IN_APP_NOTIFY" /&gt;
-        &lt;action android:name="com.android.vending.billing.RESPONSE_CODE" /&gt;
-        &lt;action android:name="com.android.vending.billing.PURCHASE_STATE_CHANGED" /&gt;
-      &lt;/intent-filter&gt;
-    &lt;/receiver&gt;
-
-  &lt;/application&gt;
-&lt;/manifest&gt;
-</pre>
-
-<h2 id="billing-service">Creating a Local Service</h2>
-
-<p>Your application must have a local {@link android.app.Service} to facilitate messaging between
-your application and Google Play. At a minimum, this service must do the following:</p>
-
-<ul>
-  <li>Bind to the <code>MarketBillingService</code>.
-  <li>Send billing requests (as IPC method calls) to the Google Play application. The five types
-  of billing requests include:
-    <ul>
-      <li><code>CHECK_BILLING_SUPPORTED</code> requests</li>
-      <li><code>REQUEST_PURCHASE</code> requests</li>
-      <li><code>GET_PURCHASE_INFORMATION</code> requests</li>
-      <li><code>CONFIRM_NOTIFICATIONS</code> requests</li>
-      <li><code>RESTORE_TRANSACTIONS</code> requests</li>
-    </ul>
-  </li>
-  <li>Handle the synchronous response messages that are returned with each billing request.</li>
-</ul>
-
-<h3>Binding to the MarketBillingService</h3>
-
-<p>Binding to the <code>MarketBillingService</code> is relatively easy if you've already added the
-<code>IMarketBillingService.aidl</code> file to your project. The following code sample shows how to
-use the {@link android.content.Context#bindService bindService()} method to bind a service to the
-<code>MarketBillingService</code>. You could put this code in your service's {@link
-android.app.Activity#onCreate onCreate()} method.</p>
-
-<pre>
-try {
-  boolean bindResult = mContext.bindService(
-    new Intent("com.android.vending.billing.MarketBillingService.BIND"), this,
-    Context.BIND_AUTO_CREATE);
-  if (bindResult) {
-    Log.i(TAG, "Service bind successful.");
-  } else {
-    Log.e(TAG, "Could not bind to the MarketBillingService.");
-  }
-} catch (SecurityException e) {
-  Log.e(TAG, "Security exception: " + e);
-}
-</pre>
-
-<p>After you bind to the service, you need to create a reference to the
-<code>IMarketBillingService</code> interface so you can make billing requests via IPC method calls.
-The following code shows you how to do this using the {@link
-android.content.ServiceConnection#onServiceConnected onServiceConnected()} callback method.</p>
-
-<pre>
-/**
-  * The Android system calls this when we are connected to the MarketBillingService.
-  */
-  public void onServiceConnected(ComponentName name, IBinder service) {
-    Log.i(TAG, "MarketBillingService connected.");
-    mService = IMarketBillingService.Stub.asInterface(service);
-  }
-</pre>
-
-<p>You can now use the <code>mService</code> reference to invoke the
-<code>sendBillingRequest()</code> method.</p>
-
-<p>For a complete implementation of a service that binds to the <code>MarketBillingService</code>,
-see the <code>BillingService</code> class in the sample application.</p>
-
-<h3>Sending billing requests to the MarketBillingService</h3>
-
-<p>Now that your {@link android.app.Service} has a reference to the
-<code>IMarketBillingService</code> interface, you can use that reference to send billing requests
-(via IPC method calls) to the <code>MarketBillingService</code>. The
-<code>MarketBillingService</code> IPC interface exposes a single public method
-(<code>sendBillingRequest()</code>), which takes a single {@link android.os.Bundle} parameter. The
-Bundle that you deliver with this method specifies the type of request you want to perform, using
-various key-value pairs. For instance, one key indicates the type of request you are making, another
-indicates the item being purchased, and another identifies your application. The
-<code>sendBillingRequest()</code> method immediately returns a Bundle containing an initial response
-code. However, this is not the complete purchase response; the complete response is delivered with
-an asynchronous broadcast intent. For more information about the various Bundle keys that are
-supported by the <code>MarketBillingService</code>, see <a
-href="{@docRoot}google/play/billing/v2/billing_reference.html#billing-interface">In-app Billing
-Service Interface</a>.</p>
-
-<p>You can use the <code>sendBillingRequest()</code> method to send five types of billing requests.
-The five request types are specified using the <code>BILLING_REQUEST</code> Bundle key. This Bundle
-key can have the following five values:</p>
-
-<ul>
-  <li><code>CHECK_BILLING_SUPPORTED</code>&mdash;verifies that the Google Play application
-  supports in-app billing and the version of the In-app Billing API available.</li>
-  <li><code>REQUEST_PURCHASE</code>&mdash;sends a purchase request for an in-app item.</li>
-  <li><code>GET_PURCHASE_INFORMATION</code>&mdash;retrieves transaction information for a purchase
-  or refund.</li>
-  <li><code>CONFIRM_NOTIFICATIONS</code>&mdash;acknowledges that you received the transaction
-  information for a purchase or refund.</li>
-  <li><code>RESTORE_TRANSACTIONS</code>&mdash;retrieves a user's transaction history for <a
-  href="{@docRoot}google/play/billing/billing_admin.html#billing-purchase-type">managed
-  purchases</a>.</li>
-</ul>
-
-<p>To make any of these billing requests, you first need to build an initial {@link
-android.os.Bundle} that contains the three keys that are required for all requests:
-<code>BILLING_REQUEST</code>, <code>API_VERSION</code>, and <code>PACKAGE_NAME</code>. The following
-code sample shows you how to create a helper method named <code>makeRequestBundle()</code> that does
-this.</p>
-
-<pre>
-protected Bundle makeRequestBundle(String method) {
-  Bundle request = new Bundle();
-  request.putString(BILLING_REQUEST, method);
-  request.putInt(API_VERSION, 1);
-  request.putString(PACKAGE_NAME, getPackageName());
-  return request;
-</pre>
-
-<p>To use this helper method, you pass in a <code>String</code> that corresponds to one of the five
-types of billing requests. The method returns a Bundle that has the three required keys defined. The
-following sections show you how to use this helper method when you send a billing request.</p>
-
-<p class="caution"><strong>Important</strong>: You must make all in-app billing requests from your
-application's main thread.</p>
-
-<h4>Verifying that in-app billing is supported (CHECK_BILLING_SUPPPORTED)</h4>
-
-<p>The following code sample shows how to verify whether the Google Play application supports
-in-app billing and confirm what version of the API it supports. In the sample, <code>mService</code>
-is an instance of the <code>MarketBillingService</code> interface.</p>
-
-<pre>
-/**
-* Request type is CHECK_BILLING_SUPPORTED
-*/
-  Bundle request = makeRequestBundle("CHECK_BILLING_SUPPORTED");
-  Bundle response = mService.sendBillingRequest(request);
-  // Do something with this response.
-}
-</pre>
-
-<p>The <code>makeRequestBundle()</code> method constructs an initial Bundle, which contains the
-three keys that are required for all requests: <code>BILLING_REQUEST</code>,
-<code>API_VERSION</code>, and <code>PACKAGE_NAME</code>. If you are offering subscriptions in
-your app, set the API_VERSION key to a value of "2", to confirm that In-app Billing v2 is
-available. For an example, see
-<a href="{@docRoot}google/play/billing/v2/billing_subscriptions.html#version">Subscriptions</a>.</p>
-
-<p>The <code>CHECK_BILLING_SUPPORTED</code> request returns a synchronous {@link
-android.os.Bundle} response, which contains only a single key: <code>RESPONSE_CODE</code>. The
-<code>RESPONSE_CODE</code> key can have the following values:</p>
-<ul>
-  <li><code>RESULT_OK</code>&mdash;the spedified version of in-app billing is supported.</li>
-  <li><code>RESULT_BILLING_UNAVAILABLE</code>&mdash;in-app billing is not available because the API
-  version you specified is not recognized or the user is not eligible to make in-app purchases (for
-  example, the user resides in a country that prohibits in-app purchases).</li>
-  <li><code>RESULT_ERROR</code>&mdash;there was an error connecting with the Google Play
-  application.</li>
-  <li><code>RESULT_DEVELOPER_ERROR</code>&mdash;the application is trying to make an in-app billing
-  request but the application has not declared the <code>com.android.vending.BILLING</code>
-  permission in its manifest. Can also indicate that an application is not properly signed, or that
-  you sent a malformed request.</li>
-</ul>
-
-<p>The <code>CHECK_BILLING_SUPPORTED</code> request does not trigger any asynchronous responses
-(broadcast intents).</p>
-
-<p>We recommend that you invoke the <code>CHECK_BILLING_SUPPORTED</code> request within a
-<code>RemoteException</code> block. When your code throws a <code>RemoteException</code> it
-indicates that the remote method call failed, which means that the Google Play application is out
-of date and needs to be updated. In this case, you can provide users with an error message that
-contains a link to the <a
-href="http://market.android.com/support/bin/answer.py?answer=190860">Updating Google Play</a>
-Help topic.</p>
-
-<p>The sample application demonstrates how you can handle this error condition (see
-<code>DIALOG_CANNOT_CONNECT_ID</code> in <code>Dungeons.java</code>).</p>
-
-<h4>Making a purchase request (REQUEST_PURCHASE)</h4>
-
-<p>To make a purchase request you must do the following:</p>
-
-<ul>
-  <li>Send the <code>REQUEST_PURCHASE</code> request.</li>
-  <li>Launch the {@link android.app.PendingIntent} that is returned from the Google Play
-  application.</li>
-  <li>Handle the broadcast intents that are sent by the Google Play application.</li>
-</ul>
-
-<h5>Making the request</h5>
-
-<p>You must specify four keys in the request {@link android.os.Bundle}. The following code sample
-shows how to set these keys and make a purchase request for a single in-app item. In the sample,
-<code>mProductId</code> is the Google Play product ID of an in-app item (which is listed in the
-application's <a href="{@docRoot}google/play/billing/billing_admin.html#billing-list-setup">product
-list</a>), and <code>mService</code> is an instance of the <code>MarketBillingService</code>
-interface.</p>
-
-<pre>
-/**
-* Request type is REQUEST_PURCHASE
-*/
-  Bundle request = makeRequestBundle("REQUEST_PURCHASE");
-  request.putString(ITEM_ID, mProductId);
-  // Request is for a standard in-app product
-  request.putString(ITEM_TYPE, "inapp");
-  // Note that the developer payload is optional.
-  if (mDeveloperPayload != null) {
-    request.putString(DEVELOPER_PAYLOAD, mDeveloperPayload);
-  }
-  Bundle response = mService.sendBillingRequest(request);
-  // Do something with this response.
-</pre>
-<p>The <code>makeRequestBundle()</code> method constructs an initial Bundle, which contains the
-three keys that are required for all requests: <code>BILLING_REQUEST</code>,
-<code>API_VERSION</code>, and <code>PACKAGE_NAME</code>. The <code>ITEM_ID</code> key is then added
-to the Bundle prior to invoking the <code>sendBillingRequest()</code> method.</p>
-
-<p>The request returns a synchronous {@link android.os.Bundle} response, which contains three keys:
-<code>RESPONSE_CODE</code>, <code>PURCHASE_INTENT</code>, and <code>REQUEST_ID</code>. The
-<code>RESPONSE_CODE</code> key provides you with the status of the request and the
-<code>REQUEST_ID</code> key provides you with a unique request identifier for the request. The
-<code>PURCHASE_INTENT</code> key provides you with a {@link android.app.PendingIntent}, which you
-can use to launch the checkout UI.</p>
-
-<h5>Using the pending intent</h5>
-
-<p>How you use the pending intent depends on which version of Android a device is running. On
-Android 1.6, you must use the pending intent to launch the checkout UI in its own separate task
-instead of your application's activity stack. On Android 2.0 and higher, you can use the pending
-intent to launch the checkout UI on your application's activity stack. The following code shows you
-how to do this. You can find this code in the <code>PurchaseObserver.java</code> file in the sample
-application.</p>
-
-<pre>
-void startBuyPageActivity(PendingIntent pendingIntent, Intent intent) {
-  if (mStartIntentSender != null) {
-    // This is on Android 2.0 and beyond.  The in-app checkout page activity
-    // will be on the activity stack of the application.
-    try {
-      // This implements the method call:
-      // mActivity.startIntentSender(pendingIntent.getIntentSender(),
-      //     intent, 0, 0, 0);
-      mStartIntentSenderArgs[0] = pendingIntent.getIntentSender();
-      mStartIntentSenderArgs[1] = intent;
-      mStartIntentSenderArgs[2] = Integer.valueOf(0);
-      mStartIntentSenderArgs[3] = Integer.valueOf(0);
-      mStartIntentSenderArgs[4] = Integer.valueOf(0);
-      mStartIntentSender.invoke(mActivity, mStartIntentSenderArgs);
-    } catch (Exception e) {
-      Log.e(TAG, "error starting activity", e);
-      }
-  } else {
-    // This is on Android 1.6. The in-app checkout page activity will be on its
-    // own separate activity stack instead of on the activity stack of
-    // the application.
-    try {
-      pendingIntent.send(mActivity, 0 /* code */, intent);
-    } catch (CanceledException e) {
-      Log.e(TAG, "error starting activity", e);
-      }
-  }
-}
-</pre>
-
-<p class="caution"><strong>Important:</strong> You must launch the pending intent from an activity
-context and not an application context. Also, you cannot use the <code>singleTop</code> <a
-href="{@docRoot}guide/topics/manifest/activity-element.html#lmode">launch mode</a> to launch the
-pending intent. If you do either of these, the Android system will not attach the pending intent to
-your application process. Instead, it will bring Google Play to the foreground, disrupting your
-application.</p>
-
-<h5>Handling broadcast intents</h5>
-
-<p>A <code>REQUEST_PURCHASE</code> request also triggers two asynchronous responses (broadcast
-intents). First, the Google Play application sends a <code>RESPONSE_CODE</code> broadcast intent,
-which provides error information about the request. If the request does not generate an
-error, the <code>RESPONSE_CODE</code> broadcast intent returns <code>RESULT_OK</code>, which
-indicates that the request was successfully sent. (To be clear, a <code>RESULT_OK</code> response
-does not indicate that the requested purchase was successful; it indicates that the request was sent
-successfully to Google Play.)</p>
-
-<p>Next, when the requested transaction changes state (for example, the purchase is successfully
-charged to a credit card or the user cancels the purchase), the Google Play application sends an
-<code>IN_APP_NOTIFY</code> broadcast intent. This message contains a notification ID, which you can
-use to retrieve the transaction details for the <code>REQUEST_PURCHASE</code> request.</p>
-
-<p class="note"><strong>Note:</strong> The Google Play application also sends
-an <code>IN_APP_NOTIFY</code> for refunds. For more information, see <a
-href="{@docRoot}google/play/billing/v2/api.html#billing-action-notify">Handling
-IN_APP_NOTIFY messages</a>.</p>
-
-<p>Because the purchase process is not instantaneous and can take several seconds (or more), you
-must assume that a purchase request is pending from the time you receive a <code>RESULT_OK</code>
-message until you receive an <code>IN_APP_NOTIFY</code> message for the transaction. While the
-transaction is pending, the Google Play checkout UI displays an "Authorizing purchase..."
-notification; however, this notification is dismissed after 60 seconds and you should not rely on
-this notification as your primary means of conveying transaction status to users. Instead, we
-recommend that you do the following:</p>
-
-<ul>
-  <li>Add an {@link android.app.Activity} to your application that shows users the status of pending
-and completed in-app purchases.</li>
-  <li>Use a <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html">status
-bar notification</a> to keep users informed about the progress of a purchase.</li>
-</ul>
-
-<p>To use these two UI elements, you could invoke a status bar notification with a ticker-text
-message that says "Purchase pending" when your application receives a <code>RESULT_OK</code>
-message. Then, when your application receives an <code>IN_APP_NOTIFY</code> message, you could
-update the notification with a new message that says "Purchase succeeded" or "Purchase failed." When
-a user touches the expanded status bar notification, you could launch the activity that shows the
-status of pending and completed in-app purchases.</p>
-
-<p>If you use some other UI technique to inform users about the state of a pending transaction,
-be sure that your pending status UI does not block your application. For example, you should avoid
-using a hovering progress wheel to convey the status of a pending transaction because a pending
-transaction could last a long time, particularly if a device loses network connectivity and cannot
-receive transaction updates from Google Play.</p>
-
-<p class="caution"><strong>Important:</strong> If a user purchases a managed item, you must prevent
-the user from purchasing the item again while the original transaction is pending. If a user
-attempts to purchase a managed item twice, and the first transaction is still pending, Google
-Play will display an error to the user; however, Google Play will not send an error to your
-application notifying you that the second purchase request was canceled. This might cause your
-application to get stuck in a pending state while it waits for an <code>IN_APP_NOTIFY</code> message
-for the second purchase request.</p>
-
-<h4>Retrieving transaction information for a purchase or refund (GET_PURCHASE_INFORMATION)</h4>
-
-<p>You retrieve transaction information in response to an <code>IN_APP_NOTIFY</code> broadcast
-intent. The <code>IN_APP_NOTIFY</code> message contains a notification ID, which you can use to
-retrieve transaction information.</p>
-
-<p>To retrieve transaction information for a purchase or refund you must specify five keys in the
-request {@link android.os.Bundle}. The following code sample shows how to set these keys and make
-the request. In the sample, <code>mService</code> is an instance of the
-<code>MarketBillingService</code> interface.</p>
-
-<pre>
-/**
-* Request type is GET_PURCHASE_INFORMATION
-*/
-  Bundle request = makeRequestBundle("GET_PURCHASE_INFORMATION");
-  request.putLong(REQUEST_NONCE, mNonce);
-  request.putStringArray(NOTIFY_IDS, mNotifyIds);
-  Bundle response = mService.sendBillingRequest(request);
-  // Do something with this response.
-}
-</pre>
-<p>The <code>makeRequestBundle()</code> method constructs an initial Bundle, which contains the
-three keys that are required for all requests: <code>BILLING_REQUEST</code>,
-<code>API_VERSION</code>, and <code>PACKAGE_NAME</code>. The additional keys are then added to the
-bundle prior to invoking the <code>sendBillingRequest()</code> method. The
-<code>REQUEST_NONCE</code> key contains a cryptographically secure nonce (number used once) that you
-must generate. The Google Play application returns this nonce with the
-<code>PURCHASE_STATE_CHANGED</code> broadcast intent so you can verify the integrity of the
-transaction information. The <code>NOTIFY_IDS</code> key contains an array of notification IDs,
-which you received in the <code>IN_APP_NOTIFY</code> broadcast intent.</p>
-
-<p>The request returns a synchronous {@link android.os.Bundle} response, which contains two keys:
-<code>RESPONSE_CODE</code> and <code>REQUEST_ID</code>. The <code>RESPONSE_CODE</code> key provides
-you with the status of the request and the <code>REQUEST_ID</code> key provides you with a unique
-request identifier for the request.</p>
-
-<p>A <code>GET_PURCHASE_INFORMATION</code> request also triggers two asynchronous responses
-(broadcast intents). First, the Google Play application sends a <code>RESPONSE_CODE</code>
-broadcast intent, which provides status and error information about the request. Next, if the
-request was successful, the Google Play application sends a <code>PURCHASE_STATE_CHANGED</code>
-broadcast intent. This message contains detailed transaction information. The transaction
-information is contained in a signed JSON string (unencrypted). The message includes the signature
-so you can verify the integrity of the signed string.</p>
-
-<h4>Acknowledging transaction information (CONFIRM_NOTIFICATIONS)</h4>
-
-<p>To acknowledge that you received transaction information you send a
-<code>CONFIRM_NOTIFICATIONS</code> request. You must specify four keys in the request {@link
-android.os.Bundle}. The following code sample shows how to set these keys and make the request. In
-the sample, <code>mService</code> is an instance of the <code>MarketBillingService</code>
-interface.</p>
-
-<pre>
-/**
-* Request type is CONFIRM_NOTIFICATIONS
-*/
-  Bundle request = makeRequestBundle("CONFIRM_NOTIFICATIONS");
-  request.putStringArray(NOTIFY_IDS, mNotifyIds);
-  Bundle response = mService.sendBillingRequest(request);
-  // Do something with this response.
-}
-</pre>
-<p>The <code>makeRequestBundle()</code> method constructs an initial Bundle, which contains the
-three keys that are required for all requests: <code>BILLING_REQUEST</code>,
-<code>API_VERSION</code>, and <code>PACKAGE_NAME</code>. The additional <code>NOTIFY_IDS</code> key
-is then added to the bundle prior to invoking the <code>sendBillingRequest()</code> method. The
-<code>NOTIFY_IDS</code> key contains an array of notification IDs, which you received in an
-<code>IN_APP_NOTIFY</code> broadcast intent and also used in a <code>GET_PURCHASE_INFORMATION</code>
-request.</p>
-
-<p>The request returns a synchronous {@link android.os.Bundle} response, which contains two keys:
-<code>RESPONSE_CODE</code> and <code>REQUEST_ID</code>. The <code>RESPONSE_CODE</code> key provides
-you with the status of the request and the <code>REQUEST_ID</code> key provides you with a unique
-request identifier for the request.</p>
-
-<p>A <code>CONFIRM_NOTIFICATIONS</code> request triggers a single asynchronous response&mdash;a
-<code>RESPONSE_CODE</code> broadcast intent. This broadcast intent provides status and error
-information about the request.</p>
-
-<p>You must send a confirmation when you receive transaction information from Google Play. If you
-don't send a confirmation message, Google Play will continue sending
-<code>IN_APP_NOTIFY</code> messages for the transactions you have not confirmed. Also,
-your application must be able to handle <code>IN_APP_NOTIFY</code> messages that contain multiple
-orders.</p>
-
-<p>In addition, as a best practice, you should not send a <code>CONFIRM_NOTIFICATIONS</code> request
-for a purchased item until you have delivered the item to the user. This way, if your application
-crashes or something else prevents your application from delivering the product, your application
-will still receive an <code>IN_APP_NOTIFY</code> broadcast intent from Google Play indicating
-that you need to deliver the product.</p>
-
-<h4>Restoring transaction information (RESTORE_TRANSACTIONS)</h4>
-
-<p>To restore a user's transaction information, you send a <code>RESTORE_TRANSACTIONS</code>
-request. You must specify four keys in the request {@link android.os.Bundle}. The following code
-sample shows how to set these keys and make the request. In the sample, <code>mService</code> is an
-instance of the <code>MarketBillingService</code> interface.</p>
-
-<pre>
-/**
-* Request type is RESTORE_TRANSACTIONS
-*/
-  Bundle request = makeRequestBundle("RESTORE_TRANSACTIONS");
-  request.putLong(REQUEST_NONCE, mNonce);
-  Bundle response = mService.sendBillingRequest(request);
-  // Do something with this response.
-}
-</pre>
-<p>The <code>makeRequestBundle()</code> method constructs an initial Bundle, which contains the
-three keys that are required for all requests: <code>BILLING_REQUEST</code>,
-<code>API_VERSION</code>, and <code>PACKAGE_NAME</code>. The additional <code>REQUEST_NONCE</code>
-key is then added to the bundle prior to invoking the <code>sendBillingRequest()</code> method. The
-<code>REQUEST_NONCE</code> key contains a cryptographically secure nonce (number used once) that you
-must generate. The Google Play application returns this nonce with the transactions information
-contained in the <code>PURCHASE_STATE_CHANGED</code> broadcast intent so you can verify the
-integrity of the transaction information.</p>
-
-<p>The request returns a synchronous {@link android.os.Bundle} response, which contains two keys:
-<code>RESPONSE_CODE</code> and <code>REQUEST_ID</code>. The <code>RESPONSE_CODE</code> key provides
-you with the status of the request and the <code>REQUEST_ID</code> key provides you with a unique
-request identifier for the request.</p>
-
-<p>A <code>RESTORE_TRANSACTIONS</code> request also triggers two asynchronous responses (broadcast
-intents). First, the Google Play application sends a <code>RESPONSE_CODE</code> broadcast intent,
-which provides status and error information about the request. Next, if the request was successful,
-the Google Play application sends a <code>PURCHASE_STATE_CHANGED</code> broadcast intent. This
-message contains the detailed transaction information. The transaction information is contained in a
-signed JSON string (unencrypted). The message includes the signature so you can verify the integrity
-of the signed string.</p>
-
-<p class="note"><strong>Note:</strong> You should use the <code>RESTORE_TRANSACTIONS</code>
-request type only when your application is installed for the first time on a device or when your
-application has been removed from a device and reinstalled.</p>
-
-<h3>Other service tasks</h3>
-
-<p>You may also want your {@link android.app.Service} to receive intent messages from your {@link
-android.content.BroadcastReceiver}. You can use these intent messages to convey the information that
-was sent asynchronously from the Google Play application to your {@link
-android.content.BroadcastReceiver}. To see an example of how you can send and receive these intent
-messages, see the <code>BillingReceiver.java</code> and <code>BillingService.java</code> files in
-the sample application. You can use these samples as a basis for your own implementation. However,
-if you use any of the code from the sample application, be sure you follow the guidelines in <a
-href="{@docRoot}google/play/billing/billing_best_practices.html">Security and Design</a>.</p>
-
-<h2 id="billing-broadcast-receiver">Creating a BroadcastReceiver</h2>
-
-<p>The Google Play application uses broadcast intents to send asynchronous billing responses to
-your application. To receive these intent messages, you need to create a {@link
-android.content.BroadcastReceiver} that can handle the following intents:</p>
-
-<ul>
-  <li>com.android.vending.billing.RESPONSE_CODE
-  <p>This broadcast intent contains a Google Play response code, and is sent after you make an
-  in-app billing request. For more information about the response codes that are sent with this
-  response, see <a
-  href="{@docRoot}google/play/billing/v2/billing_reference.html#billing-codes">Google Play Response
-  Codes for In-app Billing</a>.</p>
-  </li>
-  <li>com.android.vending.billing.IN_APP_NOTIFY
-  <p>This response indicates that a purchase has changed state, which means a purchase succeeded,
-  was canceled, or was refunded. For more information about notification messages, see <a
-  href="{@docRoot}google/play/billing/v2/billing_reference.html#billing-intents">In-app Billing
-  Broadcast Intents</a></p>
-  </li>
-  <li>com.android.vending.billing.PURCHASE_STATE_CHANGED
-  <p>This broadcast intent contains detailed information about one or more transactions. For more
-  information about purchase state messages, see <a
-  href="{@docRoot}google/play/billing/v2/billing_reference.html#billing-intents">In-app Billing
-  Broadcast Intents</a></p>
-  </li>
-</ul>
-
-<p>Each of these broadcast intents provide intent extras, which your {@link
-android.content.BroadcastReceiver} must handle. The intent extras are listed in the following table
-(see table 1).</p>
-
-<p class="table-caption"><strong>Table 1.</strong> Description of broadcast intent extras that are
-sent in response to billing requests.</p>
-
-<table>
-
-<tr>
-<th>Intent</th>
-<th>Extra</th>
-<th>Description</th>
-</tr>
-<tr>
-  <td><code>com.android.vending.billing.RESPONSE_CODE</code></td>
-  <td><code>request_id</code></td>
-  <td>A <code>long</code> representing a request ID. A request ID identifies a specific billing
-  request and is returned by Google Play at the time a request is made.</td>
-</tr>
-<tr>
-  <td><code>com.android.vending.billing.RESPONSE_CODE</code></td>
-  <td><code>response_code</code></td>
-  <td>An <code>int</code> representing the actual Google Play server response code.</td>
-</tr>
-<tr>
-  <td><code>com.android.vending.billing.IN_APP_NOTIFY</code></td>
-  <td><code>notification_id</code></td>
-  <td>A <code>String</code> representing the notification ID for a given purchase state change.
-  Google Play notifies you when there is a purchase state change and the notification includes a
-  unique notification ID. To get the details of the purchase state change, you send the notification
-  ID with the <code>GET_PURCHASE_INFORMATION</code> request.</td>
-</tr>
-<tr>
-  <td><code>com.android.vending.billing.PURCHASE_STATE_CHANGED</code></td>
-  <td><code>inapp_signed_data</code></td>
-  <td>A <code>String</code> representing the signed JSON string. The JSON string contains
-  information about the billing transaction, such as order number, amount, and the item that was
-  purchased or refunded.</td>
-</tr>
-<tr>
-  <td><code>com.android.vending.billing.PURCHASE_STATE_CHANGED</code></td>
-  <td><code>inapp_signature</code></td>
-  <td>A <code>String</code> representing the signature of the JSON string.</td>
-</tr>
-</table>
-
-<p>The following code sample shows how to handle these broadcast intents and intent extras within a
-{@link android.content.BroadcastReceiver}. The BroadcastReceiver in this case is named
-<code>BillingReceiver</code>, just as it is in the sample application.</p>
-
-<pre>
-public class BillingReceiver extends BroadcastReceiver {
-
-  private static final String TAG = "BillingReceiver";
-
-  // Intent actions that we receive in the BillingReceiver from Google Play.
-  // These are defined by Google Play and cannot be changed.
-  // The sample application defines these in the Consts.java file.
-  public static final String ACTION_NOTIFY =
-      "com.android.vending.billing.IN_APP_NOTIFY";
-  public static final String ACTION_RESPONSE_CODE =
-      "com.android.vending.billing.RESPONSE_CODE";
-  public static final String ACTION_PURCHASE_STATE_CHANGED =
-      "com.android.vending.billing.PURCHASE_STATE_CHANGED";
-
-  // The intent extras that are passed in an intent from Google Play.
-  // These are defined by Google Play and cannot be changed.
-  // The sample application defines these in the Consts.java file.
-  public static final String NOTIFICATION_ID = "notification_id";
-  public static final String INAPP_SIGNED_DATA = "inapp_signed_data";
-  public static final String INAPP_SIGNATURE = "inapp_signature";
-  public static final String INAPP_REQUEST_ID = "request_id";
-  public static final String INAPP_RESPONSE_CODE = "response_code";
-
-
-  &#64;Override
-  public void onReceive(Context context, Intent intent) {
-    String action = intent.getAction();
-    if (ACTION_PURCHASE_STATE_CHANGED.equals(action)) {
-      String signedData = intent.getStringExtra(INAPP_SIGNED_DATA);
-      String signature = intent.getStringExtra(INAPP_SIGNATURE);
-      // Do something with the signedData and the signature.
-    } else if (ACTION_NOTIFY.equals(action)) {
-      String notifyId = intent.getStringExtra(NOTIFICATION_ID);
-      // Do something with the notifyId.
-    } else if (ACTION_RESPONSE_CODE.equals(action)) {
-      long requestId = intent.getLongExtra(INAPP_REQUEST_ID, -1);
-      int responseCodeIndex = intent.getIntExtra(INAPP_RESPONSE_CODE,
-        ResponseCode.RESULT_ERROR.ordinal());
-      // Do something with the requestId and the responseCodeIndex.
-    } else {
-      Log.w(TAG, "unexpected action: " + action);
-    }
-  }
-  // Perform other processing here, such as forwarding intent messages
-  // to your local service.
-}
-</pre>
-
-<p>In addition to receiving broadcast intents from the Google Play application, your {@link
-android.content.BroadcastReceiver} must handle the information it received in the broadcast intents.
-Usually, your {@link android.content.BroadcastReceiver} does this by sending the information to a
-local service (discussed in the next section). The <code>BillingReceiver.java</code> file in the
-sample application shows you how to do this. You can use this sample as a basis for your own {@link
-android.content.BroadcastReceiver}. However, if you use any of the code from the sample application,
-be sure you follow the guidelines that are discussed in <a
-href="{@docRoot}google/play/billing/billing_best_practices.html">Security and Design </a>.</p>
-
-<h2 id="billing-security">Securing Your Application</h2>
-
-<p>To help ensure the integrity of the transaction information that is sent to your application,
-Google Play signs the JSON string that is contained in the <code>PURCHASE_STATE_CHANGED</code>
-broadcast intent. Google Play uses the private key that is associated with your publisher account
-to create this signature. The Developer Console generates an RSA key pair for each publisher account.
-You can find the public key portion of this key pair on your account's profile page. It is the same
-public key that is used with Google Play licensing.</p>
-
-<p>When Google Play signs a billing response, it includes the signed JSON string (unencrypted)
-and the signature. When your application receives this signed response you can use the public key
-portion of your RSA key pair to verify the signature. By performing signature verification you can
-help detect responses that have been tampered with or that have been spoofed. You can perform this
-signature verification step in your application; however, if your application connects to a secure
-remote server then we recommend that you perform the signature verification on that server.</p>
-
-<p>In-app billing also uses nonces (a random number used once) to help verify the integrity of the
-purchase information that's returned from Google Play. Your application must generate a nonce and
-send it with a <code>GET_PURCHASE_INFORMATION</code> request and a <code>RESTORE_TRANSACTIONS</code>
-request. When Google Play receives the request, it adds the nonce to the JSON string that
-contains the transaction information. The JSON string is then signed and returned to your
-application. When your application receives the JSON string, you need to verify the nonce as well as
-the signature of the JSON string.</p>
-
-<p>For more information about best practices for security and design, see <a
-href="{@docRoot}google/play/billing/billing_best_practices.html">Security and Design</a>.</p>
-
-<h3 id="billing-signatures">Verifying signatures and nonces</h3>
-
-<p>Google Play's in-app billing service uses two mechanisms to help verify the integrity of the
-transaction information you receive from Google Play: nonces and signatures. A nonce (number used
-once) is a cryptographically secure number that your application generates and sends with every
-<code>GET_PURCHASE_INFORMATION</code> and <code>RESTORE_TRANSACTIONS</code> request. The nonce is
-returned with the <code>PURCHASE_STATE_CHANGED</code> broadcast intent, enabling you to verify that
-any given <code>PURCHASE_STATE_CHANGED</code> response corresponds to an actual request that you
-made. Every <code>PURCHASE_STATE_CHANGED</code> broadcast intent also includes a signed JSON string
-and a signature, which you can use to verify the integrity of the response.</p>
-
-<p>Your application must provide a way to generate, manage, and verify nonces. The following sample
-code shows some simple methods you can use to do this.</p>
-
-<pre>
-  private static final SecureRandom RANDOM = new SecureRandom();
-  private static HashSet&lt;Long&gt; sKnownNonces = new HashSet&lt;Long&gt;();
-
-  public static long generateNonce() {
-    long nonce = RANDOM.nextLong();
-    sKnownNonces.add(nonce);
-    return nonce;
-  }
-
-  public static void removeNonce(long nonce) {
-    sKnownNonces.remove(nonce);
-  }
-
-  public static boolean isNonceKnown(long nonce) {
-    return sKnownNonces.contains(nonce);
-  }
-</pre>
-
-<p>Your application must also provide a way to verify the signatures that accompany every
-<code>PURCHASE_STATE_CHANGED</code> broadcast intent. The <code>Security.java</code> file in the
-sample application shows you how to do this. If you use this file as a basis for your own security
-implementation, be sure to follow the guidelines in <a
-href="{@docRoot}google/play/billing/billing_best_practices.html">Security and Design</a> and
-obfuscate your code.</p>
-
-<p>You will need to use your Google Play public key to perform the signature verification. The
-following procedure shows you how to retrieve Base64-encoded public key from the Google Play
-Developer Console.</p>
-
-<ol>
-  <li>Log in to your <a href="http://play.google.com/apps/publish">publisher account</a>.</li>
-  <li>On the upper left part of the page, click <strong>All applications</strong> and then click
-  the app name in the listing.</li>
-  <li>Click <em>Services &amp; APIs</em> and find "Your License Key for this Application" on the page. </li>
-  <li>Copy the app's public key.</li>
-</ol>
-
-<p class="caution"><strong>Important</strong>: To keep your public key safe from malicious users and
-hackers, do not embed your public key as an entire literal string. Instead, construct the string at
-runtime from pieces or use bit manipulation (for example, XOR with some other string) to hide the
-actual key. The key itself is not secret information, but you do not want to make it easy for a
-hacker or malicious user to replace the public key with another key.</p>
-
-<div style="width:640px;">
-<img src="{@docRoot}images/licensing_public_key.png" class="frame">
-<p class="img-caption"><strong>Figure
-2.</strong> An app's license key is available from the Services &amp; APIs page in
-the Developer Console.</p>
-</div>
-
-
-<h2 id="billing-implement">Modifying Your Application Code</h2>
-
-<p>After you finish adding in-app billing components to your project, you are ready to modify your
-application's code. For a typical implementation, like the one that is demonstrated in the sample
-application, this means you need to write code to do the following: </p>
-
-<ul>
-  <li>Create a storage mechanism for storing users' purchase information.</li>
-  <li>Create a user interface that lets users select items for purchase.</li>
-</ul>
-
-<p>The sample code in <code>Dungeons.java</code> shows you how to do both of these tasks.</p>
-
-<h3>Creating a storage mechanism for storing purchase information</h3>
-
-<p>You must set up a database or some other mechanism for storing users' purchase information. The
-sample application provides an example database (PurchaseDatabase.java); however, the example
-database has been simplified for clarity and does not exhibit the security best practices that we
-recommend. If you have a remote server, we recommend that you store purchase information on your
-server instead of in a local database on a device. For more information about security best
-practices, see <a href="{@docRoot}google/play/billing/billing_best_practices.html">Security and
-Design</a>.</p>
-
-<p class="note"><strong>Note</strong>: If you store any purchase information on a device, be sure to
-encrypt the data and use a device-specific encryption key. Also, if the purchase type for any of
-your items is "unmanaged," we recommend that you back up the purchase information for these items to
-a remote server or use Android's <a href="{@docRoot}guide/topics/data/backup.html">data
-backup</a> framework to back up the purchase information. Backing up purchase information for
-unmanaged items is important because unmanaged items cannot be restored by using the
-<code>RESTORE_TRANSACTIONS</code> request type.</p>
-
-<h3>Creating a user interface for selecting items</h3>
-
-<p>You must provide users with a means for selecting items that they want to purchase. Google
-Play provides the checkout user interface (which is where the user provides a form of payment and
-approves the purchase), but your application must provide a control (widget) that invokes the
-<code>sendBillingRequest()</code> method when a user selects an item for purchase.</p>
-
-<p>You can render the control and trigger the <code>sendBillingRequest()</code> method any way you
-want. The sample application uses a spinner widget and a button to present items to a user and
-trigger a billing request (see <code>Dungeons.java</code>). The user interface also shows a list of
-recently purchased items.</p>
-
diff --git a/docs/html/google/play/billing/v2/billing_reference.jd b/docs/html/google/play/billing/v2/billing_reference.jd
deleted file mode 100644
index 5d97c98..0000000
--- a/docs/html/google/play/billing/v2/billing_reference.jd
+++ /dev/null
@@ -1,437 +0,0 @@
-page.title=In-app Billing Reference <span style="font-size:16px;">(IAB Version 2)</span>
-excludeFromSuggestions=true
-@jd:body
-
-<p class="caution" style=
-"background-color:#fffdeb;width:100%;margin-bottom:1em;padding:.5em;">
-  The <strong>In-app Billing Version 2 API</strong> has been deprecated in
-  favor of the Version 3 API. If your app is using In-app Billing, please
-  <strong>make sure that it is using the Version 3 API</strong>. If your app is
-  still using the Version 2 API, you must <strong>migrate to the Version 3 API
-  as soon as possible</strong>.<br>
-  <br>
-  We plan to turn off the In-app Billing Version 2 service on <strong>January
-  27, 2015</strong>, after which time users will <strong>no longer be able to
-  purchase in-app items and subscriptions through the Version 2 API</strong>.
-  We strongly encourage and recommend you migrate your apps to use Version 3
-  API by November 2014, to provide ample time for users to update their apps to
-  the new version.<br>
-  <br>
-  For more information, please see the <a href=
-  "http://support.google.com/googleplay/android-developer/answer/6090268">Help Center
-  article</a>. For common questions about transitioning your implementation to
-  In-app Billing Version 3, please see <a href=
-  "{@docRoot}google/play/billing/billing_overview.html#migration">Migration
-  Considerations</a>.
-</p>
-    <div id="qv-wrapper" style="margin-top:0;">
-<div id="qv">
-<h2>In this document</h2>
-  <ol>
-  <li><a href="#billing-codes">Server Response Codes</a></li>
-  <li><a href="#billing-interface">API Reference</a></li>
-  <li><a href="#billing-intents">Broadcast Intents</a></li>
-  <li><a href="#http-api">REST API for Subscriptions</a></li>
-  </ol>	
-
-<h2>Related Samples</h2>
-  <ol>
-  <li><a href="{@docRoot}google/play/billing/v2/billing_integrate.html#billing-download">Sample
-    Application (V2)</a></li>
-  </ol>  
-
-</div>
-</div>
-<p>This documentation provides technical reference information for using the In-app Billing Version 2 API. </p>
-
-<h2 id="billing-codes">Server Response Codes</h2>
-<p>The following table lists all of the server response codes that are sent from Google Play to
-your application. Google Play sends these response codes asynchronously as
-<code>response_code</code> extras in the <code>com.android.vending.billing.RESPONSE_CODE</code>
-broadcast intent. Your application must handle all of these response codes.</p>
-
-<p class="table-caption" id="response-codes-table"><strong>Table 6.</strong> Summary of response
-codes returned by Google Play.</p>
-
-<table>
-<tr>
-<th>Response Code</th>
-<th>Value</th>
-<th>Description</th>
-</tr>
-<tr>
-  <td><code>RESULT_OK</code></td>
-  <td>0</td>
-  <td>Indicates that the request was sent to the server successfully. When this code is returned in
-  response to a <code>CHECK_BILLING_SUPPORTED</code> request, indicates that billing is
-  supported.</td>
-</tr>
-<tr>
-  <td><code>RESULT_USER_CANCELED</code></td>
-  <td>1</td>
-  <td>Indicates that the user pressed the back button on the checkout page instead of buying the
-  item.</td>
-</tr>
-<tr>
-  <td><code>RESULT_SERVICE_UNAVAILABLE</code></td>
-  <td>2</td>
-  <td>Indicates that the network connection is down.</td>
-</tr>
-<tr>
-  <td><code>RESULT_BILLING_UNAVAILABLE</code></td>
-  <td>3</td>
-  <td>Indicates that In-app Billing is not available because the <code>API_VERSION</code> that you
-  specified is not recognized by the Google Play application or the user is ineligible for in-app
-  billing (for example, the user resides in a country that prohibits in-app purchases).</td>
-</tr>
-<tr>
-  <td><code>RESULT_ITEM_UNAVAILABLE</code></td>
-  <td>4</td>
-  <td>Indicates that Google Play cannot find the requested item in the application's product
-  list. This can happen if the product ID is misspelled in your <code>REQUEST_PURCHASE</code>
-  request or if an item is unpublished in the application's product list.</td>
-</tr>
-<tr>
-  <td><code>RESULT_DEVELOPER_ERROR</code></td>
-  <td>5</td>
-  <td>Indicates that an application is trying to make an In-app Billing request but the application
-  has not declared the com.android.vending.BILLING permission in its manifest. Can also indicate
-  that an application is not properly signed, or that you sent a malformed request, such as a
-  request with missing Bundle keys or a request that uses an unrecognized request type.</td>
-</tr>
-<tr>
-  <td><code>RESULT_ERROR</code></td>
-  <td>6</td>
-  <td>Indicates an unexpected server error. For example, this error is triggered if you try to
-purchase an item from yourself, which is not allowed.</td>
-</tr>
-</table>
-</p>
-
-<h3 id="billing-interface">In-app billing Version 2 API reference</h3>
-
-<p>The following section describes the interface for Google Play's In-app Billing service. The
-interface is defined in the <code>IMarketBillingService.aidl</code> file, which is included with the
-In-app Billing <a
-href="{@docRoot}google/play/billing/v2/billing_integrate.html#billing-download">sample
-application</a>.</p>
-<p>The interface consists of a single request method <code>sendBillingRequest()</code>. This method
-takes a single {@link android.os.Bundle} parameter. The Bundle parameter includes several key-value
-pairs, which are summarized in table 7.</p>
-
-<p class="table-caption"><strong>Table 7.</strong> Description of Bundle keys passed in a
-<code>sendBillingRequest()</code> request.</p>
-
-<table>
-
-<tr>
-<th>Key</th>
-<th>Type</th>
-<th>Possible Values</th>
-<th>Required?</th>
-<th>Description</th>
-</tr>
-<tr>
-  <td><code>BILLING_REQUEST</code></td>
-  <td><code>String</code></td>
-  <td><code>CHECK_BILLING_SUPPORTED</code>, <code>REQUEST_PURCHASE</code>,
-  <code>GET_PURCHASE_INFORMATION</code>, <code>CONFIRM_NOTIFICATIONS</code>, or
-  <code>RESTORE_TRANSACTIONS</code></td>
-  <td>Yes</td>
-  <td>The type of billing request you are making with the <code>sendBillingRequest()</code> request.
-  The possible values are discussed more below this table.</td>
-</tr>
-<tr>
-  <td><code>API_VERSION</code></td>
-  <td><code>int</code></td>
-  <td>  <ul>
-  <li><code>"2"</code> [<a href="#version_2">details</a>]</li>
-  <li><code>"1"</code> [<a href="#version_1">details</a>]</li>
-  </ul></td>
-  <td>Yes</td>
-  <td>The version of Google Play's In-app Billing service you want to use.</td>
-</tr>
-<tr>
-  <td><code>PACKAGE_NAME</code></td>
-  <td><code>String</code></td>
-  <td>A valid package name.</td>
-  <td>Yes</td>
-  <td>The name of the application that is making the request.</td>
-</tr>
-<tr>
-  <td><code>ITEM_ID</code></td>
-  <td><code>String</code></td>
-  <td>Any valid product identifier.</td>
-  <td>Required for <code>REQUEST_PURCHASE</code> requests.</td>
-  <td>The product ID of the item you are making a billing request for. Every in-app item that you
-  sell using Google Play's In-app Billing service must have a unique product ID, which you
-  specify on the Google Play Developer Console.</td>
-</tr>
-<tr>
-  <td><code>NONCE</code></td>
-  <td><code>long</code></td>
-  <td>Any valid <code>long</code> value.</td>
-  <td>Required for <code>GET_PURCHASE_INFORMATION</code> and <code>RESTORE_TRANSACTIONS</code>
-  requests.</td>
-  <td>A number used once. Your application must generate and send a nonce with each
-  <code>GET_PURCHASE_INFORMATION</code> and <code>RESTORE_TRANSACTIONS</code> request. The nonce is
-  returned with the <code>PURCHASE_STATE_CHANGED</code> broadcast intent, so you can use this value
-  to verify the integrity of transaction responses form Google Play.</td>
-</tr>
-<tr>
-  <td><code>NOTIFY_IDS</code></td>
-  <td>Array of <code>long</code> values</td>
-  <td>Any valid array of <code>long</code> values</td>
-  <td>Required for <code>GET_PURCHASE_INFORMATION</code> and <code>CONFIRM_NOTIFICATIONS</code>
-  requests.</td>
-  <td>An array of notification identifiers. A notification ID is sent to your application in an
-  <code>IN_APP_NOTIFY</code> broadcast intent every time a purchase changes state. You use the
-  notification to retrieve the details of the purchase state change.</td>
-</tr>
-<tr>
-  <td><code>DEVELOPER_PAYLOAD</code></td>
-  <td><code>String</code></td>
-  <td>Any valid <code>String</code> less than 256 characters long.</td>
-  <td>No</td>
-  <td>A developer-specified string that can be specified when you make a
-  <code>REQUEST_PURCHASE</code> request. This field is returned in the JSON string that contains
-  transaction information for an order. You can use this key to send supplemental information with
-  an order. For example, you can use this key to send index keys with an order, which is useful if
-  you are using a database to store purchase information. We recommend that you do not use this key
-  to send data or content.</td>
-</tr>
-</table>
-
-<p>The <code>BILLING_REQUEST</code> key can have the following values:</p>
-
-<ul>
-  <li><code>CHECK_BILLING_SUPPORTED</code>
-    <p>This request verifies that the Google Play application supports In-app Billing. You
-    usually send this request when your application first starts up. This request is useful if you
-    want to enable or disable certain UI features that are relevant only to In-app Billing.</p>
-  </li>
-  <li><code>REQUEST_PURCHASE</code>
-    <p>This request sends a purchase message to the Google Play application and is the foundation
-    of In-app Billing. You send this request when a user indicates that he or she wants to purchase
-    an item in your application. Google Play then handles the financial transaction by displaying
-    the checkout user interface.</p>
-  </li>
-  <li><code>GET_PURCHASE_INFORMATION</code>
-    <p>This request retrieves the details of a purchase state change. A purchase state change can
-    occur when a purchase request is billed successfully or when a user cancels a transaction during
-    checkout. It can also occur when a previous purchase is refunded. Google Play notifies your
-    application when a purchase changes state, so you only need to send this request when there is
-    transaction information to retrieve.</p>
-  </li>
-  <li><code>CONFIRM_NOTIFICATIONS</code>
-    <p>This request acknowledges that your application received the details of a purchase state
-    change. That is, this message confirms that you sent a <code>GET_PURCHASE_INFORMATION</code>
-    request for a given notification and that you received the purchase information for the
-    notification.</p>
-  </li>
-  <li><code>RESTORE_TRANSACTIONS</code>
-    <p>This request retrieves a user's transaction status for managed purchases (see <a
-    href="{@docRoot}google/play/billing/billing_admin.html#billing-purchase-type">Choosing a
-    Purchase Type</a> for more information). You should send this message only when you need to
-    retrieve a user's transaction status, which is usually only when your application is reinstalled
-    or installed for the first time on a device.</p>
-  </li>
-</ul>
-
-<p>Every In-app Billing request generates a synchronous response. The response is a {@link
-android.os.Bundle} and can include one or more of the following keys:</p>
-
-<ul>
-  <li><code>RESPONSE_CODE</code>
-    <p>This key provides status information and error information about a request.</p>
-  </li>
-  <li><code>PURCHASE_INTENT</code>
-    <p>This key provides a {@link android.app.PendingIntent}, which you use to launch the checkout
-    activity.</p>
-  </li>
-  <li><code>REQUEST_ID</code>
-    <p>This key provides you with a request identifier, which you can use to match asynchronous
-    responses with requests.</p>
-  </li>
-</ul>
-
-<p>Some of these keys are not relevant to certain types of requests. Table 8 shows which keys are
-returned for each request type.</p>
-
-<p class="table-caption"><strong>Table 8.</strong> Description of Bundle keys that are returned with
-each In-app Billing request type.</p>
-
-<table>
-
-<tr>
-<th>Request Type</th>
-<th>Keys Returned</th>
-<th>Possible Response Codes</th>
-</tr>
-<tr>
-  <td><code>CHECK_BILLING_SUPPORTED</code></td>
-  <td><code>RESPONSE_CODE</code></td>
-  <td><code>RESULT_OK</code>, <code>RESULT_BILLING_UNAVAILABLE</code>, <code>RESULT_ERROR</code>,
-  <code>RESULT_DEVELOPER_ERROR</code></td>
-</tr>
-<tr>
-  <td><code>REQUEST_PURCHASE</code></td>
-  <td><code>RESPONSE_CODE</code>, <code>PURCHASE_INTENT</code>, <code>REQUEST_ID</code></td>
-  <td><code>RESULT_OK</code>, <code>RESULT_ERROR</code>, <code>RESULT_DEVELOPER_ERROR</code></td>
-</tr>
-<tr>
-  <td><code>GET_PURCHASE_INFORMATION</code></td>
-  <td><code>RESPONSE_CODE</code>, <code>REQUEST_ID</code></td>
-  <td><code>RESULT_OK</code>, <code>RESULT_ERROR</code>, <code>RESULT_DEVELOPER_ERROR</code></td>
-</tr>
-<tr>
-  <td><code>CONFIRM_NOTIFICATIONS</code></td>
-  <td><code>RESPONSE_CODE</code>, <code>REQUEST_ID</code></td>
-  <td><code>RESULT_OK</code>, <code>RESULT_ERROR</code>, <code>RESULT_DEVELOPER_ERROR</code></td>
-</tr>
-<tr>
-  <td><code>RESTORE_TRANSACTIONS</code></td>
-  <td><code>RESPONSE_CODE</code>, <code>REQUEST_ID</code></td>
-  <td><code>RESULT_OK</code>, <code>RESULT_ERROR</code>, <code>RESULT_DEVELOPER_ERROR</code></td>
-</tr>
-</table>
-
-<h3 id="billing-intents">In-app billing broadcast intents</h3>
-
-<p>The following section describes the In-app Billing broadcast intents that are sent by the Google
-Play application. These broadcast intents inform your application about In-app Billing actions
-that have occurred. Your application must implement a {@link android.content.BroadcastReceiver} to
-receive these broadcast intents, such as the <code>BillingReceiver</code> that's shown in the in-app
-billing <a href="{@docRoot}google/play/billing/v2/billing_integrate.html#billing-download">sample
-application</a>.</p>
-
-<h4>com.android.vending.billing.RESPONSE_CODE</h4>
-
-<p>This broadcast intent contains a Google Play response code, and is sent after you make an
-In-app Billing request. A server response code can indicate that a billing request was successfully
-sent to Google Play or it can indicate that some error occurred during a billing request. This
-intent is not used to report any purchase state changes (such as refund or purchase information).
-For more information about the response codes that are sent with this response, see <a
-href="#billing-codes">Google Play Response Codes for In-app Billing</a>. The sample application
-assigns this broadcast intent to a constant named <code>ACTION_RESPONSE_CODE</code>.</p>
-
-<h5>Extras</h5>
-
-<ul type="none">
-  <li><code>request_id</code>&mdash;a <code>long</code> representing a request ID. A request ID
-  identifies a specific billing request and is returned by Google Play at the time a request is
-  made.</li>
-  <li><code>response_code</code>&mdash;an <code>int</code> representing the Google Play server
-  response code.</li>
-</ul>
-
-<h4>com.android.vending.billing.IN_APP_NOTIFY</h4>
-
-<p>This response indicates that a purchase has changed state, which means a purchase succeeded, was
-canceled, or was refunded. This response contains one or more notification IDs. Each notification ID
-corresponds to a specific server-side message, and each messages contains information about one or
-more transactions. After your application receives an <code>IN_APP_NOTIFY</code> broadcast intent,
-you send a <code>GET_PURCHASE_INFORMATION</code> request with the notification IDs to retrieve the
-message details. The sample application assigns this broadcast intent to a constant named
-<code>ACTION_NOTIFY</code>.</p>
-
-<h5>Extras</h5>
-
-<ul type="none">
-  <li><code>notification_id</code>&mdash;a <code>String</code> representing the notification ID for
-  a given purchase state change. Google Play notifies you when there is a purchase state change
-  and the notification includes a unique notification ID. To get the details of the purchase state
-  change, you send the notification ID with the <code>GET_PURCHASE_INFORMATION</code> request.</li>
-</ul>
-
-<h4>com.android.vending.billing.PURCHASE_STATE_CHANGED</h4>
-
-<p>This broadcast intent contains detailed information about one or more transactions. The
-transaction information is contained in a JSON string. The JSON string is signed and the signature
-is sent to your application along with the JSON string (unencrypted). To help ensure the security of
-your In-app Billing messages, your application can verify the signature of this JSON string. The
-sample application assigns this broadcast intent to a constant named
-<code>ACTION_PURCHASE_STATE_CHANGED</code>.</p>
-
-<h5>Extras</h5>
-
-<ul type="none">
-  <li><code>inapp_signed_data</code>&mdash;a <code>String</code> representing the signed JSON
-  string.</li>
-  <li><code>inapp_signature</code>&mdash;a <code>String</code> representing the signature.</li>
-</ul>
-
-<p class="note"><strong>Note:</strong> Your application should map the broadcast intents and extras
-to constants that are unique to your application. See the <code>Consts.java</code> file in the
-sample application to see how this is done.</p>
-
-<p>The fields in the JSON string are described in the following table (see table 9):</p>
-
-<p class="table-caption"><strong>Table 9.</strong> Description of JSON fields that are returned with
-a <code>PURCHASE_STATE_CHANGED</code> intent.</p>
-
-<table>
-
-<tr>
-<th>Field</th>
-<th>Description</th>
-</tr>
-<tr>
-  <td>nonce</td>
-  <td>A number used once. Your application generates the nonce and sends it with the
-  <code>GET_PURCHASE_INFORMATION</code> request. Google Play sends the nonce back as part of the
-  JSON string so you can verify the integrity of the message.</td>
-</tr>
-<tr>
-  <td>notificationId</td>
-  <td>A unique identifier that is sent with an <code>IN_APP_NOTIFY</code> broadcast intent. Each
-  <code>notificationId</code> corresponds to a specify message that is waiting to be retrieved on
-  the Google Play server. Your application sends back the <code>notificationId</code> with the
-  <code>GET_PURCHASE_INFORMATION</code> message so Google Play can determine which messages you
-  are retrieving.</td>
-</tr>
-<tr>
-  <td>orderId</td>
-  <td>A unique order identifier for the transaction. This corresponds to the Google payments order
-  ID.</td>
-</tr>
-<tr>
-  <td>packageName</td>
-  <td>The application package from which the purchase originated.</td>
-</tr>
-<tr>
-  <td>productId</td>
-  <td>The item's product identifier. Every item has a product ID, which you must specify in the
-  application's product list on the Google Play Developer Console.</td>
-</tr>
-<tr>
-  <td>purchaseTime</td>
-  <td>The time the product was purchased, in milliseconds since the epoch (Jan 1, 1970).</td>
-</tr>
-
-<tr>
-  <td>purchaseState</td>
-  <td>The purchase state of the order. Possible values are 0 (purchased), 1 (canceled), 2
-  (refunded), or 3 (expired, for subscription purchases only).</td>
-</tr>
-<tr>
-  <td>purchaseToken</td>
-  <td>A token that uniquely identifies a subscription purchase for a given item and user pair.
-  You can use the token to specify the subscription when querying for subscription validity.
-  
-  <p><br><em>Supported only in In-app Billing API Version 2 and higher.</em></p></td>
-</tr>
-<tr>
-  <td>developerPayload</td>
-  <td>A developer-specified string that contains supplemental information about an order. You can
-  specify a value for this field when you make a <code>REQUEST_PURCHASE</code> request.</td>
-</tr>
-</table>
-
-<!--<h2 id="other-intents">Other Intents</h2> 
-
-<p>The following Intents related to In-app Billing may be useful in your
-implemention. </p> -->
-
-<h3 id="http-api">REST API for subscriptions</h3>
-<p>Google Play offers an HTTP-based API that you can use to remotely query the validity of a specific subscription at any time or cancel a subscription. The API is designed to be used from your backend servers as a way of securely managing subscriptions, as well as extending and integrating subscriptions with other services. See <a href="{@docRoot}google/play/billing/gp-purchase-status-api.html">Purchase Status API</a> for more information.</p>
diff --git a/docs/html/google/play/billing/v2/billing_subscriptions.jd b/docs/html/google/play/billing/v2/billing_subscriptions.jd
deleted file mode 100644
index d602b0a..0000000
--- a/docs/html/google/play/billing/v2/billing_subscriptions.jd
+++ /dev/null
@@ -1,448 +0,0 @@
-page.title=Implementing Subscriptions  <span style="font-size:16px;">(IAB Version 2)</span>
-excludeFromSuggestions=true
-@jd:body
-
-<p class="caution" style=
-"background-color:#fffdeb;width:100%;margin-bottom:1em;padding:.5em;">
-  The <strong>In-app Billing Version 2 API</strong> has been deprecated in
-  favor of the Version 3 API. If your app is using In-app Billing, please
-  <strong>make sure that it is using the Version 3 API</strong>. If your app is
-  still using the Version 2 API, you must <strong>migrate to the Version 3 API
-  as soon as possible</strong>.<br>
-  <br>
-  We plan to turn off the In-app Billing Version 2 service on <strong>January
-  27, 2015</strong>, after which time users will <strong>no longer be able to
-  purchase in-app items and subscriptions through the Version 2 API</strong>.
-  We strongly encourage and recommend you migrate your apps to use Version 3
-  API by November 2014, to provide ample time for users to update their apps to
-  the new version.<br>
-  <br>
-  For more information, please see the <a href=
-  "http://support.google.com/googleplay/android-developer/answer/6090268">Help Center
-  article</a>. For common questions about transitioning your implementation to
-  In-app Billing Version 3, please see <a href=
-  "{@docRoot}google/play/billing/billing_overview.html#migration">Migration
-  Considerations</a>.
-</p>
-    <div id="qv-wrapper" style="margin-top:0;">
-<div id="qv">
-  <h2>In this document</h2>
-  <ol>
-        <li><a href="#sample">Sample Application</a></li>
-        <li><a href="#model">Application Model</a></li>
-        <li><a href="#token">Purchase Token</a></li>
-        <li><a href="#version">Checking the In-app Billing API Version</a></li>
-        <li><a href="#purchase">Purchasing a Subscription</a></li>
-        <li><a href="#restore">Restoring Transactions</a></li>
-        <li><a href="#validity">Checking Subscription Validity</a></li>
-        <li><a href="#viewstatus">Letting Users Cancel or View Status</a></li>
-        <li><a href="#purchase-state-changes">Recurring Billing and Changes in Purchase State</a></li>
-        <li><a href="#modifying">Modifying Your App for Subscriptions</a></li>
-   </ol>
-</div>
-</div>
-
-<p>This document is focused on highlighting implementation details that are 
-specific to subscriptions with the Version 2 API. To understand how  
-subscriptions work, see <a href="{@docRoot}google/play/billing/billing_subscriptions.html">In-app Billing Subscriptions</a>.</p>
-
-
-<h2 id="sample">Sample Application</h2>
-
-<p>To help you get started with your In-app Billing implementation and
-subscriptions, an updated Version of the In-app Billing sample app is available.
-You can download the sample app from the Android SDK repository using the
-Android SDK Manager. For details, see <a
-href="{@docRoot}google/play/billing/v2/billing_integrate.html#billing-download">
-Downloading the Sample Application</a>.</p>
-
-<h2 id="model">Application Model</h2>
-
-<p>With subscriptions, your app uses the standard In-app Billing application
-model, sending billing requests to the Play Store application over interprocess
-communication (IPC) and receiving purchase responses from the Play Store app in
-the form of asynchronous broadcast intents. Your application does not manage any
-network connections between itself and the Google Play server or use any special
-APIs from the Android platform.</p>
-
-<p>Your app also uses the standard In-app Billing components &mdash; a billing
-Service for sending requests, a BroadcastReceiver for receiving the responses,
-and a security component for verifying that the response was sent by Google
-Play. Also recommended are a response Handler for processing notifications,
-errors, and status messages, and an observer for sending callbacks to your
-application as needed. All of these components and their interactions are
-described in full in the <a
-href="{@docRoot}google/play/billing/v2/api.html">In-app Billing
-Overview</a> and related documents.</p>
-
-<p>To initiate different types of billing communication with Google Play, your
-app will use the standard set of in-app billing requests and receive the same
-responses. Inside the requests and responses are two new fields described below.
-</p>
-
-<h2 id="token">Purchase Token</h2>
-
-<p>Central to the end-to-end architecture for subscriptions is the purchase
-token, a string value that uniquely identifies (and associates) a user ID and a
-subscription ID. Google Play generates the purchase token when the user
-completes the purchase of a subscription product (and payment is approved by
-Google) and then sends it to the purchasing app on the device through the
-In-app Billing API. </p>
-
-<p>At the conclusion of a <code>PURCHASE_REQUEST</code> message flow, your app
-can retrieve the purchase token and other transaction details by initiating a
-<code>GET_PURCHASE_INFORMATION</code> request. The Bundle returned by the call
-contains an JSON array of order objects. In the order corresponding to the
-subscription purchase, the token is available in the <code>purchaseToken</code>
-field. </p>
-
-<p>An example of a JSON order object that includes a subscription purchase token
-is shown below. </p>
-
-<pre class="no-pretty-print" style="color:black">{ "nonce" : 1836535032137741465,
-  "orders" :
-    [{ "notificationId" : "android.test.purchased",
-       "orderId" : "12999556515565155651.5565135565155651"
-       "packageName" : "com.example.dungeons",
-       "productId" : "android.test.purchased",
-       "developerPayload" : "bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ",
-       "purchaseTime" : 1290114783411,
-       "purchaseState" : 0,
-       "purchaseToken" : "rojeslcdyyiapnqcynkjyyjh" }]
-}
-</pre>
-
-<p>After receiving a purchase token, your apps can store the token locally or
-pass it to your backend servers, which can then use it to query the billing
-status or cancel the subscription remotely. If your app will store the token
-locally, please read the <a
-href="{@docRoot}google/play/billing/billing_best_practices.html">Security and
-Design</a> document for best practices for maintaining the security of your
-data.</p>
-
-<h2 id="version">Checking the In-app Billing API Version</h2>
-
-<p>Subscriptions support is available only in versions of Google Play that
-support the In-app Billing v2 API (Google Play 3.5 and higher). For your app,
-an essential first step at launch is to check whether the Version of Google Play
-installed on the device supports the In-app Billing v2 API and
-subscriptions.</p>
-
-<p>To do this, create a CHECK_BILLING_SUPPORTED request Bundle that includes the
-required key-value pairs, together with</p>
-
-<ul>
-  <li>The <code>API_VERSION</code> key, assigning a value of 2.</li>
-  <li>The <code>BILLING_REQUEST_ITEM_TYPE</code> key, assigning a value of “subs”</li>
-</ul>
-
-<p>Send the request using <code>sendBillingRequest(Bundle)</code> and receive
-the response Bundle. You can extract the response from the
-<code>BILLING_RESPONSE_RESPONSE_CODE</code> key of the response. RESULT_OK
-indicates that subscriptions are supported.</p>
-
-<p>The sample app declares constants for the accepted
-<code>BILLING_REQUEST_ITEM_TYPE</code> values (from Consts.java):</p>
-
-<pre class="pretty-print">   // These are the types supported in the IAB v2
-   public static final String ITEM_TYPE_INAPP = "inapp";
-   public static final String ITEM_TYPE_SUBSCRIPTION = "subs";
-</pre>
-
-<p>It sets up a convenience method for building the request bundle (from BillingService.java):</p>
-
-<pre class="pretty-print">       protected Bundle makeRequestBundle(String method) {
-           Bundle request = new Bundle();
-           request.putString(Consts.BILLING_REQUEST_METHOD, method);
-           request.putInt(Consts.BILLING_REQUEST_<code>API_VERSION</code>, 2);
-           request.putString(Consts.BILLING_REQUEST_PACKAGE_NAME, getPackageName());
-           return request;
-       }
-</pre>
-
-<p>Here’s an example of how to test support for In-App Billing v2 and subscriptions
-(from BillingService.java):</p>
-
-<pre class="pretty-print">   /**
-    * Wrapper class that checks if in-app billing is supported.
-    */
-   class CheckBillingSupported extends BillingRequest {
-       public String mProductType = null;
-       public CheckBillingSupported() {
-           // This object is never created as a side effect of starting this
-           // service so we pass -1 as the startId to indicate that we should
-           // not stop this service after executing this request.
-           super(-1);
-       }
-
-       public CheckBillingSupported(String type) {
-           super(-1);
-           mProductType = type;
-       }
-
-       &#64;Override
-       protected long run() throws RemoteException {
-           Bundle request = makeRequestBundle("CHECK_BILLING_SUPPORTED");
-           if (mProductType != null) {
-               request.putString(Consts.<code>BILLING_REQUEST_ITEM_TYPE</code>, mProductType);
-           }
-           Bundle response = mService.sendBillingRequest(request);
-           int responseCode = response.getInt(Consts.<code>BILLING_RESPONSE_RESPONSE_CODE</code>);
-           if (Consts.DEBUG) {
-               Log.i(TAG, "CheckBillingSupported response code: " +
-                       ResponseCode.valueOf(responseCode));
-           }
-           boolean billingSupported = (responseCode == ResponseCode.RESULT_OK.ordinal());
-           ResponseHandler.checkBillingSupportedResponse(billingSupported, mProductType);
-           return Consts.BILLING_RESPONSE_INVALID_REQUEST_ID;
-       }
-   }
-</pre>
-
-<h2 id="purchase">Requesting a Subscription Purchase</h2>
-
-<p>Once you’ve checked the API Version as described above and determined that
-subscriptions are supported, you can present subscription products to the user
-for purchase. When the user has selected a subscription product and initiated a
-purchase, your app handles the purchase just as it would for other in-app
-products &mdash; by sending a REQUEST_PURCHASE request. You can then launch
-Google Play to display the checkout user interface and handle the financial
-transaction..  
-
-<p>The REQUEST_PURCHASE includes a Bundle containing the item details, as
-described in the <a
-href="{@docRoot}google/play/billing/v2/api.html">In-app Billing
-Overview</a>. For a subscription, the Bundle must also specify:</p>
-
-<ul>
-  <li>The <code>ITEM_ID</code> key, with a value that specifies a valid, published
-  subscription product.</li>
-  <li>The <code>ITEM_TYPE</code> key, with a value of “subs”
-  (<code>ITEM_TYPE_SUBSCRIPTION</code> in the sample app). If the request does not
-  specify the subscription's <code>ITEM_TYPE</code>, Google Play attempts to
-  handle the request as a standard in-app purchase (one-time purchase).</li>
-</ul>
-
-<p>Google Play synchronously returns a response bundle that includes
-<code>RESPONSE_CODE</code>, <code>PURCHASE_INTENT</code>, and
-<code>REQUEST_ID</code>. Your app uses the <code>PURCHASE_INTENT</code> to
-launch the checkout UI and the message flow proceeds exactly as described in <a
-href="{@docRoot}google/play/billing/v2/api.html#billing-message-
-sequence">Messaging sequence</a>.</p>
-
-<p>Here’s how the sample app initiates a purchase for a subscription, where
-<code>mProductType</code> is <code>ITEM_TYPE_SUBSCRIPTION</code> (from
-BillingService.java).</p>
-
-<pre class="pretty-print">   /**
-    * Wrapper class that requests a purchase.
-    */
-   class RequestPurchase extends BillingRequest {
-       public final String mProductId;
-       public final String mDeveloperPayload;
-       public final String mProductType;
-
-. . .
-
-       &#64;Override
-       protected long run() throws RemoteException {
-           Bundle request = makeRequestBundle("REQUEST_PURCHASE");
-           request.putString(Consts.BILLING_REQUEST_ITEM_ID, mProductId);
-           request.putString(Consts.<code>BILLING_REQUEST_ITEM_TYPE</code>, mProductType);
-           // Note that the developer payload is optional.
-           if (mDeveloperPayload != null) {
-               request.putString(Consts.BILLING_REQUEST_DEVELOPER_PAYLOAD, mDeveloperPayload);
-           }
-           Bundle response = mService.sendBillingRequest(request);
-           PendingIntent pendingIntent
-                   = response.getParcelable(Consts.BILLING_RESPONSE_PURCHASE_INTENT);
-           if (pendingIntent == null) {
-               Log.e(TAG, "Error with requestPurchase");
-               return Consts.BILLING_RESPONSE_INVALID_REQUEST_ID;
-           }
-
-           Intent intent = new Intent();
-           ResponseHandler.buyPageIntentResponse(pendingIntent, intent);
-           return response.getLong(Consts.BILLING_RESPONSE_REQUEST_ID,
-                   Consts.BILLING_RESPONSE_INVALID_REQUEST_ID);
-       }
-
-       &#64;Override
-       protected void responseCodeReceived(ResponseCode responseCode) {
-           ResponseHandler.responseCodeReceived(BillingService.this, this, responseCode);
-       }
-   }
-</pre>
-
-<h2 id="restoring">Restoring Transactions</h2>
-
-<p>Subscriptions always use  the <em>managed by user account</em> purchase type,
-so that you can restore a record of subscription transactions on the device when
-needed. When a user installs your app onto a new device, or when the user
-uninstalls/reinstalls the app on the original device, your app should restore
-the subscriptions that the user has purchased.</p>
-
-<p>The process for restoring subscriptions transactions is the same as described
-in <a
-href="{@docRoot}google/play/billing/v2/api.html#billing-message-
-sequence">Messaging sequence</a>. Your app sends a
-<code>RESTORE_TRANSACTIONS</code> request to Google Play. Google Play sends two
-broadcast intents as asynchronous responses &mdash; a <code>RESPONSE_CODE</code>
-intent and a <code>PURCHASE_STATE_CHANGED</code> intent.</p>
-
-<p>The <code>PURCHASE_STATE_CHANGED</code> intent contains a notification ID
-that your app can use to retrieve the purchase details, including the purchase
-token, by sending a standard <code>GET_PURCHASE_INFORMATION</code> request. The
-<code>Bundle</code> returned in the call includes an JSON array of order objects
-corresponding to subscription (and in-app product) purchases that you can
-restore locally.</p>
-
-<p>Your app can store the restored purchase state and other transaction details
-in the way that best meets your needs. Your app can use it later to check the
-subscription validity, although please read the <a
-href="{@docRoot}google/play/billing/billing_best_practices.html">Security and
-Design</a> document for best practices for maintaining the security of your
-data.</p>
-
-<h2 id="validity">Checking Subscription Validity</h2>
-
-<p>Subscriptions are time-bound purchases that require successful billing
-recurrences over time to remain valid. Your app should check the validity of
-purchased subscriptions at launch or prior to granting access to subscriber
-content.</p>
-
-<p>With In-app Billing, you validate a subscription by keeping track of its
-purchase state and then checking the state whenever needed. Google Play 
-provides two ways to let you know when the purchase
-state of a subscription changes:</p>
-
-<ul>
-  <li><em>In-app Billing Notifications</em>. Google Play pushes a notification
-  to your app to indicate a change in the purchase state of a subscription. Your app can
-  store the most recent purchase state for a given purchase token and then check
-  that state at run time, as needed.</li>
-  <li><em>Google Play Android Developer API</em>. You can use this HTTP-based
-  API to poll Google Play for the current purchase state of a subscription. You
-  can store the purchased state for each <code>purchaseToken</code> on your
-  backend servers. For more information, see <a href="#play-dev-api">Google Play
-  Android Developer API</a>, below.</li>
-</ul>
-
-<p>For most use-cases, especially those where backend servers are already keeping
-track of subscribed users, implementing a combination of both methods is the
-recommended approach. A typical implementation might work like this:</p>
-
-<ul>
-  <li>When the user successfully purchases a new subscription, your app notifies a
-  backend server, which stores the purchase token, user name, and other
-  information in a secure location.</li>
-  <li>Since your app cannot know the expiration date, your server can poll Google
-  Play to get the expiration and store it with the purchase token and other
-  data.</li>
-  <li>Because your server now knows the expiration date, it does not need to poll
-  Google Play again until after the expiration date, at which time it can confirm
-  that the subscription was not cancelled.</li>
-  <li>On the client side, your app can continue to update the server whenever the
-  purchase state changes, storing the state locally.</li>
-</ul>
-
-<p>If you are using both notifications and the Google Play Android Developer API to validate subscriptions, we recommend the following:</p>
-
-<ul>
-  <li>If your app wants to check validity but you can’t reach your server (or
-you don’t have a server), use the latest purchase state received by
-notification.</li>
-  <li>If you have a server and it’s reachable, always give preference to the
-purchase state obtained from your server over the state received in
-notifications.</li>
-</ul>
-
-<p>If necessary, you can also use a <code>RESTORE_TRANSACTIONS</code> request to retrieve a record of all managed and in-app products purchased by the user, which you can then store locally. However, using <code>RESTORE_TRANSACTIONS</code> on a regular basis is not recommended because of performance impacts.</p>
-
-<p>Regardless of the approach you choose, your app should check subscriptions
-and validity at launch, such as prior to accessing subscriber content, game
-levels, and so on.</p>
-
-<p class="table-caption"><strong>Table 1.</strong> Summary of purchaseState
-values for subscription purchases, as received with a
-<code>PURCHASE_STATE_CHANGED</code> intent.</p>
-
-<table>
-<tr>
-<th>State</th><th>purchaseState Value</th><th>Comments</th>
-</tr>
-<tr>
-<td>Purchased successfully</td><td><code>0</code></td><td>Sent at original purchase only (not at recurring billing cycles).</td></tr>
-<td>Cancelled</td><td><code>1</code></td><td>Sent at original purchase only if the purchase has failed for some reason. </td></tr>
-<td>Refunded</td><td><code>2</code></td><td>The purchase was refunded.</code></td></tr>
-<td>Subscription expired</td><td><code>3</code></td><td>Sent at the end of a billing cycle to indicate that the subscription expired without renewal because of non-payment or user-cancellation. Your app does not need to grant continued access to the subscription content. 
-</td></tr>
-</table>
-
-
-<h2 id="viewstatus">Letting the User Cancel or View Subscriptions</h2>
-
-<p>In-app Billing does not currently provide an API to let users directly view or cancel
-subscriptions from within the purchasing app. Instead, users can launch the Play
-Store app on their devices and go to the My Apps screen to manage subscriptions. In My Apps,
-users can see a list of their subscriptions organized by application. Tapping one of the
-subscriptions loads the app's product page, from which users can see active subscriptions
-and billing status and cancel subscriptions as needed.</p>
-
-<p>To make it easier for users to find and manage their subscriptions from inside your app, 
-we recommend that you offer a "View My Subscriptions" or "Manage Subscriptions" option in
-your UI that directly loads your app's product page in the Play Store app.</p>
-
-<p>To do this, create an intent with the <a 
-href="{@docRoot}reference/android/content/Intent.html#ACTION_VIEW">ACTION_VIEW</a>
-action and include the <code>market://</code> URI (rather than the <code>http://</code>
-URI) of your app's details page. Here’s an example:</p>
-
-<pre style="pretty-print">Intent intent = new Intent(Intent.ACTION_VIEW);
-intent.setData(Uri.parse("market://details?id=com.example.app"));
-startActivity(intent);</pre>
-
-<p>For more information, see 
-  <a href="{@docRoot}distribute/tools/promote/linking.html">Linking to Your Products</a>.</p>
-
-<h2 id="purchase-state-changes">Recurring Billing, Cancellation, and Changes In Purchase State</h2>
-
-<p>Google Play notifies your app when the user completes the purchase of a
-subscription, but the purchase state does not change over time, provided that
-recurring billing takes place successfully. Google Play does not notify your app
-of a purchase state change <em>until the subscription expires because of
-non-payment or user cancellation</em>. </p>
-
-<p>Over the life of a subscription, your app does not need to initiate any
-recurring billing events &mdash; those are all handled by Google Play and they
-are transparent to your application if billing is successful.</p>
-
-<p>When the user cancels a subscription during an active billing cycle, Google
-Play <em>does not</em> notify your app immediately of the change in purchase
-state. Instead, it waits until the end of the active billing cycle and then
-notifies your app that the purchase state has changed to "Expired". </p>
-
-<p>Similarly, if payment for the next billing cycle fails, Google Play waits
-until the end of the active billing cycle and then notifies your app at that time that the
-purchase state has changed to "Expired".</p>
-
-<p>Your app can handle user cancellation and non-payment in the same way, since both cause
-a change to the same "Expired" purchase state. Once the purchase state has become "Expired",
-your app does not need to grant further access to the subscription content.</p>
-
-<h2 id="modifying">Modifying Your App for Subscriptions</h2>
-
-<p>For subscriptions, you make the same types of modifications to your app as
-are described in <a
-href="{@docRoot}google/play/billing/v2/billing_integrate.html#billing-implement">
-Modifying your Application Code</a>.</p>
-
-<p>Note that, in your UI that lets users view and select subscriptions for
-purchase, you should add logic to check for purchased subscriptions and validate
-them. Your UI should not present subscriptions if the user has already purchased
-them.</p>
-
-
-
-
-
diff --git a/docs/html/google/play/billing/versions.jd b/docs/html/google/play/billing/versions.jd
index aa35501..1b15b2d 100644
--- a/docs/html/google/play/billing/versions.jd
+++ b/docs/html/google/play/billing/versions.jd
@@ -2,13 +2,21 @@
 page.title=In-app Billing Version Notes
 @jd:body
 
-<p>The In-app Billing API is versioned, with each version offering additional features to your app. API support is provided by the Google Play Store app. On most devices, the Google Play Store app is updated automatically to support newer versions of the API. 
+<p>
+  The In-app Billing API is versioned, with each version offering additional
+  features to your app. API support is provided by the Google Play Store app.
+  On most devices, the Google Play Store app is updated automatically to
+  support newer versions of the API.
+</p>
 
 <p>The sections below list the supported versions of the In-app Billing API.</p>
 
 <p id="api_check"><strong><em>How to check for In-app Billing version</em></strong></p>
 
-<p>At run time, your app can query the Google Play Store app to determine what version of the API it supports and what features are available. </p>
+<p>
+  At run time, your app can query the Google Play Store app to determine what
+  version of the API it supports and what features are available.
+</p>
 
 <ul>
 
@@ -17,7 +25,12 @@
 supports the version of the In-app Billing API that you are using by sending an
 {@code isBillingSupported} request.</li>
 
-<li>If the In-app Billing API version that you are using is earlier than version 3, the version information is returned in the <code>API_VERSION</code> key of the Bundle object passed in the {@code sendBillingRequest} method. For more information, see <a href="{@docRoot}google/play/billing/v2/billing_reference.html#billing-interface-v2">In-app Billing Service Interface</a>.</li>
+<li>If the In-app Billing API version that you are using is earlier than version
+3, the version information is returned in the <code>API_VERSION</code> key of
+the Bundle object passed in the {@code sendBillingRequest} method. For more
+information, see
+<a href="{@docRoot}google/play/billing/v2/billing_reference.html#billing-interface-v2">
+In-app Billing Service Interface</a>.</li>
 </ul>
 
 <h3 id="version_5">In-app Billing version 5</h3>
@@ -38,17 +51,23 @@
 <h3 id="version_3">In-app Billing version 3</h3>
 <p><em>February 2013</em></p>
 <ul>
-<li>Purchasing and querying managed in-app items requires Google Play client 
+<li>Purchasing and querying managed in-app items requires Google Play client
 version 3.9.16 or higher.</li>
-<li>Purchasing and querying subscription items requires Google Play client 
+<li>Purchasing and querying subscription items requires Google Play client
 version 3.10.10 or higher.</li>
-<li>Provides a new Android Interface Definition Language (AIDL) file named {@code IInAppBillingService.aidl}. The new interface offers these features:
+<li>Provides a new Android Interface Definition Language (AIDL) file named
+  {@code IInAppBillingService.aidl}. The new interface offers these features:
 <ul>
-<li>Provides a new API to get details of in-app items published for the app including price, type, title and description.</li>
-<li>The purchase flow is synchronous and purchase information is available immediately after it completes.</li>
-<li>Purchase information of in-app purchases is maintained within the Google Play system till the purchase is consumed.</li>
-<li>An API to consume a purchase of an inapp item. All purchases of one-time in-app items are consumable and thereafter can be purchased again.</li>
-<li>An API to get current purchases of the user immediately. This list will not contain any consumed purchases.</li>
+<li>Provides a new API to get details of in-app items published for the app including price, type,
+  title and description.</li>
+<li>The purchase flow is synchronous and purchase information is available immediately after it
+  completes.</li>
+<li>Purchase information of in-app purchases is maintained within the Google Play system till the
+  purchase is consumed.</li>
+<li>An API to consume a purchase of an inapp item. All purchases of one-time in-app items are
+  consumable and thereafter can be purchased again.</li>
+<li>An API to get current purchases of the user immediately. This list will not contain any consumed
+  purchases.</li>
 </ul>
 </li>
 </ul>
@@ -57,9 +76,13 @@
 <p><em>May 2012</em></p>
 <ul>
   <li>Adds support for subscriptions, including free trial period.</li>
-  <li>Adds a new supported string value, "2", for the <code>API_VERSION</code> key of the Bundle object passed in the <code>sendBillingRequest()</code>.</li>
-  <li>Adds a new JSON field, <code>purchaseToken</code>, to the <code>orders</code> list returned in a <code>PURCHASE_STATE_CHANGED</code> intent. </li> 
-  <li>Adds a new <code>purchaseState</code> value, <code>3</code> (expired), to the <code>orders</code> list returned in a <code>PURCHASE_STATE_CHANGED</code> intent. The value indicates that a subscription has expired and is no longer valid.</li>
+  <li>Adds a new supported string value, "2", for the <code>API_VERSION</code> key of the Bundle
+    object passed in the <code>sendBillingRequest()</code>.</li>
+  <li>Adds a new JSON field, <code>purchaseToken</code>, to the <code>orders</code> list returned in
+    a <code>PURCHASE_STATE_CHANGED</code> intent. </li>
+  <li>Adds a new <code>purchaseState</code> value, <code>3</code> (expired), to the
+    <code>orders</code> list returned in a <code>PURCHASE_STATE_CHANGED</code> intent. The value
+    indicates that a subscription has expired and is no longer valid.</li>
 <li>Requires Google Play (Play Store) version 3.5 or higher.</li>
 </ul>
 
@@ -69,5 +92,3 @@
 <li>Initial release.</li>
 <li>Requires Google Play/Android Market 2.3.4 or higher.</li>
 </ul>
-
-
diff --git a/docs/html/google/play/expansion-files.jd b/docs/html/google/play/expansion-files.jd
old mode 100644
new mode 100755
index 0c514b2..6d1de7e
--- a/docs/html/google/play/expansion-files.jd
+++ b/docs/html/google/play/expansion-files.jd
@@ -1,5 +1,5 @@
 page.title=APK Expansion Files
-page.metaDescription=If your app needs more than the 50MB APK max, use free APK expansion files from Google Play.
+page.metaDescription=If your app needs more than the 100MB APK max, use free APK expansion files from Google Play.
 page.tags="apk size, apk max, large assets"
 @jd:body
 
@@ -8,7 +8,7 @@
 <div id="qv">
 <h2>Quickview</h2>
 <ul>
-  <li>Recommended for most apps that exceed the 50MB APK limit</li>
+  <li>Recommended for most apps that exceed the 100MB APK limit</li>
   <li>You can provide up to 4GB of additional data for each APK</li>
   <li>Google Play hosts and serves the expansion files at no charge</li>
   <li>The files can be any file type you want and are saved to the device's shared storage</li>
@@ -63,10 +63,10 @@
 
 
 
-<p>Google Play currently requires that your APK file be no more than 50MB. For most
+<p>Google Play currently requires that your APK file be no more than 100MB. For most
 applications, this is plenty of space for all the application's code and assets.
 However, some apps need more space for high-fidelity graphics, media files, or other large assets.
-Previously, if your app exceeded 50MB, you had to host and download the additional resources
+Previously, if your app exceeded 100MB, you had to host and download the additional resources
 yourself when the user opens the app. Hosting and serving the extra files can be costly, and the
 user experience is often less than ideal. To make this process easier for you and more pleasant
 for users, Google Play allows you to attach two large expansion files that supplement your
@@ -131,7 +131,7 @@
   <dt>{@code main} or {@code patch}</dt>
     <dd>Specifies whether the file is the main or patch expansion file. There can be
 only one main file and one patch file for each APK.</dd>
-  <dt>{@code <expansion-version>}</dt>
+  <dt>{@code &lt;expansion-version&gt;}</dt>
     <dd>This is an integer that matches the version code of the APK with which the expansion is
 <em>first</em> associated (it matches the application's <a
 href="{@docRoot}guide/topics/manifest/manifest-element.html#vcode">{@code android:versionCode}</a>
@@ -139,7 +139,7 @@
     <p>"First" is emphasized because although the Developer Console allows you to
 re-use an uploaded expansion file with a new APK, the expansion file's name does not change&mdash;it
 retains the version applied to it when you first uploaded the file.</p></dd>
-  <dt>{@code <package-name>}</dt>
+  <dt>{@code &lt;package-name&gt;}</dt>
     <dd>Your application's Java-style package name.</dd>
 </dl>
 
@@ -162,9 +162,9 @@
 </pre>
 
 <ul>
-  <li>{@code <shared-storage>} is the path to the shared storage space, available from
+  <li>{@code &lt;shared-storage&gt;} is the path to the shared storage space, available from
 {@link android.os.Environment#getExternalStorageDirectory()}.</li>
-  <li>{@code <package-name>} is your application's Java-style package name, available
+  <li>{@code &lt;package-name&gt;} is your application's Java-style package name, available
 from {@link android.content.Context#getPackageName()}.</li>
 </ul>
 
@@ -241,9 +241,9 @@
 application:</p>
 
 <ol>
-  <li>First determine whether your application absolutely requires more than 50MB per installation.
+  <li>First determine whether your application absolutely requires more than 100MB per installation.
 Space is precious and you should keep your total application size as small as possible. If your app
-uses more than 50MB in order to provide multiple versions of your graphic assets for multiple screen
+uses more than 100MB in order to provide multiple versions of your graphic assets for multiple screen
 densities, consider instead publishing <a
 href="{@docRoot}google/play/publishing/multiple-apks.html">multiple APKs</a> in which each APK
 contains only the assets required for the screens that it targets.</li>
@@ -450,37 +450,36 @@
 download two packages from the SDK Manager and add the appropriate libraries to your
 application.</p>
 
-<p>First, open the <a href="{@docRoot}sdk/exploring.html">Android SDK Manager</a>, expand
-<em>Extras</em> and download:</p>
+<p>First, open the <a href="{@docRoot}sdk/exploring.html">Android SDK Manager</a>
+(<strong>Tools > Android > SDK Manager</strong>), and under
+<em>Appearance & Behavior > System Settings > Android SDK</em>, select
+the <em>SDK Tools</em> tab to select and download:</p>
 <ul>
   <li><em>Google Play Licensing Library package</em></li>
   <li><em>Google Play APK Expansion Library package</em></li>
 </ul>
 
-<p>If you're using Eclipse, create a project for each library and add it to your app:</p>
+<p>Create a new library module for the License Verification Library and Downloader
+Library. For each library:</p>
 <ol>
-  <li>Create a new Library Project for the License Verification Library and Downloader
-Library. For each library:
-    <ol>
-      <li>Begin a new Android project.</li>
-      <li>Select <strong>Create project from existing
-source</strong> and choose the library from the {@code <sdk>/extras/google/} directory
-({@code market_licensing/} for the License Verification Library or {@code
-market_apk_expansion/downloader_library/} for the Downloader Library).</li>
-      <li>Specify a <em>Project Name</em> such as "Google Play License Library" and "Google Play
-Downloader
-Library"</li>
-      <li>Click <strong>Finish</strong>.</li>
-    </ol>
+  <li>Select <strong>File > New > New Module</strong>.</li>
+  <li>In the <em>Create New Module</em> window, select <strong>Android Library</strong>,
+and then select <strong>Next</strong>.</li>
+  <li>Specify an <em>Application/Library name</em> such as "Google Play License Library"
+and "Google Play Downloader Library", choose <em>Minimum SDK level</em>, then select
+<strong>Finish</strong>.</li>
+  <li>Select <strong>File > Project Structure</strong>.</li>
+  <li>Select the <em>Properties</em> tab and in <em>Library
+Repository</em>, enter the library from the {@code &lt;sdk&gt;/extras/google/} directory
+({@code play_licensing/} for the License Verification Library or {@code
+play_apk_expansion/downloader_library/} for the Downloader Library).</li>
+  <li>Select <strong>OK</strong> to create the new module.</li>
+</ol>
+
 <p class="note"><strong>Note:</strong> The Downloader Library depends on the License
 Verification Library. Be sure to add the License
-Verification Library to the Downloader Library's project properties (same process as
-steps 2 and 3 below).</p>
+Verification Library to the Downloader Library's project properties.</p>
   </li>
-  <li>Right-click the Android project in which you want to use APK expansion files and
-select <strong>Properties</strong>.</li>
-  <li>In the <em>Library</em> panel, click <strong>Add</strong> to select and add each of the
-libraries to your application.</li>
 </ol>
 
 <p>Or, from a command line, update your project to include the libraries:</p>
@@ -717,7 +716,7 @@
   </li>
   <li>Start the download by calling the static method {@code
 DownloaderClientMarshaller.startDownloadServiceIfRequired(Context c, PendingIntent
-notificationClient, Class<?> serviceClass)}.
+notificationClient, Class&lt;?> serviceClass)}.
     <p>The method takes the following parameters:</p>
     <ul>
       <li><code>context</code>: Your application's {@link android.content.Context}.</li>
@@ -781,7 +780,7 @@
   </li>
   <li>When the {@code startDownloadServiceIfRequired()} method returns anything <em>other
 than</em> {@code NO_DOWNLOAD_REQUIRED}, create an instance of {@code IStub} by
-calling {@code DownloaderClientMarshaller.CreateStub(IDownloaderClient client, Class<?>
+calling {@code DownloaderClientMarshaller.CreateStub(IDownloaderClient client, Class&lt;?>
 downloaderService)}. The {@code IStub} provides a binding between your activity to the downloader
 service such that your activity receives callbacks about the download progress.
     <p>In order to instantiate your {@code IStub} by calling {@code CreateStub()}, you must pass it
@@ -957,7 +956,7 @@
 depends on the type of file you've used. As discussed in the <a href="#Overview">overview</a>, your
 expansion files can be any kind of file you
 want, but are renamed using a particular <a href="#Filename">file name format</a> and are saved to
-{@code <shared-storage>/Android/obb/<package-name>/}.</p>
+{@code &lt;shared-storage&gt;/Android/obb/&lt;package-name&gt;/}.</p>
 
 <p>Regardless of how you read your files, you should always first check that the external
 storage is available for reading. There's a chance that the user has the storage mounted to a
@@ -1060,7 +1059,7 @@
 
 <p>The Google Market Apk Expansion package includes a library called the APK
 Expansion Zip Library (located in {@code
-<sdk>/extras/google/google_market_apk_expansion/zip_file/}). This is an optional library that
+&lt;sdk>/extras/google/google_market_apk_expansion/zip_file/}). This is an optional library that
 helps you read your expansion
 files when they're saved as ZIP files. Using this library allows you to easily read resources from
 your ZIP expansion files as a virtual file system.</p>
diff --git a/docs/html/google/play/licensing/overview.jd b/docs/html/google/play/licensing/overview.jd
old mode 100644
new mode 100755
index a2d5379..ecb384d
--- a/docs/html/google/play/licensing/overview.jd
+++ b/docs/html/google/play/licensing/overview.jd
@@ -197,8 +197,7 @@
 
 <ul>
 <li>An application can use the service only if the Google Play client is
-installed on its host device and the device is running Android 1.5 (API level 3)
-or higher.</li>
+installed on its host device and the device is running Android 1.5 (API level 3) or higher.</li>
 <li>To complete a license check, the licensing server must be accessible over
 the network. You can implement license caching behaviors to manage access to your application when
 there is no network connectivity. </li>
@@ -233,8 +232,7 @@
 
 <p>Although no license mechanism can completely prevent all unauthorized use,
 the licensing service lets you control access for most types of normal usage,
-across all compatible devices, locked or unlocked, that run Android 1.5 or
-higher version of the platform.</p>
+across all compatible devices, locked or unlocked.</p>
 
 <p>To begin adding application licensing to your application, continue to <a
 href="{@docRoot}google/play/licensing/setting-up.html">Setting Up for Licensing</a>.</p>
diff --git a/docs/html/google/play/licensing/setting-up.jd b/docs/html/google/play/licensing/setting-up.jd
old mode 100644
new mode 100755
index 1822337..f752182
--- a/docs/html/google/play/licensing/setting-up.jd
+++ b/docs/html/google/play/licensing/setting-up.jd
@@ -6,7 +6,7 @@
 
 <div id="qv-wrapper">
 <div id="qv">
-  
+
   <h2>In this document</h2>
   <ol>
   <li><a href="#account">Setting Up a Publisher Account</a></li>
@@ -161,7 +161,7 @@
 However, it does provide: </p>
 
 <ul>
-<li>An Google Play background service that implements the
+<li>A Google Play background service that implements the
 <code>ILicensingService</code> remote interface, so that your application can
 send license checks over the network to the licensing server. </li>
 <li>A set of underlying account services that let you add an a Google account on
@@ -179,21 +179,24 @@
 these steps: </p>
 
 <ol>
-  <li>Launch the Android SDK Manager (available under the Eclipse <strong>Window</strong>
-menu or by executing {@code <sdk>/tools/android sdk}).</li>
+  <li>Launch the Android SDK Manager, available under the Android Studio Tools menu
+(<strong>Tools > Android > SDK Manager</strong>) or by executing
+{@code &lt;sdk>/tools/android sdk}.</li>
   <li>Select and download <strong>Google APIs</strong> for the Android version you'd like to target
 (must be Android 2.2 or higher).</li>
-  <li>When the download is complete, open the AVD Manager (available under the Eclipse
-<strong>Window</strong>
-menu or by executing {@code <sdk>/tools/android avd}).</li>
-  <li>Click
-<strong>New</strong> and set the configuration details for the new AVD. </li>
-  <li>In the dialog that appears, assign a descriptive name to the AVD and then
-use the Target menu to choose the <strong>Google APIs</strong> as
-the system image to run on the new AVD. Set the other configuration details as
-needed and then click <strong>Create AVD</strong> to finish. The SDK tools
-create the new AVD configuration, which then appears in the list of available
-Android Virtual Devices.</li>
+  <li>When the download is complete, open the AVD Manager, available under the Android Studio
+Tools menu (<strong>Tools > Android > AVD Manager</strong>) or by executing
+{@code &lt;sdk>/tools/android avd}.</li>
+  <li>In the <em>Android Virtual Device Manager</em> window, select
+<strong>+ Create Virtual Device</strong> to set the configuration details for the new AVD. </li>
+  <li>In the <em>Virtual Device Configuration</em> window, select device hardware, then
+select <strong>Next</strong>.</li>
+<li>Select a <strong>Google API</strong> as the system image to run on the new AVD, then
+select <strong>Next</strong>.</li>
+<li>Assign a descriptive name to the AVD and then set the other configuration details as
+needed.</li>
+<li>Select <strong>Finish</strong> to create the new AVD configuration, which will appear in the
+list of available Android Virtual Devices.</li>
 </ol>
 
 <p>If you are not familiar with AVDs or how to use them, see <a
@@ -205,29 +208,13 @@
 above &mdash; either on an actual device or on an emulator &mdash; make sure to
 update your application project or build scripts as needed, so that your compiled
 <code>.apk</code> files that use licensing are deployed into that environment.
-In particular, if you are developing in Eclipse, make sure that you set up a
+In particular, if you are developing in Android Studio, make sure that you set up a
 Run/Debug Configuration that targets the appropriate device or AVD. </p>
 
 <p>You do not need to make any changes to your application's
 build configuration, provided that the project is already configured to compile
-against a standard Android 1.5 (API level 3) or higher library. For example:
-
-<ul>
-<li>If you have an existing application that is compiled against
-the Android 1.5 library, you do not need to make any changes to your
-build configuration to support licensing. The build target meets the minimum
-requirements for licensing, so you would continue building
-against the same version of the Android platform.</li>
-
-<li>Similarly, if you are building against Android 1.5 (API level 3) but
-are using an emulator running the Google APIs Add-On API 8 as the application's
-runtime environment, there is no need to change your application's build
-configuration. </li>
-</ul>
-
-<p>In general, adding licensing to an application should have no impact
-whatsoever on the application's build configuration.</p>
-
+against a standard Android 1.5 (API level 3) or higher library. Adding licensing to an application
+should have no impact whatsoever on the application's build configuration.</p>
 
 <h3 id="download-lvl">Downloading the LVL</h3>
 
@@ -323,28 +310,22 @@
 <p>The LVL is provided as a configured library project &mdash; once you have
 downloaded it, you can start using it right away. </p>
 
-<p>If you are working in Eclipse with ADT, you need to add the LVL to your
-workspace as a new development project, in the same way as you would a new
-application project. </p>
+<p>If you are working in Android Studio, you need to add the LVL to your
+project as a new module.</p>
 
 <ol>
-<li>Use the New Project Wizard to create a new
-project from existing sources. Select the LVL's <code>library</code> directory
-(the directory containing the library's AndroidManifest.xml file) as the project
-root.</li>
-<li>When you are creating the library project, you can select any application
-name, package, and set other fields as needed. </li>
-<li>For the library's build target, select Android 1.5 (API level 3) or higher.</li>
+<li>Use the New Module Wizard to import a library module by selecting
+<strong>File > New > Import Module</strong>.</li>
+<li>In the <em>New Module</em> window, in <em>Source directory</em>, enter the LVL's
+<code>library</code> directory (the directory containing the library's AndroidManifest.xml file)
+as the project root ({@code &lt;sdk>/extras/google/play_licensing/library/AndroidManifest.xml}),
+then select <strong>Next</strong>.</li>
+<li>Select <strong>Finish</strong> to import the library module.</li>
 </ol>
 
-<p> When created, the project is
-predefined as a library project in its <code>project.properties</code> file, so
-no further configuration is needed. </p>
-
-<p>For more information about how to create an application project or work with
-library projects in Eclipse, see <a
-href="{@docRoot}tools/projects/projects-eclipse.html">Managing Projects from
-Eclipse with ADT</a>.</p>
+<p>For more information about how to work with library modules in Android Studio, see
+<a href="{@docRoot}sdk/installing/create-project.html#SettingUpLibraryModule">Managing Projects from
+Android Studio</a>.</p>
 
 
 <h4>Copying the LVL sources to your application</h4>
@@ -369,24 +350,10 @@
 compile time. The process for adding a reference to a library project depends
 on your development environment, as described below.</p>
 
-<p> If you are developing in Eclipse with ADT, you should already have added the
-library project to your workspace, as described in the previous section. If you
+<p> If you are developing in Android Studio, you should already have added the
+library module to your project, as described in the previous section. If you
 haven't done that already, do it now before continuing. </p>
 
-<p>Next, open the application's project properties window, as shown below.
-Select the "Android" properties group and click <strong>Add</strong>, then
-choose the LVL library project (com_android_vending_licensing) and click
-<strong>OK</strong>. For more information, see
-<a href="{@docRoot}tools/projects/projects-eclipse.html#SettingUpLibraryProject">
-Managing Projects from Eclipse with ADT</a></p>.
-
-
-<img src="{@docRoot}images/licensing_add_library.png" alt=""/>
-<p class="img-caption"><strong>Figure 3.</strong> If you are
-working in Eclipse with ADT, you can add the LVL library project to your
-application from the application's project properties.</p>
-
-
 <p>If you are developing using the SDK command-line tools, navigate to the
 directory containing your application project and open the
 <code>project.properties</code> file. Add a line to the file that specifies the
diff --git a/docs/html/google/play/publishing/multiple-apks.jd b/docs/html/google/play/publishing/multiple-apks.jd
index 71a7ae5..fd4481d 100644
--- a/docs/html/google/play/publishing/multiple-apks.jd
+++ b/docs/html/google/play/publishing/multiple-apks.jd
@@ -67,7 +67,7 @@
 alternative resources for different configurations (for example, different layouts for different
 screen sizes) and the Android system selects the appropriate resources for the device at runtime. In
 a few cases, however, a single APK is unable to support all device configurations, because
-alternative resources make the APK file too big (greater than 50MB) or other technical challenges
+alternative resources make the APK file too big (greater than 100MB) or other technical challenges
 prevent a single APK from working on all devices.</p>
 
 <p>Although <strong>we encourage you to develop and publish a single APK</strong> that supports as
@@ -93,7 +93,7 @@
 
 <p class="note"><strong>Note:</strong> You should generally use multiple APKs to support
 different device configurations <strong>only when your APK is too large</strong> (greater than
-50MB) due to the alternative resources needed for different device configurations.
+100MB) due to the alternative resources needed for different device configurations.
 Using a single APK to support different configurations is always the best practice,
 because it makes the path for application updates simple and clear for users (and also makes
 your life simpler by avoiding development and publishing complexity). Read the section below about
@@ -626,7 +626,7 @@
 
 <h3 id="ScreenOptions">Supporting multiple screens</h3>
 
-<p>Unless your APK file exceeds the Google Play size limit of 50MB, supporting multiple screens
+<p>Unless your APK file exceeds the Google Play size limit of 100MB, supporting multiple screens
 should always be done with a single APK. Since Android 1.6, the Android system manages most of the
 work required for your application to run successfully on a variety of screen sizes and
 densities.</p>
diff --git a/docs/html/guide/_book.yaml b/docs/html/guide/_book.yaml
new file mode 100644
index 0000000..5017376
--- /dev/null
+++ b/docs/html/guide/_book.yaml
@@ -0,0 +1,409 @@
+toc:
+- title: Introduction
+  path: /guide/index.html
+  section:
+  - title: App Fundamentals
+    path: /guide/components/fundamentals.html
+  - title: Device Compatibility
+    path: /guide/practices/compatibility.html
+  - title: System Permissions
+    path: /guide/topics/security/permissions.html
+
+- title: App Components
+  path: /guide/components/index.html
+  section:
+  - title: Intents and Intent Filters
+    path: /guide/components/intents-filters.html
+    section:
+    - title: Common Intents
+      path: /guide/components/intents-common.html
+  - title: Activities
+    path: /guide/components/activities.html
+    section:
+    - title: Fragments
+      path: /guide/components/fragments.html
+    - title: Loaders
+      path: /guide/components/loaders.html
+    - title: Tasks and Back Stack
+      path: /guide/components/tasks-and-back-stack.html
+    - title: Overview Screen
+      path: /guide/components/recents.html
+  - title: Services
+    path: /guide/components/services.html
+    section:
+    - title: Bound Services
+      path: /guide/components/bound-services.html
+    - title: AIDL
+      path: /guide/components/aidl.html
+  - title: Content Providers
+    path: /guide/topics/providers/content-providers.html
+    section:
+    - title: Content Provider Basics
+      path: /guide/topics/providers/content-provider-basics.html
+    - title: Creating a Content Provider
+      path: /guide/topics/providers/content-provider-creating.html
+    - title: Calendar Provider
+      path: /guide/topics/providers/calendar-provider.html
+    - title: Contacts Provider
+      path: /guide/topics/providers/contacts-provider.html
+    - title: Storage Access Framework
+      path: /guide/topics/providers/document-provider.html
+  - title: App Widgets
+    path: /guide/topics/appwidgets/index.html
+    section:
+    - title: App Widget Host
+      path: /guide/topics/appwidgets/host.html
+  - title: Processes and Threads
+    path: /guide/components/processes-and-threads.html
+
+- title: App Resources
+  path: /guide/topics/resources/index.html
+  section:
+  - title: Overview
+    path: /guide/topics/resources/overview.html
+  - title: Providing Resources
+    path: /guide/topics/resources/providing-resources.html
+  - title: Accessing Resources
+    path: /guide/topics/resources/accessing-resources.html
+  - title: Handling Runtime Changes
+    path: /guide/topics/resources/runtime-changes.html
+  - title: Localization
+    path: /guide/topics/resources/localization.html
+  - title: Resource Types
+    path: /guide/topics/resources/available-resources.html
+    section:
+    - title: Animation
+      path: /guide/topics/resources/animation-resource.html
+    - title: Color State List
+      path: /guide/topics/resources/color-list-resource.html
+    - title: Drawable
+      path: /guide/topics/resources/drawable-resource.html
+    - title: Layout
+      path: /guide/topics/resources/layout-resource.html
+    - title: Menu
+      path: /guide/topics/resources/menu-resource.html
+    - title: String
+      path: /guide/topics/resources/string-resource.html
+    - title: Style
+      path: /guide/topics/resources/style-resource.html
+    - title: More Types
+      path: /guide/topics/resources/more-resources.html
+
+- title: App Manifest
+  path: /guide/topics/manifest/manifest-intro.html
+  section:
+  - title: <action>
+    path: /guide/topics/manifest/action-element.html
+  - title: <activity>
+    path: /guide/topics/manifest/activity-element.html
+  - title: <activity-alias>
+    path: /guide/topics/manifest/activity-alias-element.html
+  - title: <application>
+    path: /guide/topics/manifest/application-element.html
+  - title: <category>
+    path: /guide/topics/manifest/category-element.html
+  - title: <compatible-screens>
+    path: /guide/topics/manifest/compatible-screens-element.html
+  - title: <data>
+    path: /guide/topics/manifest/data-element.html
+  - title: <grant-uri-permission>
+    path: /guide/topics/manifest/grant-uri-permission-element.html
+  - title: <instrumentation>
+    path: /guide/topics/manifest/instrumentation-element.html
+  - title: <intent-filter>
+    path: /guide/topics/manifest/intent-filter-element.html
+  - title: <manifest>
+    path: /guide/topics/manifest/manifest-element.html
+  - title: <meta-data>
+    path: /guide/topics/manifest/meta-data-element.html
+  - title: <path-permission>
+    path: /guide/topics/manifest/path-permission-element.html
+  - title: <permission>
+    path: /guide/topics/manifest/permission-element.html
+  - title: <permission-group>
+    path: /guide/topics/manifest/permission-group-element.html
+  - title: <permission-tree>
+    path: /guide/topics/manifest/permission-tree-element.html
+  - title: <provider>
+    path: /guide/topics/manifest/provider-element.html
+  - title: <receiver>
+    path: /guide/topics/manifest/receiver-element.html
+  - title: <service>
+    path: /guide/topics/manifest/service-element.html
+  - title: <supports-gl-texture>
+    path: /guide/topics/manifest/supports-gl-texture-element.html
+  - title: <supports-screens>
+    path: /guide/topics/manifest/supports-screens-element.html
+  - title: <uses-configuration>
+    path: /guide/topics/manifest/uses-configuration-element.html
+  - title: <uses-feature>
+    path: /guide/topics/manifest/uses-feature-element.html
+  - title: <uses-library>
+    path: /guide/topics/manifest/uses-library-element.html
+  - title: <uses-permission>
+    path: /guide/topics/manifest/uses-permission-element.html
+  - title: <uses-permission-sdk-23>
+    path: /guide/topics/manifest/uses-permission-sdk-23-element.html
+  - title: <uses-sdk>
+    path: /guide/topics/manifest/uses-sdk-element.html
+
+- title: User Interface
+  path: /guide/topics/ui/index.html
+  section:
+  - title: Overview
+    path: /guide/topics/ui/overview.html
+  - title: Layouts
+    path: /guide/topics/ui/declaring-layout.html
+    section:
+    - title: Linear Layout
+      path: /guide/topics/ui/layout/linear.html
+    - title: Relative Layout
+      path: /guide/topics/ui/layout/relative.html
+    - title: List View
+      path: /guide/topics/ui/layout/listview.html
+    - title: Grid View
+      path: /guide/topics/ui/layout/gridview.html
+  - title: Input Controls
+    path: /guide/topics/ui/controls.html
+    section:
+    - title: Buttons
+      path: /guide/topics/ui/controls/button.html
+    - title: Text Fields
+      path: /guide/topics/ui/controls/text.html
+    - title: Checkboxes
+      path: /guide/topics/ui/controls/checkbox.html
+    - title: Radio Buttons
+      path: /guide/topics/ui/controls/radiobutton.html
+    - title: Toggle Buttons
+      path: /guide/topics/ui/controls/togglebutton.html
+    - title: Spinners
+      path: /guide/topics/ui/controls/spinner.html
+    - title: Pickers
+      path: /guide/topics/ui/controls/pickers.html
+  - title: Input Events
+    path: /guide/topics/ui/ui-events.html
+  - title: Menus
+    path: /guide/topics/ui/menus.html
+  - title: Settings
+    path: /guide/topics/ui/settings.html
+  - title: Dialogs
+    path: /guide/topics/ui/dialogs.html
+  - title: Notifications
+    path: /guide/topics/ui/notifiers/notifications.html
+  - title: Toasts
+    path: /guide/topics/ui/notifiers/toasts.html
+  - title: Search
+    path: /guide/topics/search/index.html
+    section:
+    - title: Creating a Search Interface
+      path: /guide/topics/search/search-dialog.html
+    - title: Adding Recent Query Suggestions
+      path: /guide/topics/search/adding-recent-query-suggestions.html
+    - title: Adding Custom Suggestions
+      path: /guide/topics/search/adding-custom-suggestions.html
+    - title: Searchable Configuration
+      path: /guide/topics/search/searchable-config.html
+  - title: Drag and Drop
+    path: /guide/topics/ui/drag-drop.html
+  - title: Accessibility
+    path: /guide/topics/ui/accessibility/index.html
+    section:
+    - title: Making Applications Accessible
+      path: /guide/topics/ui/accessibility/apps.html
+    - title: Accessibility Developer Checklist
+      path: /guide/topics/ui/accessibility/checklist.html
+    - title: Building Accessibility Services
+      path: /guide/topics/ui/accessibility/services.html
+  - title: Styles and Themes
+    path: /guide/topics/ui/themes.html
+  - title: Custom Components
+    path: /guide/topics/ui/custom-components.html
+
+- title: Animation and Graphics
+  path: /guide/topics/graphics/index.html
+  section:
+  - title: Overview
+    path: /guide/topics/graphics/overview.html
+  - title: Property Animation
+    path: /guide/topics/graphics/prop-animation.html
+  - title: View Animation
+    path: /guide/topics/graphics/view-animation.html
+  - title: Drawable Animation
+    path: /guide/topics/graphics/drawable-animation.html
+  - title: Canvas and Drawables
+    path: /guide/topics/graphics/2d-graphics.html
+  - title: OpenGL ES
+    path: /guide/topics/graphics/opengl.html
+  - title: Hardware Acceleration
+    path: /guide/topics/graphics/hardware-accel.html
+
+- title: Computation
+  path: /guide/topics/renderscript/index.html
+  section:
+  - title: RenderScript
+    path: /guide/topics/renderscript/compute.html
+  - title: Advanced RenderScript
+    path: /guide/topics/renderscript/advanced.html
+  - title: Runtime API Reference
+    path: /guide/topics/renderscript/reference/overview.html
+    section:
+    - title: Numerical Types
+      path: /guide/topics/renderscript/reference/rs_value_types.html
+    - title: Object Types
+      path: /guide/topics/renderscript/reference/rs_object_types.html
+    - title: Conversion Functions
+      path: /guide/topics/renderscript/reference/rs_convert.html
+    - title: Mathematical Constants and Functions
+      path: /guide/topics/renderscript/reference/rs_math.html
+    - title: Vector Math Functions
+      path: /guide/topics/renderscript/reference/rs_vector_math.html
+    - title: Matrix Functions
+      path: /guide/topics/renderscript/reference/rs_matrix.html
+    - title: Quaternion Functions
+      path: /guide/topics/renderscript/reference/rs_quaternion.html
+    - title: Atomic Update Functions
+      path: /guide/topics/renderscript/reference/rs_atomic.html
+    - title: Time Functions and Types
+      path: /guide/topics/renderscript/reference/rs_time.html
+    - title: Allocation Data Access Functions
+      path: /guide/topics/renderscript/reference/rs_allocation_data.html
+    - title: Object Characteristics Functions
+      path: /guide/topics/renderscript/reference/rs_object_info.html
+    - title: Kernel Invocation Functions and Types
+      path: /guide/topics/renderscript/reference/rs_for_each.html
+    - title: Input/Output Functions
+      path: /guide/topics/renderscript/reference/rs_io.html
+    - title: Debugging Functions
+      path: /guide/topics/renderscript/reference/rs_debug.html
+    - title: Graphics Functions and Types
+      path: /guide/topics/renderscript/reference/rs_graphics.html
+    - title: Index
+      path: /guide/topics/renderscript/reference/index.html
+
+- title: Media and Camera
+  path: /guide/topics/media/index.html
+  section:
+  - title: Media Playback
+    path: /guide/topics/media/mediaplayer.html
+  - title: Media Router
+    path: /guide/topics/media/mediarouter.html
+  - title: Media Route Provider
+    path: /guide/topics/media/mediarouteprovider.html
+  - title: ExoPlayer
+    path: /guide/topics/media/exoplayer.html
+  - title: Supported Media Formats
+    path: /guide/appendix/media-formats.html
+  - title: Audio Capture
+    path: /guide/topics/media/audio-capture.html
+  - title: JetPlayer
+    path: /guide/topics/media/jetplayer.html
+  - title: Camera
+    path: /guide/topics/media/camera.html
+
+- title: Location and Sensors
+  path: /guide/topics/sensors/index.html
+  section:
+  - title: Location and Maps
+    path: /guide/topics/location/index.html
+  - title: Location Strategies
+    path: /guide/topics/location/strategies.html
+  - title: Sensors Overview
+    path: /guide/topics/sensors/sensors_overview.html
+  - title: Motion Sensors
+    path: /guide/topics/sensors/sensors_motion.html
+  - title: Position Sensors
+    path: /guide/topics/sensors/sensors_position.html
+  - title: Environment Sensors
+    path: /guide/topics/sensors/sensors_environment.html
+
+- title: Connectivity
+  path: /guide/topics/connectivity/index.html
+  section:
+  - title: Bluetooth
+    path: /guide/topics/connectivity/bluetooth.html
+    section:
+    - title: Bluetooth Low Energy
+      path: /guide/topics/connectivity/bluetooth-le.html
+  - title: NFC
+    path: /guide/topics/connectivity/nfc/index.html
+    section:
+    - title: NFC Basics
+      path: /guide/topics/connectivity/nfc/nfc.html
+    - title: Advanced NFC
+      path: /guide/topics/connectivity/nfc/advanced-nfc.html
+    - title: Host-based Card Emulation
+      path: /guide/topics/connectivity/nfc/hce.html
+  - title: Wi-Fi P2P
+    path: /guide/topics/connectivity/wifip2p.html
+  - title: USB
+    path: /guide/topics/connectivity/usb/index.html
+    section:
+    - title: Accessory
+      path: /guide/topics/connectivity/usb/accessory.html
+    - title: Host
+      path: /guide/topics/connectivity/usb/host.html
+  - title: SIP
+    path: /guide/topics/connectivity/sip.html
+
+- title: Text and Input
+  path: /guide/topics/text/index.html
+  section:
+  - title: Copy and Paste
+    path: /guide/topics/text/copy-paste.html
+  - title: Creating an IME
+    path: /guide/topics/text/creating-input-method.html
+  - title: Spelling Checker
+    path: /guide/topics/text/spell-checker-framework.html
+
+- title: Data Storage
+  path: /guide/topics/data/index.html
+  section:
+  - title: Storage Options
+    path: /guide/topics/data/data-storage.html
+  - title: Data Backup
+    path: /guide/topics/data/backup.html
+  - title: App Install Location
+    path: /guide/topics/data/install-location.html
+
+- title: Administration
+  path: /guide/topics/admin/index.html
+  section:
+  - title: Device Policies
+    path: /guide/topics/admin/device-admin.html
+
+- title: Web Apps
+  path: /guide/webapps/index.html
+  section:
+  - title: Supporting Different Screens in Web Apps
+    path: /guide/webapps/targeting.html
+  - title: Building Web Apps in WebView
+    path: /guide/webapps/webview.html
+  - title: Migrating to WebView in Android 4.4
+    path: /guide/webapps/migrating.html
+  - title: Debugging Web Apps
+    path: /guide/webapps/debugging.html
+  - title: Best Practices for Web Apps
+    path: /guide/webapps/best-practices.html
+
+- title: Best Practices
+  path: /guide/practices/index.html
+  custom_link_attributes:
+  - de-lang="Bewährte Verfahren"
+  - es-lang="Prácticas recomendadas"
+  - fr-lang="Meilleures pratiques"
+  - it-lang="Best practice"
+  - ja-lang="ベスト プラクティス"
+  - zh-cn-lang="最佳实践"
+  - zh-tw-lang="最佳實務"
+  section:
+  - title: Supporting Multiple Screens
+    path: /guide/practices/screens_support.html
+    section:
+    - title: Distributing to Specific Screens
+      path: /guide/practices/screens-distribution.html
+    - title: Screen Compatibility Mode
+      path: /guide/practices/screen-compat-mode.html
+  - title: Supporting Tablets and Handsets
+    path: /guide/practices/tablets-and-handsets.html
+  - title: Verifying App Behavior on ART
+    path: /guide/practices/verifying-apps-art.html
diff --git a/docs/html/guide/appendix/glossary.jd b/docs/html/guide/appendix/glossary.jd
old mode 100644
new mode 100755
index db518f9..a200a6c
--- a/docs/html/guide/appendix/glossary.jd
+++ b/docs/html/guide/appendix/glossary.jd
@@ -41,8 +41,8 @@
     <dt id="adb">adb</dt>
     <dd>Android Debug Bridge, a command-line debugging application included with the
         SDK. It provides tools to browse the device, copy tools on the device, and
-        forward ports for debugging. If you are developing in Eclipse using the
-		ADT Plugin, adb is integrated into your development environment. See 
+        forward ports for debugging. If you are developing in Android Studio, 
+        adb is integrated into your development environment. See 
 		<a href="{@docRoot}tools/help/adb.html">Android Debug Bridge</a>
 		for more information. </dd>
 
@@ -90,8 +90,8 @@
     <dt id="ddms">DDMS</dt>
     <dd>Dalvik Debug Monitor Service, a GUI debugging application included
     with the SDK. It provides screen capture, log dump, and process
-    examination capabilities. If you are developing in Eclipse using the ADT
-    Plugin, DDMS is integrated into your development environment. See <a
+    examination capabilities. If you are developing in Android Studio, 
+    DDMS is integrated into your development environment. See <a
     href="{@docRoot}tools/debugging/ddms.html">Using DDMS</a> to learn more about the program.</dd>
 
     <dt id="dialog">Dialog</dt> <dd> A floating window that acts as a lightweight
@@ -290,4 +290,4 @@
     in your application. </dd>
 
 
-</dl>
\ No newline at end of file
+</dl>
diff --git a/docs/html/guide/components/activities.jd b/docs/html/guide/components/activities.jd
index 7eeaeeb..070154d 100644
--- a/docs/html/guide/components/activities.jd
+++ b/docs/html/guide/components/activities.jd
@@ -115,7 +115,7 @@
 button that initiates an action when the user touches it.</p>
 
 <p>Android provides a number of ready-made views that you can use to design and organize your
-layout. "Widgets" are views that provide a visual (and interactive) elements for the screen, such
+layout. "Widgets" are views that provide visual (and interactive) elements for the screen, such
 as a button, text field, checkbox, or just an image. "Layouts" are views derived from {@link
 android.view.ViewGroup} that provide a unique layout model for its child views, such as a linear
 layout, a grid layout, or relative layout. You can also subclass the {@link android.view.View} and
@@ -661,7 +661,7 @@
 appropriate, such that any visible changes to the UI are automatically saved and restored when your
 activity is recreated. For example, the {@link android.widget.EditText} widget saves any text
 entered by the user and the {@link android.widget.CheckBox} widget saves whether it's checked or
-not. The only work required by you is to provide a unique ID (with the <a
+not. The only work required of you is to provide a unique ID (with the <a
 href="{@docRoot}guide/topics/resources/layout-resource.html#idvalue">{@code android:id}</a>
 attribute) for each widget you want to save its state. If a widget does not have an ID, then the
 system cannot save its state.</p>
diff --git a/docs/html/guide/components/aidl.jd b/docs/html/guide/components/aidl.jd
old mode 100644
new mode 100755
index e15e53f1..4031800
--- a/docs/html/guide/components/aidl.jd
+++ b/docs/html/guide/components/aidl.jd
@@ -190,11 +190,11 @@
 with a {@code .java} extension (for example, {@code IRemoteService.aidl} results in {@code
 IRemoteService.java}).</p>
 
-<p>If you use Eclipse, the incremental build generates the binder class almost immediately. If you
-do not use Eclipse, then the Ant tool generates the binder class next time you build your
-application&mdash;you should build your project with <code>ant debug</code> (or <code>ant
-release</code>) as soon as you're finished writing the {@code .aidl} file, so that your code can
-link against the generated class.</p>
+<p>If you use Android Studio, the incremental build generates the binder class almost immediately.
+If you do not use Android Studio, then the Gradle tool generates the binder class next time you
+build your application&mdash;you should build your project with <code>gradle assembleDebug</code>
+(or <code>gradle assembleRelease</code>) as soon as you're finished writing the {@code .aidl} file,
+so that your code can link against the generated class.</p>
 
 
 <h3 id="Implement">2. Implement the interface</h3>
@@ -217,7 +217,7 @@
 
 <p>Here is an example implementation of an interface called {@code IRemoteService} (defined by the
 {@code IRemoteService.aidl} example, above) using an anonymous instance:</p>
-  
+
 <pre>
 private final IRemoteService.Stub mBinder = new IRemoteService.Stub() {
     public int getPid(){
@@ -324,7 +324,7 @@
 
 
 
-  
+
 
 <h2 id="PassingObjects">Passing Objects over IPC</h2>
 
diff --git a/docs/html/guide/components/bound-services.jd b/docs/html/guide/components/bound-services.jd
index c2ac607..f71ba87 100644
--- a/docs/html/guide/components/bound-services.jd
+++ b/docs/html/guide/components/bound-services.jd
@@ -15,7 +15,11 @@
       <li><a href="#Messenger">Using a Messenger</a></li>
     </ol>
   </li>
-  <li><a href="#Binding">Binding to a Service</a></li>
+  <li><a href="#Binding">Binding to a Service</a>
+    <ol>
+      <li><a href="#Additional_Notes">Additional notes</a></li>
+    </ol>
+  </li>
   <li><a href="#Lifecycle">Managing the Lifecycle of a Bound Service</a></li>
 </ol>
 
@@ -309,8 +313,11 @@
 android.content.ServiceConnection#onServiceConnected onServiceConnected()} callback. The next
 section provides more information about this process of binding to the service.</p>
 
-<p class="note"><strong>Note:</strong> The example above doesn't explicitly unbind from the service,
-but all clients should unbind at an appropriate time (such as when the activity pauses).</p>
+<p class="note"><strong>Note:</strong> In the example above, the
+{@link android.app.Activity#onStop onStop()} method unbinds the client from the service. Clients
+should unbind from services at appropriate times, as discussed in
+<a href="#Additional_Notes">Additional Notes</a>.
+</p>
 
 <p>For more sample code, see the <a
 href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html">{@code
@@ -538,10 +545,11 @@
 the methods defined by the interface.</li>
   <li>To disconnect from the service, call {@link
 android.content.Context#unbindService unbindService()}.
-    <p>When your client is destroyed, it will unbind from the service, but you should always unbind
-when you're done interacting with the service or when your activity pauses so that the service can
-shutdown while its not being used. (Appropriate times to bind and unbind is discussed
-more below.)</p>
+  <p>If your client is still bound to a service when your app destroys the client, destruction
+causes the client to unbind. It is better practice to unbind the client as soon as it is done
+interacting with the service. Doing so allows the idle service to shut down. For more information
+about appropriate times to bind and unbind, see <a href="#Additional_Notes">Additional Notes</a>.
+</p>
   </li>
 </ol>
 
@@ -591,7 +599,7 @@
 </ul>
 
 
-<h3>Additional notes</h3>
+<h3 id="Additional_Notes">Additional notes</h3>
 
 <p>Here are some important notes about binding to a service:</p>
 <ul>
diff --git a/docs/html/guide/components/fragments.jd b/docs/html/guide/components/fragments.jd
index 3b7da87..f9c2a26 100644
--- a/docs/html/guide/components/fragments.jd
+++ b/docs/html/guide/components/fragments.jd
@@ -19,7 +19,7 @@
     <li><a href="#CommunicatingWithActivity">Communicating with the Activity</a>
       <ol>
         <li><a href="#EventCallbacks">Creating event callbacks to the activity</a></li>
-        <li><a href="#ActionBar">Adding items to the Action Bar</a></li>
+        <li><a href="#ActionBar">Adding items to the App Bar</a></li>
       </ol>
     </li>
     <li><a href="#Lifecycle">Handling the Fragment Lifecycle</a>
@@ -321,7 +321,7 @@
 of {@link android.app.FragmentTransaction} from your {@link android.app.Activity} like this:</p>
 
 <pre>
-FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()}
+FragmentManager fragmentManager = {@link android.app.Activity#getFragmentManager()};
 FragmentTransaction fragmentTransaction = fragmentManager.{@link android.app.FragmentManager#beginTransaction()};
 </pre>
 
@@ -603,11 +603,11 @@
 
 
 
-<h3 id="ActionBar">Adding items to the Action Bar</h3>
+<h3 id="ActionBar">Adding items to the App Bar</h3>
 
 <p>Your fragments can contribute menu items to the activity's <a
 href="{@docRoot}guide/topics/ui/menus.html#options-menu">Options Menu</a> (and, consequently, the <a
-href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a>) by implementing
+href="{@docRoot}training/appbar/index.html">app bar</a>) by implementing
 {@link android.app.Fragment#onCreateOptionsMenu(Menu,MenuInflater) onCreateOptionsMenu()}. In order
 for this method to receive calls, however, you must call {@link
 android.app.Fragment#setHasOptionsMenu(boolean) setHasOptionsMenu()} during {@link
@@ -634,8 +634,8 @@
 the Options Menu and context menus.</p>
 
 <p>For more information about menus, see the <a
-href="{@docRoot}guide/topics/ui/menus.html">Menus</a> and <a
-href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer guides.</p>
+href="{@docRoot}guide/topics/ui/menus.html">Menus</a> developer guide and the <a
+href="{@docRoot}training/appbar/index.html">App Bar</a> training class.</p>
 
 
 
diff --git a/docs/html/guide/components/fundamentals.jd b/docs/html/guide/components/fundamentals.jd
index 1d45106..ed3ba7d 100644
--- a/docs/html/guide/components/fundamentals.jd
+++ b/docs/html/guide/components/fundamentals.jd
@@ -59,8 +59,9 @@
 same user ID can also arrange to run in the same Linux process and share the same VM (the
 apps must also be signed with the same certificate).</li>
   <li>An app can request permission to access device data such as the user's
-contacts, SMS messages, the mountable storage (SD card), camera, Bluetooth, and more. All
-app permissions must be granted by the user at install time.</li>
+contacts, SMS messages, the mountable storage (SD card), camera, Bluetooth, and more. The user has
+to explicitly grant these permissions. For more information, see
+<a href="{@docRoot}training/permissions/index.html">Working with System Permissions</a>.</li>
 </ul>
 
 <p>That covers the basics regarding how an Android app exists within the system. The rest of
@@ -297,7 +298,7 @@
 <p>In the <code><a
 href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code> element,
 the {@code android:name} attribute specifies the fully qualified class name of the {@link
-android.app.Activity} subclass and the {@code android:label} attributes specifies a string
+android.app.Activity} subclass and the {@code android:label} attribute specifies a string
 to use as the user-visible label for the activity.</p>
 
 <p>You must declare all app components this way:</p>
@@ -368,7 +369,7 @@
 </pre>
 
 <p>Then, if another app creates an intent with the {@link
-android.content.Intent#ACTION_SEND} action and pass it to {@link android.app.Activity#startActivity
+android.content.Intent#ACTION_SEND} action and passes it to {@link android.app.Activity#startActivity
 startActivity()}, the system may start your activity so the user can draft and send an
 email.</p>
 
@@ -390,7 +391,7 @@
 
 <p>For example, if your app requires a camera and uses APIs introduced in Android 2.1 (<a
 href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API Level</a> 7),
-you should declare these as requirements in your manifest file like this:</p> 
+you should declare these as requirements in your manifest file like this:</p>
 
 <pre>
 &lt;manifest ... >
diff --git a/docs/html/guide/components/intents-common.jd b/docs/html/guide/components/intents-common.jd
index 078ff53..9488f6e 100644
--- a/docs/html/guide/components/intents-common.jd
+++ b/docs/html/guide/components/intents-common.jd
@@ -66,6 +66,11 @@
       <li><a href="#PlaySearch">Play music based on a search query</a></li>
     </ol>
   </li>
+  <li><a href="#NewNote">New Note</a>
+    <ol>
+      <li><a href="#CreateNote">Create a note</a></li>
+    </ol>
+  </li>
   <li><a href="#Phone">Phone</a>
     <ol>
       <li><a href="#DialPhone">Initiate a phone call</a></li>
@@ -558,7 +563,7 @@
 public void capturePhoto(String targetFilename) {
     Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
     intent.putExtra(MediaStore.EXTRA_OUTPUT,
-            Uri.withAppendedPath(mLocationForPhotos, targetFilename);
+            Uri.withAppendedPath(mLocationForPhotos, targetFilename));
     if (intent.resolveActivity(getPackageManager()) != null) {
         startActivityForResult(intent, REQUEST_IMAGE_CAPTURE);
     }
@@ -1780,6 +1785,72 @@
 
 
 
+<h2 id="NewNote">New Note</h2>
+
+<h3 id="CreateNote">Create a note</h3>
+
+<p>To create a new note, use the
+<a href="https://developers.google.com/android/reference/com/google/android/gms/actions/NoteIntents#ACTION_CREATE_NOTE">
+{@code ACTION_CREATE_NOTE}</a> action and specify note details such as the subject and text using extras defined below.</p>
+
+<p class="note"><strong>Note:</strong> Apps must ask for confirmation from the user
+before completing the action.</p>
+
+<dl>
+  <dt><b>Action</b></dt>
+  <dd><a href="https://developers.google.com/android/reference/com/google/android/gms/actions/NoteIntents#ACTION_CREATE_NOTE">
+  {@code ACTION_CREATE_NOTE}</a>
+</dd>
+
+  <dt><b>Data URI Scheme</b></dt>
+  <dd>None</dd>
+
+  <dt><b>MIME Type</b></dt>
+  <dd><a href="https://developer.android.com/reference/org/apache/http/protocol/HTTP.html#PLAIN_TEXT_TYPE">
+{@code PLAIN_TEXT_TYPE}</a></dd>
+  <dd>"*/*"</dd>
+
+
+<dt><b>Extras</b></dt>
+<dd>
+  <dl>
+    <dt><a href="https://developers.google.com/android/reference/com/google/android/gms/actions/NoteIntents#EXTRA_NAME">
+        {@code EXTRA_NAME}</a>
+      <dd>A string indicating the title or subject of the note.</dd>
+    <dt><a href="https://developers.google.com/android/reference/com/google/android/gms/actions/NoteIntents#EXTRA_TEXT">
+       {@code EXTRA_TEXT}</a>
+      <dd>A string indicating the text of the note.</dd>
+  </dl>
+</dd>
+
+
+<p><b>Example intent:</b></p>
+<pre>
+public void createNote(String subject, String text) {
+    Intent intent = new Intent(NoteIntents.ACTION_CREATE_NOTE)
+            .putExtra(NoteIntents.EXTRA_NAME, subject)
+            .putExtra(NoteIntents.EXTRA_TEXT, text);
+    if (intent.resolveActivity(getPackageManager()) != null) {
+        startActivity(intent);
+    }
+}</pre>
+
+
+<p><b>Example intent filter:</b></p>
+<pre>
+&lt;activity ...&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="com.google.android.gms.actions.CREATE_NOTE" /&gt;
+        &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+        &lt;data android:mimeType=”*/*”&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+
+
+
+
 <h2 id="Phone">Phone</h2>
 
 
diff --git a/docs/html/guide/components/intents-filters.jd b/docs/html/guide/components/intents-filters.jd
index abc67f2..d1d8c78 100644
--- a/docs/html/guide/components/intents-filters.jd
+++ b/docs/html/guide/components/intents-filters.jd
@@ -707,7 +707,7 @@
   <li>The intent category
 </ul>
 
-<p>The following sections describe how an intents are matched to the appropriate component(s)
+<p>The following sections describe how intents are matched to the appropriate component(s)
 in terms of how the intent filter is declared in an app's manifest file.</p>
 
 
diff --git a/docs/html/guide/components/services.jd b/docs/html/guide/components/services.jd
index 4053769..e646a17 100644
--- a/docs/html/guide/components/services.jd
+++ b/docs/html/guide/components/services.jd
@@ -261,7 +261,7 @@
 database transaction. When the transaction is done, the service stops itself and it is
 destroyed.</p>
 
-<p class="caution"><strong>Caution:</strong> A services runs in the same process as the application
+<p class="caution"><strong>Caution:</strong> A service runs in the same process as the application
 in which it is declared and in the main thread of that application, by default. So, if your service
 performs intensive or blocking operations while the user interacts with an activity from the same
 application, the service will slow down activity performance. To avoid impacting application
diff --git a/docs/html/guide/guide_toc.cs b/docs/html/guide/guide_toc.cs
index e99c15a..549a1b6 100644
--- a/docs/html/guide/guide_toc.cs
+++ b/docs/html/guide/guide_toc.cs
@@ -183,6 +183,7 @@
       <li><a href="<?cs var:toroot ?>guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></li> <!-- ##api level 4## -->
       <li><a href="<?cs var:toroot ?>guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></li>
       <li><a href="<?cs var:toroot ?>guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></li>
+      <li><a href="<?cs var:toroot ?>guide/topics/manifest/uses-permission-sdk-23-element.html">&lt;uses-permission-sdk-23&gt;</a></li>
       <li><a href="<?cs var:toroot ?>guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></li>
     </ul>
   </li><!-- end of the manifest file -->
@@ -261,9 +262,6 @@
       <li><a href="<?cs var:toroot ?>guide/topics/ui/menus.html">
           <span class="en">Menus</span></span>
           </a></li>
-      <li><a href="<?cs var:toroot ?>guide/topics/ui/actionbar.html">
-           <span class="en">Action Bar</span>
-          </a></li>
       <li><a href="<?cs var:toroot ?>guide/topics/ui/settings.html">
             <span class="en">Settings</span>
           </a></li>
diff --git a/docs/html/guide/practices/app-design/seamlessness.jd b/docs/html/guide/practices/app-design/seamlessness.jd
old mode 100644
new mode 100755
index ec6b7fd..1687962
--- a/docs/html/guide/practices/app-design/seamlessness.jd
+++ b/docs/html/guide/practices/app-design/seamlessness.jd
@@ -41,10 +41,10 @@
 phone call, for example). That behavior would not work for your application or
 for the user. </p>
 
-<p>To avoid these problems, your application should use the proper system 
-facility for notifying the user &mdash; the 
+<p>To avoid these problems, your application should use the proper system
+facility for notifying the user &mdash; the
 {@link android.app.Notification Notification} classes. Using
-notifications, your application can signal the user that an event has 
+notifications, your application can signal the user that an event has
 taken place, by displaying an icon in the status bar rather than taking
 focus and interrupting the user.</p>
 
@@ -140,7 +140,7 @@
 on the event handler thread, effectively blocking the event handler. This will
 delay input processing, and result in the ANR dialogs. To avoid this, move
 your computations to a thread. This <a
-href="responsiveness.html">Design for Responsiveness</a> document 
+href="responsiveness.html">Design for Responsiveness</a> document
 discusses how to do that..</p>
 
 <h2 id="multiple-activities">Don't Overload a Single Activity Screen</h2>
@@ -175,16 +175,16 @@
 
 <h2 id="flexui">Design Your UI to Work with Multiple Screen Resolutions</h2>
 
-<p>Different Android-powered devices will support different screen resolutions. 
-Some will even be able to change resolutions on the fly, such as by switching 
-to landscape mode. It's important to make sure your layouts and drawables 
+<p>Different Android-powered devices will support different screen resolutions.
+Some will even be able to change resolutions on the fly, such as by switching
+to landscape mode. It's important to make sure your layouts and drawables
 are flexible enough to display properly on a variety of device screens.</p>
 
-<p>Fortunately, this is very easy to do. In brief, what you must do is 
-provide different versions of your artwork (if you use any) for the key 
-resolutions, and then design your layout to accommodate various dimensions. 
-(For example, avoid using hard-coded positions and instead use relative 
-layouts.) If you do that much, the system handles the rest, and your 
+<p>Fortunately, this is very easy to do. In brief, what you must do is
+provide different versions of your artwork (if you use any) for the key
+resolutions, and then design your layout to accommodate various dimensions.
+(For example, avoid using hard-coded positions and instead use relative
+layouts.) If you do that much, the system handles the rest, and your
 application looks great on any device.</p>
 
 <h2 id="network">Assume the Network is Slow</h2>
@@ -208,9 +208,9 @@
 you're using the emulator, since the emulator uses your desktop computer's
 network connection. That's almost guaranteed to be much faster than a cell
 network, so you'll want to change the settings on the emulator that simulate
-slower network speeds. You can do this in Eclipse, in the "Emulator Settings"
-tab of your launch configuration or via a <a
-href="{@docRoot}tools/help/emulator.html#netspeed">command-line 
+slower network speeds. You can do this in Android Studio via the AVD Manager or
+via a <a
+href="{@docRoot}tools/help/emulator.html#netspeed">command-line
 option</a> when starting the emulator.</p>
 
 <h2 id="keyboard">Don't Assume Touchscreen or Keyboard</h2>
diff --git a/docs/html/guide/practices/compatibility.jd b/docs/html/guide/practices/compatibility.jd
index 1bfc99d3..83e841c 100644
--- a/docs/html/guide/practices/compatibility.jd
+++ b/docs/html/guide/practices/compatibility.jd
@@ -74,15 +74,12 @@
 
 
 <p>However, you do need to consider whether your <b>app is compatible</b> with each potential
-device configuration. Because Android runs on a wide range of device configurations, some features are not
-available on all devices. For example, some devices may not include a
+device configuration. Because Android runs on a wide range of device configurations, some features
+are not available on all devices. For example, some devices may not include a
 compass sensor. If your app's core functionality requires the use
 of a compass sensor, then your app is compatible only with devices that
 include a compass sensor.</p>
 
-
-
-
 <h2 id="how">Controlling Your App's Availability to Devices</h2>
 
 <p>Android supports a variety of features your app can leverage through platform APIs. Some
@@ -91,7 +88,6 @@
 so you may need to control your app's availability to devices based on your app's required
 features.</p>
 
-
 <p>To achieve the largest user-base possible for your app, you should strive to support as many
 device configurations as possible using a single APK. In most situations, you can do so by
 disabling optional features at runtime and <a
@@ -107,7 +103,6 @@
   <li><a href="#Screens">Screen configuration</a>
 </ul>
 
-
 <h3 id="Features">Device features</h3>
 
 <p>In order for you to manage your app’s availability based on device features,
@@ -119,7 +114,7 @@
 
 <p>If necessary, you can prevent users from installing your app when their devices don't provide a
 given feature by declaring it with a <a href=
-"{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code <uses-feature>}</a>
+"{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code &lt;uses-feature&gt;}</a>
 element in your app's <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">manifest
 file</a>.</p>
 
@@ -127,11 +122,11 @@
 you can declare the compass sensor as required with the following manifest tag:</p>
 
 <pre>
-&lt;manifest ... >
+&lt;manifest ... &gt;
     &lt;uses-feature android:name="android.hardware.sensor.compass"
-                  android:required="true" />
+                  android:required="true" /&gt;
     ...
-&lt;/manifest>
+&lt;/manifest&gt;
 </pre>
 
 <p>Google Play Store compares the features your app requires to the features available on
@@ -157,7 +152,7 @@
 </pre>
 
 <p>For information about all the filters you can
-use to control the availability of your app to users through Google Play Store, see the 
+use to control the availability of your app to users through Google Play Store, see the
 <a href="{@docRoot}google/play/filters.html">Filters on Google Play</a>
 document.</p>
 
@@ -169,17 +164,11 @@
 on this feature and make your app available to devices without Bluetooth by setting the <a href=
 "{@docRoot}guide/topics/manifest/uses-feature-element.html#required">{@code required}</a> attribute
 to {@code "false"} in the <a href=
-"{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code <uses-feature>}</a> tag.
+"{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code &lt;uses-feature&gt;}</a> tag.
 For more information about implicitly required device features, read <a href=
 "{@docRoot}guide/topics/manifest/uses-feature-element.html#permissions">Permissions that Imply
 Feature Requirements</a>.</p>
 
-
-
-
-
-
-
 <h3 id="Versions">Platform version</h3>
 
 <p>Different devices may run different versions of the Android platform,
@@ -191,7 +180,9 @@
 
 <p>The API level allows you to declare the minimum version with which your app is
 compatible, using the <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">{@code
-<uses-sdk>}</a> manifest tag and its <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> attribute.</p>
+&lt;uses-sdk>}</a> manifest tag and its
+<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a>
+attribute.</p>
 
 <p>For example, the <a href="{@docRoot}guide/topics/providers/calendar-provider.html">Calendar
 Provider</a> APIs were added in Android 4.0 (API level 14). If your app cannot function without
@@ -199,10 +190,10 @@
 version like this:</p>
 
 <pre>
-&lt;manifest ... >
-    &lt;uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" />
+&lt;manifest ... &gt;
+    &lt;uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" /&gt;
     ...
-&lt;/manifest>
+&lt;/manifest&gt;
 </pre>
 
 <p>The <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
@@ -212,7 +203,7 @@
 your app.</p>
 
 <p>Each successive version of Android provides compatibility for apps that were built using
-the APIs from previous platform versions, so your app should always be compitible with future
+the APIs from previous platform versions, so your app should always be compatible with future
 versions of Android while using the documented Android APIs.</p>
 
 <p class="note"><strong>Note:</strong>
@@ -241,18 +232,13 @@
 API level you want to check. For example:</p>
 
 <pre>
-if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) {
+if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
     // Running on something older than API level 11, so disable
     // the drag/drop features that use {@link android.content.ClipboardManager} APIs
     disableDragAndDrop();
 }
 </pre>
 
-
-
-
-
-
 <h3 id="Screens">Screen configuration</h3>
 
 <p>Android runs on devices of various sizes, from phones to tablets and TVs.
@@ -279,13 +265,6 @@
 href="{@docRoot}training/basics/supporting-devices/screens.html">Supporting Different Screens</a>.
 </p>
 
-
-
-
-
-
-
-
 <h2 id="filtering">Controlling Your App's Availability for Business Reasons</h2>
 
 <p>In addition to restricting your app's availability based on device characteristics,
@@ -301,11 +280,6 @@
 filtering for non-technical reasons (such as geographic locale) is always
 handled in the Google Play developer console.</p>
 
-
-
-
-
-
 <div class="next-docs">
 <div class="col-6">
   <h2 class="norule">Continue reading about:</h2>
diff --git a/docs/html/guide/practices/seamlessness.jd b/docs/html/guide/practices/seamlessness.jd
old mode 100644
new mode 100755
index 9679e2a..db12ad2
--- a/docs/html/guide/practices/seamlessness.jd
+++ b/docs/html/guide/practices/seamlessness.jd
@@ -42,10 +42,10 @@
 phone call, for example). That behavior would not work for your application or
 for the user. </p>
 
-<p>To avoid these problems, your application should use the proper system 
-facility for notifying the user &mdash; the 
+<p>To avoid these problems, your application should use the proper system
+facility for notifying the user &mdash; the
 {@link android.app.Notification Notification} classes. Using
-notifications, your application can signal the user that an event has 
+notifications, your application can signal the user that an event has
 taken place, by displaying an icon in the status bar rather than taking
 focus and interrupting the user.</p>
 
@@ -141,7 +141,7 @@
 on the event handler thread, effectively blocking the event handler. This will
 delay input processing, and result in the ANR dialogs. To avoid this, move
 your computations to a thread. This <a
-href="responsiveness.html">Design for Responsiveness</a> document 
+href="responsiveness.html">Design for Responsiveness</a> document
 discusses how to do that..</p>
 
 <h2 id="multiple-activities">Don't Overload a Single Activity Screen</h2>
@@ -176,16 +176,16 @@
 
 <h2 id="flexui">Design Your UI to Work with Multiple Screen Resolutions</h2>
 
-<p>Different Android-powered devices will support different screen resolutions. 
-Some will even be able to change resolutions on the fly, such as by switching 
-to landscape mode. It's important to make sure your layouts and drawables 
+<p>Different Android-powered devices will support different screen resolutions.
+Some will even be able to change resolutions on the fly, such as by switching
+to landscape mode. It's important to make sure your layouts and drawables
 are flexible enough to display properly on a variety of device screens.</p>
 
-<p>Fortunately, this is very easy to do. In brief, what you must do is 
-provide different versions of your artwork (if you use any) for the key 
-resolutions, and then design your layout to accommodate various dimensions. 
-(For example, avoid using hard-coded positions and instead use relative 
-layouts.) If you do that much, the system handles the rest, and your 
+<p>Fortunately, this is very easy to do. In brief, what you must do is
+provide different versions of your artwork (if you use any) for the key
+resolutions, and then design your layout to accommodate various dimensions.
+(For example, avoid using hard-coded positions and instead use relative
+layouts.) If you do that much, the system handles the rest, and your
 application looks great on any device.</p>
 
 <h2 id="network">Assume the Network is Slow</h2>
@@ -209,9 +209,9 @@
 you're using the emulator, since the emulator uses your desktop computer's
 network connection. That's almost guaranteed to be much faster than a cell
 network, so you'll want to change the settings on the emulator that simulate
-slower network speeds. You can do this in Eclipse, in the "Emulator Settings"
-tab of your launch configuration or via a <a
-href="{@docRoot}tools/help/emulator.html#netspeed">command-line 
+slower network speeds. You can do this in Android Studio via the AVD Manager,
+or via a <a
+href="{@docRoot}tools/help/emulator.html#netspeed">command-line
 option</a> when starting the emulator.</p>
 
 <h2 id="keyboard">Don't Assume Touchscreen or Keyboard</h2>
diff --git a/docs/html/guide/topics/connectivity/index.jd b/docs/html/guide/topics/connectivity/index.jd
index 385cf08..0795f79 100644
--- a/docs/html/guide/topics/connectivity/index.jd
+++ b/docs/html/guide/topics/connectivity/index.jd
@@ -7,21 +7,9 @@
 
 <div class="landing-docs">
 
-  <div class="col-6">
-    <h3>Blog Articles</h3>
-    
-    <a href="http://android-developers.blogspot.com/2011/09/androids-http-clients.html">
-      <h4>Android’s HTTP Clients</h4>
-      <p>Most network-connected Android apps will use HTTP to send and receive data. Android
-includes two HTTP clients: HttpURLConnection and Apache HTTP Client. Both support HTTPS, streaming
-uploads and downloads, configurable timeouts, IPv6 and connection pooling.</p>
-    </a>
-    
-  </div>
-
-  <div class="col-6">
+  <div>
     <h3>Training</h3>
-    
+
     <a href="http://developer.android.com/training/efficient-downloads/index.html">
       <h4>Transferring Data Without Draining the Battery</h4>
       <p>This class demonstrates the best practices for scheduling and executing downloads using
@@ -29,14 +17,16 @@
 the wireless radio can affect your choices on when, what, and how to transfer data in order to
 minimize impact on battery life.</p>
     </a>
-    
-    <a href="http://developer.android.com/training/cloudsync/index.html">
-      <h4>Syncing to the Cloud</h4>
-      <p>This class covers different strategies for cloud enabled applications. It covers syncing
-data with the cloud using your own back-end web application, and backing up data using the cloud so
-that users can restore their data when installing your application on a new device.</p>
+
+    <a href="http://developer.android.com/training/backup/index.html">
+      <h4>Backing up App Data to the Cloud</h4>
+      <p>
+      This class covers techniques for backing up data to the cloud so that users can restore
+      their data when recovering from a data loss (such as a factory reset) or installing your
+      application on a new device.
+      </p>
     </a>
-    
+
   </div>
 
-</div>
\ No newline at end of file
+</div>
diff --git a/docs/html/guide/topics/connectivity/sip.jd b/docs/html/guide/topics/connectivity/sip.jd
old mode 100644
new mode 100755
index 5154767..d754894
--- a/docs/html/guide/topics/connectivity/sip.jd
+++ b/docs/html/guide/topics/connectivity/sip.jd
@@ -478,14 +478,19 @@
 <ol>
 
 <li>On your device, connect to wireless (<strong>Settings > Wireless & networks
-> Wi-Fi > Wi-Fi settings</strong>)</li>
+> Wi-Fi > Wi-Fi settings</strong>).</li>
 <li>Set up your mobile device for testing, as described in <a
 href="{@docRoot}tools/device.html">Developing on a Device</a>.</li>
 <li>Run your application on your mobile device, as described in <a
 href="{@docRoot}tools/device.html">Developing on a Device</a>.</li>
 
-<li>If you are using Eclipse, you can view the application log output in Eclipse
-using LogCat (<strong>Window > Show View > Other > Android >
-LogCat</strong>).</li>
+<li>If you are using Android Studio, you can view the application log output by
+opening the Event Log console (<strong>View > Tool Windows > Event Log</strong>). 
+<li>Ensure your application is configured to launch Logcat automatically when it runs: 
+<ol TYPE=a>
+<li>Select <strong>Run > Edit Configurations</strong>.
+<li>Select the <strong>Miscellaneous</strong> tab in the <strong>Run/Debug Configurations</strong> window.
+<li>Under <strong>Logcat</strong>, select <strong>Show logcat automatically</strong> then
+select <strong>OK</strong>.</li></ol>
 </ol>
 
diff --git a/docs/html/guide/topics/connectivity/usb/host.jd b/docs/html/guide/topics/connectivity/usb/host.jd
index f957b60..d2194e6 100644
--- a/docs/html/guide/topics/connectivity/usb/host.jd
+++ b/docs/html/guide/topics/connectivity/usb/host.jd
@@ -276,7 +276,7 @@
 HashMap&lt;String, UsbDevice&gt; deviceList = manager.getDeviceList();
 Iterator&lt;UsbDevice&gt; deviceIterator = deviceList.values().iterator();
 while(deviceIterator.hasNext()){
-    UsbDevice device = deviceIterator.next()
+    UsbDevice device = deviceIterator.next();
     //your code
 }
 </pre>
diff --git a/docs/html/guide/topics/data/backup.jd b/docs/html/guide/topics/data/backup.jd
index 9554835..619c790 100644
--- a/docs/html/guide/topics/data/backup.jd
+++ b/docs/html/guide/topics/data/backup.jd
@@ -198,7 +198,7 @@
 href="http://code.google.com/android/backup/index.html">Android Backup Service</a> for most
 Android-powered devices running Android 2.2 or greater.</p>
 
-<p>In order for you application to perform backup using Android Backup Service, you must
+<p>In order for your application to perform backup using Android Backup Service, you must
 register your application with the service to receive a Backup Service Key, then
 declare the Backup Service Key in your Android manifest.</p>
 
diff --git a/docs/html/guide/topics/graphics/prop-animation.jd b/docs/html/guide/topics/graphics/prop-animation.jd
old mode 100644
new mode 100755
index e455496..aed533d
--- a/docs/html/guide/topics/graphics/prop-animation.jd
+++ b/docs/html/guide/topics/graphics/prop-animation.jd
@@ -920,10 +920,7 @@
 <p>To distinguish animation files that use the new property animation APIs from those that use the
 legacy <a href="{@docRoot}guide/topics/graphics/view-animation.html">view animation</a> framework,
 starting with Android 3.1, you should save the XML files for property animations in the {@code
-res/animator/} directory (instead of {@code res/anim/}). Using the {@code animator} directory name
-is optional, but necessary if you want to use the layout editor tools in the Eclipse ADT plugin (ADT
-11.0.0+), because ADT only searches the {@code res/animator/} directory for property animation
-resources.</p>
+res/animator/} directory.</p>
 
 <p>The following property animation classes have XML declaration support with the
   following XML tags:</p>
diff --git a/docs/html/guide/topics/location/strategies.jd b/docs/html/guide/topics/location/strategies.jd
old mode 100644
new mode 100755
index f1eb66e..32be463
--- a/docs/html/guide/topics/location/strategies.jd
+++ b/docs/html/guide/topics/location/strategies.jd
@@ -402,20 +402,23 @@
 user location works. This is most easily done using a real Android-powered device. If, however, you
 don't have a device, you can still test your location-based features by mocking location data in
 the Android emulator. There are three different ways to send your application mock location
-data: using Eclipse, DDMS, or the "geo" command in the emulator console.</p>
+data: using Android Studio, DDMS, or the "geo" command in the emulator console.</p>
 
 <p class="note"><strong>Note:</strong> Providing mock location data is injected as GPS location
 data, so you must request location updates from <code>GPS_PROVIDER</code> in order for mock location
 data to work.</p>
 
-<h3 id="MockEclipse">Using Eclipse</h3>
+<h3 id="MockAVD">Using Android Studio</h3>
 
-<p>Select <b>Window</b> &gt; <b>Show View</b> &gt; <b>Other</b> &gt; <b>Emulator Control</b>.</p>
+<p>Select <b>Tools</b> &gt; <b>Android</b> &gt; <b>AVD Manager</b>. In the Android Virtual
+Device Manager window, choose your AVD and launch it in the emulator by selecting the green 
+play arrow in the Actions column.</p>
 
-<p>In the Emulator Control panel, enter GPS coordinates under Location Controls as individual
-lat/long coordinates, with a GPX file for route playback, or a KML file for multiple place marks.
-(Be sure that you have a device selected in the Devices panel&mdash;available from <b>Window</b>
-&gt; <b>Show View</b> &gt; <b>Other</b> &gt; <b>Devices</b>.)</p>
+<p>Then, select <b>Tools</b> &gt; <b>Android</b> &gt; <b>Android Device Monitor</b>.
+Select the Emulator Control tab in the Android Device Monitor window, and enter GPS coordinates 
+under Location Controls as individual lat/long coordinates, with a GPX file for route playback, 
+or a KML file for multiple place marks.
+</p>
 
 
 <h3 id="MockDdms">Using DDMS</h3>
diff --git a/docs/html/guide/topics/manifest/activity-element.jd b/docs/html/guide/topics/manifest/activity-element.jd
index fd1729c..e0f5e3d 100644
--- a/docs/html/guide/topics/manifest/activity-element.jd
+++ b/docs/html/guide/topics/manifest/activity-element.jd
@@ -982,16 +982,17 @@
     <tr><th>Value</th><th>Description</th></tr>
     <tr><td>{@code "none"}</td><td>No extra UI options. This is the default.</td></tr>
     <tr><td>{@code "splitActionBarWhenNarrow"}</td><td>Add a bar at
-the bottom of the screen to display action items in the {@link android.app.ActionBar}, when
+the bottom of the screen to display action items in the <em>app bar</em> (also known as the
+<em>action bar</em>), when
 constrained for horizontal space (such as when in portrait mode on a handset). Instead of a small
-number of action items appearing in the action bar at the top of the screen, the action bar is
+number of action items appearing in the app bar at the top of the screen, the app bar is
 split into the top navigation section and the bottom bar for action items. This ensures a reasonable
 amount of space is made available not only for the action items, but also for navigation and title
 elements at the top. Menu items are not split across the two bars; they always appear
 together.</td></tr>
   </table>
-  <p>For more information about the action bar, see the <a
-href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer guide.</p>
+  <p>For more information about the app bar, see the <a
+href="{@docRoot}training/appbar/index.html">Adding the App Bar</a> training class.</p>
   <p>This attribute was added in API level 14.</p>
 </dd>
 
diff --git a/docs/html/guide/topics/manifest/application-element.jd b/docs/html/guide/topics/manifest/application-element.jd
index 887b4ea..56d61f3 100644
--- a/docs/html/guide/topics/manifest/application-element.jd
+++ b/docs/html/guide/topics/manifest/application-element.jd
@@ -434,16 +434,17 @@
     <tr><th>Value</th><th>Description</th></tr>
     <tr><td>{@code "none"}</td><td>No extra UI options. This is the default.</td></tr>
     <tr><td>{@code "splitActionBarWhenNarrow"}</td><td>Add a bar at
-the bottom of the screen to display action items in the {@link android.app.ActionBar}, when
+the bottom of the screen to display action items in the <em>app bar</em> (also known as the
+<em>action bar</em>), when
 constrained for horizontal space (such as when in portrait mode on a handset). Instead of a small
-number of action items appearing in the action bar at the top of the screen, the action bar is
+number of action items appearing in the app bar at the top of the screen, the app bar is
 split into the top navigation section and the bottom bar for action items. This ensures a reasonable
 amount of space is made available not only for the action items, but also for navigation and title
 elements at the top. Menu items are not split across the two bars; they always appear
 together.</td></tr>
   </table>
-  <p>For more information about the action bar, see the <a
-href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer guide.</p>
+  <p>For more information about the app bar, see the <a
+href="{@docRoot}training/appbar/index.html">Adding the App Bar</a> training class.</p>
   <p>This attribute was added in API level 14.</p>
 </dd>
 
diff --git a/docs/html/guide/topics/manifest/compatible-screens-element.jd b/docs/html/guide/topics/manifest/compatible-screens-element.jd
index 9c7f036..c1fac94 100644
--- a/docs/html/guide/topics/manifest/compatible-screens-element.jd
+++ b/docs/html/guide/topics/manifest/compatible-screens-element.jd
@@ -9,7 +9,8 @@
 <pre>
 &lt;<a href="#compatible-screens">compatible-screens</a>&gt;
     &lt;<a href="#screen">screen</a> android:<a href="#screenSize">screenSize</a>=["small" | "normal" | "large" | "xlarge"]
-            android:<a href="#screenDensity">screenDensity</a>=["ldpi" | "mdpi" | "hdpi" | "xhdpi" | "xxhdpi" | "xxxhdpi"] /&gt;
+            android:<a href="#screenDensity">screenDensity</a>=["ldpi" | "mdpi" | "hdpi" | "xhdpi"
+                                   | "280" | "360" | "420" | "480" | "560" ] /&gt;
     ...
 &lt;/compatible-screens&gt;
 </pre>
@@ -90,12 +91,15 @@
         <dd><b>Required.</b> Specifies the screen density for this screen configuration.
           <p>Accepted values:</p>
           <ul>
-            <li>{@code ldpi}</li>
-            <li>{@code mdpi}</li>
-            <li>{@code hdpi}</li>
-            <li>{@code xhdpi}</li>
-            <li>{@code xxhdpi}</li>
-            <li>{@code xxxhdpi}</li>
+            <li>{@code "ldpi"} (approximately 120 dpi)</li>
+            <li>{@code "mdpi"} (approximately 160 dpi)</li>
+            <li>{@code "hdpi"} (approximately 240 dpi)</li>
+            <li>{@code "xhdpi"} (approximately 320 dpi)</li>
+            <li>{@code "280"}</li>
+            <li>{@code "360"}</li>
+            <li>{@code "420"}</li>
+            <li>{@code "480"}</li>
+            <li>{@code "560"}</li>
           </ul>
           <p>For information about the different screen densities, see <a
 href="{@docRoot}guide/practices/screens_support.html#range">Supporting Multiple Screens</a>.</p>
diff --git a/docs/html/guide/topics/manifest/manifest-element.jd b/docs/html/guide/topics/manifest/manifest-element.jd
index 7717696..5968548 100644
--- a/docs/html/guide/topics/manifest/manifest-element.jd
+++ b/docs/html/guide/topics/manifest/manifest-element.jd
@@ -35,6 +35,7 @@
 <br/><code><a href="{@docRoot}guide/topics/manifest/uses-configuration-element.html">&lt;uses-configuration&gt;</a></code>  <!-- ##api level 3## -->
 <br/><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code>
 <br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
+<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-sdk-23-element.html">&lt;uses-permission-sdk-23&gt;</a></code>
 <br/><code><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></code></dd>
 
 <p>
diff --git a/docs/html/guide/topics/manifest/manifest-intro.jd b/docs/html/guide/topics/manifest/manifest-intro.jd
index c8d68f5..d7b176e 100644
--- a/docs/html/guide/topics/manifest/manifest-intro.jd
+++ b/docs/html/guide/topics/manifest/manifest-intro.jd
@@ -279,7 +279,7 @@
 should be localized and therefore set from a resource or theme.  Resource 
 values are expressed in the following format,</p>
 
-<p style="margin-left: 2em"><code>@[<i>package</i>:]<i>type</i>:<i>name</i></code></p>
+<p style="margin-left: 2em">{@code @[<i>package</i>:]<i>type</i>/<i>name</i>}</p>
 
 <p>
 where the <i>package</i> name can be omitted if the resource is in the same package 
@@ -295,7 +295,7 @@
 rather than '{@code @}':
 </p>
 
-<p style="margin-left: 2em"><code>?[<i>package</i>:]<i>type</i>:<i>name</i></code>
+<p style="margin-left: 2em">{@code ?[<i>package</i>:]<i>type</i>/<i>name</i>}
 </p></dd>
 
 <dt><b>String values</b></dt>
diff --git a/docs/html/guide/topics/manifest/uses-feature-element.jd b/docs/html/guide/topics/manifest/uses-feature-element.jd
old mode 100644
new mode 100755
index e746a67..c2def69
--- a/docs/html/guide/topics/manifest/uses-feature-element.jd
+++ b/docs/html/guide/topics/manifest/uses-feature-element.jd
@@ -486,10 +486,22 @@
 
 <ol>
 <li>First, build and export your application as an unsigned <code>.apk</code>.
-If you are developing in Eclipse with ADT, right-click the project and select
-<strong>Android Tools</strong> &gt; <strong>Export Unsigned Application
-Package</strong>. Select a destination filename and path and click
-<strong>OK</strong>. </li>
+If you are developing in Android Studio, build your application with Gradle:
+<ol TYPE=a>
+<li>Open the project and select <strong>Run > Edit Configurations</strong>.
+<li>Select the plus sign near the top-left corner of the <strong>Run/Debug
+Configurations</strong> window.
+<li>Select <strong>Gradle.</strong>
+<li>Enter <code>Unsigned APK</code> in <strong>Name</strong>.
+<li>Choose your module from the <strong>Gradle project</strong> section.
+<li>Enter <code>assemble</code> in <strong>Tasks</strong>.
+<li>Select <strong>OK</strong> to complete the new configuration.
+<li>Make sure the <strong>Unsigned APK</strong> run configuration is selected
+in the toolbar and select <strong>Run > Run 'Unsigned APK'</strong>.</li>
+</ol>
+You can find your unsigned <code>.apk</code> in the
+<code>&lt;<em>ProjectName</em>&gt;/app/build/outputs/apk/</code> directory.
+
 <li>Next, locate the <code>aapt</code> tool, if it is not already in your PATH.
 If you are using SDK Tools r8 or higher, you can find <code>aapt</code> in the
 <code>&lt;<em>SDK</em>&gt;/platform-tools/</code> directory.
@@ -541,12 +553,27 @@
        <th>Comments</th>
     </tr>
     <tr>
-       <td>Audio</td>
-       <td><code>android.hardware.audio.low_latency</td>
+       <td rowspan="4">Audio</td>
+       <td><code>android.hardware.audio.low_latency</code></td>
        <td>The application uses a low-latency audio pipeline on the device and
-is sensitive to delays or lag in sound input or output.</td>
-<td>
-</td>
+           is sensitive to delays or lag in sound input or output.</td>
+       <td></td>
+    </tr>
+    <tr>
+       <td><code>android.hardware.audio.pro</code></td>
+       <td>The application uses high-end audio functionality and performance.</td>
+       <td></td>
+    </tr>
+    <tr>
+       <td><code>android.hardware.microphone</code></td>
+       <td>The application records audio via a microphone.</td>
+       <td></td>
+    </tr>
+    </tr>
+       <td><code>android.hardware.output</code></td>
+       <td>The application produces at least one form of audio output, such as speakers, audio jack
+           or streaming over bluetooth.</td>
+       <td></td>
     </tr>
     <tr>
        <td rowspan="2">Bluetooth</td>
@@ -563,9 +590,9 @@
        <td rowspan="6">Camera</td>
        <td><code>android.hardware.camera</code></td>
        <td>The application uses the device's back-facing (main) camera.</td>
-       <td>Devices with only a front-facing camera do not list this feature, so the
-           <code>android.hardware.camera.any</code> feature should be
-           used instead if a camera facing any direction is acceptable for the
+       <td>Devices with only a front-facing camera do not list this feature, so
+           the <code>android.hardware.camera.any</code> feature should be used
+           instead if a camera facing any direction is acceptable for the
            application.</td>
     </tr>
 <tr>
@@ -932,6 +959,12 @@
   support Live Wallpapers.</td>
 </tr>
 <tr>
+  <td>MIDI</td>
+  <td><code>android.software.midi</code></td>
+  <td>The application connects to musical instruments or outputs sound
+  using the Musical Instrument Digital Interface (MIDI) protocol.</td>
+</tr>
+<tr>
   <td rowspan="2">SIP/VOIP</td>
   <td><code>android.software.sip</code></td>
   <td>The application uses SIP service on the device and should be installed only on devices that
diff --git a/docs/html/guide/topics/manifest/uses-permission-element.jd b/docs/html/guide/topics/manifest/uses-permission-element.jd
index bb93a70..32fe21e 100644
--- a/docs/html/guide/topics/manifest/uses-permission-element.jd
+++ b/docs/html/guide/topics/manifest/uses-permission-element.jd
@@ -43,14 +43,15 @@
 
 <dt>description:</dt>
 <dd itemprop="description">Requests a permission that the application must be granted in
-order for it to operate correctly.  Permissions are granted by the user when the 
-application is installed, not while it's running.
+order for it to operate correctly. Permissions are granted by the user when the 
+application is installed (on devices running Android 5.1 and lower) or while the app is running (on devices running Android 6.0 and higher).
 
 <p>
 For more information on permissions, see the 
 <a href="{@docRoot}guide/topics/manifest/manifest-intro.html#perms">Permissions</a></code> 
-section in the introduction and the separate 
-<a href="{@docRoot}guide/topics/security/security.html">Security and Permissions</a> document.  
+section in the introduction and the separate
+<a href="{@docRoot}guide/topics/security/permissions.html">System
+Permissions</a> API guide.
 A list of permissions defined by the base platform can be found at 
 {@link android.Manifest.permission android.Manifest.permission}.
 
@@ -60,8 +61,10 @@
 <dd>The name of the permission.  It can be a permission defined by the 
 application with the <code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code> 
 element, a permission defined by another application, or one of the 
-standard system permissions, such as "{@code android.permission.CAMERA}" 
-or "{@code android.permission.READ_CONTACTS}".  As these examples show, 
+standard system permissions (such as
+{@link android.Manifest.permission#CAMERA "android.permission.CAMERA"}
+or {@link android.Manifest.permission#READ_CONTACTS
+"android.permission.READ_CONTACTS"}).  As these examples show,
 a permission name typically includes the package name as a prefix.</dd>
 
 <dt><a name="maxSdk"></a>{@code android:maxSdkVersion}</dt>
@@ -94,6 +97,8 @@
 <dd>
 <ul>
   <li><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code></li>
+  <li><a href="uses-permission-sdk-23-element.html"
+      ><code>&lt;uses-permission-sdk-23&gt;</code></a></li>
   <li><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code></li>
 </ul>
 </dd>
diff --git a/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd b/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd
new file mode 100644
index 0000000..860d30f
--- /dev/null
+++ b/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd
@@ -0,0 +1,96 @@
+page.title=&lt;uses-permission-sdk-23&gt;
+page.tags="uses-permission-sdk-23","permissions","uses-permission-sdk23"
+parent.title=The AndroidManifest.xml File
+parent.link=manifest-intro.html
+@jd:body
+
+<dl class="xml">
+
+<dt>syntax:</dt>
+<dd><pre class="stx">&lt;uses-permission-sdk-23 android:<a href="#nm">name</a>="<i>string</i>"
+        android:<a href="#maxSdk">maxSdkVersion</a>="<i>integer</i>" /&gt;</pre></dd>
+
+<dt>Contained in:</dt>
+<dd><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code></dd>
+
+<dt>
+  Description:
+</dt>
+
+<dd itemprop="description">
+  Specifies that an app wants a particular permission, but <em>only</em> if
+  the app is running on a device with <a
+  href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API
+  level</a> 23 or higher. If the device
+  is running API level 22 or lower, the app does not have the specified
+  permission.
+
+<p>
+  This element is useful when you update an app to include a new
+  feature that requires an additional permission. If a user updates an app on a
+  device that is running API level 22 or lower, the system prompts the user
+  at install time to grant all new permissions that are declared in that
+  update. If a new feature is minor enough, you may prefer to disable
+  the feature altogether on those devices, so the user does not have to grant
+  additional permissions to update the app. By using the
+  <code>&lt;uses-permission-sdk-23&gt;</code> element instead of <a href=
+  "uses-permission-element.html"><code>&lt;uses-permission&gt;</code></a>,
+  you can request the permission <em>only</em> if the app is running on
+  platforms that support the <a
+  href="{@docRoot}training/permissions/requesting.html">runtime permissions</a>
+  model, in which the user
+  grants permissions to the app while it is running.
+</p>
+
+  <p>
+    For more information on permissions, see the <a href=
+    "{@docRoot}guide/topics/manifest/manifest-intro.html#perms">Permissions</a>
+    section in the introduction and the separate <a href=
+    "{@docRoot}guide/topics/security/permissions.html">System Permissions</a>
+    API guide. A list of permissions defined by the base platform is available
+    at {@link android.Manifest.permission android.Manifest.permission}.
+  </p>
+</dd>
+
+<dt>Attributes:</dt>
+
+  <dd>
+    <dl class="attr">
+
+      <dt><a name="nm"></a>{@code android:name}</dt>
+
+      <dd>
+        The name of the permission. This permission can be defined by the
+        app with the <code><a href=
+        "{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
+        element, it can be a permission defined by another app, or it can be one
+        of the standard system permissions, such as
+        {@link android.Manifest.permission#CAMERA "android.permission.CAMERA"}
+        or {@link android.Manifest.permission#READ_CONTACTS
+        "android.permission.READ_CONTACTS"}.
+      </dd>
+
+      <dt><a name="maxSdk"></a>{@code android:maxSdkVersion}</dt>
+      <dd>
+        The highest API level at which this permission should be granted to your
+        app. If the app is installed on a device with a later API level, the app
+        is not granted the permission and cannot use any related functionality.
+      </dd>
+    </dl>
+  </dd>
+
+<!-- ##api level indication## -->
+<dt>introduced in:</dt>
+<dd>API Level 23</dd>
+
+<dt>see also:</dt>
+<dd>
+<ul>
+  <li><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code></li>
+  <li><a href=
+    "uses-permission-element.html"><code>&lt;uses-permission&gt;</code></a></li>
+  <li><code><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">&lt;uses-feature&gt;</a></code></li>
+</ul>
+</dd>
+
+</dl>
diff --git a/docs/html/guide/topics/manifest/uses-sdk-element.jd b/docs/html/guide/topics/manifest/uses-sdk-element.jd
old mode 100644
new mode 100755
index 642b820..94577ed
--- a/docs/html/guide/topics/manifest/uses-sdk-element.jd
+++ b/docs/html/guide/topics/manifest/uses-sdk-element.jd
@@ -226,10 +226,10 @@
 <table>
   <tr><th>Platform Version</th><th>API Level</th><th>VERSION_CODE</th><th>Notes</th></tr>
 
-    <tr><td>Android 6.0</td>
+    <tr><td><a href="{@docRoot}about/versions/marshmallow/android-6.0.html">Android 6.0</a></td>
     <td><a href="{@docRoot}sdk/api_diff/23/changes.html" title="Diff Report">23</a></td>
     <td>{@link android.os.Build.VERSION_CODES#M}</td>
-    <td><a href="{@docRoot}preview/api-overview.html">API Changes</a></td></tr>
+    <td><a href="{@docRoot}about/versions/marshmallow/index.html">Platform Highlights</a></td></tr>
 
     <tr><td><a href="{@docRoot}about/versions/android-5.1.html">Android 5.1</a></td>
     <td><a href="{@docRoot}sdk/api_diff/22/changes.html" title="Diff Report">22</a></td>
@@ -543,10 +543,7 @@
 <p>To access the updater, use the <code>android</code> command-line tool,
 located in the &lt;sdk&gt;/tools directory. You can launch the SDK updater by
 executing <code>android sdk</code>. You can
-also simply double-click the android.bat (Windows) or android (OS X/Linux) file.
-In ADT, you can also access the updater by selecting
-<strong>Window</strong>&nbsp;>&nbsp;<strong>Android SDK
-Manager</strong>.</p>
+also simply double-click the android.bat (Windows) or android (OS X/Linux) file.</p>
 
 <p>To run your application against different platform versions in the emulator,
 create an AVD for each platform version that you want to test. For more
diff --git a/docs/html/guide/topics/providers/content-provider-basics.jd b/docs/html/guide/topics/providers/content-provider-basics.jd
index 199a671b..b7ae3d2 100644
--- a/docs/html/guide/topics/providers/content-provider-basics.jd
+++ b/docs/html/guide/topics/providers/content-provider-basics.jd
@@ -328,7 +328,7 @@
 </pre>
 <p>
     where the <code>user_dictionary</code> string is the provider's authority, and
-    <code>words</code> string is the table's path. The string
+    the <code>words</code> string is the table's path. The string
     <code>content://</code> (the <strong>scheme</strong>) is always present,
     and identifies this as a content URI.
 </p>
@@ -346,8 +346,8 @@
 </p>
 <p class="note">
     <strong>Note:</strong> The {@link android.net.Uri} and {@link android.net.Uri.Builder} classes
-    contain convenience methods for constructing well-formed Uri objects from strings. The
-    {@link android.content.ContentUris} contains convenience methods for appending id values to
+    contain convenience methods for constructing well-formed URI objects from strings. The
+    {@link android.content.ContentUris} class contains convenience methods for appending id values to
     a URI. The previous snippet uses {@link android.content.ContentUris#withAppendedId
     withAppendedId()} to append an id to the UserDictionary content URI.
 </p>
@@ -407,7 +407,7 @@
 <!-- Constructing the query -->
 <h3 id="Query">Constructing the query</h3>
 <p>
-    The next step in retrieving data a provider is to construct a query. This first snippet
+    The next step in retrieving data from a provider is to construct a query. This first snippet
     defines some variables for accessing the User Dictionary Provider:
 </p>
 <pre class="prettyprint">
@@ -1148,7 +1148,7 @@
 </p>
 <p>
     The <em>subtype</em> is provider-specific. The Android built-in providers usually have a simple
-    subtype. For example, the when the Contacts application creates a row for a telephone number,
+    subtype. For example, when the Contacts application creates a row for a telephone number,
     it sets the following MIME type in the row:
 </p>
 <pre>
diff --git a/docs/html/guide/topics/providers/content-provider-creating.jd b/docs/html/guide/topics/providers/content-provider-creating.jd
old mode 100644
new mode 100755
index 6ec1e1b..7cd3d69
--- a/docs/html/guide/topics/providers/content-provider-creating.jd
+++ b/docs/html/guide/topics/providers/content-provider-creating.jd
@@ -879,8 +879,8 @@
     A contract class also helps developers because it usually has mnemonic names for its constants,
     so developers are less likely to use incorrect values for column names or URIs. Since it's a
     class, it can contain Javadoc documentation. Integrated development environments such as
-    Eclipse can auto-complete constant names from the contract class and display Javadoc for the
-    constants.
+    Android Studio can auto-complete constant names from the contract class and display Javadoc for 
+    the constants.
 </p>
 <p>
     Developers can't access the contract class's class file from your application, but they can
diff --git a/docs/html/guide/topics/renderscript/compute.jd b/docs/html/guide/topics/renderscript/compute.jd
old mode 100644
new mode 100755
index eef8cda..564215e
--- a/docs/html/guide/topics/renderscript/compute.jd
+++ b/docs/html/guide/topics/renderscript/compute.jd
@@ -192,19 +192,18 @@
   <li>Make sure you have the required Android SDK version and Build Tools version installed.</li>
   <li> Update the settings for the Android build process to include the RenderScript settings:
 
-    <p><strong>For Android Studio or Gradle-based builds</strong></p>
     <ul>
       <li>Open the {@code build.gradle} file in the app folder of your application module. </li>
       <li>Add the following RenderScript settings to the file:
 
 <pre>
 android {
-    compileSdkVersion 19
-    buildToolsVersion "19.0.3"
+    compileSdkVersion 23
+    buildToolsVersion "23.0.3"
 
     defaultConfig {
         minSdkVersion 8
-        targetSdkVersion 16
+        targetSdkVersion 19
 <strong>
         renderscriptTargetApi 18
         renderscriptSupportModeEnabled true
@@ -218,9 +217,9 @@
 
     <ul>
       <li>{@code renderscriptTargetApi} - Specifies the bytecode version to be generated. We
-      recommend you set this value to the highest available API level and set
-      {@code renderscriptSupportModeEnabled}
-      to {@code true}. Valid values for this setting are any integer value
+      recommend you set this value to the lowest API level able to provide all the functionality
+      you are using and set {@code renderscriptSupportModeEnabled} to {@code true}.
+      Valid values for this setting are any integer value
       from 11 to the most recently released API level. If your minimum SDK version specified in your
       application manifest is set to a different value, that value is ignored and the target value
       in the build file is used to set the minimum SDK version.</li>
@@ -233,42 +232,8 @@
       installed build tools version is used. You should always set this value to ensure the
       consistency of builds across development machines with different configurations.</li>
     </ul>
-
     </li>
-
-    <p><strong>For Eclipse</strong></p>
-    <ul>
-      <li>Open the {@code project.properties} file in the root folder of your application project.</li>
-      <li>Add the following lines to the file:
-
-<pre>
-renderscript.target=18
-renderscript.support.mode=true
-sdk.buildtools=18.1.0
-</pre>
-
-      <p>The settings listed above control specific behavior in the Android build process:</p>
-
-      <ul>
-        <li>{@code renderscript.target} - Specifies the bytecode version to be generated. We
-        recommend you set this value to the highest available API level and set
-        {@code renderscript.support.mode} to {@code true}. Valid values for this setting are any
-        integer value from 11 to the most recently released API level. If your minimum SDK version
-        specified in your application manifest is set to a higher value, this value is ignored and
-        the target value is set to the minimum SDK version.</li>
-        <li>{@code renderscript.support.mode} - Specifies that the generated bytecode should fall
-        back to a compatible version if the device it is running on does not support the target version.
-        </li>
-        <li>{@code sdk.buildtools} - The version of the Android SDK build tools to use. This value
-        should be set to {@code 18.1.0} or higher. If this option is not specified, the highest
-        installed build tools version is used. You should always set this value to ensure the
-        consistency of builds across development machines with different configurations.</li>
-      </ul>
-     </li>
-
-    </ul>
-
-  </ul>
+   </ul>
 
   <li>In your application classes that use RenderScript, add an import for the Support Library
     classes:
@@ -279,7 +244,7 @@
 
   </li>
 
- </0l>
+</ol>
 
 <h2 id="using-rs-from-java">Using RenderScript from Java Code</h2>
 
diff --git a/docs/html/guide/topics/resources/color-list-resource.jd b/docs/html/guide/topics/resources/color-list-resource.jd
index 61f6665..ac73d64 100644
--- a/docs/html/guide/topics/resources/color-list-resource.jd
+++ b/docs/html/guide/topics/resources/color-list-resource.jd
@@ -17,7 +17,7 @@
 that you can apply as a color, but will actually change colors, depending on the state of
 the {@link android.view.View} object to which it is applied. For example, a {@link
 android.widget.Button} widget can exist in one of several different states (pressed, focused,
-or niether) and, using a color state list, you can provide a different color during each state.</p>
+or neither) and, using a color state list, you can provide a different color during each state.</p>
 
 <p>You can describe the state list in an XML file. Each color is defined in an {@code
 <item>} element inside a single {@code <selector>} element. Each {@code <item>}
diff --git a/docs/html/guide/topics/resources/drawable-resource.jd b/docs/html/guide/topics/resources/drawable-resource.jd
index dd2c4c2..b489b43 100644
--- a/docs/html/guide/topics/resources/drawable-resource.jd
+++ b/docs/html/guide/topics/resources/drawable-resource.jd
@@ -8,6 +8,7 @@
     <h2>See also</h2>
     <ol>
       <li><a href="{@docRoot}guide/topics/graphics/2d-graphics.html">2D Graphics</a></li>
+      <li><a href="{@docRoot}tools/help/vector-asset-studio.html">Vector Asset Studio</a></li>
     </ol>
   </div>
 </div>
@@ -607,7 +608,7 @@
 that uses a several different images to represent the same graphic, depending on the state of
 the object. For example, a {@link
 android.widget.Button} widget can exist in one of several different states (pressed, focused,
-or niether) and, using a state list drawable, you can provide a different background image for each
+or neither) and, using a state list drawable, you can provide a different background image for each
 state.</p>
 
 <p>You can describe the state list in an XML file. Each graphic is represented by an {@code
diff --git a/docs/html/guide/topics/resources/index.jd b/docs/html/guide/topics/resources/index.jd
index b85170b..60736bb 100644
--- a/docs/html/guide/topics/resources/index.jd
+++ b/docs/html/guide/topics/resources/index.jd
@@ -1,6 +1,6 @@
 page.title=App Resources
 page.landing=true
-page.landing.intro=It takes more than just code to build a great app. Resources are the additional files and static content that your code uses, such as bitmaps, layout definitions, user interface strings, animation instructions, and more.  
+page.landing.intro=It takes more than just code to build a great app. Resources are the additional files and static content that your code uses, such as bitmaps, layout definitions, user interface strings, animation instructions, and more.
 page.landing.image=images/develop/resources.png
 page.image=/images/develop/resources.png
 page.metaDescription=Developer guide about how to use resources in your Android apps.
@@ -16,8 +16,8 @@
 href="http://android-developers.blogspot.com/2011/07/new-tools-for-managing-screen-sizes.html">
       <h4>New Tools For Managing Screen Sizes</h4>
       <p>Android 3.2 includes new tools for supporting devices with a wide range of screen sizes.
-One important result is better support for a new size of screen; what is typically called a ?7-inch?
-tablet. This release also offers several new APIs to simplify developers? work in adjusting to
+One important result is better support for a new size of screen; what is typically called a "7-inch"
+tablet. This release also offers several new APIs to simplify developers' work in adjusting to
 different screen sizes.</p>
     </a>
 
@@ -27,7 +27,7 @@
 difficult to design an app with a single predictable look and feel. We set out to improve this
 situation for the developer community in Ice Cream Sandwich and beyond.</p>
     </a>
-    
+
     <a
 href="http://android-developers.blogspot.com/2011/07/new-mode-for-apps-on-large-screens.html">
       <h4>New Mode for Apps on Large Screens</h4>
@@ -47,7 +47,7 @@
 resources and other features so your app can provide an optimized user experience on a variety of
 Android-compatible devices, using a single application package (APK).</p>
     </a>
-    
+
     <a href="http://developer.android.com/training/multiscreen/index.html">
       <h4>Designing for Multiple Screens</h4>
       <p>This class shows you how to implement a user interface that's optimized for several screen
diff --git a/docs/html/guide/topics/resources/localization.jd b/docs/html/guide/topics/resources/localization.jd
old mode 100644
new mode 100755
index e60ca9f..afe4611
--- a/docs/html/guide/topics/resources/localization.jd
+++ b/docs/html/guide/topics/resources/localization.jd
@@ -10,25 +10,29 @@
 <h2>Quickview</h2>
 
 <ul>
-  <li>Use resource sets to create a localized app.</li>
-  <li>Android loads the correct resource set for the user's language and locale.</li>
-  <li>If localized resources are not available, Android loads your default resources.</li>
+<li>Use resource sets to create a localized app.</li>
+<li>Android loads the correct resource set for the user's language and locale.</li>
+<li>If localized resources are not available, Android loads your default resources.</li>
 </ul>
 
 <h2>In this document</h2>
 <ol>
-  <li><a href="#resource-switching">Overview: Resource-Switching in Android</a></li>
+<li><a href="#resource-switching">Overview: Resource-Switching in Android</a></li>
 <li><a href="#using-framework">Using Resources for Localization</a></li>
 <li><a href="#strategies">Localization Tips</a></li>
 <li><a href="#testing">Testing Localized Applications</a></li>
 </ol>
 
 <h2>See also</h2>
-  <ol>
-    <li><a href="{@docRoot}distribute/tools/localization-checklist.html">Localization Checklist</a></li>
-    <li><a href="{@docRoot}guide/topics/resources/providing-resources.html">Providing Resources</a></li>
-    <li><a href="{@docRoot}guide/topics/ui/declaring-layout.html">Layouts</a></li>
-    <li><a href="{@docRoot}reference/android/app/Activity.html#ActivityLifecycle">Activity Lifecycle</a></li>
+<ol>
+<li><a href="{@docRoot}distribute/tools/localization-checklist.html">
+Localization Checklist</a></li>
+<li><a href="{@docRoot}guide/topics/resources/providing-resources.html">
+Providing Resources</a></li>
+<li><a href="{@docRoot}guide/topics/ui/declaring-layout.html">
+Layouts</a></li>
+<li><a href="{@docRoot}reference/android/app/Activity.html#ActivityLifecycle">
+Activity Lifecycle</a></li>
 </ol>
 </div>
 </div>
@@ -39,8 +43,7 @@
 </p>
 
 <p>This document describes best practices for localizing Android
-applications. The principles apply whether you are developing your application  
-using ADT with Eclipse, Ant-based tools, or any other IDE. </p>
+applications.</p>
 
 <p>You should already have a working knowledge of Java and be  familiar with
 Android resource loading, the declaration of user interface elements in XML,
@@ -52,19 +55,21 @@
 functionality:</p>
 
 <ul>
-  <li>You can put most or all of the <em>contents</em> of your application's
+<li>You can put most or all of the <em>contents</em> of your application's
 user interface into resource files, as described in this document and in <a
-href="{@docRoot}guide/topics/resources/providing-resources.html">Providing Resources</a>.</li>
-  <li>The <em>behavior</em> of the user interface, on the other hand, is driven
-by your Java code. 
+href="{@docRoot}guide/topics/resources/providing-resources.html">
+Providing Resources</a>.</li>
+<li>The <em>behavior</em> of the user interface, on the other hand, is driven
+by your Java code.
     For example, if users input data that needs to be formatted or sorted
 differently depending on locale, then you would use Java to handle the data
 programmatically. This document does not cover how to  localize your Java code.
 </li>
 </ul>
 
-<p>For a short guide to localizing strings in your app, see the training lesson, <a
-href="{@docRoot}training/basics/supporting-devices/languages.html">Supporting Different Languages</a>. </p>
+<p>For a short guide to localizing strings in your app, see the training lesson,
+<a href="{@docRoot}training/basics/supporting-devices/languages.html">
+Supporting Different Languages</a>. </p>
 
 
 <h2 id="resource-switching">Overview: Resource-Switching in Android</h2>
@@ -72,24 +77,25 @@
 <p>Resources are text strings, layouts, sounds, graphics, and any other static
 data that your  Android application  needs. An application can include multiple
 sets of resources, each customized for a different device configuration. When a
-user runs the application,  Android    automatically selects and loads the 
+user runs the application,  Android    automatically selects and loads the
 resources that best match the device.</p>
 
 <p>(This document focuses on localization and locale. For a complete description
 of resource-switching and all the types of configurations that you can
-specify &#8212; screen orientation, touchscreen type, and so on &#8212; see <a
-href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">Providing
-Alternative Resources</a>.)</p>
+specify &#8212; screen orientation, touchscreen type, and so on &#8212;
+see <a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">
+Providing Alternative Resources</a>.)</p>
 
 <table border="0" cellspacing="0" cellpadding="0">
-  <tr border="0">
-    <td width="180" style="border: 0pt none ;"><p class="special-note">
-    <strong>When you write your application:</strong>
-    <br><br>
-    You create a set of default resources, plus alternatives to be used in
-    different locales.</p></td>
-    <td style="border: 0pt none; padding:0">
-    <p style="border:0; padding:0"><img src="../../../images/resources/right-arrow.png" alt="right-arrow" 
+<tr border="0">
+<td width="180" style="border: 0pt none ;"><p class="special-note">
+<strong>When you write your application:</strong>
+<br><br>
+You create a set of default resources, plus alternatives to be used in
+different locales.</p></td>
+<td style="border: 0pt none; padding:0">
+<p style="border:0; padding:0">
+<img src="../../../images/resources/right-arrow.png" alt="right-arrow"
     width="51" height="17"></p></td>
     <td width="180" style="border: 0pt none ;"><p class="special-note">
     <strong>When a user runs your application:</strong>
@@ -109,36 +115,35 @@
 
 <p>Whenever the application runs in a locale for which you have not provided
 locale-specific text,  Android will load the default strings from
-<code>res/values/strings.xml</code>. If this default  file is absent, or if it 
-is missing a string that your application needs, then your application will not run 
-and will show an error. 
-The example below illustrates what can happen when the default text file is incomplete. </p>
+<code>res/values/strings.xml</code>. If this default  file is absent, or if it
+is missing a string that your application needs, then your application will not run
+and will show an error.
+The example below illustrates what can happen when the default text file is
+incomplete. </p>
 
 <p><em>Example:</em>
-<p>An application's Java code refers to just two strings, <code>text_a</code> and 
-	<code>text_b</code>. This application includes a localized resource file 
-	(<code>res/values-en/strings.xml</code>) that defines <code>text_a</code> and 
-	<code>text_b</code> in English. This application also includes a default 
+<p>An application's Java code refers to just two strings, <code>text_a</code> and
+	<code>text_b</code>. This application includes a localized resource file
+	(<code>res/values-en/strings.xml</code>) that defines <code>text_a</code> and
+	<code>text_b</code> in English. This application also includes a default
 	resource file (<code>res/values/strings.xml</code>) that includes a
 definition for <code>text_a</code>, but not for <code>text_b</code>:
 <ul>
-  <li>This application might compile without a problem. An IDE such as Eclipse 
-  	will not highlight any errors if a resource is missing.</li>
-  <li>When this application is launched on a device with locale set to English, 
-  	the application  might run without a problem, because 
-  	<code>res/values-en/strings.xml</code> contains both of the needed text 
+  <li>When this application is launched on a device with locale set to English,
+  	the application  might run without a problem, because
+  	<code>res/values-en/strings.xml</code> contains both of the needed text
   	strings.</li>
-  <li>However, <strong>the user  will see an error message and a Force Close 
-  	button</strong> when this application is launched on a device set to a 
+  <li>However, <strong>the user  will see an error message and a Force Close
+  	button</strong> when this application is launched on a device set to a
   	language other than English. The application will not load.</li>
 </ul>
 
 
-<p>To prevent this situation, make sure that a <code>res/values/strings.xml</code> 
-	file exists and that it defines every needed string. The situation applies to 
-	all types of resources, not just strings: You 
-	need to create a  set of default resource files containing all 
-	the resources that your application calls upon &#8212; layouts, drawables, 
+<p>To prevent this situation, make sure that a <code>res/values/strings.xml</code>
+	file exists and that it defines every needed string. The situation applies to
+	all types of resources, not just strings: You
+	need to create a  set of default resource files containing all
+	the resources that your application calls upon &#8212; layouts, drawables,
 	animations, etc. For information about testing, see <a href="#test-for-default">
 	Testing for Default Resources</a>.</p>
 
@@ -154,26 +159,26 @@
 default language, which is the language that you expect most of your application's users to
 speak.  </p>
 
-<p>The default resource set must also include any default drawables and layouts, 
-	and can include other types of resources such as animations. 
+<p>The default resource set must also include any default drawables and layouts,
+	and can include other types of resources such as animations.
 <br>
   <code>&nbsp;&nbsp;&nbsp;&nbsp;res/drawable/</code>(required directory holding at least
   one graphic file, for the application's icon on Google Play)<br>
   <code>&nbsp;&nbsp;&nbsp;&nbsp;res/layout/</code> (required directory holding an XML
   file that defines the default layout)<br>
-  <code>&nbsp;&nbsp;&nbsp;&nbsp;res/anim/</code> (required if you have any 
+  <code>&nbsp;&nbsp;&nbsp;&nbsp;res/anim/</code> (required if you have any
   <code>res/anim-<em>&lt;qualifiers&gt;</em></code> folders)<br>
-  <code>&nbsp;&nbsp;&nbsp;&nbsp;res/xml/</code> (required if you have any 
+  <code>&nbsp;&nbsp;&nbsp;&nbsp;res/xml/</code> (required if you have any
   <code>res/xml-<em>&lt;qualifiers&gt;</em></code> folders)<br>
-  <code>&nbsp;&nbsp;&nbsp;&nbsp;res/raw/</code> (required if you have any 
+  <code>&nbsp;&nbsp;&nbsp;&nbsp;res/raw/</code> (required if you have any
   <code>res/raw-<em>&lt;qualifiers&gt;</em></code> folders)
 </p>
 
-<p class="note"><strong>Tip:</strong> In your code, examine each reference to 
+<p class="note"><strong>Tip:</strong> In your code, examine each reference to
 	an Android resource. Make sure that a default resource is defined for each
 	one. Also make sure that the default string file is complete: A <em>
-	localized</em> string file can contain a subset of the strings, but the 
-	<em>default</em> string file must contain them all. 
+	localized</em> string file can contain a subset of the strings, but the
+	<em>default</em> string file must contain them all.
 </p>
 
 <h3 id="creating-alternatives">How to Create Alternative Resources</h3>
@@ -184,9 +189,9 @@
 
 <p>An application can specify many <code>res/<em>&lt;qualifiers&gt;</em>/</code>
 directories, each with different qualifiers. To create an alternative resource for
-a different locale, you use a qualifier that specifies a language or a 
-language-region combination. (The name of a resource directory must conform 
-to the naming scheme described in 
+a different locale, you use a qualifier that specifies a language or a
+language-region combination. (The name of a resource directory must conform
+to the naming scheme described in
 <a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">Providing
 Alternative Resources</a>,
 or else it will not compile.)</p>
@@ -243,7 +248,7 @@
     Contains
   default graphics.</li>
   <li><code>res/drawable-small-land-stylus/</code><br>
-  Contains  graphics optimized for use with a device that expects input from a 
+  Contains  graphics optimized for use with a device that expects input from a
   stylus and has a QVGA low-density screen in landscape orientation.</li>
   <li><code>res/drawable-ja/</code> <br>
   Contains  graphics optimized for use with Japanese.</li>
@@ -251,7 +256,7 @@
 
 <p>If the application runs on a device that is configured to use Japanese,
 Android will load graphics from  <code>res/drawable-ja/</code>, even if the
-device happens to be one that expects input from a stylus and has a QVGA 
+device happens to be one that expects input from a stylus and has a QVGA
 low-density screen in landscape orientation.</p>
 
 <p class="note"><strong>Exception:</strong> The only qualifiers that take
@@ -316,8 +321,8 @@
 
 <p>You cannot assume anything about the device on which a user will
 run your application. The device might have hardware that you were not
-anticipating, or it might be set to a locale that you did not plan for or that 
-you cannot test. Design your application so that it will function normally or fail gracefully no 
+anticipating, or it might be set to a locale that you did not plan for or that
+you cannot test. Design your application so that it will function normally or fail gracefully no
 matter what device it runs on.</p>
 
 <p class="note"><strong>Important:</strong> Make sure that your application
@@ -326,14 +331,12 @@
 additional modifiers in the folder names) that contain all the images and text
 that your application will need. </p>
 
-<p>If an application is missing even one default resource, it will not run on a 
-	device that is set to an unsupported locale. For example, the 
-	<code>res/values/strings.xml</code> default file might lack one string that 
-	the application needs: When the application runs in an unsupported locale and 
-	attempts to load <code>res/values/strings.xml</code>, the user will see an 
-	error message and a Force Close button. An IDE such as Eclipse will not 
-	highlight this kind of error, and you will not see the problem when you 
-	test the application on a device or emulator that is set to a supported locale.</p>
+<p>If an application is missing even one default resource, it will not run on a
+device that is set to an unsupported locale. For example, the
+<code>res/values/strings.xml</code> default file might lack one string that
+the application needs: When the application runs in an unsupported locale and
+attempts to load <code>res/values/strings.xml</code>, the user will see an
+error message and a Force Close button.</p>
 
 <p>For more information, see <a href="#test-for-default">Testing for Default Resources</a>.</p>
 
@@ -396,10 +399,10 @@
 <h2 id="testing">Testing Localized Applications</h2>
 
 <h3 id="device">Testing on a Device</h3>
-<p>Keep in mind that the device you are testing may be significantly different from 
-	the devices available to consumers in other geographies. The locales available 
-	on your device may differ from those available on other devices. Also, the 
-	resolution and density of the device screen may differ, which could affect 
+<p>Keep in mind that the device you are testing may be significantly different from
+	the devices available to consumers in other geographies. The locales available
+	on your device may differ from those available on other devices. Also, the
+	resolution and density of the device screen may differ, which could affect
 	the display of strings and drawables in your UI.</p>
 
 <p>To change the locale or language on a device, use the Settings application.</p>
@@ -419,7 +422,7 @@
 
 <ul>
   <li>Use the Custom Locale application, which is accessible from the
-Application tab. (After you create a custom locale, switch to it by 
+Application tab. (After you create a custom locale, switch to it by
 pressing and holding the locale name.)</li>
   <li>Change to a custom locale from the adb shell, as described below.</li>
 </ul>
@@ -443,7 +446,7 @@
   or if you have a device attached, specify that you want the emulator by adding
 the <code>-e</code> option:<br>
   <code>adb -e shell</code></li>
-  <li>At  the  adb shell prompt (<code>#</code>), run this command: <br>
+<li>At  the  adb shell prompt (<code>#</code>), run this command: <br>
     <code>setprop persist.sys.locale [<em>BCP-47 language tag</em>];stop;sleep 5;start <br>
     </code>Replace bracketed sections with the  appropriate codes from Step
 1.</li>
@@ -454,31 +457,28 @@
 <p><code>setprop persist.sys.locale fr-CA;stop;sleep 5;start </code></p>
 
 <p>This will cause the emulator  to restart. (It will look like a full reboot,
-but it is not.) Once the Home screen appears again, re-launch your application (for
-example, click the Run icon in Eclipse), and the application will launch with
-the new locale. </p>
+but it is not.) Once the Home screen appears again, re-launch your application,
+ and the application launches with the new locale. </p>
 
 <h3 id="test-for-default">Testing for Default Resources</h3>
-<p>Here's how to test whether an application includes every string resource that it needs:  </p>
-<ol><li>Set the emulator or device to a language that your application does not 
-	support. For example, if the application has French strings in 
-	<code>res/values-fr/</code> but does not have any Spanish strings in 
-	<code>res/values-es/</code>, then set the emulator's locale to Spanish. 
-	(You can use the Custom Locale application to set the emulator to an 
-	unsupported locale.)</li>
-	<li>Run the application.</li>  
-<li>If the application shows an error message and a Force Close button, it might 
-	be looking for a string that is not available. Make sure that your 
-	<code>res/values/strings.xml</code> file includes a definition for 
-	every string that the application uses.</li>
-</ol> 
-</p> 
+<p>Here's how to test whether an application includes every string
+resource that it needs:  </p>
+<ol><li>Set the emulator or device to a language that your application does not
+support. For example, if the application has French strings in
+<code>res/values-fr/</code> but does not have any Spanish strings in
+<code>res/values-es/</code>, then set the emulator's locale to Spanish.
+(You can use the Custom Locale application to set the emulator to an
+unsupported locale.)</li>
+<li>Run the application.</li>
+<li>If the application shows an error message and a Force Close button, it might
+be looking for a string that is not available. Make sure that your
+<code>res/values/strings.xml</code> file includes a definition for
+every string that the application uses.</li>
+</ol>
+</p>
 
-<p>If the test is successful, repeat it for other types of 
-	configurations. For example, if the application has a layout file called 
-	<code>res/layout-land/main.xml</code> but does not contain a file called 
-	<code>res/layout-port/main.xml</code>, then set the emulator or device to 
-	portrait orientation and see if the application will run. 
-
-
-
+<p>If the test is successful, repeat it for other types of
+configurations. For example, if the application has a layout file called
+<code>res/layout-land/main.xml</code> but does not contain a file called
+<code>res/layout-port/main.xml</code>, then set the emulator or device to
+portrait orientation and see if the application will run.
diff --git a/docs/html/guide/topics/resources/menu-resource.jd b/docs/html/guide/topics/resources/menu-resource.jd
index b2d6eb3..53ff276 100644
--- a/docs/html/guide/topics/resources/menu-resource.jd
+++ b/docs/html/guide/topics/resources/menu-resource.jd
@@ -117,43 +117,47 @@
           <p>Introduced in API Level 11.</p></dd>
 
         <dt><code>android:showAsAction</code></dt>
-          <dd><em>Keyword</em>. When and how this item should appear as an action item in the Action
-Bar. A menu item can appear as an action item only when the activity includes an {@link
-android.app.ActionBar} (introduced in API Level 11). Valid values:
+          <dd><em>Keyword</em>. When and how this item should appear as an action item in the app
+            bar. A menu item can appear as an action item only when the activity includes an
+            app bar. Valid values:
           <table>
             <tr><th>Value</th><th>Description</th></tr>
-            <tr><td><code>ifRoom</code></td><td>Only place this item in the Action Bar if
-there is room for it.</td></tr>
+            <tr><td><code>ifRoom</code></td><td>Only place this item in the
+            app bar if there is room for it. If there is not room for all
+            the items marked <code>"ifRoom"</code>, the items with the lowest
+            <code>orderInCategory</code> values are displayed as actions, and
+            the remaining items are displayed in the overflow menu.</td></tr>
             <tr><td><code>withText</code></td><td>Also include the title text (defined
 by {@code android:title}) with the action item. You can include this value along with one
 of the others as a flag set, by separating them with a pipe {@code |}.</td></tr>
-            <tr><td><code>never</code></td><td>Never place this item in the Action Bar.</td></tr>
-            <tr><td><code>always</code></td><td>Always place this item in the Action Bar.
+            <tr><td><code>never</code></td><td>Never place this item in the app bar. Instead, list the item in the app bar's overflow
+            menu.</td></tr>
+            <tr><td><code>always</code></td><td>Always place this item in the app bar.
 Avoid using this unless it's critical that the item always appear in the action
 bar. Setting multiple items to always appear as action items can result in them overlapping
-with other UI in the action bar.</td></tr>
+with other UI in the app bar.</td></tr>
             <tr><td><code>collapseActionView</code></td><td>The action view associated
 with this action item (as declared by <code>android:actionLayout</code> or
 <code>android:actionViewClass</code>) is
 collapsible.<br/>Introduced in API Level 14.</td></tr>
           </table>
-          <p>See the <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer 
-guide for more information.</p>
+          <p>See the <a href="{@docRoot}training/appbar/index.html">Adding the App Bar</a>
+          training class for more information.</p>
           <p>Introduced in API Level 11.</p>
         </dd>
 
         <dt><code>android:actionLayout</code></dt>
           <dd><em>Layout resource</em>. A layout to use as the action view.
-          <p>See the <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer 
-guide for more information.</p>
+          <p>See <a href="{@docRoot}training/appbar/action-views.html">Action
+            Views and Action Providers</a> for more information.</p>
           <p>Introduced in API Level 11.</p></dd>
 
         <dt><code>android:actionViewClass</code></dt>
           <dd><em>Class name</em>. A fully-qualified class name for the {@link android.view.View}
 to use as the action view. For example,
 {@code "android.widget.SearchView"} to use {@link android.widget.SearchView} as an action view.
-          <p>See the <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer 
-guide for more information.</p>
+          <p>See <a href="{@docRoot}training/appbar/action-views.html">Action
+            Views and Action Providers</a> for more information.</p>
           <p class="warning"><strong>Warning:</strong> If you obfuscate your code using <a
 href="{@docRoot}tools/help/proguard.html">ProGuard</a> (or a similar tool),
 be sure to exclude the class you specify in this attribute from renaming, because it can break the
@@ -164,8 +168,8 @@
           <dd><em>Class name</em>. A fully-qualified class name for the {@link
 android.view.ActionProvider} to use in place of the action item. For example,
 {@code "android.widget.ShareActionProvider"} to use {@link android.widget.ShareActionProvider}.
-          <p>See the <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer
-guide for more information.</p>
+          <p>See <a href="{@docRoot}training/appbar/action-views.html">Action
+            Views and Action Providers</a> for more information.</p>
           <p class="warning"><strong>Warning:</strong> If you obfuscate your code using <a
 href="{@docRoot}tools/help/proguard.html">ProGuard</a> (or a similar tool),
 be sure to exclude the class you specify in this attribute from renaming, because it can break the
@@ -301,4 +305,4 @@
 </dd> <!-- end example -->
 
 
-</dl>
\ No newline at end of file
+</dl>
diff --git a/docs/html/guide/topics/resources/string-resource.jd b/docs/html/guide/topics/resources/string-resource.jd
index 9adf6de..e6193db 100644
--- a/docs/html/guide/topics/resources/string-resource.jd
+++ b/docs/html/guide/topics/resources/string-resource.jd
@@ -1,6 +1,7 @@
 page.title=String Resources
 parent.title=Resource Types
 parent.link=available-resources.html
+page.metaDescription=Explains how to use string resources in your UI.
 @jd:body
 
 <p>A string resource provides text strings for your application
diff --git a/docs/html/guide/topics/search/search-dialog.jd b/docs/html/guide/topics/search/search-dialog.jd
index 1af3e5d..389fc1d 100644
--- a/docs/html/guide/topics/search/search-dialog.jd
+++ b/docs/html/guide/topics/search/search-dialog.jd
@@ -134,8 +134,7 @@
       <li>Or, a {@link android.widget.SearchView} widget
         <p>Using the search widget allows you to put the search box anywhere in your activity.
 Instead of putting it in your activity layout, you should usually use
-{@link android.widget.SearchView} as an 
-<a href="{@docRoot}guide/topics/ui/actionbar.html#ActionView">action view in the Action Bar</a>.</p>
+{@link android.widget.SearchView} as an action view in the app bar.</p>
       </li>
     </ul>
   </li>
@@ -493,10 +492,10 @@
 available from the <a href="{@docRoot}design/downloads/index.html#action-bar-icon-pack">Action Bar
 Icon Pack</a>.</p>
 
-<p class="note"><strong>Note:</strong> If your app uses the <a
-href="{@docRoot}guide/topics/ui/actionbar.html">action bar</a>, then you should not use
+<p class="note"><strong>Note:</strong> If your app uses an <a
+href="{@docRoot}training/appbar/index.html">app bar</a>, then you should not use
 the search dialog for your search interface. Instead, use the <a href="#UsingSearchWidget">search
-widget</a> as a collapsible view in the action bar.</p>
+widget</a> as a collapsible view in the app bar.</p>
 
 <p>You can also enable "type-to-search" functionality, which activates the search dialog when the
 user starts typing on the keyboard&mdash;the keystrokes are inserted into the search dialog. You can
@@ -680,10 +679,9 @@
 
 <p>The {@link android.widget.SearchView} widget is available in Android 3.0 and higher. If
 you're developing your application for Android 3.0 and have decided to use the search widget, we
-recommend that you insert the search widget as an <a
-href="{@docRoot}guide/topics/ui/actionbar.html#ActionView">action view in the Action Bar</a>,
+recommend that you insert the search widget as an action view in the app bar,
 instead of using the search dialog (and instead of placing the search widget in your activity
-layout). For example, figure 2 shows the search widget in the Action Bar.</p>
+layout). For example, figure 2 shows the search widget in the app bar.</p>
 
 <p>The search widget provides the same functionality as the search dialog. It starts the appropriate
 activity when the user executes a search, and it can provide search suggestions and perform voice
@@ -707,8 +705,8 @@
 android.app.SearchManager#getSearchableInfo getSearchableInfo()} on {@link
 android.app.SearchManager}.</p>
 
-<p>For example, if you're using a {@link android.widget.SearchView} as an action view in the <a
-href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a>, you should enable the widget
+<p>For example, if you're using a {@link android.widget.SearchView} as an action view in the
+<a href="{@docRoot}training/appbar/index.html">app bar</a>, you should enable the widget
 during the {@link android.app.Activity#onCreateOptionsMenu onCreateOptionsMenu()} callback:</p>
 
 <pre>
@@ -738,9 +736,8 @@
 documentation for {@link android.widget.SearchView} and its nested interfaces for the
 appropriate event listeners.</p>
 
-<p>For more information about action views in the Action Bar, read the <a
-href="{@docRoot}guide/topics/ui/actionbar.html#ActionView">Action Bar</a> developer guide (which
-includes sample code for adding a search widget as an action view).</p>
+<p>For more information about action views in the Action Bar, see
+<a href="{@docRoot}training/appbar/action-views.html">Action Views and Action Providers</a>.</p>
 
 
 <h3 id="WidgetFeatures">Other search widget features</h3>
diff --git a/docs/html/guide/topics/security/normal-permissions.jd b/docs/html/guide/topics/security/normal-permissions.jd
new file mode 100644
index 0000000..8471dc7
--- /dev/null
+++ b/docs/html/guide/topics/security/normal-permissions.jd
@@ -0,0 +1,174 @@
+page.title=Normal Permissions
+page.tags=permissions,normal
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<!--
+<h2>In this document</h2>
+<ol>
+  <li></li>
+</ol>
+-->
+
+  <h2>Key classes</h2>
+  <ol>
+    <li>{@link android.Manifest.permission}</li>
+  </ol>
+
+  <h2>See Also</h2>
+  <ol>
+    <li><a href="{@docRoot}training/permissions/index.html">Working with System
+        Permissions</a></li>
+  </ol>
+
+<!--
+<h2>See also</h2>
+<ol>
+  <li></li>
+</ol>
+-->
+
+</div>
+</div>
+
+<p>
+  Many permissions are designated as {@link
+  android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL},
+  which indicates that
+  there's no great risk to the user's privacy or security in letting apps have
+  those permissions. For example, users would reasonably want to know whether
+  an app can read their contact information, so users have to grant this
+  permission explicitly. By contrast, there's no great risk in allowing an app
+  to vibrate the device, so that permission is designated as <em>normal.</em>
+</p>
+
+<p>
+  If an app declares in its
+  manifest that it needs a normal permission, the system automatically grants
+  the app
+  that permission at install time. The system does not prompt the user
+  to grant normal
+  permissions, and users cannot revoke these permissions.
+</p>
+
+<p>As of API level 23, the following permissions are classified as {@link
+    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}:</p>
+
+<ul>
+  <li>{@link android.Manifest.permission#ACCESS_LOCATION_EXTRA_COMMANDS
+  ACCESS_LOCATION_EXTRA_COMMANDS}
+  </li>
+
+  <li>{@link android.Manifest.permission#ACCESS_NETWORK_STATE
+  ACCESS_NETWORK_STATE}
+  </li>
+
+  <li>{@link android.Manifest.permission#ACCESS_NOTIFICATION_POLICY
+  ACCESS_NOTIFICATION_POLICY}
+  </li>
+
+  <li>{@link android.Manifest.permission#ACCESS_WIFI_STATE ACCESS_WIFI_STATE}
+  </li>
+
+  <li>{@link android.Manifest.permission#BLUETOOTH BLUETOOTH}
+  </li>
+
+  <li>{@link android.Manifest.permission#BLUETOOTH_ADMIN BLUETOOTH_ADMIN}
+  </li>
+
+  <li>{@link android.Manifest.permission#BROADCAST_STICKY BROADCAST_STICKY}
+  </li>
+
+  <li>{@link android.Manifest.permission#CHANGE_NETWORK_STATE
+  CHANGE_NETWORK_STATE}
+  </li>
+
+  <li>{@link android.Manifest.permission#CHANGE_WIFI_MULTICAST_STATE
+  CHANGE_WIFI_MULTICAST_STATE}
+  </li>
+
+  <li>{@link android.Manifest.permission#CHANGE_WIFI_STATE CHANGE_WIFI_STATE}
+  </li>
+
+  <li>{@link android.Manifest.permission#DISABLE_KEYGUARD DISABLE_KEYGUARD}
+  </li>
+
+  <li>{@link android.Manifest.permission#EXPAND_STATUS_BAR EXPAND_STATUS_BAR}
+  </li>
+
+  <li>{@link android.Manifest.permission#GET_PACKAGE_SIZE GET_PACKAGE_SIZE}
+  </li>
+
+  <li>{@link android.Manifest.permission#INSTALL_SHORTCUT INSTALL_SHORTCUT}
+  </li>
+
+  <li>{@link android.Manifest.permission#INTERNET INTERNET}
+  </li>
+
+  <li>{@link android.Manifest.permission#KILL_BACKGROUND_PROCESSES
+  KILL_BACKGROUND_PROCESSES}
+  </li>
+
+  <li>{@link android.Manifest.permission#MODIFY_AUDIO_SETTINGS
+  MODIFY_AUDIO_SETTINGS}
+  </li>
+
+  <li>{@link android.Manifest.permission#NFC NFC}
+  </li>
+
+  <li>{@link android.Manifest.permission#READ_SYNC_SETTINGS READ_SYNC_SETTINGS}
+  </li>
+
+  <li>{@link android.Manifest.permission#READ_SYNC_STATS READ_SYNC_STATS}
+  </li>
+
+  <li>{@link android.Manifest.permission#RECEIVE_BOOT_COMPLETED
+  RECEIVE_BOOT_COMPLETED}
+  </li>
+
+  <li>{@link android.Manifest.permission#REORDER_TASKS REORDER_TASKS}
+  </li>
+
+  <li>{@link android.Manifest.permission#REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
+  REQUEST_IGNORE_BATTERY_OPTIMIZATIONS}
+  </li>
+
+  <li>{@link android.Manifest.permission#REQUEST_INSTALL_PACKAGES
+  REQUEST_INSTALL_PACKAGES}
+  </li>
+
+  <li>{@link android.Manifest.permission#SET_ALARM SET_ALARM}
+  </li>
+
+  <li>{@link android.Manifest.permission#SET_TIME_ZONE SET_TIME_ZONE}
+  </li>
+
+  <li>{@link android.Manifest.permission#SET_WALLPAPER SET_WALLPAPER}
+  </li>
+
+  <li>{@link android.Manifest.permission#SET_WALLPAPER_HINTS
+  SET_WALLPAPER_HINTS}
+  </li>
+
+  <li>{@link android.Manifest.permission#TRANSMIT_IR TRANSMIT_IR}
+  </li>
+
+  <li>{@link android.Manifest.permission#UNINSTALL_SHORTCUT UNINSTALL_SHORTCUT}
+  </li>
+
+  <li>{@link android.Manifest.permission#USE_FINGERPRINT USE_FINGERPRINT}
+  </li>
+
+  <li>{@link android.Manifest.permission#VIBRATE VIBRATE}
+  </li>
+
+  <li>{@link android.Manifest.permission#WAKE_LOCK WAKE_LOCK}
+  </li>
+
+  <li>{@link android.Manifest.permission#WRITE_SYNC_SETTINGS
+  WRITE_SYNC_SETTINGS}
+  </li>
+</ul>
diff --git a/docs/html/guide/topics/security/permissions.jd b/docs/html/guide/topics/security/permissions.jd
index 6158e40..f7f70b3 100644
--- a/docs/html/guide/topics/security/permissions.jd
+++ b/docs/html/guide/topics/security/permissions.jd
@@ -1,4 +1,5 @@
 page.title=System Permissions
+page.tags=permissions
 @jd:body
 
 <div id="qv-wrapper">
@@ -10,7 +11,12 @@
 <li><a href="#signing">Application Signing</a></li>
 <li><a href="#userid">User IDs and File Access</a></li>
 <li><a href="#permissions">Using Permissions</a></li>
-<li><a href="#declaring">Declaring and Enforcing Permissions</a>
+<li><a href="#normal-dangerous">Normal and Dangerous Permissions</a>
+  <ol>
+    <li><a href="#perm-groups">Permission Groups</a></li>
+  </ol>
+</li>
+<li><a href="#defining">Defining and Enforcing Permissions</a>
 	<ol>
 	<li><a href="#manifest">...in AndroidManifest.xml</a></li>
 	<li><a href="#broadcasts">...when Sending Broadcasts</a></li>
@@ -18,9 +24,46 @@
 	</ol></li>
 <li><a href="#uri">URI Permissions</a></li>
 </ol>
+
+  <h2>Key classes</h2>
+  <ol>
+    <li>{@link android.Manifest.permission}</li>
+    <li>{@link android.Manifest.permission_group}</li>
+  </ol>
+
+  <h2>See Also</h2>
+  <ol>
+    <li><a href="{@docRoot}training/permissions/index.html">Working with System
+        Permissions</a></li>
+  </ol>
+
+<!--
+  <h2>See also</h2>
+  <ol>
+    <li></li>
+  </ol>
+-->
 </div>
 </div>
 
+<a class="notice-designers"
+    href="https://www.google.com/design/spec/patterns/permissions.html">
+  <div>
+    <h3>Design Patterns</h3>
+    <p>Permissions</p>
+  </div>
+</a>
+
+<!-- video box -->
+<a class="notice-developers-video"
+    href="https://www.youtube.com/watch?v=f17qe9vZ8RM">
+<div>
+    <h3>Video</h3>
+    <p>Google I/O 2015—Android M Permissions: Best Practices for
+      Developers</p>
+</div>
+</a>
+
 <p>Android is a privilege-separated operating system, in which each
 application runs with a distinct system identity (Linux user ID and group
 ID).  Parts of the system are also separated into distinct identities.
@@ -33,7 +76,8 @@
 
 <p>This document describes how application developers can use the
 security features provided by Android.  A more general <a
-href="http://source.android.com/tech/security/index.html"> Android Security
+href="http://source.android.com/tech/security/index.html"
+class="external-link">Android Security
 Overview</a> is provided in the Android Open Source Project.</p>
 
 
@@ -51,12 +95,11 @@
 must explicitly share resources and data. They do this by declaring the
 <em>permissions</em> they need for additional capabilities not provided by
 the basic sandbox. Applications statically declare the permissions they
-require, and the Android system prompts the user for consent at the time the
-application is installed.</p>
+require, and the Android system prompts the user for consent.</p>
 
 <p>The application sandbox does not depend on the technology used to build
 an application. In particular the Dalvik VM is not a security boundary, and
-any app can run native code (see <a href="/sdk/ndk/index.html">the Android
+any app can run native code (see <a href="{@docRoot}tools/sdk/ndk/index.html">the Android
 NDK</a>). All types of applications &mdash; Java, native, and hybrid &mdash;
 are sandboxed in the same way and have the same degree of security from each
 other.</p>
@@ -72,9 +115,9 @@
 for Android applications to use self-signed certificates. The purpose of
 certificates in Android is to distinguish application authors. This allows
 the system to grant or deny applications access to <a
-href="/guide/topics/manifest/permission-element.html#plevel">signature-level
+href="{@docRoot}guide/topics/manifest/permission-element.html#plevel">signature-level
 permissions</a> and to grant or deny an application's <a
-href="/guide/topics/manifest/manifest-element.html#uid">request to be given
+href="{@docRoot}guide/topics/manifest/manifest-element.html#uid">request to be given
 the same Linux identity</a> as another application.</p>
 
 <a name="userid"></a>
@@ -110,15 +153,16 @@
 been set appropriately so any other application can see it.</p>
 
 
-<a name="permissions"></a>
-<h2>Using Permissions</h2>
+<h2 id="permissions">Using Permissions</h2>
 
 <p>A basic Android application has no permissions associated with it by default,
 meaning it cannot do anything that would adversely impact the user experience
 or any data on the device.  To make use of protected features of the device,
-you must include in your <code>AndroidManifest.xml</code> one or more
-<code>{@link android.R.styleable#AndroidManifestUsesPermission &lt;uses-permission&gt;}</code>
-tags declaring the permissions that your application needs.</p>
+you must include one or more
+<a href="{@docRoot}guide/topics/manifest/uses-permission-element.html"
+    ><code>&lt;uses-permission&gt;</code></a>
+tags in your <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">app
+manifest</a>.</p>
 
 <p>For example, an application that needs to monitor incoming SMS messages would
 specify:</p>
@@ -129,14 +173,50 @@
     ...
 &lt;/manifest&gt;</pre>
 
-<p>At application install time, permissions requested by the application are
-granted to it by the package installer, based on checks against the
-signatures of the applications declaring those permissions and/or interaction
-with the user. <em>No</em> checks with the user
-are done while an application is running; the app is either granted a particular
-permission when installed, and can use that feature as desired, or the
-permission is not granted and any attempt to use the feature fails
-without prompting the user.</p>
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3>Permission Levels</h3>
+  <p>For more information about the different protection levels for
+    permissions, see <a href="#normal-dangerous">Normal and Dangerous
+    Permissions</a>.</p>
+</div>
+</div>
+
+<p>
+  If your app lists <em>normal</em> permissions in its manifest (that is,
+  permissions that don't pose much risk to the user's privacy or the device's
+  operation), the system automatically grants those permissions.
+  If your app lists <em>dangerous</em> permissions in its manifest (that is,
+  permissions that could potentially affect the user's privacy or the device's
+  normal operation), the system asks the user to explicitly grant those
+  permissions. The way Android makes the requests depends on the system
+  version, and the system version targeted by your app:
+</p>
+
+<ul>
+  <li>If the device is running Android 6.0 (API level 23) or higher,
+  <em>and</em> the app's <a
+  href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target"
+  ><code>targetSdkVersion</code></a>
+  is 23 or higher, the app requests permissions from the user at run-time.
+  The user can revoke the permissions at any time, so the app needs to
+  check whether it has the permissions every time it runs.
+  For more information about requesting permissions in your app, see the
+  <a href="{@docRoot}training/permissions/index.html">Working with System
+  Permissions</a> training guide.
+  </li>
+
+  <li>If the device is running Android 5.1 (API level 22) or lower, <em>or</em>
+  the app's <a
+  href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target"
+  ><code>targetSdkVersion</code></a>
+  is 22 or lower, the system asks the user to grant the permissions when the
+  user installs the app. If you add a new permission to an updated version of
+  the app, the system asks the user to grant that permission when the user
+  updates the app. Once the user installs the app, the only way they can
+  revoke the permission is by uninstalling the app.
+  </li>
+</ul>
 
 <p>Often times a permission failure will result in a {@link
 java.lang.SecurityException} being thrown back to the application. However,
@@ -146,12 +226,6 @@
 will not receive an exception if there are permission failures. In almost all
 cases, however, a permission failure will be printed to the system log.</p>
 
-<p>However, in a normal user situation (such as when the app is installed
-from Google Play Store), an app cannot be installed if the user does not grant the app
-each of the requested permissions. So you generally don't need to worry about runtime failures
-caused by missing permissions because the mere fact that the app is installed at all
-means that your app has been granted its desired permissions.</p>
-
 <p>The permissions provided by the Android system can be found at {@link
 android.Manifest.permission}. Any application may also define and enforce its
 own permissions, so this is not a comprehensive list of all possible
@@ -171,10 +245,9 @@
 <li>Binding to or starting a service.</li>
 </ul>
 
+<h3 id="auto-adjustments">Automatic permission adjustments</h3>
 
-
-<div class="caution">
-<p><strong>Caution:</strong> Over time,
+<p> Over time,
 new restrictions may be added to the platform such that, in order
 to use certain APIs, your app must request a permission that it previously did not need.
 Because existing apps assume access to those APIs is freely available,
@@ -189,18 +262,283 @@
 added in API level 4 to restrict access to the shared storage space. If your <a
 href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>
 is 3 or lower, this permission is added to your app on newer versions of Android.</p>
-<p>Beware that if this happens to your app, your app listing on Google Play will show these
-required permissions even though your app might not actually require them.</p>
+
+<p class="caution">
+  <strong>Caution:</strong> If a permission is automatically added to your app,
+  your app listing on Google Play lists these additional permissions even
+  though your app might not actually require them.
+</p>
+
 <p>To avoid this and remove the default permissions you don't need, always update your <a
 href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>
 to be as high as possible. You can see which permissions were added with each release in the
 {@link android.os.Build.VERSION_CODES} documentation.</p>
 </div>
 
+<h2 id="normal-dangerous">Normal and Dangerous Permissions</h2>
+
+<p>
+  System permissions are divided into several protection levels. The two most
+  important protection levels to know about are <em>normal</em> and
+  <em>dangerous</em> permissions:
+</p>
+
+<ul>
+  <li>
+    <em>Normal</em> permissions cover areas where your app needs to access data
+    or resources outside the app's sandbox, but where there's very little risk
+    to the user's privacy or the operation of other apps. For example,
+    permission to set the time zone is a normal permission. If an app
+    declares that it needs a normal permission, the system automatically grants
+    the permission to the app. For a full listing of the current normal
+    permissions, see <a href="normal-permissions.html">Normal permissions</a>.
+  </li>
+
+  <li>
+    <em>Dangerous</em> permissions cover areas where the app wants data or
+    resources that involve the user's private information, or could potentially
+    affect the user's stored data or the operation of other apps. For example,
+    the ability to read the user's contacts is a dangerous permission. If an
+    app declares that it needs a dangerous permission, the user has to
+    explicitly grant the permission to the app.
+  </li>
+</ul>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+  <h3 id="special_permissions">Special Permissions</h3>
+  <p>
+    There are a couple of permissions that don't behave like normal and
+    dangerous permissions. {@link android.Manifest.permission#SYSTEM_ALERT_WINDOW
+    SYSTEM_ALERT_WINDOW} and {@link android.Manifest.permission#WRITE_SETTINGS
+    WRITE_SETTINGS} are particularly sensitive, so most apps should not use
+    them. If an app needs one of these permissions, it must declare the
+    permission in the manifest, <em>and</em> send an intent requesting the
+    user's authorization. The system responds to the intent by showing a
+    detailed management screen to the user.
+  </p>
+
+  <p>
+    For details on how to request these permissions, see the {@link
+    android.Manifest.permission#SYSTEM_ALERT_WINDOW SYSTEM_ALERT_WINDOW} and
+    {@link android.Manifest.permission#WRITE_SETTINGS WRITE_SETTINGS} reference
+    entries.
+  </p>
+</div>
+</div>
+
+<h3 id="perm-groups">Permission groups</h3>
+
+<p>
+  All dangerous Android system permissions belong to permission groups.
+  If the device is running Android 6.0 (API level 23) and the app's <a href=
+  "{@docRoot}guide/topics/manifest/uses-sdk-element.html#target"
+  ><code>targetSdkVersion</code></a> is 23 or higher, the following system
+  behavior applies when your app requests a dangerous permission:
+</p>
+
+<ul>
+  <li>If an app requests a dangerous permission listed in its manifest, and the app
+  does not currently have any permissions in the permission group, the system
+  shows a dialog box to the user describing the permission group that the app
+  wants access to. The dialog box does not describe the specific permission
+  within that group. For example, if an app requests the {@link
+  android.Manifest.permission#READ_CONTACTS READ_CONTACTS} permission, the
+  system dialog box just says the app needs access to the device's contacts. If
+  the user grants approval, the system gives the app just the permission it
+  requested.
+  </li>
+
+  <li>If an app requests a dangerous permission listed in its manifest, and the app
+  already has another dangerous permission in the same permission group, the
+  system immediately grants the permission without any interaction with the
+  user. For example, if an app had previously requested and been granted the
+  {@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS} permission,
+  and it then requests {@link android.Manifest.permission#WRITE_CONTACTS
+  WRITE_CONTACTS}, the system immediately grants that permission.
+  </li>
+</ul>
+
+<p class="aside">
+  Any permission can belong to a permission group, including normal permissions
+  and permissions defined by your app.
+  However, a permission's group only affects the user experience if the
+  permission is dangerous. You can ignore the permission group for normal
+  permissions.
+</p>
+
+<p>
+  If the device is running Android 5.1 (API level 22) or lower, or the app's
+  <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target"
+  ><code>targetSdkVersion</code></a> is 22 or lower, the system asks the user
+  to grant the permissions at install time. Once again, the system just tells
+  the user what permission <em>groups</em> the app needs, not the individual
+  permissions.
+</p>
+
+<p class="table-caption" id="permission-groups">
+  <strong>Table 1.</strong> Dangerous permissions and permission groups.</p>
+<table>
+  <tr>
+    <th scope="col">Permission Group</th>
+    <th scope="col">Permissions</th>
+  </tr>
+
+  <tr>
+    <td>{@link android.Manifest.permission_group#CALENDAR CALENDAR}</td>
+    <td>
+      <ul>
+        <li>
+          {@link android.Manifest.permission#READ_CALENDAR READ_CALENDAR}
+        </li>
+      </ul>
+      <ul>
+        <li>
+          {@link android.Manifest.permission#WRITE_CALENDAR WRITE_CALENDAR}
+        </li>
+      </ul>
+    </td>
+  </tr>
+
+  <tr>
+    <td>{@link android.Manifest.permission_group#CAMERA CAMERA}</td>
+    <td>
+      <ul>
+        <li>
+          {@link android.Manifest.permission#CAMERA CAMERA}
+        </li>
+      </ul>
+    </td>
+  </tr>
+
+  <tr>
+    <td>{@link android.Manifest.permission_group#CONTACTS CONTACTS}</td>
+    <td>
+      <ul>
+        <li>
+          {@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS}
+        </li>
+        <li>
+          {@link android.Manifest.permission#WRITE_CONTACTS WRITE_CONTACTS}
+        </li>
+        <li>
+          {@link android.Manifest.permission#GET_ACCOUNTS GET_ACCOUNTS}
+        </li>
+      </ul>
+    </td>
+  </tr>
+
+  <tr>
+    <td>{@link android.Manifest.permission_group#LOCATION LOCATION}</td>
+    <td>
+      <ul>
+        <li>
+          {@link android.Manifest.permission#ACCESS_FINE_LOCATION ACCESS_FINE_LOCATION}
+        </li>
+        <li>
+          {@link android.Manifest.permission#ACCESS_COARSE_LOCATION ACCESS_COARSE_LOCATION}
+        </li>
+      </ul>
+    </td>
+  </tr>
+
+  <tr>
+    <td>{@link android.Manifest.permission_group#MICROPHONE MICROPHONE}</td>
+    <td>
+      <ul>
+        <li>
+          {@link android.Manifest.permission#RECORD_AUDIO RECORD_AUDIO}
+        </li>
+      </ul>
+    </td>
+  </tr>
+
+  <tr>
+    <td>{@link android.Manifest.permission_group#PHONE PHONE}</td>
+    <td>
+      <ul>
+        <li>
+          {@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE}
+        </li>
+        <li>
+          {@link android.Manifest.permission#CALL_PHONE CALL_PHONE}
+        </li>
+        <li>
+          {@link android.Manifest.permission#READ_CALL_LOG READ_CALL_LOG}
+        </li>
+        <li>
+          {@link android.Manifest.permission#WRITE_CALL_LOG WRITE_CALL_LOG}
+        </li>
+        <li>
+          {@link android.Manifest.permission#ADD_VOICEMAIL ADD_VOICEMAIL}
+        </li>
+        <li>
+          {@link android.Manifest.permission#USE_SIP USE_SIP}
+        </li>
+        <li>
+          {@link android.Manifest.permission#PROCESS_OUTGOING_CALLS PROCESS_OUTGOING_CALLS}
+        </li>
+      </ul>
+    </td>
+  </tr>
+
+  <tr>
+    <td>{@link android.Manifest.permission_group#SENSORS SENSORS}</td>
+    <td>
+      <ul>
+        <li>
+          {@link android.Manifest.permission#BODY_SENSORS BODY_SENSORS}
+        </li>
+      </ul>
+    </td>
+  </tr>
+
+  <tr>
+    <td>{@link android.Manifest.permission_group#SMS SMS}</td>
+    <td>
+      <ul>
+        <li>
+          {@link android.Manifest.permission#SEND_SMS SEND_SMS}
+        </li>
+        <li>
+          {@link android.Manifest.permission#RECEIVE_SMS RECEIVE_SMS}
+        </li>
+        <li>
+          {@link android.Manifest.permission#READ_SMS READ_SMS}
+        </li>
+        <li>
+          {@link android.Manifest.permission#RECEIVE_WAP_PUSH RECEIVE_WAP_PUSH}
+        </li>
+        <li>
+          {@link android.Manifest.permission#RECEIVE_MMS RECEIVE_MMS}
+        </li>
+      </ul>
+    </td>
+  </tr>
+
+  <tr>
+    <td>
+      {@link android.Manifest.permission_group#STORAGE STORAGE}
+    </td>
+    <td>
+      <ul>
+        <li>
+          {@link android.Manifest.permission#READ_EXTERNAL_STORAGE
+              READ_EXTERNAL_STORAGE}
+        </li>
+        <li>
+          {@link android.Manifest.permission#WRITE_EXTERNAL_STORAGE
+              WRITE_EXTERNAL_STORAGE}
+        </li>
+      </ul>
+    </td>
+  </tr>
+
+</table>
 
 
 <a name="declaring"></a>
-<h2>Declaring and Enforcing Permissions</h2>
+<h2 id="defining">Defining and Enforcing Permissions</h2>
 
 <p>To enforce your own permissions, you must first declare them in your
 <code>AndroidManifest.xml</code> using one or more
@@ -439,10 +777,6 @@
 {@link android.content.Context#checkUriPermission Context.checkUriPermission()}
 methods.</p>
 
-
-
-
-
 <div class="next-docs">
 <div class="col-6">
   <h2 class="norule">Continue reading about:</h2>
@@ -467,7 +801,7 @@
     <dd>Information about Android works on different types of devices and an introduction
     to how you can optimize your app for each device or restrict your app's availability
     to different devices.</dd>
-    <dt><a href="{@docRoot}http://source.android.com/devices/tech/security/index.html"
+    <dt><a href="http://source.android.com/devices/tech/security/index.html"
         class="external-link">Android Security Overview</a></dt>
     <dd>A detailed discussion about the Android platform's security model.</dd>
   </dl>
diff --git a/docs/html/guide/topics/sensors/sensors_motion.jd b/docs/html/guide/topics/sensors/sensors_motion.jd
index 393c3c5..2a3c4d6 100644
--- a/docs/html/guide/topics/sensors/sensors_motion.jd
+++ b/docs/html/guide/topics/sensors/sensors_motion.jd
@@ -338,7 +338,7 @@
 should be identical to that of the accelerometer.</p>
 
 <h2 id="sensors-motion-gyro">Using the Gyroscope</h2>
-<p>The gyroscope measures the rate or rotation in rad/s around a device's x, y,
+<p>The gyroscope measures the rate of rotation in rad/s around a device's x, y,
 and z axis. The following code shows you how to get an instance of the default gyroscope:</p>
 
 <pre>
diff --git a/docs/html/guide/topics/ui/actionbar.jd b/docs/html/guide/topics/ui/actionbar.jd
deleted file mode 100644
index c21671f..0000000
--- a/docs/html/guide/topics/ui/actionbar.jd
+++ /dev/null
@@ -1,1501 +0,0 @@
-page.title=Action Bar
-page.tags=actionbar,menu,tabs
-
-@jd:body
-
-
-<a class="notice-designers top" href="{@docRoot}design/patterns/actionbar.html">
-  <div>
-    <h3>Design Guide</h3>
-    <p>Action Bar</p>
-  </div>
-</a>
-
-<div id="qv-wrapper">
-<div id="qv">
-
-  <h2>In this document</h2>
-<ol>
-  <li><a href="#Adding">Adding the Action Bar</a>
-    <ol>
-      <li><a href="#Removing">Removing the action bar</a></li>
-      <li><a href="#Logo">Using a logo instead of an icon</a></li>
-    </ol>
-  </li>
-  <li><a href="#ActionItems">Adding Action Items</a>
-    <ol>
-      <li><a href="#ActionEvents">Handling clicks on action items</a></li>
-      <li><a href="#SplitBar">Using split action bar</a></li>
-    </ol>
-  </li>
-  <li><a href="#Home">Navigating Up with the App Icon</a></li>
-  <li><a href="#ActionView">Adding an Action View</a>
-    <ol>
-      <li><a href="#ActionViewCollapsing">Handling collapsible action views</a></li>
-    </ol>
-  </li>
-  <li><a href="#ActionProvider">Adding an Action Provider</a>
-    <ol>
-      <li><a href="#ShareActionProvider">Using the ShareActionProvider</a></li>
-      <li><a href="#CreatingActionProvider">Creating a custom action provider</a></li>
-    </ol>
-  </li>
-  <li><a href="#Tabs">Adding Navigation Tabs</a></li>
-  <li><a href="#Dropdown">Adding Drop-down Navigation</a></li>
-  <li><a href="#Style">Styling the Action Bar</a>
-    <ol>
-      <li><a href="#GeneralStyles">General appearance</a></li>
-      <li><a href="#ActionItemStyles">Action items</a></li>
-      <li><a href="#NavigationStyles">Navigation tabs</a></li>
-      <li><a href="#DropDownStyles">Drop-down lists</a></li>
-      <li><a href="#StyleExample">Example theme</a></li>
-    </ol>
-  </li>
-</ol>
-
-  <h2>Key classes</h2>
-  <ol>
-    <li>{@link android.support.v7.app.ActionBar}</li>
-    <li>{@link android.view.Menu}</li>
-  </ol>
-
-</div>
-</div>
-
-<p>The action bar is a window feature that identifies the user location, and
-provides user actions and navigation modes. Using the action bar offers your users a
-familiar interface across applications that the system gracefully adapts
-for different screen configurations.</p>
-
-<img src="{@docRoot}images/ui/actionbar@2x.png" alt="" width="428" height="215" />
-<p class="img-caption"><strong>Figure 1.</strong> An action bar that includes the [1] app icon,
-[2] two action items, and [3] action overflow.</p>
-
-<p>The action bar provides several key functions:</p>
-
-<ul>
-  <li>Provides a dedicated space for giving your app an identity and indicating the user's
-  location in the app.</li>
-  <li>Makes important actions prominent and accessible in a predictable way
-  (such as <em>Search</em>).</li>
-  <li>Supports consistent navigation and view switching within apps (with tabs or drop-down
-  lists).</li>
-</ul>
-
-<p>For more information about the action bar's interaction patterns and design guidelines,
-see the <a href="{@docRoot}design/patterns/actionbar.html">Action Bar</a>
-design guide.</p>
-
-<p>The {@link android.app.ActionBar} APIs were first added in Android 3.0 (API level 11) but they
-are also available in the <a href="{@docRoot}tools/support-library/index.html">Support Library</a>
-for compatibility with Android 2.1 (API level 7) and above.</p>
-
-<p><b>This guide focuses on how to use the
-support library's action bar</b>, but if your app supports <em>only</em> Android 3.0 or higher, you
-should use the {@link android.app.ActionBar} APIs in the framework. Most of the APIs are
-the same&mdash;but reside in a different package namespace&mdash;with a few exceptions to method
-names or signatures that are noted in the sections below.</p>
-
-
-<div class="caution">
-<p><strong>Caution:</strong> Be certain you import
-the {@code ActionBar} class (and related APIs) from the appropriate package:</p>
-<ul>
-<li>If supporting API levels <em>lower than</em> 11: <br>
-{@code import android.support.v7.app.ActionBar}</li>
-<li>If supporting <em>only</em> API level 11 and higher: <br>
-{@code import android.app.ActionBar}</li>
-</ul>
-</div>
-
-
-<p class="note"><strong>Note:</strong> If you're looking for information about the <em>contextual
-action bar</em> for displaying contextual action items, see the <a
-href="{@docRoot}guide/topics/ui/menus.html#context-menu">Menu</a> guide.</p>
-
-
-
-<h2 id="Adding">Adding the Action Bar</h2>
-
-<p>As mentioned above, this guide focuses on how to use the {@link
-android.support.v7.app.ActionBar} APIs in the support library. So before you can add the action
-bar, you must set up your project with the <strong>appcompat v7</strong> support library by
-following the instructions in the <a href="{@docRoot}tools/support-library/setup.html">Support
-Library Setup</a>.</p>
-
-<p>Once your project is set up with the support library, here's how to add the action bar:</p>
-<ol>
-  <li>Create your activity by extending {@link android.support.v7.app.ActionBarActivity}.</li>
-  <li>Use (or extend) one of the {@link android.support.v7.appcompat.R.style#Theme_AppCompat
-  Theme.AppCompat} themes for your activity. For example:
-  <pre>&lt;activity android:theme="@style/Theme.AppCompat.Light" ... ></pre>
-  </li>
-</ol>
-
-<p>Now your activity includes the action bar when running on Android 2.1 (API level 7) or higher.
-</p>
-
-<div class="note">
-<p><b>On API level 11 or higher</b></p>
-<p>The action bar is included in all activities that use the
-{@link android.R.style#Theme_Holo Theme.Holo} theme (or one of its
-descendants), which is the default theme when either the <a
-href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> or
-<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a>
-attribute is set to {@code "11"} or higher. If you don't want the action bar for an
-activity, set the activity theme to {@link android.R.style#Theme_Holo_NoActionBar
-Theme.Holo.NoActionBar}.</p>
-</div>
-
-
-<h3 id="Removing">Removing the action bar</h3>
-
-<p>You can hide the action bar at runtime by calling {@link android.support.v7.app.ActionBar#hide}.
-For example:</p>
-
-<pre>
-ActionBar actionBar = {@link android.support.v7.app.ActionBarActivity#getSupportActionBar()};
-actionBar.hide();
-</pre>
-
-<div class="note">
-<p><b>On API level 11 or higher</b></p>
-<p>Get the {@link android.app.ActionBar} with the {@link android.app.Activity#getActionBar}
-method.</p>
-</div>
-
-<p>When the action bar hides, the system adjusts your layout to fill the
-screen space now available. You can bring the action bar back by calling {@link
-android.support.v7.app.ActionBar#show()}.</p>
-
-<p>Beware that hiding and removing the action bar causes your activity to re-layout in order to
-account for the space consumed by the action bar. If your activity often hides and shows the
-action bar, you might want to enable <em>overlay mode</em>. Overlay mode
-draws the action bar in front of your activity layout, obscuring the top portion. This
-way, your layout remains fixed when the action bar hides and re-appears. To enable overlay mode,
-create a custom theme for your activity and set {@link
-android.support.v7.appcompat.R.attr#windowActionBarOverlay
-windowActionBarOverlay} to {@code true}. For more information, see the section below about <a
-href="#Style">Styling the Action Bar</a>.</p>
-
-
-<h3 id="Logo">Using a logo instead of an icon</h3>
-
-<p>By default, the system uses your application icon in the action bar, as specified by the <a
-href="{@docRoot}guide/topics/manifest/application-element.html#icon">{@code icon}</a>
-attribute in the <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code
-<application>}</a> or <a
-href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
-<activity>}</a> element. However, if you also specify the <a
-href="{@docRoot}guide/topics/manifest/application-element.html#logo">{@code logo}</a>
-attribute, then the action bar uses the logo image instead of the icon.</p>
-
-<p>A logo should usually be wider than the icon, but should not include unnecessary text. You
-should generally use a logo only when it represents your brand in a traditional format that users
-recognize. A good example is the YouTube app's logo&mdash;the logo represents the expected user
-brand, whereas the app's icon is a modified version that conforms to the square requirement
-for the launcher icon.</p>
-
-
-
-
-<h2 id="ActionItems">Adding Action Items</h2>
-
-<div class="figure" style="width:340px">
-  <img src="{@docRoot}images/ui/actionbar-item-withtext.png" width="340" alt="" />
-  <p class="img-caption"><strong>Figure 2.</strong> Action bar with three action buttons and
-the overflow button.</p>
-</div>
-
-<p>The action bar provides users access to the most important action
-items relating to the app's current
-context. Those that appear directly in the action bar with an icon and/or text are known
-as <em>action buttons</em>. Actions that can't fit in the action bar or aren't
-important enough are hidden in the action overflow.
-The user can reveal a list of the other actions by pressing the overflow button
-on the right side (or the device <em>Menu</em> button, if available).</p>
-
-<p>When your activity starts, the system populates the action items by calling your activity's
-{@link android.app.Activity#onCreateOptionsMenu onCreateOptionsMenu()} method. Use this
-method to inflate a <a
-href="{@docRoot}guide/topics/resources/menu-resource.html">menu resource</a> that defines all the
-action items. For example, here's a menu resource defining a couple of menu items:</p>
-
-<p class="code-caption">res/menu/main_activity_actions.xml</p>
-<pre>
-&lt;menu xmlns:android="http://schemas.android.com/apk/res/android" >
-    &lt;item android:id="@+id/action_search"
-          android:icon="@drawable/ic_action_search"
-          android:title="@string/action_search"/&gt;
-    &lt;item android:id="@+id/action_compose"
-          android:icon="@drawable/ic_action_compose"
-          android:title="@string/action_compose" /&gt;
-&lt;/menu&gt;
-</pre>
-
-<p>Then in your activity's {@link android.app.Activity#onCreateOptionsMenu onCreateOptionsMenu()}
-method, inflate the menu resource into the given {@link android.view.Menu}
-to add each item to the action bar:</p>
-
-<pre>
-&#64;Override
-public boolean onCreateOptionsMenu(Menu menu) {
-    // Inflate the menu items for use in the action bar
-    MenuInflater inflater = getMenuInflater();
-    inflater.inflate(R.menu.main_activity_actions, menu);
-    return super.onCreateOptionsMenu(menu);
-}
-</pre>
-
-<p>To request that an item appear directly in the action bar
-as an action button, include {@code
-showAsAction="ifRoom"} in the {@code <item>} tag. For example:</p>
-
-<pre>
-&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"
-      <strong>xmlns:yourapp="http://schemas.android.com/apk/res-auto"</strong> >
-    &lt;item android:id="@+id/action_search"
-          android:icon="@drawable/ic_action_search"
-          android:title="@string/action_search"
-          <strong>yourapp:showAsAction="ifRoom"</strong>  /&gt;
-    ...
-&lt;/menu&gt;
-</pre>
-
-<p>If there's not enough room for the item in the action bar, it will appear in the action
-overflow.</p>
-
-
-<div class="note" id="XmlAttributes">
-<p><strong>Using XML attributes from the support library</strong></p>
-Notice that the {@code showAsAction} attribute above uses a custom namespace defined in the
-{@code <menu>} tag. This is necessary when using any XML attributes defined by the support
-library, because these attributes do not exist in the Android framework on older devices.
-So you must use your own namespace as a prefix for all attributes defined by the support library.
-</p>
-</div>
-
-<p>If your menu item supplies both a title and an icon&mdash;with the {@code title} and
-{@code icon} attributes&mdash;then the action item shows only the icon by default. If you
-want to display the text title, add {@code "withText"} to the {@code showAsAction}
-attribute. For example:</p>
-
-<pre>
-&lt;item yourapp:showAsAction="ifRoom|withText" ... /&gt;
-</pre>
-
-<p class="note"><strong>Note:</strong> The {@code "withText"} value is a <em>hint</em> to the
-action bar that the text title should appear. The action bar will show the title when possible, but
-might not if an icon is available and the action bar is constrained for space.</p>
-
-<p>You should always define the {@code title} for each item even if you don't declare that
-the title appear with the action item, for the following reasons:</p>
-<ul>
-  <li>If there's not enough room in the action bar for the action item, the menu item appears
-in the overflow where only the title appears.</li>
-  <li>Screen readers for sight-impaired users read the menu item's title.</li>
-  <li>If the action item appears with only the icon, a user can long-press the item to reveal a
-tool-tip that displays the action title.</li>
-</ul>
-
-<p>The {@code icon} is optional, but recommended. For icon design recommendations,
-see the <a href="{@docRoot}design/style/iconography.html#action-bar">Iconography</a> design
-guide. You can also download a set of standard action bar icons (such as for Search or Discard)
-from the <a href="{@docRoot}design/downloads/index.html">Downloads</a> page.</p>
-
-<p>You can also use {@code "always"} to declare that an item always appear as an action button.
-However, you <strong>should not</strong> force an item to appear in the action bar this
-way. Doing so can create layout problems on devices with a narrow screen. It's best to instead
-use {@code "ifRoom"} to request that an item appear in the action bar, but allow the system to move
-it into the overflow when there's not enough room. However, it might be necessary to use this value
-if the item includes an <a href="#ActionView">action view</a> that cannot be collapsed and
-must always be visible to provide access to a critical feature.</p>
-
-
-
-
-<h3 id="ActionEvents">Handling clicks on action items</h3>
-
-<p>When the user presses an action, the system calls your activity's {@link
-android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} method. Using the
-{@link android.view.MenuItem} passed to this method, you can identify the action by calling {@link
-android.view.MenuItem#getItemId()}. This returns the unique ID provided by the {@code <item>}
-tag's {@code id} attribute so you can perform the appropriate action. For example:</p>
-
-<pre>
-&#64;Override
-public boolean onOptionsItemSelected(MenuItem item) {
-    // Handle presses on the action bar items
-    switch (item.getItemId()) {
-        case R.id.action_search:
-            openSearch();
-            return true;
-        case R.id.action_compose:
-            composeMessage();
-            return true;
-        default:
-            return super.onOptionsItemSelected(item);
-    }
-}
-</pre>
-
-<p class="note"><strong>Note:</strong> If you inflate menu items from a fragment, via the {@link
-android.app.Fragment} class's {@link android.app.Fragment#onCreateOptionsMenu onCreateOptionsMenu()}
-callback, the system calls {@link
-android.app.Fragment#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} for that
-fragment when the user selects one of those items. However, the activity gets a chance to
-handle the event first, so the system first calls {@link
-android.app.Activity#onOptionsItemSelected(MenuItem) onOptionsItemSelected()} on the activity,
-before calling the same callback for the fragment. To ensure that any fragments in the
-activity also have a chance to handle the callback, always pass the call to the superclass
-as the default behavior instead of returning {@code false} when you do not handle the item.</p>
-
-
-
-<div class="figure" style="width:420px;margin-top:0">
-<img src="{@docRoot}images/ui/actionbar-splitaction@2x.png" alt="" width="420"/>
-<p class="img-caption"><strong>Figure 3.</strong> Mock-ups showing an action bar with
-tabs (left), then with split action bar (middle); and with the app icon and title disabled
-(right).</p>
-</p>
-</div>
-
-<h3 id="SplitBar">Using split action bar</h3>
-
-<p>Split action bar provides a separate
-bar at the bottom of the screen to display all action items when the activity is running on
-a narrow screen (such as a portrait-oriented handset).</p>
-
-<p>Separating the action items this way
-ensures that a reasonable amount of space is available to display all your action
-items on a narrow screen, while leaving room for navigation and title elements at the top.</p>
-
-<p>To enable split action bar when using the support library, you must do two things:</p>
-<ol>
-  <li>Add {@code uiOptions="splitActionBarWhenNarrow"} to each
-<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code <activity>}</a>
-element or to the
-<a href="{@docRoot}guide/topics/manifest/application-element.html">{@code <application>}</a>
-element. This attribute is understood only by API level 14 and higher (it is ignored
-by older versions).</li>
-  <li>To support older versions, add a <a
-  href="{@docRoot}guide/topics/manifest/meta-data-element.html">{@code <meta-data>}</a>
-  element as a child of each
-  <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code <activity>}</a>
-  element that declares the same value for {@code "android.support.UI_OPTIONS"}.</li>
-</ol>
-
-<p>For example:</p>
-
-<pre>
-&lt;manifest ...>
-    &lt;activity uiOptions="splitActionBarWhenNarrow" ... >
-        &lt;meta-data android:name="android.support.UI_OPTIONS"
-                   android:value="splitActionBarWhenNarrow" />
-    &lt;/activity>
-&lt;/manifest>
-</pre>
-
-
-<p>Using split action bar also allows <a href="#Tabs">navigation tabs</a> to collapse into the
-main action bar if you remove the icon and title (as shown on the right in figure 3).
-To create this effect, disable the action bar
-icon and title with {@link android.support.v7.app.ActionBar#setDisplayShowHomeEnabled
-setDisplayShowHomeEnabled(false)} and {@link
-android.support.v7.app.ActionBar#setDisplayShowTitleEnabled setDisplayShowTitleEnabled(false)}.</p>
-
-
-
-<h2 id="Home">Navigating Up with the App Icon</h2>
-
-<a class="notice-designers" href="{@docRoot}design/patterns/navigation.html">
-  <div>
-    <h3>Design Guide</h3>
-    <p>Navigation with Back and Up</p>
-  </div>
-</a>
-
-<div class="figure" style="width:240px">
-  <img src="{@docRoot}images/ui/actionbar-up.png" width="240" alt="" />
-  <p class="img-caption"><strong>Figure 4.</strong> The <em>Up</em> button in Gmail.</p>
-</div>
-
-<p>Enabling the app icon as an <em>Up</em> button allows the user to navigate your app based
-on the hierarchical relationships between screens. For instance, if screen A displays a list of
-items, and selecting an item leads to screen B, then
-screen B should include the <em>Up</em> button, which returns to screen A.</p>
-
-<p class="note"><strong>Note:</strong> Up navigation is distinct from the back navigation provided
-by the system <em>Back</em> button. The <em>Back</em> button is used to navigate in reverse
-chronological order through the history of screens the user has recently worked with. It is
-generally based on the temporal relationships between screens, rather than the app's hierarchy
-structure (which is the basis for up navigation).</p>
-
-<p>To enable the app icon as an <em>Up</em> button, call {@link
-android.support.v7.app.ActionBar#setDisplayHomeAsUpEnabled setDisplayHomeAsUpEnabled()}.
-For example:</p>
-
-<pre>
-&#64;Override
-protected void onCreate(Bundle savedInstanceState) {
-    super.onCreate(savedInstanceState);
-    setContentView(R.layout.activity_details);
-
-    ActionBar actionBar = getSupportActionBar();
-    actionBar.setDisplayHomeAsUpEnabled(true);
-    ...
-}
-</pre>
-
-<p>Now the icon in the action bar appears with the <em>Up</em> caret (as shown in figure 4).
-However, it won't do anything by default. To specify the activity to open when the
-user presses <em>Up</em> button, you have two options:</p>
-
-<ul>
-  <li><b>Specify the parent activity in the manifest file.</b>
-    <p>This is the best option when <strong>the parent activity is always the same</strong>. By
-declaring in the manifest which activity is the parent, the action bar automatically performs the
-correct action when the user presses the <em>Up</em> button.</p>
-
-    <p>Beginning in Android 4.1 (API level 16), you can declare the parent with the <a href=
-"{@docRoot}guide/topics/manifest/activity-element.html#parent">{@code parentActivityName}</a>
-attribute in the <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code
-<activity>}</a> element.</p>
-    <p>To support older devices with the support library, also
-include a <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">{@code
-<meta-data>}</a> element that specifies
-the parent activity as the value for {@code android.support.PARENT_ACTIVITY}. For example:</p>
-<pre>
-&lt;application ... >
-    ...
-    &lt;!-- The main/home activity (has no parent activity) -->
-    &lt;activity
-        android:name="com.example.myfirstapp.MainActivity" ...>
-        ...
-    &lt;/activity>
-    &lt;!-- A child of the main activity -->
-    &lt;activity
-        android:name="com.example.myfirstapp.DisplayMessageActivity"
-        android:label="&#64;string/title_activity_display_message"
-        android:parentActivityName="com.example.myfirstapp.MainActivity" >
-        &lt;!-- Parent activity meta-data to support API level 7+ -->
-        &lt;meta-data
-            android:name="android.support.PARENT_ACTIVITY"
-            android:value="com.example.myfirstapp.MainActivity" />
-    &lt;/activity>
-&lt;/application>
-</pre>
-
-  <p>Once the parent activity is specified in the manifest like this and you enable the <em>Up</em>
-  button with {@link
-android.support.v7.app.ActionBar#setDisplayHomeAsUpEnabled setDisplayHomeAsUpEnabled()}, your work
-is done and the action bar properly navigates up.</p>
-  </li>
-
-
-  <li><strong>Or, override {@link
-android.support.v7.app.ActionBarActivity#getSupportParentActivityIntent()} and {@link
-android.support.v7.app.ActionBarActivity#onCreateSupportNavigateUpTaskStack
-onCreateSupportNavigateUpTaskStack()} in your activity</strong>.</li>
-
-    <p>This is appropriate when <strong>the parent activity may be different</strong> depending
-    on how the user arrived at the current screen. That is, if there are many paths that the user
-    could have taken to reach the current screen, the <em>Up</em> button should navigate
-    backward along the path the user actually followed to get there.</p>
-
-    <p>The system calls {@link
-android.support.v7.app.ActionBarActivity#getSupportParentActivityIntent()} when the user presses
-the <em>Up</em> button while navigating your app (within your app's own task). If the activity that
-should open upon up navigation differs depending on how the user arrived at the current location,
-then you should override this method to return the {@link
-android.content.Intent} that starts the appropriate parent activity.</p>
-
-    <p>The system calls {@link
-android.support.v7.app.ActionBarActivity#onCreateSupportNavigateUpTaskStack
-onCreateSupportNavigateUpTaskStack()} for your activity when the user presses the <em>Up</em>
-button while your activity is running in a task that does <em>not</em> belong to your app. Thus,
-you must use the {@link android.support.v4.app.TaskStackBuilder} passed to this method to construct
-the appropriate back stack that should be synthesized when the user navigates up.</p>
-
-    <p>Even if you override {@link
-android.support.v7.app.ActionBarActivity#getSupportParentActivityIntent()} to specify up navigation
-as the user navigates your app, you can avoid the need to implement {@link
-android.support.v7.app.ActionBarActivity#onCreateSupportNavigateUpTaskStack
-onCreateSupportNavigateUpTaskStack()} by declaring "default" parent activities in the manifest file
-as shown above. Then the default implementation of {@link
-android.support.v7.app.ActionBarActivity#onCreateSupportNavigateUpTaskStack
-onCreateSupportNavigateUpTaskStack()} will synthesize a back stack based on the parent activities
-declared in the manifest.</p>
-
-  </li>
-</ul>
-
-<p class="note"><strong>Note:</strong>
-If you've built your app hierarchy using a series of fragments instead of multiple
-activities, then neither of the above options will work. Instead, to navigate up through your
-fragments, override {@link android.support.v7.app.ActionBarActivity#onSupportNavigateUp()}
-to perform the appropriate fragment transaction&mdash;usually by popping
-the current fragment from the back stack by calling {@link
-android.support.v4.app.FragmentManager#popBackStack()}.</p>
-
-<p>For more information about implementing <em>Up</em> navigation, read
-<a href="{@docRoot}training/implementing-navigation/ancestral.html">Providing Up Navigation</a>.</p>
-
-
-
-<h2 id="ActionView">Adding an Action View</h2>
-
-<div class="figure" style="width:340px">
-<img src="/images/ui/actionbar-searchview@2x.png" alt="" width="340" />
-<p class="img-caption"><strong>Figure 5.</strong> An action bar with a collapsible
-{@link android.support.v7.widget.SearchView}.</p>
-</div>
-
-
-<p>An <em>action view</em> is a widget that appears in the action bar as a substitute for an action
-button. An action view provides fast access to rich actions without changing activities or
-fragments, and without replacing the action bar. For example, if you have an action for Search, you
-can add an action view to
-embeds a {@link android.support.v7.widget.SearchView} widget in the action bar, as shown in figure
-5.</p>
-
-<p>To declare an action view, use either the {@code
-actionLayout} or {@code actionViewClass} attribute to specify either a layout
-resource or widget class to use, respectively. For example, here's how to add
-the {@link android.support.v7.widget.SearchView} widget:</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?>
-&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"
-      xmlns:yourapp="http://schemas.android.com/apk/res-auto" >
-    &lt;item android:id="@+id/action_search"
-          android:title="@string/action_search"
-          android:icon="@drawable/ic_action_search"
-          yourapp:showAsAction="ifRoom|collapseActionView"
-          <b>yourapp:actionViewClass="android.support.v7.widget.SearchView"</b> /&gt;
-&lt;/menu>
-</pre>
-
-<p>Notice that the {@code showAsAction} attribute also includes the {@code "collapseActionView"}
-value. This is optional and declares that the action view should be collapsed into a
-button. (This behavior is explained further in the following section about
-<a href="#ActionViewCollapsing">Handling collapsible action views</a>.)</p>
-
-<p>If you need to configure the action view (such as to add event listeners), you can do so during
-the {@link android.app.Activity#onCreateOptionsMenu onCreateOptionsMenu()} callback. You can
-acquire the action view object by calling the static method {@link
-android.support.v4.view.MenuItemCompat#getActionView MenuItemCompat.getActionView()} and passing it
-the corresponding {@link android.view.MenuItem}. For example, the search widget from the above
-sample is acquired like this:</p>
-
-
-<pre>
-&#64;Override
-public boolean onCreateOptionsMenu(Menu menu) {
-    getMenuInflater().inflate(R.menu.main_activity_actions, menu);
-    MenuItem searchItem = menu.findItem(R.id.action_search);
-    SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
-    // Configure the search info and add any event listeners
-    ...
-    return super.onCreateOptionsMenu(menu);
-}
-</pre>
-
-<div class="note">
-<p><b>On API level 11 or higher</b></p>
-<p>Get the action view by calling {@link android.view.MenuItem#getActionView} on the
-corresponding {@link android.view.MenuItem}:</p>
-<pre>menu.findItem(R.id.action_search).getActionView()</pre>
-</div>
-
-<p>For more information about using the search widget, see <a
-href="{@docRoot}guide/topics/search/search-dialog.html">Creating a Search Interface</a>.</p>
-
-
-
-<h3 id="ActionViewCollapsing">Handling collapsible action views</h3>
-
-<p>To preserve the action bar space, you can collapse your action view into an action button.
-When collapsed, the system might place the action
-into the action overflow, but the
-action view still appears in the action bar when the user selects it. You can make your action
-view collapsible by adding {@code "collapseActionView"} to the {@code showAsAction}
-attribute, as shown in the XML above.</p>
-
-<p>Because the system expands the action view when the user selects the action, you
-<em>do not</em> need to respond to the item in the {@link
-android.app.Activity#onOptionsItemSelected onOptionsItemSelected()} callback. The system still calls
-{@link android.app.Activity#onOptionsItemSelected onOptionsItemSelected()}, but if
-you return {@code true} (indicating you've handled the event instead), then the
-action view will <em>not</em> expand.</p>
-
-<p>The system also collapses your action view when the user presses the <em>Up</em> button
-or <em>Back</em> button.</p>
-
-<p>If you need to update your activity based on the visibility of your action view, you can receive
-callbacks when the action is expanded and collapsed by defining an {@link
-android.support.v4.view.MenuItemCompat.OnActionExpandListener OnActionExpandListener} and
-passing it to {@link android.support.v4.view.MenuItemCompat#setOnActionExpandListener
-setOnActionExpandListener()}. For example:</p>
-
-
-<pre>
-&#64;Override
-public boolean onCreateOptionsMenu(Menu menu) {
-    getMenuInflater().inflate(R.menu.options, menu);
-    MenuItem menuItem = menu.findItem(R.id.actionItem);
-    ...
-
-    // When using the support library, the setOnActionExpandListener() method is
-    // static and accepts the MenuItem object as an argument
-    MenuItemCompat.setOnActionExpandListener(menuItem, new OnActionExpandListener() {
-        &#64;Override
-        public boolean onMenuItemActionCollapse(MenuItem item) {
-            // Do something when collapsed
-            return true;  // Return true to collapse action view
-        }
-
-        &#64;Override
-        public boolean onMenuItemActionExpand(MenuItem item) {
-            // Do something when expanded
-            return true;  // Return true to expand action view
-        }
-    });
-}
-</pre>
-
-
-
-
-<h2 id="ActionProvider">Adding an Action Provider</h2>
-
-<div class="figure" style="width:240px">
-  <img src="{@docRoot}images/ui/actionbar-shareaction@2x.png" alt="" width="240" />
-  <p class="img-caption"><strong>Figure 6.</strong> An action bar with
-  {@link android.widget.ShareActionProvider} expanded to show share targets.</p>
-</div>
-
-<p>Similar to an <a href="#ActionView">action view</a>, an <em>action provider</em>
-replaces an action button with a customized layout. However,
-unlike an action view, an action provider takes control of all the action's behaviors
-and an action provider can display a submenu when pressed.</p>
-
-<p>To declare an action provider, supply the {@code actionViewClass} attribute in the
-menu {@code <item>} tag with a fully-qualified class name for an
-{@link android.support.v4.view.ActionProvider}.</p>
-
-<p>You can build your own action provider by extending the {@link
-android.support.v4.view.ActionProvider} class, but Android provides some pre-built action providers
-such as {@link android.support.v7.widget.ShareActionProvider}, which facilitates a "share" action
-by showing a list of possible apps for sharing directly in the action bar (as shown in figure
-6).</p>
-
-<p>Because each {@link android.support.v4.view.ActionProvider} class defines its own action
-behaviors, you don't need to listen for the action in the {@link
-android.app.Activity#onOptionsItemSelected onOptionsItemSelected()} method. If necessary though,
-you can still listen for the click event in the {@link android.app.Activity#onOptionsItemSelected
-onOptionsItemSelected()} method in case you need to simultaneously perform another action. But be
-sure to return {@code false} so that the the action provider still receives the {@link
-android.support.v4.view.ActionProvider#onPerformDefaultAction()} callback to perform its intended
-action.</p>
-
-
-<p>However, if the action provider provides a submenu of actions, then your
-activity does not receive a call to {@link android.app.Activity#onOptionsItemSelected
-onOptionsItemSelected()} when the user opens the list or selects one of the submenu items.</p>
-
-
-
-<h3 id="ShareActionProvider">Using the ShareActionProvider</h3>
-
-<p>To add a "share" action with {@link android.support.v7.widget.ShareActionProvider},
-define the {@code actionProviderClass} for an {@code <item>} tag with
-the {@link android.support.v7.widget.ShareActionProvider} class. For example:</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?>
-&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"
-      xmlns:yourapp="http://schemas.android.com/apk/res-auto" >
-    &lt;item android:id="@+id/action_share"
-          android:title="@string/share"
-          yourapp:showAsAction="ifRoom"
-          <strong>yourapp:actionProviderClass="android.support.v7.widget.ShareActionProvider"</strong>
-          /&gt;
-    ...
-&lt;/menu>
-</pre>
-
-<p>Now the action provider takes control of the action item and handles both
-its appearance and behavior. But you must
-still provide a title for the item to be used when it appears in the action overflow.</p>
-
-<p>The only thing left to do is define
-the {@link android.content.Intent} you want to use for sharing. To do so, edit
-your {@link
-android.app.Activity#onCreateOptionsMenu onCreateOptionsMenu()} method to call {@link
-android.support.v4.view.MenuItemCompat#getActionProvider MenuItemCompat.getActionProvider()}
-and pass it the {@link android.view.MenuItem} holding the action provider. Then call {@link
-android.support.v7.widget.ShareActionProvider#setShareIntent setShareIntent()} on the
-returned {@link android.support.v7.widget.ShareActionProvider} and pass it an
-{@link android.content.Intent#ACTION_SEND} intent with the appropriate content attached.</p>
-
-<p>You should call {@link
-android.support.v7.widget.ShareActionProvider#setShareIntent setShareIntent()} once during {@link
-android.app.Activity#onCreateOptionsMenu onCreateOptionsMenu()} to initialize the share action,
-but because the user context might change, you must update the intent any time the shareable
-content changes by again calling {@link
-android.support.v7.widget.ShareActionProvider#setShareIntent setShareIntent()}.</p>
-
-<p>For example:</p>
-
-<pre>
-private ShareActionProvider mShareActionProvider;
-
-&#64;Override
-public boolean onCreateOptionsMenu(Menu menu) {
-    getMenuInflater().inflate(R.menu.main_activity_actions, menu);
-
-    // Set up ShareActionProvider's default share intent
-    MenuItem shareItem = menu.findItem(R.id.action_share);
-    mShareActionProvider = (ShareActionProvider)
-            MenuItemCompat.getActionProvider(shareItem);
-    mShareActionProvider.setShareIntent(getDefaultIntent());
-
-    return super.onCreateOptionsMenu(menu);
-}
-
-/** Defines a default (dummy) share intent to initialize the action provider.
-  * However, as soon as the actual content to be used in the intent
-  * is known or changes, you must update the share intent by again calling
-  * mShareActionProvider.{@link android.support.v7.widget.ShareActionProvider#setShareIntent setShareIntent()}
-  */
-private Intent getDefaultIntent() {
-    Intent intent = new Intent(Intent.ACTION_SEND);
-    intent.setType("image/*");
-    return intent;
-}
-</pre>
-
-<p>The {@link android.support.v7.widget.ShareActionProvider} now handles all user interaction with
-the item and you <em>do not</em> need to handle click events from the {@link
-android.app.Activity#onOptionsItemSelected onOptionsItemSelected()} callback method.</p>
-
-
-<p>By default, the {@link android.support.v7.widget.ShareActionProvider} retains a ranking for each
-share target based on how often the user selects each one. The share targets used more frequently
-appear at the top of the drop-down list and the target used most often appears directly in the
-action bar as the default share target. By default, the ranking information is saved in a private
-file with a name specified by {@link
-android.support.v7.widget.ShareActionProvider#DEFAULT_SHARE_HISTORY_FILE_NAME}. If you use the
-{@link android.support.v7.widget.ShareActionProvider} or an extension of it for only one type of
-action, then you should continue to use this default history file and there's nothing you need to
-do. However, if you use {@link android.support.v7.widget.ShareActionProvider} or an extension of it
-for multiple actions with semantically different meanings, then each {@link
-android.support.v7.widget.ShareActionProvider} should specify its own history file in order to
-maintain its own history. To specify a different history file for the {@link
-android.support.v7.widget.ShareActionProvider}, call {@link
-android.support.v7.widget.ShareActionProvider#setShareHistoryFileName setShareHistoryFileName()}
-and provide an XML file name (for example, {@code "custom_share_history.xml"}).</p>
-
-
-<p class="note"><strong>Note:</strong> Although the {@link
-android.support.v7.widget.ShareActionProvider} ranks share targets based on frequency of use, the
-behavior is extensible and extensions of {@link android.support.v7.widget.ShareActionProvider} can
-perform different behaviors and ranking based on the history file (if appropriate).</p>
-
-
-
-
-<h3 id="CreatingActionProvider">Creating a custom action provider</h3>
-
-<p>Creating your own action provider allows you to re-use and manage dynamic action item
-behaviors in a self-contained module, rather than handle action item transformations and
-behaviors in your fragment or activity
-code. As shown in the previous section, Android already provides an implementation of {@link
-android.support.v4.view.ActionProvider} for share actions: the {@link
-android.support.v7.widget.ShareActionProvider}.</p>
-
-<p>To create your own action provider for a different action, simply extend the
-{@link android.support.v4.view.ActionProvider} class and implement
-its callback methods as appropriate. Most importantly, you should implement the following:</p>
-
-<dl>
-  <dt>{@link android.support.v4.view.ActionProvider#ActionProvider ActionProvider()}</dt>
-  <dd>This constructor passes you the application {@link android.content.Context}, which you
-should save in a member field to use in the other callback methods.</dd>
-
-  <dt>{@link android.support.v4.view.ActionProvider#onCreateActionView(MenuItem)}</dt>
-  <dd>This is where you define the action view for the item. Use the {@link
-android.content.Context} acquired from the constructor to instantiate a {@link
-android.view.LayoutInflater} and inflate your action view layout from an XML resource, then hook
-up event listeners. For example:
-<pre>
-public View onCreateActionView(MenuItem forItem) {
-    // Inflate the action view to be shown on the action bar.
-    LayoutInflater layoutInflater = LayoutInflater.from(mContext);
-    View view = layoutInflater.inflate(R.layout.action_provider, null);
-    ImageButton button = (ImageButton) view.findViewById(R.id.button);
-    button.setOnClickListener(new View.OnClickListener() {
-        &#064;Override
-        public void onClick(View v) {
-            // Do something...
-        }
-    });
-    return view;
-}
-</pre>
-</dd>
-
-  <dt>{@link android.support.v4.view.ActionProvider#onPerformDefaultAction()}</dt>
-  <dd>The system calls this when the menu item is selected from the action overflow and the
-action provider should perform a default action for the menu item.
-  <p>However, if your action provider provides a submenu, through the {@link
-android.support.v4.view.ActionProvider#onPrepareSubMenu onPrepareSubMenu()} callback, then the
-submenu appears even when the action provider is placed in the action overflow. Thus, {@link
-android.support.v4.view.ActionProvider#onPerformDefaultAction()} is never called when there is a
-submenu.</p>
-
-  <p class="note"><strong>Note:</strong> An activity or a fragment that implements {@link
-android.app.Activity#onOptionsItemSelected onOptionsItemSelected()} can override the action
-provider's default behavior (unless it uses a submenu) by handling the item-selected event (and
-returning <code>true</code>), in which case, the system does not call {@link
-android.support.v4.view.ActionProvider#onPerformDefaultAction()}.</p>
-
-</dd>
-</dl>
-
-<p>For an example extension of {@link android.view.ActionProvider}, see <a
-href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/ActionBarSettingsActionProviderActivity.html"
->ActionBarSettingsActionProviderActivity</a>.</p>
-
-
-
-
-<h2 id="Tabs">Adding Navigation Tabs</h2>
-
-<img src="{@docRoot}images/ui/actionbar-tabs@2x.png" width="760" alt="" />
-<p class="img-caption"><strong>Figure 7.</strong> Action bar tabs on a wide screen.</p>
-
-<a class="notice-designers" href="{@docRoot}design/building-blocks/tabs.html">
-  <div>
-    <h3>Design Guide</h3>
-    <p>Tabs</p>
-  </div>
-</a>
-
-<a class="notice-developers" href="{@docRoot}training/implementing-navigation/lateral.html">
-  <div>
-    <h3>Also read</h3>
-    <p>Creating Swipe Views with Tabs</p>
-  </div>
-</a>
-
-
-<div class="figure" style="width:240px">
-  <img src="{@docRoot}images/ui/actionbar-tabs-stacked@2x.png" width="240" alt="" />
-  <p class="img-caption"><strong>Figure 8.</strong> Tabs on a narrow screen.</p>
-</div>
-
-<p>Tabs in the action bar make it easy for users to explore and switch between different views in
-your app. The tabs provided by the {@link android.support.v7.app.ActionBar} are ideal because they
-adapt to different screen sizes. For example, when the screen is wide enough the tabs appear in the
-action bar alongside the action buttons (such as when on a tablet, shown in figure 7), while when
-on a narrow screen they appear in a separate bar (known as the "stacked action bar", shown in
-figure 8). In some cases, the Android system will instead show your tab items as a drop-down list
-to ensure the best fit in the action bar.</p>
-
-<p>To get started, your layout must include a {@link android.view.ViewGroup} in which you place
-each {@link android.app.Fragment} associated with a tab. Be sure the {@link android.view.ViewGroup}
-has a resource ID so you can reference it from your code and swap the tabs within it.
-</p>
-
-<p>Once you determine where the fragments appear in the layout, the basic procedure to add tabs
-is:</p>
-<ol>
-  <li>Implement the {@link android.support.v7.app.ActionBar.TabListener} interface. This interface
-  provides callbacks for tab events, such as when the user presses one so you can swap the
-  tabs.</li>
-  <li>For each tab you want to add, instantiate an {@link android.support.v7.app.ActionBar.Tab}
-  and set the {@link android.support.v7.app.ActionBar.TabListener} by calling {@link
-  android.support.v7.app.ActionBar.Tab#setTabListener setTabListener()}. Also set the tab's title
-  and with {@link android.app.ActionBar.Tab#setText setText()} (and optionally, an icon with
-  {@link android.app.ActionBar.Tab#setIcon setIcon()}).</li>
-  <li>Then add each tab to the action bar by calling {@link android.support.v7.app.ActionBar#addTab
-  addTab()}.</li>
-</ol>
-
-<p>Notice that the {@link android.support.v7.app.ActionBar.TabListener}
-callback methods don't specify which fragment is associated with the tab, but merely which
-{@link android.support.v7.app.ActionBar.Tab} was selected.
-You must define your own association
-between each {@link android.app.ActionBar.Tab} and the appropriate {@link android.app.Fragment} that
-it represents. There are several ways you
-can define the association, depending on your design.</p>
-
-<p>For example, here's how you might implement the {@link android.app.ActionBar.TabListener}
-such that each tab uses its own instance of the listener:</p>
-<pre>
-public static class TabListener&lt;T extends Fragment> implements ActionBar.TabListener {
-    private Fragment mFragment;
-    private final Activity mActivity;
-    private final String mTag;
-    private final Class&lt;T> mClass;
-
-    /** Constructor used each time a new tab is created.
-      * @param activity  The host Activity, used to instantiate the fragment
-      * @param tag  The identifier tag for the fragment
-      * @param clz  The fragment's Class, used to instantiate the fragment
-      */
-    public TabListener(Activity activity, String tag, Class&lt;T> clz) {
-        mActivity = activity;
-        mTag = tag;
-        mClass = clz;
-    }
-
-    /* The following are each of the {@link android.app.ActionBar.TabListener} callbacks */
-
-    public void onTabSelected(Tab tab, FragmentTransaction ft) {
-        // Check if the fragment is already initialized
-        if (mFragment == null) {
-            // If not, instantiate and add it to the activity
-            mFragment = Fragment.instantiate(mActivity, mClass.getName());
-            ft.add(android.R.id.content, mFragment, mTag);
-        } else {
-            // If it exists, simply attach it in order to show it
-            ft.attach(mFragment);
-        }
-    }
-
-    public void onTabUnselected(Tab tab, FragmentTransaction ft) {
-        if (mFragment != null) {
-            // Detach the fragment, because another one is being attached
-            ft.detach(mFragment);
-        }
-    }
-
-    public void onTabReselected(Tab tab, FragmentTransaction ft) {
-        // User selected the already selected tab. Usually do nothing.
-    }
-}
-</pre>
-
-<p class="caution"><strong>Caution:</strong> You <strong>must not</strong> call {@link
-android.app.FragmentTransaction#commit} for the fragment transaction in each of these
-callbacks&mdash;the system calls it for you and it may throw an exception if you call it yourself.
-You also <strong>cannot</strong> add these fragment transactions to the back stack.</p>
-
-<p>In this example, the listener simply attaches ({@link android.app.FragmentTransaction#attach
-attach()}) a fragment to the activity layout&mdash;or if not instantiated, creates the fragment and
-adds ({@link android.app.FragmentTransaction#add add()}) it to the layout (as a child of the {@code
-android.R.id.content} view group)&mdash;when the respective tab is selected, and detaches ({@link
-android.app.FragmentTransaction#detach detach()}) it when the tab is unselected.</p>
-
-<p>All that remains is to create each {@link android.app.ActionBar.Tab} and add it to the {@link
-android.app.ActionBar}. Additionally, you must call {@link
-android.app.ActionBar#setNavigationMode(int) setNavigationMode(NAVIGATION_MODE_TABS)} to make the
-tabs visible.</p>
-
-<p>For example, the following code adds two tabs using the listener defined above:</p>
-
-<pre>
-&#64;Override
-protected void onCreate(Bundle savedInstanceState) {
-    super.onCreate(savedInstanceState);
-    // Notice that setContentView() is not used, because we use the root
-    // android.R.id.content as the container for each fragment
-
-    // setup action bar for tabs
-    ActionBar actionBar = getSupportActionBar();
-    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
-    actionBar.setDisplayShowTitleEnabled(false);
-
-    Tab tab = actionBar.newTab()
-                       .setText(R.string.artist)
-                       .setTabListener(new TabListener&lt;ArtistFragment>(
-                               this, "artist", ArtistFragment.class));
-    actionBar.addTab(tab);
-
-    tab = actionBar.newTab()
-                   .setText(R.string.album)
-                   .setTabListener(new TabListener&lt;AlbumFragment>(
-                           this, "album", AlbumFragment.class));
-    actionBar.addTab(tab);
-}
-</pre>
-
-
-<p>If your activity stops, you should retain the currently selected tab with the <a href=
-"{@docRoot}guide/components/activities.html#SavingActivityState">saved instance state</a> so you
-can open the appropriate tab when the user returns. When it's time to save the state, you can query
-the currently selected tab with {@link
-android.support.v7.app.ActionBar#getSelectedNavigationIndex()}. This returns the index position of
-the selected tab.</p>
-
-
-<p class="caution"><strong>Caution:</strong> It's important that you save the state of each fragment
-so when users switch fragments with the tabs and then return to a previous
-fragment, it looks the way it did when they left. Some of the state is saved by default, but you
-may need to manually save state for customized views. For information about saving the state of your
-fragment, see the <a href="{@docRoot}guide/components/fragments.html">Fragments</a>
-API guide.</p>
-
-<p class="note"><strong>Note:</strong> The above implementation for {@link
-android.support.v7.app.ActionBar.TabListener} is one of several possible techniques. Another popular
-option is to use {@link android.support.v4.view.ViewPager} to manage the fragments so users
-can also use a swipe gesture to switch tabs. In this case, you simply tell the
-{@link android.support.v4.view.ViewPager} the current tab position in the
-{@link android.support.v7.app.ActionBar.TabListener#onTabSelected onTabSelected()} callback.
-For more information, read
-<a href="{@docRoot}training/implementing-navigation/lateral.html"
->Creating Swipe Views with Tabs</a>.</p>
-
-
-
-
-
-<h2 id="Dropdown">Adding Drop-down Navigation</h2>
-
-<div class="figure" style="width:240px">
-  <img src="{@docRoot}images/ui/actionbar-dropdown@2x.png" alt="" width="240" />
-  <p class="img-caption"><strong>Figure 9.</strong> A drop-down navigation list in the
-action bar.</p>
-</div>
-
-<p>As another mode of navigation (or filtering) for your activity, the action bar offers a built
-in drop-down list (also known as a "spinner"). For example, the drop-down list can offer different
-modes by which content in the activity is sorted.</p>
-
-<p>Using the drop-down list is useful when changing the content is important but not necessarily a
-frequent occurrence. In cases where switching the content is more frequent,
-you should use <a href="#Tabs">navigation tabs</a> instead.</p>
-
-
-<p>The basic procedure to enable drop-down navigation is:</p>
-
-<ol>
-  <li>Create a {@link android.widget.SpinnerAdapter} that provides the
-list of selectable items for the drop-down and the layout to use when drawing each item in the
-list.</li>
-  <li>Implement {@link android.support.v7.app.ActionBar.OnNavigationListener} to define the
-  behavior that occurs when the user selects an item from the list.</li>
-  <li>During your activity's {@link android.app.Activity#onCreate
-onCreate()} method, enable the action bar's drop-down list by calling {@link
-android.support.v7.app.ActionBar#setNavigationMode setNavigationMode(NAVIGATION_MODE_LIST)}.
-  </li>
-  <li>Set the callback for the drop-down list with {@link
-android.support.v7.app.ActionBar#setListNavigationCallbacks setListNavigationCallbacks()}.
-For example:
-<pre>
-actionBar.setListNavigationCallbacks(mSpinnerAdapter, mNavigationCallback);
-</pre>
-<p>This method takes your {@link android.widget.SpinnerAdapter} and {@link
-android.support.v7.app.ActionBar.OnNavigationListener}.</p>
-</li>
-</ol>
-
-<p>This procedure is relatively short, but implementing the {@link android.widget.SpinnerAdapter}
-and {@link android.app.ActionBar.OnNavigationListener} is where most of the work is done. There are
-many ways you can implement these to define the functionality for your drop-down navigation and
-implementing various types of {@link android.widget.SpinnerAdapter} is beyond the scope of this
-document (you should refer to the {@link android.widget.SpinnerAdapter} class reference for more
-information). However, below is an example for a {@link android.widget.SpinnerAdapter} and {@link
-android.app.ActionBar.OnNavigationListener} to get you started (click the title to reveal the
-sample).</p>
-
-
-
-<div class="toggle-content closed">
-
-  <h3 id="Spinner"><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" />
-    Example SpinnerAdapter and OnNavigationListener
-  </a></h3>
-
-  <div class="toggle-content-toggleme">
-
-<p>{@link android.widget.SpinnerAdapter} is an adapter that provides data for a spinner widget,
-such as the drop-down list in the action bar. {@link android.widget.SpinnerAdapter} is an interface
-that you can implement, but Android includes some useful implementations that you can extend, such
-as {@link android.widget.ArrayAdapter} and {@link
-android.widget.SimpleCursorAdapter}. For example, here's an easy way to create a {@link
-android.widget.SpinnerAdapter} by using {@link android.widget.ArrayAdapter} implementation, which
-uses a string array as the data source:</p>
-
-<pre>
-SpinnerAdapter mSpinnerAdapter = ArrayAdapter.createFromResource(this,
-        R.array.action_list, android.R.layout.simple_spinner_dropdown_item);
-</pre>
-
-<p>The {@link android.widget.ArrayAdapter#createFromResource createFromResource()} method takes
-three parameters: the application {@link android.content.Context}, the resource ID for the string
-array, and the layout to use for each list item.</p>
-
-<p>A <a href="{@docRoot}guide/topics/resources/string-resource.html#StringArray">string array</a>
-defined in a resource looks like this:</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;resources&gt;
-    &lt;string-array name="action_list"&gt;
-        &lt;item&gt;Mercury&lt;/item&gt;
-        &lt;item&gt;Venus&lt;/item&gt;
-        &lt;item&gt;Earth&lt;/item&gt;
-    &lt;/string-array&gt;
-&lt;/resources&gt;
-</pre>
-
-<p>The {@link android.widget.ArrayAdapter} returned by {@link
-android.widget.ArrayAdapter#createFromResource createFromResource()} is complete and ready for you
-to pass it to {@link android.app.ActionBar#setListNavigationCallbacks setListNavigationCallbacks()}
-(in step 4 from above). Before you do, though, you need to create the {@link
-android.app.ActionBar.OnNavigationListener OnNavigationListener}.</p>
-
-
-<p>Your implementation of {@link android.app.ActionBar.OnNavigationListener} is where you handle
-fragment changes or other modifications to your activity when the user selects an item from the
-drop-down list. There's only one callback method to implement in the listener: {@link
-android.app.ActionBar.OnNavigationListener#onNavigationItemSelected onNavigationItemSelected()}.</p>
-
-<p>The {@link
-android.app.ActionBar.OnNavigationListener#onNavigationItemSelected onNavigationItemSelected()}
-method receives the position of the item in the list and a unique item ID provided by the {@link
-android.widget.SpinnerAdapter}.</p>
-
-<p>Here's an example that instantiates an anonymous implementation of {@link
-android.app.ActionBar.OnNavigationListener OnNavigationListener}, which inserts a {@link
-android.app.Fragment} into the
-layout container identified by {@code R.id.fragment_container}:</p>
-
-<pre>
-mOnNavigationListener = new OnNavigationListener() {
-  // Get the same strings provided for the drop-down's ArrayAdapter
-  String[] strings = getResources().getStringArray(R.array.action_list);
-
-  &#64;Override
-  public boolean onNavigationItemSelected(int position, long itemId) {
-    // Create new fragment from our own Fragment class
-    ListContentFragment newFragment = new ListContentFragment();
-    FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
-
-    // Replace whatever is in the fragment container with this fragment
-    // and give the fragment a tag name equal to the string at the position
-    // selected
-    ft.replace(R.id.fragment_container, newFragment, strings[position]);
-
-    // Apply changes
-    ft.commit();
-    return true;
-  }
-};
-</pre>
-
-<p>This instance of {@link android.app.ActionBar.OnNavigationListener OnNavigationListener} is
-complete and you can now call {@link android.app.ActionBar#setListNavigationCallbacks
-setListNavigationCallbacks()} (in step 4), passing the {@link android.widget.ArrayAdapter} and this
-{@link android.app.ActionBar.OnNavigationListener OnNavigationListener}.</p>
-
-<p>In this example, when the user selects an item from the drop-down list, a fragment is added to
-the layout (replacing the current fragment in the {@code R.id.fragment_container} view). The
-fragment added is given a tag that uniquely identifies it, which is the same string used to
-identify the fragment in the drop-down list.</p>
-
-<p>Here's a look at the {@code ListContentFragment} class that defines each fragment in this
-example:</p>
-
-<pre>
-public class ListContentFragment extends Fragment {
-    private String mText;
-
-    &#64;Override
-    public void onAttach(Activity activity) {
-      // This is the first callback received; here we can set the text for
-      // the fragment as defined by the tag specified during the fragment
-      // transaction
-      super.onAttach(activity);
-      mText = getTag();
-    }
-
-    &#64;Override
-    public View onCreateView(LayoutInflater inflater, ViewGroup container,
-            Bundle savedInstanceState) {
-        // This is called to define the layout for the fragment;
-        // we just create a TextView and set its text to be the fragment tag
-        TextView text = new TextView(getActivity());
-        text.setText(mText);
-        return text;
-    }
-}
-</pre>
-
-  </div><!-- end toggle-content-toggleme -->
-
-</div><!-- end toggle-content -->
-
-
-
-
-
-
-
-<h2 id="Style">Styling the Action Bar</h2>
-
-<p>If you want to implement a visual design that represents your app's brand, the action bar allows
-you to customize each detail of its appearance, including the action bar color, text colors, button
-styles, and more. To do so, you need to use Android's <a href=
-"{@docRoot}guide/topics/ui/themes.html">style and theme</a> framework to restyle the action bar
-using special style properties.</p>
-
-<p class="caution"><strong>Caution:</strong> For all background drawables you provide, be sure to
-use <a href="{@docRoot}guide/topics/graphics/2d-graphics.html#nine-patch">Nine-Patch drawables</a>
-to allow stretching. The nine-patch image should be <em>smaller</em> than 40dp tall and 30dp
-wide.</p>
-
-
-
-<h3 id="GeneralStyles">General appearance</h3>
-
-<dl>
-  <dt>{@link android.R.attr#actionBarStyle
-      actionBarStyle}</dt>
-  <dd>Specifies a style resource that defines various style properties
-  for the action bar.
-      <p>The default for this style for this
-      is {@link android.support.v7.appcompat.R.style#Widget_AppCompat_ActionBar
-      Widget.AppCompat.ActionBar}, which is what you should use as the parent style.</p>
-      <p>Supported styles include:</p>
-    <dl>
-      <dt>{@link android.R.attr#background}</dt>
-        <dd>Defines a drawable resource for the action bar background.</dd>
-      <dt>{@link android.R.attr#backgroundStacked}</dt>
-        <dd>Defines a drawable resource for the stacked action bar
-          (the <a href="#Tabs">tabs</a>).</dd>
-      <dt>{@link android.R.attr#backgroundSplit}</dt>
-        <dd>Defines a drawable resource for the <a href="#SplitBar">split action bar</a>.</dd>
-      <dt>{@link android.R.attr#actionButtonStyle}</dt>
-        <dd>Defines a style resource for action buttons.
-          <p>The default for this style for this
-      is {@link android.support.v7.appcompat.R.style#Widget_AppCompat_ActionButton
-      Widget.AppCompat.ActionButton}, which is what you should use as the parent style.</p>
-        </dd>
-      <dt>{@link android.R.attr#actionOverflowButtonStyle}</dt>
-        <dd>Defines a style resource for overflow action items.
-          <p>The default for this style for this
-      is {@link android.support.v7.appcompat.R.style#Widget_AppCompat_ActionButton_Overflow
-      Widget.AppCompat.ActionButton.Overflow}, which is what you should use as the parent style.</p>
-        </dd>
-      <dt>{@link android.R.attr#displayOptions}</dt>
-        <dd>Defines one or more action bar display options, such as whether to use the app logo,
-        show the activity title, or enable the <em>Up</em> action. See {@link
-        android.R.attr#displayOptions} for all possible values.
-      <dt>{@link android.R.attr#divider}</dt>
-        <dd>Defines a drawable resource for the divider between action items.</dd>
-      <dt>{@link android.R.attr#titleTextStyle}</dt>
-        <dd>Defines a style resource for the action bar title.
-          <p>The default for this style for this
-      is {@link android.support.v7.appcompat.R.style#TextAppearance_AppCompat_Widget_ActionBar_Title
-      TextAppearance.AppCompat.Widget.ActionBar.Title}, which is what you should use as the parent
-      style.</p></dd>
-    </dl>
-  </dd>
-
-  <dt>{@link android.R.attr#windowActionBarOverlay
-      windowActionBarOverlay}</dt>
-  <dd>Declares whether the action bar should overlay the activity layout rather than offset the
-activity's layout position (for example, the Gallery app uses overlay mode). This is
-{@code false} by default.
-  <p>Normally, the action bar requires its own space on the screen and your activity layout fills in
-what's left over. When the action bar is in overlay mode, your activity layout uses all the
-available space and the system draws the action bar on top. Overlay mode can be useful if you want
-your content to keep a fixed size and position when the action bar is hidden and shown. You might
-also like to use it purely as a visual effect, because you can use a semi-transparent background
-for the action bar so the user can still see some of your activity layout behind the action
-bar.</p>
-  <p class="note"><strong>Note:</strong> The {@link android.R.style#Theme_Holo Holo} theme families
-draw the action bar with a semi-transparent background by default. However, you can modify it with
-your own styles and the {@link android.R.style#Theme_DeviceDefault DeviceDefault} theme on
-different devices might use an opaque background by default.</p>
-  <p>When overlay mode is enabled, your activity layout has no awareness of the action bar lying on
-top of it. So, you must be careful not to place any important information or UI components in the
-area overlaid by the action bar. If appropriate, you can refer to the platform's value for {@link
-android.R.attr#actionBarSize} to determine the height of the action bar, by referencing it
-in your XML layout. For example:</p>
-<pre>
-&lt;SomeView
-    ...
-    android:layout_marginTop="?android:attr/actionBarSize" /&gt;
-</pre>
-  <p>You can also retrieve the action bar height at runtime with {@link
-android.app.ActionBar#getHeight()}. This reflects the height of the action bar at the time it's
-called, which might not include the stacked action bar (due to navigation tabs) if called during
-early activity lifecycle methods. To see how you can determine the total height at runtime,
-including the stacked action bar, see the <a href=
-"{@docRoot}resources/samples/HoneycombGallery/src/com/example/android/hcgallery/TitlesFragment.html">
-{@code TitlesFragment}</a> class in the <a href=
-"{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb Gallery</a> sample app.</p>
-
-</dd>
-
-</dl>
-
-
-<h3 id="ActionItemStyles">Action items</h3>
-
-<dl>
-  <dt>{@link android.R.attr#actionButtonStyle
-      actionButtonStyle}</dt>
-  <dd>Defines a style resource for the action item buttons.
-      <p>The default for this style for this
-  is {@link android.support.v7.appcompat.R.style#Widget_AppCompat_ActionButton
-  Widget.AppCompat.ActionButton}, which is what you should use as the parent style.</p></dd>
-
-  <dt>{@link android.R.attr#actionBarItemBackground
-      actionBarItemBackground}</dt>
-  <dd>Defines a drawable resource for each action item's background.
-    This should be a <a href="{@docRoot}guide/topics/resources/drawable-resource.html#StateList"
-    >state-list drawable</a> to indicate different selected states.</dd>
-
-  <dt>{@link android.R.attr#itemBackground
-      itemBackground}</dt>
-  <dd>Defines a drawable resource for each action overflow item's background.
-    This should be a <a href="{@docRoot}guide/topics/resources/drawable-resource.html#StateList"
-    >state-list drawable</a> to indicate different selected states.</dd>
-
-  <dt>{@link android.R.attr#actionBarDivider
-      actionBarDivider}</dt>
-  <dd>Defines a drawable resource for the divider between action items.</dd>
-
-  <dt>{@link android.R.attr#actionMenuTextColor
-      actionMenuTextColor}</dt>
-  <dd>Defines a color for text that appears in an action item.</dd>
-
-  <dt>{@link android.R.attr#actionMenuTextAppearance
-      actionMenuTextAppearance}</dt>
-  <dd>Defines a style resource for text that appears in an action item.</dd>
-
-  <dt>{@link android.R.attr#actionBarWidgetTheme
-      actionBarWidgetTheme}</dt>
-  <dd>Defines a theme resource for widgets that are inflated into the action bar as <a
-href="#ActionView">action views</a>.</dd>
-</dl>
-
-
-<h3 id="NavigationStyles">Navigation tabs</h3>
-
-<dl>
-  <dt>{@link android.R.attr#actionBarTabStyle
-      actionBarTabStyle}</dt>
-  <dd>Defines a style resource for tabs in the action bar.
-      <p>The default for this style for this
-  is {@link android.support.v7.appcompat.R.style#Widget_AppCompat_ActionBar_TabView
-  Widget.AppCompat.ActionBar.TabView}, which is what you should use as the parent style.</p></dd>
-
-  <dt>{@link android.R.attr#actionBarTabBarStyle
-      actionBarTabBarStyle}</dt>
-  <dd>Defines a style resource for the thin bar that appears below the navigation tabs.
-      <p>The default for this style for this
-  is {@link android.support.v7.appcompat.R.style#Widget_AppCompat_ActionBar_TabBar
-  Widget.AppCompat.ActionBar.TabBar}, which is what you should use as the parent style.</p></dd>
-
-  <dt>{@link android.R.attr#actionBarTabTextStyle
-      actionBarTabTextStyle}</dt>
-  <dd>Defines a style resource for text in the navigation tabs.
-      <p>The default for this style for this
-  is {@link android.support.v7.appcompat.R.style#Widget_AppCompat_ActionBar_TabText
-  Widget.AppCompat.ActionBar.TabText}, which is what you should use as the parent style.</p></dd>
-</dl>
-
-
-<h3 id="DropDownStyles">Drop-down lists</h3>
-
-<dl>
-  <dt>{@link android.R.attr#actionDropDownStyle
-      actionDropDownStyle}</dt>
-  <dd>Defines a style for the drop-down navigation (such as the background and text styles).
-      <p>The default for this style for this
-  is {@link android.support.v7.appcompat.R.style#Widget_AppCompat_Spinner_DropDown_ActionBar
-  Widget.AppCompat.Spinner.DropDown.ActionBar}, which is what you should use as the parent
-  style.</p></dd>
-</dl>
-
-
-<h3 id="StyleExample">Example theme</h3>
-
-<p>Here's an example that defines a custom theme for an activity, {@code CustomActivityTheme},
-that includes several styles to customize the action bar.</p>
-
-<p>Notice that there are two versions for each action bar style property. The first one
-includes the {@code android:} prefix on the property name to support API levels 11 and higher
-that include these properties in the framework. The second version does <em>not</em>
-include the {@code android:} prefix and is for older versions of the platform, on which
-the system uses the style property from the support library. The effect for each is the same.</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?>
-&lt;resources>
-    &lt;!-- the theme applied to the application or activity -->
-    &lt;style name="CustomActionBarTheme"
-           parent="&#64;style/Theme.AppCompat.Light">
-        &lt;item name="android:actionBarStyle">&#64;style/MyActionBar&lt;/item>
-        &lt;item name="android:actionBarTabTextStyle">&#64;style/TabTextStyle&lt;/item>
-        &lt;item name="android:actionMenuTextColor">&#64;color/actionbar_text&lt;/item>
-
-        &lt;!-- Support library compatibility -->
-        &lt;item name="actionBarStyle">&#64;style/MyActionBar&lt;/item>
-        &lt;item name="actionBarTabTextStyle">&#64;style/TabTextStyle&lt;/item>
-        &lt;item name="actionMenuTextColor">&#64;color/actionbar_text&lt;/item>
-    &lt;/style>
-
-    &lt;!-- general styles for the action bar -->
-    &lt;style name="MyActionBar"
-           parent="&#64;style/Widget.AppCompat.ActionBar">
-        &lt;item name="android:titleTextStyle">&#64;style/TitleTextStyle&lt;/item>
-        &lt;item name="android:background">&#64;drawable/actionbar_background&lt;/item>
-        &lt;item name="android:backgroundStacked">&#64;drawable/actionbar_background&lt;/item>
-        &lt;item name="android:backgroundSplit">&#64;drawable/actionbar_background&lt;/item>
-
-        &lt;!-- Support library compatibility -->
-        &lt;item name="titleTextStyle">&#64;style/TitleTextStyle&lt;/item>
-        &lt;item name="background">&#64;drawable/actionbar_background&lt;/item>
-        &lt;item name="backgroundStacked">&#64;drawable/actionbar_background&lt;/item>
-        &lt;item name="backgroundSplit">&#64;drawable/actionbar_background&lt;/item>
-    &lt;/style>
-
-    &lt;!-- action bar title text -->
-    &lt;style name="TitleTextStyle"
-           parent="&#64;style/TextAppearance.AppCompat.Widget.ActionBar.Title">
-        &lt;item name="android:textColor">&#64;color/actionbar_text&lt;/item>
-    &lt;/style>
-
-    &lt;!-- action bar tab text -->
-    &lt;style name="TabTextStyle"
-           parent="&#64;style/Widget.AppCompat.ActionBar.TabText">
-        &lt;item name="android:textColor">&#64;color/actionbar_text&lt;/item>
-    &lt;/style>
-&lt;/resources>
-
-</pre>
-
-<p>In your manifest file, you can apply the theme to your entire app:</p>
-
-<pre>
-&lt;application android:theme="&#64;style/CustomActionBarTheme" ... />
-</pre>
-
-<p>Or to individual activities:</p>
-
-<pre>
-&lt;activity android:theme="&#64;style/CustomActionBarTheme" ... />
-</pre>
-
-
-<p class="caution"><strong>Caution:</strong> Be certain that each theme and style declares a parent
-theme in the {@code <style>} tag, from which it inherits all styles not explicitly declared
-by your theme. When modifying the action bar, using a parent theme is important so that you can
-simply override the action bar styles you want to change without re-implementing the styles you
-want to leave alone (such as text size or padding in action items).</p>
-
-<p>For more information about using style and theme resources in your application, read <a
-href="{@docRoot}guide/topics/ui/themes.html">Styles and Themes</a>.</p>
-
-
-
diff --git a/docs/html/guide/topics/ui/custom-components.jd b/docs/html/guide/topics/ui/custom-components.jd
old mode 100644
new mode 100755
index b146098..b7249c5
--- a/docs/html/guide/topics/ui/custom-components.jd
+++ b/docs/html/guide/topics/ui/custom-components.jd
@@ -451,7 +451,7 @@
 perfect example, and the APIs for doing this might change from this early
 preview, but it does demonstrate the principles.</p>
 <p>If you haven't done so already, import the 
-NotePad sample into Eclipse (or
+NotePad sample into Android Studio (or
 just look at the source using the link provided). In particular look at the definition of
 <code>MyEditText</code> in the <a
 href="{@docRoot}resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html">NoteEditor.java</a>
diff --git a/docs/html/guide/topics/ui/declaring-layout.jd b/docs/html/guide/topics/ui/declaring-layout.jd
old mode 100644
new mode 100755
index ab105fd..2d4134d
--- a/docs/html/guide/topics/ui/declaring-layout.jd
+++ b/docs/html/guide/topics/ui/declaring-layout.jd
@@ -54,9 +54,6 @@
 <div class="sidebox-wrapper">
 <div class="sidebox">
   <ul>
-  <li>The <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT
-  Plugin for Eclipse</a> offers a layout preview of your XML &mdash;
-  with the XML file opened, select the <strong>Layout</strong> tab.</li>
   <li>You should also try the
   <a href="{@docRoot}tools/debugging/debugging-ui.html#hierarchyViewer">Hierarchy Viewer</a> tool,
   for debugging layouts &mdash; it reveals layout property values,
@@ -76,8 +73,7 @@
 <code>EditText.setText()</code>. </p>
 
 <p class="note"><strong>Tip:</strong> Learn more about different layout types in <a href="{@docRoot}guide/topics/ui/layout-objects.html">Common
-Layout Objects</a>. There are also a collection of tutorials on building various layouts in the
-<a href="{@docRoot}resources/tutorials/views/index.html">Hello Views</a> tutorial guide.</p>
+Layout Objects</a>.</p>
 
 <h2 id="write">Write the XML</h2>
 
diff --git a/docs/html/guide/topics/ui/drag-drop.jd b/docs/html/guide/topics/ui/drag-drop.jd
index 9d8aa9b..4eb54f2 100644
--- a/docs/html/guide/topics/ui/drag-drop.jd
+++ b/docs/html/guide/topics/ui/drag-drop.jd
@@ -643,7 +643,7 @@
         // Defines a callback that sends the drag shadow dimensions and touch point back to the
         // system.
         &#64;Override
-        public void onProvideShadowMetrics (Point size, Point touch)
+        public void onProvideShadowMetrics (Point size, Point touch) {
             // Defines local variables
             private int width, height;
 
diff --git a/docs/html/guide/topics/ui/index.jd b/docs/html/guide/topics/ui/index.jd
index f342b06..0725eb7 100644
--- a/docs/html/guide/topics/ui/index.jd
+++ b/docs/html/guide/topics/ui/index.jd
@@ -1,6 +1,6 @@
 page.title=User Interface
 page.landing=true
-page.landing.intro=Your app's user interface is everything that the user can see and interact with. Android provides a variety of pre-build UI components such as structured layout objects and UI controls that allow you to build the graphical user interface for your app. Android also provides other UI modules for special interfaces such as dialogs, notifications, and menus.  
+page.landing.intro=Your app's user interface is everything that the user can see and interact with. Android provides a variety of pre-built UI components such as structured layout objects and UI controls that allow you to build the graphical user interface for your app. Android also provides other UI modules for special interfaces such as dialogs, notifications, and menus.  
 page.landing.image=images/ui/ui_index.png
 page.landing.next=overview.html
 
@@ -10,7 +10,7 @@
 
   <div class="col-6">
     <h3>Blog Articles</h3>
-    
+
     <a href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">
       <h4>Say Goodbye to the Menu Button</h4>
       <p>As Ice Cream Sandwich rolls out to more devices, it’s important that you begin to migrate
@@ -35,7 +35,7 @@
 
   <div class="col-6">
     <h3>Training</h3>
-    
+
     <a href="http://developer.android.com/training/implementing-navigation/index.html">
       <h4>Implementing Effective Navigation</h4>
       <p>This class shows you how to plan out the high-level screen hierarchy for your application
diff --git a/docs/html/guide/topics/ui/layout/linear.jd b/docs/html/guide/topics/ui/layout/linear.jd
index f4babfe0..7441782 100644
--- a/docs/html/guide/topics/ui/layout/linear.jd
+++ b/docs/html/guide/topics/ui/layout/linear.jd
@@ -58,7 +58,7 @@
 href="{@docRoot}reference/android/widget/LinearLayout.LayoutParams.html#attr_android:layout_weight"
 >{@code android:layout_weight}</a> attribute.
 This attribute assigns an "importance" value to a view in
-terms of how much space is should occupy on the screen. A larger weight value allows it to expand
+terms of how much space it should occupy on the screen. A larger weight value allows it to expand
 to fill any remaining space in the parent view. 
 Child views can specify a weight value, and then any remaining space in the view group is
 assigned to children in the proportion of their declared weight. Default
diff --git a/docs/html/guide/topics/ui/menus.jd b/docs/html/guide/topics/ui/menus.jd
index 2c6d0b2..11e84f1 100644
--- a/docs/html/guide/topics/ui/menus.jd
+++ b/docs/html/guide/topics/ui/menus.jd
@@ -47,7 +47,7 @@
 
   <h2>See also</h2>
   <ol>
-    <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a></li>
+    <li><a href="{@docRoot}training/appbar/index.html">Adding the App Bar</a></li>
     <li><a href="{@docRoot}guide/topics/resources/menu-resource.html">Menu Resource</a></li>
     <li><a
 href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">Say
@@ -62,7 +62,7 @@
 
 <p>Beginning with Android 3.0 (API level 11), Android-powered devices are no longer required to
 provide a dedicated <em>Menu</em> button. With this change, Android apps should migrate away from a
-dependence on the traditional 6-item menu panel and instead provide an action bar to present common
+dependence on the traditional 6-item menu panel and instead provide an app bar to present common
 user actions.</p>
 
 <p>Although the design and user experience for some menu items have changed, the semantics to define
@@ -71,14 +71,14 @@
 versions of Android:</p>
 
 <dl>
-  <dt><strong>Options menu and action bar</strong></dt>
+  <dt><strong>Options menu and app bar</strong></dt>
     <dd>The <a href="#options-menu">options menu</a> is the primary collection of menu items for an
 activity. It's where you should place actions that have a global impact on the app, such as
 "Search," "Compose email," and "Settings."
   <p>If you're developing for Android 2.3 or lower, users can
 reveal the options menu panel by pressing the <em>Menu</em> button.</p>
-  <p>On Android 3.0 and higher, items from the options menu are presented by the <a
-href="{@docRoot}guide/topics/ui/actionbar.html">action bar</a> as a combination of on-screen action
+  <p>On Android 3.0 and higher, items from the options menu are presented by the
+  app bar as a combination of on-screen action
 items and overflow options. Beginning with Android 3.0, the <em>Menu</em> button is deprecated (some
 devices
 don't have one), so you should migrate toward using the action bar to provide access to actions and
@@ -141,7 +141,7 @@
 element may contain a nested <code>&lt;menu></code> element in order to create a submenu.</dd>
     
   <dt><code>&lt;group></code></dt>
-    <dd>An optional, invisible container for {@code <item>} elements. It allows you to
+    <dd>An optional, invisible container for {@code &lt;item&gt;} elements. It allows you to
 categorize menu items so they share properties such as active state and visibility. For more
 information, see the section about <a href="#groups">Creating Menu Groups</a>.</dd>
 </dl>
@@ -166,23 +166,23 @@
 
 <dl>
   <dt>{@code android:id}</dt>
-    <dd>A resource ID that's unique to the item, which allows the application can recognize the item
+    <dd>A resource ID that's unique to the item, which allows the application to recognize the item
 when the user selects it.</dd>
   <dt>{@code android:icon}</dt>
     <dd>A reference to a drawable to use as the item's icon.</dd>
   <dt>{@code android:title}</dt>
     <dd>A reference to a string to use as the item's title.</dd>
   <dt>{@code android:showAsAction}</dt>
-    <dd>Specifies when and how this item should appear as an action item in the <a
-href="{@docRoot}guide/topics/ui/actionbar.html">action bar</a>.</dd>
+    <dd>Specifies when and how this item should appear as an action item in the
+      app bar.</dd>
 </dl>
 
 <p>These are the most important attributes you should use, but there are many more available.
 For information about all the supported attributes, see the <a
 href="{@docRoot}guide/topics/resources/menu-resource.html">Menu Resource</a> document.</p>
 
-<p>You can add a submenu to an item in any menu (except a submenu) by adding a {@code <menu>}
-element as the child of an {@code <item>}. Submenus are useful when your application has a lot
+<p>You can add a submenu to an item in any menu (except a submenu) by adding a {@code &lt;menu&gt;}
+element as the child of an {@code &lt;item&gt;}. Submenus are useful when your application has a lot
 of functions that can be organized into topics, like items in a PC application's menu bar (File,
 Edit, View, etc.). For example:</p>
 
@@ -233,25 +233,20 @@
 <em>More</em>.</li>
 
   <li>If you've developed your application for <strong>Android 3.0 (API level 11) and
-higher</strong>, items from the options menu are available in the <a
-href="{@docRoot}guide/topics/ui/actionbar.html">action bar</a>. By default, the system
+higher</strong>, items from the options menu are available in the 
+app bar. By default, the system
 places all items in the action overflow, which the user can reveal with the action overflow icon on
-the right side of the action bar (or by pressing the device <em>Menu</em> button, if available). To
+the right side of the app bar (or by pressing the device <em>Menu</em> button, if available). To
 enable
-quick access to important actions, you can promote a few items to appear in the action bar by adding
-{@code android:showAsAction="ifRoom"} to the corresponding {@code <item>} elements (see figure
-2). <p>For more information about action items and other action bar behaviors, see the <a
-href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> guide. </p>
-<p class="note"><strong>Note:</strong> Even if you're <em>not</em> developing for Android 3.0 or
-higher, you can build your own action bar layout for a similar effect. For an example of how you can
-support older versions of Android with an action bar, see the <a
-href="{@docRoot}resources/samples/ActionBarCompat/index.html">Action Bar Compatibility</a>
-sample.</p>
+quick access to important actions, you can promote a few items to appear in the app bar by adding
+{@code android:showAsAction="ifRoom"} to the corresponding {@code &lt;item&gt;} elements (see figure
+2). <p>For more information about action items and other app bar behaviors, see the <a
+href="{@docRoot}training/appbar/index.html">Adding the App Bar</a> training class. </p>
 </li>
 </ul>
 
 <img src="{@docRoot}images/ui/actionbar.png" alt="" />
-<p class="img-caption"><strong>Figure 2.</strong> Action bar from the <a
+<p class="img-caption"><strong>Figure 2.</strong> App bar from the <a
 href="{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb Gallery</a> app, showing
 navigation tabs and a camera action item (plus the action overflow button).</p>
 
@@ -260,7 +255,7 @@
 declare items for the options menu, they are combined in the UI. The activity's items appear
 first, followed by those of each fragment in the order in which each fragment is added to the
 activity. If necessary, you can re-order the menu items with the {@code android:orderInCategory}
-attribute in each {@code <item>} you need to move.</p>
+attribute in each {@code &lt;item&gt;} you need to move.</p>
 
 <p>To specify the options menu for an activity, override {@link
 android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} (fragments provide their
@@ -285,13 +280,13 @@
 android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} to create the options menu
 when the user opens the menu for the first time. If you've developed for Android 3.0 and higher, the
 system calls {@link android.app.Activity#onCreateOptionsMenu(Menu) onCreateOptionsMenu()} when
-starting the activity, in order to show items to the action bar.</p>
+starting the activity, in order to show items to the app bar.</p>
 
 
 
 <h3 id="RespondingOptionsMenu">Handling click events</h3>
 
-<p>When the user selects an item from the options menu (including action items in the action bar),
+<p>When the user selects an item from the options menu (including action items in the app bar),
 the system calls your activity's {@link android.app.Activity#onOptionsItemSelected(MenuItem)
 onOptionsItemSelected()} method. This method passes the {@link android.view.MenuItem} selected. You
 can identify the item by calling {@link android.view.MenuItem#getItemId()}, which returns the unique
@@ -370,7 +365,7 @@
 button).</p>
 
 <p>On Android 3.0 and higher, the options menu is considered to always be open when menu items are
-presented in the action bar. When an event occurs and you want to perform a menu update, you must
+presented in the app bar. When an event occurs and you want to perform a menu update, you must
 call {@link android.app.Activity#invalidateOptionsMenu invalidateOptionsMenu()} to request that the
 system call {@link android.app.Activity#onPrepareOptionsMenu(Menu) onPrepareOptionsMenu()}.</p>
 
@@ -505,8 +500,8 @@
 or selects the <em>Done</em> action on the left side of the bar.</p>
 
 <p class="note"><strong>Note:</strong> The contextual action bar is not necessarily
-associated with the <a href="{@docRoot}guide/topics/ui/actionbar.html">action bar</a>. They operate
-independently, even though the contextual action bar visually overtakes the action bar
+associated with the app bar. They operate
+independently, even though the contextual action bar visually overtakes the app bar
 position.</p>
 
 <p>If you're developing for Android 3.0 (API level 11) or higher, you
@@ -833,7 +828,7 @@
 android.view.Menu#setGroupCheckable(int,boolean,boolean) setGroupCheckable()}</li>
 </ul>
 
-<p>You can create a group by nesting {@code <item>} elements inside a {@code <group>}
+<p>You can create a group by nesting {@code &lt;item&gt;} elements inside a {@code &lt;group&gt;}
 element in your menu resource or by specifying a group ID with the {@link
 android.view.Menu#add(int,int,int,int) add()} method.</p>
 
@@ -882,8 +877,8 @@
 each time the state changes.</p>
 
 <p>You can define the checkable behavior for individual menu items using the {@code
-android:checkable} attribute in the {@code <item>} element, or for an entire group with
-the {@code android:checkableBehavior} attribute in the {@code <group>} element. For
+android:checkable} attribute in the {@code &lt;item&gt;} element, or for an entire group with
+the {@code android:checkableBehavior} attribute in the {@code &lt;group&gt;} element. For
 example, all items in this menu group are checkable with a radio button:</p>
 
 <pre>
@@ -909,7 +904,7 @@
 </dl>
 
 <p>You can apply a default checked state to an item using the {@code android:checked} attribute in
-the {@code <item>} element and change it in code with the {@link
+the {@code &lt;item&gt;} element and change it in code with the {@link
 android.view.MenuItem#setChecked(boolean) setChecked()} method.</p>
 
 <p>When a checkable item is selected, the system calls your respective item-selected callback method
diff --git a/docs/html/guide/topics/ui/notifiers/notifications.jd b/docs/html/guide/topics/ui/notifiers/notifications.jd
index 976115e..da10dbc 100644
--- a/docs/html/guide/topics/ui/notifiers/notifications.jd
+++ b/docs/html/guide/topics/ui/notifiers/notifications.jd
@@ -107,7 +107,7 @@
 {@link android.support.v4.app.NotificationCompat.Builder#build NotificationCompat.Builder.build()},
 which returns a {@link android.app.Notification} object containing your specifications. To issue the
 notification, you pass the {@link android.app.Notification} object to the system by calling
-{@link android.app.NotificationManager#notify NotificationManager.notify()}.</p>
+{@link android.app.NotificationManager#notify(int, android.app.Notification) NotificationManager.notify()}.</p>
 
 <h3 id="Required">Required notification contents</h3>
 <p>
diff --git a/docs/html/guide/topics/ui/overview.jd b/docs/html/guide/topics/ui/overview.jd
index 41f7cc7..85c5756 100644
--- a/docs/html/guide/topics/ui/overview.jd
+++ b/docs/html/guide/topics/ui/overview.jd
@@ -67,7 +67,7 @@
 android.view.ViewGroup} objects. Android provides several app components that offer
 a standard UI layout for which you simply need to define the content. These UI components each
 have a unique set of APIs that are described in their respective documents, such as <a
-href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a>, <a
+href="{@docRoot}training/appbar/index.html">Adding the App Bar</a>, <a
 href="{@docRoot}guide/topics/ui/dialogs.html">Dialogs</a>, and <a
 href="{@docRoot}guide/topics/ui/notifiers/notifications.html">Status Notifications</a>.</p>
 
diff --git a/docs/html/guide/webapps/debugging.jd b/docs/html/guide/webapps/debugging.jd
old mode 100644
new mode 100755
index 3c95fc2..a74797d
--- a/docs/html/guide/webapps/debugging.jd
+++ b/docs/html/guide/webapps/debugging.jd
@@ -53,9 +53,7 @@
 those written using JavaScript {@code console} APIs.</p>
   <p>To run logcat and view messages, execute
 {@code adb logcat} from your Android SDK {@code tools/} directory, or, from DDMS, select
-<strong>Device > Run logcat</strong>. When using the <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT
-plugin for Eclipse</a>, you can also view logcat messages by opening the Logcat view, available from
-<strong>Window > Show View > Other > Android > Logcat</strong>.</p>
+<strong>Device > Run logcat</strong>.</p>
   <p>See <a href="{@docRoot}tools/debugging/debugging-log.html">Debugging</a>
   for more information about <codelogcat</code>.</p>
 </div>
diff --git a/docs/html/images/ads_hero@2x.jpg b/docs/html/images/ads_hero@2x.jpg
new file mode 100644
index 0000000..e202943
--- /dev/null
+++ b/docs/html/images/ads_hero@2x.jpg
Binary files differ
diff --git a/docs/html/images/ads_hero_17@2x.jpg b/docs/html/images/ads_hero_17@2x.jpg
new file mode 100644
index 0000000..409381a
--- /dev/null
+++ b/docs/html/images/ads_hero_17@2x.jpg
Binary files differ
diff --git a/docs/html/preview/images/direct-share-screen.png b/docs/html/images/android-6.0/direct-share-screen.png
similarity index 100%
rename from docs/html/preview/images/direct-share-screen.png
rename to docs/html/images/android-6.0/direct-share-screen.png
Binary files differ
diff --git a/docs/html/preview/images/direct-share-screen_2x.png b/docs/html/images/android-6.0/direct-share-screen_2x.png
similarity index 100%
rename from docs/html/preview/images/direct-share-screen_2x.png
rename to docs/html/images/android-6.0/direct-share-screen_2x.png
Binary files differ
diff --git a/docs/html/preview/images/fingerprint-screen.png b/docs/html/images/android-6.0/fingerprint-screen.png
similarity index 100%
rename from docs/html/preview/images/fingerprint-screen.png
rename to docs/html/images/android-6.0/fingerprint-screen.png
Binary files differ
diff --git a/docs/html/preview/images/fingerprint-screen_2x.png b/docs/html/images/android-6.0/fingerprint-screen_2x.png
similarity index 100%
rename from docs/html/preview/images/fingerprint-screen_2x.png
rename to docs/html/images/android-6.0/fingerprint-screen_2x.png
Binary files differ
diff --git a/docs/html/preview/images/text-selection.gif b/docs/html/images/android-6.0/text-selection.gif
similarity index 100%
rename from docs/html/preview/images/text-selection.gif
rename to docs/html/images/android-6.0/text-selection.gif
Binary files differ
diff --git a/docs/html/preview/images/work-profile-screen.png b/docs/html/images/android-6.0/work-profile-screen.png
similarity index 100%
rename from docs/html/preview/images/work-profile-screen.png
rename to docs/html/images/android-6.0/work-profile-screen.png
Binary files differ
diff --git a/docs/html/preview/images/work-profile-screen_2x.png b/docs/html/images/android-6.0/work-profile-screen_2x.png
similarity index 100%
rename from docs/html/preview/images/work-profile-screen_2x.png
rename to docs/html/images/android-6.0/work-profile-screen_2x.png
Binary files differ
diff --git a/docs/html/images/brand/Google_Play_Store_48.png b/docs/html/images/brand/Google_Play_Store_48.png
deleted file mode 100644
index 2f0cfe0..0000000
--- a/docs/html/images/brand/Google_Play_Store_48.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/Google_Play_Store_600.png b/docs/html/images/brand/Google_Play_Store_600.png
deleted file mode 100644
index f748652..0000000
--- a/docs/html/images/brand/Google_Play_Store_600.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/Google_Play_Store_96.png b/docs/html/images/brand/Google_Play_Store_96.png
deleted file mode 100644
index 6e2c835..0000000
--- a/docs/html/images/brand/Google_Play_Store_96.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/af_generic_rgb_wo_45.png b/docs/html/images/brand/af_generic_rgb_wo_45.png
deleted file mode 100644
index bf774ab..0000000
--- a/docs/html/images/brand/af_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/af_generic_rgb_wo_60.png b/docs/html/images/brand/af_generic_rgb_wo_60.png
deleted file mode 100644
index 0487c7f..0000000
--- a/docs/html/images/brand/af_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ar_generic_rgb_wo_45.png b/docs/html/images/brand/ar_generic_rgb_wo_45.png
deleted file mode 100644
index c403608..0000000
--- a/docs/html/images/brand/ar_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ar_generic_rgb_wo_60.png b/docs/html/images/brand/ar_generic_rgb_wo_60.png
deleted file mode 100644
index 95e31eb..0000000
--- a/docs/html/images/brand/ar_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/be_generic_rgb_wo_45.png b/docs/html/images/brand/be_generic_rgb_wo_45.png
deleted file mode 100644
index bec6c7a..0000000
--- a/docs/html/images/brand/be_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/be_generic_rgb_wo_60.png b/docs/html/images/brand/be_generic_rgb_wo_60.png
deleted file mode 100644
index 53ad2a11..0000000
--- a/docs/html/images/brand/be_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/bg_generic_rgb_wo_45.png b/docs/html/images/brand/bg_generic_rgb_wo_45.png
deleted file mode 100644
index 9a27471..0000000
--- a/docs/html/images/brand/bg_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/bg_generic_rgb_wo_60.png b/docs/html/images/brand/bg_generic_rgb_wo_60.png
deleted file mode 100644
index 5143a66..0000000
--- a/docs/html/images/brand/bg_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ca_generic_rgb_wo_45.png b/docs/html/images/brand/ca_generic_rgb_wo_45.png
deleted file mode 100644
index 698a4cd..0000000
--- a/docs/html/images/brand/ca_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ca_generic_rgb_wo_60.png b/docs/html/images/brand/ca_generic_rgb_wo_60.png
deleted file mode 100644
index e943de1..0000000
--- a/docs/html/images/brand/ca_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/cs_generic_rgb_wo_45.png b/docs/html/images/brand/cs_generic_rgb_wo_45.png
deleted file mode 100644
index b97b805..0000000
--- a/docs/html/images/brand/cs_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/cs_generic_rgb_wo_60.png b/docs/html/images/brand/cs_generic_rgb_wo_60.png
deleted file mode 100644
index 9656c2e..0000000
--- a/docs/html/images/brand/cs_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/da_generic_rgb_wo_45.png b/docs/html/images/brand/da_generic_rgb_wo_45.png
deleted file mode 100644
index 541ba29..0000000
--- a/docs/html/images/brand/da_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/da_generic_rgb_wo_60.png b/docs/html/images/brand/da_generic_rgb_wo_60.png
deleted file mode 100644
index d974154..0000000
--- a/docs/html/images/brand/da_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/de_app_rgb_wo_45.png b/docs/html/images/brand/de_app_rgb_wo_45.png
deleted file mode 100644
index db48df2..0000000
--- a/docs/html/images/brand/de_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/de_app_rgb_wo_60.png b/docs/html/images/brand/de_app_rgb_wo_60.png
deleted file mode 100644
index 9e0f757..0000000
--- a/docs/html/images/brand/de_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/de_generic_rgb_wo_45.png b/docs/html/images/brand/de_generic_rgb_wo_45.png
deleted file mode 100644
index 1396f79..0000000
--- a/docs/html/images/brand/de_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/de_generic_rgb_wo_60.png b/docs/html/images/brand/de_generic_rgb_wo_60.png
deleted file mode 100644
index f2df4a4..0000000
--- a/docs/html/images/brand/de_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/el_generic_rgb_wo_45.png b/docs/html/images/brand/el_generic_rgb_wo_45.png
deleted file mode 100644
index adaea5f..0000000
--- a/docs/html/images/brand/el_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/el_generic_rgb_wo_60.png b/docs/html/images/brand/el_generic_rgb_wo_60.png
deleted file mode 100644
index 37ae3bc..0000000
--- a/docs/html/images/brand/el_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/en_app_rgb_wo_45.png b/docs/html/images/brand/en_app_rgb_wo_45.png
deleted file mode 100644
index 9891cbb..0000000
--- a/docs/html/images/brand/en_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/en_app_rgb_wo_60.png b/docs/html/images/brand/en_app_rgb_wo_60.png
deleted file mode 100644
index 649e782..0000000
--- a/docs/html/images/brand/en_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/en_generic_rgb_wo_45.png b/docs/html/images/brand/en_generic_rgb_wo_45.png
deleted file mode 100644
index 73dd393..0000000
--- a/docs/html/images/brand/en_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/en_generic_rgb_wo_60.png b/docs/html/images/brand/en_generic_rgb_wo_60.png
deleted file mode 100644
index 9a50aff..0000000
--- a/docs/html/images/brand/en_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/es-419_app_rgb_wo_45.png b/docs/html/images/brand/es-419_app_rgb_wo_45.png
deleted file mode 100644
index 3fb9a3f..0000000
--- a/docs/html/images/brand/es-419_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/es-419_app_rgb_wo_60.png b/docs/html/images/brand/es-419_app_rgb_wo_60.png
deleted file mode 100644
index 1dfb820..0000000
--- a/docs/html/images/brand/es-419_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/es-419_generic_rgb_wo_45.png b/docs/html/images/brand/es-419_generic_rgb_wo_45.png
deleted file mode 100644
index b89274d..0000000
--- a/docs/html/images/brand/es-419_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/es-419_generic_rgb_wo_60.png b/docs/html/images/brand/es-419_generic_rgb_wo_60.png
deleted file mode 100644
index 23d7705..0000000
--- a/docs/html/images/brand/es-419_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/es_app_rgb_wo_45.png b/docs/html/images/brand/es_app_rgb_wo_45.png
deleted file mode 100644
index ad5e61a..0000000
--- a/docs/html/images/brand/es_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/es_app_rgb_wo_60.png b/docs/html/images/brand/es_app_rgb_wo_60.png
deleted file mode 100644
index 6796ad3..0000000
--- a/docs/html/images/brand/es_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/es_generic_rgb_wo_45.png b/docs/html/images/brand/es_generic_rgb_wo_45.png
deleted file mode 100644
index b89274d..0000000
--- a/docs/html/images/brand/es_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/es_generic_rgb_wo_60.png b/docs/html/images/brand/es_generic_rgb_wo_60.png
deleted file mode 100644
index 23d7705..0000000
--- a/docs/html/images/brand/es_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/et_generic_rgb_wo_45.png b/docs/html/images/brand/et_generic_rgb_wo_45.png
deleted file mode 100644
index 0e267381..0000000
--- a/docs/html/images/brand/et_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/et_generic_rgb_wo_60.png b/docs/html/images/brand/et_generic_rgb_wo_60.png
deleted file mode 100644
index a99dee1..0000000
--- a/docs/html/images/brand/et_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/fa_generic_rgb_wo_45.png b/docs/html/images/brand/fa_generic_rgb_wo_45.png
deleted file mode 100644
index 25827f6..0000000
--- a/docs/html/images/brand/fa_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/fa_generic_rgb_wo_60.png b/docs/html/images/brand/fa_generic_rgb_wo_60.png
deleted file mode 100644
index 5118909..0000000
--- a/docs/html/images/brand/fa_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/fi_generic_rgb_wo_45.png b/docs/html/images/brand/fi_generic_rgb_wo_45.png
deleted file mode 100644
index 93dc4fc..0000000
--- a/docs/html/images/brand/fi_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/fi_generic_rgb_wo_60.png b/docs/html/images/brand/fi_generic_rgb_wo_60.png
deleted file mode 100644
index 95eff07..0000000
--- a/docs/html/images/brand/fi_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/fil_generic_rgb_wo_45.png b/docs/html/images/brand/fil_generic_rgb_wo_45.png
deleted file mode 100644
index 7e74e62..0000000
--- a/docs/html/images/brand/fil_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/fil_generic_rgb_wo_60.png b/docs/html/images/brand/fil_generic_rgb_wo_60.png
deleted file mode 100644
index 8f02743..0000000
--- a/docs/html/images/brand/fil_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/fr_app_rgb_wo_45.png b/docs/html/images/brand/fr_app_rgb_wo_45.png
deleted file mode 100644
index 14219e3..0000000
--- a/docs/html/images/brand/fr_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/fr_app_rgb_wo_60.png b/docs/html/images/brand/fr_app_rgb_wo_60.png
deleted file mode 100644
index af58843..0000000
--- a/docs/html/images/brand/fr_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/fr_generic_rgb_wo_45.png b/docs/html/images/brand/fr_generic_rgb_wo_45.png
deleted file mode 100644
index 3e1768f..0000000
--- a/docs/html/images/brand/fr_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/fr_generic_rgb_wo_60.png b/docs/html/images/brand/fr_generic_rgb_wo_60.png
deleted file mode 100644
index 5c307f5..0000000
--- a/docs/html/images/brand/fr_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/hr_generic_rgb_wo_45.png b/docs/html/images/brand/hr_generic_rgb_wo_45.png
deleted file mode 100644
index b8acaac..0000000
--- a/docs/html/images/brand/hr_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/hr_generic_rgb_wo_60.png b/docs/html/images/brand/hr_generic_rgb_wo_60.png
deleted file mode 100644
index 4fe6c7b..0000000
--- a/docs/html/images/brand/hr_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/hu_generic_rgb_wo_45.png b/docs/html/images/brand/hu_generic_rgb_wo_45.png
deleted file mode 100644
index 3b2184d..0000000
--- a/docs/html/images/brand/hu_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/hu_generic_rgb_wo_60.png b/docs/html/images/brand/hu_generic_rgb_wo_60.png
deleted file mode 100644
index d6572be..0000000
--- a/docs/html/images/brand/hu_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/id-in_generic_rgb_wo_45.png b/docs/html/images/brand/id-in_generic_rgb_wo_45.png
deleted file mode 100644
index 17ce069..0000000
--- a/docs/html/images/brand/id-in_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/id-in_generic_rgb_wo_60.png b/docs/html/images/brand/id-in_generic_rgb_wo_60.png
deleted file mode 100644
index ad067ce..0000000
--- a/docs/html/images/brand/id-in_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/it_app_rgb_wo_45.png b/docs/html/images/brand/it_app_rgb_wo_45.png
deleted file mode 100644
index 16a137e..0000000
--- a/docs/html/images/brand/it_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/it_app_rgb_wo_60.png b/docs/html/images/brand/it_app_rgb_wo_60.png
deleted file mode 100644
index 27123dc..0000000
--- a/docs/html/images/brand/it_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/it_generic_rgb_wo_45.png b/docs/html/images/brand/it_generic_rgb_wo_45.png
deleted file mode 100644
index ee5f85e..0000000
--- a/docs/html/images/brand/it_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/it_generic_rgb_wo_60.png b/docs/html/images/brand/it_generic_rgb_wo_60.png
deleted file mode 100644
index 03ea5ba..0000000
--- a/docs/html/images/brand/it_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/iw-he_generic_rgb_wo_45.png b/docs/html/images/brand/iw-he_generic_rgb_wo_45.png
deleted file mode 100644
index 1d03c77..0000000
--- a/docs/html/images/brand/iw-he_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/iw-he_generic_rgb_wo_60.png b/docs/html/images/brand/iw-he_generic_rgb_wo_60.png
deleted file mode 100644
index decfdae..0000000
--- a/docs/html/images/brand/iw-he_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ja_app_rgb_wo_45.png b/docs/html/images/brand/ja_app_rgb_wo_45.png
deleted file mode 100644
index 6af7582..0000000
--- a/docs/html/images/brand/ja_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ja_app_rgb_wo_60.png b/docs/html/images/brand/ja_app_rgb_wo_60.png
deleted file mode 100644
index e197e12..0000000
--- a/docs/html/images/brand/ja_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ja_generic_rgb_wo_45.png b/docs/html/images/brand/ja_generic_rgb_wo_45.png
deleted file mode 100644
index 5f5281a..0000000
--- a/docs/html/images/brand/ja_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ja_generic_rgb_wo_60.png b/docs/html/images/brand/ja_generic_rgb_wo_60.png
deleted file mode 100644
index fcb4c9c..0000000
--- a/docs/html/images/brand/ja_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ko_app_rgb_wo_45.png b/docs/html/images/brand/ko_app_rgb_wo_45.png
deleted file mode 100644
index f0b427e..0000000
--- a/docs/html/images/brand/ko_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ko_app_rgb_wo_60.png b/docs/html/images/brand/ko_app_rgb_wo_60.png
deleted file mode 100644
index 6ccb673..0000000
--- a/docs/html/images/brand/ko_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ko_generic_rgb_wo_45.png b/docs/html/images/brand/ko_generic_rgb_wo_45.png
deleted file mode 100644
index 61ae04a..0000000
--- a/docs/html/images/brand/ko_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ko_generic_rgb_wo_60.png b/docs/html/images/brand/ko_generic_rgb_wo_60.png
deleted file mode 100644
index 9c14e36..0000000
--- a/docs/html/images/brand/ko_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/lt_generic_rgb_wo_45.png b/docs/html/images/brand/lt_generic_rgb_wo_45.png
deleted file mode 100644
index 96564d5..0000000
--- a/docs/html/images/brand/lt_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/lt_generic_rgb_wo_60.png b/docs/html/images/brand/lt_generic_rgb_wo_60.png
deleted file mode 100644
index 2c6c1bf..0000000
--- a/docs/html/images/brand/lt_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/lv_generic_rgb_wo_45.png b/docs/html/images/brand/lv_generic_rgb_wo_45.png
deleted file mode 100644
index 8182ca5..0000000
--- a/docs/html/images/brand/lv_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/lv_generic_rgb_wo_60.png b/docs/html/images/brand/lv_generic_rgb_wo_60.png
deleted file mode 100644
index 5c0b3d2..0000000
--- a/docs/html/images/brand/lv_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ms_generic_rgb_wo_45.png b/docs/html/images/brand/ms_generic_rgb_wo_45.png
deleted file mode 100644
index d6ccc6b..0000000
--- a/docs/html/images/brand/ms_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ms_generic_rgb_wo_60.png b/docs/html/images/brand/ms_generic_rgb_wo_60.png
deleted file mode 100644
index 6e1c34d..0000000
--- a/docs/html/images/brand/ms_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/nl_app_rgb_wo_45.png b/docs/html/images/brand/nl_app_rgb_wo_45.png
deleted file mode 100644
index f06ed04..0000000
--- a/docs/html/images/brand/nl_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/nl_app_rgb_wo_60.png b/docs/html/images/brand/nl_app_rgb_wo_60.png
deleted file mode 100644
index f2c797d..0000000
--- a/docs/html/images/brand/nl_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/nl_generic_rgb_wo_45.png b/docs/html/images/brand/nl_generic_rgb_wo_45.png
deleted file mode 100644
index 6b5826d..0000000
--- a/docs/html/images/brand/nl_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/nl_generic_rgb_wo_60.png b/docs/html/images/brand/nl_generic_rgb_wo_60.png
deleted file mode 100644
index cb11afda..0000000
--- a/docs/html/images/brand/nl_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/no_generic_rgb_wo_45.png b/docs/html/images/brand/no_generic_rgb_wo_45.png
deleted file mode 100644
index fb390d8..0000000
--- a/docs/html/images/brand/no_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/no_generic_rgb_wo_60.png b/docs/html/images/brand/no_generic_rgb_wo_60.png
deleted file mode 100644
index e83dce7..0000000
--- a/docs/html/images/brand/no_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/pl_generic_rgb_wo_45.png b/docs/html/images/brand/pl_generic_rgb_wo_45.png
deleted file mode 100644
index 78caded..0000000
--- a/docs/html/images/brand/pl_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/pl_generic_rgb_wo_60.png b/docs/html/images/brand/pl_generic_rgb_wo_60.png
deleted file mode 100644
index 2d956fb..0000000
--- a/docs/html/images/brand/pl_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/pt-br_app_rgb_wo_45.png b/docs/html/images/brand/pt-br_app_rgb_wo_45.png
deleted file mode 100644
index 065998b..0000000
--- a/docs/html/images/brand/pt-br_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/pt-br_app_rgb_wo_60.png b/docs/html/images/brand/pt-br_app_rgb_wo_60.png
deleted file mode 100644
index 1ce0a6c..0000000
--- a/docs/html/images/brand/pt-br_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/pt-br_generic_rgb_wo_45.png b/docs/html/images/brand/pt-br_generic_rgb_wo_45.png
deleted file mode 100644
index a661d44..0000000
--- a/docs/html/images/brand/pt-br_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/pt-br_generic_rgb_wo_60.png b/docs/html/images/brand/pt-br_generic_rgb_wo_60.png
deleted file mode 100644
index 402af71..0000000
--- a/docs/html/images/brand/pt-br_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/pt-pt_app_rgb_wo_45.png b/docs/html/images/brand/pt-pt_app_rgb_wo_45.png
deleted file mode 100644
index 0b50959..0000000
--- a/docs/html/images/brand/pt-pt_app_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/pt-pt_app_rgb_wo_60.png b/docs/html/images/brand/pt-pt_app_rgb_wo_60.png
deleted file mode 100644
index 65dd887..0000000
--- a/docs/html/images/brand/pt-pt_app_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/pt-pt_generic_rgb_wo_45.png b/docs/html/images/brand/pt-pt_generic_rgb_wo_45.png
deleted file mode 100644
index a616cf1..0000000
--- a/docs/html/images/brand/pt-pt_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/pt-pt_generic_rgb_wo_60.png b/docs/html/images/brand/pt-pt_generic_rgb_wo_60.png
deleted file mode 100644
index 36a7b83..0000000
--- a/docs/html/images/brand/pt-pt_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ro_generic_rgb_wo_45.png b/docs/html/images/brand/ro_generic_rgb_wo_45.png
deleted file mode 100644
index c18a548..0000000
--- a/docs/html/images/brand/ro_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ro_generic_rgb_wo_60.png b/docs/html/images/brand/ro_generic_rgb_wo_60.png
deleted file mode 100644
index b8f3433..0000000
--- a/docs/html/images/brand/ro_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ru_generic_rgb_wo_45.png b/docs/html/images/brand/ru_generic_rgb_wo_45.png
deleted file mode 100644
index c049ddb..0000000
--- a/docs/html/images/brand/ru_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/ru_generic_rgb_wo_60.png b/docs/html/images/brand/ru_generic_rgb_wo_60.png
deleted file mode 100644
index e00c276..0000000
--- a/docs/html/images/brand/ru_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/sk_generic_rgb_wo_45.png b/docs/html/images/brand/sk_generic_rgb_wo_45.png
deleted file mode 100644
index 27ce06a..0000000
--- a/docs/html/images/brand/sk_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/sk_generic_rgb_wo_60.png b/docs/html/images/brand/sk_generic_rgb_wo_60.png
deleted file mode 100644
index 8591f2c..0000000
--- a/docs/html/images/brand/sk_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/sl_generic_rgb_wo_45.png b/docs/html/images/brand/sl_generic_rgb_wo_45.png
deleted file mode 100644
index 115a99d..0000000
--- a/docs/html/images/brand/sl_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/sl_generic_rgb_wo_60.png b/docs/html/images/brand/sl_generic_rgb_wo_60.png
deleted file mode 100644
index 37c2e52..0000000
--- a/docs/html/images/brand/sl_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/sr_generic_rgb_wo_45.png b/docs/html/images/brand/sr_generic_rgb_wo_45.png
deleted file mode 100644
index 86dba47..0000000
--- a/docs/html/images/brand/sr_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/sr_generic_rgb_wo_60.png b/docs/html/images/brand/sr_generic_rgb_wo_60.png
deleted file mode 100644
index 67806da..0000000
--- a/docs/html/images/brand/sr_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/sv_generic_rgb_wo_45.png b/docs/html/images/brand/sv_generic_rgb_wo_45.png
deleted file mode 100644
index fb390d8..0000000
--- a/docs/html/images/brand/sv_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/sv_generic_rgb_wo_60.png b/docs/html/images/brand/sv_generic_rgb_wo_60.png
deleted file mode 100644
index e83dce7..0000000
--- a/docs/html/images/brand/sv_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/sw_generic_rgb_wo_45.png b/docs/html/images/brand/sw_generic_rgb_wo_45.png
deleted file mode 100644
index c7deecc..0000000
--- a/docs/html/images/brand/sw_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/sw_generic_rgb_wo_60.png b/docs/html/images/brand/sw_generic_rgb_wo_60.png
deleted file mode 100644
index 9c0d057..0000000
--- a/docs/html/images/brand/sw_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/th_generic_rgb_wo_45.png b/docs/html/images/brand/th_generic_rgb_wo_45.png
deleted file mode 100644
index 803b6c5..0000000
--- a/docs/html/images/brand/th_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/th_generic_rgb_wo_60.png b/docs/html/images/brand/th_generic_rgb_wo_60.png
deleted file mode 100644
index 6e36e02..0000000
--- a/docs/html/images/brand/th_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/tr_generic_rgb_wo_45.png b/docs/html/images/brand/tr_generic_rgb_wo_45.png
deleted file mode 100644
index baa8394..0000000
--- a/docs/html/images/brand/tr_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/tr_generic_rgb_wo_60.png b/docs/html/images/brand/tr_generic_rgb_wo_60.png
deleted file mode 100644
index 63fa31f..0000000
--- a/docs/html/images/brand/tr_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/uk_generic_rgb_wo_45.png b/docs/html/images/brand/uk_generic_rgb_wo_45.png
deleted file mode 100644
index 68c111f..0000000
--- a/docs/html/images/brand/uk_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/uk_generic_rgb_wo_60.png b/docs/html/images/brand/uk_generic_rgb_wo_60.png
deleted file mode 100644
index 918d70a..0000000
--- a/docs/html/images/brand/uk_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/vi_generic_rgb_wo_45.png b/docs/html/images/brand/vi_generic_rgb_wo_45.png
deleted file mode 100644
index e39d00a..0000000
--- a/docs/html/images/brand/vi_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/vi_generic_rgb_wo_60.png b/docs/html/images/brand/vi_generic_rgb_wo_60.png
deleted file mode 100644
index ba1e9a0..0000000
--- a/docs/html/images/brand/vi_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/zh-cn_generic_rgb_wo_45.png b/docs/html/images/brand/zh-cn_generic_rgb_wo_45.png
deleted file mode 100644
index c7748de..0000000
--- a/docs/html/images/brand/zh-cn_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/zh-cn_generic_rgb_wo_60.png b/docs/html/images/brand/zh-cn_generic_rgb_wo_60.png
deleted file mode 100644
index 0a0f91a..0000000
--- a/docs/html/images/brand/zh-cn_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/zh-hk_generic_rgb_wo_45.png b/docs/html/images/brand/zh-hk_generic_rgb_wo_45.png
deleted file mode 100644
index c3d064c..0000000
--- a/docs/html/images/brand/zh-hk_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/zh-hk_generic_rgb_wo_60.png b/docs/html/images/brand/zh-hk_generic_rgb_wo_60.png
deleted file mode 100644
index 2b072de..0000000
--- a/docs/html/images/brand/zh-hk_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/zh-tw_generic_rgb_wo_45.png b/docs/html/images/brand/zh-tw_generic_rgb_wo_45.png
deleted file mode 100644
index 7bb2b09..0000000
--- a/docs/html/images/brand/zh-tw_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/zh-tw_generic_rgb_wo_60.png b/docs/html/images/brand/zh-tw_generic_rgb_wo_60.png
deleted file mode 100644
index 0797c84b..0000000
--- a/docs/html/images/brand/zh-tw_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/zu_generic_rgb_wo_45.png b/docs/html/images/brand/zu_generic_rgb_wo_45.png
deleted file mode 100644
index 1e9f7c7..0000000
--- a/docs/html/images/brand/zu_generic_rgb_wo_45.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/brand/zu_generic_rgb_wo_60.png b/docs/html/images/brand/zu_generic_rgb_wo_60.png
deleted file mode 100644
index 09f521b..0000000
--- a/docs/html/images/brand/zu_generic_rgb_wo_60.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/build.png b/docs/html/images/build.png
index bf4cf4e..94cc21b 100644
--- a/docs/html/images/build.png
+++ b/docs/html/images/build.png
Binary files differ
diff --git a/docs/html/images/cards/admob-analytics_2x.png b/docs/html/images/cards/admob-analytics_2x.png
new file mode 100644
index 0000000..5c024b5
--- /dev/null
+++ b/docs/html/images/cards/admob-analytics_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-assist_16-9_2x.png b/docs/html/images/cards/card-assist_16-9_2x.png
new file mode 100644
index 0000000..a016367
--- /dev/null
+++ b/docs/html/images/cards/card-assist_16-9_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-doze_16-9_2x.png b/docs/html/images/cards/card-doze_16-9_2x.png
new file mode 100644
index 0000000..0db640f
--- /dev/null
+++ b/docs/html/images/cards/card-doze_16-9_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-install-banners_16x9_2x.png b/docs/html/images/cards/card-install-banners_16x9_2x.png
new file mode 100644
index 0000000..09ebc30
--- /dev/null
+++ b/docs/html/images/cards/card-install-banners_16x9_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-apis_2x.png b/docs/html/images/cards/card-n-apis_2x.png
new file mode 100644
index 0000000..296ea6c
--- /dev/null
+++ b/docs/html/images/cards/card-n-apis_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-changes_2x.png b/docs/html/images/cards/card-n-changes_2x.png
new file mode 100644
index 0000000..7d08e37
--- /dev/null
+++ b/docs/html/images/cards/card-n-changes_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-downloads_2x.png b/docs/html/images/cards/card-n-downloads_2x.png
new file mode 100644
index 0000000..febc661
--- /dev/null
+++ b/docs/html/images/cards/card-n-downloads_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-overview_2x.png b/docs/html/images/cards/card-n-overview_2x.png
new file mode 100644
index 0000000..2c7392a
--- /dev/null
+++ b/docs/html/images/cards/card-n-overview_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-samples_2x.png b/docs/html/images/cards/card-n-samples_2x.png
new file mode 100644
index 0000000..d6621eb
--- /dev/null
+++ b/docs/html/images/cards/card-n-samples_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-sdk_2x.png b/docs/html/images/cards/card-n-sdk_2x.png
new file mode 100644
index 0000000..05d2eb9
--- /dev/null
+++ b/docs/html/images/cards/card-n-sdk_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-support_2x.png b/docs/html/images/cards/card-n-support_2x.png
new file mode 100644
index 0000000..0aec6cf
--- /dev/null
+++ b/docs/html/images/cards/card-n-support_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-studio-modules_crop_2x.png b/docs/html/images/cards/card-studio-modules_crop_2x.png
new file mode 100644
index 0000000..98ddf1f
--- /dev/null
+++ b/docs/html/images/cards/card-studio-modules_crop_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-user-ids_2x.png b/docs/html/images/cards/card-user-ids_2x.png
new file mode 100644
index 0000000..d27098d
--- /dev/null
+++ b/docs/html/images/cards/card-user-ids_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-user-permissions_2x.png b/docs/html/images/cards/card-user-permissions_2x.png
new file mode 100644
index 0000000..899dc3d
--- /dev/null
+++ b/docs/html/images/cards/card-user-permissions_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-user_2x.png b/docs/html/images/cards/card-user_2x.png
new file mode 100644
index 0000000..2888356
--- /dev/null
+++ b/docs/html/images/cards/card-user_2x.png
Binary files differ
diff --git a/docs/html/images/cards/course-nanodegree_2x.png b/docs/html/images/cards/course-nanodegree_2x.png
deleted file mode 100644
index 8f99703..0000000
--- a/docs/html/images/cards/course-nanodegree_2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/cards/course-ud825_2x.png b/docs/html/images/cards/course-ud825_2x.png
deleted file mode 100644
index 77f98b5..0000000
--- a/docs/html/images/cards/course-ud825_2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/cards/course-ud875_2x.jpg b/docs/html/images/cards/course-ud875_2x.jpg
deleted file mode 100644
index b7fc8cc..0000000
--- a/docs/html/images/cards/course-ud875_2x.jpg
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/cards/course-ud876_2x.jpg b/docs/html/images/cards/course-ud876_2x.jpg
deleted file mode 100644
index 5f27246..0000000
--- a/docs/html/images/cards/course-ud876_2x.jpg
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/cards/courses/admob_course.png b/docs/html/images/cards/courses/admob_course.png
new file mode 100644
index 0000000..a068a73
--- /dev/null
+++ b/docs/html/images/cards/courses/admob_course.png
Binary files differ
diff --git a/docs/html/images/cards/course-ud855_2x.jpg b/docs/html/images/cards/courses/advanced_android_course.jpg
similarity index 100%
rename from docs/html/images/cards/course-ud855_2x.jpg
rename to docs/html/images/cards/courses/advanced_android_course.jpg
Binary files differ
diff --git a/docs/html/images/cards/courses/android_analytics_course.png b/docs/html/images/cards/courses/android_analytics_course.png
new file mode 100644
index 0000000..1ce1d01
--- /dev/null
+++ b/docs/html/images/cards/courses/android_analytics_course.png
Binary files differ
diff --git a/docs/html/images/cards/courses/android_auto_course.jpg b/docs/html/images/cards/courses/android_auto_course.jpg
new file mode 100644
index 0000000..84cc1f3
--- /dev/null
+++ b/docs/html/images/cards/courses/android_auto_course.jpg
Binary files differ
diff --git a/docs/html/images/cards/course-ud862_2x.jpg b/docs/html/images/cards/courses/android_design_course.jpg
similarity index 100%
rename from docs/html/images/cards/course-ud862_2x.jpg
rename to docs/html/images/cards/courses/android_design_course.jpg
Binary files differ
diff --git a/docs/html/images/cards/course-ud853_2x.jpg b/docs/html/images/cards/courses/android_fundamentals_course.jpg
similarity index 100%
rename from docs/html/images/cards/course-ud853_2x.jpg
rename to docs/html/images/cards/courses/android_fundamentals_course.jpg
Binary files differ
diff --git a/docs/html/images/cards/courses/android_identity_course.png b/docs/html/images/cards/courses/android_identity_course.png
new file mode 100644
index 0000000..e4a47c3
--- /dev/null
+++ b/docs/html/images/cards/courses/android_identity_course.png
Binary files differ
diff --git a/docs/html/images/cards/courses/android_location_course.png b/docs/html/images/cards/courses/android_location_course.png
new file mode 100644
index 0000000..21a2aaa
--- /dev/null
+++ b/docs/html/images/cards/courses/android_location_course.png
Binary files differ
diff --git a/docs/html/images/cards/courses/android_maps_course.png b/docs/html/images/cards/courses/android_maps_course.png
new file mode 100644
index 0000000..70910e9
--- /dev/null
+++ b/docs/html/images/cards/courses/android_maps_course.png
Binary files differ
diff --git a/docs/html/images/cards/courses/android_nanodegree.png b/docs/html/images/cards/courses/android_nanodegree.png
new file mode 100644
index 0000000..fb50494
--- /dev/null
+++ b/docs/html/images/cards/courses/android_nanodegree.png
Binary files differ
diff --git a/docs/html/images/cards/courses/android_performance_course.jpg b/docs/html/images/cards/courses/android_performance_course.jpg
new file mode 100644
index 0000000..a255718
--- /dev/null
+++ b/docs/html/images/cards/courses/android_performance_course.jpg
Binary files differ
diff --git a/docs/html/images/cards/courses/android_tv_cast_course.jpg b/docs/html/images/cards/courses/android_tv_cast_course.jpg
new file mode 100644
index 0000000..4b86310
--- /dev/null
+++ b/docs/html/images/cards/courses/android_tv_cast_course.jpg
Binary files differ
diff --git a/docs/html/images/cards/courses/android_wear_course.jpg b/docs/html/images/cards/courses/android_wear_course.jpg
new file mode 100644
index 0000000..763e647
--- /dev/null
+++ b/docs/html/images/cards/courses/android_wear_course.jpg
Binary files differ
diff --git a/docs/html/images/cards/course-ud837_2x.jpg b/docs/html/images/cards/courses/beginning_android_course.jpg
similarity index 100%
rename from docs/html/images/cards/course-ud837_2x.jpg
rename to docs/html/images/cards/courses/beginning_android_course.jpg
Binary files differ
diff --git a/docs/html/images/cards/course-ud867_2x.jpg b/docs/html/images/cards/courses/gradle_course.jpg
similarity index 100%
rename from docs/html/images/cards/course-ud867_2x.jpg
rename to docs/html/images/cards/courses/gradle_course.jpg
Binary files differ
diff --git a/docs/html/images/cards/course-ud849_2x.jpg b/docs/html/images/cards/courses/mobile_ux_course.jpg
similarity index 100%
rename from docs/html/images/cards/course-ud849_2x.jpg
rename to docs/html/images/cards/courses/mobile_ux_course.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/engage/beta.jpg b/docs/html/images/cards/distribute/engage/beta.jpg
new file mode 100644
index 0000000..40eb901
--- /dev/null
+++ b/docs/html/images/cards/distribute/engage/beta.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/engage/card-game-services.png b/docs/html/images/cards/distribute/engage/card-game-services.png
new file mode 100644
index 0000000..54a3a94
--- /dev/null
+++ b/docs/html/images/cards/distribute/engage/card-game-services.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/concrete-bowling.jpg b/docs/html/images/cards/distribute/stories/concrete-bowling.jpg
new file mode 100644
index 0000000..797da4d
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/concrete-bowling.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/doctor-who-legacy.jpg b/docs/html/images/cards/distribute/stories/doctor-who-legacy.jpg
new file mode 100644
index 0000000..565bdba
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/doctor-who-legacy.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/dots.png b/docs/html/images/cards/distribute/stories/dots.png
new file mode 100644
index 0000000..479f8cb
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/dots.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/g4a-indian-rummy.jpg b/docs/html/images/cards/distribute/stories/g4a-indian-rummy.jpg
new file mode 100644
index 0000000..28dbae2
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/g4a-indian-rummy.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/gameloft-asphalt8.jpg b/docs/html/images/cards/distribute/stories/gameloft-asphalt8.jpg
new file mode 100644
index 0000000..cdf021e
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/gameloft-asphalt8.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/glu-dh.jpg b/docs/html/images/cards/distribute/stories/glu-dh.jpg
new file mode 100644
index 0000000..faf0e65
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/glu-dh.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/glu-eternity-warriors.jpg b/docs/html/images/cards/distribute/stories/glu-eternity-warriors.jpg
new file mode 100644
index 0000000..496efcb
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/glu-eternity-warriors.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/glu-tap-baseball.jpg b/docs/html/images/cards/distribute/stories/glu-tap-baseball.jpg
new file mode 100644
index 0000000..6232786
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/glu-tap-baseball.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/hotheadgames-firefight.jpg b/docs/html/images/cards/distribute/stories/hotheadgames-firefight.jpg
new file mode 100644
index 0000000..1524001
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/hotheadgames-firefight.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/intuit-mint.png b/docs/html/images/cards/distribute/stories/intuit-mint.png
new file mode 100644
index 0000000..39b8f11
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/intuit-mint.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/kongregate-adv-cap.jpg b/docs/html/images/cards/distribute/stories/kongregate-adv-cap.jpg
new file mode 100644
index 0000000..f8c1cd1
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/kongregate-adv-cap.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/kongregate-global-assault.jpg b/docs/html/images/cards/distribute/stories/kongregate-global-assault.jpg
new file mode 100644
index 0000000..ae6115e
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/kongregate-global-assault.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/leos-fortune.jpg b/docs/html/images/cards/distribute/stories/leos-fortune.jpg
new file mode 100644
index 0000000..80703ee
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/leos-fortune.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/noodlecake-super-stickman.jpg b/docs/html/images/cards/distribute/stories/noodlecake-super-stickman.jpg
new file mode 100644
index 0000000..a9f8de0
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/noodlecake-super-stickman.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/remember-the-milk.jpg b/docs/html/images/cards/distribute/stories/remember-the-milk.jpg
new file mode 100644
index 0000000..3415073
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/remember-the-milk.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/rvappstudios-zombie.jpg b/docs/html/images/cards/distribute/stories/rvappstudios-zombie.jpg
new file mode 100644
index 0000000..a78ed60
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/rvappstudios-zombie.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/sayhichat.jpg b/docs/html/images/cards/distribute/stories/sayhichat.jpg
new file mode 100644
index 0000000..33f0dde
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/sayhichat.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/tiny-co.jpg b/docs/html/images/cards/distribute/stories/tiny-co.jpg
new file mode 100644
index 0000000..ad1a689
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/tiny-co.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/two-dots.png b/docs/html/images/cards/distribute/stories/two-dots.png
new file mode 100644
index 0000000..f0e3db4
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/two-dots.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/users/banners.png b/docs/html/images/cards/distribute/users/banners.png
new file mode 100644
index 0000000..ced01ae
--- /dev/null
+++ b/docs/html/images/cards/distribute/users/banners.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/users/experiments.png b/docs/html/images/cards/distribute/users/experiments.png
new file mode 100644
index 0000000..06ea9ab
--- /dev/null
+++ b/docs/html/images/cards/distribute/users/experiments.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/users/user-acquisition.jpg b/docs/html/images/cards/distribute/users/user-acquisition.jpg
new file mode 100644
index 0000000..8704e7a
--- /dev/null
+++ b/docs/html/images/cards/distribute/users/user-acquisition.jpg
Binary files differ
diff --git a/docs/html/images/distribute/appindexing.gif b/docs/html/images/distribute/appindexing.gif
deleted file mode 100644
index 6015d14..0000000
--- a/docs/html/images/distribute/appindexing.gif
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_developer_page.png b/docs/html/images/distribute/googleplay/about_developer_page.png
new file mode 100644
index 0000000..9e28a2f
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_developer_page.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_hero_play-opportunity.png b/docs/html/images/distribute/googleplay/about_hero_play-opportunity.png
new file mode 100644
index 0000000..97598e9
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_hero_play-opportunity.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_hero_play-opportunity_2x.png b/docs/html/images/distribute/googleplay/about_hero_play-opportunity_2x.png
new file mode 100644
index 0000000..9d0109c
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_hero_play-opportunity_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_personalized_home.png b/docs/html/images/distribute/googleplay/about_personalized_home.png
new file mode 100644
index 0000000..af35c35c
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_personalized_home.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_play_store_home.png b/docs/html/images/distribute/googleplay/about_play_store_home.png
new file mode 100644
index 0000000..6e2b52c
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_play_store_home.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_play_store_listing.png b/docs/html/images/distribute/googleplay/about_play_store_listing.png
new file mode 100644
index 0000000..985456a
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_play_store_listing.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_search_results.png b/docs/html/images/distribute/googleplay/about_search_results.png
new file mode 100644
index 0000000..8dbc3f4
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_search_results.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab.png b/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab.png
new file mode 100644
index 0000000..efad065
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab_2x.png b/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab_2x.png
new file mode 100644
index 0000000..b60eed3
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_conversion-funnel.png b/docs/html/images/distribute/googleplay/dev-console_conversion-funnel.png
new file mode 100644
index 0000000..e2d3769
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_conversion-funnel.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_conversion-funnel_2x.png b/docs/html/images/distribute/googleplay/dev-console_conversion-funnel_2x.png
new file mode 100644
index 0000000..531ed86
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_conversion-funnel_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_player-analytics.png b/docs/html/images/distribute/googleplay/dev-console_player-analytics.png
new file mode 100644
index 0000000..aa4f39e
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_player-analytics.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_player-analytics_2x.png b/docs/html/images/distribute/googleplay/dev-console_player-analytics_2x.png
new file mode 100644
index 0000000..b44e7f0
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_player-analytics_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test.png b/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test.png
new file mode 100644
index 0000000..cf8ebca
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test_2x.png b/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test_2x.png
new file mode 100644
index 0000000..dcea50e
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_statistics.png b/docs/html/images/distribute/googleplay/dev-console_statistics.png
new file mode 100644
index 0000000..4bddd1a
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_statistics.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_statistics_2x.png b/docs/html/images/distribute/googleplay/dev-console_statistics_2x.png
new file mode 100644
index 0000000..e1ab470
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_statistics_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment.png b/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment.png
new file mode 100644
index 0000000..52fa217
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment_2x.png b/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment_2x.png
new file mode 100644
index 0000000..ea5d0a4
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/gp-devconsole-home.png b/docs/html/images/distribute/googleplay/gp-devconsole-home.png
new file mode 100644
index 0000000..a1af0ef
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/gp-devconsole-home.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/hero-store-listing-experiment.png b/docs/html/images/distribute/googleplay/hero-store-listing-experiment.png
new file mode 100644
index 0000000..ad54c2a
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/hero-store-listing-experiment.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/hero-store-listing-experiment_2x.png b/docs/html/images/distribute/googleplay/hero-store-listing-experiment_2x.png
new file mode 100644
index 0000000..2925aa5
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/hero-store-listing-experiment_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/hero-IO15-growing-games.jpg b/docs/html/images/distribute/hero-IO15-growing-games.jpg
index c08bd71..f2f6584 100644
--- a/docs/html/images/distribute/hero-IO15-growing-games.jpg
+++ b/docs/html/images/distribute/hero-IO15-growing-games.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-acquisition-devbyte.jpg b/docs/html/images/distribute/hero-acquisition-devbyte.jpg
new file mode 100644
index 0000000..6a533bc
--- /dev/null
+++ b/docs/html/images/distribute/hero-acquisition-devbyte.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-carousel-djit.jpg b/docs/html/images/distribute/hero-carousel-djit.jpg
new file mode 100644
index 0000000..f477dbb
--- /dev/null
+++ b/docs/html/images/distribute/hero-carousel-djit.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-carousel-giftedmom.jpg b/docs/html/images/distribute/hero-carousel-giftedmom.jpg
new file mode 100644
index 0000000..33ac3a5
--- /dev/null
+++ b/docs/html/images/distribute/hero-carousel-giftedmom.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-carousel-sgn.jpg b/docs/html/images/distribute/hero-carousel-sgn.jpg
new file mode 100644
index 0000000..bced6a0
--- /dev/null
+++ b/docs/html/images/distribute/hero-carousel-sgn.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-carousel-wego.jpg b/docs/html/images/distribute/hero-carousel-wego.jpg
new file mode 100644
index 0000000..fd156ef
--- /dev/null
+++ b/docs/html/images/distribute/hero-carousel-wego.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-domain-story.jpg b/docs/html/images/distribute/hero-domain-story.jpg
new file mode 100644
index 0000000..2246de0
--- /dev/null
+++ b/docs/html/images/distribute/hero-domain-story.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-dots-story.jpg b/docs/html/images/distribute/hero-dots-story.jpg
new file mode 100644
index 0000000..2791c7e
--- /dev/null
+++ b/docs/html/images/distribute/hero-dots-story.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-jelly-button.jpg b/docs/html/images/distribute/hero-jelly-button.jpg
index 032755b..3cc40f8 100644
--- a/docs/html/images/distribute/hero-jelly-button.jpg
+++ b/docs/html/images/distribute/hero-jelly-button.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-playtime-opener.jpg b/docs/html/images/distribute/hero-playtime-opener.jpg
new file mode 100644
index 0000000..fbd21bd
--- /dev/null
+++ b/docs/html/images/distribute/hero-playtime-opener.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-rogervoice-story.jpg b/docs/html/images/distribute/hero-rogervoice-story.jpg
new file mode 100644
index 0000000..2e48b55
--- /dev/null
+++ b/docs/html/images/distribute/hero-rogervoice-story.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-secrets-to-app-success.jpg b/docs/html/images/distribute/hero-secrets-to-app-success.jpg
new file mode 100644
index 0000000..4d59e6b
--- /dev/null
+++ b/docs/html/images/distribute/hero-secrets-to-app-success.jpg
Binary files differ
diff --git a/docs/html/images/distribute/secrets_v2_banner.jpg b/docs/html/images/distribute/secrets_v2_banner.jpg
new file mode 100644
index 0000000..cec4d8e
--- /dev/null
+++ b/docs/html/images/distribute/secrets_v2_banner.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/concrete-bowling-icon.png b/docs/html/images/distribute/stories/concrete-bowling-icon.png
new file mode 100644
index 0000000..e81e390
--- /dev/null
+++ b/docs/html/images/distribute/stories/concrete-bowling-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/concrete-bowling-screenshot.png b/docs/html/images/distribute/stories/concrete-bowling-screenshot.png
new file mode 100644
index 0000000..540df1f
--- /dev/null
+++ b/docs/html/images/distribute/stories/concrete-bowling-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/concrete-bowling-screenshot_2x.png b/docs/html/images/distribute/stories/concrete-bowling-screenshot_2x.png
new file mode 100644
index 0000000..0f76df6
--- /dev/null
+++ b/docs/html/images/distribute/stories/concrete-bowling-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/doctor-who-legacy-icon.png b/docs/html/images/distribute/stories/doctor-who-legacy-icon.png
new file mode 100644
index 0000000..4634fa1
--- /dev/null
+++ b/docs/html/images/distribute/stories/doctor-who-legacy-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/doctor-who-legacy-screenshot.png b/docs/html/images/distribute/stories/doctor-who-legacy-screenshot.png
new file mode 100644
index 0000000..7d3eade
--- /dev/null
+++ b/docs/html/images/distribute/stories/doctor-who-legacy-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/doctor-who-legacy-screenshot_2x.png b/docs/html/images/distribute/stories/doctor-who-legacy-screenshot_2x.png
new file mode 100644
index 0000000..556bfcd
--- /dev/null
+++ b/docs/html/images/distribute/stories/doctor-who-legacy-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/dots-icon.png b/docs/html/images/distribute/stories/dots-icon.png
new file mode 100644
index 0000000..721c536
--- /dev/null
+++ b/docs/html/images/distribute/stories/dots-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/dots-screenshot.png b/docs/html/images/distribute/stories/dots-screenshot.png
new file mode 100644
index 0000000..ec95f69
--- /dev/null
+++ b/docs/html/images/distribute/stories/dots-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/dots-screenshot_2x.png b/docs/html/images/distribute/stories/dots-screenshot_2x.png
new file mode 100644
index 0000000..17edb12
--- /dev/null
+++ b/docs/html/images/distribute/stories/dots-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/gameloft-asphalt8-icon.png b/docs/html/images/distribute/stories/gameloft-asphalt8-icon.png
new file mode 100644
index 0000000..27e5219
--- /dev/null
+++ b/docs/html/images/distribute/stories/gameloft-asphalt8-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot.png b/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot.png
new file mode 100644
index 0000000..f55c774
--- /dev/null
+++ b/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot_2x.png b/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot_2x.png
new file mode 100644
index 0000000..2b0c1e3
--- /dev/null
+++ b/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-dh-icon.jpg b/docs/html/images/distribute/stories/glu-dh-icon.jpg
new file mode 100644
index 0000000..2010bf3
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-dh-icon.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-dh-icon_2x.jpg b/docs/html/images/distribute/stories/glu-dh-icon_2x.jpg
new file mode 100644
index 0000000..4f20e72
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-dh-icon_2x.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-dh-screenshot.png b/docs/html/images/distribute/stories/glu-dh-screenshot.png
new file mode 100644
index 0000000..428e66f
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-dh-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-dh-screenshot_2x.png b/docs/html/images/distribute/stories/glu-dh-screenshot_2x.png
new file mode 100644
index 0000000..691a34b
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-dh-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-eternity-warriors-icon.jpg b/docs/html/images/distribute/stories/glu-eternity-warriors-icon.jpg
new file mode 100644
index 0000000..c4b0cd1
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-eternity-warriors-icon.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot.png b/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot.png
new file mode 100644
index 0000000..4b8807e
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot_2x.png b/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot_2x.png
new file mode 100644
index 0000000..b41e917
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-tap-baseball-icon.jpg b/docs/html/images/distribute/stories/glu-tap-baseball-icon.jpg
new file mode 100644
index 0000000..f99710b
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-tap-baseball-icon.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-tap-baseball-screenshot.png b/docs/html/images/distribute/stories/glu-tap-baseball-screenshot.png
new file mode 100644
index 0000000..92aa942
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-tap-baseball-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-tap-baseball-screenshot_2x.png b/docs/html/images/distribute/stories/glu-tap-baseball-screenshot_2x.png
new file mode 100644
index 0000000..df6c8a8
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-tap-baseball-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/hotheadgames-firefight-icon.png b/docs/html/images/distribute/stories/hotheadgames-firefight-icon.png
new file mode 100644
index 0000000..c7592c1
--- /dev/null
+++ b/docs/html/images/distribute/stories/hotheadgames-firefight-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot.png b/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot.png
new file mode 100644
index 0000000..f93010e
--- /dev/null
+++ b/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot_2x.png b/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot_2x.png
new file mode 100644
index 0000000..4761715
--- /dev/null
+++ b/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/indian-rummy-icon.png b/docs/html/images/distribute/stories/indian-rummy-icon.png
new file mode 100644
index 0000000..2e99112
--- /dev/null
+++ b/docs/html/images/distribute/stories/indian-rummy-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/indian-rummy-screenshot.jpg b/docs/html/images/distribute/stories/indian-rummy-screenshot.jpg
new file mode 100644
index 0000000..a446a8a
--- /dev/null
+++ b/docs/html/images/distribute/stories/indian-rummy-screenshot.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/indian-rummy-screenshot_2x.jpg b/docs/html/images/distribute/stories/indian-rummy-screenshot_2x.jpg
new file mode 100644
index 0000000..61943fc
--- /dev/null
+++ b/docs/html/images/distribute/stories/indian-rummy-screenshot_2x.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/intuit-mint-icon.png b/docs/html/images/distribute/stories/intuit-mint-icon.png
new file mode 100644
index 0000000..b09e430
--- /dev/null
+++ b/docs/html/images/distribute/stories/intuit-mint-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/intuit-mint-screenshot.png b/docs/html/images/distribute/stories/intuit-mint-screenshot.png
new file mode 100644
index 0000000..212ae86
--- /dev/null
+++ b/docs/html/images/distribute/stories/intuit-mint-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/intuit-mint-screenshot_2x.png b/docs/html/images/distribute/stories/intuit-mint-screenshot_2x.png
new file mode 100644
index 0000000..39b8f11
--- /dev/null
+++ b/docs/html/images/distribute/stories/intuit-mint-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/kongregate-adv-cap-icon.png b/docs/html/images/distribute/stories/kongregate-adv-cap-icon.png
new file mode 100644
index 0000000..ca8c597
--- /dev/null
+++ b/docs/html/images/distribute/stories/kongregate-adv-cap-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot.png b/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot.png
new file mode 100644
index 0000000..5f751e2
--- /dev/null
+++ b/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot_2x.png b/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot_2x.png
new file mode 100644
index 0000000..cff67dc
--- /dev/null
+++ b/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/kongregate-global-assault-icon.png b/docs/html/images/distribute/stories/kongregate-global-assault-icon.png
new file mode 100644
index 0000000..b93180d
--- /dev/null
+++ b/docs/html/images/distribute/stories/kongregate-global-assault-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/kongregate-global-assault-screenshot.png b/docs/html/images/distribute/stories/kongregate-global-assault-screenshot.png
new file mode 100644
index 0000000..d0709a3
--- /dev/null
+++ b/docs/html/images/distribute/stories/kongregate-global-assault-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/leos-fortune-icon.png b/docs/html/images/distribute/stories/leos-fortune-icon.png
new file mode 100644
index 0000000..390c027
--- /dev/null
+++ b/docs/html/images/distribute/stories/leos-fortune-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/leos-fortune-screenshot.png b/docs/html/images/distribute/stories/leos-fortune-screenshot.png
new file mode 100644
index 0000000..751dffb
--- /dev/null
+++ b/docs/html/images/distribute/stories/leos-fortune-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/leos-fortune-screenshot_2x.png b/docs/html/images/distribute/stories/leos-fortune-screenshot_2x.png
new file mode 100644
index 0000000..d67c9af
--- /dev/null
+++ b/docs/html/images/distribute/stories/leos-fortune-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/noodlecake-super-stickman-icon.png b/docs/html/images/distribute/stories/noodlecake-super-stickman-icon.png
new file mode 100644
index 0000000..2ae6e3f
--- /dev/null
+++ b/docs/html/images/distribute/stories/noodlecake-super-stickman-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot.png b/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot.png
new file mode 100644
index 0000000..9e53537
--- /dev/null
+++ b/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot_2x.png b/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot_2x.png
new file mode 100644
index 0000000..c1e8824
--- /dev/null
+++ b/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/rememberthemilk-icon.png b/docs/html/images/distribute/stories/rememberthemilk-icon.png
new file mode 100644
index 0000000..2e026c0
--- /dev/null
+++ b/docs/html/images/distribute/stories/rememberthemilk-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/rememberthemilk-screenshot.png b/docs/html/images/distribute/stories/rememberthemilk-screenshot.png
new file mode 100644
index 0000000..62b431e
--- /dev/null
+++ b/docs/html/images/distribute/stories/rememberthemilk-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/rememberthemilk-screenshot_2x.png b/docs/html/images/distribute/stories/rememberthemilk-screenshot_2x.png
new file mode 100644
index 0000000..25d0391
--- /dev/null
+++ b/docs/html/images/distribute/stories/rememberthemilk-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/rvappstudios-zombie-icon.png b/docs/html/images/distribute/stories/rvappstudios-zombie-icon.png
new file mode 100644
index 0000000..70c9cb2
--- /dev/null
+++ b/docs/html/images/distribute/stories/rvappstudios-zombie-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot.jpg b/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot.jpg
new file mode 100644
index 0000000..32d93df
--- /dev/null
+++ b/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot_2x.jpg b/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot_2x.jpg
new file mode 100644
index 0000000..2981a2c
--- /dev/null
+++ b/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot_2x.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/sayhichat-icon.png b/docs/html/images/distribute/stories/sayhichat-icon.png
new file mode 100644
index 0000000..2ed7fed
--- /dev/null
+++ b/docs/html/images/distribute/stories/sayhichat-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/sayhichat-screenshot.jpg b/docs/html/images/distribute/stories/sayhichat-screenshot.jpg
new file mode 100644
index 0000000..55a7997
--- /dev/null
+++ b/docs/html/images/distribute/stories/sayhichat-screenshot.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/sayhichat-screenshot_2x.jpg b/docs/html/images/distribute/stories/sayhichat-screenshot_2x.jpg
new file mode 100644
index 0000000..b93e983
--- /dev/null
+++ b/docs/html/images/distribute/stories/sayhichat-screenshot_2x.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/tinyvillage-icon.png b/docs/html/images/distribute/stories/tinyvillage-icon.png
new file mode 100644
index 0000000..313e4d4
--- /dev/null
+++ b/docs/html/images/distribute/stories/tinyvillage-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/tinyvillage-screenshot.png b/docs/html/images/distribute/stories/tinyvillage-screenshot.png
new file mode 100644
index 0000000..e149a76
--- /dev/null
+++ b/docs/html/images/distribute/stories/tinyvillage-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/tinyvillage-screenshot_2x.png b/docs/html/images/distribute/stories/tinyvillage-screenshot_2x.png
new file mode 100644
index 0000000..51948b9
--- /dev/null
+++ b/docs/html/images/distribute/stories/tinyvillage-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/two-dots-icon.png b/docs/html/images/distribute/stories/two-dots-icon.png
new file mode 100644
index 0000000..b75fe51
--- /dev/null
+++ b/docs/html/images/distribute/stories/two-dots-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/two-dots-screenshot.png b/docs/html/images/distribute/stories/two-dots-screenshot.png
new file mode 100644
index 0000000..13ce693
--- /dev/null
+++ b/docs/html/images/distribute/stories/two-dots-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/two-dots-screenshot_2x.png b/docs/html/images/distribute/stories/two-dots-screenshot_2x.png
new file mode 100644
index 0000000..2e34a68
--- /dev/null
+++ b/docs/html/images/distribute/stories/two-dots-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/users/banners.png b/docs/html/images/distribute/users/banners.png
new file mode 100644
index 0000000..44a2418
--- /dev/null
+++ b/docs/html/images/distribute/users/banners.png
Binary files differ
diff --git a/docs/html/images/distribute/users/banners_2x.png b/docs/html/images/distribute/users/banners_2x.png
new file mode 100644
index 0000000..2c1cb46
--- /dev/null
+++ b/docs/html/images/distribute/users/banners_2x.png
Binary files differ
diff --git a/docs/html/images/google/gps-play_games_logo.png b/docs/html/images/google/gps-play_games_logo.png
index 19692fa..9a107b2 100644
--- a/docs/html/images/google/gps-play_games_logo.png
+++ b/docs/html/images/google/gps-play_games_logo.png
Binary files differ
diff --git a/docs/html/images/google/gps-play_games_logo_2x.png b/docs/html/images/google/gps-play_games_logo_2x.png
new file mode 100644
index 0000000..fcc0c27
--- /dev/null
+++ b/docs/html/images/google/gps-play_games_logo_2x.png
Binary files differ
diff --git a/docs/html/images/gp-badges-set.png b/docs/html/images/gp-badges-set.png
index e2e0e94..f1c74a7 100644
--- a/docs/html/images/gp-badges-set.png
+++ b/docs/html/images/gp-badges-set.png
Binary files differ
diff --git a/docs/html/images/home/androidn-hero-n5.png b/docs/html/images/home/androidn-hero-n5.png
new file mode 100644
index 0000000..58c0837
--- /dev/null
+++ b/docs/html/images/home/androidn-hero-n5.png
Binary files differ
diff --git a/docs/html/images/home/n-preview-hero.png b/docs/html/images/home/n-preview-hero.png
new file mode 100644
index 0000000..b9636dd
--- /dev/null
+++ b/docs/html/images/home/n-preview-hero.png
Binary files differ
diff --git a/docs/html/images/home/n-preview-hero_2x.png b/docs/html/images/home/n-preview-hero_2x.png
new file mode 100644
index 0000000..c59d195
--- /dev/null
+++ b/docs/html/images/home/n-preview-hero_2x.png
Binary files differ
diff --git a/docs/html/images/n-preview-updates-narrow_2x.png b/docs/html/images/n-preview-updates-narrow_2x.png
new file mode 100644
index 0000000..cf2ad90
--- /dev/null
+++ b/docs/html/images/n-preview-updates-narrow_2x.png
Binary files differ
diff --git a/docs/html/images/n-preview-updates_2x.png b/docs/html/images/n-preview-updates_2x.png
new file mode 100644
index 0000000..ec64d68
--- /dev/null
+++ b/docs/html/images/n-preview-updates_2x.png
Binary files differ
diff --git a/docs/html/preview/images/perf-test-frame-latency.png b/docs/html/images/performance-testing/perf-test-frame-latency.png
similarity index 100%
rename from docs/html/preview/images/perf-test-frame-latency.png
rename to docs/html/images/performance-testing/perf-test-frame-latency.png
Binary files differ
diff --git a/docs/html/preview/images/perf-test-framestats.png b/docs/html/images/performance-testing/perf-test-framestats.png
similarity index 100%
rename from docs/html/preview/images/perf-test-framestats.png
rename to docs/html/images/performance-testing/perf-test-framestats.png
Binary files differ
diff --git a/docs/html/images/testing/testing-icon.png b/docs/html/images/testing/testing-icon.png
new file mode 100644
index 0000000..41a783b
--- /dev/null
+++ b/docs/html/images/testing/testing-icon.png
Binary files differ
diff --git a/docs/html/images/tools/ai-ilightbulb.png b/docs/html/images/tools/ai-ilightbulb.png
new file mode 100644
index 0000000..e9522f3
--- /dev/null
+++ b/docs/html/images/tools/ai-ilightbulb.png
Binary files differ
diff --git a/docs/html/images/tools/ai-lint.png b/docs/html/images/tools/ai-lint.png
new file mode 100644
index 0000000..2a0aabc
--- /dev/null
+++ b/docs/html/images/tools/ai-lint.png
Binary files differ
diff --git a/docs/html/images/tools/am-alloctracker.png b/docs/html/images/tools/am-alloctracker.png
new file mode 100644
index 0000000..b94713d
--- /dev/null
+++ b/docs/html/images/tools/am-alloctracker.png
Binary files differ
diff --git a/docs/html/images/tools/am-androidmon.png b/docs/html/images/tools/am-androidmon.png
new file mode 100644
index 0000000..fc832b5
--- /dev/null
+++ b/docs/html/images/tools/am-androidmon.png
Binary files differ
diff --git a/docs/html/images/tools/am-cpumon.png b/docs/html/images/tools/am-cpumon.png
new file mode 100644
index 0000000..487c010
--- /dev/null
+++ b/docs/html/images/tools/am-cpumon.png
Binary files differ
diff --git a/docs/html/images/tools/am-domtree.png b/docs/html/images/tools/am-domtree.png
new file mode 100644
index 0000000..8a995af
--- /dev/null
+++ b/docs/html/images/tools/am-domtree.png
Binary files differ
diff --git a/docs/html/images/tools/am-dumpalloc.png b/docs/html/images/tools/am-dumpalloc.png
new file mode 100644
index 0000000..d0d18e7
--- /dev/null
+++ b/docs/html/images/tools/am-dumpalloc.png
Binary files differ
diff --git a/docs/html/images/tools/am-gc.png b/docs/html/images/tools/am-gc.png
new file mode 100644
index 0000000..2ae4858
--- /dev/null
+++ b/docs/html/images/tools/am-gc.png
Binary files differ
diff --git a/docs/html/images/tools/am-gpumon.png b/docs/html/images/tools/am-gpumon.png
new file mode 100644
index 0000000..ed1e3df
--- /dev/null
+++ b/docs/html/images/tools/am-gpumon.png
Binary files differ
diff --git a/docs/html/images/tools/am-hprofanalyzer.png b/docs/html/images/tools/am-hprofanalyzer.png
new file mode 100644
index 0000000..9c2cb43
--- /dev/null
+++ b/docs/html/images/tools/am-hprofanalyzer.png
Binary files differ
diff --git a/docs/html/images/tools/am-hprofviewer.png b/docs/html/images/tools/am-hprofviewer.png
new file mode 100644
index 0000000..342590f
--- /dev/null
+++ b/docs/html/images/tools/am-hprofviewer.png
Binary files differ
diff --git a/docs/html/images/tools/am-ialloctracking.png b/docs/html/images/tools/am-ialloctracking.png
new file mode 100644
index 0000000..dc7ac37
--- /dev/null
+++ b/docs/html/images/tools/am-ialloctracking.png
Binary files differ
diff --git a/docs/html/images/tools/am-iclear.png b/docs/html/images/tools/am-iclear.png
new file mode 100644
index 0000000..aefb365
--- /dev/null
+++ b/docs/html/images/tools/am-iclear.png
Binary files differ
diff --git a/docs/html/images/tools/am-icon.png b/docs/html/images/tools/am-icon.png
new file mode 100644
index 0000000..cd67a6a
--- /dev/null
+++ b/docs/html/images/tools/am-icon.png
Binary files differ
diff --git a/docs/html/images/tools/am-idom.png b/docs/html/images/tools/am-idom.png
new file mode 100644
index 0000000..d15d674
--- /dev/null
+++ b/docs/html/images/tools/am-idom.png
Binary files differ
diff --git a/docs/html/images/tools/am-idownstack.png b/docs/html/images/tools/am-idownstack.png
new file mode 100644
index 0000000..14e1a31
--- /dev/null
+++ b/docs/html/images/tools/am-idownstack.png
Binary files differ
diff --git a/docs/html/images/tools/am-idump.png b/docs/html/images/tools/am-idump.png
new file mode 100644
index 0000000..d364c03
--- /dev/null
+++ b/docs/html/images/tools/am-idump.png
Binary files differ
diff --git a/docs/html/images/tools/am-idumpend.png b/docs/html/images/tools/am-idumpend.png
new file mode 100644
index 0000000..e3261a5
--- /dev/null
+++ b/docs/html/images/tools/am-idumpend.png
Binary files differ
diff --git a/docs/html/images/tools/am-idumpstart.png b/docs/html/images/tools/am-idumpstart.png
new file mode 100644
index 0000000..b6fa667
--- /dev/null
+++ b/docs/html/images/tools/am-idumpstart.png
Binary files differ
diff --git a/docs/html/images/tools/am-igc.png b/docs/html/images/tools/am-igc.png
new file mode 100644
index 0000000..742d27d
--- /dev/null
+++ b/docs/html/images/tools/am-igc.png
Binary files differ
diff --git a/docs/html/images/tools/am-igcroot.png b/docs/html/images/tools/am-igcroot.png
new file mode 100644
index 0000000..6af7355
--- /dev/null
+++ b/docs/html/images/tools/am-igcroot.png
Binary files differ
diff --git a/docs/html/images/tools/am-igear.png b/docs/html/images/tools/am-igear.png
new file mode 100644
index 0000000..e7f8a2b
--- /dev/null
+++ b/docs/html/images/tools/am-igear.png
Binary files differ
diff --git a/docs/html/images/tools/am-ihide.png b/docs/html/images/tools/am-ihide.png
new file mode 100644
index 0000000..d8f5f01
--- /dev/null
+++ b/docs/html/images/tools/am-ihide.png
Binary files differ
diff --git a/docs/html/images/tools/am-ijumptosource.png b/docs/html/images/tools/am-ijumptosource.png
new file mode 100644
index 0000000..5f37477
--- /dev/null
+++ b/docs/html/images/tools/am-ijumptosource.png
Binary files differ
diff --git a/docs/html/images/tools/am-imethodtrace.png b/docs/html/images/tools/am-imethodtrace.png
new file mode 100644
index 0000000..96fe34a
--- /dev/null
+++ b/docs/html/images/tools/am-imethodtrace.png
Binary files differ
diff --git a/docs/html/images/tools/am-ipause.png b/docs/html/images/tools/am-ipause.png
new file mode 100644
index 0000000..258eca8
--- /dev/null
+++ b/docs/html/images/tools/am-ipause.png
Binary files differ
diff --git a/docs/html/images/tools/am-iperformanalysis.png b/docs/html/images/tools/am-iperformanalysis.png
new file mode 100644
index 0000000..58ebcbb
--- /dev/null
+++ b/docs/html/images/tools/am-iperformanalysis.png
Binary files differ
diff --git a/docs/html/images/tools/am-iprint.png b/docs/html/images/tools/am-iprint.png
new file mode 100644
index 0000000..65525a8
--- /dev/null
+++ b/docs/html/images/tools/am-iprint.png
Binary files differ
diff --git a/docs/html/images/tools/am-irestart.png b/docs/html/images/tools/am-irestart.png
new file mode 100644
index 0000000..916402c
--- /dev/null
+++ b/docs/html/images/tools/am-irestart.png
Binary files differ
diff --git a/docs/html/images/tools/am-iscreencapture.png b/docs/html/images/tools/am-iscreencapture.png
new file mode 100644
index 0000000..68135a7
--- /dev/null
+++ b/docs/html/images/tools/am-iscreencapture.png
Binary files differ
diff --git a/docs/html/images/tools/am-iscrollend.png b/docs/html/images/tools/am-iscrollend.png
new file mode 100644
index 0000000..4db6e23
--- /dev/null
+++ b/docs/html/images/tools/am-iscrollend.png
Binary files differ
diff --git a/docs/html/images/tools/am-isearch.png b/docs/html/images/tools/am-isearch.png
new file mode 100644
index 0000000..b792fc3
--- /dev/null
+++ b/docs/html/images/tools/am-isearch.png
Binary files differ
diff --git a/docs/html/images/tools/am-isoftwraps.png b/docs/html/images/tools/am-isoftwraps.png
new file mode 100644
index 0000000..ce0b24f
--- /dev/null
+++ b/docs/html/images/tools/am-isoftwraps.png
Binary files differ
diff --git a/docs/html/images/tools/am-isysteminfo.png b/docs/html/images/tools/am-isysteminfo.png
new file mode 100644
index 0000000..37d77db
--- /dev/null
+++ b/docs/html/images/tools/am-isysteminfo.png
Binary files differ
diff --git a/docs/html/images/tools/am-iterminate.png b/docs/html/images/tools/am-iterminate.png
new file mode 100644
index 0000000..238ba86
--- /dev/null
+++ b/docs/html/images/tools/am-iterminate.png
Binary files differ
diff --git a/docs/html/images/tools/am-iupstack.png b/docs/html/images/tools/am-iupstack.png
new file mode 100644
index 0000000..ca362e9
--- /dev/null
+++ b/docs/html/images/tools/am-iupstack.png
Binary files differ
diff --git a/docs/html/images/tools/am-ivideo.png b/docs/html/images/tools/am-ivideo.png
new file mode 100644
index 0000000..901eaf1
--- /dev/null
+++ b/docs/html/images/tools/am-ivideo.png
Binary files differ
diff --git a/docs/html/images/tools/am-logcatmon.png b/docs/html/images/tools/am-logcatmon.png
new file mode 100644
index 0000000..b0de41a
--- /dev/null
+++ b/docs/html/images/tools/am-logcatmon.png
Binary files differ
diff --git a/docs/html/images/tools/am-methodtrace.png b/docs/html/images/tools/am-methodtrace.png
new file mode 100644
index 0000000..8d5ca4e
--- /dev/null
+++ b/docs/html/images/tools/am-methodtrace.png
Binary files differ
diff --git a/docs/html/images/tools/am-networkmon.png b/docs/html/images/tools/am-networkmon.png
new file mode 100644
index 0000000..95b3a5b
--- /dev/null
+++ b/docs/html/images/tools/am-networkmon.png
Binary files differ
diff --git a/docs/html/images/tools/and-studio_feat-gradle_2x.png b/docs/html/images/tools/and-studio_feat-gradle_2x.png
new file mode 100644
index 0000000..b4821b6
--- /dev/null
+++ b/docs/html/images/tools/and-studio_feat-gradle_2x.png
Binary files differ
diff --git a/docs/html/images/tools/and-studio_shortcuts-included_2x.png b/docs/html/images/tools/and-studio_shortcuts-included_2x.png
new file mode 100644
index 0000000..8d4e30b
--- /dev/null
+++ b/docs/html/images/tools/and-studio_shortcuts-included_2x.png
Binary files differ
diff --git a/docs/html/images/tools/as-api-level-preview.png b/docs/html/images/tools/as-api-level-preview.png
new file mode 100644
index 0000000..602a6ad
--- /dev/null
+++ b/docs/html/images/tools/as-api-level-preview.png
Binary files differ
diff --git a/docs/html/images/tools/as-debugbutton.png b/docs/html/images/tools/as-debugbutton.png
index 55e95d1..f8edf4d 100644
--- a/docs/html/images/tools/as-debugbutton.png
+++ b/docs/html/images/tools/as-debugbutton.png
Binary files differ
diff --git a/docs/html/images/tools/as-find-apk.png b/docs/html/images/tools/as-find-apk.png
new file mode 100644
index 0000000..e68d2b1
--- /dev/null
+++ b/docs/html/images/tools/as-find-apk.png
Binary files differ
diff --git a/docs/html/images/tools/as-gradle.png b/docs/html/images/tools/as-gradle.png
new file mode 100644
index 0000000..a1b88ae
--- /dev/null
+++ b/docs/html/images/tools/as-gradle.png
Binary files differ
diff --git a/docs/html/images/tools/as-run.png b/docs/html/images/tools/as-run.png
index 76c7020..dbc3e33 100644
--- a/docs/html/images/tools/as-run.png
+++ b/docs/html/images/tools/as-run.png
Binary files differ
diff --git a/docs/html/images/tools/codeeditor-low.gif b/docs/html/images/tools/codeeditor-low.gif
new file mode 100644
index 0000000..50d840c
--- /dev/null
+++ b/docs/html/images/tools/codeeditor-low.gif
Binary files differ
diff --git a/docs/html/images/tools/image-out.png b/docs/html/images/tools/image-out.png
new file mode 100644
index 0000000..0373b16
--- /dev/null
+++ b/docs/html/images/tools/image-out.png
Binary files differ
diff --git a/docs/html/images/tools/performance/memory-monitor/gettingstarted_image001.png b/docs/html/images/tools/performance/memory-monitor/gettingstarted_image001.png
index c6fe045..c4ea2dc 100644
--- a/docs/html/images/tools/performance/memory-monitor/gettingstarted_image001.png
+++ b/docs/html/images/tools/performance/memory-monitor/gettingstarted_image001.png
Binary files differ
diff --git a/docs/html/images/tools/performance/memory-monitor/gettingstarted_image001b.png b/docs/html/images/tools/performance/memory-monitor/gettingstarted_image001b.png
new file mode 100644
index 0000000..ea76d45
--- /dev/null
+++ b/docs/html/images/tools/performance/memory-monitor/gettingstarted_image001b.png
Binary files differ
diff --git a/docs/html/images/tools/signstudio3.png b/docs/html/images/tools/signstudio3.png
index f25bf00..4d51764 100644
--- a/docs/html/images/tools/signstudio3.png
+++ b/docs/html/images/tools/signstudio3.png
Binary files differ
diff --git a/docs/html/images/tools/studio-translations-editor.png b/docs/html/images/tools/studio-translations-editor.png
new file mode 100644
index 0000000..22722d2
--- /dev/null
+++ b/docs/html/images/tools/studio-translations-editor.png
Binary files differ
diff --git a/docs/html/images/tools/studio/ic_devices_grey.png b/docs/html/images/tools/studio/ic_devices_grey.png
new file mode 100644
index 0000000..4adfb88
--- /dev/null
+++ b/docs/html/images/tools/studio/ic_devices_grey.png
Binary files differ
diff --git a/docs/html/images/tools/studio/ic_explore_grey.png b/docs/html/images/tools/studio/ic_explore_grey.png
new file mode 100644
index 0000000..d1bc527
--- /dev/null
+++ b/docs/html/images/tools/studio/ic_explore_grey.png
Binary files differ
diff --git a/docs/html/images/tools/studio/ic_school_grey.png b/docs/html/images/tools/studio/ic_school_grey.png
new file mode 100644
index 0000000..93cc855
--- /dev/null
+++ b/docs/html/images/tools/studio/ic_school_grey.png
Binary files differ
diff --git a/docs/html/images/tools/studio/studio-feature-devices_2x.png b/docs/html/images/tools/studio/studio-feature-devices_2x.png
new file mode 100644
index 0000000..af6f89f
--- /dev/null
+++ b/docs/html/images/tools/studio/studio-feature-devices_2x.png
Binary files differ
diff --git a/docs/html/images/tools/studio/studio-feature-emulator_2x.jpg b/docs/html/images/tools/studio/studio-feature-emulator_2x.jpg
new file mode 100644
index 0000000..7518931
--- /dev/null
+++ b/docs/html/images/tools/studio/studio-feature-emulator_2x.jpg
Binary files differ
diff --git a/docs/html/images/tools/studio/studio-feature-github_2x.png b/docs/html/images/tools/studio/studio-feature-github_2x.png
new file mode 100644
index 0000000..8d4e30b
--- /dev/null
+++ b/docs/html/images/tools/studio/studio-feature-github_2x.png
Binary files differ
diff --git a/docs/html/images/tools/studio/studio-feature-gradle_2x.png b/docs/html/images/tools/studio/studio-feature-gradle_2x.png
new file mode 100644
index 0000000..b4821b6
--- /dev/null
+++ b/docs/html/images/tools/studio/studio-feature-gradle_2x.png
Binary files differ
diff --git a/docs/html/images/tools/studio/studio-feature-instant-run_2x.png b/docs/html/images/tools/studio/studio-feature-instant-run_2x.png
new file mode 100644
index 0000000..b76d7c0
--- /dev/null
+++ b/docs/html/images/tools/studio/studio-feature-instant-run_2x.png
Binary files differ
diff --git a/docs/html/images/tools/studio/studio-feature-livetemplate.gif b/docs/html/images/tools/studio/studio-feature-livetemplate.gif
new file mode 100644
index 0000000..e265d91
--- /dev/null
+++ b/docs/html/images/tools/studio/studio-feature-livetemplate.gif
Binary files differ
diff --git a/docs/html/images/tools/studio/studio-project-files.png b/docs/html/images/tools/studio/studio-project-files.png
new file mode 100644
index 0000000..695c561
--- /dev/null
+++ b/docs/html/images/tools/studio/studio-project-files.png
Binary files differ
diff --git a/docs/html/images/tools/trim.png b/docs/html/images/tools/trim.png
new file mode 100644
index 0000000..8420dd4
--- /dev/null
+++ b/docs/html/images/tools/trim.png
Binary files differ
diff --git a/docs/html/images/tools/vas-codepreview.png b/docs/html/images/tools/vas-codepreview.png
new file mode 100644
index 0000000..ea8482c
--- /dev/null
+++ b/docs/html/images/tools/vas-codepreview.png
Binary files differ
diff --git a/docs/html/images/tools/vas-imageincode.png b/docs/html/images/tools/vas-imageincode.png
new file mode 100644
index 0000000..8295cfa
--- /dev/null
+++ b/docs/html/images/tools/vas-imageincode.png
Binary files differ
diff --git a/docs/html/images/tools/vas-layout.png b/docs/html/images/tools/vas-layout.png
new file mode 100644
index 0000000..f70461b
--- /dev/null
+++ b/docs/html/images/tools/vas-layout.png
Binary files differ
diff --git a/docs/html/images/tools/vas-materialicon.png b/docs/html/images/tools/vas-materialicon.png
new file mode 100644
index 0000000..d04a831
--- /dev/null
+++ b/docs/html/images/tools/vas-materialicon.png
Binary files differ
diff --git a/docs/html/images/tools/vas-rtl.png b/docs/html/images/tools/vas-rtl.png
new file mode 100644
index 0000000..0d45b94
--- /dev/null
+++ b/docs/html/images/tools/vas-rtl.png
Binary files differ
diff --git a/docs/html/images/tools/vas-rtlmenu.png b/docs/html/images/tools/vas-rtlmenu.png
new file mode 100644
index 0000000..aaf95de
--- /dev/null
+++ b/docs/html/images/tools/vas-rtlmenu.png
Binary files differ
diff --git a/docs/html/images/tools/vas-svgerror.png b/docs/html/images/tools/vas-svgerror.png
new file mode 100644
index 0000000..8c85247
--- /dev/null
+++ b/docs/html/images/tools/vas-svgerror.png
Binary files differ
diff --git a/docs/html/images/training/appbar/action_view.png b/docs/html/images/training/appbar/action_view.png
new file mode 100644
index 0000000..29e8528
--- /dev/null
+++ b/docs/html/images/training/appbar/action_view.png
Binary files differ
diff --git a/docs/html/images/training/appbar/action_view_2x.png b/docs/html/images/training/appbar/action_view_2x.png
new file mode 100644
index 0000000..5c58b77
--- /dev/null
+++ b/docs/html/images/training/appbar/action_view_2x.png
Binary files differ
diff --git a/docs/html/images/training/appbar/appbar_basic.png b/docs/html/images/training/appbar/appbar_basic.png
new file mode 100644
index 0000000..bcac6f5
--- /dev/null
+++ b/docs/html/images/training/appbar/appbar_basic.png
Binary files differ
diff --git a/docs/html/images/training/appbar/appbar_basic_2x.png b/docs/html/images/training/appbar/appbar_basic_2x.png
new file mode 100644
index 0000000..3a6042d
--- /dev/null
+++ b/docs/html/images/training/appbar/appbar_basic_2x.png
Binary files differ
diff --git a/docs/html/images/training/appbar/appbar_sheets.png b/docs/html/images/training/appbar/appbar_sheets.png
new file mode 100644
index 0000000..74cefd9
--- /dev/null
+++ b/docs/html/images/training/appbar/appbar_sheets.png
Binary files differ
diff --git a/docs/html/images/training/appbar/appbar_sheets_2x.png b/docs/html/images/training/appbar/appbar_sheets_2x.png
new file mode 100644
index 0000000..8124110
--- /dev/null
+++ b/docs/html/images/training/appbar/appbar_sheets_2x.png
Binary files differ
diff --git a/docs/html/images/training/appbar/appbar_with_button.png b/docs/html/images/training/appbar/appbar_with_button.png
new file mode 100644
index 0000000..356f2f4
--- /dev/null
+++ b/docs/html/images/training/appbar/appbar_with_button.png
Binary files differ
diff --git a/docs/html/images/training/appbar/appbar_with_button_2x.png b/docs/html/images/training/appbar/appbar_with_button_2x.png
new file mode 100644
index 0000000..1292b24
--- /dev/null
+++ b/docs/html/images/training/appbar/appbar_with_button_2x.png
Binary files differ
diff --git a/docs/html/images/training/articles/user-data-overview-permissions-flow01.jpg b/docs/html/images/training/articles/user-data-overview-permissions-flow01.jpg
new file mode 100644
index 0000000..e3b192b
--- /dev/null
+++ b/docs/html/images/training/articles/user-data-overview-permissions-flow01.jpg
Binary files differ
diff --git a/docs/html/images/training/articles/user-data-overview-permissions-flow02.png b/docs/html/images/training/articles/user-data-overview-permissions-flow02.png
new file mode 100644
index 0000000..f572a44
--- /dev/null
+++ b/docs/html/images/training/articles/user-data-overview-permissions-flow02.png
Binary files differ
diff --git a/docs/html/images/training/articles/user-data-overview-permissions-groups.png b/docs/html/images/training/articles/user-data-overview-permissions-groups.png
new file mode 100644
index 0000000..5996489
--- /dev/null
+++ b/docs/html/images/training/articles/user-data-overview-permissions-groups.png
Binary files differ
diff --git a/docs/html/images/training/articles/user-data-overview-permissions-usage.jpg b/docs/html/images/training/articles/user-data-overview-permissions-usage.jpg
new file mode 100644
index 0000000..0732369
--- /dev/null
+++ b/docs/html/images/training/articles/user-data-overview-permissions-usage.jpg
Binary files differ
diff --git a/docs/html/images/training/assistant/image01.png b/docs/html/images/training/assistant/image01.png
new file mode 100644
index 0000000..d915bc2
--- /dev/null
+++ b/docs/html/images/training/assistant/image01.png
Binary files differ
diff --git a/docs/html/images/training/assistant/image02.png b/docs/html/images/training/assistant/image02.png
new file mode 100644
index 0000000..0307a30
--- /dev/null
+++ b/docs/html/images/training/assistant/image02.png
Binary files differ
diff --git a/docs/html/images/training/assistant/image03.png b/docs/html/images/training/assistant/image03.png
new file mode 100644
index 0000000..8834ffb
--- /dev/null
+++ b/docs/html/images/training/assistant/image03.png
Binary files differ
diff --git a/docs/html/images/training/assistant/image04.png b/docs/html/images/training/assistant/image04.png
new file mode 100644
index 0000000..743fbcc
--- /dev/null
+++ b/docs/html/images/training/assistant/image04.png
Binary files differ
diff --git a/docs/html/images/training/auto-desktop-head-unit-context-menu-enabled.png b/docs/html/images/training/auto-desktop-head-unit-context-menu-enabled.png
index 99e60e9..06361af 100644
--- a/docs/html/images/training/auto-desktop-head-unit-context-menu-enabled.png
+++ b/docs/html/images/training/auto-desktop-head-unit-context-menu-enabled.png
Binary files differ
diff --git a/docs/html/images/training/auto-desktop-head-unit-server-running.png b/docs/html/images/training/auto-desktop-head-unit-server-running.png
index 5aa3b83..f8e1f38 100644
--- a/docs/html/images/training/auto-desktop-head-unit-server-running.png
+++ b/docs/html/images/training/auto-desktop-head-unit-server-running.png
Binary files differ
diff --git a/docs/html/images/training/basics/actionbar-actions.png b/docs/html/images/training/basics/actionbar-actions.png
deleted file mode 100644
index 5195a8c..0000000
--- a/docs/html/images/training/basics/actionbar-actions.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/basics/actionbar-basic.png b/docs/html/images/training/basics/actionbar-basic.png
deleted file mode 100644
index ba77659..0000000
--- a/docs/html/images/training/basics/actionbar-basic.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/basics/actionbar-overlay@2x.png b/docs/html/images/training/basics/actionbar-overlay@2x.png
deleted file mode 100644
index 7014a19..0000000
--- a/docs/html/images/training/basics/actionbar-overlay@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/basics/actionbar-theme-custom-tabs@2x.png b/docs/html/images/training/basics/actionbar-theme-custom-tabs@2x.png
deleted file mode 100644
index ea8c93b..0000000
--- a/docs/html/images/training/basics/actionbar-theme-custom-tabs@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/basics/actionbar-theme-custom@2x.png b/docs/html/images/training/basics/actionbar-theme-custom@2x.png
deleted file mode 100644
index bb6f1a4..0000000
--- a/docs/html/images/training/basics/actionbar-theme-custom@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/basics/actionbar-theme-dark-solid@2x.png b/docs/html/images/training/basics/actionbar-theme-dark-solid@2x.png
deleted file mode 100644
index bd16ffe..0000000
--- a/docs/html/images/training/basics/actionbar-theme-dark-solid@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/basics/actionbar-theme-dark@2x.png b/docs/html/images/training/basics/actionbar-theme-dark@2x.png
deleted file mode 100644
index 88c3b22..0000000
--- a/docs/html/images/training/basics/actionbar-theme-dark@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/basics/actionbar-theme-light-darkactionbar@2x.png b/docs/html/images/training/basics/actionbar-theme-light-darkactionbar@2x.png
deleted file mode 100644
index 5509e16..0000000
--- a/docs/html/images/training/basics/actionbar-theme-light-darkactionbar@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/basics/actionbar-theme-light-solid@2x.png b/docs/html/images/training/basics/actionbar-theme-light-solid@2x.png
deleted file mode 100644
index 810ef46..0000000
--- a/docs/html/images/training/basics/actionbar-theme-light-solid@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/basics/actionbar-theme-light@2x.png b/docs/html/images/training/basics/actionbar-theme-light@2x.png
deleted file mode 100644
index a0af43a..0000000
--- a/docs/html/images/training/basics/actionbar-theme-light@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/doze.png b/docs/html/images/training/doze.png
new file mode 100644
index 0000000..32d0d5d
--- /dev/null
+++ b/docs/html/images/training/doze.png
Binary files differ
diff --git a/docs/html/images/training/enterprise/app_restrictions_diagram.png b/docs/html/images/training/enterprise/app_restrictions_diagram.png
new file mode 100644
index 0000000..5ab3f8d
--- /dev/null
+++ b/docs/html/images/training/enterprise/app_restrictions_diagram.png
Binary files differ
diff --git a/docs/html/images/training/enterprise/app_restrictions_diagram_2x.png b/docs/html/images/training/enterprise/app_restrictions_diagram_2x.png
new file mode 100644
index 0000000..13a2db1
--- /dev/null
+++ b/docs/html/images/training/enterprise/app_restrictions_diagram_2x.png
Binary files differ
diff --git a/docs/html/images/training/enterprise/pinning_vs_locktaskmode.png b/docs/html/images/training/enterprise/pinning_vs_locktaskmode.png
new file mode 100644
index 0000000..8fa470b
--- /dev/null
+++ b/docs/html/images/training/enterprise/pinning_vs_locktaskmode.png
Binary files differ
diff --git a/docs/html/images/training/enterprise/pinning_vs_locktaskmode_2x.png b/docs/html/images/training/enterprise/pinning_vs_locktaskmode_2x.png
new file mode 100644
index 0000000..d7690f4
--- /dev/null
+++ b/docs/html/images/training/enterprise/pinning_vs_locktaskmode_2x.png
Binary files differ
diff --git a/docs/html/images/training/firstapp/edittext_gravity.png b/docs/html/images/training/firstapp/edittext_gravity.png
index bc4f7ee..fcf0504 100644
--- a/docs/html/images/training/firstapp/edittext_gravity.png
+++ b/docs/html/images/training/firstapp/edittext_gravity.png
Binary files differ
diff --git a/docs/html/images/training/firstapp/edittext_wrap.png b/docs/html/images/training/firstapp/edittext_wrap.png
index fe56731..51f34f4 100644
--- a/docs/html/images/training/firstapp/edittext_wrap.png
+++ b/docs/html/images/training/firstapp/edittext_wrap.png
Binary files differ
diff --git a/docs/html/images/training/performance/network_traffic_colors.png b/docs/html/images/training/performance/network_traffic_colors.png
new file mode 100644
index 0000000..e3f4014
--- /dev/null
+++ b/docs/html/images/training/performance/network_traffic_colors.png
Binary files differ
diff --git a/docs/html/images/training/performance/optimal_network_traffic_pattern.png b/docs/html/images/training/performance/optimal_network_traffic_pattern.png
new file mode 100644
index 0000000..a32c19a
--- /dev/null
+++ b/docs/html/images/training/performance/optimal_network_traffic_pattern.png
Binary files differ
diff --git a/docs/html/images/training/performance/suboptimal_network_traffic_pattern.png b/docs/html/images/training/performance/suboptimal_network_traffic_pattern.png
new file mode 100644
index 0000000..c35c673
--- /dev/null
+++ b/docs/html/images/training/performance/suboptimal_network_traffic_pattern.png
Binary files differ
diff --git a/docs/html/images/training/permissions/request_permission_dialog.png b/docs/html/images/training/permissions/request_permission_dialog.png
new file mode 100644
index 0000000..fad5f11
--- /dev/null
+++ b/docs/html/images/training/permissions/request_permission_dialog.png
Binary files differ
diff --git a/docs/html/images/training/permissions/request_permission_dialog_2x.png b/docs/html/images/training/permissions/request_permission_dialog_2x.png
new file mode 100644
index 0000000..ee63ded
--- /dev/null
+++ b/docs/html/images/training/permissions/request_permission_dialog_2x.png
Binary files differ
diff --git a/docs/html/images/training/snackbar/snackbar_button_move.mp4 b/docs/html/images/training/snackbar/snackbar_button_move.mp4
new file mode 100644
index 0000000..0a1cefc
--- /dev/null
+++ b/docs/html/images/training/snackbar/snackbar_button_move.mp4
Binary files differ
diff --git a/docs/html/images/training/snackbar/snackbar_drive.png b/docs/html/images/training/snackbar/snackbar_drive.png
new file mode 100644
index 0000000..1483a84
--- /dev/null
+++ b/docs/html/images/training/snackbar/snackbar_drive.png
Binary files differ
diff --git a/docs/html/images/training/snackbar/snackbar_drive_2x.png b/docs/html/images/training/snackbar/snackbar_drive_2x.png
new file mode 100644
index 0000000..6d45b8c
--- /dev/null
+++ b/docs/html/images/training/snackbar/snackbar_drive_2x.png
Binary files differ
diff --git a/docs/html/images/training/snackbar/snackbar_undo_action.png b/docs/html/images/training/snackbar/snackbar_undo_action.png
new file mode 100644
index 0000000..979d127
--- /dev/null
+++ b/docs/html/images/training/snackbar/snackbar_undo_action.png
Binary files differ
diff --git a/docs/html/images/training/snackbar/snackbar_undo_action_2x.png b/docs/html/images/training/snackbar/snackbar_undo_action_2x.png
new file mode 100644
index 0000000..1f150af
--- /dev/null
+++ b/docs/html/images/training/snackbar/snackbar_undo_action_2x.png
Binary files differ
diff --git a/docs/html/images/training/tv/playback/guided-step-screen-2x.png b/docs/html/images/training/tv/playback/guided-step-screen-2x.png
new file mode 100644
index 0000000..e13d97a
--- /dev/null
+++ b/docs/html/images/training/tv/playback/guided-step-screen-2x.png
Binary files differ
diff --git a/docs/html/images/training/tv/playback/guided-step-screen.png b/docs/html/images/training/tv/playback/guided-step-screen.png
new file mode 100644
index 0000000..3025fe1
--- /dev/null
+++ b/docs/html/images/training/tv/playback/guided-step-screen.png
Binary files differ
diff --git a/docs/html/images/training/tv/playback/now-playing-screen.png b/docs/html/images/training/tv/playback/now-playing-screen.png
new file mode 100644
index 0000000..3f6e252
--- /dev/null
+++ b/docs/html/images/training/tv/playback/now-playing-screen.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_again.png b/docs/html/images/training/wear/ask_again.png
new file mode 100644
index 0000000..33c110b
--- /dev/null
+++ b/docs/html/images/training/wear/ask_again.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_again_2x.png b/docs/html/images/training/wear/ask_again_2x.png
new file mode 100644
index 0000000..8996203
--- /dev/null
+++ b/docs/html/images/training/wear/ask_again_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_in_context.png b/docs/html/images/training/wear/ask_in_context.png
new file mode 100644
index 0000000..61fa478
--- /dev/null
+++ b/docs/html/images/training/wear/ask_in_context.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_in_context_2x.png b/docs/html/images/training/wear/ask_in_context_2x.png
new file mode 100644
index 0000000..20c1f47
--- /dev/null
+++ b/docs/html/images/training/wear/ask_in_context_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_up_front.png b/docs/html/images/training/wear/ask_up_front.png
new file mode 100644
index 0000000..ced2228
--- /dev/null
+++ b/docs/html/images/training/wear/ask_up_front.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_up_front_2x.png b/docs/html/images/training/wear/ask_up_front_2x.png
new file mode 100644
index 0000000..ef7eb46
--- /dev/null
+++ b/docs/html/images/training/wear/ask_up_front_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/deny.png b/docs/html/images/training/wear/deny.png
new file mode 100644
index 0000000..a1e9562
--- /dev/null
+++ b/docs/html/images/training/wear/deny.png
Binary files differ
diff --git a/docs/html/images/training/wear/deny_2x.png b/docs/html/images/training/wear/deny_2x.png
new file mode 100644
index 0000000..721c271
--- /dev/null
+++ b/docs/html/images/training/wear/deny_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/educate_in_context.png b/docs/html/images/training/wear/educate_in_context.png
new file mode 100644
index 0000000..c8ac641
--- /dev/null
+++ b/docs/html/images/training/wear/educate_in_context.png
Binary files differ
diff --git a/docs/html/images/training/wear/educate_in_context_2x.png b/docs/html/images/training/wear/educate_in_context_2x.png
new file mode 100644
index 0000000..92baead
--- /dev/null
+++ b/docs/html/images/training/wear/educate_in_context_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/educate_up_front.png b/docs/html/images/training/wear/educate_up_front.png
new file mode 100644
index 0000000..2e4fdf7
--- /dev/null
+++ b/docs/html/images/training/wear/educate_up_front.png
Binary files differ
diff --git a/docs/html/images/training/wear/educate_up_front_2x.png b/docs/html/images/training/wear/educate_up_front_2x.png
new file mode 100644
index 0000000..1f6f491
--- /dev/null
+++ b/docs/html/images/training/wear/educate_up_front_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/for_services.png b/docs/html/images/training/wear/for_services.png
new file mode 100644
index 0000000..0aaae10
--- /dev/null
+++ b/docs/html/images/training/wear/for_services.png
Binary files differ
diff --git a/docs/html/images/training/wear/for_services_2x.png b/docs/html/images/training/wear/for_services_2x.png
new file mode 100644
index 0000000..a7f92f2
--- /dev/null
+++ b/docs/html/images/training/wear/for_services_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/for_settings.png b/docs/html/images/training/wear/for_settings.png
new file mode 100644
index 0000000..fde50c7
--- /dev/null
+++ b/docs/html/images/training/wear/for_settings.png
Binary files differ
diff --git a/docs/html/images/training/wear/for_settings_2x.png b/docs/html/images/training/wear/for_settings_2x.png
new file mode 100644
index 0000000..c2daa7c
--- /dev/null
+++ b/docs/html/images/training/wear/for_settings_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/multiple_permissions.png b/docs/html/images/training/wear/multiple_permissions.png
new file mode 100644
index 0000000..65e3e08
--- /dev/null
+++ b/docs/html/images/training/wear/multiple_permissions.png
Binary files differ
diff --git a/docs/html/images/training/wear/multiple_permissions_2x.png b/docs/html/images/training/wear/multiple_permissions_2x.png
new file mode 100644
index 0000000..cbaace8
--- /dev/null
+++ b/docs/html/images/training/wear/multiple_permissions_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/open_on_phone.png b/docs/html/images/training/wear/open_on_phone.png
new file mode 100644
index 0000000..1899839
--- /dev/null
+++ b/docs/html/images/training/wear/open_on_phone.png
Binary files differ
diff --git a/docs/html/images/training/wear/open_on_phone_2x.png b/docs/html/images/training/wear/open_on_phone_2x.png
new file mode 100644
index 0000000..e5c2c96
--- /dev/null
+++ b/docs/html/images/training/wear/open_on_phone_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/phone_requests_wear.png b/docs/html/images/training/wear/phone_requests_wear.png
new file mode 100644
index 0000000..4d0b09d
--- /dev/null
+++ b/docs/html/images/training/wear/phone_requests_wear.png
Binary files differ
diff --git a/docs/html/images/training/wear/phone_requests_wear_2x.png b/docs/html/images/training/wear/phone_requests_wear_2x.png
new file mode 100644
index 0000000..1c98f4a
--- /dev/null
+++ b/docs/html/images/training/wear/phone_requests_wear_2x.png
Binary files differ
diff --git a/docs/html/images/tv/custom-head.png b/docs/html/images/tv/custom-head.png
new file mode 100644
index 0000000..094e490
--- /dev/null
+++ b/docs/html/images/tv/custom-head.png
Binary files differ
diff --git a/docs/html/index.jd b/docs/html/index.jd
index 10519f7..2f67c58 100644
--- a/docs/html/index.jd
+++ b/docs/html/index.jd
@@ -2,71 +2,103 @@
 excludeFromSuggestions=true
 page.metaDescription=The official site for Android developers. Provides the Android SDK and documentation for app developers and designers.
 page.customHeadTag=<meta name="google-site-verification" content="sa-bIAI6GKvct3f61-WpRguHq-aNjtF7xJjMTSi79as" />
+nonavpage=true
 
 @jd:body
 
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
 
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="/preview/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
   <div class="wrap" style="max-width:1100px;margin-top:0">
-    <div class="cols dac-hero-content">
-      <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
-      </div>
-      <div class="col-8of16 col-pull-7of16">
-        <div class="dac-hero-tag"></div>
-
-        <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
-        </div>
-        <div class="col-6of16 col-push-1of16">
-        <p class="dac-hero-description" style="color:white"><strong>The
-        official Android 6.0 SDK is now available!</strong> Update to
-        Developer Preview 3 and get your apps ready for Android Marshmallow!</p>
-
+    <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+      <a href="{@docRoot}preview/index.html">
+        <h1 class="dac-hero-title">Android N Developer Preview</h1>
+        <p class="dac-hero-description">
+          Get ready for the next version of Android!
+          <strong>Test your apps</strong> on Nexus and other devices. Support new system
+          behaviors to <strong>save power and memory</strong>.
+          Extend your apps with <strong>multi-window UI</strong>,
+          <strong>direct reply notifications</strong> and more.
+        </p>
         <a class="dac-hero-cta" href="/preview/index.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Get started
-        </a><br>
-
-        <a class="dac-hero-cta mprev" href="/preview/support.html">
+          Learn more
+        </a><!--<br>
+        <a class="dac-hero-cta" href="/preview/support.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Update to Developer Preview 3 (final SDK)
+          Update to Developer Preview (final SDK)
+        </a><br>-->
+      </a>
+    </div>
+    <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+      <a href="{@docRoot}preview/index.html">
+        <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+             srcset="/images/home/n-preview-hero.png 1x,
+             /images/home/n-preview-hero_2x.png 2x">
         </a>
-      </div>
-      </div>
     </div>
   </div>
-</a>
-</article></section>
+</section>
 
-<div class="actions-bar dac-expand dac-invert">
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
   <div class="wrap dac-offset-parent">
     <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
       <i class="dac-sprite dac-arrow-down-gray"></i>
     </a>
+    <ul class="dac-actions">
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}sdk/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Get Android Studio
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}samples/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Browse sample code
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}distribute/stories/index.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Watch stories
+        </a>
+      </li>
+    </ul>
+  </div><!-- end .wrap -->
+</div><!-- end .dac-actions -->
+
+<div id="useOldTemplates" style="display:none" class="actions-bar dac-expand dac-invert">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button="" href="#build-apps">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
     <div class="actions">
       <div><a href="{@docRoot}sdk/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
-        Get the SDK
+        Get Android Studio
       </a></div>
       <div><a href="{@docRoot}samples/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
         Browse Samples
       </a></div>
-      <div><a href="//www.youtube.com/user/androiddevelopers">
+      <div><a href="{@docRoot}distribute/stories/index.html">
         <span class="dac-sprite dac-auto-chevron-large"></span>
-        Watch Videos
+        Watch Stories
       </a></div>
     </div><!-- end .actions -->
   </div><!-- end .wrap -->
-</div><!-- end .actions-bar -->
+</div>
 
-
-
-<section class="dac-section dac-section-light" id="build-apps"><div class="wrap">
+<section class="dac-section dac-light" id="build-apps"><div class="wrap">
   <h1 class="dac-section-title">Build Beautiful Apps</h1>
   <div class="dac-section-subtitle">
     Resources to get you started with designing and developing for Android.
diff --git a/docs/html/jd_collections.js b/docs/html/jd_collections.js
index c5b0b85..863d235 100644
--- a/docs/html/jd_collections.js
+++ b/docs/html/jd_collections.js
@@ -16,10 +16,10 @@
   "index/secondary/carousel": {
     "title": "",
     "resources": [
-      "http://www.youtube.com/watch?v=0r36OJaeMo4",
-      "http://www.youtube.com/watch?v=1Iw7Tg_afKk",
-      "http://www.youtube.com/watch?v=TieksFvD-7o",
-      "http://www.youtube.com/watch?v=MCoh4Pxs_ok"
+      "http://www.youtube.com/watch?v=9m6MoBM-sFI",
+      "http://www.youtube.com/watch?v=Pms0pcyPbAM",
+      "http://www.youtube.com/watch?v=e7t3svG9PTk",
+      "http://www.youtube.com/watch?v=J3IvOfvH1ys"
     ]
   },
   "index/multiscreen": {
@@ -41,9 +41,9 @@
   "design/landing/latest": {
     "title": "",
     "resources": [
-      "http://www.youtube.com/watch?v=p4gmvHyuZzw",
-      "http://www.youtube.com/watch?v=YaG_ljfzeUw",
-      "http://www.youtube.com/watch?v=XOcCOBe8PTc"
+      "https://www.youtube.com/watch?v=p4gmvHyuZzw",
+      "https://www.youtube.com/watch?v=YaG_ljfzeUw",
+      "https://www.youtube.com/watch?v=XOcCOBe8PTc"
     ]
   },
   "design/landing/materialdesign": {
@@ -90,17 +90,25 @@
   "develop/landing/latest": {
     "title": "",
     "resources": [
-      "http://android-developers.blogspot.com/2015/04/new-android-code-samples.html",
-      "http://android-developers.blogspot.com/2015/04/android-support-library-221.html",
-      "http://android-developers.blogspot.com/2015/03/a-new-reference-app-for-multi-device.html"
+      "https://android-developers.blogspot.com/2015/04/new-android-code-samples.html",
+      "https://android-developers.blogspot.com/2015/04/android-support-library-221.html",
+      "https://android-developers.blogspot.com/2015/03/a-new-reference-app-for-multi-device.html"
+    ]
+  },
+  "develop/landing/devpatterns": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=kmUGLURRPkI",
+      "https://www.youtube.com/watch?v=HGElAW224dE",
+      "https://www.youtube.com/watch?v=zQekzaAgIlQ"
     ]
   },
   "develop/landing/performance": {
     "title": "",
     "resources": [
-      "http://www.youtube.com/watch?v=fEEulSk1kNY",
-      "http://www.youtube.com/watch?v=-3ry8PxcJJA",
-      "http://www.youtube.com/watch?v=_kKTGK-Cb_4"
+      "https://www.youtube.com/watch?v=fEEulSk1kNY",
+      "https://www.youtube.com/watch?v=-3ry8PxcJJA",
+      "https://www.youtube.com/watch?v=_kKTGK-Cb_4"
     ]
   },
   "develop/landing/buildwithgoogle": {
@@ -120,13 +128,39 @@
     "title": "",
     "resources": [
       "https://www.youtube.com/watch?v=K2dodTXARqc&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
-      "https://www.youtube.com/watch?v=3PIc-DuEU2s&list=PLWz5rJ2EKKc9e0d55YHgJFHXNZbGHEXJX",
       "https://www.youtube.com/watch?v=cD7NPxuuXYY&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
       "https://www.youtube.com/watch?v=JLLnhwtDoHw&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
       "https://www.youtube.com/watch?v=2I6fuD20qlY&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
       "https://www.youtube.com/watch?v=5Be2mJzP-Uw&list=PLWz5rJ2EKKc9e0d55YHgJFHXNZbGHEXJX"
     ]
   },
+  "preview/landing/resources": {
+    "title": "",
+    "resources": [
+      "preview/overview.html",
+      "preview/api-overview.html",
+      "preview/behavior-changes.html",
+      "preview/setup-sdk.html",
+      "preview/samples.html",
+      "preview/support.html"
+    ]
+  },
+  "preview/landing/more": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=CsulIu3UaUM",
+      "preview/features/multi-window.html",
+      "preview/features/notification-updates.html",
+      "preview/features/background-optimization.html",
+      "preview/features/data-saver.html",
+      "preview/features/direct-boot.html",
+      "preview/features/icu4j-framework.html",
+      "preview/features/multilingual-support.html",
+      "preview/features/scoped-folder-access.html",
+      "preview/features/picture-in-picture.html",
+      "preview/features/tv-recording-api.html"
+    ]
+  },
   "google/landing/services": {
     "title": "",
     "resources": [
@@ -158,36 +192,31 @@
   "develop/landing/courses": {
     "title": "",
     "resources": [
-      "https://www.udacity.com/course/ux-design-for-mobile-developers--ud849",
-      "https://www.udacity.com/course/developing-android-apps--ud853",
-      "https://www.udacity.com/course/android-performance--ud825",
+      "https://www.udacity.com/course/ud849",
+      "https://www.udacity.com/course/ud853",
+      "https://www.udacity.com/course/ud825",
       "https://www.udacity.com/android",
-      "https://www.udacity.com/course/advanced-android-app-development--ud855",
-      "https://www.udacity.com/course/android-ubiquitous-computing--ud875",
-      "https://www.udacity.com/course/google-play-services--ud876",
-      "https://www.udacity.com/course/android-design-for-developers--ud862",
-      "https://www.udacity.com/course/android-development-for-beginners--ud837",
-      "https://www.udacity.com/course/gradle-for-android-and-java--ud867"
-    ]
-  },
-  "preview/landing/more": {
-    "title": "",
-    "resources": [
-      "preview/features/runtime-permissions.html",
-      "preview/behavior-changes.html",
-      "preview/backup/index.html",
-      "preview/features/app-linking.html",
-      "preview/testing/guide.html",
-      "preview/testing/performance.html",
+      "https://www.udacity.com/course/ud855",
+      "https://www.udacity.com/course/ud875A",
+      "https://www.udacity.com/course/ud875B",
+      "https://www.udacity.com/course/ud875C",
+      "https://www.udacity.com/course/ud876--1",
+      "https://www.udacity.com/course/ud876--2",
+      "https://www.udacity.com/course/ud876--3",
+      "https://www.udacity.com/course/ud876--4",
+      "https://www.udacity.com/course/ud876--5",
+      "https://www.udacity.com/course/ud862",
+      "https://www.udacity.com/course/ud837",
+      "https://www.udacity.com/course/ud867"
     ]
   },
   "distribute/landing/carousel": {
     "title": "",
     "resources": [
-      "https://www.youtube.com/watch?v=QDM52bblwlg",
-      "https://www.youtube.com/watch?v=wcjqBSei3a0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
-      "https://www.youtube.com/watch?v=B6ydLpkhq04&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
-      "https://www.youtube.com/watch?v=jyO3-rF4Mu0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
+    "distribute/googleplay/guide.html",
+    "https://www.youtube.com/watch?v=JrR6o5tYMWQ",
+    "https://www.youtube.com/watch?v=B6ydLpkhq04&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
+    "https://www.youtube.com/watch?v=yJisuP94lHU",
     ]
   },
   "distribute/landing/googleplay": {
@@ -201,12 +230,12 @@
   "distribute/landing/more": {
     "title": "",
     "resources": [
-    "distribute/users/promote-with-ads.html",
-    "distribute/monetize/ads.html",
-    "distribute/analyze/index.html",
-    "distribute/engage/deep-linking.html",
-    "distribute/engage/easy-signin.html",
-    "https://cloud.google.com/docs/"
+      "distribute/users/promote-with-ads.html",
+      "distribute/monetize/ads.html",
+      "distribute/analyze/index.html",
+      "distribute/engage/deep-linking.html",
+      "distribute/engage/easy-signin.html",
+      "https://cloud.google.com/docs/"
     ]
   },
   "distribute/edu/videos/stories": {
@@ -228,17 +257,17 @@
   "distribute/edu/videos/experience": {
     "title": "",
     "resources": [
-      "http://youtu.be/vzvpcEffvaE"
+      "https://youtu.be/vzvpcEffvaE"
     ]
   },
 /*  "launch/static": {
     "title": "",
     "resources": [
-      "http://www.youtube.com/watch?v=1RIz-cmTQB4",
-      "http://www.youtube.com/watch?v=MVBMWDzyHAI",
-      "http://android-developers.blogspot.com/2013/11/app-translation-service-now-available.html",
-      "http://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
-      "http://android-developers.blogspot.com/2013/11/bring-your-apps-into-classroom-with.html",
+      "https://www.youtube.com/watch?v=1RIz-cmTQB4",
+      "https://www.youtube.com/watch?v=MVBMWDzyHAI",
+      "https://android-developers.blogspot.com/2013/11/app-translation-service-now-available.html",
+      "https://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
+      "https://android-developers.blogspot.com/2013/11/bring-your-apps-into-classroom-with.html",
       "distribute/essentials/quality/tablets.html",
       "distribute/users/build-buzz.html",
       "distribute/monetize/premium.html",
@@ -255,17 +284,17 @@
     "resources": [
       "https://www.youtube.com/watch?v=xelYnWcYkuE",
       "https://www.youtube.com/playlist?list=PLCOC_kP3nqGIHEgwm9mybvA04Vn4Cg9nn",
-      "http://googledevjp.blogspot.jp/2014/12/android-wear.html",
-      "http://googledevjp.blogspot.jp/2014/12/android-studio-10.html",
-      "http://googledevjp.blogspot.jp/2014/12/google-play-65.html",
+      "https://googledevjp.blogspot.jp/2014/12/android-wear.html",
+      "https://googledevjp.blogspot.jp/2014/12/android-studio-10.html",
+      "https://googledevjp.blogspot.jp/2014/12/google-play-65.html",
       "intl/ja/distribute/googleplay/developer-console.html#alpha-beta",
       "intl/ja/distribute/googleplay/guide.html",
       "intl/ja/distribute/essentials/quality/core.html",
-      "http://support.google.com/googleplay/android-developer/answer/4430948?hl=ja",
+      "https://support.google.com/googleplay/android-developer/answer/4430948?hl=ja",
       "intl/ja/support.html",
       "intl/ja/distribute/essentials/quality/wear.html",
       "intl/ja/training/tv/start/index.html",
-      "http://googleforwork-japan.blogspot.jp/2014/12/gcp-google-cloud-platform-rpg-gcp.html",
+      "https://googleforwork-japan.blogspot.jp/2014/12/gcp-google-cloud-platform-rpg-gcp.html",
       "intl/ja/distribute/monetize/ads.html"
     ]
   },
@@ -274,9 +303,9 @@
     "resources": [
       "https://www.youtube.com/watch?v=7X9Ue0Nfdh4&index=2&list=PL_WJkTbDHdBksDBRoqfeyLchEQqBAOlNl",
       "https://www.youtube.com/watch?v=83FpwuschCQ",
-      "http://googledevkr.blogspot.com/2014/11/android50guidefordevelopers.html",
-      "http://googledevkr.blogspot.com/2014/10/material-design-on-android-checklist.html",
-      "http://googledevkr.blogspot.com/2014/10/appcompat-v21-material-design-for-pre.html",
+      "https://googledevkr.blogspot.com/2014/11/android50guidefordevelopers.html",
+      "https://googledevkr.blogspot.com/2014/10/material-design-on-android-checklist.html",
+      "https://googledevkr.blogspot.com/2014/10/appcompat-v21-material-design-for-pre.html",
       "intl/ko/distribute/googleplay/developer-console.html#alpha-beta",
       "intl/ko/distribute/googleplay/guide.html",
       "intl/ko/distribute/essentials/quality/core.html",
@@ -305,11 +334,12 @@
       "distribute/googleplay/edu/about.html",
       "distribute/googleplay/cast.html",
       "distribute/googleplay/cardboard.html",
+      "distribute/googleplay/guide.html"
     ]
   },
   "distribute/googleplay/gpfw": {
     "resources": [
-      "http://www.android.com/work/",
+      "https://www.android.com/work/",
       "https://www.youtube.com/watch?v=jQWB_-o1kz4&list=PLOU2XLYxmsIKAK2Bhv19H2THwF-22O5WX",
       "training/enterprise/index.html"
     ]
@@ -339,7 +369,6 @@
     "resources": [
       "distribute/users/your-listing.html",
       "distribute/users/promote-with-ads.html",
-      "distribute/users/appindexing.html",
       "distribute/googleplay/index.html#opportunities",
       "distribute/analyze/improve-roi.html",
       "distribute/users/expand-to-new-markets.html",
@@ -349,6 +378,10 @@
       "distribute/users/ota-installs.html",
       "distribute/users/youtube.html",
       "distribute/users/house-ads.html",
+      "distribute/users/experiments.html",
+      "distribute/users/user-acquisition.html",
+      "distribute/users/banners.html",
+      "distribute/users/beta.html"
     ]
   },
   "distribute/engagelanding": {
@@ -362,6 +395,7 @@
       "distribute/engage/easy-signin.html",
       "distribute/analyze/build-better-apps.html",
       "distribute/engage/gcm.html",
+      "distribute/engage/beta.html"
     ]
   },
   "distribute/monetize": {
@@ -391,7 +425,7 @@
       "google/play-services/index.html",
       "https://developers.google.com/analytics/solutions/mobile-implementation-guide",
       "https://developers.google.com/analytics/devguides/collection/android/",
-      "http://www.google.com/tagmanager/",
+      "https://www.google.com/tagmanager/",
       "https://github.com/googleanalytics/google-analytics-plugin-for-unity"
     ]
   },
@@ -460,7 +494,7 @@
       "https://support.google.com/googleplay/android-developer",
       "distribute/tools/promote/brand.html",
       "distribute/tools/promote/device-art.html",
-      "distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "distribute/tools/promote/linking.html",
       "distribute/tools/open-distribution.html",
       "about/dashboards/index.html"
@@ -483,14 +517,14 @@
   "distribute/tools/promote": {
     "resources": [
       "distribute/tools/promote/device-art.html",
-      "distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "distribute/tools/promote/linking.html"
     ]
   },
   "distribute/tools/promote/zhcn": {
     "resources": [
       "intl/zh-cn/distribute/tools/promote/device-art.html",
-      "intl/zh-cn/distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "intl/zh-cn/distribute/tools/promote/linking.html"
     ]
   },
@@ -513,7 +547,7 @@
   "distribute/tools/news": {
     "title": "",
     "resources": [
-      "http://android-developers.blogspot.com/",
+      "https://android-developers.blogspot.com/",
       "https://plus.google.com/+AndroidDevelopers/"
     ]
   },
@@ -551,19 +585,52 @@
       "https://support.google.com/googleplay/android-developer"
     ]
   },
-  "distribute/googleplay/developerconsole": {
+  "distribute/googleplay/developerconsole/related": {
     "title": "Developer Console",
     "resources": [
       "google/play/billing/index.html",
       "https://support.google.com/googleplay/android-developer/answer/138294"
     ]
   },
+  "distribute/googleplay/beta": {
+    "title": "Alpha and Beta Testing",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/3131213",
+      "https://support.google.com/googleplay/android-developer/answer/3131213#games",
+      "distribute/googleplay/experiments.html"
+    ]
+  },
+  "distribute/googleplay/experiments/successes": {
+    "title": "Store Listing Experiment successes",
+    "resources": [
+    ]
+  },
+  "distribute/googleplay/experiments/related": {
+    "title": "Store Listing Experiments",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/6227309",
+      "https://www.youtube.com/watch?v=B6ydLpkhq04",
+      "https://support.google.com/tagmanager/answer/6003007"
+    ]
+  },
+  "distribute/googleplay/banners/related": {
+    "title": "App Install Banners",
+    "resources": [
+      "https://developers.google.com/web/updates/2015/03/increasing-engagement-with-app-install-banners-in-chrome-for-android#native"
+    ]
+  },
+  "distribute/googleplay/useracquisition/related": {
+    "title": "User Acquisition",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/6263332"
+    ]
+  },
   "distribute/googleplay/cast": {
     "title": "Google Cast",
     "resources": [
       "https://developers.google.com/cast/docs/ux_guidelines",
       "https://developers.google.com/cast/docs/android_sender",
-      "http://www.github.com/googlecast"
+      "https://www.github.com/googlecast"
     ]
   },
   "distribute/googleplay/cardboard": {
@@ -571,13 +638,13 @@
     "resources": [
       "https://www.google.com/get/cardboard/get-cardboard/",
       "https://developers.google.com/cardboard/android/download",
-      "http://www.google.com/design/spec-vr"
+      "https://www.google.com/design/spec-vr"
     ]
   },
   "distribute/googleplay/gpfe/highlight": {
     "title": "About Google Play for Education",
     "resources": [
-      "http://youtu.be/vzvpcEffvaE"
+      "https://youtu.be/vzvpcEffvaE"
     ]
   },
   "distribute/googleplay/gpfe/dev/about": {
@@ -598,28 +665,28 @@
       "https://developers.google.com/edu/guidelines",
       "distribute/essentials/quality/tablets.html",
       "distribute/googleplay/developer-console.html",
-      "http://play.google.com/about/developer-distribution-agreement-addendum.html",
+      "https://play.google.com/about/developer-distribution-agreement-addendum.html",
     ]
   },
   "distribute/googleplay/aboutgpfe/educators/about": {
     "title": "About Google Play for Education / Educators",
     "resources": [
-      "http://www.google.com/edu/tablets/",
-      "http://www.youtube.com/watch?v=haEmsMo0f3w"
+      "https://www.google.com/edu/tablets/",
+      "https://www.youtube.com/watch?v=haEmsMo0f3w"
     ]
   },
   "distribute/googleplay/aboutgpfe/educators": {
     "title": "About Google Play for Education / Educators",
     "resources": [
-      "http://www.google.com/edu/tablets/",
-      "http://youtu.be/vzvpcEffvaE"
+      "https://www.google.com/edu/tablets/",
+      "https://youtu.be/vzvpcEffvaE"
     ]
   },
   "distribute/googleplay/gettingstartedgpfe/educators": {
     "title": "About Google Play for Education / Educators",
     "resources": [
-      "http://www.google.com/edu/tablets/",
-      "http://youtu.be/vzvpcEffvaE"
+      "https://www.google.com/edu/tablets/",
+      "https://youtu.be/vzvpcEffvaE"
     ]
   },
   "distribute/essentials/eduessentials/developers": {
@@ -633,7 +700,7 @@
   "distribute/essentials/eduessentials/educators": {
     "title": "",
     "resources": [
-      "http://www.google.com/edu/tablets/",
+      "https://www.google.com/edu/tablets/",
       "distribute/essentials/quality/tablets.html",
     ]
   },
@@ -642,7 +709,7 @@
     "resources": [
       "design/index.html",
       "training/articles/perf-anr.html",
-      "http://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html"
+      "https://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html"
      ]
   },
   "distribute/users/appinvites": {
@@ -665,21 +732,21 @@
   "distribute/users/buildbuzz": {
     "title": "",
     "resources": [
-      "distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "distribute/tools/promote/linking.html",
       "distribute/tools/promote/device-art.html",
-      "http://plus.google.com/+GooglePlay"
+      "https://plus.google.com/+GooglePlay"
     ]
   },
   "distribute/users/createagreatlisting": {
     "title": "",
     "resources": [
       "https://support.google.com/googleplay/android-developer/answer/1078870",
-      "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
+      "https://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
       "distribute/tools/launch-checklist.html",
-      "http://android-developers.blogspot.com/2013/07/making-beautiful-android-app-icons.html",
-      "http://android-developers.blogspot.com/2012/12/localize-your-promotional-graphics-on.html",
-      "http://android-developers.blogspot.com/2013/10/making-your-app-content-more-accessible.html"
+      "https://android-developers.blogspot.com/2013/07/making-beautiful-android-app-icons.html",
+      "https://android-developers.blogspot.com/2012/12/localize-your-promotional-graphics-on.html",
+      "https://android-developers.blogspot.com/2013/10/making-your-app-content-more-accessible.html"
     ]
   },
   "distribute/users/buildcommunity": {
@@ -688,7 +755,7 @@
       "distribute/googleplay/developer-console.html",
       "https://support.google.com/groups/answer/46601",
       "https://support.google.com/plus/topic/2888488",
-      "http://www.youtube.com/yt/dev/"
+      "https://www.youtube.com/yt/dev/"
     ]
   },
   "distribute/users/appindexing": {
@@ -713,8 +780,8 @@
     "resources": [
       "https://support.google.com/admob/topic/2784623",
       "https://developers.google.com/mobile-ads-sdk/download",
-      "http://support.google.com/googleplay/android-developer/topic/2985714",
-      "http://analyticsacademy.withgoogle.com/mobile-app",
+      "https://support.google.com/googleplay/android-developer/topic/2985714",
+      "https://analyticsacademy.withgoogle.com/mobile-app",
       "https://support.google.com/analytics/answer/2611404",
       "https://support.google.com/admob/answer/3111064"
     ]
@@ -730,16 +797,16 @@
     "title": "",
     "resources": [
       "distribute/googleplay/developer-console.html",
-      "http://android-developers.blogspot.com/"
+      "https://android-developers.blogspot.com/"
     ]
   },
   "distribute/toolsreference/bestpractices/games": {
     "title": "",
     "resources": [
       "google/play-services/games.html",
-      "http://android-developers.blogspot.com/",
+      "https://android-developers.blogspot.com/",
       "distribute/googleplay/developer-console.html",
-      "http://www.youtube.com/watch?v=1RIz-cmTQB4"
+      "https://www.youtube.com/watch?v=1RIz-cmTQB4"
     ]
   },
   "distribute/essentials/corequalityguidelines/visualdesign": {
@@ -755,7 +822,7 @@
   "distribute/essentials/corequalityguidelines/functionality": {
     "title": "",
     "resources": [
-      "http://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html",
+      "https://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html",
       "guide/components/tasks-and-back-stack.html",
       "training/basics/activity-lifecycle/recreating.html"
     ]
@@ -800,19 +867,19 @@
   "distribute/essentials/core/performance": {
     "title": "",
     "resources": [
-      "http://android-developers.blogspot.com/2010/12/new-gingerbread-api-strictmode.html",
+      "https://android-developers.blogspot.com/2010/12/new-gingerbread-api-strictmode.html",
       "training/articles/perf-anr.html",
-      "http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html"
+      "https://android-developers.blogspot.com/2010/07/multithreading-for-performance.html"
     ]
   },
   "distribute/essentials/core/play": {
     "title": "",
     "resources": [
       "distribute/tools/launch-checklist.html",
-      "http://play.google.com/about/developer-content-policy.html?hl=zh-Hans",
+      "https://play.google.com/about/developer-content-policy.html?hl=zh-Hans",
       "https://support.google.com/googleplay/android-developer/answer/188189?hl=zh-Hans",
       "https://support.google.com/googleplay/android-developer/answer/1078870?hl=zh-Hans",
-      "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
+      "https://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
       "https://support.google.com/googleplay/android-developer/answer/113477?hl=zh-Hans"
     ]
   },
@@ -820,10 +887,10 @@
     "title": "",
     "resources": [
       "intl/zh-cn/distribute/tools/launch-checklist.html",
-      "http://play.google.com/about/developer-content-policy.html",
+      "https://play.google.com/about/developer-content-policy.html",
       "https://support.google.com/googleplay/android-developer/answer/188189?hl=zh-Hans",
       "https://support.google.com/googleplay/android-developer/answer/1078870?hl=zh-Hans",
-      "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
+      "https://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
       "https://support.google.com/googleplay/android-developer/answer/113477?hl=zh-Hans"
     ]
   },
@@ -897,7 +964,7 @@
     "resources": [
       "distribute/tools/launch-checklist.html",
       "https://play.google.com/apps/publish/",
-      "distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "distribute/tools/promote/device-art.html"
     ]
   },
@@ -906,14 +973,14 @@
     "resources": [
       "intl/zh-cn/distribute/tools/launch-checklist.html",
       "https://play.google.com/apps/publish/?hl=zh-Hans",
-      "intl/zh-cn/distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "intl/zh-cn/distribute/tools/promote/device-art.html"
     ]
   },
   "distribute/essentials/tabletguidelines/googleplay": {
     "title": "",
     "resources": [
-      "http://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
+      "https://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
       "google/play/filters.html"
     ]
   },
@@ -921,7 +988,7 @@
     "title": "",
     "resources": [
       "distribute/essentials/quality/core.html",
-      "http://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
+      "https://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
       "distribute/tools/launch-checklist.html",
       "distribute/tools/promote/device-art.html"
     ]
@@ -931,14 +998,14 @@
     "resources": [
       "design/patterns/notifications.html",
       "distribute/engage/gcm.html",
-      "http://play.google.com/about/developer-content-policy.html"
+      "https://play.google.com/about/developer-content-policy.html"
     ]
   },
   "distribute/engage/analytics": {
     "title": "",
     "resources": [
-      "http://www.google.com/analytics/mobile/",
-      "http://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html",
+      "https://www.google.com/analytics/mobile/",
+      "https://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html",
       "https://developers.google.com/analytics/devguides/collection/android/"
     ]
   },
@@ -963,7 +1030,6 @@
     "resources": [
       "distribute/engage/intents.html",
       "distribute/engage/deep-linking.html",
-      "distribute/users/appindexing.html",
       "training/app-indexing/index.html"
     ]
   },
@@ -980,10 +1046,9 @@
     "resources": [
       "distribute/tools/localization-checklist.html",
       "https://support.google.com/googleplay/android-developer/table/3541286",
-      "distribute/stories/localization.html",
-      "distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "distribute/tools/promote/device-art.html",
-      "http://www.youtube.com/watch?v=SkHHPf3EdzE"
+      "https://www.youtube.com/watch?v=SkHHPf3EdzE"
     ]
   },
   "distribute/engage/gcm": {
@@ -993,11 +1058,13 @@
       "https://developers.google.com/cloud-messaging/android/client",
     ]
   },
-  "distribute/engage/googleplaygames": {
+  "distribute/engage/gamesservices/related": {
     "title": "",
     "resources": [
-      "google/play-services/games.html",
-      "distribute/essentials/best-practices/games.html"
+      "https://developers.google.com/games/services/",
+      "distribute/analyze/start.html",
+      "distribute/googleplay/cardboard.html",
+      "https://www.google.com/admob/"
     ]
   },
   "distribute/engage/gplus": {
@@ -1035,9 +1102,9 @@
   "distribute/engage/video/more": {
     "title": "",
     "resources": [
-      "http://www.youtube.com/yt/dev/",
+      "https://www.youtube.com/yt/dev/",
       "distribute/essentials/best-practices/games.html",
-      "http://www.youtube.com/watch?v=RRelFvc6Czo"
+      "https://www.youtube.com/watch?v=RRelFvc6Czo"
     ]
   },
   "distribute/engage/community": {
@@ -1050,15 +1117,15 @@
   "distribute/engage/kiwi": {
     "title": "",
     "resources": [
-      "http://www.youtube.com/watch?v=WWArLD6nqrk"
+      "https://www.youtube.com/watch?v=WWArLD6nqrk"
     ]
   },
   "distribute/toolsreference/gpfefaq": {
     "title": "",
     "resources": [
-      "http://www.google.com/edu/tablets/",
+      "https://www.google.com/edu/tablets/",
       "distribute/googleplay/edu/start.html",
-      "http://play.google.com/about/developer-distribution-agreement-addendum.html",
+      "https://play.google.com/about/developer-distribution-agreement-addendum.html",
       "distribute/essentials/quality/core.html",
       "distribute/essentials/quality/tablets.html"
     ]
@@ -1078,7 +1145,7 @@
   "distribute/tools/loc/designforloc": {
     "title": "",
     "resources": [
-      "http://android-developers.blogspot.com/2013/03/native-rtl-support-in-android-42.html",
+      "https://android-developers.blogspot.com/2013/03/native-rtl-support-in-android-42.html",
       "guide/topics/resources/string-resource.html#Plurals",
       "guide/topics/resources/string-resource.html",
       "reference/java/util/Locale.html"
@@ -1089,7 +1156,7 @@
     "resources": [
       "guide/topics/resources/string-resource.html",
       "design/style/writing.html",
-      "http://en.wikipedia.org/wiki/XLIFF"
+      "https://en.wikipedia.org/wiki/XLIFF"
     ]
   },
   "distribute/toolsreference/localizationchecklist/managestrings/zhcn": {
@@ -1097,26 +1164,20 @@
     "resources": [
       "guide/topics/resources/string-resource.html",
       "intl/zh-cn/design/style/writing.html",
-      "http://en.wikipedia.org/wiki/XLIFF"
-    ]
-  },
-  "distribute/toolsreference/localizationchecklist/translatestrings": {
-    "title": "",
-    "resources": [
-      "distribute/stories/localization.html",
+      "https://en.wikipedia.org/wiki/XLIFF"
     ]
   },
   "distribute/toolsreference/localizationchecklist/preplaunch": {
     "title": "",
     "resources": [
-      "distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "distribute/tools/promote/device-art.html"
     ]
   },
   "distribute/toolsreference/localizationchecklist/preplaunch/zhcn": {
     "title": "",
     "resources": [
-      "intl/zh-cn/distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "intl/zh-cn/distribute/tools/promote/device-art.html"
     ]
   },
@@ -1207,15 +1268,14 @@
   "distribute/toolsreference/launchchecklist/localization": {
     "title": "",
     "resources": [
-      "distribute/tools/localization-checklist.html",
-      "guide/topics/resources/localization.html",
+      "distribute/tools/localization-checklist.html"
     ]
   },
   "distribute/toolsreference/launchchecklist/graphics": {
     "title": "",
     "resources": [
       "https://support.google.com/googleplay/android-developer/answer/1078870",
-      "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html"
+      "https://android-developers.blogspot.com/2011/10/android-market-featured-image.html"
     ]
   },
   "distribute/toolsreference/launchchecklist/productdetails": {
@@ -1228,14 +1288,14 @@
   "distribute/toolsreference/launchchecklist/badges": {
     "title": "",
     "resources": [
-      "distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "distribute/tools/promote/linking.html"
     ]
   },
   "distribute/toolsreference/launchchecklist/finalchecks": {
     "title": "",
     "resources": [
-      "http://play.google.com/about/developer-content-policy.html",
+      "https://play.google.com/about/developer-content-policy.html",
       "https://support.google.com/googleplay/android-developer/answer/113476",
       "support.html"
     ]
@@ -1249,9 +1309,6 @@
       "distribute/essentials/optimizing-your-app.html"
     ]
   },
-
-
-
   "distribute/toolsreference/launchchecklist/understanding/zhcn": {
     "title": "",
     "resources": [
@@ -1317,18 +1374,25 @@
       "https://support.google.com/googleplay/android-developer/answer/138000?hl=zh-Hans"
     ]
   },
+  "distribute/stories/localization": {
+    "title": "",
+    "resources": [
+      "distribute/stories/games/rvappstudios-zombie.html",
+      "distribute/stories/games/g4a-indian-rummy.html",
+      "distribute/stories/apps/sayhi.html"
+    ]
+  },
   "distribute/toolsreference/launchchecklist/localization/zhcn": {
     "title": "",
     "resources": [
       "intl/zh-cn/distribute/tools/localization-checklist.html",
-      "guide/topics/resources/localization.html"
     ]
   },
   "distribute/toolsreference/launchchecklist/graphics/zhcn": {
     "title": "",
     "resources": [
       "https://support.google.com/googleplay/android-developer/answer/1078870?hl=zh-Hans",
-      "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html"
+      "https://android-developers.blogspot.com/2011/10/android-market-featured-image.html"
     ]
   },
   "distribute/toolsreference/launchchecklist/productdetails/zhcn": {
@@ -1341,14 +1405,14 @@
   "distribute/toolsreference/launchchecklist/badges/zhcn": {
     "title": "",
     "resources": [
-      "intl/zh-cn/distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "intl/zh-cn/distribute/tools/promote/linking.html"
     ]
   },
   "distribute/toolsreference/launchchecklist/finalchecks/zhcn": {
     "title": "",
     "resources": [
-      "http://play.google.com/about/developer-content-policy.html",
+      "https://play.google.com/about/developer-content-policy.html",
       "https://support.google.com/googleplay/android-developer/answer/113476?hl=zh-Hans",
       "support.html"
     ]
@@ -1393,9 +1457,9 @@
   "distribute/monetize/advertising": {
     "title": "",
     "resources": [
-      "http://www.google.com/ads/admob/#subid=us-en-et-dac",
-      "http://www.google.com/doubleclick/publishers/small-business/index.html",
-      "http://support.google.com/googleplay/android-developer/topic/2985714",
+      "https://www.google.com/ads/admob/#subid=us-en-et-dac",
+      "https://www.google.com/doubleclick/publishers/small-business/index.html",
+      "https://support.google.com/googleplay/android-developer/topic/2985714",
       "training/monetization/ads-and-ux.html"
     ]
   },
@@ -1403,8 +1467,8 @@
     "title": "",
     "resources": [
       "https://support.google.com/admob/topic/2784623",
-      "http://admob.blogspot.com/",
-      "http://analyticsacademy.withgoogle.com/mobile-app",
+      "https://admob.blogspot.com/",
+      "https://analyticsacademy.withgoogle.com/mobile-app",
     ]
   },
   "distribute/monetize/paymentmethods": {
@@ -1414,17 +1478,6 @@
       "https://support.google.com/googleplay/answer/2651410"
     ]
   },
-  "preview/landing/resources": {
-    "title": "",
-    "resources": [
-      "preview/overview.html",
-      "preview/download.html",
-      "preview/setup-sdk.html",
-      "preview/samples.html",
-      "preview/api-overview.html",
-      "preview/support.html"
-    ]
-  },
   "autolanding": {
     "title": "",
     "resources": [
@@ -1449,12 +1502,6 @@
       "training/wearables/ui/index.html"
     ]
   },
-  "play_dev_guide": {
-    "title": "",
-    "resources": [
-      "shareables/distribute/play_dev_guide_secrets_en.pdf"
-    ]
-  },
   "design/auto/auto_ui_guidelines": {
     "title": "",
     "resources": [
@@ -1494,19 +1541,55 @@
       "distribute/googleplay/auto.html"
     ]
   },
+  "training/testing/overview": {
+    "title": "",
+    "resources": [
+      "training/testing/start/index.html",
+      "tools/testing/testing_android.html",
+      "https://www.youtube.com/watch?v=vdasFFfXKOY"
+    ]
+  },
+  "training/testing/tools": {
+    "title": "",
+    "resources": [
+      "tools/testing-support-library/index.html",
+      "tools/help/monkey.html",
+      "tools/help/monkeyrunner_concepts.html",
+      "tools/testing/testing_otheride.html",
+      "https://source.android.com/devices/tech/debug/dumpsys.html"
+    ]
+  },
+  "training/testing/techniques": {
+    "title": "",
+    "resources": [
+      "training/testing/ui-testing/index.html",
+      "training/testing/unit-testing/index.html",
+      "training/testing/performance.html"
+    ]
+  },
+  "training/testing/resources": {
+    "title": "",
+    "resources": [
+      "https://github.com/googlesamples/android-testing",
+      "https://www.youtube.com/watch?v=2I6fuD20qlY",
+      "https://codelabs.developers.google.com/codelabs/android-testing/index.html",
+      "https://github.com/googlesamples/android-testing-templates",
+      "https://google.github.io/android-testing-support-library"
+    ]
+  },
   "distribute/stories/games": {
     "title": "",
     "resources": [
-      "http://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_Deerhunter2014_gpgs.pdf",
-      "http://storage.googleapis.com/androiddevelopers/shareables/stories/ConcreteSoftware_PBABowling_gpgs.pdf",
-      "http://storage.googleapis.com/androiddevelopers/shareables/stories/Dragonplay_DragonplaySlots_gpgs.pdf",
-      "http://storage.googleapis.com/androiddevelopers/shareables/stories/Gameloft_Asphalt8_gpgs.pdf",
-      "http://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_EternityWarriors3_gpgs.pdf",
-      "http://storage.googleapis.com/androiddevelopers/shareables/stories/HotheadGames_RivalsatWar_gpgs.pdf",
-      "http://storage.googleapis.com/androiddevelopers/shareables/stories/TMSOFT_Compulsive_gpgs.pdf",
-      "http://storage.googleapis.com/androiddevelopers/shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.pdf",
-      "http://storage.googleapis.com/androiddevelopers/shareables/stories/TinyRebel_DoctorWhoLegacy_gpgs.pdf",
-      "http://storage.googleapis.com/androiddevelopers/shareables/stories/Senri_LeosFortune_gpgs.pdf"
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_Deerhunter2014_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/ConcreteSoftware_PBABowling_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Dragonplay_DragonplaySlots_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Gameloft_Asphalt8_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_EternityWarriors3_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/HotheadGames_RivalsatWar_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/TMSOFT_Compulsive_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/TinyRebel_DoctorWhoLegacy_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Senri_LeosFortune_gpgs.pdf"
     ]
   },
   "overview/zhcn/1": {
@@ -1532,7 +1615,7 @@
   "overview/zhcn/3": {
     "title": "",
     "resources": [
-      "intl/zh-cn/distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
 
       "intl/zh-cn/distribute/tools/promote/device-art.html",
       "intl/zh-cn/distribute/tools/promote/linking.html",
@@ -1552,9 +1635,9 @@
   "overview/carousel/zhcn": {
     "title": "",
     "resources": [
-      "http://www.youtube.com/watch?v=vGV7FHGzpFU",
-      "http://www.youtube.com/watch?v=aqc3ZOTzpdk",
-      "http://www.youtube.com/watch?v=jaNrJ8uyLSc"
+      "https://www.youtube.com/watch?v=vGV7FHGzpFU",
+      "https://www.youtube.com/watch?v=aqc3ZOTzpdk",
+      "https://www.youtube.com/watch?v=jaNrJ8uyLSc"
     ]
   },
   "overview/1": {
@@ -1580,7 +1663,7 @@
   "overview/3": {
     "title": "",
     "resources": [
-      "distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "distribute/tools/promote/device-art.html",
       "distribute/tools/promote/linking.html",
       "distribute/tools/promote/brand.html",
@@ -1601,10 +1684,11 @@
     "resources": [
       "training/enterprise/app-compatibility.html",
       "training/enterprise/app-restrictions.html",
+      "training/enterprise/cosu.html",
       "https://www.youtube.com/watch?v=39NkpWkaH8M&index=2&list=PLOU2XLYxmsIKAK2Bhv19H2THwF-22O5WX",
       "samples/AppRestrictionSchema/index.html",
-      "samples/AppRestrictionEnforcer/index.html",
-      "https://www.youtube.com/watch?v=dH41OutAMNM"
+      "https://www.youtube.com/watch?v=dH41OutAMNM",
+      "samples/AppRestrictionEnforcer/index.html"
     ]
   },
   "training/work/admin": {
@@ -1647,5 +1731,59 @@
        "tools/performance/batterystats-battery-historian/index.html",
        "tools/performance/batterystats-battery-historian/charts.html"
     ]
-  }
+  },
+  "marshmallow/landing/resources": {
+    "title": "",
+    "resources": [
+       "about/versions/marshmallow/android-6.0-changes.html",
+       "about/versions/marshmallow/android-6.0.html",
+       "about/versions/marshmallow/samples.html"
+    ]
+  },
+  "marshmallow/landing/videos": {
+    "title": "",
+    "resources": [
+       "https://youtu.be/U9tw5ypqEN0",
+       "https://youtu.be/N72ksDKrX6c",
+       "https://youtu.be/iZqDdvhTZj0",
+       "https://www.youtube.com/watch?v=vcSj8ln-BlE",
+       "https://youtu.be/LQoohRwojmw",
+       "https://www.youtube.com/watch?v=VOn7VrTRlA4",
+       "https://youtu.be/5sCQjeGoE7M",
+       "https://www.youtube.com/watch?v=C8lUdPVSzDk",
+       "https://www.youtube.com/watch?v=HXacyy0HSW0",
+       "https://www.youtube.com/watch?v=OW1A4XFRuyc",
+       "https://www.youtube.com/watch?v=j3QC6hcpy90",
+       "https://www.youtube.com/watch?v=f17qe9vZ8RM",
+       "https://www.youtube.com/watch?v=ndBdf1_oOGA"
+    ]
+  },
+  "marshmallow/landing/more": {
+    "title": "",
+    "resources": [
+      "training/permissions/requesting.html",
+      "training/backup/autosyncapi.html",
+      "training/monitoring-device-state/doze-standby.html",
+      "training/app-links/index.html",
+      "training/articles/assistant.html",
+      "training/testing/performance.html",
+      "https://developers.google.com/android/nexus/images"
+    ]
+  },
+  "tools/landing/resources": {
+    "title": "",
+    "resources": [
+    "tools/studio/index.html",
+    "tools/studio/studio-features.html",
+    "sdk/installing/studio-tips.html",
+    ]
+  },
+  "tools/landing/latest": {
+    "title": "",
+    "resources": [
+    "https://medium.com/google-developers/how-often-should-you-update-android-studio-db25785c488e#.8blbql35x",
+    "http://android-developers.blogspot.com/2016/02/android-studio-20-beta.html",
+    "https://medium.com/google-developers/writing-more-code-by-writing-less-code-with-android-studio-live-templates-244f648d17c7#.hczcm02du",
+    ]
+  },
 }
diff --git a/docs/html/jd_extras.js b/docs/html/jd_extras.js
index 5dbca75..eb21dd9 100644
--- a/docs/html/jd_extras.js
+++ b/docs/html/jd_extras.js
@@ -17,6 +17,94 @@
  /* TODO Remove standard resources from here, such as below
  */
   {
+    "title":"Writing More Code by Writing Less Code with Android Studio Live Templates",
+    "titleFriendly":"",
+    "summary":"Unless you’re getting paid by the keystroke, no one wants to write repetitive boilerplate code.",
+    "url":"https://medium.com/google-developers/writing-more-code-by-writing-less-code-with-android-studio-live-templates-244f648d17c7#.hczcm02du",
+    "group":"",
+    "keywords": [],
+    "tags": ['studio'],
+    "image":"https://cdn-images-1.medium.com/max/800/1*JkrYXGs1AxZAbK0sCLrJAQ.gif",
+    "type":"medium"
+  },
+  {
+    "title":"How Often Should You Update Android Studio?",
+    "titleFriendly":"",
+    "summary":"One of the beauties of Android Studio is how quickly is evolves and improves.",
+    "url":"https://medium.com/google-developers/how-often-should-you-update-android-studio-db25785c488e#.8blbql35x",
+    "group":"",
+    "keywords": [],
+    "tags": ['studio'],
+    "image":"https://cdn-images-1.medium.com/max/2000/1*chMiA9mGa_FBUOoesHHk3Q.png",
+    "type":"medium"
+  },
+  {
+    "title":"Measure your app’s user acquisition channels",
+    "titleFriendly":"",
+    "summary":"Get details on how to use the Developer Console User Acquisitions reports to discover where your users come from.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/6263332",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
+    "title":"Set up native app install banners in Chrome",
+    "titleFriendly":"",
+    "summary":"Get the details you need to add your native app or game to your site’s web app manifest file.",
+    "url":"https://developers.google.com/web/updates/2015/03/increasing-engagement-with-app-install-banners-in-chrome-for-android#native",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
+    "title":"Optimize your store listing pages with experiments",
+    "titleFriendly":"",
+    "summary":"You can run experiments to find the most effective graphics and localized text for your app.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/6227309",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
+    "title":"Content Experiments for Mobile Apps",
+    "titleFriendly":"",
+    "summary":"Google Analytics Content Experiments allows you to test multiple variations of a given web page.",
+    "url":"https://support.google.com/tagmanager/answer/6003007",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
+    "title":"Store Listing Experiments for Google Play",
+    "titleFriendly":"",
+    "summary":"Learn how to use Google Play’s new store listing optimization feature to get more installs of your app.",
+    "url":"https://www.youtube.com/watch?v=B6ydLpkhq04",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/B6ydLpkhq04/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Use alpha/beta testing & staged rollouts",
+    "titleFriendly":"",
+    "summary":"Using the Google Play Developer Console, you can choose groups of users to test different versions of your app.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/3131213",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
     "title":"Quizlet Developer Story",
     "titleFriendly":"",
     "summary":"Quizlet is an extremely popular online learning tool for students. See how they optimized for the classroom with Android and the power of Google Play for Education.",
@@ -27,7 +115,7 @@
       "#gpfe",
       "#googleplay"
     ],
-    "image":"http://i1.ytimg.com/vi/Idu7VcTTXfk/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/Idu7VcTTXfk/maxresdefault.jpg",
     "type":"video"
   },
   {
@@ -41,7 +129,7 @@
       "#gpfe",
       "#googleplay"
     ],
-    "image":"http://i1.ytimg.com/vi/IKhU180eJMo/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/IKhU180eJMo/maxresdefault.jpg",
     "type":"video"
   },
   {
@@ -70,7 +158,7 @@
     "title":"Cast sample apps",
     "titleFriendly":"",
     "summary":"Get example Google Cast applications for both senders and receivers.",
-    "url":"http://www.github.com/googlecast",
+    "url":"https://www.github.com/googlecast",
     "group":"",
     "keywords": ["cast", "samples"],
     "tags": [],
@@ -103,7 +191,7 @@
     "title":"Cardboard design guidelines",
     "titleFriendly":"",
     "summary":"Focus on overall usability and avoiding common VR pitfalls while creating an immersive experience of your own.",
-    "url":"http://www.google.com/design/spec-vr",
+    "url":"https://www.google.com/design/spec-vr",
     "group":"",
     "keywords": ["carboard","vr"],
     "tags": [],
@@ -165,7 +253,7 @@
       "#gpfe",
       "#googleplay"
     ],
-    "image":"http://i1.ytimg.com/vi/iokH4SAIfRw/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/iokH4SAIfRw/maxresdefault.jpg",
     "type":"video"
   },
   {
@@ -179,7 +267,7 @@
       "#gpfe",
       "#googleplay"
     ],
-    "image":"http://i1.ytimg.com/vi/Eh2adsAyTKc/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/Eh2adsAyTKc/maxresdefault.jpg",
     "type":"video"
   },
   {
@@ -193,7 +281,7 @@
       "#gpfe",
       "#googleplay"
     ],
-    "image":"http://i1.ytimg.com/vi/_AZ6UcPz-_g/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/_AZ6UcPz-_g/maxresdefault.jpg",
     "type":"video"
   },
   {
@@ -207,79 +295,115 @@
       "#gpfe",
       "#googleplay"
     ],
-    "image":"http://i1.ytimg.com/vi/iulXz8QTD1g/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/iulXz8QTD1g/maxresdefault.jpg",
     "type":"video"
   },
   {
     "title":"DesignBytes: Intro To Material Design",
     "titleFriendly":"",
     "summary":"These days, UI designers need to be thinking about phones, tablets, laptops, TVs, smartwatches, and beyond. In this DesignByte we talk about how Google designers have been working on making cross-platform and multi-screen design easier. We wanted to build a design system that felt at home on every screen, from the smallest watch to the largest TV.",
-    "url":"http://www.youtube.com/watch?v=p4gmvHyuZzw",
+    "url":"https://www.youtube.com/watch?v=p4gmvHyuZzw",
     "group":"",
     "keywords": [],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/p4gmvHyuZzw/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/p4gmvHyuZzw/maxresdefault.jpg",
     "type":"video"
   },
   {
     "title":"DesignBytes: Paper and Ink: The Materials that Matter",
     "titleFriendly":"",
     "summary":"Join Rich Fulcher to learn about the materials of material design. See how virtual paper and ink form the foundation of your tactile user interface and master the rules that govern their behaviour.",
-    "url":"http://www.youtube.com/watch?v=YaG_ljfzeUw",
+    "url":"https://www.youtube.com/watch?v=YaG_ljfzeUw",
     "group":"",
     "keywords": [],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/YaG_ljfzeUw/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/YaG_ljfzeUw/maxresdefault.jpg",
     "type":"video"
   },
   {
     "title":"DesignBytes: Material Design in the Google I/O App",
     "titleFriendly":"",
     "summary":"Roman Nurik shares details on the design process for the Google I/O 2014 app. To check out the app's source code, visit github.com/google/iosched.",
-    "url":"http://www.youtube.com/watch?v=XOcCOBe8PTc",
+    "url":"https://www.youtube.com/watch?v=XOcCOBe8PTc",
     "group":"",
     "keywords": [],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/XOcCOBe8PTc/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/XOcCOBe8PTc/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Toolbars for a flexible Action Bar & more",
+    "titleFriendly":"",
+    "summary":"Toolbars are a flexible View you can add to your Android app which provides many of the same APIs as the system provided Action Bar, but can also do so much more such as reacting to scrolling or being integrated directly into your layouts.",
+    "url":"https://www.youtube.com/watch?v=kmUGLURRPkI",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/kmUGLURRPkI/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Protecting Implicit Intents with Runtime Checks",
+    "titleFriendly":"",
+    "summary":"Make sure you protect your implicit intents with a simple runtime check.",
+    "url":"https://www.youtube.com/watch?v=HGElAW224dE",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/HGElAW224dE/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Tabs and ViewPager",
+    "titleFriendly":"",
+    "summary":"Showing multiple screens or pages of content is easy with the help of ViewPager and a PagerAdapter. Combining that with tabs make for an effective top level navigation strategy for your app or for moving between content at the same level of hierarchy within your app.",
+    "url":"https://www.youtube.com/watch?v=zQekzaAgIlQ",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/zQekzaAgIlQ/maxresdefault.jpg",
     "type":"video"
   },
   {
     "title":"Battery Drain and Networking",
     "titleFriendly":"",
     "summary":"Let’s take a moment to make something insanely clear: As far as battery is concerned, NETWORKING is the biggest, baddest, dirtiest offender there is. And optimizing performance here isn’t easy. Since the chip isn’t always awake and draining power, means you can optimize how it wakes up, sends traffic, and saves battery.",
-    "url":"http://www.youtube.com/watch?v=fEEulSk1kNY",
+    "url":"https://www.youtube.com/watch?v=fEEulSk1kNY",
     "group":"",
     "keywords": [],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/fEEulSk1kNY/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/fEEulSk1kNY/maxresdefault.jpg",
     "type":"video"
   },
   {
     "title":"Batching Background Work Until Later",
     "titleFriendly":"",
     "summary":"Yes, your app is special. But when it comes to battery use, sometimes it’s better to be part of the crowd. Why not spread the battery blame around a bit? Ian Ni-Lewis shows you how ridiculously easy it is to go from battery hog to team player in this video.",
-    "url":"http://www.youtube.com/watch?v=-3ry8PxcJJA",
+    "url":"https://www.youtube.com/watch?v=-3ry8PxcJJA",
     "group":"",
     "keywords": [],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/-3ry8PxcJJA/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/-3ry8PxcJJA/maxresdefault.jpg",
     "type":"video"
   },
   {
     "title":"The Performance Lifecycle",
     "titleFriendly":"",
     "summary":"Performance problems surface in your application at the least-wanted times (like right before you’re about to ship your first build). But don’t freak out: There’s a simple process that you can follow to help get your performance back under control.",
-    "url":"http://www.youtube.com/watch?v=_kKTGK-Cb_4",
+    "url":"https://www.youtube.com/watch?v=_kKTGK-Cb_4",
     "group":"",
     "keywords": [],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/_kKTGK-Cb_4/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/_kKTGK-Cb_4/maxresdefault.jpg",
     "type":"video"
   },
   {
@@ -291,7 +415,7 @@
     "keywords": ["studio", "tools"],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/K2dodTXARqc/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/K2dodTXARqc/maxresdefault.jpg",
     "type":"video"
   },
 
@@ -304,7 +428,7 @@
     "keywords": ["google play services"],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/M3Udfu6qidk/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/M3Udfu6qidk/maxresdefault.jpg",
     "type":"video"
   },
   {
@@ -316,7 +440,7 @@
     "keywords": ["google play services"],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/FOn64iqlphk/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/FOn64iqlphk/maxresdefault.jpg",
     "type":"video"
   },
   {
@@ -328,7 +452,7 @@
     "keywords": ["google play services"],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/fvtMtfCuEpw/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/fvtMtfCuEpw/maxresdefault.jpg",
     "type":"video"
   },
     {
@@ -340,19 +464,19 @@
     "keywords": ["google play services"],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/F0Kh_RnSM0w/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/F0Kh_RnSM0w/maxresdefault.jpg",
     "type":"video"
   },
   {
     "title":"Running a Successful Games Business with Google",
     "titleFriendly":"",
     "summary":"Sure, we all want to make the next great gaming masterpiece. But we also want to feed our families and/or dogs. Join Bob Meese from the Google Play team as he gives you some key pointers on how to make sure you're best taking advantage of Google Play and running a successful games business.",
-    "url":"http://www.youtube.com/watch?v=tDmnGNkTtlE",
+    "url":"https://www.youtube.com/watch?v=tDmnGNkTtlE",
     "group":"",
     "keywords": [],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/tDmnGNkTtlE/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/tDmnGNkTtlE/maxresdefault.jpg",
     "type":"video"
   },
   {
@@ -364,7 +488,7 @@
     "keywords": ["tv"],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/6K_jxccHv5M/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/6K_jxccHv5M/maxresdefault.jpg",
     "type":"video"
   },
   {
@@ -376,10 +500,94 @@
     "keywords": ["auto"],
     "tags": [
     ],
-    "image":"http://i1.ytimg.com/vi/ctiaVxgclsg/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/ctiaVxgclsg/maxresdefault.jpg",
     "type":"video"
   },
   {
+    "title":"Debugging and testing in Android Studio",
+    "titleFriendly":"",
+    "summary":"This video introduces the state of unit testing support in Studio and Google’s new Android Testing Support Library for functional UI testing and running instrumented tests on a device.",
+    "url":"https://www.youtube.com/watch?v=2I6fuD20qlY",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/2I6fuD20qlY/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Android Testing (Android Dev Summit 2015)",
+    "titleFriendly":"",
+    "summary":"Overview of the testing tools and frameworks provided by Google and how they can help you to iterate more quickly and maintain a more healthy codebase.",
+    "url":"https://www.youtube.com/watch?v=vdasFFfXKOY",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/vdasFFfXKOY/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"dumpsys",
+    "titleFriendly":"",
+    "summary":"A tool that runs on the device and provides information about the status of system services.",
+    "url":"https://source.android.com/devices/tech/debug/dumpsys.html",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"",
+    "type":"google"
+  },
+  {
+    "title":"Android Testing Samples",
+    "titleFriendly":"",
+    "summary":"A collection of samples demonstrating different frameworks and techniques for automated testing.",
+    "url":"https://github.com/googlesamples/android-testing",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"images/testing/testing-icon.png",
+    "type":"Samples"
+  },
+  {
+    "title":"Android Testing Templates",
+    "titleFriendly":"",
+    "summary":"A collection of Google's Android testing tools and frameworks, all integrated in a single application project.",
+    "url":"https://github.com/googlesamples/android-testing-templates",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"images/testing/testing-icon.png",
+    "type":"Samples"
+  },
+   {
+    "title":"Android Testing Support Library (GitHub)",
+    "titleFriendly":"",
+    "summary":"A resource page on GitHub for the Android Testing Support Library.",
+    "url":"https://google.github.io/android-testing-support-library",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"images/testing/testing-icon.png",
+    "type":"Samples"
+  },
+  {
+    "title":"Android Testing Codelab",
+    "titleFriendly":"",
+    "summary":"This codelab shows how to build an Android app from the ground up in Android Studio, using a Model View Presenter architecture, Unit Tests and Instrumentation Tests.",
+    "url":"https://codelabs.developers.google.com/codelabs/android-testing/index.html",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"images/testing/testing-icon.png",
+    "type":"google"
+  },
+  {
     "title":"Developer Registration",
     "titleFriendly":"",
     "summary":"Additional information about the registration process.",
@@ -425,6 +633,17 @@
     "type":"google"
   },
   {
+    "title":"Google Play Badge Generator",
+    "titleFriendly":"",
+    "summary":"Build badges for your app in just a few clicks, or download hi-res badge assets localized for a variety of languages.",
+    "url":"https://play.google.com/intl/en_us/badges/",
+    "group":"",
+    "keywords": [],
+    "tags": ["#developersupport"],
+    "image":"images/gp-badges-set.png",
+    "type":"google"
+  },
+  {
     "lang": "en",
     "group": "",
     "tags": ["#developersupport #termsandpolicies"],
@@ -445,7 +664,7 @@
     "group":"",
     "keywords": [],
     "tags": [],
-    "image":"http://storage.googleapis.com/support-kms-prod/SNP_712EA2784949DDF085C46E3BE7B1DC618A09_4389397_en_v0",
+    "image":"https://storage.googleapis.com/support-kms-prod/SNP_712EA2784949DDF085C46E3BE7B1DC618A09_4389397_en_v0",
     "type":"google"
   },
   {
@@ -456,7 +675,7 @@
     "group":"",
     "keywords": [],
     "tags": [],
-    "image":"http://storage.googleapis.com/support-kms-prod/SNP_712EA2784949DDF085C46E3BE7B1DC618A09_4389397_en_v0",
+    "image":"https://storage.googleapis.com/support-kms-prod/SNP_712EA2784949DDF085C46E3BE7B1DC618A09_4389397_en_v0",
     "type":"google"
   },
   {
@@ -485,7 +704,7 @@
     "title":"Google for Education",
     "titleFriendly":"",
     "summary":"Find out more about how Google can support your work with apps and tablets.",
-    "url":"http://www.google.com/edu/tablets/",
+    "url":"https://www.google.com/edu/tablets/",
     "group":"",
     "keywords": [],
     "tags": [],
@@ -506,22 +725,54 @@
   {
     "title":"Google Play Game Services",
     "titleFriendly":"",
-    "summary":"Tools to offer a better game experience.",
-    "url":"google/play-services/games.html",
+    "summary":"Make your games social with Google Play game services. Add achievements, leaderboards, real-time multiplayer, and other popular features using the Google Play game services SDK.",
+    "url":"https://developers.google.com/games/services/",
     "group":"",
     "keywords": ["games","play games"],
     "tags": [],
     "image":"images/google/gps-play_games_logo.png",
     "type":"google"
   },
-
+  {
+    "title":"Get Started with Analytics",
+    "titleFriendly":"",
+    "summary":"Get advanced insight into how players discover and play your games.",
+    "url":"distribute/analyze/start.html",
+    "group":"",
+    "keywords": ["analytics"],
+    "tags": [],
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "type": "distribute"
+  },
+  {
+    "title":"Build VR with Google Cardboard",
+    "titleFriendly":"",
+    "summary":"Turn any phone into a virtual reality headset with a Cardboard viewer and experiment with adding virtual reality to your games with the Cardboard SDK.",
+    "url":"distribute/googleplay/cardboard.html",
+    "group":"",
+    "keywords": ["cardboard"],
+    "tags": [],
+    "image":"images/cards/card-cardboard_2x.png",
+    "type": "distribute"
+  },
+  {
+    "title":"Monetize your apps intelligently",
+    "titleFriendly":"",
+    "summary":"Generate revenue from your free games with ads tailored to match your game's look and feel.",
+    "url":"https://www.google.com/admob/",
+    "group":"",
+    "keywords": ["AdMob"],
+    "tags": [],
+    "image":"images/cards/admob-analytics_2x.png",
+    "type": "distribute"
+  },
   {
     "lang": "en",
     "group": "",
     "tags": [
       "versions", "blog", "googleplay"
     ],
-    "url": "http://android-developers.blogspot.com/",
+    "url": "https://android-developers.blogspot.com/",
     "timestamp": 1004884220000,
     "image": "images/blog.jpg",
     "title": "Android Developers Blog",
@@ -530,12 +781,11 @@
     "type": "blog",
     "titleFriendly": ""
   },
-
   {
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html",
+    "url": "https://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html",
     "timestamp": 1194884220000,
     "image": null,
     "title": "Making Android Apps that Play Nice",
@@ -548,7 +798,7 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html",
+    "url": "https://android-developers.blogspot.com/2010/07/multithreading-for-performance.html",
     "timestamp": 1194884220000,
     "image": null,
     "title": "Multithreading for Performance",
@@ -561,7 +811,7 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://play.google.com/about/developer-content-policy.html",
+    "url": "https://play.google.com/about/developer-content-policy.html",
     "timestamp": 1194884220000,
     "image": "images/play_dev.jpg",
     "title": "Developer Program Policies",
@@ -584,6 +834,19 @@
     "titleFriendly": ""
   },
   {
+    "lang": "en",
+    "group": "",
+    "tags": ["devices", "nexus", "testing"],
+    "url": "https://developers.google.com/android/nexus/images",
+    "timestamp": 1194884220000,
+    "image": "images/cards/card-download_16-9_2x.png",
+    "title": "Factory Images for Nexus Devices",
+    "summary": "System image files for Android 6.0 and other Android releases.",
+    "keywords": ["nexus, downloads"],
+    "type": "support",
+    "titleFriendly": ""
+  },
+  {
     "lang": "zh-cn",
     "group": "",
     "tags": [],
@@ -600,7 +863,7 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
+    "url": "https://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
     "timestamp": 1194884220000,
     "image": "images/play_dev.jpg",
     "title": "Google Play Featured Image Guidelines",
@@ -782,9 +1045,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://youtu.be/SkHHPf3EdzE",
+    "url": "https://youtu.be/SkHHPf3EdzE",
     "timestamp": 1194884220000,
-    "image": "http://i1.ytimg.com/vi/SkHHPf3EdzE/maxresdefault.jpg",
+    "image": "https://i1.ytimg.com/vi/SkHHPf3EdzE/maxresdefault.jpg",
     "title": "Level Up Your Android Game",
     "summary": "Learn how to take your game to the next level on Google Play.",
     "keywords": [],
@@ -808,7 +1071,7 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://play.google.com/about/developer-distribution-agreement.html",
+    "url": "https://play.google.com/about/developer-distribution-agreement.html",
     "timestamp": 1194884220000,
     "image": "images/play_dev.jpg",
     "title": "Developer Distribution Agreement",
@@ -847,7 +1110,7 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://play.google.com/about/developer-distribution-agreement-addendum.html",
+    "url": "https://play.google.com/about/developer-distribution-agreement-addendum.html",
     "timestamp": 1194884220000,
     "image": "images/play_dev.jpg",
     "title": "Google Play for Education Addendum",
@@ -860,7 +1123,7 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://android-developers.blogspot.com/2013/03/native-rtl-support-in-android-42.html",
+    "url": "https://android-developers.blogspot.com/2013/03/native-rtl-support-in-android-42.html",
     "timestamp": null,
     "image": null,
     "title": "Native RTL Support in Android 4.2",
@@ -1020,7 +1283,7 @@
     "group":"",
     "keywords": ["android","dashboard","platforms","versions"],
     "tags": ["#ecosystem","#versions","#whatsnew"],
-    "image":"http://chart.googleapis.com/chart?chl=GL%201.1%20only%7CGL%202.0%7CGL%203.0&chf=bg%2Cs%2C00000000&chd=t%3A0.1%2C93.5%2C6.4&chco=c4df9b%2C6fad0c&chs=400x250&cht=p",
+    "image":"https://chart.googleapis.com/chart?chl=GL%201.1%20only%7CGL%202.0%7CGL%203.0&chf=bg%2Cs%2C00000000&chd=t%3A0.1%2C93.5%2C6.4&chco=c4df9b%2C6fad0c&chs=400x250&cht=p",
     "lang":"en",
     "type":"about"
   },
@@ -1239,9 +1502,9 @@
       "#gpfe",
       "#googleplay"
     ],
-    "url": "http://youtu.be/vzvpcEffvaE",
+    "url": "https://youtu.be/vzvpcEffvaE",
     "timestamp": 1383243492000,
-    "image": "http://i1.ytimg.com/vi/vzvpcEffvaE/maxresdefault.jpg",
+    "image": "https://i1.ytimg.com/vi/vzvpcEffvaE/maxresdefault.jpg",
     "title": "Introducing Tablets with Google Play for Education",
     "summary": "Schools in Hillsborough, New Jersey were among the first to try out Nexus 7 tablets with Google Play for Education. See the difference it made for students, teachers, and administrators.",
     "keywords": [],
@@ -1254,9 +1517,9 @@
     "tags": [
       "#engagement",
     ],
-    "url": "http://www.youtube.com/yt/dev/",
+    "url": "https://www.youtube.com/yt/dev/",
     "timestamp": 1383243492000,
-    "image": "http://www.youtube.com/yt/dev/media/images/yt-dev-home-hero.jpg",
+    "image": "https://www.youtube.com/yt/dev/media/images/yt-dev-home-hero.jpg",
     "title": "YouTube for Developers",
     "summary": "The YouTube APIs and Tools enable you to integrate YouTube's video content and functionality into your website, app, or device.",
     "keywords": [],
@@ -1269,7 +1532,7 @@
     "tags": [
       "#engagement",
     ],
-    "url": "http://www.google.com/analytics/mobile/",
+    "url": "https://www.google.com/analytics/mobile/",
     "timestamp": 1383243492000,
     "image": "images/cards/analytics-mobile_2x.jpg",
     "title": "Mobile App Analytics",
@@ -1286,9 +1549,9 @@
     "tags": [
       "#gcm",
     ],
-    "url": "http://www.youtube.com/watch?v=y76rjidm8cU",
+    "url": "https://www.youtube.com/watch?v=y76rjidm8cU",
     "timestamp": 1383243492000,
-    "image": "http://1.bp.blogspot.com/-IF-1-1kA0sg/UYwTidxdi3I/AAAAAAAAAEU/ellLeQ-E1vs/s800/google-io-lockup-2.png",
+    "image": "https://1.bp.blogspot.com/-IF-1-1kA0sg/UYwTidxdi3I/AAAAAAAAAEU/ellLeQ-E1vs/s800/google-io-lockup-2.png",
     "title": "Google Cloud Messaging at I/O 2013",
     "summary": "Google Cloud Messaging allows your services to efficiently send data to applications on Android devices. See what's new, and learn how to use GCM to make your apps more efficient.",
     "keywords": ["gcm"],
@@ -1301,7 +1564,7 @@
     "tags": [
       "#gcm",
     ],
-    "url": "http://developer.chrome.com/apps/cloudMessagingV2",
+    "url": "https://developer.chrome.com/apps/cloudMessagingV2",
     "timestamp": 1383243492000,
     "image": "images/kk-chromium-icon.png",
     "title": "Google Cloud Messaging for Chrome",
@@ -1317,7 +1580,7 @@
     "tags": [
       "#sdkupdates"
     ],
-    "url": "http://android-developers.blogspot.com/2013/07/making-beautiful-android-app-icons.html",
+    "url": "https://android-developers.blogspot.com/2013/07/making-beautiful-android-app-icons.html",
     "timestamp": 1194884220000,
     "image": null,
     "title": "Make Beautiful Android App Icons",
@@ -1332,7 +1595,7 @@
     "tags": [
       "#sdkupdates"
     ],
-    "url": "http://android-developers.blogspot.com/2012/12/localize-your-promotional-graphics-on.html",
+    "url": "https://android-developers.blogspot.com/2012/12/localize-your-promotional-graphics-on.html",
     "timestamp": 1194884220000,
     "image": null,
     "title": "Localize Your Promotional Graphics",
@@ -1347,7 +1610,7 @@
     "tags": [
       "#sdkupdates"
     ],
-    "url": "http://android-developers.blogspot.com/2013/10/making-your-app-content-more-accessible.html",
+    "url": "https://android-developers.blogspot.com/2013/10/making-your-app-content-more-accessible.html",
     "timestamp": 1194884220000,
     "image": null,
     "title": "Make your App Content more Accessible with App Linking",
@@ -1438,7 +1701,7 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://en.wikipedia.org/wiki/XLIFF",
+    "url": "https://en.wikipedia.org/wiki/XLIFF",
     "timestamp": 1194884220000,
     "image": null,
     "title": "XML Localisation Interchange File Format (XLIFF)",
@@ -1503,7 +1766,7 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://android-developers.blogspot.com/2013/11/bring-your-apps-into-classroom-with.html",
+    "url": "https://android-developers.blogspot.com/2013/11/bring-your-apps-into-classroom-with.html",
     "timestamp": null,
     "image": "distribute/images/gp-edu-apps-image.jpg",
     "title": "Google play for education",
@@ -1542,7 +1805,7 @@
     "lang": "en",
     "group": "",
     "tags": ["games", "localization", "quality"],
-    "url": "http://www.youtube.com/watch?v=SkHHPf3EdzE",
+    "url": "https://www.youtube.com/watch?v=SkHHPf3EdzE",
     "timestamp": null,
     "image": "https://developers.google.com/apps/images/io_2013/google-io-logo.png",
     "title": "Level Up Your Android Game",
@@ -1581,9 +1844,9 @@
     "lang": "en",
     "group": "",
     "tags": ["monetize", "ads"],
-    "url": "http://www.google.com/doubleclick/publishers/small-business/index.html",
+    "url": "https://www.google.com/doubleclick/publishers/small-business/index.html",
     "timestamp": null,
-    "image": "http://www.google.com/doubleclick/publishers/small-business/images/define_ad.png",
+    "image": "https://www.google.com/doubleclick/publishers/small-business/images/define_ad.png",
     "title": "DoubleClick for Publishers",
     "summary": "A free ad management solution that helps growing publishers sell, schedule, deliver, and measure all of their digital ad inventory.",
     "keywords": ["ads"],
@@ -1594,7 +1857,7 @@
     "lang": "en",
     "group": "",
     "tags": ["monetize", "ads"],
-    "url": "http://support.google.com/googleplay/android-developer/topic/2985714",
+    "url": "https://support.google.com/googleplay/android-developer/topic/2985714",
     "timestamp": null,
     "image":"images/play_dev.jpg",
     "title": "Policy Center: Ads",
@@ -1620,7 +1883,7 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://admob.blogspot.com/",
+    "url": "https://admob.blogspot.com/",
     "timestamp": null,
     "image": "images/cards/analytics-mobile_2x.jpg",
     "title": "Inside Admob",
@@ -1685,7 +1948,7 @@
     "lang": "en",
     "group": "",
     "tags": ["plus", "social"],
-    "url": "http://plus.google.com/+GooglePlay",
+    "url": "https://plus.google.com/+GooglePlay",
     "timestamp": null,
     "image": "https://lh4.googleusercontent.com/-IKezweZlcXI/AAAAAAAAAAI/AAAAAAABOvg/uK8Z0jekVE4/s120-c/photo.jpg",
     "title": "+Google Play",
@@ -1726,7 +1989,7 @@
     "tags": [],
     "url": "https://developers.google.com/edu/guidelines",
     "timestamp": null,
-    "image": "http://developer.android.com/distribute/images/edu-guidelines.jpg",
+    "image": "https://developer.android.com/distribute/images/edu-guidelines.jpg",
     "title": "Education Guidelines",
     "summary": "These guidelines and requirements help you develop great apps for students, which offer compelling content and an intuitive user experience on Android tablets.",
     "keywords": [],
@@ -1739,7 +2002,7 @@
     "tags": [],
     "url": "https://developers.google.com/edu/guidelines?hl=zh-Hans",
     "timestamp": null,
-    "image": "http://developer.android.com/distribute/images/edu-guidelines.jpg",
+    "image": "https://developer.android.com/distribute/images/edu-guidelines.jpg",
     "title": "Education Guidelines",
     "summary": "These guidelines and requirements help you develop great apps for students, which offer compelling content and an intuitive user experience on Android tablets.",
     "keywords": [],
@@ -1752,7 +2015,7 @@
     "tags": [],
     "url": "https://developers.google.com/edu/faq",
     "timestamp": null,
-    "image": "http://developer.android.com/distribute/images/gpfe-faq.jpg",
+    "image": "https://developer.android.com/distribute/images/gpfe-faq.jpg",
     "title": "Education FAQ",
     "summary": "Answers to common questions you might have about Google Play for Education.",
     "keywords": [],
@@ -1789,9 +2052,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_Deerhunter2014_gpgs.pdf",
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_Deerhunter2014_gpgs.pdf",
     "timestamp": null,
-    "image": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_Deerhunter2014_gpgs.png",
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_Deerhunter2014_gpgs.png",
     "title": "Deer Hunter 2014 by Glu &mdash; Sign-in",
     "summary": "Glu finds that Google Play Game Services helps improve the user experience which leads to increased player happiness. They also find that Play Games Services signed in users tend to play longer and have a higher lifetime value.",
     "keywords": ["stories"],
@@ -1802,9 +2065,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://storage.googleapis.com/androiddevelopers/shareables/stories/ConcreteSoftware_PBABowling_gpgs.pdf",
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/ConcreteSoftware_PBABowling_gpgs.pdf",
     "timestamp": null,
-    "image": "http://storage.googleapis.com/androiddevelopers/shareables/stories/ConcreteSoftware_PBABowling_gpgs.png",
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/ConcreteSoftware_PBABowling_gpgs.png",
     "title": "PBA® Bowling Challenge by Concrete Software &mdash; Quests",
     "summary": "Concrete Software finds that Google Play Game Services' quests are a great way to create new content for users that leads to higher engagement.",
     "keywords": ["stories"],
@@ -1815,9 +2078,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Dragonplay_DragonplaySlots_gpgs.pdf",
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Dragonplay_DragonplaySlots_gpgs.pdf",
     "timestamp": null,
-    "image": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Dragonplay_DragonplaySlots_gpgs.png",
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Dragonplay_DragonplaySlots_gpgs.png",
     "title": "Dragonplay Slots by Dragonplay &mdash; Sign-in",
     "summary": "Dragonplay finds that players who sign in with Google Play Games services tend to be high quality users who were highly engaged. They also tend to be easier to convert to paying users.",
     "keywords": ["stories"],
@@ -1828,9 +2091,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Gameloft_Asphalt8_gpgs.pdf",
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Gameloft_Asphalt8_gpgs.pdf",
     "timestamp": null,
-    "image": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Gameloft_Asphalt8_gpgs.png",
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Gameloft_Asphalt8_gpgs.png",
     "title": "Asphalt 8 by Gameloft &mdash; Friends invitations",
     "summary": "Gameloft finds that Google Play Game Services users are more engaged than the average Android user and more likely to convert to paying players.",
     "keywords": ["stories"],
@@ -1841,9 +2104,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_EternityWarriors3_gpgs.pdf",
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_EternityWarriors3_gpgs.pdf",
     "timestamp": null,
-    "image": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_EternityWarriors3_gpgs.png",
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_EternityWarriors3_gpgs.png",
     "title": "Eternity Warriors 3 by Glu &mdash; Gifting",
     "summary": "Glu finds that Google Play Game Services gifting outperforms other implementations (including those with incentives) because of its seamless flow and consistent performance.",
     "keywords": ["stories"],
@@ -1854,9 +2117,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://storage.googleapis.com/androiddevelopers/shareables/stories/HotheadGames_RivalsatWar_gpgs.pdf",
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/HotheadGames_RivalsatWar_gpgs.pdf",
     "timestamp": null,
-    "image": "http://storage.googleapis.com/androiddevelopers/shareables/stories/HotheadGames_RivalsatWar_gpgs.jpg",
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/HotheadGames_RivalsatWar_gpgs.jpg",
     "title": "Rivals at War: Firefight by Hothead Games &mdash; Leaderboards",
     "summary": "Hothead Games is planning to include Google Play Game Services features in all their games going forwards after seeing that players that signed in with Play Games Services tend to show higher retention and a higher average revenue.",
     "keywords": ["stories"],
@@ -1867,9 +2130,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://storage.googleapis.com/androiddevelopers/shareables/stories/TMSOFT_Compulsive_gpgs.pdf",
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/TMSOFT_Compulsive_gpgs.pdf",
     "timestamp": null,
-    "image": "http://storage.googleapis.com/androiddevelopers/shareables/stories/TMSOFT_Compulsive_gpgs.png",
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/TMSOFT_Compulsive_gpgs.png",
     "title": "Compulsive by TMSOFT &mdash; Cross-platform",
     "summary": "TMSOFT finds that users who authenticate with Play Games Services on Android and iOS play Compulsive twice as much and purchase in-app products over four times as much.",
     "keywords": ["stories"],
@@ -1880,9 +2143,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.pdf",
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.pdf",
     "timestamp": null,
-    "image": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.png",
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.png",
     "title": "Super Stickman Golf 2 by Noodlecake Studios &mdash; Multiplayer",
     "summary": "Noodlecake Studios finds that Google Play Game Services’ multiplayer feature helps reduce attrition.",
     "keywords": ["stories"],
@@ -1893,9 +2156,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://storage.googleapis.com/androiddevelopers/shareables/stories/TinyRebel_DoctorWhoLegacy_gpgs.pdf",
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/TinyRebel_DoctorWhoLegacy_gpgs.pdf",
     "timestamp": null,
-    "image": "http://storage.googleapis.com/androiddevelopers/shareables/stories/TinyRebelGames_DrWhoLegacy_pgps.png",
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/TinyRebelGames_DrWhoLegacy_pgps.png",
     "title": "Dr. Doctor Who: Legacy by Tiny Rebel Games &mdash; Achievements",
     "summary": "After integrating achievements and cloud services from Google Play Game Services, Tiny Rebel Games saw a dramatic increase in daily revenues as a result of an increase in daily installs and an increase in the average revenue per install.",
     "keywords": ["stories"],
@@ -1906,9 +2169,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Senri_LeosFortune_gpgs.pdf",
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Senri_LeosFortune_gpgs.pdf",
     "timestamp": null,
-    "image": "http://storage.googleapis.com/androiddevelopers/shareables/stories/Senri_LeosFortune_gpgs.png",
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Senri_LeosFortune_gpgs.png",
     "title": "Leo’s Fortune by 1337 &amp; Senri &mdash; Saved games",
     "summary": "1337 + Senri finds that Google Play Game Services is easy to integrate and provides essential game functions like cloud saved games, achievements and leaderboards which have a very large adoption rate amongst players.",
     "keywords": ["stories"],
@@ -1918,15 +2181,15 @@
   {
     "lang": "en",
     "group": "",
-    "tags": [],
-    "url": "shareables/distribute/play_dev_guide_secrets_en.pdf",
-    "timestamp": null,
-    "image": "distribute/images/play_dev_guide_b.jpg",
+    "tags": ["play,protips"],
+    "url": "shareables/distribute/secrets_play/v2/web/secrets_to_app_success_v2_en.pdf",
+    "timestamp": 1447437450,
+    "image": "images/distribute/secrets_v2_banner.jpg",
     "title": "The Secrets to App Success on Google Play",
-    "summary": "A guide to useful features, tips, and best practices that will help you grow a successful app business on Google Play.",
-    "keywords": ["distribute"],
-    "type": "PDF DOWNLOAD (11MB)",
-    "titleFriendly": ""
+    "summary": "Get the updated guide full of useful features, tips, and best practices that will help you grow a successful app or game business on Google Play.",
+    "keywords": ["secrets, success, play, google"],
+    "type": "Book",
+    "category": "distribute"
   },
   {
     "lang": "en",
@@ -1984,9 +2247,9 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://www.google.com/tagmanager/",
+    "url": "https://www.google.com/tagmanager/",
     "timestamp": null,
-    "image": "http://www.google.com/tagmanager/images/gtm-hero-illustration-small.png",
+    "image": "https://www.google.com/tagmanager/images/gtm-hero-illustration-small.png",
     "title": "Google Tag Manager",
     "summary": "Google Tag Manager enables you to change configuration values in your mobile apps using the Google Tag Manager interface, without having to rebuild and resubmit application binaries to app marketplaces.",
     "keywords": ["analytics", "tagmanager"],
@@ -2181,7 +2444,7 @@
     "tags": [],
     "url": "https://support.google.com/tagmanager/answer/6003007",
     "timestamp": null,
-    "image": "http://www.google.com/tagmanager/images/gtm-hero-illustration-small.png",
+    "image": "https://www.google.com/tagmanager/images/gtm-hero-illustration-small.png",
     "title": "In-App A/B Testing",
     "summary": "With content experiments in Google Tag Manager you can test multiple variations of your app to find which works best.",
     "keywords": ["tagmanager"],
@@ -2507,7 +2770,7 @@
     "lang": "en",
     "group": "",
     "tags": [],
-    "url": "http://analyticsacademy.withgoogle.com/mobile-app",
+    "url": "https://analyticsacademy.withgoogle.com/mobile-app",
     "timestamp": null,
     "image": "distribute/images/advertising.jpg",
     "title": "Analytics Academy for Mobile Apps",
@@ -2650,6 +2913,200 @@
     "titleFriendly": ""
   },
 
+ // Online courses
+
+ {
+    "title":"UX Design for Mobile Developers",
+    "titleFriendly":"",
+    "summary":"Learn how to design a 5-star app.",
+    "url":"https://www.udacity.com/course/ud849",
+    "group":"",
+    "keywords": ["mobile","ux","design"],
+    "tags": ["courses, start"],
+    "image":"images/cards/courses/mobile_ux_course.jpg",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Developing Android Apps",
+    "titleFriendly":"",
+    "summary":"Learn Android and build an app!",
+    "url":"https://www.udacity.com/course/ud853",
+    "group":"",
+    "keywords": ["android", "start","firstapp","sdk"],
+    "tags": ["courses, start"],
+    "image":"images/cards/courses/android_fundamentals_course.jpg",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Android Performance",
+    "titleFriendly":"",
+    "summary":"Optimize your apps for speed and usability.",
+    "url":"https://www.udacity.com/course/ud825",
+    "group":"",
+    "keywords": ["android, performance","battery"],
+    "tags": ["courses, performance"],
+    "image":"images/cards/courses/android_performance_course.jpg",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Enroll in the Android Nanodegree",
+    "titleFriendly":"",
+    "summary":"Enroll in the Android Nanodegree to build the skills to work as an Android developer.",
+    "url":"https://www.udacity.com/android",
+    "group":"",
+    "keywords": ["android, nanodegree"],
+    "tags": ["courses"],
+    "image":"images/cards/courses/android_nanodegree.png",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Advanced Android App Development",
+    "titleFriendly":"",
+    "summary":"Productionize and publish your apps.",
+    "url":"https://www.udacity.com/course/ud855",
+    "group":"",
+    "keywords": ["android, experts"],
+    "tags": ["courses, expert"],
+    "image":"images/cards/courses/advanced_android_course.jpg",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Material Design for Android Developers",
+    "titleFriendly":"",
+    "summary":"Learn how to make your apps material.",
+    "url":"https://www.udacity.com/course/ud862",
+    "group":"",
+    "keywords": ["android, design, pure, material"],
+    "tags": ["courses, start, material"],
+    "image":"images/cards/courses/android_design_course.jpg",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Android for Beginners",
+    "titleFriendly":"",
+    "summary":"Make your first Android app, even if you don't write code.",
+    "url":"https://www.udacity.com/course/ud837",
+    "group":"",
+    "keywords": ["android, sdk, firstapp"],
+    "tags": ["courses, start"],
+    "image":"images/cards/courses/beginning_android_course.jpg",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Gradle for Android and Java",
+    "titleFriendly":"",
+    "summary":"Build better apps through automation",
+    "url":"https://www.udacity.com/course/ud867",
+    "group":"",
+    "keywords": ["gradle","studio", "sdk"],
+    "tags": ["courses, gradle, sdk"],
+    "image":"images/cards/courses/gradle_course.jpg",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Add Location and Context to your app",
+    "titleFriendly":"",
+    "summary":"Make Your Android App Location Aware.",
+    "url":"https://www.udacity.com/course/ud876-1",
+    "group":"",
+    "keywords": ["google services, context, location"],
+    "tags": ["courses, google, location, context"],
+    "image":"images/cards/courses/android_location_course.png",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Analytics and Tag Manager for Android",
+    "titleFriendly":"",
+    "summary":"Use Analytics and Tag Manager in Your Apps.",
+    "url":"https://www.udacity.com/course/ud876-2",
+    "group":"",
+    "keywords": ["google services, analytics, tag manager"],
+    "tags": ["courses, google, analytics"],
+    "image":"images/cards/courses/android_analytics_course.png",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"AdMob for Android",
+    "titleFriendly":"",
+    "summary":"Monetize Your App by Displaying Ads.",
+    "url":"https://www.udacity.com/course/ud876-3",
+    "group":"",
+    "keywords": ["monetize, google services, ads, admob"],
+    "tags": ["courses, google, ads, admob"],
+    "image":"images/cards/courses/admob_course.png",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Add Maps to your Android app",
+    "titleFriendly":"",
+    "summary":"Use maps, cameras, markers and more in your app.",
+    "url":"https://www.udacity.com/course/ud876-4",
+    "group":"",
+    "keywords": ["google, maps, marker, camera"],
+    "tags": ["courses, google, maps"],
+    "image":"images/cards/courses/android_maps_course.png",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Add Sign-in to your Android app",
+    "titleFriendly":"",
+    "summary":"Build a Seamless Sign-In Experience.",
+    "url":"https://www.udacity.com/course/ud876-5",
+    "group":"",
+    "keywords": ["google services, signin, authorization"],
+    "tags": ["courses, google, auth"],
+    "image":"images/cards/courses/android_identity_course.png",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Android Wear Development",
+    "titleFriendly":"",
+    "summary":"Extend your Apps to Android Smartwatches.",
+    "url":"https://www.udacity.com/course/ud875A",
+    "group":"",
+    "keywords": ["wear, wearables, smartwatch"],
+    "tags": ["courses, wear, wearable"],
+    "image":"images/cards/courses/android_wear_course.jpg",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Android TV and Google Cast Development",
+    "titleFriendly":"",
+    "summary":"Extend your Apps to the Big Screen.",
+    "url":"https://www.udacity.com/course/ud875B",
+    "group":"",
+    "keywords": ["cast, living room"],
+    "tags": ["courses, cast, tv"],
+    "image":"images/cards/courses/android_tv_cast_course.jpg",
+    "lang":"en",
+    "type":"online course"
+  },
+  {
+    "title":"Android Auto Development",
+    "titleFriendly":"",
+    "summary":"Put your apps in the driver's seat.",
+    "url":"https://www.udacity.com/course/ud875C",
+    "group":"",
+    "keywords": ["auto"],
+    "tags": ["courses, auto"],
+    "image":"images/cards/courses/android_auto_course.jpg",
+    "lang":"en",
+    "type":"online course"
+  },
 
 
  // TODO remove this?
@@ -2666,126 +3123,6 @@
     "type":"design"
   },
   {
-    "title":"UX Design for Mobile Developers",
-    "titleFriendly":"",
-    "summary":"Learn how to design a 5-star app.",
-    "url":"https://www.udacity.com/course/ux-design-for-mobile-developers--ud849",
-    "group":"",
-    "keywords": ["mobile","ux","design"],
-    "tags": ["courses"],
-    "image":"images/cards/course-ud849_2x.jpg",
-    "lang":"en",
-    "type":"online course"
-  },
-  {
-    "title":"Developing Android Apps",
-    "titleFriendly":"",
-    "summary":"Learn Android and build an app!",
-    "url":"https://www.udacity.com/course/developing-android-apps--ud853",
-    "group":"",
-    "keywords": ["start","firstapp","sdk"],
-    "tags": ["courses"],
-    "image":"images/cards/course-ud853_2x.jpg",
-    "lang":"en",
-    "type":"online course"
-  },
-  {
-    "title":"Android Performance",
-    "titleFriendly":"",
-    "summary":"Optimize your apps for speed and usability.",
-    "url":"https://www.udacity.com/course/android-performance--ud825",
-    "group":"",
-    "keywords": ["performance","battery"],
-    "tags": ["courses"],
-    "image":"images/cards/course-ud825_2x.png",
-    "lang":"en",
-    "type":"online course"
-  },
-  {
-    "title":"Enroll in the Android Nanodegree",
-    "titleFriendly":"",
-    "summary":"Enroll in the Android Nanodegree to build the skills to work as an Android developer.",
-    "url":"https://www.udacity.com/android",
-    "group":"",
-    "keywords": ["nanodegree"],
-    "tags": ["courses"],
-    "image":"images/cards/course-nanodegree_2x.png",
-    "lang":"en",
-    "type":"online course"
-  },
-  {
-    "title":"Advanced Android App Development",
-    "titleFriendly":"",
-    "summary":"Productionize and publish your apps.",
-    "url":"https://www.udacity.com/course/advanced-android-app-development--ud855",
-    "group":"",
-    "keywords": ["android, experts"],
-    "tags": ["courses"],
-    "image":"images/cards/course-ud855_2x.jpg",
-    "lang":"en",
-    "type":"online course"
-  },
-  {
-    "title":"Android Ubiquitous Computing",
-    "titleFriendly":"",
-    "summary":"Extend your apps to Wear, TV, and Auto.",
-    "url":"https://www.udacity.com/course/android-ubiquitous-computing--ud875",
-    "group":"",
-    "keywords": ["wear, tv, auto"],
-    "tags": ["courses"],
-    "image":"images/cards/course-ud875_2x.jpg",
-    "lang":"en",
-    "type":"online course"
-  },
-  {
-    "title":"Google Play Services",
-    "titleFriendly":"",
-    "summary":"Use Google APIs to improve your apps.",
-    "url":"https://www.udacity.com/course/google-play-services--ud876",
-    "group":"",
-    "keywords": ["google, play services, google services"],
-    "tags": ["courses"],
-    "image":"images/cards/course-ud876_2x.jpg",
-    "lang":"en",
-    "type":"online course"
-  },
-  {
-    "title":"Android Design for Developers",
-    "titleFriendly":"",
-    "summary":"Learn how to make your apps material.",
-    "url":"https://www.udacity.com/course/android-design-for-developers--ud862",
-    "group":"",
-    "keywords": ["design, pure, material"],
-    "tags": ["courses"],
-    "image":"images/cards/course-ud862_2x.jpg",
-    "lang":"en",
-    "type":"online course"
-  },
-  {
-    "title":"Android Development for Beginners",
-    "titleFriendly":"",
-    "summary":"Make your first Android app, even if you don't write code.",
-    "url":"https://www.udacity.com/course/android-development-for-beginners--ud837",
-    "group":"",
-    "keywords": ["firstapp",],
-    "tags": ["courses"],
-    "image":"images/cards/course-ud837_2x.jpg",
-    "lang":"en",
-    "type":"online course"
-  },
-  {
-    "title":"Gradle for Android and Java",
-    "titleFriendly":"",
-    "summary":"Build better apps through automation",
-    "url":"https://www.udacity.com/course/gradle-for-android-and-java--ud867",
-    "group":"",
-    "keywords": ["gradle","studio", "sdk"],
-    "tags": ["courses"],
-    "image":"images/cards/course-ud867_2x.jpg",
-    "lang":"en",
-    "type":"online course"
-  },
-  {
     "title":"Watch Faces for Android Wear",
     "titleFriendly":"",
     "summary":"Watch faces let you customize the most prominent UI feature of Android wearables. The API is simple enough for rapid development and flexible enough to build something awesome.",
@@ -2793,7 +3130,7 @@
     "group":"",
     "keywords": ["wear", "wearable", "watch face"],
     "tags": [],
-    "image":"http://i1.ytimg.com/vi/AK38PJZmIW8/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/AK38PJZmIW8/maxresdefault.jpg",
     "lang":"en",
     "type":"video"
   },
@@ -2805,7 +3142,7 @@
     "group":"",
     "keywords": ["support", "compatibility"],
     "tags": [],
-    "image":"http://i1.ytimg.com/vi/3PIc-DuEU2s/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/3PIc-DuEU2s/maxresdefault.jpg",
     "lang":"en",
     "type":"Video"
   },
@@ -2817,7 +3154,7 @@
     "group":"",
     "keywords": ["support", "compatibility","design-code"],
     "tags": [],
-    "image":"http://i1.ytimg.com/vi/5Be2mJzP-Uw/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/5Be2mJzP-Uw/maxresdefault.jpg",
     "lang":"en",
     "type":"Video"
   },
@@ -2829,7 +3166,7 @@
     "group":"",
     "keywords": ["tools", "studio","gradle"],
     "tags": [],
-    "image":"http://i1.ytimg.com/vi/cD7NPxuuXYY/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/cD7NPxuuXYY/maxresdefault.jpg",
     "lang":"en",
     "type":"Video"
   },
@@ -2841,7 +3178,7 @@
     "group":"",
     "keywords": ["tools", "studio","layout"],
     "tags": [],
-    "image":"http://i1.ytimg.com/vi/JLLnhwtDoHw/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/JLLnhwtDoHw/maxresdefault.jpg",
     "lang":"en",
     "type":"Video"
   },
@@ -2853,22 +3190,11 @@
     "group":"",
     "keywords": ["tools", "studio","debugging","profiling","performance"],
     "tags": [],
-    "image":"http://i1.ytimg.com/vi/2I6fuD20qlY/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/2I6fuD20qlY/maxresdefault.jpg",
     "lang":"en",
     "type":"Video"
   },
   {
-    "tags": [
-      "android",
-      "developerstory",
-      "googleplay",
-      "featured"
-    ],
-    "title": "Android Developer Story: Jelly Button Games — Growing globally through data driven development",
-    "type": "youtube",
-    "url": "http://www.youtube.com/watch?v=Pd49vTkvu0U"
-  },
-  {
     "title":"Scale with Google Cloud Platform",
     "titleFriendly":"",
     "summary":"Build, test, and deploy applications on Google's highly-scalable and reliable infrastructure for your web, mobile and backend solutions.",
@@ -2896,7 +3222,7 @@
     "title":"Android for Work",
     "titleFriendly":"",
     "summary":"Learn more about how Android for Work makes your favorite phones and tablets the perfect business tools.",
-    "url":"http://www.android.com/work/",
+    "url":"https://www.android.com/work/",
     "group":"",
     "keywords": ["work", "enterprise", "emm"],
     "tags": [],
@@ -2912,7 +3238,7 @@
     "group":"",
     "keywords": ["work", "enterprise", "emm"],
     "tags": [],
-    "image":"http://i1.ytimg.com/vi/jQWB_-o1kz4/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/jQWB_-o1kz4/maxresdefault.jpg",
     "lang":"en",
     "type":"youtube"
   },
@@ -2924,7 +3250,7 @@
     "group":"",
     "keywords": ["work", "enterprise", "emm"],
     "tags": [],
-    "image":"http://i1.ytimg.com/vi/39NkpWkaH8M/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/39NkpWkaH8M/maxresdefault.jpg",
     "lang":"en",
     "type":"youtube"
   },
@@ -2936,7 +3262,7 @@
     "group":"",
     "keywords": ["work", "enterprise", "emm"],
     "tags": [],
-    "image":"http://i1.ytimg.com/vi/dH41OutAMNM/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/dH41OutAMNM/maxresdefault.jpg",
     "lang":"en",
     "type":"youtube"
   },
@@ -2948,7 +3274,7 @@
     "group":"",
     "keywords": ["work", "enterprise", "emm"],
     "tags": [],
-    "image":"http://i1.ytimg.com/vi/j3QC6hcpy90/maxresdefault.jpg",
+    "image":"https://i1.ytimg.com/vi/j3QC6hcpy90/maxresdefault.jpg",
     "lang":"en",
     "type":"youtube"
   },
@@ -2976,8 +3302,186 @@
     "lang":"en",
     "type":"distribute"
   },
-
-
+  {
+    "title":"What’s New in Android N Developer Preview",
+    "titleFriendly":"",
+    "summary":"Learn all about the new features in the Android N Preview.",
+    "url":"https://www.youtube.com/watch?v=CsulIu3UaUM",
+    "group":"",
+    "keywords": ["n preview"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/CsulIu3UaUM/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Developing for Android 6.0 (Marshmallow)",
+    "titleFriendly":"",
+    "summary":"This video covers how to get started with the preview, important APIs to test and how to provide feedback on the preview.",
+    "url":"https://www.youtube.com/watch?v=yYU4DHLwoRk",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/yYU4DHLwoRk/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Google I/O 2015 - What's new in Android",
+    "titleFriendly":"",
+    "summary":"This session will highlight the most exciting new developer features of the Android platform.",
+    "url":"https://www.youtube.com/watch?v=ndBdf1_oOGA",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/ndBdf1_oOGA/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Fingerprint and payments APIs",
+    "titleFriendly":"",
+    "summary":"New fingerprint and payments APIs are introduced in M, to enable enhanced UX and security for online purchasing, banking, and retail payments.",
+    "url":"https://www.youtube.com/watch?v=VOn7VrTRlA4",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/VOn7VrTRlA4/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Introduction to Voice Interaction API",
+    "titleFriendly":"",
+    "summary":"This video covers how to use the Voice Interaction API to support system or custom voice actions.",
+    "url":"https://www.youtube.com/watch?v=OW1A4XFRuyc",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/OW1A4XFRuyc/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Android Auto Backup for Apps",
+    "titleFriendly":"",
+    "summary":"Android Backup is the automatic, cloud-based backup and restore of users’ apps when they set up a new device.",
+    "url":"https://www.youtube.com/watch?v=HXacyy0HSW0",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/HXacyy0HSW0/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"New APIs in M for Android for Work",
+    "titleFriendly":"",
+    "summary":"Android M extends Android for Work functionality with a new set of APIs for Enterprise Mobility Management providers to offer new features and policy controls to IT Departments.",
+    "url":"https://www.youtube.com/watch?v=vcSj8ln-BlE",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/vcSj8ln-BlE/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Android for Work: Single Use Devices",
+    "titleFriendly":"",
+    "summary":"Android M is bringing the power of Android to all kinds of workplaces.",
+    "url":"https://www.youtube.com/watch?v=j3QC6hcpy90",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/j3QC6hcpy90/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Runtime Permissions in Android 6.0 Marshmallow",
+    "titleFriendly":"",
+    "summary":"Learn how to integrate runtime permissions into your Android app.",
+    "url":"https://www.youtube.com/watch?v=C8lUdPVSzDk",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/C8lUdPVSzDk/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Introduction to Doze",
+    "titleFriendly":"",
+    "summary":"An overview of Doze and how to make sure that your app behaves as expected both in and out of Doze mode. ",
+    "url":"https://youtu.be/N72ksDKrX6c",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/N72ksDKrX6c/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"The Nexus 5X, Nexus 6P and Android Marshmallow",
+    "titleFriendly":"",
+    "summary":"The new Nexus 5X and Nexus 6P along with some of the most significant developer features in the latest Android release,.",
+    "url":"https://youtu.be/U9tw5ypqEN0",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/U9tw5ypqEN0/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Asking For Permission Fine",
+    "titleFriendly":"",
+    "summary":"Picking the right way and time to ask for a permission is critical to it being granted. ",
+    "url":"https://youtu.be/iZqDdvhTZj0",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/iZqDdvhTZj0/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Data Binding Library",
+    "titleFriendly":"",
+    "summary":"Data Binding Library is a way to write declarative layouts and minimize the glue code necessary to bind your application logic and layouts. ",
+    "url":"https://youtu.be/5sCQjeGoE7M",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/5sCQjeGoE7M/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"App Links",
+    "titleFriendly":"",
+    "summary":"App Links is a new feature of Android Marshmallow that brings a faster way of opening website links for domains that you own.",
+    "url":"https://youtu.be/LQoohRwojmw",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/LQoohRwojmw/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Android M Permissions",
+    "titleFriendly":"",
+    "summary":"An introduction to Android M runtime permissions in Android M from Google I/O 2015. ",
+    "url":"https://www.youtube.com/watch?v=f17qe9vZ8RM",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/f17qe9vZ8RM/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
   {
     "lang": "ja",
     "title": "Gaming Everywhere",
@@ -2987,7 +3491,7 @@
     "group": "",
     "keywords": [],
     "tags": [],
-    "image": "http://img.youtube.com/vi/xelYnWcYkuE/hqdefault.jpg",
+    "image": "https://img.youtube.com/vi/xelYnWcYkuE/hqdefault.jpg",
     "type": "youtube"
   },
   {
@@ -2999,7 +3503,7 @@
     "group": "",
     "keywords": [],
     "tags": [],
-    "image": "http://img.youtube.com/vi/lJdjY3z6-LY/hqdefault.jpg",
+    "image": "https://img.youtube.com/vi/lJdjY3z6-LY/hqdefault.jpg",
     "type": "youtube"
   },
   {
@@ -3007,11 +3511,11 @@
     "title": "Android Wear 関連の動画に日本語字幕が付きました",
     "titleFriendly": "",
     "summary": "",
-    "url": "http://googledevjp.blogspot.jp/2014/12/android-wear.html",
+    "url": "https://googledevjp.blogspot.jp/2014/12/android-wear.html",
     "group": "",
     "keywords": [],
     "tags": [],
-    "image": "http://i1.ytimg.com/vi/4JcDYkgqksY/maxresdefault.jpg",
+    "image": "https://i1.ytimg.com/vi/4JcDYkgqksY/maxresdefault.jpg",
     "type": "blog"
   },
   {
@@ -3019,11 +3523,11 @@
     "title": "Android Studio 1.0 をリリースしました",
     "titleFriendly": "",
     "summary": "",
-    "url": "http://googledevjp.blogspot.jp/2014/12/android-studio-10.html",
+    "url": "https://googledevjp.blogspot.jp/2014/12/android-studio-10.html",
     "group": "",
     "keywords": [],
     "tags": [],
-    "image": "http://3.bp.blogspot.com/-1hV3sD1At74/VIaQSWBasUI/AAAAAAAABAU/9vYLJMsmMuQ/s1600/studio-logo.png",
+    "image": "https://3.bp.blogspot.com/-1hV3sD1At74/VIaQSWBasUI/AAAAAAAABAU/9vYLJMsmMuQ/s1600/studio-logo.png",
     "type": "blog"
   },
   {
@@ -3031,11 +3535,11 @@
     "title": "Google Play 開発者サービス 6.5 のご紹介",
     "titleFriendly": "",
     "summary": "",
-    "url": "http://googledevjp.blogspot.jp/2014/12/google-play-65.html",
+    "url": "https://googledevjp.blogspot.jp/2014/12/google-play-65.html",
     "group": "",
     "keywords": [],
     "tags": [],
-    "image": "http://1.bp.blogspot.com/-4BNREC0Jojo/VGo7ahW35wI/AAAAAAAABAc/9thZl94F6fY/s1600/GMS%2B-%2BRelease%2BBlog%2BNacho%2B-%2BMap%2BToolbar.png",
+    "image": "https://1.bp.blogspot.com/-4BNREC0Jojo/VGo7ahW35wI/AAAAAAAABAc/9thZl94F6fY/s1600/GMS%2B-%2BRelease%2BBlog%2BNacho%2B-%2BMap%2BToolbar.png",
     "type": "blog"
   },
   {
@@ -3079,7 +3583,7 @@
     "title": "Google Play アプリ ポリシー センター",
     "titleFriendly": "",
     "summary": "",
-    "url": "http://support.google.com/googleplay/android-developer/answer/4430948?hl=ja",
+    "url": "https://support.google.com/googleplay/android-developer/answer/4430948?hl=ja",
     "group": "",
     "keywords": [],
     "tags": [],
@@ -3115,11 +3619,11 @@
     "title": "Google Cloud Platform が支える、新感覚リアルタイム RPG ユニゾンリーグ - 株式会社エイチームの GCP 導入事例",
     "titleFriendly": "",
     "summary": "スケーラブルなバックエンドを実現する Google Cloud Platform の最新導入事例。",
-    "url": "http://googleforwork-japan.blogspot.jp/2014/12/gcp-google-cloud-platform-rpg-gcp.html",
+    "url": "https://googleforwork-japan.blogspot.jp/2014/12/gcp-google-cloud-platform-rpg-gcp.html",
     "group": "",
     "keywords": [],
     "tags": [],
-    "image": "http://3.bp.blogspot.com/-xp7KoPkbne4/VI_PfoFil3I/AAAAAAAAA3U/-k1UZ0zjCBc/s1600/unison-league.jpeg",
+    "image": "https://3.bp.blogspot.com/-xp7KoPkbne4/VI_PfoFil3I/AAAAAAAAA3U/-k1UZ0zjCBc/s1600/unison-league.jpeg",
     "type": "distribute"
   },
   {
@@ -3143,7 +3647,7 @@
     "group": "",
     "keywords": [],
     "tags": [],
-    "image": "http://img.youtube.com/vi/7X9Ue0Nfdh4/hqdefault.jpg",
+    "image": "https://img.youtube.com/vi/7X9Ue0Nfdh4/hqdefault.jpg",
     "type": "youtube"
   },
   {
@@ -3155,7 +3659,7 @@
     "group": "",
     "keywords": [],
     "tags": [],
-    "image": "http://img.youtube.com/vi/83FpwuschCQ/hqdefault.jpg",
+    "image": "https://img.youtube.com/vi/83FpwuschCQ/hqdefault.jpg",
     "type": "youtube"
   },
   {
@@ -3163,7 +3667,7 @@
     "title": "안드로이드 5.0 롤리팝을 맞이하는 개발자를 위한 안내서",
     "titleFriendly": "",
     "summary": "",
-    "url": "http://googledevkr.blogspot.com/2014/11/android50guidefordevelopers.html",
+    "url": "https://googledevkr.blogspot.com/2014/11/android50guidefordevelopers.html",
     "group": "",
     "keywords": [],
     "tags": [],
@@ -3175,7 +3679,7 @@
     "title": "안드로이드 앱을 위한 머티리얼 디자인 체크 리스트",
     "titleFriendly": "",
     "summary": "",
-    "url": "http://googledevkr.blogspot.com/2014/10/material-design-on-android-checklist.html",
+    "url": "https://googledevkr.blogspot.com/2014/10/material-design-on-android-checklist.html",
     "group": "",
     "keywords": [],
     "tags": [],
@@ -3187,11 +3691,11 @@
     "title": "App Compat 라이브러리",
     "titleFriendly": "",
     "summary": "",
-    "url": "http://googledevkr.blogspot.com/2014/10/appcompat-v21-material-design-for-pre.html",
+    "url": "https://googledevkr.blogspot.com/2014/10/appcompat-v21-material-design-for-pre.html",
     "group": "",
     "keywords": [],
     "tags": [],
-    "image": "http://2.bp.blogspot.com/-7fF9ayZ6PgI/U9iFpk5FNEI/AAAAAAAAAs0/4P4SCvdB_4M/s640/image00.png",
+    "image": "https://2.bp.blogspot.com/-7fF9ayZ6PgI/U9iFpk5FNEI/AAAAAAAAAs0/4P4SCvdB_4M/s640/image00.png",
     "type": "blog"
   },
   {
@@ -3312,7 +3816,7 @@
   },
   {
     "url":"https://www.youtube.com/watch?v=wcjqBSei3a0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
-    "image": "http://i1.ytimg.com/vi/wcjqBSei3a0/maxresdefault.jpg",
+    "image": "https://i1.ytimg.com/vi/wcjqBSei3a0/maxresdefault.jpg",
     "title": "Developers connecting the world through Google Play",
     "summary": "The mobile ecosystem is empowering developers to make good on the dream of connecting the world through technology to improve people's lives.",
     "tags":["io15","googleplay"],
@@ -3321,7 +3825,7 @@
   },
   {
     "url":"https://www.youtube.com/watch?v=B6ydLpkhq04&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
-    "image": "http://i1.ytimg.com/vi/B6ydLpkhq04/maxresdefault.jpg",
+    "image": "https://i1.ytimg.com/vi/B6ydLpkhq04/maxresdefault.jpg",
     "title": "Store Listing Experiments for Google Play",
     "summary": "Learn how to use Google Play’s new store listing optimization feature to get more installs of your app, and how to test different graphics and text to find out which options perform the best. ",
     "tags":["io15","googleplay","store listing"],
@@ -3330,16 +3834,37 @@
   },
   {
     "url":"https://www.youtube.com/watch?v=jyO3-rF4Mu0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
-    "image": "http://i1.ytimg.com/vi/jyO3-rF4Mu0/maxresdefault.jpg",
+    "image": "https://i1.ytimg.com/vi/jyO3-rF4Mu0/maxresdefault.jpg",
     "title": "Growing games with Google",
     "summary": "The games industry has never been more promising and full of opportunities. This talk covers how Google is helping developers across a broad range of existing and emerging platforms.",
     "tags":["io15","android", "googleplay","games"],
     "keywords":["Google I/O","google play","games"],
     "type":"youtube"
-  }
+  },
+  {
+    "url":"https://www.youtube.com/watch?v=yJisuP94lHU",
+    "image": "images/distribute/hero-playtime-opener.jpg",
+    "title": "Playtime 2015: Innovation happens everywhere",
+    "type":"Video",
+    "tags":["googleplay"],
+    "summary": "Watch the opening video from Google Play's annual event series, Playtime, which celebrates inspirational developers who are changing the world around them.",
+  },
+{
+    "url":"https://www.youtube.com/watch?v=JrR6o5tYMWQ",
+    "image": "images/distribute/hero-acquisition-devbyte.jpg",
+    "title": "User acquisition and tracking on Google Play",
+    "type" : "Video",
+    "tags" : "users,googleplay,googleio",
+    "summary": "Learn how to get new users, using Universal app campaigns directly within the Google Play Developer Console to increase your installs from ads, and find out how your acquisition channels perform.",
+  },
 ]);
 
 var CAROUSEL_OVERRIDE = {
+  "distribute/googleplay/guide.html": {
+    "image": "images/distribute/hero-secrets-to-app-success.jpg",
+    "title": "The Secrets to App Success on Google Play",
+    "summary": "Get the updated guide full of useful features, tips, and best practices that will help you grow a successful app or game business on Google Play.",
+  },
   "about/versions/lollipop.html": {
     "image": "images/home/hero-lollipop_2x.png",
     "heroColor": "#263238",
@@ -3347,58 +3872,33 @@
     "title": "Android 5.0 Lollipop",
     "summary": "The Android 5.0 update adds a variety of new features for your apps, such as notifications on the lock screen, an all-new camera API, OpenGL ES 3.1, the new naterial design interface, and much more.",
   },
-  "http://www.youtube.com/watch?v=Pd49vTkvu0U": {
-    "url":"http://www.youtube.com/watch?v=Pd49vTkvu0U&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
-    "image": "images/distribute/hero-jelly-button.jpg",
-    "title": "How Jelly Button Games are growing globally through data",
-    "summary": "To really understand their users, Jelly Button Games analyzes over 3 billion events each month using Google Analytics and Google BigQuery.",
+  "http://www.youtube.com/watch?v=Pms0pcyPbAM": {
+    "url":"https://www.youtube.com/watch?v=Pms0pcyPbAM&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c]",
+    "image": "images/distribute/hero-carousel-giftedmom.jpg",
+    "title": "Gifted Mom reaches more mothers across Africa with Android",
+    "type":"youtube",
+    "summary": "Gifted Mom is an app developed in Cameroon which provides users with critical information about pregnancy, breastfeeding and child vaccinations. Hear the creators explain how they built their business on Google Play.",
   },
-  "http://www.youtube.com/watch?v=700gYRkhkLM": {
-    "url":"http://www.youtube.com/watch?v=700gYRkhkLM&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
-    "image": "images/distribute/hero-outfit7.jpg",
-    "title": "Outfit7 — Building an entertainment company with Google",
-    "summary": "Outfit7, creators of My Talking Tom and My Talking Angela, offer a complete entertainment experience to users spanning mobile apps, user generated and original YouTube content, and a range of toys, clothing, and accessories....",
+  "http://www.youtube.com/watch?v=9m6MoBM-sFI": {
+    "url":"https://www.youtube.com/watch?v=9m6MoBM-sFI&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c&index=3",
+    "image": "images/distribute/hero-carousel-sgn.jpg",
+    "title": "SGN increases installs with Store Listing Experiments",
+    "type" : "youtube",
+    "summary": "Watch mobile game developer SGN talk about how using Store Listing Experiments to test multiple variants across their portfolio of games helped improve their ROI, conversion rates and gamer retention.",
   },
-  "http://www.youtube.com/watch?v=MPnH7h12h0U": {
-    "url":"http://www.youtube.com/watch?v=MPnH7h12h0U&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
-    "image": "images/distribute/hero-haystack.jpg",
-    "summary": "Haystack TV built a scalable business with six employees and Android TV. Two weeks was all it took for them to bring their mobile app to the big screen.",
+  "http://www.youtube.com/watch?v=e7t3svG9PTk": {
+    "url":"https://www.youtube.com/watch?v=e7t3svG9PTk&index=2&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
+    "image": "images/distribute/hero-carousel-djit.jpg",
+    "title": "DJiT builds higher quality experiences on Android",
+    "type" : "youtube",
+    "summary": "Learn how Music app developer DJiT create higher quality apps with improved latency on Android Marshmallow, as well as other Android and Google Play features.",
   },
-  "http://www.youtube.com/watch?v=ekxABqJeRBc": {
-    "url":"http://www.youtube.com/watch?v=ekxABqJeRBc&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
-    "image": "images/distribute/hero-ginlemon.jpg",
-    "title": "How GinLemon is breaking through with Google Play",
-    "summary": "Meet Vincenzo Colucci, developer and founder of GinLemon, which started as a summer holiday joke and has now become a successful global app business on Google Play based in Manfredonia, southern Italy.",
-  },
-  "distribute/googleplay/guide.html": {
-    "heroColor": "#fcb94e",
-    "image": "images/distribute/hero-g-play-guidebooks_2x.png",
-    "title": "Finding success on Google Play",
-    "summary": "We’ve created a downloadable guide to help you find success with your app or game business on Google Play. In it, you’ll find features, tips, and best practices to help you build an effective strategy.",
-  },
-  "http://www.youtube.com/watch?v=0r36OJaeMo4": {
-    "url":"http://www.youtube.com/watch?v=0r36OJaeMo4&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
-    "image": "images/distribute/hero-shifty-jelly.jpg",
-    "title": "Shifty Jelly — building a number 1 podcast app",
-    "summary": "Shifty Jelly is an Adelaide based mobile development company that has seen great success building Pocket Casts, a premium podcast manager app.",
-  },
-  "http://www.youtube.com/watch?v=1Iw7Tg_afKk": {
-    "image": "images/distribute/hero-wooga.jpg",
-    "url":"http://www.youtube.com/watch?v=1Iw7Tg_afKk&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
-    "title": "Wooga’s fast iterations on Google Play",
-    "summary": "The speed at which Wooga is able to iterate its live and under development games with the Android and Google Play tools has been key to delivering hits such as Diamond Dash, Jelly Splash, and Agent Alice.",
-  },
-  "http://www.youtube.com/watch?v=TieksFvD-7o": {
-    "url":"http://www.youtube.com/watch?v=TieksFvD-7o&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
-    "image": "images/distribute/hero-trello.jpg",
-    "title": "Trello lifts engagement by double digits with material design",
-    "summary": "Trello recently redesigned their collaborative planning app using the material design guidelines, and their efforts paid off.",
-  },
-  "http://www.youtube.com/watch?v=MCoh4Pxs_ok": {
-    "url":"http://www.youtube.com/watch?v=MCoh4Pxs_ok&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
-    "image": "images/distribute/hero-the-hunt.jpg",
-    "title": "The Hunt — growing engagement with material design and Google Play",
-    "summary": "Material design has helped The Hunt to enhance engagement in their style advice and product discovery app. ",
+  "http://www.youtube.com/watch?v=J3IvOfvH1ys": {
+    "url":"https://www.youtube.com/watch?v=J3IvOfvH1ys&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c&index=1",
+    "image": "images/distribute/hero-carousel-wego.jpg",
+    "title": "Wego increases user retention with material design",
+    "type" : "youtube",
+    "summary": "Hear how online travel marketplace Wego, increased monthly user retention by 300% and reduced uninstall rates by up to 25% with material design.",
   },
   "https://www.youtube.com/watch?v=QDM52bblwlg": {
     "url":"distribute/googleplay/families/about.html",
@@ -3426,4 +3926,4 @@
     "tags":["io15"],
     "summary": "The games industry has never been more promising and full of opportunities. This talk from Google I/O 2015 covers how Google is helping developers across a broad range of existing and emerging platforms.",
   }
-};
\ No newline at end of file
+};
diff --git a/docs/html/jd_extras_en.js b/docs/html/jd_extras_en.js
new file mode 100644
index 0000000..54b77b0
--- /dev/null
+++ b/docs/html/jd_extras_en.js
@@ -0,0 +1,4763 @@
+/* Metadata represendations of resources that are outside of the autogenerated
+   local resource lists, or that override local resource representations.
+
+   Resources listed here are referenced from queries and collections,
+   matched by url string.
+
+   Currently, these articles can override only the generated resources
+   in DISTRIBUTE_RESOURCES. A representation defined here will not be applied
+   when a collection or section specifies a url that's not in DISTRIBUTE_RESOURCEs.
+   Also
+   So if a section url refers to a static doc that's
+   not in a distribute section, you need to create an item for
+   it in this file. Fix is to compare across
+   ALL_RESOURCES_BY_URL.  */
+
+METADATA['en'].extras = METADATA['en'].extras.concat([
+ /* TODO Remove standard resources from here, such as below
+ */
+  {
+    "title":"Measure your app’s user acquisition channels",
+    "category":"google",
+    "summary":"Get details on how to use the Developer Console User Acquisitions reports to discover where your users come from.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/6263332",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/cards/google-play_2x.png",
+    "type":"distribute"
+  },
+  {
+    "title":"Set up native app install banners in Chrome",
+    "category":"google",
+    "summary":"Get the details you need to add your native app or game to your site’s web app manifest file.",
+    "url":"https://developers.google.com/web/updates/2015/03/increasing-engagement-with-app-install-banners-in-chrome-for-android#native",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/cards/google-play_2x.png",
+    "type":"distribute"
+  },
+  {
+    "title":"Optimize your store listing pages with experiments",
+    "category":"google",
+    "summary":"You can run experiments to find the most effective graphics and localized text for your app.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/6227309",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/cards/google-play_2x.png",
+    "type":"distribute"
+  },
+  {
+    "title":"Content Experiments for Mobile Apps",
+    "category":"google",
+    "summary":"Google Analytics Content Experiments allows you to test multiple variations of a given web page.",
+    "url":"https://support.google.com/tagmanager/answer/6003007",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/cards/google-play_2x.png",
+    "type":"distribute"
+  },
+  {
+    "title":"Use alpha/beta testing & staged rollouts",
+    "category":"google play",
+    "summary":"Using the Google Play Developer Console, you can choose groups of users to test different versions of your app.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/3131213",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/cards/google-play_2x.png",
+    "type":"distribute"
+  },
+  {
+    "title":"Quizlet Developer Story",
+    "category":"google play",
+    "summary":"Quizlet is an extremely popular online learning tool for students. See how they optimized for the classroom with Android and the power of Google Play for Education.",
+    "url":"https://www.youtube.com/watch?v=Idu7VcTTXfk",
+    "group":"",
+    "keywords": [],
+    "tags": [
+      "#gpfe",
+      "#googleplay"
+    ],
+    "image":"https://i1.ytimg.com/vi/Idu7VcTTXfk/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"What's New in GPFE",
+    "category":"google play",
+    "summary":"Learn about the vision and philosophy behind Google Play for Education",
+    "url":"https://www.youtube.com/watch?v=IKhU180eJMo",
+    "group":"",
+    "keywords": [],
+    "tags": [
+      "#gpfe",
+      "#googleplay"
+    ],
+    "image":"https://i1.ytimg.com/vi/IKhU180eJMo/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Get started with Google Cast",
+    "category":"google",
+    "summary":"Build multi-screen experiences, let the user send video and audio content to TVs and speakers.",
+    "url":"https://developers.google.com/cast/docs/ux_guidelines",
+    "group":"",
+    "keywords": ["cast", "chromecast", "video", "audio"],
+    "tags": [],
+    "image":"images/cards/card-cast_2x.jpg",
+    "type":"develop"
+  },
+  {
+    "title":"Android Sender Applications",
+    "category":"google",
+    "summary":"Get an overview of how your Android app can act as a Google Cast sender app.",
+    "url":"https://developers.google.com/cast/docs/android_sender",
+    "group":"",
+    "keywords": ["cast", "sender"],
+    "tags": [],
+    "image":"images/cards/card-cast_2x.jpg",
+    "type":"develop"
+  },
+  {
+    "title":"Cast sample apps",
+    "category":"google",
+    "summary":"Get example Google Cast applications for both senders and receivers.",
+    "url":"https://www.github.com/googlecast",
+    "group":"",
+    "keywords": ["cast", "samples"],
+    "tags": [],
+    "image":"images/cards/card-cast_2x.jpg",
+    "type":"Samples"
+  },
+  {
+    "title":"Get Cardboard",
+    "category":"Google",
+    "summary":"Get your own Cardboard, today. Buy one from a manufacturer or build your own, and start developing.",
+    "url":"https://www.google.com/get/cardboard/get-cardboard/",
+    "group":"",
+    "keywords": ["carboard","vr"],
+    "tags": [],
+    "image":"images/cards/card-cardboard_2x.png",
+    "type":"develop"
+  },
+    {
+    "title":"Download the Cardboard SDK",
+    "category":"google",
+    "summary":"Grab the Cardboard libraries from GitHub and start creating VR apps in your favorite development environment.",
+    "url":"https://developers.google.com/cardboard/android/download",
+    "group":"",
+    "keywords": ["carboard","vr"],
+    "tags": [],
+    "image":"images/cards/card-cardboard_2x.png",
+    "type":"develop"
+  },
+  {
+    "title":"Cardboard design guidelines",
+    "category":"design",
+    "summary":"Focus on overall usability and avoiding common VR pitfalls while creating an immersive experience of your own.",
+    "url":"https://www.google.com/design/spec-vr",
+    "group":"",
+    "keywords": ["carboard","vr"],
+    "tags": [],
+    "image":"images/cards/card-cardboard_2x.png",
+    "type":"Design"
+  },
+  {
+    "title":"Maps",
+    "category":"google",
+    "summary":"Give users the map that more than a billion people use every month.",
+    "url":"https://developers.google.com/maps/documentation/android/",
+    "group":"",
+    "keywords": ["maps"],
+    "tags": [],
+    "image":"images/google/gps-maps.png",
+    "type":"develop"
+  },
+    {
+    "title":"Places API",
+    "category":"google",
+    "summary":"give your users contextual information about where they are, when they’re there.",
+    "url":"https://developers.google.com/places/android/",
+    "group":"",
+    "keywords": ["places","location", "context"],
+    "tags": [],
+    "image":"images/cards/card-places_2x.png",
+    "type":"develop"
+  },
+  {
+    "title":"GCM Client for Android",
+    "category":"google",
+    "summary":"Send push notifications and pubsub from your server to Android devices around the world.",
+    "url":"https://developers.google.com/cloud-messaging/android/client",
+    "group":"",
+    "keywords": ["push","gcm"],
+    "tags": [],
+    "image":"images/cards/card-google-cloud-messaging_16-9_2x.png",
+    "type":"develop"
+  },
+  {
+    "title":"Google Cloud Messaging",
+    "category":"google",
+    "summary":"Learn about GCM and the kinds of services you can offer to users through push notifications",
+    "url":"https://developers.google.com/cloud-messaging/gcm",
+    "group":"",
+    "keywords": ["push","gcm"],
+    "tags": [],
+    "image":"images/cards/card-google-cloud-messaging_16-9_2x.png",
+    "type":"develop"
+  },
+  {
+    "title":"ClassDojo Developer Story",
+    "category":"developer story",
+    "summary":"ClassDojo is a classroom tool that helps teachers improve behavior in their classrooms quickly and easily. See how they optimized for the classroom with Android and the power of Google Play for Education.",
+    "url":"https://www.youtube.com/watch?v=iokH4SAIfRw",
+    "group":"",
+    "keywords": [],
+    "tags": [
+      "#gpfe",
+      "#googleplay"
+    ],
+    "image":"https://i1.ytimg.com/vi/iokH4SAIfRw/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Plan for Success",
+    "category":"google play",
+    "summary":"5 tips from developers on creating great EDU apps.",
+    "url":"https://www.youtube.com/watch?v=Eh2adsAyTKc",
+    "group":"",
+    "keywords": [],
+    "tags": [
+      "#gpfe",
+      "#googleplay"
+    ],
+    "image":"https://i1.ytimg.com/vi/Eh2adsAyTKc/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Optimizing Apps for Education",
+    "category":"google play",
+    "summary":"Learn how to optimize your app for teachers and students.",
+    "url":"https://www.youtube.com/watch?v=_AZ6UcPz-_g",
+    "group":"",
+    "keywords": [],
+    "tags": [
+      "#gpfe",
+      "#googleplay"
+    ],
+    "image":"https://i1.ytimg.com/vi/_AZ6UcPz-_g/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Ideas and Tools for Building Innovative Education Apps",
+    "category":"google play",
+    "summary":"Are you hungry to build an awesome app for education but don't quite know where to start? Come hear about apps that teachers want, and the APIs you're going to need to build them! In particular, we'll talk about app ideas that combine APIs for Google Drive, Google Login, Android Single Task Mode and more to build transformative Educational apps that will delight educators and kids in and out of the classroom.",
+    "url":"https://www.youtube.com/watch?v=iulXz8QTD1g",
+    "group":"",
+    "keywords": [],
+    "tags": [
+      "#gpfe",
+      "#googleplay"
+    ],
+    "image":"https://i1.ytimg.com/vi/iulXz8QTD1g/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"DesignBytes: Intro To Material Design",
+    "category":"material design",
+    "summary":"These days, UI designers need to be thinking about phones, tablets, laptops, TVs, smartwatches, and beyond. In this DesignByte we talk about how Google designers have been working on making cross-platform and multi-screen design easier. We wanted to build a design system that felt at home on every screen, from the smallest watch to the largest TV.",
+    "url":"https://www.youtube.com/watch?v=p4gmvHyuZzw",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/p4gmvHyuZzw/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"DesignBytes: Paper and Ink: The Materials that Matter",
+    "category":"material design",
+    "summary":"Join Rich Fulcher to learn about the materials of material design. See how virtual paper and ink form the foundation of your tactile user interface and master the rules that govern their behaviour.",
+    "url":"https://www.youtube.com/watch?v=YaG_ljfzeUw",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/YaG_ljfzeUw/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"DesignBytes: Material Design in the Google I/O App",
+    "category":"",
+    "summary":"Roman Nurik shares details on the design process for the Google I/O 2014 app. To check out the app's source code, visit github.com/google/iosched.",
+    "url":"https://www.youtube.com/watch?v=XOcCOBe8PTc",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/XOcCOBe8PTc/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Toolbars for a flexible Action Bar & more",
+    "category":"",
+    "summary":"Toolbars are a flexible View you can add to your Android app which provides many of the same APIs as the system provided Action Bar, but can also do so much more such as reacting to scrolling or being integrated directly into your layouts.",
+    "url":"https://www.youtube.com/watch?v=kmUGLURRPkI",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/kmUGLURRPkI/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Protecting Implicit Intents with Runtime Checks",
+    "category":"",
+    "summary":"Make sure you protect your implicit intents with a simple runtime check.",
+    "url":"https://www.youtube.com/watch?v=HGElAW224dE",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/HGElAW224dE/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Tabs and ViewPager",
+    "category":"",
+    "summary":"Showing multiple screens or pages of content is easy with the help of ViewPager and a PagerAdapter. Combining that with tabs make for an effective top level navigation strategy for your app or for moving between content at the same level of hierarchy within your app.",
+    "url":"https://www.youtube.com/watch?v=zQekzaAgIlQ",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/zQekzaAgIlQ/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Battery Drain and Networking",
+    "category":"",
+    "summary":"Let’s take a moment to make something insanely clear: As far as battery is concerned, NETWORKING is the biggest, baddest, dirtiest offender there is. And optimizing performance here isn’t easy. Since the chip isn’t always awake and draining power, means you can optimize how it wakes up, sends traffic, and saves battery.",
+    "url":"https://www.youtube.com/watch?v=fEEulSk1kNY",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/fEEulSk1kNY/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Batching Background Work Until Later",
+    "category":"",
+    "summary":"Yes, your app is special. But when it comes to battery use, sometimes it’s better to be part of the crowd. Why not spread the battery blame around a bit? Ian Ni-Lewis shows you how ridiculously easy it is to go from battery hog to team player in this video.",
+    "url":"https://www.youtube.com/watch?v=-3ry8PxcJJA",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/-3ry8PxcJJA/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"The Performance Lifecycle",
+    "category":"",
+    "summary":"Performance problems surface in your application at the least-wanted times (like right before you’re about to ship your first build). But don’t freak out: There’s a simple process that you can follow to help get your performance back under control.",
+    "url":"https://www.youtube.com/watch?v=_kKTGK-Cb_4",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/_kKTGK-Cb_4/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Introduction to Android Studio",
+    "category":"",
+    "summary":"Learn why you should migrate your projects to Android Studio now and how it can help you be more productive as a developer. Rich layout editor, handy suggestions and fixes, new Android project view - these are just some of the things you can expect from the IDE, which is built on the successful IntelliJ IDEA.",
+    "url":"https://www.youtube.com/watch?v=K2dodTXARqc&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
+    "group":"",
+    "keywords": ["studio", "tools"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/K2dodTXARqc/maxresdefault.jpg",
+    "type":"video"
+  },
+
+  {
+    "title":"Google Play Services 7.5",
+    "category":"",
+    "summary":"This update brings App Invites, topics to GCM, GCMNetworkManager, Cast Remote Display API, Smart Lock for Passwords, Maps API for Android Wear, Google Fit extensions and more.",
+    "url":"https://www.youtube.com/watch?v=M3Udfu6qidk&list=PLWz5rJ2EKKc9Qk1_iCZNbBp6adYnJf9Vf",
+    "group":"",
+    "keywords": ["google play services"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/M3Udfu6qidk/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Google Play Services 7.3",
+    "category":"",
+    "summary":"This update brings the ability to connect multiple wearables simultaneously to a single phone. There are also some great new updates to Google Fit, including nutrition types, and to Location.",
+    "url":"https://www.youtube.com/watch?v=FOn64iqlphk&list=PLWz5rJ2EKKc9Qk1_iCZNbBp6adYnJf9Vf",
+    "group":"",
+    "keywords": ["google play services"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/FOn64iqlphk/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Google Play Services 6.5",
+    "category":"",
+    "summary":"Google Play services 6.5 includes new features in Google Maps, Google Drive and Google Wallet as well as the recently launched Google Fit API. ",
+    "url":"https://www.youtube.com/watch?v=fvtMtfCuEpw&list=PLWz5rJ2EKKc9Qk1_iCZNbBp6adYnJf9Vf",
+    "group":"",
+    "keywords": ["google play services"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/fvtMtfCuEpw/maxresdefault.jpg",
+    "type":"video"
+  },
+    {
+    "title":"Google Play Services 7.0",
+    "category":"",
+    "summary":"Google Play services 7.0 is here! we've added the Places API, made enhancements to Location and Google Fit, and you can also remote control your Android TV through the new Nearby Connections API.",
+    "url":"https://www.youtube.com/watch?v=F0Kh_RnSM0w&list=PLWz5rJ2EKKc9Qk1_iCZNbBp6adYnJf9Vf",
+    "group":"",
+    "keywords": ["google play services"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/F0Kh_RnSM0w/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Running a Successful Games Business with Google",
+    "category":"",
+    "summary":"Sure, we all want to make the next great gaming masterpiece. But we also want to feed our families and/or dogs. Join Bob Meese from the Google Play team as he gives you some key pointers on how to make sure you're best taking advantage of Google Play and running a successful games business.",
+    "url":"https://www.youtube.com/watch?v=tDmnGNkTtlE",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/tDmnGNkTtlE/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Introduction to Android TV",
+    "category":"",
+    "summary":"Android TV brings the Android platform to the living room with rich content and entertaining app experiences. In this video, Timothy introduces the design philosophy and developer components that make building TV experiences easier than ever before.",
+    "url":"https://www.youtube.com/watch?v=6K_jxccHv5M&index=1&list=PLOU2XLYxmsILFBfx66ens76VMLMEPJAB0",
+    "group":"",
+    "keywords": ["tv"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/6K_jxccHv5M/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Introduction to Android Auto",
+    "category":"",
+    "summary":"Android Auto brings the Android platform to the car in a way that's optimized for the driving experience. It's the same platform you already use for phones, tablets, televisions, wearables, and more. ",
+    "url":"https://www.youtube.com/watch?v=ctiaVxgclsg&list=PLWz5rJ2EKKc9BdE_PSLNIGjXXr3h_orXM",
+    "group":"",
+    "keywords": ["auto"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/ctiaVxgclsg/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Debugging and testing in Android Studio",
+    "titleFriendly":"",
+    "summary":"This video introduces the state of unit testing support in Studio and Google’s new Android Testing Support Library for functional UI testing and running instrumented tests on a device.",
+    "url":"https://www.youtube.com/watch?v=2I6fuD20qlY",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/2I6fuD20qlY/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Android Testing (Android Dev Summit 2015)",
+    "titleFriendly":"",
+    "summary":"Overview of the testing tools and frameworks provided by Google and how they can help you to iterate more quickly and maintain a more healthy codebase.",
+    "url":"https://www.youtube.com/watch?v=vdasFFfXKOY",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"https://i1.ytimg.com/vi/vdasFFfXKOY/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"dumpsys",
+    "titleFriendly":"",
+    "summary":"A tool that runs on the device and provides information about the status of system services.",
+    "url":"https://source.android.com/devices/tech/debug/dumpsys.html",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"",
+    "type":"google"
+  },
+  {
+    "title":"Android Testing Samples",
+    "titleFriendly":"",
+    "summary":"A collection of samples demonstrating different frameworks and techniques for automated testing.",
+    "url":"https://github.com/googlesamples/android-testing",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"images/testing/testing-icon.png",
+    "type":"Samples"
+  },
+  {
+    "title":"Android Testing Templates",
+    "titleFriendly":"",
+    "summary":"A collection of Google's Android testing tools and frameworks, all integrated in a single application project.",
+    "url":"https://github.com/googlesamples/android-testing-templates",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"images/testing/testing-icon.png",
+    "type":"Samples"
+  },
+   {
+    "title":"Android Testing Support Library (GitHub)",
+    "titleFriendly":"",
+    "summary":"A resource page on GitHub for the Android Testing Support Library.",
+    "url":"https://google.github.io/android-testing-support-library",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"images/testing/testing-icon.png",
+    "type":"Samples"
+  },
+  {
+    "title":"Android Testing Codelab",
+    "titleFriendly":"",
+    "summary":"This codelab shows how to build an Android app from the ground up in Android Studio, using a Model View Presenter architecture, Unit Tests and Instrumentation Tests.",
+    "url":"https://codelabs.developers.google.com/codelabs/android-testing/index.html",
+    "group":"",
+    "keywords": ["testing"],
+    "tags": [
+    ],
+    "image":"images/testing/testing-icon.png",
+    "type":"google"
+  },
+  {
+    "title":"Developer Registration",
+    "category":"google play",
+    "summary":"Additional information about the registration process.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/113468",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/cards/google-play_2x.png",
+    "type":"distribute"
+  },
+  {
+    "title": "Google Play Distribution and Seller Countries",
+    "category":"google play",
+    "summary": "List of countries and territories where you can distribute your apps in Google Play.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/138294",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/cards/google-play_2x.png",
+    "type":"distribute"
+  },
+  {
+    "title":"Google Play Content Policies",
+    "category":"google play",
+    "summary":"Details on policies relating to your developer account and app distribution is governed.",
+    "url":"https://support.google.com/googleplay/android-developer/topic/3453577",
+    "group":"",
+    "keywords": [],
+    "tags": ["#developersupport"],
+    "image":"images/cards/google-play_2x.png",
+    "type":"distribute"
+  },
+  {
+    "title":"Google Play Badge Generator",
+    "category":"google play",
+    "summary":"Build badges for your app in just a few clicks, or download hi-res badge assets localized for a variety of languages.",
+    "url":"https://play.google.com/intl/en_us/badges/",
+    "group":"",
+    "keywords": [],
+    "tags": ["#developersupport"],
+    "image":"images/gp-badges-set.png",
+    "type":"distribute"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["#developersupport #termsandpolicies"],
+    "url": "https://support.google.com/googleplay/android-developer/answer/4407611",
+    "timestamp": 1194884220000,
+    "image": 'images/play_dev.jpg',
+    "title": "Google Play Terms and Policies",
+    "summary": "Developer terms and policies that apply when you distribute apps in Google Play.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "title":"Google Play Policy Center",
+    "category":"google play",
+    "summary":"A central resource for you to learn about Google Play policies and guidelines.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/4430948",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"https://storage.googleapis.com/support-kms-prod/SNP_712EA2784949DDF085C46E3BE7B1DC618A09_4389397_en_v0",
+    "type":"distribute"
+  },
+  {
+    "title":"Developer Help Center",
+    "category":"Support",
+    "summary":"Complete details on getting started, publishing, troubleshooting, and more.",
+    "url":"https://support.google.com/googleplay/android-developer",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/cards/google-play_2x.png",
+    "type":"distribute"
+  },
+  {
+    "title":"Google for Education",
+    "category":"google play",
+    "summary":"Find out more about how Google can support your work with apps and tablets.",
+    "url":"https://www.google.com/edu/tablets/",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"distribute/images/gp-edu-apps-image.jpg",
+    "type":"distribute"
+  },
+  {
+    "title":"Google Play Game Services",
+    "category":"google",
+    "summary":"Make your games social with Google Play game services. Add achievements, leaderboards, real-time multiplayer, and other popular features using the Google Play game services SDK.",
+    "url":"https://developers.google.com/games/services/",
+    "group":"",
+    "keywords": ["games","play games"],
+    "tags": [],
+    "image":"images/google/gps-play_games_logo.png",
+    "type":"distribute"
+  },
+  {
+    "title":"Get Started with Analytics",
+    "category":"google",
+    "summary":"Get advanced insight into how players discover and play your games.",
+    "url":"distribute/analyze/start.html",
+    "group":"",
+    "keywords": ["analytics"],
+    "tags": [],
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "type": "distribute"
+  },
+  {
+    "title":"Monetize your apps intelligently",
+    "category":"google",
+    "summary":"Generate revenue from your free games with ads tailored to match your game's look and feel.",
+    "url":"https://www.google.com/admob/",
+    "group":"",
+    "keywords": ["AdMob"],
+    "tags": [],
+    "image":"images/cards/admob-analytics_2x.png",
+    "type": "distribute"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "versions", "blog", "googleplay"
+    ],
+    "url": "https://android-developers.blogspot.com/",
+    "timestamp": 1004884220000,
+    "image": "images/blog.jpg",
+    "title": "Android Developers Blog",
+    "summary": "Follow the latest news on Android design, development, and distribution.",
+    "keywords": [],
+    "type": "blog",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Making Android Apps that Play Nice",
+    "summary": "Audio lifecycle and expected audio behaviors for Android apps.",
+    "keywords": [],
+    "type": "blog",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://android-developers.blogspot.com/2010/07/multithreading-for-performance.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Multithreading for Performance",
+    "summary": "Ways to improve performance through multi-threading.",
+    "keywords": [],
+    "type": "blog",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://play.google.com/about/developer-content-policy.html",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Developer Program Policies",
+    "summary": "Guidelines acceptable content in Google Play. Please read and understand the policies before publishing.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/188189",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Rating your application content for Google Play",
+    "summary": "How to choose the appropriate content ratings level for your apps.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "Support"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["devices", "nexus", "testing"],
+    "url": "https://developers.google.com/android/nexus/images",
+    "timestamp": 1194884220000,
+    "image": "images/cards/card-download_16-9_2x.png",
+    "title": "Factory Images for Nexus Devices",
+    "summary": "System image files for Android 6.0 and other Android releases.",
+    "keywords": ["nexus, downloads"],
+    "type": "develop",
+    "category": "Tools"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Google Play Featured Image Guidelines",
+    "summary": "How to create attractive, effective Featured Images for your apps.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+{
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/113477",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Supporting your users",
+    "summary": "Options for supporting users.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "Support"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "guide/practices/screens_support.html#ConfigurationExamples",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Configuration examples",
+    "summary": "How to declare layouts and other resources for specific screen sizes.",
+    "keywords": [],
+    "type": "develop",
+    "category": "guide"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "training/design-navigation/multiple-sizes.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Planning for Multiple Touchscreen Sizes",
+    "summary": "",
+    "keywords": [],
+    "type": "develop",
+    "category": "guide"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "training/multiscreen/index.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Designing for Multiple Screens",
+    "summary": "Designing an intuitive, effective navigation for tablets and other devices.",
+    "keywords": [],
+    "type": "develop",
+    "category": "guide"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "guide/topics/resources/providing-resources.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Providing Resources",
+    "summary": "Layouts and drawable resources for specific ranges of device screens.",
+    "keywords": [],
+    "type": "develop",
+    "category": "guide"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "training/basics/supporting-devices/screens.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Supporting Different Screens",
+    "summary": "Optimizing the user experience for different screen sizes and densities.",
+    "keywords": [],
+    "type": "develop",
+    "category": "guide"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "guide/topics/appwidgets/index.html#MetaData",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Adding the AppWidgetProviderInfo Metadata",
+    "summary": "How to set the height and width dimensions of a widget.",
+    "keywords": [],
+    "type": "develop",
+    "category": "guide"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "guide/topics/manifest/uses-sdk-element.html#ApiLevels",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Android API Levels",
+    "summary": "Introduction to API levels and how they relate to compatibility.",
+    "keywords": [],
+    "type": "develop",
+    "category": "compatibility"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "guide/practices/screens_support.html#DeclaringScreenSizeSupport",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Declaring screen size support",
+    "summary": "How to declare support for screen sizes in your app\'s manifest.",
+    "keywords": [],
+    "type": "develop",
+    "category": "compatibility"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "guide/topics/manifest/uses-feature-element.html#testing",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Checking for hardware feature requirements",
+    "summary": "Determining an app’s hardware and software requirements.",
+    "keywords": [],
+    "type": "develop",
+    "category": "compatibility"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://play.google.com/apps/publish/",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Google Play Developer Console",
+    "summary": "The tools console for publishing your app.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "Google Play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://youtu.be/SkHHPf3EdzE",
+    "timestamp": 1194884220000,
+    "image": "https://i1.ytimg.com/vi/SkHHPf3EdzE/maxresdefault.jpg",
+    "title": "Level Up Your Android Game",
+    "summary": "Learn how to take your game to the next level on Google Play.",
+    "keywords": [],
+    "type": "video",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/+/mobile/android/share/interactive-post",
+    "timestamp": 1194884220000,
+    "image": 'images/google/gps-googleplus.png',
+    "title": "Sharing interactive posts to Google+ from your Android app",
+    "summary": "Interactive posts provide an easy and prominent way to allow users to share your site or app with their friends and invite them to take a specific action.",
+    "keywords": ["Interactive", "Google+"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://play.google.com/about/developer-distribution-agreement.html",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Developer Distribution Agreement",
+    "summary": "Terms for distributing and selling apps and in-app products in Google Play.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/113417",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Inappropriate content in comments and applications",
+    "summary": "More details on what content is appropriate.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/legal/troubleshooter/1114905",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Removing content from Google",
+    "summary": "Find how how to request the removal of content that infringes on your trademark.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://play.google.com/about/developer-distribution-agreement-addendum.html",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Google Play for Education Addendum",
+    "summary": "Review the education-specific requirements.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://android-developers.blogspot.com/2013/03/native-rtl-support-in-android-42.html",
+    "timestamp": null,
+    "image": null,
+    "title": "Native RTL Support in Android 4.2",
+    "summary": "Blog post that explains how to support RTL in your UI.",
+    "keywords": [],
+    "type": "blog",
+    "category": "Localization"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "guide/topics/resources/string-resource.html#Plurals",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Quantity Strings (Plurals)",
+    "summary": "How to work with string plurals according to rules of grammar in a given locale.",
+    "keywords": [],
+    "type": "develop",
+    "category": "Localization"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "reference/java/util/Locale.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Locale",
+    "summary": "Determine what CLDR data or version of the Unicode spec a particular Android platform version uses.",
+    "keywords": [],
+    "type": "develop",
+    "category": "Localization"
+  },
+    {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "guide/topics/resources/string-resource.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "String Resources",
+    "summary": "Explains how to use string resources in your UI.",
+    "keywords": ["localization"],
+    "type": "develop",
+    "category": "guide"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "distribute/tools/localization-checklist.html#strings",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Manage strings for localization",
+    "summary": "Guidance on having your strings translation ready.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "localization"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "distribute/googleplay/policies/index.html",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Google Play Policies and Guidelines",
+    "summary": "An overview of Google Play policies for spam, intellectual property, and ads, with examples of common problems.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play "
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/topic/2364761",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Policy and Best Practices",
+    "summary": "Help Center document describing various content policies and processes.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/wallet/instant-buy/",
+    "timestamp": 1194884220000,
+    "image": "",
+    "title": "Android Pay APIs",
+    "summary": "Developer documentation describing Instant Buy and how to support it in your apps.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/1169947",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Selling Apps in Multiple Currencies",
+    "summary": "Help Center document describing how pricing works in Google Play.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/138412",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Prices and supported currencies",
+    "summary": "Help Center document listing supported currencies for pricing your apps.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/112622",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Transaction Fees",
+    "summary": "Help Center document describing transaction fees for priced apps and in-app products.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/138000",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Specifying tax rates",
+    "summary": "Help Center document describing how to set tax rates for different countries.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "guide/topics/resources/localization.html",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Localizing with Resources",
+    "summary": "Developer guide to localizing resources in your app.",
+    "keywords": [],
+    "type": "develop",
+    "category": "localization"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/113475",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Category types",
+    "summary": "Help Center document listing available categories for apps.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/113476",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Updates",
+    "summary": "Requirements for app updates in Google Play.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/1153479",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "In-app Billing",
+    "summary": "Help Center document describing how to correctly set up In-app Billing.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "#gpfe",
+      "#googleplay"
+    ],
+    "url": "https://youtu.be/vzvpcEffvaE",
+    "timestamp": 1383243492000,
+    "image": "https://i1.ytimg.com/vi/vzvpcEffvaE/maxresdefault.jpg",
+    "title": "Introducing Tablets with Google Play for Education",
+    "summary": "Schools in Hillsborough, New Jersey were among the first to try out Nexus 7 tablets with Google Play for Education. See the difference it made for students, teachers, and administrators.",
+    "keywords": [],
+    "type": "video",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "#engagement",
+    ],
+    "url": "https://www.youtube.com/yt/dev/",
+    "timestamp": 1383243492000,
+    "image": "https://www.youtube.com/yt/dev/media/images/yt-dev-home-hero.jpg",
+    "title": "YouTube for Developers",
+    "summary": "The YouTube APIs and Tools enable you to integrate YouTube's video content and functionality into your website, app, or device.",
+    "keywords": [],
+    "type": "video",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "#engagement",
+    ],
+    "url": "https://www.google.com/analytics/mobile/",
+    "timestamp": 1383243492000,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Mobile App Analytics",
+    "summary": "Mobile App Analytics measures what matters most at all key stages: from first discovery and download to in-app purchases. ",
+    "keywords": ["analytics,user behavior"],
+    "type": "distribute",
+    "category": "google"
+  },
+
+
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "#gcm",
+    ],
+    "url": "https://www.youtube.com/watch?v=y76rjidm8cU",
+    "timestamp": 1383243492000,
+    "image": "https://1.bp.blogspot.com/-IF-1-1kA0sg/UYwTidxdi3I/AAAAAAAAAEU/ellLeQ-E1vs/s800/google-io-lockup-2.png",
+    "title": "Google Cloud Messaging at I/O 2013",
+    "summary": "Google Cloud Messaging allows your services to efficiently send data to applications on Android devices. See what's new, and learn how to use GCM to make your apps more efficient.",
+    "keywords": ["gcm"],
+    "type": "youtube",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "#gcm",
+    ],
+    "url": "https://developer.chrome.com/apps/cloudMessagingV2",
+    "timestamp": 1383243492000,
+    "image": "images/kk-chromium-icon.png",
+    "title": "Google Cloud Messaging for Chrome",
+    "summary": "Google Cloud Messaging for Chrome (GCM) is a service for signed-in Chrome users that helps developers send message data from servers to their Chrome apps and extensions.",
+    "keywords": ["gcm"],
+    "type": "distribute",
+    "category": "google"
+  },
+
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "#sdkupdates"
+    ],
+    "url": "https://android-developers.blogspot.com/2013/07/making-beautiful-android-app-icons.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Make Beautiful Android App Icons",
+    "summary": "Follow these in-depth launcher icon tips on the Android Developers blog.",
+    "keywords": [],
+    "type": "blog",
+    "category": ""
+  },
+     {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "#sdkupdates"
+    ],
+    "url": "https://android-developers.blogspot.com/2012/12/localize-your-promotional-graphics-on.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Localize Your Promotional Graphics",
+    "summary": "Learn how to capitalise on international audiences.",
+    "keywords": [],
+    "type": "blog",
+    "category": ""
+  },
+   {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "#sdkupdates"
+    ],
+    "url": "https://android-developers.blogspot.com/2013/10/making-your-app-content-more-accessible.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Make your App Content more Accessible with App Linking",
+    "summary": "About using search and deep linking to get more users.",
+    "keywords": [],
+    "type": "blog",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/+/mobile/android/share/interactive-post",
+    "timestamp": 1194884220000,
+    "image": 'images/google/gps-googleplus.png',
+    "title": "Sharing interactive posts to Google+ from your Android app",
+    "summary": "Interactive posts provide an easy and prominent way to allow users to share your site or app with their friends and invite them to take a specific action.",
+    "keywords": ["Interactive", "Google+"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/+/mobile/android/",
+    "timestamp": 1194884220000,
+    "image": 'images/google/gps-googleplus.png',
+    "title": "Google+ Platform",
+    "summary": "Find out about features such as interactive posts, Hangouts, accessing basic user details and their social graphs to make your app more personal.",
+    "keywords": ["Google+"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/2528691",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "How to add multiple user accounts to your Developer Console for testing and more.",
+    "summary": "",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "google/play/licensing/index.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Application Licensing",
+    "summary": "Information on the features of Google Play to protect your apps’ licences.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "design/style/writing.html",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Writing Style",
+    "summary": "Design guidelines for voice and style in your UI.",
+    "keywords": [],
+    "type": "design",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://en.wikipedia.org/wiki/XLIFF",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "XML Localisation Interchange File Format (XLIFF)",
+    "summary": "Background information on XLIFF.",
+    "keywords": [],
+    "type": "develop",
+    "category": "localization"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/1078870",
+    "timestamp": 1194884220000,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Graphic Assets for your Application",
+    "summary": "Details about the graphics you can add to your product listing.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/payments/answer/2741495",
+    "timestamp": null,
+    "image": null,
+    "title": "Issuing Refunds",
+    "summary": "Help Center document describing how to issue refunds.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://android-developers.blogspot.com/2013/11/bring-your-apps-into-classroom-with.html",
+    "timestamp": null,
+    "image": "distribute/images/gp-edu-apps-image.jpg",
+    "title": "Google play for education",
+    "summary": " ",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["localization", "pricing", "developer support"],
+    "url": "https://support.google.com/googleplay/android-developer/table/3541286",
+    "timestamp": null,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Supported locations for distributing your apps in Google Play",
+    "summary": "Countries and regions where you can distribute your app in Google Play.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["games", "localization", "quality"],
+    "url": "https://www.youtube.com/watch?v=SkHHPf3EdzE",
+    "timestamp": null,
+    "image": "https://developers.google.com/apps/images/io_2013/google-io-logo.png",
+    "title": "Level Up Your Android Game",
+    "summary": "Learn how to take your game to the next level in this Google I/O session.",
+    "keywords": [],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["support"],
+    "url": "https://support.google.com/plus/topic/2888488",
+    "timestamp": null,
+    "image": null,
+    "title": "Google+ Communities",
+    "summary": "Host a Google+ community for testers or users.",
+    "keywords": [],
+    "type": "distribute",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["monetize", "ads"],
+    "url": "https://www.google.com/doubleclick/publishers/small-business/index.html",
+    "timestamp": null,
+    "image": "https://www.google.com/doubleclick/publishers/small-business/images/define_ad.png",
+    "title": "DoubleClick for Publishers",
+    "summary": "A free ad management solution that helps growing publishers sell, schedule, deliver, and measure all of their digital ad inventory.",
+    "keywords": ["ads"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["monetize", "ads"],
+    "url": "https://support.google.com/googleplay/android-developer/topic/2985714",
+    "timestamp": null,
+    "image":"images/cards/google-play_2x.png",
+    "title": "Policy Center: Ads",
+    "summary": "Introduction to ads and system interference policies in Google Play.",
+    "keywords": ["ads"],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2611404",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Create Audience lists in Google Analytics",
+    "summary": "Find out how to use your analytics data to discover high value users and create remarketing audiences to use in AdMob.",
+    "keywords": ["ads, analytics, monetize"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://admob.blogspot.com/",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Inside Admob",
+    "summary": "Google’s official blog for news, tips, and information on the AdMob developer platform.",
+    "keywords": ["ads, analytics, monetize"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/admob/answer/3111064",
+    "timestamp": null,
+    "image": "distribute/images/advertising.jpg",
+    "title": "AdMob in-app conversion tracking",
+    "summary": "Use in-app conversion tracking to attribute revenue back to your IAP promotion campaigns and determine which ones earn you the most.",
+    "keywords": ["ads, analytics, conversions"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["monetize", "giftcards"],
+    "url": "https://play.google.com/about/giftcards/",
+    "timestamp": null,
+    "image": "images/gp-balance.png",
+    "title": "Google Play Gift Cards",
+    "summary": "Buy Google Play gift cards online or at a variety of retail stores.",
+    "keywords": ["gift card"],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["monetize", "paymentmethods"],
+    "url": "https://support.google.com/googleplay/answer/2651410",
+    "timestamp": null,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Google Play Accepted Payment Methods",
+    "summary": "Support details on the payment methods supported in Google Play.",
+    "keywords": ["gift card"],
+    "type": "distribute",
+    "category": "google play"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["plus", "social"],
+    "url": "https://plus.google.com/+AndroidDevelopers/",
+    "timestamp": null,
+    "image": "images/plus.jpg",
+    "title": "+Android Developers",
+    "summary": "Sharing news, ideas, and techniques for success.",
+    "keywords": ["+AndroidDevelopers"],
+    "type": "develop",
+    "category": "Social"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": ["plus", "social"],
+    "url": "https://plus.google.com/+GooglePlay",
+    "timestamp": null,
+    "image": "images/cards/google-play_2x.png",
+    "title": "+Google Play",
+    "summary": "News and discussion about Google Play, apps, and other content in Google+.",
+    "keywords": ["+GooglePlay"],
+    "type": "distribute",
+    "category": "Social"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Mobile App Analytics SDK",
+    "summary": "Measure everything about your app. Get started with the Google Analytics SDK for Android.",
+    "keywords": ["analytics, user behavior"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/edu/guidelines",
+    "timestamp": null,
+    "image": "https://developer.android.com/distribute/images/edu-guidelines.jpg",
+    "title": "Education Guidelines",
+    "summary": "These guidelines and requirements help you develop great apps for students, which offer compelling content and an intuitive user experience on Android tablets.",
+    "keywords": [],
+    "type": "",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/edu/faq",
+    "timestamp": null,
+    "image": "https://developer.android.com/distribute/images/gpfe-faq.jpg",
+    "title": "Education FAQ",
+    "summary": "Answers to common questions you might have about Google Play for Education.",
+    "keywords": [],
+    "type": "",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/edu/",
+    "timestamp": null,
+    "image": "https://developers.google.com/edu/images/home-android.png",
+    "title": "Chrome Apps in Google Play for Education",
+    "summary": "Find out more about Chrome apps in Google Play for Education.",
+    "keywords": [],
+    "type": "",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/edu/tablets/#tablets-family",
+    "timestamp": null,
+    "image": "https://www.google.com/edu/images/tablets/big-tablet.png",
+    "title": "Google Play for Education Tablets",
+    "summary": "Google Play for Education leverages a diverse set up tablets approved for the classroom which may help inform you how to build educational apps.",
+    "keywords": [],
+    "type": "",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_Deerhunter2014_gpgs.pdf",
+    "timestamp": null,
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_Deerhunter2014_gpgs.png",
+    "title": "Deer Hunter 2014 by Glu &mdash; Sign-in",
+    "summary": "Glu finds that Google Play Game Services helps improve the user experience which leads to increased player happiness. They also find that Play Games Services signed in users tend to play longer and have a higher lifetime value.",
+    "keywords": ["stories"],
+    "type": "Case Study Deck",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/ConcreteSoftware_PBABowling_gpgs.pdf",
+    "timestamp": null,
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/ConcreteSoftware_PBABowling_gpgs.png",
+    "title": "PBA® Bowling Challenge by Concrete Software &mdash; Quests",
+    "summary": "Concrete Software finds that Google Play Game Services' quests are a great way to create new content for users that leads to higher engagement.",
+    "keywords": ["stories"],
+    "type": "Case Study Deck",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Dragonplay_DragonplaySlots_gpgs.pdf",
+    "timestamp": null,
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Dragonplay_DragonplaySlots_gpgs.png",
+    "title": "Dragonplay Slots by Dragonplay &mdash; Sign-in",
+    "summary": "Dragonplay finds that players who sign in with Google Play Games services tend to be high quality users who were highly engaged. They also tend to be easier to convert to paying users.",
+    "keywords": ["stories"],
+    "type": "Case Study Deck",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Gameloft_Asphalt8_gpgs.pdf",
+    "timestamp": null,
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Gameloft_Asphalt8_gpgs.png",
+    "title": "Asphalt 8 by Gameloft &mdash; Friends invitations",
+    "summary": "Gameloft finds that Google Play Game Services users are more engaged than the average Android user and more likely to convert to paying players.",
+    "keywords": ["stories"],
+    "type": "Case Study Deck",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_EternityWarriors3_gpgs.pdf",
+    "timestamp": null,
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_EternityWarriors3_gpgs.png",
+    "title": "Eternity Warriors 3 by Glu &mdash; Gifting",
+    "summary": "Glu finds that Google Play Game Services gifting outperforms other implementations (including those with incentives) because of its seamless flow and consistent performance.",
+    "keywords": ["stories"],
+    "type": "Case Study Deck",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/HotheadGames_RivalsatWar_gpgs.pdf",
+    "timestamp": null,
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/HotheadGames_RivalsatWar_gpgs.jpg",
+    "title": "Rivals at War: Firefight by Hothead Games &mdash; Leaderboards",
+    "summary": "Hothead Games is planning to include Google Play Game Services features in all their games going forwards after seeing that players that signed in with Play Games Services tend to show higher retention and a higher average revenue.",
+    "keywords": ["stories"],
+    "type": "Case Study Deck",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/TMSOFT_Compulsive_gpgs.pdf",
+    "timestamp": null,
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/TMSOFT_Compulsive_gpgs.png",
+    "title": "Compulsive by TMSOFT &mdash; Cross-platform",
+    "summary": "TMSOFT finds that users who authenticate with Play Games Services on Android and iOS play Compulsive twice as much and purchase in-app products over four times as much.",
+    "keywords": ["stories"],
+    "type": "Case Study Deck",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.pdf",
+    "timestamp": null,
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.png",
+    "title": "Super Stickman Golf 2 by Noodlecake Studios &mdash; Multiplayer",
+    "summary": "Noodlecake Studios finds that Google Play Game Services’ multiplayer feature helps reduce attrition.",
+    "keywords": ["stories"],
+    "type": "Case Study Deck",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/TinyRebel_DoctorWhoLegacy_gpgs.pdf",
+    "timestamp": null,
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/TinyRebelGames_DrWhoLegacy_pgps.png",
+    "title": "Dr. Doctor Who: Legacy by Tiny Rebel Games &mdash; Achievements",
+    "summary": "After integrating achievements and cloud services from Google Play Game Services, Tiny Rebel Games saw a dramatic increase in daily revenues as a result of an increase in daily installs and an increase in the average revenue per install.",
+    "keywords": ["stories"],
+    "type": "Case Study Deck",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Senri_LeosFortune_gpgs.pdf",
+    "timestamp": null,
+    "image": "https://storage.googleapis.com/androiddevelopers/shareables/stories/Senri_LeosFortune_gpgs.png",
+    "title": "Leo’s Fortune by 1337 &amp; Senri &mdash; Saved games",
+    "summary": "1337 + Senri finds that Google Play Game Services is easy to integrate and provides essential game functions like cloud saved games, achievements and leaderboards which have a very large adoption rate amongst players.",
+    "keywords": ["stories"],
+    "type": "Case Study Deck",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "shareables/auto/AndroidAuto-audio-apps.pdf",
+    "timestamp": null,
+    "image": "auto/images/assets/icons/media_app_playback.png",
+    "title": "Android Auto Audio Apps UI Guidelines",
+    "summary": "Guidelines for designing audio apps that work with Auto. ",
+    "keywords": ["design", "Auto", "Automotive"],
+    "type": "Design",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "shareables/auto/AndroidAuto-messaging-apps.pdf",
+    "timestamp": null,
+    "image": "auto/images/assets/icons/messaging_app_notifications.png",
+    "title": "Android Auto Messaging Apps UI Guidelines",
+    "summary": "Guidelines for designing messaging apps that work with Auto. ",
+    "keywords": ["design", "Auto", "Automotive"],
+    "type": "Design",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "shareables/auto/AndroidAuto-custom-colors.pdf",
+    "timestamp": null,
+    "image": "auto/images/ui/gearhead_generic_UI.png",
+    "title": "Android Auto Color Customization UI Guidelines",
+    "summary": "Guidelines for color-customizing apps that work with Auto. ",
+    "keywords": ["design", "Auto", "Automotive"],
+    "type": "Design",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/solutions/mobile-implementation-guide",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Mobile Analytics Implementation Guide",
+    "summary": "Learn how you can implement additional Google Analytics features to better understand your users and their behavior.",
+    "keywords": ["analytics", "Play", "users"],
+    "type": "distribute",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/tagmanager/",
+    "timestamp": null,
+    "image": "https://www.google.com/tagmanager/images/gtm-hero-illustration-small.png",
+    "title": "Google Tag Manager",
+    "summary": "Google Tag Manager enables you to change configuration values in your mobile apps using the Google Tag Manager interface, without having to rebuild and resubmit application binaries to app marketplaces.",
+    "keywords": ["analytics", "tagmanager"],
+    "type": "distribute",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://analyticsacademy.withgoogle.com/course04",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Mobile App Analytics Fundamentals",
+    "summary": "This self-paced online course on mobile app measurement shows you how Google Analytics data can help you make your app more discoverable and profitable.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://github.com/googleanalytics/google-analytics-plugin-for-unity",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Analytics Plugin for Unity",
+    "summary": "If you're building games with Unity, you can now implement Analytics once and ship it on multiple platforms automatically.",
+    "keywords": ["analytics", "unity"],
+    "type": "Open Source Project",
+    "category": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/enhanced-ecommerce",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "In-App Purchases & Ecommerce",
+    "summary": "If your app sells virtual or real goods, ecommerce tracking can help you understand what behaviors lead to purchases.",
+    "keywords": ["analytics, ecommerce"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/1032415",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Goals",
+    "summary": "Track important actions in your app as goals and measure performance against your objectives.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2568874?ref_topic=6012392",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Active Users",
+    "summary": "The active user report displays your 1-day, 7-day, 14-day and 30-day trailing active users next to each other, to help you analyze performance over time.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/events",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Events",
+    "summary": "Events let you measure granular in-app activities and understand user journeys.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/customdimsmets",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Custom Dimensions",
+    "summary": "Custom dimensions enable the association of metadata with hits, users, and sessions in Google Analytics.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/user-id",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "User ID",
+    "summary": "The User ID feature enables Google Analytics to measure user activities that span across devices.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/display-features",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Demographic Reporting",
+    "summary": "By enabling display features, you can see just how different user segments engage and monetize.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/3123906",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "User Segmentation",
+    "summary": "Segments let you compare metrics for different subsets of users to identify trends and opportunities for your apps.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/campaigns",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Campaign Tracking",
+    "summary": "Measuring campaigns in Google Analytics enables the attribution of campaigns and traffic sources to user activity within your app.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2956981",
+    "timestamp": null,
+    "image": "images/cards/google-play_2x.png",
+    "title": "Google Play Integration",
+    "summary": "By linking Analytics and the Play Developer Console, you can gain additional insights into the acquisition flow.",
+    "keywords": ["play, analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/1033961",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "AdWords Integration",
+    "summary": "Link Analytics and AdWords to see the entire picture of customer behavior, from ad click or impression through your site to conversion. ",
+    "keywords": ["adwords, analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-url-builder",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Campaign URL builder for Google Play",
+    "summary": "Easily create your URLs to track install campaigns.",
+    "keywords": ["play, analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/tagmanager/answer/6003007",
+    "timestamp": null,
+    "image": "https://www.google.com/tagmanager/images/gtm-hero-illustration-small.png",
+    "title": "In-App A/B Testing",
+    "summary": "With content experiments in Google Tag Manager you can test multiple variations of your app to find which works best.",
+    "keywords": ["tagmanager"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2785577",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Behavior Flow",
+    "summary": "The Behavior Flow report visualizes the path users traveled from one Screen or Event to the next. This report can help you discover what content keeps users engaged with your app.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/1151300",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Custom Reports",
+    "summary": "Custom Reports let you create your own reports in your Google Analytics account.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2611268",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Audience Lists &amp; Remarketing",
+    "summary": "Remarketing with Google Analytics lets you deliver targeted ads to users who've already been to your site or app. You can even base those ads on the behavior those users displayed during their sessions.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/admob/answer/3508177",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "AdMob Integration",
+    "summary": "With Google Analytics in AdMob, you can view Google Analytics data for your linked apps from within your AdMob account.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/solutions/mobile-campaign-deep-link",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Deep-Linking",
+    "summary": "Google Analytics gives you a full view of how returning users are interacting with your app, for a holistic view beyond the install.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/admob/answer/3508177",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "AdMob Integration",
+    "summary": "With Google Analytics in AdMob, you can view Google Analytics data for your linked apps from within your AdMob account.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2568874",
+    "timestamp": null,
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "title": "Active User Report",
+    "summary": "Active user report displays your 1-day, 7-day, 14-day and 30-day trailing active users next to each other, to help you run benchmark analyses of their performance over time.",
+    "keywords": ["analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/design/spec/animation/",
+    "timestamp": null,
+    "image": "images/cards/material-animation_2x.png",
+    "title": "Animation",
+    "summary": "",
+    "keywords": [],
+    "type": "design",
+    "category": "material design"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/design/spec/style/",
+    "timestamp": null,
+    "image": "images/cards/material-style_2x.jpg",
+    "title": "Style",
+    "summary": "",
+    "keywords": [],
+    "type": "design",
+    "category": "material design"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/design/spec/layout/",
+    "timestamp": null,
+    "image": "images/cards/material-layout_2x.png",
+    "title": "Layout",
+    "summary": "",
+    "keywords": [],
+    "type": "design",
+    "category": "material design"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/design/spec/components/",
+    "timestamp": null,
+    "image": "images/cards/material-components_2x.jpg",
+    "title": "Components",
+    "summary": "",
+    "keywords": [],
+    "type": "design",
+    "category": "material design"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/design/spec/patterns/",
+    "timestamp": null,
+    "image": "images/cards/material-patterns_2x.png",
+    "title": "Patterns",
+    "summary": "",
+    "keywords": [],
+    "type": "design",
+    "category": "material design"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/design/spec/usability/",
+    "timestamp": null,
+    "image": "images/cards/material-usability_2x.png",
+    "title": "Usability",
+    "summary": "",
+    "keywords": [],
+    "type": "design",
+    "category": "material design"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/design/spec/resources/color-palettes.html",
+    "timestamp": null,
+    "image": "images/cards/material-color-palette_2x.jpg",
+    "title": "Color Palettes",
+    "summary": "",
+    "keywords": [],
+    "type": "design",
+    "category": "material design"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/design/spec/resources/layout-templates.html",
+    "timestamp": null,
+    "image": "images/cards/material-layout-template_2x.jpg",
+    "title": "Layout Templates",
+    "summary": "",
+    "keywords": [],
+    "type": "design",
+    "category": "material design"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/design/spec/resources/sticker-sheets-icons.html",
+    "timestamp": null,
+    "image": "images/cards/material-sticker-sheet_2x.jpg",
+    "title": "Sticker Sheets & Icons",
+    "summary": "",
+    "keywords": [],
+    "type": "design",
+    "category": "material design"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://www.google.com/design/spec/resources/roboto-noto-fonts.html",
+    "timestamp": null,
+    "image": "images/cards/material-typography_2x.jpg",
+    "title": "Typography: Roboto and Noto Sans fonts",
+    "summary": "",
+    "keywords": [],
+    "type": "design",
+    "category": "material design"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "icons",
+      "material",
+      "iconography"
+    ],
+    "url": "https://www.google.com/design/icons/index.html",
+    "timestamp": null,
+    "image": "images/cards/card-material-icons-16x9_2x.jpg",
+    "title": "Material icon collection",
+    "summary": "",
+    "keywords": ["icons"],
+    "type": "design",
+    "category": "material design"
+  },
+
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/adwords/answer/6032059",
+    "timestamp": null,
+    "image": "distribute/images/advertising.jpg",
+    "title": "Setting up Mobile App Install Ads",
+    "summary": "With Mobile app installs campaigns on the Search and Display Networks, and TrueView for mobile app promotion on YouTube, you can create custom app install ads that run exclusively on phones and tablets.",
+    "keywords": ["marketing", "admob"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/adwords/answer/6167164",
+    "timestamp": null,
+    "image": "distribute/images/advertising.jpg",
+    "title": "Best practices for Mobile App Engagement",
+    "summary": "Learn how to market to your user base to drive re-engagement with your app. ",
+    "keywords": ["marketing", "admob"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "marketing",
+      "engagement",
+      "adwords1"
+    ],
+    "url": "https://support.google.com/adwords/answer/6032073",
+    "timestamp": null,
+    "image": "https://www.gstatic.com/images/icons/material/product/2x/adwords_64dp.png",
+    "title": "Setting up Mobile App Engagement Ads",
+    "summary": "Mobile app engagement campaigns are a great choice for advertisers focused on connecting with people who already have their app.",
+    "keywords": [
+      "marketing",
+      "engagement",
+      "adwords"
+    ],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [
+      "marketing",
+      "engagement"
+    ],
+    "url": "https://support.google.com/adwords/answer/6167162",
+    "timestamp": null,
+    "image": "https://www.gstatic.com/images/icons/material/product/2x/adwords_64dp.png",
+    "title": "Best Practices for Mobile App Installs",
+    "summary": "Getting your mobile app discovered can be challenging. Learn how to drive downloads of your app and grow a valuable user base.",
+    "keywords": ["marketing", "adwords"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/admob/topic/2784623",
+    "timestamp": null,
+    "image": "distribute/images/advertising.jpg",
+    "title": "Set up your AdMob account",
+    "summary": "Setting up your AdMob account in the right way will help you get the most value, check out the Setup and Basics guide.",
+    "keywords": ["marketing", "admob"],
+    "type": "distribute",
+    "category": "google"
+    },
+    {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://analyticsacademy.withgoogle.com/mobile-app",
+    "timestamp": null,
+    "image": "distribute/images/advertising.jpg",
+    "title": "Analytics Academy for Mobile Apps",
+    "summary": "Learn how to use Google Analytics to make your app more discoverable and profitable.",
+    "keywords": ["marketing", "analytics"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/mobile-ads-sdk/download",
+    "timestamp": null,
+    "image": "distribute/images/advertising.jpg",
+    "title": "Admob Ads",
+    "summary": "Use the Mobile Ads SDK to start showing AdMob ads in your apps.",
+    "keywords": ["marketing", "adwords"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/admob/",
+    "timestamp": null,
+    "image": "distribute/images/advertising.jpg",
+    "title": "AdMob Help Center",
+    "summary": "For setup assistance, general info, and fixes for specific problems check out the AdMob Help Center.",
+    "keywords": ["admob"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/admob/answer/2753860",
+    "timestamp": null,
+    "image": "distribute/images/advertising.jpg",
+    "title": "AdMob Policy Guidelines",
+    "summary": "Learn about best practices for displaying AdMob ads in your apps to maximize revenue.",
+    "keywords": ["admob"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/app-invites/",
+    "timestamp": 1383243492000,
+    "image": "images/cards/google-search_2x.png",
+    "title": "Set up App Invites",
+    "summary": "Bring new users to your apps with personal recommendations, incentives, and offers.",
+    "keywords": ["invites", "appinvites", "engagement", "getusers"],
+    "type": "distribute",
+    "category": "google"
+  },
+
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/app-indexing/",
+    "timestamp": 1383243492000,
+    "image": "images/cards/google-search_2x.png",
+    "title": "Set Up App Indexing",
+    "summary": "Surface your app content in Google seaerch. Deep link direct to your apps.",
+    "keywords": ["search", "appindexing", "engagement", "getusers"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/app-indexing/webmasters/details",
+    "timestamp": null,
+    "image": "images/cards/google-search_2x.png",
+    "title": "Index your app",
+    "summary": "Index your app today by adding deep links and verifying its official web site to ensure it starts appearing in Google Search results. ",
+    "keywords": ["appindexing","search","getusers"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/identity/sign-in/android/people",
+    "timestamp": 1383243492000,
+    "image": "images/cards/google-sign-in_2x.png",
+    "title": "Get user profile details",
+    "summary": "After users sign-in with Google, you can access their age range, language, and public profile information.",
+    "keywords": ["signin", "identity", "google"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/identity/sign-in/android/",
+    "timestamp": "",
+    "image": "images/cards/google-sign-in_2x.png",
+    "title": "Google Sign-In",
+    "summary": "Discover how you can enhance user experiences on your website or in your app using information provided by their Google identity.",
+    "keywords": ["signin", "identity", "google"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/+/features/play-installs",
+    "timestamp": 1383243492000,
+    "image": "images/cards/google-sign-in_2x.png",
+    "title": "Over-the-air installs",
+    "summary": "Follow this step-by-step guide to quickly add Google Sign-in and over-the-air app installs to your website.",
+    "keywords": ["signin", "google", "installs"],
+    "type": "distribute",
+    "category": "google"
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/+/features/analytics",
+    "timestamp": 1383243492000,
+    "image": 'images/google/gps-googleplus.png',
+    "title": "Google+ Insights",
+    "summary": "Measure impressions of the over-the-air install prompt, resulting installs, and success rate by day, week, and month.",
+    "keywords": ["signin", "identity"],
+    "type": "distribute",
+    "category": "google"
+  },
+
+ // Online courses
+
+ {
+    "title":"UX Design for Mobile Developers",
+    "category":"online course",
+    "summary":"Learn how to design a 5-star app.",
+    "url":"https://www.udacity.com/course/ud849",
+    "group":"",
+    "keywords": ["mobile","ux","design"],
+    "tags": ["courses, start"],
+    "image":"images/cards/courses/mobile_ux_course.jpg",
+    "lang":"en",
+    "type":"design"
+  },
+  {
+    "title":"Developing Android Apps",
+    "category":"online course",
+    "summary":"Learn Android and build an app!",
+    "url":"https://www.udacity.com/course/ud853",
+    "group":"",
+    "keywords": ["android", "start","firstapp","sdk"],
+    "tags": ["courses, start"],
+    "image":"images/cards/courses/android_fundamentals_course.jpg",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Android Performance",
+    "category":"online course",
+    "summary":"Optimize your apps for speed and usability.",
+    "url":"https://www.udacity.com/course/ud825",
+    "group":"",
+    "keywords": ["android, performance","battery"],
+    "tags": ["courses, performance"],
+    "image":"images/cards/courses/android_performance_course.jpg",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Enroll in the Android Nanodegree",
+    "category":"online course",
+    "summary":"Enroll in the Android Nanodegree to build the skills to work as an Android developer.",
+    "url":"https://www.udacity.com/android",
+    "group":"",
+    "keywords": ["android, nanodegree"],
+    "tags": ["courses"],
+    "image":"images/cards/courses/android_nanodegree.png",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Advanced Android App Development",
+    "category":"online course",
+    "summary":"Productionize and publish your apps.",
+    "url":"https://www.udacity.com/course/ud855",
+    "group":"",
+    "keywords": ["android, experts"],
+    "tags": ["courses, expert"],
+    "image":"images/cards/courses/advanced_android_course.jpg",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Material Design for Android Developers",
+    "category":"online course",
+    "summary":"Learn how to make your apps material.",
+    "url":"https://www.udacity.com/course/ud862",
+    "group":"",
+    "keywords": ["android, design, pure, material"],
+    "tags": ["courses, start, material"],
+    "image":"images/cards/courses/android_design_course.jpg",
+    "lang":"en",
+    "type":"design"
+  },
+  {
+    "title":"Android for Beginners",
+    "category":"online course",
+    "summary":"Make your first Android app, even if you don't write code.",
+    "url":"https://www.udacity.com/course/ud837",
+    "group":"",
+    "keywords": ["android, sdk, firstapp"],
+    "tags": ["courses, start"],
+    "image":"images/cards/courses/beginning_android_course.jpg",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Gradle for Android and Java",
+    "category":"online course",
+    "summary":"Build better apps through automation",
+    "url":"https://www.udacity.com/course/ud867",
+    "group":"",
+    "keywords": ["gradle","studio", "sdk"],
+    "tags": ["courses, gradle, sdk"],
+    "image":"images/cards/courses/gradle_course.jpg",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Add Location and Context to your app",
+    "category":"online course",
+    "summary":"Make Your Android App Location Aware.",
+    "url":"https://www.udacity.com/course/ud876-1",
+    "group":"",
+    "keywords": ["google services, context, location"],
+    "tags": ["courses, google, location, context"],
+    "image":"images/cards/courses/android_location_course.png",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Analytics and Tag Manager for Android",
+    "category":"online course",
+    "summary":"Use Analytics and Tag Manager in Your Apps.",
+    "url":"https://www.udacity.com/course/ud876-2",
+    "group":"",
+    "keywords": ["google services, analytics, tag manager"],
+    "tags": ["courses, google, analytics"],
+    "image":"images/cards/courses/android_analytics_course.png",
+    "lang":"en",
+    "type":"distribute"
+  },
+  {
+    "title":"AdMob for Android",
+    "category":"online course",
+    "summary":"Monetize Your App by Displaying Ads.",
+    "url":"https://www.udacity.com/course/ud876-3",
+    "group":"",
+    "keywords": ["monetize, google services, ads, admob"],
+    "tags": ["courses, google, ads, admob"],
+    "image":"images/cards/courses/admob_course.png",
+    "lang":"en",
+    "type":"distribute"
+  },
+  {
+    "title":"Add Maps to your Android app",
+    "category":"online course",
+    "summary":"Use maps, cameras, markers and more in your app.",
+    "url":"https://www.udacity.com/course/ud876-4",
+    "group":"",
+    "keywords": ["google, maps, marker, camera"],
+    "tags": ["courses, google, maps"],
+    "image":"images/cards/courses/android_maps_course.png",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Add Sign-in to your Android app",
+    "category":"online course",
+    "summary":"Build a Seamless Sign-In Experience.",
+    "url":"https://www.udacity.com/course/ud876-5",
+    "group":"",
+    "keywords": ["google services, signin, authorization"],
+    "tags": ["courses, google, auth"],
+    "image":"images/cards/courses/android_identity_course.png",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Android Wear Development",
+    "category":"online course",
+    "summary":"Extend your Apps to Android Smartwatches.",
+    "url":"https://www.udacity.com/course/ud875A",
+    "group":"",
+    "keywords": ["wear, wearables, smartwatch"],
+    "tags": ["courses, wear, wearable"],
+    "image":"images/cards/courses/android_wear_course.jpg",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Android TV and Google Cast Development",
+    "category":"online course",
+    "summary":"Extend your Apps to the Big Screen.",
+    "url":"https://www.udacity.com/course/ud875B",
+    "group":"",
+    "keywords": ["cast, living room"],
+    "tags": ["courses, cast, tv"],
+    "image":"images/cards/courses/android_tv_cast_course.jpg",
+    "lang":"en",
+    "type":"develop"
+  },
+  {
+    "title":"Android Auto Development",
+    "category":"online course",
+    "summary":"Put your apps in the driver's seat.",
+    "url":"https://www.udacity.com/course/ud875C",
+    "group":"",
+    "keywords": ["auto"],
+    "tags": ["courses, auto"],
+    "image":"images/cards/courses/android_auto_course.jpg",
+    "lang":"en",
+    "type":"develop"
+  },
+
+
+ // TODO remove this?
+  {
+    "title":"Android Wear Materials",
+    "category":"design",
+    "summary":"Drag and drop your way to beautifully designed Android Wear apps.",
+    "url":"design/downloads/index.html#Wear",
+    "group":"",
+    "keywords": ["icons","stencils","color swatches"],
+    "tags": ["icons","stencils","colorswatches"],
+    "image":"images/cards/android-wear-materials_2x.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Watch Faces for Android Wear",
+    "category":"design",
+    "summary":"Watch faces let you customize the most prominent UI feature of Android wearables. The API is simple enough for rapid development and flexible enough to build something awesome.",
+    "url":"https://www.youtube.com/watch?v=AK38PJZmIW8&list=PLWz5rJ2EKKc-kIrPiq098QH9dOle-fLef",
+    "group":"",
+    "keywords": ["wear", "wearable", "watch face"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/AK38PJZmIW8/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Android Support Library",
+    "category":"Tools",
+    "summary":"These essential components help you build a great app that works on the huge variety of Android devices, faster.",
+    "url":"https://www.youtube.com/watch?v=3PIc-DuEU2s&list=PLWz5rJ2EKKc9e0d55YHgJFHXNZbGHEXJX",
+    "group":"",
+    "keywords": ["support", "compatibility"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/3PIc-DuEU2s/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Consistent Design with the AppCompat Support Library",
+    "category":"design",
+    "summary":"Getting a great looking app doesn't have to be hard: AppCompat, part of the Android Support Library, gives you a consistent design baseline that works on all Android 2.1 or higher devices.",
+    "url":"https://www.youtube.com/watch?v=5Be2mJzP-Uw&list=PLWz5rJ2EKKc9e0d55YHgJFHXNZbGHEXJX",
+    "group":"",
+    "keywords": ["support", "compatibility","design-code"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/5Be2mJzP-Uw/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Introducing Gradle",
+    "category":"tools",
+    "summary":"Android Studio uses an entirely new and flexible Gradle-based build system. You will be able to create multiple build variants for a single project, manage library dependencies and always be sure that your application builds correctly across different environments.",
+    "url":"https://www.youtube.com/watch?v=cD7NPxuuXYY&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
+    "group":"",
+    "keywords": ["tools", "studio","gradle"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/cD7NPxuuXYY/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Android Studio Layout Editor",
+    "category":"tools",
+    "summary":"Android Studio includes a rich, visual layout editor that helps developers create better user interfaces. It eliminates the need to deploy the APK on a real device with each change, making iterations faster and helping eliminate common errors earlier in the development process.",
+    "url":"https://www.youtube.com/watch?v=JLLnhwtDoHw&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
+    "group":"",
+    "keywords": ["tools", "studio","layout"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/JLLnhwtDoHw/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Debugging and testing in Android Studio",
+    "category":"tools",
+    "summary":"Learn about new debugger features in Android Studio 1.2: value inlining, quick access to referring objects and a Java .class decompiler, just to name a few. See some new tools and views that let you monitor the CPU and memory performance of your app from within the IDE. ",
+    "url":"https://www.youtube.com/watch?v=2I6fuD20qlY&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
+    "group":"",
+    "keywords": ["tools", "studio","debugging","profiling","performance"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/2I6fuD20qlY/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Scale with Google Cloud Platform",
+    "category":"google",
+    "summary":"Build, test, and deploy applications on Google's highly-scalable and reliable infrastructure for your web, mobile and backend solutions.",
+    "url":"https://cloud.google.com/docs/",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/cards/cloud-platform_2x.png",
+    "lang":"en",
+    "type":"distribute"
+  },
+  {
+    "title":"Opportunities & Programs",
+    "category":"Google Play",
+    "summary":"Take advantage of the many ways you can distribute your app to consumers, students, and businesses through Google Play.",
+    "url":"distribute/googleplay/index.html#opportunities",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/cards/program-edu_2x.jpg",
+    "lang":"en",
+    "type":"distribute"
+  },
+  {
+    "title":"Android for Work",
+    "category":"Enterprise",
+    "summary":"Learn more about how Android for Work makes your favorite phones and tablets the perfect business tools.",
+    "url":"https://www.android.com/work/",
+    "group":"",
+    "keywords": ["work", "enterprise", "emm"],
+    "tags": [],
+    "image":"images/cards/card-android-work_2x.png",
+    "lang":"en",
+    "type":"about"
+  },
+  {
+    "title":"Android for Work DevBytes",
+    "category":"Enterprise",
+    "summary":"Watch the videos in this playlist to understand more about Android for Work and get tips on developing enterprise apps.",
+    "url":"https://www.youtube.com/watch?v=jQWB_-o1kz4&list=PLOU2XLYxmsIKAK2Bhv19H2THwF-22O5WX",
+    "group":"",
+    "keywords": ["work", "enterprise", "emm"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/jQWB_-o1kz4/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"App Configurations, Testing and Launchers",
+    "category":"Enterprise",
+    "summary":"With Android for Work you can make your apps remotely configurable. We also cover how to test your app in a managed environment.",
+    "url":"https://www.youtube.com/watch?v=39NkpWkaH8M&index=2&list=PLOU2XLYxmsIKAK2Bhv19H2THwF-22O5WX",
+    "group":"",
+    "keywords": ["work", "enterprise", "emm"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/39NkpWkaH8M/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Building an enterprise ready app",
+    "category":"Enterprise",
+    "summary":"A holistic view of Android for Work for developers.",
+    "url":"https://www.youtube.com/watch?v=dH41OutAMNM",
+    "group":"",
+    "keywords": ["work", "enterprise", "emm"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/dH41OutAMNM/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Android for Work: Single Use Devices",
+    "category":"Enterprise",
+    "summary":"Single-purpose computers are everywhere, and Android can meet that need.",
+    "url":"https://www.youtube.com/watch?v=j3QC6hcpy90",
+    "group":"",
+    "keywords": ["work", "enterprise", "emm"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/j3QC6hcpy90/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Discover YouTube cards",
+    "category":"google",
+    "summary":"Find out more about YouTube cards, the options available, and how to use them to get the most from your YouTube content.",
+    "url":"https://support.google.com/youtube/answer/6140493",
+    "group":"",
+    "keywords": ["youtube", "video", "users", "installs"],
+    "tags": [],
+    "image":"images/cards/card-youtube_2x.png",
+    "lang":"en",
+    "type":"distribute"
+  },
+    {
+    "title":"What is YouTube account good standing?",
+    "category":"Google",
+    "summary":"Learn what it means for an account to be in good standing from the YouTube Help Center.",
+    "url":"https://support.google.com/youtube/answer/2797387",
+    "group":"",
+    "keywords": ["youtube", "video", "users", "installs"],
+    "tags": [],
+    "image":"images/cards/card-youtube_2x.png",
+    "lang":"en",
+    "type":"distribute"
+  },
+  {
+    "title":"Developing for Android 6.0 (Marshmallow)",
+    "category":"",
+    "summary":"This video covers how to get started with the preview, important APIs to test and how to provide feedback on the preview.",
+    "url":"https://www.youtube.com/watch?v=yYU4DHLwoRk",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/yYU4DHLwoRk/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Google I/O 2015 - What's new in Android",
+    "category":"",
+    "summary":"This session will highlight the most exciting new developer features of the Android platform.",
+    "url":"https://www.youtube.com/watch?v=ndBdf1_oOGA",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/ndBdf1_oOGA/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Fingerprint and payments APIs",
+    "category":"",
+    "summary":"New fingerprint and payments APIs are introduced in M, to enable enhanced UX and security for online purchasing, banking, and retail payments.",
+    "url":"https://www.youtube.com/watch?v=VOn7VrTRlA4",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/VOn7VrTRlA4/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Introduction to Voice Interaction API",
+    "category":"",
+    "summary":"This video covers how to use the Voice Interaction API to support system or custom voice actions.",
+    "url":"https://www.youtube.com/watch?v=OW1A4XFRuyc",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/OW1A4XFRuyc/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"Android Auto Backup for Apps",
+    "category":"",
+    "summary":"Android Backup is the automatic, cloud-based backup and restore of users’ apps when they set up a new device.",
+    "url":"https://www.youtube.com/watch?v=HXacyy0HSW0",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/HXacyy0HSW0/maxresdefault.jpg",
+    "lang":"en",
+    "type":"video"
+  },
+  {
+    "title":"New APIs in M for Android for Work",
+    "category":"",
+    "summary":"Android M extends Android for Work functionality with a new set of APIs for Enterprise Mobility Management providers to offer new features and policy controls to IT Departments.",
+    "url":"https://www.youtube.com/watch?v=vcSj8ln-BlE",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/vcSj8ln-BlE/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Android for Work: Single Use Devices",
+    "category":"",
+    "summary":"Android M is bringing the power of Android to all kinds of workplaces.",
+    "url":"https://www.youtube.com/watch?v=j3QC6hcpy90",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/j3QC6hcpy90/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Runtime Permissions in Android 6.0 Marshmallow",
+    "category":"",
+    "summary":"Learn how to integrate runtime permissions into your Android app.",
+    "url":"https://www.youtube.com/watch?v=C8lUdPVSzDk",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/C8lUdPVSzDk/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Introduction to Doze",
+    "category":"",
+    "summary":"An overview of Doze and how to make sure that your app behaves as expected both in and out of Doze mode. ",
+    "url":"https://youtu.be/N72ksDKrX6c",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/N72ksDKrX6c/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"The Nexus 5X, Nexus 6P and Android Marshmallow",
+    "category":"",
+    "summary":"The new Nexus 5X and Nexus 6P along with some of the most significant developer features in the latest Android release,.",
+    "url":"https://youtu.be/U9tw5ypqEN0",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/U9tw5ypqEN0/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Asking For Permission",
+    "category":"",
+    "summary":"Picking the right way and time to ask for a permission is critical to it being granted. ",
+    "url":"https://youtu.be/iZqDdvhTZj0",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/iZqDdvhTZj0/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Data Binding Library",
+    "category":"",
+    "summary":"Data Binding Library is a way to write declarative layouts and minimize the glue code necessary to bind your application logic and layouts. ",
+    "url":"https://youtu.be/5sCQjeGoE7M",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/5sCQjeGoE7M/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"App Links",
+    "category":"",
+    "summary":"App Links is a new feature of Android Marshmallow that brings a faster way of opening website links for domains that you own.",
+    "url":"https://youtu.be/LQoohRwojmw",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/LQoohRwojmw/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "title":"Android M Permissions",
+    "category":"",
+    "summary":"An introduction to Android M runtime permissions in Android M from Google I/O 2015. ",
+    "url":"https://www.youtube.com/watch?v=f17qe9vZ8RM",
+    "group":"",
+    "keywords": ["Marshmallow"],
+    "tags": [],
+    "image":"https://i1.ytimg.com/vi/f17qe9vZ8RM/maxresdefault.jpg",
+    "lang":"en",
+    "type":"Video"
+  },
+  {
+    "url":"https://www.youtube.com/watch?v=QDM52bblwlg",
+    "image": "images/distribute/hero-family-discovery.jpg",
+    "title": "Introducing the new family discovery experience on Google Play",
+    "summary": "Help families create little moments on Google Play. Opt-in your apps now.",
+    "tags":["families","googleplay"],
+    "type":"video"
+  },
+  {
+    "url":"https://www.youtube.com/watch?v=wcjqBSei3a0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
+    "image": "https://i1.ytimg.com/vi/wcjqBSei3a0/maxresdefault.jpg",
+    "title": "Developers connecting the world through Google Play",
+    "summary": "The mobile ecosystem is empowering developers to make good on the dream of connecting the world through technology to improve people's lives.",
+    "tags":["io15","googleplay"],
+    "keywords":["Google I/O 2015","io"],
+    "type":"video"
+  },
+  {
+    "url":"https://www.youtube.com/watch?v=B6ydLpkhq04&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
+    "image": "https://i1.ytimg.com/vi/B6ydLpkhq04/maxresdefault.jpg",
+    "title": "Store Listing Experiments for Google Play",
+    "summary": "Learn how to use Google Play’s new store listing optimization feature to get more installs of your app, and how to test different graphics and text to find out which options perform the best. ",
+    "tags":["io15","googleplay","store listing"],
+    "tags":["google i/o","google play","store listing"],
+    "type":"video"
+  },
+  {
+    "url":"https://www.youtube.com/watch?v=jyO3-rF4Mu0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
+    "image": "https://i1.ytimg.com/vi/jyO3-rF4Mu0/maxresdefault.jpg",
+    "title": "Growing games with Google",
+    "summary": "The games industry has never been more promising and full of opportunities. This talk covers how Google is helping developers across a broad range of existing and emerging platforms.",
+    "tags":["io15","android", "googleplay","games"],
+    "keywords":["Google I/O","google play","games"],
+    "type":"video"
+  },
+  {
+    "url":"https://www.youtube.com/watch?v=yJisuP94lHU",
+    "image": "images/distribute/hero-playtime-opener.jpg",
+    "title": "Playtime 2015: Innovation happens everywhere",
+    "type":"Video",
+    "tags":["googleplay"],
+    "summary": "Watch the opening video from Google Play's annual event series, Playtime, which celebrates inspirational developers who are changing the world around them.",
+  },
+  {
+    "url":"https://www.youtube.com/watch?v=JrR6o5tYMWQ",
+    "image": "images/distribute/hero-acquisition-devbyte.jpg",
+    "title": "User acquisition and tracking on Google Play",
+    "type" : "Video",
+    "tags" : "users,googleplay,googleio",
+    "summary": "Learn how to get new users, using Universal app campaigns directly within the Google Play Developer Console to increase your installs from ads, and find out how your acquisition channels perform.",
+  },
+  {
+    "url":"panel1",
+    "image": "",
+    "title": "",
+    "type" : "",
+    "tags" : "",
+    "summary": "",
+  },
+  {
+    "url":"panel2",
+    "image": "",
+    "title": "",
+    "type" : "",
+    "tags" : "",
+    "summary": "",
+  },
+  {
+    "url":"panel3",
+    "image": "",
+    "title": "",
+    "type" : "",
+    "tags" : "",
+    "summary": "",
+  },
+  {
+    "url":"panel4",
+    "image": "",
+    "title": "",
+    "type" : "",
+    "tags" : "",
+    "summary": "",
+  }
+]);
+
+/**
+ * Metadata overrides for carousels/heros.
+ */
+METADATA['en'].carousel = {
+  "panel2": {
+    "image": "images/tools/and-studio_shortcuts-included_2x.png",
+    "title": "Shortcuts included",
+    "type":"Android Studio",
+    "heroColor": "#fff",
+    "url":"",
+    "summary": "No need to start from scratch, Android Studio includes prebuilt template patterns &nbsp; from navigation drawers to view pagers and GitHub integration to help guide you along quickly.",
+  },
+  "panel4": {
+    "image": "images/tools/and-studio_feat-gradle_2x.png",
+    "title": "Evolved Android builds, with Gradle",
+    "type":"Android Studio",
+    "heroColor": "#fff",
+    "summary": "Create multiple APKs for your Android app with different features using the same project. Manage app dependencies with Maven. Build APKs from Android Studio or the command line.",
+  },
+  "panel1": {
+    "image": "images/tools/codeeditor-low.gif",
+    "title": "Fast, intelligent coding",
+    "type":"Android Studio",
+    "heroColor": "#fff",
+    "summary": "Advanced code completion, refactoring and code analysis in an environment that’s purpose-built for Android, the powerful code editor helps you be a more productive Android app developer.",
+  },
+  "panel3": {
+    "image": "images/tools/studio-hero-screens_2x.png",
+    "title": " All shapes, sizes and scenarios",
+    "type":"Android Studio",
+    "heroColor": "#fff",
+    "summary": "Create multiple APKs for your Android app with different features using the same project. Manage app dependencies with Maven. Build APKs from Android Studio or the command line.",
+  },
+  "distribute/googleplay/guide.html": {
+    "image": "images/distribute/hero-secrets-to-app-success.jpg",
+    "title": "Secrets to App Success on Google Play",
+    "summary": "Get the updated guide full of useful features, tips, and best practices that will help you grow a successful app or game business on Google Play.",
+  },
+  "about/versions/lollipop.html": {
+    "image": "images/home/hero-lollipop_2x.png",
+    "heroColor": "#263238",
+    "heroInvert": true,
+    "title": "Android 5.0 Lollipop",
+    "summary": "The Android 5.0 update adds a variety of new features for your apps, such as notifications on the lock screen, an all-new camera API, OpenGL ES 3.1, the new naterial design interface, and much more.",
+  },
+  "http://www.youtube.com/watch?v=Pms0pcyPbAM": {
+    "url":"https://www.youtube.com/watch?v=Pms0pcyPbAM&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c]",
+    "image": "images/distribute/hero-carousel-giftedmom.jpg",
+    "title": "Gifted Mom reaches more mothers across Africa with Android",
+    "type":"youtube",
+    "summary": "Gifted Mom is an app developed in Cameroon which provides users with critical information about pregnancy, breastfeeding and child vaccinations. Hear the creators explain how they built their business and launched on Google Play.",
+  },
+  "http://www.youtube.com/watch?v=9m6MoBM-sFI": {
+    "url":"https://www.youtube.com/watch?v=9m6MoBM-sFI&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c&index=3",
+    "image": "images/distribute/hero-carousel-sgn.jpg",
+    "title": "SGN increases installs with Store Listing Experiments",
+    "type" : "youtube",
+    "summary": "Watch mobile game developer SGN talk about how using Store Listing Experiments to test multiple variants across their portfolio of games helped improve their ROI, conversion rates and gamer retention.",
+  },
+  "http://www.youtube.com/watch?v=e7t3svG9PTk": {
+    "url":"https://www.youtube.com/watch?v=e7t3svG9PTk&index=2&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
+    "image": "images/distribute/hero-carousel-djit.jpg",
+    "title": "DJiT builds higher quality experiences on Android",
+    "type" : "youtube",
+    "summary": "Learn how Music app developer DJiT create higher quality apps with improved latency on Android Marshmallow, as well as other Android and Google Play features.",
+  },
+  "http://www.youtube.com/watch?v=J3IvOfvH1ys": {
+    "url":"https://www.youtube.com/watch?v=J3IvOfvH1ys&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c&index=1",
+    "image": "images/distribute/hero-carousel-wego.jpg",
+    "title": "Wego increases user retention with material design",
+    "type" : "youtube",
+    "summary": "Hear how online travel marketplace Wego, increased monthly user retention by 300% and reduced uninstall rates by up to 25% with material design.",
+  },
+  "https://www.youtube.com/watch?v=QDM52bblwlg": {
+    "url":"distribute/googleplay/families/about.html",
+    "image": "images/distribute/hero-family-discovery.jpg",
+    "title": "Designed for families",
+    "summary": "Introducing the new family discovery experience in Google Play. Your apps can benefit from enhanced discoverability and maintain their existing categories, rankings, and reviews elsewhere in the store. Opt-in your apps today.",
+    "type":"distribute",
+  },
+  "https://www.youtube.com/watch?v=wcjqBSei3a0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS": {
+    "url":"https://www.youtube.com/watch?v=wcjqBSei3a0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
+    "image": "images/distribute/hero-IO15-google-play.jpg",
+    "title": "Connecting the world through Google Play",
+    "tags":["io15"],
+    "summary": "In this this Google I/O talk, hear how the mobile ecosystem is empowering developers to connect the world through technology and improve people's lives.",
+  },
+  "https://www.youtube.com/watch?v=B6ydLpkhq04&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS": {
+    "image": "images/distribute/hero-store-listing-experience.jpg",
+    "title": "Using Google Play store listing experiments",
+    "tags":["io15"],
+    "summary": "Learn how to use Google Play store listing experiments to get more installs in this Google I/O talk. Test different graphics and text to find out which options perform the best. ",
+  },
+  "https://www.youtube.com/watch?v=jyO3-rF4Mu0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS": {
+    "image": "images/distribute/hero-IO15-growing-games.jpg",
+    "title": "Growing games with Google",
+    "tags":["io15"],
+    "summary": "The games industry has never been more promising and full of opportunities. This talk from Google I/O 2015 covers how Google is helping developers across a broad range of existing and emerging platforms.",
+  },
+};
+
+/**
+ * Static metadata collections.
+ */
+METADATA['en'].collections = {
+  "index/carousel": {
+    "title": "",
+    "resources": [
+      "about/versions/lollipop.html"
+    ]
+  },
+  "index/primary": {
+    "title": "",
+    "resources": [
+      "training/building-wearables.html",
+      "training/material/index.html",
+      "sdk/index.html"
+    ]
+  },
+  "index/secondary/carousel": {
+    "title": "",
+    "resources": [
+      "http://www.youtube.com/watch?v=Pms0pcyPbAM",
+      "http://www.youtube.com/watch?v=9m6MoBM-sFI",
+      "http://www.youtube.com/watch?v=e7t3svG9PTk",
+      "http://www.youtube.com/watch?v=J3IvOfvH1ys"
+    ]
+  },
+  "index/multiscreen": {
+    "title": "",
+    "resources": [
+      "wear/index.html",
+      "tv/index.html",
+      "auto/index.html"
+    ]
+  },
+  "design/landing/latest": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=p4gmvHyuZzw",
+      "https://www.youtube.com/watch?v=YaG_ljfzeUw",
+      "https://www.youtube.com/watch?v=XOcCOBe8PTc"
+    ]
+  },
+  "design/landing/materialdesign": {
+    "title": "",
+    "resources": [
+      "https://www.google.com/design/spec/animation/",
+      "https://www.google.com/design/spec/style/",
+      "https://www.google.com/design/spec/layout/",
+      "https://www.google.com/design/spec/components/",
+      "https://www.google.com/design/spec/patterns/",
+      "https://www.google.com/design/spec/usability/"
+    ]
+  },
+  "design/landing/pureandroid": {
+    "title": "",
+    "resources": [
+      "design/get-started/creative-vision.html",
+      "design/material/index.html",
+      "training/material/index.html",
+      "design/patterns/pure-android.html",
+      "design/patterns/new.html",
+      "design/devices.html"
+    ]
+  },
+  "design/landing/resources": {
+    "title": "",
+    "resources": [
+      "https://www.google.com/design/spec/resources/color-palettes.html",
+      "https://www.google.com/design/spec/resources/layout-templates.html",
+      "https://www.google.com/design/spec/resources/sticker-sheets-icons.html",
+      "https://www.google.com/design/spec/resources/roboto-noto-fonts.html",
+      "https://www.google.com/design/icons/index.html",
+      "design/downloads/index.html#Wear"
+    ]
+  },
+  "develop/landing/mainlinks": {
+    "title": "",
+    "resources": [
+      "tools/studio/index.html",
+      "samples/new/index.html",
+      "tools/projects/templates.html"
+    ]
+  },
+  "develop/landing/latest": {
+    "title": "",
+    "resources": [
+      "https://android-developers.blogspot.com/2015/04/new-android-code-samples.html",
+      "https://android-developers.blogspot.com/2015/04/android-support-library-221.html",
+      "https://android-developers.blogspot.com/2015/03/a-new-reference-app-for-multi-device.html"
+    ]
+  },
+  "develop/landing/devpatterns": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=kmUGLURRPkI",
+      "https://www.youtube.com/watch?v=HGElAW224dE",
+      "https://www.youtube.com/watch?v=zQekzaAgIlQ"
+    ]
+  },
+  "develop/landing/performance": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=fEEulSk1kNY",
+      "https://www.youtube.com/watch?v=-3ry8PxcJJA",
+      "https://www.youtube.com/watch?v=_kKTGK-Cb_4"
+    ]
+  },
+  "develop/landing/buildwithgoogle": {
+    "title": "",
+    "resources": [
+    ]
+  },
+  "develop/landing/ubicomp": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=AK38PJZmIW8&list=PLWz5rJ2EKKc-kIrPiq098QH9dOle-fLef",
+      "https://www.youtube.com/watch?v=6K_jxccHv5M&index=1&list=PLOU2XLYxmsILFBfx66ens76VMLMEPJAB0",
+      "https://www.youtube.com/watch?v=ctiaVxgclsg&list=PLWz5rJ2EKKc9BdE_PSLNIGjXXr3h_orXM"
+    ]
+  },
+  "develop/landing/tools": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=K2dodTXARqc&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
+      "https://www.youtube.com/watch?v=3PIc-DuEU2s&list=PLWz5rJ2EKKc9e0d55YHgJFHXNZbGHEXJX",
+      "https://www.youtube.com/watch?v=cD7NPxuuXYY&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
+      "https://www.youtube.com/watch?v=JLLnhwtDoHw&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
+      "https://www.youtube.com/watch?v=2I6fuD20qlY&list=PLWz5rJ2EKKc8I9gHTMh5yKkwRRGE8BjbQ",
+      "https://www.youtube.com/watch?v=5Be2mJzP-Uw&list=PLWz5rJ2EKKc9e0d55YHgJFHXNZbGHEXJX"
+    ]
+  },
+  "google/landing/services": {
+    "title": "",
+    "resources": [
+      "https://developers.google.com/analytics/devguides/collection/android/",
+      "https://developers.google.com/maps/documentation/android/",
+      "https://developers.google.com/identity/sign-in/android/",
+      "https://developers.google.com/mobile-ads-sdk/download",
+      "https://developers.google.com/cloud-messaging/gcm",
+      "https://developers.google.com/app-indexing/"
+    ]
+  },
+  "google/landing/videos": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=M3Udfu6qidk&list=PLWz5rJ2EKKc9Qk1_iCZNbBp6adYnJf9Vf",
+      "https://www.youtube.com/watch?v=FOn64iqlphk&list=PLWz5rJ2EKKc9Qk1_iCZNbBp6adYnJf9Vf",
+      "https://www.youtube.com/watch?v=F0Kh_RnSM0w&list=PLWz5rJ2EKKc9Qk1_iCZNbBp6adYnJf9Vf",
+      "https://www.youtube.com/watch?v=fvtMtfCuEpw&list=PLWz5rJ2EKKc9Qk1_iCZNbBp6adYnJf9Vf"
+    ]
+  },
+  "google/landing/googleplay": {
+    "title": "",
+    "resources": [
+      "google/play/billing/index.html",
+      "google/play/billing/billing_subscriptions.html",
+      "google/play/developer-api.html"
+    ]
+  },
+  "develop/landing/courses": {
+    "title": "",
+    "resources": [
+      "https://www.udacity.com/course/ud849",
+      "https://www.udacity.com/course/ud853",
+      "https://www.udacity.com/course/ud825",
+      "https://www.udacity.com/android",
+      "https://www.udacity.com/course/ud855",
+      "https://www.udacity.com/course/ud875A",
+      "https://www.udacity.com/course/ud875B",
+      "https://www.udacity.com/course/ud875C",
+      "https://www.udacity.com/course/ud876--1",
+      "https://www.udacity.com/course/ud876--2",
+      "https://www.udacity.com/course/ud876--3",
+      "https://www.udacity.com/course/ud876--4",
+      "https://www.udacity.com/course/ud876--5",
+      "https://www.udacity.com/course/ud862",
+      "https://www.udacity.com/course/ud837",
+      "https://www.udacity.com/course/ud867"
+    ]
+  },
+  "distribute/landing/carousel": {
+    "title": "",
+    "resources": [
+    "distribute/googleplay/guide.html",
+    "https://www.youtube.com/watch?v=JrR6o5tYMWQ",
+    "https://www.youtube.com/watch?v=B6ydLpkhq04&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
+    "https://www.youtube.com/watch?v=yJisuP94lHU",
+    ]
+  },
+  "distribute/landing/googleplay": {
+    "title": "",
+    "resources": [
+      "distribute/googleplay/about.html",
+      "distribute/googleplay/developer-console.html",
+      "distribute/googleplay/index.html#opportunities"
+    ]
+  },
+  "distribute/landing/more": {
+    "title": "",
+    "resources": [
+      "distribute/users/promote-with-ads.html",
+      "distribute/monetize/ads.html",
+      "distribute/analyze/index.html",
+      "distribute/engage/deep-linking.html",
+      "distribute/engage/easy-signin.html",
+      "https://cloud.google.com/docs/"
+    ]
+  },
+  "distribute/edu/videos/stories": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=Idu7VcTTXfk",
+      "https://www.youtube.com/watch?v=iokH4SAIfRw"
+    ]
+  },
+  "distribute/edu/videos/bestpractices": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=iulXz8QTD1g",
+      "https://www.youtube.com/watch?v=IKhU180eJMo",
+      "https://www.youtube.com/watch?v=_AZ6UcPz-_g",
+      "https://www.youtube.com/watch?v=Eh2adsAyTKc"
+    ]
+  },
+  "distribute/edu/videos/experience": {
+    "title": "",
+    "resources": [
+      "https://youtu.be/vzvpcEffvaE"
+    ]
+  },
+  "distribute/gp/gplanding": {
+    "resources": [
+      "distribute/googleplay/about.html",
+      "distribute/googleplay/start.html",
+      "distribute/googleplay/developer-console.html"
+    ]
+  },
+  "distribute/gp/gpfelanding": {
+    "resources": [
+      "distribute/googleplay/wear.html",
+      "distribute/googleplay/tv.html",
+      "distribute/googleplay/auto.html",
+      "distribute/googleplay/families/about.html",
+      "distribute/googleplay/work/about.html",
+      "distribute/googleplay/edu/about.html",
+      "distribute/googleplay/cast.html",
+      "distribute/googleplay/cardboard.html",
+      "distribute/googleplay/guide.html"
+    ]
+  },
+  "distribute/googleplay/gpfw": {
+    "resources": [
+      "https://www.android.com/work/",
+      "https://www.youtube.com/watch?v=jQWB_-o1kz4&list=PLOU2XLYxmsIKAK2Bhv19H2THwF-22O5WX",
+      "training/enterprise/index.html"
+    ]
+  },
+  "distribute/essentials": {
+    "resources": [
+      "distribute/essentials/quality/core.html",
+      "distribute/essentials/quality/tablets.html",
+      "distribute/essentials/quality/tv.html",
+      "distribute/essentials/quality/wear.html",
+      "distribute/essentials/quality/auto.html",
+      "https://developers.google.com/edu/guidelines"
+    ]
+  },
+  "distribute/users": {
+    "title": "",
+    "resources": [
+      "distribute/users/your-listing.html",
+      "distribute/users/promote-with-ads.html",
+      "distribute/googleplay/index.html#opportunities",
+      "distribute/analyze/improve-roi.html",
+      "distribute/users/expand-to-new-markets.html",
+      "distribute/users/promote-with-ads.html",
+      "distribute/analyze/index.html",
+      "distribute/users/app-invites.html",
+      "distribute/users/ota-installs.html",
+      "distribute/users/youtube.html",
+      "distribute/users/house-ads.html",
+      "distribute/users/experiments.html",
+      "distribute/users/user-acquisition.html",
+      "distribute/users/banners.html",
+      "distribute/users/beta.html"
+    ]
+  },
+  "distribute/engagelanding": {
+    "resources": [
+      "distribute/engage/intents.html",
+      "distribute/engage/widgets.html",
+      "distribute/engage/notifications.html",
+      "distribute/engage/deep-linking.html",
+      "distribute/engage/ads.html",
+      "distribute/engage/game-services.html",
+      "distribute/engage/easy-signin.html",
+      "distribute/analyze/build-better-apps.html",
+      "distribute/engage/gcm.html",
+      "distribute/engage/beta.html"
+    ]
+  },
+  "distribute/monetize": {
+    "resources": [
+      "distribute/monetize/premium.html",
+      "distribute/monetize/freemium.html",
+      "distribute/monetize/subscriptions.html",
+      "distribute/monetize/ads.html",
+      "distribute/monetize/ecommerce.html",
+      "distribute/monetize/payments.html",
+      "distribute/analyze/understand-user-value.html",
+    ]
+  },
+  "distribute/analyzelanding": {
+    "resources": [
+      "distribute/analyze/start.html",
+      "distribute/analyze/measure.html",
+      "distribute/analyze/understand-user-value.html",
+      "distribute/analyze/improve-roi.html",
+      "distribute/analyze/build-better-apps.html",
+      "distribute/analyze/google-services.html"
+    ]
+  },
+  "distribute/analyzestart": {
+    "resources": [
+      "https://analyticsacademy.withgoogle.com/course04",
+      "google/play-services/index.html",
+      "https://developers.google.com/analytics/solutions/mobile-implementation-guide",
+      "https://developers.google.com/analytics/devguides/collection/android/",
+      "https://www.google.com/tagmanager/",
+      "https://github.com/googleanalytics/google-analytics-plugin-for-unity"
+    ]
+  },
+  "distribute/analyzemeasure": {
+    "resources": [
+
+      "https://developers.google.com/analytics/solutions/mobile-implementation-guide",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/enhanced-ecommerce",
+      "https://support.google.com/analytics/answer/1032415",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/events",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/customdimsmets",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/user-id"
+    ]
+  },
+  "distribute/analyzeunderstand": {
+    "resources": [
+      "https://developers.google.com/analytics/devguides/collection/android/v4/display-features",
+      "https://support.google.com/analytics/answer/3123906",
+      "https://support.google.com/analytics/answer/2568874?ref_topic=6012392",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/enhanced-ecommerce",
+      "https://support.google.com/analytics/answer/1032415",
+    ]
+  },
+  "distribute/analyzeimprove": {
+    "resources": [
+
+      "https://developers.google.com/analytics/devguides/collection/android/v4/campaigns",
+      "https://support.google.com/analytics/answer/2956981",
+      "https://support.google.com/analytics/answer/1033961",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-url-builder",
+      "https://developers.google.com/analytics/solutions/mobile-campaign-deep-link"
+    ]
+  },
+  "distribute/analyzebuild": {
+    "resources": [
+      "https://support.google.com/tagmanager/answer/6003007",
+      "https://support.google.com/analytics/answer/2785577",
+      "https://support.google.com/analytics/answer/1151300"
+    ]
+  },
+  "distribute/analyzeact": {
+    "resources": [
+      "https://support.google.com/analytics/answer/2611268",
+      "https://support.google.com/analytics/answer/1033961",
+      "https://support.google.com/admob/answer/3508177",
+      "https://support.google.com/analytics/answer/2956981",
+      "https://support.google.com/tagmanager/answer/6003007"
+    ]
+  },
+  "distribute/essentials/guidelines": {
+    "title": "",
+    "resources": [
+      "distribute/essentials/quality/core.html",
+      "distribute/essentials/quality/tablets.html",
+      "distribute/essentials/quality/wear.html",
+      "distribute/essentials/quality/tv.html",
+      "distribute/essentials/quality/auto.html",
+      "https://developers.google.com/edu/guidelines"
+    ]
+  },
+  "distribute/essentials/tools": {
+    "title": "",
+    "resources": [
+      "distribute/tools/launch-checklist.html",
+      "distribute/tools/localization-checklist.html",
+      "https://support.google.com/googleplay/android-developer",
+      "distribute/tools/promote/brand.html",
+      "distribute/tools/promote/device-art.html",
+      "https://play.google.com/intl/en_us/badges/",
+      "distribute/tools/promote/linking.html",
+      "distribute/tools/open-distribution.html",
+      "about/dashboards/index.html"
+    ]
+  },
+  "distribute/tools/checklists": {
+    "title": "",
+    "resources": [
+      "distribute/tools/launch-checklist.html",
+      "distribute/tools/localization-checklist.html"
+    ]
+  },
+  "distribute/tools/promote": {
+    "resources": [
+      "distribute/tools/promote/device-art.html",
+      "https://play.google.com/intl/en_us/badges/",
+      "distribute/tools/promote/linking.html"
+    ]
+  },
+  "distribute/tools/support": {
+    "title": "Google Play",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer",
+      "https://support.google.com/googleplay/android-developer/answer/4430948",
+      "support.html"
+    ]
+  },
+  "distribute/tools/news": {
+    "title": "",
+    "resources": [
+      "https://android-developers.blogspot.com/",
+      "https://plus.google.com/+AndroidDevelopers/"
+    ]
+  },
+  "distribute/tools/more": {
+    "title": "Google Play",
+    "resources": [
+      "distribute/tools/promote/brand.html",
+      "distribute/tools/open-distribution.html",
+      "about/dashboards/index.html"
+    ]
+  },
+  "distribute/googleplay": {
+    "title": "Google Play",
+    "resources": [
+      "distribute/googleplay/developer-console.html",
+      "distribute/essentials/best-practices/apps.html",
+      "distribute/tools/launch-checklist.html",
+      "distribute/essentials/best-practices/games.html",
+    ]
+  },
+  "distribute/googleplay/gettingstarted": {
+    "title": "Get Started",
+    "resources": [
+      "distribute/googleplay/developer-console.html",
+      "https://support.google.com/googleplay/android-developer/answer/113468",
+      "https://support.google.com/googleplay/android-developer/answer/138294",
+      "https://support.google.com/googleplay/android-developer"
+    ]
+  },
+  "distribute/googleplay/developerconsole/related": {
+    "title": "Developer Console",
+    "resources": [
+      "google/play/billing/index.html",
+      "https://support.google.com/googleplay/android-developer/answer/138294"
+    ]
+  },
+  "distribute/googleplay/developerconsole": {
+    "title": "Developer Console",
+    "resources": [
+      "google/play/billing/index.html",
+      "https://support.google.com/googleplay/android-developer/answer/138294"
+    ]
+  },
+  "distribute/googleplay/beta": {
+    "title": "Alpha and Beta Testing",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/3131213",
+      "https://support.google.com/googleplay/android-developer/answer/3131213#games",
+      "distribute/googleplay/experiments.html"
+    ]
+  },
+  "distribute/googleplay/experiments/successes": {
+    "title": "Store Listing Experiment successes",
+    "resources": [
+    ]
+  },
+  "distribute/googleplay/experiments/related": {
+    "title": "Store Listing Experiments",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/6227309",
+      "https://www.youtube.com/watch?v=B6ydLpkhq04",
+      "https://support.google.com/tagmanager/answer/6003007"
+    ]
+  },
+  "distribute/googleplay/banners/related": {
+    "title": "App Install Banners",
+    "resources": [
+      "https://developers.google.com/web/updates/2015/03/increasing-engagement-with-app-install-banners-in-chrome-for-android#native"
+    ]
+  },
+  "distribute/googleplay/useracquisition/related": {
+    "title": "User Acquisition",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/6263332"
+    ]
+  },
+  "distribute/googleplay/cast": {
+    "title": "Google Cast",
+    "resources": [
+      "https://developers.google.com/cast/docs/ux_guidelines",
+      "https://developers.google.com/cast/docs/android_sender",
+      "https://www.github.com/googlecast"
+    ]
+  },
+  "distribute/googleplay/cardboard": {
+    "title": "Google Cast",
+    "resources": [
+      "https://www.google.com/get/cardboard/get-cardboard/",
+      "https://developers.google.com/cardboard/android/download",
+      "https://www.google.com/design/spec-vr"
+    ]
+  },
+  "distribute/googleplay/gpfe/highlight": {
+    "title": "About Google Play for Education",
+    "resources": [
+      "https://youtu.be/vzvpcEffvaE"
+    ]
+  },
+  "distribute/googleplay/gpfe/dev/about": {
+    "title": "About Google Play for Education / Developers",
+    "resources": [
+      "distribute/googleplay/edu/start.html",
+      "https://developers.google.com/edu/guidelines",
+      "https://developers.google.com/edu/faq",
+      "distribute/essentials/quality/tablets.html",
+      "https://developers.google.com/edu/",
+      "https://www.google.com/edu/tablets/#tablets-family"
+    ]
+  },
+  "distribute/googleplay/gpfe/dev": {
+    "title": "About Google Play for Education / Developers",
+    "resources": [
+      "distribute/googleplay/edu/about.html",
+      "https://developers.google.com/edu/guidelines",
+      "distribute/essentials/quality/tablets.html",
+      "distribute/googleplay/developer-console.html",
+      "https://play.google.com/about/developer-distribution-agreement-addendum.html",
+    ]
+  },
+  "distribute/googleplay/aboutgpfe/educators/about": {
+    "title": "About Google Play for Education / Educators",
+    "resources": [
+      "https://www.google.com/edu/tablets/",
+      "https://www.youtube.com/watch?v=haEmsMo0f3w"
+    ]
+  },
+  "distribute/googleplay/aboutgpfe/educators": {
+    "title": "About Google Play for Education / Educators",
+    "resources": [
+      "https://www.google.com/edu/tablets/",
+      "https://youtu.be/vzvpcEffvaE"
+    ]
+  },
+  "distribute/googleplay/gettingstartedgpfe/educators": {
+    "title": "About Google Play for Education / Educators",
+    "resources": [
+      "https://www.google.com/edu/tablets/",
+      "https://youtu.be/vzvpcEffvaE"
+    ]
+  },
+  "distribute/essentials/eduessentials/developers": {
+    "title": "",
+    "resources": [
+      "distribute/googleplay/developer-console.html",
+      "distribute/googleplay/edu/start.html",
+      "https://developers.google.com/edu/faq"
+    ]
+  },
+  "distribute/essentials/eduessentials/educators": {
+    "title": "",
+    "resources": [
+      "https://www.google.com/edu/tablets/",
+      "distribute/essentials/quality/tablets.html",
+    ]
+  },
+  "distribute/essentials/optimizing": {
+    "title": "Optimizing Your App",
+    "resources": [
+      "design/index.html",
+      "training/articles/perf-anr.html",
+      "https://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html"
+    ]
+  },
+  "distribute/users/appinvites": {
+    "title": "",
+    "resources": [
+      "https://developers.google.com/app-invites/",
+      "https://developers.google.com/identity/sign-in/android/",
+      "https://developers.google.com/app-indexing/"
+    ]
+  },
+  "distribute/users/promotewithads": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/adwords/answer/6032059",
+      "https://support.google.com/adwords/answer/6032073",
+      "https://support.google.com/adwords/answer/6167164",
+      "https://support.google.com/adwords/answer/6167162"
+    ]
+  },
+  "distribute/users/buildbuzz": {
+    "title": "",
+    "resources": [
+      "https://play.google.com/intl/en_us/badges/",
+      "distribute/tools/promote/linking.html",
+      "distribute/tools/promote/device-art.html",
+      "https://plus.google.com/+GooglePlay"
+    ]
+  },
+  "distribute/users/createagreatlisting": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/1078870",
+      "https://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
+      "distribute/tools/launch-checklist.html",
+      "https://android-developers.blogspot.com/2013/07/making-beautiful-android-app-icons.html",
+      "https://android-developers.blogspot.com/2012/12/localize-your-promotional-graphics-on.html",
+      "https://android-developers.blogspot.com/2013/10/making-your-app-content-more-accessible.html"
+    ]
+  },
+  "distribute/users/appindexing": {
+    "title": "",
+    "resources": [
+      "https://developers.google.com/app-indexing/",
+      "https://developers.google.com/app-indexing/webmasters/details",
+      "distribute/engage/deep-linking.html",
+      "training/app-indexing/index.html"
+    ]
+  },
+  "distribute/users/otas": {
+    "title": "",
+    "resources": [
+      "https://developers.google.com/identity/sign-in/android/",
+      "https://developers.google.com/+/features/play-installs",
+      "https://developers.google.com/+/features/analytics"
+    ]
+  },
+  "distribute/users/houseads": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/admob/topic/2784623",
+      "https://developers.google.com/mobile-ads-sdk/download",
+      "https://support.google.com/googleplay/android-developer/topic/2985714",
+      "https://analyticsacademy.withgoogle.com/mobile-app",
+      "https://support.google.com/analytics/answer/2611404",
+      "https://support.google.com/admob/answer/3111064"
+    ]
+  },
+  "distribute/users/youtube": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/youtube/answer/6140493",
+      "https://support.google.com/youtube/answer/2797387"
+    ]
+  },
+  "distribute/toolsreference/bestpractices/apps": {
+    "title": "",
+    "resources": [
+      "distribute/googleplay/developer-console.html",
+      "https://android-developers.blogspot.com/"
+    ]
+  },
+  "distribute/toolsreference/bestpractices/games": {
+    "title": "",
+    "resources": [
+      "google/play-services/games.html",
+      "https://android-developers.blogspot.com/",
+      "distribute/googleplay/developer-console.html",
+      "https://www.youtube.com/watch?v=1RIz-cmTQB4"
+    ]
+  },
+  "distribute/essentials/corequalityguidelines/visualdesign": {
+    "title": "",
+    "resources": [
+      "design/index.html",
+      "design/patterns/navigation.html",
+      "design/patterns/actionbar.html",
+      "design/style/iconography.html",
+      "design/patterns/notifications.html"
+    ]
+  },
+  "distribute/essentials/corequalityguidelines/functionality": {
+    "title": "",
+    "resources": [
+      "https://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html",
+      "guide/components/tasks-and-back-stack.html",
+      "training/basics/activity-lifecycle/recreating.html"
+    ]
+  },
+  "distribute/essentials/tvqualityguidelines/visualdesign": {
+    "title": "",
+    "resources": [
+      "design/tv/index.html",
+      "training/tv/start/index.html"
+    ]
+  },
+  "distribute/essentials/tvqualityguidelines/functionality": {
+    "title": "",
+    "resources": [
+      "training/tv/start/hardware.html",
+      "training/tv/games/index.html"
+    ]
+  },
+  "distribute/essentials/wearqualityguidelines/visualdesign": {
+    "title": "",
+    "resources": [
+      "design/wear/index.html",
+      "training/building-wearables.html",
+      "training/wearables/ui/index.html"
+    ]
+  },
+  "distribute/essentials/wearqualityguidelines/functionality": {
+    "title": "",
+    "resources": [
+      "training/wearables/notifications/index.html",
+      "training/wearables/apps/index.html",
+      "training/wearables/notifications/voice-input.html"
+    ]
+  },
+  "distribute/essentials/autoqualityguidelines/visualdesign": {
+    "title": "",
+    "resources": [
+      "training/auto/messaging/index.html",
+      "training/auto/start/index.html"
+    ]
+  },
+  "distribute/essentials/core/performance": {
+    "title": "",
+    "resources": [
+      "https://android-developers.blogspot.com/2010/12/new-gingerbread-api-strictmode.html",
+      "training/articles/perf-anr.html",
+      "https://android-developers.blogspot.com/2010/07/multithreading-for-performance.html"
+    ]
+  },
+  "distribute/essentials/core/play": {
+    "title": "",
+    "resources": [
+      "distribute/tools/launch-checklist.html",
+      "https://play.google.com/about/developer-content-policy.html",
+      "https://support.google.com/googleplay/android-developer/answer/188189",
+      "https://support.google.com/googleplay/android-developer/answer/1078870",
+      "https://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
+      "https://support.google.com/googleplay/android-developer/answer/113477"
+    ]
+  },
+  "distribute/essentials/tabletguidelines/optimize": {
+    "title": "",
+    "resources": [
+      "design/style/metrics-grids.html",
+      "design/style/devices-displays.html",
+      "guide/practices/screens_support.html",
+    ]
+  },
+  "distribute/essentials/tabletguidelines/extrascreen": {
+    "title": "",
+    "resources": [
+      "design/patterns/multi-pane-layouts.html",
+      "training/design-navigation/multiple-sizes.html",
+      "training/multiscreen/index.html",
+    ]
+  },
+  "distribute/essentials/tabletguidelines/assets": {
+    "title": "",
+    "resources": [
+      "design/style/iconography.html",
+      "guide/topics/resources/providing-resources.html",
+      "guide/practices/screens_support.html",
+      "training/basics/supporting-devices/screens.html"
+    ]
+  },
+  "distribute/essentials/tabletguidelines/fonts": {
+    "title": "",
+    "resources": [
+      "design/style/metrics-grids.html",
+      "design/style/typography.html",
+      "guide/practices/screens_support.html",
+      "training/multiscreen/screendensities.html"
+    ]
+  },
+  "distribute/essentials/tabletguidelines/widgets": {
+    "title": "",
+    "resources": [
+      "guide/topics/appwidgets/index.html#MetaData",
+      "guide/topics/appwidgets/index.html",
+      "design/patterns/widgets.html"
+    ]
+  },
+  "distribute/essentials/tabletguidelines/versions": {
+    "title": "",
+    "resources": [
+      "guide/topics/manifest/uses-sdk-element.html#ApiLevels",
+      "guide/topics/manifest/uses-sdk-element.html",
+      "training/basics/supporting-devices/platforms.html"
+    ]
+  },
+  "distribute/essentials/tabletguidelines/hardware": {
+    "title": "",
+    "resources": [
+      "guide/topics/manifest/uses-feature-element.html",
+      "guide/topics/manifest/uses-feature-element.html#testing"
+    ]
+  },
+  "distribute/essentials/tabletguidelines/tabletscreens": {
+    "title": "",
+    "resources": [
+      "guide/practices/screens_support.html#DeclaringScreenSizeSupport",
+      "guide/practices/screens_support.html"
+    ]
+  },
+  "distribute/essentials/tabletguidelines/showcase": {
+    "title": "",
+    "resources": [
+      "distribute/tools/launch-checklist.html",
+      "https://play.google.com/apps/publish/",
+      "https://play.google.com/intl/en_us/badges/",
+      "distribute/tools/promote/device-art.html"
+    ]
+  },
+  "distribute/essentials/tabletguidelines/googleplay": {
+    "title": "",
+    "resources": [
+      "https://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
+      "google/play/filters.html"
+    ]
+  },
+  "distribute/essentials/tabletguidelines": {
+    "title": "",
+    "resources": [
+      "distribute/essentials/quality/core.html",
+      "https://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
+      "distribute/tools/launch-checklist.html",
+      "distribute/tools/promote/device-art.html"
+    ]
+  },
+  "distribute/getusers/notifications": {
+    "title": "",
+    "resources": [
+      "design/patterns/notifications.html",
+      "distribute/engage/gcm.html",
+      "https://play.google.com/about/developer-content-policy.html"
+    ]
+  },
+  "distribute/engage/analytics": {
+    "title": "",
+    "resources": [
+      "https://www.google.com/analytics/mobile/",
+      "https://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html",
+      "https://developers.google.com/analytics/devguides/collection/android/"
+    ]
+  },
+  "distribute/engage/widgets": {
+    "title": "",
+    "resources": [
+      "design/patterns/widgets.html",
+      "guide/topics/appwidgets/index.html"
+    ]
+  },
+  "distribute/engage/reengage": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/adwords/answer/6032073",
+      "distribute/engage/deep-linking.html",
+      "https://support.google.com/adwords/answer/6167162",
+      "distribute/users/promote-with-ads.html"
+    ]
+  },
+  "distribute/engage/appindexing": {
+    "title": "",
+    "resources": [
+      "distribute/engage/intents.html",
+      "distribute/engage/deep-linking.html",
+      "training/app-indexing/index.html"
+    ]
+  },
+  "distribute/engage/intents": {
+    "title": "",
+    "resources": [
+      "guide/components/intents-filters.html",
+      "distribute/engage/deep-linking.html",
+      "distribute/engage/ads.html"
+    ]
+  },
+  "distribute/getusers/expandnewmarkets": {
+    "title": "",
+    "resources": [
+      "distribute/tools/localization-checklist.html",
+      "https://support.google.com/googleplay/android-developer/table/3541286",
+      "distribute/stories/localization.html",
+      "https://play.google.com/intl/en_us/badges/",
+      "distribute/tools/promote/device-art.html",
+      "https://www.youtube.com/watch?v=SkHHPf3EdzE"
+    ]
+  },
+  "distribute/engage/gcm": {
+    "title": "",
+    "resources": [
+      "https://developers.google.com/cloud-messaging/gcm",
+      "https://developers.google.com/cloud-messaging/android/client",
+    ]
+  },
+  "distribute/engage/gamesservices/related": {
+    "title": "",
+    "resources": [
+      "https://developers.google.com/games/services/",
+      "distribute/analyze/start.html",
+      "distribute/googleplay/cardboard.html",
+      "https://www.google.com/admob/"
+    ]
+  },
+  "distribute/engage/googleplaygames": {
+    "title": "",
+    "resources": [
+      "https://developers.google.com/games/services/",
+      "distribute/analyze/start.html",
+      "distribute/googleplay/cardboard.html",
+      "https://www.google.com/admob/"
+    ]
+  },
+  "distribute/engage/gplus": {
+    "title": "",
+    "resources": [
+      "distribute/users/ota-installs.html",
+      "https://developers.google.com/identity/sign-in/android/people",
+      "https://developers.google.com/+/mobile/android/"
+    ]
+  },
+  "distribute/engage/community": {
+    "title": "",
+    "resources": [
+      "distribute/users/build-community.html",
+      "distribute/engage/video.html"
+    ]
+  },
+  "distribute/engage/deeplinks": {
+    "title": "",
+    "resources": [
+      "distribute/engage/easy-signin.html",
+      "https://developers.google.com/app-indexing/",
+      "https://developers.google.com/+/mobile/android/share/interactive-post"
+    ]
+  },
+  "distribute/engage/appupdates": {
+    "title": "",
+    "resources": [
+      "distribute/essentials/optimizing-your-app.html",
+      "distribute/tools/launch-checklist.html",
+      "distribute/googleplay/developer-console.html",
+      "design/patterns/notifications.html"
+    ]
+  },
+  "distribute/engage/video/more": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/yt/dev/",
+      "distribute/essentials/best-practices/games.html",
+      "https://www.youtube.com/watch?v=RRelFvc6Czo"
+    ]
+  },
+  "distribute/engage/community": {
+    "title": "",
+    "resources": [
+      "distribute/users/build-community.html",
+      "distribute/engage/video.html"
+    ]
+  },
+  "distribute/engage/kiwi": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=WWArLD6nqrk"
+    ]
+  },
+  "distribute/toolsreference/gpfefaq": {
+    "title": "",
+    "resources": [
+      "https://www.google.com/edu/tablets/",
+      "distribute/googleplay/edu/start.html",
+      "https://play.google.com/about/developer-distribution-agreement-addendum.html",
+      "distribute/essentials/quality/core.html",
+      "distribute/essentials/quality/tablets.html"
+    ]
+  },
+  "distribute/toolsreference/localizationchecklist/identifylocales": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/138294"
+    ]
+  },
+  "distribute/tools/loc/designforloc": {
+    "title": "",
+    "resources": [
+      "https://android-developers.blogspot.com/2013/03/native-rtl-support-in-android-42.html",
+      "guide/topics/resources/string-resource.html#Plurals",
+      "guide/topics/resources/string-resource.html",
+      "reference/java/util/Locale.html"
+    ]
+  },
+  "distribute/toolsreference/localizationchecklist/managestrings": {
+    "title": "",
+    "resources": [
+      "guide/topics/resources/string-resource.html",
+      "design/style/writing.html",
+      "https://en.wikipedia.org/wiki/XLIFF"
+    ]
+  },
+  "distribute/toolsreference/localizationchecklist/translatestrings": {
+    "title": "",
+    "resources": [
+      "distribute/stories/localization.html",
+    ]
+  },
+  "distribute/toolsreference/localizationchecklist/preplaunch": {
+    "title": "",
+    "resources": [
+      "https://play.google.com/intl/en_us/badges/",
+      "distribute/tools/promote/device-art.html"
+    ]
+  },
+  "distribute/toolsreference/localizationchecklist/supportlaunch": {
+    "title": "",
+    "resources": [
+      "distribute/tools/launch-checklist.html",
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/understanding": {
+    "title": "",
+    "resources": [
+      "tools/publishing/publishing_overview.html",
+      "tools/publishing/preparing.html"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/policies": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/4430948",
+      "https://support.google.com/googleplay/android-developer/topic/2364761",
+      "https://support.google.com/googleplay/android-developer"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/quality": {
+    "title": "",
+    "resources": [
+      "distribute/essentials/quality/core.html",
+      "distribute/essentials/quality/tablets.html",
+      "https://developers.google.com/edu/guidelines"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/rating": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/188189",
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/country": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/138294"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/size": {
+    "title": "",
+    "resources": [
+      "google/play/expansion-files.html",
+      "tools/help/proguard.html"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/platform": {
+    "title": "",
+    "resources": [
+      "guide/practices/screens_support.html",
+      "about/dashboards/index.html",
+      "guide/topics/manifest/uses-sdk-element.html"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/price": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/table/3541286",
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/purchasemethod": {
+    "title": "",
+    "resources": [
+      "google/play/billing/index.html",
+      "google/play/billing/billing_subscriptions.html"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/setprice": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/1169947",
+      "https://support.google.com/googleplay/android-developer/answer/138412",
+      "https://support.google.com/googleplay/android-developer/answer/112622",
+      "https://support.google.com/googleplay/android-developer/answer/138000"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/localization": {
+    "title": "",
+    "resources": [
+      "distribute/tools/localization-checklist.html",
+      "guide/topics/resources/localization.html",
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/graphics": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/1078870",
+      "https://android-developers.blogspot.com/2011/10/android-market-featured-image.html"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/productdetails": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/113475",
+      "https://support.google.com/googleplay/android-developer/answer/1078870"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/badges": {
+    "title": "",
+    "resources": [
+      "https://play.google.com/intl/en_us/badges/",
+      "distribute/tools/promote/linking.html"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/finalchecks": {
+    "title": "",
+    "resources": [
+      "https://play.google.com/about/developer-content-policy.html",
+      "https://support.google.com/googleplay/android-developer/answer/113476",
+      "support.html"
+    ]
+  },
+  "distribute/toolsreference/launchchecklist/afterlaunch": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/113477",
+      "https://support.google.com/googleplay/android-developer/answer/1153479",
+      "https://support.google.com/payments/answer/2741495",
+      "distribute/essentials/optimizing-your-app.html"
+    ]
+  },
+  "distribute/monetize/premium": {
+    "title": "",
+    "resources": [
+      "google/play/billing/index.html",
+      "https://support.google.com/googleplay/android-developer/answer/4407611"
+    ]
+  },
+  "distribute/monetize/freemium": {
+    "title": "",
+    "resources": [
+      "google/play/billing/index.html",
+      "https://support.google.com/googleplay/android-developer/answer/4407611"
+    ]
+  },
+  "distribute/monetize/subscriptions": {
+    "title": "",
+    "resources": [
+      "google/play/billing/billing_subscriptions.html",
+      "https://support.google.com/googleplay/android-developer/answer/4407611"
+    ]
+  },
+  "distribute/monetize/ecommerce": {
+    "title": "",
+    "resources": [
+      "https://developers.google.com/wallet/instant-buy/",
+      "https://support.google.com/googleplay/android-developer/answer/4407611"
+    ]
+  },
+  "distribute/monetize/advertising": {
+    "title": "",
+    "resources": [
+      "https://www.google.com/ads/admob/#subid=us-en-et-dac",
+      "https://www.google.com/doubleclick/publishers/small-business/index.html",
+      "https://support.google.com/googleplay/android-developer/topic/2985714",
+      "training/monetization/ads-and-ux.html"
+    ]
+  },
+  "distribute/monetize/admob": {
+    "title": "",
+    "resources": [
+      "https://support.google.com/admob/topic/2784623",
+      "https://admob.blogspot.com/",
+      "https://analyticsacademy.withgoogle.com/mobile-app",
+    ]
+  },
+  "distribute/monetize/paymentmethods": {
+    "title": "",
+    "resources": [
+      "https://play.google.com/about/giftcards/",
+      "https://support.google.com/googleplay/answer/2651410"
+    ]
+  },
+  "autolanding": {
+    "title": "",
+    "resources": [
+      "auto/index.html",
+      "design/auto/index.html",
+      "training/auto/index.html"
+    ]
+  },
+  "tvlanding": {
+    "title": "",
+    "resources": [
+      "tv/index.html",
+      "design/tv/index.html",
+      "training/tv/index.html"
+    ]
+  },
+  "wearlanding": {
+    "title": "",
+    "resources": [
+      "design/wear/index.html",
+      "training/building-wearables.html",
+      "training/wearables/ui/index.html"
+    ]
+  },
+  "design/auto/auto_ui_guidelines": {
+    "title": "",
+    "resources": [
+      "shareables/auto/AndroidAuto-audio-apps.pdf",
+      "shareables/auto/AndroidAuto-messaging-apps.pdf",
+      "shareables/auto/AndroidAuto-custom-colors.pdf"
+    ]
+  },
+  "training/auto/overview": {
+    "title": "",
+    "resources": [
+      "training/auto/start/index.html",
+      "design/auto/index.html",
+      "shareables/auto/AndroidAuto-custom-colors.pdf"
+    ]
+  },
+  "training/auto/messaging": {
+    "title": "",
+    "resources": [
+      "training/auto/messaging/index.html",
+      "shareables/auto/AndroidAuto-messaging-apps.pdf",
+      "samples/MessagingService/index.html"
+    ]
+  },
+  "training/auto/media": {
+    "title": "",
+    "resources": [
+      "training/auto/audio/index.html",
+      "shareables/auto/AndroidAuto-audio-apps.pdf",
+      "samples/MediaBrowserService/index.html"
+    ]
+  },
+  "training/auto/distribute": {
+    "title": "",
+    "resources": [
+      "distribute/essentials/quality/auto.html",
+      "distribute/googleplay/auto.html"
+    ]
+  },
+  "distribute/stories/games": {
+    "title": "",
+    "resources": [
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_Deerhunter2014_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/ConcreteSoftware_PBABowling_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Dragonplay_DragonplaySlots_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Gameloft_Asphalt8_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Glu_EternityWarriors3_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/HotheadGames_RivalsatWar_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/TMSOFT_Compulsive_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/TinyRebel_DoctorWhoLegacy_gpgs.pdf",
+      "https://storage.googleapis.com/androiddevelopers/shareables/stories/Senri_LeosFortune_gpgs.pdf"
+    ]
+  },
+  "training/testing/overview": {
+    "title": "",
+    "resources": [
+      "training/testing/start/index.html",
+      "tools/testing/testing_android.html",
+      "https://www.youtube.com/watch?v=vdasFFfXKOY"
+    ]
+  },
+  "training/testing/tools": {
+    "title": "",
+    "resources": [
+      "tools/testing-support-library/index.html",
+      "tools/help/monkey.html",
+      "tools/help/monkeyrunner_concepts.html",
+      "tools/testing/testing_otheride.html",
+      "https://source.android.com/devices/tech/debug/dumpsys.html"
+    ]
+  },
+  "training/testing/techniques": {
+    "title": "",
+    "resources": [
+      "training/testing/ui-testing/index.html",
+      "training/testing/unit-testing/index.html",
+      "training/testing/performance.html"
+    ]
+  },
+  "training/testing/resources": {
+    "title": "",
+    "resources": [
+      "https://github.com/googlesamples/android-testing",
+      "https://www.youtube.com/watch?v=2I6fuD20qlY",
+      "https://codelabs.developers.google.com/codelabs/android-testing/index.html",
+      "https://github.com/googlesamples/android-testing-templates",
+      "https://google.github.io/android-testing-support-library"
+    ]
+  },
+  "overview/1": {
+    "title": "",
+    "resources": [
+      "distribute/essentials/quality/core.html",
+      "distribute/essentials/quality/tablets.html",
+      "distribute/tools/launch-checklist.html",
+      "tools/publishing/publishing_overview.html",
+      "distribute/tools/localization-checklist.html"
+    ]
+  },
+  "overview/2": {
+    "title": "",
+    "resources": [
+      "google/play/billing/index.html",
+      "google/play/billing/api.html",
+      "google/play/billing/billing_admin.html",
+      "google/play/billing/billing_testing.html",
+      "google/play/billing/billing_best_practices.html"
+    ]
+  },
+  "overview/3": {
+    "title": "",
+    "resources": [
+      "https://play.google.com/intl/en_us/badges/",
+      "distribute/tools/promote/device-art.html",
+      "distribute/tools/promote/linking.html",
+      "distribute/tools/promote/brand.html",
+      "tools/help/proguard.html"
+    ]
+  },
+  "overview/4": {
+    "title": "",
+    "resources": [
+      "design/style/writing.html",
+      "training/basics/fragments/fragment-ui.html",
+      "training/multiscreen/index.html",
+      "training/monitoring-device-state/index.html"
+    ]
+  },
+  "training/work/apps": {
+    "title": "",
+    "resources": [
+      "training/enterprise/app-compatibility.html",
+      "training/enterprise/app-restrictions.html",
+      "https://www.youtube.com/watch?v=39NkpWkaH8M&index=2&list=PLOU2XLYxmsIKAK2Bhv19H2THwF-22O5WX",
+      "samples/AppRestrictionSchema/index.html",
+      "samples/AppRestrictionEnforcer/index.html",
+      "https://www.youtube.com/watch?v=dH41OutAMNM"
+    ]
+  },
+  "training/work/admin": {
+    "title": "",
+    "resources": [
+      "training/enterprise/work-policy-ctrl.html",
+      "samples/BasicManagedProfile/index.html",
+      "https://www.youtube.com/watch?v=j3QC6hcpy90"
+    ]
+  },
+  "tools/performance/rendering": {
+    "title": "",
+    "resources": [
+      "tools/performance/debug-gpu-overdraw/index.html",
+      "tools/performance/profile-gpu-rendering/index.html",
+      "tools/performance/hierarchy-viewer/setup.html",
+      "tools/performance/hierarchy-viewer/index.html",
+      "tools/performance/hierarchy-viewer/profiling.html"
+    ]
+  },
+  "tools/performance/memory": {
+    "title": "",
+    "resources": [
+      "tools/performance/memory-monitor/index.html",
+      "tools/performance/heap-viewer/index.html",
+      "tools/performance/allocation-tracker/index.html",
+      "tools/performance/comparison.html"
+    ]
+  },
+  "tools/performance/cpu": {
+    "title": "",
+    "resources": [
+      "tools/performance/traceview/index.html",
+      "tools/performance/systrace/index.html"
+    ]
+  },
+  "tools/performance/battery": {
+    "title": "",
+    "resources": [
+      "tools/performance/batterystats-battery-historian/index.html",
+      "tools/performance/batterystats-battery-historian/charts.html"
+    ]
+  },
+  "marshmallow/landing/resources": {
+    "title": "",
+    "resources": [
+      "about/versions/marshmallow/android-6.0-changes.html",
+      "about/versions/marshmallow/android-6.0.html",
+      "about/versions/marshmallow/samples.html"
+    ]
+  },
+  "marshmallow/landing/videos": {
+    "title": "",
+    "resources": [
+      "https://youtu.be/U9tw5ypqEN0",
+      "https://youtu.be/N72ksDKrX6c",
+      "https://youtu.be/iZqDdvhTZj0",
+      "https://www.youtube.com/watch?v=vcSj8ln-BlE",
+      "https://youtu.be/LQoohRwojmw",
+      "https://www.youtube.com/watch?v=VOn7VrTRlA4",
+      "https://youtu.be/5sCQjeGoE7M",
+      "https://www.youtube.com/watch?v=C8lUdPVSzDk",
+      "https://www.youtube.com/watch?v=HXacyy0HSW0",
+      "https://www.youtube.com/watch?v=OW1A4XFRuyc",
+      "https://www.youtube.com/watch?v=j3QC6hcpy90",
+      "https://www.youtube.com/watch?v=f17qe9vZ8RM",
+      "https://www.youtube.com/watch?v=ndBdf1_oOGA"
+    ]
+  },
+  "marshmallow/landing/more": {
+    "title": "",
+    "resources": [
+      "training/permissions/requesting.html",
+      "training/backup/autosyncapi.html",
+      "training/monitoring-device-state/doze-standby.html",
+      "training/app-links/index.html",
+      "training/articles/assistant.html",
+      "training/testing/performance.html",
+      "https://developers.google.com/android/nexus/images"
+    ]
+  },
+  "tools/landing/carousel": {
+    "title": "",
+    "resources": [
+    "panel1",
+    "panel2",
+    "panel3",
+    "panel4",
+    ]
+  },
+  "tools/landing/resources": {
+    "title": "",
+    "resources": [
+    "tools/studio/index.html",
+    "tools/studio/studio-features.html",
+    "sdk/installing/studio-tips.html",
+    ]
+  },
+  "preview/landing/resources": {
+    "title": "",
+    "resources": [
+      "preview/overview.html",
+      "preview/api-overview.html",
+      "preview/behavior-changes.html",
+      "preview/setup-sdk.html",
+      "preview/samples.html",
+      "preview/support.html"
+    ]
+  },
+  "preview/landing/more": {
+    "title": "",
+    "resources": [
+      "preview/features/multi-window.html",
+      "preview/features/notification-updates.html",
+      "preview/features/background-optimization.html",
+      "preview/features/data-saver.html",
+      "preview/features/direct-boot.html",
+      "preview/features/icu4j-framework.html",
+      "preview/features/multilingual-support.html",
+      "preview/features/scoped-folder-access.html",
+      "preview/features/picture-in-picture.html",
+      "preview/features/tv-recording-api.html"
+    ]
+  }
+};
+
+/**
+ * Static search results.
+ */
+METADATA['en'].searchHeroCollections = {
+  "material": {
+    "title":"Material Design for Android",
+    "category":"",
+    "summary":"Material design is a comprehensive guide for visual, motion, and interaction design across platforms and devices. Android now includes support for material design apps.",
+    "url":"design/material/index.html",
+    "group":"",
+    "keywords": ["material","design"],
+    "tags": ["material","design"],
+    "image":"images/cards/design-material-for-android_2x.jpg",
+    "lang":"en",
+    "type":"design"
+  }
+};
diff --git a/docs/html/jd_extras_es.js b/docs/html/jd_extras_es.js
new file mode 100644
index 0000000..7ced259
--- /dev/null
+++ b/docs/html/jd_extras_es.js
@@ -0,0 +1,13 @@
+
+//must use intl/nn to override translated resources
+METADATA['es'].carousel = {
+  "intl/es/distribute/googleplay/guide.html": {
+    "image": "images/distribute/hero-secrets-to-app-success.jpg",
+  },
+};
+
+/**
+ * Static metadata collections for this language.
+ */
+METADATA['es'].collections = {
+};
\ No newline at end of file
diff --git a/docs/html/jd_extras_ja.js b/docs/html/jd_extras_ja.js
new file mode 100644
index 0000000..390c23c
--- /dev/null
+++ b/docs/html/jd_extras_ja.js
@@ -0,0 +1,185 @@
+/* Metadata represendations of resources that are outside of the autogenerated
+   local resource lists, or that override local resource representations.
+
+   Resources listed here are referenced from sitemap sections and collections,
+   matched by url string if there is no resource existing in ALL_RESOURCES.
+
+   Currently, these articles can override only the generated resources
+   in DISTRIBUTE_RESOURCES. A representation defined here will not be applied
+   when a collection or section specifies a url that's not in DISTRIBUTE_RESOURCEs.
+   Also
+   So if a section url refers to a static doc that's
+   not in a distribute section, you need to create an item for
+   it in this file. Fix is to compare across
+   ALL_RESOURCES_BY_URL.  */
+
+METADATA['ja'].extras = METADATA['ja'].extras.concat([
+ /* TODO Remove standard resources from here, such as below
+ */
+  {
+    "lang": "ja",
+    "title": "Gaming Everywhere",
+    "category": "",
+    "summary": "東京ゲームショウ 2014 の基調講演より。",
+    "url": "https://www.youtube.com/watch?v=xelYnWcYkuE",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://img.youtube.com/vi/xelYnWcYkuE/hqdefault.jpg",
+    "type": "youtube"
+  },
+  {
+    "lang": "ja",
+    "title": "Playtime Tokyo",
+    "category": "",
+    "summary": "アプリビジネスのノウハウを各担当者が講演しました。",
+    "url": "https://www.youtube.com/playlist?list=PLCOC_kP3nqGIHEgwm9mybvA04Vn4Cg9nn",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://img.youtube.com/vi/lJdjY3z6-LY/hqdefault.jpg",
+    "type": "youtube"
+  },
+  {
+    "lang": "ja",
+    "title": "Android Wear 関連の動画に日本語字幕が付きました",
+    "category": "",
+    "summary": "",
+    "url": "https://googledevjp.blogspot.jp/2014/12/android-wear.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://i1.ytimg.com/vi/4JcDYkgqksY/maxresdefault.jpg",
+    "type": "blog"
+  },
+  {
+    "lang": "ja",
+    "title": "Android Studio 1.0 をリリースしました",
+    "category": "",
+    "summary": "",
+    "url": "https://googledevjp.blogspot.jp/2014/12/android-studio-10.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://3.bp.blogspot.com/-1hV3sD1At74/VIaQSWBasUI/AAAAAAAABAU/9vYLJMsmMuQ/s1600/studio-logo.png",
+    "type": "blog"
+  },
+  {
+    "lang": "ja",
+    "title": "Google Play 開発者サービス 6.5 のご紹介",
+    "category": "",
+    "summary": "",
+    "url": "https://googledevjp.blogspot.jp/2014/12/google-play-65.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://1.bp.blogspot.com/-4BNREC0Jojo/VGo7ahW35wI/AAAAAAAABAc/9thZl94F6fY/s1600/GMS%2B-%2BRelease%2BBlog%2BNacho%2B-%2BMap%2BToolbar.png",
+    "type": "blog"
+  },
+  {
+    "lang": "ja",
+    "title": "Alpha and Beta Testing",
+    "category": "",
+    "summary": "アプリのローンチにまつわるリスクを最小限にするために必須のツールです。[英語コンテンツ]",
+    "url": "intl/ja/distribute/googleplay/developer-console.html#alpha-beta",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "images/gp-dc-ab.png",
+    "type": "distribute"
+  },
+  {
+    "lang": "ja",
+    "title": "Finding Success on Google Play",
+    "category": "",
+    "summary": "Google Play での成功の秘訣がこの一冊に。[英語コンテンツ]",
+    "url": "intl/ja/distribute/googleplay/guide.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "distribute/images/play_dev_guide_b.jpg",
+    "type": "distribute"
+  },
+  {
+    "lang": "ja",
+    "title": "Google Play アプリ ポリシー センター",
+    "category": "",
+    "summary": "",
+    "url": "https://support.google.com/googleplay/android-developer/answer/4430948?hl=ja",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://storage.googleapis.com/support-kms-prod/SNP_712EA2784949DDF085C46E3BE7B1DC618A09_4389356_en_v0",
+    "type": "distribute"
+  },
+  {
+    "lang": "ja",
+    "title": "Wear App Quality",
+    "category": "",
+    "summary": "いよいよウェアラブルの時代が到来。[英語コンテンツ]",
+    "url": "intl/ja/distribute/essentials/quality/wear.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "distribute/images/gp-wear-quality.png",
+    "type": "distribute"
+  },
+  {
+    "lang": "ja",
+    "title": "Google Cloud Platform が支える、新感覚リアルタイム RPG ユニゾンリーグ - 株式会社エイチームの GCP 導入事例",
+    "category": "",
+    "summary": "スケーラブルなバックエンドを実現する Google Cloud Platform の最新導入事例。",
+    "url": "https://googleforwork-japan.blogspot.jp/2014/12/gcp-google-cloud-platform-rpg-gcp.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://3.bp.blogspot.com/-xp7KoPkbne4/VI_PfoFil3I/AAAAAAAAA3U/-k1UZ0zjCBc/s1600/unison-league.jpeg",
+    "type": "distribute"
+  },
+  {
+    "lang": "ja",
+    "title": "Monetize with Ads",
+    "category": "",
+    "summary": "アプリ内広告成功のコツがここに。[英語コンテンツ]",
+    "url": "intl/ja/distribute/monetize/ads.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "distribute/images/advertising.jpg",
+    "type": "distribute"
+  },
+]);
+
+//must use intl/nn url to override a translated resource
+METADATA['ja'].carousel = {
+  "intl/ja/distribute/googleplay/guide.html": {
+    "image": "images/distribute/hero-secrets-to-app-success.jpg",
+    "title": "Secrets to App Success on Google Play",
+    "summary": "Get the updated guide full of useful features, tips, and best practices that will help you grow a successful app or game business on Google Play.",
+  },
+};
+
+/**
+ * Static metadata collections.
+ */
+METADATA['ja'].collections = {
+  "launch/static/ja": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=xelYnWcYkuE",
+      "https://www.youtube.com/playlist?list=PLCOC_kP3nqGIHEgwm9mybvA04Vn4Cg9nn",
+      "https://googledevjp.blogspot.jp/2014/12/android-wear.html",
+      "https://googledevjp.blogspot.jp/2014/12/android-studio-10.html",
+      "https://googledevjp.blogspot.jp/2014/12/google-play-65.html",
+      "distribute/googleplay/developer-console.html#alpha-beta",
+      "distribute/googleplay/guide.html",
+      "distribute/essentials/quality/core.html",
+      "https://support.google.com/googleplay/android-developer/answer/4430948?hl=ja",
+      "support.html",
+      "distribute/essentials/quality/wear.html",
+      "training/tv/start/index.html",
+      "https://googleforwork-japan.blogspot.jp/2014/12/gcp-google-cloud-platform-rpg-gcp.html",
+      "distribute/monetize/ads.html"
+    ]
+  },
+};
\ No newline at end of file
diff --git a/docs/html/jd_extras_ko.js b/docs/html/jd_extras_ko.js
new file mode 100644
index 0000000..8d9059c
--- /dev/null
+++ b/docs/html/jd_extras_ko.js
@@ -0,0 +1,120 @@
+/* Metadata represendations of resources that are outside of the autogenerated
+   local resource lists, or that override local resource representations.
+
+   Resources listed here are referenced from sitemap sections and collections,
+   matched by url string if there is no resource existing in ALL_RESOURCES.
+
+   Currently, these articles can override only the generated resources
+   in DISTRIBUTE_RESOURCES. A representation defined here will not be applied
+   when a collection or section specifies a url that's not in DISTRIBUTE_RESOURCEs.
+   Also
+   So if a section url refers to a static doc that's
+   not in a distribute section, you need to create an item for
+   it in this file. Fix is to compare across
+   ALL_RESOURCES_BY_URL.  */
+
+METADATA['ko'].extras = METADATA['ko'].extras.concat([
+ /* TODO Remove standard resources from here, such as below
+ */
+  {
+    "lang": "ko",
+    "title": "구글 플레이 2015년 비전",
+    "category": "",
+    "summary": "G-Star 구글 컨퍼런스",
+    "url": "https://www.youtube.com/watch?v=7X9Ue0Nfdh4&index=2&list=PL_WJkTbDHdBksDBRoqfeyLchEQqBAOlNl",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://img.youtube.com/vi/7X9Ue0Nfdh4/hqdefault.jpg",
+    "type": "youtube"
+  },
+  {
+    "lang": "ko",
+    "title": "구글 플레이 게임",
+    "category": "",
+    "summary": "게임 프로필, 퀘스트, 세이브드 게임 등의 신기능 소개",
+    "url": "https://www.youtube.com/watch?v=83FpwuschCQ",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://img.youtube.com/vi/83FpwuschCQ/hqdefault.jpg",
+    "type": "youtube"
+  },
+  {
+    "lang": "ko",
+    "title": "안드로이드 5.0 롤리팝을 맞이하는 개발자를 위한 안내서",
+    "category": "",
+    "summary": "",
+    "url": "https://googledevkr.blogspot.com/2014/11/android50guidefordevelopers.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://lh5.googleusercontent.com/0Gx4Ob_WvIgNOMv3hVMuUm4O7KuSWyxCEFIvy39_6fgXh2q2azqjZf3bpZoEk-LMW-K8GwYMfyYfMUAwp38hhPQ6WFNnddhN2E2_GF3-XBQI_qjhISviz10h_mGgDWsZKA",
+    "type": "blog"
+  },
+  {
+    "lang": "ko",
+    "title": "안드로이드 앱을 위한 머티리얼 디자인 체크 리스트",
+    "category": "",
+    "summary": "",
+    "url": "https://googledevkr.blogspot.com/2014/10/material-design-on-android-checklist.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://lh4.googleusercontent.com/JKoxeDdmsj6gYHV8rmp96U1jHj7FKeMzGBaaFu35kXp5EpJR9Ei9MQFAYghjwJoycdgydw-FZTuFNY8pDx63MWhy37rKC96ajoDXEMzvo9W0sj5yC2-uSYJdhpazVOP2cA",
+    "type": "blog"
+  },
+  {
+    "lang": "ko",
+    "title": "App Compat 라이브러리",
+    "category": "",
+    "summary": "",
+    "url": "https://googledevkr.blogspot.com/2014/10/appcompat-v21-material-design-for-pre.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://2.bp.blogspot.com/-7fF9ayZ6PgI/U9iFpk5FNEI/AAAAAAAAAs0/4P4SCvdB_4M/s640/image00.png",
+    "type": "blog"
+  },
+  {
+    "lang": "ko",
+    "title": "구글 플레이 게임 서비스",
+    "category": "",
+    "summary": "다양한 구글 플레이 게임 서비스 기능 알아보기 [영문]",
+    "url": "intl/ko/google/play-services/games.html",
+    "group": "",
+    "keywords": [],
+    "tags": [],
+    "image": "https://developers.google.com/games/services/images/gamescreen3.jpg",
+    "type": "distribute"
+  },
+]);
+
+//must use intl/nn to override translated resources
+METADATA['ko'].carousel = {
+};
+
+/**
+ * Static metadata collections.
+ */
+METADATA['ko'].collections = {
+  "launch/static/ko": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=7X9Ue0Nfdh4&index=2&list=PL_WJkTbDHdBksDBRoqfeyLchEQqBAOlNl",
+      "https://www.youtube.com/watch?v=83FpwuschCQ",
+      "https://googledevkr.blogspot.com/2014/11/android50guidefordevelopers.html",
+      "https://googledevkr.blogspot.com/2014/10/material-design-on-android-checklist.html",
+      "https://googledevkr.blogspot.com/2014/10/appcompat-v21-material-design-for-pre.html",
+      "distribute/googleplay/developer-console.html#alpha-beta",
+      "distribute/googleplay/guide.html",
+      "distribute/essentials/quality/core.html",
+      "https://support.google.com/googleplay/android-developer/answer/4430948?hl=ko",
+      "support.html",
+      "distribute/essentials/quality/wear.html",
+      "tv/index.html",
+      "google/play-services/games.html",
+      "distribute/monetize/ads.html"
+    ]
+  },
+};
\ No newline at end of file
diff --git a/docs/html/jd_extras_ru.js b/docs/html/jd_extras_ru.js
new file mode 100644
index 0000000..d6c873c
--- /dev/null
+++ b/docs/html/jd_extras_ru.js
@@ -0,0 +1,13 @@
+
+//must use intl/nn to override translated resources
+METADATA['ru'].carousel = {
+  "intl/ru/distribute/googleplay/guide.html": {
+    "image": "images/distribute/hero-secrets-to-app-success.jpg",
+  },
+};
+
+/**
+ * Static metadata collections for this language.
+ */
+METADATA['ru'].collections = {
+};
\ No newline at end of file
diff --git a/docs/html/jd_extras_zh-cn.js b/docs/html/jd_extras_zh-cn.js
new file mode 100644
index 0000000..cb1ccb7
--- /dev/null
+++ b/docs/html/jd_extras_zh-cn.js
@@ -0,0 +1,291 @@
+/* Metadata represendations of resources that are outside of the autogenerated
+ local resource lists, or that override local resource representations.
+
+ Resources listed here are referenced from sitemap sections and collections,
+ matched by url string if there is no resource existing in ALL_RESOURCES.
+
+ Currently, these articles can override only the generated resources
+ in DISTRIBUTE_RESOURCES. A representation defined here will not be applied
+ when a collection or section specifies a url that's not in DISTRIBUTE_RESOURCEs.
+ Also
+ So if a section url refers to a static doc that's
+ not in a distribute section, you need to create an item for
+ it in this file. Fix is to compare across
+ ALL_RESOURCES_BY_URL.  */
+
+
+
+METADATA['zh-cn'].extras = METADATA['zh-cn'].extras.concat([
+  {
+    "title":"Google Play应用政策中心",
+    "category":"google play",
+    "summary":"一个方便你了解Google Play政策和指南的中心资源。",
+    "url":"https://support.google.com/googleplay/android-developer/answer/4430948?hl=zh-Hans",
+    "group":"",
+    "lang":"zh-cn",
+    "keywords": [],
+    "tags": [],
+    "image":"http://storage.googleapis.com/support-kms-prod/SNP_712EA2784949DDF085C46E3BE7B1DC618A09_4389397_en_v0",
+    "type":"distribute"
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/1169947?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": "images/play_dev.jpg",
+    "title": "以多种货币销售应用",
+    "summary": "如何在Google Play为应用定价",
+    "keywords": [],
+    "type": "distribute",
+    "category": "guide"
+  },
+  {
+    "title": "支持向Google Play用户发布应用的地区",
+    "lang": "zh-cn",
+    "category":"",
+    "summary": "支持向Google Play用户发布应用的国家/地区。",
+    "url":"https://support.google.com/googleplay/android-developer/answer/138294?hl=zh-Hans",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/188189?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": "images/play_dev.jpg",
+    "title": "针对Google Play为你的应用内容分级",
+    "summary": "如何为你的应用内容分级。",
+    "keywords": [],
+    "type": "support",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/113477?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": "images/play_dev.jpg",
+    "title": "为用户提供支持",
+    "summary": "为用户提供支持的各种选择。",
+    "keywords": [],
+    "type": "support",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://play.google.com/apps/publish/?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "Google Play 开发者控制台",
+    "summary": "发布应用的开发者控制台",
+    "keywords": [],
+    "type": "guide",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/topic/2364761?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": "images/play_dev.jpg",
+    "title": "政策和最佳做法",
+    "summary": "内容政策和流程",
+    "keywords": [],
+    "type": "distribute",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/138412?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": "images/play_dev.jpg",
+    "title": "各国家/地区获许定价范围和货币",
+    "summary": "各国家/地区获许定价范围和货币列表",
+    "keywords": [],
+    "type": "guide",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/112622?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": "images/play_dev.jpg",
+    "title": "交易费用",
+    "summary": "销售的应用和应用内产品的交易费。",
+    "keywords": [],
+    "type": "guide",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/138000?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": "images/play_dev.jpg",
+    "title": "税率",
+    "summary": "如何设置不同国家/地区的税率",
+    "keywords": [],
+    "type": "guide",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/113475?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": "images/play_dev.jpg",
+    "title": "类别",
+    "summary": "应用的类别列表。",
+    "keywords": [],
+    "type": "guide",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/113476?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": "images/play_dev.jpg",
+    "title": "更新应用",
+    "summary": "更新Google Play应用的要求。",
+    "keywords": [],
+    "type": "guide",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/1153479?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": null,
+    "title": "应用内结算",
+    "summary": "如何正确设置应用内商品和订阅结算。",
+    "keywords": [],
+    "type": "guide",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/googleplay/android-developer/answer/1078870?hl=zh-Hans",
+    "timestamp": 1194884220000,
+    "image": "images/play_dev.jpg",
+    "title": "为你的应用的图片资源",
+    "summary": "如何在你的应用的商品详情页面上添加图片资源。",
+    "keywords": [],
+    "type": "guide",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/payments/answer/2741495?hl=zh-Hans",
+    "timestamp": null,
+    "image": null,
+    "title": "退回訂單款項",
+    "summary": "如何退还已收取的订单款项。",
+    "keywords": [],
+    "type": "guide",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": ["localization", "pricing", "developer support"],
+    "url": "https://support.google.com/googleplay/android-developer/table/3541286?hl=zh-Hans",
+    "timestamp": null,
+    "image": "images/play_dev.jpg",
+    "title": "支持向Google Play用户发布应用的地区",
+    "summary": "支持向Google Play用户发布应用的国家/地区。",
+    "keywords": [],
+    "type": "distribute",
+    "category": ""
+  },
+  {
+    "lang": "zh-cn",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/edu/guidelines?hl=zh-Hans",
+    "timestamp": null,
+    "image": "https://developer.android.com/distribute/images/edu-guidelines.jpg",
+    "title": "Education Guidelines",
+    "summary": "These guidelines and requirements help you develop great apps for students, which offer compelling content and an intuitive user experience on Android tablets.",
+    "keywords": [],
+    "type": "",
+    "category": ""
+  },
+]);
+
+/**
+ * Static metadata collections.
+ */
+METADATA['zh-cn'].collections = {
+  "overview/zhcn/1": {
+    "title": "",
+    "resources": [
+      "intl/zh-cn/distribute/essentials/quality/core.html",
+      "intl/zh-cn/distribute/essentials/quality/tablets.html",
+      "intl/zh-cn/distribute/tools/launch-checklist.html",
+      "intl/zh-cn/tools/publishing/publishing_overview.html",
+      "intl/zh-cn/distribute/tools/localization-checklist.html"
+    ]
+  },
+  "overview/zhcn/2": {
+    "title": "",
+    "resources": [
+      "intl/zh-cn/google/play/billing/index.html",
+      "intl/zh-cn/google/play/billing/api.html",
+      "intl/zh-cn/google/play/billing/billing_admin.html",
+      "intl/zh-cn/google/play/billing/billing_testing.html",
+      "intl/zh-cn/google/play/billing/billing_best_practices.html"
+    ]
+  },
+  "overview/zhcn/3": {
+    "title": "",
+    "resources": [
+      "https://play.google.com/intl/en_us/badges/",
+      "intl/zh-cn/distribute/tools/promote/device-art.html",
+      "intl/zh-cn/distribute/tools/promote/linking.html",
+      "intl/zh-cn/distribute/tools/promote/brand.html",
+      "intl/zh-cn/tools/help/proguard.html"
+    ]
+  },
+  "overview/zhcn/4": {
+    "title": "",
+    "resources": [
+      "intl/zh-cn/design/style/writing.html",
+      "intl/zh-cn/training/basics/fragments/fragment-ui.html",
+      "intl/zh-cn/training/multiscreen/index.html",
+      "intl/zh-cn/training/monitoring-device-state/index.html"
+    ]
+  },
+  "overview/carousel/zhcn": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=vGV7FHGzpFU",
+      "https://www.youtube.com/watch?v=aqc3ZOTzpdk",
+      "https://www.youtube.com/watch?v=jaNrJ8uyLSc"
+    ]
+  },
+};
\ No newline at end of file
diff --git a/docs/html/jd_extras_zh-tw.js b/docs/html/jd_extras_zh-tw.js
new file mode 100644
index 0000000..f41598e
--- /dev/null
+++ b/docs/html/jd_extras_zh-tw.js
@@ -0,0 +1,13 @@
+
+//must use intl/nn to override translated resources
+METADATA['zh-tw'].carousel = {
+  "intl/zh-tw/distribute/googleplay/guide.html": {
+    "image": "images/distribute/hero-secrets-to-app-success.jpg",
+  },
+};
+
+/**
+ * Static metadata collections for this language.
+ */
+METADATA['zh-tw'].collections = {
+};
\ No newline at end of file
diff --git a/docs/html/jd_tag_helpers.js b/docs/html/jd_tag_helpers.js
index f03b1d7..3ad3633 100644
--- a/docs/html/jd_tag_helpers.js
+++ b/docs/html/jd_tag_helpers.js
@@ -13,11 +13,11 @@
   GOOGLE_RESOURCES,
   GUIDE_RESOURCES,
   SAMPLES_RESOURCES,
-  PREVIEW_RESOURCES,
   TOOLS_RESOURCES,
   TRAINING_RESOURCES,
   YOUTUBE_RESOURCES,
-  BLOGGER_RESOURCES
+  BLOGGER_RESOURCES,
+  PREVIEW_RESOURCES
 );
 
 for (var i = 0; i < ALL_RESOURCES.length; i++) {
@@ -71,9 +71,9 @@
   'google': GOOGLE_RESOURCES,
   'guide': GUIDE_RESOURCES,
   'samples': SAMPLES_RESOURCES,
-  'preview': PREVIEW_RESOURCES,
   'tools': TOOLS_RESOURCES,
   'training': TRAINING_RESOURCES,
+  'preview': PREVIEW_RESOURCES,
   'youtube': YOUTUBE_RESOURCES,
   'blog': BLOGGER_RESOURCES
 };
@@ -88,7 +88,6 @@
   {map:GOOGLE_BY_TAG,arr:GOOGLE_RESOURCES},
   {map:GUIDE_BY_TAG,arr:GUIDE_RESOURCES},
   {map:SAMPLES_BY_TAG,arr:SAMPLES_RESOURCES},
-  {map:PREVIEW_BY_TAG,arr:PREVIEW_RESOURCES},
   {map:TOOLS_BY_TAG,arr:TOOLS_RESOURCES},
   {map:TRAINING_BY_TAG,arr:TRAINING_RESOURCES},
   {map:YOUTUBE_BY_TAG,arr:YOUTUBE_RESOURCES},
diff --git a/docs/html/legal.jd b/docs/html/legal.jd
old mode 100644
new mode 100755
index 5ee6b5c..0a68508
--- a/docs/html/legal.jd
+++ b/docs/html/legal.jd
@@ -70,12 +70,10 @@
 restrictions. Such services include:</p>
 
 <dl>
-  <dt>Eclipse Android Developer Tools Plugin</dt>
-    <dd>If you're developing apps with the Eclipse IDE, we offer a free plugin called the
-<a href="{@docRoot}tools/sdk/eclipse-adt.html">Android Developer Tools</a> (ADT) to speed up your
-development and debugging. Certain code within the ADT plugin and other packages available
-from the SDK Manager require that you agree to terms and conditions for use, reproduction and
-distribution upon installation.</dd>
+  <dt>Android Studio</dt>
+    <dd>Android Studio and other packages available from the SDK manager require that you agree
+to terms and conditions
+for use, reproduction and distribution upon installation.</dd>
 
   <dt>Google Play</dt>
     <dd>Google Play is a publicly available service through which you can distribute your apps for
diff --git a/docs/html/ndk/downloads/_book.yaml b/docs/html/ndk/downloads/_book.yaml
new file mode 100644
index 0000000..a5e92ce
--- /dev/null
+++ b/docs/html/ndk/downloads/_book.yaml
@@ -0,0 +1,6 @@
+toc:
+- title: Downloads
+  path: /ndk/downloads/index.html
+
+- title: Revision History
+  path: /ndk/downloads/revision_history.html
diff --git a/docs/html/ndk/downloads/index.jd b/docs/html/ndk/downloads/index.jd
index 94e9ae9..47d3113 100644
--- a/docs/html/ndk/downloads/index.jd
+++ b/docs/html/ndk/downloads/index.jd
@@ -1,104 +1,95 @@
 ndk=true
 page.template=sdk
-
-
-ndk.mac64_download=android-ndk-r10e-darwin-x86_64.bin
-ndk.mac64_bytes=388937326
-ndk.mac64_checksum=2cb8893a5701603519d38a7e04c50e81
-
-ndk.linux64_download=android-ndk-r10e-linux-x86_64.bin
-ndk.linux64_bytes=401522849
-ndk.linux64_checksum=19af543b068bdb7f27787c2bc69aba7f
-
-ndk.linux32_download=android-ndk-r10e-linux-x86.bin
-ndk.linux32_bytes=394281908
-ndk.linux32_checksum=c3edd3273029da1cbd2f62c48249e978
-
-ndk.win64_download=android-ndk-r10e-windows-x86_64.exe
-ndk.win64_bytes=419616132
-ndk.win64_checksum=8412bb4991a95e08fda50b5a44d95df7
-
-ndk.win32_download=android-ndk-r10e-windows-x86.exe
-ndk.win32_bytes=396563176
-ndk.win32_checksum=1a82445baaf62aec3a46386ab1e5772c
-
-
-
 page.title=NDK Downloads
+
 @jd:body
 
 
-<div id="tos" style="display:none;width:760px;height:0;margin:0 auto">
-
-<div id="download" class="ndk" style="
-z-index: 99;
-width: 720px;
-position: absolute;
-margin: -70px 0;
-padding: 14px;
-background: white;
-border: 1px solid #999;
-box-shadow: -10px 10px 50px #888;
--moz-box-shadow: -10px 10px 50px #888;
--webkit-box-shadow: -10px 10px 50px #888;">
-<p>Before installing the Android NDK, you must agree to the following terms and conditions.</p>
+<!-- start studio download modal -->
+<div data-modal="ndk_tos" class="dac-modal" id="ndk_tos">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <div class="dac-modal-header-actions">
+          <button class="dac-modal-header-close" data-modal-toggle></button>
+        </div>
+        <section class="dac-swap-section dac-active dac-down">
+          <h2 class="norule dac-modal-header-title" id="tos-header">Download the Android NDK</h2>
+        </section>
+      </header>
+      <section class="dac-swap-section dac-active dac-left">
+          <section class="dac-modal-content">
+            <fieldset class="dac-form-fieldset">
+              <div class="cols">
+                <div class="col-2of2 tos-leftCol">
+                  <p class="sdk-terms-intro">Before installing the Android
+                  NDK,
+                  you must agree to the following terms
+                  and conditions.</p>
+                </div>
 <div class="sdk-terms" style="width:auto" onfocus="this.blur()">
 <h2 class="norule">Terms and Conditions</h2>
 This is the Android Software Development Kit License Agreement
 
 <h3>1. Introduction</h3>
-1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK" and
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and
 specifically including the Android system files, packaged APIs, and Google APIs add-ons) is
-licensed to you subject to the terms of this License Agreement. This License Agreement forms a
+licensed to you subject to the terms of the License Agreement. The License Agreement forms a
 legally binding contract between you and Google in relation to your use of the SDK.
 
-1.2 “Android” means the Android software stack for devices, as made available under the Android
+1.2 "Android" means the Android software stack for devices, as made available under the Android
 Open Source Project, which is located at the following URL: http://source.android.com/, as updated
 from time to time.
 
-1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android
+Compatibility Definition document, which can be found at the Android compatibility website
+(http://source.android.com/compatibility) and which may be updated from time to time; and (ii)
+successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600
 Amphitheatre Parkway, Mountain View, CA 94043, United States.
 
 
 <h3>2. Accepting this License Agreement</h3>
-2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use the
-SDK if you do not accept this License Agreement.
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK
+if you do not accept the License Agreement.
 
-2.2 By clicking to accept, you hereby agree to the terms of this License Agreement.
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
 
 2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred
-from receiving the SDK under the laws of the United States or other countries including the country
-in which you are resident or from which you use the SDK.
+from receiving the SDK under the laws of the United States or other countries, including the
+country in which you are resident or from which you use the SDK.
 
-2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other
 entity, you represent and warrant that you have full legal authority to bind your employer or such
-entity to this License Agreement. If you do not have the requisite authority, you may not accept
-the License Agreement or use the SDK on behalf of your employer or other entity.
+entity to the License Agreement. If you do not have the requisite authority, you may not accept the
+License Agreement or use the SDK on behalf of your employer or other entity.
 
 
 <h3>3. SDK License from Google</h3>
-3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide,
-royalty-free, non-assignable and non-exclusive license to use the SDK solely to develop
-applications to run on the Android platform.
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide,
+royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to
+develop applications for compatible implementations of Android.
 
-3.2 You agree that Google or third parties own all legal right, title and interest in and to the
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible
+implementations of Android) or to develop another SDK. You are of course free to develop
+applications for other platforms, including non-compatible implementations of Android, provided
+that this SDK is not used for that purpose.
+
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the
 SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property
 Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law,
 and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
 
-3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement.
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.
 Except to the extent required by applicable third party licenses, you may not: (a) copy (except for
 backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create
 derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile
 handset or any other hardware device except a personal computer, combine any part of the SDK with
 other software, or distribute any software or device incorporating a part of the SDK.
 
-3.4 You agree that you will not take any actions that may cause or result in the fragmentation of
-Android, including but not limited to distributing, participating in the creation of, or promoting
-in any way a software development kit derived from the SDK.
-
 3.5 Use, reproduction and distribution of components of the SDK licensed under an open source
-software license are governed solely by the terms of that open source software license and not this
+software license are governed solely by the terms of that open source software license and not the
 License Agreement.
 
 3.6 You agree that the form and nature of the SDK that Google provides may change without prior
@@ -107,7 +98,7 @@
 providing the SDK (or any features within the SDK) to you or to users generally at Google's sole
 discretion, without prior notice to you.
 
-3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names,
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names,
 trademarks, service marks, logos, domain names, or other distinctive brand features.
 
 3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including
@@ -116,11 +107,11 @@
 
 <h3>4. Use of the SDK by You</h3>
 4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under
-this License Agreement in or to any software applications that you develop using the SDK, including
+the License Agreement in or to any software applications that you develop using the SDK, including
 any intellectual property rights that subsist in those applications.
 
-4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a)
-this License Agreement and (b) any applicable law, regulation or generally accepted practices or
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the
+License Agreement and (b) any applicable law, regulation or generally accepted practices or
 guidelines in the relevant jurisdictions (including any laws regarding the export of data or
 software to and from the United States or other relevant countries).
 
@@ -145,7 +136,7 @@
 (including any loss or damage which Google may suffer) by doing so.
 
 4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or
-to any third party for) any breach of your obligations under this License Agreement, any applicable
+to any third party for) any breach of your obligations under the License Agreement, any applicable
 third party contract or Terms of Service, or any applicable law or regulation, and for the
 consequences (including any loss or damage which Google or any third party may suffer) of any such
 breach.
@@ -185,7 +176,7 @@
 or in part) unless you have been specifically given permission to do so by the relevant owners.
 
 7.3 You acknowledge that your use of such third party applications, data, content, or resources may
-be subject to separate terms between you and the relevant third party. In that case, this License
+be subject to separate terms between you and the relevant third party. In that case, the License
 Agreement does not affect your legal relationship with these third parties.
 
 
@@ -205,14 +196,14 @@
 
 
 <h3>9. Terminating this License Agreement</h3>
-9.1 This License Agreement will continue to apply until terminated by either you or Google as set
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set
 out below.
 
-9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the SDK
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK
 and any relevant developer credentials.
 
-9.3 Google may at any time, terminate this License Agreement with you if:
-(A) you have breached any provision of this License Agreement; or
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
 (B) Google is required to do so by law; or
 (C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated
 its relationship with Google or ceased to offer certain parts of the SDK to you; or
@@ -220,9 +211,9 @@
 in which you are resident or from which you use the service, or the provision of the SDK or certain
 SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
 
-9.4 When this License Agreement comes to an end, all of the legal rights, obligations and
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and
 liabilities that you and Google have benefited from, been subject to (or which have accrued over
-time whilst this License Agreement has been in force) or which are expressed to continue
+time whilst the License Agreement has been in force) or which are expressed to continue
 indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall
 continue to apply to such rights, obligations and liabilities indefinitely.
 
@@ -256,7 +247,7 @@
 accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes
 any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of
 any person or defames any person or violates their rights of publicity or privacy, and (c) any
-non-compliance by you with this License Agreement.
+non-compliance by you with the License Agreement.
 
 
 <h3>13. Changes to the License Agreement</h3>
@@ -266,45 +257,44 @@
 
 
 <h3>14. General Legal Terms</h3>
-14.1 This License Agreement constitutes the whole legal agreement between you and Google and
-governs your use of the SDK (excluding any services which Google may provide to you under a
-separate written agreement), and completely replaces any prior agreements between you and Google in
-relation to the SDK.
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs
+your use of the SDK (excluding any services which Google may provide to you under a separate
+written agreement), and completely replaces any prior agreements between you and Google in relation
+to the SDK.
 
 14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is
-contained in this License Agreement (or which Google has the benefit of under any applicable law),
+contained in the License Agreement (or which Google has the benefit of under any applicable law),
 this will not be taken to be a formal waiver of Google's rights and that those rights or remedies
 will still be available to Google.
 
 14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any
-provision of this License Agreement is invalid, then that provision will be removed from this
-License Agreement without affecting the rest of this License Agreement. The remaining provisions of
-this License Agreement will continue to be valid and enforceable.
+provision of the License Agreement is invalid, then that provision will be removed from the License
+Agreement without affecting the rest of the License Agreement. The remaining provisions of the
+License Agreement will continue to be valid and enforceable.
 
 14.4 You acknowledge and agree that each member of the group of companies of which Google is the
-parent shall be third party beneficiaries to this License Agreement and that such other companies
-shall be entitled to directly enforce, and rely upon, any provision of this License Agreement that
+parent shall be third party beneficiaries to the License Agreement and that such other companies
+shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that
 confers a benefit on (or rights in favor of) them. Other than this, no other person or company
-shall be third party beneficiaries to this License Agreement.
+shall be third party beneficiaries to the License Agreement.
 
 14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST
 COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE
 LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
 
-14.6 The rights granted in this License Agreement may not be assigned or transferred by either you
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you
 or Google without the prior written approval of the other party. Neither you nor Google shall be
-permitted to delegate their responsibilities or obligations under this License Agreement without
-the prior written approval of the other party.
+permitted to delegate their responsibilities or obligations under the License Agreement without the
+prior written approval of the other party.
 
-14.7 This License Agreement, and your relationship with Google under this License Agreement, shall
-be governed by the laws of the State of California without regard to its conflict of laws
-provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located
-within the county of Santa Clara, California to resolve any legal matter arising from this License
-Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for
-injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be
+governed by the laws of the State of California without regard to its conflict of laws provisions.
+You and Google agree to submit to the exclusive jurisdiction of the courts located within the
+county of Santa Clara, California to resolve any legal matter arising from the License Agreement.
+Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies
+(or an equivalent type of urgent legal relief) in any jurisdiction.
 
-
-<em>November 13, 2012</em>
+<em>November 20, 2015</em>
 </div>
 
 
@@ -314,221 +304,63 @@
 <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
 <label id="agreeLabel" for="agree">I have read and agree with the above terms and conditions</label>
 </p>
-<p><a href="" class="button disabled ndk" id="downloadForRealz" onclick="return onDownloadNdkForRealz(this);"></a></p>
+<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
 </div>
 
-
-
-</div>
-</div>
-
- <div id="qv-wrapper">
-
+                </div>
+              </div>
+            </fieldset>
+          </section>
+        </form>
+      </section>
+    </div>
   </div>
+</div>
+<!-- end ndk_tos modal -->
 
-  <p>Select, from the table below, the NDK package for your development platform. For information
+
+  <p>Select, from the table above, the NDK package for your development platform. For information
   about the changes in the newest version of the NDK, see <a href="#rel">Release Notes</a>. For
   information about earlier revisions, see <a href="{@docRoot}ndk/downloads/revision_history.html">
   NDK Revision History.</a></p>
 
 
-<h2 id="Downloads">Downloading</h2>
-
-
 <script>
 $('#Downloads').after($('#download-table'));
 </script>
 
-  <h2 id="extract">Extraction</h2>
-  <p>The NDK package is a self-extracting binary. To unpack it, follow the procedure for your
-  development platform:</p>
-       <ul>
-       <li>On Linux and Mac OS X (Darwin):
-          <ul>
-          <ol>
-          <li>Download the appropriate package from this page.</li>
-          <li>Open a terminal window.</li>
-          <li>Go to the directory to which you downloaded the package.</li>
-          <li>Run <code>chmod a+x</code> on the downloaded package.</li>
-          <li>Execute the package. For example:
-          <pre class="no-pretty-print">
-ndk$ chmod a+x android-ndk-r10c-darwin-x86_64.bin
-ndk$ ./android-ndk-r10c-darwin-x86_64.bin
-          </pre></li>
-          <p>The folder containing the NDK extracts itself.</p>
-          <p>You can also use a program like 7z to extract the package.</p>
-          </ol>
-          </ul>
-       </li>
-    <li>On Windows:</li>
-       <ul>
-       <ol>
-       <li>Download the appropriate package from this page.</li>
-       <li>Navigate to the folder to which you downloaded the package.</li>
-       <li>Double-click the downloaded file. The folder containing the NDK extracts itself.</li>
-       </ol>
-       </ul>
-     </ul>When uncompressed, the NDK files are contained in a directory called
-    <code>android-ndk-&lt;version&gt;</code>. You can rename the NDK directory if necessary and you
-    can move it to any location on your computer. This documentation refers to the NDK directory as
-    <code>&lt;ndk&gt;</code>.
-
-
-  <p>You are now ready to start working with the NDK.</p>
-
 <h2 id="rel">Release Notes</h2>
 
- <p>Android NDK, Revision 10e</a> <em>(May 2015)</em></p>
-    <dl>
-      <dt>Important changes:</dt>
-      <dd>
-      <ul>
-        <li>Integrated the workaround for Cortex-A53 Erratum 843419 into the
-        {@code aarch64-linux-android-4.9} linker. For more information on this workaround, see
-        <a href="https://sourceware.org/ml/binutils/2015-03/msg00446.html">Workaround for cortex-a53
-        erratum 843419.</a></li>
+<p>
+  Android NDK, Revision 11c <em>(March 2016)</em>
+</p>
 
-         <li>Added Clang 3.6; {@code NDK_TOOLCHAIN_VERSION=clang} now picks that version
-         of Clang by default.</li>
+<dl>
+  <dt>
+    NDK
+  </dt>
 
-         <li>Removed Clang 3.4.</li>
-
-         <li>Removed GCC 4.6.</li>
-
-         <li>Implemented multithreading support in {@code ld.gold} for all architectures. It can
-         now link with or without support for multithreading; the default is to do it without.
-            <ul>
-            <li>To compile with multithreading, use the {@code --threads} option.</li>
-            <li>To compile without multithreading, use the {@code --no-threads} option.</li>
-            </ul>
-            </li>
-
-         <li>Upgraded GDB/gdbserver to 7.7 for all architectures.</li>
-
-         <li>Removed the NDK package for 32-bit Darwin.</li>
-      </ul>
-      </dd>
-   <dl>
-
-
-     <dt>Important bug fixes:</dt>
-     <dd>
-     <ul>
-        <li>Fixed a crash that occurred when there were OpenMP loops outside of the main thread.</li>
-
-        <li>Fixed a GCC 4.9 internal compiler error (<i>ICE</i>) that occured when the user declared
-        {@code #pragma GCC optimize ("O0")}, but had a different level of optimization specified
-        on the command line. The {@code pragma} takes precedence.</li>
-
-        <li>Fixed an error that used to produce a crash with the following error message:
-<pre>
-in add_stores, at var-tracking.c:6000
-</pre>
-        </li>
-
-        <li>Implemented a workaround for a Clang 3.5 issue in which LLVM auto-vectorization
-        generates {@code llvm.cttz.v2i64()}, an instruction with no counterpart in the ARM
-        instruction set.</li>
-     </ul>
-     </dd>
-
-     <dt>Other bug fixes:</dt>
-     <dd>
-     <ul>
-        <li>Made the following header and library fixes:</li>
-           <ul>
-           <li>Fixed {@code PROPERTY_*} in {@code media/NdkMediaDrm.h}.</li>
-           <li>Fixed {@code sys/ucontext.h} for {@code mips64}.</li>
-           <li>Dropped the Clang version check for {@code __builtin_isnan} and
-           {@code __builtin_isinf}.</li>
-           <li>Added {@code android-21/arch-mips/usr/include/asm/reg.h}
-           and {@code android-21/arch-mips64/usr/include/asm/reg.h}.</li>
-           </ul>
-           </li>
-
-        <li>Fixed a spurious array-bounds warning that GCC 4.9 produced for x86, and reenabled the
-        array bounds warning that GCC 4.9 had produced for ARM. The warning for ARM had
-        previously been unconditionally disabled.</li>
-
-        <li>Fixed Clang 3.5 for {@code mips} and {@code mips64} to create a writable
-            {@code .gcc_except_table} section, thus matching GCC behavior. This change allows you
-            to avoid the following linker warning:
-
-<pre>
-.../ld: warning: creating a DT_TEXTREL in a shared object
-</pre>
-            </li>
-
-        <li>Backported a fix for {@code compiler-rt} issues that were causing crashes when Clang
-        compiled for {@code mips64}. For more information, see LLVM Issue
-        <a href="http://llvm.org/bugs/show_bug.cgi?id=20098">20098</a>.</li>
-
-        <li>Fixed Clang 3.5 crashes that occurred on non-ASCII comments. (Issue
-        <a href="https://code.google.com/p/android/issues/detail?id=81440">81440</a>)</li>
-
-        <li>Fixed {@code stlport collate::compare} to return {@code -1} and {@code 1}. Previously,
-        it had returned arbitrary signed numbers.</li>
-
-        <li>Fixed {@code ndk-gdb} for 64-bit ABIs. (Issue
-        <a href="https://code.google.com/p/android/issues/detail?id=118300">118300</a>)</li>
-
-        <li>Fixed the crash that the HelloComputeNDK sample for RenderScript was producing on
-        Android 4.4 (Android API level 19). For more information, see
-        <a href="http://stackoverflow.com/questions/28057049/targeting-pre-lollipop-devices-using-renderscript-from-ndk-c">this page</a>.</li>
-
-        <li>Fixed {@code libc++ __wrap_iter} for GCC. For more information, see LLVM Issue
-        <a href="http://llvm.org/bugs/show_bug.cgi?id=22355">22355</a>.</li>
-
-        <li>Fixed {@code .asm} support for ABI {@code x86_64}.</li>
-
-        <li>Implemented a workaround for the GCC 4.8 {@code stlport} issue. (Issue
-        <a href="https://android-review.googlesource.com/#/c/127773">127773</a>)</li>
-
-        <li>Removed the trailing directory separator {@code \\} from the project path in Windows.
-        (Issue <a href="https://code.google.com/p/android/issues/detail?id=160584">160584</a>)
-        </li>
-
-        <li>Fixed a {@code no rule to make target} error that occurred when compiling a single
-        {@code .c} file by executing the {@code ndk-build.cmd} command from {@code gradle}. (Issue
-        <a href="https://code.google.com/p/android/issues/detail?id=66937">66937</a>)</li>
-
-        <li>Added the {@code libatomic.a} and {@code libgomp.a} libraries that had been missing from
-        the following host toolchains:
+  <dd>
+    <ul>
+      <li>Changes
         <ul>
-           <li>{@code aarch64-linux-android-4.9}</li>
-           <li>{@code mips64el-linux-android-4.9}</li>
-           <li>{@code mipsel-linux-android-4.9}</li>
-           <li>{@code x86_64-4.9}</li>
+          <li>Applied additional fixes to the {@code ndk-gdb.py} script.
+          </li>
+          <li>Added an optional package name argument to the {@code ndk-gdb}
+            command {@code --attach} option.
+            (<a href="https://github.com/android-ndk/ndk/issues/13">Issue 13</a>)
+          </li>
+          <li>Fixed invalid toolchain paths for 32-bit Windows platform.
+            (<a href="https://github.com/android-ndk/ndk/issues/45">Issue 45</a>)
+          </li>
+          <li>Fixed the relative path for the {@code ndk-which} command.
+            (<a href="https://github.com/android-ndk/ndk/issues/29">Issue 29</a>)
+          </li>
+          <li>Fixed use of cygpath for the libgcc compiler.
+            (Android <a href="http://b.android.com/195486">Issue 195486</a>)
+          </li>
         </ul>
-     </ul>
-     </dd>
-
-     <dt>Other changes:</dt>
-     <dd>
-       <ul>
-       <li>Added {@code ld.gold} for {@code aarch64}. The default linker remains {@code ld.bfd}.
-       To explicitly enable {@code ld.gold}, add {@code -fuse-ld=gold} to the
-       {@code LOCAL_LDFLAGS} or {@code APP_LDFLAGS} variable.</li>
-
-       <li>Built the MIPS and MIPS64 toolchains with {@code binutils-2.25}, which provides improved
-       R6 support.</li>
-
-       <li>Made {@code -fstandalone-debug} (full debug info) a default option for Clang.</li>
-
-       <li>Replaced {@code -fstack-protector} with {@code -fstack-protector-strong} for
-       the ARM, AArch64, X86, and X86_64 toolchains for GCC 4.9, Clang 3.5, and
-       Clang 3.6.</li>
-
-       <li>Added the {@code --package} command-line switch to {@code ndk-gdb} to allow the build
-       system to override the package name. (Issue
-       <a href="https://code.google.com/p/android/issues/detail?id=56189">56189</a>)</li>
-
-       <li> Deprecated {@code -mno-ldc1-stc1} for MIPS.  This option may not work with the new
-       {@code -fpxx} and {@code -mno-odd-spreg} options, or with the FPXX ABI.</li>
-
-       <li>Added MIPS MSA and R6 detection to {@code cpu-features}.</li>
-
-     </ul>
-     </dd>
-
-   </dl>
+      </li>
+    </ul>
+  </dd>
+</dl>
\ No newline at end of file
diff --git a/docs/html/ndk/downloads/revision_history.jd b/docs/html/ndk/downloads/revision_history.jd
index 95bfe7c..c5a0d48 100644
--- a/docs/html/ndk/downloads/revision_history.jd
+++ b/docs/html/ndk/downloads/revision_history.jd
@@ -4,11 +4,502 @@
 <p>This page provides information on previous releases of the NDK, enumerating the changes that
 took place in each new version.</p>
 
+
+<div class="toggle-content closed">
+<a name="11b"></a>
+ <p>
+   <a href="#" onclick="return toggleContent(this)"> <img
+     src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
+   >Android NDK, Revision 11b</a> <em>(March 2016)</em>
+ </p>
+ <div class="toggle-content-toggleme">
+
+    <dl>
+      <dt>NDK</dt>
+      <dd>
+      <ul>
+      <li>Important announcements
+      <ul>
+         <li>We’ve moved our bug tracker to <a href="https://github.com/android-ndk/ndk/issues">
+         GitHub.</a></li>
+     </ul>
+     </li>
+
+     <li>Changes
+        <ul>
+         <li>{@code ndk-gdb.py} is fixed. It had
+               <a href="https://github.com/android-ndk/ndk/issues/3">regressed entirely</a>
+               in r11.</li>
+               <li>{@code ndk-gdb} for Mac <a href="https://github.com/android-ndk/ndk/issues/2">
+               is fixed</a>.</li>
+               <li>Added more top-level shortcuts for command line tools:
+                  <ul>
+                     <li>{@code ndk-depends}.</li>
+                     <li>{@code ndk-gdb}.</li>
+                     <li>{@code ndk-stack}.</li>
+                     <li>{@code ndk-which}. This command had been entirely absent from previous
+                     releases.</li>
+                  </ul>
+               </li>
+               <li>Fixed standalone toolchains for libc++, which had been missing
+               {@code __cxxabi_config.h}.</li>
+               <li>Fixed help documentation for {@code --toolchain} in
+               {@code make-standalone-toolchain.sh}.</li>
+         </li>
+       </ul>
+      </dd>
+
+      <dt>Clang</dt>
+      <dd>
+      <ul>
+      <li>Errata</li>
+          <ul>
+             <li>Contrary to what we reported in the r11 Release Notes, {@code __thread}
+             does not work. This is because the version of Clang we ship is missing a bug fix for
+             emulated TLS support.</li>
+          </ul>
+      </ul>
+      </dd>
+   </dl>
+
+
+ </div>
+</div>
+
+<div class="toggle-content closed">
+<a name="11"></a>
+ <p>
+   <a href="#" onclick="return toggleContent(this)"> <img
+     src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
+   >Android NDK, Revision 11</a> <em>(March 2016)</em>
+ </p>
+ <div class="toggle-content-toggleme">
+    <dl>
+      <dt>Clang</dt>
+      <dd>
+      <ul>
+      <li>Important announcements
+      <ul>
+         <li>We strongly recommend switching to Clang.
+            <ul>
+                 <li>If you experience problems with Clang, file bugs
+         <a href="https://github.com/android-ndk/ndk/issues">here</a> for issues
+         specific to Clang in the NDK. For more general Clang issues,
+         file bugs by following the instructions on
+         <a href="http://llvm.org/docs/HowToSubmitABug.html">this page</a>.</li>
+            </ul>
+         </li>
+         <li>Clang has been updated to 3.8svn (r243773, build 2481030).
+            <ul>
+               <li>This version is a nearly pure upstream Clang.</li>
+               <li>The Windows 64-bit downloadable NDK package contains a 32-bit
+               version of Clang.</li>
+            </ul>
+         </li>
+     </ul>
+     </li>
+
+     <li>Additions
+        <ul>
+         <li>Clang now provides support for emulated TLS.
+            <ul>
+               <li>The compiler now supports {@code __thread} by emulating
+               ELF TLS with pthread thread-specific data.</li>
+               <li>C++11 {@code thread_local} works in some cases, but not
+               for data with non-trivial destructors, because those cases
+               require support from libc. This limitation does not
+               apply when running on Android 6.0 (API level 23) or newer.</li>
+               <li>Emulated TLS does not yet work with Aarch64 when
+               TLS variables are accessed from a shared library.</li>
+            </ul>
+         </li>
+       </ul>
+      </dd>
+   </dl>
+
+    <dl>
+      <dt>GCC</dt>
+      <dd>
+      <ul>
+      <li>Important announcements</li>
+          <ul>
+             <li>GCC in the NDK is now deprecated in favor of Clang.
+            <ul>
+               <li>The NDK will neither be upgrading to 5.x, nor accept
+               non-critical backports.</li>
+               <li>Maintenance for miscompiles and internal compiler errors
+               in 4.9 will be handled on a case by case basis.</li>
+            </ul>
+            </li>
+          </ul>
+      <li>Removals
+         <ul>
+         <li>Removed GCC 4.8. All targets now use GCC 4.9.</li>
+         </ul>
+       </li>
+      <li>Other changes
+         <ul>
+         <li>Synchronized google/gcc-4_9 to r224707. Previously, it had been
+         synchronized with r214835.</li>
+         </ul>
+       </li>
+       </ul>
+      </dd>
+   </dl>
+    <dl>
+      <dt>NDK</dt>
+      <dd>
+      <ul>
+      <li>Important announcements
+         <ul>
+            <li>The samples are no longer included in the NDK package.
+            They are instead available on
+            <a href="https://github.com/googlesamples/android-ndk">GitHub.</a>
+            </li>
+            <li>The documentation is no longer included in the NDK package.
+            Instead, it is on the <a href="{@docRoot}ndk/index.html">Android
+            developer website.</a></li>
+         </ul>
+      </li>
+
+      <li>Additions
+          <ul>
+         <li>Added a native tracing API to {@code android-23}.</li>
+         <li>Added a native multinetwork API to {@code android-23}.</li>
+         <li>Enabled libc, m, and dl to provide versioned symbols, starting
+         from API level 21.</li>
+         <li>Added Vulkan headers and library to API level N.</li>
+          </ul>
+       </li>
+
+      <li>Removals
+          <ul>
+         <li>Removed support for {@code _WCHAR_IS_8BIT}.</li>
+         <li>Removed sed.</li>
+         <li>Removed mclinker.</li>
+         <li>Removed Perl.</li>
+         <li>Removed from all versions of NDK libc, m, and dl all symbols which
+         the platform versions of those libs do not support.</li>
+         <li>Partially removed support for mips64r2. The rest will be removed
+         in the future.</li>
+          </ul>
+       </li>
+
+      <li>Other changes
+          <ul>
+            <li>Changed ARM standalone toolchains to default to arm7.
+               <ul>
+                  <li>You can restore the old behavior by passing specifying the
+                  {@code -target} option as {@code armv5te-linux-androideabi}.
+                  </li>
+               </ul>
+            </li>
+         <li>Changed the build system to use {@code -isystem} for platform
+         includes.
+            <ul>
+               <li>Warnings that bionic causes no longer break app builds.</li>
+            </ul>
+         </li>
+         <li>Fixed a segfault that occurred when a binary threw exceptions
+         via gabi++. (Issue <a href="http://b.android.com/179410">179410</a>)
+         </li>
+         <li>Changed libc++’s inline namespace to {@code std::__ndk1}
+         to prevent ODR issues with platform libc++.</li>
+
+         <li>All libc++ libraries are now built with libc++abi.
+         <li>Bumped default {@code APP_PLATFORM} to Gingerbread.
+            <ul>
+               <li>Expect support for Froyo and older to be dropped in a
+               future release.</ul>
+            </ul>
+         <li>Updated gabi++ {@code _Unwind_Exception} struct for 64 bits.
+         <li>Added the following capabilities to cpufeatures:
+            <ul>
+            <li>Detect SSE4.1 and SSE4.2.</li>
+            <li>Detect cpu features on x86_64.</li>
+            </ul>
+        </li>
+         <li>Updated libc++abi to upstream
+         <a href="http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20150302/124603.html">
+         r231075</a>.
+         <li>Updated {@code byteswap.h}, {@code endian.h}, {@code sys/procfs.h},
+         {@code sys/ucontext.h}, {@code sys/user.h}, and {@code uchar.h} from
+         ToT Bionic.
+         <li>Synchronized {@code sys/cdefs.h} across all API levels.
+
+         <li>Fixed {@code fegetenv and fesetenv} for arm.
+         <li>Fix end pointer size/alignment of {@code crtend_*} for mips64
+         and x86_64.
+          </ul>
+       </li>
+      </ul>
+      </ul>
+      </dd>
+   <dl>
+    <dl>
+      <dt>Binutils</dt>
+      <dd>
+      <ul>
+      <li>Additions
+         <ul>
+         <li>Added a new option: {@code --pic-veneer}.</li>
+         </ul>
+       </li>
+
+      <li>Removals
+         <ul>
+         <li>The 32-bit Windows package no longer contains ld.gold.
+         You can instead get ld.gold from the 64-bit Windows package.</li>
+         </ul>
+       </li>
+
+      <li>Changes
+          <ul>
+             <li>Unified binutils source between Android and ChromiumOS.
+             For more information on this change, see the comments
+             <a href="https://android-review.googlesource.com/#/c/182865/">
+             here.</a></li>
+             <li>Improved reliability of Gold for aarch64. Use
+             {@code -fuse-ld=gold} at link time to use gold instead of bfd.
+             The default will likely switch in the next release.</li>
+             <li>Improved linking time for huge binaries for Gold ARM back end
+             (up to 50% linking time reduction for debuggable Chrome Browser).
+             </li>
+          </ul>
+     </li>
+       </ul>
+      </dd>
+         <dl>
+    <dl>
+      <dt>GDB</dt>
+      <dd>
+      <ul>
+
+      <li>Removals
+         <ul>
+         <li>Removed ndk-gdb in favor of ndk-gdb.py.</li>
+         </ul>
+       </li>
+
+      <li>Changes
+          <ul>
+              <li>Updated gdb to version 7.10.</li>
+              <li>Improved performance.</li>
+              <li>Improved error messages.</li>
+              <li>Fixed relative project paths.</li>
+              <li>Stopped Ctrl-C from killing the backgrounded gdbserver.</li>
+              <li>Improved Windows support.</li>
+          </ul>
+     </li>
+       </ul>
+      </dd>
+
+               <dl>
+    <dl>
+      <dt>YASM</dt>
+      <dd>
+      <ul>
+
+      <li>Changes
+          <ul>
+              <li>Updated YASM to version 1.3.0.</li>
+          </ul>
+     </li>
+       </ul>
+      </dd>
+
+        <dl>
+    <dl>
+      <dt>Known issues</dt>
+      <dd>
+      <ul>
+      <li>x86 ASAN does not currently work. For more information, see the
+      discussion <a href="https://android-review.googlesource.com/#/c/186276/">
+      here.</a></li>
+      <li>The combination of Clang, x86, stlport_static, and optimization
+      levels higher than {@code -O0} causes test failures with
+      {@code dynamic_cast}. For more information, see the comments
+      <a href="https://android-review.googlesource.com/#/c/185920">here</a>.
+      </li>
+      <li>Exception handling often fails with c++_shared on ARM32. The root
+      cause is incompatibility between the LLVM unwinder that libc++abi uses
+      for ARM32 and libgcc. This behavior is not a regression from r10e.</li>
+     </ul>
+     </dd>
+   </dl>
+
+ </div>
+</div>
+
+<div class="toggle-content closed">
+<a name="10e"></a>
+ <p>
+   <a href="#" onclick="return toggleContent(this)"> <img
+     src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
+   >Android NDK, Revision 10e</a> <em>(May 2015)</em>
+ </p>
+ <div class="toggle-content-toggleme">
+    <dl>
+      <dt>Important changes:</dt>
+      <dd>
+      <ul>
+        <li>Integrated the workaround for Cortex-A53 Erratum 843419 into the
+        {@code aarch64-linux-android-4.9} linker. For more information on this workaround, see
+        <a href="https://sourceware.org/ml/binutils/2015-03/msg00446.html">Workaround for cortex-a53
+        erratum 843419.</a></li>
+
+         <li>Added Clang 3.6; {@code NDK_TOOLCHAIN_VERSION=clang} now picks that version
+         of Clang by default.</li>
+
+         <li>Removed Clang 3.4.</li>
+
+         <li>Removed GCC 4.6.</li>
+
+         <li>Implemented multithreading support in {@code ld.gold} for all architectures. It can
+         now link with or without support for multithreading; the default is to do it without.
+            <ul>
+            <li>To compile with multithreading, use the {@code --threads} option.</li>
+            <li>To compile without multithreading, use the {@code --no-threads} option.</li>
+            </ul>
+            </li>
+
+         <li>Upgraded GDB/gdbserver to 7.7 for all architectures.</li>
+
+         <li>Removed the NDK package for 32-bit Darwin.</li>
+      </ul>
+      </dd>
+   <dl>
+
+
+     <dt>Important bug fixes:</dt>
+     <dd>
+     <ul>
+        <li>Fixed a crash that occurred when there were OpenMP loops outside of the main thread.</li>
+
+        <li>Fixed a GCC 4.9 internal compiler error (<i>ICE</i>) that occured when the user declared
+        {@code #pragma GCC optimize ("O0")}, but had a different level of optimization specified
+        on the command line. The {@code pragma} takes precedence.</li>
+
+        <li>Fixed an error that used to produce a crash with the following error message:
+<pre>
+in add_stores, at var-tracking.c:6000
+</pre>
+        </li>
+
+        <li>Implemented a workaround for a Clang 3.5 issue in which LLVM auto-vectorization
+        generates {@code llvm.cttz.v2i64()}, an instruction with no counterpart in the ARM
+        instruction set.</li>
+     </ul>
+     </dd>
+
+     <dt>Other bug fixes:</dt>
+     <dd>
+     <ul>
+        <li>Made the following header and library fixes:</li>
+           <ul>
+           <li>Fixed {@code PROPERTY_*} in {@code media/NdkMediaDrm.h}.</li>
+           <li>Fixed {@code sys/ucontext.h} for {@code mips64}.</li>
+           <li>Dropped the Clang version check for {@code __builtin_isnan} and
+           {@code __builtin_isinf}.</li>
+           <li>Added {@code android-21/arch-mips/usr/include/asm/reg.h}
+           and {@code android-21/arch-mips64/usr/include/asm/reg.h}.</li>
+           </ul>
+           </li>
+
+        <li>Fixed a spurious array-bounds warning that GCC 4.9 produced for x86, and reenabled the
+        array bounds warning that GCC 4.9 had produced for ARM. The warning for ARM had
+        previously been unconditionally disabled.</li>
+
+        <li>Fixed Clang 3.5 for {@code mips} and {@code mips64} to create a writable
+            {@code .gcc_except_table} section, thus matching GCC behavior. This change allows you
+            to avoid the following linker warning:
+
+<pre>
+.../ld: warning: creating a DT_TEXTREL in a shared object
+</pre>
+            </li>
+
+        <li>Backported a fix for {@code compiler-rt} issues that were causing crashes when Clang
+        compiled for {@code mips64}. For more information, see LLVM Issue
+        <a href="http://llvm.org/bugs/show_bug.cgi?id=20098">20098</a>.</li>
+
+        <li>Fixed Clang 3.5 crashes that occurred on non-ASCII comments. (Issue
+        <a href="https://code.google.com/p/android/issues/detail?id=81440">81440</a>)</li>
+
+        <li>Fixed {@code stlport collate::compare} to return {@code -1} and {@code 1}. Previously,
+        it had returned arbitrary signed numbers.</li>
+
+        <li>Fixed {@code ndk-gdb} for 64-bit ABIs. (Issue
+        <a href="https://code.google.com/p/android/issues/detail?id=118300">118300</a>)</li>
+
+        <li>Fixed the crash that the HelloComputeNDK sample for RenderScript was producing on
+        Android 4.4 (Android API level 19). For more information, see
+        <a href="http://stackoverflow.com/questions/28057049/targeting-pre-lollipop-devices-using-renderscript-from-ndk-c">this page</a>.</li>
+
+        <li>Fixed {@code libc++ __wrap_iter} for GCC. For more information, see LLVM Issue
+        <a href="http://llvm.org/bugs/show_bug.cgi?id=22355">22355</a>.</li>
+
+        <li>Fixed {@code .asm} support for ABI {@code x86_64}.</li>
+
+        <li>Implemented a workaround for the GCC 4.8 {@code stlport} issue. (Issue
+        <a href="https://android-review.googlesource.com/#/c/127773">127773</a>)</li>
+
+        <li>Removed the trailing directory separator {@code \\} from the project path in Windows.
+        (Issue <a href="https://code.google.com/p/android/issues/detail?id=160584">160584</a>)
+        </li>
+
+        <li>Fixed a {@code no rule to make target} error that occurred when compiling a single
+        {@code .c} file by executing the {@code ndk-build.cmd} command from {@code gradle}. (Issue
+        <a href="https://code.google.com/p/android/issues/detail?id=66937">66937</a>)</li>
+
+        <li>Added the {@code libatomic.a} and {@code libgomp.a} libraries that had been missing from
+        the following host toolchains:
+        <ul>
+           <li>{@code aarch64-linux-android-4.9}</li>
+           <li>{@code mips64el-linux-android-4.9}</li>
+           <li>{@code mipsel-linux-android-4.9}</li>
+           <li>{@code x86_64-4.9}</li>
+        </ul>
+     </ul>
+     </dd>
+
+     <dt>Other changes:</dt>
+     <dd>
+       <ul>
+       <li>Added {@code ld.gold} for {@code aarch64}. The default linker remains {@code ld.bfd}.
+       To explicitly enable {@code ld.gold}, add {@code -fuse-ld=gold} to the
+       {@code LOCAL_LDFLAGS} or {@code APP_LDFLAGS} variable.</li>
+
+       <li>Built the MIPS and MIPS64 toolchains with {@code binutils-2.25}, which provides improved
+       R6 support.</li>
+
+       <li>Made {@code -fstandalone-debug} (full debug info) a default option for Clang.</li>
+
+       <li>Replaced {@code -fstack-protector} with {@code -fstack-protector-strong} for
+       the ARM, AArch64, X86, and X86_64 toolchains for GCC 4.9, Clang 3.5, and
+       Clang 3.6.</li>
+
+       <li>Added the {@code --package} command-line switch to {@code ndk-gdb} to allow the build
+       system to override the package name. (Issue
+       <a href="https://code.google.com/p/android/issues/detail?id=56189">56189</a>)</li>
+
+       <li> Deprecated {@code -mno-ldc1-stc1} for MIPS.  This option may not work with the new
+       {@code -fpxx} and {@code -mno-odd-spreg} options, or with the FPXX ABI.</li>
+
+       <li>Added MIPS MSA and R6 detection to {@code cpu-features}.</li>
+
+     </ul>
+     </dd>
+   </dl>
+
+ </div>
+</div>
+
 <div class="toggle-content closed">
 <a name="10d"></a>
  <p>
    <a href="#" onclick="return toggleContent(this)"> <img
-     src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+     src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
    >Android NDK, Revision 10d</a> <em>(December 2014)</em>
  </p>
  <div class="toggle-content-toggleme">
@@ -136,7 +627,7 @@
 <a name="10c"></a>
  <p>
    <a href="#" onclick="return toggleContent(this)"> <img
-     src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+     src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
    >Android NDK, Revision 10c</a> <em>(October 2014)</em>
  </p>
  <div class="toggle-content-toggleme">
@@ -323,7 +814,7 @@
 <a name="10b"></a>
  <p>
    <a href="#" onclick="return toggleContent(this)"> <img
-     src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+     src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
    >Android NDK, Revision 10b</a> <em>(September 2014)</em>
  </p>
  <div class="toggle-content-toggleme">
@@ -394,7 +885,7 @@
 <a name="10"></a>
  <p>
    <a href="#" onclick="return toggleContent(this)"> <img
-     src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+     src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
    >Android NDK, Revision 10</a> <em>(July 2014)</em>
  </p>
  <div class="toggle-content-toggleme">
@@ -571,7 +1062,7 @@
 <a name="9d"></a>
  <p>
    <a href="#" onclick="return toggleContent(this)"> <img
-     src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+     src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
    >Android NDK, Revision 9d</a> <em>(March 2014)</em>
  </p>
  <div class="toggle-content-toggleme">
@@ -758,7 +1249,7 @@
 <a name="9c"></a>
  <p>
    <a href="#" onclick="return toggleContent(this)"> <img
-     src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+     src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
    >Android NDK, Revision 9c</a> <em>(December 2013)</em>
  </p>
  <div class="toggle-content-toggleme">
@@ -882,7 +1373,7 @@
 <a name="9b"></a>
   <p>
     <a href="#" onclick="return toggleContent(this)"> <img
-      src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+      src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
     >Android NDK, Revision 9b</a> <em>(October 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1045,7 +1536,7 @@
 <a name="9"></a>
   <p>
     <a href="#" onclick="return toggleContent(this)"> <img
-      src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+      src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
     >Android NDK, Revision 9</a> <em>(July 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1321,7 +1812,7 @@
 <div class="toggle-content closed">
 <a name="lower"></a>
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 8e</a> <em>(March 2013)</em>
   </p>
 
@@ -1540,7 +2031,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 8d</a> <em>(December 2012)</em>
   </p>
 
@@ -1706,7 +2197,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 8c</a> <em>(November 2012)</em>
   </p>
 
@@ -2019,7 +2510,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 8b</a> <em>(July 2012)</em>
   </p>
 
@@ -2214,7 +2705,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 8</a> <em>(May 2012)</em>
   </p>
 
@@ -2287,7 +2778,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 7c</a> <em>(April 2012)</em>
   </p>
 
@@ -2341,7 +2832,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 7b</a> <em>(February 2012)</em>
   </p>
 
@@ -2452,7 +2943,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 7</a> <em>(November 2011)</em>
   </p>
 
@@ -2756,7 +3247,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 6b</a> <em>(August 2011)</em>
   </p>
 
@@ -2790,7 +3281,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 6</a> <em>(July 2011)</em>
   </p>
 
@@ -2844,7 +3335,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 5c</a> <em>(June 2011)</em>
   </p>
 
@@ -2930,7 +3421,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 5b</a> <em>(January 2011)</em>
   </p>
 
@@ -2991,7 +3482,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 5</a> <em>(December 2010)</em>
   </p>
 
@@ -3082,7 +3573,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 4b</a> <em>(June 2010)</em>
   </p>
 
@@ -3155,7 +3646,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 3</a> <em>(March 2010)</em>
   </p>
 
@@ -3182,7 +3673,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 2</a> <em>(September 2009)</em>
   </p>
 
@@ -3207,7 +3698,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt="">Android NDK, Revision 1</a> <em>(June 2009)</em>
   </p>
 
diff --git a/docs/html/ndk/guides/_book.yaml b/docs/html/ndk/guides/_book.yaml
new file mode 100644
index 0000000..fdcfe46
--- /dev/null
+++ b/docs/html/ndk/guides/_book.yaml
@@ -0,0 +1,65 @@
+toc:
+- title: Getting Started
+  path: /ndk/guides/index.html
+  section:
+  - title: Setup
+    path: /ndk/guides/setup.html
+  - title: Concepts
+    path: /ndk/guides/concepts.html
+
+- title: Building
+  path: /ndk/guides/build.html
+  section:
+  - title: Android.mk
+    path: /ndk/guides/android_mk.html
+  - title: Application.mk
+    path: /ndk/guides/application_mk.html
+  - title: ndk-build
+    path: /ndk/guides/ndk-build.html
+  - title: Standalone Toolchain
+    path: /ndk/guides/standalone_toolchain.html
+
+- title: Architectures and CPUs
+  path: /ndk/guides/arch.html
+  section:
+  - title: ABI Management
+    path: /ndk/guides/abis.html
+  - title: NEON
+    path: /ndk/guides/cpu-arm-neon.html
+  - title: x86
+    path: /ndk/guides/x86.html
+  - title: x86-64
+    path: /ndk/guides/x86-64.html
+  - title: MIPS
+    path: /ndk/guides/mips.html
+  - title: The cpufeatures Library
+    path: /ndk/guides/cpu-features.html
+
+- title: Debugging
+  path: /ndk/guides/debug.html
+  section:
+  - title: ndk-gdb
+    path: /ndk/guides/ndk-gdb.html
+  - title: ndk-stack
+    path: /ndk/guides/ndk-stack.html
+
+- title: Libraries
+  path: /ndk/guides/libs.html
+  section:
+  - title: Prebuilt Libraries
+    path: /ndk/guides/prebuilts.html
+  - title: C++ Support
+    path: /ndk/guides/cpp-support.html
+  - title: Stable APIs
+    path: /ndk/guides/stable_apis.html
+
+- title: Audio
+  path: /ndk/guides/audio/index.html
+  section:
+  - title: Basics
+    path: /ndk/guides/audio/basics.html
+  - title: OpenSL ES for Android
+    path: /ndk/guides/audio/opensl-for-android.html
+
+- title: Graphics
+  path: /ndk/guides/graphics/index.html
diff --git a/docs/html/ndk/guides/abis.jd b/docs/html/ndk/guides/abis.jd
index 7b1a7ad..e5c65ef 100644
--- a/docs/html/ndk/guides/abis.jd
+++ b/docs/html/ndk/guides/abis.jd
@@ -364,16 +364,17 @@
 ABI</a></li>
 </ul>
 
-<p>The MIPS-specific documentation is available
-<a href="http://www.imgtec.com/mips/architectures/mips32.asp">here</a>, with
-further information
-<a href="https://sourcery.mentor.com/sgpp/lite/mips/portal/target_arch?@action=faq&amp;target_arch=MIPS">here</a>.</p>
+<p>For more specific details, see
+<a href="http://www.imgtec.com/mips/architectures/mips32/">MIPS32 Architecture</a>.
+Answers to common questions are in the
+<a href="https://sourcery.mentor.com/sgpp/lite/mips/portal/target_arch?@action=faq&amp;target_arch=MIPS">MIPS FAQ</a>.
+</p>
 </li>
 </ul>
 
 <h3 id="mips64">mips64</h3>
 <p>This ABI is for MIPS64 R6. For more information, see
-<a href="http://www.imgtec.com/mips/architectures/mips64.asp">MIPS64 Architecture</a>.</p>
+<a href="http://www.imgtec.com/mips/architectures/mips64/">MIPS64 Architecture</a>.</p>
 
 <h2 id="gc">Generating Code for a Specific ABI</h2>
 <p>By default, the NDK generates machine code for the armeabi ABI. You can
diff --git a/docs/html/ndk/guides/audio/basics.jd b/docs/html/ndk/guides/audio/basics.jd
new file mode 100644
index 0000000..a5f0ff5
--- /dev/null
+++ b/docs/html/ndk/guides/audio/basics.jd
@@ -0,0 +1,125 @@
+page.title=OpenSL ES™ Basics
+@jd:body
+
+<div id="qv-wrapper">
+    <div id="qv">
+      <h2>On this page</h2>
+
+      <ol>
+        <li><a href="#adding">Adding OpenSL ES to Your App</a></li>
+        <li><a href="#building">Building and Debugging</a></li>
+        <li><a href="#samples">Samples</a></li>
+      </ol>
+    </div>
+  </div>
+
+
+<p>
+The Khronos Group's OpenSL ES standard exposes audio features
+similar to those in the {@link android.media.MediaPlayer} and {@link android.media.MediaRecorder}
+APIs in the Android Java framework. OpenSL ES provides a C language interface as well as
+C++ bindings, allowing you to call it from code written in either language.
+</p>
+
+<p>
+This page describes how to add these audio APIs into your app's source code, and how to incorporate
+them into the build process.
+</p>
+
+<h2 id="adding">Adding OpenSL ES to your App</h2>
+
+<p>
+You can call OpenSL ES from both C and C++ code. To add the core OpenSL ES
+feature set to your app, include the {@code OpenSLES.h} header file:
+
+</p>
+<pre>
+#include &lt;SLES/OpenSLES.h&gt;
+</pre>
+
+<p>
+To add the OpenSL ES <a href="{@docRoot}ndk/guides/audio/opensl-for-android.html#ae">
+Android extensions</a> as well, include the {@code OpenSLES_Android.h} header file:
+</p>
+<pre>
+#include &lt;SLES/OpenSLES_Android.h&gt;
+</pre>
+
+
+<h2 id="building">Building and Debugging</h2>
+
+<p>
+You can incorporate OpenSL ES into your build by specifying it in the
+<a href="{@docRoot}ndk/guides/android_mk.html">{@code Android.mk}</a> file that serves as one of the
+NDK build system's makefiles. Add the following line to
+<a href="{@docRoot}ndk/guides/android_mk.html">{@code Android.mk}</a>:
+</p>
+
+<pre>
+LOCAL_LDLIBS += -lOpenSLES
+</pre>
+
+<p>
+For robust debugging, we recommend that you examine the {@code SLresult} value that most of
+the OpenSL ES APIs return. You can use
+<a class="external-link" href="http://en.wikipedia.org/wiki/Assertion_(computing)">asserts</a>
+or more advanced error-handling logic for debugging; neither offers
+an inherent advantage for working with OpenSL ES, although one or the other might be more suitable
+for a given use case.
+</p>
+
+<p>
+We use asserts in our <a href="https://github.com/googlesamples/android-ndk">examples</a>, because
+they help catch unrealistic conditions that would indicate a coding error. We have used explicit
+error handling for other conditions more likely to occur in production.
+</p>
+
+<p>
+Many API errors result in a log entry, in addition to a non-zero result code. Such log entries
+can provide additional detail that proves especially useful for relatively complex APIs such as
+<a class="external-link" href="https://www.khronos.org/registry/sles/specs/OpenSL_ES_Specification_1.1.pdf">
+{@code Engine::CreateAudioPlayer}</a>.
+</p>
+
+<p>
+You can view the log either from the command line or from Android Studio. To examine the log from
+the command line, type the following:
+</p>
+
+<pre class="no-pretty-print">
+$ adb logcat
+</pre>
+
+<p>
+To examine the log from Android Studio, either click the <em>Logcat</em> tab in the
+<a href="{@docRoot}tools/debugging/debugging-studio.html#runDebug"><em>Debug</em></a>
+window, or click the <em>Devices | logcat</em> tab in the
+<a href="{@docRoot}tools/debugging/debugging-studio.html#systemLogView"><em>Android DDMS</em></a>
+window.
+</p>
+
+<h2 id="samples">Samples</h2>
+
+<p>
+Supported and tested example code that you can use as a model for your own code resides both locally
+and on GitHub. The local examples are located in
+{@code platforms/android-9/samples/native-audio/}, under your NDK root installation directory.
+On GitHub, they are available from the
+<a class="external-link" href="https://github.com/googlesamples/android-ndk">{@code android-ndk}</a>
+repository, in the
+<a class="external-link" href="https://github.com/googlesamples/android-ndk/tree/master/audio-echo">
+{@code audio-echo}</a> and
+<a class="external-link" href="https://github.com/googlesamples/android-ndk/tree/master/native-audio">
+{@code native-audio}</a> directories.
+</p>
+<p>The Android NDK implementation of OpenSL ES differs
+from the reference specification for OpenSL ES 1.0.1 in a number of respects.
+These differences are an important reason as to why sample code that
+you copy directly from the OpenSL ES reference specification may not work in your
+Android app.
+</p>
+<p>
+For more information on differences between the reference specification and the
+Android implementation, see
+<a href="{@docRoot}ndk/guides/audio/opensl-for-android.html">
+OpenSL ES™ for Android</a>.
diff --git a/docs/html/ndk/guides/audio/index.jd b/docs/html/ndk/guides/audio/index.jd
new file mode 100644
index 0000000..ac6e539
--- /dev/null
+++ b/docs/html/ndk/guides/audio/index.jd
@@ -0,0 +1,15 @@
+page.title=NDK Audio: OpenSL ES&#8482
+@jd:body
+
+<p>The NDK package includes an Android-specific implementation of the
+<a href="https://www.khronos.org/opensles/">OpenSL ES</a> API
+specification from the <a href="https://www.khronos.org">Khronos Group</a>. This library
+allows you to use C or C++ to implement high-performance, low-latency audio in your game or other
+demanding app.</p>
+
+<p>This section begins by providing some
+<a href="{@docRoot}ndk/guides/audio/basics.html">basic information</a> about the API, including how
+to incorporate it into your app. It then explains what you need to know about the
+<a href="{@docRoot}ndk/guides/audio/opensl-for-android.html">Android-specific implementation</a>
+of OpenSL ES, focusing on differences between this implementation and the reference specification.
+</p>
diff --git a/docs/html/ndk/guides/audio/opensl-for-android.jd b/docs/html/ndk/guides/audio/opensl-for-android.jd
new file mode 100644
index 0000000..763da5a
--- /dev/null
+++ b/docs/html/ndk/guides/audio/opensl-for-android.jd
@@ -0,0 +1,881 @@
+page.title=Native Audio: OpenSL ES&#8482; for Android
+@jd:body
+
+<div id="qv-wrapper">
+    <div id="qv">
+      <h2>On this page</h2>
+
+      <ol>
+        <li><a href="#inherited">Features Inherited from the Reference Specification</a></li>
+        <li><a href="#ae">Android Extensions</a></li>
+      </ol>
+    </div>
+  </div>
+
+<p>
+This page provides details about how the NDK implementation of OpenSL ES™ differs
+from the reference specification for OpenSL ES 1.0.1. When using sample code from the
+specification, you may need to modify it to work on Android.
+</p>
+
+<h2 id="inherited">Features Inherited from the Reference Specification</h2>
+
+<p>
+The Android NDK implementation of OpenSL ES inherits much of the feature set from
+the reference specification, although with certain limitations.
+</p>
+
+<h3>Global entry points</h3>
+
+<p>
+OpenSL ES for Android supports all of the global entry points in the Android specification.
+These entry points include:
+</p>
+
+<ul>
+<li>{@code slCreateEngine}
+</li>
+<li>{@code slQueryNumSupportedEngineInterfaces}</code>
+</li>
+<li>{@code slQuerySupportedEngineInterfaces}</code>
+</li>
+</ul>
+
+<h3>Objects and interfaces</h3>
+
+<p>
+Table 1 shows which objects and interfaces the Android NDK implementation of
+OpenSL ES supports. Green cells indicate features available in this implementation.
+</p>
+
+<p class="table-caption" id="Objects-and-interfaces">
+  <strong>Table 1.</strong> Android NDK support for objects and interfaces.</p>
+<table>
+  <tr>
+    <th scope="col">Feature</th>
+    <th scope="col">Audio player</th>
+    <th scope="col">Audio recorder</th>
+    <th scope="col">Engine</th>
+    <th scope="col">Output mix</th>
+  </tr>
+  <tr>
+    <td>Bass boost</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>Yes</td>
+  </tr>
+  <tr>
+    <td>Buffer queue</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Dynamic interface management</td>
+    <td>Yes</td>
+    <td>Yes</td>
+    <td>Yes</td>
+    <td>Yes</td>
+  </tr>
+  <tr>
+    <td>Effect send</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Engine</td>
+    <td>No</td>
+    <td>No</td>
+    <td>Yes</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Environmental reverb</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+    <td>Yes</td>
+  </tr>
+  <tr>
+    <td>Equalizer</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>Yes</td>
+  </tr>
+  <tr>
+    <td>Metadata extraction</td>
+    <td>Yes: Decode to PCM</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Mute solo</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Object</td>
+    <td>Yes</td>
+    <td>Yes</td>
+    <td>Yes</td>
+    <td>Yes</td>
+  </tr>
+  <tr>
+    <td>Play</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Playback rate</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Prefetch status</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Preset reverb</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+    <td>Yes</td>
+  </tr>
+  <tr>
+    <td>Record</td>
+    <td>No</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Seek</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Virtualizer</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>Yes</td>
+  </tr>
+  <tr>
+    <td>Volume</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Buffer queue data locator</td>
+    <td>Yes: Source</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>I/O device data locator</td>
+    <td>No</td>
+    <td>Yes: Source</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Output mix locator</td>
+    <td>Yes: Sink</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>URI data locator</td>
+    <td>Yes: Source</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  </table>
+
+The next section explains limitations of some of these features.
+
+<h3>Limitations</h3>
+
+<p>
+Certain limitations apply to the features in Table 1. These limitations
+represent differences from the reference specification. The rest of this section provides
+information about these differences.</p>
+
+<h4>Dynamic interface management</h4>
+
+<p>
+OpenSL ES for Android does not support {@code RemoveInterface} or
+{@code ResumeInterface}.
+</p>
+
+<h4>Effect combinations: environment reverb and preset reverb</h4>
+
+<p>
+You cannot have both environmental reverb and preset reverb on the same output mix.
+</p>
+<p>
+The platform might ignore effect requests if it estimates that the
+CPU load would be too high.
+</p>
+
+<h4>Effect send</h4>
+
+<p>
+<code>SetSendLevel()</code> supports a single send level per audio player.
+</p>
+
+<h4>Environmental reverb</h4>
+
+<p>
+Environmental reverb does not support the <code>reflectionsDelay</code>,
+<code>reflectionsLevel</code>, or <code>reverbDelay</code> fields of
+the <code>SLEnvironmentalReverbSettings</code> struct.
+</p>
+
+<h4>MIME data format</h4>
+
+<p>
+You can use the MIME data format only with the URI data locator, and only for an audio
+player. You cannot use this data format for an audio recorder.
+</p>
+<p>
+The Android implementation of OpenSL ES requires you to initialize <code>mimeType</code>
+to either <code>NULL</code> or a valid UTF-8 string. You must also initialize
+<code>containerType</code> to a valid value.
+In the absence of other considerations, such as portability to other
+implementations, or content format that an app cannot identify by header,
+we recommend that you
+set <code>mimeType</code> to <code>NULL</code> and <code>containerType</code>
+to <code>SL_CONTAINERTYPE_UNSPECIFIED</code>.
+</p>
+<p>
+OpenSL ES for Android supports the following audio formats, so long as the
+Android platform supports them as well:</p>
+
+<ul>
+<li>WAV PCM</li>
+<li>WAV alaw</li>
+<li>WAV ulaw</li>
+<li>MP3 Ogg Vorbis</li>
+<li>AAC LC</li>
+<li>HE-AACv1 (AAC+)</li>
+<li>HE-AACv2 (enhanced AAC+)</li>
+<li>AMR</li>
+<li>FLAC</li>
+</ul>
+
+<p>
+For a list of audio formats that Android supports, see
+<a href="{@docRoot}guide/appendix/media-formats.html">Supported Media Formats</a>.
+</p>
+
+<p>
+The following limitations apply to handling of these and other formats in this
+implementation of OpenSL ES:
+</p>
+
+<ul>
+<li>AAC formats must be reside within an MP4 or ADTS container.</li>
+<li>OpenSL ES for Android does not support MIDI.</li>
+<li>WMA is not part of <a class="external-link" href="https://source.android.com/">AOSP</a>, and we
+have not verified its compatibility with OpenSL ES for Android.</li>
+<li>The Android NDK implementation of OpenSL ES does not support direct
+playback of DRM or encrypted content. To play back protected audio content, you must
+decrypt it in your application before playing, with your app enforcing any DRM
+restrictions.</li>
+</ul>
+
+<h4>Object-related methods</h4>
+
+<p>
+OpenSL ES for Android does not support the following methods for manipulating objects:
+</p>
+
+<ul>
+<li>{@code Resume()}</li>
+<li>{@code RegisterCallback()}</li>
+<li>{@code AbortAsyncOperation()}</li>
+<li>{@code SetPriority()}</li>
+<li>{@code GetPriority()}</li>
+<li>{@code SetLossOfControlInterfaces()}</li>
+</ul>
+
+<h4>PCM data format</h4>
+
+<p>
+PCM is the only data format you can use with buffer queues. Supported PCM
+playback configurations have the following characteristics:
+</p>
+
+<ul>
+<li>8-bit unsigned or 16-bit signed.</li>
+<li>Mono or stereo.</li>
+<li>Little-endian byte ordering.</li>
+<li>Sample rates of: 8,000, 11,025, 12,000, 16,000, 22,050, 24,000, 32,000, 44,100, or
+48,000 Hz.</li>
+</ul>
+
+<p>
+The configurations that OpenSL ES for Android supports for recording are
+device-dependent; usually, 16,000 Hz mono 16-bit signed is available regardless of device.
+</p>
+<p>
+The value of the <code>samplesPerSec</code> field is in units of milliHz, despite the misleading
+name. To avoid accidentally using the wrong value, we recommend that you initialize this field using
+one of the symbolic constants defined for this purpose, such as {@code SL_SAMPLINGRATE_44_1}.
+</p>
+<p>
+Android 5.0 (API level 21) and above support <a href="#fp">floating-point data</a>.
+</p>
+
+<h4>Playback rate</h4>
+
+<p>
+An OpenSL ES <i>playback rate</i> indicates the speed at which an
+object presents data, expressed in thousandths of normal speed, or <i>per mille</i>. For example,
+a playback rate of 1,000 per mille is 1,000/1,000, or normal speed.
+A <i>rate range</i> is a closed interval that expresses possible rate ranges.
+</p>
+
+<p>
+Support for playback-rate ranges and other capabilities may vary depending
+on the platform version and implementation. Your app can determine these capabilities at runtime by
+using <code>PlaybackRate::GetRateRange()</code> or
+<code>PlaybackRate::GetCapabilitiesOfRate()</code> to query the device.
+</p>
+
+<p>
+A device typically supports the same rate range for a data source in PCM format, and a unity rate
+range of 1000 per mille to 1000 per mille for other formats: that is, the unity rate range is
+effectively a single value.
+</p>
+
+<h4>Record</h4>
+
+<p>
+OpenSL ES for Android does not support the <code>SL_RECORDEVENT_HEADATLIMIT</code>
+or <code>SL_RECORDEVENT_HEADMOVING</code> events.
+</p>
+
+<h4>Seek</h4>
+
+<p>
+The <code>SetLoop()</code> method enables whole-file looping. To enable looping,
+set the <code>startPos</code> parameter to 0, and the value of the <code>endPos</code> parameter
+to <code>SL_TIME_UNKNOWN</code>.
+</p>
+
+<h4>Buffer queue data locator</h4>
+
+<p>
+An audio player or recorder with a data locator for a buffer queue supports PCM data format only.
+</p>
+
+<h4>I/O Device data locator</h4>
+
+<p>
+OpenSL ES for Android only supports use of an I/O device data locator when you have
+specified the locator as the data source for <code>Engine::CreateAudioRecorder()</code>.
+Initialize the device data locator using the values contained in the following code snippet.
+</p>
+
+<pre>
+SLDataLocator_IODevice loc_dev =
+  {SL_DATALOCATOR_IODEVICE, SL_IODEVICE_AUDIOINPUT,
+  SL_DEFAULTDEVICEID_AUDIOINPUT, NULL};
+</pre>
+
+<h4>URI data locator</h4>
+
+<p>
+OpenSL ES for Android can only use the URI data locator with MIME data format,
+and only for an audio player. You cannot use this data format for an audio recorder. It supports
+{@code http:} and {@code file:} schemes. It does not support other schemes, such as {@code https:},
+{@code ftp:}, or
+{@code content:}.
+</p>
+
+<p>
+We have not verified support for {@code rtsp:} with audio on the Android platform.
+</p>
+
+<h2 id="ae">Android Extensions</h2>
+
+<p>
+OpenSL ES for Android extends the reference OpenSL ES specification to make it compatible with
+Android, and to take advantage of the power and flexibility of the Android platform.
+</p>
+
+<p>
+The definition of the API for the Android extensions resides in <code>OpenSLES_Android.h</code>
+and the header files that it includes. Consult {@code OpenSLES_Android.h}
+for details about these extensions. This file is located under your installation root, in the
+{@code platforms/android-&lt;version&gt;/&lt;abi&gt;/include/SLES} directory. Unless otherwise
+noted, all interfaces are explicit.
+</p>
+
+<p>
+These extensions limit your application's portability to
+other OpenSL ES implementations, because they are Android-specific. You can mitigate this issue by
+avoiding use of the extensions or by using {@code #ifdef} to exclude them at compile time.
+</p>
+
+<p>
+Table 2 shows the Android-specific interfaces and data locators that Android OpenSL ES supports
+for each object type. Green cells indicate interfaces and data locators available for each
+object type.
+</p>
+
+<p class="table-caption" id="Android-extensions">
+  <strong>Table 2.</strong> Interfaces and data locators, by object type.</p>
+<table>
+  <tr>
+    <th scope="col">Feature</th>
+    <th scope="col">Audio player</th>
+    <th scope="col">Audio recorder</th>
+    <th scope="col">Engine</th>
+    <th scope="col">Output mix</th>
+  </tr>
+  <tr>
+    <td>Android buffer queue</td>
+    <td>Yes: Source (decode)</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Android configuration</td>
+    <td>Yes</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Android effect</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>Yes</td>
+  </tr>
+  <tr>
+    <td>Android effect capabilities</td>
+    <td>No</td>
+    <td>No</td>
+    <td>Yes</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Android effect send</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Android simple buffer queue</td>
+    <td>Yes: Source (playback) or sink (decode)</td>
+    <td>Yes</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Android buffer queue data locator</td>
+    <td>Yes: Source (decode)</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Android file descriptor data locator</td>
+    <td>Yes: Source</td>
+    <td>No</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+  <tr>
+    <td>Android simple buffer queue data locator</td>
+    <td>Yes: Source (playback) or sink (decode)</td>
+    <td>Yes: Sink</td>
+    <td>No</td>
+    <td>No</td>
+  </tr>
+</table>
+
+<h3>Android configuration interface</h3>
+
+<p>
+The Android configuration interface provides a means to set
+platform-specific parameters for objects. This interface is different from other OpenSL ES
+1.0.1 interfaces in that your app can use it before instantiating the corresponding object; thus,
+you can configure the object before instantiating it. The
+{@code OpenSLES_AndroidConfiguration.h} header file</code>, which resides at
+{@code platforms/android-&lt;version&gt;/&lt;abi&gt;/include/SLES},
+documents the following available configuration keys and values:
+</p>
+
+<ul>
+<li>Stream type for audio players (default <code>SL_ANDROID_STREAM_MEDIA</code>).</li>
+<li>Record profile for audio recorders (default <code>SL_ANDROID_RECORDING_PRESET_GENERIC</code>).
+</li>
+</ul>
+
+<p>
+The following code snippet shows an example of how to set the Android audio stream type on an audio
+player:
+</p>
+
+<pre>
+// CreateAudioPlayer and specify SL_IID_ANDROIDCONFIGURATION
+// in the required interface ID array. Do not realize player yet.
+// ...
+SLAndroidConfigurationItf playerConfig;
+result = (*playerObject)-&gt;GetInterface(playerObject,
+    SL_IID_ANDROIDCONFIGURATION, &amp;playerConfig);
+assert(SL_RESULT_SUCCESS == result);
+SLint32 streamType = SL_ANDROID_STREAM_ALARM;
+result = (*playerConfig)-&gt;SetConfiguration(playerConfig,
+    SL_ANDROID_KEY_STREAM_TYPE, &amp;streamType, sizeof(SLint32));
+assert(SL_RESULT_SUCCESS == result);
+// ...
+// Now realize the player here.
+</pre>
+
+<p>
+You can use similar code to configure the preset for an audio recorder:
+</p>
+<pre>
+// ... obtain the configuration interface as the first four lines above, then:
+SLuint32 presetValue = SL_ANDROID_RECORDING_PRESET_VOICE_RECOGNITION;
+result = (*playerConfig)-&gt;SetConfiguration(playerConfig,
+    RECORDING_PRESET, &amp;presetValue, sizeof(SLuint32));
+</pre>
+
+<h3>Android effects interfaces</h3>
+
+<p>
+Android's effect, effect send, and effect capabilities interfaces provide
+a generic mechanism for an application to query and use device-specific
+audio effects. Device manufacturers should document any available device-specific audio effects
+that they provide.
+</p>
+
+<h3>Android file descriptor data locator</h3>
+
+<p>
+The Android file descriptor data locator permits you to specify the source for an
+audio player as an open file descriptor with read access. The data format must be MIME.
+</p>
+<p>
+This extension is especially useful in conjunction with the native asset manager, because
+the app reads assets from the APK via a file descriptor.
+</p>
+
+<h3 id="simple">Android simple buffer queue data locator and interface</h3>
+
+<p>
+The Android simple buffer queue data locator and interface are
+identical to those in the OpenSL ES 1.0.1 reference specification, with two exceptions: You
+can also use Android simple buffer queues with both audio players and audio recorders.  Also, PCM
+is the only data format you can use with these queues.
+In the reference specification, buffer queues are for audio players only, but
+compatible with data formats beyond PCM.
+</p>
+<p>
+For recording, your app should enqueue empty buffers. When a registered callback sends
+notification that the system has finished writing data to the buffer, the app can
+read the buffer.
+</p>
+<p>
+Playback works in the same way. For future source code
+compatibility, however, we suggest that applications use Android simple
+buffer queues instead of OpenSL ES 1.0.1 buffer queues.
+</p>
+
+<h3>Dynamic interfaces at object creation</h3>
+
+<p>
+For convenience, the Android implementation of OpenSL ES 1.0.1
+permits your app to specify dynamic interfaces when it instantiates an object.
+This is an alternative to using <code>DynamicInterfaceManagement::AddInterface()</code>
+to add these interfaces after instantiation.
+</p>
+
+<h3>Buffer queue behavior</h3>
+
+<p>
+The Android implementation does not include the
+reference specification's requirement that the play cursor return to the beginning
+of the currently playing buffer when playback enters the {@code SL_PLAYSTATE_STOPPED}
+state. This implementation can conform to that behavior, or it can leave the location of the play
+cursor unchanged.
+</p>
+
+<p>
+As a result, your app cannot assume that either behavior occurs. Therefore,
+you should explicitly call the <code>BufferQueue::Clear()</code> method after a transition to
+<code>SL_PLAYSTATE_STOPPED</code>. Doing so sets the buffer queue to a known state.
+</p>
+
+<p>
+Similarly, there is no specification governing whether the trigger for a buffer queue callback must
+be a transition to <code>SL_PLAYSTATE_STOPPED</code> or execution of
+<code>BufferQueue::Clear()</code>. Therefore, we recommend against creating a dependency on
+one or the other; instead, your app should be able to handle both.
+</p>
+
+<h3>Reporting of extensions</h3>
+<p>
+There are three methods for querying whether the platform supports the Android extensions. These
+methods are:
+</p>
+
+<ul>
+<li><code>Engine::QueryNumSupportedExtensions()</code></li>
+<li><code>Engine::QuerySupportedExtension()</code></li>
+<li><code>Engine::IsExtensionSupported()</code></li>
+</ul>
+
+<p>
+Any of these methods returns <code>ANDROID_SDK_LEVEL_&lt;API-level&gt;</code>,
+where {@code API-level} is the platform API level; for example, {@code ANDROID_SDK_LEVEL_23}.
+A platform API level of 9 or higher means that the platform supports the extensions.
+</p>
+
+
+<h3 id="da">Decode audio to PCM</h3>
+
+<p>
+This section describes a deprecated Android-specific extension to OpenSL ES 1.0.1
+for decoding an encoded stream to PCM without immediate playback.
+The table below gives recommendations for use of this extension and alternatives.
+</p>
+
+<table>
+<tr>
+  <th>API level</th>
+  <th>Alternatives</th>
+</tr>
+<tr>
+  <td>13 and below</td>
+  <td>An open-source codec with a suitable license.</td>
+</tr>
+<tr>
+  <td>14 to 15</td>
+  <td>An open-source codec with a suitable license.</td>
+</tr>
+<tr>
+  <td>16 to 20</td>
+  <td>
+    The {@link android.media.MediaCodec} class or an open-source codec with a suitable license.
+  </td>
+</tr>
+<tr>
+  <td>21 and above</td>
+  <td>
+    NDK MediaCodec in the {@code &lt;media/NdkMedia*.h&gt;} header files, the
+    {@link android.media.MediaCodec} class, or an open-source codec with a suitable license.
+  </td>
+</tr>
+</table>
+
+<p>
+A standard audio player plays back to an audio device, specifying the output mix as the data sink.
+The Android extension differs in that an audio player instead
+acts as a decoder if the app has specified the data source either as a URI or as an Android
+file descriptor data locator described in MIME data format. In such a case, the data sink is
+an Android simple buffer queue data locator with PCM data format.
+</p>
+
+<p>
+This feature is primarily intended for games to pre-load their audio assets when changing to a
+new game level, similar to the functionality that the {@link android.media.SoundPool} class
+provides.
+</p>
+
+<p>
+The application should initially enqueue a set of empty buffers in the Android simple
+buffer queue. After that, the app fills the buffers with with PCM data. The Android simple
+buffer queue callback fires after each buffer is filled. The callback handler processes
+the PCM data, re-enqueues the now-empty buffer, and then returns. The application is responsible for
+keeping track of decoded buffers; the callback parameter list does not include
+sufficient information to indicate which buffer contains data or which buffer to enqueue next.
+</p>
+
+<p>
+The data source implicitly reports the end of stream (EOS) by delivering a
+<code>SL_PLAYEVENT_HEADATEND</code> event at the end of the stream. After the app has decoded
+all of the data it received, it makes no further calls to the Android simple buffer queue callback.
+</p>
+<p>
+The sink's PCM data format typically matches that of the encoded data source
+with respect to sample rate, channel count, and bit depth. However, you can decode to a different
+sample rate, channel count, or bit depth.
+For information about a provision to detect the actual PCM format, see <a href="#meta">
+Determining the format of decoded PCM data via metadata</a>.
+</p>
+<p>
+OpenSL ES for Android's PCM decoding feature supports pause and initial seek; it does not support
+volume control, effects, looping, or playback rate.
+</p>
+<p>
+Depending on the platform implementation, decoding may require resources
+that cannot be left idle.  Therefore, we recommend that you make sure to provide
+sufficient numbers of empty PCM buffers; otherwise, the decoder starves. This may happen,
+for example, if your app returns from the Android simple buffer queue callback without
+enqueueing another empty buffer.  The result of decoder starvation is
+unspecified, but may include: dropping the decoded
+PCM data, pausing the decoding process, or terminating the decoder outright.
+</p>
+
+<p class="note"><strong>Note: </strong>
+To decode an encoded stream to PCM but not play back immediately, for apps running on
+Android 4.x (API levels 16&ndash;20), we recommend using the {@link android.media.MediaCodec} class.
+For new applications running on Android 5.0 (API level 21) or higher, we recommend using the NDK
+equivalent, {@code &lt;NdkMedia*.h&gt;}. These header files reside under
+the {@code media/} directory, under your installation root.
+</p>
+
+<h3>Decode streaming ADTS AAC to PCM</h3>
+
+<p>
+An audio player acts as a streaming decoder if the data source is an
+Android buffer queue data locator with MIME data format, and the data
+sink is an Android simple buffer queue data locator with PCM data format.
+Configure the MIME data format as follows:
+</p>
+
+<ul>
+<li>Container: {@code SL_CONTAINERTYPE_RAW}</li>
+<li>MIME type string: {@code SL_ANDROID_MIME_AACADTS}</li>
+</ul>
+
+<p>
+This feature is primarily intended for streaming media applications that
+deal with AAC audio but need to perform custom audio processing
+prior to playback.  Most applications that need to decode audio to PCM
+should use the method that <a href="#da">Decode audio to PCM</a> describes,
+as that method is simpler and handles more audio formats.  The technique described
+here is a more specialized approach, to be used only if both of these
+conditions apply:
+</p>
+
+<ul>
+<li>The compressed audio source is a stream of AAC frames contained in ADTS headers.
+</li>
+<li>The application manages this stream. The data is <em>not</em> located within
+a network resource whose identifier is a URI or within a local file whose identifier is
+a file descriptor.
+</li>
+</ul>
+
+<p>
+The application should initially enqueue a set of filled buffers in the Android buffer queue.
+Each buffer contains one or more complete ADTS AAC frames.
+The Android buffer queue callback fires after each buffer is emptied.
+The callback handler should refill and re-enqueue the buffer, and then return.
+The application need not keep track of encoded buffers; the callback parameter
+list includes sufficient information to indicate which buffer to enqueue next.
+The end of stream is explicitly marked by enqueuing an EOS item.
+After EOS, no more enqueues are permitted.
+</p>
+
+<p>
+We recommend that you make sure to provide full
+ADTS AAC buffers, to avoid starving the decoder. This may happen, for example, if your app
+returns from the Android buffer queue callback without enqueueing another full buffer.
+The result of decoder starvation is unspecified.
+</p>
+
+<p>
+In all respects except for the data source, the streaming decode method is the same as
+the one that <a href="#da">Decode audio to PCM</a> describes.
+</p>
+<p>
+Despite the similarity in names, an Android buffer queue is <em>not</em>
+the same as an <a href="#simple">Android simple buffer queue</a>. The streaming decoder
+uses both kinds of buffer queues: an Android buffer queue for the ADTS
+AAC data source, and an Android simple buffer queue for the PCM data
+sink.  For more information about the Android simple buffer queue API, see <a href="#simple">Android
+simple buffer queue data locator and interface</a>.
+For more information about the Android buffer queue API, see the {@code index.html} file in
+the {@code docs/Additional_library_docs/openmaxal/} directory under the installation root.
+</p>
+
+<h3 id="meta">Determining the format of decoded PCM data via metadata</h3>
+
+<p>
+The <code>SLMetadataExtractionItf</code> interface is part of the reference specification.
+However, the metadata keys that indicate the actual format of decoded PCM data are specific to
+Android. The <code>OpenSLES_AndroidMetadata.h</code> header file defines these metadata keys.
+This header file resides under your installation root, in the
+{@code platforms/android-&lt;version&gt;/&lt;abi&gt;/include/SLES} directory.
+</p>
+
+<p>
+The metadata key indices are available immediately after
+the <code>Object::Realize()</code> method finishes executing. However, the associated values are not
+available until after the app decodes the first encoded data.  A good
+practice is to query for the key indices in the main thread after calling the {@code
+Object::Realize} method, and to read the PCM format metadata values in the Android simple
+buffer queue callback handler when calling it for the first time. Consult the
+<a href="https://github.com/googlesamples/android-ndk">example code in the NDK package</a>
+for examples of working with this interface.
+</p>
+
+<p>
+Metadata key names are stable, but the key indices are not documented,
+and are subject to change.  An application should not assume that indices
+are persistent across different execution runs, and should not assume that
+multiple object instances share indices within the same run.
+</p>
+
+<h3 id="fp">Floating-point data</h3>
+
+<p>
+An app running on Android 5.0 (API level 21) and higher can supply data to an AudioPlayer in
+single-precision, floating-point format.
+</p>
+<p>
+In following example code, the {@code Engine::CreateAudioPlayer} method creates an audio player
+that uses floating-point data:
+</p>
+
+<pre>
+#include &lt;SLES/OpenSLES_Android.h&gt;
+...
+SLAndroidDataFormat_PCM_EX pcm;
+pcm.formatType = SL_ANDROID_DATAFORMAT_PCM_EX;
+pcm.numChannels = 2;
+pcm.sampleRate = SL_SAMPLINGRATE_44_1;
+pcm.bitsPerSample = 32;
+pcm.containerSize = 32;
+pcm.channelMask = SL_SPEAKER_FRONT_LEFT | SL_SPEAKER_FRONT_RIGHT;
+pcm.endianness = SL_BYTEORDER_LITTLEENDIAN;
+pcm.representation = SL_ANDROID_PCM_REPRESENTATION_FLOAT;
+...
+SLDataSource audiosrc;
+audiosrc.pLocator = ...
+audiosrc.pFormat = &amp;pcm;
+</pre>
diff --git a/docs/html/ndk/guides/concepts.jd b/docs/html/ndk/guides/concepts.jd
old mode 100644
new mode 100755
index 9f2b22a..7879219
--- a/docs/html/ndk/guides/concepts.jd
+++ b/docs/html/ndk/guides/concepts.jd
@@ -18,12 +18,9 @@
 
 <h2 id="bb">Before Beginning</h2>
 
-<p>This guide assumes that you are:</p>
-<ul>
-<li>Already familiar with concepts inherent in native programming and in
-<a href="{@docRoot}">Android development</a>.</li>
-<li>Working in <a href="{@docRoot}sdk/index.html">Eclipse, and using the Android
-Development Tools (ADT)</a>, except where otherwise noted.</li>
+<p>This guide assumes that you are already familiar with concepts inherent in native programming and 
+in <a href="{@docRoot}developer/index.html">Android development</a>.</p>
+
 </ul>
 <h2 id="intro">Introduction</h2>
 
@@ -151,15 +148,13 @@
 <p class="note"><strong>Note:</strong> While it is possible to completely avoid Java, you are likely
 to find the Android Java framework useful for tasks including controlling the display and UI.</p>
 </li>
-
-<li>Create an Android app Project in Eclipse as you would for any other Android project.</li>
+<li>Create an Android app Project as you would for any other Android project.</li>
 <li>If you are writing a native-only app, declare the {@link android.app.NativeActivity} class in
-{@code AndroidManifest.xml}. You can do so from the Eclipse/ADT Android Manifest Editor, or by
-hand-editing the file. For more information, see the <a href="#naa">Native Activities and
+{@code AndroidManifest.xml}. For more information, see the <a href="#naa">Native Activities and
 Applications</a>.
 </li>
 <li>Create an {@code Android.mk} file describing the native library, including name, flags, linked
-libraries, and source files to be compiled in the ‘JNI’ directory.</li>
+libraries, and source files to be compiled in the "JNI" directory.</li>
 <li>Optionally, you can create an {@code Application.mk} file configuring the target ABIs,
 toolchain, release/debug mode, and STL. For any of these that you do not specify, the following
 default values are used, respectively:
@@ -184,7 +179,6 @@
 needed for your app to run.
 </ol>
 
-<p>Note that Eclipse can perform steps 7. through 9. in a single operation.</p>
 
 <h2 id="naa">Native Activities and Applications</h2>
 
@@ -300,7 +294,7 @@
 $ &lt;ndk&gt;/ndk-build
 </pre>
 
-<li>Build and install your Android project as usual, using Ant or Eclipse. If your native code is in
+<li>Build and install your Android project as usual. If your native code is in
 the {@code jni/} directory, the build script automatically packages the {@code .so} file(s) built
 from it into the APK.</li>
 </ol>
diff --git a/docs/html/ndk/guides/graphics/index.jd b/docs/html/ndk/guides/graphics/index.jd
new file mode 100644
index 0000000..f3cf9dc
--- /dev/null
+++ b/docs/html/ndk/guides/graphics/index.jd
@@ -0,0 +1,22 @@
+page.title=Vulkan Graphics API
+@jd:body
+
+<p>
+<a class="external-link" href="https://www.khronos.org/vulkan/">Vulkan</a> is a
+low-overhead, cross-platform API for high-performance, 3D graphics. Like OpenGL
+ES, Vulkan provides tools for creating high-quality, real-time graphics in
+applications. Vulkan also provides advantages such as reducing
+CPU overhead and providing support for the
+<a class="external-link" href="https://www.khronos.org/spir">SPIR-V Binary
+Intermediate language</a>.
+</p>
+
+<p>
+For general information about this cross-platform API specification, see
+Khronos's
+<a class="external-link" href="http://khr.io/vulkanlaunchoverview">
+Vulkan Overview</a>.
+You can also keep up with the latest Vulkan-related developments at the
+Vulkan
+<a class="external-link" href="https://www.khronos.org/#slider_vulkan">news page</a>.
+</p>
diff --git a/docs/html/ndk/guides/guides_toc.cs b/docs/html/ndk/guides/guides_toc.cs
index 981eb51..2f31b4b 100644
--- a/docs/html/ndk/guides/guides_toc.cs
+++ b/docs/html/ndk/guides/guides_toc.cs
@@ -63,6 +63,23 @@
       </ul>
    </li>
 
+      <li class="nav-section">
+      <div class="nav-section-header"><a href="<?cs var:toroot ?>ndk/guides/audio/index.html">
+      <span class="en">Audio</span></a></div>
+      <ul>
+      <li><a href="<?cs var:toroot ?>ndk/guides/audio/basics.html">Basics</a></li>
+      <li><a href="<?cs var:toroot ?>ndk/guides/audio/opensl-for-android.html">OpenSL ES for
+      Android</a></li>
+      </ul>
+   </li>
+
+      <li class="nav-section">
+      <div class="nav-section-header empty">
+      <a href="<?cs var:toroot ?>ndk/guides/graphics/index.html">
+      <span class="en">Graphics</span></a></div>
+   </li>
+
+
 </ul>
 
 
diff --git a/docs/html/ndk/guides/mips.jd b/docs/html/ndk/guides/mips.jd
old mode 100644
new mode 100755
index 2b4eea4..d104ffe
--- a/docs/html/ndk/guides/mips.jd
+++ b/docs/html/ndk/guides/mips.jd
@@ -40,4 +40,4 @@
 <h2 id="comp">Compatibility</h2>
 <p>MIPS support requires, at minimum, Android 2.3 (Android API level 9). If your project files
 target an older API level, but include MIPS as a targeted platform, the NDK build script
-automatically selects the right set of native platform headers/libraries for you.</p>
\ No newline at end of file
+automatically selects the right set of native platform headers/libraries for you.</p>
diff --git a/docs/html/ndk/guides/ndk-build.jd b/docs/html/ndk/guides/ndk-build.jd
old mode 100644
new mode 100755
index e8f6fc5..e653bf5
--- a/docs/html/ndk/guides/ndk-build.jd
+++ b/docs/html/ndk/guides/ndk-build.jd
@@ -8,7 +8,6 @@
       <ol>
         <li><a href="#int">Internals</a></li>
          <li><a href="#ifc">Invoking from the Command Line</a></li>
-         <li><a href="#ife">Invoking from Eclipse</a></li>
          <li><a href="#6432">64-Bit and 32-Bit Toolchains</a></li>
          <li><a href="#req">Requirements</a></li>
           </ol>
@@ -85,29 +84,6 @@
   don't want to {@code cd} to it in your terminal.</dd>
 </dl>
 
-<h2 id="ife">Invoking from Eclipse</h2>
-<p>To build from Eclipse, make sure that you have configured it as described in
-<a href="{@docRoot}ndk/guides/setup.html#configure">Setup</a>. If you
-wish to build using the default <code>ndk-build</code> command, with no
-options, you can just build your project just as you would any Android project.
-To get Eclipse to add any of the options described above, follow these steps:</p>
-<ol type="1">
-<li>In the <em>Project Explorer</em> pane, right-click your project name.</li>
-<li>Select <strong>Properties</strong>.</li>
-<li>Click <strong>C/C++ Build</strong>.</li>
-<li>Under the <em>Builder Settings</em> tab, uncheck <strong>Use default build command</strong>.</li>
-<li>In the <em>Build command</em> field, enter the entire build string as if you were typing it on
-the command line.</li>
-<li>Click <strong>OK</strong>.</li>
-</ol>
-Figure 1 shows an example of an entered string.<br>
-<br>
-<img src="./images/NDK_build_string.png"
-    srcset="./images/NDK_build_string@2x.png 2x"
-    alt="enter the build string next to 'Build command'"
-    height="152" width="501">
-<p style="clear:both"><b>Figure 1.</b> Specifying a debug build from within
-Eclipse</p>
 <p><a class="anchor" id="dvr"></a> </p>
 <h3>Debuggable versus Release builds</h3>
 <p>Use the <code>NDK_DEBUG</code> option and, in certain cases,
diff --git a/docs/html/ndk/guides/ndk-gdb.jd b/docs/html/ndk/guides/ndk-gdb.jd
old mode 100644
new mode 100755
index 5e2b751..1a990f0
--- a/docs/html/ndk/guides/ndk-gdb.jd
+++ b/docs/html/ndk/guides/ndk-gdb.jd
@@ -27,15 +27,13 @@
 {@code <application>} element that sets the {@code android:debuggable} attribute to {@code
 true}.</li>
 <li>Build your app to run on Android 2.2 (Android API level 8) or higher.</li>
-<li>Debug on a device or emulator running Android 2.2 or higher. For debugging purposes, the target
+<li>Debug on a device or emulator running Android 2.2 or higher.
+ For debugging purposes, the target
 API level that you declare in your {@code AndroidManifest.xml} file does not matter.</li>
 <li>Develop your app in a Unix shell. On Windows, use <a href="https://www.cygwin.com/">Cygwin</a>
 or the experimental {@code ndk-gdb-py} <a href="https://www.python.org/">Python</a>
 implementation.</li>
-<li>Use GNU Make 3.81 or higher.</li>
-<li>If you are building your app from
-<a href="{@docRoot}sdk/installing/installing-adt.html">Eclipse</a>, build it
-using version 0.9.7 or higher of the ADT plug-in.</li>
+<li>Use GNU Make 3.81 or higher.</li></ul>
 
 <h2 id="use">Usage</h2>
   To invoke the {@code ndk-gdb} script, change into the application directory or any directory under
@@ -224,14 +222,6 @@
 cannot debug native threads properly. The debugger can only debug the main thread, abd completely
 ignores the execution of other threads.</p>
 
-<p>Using a version of Android prior to 2.3 causes {@code ndk-gdb} to display the following message
-prior to showing the GDB prompt:</p>
-
-<pre class="no-pretty-print">
-Thread debugging is unsupported on this Android platform!
-</pre>
-
-
 <p>If you place a breakpoint on a function executed on a non-main thread, the program exits, and
 GDB displays the following message:</p>
 
diff --git a/docs/html/ndk/guides/standalone_toolchain.jd b/docs/html/ndk/guides/standalone_toolchain.jd
old mode 100644
new mode 100755
index aec7073..7a6f906
--- a/docs/html/ndk/guides/standalone_toolchain.jd
+++ b/docs/html/ndk/guides/standalone_toolchain.jd
@@ -17,7 +17,7 @@
   </div>
 
 <p>You can use the toolchains provided with the Android NDK independently, or as plug-ins
-with an existing IDE, such as Eclipse. This flexibility
+with an existing IDE. This flexibility
 can be useful if you already have your own build system, and only need the ability to invoke the
 cross-compiler in order to add support to Android for it.</p>
 
diff --git a/docs/html/ndk/index.jd b/docs/html/ndk/index.jd
index a88c15d..fc1c595 100644
--- a/docs/html/ndk/index.jd
+++ b/docs/html/ndk/index.jd
@@ -40,11 +40,12 @@
     <i class="dac-sprite dac-arrow-down-gray"></i>
   </a>
 </div>
-<section class="dac-section dac-gray dac-small dac-invert" id="latest"><div class="wrap">
+<section class="dac-section dac-gray dac-small" id="latest"><div class="wrap">
   <h2 class="norule">Latest</h2>
   <div class="resource-widget resource-flow-layout col-16"
        data-query="type:blog+tag:ndk"
        data-cardSizes="6x6"
        data-maxResults="9"
+       data-items-per-page="6"
        data-initial-results="3"></div>
 </div></section>
diff --git a/docs/html/ndk/reference/_book.yaml b/docs/html/ndk/reference/_book.yaml
new file mode 100644
index 0000000..ab8b8f9
--- /dev/null
+++ b/docs/html/ndk/reference/_book.yaml
@@ -0,0 +1,60 @@
+toc:
+- title: Asset Manager
+  path: /ndk/reference/group___asset.html
+  section:
+  - title: asset_manager.h
+    path: /ndk/reference/asset__manager_8h.html
+  - title: asset_manager_jni.h
+    path: /ndk/reference/asset__manager__jni_8h.html
+
+- title: Bitmap
+  path: /ndk/reference/group___bitmap.html
+  section:
+  - title: bitmap.h
+    path: /ndk/reference/bitmap_8h.html
+
+- title: Configuration
+  path: /ndk/reference/group___configuration.html
+  section:
+  - title: configuration.h
+    path: /ndk/reference/configuration_8h.html
+
+- title: Input
+  path: /ndk/reference/group___input.html
+  section:
+  - title: input.h
+    path: /ndk/reference/input_8h.html
+  - title: keycodes.h
+    path: /ndk/reference/keycodes_8h.html
+
+- title: Looper
+  path: /ndk/reference/group___looper.html
+  section:
+  - title: looper.h
+    path: /ndk/reference/looper_8h.html
+
+- title: Native Activity and Window
+  path: /ndk/reference/group___native_activity.html
+  section:
+  - title: native_activity.h
+    path: /ndk/reference/native__activity_8h.html
+  - title: native_window.h
+    path: /ndk/reference/native__window_8h.html
+  - title: native_window.h
+    path: /ndk/reference/native__window__jni_8h.html
+  - title: rect.h
+    path: /ndk/reference/rect_8h.html
+
+- title: Sensor
+  path: /ndk/reference/group___sensor.html
+  section:
+  - title: sensor.h
+    path: /ndk/reference/sensor_8h.html
+
+- title: Storage Manager
+  path: /ndk/reference/group___storage.html
+  section:
+  - title: storage_manager.h
+    path: /ndk/reference/storage__manager_8h.html
+  - title: obb.h
+    path: /ndk/reference/obb_8h.html
diff --git a/docs/html/ndk/samples/_book.yaml b/docs/html/ndk/samples/_book.yaml
new file mode 100644
index 0000000..3665f5a
--- /dev/null
+++ b/docs/html/ndk/samples/_book.yaml
@@ -0,0 +1,13 @@
+toc:
+- title: Overview
+  path: /ndk/samples/index.html
+
+- title: Walkthroughs
+  path: /ndk/samples/walkthroughs.html
+  section:
+  - title: hello-jni
+    path: /ndk/samples/sample_hellojni.html
+  - title: native-activity
+    path: /ndk/samples/sample_na.html
+  - title: Teapot
+    path: /ndk/samples/sample_teapot.html
diff --git a/docs/html/preview/_book.yaml b/docs/html/preview/_book.yaml
new file mode 100644
index 0000000..e4f1aba
--- /dev/null
+++ b/docs/html/preview/_book.yaml
@@ -0,0 +1,94 @@
+toc:
+- title: Program Overview
+  path: /preview/overview.html
+  custom_link_attributes:
+  - es-lang="Información general del programa"
+  - ja-lang="プログラム概要"
+  - ko-lang="프로그램 개요"
+  - pt-br-lang="Visão geral do programa"
+  - ru-lang="Обзор программы"
+  - zh-cn-lang="计划概览"
+  - zh-tw-lang="程式總覽"
+
+- title: Support and Release Notes
+  path: /preview/support.html
+
+- title: Set Up to Develop
+  path: /preview/setup-sdk.html
+  custom_link_attributes:
+  - es-lang="Configurar el SDK de la versión preliminar"
+  - ja-lang="Preview SDK のセットアップ"
+  - ko-lang="미리 보기 SDK 설정하기"
+  - pt-br-lang="Configuração do Preview SDK"
+  - ru-lang="Настройка пакета SDK Preview"
+  - zh-cn-lang="设置预览版 SDK"
+  - zh-tw-lang="設定預覽版 SDK"
+
+- title: Test on a Device
+  path: /preview/download.html
+
+- title: Behavior Changes
+  path: /preview/behavior-changes.html
+  custom_link_attributes:
+  - es-lang="Cambios en los comportamientos"
+  - ja-lang="動作の変更点"
+  - ko-lang="동작 변경"
+  - pt-br-lang="Mudanças de comportamento"
+  - ru-lang="Изменения в работе"
+  - zh-cn-lang="行为变更"
+  - zh-tw-lang="行為變更"
+  section:
+  - title: Background Optimizations
+    path: /preview/features/background-optimization.html
+  - title: Language and Locale
+    path: /preview/features/multilingual-support.html
+
+- title: Android N for Developers
+  path: /preview/api-overview.html
+  custom_link_attributes:
+  - es-lang="Información general de la API"
+  - ja-lang="API の概要"
+  - ko-lang="API 개요"
+  - pt-br-lang="Visão geral da API"
+  - ru-lang="Обзор API-интерфейсов"
+  - zh-cn-lang="API 概览"
+  - zh-tw-lang="API 總覽"
+  section:
+  - title: Multi-Window Support
+    path: /preview/features/multi-window.html
+  - title: Notifications
+    path: /preview/features/notification-updates.html
+  - title: Data Saver
+    path: /preview/features/data-saver.html
+  - title: TV Recording
+    path: /preview/features/tv-recording-api.html
+  - title: Network Security Configuration
+    path: /preview/features/security-config.html
+  - title: ICU4J Support
+    path: /preview/features/icu4j-framework.html
+  - title: Java 8 Language Features
+    path: /preview/j8-jack.html
+  - title: Android for Work Updates
+    path: /preview/features/afw.html
+
+- title: Samples
+  path: /preview/samples.html
+  custom_link_attributes:
+  - es-lang="Ejemplos"
+  - ja-lang="サンプル"
+  - ko-lang="샘플"
+  - pt-br-lang="Exemplos"
+  - ru-lang="Примеры"
+  - zh-cn-lang="示例"
+  - zh-tw-lang="範例"
+
+- title: License Agreement
+  path: /preview/license.html
+  custom_link_attributes:
+  - es-lang="Contrato de licencia"
+  - ja-lang="使用許諾契約"
+  - ko-lang="라이선스 계약"
+  - pt-br-lang="Contrato de licença"
+  - ru-lang="Лицензионное соглашение"
+  - zh-cn-lang="许可协议"
+  - zh-tw-lang="授權協議"
diff --git a/docs/html/preview/api-overview.jd b/docs/html/preview/api-overview.jd
index 599dc1e..478f068 100644
--- a/docs/html/preview/api-overview.jd
+++ b/docs/html/preview/api-overview.jd
@@ -1,569 +1,703 @@
-page.title=API Overview
-page.keywords=preview,sdk,compatibility
-page.tags=previewresources, androidm
-sdk.platform.apiLevel=22-mnc
-page.image=images/cards/card-api-overview_16-9_2x.png
+page.title=Android N for Developers
+meta.tags="preview", "androidn"
+page.tags="preview", "developer preview"
+page.image=images/cards/card-n-apis_2x.png
 @jd:body
 
 
+
+
 <div id="qv-wrapper">
 <div id="qv">
-
-<h2>In this document
-    <a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
-        <span class="more">show more</span>
-        <span class="less" style="display:none">show less</span></a></h2>
-
-<ol id="toc44" class="hide-nested">
-  <li><a href="#app-linking">App Linking</a></li>
-  <li><a href="#backup">Auto Backup for Apps</a></li>
-  <li><a href="#authentication">Authentication</a>
-    <ol>
-      <li><a href="#fingerprint-authentication">Fingerprint Authentication</a></li>
-      <li><a href="#confirm-credential">Confirm Credential</a></li>
-    </ol>
-  </li>
-  <li><a href="#direct-share">Direct Share</a></li>
-  <li><a href="#voice-interactions">Voice Interactions</a></li>
-  <li><a href="#assist">Assist API</a></li>
-  <li><a href="#notifications">Notifications</a></li>
-  <li><a href="#bluetooth-stylus">Bluetooth Stylus Support</a></li>
-  <li><a href="#ble-scanning">Improved Bluetooth Low Energy Scanning</a></li>
-  <li><a href="#hotspot">Hotspot 2.0 Release 1 Support</a></li>
-  <li><a href="#4K-display">4K Display Mode</a></li>
-  <li><a href="#behavior-themeable-colorstatelists">Themeable ColorStateLists</a></li>
-  <li><a href="#audio">Audio Features</a></li>
-  <li><a href="#video">Video Features</a></li>
-  <li><a href="#camera">Camera Features</a>
-    <ol>
-      <li><a href="#flashlight">Flashlight API</a></li>
-      <li><a href="#reprocessing">Camera Reprocessing</a></li>
-    </ol>
-  </li>
-  <li><a href="#afw">Android for Work Features</a></li>
-</ol>
-
-<h2>API Differences</h2>
-<ol>
-<li><a href="{@docRoot}sdk/api_diff/23/changes.html">API level 22 to 23 (Preview 3) &raquo;</a> </li>
-</ol>
-
+  <h2>Key developer features</h2>
+  <ol>
+      <ul style="list-style-type:none;">
+        <li><a href="#multi-window_support">Multi-window support</a></li>
+        <li><a href="#notification_enhancements">Notifications</a></li>
+        <li><a href="#jit_aot">JIT/AOT compilation</a></li>
+        <li><a href="#quick_path_to_app_install">Quick path to app install</a></li>
+        <li><a href="#doze_on_the_go">Doze on the go</a></li>
+        <li><a href="#background_optimizations">Background optimizations</a></li>
+        <li><a href="#data_saver">Data Saver</a></li>
+        <li><a href="#tile_api">Quick Settings Tile API</a></li>
+        <li><a href="#number-blocking">Number-blocking</a></li>
+        <li><a href="#call_screening">Call screening</a></li>
+        <li><a href="#multi-locale_languages">Locales and languages</a></li>
+        <li><a href="#icu4">ICU4J APIs in Android</a></li>
+        <li><a href="#gles_32">OpenGL ES 3.2 API</a></li>
+        <li><a href="#android_tv_recording">Android TV recording</a></li>
+        <li><a href="#android_for_work">Android for Work</a></li>
+        <li><a href="#accessibility_enhancements">Accessibility</a></li>
+        <li><a href="#direct_boot">Direct Boot</a></li>
+        <li><a href="#key_attestation">Key Attestation</a></li>
+        <li><a href="#network_security_config">Network Security Config</a></li>
+        <li><a href="#default_trusted_ca">Default Trusted CA</a></li>
+        <li><a href="apk_signature_v2">APK signature scheme v2</a></li>
+        <li><a href="#scoped_directory_access">Scoped directory access</a></li>
+      </ol>
 </div>
 </div>
 
-<p>The M Developer Preview gives you an advance look at the upcoming release
-for the Android platform, which offers new features for users and app
-developers. This document provides an introduction to the most notable APIs.</p>
+
+
+<p>Android N is still in active development, but you can try it
+now as part of the N Developer Preview. The sections below highlight some of
+the new features for developers. </p>
 
 <p>
-  The M Developer Preview 3 release includes the <strong>final APIs for Android 6.0 (API level
-  23)</strong>. If you are preparing an app for use on Android 6.0,
-  <a href="{@docRoot}preview/setup-sdk.html">download the latest SDK</a> and to complete your
-  final updates and release testing. You can review the final APIs in the
-  <a href="{@docRoot}reference/packages.html">API Reference</a> and see the API differences in
-  the <a href="{@docRoot}sdk/api_diff/23/changes.html">Android API Differences Report</a>.
+  Make sure to check out the <a href=
+  "{@docRoot}preview/behavior-changes.html">Behavior Changes</a> to learn about
+  areas where platform changes may affect your apps, take a look at the
+  developer guides to learn more about key features, and download the <a href=
+  "{@docRoot}preview/setup-sdk.html#docs-dl">API Reference</a> for details on
+  new APIs.
 </p>
 
-</p>
+<h2 id="multi-window_support">Multi-window support</h2>
 
-<p class="caution"><strong>Important:</strong>
-  You may now publish apps that target Android 6.0 (API level 23) to the Google Play store.
-</p>
 
-<p class="note"><strong>Note:</strong>
-  If you have been working with previous preview releases and want to see the differences
-  between the final API and previous preview versions, download the additional difference
-  reports included in the <a href="{@docRoot}preview/download.html#docs">preview docs
-  reference</a>.
-</p>
+<p>In Android N, we're introducing a new and much-requested multitasking feature
+into the platform &mdash; multi-window support. </p>
 
-<h3>Important behavior changes</h3>
-
-<p>If you have previously published an app for Android, be aware that your app might be affected
-by changes in the platform.</p>
-
-<p>Please see <a href="behavior-changes.html">Behavior Changes</a> for complete information.</p>
-
-<h2 id="app-linking">App Linking</h2>
-<p>This preview enhances Android’s intent system by providing more powerful app linking.
-This feature allows you to associate an app with a web domain you own. Based on this
-association, the platform can determine the default app to use to handle a particular
-web link and skip prompting users to select an app. To learn how to implement this feature, see
-<a href="{@docRoot}preview/features/app-linking.html">App Linking</a>.
-
-<h2 id="backup">Auto Backup for Apps</h2>
-<p>The system now performs automatic full data backup and restore for apps. For the
-duration of the <a href="{@docRoot}preview/overview.html">M Developer Preview program</a>, all
-apps are backed up, independent of which SDK version they target. After the final M SDK release,
-your app must target M to enable this behavior; you do not need to add any additional code. If users
-delete their Google accounts, their backup data is deleted as well. To learn how this feature
-works and how to configure what to back up on the file system, see
-<a href="{@docRoot}preview/backup/index.html">Auto Backup for Apps</a>.</p>
-
-<h2 id="authentication">Authentication</h2>
-<p>This preview offers new APIs to let you authenticate users by using their fingerprint scans on
-supported devices, and check how recently the user was last authenticated using a device unlocking
-mechanism (such as a lockscreen password). Use these APIs in conjunction with
-the <a href="{@docRoot}training/articles/keystore.html">Android Keystore system</a>.</p>
-
-<h3 id="fingerprint-authentication">Fingerprint Authentication</h3>
-
-<p>To authenticate users via fingerprint scan, get an instance of the new
-{@link android.hardware.fingerprint.FingerprintManager} class and call the
-{@link android.hardware.fingerprint.FingerprintManager#authenticate(android.hardware.fingerprint.FingerprintManager.CryptoObject, android.os.CancellationSignal, int, android.hardware.fingerprint.FingerprintManager.AuthenticationCallback, android.os.Handler) authenticate()}
-method. Your app must be running on a compatible
-device with a fingerprint sensor. You must implement the user interface for the fingerprint
-authentication flow on your app, and use the standard Android fingerprint icon in your UI.
-The Android fingerprint icon ({@code c_fp_40px.png}) is included in the
-<a href="https://github.com/googlesamples/android-FingerprintDialog"
-class="external-link">sample app</a>. If you are developing multiple apps that use fingerprint
-authentication, note that each app must authenticate the user’s fingerprint independently.
-</p>
-
-<p>To use this feature in your app, first add the
-  {@link android.Manifest.permission#USE_FINGERPRINT} permission in your manifest.</p>
-
-<pre>
-&lt;uses-permission
-        android:name="android.permission.USE_FINGERPRINT" /&gt;
-</pre>
-<img src="{@docRoot}preview/images/fingerprint-screen.png"
-srcset="{@docRoot}preview/images/fingerprint-screen.png 1x, {@docRoot}preview/images/fingerprint-screen_2x.png 2x"
-style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-
-<p>To see an app implementation of fingerprint authentication, refer to the
-<a href="https://github.com/googlesamples/android-FingerprintDialog" class="external-link">
-  Fingerprint Dialog sample</a>. For a demonstration of how you can use these authentication
-  APIs in conjunction with other Android APIs, see the video
-  <a class="video-shadowbox-button" href="https://www.youtube.com/watch?v=VOn7VrTRlA4">
-  Fingerprint and Payment APIs</a>.</p>
-
-<p>If you are testing this feature, follow these steps:</p>
-<ol>
-<li>Install Android SDK Tools Revision 24.3, if you have not done so.</li>
-<li>Enroll a new fingerprint in the emulator by going to
-<strong>Settings > Security > Fingerprint</strong>, then follow the enrollment instructions.</li>
-<li>Use an emulator to emulate fingerprint touch events with the
-following command. Use the same command to emulate fingerprint touch events on the lockscreen or
-in your app.
-<pre class="no-prettyprint">
-adb -e emu finger touch &lt;finger_id&gt;
-</pre>
-<p>On Windows, you may have to run {@code telnet 127.0.0.1 <emulator-id>} followed by
-  {@code finger touch <finger_id>}.
-</p>
-</li>
-</ol>
-
-<h3 id="confirm-credential">Confirm Credential</h3>
-<p>Your app can authenticate users based on how recently they last unlocked their device. This
-feature frees users from having to remember additional app-specific passwords, and avoids the need
-for you to implement your own authentication user interface. Your app should use this feature in
-conjunction with a public or secret key implementation for user authentication.</p>
-
-<p>To set the timeout duration for which the same key can be re-used after a user is successfully
-authenticated, call the new
-{@link android.security.keystore.KeyGenParameterSpec.Builder#setUserAuthenticationValidityDurationSeconds(int) setUserAuthenticationValidityDurationSeconds()}
-method when you set up a {@link javax.crypto.KeyGenerator} or
-{@link java.security.KeyPairGenerator}.</p>
-
-<p>Avoid showing the re-authentication dialog excessively -- your apps should try using the
-cryptographic object first and if the the timeout expires, use the
-{@link android.app.KeyguardManager#createConfirmDeviceCredentialIntent(java.lang.CharSequence, java.lang.CharSequence) createConfirmDeviceCredentialIntent()}
-method to re-authenticate the user within your app.
-</p>
-
-<p>To see an app implementation of this feature, refer to the
-<a href="https://github.com/googlesamples/android-ConfirmCredential" class="external-link">
-  Confirm Credential sample</a>.</p>
-
-<h2 id="direct-share">Direct Share</h2>
-
-<img src="{@docRoot}preview/images/direct-share-screen.png"
-srcset="{@docRoot}preview/images/direct-share-screen.png 1x, {@docRoot}preview/images/direct-share-screen_2x.png 2x"
-style="float:right; margin:0 0 20px 30px" width="312" height="329" />
-
-<p>This preview provides you with APIs to make sharing intuitive and quick for users. You can now
-define <em>direct share targets</em> that launch a specific activity in your app. These direct share
-targets are exposed to users via the <em>Share</em> menu. This feature allows users to share
-content to targets, such as contacts, within other apps. For example, the direct share target might
-launch an activity in another social network app, which lets the user share content directly to a
-specific friend or community in that app.</p>
-
-<p>To enable direct share targets you must define a class that extends the
-{@link android.service.chooser.ChooserTargetService} class. Declare your
-service in the manifest. Within that declaration, specify the
-{@link android.Manifest.permission#BIND_CHOOSER_TARGET_SERVICE} permission and an
-intent filter using the
-{@link android.service.chooser.ChooserTargetService#SERVICE_INTERFACE SERVICE_INTERFACE} action.</p>
-<p>The following example shows how you might declare the
-{@link android.service.chooser.ChooserTargetService} in your manifest.</p>
-<pre>
-&lt;service android:name=".ChooserTargetService"
-        android:label="&#64;string/service_name"
-        android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE"&gt;
-    &lt;intent-filter&gt;
-        &lt;action android:name="android.service.chooser.ChooserTargetService" /&gt;
-    &lt;/intent-filter&gt;
-&lt;/service&gt;
-</pre>
-
-<p>For each activity that you want to expose to
-{@link android.service.chooser.ChooserTargetService}, add a
-{@code <meta-data>} element with the name
-{@code "android.service.chooser.chooser_target_service"} in your app manifest.
-</p>
-
-<pre>
-&lt;activity android:name=".MyShareActivity”
-        android:label="&#64;string/share_activity_label"&gt;
-    &lt;intent-filter>
-        &lt;action android:name="android.intent.action.SEND" /&gt;
-    &lt;/intent-filter>
-&lt;meta-data
-        android:name="android.service.chooser.chooser_target_service"
-        android:value=".ChooserTargetService" /&gt;
-&lt;/activity>
-</pre>
-
-<h2 id="voice-interactions">Voice Interactions</h2>
-<p>
-This preview provides a new voice interaction API which, together with
-<a href="https://developers.google.com/voice-actions/" class="external-link">Voice Actions</a>,
-allows you to build conversational voice experiences into your apps. Call the
-{@link android.app.Activity#isVoiceInteraction()} method to determine if a voice action triggered
-your activity. If so, your app can use the
-{@link android.app.VoiceInteractor} class to request a voice confirmation from the user, select
-from a list of options, and more.</p>
-
-<p>Most voice interactions originate from a user voice action. A voice interaction activity can
-also, however, start without user input. For example, another app launched through a voice
-interaction can also send an intent to launch a voice interaction. To determine if your activity
-launched from a user voice query or from another voice interaction app, call the
-{@link android.app.Activity#isVoiceInteractionRoot()} method. If another app launched your
-activity, the method returns {@code false}. Your app may then prompt the user to confirm that
-they intended this action.</p>
-
-<p>To learn more about implementing voice actions, see the
-<a href="https://developers.google.com/voice-actions/interaction/"
-class="external-link">Voice Actions developer site</a>.
-</p>
-
-<h2 id="assist">Assist API</h2>
-<p>
-This preview offers a new way for users to engage with your apps through an assistant. To use this
-feature, the user must enable the assistant to use the current context. Once enabled, the user
-can summon the assistant within any app, by long-pressing on the <strong>Home</strong> button.</p>
-<p>Your app can elect to not share the current context with the assistant by setting the
-{@link android.view.WindowManager.LayoutParams#FLAG_SECURE} flag. In addition to the
-standard set of information that the platform passes to the assistant, your app can share
-additional information by using the new {@link android.app.assist.AssistContent} class.</p>
-
-<p>To provide the assistant with additional context from your app, follow these steps:</p>
-
-<ol>
-<li>Implement the {@link android.app.Application.OnProvideAssistDataListener} interface.</li>
-<li>Register this listener by using
-{@link android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener) registerOnProvideAssistDataListener()}.</li>
-<li>In order to provide activity-specific contextual information, override the
-{@link android.app.Activity#onProvideAssistData(android.os.Bundle) onProvideAssistData()}
-callback and, optionally, the new
-{@link android.app.Activity#onProvideAssistContent(android.app.assist.AssistContent) onProvideAssistContent()}
-callback.
-</ol>
-
-<h2 id="notifications">Notifications</h2>
-<p>This preview adds the following API changes for notifications:</p>
-<ul>
-  <li>New {@link android.app.NotificationManager#INTERRUPTION_FILTER_ALARMS} filter level that
-    corresponds to the new <em>Alarms only</em> do not disturb mode.</li>
-  <li>New {@link android.app.Notification#CATEGORY_REMINDER} category value that is used to
-  distinguish user-scheduled reminders from other events
-  ({@link android.app.Notification#CATEGORY_EVENT}) and alarms
-  ({@link android.app.Notification#CATEGORY_ALARM}).</li>
-  <li>New {@link android.graphics.drawable.Icon} class that you can attach to your notifications
-  via the
-  {@link android.app.Notification.Builder#setSmallIcon(android.graphics.drawable.Icon) setSmallIcon()}
-  and {@link android.app.Notification.Builder#setLargeIcon(android.graphics.drawable.Icon) setLargeIcon()}
-  methods. Similarly, the
-  {@link android.app.Notification.Builder#addAction(int, java.lang.CharSequence, android.app.PendingIntent)
-  addAction()} method now accepts an {@link android.graphics.drawable.Icon} object instead of a
-  drawable resource ID.</li>
-  <li>New {@link android.app.NotificationManager#getActiveNotifications()} method that allows your
-  apps to find out which of their notifications are currently alive. To see an app implementation
-  that uses this feature, see the <a href="https://github.com/googlesamples/android-ActiveNotifications"
-  class="external-link">Active Notifications sample</a>.</li>
-</ul>
-
-<h2 id="bluetooth-stylus">Bluetooth Stylus Support</h2>
-<p>This preview provides improved support for user input using a Bluetooth stylus. Users can pair
-and connect a compatible Bluetooth stylus with their phone or tablet.  While connected, position
-information from the touch screen is fused with pressure and button information from the stylus to
-provide a greater range of expression than with the touch screen alone. Your app can listen for
-stylus button presses and perform secondary actions, by registering
-{@link android.view.View.OnContextClickListener} and
-{@link android.view.GestureDetector.OnContextClickListener} objects in your activity.</p>
-
-<p>Use the {@link android.view.MotionEvent} methods and constants to detect stylus button
-interactions:</p>
-<ul>
-<li>If the user touches a stylus with a button on the screen of your app, the
-{@link android.view.MotionEvent#getToolType(int) getTooltype()} method returns
-{@link android.view.MotionEvent#TOOL_TYPE_STYLUS}.</li>
-<li>For apps targeting M Preview, the
-{@link android.view.MotionEvent#getButtonState() getButtonState()}
-method returns {@link android.view.MotionEvent#BUTTON_STYLUS_PRIMARY} when the user
-presses the primary stylus button. If the stylus has a second button, the same method returns
-{@link android.view.MotionEvent#BUTTON_STYLUS_SECONDARY} when the user presses it. If the user presses
-both buttons simultaneously, the method returns both values OR'ed together
-({@link android.view.MotionEvent#BUTTON_STYLUS_PRIMARY}|{@link android.view.MotionEvent#BUTTON_STYLUS_SECONDARY}).</li>
-<li>
-For apps targeting a lower platform version, the
-{@link android.view.MotionEvent#getButtonState() getButtonState()} method returns
-{@link android.view.MotionEvent#BUTTON_SECONDARY} (for primary stylus button press),
-{@link android.view.MotionEvent#BUTTON_TERTIARY} (for secondary stylus button press), or both.
-</li>
-</ul>
-
-<h2 id="ble-scanning">Improved Bluetooth Low Energy Scanning</h2>
-<p>
-If your app performs performs Bluetooth Low Energy scans, use the new
-{@link android.bluetooth.le.ScanSettings.Builder#setCallbackType(int) setCallbackType()}
-method to specify that you want the system to notify callbacks when it first finds, or sees after a
-long time, an advertisement packet matching the set {@link android.bluetooth.le.ScanFilter}. This
-approach to scanning is more power-efficient than what’s provided in the previous platform version.
-</p>
-
-<h2 id="hotspot">Hotspot 2.0 Release 1 Support</h2>
-<p>
-This preview adds support for the Hotspot 2.0 Release 1 spec on Nexus 6 and Nexus 9 devices. To
-provision Hotspot 2.0 credentials in your app, use the new methods of the
-{@link android.net.wifi.WifiEnterpriseConfig} class, such as
-{@link android.net.wifi.WifiEnterpriseConfig#setPlmn(java.lang.String) setPlmn()} and
-{@link android.net.wifi.WifiEnterpriseConfig#setRealm(java.lang.String) setRealm()}. In the
-{@link android.net.wifi.WifiConfiguration} object, you can set the
-{@link android.net.wifi.WifiConfiguration#FQDN} and the
-{@link android.net.wifi.WifiConfiguration#providerFriendlyName} fields.
-The new {@link android.net.wifi.ScanResult#isPasspointNetwork()} method indicates if a detected
-network represents a Hotspot 2.0 access point.
-</p>
-
-<h2 id="4K-display">4K Display Mode</h2>
-<p>The platform now allows apps to request that the display resolution be upgraded to 4K rendering
-on compatible hardware. To query the current physical resolution, use the new
-{@link android.view.Display.Mode} APIs. If the UI is drawn at a lower logical resolution and is
-upscaled to a larger physical resolution, be aware that the physical resolution the
-{@link android.view.Display.Mode#getPhysicalWidth()} method returns may differ from the logical
-resolution reported by {@link android.view.Display#getSize(android.graphics.Point) getSize()}.</p>
-
-<p>You can request the system to change the physical resolution in your app as it runs, by setting
-the {@link android.view.WindowManager.LayoutParams#preferredDisplayModeId} property of your app’s
-window.  This feature is useful if you want to switch to 4K display resolution. While in 4K display
-mode, the UI continues to be rendered at the original resolution (such as 1080p) and is upscaled to
-4K, but {@link android.view.SurfaceView} objects may show content at the native resolution.</p>
-
-<h2 id="behavior-themeable-colorstatelists">Themeable ColorStateLists</h2>
-<p>Theme attributes are now supported in
-{@link android.content.res.ColorStateList} for devices running the M Preview. The
-{@link android.content.res.Resources#getColorStateList(int) getColorStateList()} and
-{@link android.content.res.Resources#getColor(int) getColor()} methods have been deprecated. If
-you are calling these APIs, call the new
-{@link android.content.Context#getColorStateList(int) getColorStateList()} or
-{@link android.content.Context#getColor(int) getColor()} methods instead. These methods are also
-available in the v4 appcompat library via {@link android.support.v4.content.ContextCompat}.</p>
-
-<h2 id="audio">Audio Features</h2>
-
-<p>This preview adds enhancements to audio processing on Android, including: </p>
-<ul>
-  <li>Support for the <a href="http://en.wikipedia.org/wiki/MIDI" class="external-link">MIDI</a>
-protocol, with the new {@link android.media.midi} APIs. Use these APIs to send and receive MIDI
-events.</li>
-  <li>New {@link android.media.AudioRecord.Builder} and {@link android.media.AudioTrack.Builder}
-classes to create digital audio capture and playback objects respectively, and configure audio
-source and sink properties to override the system defaults.</li>
-  <li>API hooks for associating audio and input devices. This is particularly useful if your app
-allows users to start a voice search from a game controller or remote control connected to Android
-TV. The system invokes the new
-{@link android.app.Activity#onSearchRequested(android.view.SearchEvent) onSearchRequested()}
-callback when the user starts a search. To determine if the user's input device has a built-in
-microphone, retrieve the {@link android.view.InputDevice} object from that callback, then call the
-new {@link android.view.InputDevice#hasMicrophone()} method.</li>
-  <li>New {@link android.media.AudioManager#getDevices(int) getDevices()} method which lets you
-retrieve a list of all audio devices currently connected to the system. You can also register an
-{@link android.media.AudioDeviceCallback} object if you want the system to notify your app
-when an audio device connects or disconnects.</li>
-</ul>
-
-<h2 id="video">Video Features</h2>
-<p>This preview adds new capabilities to the video processing APIs, including:</p>
-<ul>
-<li>New {@link android.media.MediaSync} class which helps applications to synchronously render
-audio and video streams. The audio buffers are submitted in non-blocking fashion and are
-returned via a callback. It also supports dynamic playback rate.
-</li>
-<li>New {@link android.media.MediaDrm#EVENT_SESSION_RECLAIMED} event, which indicates that a
-session opened by the app has been reclaimed by the resource manager. If your app uses DRM sessions,
-you should handle this event and make sure not to use a reclaimed session.
-</li>
-<li>New {@link android.media.MediaCodec.CodecException#ERROR_RECLAIMED} error code, which indicates
-that the resource manager reclaimed the media resource used by the codec. With this exception, the
-codec must be released, as it has moved to terminal state.
-</li>
-<li>New {@link android.media.MediaCodecInfo.CodecCapabilities#getMaxSupportedInstances()
-getMaxSupportedInstances()} interface to get a hint for the max number of the supported
-concurrent codec instances.
-</li>
-<li>New {@link android.media.MediaPlayer#setPlaybackParams(android.media.PlaybackParams)
-setPlaybackParams()} method to set the media playback rate for fast or
-slow motion playback. It also stretches or speeds up the audio playback automatically in
-conjunction with the video.</li>
-</ul>
-
-<h2 id="camera">Camera Features</h2>
-<p>This preview includes the following new APIs for accessing the camera’s flashlight and for
-camera reprocessing of images:</p>
-
-<h3 id="flashlight">Flashlight API</h3>
-<p>If a camera device has a flash unit, you can call the
-{@link android.hardware.camera2.CameraManager#setTorchMode(java.lang.String, boolean) setTorchMode()}
-method to switch the flash unit’s torch mode on or off without opening the camera device. The app
-does not have exclusive ownership of the flash unit or the camera device. The torch mode is turned
-off and becomes unavailable whenever the camera device becomes unavailable, or when other camera
-resources keeping the torch on become unavailable. Other apps can also call
-{@link android.hardware.camera2.CameraManager#setTorchMode(java.lang.String, boolean) setTorchMode()}
-to turn off the torch mode. When the last app that turned on the torch mode is closed, the torch
-mode is turned off.</p>
-
-<p>You can register a callback to be notified about torch mode status by calling the
-{@link android.hardware.camera2.CameraManager#registerTorchCallback(android.hardware.camera2.CameraManager.TorchCallback, android.os.Handler) registerTorchCallback()}
-method. The first time the callback is registered, it is immediately called with the torch mode
-status of all currently known camera devices with a flash unit. If the torch mode is turned on or
-off successfully, the
-{@link android.hardware.camera2.CameraManager.TorchCallback#onTorchModeChanged(java.lang.String, boolean) onTorchModeChanged()}
-method is invoked.</p>
-
-<h3 id="reprocessing">Reprocessing API</h3>
-<p>The {@link android.hardware.camera2 Camera2} API is extended to support YUV and private
-opaque format image reprocessing. To determine if these reprocessing capabilities are available,
-call {@link android.hardware.camera2.CameraManager#getCameraCharacteristics(java.lang.String)
-getCameraCharacteristics()} and check for the
-{@link android.hardware.camera2.CameraCharacteristics#REPROCESS_MAX_CAPTURE_STALL} key. If a
-device supports reprocessing, you can create a reprocessable camera capture session by calling
-<a href="/reference/android/hardware/camera2/CameraDevice.html#createReprocessableCaptureSession(android.hardware.camera2.params.InputConfiguration, java.util.List<android.view.Surface>, android.hardware.camera2.CameraCaptureSession.StateCallback, android.os.Handler)"><code>createReprocessableCaptureSession()</code></a>,
-and create requests for input buffer reprocessing.</p>
-
-<p>Use the {@link android.media.ImageWriter} class to connect the input buffer flow to the camera
-reprocessing input. To get an empty buffer, follow this programming model:</p>
-
-<ol>
-<li>Call the {@link android.media.ImageWriter#dequeueInputImage()} method.</li>
-<li>Fill the data into the input buffer.</li>
-<li>Send the buffer to the  camera by calling the
-{@link android.media.ImageWriter#queueInputImage(android.media.Image) queueInputImage()} method.</li>
-</ol>
-
-<p>If you are using a {@link android.media.ImageWriter} object together with an
-{@link android.graphics.ImageFormat#PRIVATE} image, your app cannot access the image
-data directly. Instead, pass the {@link android.graphics.ImageFormat#PRIVATE} image directly to the
-{@link android.media.ImageWriter} by calling the
-{@link android.media.ImageWriter#queueInputImage(android.media.Image) queueInputImage()} method
-without any buffer copy.</p>
-
-<p>The {@link android.media.ImageReader} class now supports
-{@link android.graphics.ImageFormat#PRIVATE} format image streams. This support allows your app to
-maintain a circular image queue of {@link android.media.ImageReader} output images, select one or
-more images, and send them to the {@link android.media.ImageWriter} for camera reprocessing.</p>
-
-<h2 id="afw">Android for Work Features</h2>
-<p>This preview includes the following new APIs for Android for Work:</p>
-<ul>
-  <li><strong>Enhanced controls for Corporate-Owned, Single-Use devices:</strong> The Device Owner
-can now control the following settings to improve management of
-Corporate-Owned, Single-Use (COSU) devices:
+  <p>Users can now pop open two apps on the screen at once. </p>
   <ul>
-    <li>Disable or re-enable the keyguard with the
-{@link android.app.admin.DevicePolicyManager#setKeyguardDisabled(android.content.ComponentName, boolean)
-setKeyguardDisabled()} method.</li>
-    <li>Disable or re-enable the status bar (including quick settings, notifications, and the
-navigation swipe-up gesture that launches Google Now) with the
-{@link android.app.admin.DevicePolicyManager#setStatusBarDisabled(android.content.ComponentName, boolean) setStatusBarDisabled()}
-method.</li>
-    <li>Disable or re-enable safe boot with the {@link android.os.UserManager} constant
-{@link android.os.UserManager#DISALLOW_SAFE_BOOT}.</li>
-    <li>Prevent the screen from turning off while plugged in with the
-  {@link android.provider.Settings.Global#STAY_ON_WHILE_PLUGGED_IN} constant.</li>
+  <li>On phones and tablets
+running Android N, users can run two apps side-by-side or
+one-above-the-other in splitscreen mode. Users can resize the apps by dragging
+the divider between them. </li>
+
+<li>On Android TV devices, apps can put themselves in <a
+href="{@docRoot}preview/features/picture-in-picture.html">picture-in-picture
+mode</a>, allowing them to continue showing content while the user browses or
+interacts with other apps.</li>
   </ul>
-  </li>
-  <li><strong>Silent install and uninstall of apps by Device Owner:</strong> A Device Owner can now
-silently install and uninstall applications using the {@link android.content.pm.PackageInstaller}
-APIs, independent of Google Play for Work. You can now provision devices through a Device Owner that
-fetches and installs apps without user interaction. This feature is useful for enabling one-touch
-provisioning of kiosks or other such devices without activating a Google account.</li>
-<li><strong>Silent enterprise certificate access: </strong> When an app calls
-{@link android.security.KeyChain#choosePrivateKeyAlias(android.app.Activity,android.security.KeyChainAliasCallback,java.lang.String[],java.security.Principal[],java.lang.String,int,java.lang.String) choosePrivateKeyAlias()},
-prior to the user being prompted to select a certificate, the Profile or Device Owner can now call
-the {@link android.app.admin.DeviceAdminReceiver#onChoosePrivateKeyAlias(android.content.Context, android.content.Intent, int, android.net.Uri, java.lang.String) onChoosePrivateKeyAlias()}
-method to provide the alias silently to the requesting application. This feature lets you grant
-managed apps access to certificates without user interaction.</li>
-<li><strong>Auto-acceptance of system updates.</strong> By setting a system update policy with
-{@link android.app.admin.DevicePolicyManager#setSystemUpdatePolicy(android.content.ComponentName, android.app.admin.SystemUpdatePolicy) setSystemUpdatePolicy()},
-a Device Owner can now auto-accept a system
-update, for instance in the case of a kiosk device, or postpone the update and prevent it being
-taken by the user for up to 30 days. Furthermore, an administrator can set a daily time window in
-which an update must be taken, for example during the hours when a kiosk device is not in use. When
-a system update is available, the system checks if the Work Policy Controller app has set a system
-update policy, and behaves accordingly.
-</li>
-<li>
-<strong>Delegated certificate installation:</strong> A Profile or Device Owner can now grant a
-third-party app the ability to call these {@link android.app.admin.DevicePolicyManager} certificate
-management APIs:
+
+<div class="col-4of10">
+<img src="{@docRoot}preview/images/mw-portrait.png" alt="" style="height:460px;padding-left:1em;"
+    id="img-split-screen" />
+<p class="img-caption">
+  <strong>Figure 1.</strong> Apps running in split-screen mode.
+</p>
+  </div>
+
+<p>Especially on tablets and other larger-screen devices, multi-window support
+gives you new ways to engage users. You can even enable drag-and-drop in
+your app to let users conveniently drag content to or from your app &mdash; a great
+way to enhance your user experience. </p>
+
+<p>It's straightforward to add multi-window support to your app and configure how it
+handles multi-window display. For example, you can specify your activity's
+minimum allowable dimensions, preventing users from resizing the activity below
+that size. You can also disable multi-window display for your app, which
+  ensures that the system will only show your app in full-screen mode.</p>
+
+<p>
+  For more information, see the <a href=
+  "{@docRoot}preview/features/multi-window.html">Multi-Window Support</a>
+  developer documentation.
+</p>
+
+<h2 id="notification_enhancements">Notification enhancements</h2>
+
+<p>In Android N we've redesigned notifications to make them easier and faster to
+use. Some of the changes include:</p>
+
 <ul>
-  <li>{@link android.app.admin.DevicePolicyManager#getInstalledCaCerts(android.content.ComponentName)
-getInstalledCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#hasCaCertInstalled(android.content.ComponentName,byte[])
-hasCaCertInstalled()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installCaCert(android.content.ComponentName,byte[])
-installCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallCaCert(android.content.ComponentName,byte[])
-uninstallCaCert()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#uninstallAllUserCaCerts(android.content.ComponentName)
-uninstallAllUserCaCerts()}</li>
-  <li>{@link android.app.admin.DevicePolicyManager#installKeyPair(android.content.ComponentName,java.security.PrivateKey,java.security.cert.Certificate,java.lang.String)
-installKeyPair()}</li>
-</ul>
-</li>
-<img src="{@docRoot}preview/images/work-profile-screen.png"
-srcset="{@docRoot}preview/images/work-profile-screen.png 1x, {@docRoot}preview/images/work-profile-screen_2x.png 2x"
-style="float:right; margin:0 0 10px 20px" width="282" height="476" />
-<li><strong>Data usage tracking.</strong> A Profile or Device Owner can now query for the
-data usage statistics visible in <strong>Settings > Data</strong> usage by using the new
-{@link android.app.usage.NetworkStatsManager} methods. Profile Owners are automatically granted
-permission to query data on the profile they manage, while Device Owners get access to usage data
-of the managed primary user.</li>
-<li><strong>Runtime permission management:</strong>
-<p>A Profile or Device Owner can set a permission policy
-for all runtime requests of all applications using
-{@link android.app.admin.DevicePolicyManager#setPermissionPolicy(android.content.ComponentName, int)
-setPermissionPolicy()}, to either prompt the user to grant the permission or automatically grant or
-deny the permission silently. If the latter policy is set, the user cannot
-modify the selection made by the Profile or Device Owner within the app’s permissions screen in
-<strong>Settings</strong>.</p></li>
-<li><strong>VPN in Settings:</strong> VPN apps are now visible in
-    <strong>Settings > More > VPN</strong>.
-Additionally, the notifications that accompany VPN usage are now specific to how that VPN is
-configured. For Profile Owner, the notifications are specific to whether the VPN is configured
-for a managed profile, a personal profile, or both. For a Device Owner, the notifications are
-specific to whether the VPN is configured for the entire device.</li>
-<li><strong>Work status notification:</strong> A status bar briefcase icon now appears whenever
-an app from the managed profile has an activity in the foreground. Furthermore, if the device is
-unlocked directly to the activity of an app in the managed profile, a toast is displayed notifying
-the user that they are within the work profile.
-</li>
+  <li>
+    <strong>Template updates</strong>: We're updating notification templates to
+    put a new emphasis on hero image and avatar. Developers will be able to
+    take advantage of the new templates with minimal adjustments in their code.
+  </li>
+
+  <li>
+    <strong>Bundled notifications</strong>: The system can group messages
+    together, for example by message topic, and display the group. A user can
+    take actions, such as Dismiss or Archive, on them in place. If you’ve
+    implemented notifications for Android Wear, you’ll already be familiar with
+    this model.
+  </li>
+
+  <li>
+    <strong>Direct reply</strong>: For real-time communication apps, the
+    Android system supports inline replies so that users can quickly respond to
+    an SMS or text message directly within the notification interface.
+  </li>
+
+  <li>
+    <strong>Custom views</strong>: Two new APIs enable you to leverage system
+    decorations, such as notification headers and actions, when using custom
+    views in notifications.
+  </li>
 </ul>
 
-<p class="note">
-  For a detailed view of all API changes in the M Developer Preview, see the <a href=
-  "{@docRoot}preview/download.html">API Differences Report</a>.
+<div class="col-4of12">
+  <img src="{@docRoot}preview/images/notifications-1.png" alt=""
+  style="padding:.5em;max-width:226px">
+</div>
+
+<div class="col-4of12">
+  <img src="{@docRoot}preview/images/notifications-3.png" alt=""
+  style="padding:.5em;max-width:226px">
+</div>
+
+<div class="col-4of12">
+  <img src="{@docRoot}preview/images/notifications-2.png" alt=""
+  style="padding:.5em;max-width:226px">
+</div>
+
+
+<p class="img-caption">
+  <strong>Figure 2.</strong> Bundled notifications and direct reply.
 </p>
+
+<p>To learn how to implement the new features, see the
+  <a href="{@docRoot}preview/features/notification-updates.html">Notifications</a>
+  guide.</p>
+
+
+
+<h2 id="jit_aot">Profile-guided JIT/AOT compilation</h2>
+
+<p>In Android N, we've added a Just in Time (JIT) compiler with code profiling to
+ART, which lets it constantly improve the performance of Android apps as they
+run. The JIT compiler complements ART's current Ahead of Time (AOT) compiler
+and helps improve runtime performance, save storage space, and speed up app
+updates and system updates.</p>
+
+<p>Profile-guided compilation lets ART manage the AOT/JIT compilation for each app
+according to its actual usage, as well as conditions on the device. For
+example, ART maintains a profile of each app's hot methods and can precompile
+and cache those methods for best performance. It leaves other parts of the app
+uncompiled until they are actually used.</p>
+
+<p>Besides improving performance for key parts of the app, profile-guided
+compilation helps reduce an app's overall RAM footprint, including associated
+binaries. This feature is especially important on low-memory devices.</p>
+
+<p>ART manages profile-guided compilation in a way that minimizes impact on the
+device battery. It does precompilation only when then the device is idle and
+charging, saving time and battery by doing that work in advance.</p>
+
+<h2 id="quick_path_to_app_install">Quick path to app install</h2>
+
+<p>One of the most tangible benefits of ART's JIT compiler is the speed of app
+installs and system updates. Even large apps that required several minutes to
+optimize and install in Android 6.0 can now install in just a matter of
+seconds. System updates are also faster, since there's no more optimizing step. </p>
+
+<h2 id="doze_on_the_go">Doze on the go...</h2>
+
+<p>Android 6.0 introduced Doze, a system mode that saves battery by deferring
+apps' CPU and network activities when the device is idle, such as when it's
+sitting on a table or in a drawer. </p>
+
+<p>Now in Android N, Doze takes a step further and saves battery while on the go.
+Any time the screen is off for a period of time and the device is unplugged,
+Doze applies a subset of the familiar CPU and network restrictions to apps.
+This means users can save battery even when carrying their devices in their
+pockets.</p>
+
+
+<img src="/preview/images/doze-diagram-1.png"
+  alt="" id="figure1" />
+<p class="img-caption">
+  <strong>Figure 3.</strong> Doze now applies
+  restrictions to improve battery life even when the device is not stationary.
+</p>
+
+
+<p>A short time after the screen turns off while the device is on battery, Doze
+restricts network access and defers jobs and syncs. During brief maintenance
+windows, applications are allowed network access and any of their deferred
+jobs/syncs are executed. Turning the screen on or plugging in the device brings
+the device out of Doze.</p>
+
+<p>When the device is stationary again, with screen off and on battery for a
+period of time, Doze applies the full CPU and network restrictions on {@link
+android.os.PowerManager.WakeLock}, {@link android.app.AlarmManager} alarms, and
+GPS/Wi-Fi scans.</p>
+
+<p>The best practices for adapting your app to Doze are the same whether the
+device is moving or not, so if you already updated your app to gracefully
+handle Doze, you're all set. If not, start <a
+href="{@docRoot}training/monitoring-device-state/doze-standby.html#assessing_your_app">adapting
+your app to Doze</a> now.</p>
+
+<h2 id="background_optimizations">Project Svelte: Background optimizations</h2>
+
+<p>Project Svelte is an ongoing effort to minimize RAM use by system and apps
+across the range of Android devices in the ecosystem. In Android N, Project
+Svelte is focused on optimizing the way apps run in the background. </p>
+
+<p>Background processing is an essential part of most apps. When handled right, it
+can make your user experience amazing &mdash; immediate, fast, and context-aware.
+When not handled right, background processing can needlessly consume RAM (and
+battery) and affect system performance for other apps. </p>
+
+<p>Since Android 5.0, {@link android.app.job.JobScheduler} has been the
+preferred way of performing background work in a way that's good
+for users. Apps can schedule jobs while letting the system optimize based on
+memory, power, and connectivity conditions. JobScheduler offers control and
+simplicity, and we want all apps to use it. </p>
+
+<p>
+  Another good option is <a href=
+  "https://developers.google.com/android/reference/com/google/android/gms/gcm/GcmNetworkManager">
+  <code>GCMNetworkManager</code></a>, part of Google Play Services, which
+  offers similar job scheduling with compatibility across legacy versions of
+  Android.
+</p>
+
+<p>We're continuing to extend <code>JobScheduler</code> and
+<code>GCMNetworkManager</code> to meet more of
+your use cases &mdash; for example, in Android N you can now schedule background
+work based on changes in Content Providers. At the same time we're starting to
+deprecate some of the older patterns that can reduce system performance,
+especially on low-memory devices.</p>
+
+<p>In Android N we're removing three commonly-used implicit broadcasts &mdash;
+ {@link android.net.ConnectivityManager#CONNECTIVITY_ACTION}, {@link
+  android.hardware.Camera#ACTION_NEW_PICTURE}, and {@link
+  android.hardware.Camera#ACTION_NEW_VIDEO} &mdash; since those can wake the
+background processes of multiple apps at once and strain memory and battery. If
+your app is receiving these, take advantage of the N Developer Preview to
+  migrate to <code>JobScheduler</code> and related APIs instead. </p>
+
+<p>
+  Take a look at the <a href=
+  "{@docRoot}preview/features/background-optimization.html">Background
+  Optimizations</a> documentation for details.
+</p>
+
+
+<h2 id="data_saver">Data Saver</h2>
+
+<div class="col-5of12" style="margin-right:1.5em;">
+<img src="{@docRoot}preview/images/datasaver.png" style="border:2px solid #ddd">
+
+<p class="img-caption" style="padding-right:2em;">
+  <strong>Figure 4.</strong> Data Saver in Settings.
+</p>
+  </div>
+
+<p>Over the life of a mobile device, the cost of a cellular data plan typically
+exceeds the cost of the device itself. For many users, cellular data is an
+expensive resource that they want to conserve. </p>
+
+<p>Android N introduces Data Saver mode, a new system service that helps reduce
+cellular data use by apps, whether roaming, near the end of the billing cycle,
+or on a small prepaid data pack. Data Saver gives users control over how apps
+use cellular data and lets developers provide more efficient service when Data
+Saver is on. </p>
+
+<p>When a user enables Data Saver in <strong>Settings</strong> and the device is
+on a metered network, the system blocks background data usage and signals apps
+to use less data in the foreground wherever possible &mdash; such as by limiting
+bit rate for streaming, reducing image quality, deferring optimistic precaching,
+and so on. Users can whitelist specific apps to allow background metered data
+usage even when Data Saver is turned on.</p>
+
+<p>Android N extends the {@link android.net.ConnectivityManager} to provide apps a
+way to <a href="{@docRoot}preview/features/data-saver.html#status">retrieve the
+user's Data Saver preferences</a> and <a
+href="{@docRoot}preview/features/data-saver.html#monitor-changes">monitor
+preference changes</a>. All apps should check whether the user has enabled Data
+Saver and make an effort to limit foreground and background data usage.</p>
+
+
+<h2 id="tile_api">Quick Settings Tile API</h2>
+
+
+<div style="float:right;max-width:320px">
+<img src="{@docRoot}preview/images/quicksettings.png" style="padding-left:1.5em;">
+
+<p class="img-caption" style="padding-left:2em;">
+  <strong>Figure 5.</strong> Quick Settings tiles in the notification shade.
+</p>
+
+
+  </div><p>Quick Settings is a popular and simple way to expose key settings and actions,
+directly from the notification shade. In Android N, we've expanded the scope of
+Quick Settings to make it even more useful and convenient. </p>
+
+<p>We've added more room for additional Quick Settings tiles, which users can
+access across a paginated display area by swiping left or right. We've also
+given users control over what Quick Settings tiles appear and where they are
+displayed &mdash; users can add or move tiles just by dragging and dropping them. </p>
+
+<p>For developers, Android N also adds a new API that lets you define your own
+  Quick Settings tiles to give users easy access to key controls and actions in your app.</p>
+
+<p>
+  Quick Settings tiles are reserved for controls or actions that are either
+  urgently required or frequently used, and should not be used as shortcuts to
+  launching an app.
+</p>
+
+<p>
+  Once you’ve defined your tiles, you can surface them to users, who can add
+  them to Quick Settings just by drag and drop.
+</p>
+
+<p>
+  For information about creating an app tile, see the
+  <code>android.service.quicksettings.Tile</code> in the downloadable <a href=
+  "{@docRoot}preview/setup-sdk.html#docs-dl">API Reference</a>.
+</p>
+
+
+
+<h2 id="number-blocking">Number-blocking</h2>
+
+<p>Android N now supports number-blocking in the platform and provides a
+framework API to let service providers maintain a blocked-number list. The
+default SMS app, the default phone app, and carrier apps can read from and
+write to the blocked-number list. The list is not accessible to other apps.</p>
+
+<p>By making number-blocking a standard feature of the platform, Android provides
+a consistent way for apps to support number-blocking across a wide range of
+devices. Among the other benefits that apps can take advantage of are:</p>
+
+<ul>
+  <li> Numbers blocked on calls are also blocked on texts
+  <li> Blocked numbers can persist across resets and devices through the Backup &amp;
+Restore feature
+  <li> Multiple apps can use the same blocked numbers list
+</ul>
+
+<p>Additionally, carrier app integration through Android means that carriers can
+read the blocked numbers list on the device and perform service-side blocking
+for the user in order to stop unwanted calls and texts from reaching the user
+through any medium, such as a VOIP endpoint or forwarding phones.</p>
+
+<p>
+  For more information, see <code>android.provider.BlockedNumberContract</code>
+  in the downloadable <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API
+  Reference</a>.
+</p>
+
+<h2 id="call_screening">Call screening</h2>
+
+<p>
+  Android N allows the default phone app to screen incoming calls. The phone
+  app does this by implementing the new <code>CallScreeningService</code>,
+  which allows the phone app to perform a number of actions based on an
+  incoming call's {@link android.telecom.Call.Details Call.Details}, such as:
+</p>
+
+<ul>
+  <li> Reject the incoming call
+  <li> Do not allow the call to the call log
+  <li> Do not show the user a notification for the call
+</ul>
+
+<p>
+  For more information, see <code>android.telecom.CallScreeningService</code>
+  in the downloadable <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API
+  Reference</a>.
+</p>
+
+
+<h2 id="multi-locale_languages">Multi-locale support, more languages</h2>
+
+
+<p>Android N now lets users select <strong>multiple locales</strong> in Settings,
+to better support bilingual use-cases. Apps can use
+a new API to get the user's selected locales and then offer more sophisticated
+user experiences for multi-locale users &mdash; such as showing search results in
+multiple languages and not offering to translate webpages in a language the
+user already knows.</p>
+
+<p>Along with multi-locale support, Android N also expands the range of languages
+available to users. It offers more than 25 variants each for commonly used
+languages such as English, Spanish, French, and Arabic. It also adds partial
+support for more than 100 new languages.</p>
+
+<p>Apps can get the list of locales set by the user by calling <code>LocaleList.GetDefault()</code>.  To support the expanded number of locales, Android N is changing the way
+that it resolves resources. Make sure that you test and verify that your apps
+working as expected with the new resource resolution logic.</p>
+
+<p>To learn about the new resource-resolution behavior and the best practices you
+should follow, see <a href="{@docRoot}preview/features/multilingual-support.html"
+>Multilingual Support</a>.</p>
+
+<h2 id="icu4">ICU4J APIs in Android</h2>
+
+<p>
+  Android N now offers a subset of <a href=
+  "http://site.icu-project.org/">ICU4J</a> APIs in the Android framework under
+  the <code>android.icu</code> package. Migration is easy, and mostly entails
+  simply changing from the <code>com.java.icu</code> namespace to
+  <code>android.icu</code>. If you are already using an ICU4J bundle in your
+  apps, switching to the <code>android.icu</code> APIs provided in the Android
+  framework can produce substantial savings in APK size.
+</p>
+
+<p>
+  To learn more about the Android ICU4J APIs, see <a href=
+  "{@docRoot}preview/features/icu4j-framework.html">ICU4J Support</a>.
+</p>
+
+
+
+<h2 id="gles_32">OpenGL&trade; ES 3.2 API</h2>
+
+<p>Android N adds framework interfaces and platform support for OpenGL ES 3.2, including:</p>
+
+<ul>
+  <li> All extensions from the <a class="external-link"
+href="https://www.khronos.org/registry/gles/extensions/ANDROID/ANDROID_extension_pack_es31a.txt">Android Extension Pack</a></a> (AEP) except for <code>EXT_texture_sRGB_decode</code>.
+  <li> Floating-point framebuffers for HDR and deferred shading.
+  <li> BaseVertex draw calls to enable better batching and streaming.
+  <li> Robust buffer access control to reduce WebGL overhead.
+</ul>
+
+<p>The framework API for OpenGL ES 3.2 on Android N is provided with the
+<code>GLES32</code> class. When using OpenGL ES 3.2, be sure to declare the
+requirement in your manifest file, using the <code>&lt;uses-feature&gt;</code> tag and
+the <code>android:glEsVersion</code> attribute. </p>
+
+<p>For information about using OpenGL ES, including how to check a device's
+supported OpenGL ES version at runtime, see the <a
+href="{@docRoot}guide/topics/graphics/opengl.html">OpenGL ES API guide</a>.</p>
+
+
+<h2 id="android_tv_recording">Android TV recording</h2>
+
+<p>Android N adds the ability to record and playback content from Android TV input
+services via new recording APIs.  Building on top of existing time-shifting
+APIs, TV input services can control what channel data can be recorded, how
+recorded sessions are saved, and manage user interaction with recorded content. </p>
+
+<p>For more information, see <a
+href="{@docRoot}preview/features/tv-recording-api.html">Android TV Recording APIs</a>.</p>
+
+
+<h2 id="android_for_work">Android for Work</h2>
+
+<p>Android for Work adds many new features and APIs for devices running Android N.
+Some highlights are below &mdash; for a complete list of changes, see
+<a href="{@docRoot}preview/features/afw.html">Android for Work Updates</a>.</p>
+
+<h3 id="work_profile_security_challenge">Work profile security challenge </h3>
+
+<p>
+  Profile owners can specify a separate security challenge for apps running in
+  the work profile. The work challenge is shown when a user attempts to open
+  any work apps. Successful completion of the security challenge unlocks the
+  work profile and decrypts it if necessary. For profile owners,
+  <code>ACTION_SET_NEW_PASSWORD</code> prompts the user to set a work
+  challenge, and <code>ACTION_SET_NEW_PARENT_PROFILE_PASSWORD</code> prompts
+  the user to set a device lock.
+</p>
+
+<p>
+  Profile owners can set distinct password policies for the work challenge
+  (such as how long the PIN needs to be, or whether a fingerprint can be used
+  to unlock the profile) using the <code>setPasswordQuality()</code>,
+  <code>setPasswordMinimumLength()</code> and related methods. The profile
+  owner can also set the device lock using the <code>DevicePolicyManager</code>
+  instance returned by the new <code>getParentProfileInstance()</code> method.
+  Additionally, profile owners can customize the credentials screen for the
+  work challenge using the new <code>setOrganizationColor()</code> and
+  <code>setOrganizationName()</code> methods.
+</p>
+<h3 id="turn_off_work">Turn off work </h3>
+
+<p>On a device with a work profile, users can toggle work mode. When work mode is
+off the managed user is temporarily shut down, which disables work profile
+apps, background sync, and notifications. This includes the profile owner
+application. When work mode is off, the system displays a persistent status
+icon to remind the user that they can't launch work apps. The launcher
+indicates that work apps and widgets are not accessible. </p>
+
+<h3 id="always_on_vpn">Always on VPN </h3>
+
+<p>Device owners and profile owners can ensure that work apps always connect
+through a specified VPN. The system automatically starts that VPN after the
+device boots.</p>
+
+<p>
+  New <code>DevicePolicyManager</code> methods are
+  <code>setAlwaysOnVpnPackage()</code> and
+  <code>getAlwaysOnVpnPackage()</code>.
+</p>
+
+<p>Because VPN services can be bound directly by the system without app
+interaction, VPN clients need to handle new entry points for Always on VPN. As
+before, services are indicated to the system by an intent filter matching
+action <code>android.net.VpnService</code>. </p>
+
+<p>
+  Users can also manually set Always on VPN clients that implement
+  <code>VPNService</code> methods in the primary user using
+  <strong>Settings&gt;More&gt;Vpn</strong>.
+</p>
+
+<h2 id="accessibility_enhancements">Accessibility enhancements</h2>
+
+<p>Android N now offers Vision Settings directly on the Welcome screen for new
+device setup. This makes it much easier for users to discover and configure
+accessibility features on their devices, including magnification gesture, font
+size, display size, and TalkBack. </p>
+
+<p>With these accessibility features getting more prominent placement, your users
+are more likely to try your app with them enabled. Make sure you test your apps
+early with these settings enabled. You can enable them from Settings >
+Accessibility.</p>
+
+<p>Also in Android N, accessibility services can now help users with motor
+impairments to touch the screen. The new API allows building services with
+features such as face-tracking, eye-tracking, point scanning, and so on, to
+meet the needs of those users.</p>
+
+<p>For more information, see <code>android.accessibilityservice.GestureDescription</code>
+	in the downloadable <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API Reference</a>.</p>
+
+
+<h2 id="direct_boot">Direct boot</h2>
+
+<p>Direct boot improves device startup times and lets registered
+apps have limited functionality even after an unexpected reboot.
+For example, if an encrypted device reboots while the user is sleeping,
+registered alarms, messages and incoming calls can now continue notify
+the user as normal. This also means accessibility services can also be
+  available immediately after a restart.</p>
+
+<p>Direct boot takes advantage of file based encryption in Android N
+to enable fine grained encryption policies for both system and app data.
+The system uses a device-encrypted store for select system data and explicitly
+registered app data. By default a credential-encrypted store is used for all
+  other system data, user data, apps, and app data. </p>
+
+<p>At boot, the system starts in a restricted mode with access to
+device-encrypted data only, and without general access to apps or data.
+If you have components that you want to run in this mode, you can register
+them by setting a flag in the manifest. After restart, the system activates
+registered components by broadcasting the <code>LOCKED_BOOT_COMPLETED</code>
+intent. The system ensures registered device-encrypted app data is available
+before unlock. All other data is unavailable until the User confirms their lock
+  screen credentials to decrypt it. </p>
+
+For more information, see <a href="{@docRoot}preview/features/direct-boot.html">Direct Boot</a>.</p>
+</p>
+
+
+<h2 id="key_attestation">Key Attestation</h2>
+
+<p>Hardware-backed keystores provide a much safer method to create, store,
+and use cryptographic keys on Android devices. They protect keys from the
+Linux kernel, potential Android vulnerabilities, and extraction
+from rooted devices.</p>
+
+<p>To make it easier and more secure to use hardware-backed keystores,
+Android N introduces Key Attestation. Apps and off-devices can use Key
+Attestation to strongly determine whether an RSA or EC key pair is
+hardware-backed, what the properties of the key pair are, and what
+  constraints are applied to its usage and validity. </p>
+
+<p>Apps and off-device services can request information about a key pair
+through an X.509 attestation certificate which must be signed by a valid
+attestation key. The attestation key is an ECDSA signing key which is
+injected into the device’s hardware-backed keystore at the factory.
+Therefore, an attestation certificate signed by a valid attestation
+key confirms the existence of a hardware-backed keystore, along with
+  details of key pairs in that keystore.</p>
+
+<p>To ensure that the device is using a secure, official Android factory
+image, Key Attestation requires that the device <a
+class="external-link"
+href="https://source.android.com/security/verifiedboot/verified-boot.html#bootloader_requirements">bootloader</a>
+provide the following information to the <a class="external-link"
+href="https://source.android.com/security/trusty/index.html">Trusted
+Execution Environment (TEE)</a>:</p>
+
+<ul>
+<li>The OS version and patch level installed on the device</li>
+<li>The <a href="https://source.android.com/security/verifiedboot/index.html"
+class="external-link" >Verified Boot</a> public key and lock status</li>
+  </ul>
+
+<p>For more information about the hardware-backed keystore feature,
+see the guide for <a href="https://source.android.com/security/keystore/"
+class="external-link">Hardware-backed Keystore</a>.</p>
+
+<p>In addition to Key Attestation, Android N also introduces
+  fingerprint-bound keys that are not revoked on fingerprint enrollment.</p>
+
+<h2 id="network_security_config">Network Security Config</h2>
+
+<p>In Android N, apps can customize the behavior of their secure (HTTPS, TLS)
+connections safely, without any code modification, by using the declarative
+<em>Network Security Config</em> instead of using the conventional
+error-prone programmatic APIs (e.g. X509TrustManager).</p>
+
+  <p>Supported features:</p>
+<ul>
+<li><b>Custom trust anchors.</b> Lets an application customize which
+Certificate Authorities (CA) are trusted for its secure connections. For
+example, trusting particular self-signed certificates or a restricted set of public CAs.
+</li>
+<li><b>Debug-only overrides.</b> Lets an application developer safely debug
+secure connections of their application without added risk to the installed
+base.
+</li>
+<li><b>Cleartext traffic opt-out.</b> Lets an application protect itself from
+accidental usage of cleartext traffic.</li>
+<li><b>Certificate pinning.</b> An advanced feature that lets an application
+  limit which server keys are trusted for secure connections.</li>
+</ul>
+
+<p>For more information, see <a
+href="{@docRoot}preview/features/security-config.html">Network Security
+Config</a>.</p>
+
+<h2 id="default_trusted_ca">Default Trusted Certificate Authority</h2>
+
+<p>By default, apps that target Android N only trust system-provided certificates
+and no longer trust user-added Certificate Authorities (CA). Apps targeting Android
+N that wish to trust user-added CAs should use the
+<a href="{@docRoot}preview/features/security-config.html">Network Security Config</a> to
+specify how user CAs should be trusted.</p>
+
+<h2 id="apk_signature_v2">APK signature scheme v2</h2>
+
+<p>The PackageManager class now supports verifying apps using the APK
+signature scheme v2. The APK signature scheme v2 is a whole-file signature scheme
+that significantly improves verification speed and strengthens integrity
+  guarantees by detecting any unauthorized changes to APK files.</p>
+
+<p>To maintain backward-compatibility, an APK must be signed with the v1 signature
+scheme (JAR signature scheme) before being signed with the v2 signature scheme.
+With the v2 signature scheme, verification fails if you sign the APK with an
+  additional certificate after signing with the v2 scheme. </p>
+
+<p>APK signature scheme v2 support will be available later in the N Developer
+Preview.</p>
+
+<h2 id="scoped_directory_access">Scoped directory access</h2>
+
+<p>In Android N, apps can use new APIs to request access to specific <a
+href="{@docRoot}guide/topics/data/data-storage.html#filesExternal">external
+storage</a> directories, including directories on removable media such as SD
+cards. The new APIs greatly simplify how your application accesses standard
+external storage directories, such as the <code>Pictures</code> directory. Apps
+like photo apps can use these APIs instead of using
+<code>READ_EXTERNAL_STORAGE</code>, which grants access to all storage
+directories, or the Storage Access Framework, which makes the user navigate to
+the directory.</p>
+
+<p>Additionally, the new APIs simplify the steps a user takes to grant external
+storage access to your app. When you use the new APIs, the system uses a simple
+permissions UI that clearly details what directory the application is
+requesting access to.</p>
+
+<p>For more information, see the
+<a href="{@docRoot}preview/features/scoped-folder-access.html">Scoped
+Directory Access</a> developer documentation.</p>
+
+
+
+
+
+
diff --git a/docs/html/preview/backup/index.jd b/docs/html/preview/backup/index.jd
deleted file mode 100644
index 6735379..0000000
--- a/docs/html/preview/backup/index.jd
+++ /dev/null
@@ -1,327 +0,0 @@
-page.title=Auto Backup for Apps
-page.tags=backup, previewresources, androidm
-page.keywords=backup, autobackup, preview
-page.image=images/cards/card-auto-backup_2x.png
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>In this document</h2>
-      <ol>
-        <li><a href="#overview">Overview</a></li>
-        <li><a href="#configuring">Configuring Data Backup</a></li>
-        <li><a href="#testing">Testing Backup Configuration</a></li>
-        <li><a href="#issues">Known Issues</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  Users often invest significant time and effort creating data and setting preferences within
-  apps. Preserving that data for users if they replace a broken device or upgrade to a new one is
-  an important part of ensuring a great user experience. Devices running the Android M Preview
-  system help ensure a good experience for users in these circumstances by automatically backing up
-  app data to Google Drive. The app data is automatically restored if a user changes or upgrades a
-  device.
-</p>
-
-<p>
-  Automatic backups are enabled for all apps installed on devices running the Android M Preview. No
-  additional app code is required. The system provides users with the ability to opt out of
-  automatic data backups. You can also choose to limit what data from your app is backed up.
-</p>
-
-<p>
-  This document describes the new system behavior and how to specify what data is backed up for
-  your app.
-</p>
-
-<h2 id="overview">Overview</h2>
-
-<p>
-  The automatic backup feature preserves the data your app creates on a user device by uploading it
-  to the user’s Google Drive account and encrypting it. There is no charge to you or the user for
-  data storage and the saved data does not count towards the user's personal Drive quota. During
-  the M Preview period, users can store up to 25MB per Android app.
-</p>
-
-<p>
-  Automatic backups occur every 24 hours, when the device is idle, charging, and connected to a
-  Wi-Fi network. When these conditions are met, the Backup Manager service uploads all available
-  backup data to the cloud. When the user transitions to a new device, or uninstalls and reinstalls
-  the backed up app, a restore operation copies the backed up data into the newly installed
-  app’s data directory.
-</p>
-
-<p class="note">
-  <strong>Note:</strong> If your app uses the legacy
-  <a href="{@docRoot}google/backup/index.html">Android Backup service</a>, this new behavior
-  does not apply and the existing backup behavior works as usual.
-</p>
-
-
-<h3 id="auto-exclude">Automatically Excluded Data Files</h3>
-
-<p>
-  Not all app data should be backed up, such as temporary files and caches, so the automatic backup
-  service excludes certain data files by default:
-</p>
-
-<ul>
-  <li>Files in the directories referred to by the {@link android.content.Context#getCacheDir
-    getCacheDir()} and {@link android.content.ContextWrapper#getCodeCacheDir getCodeCacheDir()}
-    methods.
-  </li>
-
-  <li>Files located on external storage, unless they reside in the directory referred to by the
-    {@link android.content.Context#getExternalFilesDir getExternalFilesDir()}
-  method.
-  </li>
-
-  <li>Files located in the directory referred to by the
-    {@link android.content.Context#getNoBackupFilesDir getNoBackupFilesDir()} method.
-  </li>
-</ul>
-
-<h2 id="configuring">Configuring Data Backup</h2>
-
-<p>
-  The data created by any app installed on an M Preview device is backed up, except for the
-  automatically excluded files listed in the previous section. You can further limit and configure
-  what data gets backed up from your app using settings in your app manifest.
-</p>
-
-<h3 id="include-exclude">Including or Excluding Data</h3>
-
-<p>
-  Depending on what data your app needs and how you save it, you may need to set specific
-  rules for including or excluding certain files or directories. The automatic backup service
-  supports setting these backup rules through use of an XML configuration file and the app
-  manifest. In the app manifest, you can specify a backup scheme configuration file as shown in the
-  following example:
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:fullBackupContent="&#64;xml/mybackupscheme"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-<p>
-  In this example code, the <code>android:fullBackupContent</code> attribute specifies an XML file,
-  located in the <code>res/xml/</code> directory of your app development project, named
-  <code>mybackupscheme.xml</code>. This configuration file includes rules for what files are backed
-  up. The following example code shows a configuration file that excludes a specific file from
-  backups:
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;full-backup-content&gt;
-    &lt;exclude domain="database" path="device_info.db"/&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  This example backup configuration only excludes a specific database file from being backed up.
-  All other files are backed up.
-</p>
-
-<h4>Backup Configuration Syntax</h4>
-
-<p>
-  The backup service configuration allows you to specify what files to include or exclude from
-  backup. The syntax for the data backup configuration xml file is as follows:
-</p>
-
-<pre>
-&lt;full-backup-content&gt;
-    &lt;include domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-    &lt;exclude domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
-&lt;/full-backup-content&gt;
-</pre>
-
-<p>
-  The following elements and attributes allow you to specify the files to include and exclude from
-  backup:
-</p>
-
-<ul>
-  <li>
-  <code>&lt;include&gt;</code>. Use this element if you want to specify a set of resources to
-  back up, instead of having the system back up all data in your app by default. When you specify
-  an <code>&lt;include&gt;</code> tag, the system backs up <em>only the resources specified</em>
-  with this element.
-  </li>
-
-  <li>
-  <code>&lt;exclude&gt;</code>. Use this element to specify a set of resources to exclude from
-  backup. The system backs up all data in your app, except for resources specified with this
-  element.
-  </li>
-
-  <li>
-  <code>domain.</code> The type of resource you want to include or exclude from backup. The valid
-  values you can specify for this attribute include:
-  </li>
-
-  <li style="list-style: none">
-  <ul>
-    <li>
-    <code>root</code>. Specifies that the resource is in the app’s root directory.
-    </li>
-
-    <li>
-    <code>file</code>. Corresponds to a resource in the directory returned by the
-    {@link android.content.Context#getFilesDir getFilesDir()} method.
-    </li>
-
-    <li>
-    <code>database</code>. Corresponds to a database returned by the
-    {@link android.content.Context#getDatabasePath getDatabasePath()} method or by using the
-    {@link android.database.sqlite.SQLiteOpenHelper} class.
-    </li>
-
-    <li>
-    <code>sharedpref</code>. Corresponds to a {@link android.content.SharedPreferences} object
-    returned by the {@link android.content.Context#getSharedPreferences getSharedPreferences()}
-    method.
-    </li>
-
-    <li>
-    <code>external</code>. Specifies that the resource is in external storage, and corresponds
-    to a file in the directory returned by the
-    {@link android.content.Context#getExternalFilesDir getExternalFilesDir()} method.
-    </li>
-
-    <li>
-    <code>path</code>. The file path to a resource that you want to include or exclude from
-    backup.
-    </li>
-  </ul>
-  </li>
-</ul>
-
-
-<h3 id="prohibit">Prohibiting Data Backups</h3>
-
-<p>
-  You can choose to prevent automatic backups of any of your app data by setting the
-  <code>android:allowBackup</code> attribute to <code>false</code> in the app element of
-  your manifest. This setting is illustrated in the following example code:
-</p>
-
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        package="com.my.appexample"&gt;
-    &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
-    &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
-    &lt;app ...
-<strong>        android:allowBackup="false"&gt;</strong>
-    &lt;/app&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-
-<h2 id="testing">Testing Backup Configuration</h2>
-
-<p>
-  Once you have created a backup configuration, you should test it to make sure your app saves data
-  and can be restored properly.
-</p>
-
-
-<h4>Enabling Backup Logging</h4>
-
-<p>
-  To help determine how the backup feature is parsing your XML file, enable logging before
-  performing a test backup:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell setprop log.tag.BackupXmlParserLogging VERBOSE
-</pre>
-
-<h4>Testing Backup</h4>
-
-<p>To manually run a backup, first you must initialize the Backup Manager by calling the following
-  command:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr run
-</pre>
-
-<p>
-  Next, you manually backup your application using the following command, specifying the package
-  name for your app as the <code>&lt;PACKAGE&gt;</code> parameter:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr fullbackup &lt;PACKAGE&gt;</pre>
-
-
-<h4>Testing Restore</h4>
-
-<p>
-  To manually initiate a restore after your app data is backed up, call the following command,
-  specifying the package name for your app as the <code>&lt;PACKAGE&gt;</code> parameter:
-</p>
-
-<pre class="noprettyprint">
-$ adb shell bmgr restore &lt;PACKAGE&gt;
-</pre>
-
-<p class="warning">
-  <b>Warning:</b> This action stops your app and wipes its data before performing the restore
-  operation.
-</p>
-
-<p>
-  You initiate the restore process for your app by uninstalling and reinstalling your app. The app
-  data is automatically restored from the cloud once the app installation is complete.
-</p>
-
-
-<h4>Troubleshooting Backups</h4>
-
-<p>
-  If you run into issues, you can clear the backup data and associated metadata by turning backup
-  off and on in the <strong>Settings &gt; Backup</strong>, factory resetting the device, or by
-  calling this command:
-</p>
-
-<pre>$ adb shell bmgr wipe &lt;TRANSPORT&gt; &lt;PACKAGE&gt;</pre>
-
-<p>
-  The <code>&lt;TRANSPORT&gt;</code> value must be prefixed by <code>com.google.android.gms</code>.
-  To get the list of transports, call the following command:
-</p>
-
-<pre>$ adb shell bmgr list transports</pre>
-
-<h2 id="issues">Known Issues</h2>
-
-<p>The following are known issues with the automatic backup service:</p>
-
-<ul>
-  <li><strong>Google Cloud Messaging</strong> -
-  For apps that use Google Cloud Messaging for push notifications, there is a known issue where
-  backing up the registration ID returned by Google Cloud Messaging registration can break push
-  notifications for the restored app. It is important to query the API for a new
-  registration ID after being installed on a new device, which is not be the case if the old
-  registration ID was backed up. To avoid this, exclude the registration id from the set of backed
-  up files.
-  </li>
-</ul>
diff --git a/docs/html/preview/behavior-changes.jd b/docs/html/preview/behavior-changes.jd
index 264e741..245fa88 100644
--- a/docs/html/preview/behavior-changes.jd
+++ b/docs/html/preview/behavior-changes.jd
@@ -1,442 +1,529 @@
 page.title=Behavior Changes
 page.keywords=preview,sdk,compatibility
-sdk.platform.apiLevel=MNC
+meta.tags="preview", "compatibility"
+page.tags="preview", "developer preview"
+page.image=images/cards/card-n-changes_2x.png
 @jd:body
 
+
 <div id="qv-wrapper">
 <div id="qv">
 
 <h2>In this document</h2>
 
-<ol id="toc44" class="hide-nested">
-    <li><a href="#behavior-runtime-permissions">Runtime Permissions</a></li>
-    <li><a href="#behavior-power">Power-Saving Optimizations</a></li>
-    <li><a href="#behavior-adoptable-storage">Adoptable Storage Devices</a></li>
-    <li><a href="#behavior-apache-http-client">Apache HTTP Client Removal</a></li>
-    <li><a href="#behavior-audiomanager-Changes">AudioManager Changes</a></li>
-    <li><a href="#behavior-notifications">Notifications</a></li>
-    <li><a href="#behavior-test-selection">Text Selection</a></li>
-    <li><a href="#behavior-keystore">Android Keystore Changes</a></li>
-    <li><a href="#behavior-network">Wi-Fi and Networking Changes</a></li>
-    <li><a href="#behavior-camera">Camera Service Changes</a></li>
-    <li><a href="#behavior-runtime">Runtime</a></li>
-    <li><a href="#behavior-hardware-id">Access to Hardware Identifier</a></li>
-    <li><a href="#behavior-apk-validation">APK Validation</a></li>
-    <li><a href="#behavior-usb">USB Connection</a></li>
-    <li><a href="#behavior-afw">Android for Work Changes</a></li>
-</ol>
-
-<h2>API Differences</h2>
 <ol>
-<li><a href="{@docRoot}preview/download.html">API level 22 to M Preview &raquo;</a> </li>
+  <li><a href="#perf">Performance Improvements</a>
+    <ol>
+      <li><a href="#doze">Doze</a></li>
+      <li><a href="#bg-opt">Background Optimizations</a></li>
+    </ol>
+  </li>
+  <li><a href="#perm">Permissions Changes</a>
+    <ol>
+      <li><a href="#permfilesys">File System Permission Changes</a></li>
+    </ol>
+  </li>
+  <li><a href="#accessibility">Accessibility Improvements</a>
+    <ol>
+      <li><a href="#screen-zoom">Screen Zoom</a></li>
+      <li><a href="#vision-settings">Vision Settings in Setup Wizard</a></li>
+    </ol>
+  </li>
+  <li><a href="#ndk">NDK Apps Linking to Platform Libraries</a></li>
+  <li><a href="#afw">Android for Work</a></li>
 </ol>
 
-
 <h2>See Also</h2>
 <ol>
-<li><a href="{@docRoot}preview/api-overview.html">M Developer Preview API Overview</a> </li>
+  <li><a href="{@docRoot}preview/api-overview.html">
+    Android N API Overview</a></li>
 </ol>
 
 </div>
 </div>
 
-<p>Along with new features and capabilities, the M Developer Preview includes a variety of
-system changes and API behavior changes. This document highlights
-some of the key changes that you should understand and account for in your apps.</p>
 
-<p>If you have previously published an app for Android, be aware that these changes in the
-platform affect your app.</p>
-
-<h2 id="behavior-runtime-permissions">Runtime Permissions</h1>
-<p>This preview introduces a new permissions model, where users can now directly manage
-app permissions at runtime. This model gives users improved visibility and control over
-permissions, while streamlining the installation and auto-update processes for app developers.
-Users can grant or revoke permissions individually for installed apps. </p>
-
-<p>On your apps that target the M Preview release or higher, make sure to check for and request
-permissions at runtime. To determine if your app has been granted a permission, call the
-new {@link android.content.Context#checkSelfPermission(java.lang.String) checkSelfPermission()}
-method. To request a permission, call the new
-{@link android.app.Activity#requestPermissions(java.lang.String[], int) requestPermissions()}
-method. Even if your app is not targeting the M Preview release, you should test your app under
-the new permissions model.</p>
-
-<p>For details on supporting the new permissions model in your app, see the
-<a href="{@docRoot}preview/features/runtime-permissions.html">
-Permissions</a> developer preview page. For tips on how to assess the impact on your app,
-see the <a href="{@docRoot}preview/testing/guide.html#runtime-permissions">Testing Guide</a></p>
-
-<h2 id="behavior-power">Power-Saving Optimizations</h2>
-<p>This preview introduces new power-saving optimizations for idle devices and apps.</p>
-<ul>
-<li><strong>Doze</strong>: If a user unplugs a device and leaves it stationary, with its screen off,
-for a period of time, the device goes into <em>Doze</em> mode, where it attempts to keep the system
-in a sleep state. In this mode, devices periodically resume normal operations for brief periods of
-time so that app syncing can occur and the system can perform any pending operations.
-<li><strong>App Standby</strong>: App Standby allows the system to determine that an app is idle
-when the user is not actively using it. The system makes this determination when the user does not
-touch the app for a certain period of time. If the device is unplugged, the system disables network
-access and suspends syncs and jobs for the apps it deems idle.</li>
-</ul>
-
-<p>To learn more about these power-saving changes, see
-<a href="{@docRoot}preview/features/power-mgmt.html">Power-Saving Optimizations</a>.</p>
-
-<h2 id="behavior-adoptable-storage">Adoptable Storage Devices</h2>
 <p>
-With this preview, users can <em>adopt</em> external storage devices such as SD cards. Adopting an
-external storage device encrypts and formats the device to behave like internal storage. This
-feature allows users to move both apps and private data of those apps between storage devices. When
-moving apps, the system respects the
-<a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a>
-preference in the manifest.</p>
+  Along with new features and capabilities, Android N
+  includes a variety of system and API behavior changes. This document
+  highlights some of the key changes that you should understand and account for
+  in your apps.
+</p>
 
-<p>If your app accesses the following APIs or fields, be aware that the file paths they return
-will dynamically change when the app is moved between internal and external storage devices.
-When building file paths, it is strongly recommended that you always call these APIs dynamically.
-Don’t use hardcoded file paths or persist fully-qualified file paths that were built previously.</p>
+<p>
+  If you have previously published an app for Android, be aware that your app
+  might be affected by these changes in the platform.
+</p>
+
+
+<h2 id="perf">Performance Improvements</h2>
+
+<p>
+  Android N contains system behavior changes aimed at improving the battery
+  life of devices, RAM usage, and app performance. These changes can impact the
+  availability of system resources and system notifications to your app. You
+  should review these changes and evaluate how your app may need to adjust to
+  them.
+</p>
+
+<h3 id="doze">Doze</h3>
+
+<p>
+  Introduced in Android 6.0 (API level 23), Doze improves battery life by
+  deferring CPU and network activities when a user leaves a device unplugged,
+  stationary, and with the screen turned off. Android N brings further
+  enhancements to Doze by applying a subset of CPU and network restrictions
+  while the device is unplugged with the screen turned off, but not necessarily
+  stationary, for example, when a handset is traveling in a user’s pocket.
+</p>
+
+
+<img src="{@docRoot}preview/images/doze-diagram-1.png"
+  alt="" height="251px" id="figure1" />
+<p class="img-caption">
+  <strong>Figure 1.</strong> Illustration of how Doze applies a first level of
+  system activity restrictions to improve battery life.
+</p>
+
+<p>
+  When a device is on battery power, and the screen has been off for a certain
+  time, the device enters Doze and applies the first subset of restrictions: It
+  shuts off app network access, and defers jobs and syncs. If the device is
+  stationary for a certain time after entering Doze, the system applies the
+  rest of the Doze restrictions to {@link android.os.PowerManager.WakeLock},
+  {@link android.app.AlarmManager} alarms, GPS, and Wi-Fi scans. Regardless of
+  whether some or all Doze restrictions are being applied, the system wakes the
+  device for brief maintenance windows, during which applications are allowed
+  network access and can execute any deferred jobs/syncs.
+</p>
+
+
+<img src="{@docRoot}preview/images/doze-diagram-2.png"
+  alt="" id="figure2" />
+<p class="img-caption">
+  <strong>Figure 2.</strong> Illustration of how Doze applies a second level of
+  system activity restrictions after the device is stationary for a certain time.
+</p>
+
+<p>
+  Note that activating the screen on or plugging in the device exits Doze and
+  removes these processing restrictions. The additional behavior does not
+  affect recommendations and best practices in adapting your app to the prior
+  version of Doze introduced in Android 6.0 (API level 23), as discussed in
+  <a href="{@docRoot}training/monitoring-device-state/doze-standby.html">
+  Optimizing for Doze and App Standby</a>. You should still
+  follow those recommendations, such as using Google Cloud Messaging (GCM) to
+  send and receive messages, and start planning updates to accomodate the
+  additional Doze behavior.
+</p>
+
+
+<h3 id="bg-opt">Project Svelte: Background Optimizations</h3>
+
+<p>
+  Android N removes three implicit broadcasts in order to help optimize both
+  memory use and power consumption. This change is necessary because implicit
+  broadcasts frequently start apps that have registered to listen for them in
+  the background. Removing these broadcasts can substantially benefit device
+  performance and user experience.
+</p>
+
+<p>
+  Mobile devices experience frequent connectivity changes, such as when moving
+  between Wi-Fi and mobile data. Currently, apps can monitor for changes in
+  connectivity by registering a receiver for the implicit {@link
+  android.net.ConnectivityManager#CONNECTIVITY_ACTION} broadcast in their
+  manifest. Since many apps register to receive this broadcast, a single
+  network switch can cause them all to wake up and process the broadcast at
+  once.
+</p>
+
+<p>
+  Similarly, apps can register to receive implicit {@link
+  android.hardware.Camera#ACTION_NEW_PICTURE} and {@link
+  android.hardware.Camera#ACTION_NEW_VIDEO} broadcasts from other apps, such as
+  Camera. When a user takes a picture with the Camera app, these apps wake up
+  to process the broadcast.
+</p>
+
+<p>
+  To alleviate these issues, Android N applies the following
+  optimizations:
+</p>
 
 <ul>
-<li>{@link android.content.Context} methods:
-    <ul>
-        <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
-        <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
-        <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
-        <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
-        <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
-        <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
-        <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
-        <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
-        <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
-    </ul>
-</li>
-<li>{@link android.content.pm.ApplicationInfo} fields:
-    <ul>
-        <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
-        <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
-    </ul>
-</li>
+  <li>Apps targeting Android N do not receive {@link
+  android.net.ConnectivityManager#CONNECTIVITY_ACTION} broadcasts, even if they
+  have manifest entries to request notification of these events. Apps running
+  in the foreground can still listen for {@code CONNECTIVITY_CHANGE} on their
+  main thread if they request notification with a {@link
+  android.content.BroadcastReceiver}.
+  </li>
+
+  <li>Apps cannot send or receive {@link
+  android.hardware.Camera#ACTION_NEW_PICTURE} or {@link
+  android.hardware.Camera#ACTION_NEW_VIDEO} broadcasts. This optimization
+  affects all apps, not only those targeting Android N.
+  </li>
 </ul>
 
-<p>To debug this feature in the developer preview, you can enable adoption of a USB drive that is
-connected to an Android device through a USB On-The-Go (OTG) cable, by running this command:</p>
+<p>If your app uses any of these intents, you should remove dependencies
+  on them as soon as possible so that you can target Android N devices properly.
+  The Android framework provides several solutions to mitigate the need for
+  these implicit broadcasts. For example, the {@link
+  android.app.job.JobScheduler} API provides a robust mechanism to schedule
+  network operations when specified conditions, such as connection to an
+  unmetered network, are met. You can even use {@link
+  android.app.job.JobScheduler} to react to changes to content providers.
+</p>
 
-<pre class="no-prettyprint">
-$ adb shell sm set-force-adoptable true
+<p>
+  For more information about background optimizations in N and how to adapt your app,
+  see <a href=
+  "{@docRoot}preview/features/background-optimization.html">Background
+  Optimizations</a>.
+</p>
+
+
+<h2 id="perm">Permissions Changes</h2>
+
+<p>
+  Android N includes changes to permissions that may affect your app,
+  including user accounts permissions and a new permission for writing to
+  external storage. Here is a summary of the permissions that have changed in
+  the preview:
+</p>
+
+<ul>
+  <li>{@code GET_ACCOUNTS} (Deprecated)
+    <p>
+      The GET_ACCOUNTS permission is now deprecated. The system ignores this
+      permission for apps that target Android N.
+    </p>
+  </li>
+
+</ul>
+
+<h3 id="permfilesys">File system permission changes</h3>
+
+<p>
+  In order to improve the security of private files, the private directory of
+  apps targeting Android N or higher has restricted access (0700). This prevents
+  leakage of metadata of private files, such as their size or existence. This
+  has multiple side effects:
+</p>
+
+<ul>
+  <li>
+    Private files’ file permissions can no longer be relaxed by the owner, and
+    an attempt to do so using
+    {@link android.content.Context#MODE_WORLD_READABLE} and/or
+    {@link android.content.Context#MODE_WORLD_WRITEABLE}, will trigger a
+    {@link java.lang.SecurityException}.
+  </li>
+  <li>
+    Passing <code>file://</code> URIs outside the package domain may leave the
+    receiver with an unaccessible path. Therefore, attempts to pass a
+    <code>file://</code> URI trigger a
+    <code>FileUriExposedException</code>. The recommended way to share the
+    content of a private file is using the {@link
+    android.support.v4.content.FileProvider}.
+  </li>
+  <li>
+    The {@link android.app.DownloadManager} can no longer share privately
+    stored files by filename. Legacy applications may end up with an
+    unaccessible path when accessing {@link
+    android.app.DownloadManager#COLUMN_LOCAL_FILENAME}. Apps targeting
+    Android N or higher trigger a {@link java.lang.SecurityException} when
+    attempting to access
+    {@link android.app.DownloadManager#COLUMN_LOCAL_FILENAME}.
+    Legacy applications that set the download location to a public location by
+    using
+    {@link
+    android.app.DownloadManager.Request#setDestinationInExternalFilesDir} or
+    {@link
+    android.app.DownloadManager.Request#setDestinationInExternalPublicDir}
+    can still access the path in
+    {@link android.app.DownloadManager#COLUMN_LOCAL_FILENAME}, however, this
+    method is strongly discouraged. The preferred way of accessing a file
+    exposed by the {@link android.app.DownloadManager} is using
+    {@link android.content.ContentResolver#openFileDescriptor}.
+  </li>
+</ul>
+
+<h2 id="accessibility">Accessibility Improvements</h2>
+
+<p>
+  Android N includes changes intended to improve the usability of the
+  platform for users with low or impaired vision. These changes should
+  generally not require code changes in your app, however you should review
+  these feature and test them with your app to assess potential impacts to user
+  experience.
+</p>
+
+
+<h3 id="screen-zoom">Screen Zoom</h3>
+
+<p>
+  Android N enables users to set <strong>Display size</strong>which magnifies
+  or shrinks all elements on the screen, thereby improving device accessibility
+  for users with low vision. Users cannot zoom the screen past a minimum screen
+  width of <a href=
+  "http://developer.android.com/guide/topics/resources/providing-resources.html">
+  sw320dp</a>, which is the width of a Nexus 4, a common medium-sized phone.
+</p>
+
+<div class="cols">
+
+<div class="col-6">
+  <img src="{@docRoot}preview/images/screen-zoom-1.png" alt="" height="XXX" id="figure1" />
+</div>
+<div class="col-6">
+  <img src="{@docRoot}preview/images/screen-zoom-2.png" alt="" height="XXX" id="figure1" />
+</div>
+
+</div> <!-- end cols -->
+<p class="img-caption">
+  <strong>Figure 3.</strong> The screen on the right shows the effect of
+  increasing the Display size of a device running an Android N system image.
+</p>
+
+
+<p>
+  When the device density changes, the system notifies running apps in the
+  following ways:
+</p>
+
+<ul>
+  <li>If an app targets API level 23 or lower, the system automatically kills
+  all its background processes. This means that if a user switches away from
+  such an app to open the <em>Settings</em> screen and changes the
+  <strong>Display size</strong> setting, the system kills the app in the same
+  manner that it would in a low-memory situation. If the app has any foreground
+  processes, the system notifies those processes of the configuration change as
+  described in <a href="{@docRoot}guide/topics/resources/runtime-changes.html">Handling
+  Runtime Changes</a>, just as if the device's orientation had changed.
+  </li>
+
+  <li>If an app targets Android N, all of its processes
+  (foreground and background) are notified of the configuration change as
+  described in <a href=
+  "{@docRoot}guide/topics/resources/runtime-changes.html">Handling
+  Runtime Changes</a>.
+  </li>
+</ul>
+
+<p>
+  Most apps do not need to make any changes to support this feature, provided
+  the apps follow Android best practices. Specific things to check for:
+</p>
+
+<ul>
+  <li>Test your app on a device with screen width <code><a href=
+  "{@docRoot}guide/topics/resources/providing-resources.html">sw320dp</a></code>
+  and be sure it performs adequately.
+  </li>
+
+  <li>When the device configuration changes, update any density-dependent
+  cached information, such as cached bitmaps or resources loaded from the
+  network. Check for configuration changes when the app resumes from the paused
+  state.
+    <p class="note">
+      <strong>Note:</strong> If you cache configuration-dependent data, it's a
+      good idea to include relevant metadata such as the appropriate screen
+      size or pixel density for that data. Saving this metadata allows you to
+      decide whether you need to refresh the cached data after a configuration
+      change.
+    </p>
+  </li>
+
+  <li>Avoid specifying dimensions with px units, since they do not scale with
+  screen density. Instead, specify dimensions with <a href=
+  "{@docRoot}guide/practices/screens_support.html">density-independent
+  pixel</a> (<code>dp</code>) units.
+  </li>
+</ul>
+
+<h3 id="vision-settings">Vision Settings in Setup Wizard</h3>
+
+<p>
+  Android N includes Vision Settings on the Welcome screen, where users can
+  set up the following accessibility settings on a new device:
+  <strong>Magnification gesture</strong>, <strong>Font size</strong>,
+  <strong>Display size</strong> and <strong>TalkBack</strong>. This change
+  increases the visibility of bugs related to different screen settings. To
+  assess the impact of this feature, you should test your apps with these
+  settings enabled. You can find the settings under <strong>Settings &gt;
+  Accessibility</strong>.
+</p>
+
+<h2 id="ndk">NDK Apps Linking to Platform Libraries</h2>
+
+<p>
+  Android N includes namespace changes to prevent loading of non-public APIs.
+  If you use the NDK, you should only be using public APIs from the Android
+  platform. Using non-public APIs in the next official release of Android
+  can cause your app to crash.
+</p>
+
+<p>
+  In order to alert you to use of non-public APIs, apps running on an Android N
+  device generate an error in logcat output when an app calls a non-public API.
+  This error is also displayed on the device screen as a message to help
+  raise awareness of this situation. You should review your app code to
+  remove use of non-public platform APIs and thoroughly test your apps using
+  a preview device or emulator.
+</p>
+
+<p>
+  If your app depends on platform libraries, see the NDK documentation for
+  typical fixes for replacing common private APIs with public API equivalents.
+  You may also be linking to platform libraries without realizing it,
+  especially if your app uses a library that is part of the platform (such as
+  <code>libpng</code>), but is not part of the NDK. In that case, ensure that
+  your APK contains all the .so files you intended to link against.
+</p>
+
+<p class="caution">
+  <strong>Caution:</strong> Some third-party libraries may link to non-public
+  APIs. If your app uses these libraries, your app may crash when running
+  on the next official release of Android.
+</p>
+
+<p>
+  Apps should not depend on or use native libraries that are not included in
+  the NDK, because they may change, or be removed from one Android release to
+  another. The switch from OpenSSL to BoringSSL is an example of such a change.
+  Also, different devices may offer different levels of compatibility, because
+  there are no compatibility requirements for platform libraries not included
+  in the NDK. If you must access non-NDK libraries on older devices, make the
+  loading dependent on the Android API level.
+</p>
+
+<p>
+  To help you diagnose these types problems here are some example Java and NDK
+  errors you might encounter when attempting to build your app with Android N:
+</p>
+
+<p>Example Java error:</p>
+<pre class="no-pretty-print">
+java.lang.UnsatisfiedLinkError: dlopen failed: library "/system/lib/libcutils.so"
+    is not accessible for the namespace "classloader-namespace"
 </pre>
 
-<h2 id="behavior-apache-http-client">Apache HTTP Client Removal</h2>
-<p>This preview removes support for the Apache HTTP client. If your app is using this client and
-targets Android 2.3 (API level 9) or higher, use the {@link java.net.HttpURLConnection} class
-instead. This API is more efficient because it reduces network use through transparent compression
-and response caching, and minimizes power consumption. To continue using the Apache HTTP APIs, you
-must first declare the following compile-time dependency in your {@code build.gradle} file:
+<p>Example NDK error:</p>
+<pre class="no-pretty-print">
+dlopen failed: cannot locate symbol "__system_property_get" referenced by ...
+</pre>
+
+
+<p>
+  Here are some typical fixes for apps encountering these types of errors:
 </p>
+
+<ul>
+  <li>Use of getJavaVM and getJNIEnv from libandroid_runtime.so can be replaced
+  with standard JNI functions:
+<pre class="no-pretty-print">
+AndroidRuntime::getJavaVM -&gt; GetJavaVM from &lt;jni.h&gt;
+AndroidRuntime::getJNIEnv -&gt; JavaVM::GetEnv or
+JavaVM::AttachCurrentThread from &lt;jni.h&gt;.
+</pre>
+  </li>
+
+  <li>Use of {@code property_get} symbol from {@code libcutils.so} can be
+    replaced with the public {@code alternative __system_property_get}.
+   To do this, use {@code __system_property_get} with the following include:
 <pre>
-android {
-    useLibrary 'org.apache.http.legacy'
-}
+#include &lt;sys/system_properties.h&gt;
 </pre>
-<p>Android is moving away from OpenSSL to the
-<a href="https://boringssl.googlesource.com/boringssl/" class="external-link">BoringSSL</a>
-library. If you’re using the Android NDK in your app, don't link against cryptographic libraries
-that are not a part of the NDK API, such as {@code libcrypto.so} and {@code libssl.so}. These
-libraries are not public APIs, and may change or break without notice across releases and devices.
-In addition, you may expose yourself to security vulnerabilities. Instead, modify your
-native code to call the Java cryptography APIs via JNI or to statically link against a
-cryptography library of your choice.</p>
+  </li>
 
-<h2 id="behavior-audiomanager-Changes">AudioManager Changes</h2>
-<p>Setting the volume directly or muting specific streams via the {@link android.media.AudioManager}
-class is no longer supported. The {@link android.media.AudioManager#setStreamSolo(int,boolean)
-setStreamSolo()} method is deprecated, and you should call the
-{@link android.media.AudioManager#requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, int, int) requestAudioFocus()}
-method instead. Similarly, the
-{@link android.media.AudioManager#setStreamMute(int,boolean) setStreamMute()} method is
-deprecated; instead, call the {@link android.media.AudioManager#adjustStreamVolume(int, int, int)
-adjustStreamVolume()} method and pass in the direction value
-{@link android.media.AudioManager#ADJUST_MUTE} or
-{@link android.media.AudioManager#ADJUST_UNMUTE}.</p>
+  <li>Use of {@code SSL_ctrl} symbol from {@code libcrypto.so} should be
+  replaced with an app local version. For example, you should statically link
+  {@code libcyrpto.a} in your {@code .so} file or include your own dynamically
+  {@code libcrypto.so} from BoringSSL or OpenSSL in your app.
+  </li>
+</ul>
 
-<h2 id="behavior-notifications">Notifications</h2>
+<h2 id="afw">Android for Work</h2>
 <p>
-This release removes the {@code Notification.setLatestEventInfo()} method. Use the
-{@link android.app.Notification.Builder} class instead to construct notifications. To update a
-notification repeatedly, reuse the {@link android.app.Notification.Builder} instance. Call the
-{@link android.app.Notification.Builder#build()} method to get
-updated {@link android.app.Notification} instances.
+  Android N contains changes for apps that target Android for Work, including
+  changes to certificate installation, password resetting, secondary user
+  management, and access to device identifiers. If you are building apps for
+  Android for Work environments, you should review these changes and modify
+  your app accordingly.
 </p>
-<p>The {@code adb shell dumpsys notification} command no longer prints out your notification text.
-Use the {@code adb shell dumpsys notification --noredact} command instead to print out the text
-in a notification object.</p>
 
-<h2 id="behavior-test-selection">Text Selection</h2>
-
-<img src="{@docRoot}preview/images/text-selection.gif"
-style="float:right; margin:0 0 20px 30px" width="360" height="640" />
-
-<p>When users select text in your app, you can now display text selection actions such as
-<em>Cut</em>, <em>Copy</em>, and <em>Paste</em> in a
-<a href="http://www.google.com/design/spec/patterns/selection.html#selection-text-selection"
-class="external-link">floating toolbar</a>. The user interaction implementation is similar to that
-for the contextual action bar, as described in
-<a href="{@docRoot}guide/topics/ui/menus.html#CABforViews">
-Enabling the contextual action mode for individual views</a>.</p>
-
-<p>To implement a floating toolbar for text selection, make the following changes in your existing
-apps:</p>
-<ol>
-<li>In your {@link android.view.View} or {@link android.app.Activity} object, change your
-{@link android.view.ActionMode} calls from
-{@code startActionMode(Callback)} to {@code startActionMode(Callback, ActionMode.TYPE_FLOATING)}.</li>
-<li>Take your existing implementation of {@code ActionMode.Callback} and make it extend
-{@link android.view.ActionMode.Callback2} instead.</li>
-<li>Override the
-{@link android.view.ActionMode.Callback2#onGetContentRect(android.view.ActionMode, android.view.View, android.graphics.Rect) onGetContentRect()}
-method to provide the coordinates of the content {@link android.graphics.Rect} object
-(such as a text selection rectangle) in the view.</li>
-<li>If the rectangle positioning is no longer valid, and this is the only element to be invalidated,
-call the {@link android.view.ActionMode#invalidateContentRect() invalidateContentRect()} method.</li>
-</ol>
-
-<p>If you are using <a href="{@docRoot}tools/support-library/index.html">
-Android Support Library</a> revision 22.2, be aware that floating toolbars are not
-backward-compatible and appcompat takes control over {@link android.view.ActionMode} objects by
-default. This prevents floating toolbars from being displayed. To enable
-{@link android.view.ActionMode} support in an
-{@link android.support.v7.app.AppCompatActivity}, call
-{@link android.support.v7.app.AppCompatActivity#getDelegate()}, then call
-{@link android.support.v7.app.AppCompatDelegate#setHandleNativeActionModesEnabled(boolean)
-setHandleNativeActionModesEnabled()} on the returned
-{@link android.support.v7.app.AppCompatDelegate} object and set the input
-parameter to {@code false}. This call returns control of {@link android.view.ActionMode} objects to
-the framework. In devices running the M Preview, that allows the framework to support
-{@link android.support.v7.app.ActionBar} or floating toolbar modes, while on pre-M Preview devices,
-only the {@link android.support.v7.app.ActionBar} modes are supported.</p>
-
-<h2 id="behavior-keystore">Android Keystore Changes</h2>
-<p>With this preview, the
-<a href="{@docRoot}training/articles/keystore.html">Android Keystore provider</a> no longer supports
-DSA. ECDSA is still supported.</p>
-
-<p>Keys which do not require encryption at rest will no longer be deleted when secure lock screen
-is disabled or reset (for example, by the user or a Device Administrator). Keys which require
-encryption at rest will be deleted during these events.</p>
-
-<h2 id="behavior-network">Wi-Fi and Networking Changes</h2>
-
-<p>This preview introduces the following behavior changes to the Wi-Fi and networking APIs.</p>
 <ul>
-<li>Your apps can now change the state of {@link android.net.wifi.WifiConfiguration} objects only
-if you created these objects. You are not permitted to modify or delete
-{@link android.net.wifi.WifiConfiguration} objects created by the user or by other apps.
+  <li>You must install a delegated certificate installer before the DPC can set
+  it. For both profile and device-owner apps targeting the N SDK, you should
+  install the delegated certificate installer before the device policy
+  controller (DPC) calls
+  <code>DevicePolicyManager.setCertInstallerPackage()</code>. If the installer
+  is not already installed, the system throws an
+  <code>IllegalArgumentException</code>.
+  </li>
+
+  <li>Reset password restrictions for device admins now apply to profile
+  owners. Device admins can no longer use
+  <code>DevicePolicyManager.resetPassword()</code> to clear passwords or change
+  ones that are already set. Device admins can still set a password, but only
+  when the device has no password, PIN, or pattern.
+  </li>
+
+  <li>Device and profile owners can manage accounts even if restrictions are
+  set. Device owners and profile owners can call the Account Management APIs
+  even if <code>DISALLOW_MODIFY_ACCOUNTS</code> user restrictions are in place.
+  </li>
+
+  <li>Device owners can manage secondary users more easily. When a device is
+  running in device owner mode, the <code>DISALLOW_ADD_USER</code> restriction
+  is automatically set. This prevents users from creating unmanaged secondary
+  users. In addition, the <code>CreateUser()</code> and
+  <code>createAndInitial()</code> methods are deprecated; the new
+  <code>DevicePolicyManager.createAndManageUser()</code> method replaces them.
+  </li>
+
+  <li>Device owners can access device identifiers. A Device owner can access the
+  Wi-Fi MAC address of a device, using
+  <code>DevicePolicyManagewr.getWifiMacAddress()</code>. If Wi-Fi has never
+  been enabled on the device, this method returns a value of {@code null}.
+  </li>
+</ul>
+
+<p>
+  For more information about changes to Android for Work in Android N, see
+  <a href="{@docRoot}preview/features/afw.html">Android for Work Updates</a>.
+</p>
+
+<h2 id="other">Other important points</h2>
+
+<ul>
+<li>When an app is running on Android N, but targets a lower API level,
+and the user changes display size, the app process is killed. The app
+must be able to gracefully handle this scenario. Otherwise, it crashes
+when the user restores it from Recents.
+
+<p>
+You should test your app to ensure
+that this behavior does not occur.
+You can do so by causing an identical crash
+when killing the app manually via DDMS.
+</p>
+
+<p>
+Apps targeting N and above are not automatically killed on density changes;
+however, they may still respond poorly to configuration changes.
+</p>
 </li>
+
 <li>
-Previously, if an app forced the device to connect to a specific Wi-Fi network by using
-{@link android.net.wifi.WifiManager#enableNetwork(int,boolean) enableNetwork()} with the
-{@code disableAllOthers=true} setting, the device disconnected from other networks such as
-cellular data. In this preview, the device no longer disconnects from such other networks. If
-your app’s {@code targetSdkVersion} is {@code “20”} or lower, it is pinned to the selected
-Wi-Fi network. If your app’s {@code targetSdkVersion} is {@code “21”} or higher, use the
-multinetwork APIs (such as
-{@link android.net.Network#openConnection(java.net.URL) openConnection()},
-{@link android.net.Network#bindSocket(java.net.Socket) bindSocket()}, and the new
-{@link android.net.ConnectivityManager#bindProcessToNetwork(android.net.Network)
-bindProcessToNetwork()} method) to ensure that its network traffic is sent on the selected network.</li>
-</ul>
-
-<h2 id="behavior-camera">Camera Service Changes</h2>
-<p>In this preview, the model for accessing shared resources in the camera service has been changed
-from the previous “first come, first serve” access model to an access model where high-priority
-processes are favored.  Changes to the service behavior include:</p>
-<ul>
-<li>Access to camera subsystem resources, including opening and configuring a camera device, is
-awarded based on the “priority” of the client application process. Application processes with
-user-visible or foreground activities are generally given a higher-priority, making camera resource
-acquisition and use more dependable.</li>
-<li>Active camera clients for lower priority apps may be “evicted” when a higher priority
-application attempts to use the camera.  In the deprecated {@link android.hardware.Camera} API,
-this results in
-{@link android.hardware.Camera.ErrorCallback#onError(int,android.hardware.Camera) onError()} being
-called for the evicted client. In the {@link android.hardware.camera2 Camera2} API, it results in
-{@link android.hardware.camera2.CameraDevice.StateCallback#onDisconnected(android.hardware.camera2.CameraDevice) onDisconnected()}
-being called for the evicted client.</li>
-<li>On devices with appropriate camera hardware, separate application processes are able to
-independently open and use separate camera devices simultaneously. However, multi-process use
-cases, where simultaneous access causes significant degradation of performance or capabilities of
-any of the open camera devices, are now detected and disallowed by the camera service. This change
-may result in “evictions” for lower priority clients even when no other app is directly
-attempting to access the same camera device.
-</li>
-<li>
-Changing the current user causes active camera clients in apps owned by the previous user account
-to be evicted.  Access to the camera is limited to user profiles owned by the current device user.
-In practice, this means that a “Guest” account, for example, will not be able to leave running
-processes that use the camera subsystem when the user has switched to a different account.
+Apps on Android N should be able to gracefully handle configuration changes,
+and should not crash on subsequent starts. You can verify app behavior
+by changing font size (<strong>Setting</strong> >
+<strong>Display</strong> > <strong>Font size</strong>), and then restoring
+the app from Recents.
 </li>
 </ul>
 
-<h2 id="behavior-runtime">Runtime</h2>
-<p>The ART runtime now properly implements access rules for the
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} method. This
-change fixes a problem where Dalvik was checking access rules incorrectly in previous versions.
-If your app uses the
-{@link java.lang.reflect.Constructor#newInstance(java.lang.Object...) newInstance()} method and you
-want to override access checks, call the
-{@link java.lang.reflect.Constructor#setAccessible(boolean) setAccessible()} method with the input
-parameter set to {@code true}. If your app uses the
-<a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7 appcompat library</a> or the
-<a href="{@docRoot}tools/support-library/features.html#v7-recyclerview">v7 recyclerview library</a>,
-you must update your app to use to the latest versions of these libraries. Otherwise, make sure that
-any custom classes referenced from XML are updated so that their class constructors are accessible.</p>
-
-<p>This preview updates the behavior of the dynamic linker. The dynamic linker now understands the
-difference between a library’s {@code soname} and its path
-(<a href="https://code.google.com/p/android/issues/detail?id=6670" class="external-link">
-public bug 6670</a>), and search by {@code soname} is now
-implemented. Apps which previously worked that have bad {@code DT_NEEDED} entries
-(usually absolute paths on the build machine’s file system) may fail when loaded.</p>
-
-<p>The {@code dlopen(3) RTLD_LOCAL} flag is now correctly implemented. Note that
-{@code RTLD_LOCAL} is the default, so calls to {@code dlopen(3)} that didn’t explicitly use
-{@code RTLD_LOCAL} will be affected (unless your app explicitly used {@code RTLD_GLOBAL}). With
-{@code RTLD_LOCAL}, symbols will not be made available to libraries loaded by later calls to
-{@code dlopen(3)} (as opposed to being referenced by {@code DT_NEEDED} entries).</p>
-</p>
-
-<h2 id="behavior-hardware-id">Access to Hardware Identifier</h2>
-<p>To provide users with greater data protection, starting in this release, Android
-removes programmatic access to the device’s local hardware identifier for
-apps using the Wi-Fi and Bluetooth APIs. The
-{@link android.net.wifi.WifiInfo#getMacAddress() WifiInfo.getMacAddress()} and the
-{@link android.bluetooth.BluetoothAdapter#getAddress() BluetoothAdapter.getAddress()} methods
-now return a constant value of {@code 02:00:00:00:00:00}.</p>
-
-<p>To access the hardware identifiers of nearby external devices via Bluetooth and Wi-Fi scans,
-your app must now have the following permissions:</p>
-<ul>
-<li>{@link android.net.wifi.WifiManager#getScanResults() WifiManager.getScanResults()}:
-Your app must have {@link android.Manifest.permission#ACCESS_FINE_LOCATION} or
-{@link android.Manifest.permission#ACCESS_COARSE_LOCATION} permission.</li>
-<li>{@link android.bluetooth.BluetoothDevice#ACTION_FOUND BluetoothDevice.ACTION_FOUND}:
-Your app must have {@link android.Manifest.permission#ACCESS_COARSE_LOCATION} permission.</li>
-<li>{@link android.bluetooth.le.BluetoothLeScanner#startScan(android.bluetooth.le.ScanCallback)
-BluetoothLeScanner.startScan()}: Your app must have
-{@link android.Manifest.permission#ACCESS_FINE_LOCATION} or
-{@link android.Manifest.permission#ACCESS_COARSE_LOCATION} permission.</li>
-</ul>
-
-<p class="note"><strong>Note</strong>: When a device running M Developer Preview initiates a
-background Wi-Fi or Bluetooth scan, the operation is visible to external devices as
-originating from a randomized MAC address.</p>
-
-<h2 id="behavior-apk-validation">APK Validation</h2>
-<p>The platform now performs stricter validation of APKs. An APK is considered corrupt if a file is
-declared in the manifest but not present in the APK itself. An APK must be re-signed if any of the
-contents are removed.</p>
-
-<h2 id="behavior-usb">USB Connection</h2>
-<p>Device connections through the USB port are now set to charge-only mode by default. To access
-the device and its content over a USB connection, users must explicitly grant permission for such
-interactions. If your app supports user interactions with the device over a USB port, take into
-consideration that the interaction must be explicitly enabled.
-</p>
-
-<h2 id="behavior-afw">Android for Work Changes</h2>
-<p>This preview includes the following behavior changes for Android for Work:</p>
-<ul>
-  <li><strong>Work contacts in personal contexts.</strong> The Google Dialer
-Call Log now displays work contacts when the user views past calls.
-Setting
-{@link android.app.admin.DevicePolicyManager#setCrossProfileCallerIdDisabled(android.content.ComponentName, boolean) setCrossProfileCallerIdDisabled()}
-to {@code true} hides the work profile contacts in the Google Dialer Call Log. Work contacts can be
-displayed along with personal contacts to devices over Bluetooth only if
-you set {@link android.app.admin.DevicePolicyManager#setBluetoothContactSharingDisabled(android.content.ComponentName, boolean)
-setBluetoothContactSharingDisabled()} to {@code false}. By default, it is set to {@code true}.
-  </li>
-  <li><strong>Wi-Fi configuration removal:</strong> Wi-Fi configurations added by a Profile Owner
-(for example, through calls to the
-{@link android.net.wifi.WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
-addNetwork()} method) are now removed if that work profile is deleted.
-  </li>
-  <li><strong>Wi-Fi configuration lockdown:</strong> Any Wi-Fi configuration created by
-  an active Device Owner can no longer be modified or deleted by the user if
-  {@link android.provider.Settings.Global#WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN} is non-zero.
-  The user can still create and modify their own Wi-Fi configurations. Active Device
-  Owners have the privilege of editing or removing any Wi-Fi configurations, including
-  those not created by them.
-  </li>
-<li><strong>Download Work Policy Controller via Google account addition:</strong> When a Google
-account that requires management via a Work Policy Controller (WPC) app is added to a device
-outside of a managed context, the add account flow now prompts the user to install the
-appropriate WPC. This behavior also applies to accounts added via
-<strong>Settings > Accounts</strong> and in the initial device setup wizard.</li>
-<li><strong>Changes to specific {@link android.app.admin.DevicePolicyManager} API behaviors:</strong>
-  <ul>
-  <li>Calling the
-{@link android.app.admin.DevicePolicyManager#setCameraDisabled(android.content.ComponentName,boolean) setCameraDisabled()}
-method affects the camera for the calling user only; calling it from the managed profile doesn’t
-affect camera apps running on the primary user.</li>
-  <li>In addition, the
-{@link android.app.admin.DevicePolicyManager#setKeyguardDisabledFeatures(android.content.ComponentName,int) setKeyguardDisabledFeatures()}
-    method is now available for Profile Owners, as well as to Device Owners. </li>
-  <li>A Profile Owner can set these keyguard restrictions:
-    <ul>
-    <li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_TRUST_AGENTS} and
-    {@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_FINGERPRINT}, which affect the
-    keyguard settings for the profile’s parent user.</li>
-    <li>{@link android.app.admin.DevicePolicyManager#KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS}, which
-    only affects notifications generated by applications in the managed profile.</li>
-    </ul>
-  </li>
-  <li>The {@link android.app.admin.DevicePolicyManager#createAndManageUser(android.content.ComponentName, java.lang.String, android.content.ComponentName, android.os.PersistableBundle, int) createAndManageUser()} method replaces createAndInitializeUser(), which has been removed.</li>
-  <li>The {@link android.app.admin.DevicePolicyManager#setScreenCaptureDisabled(android.content.ComponentName, boolean) setScreenCaptureDisabled()}
-method now also blocks the assist structure when an app of the given user is in the foreground. </li>
-  <li>{@link android.app.admin.DevicePolicyManager#EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM}
-now defaults to SHA-256. SHA-1 is still supported for backwards compatibility but will be removed
-in future.
-{@link android.app.admin.DevicePolicyManager#EXTRA_PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM}
-now only accepts SHA-256.</li>
-  <li>Device initializer APIs which existed in the M Developer Preview are now removed.</li>
-    <li><code>EXTRA_PROVISIONING_RESET_PROTECTION_PARAMETERS</code> is removed so NFC bump
-provisioning cannot programmatically unlock a factory reset protected device.</li>
-<li>You can now use the {@link android.app.admin.DevicePolicyManager#EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE}
-extra to pass data to the device owner app during NFC provisioning of the managed device.</li>
-    <li>Android for Work APIs are optimized for M runtime permissions, including Work profiles,
-assist layer, and others. New {@link android.app.admin.DevicePolicyManager} permission APIs don't
-affect pre-M apps.</li>
-<li>When users back out of the synchronous part of the setup flow initiated through an
-{@link android.app.admin.DevicePolicyManager#ACTION_PROVISION_MANAGED_PROFILE} or
-{@link android.app.admin.DevicePolicyManager#ACTION_PROVISION_MANAGED_DEVICE} intent, the system
-now returns a {@link android.app.Activity#RESULT_CANCELED} result code.</li>
-    </ul></li>
-
-<li><strong>Changes to other APIs</strong>:
-<ul>
-    <li>Data Usage: The {@code android.app.usage.NetworkUsageStats} class has been renamed
-{@link android.app.usage.NetworkStats}.</li>
-</ul>
-    </li>
-
-    <li><strong>Changes to global settings</strong>:
-    <ul>
-    <li>These settings can no longer be set via {@link android.app.admin.DevicePolicyManager#setGlobalSetting(android.content.ComponentName, java.lang.String, java.lang.String) setGlobalSettings()}</code>:
-<ul>
-    <li><code>BLUETOOTH_ON</code></li>
-    <li><code>DEVELOPMENT_SETTINGS_ENABLED</code></li>
-    <li><code>MODE_RINGER</code></li>
-    <li><code>NETWORK_PREFERENCE</code></li>
-    <li><code>WIFI_ON</code></li>
-</ul>
-    </li>
-    <li>These global settings can now be set via {@link android.app.admin.DevicePolicyManager#setGlobalSetting(android.content.ComponentName, java.lang.String, java.lang.String) setGlobalSettings()}:
-    <ul>
-    <li>{@link android.provider.Settings.Global#WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN}</li>
-    </ul>
-    </li>
-    </ul>
-</ul>
diff --git a/docs/html/preview/download-ota.jd b/docs/html/preview/download-ota.jd
new file mode 100644
index 0000000..d52a9771
--- /dev/null
+++ b/docs/html/preview/download-ota.jd
@@ -0,0 +1,323 @@
+page.title=Applying a Device OTA Image
+
+@jd:body
+
+<div style="position:relative; min-height:600px">
+
+  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
+
+    <p class="sdk-terms-intro">Before downloading and installing components of
+      the Android Preview SDK, you must agree to the following terms and
+      conditions.</p>
+
+    <h2 class="norule">Terms and Conditions</h2>
+
+    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
+This is the Android SDK Preview License Agreement (the “License Agreement”).
+
+1. Introduction
+
+1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 “Android-compatible” means any Android implemation that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+2. Accepting the License Agreement
+
+2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement.
+
+2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview.
+
+2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity.
+
+3. Preview License from Google
+
+3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the Preview solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this Preview to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this Preview is not used for that purpose.
+
+3.3 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
+
+3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights.
+
+3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview.
+
+4. Use of the Preview by You
+
+4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released.
+
+5. Your Developer Credentials
+
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+6. Privacy and Information
+
+6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/.
+
+7. Third Party Applications
+
+7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party.
+
+8. Using Google APIs
+
+8.1 Google APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+9. Terminating the License Agreement
+
+9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you.
+
+9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of:
+(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and
+(B) Google issues a final release version of the Android SDK.
+
+9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely.
+
+10. DISCLAIMERS
+
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+11. LIMITATION OF LIABILITY
+
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+12. Indemnification
+
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement.
+
+13. Changes to the License Agreement
+
+13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available.
+
+14. General Legal Terms
+
+14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+  </div><!-- sdk terms -->
+
+
+
+    <div id="sdk-terms-form">
+      <p>
+        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+        <label id="agreeLabel" for="agree">I have read and agree with the above terms and conditions</label>
+      </p>
+      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+    </div>
+
+
+  </div><!-- end TOS -->
+
+
+  <div id="landing">
+
+<p>
+  This page provides links to over-the-air (OTA) device images and describes
+  how to manually apply an OTA update to a device. This procedure may be useful
+  in recovering devices that received OTA updates through the Android Beta
+  Program and do not start up after the update is installed.
+</p>
+
+<h2 id="install-ota">Installing OTA Images</h2>
+
+<p></p>
+
+<p>To install an OTA package to a device:</p>
+
+<ol>
+  <li>Download an OTA device image from the table below.</li>
+  <li>Reboot the device into Recovery mode. For more information on putting
+    Nexus devices in this mode, see
+    <a href="https://support.google.com/nexus/answer/4596836">Reset your Nexus
+      device to factory settings</a>.
+  </li>
+  <li>On the device, select <strong>ADB sideload</strong>.</li>
+  <li>Connect the device to a computer with the Android development environment
+    loaded and the Android Debug Bridge (adb) tool installed.</li>
+  <li>Run the following command:
+    <pre>adb sideload <em>&lt;ota-package&gt;</em></pre>
+  </li>
+</ol>
+
+
+
+<h2 id="ota-images">Device OTA Images</h2>
+
+<table>
+  <tr>
+    <th scope="col">Device</th>
+    <th scope="col">Download / Checksums</th>
+  </tr>
+
+  <tr id="bullhead">
+    <td>Nexus 5X <br>"bullhead"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >bullhead-ota-2659757-4fab1a6f.zip</a><br>
+      MD5: 2a3263bb4935cdc7a326298f2cf13535<br>
+      SHA-1: 4fab1a6f1a68d94c02500d7acb15503192455f20
+    </td>
+  </tr>
+
+  <tr id="shamu">
+    <td>Nexus 6 <br>"shamu"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >shamu-ota-2659757-073c33ae.zip</a><br>
+      MD5: c201a9ccdfa5afdd2f1a9967e462098f<br>
+      SHA-1: 073c33aef3ecc5961e0ba92c5611b98f7750fa94
+    </td>
+  </tr>
+
+  <tr id="angler">
+    <td>Nexus 6P <br>"angler"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >angler-ota-2659757-938ecff3.zip</a><br>
+      MD5: 3363c343fafe03b118776738a37623a8<br>
+      SHA-1: 938ecff398f896c21c03615942727493aeae3556
+    </td>
+  </tr>
+
+  <tr id="volantis">
+    <td>Nexus 9 <br>"volantis"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >volantis-ota-NPC56X-2-3fa71d1a.zip</a><br>
+      MD5: 7221f249ab2a48faf7ca4dc275d8f79c<br>
+      SHA-1: 3fa71d1af634db140267133e220038a63e3d1749
+    </td>
+  </tr>
+
+  <tr id="volantisg">
+    <td>Nexus 9G <br>"volantisg"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >volantisg-ota-NPC56X-2-2edd174f.zip</a><br>
+      MD5: aff8190e0522c386d6b2e66908671377<br>
+      SHA-1: 2edd174f9a4d10ba3ed75643aa16a3f635451631
+    </td>
+  </tr>
+
+  <tr id="fugu">
+    <td>Nexus Player <br>"fugu"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >fugu-ota-2665432-f0f8fea4.zip</a><br>
+      MD5: 4403af764b57502d89111fd68ecb7da5<br>
+      SHA-1: f0f8fea49ea3874b751cf67462ecc5d8e039875e
+    </td>
+  </tr>
+
+  <tr id="ryu">
+    <td>Pixel C <br>"ryu"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >ryu-ota-2659757-1e496acd.zip</a><br>
+      MD5: 1ebd7fddb52cba59b7f686a972e023db<br>
+      SHA-1: 1e496acd67b8fdbee7b5c6ef721746f8e98e704f
+    </td>
+  </tr>
+
+</table>
+
+
+  </div><!-- landing -->
+
+</div><!-- relative wrapper -->
+
+
+
+<script>
+  var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/ota/";
+  function onDownload(link) {
+
+    $("#downloadForRealz").html("Download " + $(link).text());
+    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
+
+    $("#tos").fadeIn('fast');
+    $("#landing").fadeOut('fast');
+
+    return true;
+  }
+
+
+  function onAgreeChecked() {
+    /* verify that the TOS is agreed */
+    if ($("input#agree").is(":checked")) {
+      /* reveal the download button */
+      $("a#downloadForRealz").removeClass('disabled');
+    } else {
+      $("a#downloadForRealz").addClass('disabled');
+    }
+  }
+
+  function onDownloadForRealz(link) {
+    if ($("input#agree").is(':checked')) {
+    /*
+      $("#tos").fadeOut('fast');
+      $("#landing").fadeIn('fast');
+    */
+
+      ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
+
+    /*
+      location.hash = "";
+    */
+      return true;
+    } else {
+      return false;
+    }
+  }
+
+  $(window).hashchange( function(){
+    if (location.hash == "") {
+      location.reload();
+    }
+  });
+
+</script>
diff --git a/docs/html/preview/download.jd b/docs/html/preview/download.jd
index d00f90cbf..59b1cf7 100644
--- a/docs/html/preview/download.jd
+++ b/docs/html/preview/download.jd
@@ -1,5 +1,7 @@
-page.title=Downloads
-page.image=images/cards/card-download_16-9_2x.png
+page.title=Test on a Device
+meta.tags="preview", "nexus","system image"
+page.tags="preview", "androidn"
+page.image=images/cards/card-n-downloads_2x.png
 
 @jd:body
 
@@ -7,8 +9,9 @@
 
   <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
 
-    <p class="sdk-terms-intro">Before downloading and installing components of the Android Preview
-      SDK, you must agree to the following terms and conditions.</p>
+    <p class="sdk-terms-intro">Before downloading and installing components of
+      the Android Preview SDK, you must agree to the following terms and
+      conditions.</p>
 
     <h2 class="norule">Terms and Conditions</h2>
 
@@ -21,7 +24,9 @@
 
 1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
 
-1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+1.3 “Android-compatible” means any Android implemation that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
 
 2. Accepting the License Agreement
 
@@ -35,13 +40,13 @@
 
 3. Preview License from Google
 
-3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform.
+3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the Preview solely to develop applications for compatible implementations of Android.
 
-3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+3.2 You may not use this Preview to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this Preview is not used for that purpose.
 
-3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
+3.3 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
 
-3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview.
+3.4 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
 
 3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights.
 
@@ -164,79 +169,128 @@
   <div id="qv">
     <h2>In this document</h2>
       <ol>
-        <li><a href="#sdk">Android 6.0 SDK</a></li>
-        <li><a href="#docs">Developer Documentation</a></li>
-        <li><a href="#images">Hardware System Images</a></li>
+        <li><a href="#device-preview">Set up a hardware device</a>
+          <ol>
+            <li><a href="#ota">Get over-the-air updates</a></li>
+            <li><a href="#flash">Manually flash a device</a></li>
+            <li><a href="#revertDevice">Uninstalling</a></li>
+          </ol>
+        </li>
+        <li><a href="#setupAVD">Set up an emulator</a></li>
       </ol>
-
-     <h2>Legacy downloads</h2>
-        <ol>
-           <li><a href="{@docRoot}preview/download_mp1.html">Developer Preview Archive</a></li>
-        </ol>
   </div>
 </div>
 
+<p>
+  To run and test your app on the new platform you need to set up an Android N
+  runtime environment. You can do that in either of these ways:
+</p>
+
+<ul>
+  <li>Install Android N on a supported hardware device, or</li>
+  <li>Set up an Android emulator running Android N</li>
+</ul>
 
 <p>
-  The Android M Preview SDK includes development tools, Android system images, and library files to
-  help you test your app and the new APIs coming in the next release of the platform. This document
-  describes how to get the downloadable components of the preview for testing your app.
+  If you want an environment for basic compatibility testing of your app on the
+  new platform, all you need is your current APK and a hardware device or
+  emulator. You don't necessarily need to update your full development
+  environment to do basic testing.
+</p>
+
+<p>
+  If you want to modify your app to target Android N or use new Android N APIs,
+  you need to set up a development environment that's updated to support
+  Android N. <a href="{@docRoot}preview/setup-sdk.html">Set Up to Develop for
+  Android N</a> has details.
 </p>
 
 
-<h2 id="sdk">Android 6.0 SDK</h2>
+<h2 id="device-preview">Set up a hardware device</h2>
 
 <p>
-  With Developer Preview 3, the official Android 6.0 SDK is now available for download through the <a href=
-  "{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>. For more information on
-  downloading and configuring the SDK, see <a href=
-  "{@docRoot}preview/setup-sdk.html#downloadSdk">Set Up the SDK</a>.
+  The N Developer Preview offers system updates for a range of hardware devices
+  that you can use for testing your app, from phones to tablets and TV.
 </p>
 
-
-<h2 id="docs">Developer Documentation</h2>
-
 <p>
-  The developer documentation for Developer Preview 3 is released as Android 6.0 (API level 23) and
-  is available online, including the <a href="{@docRoot}reference/packages.html">API level 23
-  reference</a> and <a href="{@docRoot}sdk/api_diff/23/changes.html">diff report</a>. The following
-  developer documentation download package provides additional, incremental difference reports
-  between the preview releases.
+  If you have access to a supported device, you can update it to a Developer
+  Preview milestone build in one of these ways:
 </p>
 
-<table>
-  <tr>
-    <th scope="col">Description</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="docs-dl">
-    <td>Android M Preview 3<br>Developer Docs</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >m-preview-3-developer-docs.zip</a><br>
-      MD5: d99b14b0c06d31c8dfecb25072654ca3<br>
-      SHA-1: 9cefeeda07676130da606a1796e1c00fffc667c1
-    </td>
-  </tr>
-<table>
+<ul>
+  <li><strong>Enroll the device in automatic OTA system updates</strong> through the
+  <a href="https://g.co/androidbeta">Android Beta Program</a>. Once enrolled, your device will receive regular
+  over-the-air (OTA) updates of all milestone builds in the N Developer Preview. This
+  approach is recommended because it lets you seamlessly transition from your current
+  environment through the various releases of the N Developer Preview.</li>
+  <li><strong>Download a Developer Preview system image and flash the device</strong>.
+  OTA updates are not provided automatically for devices that you flash manually, but
+  you can enroll those devices in Android Beta Program to get OTA updates. </li>
+</ul>
 
-
-<h2 id="images">Hardware System Images</h2>
+<h3 id="ota">Enroll the device in automatic OTA updates</h3>
 
 <p>
-  These system images allow you to install a preview version of the platform on a physical device for
-  testing. By configuring a device with one of these images, you can install and test your app to
-  see how it performs on the next version of the platform. The process of installing a system image
-  on a device <em>removes all data from the device</em>, so you should backup your data before
-  installing a system image.
+  If you have access to a supported device (see the list in the Downloads
+  table), you can receive over-the-air updates to preview versions of Android
+  by enrolling that device in the <a href="https://g.co/androidbeta">Android Beta Program</a>. These updates are
+  automatically downloaded and will update your device just like official
+  system updates.
 </p>
 
-<p class="warning">
-  <b>Warning:</b> The following Android system images are previews and are subject to change. Your
-  use of these system images is governed by the Android SDK Preview License Agreement. The Android
-  preview system images are not stable releases, and may contain errors and defects that can result
-  in damage to your computer systems, devices, and data. The preview Android system images are not
-  subject to the same testing as the factory OS and can cause your phone and installed services and
-  applications to stop working.
+<p>
+  You can un-enroll a device at any time. The device will receive an OTA update
+  to the most recent production version of Android available for that device
+  (for example, Android 6.0 Marshmallow). The update requires a full device
+  reset, so user data on the device will be removed. Make sure to <strong>back
+  up important data</strong> before un-enrolling a device.
+</p>
+
+<p>
+  For more information and to enroll your device, see
+  the <a href="https://g.co/androidbeta">Android Beta Program</a> web site.
+</p>
+
+<p class="note"><strong>Note:</strong>
+  Un-enrolling requires a full device reset. Back up
+  important data first.
+</p>
+
+<h3 id="flash">Flashing a device manually</h3>
+
+<p>
+  At any time you can download the latest Developer Preview system image and
+  manually flash it to your device. See the table below to download the system
+  image for your test device. Manually flashing a device is useful if you need
+  precise control over the test environment or need to reinstall frequently,
+  such as for automated testing.
+</p>
+
+<!-- You can flash by ota or system image --><p>
+  Installing a system image on a device <strong>removes all data from the
+  device</strong>, so you should back up your data first.
+</p>
+
+<p>
+  After you back up your device data and download the system image below that
+  matches your device, follow the instructions at <a href=
+  "https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
+  to flash the image onto your device.
+</p>
+
+<p>
+  Manually flashed system images <strong>do not
+  automatically receive OTA updates</strong> to later Developer Preview
+  milestone builds. Make sure to keep your environment up-to-date and flash a
+  new system image at each Developer Preview milestone.
+</p>
+
+<p>
+  If you decide you want to get OTA updates after manually flashing a device,
+  all you need to do is enroll the device in the <a href="https://g.co/androidbeta">Android
+  Beta Program</a>. You can enroll the device at any time to receive the next Preview
+  update over the air.
 </p>
 
 <table>
@@ -244,76 +298,203 @@
     <th scope="col">Device</th>
     <th scope="col">Download / Checksums</th>
   </tr>
-  <tr id="hammerhead">
-    <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
+
+  <tr id="bullhead">
+    <td>Nexus 5X <br>"bullhead"</td>
     <td><a href="#top" onclick="onDownload(this)"
-      >hammerhead-MPA44I-preview-2ebbc049.tgz</a><br>
-      MD5: 91a924fb0c9f8e716e3b4c9954fd0dbb<br>
-      SHA-1: 2ebbc049b68c4da8baeee3e42bb94d7a965ba4a3
+      >bullhead-npc56w-preview-d86c7559.tgz</a><br>
+      MD5: d84b6c31a7754e505149594887b3481a<br>
+      SHA-1: d86c7559c93724cca6af91040b012c48529f2c94
     </td>
   </tr>
+
   <tr id="shamu">
     <td>Nexus 6 <br>"shamu"</td>
     <td><a href="#top" onclick="onDownload(this)"
-      >shamu-MPA44I-preview-62b9c486.tgz</a><br>
-      MD5: ac6e58da86125073d9c395257fd42664<br>
-      SHA-1: 62b9c486fd7a5020e228d53ca5acd5c1857e48ff
+      >shamu-npc56p-preview-54b13c67.tgz</a><br>
+      MD5: af183638cf34e0eb944a1957d7696f60<br>
+      SHA-1: 54b13c6703d369cc79a8fd8728fe4103c6343973
     </td>
   </tr>
+
+  <tr id="angler">
+    <td>Nexus 6P <br>"angler"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >angler-npc56w-preview-2834ca3c.tgz</a><br>
+      MD5: fd5c74f256cf82262779513854869570<br>
+      SHA-1: 2834ca3c425d7a61f5dfabb9d8dd108aec1ab58b
+    </td>
+  </tr>
+
   <tr id="volantis">
     <td>Nexus 9 <br>"volantis"</td>
     <td><a href="#top" onclick="onDownload(this)"
-      >volantis-MPA44I-preview-5c30a6e2.tgz</a><br>
-      MD5: 7f83768757913d3fea945a661020d185<br>
-      SHA-1: 5c30a6e2acd11a81f4105b12d23ff654f534f699
+      >volantis-npc56x-preview-5c323abd.tgz</a><br>
+      MD5: 474a13915e22d683cab5cf59ed868157<br>
+      SHA-1: 5c323abdec121b2f07fdabaa3d70d12106e450ad
+    </td>
+  </tr>
+
+  <tr id="volantisg">
+    <td>Nexus 9G <br>"volantisg"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >volantisg-npc56x-preview-41ae398c.tgz</a><br>
+      MD5: 5a145a546a4a9f68c2b8e2624cf9832b<br>
+      SHA-1: 41ae398c30536a2d96b04d61b9ef97a043bf59cf
     </td>
   </tr>
 
   <tr id="fugu">
     <td>Nexus Player <br>"fugu"</td>
     <td><a href="#top" onclick="onDownload(this)"
-      >fugu-MPA44I-preview-2860040a.tgz</a><br>
-      MD5: 438da8d37da9e341a69cfb16a4001ac5<br>
-      SHA-1: 2860040a326582f1ff5f702bf9a1ef002717fc98
+      >fugu-npc56r-preview-7027d5b6.tgz</a><br>
+      MD5: f5d3d8f75836ccfe4c70e8162e498be4<br>
+      SHA-1: 7027d5b662bceda4c80a91a0a14ef0e5a7ba795b
+    </td>
+  </tr>
+
+  <tr id="ryu">
+    <td>Pixel C <br>"ryu"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >ryu-npc56p-preview-335a86a4.tgz</a><br>
+      MD5: 4e21fb183bbbf467bee91598d587fd2e<br>
+      SHA-1: 335a86a435ee51f18464de343ad2e071c38f0e92
+    </td>
+  </tr>
+  <tr id="seed">
+    <td>General Mobile 4G (Android One) <br>"seed"</td>
+    <td><a href="#top" onclick="onDownload(this)"
+      >seed_l8150-npc56p-preview-82472ebc.tgz</a><br>
+      MD5: 983e083bc7cd0c4a2d39d6ebaa20202a<br>
+      SHA-1: 82472ebc9a6054a103f53cb400a1351913c95127
     </td>
   </tr>
 
 </table>
 
-<h3 id="install-image">Install an Image to a Device</h3>
+<h3 id="revertDevice">Uninstalling the Preview from a device</h3>
 
 <p>
-  In order to use a device image for testing, you must install it on a compatible device. Follow
-  the instructions below to install a system image:
+  If you want to uninstall the preview from a device, you can do so in one of
+  these ways: </p>
+  <ul>
+    <li><strong>Obtain a factory spec system image</strong> and then manually
+    flash it to the device.
+      <ul>
+          <li>For <strong>Nexus devices and Pixel C devices</strong>, see
+        the <a href="http://developers.google.com/android/nexus/images">Factory Images
+        for Nexus Devices</a> page for downloads. </li>
+        <li>For <strong>other devices</strong>, please contact the device manufacturer
+        directly. Alternatively, if the device is supported
+        in the Android Beta Program, you can enroll the device in the
+        program and then un-enroll it (see below).</li>
+      </ul>
+    </li>
+    <li><strong>Un-enroll the device from Android Beta Program</strong>. If the
+    device is enrolled in the <a href="https://g.co/androidbeta">Android Beta
+    Program</a>, regardless of device, you can simply un-enroll it from the program.
+  <p>
+    The device will receive an OTA update to the most recent production version
+    of Android available for that device (for example, Android 6.0 Marshmallow).
+    The update requires a full device reset, so user data on the device will be
+    removed. Make sure to <strong>back up important data</strong> before
+    un-enrolling a device.
+  </p>
+  </li>
+</ul>
+
+<p class="note"><strong>Note:</strong>
+  Uninstalling a Developer Preview system image prior to
+  the end of the program requires a full device reset and removes all user data
+  on the device.
 </p>
 
+
+<h2 id="setupAVD">Set up an emulator</h2>
+
+<p>To use the Android Emulator to run the Android N Preview, you need to
+download the Android N Preview SDK and create a virtual device for the
+emulator.</p>
+
+<p>First, download the Android N Preview SDK as follows (if you
+already got it while <a href="{@docRoot}preview/setup-sdk.html">setting up
+to develop for Android N</a>, you can skip this part):
+
 <ol>
-  <li>Download and uncompress one of the system image packages listed here.</li>
-  <li>Backup any data you want to preserve from the device.</li>
-  <li>Follow the instructions at
-  <a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
-  to flash the image onto your device.</li>
+  <li>In Android Studio, open the Settings dialog
+    (<strong>File &gt; Settings</strong> on Windows/Linux, or
+    <strong>Android Studio &gt; Preferences</strong> on Mac). In the left
+    panel, select <strong>Appearance &amp; Behavior &gt;
+  System Settings &gt; Android SDK</strong>.
+
+  <li>Click the <strong>SDK Platforms</strong> tab, then select the
+  <strong>Android N Preview</strong> check box.</li>
+
+  <li>Click the <strong>SDK Tools</strong> tab, then select the
+    <strong>Android SDK Build Tools</strong>, <strong>Android SDK
+    Platform-Tools</strong>, and <strong>Android SDK Tools</strong> check
+    boxes.
+  </li>
+
+  <li>Click <strong>OK</strong> and accept the license
+    agreements for any packages to be installed.
+  </li>
 </ol>
 
-<h3 id="update-image">Updating a Device with the Preview</h3>
+<p>You should now have <strong>Android SDK Built-Tools 24.0 0 rc1</strong>,
+<strong>Platform-Tools 24.0.0 rc1</strong>, and <strong>SDK Tools
+25.0.9</strong>. If you do not update the SDK Tools to 25.0.9, then you won't
+be able to run the x86_64 system images for Android N.</p>
+
+
+<p>Now create a virtual device with the Android N system image:</p>
+
+<ol>
+  <li>Open the AVD Manager by selecting <strong>Tools > Android >
+    AVD Manager</strong>.</li>
+  <li>Click <strong>Create Virtual Device</strong>.</li>
+  <li>Select a device such as Nexus 5X, Nexus 6P, Nexus 9, or Android TV,
+    then click <strong>Next</strong>.</li>
+  <li>Select the <strong>N</strong> system image (with the
+    <strong>x86</strong> ABI), then click <strong>Next</strong>.
+    (Only x86 system images are currently supported with the Android Emulator
+for the Android N Preview.)
+  <li>Complete the rest of the AVD configuration and click
+    <strong>Finish</strong>.</li>
+</ol>
+
+<p>You can now launch the Android Emulator with the Android N Preview AVD.</p>
 
 <p>
-  Once you have installed a preview system image on a development device, the device is upgraded
-  automatically with the next preview release through over-the-air (OTA) updates. When the update
-  is available, the device displays notification that an update is available and allows you to
-  install it. You can also manually install the next preview image by repeating the procedure in
-  the previous section.
+For the best experience in the Android Emulator, install
+Android Studio 2.1 Preview, which supports the <a
+href="http://tools.android.com/tech-docs/emulator">Android Emulator 2.0 Beta</a>
+with much faster performance compared to the Emulator in
+Android Studio 1.5.</p>
+
+<p class="note"><strong>Note:</strong>
+  If you're currently using Android Studio 2.0 Beta, there's a known issue
+  that prevents you from creating AVDs with the N Preview system images, so
+  you currently need to use the Android Studio 2.1 preview to create AVDs.
 </p>
 
-<h3 id="revertDevice">Revert a Device to Factory Specifications</h3>
-
-<p>
-  If you want to uninstall the preview and revert the device to factory specifications, go to
-  <a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a> and
-  download the image you want to flash to for your device. Follow the instructions on that page to
-  flash the image to your device.
+<p>For more information about creating virtual devices, see <a href=
+  "{@docRoot}tools/devices/index.html">Managing Virtual Devices</a>.
 </p>
 
+
+
+
+
+
+
+
+
+
+
+
+
+
   </div><!-- landing -->
 
 </div><!-- relative wrapper -->
diff --git a/docs/html/preview/download_mp1.jd b/docs/html/preview/download_mp1.jd
deleted file mode 100644
index 5838f20..0000000
--- a/docs/html/preview/download_mp1.jd
+++ /dev/null
@@ -1,355 +0,0 @@
-page.title=Developer Preview 1 Archive
-page.image=images/cards/card-download_16-9_2x.png
-
-@jd:body
-
-<div style="position:relative; min-height:600px">
-
-  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
-
-    <p class="sdk-terms-intro">Before downloading and installing components of the Android Preview
-      SDK, you must agree to the following terms and conditions.</p>
-
-    <h2 class="norule">Terms and Conditions</h2>
-
-    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
-This is the Android SDK Preview License Agreement (the “License Agreement”).
-
-1. Introduction
-
-1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview.
-
-1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
-
-1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
-
-2. Accepting the License Agreement
-
-2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement.
-
-2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement.
-
-2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview.
-
-2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity.
-
-3. Preview License from Google
-
-3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform.
-
-3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
-
-3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
-
-3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview.
-
-3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights.
-
-3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you.
-
-3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
-
-3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview.
-
-4. Use of the Preview by You
-
-4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications.
-
-4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
-
-4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so.
-
-4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party.
-
-4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
-
-4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
-
-4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released.
-
-5. Your Developer Credentials
-
-5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
-
-6. Privacy and Information
-
-6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected.
-
-6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/.
-
-7. Third Party Applications
-
-7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
-
-7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
-
-7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party.
-
-8. Using Google APIs
-
-8.1 Google APIs
-
-8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
-
-8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
-
-9. Terminating the License Agreement
-
-9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below.
-
-9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials.
-
-9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you.
-
-9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of:
-(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and
-(B) Google issues a final release version of the Android SDK.
-
-9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely.
-
-10. DISCLAIMERS
-
-10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
-
-10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
-
-10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
-
-11. LIMITATION OF LIABILITY
-
-11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
-
-12. Indemnification
-
-12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement.
-
-13. Changes to the License Agreement
-
-13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available.
-
-14. General Legal Terms
-
-14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview.
-
-14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
-
-14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
-
-14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
-
-14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
-
-14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google.
-
-14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
-  </div><!-- sdk terms -->
-
-
-
-    <div id="sdk-terms-form">
-      <p>
-        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
-        <label id="agreeLabel" for="agree">I have read and agree with the above terms and conditions</label>
-      </p>
-      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
-    </div>
-
-
-  </div><!-- end TOS -->
-
-
-  <div id="landing">
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>In this document</h2>
-      <ol>
-        <li><a href="#sdk">Developer Preview 1 SDK</a></li>
-        <li><a href="#docs">Developer Documentation</a></li>
-        <li><a href="#images">Hardware System Images</a></li>
-      </ol>
-  </div>
-</div>
-
-
-<p>
-  The Android M Preview SDK includes development tools, Android system files, and library files to
-  help you test your app and the new APIs coming in the next release of the platform. This document
-  describes how to get the downloadable components of the preview for testing your app.
-</p>
-
-
-<h2 id="sdk">Developer Preview 1 SDK</h2>
-
-<p>
-  The Preview SDK is available for download through the <a href=
-  "{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>. For more information on
-  downloading and configuring the Preview SDK, see <a href=
-  "{@docRoot}preview/setup-sdk.html#downloadSdk">Set Up the Preview SDK</a>.
-</p>
-
-
-<h2 id="docs">Developer Documentation</h2>
-
-<p>
-  The developer documentation download package provides detailed API reference information and an API difference report for the preview.
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Description</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="docs-dl">
-    <td>Android M Preview 1<br>Developer Docs</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >m-preview-1-developer-docs.zip</a><br>
-      MD5: b65201b0d35416f5a1b7a071b52854a7<br>
-      SHA-1: d47e856aa65e06897e6edd902ad8d2b1f05ac3ec
-    </td>
-  </tr>
-<table>
-
-
-<h2 id="images">Hardware System Images</h2>
-
-<p>
-  These system images allow you to install a preview version of the platform on a physical device for
-  testing. By configuring a device with one of these images, you can install and test your app to
-  see how it performs on the next version of the platform. The process of installing a system image
-  on a device <em>removes all data from the device</em>, so you should backup your data before
-  installing a system image.
-</p>
-
-<p class="warning">
-  <b>Warning:</b> The following Android system images are previews and are subject to change. Your
-  use of these system images is governed by the Android SDK Preview License Agreement. The Android
-  preview system images are not stable releases, and may contain errors and defects that can result
-  in damage to your computer systems, devices, and data. The preview Android system images are not
-  subject to the same testing as the factory OS and can cause your phone and installed services and
-  applications to stop working.
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Device</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="hammerhead">
-    <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >hammerhead-MPZ44Q-preview-55d76d3a.tgz</a><br>
-      MD5: 9e2631b06c6525e401ceaae3677ff320<br>
-      SHA-1: 55d76d3a379b18f3363f28d8a462c236ab96fc36
-    </td>
-  </tr>
-  <tr id="shamu">
-    <td>Nexus 6 <br>"shamu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >shamu-MPZ44Q-preview-c1d6506a.tgz</a><br>
-      MD5: 307cbf9dab0a38df4ab2639d02be12aa<br>
-      SHA-1: c1d6506a74094bdb2f4b8677c7fe4967334f9ea8
-    </td>
-  </tr>
-  <tr id="volantis">
-    <td>Nexus 9 <br>"volantis"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >volantis-MPZ44Q-preview-d15ad483.tgz</a><br>
-      MD5: fae40377fd999d2b09128665c915264d<br>
-      SHA-1: 7ab05f96093b2cb370b226f65931202714cbc2ca
-    </td>
-  </tr>
-  <tr id="fugu">
-    <td>Nexus Player <br>"fugu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >fugu-MPZ44Q-preview-2406ba05.tgz</a><br>
-      MD5: 815902141a85cc65e7725f005cad31d5<br>
-      SHA-1: 2406ba0598dea1e69110497ac0bc8e16789bc8fb
-    </td>
-  </tr>
-</table>
-
-<h3 id="install-image">Install an Image to a Device</h3>
-
-<p>
-  In order to use a device image for testing, you must install it on a compatible device. Follow
-  the instructions below to install a system image:
-</p>
-
-<ol>
-  <li>Download and uncompress one of the system image packages listed here.</li>
-  <li>Backup any data you want to preserve from the device.</li>
-  <li>Follow the instructions at
-  <a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
-  to flash the image onto your device.</li>
-</ol>
-
-<p class="note">
-  <strong>Note:</strong> Once you have flashed a development device the preview system image,
-  it is upgraded automatically with the next preview release through over-the-air (OTA) updates.
-</p>
-
-<h3 id="revertDevice">Revert a Device to Factory Specifications</h3>
-
-<p>
-  If you want to uninstall the preview and revert the device to factory specifications, go to
-  <a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a> and
-  download the image you want to flash to for your device. Follow the instructions on that page to
-  flash the image to your device.
-</p>
-
-  </div><!-- landing -->
-
-</div><!-- relative wrapper -->
-
-
-
-<script>
-  var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
-  function onDownload(link) {
-
-    $("#downloadForRealz").html("Download " + $(link).text());
-    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
-
-    $("#tos").fadeIn('fast');
-    $("#landing").fadeOut('fast');
-
-    return true;
-  }
-
-
-  function onAgreeChecked() {
-    /* verify that the TOS is agreed */
-    if ($("input#agree").is(":checked")) {
-      /* reveal the download button */
-      $("a#downloadForRealz").removeClass('disabled');
-    } else {
-      $("a#downloadForRealz").addClass('disabled');
-    }
-  }
-
-  function onDownloadForRealz(link) {
-    if ($("input#agree").is(':checked')) {
-    /*
-      $("#tos").fadeOut('fast');
-      $("#landing").fadeIn('fast');
-    */
-
-      ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
-
-    /*
-      location.hash = "";
-    */
-      return true;
-    } else {
-      return false;
-    }
-  }
-
-  $(window).hashchange( function(){
-    if (location.hash == "") {
-      location.reload();
-    }
-  });
-
-</script>
diff --git a/docs/html/preview/download_mp2.jd b/docs/html/preview/download_mp2.jd
deleted file mode 100644
index 0208b5e..0000000
--- a/docs/html/preview/download_mp2.jd
+++ /dev/null
@@ -1,367 +0,0 @@
-page.title=Developer Preview 2 Archive
-page.image=images/cards/card-download_16-9_2x.png
-
-@jd:body
-
-<div style="position:relative; min-height:600px">
-
-  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
-
-    <p class="sdk-terms-intro">Before downloading and installing components of the Android Preview
-      SDK, you must agree to the following terms and conditions.</p>
-
-    <h2 class="norule">Terms and Conditions</h2>
-
-    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
-This is the Android SDK Preview License Agreement (the “License Agreement”).
-
-1. Introduction
-
-1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview.
-
-1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
-
-1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
-
-2. Accepting the License Agreement
-
-2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement.
-
-2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement.
-
-2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview.
-
-2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity.
-
-3. Preview License from Google
-
-3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform.
-
-3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
-
-3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
-
-3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview.
-
-3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights.
-
-3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you.
-
-3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
-
-3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview.
-
-4. Use of the Preview by You
-
-4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications.
-
-4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
-
-4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so.
-
-4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party.
-
-4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
-
-4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
-
-4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released.
-
-5. Your Developer Credentials
-
-5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
-
-6. Privacy and Information
-
-6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected.
-
-6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/.
-
-7. Third Party Applications
-
-7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
-
-7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
-
-7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party.
-
-8. Using Google APIs
-
-8.1 Google APIs
-
-8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
-
-8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
-
-9. Terminating the License Agreement
-
-9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below.
-
-9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials.
-
-9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you.
-
-9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of:
-(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and
-(B) Google issues a final release version of the Android SDK.
-
-9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely.
-
-10. DISCLAIMERS
-
-10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
-
-10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
-
-10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
-
-11. LIMITATION OF LIABILITY
-
-11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
-
-12. Indemnification
-
-12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement.
-
-13. Changes to the License Agreement
-
-13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available.
-
-14. General Legal Terms
-
-14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview.
-
-14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
-
-14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
-
-14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
-
-14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
-
-14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google.
-
-14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
-  </div><!-- sdk terms -->
-
-
-
-    <div id="sdk-terms-form">
-      <p>
-        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
-        <label id="agreeLabel" for="agree">I have read and agree with the above terms and conditions</label>
-      </p>
-      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
-    </div>
-
-
-  </div><!-- end TOS -->
-
-
-  <div id="landing">
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>In this document</h2>
-      <ol>
-        <li><a href="#sdk">Developer Preview 2 SDK</a></li>
-        <li><a href="#docs">Developer Documentation</a></li>
-        <li><a href="#images">Hardware System Images</a></li>
-      </ol>
-
-     <h2>Legacy downloads</h2>
-        <ol>
-           <li><a href="{@docRoot}preview/download_mp1.html">Developer Preview Archive</a></li>
-        </ol>
-  </div>
-</div>
-
-
-<p>
-  The Android M Preview SDK includes development tools, Android system files, and library files to
-  help you test your app and the new APIs coming in the next release of the platform. This document
-  describes how to get the downloadable components of the preview for testing your app.
-</p>
-
-
-<h2 id="sdk">Developer Preview 2 SDK</h2>
-
-<p>
-  The Preview SDK is available for download through the <a href=
-  "{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>. For more information on
-  downloading and configuring the Preview SDK, see <a href=
-  "{@docRoot}preview/setup-sdk.html#downloadSdk">Set Up the Preview SDK</a>.
-</p>
-
-
-<h2 id="docs">Developer Documentation</h2>
-
-<p>
-  The developer documentation download package provides detailed API reference information and an API difference report for the preview.
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Description</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="docs-dl">
-    <td>Android M Preview 2<br>Developer Docs</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >m-preview-2-developer-docs.zip</a><br>
-      MD5: 1db6fff9c722b0339757e1cdf43663a8<br>
-      SHA-1: 5a4ae88d644e63824d21b0e18f8e3977a7665157
-    </td>
-  </tr>
-<table>
-
-
-<h2 id="images">Hardware System Images</h2>
-
-<p>
-  These system images allow you to install a preview version of the platform on a physical device for
-  testing. By configuring a device with one of these images, you can install and test your app to
-  see how it performs on the next version of the platform. The process of installing a system image
-  on a device <em>removes all data from the device</em>, so you should backup your data before
-  installing a system image.
-</p>
-
-<p class="warning">
-  <b>Warning:</b> The following Android system images are previews and are subject to change. Your
-  use of these system images is governed by the Android SDK Preview License Agreement. The Android
-  preview system images are not stable releases, and may contain errors and defects that can result
-  in damage to your computer systems, devices, and data. The preview Android system images are not
-  subject to the same testing as the factory OS and can cause your phone and installed services and
-  applications to stop working.
-</p>
-
-<table>
-  <tr>
-    <th scope="col">Device</th>
-    <th scope="col">Download / Checksums</th>
-  </tr>
-  <tr id="hammerhead">
-    <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >hammerhead-MPZ79M-preview-b1f4bde4.tgz</a><br>
-      MD5: 2ca9f18bf47a061b339bab52647ceb0d<br>
-      SHA-1: b1f4bde447eccbf8ce5d9b8b8ba954e3eac8e939
-    </td>
-  </tr>
-  <tr id="shamu">
-    <td>Nexus 6 <br>"shamu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >shamu-MPZ79M-preview-e1024040.tgz</a><br>
-      MD5: 24a2118da340b9afedfbdfc026f6ff81<br>
-      SHA-1: e10240408859d5188c4aae140e1c539130ba614b
-    </td>
-  </tr>
-  <tr id="volantis">
-    <td>Nexus 9 <br>"volantis"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >volantis-MPZ79M-preview-9f305342.tgz</a><br>
-      MD5: 9edabf0a4c61b247f1cbb9dfdc0a899e<br>
-      SHA-1: 9f30534216f10899a6a75495fc7e92408ea333a7
-    </td>
-  </tr>
-
-  <tr id="fugu">
-    <td>Nexus Player <br>"fugu"</td>
-    <td><a href="#top" onclick="onDownload(this)"
-      >fugu-MPZ79N-preview-fb63af98.tgz</a><br>
-      MD5: e8d081137a20b66df595ee69523314b5<br>
-      SHA-1: fb63af98302dd97be8de9313734d389ccdcce250
-    </td>
-  </tr>
-
-</table>
-
-<h3 id="install-image">Install an Image to a Device</h3>
-
-<p>
-  In order to use a device image for testing, you must install it on a compatible device. Follow
-  the instructions below to install a system image:
-</p>
-
-<ol>
-  <li>Download and uncompress one of the system image packages listed here.</li>
-  <li>Backup any data you want to preserve from the device.</li>
-  <li>Follow the instructions at
-  <a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
-  to flash the image onto your device.</li>
-</ol>
-
-<h3 id="update-image">Updating a Device with the Preview</h3>
-
-<p>
-  Once you have installed a preview system image on a development device, the device is upgraded
-  automatically with the next preview release through over-the-air (OTA) updates. When the update
-  is available, the device displays notification that an update is available and allows you to
-  install it. You can also manually install the next preview image by repeating the procedure in
-  the previous section.
-</p>
-
-<h3 id="revertDevice">Revert a Device to Factory Specifications</h3>
-
-<p>
-  If you want to uninstall the preview and revert the device to factory specifications, go to
-  <a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a> and
-  download the image you want to flash to for your device. Follow the instructions on that page to
-  flash the image to your device.
-</p>
-
-  </div><!-- landing -->
-
-</div><!-- relative wrapper -->
-
-
-
-<script>
-  var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
-  function onDownload(link) {
-
-    $("#downloadForRealz").html("Download " + $(link).text());
-    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
-
-    $("#tos").fadeIn('fast');
-    $("#landing").fadeOut('fast');
-
-    return true;
-  }
-
-
-  function onAgreeChecked() {
-    /* verify that the TOS is agreed */
-    if ($("input#agree").is(":checked")) {
-      /* reveal the download button */
-      $("a#downloadForRealz").removeClass('disabled');
-    } else {
-      $("a#downloadForRealz").addClass('disabled');
-    }
-  }
-
-  function onDownloadForRealz(link) {
-    if ($("input#agree").is(':checked')) {
-    /*
-      $("#tos").fadeOut('fast');
-      $("#landing").fadeIn('fast');
-    */
-
-      ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
-
-    /*
-      location.hash = "";
-    */
-      return true;
-    } else {
-      return false;
-    }
-  }
-
-  $(window).hashchange( function(){
-    if (location.hash == "") {
-      location.reload();
-    }
-  });
-
-</script>
diff --git a/docs/html/preview/features/afw.jd b/docs/html/preview/features/afw.jd
new file mode 100644
index 0000000..24f67ef
--- /dev/null
+++ b/docs/html/preview/features/afw.jd
@@ -0,0 +1,543 @@
+page.title=Android for Work Updates
+page.metaDescription=New Android for Work APIs and features in Android N.
+page.keywords="android for work", "android N", "enterprise", "QR code"
+
+@jd:body
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>In this document</h2>
+      <ol>
+        <li><a href="#qr">QR Code Provisioning
+                </a></li>
+
+        <li><a href="#sec-challenge">Work Profile Security Challenge
+                </a></li>
+
+        <li><a href="#suspend">Disable Access to Apps
+                </a></li>
+
+        <li><a href="#toggle-work">Toggle Work Mode
+                </a></li>
+
+        <li><a href="#always-on-vpn">Always-On VPN
+                </a></li>
+
+        <li><a href="#contacts">Contacts Integration with Work Profile
+                </a></li>
+
+        <li><a href="#remote-reboot">Remote Reboot
+                </a></li>
+
+        <li><a href="#disable-roaming">Disable Data Roaming
+                </a></li>
+
+        <li><a href="#process-logging">Enterprise Process Logging
+                </a></li>
+
+        <li><a href="#bug-reports">Remote Bug Reports
+                </a></li>
+
+        <li><a href="#remove-cert">Remove a Client Certificate
+                </a></li>
+
+        <li><a href="#grant-cert-on-install">Grant Access to Client Certificate
+                on Installation</a></li>
+
+        <li><a href="#ui-policy">System UI Policy Transparency
+                </a></li>
+
+        <li><a href="#restrictions-mgmt">App Restrictions Management Enhancements
+                </a></li>
+
+        <li><a href="#location-off">Location Off Switch
+                </a></li>
+
+        <li><a href="#custom-provisioning">Customized Provisioning
+                </a></li>
+
+        <li><a href="#multi-wifi-ca">Multiple Wi-Fi CA Certificates
+                </a></li>
+
+        <li><a href="#custom-lock">Customized Lockscreen Message
+                </a></li>
+
+        <li><a href="#work-connectionservice">Work Profile ConnectionService
+                </a></li>
+
+        <li><a href="#lock-wp">Lock Down Wallpaper
+                </a></li>
+
+        <li><a href="#lock-user-icon">Lock Down User Icon
+                </a></li>
+
+        <li><a href="#health-monitoring">Device Health Monitoring
+                </a></li>
+
+      </ol>
+
+    <h2>See Also</h2>
+    <ul>
+      <li><a href="{@docRoot}preview/setup-sdk.html#docs-dl">N Preview SDK
+            Reference</a></li>
+    </ul>
+  </div>
+</div>
+
+<p>This document describes the new Android for Work features provided in
+Android N.</p>
+
+<h2 id="qr">QR Code Provisioning</h2>
+
+<p>
+  Android for Work now supports using QR codes to provision corporate-liable
+  devices. The setup wizard now allows you to scan a QR code to provision
+  the device.
+</p>
+
+<h2 id="sec-challenge">Work Profile Security Challenge</h2>
+
+<p>
+  Profile owners can require users to specify a security challenge for apps
+  running in the work profile. The system shows the security challenge when the
+  user attempts to open any work apps. If the user successfully completes the
+  security challenge, the system unlocks the work profile and decrypts it if
+  necessary.
+</p>
+
+<p>
+  If a profile owner sends an {@link
+  android.app.admin.DevicePolicyManager#ACTION_SET_NEW_PASSWORD} intent, the
+  system prompts a user to set up a security challenge. The profile owner can
+  also send an <code>ACTION_SET_NEW_PARENT_PROFILE_PASSWORD</code> intent to
+  prompt the user to set a device lock.
+</p>
+
+<p>
+  Profile owners can choose to set the password policies for the work challenge
+  differently from the policies for other device passwords. For example, the
+  minimum length for the device challenge response can be different from the
+  length required for other passwords. Profile owners set the challenge
+  policies using the usual {@link android.app.admin.DevicePolicyManager}
+  methods, such as {@link
+  android.app.admin.DevicePolicyManager#setPasswordQuality
+  setPasswordQuality()} and {@link
+  android.app.admin.DevicePolicyManager#setPasswordMinimumLength
+  setPasswordMinimumLength()}. The profile owner can also set the device lock,
+  by using the {@link android.app.admin.DevicePolicyManager} instance returned
+  by the new <code>DevicePolicyManager.getParentProfileInstance()</code>
+  method. Additionally, profile owners can customize the credentials screen for
+  the work challenge by using the {@link android.app.admin.DevicePolicyManager}
+  class's new <code>setOrganizationColor()</code> and
+  <code>setOrganizationName()</code> methods.
+</p>
+
+<p>
+  For details on the new methods and constants, see the
+  <code>DevicePolicyManager</code> reference page in the <a
+  href="{@docRoot}preview/setup-sdk.html#docs-dl">N Preview SDK Reference</a>.
+</p>
+
+<h2 id="suspend">Disable Access to Apps</h2>
+
+<p>
+  Device owners and profile owners can temporarily suspend access to packages
+  by calling the new <code>DevicePolicyManager.getPackagesSuspended()</code>
+  method.Owners can use the same method to re-enable those packages.
+</p>
+
+<p>
+  While a package is suspended, it cannot start activities, and notifications
+  to the package are suppressed. Suspended packages do not show in the <a href=
+  "{@docRoot}guide/components/recents.html">overview screen</a>, and they
+  cannot show dialogs (including toasts and snackbars). They also cannot play
+  audio or vibrate the device.
+</p>
+
+<p>
+  Launchers should apply a distinctive UI to suspended apps to show that the
+  apps aren't currently available; for example, they might render the app icon
+  in gray. Launchers can find out which apps are suspended by calling the new
+  <code>DevicePolicyManager.getPackagesSuspended()</code> method.
+</p>
+
+<h2 id="toggle-work">Toggle Work Mode</h2>
+
+<p>On dual-profile devices, users can toggle work mode on and off. While work
+  mode is turned off, the managed profile is temporarily shut down. Work profile apps, background sync, and notifications are all disabled, including the profile
+  owner app. While the work profile is disabled, the system  displays a persistent status icon to remind users that they can't launch work apps. The system launcher
+  indicates that work apps and widgets are not accessible.
+</p>
+
+
+<h2 id="always-on-vpn">Always-On VPN</h2>
+
+<p>
+  Device owners and profile owners can require that work apps always connect to
+  the network through a specified VPN. If owners set this requirement, the
+  device automatically starts that VPN at boot time.
+</p>
+
+<p>
+  Owners can require use of a VPN by calling the new
+  <code>DevicePolicyManager.setAlwaysOnVpnPackage()</code> method. To find out
+  if the owner has set a VPN requirement, call the new
+  <code>DevicePolicyManager.GetAlwaysOnVpnPackage()</code> method.
+</p>
+
+<p>
+  Because the system can directly bind VPN services without app interaction,
+  VPN clients need to handle new entry points for always-on VPN. As before, you
+  can find active services by using an intent filter that matches the action
+  {@link android.net.VpnService android.net.VpnService}.
+</p>
+
+<p>
+  Users can manually set an always-on VPN client that implement {@link
+  android.net.VpnService} by using the <strong>Settings &gt; More &gt;
+  VPN</strong> screen.
+</p>
+
+<h2 id="contacts">Contacts Integration with Work Profile</h2>
+
+<p>
+  Profile owners can allow local search and directory lookup of work contacts
+  from the primary user. For example, a user can access both personal and work
+  directory contacts from their personal dialer or contacts application (if
+  permitted by their profile administrator).
+</p>
+
+<p>
+  Developers that leverage the Contact Provider can use the Enterprise Contacts
+  API to access work profile directory entries from the primary user if allowed
+  by policy:
+</p>
+
+<ul>
+  <li><code>ContactsContract.Contacts.ENTERPRISE_CONTENT_FILTER_URI</code>
+  </li>
+
+  <li><code>ContactsContract.Phone.ENTERPRISE_CONTENT_FILTER_URI</code>
+  </li>
+
+  <li><code>ContactsContract.Email.ENTERPRISE_CONTENT_FILTER_URI</code>
+  </li>
+
+  <li><code>ContactsContract.Callable.ENTERPRISE_CONTENT_FILTER_URI</code>
+  </li>
+
+  <li><code>ContactsContract.Directory.ENTERPRISE_CONTENT_URI</code>
+  </li>
+
+  <li><code>ContactsContract.Directory.isEntepriseDirectoryId()</code>
+  </li>
+</ul>
+
+<p>
+  Profile owners can control the visibility of work contacts in the primary
+  user using the following new methods:
+</p>
+
+<ul>
+  <li>
+    <code>DevicePolicyManager.setCrossProfileContactsSearchDisabled()</code>
+  </li>
+
+  <li>
+    <code>DevicePolicyManager.getCrossProfileContactsSearchDisabled()</code>
+  </li>
+</ul>
+
+<h2 id="remote-reboot">Remote Reboot</h2>
+
+<p>
+  Device owners can remotely reboot devices. In some cases, devices deployed in
+  public places inside enclosures can prevent access to the power button. If a
+  device needs to be rebooted, administrators can do so using the new
+  <code>DevicePolicyManager.reboot()</code> method.
+</p>
+
+<h2 id="disable-roaming">Disable Data Roaming</h2>
+
+<p>
+  Device owners can disable data roaming using the new {@link
+  android.os.UserManager} user restriction <code>DISALLOW_DATA_ROAMING</code>.
+</p>
+
+<h2 id="process-logging">Enterprise Process Logging</h2>
+
+<p>
+  Device owners can identify suspicious activity by remotely tracking device
+  activity, including app launches, adb activity, and screen unlocks. Process
+  logs don’t require user consent. To retrieve logs, device owners enable
+  device logging using <code>setDeviceLoggingEnabled()</code>.
+</p>
+
+<p>
+  The new <code>android.auditing.SecurityLog</code> class includes these
+  methods:
+</p>
+
+<ul>
+  <li>
+    <code>void DevicePolicyManager.setDeviceLoggingEnabled()</code>
+  </li>
+
+  <li>
+    <code>boolean DevicePolicyManager.getDeviceLoggingEnabled()</code>
+  </li>
+
+  <li>
+    <code>List DevicePolicyManager.retrieveDeviceLogs()</code>
+  </li>
+
+  <li>
+    <code>List DevicePolicyManager.retrievePreviousDeviceLogs()</code>
+  </li>
+
+  <li>
+    <code>void DeviceAdminReceiver.onSecurityLogsAvailable()</code>
+  </li>
+</ul>
+
+<h2 id="bug-reports">Remote Bug Reports</h2>
+
+<p>
+  Device owners can remotely trigger and retrieve a bug report that contains a
+  device state dump file, which allows forensic investigation of a known
+  incident or compromised device. Due to the detailed nature of the bug report,
+  user consent is required.
+</p>
+
+<p>
+  Android N includes the following API additions to support this feature. For
+  details, see the <a href="{@docRoot}preview/setup-sdk.html#docs-dl">N Preview SDK
+  Reference</a>.
+</p>
+
+<ul>
+  <li>
+    <code>DevicePolicyManager.requestBugreport()</code>
+  </li>
+
+  <li>
+    <code>DeviceAdminReceiver.onBugreportFailed()</code>
+  </li>
+
+  <li>
+    <code>DeviceAdminReceiver.onBugreportShared()</code>
+  </li>
+
+  <li>
+    <code>DeviceAdminReceiver.onBugreportSharingDeclined()</code>
+  </li>
+
+  <li>
+    <code>DeviceAdminReceiver.BUGREPORT_FAILURE_FAILED_COMPLETING</code>
+  </li>
+
+  <li>
+    <code>DeviceAdminReceiver.BUGREPORT_FAILURE_FILE_NO_LONGER_AVAILABLE</code>
+  </li>
+</ul>
+
+<h2 id="remove-cert">Remove a Client Certificate</h2>
+
+<p>
+  Profile owners and device owners can now remove client certificates that were
+  installed through {@link android.app.admin.DevicePolicyManager#installKeyPair
+  installKeyPair()} by calling the new method
+  <code>DevicePolicyManager.removeKeyPair()</code>.
+</p>
+
+<h2 id="grant-cert-on-install">Grant Access to Client Certificate on
+  Installation</h2>
+
+<p>
+  If a profile owner or device owner grants a third-party app the ability to
+  manage certificates, the app can grant itself access to certificates it
+  installs without any intervention by the owner.
+</p>
+
+<p>
+  The existing API for managing certificates is extended to include:
+</p>
+
+<ul>
+  <li><code>DevicePolicyManager.installKeyPair()</code>
+  </li>
+</ul>
+
+<h2 id="ui-policy">System UI Policy Transparency</h2>
+
+<p>
+  Policies that affect the user experience or restrict user Settings are fully
+  disclosed to the user, and profile owners and device owners can attribute the
+  policy to their company’s IT department. In addition to a consistent “Action
+  not allowed” message in Settings, IT administrators can set an
+  organization-specific support message in device settings with the following
+  new {@link android.app.admin.DevicePolicyManager} methods:
+</p>
+
+<ul>
+  <li>
+    <code>DevicePolicyManager.setShortSupportMessage()</code>
+  </li>
+
+  <li>
+    <code>DevicePolicyManager.setLongSupportMessage()</code>
+  </li>
+</ul>
+
+<h2 id="restrictions-mgmt">App Restrictions Management Enhancements</h2>
+
+<p>
+  The device or profile owner can enable another application to manage app
+  restrictions via the new
+  <code>DevicePolicyManager.setApplicationRestrictionsManagingPackage()</code>
+  method. The nominated application can check whether this permission has been
+  granted by calling
+  <code>DevicePolicyManager.isCallerApplicationRestrictionsManagingPackage()</code>.
+</p>
+
+<p>
+  An application nominated to manage app restrictions can call {@link
+  android.app.admin.DevicePolicyManager#setApplicationRestrictions
+  setApplicationRestrictions()} and {@link
+  android.app.admin.DevicePolicyManager#getApplicationRestrictions
+  getApplicationRestrictions()} for any packages within that user or profile.
+</p>
+
+<h2 id="location-off">Location Off Switch</h2>
+
+<p>
+  Users can disable location permissions for work apps while continuing to
+  access location information in their personal apps. A separate location
+  access switch in Location Settings allows users to deny location updates or
+  last-location queries for apps running in the work profile.
+</p>
+
+<p>
+  The top level location off switch disables location access for both the
+  primary profile and the managed profile.
+</p>
+
+<h2 id="custom-provisioning">Customized Provisioning</h2>
+
+<p>
+  An application can customize the profile owner and device owner provisioning
+  flows with corporate colors and logos.
+</p>
+
+<dl>
+  <dt>
+    <code>DevicePolicyManager.EXTRA_PROVISIONING_MAIN_COLOR</code>
+  </dt>
+
+  <dd>
+    Customizes flow color.
+  </dd>
+
+  <dt>
+    <code>DevicePolicyManager.EXTRA_PROVISIONING_LOGO_URI</code>
+  </dt>
+
+  <dd>
+    Customizes the flow with a corporate logo.
+  </dd>
+</dl>
+
+<h2 id="multi-wifi-ca">Multiple Wi-Fi CA Certificates</h2>
+
+<p>
+  Profile owners and device owners can set multiple CA certificates for a given
+  Wi-Fi configuration. When corporate Wi-Fi networks have separate CAs for
+  separate access points with the same SSID, IT administrators can include all
+  relevant CAs in the Wi-Fi configuration using the new method
+  <code>setCaCertificates()</code>.
+</p>
+
+<p>
+  APIs added are:
+</p>
+
+<ul>
+  <li>
+    <code>WifiEnterpriseConfig.setCaCertificates()</code>
+  </li>
+
+  <li>
+    <code>WifiEnterpriseConfig.getCaCertificates()</code>
+  </li>
+</ul>
+
+<h2 id="custom-lock">Customized Lockscreen Message</h2>
+
+<p>
+  Device owners can provide owner information to be shownon the lockscreen.
+  This information takes precedence the user lock screen message (if one is
+  set). New {@link android.app.admin.DevicePolicyManager} methods are:
+</p>
+
+<ul>
+  <li>
+    <code>setDeviceOwnerLockScreenInfo()</code>
+  </li>
+
+  <li>
+    <code>getDeviceOwnerLockScreenInfo()</code>
+  </li>
+</ul>
+
+<h2 id="work-connectionservice">Work Profile ConnectionService</h2>
+
+<p>
+  Profile owners can specify a work dialer application that uses a
+  work-specific {@link android.telecom.ConnectionService} for the calling
+  backend (calling accounts). The work dialer maintains a work-only call log
+  and relies on work contacts only. Users have a consistent in-call UI
+  experience regardless of dialing application. Incoming work calls to the work
+  calling accounts are distinguished from personal incoming calls to the
+  personal calling accounts.
+</p>
+
+<p>
+  The dialer should check for the new flag
+  <code>android.telecom.Call.PROPERTY_WORK_CALL</code> to determine if a call
+  is a work call. If a call is a work call, the dialer should indicate this,
+  such as by adding a work badge.
+</p>
+
+<h2 id="lock-wp">Lock Down Wallpaper</h2>
+
+<p>
+  A new user restriction (<code>DISALLOW_SET_WALLPAPER</code>) prevents the
+  user from changing their wallpaper. The device owner or profile owner can
+  still change the wallpaper, but they can only change the wallpaper for the
+  user or profile they control. For example, a profile owner can’t change the
+  wallpaper of the parent user, but a profile owner in the primary profile or
+  device owner can. A profile owner or device owner that wants to change the
+  wallpaper should check whether the the user or profile they manage has a
+  wallpaper ({@link android.app.WallpaperManager#isWallpaperSupported
+  isWallpaperSupported()}) and whether they are allowed to change it (with the
+  new method <code>WallpaperManager.isWallpaperSettingAllowed()</code>)
+</p>
+
+<h2 id="lock-user-icon">Lock Down User Icon</h2>
+
+<p>
+  A new user restriction (<code>DISALLOW_SET_USER_ICON</code>) prevents the
+  user from changing their user icon. The user’s device owner or profile owner
+  can still change the icon. However, a profile owner can only change the user
+  icon for the profile it controls.
+</p>
+
+<h2 id="health-monitoring">Device Health Monitoring</h2>
+
+<p>
+  A device owner or profile owner can use the new
+  <code>HardwarePropertiesManager</code> interface to retrieve information
+  about device health, such as CPU or GPU temperatures and CPU usage. The new
+  monitoring interface is especially useful for monitoring unattended devices
+  running in a remote location.
+</p>
diff --git a/docs/html/preview/features/app-linking.jd b/docs/html/preview/features/app-linking.jd
deleted file mode 100644
index b8fb300..0000000
--- a/docs/html/preview/features/app-linking.jd
+++ /dev/null
@@ -1,571 +0,0 @@
-page.title=App Links
-page.image=images/cards/card-app-linking_2x.png
-page.keywords=applinking, deeplinks, intents
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>In this document</h2>
-      <ol>
-        <li><a href="#url-handling">Understanding URL Request Handling</a> </li>
-        <li><a href="#intent-handler">Create an Intent Handler for URLs</a></li>
-        <li><a href="#request-verify">Request App Links Verification</a></li>
-        <li><a href="#web-assoc">Declare Website Associations</a></li>
-        <li><a href="#testing">Testing App Links</a></li>
-      </ol>
-  </div>
-</div>
-
-
-<p>
-  The M Developer Preview introduces a new option for handling web site links, allowing clicked
-  links to go directly to the website's official app, instead of asking the user to chose how to
-  handle the link. This feature saves the user time and helps developers deliver a better
-  experience. Users can also select whether an app should always open specific types of links
-  automatically or prompt the user each time.
-</p>
-
-<p>
-  Handling links automatically requires the cooperation of app developers and website owners.
-  Developers must configure their apps to declare connections with websites and request
-  verification. Website owners can publish a
-  Digital Asset Links file
-  to allow Android to verify the association of apps with their sites. The general steps for
-  creating verified app links are as follows:
-</p>
-
-<ol>
-  <li>Create intent filters within your app for your website URLs</li>
-  <li>Configure your app to request verification of app links</li>
-  <li>Publish a Digital Asset Links JSON file on your websites</li>
-</ol>
-
-<h2 id="url-handling">Understanding URL Request Handling</h2>
-
-<p>
-  The app links feature allows your app to become the default handler for your website URLs, as
-  long as the user has not already chosen an app to handle that URL pattern. When a web URI intent
-  is invoked through a clicked link or programatic request, the Android system determines what app
-  is used to handle the intent. The system use these criteria, in order, to determine how to handle
-  the request:
-</p>
-
-<ol>
-  <li>
-    <strong>User has set app link associations</strong>: If the user has designated an app to
-    handle app links, the system passes the web URI request to that app. Users set this association
-    by opening <strong>Settings &gt; Apps &gt; Configure apps (gear icon) &gt; App links</strong>,
-    then selecting an app to use and configuring it's <strong>App links</strong> property to the
-    <em>Open in this app</em> option.
-  </li>
-
-  <li>
-    <strong>No association set by user and a single supporting app</strong>: If the user
-    has not set a preference that matches the web URI request, and there is only one app declaring
-    support for the intent’s URI pattern, the system passes the request to that app.
-  </li>
-
-  <li>
-    <strong>No association set by user and multiple supporting apps</strong>: If there is
-    no explicit user preference and there are multiple apps declaring support for the web URI
-    pattern, the system prompts the user to select one of the available apps
-  </li>
-</ol>
-
-<p>
-  In case #2 (no user setting and no other app handlers), if an app is newly installed and verified
-  as a handler for this type of link, the system sets it as the default handler. In the other two
-  cases, the system behavior is the same, regardless of the presence of a verified app link
-  handler.
-</p>
-
-
-<h2 id="intent-handler">Create an Intent Handler for URLs</h2>
-
-<p>
-  App links are based on the <a href="{@docRoot}guide/components/intents-filters.html">Intent</a>
-  framework, which enables apps to handle requests from the system or other apps. Multiple apps may
-  declare matching web link URI patterns in their intent filters. When a user clicks on a web link
-  that does not have a default launch handler, the platform selects an app to handle the request,
-  based on the criteria described in the previous section.
-</p>
-
-<p>
-  To enable your app to handle links, use intent filters in your app manifest to declare the URI
-  patterns to be handled by your app. The following sample code shows an intent filter that can
-  handle links to {@code http://www.android.com} and {@code https://www.android.com}:
-</p>
-
-<pre>
-  &lt;activity ...&gt;
-      &lt;intent-filter&gt;
-          &lt;action android:name="android.intent.action.VIEW" /&gt;
-          &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-          &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-          &lt;data android:scheme="http" /&gt;
-          &lt;data android:scheme="https" /&gt;
-          &lt;data android:host="www.android.com" /&gt;
-      &lt;/intent-filter&gt;
-  &lt;/activity&gt;
-</pre>
-
-<p>
-  As shown in the example above, intent filters for app links must declare an {@code android:scheme}
-  value of either {@code http} or {@code https}, or both. The filter should not declare
-  any other schemes. The filter must also include the {@code android.intent.action.VIEW}; and
-  {@code android.intent.category.BROWSABLE} category names.
-</p>
-
-<p>
-  This manifest declaration defines the connection between your app and a website. However, in
-  order to have the system treat your app as the default handler for a set of URLs, you must
-  also request that the system verify this connection, which is explained in the next section.
-</p>
-
-
-<h2 id="request-verify">Request App Links Verification</h2>
-
-<p>
-  In addition to declaring an association between your app and a web site using intent filters,
-  your app must also request automatic verification with an additional manifest declaration. When
-  this declaration is set, the Android system attempts to verify your app after it is installed.
-  If the verification succeeds, and the user has not set a preference for your website URLs, the
-  system automatically routes those URL requests to your app.
-</p>
-
-<p>
-  The system performs app link verifications by comparing the host names in the data elements of
-  the app’s intent filters against the Digital Asset Links files ({@code assetlinks.json}) hosted
-  on the respective web domains. To enable the system to verify a host, make sure that your intent
-  filter declarations include the {@code android.intent.action.VIEW} intent action and {@code
-  android.intent.category.BROWSABLE} intent category.
-</p>
-
-
-<h3 id="config-verify">Enabling automatic verification</h3>
-
-<p>
-  To enable link handling verification for your app, set the {@code android:autoVerify} attribute to
-  {@code true} on at least one of the web URI intent filters in your app manifest, as shown in the
-  following manifest code snippet:
-</p>
-
-<pre>
-&lt;activity ...&gt;
-
-    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-        &lt;action android:name="android.intent.action.VIEW" /&gt;
-        &lt;category android:name="android.intent.category.DEFAULT"gt;
-        &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-        &lt;data android:scheme="http" android:host="www.android.com" /&gt;
-        &lt;data android:scheme="https" android:host="www.android.com" /&gt;
-    &lt;/intent-filter&gt;
-
-&lt;/activity&gt;
-</pre>
-
-<p>
-  When the {@code android:autoVerify} attribute is set, the system attempts to verify all hosts
-  associated with web URI’s in all of your app's intent filters when the app is installed. The
-  system treats your app as the default handler for the specified URI pattern only if it
-  successfully verifies <em>all</em> app link patterns declared in your manifest.
-</p>
-
-
-<h3 id="multi-host">Supporting app linking for multiple hosts</h3>
-
-<p>
-  The system must be able to verify each host specified in the app’s web URI intent filters’ data
-  elements against the Digital Asset Links files hosted on the respective web domains. If any
-  verification fails, the app is not verified to be a default handler for any of the web URL
-  patterns defined in its intent filters. For example, an app with the following intent filters
-  would fail verification if an {@code assetlinks.json} file were not found at both
-  {@code https://www.domain1.com/.well-known/assetlinks.json} and
-  {@code https://www.domain2.com/.well-known/assetlinks.json}:
-</p>
-
-<pre>
-&lt;application&gt;
-
-  &lt;activity android:name=”MainActivity”&gt;
-    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-      &lt;action android:name="android.intent.action.VIEW" /&gt;
-      &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-      &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-      &lt;data android:scheme="http" android:host="www.domain1.com" /&gt;
-      &lt;data android:scheme="https" android:host="www.domain1.com" /&gt;
-    &lt;/intent-filter&gt;
-  &lt;/activity&gt;
-  &lt;activity android:name=”SecondActivity”&gt;
-    &lt;intent-filter&gt;
-      &lt;action android:name="android.intent.action.VIEW" /&gt;
-      &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-      &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-      &lt;data android:scheme="https" android:host="www.domain2.com" /&gt;
-    &lt;/intent-filter&gt;
-  &lt;/activity&gt;
-
-&lt;/application
-</pre>
-
-
-<h3 id="multi-subdomain">Supporting app linking for multiple subdomains</h3>
-
-<p>
-  The Digital Asset Links protocol treats subdomains as unique, separate hosts. If your intent
-  filter lists both the {@code www.example.com} and {@code mobile.example.com} subdomains as
-  schemes, you must host separate {@code assetlink.json} file on each subdomain. For example, an
-  app with the following intent filter declaration would pass verification only if the website
-  owner published valid {@code assetlinks.json} files at both
-  {@code https://www.example.com/.well-known/assetlinks.json} and
-  {@code https://mobile.example.com/.well-known/assetlinks.json}:
-</p>
-
-<pre>
-&lt;application&gt;
-  &lt;activity android:name=”MainActivity”&gt;
-    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-      &lt;action android:name="android.intent.action.VIEW" /&gt;
-      &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-      &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-      &lt;data android:scheme="http" android:host="www.example.com" /&gt;
-      &lt;data android:scheme="https" android:host="mobile.example.com" /&gt;
-    &lt;/intent-filter&gt;
-  &lt;/activity&gt;
-&lt;/application&gt;
-</pre>
-
-
-<h2 id="web-assoc">Declare Website Associations</h2>
-
-<p>
-  For app link verification to be successful, website owners must declare associations
-  with apps. A site owner declares the relationship to an app by hosting a Digital Asset Links JSON
-  file, with the name {@code assetlinks.json}, at the following well-known location on the domain:
-</p>
-
-<pre>
-  https://<em>domain</em>[:<em>optional_port</em>]/.well-known/assetlinks.json
-</pre>
-
-<p class="note">
-  <strong>Important:</strong> With M Preview 3 and the Android 6.0 (API level 23) release, the JSON
-  file is verified via the encrypted HTTPS protocol. Make sure that your hosted file can be
-  accessed over an HTTPS connection, regardless of whether your app's intent filter declares an
-  {@code android:scheme} setting of {@code http}, {@code https} or both.
-</p>
-
-<p>
-  A Digital Asset Links JSON file indicates the Android apps that are associated with the web site.
-  The JSON file identifies associated apps with the following fields:
-</p>
-
-<ul>
-  <li>{@code package_name}: The package name declared in the app's manifest.</li>
-
-  <li>{@code sha256_cert_fingerprints}: The SHA256 fingerprints of your app’s signing certificate.
-    You can use the Java keytool to generate the fingerprint using the following command:
-    <pre>keytool -list -v -keystore my-release-key.keystore</pre>
-    This field supports multiple fingerprints, which can be used to support different versions
-    of your app, such as debug and production builds.
-  </li>
-</ul>
-
-<p>
-  The following example {@code assetlinks.json} file grants link opening rights to a
-  {@code com.example} Android application:
-</p>
-
-<pre>
-  [{
-    "relation": ["delegate_permission/common.handle_all_urls"],
-    "target": {
-      "namespace": "android_app",
-      "package_name": "com.example",
-      "sha256_cert_fingerprints":
-      ["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"]
-    }
-  }]
-</pre>
-
-
-<h3 id="multiple-apps">Associating a website with multiple apps</h3>
-
-<p>
-  A website can declare associations with multiple apps within the same {@code assetlinks.json}
-  file. The following file listing shows an example of a statement file that declares association
-  with two, separate apps and is hosted at
-  <code>https://www.example.com/.well-known/assetlinks.json</code>:
-</p>
-
-<pre>
-[{
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": <strong>"example.com.puppies.app"</strong>,
-    "sha256_cert_fingerprints":
-    ["<strong>14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5</strong>"]
-  }
-  },
-  {
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": "<strong>example.com.monkeys.app</strong>",
-    "sha256_cert_fingerprints":
-    ["<strong>14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5</strong>"]
-  }
-}]
-</pre>
-
-<p>
-  When multiple apps handle links to the same host, the system determines which one to use for
-  a given link based on the intent filters defined in each app’s manifest. Different apps may
-  handle links for different resources under the same web host. For example, app1 may
-  declare an intent filter for {@code https://example.com/articles}, and app2 may declare
-  an intent filter for {@code https://example.com/videos}.
-</p>
-
-<p class="note">
-  <strong>Note:</strong> Multiple apps associated with a domain may be signed with the same or
-  different certificates.
-</p>
-
-
-<h3 id="multi-site">Associating multiple websites with a single app</h3>
-
-<p>
-  Multiple websites can declare associations with the same app in their respective {@code
-  assetlinks.json} files. The following file listings show an example of how to declare the
-  association of domain1 and domain2 with app1:
-</p>
-
-<pre>
-https://www.domain1.com/.well-known/assetlinks.json
-
-[{
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": "<strong>com.mycompany.app1</strong>",
-    "sha256_cert_fingerprints":
-    ["<strong>14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5</strong>"]
-  }
-}]
-</pre>
-
-<pre>
-https://www.domain2.com/.well-known/assetlinks.json
-
-[{
-  "relation": ["delegate_permission/common.handle_all_urls"],
-  "target": {
-    "namespace": "android_app",
-    "package_name": "<strong>com.mycompany.app1</strong>",
-    "sha256_cert_fingerprints":
-    ["<strong>14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5</strong>"]
-  }
-}]
-</pre>
-
-
-
-<h2 id="testing">Testing App Links</h2>
-
-<p>
-  When implementing the app linking feature, you should test the linking functionality to
-  make your app can be successfully associated with your websites and handle URL requests
-  as you expect.
-</p>
-
-
-<h3 id="test-hosts">Confirm the list of hosts to verify</h3>
-
-<p>
-  When testing, you should confirm the list of associated hosts that the system should verify
-  for your app. Make a list of all web URI’s in intent-filters in your manifest that
-  includes the following:
-</p>
-
-<ul>
-  <li>{@code android:scheme} attribute with a value of {@code http} or {@code https}
-  </li>
-  <li>{@code android:host} attribute with a domain URI pattern
-  </li>
-  <li>{@code android.intent.action.VIEW} category element
-  </li>
-  <li>{@code android.intent.category.BROWSABLE} category element
-  </li>
-</ul>
-
-<p>
-  Use this list to check that a Digital Asset Links JSON file is provided on each named host
-  and subdomain.
-</p>
-
-
-<h3 id="test-dal-files">Confirm the Digital Asset Links files</h3>
-
-<p>
-  For each website, confirm that the Digital Asset Links JSON file is properly hosted and
-  defined by using the Digital Asset Links API:
-</p>
-
-<pre>
-https://digitalassetlinks.googleapis.com/v1/statements:list?
-   source.web.site=https://<strong>&lt;domain1&gt;:&lt;port&gt;</strong>&amp;
-   relation=delegate_permission/common.handle_all_urls
-</pre>
-
-
-<h3 id="test-intent">Testing a web URI intent</h3>
-
-<p>
-  Once you have confirmed the list of websites to associate with your app, and you have confirmed
-  that the hosted JSON file is valid, install the app on your device. Wait at least 20 seconds for
-  the asynchronous verification process to complete. Use the following command to check
-  if the system verified your app and set the correct link handling policies:
-</p>
-
-<pre>
-adb shell am start -a android.intent.action.VIEW \
-    -c android.intent.category.BROWSABLE \
-    -d "http://&lt;domain1&gt;:&lt;port&gt;"
-</pre>
-
-
-<h3 id="check-link-policies">Check link policies</h3>
-
-<p>
-  As part of your testing process, you can check the current system settings for link handling.
-  Use the following command to get a listing of link-handling policies for all applications:
-</p>
-
-<pre>
-  adb shell dumpsys package domain-preferred-apps
-  --or--
-  adb shell dumpsys package d
-</pre>
-
-<p class="note">
-  <strong>Note:</strong> Make sure you wait at least 20 seconds after installation of your app to
-  allow for the system to complete the verification process.
-</p>
-
-<p>
-  The command returns a listing of each user or profile defined on the device,
-  indicated by a header in the following format:
-</p>
-
-<pre>
-App linkages for user 0:
-</pre>
-
-<p>
-  Following this heading, the output lists the link-handling settings for that user in this format:
-</p>
-
-<pre>
-Package: com.android.vending
-Domains: play.google.com market.android.com
-Status: always : 200000002
-</pre>
-
-<p>This listing indicates the what apps are associated with what domains for that user, as
-  described below:</p>
-
-<ul>
-  <li>{@code Package} - Identifies an app by its package name, as declared in its manifest.
-  </li>
-  <li>{@code Domains} - Shows the full list of hosts whose web links this app handles.
-  </li>
-  <li>{@code Status} - Shows the current link-handling setting for this app. An app that set {@code
-  android:autoVerify="true"} value and passed verification is shown with a status of {@code
-  always}. The hexadecimal number after this status is related to the Android system's record of
-  the user’s app linkage preferences. This value is not relevant for interpreting whether the
-  verification operation passed.
-  </li>
-</ul>
-
-<p class="note">
-  <strong>Note:</strong>It is possible for a user to change the app link settings for an app
-  before the verification operation has completed. If this
-  situation occurs, you may see a false positive for a successful verification, even though
-  verification has failed. However, the user has already explicitly enabled the app to open
-  supported links without asking. In this case, no dialog is shown and the link goes directly to
-  your app, but only because explicit user preferences take precedence.
-</p>
-
-
-
-<h3 id="test-example">Test example</h3>
-
-<p>
-  For app link verification to succeed, the system must be able to verify your app with all of
-  the websites referenced in your app’s intent filters, that meet the criteria for app links.
-  The following example manifest snippet shows app configuration with several app links defined:
-</p>
-
-<pre>
-  &lt;application&gt;
-
-      &lt;activity android:name=”MainActivity”&gt;
-          &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
-              &lt;action android:name="android.intent.action.VIEW" /&gt;
-              &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-              &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-              &lt;data android:scheme="http" android:host="www.example.com" /&gt;
-              &lt;data android:scheme="https" android:host="mobile.example.com" /&gt;
-          &lt;/intent-filter&gt;
-          &lt;intent-filter&gt;
-              &lt;action android:name="android.intent.action.VIEW" /&gt;
-              &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-              &lt;data android:scheme="http" android:host="www.example2.com" /&gt;
-          &lt;/intent-filter&gt;
-      &lt;/activity&gt;
-
-      &lt;activity android:name=”SecondActivity”&gt;
-          &lt;intent-filter&gt;
-              &lt;action android:name="android.intent.action.VIEW" /&gt;
-              &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-              &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-              &lt;data android:scheme="http" android:host="account.example.com" /&gt;
-          &lt;/intent-filter&gt;
-      &lt;/activity&gt;
-
-      &lt;activity android:name=”ThirdActivity”&gt;
-        &lt;intent-filter&gt;
-            &lt;action android:name="android.intent.action.VIEW" /&gt;
-            &lt;category android:name="android.intent.category.DEFAULT" /&gt;
-            &lt;data android:scheme="http" android:host="map.example.com" /&gt;
-        &lt;/intent-filter&gt;
-        &lt;intent-filter&gt;
-            &lt;action android:name="android.intent.action.VIEW" /&gt;
-            &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
-            &lt;data android:scheme="market" android:host="example.com" /&gt;
-        &lt;/intent-filter&gt;
-      &lt;/activity&gt;
-
-  &lt;/application&gt;
-</pre>
-
-<p>
-  The list of hosts that the platform would attempt to verify from the above manifest is:
-</p>
-
-<pre>
-  www.example.com
-  mobile.example.com
-  www.example2.com
-  account.example.com
-</pre>
-
-<p>
-  The list of hosts that the platform would not attempt to verify from the above manifest is:
-</p>
-
-<pre>
-  map.example.com (it does not have android.intent.category.BROWSABLE)
-  market://example.com (it does not have either an “http” or “https” scheme)
-</pre>
diff --git a/docs/html/preview/features/background-optimization.jd b/docs/html/preview/features/background-optimization.jd
new file mode 100644
index 0000000..e415bd3
--- /dev/null
+++ b/docs/html/preview/features/background-optimization.jd
@@ -0,0 +1,394 @@
+page.title=Background Optimizations
+page.metaDescription=New restrictions to implicit broadcasts.
+page.keywords="android N", "implicit broadcasts", "job scheduler"
+@jd:body
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>
+      In this document
+    </h2>
+
+    <ol>
+      <li>
+        <a href="#connectivity-action">Restrictions on CONNECTIVITY_ACTION</a>
+      </li>
+
+      <li>
+        <a href="#sched-jobs">Scheduling Network Jobs on Unmetered
+        Connections</a>
+      </li>
+
+      <li>
+        <a href="#monitor-conn">Monitoring Network Connectivity While the App
+        is Running</a>
+      </li>
+
+      <li>
+        <a href="#media-broadcasts">Restrictions on NEW_PICTURE and
+        NEW_VIDEO</a>
+      </li>
+
+      <li>
+        <a href="#new-jobinfo">New JobInfo methods</a>
+      </li>
+
+      <li>
+        <a href="#new-jobparam">New JobParameter Methods</a>
+      </li>
+
+      <li>
+        <a href="#further-optimization">Further Optimizing Your App</a>
+      </li>
+    </ol>
+  </div>
+</div>
+
+<p>
+  Background processes can be memory- and battery-intensive. For example, an
+  implicit broadcast may start many background processes that have registered
+  to listen for it, even if those processes may not do much work. This can have
+  a substantial impact on both device performance and user experience.
+</p>
+
+<p>
+  To alleviate this issue, Android N applies the following
+  restrictions:
+</p>
+
+<ul>
+  <li>Apps targeting the Preview do not receive {@link
+  android.net.ConnectivityManager#CONNECTIVITY_ACTION} broadcasts if they
+  register to receive them in their manifest. Apps running in the foreground
+  can still listen for {@code CONNECTIVITY_CHANGE} on their main thread by
+  registering a {@link android.content.BroadcastReceiver} with {@link
+  android.content.Context#registerReceiver Context.registerReceiver()}.
+  </li>
+
+  <li>Apps cannot send or receive {@link
+  android.hardware.Camera#ACTION_NEW_PICTURE} or {@link
+  android.hardware.Camera#ACTION_NEW_VIDEO} broadcasts. This optimization
+  affects all apps, not only those targeting the Preview.
+  </li>
+</ul>
+
+<p>
+  If your app uses any of these intents, you should remove dependencies on
+  them as soon as possible so that you can target Android N devices properly.
+  The Android framework provides several solutions to mitigate the need for
+  these implicit broadcasts. For example, {@link android.app.job.JobScheduler}
+  and <a href=
+  "https://developers.google.com/android/reference/com/google/android/gms/gcm/GcmNetworkManager">
+  {@code GcmNetworkManager}</a> provide robust mechanisms to schedule network
+  operations when specified conditions, such as a connection to an unmetered
+  network, are met. You can now also use {@link android.app.job.JobScheduler}
+  to react to changes to content providers. {@link android.app.job.JobInfo}
+  objects encapsulate the parameters that {@link android.app.job.JobScheduler}
+  uses to schedule your job. When the conditions of the job are met, the system
+  executes this job on your app's {@link android.app.job.JobService}.
+</p>
+
+<p>
+  In this document, we will learn how to use alternative methods, such as
+  {@link android.app.job.JobScheduler}, to adapt your app to these new
+  restrictions.
+</p>
+
+<h2 id="connectivity-action">
+  Restrictions on CONNECTIVITY_ACTION
+</h2>
+
+<p>
+  Apps targeting the Android N do not receive {@link
+  android.net.ConnectivityManager#CONNECTIVITY_ACTION} broadcasts if they
+  register to receive them in their manifest, and processes that depend on this
+  broadcast will not start. This could pose a problem for apps that want
+  to listen for network changes or perform bulk network activities when the
+  device connects to an unmetered network. Several solutions to get around this
+  restriction already exist in the Android framework, but choosing the right
+  one depends on what you want your app to accomplish.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> A {@link android.content.BroadcastReceiver} registered with
+  {@link android.content.Context#registerReceiver Context.registerReceiver()}
+  continues to receive these broadcasts while the app is in the foreground.
+</p>
+
+<h3 id="sched-jobs">
+  Scheduling Network Jobs on Unmetered Connections
+</h3>
+
+<p>
+  When using the {@link android.app.job.JobInfo.Builder JobInfo.Builder} class
+  to build your {@link android.app.job.JobInfo} object, apply the {@link
+  android.app.job.JobInfo.Builder#setRequiredNetworkType
+  setRequiredNetworkType()} method and pass {@link android.app.job.JobInfo
+  JobInfo.NETWORK_TYPE_UNMETERED} as a job parameter. The following code sample
+  schedules a service to run when the device connects to an unmetered
+  network and is charging:
+</p>
+
+<pre>
+public static final int MY_BACKGROUND_JOB = 0;
+...
+public static void scheduleJob(Context context) {
+  JobScheduler js =
+      (JobScheduler) context.getSystemService(Context.JOB_SCHEDULER_SERVICE);
+  JobInfo job = new JobInfo.Builder(
+    MY_BACKGROUND_JOB,
+    new ComponentName(context, MyJobService.class))
+      .setRequiredNetworkType(JobInfo.NETWORK_TYPE_UNMETERED)
+      .setRequiresCharging(true)
+      .build();
+  js.schedule(job);
+}
+</pre>
+
+<p>
+  When the conditions for your job are met, your app receives a callback to run
+  the {@link android.app.job.JobService#onStartJob onStartJob()} method in the
+  specified {@code JobService.class}. To see more examples of {@link
+  android.app.job.JobScheduler} implementation, see the <a href=
+  "{@docRoot}samples/JobScheduler/index.html">JobScheduler sample app</a>.
+</p>
+
+<p>
+  Applications that use GMSCore services, and target Android 5.0 (API level 21)
+  or lower, can use <a href=
+  "https://developers.google.com/android/reference/com/google/android/gms/gcm/GcmNetworkManager">
+  {@code GcmNetworkManager}</a> and specify {@code Task.NETWORK_STATE_UNMETERED}.
+</p>
+
+<h3 id="monitor-conn">
+  Monitoring Network Connectivity While the App is Running
+</h3>
+
+<p>
+  Apps running in the foreground can still listen for {@code
+  CONNECTIVITY_CHANGE} with a registered {@link
+  android.content.BroadcastReceiver}. However, the {@link
+  android.net.ConnectivityManager} API provides a more robust method to request
+  a callback only when specified network conditions are met.
+</p>
+
+<p>
+  {@link android.net.NetworkRequest} objects define the parameters of the
+  network callback in terms of {@link android.net.NetworkCapabilities}. You
+  create {@link android.net.NetworkRequest} objects with the {@link
+  android.net.NetworkRequest.Builder NetworkRequest.Builder} class. {@link
+  android.net.ConnectivityManager#registerNetworkCallback(android.net.NetworkRequest,
+  android.net.ConnectivityManager.NetworkCallback) registerNetworkCallback()}
+  then passes the {@link android.net.NetworkRequest} object to the system. When
+  the network conditions are met, the app receives a callback to execute the
+  {@link android.net.ConnectivityManager.NetworkCallback#onAvailable
+  onAvailable()} method defined in its {@link
+  android.net.ConnectivityManager.NetworkCallback} class.
+</p>
+
+<p>
+  The app continues to receive callbacks until either the app exits or it calls
+  {@link android.net.ConnectivityManager#unregisterNetworkCallback
+  unregisterNetworkCallback()}.
+</p>
+
+<h2 id="media-broadcasts">
+  Restrictions on NEW_PICTURE and NEW_VIDEO
+</h2>
+
+<p>
+  In the Android N, apps are not able to send or receive {@link
+  android.hardware.Camera#ACTION_NEW_PICTURE} or {@link
+  android.hardware.Camera#ACTION_NEW_VIDEO} broadcasts. This restriction helps
+  alleviate the performance and user experience impacts when several apps must
+  wake up in order to process a new image or video. Android N
+  extends {@link android.app.job.JobInfo} and {@link
+  android.app.job.JobParameters} to provide an alternative solution.
+</p>
+
+<h3 id="new-jobinfo">
+  New JobInfo methods
+</h3>
+
+<p>
+  To trigger jobs on content URI changes, Android N extends
+  the {@link android.app.job.JobInfo} API with the following methods:
+</p>
+
+<dl>
+  <dt>
+    {@code JobInfo.TriggerContentUri()}
+  </dt>
+
+  <dd>
+    Encapsulates parameters required to trigger a job on content URI changes.
+  </dd>
+
+  <dt>
+    {@code JobInfo.Builder.addTriggerContentUri()}
+  </dt>
+
+  <dd>
+    Passes a {@code TriggerContentUri} object to {@link
+    android.app.job.JobInfo}. A {@link android.database.ContentObserver}
+    monitors the encapsulated content URI. If there are multiple {@code
+    TriggerContentUri} objects associated with a job, the system provides a
+    callback even if it reports a change in only one of the content URIs.
+  </dd>
+
+  <dd>
+    Add the {@code TriggerContentUri.FLAG_NOTIFY_FOR_DESCENDANTS} flag to
+    trigger the job if any descendants of the given URI change. This flag
+    corresponds to the {@code notifyForDescendants} parameter passed to {@link
+    android.content.ContentResolver#registerContentObserver
+    registerContentObserver()}.
+  </dd>
+</dl>
+
+<p class="note">
+  <strong>Note:</strong> {@code TriggerContentUri()} cannot be used in
+  combination with {@link android.app.job.JobInfo.Builder#setPeriodic
+  setPeriodic()} or {@link android.app.job.JobInfo.Builder#setPersisted
+  setPersisted()}. To continually monitor for content changes, schedule a new
+  {@link android.app.job.JobInfo} before the app’s {@link
+  android.app.job.JobService} finishes handling the most recent callback.
+</p>
+
+<p>
+  The following sample code schedules a job to trigger when the system reports
+  a change to the content URI, {@code MEDIA_URI}:
+</p>
+
+<pre>
+public static final int MY_BACKGROUND_JOB = 0;
+...
+public static void scheduleJob(Context context) {
+  JobScheduler js =
+          (JobScheduler) context.getSystemService(Context.JOB_SCHEDULER_SERVICE);
+  JobInfo.Builder builder = new JobInfo.Builder(
+          MY_BACKGROUND_JOB,
+          new ComponentName(context, MediaContentJob.class));
+  builder.addTriggerContentUri(
+          new JobInfo.TriggerContentUri(MEDIA_URI,
+          JobInfo.TriggerContentUri.FLAG_NOTIFY_FOR_DESCENDANTS));
+  js.schedule(builder.build());
+}
+</pre>
+<p>
+  When the system reports a change in the specified content URI(s), your app
+  receives a callback and a {@link android.app.job.JobParameters} object is
+  passed to the {@link android.app.job.JobService#onStartJob onStartJob()}
+  method in {@code MediaContentJob.class}.
+</p>
+
+<h3 id="new-jobparam">
+  New JobParameter Methods
+</h3>
+
+<p>
+  Android N also extends {@link android.app.job.JobParameters} to
+  allow your app to receive useful information about what content authorities
+  and URIs triggered the job:
+</p>
+
+<dl>
+  <dt>
+    {@code Uri[] getTriggeredContentUris()}
+  </dt>
+
+  <dd>
+    Returns an array of URIs that have triggered the job. This will be {@code
+    null} if either no URIs have triggered the job (for example, the job was
+    triggered due to a deadline or some other reason), or the number of changed
+    URIs is greater than 50.
+  </dd>
+
+  <dt>
+    {@code String[] getTriggeredContentAuthorities()}
+  </dt>
+
+  <dd>
+    Returns a string array of content authorities that have triggered the job.
+    If the returned array is not {@code null}, use {@code getTriggeredContentUris()}
+    to retrieve the details of which URIs have changed.
+  </dd>
+</dl>
+
+<p>
+  The following sample code overrides the {@link
+  android.app.job.JobService#onStartJob JobService.onStartJob()} method and
+  records the content authorities and URIs that have triggered the job:
+</p>
+
+<pre>
+&#64;Override
+public boolean onStartJob(JobParameters params) {
+  StringBuilder sb = new StringBuilder();
+  sb.append("Media content has changed:\n");
+  if (params.getTriggeredContentAuthorities() != null) {
+      sb.append("Authorities: ");
+      boolean first = true;
+      for (String auth :
+          params.getTriggeredContentAuthorities()) {
+          if (first) {
+              first = false;
+          } else {
+             sb.append(", ");
+          }
+           sb.append(auth);
+      }
+      if (params.getTriggeredContentUris() != null) {
+          for (Uri uri : params.getTriggeredContentUris()) {
+              sb.append("\n");
+              sb.append(uri);
+          }
+      }
+  } else {
+      sb.append("(No content)");
+  }
+  Log.i(TAG, sb.toString());
+  return true;
+}
+</pre>
+
+<h2 id="further-optimization">
+  Further Optimizing Your App
+</h2>
+
+<p>
+  Optimizing your apps to run on low-memory devices, or in low-memory
+  conditions, can improve performance and user experience. Removing
+  dependencies on background services and statically-registered implicit
+  broadcast receivers can help your app run better on such devices. Although
+  Android N takes steps to reduce some of these issues, it is
+  recommended that you optimize your app to run without the use of these
+  background processes entirely.
+</p>
+
+<p>
+  Android N introduces some additional <a href=
+  "{@docRoot}tools/help/adb.html">Android Debug Bridge (ADB)</a> commands that
+  you can use to test app behavior with those background processes disabled:
+</p>
+
+<ul>
+  <li>To simulate conditions where implicit broadcasts and background services
+  are unavailable, enter the following command:
+  </li>
+
+  <li style="list-style: none; display: inline">
+<pre class="no-pretty-print">
+{@code $ adb shell cmd appops set RUN_IN_BACKGROUND ignore}
+</pre>
+  </li>
+
+  <li>To re-enable implicit broadcasts and background services, enter the
+  following command:
+  </li>
+
+  <li style="list-style: none; display: inline">
+<pre class="no-pretty-print">
+{@code $ adb shell cmd appops set RUN_IN_BACKGROUND allow}
+</pre>
+  </li>
+</ul>
\ No newline at end of file
diff --git a/docs/html/preview/features/data-saver.jd b/docs/html/preview/features/data-saver.jd
new file mode 100644
index 0000000..ba8f165
--- /dev/null
+++ b/docs/html/preview/features/data-saver.jd
@@ -0,0 +1,207 @@
+page.title=Data Saver
+metaDescription=User-enabled data usage optimization.
+page.keywords="android N", "data usage", "metered network"
+@jd:body
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>
+      In this document
+    </h2>
+
+    <ol>
+      <li>
+        <a href="#status">Checking Data Saver Preferences</a>
+      </li>
+
+      <li>
+        <a href="#monitor-changes">Monitoring Changes to Data Saver Preferences</a>
+      </li>
+
+      <li>
+        <a href="#testing">Testing with Android Debug Bridge Commands</a>
+      </li>
+    </ol>
+  </div>
+</div>
+
+<p>
+  Over the life of a smartphone, the cost of a cellular data plan can easily
+  exceed the cost of the device itself. In the N Developer Preview, users can
+  enable Data Saver on a device-wide basis in order to use less data, whether
+  roaming, near the end of the billing cycle, or on a small prepaid data pack.
+</p>
+
+<p>
+  When a user enables Data Saver in <strong>Settings</strong> and the device is
+  on a metered network, the system blocks background data usage and signals
+  apps to use less data in the foreground wherever possible. Users can
+  whitelist specific apps to allow background metered data usage even when Data
+  Saver is turned on.
+</p>
+
+<p>
+  The N Developer Preview extends the {@link android.net.ConnectivityManager}
+  API to provide apps with a way to <a href="#status">retrieve the user’s Data
+  Saver preferences</a> and <a href="#monitor-changes">monitor preference
+  changes</a>. It is considered good practice for apps to check whether the
+  user has enabled Data Saver and make an effort to limit foreground and
+  background data usage.
+</p>
+
+<h2 id="status">
+  Checking Data Saver Preferences
+</h2>
+
+<p>
+  In the N Developer Preview, apps can use the {@link
+  android.net.ConnectivityManager} API to determine what data usage
+  restrictions are being applied. The {@code getRestrictBackgroundStatus()}
+  method returns one of the following values:
+</p>
+
+<dl>
+  <dt>
+    {@code RESTRICT_BACKGROUND_STATUS_DISABLED}
+  </dt>
+
+  <dd>
+    Data Saver is disabled.
+  </dd>
+
+  <dt>
+    {@code RESTRICT_BACKGROUND_STATUS_ENABLED}
+  </dt>
+
+  <dd>
+    The user has enabled Data Saver for this app. Apps should make an effort to limit data
+    usage in the foreground and gracefully handle restrictions to background
+    data usage.
+  </dd>
+
+  <dt>
+    {@code RESTRICT_BACKGROUND_STATUS_WHITELISTED}
+  </dt>
+
+  <dd>
+    The user has enabled Data Saver but the app is whitelisted. Apps should
+    still make an effort to limit foreground and background data usage.
+  </dd>
+</dl>
+
+<p>
+  It is considered good practice to limit data usage whenever the device is
+  connected to a metered network, even if Data Saver is disabled or the app
+  is whitelisted. The following sample code uses {@link
+  android.net.ConnectivityManager#isActiveNetworkMetered
+  ConnectivityManager.isActiveNetworkMetered()} and {@code
+  ConnectivityManager.getRestrictBackgroundStatus()} to determine how much data
+  the app should use:
+</p>
+
+<pre>
+ConnectivityManager connMgr = (ConnectivityManager)
+        getSystemService(Context.CONNECTIVITY_SERVICE);
+// Checks if the device is on a metered network
+if (connMgr.isActiveNetworkMetered()) {
+  // Checks user’s Data Saver settings.
+  switch (connMgr.getRestrictBackgroundStatus()) {
+    case RESTRICT_BACKGROUND_STATUS_ENABLED:
+    // Background data usage is blocked for this app. Wherever possible,
+    // the app should also use less data in the foreground.
+
+    case RESTRICT_BACKGROUND_STATUS_WHITELISTED:
+    // The app is whitelisted. Wherever possible,
+    // the app should use less data in the foreground and background.
+
+    case RESTRICT_BACKGROUND_STATUS_DISABLED:
+    // Data Saver is disabled. Since the device is connected to a
+    // metered network, the app should use less data wherever possible.
+  }
+} else {
+  // The device is not on a metered network.
+  // Use data as required to perform syncs, downloads, and updates.
+}
+</pre>
+
+<h2 id="monitor-changes">
+  Monitoring Changes to Data Saver Preferences
+</h2>
+
+<p>
+  Apps can monitor changes to Data Saver preferences by creating a {@link
+  android.content.BroadcastReceiver} to listen for {@code
+  ConnectivityManager.ACTION_RESTRICT_BACKGROUND_CHANGED} ({@code
+  "android.net.conn.RESTRICT_BACKGROUND_CHANGED"}) and dynamically registering
+  the receiver with {@link android.content.Context#registerReceiver
+  Context.registerReceiver()}. When an app receives this broadcast, it should
+  <a href="#status">check if the new Data Saver preferences affect its
+  permissions</a> by calling {@code
+  ConnectivityManager.getRestrictBackgroundStatus()}.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> The system only sends this broadcast to apps that
+  dynamically register for them with {@link
+  android.content.Context#registerReceiver Context.registerReceiver()}. Apps
+  that register to receive this broadcast in their manifest will not receive
+  them.
+</p>
+
+<h2 id="testing">
+  Testing with Android Debug Bridge Commands
+</h2>
+
+The <a href="{@docRoot}tools/help/adb.html">Android Debug Bridge (ADB)</a>
+provides a few commands that you can use to check and configure network
+permissions:
+
+<dl>
+  <dt>
+    <code>$ adb shell dumpsys netpolicy</code>
+  </dt>
+
+  <dd>
+    Generates a report that includes the current global background network
+    restriction setting, package UIDs currently on a whitelist, and the network
+    permissions of other known packages.
+  </dd>
+
+  <dt>
+    <code>$ adb shell cmd netpolicy</code>
+  </dt>
+
+  <dd>
+    Displays a full list of Network Policy Manager (netpolicy) commands.
+  </dd>
+
+  <dt>
+    <code>$ adb shell cmd netpolicy set restrict-background
+    &lt;boolean&gt;</code>
+  </dt>
+
+  <dd>
+    Enables or disables Data Saver mode when passing <code>true</code> or
+    <code>false</code>, respectively.
+  </dd>
+
+  <dt>
+    <code>$ adb shell cmd netpolicy add restrict-background-whitelist
+    &lt;UID&gt;</code>
+  </dt>
+
+  <dd>
+    Adds the specified package UID to the whitelist to allow background metered
+    data usage.
+  </dd>
+
+  <dt>
+    <code>$ adb shell cmd netpolicy remove restrict-background-whitelist
+    &lt;UID&gt;</code>
+  </dt>
+
+  <dd>
+    Removes the specified package UID from the whitelist to block background
+    metered data usage while Data Saver is enabled.
+  </dd>
+</dl>
\ No newline at end of file
diff --git a/docs/html/preview/features/direct-boot.jd b/docs/html/preview/features/direct-boot.jd
new file mode 100644
index 0000000..aefa4dc
--- /dev/null
+++ b/docs/html/preview/features/direct-boot.jd
@@ -0,0 +1,180 @@
+page.title=Direct Boot
+page.keywords=preview,sdk,direct boot
+page.tags=androidn
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+  <ol>
+    <li><a href="#run">Requesting Access to Run During Direct Boot</a></li>
+    <li><a href="#access">Accessing Device Encrypted Storage</a></li>
+    <li><a href="#notification">Getting Notified of User Unlock</a></li>
+    <li><a href="#migrating">Migrating Existing Data</a></li>
+    <li><a href="#testing">Testing Your Encryption Aware App</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Android N runs in a secure, <i>Direct Boot</i> mode
+when the device has been powered on but the user has not unlocked the
+device. To support this, the system provides two storage locations for data:</p>
+
+<ul>
+<li><i>Credential encrypted storage</i>, which is the default storage location
+and only available after the user has unlocked the device.</li>
+<li><i>Device encrypted storage</i>, which is a storage location available both
+during Direct Boot mode and after the user has unlocked the device.</li>
+</ul>
+
+<p>By default, apps do not run during Direct Boot mode.
+If your app needs to take action during Direct Boot mode, you can register
+app components that should be run during this mode. Some common use cases
+for apps needing to run during Direct Boot mode include:</p>
+
+<ul>
+<li>Apps that have scheduled notifications, such as alarm clock
+apps.</li>
+<li>Apps that provide important user notifications, like SMS apps.</li>
+<li>Apps that provide accessibility services, like Talkback.</li>
+</ul>
+
+<p>If your app needs to access data while running in Direct Boot mode, use
+device encrypted storage. Device encrypted storage contains data
+encrypted with a key that is only available after a device has performed a
+successful verified boot.</p>
+
+<p>For data that should be encrypted with a key associated with user
+credentials, such as a PIN or password, use credential encrypted storage.
+Credential encrypted storage is only available after the user has successfully
+unlocked the device, up until when the user restarts the device again. If the
+user enables the lock screen after unlocking the device, this doesn't lock
+credential encrypted storage.</p>
+
+<h2 id="run">Requesting Access to Run During Direct Boot</h2>
+
+<p>Apps must register their components with the system before they
+can run during Direct Boot mode or access device encrypted
+storage. Apps register with the system by marking components as
+<i>encryption aware</i>. To mark your component as encryption aware, set the
+<code>android:encryptionAware</code> attribute to true in your manifest.<p>
+
+<p>Encryption aware components can register to receive a
+<code>LOCKED_BOOT_COMPLETED</code> broadcast message from the
+system when the device has been restarted. At this point device encrypted
+storage is available, and your component can execute tasks that need to be
+run during Direct Boot mode, such as triggering a scheduled alarm.</p>
+
+<p>The following code snippet is an example of how to register a
+{@link android.content.BroadcastReceiver} as encryption aware, and add an
+intent filter for <code>LOCKED_BOOT_COMPLETED</code>, in the app manifest:</p>
+
+<pre>
+&lt;receiever
+  android:encryptionAware="true" &gt;
+  ...
+  &lt;intent-filter&gt;
+    &lt;action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" /&gt;
+  &lt;/intent-filter&gt;
+&lt;/receiver&gt;
+</pre>
+
+<p>Once the user has unlocked the device, all components can access both the
+device encrypted storage as well as credential encrypted storage.</p>
+
+<h2 id="access">Accessing Device Encrypted Storage</h2>
+
+<p>To access device encrypted storage, create a second
+{@link android.content.Context} instance by calling
+<code>Context.createDeviceEncryptedStorageContext()</code>. All storage API
+calls made using this context access the device encrypted storage. The
+following example accesses the device encrypted storage and opens an existing
+app data file:</p>
+
+<pre>
+Context directBootContext = Context.createDeviceEncryptedStorageContext();
+// Access appDataFilename that lives in device encrypted storage
+FileInputStream inStream = directBootContext.openFileInput(appDataFilename);
+// Use inStream to read content...
+</pre>
+
+<p>Use device encrypted storage only for
+information that must be accessible during Direct Boot mode.
+Don't use device encrypted storage as a general-purpose encrypted store.
+For private user information, or encrypted data that isn't needed during
+Direct Boot mode, use credential encrypted storage.</p>
+
+<h2 id="notification">Getting Notified of User Unlock</h2>
+
+<p>Once the user unlocks the device after restart, your app can switch to
+accessing credential encrypted storage and use regular system services that
+depend on user credentials.</p>
+
+<p>To get notified when the user unlocks the device after a reboot,
+register a {@link android.content.BroadcastReceiver} from a running component
+to listen for the <code>ACTION_USER_UNLOCKED</code> message. Or, you can
+receive the existing {@link android.content.Intent#ACTION_BOOT_COMPLETED
+ACTION_BOOT_COMPLETED} message, which now indicates the device has booted and
+the user has unlocked the device.</p>
+
+<p>You can directly query if the user has unlocked the device by calling
+<code>UserManager.isUserUnlocked()</code>.</p>
+
+<h2 id="migrating">Migrating Existing Data</h2>
+
+<p>If a user updates their device to use Direct Boot mode, you might have
+existing data that needs to get migrated to device encrypted storage. Use
+<code>Context.migrateSharedPreferencesFrom()</code> and
+<code>Context.migrateDatabaseFrom()</code> to migrate preference and database
+data between credential encrypted storage and device encrypted storage.</p>
+
+<p>Use your best judgment when deciding what data to migrate from credential
+encrypted storage to device encrypted storage. You should not migrate
+private user information, such as passwords or authorization tokens, to
+device encrypted storage. In some scenarios, you might need to manage
+separate sets of data in the two encrypted stores.</p>
+
+<h2 id="testing">Testing Your Encryption Aware App</h2>
+
+<p>Test your encryption aware app using the new Direct Boot mode. There are
+two ways to enable Direct Boot.</p>
+
+<p class="caution"><strong>Caution:</strong> Enabling Direct Boot
+wipes all user data on the device.</p>
+
+<p>On supported devices with Android N installed, enable
+Direct Boot by doing one of the following:</p>
+
+<ul>
+<li>On the device, enable <b>Developer options</b> if you haven't already by
+going to <b>Settings &gt; About phone</b>, and tapping <b>Build number</b>
+seven times. Once the developer options screen is available, go to
+<b>Settings &gt; Developer options</b> and select
+<b>Convert to file encryption</b>.</li>
+<li>Use the following adb shell commands to enable Direct Boot mode:
+<pre class="no-pretty-print">
+$ adb reboot-bootloader
+$ fastboot --wipe-and-use-fbe
+</pre>
+</li>
+</ul>
+
+<p>An emulated Direct Boot mode is also available, in case you need to switch
+modes on your test devices. Emulated mode should only be used during
+development and may cause data loss. To enable emulated Direct Boot mode,
+set a lock pattern on the device, choose "No thanks" if prompted for a
+secure start-up screen when setting a lock pattern, and then use the
+following adb shell command:</p>
+
+<pre class="no-pretty-print">
+$ adb shell sm set-emulate-fbe true
+</pre>
+
+<p>To turn off emulated Direct Boot mode, use the following command:</p>
+
+<pre class="no-pretty-print">
+$ adb shell sm set-emulate-fbe false
+</pre>
+
+<p>Using these commands causes the device to reboot.</p>
diff --git a/docs/html/preview/features/icu4j-framework.jd b/docs/html/preview/features/icu4j-framework.jd
new file mode 100644
index 0000000..6698194
--- /dev/null
+++ b/docs/html/preview/features/icu4j-framework.jd
@@ -0,0 +1,162 @@
+page.title=ICU4J Android Framework APIs
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document:</h2>
+<ol>
+    <li><a href="#relation">Relationship to ICU4J</a></li>
+    <li><a href="#migration">Migrating to android.icu APIs from ICU4J </a></li>
+    <li><a href="#licence">Licensing</a></li>
+</ol>
+
+<h2>See Also</h2>
+<ol>
+  <li>
+    <a class="external-link" href=
+    "http://userguide.icu-project.org">Documentation for ICU4J</a>
+  </li>
+
+  <li>
+    <a class="external-link" href=
+    "http://site.icu-project.org/#TOC-What-is-ICU-">Latest standards supported
+    by ICU4J</a>
+  </li>
+</ol>
+</div>
+</div>
+
+<p>
+  ICU4J is an open-source, widely used set of Java libraries providing Unicode
+  and globalization support for software applications. Android N
+  exposes a subset of the ICU4J APIs in the Android framework for app developers
+  to use under the {@code android.icu} package. These APIs use
+  localization data present on the device. As a result, you can reduce your APK
+  footprint by not compiling the ICU4J libraries into your APK; instead, you can
+  simply call out to them in the framework. (In this case, you may want to provide
+  <a href="{@docRoot}google/play/publishing/multiple-apks.html">multiple versions
+  of your APK</a>, so users running versions of Android lower than Android N
+  can download a version of the app that contains the ICU4J libraries.)
+</p>
+
+<p>
+  This document begins by providing some basic information on the minimum
+  Android API levels required to support these libraries. It then explains what
+  you need to know about the Android-specific implementation of ICU4J. Finally,
+  it tells you how to use the ICU4J APIs in the Android framework.
+</p>
+
+<h2 id="relation">Relationship to ICU4J</h2>
+
+<p>
+  Android N exposes a subset of the ICU4J APIs via the
+  <code>android.icu</code> package, rather than <code>com.ibm.icu</code>. The
+  Android framework may choose not to
+  expose ICU4J APIs for various reasons; for example, Android N does not expose
+  some deprecated APIs or those that the ICU team have not yet declared as
+  stable. As the ICU team deprecates APIs in the future, Android will also mark
+  them as deprecated but will continue to include them.
+</p>
+
+<p class="table-caption"><strong>Table 1.</strong> ICU and CLDR versions used
+  in Android N.</p>
+<table>
+<tr>
+<th>Android API level</th>
+<th>ICU version</th>
+<th>CLDR version</th>
+</tr>
+<tr>
+<td>Android N</td>
+<td>56</td>
+<td>28</td>
+</tr>
+</table>
+
+<p>Here are a few important things to note:</p>
+
+<ul>
+<li>The ICU4J Android framework APIs do not include all the ICU4J APIs.</li>
+<li>NDK developers should know that Android ICU4C is not supported.</li>
+<li>The APIs in the Android framework do not replace Android’s support for
+<a href="{@docRoot}guide/topics/resources/localization.html">localizing with
+resources</a>.</li>
+</ul>
+
+<h2 id="migration">Migrating to the android.icu package from com.ibm.icu</h2>
+
+<p>
+  If you are already using the ICU4J APIs in your app, and the
+  <code>android.icu</code> APIs meet your requirements, then migrating to
+  the framework APIs requires you to change your Java imports
+  from <code>com.ibm.icu</code> to <code>android.icu</code>. You may then
+  remove your own copy of ICU4J files from the APK.
+</p>
+
+<p class="note">
+  <b>Note</b>: The ICU4J framework APIs use the {@code android.icu}
+  namespace instead of {@code com.ibm.icu}. This is to avoid namespace
+  conflicts in APKs that contain their own {@code com.ibm.icu} libraries.
+</p>
+
+<h3 id="migrate-from-android">
+  Migrating to android.icu APIs from other Android SDK APIs
+</h3>
+
+<p>
+  Some classes in the <code>java</code> and<code>android</code> packages have
+  equivalents to those found in ICU4J. However, ICU4J often provides broader
+  support for standards and languages.
+</p>
+<p>Here are some examples to get you started:</p>
+<table>
+<tr>
+<th>Class</th>
+<th>Alternatives</th>
+</tr>
+<tr>
+<td><code>java.lang.Character</code> </td>
+<td><code>android.icu.lang.UCharacter</code> </td>
+</tr>
+<tr>
+<td><code>java.text.BreakIterator</code> </td>
+<td><code>android.icu.text.BreakIterator</code> </td>
+</tr>
+<tr>
+<td><code>java.text.DecimalFormat</code> </td>
+<td><code>android.icu.text.DecimalFormat</code> </td>
+</tr>
+<tr>
+<td><code>java.util.Calendar</code></td>
+<td>
+<code>android.icu.util.Calendar</code></td>
+</tr>
+<tr>
+<td><code>android.text.BidiFormatter</code>
+ </td>
+<td><code>android.icu.text.Bidi</code>
+ </td>
+</tr>
+<tr>
+<td><code>android.text.format.DateFormat</code>
+ </td>
+<td><code>android.icu.text.DateFormat</code>
+ </td>
+</tr>
+<tr>
+<td><code>android.text.format.DateUtils</code> </td>
+<td><code>android.icu.text.DateFormat</code>
+<code>android.icu.text.RelativeDateTimeFormatter</code>
+</td>
+</tr>
+</table>
+
+<h2 id="licence">Licensing</h2>
+
+<p>
+  ICU4J is released under the ICU license. For details, see the <a class=
+  "external-link" href=
+  "http://userguide.icu-project.org/icufaq#TOC-How-is-the-ICU-licensed-">ICU
+  User Guide.</a>
+</p>
diff --git a/docs/html/preview/features/images/app-permissions-screen.png b/docs/html/preview/features/images/app-permissions-screen.png
deleted file mode 100644
index 679b7ad..0000000
--- a/docs/html/preview/features/images/app-permissions-screen.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/features/images/app-permissions-screen_2x.png b/docs/html/preview/features/images/app-permissions-screen_2x.png
deleted file mode 100644
index e3eb13f..0000000
--- a/docs/html/preview/features/images/app-permissions-screen_2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/features/multi-window.jd b/docs/html/preview/features/multi-window.jd
new file mode 100644
index 0000000..0fe5ecf
--- /dev/null
+++ b/docs/html/preview/features/multi-window.jd
@@ -0,0 +1,595 @@
+page.title=Multi-Window Support
+page.metaDescription=New support in Android N for showing more than one app at a time.
+page.keywords="multi-window", "android N", "split screen", "free-form"
+
+@jd:body
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>In this document</h2>
+      <ol>
+        <li><a href="#overview">Overview</a></li>
+        <li><a href="#lifecycle">Multi-Window Lifecycle</a></li>
+        <li><a href="#configuring">Configuring Your App for Multi-Window
+              Mode</a></li>
+        <li><a href="#running">Running Your App in Multi-Window Mode</a></li>
+        <li><a href="#testing">Testing Your App's Multi-Window Support</a></li>
+      </ol>
+    <h2>See Also</h2>
+      <ol>
+        <li><a class="external-link"
+          href="https://github.com/googlesamples/android-MultiWindowPlayground">Multi-Window
+          Playground sample app</a></li>
+        <li><a class="external-link"
+          href="https://medium.com/google-developers/5-tips-for-preparing-for-multi-window-in-android-n-7bed803dda64"
+          >Five Tips for Preparing for Multi-Window in Android N</a></li>
+      </ol>
+  </div>
+</div>
+
+<p>
+  Android N adds support for displaying more than one app at the
+  same time. On handheld devices, two apps can run side-by-side or
+  one-above-the-other in <em>split-screen</em> mode. On TV devices, apps can
+  use <em>picture-in-picture</em> mode to continue video playback while users
+  are interacting with another app.
+</p>
+
+<p>
+  If you build your app with the N Preview SDK, you can configure how your app
+  handles multi-window display. For example, you can specify your activity's
+  minimum allowable dimensions. You can also disable multi-window display for
+  your app, ensuring that the system only shows your app in full-screen
+  mode.
+</p>
+
+<h2 id="overview">Overview</h2>
+
+<p>
+  Android N allows several apps to share the screen at once. For
+  example, a user could split the screen, viewing a web page on the left side
+  while composing an email on the right side. The user experience depends on
+  the device:
+</p>
+
+<ul>
+  <li>Handheld devices running Android N offer split-screen
+  mode. In this mode, the system fills the screen with two apps, showing them
+  either side-by-side or one-above-the-other. The user can drag the dividing
+  line separating the two to make one app larger and the other smaller.
+  </li>
+
+  <li>On Nexus Player running Android N, apps can put themselves
+  in <a href="picture-in-picture.html">picture-in-picture mode</a>, allowing
+  them to continue showing content while the user browses or interacts with
+  other apps.
+  </li>
+
+  <li>Manufacturers of larger devices can choose to enable freeform
+  mode, in which the user can freely resize each activity. If the
+  manufacturer enables this feature, the device offers freeform mode in addition
+  to split-screen mode.
+  </li>
+</ul>
+
+<img src="{@docRoot}preview/images/mw-splitscreen.png" alt="" width="650"
+    srcset="{@docRoot}preview/images/mw-splitscreen.png 1x,
+    {@docRoot}preview/images/mw-splitscreen_2x.png 2x,"
+    id="img-split-screen" />
+<p class="img-caption">
+  <strong>Figure 1.</strong> Two apps running side-by-side in split-screen mode.
+</p>
+
+<p>
+  The user can switch into multi-window mode in the following ways:
+</p>
+
+<ul>
+  <li>If the user opens the <a href="{@docRoot}guide/components/recents.html">Overview
+  screen</a> and performs a long press on an
+  activity title, they can drag that activity to a highlighted portion of the
+  screen to put the activity in multi-window mode.
+  </li>
+
+  <li>If the user performs a long press on the Overview button, the device puts
+  the current activity in multi-window mode, and opens the Overview screen to
+  let the user choose another activity to share the screen.
+  </li>
+</ul>
+
+<p>
+  Users can <a href="{@docRoot}guide/topics/ui/drag-drop.html">drag and
+  drop</a> data from one activity to another while the activities are sharing
+  the screen. (Previously, users could only drag and drop data within a single
+  activity.)
+</p>
+
+<h2 id="lifecycle">Multi-Window Lifecycle</h2>
+
+<p>
+  Multi-window mode does not change the <a href=
+  "{@docRoot}training/basics/activity-lifecycle/index.html">activity
+  lifecycle</a>.
+</p>
+
+<p>
+  In multi-window mode, only the activity the user has most recently interacted
+  with is active at a given time. This activity is considered <em>topmost</em>.
+  All other activities are in the paused state, even if they are visible.
+  However, the system gives these paused-but-visible activities higher priority
+  than activities that are not visible. If the user interacts with one of the
+  paused activities, that activity is resumed, and the previously topmost
+  activity is paused.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> In multi-window mode, an app can be in the paused
+  state and still be visible to the user. An app might need to continue its
+  activities even while paused. For example, a video-playing app that is in
+  paused mode but is visible should continue showing its video. For this
+  reason, we recommend that activities that play video <em>not</em> pause the
+  video in their {@link android.app.Activity#onPause onPause()} handlers.
+  Instead, they should pause video in {@link android.app.Activity#onStop
+  onStop()}, and resume playback in {@link android.app.Activity#onStart
+  onStart()}.
+</p>
+
+<p>
+  When the user puts an app into multi-window mode, the system notifies the
+  activity of a configuration change, as specified in <a href=
+  "{@docRoot}guide/topics/resources/runtime-changes.html">Handling Runtime
+  Changes</a>. Essentially, this change has the same activity-lifecycle
+  implications as when the system notifies the app that the device has switched
+  from portrait to landscape mode, except that the device dimensions are
+  changed instead of just being swapped. As discussed in <a href=
+  "{@docRoot}guide/topics/resources/runtime-changes.html">Handling Runtime
+  Changes</a>, your activity can handle the configuration change itself, or it
+  can allow the system to destroy the activity and recreate it with the new
+  dimensions.
+</p>
+
+<p>
+  If the user is resizing a window and makes it larger in either dimension, the
+  system resizes the activity to match the user action and issues <a href=
+  "{@docRoot}guide/topics/resources/runtime-changes.html">runtime changes</a>
+  as needed. If the app lags behind in drawing in newly-exposed areas, the
+  system temporarily fills those areas with the color specified by the {@link
+  android.R.attr#windowBackground windowBackground} attribute or by the default
+  <code>windowBackgroundFallback</code> style attribute.
+</p>
+
+<h2 id="configuring">Configuring Your App for Multi-Window Mode</h2>
+
+<p>
+  If your app targets Android N, you can configure how and
+  whether your app's activities support multi-window display. You can set
+  attributes in your manifest to control both size and layout.
+  A root activity's attribute settings apply to all activities
+  within its task stack. For example, if the root activity has
+  <code>android:resizeableActivity</code> set to true, then all activities
+  in the task stack are resizeable.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> If you build a multi-orientation app with a version of the
+  SDK lower than Android N, and the user uses the app in
+  multi-window mode, the system forcibly resizes the app. The system presents a
+  dialog box warning the user that the app may behave unexpectedly. The system
+  does <em>not</em> resize fixed-orientation apps; if
+  the user attempts to open a fixed-orientation app under multi-window mode,
+  the app takes over the whole screen.
+</p>
+
+<h4 id="resizeableActivity">android:resizeableActivity</h4>
+<p>
+  Set this attribute in your manifest's <code>&lt;activity&gt;</code> or
+  <code>&lt;application&gt;</code> node to enable or disable multi-window
+  display:
+</p>
+
+<pre>
+android:resizeableActivity=["true" | "false"]
+</pre>
+
+<p>
+  If this attribute is set to true, the activity can be launched in
+  split-screen and freeform modes. If the attribute is set to false, the
+  activity does not support multi-window mode. If this value is false, and the
+  user attempts to launch the activity in multi-window mode, the activity takes
+  over the full screen.
+</p>
+
+<p>
+  If your app targets Android N, but you do not specify a value
+  for this attribute, the attribute's value defaults to true.
+</p>
+
+<h4 id="supportsPictureInPicture">android:supportsPictureInPicture</h4>
+
+<p>
+  Set this attribute in your manifest's <code>&lt;activity&gt;</code> node to
+  indicate whether the activity supports picture-in-picture display. This
+  attribute is ignored if <code>android:resizeableActivity</code> is false.
+</p>
+
+<pre>
+android:supportsPictureInPicture=["true" | "false"]
+</pre>
+
+<h3 id="layout">Layout attributes</h3>
+
+<p>
+  With Android N, the <code>&lt;layout&gt;</code> manifest element
+  supports several attributes that affect how an activity behaves in
+  multi-window mode:
+</p>
+
+<dl>
+  <dt>
+    <code>android:defaultWidth</code>
+  </dt>
+
+  <dd>
+    Default width of the activity when launched in freeform mode.
+  </dd>
+
+  <dt>
+    <code>android:defaultHeight</code>
+  </dt>
+
+  <dd>
+    Default height of the activity when launched in freeform mode.
+  </dd>
+
+  <dt>
+    <code>android:gravity</code>
+  </dt>
+
+  <dd>
+    Initial placement of the activity when launched in freeform mode. See the
+    {@link android.view.Gravity} reference for suitable values.
+  </dd>
+
+  <dt>
+    <code>android:minimalSize</code>
+  </dt>
+
+  <dd>
+    Minimum height and minimum width for the activity in both split-screen
+    and freeform modes. If the user moves the divider in split-screen mode
+    to make an activity smaller than the specified minimum, the system crops
+    the activity to the size the user requests.
+  </dd>
+</dl>
+
+<p>
+  For example, the following code shows how to specify an activity's default
+  size and location, and its minimum size, when the activity is displayed in
+  freeform mode:
+</p>
+
+<pre>
+&lt;activity android:name=".MyActivity"&gt;
+    &lt;layout android:defaultHeight="500dp"
+          android:defaultWidth="600dp"
+          android:gravity="top|end"
+          android:minimalSize="450dp" /&gt;
+&lt;/activity&gt;
+</pre>
+
+<h2 id="running">Running Your App in Multi-Window Mode</h2>
+
+<p>
+  Android N offers new functionality to support apps that can run
+  in multi-window mode.
+</p>
+
+<h3 id="disabled-features">Disabled features in multi-window mode</h3>
+
+<p>
+  Certain features are disabled or ignored when a device is in multi-window
+  mode, because they don’t make sense for an activity which may be sharing the
+  device screen with other activities or apps. Such features include:
+
+<ul>
+  <li>Some <a href="{@docRoot}training/system-ui/index.html">System UI</a>
+  customization options are disabled; for example, apps cannot hide the status
+  bar if they are not running in full-screen mode.
+  </li>
+
+  <li>The system ignores changes to the <code><a href=
+  "{@docRoot}guide/topics/manifest/activity-element.html#screen"
+  >android:screenOrientation</a></code> attribute.
+  </li>
+</ul>
+
+<h3 id="change-notification">Multi-window change notification and querying</h3>
+
+<p>
+  The following new methods have been added to the {@link android.app.Activity}
+  class to support multi-window display. For details on each method, see the
+  <a href="{@docRoot}preview/setup-sdk.html#docs-dl">N Preview SDK Reference</a>.
+</p>
+
+<dl>
+  <dt>
+    <code>Activity.inMultiWindow()</code>
+  </dt>
+
+  <dd>
+    Call to find out if the activity is in multi-window mode.
+  </dd>
+
+  <dt>
+    <code>Activity.inPictureInPicture()</code>
+  </dt>
+
+  <dd>
+    Call to find out if the activity is in picture-in-picture mode.
+
+    <p class="note">
+      <strong>Note:</strong> Picture-in-picture mode is a special case of
+      multi-window mode. If <code>myActivity.inPictureInPicture()</code>
+      returns true, then <code>myActivity.inMultiWindow()</code> also returns
+      true.
+    </p>
+  </dd>
+
+  <dt>
+    <code>Activity.onMultiWindowChanged()</code>
+  </dt>
+
+  <dd>
+    The system calls this method whenever the activity goes into or out of
+    multi-window mode. The system passes the method a value of true if the
+    activity is entering multi-window mode, and false if the activity is
+    leaving multi-window mode.
+  </dd>
+
+  <dt>
+    <code>Activity.onPictureInPictureChanged()</code>
+  </dt>
+
+  <dd>
+    The system calls this method whenever the activity goes into or out of
+    picture-in-picture mode. The system passes the method a value of true if
+    the activity is entering picture-in-picture mode, and false if the activity
+    is leaving picture-in-picture mode.
+  </dd>
+</dl>
+
+<p>
+  There are also {@link android.app.Fragment} versions of each of these
+  methods, for example <code>Fragment.inMultiWindow()</code>.
+</p>
+
+<h3 id="entering-pip">Entering picture-in-picture mode</h3>
+
+<p>
+  To put an activity in picture-in-picture mode, call the new method
+  <code>Activity.enterPictureInPicture()</code>. This method has no effect if
+  the device does not support picture-in-picture mode. For more information,
+  see the <a href="picture-in-picture.html">Picture-in-Picture</a> documentation.
+</p>
+
+<h3 id="launch">Launch New Activities in Multi-Window Mode</h3>
+
+<p>
+  When you launch a new activity, you can hint to the system that the new
+  activity should be displayed adjacent to the current one, if possible. To do
+  this, use the flag
+  <code>Intent.FLAG_ACTIVITY_LAUNCH_TO_ADJACENT</code>. Passing
+  this flag requests the following behavior:
+</p>
+
+<ul>
+  <li>If the device is in split-screen mode, the system attempts to create the
+  new activity next to the activity that launched it, so the two activities
+  share the screen. The system is not guaranteed to be able to do this, but it
+  makes the activities adjacent if possible.
+  </li>
+
+  <li>If the device is not in split-screen mode, this flag has no effect.
+  </li>
+</ul>
+
+<p>
+  If a device is in freeform mode and you are launching a new activity, you can
+  specify the new activity's dimensions and screen location by calling
+  <code>ActivityOptions.setLaunchBounds()</code>. This method has no effect if
+  the device is not in multi-window mode.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> If you launch an activity within a task stack, the
+  activity replaces the activity on the screen, inheriting all of its
+  multi-window properties. If you want to launch the new activity as a separate
+  window in multi-window mode, you must launch it in a new task stack.
+</p>
+
+<h3 id="dnd">Supporting drag and drop</h3>
+
+<p>
+  Users can <a href="{@docRoot}guide/topics/ui/drag-drop.html">drag and
+  drop</a> data from one activity to another while the two activities are
+  sharing the screen. (Previously, users could only drag and drop data within a
+  single activity.) For this reason, you may want to add drag and drop
+  functionality to your app if your app does not currently support it.
+</p>
+
+<p>
+  The N Preview SDK extends the <a href=
+  "{@docRoot}reference/android/view/package-summary.html"><code>android.view</code></a>
+  package to support cross-app drag and drop. For details on the following
+  classes and methods, see the <a href="{@docRoot}preview/setup-sdk.html#docs-dl">N
+  Preview SDK Reference</a>.
+</p>
+
+<dl>
+  <dt>
+    <code>android.view.DropPermissions</code>
+  </dt>
+
+  <dd>
+    Token object responsible for specifying the permissions granted to the app
+    that receives a drop.
+  </dd>
+
+  <dt>
+    <code>View.startDragAndDrop()</code>
+  </dt>
+
+  <dd>
+    New alias for {@link android.view.View#startDrag View.startDrag()}. To
+    enable cross-activity drag and drop, pass the new flag
+    <code>View.DRAG_FLAG_GLOBAL</code>. If you need to give URI permissions to
+    the recipient activity, pass the new flags
+    <code>View.DRAG_FLAG_GLOBAL_URI_READ</code> or
+    <code>View.DRAG_FLAG_GLOBAL_URI_WRITE</code>, as appropriate.
+  </dd>
+
+  <dt>
+    <code>View.cancelDragAndDrop()</code>
+  </dt>
+
+  <dd>
+    Cancels a drag operation currently in progress. Can only be called by the
+    app that originated the drag operation.
+  </dd>
+
+  <dt>
+    <code>View.updateDragShadow()</code>
+  </dt>
+
+  <dd>
+    Replaces the drag shadow for a drag operation currently in progress. Can
+    only be called by the app that originated the drag operation.
+  </dd>
+
+  <dt>
+    <code>Activity.requestDropPermissions()</code>
+  </dt>
+
+  <dd>
+    Requests the permissions for the content URIs passed with the {@link
+    android.content.ClipData} contained in a {@link android.view.DragEvent}.
+  </dd>
+</dl>
+
+<h2 id="testing">Testing Your App's Multi-Window Support</h2>
+
+<p>
+  Whether or not you update your app for Android N, you should
+  verify how it behaves in multi-window mode in case a user tries to launch it
+  in multiwindow mode on a device running Android N.
+</p>
+
+<h3 id="configuring">Configuring a Test Device</h3>
+
+<p>
+  If you install Android N on a device, split-screen mode is
+  automatically supported.
+</p>
+
+<h3 id="test-non-n">If your app was not built with the N Preview SDK</h3>
+
+<p>
+  If you did not build your app with the N Preview SDK and the user attempts to use
+  the app in multi-window mode, the system forcibly resizes the app unless the app
+  declares a fixed orientation.
+</p>
+
+<p>
+  If your app does not declare a fixed orientation, you should launch your app
+  on a device running Android N and attempt to put the app in
+  split-screen mode. Verify that the user experience is
+  acceptable when the app is forcibly resized.
+</p>
+
+<p>
+  If the app declares a fixed orientation, you should attempt to put the app in
+  multi-window mode. Verify that when you do so, the app remains
+  in full-screen mode.
+</p>
+
+<h3 id="test-mw">If you support multi-window mode</h3>
+
+<p>
+  If you built your app with the N Preview SDK and have not disabled
+  multi-window support, verify the following behavior under both split-screen
+  and freeform modes.
+</p>
+
+<ul>
+  <li>Launch the app in full-screen mode, then switch to multi-window mode by
+  long-pressing the Overview button. Verify that the app switches properly.
+  </li>
+
+  <li>Launch the app directly in multi-window mode, and verify that the app
+  launches properly. You can launch an app in multi-window mode by pressing the
+  Overview button, then long-pressing the title bar of your app and dragging it
+  to one of the highlighted areas on the screen.
+  </li>
+
+  <li>Resize your app in split-screen mode by dragging the divider line.
+  Verify that the app resizes without crashing, and that necessary UI elements
+  are visible.
+  </li>
+
+  <li>If you have specified minimum dimensions for your app, attempt to resize
+  the app below those dimensions. Verify that you cannot resize the app to be
+  smaller than the specified minimum.
+  </li>
+
+  <li>Through all tests, verify that your app's performance is acceptable. For
+  example, verify that there is not too long a lag to update the UI after the
+  app is resized.
+  </li>
+</ul>
+
+<h4 id="test-checklist">Testing checklist</h4>
+
+<p>
+  To verify your app's performance in multi-window mode, try the following
+  operations. You should try these operations in both split-screen and
+  multi-window mode, except where otherwise noted.
+</p>
+
+<ul>
+  <li>Enter and leave multi-window mode.
+  </li>
+
+  <li>Switch from your app to another app, and verify that the app behaves
+  properly while it is visible but not active. For example, if your app is
+  playing video, verify that the video continues to play while the user is
+  interacting with another app.
+  </li>
+
+  <li>In split-screen mode, try moving the dividing bar to make your app both
+  larger and smaller. Try these operations in both side-by-side and
+  one-above-the-other configurations. Verify that the app does not crash,
+  essential functionality is visible, and the resize operation doesn't take too
+  long.
+  </li>
+
+  <li>Perform several resize operations in rapid succession. Verify that your
+  app doesn't crash or leak memory. For information about checking your app's
+  memory usage, see <a href="{@docRoot}tools/debugging/debugging-memory.html">
+  Investigating Your RAM Usage</a>.
+  </li>
+
+  <li>Use your app normally in a number of different window configurations, and
+  verify that the app behaves properly. Verify that text is readable, and that
+  UI elements aren't too small to interact with.
+  </li>
+</ul>
+
+<h3 id="test-disabled-mw">If you have disabled multi-window support</h3>
+
+<p>
+  If you disabled multi-window support by setting
+  <code>android:resizableActivity="false"</code>, you should launch your app on
+  a device running Android N and attempt to put the app in
+  freeform and split-screen modes. Verify that when you do so, the app remains
+  in full-screen mode.
+</p>
diff --git a/docs/html/preview/features/multilingual-support.jd b/docs/html/preview/features/multilingual-support.jd
new file mode 100644
index 0000000..ac96452
--- /dev/null
+++ b/docs/html/preview/features/multilingual-support.jd
@@ -0,0 +1,218 @@
+page.title=Language and Locale
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document:</h2>
+<ol>
+	  <li><a href="#preN">Challenges in Resolving Language Resources</a></li>
+    <li><a href="#postN">Improvements to Resource-Resolution Strategy</a></li>
+    <li><a href="#design">Designing your App to Support Additional
+      Locales</a></li>
+
+</ol>
+
+</div>
+</div>
+
+<p>Android N provides enhanced support for multilingual users,
+allowing them to select multiple locales in settings. Android N
+provides this capability by greatly expanding the number of locales supported
+and changing the way the system resolves resources. The new method of resolving
+resources is more robust and designed to be compatible with existing APKs, but
+you should take extra care to spot any unexpected behavior. For example, you
+should test to make sure that your app defaults to the expected language. Also,
+if your app supports multiple languages, you should ensure that this support works as
+intended. Finally, you should try to ensure that your app gracefully handles
+languages that you didn't explicitly design it to support.</p>
+
+<p>This document starts by explaining the resource resolution strategy prior to
+Android N. Next, it describes Android N's improved
+resource-resolution strategy. Last, it explains how to take advantage of
+the expanded number of locales to support more multilingual users.</p>
+
+<h2 id="preN">Challenges in Resolving Language Resources</h2>
+
+<p>Prior to Android N, Android could not always successfully
+ match app and system locales.</p>
+
+ <p>For example, assume that you have the following situation:</p>
+ <ul>
+ <li>Your app's default language is {@code en_US} (US English), and it also has
+  Spanish strings localized in {@code es_ES}
+  resource files.</li>
+ <li> A device is set to {@code es_MX} </li>
+
+<p>When your Java code refers to strings, the system would load
+strings from the default ({@code en_US}) resource file, even if the app has
+Spanish resources localized under {@code es_ES}. This is because when the system
+ cannot find an exact match, it continues to look for resources by stripping the
+ country code off the locale. Finally, if no match is found, the system falls
+ back to the default, which is {@code en_US}. </p>
+
+
+<p>The system would also default to {@code en_US} if the user chose a language that
+the app didn't support at all, like French. For example:</p>
+
+<p class="table-caption" id="t-resource-res">
+<strong>Table 1.</strong> Resource resolution without an exact locale match.
+</p>
+<table>
+<tbody>
+<tr>
+<th>User Settings</th>
+<th>App Resources</th>
+<th>Resource Resolution</th>
+</tr>
+<tr>
+<td>fr_CH</td>
+<td>
+default (en)<br>
+de_DE<br>
+es_ES<br>
+fr_FR<br>
+it_IT<br>
+</td>
+ <td>
+Try fr_CH =&gt; Fail<br>
+Try fr =&gt; Fail<br>
+Use default (en)
+</td>
+ </tr>
+ </tbody>
+</table>
+
+
+<p>In this example, the system displays English strings without
+knowing whether the user can understand English. This behavior is pretty common
+today. Android N should substantially reduce the frequency
+of outcomes like this one.</p>
+
+<h2 id="postN">Improvements to Resource-Resolution Strategy</h2>
+<p>Android N brings more robust resource resolution, and
+finds better fallbacks automatically. However, to speed up resolution and improve
+ maintainability, you should store resources in the most common parent dialect.
+ For example, if you were storing Spanish resources in the {@code es-US} directory
+ before, move them into the {@code es-419} directory, which contains Latin American Spanish.
+ Similarly, if you have resource strings in a folder named {@code en-GB}, rename
+ the folder to {@code en-001} (international English), because the most common
+ parent for <code>en-GB</code> strings is {@code en-001}.
+ The following examples explain why these practices improve performance and
+reliability of resource resolution.</p>
+
+<h3>Resource resolution examples</h3>
+
+<p>With Android N, the case described in <strong>Table 1</strong> is resolved
+differently:</p>
+
+<p class="table-caption" id="t-improved-res">
+<strong>Table 2.</strong> An improved resolution strategy for when there is no
+exact locale match.</p>
+<table>
+<tr>
+<th>User Settings</th>
+<th>App Resources</th>
+<th>Resource Resolution</th>
+</tr>
+<tr>
+<td><ol>
+<li> fr_CH</li>
+</ol>
+</td>
+<td>
+default (en)<br>
+de_DE<br>
+es_ES<br>
+fr_FR<br>
+it_IT<br>
+</td>
+<td>
+Try fr_CH =&gt; Fail<br>
+Try fr =&gt; Fail<br>
+Try children of fr =&gt; fr_FR<br>
+Use fr_FR
+</td>
+</tr>
+
+</table>
+
+
+<p>Now the user gets French resources instead of English. This example also shows
+ why you should store French strings in {@code fr} rather than {@code fr_FR}
+ for Android N. Here the course of action is to match the closest parent dialect,
+ making resolution faster and more predictable.</p>
+
+<p>In addition to this improved resolution logic, Android now offers more
+ user languages to choose from. Let’s try the above example again with Italian
+ specified as an additional user language, but without app support for French.  </p>
+
+<p class="table-caption" id="t-2d-choice">
+<strong>Table 3.</strong> Resource resolution when the app only matches the
+user's second-preferred locale setting.</p>
+<table>
+<tr>
+<th>User Settings</th>
+<th>App Resources</th>
+<th>Resource Resolution</th>
+
+</tr>
+<tr>
+<td><ol>
+<li> fr_CH</li>
+<li> it_CH</li>
+</ol>
+</td>
+<td>
+default (en)<br>
+de_DE<br>
+es_ES<br>
+it_IT<br>
+</td>
+<td>
+Try fr_CH =&gt; Fail<br>
+Try fr =&gt; Fail<br>
+Try children of fr =&gt; Fail<br>
+Try it_CH =&gt; Fail<br>
+Try it =&gt; Fail<br>
+Try children of it =&gt; it_IT<br>
+Use it_IT
+</td>
+
+</tr>
+
+</table>
+<p>The user still gets a language they understand, even though the app doesn’t
+support French.</p>
+
+
+<h2 id="design">Designing your App to Support Additional Locales</h2>
+<h3>LocaleList API</h3>
+
+<p>Android N adds a new API {@code LocaleList.GetDefault()}
+that lets apps directly query the list of languages a user has specified. This API
+allows you to create more sophisticated
+ app behavior and better-optimized display of content. For example, Search
+  can show results in multiple languages based on user’s settings.  Browser apps
+  can avoid offering to translate pages in a language the user already knows,
+  and keyboard apps can auto-enable all appropriate layouts. </p>
+
+<h3>Formatters</h3>
+
+<p>Up through Android 6.0 (API level 23), Android supported only one or two locales
+ for many common languages
+(en, es, ar, fr, ru). Because there were only a few variants of each language,
+apps could get away with storing some numbers and dates as hard coded strings
+in resource files.  However, with Android's broadened set of supported locales,
+there can be
+significant differences in formats for dates, times, currencies, and similar
+information even within a single locale. Hard-coding your formats can produce a
+confusing experience for end users.  Therefore, when developing for Android N
+make sure to use formatters instead of hard coding numbers and date strings.</p>
+
+<p>A prime example is Arabic, whose support Android N expands from
+one {@code ar_EG} to 27 Arabic locales. These locales can share most resources,
+but some prefer ASCII digits, while others prefer native digits. For example,
+when you want to create a sentence with a digit variable, such as
+"Choose a 4 digit pin", use formatters as shown below:</p>
+
+<pre> format(locale, "Choose a %d-digit PIN", 4)</pre>
diff --git a/docs/html/preview/features/notification-updates.jd b/docs/html/preview/features/notification-updates.jd
new file mode 100644
index 0000000..d3042ad
--- /dev/null
+++ b/docs/html/preview/features/notification-updates.jd
@@ -0,0 +1,334 @@
+page.title=Notifications
+page.tags=notifications
+helpoutsWidget=true
+page.image=/preview/images/notifications-card.png
+
+trainingnavtop=true
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<!-- table of contents -->
+<h2>This document includes</h2>
+<ol>
+  <li><a href="#direct">Direct Reply</a></li>
+  <li><a href="#bundle">Bundled Notifications</a></li>
+  <li><a href="#custom">Custom Views</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>Android N introduces several new APIs that allow apps to post
+notifications that are highly visible and interactive.</p>
+
+<p>Android N extends the existing {@link android.support.v4.app.RemoteInput}
+notification API to support inline replies on handsets. This feature allows users
+ to quickly respond from the notification shade without visiting your app.</p>
+
+<p>
+  Android N also allows you to bundle similar notifications to
+  appear as a single notification. To make this possible, Android N uses the existing {@link
+  android.support.v4.app.NotificationCompat.Builder#setGroup
+  NotificationCompat.Builder.setGroup()} method. Users can expand each of the
+  notifications, and perform actions such as reply and dismiss on each of the
+  notifications, individually from the notification shade.
+</p>
+
+<p>Last, Android N also adds new APIs that allow you to leverage system
+decorations in your app’s customized notification views. These APIs help
+ensure that the notification views share a consistent presentation with
+standard templates.</p>
+
+<p>This document highlights some of the key changes that you should take into
+ account when using the new notification features in your apps.</p>
+
+<h2 id="direct">Direct Reply</h2>
+
+<p>With the Direct Reply feature in Android N, users can quickly
+respond to text messages or update task lists directly within the notification
+interface. On a handheld, the inline reply action appears as an additional button
+ attached to the notification. When a user replies via keyboard, the system attaches
+  the text response to the intent
+    you had specified for the notification action and sends the intent to your
+     handheld app.
+
+
+<img id="fig-reply-button" src="{@docRoot}preview/images/inline-reply.png"
+  srcset="{@docRoot}preview/images/inline-reply.png 1x,
+  {@docRoot}preview/images/inline-reply_2x.png 2x"
+  width="400">
+<p class="img-caption">
+  <strong>Figure 1.</strong> Android N adds the <strong>Reply</strong>
+  action button.
+</p>
+
+<h3>Adding inline reply actions</h3>
+
+<p>To create a notification action that supports direct reply:
+</p>
+
+<ol>
+<li>Create an instance of {@link android.support.v4.app.RemoteInput.Builder}
+  that you can add to your notification
+action. This class's constructor accepts a string that the system uses as the key
+ for the text input. Later, your handheld app uses that key to retrieve the text
+  of the input.
+
+<pre>
+// Key for the string that's delivered in the action's intent
+private static final String KEY_TEXT_REPLY = "key_text_reply";
+String replyLabel = getResources().getString(R.string.reply_label);
+RemoteInput remoteInput = new RemoteInput.Builder(KEY_TEXT_REPLY)
+        .setLabel(replyLabel)
+        .build();
+</pre>
+</li>
+<li>Attach the {@link android.support.v4.app.RemoteInput}
+ object to an action using <code>addRemoteInput()</code>.
+
+<pre>
+// Create the reply action and add the remote input
+Notification.Action action =
+        new Notification.Action.Builder(R.drawable.ic_reply_icon,
+                getString(R.string.label), replyPendingIntent)
+                .addRemoteInput(remoteInput)
+                .build();
+</pre>
+</li>
+
+<li>Apply the action to a notification and issue the notification.
+
+<pre>
+// Build the notification and add the action
+Notification notification =
+        new Notification.Builder(mContext)
+                .setSmallIcon(R.drawable.ic_message)
+                .setContentTitle(getString(R.string.title))
+                .setContentText(getString(R.string.content))
+                .addAction(action))
+                .build();
+
+// Issue the notification
+NotificationManager notificationManager =
+        NotificationManager.from(mContext);
+notificationManager.notify(notificationId, notification);
+
+</pre>
+</li>
+
+</ol>
+
+
+<p> The system prompts the user to input a response when they trigger the
+notification action. </p>
+
+<img id="fig-user-input" src="{@docRoot}preview/images/inline-type-reply.png"
+    srcset="{@docRoot}preview/images/inline-type-reply.png 1x,
+    {@docRoot}preview/images/inline-type-reply_2x.png 2x"
+    width="300">
+<p class="img-caption">
+  <strong>Figure 2.</strong> The user inputs text from the notification shade.
+</p>
+
+<h3>Retrieving user input from the inline reply</h3>
+
+<p>To receive user input from the notification interface to the activity you
+declared in the reply action's intent:</p>
+<ol>
+<li> Call {@link android.support.v4.app.RemoteInput#getResultsFromIntent
+  getResultsFromIntent()} by passing the notification action’s intent as
+ the input parameter. This method returns a {@link android.os.Bundle} that
+ contains the text response.
+</li>
+
+<pre>
+Bundle remoteInput = RemoteInput.getResultsFromIntent(intent);
+</pre>
+
+<li>Query the bundle using the result key (provided to the {@link
+  android.support.v4.app.RemoteInput.Builder} constructor).
+</li>
+</ol>
+
+<p>The following code snippet illustrates how a method retrieves the input text
+from a bundle:</p>
+
+<pre>
+// Obtain the intent that started this activity by calling
+// Activity.getIntent() and pass it into this method to
+// get the associated string.
+
+private CharSequence getMessageText(Intent intent) {
+    Bundle remoteInput = RemoteInput.getResultsFromIntent(intent);
+    if (remoteInput != null) {
+            return remoteInput.getCharSequence(KEY_TEXT_REPLY);
+            }
+    return null;
+ }
+</pre>
+
+<p>Apps can apply logic to decide what actions to take on the retrieved
+text.
+For interactive apps (like chats), provide more context in the notification itself
+ (for example, multiple lines of chat history, including the user’s own messages)
+  so that the user can respond appropriately.
+When the user responds via {@link android.support.v4.app.RemoteInput},
+ include the text in the reply history with the {@code setRemoteInputHistory()}
+ method.</p>
+
+<h2 id="bundle">Bundled Notifications</h2>
+
+<p>Android N provides developers with a new way to represent
+ a queue of notifications: <i>bundled notifications</i>. This is similar to the
+  <a href="{@docRoot}training/wearables/notifications/stacks.html">Notification
+  Stacks</a> feature in Android Wear. For example, if your app creates notifications
+  for received messages, when more than one message is received, bundle the
+ notifications together as a single group. You can
+ use the existing {@link android.support.v4.app.NotificationCompat.Builder#setGroup
+Builder.setGroup()} method to bundle similar notifications.</p>
+
+<p>
+  A notification group imposes a hierarchy on the notifications comprising it.
+  At the top of that hierarchy is a parent notification that displays summary
+  information for the group. The user can progressively
+  expand the notification group, and the system shows more information as the
+  user drills deeper. When the user expands the bundle, the system reveals more
+  information for all its child notifications; when the user
+  expands one of those notifications, the system reveals its entire content.
+</p>
+
+<img id="fig-bundles" src="{@docRoot}preview/images/bundles.png"
+  srcset="{@docRoot}preview/images/bundles.png 1x,
+          {@docRoot}preview/images/bundles_2x.png 2x"
+  width="300">
+<p class="img-caption">
+  <strong>Figure 3.</strong> The user can progressively expand the notification
+  group.
+</p>
+
+<p>To learn how to add notifications to a group, see
+<a href="{@docRoot}training/wearables/notifications/stacks.html#AddGroup">Add
+Each Notification to a Group</a>.</p>
+
+
+<h3 id="best-practices">Best practices for bundled notifications</h3>
+<p>This section provides guidelines about when to use notification groups instead
+of the {@link android.app.Notification.InboxStyle InboxStyle}
+notifications that have been available in earlier versions of the
+Android platform.</p>
+
+<h3>When to use bundled notifications</h3>
+
+<p>You should use notification groups only if all of the following conditions are
+true for your use case:</p>
+
+<ul>
+  <li>The child notifications are complete notifications and can be displayed
+   individually without the need for a group summary.</li>
+  <li>There is a benefit to surfacing the child notifications individually. For
+  example:
+  </li>
+  <ul>
+    <li>They are actionable, with actions specific to each child.</li>
+    <li>There is more information to the child that the user wants to read.</li>
+  </ul>
+</ul>
+
+<p>Examples of good use cases for notification groups include: a messaging app
+displaying a list of incoming messages, or an email app displaying a list of
+received emails.</p>
+
+<p>
+Examples of cases where a single notification is preferable
+ include individual messages from a single person, or a list representation of
+ single-line text items. You can use
+({@link android.app.Notification.InboxStyle InboxStyle} or
+{@link android.app.Notification.BigTextStyle BigTextStyle}) to accomplish
+this.
+</p>
+
+<h3 id ="post">Displaying bundled notifications</h3>
+
+<p>
+  The app should always post a group summary, even if the group contains just a
+  single child. The system will suppress the summary and directly display the
+  child notification if it only contains a single notification. This ensures
+  that the system can provide a consistent experience when the user swipes away
+  children of a group.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> This version of Android N does not yet
+  suppress the summary for notification groups containing a single child. This
+  functionality will be added in a later version of Android N.
+</p>
+
+<h3>Peeking notifications</h3>
+
+<p>While the system usually displays child notifications as a group, you can set
+ them to temporarily appear as
+ <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html#Heads-up">
+ heads-up notifications</a>. This feature is especially useful because it allows
+  immediate access to the most recent child and the actions associated with it.
+</p>
+
+
+<h3>Backwards compatibility</h3>
+
+<p>
+  Both notification groups and remote input have been a part of the {@link
+  android.app.Notification} API since Android 5.0 (API level 21) to support
+  Android Wear devices. If you've already built notifications with these APIs,
+  the only action you must take is to verify that the app behavior corresponds
+  to the guidelines described above, and to consider implementing {@code
+  setRemoteInputHistory()}.
+</p>
+
+<p>
+  In order to support backward compatibility, the same APIs are available with
+  the support library's {@link android.support.v4.app.NotificationCompat}
+  class, allowing you to build notifications that works on earlier Android
+  versions. On handhelds and tablets, users only see the summary notification,
+  so an app should still have an inbox style or an equivalent notification
+  representative for the whole information content of the group. As Android
+  Wear devices allow users to see all child notifications even on older
+  platform levels, you should build child notifications regardless of API
+  level.
+</p>
+
+<h2 id="custom"> Custom Views</h2>
+<p>Starting from Android N, you can customize notification views and
+still obtain system decorations like notification headers, actions, and
+expandable layouts.</p>
+
+<p>To enable this capability, Android N adds the following APIs to style your
+  custom view:</p>
+
+<dl>
+<dt>
+{@code DecoratedCustomViewStyle()}</dt>
+<dd> Styles notifications other than media
+notifications.</dd>
+<dt>
+{@code DecoratedMediaCustomViewStyle()}</dt>
+<dd> Styles media notifications.</dd>
+</dl>
+
+<p>To use this new API, call the {@code setStyle()} method, passing to it
+the desired custom view style.</p>
+
+<p>This snippet shows how to construct a custom notification object with the
+{@code DecoratedCustomViewStyle()} method.</p>
+
+<pre>
+Notification noti = new Notification.Builder()
+           .setSmallIcon(R.drawable.ic_stat_player)
+           .setLargeIcon(albumArtBitmap))
+           .setCustomContentView(contentView);
+           .setStyle(new Notification.DecoratedCustomViewStyle())
+           .build();
+
+</pre>
diff --git a/docs/html/preview/features/picture-in-picture.jd b/docs/html/preview/features/picture-in-picture.jd
new file mode 100644
index 0000000..106ad8b
--- /dev/null
+++ b/docs/html/preview/features/picture-in-picture.jd
@@ -0,0 +1,213 @@
+page.title=Picture-in-picture
+page.keywords=preview,sdk,PIP,Picture-in-picture
+page.tags=androidn
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>In this document</h2>
+<ol>
+  <li><a href="#declaring">Declaring Your Activity Supports
+Picture-in-picture</a></li>
+  <li><a href="#pip_button">Switching Your Activity to Picture-in-picture</a>
+</li>
+  <li><a href="#handling_ui">Handling UI During Picture-in-picture</a>
+</li>
+  <li><a href="#continuing_playback">Continuing Video Playback While in
+Picture-in-picture</a></li>
+  <li><a href="#single_playback">Using a Single Playback Activity for
+Picture-in-picture</a></li>
+  <li><a href="#best">Best Practices</a></li>
+</ol>
+
+<h2>See Also</h2>
+<ol>
+  <li><a href="{@docRoot}preview/features/multi-window.html">Multi-Window
+Support</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>In Android N, Android TV users can now watch a video
+in a pinned window in a corner of the screen when navigating within
+apps. Picture-in-picture (PIP) mode lets apps run a video
+activity in the pinned window while another activity continues in the
+background. The PIP window lets users multitask while using your app, which
+helps users be more productive.</p>
+
+<p>Your app can decide when to trigger PIP mode. Here are some examples of
+when to enter PIP mode:</p>
+
+<ul>
+<li>Your app can move a video into PIP mode when the user navigates
+back from the video to browse other content.</li>
+<li>Your app can switch a video into PIP mode while a user watches the end
+of an episode of content. The main screen displays promotional or summary
+information about the next episode in the series.</li>
+<li>Your app can provide a way for users to queue up additional content while
+they watch a video. The video continues playing in PIP mode while the main
+screen displays a content selection activity.</li>
+</ul>
+
+<p>The PIP window is 240x135 dp and is shown at the top-most layer in one of
+the four corners of the screen, chosen by the system. The user can bring up a
+PIP menu that lets them toggle the PIP window to full-screen, or close the PIP
+window, by holding down the <b>Home</b> button on the remote. If another
+video starts playing on the main screen, the PIP window is automatically
+closed. Users can also close the PIP window through Recents.</p>
+
+<img src="{@docRoot}preview/images/pip-active.png" />
+<p class="img-caption"><strong>Figure 1.</strong> A Picture-in-picture
+video visible in a corner of the screen while the user browses content
+on the main screen.</p>
+
+<p>PIP leverages the multi-window APIs available in Android N to
+provide the pinned video overlay window. To add PIP to your app, you need to
+register your activities that support PIP, switch your activity to PIP mode as
+needed, and make sure UI elements are hidden and video playback continues when
+the activity is in PIP mode.</p>
+
+<h2 id="declaring">Declaring Your Activity Supports Picture-in-picture</h2>
+
+<p>By default, the system does not automatically support PIP for apps.
+If you want support PIP in your app, register your video
+activity in your manifest by setting
+<code>android:supportsPictureInPicture</code> and
+<code>android:resizeableActivity</code> to <code>true</code>. Also, specify
+that your activity handles layout configuration changes so that your activity
+doesn't relaunch when layout changes occur during PIP mode transitions.</p>
+
+<pre>
+&lt;activity android:name="VideoActivity"
+    android:resizeableActivity="true"
+    android:supportsPictureInPicture="true"
+    android:configChanges=
+        "screenSize|smallestScreenSize|screenLayout|orientation"
+    ...
+</pre>
+
+<p>When registering your activity, keep in mind that in PIP mode, your
+activity is shown in a small overlay window on a TV screen. Video playback
+activities with minimal UI provide the best user experience. Activities that
+contain small UI elements might not provide a good user experience
+when switched to PIP mode, because users can't see details of the UI elements
+in the PIP window.</p>
+
+<h2 id="pip_button">Switching Your Activity to Picture-in-picture</h2>
+
+When you need to switch your activity into PIP mode, call
+<code>Activity.enterPictureInPicture()</code>. The following example switches
+to PIP mode when the user selects a dedicated PIP button on a media control
+bar:</p>
+
+<pre>
+&#64;Override
+public void onActionClicked(Action action) {
+    if (action.getId() == R.id.lb_control_picture_in_picture) {
+        getActivity().enterPictureInPicture();
+        return;
+    }
+    ...
+</pre>
+
+<p>Adding a PIP button to your media control bar lets your user easily switch
+to PIP mode while controlling video playback.</p>
+
+<img src="{@docRoot}preview/images/pip-button.png" />
+<p class="img-caption"><strong>Figure 1.</strong> A Picture-in-picture
+button on a media control bar.</p>
+
+<p>Android N includes a new
+<code>PlaybackControlsRow.PictureInPictureAction</code> class which defines
+control bar PIP actions and uses the PIP icon.</p>
+
+<h2 id="handling_ui">Handling UI During Picture-in-picture</h2>
+
+<p>When your activity enters PIP mode, your activity should only show video
+playback. Remove UI elements before your activity enters PIP,
+and restore these elements when your activity becomes full-screen again.
+Override <code>Activity.onPictureInPictureChanged()</code> or
+<code>Fragment.onPictureInPictureChanged()</code> and enable or
+disable your UI elements as needed, for example:</p>
+
+<pre>
+&#64;Override
+public void onPictureInPictureChanged(boolean inPictureInPicture) {
+    if (inPictureInPicture) {
+        // Hide the controls in picture-in-picture mode.
+        ...
+    } else {
+        // Restore the playback UI based on the playback status.
+        ...
+    }
+}
+</pre>
+
+<h2 id="continuing_playback">Continuing Video Playback While in
+Picture-in-picture</h2>
+
+<p>When your activity switches to PIP, the system considers the activity in a
+paused state, and calls your activity's <code>onPause()</code> method. Video
+playback should not be paused and should continue playing if the activity is
+paused due to PIP mode. Check for PIP in your activity's
+<code>onPause()</code> method and handle playback appropriately, for
+example:</p>
+
+<pre>
+&#64;Override
+public void onPause() {
+    // If called due to PIP, do not pause playback
+    if (inPictureInPicture()) {
+        // Continue playback
+        ...
+    }
+    // If paused but not in PIP, pause playback if necessary
+    ...
+}
+</pre>
+
+<p>When your activity switches out of PIP mode back to full-screen mode, the
+system resumes your activity and calls your <code>onResume()</code> method.</p>
+
+<h2 id="single_playback">Using a Single Playback Activity for
+Picture-in-picture</h2>
+
+<p>In your app, a user might select a new video when browsing for content on
+the main screen, while a video playback activity is in PIP mode. Play the new
+video in the existing playback activity in full screen mode, instead of
+launching a new activity that might confuse the user.</p>
+
+<p>To ensure a single activity is used for video playback requests and
+switched into or out of PIP mode as needed, set the activity's
+<code>android:launchMode</code> to <code>singleTask</code> in your manifest:
+</p>
+
+<pre>
+&lt;activity android:name="VideoActivity"
+    ...
+    android:supportsPictureInPicture="true"
+    android:launchMode="singleTask"
+    ...
+</pre>
+
+<p>In your activity, override {@link android.app.Activity#onNewIntent
+Activity.onNewIntent()} and handle the new video, stopping any existing video
+playback if needed.</p>
+
+<h2 id="best">Best Practices</h2>
+
+<p>PIP is intended for activities that play full-screen video. When switching
+your activity into PIP mode, avoid showing anything except video content.
+Track when your activity enters PIP mode and hide UI elements, as described
+in <a href="#handling_ui">Handling UI During Picture-in-picture</a>.</p>
+
+<p>Since the PIP window is shown as a floating window in the corner of the
+screen, you should avoid showing critical information in the main screen
+in any area that can be obscured by the PIP window.</p>
+
+<p>When an activity is in PIP mode, by default it doesn't get input focus. To
+receive input events while in PIP mode, use
+<code>MediaSession.setMediaButtonReceiver()</code>.</p>
diff --git a/docs/html/preview/features/power-mgmt.jd b/docs/html/preview/features/power-mgmt.jd
deleted file mode 100644
index da66181..0000000
--- a/docs/html/preview/features/power-mgmt.jd
+++ /dev/null
@@ -1,121 +0,0 @@
-page.title=Power-Saving Optimizations
-page.keywords=preview,sdk,compatibility
-sdk.platform.apiLevel=MNC
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>In this document</h2>
-
-<ol  class="hide-nested">
-    <li><a href="#behavior-doze">Doze</a></li>
-    <li><a href="#behavior-app-standby">App Standby</a></li>
-</ol>
-
-<h2>API Differences</h2>
-<ol>
-<li><a href="{@docRoot}preview/download.html">API level 22 to M Preview &raquo;</a> </li>
-</ol>
-
-
-<h2>See Also</h2>
-<ol>
-<li><a href="{@docRoot}preview/api-overview.html">M Developer Preview API Overview</a> </li>
-</ol>
-
-</div>
-</div>
-
-<p>Android M Preview helps prolong battery life by introducing new power-saving optimizations:
-<em>Doze</em> mode improves the sleep efficiency of idle devices. <em>App Standby</em> prevents apps
-from eating up power while idle.</p>
-
-<h2 id="behavior-doze">Doze</h2>
-<p>If a user leaves a device unplugged and stationary for a period of time, with the screen off,
-the device enters Doze mode. Doze attempts to keep the system in a sleep state as long as the
-device remains undisturbed. In this mode, devices periodically resume normal operations for brief periods of time so that the system can perform app syncing and any other pending operations.</p>
-
-<p>The following restrictions apply to your apps while in Doze:</p>
-<ul>
-<li>Network access is disabled, unless your app receives a high-priority
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">
-Google Cloud Messaging</a> tickle.</li>
-<li>The system ignores <a href="{@docRoot}reference/android/os/PowerManager.WakeLock.html">
-Wake locks</a>.</li>
-<li>Alarms scheduled using the {@link android.app.AlarmManager} class are deferred, unless you have
-exempted them using the
-{@link android.app.AlarmManager#setAndAllowWhileIdle setAndAllowWhileIdle()} method.</li>
-<li>The system does not perform Wi-Fi scans.</li>
-<li>The system does not permit syncs or jobs for your sync adapters.</li>
-<li>The system does not allow {@link android.app.job.JobScheduler} to run.</li>
-</ul>
-</p>
-<p>When the device exits Doze mode, it executes any jobs and syncs that are pending.</p>
-
-<h3>Testing apps with Doze</h3>
-
-<p>You can test Doze mode by connecting your development host to a device running the M Preview,
-and calling the following commands:
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-<p class="note"><strong>Note</strong>: As of M Preview 3 release,
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">
-Google Cloud Messaging</a> (GCM) lets you designate
-<a href="https://developers.google.com/cloud-messaging/downstream#setting-the-priority-of-a-message">
-high-priority messages</a>. If your app receives a high-priority GCM message</a>, the system grants
-brief network access even when the device is dozing.
-</p>
-
-<p>See the
-<a href="{@docRoot}preview/testing/guide.html#doze-standby">Testing Guide</a> for tips on how
-to test Doze in your apps. </p>
-
-<h2 id="behavior-app-standby">App Standby</h2>
-<p>App Standby allows the system to determine that an app is idle when the user is not actively
-using it. The system makes this determination when the user does not touch the app for a certain
-period of time, and none of the following conditions applies:</p>
-
-<ul>
-<li>The user explicitly launches the app.</li>
-<li>The app has a process currently in the foreground (either as an activity or foreground service,
-or in use by another activity or foreground service).</li>
-<li>The app generates a notification that users see on the lock screen or in the
-notification tray.</li>
-<li>The user explicitly asks for the app to be exempt from optimizations,
-via the Settings app.</li>
-</ul>
-
-<p>When the user plugs the device into a power supply, the system releases apps from the standby
-state, allowing them to freely access the network and to execute any pending jobs and syncs. If the
-device is idle for long periods of time, the system allows idle apps network access around once a
-day.</p>
-
-<h3>Testing apps with App Standby</h3>
-<p>You can test App Standby by connecting your development host to a device running the M Preview,
-and calling the following commands:
-</p>
-<pre class="no-prettyprint">
-$ adb shell dumpsys battery unplug
-$ adb shell am set-idle &lt;packageName&gt; true
-$ adb shell am set-idle &lt;packageName&gt; false
-$ adb shell am get-idle &lt;packageName&gt;
-</pre>
-
-<p class="note"><strong>Note</strong>:
-As of M Preview 3 release,
-<a href="https://developers.google.com/cloud-messaging/" class="external-link">
-Google Cloud Messaging</a> (GCM) lets you
-designate
-<a href="https://developers.google.com/cloud-messaging/downstream#setting-the-priority-of-a-message">
-high-priority messages</a>. If your app receives high-priority GCM messages, the system grants
-brief network access even when the app is idle.
-</p>
-
-<p>See the
-<a href="{@docRoot}preview/testing/guide.html#doze-standby">Testing Guide</a> for tips on how
-to test App Standby in your apps. </p>
diff --git a/docs/html/preview/features/runtime-permissions.jd b/docs/html/preview/features/runtime-permissions.jd
deleted file mode 100644
index 62e49b9..0000000
--- a/docs/html/preview/features/runtime-permissions.jd
+++ /dev/null
@@ -1,1081 +0,0 @@
-page.title=Permissions
-page.tags=previewresources, androidm
-page.keywords=permissions, runtime, preview
-page.image=images/permissions_check.png
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>Quickview</h2>
-    <ul>
-      <li>If your app targets the M Preview SDK, it prompts users to grant
-        permissions at runtime, instead of install time.</li>
-      <li>Users can revoke permissions at any time from the app Settings
-        screen.</li>
-      <li>Your app needs to check that it has the permissions it needs every
-        time it runs.</li>
-    </ul>
-
-    <h2>In this document</h2>
-    <ol>
-      <li><a href="#overview">Overview</a></li>
-      <li><a href="#coding">Coding for Runtime Permissions</a></li>
-      <li><a href="#testing">Testing Runtime Permissions</a></li>
-      <li><a href="#best-practices">Best Practices and Usage Notes</a></li>
-    </ol>
-
-<!--
-  <h2>Related Samples</h2>
-  <ol>
-    <li></li>
-  </ol>
--->
-
-<!--
-  <h2>See also</h2>
-  <ol>
-    <li>
-    </li>
-  </ol>
--->
-
-  </div> <!-- qv -->
-</div> <!-- qv-wrapper -->
-
-<!-- video box -->
-<a class="notice-developers-video"
-    href="https://www.youtube.com/watch?v=f17qe9vZ8RM">
-<div>
-    <h3>Video</h3>
-    <p>Google I/O 2015—Android M Permissions: Best Practices for
-      Developers</p>
-</div>
-</a>
-
-<p>
-  The M Developer Preview introduces a new app permissions model which
-  streamlines the process for users to install and upgrade apps. If an app
-  running on the M Preview supports the new permissions model, the user does not have to
-  grant any permissions when they install or upgrade the app. Instead, the app
-  requests permissions as it needs them, and the system shows a dialog to the
-  user asking for the permission.
-</p>
-
-<p>
-  If an app supports the new permissions model, it can still be installed and
-  run on devices running older versions of Android, using the old permissions
-  model on those devices.
-</p>
-
-<h2 id="overview">
-  Overview
-</h2>
-
-<p>
-  With the M Developer Preview, the platform introduces a new app permissions
-  model. Here's a summary of the key components of this new model:
-</p>
-
-<ul>
-  <li>
-    <strong>Declaring Permissions:</strong> The app declares all the
-    permissions it needs in the manifest, as in earlier Android platforms.
-  </li>
-
-  <li>
-    <strong>Permission Groups:</strong> Permissions are divided into
-    <em>permission groups</em>, based on their functionality. For example, the
-    <code>CONTACTS</code> permission group contains permissions to read and
-    write the user's contacts and profile information.
-  </li>
-
-  <li>
-    <p><strong>Limited Permissions Granted at Install Time:</strong> When the
-    user installs or updates the app, the system grants the app all
-    permissions listed in the manifest that fall under {@link
-    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}.
-    For example, alarm clock and internet permissions fall under {@link
-    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}, so
-    they are automatically granted at install time. For more information about
-    how normal permissions are handled, see <a href="#normal">Normal
-    Permissions</a>.
-    </p>
-
-    <p>The system may also grant the app signature permissions, as
-    described in <a href="#system-apps">System components and signature
-    permissions</a>. The user is <em>not</em> prompted to grant any permissions
-    at install time.</p>
-  </li>
-
-  <li>
-    <strong>User Grants Permissions at Run-Time:</strong> When the app requests
-    a permission, the system shows a dialog to the user, then calls the app's
-    callback function to notify it whether the user granted the permission.
-  </li>
-
-</ul>
-
-<p>
-  This permission model changes the way your app behaves for features that
-  require permissions. Here's a summary of the development practices you should
-  follow to adjust to this model:
-</p>
-
-<ul>
-
-  <li>
-    <strong>Always Check for Permissions:</strong> When the app needs to
-    perform any action that requires a permission, it should first check
-    whether it has that permission already. If it does not, it requests to be
-    granted that permission. You do not need to check for permissions that
-    fall under {@link
-    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}.
-  </li>
-
-  <li>
-    <strong>Handle Lack of Permissions Gracefully:</strong> If the app is not
-    granted an appropriate permission, it should handle the failure cleanly.
-    For example, if the permission is just needed for an added feature, the app
-    can disable that feature. If the permission is essential for the app to
-    function, the app might disable all its functionality and inform the user
-    that they need to grant that permission.
-  </li>
-
-  <div class="figure" style="width:220px" id="fig-perms-screen">
-    <img src="images/app-permissions-screen_2x.png"
-    srcset="images/app-permissions-screen.png 1x, images/app-permissions-screen_2x.png 2x"
-    alt="" width="220">
-    <p class="img-caption">
-      <strong>Figure 1.</strong> Permission screen in the app's Settings.
-    </p>
-  </div>
-
-  <li>
-    <strong>Permissions are Revocable:</strong> Users can revoke an app's
-    permissions at any time. If a user turns off an app's permissions, the app
-    is <em>not</em> notified. Once again, your app should verify that it has
-    needed permissions before performing any restricted actions.
-  </li>
-</ul>
-
-<p class="note">
-  <strong>Note:</strong> If an app targets the M Developer Preview, it
-  <em>must</em> use the new permissions model.
-</p>
-
-<p>
-  As of the launch of the M Developer Preview, not all Google apps fully
-  implement the new permissions model. Google is updating these apps over
-  the course of the M Developer Preview to properly respect Permissions toggle
-  settings.
-</p>
-
-<p class="note">
-  <strong>Note:</strong> If your app has its own API surface, do not proxy
-  permissions without first ensuring the caller has the requisite permissions
-  to access that data.
-</p>
-
-<h3 id="perm-groups">Permission groups</h3>
-
-<p>
-  Related permissions are divided into <em>permission groups</em> to allow
-  users to grant related permissions to an app in a single action. The user
-  only has to grant permission once per app for each permission group. If the
-  app subsequently requests a permission from the same permission group, the
-  system automatically grants the permission without any action from the user.
-  The system calls your app's {@link
-  android.app.Activity#onRequestPermissionsResult onRequestPermissionsResult()}
-  method just as if the user had granted permission through the dialog box.
-</p>
-
-<p>
-  For example, suppose an app lists in its manifest that it needs the
-  <code>SEND_SMS</code> and <code>RECEIVE_SMS</code> permissions, which both
-  belong to <code>android.permission-group.SMS</code>. When the app needs to
-  send a message, it requests the <code>SEND_SMS</code> permission. The system
-  shows the user a dialog box asking if the app can have access to SMS. If the
-  user agrees, the system grants the app the <code>SEND_SMS</code> permission it
-  requested. Later, the app requests <code>RECEIVE_SMS</code>. The
-  system automatically grants this permission, since the user had already
-  approved a permission in the same permission group.
-</p>
-
-<h3 id="system-apps">
-  System components and signature permissions
-</h3>
-
-<p>
-  Ordinarily, when the user installs an app, the system only grants the app the
-  permissions listed in the manifest that fall under
-  {@link android.content.pm.PermissionInfo#PROTECTION_NORMAL
-  PROTECTION_NORMAL}. However, under some circumstances the system grants the
-  app more permissions:
-</p>
-
-<ul>
-  <li>System components automatically receive all
-  the permissions listed in their manifests.
-  </li>
-
-  <li>If the app requests permissions in the manifest that fall under {@link
-  android.content.pm.PermissionInfo#PROTECTION_SIGNATURE PROTECTION_SIGNATURE},
-  and the app is signed with the same certificate as the app that declared
-  those permissions, the system grants the requesting app those permissions on
-  installation. Apps cannot request signature permissions at runtime.</li>
-</ul>
-
-<h3 id="compatibility">
-  Forwards and backwards compatibility
-</h3>
-
-<p>
-  If an app does not target the M Developer Preview, the app continues to use
-  the old permissions model even on M Preview devices. When the user installs
-  the app, the system asks the user to grant all permissions listed in the
-  app's manifest.
-</p>
-
-<p class="note">
-  <strong>Note:</strong> On devices running the M Developer Preview, a user can
-  turn off permissions for any app (including legacy apps) from the app's
-  Settings screen. If a user turns off permissions for a legacy app, the system
-  silently disables the appropriate functionality. When the app attempts to
-  perform an operation that requires that permission, the operation will not
-  necessarily cause an exception. Instead, it might return an empty data set,
-  signal an error, or otherwise exhibit unexpected behavior. For example, if you
-  query a calendar without permission, the method returns an empty data set.
-</p>
-
-<p>
-  If you install an app using the new permissions model on a device that is not
-  running the M Preview,
-  the system treats it the same as any other app: the system asks
-  the user to grant all declared permissions at install time.
-</p>
-
-<p class="note">
-  <strong>Note:</strong> For the preview release, you must set the minimum SDK
-  version to the M Preview SDK to compile with the preview SDK. This means you
-  will not be able to test such apps on older platforms during the developer
-  preview.
-</p>
-
-<h3 id="perms-vs-intents">Permissions versus intents</h3>
-
-<p>
-  In many cases, you can choose between two ways for your app to perform a
-  task. You can have your app ask for permission to perform the operation
-  itself. Alternatively, you can have the app use an intent to have another app
-  perform the task.
-</p>
-
-<p>
-  For example, suppose your app needs to be able to take pictures with the
-  device camera. Your app can request the
-  <code>android.permission.CAMERA</code> permission, which allows your app to
-  access the camera directly. Your app would then use the camera APIs
-  to control the camera and take a picture. This approach gives your app full
-  control over the photography process, and lets you incorporate the camera UI
-  into your app.
-</p>
-
-<p>
-  However, if you don't need such control, you can just use an {@link
-  android.provider.MediaStore#ACTION_IMAGE_CAPTURE ACTION_IMAGE_CAPTURE} intent
-  to request an image. When you start the intent, the user is prompted to
-  choose a camera app (if there isn't already a default camera app), and that
-  app takes the picture. The camera app returns the picture to your app's {@link
-  android.app.Activity#onActivityResult onActivityResult()} method.
-</p>
-
-<p>
-  Similarly, if you need to make a phone call, access the user's contacts, and
-  so on, you can do that by creating an appropriate intent, or you can request
-  the permission and access the appropriate objects directly. There are
-  advantages and disadvantages to each approach.
-</p>
-
-<p>
-  If you use permissions:
-</p>
-
-<ul>
-  <li>Your app has full control over the user experience when you perform the
-  operation. However, such broad control adds to the complexity of your task,
-  since you need to design an appropriate UI.
-  </li>
-
-  <li>The user is prompted to give permission once, the first time you perform
-  the operation. After that, your app can perform the operation without
-  requiring additional interaction from the user. However, if the user doesn't
-  grant the permission (or revokes it later on), your app becomes unable to
-  perform the operation at all.
-  </li>
-</ul>
-
-<p>
-  If you use an intent:
-</p>
-
-<ul>
-  <li>You do not have to design the UI for the operation. The app that handles
-  the intent provides the UI. However, this means you have
-  no control over the user experience. The user could be interacting with an
-  app you've never seen.
-  </li>
-
-  <li>If the user does not have a default app for the operation, the system
-  prompts the user to choose an app. If the user does not designate a default
-  handler, they may have to go
-  through an extra dialog every time they perform the operation.
-  </li>
-</ul>
-
-<h2 id="coding">Coding for Runtime Permissions</h2>
-
-<p>
-  If your app targets the new M Developer Preview, you must use the new
-  permissions model. This means that in addition to declaring your needed
-  permissions in the manifest, you must also check to see if you have the
-  permissions at run time, and request the permissions if you do not already
-  have them.
-</p>
-
-<h3 id="enabling">
-  Enabling the new permissions model
-</h3>
-
-<p>
-  To enable the new M Developer Preview permissions model, set the app's
-  <code>targetSdkVersion</code> attribute to <code>"MNC"</code>, and
-  <code>compileSdkVersion</code> to <code>"android-MNC"</code>. Doing so
-  enables all the new permissions features.
-</p>
-
-<p>
-  For the preview release, you must set <code>minSdkVersion</code> to
-  <code>"MNC"</code> to compile with the preview SDK.
-</p>
-
-<h3 id="m-only-perm">
-  Designating a permission for the M Preview only
-</h3>
-
-<p>
-  You can use the new <code>&lt;uses-permission-sdk-m&gt;</code> element in the app manifest
-  to indicate that a permission is only needed on the M Developer Preview. If
-  you declare a permission this way, then whenever the app is installed on an
-  older device, the system does not prompt the user or grant the
-  permission to the app. By using the <code>&lt;uses-permission-sdk-m&gt;</code>
-  element, you can add new permissions
-  to updated versions of your app without forcing users to grant permissions
-  when they install the update.
-</p>
-
-<p>
-  If the app is running on a device with the M Developer Preview,
-  <code>&lt;uses-permission-sdk-m&gt;</code> behaves the same as
-  <code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html"
-      >&lt;uses-permission&gt;</a></code>.
-  The system does not prompt the user to grant any permissions when they install
-  the app, and the app requests permissions as they are needed.
-</p>
-
-<h3 id="prompting">
-  Prompting for permissions
-</h3>
-
-<p>
-  If your app uses the new M Developer Preview permissions model, the user is
-  not asked to grant all permissions when the app is first launched on a device
-  running the M Preview. Instead, your app requests permissions as they are
-  needed. When your app requests a permission, the system shows a dialog to the
-  user.
-</p>
-
-<p>
-  If your app runs on a device that has SDK 22 or lower, the app uses the old
-  permissions model. When the user installs the app, they are prompted to grant
-  all the permissions your app requests in its manifest, except for those
-  permissions which are labeled with <code>&lt;uses-permission-sdk-m&gt;</code>.
-</p>
-
-<h4 id="check-platform">Check what platform the app is running on</h4>
-
-<p>
-  This permissions model is only supported on devices running the M Developer
-  Preview. Before calling any of these methods, the app should verify
-  what platform it's running on
-  by checking the value of {@link android.os.Build.VERSION#CODENAME
-  Build.VERSION.CODENAME}. If the device is running the M Developer Preview,
-  {@link android.os.Build.VERSION#CODENAME CODENAME} is <code>"MNC"</code>.
-</p>
-
-<p>
-  Alternatively, you can use the new methods introduced with revision 23 of the
-  v4 and v13 support libraries. The support library methods behave
-  appropriately whether or not the app is running on the M Developer Preview.
-  For more information, see <a href="#support-lib">Support library methods for
-  handling permissions</a>.
-</p>
-
-<h4 id="check-for-permission">Check if the app has the needed permission</h4>
-
-<p>
-  When the user tries to do something that requires a permission, the app
-  checks to see if it currently has permission to perform this operation. To do
-  this, the app calls {@link android.content.Context#checkSelfPermission
-  checkSelfPermission()}. The app should perform this check even if it knows
-  the user has already granted that permission, since the user can revoke an
-  app's permissions at any time. For example, if a user wants to use an app to
-  take a picture, the app calls
-  <code>Context.checkSelfPermission(Manifest.permission.CAMERA)</code>.
-</p>
-
-<p class="table-caption" id="permission-groups">
-  <strong>Table 1.</strong> Permissions and permission groups.</p>
-<table>
-  <tr>
-    <th scope="col">Permission Group</th>
-    <th scope="col">Permissions</th>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CALENDAR</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CALENDAR</code>
-        </li>
-      </ul>
-      <ul>
-        <li>
-          <code>android.permission.WRITE_CALENDAR</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CAMERA</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.CAMERA</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.CONTACTS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CONTACTS</code>
-        </li>
-        <li>
-          <code>android.permission.GET_ACCOUNTS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.LOCATION</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.ACCESS_FINE_LOCATION</code>
-        </li>
-        <li>
-          <code>android.permission.ACCESS_COARSE_LOCATION</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.MICROPHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.RECORD_AUDIO</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.PHONE</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_PHONE_STATE</code>
-        </li>
-        <li>
-          <code>android.permission.CALL_PHONE</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CALL_LOG</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_CALL_LOG</code>
-        </li>
-        <li>
-          <code>com.android.voicemail.permission.ADD_VOICEMAIL</code>
-        </li>
-        <li>
-          <code>android.permission.USE_SIP</code>
-        </li>
-        <li>
-          <code>android.permission.PROCESS_OUTGOING_CALLS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SENSORS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.BODY_SENSORS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td><code>android.permission-group.SMS</code></td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.SEND_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_SMS</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_WAP_PUSH</code>
-        </li>
-        <li>
-          <code>android.permission.RECEIVE_MMS</code>
-        </li>
-        <li>
-          <code>android.permission.READ_CELL_BROADCASTS</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      <code>android.permission-group.STORAGE</code>
-    </td>
-    <td>
-      <ul>
-        <li>
-          <code>android.permission.READ_EXTERNAL_STORAGE</code>
-        </li>
-        <li>
-          <code>android.permission.WRITE_EXTERNAL_STORAGE</code>
-        </li>
-      </ul>
-    </td>
-  </tr>
-
-</table>
-
-<h4 id="explain-need">Explain why the app needs permissions</h4>
-
-<p>
-  In some circumstances, you might want to help the user understand why your
-  app needs a permission. For example, if a user launches a photography app,
-  the user probably won't be surprised that the app asks for permission to use
-  the camera. But if the user turns down that permission request, then launches
-  the photography app again, that might indicate that the user needs some help
-  understanding why the permission is needed.
-</p>
-
-<p>
-  To help find the situations where you need to provide extra explanation, the
-  system provides the {@link
-  android.app.Activity#shouldShowRequestPermissionRationale
-  shouldShowRequestPermissionRationale()} method. This method returns
-  <code>true</code> if the app has requested this permission previously and the
-  user denied the request. That indicates that you should probably explain to
-  the user why you need the permission.
-</p>
-
-<p>
-  If the user turned down the permission request in the past and chose the
-  <em>Don't ask again</em> option in the permission request system dialog, this
-  method returns <code>false</code>. The method also returns <code>false</code>
-  if the device policy prohibits the app from having that permission.
-</p>
-
-
-
-<h4 id="request-permissions">Request permissions if necessary</h4>
-
-<p>If the app doesn't already have the permission it needs, the app calls the
-  {@link android.app.Activity#requestPermissions requestPermissions()} method to
-  request the appropriate permission or permissions. The app passes the
-  permission or permissions it wants, and also an integer "request code".
-  This method functions asynchronously: it returns right away, and after
-  the user responds to the dialog box, the system calls the app's callback
-  method with the results, passing the same "request code" that the app passed
-  to {@link android.app.Activity#requestPermissions requestPermissions()}.</p>
-
-  <p>The following code code checks if the app has permission to read the
-    user's contacts, and requests the permission if necessary:</p>
-
-<pre>
-if (checkSelfPermission(Manifest.permission.READ_CONTACTS)
-        != PackageManager.PERMISSION_GRANTED) {
-
-    // Should we show an explanation?
-    if (shouldShowRequestPermissionRationale(
-            Manifest.permission.READ_CONTACTS)) {
-        // Explain to the user why we need to read the contacts
-    }
-
-    requestPermissions(new String[]{Manifest.permission.READ_CONTACTS},
-            MY_PERMISSIONS_REQUEST_READ_CONTACTS);
-
-    // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
-    // app-defined int constant
-
-    return;
-}
-</pre>
-
-<p class="note">
-  <strong>Note:</strong> When your app calls the framework's {@link
-  android.app.Activity#requestPermissions requestPermissions()} method, the
-  system shows a standard dialog box to the user. Your app <em>cannot</em>
-  configure or alter that dialog box. If you need to provide any information or
-  explanation to the user, you should do that <em>before</em> you call {@link
-  android.app.Activity#requestPermissions requestPermissions()}, as described
-  in <a href="#explain-need">Explain why the app needs permissions</a>.
-</p>
-
-<h4 id="handle-response">Handle the permissions request response</h4>
-
-<p>
-  When an app requests permissions, the system presents a dialog box to the
-  user. When the user responds, the system invokes your app's {@link
-  android.app.Activity#onRequestPermissionsResult} passing it the user
-  response. Your app needs to override that method. The callback is passed the
-  same request code you passed to {@link
-  android.app.Activity#requestPermissions requestPermissions()}. For example,
-  if an app requests <code>READ_CONTACTS</code> access it might have the
-  following callback method:
-</p>
-
-<pre>
-&#64;Override
-public void onRequestPermissionsResult(int requestCode,
-        String permissions[], int[] grantResults) {
-    switch (requestCode) {
-        case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
-            if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
-
-                // permission was granted, yay! do the
-                // calendar task you need to do.
-
-            } else {
-
-                // permission denied, boo! Disable the
-                // functionality that depends on this permission.
-            }
-            return;
-        }
-
-        // other 'switch' lines to check for other
-        // permissions this app might request
-    }
-}
-</pre>
-
-<p>
-  If the user denies a permission request, your app should take appropriate
-  action. For example, your app might show a dialog explaining why it could not
-  perform the user's original request.
-</p>
-
-<p>
-  When the system asks the user to grant a permission, the user has the option
-  of telling the system not to ask for that permission again. In that case,
-  when an app uses {@link android.app.Activity#requestPermissions
-  requestPermissions()} to ask for that permission, the system immediately
-  denies the request. In this case, the system calls your {@link
-  android.app.Activity#onRequestPermissionsResult onRequestPermissionsResult()}
-  the same way it would if the user had explicitly rejected your request again.
-  For this reason, your app cannot assume that any direct interaction with the
-  user has taken place.
-</p>
-
-<h2 id="testing">Testing Runtime Permissions</h2>
-
-<p>
-  If your app targets the M Developer Preview, you must test that it
-  handles permissions properly. You cannot assume that your app has any
-  particular permissions when it runs. When the app is first launched, it is
-  likely to have no permissions, and the user can revoke or restore permissions
-  at any time.
-</p>
-
-<p>
-  You should test your app to make sure it behaves properly under all
-  permission situations. With the M Preview SDK, we have provided new
-  <a href="{@docRoot}tools/help/adb.html">Android
-  Debug Bridge (adb)</a> commands to enable you to test your app with whatever
-  permissions settings you need to try.
-</p>
-
-<h3>
-  New adb commands and options
-</h3>
-
-<p>
-  The M Preview SDK Platform-tools provides several new commands to let you test
-  how your app handles permissions.
-</p>
-
-<h4>
-  Install with permissions
-</h4>
-
-<p>
-  You can use the <a href="{@docRoot}tools/help/adb.html#move"><code>adb
-  install</code></a> command's new <code>-g</code> option, which installs the
-  app and grants all permissions listed in its manifest:
-</p>
-
-<pre class="no-pretty-print">
-$ adb install -g &lt;path_to_apk&gt;
-</pre>
-
-<h4>
-  Grant and revoke permissions
-</h4>
-
-<p>
-  You can use new ADB <a href="{@docRoot}tools/help/adb.html#pm">package manager
-  (pm)</a> commands to grant and revoke permissions to an installed app.
-  This functionality can be useful for automated testing.
-</p>
-
-<p>
-  To grant a permission, use the package manager's <code>grant</code> command:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<p>
-  For example, to grant the com.example.myapp package permission to record
-  audio, use this command:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm grant com.example.myapp android.permission.RECORD_AUDIO
-</pre>
-
-<p>
-  To revoke a permission, use the package manager's <code>revoke</code> command:
-</p>
-
-<pre class="no-pretty-print">
-$ adb pm revoke &lt;package_name&gt; &lt;permission_name&gt;
-</pre>
-
-<h2 id="best-practices">Best Practices and Usage Notes</h2>
-
-<p>
-  The new permissions model gives users a smoother experience, and makes it
-  easier for them to install apps and feel comfortable with what the apps are
-  doing. We recommend the following best practices to take full advantage of
-  the new model.
-</p>
-
-
-<h3 id="bp-what-you-need">Only ask for permissions you need</h3>
-
-<p>
-  Every time you ask for a permission, you force the user to make a decision.
-  If the user turns down the request, that reduces your app's functionality.
-  You should minimize the number of times you make these requests.
-</p>
-
-<p>
-  For example, quite often your app can get needed functionality by using an
-  <a href="{@docRoot}guide/components/intents-filters.html">intent</a> instead
-  of asking for permissions. If your app needs to take pictures with the
-  phone's camera, your app can use a {@link
-  android.provider.MediaStore#ACTION_IMAGE_CAPTURE
-  MediaStore.ACTION_IMAGE_CAPTURE} intent. When your app executes the intent, the
-  system prompts the user to choose an already-installed camera app to take the
-  picture.
-</p>
-
-<h3 id="bp-dont-overwhelm">
-  Don't overwhelm the user
-</h3>
-
-<p>
-  If you confront the user with a lot of requests for permissions at once, you may
-  overwhelm the user and cause them to quit your app. Instead, you should ask
-  for permissions as you need them.
-</p>
-
-<p>
-  In some cases, one or more permissions might be absolutely essential to your
-  app. In that case, it might make sense to ask for all the permissions as soon
-  as the app launches. For example, if you make a photography app, the app
-  would need access to the device camera. When the user launches the app for
-  the first time, they won't be surprised to be asked for permission to use
-  the camera. But if the same app also had a feature to share photos with the
-  user's contacts, you probably should <em>not</em> ask for that permission at
-  first launch. Instead, wait until the user tries to use the "sharing" feature
-  and ask for the permission then.
-</p>
-
-<p>
-  If your app provides a tutorial, it may make sense to request the app's essential
-  permissions at the end of the tutorial sequence.
-</p>
-
-<h3 id="bp-explain">
-  Explain why you need permissions
-</h3>
-
-<p>
-  The permissions dialog shown by the system when you call {@link
-  android.app.Activity#requestPermissions requestPermissions()} says what
-  permission your app wants, but doesn't say why. In some cases, the user may
-  find that puzzling. It's a good idea to explain to the user why your app
-  wants the permissions before calling {@link
-  android.app.Activity#requestPermissions requestPermissions()}.
-</p>
-
-<p>
-  For example, a photography app might want to use location services, so it can
-  geotag the photos. A typical user might not understand that a photo can
-  contain location information, and would be puzzled why their photography app
-  wanted to know the location. So in this case, it's a good idea for the app to
-  tell the user about this feature <em>before</em> calling
-  {@link android.app.Activity#requestPermissions requestPermissions()}.
-</p>
-
-<p>
-  One way to do this is to incorporate these requests into an app tutorial. The
-  tutorial can show each of the app's features in turn, and as it does this, it
-  can explain what permissions are needed. For example, the photography app's
-  tutorial can demonstrate its "share photos with your contacts" feature, then
-  tell the user that they need to give permission for the app to see the user's
-  contacts. The app can then call {@link
-  android.app.Activity#requestPermissions requestPermissions()} to ask the user
-  for that access. Of course, not every user is going to follow the tutorial,
-  so you still need to check for and request permissions during the app's
-  normal operation.
-</p>
-
-<h3 id="support-lib">Support library methods for handling permissions</h3>
-
-<p>
-  Revision 23 of the v4 and v13 support libraries provide several new methods
-  for managing permissions. The support library methods work properly on any
-  device that can use those libraries. Thus, if you use the support library
-  methods, you do not need to check whether your app is running on a device
-  with the M Developer Preview. If an app is installed on a device running the
-  M Preview, the support library methods behave the same as their framework
-  equivalents. If the device is running an earlier version of Android, the
-  methods behave appropriately, as described below.
-</p>
-
-<p>
-  The v4 support library provides the following permissions methods:
-</p>
-
-<dl>
-  <dt>
-    {@link android.support.v4.content.ContextCompat#checkSelfPermission
-    ContextCompat.checkSelfPermission()}
-  </dt>
-
-  <dd>
-    Returns {@link android.content.pm.PackageManager#PERMISSION_GRANTED
-    PERMISSION_GRANTED} if the app has the specified permission, whether
-    or not the device is using the M Preview. If the app does not have the
-    specified permission, returns {@link
-    android.content.pm.PackageManager#PERMISSION_DENIED PERMISSION_DENIED}.
-  </dd>
-
-  <dt>
-    {@link android.support.v4.app.ActivityCompat#requestPermissions
-    ActivityCompat.requestPermissions()}
-  </dt>
-
-  <dd>
-    If the device is not running the M Preview, invokes the callback
-    method in {@link
-    android.support.v4.app.ActivityCompat.OnRequestPermissionsResultCallback}.
-    Passes {@link android.content.pm.PackageManager#PERMISSION_GRANTED
-    PERMISSION_GRANTED} if the app already has the specified permission, or
-    {@link android.content.pm.PackageManager#PERMISSION_DENIED
-    PERMISSION_DENIED} if it does not.
-  </dd>
-
-  <dt>
-    {@link
-    android.support.v4.app.ActivityCompat#shouldShowRequestPermissionRationale
-    ActivityCompat.shouldShowRequestPermissionRationale()}
-  </dt>
-
-  <dd>
-    If the device is not running the M Preview, always returns
-    <code>false</code>.
-  </dd>
-</dl>
-
-<p>
-  The v4 support library also contains the
-  {@link android.support.v4.content.PermissionChecker}
-  class, which provides several static utility methods for apps that use IPC to
-  provide services for other apps. For example,
-  {@link android.support.v4.content.PermissionChecker#checkCallingPermission
-  PermissionChecker.checkCallingPermission()}
-  checks whether an IPC
-  made by a particular package has a specified permission.
-</p>
-
-<p class="note">
-  <strong>Note:</strong> If your app acts on behalf of third-party apps to call
-  platform methods that require runtime permissions on behalf of a third-party
-  app, you should use the appropriate {@link
-  android.support.v4.content.PermissionChecker} methods to ensure that the
-  other app is allowed to perform the operation. The platform has a
-  compatibility mode that allows users to revoke a legacy app's access to
-  permission-protected methods. If the user revokes access in compatibility
-  mode the app's permissions are not actually revoked; instead, access to the
-  APIs is restricted. The {@link android.support.v4.content.PermissionChecker}
-  methods verify app permissions in both normal and legacy modes.
-</p>
-
-<p>
-  The v13 support library provides the following permissions methods:
-</p>
-
-<dl>
-  <dt>
-    {@link android.support.v13.app.FragmentCompat#requestPermissions
-    FragmentCompat.requestPermissions()}
-  </dt>
-
-  <dd>
-    If the device is not running the M Preview, invokes the callback
-    method in <code>FragmentCompat.OnRequestPermissionsResultCallback</code>.
-    Passes {@link android.content.pm.PackageManager#PERMISSION_GRANTED
-    PERMISSION_GRANTED} if the app already has the specified permission, or
-    {@link android.content.pm.PackageManager#PERMISSION_DENIED
-    PERMISSION_DENIED} if it does not.
-  </dd>
-
-  <dt>
-    {@link
-    android.support.v13.app.FragmentCompat#shouldShowRequestPermissionRationale
-    FragmentCompat.shouldShowRequestPermissionRationale()}
-  </dt>
-
-  <dd>
-    If the device is not running the M Preview, always returns
-    <code>false</code>.
-  </dd>
-</dl>
-
-<h3 id="normal">Normal permissions</h3>
-
-<p>
-  Many permissions are designated as {@link
-  android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL},
-  which indicates that
-  there's no great risk to the user's privacy or security in letting apps have
-  those permissions. For example, users would reasonably want to know whether
-  an app can read their contact information, so users have to grant this
-  permission explicitly. By contrast, there's no great risk in allowing an app
-  to vibrate the device, so that permission is designated as <em>normal.</em>
-</p>
-
-<p>
-  If an app declares in its
-  manifest that it needs a normal permission, the system automatically grants
-  the app
-  that permission at install time. The system does not prompt the user
-  to grant normal
-  permissions, and users cannot revoke these permissions.
-</p>
-
-<p>
-  If your app declares that it needs normal permissions, the app does not need
-  to call {@link android.content.Context#checkSelfPermission
-  checkSelfPermission()} or {@link android.app.Activity#requestPermissions
-  requestPermissions()} for those permissions. Since you declared the
-  permissions in the manifest, you can be sure your app was granted those
-  permissions at install time.
-</p>
-
-<p>Currently, the following permissions are classified as {@link
-    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}:</p>
-
-<ul>
-  <li><code>android.permission.ACCESS_LOCATION_EXTRA_COMMANDS</code></li>
-  <li><code>android.permission.ACCESS_NETWORK_STATE</code></li>
-  <li><code>android.permission.ACCESS_NOTIFICATION_POLICY</code></li>
-  <li><code>android.permission.ACCESS_WIFI_STATE</code></li>
-  <li><code>android.permission.ACCESS_WIMAX_STATE</code></li>
-  <li><code>android.permission.BLUETOOTH</code></li>
-  <li><code>android.permission.BLUETOOTH_ADMIN</code></li>
-  <li><code>android.permission.BROADCAST_STICKY</code></li>
-  <li><code>android.permission.CHANGE_NETWORK_STATE</code></li>
-  <li><code>android.permission.CHANGE_WIFI_MULTICAST_STATE</code></li>
-  <li><code>android.permission.CHANGE_WIFI_STATE</code></li>
-  <li><code>android.permission.CHANGE_WIMAX_STATE</code></li>
-  <li><code>android.permission.DISABLE_KEYGUARD</code></li>
-  <li><code>android.permission.EXPAND_STATUS_BAR</code></li>
-  <li><code>android.permission.FLASHLIGHT</code></li>
-  <li><code>android.permission.GET_ACCOUNTS</code></li>
-  <li><code>android.permission.GET_PACKAGE_SIZE</code></li>
-  <li><code>android.permission.INTERNET</code></li>
-  <li><code>android.permission.KILL_BACKGROUND_PROCESSES</code></li>
-  <li><code>android.permission.MODIFY_AUDIO_SETTINGS</code></li>
-  <li><code>android.permission.NFC</code></li>
-  <li><code>android.permission.READ_SYNC_SETTINGS</code></li>
-  <li><code>android.permission.READ_SYNC_STATS</code></li>
-  <li><code>android.permission.RECEIVE_BOOT_COMPLETED</code></li>
-  <li><code>android.permission.REORDER_TASKS</code></li>
-  <li><code>android.permission.REQUEST_INSTALL_PACKAGES</code></li>
-  <li><code>android.permission.SET_TIME_ZONE</code></li>
-  <li><code>android.permission.SET_WALLPAPER</code></li>
-  <li><code>android.permission.SET_WALLPAPER_HINTS</code></li>
-  <li><code>android.permission.SUBSCRIBED_FEEDS_READ</code></li>
-  <li><code>android.permission.TRANSMIT_IR</code></li>
-  <li><code>android.permission.USE_FINGERPRINT</code></li>
-  <li><code>android.permission.VIBRATE</code></li>
-  <li><code>android.permission.WAKE_LOCK</code></li>
-  <li><code>android.permission.WRITE_SYNC_SETTINGS</code></li>
-  <li><code>com.android.alarm.permission.SET_ALARM</code></li>
-  <li><code>com.android.launcher.permission.INSTALL_SHORTCUT</code></li>
-  <li><code>com.android.launcher.permission.UNINSTALL_SHORTCUT</code></li>
-</ul>
diff --git a/docs/html/preview/features/scoped-folder-access.jd b/docs/html/preview/features/scoped-folder-access.jd
new file mode 100644
index 0000000..932d8a9
--- /dev/null
+++ b/docs/html/preview/features/scoped-folder-access.jd
@@ -0,0 +1,125 @@
+page.title=Scoped Directory Access
+page.keywords=preview,sdk,scoped directory access
+page.tags=androidn
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+  <ol>
+    <li><a href="#accessing">Accessing an External Storage Directory</a></li>
+    <li><a href="#removable">Accessing a Directory on Removable Media</a></li>
+    <li><a href="#best">Best Practices</a></li>
+  </ol>
+</div>
+</div>
+
+<p>Apps such as photo apps usually just need access to specific directories in
+external storage, such as the <code>Pictures</code> directory. Existing
+approaches to accessing external storage aren't designed to easily provide
+targeted directory access for these types of apps. For example:</p>
+
+<ul>
+<li>Requesting {@link android.Manifest.permission#READ_EXTERNAL_STORAGE}
+or {@link android.Manifest.permission#WRITE_EXTERNAL_STORAGE} in your manifest
+allows access to all public directories on external storage, which might be
+more access than what your app needs.</li>
+<li>Using the
+<a href="{@docRoot}guide/topics/providers/document-provider.html">Storage
+Access Framework</a> usually makes your user pick directories
+via a system UI, which is unnecessary if your app always accesses the same
+external directory.</li>
+</ul>
+
+<p>Android N provides a new simplified API to access
+common external storage directories. </p>
+
+<h2 id="accessing">Accessing an External Storage Directory</h2>
+
+<p>Use the <code>StorageManager</code> class to get the appropriate
+<code>StorageVolume</code> instance. Then, create an intent by calling the
+<code>StorageVolume.createAccessIntent()</code> method of that instance.
+Use this intent to access external storage directories. To get a list of
+all available volumes, including removable media volumes, use
+<code>StorageManager.getVolumesList()</code>.</p>
+
+<p>The following code snippet is an example of how to open the
+<code>Pictures</code> directory in the primary shared storage:</p>
+
+<pre>
+StorageManager sm = (StorageManager)getSystemService(Context.STORAGE_SERVICE);
+StorageVolume volume = sm.getPrimaryVolume();
+Intent intent = volume.createAccessIntent(Environment.DIRECTORY_PICTURES);
+startActivityForResult(intent, request_code);
+</pre>
+
+<p>The system attempts to grant access to the external directory, and if
+necessary confirms access with the user using a simplified UI:</p>
+
+<img src="{@docRoot}preview/images/scoped-folder-access-framed.png"
+srcset="{@docRoot}preview/images/scoped-folder-access-framed.png 1x,
+{@docRoot}preview/images/scoped-folder-access-framed_2x.png 2x" />
+<p class="img-caption"><strong>Figure 1.</strong> An application requesting
+access to the Pictures directory.</p>
+
+<p>If the user grants access, the system calls your
+<code>onActivityResult()</code> override with a result code of
+<code>Activity.RESULT_OK</code>, and intent data that contains the URI. Use
+the provided URI to access directory information, similar to using URIs
+returned by the
+<a href="{@docRoot}guide/topics/providers/document-provider.html">Storage
+Access Framework</a>.</p>
+
+<p>If the user doesn't grant access, the system calls your
+<code>onActivityResult()</code> override with a result code of
+<code>Activity.RESULT_CANCELED</code>, and null intent data.</p>
+
+<p class="note"><b>Note</b>: Getting access to a specific external directory
+also gains access to subdirectories within that directory.</p>
+
+<h2 id="removable">Accessing a Directory on Removable Media</h2>
+
+<p>To use Scoped Directory Access to access directories on removable media,
+first add a {@link android.content.BroadcastReceiver} that listens for the
+{@link android.os.Environment#MEDIA_MOUNTED} notification, for example:</p>
+
+<pre>
+&lt;receiver
+    android:name=".MediaMountedReceiver"
+    android:enabled="true"
+    android:exported="true" &gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.MEDIA_MOUNTED" /&gt;
+        &lt;data android:scheme="file" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/receiver&gt;
+</pre>
+
+<p>When the user mounts removable media, like an SD card, the system sends a
+{@link android.os.Environment#MEDIA_MOUNTED} notification. This notification
+provides a <code>StorageVolume</code> object in the intent data that you can
+use to access directories on the removable media. The following example
+accesses the <code>Pictures</code> directory on removable media:</p>
+
+<pre>
+// BroadcastReceiver has already cached the MEDIA_MOUNTED
+// notification Intent in mediaMountedIntent
+StorageVolume volume = (StorageVolume)
+    mediaMountedIntent.getParcelableExtra(StorageVolume.EXTRA_STORAGE_VOLUME);
+volume.createAccessIntent(Environment.DIRECTORY_PICTURES);
+startActivityForResult(intent, request_code);
+</pre>
+
+<h2 id="best">Best Practices</h2>
+
+<p>Where possible, persist the external directory access URI so you don't have
+to repeatedly ask the user for access. Once the user has granted access, call
+<code>getContentResolver().takePersistableUriPermssion()</code> with the
+directory access URI. The system will persist the URI and subsequent access
+requests will return <code>RESULT_OK</code> and not show confirmation UI to the
+user.</p>
+
+<p>If the user denies access to an external directory, do not immediately
+request access again. Repeatedly insisting on access results in a poor user
+experience.</p>
diff --git a/docs/html/preview/features/security-config.jd b/docs/html/preview/features/security-config.jd
new file mode 100644
index 0000000..607e8f3
--- /dev/null
+++ b/docs/html/preview/features/security-config.jd
@@ -0,0 +1,749 @@
+page.title=Network Security Configuration
+page.keywords=preview,security,network
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>In this document</h2>
+<ol>
+  <li><a href="#manifest">Adding a Security Configuration File</a></li>
+  <li><a href="#CustomTrust">Customizing Trusted CAs</a>
+      <ol>
+      <li><a href="#ConfigCustom">Configuring a Trusted Custom CA</a></li>
+      <li><a href="#LimitingCas">Limiting the Set of Trusted CAs</a></li>
+      <li><a href="#TrustingAdditionalCas">Trusting Additional CAs</a></li>
+      </ol>
+  </li>
+  <li><a href="#TrustingDebugCa">Debugging-only CAs</a></li>
+  <li><a href="#UsesCleartextTraffic">Opting Out of Cleartext Traffic</a></li>
+  <li><a href="#CertificatePinning">Pinning Certificates</a></li>
+  <li><a href="#ConfigInheritance">Configuration Inheritance Behavior</a></li>
+  <li><a href="#FileFormat">Configuration File Format</a></li>
+</ol>
+</div>
+</div>
+
+
+<p>
+  Android N includes a Network Security Configuration
+  feature that lets apps customize their network security settings in a safe,
+  declarative configuration file without modifying app code. These settings can
+  be configured for specific domains and for a specific app. The key
+  capabilities of this feature are as follows:
+</p>
+
+<ul>
+  <li>
+    <b>Custom trust anchors:</b> Customize which Certificate Authorities (CA)
+    are trusted for an app's secure connections. For
+    example, trusting particular self-signed certificates or restricting the
+    set of public CAs that the app trusts.
+  </li>
+
+  <li>
+    <b>Debug-only overrides:</b> Safely debug secure connections in an app
+    without added risk to the installed base.
+  </li>
+
+  <li>
+    <b>Cleartext traffic opt-out:</b> Protect apps from from
+    accidental usage of cleartext traffic.
+  </li>
+
+  <li>
+    <b>Certificate pinning:</b> Restrict an app's secure connection to
+    particular certificates.
+  </li>
+</ul>
+
+
+<h2 id="manifest">Adding a Security Configuration File</h2>
+
+<p>
+  The Network Security Configuration feature uses an XML file where you specify
+  the settings for your app. You must include an entry in the manifest of your
+  app to point to this file. The following code excerpt from a manifest
+  demonstrates how to create this entry:
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+...
+&lt;application ...&gt;
+    &lt;meta-data android:name="android.security.net.config"
+               android:resource="@xml/network_security_config" /&gt;
+    ...
+&lt;/application&gt;
+</pre>
+
+<h2 id="CustomTrust">Customizing Trusted CAs</h2>
+
+<p>
+  An app may want to trust a custom set of CAs instead of the platform
+  default. The most common reasons of this are:
+</p>
+
+<ul>
+  <li>Connecting to a host with a custom certificate authority(self-signed,
+  issued by an internal corporate CA, etc).
+  </li>
+
+  <li>Limiting the set of CAs to only the CAs you trust instead of every
+  preinstalled CA.
+  </li>
+
+  <li>Trusting additional CAs not included in the system.
+  </li>
+</ul>
+
+<p>
+  By default secure (e.g. TLS, HTTPS) connections from all apps trust
+  the pre-installed system CAs, and apps targeting API level 23
+  (Android M) and below also trust the user-added CA store by default. An
+  app can customize its own connections using {@code base-config} (for
+  app-wide customization) or {@code domain-config} (for per-domain
+  customization).
+</p>
+
+
+<h3 id="ConfigCustom">Configuring a Custom CA</h3>
+
+<p>
+  Assume you want to connect to your host which uses a self-signed SSL
+  certificate or to a host whose SSL certificate is issued by a non-public CA
+  which you trust, such as your company's internal CA.
+</p>
+
+<p>
+  <code>res/xml/network_security_config.xml</code>:
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;network-security-config&gt;
+    &lt;domain-config&gt;
+        &lt;domain includeSubdomains="true"&gt;example.com&lt;/domain&gt;
+        &lt;trust-anchors&gt;
+            &lt;certificates src="@raw/my_ca"/&gt;
+        &lt;/trust-anchors&gt;
+    &lt;/domain-config&gt;
+&lt;/network-security-config&gt;
+</pre>
+</p>
+
+<p>
+  Add the self-signed or non-public CA certificate, in PEM or DER format, to
+  {@code res/raw/my_ca}.
+</p>
+
+
+<h3 id="LimitingCas">Limiting the Set of Trusted CAs</h3>
+
+<p>
+  An app that does not want to trust all CAs trusted by system can
+  instead specify its own reduced set of CAs to trust. This protects the
+  app from fradulent certificates issued by any of the other CAs.
+</p>
+
+<p>
+  The config to limit the set of trusted CAs is similar to <a href=
+  "#TrustingACustomCa">trusting a custom CA</a> for a specific domain except
+  that multiple CAs are provided in the resource.
+</p>
+
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;network-security-config&gt;
+    &lt;domain-config&gt;
+        &lt;domain includeSubdomains="true"&gt;secure.example.com&lt;/domain&gt;
+        &lt;domain includeSubdomains="true"&gt;cdn.example.com&lt;/domain&gt;
+        &lt;trust-anchors&gt;
+            &lt;certificates src="@raw/trusted_roots"/&gt;
+        &lt;/trust-anchors&gt;
+    &lt;/domain-config&gt;
+&lt;/network-security-config&gt;
+</pre>
+</p>
+
+<p>
+  Add the trusted CAs, in PEM or DER format, to {@code res/raw/trusted_roots}.
+  Note that if using PEM format the file must contain <em>only</em> PEM data
+  and no extra text. You can also provide multiple
+  <a href="#certificates"><code>&lt;certificates&gt;</code></a>
+elements instead of one.
+</p>
+
+
+<h3 id="TrustingAdditionalCas">
+  Trusting Additional CAs
+</h3>
+
+<p>
+  An app may want to trust additional CAs not trusted by the system,
+  this could be due to the system not yet including the CA or a CA that does
+  not meet the requirements for inclusion into the Android system. An
+  app can do this by specifying multiple certificate sources for a
+  configuration.
+</p>
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;network-security-config&gt;
+    &lt;base-config&gt;
+        &lt;trust-anchors&gt;
+            &lt;certificates src="@raw/extracas"/&gt;
+            &lt;certificates src="system"/&gt;
+        &lt;/trust-anchors&gt;
+    &lt;/base-config&gt;
+&lt;/network-security-config&gt;
+</pre>
+</p>
+
+
+<h2 id="TrustingDebugCa">Configuring CAs for Debugging</h2>
+
+<p>
+  When debugging an app that connects over HTTPS you may want to
+  connect to a local development server, which does not have the SSL
+  certificate for your production server. In order to support this without any
+  modification to your app's code you can specify debug-only CAs that
+  are <i>only</i> trusted when <a href=
+  "{@docRoot}guide/topics/manifest/application-element.html#debug">
+android:debuggable</a>
+  is {@code true} by using {@code debug-overrides}. Normally IDEs and build
+  tools set this flag automatically for non-release builds.
+</p>
+
+<p>
+  This is safer than the usual conditional code because, as a security
+  precaution, app stores do not accept apps which are marked
+  debuggable.
+</p>
+
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;network-security-config&gt;
+    &lt;debug-overrides&gt;
+        &lt;trust-anchors&gt;
+            &lt;certificates src="@raw/debug_cas"/&gt;
+        &lt;/trust-anchors&gt;
+    &lt;/debug-overrides&gt;
+&lt;/network-security-config&gt;
+</pre>
+</p>
+
+
+<h2 id="UsesCleartextTraffic">Opting Out of Cleartext Traffic</h2>
+
+<p>
+  Applications intending to connect to destinations using only secure
+  connections can opt-out of supporting cleartext (using unencrypted HTTP
+  protocol instead of HTTPS) to those destinations. This option helps prevent
+  accidental regressions in apps due to changes in URLs provided by external
+  sources such as backend servers.
+  See {@link android.security.NetworkSecurityPolicy#isCleartextTrafficPermitted
+  NetworkSecurityPolicy.isCleartextTrafficPermitted()} for more details.
+</p>
+
+<p>
+  For example, an app may want to ensure that all connections to {@code
+  secure.example.com} are always done over HTTPS to protect sensitive traffic
+  from hostile networks.
+</p>
+
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;network-security-config&gt;
+    &lt;domain-config usesCleartextTraffic="false"&gt;
+        &lt;domain includeSubdomains="true"&gt;secure.example.com&lt;/domain&gt;
+    &lt;/domain-config&gt;
+&lt;/network-security-config&gt;
+</pre>
+</p>
+
+
+<h2 id="CertificatePinning">Pinning Certificates</h2>
+
+<p>
+  Normally an app trusts all preinstalled CAs. If any of these CAs were
+  to issue a fradulent certificate the app would be at risk from a MiTM
+  attack. Some apps choose to limit the set of certificates they accept
+  by either limiting the set of CAs they trust or by certificate pinning.
+</p>
+
+<p>
+  Certificate pinning is done by providing a set of certificates by hash of the
+  public key (SubjectPublicKeyInfo of the X.509 certificate). A certificate
+  chain is then only valid if the certificate chain contains at least one of
+  the pinned public keys.
+</p>
+
+<p>
+  Note that when using certificate pinning you should always include a backup
+  key so that if you are forced to switch to new keys, or change CAs (when
+  pinning to a CA certificate or an intermediate of that CA), your
+  app's connectivity is unaffected. Otherwise you must to push out
+  an update to the app to restore connectivity.
+</p>
+
+<p>
+  Additionally it is possible to set an expiration time for pins after which
+  pinning is not performed. This helps prevent connectivity issues in
+  apps which have not been updated. However, setting an expiration time
+  on pins may enable pinning bypass.
+</p>
+
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;network-security-config&gt;
+    &lt;domain-config&gt;
+        &lt;domain includeSubdomains="true"&gt;example.com&lt;/domain&gt;
+        &lt;pin-set expiration="2018-01-01"&gt;
+            &lt;pin digest="SHA-256"&gt;7HIpactkIAq2Y49orFOOQKurWxmmSFZhBCoQYcRhJ3Y=&lt;/pin&gt;
+            &lt;!-- backup pin --&gt
+            &lt;pin digest="SHA-256"&gt;fwza0LRMXouZHRC8Ei+4PyuldPDcf3UKgO/04cDM1oE=&lt;/pin&gt;
+        &lt;/pin-set&gt;
+    &lt;/domain-config&gt;
+&lt;/network-security-config&gt;
+</pre>
+</p>
+
+
+<h2 id="ConfigInheritance">Configuration Inheritance Behavior</h2>
+
+<p>
+  Values not set in a specific config are inherited. This behavior allows more
+  complex configurations while keeping the configuration file readable.
+</p>
+
+<p>
+  If a value is not set in a specific entry then value from the next more
+  general entry is used. Values not set in a {@code domain-config} is
+  taken from the parent {@code domain-config}, if nested, or from the {@code
+  base-config} if not. Values not set in the {@code base-config} uses the
+  platform default values.
+</p>
+
+<p>
+  For example consider, where all connections to subdomains of {@code
+  example.com} must use a custom set of CAs. Additonally cleartext traffic to
+  these domains is permitted <em>except</em> when connecting to {@code
+  secure.example.com}. By nesting the configuration for {@code
+  secure.example.com} inside the configuration for {@code example.com} the
+  {@code trust-anchors} does not need to be duplicated.
+</p>
+
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;network-security-config&gt;
+    &lt;domain-config&gt;
+        &lt;domain includeSubdomains="true"&gt;example.com&lt;/domain&gt;
+        &lt;trust-anchors&gt;
+            &lt;certificates src="@raw/my_ca"/&gt;
+        &lt;/trust-anchors&gt;
+        &lt;domain-config cleartextTrafficPermitted="false"&gt;
+            &lt;domain includeSubdomains="true"&gt;secure.example.com&lt;/domain&gt;
+        &lt;/domain-config&gt;
+    &lt;/domain-config&gt;
+&lt;/network-security-config&gt;
+</pre>
+</p>
+
+
+<h2 id="FileFormat">Configuration File Format</h2>
+
+<p>
+  The Network Security Configuration feature uses an XML file format.
+  The overall structure of the file is shown in the following code sample:
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;network-security-config&gt;
+    &lt;base-config&gt;
+        &lt;trust-anchors&gt;
+            &lt;certificates src="..."/&gt;
+            ...
+        &lt;/trust-anchors&gt;
+    &lt;/base-config&gt;
+
+    &lt;domain-config&gt;
+        &lt;domain&gt;android.com&lt;/domain&gt;
+        ...
+        &lt;trust-anchors&gt;
+            &lt;certificates src="..."/&gt;
+            ...
+        &lt;/trust-anchors&gt;
+        &lt;pin-set&gt;
+            &lt;pin digest="..."&gt;...&lt;/pin&gt;
+            ...
+        &lt;/pin-set&gt;
+    &lt;/domain-config&gt;
+    ...
+    &lt;debug-overrides&gt;
+        &lt;trust-anchors&gt;
+            &lt;certificates src="..."/&gt;
+            ...
+        &lt;/trust-anchors&gt;
+    &lt;/debug-overrides&gt;
+&lt;/network-security-config&gt;
+</pre>
+
+<p>
+  The following sections describe the syntax and other details of the file
+  format.
+</p>
+
+<h3 id="network-security-config">
+  &lt;network-security-config&gt;
+</h3>
+
+<dl class="xml">
+  <dt>
+    can contain:
+  </dt>
+
+  <dd>
+    0 or 1 of <code><a href="#base-config">&lt;base-config&gt;</a></code><br>
+    Any number of <code><a href=
+    "#domain-config">&lt;domain-config&gt;</a></code><br>
+    0 or 1 of <code><a href="#debug-overrides">&lt;debug-overrides&gt;</a></code>
+  </dd>
+</dl>
+
+<h3 id="base-config">
+  &lt;base-config&gt;
+</h3>
+
+<dl class="xml">
+  <dt>
+    syntax:
+  </dt>
+</dl>
+
+<pre class="stx">
+&lt;base-config <a href=
+"#usesCleartextTraffic">usesCleartextTraffic</a>=["true" | "false"]&gt;
+    ...
+&lt;/base-config&gt;
+</pre>
+<dl class="xml">
+  <dt>
+    can contain:
+  </dt>
+
+  <dd>
+    <code><a href="#trust-anchors">&lt;trust-anchors&gt;</a></code>
+  </dd>
+
+  <dt>
+    description:
+  </dt>
+
+  <dd>
+    The default configuration used by all connections whose destination is not
+    covered by a <a href="#domain-config"><code>domain-config</code></a>.
+
+<p>
+  Any values that are not set use the platform default values. The default
+  configuration for apps targeting above API level 24 and above:
+</p>
+
+<pre>
+&lt;base-config usesCleartextTraffic="true"&gt;
+    &lt;trust-anchors&gt;
+        &lt;certificates src="system" /&gt;
+    &lt;/trust-anchors&gt;
+&lt;/base-config&gt;
+</pre>
+The default configuration for apps targeting API level 23 and below is:
+<pre>
+&lt;base-config usesCleartextTraffic="true"&gt;
+    &lt;trust-anchors&gt;
+        &lt;certificates src="system" /&gt;
+        &lt;certificates src="user" /&gt;
+    &lt;/trust-anchors&gt;
+&lt;/base-config&gt;
+</pre>
+
+  </dd>
+</dl>
+
+<h3 id="domain-config">&lt;domain-config&gt;</h3>
+<dl class="xml">
+<dt>syntax:</dt>
+<dd>
+<pre class="stx">&lt;domain-config <a href="#usesCleartextTraffic">usesCleartextTraffic</a>=["true" | "false"]&gt;
+    ...
+&lt;/domain-config&gt;</pre>
+</dd>
+
+<dt>Can Contain:</dt>
+
+<dd>
+1 or more <code><a href="#domain">&lt;domain&gt;</a></code>
+<br/>0 or 1 <code><a href="#trust-anchors">&lt;trust-anchors&gt;</a></code>
+<br/>0 or 1 <code><a href="#pin-set">&lt;pin-set&gt;</code></a>
+<br/>Any number of nested <code>&lt;domain-config&gt;</code></dd>
+
+<dt>Description</dt>
+<dd>Configuration used for connections to specific destinations as the defined by {@code domain} elements.
+
+<p>Note that if multiple {@code domain-config} elements cover a destination the config with the most specific (longest)
+matching domain rule is used.</p></dd>
+</dl>
+
+
+<h3 id="domain">&lt;domain&gt;</h3>
+
+<dl class="xml">
+  <dt>
+    syntax:
+  </dt>
+
+  <dd>
+    <pre class="stx">
+&lt;domain includeSubdomains=["true" | "false"]&gt;example.com&lt;/domain&gt;
+</pre>
+  </dd>
+
+  <dt>
+    Attributes:
+  </dt>
+
+  <dd>
+    <dl class="attr">
+      <dt>
+        {@code includeSubdomains}
+      </dt>
+
+      <dd>
+        If {@code "true"} then this domain rule matches the domain and all
+        subdomains, including subdomains of subdomains, otherwise the rule only
+        applies to exact matches.
+      </dd>
+    </dl>
+  </dd>
+
+  <dt>
+    Description:
+  </dt>
+</dl>
+
+<h3 id="debug-overrides">&lt;debug-overrides&gt;</h3>
+
+<dl class="xml">
+  <dt>
+    syntax:
+  </dt>
+
+  <dd>
+    <pre class="stx">
+&lt;debug-overrides&gt;
+    ...
+&lt;/debug-overrides&gt;
+</pre>
+  </dd>
+
+  <dt>
+    Can Contain:
+  </dt>
+
+  <dd>
+    0 or 1 <code><a href="#trust-anchors">&lt;trust-anchors&gt;</a></code>
+  </dd>
+
+  <dt>
+    Description:
+  </dt>
+
+  <dd>
+    Overrides to be applied when <a href=
+    "{@docRoot}guide/topics/manifest/application-element.html#debug">android:debuggable</a>
+    is {@code "true"} which is normally the case for non-release builds
+    generated by IDEs and build tools. Trust anchors specified in {@code
+    debug-overrides} are added to all other configurations and certificate
+    pinning is not performed when the server's certificate chain uses one of
+    these debug-only trust anchors. If <a href=
+    "{@docRoot}guide/topics/manifest/application-element.html#debug">android:debuggable</a>
+    is {@code "false"} then this section is completely ignored.
+  </dd>
+</dl>
+
+<h3 id="trust-anchors">&lt;trust-anchors&gt;</h3>
+<dl class="xml">
+  <dt>
+    syntax:
+  </dt>
+
+  <dd>
+    <pre class="stx">
+&lt;trust-anchors&gt;
+...
+&lt;/trust-anchors&gt;
+</pre>
+  </dd>
+
+  <dt>
+    Can Contain:
+  </dt>
+
+  <dd>
+    Any number of <code><a href="#certificates">&lt;certificates&gt;</a></code>
+  </dd>
+
+  <dt>
+    Description:
+  </dt>
+
+  <dd>
+    Set of trust anchors for secure connections.
+  </dd>
+</dl>
+
+
+<h3 id="certificates">&lt;certificates&gt;</h3>
+<dl class="xml">
+<dt>syntax:</dt>
+<dd><pre class="stx">&lt;certificates src=["system" | "user" | "<i>raw resource</i>"]
+              overridePins=["true" | "false"] /&gt;
+</pre></dd>
+<dt>description:</dt>
+<dd>Set of X.509 certificates for {@code trust-anchors} elements.</dd>
+
+<dt>attributes:</dt>
+<dd><dl class="attr">
+<dt>{@code src}</dt>
+<dd>
+The source of CA certificates, can be one of
+<ul>
+  <li>a raw resource id pointing to a file containing X.509 certificates.
+  Certificates must be encoded in DER or PEM format. In the case of PEM
+  certificates the file <em>must not</em> contain extra non-PEM data such as
+  comments.
+  </li>
+
+  <li>{@code "system"} for the pre-installed system CA certificates
+  </li>
+
+  <li>{@code "user"} for user-added CA certificates
+  </li>
+</ul>
+</dd>
+
+<dt>{@code overridePins}</dt>
+<dd>
+  <p>
+    Specifies if the CAs from this source bypass certificate pinning. If {@code
+    "true"} then certificate chains which chain through one of the CAs from this
+    source then pinning is not be performed. This can be useful for debug CAs
+    or to support letting the user MiTM your app's secure traffic.
+  </p>
+
+  <p>
+    Default is {@code "false"} unless specified in a {@code debug-overrides}
+    element, in which case the default is {@code "true"}.
+  </p>
+</dd>
+</dl>
+</dd>
+
+
+<h3 id="pin-set">&lt;pin-set&gt;</h3>
+
+<dl class="xml">
+  <dt>
+    syntax:
+  </dt>
+
+  <dd>
+<pre class="stx">
+&lt;pin-set expiration="date"&gt;
+...
+&lt;/pin-set&gt;
+</pre>
+  </dd>
+
+  <dt>
+    Can Contain:
+  </dt>
+
+  <dd>
+    Any number of <code><a href="#pin">&lt;pin&gt;</a></code>
+  </dd>
+
+  <dt>
+    Description:
+  </dt>
+
+  <dd>
+    A set of public key pins. For a secure connection to be trusted, one of the
+    public keys in the chain of trust must be in the set of pins. See
+    <code><a href="#pin">&lt;pin&gt;</a></code> for the format of pins.
+  </dd>
+
+  <dt>
+    Attributes:
+  </dt>
+
+  <dd>
+    <dl class="attr">
+      <dt>
+        {@code expiration}
+      </dt>
+
+      <dd>
+        The date, in {@code yyyy-MM-dd} format, at and after which the pins
+        expire, thus disabling pinning. If the attribute is not set then the
+        pins do not expire.
+        <p>
+          Expiration helps prevent connectivity issues in apps which do
+          not get updates to their pin set, for example because the user
+          disabled app updates.
+        </p>
+      </dd>
+    </dl>
+  </dd>
+</dl>
+
+<h3 id="pin">&lt;pin&gt;</h3>
+<dl class="xml">
+  <dt>
+    syntax:
+  </dt>
+
+  <dd>
+<pre class="stx">
+&lt;pin digest=["SHA-256"]&gt;base64 encoded digest of X.509
+    SubjectPublicKeyInfo (SPKI)&lt;/pin&gt;
+</pre>
+  </dd>
+
+  <dt>
+    Attributes:
+  </dt>
+
+  <dd>
+    <dl class="attr">
+      <dt>
+        {@code digest}
+      </dt>
+
+      <dd>
+        The digest algorithm used to generate the pin. Currently only
+        {@code "SHA-256"} is supported.
+      </dd>
+    </dl>
+  </dd>
+</dl>
diff --git a/docs/html/preview/features/tv-recording-api.jd b/docs/html/preview/features/tv-recording-api.jd
new file mode 100644
index 0000000..b62dd46
--- /dev/null
+++ b/docs/html/preview/features/tv-recording-api.jd
@@ -0,0 +1,125 @@
+page.title=TV Recording
+page.keywords=preview,sdk,tv,recording
+page.tags=androidn
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+  <ol>
+    <li><a href="#supporting">Indicating Support for Recording</a></li>
+    <li><a href="#recording">Recording a Session</a></li>
+    <li><a href="#errors">Handling Recording Errors</a></li>
+    <li><a href="#sessions">Managing Recorded Sessions</a></li>
+    <li><a href="#best">Best Practices</a></li>
+  </ol>
+</div>
+</div>
+
+<p>TV input services let the user pause and resume channel playback via
+time-shifting APIs. Android N expands on time-shifting
+by letting the user save multiple recorded sessions.</p>
+
+<p>Users can schedule recordings in advance, or start a recording as they watch
+a program. Once the system has saved a recording, the user can browse, manage,
+and play back the recording using the system TV app.</p>
+
+<p>If you want to provide recording functionality for your TV input service,
+you must indicate to the system that your app supports recording, implement
+the ability to record programs, handle and communicate any errors that occur
+during recording, and manage your recorded sessions.</p>
+
+<p class="note"><strong>Note:</strong> The Live Channels app does not yet
+provide a way for users to create or access recordings. Until changes are
+made to the Live Channels app, it may be difficult to fully test the recording
+experience for your TV input service.</p>
+
+<h2 id="supporting">Indicating Support for Recording</h2>
+
+<p>To tell the system that your TV input service supports recording, follow
+these steps:</p>
+
+<ol>
+<li>In your <code>TvInputService.onCreate()</code> method, create a new
+<code>TvInputInfo</code> object using the <code>TvInputInfo.Builder</code>
+class.</li>
+<li>When creating the new <code>TvInputInfo</code> object, call
+<code>setCanRecord(true)</code> before calling <code>build()</code> to
+indicate your service supports recording.</li>
+<li>Register your <code>TvInputInfo</code> object with the system by calling
+<code>TvInputService.updateTvInputInfo()</code>.</li>
+</ol>
+
+<h2 id="recording">Recording a Session</h2>
+
+<p>After your TV input service registers that it supports recording
+functionality, the system calls your
+<code>TvInputService.onCreateRecordingSession()</code> when it needs to access
+your app's recording implementation. Implement your own
+<code>TvInputService.RecordingSession</code> subclass and return it
+when the <code>onCreateRecordingSession()</code> callback
+fires. This subclass is responsible for switching to the correct channel data,
+recording the requested data, and communicating recording status and errors to
+the system.</p>
+
+<p>When the system calls <code>RecordingSession.onTune()</code>, passing in a
+channel URI, tune to the channel that the URI specifies. Notify the system that
+your app has tuned to the desired channel by calling <code>notifyTuned()</code>,
+or, if your app could not tune to the proper channel, call
+<code>notifyError()</code>.</p>
+
+<p>The system next invokes the <code>RecordingSession.onStartRecording()</code>
+callback. Your app must start recording immediately. When the system invokes
+this callback, it may provide a URI that contains information about the program
+that is about to be recorded. When the recording is done, you need to copy this
+data to the <code>RecordedPrograms</code> data table.</p>
+
+<p>Finally, the system calls <code>RecordingSession.onStopRecording()</code>.
+At this point, your app must stop recording immediately. You also need to
+create an entry in the <code>RecordedPrograms</code> table. This entry should
+include the recorded session data URI in the
+<code>RecordedPrograms.COLUMN_RECORDING_DATA_URI</code> column, and any program
+information that the system provided in the initial call to
+<code>onStartRecording()</code>.</p>
+
+<p>For more details on how to access the <code>RecordedPrograms</code> table
+see <a href="#sessions">Managing Recorded Sessions</a>.</p>
+
+<h2 id="errors">Handling Recording Errors</h2>
+
+<p>If an error occurs during recording, rendering the recorded data unusable,
+notify the system by calling <code>RecordingSession.notifyError()</code>.
+Similarly, you can call <code>notifyError()</code> after a recording session is
+created to let the system know that your app can no longer record sessions.</p>
+
+<p>If an error occurs during recording, but you'd like to provide a usable
+partial recording to users for playback, call
+<code>RecordingSession.notifyRecordingStopped()</code> to enable the system to
+use the partial session.</p>
+
+<h2 id="sessions">Managing Recorded Sessions</h2>
+
+<p>The system maintains information for all recorded sessions from all
+recording-capable channel apps in the <code>TvContract.RecordedPrograms</code>
+content provider table. This information is accessible via the
+<code>RecordedPrograms.Uri</code> content URI. Use content provider APIs to
+read, add, and delete entries from this table.</p>
+
+<p>For more information on working with content provider data see
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+Content Provider Basics</a> .</p>
+
+<h2 id="best">Best Practices</h2>
+
+<p>TV devices may have limited storage, so use your best judgment when
+allocating storage to save recorded sessions. Use
+<code>RecordingCallback.onError(RECORDING_ERROR_INSUFFICIENT_SPACE)</code> when
+there isn't enough space to save a recorded session.</p>
+
+<p>When the user initiates recording, you should start recording data as soon
+as possible. To facilitate this, complete any up-front time-consuming tasks,
+like accessing and allocating storage space, when the system invokes the
+<code>onCreateRecordingSession()</code> callback. Doing so lets you start
+recording immediately when the <code>onStartRecording()</code> callback
+fires.</p>
diff --git a/docs/html/preview/guide.jd b/docs/html/preview/guide.jd
new file mode 100644
index 0000000..28c0fe9
--- /dev/null
+++ b/docs/html/preview/guide.jd
@@ -0,0 +1,190 @@
+page.title=Testing Guide
+page.image=images/cards/card-n-guide_2x.png
+meta.tags="preview", "testing"
+page.tags="preview", "developer preview"
+
+@jd:body
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>In this document</h2>
+      <ol>
+        <li><a href="#runtime-permissions">Testing Permissions</a></li>
+        <li><a href="#doze-standby">Testing Doze and App Standby</a></li>
+        <li><a href="#ids">Auto Backup and Device Identifiers</a></li>
+      </ol>
+  </div>
+</div>
+
+<p>
+  Android N gives you an opportunity to ensure your apps work with the next
+  version of the platform. This preview includes a number of APIs and behavior changes that can
+  impact your app, as described in the <a href="{@docRoot}preview/api-overview.html">API
+  Overview</a> and <a href="{@docRoot}preview/behavior-changes.html">Behavior Changes</a>. In testing
+  your app with the preview, there are some specific system changes that you should focus on to
+  ensure that users have a good experience.
+</p>
+
+<p>
+  This guide describes the what and how to test preview features with your app. You should
+  prioritize testing of these specific preview features, due to their high potential impact on your
+  app's behavior:
+</p>
+
+<ul>
+  <li><a href="#runtime-permissions">Permissions</a>
+  </li>
+  <li><a href="#doze-standby">Doze and App Standby</a>
+  </li>
+  <li><a href="#ids">Auto Backup and Device Identifiers</a></li>
+</ul>
+
+<p>
+  For more information about how to set up devices or virtual devices with a preview system image
+  for testing, see <a href="{@docRoot}preview/setup-sdk.html">Set up
+the Android N SDK</a>.
+</p>
+
+
+<h2 id="runtime-permissions">Testing Permissions</h2>
+
+<p>
+  The new <a href="{@docRoot}preview/features/runtime-permissions.html">Permissions</a> model
+  changes the way that permissions are allocated to your app by the user. Instead of granting all
+  permissions during the install procedure, your app must ask the user for individual permissions
+  at runtime. For users this behavior provides more granular control over each app’s activities, as
+  well as better context for understanding why the app is requesting a specific permission. Users
+  can grant or revoke the permissions granted to an app individually at any time. This feature of
+  the preview is most likely to have an impact on your app's behavior and may prevent some of your
+  app features from working, or they may work in a degraded state.
+</p>
+
+<p class="caution">
+  This change affects all apps running on the new platform, even those not targeting the new
+  platform version. The platform provides a limited compatibility behavior for legacy apps, but you
+  should begin planning your app’s migration to the new permissions model now, with a goal of
+  publishing an updated version of your app at the official platform launch.
+</p>
+
+
+<h3 id="permission-test-tips">Test tips</h3>
+
+<p>
+  Use the following test tips to help you plan and execute testing of your app with the new
+  permissions behavior.
+</p>
+
+<ul>
+  <li>Identify your app’s current permissions and the related code paths.</li>
+  <li>Test user flows across permission-protected services and data.</li>
+  <li>Test with various combinations of granted/revoked permission.</li>
+  <li>Use the {@code adb} tool to manage permssions from the command line:
+    <ul>
+      <li>List permissions and status by group:
+        <pre>adb shell pm list permissions -d -g</pre>
+      </li>
+      <li>Grant or revoke one or more permissions using the following syntax:<br>
+        <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
+      </li>
+    </ul>
+  </li>
+  <li>Analyze your app for services that use permissions.</li>
+</ul>
+
+<h3 id="permission-test-strategy">Test strategy</h3>
+
+<p>
+  The permissions change affects the structure and design of your app, as well as
+  the user experience and flows you provide to users. You should assess your app’s current
+  permissions use and start planning for the new flows you want to offer. The official release of
+  the platform provides compatibility behavior, but you should plan on updating your app and not
+  rely on these behaviors.
+</p>
+
+<p>
+  Identify the permissions that your app actually needs and uses, and then find the various code
+  paths that use the permission-protected services. You can do this through a combination of
+  testing on the new platform and code analysis. In testing, you should focus on opting in to
+  runtime permissions by changing the app’s {@code targetSdkVersion} to the preview version. For
+  more information, see <a href="{@docRoot}preview/setup-sdk.html#">Set up
+the Android N SDK</a>.
+</p>
+
+<p>
+  Test with various combinations of permissions revoked and added, to highlight the user flows that
+  depend on permissions. Where a dependency is not obvious or logical you should consider
+  refactoring or compartmentalizing that flow to eliminate the dependency or make it clear why the
+  permission is needed.
+</p>
+
+<p>
+  For more information on the behavior of runtime permissions, testing, and best practices, see the
+  <a href="{@docRoot}preview/features/runtime-permissions.html">Permissions</a> developer
+  preview page.
+</p>
+
+
+<h2 id="doze-standby">Testing Doze and App Standby</h2>
+
+<p>
+  The power saving features of Doze and App Standby limit the amount of background processing that
+  your app can perform when a device is in an idle state or while your app is not in focus. The
+  restrictions the system may impose on apps include limited or no network access,
+  suspended background tasks, suspended Notifications, ignored wake requests, and alarms. To ensure
+  that your app behaves properly with these power saving optimizations, you should test your app by
+  simulating these low power states.
+</p>
+
+<h4 id="doze">Testing your app with Doze</h4>
+
+<p>To test Doze with your app:</p>
+
+<ol>
+<li>Configure a hardware device or virtual device with an Android N system image.</li>
+<li>Connect the device to your development machine and install your app.</li>
+<li>Run your app and leave it active.</li>
+<li>Simulate the device going into Doze mode by running the following commands:
+
+<pre>
+$ adb shell dumpsys battery unplug
+$ adb shell dumpsys deviceidle step
+$ adb shell dumpsys deviceidle -h
+</pre>
+
+  </li>
+  <li>Observe the behavior of your app when the device is re-activated. Make sure it
+    recovers gracefully when the device exits Doze.</li>
+</ol>
+
+
+<h4 id="standby">Testing apps with App Standby</h4>
+
+<p>To test the App Standby mode with your app:</p>
+
+<ol>
+  <li>Configure a hardware device or virtual device with an Android N system image.</li>
+  <li>Connect the device to your development machine and install your app.</li>
+  <li>Run your app and leave it active.</li>
+  <li>Simulate the app going into standby mode by running the following commands:
+
+<pre>
+$ adb shell am broadcast -a android.os.action.DISCHARGING
+$ adb shell am set-idle &lt;packageName&gt; true
+</pre>
+
+  </li>
+  <li>Simulate waking your app using the following command:
+    <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
+  </li>
+  <li>Observe the behavior of your app when it is woken. Make sure it recovers gracefully
+    from standby mode. In particular, you should check if your app's Notifications and background
+    jobs continue to function as expected.</li>
+</ol>
+
+<h2 id="ids">Auto Backup for Apps and Device-Specific Identifiers</h2>
+
+<p>If your app is persisting any device-specific identifiers, such as Google
+Cloud Messaging registration ID, in internal storage,
+make sure to follow best practices to exclude the storage
+location from auto-backup, as described in <a href="{@docRoot}preview/backup/index.html">Auto
+Backup for Apps</a>. </p>
diff --git a/docs/html/preview/images/bundles.png b/docs/html/preview/images/bundles.png
new file mode 100644
index 0000000..8b022b1
--- /dev/null
+++ b/docs/html/preview/images/bundles.png
Binary files differ
diff --git a/docs/html/preview/images/bundles_2x.png b/docs/html/preview/images/bundles_2x.png
new file mode 100644
index 0000000..4669096
--- /dev/null
+++ b/docs/html/preview/images/bundles_2x.png
Binary files differ
diff --git a/docs/html/preview/images/datasaver.png b/docs/html/preview/images/datasaver.png
new file mode 100644
index 0000000..c5a58fb
--- /dev/null
+++ b/docs/html/preview/images/datasaver.png
Binary files differ
diff --git a/docs/html/preview/images/doze-diagram-1.png b/docs/html/preview/images/doze-diagram-1.png
new file mode 100644
index 0000000..0814447
--- /dev/null
+++ b/docs/html/preview/images/doze-diagram-1.png
Binary files differ
diff --git a/docs/html/preview/images/doze-diagram-2.png b/docs/html/preview/images/doze-diagram-2.png
new file mode 100644
index 0000000..c20c6cb
--- /dev/null
+++ b/docs/html/preview/images/doze-diagram-2.png
Binary files differ
diff --git a/docs/html/preview/images/inline-reply.png b/docs/html/preview/images/inline-reply.png
new file mode 100644
index 0000000..79a1a72
--- /dev/null
+++ b/docs/html/preview/images/inline-reply.png
Binary files differ
diff --git a/docs/html/preview/images/inline-reply_2x.png b/docs/html/preview/images/inline-reply_2x.png
new file mode 100644
index 0000000..13c6e35
--- /dev/null
+++ b/docs/html/preview/images/inline-reply_2x.png
Binary files differ
diff --git a/docs/html/preview/images/inline-type-reply.png b/docs/html/preview/images/inline-type-reply.png
new file mode 100644
index 0000000..b22aacd
--- /dev/null
+++ b/docs/html/preview/images/inline-type-reply.png
Binary files differ
diff --git a/docs/html/preview/images/inline-type-reply_2x.png b/docs/html/preview/images/inline-type-reply_2x.png
new file mode 100644
index 0000000..6e52a80
--- /dev/null
+++ b/docs/html/preview/images/inline-type-reply_2x.png
Binary files differ
diff --git a/docs/html/preview/images/mw-portrait.png b/docs/html/preview/images/mw-portrait.png
new file mode 100644
index 0000000..e752387
--- /dev/null
+++ b/docs/html/preview/images/mw-portrait.png
Binary files differ
diff --git a/docs/html/preview/images/mw-splitscreen.png b/docs/html/preview/images/mw-splitscreen.png
new file mode 100644
index 0000000..bf71999
--- /dev/null
+++ b/docs/html/preview/images/mw-splitscreen.png
Binary files differ
diff --git a/docs/html/preview/images/mw-splitscreen_2x.png b/docs/html/preview/images/mw-splitscreen_2x.png
new file mode 100644
index 0000000..38114db
--- /dev/null
+++ b/docs/html/preview/images/mw-splitscreen_2x.png
Binary files differ
diff --git a/docs/html/preview/images/n-preview-setup.png b/docs/html/preview/images/n-preview-setup.png
new file mode 100644
index 0000000..612e031
--- /dev/null
+++ b/docs/html/preview/images/n-preview-setup.png
Binary files differ
diff --git a/docs/html/preview/images/notifications-1.png b/docs/html/preview/images/notifications-1.png
new file mode 100644
index 0000000..5712002
--- /dev/null
+++ b/docs/html/preview/images/notifications-1.png
Binary files differ
diff --git a/docs/html/preview/images/notifications-2.png b/docs/html/preview/images/notifications-2.png
new file mode 100644
index 0000000..0d07948
--- /dev/null
+++ b/docs/html/preview/images/notifications-2.png
Binary files differ
diff --git a/docs/html/preview/images/notifications-3.png b/docs/html/preview/images/notifications-3.png
new file mode 100644
index 0000000..261d010
--- /dev/null
+++ b/docs/html/preview/images/notifications-3.png
Binary files differ
diff --git a/docs/html/preview/images/notifications-card.png b/docs/html/preview/images/notifications-card.png
new file mode 100644
index 0000000..d9d0590
--- /dev/null
+++ b/docs/html/preview/images/notifications-card.png
Binary files differ
diff --git a/docs/html/preview/images/pip-active.png b/docs/html/preview/images/pip-active.png
new file mode 100644
index 0000000..a24cb03
--- /dev/null
+++ b/docs/html/preview/images/pip-active.png
Binary files differ
diff --git a/docs/html/preview/images/pip-button.png b/docs/html/preview/images/pip-button.png
new file mode 100644
index 0000000..b876b12
--- /dev/null
+++ b/docs/html/preview/images/pip-button.png
Binary files differ
diff --git a/docs/html/preview/images/quicksettings.png b/docs/html/preview/images/quicksettings.png
new file mode 100644
index 0000000..68e1f74
--- /dev/null
+++ b/docs/html/preview/images/quicksettings.png
Binary files differ
diff --git a/docs/html/preview/images/sample-activenotifications.png b/docs/html/preview/images/sample-activenotifications.png
new file mode 100644
index 0000000..8817469
--- /dev/null
+++ b/docs/html/preview/images/sample-activenotifications.png
Binary files differ
diff --git a/docs/html/preview/images/sample-directboot.png b/docs/html/preview/images/sample-directboot.png
new file mode 100644
index 0000000..cc409d3
--- /dev/null
+++ b/docs/html/preview/images/sample-directboot.png
Binary files differ
diff --git a/docs/html/preview/images/sample-messagingservice.png b/docs/html/preview/images/sample-messagingservice.png
new file mode 100644
index 0000000..0d8fb3e
--- /dev/null
+++ b/docs/html/preview/images/sample-messagingservice.png
Binary files differ
diff --git a/docs/html/preview/images/sample-multiwindow.png b/docs/html/preview/images/sample-multiwindow.png
new file mode 100644
index 0000000..979bf61
--- /dev/null
+++ b/docs/html/preview/images/sample-multiwindow.png
Binary files differ
diff --git a/docs/html/preview/images/sample-scopeddirectoryaccess.png b/docs/html/preview/images/sample-scopeddirectoryaccess.png
new file mode 100644
index 0000000..58515dc
--- /dev/null
+++ b/docs/html/preview/images/sample-scopeddirectoryaccess.png
Binary files differ
diff --git a/docs/html/preview/images/scoped-folder-access-framed.png b/docs/html/preview/images/scoped-folder-access-framed.png
new file mode 100644
index 0000000..0169e41
--- /dev/null
+++ b/docs/html/preview/images/scoped-folder-access-framed.png
Binary files differ
diff --git a/docs/html/preview/images/scoped-folder-access-framed_2x.png b/docs/html/preview/images/scoped-folder-access-framed_2x.png
new file mode 100644
index 0000000..fd59ef1
--- /dev/null
+++ b/docs/html/preview/images/scoped-folder-access-framed_2x.png
Binary files differ
diff --git a/docs/html/preview/images/screen-zoom-1.png b/docs/html/preview/images/screen-zoom-1.png
new file mode 100644
index 0000000..f62d04e
--- /dev/null
+++ b/docs/html/preview/images/screen-zoom-1.png
Binary files differ
diff --git a/docs/html/preview/images/screen-zoom-2.png b/docs/html/preview/images/screen-zoom-2.png
new file mode 100644
index 0000000..172b5b3
--- /dev/null
+++ b/docs/html/preview/images/screen-zoom-2.png
Binary files differ
diff --git a/docs/html/preview/images/studio-jdk-location.jpg b/docs/html/preview/images/studio-jdk-location.jpg
new file mode 100644
index 0000000..1b1ba23
--- /dev/null
+++ b/docs/html/preview/images/studio-jdk-location.jpg
Binary files differ
diff --git a/docs/html/preview/index.jd b/docs/html/preview/index.jd
index db9a957..bce5dec 100644
--- a/docs/html/preview/index.jd
+++ b/docs/html/preview/index.jd
@@ -1,38 +1,49 @@
-page.title=Android M Developer Preview
-page.tags="preview",
-meta.tags="preview, M preview", androidm
+page.title=Android N Developer Preview
+page.tags="preview","developer"
+meta.tags="preview", "android"
 fullpage=true
-section.landing=true
+forcelocalnav=true
 header.hide=1
 footer.hide=1
 @jd:body
 
-<section class="dac-expand dac-hero dac-light" >
-  <div class="wrap">
-    <div class="cols dac-hero-content">
-      <div class="col-9of16 col-push-7of16 dac-hero-figure">
-        <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png"
-             srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
-             {@docRoot}images/home/devices-hero_620px_2x.png 2x">
-      </div>
-      <div class="col-7of16 col-pull-9of16">
-        <h1 class="dac-hero-title">Android M Developer Preview</h1>
+<script>
+  $(document).ready(function() {
+    if (useUpdatedTemplates) {
+      $("#useUpdatedTemplates").css("display","block");
+    } else {
+      $("#useOldTemplates").css("display","block");
+    }
+  })
+</script>
+
+<section class="dac-expand dac-hero dac-light" style="background-color:#B2DFDB">
+  <div class="wrap" style="max-width:1100px;margin-top:0">
+    <div class="cols dac-hero-content" style="padding-bottom:1em;">
+
+      <div class="col-7of16 col-push-9of16" style="padding-left:2em">
+        <h1 class="dac-hero-title">Android N Developer Preview</h1>
         <p class="dac-hero-description">
-          <strong>The official Android 6.0 SDK is now available!</strong>
-          Get your apps ready for the next version of Android. Test on Nexus 5, 6, 9, and
-          Player. Explore what's new &mdash; <strong>runtime permissions</strong>,
-          <strong>Doze</strong> and <strong>App Standby</strong> power-saving features, new
-          <strong>assist technology</strong>, and more.
+          Get ready for Android N!
+          <strong>Test your apps</strong> on Nexus and other devices. Support new system
+          behaviors to <strong>save power and memory</strong>.
+          Extend your apps with <strong>multi-window UI</strong>,
+          <strong>direct reply notifications</strong> and more.
         </p>
 
         <a class="dac-hero-cta" href="{@docRoot}preview/overview.html">
           <span class="dac-sprite dac-auto-chevron"></span>
           Get started
-        </a><br>
+        </a><!--<br>
         <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
           <span class="dac-sprite dac-auto-chevron"></span>
-          Update to Developer Preview 3 (final SDK)
-        </a><br>
+          Update to Android N (final SDK)
+        </a><br>-->
+      </div>
+      <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:1.5em;padding-right:1.5em;">
+        <img class="dac-hero-image" src="{@docRoot}images/home/n-preview-hero.png"
+             srcset="{@docRoot}images/home/n-preview-hero.png 1x,
+             {@docRoot}images/home/n-preview-hero_2x.png 2x">
       </div>
     </div>
     <div class="dac-section dac-small">
@@ -44,30 +55,67 @@
   </div>
 </section>
 
-<section class="dac-section dac-gray"><div class="wrap">
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
+    <ul class="dac-actions">
+      <li class="dac-action">
+        <a class="dac-action-link" href="https://developer.android.com/preview/bug">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Report an issue
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}preview/support.html">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          See release notes
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="{@docRoot}preview/dev-community">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Join dev community
+        </a>
+      </li>
+    </ul>
+  </div><!-- end .wrap -->
+</div><!-- end .dac-actions -->
+
+<div id="useOldTemplates" style="display:none;color:black" class="actions-bar dac-expand dac-invert">
+  <div class="wrap dac-offset-parent">
+
+    <div class="actions">
+      <div><a href="https://developer.android.com/preview/bug">
+        <span class="dac-sprite dac-auto-chevron-large"></span>
+        Report an issue
+      </a></div>
+      <div><a href="{@docRoot}preview/support.html">
+        <span class="dac-sprite dac-auto-chevron-large"></span>
+        See release notes
+      </a></div>
+      <div><a href="{@docRoot}preview/dev-community">
+        <span class="dac-sprite dac-auto-chevron-large"></span>
+        Join dev community
+      </a></div>
+    </div><!-- end .actions -->
+  </div><!-- end .wrap -->
+</div>
+
+<section class="dac-section dac-light"><div class="wrap">
   <h1 class="dac-section-title">Resources</h1>
   <div class="dac-section-subtitle">
-    Essential information to help you get your apps ready for Android M.
+    Essential information to help you get your apps ready for Android N.
   </div>
 
   <div class="resource-widget resource-flow-layout col-16"
        data-query="collection:preview/landing/more"
        data-cardSizes="6x6"
-       data-maxResults="16"></div>
+       data-items-per-page="6"
+       data-maxResults="15"
+       data-initial-results="6"></div>
 
-    <ul class="dac-section-links">
-      <li class="dac-section-link">
-        <a href="https://code.google.com/p/android-developer-preview/">
-          <span class="dac-sprite dac-auto-chevron"></span>
-          Report Issues
-        </a>
-      </li>
-      <li class="dac-section-link"><a href="http://g.co/dev/AndroidMDevPreview">
-        <span class="dac-sprite dac-auto-chevron"></span>
-        Join G+ Community
-        </a>
-      </li>
-    </ul>
   </div>
 </section>
 
diff --git a/docs/html/preview/j8-jack.jd b/docs/html/preview/j8-jack.jd
new file mode 100644
index 0000000..78252f0
--- /dev/null
+++ b/docs/html/preview/j8-jack.jd
@@ -0,0 +1,196 @@
+page.title=Java 8 Language Features
+page.keywords="android N", "Java 8", "Jack"
+@jd:body
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <ol>
+      <li>
+        <a href="#supported-features">Supported Java 8 Language Features and APIs</a>
+      </li>
+      <li>
+        <a href="#configuration">Enabling Java 8 Features and the Jack Toolchain</a>
+      </li>
+    </ol>
+  </div>
+</div>
+
+<p>Android N introduces support for Java 8 language features
+  that you can use when developing apps that target Android N.
+  This page describes the new language features supported in the Android N
+  Preview, how to properly set up your project to use them, and any known
+  issues you may encounter.
+</p>
+
+<p>To start using these features, you need to download and set up Android
+Studio 2.1 (preview) and the Android N Preview SDK, which includes the required
+Jack toolchain and updated Android Plugin for Gradle. If you haven't yet
+installed the Android N Preview SDK, see <a href=
+"{@docRoot}preview/setup-sdk.html">Set Up to Develop for Android N</a>.</p>
+
+
+
+<p class="note">
+  <strong>Note:</strong> Using the new Java 8 language features is not a
+  requirement for developing apps that target the Android N platform. If you
+  don't want to write code with Java 8 language features, you can keep your
+  project's source and target compatibility values set to Java 7, but you still
+  must compile with JDK 8 to build against the Android N platform.
+</p>
+
+<h2 id="supported-features">
+  Supported Java 8 Language Features and APIs
+</h2>
+
+<p>
+  Android does not currently support all Java 8 language features. However, the
+  following features are now available when developing apps targeting the
+  Android N Preview:
+</p>
+
+<ul>
+  <li>
+    <a class="external-link" href=
+    "https://docs.oracle.com/javase/tutorial/java/IandI/defaultmethods.html">Default
+    and static interface methods</a>
+  </li>
+
+  <li>
+    <a class="external-link" href=
+    "https://docs.oracle.com/javase/tutorial/java/javaOO/lambdaexpressions.html">
+    Lambda expressions</a>
+  </li>
+
+  <li>
+    <a class="external-link" href=
+    "https://docs.oracle.com/javase/tutorial/java/annotations/repeating.html">Repeatable
+    annotations</a>
+  </li>
+</ul>
+
+
+<p>
+  Additionally, the following Java 8 language feature APIs are now available:
+</p>
+
+<ul>
+  <li>Reflection and language-related APIs:
+  </li>
+
+  <li style="list-style: none; display: inline">
+    <ul>
+      <li>{@code java.lang.FunctionalInterface}
+      </li>
+
+      <li>{@code java.lang.annotation.Repeatable}
+      </li>
+
+      <li>{@code java.lang.reflect.Method.isDefault()}
+      </li>
+
+      <li>and Reflection APIs associated with repeatable annotations, such as
+      {@code AnnotatedElement.getAnnotationsByType(Class)}
+      </li>
+    </ul>
+  </li>
+  <li>Utility APIs:
+  </li>
+
+  <li style="list-style: none; display: inline">
+    <ul>
+      <li>{@code java.util.function}
+      </li>
+    </ul>
+  </li>
+</ul>
+
+<p class="note">
+  <strong>Note:</strong> The Android N bases its implementation of
+  lambda expressions on anonymous classes. This approach allows them to be
+  backwards compatible and executable on earlier versions of Android. To test
+  lambda expressions on earlier versions, remember to go to your {@code
+  build.gradle} file, and set {@code compileSdkVersion} and {@code
+  targetSdkVersion} to 23 or lower.
+</p>
+
+<h2 id="configuration">
+  Enabling Java 8 Features and the Jack Toolchain
+</h2>
+
+<p>
+  In order to use the new Java 8 language features, you need to also use the
+  new <a class="external-link" href=
+  "https://source.android.com/source/jack.html">Jack toolchain</a>. This new
+  Android toolchain compiles Java language source into Android-readable dex
+  bytecode, has its own {@code .jack} library format, and provides most toolchain
+  features as part of a single tool: repackaging, shrinking, obfuscation and
+  multidex.
+</p>
+
+<p>Here is a comparison of the two toolchains used to build Android DEX files:</p>
+<ul>
+  <li>Legacy javac toolchain:<br>
+  <b>javac</b> ({@code .java} --&gt; {@code .class}) --&gt; <b>dx</b> ({@code
+  .class} --&gt; {@code .dex})
+  </li>
+
+  <li>New Jack toolchain:<br>
+  <b>Jack</b> ({@code .java} --&gt; {@code .jack} --&gt; {@code .dex})
+  </li>
+</ul>
+
+<h3>
+  Configuring Gradle
+</h3>
+
+<p>
+  To enable the Java 8 language features and Jack for your project, enter the
+  following in your module-specific {@code build.gradle} file:
+</p>
+
+<pre>
+android {
+  ...
+  defaultConfig {
+    ...
+    jackOptions {
+      enabled true
+    }
+  }
+  compileOptions {
+    sourceCompatibility JavaVersion.VERSION_1_8
+    targetCompatibility JavaVersion.VERSION_1_8
+  }
+}
+</pre>
+
+<h3>
+  Known Issues
+</h3>
+
+<p>
+  Instant Run, introduced in Android Studio 2.0 (Beta), does not currently work
+  with Jack and will be disabled while using the new toolchain.
+</p>
+
+<p>Because Jack does not generate intermediate class files when compiling an
+app, tools that depend on these files do not currently work with Jack. Some
+examples of these tools are:</p>
+
+<ul>
+  <li>Lint detectors that operate on class files
+  </li>
+
+  <li>Tools and libraries that require the app’s class files (such as
+  instrumentation tests with JaCoCo)
+  </li>
+</ul>
+
+<p>
+  Calls to an interface's default method on a <a class="external-link" href=
+  "https://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Proxy.html"><code>
+  Proxy</code></a> instance fail with an exception.
+</p>
+
+<p>If you find other problems while using Jack, <a href=
+"http://tools.android.com/filing-bugs">please report bugs</a>.</p>
\ No newline at end of file
diff --git a/docs/html/preview/license.jd b/docs/html/preview/license.jd
index 5ff52ba..ae02aae 100644
--- a/docs/html/preview/license.jd
+++ b/docs/html/preview/license.jd
@@ -3,7 +3,7 @@
 @jd:body
 
 <p>
-To get started with the Android SDK Preview, you must agree to the following terms and conditions. 
+To get started with the Android SDK Preview, you must agree to the following terms and conditions.
 As described below, please note that this is a preview version of the Android SDK, subject to change, that you use at your own risk.  The Android SDK Preview is not a stable release, and may contain errors and defects that can result in serious damage to your computer systems, devices and data.
 </p>
 
@@ -17,7 +17,9 @@
 
 1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
 
-1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+1.3 “Android-compatible” means any Android implemation that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
 
 2. Accepting the License Agreement
 
@@ -31,13 +33,13 @@
 
 3. Preview License from Google
 
-3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform.
+3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the Preview solely to develop applications for compatible implementations of Android.
 
-3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+3.2 You may not use this Preview to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this Preview is not used for that purpose.
 
-3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
+3.3 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
 
-3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview.
+3.4 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
 
 3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights.
 
@@ -51,7 +53,7 @@
 
 4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications.
 
-4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries). 
+4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
 
 4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so.
 
diff --git a/docs/html/preview/overview.jd b/docs/html/preview/overview.jd
index fb2e266..935eb1a 100644
--- a/docs/html/preview/overview.jd
+++ b/docs/html/preview/overview.jd
@@ -1,10 +1,11 @@
 page.title=Program Overview
-page.metaDescription=Welcome to the Android M Developer Preview, a program that gives you everything you need to test and optimize your apps for the next version of Android.
-page.image=images/cards/card-preview_16-9_2x.png
+page.metaDescription=Get your apps ready for the next version of Android.
+page.image=images/cards/card-n-overview_2x.png
+meta.tags="preview", "developer", "android"
 page.tags="preview", "developer", "android"
 
 @jd:body
-
+<!--
 <div class="cols" style=
 "background-color:#f2daf5; padding: 5px 0;margin-bottom:1em; text-align:center;">
 <h3>
@@ -33,25 +34,32 @@
   </ul>
   </div>
 </div>
+-->
 
 <p>
-  Welcome to the <strong>Android M Developer Preview</strong>, a program that gives you
-  everything you need to test and optimize your apps for the next version of
-  Android. It's free, and you can get started right away just by downloading
-  the M Developer Preview tools.
+  Welcome to the <strong>Android N Developer Preview</strong>, a program that
+  gives you everything you need to test and optimize your apps for the next
+  version of Android. It's free, and you can get started right away just by
+  downloading the N Developer Preview tools.
 </p>
 
+
+
+
+
+
+
 <div style="background-color:#eceff1;padding:1em;">
 <div class="wrap">
   <div class="cols">
     <div class="col-4of12">
       <h5>
-        Hardware and emulator system images
+        Hardware and emulator images
       </h5>
 
       <p>
-        Run and test your apps on Nexus 5, 6, 9, and Player (for TV), as well
-        as emulator.
+        Run and test your apps on a range of devices or on an emulator.
+
       </p>
     </div>
 
@@ -61,21 +69,21 @@
       </h5>
 
       <p>
-        We’ll provide multiple updates during the Preview, so you’ll be testing
-        against the latest platform changes.
+        We’ll provide monthly updates during the Preview, so you’ll be testing against the latest platform changes.
       </p>
     </div>
 
     <div class="col-4of12">
       <h5>
-        Updates delivered by OTA
+        Priority for developer issues
       </h5>
 
       <p>
-        You  can get updates over-the-air, once you’ve flashed a
-        device to the initial preview.
+        During the first several weeks we’ll give priority to developer-reported
+        issues, so test and give feedback as soon as possible.
       </p>
     </div>
+
   </div>
 
   <div class="cols">
@@ -87,19 +95,18 @@
       </h5>
 
       <p>
-        Start work early to support new platform behaviors such as
-        the new runtime permissions model and power-saving features.
+        Start work early to support new platform behaviors and develop with new features.
       </p>
     </div>
 
     <div class="col-4of12">
-      <h5>
-        Priority window for developer-reported issues
+        <h5>
+        Updates delivered by OTA
       </h5>
 
       <p>
-        During the first several weeks we’ll give priority to developer-reported
-        issues, so test and give feedback as soon as possible.
+        Seamless over-the-air updates for any supported device through the
+        Android Beta Program. No flashing is needed.
       </p>
     </div>
 
@@ -109,11 +116,10 @@
       </h5>
 
       <p>
-        Report issues and give us feedback using our <a href=
-        "https://code.google.com/p/android-developer-preview/">issue tracker</a>.
-        Connect with other developers in the <a
-        href="http://g.co/dev/AndroidMDevPreview">M&nbsp;Developer Community</a>.
-
+        Report issues and give us feedback using our
+        <a href="{@docRoot}preview/bug">issue tracker</a>. Connect with other
+        developers in the
+        <a href="{@docRoot}preview/dev-community">N&nbsp;Developer Community</a>.
       </p>
     </div>
   </div>
@@ -121,269 +127,320 @@
 </div>
 
 <!--
-<p>
-  With the M Developer Preview, you'll get an early start on testing your apps,
-  with enough time to make adjustments before the public platform release later
-  in the year. We'll provide several updates to the Preview tools in the weeks
-  ahead, so you can keep in sync with the latest changes as the platform moves
-  toward launch.
-</p>
-<img src="{@docRoot}preview/images/m-preview-timeline.png" alt=
-"Preview program timeline" id="timeline">
-<p>
-  You can help us improve the platform by <a href=
-  "https://code.google.com/p/android-developer-preview/">reporting issues</a>
-  through our feedback channels. This is especially
-  critical in the first month of the preview, when we’ll be giving priority to
-  developer-reported issues and feedback.
-</p> -->
+<p>New in the Android N Developer Preview: </p>
 
+<ul>
+  <li> Accompanying Android Beta Program for consumers, starting later in the preview</li>
+  <li> More supported devices, including devices from OEM partners</li>
+  <li> Seamless OTAs for your devices, from initial release to final N release without flashing</li>
+</ul>
+-->
 
-<h2 id="timeline">
-  Timeline and updates
-</h2>
-<img src="{@docRoot}preview/images/m-preview-timeline-crop.png" alt=
-"Preview program timeline" id="timeline">
+<h2 id="timeline">Timeline and updates</h2>
+<img src="{@docRoot}images/n-preview-updates_2x.png">
+
 <p>
-  The M Developer Preview runs from May 28 until the final Android M public release planned for Q3
-  2015.
+  The N Developer Preview runs from 9 March 2016 until the final Android N
+  public release to AOSP and OEMs, planned for Q3 2016.
 </p>
 
 <p>
-  At key development milestones, we’ll deliver updates for your test devices.
-  The milestones are
+  At key development milestones, we’ll deliver updates for your development and
+  testing environment. In general you can expect an update each month (4 to 6
+  week interval). The milestones are listed below.
 </p>
 
 <ul>
-  <li>
-    <strong><a href="{@docRoot}preview/download_mp1.html">Preview&nbsp;1</a></strong> (available).
-  </li>
-
-  <li>
-    <strong><a href="{@docRoot}preview/download_mp2.html">Preview&nbsp;2</a></strong> (available).
-  </li>
-
-  <li>
-  <strong><a href="{@docRoot}preview/download.html">Preview&nbsp;3</a></strong>
-    (final APIs and official Android 6.0 SDK, available).
-  </li>
+  <li><strong><a href="{@docRoot}preview/support.html">Preview 1</a></strong> (initial release, alpha)</li>
+  <li><strong>Preview 2</strong> (incremental update, beta)</li>
+  <li><strong>Preview 3</strong> (incremental update, beta)</li>
+  <li><strong>Preview 4</strong> (final APIs and official SDK, Play publishing)</li>
+  <li><strong>Preview 5</strong> (near-final system images for final testing)</li>
+  <li><strong>Final release</strong> to AOSP and ecosystem</li>
 </ul>
 
 <p>
-  These updates culminate in the <strong>official Android 6.0 SDK</strong> (now available),
-  which lets you build with the final APIs for the new version of Android, as well as
-  near-final system images to let you test system behaviors and features.
+  Each update includes SDK tools, preview system images, emulators, reference
+  documentation, and API diffs.
 </p>
 
 <p>
-  As you test and develop on Android M, we strongly recommend <strong>keeping
-  your development environment up-to-date</strong> as Preview updates are released.
-  To make the process easier, we'll deliver <strong>updates over-the-air
-  (OTA)</strong> to devices already flashed to a Preview build, as well as
-  providing system images that you can download and flash manually.
-</p>
-<p class="note">
-  <strong>Note:</strong> Developer Preview 3 includes final APIs and near-final
-  system images available by both download and OTA. At the full public release of
-  Android M later in Q3, final system images will be available by download only,
-  so you'll need to <strong>flash manually</strong> to
-  your test devices.</strong>
+  The <strong>first three preview milestones</strong> provide an <strong>early
+  test and development environment</strong> that help you identify
+  compatibility issues in your current apps and plan migration or feature work
+  needed to target the new platform. This is the priority period in which to
+  give us your feedback on features and APIs and file compatibility issues
+  &mdash; for all of these, please use the <a href="{@docRoot}preview/bug">issue
+  tracker</a>. You can expect some API changes across these updates.
 </p>
 
 <p>
-  We’ll notify you when Preview updates are available via the <a href=
+  At <strong>previews 4 and 5</strong> you’ll have access to the <strong>final
+  N APIs and SDK</strong> to develop with, as well as near-final system images
+  to test system behaviors and features. Android N will provide a standard API
+  level at this time. You can begin final compatibility testing of your legacy
+  apps and refine any new code that is using the N APIs or features.
+</p>
+
+<p>
+  Also starting in preview 4, you’ll be able to <strong>publish apps to
+  devices</strong> running Android N at the official API level, such as
+  consumer devices that have opted into the Android Beta program. You can
+  publish into the Google Play alpha and beta channels first, so you can test
+  your apps with Android Beta consumers before distributing broadly on the
+  store.
+</p>
+
+<p>
+  As you test and develop on Android N, we strongly recommend <strong>keeping
+  your development environment up-to-date</strong> as preview updates are
+  released. To make the process easier, you can enroll your test devices in the
+  Android Beta program and get <strong>updates over-the-air (OTA)</strong> at
+  each milestone. Alternatively, updated preview images are available that you
+  download and flash manually.
+</p>
+
+<p>
+  We’ll notify you when preview updates are available via the <a href=
   "http://android-developers.blogspot.com/">Android Developers Blog</a>, as
-  well as this site and the
-  <a href="http://g.co/dev/AndroidMDevPreview">Android M Developer Community</a>.
+  well as this site and the <a href="{@docRoot}preview/dev-community">Android
+  N Developer Community</a>.
 </p>
 
-<h2 id="preview_tools">
-  What’s in the Preview?
-</h2>
+
+<h2 id="preview_tools">What's in the N Developer Preview?</h2>
 
 <p>
-  The M Developer Preview includes everything you need to test your existing
+  The N Developer Preview includes everything you need to test your existing
   apps on a variety of screen sizes, network technologies, CPU/GPU chipsets,
   and hardware architectures.
 </p>
 
-<h4>
-  SDK tools
-</h4>
+<h3 id="sdk_tools">SDK tools</h3>
 
-<p>
-  You can download these components through the SDK Manager in <a href=
-  "{@docRoot}sdk/installing/adding-packages.html">Android Studio</a>:
-</p>
+<p>You can download these components through the SDK Manager in <a href="{@docRoot}sdk/installing/adding-packages.html">Android Studio</a>:</p>
 
 <ul>
-  <li><strong>Official Android 6.0 SDK and tools</strong>
-  </li>
-
-  <li>M Developer Preview <strong>emulator system image</strong> (32-bit &amp;
-  64-bit)
-  </li>
-
-  <li>M Developer Preview <strong>emulator system Image for Android TV</strong>
-  (32-bit)
-  </li>
+  <li> N Developer Preview <strong>SDK and tools</strong>
+  <li> N Developer Preview <strong>emulator system image</strong> (32-bit & 64-bit)
+  <li> N Developer Preview <strong>emulator system Image for Android TV</strong> (32-bit)
+  <li> N Developer Preview support libraries (for new app templates)
 </ul>
 
-<h4>
-  Hardware system images
-</h4>
-
 <p>
-  You can download these hardware system images for Nexus devices from the
-  <a href="download.html">Downloads page</a>:
+  We’ll provide updates to these development tools at each milestone as needed.
 </p>
 
-<ul>
-  <li>
-    <strong>Nexus 5</strong> (GSM/LTE) “hammerhead” device system image
-  </li>
-
-  <li>
-    <strong>Nexus 6</strong> “shamu” device system image
-  </li>
-
-  <li>
-    <strong>Nexus 9</strong> (Wi-Fi) “volantis” device system image
-  </li>
-
-  <li>
-    <strong>Nexus Player</strong> (Android TV) “fugu” device system image
-  </li>
-</ul>
-
-<h4>
-  Documentation and sample code
-</h4>
+<h3 id="hardware_system_images">Hardware system images</h3>
 
 <p>
-  These documentation resources help you learn about the Preview:
+  The N Developer Preview includes Nexus and other hardware system images that you can use when
+  testing and developing on physical devices. See the <a href=
+  "{@docRoot}preview/download.html">Device Images</a> page for the full list
+  of hardware images.
 </p>
 
-<ul>
-  <li>
-    <a href="setup-sdk.html">Set Up the SDK</a> has step-by-step instructions
-    for getting started.
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/testing/guide.html">Testing Guide</a> and <a href=
-    "behavior-changes.html">Behavior Changes</a> point you to key areas to test.
-  </li>
-
-  <li>Documentation of new APIs, including an <a href="api-overview.html">API Overview</a>,
-  downloadable <a href="{@docRoot}preview/download.html#docs">API Reference</a>, and detailed developer guides on
-  key features such as
-  <a href="{@docRoot}preview/features/runtime-permissions.html">permissions</a>,
-  <a href="{@docRoot}preview/backup/index.html">app backup</a>, and others.
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/samples.html">Sample code</a> that demonstrates how to support
-    permissions and other new features.
-  </li>
-
-  <li>
-    <a href="{@docRoot}preview/support.html#release-notes">Release notes</a> for the current version
-    of the M Developer Preview, including change notes and diff reports.
-  </li>
-</ul>
-
-<h4>
-  Support resources
-</h4>
-
 <p>
-  Use these support resources as you test and develop on the M
-  Developer Preview:
+  We’ll deliver updated system images for these devices at each milestone. You
+  can download and flash the updated system images to your test devices
+  manually, as frequently as you need. This is especially useful for automated
+  testing environments where you might need to reflash your device multiple
+  times.
 </p>
 
-<ul>
-  <li><a href="https://code.google.com/p/android-developer-preview/">M
-  Developer Preview Issue Tracker</a> is your <strong>primary feedback
-  channel.</strong> You can report bugs, performance issues, and general
-  feedback through the issue tracker. You can also check for <a
-  href="https://code.google.com/p/android-developer-preview/wiki/KnownIssues">known issues</a>
-  and find workaround steps.
-  </li>
+<p class="note"><strong>Note</strong>:
+  <strong>Devices flashed manually will not get OTA updates</strong> like in
+  last year’s preview. This year, you can get OTAs by enrolling devices in the
+  Android Beta Program &mdash; see details in the next section.
+</p>
 
-  <li>The <a href="http://g.co/dev/AndroidMDevPreview">Android M Developer
-  Community</a> is a Google+ community where you can <strong>connect with
-  other developers</strong> working with Android M. You can share
-  observations or ideas or find answers to questions about Android M.
-  </li>
-</ul>
-
-
-<h2 id="preview_apis_and_publishing">
-  Final SDK, targeting, and publishing
-</h2>
+<h3 id="android_beta">OTA Updates through Android Beta Program</h3>
 
 <p>
-   <p>With Developer Preview 3, the platform APIs are now official (API level 23) and the
-   <strong>official Android 6.0 SDK is now available</strong>.  We recommend updating your environment
-   right away through Android Studio. Once you've updated your environment, you can target
-   the new API level, compile against the new platform, and publish at your convenience
-   to Google Play (including alpha, beta, or release channels).
-
-  <p>If you want to opt out
-  of compatibility behaviors (which is strongly recommended),
-  you can target the Android 6.0 platform by setting your app's <code><a href=
-  "/guide/topics/manifest/uses-sdk-element.html">targetSdkVersion</a></code>
-  to <code>“23”</code>.
+  New for Android N is an Over-the-Air (OTA) update program that automatically
+  delivers the latest preview updates of Android N directly to devices enrolled
+  in the program. The program is free, and it’s open to anyone who has a
+  supported device that’s registered to their Google account.
 </p>
 
-  <p>Before releasing an app that targets API level 23, we strongly
-  recommend distributing it to a group of testers through the new <a
-  href="http://android-developers.blogspot.com/2015/07/iterate-faster-on-google-play-with.html"> 
-  beta testing features available in the Google Play Developer Console. See the
-  <a href="https://support.google.com/googleplay/android-developer/answer/3131213">Help
-  Center article</a> for more information. 
-</p>
-
-<h2 id="get_started">
-  How to get started
-</h2>
-
 <p>
-  To get started testing your app with Android M:
+  To enroll in the program visit the <a href="https://g.co/androidbeta">Android
+  Beta Program</a> site. You’ll
+  see all of the devices registered to your account that are eligible to enroll
+  in Android Beta.
 </p>
 
 <ol>
-  <li>Review the <a href="{@docRoot}preview/api-overview.html">API Overview</a>
-    and <a href="{@docRoot}preview/behavior-changes.html">Behavior Changes</a> to get an
-    idea of what's new and how it affects your apps. In particular, learn about
-    the new <a href="{@docRoot}preview/features/runtime-permissions.html">runtime
-    permissions</a> model, power-saving features, and auto backup.
-  </li>
-
-  <li>Set up your environment by following the instructions for
-    <a href="{@docRoot}preview/setup-sdk.html">Setting up the Preview SDK</a>
-    and configuring test devices.
-  </li>
-
-  <li>Follow the <a href="https://developers.google.com/android/nexus/images">
-    flashing instructions</a> to flash the latest M developer preview system image
-    for Nexus 5, 6, 9, and Player. Once you've flashed your development device,
-    Preview updates will be delivered through over-the-air (OTA) updates.</a>
-  </li>
-
-  <li>Review the <a href="{@docRoot}reference/packages.html">API
-  Reference</a> and <a href="{@docRoot}preview/samples.html">M Preview
-  samples</a> to gain more insight into new API features and how to use them in
-  your app.
-  </li>
-
-  <li>Join the <a href="http://g.co/dev/AndroidMDevPreview">Android M
-  Developer Community</a> to get the latest news and connect with other
-  developers working with the new platform.
-  </li>
+  <li> Choose the devices you want to receive the Android N updates
+  <li> Click Enroll, read and agree to the terms of service, and then click OK
 </ol>
 
 <p>
-  Thank you for your participation in the Android M Developer Preview program!
+  Once you’ve enrolled, your device will soon receive an update. In most cases,
+  you will not need to do a full reset of your data to move to Android N, but
+  it’s recommended that you back up any data you don’t want to lose before
+  enrolling the device.
+</p>
+
+<p>
+  As updates are delivered to your device, we recommend downloading and
+  installing them as soon as possible. You’ll want to stay current with the
+  latest changes in system UI, behavior, APIs, and features.
+</p>
+
+<p>
+  At the conclusion of the Developer Preview, your enrolled devices will
+  receive an update to the official Android N release.
+</p>
+
+<p>
+  You can un-enroll your devices from the Android Beta program at any time from
+  the Android Beta site. Before un-enrolling, make sure to back-up your data on
+  the device.
+</p>
+
+  <p class="note"><strong>Note</strong>:
+  When you un-enroll, <strong>your device will be factory reset</strong>
+  to the latest version
+  of Android 6.0 Marshmallow (not necessarily the version that you had
+  installed prior to enrolling the device). To ensure a clean installation,
+  your data will be erased from the device, including contacts, messages,
+  photos, and so on.
+</p>
+
+<h3 id="documentation_and_sample_code">Documentation and sample code</h3>
+
+<p>
+  These documentation resources are available on the Developer Preview site to
+  help you learn about the Android&nbsp;N:
+</p>
+
+<ul>
+  <li> <a href="{@docRoot}preview/setup-sdk.html">Set Up to Develop for
+Android N</a> has
+  step-by-step instructions for getting started.</li>
+  <li> <a href="{@docRoot}preview/behavior-changes.html">Behavior
+  Changes</a> points you to key areas to test.</li>
+  <li> Documentation of new APIs, including an <a
+  href="{@docRoot}preview/api-overview.html">API Overview</a>, downloadable
+  <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API
+  Reference</a>, and detailed developer guides on key features such as
+  multi-window support, bundled notifications, multi-locale support, and others.
+  <li> <a href="{@docRoot}preview/samples.html">Sample code</a> that
+  demonstrates how to support permissions and other new features.
+  <li> <a href="{@docRoot}preview/support.html#release-notes">Release notes</a>
+  for the current version of the N Developer Preview, including change notes and
+  diff reports.
+</ul>
+
+<h4 id="reference">Downloadable API Reference</h4>
+
+<p>
+  During the early preview updates, you can download the latest
+  <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API Reference
+  for the Android N platform</a> as a separate zip archive. The reference
+  download also includes a diff report that helps you identify API changes from
+  API 23 and the previous update.
+</p>
+
+<p>
+  When the Android N APIs are final and an official API level is assigned,
+  we’ll provide the API reference to you online at <a href=
+  "https://developer.android.com">https://developer.android.com</a>.
+</p>
+
+<h3 id="support_resources">
+  Support resources
+</h3>
+
+<p>
+  As you test and develop on the N Developer Preview, please use these channels
+  to report issues and give feedback.
+</p>
+
+<ul>
+  <li> <a href="https://code.google.com/p/android-developer-preview/">N Developer Preview Issue
+    Tracker</a> is your <strong>primary feedback channel.</strong> You can report bugs, performance
+    issues, and general feedback through the issue tracker. You can also check for
+<a href="{@docRoot}preview/bug">known issues</a> and
+    find workaround steps. We’ll keep you updated on your issue as it’s triaged and sent to
+    the Android engineering team for review. </li>
+  <li> The <a href="{@docRoot}preview/dev-community">Android N Developer Community</a> is
+    a Google+ community where you can <strong>connect with other developers</strong>working with
+    Android N. You can share observations or ideas or find answers to
+    questions about Android N. We’ll moderate the community and provide answers and
+    guidance as needed.</li>
+</ul>
+
+<h3 id="targeting">Targeting, preview APIs, and publishing</h3>
+
+<p>
+  The N Developer Preview provides a development-only system and Android
+  library that <strong>does not have a standard API level</strong>. If you want
+  to opt out of compatibility behaviors to test your app (which is strongly
+  recommended), you can target the preview version of Android N by setting your
+  app's <code><a href=
+  "{@docRoot}preview/setup-sdk.html#create-update">targetSdkVersion</a></code>
+  to <code>“N”</code>.
+</p>
+
+<p>
+  The Android N Developer Preview delivers <strong>preview APIs</strong>
+  &mdash; the APIs will not be official until the final SDK is released,
+  currently planned for the third quarter of 2016. This means that you can
+  <strong>expect minor API changes</strong> over time, especially during
+  initial weeks of the program. We’ll provide a summary of changes to you with
+  each update of the Android N Developer Preview.
+</p>
+
+<p class="note">
+  <strong>Note</strong>: Although preview APIs may change, underlying
+  system behaviors are stable and ready for testing against
+  right away.
+</p>
+
+<p>
+  Google Play <strong>prevents publishing of apps targeting the N Developer
+  Preview</strong>. When the Android N final SDK is available, you’ll be able
+  to target the official Android N API level and publish your app to Google
+  Play via the alpha and beta release channels. Meanwhile, if you want to
+  distribute an app targeting Android N to testers, you can do so via email or
+  by direct download from your site.
+</p>
+
+<p>
+  At the full release of Android N to AOSP and OEMs, planned for Q3 2016,
+  you’ll be able to publish your apps targeting Android N to the public release
+  channel in Google Play.
+</p>
+
+
+<h2 id="how_to_get_started">How to get started</h2>
+
+<p>
+  To get started testing your app with Android N:
+</p>
+
+<ol>
+  <li> Review the <a href="{@docRoot}preview/api-overview.html">API Overview</a>
+  and <a href="{@docRoot}preview/behavior-changes.html">Behavior Changes</a> to
+  get an idea of what's new and how it affects your apps. In particular,
+  learn about the new <a href="{@docRoot}preview/features/notification-updates.html"
+  >notifications</a> features and
+  <a href="{@docRoot}preview/features/multi-window.html">multi-window support</a>.</li>
+  <li> Set up your environment by following the instructions for <a
+  href="{@docRoot}preview/setup-sdk.html">Setting up the Preview SDK</a>
+  and configuring test devices.</li>
+  <li> Follow the <a href="https://developers.google.com/android/nexus/images">flashing
+  instructions</a> to flash the latest Android N system image for your device. </li>
+  <li> Review the <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API Reference</a>
+  and <a href="{@docRoot}preview/samples.html">Android N samples</a> to gain more
+  insight into new API features and how to use them in your app.
+  <li> Join the <a href="{@docRoot}preview/dev-community">Android N
+  Developer Community</a> to get the latest news and connect with other
+  developers working with the new platform.</li>
+</ol>
+
+<p>
+  Thank you for your participation in the Android N Developer Preview program!
 </p>
diff --git a/docs/html/preview/preview_toc.cs b/docs/html/preview/preview_toc.cs
index 90df59e..f96bf1f 100644
--- a/docs/html/preview/preview_toc.cs
+++ b/docs/html/preview/preview_toc.cs
@@ -14,17 +14,10 @@
 
 
   <li class="nav-section">
-    <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/download.html"
-      es-lang="Descargas"
-      ja-lang="ダウンロード"
-      ko-lang="다운로드"
-      pt-br-lang="Downloads"
-      ru-lang="Загрузки"
-      zh-cn-lang="下载"
-      zh-tw-lang="下載">
-      Downloads</a></div>
+    <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/support.html">
+      Support and Release Notes</a></div>
   </li>
-
+  
   <li class="nav-section">
     <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/setup-sdk.html"
       es-lang="Configurar el SDK de la versión preliminar"
@@ -34,29 +27,29 @@
       ru-lang="Настройка пакета SDK Preview"
       zh-cn-lang="设置预览版 SDK"
       zh-tw-lang="設定預覽版 SDK">
-      Set up the SDK</a></div>
+      Set Up to Develop</a></div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/download.html">
+      Test on a Device</a></div>
   </li>
 
+
   <li class="nav-section">
-    <div class="nav-section-header"><a href="<?cs var:toroot ?>preview/testing/guide.html"
-      es-lang="Guía de prueba"
-      ja-lang="テストガイド"
-      ko-lang="테스트 가이드"
-      pt-br-lang="Guia de teste"
-      ru-lang="Руководство по тестированию"
-      zh-cn-lang="测试指南"
-      zh-tw-lang="測試指南">
-      Testing Guide</a></div>
+    <div class="nav-section-header"><a href="<?cs var:toroot ?>preview/behavior-changes.html"
+      es-lang="Cambios en los comportamientos"
+      ja-lang="動作の変更点"
+      ko-lang="동작 변경"
+      pt-br-lang="Mudanças de comportamento"
+      ru-lang="Изменения в работе"
+      zh-cn-lang="行为变更"
+      zh-tw-lang="行為變更">Behavior Changes
+       </a></div>
       <ul>
-        <li><a href="<?cs var:toroot ?>preview/testing/performance.html"
-      es-lang="Prueba de rendimiento de video"
-      ja-lang="表示パフォーマンスのテスト"
-      ko-lang="표시 성능 테스트"
-      pt-br-lang="Teste de desempenho de exibição"
-      ru-lang="Тестирование скорости отображения"
-      zh-cn-lang="测试显示性能"
-      zh-tw-lang="測試顯示效能">
-      Performance Testing</a></li>
+        <li><a href="<?cs var:toroot ?>preview/features/background-optimization.html"
+        >Background Optimizations</a></li>
+        <li><a href="<?cs var:toroot ?>preview/features/multilingual-support.html"
+        >Language and Locale</a></li>
       </ul>
   </li>
 
@@ -68,59 +61,50 @@
       pt-br-lang="Visão geral da API"
       ru-lang="Обзор API-интерфейсов"
       zh-cn-lang="API 概览"
-      zh-tw-lang="API 總覽">API Overview
+      zh-tw-lang="API 總覽">Android N for Developers
       </a></div>
       <ul>
-        <li><a href="<?cs var:toroot ?>preview/features/runtime-permissions.html"
-      es-lang="Permisos"
-      ja-lang="パーミッション"
-      ko-lang="권한"
-      pt-br-lang="Permissões"
-      ru-lang="Разрешения"
-      zh-cn-lang="权限"
-      zh-tw-lang="權限">Permissions
-          </a></li>
-        <li><a href="<?cs var:toroot ?>preview/features/app-linking.html"
-      es-lang="Vínculos de la aplicación"
-      ja-lang="App Links"
-      ko-lang="앱 링크"
-      pt-br-lang="Links de aplicativos"
-      ru-lang="Связи приложений"
-      zh-cn-lang="应用链接"
-      zh-tw-lang="應用程式連結">
-      App Links</a></li>
-        <li><a href="<?cs var:toroot ?>preview/backup/index.html"
-      es-lang="Copia de seguridad automática para aplicaciones"
-      ja-lang="アプリの自動バックアップ"
-      ko-lang="앱용 자동 백업"
-      pt-br-lang="Backup automático para aplicativos"
-      ru-lang="Автоматическое резервное копирование для приложений"
-      zh-cn-lang="自动备份应用"
-      zh-tw-lang="針對應用程式進行自動備份">
-          Auto Backup for Apps</a></li>
-        <li><a href="<?cs var:toroot ?>preview/features/power-mgmt.html"
-      es-lang="Optimizaciones de ahorro de energía"
-      ja-lang="省電力の最適化"
-      ko-lang="절전 최적화"
-      pt-br-lang="Otimizações de economia de energia"
-      ru-lang="Оптимизация экономии энергии"
-      zh-cn-lang="节能优化"
-      zh-tw-lang="省電最佳化">
-      Power-Saving Optimizations</a></li>
+
+        <li><a href="<?cs var:toroot ?>preview/features/multi-window.html"
+        >Multi-Window Support</a></li>
+
+        <li><a href="<?cs var:toroot ?>preview/features/notification-updates.html"
+        >Notifications</a></li>
+
+        <li><a href="<?cs var:toroot ?>preview/features/data-saver.html"
+        >Data Saver</a></li>
+
+        <li><a href="<?cs var:toroot ?>preview/features/tv-recording-api.html"
+        >TV Recording</a></li>
+
+        <li><a href="<?cs var:toroot ?>preview/features/security-config.html"
+        >Network Security Configuration</a></li>
+
+        <li><a href="<?cs var:toroot ?>preview/features/icu4j-framework.html"
+        >ICU4J Support</a></li>
+        
+        <li><a href="<?cs var:toroot ?>preview/j8-jack.html"
+        >Java 8 Language Features</a></li>
+
+        <li><a href="<?cs var:toroot ?>preview/features/afw.html"
+        >Android for Work Updates</a></li>
       </ul>
   </li>
 
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/behavior-changes.html"
-      es-lang="Cambios en los comportamientos"
-      ja-lang="動作の変更点"
-      ko-lang="동작 변경"
-      pt-br-lang="Mudanças de comportamento"
-      ru-lang="Изменения в работе"
-      zh-cn-lang="行为变更"
-      zh-tw-lang="行為變更">Behavior Changes
-       </a></div>
-  </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
   <li class="nav-section">
     <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/samples.html"
       es-lang="Ejemplos"
@@ -134,11 +118,6 @@
   </li>
 
   <li class="nav-section">
-    <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/support.html">
-      Support & Release Notes</a></div>
-  </li>
-
-  <li class="nav-section">
     <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/license.html"
       es-lang="Contrato de licencia"
       ja-lang="使用許諾契約"
diff --git a/docs/html/preview/samples.jd b/docs/html/preview/samples.jd
index 7d47e0e..1544d9c 100644
--- a/docs/html/preview/samples.jd
+++ b/docs/html/preview/samples.jd
@@ -1,10 +1,12 @@
 page.title=Samples
-page.image=images/cards/samples-new_2x.png
+page.tags="preview", "samples", "android"
+page.image=images/cards/card-n-samples_2x.png
 @jd:body
 
 <p>
-  The following code samples are provided for the M Developer Preview. To download
-  the samples in Android Studio, select the <b>File > Import Samples</b> menu option.
+  The following code samples are provided for Android N. To
+  download the samples in Android Studio, select the <b>File &gt; Import
+  Samples</b> menu option.
 </p>
 
 <p class="note">
@@ -13,58 +15,71 @@
 </p>
 
 
-<h3 id="RuntimePermissions">Runtime Permissions</h3>
-
+<h3 id="mw">Multi-Window Playground</h3>
+<img src="{@docRoot}preview/images/sample-multiwindow.png" style="float: left; padding-right: 0.5em" height="250" width="156"/>
 <p>
- Android M changes the way system permissions work. Users are asked to approve permission
- requests at runtime instead of during installation. This sample shows how to request these
- permissions.
+  This sample demonstrates how to take advantage of multiple window
+  user interfaces with your app.
+</p>
+<p>
+  <a href="https://github.com/googlesamples/android-MultiWindowPlayground">
+  Get it on GitHub</a>
 </p>
 
-<p><a href="https://github.com/googlesamples/android-RuntimePermissions">Get it on GitHub</a></p>
-
-<h3 id="ConfirmCredentials">Confirm Credential</h3>
-
+<div style="clear: both;"></div>
+<h3 id="an">Active Notifications</h3>
+<img src="{@docRoot}preview/images/sample-activenotifications.png" style="float: left; padding-right: 0.5em" height="250" width="141" />
 <p>
- This sample demonstrates how to use device credentials as an authentication method in your app.
+  This is a pre-existing sample which shows a simple service that sends
+  notifications using NotificationCompat. Each unread conversation from a user
+  is sent as a distinct notification.
+</p>
+<p>
+  This sample has been updated to take advantage of new notification features
+  available in Android N.
+</p>
+<p>
+  <a href="https://github.com/googlesamples/android-ActiveNotifications">
+  Get it on GitHub</a>
 </p>
 
-<p><a href="https://github.com/googlesamples/android-ConfirmCredential">Get it on
-GitHub</a></p>
-
-<h3 id="FingerprintDialog">Fingerprint Dialog</h3>
-
+<div style="clear: both;"></div>
+<h3 id="ms">Messaging Service</h3>
+<img src="{@docRoot}preview/images/sample-messagingservice.png" style="float: left; padding-right: 0.5em" height="250" width="150" />
 <p>
- This sample demonstrates how to recognize registered fingerprints to authenticate the user
- in your app.
+  This is a pre-existing sample which demonstrates how to use
+  NotificationManager to tell how many notifications an application is currently
+  showing.
+</p>
+<p>
+  This sample has been updated to take advantage of new notification features
+  available in Android N.
+</p>
+<p>
+  <a href="https://github.com/googlesamples/android-MessagingService">
+  Get it on GitHub</a>
 </p>
 
-<p><a href="https://github.com/googlesamples/android-FingerprintDialog">Get it on GitHub</a></p>
-
-<h3 id="AutomaticBackup">Auto Backup for Apps</h3>
-
+<div style="clear: both;"></div>
+<h3 id="fbe">Direct Boot</h3>
+<img src="{@docRoot}preview/images/sample-directboot.png" style="float: left; padding-right: 0.5em" height="250" width="141" />
 <p>
- Android M introduces automatic backup for app settings. This sample demonstrates how to add
- filtering rules to an app in order to manage settings backup.
+  This sample demonstrates how to store and access data in a device encrypted
+  storage which is always available while the device is booted.
+</p>
+<p>
+  <a href="https://github.com/googlesamples/android-DirectBoot">
+  Get it on GitHub</a>
 </p>
 
-<p><a href="https://github.com/googlesamples/android-AutoBackupForApps">Get it on GitHub</a></p>
-
-<h3 id="CameraRaw">Camera 2 Raw</h3>
-
+<div style="clear: both;"></div>
+<h3 id="sda">Scoped Directory Access</h3>
+<img src="{@docRoot}preview/images/sample-scopeddirectoryaccess.png" style="float: left; padding-right: 0.5em" height="250" width="141" />
 <p>
-  Demonstrates how to use the <code>Camera2</code> API to capture RAW camera buffers and save
-  them as <code>DNG</code> files.
+  This sample demonstrates how to read and write data from specific
+  directories, while requiring fewer permissions.
 </p>
-
-<p><a href="https://github.com/googlesamples/android-Camera2Raw">Get it on GitHub</a></p>
-
-<h3 id="ActiveNotification">Active Notification</h3>
-
 <p>
-  This sample demonstrates how the
-  <a href="{@docRoot}reference/android/app/NotificationManager.html"><code>NotificationManager</code></a>
-  can tell you how many notifications your app is currently showing.
-</p>
-
-<p><a href="https://github.com/googlesamples/android-ActiveNotifications">Get it on GitHub</a></p>
+  <a href="https://github.com/googlesamples/android-ScopedDirectoryAccess">
+  Get it on GitHub</a>
+</p>
\ No newline at end of file
diff --git a/docs/html/preview/setup-sdk.jd b/docs/html/preview/setup-sdk.jd
index 7a2a666..bc40ebd 100644
--- a/docs/html/preview/setup-sdk.jd
+++ b/docs/html/preview/setup-sdk.jd
@@ -1,178 +1,232 @@
-page.title=Set Up the SDK
-page.image=images/cards/card-set-up_16-9_2x.png
+page.title=Set Up the Preview
+meta.keywords="preview", "android"
+page.tags="preview", "developer preview"
+page.image=images/cards/card-n-sdk_2x.png
 
 @jd:body
 
 
 <div id="qv-wrapper">
   <div id="qv">
-    <h2>In this document</h2>
-      <ol>
-        <li><a href="#get-as13">Get Android Studio 1.3</a></li>
-        <li><a href="#get-sdk">Get the Android 6.0 SDK</a></li>
-        <li><a href="#create-update">Create or Update a Project</a></li>
-        <li><a href="#setup-test">Set Up for Testing</a></li>
-      </ol>
+<ol>
+  <li><a href="#get-as13">Get Android Studio 2.1</a></li>
+  <li><a href="#get-sdk">Get the Android N SDK</a>
+    <ol>
+      <li><a href="#docs-dl">Reference documentation</a>
+    </ol>
+  </li>
+  <li><a href="#java8">Get the Java 8 JDK and JRE</a></li>
+  <li><a href="#create-update">Update or Create a Project</a></li>
+  <li><a href="#next">Next Steps</a></li>
+</ol>
   </div>
 </div>
 
-<p>With Developer Preview 3, the <strong>official Android 6.0 SDK is now available</strong> from the Android SDK
-Manager. This document assumes that you are familiar with Android app development, such
-as using the Android SDK Manager and creating projects. If you are new to
-Android, see <a href="{@docRoot}training/basics/firstapp/index.html">Building Your First
-App</a> training lesson first.</p>
+<p>To develop apps for the Android N Preview, you need to make some updates
+to your developer environment, as described on this page.</p>
+
+<p>To simply test your app's compatibility on the
+Android N system image, follow the guide to <a
+href="{@docRoot}preview/download.html">Test on an Android N Device</a>.</p>
+
+<img src="{@docRoot}preview/images/n-preview-setup.png" width="700" alt="" />
 
 
-<h2 id="get-as13">Get Android Studio 1.3</h2>
+<h2 id="get-as13">Get Android Studio 2.1 (preview)</h2>
 
-<p>
-  It is highly recommended that you install the Android Studio 1.3 to work best with
-  the Android 6.0 SDK. Please update your Android Studio installation to version 1.3 or
-  higher, or follow the instructions for
-  <a href="{@docRoot}sdk/installing/index.html?pkg=studio">Installing Android Studio</a>.
+<p>The Android N platform adds support for <a
+href="{@docRoot}preview/j8-jack.html">Java 8 language features</a>,
+which require a new compiler called Jack. The latest version of Jack
+is currently supported only in Android Studio 2.1. So if you want to
+use Java 8 language features, you need to use Android Studio 2.1 to
+build your app. Otherwise, you don't need to use the Jack compiler, but you
+still need to update to JDK 8 to compile against the Android N platform,
+as described below.
 </p>
 
+<iframe width="400" height="225" src="//www.youtube.com/embed/SBbWGxXCMqQ?autohide=1&amp;showinfo=0" frameborder="0" allowfullscreen="" style="float: right; margin: 0 0 20px 20px;"></iframe>
 
-<h2 id="get-sdk">Get the Android 6.0 SDK</h2>
+<p>Android Studio 2.1 is currently available as a preview in the canary
+release channel. If you already
+have Android Studio and don't want to update to the canary channel, you can
+download Android Studio 2.1 as a separate installation and use it
+for development with Android N, leaving your primary Android Studio
+environment unaffected.</p>
 
-<p>To add the Android 6.0 SDK components to your development environment:</p>
+<p>To download Android Studio 2.1 as a separate installation, follow these
+steps (or if you want to receive Android Studio 2.1 as an update to your
+existing installation, skip to step 4):</p>
 
 <ol>
-  <li>Launch Android Studio 1.3 or higher.
+  <li>Edit the name of your
+  existing Android Studio installation and append the version number. This way,
+  when you install the new version, it will not override the existing one.</li>
+  <li>Download the appropriate ZIP file for your operating system from the
+    <a href="http://tools.android.com/download/studio/canary/latest"
+    >canary channel download page</a>.
   </li>
-
-  <li>Open the <strong>Settings</strong> window (on Windows, you can do this
-  by choosing <strong>File &gt; Settings</strong>). Choose the
-  <strong>Appearance &amp; Behavior &gt; System
-  Settings &gt; Updates</strong> panel.
-
-    <p class="aside">On Mac OS X, you can find the <strong>Appearance &amp;
-    Behavior</strong> panel
-    in Android Studio's <strong>Preferences</strong> window.</p>
+  <li>Unzip the package and move the Android Studio 2.1 contents to the
+    appropriate location for applications on your system, then launch it.</li>
+  <li>Open the Settings dialog
+    (<strong>File &gt; Settings</strong> on Windows/Linux, or
+    <strong>Android Studio &gt; Preferences</strong> on Mac). In the left
+    panel, select <strong>Appearance &amp; Behavior &gt; System Settings &gt;
+    Updates</strong>.
   </li>
-
-  <li>On the <strong>Updates</strong> panel, choose the option for
-  <strong>Automatically check updates for Android SDK: Preview Channel</strong>.
-  </li>
-
-  <li>Launch the <strong>Android SDK Manager</strong>. (With Android Studio 1.3,
-  the SDK Manager is integrated into Android Studio instead of being a
-  standalone application.)
-  </li>
-
-  <li>Under the <strong>Platforms</strong> section, select <strong>Android 6.0</strong>.
-  </li>
-
-  <li>In the <strong>Tools</strong> section, select the latest Android <strong>
-    SDK Tools</strong>, <strong>Platform-tools</strong>, and
-    <strong>Build-tools</strong>.
-  </li>
-
-  <li>Click <strong>Install packages</strong> and accept the licensing
-    agreement for all of the packages.
-  </li>
-
-  <li>Verify that the Android 6.0 SDK is installed by opening the <strong>
-    Settings</strong> window and choosing the <strong>Appearance &amp; Behavior
-    &gt; System Settings &gt; Android SDK</strong> panel.</li>
-
-  <li>On the <strong>Android SDK</strong> panel, choose
-    the <strong>SDK Platforms</strong> tab. <strong>Android 6.0</strong> should be listed as <em>Installed</em>. Also, open the
-    <strong>SDK Tools</strong> tab to verify that the latest tools are
-    installed.
+  <li>On the Updates panel, select the <strong>Automatically
+    check updates for</strong> check box and select
+    <strong>Canary Channel</strong> from the drop-down list.
   </li>
 </ol>
-<p>After completing these steps, the preview components are available in your development
-  environment. </p>
+
+<p>Keep this settings window open for the next step.</p>
 
 
-<h2 id="create-update">Create or Update a Project</h2>
+<h2 id="get-sdk">Get the N Preview SDK</h2>
+
+<p>To start developing with Android N APIs, you need to install the
+Android N Preview SDK in Android Studio as follows:</p>
+
+<ol>
+  <li>While still viewing the Updates panel (step 4 from above),
+  select the <strong>Automatically
+    check updates for Android SDK</strong> check box and select
+    <strong>Preview Channel</strong> from the drop-down list.
+  </li>
+  <li>Click <strong>Check Now</strong>.</li>
+
+  <li>In the left panel, select <strong>Appearance &amp; Behavior &gt;
+  System Settings &gt; Android SDK</strong>.
+
+  <li>Click the <strong>SDK Platforms</strong> tab, then select the
+  <strong>Android N Preview</strong> check box.</li>
+
+  <li>Click the <strong>SDK Tools</strong> tab, then select the
+    <strong>Android SDK Build Tools</strong>, <strong>Android SDK
+    Platform-Tools</strong>, and <strong>Android SDK Tools</strong> check
+    boxes.
+  </li>
+
+  <li>Click <strong>OK</strong>, then accept the licensing
+    agreements for any packages that need to be installed.
+  </li>
+</ol>
+
+<h3 id="docs-dl">Get the N Preview reference documentation</h3>
 
 <p>
-  In order to use the preview APIs, you must create or update a development project to use
-  the preview components.
+  Detailed information about the Android N APIs is available in the N Preview
+  reference documentation, which you can download from the following table.
+  This package contains an abridged, offline version of the Android developer
+  web site, and includes an updated API reference for the Android N APIs and an
+  API difference report.
 </p>
 
+<table>
+  <tr>
+    <th scope="col">Documentation</th>
+    <th scope="col">Checksums</th>
+  </tr>
+  <tr>
+    <td style="white-space: nowrap">
+    <a href="{@docRoot}shareables/preview/n-preview-1-docs.zip"
+      >n-preview-1-docs.zip</a></td>
+    <td width="100%">
+      MD5: 4ab33ccbe698f46f125cc5b807cf9c2f<br>
+      SHA-1: 6a3880b3ccd19614daae5a4d0698ea6ae11c20a5
+    </td>
+  </tr>
+<table>
 
-<h3 id="create">Create a new project</h3>
+
+
+<h2 id="java8">Get the Java 8 JDK and JRE</h2>
+
+<p>To compile your app against the Android N platform, you need to use
+the Java 8 Developer Kit (JDK 8), and in order to use some tools with Android
+Studio 2.1, you need to install the Java 8 Runtime Environment (JRE 8). So, if
+you don't have the latest version of each already, download JDK 8 and JRE 8
+now.</p>
+
+<p>Then set the JDK version in Android Studio as follows:</p>
+
+<ol>
+  <li>Open an Android project in Android Studio, then open the
+    Project Structure dialog by selecting <strong>File &gt;
+        Project Structure</strong>. (Alternatively, you can set the default
+        for all projects by selecting <strong>File &gt; Other Settings &gt;
+        Default Project Structure</strong>.)
+   </li>
+   <li>In the left panel of the dialog, click <strong>SDK Location</strong>.
+   </li>
+   <li>In the <strong>JDK Location</strong> field, enter the location of the
+    Java 8 JDK (click the button on the right
+    to browse your files), then click <strong>OK</strong>.
+   </li>
+</ol>
+
+<img src="{@docRoot}preview/images/studio-jdk-location.jpg" width="700"
+  alt="" />
+
+
+<h2 id="create-update">Update or Create a Project</h2>
 
 <p>
-  We recommend using Android Studio to create a project with the preview. Follow the steps
-  described in <a href="{@docRoot}sdk/installing/create-project.html">Creating a Project</a>
-  until you arrive at the <em>Form Factors</em> screen in the project wizard. Then perform
-  the following steps to create a project configured for the preview.
+  To use the Android N APIs, your project must be configured appropriately.
 </p>
 
-<ul>
-  <li>Check <strong>Phone and Tablet</strong>.</li>
-  <li>Select <strong>API 23: Android 6.0 (Marshmallow)</strong> in <strong>Minimum
-    SDK</strong>.</li>
-</ul>
+<p>If you plan to use Java 8 language features, you should also read
+<a href="{@docRoot}preview/j8-jack.html">Java 8 Language Features</a>
+for information about the supported Java 8 features and
+how to configure your project with the Jack compiler.</p>
 
 
 <h3 id="update">Update an existing project</h3>
 
-<p>
-  For existing projects, if you are using Android 6.0 APIs (API level 23) you must
-  modify the project configuration. In your development environment, open the
-  <code>build.gradle</code> file for your module and
-  set these values as follows:
+<p>Open the
+  <code>build.gradle</code> file for your module and update the values as
+  follows:
 </p>
 
-<ul>
-  <li><code>compileSdkVersion</code> is set to <code>'23'</code></li>
-  <li><code>targetSdkVersion</code> is set to <code>'23'</code></li>
-</ul>
+<pre>
+android {
+  compileSdkVersion <strong>'android-N'</strong>
+  buildToolsVersion <strong>'24.0.0-rc1'</strong>
+  ...
+
+  defaultConfig {
+     minSdkVersion <strong>'N'</strong>
+     targetSdkVersion <strong>'N'</strong>
+     ...
+  }
+  ...
+}</pre>
 
 
-<h2 id="setup-test">Set Up for Testing</h2>
+<h3 id="create">Create a new project</h3>
 
-<p>
-  Testing an app with the preview requires that you have a device or virtual device configured with
-  the preview version of the platform. If you have a compatible device, you can install the preview
-  platform for testing. Otherwise, you can configure a virtual device for testing.
-</p>
 
-<h3 id="setup-device">Set up a physical device</h3>
-
-<p>
-  If you have a Nexus 5, Nexus 6, Nexus 9, or Android TV, you can install a preview
-  system image on these devices for testing your app.
-  You can set up a virtual device with the preview version of the platform from within Android Studio
-  using the Android Virtual Device Manager tool.
-</p>
-
-<p class="caution">
-  <strong>Important:</strong> Installing a preview image on a device <em>removes all data from
-  it</em>, so you should backup any data before installing a preview image.
-</p>
-
-<h3 id="setupAVD">Set up a virtual device</h3>
-
-<p>
-  You can set up virtual device with the preview version of the platform from within Android Studio
-  using the Android Virtual Device Manager tool.
-</p>
-
-<p>To create an AVD with the AVD Manager:</p>
+<p>To create a new project for development with the Android N Preview SDK:</p>
 
 <ol>
-  <li>Install the Preview SDK in your development environment, as described
-      in <a href="{@docRoot}preview/setup-sdk.html">Setting Up the Preview
-      SDK.</a></li>
-  <li>Follow the steps in
-      <a href="{@docRoot}tools/devices/managing-avds.html">Managing AVDs with AVD
-      Manager</a>. Use the following settings:
-    <ul>
-      <li><strong>Device:</strong> Nexus 5, Nexus 6, Nexus 9, or Android TV</li>
-      <li><strong>Target:</strong>
-       Android M (Preview) - API Level M</li>
-      <li><strong>ABI:</strong> x86</li>
-    </ul>
+  <li>Click <strong>File > New Project</strong>. and follow the steps until
+  you reach the Target Android Devices page.
   </li>
+  <li>On this page, select <strong>Phone and Tablet</strong> option.</li>
+  <li>Under <strong>Phone and Tablet</strong> option, in the <strong>Minimum
+    SDK</strong> option list, select
+    <strong>N: Android API 23, N Preview (Preview)</strong>.</li>
 </ol>
 
-<p>
-  For more information about creating virtual devices for testing, see <a href=
-  "{@docRoot}tools/devices/index.html">Managing Virtual Devices</a>.
-</p>
+
+<h2 id="next">Next Steps</h2>
+
+<ul>
+  <li>Follow the guide to <a
+href="{@docRoot}preview/download.html">Test on an Android N Device</a>.</li>
+  <li>Learn more about the Android N platform with
+<a href="{@docRoot}preview/behavior-changes.html">Behavior Changes</a>
+and <a href="{@docRoot}preview/api-overview.html">Android N APIs
+and Features</a>.</li>
+</ul>
+
diff --git a/docs/html/preview/support.jd b/docs/html/preview/support.jd
index cfd9467..3945ecd 100644
--- a/docs/html/preview/support.jd
+++ b/docs/html/preview/support.jd
@@ -1,533 +1,382 @@
 page.title=Support and Release Notes
+meta.keywords="preview", "android"
 page.tags="preview", "developer preview"
-page.image=images/cards/card-support_16-9_2x.png
+page.image=images/cards/card-n-support_2x.png
 
 @jd:body
 
-<div class="cols" style=
-"background-color:#f2daf5; padding: 5px 0;margin-bottom:1em; text-align:center;">
-<h3>
-    Developer Preview 3 is now available
-  </h3>
-  <p>Includes final SDK and near-final system images</p>
-   <div style="margin:auto 1em">
- <ul class="dac-section-links">
-    <li class="dac-section-link">
-      <a href="#preview3-notes">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Read the Notes</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="#preview3-get">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Get the Update</a>
-    </li>
-
-    <li class="dac-section-link">
-      <a href="https://code.google.com/p/android-developer-preview/">
-      <span class="dac-sprite dac-auto-chevron"></span>
-      Report Issues</a>
-    </li>
-  </ul>
-  </div>
-</div>
-
 <p>
   Two primary support channels are available to you when developing and testing
-  with the Android M Developer Preview. If you've encountered bugs or have
-  feedback about the M Developer Preview, you can <a href=
-  "https://code.google.com/p/android-developer-preview/">create an issue</a> on
-  our issue tracker. We'll triage the issue for further review and provide
-  updates as needed.
+  with the Android N Developer Preview: Please file bugs at <a href=
+  "https://developer.android.com/preview/bug">https://developer.android.com/preview/bug</a> for
+  device-specific, system, and Google App bugs. For issues in other apps,
+  please contact the developer directly.
 </p>
 
-<p>
-  To discuss issues or ideas with other developers working with Android M, join
-  the <a href="http://g.co/dev/AndroidMDevPreview">M Developer Preview Google+
-  community</a>.
-</p>
+<p>To discuss issues or ideas with other developers working with Android N, join the
+<a href="{@docRoot}preview/dev-community">Developer Preview Google+ community</a>.</p>
 
-<h2 id="preview3-notes">
-  Developer Preview 3
-</h2>
 
-<div class="wrap">
-  <div class="cols">
-    <div class="col-9of16">
-      <p>
-        <em>Date: August 2015<br>
-        Build: MPA44I<br>
-        Hardware support: Nexus 5, 6, 9, Player<br>
-        Emulator support: x86 &amp; ARM 32/64-bit<br>
-        Google Play services: 7.8</em>
-      </p>
-    </div>
-  </div>
-</div>
-
-<p>
-  Developer Preview 3 is the <strong>final incremental update</strong>
-  to the Android M preview platform that was originally released in May 2015.
-  The update includes <strong>final APIs and the official Android 6.0 SDK</strong>,
-  as well as near-final system images for testing your apps. The
-  updated system images bring a variety of fixes and enhancements across
-  the system, including those related to issues reported by developers
-  through the external issue tracker.
-</p>
-
-<p>
-  If you are currently developing or testing on Android M, you should <strong>update
-  your environment</strong> as soon as possible, so that
-  you can begin <strong>final compatibility testing</strong> in preparation for
-  the public release to device manufacturers later this year.</p>
-
-<p class="important">Updating to the Android 6.0 SDK and the latest
-   system images 3 ensures that you are building against final
-   platform APIs in <strong>API level 23</strong> and testing
-   against final behaviors. If you are just getting started,
-   follow the instructions in <a href=
-  "/preview/setup-sdk.html">Set up the Preview SDK</a>.
-</p>
-
-<h3>
-  What's included
-</h3>
-
-<p>
-  Developer Preview 3 includes the official Android 6.0
-  SDK as well as updated preview system images, documentation,
-  and samples for developing against the Android 6.0
-  development platform.
-</p>
-
-<ul>
-  <li>
-    <strong>SDK platform</strong> and <strong>system images</strong> (Nexus and
-    emulator) for building and testing. You can download the Android 6.0 SDK and tools from
-    the SDK Manager, and the system images are available by over-the-air (OTA)
-    update or download (see below).
-  </li>
-
-  <li>
-    <strong>Updated documentation</strong>. The <a href=
-    "{@docRoot}preview/behavior-changes.html">Behavior Changes</a>, <a href=
-    "{@docRoot}preview/api-overview.html">API Overview</a>, and <a href=
-    "{@docRoot}preview/features/runtime-permissions.html">Permissions</a> documents have
-    been updated to reflect the latest changes in the platform. An updated
-    <a href="/preview/download.html">Developer Documentation download
-    package</a> is available, including full reference docs and API diff
-    reports. Reference documentation is also now <a
-    href="{@docRoot}reference/packages.html">available online</a>.
-  </li>
-
-  <li>
-    <strong>Translations</strong> of the documentation are available. Use
-    the language selector at the bottom right corner of any page to switch
-    languages. Note that some of the translated docs are not yet updated for
-    Developer Preview 3.
-  </li>
-
-  <li>The <a href="{@docRoot}preview/samples.html">Android M code samples</a> are also
-  updated to account for API and behavior changes:
-    <ul>
-      <li>
-        <a href=
-        "https://github.com/googlesamples/android-RuntimePermissions">RuntimePermissions</a>
-        and <a href=
-        "https://github.com/googlesamples/android-RuntimePermissionsBasic">RuntimePermissionsBasic</a>
-        are updated to reflect latest permissions API changes, including
-        <code>shouldShowRequestPermissionRationale()</code>.
-      </li>
-      <li>
-        Other samples are updated to support runtime permissions.
-      </li>
-    </ul>
-  </li>
-</ul>
-
-<h3 id="changes">
-  Key changes
-</h3>
-<ul>
-  <li>General
-    <ul>
-      <li>Updated the Fingerprint API to enables better error reporting,
-        better fingerprint enrollment experience, and enumeration support for greater
-        reliability.</li>
-      <li>Modified app access to BLE and Wi-Fi scans to require the location permisssion when they
-        target Android 6.0 (API level 23) or higher. Apps targeting API 22 or earlier can
-        still perform BTLE and WiFi scans, but only when they are in the foreground. While in the background, those apps will get no results from BTLE and WiFi scans.</li>
-    </ul>
-  </li>
-  <li>Permission changes
-    <ul>
-      <li>Updated the user interface for permissions and enhanced some of the permissions
-        behaviors.</li>
-      <li>The {@link android.Manifest.permission#GET_ACCOUNTS} permission is now a member of the
-        {@link android.Manifest.permission_group#CONTACTS} permission group and it has a
-        {@code android:protectionLevel} of {@code dangerous}. This change means that when
-        targeting Android 6.0 (API level 23), you must check for and request this permission if
-        your app requires it.
-      </li>
-
-      <li>The {@code android.permission.READ_PROFILE} and {@code android.permission.WRITE_PROFILE}
-       permissions have been removed from the {@link android.Manifest.permission_group#CONTACTS}
-       permission group.
-      </li>
-    </ul>
-  </li>
-</ul>
-
-<p>
-  For a complete list of changes, including renamed and removed APIs, see the API Diff report for
-  <a href="{@docRoot}sdk/api_diff/23/changes.html">API level 22 to 23</a>.
-</p>
-
-<h3 id="ki">
-  Known issues
-</h3>
-
-<ul>
-  <li>General issues:
-    <ul>
-      <li>On LTE devices, including Nexus 9, GPS is not functioning properly, which may
-        interfere with navigation services.
-      </li>
-      <li>During Hangouts calls, users may experience distorted or low audio on some devices.
-      </li>
-      <li>The Google Apps Device Policy app bundled with MPA44G is unable to set up an Android for
-Work Profile, so you cannot create a new Work Profile with that version of the app. This issue is
-resolved in the Google Apps Device Policy app bundled with MPA44I. Other apps that provide Android
-for Work functionality remain unaffected on either build.
-      </li>
-    </ul>
-  </li>
-</ul>
-
-<p>
-  For a complete list of reported issues, please refer to the <a href=
-  "https://code.google.com/p/android/issues/list">open issues list</a> on the
-  Developer Preview <a href=
-  "https://code.google.com/p/android-developer-preview/">issue tracker</a>.
-</p>
-
-<h3 id="preview3-get">
-  Get Developer Preview 3
-</h3>
-
-<p>
-  You can download the official Android 6.0 SDK platform and
-  Developer Preview 3 emulator images from the SDK Manager.
-</p>
-
-<p>
-  Developer Preview 3 system images for supported Nexus devices are available
-  by download and by over-the-air (OTA) update. The OTA update is available
-  only to supported devices that are currently running a Developer Preview build.
-  If your device is running a Developer Preview build, you should automatically receive
-  the OTA update within a few days of availability.
-</p>
-
-<p>
-  For instructions on how to download and flash your device to the latest Developer
-  Preview, see the links and instructions on the <a href=
-  "{@docRoot}preview/download.html">Downloads</a> page.
-</p>
-
-<p>
-  For instructions on how to start developing and testing with Android 6.0
-  Marshmallow, read <a href="{@docRoot}preview/setup-sdk.html">Setting
-  up the SDK</a>.
-</p>
-
-<h2 id="preview2-notes">
-  Developer Preview 2
-</h2>
-
-<div class="wrap">
-  <div class="cols">
-    <div class="col-9of16">
-      <p>
-        <em>Date: July 2015<br>
-        Builds: MPZ79M (Nexus 5, 6, 9), MPZ79N (Nexus Player)<br>
-        Hardware support: Nexus 5, 6, 9, Player<br>
-        Emulator support: x86 &amp; ARM 32/64-bit<br>
-        Google Play services: 7.6</em>
-      </p>
-    </div>
-  </div>
-</div>
-
-<p>
-  Android M Developer Preview 2 is an <strong>incremental update</strong> to
-  the Android M preview platform that was originally released in May 2015. The
-  update includes a variety of enhancements and bug fixes made across the
-  system, including those related to issues reported by developers through the
-  external issue tracker.
-</p>
-
-<p>
-  If you are currently developing or testing on Android M, you should
-  <strong>update your environment</strong> to Developer Preview 2 as soon as
-  possible. This ensures that you are building with the latest platform APIs
-  and testing against the latest behaviors. If you are just getting started
-  with the Android M Developer Preview SDK, follow the instructions in <a href=
-  "{@docRoot}preview/setup-sdk.html">Set up the Preview SDK</a>, then update your
-  environment for Developer Preview 2.
-</p>
-
-<h3>
-  What's included
-</h3>
-
-<p>
-  Developer Preview 2 includes an updated SDK with system images,
-  documentation, and samples for developing against the latest Android M
-  platform.
-</p>
-
-<ul>
-  <li>
-    <strong>SDK platform</strong> and <strong>system images</strong> (Nexus and
-    emulator) for building and testing. You can download the updated tools from
-    the SDK Manager, and the system images are available by over-the-air (OTA)
-    update or download (see below).
-  </li>
-
-  <li>
-    <strong>Updated documentation</strong>. The <a href=
-    "{@docRoot}preview/behavior-changes.html">Behavior Changes</a>, <a href=
-    "{@docRoot}preview/api-overview.html">API Overview</a>, and <a href=
-    "{@docRoot}preview/features/runtime-permissions.html">Permissions</a> documents have
-    been updated to reflect the latest changes in the platform. An updated
-    <a href="{@docRoot}preview/download.html">Developer Documentation download
-    package</a> is available, including full reference docs and API diff
-    reports.
-  </li>
-
-  <li>
-    <strong>Translations</strong> of the documentation are now available. Use
-    the language selector at the bottom right corner of any page to switch
-    languages. Note that some of the translated docs are not yet updated for
-    Developer Preview 2 (coming soon).
-  </li>
-
-  <li>The <a href="{@docRoot}preview/samples.html">Android M code samples</a> are also
-  updated to account for API and behavior changes:
-    <ul>
-      <li>
-        <a href=
-        "https://github.com/googlesamples/android-RuntimePermissions">RuntimePermissions</a>
-        / <a href=
-        "https://github.com/googlesamples/android-RuntimePermissionsBasic">RuntimePermissionsBasic</a>
-        are updated to reflect latest permissions API changes, including
-        <code>shouldShowRequestPermissionRationale()</code>.
-      </li>
-      <li>
-        <a href=
-        "https://github.com/googlesamples/android-FingerprintDialog">FingerprintDialog</a>
-        adds a flow to ask for passwords when new fingerprints are added as
-        well as a preference if the app will use fingerprints as a method of
-        authentication.
-      </li>
-    </ul>
-  </li>
-</ul>
-
-<h3 id="changes-p2">
-  Key changes
-</h3>
-
-<ul>
-  <li>Permissions changes
-    <ul>
-      <li>The <code>android.permission.USE_FINGERPRINT</code> permission now
-      has "normal" protection level, so it is no longer necessary to request
-      this permission directly from the user. The <code>USE_FINGERPRINT</code>
-      permission enables fingerprints to be enabled for authentication, but
-      does not give the requesting app access to the enrollment/fingerprint
-      administration flow.
-      </li>
-
-      <li>The <code>android.permission.WRITE_EXTERNAL_STORAGE</code> permission
-      has protection level "dangerous", meaning that apps wanting to write to
-      external storage will need to request permission from the user at
-      runtime. Both <code>READ_EXTERNAL_STORAGE</code> and
-      <code>WRITE_EXTERNAL_STORAGE</code> are members of the
-      <code>STORAGE</code> permission group.
-      </li>
-
-      <li>Remote Bluetooth/Wi-Fi MAC's now require either the
-      <code>android.permission.ACCESS_COARSE_LOCATION</code> or
-      <code>android.permission.ACCESS_FINE_LOCATION</code> permission.
-      </li>
-
-      <li>Some accounts and identity permissions are moved to
-      <code>CONTACTS</code> permissions group and others are removed or granted
-      based on account type. In particular,
-      <code>android.permission.USE_CREDENTIALS</code>,
-      <code>android.permission.MANAGE_ACCOUNTS</code>, and
-      <code>android.permission.AUTHENTICATE_ACCOUNTS</code> are ungrouped
-      pending further changes in a later release.
-      </li>
-
-      <li>The Wi-Fi permissions
-      <code>android.permission.CHANGE_WIFI_STATE</code>,
-      <code>android.permission.CHANGE_WIMAX_STATE</code>, and
-      <code>android.permission.CHANGE_WIFI_MULTICAST_STATE</code> now have
-      protection level "normal".
-      </li>
-
-      <li>The Bluetooth permissions <code>android.permission.BLUETOOTH</code>
-      and <code>android.permission.BLUETOOTH_ADMIN</code> now have protection
-      level "normal".
-      </li>
-
-      <li>Bookmarks and subscribed feeds permissions are removed.
-      </li>
-
-      <li>Apps included in the system image are no longer granted dangerous
-      permissions automatically. All apps should check for and request
-      permissions at runtime.
-      </li>
-
-      <li>Introduces the utility method
-      <code>Activity.shouldShowRequestPermissionRationale(String)</code>, which
-      lets your app see whether users have previously rejected a permission
-      request. This lets you know that your app should explain the the user why
-      it needs that permission. For more information see the <a href=
-      "{@docRoot}preview/features/runtime-permissions.html#explain-need">Permissions</a>
-      developer guide.
-      </li>
-    </ul>
-  </li>
-
-  <li>Other changes
-    <ul>
-      <li>The <code>android.app.AssistContent</code> and
-      <code>android.app.AssistStructure</code> classes are moved into a new
-      package, <code>android.app.assist</code>.
-      </li>
-
-      <li>Bluetooth Stylus APIs are updated and include new callback events.
-      The <code>View.OnStylusButtonPressListener</code> class is renamed to
-      <code>View.OnContextClickListener</code> and
-      <code>GestureDetector.OnStylusButtonPressListener</code> class to <code>
-        GestureDetector.OnContextClickListener</code>.
-      </li>
-    </ul>
-  </li>
-</ul>
-
-<p>
-  For a complete list of changes, including renamed and removed APIs, please
-  refer to the API Diff Reports included in the <a href=
-  "{@docRoot}preview/download.html#docs">Developer Documentation download package</a>.
-</p>
-
-<h3 id="ki-p2">
-  Known issues
-</h3>
-
-<ul>
-  <li>General issues:
-    <ul>
-      <li>The system Messenger app crashes on the 64-bit emulator.</li>
-      <li>After updating to Developer Preview 2, Contacts sync experiences
-      intermittent issues. The workaround is to clear and re-sync Contact Storage
-      data after update. To clear data, go to <strong>Settings &gt; Apps &gt; Show
-      system &gt; Contacts Storage</strong>. Select "Storage" and then
-      <strong>Clear data</strong>.</li>
-      <li>In YouTube app, it's not possible to share a video. The share window is
-      blank.</li>
-      <li>The bundled Google Apps Device Policy app included in Developer Preview 2 is unable to
-      properly set up an Android for Work Profile, so you cannot create a new Work Profile with this
-      app after you update. This issue is specific to the Google Apps Device Policy app, and not the
-      Android for Work platform (or our partner EMM providers). As a workaround for users of the
-      Google Apps Device Policy app, be sure to create a Work Profile in Developer Preview 1 before
-      updating to Developer Preview 2.
-      </li>
-    </ul>
-  </li>
-  <li>Issues specific to MPZ79N on Nexus Player:
-    <ul>
-      <li>Bluetooth share crashes after clearing data. Please <strong>do not
-      clear app data for system services</strong>, otherwise you will need to Factory
-      Reset your device</li>
-      <li>Remote control can experience intermittent connectivity issues. </li>
-      <li>Movies show black screen with some ANRs on exiting the video.</li>
-      <li>In YouTube app, lower-resolution videos have a green bar at the top
-      and some color-ghosting</li>
-      </li>
-    </ul>
-  </li>
-</ul>
-
-<p>
-  For a complete list of reported issues, please refer to the <a href=
-  "https://code.google.com/p/android/issues/list">open issues list</a> on the
-  Developer Preview <a href=
-  "https://code.google.com/p/android-developer-preview/">issue tracker</a>.
-</p>
-
-<h3 id="preview2-get">
-  Get Developer Preview 2
-</h3>
-
-<p>
-  You can download the Developer Preview 2 platform and emulator images from
-  the SDK Manager.
-</p>
-
-<p>
-  Developer Preview 2 system images for supported Nexus devices are available
-  by download and by over-the-air (OTA) update. The OTA update is available
-  only to supported devices that are currently running Developer Preview 1. If
-  your devices are running Developer Preview 1, you should automatically receive
-  the OTA update within a few days of availability.
-</p>
-
-<p>
-  If you are just getting started with Android M Developer Preview, and want
-  to receive Developer Preview 2 via OTA, download the appropriate
-  Developer Preview 1 <a href="{@docRoot}preview/download_mp1.html#images">
-  system image</a>, and flash it to your device. Then,
-  leave the device powered on for several hours. It registers with the
-  OTA service, and receives Developer Preview 2 by OTA.
-</p>
-
-<p>
-  For instructions on how to download and flash your device to the Developer
-  Preview, see the links and instructions on the <a href=
-  "{@docRoot}preview/download.html">Downloads</a> page.
-</p>
-
-<p>
-  For instructions on how to start developing and testing with Android M, read
-  <a href="{@docRoot}preview/setup-sdk.html">Setting up the SDK</a>.
-</p>
-
-<h2 id="preview1-notes">
-  Developer Preview 1
-</h2>
+<h2 id="dp1">Developer Preview 1</h2>
 
 <div class="wrap">
   <div class="cols">
     <div class="col-6of12">
       <p>
-        <em>Date: May 2015<br>
-        Build: MPZ44Q<br>
-        Hardware support: Nexus 5, 6, 9, Player<br>
+        <em>Date: March 2016<br>
+        Builds: NPC56P, NPC56R, updated: NPC56W, NPC56X<br>
         Emulator support: x86 &amp; ARM (32/64-bit)<br>
-        Google Play services: 7.5</em>
+        Google Play services: 8.4</em>
       </p>
     </div>
   </div>
 </div>
 
-<p>
-  Initial release.
-</p>
+<h3 id="general">General advisories</h3>
 
+<p>
+  This Developer Preview release is for app developers only and is designed for
+  use in compatibility testing and early development only. Please be aware of
+  these general notes about the release:
+</p>
+<ul>
+  <li>This release has various stability and performance issues on all devices
+  that make it <em>not suitable for daily use on phone or tablet</em>,
+  especially for non-developers.
+  </li>
+
+  <li>System and app performance is known to be <strong>periodically slow /
+  janky</strong>, and device may become occasionally unresponsive. These
+  problems may become more acute with prolonged use.
+  </li>
+
+  <li>Battery life may be regressed in this release for screen-on and
+  screen-off use cases.
+  </li>
+
+  <li>Some apps may not function normally on Developer Preview 1. This includes
+  Google’s apps as well as other apps.
+  </li>
+
+  <li>This early build is not Compatibility Test Suite (CTS) approved. Apps
+  that depend on CTS approved builds (Android Pay for example) won’t work.
+  </li>
+
+  <li>This preview release supports the following devices: Nexus 5X, Nexus 6,
+  Nexus 6P, Nexus 9, Nexus Player, and Pixel C, as well as General Mobile 4G
+  (Android One).
+  </li>
+</ul>
+
+<h3 id="platform">Platform Issues</h3>
+
+<h4 id="performance">Performance and battery</h4>
+
+<ul>
+  <li>System and app performance is known to be <strong>periodically slow /
+  janky</strong>, and device may become occasionally unresponsive. These
+  problems may become more acute with prolonged use.
+  </li>
+
+  <li>Battery life may be regressed in this release for screen-on and
+  screen-off use cases.
+  </li>
+</ul>
+<h4 id="dialer">Dialer</h4>
+
+<ul>
+  <li>Dialer app does not support Direct boot. This will be addressed later in
+  N Developer Preview.
+  </li>
+
+  <li>Voicemail playback does not work.
+  </li>
+</ul>
+
+<h4 id="microphone">Microphone</h4>
+
+<ul>
+   <li>The system may incorrect persists the microphone mute state across apps and reboots. If you mute the microphone in an app and the state is persisted, open any app that has microphone mute controls and unmute the microphone.</li>
+</ul>
+
+<h4 id="ui">System UI</h4>
+
+<ul>
+  <li>Some new or modified strings in the system UI are not translated to all
+  languages.
+  </li>
+
+  <li>Overview UI is still in development, and subject to change. For example,
+  we intend to remove the timer that appears when the user switches between
+  apps.
+  </li>
+
+  <li>Settings controls and toggles may be slow or appear to be unresponsive.
+  </li>
+
+  <li>Visual design of notifications is subject to change.
+  </li>
+
+  <li>In the Gmail app, direct archiving of emails included in a notification
+  bundle does not work properly.
+  </li>
+</ul>
+
+<h4 id="afw">Android for Work</h4>
+
+<ul>
+  <li>Work Security Challenge
+    <ul>
+      <li>After migration to N, or after the user creates work profiles, work
+      profiles can't create keys in the keystore until the user changes their
+      pattern, PIN, or password, or sets up a Work Challenge.
+      </li>
+
+      <li>In Direct boot mode, applying the passcode restrictions to the device
+      causes the work profile to be unlocked, even though the device is locked.
+      This makes the work profile accessible even though it should be protected
+      by the device lock screen.
+      </li>
+
+      <li>When the user enters a wrong password and pin, the system does not
+      display any informational message; instead, it only clears the input
+      field. This issue does not affect pattern or fingerprint input.
+      </li>
+
+      <li>On a tablet, the background displayed with the work challenge is
+      disproportionately small.
+      </li>
+
+      <li>The version of <a href=
+      "https://play.google.com/store/apps/details?id=com.google.android.apps.enterprise.dmagent">
+        Google Apps Device Policy</a> that is bundled with N Developer Preview
+        does not yet support the Work Profile Security Challenge feature.
+        Developers should instead use <a href=
+        "https://play.google.com/store/apps/details?id=com.afwsamples.testdpc">TestDPC</a>
+        to test this feature.
+      </li>
+    </ul>
+  </li>
+
+  <li>Always On VPN
+    <ul>
+      <li>If Always On VPN mode is turned on, but VPN is not available, apps
+      not specified as exceptions to the Always On policy connect over the
+      ordinary network. Unless specified as exceptions to Always On VPN policy,
+      apps should be offline if they have no VPN connection available.
+        <ul>
+          <li>When Always On mode is on, a VPN connection is not established
+          after a device reboots into Direct boot mode, even after the user
+          unlocks the secure lock screen.
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </li>
+
+  <li>Improved Contacts
+    <ul>
+      <li>Bluetooth PBAP/MAP devices do not display Caller ID for work
+      contacts. The next release of Preview resolves this issue.
+      </li>
+    </ul>
+  </li>
+
+  <li>Work Mode
+    <ul>
+      <li>The Google Now Launcher does not display whether Work Mode is on or
+      off. The Launcher also does not show app suspension state.
+      </li>
+
+      <li>After the user turns Work Mode off and on, the system no longer shows
+      Work profile app widgets, such as Calendar.
+      </li>
+    </ul>
+  </li>
+
+  <li>Suspend Packages
+  </li>
+
+  <li>Device admins can suspend critical system packages, which may lead to
+  unexpected behavior, such as placing calls despite the Telephone disabled
+  dialog’s being displayed.
+  </li>
+
+  <li>Other
+    <ul>
+      <li>The Settings app crashes on launch if {@link
+      android.os.UserManager#DISALLOW_MOUNT_PHYSICAL_MEDIA} is set to true when
+      the user inserts physical media such as an SD card.
+      </li>
+
+      <li>The {@code DPM.setPackagesSuspended} state does not persist when the
+      user uninstalls and then reinstalls an app. Either the app should remain
+      suspended after uninstall/reinstall, or suspended apps should not be
+      uninstallable
+      </li>
+
+      <li>The first check-in in a Work Profile takes several minutes to
+      complete. This may cause the device to take longer than normal to be
+      visible in the Play EMM API.
+      </li>
+
+      <li>Notifications from Work Profile apps are not visible to notification
+      listeners installed in the personal profile. As a result, the system does
+      not display Notifications as expected.
+      </li>
+
+      <li>The version of Google Apps Device Policy that is bundled with N
+      Developer Preview does not yet support the Work Profile Security
+      Challenge feature. Developers should instead use TestDPC to test this
+      feature.
+      </li>
+    </ul>
+  </li>
+</ul>
+
+<h4 id="keyboard">Keyboard</h4>
+
+<ul>
+<li>Bluetooth pairing between keyboards and Android devices may be unstable. </li>
+</ul>
+
+<h4 id="video">Video</h4>
+
+<ul>
+<li>Video playback may lag and show interruptions.</li>
+</ul>
+
+<h4 id="wifi">Wi-Fi</h4>
+
+<ul>
+  <li>Wi-Fi has undergone some refactoring which may change API corner case
+  behavior. Specifically, applications which attempt to connect to specific
+  networks, or attempt to reconnect to networks should retest.
+  </li>
+
+  <li>The legacy DHCP client has been removed from the platform. The only DHCP
+  client that the platform supports is the DHCP client introduced in M.
+  </li>
+</ul>
+
+<h4 id="direct">Direct boot</h4>
+
+<ul>
+  <li>NFC doesn't function until first unlock.
+    <ul>
+      <li>When a phone with Bluetooth enabled is restarted, Bluetooth does not
+      turn on automatically. You must manually re-enable Bluetooth.
+      </li>
+
+      <li>Under some circumstances, the default ringtone may not sound for
+      phone calls and messages. This behavior is fixed in the next N Preview
+      release, with one exception (and workaround):
+      </li>
+
+      <li>On a device that is not freshly wiped--one that has been booted at
+      least once since being set to direct boot mode--the default notification
+      ringtone does not sound. The user can work around this issue by manually
+      selecting a ringtone from Settings.
+      </li>
+
+      <li>Direct boot is not enabled by default on devices running an N
+      Developer Preview build. To enable direct boot for testing and
+      development, go to Developer Options and tap Convert to File Encryption.
+      In this dev preview, this requires a factory reset to repartition and
+      reformat your device for File-based Encryption.
+      </li>
+    </ul>
+  </li>
+</ul>
+
+<h4 id="pip">Picture-in-picture for Android TV</h4>
+
+<ul>
+  <li>The PIP integration in the Recents UI is not finalized, and is subject to
+  change.
+    <ul>
+      <li>The animation of the PIP window is not smooth. Future releases of the
+      Preview will improve this.
+      </li>
+    </ul>
+  </li>
+
+  <li style="list-style: none">Future releases of the Preview will improve upon
+  the visual design and layout alignment of PIP.
+  </li>
+</ul>
+
+<h4 id="bugs">Bug reports</h4>
+
+<ul>
+  <li>Bug reports do not always complete successfully (as a workaround,
+  sometimes they can still be accessed through the bug report document provider
+  in internal storage).
+  </li>
+</ul>
+
+<h4 id="split">Split-screen Multi-window</h4>
+
+<ul>
+  <li>Apps may experience crashes and unexpected UI behavior when put into
+  split-screen mode. These are app issues that must be fixed by the app
+  developer.
+  </li>
+
+  <li>When an app targets a version of the Android platform earlier than N, the
+  App may not work with split-screen toast may appear multiple times.
+  </li>
+
+  <li>Long-pressing the Overview button while using an app with a fixed
+  orientation may produce unexpected app behavior.
+  </li>
+
+  <li>Apps may flicker while resizing.
+  </li>
+
+  <li>Animations are not yet final.
+  </li>
+</ul>
+
+<h4 id="ime">Input method</h4>
+
+<ul>
+  <li>Google Keyboard unexpectedly falls back to the generic Google keyboard
+  when <b>Use system language</b>, but Google Keyboard doesn’t support any of
+  the languages selected in the system-language preferences. It should fall
+  back to American English.
+    <p>
+      You can work around this problem by adding at least one language that
+      Google Keyboard supports.
+    </p>
+  </li>
+</ul>
+
+
+<h4 id="accessibility">Accessibility</h4>
+
+<ul>
+   <li>TalkBack exhibits issues with features including Notifications, Quick Settings Tiles and Multi-window display that may cause system crashing or lack of spoken feedback from TalkBack. Future releases of the preview will address these issues.</li>
+</ul>
+
+<h3 id="device-sp">Device-Specific Notes and Issues</h3>
+
+<h4 id="player">Nexus Player</h4>
+<ul>
+<li>Video playback, app compatibility and stability issues are expected on Nexus Player in this release of the Preview.</li>
+</ul>
+
+<h4 id="pixelc">Pixel C</h4>
+<ul>
+<li>Multi-window resizing may cause crashing.</li>
+</ul>
+
+<h4 id="n9">Nexus 9</h4>
+<ul>
+<li>Nexus 9 devices may not start after receiving an over-the-air (OTA) update
+  via the Android Beta Program. To recover from this issue, you can try
+  to manually install the OTA image. For more information, see
+  <a href="{@docRoot}preview/download-ota.html">Applying a Device OTA Image</a>.
+</li>
+</ul>
 
diff --git a/docs/html/preview/testing/guide.jd b/docs/html/preview/testing/guide.jd
deleted file mode 100644
index 56bb4d9..0000000
--- a/docs/html/preview/testing/guide.jd
+++ /dev/null
@@ -1,187 +0,0 @@
-page.title=Testing Guide
-page.image=images/cards/card-build_16x9_2x.png
-page.keywords=previewresources,androidm,testing,permissions
-
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>In this document</h2>
-      <ol>
-        <li><a href="#runtime-permissions">Testing Permissions</a></li>
-        <li><a href="#doze-standby">Testing Doze and App Standby</a></li>
-        <li><a href="#ids">Auto Backup and Device Identifiers</a></li>
-      </ol>
-  </div>
-</div>
-
-<p>
-  The Android M Developer Preview gives you an opportunity to ensure your apps work with the next
-  version of the platform. This preview includes a number of APIs and behavior changes that can
-  impact your app, as described in the <a href="{@docRoot}preview/api-overview.html">API
-  Overview</a> and <a href="{@docRoot}preview/behavior-changes.html">Behavior Changes</a>. In testing
-  your app with the preview, there are some specific system changes that you should focus on to
-  ensure that users have a good experience.
-</p>
-
-<p>
-  This guide describes the what and how to test preview features with your app. You should
-  prioritize testing of these specific preview features, due to their high potential impact on your
-  app's behavior:
-</p>
-
-<ul>
-  <li><a href="#runtime-permissions">Permissions</a>
-  </li>
-  <li><a href="#doze-standby">Doze and App Standby</a>
-  </li>
-  <li><a href="#ids">Auto Backup and Device Identifiers</a></li>
-</ul>
-
-<p>
-  For more information about how to set up devices or virtual devices with a preview system image
-  for testing, see <a href="{@docRoot}preview/setup-sdk.html">Set up the Preview SDK</a>.
-</p>
-
-
-<h2 id="runtime-permissions">Testing Permissions</h2>
-
-<p>
-  The new <a href="{@docRoot}preview/features/runtime-permissions.html">Permissions</a> model
-  changes the way that permissions are allocated to your app by the user. Instead of granting all
-  permissions during the install procedure, your app must ask the user for individual permissions
-  at runtime. For users this behavior provides more granular control over each app’s activities, as
-  well as better context for understanding why the app is requesting a specific permission. Users
-  can grant or revoke the permissions granted to an app individually at any time. This feature of
-  the preview is most likely to have an impact on your app's behavior and may prevent some of your
-  app features from working, or they may work in a degraded state.
-</p>
-
-<p class="caution">
-  This change affects all apps running on the new platform, even those not targeting the new
-  platform version. The platform provides a limited compatibility behavior for legacy apps, but you
-  should begin planning your app’s migration to the new permissions model now, with a goal of
-  publishing an updated version of your app at the official platform launch.
-</p>
-
-
-<h3 id="permission-test-tips">Test tips</h3>
-
-<p>
-  Use the following test tips to help you plan and execute testing of your app with the new
-  permissions behavior.
-</p>
-
-<ul>
-  <li>Identify your app’s current permissions and the related code paths.</li>
-  <li>Test user flows across permission-protected services and data.</li>
-  <li>Test with various combinations of granted/revoked permission.</li>
-  <li>Use the {@code adb} tool to manage permssions from the command line:
-    <ul>
-      <li>List permissions and status by group:
-        <pre>adb shell pm list permissions -d -g</pre>
-      </li>
-      <li>Grant or revoke one or more permissions using the following syntax:<br>
-        <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
-      </li>
-    </ul>
-  </li>
-  <li>Analyze your app for services that use permissions.</li>
-</ul>
-
-<h3 id="permission-test-strategy">Test strategy</h3>
-
-<p>
-  The permissions change affects the structure and design of your app, as well as
-  the user experience and flows you provide to users. You should assess your app’s current
-  permissions use and start planning for the new flows you want to offer. The official release of
-  the platform provides compatibility behavior, but you should plan on updating your app and not
-  rely on these behaviors.
-</p>
-
-<p>
-  Identify the permissions that your app actually needs and uses, and then find the various code
-  paths that use the permission-protected services. You can do this through a combination of
-  testing on the new platform and code analysis. In testing, you should focus on opting in to
-  runtime permissions by changing the app’s {@code targetSdkVersion} to the preview version. For
-  more information, see <a href="{@docRoot}preview/setup-sdk.html#">Set up the Preview SDK</a>.
-</p>
-
-<p>
-  Test with various combinations of permissions revoked and added, to highlight the user flows that
-  depend on permissions. Where a dependency is not obvious or logical you should consider
-  refactoring or compartmentalizing that flow to eliminate the dependency or make it clear why the
-  permission is needed.
-</p>
-
-<p>
-  For more information on the behavior of runtime permissions, testing, and best practices, see the
-  <a href="{@docRoot}preview/features/runtime-permissions.html">Permissions</a> developer
-  preview page.
-</p>
-
-
-<h2 id="doze-standby">Testing Doze and App Standby</h2>
-
-<p>
-  The power saving features of Doze and App Standby limit the amount of background processing that
-  your app can perform when a device is in an idle state or while your app is not in focus. The
-  restrictions the system may impose on apps include limited or no network access,
-  suspended background tasks, suspended Notifications, ignored wake requests, and alarms. To ensure
-  that your app behaves properly with these power saving optimizations, you should test your app by
-  simulating these low power states.
-</p>
-
-<h4 id="doze">Testing your app with Doze</h4>
-
-<p>To test Doze with your app:</p>
-
-<ol>
-<li>Configure a hardware device or virtual device with a M Preview system image.</li>
-<li>Connect the device to your development machine and install your app.</li>
-<li>Run your app and leave it active.</li>
-<li>Simulate the device going into Doze mode by running the following commands:
-
-<pre>
-$ adb shell dumpsys battery unplug
-$ adb shell dumpsys deviceidle step
-$ adb shell dumpsys deviceidle -h
-</pre>
-
-  </li>
-  <li>Observe the behavior of your app when the device is re-activated. Make sure it
-    recovers gracefully when the device exits Doze.</li>
-</ol>
-
-
-<h4 id="standby">Testing apps with App Standby</h4>
-
-<p>To test the App Standby mode with your app:</p>
-
-<ol>
-  <li>Configure a hardware device or virtual device with a M Preview system image.</li>
-  <li>Connect the device to your development machine and install your app.</li>
-  <li>Run your app and leave it active.</li>
-  <li>Simulate the app going into standby mode by running the following commands:
-
-<pre>
-$ adb shell am broadcast -a android.os.action.DISCHARGING
-$ adb shell am set-idle &lt;packageName&gt; true
-</pre>
-
-  </li>
-  <li>Simulate waking your app using the following command:
-    <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
-  </li>
-  <li>Observe the behavior of your app when it is woken. Make sure it recovers gracefully
-    from standby mode. In particular, you should check if your app's Notifications and background
-    jobs continue to function as expected.</li>
-</ol>
-
-<h2 id="ids">Auto Backup for Apps and Device-Specific Identifiers</h2>
-
-<p>If your app is persisting any device-specific identifiers, such as Google
-Cloud Messaging registration ID, in internal storage,
-make sure to follow best practices to exclude the storage
-location from auto-backup, as described in <a href="{@docRoot}preview/backup/index.html">Auto
-Backup for Apps</a>. </p>
diff --git a/docs/html/preview/testing/performance.jd b/docs/html/preview/testing/performance.jd
deleted file mode 100644
index 6f0a5f1..0000000
--- a/docs/html/preview/testing/performance.jd
+++ /dev/null
@@ -1,684 +0,0 @@
-page.title=Testing Display Performance
-page.image=images/cards/card-test-performance_2x.png
-page.keywords=performance, fps, tools
-
-@jd:body
-
-
-<div id="qv-wrapper">
-  <div id="qv">
-    <h2>In this document</h2>
-      <ol>
-        <li><a href="#measure">Measuring UI Performance</a>
-          <ul>
-            <li><a href="#aggregate">Aggregate frame stats</a></li>
-            <li><a href="#timing-info">Precise frame timing info</a></li>
-            <li><a href="#timing-dump">Simple frame timing dump</a></li>
-            <li><a href="#collection-window">Controlling the window of stat collection</a></li>
-            <li><a href="#diagnose">Diagnosing performance regressions</a></li>
-            <li><a href="#resources">Additional resources</a></li>
-          </ul>
-        </li>
-        <li><a href="#automate">Automating UI Perfomance Tests</a>
-          <ul>
-            <li><a href="#ui-tests">Setting up UI tests</a></li>
-            <li><a href="#automated-tests">Setting up automated UI testing</a></li>
-            <li><a href="#triage">Triaging and fixing observed problems</a></li>
-          </ul>
-        </li>
-      </ol>
-  </div>
-</div>
-
-
-<p>
-  User interface (UI) performance testing ensures that your app not only meets its functional
-  requirements, but that user interactions with your app are buttery smooth, running at a
-  consistent 60 frames per second (<a href=
-  "https://www.youtube.com/watch?v=CaMTIgxCSqU&amp;index=25&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">why
-  60fps?</a>), without any dropped or delayed frames, or as we like to call it, <em>jank</em>. This
-  document explains tools available to measure UI performance, and lays out an approach to
-  integrate UI performance measurements into your testing practices.
-</p>
-
-
-<h2 id="measure">Measuring UI Performance</h2>
-
-<p>
-  In order to improve performance you first need the ability to measure the performance of
-  your system, and then diagnose and identify problems that may arrive from various parts of your
-  pipeline.
-</p>
-
-<p>
-  <em><a href="https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></em> is an
-  Android tool that runs on the device and dumps interesting information about the status of system
-  services. Passing the <em>gfxinfo</em> command to dumpsys provides an output in logcat with
-  performance information relating to frames of animation that are occurring during the recording
-  phase.
-</p>
-
-<pre>
-&gt; adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt;
-</pre>
-
-<p>
-  This command can produce multiple different variants of frame timing data.
-</p>
-
-<h3 id="aggregate">Aggregate frame stats</h3>
-
-<p>
-  With the M Preview the command prints out aggregated analysis of frame data to logcat, collected
-  across the entire lifetime of the process. For example:
-</p>
-
-<pre class="noprettyprint">
-Stats since: 752958278148ns
-Total frames rendered: 82189
-Janky frames: 35335 (42.99%)
-90th percentile: 34ms
-95th percentile: 42ms
-99th percentile: 69ms
-Number Missed Vsync: 4706
-Number High input latency: 142
-Number Slow UI thread: 17270
-Number Slow bitmap uploads: 1542
-Number Slow draw: 23342
-</pre>
-
-<p>
-  These high level statistics convey at a high level the rendering performance of the app, as well
-  as its stability across many frames.
-</p>
-
-
-<h3 id="timing-info">Precise frame timing info</h3>
-
-<p>
-  With the M Preview comes a new command for gfxinfo, and that’s <em>framestats</em> which provides
-  extremely detailed frame timing information from recent frames, so that you can track down and
-  debug problems more accurately.
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats
-</pre>
-
-<p>
-  This command prints out frame timing information, with nanosecond timestamps, from the last 120
-  frames produced by the app. Below is example raw output from adb dumpsys gfxinfo
-  &lt;PACKAGE_NAME&gt; framestats:
-</p>
-
-<pre class="noprettyprint">
-0,27965466202353,27965466202353,27965449758000,27965461202353,27965467153286,27965471442505,27965471925682,27965474025318,27965474588547,27965474860786,27965475078599,27965479796151,27965480589068,
-0,27965482993342,27965482993342,27965465835000,27965477993342,27965483807401,27965486875630,27965487288443,27965489520682,27965490184380,27965490568703,27965491408078,27965496119641,27965496619641,
-0,27965499784331,27965499784331,27965481404000,27965494784331,27965500785318,27965503736099,27965504201151,27965506776568,27965507298443,27965507515005,27965508405474,27965513495318,27965514061984,
-0,27965516575320,27965516575320,27965497155000,27965511575320,27965517697349,27965521276151,27965521734797,27965524350474,27965524884536,27965525160578,27965526020891,27965531371203,27965532114484,
-</pre>
-
-<p>
-  Each line of this output represents a frame produced by the app. Each line has a fixed number of
-  columns describing time spent in each stage of the frame-producing pipeline. The next section
-  describes this format in detail, including what each column represents.
-</p>
-
-
-<h4 id="fs-data-format">Framestats data format</h4>
-
-<p>
-  Since the block of data is output in CSV format, it's very straightforward to paste it to your
-  spreadsheet tool of choice, or collect and parse with a script. The following table explains the
-  format of the output data columns. All timestamps are in nanoseconds.
-</p>
-
-<ul>
-  <li>FLAGS
-    <ul>
-      <li>Rows with a ‘0’ for the FLAGS column can have their total frame time computed by
-      subtracting the INTENDED_VSYNC column from the FRAME_COMPLETED column.
-      </li>
-
-      <li>If this is non-zero the row should be ignored, as the frame has been determined as being
-      an outlier from normal performance, where it is expected that layout &amp; draw take longer
-      than 16ms. Here are a few reasons this could occur:
-        <ul>
-          <li>The window layout changed (such as the first frame of the application or after a
-          rotation)
-          </li>
-
-          <li>It is also possible the frame was skipped in which case some of the values will have
-          garbage timestamps. A frame can be skipped if for example it is out-running 60fps or if
-          nothing on-screen ended up being dirty, this is not necessarily a sign of a problem in
-          the app.
-          </li>
-        </ul>
-      </li>
-    </ul>
-  </li>
-
-  <li>INTENDED_VSYNC
-    <ul>
-      <li>The intended start point for the frame. If this value is different from VSYNC, there
-      was work occurring on the UI thread that prevented it from responding to the vsync signal
-      in a timely fashion.
-      </li>
-    </ul>
-  </li>
-
-  <li>VSYNC
-    <ul>
-      <li>The time value that was used in all the vsync listeners and drawing for the frame
-      (Choreographer frame callbacks, animations, View.getDrawingTime(), etc…)
-      </li>
-
-      <li>To understand more about VSYNC and how it influences your application, check out the
-      <a href=
-      "https://www.youtube.com/watch?v=1iaHxmfZGGc&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=23">
-        Understanding VSYNC</a> video.
-      </li>
-    </ul>
-  </li>
-
-  <li>OLDEST_INPUT_EVENT
-    <ul>
-      <li>The timestamp of the oldest input event in the input queue, or Long.MAX_VALUE if
-      there were no input events for the frame.
-      </li>
-
-      <li>This value is primarily intended for platform work and has limited usefulness to app
-      developers.
-      </li>
-    </ul>
-  </li>
-
-  <li>NEWEST_INPUT_EVENT
-    <ul>
-      <li>The timestamp of the newest input event in the input queue, or 0 if there were no
-      input events for the frame.
-      </li>
-
-      <li>This value is primarily intended for platform work and has limited usefulness to app
-      developers.
-      </li>
-
-      <li>However it’s possible to get a rough idea of how much latency the app is adding by
-      looking at (FRAME_COMPLETED - NEWEST_INPUT_EVENT).
-      </li>
-    </ul>
-  </li>
-
-  <li>HANDLE_INPUT_START
-    <ul>
-      <li>The timestamp at which input events were dispatched to the application.
-      </li>
-
-      <li>By looking at the time between this and ANIMATION_START it is possible to measure how
-      long the application spent handling input events.
-      </li>
-
-      <li>If this number is high (&gt;2ms), this indicates the app is spending an unusually
-      long time processing input events, such as View.onTouchEvent(), which may indicate this
-      work needs to be optimized, or offloaded to a different thread. Note that there are some
-      scenarios, such as click events that launch new activities or similar, where it is
-      expected and acceptable that this number is large.
-      </li>
-    </ul>
-  </li>
-
-  <li>ANIMATION_START
-    <ul>
-      <li>The timestamp at which animations registered with Choreographer were run.
-      </li>
-
-      <li>By looking at the time between this and PERFORM_TRANVERSALS_START it is possible to
-      determine how long it took to evaluate all the animators (ObjectAnimator,
-      ViewPropertyAnimator, and Transitions being the common ones) that are running.
-      </li>
-
-      <li>If this number is high (&gt;2ms), check to see if your app has written any custom
-      animators or what fields ObjectAnimators are animating and ensure they are appropriate
-      for an animation.
-      </li>
-
-      <li>To learn more about Choreographer, check out the <a href=
-      "https://developers.google.com/events/io/sessions/325418001">For Butter or Worse</a>
-      video.
-      </li>
-    </ul>
-  </li>
-
-  <li>PERFORM_TRAVERSALS_START
-    <ul>
-      <li>If you subtract out DRAW_START from this value, you can extract how long the layout
-      &amp; measure phases took to complete. (note, during a scroll, or animation, you would
-      hope this should be close to zero..)
-      </li>
-
-      <li>To learn more about the measure &amp; layout phases of the rendering pipeline, check
-      out the <a href=
-      "https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">
-        Invalidations, Layouts and Performance</a> video
-      </li>
-    </ul>
-  </li>
-
-  <li>DRAW_START
-    <ul>
-      <li>The time at which the draw phase of performTraversals started. This is the start
-      point of recording the display lists of any views that were invalidated.
-      </li>
-
-      <li>The time between this and SYNC_START is how long it took to call View.draw() on all
-      the invalidated views in the tree.
-      </li>
-
-      <li>For more information on the drawing model, see <a href=
-      "{@docRoot}guide/topics/graphics/hardware-accel.html#hardware-model">Hardware Acceleration</a>
-      or the <a href=
-      "https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">
-        Invalidations, Layouts and Performance</a> video
-      </li>
-    </ul>
-  </li>
-
-  <li>SYNC_QUEUED
-    <ul>
-      <li>The time at which a sync request was sent to the RenderThread.
-      </li>
-
-      <li>This marks the point at which a message to start the sync
-      phase was sent to the RenderThread. If the time between this and
-      SYNC_START is substantial (&gt;0.1ms or so), it means that
-      the RenderThread was busy working on a different frame. Internally
-      this is used to differentiate between the frame doing too much work
-      and exceeding the 16ms budget and the frame being stalled due to
-      the previous frame exceeding the 16ms budget.
-      </li>
-    </ul>
-  </li>
-
-  <li>SYNC_START
-    <ul>
-      <li>The time at which the sync phase of the drawing started.
-      </li>
-
-      <li>If the time between this and ISSUE_DRAW_COMMANDS_START is substantial (&gt;0.4ms or
-      so), it typically indicates a lot of new Bitmaps were drawn which must be uploaded to the
-      GPU.
-      </li>
-
-      <li>To understand more about the sync phase, check out the <a href=
-      "https://www.youtube.com/watch?v=VzYkVL1n4M8&amp;index=24&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">
-        Profile GPU Rendering</a> video
-      </li>
-    </ul>
-  </li>
-
-  <li>ISSUE_DRAW_COMMANDS_START
-    <ul>
-      <li>The time at which the hardware renderer started issuing drawing commands to the GPU.
-      </li>
-
-      <li>The time between this and FRAME_COMPLETED gives a rough idea of how much GPU work the
-      app is producing. Problems like too much overdraw or inefficient rendering effects show
-      up here.
-      </li>
-    </ul>
-  </li>
-
-  <li>SWAP_BUFFERS
-    <ul>
-      <li>The time at which eglSwapBuffers was called, relatively uninteresting outside of
-      platform work.
-      </li>
-    </ul>
-  </li>
-
-  <li>FRAME_COMPLETED
-    <ul>
-      <li>All done! The total time spent working on this frame can be computed by doing
-      FRAME_COMPLETED - INTENDED_VSYNC.
-      </li>
-    </ul>
-  </li>
-
-</ul>
-
-<p>
-  You can use this data in different ways. One simple but useful visualization is a
-  histogram showing the distribution of frames times (FRAME_COMPLETED - INTENDED_VSYNC) in
-  different latency buckets, see figure below. This graph tells us at a glance that most
-  frames were very good - well below the 16ms deadline (depicted in red), but a few frames
-  were significantly over the deadline. We can look at changes in this histogram over time
-  to see wholesale shifts or new outliers being created. You can also graph input latency,
-  time spent in layout, or other similar interesting metrics based on the many timestamps
-  in the data.
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-framestats.png">
-
-
-<h3 id="timing-dump">Simple frame timing dump</h3>
-
-<p>
-  If <strong>Profile GPU rendering</strong> is set to <strong>In adb shell dumpsys gfxinfo</strong>
-  in Developer Options, the <code>adb shell dumpsys gfxinfo</code> command prints out timing
-  information for the most recent 120 frames, broken into a few different categories with
-  tab-separated-values. This data can be useful for indicating which parts of the drawing pipeline
-  may be slow at a high level.
-</p>
-
-<p>
-  Similar to <a href="#fs-data-format">framestats</a> above, it's very
-  straightforward to paste it to your spreadsheet tool of choice, or collect and parse with
-  a script. The following graph shows a breakdown of where many frames produced by the app
-  were spending their time.
-</p>
-
-<img src="{@docRoot}preview/images/perf-test-frame-latency.png">
-
-<p>
-  The result of running gfxinfo, copying the output, pasting it into a spreadsheet
-  application, and graphing the data as stacked bars.
-</p>
-
-<p>
-  Each vertical bar represents one frame of animation; its height represents the number of
-  milliseconds it took to compute that frame of animation. Each colored segment of the bar
-  represents a different stage of the rendering pipeline, so that you can see what parts of
-  your application may be creating a bottleneck. For more information on understanding the
-  rendering pipeline, and how to optimize for it, see the <a href=
-  "https://www.youtube.com/watch?v=we6poP0kw6E&amp;index=27&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">
-  Invalidations Layouts and Performance</a> video.
-</p>
-
-
-<h3 id="collection-window">Controlling the window of stat collection</h3>
-
-<p>
-  Both the framestats and simple frame timings gather data over a very short window - about
-  two seconds worth of rendering. In order to precisely control this window of time - for
-  example, to constrain the data to a particular animation - you can reset all counters,
-  and aggregate statistics gathered.
-</p>
-
-<pre>
-&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; reset
-</pre>
-
-<p>
-  This can also be used in conjunction with the dumping commands themselves to collect and
-  reset at a regular cadence, capturing less-than-two-second windows of frames
-  continuously.
-</p>
-
-
-<h3 id="diagnose">Diagnosing performance regressions</h3>
-
-<p>
-  Identification of regressions is a good first step to tracking down problems, and
-  maintaining high application health. However, dumpsys just identifies the existence and
-  relative severity of problems. You still need to diagnose the particular cause of the
-  performance problems, and find appropriate ways to fix them. For that, it’s highly
-  recommended to use the <a href="{@docRoot}tools/help/systrace.html">systrace</a> tool.
-</p>
-
-
-<h3 id="resources">Additional resources</h3>
-
-<p>
-  For more information on how Android’s rendering pipeline works, common problems that you
-  can find there, and how to fix them, some of the following resources may be useful to
-  you:
-</p>
-
-<ul>
-  <li>Rendering Performance 101
-  </li>
-  <li>Why 60fps?
-  </li>
-  <li>Android UI and the GPU
-  </li>
-  <li>Invalidations Layouts and performance
-  </li>
-  <li>Analyzing UI Performance with Systrace
-  </li>
-</ul>
-
-
-<h2 id="automate">Automating UI Perfomance Tests</h2>
-
-<p>
-  One approach to UI Performance testing is to simply have a human tester perform a set of
-  user operations on the target app, and either visually look for jank, or spend an very
-  large amount of time using a tool-driven approach to find it. But this manual approach is
-  fraught with peril - human ability to perceive frame rate changes varies tremendously,
-  and this is also time consuming, tedious, and error prone.
-</p>
-
-<p>
-  A more efficient approach is to log and analyze key performance metrics from automated UI
-  tests. The Android M developer preview includes new logging capabilities which make it
-  easy to determine the amount and severity of jank in your application’s animations, and
-  that can be used to build a rigorous process to determine your current performance and
-  track future performance objectives.
-</p>
-
-<p>
-  This article walks you through a recommended approach to using that data to automate your
-  performance testing.
-</p>
-
-<p>
-  This is mostly broken down into two key actions. Firstly, identifying what you're
-  testing, and how you’re testing it. and Secondly, setting up, and maintaining an
-  automated testing environment.
-</p>
-
-
-<h3 id="ui-tests">Setting up UI tests</h3>
-
-<p>
-  Before you can get started with automated testing, it’s important to determine a few high
-  level decisions, in order to properly understand your test space, and needs you may have.
-</p>
-
-<h4>
-  Identify key animations / flows to test
-</h4>
-
-<p>
-  Remember that bad performance is most visible to users when it interrupts a smooth
-  animation. As such, when identifying what types of UI actions to test for, it’s useful to
-  focus on the key animations that users see most, or are most important to their
-  experience. For example, here are some common scenarios that may be useful to identify:
-</p>
-
-<ul>
-  <li>Scrolling a primary ListView or RecyclerView
-  </li>
-
-  <li>Animations during async wait cycles
-  </li>
-
-  <li>Any animation that may have bitmap loading / manipulation in it
-  </li>
-
-  <li>Animations including Alpha Blending
-  </li>
-
-  <li>Custom View drawing with Canvas
-  </li>
-</ul>
-
-<p>
-  Work with engineers, designers, and product managers on your team to prioritize these key
-  product animations for test coverage.
-</p>
-
-<h4>
-  Define your future objectives and track against them
-</h4>
-
-<p>
-  From a high-level, it may be critical to identify your specific performance goals, and
-  focus on writing tests, and collecting data around them. For example:
-</p>
-
-<ul>
-  <li>Do you just want to begin tracking UI performance for the first time to learn more?
-  </li>
-
-  <li>Do you want to prevent regressions that might be introduced in the future?
-  </li>
-
-  <li>Are you at 90% of smooth frames today and want to get to 98% this quarter?
-  </li>
-
-  <li>Are you at 98% smooth frames and don’t want to regress?
-  </li>
-
-  <li>Is your goal to improve performance on low end devices?
-  </li>
-</ul>
-
-<p>
-  In all of these cases, you’ll want historical tracking which shows performance across
-  multiple versions of your application.
-</p>
-
-<h4>
-  Identify devices to test on
-</h4>
-
-<p>
-  Application performance varies depending on the device it's running on. Some devices may
-  contain less memory, less powerful GPUs, or slower CPU chips. This means that animations
-  which may perform well on one set of hardware, may not on others, and worse, may be a
-  result of a bottleneck in a different part of the pipeline. So, to account for this
-  variation in what a user might see, pick a range of devices to execute tests on, both
-  current high end devices, low end devices, tablets, etc. Look for variation in CPU
-  performance, RAM, screen density, size, and so on. Tests that pass on a high end device
-  may fail on a low end device.
-</p>
-
-<h4>
-  Basic frameworks for UI Testing
-</h4>
-
-<p>
-  Tool suites, like <a href=
-  "{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a> and
-  <a href="{@docRoot}training/testing/ui-testing/espresso-testing.html">Espresso</a>, are
-  built to help automate the action of a user moving through your application. These are simple
-  frameworks which mimic user interaction with your device. To use these frameworks, you
-  effectively create unique scripts, which run through a set of user-actions, and play them
-  out on the device itself.
-</p>
-
-<p>
-  By combining these automated tests, alongside <code>dumpsys gfxinfo</code> you can quickly
-  create a reproducible system that allows you to execute a test, and measure the
-  performance information of that particular condition.
-</p>
-
-
-<h3 id="automated-tests">Setting up automated UI testing</h3>
-
-<p>
-  Once you have the ability to execute a UI test, and a pipeline to gather the data from a
-  single test, the next important step is to embrace a framework which can execute that
-  test multiple times, across multiple devices, and aggregate the resulting performance
-  data for further analysis by your development team.
-</p>
-
-<h4>
-  A framework for test automation
-</h4>
-
-<p>
-  It’s worth noting that UI testing frameworks (like <a href=
-  "{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a>)
-  run on the target device/emulator directly. While performance gathering information done
-  by <em>dumpsys gfxinfo</em> is driven by a host machine, sending commands over ADB. To
-  help bridge the automation of these separate entities, <a href=
-  "{@docRoot}tools/help/monkeyrunner_concepts.html">MonkeyRunner</a> framework was
-  developed; A scripting system that runs on your host machine, which can issue commands to
-  a set of connected devices, as well as receive data from them.
-</p>
-
-<p>
-  Building a set of scripts for proper automation of UI Performance testing, at a minimum,
-  should be able to utilize monkeyRunner to accomplish the following tasks:
-</p>
-
-<ul>
-  <li>Load &amp; Launch a desired APK to a target device, devices, or emulator.
-  </li>
-
-  <li>Launch a UI Automator UI test, and allow it to be executed
-  </li>
-
-  <li>Collect performance information through <em>dumpsys gfxinfo</em><em>.</em>
-  </li>
-
-  <li>Aggregate information and display it back in a useful fashion to the developer.
-  </li>
-</ul>
-
-
-<h3 id="triage">Triaging and fixing observed problems</h3>
-
-<p>
-  Once problem patterns or regressions are identified, the next step is identifying and
-  applying the fix. If your automated test framework preserves precise timing breakdowns
-  for frames, it can help you scrutinize recent suspicious code/layout changes (in the case
-  of regression), or narrow down the part of the system you’re analyzing when you switch to
-  manual investigation. For manual investigation, <a href=
-  "{@docRoot}tools/help/systrace.html">systrace</a> is a great place to start, showing
-  precise timing information about every stage of the rendering pipeline, every thread and
-  core in the system, as well as any custom event markers you define.
-</p>
-
-<h4>
-  Properly profiling temporal timings
-</h4>
-
-<p>
-  It is important to note the difficulties in obtaining and measuring timings that come from
-  rendering performance. These numbers are, by nature, non deterministic, and often
-  fluctuate depending on the state of the system, amount of memory available, thermal
-  throttling, and the last time a sun flare hit your area of the earth. The point is that
-  you can run the same test, twice and get slightly different numbers that may be close to
-  each other, but not exact.
-</p>
-
-<p>
-  Properly gathering and profiling data in this manner means running the same test,
-  multiple times, and accumulating the results as an average, or median value. (for the
-  sake of simplicity, let’s call this a ‘batch’) This gives you the rough approximation of
-  the performance of the test, while not needing exact timings.
-</p>
-
-<p>
-  Batches can be used between code changes to see the relative impact of those changes on
-  performance. If the average frame rate for the pre-change Batch is larger than the
-  post-change batch, then you generally have an overall win wrt performance for that
-  particular change.
-</p>
-
-<p>
-  This means that any Automated UI testing you do should take this concept into
-  consideration, and also account for any anomalies that might occur during a test. For
-  example, if your application performance suddenly dips, due to some device issue (that
-  isn’t caused by your application) then you may want to re-run the batch in order to get
-  less chaotic timings.
-</p>
-
-<p>
-  So, how many times should you run a test, before the measurements become meaningful? 10
-  times should be the minimum, with higher numbers like 50 or 100 yielding more accurate
-  results (of course, you’re now trading off time for accuracy)
-</p>
diff --git a/docs/html/reference/android/support/test/InstrumentationRegistry.html b/docs/html/reference/android/support/test/InstrumentationRegistry.html
index 586129a..b4c4559 100644
--- a/docs/html/reference/android/support/test/InstrumentationRegistry.html
+++ b/docs/html/reference/android/support/test/InstrumentationRegistry.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -858,7 +860,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1371,6 +1373,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/annotation/Beta.html b/docs/html/reference/android/support/test/annotation/Beta.html
index e25dbec..a5addc0 100644
--- a/docs/html/reference/android/support/test/annotation/Beta.html
+++ b/docs/html/reference/android/support/test/annotation/Beta.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -725,7 +727,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -910,6 +912,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/annotation/UiThreadTest.html b/docs/html/reference/android/support/test/annotation/UiThreadTest.html
index e9306f3..ad5c3d5 100644
--- a/docs/html/reference/android/support/test/annotation/UiThreadTest.html
+++ b/docs/html/reference/android/support/test/annotation/UiThreadTest.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -733,7 +735,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -918,6 +920,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/annotation/package-summary.html b/docs/html/reference/android/support/test/annotation/package-summary.html
index d82a183..94e5e13 100644
--- a/docs/html/reference/android/support/test/annotation/package-summary.html
+++ b/docs/html/reference/android/support/test/annotation/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -687,6 +689,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.Builder.html b/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.Builder.html
index d24dc6d..c10bf16 100644
--- a/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.Builder.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -931,7 +933,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1528,6 +1530,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.html b/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.html
index 7e6b4c8..ba5f8b0 100644
--- a/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.html
+++ b/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -889,7 +891,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1123,7 +1125,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1424,6 +1426,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/AppNotIdleException.html b/docs/html/reference/android/support/test/espresso/AppNotIdleException.html
index 04e853e..0bfd996 100644
--- a/docs/html/reference/android/support/test/espresso/AppNotIdleException.html
+++ b/docs/html/reference/android/support/test/espresso/AppNotIdleException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -848,7 +850,7 @@
             <a href="../../../../../reference/android/support/test/espresso/AppNotIdleException.html">AppNotIdleException</a></nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="../../../../../reference/android/support/test/espresso/AppNotIdleException.html#create(java.util.List<java.lang.String>, int, int)">create</a></span>(List&lt;String&gt; idleConditions, int loopCount, int seconds)</nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/test/espresso/AppNotIdleException.html#create(java.util.List<java.lang.String>, java.lang.String)">create</a></span>(List&lt;String&gt; idleConditions, String message)</nobr>
 
         <div class="jd-descrdiv">
           Creates a new AppNotIdleException suitable for erroring out a test case.
@@ -861,6 +863,32 @@
 
 
 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            <a href="../../../../../reference/android/support/test/espresso/AppNotIdleException.html">AppNotIdleException</a></nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/test/espresso/AppNotIdleException.html#create(java.util.List<java.lang.String>, int, int)">create</a></span>(List&lt;String&gt; idleConditions, int loopCount, int seconds)</nobr>
+
+        <div class="jd-descrdiv">
+          <em>
+      This method is deprecated.
+    use <code><a href="../../../../../reference/android/support/test/espresso/AppNotIdleException.html#create(java.util.List<java.lang.String>, java.lang.String)">create(List, String)</a></code> instead
+</em>
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
 </table>
 
 
@@ -883,7 +911,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1117,7 +1145,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1360,6 +1388,59 @@
 
 
 
+<A NAME="create(java.util.List<java.lang.String>, java.lang.String)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+
+
+
+        <a href="../../../../../reference/android/support/test/espresso/AppNotIdleException.html">AppNotIdleException</a>
+      </span>
+      <span class="sympad">create</span>
+      <span class="normal">(List&lt;String&gt; idleConditions, String message)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Creates a new AppNotIdleException suitable for erroring out a test case.
+
+ <p>This should be called only from the main thread if the app does not idle out within the
+ specified duration.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>idleConditions</td>
+          <td>list of idleConditions that failed to become idle.</td>
+        </tr>
+        <tr>
+          <th>message</td>
+          <td>a message about the failure.</td>
+        </tr>
+      </table>
+  </div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Returns</h5>
+      <ul class="nolist"><li>a AppNotIdleException suitable to be thrown on the instrumentation thread.
+</li></ul>
+  </div>
+
+    </div>
+</div>
+
+
 <A NAME="create(java.util.List<java.lang.String>, int, int)"></A>
 
 <div class="jd-details api apilevel-">
@@ -1385,10 +1466,15 @@
 
 
 
+      <p>
+  <p class="caution"><strong>
+      This method is deprecated.</strong><br/>
+    use <code><a href="../../../../../reference/android/support/test/espresso/AppNotIdleException.html#create(java.util.List<java.lang.String>, java.lang.String)">create(List, String)</a></code> instead
 
+  </p>
   <div class="jd-tagdata jd-tagdescr"><p>Creates a new AppNotIdleException suitable for erroring out a test case.
 
- This should be called only from the main thread if the app does not idle out within the
+ <p>This should be called only from the main thread if the app does not idle out within the
  specified duration.</p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">Parameters</h5>
@@ -1409,8 +1495,7 @@
   </div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>a AppNotIdleException suitable to be thrown on the instrumentation thread.
-</li></ul>
+      <ul class="nolist"><li>a AppNotIdleException suitable to be thrown on the instrumentation thread.</li></ul>
   </div>
 
     </div>
@@ -1480,6 +1565,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/BaseLayerComponent.html b/docs/html/reference/android/support/test/espresso/BaseLayerComponent.html
index ebd35ee..4a21f81 100644
--- a/docs/html/reference/android/support/test/espresso/BaseLayerComponent.html
+++ b/docs/html/reference/android/support/test/espresso/BaseLayerComponent.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1066,6 +1068,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/DataInteraction.html b/docs/html/reference/android/support/test/espresso/DataInteraction.html
index 5ba5b27..a0aa432 100644
--- a/docs/html/reference/android/support/test/espresso/DataInteraction.html
+++ b/docs/html/reference/android/support/test/espresso/DataInteraction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -963,7 +965,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1508,6 +1510,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/Espresso.html b/docs/html/reference/android/support/test/espresso/Espresso.html
index bd32991..3074910 100644
--- a/docs/html/reference/android/support/test/espresso/Espresso.html
+++ b/docs/html/reference/android/support/test/espresso/Espresso.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1053,7 +1055,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1836,6 +1838,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/EspressoException.html b/docs/html/reference/android/support/test/espresso/EspressoException.html
index 2f57347..f3827c1 100644
--- a/docs/html/reference/android/support/test/espresso/EspressoException.html
+++ b/docs/html/reference/android/support/test/espresso/EspressoException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -670,7 +672,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -945,6 +947,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/FailureHandler.html b/docs/html/reference/android/support/test/espresso/FailureHandler.html
index 56782a7..9c3cbfd 100644
--- a/docs/html/reference/android/support/test/espresso/FailureHandler.html
+++ b/docs/html/reference/android/support/test/espresso/FailureHandler.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -673,7 +675,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -945,6 +947,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/GraphHolder.html b/docs/html/reference/android/support/test/espresso/GraphHolder.html
index 5d3e2af..21899aa 100644
--- a/docs/html/reference/android/support/test/espresso/GraphHolder.html
+++ b/docs/html/reference/android/support/test/espresso/GraphHolder.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -764,7 +766,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1061,6 +1063,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/IdlingPolicies.html b/docs/html/reference/android/support/test/espresso/IdlingPolicies.html
index 2749d24..706ee8d 100644
--- a/docs/html/reference/android/support/test/espresso/IdlingPolicies.html
+++ b/docs/html/reference/android/support/test/espresso/IdlingPolicies.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -876,7 +878,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1367,6 +1369,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/IdlingPolicy.html b/docs/html/reference/android/support/test/espresso/IdlingPolicy.html
index cbc1731..a4b3cfe 100644
--- a/docs/html/reference/android/support/test/espresso/IdlingPolicy.html
+++ b/docs/html/reference/android/support/test/espresso/IdlingPolicy.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -845,7 +847,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1259,6 +1261,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/IdlingResource.ResourceCallback.html b/docs/html/reference/android/support/test/espresso/IdlingResource.ResourceCallback.html
index 32091cf..907790b 100644
--- a/docs/html/reference/android/support/test/espresso/IdlingResource.ResourceCallback.html
+++ b/docs/html/reference/android/support/test/espresso/IdlingResource.ResourceCallback.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -882,6 +884,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/IdlingResource.html b/docs/html/reference/android/support/test/espresso/IdlingResource.html
index 62770e00..ed5d651 100644
--- a/docs/html/reference/android/support/test/espresso/IdlingResource.html
+++ b/docs/html/reference/android/support/test/espresso/IdlingResource.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -676,7 +678,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -1101,6 +1103,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/IdlingResourceTimeoutException.html b/docs/html/reference/android/support/test/espresso/IdlingResourceTimeoutException.html
index b5aa67c..f0384e4 100644
--- a/docs/html/reference/android/support/test/espresso/IdlingResourceTimeoutException.html
+++ b/docs/html/reference/android/support/test/espresso/IdlingResourceTimeoutException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -881,7 +883,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1115,7 +1117,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1455,6 +1457,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/InjectEventSecurityException.html b/docs/html/reference/android/support/test/espresso/InjectEventSecurityException.html
index 12e820f..c5341a5 100644
--- a/docs/html/reference/android/support/test/espresso/InjectEventSecurityException.html
+++ b/docs/html/reference/android/support/test/espresso/InjectEventSecurityException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -884,7 +886,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1118,7 +1120,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1522,6 +1524,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/NoActivityResumedException.html b/docs/html/reference/android/support/test/espresso/NoActivityResumedException.html
index f03138d..1846c14 100644
--- a/docs/html/reference/android/support/test/espresso/NoActivityResumedException.html
+++ b/docs/html/reference/android/support/test/espresso/NoActivityResumedException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -892,7 +894,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1126,7 +1128,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1498,6 +1500,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/NoMatchingRootException.html b/docs/html/reference/android/support/test/espresso/NoMatchingRootException.html
index bc9e7cb..9cd9bbc 100644
--- a/docs/html/reference/android/support/test/espresso/NoMatchingRootException.html
+++ b/docs/html/reference/android/support/test/espresso/NoMatchingRootException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -877,7 +879,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1111,7 +1113,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1449,6 +1451,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/NoMatchingViewException.Builder.html b/docs/html/reference/android/support/test/espresso/NoMatchingViewException.Builder.html
index 1931ae8..70bdf58 100644
--- a/docs/html/reference/android/support/test/espresso/NoMatchingViewException.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/NoMatchingViewException.Builder.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -915,7 +917,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1480,6 +1482,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/NoMatchingViewException.html b/docs/html/reference/android/support/test/espresso/NoMatchingViewException.html
index 3e8bf88..111c2c8 100644
--- a/docs/html/reference/android/support/test/espresso/NoMatchingViewException.html
+++ b/docs/html/reference/android/support/test/espresso/NoMatchingViewException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -924,7 +926,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1158,7 +1160,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1498,6 +1500,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/PerformException.Builder.html b/docs/html/reference/android/support/test/espresso/PerformException.Builder.html
index 6876db2..0ecef9c 100644
--- a/docs/html/reference/android/support/test/espresso/PerformException.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/PerformException.Builder.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -884,7 +886,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1385,6 +1387,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/PerformException.html b/docs/html/reference/android/support/test/espresso/PerformException.html
index 7e088ad..458a966 100644
--- a/docs/html/reference/android/support/test/espresso/PerformException.html
+++ b/docs/html/reference/android/support/test/espresso/PerformException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -926,7 +928,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1160,7 +1162,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1530,6 +1532,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/Root.Builder.html b/docs/html/reference/android/support/test/espresso/Root.Builder.html
index 01ffe32..f1392e9 100644
--- a/docs/html/reference/android/support/test/espresso/Root.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/Root.Builder.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -848,7 +850,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1285,6 +1287,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/Root.html b/docs/html/reference/android/support/test/espresso/Root.html
index cd14806..d03b558 100644
--- a/docs/html/reference/android/support/test/espresso/Root.html
+++ b/docs/html/reference/android/support/test/espresso/Root.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -856,7 +858,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1254,6 +1256,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/UiController.html b/docs/html/reference/android/support/test/espresso/UiController.html
index 23553c3..d159045 100644
--- a/docs/html/reference/android/support/test/espresso/UiController.html
+++ b/docs/html/reference/android/support/test/espresso/UiController.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1200,6 +1202,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/ViewAction.html b/docs/html/reference/android/support/test/espresso/ViewAction.html
index 65375d8..46cccc5 100644
--- a/docs/html/reference/android/support/test/espresso/ViewAction.html
+++ b/docs/html/reference/android/support/test/espresso/ViewAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -673,7 +675,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -1251,6 +1253,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/ViewAssertion.html b/docs/html/reference/android/support/test/espresso/ViewAssertion.html
index 406b4d9..225af1d 100644
--- a/docs/html/reference/android/support/test/espresso/ViewAssertion.html
+++ b/docs/html/reference/android/support/test/espresso/ViewAssertion.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -912,6 +914,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/ViewFinder.html b/docs/html/reference/android/support/test/espresso/ViewFinder.html
index 5b38324..bdc2193 100644
--- a/docs/html/reference/android/support/test/espresso/ViewFinder.html
+++ b/docs/html/reference/android/support/test/espresso/ViewFinder.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -673,7 +675,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -961,6 +963,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/ViewInteraction.html b/docs/html/reference/android/support/test/espresso/ViewInteraction.html
index b86ff05..cc4fc2b 100644
--- a/docs/html/reference/android/support/test/espresso/ViewInteraction.html
+++ b/docs/html/reference/android/support/test/espresso/ViewInteraction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -874,7 +876,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1350,6 +1352,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/ViewInteractionComponent.html b/docs/html/reference/android/support/test/espresso/ViewInteractionComponent.html
index 57a042f..e47a2c7 100644
--- a/docs/html/reference/android/support/test/espresso/ViewInteractionComponent.html
+++ b/docs/html/reference/android/support/test/espresso/ViewInteractionComponent.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -874,6 +876,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/AdapterDataLoaderAction.html b/docs/html/reference/android/support/test/espresso/action/AdapterDataLoaderAction.html
index 07b841b..87d0833 100644
--- a/docs/html/reference/android/support/test/espresso/action/AdapterDataLoaderAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/AdapterDataLoaderAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -904,7 +906,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1106,7 +1108,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1494,6 +1496,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.Builder.html b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.Builder.html
index d7f4fc3..525d869 100644
--- a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.Builder.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -865,7 +867,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1334,6 +1336,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.html b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.html
index 2b6f07e..a83e524 100644
--- a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.html
+++ b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -887,7 +889,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1330,6 +1332,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.DataFunction.html b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.DataFunction.html
index 8c17f09..01cd848 100644
--- a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.DataFunction.html
+++ b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.DataFunction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -879,6 +881,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.html b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.html
index f6d2df5..29f924d 100644
--- a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.html
+++ b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1254,6 +1256,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocols.html b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocols.html
index fb3948d..8abdd3e 100644
--- a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocols.html
+++ b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocols.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -802,7 +804,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1139,6 +1141,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/CloseKeyboardAction.html b/docs/html/reference/android/support/test/espresso/action/CloseKeyboardAction.html
index f602400..0cb2a96 100644
--- a/docs/html/reference/android/support/test/espresso/action/CloseKeyboardAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/CloseKeyboardAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -886,7 +888,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1088,7 +1090,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1444,6 +1446,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/CoordinatesProvider.html b/docs/html/reference/android/support/test/espresso/action/CoordinatesProvider.html
index ad1b9cf..43c1c07 100644
--- a/docs/html/reference/android/support/test/espresso/action/CoordinatesProvider.html
+++ b/docs/html/reference/android/support/test/espresso/action/CoordinatesProvider.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -674,7 +676,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -956,6 +958,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/EditorAction.html b/docs/html/reference/android/support/test/espresso/action/EditorAction.html
index 23ae19d..3d5f2126 100644
--- a/docs/html/reference/android/support/test/espresso/action/EditorAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/EditorAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -886,7 +888,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1088,7 +1090,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1444,6 +1446,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/EspressoKey.Builder.html b/docs/html/reference/android/support/test/espresso/action/EspressoKey.Builder.html
index ac6e524..c66f60f 100644
--- a/docs/html/reference/android/support/test/espresso/action/EspressoKey.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/action/EspressoKey.Builder.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -906,7 +908,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1411,6 +1413,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/EspressoKey.html b/docs/html/reference/android/support/test/espresso/action/EspressoKey.html
index 15d0e9f..bb56e78 100644
--- a/docs/html/reference/android/support/test/espresso/action/EspressoKey.html
+++ b/docs/html/reference/android/support/test/espresso/action/EspressoKey.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -853,7 +855,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1251,6 +1253,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/GeneralClickAction.html b/docs/html/reference/android/support/test/espresso/action/GeneralClickAction.html
index 963fbb9c..36b63e5 100644
--- a/docs/html/reference/android/support/test/espresso/action/GeneralClickAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/GeneralClickAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -902,7 +904,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1104,7 +1106,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1492,6 +1494,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/GeneralLocation.html b/docs/html/reference/android/support/test/espresso/action/GeneralLocation.html
index abbd5c6..c62721b 100644
--- a/docs/html/reference/android/support/test/espresso/action/GeneralLocation.html
+++ b/docs/html/reference/android/support/test/espresso/action/GeneralLocation.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -983,7 +985,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1185,7 +1187,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1387,7 +1389,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.action.CoordinatesProvider" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.action.CoordinatesProvider-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1438,7 +1440,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1961,6 +1963,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/GeneralSwipeAction.html b/docs/html/reference/android/support/test/espresso/action/GeneralSwipeAction.html
index c1a056f..85ef9f6 100644
--- a/docs/html/reference/android/support/test/espresso/action/GeneralSwipeAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/GeneralSwipeAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -886,7 +888,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1088,7 +1090,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1444,6 +1446,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/KeyEventAction.html b/docs/html/reference/android/support/test/espresso/action/KeyEventAction.html
index b5fa7db..4a7bf4a 100644
--- a/docs/html/reference/android/support/test/espresso/action/KeyEventAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/KeyEventAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -620,11 +622,14 @@
 
 
 
+  <a href="#constants">Constants</a>
 
 
 
 
-  <a href="#pubctors">Ctors</a>
+
+
+  &#124; <a href="#pubctors">Ctors</a>
 
 
 
@@ -754,6 +759,51 @@
 
 
 
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<table id="constants" class="jd-sumtable"><tr><th colspan="12">Constants</th></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../../reference/android/support/test/espresso/action/KeyEventAction.html#BACK_ACTIVITY_TRANSITION_MILLIS_DELAY">BACK_ACTIVITY_TRANSITION_MILLIS_DELAY</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../../reference/android/support/test/espresso/action/KeyEventAction.html#CLEAR_TRANSITIONING_ACTIVITIES_ATTEMPTS">CLEAR_TRANSITIONING_ACTIVITIES_ATTEMPTS</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../../reference/android/support/test/espresso/action/KeyEventAction.html#CLEAR_TRANSITIONING_ACTIVITIES_MILLIS_DELAY">CLEAR_TRANSITIONING_ACTIVITIES_MILLIS_DELAY</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+
+</table>
+
+
 
 
 
@@ -886,7 +936,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1088,7 +1138,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1201,6 +1251,136 @@
 <!-- Constants -->
 
 
+<!-- ========= ENUM CONSTANTS DETAIL ======== -->
+<h2>Constants</h2>
+
+
+
+
+<A NAME="BACK_ACTIVITY_TRANSITION_MILLIS_DELAY"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        int
+      </span>
+        BACK_ACTIVITY_TRANSITION_MILLIS_DELAY
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                150
+                (0x00000096)
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="CLEAR_TRANSITIONING_ACTIVITIES_ATTEMPTS"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        int
+      </span>
+        CLEAR_TRANSITIONING_ACTIVITIES_ATTEMPTS
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                4
+                (0x00000004)
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="CLEAR_TRANSITIONING_ACTIVITIES_MILLIS_DELAY"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        int
+      </span>
+        CLEAR_TRANSITIONING_ACTIVITIES_MILLIS_DELAY
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                150
+                (0x00000096)
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+
 <!-- Fields -->
 
 
@@ -1444,6 +1624,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/MotionEvents.DownResultHolder.html b/docs/html/reference/android/support/test/espresso/action/MotionEvents.DownResultHolder.html
index 92ed2a4..b167845 100644
--- a/docs/html/reference/android/support/test/espresso/action/MotionEvents.DownResultHolder.html
+++ b/docs/html/reference/android/support/test/espresso/action/MotionEvents.DownResultHolder.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -809,7 +811,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1175,6 +1177,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/MotionEvents.html b/docs/html/reference/android/support/test/espresso/action/MotionEvents.html
index b4d0fba..ac84b8b 100644
--- a/docs/html/reference/android/support/test/espresso/action/MotionEvents.html
+++ b/docs/html/reference/android/support/test/espresso/action/MotionEvents.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -885,7 +887,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1347,6 +1349,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/OpenLinkAction.html b/docs/html/reference/android/support/test/espresso/action/OpenLinkAction.html
index c98627b..db3af22 100644
--- a/docs/html/reference/android/support/test/espresso/action/OpenLinkAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/OpenLinkAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -888,7 +890,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1090,7 +1092,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1446,6 +1448,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/PrecisionDescriber.html b/docs/html/reference/android/support/test/espresso/action/PrecisionDescriber.html
index 4beb36a..a73878d 100644
--- a/docs/html/reference/android/support/test/espresso/action/PrecisionDescriber.html
+++ b/docs/html/reference/android/support/test/espresso/action/PrecisionDescriber.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -674,7 +676,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -947,6 +949,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/Press.html b/docs/html/reference/android/support/test/espresso/action/Press.html
index 254d83c..f027a7b 100644
--- a/docs/html/reference/android/support/test/espresso/action/Press.html
+++ b/docs/html/reference/android/support/test/espresso/action/Press.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -899,7 +901,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1101,7 +1103,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1303,7 +1305,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.action.PrecisionDescriber" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.action.PrecisionDescriber-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1354,7 +1356,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1660,6 +1662,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/ReplaceTextAction.html b/docs/html/reference/android/support/test/espresso/action/ReplaceTextAction.html
index 0142ec7..3f1d4e3 100644
--- a/docs/html/reference/android/support/test/espresso/action/ReplaceTextAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/ReplaceTextAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -886,7 +888,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1088,7 +1090,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1444,6 +1446,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/ScrollToAction.html b/docs/html/reference/android/support/test/espresso/action/ScrollToAction.html
index f634987..63061cf 100644
--- a/docs/html/reference/android/support/test/espresso/action/ScrollToAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/ScrollToAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -886,7 +888,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1088,7 +1090,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1444,6 +1446,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/Swipe.html b/docs/html/reference/android/support/test/espresso/action/Swipe.html
index 60545a1..c03b3d6 100644
--- a/docs/html/reference/android/support/test/espresso/action/Swipe.html
+++ b/docs/html/reference/android/support/test/espresso/action/Swipe.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -887,7 +889,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1089,7 +1091,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1291,7 +1293,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.action.Swiper" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.action.Swiper-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1343,7 +1345,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1618,6 +1620,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/Swiper.Status.html b/docs/html/reference/android/support/test/espresso/action/Swiper.Status.html
index c682799..ecd0666 100644
--- a/docs/html/reference/android/support/test/espresso/action/Swiper.Status.html
+++ b/docs/html/reference/android/support/test/espresso/action/Swiper.Status.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -875,7 +877,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1077,7 +1079,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1281,7 +1283,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1558,6 +1560,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/Swiper.html b/docs/html/reference/android/support/test/espresso/action/Swiper.html
index 469285f..b10ef30 100644
--- a/docs/html/reference/android/support/test/espresso/action/Swiper.html
+++ b/docs/html/reference/android/support/test/espresso/action/Swiper.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -677,7 +679,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -998,6 +1000,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/Tap.html b/docs/html/reference/android/support/test/espresso/action/Tap.html
index c9355ea..ce5392c 100644
--- a/docs/html/reference/android/support/test/espresso/action/Tap.html
+++ b/docs/html/reference/android/support/test/espresso/action/Tap.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -899,7 +901,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1101,7 +1103,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1303,7 +1305,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.action.Tapper" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.action.Tapper-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1354,7 +1356,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1660,6 +1662,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/Tapper.Status.html b/docs/html/reference/android/support/test/espresso/action/Tapper.Status.html
index f30ebbc..76d8420 100644
--- a/docs/html/reference/android/support/test/espresso/action/Tapper.Status.html
+++ b/docs/html/reference/android/support/test/espresso/action/Tapper.Status.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -888,7 +890,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1090,7 +1092,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1294,7 +1296,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1605,6 +1607,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/Tapper.html b/docs/html/reference/android/support/test/espresso/action/Tapper.html
index 34f527d..36b742a 100644
--- a/docs/html/reference/android/support/test/espresso/action/Tapper.html
+++ b/docs/html/reference/android/support/test/espresso/action/Tapper.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -677,7 +679,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -992,6 +994,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/TypeTextAction.html b/docs/html/reference/android/support/test/espresso/action/TypeTextAction.html
index d682c34..87af578 100644
--- a/docs/html/reference/android/support/test/espresso/action/TypeTextAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/TypeTextAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -916,7 +918,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1118,7 +1120,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1533,6 +1535,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/ViewActions.html b/docs/html/reference/android/support/test/espresso/action/ViewActions.html
index 23bf927..303ea32 100644
--- a/docs/html/reference/android/support/test/espresso/action/ViewActions.html
+++ b/docs/html/reference/android/support/test/espresso/action/ViewActions.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1424,7 +1426,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2811,6 +2813,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/action/package-summary.html b/docs/html/reference/android/support/test/espresso/action/package-summary.html
index 17135b1..58447bf 100644
--- a/docs/html/reference/android/support/test/espresso/action/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/action/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1052,6 +1054,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/assertion/LayoutAssertions.html b/docs/html/reference/android/support/test/espresso/assertion/LayoutAssertions.html
index 4ecab33..73bfe57 100644
--- a/docs/html/reference/android/support/test/espresso/assertion/LayoutAssertions.html
+++ b/docs/html/reference/android/support/test/espresso/assertion/LayoutAssertions.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -838,7 +840,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1280,6 +1282,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/assertion/PositionAssertions.html b/docs/html/reference/android/support/test/espresso/assertion/PositionAssertions.html
index 79acb7e..c54c361 100644
--- a/docs/html/reference/android/support/test/espresso/assertion/PositionAssertions.html
+++ b/docs/html/reference/android/support/test/espresso/assertion/PositionAssertions.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -934,7 +936,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1656,6 +1658,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/assertion/ViewAssertions.html b/docs/html/reference/android/support/test/espresso/assertion/ViewAssertions.html
index c211906..b22bcd7 100644
--- a/docs/html/reference/android/support/test/espresso/assertion/ViewAssertions.html
+++ b/docs/html/reference/android/support/test/espresso/assertion/ViewAssertions.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -814,7 +816,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1221,6 +1223,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/assertion/package-summary.html b/docs/html/reference/android/support/test/espresso/assertion/package-summary.html
index 9b84ad7..708e955 100644
--- a/docs/html/reference/android/support/test/espresso/assertion/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/assertion/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -697,6 +699,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/ActiveRootLister.html b/docs/html/reference/android/support/test/espresso/base/ActiveRootLister.html
index d1b2293..768e6f1 100644
--- a/docs/html/reference/android/support/test/espresso/base/ActiveRootLister.html
+++ b/docs/html/reference/android/support/test/espresso/base/ActiveRootLister.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -876,6 +878,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.FailureHandlerHolder.html b/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.FailureHandlerHolder.html
index 9c3c6b0..e2ab59e 100644
--- a/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.FailureHandlerHolder.html
+++ b/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.FailureHandlerHolder.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -817,7 +819,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1222,6 +1224,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.html b/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.html
index d4a322d..0ed54af 100644
--- a/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.html
+++ b/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -957,7 +959,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1586,6 +1588,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/Default.html b/docs/html/reference/android/support/test/espresso/base/Default.html
index 8a27cbc..d19184c 100644
--- a/docs/html/reference/android/support/test/espresso/base/Default.html
+++ b/docs/html/reference/android/support/test/espresso/base/Default.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -736,7 +738,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -921,6 +923,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/DefaultFailureHandler.html b/docs/html/reference/android/support/test/espresso/base/DefaultFailureHandler.html
index ff1755f..cd58415 100644
--- a/docs/html/reference/android/support/test/espresso/base/DefaultFailureHandler.html
+++ b/docs/html/reference/android/support/test/espresso/base/DefaultFailureHandler.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -822,7 +824,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1024,7 +1026,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.FailureHandler" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.FailureHandler-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1248,6 +1250,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/IdlingResourceRegistry.html b/docs/html/reference/android/support/test/espresso/base/IdlingResourceRegistry.html
index ae3cc2f..f2b24b9 100644
--- a/docs/html/reference/android/support/test/espresso/base/IdlingResourceRegistry.html
+++ b/docs/html/reference/android/support/test/espresso/base/IdlingResourceRegistry.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -870,7 +872,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1357,6 +1359,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/MainThread.html b/docs/html/reference/android/support/test/espresso/base/MainThread.html
index 7dfb18d..f5eb0b1 100644
--- a/docs/html/reference/android/support/test/espresso/base/MainThread.html
+++ b/docs/html/reference/android/support/test/espresso/base/MainThread.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -736,7 +738,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -921,6 +923,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/RootViewPicker.html b/docs/html/reference/android/support/test/espresso/base/RootViewPicker.html
index 4638edb..902e6ab 100644
--- a/docs/html/reference/android/support/test/espresso/base/RootViewPicker.html
+++ b/docs/html/reference/android/support/test/espresso/base/RootViewPicker.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -788,7 +790,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -990,7 +992,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-javax.inject.Provider" class="jd-expando-trigger closed"
           ><img id="inherited-methods-javax.inject.Provider-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1164,6 +1166,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/UiControllerModule.html b/docs/html/reference/android/support/test/espresso/base/UiControllerModule.html
index c2af7bd..080a129 100644
--- a/docs/html/reference/android/support/test/espresso/base/UiControllerModule.html
+++ b/docs/html/reference/android/support/test/espresso/base/UiControllerModule.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -801,7 +803,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1174,6 +1176,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/ViewFinderImpl.html b/docs/html/reference/android/support/test/espresso/base/ViewFinderImpl.html
index 3c8fb58..75720eb 100644
--- a/docs/html/reference/android/support/test/espresso/base/ViewFinderImpl.html
+++ b/docs/html/reference/android/support/test/espresso/base/ViewFinderImpl.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -792,7 +794,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -994,7 +996,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewFinder" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewFinder-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1194,6 +1196,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/base/package-summary.html b/docs/html/reference/android/support/test/espresso/base/package-summary.html
index 40788b4..7762c8a 100644
--- a/docs/html/reference/android/support/test/espresso/base/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/base/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -810,6 +812,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/contrib/AccessibilityChecks.html b/docs/html/reference/android/support/test/espresso/contrib/AccessibilityChecks.html
index 77597b3..ffe9828 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/AccessibilityChecks.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/AccessibilityChecks.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -791,7 +793,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1168,6 +1170,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/contrib/CountingIdlingResource.html b/docs/html/reference/android/support/test/espresso/contrib/CountingIdlingResource.html
index 525865e..c5fef67 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/CountingIdlingResource.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/CountingIdlingResource.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1018,7 +1020,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1220,7 +1222,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.IdlingResource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.IdlingResource-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1732,6 +1734,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/contrib/DrawerActions.html b/docs/html/reference/android/support/test/espresso/contrib/DrawerActions.html
index 649be75..0f5adc1 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/DrawerActions.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/DrawerActions.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -744,13 +746,63 @@
 
             static
 
+            <a href="../../../../../../reference/android/support/test/espresso/ViewAction.html">ViewAction</a></nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#close(int)">close</a></span>(int gravity)</nobr>
+
+        <div class="jd-descrdiv">
+          Creates an action which closes the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with the gravity.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            <a href="../../../../../../reference/android/support/test/espresso/ViewAction.html">ViewAction</a></nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#close()">close</a></span>()</nobr>
+
+        <div class="jd-descrdiv">
+          Creates an action which closes the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with gravity START.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#closeDrawer(int)">closeDrawer</a></span>(int drawerLayoutId)</nobr>
 
         <div class="jd-descrdiv">
-          Closes the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with the given id and gravity START.
+          <em>
+      This method is deprecated.
+    Use <code><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#close()">close()</a></code> with <code>perform</code> after matching a view. This method will
+ be removed in the next release.
+</em>
 
 
 
@@ -773,7 +825,57 @@
         <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#closeDrawer(int, int)">closeDrawer</a></span>(int drawerLayoutId, int gravity)</nobr>
 
         <div class="jd-descrdiv">
-          Closes the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with the given id and gravity.
+          <em>
+      This method is deprecated.
+    Use <code><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#open(int)">open(int)</a></code> with <code>perform</code> after matching a view. This method will
+ be removed in the next release.
+</em>
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            <a href="../../../../../../reference/android/support/test/espresso/ViewAction.html">ViewAction</a></nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#open(int)">open</a></span>(int gravity)</nobr>
+
+        <div class="jd-descrdiv">
+          Creates an action which opens the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> drawer with the gravity.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            <a href="../../../../../../reference/android/support/test/espresso/ViewAction.html">ViewAction</a></nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#open()">open</a></span>()</nobr>
+
+        <div class="jd-descrdiv">
+          Creates an action which opens the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> drawer with gravity START.
 
 
 
@@ -796,7 +898,11 @@
         <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#openDrawer(int, int)">openDrawer</a></span>(int drawerLayoutId, int gravity)</nobr>
 
         <div class="jd-descrdiv">
-          Opens the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with the given id and gravity.
+          <em>
+      This method is deprecated.
+    Use <code><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#open(int)">open(int)</a></code> with <code>perform</code> after matching a view. This method will
+ be removed in the next release.
+</em>
 
 
 
@@ -819,7 +925,11 @@
         <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#openDrawer(int)">openDrawer</a></span>(int drawerLayoutId)</nobr>
 
         <div class="jd-descrdiv">
-          Opens the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with the given id and gravity START.
+          <em>
+      This method is deprecated.
+    Use <code><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#open()">open()</a></code> with <code>perform</code> after matching a view. This method will
+ be removed in the next release.
+</em>
 
 
 
@@ -847,7 +957,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1086,6 +1196,74 @@
 
 
 
+<A NAME="close(int)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+
+
+
+        <a href="../../../../../../reference/android/support/test/espresso/ViewAction.html">ViewAction</a>
+      </span>
+      <span class="sympad">close</span>
+      <span class="normal">(int gravity)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Creates an action which closes the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with the gravity. This method
+ blocks until the drawer is fully closed. No operation if the drawer is already closed.
+</p></div>
+
+    </div>
+</div>
+
+
+<A NAME="close()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+
+
+
+        <a href="../../../../../../reference/android/support/test/espresso/ViewAction.html">ViewAction</a>
+      </span>
+      <span class="sympad">close</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Creates an action which closes the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with gravity START. This method
+ blocks until the drawer is fully closed. No operation if the drawer is already closed.
+</p></div>
+
+    </div>
+</div>
+
+
 <A NAME="closeDrawer(int)"></A>
 
 <div class="jd-details api apilevel-">
@@ -1111,11 +1289,14 @@
 
 
 
+      <p>
+  <p class="caution"><strong>
+      This method is deprecated.</strong><br/>
+    Use <code><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#close()">close()</a></code> with <code>perform</code> after matching a view. This method will
+ be removed in the next release.
 
-  <div class="jd-tagdata jd-tagdescr"><p>Closes the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with the given id and gravity START. This method blocks until
- the drawer is fully closed. This method will throw an exception if the drawer is already
- closed.
-</p></div>
+  </p>
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
 </div>
@@ -1146,9 +1327,81 @@
 
 
 
+      <p>
+  <p class="caution"><strong>
+      This method is deprecated.</strong><br/>
+    Use <code><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#open(int)">open(int)</a></code> with <code>perform</code> after matching a view. This method will
+ be removed in the next release.
 
-  <div class="jd-tagdata jd-tagdescr"><p>Closes the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with the given id and gravity. This method blocks until the
- drawer is fully closed. This method will throw an exception if the drawer is already closed.
+  </p>
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="open(int)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+
+
+
+        <a href="../../../../../../reference/android/support/test/espresso/ViewAction.html">ViewAction</a>
+      </span>
+      <span class="sympad">open</span>
+      <span class="normal">(int gravity)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Creates an action which opens the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> drawer with the gravity. This method
+ blocks until the drawer is fully open. No operation if the drawer is already open.
+</p></div>
+
+    </div>
+</div>
+
+
+<A NAME="open()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+
+
+
+        <a href="../../../../../../reference/android/support/test/espresso/ViewAction.html">ViewAction</a>
+      </span>
+      <span class="sympad">open</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Creates an action which opens the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> drawer with gravity START. This method
+ blocks until the drawer is fully open. No operation if the drawer is already open.
 </p></div>
 
     </div>
@@ -1180,10 +1433,14 @@
 
 
 
+      <p>
+  <p class="caution"><strong>
+      This method is deprecated.</strong><br/>
+    Use <code><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#open(int)">open(int)</a></code> with <code>perform</code> after matching a view. This method will
+ be removed in the next release.
 
-  <div class="jd-tagdata jd-tagdescr"><p>Opens the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with the given id and gravity. This method blocks until the
- drawer is fully open. No operation if the drawer is already open.
-</p></div>
+  </p>
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
 </div>
@@ -1214,10 +1471,14 @@
 
 
 
+      <p>
+  <p class="caution"><strong>
+      This method is deprecated.</strong><br/>
+    Use <code><a href="../../../../../../reference/android/support/test/espresso/contrib/DrawerActions.html#open()">open()</a></code> with <code>perform</code> after matching a view. This method will
+ be removed in the next release.
 
-  <div class="jd-tagdata jd-tagdescr"><p>Opens the <code><a href="../../../../../../reference/android/support/v4/widget/DrawerLayout.html">DrawerLayout</a></code> with the given id and gravity START. This method blocks until
- the drawer is fully open. No operation if the drawer is already open.
-</p></div>
+  </p>
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
 </div>
@@ -1286,6 +1547,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/contrib/DrawerMatchers.html b/docs/html/reference/android/support/test/espresso/contrib/DrawerMatchers.html
index 5e18a7f..54822bd 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/DrawerMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/DrawerMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -842,7 +844,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1282,6 +1284,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/contrib/PickerActions.html b/docs/html/reference/android/support/test/espresso/contrib/PickerActions.html
index 78430ae..f090b22 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/PickerActions.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/PickerActions.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -802,7 +804,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1170,6 +1172,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.PositionableRecyclerViewAction.html b/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.PositionableRecyclerViewAction.html
index 38e6e529..acebfec 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.PositionableRecyclerViewAction.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.PositionableRecyclerViewAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -771,7 +773,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1022,6 +1024,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.html b/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.html
index 270cdcf..5343364 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -928,7 +930,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1274,7 +1276,7 @@
         </tr>
         <tr>
           <th>viewAction</td>
-          <td>the action that is performed on the view matched by viewHolderMatcher</td>
+          <td>the action that is performed on the view matched by itemViewMatcher</td>
         </tr>
       </table>
   </div>
@@ -1572,6 +1574,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/contrib/package-summary.html b/docs/html/reference/android/support/test/espresso/contrib/package-summary.html
index 63a373c..e61f302 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -762,6 +764,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/Checks.html b/docs/html/reference/android/support/test/espresso/intent/Checks.html
index 9f81dd8..ecbb224 100644
--- a/docs/html/reference/android/support/test/espresso/intent/Checks.html
+++ b/docs/html/reference/android/support/test/espresso/intent/Checks.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -864,7 +866,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1390,6 +1392,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/Intents.html b/docs/html/reference/android/support/test/espresso/intent/Intents.html
index f2a2e64..c517775 100644
--- a/docs/html/reference/android/support/test/espresso/intent/Intents.html
+++ b/docs/html/reference/android/support/test/espresso/intent/Intents.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -952,7 +954,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1561,6 +1563,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/OngoingStubbing.html b/docs/html/reference/android/support/test/espresso/intent/OngoingStubbing.html
index c3abec5..b2d6f11 100644
--- a/docs/html/reference/android/support/test/espresso/intent/OngoingStubbing.html
+++ b/docs/html/reference/android/support/test/espresso/intent/OngoingStubbing.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -775,7 +777,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1110,6 +1112,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/ResettingStubber.html b/docs/html/reference/android/support/test/espresso/intent/ResettingStubber.html
index dbeb5cf..e61b13b 100644
--- a/docs/html/reference/android/support/test/espresso/intent/ResettingStubber.html
+++ b/docs/html/reference/android/support/test/espresso/intent/ResettingStubber.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -663,7 +665,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -873,7 +875,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.runner.intent.IntentStubber" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.runner.intent.IntentStubber-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1163,6 +1165,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/ResettingStubberImpl.html b/docs/html/reference/android/support/test/espresso/intent/ResettingStubberImpl.html
index c2d59c2..3e5d98f 100644
--- a/docs/html/reference/android/support/test/espresso/intent/ResettingStubberImpl.html
+++ b/docs/html/reference/android/support/test/espresso/intent/ResettingStubberImpl.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -909,7 +911,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1111,7 +1113,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.intent.ResettingStubber" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.intent.ResettingStubber-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1223,7 +1225,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.runner.intent.IntentStubber" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.runner.intent.IntentStubber-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1585,6 +1587,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/ResolvedIntent.html b/docs/html/reference/android/support/test/espresso/intent/ResolvedIntent.html
index 28778b5..0bf2ffa 100644
--- a/docs/html/reference/android/support/test/espresso/intent/ResolvedIntent.html
+++ b/docs/html/reference/android/support/test/espresso/intent/ResolvedIntent.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -649,7 +651,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -976,6 +978,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/VerifiableIntent.html b/docs/html/reference/android/support/test/espresso/intent/VerifiableIntent.html
index 33e4646..113655b 100644
--- a/docs/html/reference/android/support/test/espresso/intent/VerifiableIntent.html
+++ b/docs/html/reference/android/support/test/espresso/intent/VerifiableIntent.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -789,7 +791,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.intent.ResolvedIntent" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.intent.ResolvedIntent-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1028,6 +1030,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/VerificationMode.html b/docs/html/reference/android/support/test/espresso/intent/VerificationMode.html
index 9944b58..0d16d38 100644
--- a/docs/html/reference/android/support/test/espresso/intent/VerificationMode.html
+++ b/docs/html/reference/android/support/test/espresso/intent/VerificationMode.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -859,6 +861,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/VerificationModes.html b/docs/html/reference/android/support/test/espresso/intent/VerificationModes.html
index 5f68f2e..5488c26 100644
--- a/docs/html/reference/android/support/test/espresso/intent/VerificationModes.html
+++ b/docs/html/reference/android/support/test/espresso/intent/VerificationModes.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -799,7 +801,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1168,6 +1170,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/matcher/BundleMatchers.html b/docs/html/reference/android/support/test/espresso/intent/matcher/BundleMatchers.html
index 78651df..a2481fc 100644
--- a/docs/html/reference/android/support/test/espresso/intent/matcher/BundleMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/intent/matcher/BundleMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -855,7 +857,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1381,6 +1383,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/matcher/ComponentNameMatchers.html b/docs/html/reference/android/support/test/espresso/intent/matcher/ComponentNameMatchers.html
index 419bee2..1d6d21d 100644
--- a/docs/html/reference/android/support/test/espresso/intent/matcher/ComponentNameMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/intent/matcher/ComponentNameMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -863,7 +865,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1391,6 +1393,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/matcher/IntentMatchers.html b/docs/html/reference/android/support/test/espresso/intent/matcher/IntentMatchers.html
index 4e58504..ce18381 100644
--- a/docs/html/reference/android/support/test/espresso/intent/matcher/IntentMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/intent/matcher/IntentMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1181,7 +1183,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2338,6 +2340,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/matcher/UriMatchers.html b/docs/html/reference/android/support/test/espresso/intent/matcher/UriMatchers.html
index 8366f1b..aacd7c7 100644
--- a/docs/html/reference/android/support/test/espresso/intent/matcher/UriMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/intent/matcher/UriMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -936,7 +938,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1622,6 +1624,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/matcher/package-summary.html b/docs/html/reference/android/support/test/espresso/intent/matcher/package-summary.html
index 63f6d52..686bc63 100644
--- a/docs/html/reference/android/support/test/espresso/intent/matcher/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/intent/matcher/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -710,6 +712,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/package-summary.html b/docs/html/reference/android/support/test/espresso/intent/package-summary.html
index 4b6c926..8f2ac36 100644
--- a/docs/html/reference/android/support/test/espresso/intent/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/intent/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -784,6 +786,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/rule/IntentsTestRule.html b/docs/html/reference/android/support/test/espresso/intent/rule/IntentsTestRule.html
index c4f4625..c51c711 100644
--- a/docs/html/reference/android/support/test/espresso/intent/rule/IntentsTestRule.html
+++ b/docs/html/reference/android/support/test/espresso/intent/rule/IntentsTestRule.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -725,8 +727,8 @@
  <p>
  Espresso-Intents APIs can be used in two ways:
  <ul>
- <li>Intent Verification, using the <code><a href="../../../../../../../reference/android/support/test/espresso/intent/Intents.html#intended(org.hamcrest.Matcher<android.content.Intent>)">intended(Matcher)</a></code> API</li>
- <li>Intent Stubbing, using the <code><a href="../../../../../../../reference/android/support/test/espresso/intent/Intents.html#intending(org.hamcrest.Matcher<android.content.Intent>)">intending(Matcher)</a></code> API</li>
+ <li>Intent Verification, using the <code><a href="../../../../../../../reference/android/support/test/espresso/intent/Intents.html#intended(org.hamcrest.Matcher<android.content.Intent>)">intended(Matcher)</a></code> API<li/>
+ <li>Intent Stubbing, using the <code><a href="../../../../../../../reference/android/support/test/espresso/intent/Intents.html#intending(org.hamcrest.Matcher<android.content.Intent>)">intending(Matcher)</a></code> API<li/>
  </ul></p>
 
 
@@ -815,6 +817,22 @@
 
 
 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../../../reference/android/support/test/espresso/intent/rule/IntentsTestRule.html#IntentsTestRule(java.lang.Class<T>, boolean, boolean)">IntentsTestRule</a></span>(Class&lt;T&gt; activityClass, boolean initialTouchMode, boolean launchActivity)</nobr>
+
+  </td></tr>
+
+
+
 </table>
 
 
@@ -895,7 +913,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.rule.ActivityTestRule" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.rule.ActivityTestRule-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1073,7 +1091,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.rule.UiThreadTestRule" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.rule.UiThreadTestRule-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1154,7 +1172,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1356,7 +1374,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.rules.TestRule" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.rules.TestRule-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1491,6 +1509,38 @@
 </div>
 
 
+<A NAME="IntentsTestRule(java.lang.Class<T>, boolean, boolean)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+
+
+
+
+
+      </span>
+      <span class="sympad">IntentsTestRule</span>
+      <span class="normal">(Class&lt;T&gt; activityClass, boolean initialTouchMode, boolean launchActivity)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
 
 
 
@@ -1646,6 +1696,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/intent/rule/package-summary.html b/docs/html/reference/android/support/test/espresso/intent/rule/package-summary.html
index d5dd04a..543f4423 100644
--- a/docs/html/reference/android/support/test/espresso/intent/rule/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/intent/rule/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -673,6 +675,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/matcher/BoundedMatcher.html b/docs/html/reference/android/support/test/espresso/matcher/BoundedMatcher.html
index ab0a98d..796063d 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/BoundedMatcher.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/BoundedMatcher.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -710,7 +712,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
           ><img id="subclasses-direct-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Direct Subclasses
 
   <div id="subclasses-direct">
@@ -915,7 +917,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.BaseMatcher" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.hamcrest.BaseMatcher-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -989,7 +991,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1191,7 +1193,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.Matcher" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.hamcrest.Matcher-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1265,7 +1267,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.SelfDescribing" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.hamcrest.SelfDescribing-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1547,6 +1549,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.CursorMatcher.html b/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.CursorMatcher.html
index 21cc23d..2972f62 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.CursorMatcher.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.CursorMatcher.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -865,7 +867,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.matcher.BoundedMatcher" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.matcher.BoundedMatcher-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -923,7 +925,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.BaseMatcher" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.hamcrest.BaseMatcher-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -997,7 +999,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1199,7 +1201,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.Matcher" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.hamcrest.Matcher-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1273,7 +1275,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.SelfDescribing" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.hamcrest.SelfDescribing-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1515,6 +1517,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.html b/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.html
index 6d5c7fb..fad8f56 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1630,7 +1632,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3668,6 +3670,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/matcher/LayoutMatchers.html b/docs/html/reference/android/support/test/espresso/matcher/LayoutMatchers.html
index 77d4d0f..7fc0419 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/LayoutMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/LayoutMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -797,7 +799,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1168,6 +1170,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/matcher/PreferenceMatchers.html b/docs/html/reference/android/support/test/espresso/matcher/PreferenceMatchers.html
index 299fdb0..ce1268c 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/PreferenceMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/PreferenceMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -895,7 +897,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1485,6 +1487,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/matcher/RootMatchers.html b/docs/html/reference/android/support/test/espresso/matcher/RootMatchers.html
index feefcda..e55797e 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/RootMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/RootMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -894,7 +896,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1401,6 +1403,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.Visibility.html b/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.Visibility.html
index 88cffcc..65b46a7 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.Visibility.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.Visibility.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -877,7 +879,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1079,7 +1081,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1283,7 +1285,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1621,6 +1623,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.html b/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.html
index d7e98bd..53d3d1e 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -865,6 +867,52 @@
             Matcher&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/matcher/ViewMatchers.html#hasErrorText(java.lang.String)">hasErrorText</a></span>(String expectedError)</nobr>
+
+        <div class="jd-descrdiv">
+          Returns a matcher that matches <code><a href="../../../../../../reference/android/widget/EditText.html">EditText</a></code> based on edit text error string value.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            Matcher&lt;View&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/matcher/ViewMatchers.html#hasErrorText(org.hamcrest.Matcher<java.lang.String>)">hasErrorText</a></span>(Matcher&lt;String&gt; stringMatcher)</nobr>
+
+        <div class="jd-descrdiv">
+          Returns a matcher that matches <code><a href="../../../../../../reference/android/widget/EditText.html">EditText</a></code> based on edit text error string value.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            Matcher&lt;View&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/matcher/ViewMatchers.html#hasFocus()">hasFocus</a></span>()</nobr>
 
         <div class="jd-descrdiv">
@@ -1572,6 +1620,29 @@
             Matcher&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/matcher/ViewMatchers.html#withInputType(int)">withInputType</a></span>(int inputType)</nobr>
+
+        <div class="jd-descrdiv">
+          Returns a matcher that matches <code><a href="../../../../../../reference/android/text/InputType.html">InputType</a></code>.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            Matcher&lt;View&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/matcher/ViewMatchers.html#withParent(org.hamcrest.Matcher<android.view.View>)">withParent</a></span>(Matcher&lt;View&gt; parentMatcher)</nobr>
 
         <div class="jd-descrdiv">
@@ -1586,7 +1657,7 @@
 
 
 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
 
 
@@ -1609,7 +1680,7 @@
 
 
 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
 
 
@@ -1633,7 +1704,7 @@
 
 
 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
 
 
@@ -1656,7 +1727,7 @@
 
 
 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
 
 
@@ -1679,7 +1750,7 @@
 
 
 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
 
 
@@ -1702,7 +1773,7 @@
 
 
 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
 
 
@@ -1725,7 +1796,7 @@
 
 
 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
 
 
@@ -1748,7 +1819,7 @@
 
 
 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
 
 
@@ -1771,7 +1842,7 @@
 
 
 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
 
 
@@ -1813,7 +1884,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2225,6 +2296,74 @@
 </div>
 
 
+<A NAME="hasErrorText(java.lang.String)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+
+
+
+        Matcher&lt;View&gt;
+      </span>
+      <span class="sympad">hasErrorText</span>
+      <span class="normal">(String expectedError)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Returns a matcher that matches <code><a href="../../../../../../reference/android/widget/EditText.html">EditText</a></code> based on edit text error string value.
+ <p>
+ Note: Sugar for hasErrorText(is("string")).
+</p></div>
+
+    </div>
+</div>
+
+
+<A NAME="hasErrorText(org.hamcrest.Matcher<java.lang.String>)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+
+
+
+        Matcher&lt;View&gt;
+      </span>
+      <span class="sympad">hasErrorText</span>
+      <span class="normal">(Matcher&lt;String&gt; stringMatcher)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Returns a matcher that matches <code><a href="../../../../../../reference/android/widget/EditText.html">EditText</a></code> based on edit text error string value.
+</p></div>
+
+    </div>
+</div>
+
+
 <A NAME="hasFocus()"></A>
 
 <div class="jd-details api apilevel-">
@@ -3397,6 +3536,39 @@
 </div>
 
 
+<A NAME="withInputType(int)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+
+
+
+        Matcher&lt;View&gt;
+      </span>
+      <span class="sympad">withInputType</span>
+      <span class="normal">(int inputType)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Returns a matcher that matches <code><a href="../../../../../../reference/android/text/InputType.html">InputType</a></code>.
+</p></div>
+
+    </div>
+</div>
+
+
 <A NAME="withParent(org.hamcrest.Matcher<android.view.View>)"></A>
 
 <div class="jd-details api apilevel-">
@@ -3884,6 +4056,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/matcher/package-summary.html b/docs/html/reference/android/support/test/espresso/matcher/package-summary.html
index c189041..8c87e68 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -772,6 +774,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/package-summary.html b/docs/html/reference/android/support/test/espresso/package-summary.html
index 1f789e2..4519810 100644
--- a/docs/html/reference/android/support/test/espresso/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1044,6 +1046,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/util/ActivityLifecycles.html b/docs/html/reference/android/support/test/espresso/util/ActivityLifecycles.html
index bb8bdca..95a6b3e 100644
--- a/docs/html/reference/android/support/test/espresso/util/ActivityLifecycles.html
+++ b/docs/html/reference/android/support/test/espresso/util/ActivityLifecycles.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -758,6 +760,30 @@
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/util/ActivityLifecycles.html#hasTransitioningActivities(android.support.test.runner.lifecycle.ActivityLifecycleMonitor)">hasTransitioningActivities</a></span>(<a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html">ActivityLifecycleMonitor</a> monitor)</nobr>
+
+        <div class="jd-descrdiv">
+          Indicates whether or not an Activity, not in the foreground, exists in our app within the
+ "Visible Lifetime" state.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../../reference/android/support/test/espresso/util/ActivityLifecycles.html#hasVisibleActivities(android.support.test.runner.lifecycle.ActivityLifecycleMonitor)">hasVisibleActivities</a></span>(<a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html">ActivityLifecycleMonitor</a> monitor)</nobr>
 
         <div class="jd-descrdiv">
@@ -789,7 +815,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1080,6 +1106,64 @@
 </div>
 
 
+<A NAME="hasTransitioningActivities(android.support.test.runner.lifecycle.ActivityLifecycleMonitor)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+
+
+
+        boolean
+      </span>
+      <span class="sympad">hasTransitioningActivities</span>
+      <span class="normal">(<a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html">ActivityLifecycleMonitor</a> monitor)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Indicates whether or not an Activity, not in the foreground, exists in our app within the
+ "Visible Lifetime" state.
+
+ <p>The "Visible Lifetime" is defined as an activity where the onStart() method has been called
+ but where the onStop() method has not been called.
+
+ <p>During this time, the Activity may be visible to the user, and it may be receiving input
+ from the user. This time is a superset of the "Foreground lifetime" of the activity.
+
+ <p>It may be the case that an application has activities in the "visible lifetime" but none in
+ the "Foreground lifetime." It may be the case that without user input an activity will shortly
+ transition into the "Foreground lifetime" in this state, however it also may not transition
+ without further user interaction.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>monitor</td>
+          <td>the ActivityLifecycleMonitor to use</td>
+        </tr>
+      </table>
+  </div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Returns</h5>
+      <ul class="nolist"><li>true if any activity exists with a transitioning stage.
+</li></ul>
+  </div>
+
+    </div>
+</div>
+
+
 <A NAME="hasVisibleActivities(android.support.test.runner.lifecycle.ActivityLifecycleMonitor)"></A>
 
 <div class="jd-details api apilevel-">
@@ -1108,11 +1192,11 @@
 
   <div class="jd-tagdata jd-tagdescr"><p>Indicates whether or not an Activity exists in our app within the "Visible Lifetime" state.
 
- <p>The "Visible Lifetime" is defined as an activity who's onStart() method has been called but
- who's onStop() method has not been called.
+ <p>The "Visible Lifetime" is defined as an activity where the onStart() method has been called
+ but where the onStop() method has not been called.
 
  <p>During this time, the Activity may be visible to the user, and it may be receiving input
- from the user. This time is a superset of the "Foreground lifetime' of the activity.
+ from the user. This time is a superset of the "Foreground lifetime" of the activity.
 
  <p>It may be the case that an application has activities in the "visible lifetime" but none in
  the "Foreground lifetime." It may be the case that without user input an activity will shortly
@@ -1200,6 +1284,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/util/HumanReadables.html b/docs/html/reference/android/support/test/espresso/util/HumanReadables.html
index 188dce1..fe73d80 100644
--- a/docs/html/reference/android/support/test/espresso/util/HumanReadables.html
+++ b/docs/html/reference/android/support/test/espresso/util/HumanReadables.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -805,7 +807,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1246,6 +1248,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/util/TreeIterables.ViewAndDistance.html b/docs/html/reference/android/support/test/espresso/util/TreeIterables.ViewAndDistance.html
index 6bf3846..f544d58 100644
--- a/docs/html/reference/android/support/test/espresso/util/TreeIterables.ViewAndDistance.html
+++ b/docs/html/reference/android/support/test/espresso/util/TreeIterables.ViewAndDistance.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -775,7 +777,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1141,6 +1143,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/util/TreeIterables.html b/docs/html/reference/android/support/test/espresso/util/TreeIterables.html
index 623b937..bc1e582 100644
--- a/docs/html/reference/android/support/test/espresso/util/TreeIterables.html
+++ b/docs/html/reference/android/support/test/espresso/util/TreeIterables.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -850,7 +852,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1299,6 +1301,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/util/package-summary.html b/docs/html/reference/android/support/test/espresso/util/package-summary.html
index 0acea32..89faa8d 100644
--- a/docs/html/reference/android/support/test/espresso/util/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/util/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -709,6 +711,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/action/AtomAction.html b/docs/html/reference/android/support/test/espresso/web/action/AtomAction.html
index 83b052a..807c098 100644
--- a/docs/html/reference/android/support/test/espresso/web/action/AtomAction.html
+++ b/docs/html/reference/android/support/test/espresso/web/action/AtomAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -937,7 +939,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1139,7 +1141,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1644,6 +1646,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/action/EnableJavascriptAction.html b/docs/html/reference/android/support/test/espresso/web/action/EnableJavascriptAction.html
index 2ec7760..290094d 100644
--- a/docs/html/reference/android/support/test/espresso/web/action/EnableJavascriptAction.html
+++ b/docs/html/reference/android/support/test/espresso/web/action/EnableJavascriptAction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -857,7 +859,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1059,7 +1061,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1415,6 +1417,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/action/package-summary.html b/docs/html/reference/android/support/test/espresso/web/action/package-summary.html
index 4416655..2d8d14997 100644
--- a/docs/html/reference/android/support/test/espresso/web/action/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/web/action/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -685,6 +687,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/assertion/TagSoupDocumentParser.html b/docs/html/reference/android/support/test/espresso/web/assertion/TagSoupDocumentParser.html
index abc588f..c095b81 100644
--- a/docs/html/reference/android/support/test/espresso/web/assertion/TagSoupDocumentParser.html
+++ b/docs/html/reference/android/support/test/espresso/web/assertion/TagSoupDocumentParser.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -786,7 +788,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1179,6 +1181,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/assertion/WebAssertion.html b/docs/html/reference/android/support/test/espresso/web/assertion/WebAssertion.html
index 4ecb6ba..894e603 100644
--- a/docs/html/reference/android/support/test/espresso/web/assertion/WebAssertion.html
+++ b/docs/html/reference/android/support/test/espresso/web/assertion/WebAssertion.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -842,7 +844,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1298,6 +1300,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.ResultDescriber.html b/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.ResultDescriber.html
index f2e0de5..c562ef4 100644
--- a/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.ResultDescriber.html
+++ b/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.ResultDescriber.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -844,6 +846,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.html b/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.html
index a6bbfe1..af52ddc 100644
--- a/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.html
+++ b/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -844,7 +846,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1275,6 +1277,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/assertion/package-summary.html b/docs/html/reference/android/support/test/espresso/web/assertion/package-summary.html
index 833db0e..fed18ca 100644
--- a/docs/html/reference/android/support/test/espresso/web/assertion/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/web/assertion/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -724,6 +726,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/bridge/Conduit.html b/docs/html/reference/android/support/test/espresso/web/bridge/Conduit.html
index 75d0f2b..05ef71c 100644
--- a/docs/html/reference/android/support/test/espresso/web/bridge/Conduit.html
+++ b/docs/html/reference/android/support/test/espresso/web/bridge/Conduit.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -819,7 +821,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1235,6 +1237,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/bridge/JavaScriptBridge.html b/docs/html/reference/android/support/test/espresso/web/bridge/JavaScriptBridge.html
index 38c87a1..76fbfd6 100644
--- a/docs/html/reference/android/support/test/espresso/web/bridge/JavaScriptBridge.html
+++ b/docs/html/reference/android/support/test/espresso/web/bridge/JavaScriptBridge.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -816,7 +818,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1232,6 +1234,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/bridge/package-summary.html b/docs/html/reference/android/support/test/espresso/web/bridge/package-summary.html
index 7fc3939..ebfb305 100644
--- a/docs/html/reference/android/support/test/espresso/web/bridge/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/web/bridge/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -685,6 +687,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/matcher/AmbiguousElementMatcherException.html b/docs/html/reference/android/support/test/espresso/web/matcher/AmbiguousElementMatcherException.html
index d7207b5..ed0b7b3 100644
--- a/docs/html/reference/android/support/test/espresso/web/matcher/AmbiguousElementMatcherException.html
+++ b/docs/html/reference/android/support/test/espresso/web/matcher/AmbiguousElementMatcherException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -846,7 +848,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1080,7 +1082,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1420,6 +1422,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/matcher/DomMatchers.html b/docs/html/reference/android/support/test/espresso/web/matcher/DomMatchers.html
index ccaf9ec..ae850d9 100644
--- a/docs/html/reference/android/support/test/espresso/web/matcher/DomMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/web/matcher/DomMatchers.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -935,7 +937,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1507,6 +1509,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/matcher/package-summary.html b/docs/html/reference/android/support/test/espresso/web/matcher/package-summary.html
index 5fd0c05..594cf7e 100644
--- a/docs/html/reference/android/support/test/espresso/web/matcher/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/web/matcher/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -701,6 +703,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/Atom.html b/docs/html/reference/android/support/test/espresso/web/model/Atom.html
index 01b3916..1eb87e0 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/Atom.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/Atom.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -656,7 +658,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -1068,6 +1070,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/Atoms.html b/docs/html/reference/android/support/test/espresso/web/model/Atoms.html
index fa0ae80..fe4c2e3 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/Atoms.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/Atoms.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -922,7 +924,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1457,6 +1459,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/ElementReference.html b/docs/html/reference/android/support/test/espresso/web/model/ElementReference.html
index 1929fd0..bb72bdb 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/ElementReference.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/ElementReference.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -841,7 +843,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1043,7 +1045,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.web.model.JSONAble" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.web.model.JSONAble-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1313,6 +1315,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/Evaluation.html b/docs/html/reference/android/support/test/espresso/web/model/Evaluation.html
index 7905489..959cd53 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/Evaluation.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/Evaluation.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -899,7 +901,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1101,7 +1103,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.web.model.JSONAble" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.web.model.JSONAble-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1499,6 +1501,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/JSONAble.DeJSONFactory.html b/docs/html/reference/android/support/test/espresso/web/model/JSONAble.DeJSONFactory.html
index 506c367..ee7b44c 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/JSONAble.DeJSONFactory.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/JSONAble.DeJSONFactory.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -879,6 +881,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/JSONAble.html b/docs/html/reference/android/support/test/espresso/web/model/JSONAble.html
index 778bea2..adb1d8a 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/JSONAble.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/JSONAble.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -659,7 +661,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -972,6 +974,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/ModelCodec.html b/docs/html/reference/android/support/test/espresso/web/model/ModelCodec.html
index e1fbea7..1dde64e 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/ModelCodec.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/ModelCodec.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -851,7 +853,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1285,6 +1287,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement.html b/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement.html
index f9d08ef..24a874a 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -857,7 +859,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1059,7 +1061,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1263,7 +1265,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1538,6 +1540,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.html b/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.html
index 3fe4905..8d67f05 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1010,7 +1012,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1212,7 +1214,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.web.model.Atom" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.web.model.Atom-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1731,6 +1733,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer.html b/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer.html
index 63ca64f..648e1d5 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -857,6 +859,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.html b/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.html
index 51560ce..6e9006d 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -895,7 +897,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1097,7 +1099,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.web.model.Atom" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.web.model.Atom-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1444,6 +1446,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/WindowReference.html b/docs/html/reference/android/support/test/espresso/web/model/WindowReference.html
index c500a21..cf7d54e 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/WindowReference.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/WindowReference.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -841,7 +843,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1043,7 +1045,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.web.model.JSONAble" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.espresso.web.model.JSONAble-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1313,6 +1315,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/model/package-summary.html b/docs/html/reference/android/support/test/espresso/web/model/package-summary.html
index 38ffd2d..19a4939 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -834,6 +836,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/sugar/Web.WebInteraction.html b/docs/html/reference/android/support/test/espresso/web/sugar/Web.WebInteraction.html
index a56f27e..db6f8a2 100644
--- a/docs/html/reference/android/support/test/espresso/web/sugar/Web.WebInteraction.html
+++ b/docs/html/reference/android/support/test/espresso/web/sugar/Web.WebInteraction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1021,7 +1023,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1802,6 +1804,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/sugar/Web.html b/docs/html/reference/android/support/test/espresso/web/sugar/Web.html
index 16e5a09..d495700 100644
--- a/docs/html/reference/android/support/test/espresso/web/sugar/Web.html
+++ b/docs/html/reference/android/support/test/espresso/web/sugar/Web.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -839,7 +841,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1244,6 +1246,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/sugar/package-summary.html b/docs/html/reference/android/support/test/espresso/web/sugar/package-summary.html
index 22860ac..a5567f7 100644
--- a/docs/html/reference/android/support/test/espresso/web/sugar/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/web/sugar/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -686,6 +688,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/webdriver/DriverAtoms.html b/docs/html/reference/android/support/test/espresso/web/webdriver/DriverAtoms.html
index a06562a..b2dedb5 100644
--- a/docs/html/reference/android/support/test/espresso/web/webdriver/DriverAtoms.html
+++ b/docs/html/reference/android/support/test/espresso/web/webdriver/DriverAtoms.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -998,7 +1000,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1663,6 +1665,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/webdriver/Locator.html b/docs/html/reference/android/support/test/espresso/web/webdriver/Locator.html
index 6cf71cc..e9e033a 100644
--- a/docs/html/reference/android/support/test/espresso/web/webdriver/Locator.html
+++ b/docs/html/reference/android/support/test/espresso/web/webdriver/Locator.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -931,7 +933,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1133,7 +1135,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1337,7 +1339,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1830,6 +1832,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/espresso/web/webdriver/package-summary.html b/docs/html/reference/android/support/test/espresso/web/webdriver/package-summary.html
index 205dbf3..5f93e59 100644
--- a/docs/html/reference/android/support/test/espresso/web/webdriver/package-summary.html
+++ b/docs/html/reference/android/support/test/espresso/web/webdriver/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -699,6 +701,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/filters/FlakyTest.html b/docs/html/reference/android/support/test/filters/FlakyTest.html
index 2057648..498f8dd 100644
--- a/docs/html/reference/android/support/test/filters/FlakyTest.html
+++ b/docs/html/reference/android/support/test/filters/FlakyTest.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -724,7 +726,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -909,6 +911,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/filters/RequiresDevice.html b/docs/html/reference/android/support/test/filters/RequiresDevice.html
index 162fb84..b88bebe 100644
--- a/docs/html/reference/android/support/test/filters/RequiresDevice.html
+++ b/docs/html/reference/android/support/test/filters/RequiresDevice.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -723,7 +725,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -908,6 +910,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/filters/SdkSuppress.html b/docs/html/reference/android/support/test/filters/SdkSuppress.html
index a6249ba..e8661dc 100644
--- a/docs/html/reference/android/support/test/filters/SdkSuppress.html
+++ b/docs/html/reference/android/support/test/filters/SdkSuppress.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -723,7 +725,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -908,6 +910,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/filters/package-summary.html b/docs/html/reference/android/support/test/filters/package-summary.html
index cd467b0..2ccc69a 100644
--- a/docs/html/reference/android/support/test/filters/package-summary.html
+++ b/docs/html/reference/android/support/test/filters/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -697,6 +699,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/jank/GfxMonitor.html b/docs/html/reference/android/support/test/jank/GfxMonitor.html
new file mode 100644
index 0000000..f0b531f
--- /dev/null
+++ b/docs/html/reference/android/support/test/jank/GfxMonitor.html
@@ -0,0 +1,2005 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.ico" />
+<title>GfxMonitor | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+<body class="gc-documentation
+  develop reference" itemscope itemtype="http://schema.org/Article">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../../assets/images/android_logo.png"
+              srcset="../../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">GfxMonitor</a></li>
+        </ul>
+
+
+
+
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../../assets/images/android_logo.png"
+               srcset="../../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
+          </li>
+
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../../distribute/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/package-summary.html">android.support.test</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/annotation/package-summary.html">android.support.test.annotation</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/package-summary.html">android.support.test.espresso</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/action/package-summary.html">android.support.test.espresso.action</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/assertion/package-summary.html">android.support.test.espresso.assertion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/base/package-summary.html">android.support.test.espresso.base</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/contrib/package-summary.html">android.support.test.espresso.contrib</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/package-summary.html">android.support.test.espresso.intent</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/matcher/package-summary.html">android.support.test.espresso.intent.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/rule/package-summary.html">android.support.test.espresso.intent.rule</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/matcher/package-summary.html">android.support.test.espresso.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/util/package-summary.html">android.support.test.espresso.util</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/action/package-summary.html">android.support.test.espresso.web.action</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/assertion/package-summary.html">android.support.test.espresso.web.assertion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/bridge/package-summary.html">android.support.test.espresso.web.bridge</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/matcher/package-summary.html">android.support.test.espresso.web.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/model/package-summary.html">android.support.test.espresso.web.model</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/sugar/package-summary.html">android.support.test.espresso.web.sugar</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/webdriver/package-summary.html">android.support.test.espresso.web.webdriver</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
+    <li class="selected api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/intent/package-summary.html">android.support.test.runner.intent</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/lifecycle/package-summary.html">android.support.test.runner.lifecycle</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/uiautomator/package-summary.html">android.support.test.uiautomator</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+
+    <li><h2>Annotations</h2>
+      <ul>
+          <li class="selected api apilevel-"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html">GfxMonitor</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/test/jank/JankTest.html">JankTest</a></li>
+      </ul>
+    </li>
+
+
+    <li><h2>Classes</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html">JankTestBase</a></li>
+      </ul>
+    </li>
+
+
+
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+
+
+
+
+<div class="col-12"  id="doc-col">
+
+<div id="api-info-block">
+
+
+
+
+
+
+
+
+
+
+
+<div class="sum-details-links">
+
+Summary:
+
+
+
+
+
+  <a href="#constants">Constants</a>
+
+
+
+
+
+
+
+
+
+
+  &#124; <a href="#inhmethods">Inherited Methods</a>
+
+&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
+
+</div><!-- end sum-details-links -->
+<div class="api-level">
+
+
+
+
+</div>
+</div><!-- end api-info-block -->
+
+
+<!-- ======== START OF CLASS DATA ======== -->
+
+<div id="jd-header">
+    public
+
+
+    abstract
+    @interface
+<h1 itemprop="name">GfxMonitor</h1>
+
+
+
+
+
+      implements
+
+        Annotation
+
+
+
+
+
+
+
+
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+<table class="jd-inheritance-table">
+
+
+    <tr>
+
+        <td colspan="1" class="jd-inheritance-class-cell">android.support.test.jank.GfxMonitor</td>
+    </tr>
+
+
+</table>
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Class Overview</h2>
+<p itemprop="articleBody">Annotation used to configure a gfx monitor. </p>
+
+
+
+
+
+</div><!-- jd-descr -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Summary</h2>
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<table id="constants" class="jd-sumtable"><tr><th colspan="12">Constants</th></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_AVG_FRAME_TIME_90TH_PERCENTILE">KEY_AVG_FRAME_TIME_90TH_PERCENTILE</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_AVG_FRAME_TIME_95TH_PERCENTILE">KEY_AVG_FRAME_TIME_95TH_PERCENTILE</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_AVG_FRAME_TIME_99TH_PERCENTILE">KEY_AVG_FRAME_TIME_99TH_PERCENTILE</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_AVG_HIGH_INPUT_LATENCY">KEY_AVG_HIGH_INPUT_LATENCY</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_AVG_MISSED_VSYNC">KEY_AVG_MISSED_VSYNC</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_AVG_NUM_JANKY">KEY_AVG_NUM_JANKY</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_AVG_SLOW_BITMAP_UPLOADS">KEY_AVG_SLOW_BITMAP_UPLOADS</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_AVG_SLOW_DRAW">KEY_AVG_SLOW_DRAW</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_AVG_SLOW_UI_THREAD">KEY_AVG_SLOW_UI_THREAD</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_MAX_FRAME_TIME_90TH_PERCENTILE">KEY_MAX_FRAME_TIME_90TH_PERCENTILE</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_MAX_FRAME_TIME_95TH_PERCENTILE">KEY_MAX_FRAME_TIME_95TH_PERCENTILE</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_MAX_FRAME_TIME_99TH_PERCENTILE">KEY_MAX_FRAME_TIME_99TH_PERCENTILE</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_MAX_HIGH_INPUT_LATENCY">KEY_MAX_HIGH_INPUT_LATENCY</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_MAX_MISSED_VSYNC">KEY_MAX_MISSED_VSYNC</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_MAX_NUM_JANKY">KEY_MAX_NUM_JANKY</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_MAX_SLOW_BITMAP_UPLOADS">KEY_MAX_SLOW_BITMAP_UPLOADS</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_MAX_SLOW_DRAW">KEY_MAX_SLOW_DRAW</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html#KEY_MAX_SLOW_UI_THREAD">KEY_MAX_SLOW_UI_THREAD</a></td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+
+</table>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="inhmethods" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Methods</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  java.lang.annotation.Annotation
+
+<div id="inherited-methods-java.lang.annotation.Annotation">
+  <div id="inherited-methods-java.lang.annotation.Annotation-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-java.lang.annotation.Annotation-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            Class&lt;?&nbsp;extends&nbsp;Annotation&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">annotationType</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">equals</span>(Object arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hashCode</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+</table>
+
+
+</div><!-- jd-descr (summary) -->
+
+<!-- Details -->
+
+
+
+
+
+
+
+
+<!-- XML Attributes -->
+
+
+<!-- Enum Values -->
+
+
+<!-- Constants -->
+
+
+<!-- ========= ENUM CONSTANTS DETAIL ======== -->
+<h2>Constants</h2>
+
+
+
+
+<A NAME="KEY_AVG_FRAME_TIME_90TH_PERCENTILE"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_AVG_FRAME_TIME_90TH_PERCENTILE
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-avg-frame-time-90"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_AVG_FRAME_TIME_95TH_PERCENTILE"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_AVG_FRAME_TIME_95TH_PERCENTILE
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-avg-frame-time-95"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_AVG_FRAME_TIME_99TH_PERCENTILE"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_AVG_FRAME_TIME_99TH_PERCENTILE
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-avg-frame-time-99"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_AVG_HIGH_INPUT_LATENCY"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_AVG_HIGH_INPUT_LATENCY
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-avg-high-input-latency"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_AVG_MISSED_VSYNC"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_AVG_MISSED_VSYNC
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-avg-missed-vsync"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_AVG_NUM_JANKY"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_AVG_NUM_JANKY
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-avg-jank"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_AVG_SLOW_BITMAP_UPLOADS"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_AVG_SLOW_BITMAP_UPLOADS
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-avg-slow-bitmap-uploads"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_AVG_SLOW_DRAW"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_AVG_SLOW_DRAW
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-avg-slow-draw"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_AVG_SLOW_UI_THREAD"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_AVG_SLOW_UI_THREAD
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-avg-slow-ui-thread"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_MAX_FRAME_TIME_90TH_PERCENTILE"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_MAX_FRAME_TIME_90TH_PERCENTILE
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-max-frame-time-90"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_MAX_FRAME_TIME_95TH_PERCENTILE"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_MAX_FRAME_TIME_95TH_PERCENTILE
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-max-frame-time-95"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_MAX_FRAME_TIME_99TH_PERCENTILE"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_MAX_FRAME_TIME_99TH_PERCENTILE
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-max-frame-time-99"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_MAX_HIGH_INPUT_LATENCY"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_MAX_HIGH_INPUT_LATENCY
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-max-high-input-latency"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_MAX_MISSED_VSYNC"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_MAX_MISSED_VSYNC
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-max-missed-vsync"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_MAX_NUM_JANKY"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_MAX_NUM_JANKY
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-max-jank"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_MAX_SLOW_BITMAP_UPLOADS"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_MAX_SLOW_BITMAP_UPLOADS
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-max-slow-bitmap-uploads"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_MAX_SLOW_DRAW"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_MAX_SLOW_DRAW
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-max-slow-draw"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+<A NAME="KEY_MAX_SLOW_UI_THREAD"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+        static
+        final
+        String
+      </span>
+        KEY_MAX_SLOW_UI_THREAD
+    </h4>
+      <div class="api-level">
+
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+
+                "gfx-max-slow-ui-thread"
+
+        </span>
+        </div>
+
+    </div>
+</div>
+
+
+
+
+<!-- Fields -->
+
+
+<!-- Public ctors -->
+
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<!-- Protected ctors -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+<!-- Public methdos -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+
+
+
+<!-- ========= END OF CLASS DATA ========= -->
+<A NAME="navbar_top"></A>
+</div> <!-- jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+
+      <p class="dac-footer-copyright">
+
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+
+    Android &nbsp;r &mdash;
+<script src="../../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- end doc-content -->
+
+</div> <!-- end .cols -->
+</div> <!-- end body-content -->
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/test/jank/JankTest.html b/docs/html/reference/android/support/test/jank/JankTest.html
new file mode 100644
index 0000000..c824c13e
--- /dev/null
+++ b/docs/html/reference/android/support/test/jank/JankTest.html
@@ -0,0 +1,1050 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.ico" />
+<title>JankTest | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+<body class="gc-documentation
+  develop reference" itemscope itemtype="http://schema.org/Article">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../../assets/images/android_logo.png"
+              srcset="../../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">JankTest</a></li>
+        </ul>
+
+
+
+
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../../assets/images/android_logo.png"
+               srcset="../../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
+          </li>
+
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../../distribute/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/package-summary.html">android.support.test</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/annotation/package-summary.html">android.support.test.annotation</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/package-summary.html">android.support.test.espresso</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/action/package-summary.html">android.support.test.espresso.action</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/assertion/package-summary.html">android.support.test.espresso.assertion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/base/package-summary.html">android.support.test.espresso.base</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/contrib/package-summary.html">android.support.test.espresso.contrib</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/package-summary.html">android.support.test.espresso.intent</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/matcher/package-summary.html">android.support.test.espresso.intent.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/rule/package-summary.html">android.support.test.espresso.intent.rule</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/matcher/package-summary.html">android.support.test.espresso.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/util/package-summary.html">android.support.test.espresso.util</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/action/package-summary.html">android.support.test.espresso.web.action</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/assertion/package-summary.html">android.support.test.espresso.web.assertion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/bridge/package-summary.html">android.support.test.espresso.web.bridge</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/matcher/package-summary.html">android.support.test.espresso.web.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/model/package-summary.html">android.support.test.espresso.web.model</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/sugar/package-summary.html">android.support.test.espresso.web.sugar</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/webdriver/package-summary.html">android.support.test.espresso.web.webdriver</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
+    <li class="selected api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/intent/package-summary.html">android.support.test.runner.intent</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/lifecycle/package-summary.html">android.support.test.runner.lifecycle</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/uiautomator/package-summary.html">android.support.test.uiautomator</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+
+    <li><h2>Annotations</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html">GfxMonitor</a></li>
+          <li class="selected api apilevel-"><a href="../../../../../reference/android/support/test/jank/JankTest.html">JankTest</a></li>
+      </ul>
+    </li>
+
+
+    <li><h2>Classes</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html">JankTestBase</a></li>
+      </ul>
+    </li>
+
+
+
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+
+
+
+
+<div class="col-12"  id="doc-col">
+
+<div id="api-info-block">
+
+
+
+
+
+
+
+
+
+
+
+<div class="sum-details-links">
+
+Summary:
+
+
+
+
+
+
+
+
+
+
+
+
+
+  <a href="#inhmethods">Inherited Methods</a>
+
+&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
+
+</div><!-- end sum-details-links -->
+<div class="api-level">
+
+
+
+
+</div>
+</div><!-- end api-info-block -->
+
+
+<!-- ======== START OF CLASS DATA ======== -->
+
+<div id="jd-header">
+    public
+
+
+    abstract
+    @interface
+<h1 itemprop="name">JankTest</h1>
+
+
+
+
+
+      implements
+
+        Annotation
+
+
+
+
+
+
+
+
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+<table class="jd-inheritance-table">
+
+
+    <tr>
+
+        <td colspan="1" class="jd-inheritance-class-cell">android.support.test.jank.JankTest</td>
+    </tr>
+
+
+</table>
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Class Overview</h2>
+<p itemprop="articleBody">Annotation used to configure a jank test method. </p>
+
+
+
+
+
+</div><!-- jd-descr -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Summary</h2>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="inhmethods" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Methods</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  java.lang.annotation.Annotation
+
+<div id="inherited-methods-java.lang.annotation.Annotation">
+  <div id="inherited-methods-java.lang.annotation.Annotation-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-java.lang.annotation.Annotation-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            Class&lt;?&nbsp;extends&nbsp;Annotation&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">annotationType</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">equals</span>(Object arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hashCode</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+</table>
+
+
+</div><!-- jd-descr (summary) -->
+
+<!-- Details -->
+
+
+
+
+
+
+
+
+<!-- XML Attributes -->
+
+
+<!-- Enum Values -->
+
+
+<!-- Constants -->
+
+
+<!-- Fields -->
+
+
+<!-- Public ctors -->
+
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<!-- Protected ctors -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+<!-- Public methdos -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+
+
+
+<!-- ========= END OF CLASS DATA ========= -->
+<A NAME="navbar_top"></A>
+</div> <!-- jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+
+      <p class="dac-footer-copyright">
+
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+
+    Android &nbsp;r &mdash;
+<script src="../../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- end doc-content -->
+
+</div> <!-- end .cols -->
+</div> <!-- end body-content -->
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/test/jank/JankTestBase.html b/docs/html/reference/android/support/test/jank/JankTestBase.html
new file mode 100644
index 0000000..9214f1d
--- /dev/null
+++ b/docs/html/reference/android/support/test/jank/JankTestBase.html
@@ -0,0 +1,2889 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.ico" />
+<title>JankTestBase | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+<body class="gc-documentation
+  develop reference" itemscope itemtype="http://schema.org/Article">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../../assets/images/android_logo.png"
+              srcset="../../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">JankTestBase</a></li>
+        </ul>
+
+
+
+
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../../assets/images/android_logo.png"
+               srcset="../../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
+          </li>
+
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../../distribute/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/package-summary.html">android.support.test</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/annotation/package-summary.html">android.support.test.annotation</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/package-summary.html">android.support.test.espresso</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/action/package-summary.html">android.support.test.espresso.action</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/assertion/package-summary.html">android.support.test.espresso.assertion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/base/package-summary.html">android.support.test.espresso.base</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/contrib/package-summary.html">android.support.test.espresso.contrib</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/package-summary.html">android.support.test.espresso.intent</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/matcher/package-summary.html">android.support.test.espresso.intent.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/rule/package-summary.html">android.support.test.espresso.intent.rule</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/matcher/package-summary.html">android.support.test.espresso.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/util/package-summary.html">android.support.test.espresso.util</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/action/package-summary.html">android.support.test.espresso.web.action</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/assertion/package-summary.html">android.support.test.espresso.web.assertion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/bridge/package-summary.html">android.support.test.espresso.web.bridge</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/matcher/package-summary.html">android.support.test.espresso.web.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/model/package-summary.html">android.support.test.espresso.web.model</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/sugar/package-summary.html">android.support.test.espresso.web.sugar</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/webdriver/package-summary.html">android.support.test.espresso.web.webdriver</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
+    <li class="selected api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/intent/package-summary.html">android.support.test.runner.intent</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/lifecycle/package-summary.html">android.support.test.runner.lifecycle</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/uiautomator/package-summary.html">android.support.test.uiautomator</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+
+    <li><h2>Annotations</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html">GfxMonitor</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/test/jank/JankTest.html">JankTest</a></li>
+      </ul>
+    </li>
+
+
+    <li><h2>Classes</h2>
+      <ul>
+          <li class="selected api apilevel-"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html">JankTestBase</a></li>
+      </ul>
+    </li>
+
+
+
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+
+
+
+
+<div class="col-12"  id="doc-col">
+
+<div id="api-info-block">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="sum-details-links">
+
+Summary:
+
+
+
+
+
+
+
+
+
+  <a href="#pubctors">Ctors</a>
+
+
+
+
+  &#124; <a href="#pubmethods">Methods</a>
+
+
+
+  &#124; <a href="#promethods">Protected Methods</a>
+
+
+
+  &#124; <a href="#inhmethods">Inherited Methods</a>
+
+&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
+
+</div><!-- end sum-details-links -->
+<div class="api-level">
+
+
+
+
+</div>
+</div><!-- end api-info-block -->
+
+
+<!-- ======== START OF CLASS DATA ======== -->
+
+<div id="jd-header">
+    public
+
+
+
+    class
+<h1 itemprop="name">JankTestBase</h1>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    extends InstrumentationTestCase<br/>
+
+
+
+
+
+
+
+
+
+
+
+
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+<table class="jd-inheritance-table">
+
+
+    <tr>
+
+        <td colspan="5" class="jd-inheritance-class-cell">java.lang.Object</td>
+    </tr>
+
+
+    <tr>
+
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+
+        <td colspan="4" class="jd-inheritance-class-cell">junit.framework.Assert</td>
+    </tr>
+
+
+    <tr>
+
+            <td class="jd-inheritance-space">&nbsp;</td>
+
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+
+        <td colspan="3" class="jd-inheritance-class-cell">junit.framework.TestCase</td>
+    </tr>
+
+
+    <tr>
+
+            <td class="jd-inheritance-space">&nbsp;</td>
+
+            <td class="jd-inheritance-space">&nbsp;</td>
+
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+
+        <td colspan="2" class="jd-inheritance-class-cell">android.test.InstrumentationTestCase</td>
+    </tr>
+
+
+    <tr>
+
+            <td class="jd-inheritance-space">&nbsp;</td>
+
+            <td class="jd-inheritance-space">&nbsp;</td>
+
+            <td class="jd-inheritance-space">&nbsp;</td>
+
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+
+        <td colspan="1" class="jd-inheritance-class-cell">android.support.test.jank.JankTestBase</td>
+    </tr>
+
+
+</table>
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Class Overview</h2>
+<p itemprop="articleBody">Base test class for measuring Jank.
+
+ This test class automatically monitors jank while executing each test method. Each test method is
+ executed several times in a loop, according to the 'iterations' command line parameter.
+
+ To perform additional setup / tear down steps for each iteration, subclasses can optionally
+ override <code><a href="../../../../../reference/android/support/test/jank/JankTestBase.html#beforeLoop()">beforeLoop()</a></code> and <code><a href="../../../../../reference/android/support/test/jank/JankTestBase.html#afterLoop()">afterLoop()</a></code> methods.
+
+ Test methods must be configured with the <code><a href="../../../../../reference/android/support/test/jank/JankTest.html">JankTest</a></code> annotation. At minimum, the type of
+ jank to measure and the number of expected frames must be specified.
+</p>
+
+
+
+
+
+</div><!-- jd-descr -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Summary</h2>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html#JankTestBase()">JankTestBase</a></span>()</nobr>
+
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html#afterLoop()">afterLoop</a></span>()</nobr>
+
+        <div class="jd-descrdiv">
+          Called after each iteration of the test method.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html#afterTest(android.os.Bundle)">afterTest</a></span>(Bundle metrics)</nobr>
+
+        <div class="jd-descrdiv">
+          Called once after all iterations have completed.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html#beforeLoop()">beforeLoop</a></span>()</nobr>
+
+        <div class="jd-descrdiv">
+          Called before each iteration of the test method.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html#beforeTest()">beforeTest</a></span>()</nobr>
+
+        <div class="jd-descrdiv">
+          Called once before executing a test method.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+            final
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html#getCurrentIteration()">getCurrentIteration</a></span>()</nobr>
+
+        <div class="jd-descrdiv">
+          Return the index of the currently executing iteration.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="promethods" class="jd-sumtable"><tr><th colspan="12">Protected Methods</th></tr>
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+            final
+
+
+            Bundle</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html#getArguments()">getArguments</a></span>()</nobr>
+
+        <div class="jd-descrdiv">
+          Returns a <code><a href="../../../../../reference/android/os/Bundle.html">Bundle</a></code> containing the command line parameters.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html#runTest()">runTest</a></span>()</nobr>
+
+        <div class="jd-descrdiv">
+
+
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="inhmethods" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Methods</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.test.InstrumentationTestCase" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.test.InstrumentationTestCase-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  android.test.InstrumentationTestCase
+
+<div id="inherited-methods-android.test.InstrumentationTestCase">
+  <div id="inherited-methods-android.test.InstrumentationTestCase-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.test.InstrumentationTestCase-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            Instrumentation</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getInstrumentation</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">injectInsrumentation</span>(Instrumentation arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">injectInstrumentation</span>(Instrumentation arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+            final
+
+            &lt;T&nbsp;extends&nbsp;Activity&gt;
+            T</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">launchActivity</span>(String arg0, Class&lt;T&gt; arg1, Bundle arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+            final
+
+            &lt;T&nbsp;extends&nbsp;Activity&gt;
+            T</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">launchActivityWithIntent</span>(String arg0, Class&lt;T&gt; arg1, Intent arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">runTest</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">runTestOnUiThread</span>(Runnable arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendKeys</span>(String arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendKeys</span>(int... arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendRepeatedKeys</span>(int... arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">tearDown</span>()</nobr>
+
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.TestCase" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-junit.framework.TestCase-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  junit.framework.TestCase
+
+<div id="inherited-methods-junit.framework.TestCase">
+  <div id="inherited-methods-junit.framework.TestCase-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-junit.framework.TestCase-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">countTestCases</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            TestResult</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">createResult</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getName</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            TestResult</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">run</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">run</span>(TestResult arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">runBare</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">runTest</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setName</span>(String arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setUp</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">tearDown</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Assert" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-junit.framework.Assert-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  junit.framework.Assert
+
+<div id="inherited-methods-junit.framework.Assert">
+  <div id="inherited-methods-junit.framework.Assert-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-junit.framework.Assert-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(short arg0, short arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, int arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, short arg1, short arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(char arg0, char arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, String arg1, String arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(int arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, double arg1, double arg2, double arg3)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, long arg1, long arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(byte arg0, byte arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(Object arg0, Object arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(boolean arg0, boolean arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, float arg1, float arg2, float arg3)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, boolean arg1, boolean arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, String arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(float arg0, float arg1, float arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, byte arg1, byte arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(double arg0, double arg1, double arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, char arg1, char arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(String arg0, Object arg1, Object arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertEquals</span>(long arg0, long arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertFalse</span>(String arg0, boolean arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertFalse</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertNotNull</span>(String arg0, Object arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertNotNull</span>(Object arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertNotSame</span>(Object arg0, Object arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertNotSame</span>(String arg0, Object arg1, Object arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertNull</span>(Object arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertNull</span>(String arg0, Object arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertSame</span>(Object arg0, Object arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertSame</span>(String arg0, Object arg1, Object arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertTrue</span>(String arg0, boolean arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">assertTrue</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">fail</span>(String arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">fail</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">failNotEquals</span>(String arg0, Object arg1, Object arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">failNotSame</span>(String arg0, Object arg1, Object arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">failSame</span>(String arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+            static
+
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">format</span>(String arg0, Object arg1, Object arg2)</nobr>
+
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-java.lang.Object-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  java.lang.Object
+
+<div id="inherited-methods-java.lang.Object">
+  <div id="inherited-methods-java.lang.Object-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            Object</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clone</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">equals</span>(Object arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">finalize</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+            final
+
+
+            Class&lt;?&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClass</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hashCode</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+            final
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notify</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+            final
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notifyAll</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+            final
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+            final
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+            final
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0)</nobr>
+
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Test" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-junit.framework.Test-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  junit.framework.Test
+
+<div id="inherited-methods-junit.framework.Test">
+  <div id="inherited-methods-junit.framework.Test-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-junit.framework.Test-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">countTestCases</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">run</span>(TestResult arg0)</nobr>
+
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+</table>
+
+
+</div><!-- jd-descr (summary) -->
+
+<!-- Details -->
+
+
+
+
+
+
+
+
+<!-- XML Attributes -->
+
+
+<!-- Enum Values -->
+
+
+<!-- Constants -->
+
+
+<!-- Fields -->
+
+
+<!-- Public ctors -->
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<h2>Public Constructors</h2>
+
+
+
+<A NAME="JankTestBase()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+
+
+
+
+
+      </span>
+      <span class="sympad">JankTestBase</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<!-- Protected ctors -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+<!-- Public methdos -->
+
+<h2>Public Methods</h2>
+
+
+
+<A NAME="afterLoop()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+
+
+
+
+        void
+      </span>
+      <span class="sympad">afterLoop</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Called after each iteration of the test method. </p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Throws</h5>
+      <table class="jd-tagtable">
+        <tr>
+            <th>Exception</td>
+            <td></td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="afterTest(android.os.Bundle)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+
+
+
+
+        void
+      </span>
+      <span class="sympad">afterTest</span>
+      <span class="normal">(Bundle metrics)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Called once after all iterations have completed.
+ <p>Note: default implementation reports the aggregated jank metrics via
+ <code><a href="../../../../../reference/android/app/Instrumentation.html#sendStatus(int, android.os.Bundle)">sendStatus(int, Bundle)</a></code></p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>metrics</td>
+          <td>the aggregated jank metrics after looped execution
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="beforeLoop()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+
+
+
+
+        void
+      </span>
+      <span class="sympad">beforeLoop</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Called before each iteration of the test method. </p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Throws</h5>
+      <table class="jd-tagtable">
+        <tr>
+            <th>Exception</td>
+            <td></td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="beforeTest()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+
+
+
+
+        void
+      </span>
+      <span class="sympad">beforeTest</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Called once before executing a test method. </p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Throws</h5>
+      <table class="jd-tagtable">
+        <tr>
+            <th>Exception</td>
+            <td></td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="getCurrentIteration()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+
+        final
+
+
+        int
+      </span>
+      <span class="sympad">getCurrentIteration</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Return the index of the currently executing iteration. </p></div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+
+<h2>Protected Methods</h2>
+
+
+
+<A NAME="getArguments()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        protected
+
+        final
+
+
+        Bundle
+      </span>
+      <span class="sympad">getArguments</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Returns a <code><a href="../../../../../reference/android/os/Bundle.html">Bundle</a></code> containing the command line parameters. </p></div>
+
+    </div>
+</div>
+
+
+<A NAME="runTest()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        protected
+
+
+
+
+        void
+      </span>
+      <span class="sympad">runTest</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>
+</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Throws</h5>
+      <table class="jd-tagtable">
+        <tr>
+            <th>Throwable</td>
+            <td></td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= END OF CLASS DATA ========= -->
+<A NAME="navbar_top"></A>
+</div> <!-- jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+
+      <p class="dac-footer-copyright">
+
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+
+    Android &nbsp;r &mdash;
+<script src="../../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- end doc-content -->
+
+</div> <!-- end .cols -->
+</div> <!-- end body-content -->
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/test/jank/package-summary.html b/docs/html/reference/android/support/test/jank/package-summary.html
new file mode 100644
index 0000000..2444aa8
--- /dev/null
+++ b/docs/html/reference/android/support/test/jank/package-summary.html
@@ -0,0 +1,852 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.ico" />
+<title>android.support.test.jank | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+
+<body class="gc-documentation
+  develop reference">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../../assets/images/android_logo.png"
+              srcset="../../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">android.support.test.jank</a></li>
+        </ul>
+
+
+
+
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../../assets/images/android_logo.png"
+               srcset="../../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
+          </li>
+
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../../distribute/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/package-summary.html">android.support.test</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/annotation/package-summary.html">android.support.test.annotation</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/package-summary.html">android.support.test.espresso</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/action/package-summary.html">android.support.test.espresso.action</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/assertion/package-summary.html">android.support.test.espresso.assertion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/base/package-summary.html">android.support.test.espresso.base</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/contrib/package-summary.html">android.support.test.espresso.contrib</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/package-summary.html">android.support.test.espresso.intent</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/matcher/package-summary.html">android.support.test.espresso.intent.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/intent/rule/package-summary.html">android.support.test.espresso.intent.rule</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/matcher/package-summary.html">android.support.test.espresso.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/util/package-summary.html">android.support.test.espresso.util</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/action/package-summary.html">android.support.test.espresso.web.action</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/assertion/package-summary.html">android.support.test.espresso.web.assertion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/bridge/package-summary.html">android.support.test.espresso.web.bridge</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/matcher/package-summary.html">android.support.test.espresso.web.matcher</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/model/package-summary.html">android.support.test.espresso.web.model</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/sugar/package-summary.html">android.support.test.espresso.web.sugar</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/espresso/web/webdriver/package-summary.html">android.support.test.espresso.web.webdriver</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
+    <li class="selected api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/intent/package-summary.html">android.support.test.runner.intent</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/runner/lifecycle/package-summary.html">android.support.test.runner.lifecycle</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/uiautomator/package-summary.html">android.support.test.uiautomator</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+
+    <li><h2>Annotations</h2>
+      <ul>
+        <li class="api apilevel-"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html">GfxMonitor</a></li>
+        <li class="api apilevel-"><a href="../../../../../reference/android/support/test/jank/JankTest.html">JankTest</a></li>
+      </ul>
+    </li>
+
+
+    <li><h2>Classes</h2>
+      <ul>
+        <li class="api apilevel-"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html">JankTestBase</a></li>
+      </ul>
+    </li>
+
+
+
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+
+
+
+
+<div class="col-12" id="doc-col">
+
+<div id="api-info-block">
+<div class="api-level">
+
+
+
+
+</div>
+</div>
+
+<div id="jd-header">
+  package
+  <h1>android.support.test.jank</h1>
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+
+
+
+
+
+
+
+    <h2>Annotations</h2>
+    <div class="jd-sumtable">
+
+
+  <table class="jd-sumtable-expando">
+
+      <tr class="alt-color api apilevel-" >
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/GfxMonitor.html">GfxMonitor</a></td>
+        <td class="jd-descrcol" width="100%">
+          Annotation used to configure a gfx monitor.&nbsp;
+
+
+
+        </td>
+      </tr>
+
+
+      <tr class=" api apilevel-" >
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/JankTest.html">JankTest</a></td>
+        <td class="jd-descrcol" width="100%">
+          Annotation used to configure a jank test method.&nbsp;
+
+
+
+        </td>
+      </tr>
+
+
+  </table>
+
+    </div>
+
+
+
+
+
+
+
+    <h2>Classes</h2>
+    <div class="jd-sumtable">
+
+
+  <table class="jd-sumtable-expando">
+
+      <tr class="alt-color api apilevel-" >
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/test/jank/JankTestBase.html">JankTestBase</a></td>
+        <td class="jd-descrcol" width="100%">
+          Base test class for measuring Jank.&nbsp;
+
+
+
+        </td>
+      </tr>
+
+
+  </table>
+
+    </div>
+
+
+
+
+
+
+
+
+
+
+
+
+</div><!-- end jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+
+      <p class="dac-footer-copyright">
+
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+
+    Android &nbsp;r &mdash;
+<script src="../../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- doc-content -->
+
+</div> <!-- end .cols -->
+</div> <!-- end body-content -->
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/test/package-summary.html b/docs/html/reference/android/support/test/package-summary.html
index 0ba0e26..8b61541 100644
--- a/docs/html/reference/android/support/test/package-summary.html
+++ b/docs/html/reference/android/support/test/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -674,6 +676,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/rule/ActivityTestRule.html b/docs/html/reference/android/support/test/rule/ActivityTestRule.html
index 6a26bf0..f34e3e9 100644
--- a/docs/html/reference/android/support/test/rule/ActivityTestRule.html
+++ b/docs/html/reference/android/support/test/rule/ActivityTestRule.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -478,6 +478,8 @@
   <a href="../../../../../reference/android/support/test/espresso/web/webdriver/package-summary.html">android.support.test.espresso.web.webdriver</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
@@ -695,7 +697,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
           ><img id="subclasses-direct-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Direct Subclasses
 
   <div id="subclasses-direct">
@@ -1065,7 +1067,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.rule.UiThreadTestRule" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.rule.UiThreadTestRule-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1146,7 +1148,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1348,7 +1350,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.rules.TestRule" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.rules.TestRule-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1954,6 +1956,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/rule/DisableOnAndroidDebug.html b/docs/html/reference/android/support/test/rule/DisableOnAndroidDebug.html
index 2ca22ce..a981fe9 100644
--- a/docs/html/reference/android/support/test/rule/DisableOnAndroidDebug.html
+++ b/docs/html/reference/android/support/test/rule/DisableOnAndroidDebug.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -478,6 +478,8 @@
   <a href="../../../../../reference/android/support/test/espresso/web/webdriver/package-summary.html">android.support.test.espresso.web.webdriver</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
@@ -683,12 +685,10 @@
  disabled when debugging.
  <p>
  The most illustrative use case is for tests that make use of the
- <a href="http://junit.org/apidocs/org/junit/rules/Timeout.html"><code>Timeout</code></a>
- rule, when ran in debug mode the test may terminate on
+ <code><a href="../../../../../reference/org/junit/rules/Timeout.html">Timeout</a></code> rule, when ran in debug mode the test may terminate on
  timeout abruptly during debugging. Developers may disable the timeout, or
  increase the timeout by making a code change on tests that need debugging and
- remember revert the change afterwards or rules such as
- <a href="http://junit.org/apidocs/org/junit/rules/Timeout.html"><code>Timeout</code></a> that
+ remember revert the change afterwards or rules such as <code><a href="../../../../../reference/org/junit/rules/Timeout.html">Timeout</a></code> that
  may be disabled during debugging may be wrapped in a <code>DisableOnDebug</code>.
  <p>
  The important benefit of this feature is that you can disable such rules
@@ -870,7 +870,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1072,7 +1072,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.rules.TestRule" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.rules.TestRule-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1335,6 +1335,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/rule/ServiceTestRule.html b/docs/html/reference/android/support/test/rule/ServiceTestRule.html
index 185f12b..bbe0c8d 100644
--- a/docs/html/reference/android/support/test/rule/ServiceTestRule.html
+++ b/docs/html/reference/android/support/test/rule/ServiceTestRule.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -478,6 +478,8 @@
   <a href="../../../../../reference/android/support/test/espresso/web/webdriver/package-summary.html">android.support.test.espresso.web.webdriver</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
@@ -998,7 +1000,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1200,7 +1202,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.rules.TestRule" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.rules.TestRule-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1737,6 +1739,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/rule/UiThreadTestRule.html b/docs/html/reference/android/support/test/rule/UiThreadTestRule.html
index 8fb3ca0..e58ef8f 100644
--- a/docs/html/reference/android/support/test/rule/UiThreadTestRule.html
+++ b/docs/html/reference/android/support/test/rule/UiThreadTestRule.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -478,6 +478,8 @@
   <a href="../../../../../reference/android/support/test/espresso/web/webdriver/package-summary.html">android.support.test.espresso.web.webdriver</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
@@ -679,7 +681,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
           ><img id="subclasses-direct-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Direct Subclasses
 
   <div id="subclasses-direct">
@@ -722,7 +724,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -942,7 +944,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1144,7 +1146,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.rules.TestRule" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.rules.TestRule-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1457,6 +1459,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/rule/package-summary.html b/docs/html/reference/android/support/test/rule/package-summary.html
index 193c9dd..c0b52a2 100644
--- a/docs/html/reference/android/support/test/rule/package-summary.html
+++ b/docs/html/reference/android/support/test/rule/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
   <a href="../../../../../reference/android/support/test/espresso/web/webdriver/package-summary.html">android.support.test.espresso.web.webdriver</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
@@ -712,6 +714,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/AndroidJUnit4.html b/docs/html/reference/android/support/test/runner/AndroidJUnit4.html
index e8327c3..79c3c9a 100644
--- a/docs/html/reference/android/support/test/runner/AndroidJUnit4.html
+++ b/docs/html/reference/android/support/test/runner/AndroidJUnit4.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -896,7 +898,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runners.BlockJUnit4ClassRunner" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.runners.BlockJUnit4ClassRunner-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1338,7 +1340,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runners.ParentRunner" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.runners.ParentRunner-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1700,7 +1702,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runner.Runner" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.runner.Runner-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1774,7 +1776,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1976,7 +1978,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runner.Describable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.runner.Describable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -2018,7 +2020,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runner.manipulation.Filterable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.runner.manipulation.Filterable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -2060,7 +2062,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runner.manipulation.Sortable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-org.junit.runner.manipulation.Sortable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -2286,6 +2288,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/AndroidJUnitRunner.html b/docs/html/reference/android/support/test/runner/AndroidJUnitRunner.html
index b52ba0b..f7f4fd3 100644
--- a/docs/html/reference/android/support/test/runner/AndroidJUnitRunner.html
+++ b/docs/html/reference/android/support/test/runner/AndroidJUnitRunner.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -751,6 +753,14 @@
  -e class com.android.foo.FooTest,com.android.foo.TooTest
  com.android.foo/android.support.test.runner.AndroidJUnitRunner
  <p/>
+ <b>Running all tests except those in a particular class:</b> adb shell am instrument -w
+ -e notClass com.android.foo.FooTest
+ com.android.foo/android.support.test.runner.AndroidJUnitRunner
+ <p/>
+ <b>Running all but a single test:</b> adb shell am instrument -w
+ -e notClass com.android.foo.FooTest#testFoo
+ com.android.foo/android.support.test.runner.AndroidJUnitRunner
+ <p/>
  <b>Running all tests listed in a file:</b> adb shell am instrument -w
  -e testFile /sdcard/tmp/testFile.txt com.android.foo/com.android.test.runner.AndroidJUnitRunner
  The file should contain a list of line separated test classes and optionally methods (expected
@@ -759,6 +769,10 @@
  <b>Running all tests in a java package:</b> adb shell am instrument -w
  -e package com.android.foo.bar
  com.android.foo/android.support.test.runner.AndroidJUnitRunner
+ <p/>
+ <b>Running all tests except a particular package:</b> adb shell am instrument -w
+ -e notPackage com.android.foo.bar
+ com.android.foo/android.support.test.runner.AndroidJUnitRunner
  <b>To debug your tests, set a break point in your code and pass:</b>
  -e debug true
  <p/>
@@ -802,11 +816,11 @@
  test execution. Useful for quickly obtaining info on the tests to be executed by an
  instrumentation command.
  <p/>
- <b>To generate EMMA code coverage:</b>
+ <b>To generate code coverage files (*.ec) that can be used by EMMA or JaCoCo:</b>
  -e coverage true
- Note: this requires an emma instrumented build. By default, the code coverage results file
- will be saved in a /data/<app>/coverage.ec file, unless overridden by coverageFile flag (see
- below)
+ Note: For this to work, your classes have to be instrumented offline (i.e. at build time) by
+ EMMA/JaCoCo. By default, the code coverage results file will be saved in a
+ /data/data/<app>/files/coverage.ec file, unless overridden by coverageFile flag (see below)
  <p/>
  <b> To specify EMMA code coverage results file path:</b>
  -e coverageFile /sdcard/myFile.ec
@@ -900,7 +914,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Instrumentation" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.app.Instrumentation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.app.Instrumentation
 <div id="inherited-constants-android.app.Instrumentation">
@@ -1094,7 +1108,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.runner.MonitoringInstrumentation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.runner.MonitoringInstrumentation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1534,7 +1548,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Instrumentation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.app.Instrumentation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2552,7 +2566,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3039,6 +3053,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.ActivityFinisher.html b/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.ActivityFinisher.html
index 00ee37e..5eff533 100644
--- a/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.ActivityFinisher.html
+++ b/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.ActivityFinisher.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -800,7 +802,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1002,7 +1004,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Runnable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Runnable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1215,6 +1217,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.html b/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.html
index f125789..ed587c3 100644
--- a/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.html
+++ b/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -696,7 +698,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
           ><img id="subclasses-direct-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Direct Subclasses
 
   <div id="subclasses-direct">
@@ -838,7 +840,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Instrumentation" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.app.Instrumentation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.app.Instrumentation
 <div id="inherited-constants-android.app.Instrumentation">
@@ -1368,7 +1370,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Instrumentation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.app.Instrumentation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2386,7 +2388,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3480,6 +3482,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/intent/IntentCallback.html b/docs/html/reference/android/support/test/runner/intent/IntentCallback.html
index ac4ed99..f0cdd1f 100644
--- a/docs/html/reference/android/support/test/runner/intent/IntentCallback.html
+++ b/docs/html/reference/android/support/test/runner/intent/IntentCallback.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -856,6 +858,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/intent/IntentMonitor.html b/docs/html/reference/android/support/test/runner/intent/IntentMonitor.html
index 2806bfc..82ab88a 100644
--- a/docs/html/reference/android/support/test/runner/intent/IntentMonitor.html
+++ b/docs/html/reference/android/support/test/runner/intent/IntentMonitor.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -918,6 +920,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/intent/IntentMonitorRegistry.html b/docs/html/reference/android/support/test/runner/intent/IntentMonitorRegistry.html
index 1b27d33..b57307a 100644
--- a/docs/html/reference/android/support/test/runner/intent/IntentMonitorRegistry.html
+++ b/docs/html/reference/android/support/test/runner/intent/IntentMonitorRegistry.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -794,7 +796,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1173,6 +1175,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/intent/IntentStubber.html b/docs/html/reference/android/support/test/runner/intent/IntentStubber.html
index a3b435d..88afd27 100644
--- a/docs/html/reference/android/support/test/runner/intent/IntentStubber.html
+++ b/docs/html/reference/android/support/test/runner/intent/IntentStubber.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -645,7 +647,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -940,6 +942,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/intent/IntentStubberRegistry.html b/docs/html/reference/android/support/test/runner/intent/IntentStubberRegistry.html
index 674ca2f..f82ddec 100644
--- a/docs/html/reference/android/support/test/runner/intent/IntentStubberRegistry.html
+++ b/docs/html/reference/android/support/test/runner/intent/IntentStubberRegistry.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -833,7 +835,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1290,6 +1292,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/intent/package-summary.html b/docs/html/reference/android/support/test/runner/intent/package-summary.html
index 7e894ff..3a2e149 100644
--- a/docs/html/reference/android/support/test/runner/intent/package-summary.html
+++ b/docs/html/reference/android/support/test/runner/intent/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -737,6 +739,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleCallback.html b/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleCallback.html
index c02e42a..9532bbc 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleCallback.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleCallback.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -877,6 +879,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html b/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html
index 8f29fc3..21337f8 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1139,6 +1141,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitorRegistry.html b/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitorRegistry.html
index a0493ab..def3bc2 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitorRegistry.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitorRegistry.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -802,7 +804,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1197,6 +1199,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleCallback.html b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleCallback.html
index 82b5542..a9b859c 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleCallback.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleCallback.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -880,6 +882,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitor.html b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitor.html
index 98e932d..36e5892 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitor.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitor.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -942,6 +944,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitorRegistry.html b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitorRegistry.html
index 6e82179..0107635 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitorRegistry.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitorRegistry.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -802,7 +804,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1197,6 +1199,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationStage.html b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationStage.html
index a80c044..5250cc1 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationStage.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationStage.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -856,7 +858,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1058,7 +1060,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1262,7 +1264,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1537,6 +1539,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/Stage.html b/docs/html/reference/android/support/test/runner/lifecycle/Stage.html
index 5063050..8f5fd55 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/Stage.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/Stage.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -928,7 +930,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1130,7 +1132,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1334,7 +1336,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../../assets/images/triangle-closed.png"
+          src="../../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1795,6 +1797,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/package-summary.html b/docs/html/reference/android/support/test/runner/lifecycle/package-summary.html
index ddd3255..c8542f3 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/package-summary.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -787,6 +789,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/runner/package-summary.html b/docs/html/reference/android/support/test/runner/package-summary.html
index 03b1a19..4279c01 100644
--- a/docs/html/reference/android/support/test/runner/package-summary.html
+++ b/docs/html/reference/android/support/test/runner/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="selected api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -712,6 +714,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/By.html b/docs/html/reference/android/support/test/uiautomator/By.html
index e19ca08..9d73c605 100644
--- a/docs/html/reference/android/support/test/uiautomator/By.html
+++ b/docs/html/reference/android/support/test/uiautomator/By.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1536,7 +1538,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3051,6 +3053,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/BySelector.html b/docs/html/reference/android/support/test/uiautomator/BySelector.html
index 827fedd..2f07225 100644
--- a/docs/html/reference/android/support/test/uiautomator/BySelector.html
+++ b/docs/html/reference/android/support/test/uiautomator/BySelector.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1600,7 +1602,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3556,6 +3558,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/Configurator.html b/docs/html/reference/android/support/test/uiautomator/Configurator.html
index f14da63..47ffa48 100644
--- a/docs/html/reference/android/support/test/uiautomator/Configurator.html
+++ b/docs/html/reference/android/support/test/uiautomator/Configurator.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1038,7 +1040,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1835,6 +1837,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/Direction.html b/docs/html/reference/android/support/test/uiautomator/Direction.html
index 4046692..6e51748 100644
--- a/docs/html/reference/android/support/test/uiautomator/Direction.html
+++ b/docs/html/reference/android/support/test/uiautomator/Direction.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -915,7 +917,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Enum-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1117,7 +1119,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1321,7 +1323,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Comparable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -1690,6 +1692,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/EventCondition.html b/docs/html/reference/android/support/test/uiautomator/EventCondition.html
index 9bc1f2d..257e9a9 100644
--- a/docs/html/reference/android/support/test/uiautomator/EventCondition.html
+++ b/docs/html/reference/android/support/test/uiautomator/EventCondition.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -788,7 +790,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1124,6 +1126,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/IAutomationSupport.html b/docs/html/reference/android/support/test/uiautomator/IAutomationSupport.html
index 5aa680c..946be47 100644
--- a/docs/html/reference/android/support/test/uiautomator/IAutomationSupport.html
+++ b/docs/html/reference/android/support/test/uiautomator/IAutomationSupport.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -884,6 +886,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/SearchCondition.html b/docs/html/reference/android/support/test/uiautomator/SearchCondition.html
index 8cb2795..3d31e02 100644
--- a/docs/html/reference/android/support/test/uiautomator/SearchCondition.html
+++ b/docs/html/reference/android/support/test/uiautomator/SearchCondition.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -786,7 +788,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1122,6 +1124,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/StaleObjectException.html b/docs/html/reference/android/support/test/uiautomator/StaleObjectException.html
index 7071ea2..d552032 100644
--- a/docs/html/reference/android/support/test/uiautomator/StaleObjectException.html
+++ b/docs/html/reference/android/support/test/uiautomator/StaleObjectException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -863,7 +865,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1097,7 +1099,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1435,6 +1437,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiAutomatorInstrumentationTestRunner.html b/docs/html/reference/android/support/test/uiautomator/UiAutomatorInstrumentationTestRunner.html
index 0c9816f..43dd410 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiAutomatorInstrumentationTestRunner.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiAutomatorInstrumentationTestRunner.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -812,7 +814,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.test.InstrumentationTestRunner" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.test.InstrumentationTestRunner-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.test.InstrumentationTestRunner
 <div id="inherited-constants-android.test.InstrumentationTestRunner">
@@ -956,7 +958,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Instrumentation" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.app.Instrumentation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.app.Instrumentation
 <div id="inherited-constants-android.app.Instrumentation">
@@ -1129,7 +1131,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.test.InstrumentationTestRunner" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.test.InstrumentationTestRunner-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1267,7 +1269,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Instrumentation" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.app.Instrumentation-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2285,7 +2287,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2487,7 +2489,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.test.TestSuiteProvider" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.test.TestSuiteProvider-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -2780,6 +2782,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiAutomatorTestCase.html b/docs/html/reference/android/support/test/uiautomator/UiAutomatorTestCase.html
index 20a778f..166e174 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiAutomatorTestCase.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiAutomatorTestCase.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -979,7 +981,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.test.InstrumentationTestCase" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.test.InstrumentationTestCase-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1181,7 +1183,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.TestCase" class="jd-expando-trigger closed"
           ><img id="inherited-methods-junit.framework.TestCase-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1383,7 +1385,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Assert" class="jd-expando-trigger closed"
           ><img id="inherited-methods-junit.framework.Assert-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2017,7 +2019,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2219,7 +2221,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Test" class="jd-expando-trigger closed"
           ><img id="inherited-methods-junit.framework.Test-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -2570,6 +2572,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiCollection.html b/docs/html/reference/android/support/test/uiautomator/UiCollection.html
index 0604215..5f489d0 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiCollection.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiCollection.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -718,7 +720,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
           ><img id="subclasses-direct-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Direct Subclasses
 
   <div id="subclasses-direct">
@@ -818,7 +820,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.test.uiautomator.UiObject" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.support.test.uiautomator.UiObject-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 <a href="../../../../../reference/android/support/test/uiautomator/UiObject.html">android.support.test.uiautomator.UiObject</a>
 <div id="inherited-constants-android.support.test.uiautomator.UiObject">
@@ -1082,7 +1084,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.uiautomator.UiObject" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.uiautomator.UiObject-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2105,7 +2107,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2696,6 +2698,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiDevice.html b/docs/html/reference/android/support/test/uiautomator/UiDevice.html
index e110d93..3685972 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiDevice.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiDevice.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -2223,7 +2225,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -5098,6 +5100,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiObject.html b/docs/html/reference/android/support/test/uiautomator/UiObject.html
index 42b29d9..f1149dd 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiObject.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiObject.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -698,7 +700,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
           ><img id="subclasses-direct-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Direct Subclasses
 
   <div id="subclasses-direct">
@@ -742,7 +744,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
@@ -1995,7 +1997,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4925,6 +4927,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiObject2.html b/docs/html/reference/android/support/test/uiautomator/UiObject2.html
index 1f7d013..b2195bd 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiObject2.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiObject2.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1833,7 +1835,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3822,6 +3824,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiObject2Condition.html b/docs/html/reference/android/support/test/uiautomator/UiObject2Condition.html
index bcfed1c..99efb28 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiObject2Condition.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiObject2Condition.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -788,7 +790,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1124,6 +1126,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiObjectNotFoundException.html b/docs/html/reference/android/support/test/uiautomator/UiObjectNotFoundException.html
index 96bf21d..4548cb8 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiObjectNotFoundException.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiObjectNotFoundException.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -868,7 +870,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1102,7 +1104,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1504,6 +1506,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiScrollable.html b/docs/html/reference/android/support/test/uiautomator/UiScrollable.html
index 669016d..a4a5973 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiScrollable.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiScrollable.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -805,7 +807,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.test.uiautomator.UiObject" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.support.test.uiautomator.UiObject-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 <a href="../../../../../reference/android/support/test/uiautomator/UiObject.html">android.support.test.uiautomator.UiObject</a>
 <div id="inherited-constants-android.support.test.uiautomator.UiObject">
@@ -1638,7 +1640,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.uiautomator.UiCollection" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.uiautomator.UiCollection-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1760,7 +1762,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.uiautomator.UiObject" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.test.uiautomator.UiObject-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2783,7 +2785,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4616,6 +4618,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiSelector.html b/docs/html/reference/android/support/test/uiautomator/UiSelector.html
index 0268dce..9670a8b 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiSelector.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiSelector.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1508,7 +1510,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3321,6 +3323,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/UiWatcher.html b/docs/html/reference/android/support/test/uiautomator/UiWatcher.html
index f2edeb6..bd11626 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiWatcher.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiWatcher.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -902,6 +904,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/Until.html b/docs/html/reference/android/support/test/uiautomator/Until.html
index ab45eed..8af2f96 100644
--- a/docs/html/reference/android/support/test/uiautomator/Until.html
+++ b/docs/html/reference/android/support/test/uiautomator/Until.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -479,6 +479,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -1450,7 +1452,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2817,6 +2819,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/test/uiautomator/package-summary.html b/docs/html/reference/android/support/test/uiautomator/package-summary.html
index ed1f728..6ea3ad1 100644
--- a/docs/html/reference/android/support/test/uiautomator/package-summary.html
+++ b/docs/html/reference/android/support/test/uiautomator/package-summary.html
@@ -126,7 +126,7 @@
   var metaTags = [];
   var devsite = false;
 </script>
-<script src="../../../../../assets/js/docs.js?v=5" type="text/javascript"></script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
 
 
 
@@ -480,6 +480,8 @@
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
     <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/test/jank/package-summary.html">android.support.test.jank</a></li>
+    <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
@@ -959,6 +961,7 @@
           <option value="es">Español</option>
           <option value="ja">日本語</option>
           <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
           <option value="ru">Русский</option>
           <option value="zh-cn">中文（简体)</option>
           <option value="zh-tw">中文（繁體)</option>
diff --git a/docs/html/reference/android/support/wearable/R.anim.html b/docs/html/reference/android/support/wearable/R.anim.html
index 8976afe..b1ccafd 100644
--- a/docs/html/reference/android/support/wearable/R.anim.html
+++ b/docs/html/reference/android/support/wearable/R.anim.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -825,7 +832,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/R.animator.html b/docs/html/reference/android/support/wearable/R.animator.html
index 7ab63f2..66ee11a 100644
--- a/docs/html/reference/android/support/wearable/R.animator.html
+++ b/docs/html/reference/android/support/wearable/R.animator.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -761,7 +768,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/R.array.html b/docs/html/reference/android/support/wearable/R.array.html
new file mode 100644
index 0000000..9ae1f1c
--- /dev/null
+++ b/docs/html/reference/android/support/wearable/R.array.html
@@ -0,0 +1,1281 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.ico" />
+<title>R.array | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+<body class="gc-documentation 
+  develop reference" itemscope itemtype="http://schema.org/Article">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../assets/images/android_logo.png"
+              srcset="../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+          
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">R.array</a></li>
+        </ul>
+
+        
+        
+        
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+        
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+  
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../assets/images/android_logo.png"
+               srcset="../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../google/index.html">Google Services</a>
+          </li>
+          
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../distribute/googleplay/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+  
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+                
+    <li class="selected api apilevel-">
+  <a href="../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/activity/package-summary.html">android.support.wearable.activity</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/companion/package-summary.html">android.support.wearable.companion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/input/package-summary.html">android.support.wearable.input</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/media/package-summary.html">android.support.wearable.media</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/provider/package-summary.html">android.support.wearable.provider</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/view/package-summary.html">android.support.wearable.view</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/watchface/package-summary.html">android.support.wearable.watchface</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+              
+              
+              
+    <li><h2>Classes</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.html">R</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.anim.html">R.anim</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
+          <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.style.html">R.style</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.styleable.html">R.styleable</a></li>
+      </ul>
+    </li>
+              
+              
+              
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+     
+
+
+
+<div class="col-12"  id="doc-col">
+
+<div id="api-info-block">
+
+
+
+  
+   
+  
+  
+  
+  
+
+
+<div class="sum-details-links">
+
+Summary:
+
+
+
+
+
+
+
+  <a href="#lfields">Fields</a>
+  
+
+
+
+  &#124; <a href="#pubctors">Ctors</a>
+  
+
+
+
+
+
+  &#124; <a href="#inhmethods">Inherited Methods</a>
+
+&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
+
+</div><!-- end sum-details-links -->
+<div class="api-level">
+  
+  
+  
+
+</div>
+</div><!-- end api-info-block -->
+
+
+<!-- ======== START OF CLASS DATA ======== -->
+
+<div id="jd-header">
+    public
+    static 
+    final 
+    
+    class
+<h1 itemprop="name">R.array</h1>
+
+
+
+  
+    extends Object<br/>
+  
+  
+  
+
+  
+  
+  
+
+
+    
+
+
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+<table class="jd-inheritance-table">
+
+
+    <tr>
+         	
+        <td colspan="2" class="jd-inheritance-class-cell">java.lang.Object</td>
+    </tr>
+    
+
+    <tr>
+        
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+         	
+        <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.R.array</td>
+    </tr>
+    
+
+</table>
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+
+
+
+
+</div><!-- jd-descr -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Summary</h2>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- =========== FIELD SUMMARY =========== -->
+<table id="lfields" class="jd-sumtable"><tr><th colspan="12">Fields</th></tr>
+
+
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.array.html#progress_spinner_sequence">progress_spinner_sequence</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+
+</table>
+
+
+
+
+
+
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
+
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../reference/android/support/wearable/R.array.html#R.array()">R.array</a></span>()</nobr>
+        
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="inhmethods" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Methods</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-java.lang.Object-trigger"
+          src="../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  java.lang.Object
+
+<div id="inherited-methods-java.lang.Object">
+  <div id="inherited-methods-java.lang.Object-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Object</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clone</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">equals</span>(Object arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">finalize</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            Class&lt;?&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClass</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hashCode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notify</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notifyAll</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+</table>
+
+
+</div><!-- jd-descr (summary) -->
+
+<!-- Details -->
+
+
+
+
+
+
+
+
+<!-- XML Attributes -->
+
+
+<!-- Enum Values -->
+
+
+<!-- Constants -->
+
+
+<!-- Fields -->
+
+
+<!-- ========= FIELD DETAIL ======== -->
+<h2>Fields</h2>
+
+
+
+
+<A NAME="progress_spinner_sequence"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        progress_spinner_sequence
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+
+<!-- Public ctors -->
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<h2>Public Constructors</h2>
+
+
+
+<A NAME="R.array()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        
+      </span>
+      <span class="sympad">R.array</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<!-- Protected ctors -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+<!-- Public methdos -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+
+
+
+<!-- ========= END OF CLASS DATA ========= -->
+<A NAME="navbar_top"></A>
+</div> <!-- jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+    
+      <p class="dac-footer-copyright">
+        
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+        
+    Android Wearable Support&nbsp;r &mdash; 
+<script src="../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+    
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- end doc-content -->
+
+</div> <!-- end .cols --> 
+</div> <!-- end body-content --> 
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/wearable/R.attr.html b/docs/html/reference/android/support/wearable/R.attr.html
index 099c981..7c378e0 100644
--- a/docs/html/reference/android/support/wearable/R.attr.html
+++ b/docs/html/reference/android/support/wearable/R.attr.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -797,6 +804,22 @@
           static
           
           int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.attr.html#circle_radius_percent">circle_radius_percent</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>Must be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.attr.html#circle_radius_pressed">circle_radius_pressed</a></td>
           <td class="jd-descrcol" width="100%">
             <p>Must be a dimension value, which is a floating point number appended with a unit such as "<code>14.5sp</code>".
@@ -807,6 +830,22 @@
       </tr>
       
     
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.attr.html#circle_radius_pressed_percent">circle_radius_pressed_percent</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>Must be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
+            
+    
+
+          </td>
+      </tr>
+      
+    
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -1138,6 +1177,22 @@
           static
           
           int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.attr.html#layoutManager">layoutManager</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.attr.html#layout_box">layout_box</a></td>
           <td class="jd-descrcol" width="100%">
             <p>Must be one or more (separated by '|') of the following constant values.
@@ -1148,7 +1203,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1164,7 +1219,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1180,7 +1235,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1196,7 +1251,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1212,7 +1267,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1228,7 +1283,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1244,7 +1299,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1260,7 +1315,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1276,7 +1331,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1292,7 +1347,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1308,7 +1363,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1324,7 +1379,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1341,6 +1396,22 @@
       </tr>
       
     
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.attr.html#reverseLayout">reverseLayout</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
+            
+    
+
+          </td>
+      </tr>
+      
+    
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -1380,6 +1451,54 @@
           static
           
           int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.attr.html#spanCount">spanCount</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>Must be an integer value, such as "<code>100</code>".
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.attr.html#square_dimen">square_dimen</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>Must be one of the following constant values.
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.attr.html#stackFromEnd">stackFromEnd</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.attr.html#update_interval">update_interval</a></td>
           <td class="jd-descrcol" width="100%">
             <p>Must be an integer value, such as "<code>100</code>".
@@ -1443,7 +1562,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1900,6 +2019,45 @@
 
 
 
+<A NAME="circle_radius_percent"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        circle_radius_percent
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>Must be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
+The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
+some parent container.
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.
+</p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="circle_radius_pressed"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -1939,6 +2097,45 @@
 
 
 
+<A NAME="circle_radius_pressed_percent"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        circle_radius_pressed_percent
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>Must be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
+The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
+some parent container.
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.
+</p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="circular_layout_gravity"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -2710,6 +2907,43 @@
 
 
 
+<A NAME="layoutManager"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        layoutManager
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.
+</p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="layout_box"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -3228,6 +3462,43 @@
 
 
 
+<A NAME="reverseLayout"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        reverseLayout
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.
+</p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="roundLayout"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -3300,6 +3571,121 @@
 
 
 
+<A NAME="spanCount"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        spanCount
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>Must be an integer value, such as "<code>100</code>".
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.
+</p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="square_dimen"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        square_dimen
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>Must be one of the following constant values.</p>
+<table>
+<colgroup align="left" />
+<colgroup align="left" />
+<colgroup align="left" />
+<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
+<tr><td><code>none</code></td><td>0</td><td></td></tr>
+<tr><td><code>height</code></td><td>1</td><td></td></tr>
+<tr><td><code>width</code></td><td>2</td><td></td></tr>
+</table>
+</p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="stackFromEnd"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        stackFromEnd
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.
+</p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="update_interval"></A>
 
 <div class="jd-details api apilevel-"> 
diff --git a/docs/html/reference/android/support/wearable/R.bool.html b/docs/html/reference/android/support/wearable/R.bool.html
new file mode 100644
index 0000000..dfcf900
--- /dev/null
+++ b/docs/html/reference/android/support/wearable/R.bool.html
@@ -0,0 +1,1281 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.ico" />
+<title>R.bool | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+<body class="gc-documentation 
+  develop reference" itemscope itemtype="http://schema.org/Article">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../assets/images/android_logo.png"
+              srcset="../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+          
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">R.bool</a></li>
+        </ul>
+
+        
+        
+        
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+        
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+  
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../assets/images/android_logo.png"
+               srcset="../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../google/index.html">Google Services</a>
+          </li>
+          
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../distribute/googleplay/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+  
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+                
+    <li class="selected api apilevel-">
+  <a href="../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/activity/package-summary.html">android.support.wearable.activity</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/companion/package-summary.html">android.support.wearable.companion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/input/package-summary.html">android.support.wearable.input</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/media/package-summary.html">android.support.wearable.media</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/provider/package-summary.html">android.support.wearable.provider</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/view/package-summary.html">android.support.wearable.view</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/watchface/package-summary.html">android.support.wearable.watchface</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+              
+              
+              
+    <li><h2>Classes</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.html">R</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.anim.html">R.anim</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.style.html">R.style</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.styleable.html">R.styleable</a></li>
+      </ul>
+    </li>
+              
+              
+              
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+     
+
+
+
+<div class="col-12"  id="doc-col">
+
+<div id="api-info-block">
+
+
+
+  
+   
+  
+  
+  
+  
+
+
+<div class="sum-details-links">
+
+Summary:
+
+
+
+
+
+
+
+  <a href="#lfields">Fields</a>
+  
+
+
+
+  &#124; <a href="#pubctors">Ctors</a>
+  
+
+
+
+
+
+  &#124; <a href="#inhmethods">Inherited Methods</a>
+
+&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
+
+</div><!-- end sum-details-links -->
+<div class="api-level">
+  
+  
+  
+
+</div>
+</div><!-- end api-info-block -->
+
+
+<!-- ======== START OF CLASS DATA ======== -->
+
+<div id="jd-header">
+    public
+    static 
+    final 
+    
+    class
+<h1 itemprop="name">R.bool</h1>
+
+
+
+  
+    extends Object<br/>
+  
+  
+  
+
+  
+  
+  
+
+
+    
+
+
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+<table class="jd-inheritance-table">
+
+
+    <tr>
+         	
+        <td colspan="2" class="jd-inheritance-class-cell">java.lang.Object</td>
+    </tr>
+    
+
+    <tr>
+        
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+         	
+        <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.R.bool</td>
+    </tr>
+    
+
+</table>
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+
+
+
+
+</div><!-- jd-descr -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Summary</h2>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- =========== FIELD SUMMARY =========== -->
+<table id="lfields" class="jd-sumtable"><tr><th colspan="12">Fields</th></tr>
+
+
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.bool.html#action_choose_expand_selected">action_choose_expand_selected</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+
+</table>
+
+
+
+
+
+
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
+
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../reference/android/support/wearable/R.bool.html#R.bool()">R.bool</a></span>()</nobr>
+        
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="inhmethods" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Methods</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-java.lang.Object-trigger"
+          src="../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  java.lang.Object
+
+<div id="inherited-methods-java.lang.Object">
+  <div id="inherited-methods-java.lang.Object-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Object</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clone</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">equals</span>(Object arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">finalize</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            Class&lt;?&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClass</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hashCode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notify</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notifyAll</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+</table>
+
+
+</div><!-- jd-descr (summary) -->
+
+<!-- Details -->
+
+
+
+
+
+
+
+
+<!-- XML Attributes -->
+
+
+<!-- Enum Values -->
+
+
+<!-- Constants -->
+
+
+<!-- Fields -->
+
+
+<!-- ========= FIELD DETAIL ======== -->
+<h2>Fields</h2>
+
+
+
+
+<A NAME="action_choose_expand_selected"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_choose_expand_selected
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+
+<!-- Public ctors -->
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<h2>Public Constructors</h2>
+
+
+
+<A NAME="R.bool()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        
+      </span>
+      <span class="sympad">R.bool</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<!-- Protected ctors -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+<!-- Public methdos -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+
+
+
+<!-- ========= END OF CLASS DATA ========= -->
+<A NAME="navbar_top"></A>
+</div> <!-- jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+    
+      <p class="dac-footer-copyright">
+        
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+        
+    Android Wearable Support&nbsp;r &mdash; 
+<script src="../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+    
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- end doc-content -->
+
+</div> <!-- end .cols --> 
+</div> <!-- end body-content --> 
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/wearable/R.color.html b/docs/html/reference/android/support/wearable/R.color.html
index 07b5e0c..e88a8be 100644
--- a/docs/html/reference/android/support/wearable/R.color.html
+++ b/docs/html/reference/android/support/wearable/R.color.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -714,7 +721,7 @@
           static
           
           int</nobr></td>
-          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.color.html#black">black</a></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.color.html#ambient_mode_text">ambient_mode_text</a></td>
           <td class="jd-descrcol" width="100%">
             
             
@@ -730,6 +737,22 @@
           static
           
           int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.color.html#black">black</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.color.html#black_54p">black_54p</a></td>
           <td class="jd-descrcol" width="100%">
             
@@ -740,7 +763,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -756,7 +779,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -772,7 +795,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -788,12 +811,44 @@
       </tr>
       
     
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.color.html#card_grey_text_color">card_grey_text_color</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
           
           int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.color.html#card_text_color">card_text_color</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.color.html#circular_button">circular_button</a></td>
           <td class="jd-descrcol" width="100%">
             
@@ -804,7 +859,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -820,7 +875,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -836,7 +891,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -852,7 +907,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -868,7 +923,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -884,7 +939,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -900,7 +955,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -916,7 +971,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -932,7 +987,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -948,7 +1003,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -964,7 +1019,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -980,7 +1035,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -996,7 +1051,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1012,7 +1067,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1028,7 +1083,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1044,7 +1099,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1060,7 +1115,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1076,7 +1131,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1092,7 +1147,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1108,7 +1163,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1124,7 +1179,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1140,7 +1195,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1209,7 +1264,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1469,6 +1524,37 @@
 
 
 
+<A NAME="ambient_mode_text"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        ambient_mode_text
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="black"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -1624,6 +1710,68 @@
 
 
 
+<A NAME="card_grey_text_color"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        card_grey_text_color
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="card_text_color"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        card_text_color
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="circular_button"></A>
 
 <div class="jd-details api apilevel-"> 
diff --git a/docs/html/reference/android/support/wearable/R.dimen.html b/docs/html/reference/android/support/wearable/R.dimen.html
index 215b2b3..4b666e5 100644
--- a/docs/html/reference/android/support/wearable/R.dimen.html
+++ b/docs/html/reference/android/support/wearable/R.dimen.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -698,6 +705,102 @@
           static
           
           int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html#action_chooser_base_radius_percent">action_chooser_base_radius_percent</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html#action_chooser_bounce_in_percent">action_chooser_bounce_in_percent</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html#action_chooser_icon_height_percent">action_chooser_icon_height_percent</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html#action_chooser_max_radius_percent">action_chooser_max_radius_percent</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html#action_chooser_min_drag_select_percent">action_chooser_min_drag_select_percent</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html#action_chooser_min_swipe_select_percent">action_chooser_min_swipe_select_percent</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html#card_content_padding_rect_top">card_content_padding_rect_top</a></td>
           <td class="jd-descrcol" width="100%">
             
@@ -948,6 +1051,22 @@
       </tr>
       
     
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html#item_touch_helper_max_drag_scroll_per_frame">item_touch_helper_max_drag_scroll_per_frame</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
 
 </table>
 
@@ -1001,7 +1120,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1230,6 +1349,192 @@
 
 
 
+<A NAME="action_chooser_base_radius_percent"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_chooser_base_radius_percent
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="action_chooser_bounce_in_percent"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_chooser_bounce_in_percent
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="action_chooser_icon_height_percent"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_chooser_icon_height_percent
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="action_chooser_max_radius_percent"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_chooser_max_radius_percent
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="action_chooser_min_drag_select_percent"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_chooser_min_drag_select_percent
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="action_chooser_min_swipe_select_percent"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_chooser_min_swipe_select_percent
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="card_content_padding_rect_top"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -1726,6 +2031,37 @@
 
 
 
+<A NAME="item_touch_helper_max_drag_scroll_per_frame"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        item_touch_helper_max_drag_scroll_per_frame
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
 
 <!-- Public ctors -->
 
diff --git a/docs/html/reference/android/support/wearable/R.drawable.html b/docs/html/reference/android/support/wearable/R.drawable.html
index c83cd2e..3f10f14 100644
--- a/docs/html/reference/android/support/wearable/R.drawable.html
+++ b/docs/html/reference/android/support/wearable/R.drawable.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -905,7 +912,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/R.html b/docs/html/reference/android/support/wearable/R.html
index 714f287..699c861 100644
--- a/docs/html/reference/android/support/wearable/R.html
+++ b/docs/html/reference/android/support/wearable/R.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -752,7 +759,7 @@
          
         
         class</nobr></td>
-      <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></td>
+      <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></td>
       <td class="jd-descrcol" width="100%">
         &nbsp;
         
@@ -769,7 +776,7 @@
          
         
         class</nobr></td>
-      <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></td>
+      <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></td>
       <td class="jd-descrcol" width="100%">
         &nbsp;
         
@@ -786,7 +793,7 @@
          
         
         class</nobr></td>
-      <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></td>
+      <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></td>
       <td class="jd-descrcol" width="100%">
         &nbsp;
         
@@ -803,6 +810,23 @@
          
         
         class</nobr></td>
+      <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></td>
+      <td class="jd-descrcol" width="100%">
+        &nbsp;
+        
+    
+
+      </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+      <td class="jd-typecol"><nobr>
+        
+         
+         
+        
+        class</nobr></td>
       <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></td>
       <td class="jd-descrcol" width="100%">
         &nbsp;
@@ -813,6 +837,23 @@
     </tr>
     
     
+    <tr class=" api apilevel-" >
+      <td class="jd-typecol"><nobr>
+        
+         
+         
+        
+        class</nobr></td>
+      <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></td>
+      <td class="jd-descrcol" width="100%">
+        &nbsp;
+        
+    
+
+      </td>
+    </tr>
+    
+    
     <tr class="alt-color api apilevel-" >
       <td class="jd-typecol"><nobr>
         
@@ -965,7 +1006,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/R.id.html b/docs/html/reference/android/support/wearable/R.id.html
index c6bad3b..0c8180e 100644
--- a/docs/html/reference/android/support/wearable/R.id.html
+++ b/docs/html/reference/android/support/wearable/R.id.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -970,6 +977,38 @@
           static
           
           int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.id.html#height">height</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.id.html#item_touch_helper_previous_elevation">item_touch_helper_previous_elevation</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.id.html#left">left</a></td>
           <td class="jd-descrcol" width="100%">
             
@@ -1002,7 +1041,7 @@
           static
           
           int</nobr></td>
-          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.id.html#parentPanel">parentPanel</a></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.id.html#none">none</a></td>
           <td class="jd-descrcol" width="100%">
             
             
@@ -1018,6 +1057,22 @@
           static
           
           int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.id.html#parentPanel">parentPanel</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.id.html#right">right</a></td>
           <td class="jd-descrcol" width="100%">
             
@@ -1028,7 +1083,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1044,7 +1099,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1060,7 +1115,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1076,7 +1131,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1092,6 +1147,22 @@
       </tr>
       
     
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.id.html#width">width</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
 
 </table>
 
@@ -1145,7 +1216,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1901,6 +1972,68 @@
 
 
 
+<A NAME="height"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        height
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="item_touch_helper_previous_elevation"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        item_touch_helper_previous_elevation
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="left"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -1963,6 +2096,37 @@
 
 
 
+<A NAME="none"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        none
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="parentPanel"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -2149,6 +2313,37 @@
 
 
 
+<A NAME="width"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        width
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
 
 <!-- Public ctors -->
 
diff --git a/docs/html/reference/android/support/wearable/R.integer.html b/docs/html/reference/android/support/wearable/R.integer.html
new file mode 100644
index 0000000..0760a16
--- /dev/null
+++ b/docs/html/reference/android/support/wearable/R.integer.html
@@ -0,0 +1,1422 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.ico" />
+<title>R.integer | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+<body class="gc-documentation 
+  develop reference" itemscope itemtype="http://schema.org/Article">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../assets/images/android_logo.png"
+              srcset="../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+          
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">R.integer</a></li>
+        </ul>
+
+        
+        
+        
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+        
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+  
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../assets/images/android_logo.png"
+               srcset="../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../google/index.html">Google Services</a>
+          </li>
+          
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../distribute/googleplay/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+  
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+                
+    <li class="selected api apilevel-">
+  <a href="../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/activity/package-summary.html">android.support.wearable.activity</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/companion/package-summary.html">android.support.wearable.companion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/input/package-summary.html">android.support.wearable.input</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/media/package-summary.html">android.support.wearable.media</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/provider/package-summary.html">android.support.wearable.provider</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/view/package-summary.html">android.support.wearable.view</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../reference/android/support/wearable/watchface/package-summary.html">android.support.wearable.watchface</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+              
+              
+              
+    <li><h2>Classes</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.html">R</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.anim.html">R.anim</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.style.html">R.style</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.styleable.html">R.styleable</a></li>
+      </ul>
+    </li>
+              
+              
+              
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+     
+
+
+
+<div class="col-12"  id="doc-col">
+
+<div id="api-info-block">
+
+
+
+  
+   
+  
+  
+  
+  
+
+
+<div class="sum-details-links">
+
+Summary:
+
+
+
+
+
+
+
+  <a href="#lfields">Fields</a>
+  
+
+
+
+  &#124; <a href="#pubctors">Ctors</a>
+  
+
+
+
+
+
+  &#124; <a href="#inhmethods">Inherited Methods</a>
+
+&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
+
+</div><!-- end sum-details-links -->
+<div class="api-level">
+  
+  
+  
+
+</div>
+</div><!-- end api-info-block -->
+
+
+<!-- ======== START OF CLASS DATA ======== -->
+
+<div id="jd-header">
+    public
+    static 
+    final 
+    
+    class
+<h1 itemprop="name">R.integer</h1>
+
+
+
+  
+    extends Object<br/>
+  
+  
+  
+
+  
+  
+  
+
+
+    
+
+
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+<table class="jd-inheritance-table">
+
+
+    <tr>
+         	
+        <td colspan="2" class="jd-inheritance-class-cell">java.lang.Object</td>
+    </tr>
+    
+
+    <tr>
+        
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+         	
+        <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.R.integer</td>
+    </tr>
+    
+
+</table>
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+
+
+
+
+</div><!-- jd-descr -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Summary</h2>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- =========== FIELD SUMMARY =========== -->
+<table id="lfields" class="jd-sumtable"><tr><th colspan="12">Fields</th></tr>
+
+
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.integer.html#action_choose_expand_full_duration">action_choose_expand_full_duration</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.integer.html#action_chooser_anim_duration">action_chooser_anim_duration</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.integer.html#action_chooser_bounce_delay">action_chooser_bounce_delay</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.integer.html#action_chooser_confirmation_duration">action_chooser_confirmation_duration</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+
+</table>
+
+
+
+
+
+
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
+
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../reference/android/support/wearable/R.integer.html#R.integer()">R.integer</a></span>()</nobr>
+        
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="inhmethods" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Methods</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-java.lang.Object-trigger"
+          src="../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  java.lang.Object
+
+<div id="inherited-methods-java.lang.Object">
+  <div id="inherited-methods-java.lang.Object-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Object</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clone</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">equals</span>(Object arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">finalize</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            Class&lt;?&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClass</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hashCode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notify</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notifyAll</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+</table>
+
+
+</div><!-- jd-descr (summary) -->
+
+<!-- Details -->
+
+
+
+
+
+
+
+
+<!-- XML Attributes -->
+
+
+<!-- Enum Values -->
+
+
+<!-- Constants -->
+
+
+<!-- Fields -->
+
+
+<!-- ========= FIELD DETAIL ======== -->
+<h2>Fields</h2>
+
+
+
+
+<A NAME="action_choose_expand_full_duration"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_choose_expand_full_duration
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="action_chooser_anim_duration"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_chooser_anim_duration
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="action_chooser_bounce_delay"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_chooser_bounce_delay
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="action_chooser_confirmation_duration"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        action_chooser_confirmation_duration
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
+
+<!-- Public ctors -->
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<h2>Public Constructors</h2>
+
+
+
+<A NAME="R.integer()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        
+      </span>
+      <span class="sympad">R.integer</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<!-- Protected ctors -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+<!-- Public methdos -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+
+
+
+<!-- ========= END OF CLASS DATA ========= -->
+<A NAME="navbar_top"></A>
+</div> <!-- jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+    
+      <p class="dac-footer-copyright">
+        
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+        
+    Android Wearable Support&nbsp;r &mdash; 
+<script src="../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+    
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- end doc-content -->
+
+</div> <!-- end .cols --> 
+</div> <!-- end body-content --> 
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/wearable/R.interpolator.html b/docs/html/reference/android/support/wearable/R.interpolator.html
index 01391a8..5d7904e 100644
--- a/docs/html/reference/android/support/wearable/R.interpolator.html
+++ b/docs/html/reference/android/support/wearable/R.interpolator.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -841,7 +848,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/R.layout.html b/docs/html/reference/android/support/wearable/R.layout.html
index 4987ba7..d9446c5 100644
--- a/docs/html/reference/android/support/wearable/R.layout.html
+++ b/docs/html/reference/android/support/wearable/R.layout.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -809,7 +816,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/R.string.html b/docs/html/reference/android/support/wearable/R.string.html
index c8707ef..493b855 100644
--- a/docs/html/reference/android/support/wearable/R.string.html
+++ b/docs/html/reference/android/support/wearable/R.string.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="selected api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -761,7 +768,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/R.style.html b/docs/html/reference/android/support/wearable/R.style.html
index 38ce308..ace43f1 100644
--- a/docs/html/reference/android/support/wearable/R.style.html
+++ b/docs/html/reference/android/support/wearable/R.style.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -714,6 +721,22 @@
           static
           
           int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.style.html#CardTextBase">CardTextBase</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.style.html#CardTitle">CardTitle</a></td>
           <td class="jd-descrcol" width="100%">
             
@@ -724,6 +747,22 @@
       </tr>
       
     
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.style.html#CardTitleBase">CardTitleBase</a></td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -1145,7 +1184,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1405,6 +1444,37 @@
 
 
 
+<A NAME="CardTextBase"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        CardTextBase
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="CardTitle"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -1436,6 +1506,37 @@
 
 
 
+<A NAME="CardTitleBase"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        CardTitleBase
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="DismissOverlayText"></A>
 
 <div class="jd-details api apilevel-"> 
diff --git a/docs/html/reference/android/support/wearable/R.styleable.html b/docs/html/reference/android/support/wearable/R.styleable.html
index e43e070..5e6db9c 100644
--- a/docs/html/reference/android/support/wearable/R.styleable.html
+++ b/docs/html/reference/android/support/wearable/R.styleable.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -475,10 +480,12 @@
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+          <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
           <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -1374,6 +1381,23 @@
           static
           
           int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius_percent">CircledImageView_circle_radius_percent</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#circle_radius_percent">circle_radius_percent</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView">CircledImageView</a></code> array.
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius_pressed">CircledImageView_circle_radius_pressed</a></td>
           <td class="jd-descrcol" width="100%">
             <p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#circle_radius_pressed">circle_radius_pressed</a></code>
@@ -1385,6 +1409,23 @@
       </tr>
       
     
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius_pressed_percent">CircledImageView_circle_radius_pressed_percent</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#circle_radius_pressed_percent">circle_radius_pressed_percent</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView">CircledImageView</a></code> array.
+            
+    
+
+          </td>
+      </tr>
+      
+    
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -1457,6 +1498,23 @@
           <td class="jd-typecol"><nobr>
           public
           static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_square_dimen">CircledImageView_square_dimen</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#square_dimen">square_dimen</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView">CircledImageView</a></code> array.
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
           final
           int[]</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#CircularButton">CircularButton</a></td>
@@ -1469,7 +1527,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1486,7 +1544,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1503,7 +1561,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1520,7 +1578,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1537,7 +1595,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1554,7 +1612,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1571,7 +1629,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1588,7 +1646,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1604,7 +1662,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1621,7 +1679,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1637,7 +1695,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1654,7 +1712,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1671,7 +1729,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1688,7 +1746,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1705,7 +1763,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1722,7 +1780,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1739,7 +1797,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1756,7 +1814,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1773,7 +1831,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1790,7 +1848,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1807,7 +1865,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1824,7 +1882,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1841,7 +1899,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1858,7 +1916,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1874,7 +1932,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1891,10 +1949,111 @@
       </tr>
       
     
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></td>
+          <td class="jd-descrcol" width="100%">
+            Attributes that can be used with a RecyclerView.
+            
+    
+
+          </td>
+      </tr>
+      
+    
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_android_orientation">RecyclerView_android_orientation</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>This symbol is the offset where the <code><a href="../../../../reference/android/R.attr.html#orientation">orientation</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></code> array.
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_layoutManager">RecyclerView_layoutManager</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#layoutManager">layoutManager</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></code> array.
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_reverseLayout">RecyclerView_reverseLayout</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#reverseLayout">reverseLayout</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></code> array.
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_spanCount">RecyclerView_spanCount</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#spanCount">spanCount</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></code> array.
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          
+          int</nobr></td>
+          <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_stackFromEnd">RecyclerView_stackFromEnd</a></td>
+          <td class="jd-descrcol" width="100%">
+            <p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#stackFromEnd">stackFromEnd</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></code> array.
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
           final
           int[]</nobr></td>
           <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.styleable.html#WatchViewStub">WatchViewStub</a></td>
@@ -1907,7 +2066,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1924,7 +2083,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1941,7 +2100,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1957,7 +2116,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1974,7 +2133,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -1991,7 +2150,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2008,7 +2167,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2025,7 +2184,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2042,7 +2201,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2059,7 +2218,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2076,7 +2235,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2093,7 +2252,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2110,7 +2269,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2127,7 +2286,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2144,7 +2303,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2161,7 +2320,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2177,7 +2336,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2194,7 +2353,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
           static
@@ -2264,7 +2423,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../assets/images/triangle-closed.png"
+          src="../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3725,15 +3884,18 @@
            <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_color">android.support.wearable:circle_color</a></code></code></td><td></td></tr>
            <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_padding">android.support.wearable:circle_padding</a></code></code></td><td></td></tr>
            <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius">android.support.wearable:circle_radius</a></code></code></td><td></td></tr>
+           <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius_percent">android.support.wearable:circle_radius_percent</a></code></code></td><td></td></tr>
            <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius_pressed">android.support.wearable:circle_radius_pressed</a></code></code></td><td></td></tr>
+           <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius_pressed_percent">android.support.wearable:circle_radius_pressed_percent</a></code></code></td><td></td></tr>
            <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_image_circle_percentage">android.support.wearable:image_circle_percentage</a></code></code></td><td></td></tr>
            <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_image_horizontal_offcenter_percentage">android.support.wearable:image_horizontal_offcenter_percentage</a></code></code></td><td></td></tr>
            <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_image_tint">android.support.wearable:image_tint</a></code></code></td><td></td></tr>
            <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_shadow_width">android.support.wearable:shadow_width</a></code></code></td><td></td></tr>
+           <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_square_dimen">android.support.wearable:square_dimen</a></code></code></td><td></td></tr>
            </table></p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">See Also</h5>
-      <ul class="nolist"><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_android_src">CircledImageView_android_src</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_border_color">CircledImageView_circle_border_color</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_border_width">CircledImageView_circle_border_width</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_color">CircledImageView_circle_color</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_padding">CircledImageView_circle_padding</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius">CircledImageView_circle_radius</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius_pressed">CircledImageView_circle_radius_pressed</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_image_circle_percentage">CircledImageView_image_circle_percentage</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_image_horizontal_offcenter_percentage">CircledImageView_image_horizontal_offcenter_percentage</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_image_tint">CircledImageView_image_tint</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_shadow_width">CircledImageView_shadow_width</a></code></li>
+      <ul class="nolist"><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_android_src">CircledImageView_android_src</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_border_color">CircledImageView_circle_border_color</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_border_width">CircledImageView_circle_border_width</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_color">CircledImageView_circle_color</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_padding">CircledImageView_circle_padding</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius">CircledImageView_circle_radius</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius_percent">CircledImageView_circle_radius_percent</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius_pressed">CircledImageView_circle_radius_pressed</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_circle_radius_pressed_percent">CircledImageView_circle_radius_pressed_percent</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_image_circle_percentage">CircledImageView_image_circle_percentage</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_image_horizontal_offcenter_percentage">CircledImageView_image_horizontal_offcenter_percentage</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_image_tint">CircledImageView_image_tint</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_shadow_width">CircledImageView_shadow_width</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView_square_dimen">CircledImageView_square_dimen</a></code></li>
       </ul>
   </div>
 
@@ -3983,6 +4145,48 @@
 
 
 
+<A NAME="CircledImageView_circle_radius_percent"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        CircledImageView_circle_radius_percent
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#circle_radius_percent">circle_radius_percent</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView">CircledImageView</a></code> array.
+
+
+          <p>Must be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
+The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
+some parent container.
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.</p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="CircledImageView_circle_radius_pressed"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -4025,6 +4229,48 @@
 
 
 
+<A NAME="CircledImageView_circle_radius_pressed_percent"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        CircledImageView_circle_radius_pressed_percent
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#circle_radius_pressed_percent">circle_radius_pressed_percent</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView">CircledImageView</a></code> array.
+
+
+          <p>Must be a fractional value, which is a floating point number appended with either % or %p, such as "<code>14.5%</code>".
+The % suffix always means a percentage of the base size; the optional %p suffix provides a size relative to
+some parent container.
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.</p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="CircledImageView_image_circle_percentage"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -4192,6 +4438,50 @@
 
 
 
+<A NAME="CircledImageView_square_dimen"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        CircledImageView_square_dimen
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#square_dimen">square_dimen</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#CircledImageView">CircledImageView</a></code> array.
+
+
+          <p>Must be one of the following constant values.</p>
+<table>
+<colgroup align="left" />
+<colgroup align="left" />
+<colgroup align="left" />
+<tr><th>Constant</th><th>Value</th><th>Description</th></tr>
+<tr><td><code>none</code></td><td>0</td><td></td></tr>
+<tr><td><code>height</code></td><td>1</td><td></td></tr>
+<tr><td><code>width</code></td><td>2</td><td></td></tr>
+</table></p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="CircularButton"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -5246,6 +5536,245 @@
 
 
 
+<A NAME="RecyclerView"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+        final 
+        int[]
+      </span>
+        RecyclerView
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Attributes that can be used with a RecyclerView.
+           <p>Includes the following attributes:</p>
+           <table>
+           <colgroup align="left" />
+           <colgroup align="left" />
+           <tr><th>Attribute</th><th>Description</th></tr>
+           <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_android_orientation">android:orientation</a></code></code></td><td></td></tr>
+           <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_layoutManager">android.support.wearable:layoutManager</a></code></code></td><td></td></tr>
+           <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_reverseLayout">android.support.wearable:reverseLayout</a></code></code></td><td></td></tr>
+           <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_spanCount">android.support.wearable:spanCount</a></code></code></td><td></td></tr>
+           <tr><td><code><code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_stackFromEnd">android.support.wearable:stackFromEnd</a></code></code></td><td></td></tr>
+           </table></p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">See Also</h5>
+      <ul class="nolist"><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_android_orientation">RecyclerView_android_orientation</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_layoutManager">RecyclerView_layoutManager</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_reverseLayout">RecyclerView_reverseLayout</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_spanCount">RecyclerView_spanCount</a></code></li><li><code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView_stackFromEnd">RecyclerView_stackFromEnd</a></code></li>
+      </ul>
+  </div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="RecyclerView_android_orientation"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        RecyclerView_android_orientation
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>This symbol is the offset where the <code><a href="../../../../reference/android/R.attr.html#orientation">orientation</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></code> array.</p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="RecyclerView_layoutManager"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        RecyclerView_layoutManager
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#layoutManager">layoutManager</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></code> array.
+
+
+          <p>Must be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character.
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.</p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="RecyclerView_reverseLayout"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        RecyclerView_reverseLayout
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#reverseLayout">reverseLayout</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></code> array.
+
+
+          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.</p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="RecyclerView_spanCount"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        RecyclerView_spanCount
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#spanCount">spanCount</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></code> array.
+
+
+          <p>Must be an integer value, such as "<code>100</code>".
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.</p></div>
+
+    
+    </div>
+</div>
+
+
+
+<A NAME="RecyclerView_stackFromEnd"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+         
+        int
+      </span>
+        RecyclerView_stackFromEnd
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p><p>This symbol is the offset where the <code><a href="../../../../reference/android/support/wearable/R.attr.html#stackFromEnd">stackFromEnd</a></code>
+          attribute's value can be found in the <code><a href="../../../../reference/android/support/wearable/R.styleable.html#RecyclerView">RecyclerView</a></code> array.
+
+
+          <p>Must be a boolean value, either "<code>true</code>" or "<code>false</code>".
+<p>This may also be a reference to a resource (in the form
+"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>") or
+theme attribute (in the form
+"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>")
+containing a value of this type.</p></div>
+
+    
+    </div>
+</div>
+
+
+
 <A NAME="WatchViewStub"></A>
 
 <div class="jd-details api apilevel-"> 
diff --git a/docs/html/reference/android/support/wearable/activity/ConfirmationActivity.html b/docs/html/reference/android/support/wearable/activity/ConfirmationActivity.html
index 92bfeca..74941ee 100644
--- a/docs/html/reference/android/support/wearable/activity/ConfirmationActivity.html
+++ b/docs/html/reference/android/support/wearable/activity/ConfirmationActivity.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -940,7 +945,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Activity" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.app.Activity-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.app.Activity
 <div id="inherited-constants-android.app.Activity">
@@ -1064,7 +1069,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.Context" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.Context-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.content.Context
 <div id="inherited-constants-android.content.Context">
@@ -1306,7 +1311,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
-        <td class="jd-linkcol">CLIPBOARD_SERVICE</td>
+        <td class="jd-linkcol">CARRIER_CONFIG_SERVICE</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1318,6 +1323,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">CLIPBOARD_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
         <td class="jd-linkcol">CONNECTIVITY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1328,7 +1345,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">CONSUMER_IR_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1340,7 +1357,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_IGNORE_SECURITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1352,7 +1369,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_INCLUDE_CODE</td>
         <td class="jd-descrcol" width="100%">
@@ -1364,7 +1381,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_RESTRICTED</td>
         <td class="jd-descrcol" width="100%">
@@ -1376,7 +1393,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DEVICE_POLICY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1388,7 +1405,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DISPLAY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1400,7 +1417,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DOWNLOAD_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1412,7 +1429,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DROPBOX_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1424,6 +1441,18 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">FINGERPRINT_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">INPUT_METHOD_SERVICE</td>
@@ -1545,6 +1574,18 @@
     
     
     <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">MIDI_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_APPEND</td>
         <td class="jd-descrcol" width="100%">
@@ -1556,7 +1597,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_ENABLE_WRITE_AHEAD_LOGGING</td>
         <td class="jd-descrcol" width="100%">
@@ -1568,7 +1609,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_MULTI_PROCESS</td>
         <td class="jd-descrcol" width="100%">
@@ -1580,7 +1621,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_PRIVATE</td>
         <td class="jd-descrcol" width="100%">
@@ -1592,7 +1633,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_WORLD_READABLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1604,7 +1645,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_WORLD_WRITEABLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1616,6 +1657,18 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">NETWORK_STATS_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">NFC_SERVICE</td>
@@ -1914,7 +1967,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From interface
 android.content.ComponentCallbacks2
 <div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -2039,7 +2092,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.app.Activity" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.app.Activity-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.app.Activity
 <div id="inherited-fields-android.app.Activity">
@@ -2169,7 +2222,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Activity" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.app.Activity-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2861,6 +2914,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            final
+            
+            
+            SearchEvent</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSearchEvent</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             
             
             
@@ -2873,7 +2942,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2889,7 +2958,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2905,7 +2974,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2921,6 +2990,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            VoiceInteractor</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getVoiceInteractor</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -3101,6 +3186,38 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isVoiceInteraction</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isVoiceInteractionRoot</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -4019,7 +4136,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onProvideAssistData</span>(Bundle arg0)</nobr>
+        <span class="sympad">onProvideAssistContent</span>(AssistContent arg0)</nobr>
         
   </td></tr>
 
@@ -4035,13 +4152,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideAssistData</span>(Bundle arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Uri</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideReferrer</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onRequestPermissionsResult</span>(int arg0, String[] arg1, int[] arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestart</span>()</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4057,7 +4222,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4073,7 +4238,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4089,7 +4254,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4105,7 +4270,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4121,7 +4286,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4137,7 +4302,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4153,6 +4318,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onSearchRequested</span>(SearchEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4179,7 +4360,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onStop</span>()</nobr>
+        <span class="sympad">onStateNotSaved</span>()</nobr>
         
   </td></tr>
 
@@ -4195,13 +4376,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onStop</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTitleChanged</span>(CharSequence arg0, int arg1)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4217,7 +4414,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4233,7 +4430,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4249,7 +4446,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4265,7 +4462,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4281,7 +4478,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4297,7 +4494,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4313,7 +4510,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4329,6 +4526,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowStartingActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4493,6 +4706,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestPermissions</span>(String[] arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             
             
             
@@ -4505,7 +4734,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4521,7 +4750,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4537,7 +4766,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4553,7 +4782,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4569,7 +4798,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4585,7 +4814,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4601,7 +4830,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4617,7 +4846,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4633,7 +4862,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4649,7 +4878,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4665,7 +4894,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4681,7 +4910,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4697,7 +4926,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4713,7 +4942,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4729,7 +4958,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4745,7 +4974,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4761,7 +4990,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4777,7 +5006,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4793,7 +5022,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4809,7 +5038,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4825,7 +5054,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4841,7 +5070,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4857,7 +5086,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4873,7 +5102,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4889,7 +5118,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4905,7 +5134,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4921,7 +5150,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4937,7 +5166,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4953,7 +5182,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4969,7 +5198,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4985,7 +5214,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5001,7 +5230,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5017,6 +5246,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">shouldShowRequestPermissionRationale</span>(String arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5037,13 +5282,13 @@
         <td class="jd-typecol"><nobr>
             
             
-            final
+            
             
             
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">showDialog</span>(int arg0, Bundle arg1)</nobr>
+        <span class="sympad">showAssist</span>(Bundle arg0)</nobr>
         
   </td></tr>
 
@@ -5056,6 +5301,22 @@
             final
             
             
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">showDialog</span>(int arg0, Bundle arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -5065,6 +5326,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">showLockTaskEscapeMessage</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5088,6 +5365,22 @@
             
             
             
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -5097,7 +5390,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5113,7 +5406,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5129,7 +5422,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5145,7 +5438,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5161,7 +5454,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5177,7 +5470,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5193,7 +5486,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5209,7 +5502,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5225,7 +5518,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5241,7 +5534,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5257,7 +5550,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5273,7 +5566,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5289,7 +5582,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5305,7 +5598,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5321,7 +5614,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5337,7 +5630,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5353,7 +5646,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5369,7 +5662,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5385,7 +5678,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5401,7 +5694,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5417,7 +5710,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5433,7 +5726,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5449,7 +5742,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5465,7 +5758,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5481,7 +5774,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5497,7 +5790,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5513,7 +5806,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5529,7 +5822,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5555,7 +5848,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ContextThemeWrapper" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ContextThemeWrapper-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -5693,7 +5986,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ContextWrapper" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ContextWrapper-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -5831,7 +6124,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
+        <span class="sympad">checkSelfPermission</span>(String arg0)</nobr>
         
   </td></tr>
 
@@ -5847,7 +6140,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
         
   </td></tr>
 
@@ -5860,6 +6153,22 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -5869,7 +6178,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5885,7 +6194,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5901,7 +6210,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5917,7 +6226,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5933,7 +6242,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5949,7 +6258,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5965,7 +6274,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5981,7 +6290,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5997,7 +6306,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6013,7 +6322,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6029,7 +6338,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6045,7 +6354,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6061,7 +6370,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6077,7 +6386,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6093,7 +6402,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6109,7 +6418,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6125,7 +6434,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6141,7 +6450,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6157,7 +6466,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6173,7 +6482,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6189,7 +6498,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6205,7 +6514,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6221,7 +6530,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6237,7 +6546,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6253,7 +6562,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6269,7 +6578,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6285,7 +6594,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6301,7 +6610,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6317,7 +6626,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6333,7 +6642,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6349,7 +6658,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6365,7 +6674,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6381,7 +6690,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6397,7 +6706,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6413,7 +6722,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6429,7 +6738,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6445,7 +6754,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6461,7 +6770,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6477,7 +6786,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6493,7 +6802,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6509,7 +6818,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6525,7 +6834,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6541,6 +6850,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemServiceName</span>(Class&lt;?&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7207,7 +7532,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.Context" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.Context-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -7329,7 +7654,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
+        <span class="sympad">checkSelfPermission</span>(String arg0)</nobr>
         
   </td></tr>
 
@@ -7345,7 +7670,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
         
   </td></tr>
 
@@ -7358,6 +7683,22 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -7367,7 +7708,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7383,7 +7724,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7399,7 +7740,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7415,7 +7756,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7431,7 +7772,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7447,7 +7788,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7463,7 +7804,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7479,7 +7820,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7495,7 +7836,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7511,7 +7852,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7527,7 +7868,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7543,7 +7884,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7559,7 +7900,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7575,7 +7916,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7591,7 +7932,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7607,7 +7948,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7623,7 +7964,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7639,7 +7980,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7655,7 +7996,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7671,7 +8012,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7687,8 +8028,40 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getColorStateList</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
             abstract
             
             
@@ -7703,7 +8076,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7719,7 +8092,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7735,7 +8108,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7751,7 +8124,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7767,7 +8140,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7783,7 +8156,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7799,7 +8172,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7815,7 +8188,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7831,7 +8204,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7847,7 +8220,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7863,7 +8236,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7879,7 +8252,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7895,7 +8268,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7911,7 +8284,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7927,7 +8300,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7943,7 +8316,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7959,7 +8332,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7975,7 +8348,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7991,7 +8364,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8007,7 +8380,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8023,7 +8396,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8039,7 +8412,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8055,6 +8428,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            &lt;T&gt;
+            T</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemService</span>(Class&lt;T&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
@@ -8073,6 +8462,22 @@
 	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemServiceName</span>(Class&lt;?&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
             
             
             final
@@ -8087,7 +8492,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8103,7 +8508,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8119,7 +8524,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8135,7 +8540,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8151,7 +8556,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8167,7 +8572,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8183,7 +8588,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8199,7 +8604,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8215,7 +8620,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8231,7 +8636,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8247,7 +8652,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8263,7 +8668,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8279,7 +8684,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8295,7 +8700,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8311,7 +8716,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8327,7 +8732,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8343,7 +8748,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8359,7 +8764,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8375,7 +8780,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8391,7 +8796,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8407,7 +8812,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8423,7 +8828,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8439,7 +8844,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8455,7 +8860,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8471,7 +8876,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8487,7 +8892,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8503,7 +8908,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8519,7 +8924,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8535,7 +8940,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8551,7 +8956,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8567,7 +8972,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8583,7 +8988,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8599,7 +9004,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8615,7 +9020,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8631,7 +9036,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8647,7 +9052,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8663,7 +9068,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8679,7 +9084,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8695,7 +9100,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8711,7 +9116,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8727,7 +9132,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8743,7 +9148,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8759,7 +9164,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8775,7 +9180,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8791,7 +9196,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8807,7 +9212,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8823,7 +9228,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8849,7 +9254,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -9051,7 +9456,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.LayoutInflater.Factory2" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.LayoutInflater.Factory2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9093,7 +9498,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.Window.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.Window.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9404,10 +9809,10 @@
             
             
             
-            void</nobr>
+            boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onWindowAttributesChanged</span>(WindowManager.LayoutParams arg0)</nobr>
+        <span class="sympad">onSearchRequested</span>(SearchEvent arg0)</nobr>
         
   </td></tr>
 
@@ -9423,12 +9828,44 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowAttributesChanged</span>(WindowManager.LayoutParams arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowFocusChanged</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowStartingActionMode</span>(ActionMode.Callback arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
@@ -9439,7 +9876,7 @@
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onWindowStartingActionMode</span>(ActionMode.Callback arg0)</nobr>
+        <span class="sympad">onWindowStartingActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
         
   </td></tr>
 
@@ -9455,7 +9892,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9545,7 +9982,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View.OnCreateContextMenuListener" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View.OnCreateContextMenuListener-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9587,7 +10024,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9629,7 +10066,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.LayoutInflater.Factory" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.LayoutInflater.Factory-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9671,7 +10108,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/activity/WearableActivity.html b/docs/html/reference/android/support/wearable/activity/WearableActivity.html
index 6f70f74..777e2ca 100644
--- a/docs/html/reference/android/support/wearable/activity/WearableActivity.html
+++ b/docs/html/reference/android/support/wearable/activity/WearableActivity.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -899,7 +904,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Activity" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.app.Activity-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.app.Activity
 <div id="inherited-constants-android.app.Activity">
@@ -1023,7 +1028,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.Context" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.Context-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.content.Context
 <div id="inherited-constants-android.content.Context">
@@ -1265,7 +1270,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
-        <td class="jd-linkcol">CLIPBOARD_SERVICE</td>
+        <td class="jd-linkcol">CARRIER_CONFIG_SERVICE</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1277,6 +1282,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">CLIPBOARD_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
         <td class="jd-linkcol">CONNECTIVITY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1287,7 +1304,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">CONSUMER_IR_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1299,7 +1316,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_IGNORE_SECURITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1311,7 +1328,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_INCLUDE_CODE</td>
         <td class="jd-descrcol" width="100%">
@@ -1323,7 +1340,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_RESTRICTED</td>
         <td class="jd-descrcol" width="100%">
@@ -1335,7 +1352,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DEVICE_POLICY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1347,7 +1364,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DISPLAY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1359,7 +1376,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DOWNLOAD_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1371,7 +1388,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DROPBOX_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1383,6 +1400,18 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">FINGERPRINT_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">INPUT_METHOD_SERVICE</td>
@@ -1504,6 +1533,18 @@
     
     
     <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">MIDI_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_APPEND</td>
         <td class="jd-descrcol" width="100%">
@@ -1515,7 +1556,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_ENABLE_WRITE_AHEAD_LOGGING</td>
         <td class="jd-descrcol" width="100%">
@@ -1527,7 +1568,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_MULTI_PROCESS</td>
         <td class="jd-descrcol" width="100%">
@@ -1539,7 +1580,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_PRIVATE</td>
         <td class="jd-descrcol" width="100%">
@@ -1551,7 +1592,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_WORLD_READABLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1563,7 +1604,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_WORLD_WRITEABLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1575,6 +1616,18 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">NETWORK_STATS_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">NFC_SERVICE</td>
@@ -1873,7 +1926,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From interface
 android.content.ComponentCallbacks2
 <div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -1998,7 +2051,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.app.Activity" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.app.Activity-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.app.Activity
 <div id="inherited-fields-android.app.Activity">
@@ -2325,7 +2378,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Activity" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.app.Activity-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3017,6 +3070,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            final
+            
+            
+            SearchEvent</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSearchEvent</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             
             
             
@@ -3029,7 +3098,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3045,7 +3114,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3061,7 +3130,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3077,6 +3146,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            VoiceInteractor</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getVoiceInteractor</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -3257,6 +3342,38 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isVoiceInteraction</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isVoiceInteractionRoot</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -4175,7 +4292,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onProvideAssistData</span>(Bundle arg0)</nobr>
+        <span class="sympad">onProvideAssistContent</span>(AssistContent arg0)</nobr>
         
   </td></tr>
 
@@ -4191,13 +4308,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideAssistData</span>(Bundle arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Uri</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideReferrer</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onRequestPermissionsResult</span>(int arg0, String[] arg1, int[] arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestart</span>()</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4213,7 +4378,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4229,7 +4394,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4245,7 +4410,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4261,7 +4426,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4277,7 +4442,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4293,7 +4458,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4309,6 +4474,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onSearchRequested</span>(SearchEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4335,7 +4516,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onStop</span>()</nobr>
+        <span class="sympad">onStateNotSaved</span>()</nobr>
         
   </td></tr>
 
@@ -4351,13 +4532,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onStop</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTitleChanged</span>(CharSequence arg0, int arg1)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4373,7 +4570,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4389,7 +4586,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4405,7 +4602,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4421,7 +4618,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4437,7 +4634,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4453,7 +4650,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4469,7 +4666,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4485,6 +4682,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowStartingActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4649,6 +4862,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestPermissions</span>(String[] arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             
             
             
@@ -4661,7 +4890,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4677,7 +4906,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4693,7 +4922,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4709,7 +4938,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4725,7 +4954,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4741,7 +4970,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4757,7 +4986,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4773,7 +5002,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4789,7 +5018,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4805,7 +5034,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4821,7 +5050,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4837,7 +5066,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4853,7 +5082,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4869,7 +5098,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4885,7 +5114,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4901,7 +5130,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4917,7 +5146,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4933,7 +5162,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4949,7 +5178,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4965,7 +5194,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4981,7 +5210,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4997,7 +5226,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5013,7 +5242,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5029,7 +5258,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5045,7 +5274,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5061,7 +5290,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5077,7 +5306,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5093,7 +5322,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5109,7 +5338,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5125,7 +5354,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5141,7 +5370,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5157,7 +5386,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5173,6 +5402,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">shouldShowRequestPermissionRationale</span>(String arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5193,13 +5438,13 @@
         <td class="jd-typecol"><nobr>
             
             
-            final
+            
             
             
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">showDialog</span>(int arg0, Bundle arg1)</nobr>
+        <span class="sympad">showAssist</span>(Bundle arg0)</nobr>
         
   </td></tr>
 
@@ -5212,6 +5457,22 @@
             final
             
             
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">showDialog</span>(int arg0, Bundle arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -5221,6 +5482,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">showLockTaskEscapeMessage</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5244,6 +5521,22 @@
             
             
             
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -5253,7 +5546,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5269,7 +5562,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5285,7 +5578,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5301,7 +5594,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5317,7 +5610,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5333,7 +5626,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5349,7 +5642,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5365,7 +5658,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5381,7 +5674,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5397,7 +5690,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5413,7 +5706,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5429,7 +5722,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5445,7 +5738,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5461,7 +5754,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5477,7 +5770,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5493,7 +5786,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5509,7 +5802,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5525,7 +5818,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5541,7 +5834,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5557,7 +5850,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5573,7 +5866,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5589,7 +5882,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5605,7 +5898,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5621,7 +5914,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5637,7 +5930,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5653,7 +5946,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5669,7 +5962,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5685,7 +5978,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5711,7 +6004,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ContextThemeWrapper" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ContextThemeWrapper-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -5849,7 +6142,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ContextWrapper" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ContextWrapper-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -5987,7 +6280,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
+        <span class="sympad">checkSelfPermission</span>(String arg0)</nobr>
         
   </td></tr>
 
@@ -6003,7 +6296,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
         
   </td></tr>
 
@@ -6016,6 +6309,22 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -6025,7 +6334,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6041,7 +6350,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6057,7 +6366,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6073,7 +6382,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6089,7 +6398,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6105,7 +6414,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6121,7 +6430,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6137,7 +6446,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6153,7 +6462,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6169,7 +6478,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6185,7 +6494,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6201,7 +6510,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6217,7 +6526,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6233,7 +6542,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6249,7 +6558,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6265,7 +6574,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6281,7 +6590,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6297,7 +6606,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6313,7 +6622,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6329,7 +6638,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6345,7 +6654,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6361,7 +6670,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6377,7 +6686,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6393,7 +6702,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6409,7 +6718,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6425,7 +6734,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6441,7 +6750,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6457,7 +6766,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6473,7 +6782,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6489,7 +6798,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6505,7 +6814,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6521,7 +6830,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6537,7 +6846,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6553,7 +6862,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6569,7 +6878,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6585,7 +6894,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6601,7 +6910,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6617,7 +6926,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6633,7 +6942,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6649,7 +6958,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6665,7 +6974,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6681,7 +6990,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6697,6 +7006,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemServiceName</span>(Class&lt;?&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7363,7 +7688,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.Context" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.Context-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -7485,7 +7810,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
+        <span class="sympad">checkSelfPermission</span>(String arg0)</nobr>
         
   </td></tr>
 
@@ -7501,7 +7826,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
         
   </td></tr>
 
@@ -7514,6 +7839,22 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -7523,7 +7864,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7539,7 +7880,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7555,7 +7896,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7571,7 +7912,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7587,7 +7928,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7603,7 +7944,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7619,7 +7960,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7635,7 +7976,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7651,7 +7992,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7667,7 +8008,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7683,7 +8024,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7699,7 +8040,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7715,7 +8056,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7731,7 +8072,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7747,7 +8088,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7763,7 +8104,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7779,7 +8120,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7795,7 +8136,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7811,7 +8152,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7827,7 +8168,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7843,8 +8184,40 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getColorStateList</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
             abstract
             
             
@@ -7859,7 +8232,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7875,7 +8248,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7891,7 +8264,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7907,7 +8280,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7923,7 +8296,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7939,7 +8312,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7955,7 +8328,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7971,7 +8344,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -7987,7 +8360,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8003,7 +8376,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8019,7 +8392,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8035,7 +8408,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8051,7 +8424,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8067,7 +8440,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8083,7 +8456,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8099,7 +8472,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8115,7 +8488,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8131,7 +8504,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8147,7 +8520,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8163,7 +8536,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8179,7 +8552,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8195,7 +8568,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8211,6 +8584,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            &lt;T&gt;
+            T</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemService</span>(Class&lt;T&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
@@ -8229,6 +8618,22 @@
 	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemServiceName</span>(Class&lt;?&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
             
             
             final
@@ -8243,7 +8648,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8259,7 +8664,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8275,7 +8680,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8291,7 +8696,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8307,7 +8712,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8323,7 +8728,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8339,7 +8744,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8355,7 +8760,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8371,7 +8776,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8387,7 +8792,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8403,7 +8808,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8419,7 +8824,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8435,7 +8840,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8451,7 +8856,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8467,7 +8872,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8483,7 +8888,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8499,7 +8904,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8515,7 +8920,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8531,7 +8936,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8547,7 +8952,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8563,7 +8968,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8579,7 +8984,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8595,7 +9000,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8611,7 +9016,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8627,7 +9032,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8643,7 +9048,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8659,7 +9064,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8675,7 +9080,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8691,7 +9096,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8707,7 +9112,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8723,7 +9128,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8739,7 +9144,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8755,7 +9160,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8771,7 +9176,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8787,7 +9192,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8803,7 +9208,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8819,7 +9224,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8835,7 +9240,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8851,7 +9256,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8867,7 +9272,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8883,7 +9288,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8899,7 +9304,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8915,7 +9320,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8931,7 +9336,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8947,7 +9352,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -8963,7 +9368,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8979,7 +9384,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -9005,7 +9410,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -9207,7 +9612,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.LayoutInflater.Factory2" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.LayoutInflater.Factory2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9249,7 +9654,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.Window.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.Window.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9560,10 +9965,10 @@
             
             
             
-            void</nobr>
+            boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onWindowAttributesChanged</span>(WindowManager.LayoutParams arg0)</nobr>
+        <span class="sympad">onSearchRequested</span>(SearchEvent arg0)</nobr>
         
   </td></tr>
 
@@ -9579,12 +9984,44 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowAttributesChanged</span>(WindowManager.LayoutParams arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowFocusChanged</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowStartingActionMode</span>(ActionMode.Callback arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
@@ -9595,7 +10032,7 @@
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onWindowStartingActionMode</span>(ActionMode.Callback arg0)</nobr>
+        <span class="sympad">onWindowStartingActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
         
   </td></tr>
 
@@ -9611,7 +10048,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9701,7 +10138,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View.OnCreateContextMenuListener" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View.OnCreateContextMenuListener-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9743,7 +10180,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9785,7 +10222,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.LayoutInflater.Factory" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.LayoutInflater.Factory-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -9827,7 +10264,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/activity/package-summary.html b/docs/html/reference/android/support/wearable/activity/package-summary.html
index e3a691a..edcac1d 100644
--- a/docs/html/reference/android/support/wearable/activity/package-summary.html
+++ b/docs/html/reference/android/support/wearable/activity/package-summary.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
diff --git a/docs/html/reference/android/support/wearable/companion/WatchFaceCompanion.html b/docs/html/reference/android/support/wearable/companion/WatchFaceCompanion.html
index 8174777..6abe04a 100644
--- a/docs/html/reference/android/support/wearable/companion/WatchFaceCompanion.html
+++ b/docs/html/reference/android/support/wearable/companion/WatchFaceCompanion.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -631,7 +636,7 @@
 <h2>Class Overview</h2>
 <p itemprop="articleBody">Constants for use by watch face configuration activities.
 
- <p>To register a configuration activity for a watch face, add a <code>&lt;meta-data&gt;</code>
+ <p>To register a configuration activity for a watch face, add a <code><meta-data></code>
  entry to the watch face component in its Android Manifest file with an intent action to be
  fired to start the activity. The following meta-data will register the
  <code>com.example.watchface.CONFIG_DIGITAL</code> action to be started when configuring a watch
@@ -770,7 +775,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/companion/package-summary.html b/docs/html/reference/android/support/wearable/companion/package-summary.html
index 7404dcd..0bd0819 100644
--- a/docs/html/reference/android/support/wearable/companion/package-summary.html
+++ b/docs/html/reference/android/support/wearable/companion/package-summary.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
diff --git a/docs/html/reference/android/support/wearable/input/RemoteInputConstants.html b/docs/html/reference/android/support/wearable/input/RemoteInputConstants.html
index 35fe2d5..99b3248 100644
--- a/docs/html/reference/android/support/wearable/input/RemoteInputConstants.html
+++ b/docs/html/reference/android/support/wearable/input/RemoteInputConstants.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -762,7 +767,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/input/RemoteInputIntent.html b/docs/html/reference/android/support/wearable/input/RemoteInputIntent.html
index 34ae2d5..efd64aa 100644
--- a/docs/html/reference/android/support/wearable/input/RemoteInputIntent.html
+++ b/docs/html/reference/android/support/wearable/input/RemoteInputIntent.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -851,7 +856,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/input/package-summary.html b/docs/html/reference/android/support/wearable/input/package-summary.html
index 314838d..997b5eb 100644
--- a/docs/html/reference/android/support/wearable/input/package-summary.html
+++ b/docs/html/reference/android/support/wearable/input/package-summary.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
diff --git a/docs/html/reference/android/support/wearable/media/MediaControlConstants.html b/docs/html/reference/android/support/wearable/media/MediaControlConstants.html
index 30ddc45..718bc84 100644
--- a/docs/html/reference/android/support/wearable/media/MediaControlConstants.html
+++ b/docs/html/reference/android/support/wearable/media/MediaControlConstants.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -818,7 +823,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1077,8 +1082,9 @@
 
  <p>For example, the following can be added to the application's manifest to use a specific
  theme for the media controls:
- <pre><code><meta-data android:name="com.google.android.wearable.media.theme"
-         android:resource="@style/MediaTheme"/></code></pre>
+ <pre class="prettyprint">
+ &lt;meta-data android:name="com.google.android.wearable.media.theme"
+         android:resource="@style/MediaTheme"/&gt;</pre>
  <p>The color used will be <code>colorPrimaryDark</code> for the given theme.
 
  <p>If this extra is not present, or has a value other than true, the color of the media
diff --git a/docs/html/reference/android/support/wearable/media/package-summary.html b/docs/html/reference/android/support/wearable/media/package-summary.html
index 72dce84..3970fdd 100644
--- a/docs/html/reference/android/support/wearable/media/package-summary.html
+++ b/docs/html/reference/android/support/wearable/media/package-summary.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
diff --git a/docs/html/reference/android/support/wearable/package-summary.html b/docs/html/reference/android/support/wearable/package-summary.html
index a4ef376..6001af3 100644
--- a/docs/html/reference/android/support/wearable/package-summary.html
+++ b/docs/html/reference/android/support/wearable/package-summary.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -476,10 +481,12 @@
         <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.animator.html">R.animator</a></li>
         <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.array.html">R.array</a></li>
         <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.attr.html">R.attr</a></li>
+        <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></li>
         <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></li>
         <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></li>
         <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></li>
         <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></li>
+        <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></li>
         <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></li>
         <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.layout.html">R.layout</a></li>
         <li class="api apilevel-"><a href="../../../../reference/android/support/wearable/R.string.html">R.string</a></li>
@@ -630,6 +637,17 @@
       
     
       <tr class=" api apilevel-" >
+        <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.bool.html">R.bool</a></td>
+        <td class="jd-descrcol" width="100%">
+          &nbsp;
+          
+    
+
+        </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.color.html">R.color</a></td>
         <td class="jd-descrcol" width="100%">
           &nbsp;
@@ -640,7 +658,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.dimen.html">R.dimen</a></td>
         <td class="jd-descrcol" width="100%">
           &nbsp;
@@ -651,7 +669,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.drawable.html">R.drawable</a></td>
         <td class="jd-descrcol" width="100%">
           &nbsp;
@@ -662,7 +680,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.id.html">R.id</a></td>
         <td class="jd-descrcol" width="100%">
           &nbsp;
@@ -673,6 +691,17 @@
       </tr>
       
     
+      <tr class="alt-color api apilevel-" >
+        <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.integer.html">R.integer</a></td>
+        <td class="jd-descrcol" width="100%">
+          &nbsp;
+          
+    
+
+        </td>
+      </tr>
+      
+    
       <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../reference/android/support/wearable/R.interpolator.html">R.interpolator</a></td>
         <td class="jd-descrcol" width="100%">
diff --git a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Attendees.html b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Attendees.html
index 794973f..d36dec3 100644
--- a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Attendees.html
+++ b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Attendees.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -728,7 +733,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Instances.html b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Instances.html
index 77c3c67..8afd1f1 100644
--- a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Instances.html
+++ b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Instances.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -728,7 +733,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Reminders.html b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Reminders.html
index 9dfd7f7..2ed5880 100644
--- a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Reminders.html
+++ b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Reminders.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -728,7 +733,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.html b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.html
index 588ae71..b0abda3 100644
--- a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.html
+++ b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -843,7 +848,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/provider/package-summary.html b/docs/html/reference/android/support/wearable/provider/package-summary.html
index bb4c581..f6849e1 100644
--- a/docs/html/reference/android/support/wearable/provider/package-summary.html
+++ b/docs/html/reference/android/support/wearable/provider/package-summary.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
diff --git a/docs/html/reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html b/docs/html/reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html
new file mode 100644
index 0000000..166c846
--- /dev/null
+++ b/docs/html/reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html
@@ -0,0 +1,1072 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.ico" />
+<title>ActionChooserView.ActionChooserListener | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+<body class="gc-documentation 
+  develop reference" itemscope itemtype="http://schema.org/Article">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../../assets/images/android_logo.png"
+              srcset="../../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+          
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">ActionChooserView.ActionChooserListener</a></li>
+        </ul>
+
+        
+        
+        
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+        
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+  
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../../assets/images/android_logo.png"
+               srcset="../../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
+          </li>
+          
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+  
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+                
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/activity/package-summary.html">android.support.wearable.activity</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/companion/package-summary.html">android.support.wearable.companion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/input/package-summary.html">android.support.wearable.input</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/media/package-summary.html">android.support.wearable.media</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/provider/package-summary.html">android.support.wearable.provider</a></li>
+    <li class="selected api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/view/package-summary.html">android.support.wearable.view</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/watchface/package-summary.html">android.support.wearable.watchface</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+              
+              
+    <li><h2>Interfaces</h2>
+      <ul>
+          <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html">GridViewPager.OnAdapterChangeListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html">GridViewPager.OnPageChangeListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.OnLayoutInflatedListener.html">WatchViewStub.OnLayoutInflatedListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ClickListener.html">WearableListView.ClickListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCenterProximityListener.html">WearableListView.OnCenterProximityListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html">WearableListView.OnCentralPositionChangedListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a></li>
+      </ul>
+    </li>
+              
+    <li><h2>Classes</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html">BoxInsetLayout.LayoutParams</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CardFragment.html">CardFragment</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CardFrame.html">CardFrame</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html">CardScrollView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html">CircledImageView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CircularButton.html">CircularButton</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CrossfadeDrawable.html">CrossfadeDrawable</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.html">DelayedConfirmationView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html">DismissOverlayView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DotsPageIndicator.html">DotsPageIndicator</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/FragmentGridPagerAdapter.html">FragmentGridPagerAdapter</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPagerAdapter.html">GridPagerAdapter</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.html">GridViewPager</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.LayoutParams.html">GridViewPager.LayoutParams</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html">ProgressSpinner</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/SimpleAnimatorListener.html">SimpleAnimatorListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html">WatchViewStub</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableFrameLayout.html">WearableFrameLayout</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html">WearableFrameLayout.LayoutParams</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html">WearableListView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.Adapter.html">WearableListView.Adapter</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></li>
+      </ul>
+    </li>
+              
+              
+              
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+     
+
+
+
+<div class="col-12"  id="doc-col">
+
+<div id="api-info-block">
+
+
+
+
+<div class="sum-details-links">
+
+</div><!-- end sum-details-links -->
+<div class="api-level">
+  
+  
+  
+
+</div>
+</div><!-- end api-info-block -->
+
+
+<!-- ======== START OF CLASS DATA ======== -->
+
+<div id="jd-header">
+    public
+    static 
+     
+    
+    interface
+<h1 itemprop="name">ActionChooserView.ActionChooserListener</h1>
+
+
+
+  
+  
+  
+
+
+    
+
+
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+<table class="jd-inheritance-table">
+
+
+    <tr>
+         	
+        <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.view.ActionChooserView.ActionChooserListener</td>
+    </tr>
+    
+
+</table>
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Class Overview</h2>
+<p itemprop="articleBody">Interface for receiving callbacks about options chosen from an <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></code>.
+</p>
+
+
+
+
+
+</div><!-- jd-descr -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Summary</h2>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
+
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html#onOptionChosen(int)">onOptionChosen</a></span>(int option)</nobr>
+        
+        <div class="jd-descrdiv">
+          Called when an option has been chosen.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html#onOptionProgress(float)">onOptionProgress</a></span>(float percent)</nobr>
+        
+        <div class="jd-descrdiv">
+          Called to update the percentage an item has been selected
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+
+
+
+</div><!-- jd-descr (summary) -->
+
+<!-- Details -->
+
+
+
+
+
+
+
+
+<!-- XML Attributes -->
+
+
+<!-- Enum Values -->
+
+
+<!-- Constants -->
+
+
+<!-- Fields -->
+
+
+<!-- Public ctors -->
+
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<!-- Protected ctors -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+<!-- Public methdos -->
+
+<h2>Public Methods</h2>
+
+
+
+<A NAME="onOptionChosen(int)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+        abstract 
+         
+        void
+      </span>
+      <span class="sympad">onOptionChosen</span>
+      <span class="normal">(int option)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Called when an option has been chosen.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>option</td>
+          <td>the option chosen. see <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#OPTION_START">OPTION_START</a></code> and <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#OPTION_END">OPTION_END</a></code>.
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="onOptionProgress(float)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+        abstract 
+         
+        void
+      </span>
+      <span class="sympad">onOptionProgress</span>
+      <span class="normal">(float percent)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Called to update the percentage an item has been selected</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>percent</td>
+          <td>the progress of an item being selected, ranging from 0 to 1.
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+
+
+
+<!-- ========= END OF CLASS DATA ========= -->
+<A NAME="navbar_top"></A>
+</div> <!-- jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+    
+      <p class="dac-footer-copyright">
+        
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+        
+    Android Wearable Support&nbsp;r &mdash; 
+<script src="../../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+    
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- end doc-content -->
+
+</div> <!-- end .cols --> 
+</div> <!-- end body-content --> 
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/wearable/view/ActionChooserView.html b/docs/html/reference/android/support/wearable/view/ActionChooserView.html
new file mode 100644
index 0000000..7aa900f
--- /dev/null
+++ b/docs/html/reference/android/support/wearable/view/ActionChooserView.html
@@ -0,0 +1,12391 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.ico" />
+<title>ActionChooserView | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+<body class="gc-documentation 
+  develop reference" itemscope itemtype="http://schema.org/Article">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../../assets/images/android_logo.png"
+              srcset="../../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+          
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">ActionChooserView</a></li>
+        </ul>
+
+        
+        
+        
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+        
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+  
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../../assets/images/android_logo.png"
+               srcset="../../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
+          </li>
+          
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+  
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+                
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/activity/package-summary.html">android.support.wearable.activity</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/companion/package-summary.html">android.support.wearable.companion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/input/package-summary.html">android.support.wearable.input</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/media/package-summary.html">android.support.wearable.media</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/provider/package-summary.html">android.support.wearable.provider</a></li>
+    <li class="selected api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/view/package-summary.html">android.support.wearable.view</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/watchface/package-summary.html">android.support.wearable.watchface</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+              
+              
+    <li><h2>Interfaces</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html">GridViewPager.OnAdapterChangeListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html">GridViewPager.OnPageChangeListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.OnLayoutInflatedListener.html">WatchViewStub.OnLayoutInflatedListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ClickListener.html">WearableListView.ClickListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCenterProximityListener.html">WearableListView.OnCenterProximityListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html">WearableListView.OnCentralPositionChangedListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a></li>
+      </ul>
+    </li>
+              
+    <li><h2>Classes</h2>
+      <ul>
+          <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html">BoxInsetLayout.LayoutParams</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CardFragment.html">CardFragment</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CardFrame.html">CardFrame</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html">CardScrollView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html">CircledImageView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CircularButton.html">CircularButton</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CrossfadeDrawable.html">CrossfadeDrawable</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.html">DelayedConfirmationView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html">DismissOverlayView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DotsPageIndicator.html">DotsPageIndicator</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/FragmentGridPagerAdapter.html">FragmentGridPagerAdapter</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPagerAdapter.html">GridPagerAdapter</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.html">GridViewPager</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.LayoutParams.html">GridViewPager.LayoutParams</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html">ProgressSpinner</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/SimpleAnimatorListener.html">SimpleAnimatorListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html">WatchViewStub</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableFrameLayout.html">WearableFrameLayout</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html">WearableFrameLayout.LayoutParams</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html">WearableListView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.Adapter.html">WearableListView.Adapter</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></li>
+      </ul>
+    </li>
+              
+              
+              
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+     
+
+
+
+<div class="col-12"  id="doc-col">
+
+<div id="api-info-block">
+
+
+
+  
+   
+  
+  
+   
+  
+  
+   
+  
+  
+
+  
+   
+  
+  
+  
+  
+
+  
+   
+  
+  
+  
+  
+
+  
+   
+  
+  
+  
+  
+
+  
+   
+  
+  
+  
+  
+
+
+<div class="sum-details-links">
+
+Summary:
+
+  <a href="#nestedclasses">Nested Classes</a>
+  
+
+
+
+
+
+  &#124; <a href="#constants">Constants</a>
+  
+
+
+  &#124; <a href="#inhconstants">Inherited Constants</a>
+  
+
+
+
+  &#124; <a href="#inhfields">Inherited Fields</a>
+  
+
+
+  &#124; <a href="#pubctors">Ctors</a>
+  
+
+
+
+  &#124; <a href="#pubmethods">Methods</a>
+  
+
+
+  &#124; <a href="#promethods">Protected Methods</a>
+  
+
+
+  &#124; <a href="#inhmethods">Inherited Methods</a>
+
+&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
+
+</div><!-- end sum-details-links -->
+<div class="api-level">
+  
+  
+  
+
+</div>
+</div><!-- end api-info-block -->
+
+
+<!-- ======== START OF CLASS DATA ======== -->
+
+<div id="jd-header">
+    public
+     
+     
+    
+    class
+<h1 itemprop="name">ActionChooserView</h1>
+
+
+
+  
+  
+  
+
+  
+    extends View<br/>
+  
+  
+  
+
+  
+  
+  
+
+
+    
+
+
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+<table class="jd-inheritance-table">
+
+
+    <tr>
+         	
+        <td colspan="3" class="jd-inheritance-class-cell">java.lang.Object</td>
+    </tr>
+    
+
+    <tr>
+        
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+         	
+        <td colspan="2" class="jd-inheritance-class-cell">android.view.View</td>
+    </tr>
+    
+
+    <tr>
+        
+            <td class="jd-inheritance-space">&nbsp;</td>
+        
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+         	
+        <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.view.ActionChooserView</td>
+    </tr>
+    
+
+</table>
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Class Overview</h2>
+<p itemprop="articleBody">The action chooser view allows the user to select from two options that are presented in the
+ sides of the view. The view background is transparent so that it may be populated by the
+ containing parent.
+ <p>
+ You can add this view to your layout as follows:
+ <pre>
+     &lt;android.support.wearable.view.ActionChooserView
+          android:id="@+id/actions"
+          android:layout_width="match_parent"
+          android:layout_height="match_parent" /&gt;
+ </pre>
+ <p>
+ To set the properties of either option, you can call <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#setOption(int, android.graphics.drawable.Drawable, int)">setOption(int, Drawable, int)</a></code>,
+ specifying <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#OPTION_START">OPTION_START</a></code> for the option at the start and <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#OPTION_END">OPTION_END</a></code> for the
+ option at the end:
+ <p>
+ mChooserView.setOption(ActionChooserView.OPTION_START, acceptIcon, getResources().getColor(
+       R.color.option_color));
+</p>
+
+
+
+
+
+</div><!-- jd-descr -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Summary</h2>
+
+
+
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<table id="nestedclasses" class="jd-sumtable"><tr><th colspan="12">Nested Classes</th></tr>
+
+
+  
+    <tr class="alt-color api apilevel-" >
+      <td class="jd-typecol"><nobr>
+        
+         
+         
+        
+        interface</nobr></td>
+      <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></td>
+      <td class="jd-descrcol" width="100%">
+        Interface for receiving callbacks about options chosen from an <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></code>.&nbsp;
+        
+    
+
+      </td>
+    </tr>
+    
+    
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<table id="constants" class="jd-sumtable"><tr><th colspan="12">Constants</th></tr>
+
+
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#OPTION_END">OPTION_END</a></td>
+        <td class="jd-descrcol" width="100%">
+          The option that appears at the end of the chooser.
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#OPTION_START">OPTION_START</a></td>
+        <td class="jd-descrcol" width="100%">
+          The option that appears at the start of the chooser.
+          
+    
+
+        </td>
+    </tr>
+    
+    
+
+</table>
+
+
+
+
+
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<table id="inhconstants" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Constants</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
+          ><img id="inherited-constants-android.view.View-trigger"
+          src="../../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>From class
+android.view.View
+<div id="inherited-constants-android.view.View">
+  <div id="inherited-constants-android.view.View-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-constants-android.view.View-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_ASSERTIVE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_NONE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_POLITE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">DRAWING_CACHE_QUALITY_AUTO</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">DRAWING_CACHE_QUALITY_HIGH</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">DRAWING_CACHE_QUALITY_LOW</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FIND_VIEWS_WITH_CONTENT_DESCRIPTION</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FIND_VIEWS_WITH_TEXT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUSABLES_ALL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUSABLES_TOUCH_MODE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_BACKWARD</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_DOWN</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_FORWARD</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_UP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">GONE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">HAPTIC_FEEDBACK_ENABLED</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_AUTO</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_YES</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">INVISIBLE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">KEEP_SCREEN_ON</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYER_TYPE_HARDWARE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYER_TYPE_NONE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYER_TYPE_SOFTWARE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYOUT_DIRECTION_INHERIT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYOUT_DIRECTION_LOCALE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYOUT_DIRECTION_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYOUT_DIRECTION_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">MEASURED_HEIGHT_STATE_SHIFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">MEASURED_SIZE_MASK</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">MEASURED_STATE_MASK</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">MEASURED_STATE_TOO_SMALL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">NO_ID</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">OVER_SCROLL_ALWAYS</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">OVER_SCROLL_IF_CONTENT_SCROLLS</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">OVER_SCROLL_NEVER</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCREEN_STATE_OFF</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCREEN_STATE_ON</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBARS_INSIDE_INSET</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBARS_INSIDE_OVERLAY</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBARS_OUTSIDE_INSET</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBARS_OUTSIDE_OVERLAY</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBAR_POSITION_DEFAULT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBAR_POSITION_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBAR_POSITION_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_AXIS_HORIZONTAL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_AXIS_NONE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_AXIS_VERTICAL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">STATUS_BAR_HIDDEN</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">STATUS_BAR_VISIBLE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_FULLSCREEN</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_HIDE_NAVIGATION</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE_STICKY</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_STABLE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">VIEW_LOG_TAG</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">VISIBLE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+
+
+
+
+
+
+
+</table>
+
+
+
+
+
+
+
+<!-- =========== FIELD SUMMARY =========== -->
+<table id="inhfields" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Fields</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
+          ><img id="inherited-fields-android.view.View-trigger"
+          src="../../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>From class
+android.view.View
+<div id="inherited-fields-android.view.View">
+  <div id="inherited-fields-android.view.View-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-fields-android.view.View-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">ALPHA</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">EMPTY_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">FOCUSED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">ROTATION</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">ROTATION_X</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">ROTATION_Y</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">SCALE_X</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">SCALE_Y</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">TRANSLATION_X</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">TRANSLATION_Y</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">TRANSLATION_Z</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">X</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">Y</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">Z</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+
+
+
+
+
+
+
+</table>
+
+
+
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
+
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#ActionChooserView(android.content.Context)">ActionChooserView</a></span>(Context context)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#ActionChooserView(android.content.Context, android.util.AttributeSet)">ActionChooserView</a></span>(Context context, AttributeSet attrs)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#ActionChooserView(android.content.Context, android.util.AttributeSet, int)">ActionChooserView</a></span>(Context context, AttributeSet attrs, int defStyleAttr)</nobr>
+        
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
+
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#addListener(android.support.wearable.view.ActionChooserView.ActionChooserListener)">addListener</a></span>(<a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a> listener)</nobr>
+        
+        <div class="jd-descrdiv">
+          Adds a listener to be notified when an option is chosen.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#canScrollHorizontally(int)">canScrollHorizontally</a></span>(int direction)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#onTouchEvent(android.view.MotionEvent)">onTouchEvent</a></span>(MotionEvent event)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#performSelectOption(int)">performSelectOption</a></span>(int option)</nobr>
+        
+        <div class="jd-descrdiv">
+          Selects the provided option, animating the option's icon to the center of the view and
+ triggering the appropriate callbacks.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#removeListener(android.support.wearable.view.ActionChooserView.ActionChooserListener)">removeListener</a></span>(<a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a> listener)</nobr>
+        
+        <div class="jd-descrdiv">
+          Removes a listener from receiving any future callbacks when an option is chosen.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#setEnabled(boolean)">setEnabled</a></span>(boolean enabled)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#setOption(int, android.graphics.drawable.Drawable, int)">setOption</a></span>(int option, Drawable drawable, int color)</nobr>
+        
+        <div class="jd-descrdiv">
+          Sets the characteristics of one of the predefined options, such as the option circle's
+ color and the <code><a href="../../../../../reference/android/graphics/drawable/Drawable.html">Drawable</a></code> to be drawn in the middle.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="promethods" class="jd-sumtable"><tr><th colspan="12">Protected Methods</th></tr>
+
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#onAttachedToWindow()">onAttachedToWindow</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#onDetachedFromWindow()">onDetachedFromWindow</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#onDraw(android.graphics.Canvas)">onDraw</a></span>(Canvas canvas)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#onLayout(boolean, int, int, int, int)">onLayout</a></span>(boolean changed, int left, int top, int right, int bottom)</nobr>
+        
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="inhmethods" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Methods</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.view.View-trigger"
+          src="../../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  android.view.View
+
+<div id="inherited-methods-android.view.View">
+  <div id="inherited-methods-android.view.View-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.view.View-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewPropertyAnimator</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">animate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">announceForAccessibility</span>(CharSequence arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">awakenScrollBars</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">awakenScrollBars</span>(int arg0, boolean arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">awakenScrollBars</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">bringToFront</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">buildDrawingCache</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">buildDrawingCache</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">buildLayer</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">callOnClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">canResolveLayoutDirection</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">canResolveTextAlignment</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">canResolveTextDirection</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">canScrollHorizontally</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">canScrollVertically</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">cancelLongPress</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">cancelPendingInputEvents</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkInputConnectionProxy</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clearAnimation</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clearFocus</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">combineMeasuredStates</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeHorizontalScrollExtent</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeHorizontalScrollOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeHorizontalScrollRange</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeScroll</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeSystemWindowInsets</span>(WindowInsets arg0, Rect arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeVerticalScrollExtent</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeVerticalScrollOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeVerticalScrollRange</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            AccessibilityNodeInfo</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">createAccessibilityNodeInfo</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">destroyDrawingCache</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchGenericMotionEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedFling</span>(float arg0, float arg1, boolean arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedPreFling</span>(float arg0, float arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedPrePerformAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedPreScroll</span>(int arg0, int arg1, int[] arg2, int[] arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedScroll</span>(int arg0, int arg1, int arg2, int arg3, int[] arg4)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">draw</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">drawableStateChanged</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">findFocus</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">findViewById</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">findViewWithTag</span>(Object arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">fitSystemWindows</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">focusSearch</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">forceLayout</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">generateViewId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityLiveRegion</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            AccessibilityNodeProvider</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityNodeProvider</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityTraversalAfter</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityTraversalBefore</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAlpha</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Animation</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAnimation</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            IBinder</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getApplicationWindowToken</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBackground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBackgroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBackgroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBaseline</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBottom</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBottomFadingEdgeStrength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBottomPaddingOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getCameraDistance</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Rect</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipToOutline</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getContentDescription</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            Context</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getContext</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ContextMenu.ContextMenuInfo</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getContextMenuInfo</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDefaultSize</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Display</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDisplay</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int[]</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawableState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Bitmap</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingCache</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Bitmap</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingCache</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingCacheBackgroundColor</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingCacheQuality</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingRect</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            long</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingTime</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getElevation</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getFilterTouchesWhenObscured</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getFitsSystemWindows</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ArrayList&lt;View&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getFocusables</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getFocusedRect</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getGlobalVisibleRect</span>(Rect arg0, Point arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getGlobalVisibleRect</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Handler</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getHandler</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getHitRect</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getHorizontalFadingEdgeLength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getHorizontalScrollbarHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getImportantForAccessibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getKeepScreenOn</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            KeyEvent.DispatcherState</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getKeyDispatcherState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLabelFor</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLayerType</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLayoutDirection</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewGroup.LayoutParams</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLayoutParams</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLeft</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLeftFadingEdgeStrength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLeftPaddingOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLocalVisibleRect</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLocationInWindow</span>(int[] arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLocationOnScreen</span>(int[] arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Matrix</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMatrix</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMeasuredHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMeasuredHeightAndState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMeasuredState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMeasuredWidth</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMeasuredWidthAndState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMinimumHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMinimumWidth</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getNextFocusDownId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getNextFocusForwardId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getNextFocusLeftId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getNextFocusRightId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getNextFocusUpId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            View.OnFocusChangeListener</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getOnFocusChangeListener</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewOutlineProvider</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getOutlineProvider</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getOverScrollMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewOverlay</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getOverlay</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingBottom</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingEnd</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingLeft</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingRight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingStart</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingTop</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            ViewParent</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getParent</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewParent</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getParentForAccessibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPivotX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPivotY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Resources</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getResources</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRightFadingEdgeStrength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRightPaddingOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootView</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRotation</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRotationX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRotationY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScaleX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScaleY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollBarDefaultDelayBeforeFade</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollBarFadeDuration</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollBarSize</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollBarStyle</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSolidColor</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            StateListAnimator</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getStateListAnimator</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSuggestedMinimumHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSuggestedMinimumWidth</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemUiVisibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Object</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTag</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Object</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTag</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTextAlignment</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTextDirection</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTop</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTopFadingEdgeStrength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTopPaddingOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            TouchDelegate</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTouchDelegate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ArrayList&lt;View&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTouchables</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTransitionName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTranslationX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTranslationY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTranslationZ</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getVerticalFadingEdgeLength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getVerticalScrollbarPosition</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getVerticalScrollbarWidth</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewTreeObserver</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getViewTreeObserver</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getVisibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWidth</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowAttachCount</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowId</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowSystemUiVisibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            IBinder</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowToken</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowVisibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowVisibleDisplayFrame</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getZ</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasFocus</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasFocusable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasNestedScrollingParent</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasOnClickListeners</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasOverlappingRendering</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasTransientState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasWindowFocus</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">inflate</span>(Context arg0, int arg1, ViewGroup arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidate</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidateOutline</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isAccessibilityFocused</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isActivated</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isAttachedToWindow</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isDirty</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isDrawingCacheEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isDuplicateParentStateEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isFocusable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isFocusableInTouchMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isFocused</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isHapticFeedbackEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isHardwareAccelerated</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isHorizontalFadingEdgeEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isHorizontalScrollBarEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isHovered</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isImportantForAccessibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isInEditMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isInLayout</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isInTouchMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isLaidOut</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isLayoutRequested</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isLongClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isNestedScrollingEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isOpaque</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isPaddingOffsetRequired</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isPaddingRelative</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isPressed</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isSaveEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isSaveFromParentEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isScrollContainer</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isScrollbarFadingEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isSelected</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isShown</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isSoundEffectsEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isTextAlignmentResolved</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isTextDirectionResolved</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isVerticalFadingEdgeEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isVerticalScrollBarEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">measure</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int[]</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">mergeDrawableStates</span>(int[] arg0, int[] arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">offsetLeftAndRight</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">offsetTopAndBottom</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onAnimationEnd</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onAnimationStart</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onApplyWindowInsets</span>(WindowInsets arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onAttachedToWindow</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onCancelPendingInputEvents</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onCheckIsTextEditor</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onConfigurationChanged</span>(Configuration arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onCreateContextMenu</span>(ContextMenu arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int[]</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            InputConnection</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onCreateInputConnection</span>(EditorInfo arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDetachedFromWindow</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDisplayHint</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDragEvent</span>(DragEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDraw</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawScrollBars</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onFilterTouchEventForSecurity</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onFinishInflate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onFinishTemporaryDetach</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onFocusChanged</span>(boolean arg0, int arg1, Rect arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onGenericMotionEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onHoverChanged</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onHoverEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyPreIme</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyShortcut</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onOverScrolled</span>(int arg0, int arg1, boolean arg2, boolean arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onRtlPropertiesChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Parcelable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onSaveInstanceState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onScreenStateChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onScrollChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onSetAlpha</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onStartTemporaryDetach</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onTouchEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onTrackballEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onVisibilityChanged</span>(View arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowFocusChanged</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowSystemUiVisibilityChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowVisibilityChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">overScrollBy</span>(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, boolean arg8)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performHapticFeedback</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performHapticFeedback</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performLongClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">playSoundEffect</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">post</span>(Runnable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postDelayed</span>(Runnable arg0, long arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidateDelayed</span>(long arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidateDelayed</span>(long arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidateOnAnimation</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidateOnAnimation</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postOnAnimation</span>(Runnable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postOnAnimationDelayed</span>(Runnable arg0, long arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">refreshDrawableState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">removeCallbacks</span>(Runnable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">removeOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">removeOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestApplyInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestFitSystemWindows</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestFocus</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestFocus</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestFocusFromTouch</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestLayout</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestRectangleOnScreen</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestRectangleOnScreen</span>(Rect arg0, boolean arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestUnbufferedDispatch</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">resolveSize</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">resolveSizeAndState</span>(int arg0, int arg1, int arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">restoreHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">saveHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">scrollBy</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">scrollTo</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAccessibilityDelegate</span>(View.AccessibilityDelegate arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAccessibilityLiveRegion</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAccessibilityTraversalAfter</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAccessibilityTraversalBefore</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setActivated</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAlpha</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAnimation</span>(Animation arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackgroundDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackgroundResource</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackgroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackgroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBottom</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setCameraDistance</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setClickable</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setClipToOutline</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setContentDescription</span>(CharSequence arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheQuality</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDuplicateParentStateEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setElevation</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setFadingEdgeLength</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setFilterTouchesWhenObscured</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setFitsSystemWindows</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setFocusable</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setFocusableInTouchMode</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setHasTransientState</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setHorizontalFadingEdgeEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setHorizontalScrollBarEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setHovered</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setImportantForAccessibility</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setKeepScreenOn</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLabelFor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLayerPaint</span>(Paint arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLayerType</span>(int arg0, Paint arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLayoutDirection</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLeft</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLongClickable</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setMeasuredDimension</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setMinimumHeight</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setMinimumWidth</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNestedScrollingEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNextFocusDownId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNextFocusForwardId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNextFocusLeftId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNextFocusRightId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNextFocusUpId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnApplyWindowInsetsListener</span>(View.OnApplyWindowInsetsListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnClickListener</span>(View.OnClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnCreateContextMenuListener</span>(View.OnCreateContextMenuListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnDragListener</span>(View.OnDragListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnFocusChangeListener</span>(View.OnFocusChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnGenericMotionListener</span>(View.OnGenericMotionListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnHoverListener</span>(View.OnHoverListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnKeyListener</span>(View.OnKeyListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnLongClickListener</span>(View.OnLongClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOutlineProvider</span>(ViewOutlineProvider arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOverScrollMode</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setPadding</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setPaddingRelative</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setPivotX</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setPivotY</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setPressed</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setRight</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setRotation</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setRotationX</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setRotationY</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSaveEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSaveFromParentEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScaleX</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScaleY</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollBarDefaultDelayBeforeFade</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollBarFadeDuration</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollBarSize</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollBarStyle</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollContainer</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollX</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollY</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollbarFadingEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSelected</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSoundEffectsEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setStateListAnimator</span>(StateListAnimator arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSystemUiVisibility</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTag</span>(int arg0, Object arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTag</span>(Object arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTextAlignment</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTextDirection</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTop</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTouchDelegate</span>(TouchDelegate arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTransitionName</span>(String arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTranslationX</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTranslationY</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTranslationZ</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setVerticalFadingEdgeEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setVerticalScrollBarEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setVerticalScrollbarPosition</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setVisibility</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setWillNotCacheDrawing</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setWillNotDraw</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setX</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setY</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setZ</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">showContextMenu</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startAnimation</span>(Animation arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startDrag</span>(ClipData arg0, View.DragShadowBuilder arg1, Object arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startNestedScroll</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">stopNestedScroll</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">unscheduleDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">willNotCacheDrawing</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">willNotDraw</span>()</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-java.lang.Object-trigger"
+          src="../../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  java.lang.Object
+
+<div id="inherited-methods-java.lang.Object">
+  <div id="inherited-methods-java.lang.Object-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Object</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clone</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">equals</span>(Object arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">finalize</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            Class&lt;?&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClass</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hashCode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notify</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notifyAll</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
+          src="../../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  android.graphics.drawable.Drawable.Callback
+
+<div id="inherited-methods-android.graphics.drawable.Drawable.Callback">
+  <div id="inherited-methods-android.graphics.drawable.Drawable.Callback-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.graphics.drawable.Drawable.Callback-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
+          src="../../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  android.view.KeyEvent.Callback
+
+<div id="inherited-methods-android.view.KeyEvent.Callback">
+  <div id="inherited-methods-android.view.KeyEvent.Callback-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.view.KeyEvent.Callback-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
+          src="../../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  android.view.accessibility.AccessibilityEventSource
+
+<div id="inherited-methods-android.view.accessibility.AccessibilityEventSource">
+  <div id="inherited-methods-android.view.accessibility.AccessibilityEventSource-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.view.accessibility.AccessibilityEventSource-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+</table>
+
+
+</div><!-- jd-descr (summary) -->
+
+<!-- Details -->
+
+
+
+
+
+
+
+
+<!-- XML Attributes -->
+
+
+<!-- Enum Values -->
+
+
+<!-- Constants -->
+
+
+<!-- ========= ENUM CONSTANTS DETAIL ======== -->
+<h2>Constants</h2>
+
+
+
+
+<A NAME="OPTION_END"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+        final 
+        int
+      </span>
+        OPTION_END
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>The option that appears at the end of the chooser.
+</p></div>
+
+    
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+            
+                2
+                (0x00000002)
+            
+        </span>
+        </div>
+    
+    </div>
+</div>
+
+
+
+<A NAME="OPTION_START"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+        final 
+        int
+      </span>
+        OPTION_START
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>The option that appears at the start of the chooser.
+</p></div>
+
+    
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+            
+                1
+                (0x00000001)
+            
+        </span>
+        </div>
+    
+    </div>
+</div>
+
+
+
+
+<!-- Fields -->
+
+
+<!-- Public ctors -->
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<h2>Public Constructors</h2>
+
+
+
+<A NAME="ActionChooserView(android.content.Context)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        
+      </span>
+      <span class="sympad">ActionChooserView</span>
+      <span class="normal">(Context context)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="ActionChooserView(android.content.Context, android.util.AttributeSet)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        
+      </span>
+      <span class="sympad">ActionChooserView</span>
+      <span class="normal">(Context context, AttributeSet attrs)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="ActionChooserView(android.content.Context, android.util.AttributeSet, int)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        
+      </span>
+      <span class="sympad">ActionChooserView</span>
+      <span class="normal">(Context context, AttributeSet attrs, int defStyleAttr)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<!-- Protected ctors -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+<!-- Public methdos -->
+
+<h2>Public Methods</h2>
+
+
+
+<A NAME="addListener(android.support.wearable.view.ActionChooserView.ActionChooserListener)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">addListener</span>
+      <span class="normal">(<a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a> listener)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Adds a listener to be notified when an option is chosen.
+ see <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html#onOptionChosen(int)">onOptionChosen(int)</a></code></p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>listener</td>
+          <td>The listener to add.
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="canScrollHorizontally(int)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        boolean
+      </span>
+      <span class="sympad">canScrollHorizontally</span>
+      <span class="normal">(int direction)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="onTouchEvent(android.view.MotionEvent)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        boolean
+      </span>
+      <span class="sympad">onTouchEvent</span>
+      <span class="normal">(MotionEvent event)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="performSelectOption(int)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">performSelectOption</span>
+      <span class="normal">(int option)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Selects the provided option, animating the option's icon to the center of the view and
+ triggering the appropriate callbacks.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>option</td>
+          <td>The option to select, either <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#OPTION_START">OPTION_START</a></code> or <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#OPTION_END">OPTION_END</a></code>.
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="removeListener(android.support.wearable.view.ActionChooserView.ActionChooserListener)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">removeListener</span>
+      <span class="normal">(<a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a> listener)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Removes a listener from receiving any future callbacks when an option is chosen.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>listener</td>
+          <td>The listener to remove.
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="setEnabled(boolean)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">setEnabled</span>
+      <span class="normal">(boolean enabled)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="setOption(int, android.graphics.drawable.Drawable, int)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">setOption</span>
+      <span class="normal">(int option, Drawable drawable, int color)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Sets the characteristics of one of the predefined options, such as the option circle's
+ color and the <code><a href="../../../../../reference/android/graphics/drawable/Drawable.html">Drawable</a></code> to be drawn in the middle.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>option</td>
+          <td>The option to set, either <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#OPTION_START">OPTION_START</a></code> or <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html#OPTION_END">OPTION_END</a></code>.</td>
+        </tr>
+        <tr>
+          <th>drawable</td>
+          <td>The drawable to draw in the center of the option circle.</td>
+        </tr>
+        <tr>
+          <th>color</td>
+          <td>The color of the option circle.
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+
+<h2>Protected Methods</h2>
+
+
+
+<A NAME="onAttachedToWindow()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        protected 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">onAttachedToWindow</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="onDetachedFromWindow()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        protected 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">onDetachedFromWindow</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="onDraw(android.graphics.Canvas)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        protected 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">onDraw</span>
+      <span class="normal">(Canvas canvas)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="onLayout(boolean, int, int, int, int)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        protected 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">onLayout</span>
+      <span class="normal">(boolean changed, int left, int top, int right, int bottom)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= END OF CLASS DATA ========= -->
+<A NAME="navbar_top"></A>
+</div> <!-- jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+    
+      <p class="dac-footer-copyright">
+        
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+        
+    Android Wearable Support&nbsp;r &mdash; 
+<script src="../../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+    
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- end doc-content -->
+
+</div> <!-- end .cols --> 
+</div> <!-- end body-content --> 
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/wearable/view/ActionLabel.html b/docs/html/reference/android/support/wearable/view/ActionLabel.html
index f8cb733..cb974e8 100644
--- a/docs/html/reference/android/support/wearable/view/ActionLabel.html
+++ b/docs/html/reference/android/support/wearable/view/ActionLabel.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -805,7 +812,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1431,6 +1438,78 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1551,7 +1630,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1563,6 +1642,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1573,7 +1664,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
@@ -1585,7 +1676,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
@@ -1597,7 +1688,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1609,7 +1700,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
@@ -1621,7 +1712,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1633,7 +1724,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1645,7 +1736,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1657,7 +1748,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1669,7 +1760,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1681,7 +1772,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
@@ -1693,8 +1784,32 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1705,7 +1820,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
@@ -1717,7 +1832,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
@@ -1729,7 +1844,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1741,7 +1856,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
@@ -1753,7 +1868,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1798,7 +1913,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -3134,7 +3249,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4072,7 +4187,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -4088,13 +4203,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4110,7 +4241,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4126,7 +4257,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4142,7 +4273,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4158,7 +4289,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4174,7 +4305,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4190,7 +4321,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4206,7 +4337,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4222,7 +4353,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4238,7 +4369,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4254,7 +4385,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4270,7 +4401,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4286,7 +4417,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4302,7 +4433,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4318,7 +4449,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4334,7 +4465,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4350,7 +4481,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4366,7 +4497,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4382,7 +4513,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4398,7 +4529,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4414,7 +4545,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4430,7 +4561,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4446,6 +4577,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4706,6 +4853,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -4718,7 +4881,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4734,7 +4897,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4750,7 +4913,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4766,7 +4929,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4782,7 +4945,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4798,7 +4961,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4814,7 +4977,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4830,7 +4993,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4846,7 +5009,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4862,7 +5025,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4878,7 +5041,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4894,7 +5057,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4910,7 +5073,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4926,7 +5089,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4942,7 +5105,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4958,7 +5121,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4974,7 +5137,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4990,6 +5153,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4997,6 +5176,54 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -5006,7 +5233,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5022,7 +5249,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5038,7 +5265,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5054,7 +5281,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5070,7 +5297,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5086,7 +5313,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5102,7 +5329,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5118,7 +5345,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5134,7 +5361,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5150,7 +5377,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5166,7 +5393,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5182,7 +5409,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5198,7 +5425,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5214,7 +5441,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5230,7 +5457,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5246,7 +5473,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5262,7 +5489,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5278,7 +5505,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5294,7 +5521,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5310,7 +5537,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5326,7 +5553,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5342,7 +5569,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5358,7 +5585,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5374,7 +5601,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5390,7 +5617,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5406,7 +5633,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5422,7 +5649,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5438,7 +5665,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5454,7 +5681,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5470,7 +5697,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5486,7 +5713,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5502,7 +5729,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5518,7 +5745,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5534,7 +5761,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5550,7 +5777,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5566,7 +5793,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5582,7 +5809,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5598,7 +5825,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5614,7 +5841,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5630,7 +5857,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5646,7 +5873,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5662,7 +5889,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5678,7 +5905,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5694,7 +5921,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5710,7 +5937,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5726,7 +5953,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5742,7 +5969,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5758,7 +5985,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5774,7 +6001,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5790,7 +6017,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5806,7 +6033,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5822,7 +6049,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5838,6 +6065,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5986,6 +6229,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -5998,7 +6257,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6014,7 +6273,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6030,7 +6289,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6046,7 +6305,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6062,7 +6321,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6078,7 +6337,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6094,7 +6353,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6110,7 +6369,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6126,7 +6385,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6142,7 +6401,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6158,7 +6417,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6174,7 +6433,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6190,7 +6449,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6206,7 +6465,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6222,7 +6481,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6238,7 +6497,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6254,7 +6513,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6270,7 +6529,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6286,7 +6545,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6302,7 +6561,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6318,7 +6577,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6334,7 +6593,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6350,7 +6609,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6366,7 +6625,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6382,7 +6641,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6398,7 +6657,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6414,7 +6673,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6430,7 +6689,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6446,7 +6705,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6462,7 +6721,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6478,7 +6737,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6494,7 +6753,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6510,7 +6769,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6526,7 +6785,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6542,7 +6801,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6558,7 +6817,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6574,7 +6833,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6590,7 +6849,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6606,7 +6865,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6622,7 +6881,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6638,7 +6897,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6654,7 +6913,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6670,7 +6929,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6686,7 +6945,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6702,7 +6961,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6718,7 +6977,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6734,7 +6993,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6750,7 +7009,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6766,7 +7025,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6782,7 +7041,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6798,7 +7057,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6814,6 +7073,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7714,6 +7989,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -7726,7 +8017,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7742,7 +8033,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7758,7 +8049,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7774,7 +8065,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7790,7 +8081,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7806,7 +8097,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7822,7 +8113,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7838,7 +8129,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7854,7 +8145,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7870,7 +8161,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7886,7 +8177,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7902,7 +8193,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7918,7 +8209,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7934,7 +8225,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7950,7 +8241,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7966,7 +8257,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7982,7 +8273,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7998,7 +8289,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8014,7 +8305,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8030,6 +8321,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -8040,13 +8347,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8062,7 +8385,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8078,7 +8401,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8094,7 +8417,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8110,7 +8433,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8126,7 +8449,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8142,7 +8465,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8158,7 +8481,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8174,7 +8497,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8190,7 +8513,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8206,7 +8529,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8222,7 +8545,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8238,7 +8561,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8254,7 +8577,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8270,7 +8593,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8286,7 +8609,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8302,6 +8625,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9208,7 +9547,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
         
   </td></tr>
 
@@ -9224,13 +9563,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9246,7 +9601,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9262,7 +9617,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9278,7 +9633,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9294,7 +9649,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9310,7 +9665,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9326,7 +9681,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9342,7 +9697,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9358,7 +9713,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9374,6 +9729,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9384,13 +9755,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9406,7 +9825,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9422,7 +9841,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9438,7 +9857,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9454,7 +9873,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9470,7 +9889,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9486,7 +9905,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9502,7 +9921,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9518,7 +9937,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9534,7 +9953,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9550,7 +9969,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9566,7 +9985,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9582,7 +10001,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9598,7 +10017,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9614,7 +10033,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9630,7 +10049,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9646,7 +10065,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9662,7 +10081,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9678,7 +10097,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9694,7 +10113,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9710,7 +10129,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9726,7 +10145,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9742,7 +10161,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9758,7 +10177,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9774,7 +10193,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9790,6 +10209,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9912,7 +10347,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
         
   </td></tr>
 
@@ -9928,13 +10363,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9950,7 +10401,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9966,7 +10417,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9982,7 +10433,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9998,7 +10449,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10014,7 +10465,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10030,7 +10481,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10046,7 +10497,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10062,7 +10513,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10078,7 +10529,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10094,7 +10545,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10110,7 +10561,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10126,7 +10577,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10142,7 +10593,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10158,7 +10609,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10174,7 +10625,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10190,7 +10641,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10206,7 +10657,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10222,7 +10673,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10238,7 +10689,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10254,6 +10705,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10264,13 +10731,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10286,7 +10769,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10302,7 +10785,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10318,7 +10801,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10334,7 +10817,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10350,7 +10833,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10366,7 +10849,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10382,7 +10865,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10398,7 +10881,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10414,7 +10897,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10430,7 +10913,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10446,7 +10929,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10462,7 +10945,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10478,7 +10961,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10494,7 +10977,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10510,7 +10993,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10526,7 +11009,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10542,7 +11025,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10558,7 +11041,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10574,7 +11057,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10590,7 +11073,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10606,7 +11089,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10622,7 +11105,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10638,7 +11121,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10654,7 +11137,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10670,7 +11153,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10686,6 +11169,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10872,7 +11371,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -11074,7 +11573,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11148,7 +11647,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11238,7 +11737,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/ActionPage.html b/docs/html/reference/android/support/wearable/view/ActionPage.html
index 69c4dfb..fb5b88a 100644
--- a/docs/html/reference/android/support/wearable/view/ActionPage.html
+++ b/docs/html/reference/android/support/wearable/view/ActionPage.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -829,7 +836,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup
 <div id="inherited-constants-android.view.ViewGroup">
@@ -973,7 +980,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1599,6 +1606,78 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1719,7 +1798,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1731,6 +1810,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1741,7 +1832,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
@@ -1753,7 +1844,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
@@ -1765,7 +1856,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1777,7 +1868,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
@@ -1789,7 +1880,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1801,7 +1892,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1813,7 +1904,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1825,7 +1916,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1837,7 +1928,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1849,7 +1940,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
@@ -1861,8 +1952,32 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1873,7 +1988,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
@@ -1885,7 +2000,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
@@ -1897,7 +2012,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1909,7 +2024,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
@@ -1921,7 +2036,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
@@ -2013,7 +2128,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -3133,7 +3248,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3799,7 +3914,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -3815,13 +3930,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3837,7 +3968,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3853,7 +3984,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3869,7 +4000,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3885,7 +4016,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3901,7 +4032,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3917,7 +4048,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3933,7 +4064,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3949,7 +4080,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3965,7 +4096,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3981,7 +4112,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3997,7 +4128,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4013,7 +4144,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4029,7 +4160,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4045,7 +4176,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4061,7 +4192,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4077,7 +4208,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4093,7 +4224,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4109,7 +4240,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4125,7 +4256,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4141,7 +4272,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4157,7 +4288,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4173,7 +4304,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4189,6 +4320,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4807,38 +4954,6 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationEnd</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationStart</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
         
   </td></tr>
@@ -5095,6 +5210,38 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewAdded</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewRemoved</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
         
   </td></tr>
@@ -5700,10 +5847,10 @@
             
             
             
-            void</nobr>
+            ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">startLayoutAnimation</span>()</nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
         
   </td></tr>
 
@@ -5719,7 +5866,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">startViewTransition</span>(View arg0)</nobr>
+        <span class="sympad">startLayoutAnimation</span>()</nobr>
         
   </td></tr>
 
@@ -5735,6 +5882,22 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startViewTransition</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
         
   </td></tr>
@@ -5751,7 +5914,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -6689,7 +6852,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -6705,13 +6868,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6727,7 +6906,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6743,7 +6922,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6759,7 +6938,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6775,7 +6954,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6791,7 +6970,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6807,7 +6986,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6823,7 +7002,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6839,7 +7018,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6855,7 +7034,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6871,7 +7050,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6887,7 +7066,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6903,7 +7082,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6919,7 +7098,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6935,7 +7114,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6951,7 +7130,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6967,7 +7146,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6983,7 +7162,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6999,7 +7178,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7015,7 +7194,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7031,7 +7210,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7047,7 +7226,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7063,6 +7242,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7323,6 +7518,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -7335,7 +7546,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7351,7 +7562,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7367,7 +7578,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7383,7 +7594,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7399,7 +7610,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7415,7 +7626,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7431,7 +7642,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7447,7 +7658,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7463,7 +7674,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7479,7 +7690,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7495,7 +7706,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7511,7 +7722,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7527,7 +7738,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7543,7 +7754,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7559,7 +7770,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7575,7 +7786,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7591,7 +7802,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7607,6 +7818,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7614,6 +7841,54 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -7623,7 +7898,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7639,7 +7914,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7655,7 +7930,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7671,7 +7946,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7687,7 +7962,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7703,7 +7978,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7719,7 +7994,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7735,7 +8010,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7751,7 +8026,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7767,7 +8042,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7783,7 +8058,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7799,7 +8074,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7815,7 +8090,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7831,7 +8106,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7847,7 +8122,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7863,7 +8138,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7879,7 +8154,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7895,7 +8170,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7911,7 +8186,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7927,7 +8202,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7943,7 +8218,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7959,7 +8234,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7975,7 +8250,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7991,7 +8266,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8007,7 +8282,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8023,7 +8298,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8039,7 +8314,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8055,7 +8330,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8071,7 +8346,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8087,7 +8362,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8103,7 +8378,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8119,7 +8394,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8135,7 +8410,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8151,7 +8426,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8167,7 +8442,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8183,7 +8458,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8199,7 +8474,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8215,7 +8490,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8231,7 +8506,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8247,7 +8522,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8263,7 +8538,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8279,7 +8554,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8295,7 +8570,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8311,7 +8586,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8327,7 +8602,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8343,7 +8618,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8359,7 +8634,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8375,7 +8650,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8391,7 +8666,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8407,7 +8682,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8423,7 +8698,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8439,7 +8714,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8455,6 +8730,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -8603,6 +8894,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -8615,7 +8922,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8631,7 +8938,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8647,7 +8954,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8663,7 +8970,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8679,7 +8986,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8695,7 +9002,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8711,7 +9018,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8727,7 +9034,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8743,7 +9050,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8759,7 +9066,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8775,7 +9082,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8791,7 +9098,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8807,7 +9114,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8823,7 +9130,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8839,7 +9146,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8855,7 +9162,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8871,7 +9178,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8887,7 +9194,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8903,7 +9210,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8919,7 +9226,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8935,7 +9242,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8951,7 +9258,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8967,7 +9274,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8983,7 +9290,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8999,7 +9306,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9015,7 +9322,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9031,7 +9338,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9047,7 +9354,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9063,7 +9370,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9079,7 +9386,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9095,7 +9402,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9111,7 +9418,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9127,7 +9434,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9143,7 +9450,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9159,7 +9466,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9175,7 +9482,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9191,7 +9498,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9207,7 +9514,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9223,7 +9530,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9239,7 +9546,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9255,7 +9562,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9271,7 +9578,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9287,7 +9594,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9303,7 +9610,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9319,7 +9626,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9335,7 +9642,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9351,7 +9658,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9367,7 +9674,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9383,7 +9690,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9399,7 +9706,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9415,7 +9722,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9431,6 +9738,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10331,6 +10654,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -10343,7 +10682,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10359,7 +10698,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10375,7 +10714,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10391,7 +10730,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10407,7 +10746,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10423,7 +10762,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10439,7 +10778,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10455,7 +10794,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10471,7 +10810,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10487,7 +10826,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10503,7 +10842,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10519,7 +10858,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10535,7 +10874,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10551,7 +10890,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10567,7 +10906,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10583,7 +10922,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10599,7 +10938,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10615,7 +10954,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10631,7 +10970,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10647,6 +10986,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10657,13 +11012,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10679,7 +11050,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10695,7 +11066,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10711,7 +11082,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10727,7 +11098,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10743,7 +11114,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10759,7 +11130,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10775,7 +11146,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10791,7 +11162,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10807,7 +11178,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10823,7 +11194,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10839,7 +11210,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10855,7 +11226,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10871,7 +11242,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10887,7 +11258,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10903,7 +11274,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10919,6 +11290,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -11825,7 +12212,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
         
   </td></tr>
 
@@ -11841,13 +12228,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11863,7 +12266,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11879,7 +12282,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11895,7 +12298,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11911,7 +12314,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11927,7 +12330,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11943,7 +12346,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11959,7 +12362,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11975,7 +12378,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11991,6 +12394,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -12001,13 +12420,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12023,7 +12490,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12039,7 +12506,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12055,7 +12522,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12071,7 +12538,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12087,7 +12554,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12103,7 +12570,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12119,7 +12586,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12135,7 +12602,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12151,7 +12618,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12167,7 +12634,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12183,7 +12650,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12199,7 +12666,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12215,7 +12682,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12231,7 +12698,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12247,7 +12714,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12263,7 +12730,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12279,7 +12746,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12295,7 +12762,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12311,7 +12778,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12327,7 +12794,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12343,7 +12810,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12359,7 +12826,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12375,7 +12842,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12391,7 +12858,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12407,6 +12874,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -12529,7 +13012,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
         
   </td></tr>
 
@@ -12545,13 +13028,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12567,7 +13066,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12583,7 +13082,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12599,7 +13098,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12615,7 +13114,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12631,7 +13130,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12647,7 +13146,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12663,7 +13162,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12679,7 +13178,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12695,7 +13194,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12711,7 +13210,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12727,7 +13226,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12743,7 +13242,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12759,7 +13258,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12775,7 +13274,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12791,7 +13290,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12807,7 +13306,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12823,7 +13322,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12839,7 +13338,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12855,7 +13354,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12871,6 +13370,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -12881,13 +13396,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12903,7 +13434,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12919,7 +13450,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12935,7 +13466,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12951,7 +13482,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12967,7 +13498,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12983,7 +13514,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12999,7 +13530,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13015,7 +13546,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13031,7 +13562,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13047,7 +13578,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13063,7 +13594,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13079,7 +13610,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13095,7 +13626,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13111,7 +13642,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13127,7 +13658,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13143,7 +13674,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13159,7 +13690,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13175,7 +13706,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13191,7 +13722,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13207,7 +13738,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13223,7 +13754,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13239,7 +13770,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13255,7 +13786,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13271,7 +13802,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13287,7 +13818,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13303,6 +13834,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -13489,7 +14036,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -13691,7 +14238,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewParent-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14357,6 +14904,22 @@
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
         
   </td></tr>
@@ -14373,7 +14936,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewManager-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14447,7 +15010,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14521,7 +15084,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14611,7 +15174,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html b/docs/html/reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html
index d716836..e6a117b 100644
--- a/docs/html/reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html
+++ b/docs/html/reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -894,7 +901,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup.LayoutParams
 <div id="inherited-constants-android.view.ViewGroup.LayoutParams">
@@ -994,7 +1001,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.widget.FrameLayout.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.widget.FrameLayout.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.widget.FrameLayout.LayoutParams
 <div id="inherited-fields-android.widget.FrameLayout.LayoutParams">
@@ -1034,7 +1041,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.ViewGroup.MarginLayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup.MarginLayoutParams
 <div id="inherited-fields-android.view.ViewGroup.MarginLayoutParams">
@@ -1122,7 +1129,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.ViewGroup.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup.LayoutParams
 <div id="inherited-fields-android.view.ViewGroup.LayoutParams">
@@ -1353,7 +1360,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewGroup.MarginLayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1523,7 +1530,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewGroup.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1581,7 +1588,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/view/BoxInsetLayout.html b/docs/html/reference/android/support/wearable/view/BoxInsetLayout.html
index d315135..64b6b34 100644
--- a/docs/html/reference/android/support/wearable/view/BoxInsetLayout.html
+++ b/docs/html/reference/android/support/wearable/view/BoxInsetLayout.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -146,7 +151,7 @@
 
 </head>
 
-<body class="gc-documentation 
+<body class="gc-documentation
   develop reference" itemscope itemtype="http://schema.org/Article">
   <div id="doc-api-level" class="" style="display:none"></div>
   <a name="top"></a>
@@ -221,13 +226,13 @@
           </a>
 
         <ul class="dac-header-crumbs">
-          
+
           <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">BoxInsetLayout</a></li>
         </ul>
 
-        
-        
-        
+
+
+
   <div class="dac-header-search" id="search-container">
     <div class="dac-header-search-inner">
       <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
@@ -267,7 +272,7 @@
     </div>
   </div>
 
-        
+
 
         <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
           <span class="dac-sprite dac-google-play"></span>
@@ -284,7 +289,7 @@
     </div>
   </div> <!--end header-wrapper -->
 
-  
+
   <!-- Navigation-->
   <nav class="dac-nav">
     <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
@@ -370,7 +375,7 @@
           <li class="dac-nav-item google">
             <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
           </li>
-          
+
           <li class="dac-nav-item preview">
             <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
           </li>
@@ -407,7 +412,7 @@
     </ul>
   </nav>
   <!-- end navigation-->
-  
+
 
 
 
@@ -439,7 +444,7 @@
             <div id="packages-nav" class="scroll-pane">
 
               <ul>
-                
+
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
     <li class="api apilevel-">
@@ -465,10 +470,11 @@
 
 
             <ul>
-              
-              
+
+
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -481,9 +487,10 @@
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a></li>
       </ul>
     </li>
-              
+
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -511,9 +518,9 @@
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></li>
       </ul>
     </li>
-              
-              
-              
+
+
+
             </ul><br/>
 
 
@@ -556,7 +563,7 @@
         });
     </script>
 
-     
+
 
 
 
@@ -566,74 +573,74 @@
 
 
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-   
-  
-  
-  
 
-  
-   
-  
-  
-   
-  
-  
-   
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
 
 <div class="sum-details-links">
@@ -641,7 +648,7 @@
 Summary:
 
   <a href="#nestedclasses">Nested Classes</a>
-  
+
 
 
 
@@ -649,25 +656,25 @@
 
 
   &#124; <a href="#inhconstants">Inherited Constants</a>
-  
+
 
 
 
   &#124; <a href="#inhfields">Inherited Fields</a>
-  
+
 
 
   &#124; <a href="#pubctors">Ctors</a>
-  
+
 
 
 
   &#124; <a href="#pubmethods">Methods</a>
-  
+
 
 
   &#124; <a href="#promethods">Protected Methods</a>
-  
+
 
 
   &#124; <a href="#inhmethods">Inherited Methods</a>
@@ -676,9 +683,9 @@
 
 </div><!-- end sum-details-links -->
 <div class="api-level">
-  
-  
-  
+
+
+
 
 </div>
 </div><!-- end api-info-block -->
@@ -688,38 +695,38 @@
 
 <div id="jd-header">
     public
-     
-     
-    
+
+
+
     class
 <h1 itemprop="name">BoxInsetLayout</h1>
 
 
 
-  
-  
-  
 
-  
-  
-  
 
-  
-  
-  
 
-  
+
+
+
+
+
+
+
+
+
+
     extends FrameLayout<br/>
-  
-  
-  
-
-  
-  
-  
 
 
-    
+
+
+
+
+
+
+
+
 
 
 </div><!-- end header -->
@@ -731,54 +738,54 @@
 
 
     <tr>
-         	
+
         <td colspan="5" class="jd-inheritance-class-cell">java.lang.Object</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="4" class="jd-inheritance-class-cell">android.view.View</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="3" class="jd-inheritance-class-cell">android.view.ViewGroup</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="2" class="jd-inheritance-class-cell">android.widget.FrameLayout</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.view.BoxInsetLayout</td>
     </tr>
-    
+
 
 </table>
 
@@ -833,25 +840,25 @@
 <table id="nestedclasses" class="jd-sumtable"><tr><th colspan="12">Nested Classes</th></tr>
 
 
-  
+
     <tr class="alt-color api apilevel-" >
       <td class="jd-typecol"><nobr>
-        
-         
-         
-        
+
+
+
+
         class</nobr></td>
       <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html">BoxInsetLayout.LayoutParams</a></td>
       <td class="jd-descrcol" width="100%">
         adds <code>layout_box</code> attribute to layout parameters
 &nbsp;
-        
-    
+
+
 
       </td>
     </tr>
-    
-    
+
+
 
 
 
@@ -881,7 +888,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup
 <div id="inherited-constants-android.view.ViewGroup">
@@ -890,129 +897,129 @@
   </div>
   <div id="inherited-constants-android.view.ViewGroup-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CLIP_TO_PADDING_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_AFTER_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BEFORE_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BLOCK_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_MODE_CLIP_BOUNDS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_MODE_OPTICAL_BOUNDS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_ALL_CACHES</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_ANIMATION_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_NO_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_SCROLLING_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -1025,7 +1032,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1034,957 +1041,1065 @@
   </div>
   <div id="inherited-constants-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_ASSERTIVE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_POLITE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_AUTO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_HIGH</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_LOW</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FIND_VIEWS_WITH_CONTENT_DESCRIPTION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FIND_VIEWS_WITH_TEXT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUSABLES_ALL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUSABLES_TOUCH_MODE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BACKWARD</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_DOWN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_FORWARD</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_LEFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_RIGHT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_UP</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">GONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">HAPTIC_FEEDBACK_ENABLED</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_AUTO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_YES</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">INVISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">KEEP_SCREEN_ON</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_HARDWARE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_SOFTWARE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_HEIGHT_STATE_SHIFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_SIZE_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_STATE_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_STATE_TOO_SMALL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">NO_ID</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_ALWAYS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_IF_CONTENT_SCROLLS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_NEVER</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCREEN_STATE_OFF</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCREEN_STATE_ON</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_INSIDE_INSET</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_INSIDE_OVERLAY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_OUTSIDE_INSET</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_OUTSIDE_OVERLAY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_DEFAULT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_LEFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_RIGHT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_HORIZONTAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_VERTICAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">STATUS_BAR_HIDDEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">STATUS_BAR_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_FULLSCREEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_HIDE_NAVIGATION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE_STICKY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_STABLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -2026,7 +2141,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -2035,9 +2150,9 @@
   </div>
   <div id="inherited-fields-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2046,14 +2161,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ALPHA</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2062,14 +2177,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">EMPTY_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2078,14 +2193,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2094,14 +2209,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2110,14 +2225,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2126,14 +2241,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2142,14 +2257,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2158,14 +2273,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2174,14 +2289,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2190,14 +2305,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2206,14 +2321,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2222,14 +2337,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2238,14 +2353,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2254,14 +2369,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2270,14 +2385,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2286,14 +2401,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2302,14 +2417,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2318,14 +2433,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2334,14 +2449,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2350,14 +2465,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2366,14 +2481,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2382,14 +2497,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2398,14 +2513,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2414,14 +2529,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2430,14 +2545,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2446,14 +2561,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2462,14 +2577,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2478,14 +2593,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2494,14 +2609,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2510,14 +2625,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2526,14 +2641,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2542,14 +2657,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2558,14 +2673,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2574,14 +2689,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">SCALE_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2590,14 +2705,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">SCALE_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2606,14 +2721,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2622,14 +2737,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2638,14 +2753,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2654,14 +2769,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2670,14 +2785,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_Z</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2686,14 +2801,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2702,14 +2817,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2718,14 +2833,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2734,14 +2849,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">Z</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
 </table>
   </div>
 </div>
@@ -2770,51 +2885,51 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#BoxInsetLayout(android.content.Context)">BoxInsetLayout</a></span>(Context context)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#BoxInsetLayout(android.content.Context, android.util.AttributeSet)">BoxInsetLayout</a></span>(Context context, AttributeSet attrs)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#BoxInsetLayout(android.content.Context, android.util.AttributeSet, int)">BoxInsetLayout</a></span>(Context context, AttributeSet attrs, int defStyle)</nobr>
-        
+
   </td></tr>
 
 
@@ -2831,90 +2946,90 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             <a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html">BoxInsetLayout.LayoutParams</a></nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#generateLayoutParams(android.util.AttributeSet)">generateLayoutParams</a></span>(AttributeSet attrs)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Rect</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#getInsets()">getInsets</a></span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#isRound()">isRound</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           determine screen shape
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#onApplyWindowInsets(android.view.WindowInsets)">onApplyWindowInsets</a></span>(WindowInsets insets)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#setForeground(android.graphics.drawable.Drawable)">setForeground</a></span>(Drawable drawable)</nobr>
-        
+
   </td></tr>
 
 
@@ -2929,83 +3044,83 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#checkLayoutParams(android.view.ViewGroup.LayoutParams)">checkLayoutParams</a></span>(ViewGroup.LayoutParams p)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#generateLayoutParams(android.view.ViewGroup.LayoutParams)">generateLayoutParams</a></span>(ViewGroup.LayoutParams p)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#onAttachedToWindow()">onAttachedToWindow</a></span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#onLayout(boolean, int, int, int, int)">onLayout</a></span>(boolean changed, int left, int top, int right, int bottom)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html#onMeasure(int, int)">onMeasure</a></span>(int widthMeasureSpec, int heightMeasureSpec)</nobr>
-        
+
   </td></tr>
 
 
@@ -3026,7 +3141,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.widget.FrameLayout" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.widget.FrameLayout-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3038,454 +3153,198 @@
   </div>
   <div id="inherited-methods-android.widget.FrameLayout-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">draw</span>(Canvas arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">drawableStateChanged</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">gatherTransparentRegion</span>(Region arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateDefaultLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(AttributeSet arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getConsiderGoneChildrenWhenMeasuring</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            Drawable</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForeground</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundGravity</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            ColorStateList</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundTintList</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            PorterDuff.Mode</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundTintMode</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasureAllChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMeasureAllChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setVisibility</span>(int arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">shouldDelayChildPressedState</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
-        
   </td></tr>
 
 
@@ -3512,2598 +3371,2646 @@
   </div>
   <div id="inherited-methods-android.view.ViewGroup-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addStatesFromChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addViewInLayout</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addViewInLayout</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">attachLayoutAnimationParameters</span>(View arg0, ViewGroup.LayoutParams arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">attachViewToParent</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringChildToFront</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canAnimate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childDrawableStateChanged</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childHasTransientStateChanged</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cleanupLayoutState</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearChildFocus</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearDisappearingChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">debug</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachAllViewsFromParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewFromParent</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewFromParent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewsFromParent</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchFreezeSelfOnly</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchThawSelfOnly</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawChild</span>(Canvas arg0, View arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableStateChanged</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">endViewTransition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusableViewAvailable</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">gatherTransparentRegion</span>(Region arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateDefaultLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(AttributeSet arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildAt</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildCount</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildDrawingOrder</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildMeasureSpec</span>(int arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildStaticTransformation</span>(View arg0, Transformation arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildVisibleRect</span>(View arg0, Rect arg1, Point arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipToPadding</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDescendantFocusability</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusedChild</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             LayoutAnimationController</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Animation.AnimationListener</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutAnimationListener</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             LayoutTransition</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutTransition</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNestedScrollAxes</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOverlay</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverlay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPersistentDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchscreenBlocksFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasTransientState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">indexOfChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChild</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChildInParent</span>(int[] arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAlwaysDrawnWithCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAnimationCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isChildrenDrawingOrderEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isChildrenDrawnWithCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isMotionEventSplittingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTransitionGroup</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChild</span>(View arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChildWithMargins</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChildren</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifySubtreeAccessibilityStateChanged</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetDescendantRectToMyCoords</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetRectIntoDescendantCoords</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationEnd</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationStart</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedFling</span>(View arg0, float arg1, float arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreFling</span>(View arg0, float arg1, float arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPrePerformAccessibilityAction</span>(View arg0, int arg1, Bundle arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreScroll</span>(View arg0, int arg1, int arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScroll</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScrollAccepted</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRequestFocusInDescendants</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRequestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartNestedScroll</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStopNestedScroll</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewAdded</span>(View arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewRemoved</span>(View arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeAllViews</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeAllViewsInLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeDetachedView</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewAt</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewInLayout</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViews</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewsInLayout</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestTransparentRegion</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAddStatesFromChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAlwaysDrawnWithCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAnimationCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawingCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawingOrderEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawnWithCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToPadding</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDescendantFocusability</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutAnimation</span>(LayoutAnimationController arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutAnimationListener</span>(Animation.AnimationListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutMode</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutTransition</span>(LayoutTransition arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMotionEventSplittingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnHierarchyChangeListener</span>(ViewGroup.OnHierarchyChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPersistentDrawingCache</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setStaticTransformationsEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTouchscreenBlocksFocus</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTransitionGroup</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">shouldDelayChildPressedState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenuForChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startViewTransition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -6118,7 +6025,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -6130,7718 +6037,8102 @@
   </div>
   <div id="inherited-methods-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewPropertyAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">animate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">announceForAccessibility</span>(CharSequence arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>(int arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringToFront</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildDrawingCache</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildLayer</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">callOnClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canScrollHorizontally</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canScrollVertically</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cancelLongPress</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cancelPendingInputEvents</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkInputConnectionProxy</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">combineMeasuredStates</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeSystemWindowInsets</span>(WindowInsets arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             AccessibilityNodeInfo</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createAccessibilityNodeInfo</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">destroyDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericMotionEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedFling</span>(float arg0, float arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPreFling</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPrePerformAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPreScroll</span>(int arg0, int arg1, int[] arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedScroll</span>(int arg0, int arg1, int arg2, int arg3, int[] arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">draw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableStateChanged</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewById</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewWithTag</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">fitSystemWindows</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">forceLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateViewId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityLiveRegion</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             AccessibilityNodeProvider</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityNodeProvider</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityTraversalAfter</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityTraversalBefore</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAlpha</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Animation</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             IBinder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getApplicationWindowToken</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Drawable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackground</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ColorStateList</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackgroundTintList</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             PorterDuff.Mode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackgroundTintMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBaseline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottom</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottomFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottomPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getCameraDistance</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Rect</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipBounds</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipToOutline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             CharSequence</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContentDescription</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             Context</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContext</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ContextMenu.ContextMenuInfo</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContextMenuInfo</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDefaultSize</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Display</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDisplay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawableState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Bitmap</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCache</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Bitmap</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCacheBackgroundColor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCacheQuality</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             long</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingTime</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getElevation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFilterTouchesWhenObscured</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFitsSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ArrayList&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusables</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusedRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getGlobalVisibleRect</span>(Rect arg0, Point arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getGlobalVisibleRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Handler</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHandler</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHitRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHorizontalFadingEdgeLength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHorizontalScrollbarHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getImportantForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getKeepScreenOn</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             KeyEvent.DispatcherState</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getKeyDispatcherState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLabelFor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayerType</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeft</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeftFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeftPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocalVisibleRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocationInWindow</span>(int[] arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocationOnScreen</span>(int[] arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Matrix</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMatrix</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredHeightAndState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredWidthAndState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMinimumHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMinimumWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusDownId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusForwardId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusLeftId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusRightId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusUpId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View.OnFocusChangeListener</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOnFocusChangeListener</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOutlineProvider</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOutlineProvider</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverScrollMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOverlay</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverlay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingBottom</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingEnd</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingLeft</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingRight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingStart</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingTop</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParentForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPivotX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPivotY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Resources</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getResources</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRightFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRightPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRootView</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotationX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotationY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScaleX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScaleY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarDefaultDelayBeforeFade</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarFadeDuration</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarSize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarStyle</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSolidColor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             StateListAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getStateListAnimator</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSuggestedMinimumHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSuggestedMinimumWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSystemUiVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTag</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTag</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTop</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTopFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTopPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             TouchDelegate</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchDelegate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ArrayList&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchables</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTransitionName</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationZ</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalFadingEdgeLength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalScrollbarPosition</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalScrollbarWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewTreeObserver</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getViewTreeObserver</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowAttachCount</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowId</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowSystemUiVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             IBinder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowToken</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowVisibleDisplayFrame</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getZ</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasNestedScrollingParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasOnClickListeners</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasOverlappingRendering</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasTransientState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasWindowFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">inflate</span>(Context arg0, int arg1, ViewGroup arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateOutline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAccessibilityFocused</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isActivated</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isClickable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDirty</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDrawingCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDuplicateParentStateEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocusableInTouchMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocused</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHapticFeedbackEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHardwareAccelerated</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHorizontalFadingEdgeEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHorizontalScrollBarEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHovered</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isImportantForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInEditMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInTouchMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLaidOut</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutRequested</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLongClickable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isNestedScrollingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isOpaque</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPaddingOffsetRequired</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPaddingRelative</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPressed</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSaveEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSaveFromParentEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isScrollContainer</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isScrollbarFadingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSelected</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isShown</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSoundEffectsEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextAlignmentResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isVerticalFadingEdgeEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isVerticalScrollBarEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">mergeDrawableStates</span>(int[] arg0, int[] arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetLeftAndRight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetTopAndBottom</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAnimationEnd</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAnimationStart</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCancelPendingInputEvents</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCheckIsTextEditor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             InputConnection</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateInputConnection</span>(EditorInfo arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDrawScrollBars</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFilterTouchEventForSecurity</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFinishInflate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFinishTemporaryDetach</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFocusChanged</span>(boolean arg0, int arg1, Rect arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onGenericMotionEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onHoverChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyPreIme</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyShortcut</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onOverScrolled</span>(int arg0, int arg1, boolean arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRtlPropertiesChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Parcelable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSaveInstanceState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onScreenStateChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onScrollChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSetAlpha</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartTemporaryDetach</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">overScrollBy</span>(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, boolean arg8)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performHapticFeedback</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performHapticFeedback</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performLongClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">playSoundEffect</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">post</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postDelayed</span>(Runnable arg0, long arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateDelayed</span>(long arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateDelayed</span>(long arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateOnAnimation</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateOnAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postOnAnimation</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postOnAnimationDelayed</span>(Runnable arg0, long arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">refreshDrawableState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeCallbacks</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestApplyInsets</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFitSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocusFromTouch</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestRectangleOnScreen</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestRectangleOnScreen</span>(Rect arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestUnbufferedDispatch</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">resolveSize</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">resolveSizeAndState</span>(int arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">restoreHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">saveHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollBy</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollTo</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityDelegate</span>(View.AccessibilityDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityLiveRegion</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityTraversalAfter</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityTraversalBefore</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAlpha</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAnimation</span>(Animation arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackground</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundColor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundResource</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundTintList</span>(ColorStateList arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBottom</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setCameraDistance</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClickable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipBounds</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToOutline</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setContentDescription</span>(CharSequence arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheQuality</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDuplicateParentStateEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setElevation</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFadingEdgeLength</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFilterTouchesWhenObscured</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFitsSystemWindows</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFocusable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFocusableInTouchMode</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHasTransientState</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHorizontalFadingEdgeEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHorizontalScrollBarEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHovered</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setImportantForAccessibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setKeepScreenOn</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLabelFor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayerPaint</span>(Paint arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayerType</span>(int arg0, Paint arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutDirection</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLeft</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLongClickable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMeasuredDimension</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMinimumHeight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMinimumWidth</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNestedScrollingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusDownId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusForwardId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusLeftId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusRightId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusUpId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnApplyWindowInsetsListener</span>(View.OnApplyWindowInsetsListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnClickListener</span>(View.OnClickListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnCreateContextMenuListener</span>(View.OnCreateContextMenuListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnDragListener</span>(View.OnDragListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnFocusChangeListener</span>(View.OnFocusChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnGenericMotionListener</span>(View.OnGenericMotionListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnHoverListener</span>(View.OnHoverListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnKeyListener</span>(View.OnKeyListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnLongClickListener</span>(View.OnLongClickListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOutlineProvider</span>(ViewOutlineProvider arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOverScrollMode</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPadding</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPaddingRelative</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPivotX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPivotY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotation</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotationX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotationY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSaveEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSaveFromParentEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScaleX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScaleY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarDefaultDelayBeforeFade</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarFadeDuration</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarSize</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarStyle</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollContainer</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollY</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollbarFadingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSoundEffectsEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setStateListAnimator</span>(StateListAnimator arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSystemUiVisibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTag</span>(int arg0, Object arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTag</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTextAlignment</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTextDirection</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTop</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTouchDelegate</span>(TouchDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTransitionName</span>(String arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationZ</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalFadingEdgeEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalScrollBarEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalScrollbarPosition</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVisibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setWillNotCacheDrawing</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setWillNotDraw</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setZ</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenu</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionMode</span>(ActionMode.Callback arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startAnimation</span>(Animation arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startDrag</span>(ClipData arg0, View.DragShadowBuilder arg1, Object arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startNestedScroll</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">stopNestedScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">toString</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">willNotCacheDrawing</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">willNotDraw</span>()</nobr>
-        
+
   </td></tr>
 
 
@@ -13856,7 +14147,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -13868,182 +14159,182 @@
   </div>
   <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clone</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">equals</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">finalize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             Class&lt;?&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClass</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hashCode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notify</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifyAll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">toString</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>(long arg0)</nobr>
-        
+
   </td></tr>
 
 
@@ -14058,7 +14349,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewParent-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14070,662 +14361,678 @@
   </div>
   <div id="inherited-methods-android.view.ViewParent-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringChildToFront</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childDrawableStateChanged</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childHasTransientStateChanged</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearChildFocus</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusableViewAvailable</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildVisibleRect</span>(View arg0, Rect arg1, Point arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParentForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChild</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChildInParent</span>(int[] arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutRequested</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextAlignmentResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifySubtreeAccessibilityStateChanged</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedFling</span>(View arg0, float arg1, float arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreFling</span>(View arg0, float arg1, float arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPrePerformAccessibilityAction</span>(View arg0, int arg1, Bundle arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreScroll</span>(View arg0, int arg1, int arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScroll</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScrollAccepted</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartNestedScroll</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStopNestedScroll</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFitSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestTransparentRegion</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenuForChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14740,7 +15047,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewManager-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14752,54 +15059,54 @@
   </div>
   <div id="inherited-methods-android.view.ViewManager-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14814,7 +15121,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14826,54 +15133,54 @@
   </div>
   <div id="inherited-methods-android.graphics.drawable.Drawable.Callback-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14888,7 +15195,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14900,70 +15207,70 @@
   </div>
   <div id="inherited-methods-android.view.KeyEvent.Callback-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14978,7 +15285,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14990,38 +15297,38 @@
   </div>
   <div id="inherited-methods-android.view.accessibility.AccessibilityEventSource-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
@@ -15067,30 +15374,30 @@
 
 <A NAME="BoxInsetLayout(android.content.Context)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">BoxInsetLayout</span>
       <span class="normal">(Context context)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15099,30 +15406,30 @@
 
 <A NAME="BoxInsetLayout(android.content.Context, android.util.AttributeSet)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">BoxInsetLayout</span>
       <span class="normal">(Context context, AttributeSet attrs)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15131,30 +15438,30 @@
 
 <A NAME="BoxInsetLayout(android.content.Context, android.util.AttributeSet, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">BoxInsetLayout</span>
       <span class="normal">(Context context, AttributeSet attrs, int defStyle)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15178,14 +15485,14 @@
 
 <A NAME="generateLayoutParams(android.util.AttributeSet)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         <a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html">BoxInsetLayout.LayoutParams</a>
       </span>
       <span class="sympad">generateLayoutParams</span>
@@ -15193,15 +15500,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15210,14 +15517,14 @@
 
 <A NAME="getInsets()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         Rect
       </span>
       <span class="sympad">getInsets</span>
@@ -15225,15 +15532,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">Returns</h5>
@@ -15247,14 +15554,14 @@
 
 <A NAME="isRound()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         boolean
       </span>
       <span class="sympad">isRound</span>
@@ -15262,15 +15569,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>determine screen shape</p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">Returns</h5>
@@ -15284,14 +15591,14 @@
 
 <A NAME="onApplyWindowInsets(android.view.WindowInsets)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         WindowInsets
       </span>
       <span class="sympad">onApplyWindowInsets</span>
@@ -15299,15 +15606,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15316,14 +15623,14 @@
 
 <A NAME="setForeground(android.graphics.drawable.Drawable)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setForeground</span>
@@ -15331,15 +15638,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15357,14 +15664,14 @@
 
 <A NAME="checkLayoutParams(android.view.ViewGroup.LayoutParams)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         boolean
       </span>
       <span class="sympad">checkLayoutParams</span>
@@ -15372,15 +15679,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15389,14 +15696,14 @@
 
 <A NAME="generateLayoutParams(android.view.ViewGroup.LayoutParams)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         ViewGroup.LayoutParams
       </span>
       <span class="sympad">generateLayoutParams</span>
@@ -15404,15 +15711,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15421,14 +15728,14 @@
 
 <A NAME="onAttachedToWindow()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         void
       </span>
       <span class="sympad">onAttachedToWindow</span>
@@ -15436,15 +15743,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15453,14 +15760,14 @@
 
 <A NAME="onLayout(boolean, int, int, int, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         void
       </span>
       <span class="sympad">onLayout</span>
@@ -15468,15 +15775,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15485,14 +15792,14 @@
 
 <A NAME="onMeasure(int, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         void
       </span>
       <span class="sympad">onMeasure</span>
@@ -15500,15 +15807,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15544,22 +15851,22 @@
 
     <hr class="dac-footer-separator"/>
 
-    
+
       <p class="dac-footer-copyright">
-        
+
   Except as noted, this content is licensed under <a
   href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
   For details and restrictions, see the <a href="../../../../../license.html">
   Content License</a>.
       </p>
       <p class="dac-footer-build">
-        
-    Android Wearable Support&nbsp;r &mdash; 
+
+    Android Wearable Support&nbsp;r &mdash;
 <script src="../../../../../timestamp.js" type="text/javascript"></script>
 <script>document.write(BUILD_TIMESTAMP)</script>
 
       </p>
-    
+
 
     <p class="dac-footer-links">
       <a href="/about/index.html">About Android</a>
@@ -15701,8 +16008,8 @@
 
 </div><!-- end doc-content -->
 
-</div> <!-- end .cols --> 
-</div> <!-- end body-content --> 
+</div> <!-- end .cols -->
+</div> <!-- end body-content -->
 
 
 
diff --git a/docs/html/reference/android/support/wearable/view/CardFragment.html b/docs/html/reference/android/support/wearable/view/CardFragment.html
index b73c6ca..9553e22 100644
--- a/docs/html/reference/android/support/wearable/view/CardFragment.html
+++ b/docs/html/reference/android/support/wearable/view/CardFragment.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -857,7 +864,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From interface
 android.content.ComponentCallbacks2
 <div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -1627,7 +1634,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Fragment" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.app.Fragment-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1762,10 +1769,10 @@
             
             
             
-            Transition</nobr>
+            Context</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getEnterTransition</span>()</nobr>
+        <span class="sympad">getContext</span>()</nobr>
         
   </td></tr>
 
@@ -1781,12 +1788,44 @@
             Transition</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getEnterTransition</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Transition</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getExitTransition</span>()</nobr>
         
   </td></tr>
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            FragmentManager</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getFragmentManager</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -1794,10 +1833,10 @@
             final
             
             
-            FragmentManager</nobr>
+            Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getFragmentManager</span>()</nobr>
+        <span class="sympad">getHost</span>()</nobr>
         
   </td></tr>
 
@@ -2277,7 +2316,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAttach</span>(Activity arg0)</nobr>
+        <span class="sympad">onAttach</span>(Context arg0)</nobr>
         
   </td></tr>
 
@@ -2293,13 +2332,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onAttach</span>(Activity arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onConfigurationChanged</span>(Configuration arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2315,7 +2370,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2331,7 +2386,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2347,7 +2402,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2363,7 +2418,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2379,7 +2434,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2395,7 +2450,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2411,7 +2466,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2427,7 +2482,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2443,7 +2498,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2459,7 +2514,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2475,6 +2530,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onInflate</span>(Context arg0, AttributeSet arg1, Bundle arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -2597,7 +2668,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onResume</span>()</nobr>
+        <span class="sympad">onRequestPermissionsResult</span>(int arg0, String[] arg1, int[] arg2)</nobr>
         
   </td></tr>
 
@@ -2613,13 +2684,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onResume</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSaveInstanceState</span>(Bundle arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2635,7 +2722,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2651,7 +2738,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2667,7 +2754,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2683,7 +2770,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2699,7 +2786,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2715,6 +2802,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestPermissions</span>(String[] arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -2994,6 +3097,22 @@
             
             
             
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">shouldShowRequestPermissionRationale</span>(String arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -3003,7 +3122,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3019,7 +3138,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3035,7 +3154,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3051,7 +3170,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3067,7 +3186,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3093,7 +3212,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3295,7 +3414,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -3337,7 +3456,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View.OnCreateContextMenuListener" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View.OnCreateContextMenuListener-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -3379,7 +3498,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/CardFrame.html b/docs/html/reference/android/support/wearable/view/CardFrame.html
index 32224d5..31a9225 100644
--- a/docs/html/reference/android/support/wearable/view/CardFrame.html
+++ b/docs/html/reference/android/support/wearable/view/CardFrame.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -873,7 +880,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup
 <div id="inherited-constants-android.view.ViewGroup">
@@ -1017,7 +1024,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1643,6 +1650,78 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1763,7 +1842,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1775,6 +1854,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1785,7 +1876,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
@@ -1797,7 +1888,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
@@ -1809,7 +1900,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1821,7 +1912,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
@@ -1833,7 +1924,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1845,7 +1936,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1857,7 +1948,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1869,7 +1960,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1881,7 +1972,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1893,7 +1984,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
@@ -1905,8 +1996,32 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1917,7 +2032,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
@@ -1929,7 +2044,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
@@ -1941,7 +2056,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1953,7 +2068,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
@@ -1965,7 +2080,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
@@ -2016,7 +2131,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -3300,7 +3415,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3966,7 +4081,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -3982,13 +4097,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4004,7 +4135,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4020,7 +4151,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4036,7 +4167,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4052,7 +4183,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4068,7 +4199,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4084,7 +4215,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4100,7 +4231,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4116,7 +4247,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4132,7 +4263,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4148,7 +4279,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4164,7 +4295,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4180,7 +4311,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4196,7 +4327,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4212,7 +4343,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4228,7 +4359,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4244,7 +4375,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4260,7 +4391,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4276,7 +4407,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4292,7 +4423,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4308,7 +4439,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4324,7 +4455,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4340,7 +4471,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4356,6 +4487,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4974,38 +5121,6 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationEnd</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationStart</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
         
   </td></tr>
@@ -5262,6 +5377,38 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewAdded</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewRemoved</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
         
   </td></tr>
@@ -5867,10 +6014,10 @@
             
             
             
-            void</nobr>
+            ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">startLayoutAnimation</span>()</nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
         
   </td></tr>
 
@@ -5886,7 +6033,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">startViewTransition</span>(View arg0)</nobr>
+        <span class="sympad">startLayoutAnimation</span>()</nobr>
         
   </td></tr>
 
@@ -5902,6 +6049,22 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startViewTransition</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
         
   </td></tr>
@@ -5918,7 +6081,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -6856,7 +7019,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -6872,13 +7035,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6894,7 +7073,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6910,7 +7089,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6926,7 +7105,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6942,7 +7121,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6958,7 +7137,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6974,7 +7153,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6990,7 +7169,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7006,7 +7185,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7022,7 +7201,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7038,7 +7217,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7054,7 +7233,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7070,7 +7249,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7086,7 +7265,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7102,7 +7281,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7118,7 +7297,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7134,7 +7313,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7150,7 +7329,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7166,7 +7345,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7182,7 +7361,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7198,7 +7377,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7214,7 +7393,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7230,6 +7409,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7490,6 +7685,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -7502,7 +7713,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7518,7 +7729,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7534,7 +7745,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7550,7 +7761,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7566,7 +7777,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7582,7 +7793,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7598,7 +7809,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7614,7 +7825,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7630,7 +7841,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7646,7 +7857,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7662,7 +7873,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7678,7 +7889,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7694,7 +7905,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7710,7 +7921,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7726,7 +7937,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7742,7 +7953,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7758,7 +7969,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7774,6 +7985,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7781,6 +8008,54 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -7790,7 +8065,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7806,7 +8081,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7822,7 +8097,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7838,7 +8113,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7854,7 +8129,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7870,7 +8145,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7886,7 +8161,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7902,7 +8177,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7918,7 +8193,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7934,7 +8209,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7950,7 +8225,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7966,7 +8241,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7982,7 +8257,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7998,7 +8273,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8014,7 +8289,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8030,7 +8305,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8046,7 +8321,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8062,7 +8337,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8078,7 +8353,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8094,7 +8369,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8110,7 +8385,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8126,7 +8401,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8142,7 +8417,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8158,7 +8433,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8174,7 +8449,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8190,7 +8465,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8206,7 +8481,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8222,7 +8497,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8238,7 +8513,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8254,7 +8529,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8270,7 +8545,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8286,7 +8561,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8302,7 +8577,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8318,7 +8593,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8334,7 +8609,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8350,7 +8625,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8366,7 +8641,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8382,7 +8657,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8398,7 +8673,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8414,7 +8689,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8430,7 +8705,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8446,7 +8721,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8462,7 +8737,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8478,7 +8753,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8494,7 +8769,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8510,7 +8785,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8526,7 +8801,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8542,7 +8817,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8558,7 +8833,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8574,7 +8849,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8590,7 +8865,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8606,7 +8881,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8622,6 +8897,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -8770,6 +9061,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -8782,7 +9089,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8798,7 +9105,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8814,7 +9121,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8830,7 +9137,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8846,7 +9153,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8862,7 +9169,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8878,7 +9185,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8894,7 +9201,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8910,7 +9217,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8926,7 +9233,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8942,7 +9249,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8958,7 +9265,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8974,7 +9281,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8990,7 +9297,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9006,7 +9313,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9022,7 +9329,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9038,7 +9345,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9054,7 +9361,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9070,7 +9377,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9086,7 +9393,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9102,7 +9409,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9118,7 +9425,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9134,7 +9441,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9150,7 +9457,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9166,7 +9473,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9182,7 +9489,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9198,7 +9505,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9214,7 +9521,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9230,7 +9537,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9246,7 +9553,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9262,7 +9569,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9278,7 +9585,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9294,7 +9601,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9310,7 +9617,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9326,7 +9633,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9342,7 +9649,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9358,7 +9665,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9374,7 +9681,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9390,7 +9697,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9406,7 +9713,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9422,7 +9729,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9438,7 +9745,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9454,7 +9761,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9470,7 +9777,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9486,7 +9793,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9502,7 +9809,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9518,7 +9825,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9534,7 +9841,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9550,7 +9857,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9566,7 +9873,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9582,7 +9889,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9598,6 +9905,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10498,6 +10821,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -10510,7 +10849,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10526,7 +10865,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10542,7 +10881,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10558,7 +10897,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10574,7 +10913,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10590,7 +10929,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10606,7 +10945,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10622,7 +10961,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10638,7 +10977,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10654,7 +10993,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10670,7 +11009,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10686,7 +11025,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10702,7 +11041,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10718,7 +11057,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10734,7 +11073,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10750,7 +11089,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10766,7 +11105,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10782,7 +11121,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10798,7 +11137,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10814,6 +11153,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10824,13 +11179,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10846,7 +11217,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10862,7 +11233,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10878,7 +11249,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10894,7 +11265,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10910,7 +11281,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10926,7 +11297,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10942,7 +11313,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10958,7 +11329,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10974,7 +11345,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10990,7 +11361,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11006,7 +11377,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11022,7 +11393,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11038,7 +11409,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11054,7 +11425,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11070,7 +11441,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11086,6 +11457,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -11992,7 +12379,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
         
   </td></tr>
 
@@ -12008,13 +12395,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12030,7 +12433,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12046,7 +12449,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12062,7 +12465,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12078,7 +12481,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12094,7 +12497,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12110,7 +12513,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12126,7 +12529,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12142,7 +12545,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12158,6 +12561,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -12168,13 +12587,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12190,7 +12657,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12206,7 +12673,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12222,7 +12689,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12238,7 +12705,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12254,7 +12721,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12270,7 +12737,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12286,7 +12753,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12302,7 +12769,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12318,7 +12785,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12334,7 +12801,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12350,7 +12817,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12366,7 +12833,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12382,7 +12849,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12398,7 +12865,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12414,7 +12881,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12430,7 +12897,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12446,7 +12913,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12462,7 +12929,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12478,7 +12945,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12494,7 +12961,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12510,7 +12977,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12526,7 +12993,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12542,7 +13009,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12558,7 +13025,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12574,6 +13041,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -12696,7 +13179,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
         
   </td></tr>
 
@@ -12712,13 +13195,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12734,7 +13233,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12750,7 +13249,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12766,7 +13265,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12782,7 +13281,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12798,7 +13297,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12814,7 +13313,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12830,7 +13329,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12846,7 +13345,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12862,7 +13361,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12878,7 +13377,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12894,7 +13393,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12910,7 +13409,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12926,7 +13425,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12942,7 +13441,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12958,7 +13457,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12974,7 +13473,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12990,7 +13489,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13006,7 +13505,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13022,7 +13521,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13038,6 +13537,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -13048,13 +13563,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13070,7 +13601,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13086,7 +13617,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13102,7 +13633,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13118,7 +13649,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13134,7 +13665,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13150,7 +13681,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13166,7 +13697,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13182,7 +13713,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13198,7 +13729,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13214,7 +13745,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13230,7 +13761,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13246,7 +13777,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13262,7 +13793,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13278,7 +13809,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13294,7 +13825,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13310,7 +13841,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13326,7 +13857,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13342,7 +13873,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13358,7 +13889,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13374,7 +13905,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13390,7 +13921,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13406,7 +13937,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13422,7 +13953,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13438,7 +13969,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13454,7 +13985,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13470,6 +14001,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -13656,7 +14203,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -13858,7 +14405,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewParent-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14524,6 +15071,22 @@
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
         
   </td></tr>
@@ -14540,7 +15103,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewManager-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14614,7 +15177,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14688,7 +15251,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14778,7 +15341,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/CardScrollView.html b/docs/html/reference/android/support/wearable/view/CardScrollView.html
index a361847..4c9bdc1 100644
--- a/docs/html/reference/android/support/wearable/view/CardScrollView.html
+++ b/docs/html/reference/android/support/wearable/view/CardScrollView.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -146,7 +151,7 @@
 
 </head>
 
-<body class="gc-documentation 
+<body class="gc-documentation
   develop reference" itemscope itemtype="http://schema.org/Article">
   <div id="doc-api-level" class="" style="display:none"></div>
   <a name="top"></a>
@@ -221,13 +226,13 @@
           </a>
 
         <ul class="dac-header-crumbs">
-          
+
           <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">CardScrollView</a></li>
         </ul>
 
-        
-        
-        
+
+
+
   <div class="dac-header-search" id="search-container">
     <div class="dac-header-search-inner">
       <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
@@ -267,7 +272,7 @@
     </div>
   </div>
 
-        
+
 
         <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
           <span class="dac-sprite dac-google-play"></span>
@@ -284,7 +289,7 @@
     </div>
   </div> <!--end header-wrapper -->
 
-  
+
   <!-- Navigation-->
   <nav class="dac-nav">
     <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
@@ -370,7 +375,7 @@
           <li class="dac-nav-item google">
             <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
           </li>
-          
+
           <li class="dac-nav-item preview">
             <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
           </li>
@@ -407,7 +412,7 @@
     </ul>
   </nav>
   <!-- end navigation-->
-  
+
 
 
 
@@ -439,7 +444,7 @@
             <div id="packages-nav" class="scroll-pane">
 
               <ul>
-                
+
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
     <li class="api apilevel-">
@@ -465,10 +470,11 @@
 
 
             <ul>
-              
-              
+
+
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -481,9 +487,10 @@
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a></li>
       </ul>
     </li>
-              
+
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -511,9 +518,9 @@
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></li>
       </ul>
     </li>
-              
-              
-              
+
+
+
             </ul><br/>
 
 
@@ -556,7 +563,7 @@
         });
     </script>
 
-     
+
 
 
 
@@ -566,74 +573,74 @@
 
 
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-   
-  
-  
-  
 
-  
-   
-  
-  
-   
-  
-  
-   
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
 
 <div class="sum-details-links">
@@ -646,25 +653,25 @@
 
 
   <a href="#inhconstants">Inherited Constants</a>
-  
+
 
 
 
   &#124; <a href="#inhfields">Inherited Fields</a>
-  
+
 
 
   &#124; <a href="#pubctors">Ctors</a>
-  
+
 
 
 
   &#124; <a href="#pubmethods">Methods</a>
-  
+
 
 
   &#124; <a href="#promethods">Protected Methods</a>
-  
+
 
 
   &#124; <a href="#inhmethods">Inherited Methods</a>
@@ -673,9 +680,9 @@
 
 </div><!-- end sum-details-links -->
 <div class="api-level">
-  
-  
-  
+
+
+
 
 </div>
 </div><!-- end api-info-block -->
@@ -685,38 +692,38 @@
 
 <div id="jd-header">
     public
-     
-     
-    
+
+
+
     class
 <h1 itemprop="name">CardScrollView</h1>
 
 
 
-  
-  
-  
 
-  
-  
-  
 
-  
-  
-  
 
-  
+
+
+
+
+
+
+
+
+
+
     extends FrameLayout<br/>
-  
-  
-  
-
-  
-  
-  
 
 
-    
+
+
+
+
+
+
+
+
 
 
 </div><!-- end header -->
@@ -728,54 +735,54 @@
 
 
     <tr>
-         	
+
         <td colspan="5" class="jd-inheritance-class-cell">java.lang.Object</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="4" class="jd-inheritance-class-cell">android.view.View</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="3" class="jd-inheritance-class-cell">android.view.ViewGroup</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="2" class="jd-inheritance-class-cell">android.widget.FrameLayout</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.view.CardScrollView</td>
     </tr>
-    
+
 
 </table>
 
@@ -847,7 +854,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup
 <div id="inherited-constants-android.view.ViewGroup">
@@ -856,129 +863,129 @@
   </div>
   <div id="inherited-constants-android.view.ViewGroup-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CLIP_TO_PADDING_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_AFTER_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BEFORE_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BLOCK_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_MODE_CLIP_BOUNDS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_MODE_OPTICAL_BOUNDS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_ALL_CACHES</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_ANIMATION_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_NO_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_SCROLLING_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -991,7 +998,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1000,957 +1007,1065 @@
   </div>
   <div id="inherited-constants-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_ASSERTIVE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_POLITE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_AUTO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_HIGH</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_LOW</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FIND_VIEWS_WITH_CONTENT_DESCRIPTION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FIND_VIEWS_WITH_TEXT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUSABLES_ALL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUSABLES_TOUCH_MODE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BACKWARD</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_DOWN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_FORWARD</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_LEFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_RIGHT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_UP</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">GONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">HAPTIC_FEEDBACK_ENABLED</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_AUTO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_YES</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">INVISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">KEEP_SCREEN_ON</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_HARDWARE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_SOFTWARE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_HEIGHT_STATE_SHIFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_SIZE_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_STATE_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_STATE_TOO_SMALL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">NO_ID</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_ALWAYS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_IF_CONTENT_SCROLLS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_NEVER</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCREEN_STATE_OFF</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCREEN_STATE_ON</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_INSIDE_INSET</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_INSIDE_OVERLAY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_OUTSIDE_INSET</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_OUTSIDE_OVERLAY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_DEFAULT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_LEFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_RIGHT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_HORIZONTAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_VERTICAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">STATUS_BAR_HIDDEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">STATUS_BAR_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_FULLSCREEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_HIDE_NAVIGATION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE_STICKY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_STABLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -1992,7 +2107,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -2001,9 +2116,9 @@
   </div>
   <div id="inherited-fields-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2012,14 +2127,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ALPHA</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2028,14 +2143,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">EMPTY_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2044,14 +2159,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2060,14 +2175,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2076,14 +2191,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2092,14 +2207,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2108,14 +2223,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2124,14 +2239,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2140,14 +2255,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2156,14 +2271,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2172,14 +2287,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2188,14 +2303,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2204,14 +2319,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2220,14 +2335,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2236,14 +2351,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2252,14 +2367,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2268,14 +2383,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2284,14 +2399,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2300,14 +2415,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2316,14 +2431,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2332,14 +2447,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2348,14 +2463,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2364,14 +2479,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2380,14 +2495,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2396,14 +2511,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2412,14 +2527,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2428,14 +2543,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2444,14 +2559,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2460,14 +2575,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2476,14 +2591,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2492,14 +2607,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2508,14 +2623,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2524,14 +2639,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2540,14 +2655,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">SCALE_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2556,14 +2671,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">SCALE_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2572,14 +2687,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2588,14 +2703,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2604,14 +2719,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2620,14 +2735,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2636,14 +2751,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_Z</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2652,14 +2767,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2668,14 +2783,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2684,14 +2799,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2700,14 +2815,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">Z</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
 </table>
   </div>
 </div>
@@ -2736,35 +2851,35 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#CardScrollView(android.content.Context)">CardScrollView</a></span>(Context context)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#CardScrollView(android.content.Context, android.util.AttributeSet)">CardScrollView</a></span>(Context context, AttributeSet attrs)</nobr>
-        
+
   </td></tr>
 
 
@@ -2781,259 +2896,259 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#addView(android.view.View, int, android.view.ViewGroup.LayoutParams)">addView</a></span>(View child, int index, ViewGroup.LayoutParams params)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#canScrollHorizontally(int)">canScrollHorizontally</a></span>(int direction)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#getAvailableScrollDelta(int)">getAvailableScrollDelta</a></span>(int direction)</nobr>
-        
+
         <div class="jd-descrdiv">
           Indicates how far the container may be vertically scrolled in the given direction.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#getCardGravity()">getCardGravity</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           Returns the current layout gravity for contained card frame.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#getExpansionDirection()">getExpansionDirection</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           Returns the current expansion direction for the contained CardFrame.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#getExpansionFactor()">getExpansionFactor</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           Returns the current expansion factor for the contained CardFrame.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#isExpansionEnabled()">isExpansionEnabled</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           Indicates if expansion is enabled.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#onApplyWindowInsets(android.view.WindowInsets)">onApplyWindowInsets</a></span>(WindowInsets insets)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#setCardGravity(int)">setCardGravity</a></span>(int gravity)</nobr>
-        
+
         <div class="jd-descrdiv">
           Applies gravity to adjust the vertical alignment of the contained card frame when it's
  shorter than the containing view.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#setExpansionDirection(int)">setExpansionDirection</a></span>(int direction)</nobr>
-        
+
         <div class="jd-descrdiv">
           Control which direction expansion occurs.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#setExpansionEnabled(boolean)">setExpansionEnabled</a></span>(boolean enableExpansion)</nobr>
-        
+
         <div class="jd-descrdiv">
           Whether the height of the card is permitted to increase beyond the card layout bounds.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#setExpansionFactor(float)">setExpansionFactor</a></span>(float expansionFactor)</nobr>
-        
+
         <div class="jd-descrdiv">
           Changes the expansion factor for the contained CardFrame.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
@@ -3048,67 +3163,67 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#onAttachedToWindow()">onAttachedToWindow</a></span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#onFinishInflate()">onFinishInflate</a></span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#onLayout(boolean, int, int, int, int)">onLayout</a></span>(boolean changed, int left, int top, int right, int bottom)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html#onMeasure(int, int)">onMeasure</a></span>(int widthMeasureSpec, int heightMeasureSpec)</nobr>
-        
+
   </td></tr>
 
 
@@ -3129,7 +3244,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.widget.FrameLayout" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.widget.FrameLayout-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3141,454 +3256,198 @@
   </div>
   <div id="inherited-methods-android.widget.FrameLayout-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">draw</span>(Canvas arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">drawableStateChanged</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">gatherTransparentRegion</span>(Region arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateDefaultLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(AttributeSet arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getConsiderGoneChildrenWhenMeasuring</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            Drawable</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForeground</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundGravity</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            ColorStateList</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundTintList</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            PorterDuff.Mode</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundTintMode</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasureAllChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMeasureAllChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setVisibility</span>(int arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">shouldDelayChildPressedState</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
-        
   </td></tr>
 
 
@@ -3615,2598 +3474,2647 @@
   </div>
   <div id="inherited-methods-android.view.ViewGroup-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addStatesFromChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addViewInLayout</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addViewInLayout</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">attachLayoutAnimationParameters</span>(View arg0, ViewGroup.LayoutParams arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">attachViewToParent</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringChildToFront</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canAnimate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+
         <span class="sympad">checkLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childDrawableStateChanged</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childHasTransientStateChanged</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cleanupLayoutState</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearChildFocus</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearDisappearingChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">debug</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachAllViewsFromParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewFromParent</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewFromParent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewsFromParent</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchFreezeSelfOnly</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchThawSelfOnly</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawChild</span>(Canvas arg0, View arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableStateChanged</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">endViewTransition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusableViewAvailable</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">gatherTransparentRegion</span>(Region arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateDefaultLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(AttributeSet arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildAt</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildCount</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildDrawingOrder</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildMeasureSpec</span>(int arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildStaticTransformation</span>(View arg0, Transformation arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildVisibleRect</span>(View arg0, Rect arg1, Point arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipToPadding</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDescendantFocusability</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusedChild</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             LayoutAnimationController</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Animation.AnimationListener</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutAnimationListener</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             LayoutTransition</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutTransition</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNestedScrollAxes</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOverlay</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverlay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPersistentDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchscreenBlocksFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasTransientState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">indexOfChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChild</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChildInParent</span>(int[] arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAlwaysDrawnWithCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAnimationCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isChildrenDrawingOrderEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isChildrenDrawnWithCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isMotionEventSplittingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTransitionGroup</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChild</span>(View arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChildWithMargins</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChildren</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifySubtreeAccessibilityStateChanged</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetDescendantRectToMyCoords</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetRectIntoDescendantCoords</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationEnd</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationStart</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedFling</span>(View arg0, float arg1, float arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreFling</span>(View arg0, float arg1, float arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPrePerformAccessibilityAction</span>(View arg0, int arg1, Bundle arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreScroll</span>(View arg0, int arg1, int arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScroll</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScrollAccepted</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRequestFocusInDescendants</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRequestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartNestedScroll</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStopNestedScroll</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewAdded</span>(View arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewRemoved</span>(View arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeAllViews</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeAllViewsInLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeDetachedView</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewAt</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewInLayout</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViews</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewsInLayout</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestTransparentRegion</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAddStatesFromChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAlwaysDrawnWithCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAnimationCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawingCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawingOrderEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawnWithCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToPadding</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDescendantFocusability</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutAnimation</span>(LayoutAnimationController arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutAnimationListener</span>(Animation.AnimationListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutMode</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutTransition</span>(LayoutTransition arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMotionEventSplittingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnHierarchyChangeListener</span>(ViewGroup.OnHierarchyChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPersistentDrawingCache</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setStaticTransformationsEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTouchscreenBlocksFocus</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTransitionGroup</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">shouldDelayChildPressedState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenuForChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startViewTransition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -6221,7 +6129,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -6233,7718 +6141,8102 @@
   </div>
   <div id="inherited-methods-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewPropertyAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">animate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">announceForAccessibility</span>(CharSequence arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>(int arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringToFront</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildDrawingCache</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildLayer</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">callOnClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canScrollHorizontally</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canScrollVertically</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cancelLongPress</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cancelPendingInputEvents</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkInputConnectionProxy</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">combineMeasuredStates</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeSystemWindowInsets</span>(WindowInsets arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             AccessibilityNodeInfo</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createAccessibilityNodeInfo</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">destroyDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericMotionEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedFling</span>(float arg0, float arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPreFling</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPrePerformAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPreScroll</span>(int arg0, int arg1, int[] arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedScroll</span>(int arg0, int arg1, int arg2, int arg3, int[] arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">draw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableStateChanged</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewById</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewWithTag</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">fitSystemWindows</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">forceLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateViewId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityLiveRegion</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             AccessibilityNodeProvider</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityNodeProvider</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityTraversalAfter</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityTraversalBefore</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAlpha</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Animation</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             IBinder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getApplicationWindowToken</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Drawable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackground</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ColorStateList</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackgroundTintList</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             PorterDuff.Mode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackgroundTintMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBaseline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottom</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottomFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottomPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getCameraDistance</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Rect</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipBounds</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipToOutline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             CharSequence</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContentDescription</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             Context</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContext</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ContextMenu.ContextMenuInfo</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContextMenuInfo</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDefaultSize</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Display</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDisplay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawableState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Bitmap</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCache</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Bitmap</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCacheBackgroundColor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCacheQuality</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             long</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingTime</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getElevation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFilterTouchesWhenObscured</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFitsSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ArrayList&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusables</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusedRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getGlobalVisibleRect</span>(Rect arg0, Point arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getGlobalVisibleRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Handler</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHandler</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHitRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHorizontalFadingEdgeLength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHorizontalScrollbarHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getImportantForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getKeepScreenOn</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             KeyEvent.DispatcherState</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getKeyDispatcherState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLabelFor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayerType</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeft</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeftFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeftPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocalVisibleRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocationInWindow</span>(int[] arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocationOnScreen</span>(int[] arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Matrix</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMatrix</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredHeightAndState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredWidthAndState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMinimumHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMinimumWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusDownId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusForwardId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusLeftId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusRightId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusUpId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View.OnFocusChangeListener</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOnFocusChangeListener</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOutlineProvider</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOutlineProvider</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverScrollMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOverlay</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverlay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingBottom</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingEnd</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingLeft</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingRight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingStart</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingTop</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParentForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPivotX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPivotY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Resources</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getResources</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRightFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRightPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRootView</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotationX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotationY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScaleX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScaleY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarDefaultDelayBeforeFade</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarFadeDuration</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarSize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarStyle</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSolidColor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             StateListAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getStateListAnimator</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSuggestedMinimumHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSuggestedMinimumWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSystemUiVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTag</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTag</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTop</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTopFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTopPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             TouchDelegate</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchDelegate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ArrayList&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchables</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTransitionName</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationZ</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalFadingEdgeLength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalScrollbarPosition</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalScrollbarWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewTreeObserver</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getViewTreeObserver</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowAttachCount</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowId</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowSystemUiVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             IBinder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowToken</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowVisibleDisplayFrame</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getZ</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasNestedScrollingParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasOnClickListeners</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasOverlappingRendering</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasTransientState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasWindowFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">inflate</span>(Context arg0, int arg1, ViewGroup arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateOutline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAccessibilityFocused</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isActivated</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isClickable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDirty</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDrawingCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDuplicateParentStateEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocusableInTouchMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocused</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHapticFeedbackEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHardwareAccelerated</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHorizontalFadingEdgeEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHorizontalScrollBarEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHovered</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isImportantForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInEditMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInTouchMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLaidOut</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutRequested</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLongClickable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isNestedScrollingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isOpaque</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPaddingOffsetRequired</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPaddingRelative</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPressed</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSaveEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSaveFromParentEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isScrollContainer</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isScrollbarFadingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSelected</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isShown</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSoundEffectsEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextAlignmentResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isVerticalFadingEdgeEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isVerticalScrollBarEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">mergeDrawableStates</span>(int[] arg0, int[] arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetLeftAndRight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetTopAndBottom</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAnimationEnd</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAnimationStart</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCancelPendingInputEvents</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCheckIsTextEditor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             InputConnection</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateInputConnection</span>(EditorInfo arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDrawScrollBars</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFilterTouchEventForSecurity</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFinishInflate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFinishTemporaryDetach</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFocusChanged</span>(boolean arg0, int arg1, Rect arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onGenericMotionEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onHoverChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyPreIme</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyShortcut</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onOverScrolled</span>(int arg0, int arg1, boolean arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRtlPropertiesChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Parcelable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSaveInstanceState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onScreenStateChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onScrollChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSetAlpha</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartTemporaryDetach</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">overScrollBy</span>(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, boolean arg8)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performHapticFeedback</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performHapticFeedback</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performLongClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">playSoundEffect</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">post</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postDelayed</span>(Runnable arg0, long arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateDelayed</span>(long arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateDelayed</span>(long arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateOnAnimation</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateOnAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postOnAnimation</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postOnAnimationDelayed</span>(Runnable arg0, long arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">refreshDrawableState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeCallbacks</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestApplyInsets</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFitSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocusFromTouch</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestRectangleOnScreen</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestRectangleOnScreen</span>(Rect arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestUnbufferedDispatch</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">resolveSize</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">resolveSizeAndState</span>(int arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">restoreHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">saveHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollBy</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollTo</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityDelegate</span>(View.AccessibilityDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityLiveRegion</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityTraversalAfter</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityTraversalBefore</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAlpha</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAnimation</span>(Animation arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackground</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundColor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundResource</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundTintList</span>(ColorStateList arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBottom</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setCameraDistance</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClickable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipBounds</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToOutline</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setContentDescription</span>(CharSequence arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheQuality</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDuplicateParentStateEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setElevation</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFadingEdgeLength</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFilterTouchesWhenObscured</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFitsSystemWindows</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFocusable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFocusableInTouchMode</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHasTransientState</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHorizontalFadingEdgeEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHorizontalScrollBarEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHovered</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setImportantForAccessibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setKeepScreenOn</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLabelFor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayerPaint</span>(Paint arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayerType</span>(int arg0, Paint arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutDirection</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLeft</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLongClickable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMeasuredDimension</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMinimumHeight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMinimumWidth</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNestedScrollingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusDownId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusForwardId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusLeftId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusRightId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusUpId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnApplyWindowInsetsListener</span>(View.OnApplyWindowInsetsListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnClickListener</span>(View.OnClickListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnCreateContextMenuListener</span>(View.OnCreateContextMenuListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnDragListener</span>(View.OnDragListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnFocusChangeListener</span>(View.OnFocusChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnGenericMotionListener</span>(View.OnGenericMotionListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnHoverListener</span>(View.OnHoverListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnKeyListener</span>(View.OnKeyListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnLongClickListener</span>(View.OnLongClickListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOutlineProvider</span>(ViewOutlineProvider arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOverScrollMode</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPadding</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPaddingRelative</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPivotX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPivotY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotation</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotationX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotationY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSaveEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSaveFromParentEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScaleX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScaleY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarDefaultDelayBeforeFade</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarFadeDuration</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarSize</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarStyle</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollContainer</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollY</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollbarFadingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSoundEffectsEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setStateListAnimator</span>(StateListAnimator arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSystemUiVisibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTag</span>(int arg0, Object arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTag</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTextAlignment</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTextDirection</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTop</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTouchDelegate</span>(TouchDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTransitionName</span>(String arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationZ</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalFadingEdgeEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalScrollBarEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalScrollbarPosition</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVisibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setWillNotCacheDrawing</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setWillNotDraw</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setZ</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenu</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionMode</span>(ActionMode.Callback arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startAnimation</span>(Animation arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startDrag</span>(ClipData arg0, View.DragShadowBuilder arg1, Object arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startNestedScroll</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">stopNestedScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">toString</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">willNotCacheDrawing</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">willNotDraw</span>()</nobr>
-        
+
   </td></tr>
 
 
@@ -13959,7 +14251,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -13971,182 +14263,182 @@
   </div>
   <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clone</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">equals</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">finalize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             Class&lt;?&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClass</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hashCode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notify</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifyAll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">toString</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>(long arg0)</nobr>
-        
+
   </td></tr>
 
 
@@ -14161,7 +14453,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewParent-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14173,662 +14465,678 @@
   </div>
   <div id="inherited-methods-android.view.ViewParent-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringChildToFront</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childDrawableStateChanged</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childHasTransientStateChanged</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearChildFocus</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusableViewAvailable</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildVisibleRect</span>(View arg0, Rect arg1, Point arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParentForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChild</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChildInParent</span>(int[] arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutRequested</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextAlignmentResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifySubtreeAccessibilityStateChanged</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedFling</span>(View arg0, float arg1, float arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreFling</span>(View arg0, float arg1, float arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPrePerformAccessibilityAction</span>(View arg0, int arg1, Bundle arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreScroll</span>(View arg0, int arg1, int arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScroll</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScrollAccepted</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartNestedScroll</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStopNestedScroll</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFitSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestTransparentRegion</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenuForChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14843,7 +15151,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewManager-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14855,54 +15163,54 @@
   </div>
   <div id="inherited-methods-android.view.ViewManager-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14917,7 +15225,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14929,54 +15237,54 @@
   </div>
   <div id="inherited-methods-android.graphics.drawable.Drawable.Callback-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14991,7 +15299,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -15003,70 +15311,70 @@
   </div>
   <div id="inherited-methods-android.view.KeyEvent.Callback-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -15081,7 +15389,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -15093,38 +15401,38 @@
   </div>
   <div id="inherited-methods-android.view.accessibility.AccessibilityEventSource-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
@@ -15170,30 +15478,30 @@
 
 <A NAME="CardScrollView(android.content.Context)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">CardScrollView</span>
       <span class="normal">(Context context)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15202,30 +15510,30 @@
 
 <A NAME="CardScrollView(android.content.Context, android.util.AttributeSet)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">CardScrollView</span>
       <span class="normal">(Context context, AttributeSet attrs)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15249,14 +15557,14 @@
 
 <A NAME="addView(android.view.View, int, android.view.ViewGroup.LayoutParams)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">addView</span>
@@ -15264,15 +15572,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15281,14 +15589,14 @@
 
 <A NAME="canScrollHorizontally(int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         boolean
       </span>
       <span class="sympad">canScrollHorizontally</span>
@@ -15296,15 +15604,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15313,14 +15621,14 @@
 
 <A NAME="getAvailableScrollDelta(int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         int
       </span>
       <span class="sympad">getAvailableScrollDelta</span>
@@ -15328,15 +15636,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Indicates how far the container may be vertically scrolled in the given direction.
  <p>
  When providing a positive direction value, the return value indicates the available increase
@@ -15360,14 +15668,14 @@
 
 <A NAME="getCardGravity()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         int
       </span>
       <span class="sympad">getCardGravity</span>
@@ -15375,15 +15683,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Returns the current layout gravity for contained card frame.</p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">See Also</h5>
@@ -15397,14 +15705,14 @@
 
 <A NAME="getExpansionDirection()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         int
       </span>
       <span class="sympad">getExpansionDirection</span>
@@ -15412,15 +15720,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Returns the current expansion direction for the contained CardFrame.</p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">See Also</h5>
@@ -15434,14 +15742,14 @@
 
 <A NAME="getExpansionFactor()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         float
       </span>
       <span class="sympad">getExpansionFactor</span>
@@ -15449,15 +15757,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Returns the current expansion factor for the contained CardFrame.</p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">See Also</h5>
@@ -15471,14 +15779,14 @@
 
 <A NAME="isExpansionEnabled()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         boolean
       </span>
       <span class="sympad">isExpansionEnabled</span>
@@ -15486,15 +15794,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Indicates if expansion is enabled.</p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">See Also</h5>
@@ -15508,14 +15816,14 @@
 
 <A NAME="onApplyWindowInsets(android.view.WindowInsets)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         WindowInsets
       </span>
       <span class="sympad">onApplyWindowInsets</span>
@@ -15523,15 +15831,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15540,14 +15848,14 @@
 
 <A NAME="setCardGravity(int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setCardGravity</span>
@@ -15555,15 +15863,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Applies gravity to adjust the vertical alignment of the contained card frame when it's
  shorter than the containing view.
  <p>
@@ -15576,14 +15884,14 @@
 
 <A NAME="setExpansionDirection(int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setExpansionDirection</span>
@@ -15591,15 +15899,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Control which direction expansion occurs. When content is taller than this container, this
  edge will fade to indicate expansion is possible. If expansion is disabled, this edge will
  simply be clipped. If the card is smaller than this layout, this setting has no effect.</p></div>
@@ -15620,14 +15928,14 @@
 
 <A NAME="setExpansionEnabled(boolean)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setExpansionEnabled</span>
@@ -15635,15 +15943,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Whether the height of the card is permitted to increase beyond the card layout bounds. If
  enabled, content will expand the card up to the current expansion level. If taller, a fading
  edge will indicate that more expansion is possible.</p></div>
@@ -15668,14 +15976,14 @@
 
 <A NAME="setExpansionFactor(float)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setExpansionFactor</span>
@@ -15683,15 +15991,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Changes the expansion factor for the contained CardFrame.</p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">See Also</h5>
@@ -15714,14 +16022,14 @@
 
 <A NAME="onAttachedToWindow()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         void
       </span>
       <span class="sympad">onAttachedToWindow</span>
@@ -15729,15 +16037,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15746,14 +16054,14 @@
 
 <A NAME="onFinishInflate()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         void
       </span>
       <span class="sympad">onFinishInflate</span>
@@ -15761,15 +16069,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15778,14 +16086,14 @@
 
 <A NAME="onLayout(boolean, int, int, int, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         void
       </span>
       <span class="sympad">onLayout</span>
@@ -15793,15 +16101,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15810,14 +16118,14 @@
 
 <A NAME="onMeasure(int, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         void
       </span>
       <span class="sympad">onMeasure</span>
@@ -15825,15 +16133,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15869,22 +16177,22 @@
 
     <hr class="dac-footer-separator"/>
 
-    
+
       <p class="dac-footer-copyright">
-        
+
   Except as noted, this content is licensed under <a
   href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
   For details and restrictions, see the <a href="../../../../../license.html">
   Content License</a>.
       </p>
       <p class="dac-footer-build">
-        
-    Android Wearable Support&nbsp;r &mdash; 
+
+    Android Wearable Support&nbsp;r &mdash;
 <script src="../../../../../timestamp.js" type="text/javascript"></script>
 <script>document.write(BUILD_TIMESTAMP)</script>
 
       </p>
-    
+
 
     <p class="dac-footer-links">
       <a href="/about/index.html">About Android</a>
@@ -16026,8 +16334,8 @@
 
 </div><!-- end doc-content -->
 
-</div> <!-- end .cols --> 
-</div> <!-- end body-content --> 
+</div> <!-- end .cols -->
+</div> <!-- end body-content -->
 
 
 
diff --git a/docs/html/reference/android/support/wearable/view/CircledImageView.html b/docs/html/reference/android/support/wearable/view/CircledImageView.html
index a2ba3f7..320c517 100644
--- a/docs/html/reference/android/support/wearable/view/CircledImageView.html
+++ b/docs/html/reference/android/support/wearable/view/CircledImageView.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -722,7 +729,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
           ><img id="subclasses-direct-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Direct Subclasses
 
   <div id="subclasses-direct">
@@ -822,7 +829,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1448,6 +1455,78 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1568,7 +1647,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1580,6 +1659,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1590,7 +1681,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
@@ -1602,7 +1693,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
@@ -1614,7 +1705,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1626,7 +1717,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
@@ -1638,7 +1729,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1650,7 +1741,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1662,7 +1753,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1674,7 +1765,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1686,7 +1777,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1698,7 +1789,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
@@ -1710,8 +1801,32 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1722,7 +1837,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
@@ -1734,7 +1849,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
@@ -1746,7 +1861,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1758,7 +1873,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
@@ -1770,7 +1885,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1815,7 +1930,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -2656,42 +2771,10 @@
             
             
             
-            long</nobr>
+            float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getColorChangeAnimationDuration()">getColorChangeAnimationDuration</a></span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getDefaultCircleColor()">getDefaultCircleColor</a></span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            Drawable</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getImageDrawable()">getImageDrawable</a></span>()</nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getCircleRadiusPercent()">getCircleRadiusPercent</a></span>()</nobr>
         
   </td></tr>
 
@@ -2707,7 +2790,7 @@
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getInitialCircleRadius()">getInitialCircleRadius</a></span>()</nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getCircleRadiusPressed()">getCircleRadiusPressed</a></span>()</nobr>
         
   </td></tr>
 
@@ -2720,6 +2803,86 @@
             
             
             
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getCircleRadiusPressedPercent()">getCircleRadiusPressedPercent</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            long</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getColorChangeAnimationDuration()">getColorChangeAnimationDuration</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getDefaultCircleColor()">getDefaultCircleColor</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getImageDrawable()">getImageDrawable</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getInitialCircleRadius()">getInitialCircleRadius</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -2729,7 +2892,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2752,7 +2915,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2768,7 +2931,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2784,7 +2947,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2800,7 +2963,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2816,6 +2979,29 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#setCircleRadiusPercent(float)">setCircleRadiusPercent</a></span>(float circleRadiusPercent)</nobr>
+        
+        <div class="jd-descrdiv">
+          Sets the radius of the circle to be a percentage of the largest dimension of the view.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -2842,13 +3028,37 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#setCircleRadiusPressedPercent(float)">setCircleRadiusPressedPercent</a></span>(float circleRadiusPressedPercent)</nobr>
+        
+        <div class="jd-descrdiv">
+          Sets the radius of the circle to be a percentage of the largest dimension of the view when
+ pressed.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#setColorChangeAnimationDuration(long)">setColorChangeAnimationDuration</a></span>(long mColorChangeAnimationDurationMs)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2864,7 +3074,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2880,7 +3090,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2896,7 +3106,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2912,7 +3122,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2928,7 +3138,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2944,7 +3154,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2960,7 +3170,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2983,7 +3193,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3129,7 +3339,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4067,7 +4277,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -4083,13 +4293,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4105,7 +4331,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4121,7 +4347,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4137,7 +4363,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4153,7 +4379,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4169,7 +4395,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4185,7 +4411,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4201,7 +4427,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4217,7 +4443,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4233,7 +4459,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4249,7 +4475,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4265,7 +4491,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4281,7 +4507,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4297,7 +4523,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4313,7 +4539,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4329,7 +4555,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4345,7 +4571,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4361,7 +4587,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4377,7 +4603,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4393,7 +4619,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4409,7 +4635,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4425,7 +4651,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4441,6 +4667,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4701,6 +4943,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -4713,7 +4971,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4729,7 +4987,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4745,7 +5003,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4761,7 +5019,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4777,7 +5035,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4793,7 +5051,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4809,7 +5067,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4825,7 +5083,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4841,7 +5099,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4857,7 +5115,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4873,7 +5131,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4889,7 +5147,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4905,7 +5163,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4921,7 +5179,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4937,7 +5195,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4953,7 +5211,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4969,7 +5227,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4985,6 +5243,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4992,6 +5266,54 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -5001,7 +5323,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5017,7 +5339,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5033,7 +5355,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5049,7 +5371,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5065,7 +5387,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5081,7 +5403,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5097,7 +5419,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5113,7 +5435,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5129,7 +5451,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5145,7 +5467,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5161,7 +5483,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5177,7 +5499,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5193,7 +5515,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5209,7 +5531,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5225,7 +5547,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5241,7 +5563,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5257,7 +5579,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5273,7 +5595,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5289,7 +5611,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5305,7 +5627,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5321,7 +5643,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5337,7 +5659,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5353,7 +5675,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5369,7 +5691,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5385,7 +5707,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5401,7 +5723,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5417,7 +5739,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5433,7 +5755,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5449,7 +5771,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5465,7 +5787,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5481,7 +5803,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5497,7 +5819,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5513,7 +5835,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5529,7 +5851,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5545,7 +5867,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5561,7 +5883,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5577,7 +5899,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5593,7 +5915,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5609,7 +5931,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5625,7 +5947,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5641,7 +5963,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5657,7 +5979,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5673,7 +5995,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5689,7 +6011,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5705,7 +6027,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5721,7 +6043,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5737,7 +6059,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5753,7 +6075,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5769,7 +6091,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5785,7 +6107,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5801,7 +6123,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5817,7 +6139,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5833,6 +6155,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5981,6 +6319,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -5993,7 +6347,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6009,7 +6363,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6025,7 +6379,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6041,7 +6395,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6057,7 +6411,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6073,7 +6427,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6089,7 +6443,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6105,7 +6459,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6121,7 +6475,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6137,7 +6491,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6153,7 +6507,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6169,7 +6523,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6185,7 +6539,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6201,7 +6555,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6217,7 +6571,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6233,7 +6587,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6249,7 +6603,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6265,7 +6619,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6281,7 +6635,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6297,7 +6651,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6313,7 +6667,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6329,7 +6683,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6345,7 +6699,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6361,7 +6715,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6377,7 +6731,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6393,7 +6747,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6409,7 +6763,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6425,7 +6779,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6441,7 +6795,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6457,7 +6811,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6473,7 +6827,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6489,7 +6843,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6505,7 +6859,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6521,7 +6875,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6537,7 +6891,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6553,7 +6907,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6569,7 +6923,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6585,7 +6939,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6601,7 +6955,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6617,7 +6971,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6633,7 +6987,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6649,7 +7003,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6665,7 +7019,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6681,7 +7035,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6697,7 +7051,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6713,7 +7067,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6729,7 +7083,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6745,7 +7099,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6761,7 +7115,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6777,7 +7131,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6793,7 +7147,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6809,6 +7163,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7709,6 +8079,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -7721,7 +8107,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7737,7 +8123,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7753,7 +8139,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7769,7 +8155,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7785,7 +8171,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7801,7 +8187,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7817,7 +8203,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7833,7 +8219,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7849,7 +8235,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7865,7 +8251,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7881,7 +8267,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7897,7 +8283,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7913,7 +8299,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7929,7 +8315,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7945,7 +8331,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7961,7 +8347,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7977,7 +8363,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7993,7 +8379,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8009,7 +8395,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8025,6 +8411,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -8035,13 +8437,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8057,7 +8475,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8073,7 +8491,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8089,7 +8507,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8105,7 +8523,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8121,7 +8539,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8137,7 +8555,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8153,7 +8571,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8169,7 +8587,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8185,7 +8603,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8201,7 +8619,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8217,7 +8635,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8233,7 +8651,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8249,7 +8667,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8265,7 +8683,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8281,7 +8699,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8297,6 +8715,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9203,7 +9637,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
         
   </td></tr>
 
@@ -9219,13 +9653,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9241,7 +9691,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9257,7 +9707,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9273,7 +9723,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9289,7 +9739,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9305,7 +9755,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9321,7 +9771,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9337,7 +9787,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9353,7 +9803,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9369,6 +9819,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9379,13 +9845,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9401,7 +9915,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9417,7 +9931,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9433,7 +9947,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9449,7 +9963,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9465,7 +9979,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9481,7 +9995,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9497,7 +10011,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9513,7 +10027,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9529,7 +10043,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9545,7 +10059,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9561,7 +10075,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9577,7 +10091,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9593,7 +10107,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9609,7 +10123,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9625,7 +10139,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9641,7 +10155,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9657,7 +10171,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9673,7 +10187,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9689,7 +10203,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9705,7 +10219,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9721,7 +10235,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9737,7 +10251,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9753,7 +10267,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9769,7 +10283,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9785,6 +10299,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9907,7 +10437,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
         
   </td></tr>
 
@@ -9923,13 +10453,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9945,7 +10491,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9961,7 +10507,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9977,7 +10523,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9993,7 +10539,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10009,7 +10555,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10025,7 +10571,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10041,7 +10587,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10057,7 +10603,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10073,7 +10619,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10089,7 +10635,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10105,7 +10651,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10121,7 +10667,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10137,7 +10683,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10153,7 +10699,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10169,7 +10715,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10185,7 +10731,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10201,7 +10747,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10217,7 +10763,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10233,7 +10779,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10249,6 +10795,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10259,13 +10821,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10281,7 +10859,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10297,7 +10875,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10313,7 +10891,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10329,7 +10907,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10345,7 +10923,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10361,7 +10939,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10377,7 +10955,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10393,7 +10971,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10409,7 +10987,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10425,7 +11003,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10441,7 +11019,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10457,7 +11035,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10473,7 +11051,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10489,7 +11067,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10505,7 +11083,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10521,7 +11099,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10537,7 +11115,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10553,7 +11131,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10569,7 +11147,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10585,7 +11163,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10601,7 +11179,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10617,7 +11195,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10633,7 +11211,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10649,7 +11227,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10665,7 +11243,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10681,6 +11259,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10867,7 +11461,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -11069,7 +11663,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11143,7 +11737,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11233,7 +11827,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11495,6 +12089,102 @@
 </div>
 
 
+<A NAME="getCircleRadiusPercent()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        float
+      </span>
+      <span class="sympad">getCircleRadiusPercent</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="getCircleRadiusPressed()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        float
+      </span>
+      <span class="sympad">getCircleRadiusPressed</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="getCircleRadiusPressedPercent()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        float
+      </span>
+      <span class="sympad">getCircleRadiusPressedPercent</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
 <A NAME="getColorChangeAnimationDuration()"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -11830,6 +12520,48 @@
 </div>
 
 
+<A NAME="setCircleRadiusPercent(float)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">setCircleRadiusPercent</span>
+      <span class="normal">(float circleRadiusPercent)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Sets the radius of the circle to be a percentage of the largest dimension of the view.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>circleRadiusPercent</td>
+          <td>A <code>float</code> from 0 to 1 representing the radius percentage.
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
 <A NAME="setCircleRadiusPressed(float)"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -11862,6 +12594,50 @@
 </div>
 
 
+<A NAME="setCircleRadiusPressedPercent(float)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">setCircleRadiusPressedPercent</span>
+      <span class="normal">(float circleRadiusPressedPercent)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Sets the radius of the circle to be a percentage of the largest dimension of the view when
+ pressed.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>circleRadiusPressedPercent</td>
+          <td>A <code>float</code> from 0 to 1 representing the radius
+                                   percentage.
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
 <A NAME="setColorChangeAnimationDuration(long)"></A>
 
 <div class="jd-details api apilevel-"> 
diff --git a/docs/html/reference/android/support/wearable/view/CircularButton.html b/docs/html/reference/android/support/wearable/view/CircularButton.html
index ff626ce..30c0a43 100644
--- a/docs/html/reference/android/support/wearable/view/CircularButton.html
+++ b/docs/html/reference/android/support/wearable/view/CircularButton.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -818,7 +825,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1444,6 +1451,78 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1564,7 +1643,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1576,6 +1655,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1586,7 +1677,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
@@ -1598,7 +1689,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
@@ -1610,7 +1701,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1622,7 +1713,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
@@ -1634,7 +1725,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1646,7 +1737,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1658,7 +1749,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1670,7 +1761,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1682,7 +1773,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1694,7 +1785,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
@@ -1706,8 +1797,32 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1718,7 +1833,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
@@ -1730,7 +1845,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
@@ -1742,7 +1857,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1754,7 +1869,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
@@ -1766,7 +1881,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1811,7 +1926,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -2961,7 +3076,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3899,7 +4014,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -3915,13 +4030,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3937,7 +4068,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3953,7 +4084,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3969,7 +4100,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3985,7 +4116,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4001,7 +4132,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4017,7 +4148,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4033,7 +4164,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4049,7 +4180,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4065,7 +4196,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4081,7 +4212,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4097,7 +4228,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4113,7 +4244,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4129,7 +4260,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4145,7 +4276,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4161,7 +4292,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4177,7 +4308,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4193,7 +4324,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4209,7 +4340,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4225,7 +4356,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4241,7 +4372,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4257,7 +4388,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4273,6 +4404,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4533,6 +4680,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -4545,7 +4708,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4561,7 +4724,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4577,7 +4740,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4593,7 +4756,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4609,7 +4772,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4625,7 +4788,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4641,7 +4804,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4657,7 +4820,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4673,7 +4836,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4689,7 +4852,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4705,7 +4868,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4721,7 +4884,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4737,7 +4900,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4753,7 +4916,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4769,7 +4932,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4785,7 +4948,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4801,7 +4964,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4817,6 +4980,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4824,6 +5003,54 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -4833,7 +5060,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4849,7 +5076,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4865,7 +5092,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4881,7 +5108,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4897,7 +5124,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4913,7 +5140,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4929,7 +5156,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4945,7 +5172,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4961,7 +5188,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4977,7 +5204,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4993,7 +5220,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5009,7 +5236,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5025,7 +5252,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5041,7 +5268,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5057,7 +5284,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5073,7 +5300,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5089,7 +5316,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5105,7 +5332,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5121,7 +5348,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5137,7 +5364,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5153,7 +5380,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5169,7 +5396,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5185,7 +5412,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5201,7 +5428,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5217,7 +5444,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5233,7 +5460,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5249,7 +5476,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5265,7 +5492,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5281,7 +5508,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5297,7 +5524,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5313,7 +5540,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5329,7 +5556,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5345,7 +5572,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5361,7 +5588,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5377,7 +5604,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5393,7 +5620,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5409,7 +5636,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5425,7 +5652,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5441,7 +5668,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5457,7 +5684,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5473,7 +5700,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5489,7 +5716,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5505,7 +5732,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5521,7 +5748,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5537,7 +5764,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5553,7 +5780,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5569,7 +5796,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5585,7 +5812,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5601,7 +5828,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5617,7 +5844,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5633,7 +5860,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5649,7 +5876,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5665,6 +5892,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5813,6 +6056,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -5825,7 +6084,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5841,7 +6100,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5857,7 +6116,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5873,7 +6132,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5889,7 +6148,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5905,7 +6164,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5921,7 +6180,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5937,7 +6196,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5953,7 +6212,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5969,7 +6228,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5985,7 +6244,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6001,7 +6260,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6017,7 +6276,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6033,7 +6292,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6049,7 +6308,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6065,7 +6324,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6081,7 +6340,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6097,7 +6356,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6113,7 +6372,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6129,7 +6388,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6145,7 +6404,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6161,7 +6420,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6177,7 +6436,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6193,7 +6452,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6209,7 +6468,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6225,7 +6484,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6241,7 +6500,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6257,7 +6516,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6273,7 +6532,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6289,7 +6548,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6305,7 +6564,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6321,7 +6580,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6337,7 +6596,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6353,7 +6612,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6369,7 +6628,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6385,7 +6644,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6401,7 +6660,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6417,7 +6676,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6433,7 +6692,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6449,7 +6708,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6465,7 +6724,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6481,7 +6740,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6497,7 +6756,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6513,7 +6772,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6529,7 +6788,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6545,7 +6804,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6561,7 +6820,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6577,7 +6836,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6593,7 +6852,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6609,7 +6868,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6625,7 +6884,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6641,6 +6900,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7541,6 +7816,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -7553,7 +7844,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7569,7 +7860,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7585,7 +7876,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7601,7 +7892,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7617,7 +7908,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7633,7 +7924,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7649,7 +7940,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7665,7 +7956,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7681,7 +7972,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7697,7 +7988,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7713,7 +8004,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7729,7 +8020,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7745,7 +8036,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7761,7 +8052,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7777,7 +8068,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7793,7 +8084,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7809,7 +8100,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7825,7 +8116,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7841,7 +8132,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7857,6 +8148,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7867,13 +8174,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7889,7 +8212,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7905,7 +8228,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7921,7 +8244,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7937,7 +8260,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7953,7 +8276,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7969,7 +8292,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7985,7 +8308,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8001,7 +8324,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8017,7 +8340,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8033,7 +8356,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8049,7 +8372,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8065,7 +8388,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8081,7 +8404,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8097,7 +8420,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8113,7 +8436,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8129,6 +8452,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9035,7 +9374,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
         
   </td></tr>
 
@@ -9051,13 +9390,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9073,7 +9428,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9089,7 +9444,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9105,7 +9460,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9121,7 +9476,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9137,7 +9492,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9153,7 +9508,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9169,7 +9524,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9185,7 +9540,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9201,6 +9556,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9211,13 +9582,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9233,7 +9652,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9249,7 +9668,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9265,7 +9684,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9281,7 +9700,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9297,7 +9716,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9313,7 +9732,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9329,7 +9748,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9345,7 +9764,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9361,7 +9780,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9377,7 +9796,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9393,7 +9812,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9409,7 +9828,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9425,7 +9844,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9441,7 +9860,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9457,7 +9876,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9473,7 +9892,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9489,7 +9908,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9505,7 +9924,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9521,7 +9940,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9537,7 +9956,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9553,7 +9972,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9569,7 +9988,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9585,7 +10004,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9601,7 +10020,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9617,6 +10036,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9739,7 +10174,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
         
   </td></tr>
 
@@ -9755,13 +10190,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9777,7 +10228,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9793,7 +10244,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9809,7 +10260,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9825,7 +10276,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9841,7 +10292,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9857,7 +10308,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9873,7 +10324,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9889,7 +10340,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9905,7 +10356,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9921,7 +10372,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9937,7 +10388,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9953,7 +10404,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9969,7 +10420,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9985,7 +10436,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10001,7 +10452,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10017,7 +10468,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10033,7 +10484,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10049,7 +10500,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10065,7 +10516,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10081,6 +10532,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10091,13 +10558,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10113,7 +10596,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10129,7 +10612,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10145,7 +10628,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10161,7 +10644,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10177,7 +10660,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10193,7 +10676,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10209,7 +10692,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10225,7 +10708,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10241,7 +10724,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10257,7 +10740,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10273,7 +10756,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10289,7 +10772,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10305,7 +10788,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10321,7 +10804,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10337,7 +10820,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10353,7 +10836,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10369,7 +10852,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10385,7 +10868,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10401,7 +10884,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10417,7 +10900,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10433,7 +10916,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10449,7 +10932,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10465,7 +10948,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10481,7 +10964,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10497,7 +10980,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10513,6 +10996,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10699,7 +11198,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -10901,7 +11400,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -10975,7 +11474,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11065,7 +11564,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/CrossfadeDrawable.html b/docs/html/reference/android/support/wearable/view/CrossfadeDrawable.html
index 176e532..70ae597 100644
--- a/docs/html/reference/android/support/wearable/view/CrossfadeDrawable.html
+++ b/docs/html/reference/android/support/wearable/view/CrossfadeDrawable.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -1256,7 +1263,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1631,10 +1638,10 @@
             
             
             
-            int</nobr>
+            void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getIntrinsicHeight</span>()</nobr>
+        <span class="sympad">getHotspotBounds</span>(Rect arg0)</nobr>
         
   </td></tr>
 
@@ -1650,12 +1657,44 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getIntrinsicHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getIntrinsicWidth</span>()</nobr>
         
   </td></tr>
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLayoutDirection</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -1858,7 +1897,7 @@
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">isStateful</span>()</nobr>
+        <span class="sympad">isFilterBitmap</span>()</nobr>
         
   </td></tr>
 
@@ -1868,6 +1907,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isStateful</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -1880,7 +1935,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1896,7 +1951,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1912,7 +1967,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1928,6 +1983,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onLayoutDirectionChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -2194,7 +2265,7 @@
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setLevel</span>(int arg0)</nobr>
+        <span class="sympad">setLayoutDirection</span>(int arg0)</nobr>
         
   </td></tr>
 
@@ -2204,6 +2275,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLevel</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             
             
             
@@ -2216,7 +2303,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2232,7 +2319,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2248,7 +2335,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2264,7 +2351,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2280,7 +2367,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2306,7 +2393,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2508,7 +2595,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html b/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html
index 459b683..620d30c 100644
--- a/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html
+++ b/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
diff --git a/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.html b/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.html
index 10e10b9..2e8a7c1 100644
--- a/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.html
+++ b/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -841,7 +848,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1467,6 +1474,78 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1587,7 +1666,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1599,6 +1678,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1609,7 +1700,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
@@ -1621,7 +1712,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
@@ -1633,7 +1724,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1645,7 +1736,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
@@ -1657,7 +1748,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1669,7 +1760,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1681,7 +1772,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1693,7 +1784,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1705,7 +1796,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1717,7 +1808,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
@@ -1729,8 +1820,32 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1741,7 +1856,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
@@ -1753,7 +1868,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
@@ -1765,7 +1880,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1777,7 +1892,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
@@ -1789,7 +1904,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1836,7 +1951,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -2812,7 +2927,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.view.CircledImageView" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.wearable.view.CircledImageView-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2883,42 +2998,10 @@
             
             
             
-            long</nobr>
+            float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getColorChangeAnimationDuration()">getColorChangeAnimationDuration</a></span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getDefaultCircleColor()">getDefaultCircleColor</a></span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            Drawable</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getImageDrawable()">getImageDrawable</a></span>()</nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getCircleRadiusPercent()">getCircleRadiusPercent</a></span>()</nobr>
         
   </td></tr>
 
@@ -2934,7 +3017,7 @@
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getInitialCircleRadius()">getInitialCircleRadius</a></span>()</nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getCircleRadiusPressed()">getCircleRadiusPressed</a></span>()</nobr>
         
   </td></tr>
 
@@ -2947,6 +3030,86 @@
             
             
             
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getCircleRadiusPressedPercent()">getCircleRadiusPressedPercent</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            long</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getColorChangeAnimationDuration()">getColorChangeAnimationDuration</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getDefaultCircleColor()">getDefaultCircleColor</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getImageDrawable()">getImageDrawable</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#getInitialCircleRadius()">getInitialCircleRadius</a></span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -2956,7 +3119,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2972,7 +3135,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2988,7 +3151,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3004,7 +3167,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3020,7 +3183,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3036,7 +3199,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3059,7 +3222,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3075,7 +3238,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3091,7 +3254,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3107,7 +3270,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3123,6 +3286,29 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#setCircleRadiusPercent(float)">setCircleRadiusPercent</a></span>(float circleRadiusPercent)</nobr>
+        
+        <div class="jd-descrdiv">
+          Sets the radius of the circle to be a percentage of the largest dimension of the view.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -3149,13 +3335,37 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#setCircleRadiusPressedPercent(float)">setCircleRadiusPressedPercent</a></span>(float circleRadiusPressedPercent)</nobr>
+        
+        <div class="jd-descrdiv">
+          Sets the radius of the circle to be a percentage of the largest dimension of the view when
+ pressed.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html#setColorChangeAnimationDuration(long)">setColorChangeAnimationDuration</a></span>(long mColorChangeAnimationDurationMs)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3171,7 +3381,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3187,7 +3397,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3203,7 +3413,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3219,7 +3429,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3235,7 +3445,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3251,7 +3461,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3267,7 +3477,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3290,7 +3500,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3323,7 +3533,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4261,7 +4471,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -4277,13 +4487,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4299,7 +4525,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4315,7 +4541,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4331,7 +4557,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4347,7 +4573,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4363,7 +4589,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4379,7 +4605,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4395,7 +4621,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4411,7 +4637,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4427,7 +4653,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4443,7 +4669,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4459,7 +4685,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4475,7 +4701,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4491,7 +4717,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4507,7 +4733,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4523,7 +4749,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4539,7 +4765,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4555,7 +4781,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4571,7 +4797,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4587,7 +4813,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4603,7 +4829,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4619,7 +4845,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4635,6 +4861,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4895,6 +5137,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -4907,7 +5165,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4923,7 +5181,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4939,7 +5197,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4955,7 +5213,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4971,7 +5229,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4987,7 +5245,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5003,7 +5261,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5019,7 +5277,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5035,7 +5293,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5051,7 +5309,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5067,7 +5325,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5083,7 +5341,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5099,7 +5357,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5115,7 +5373,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5131,7 +5389,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5147,7 +5405,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5163,7 +5421,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5179,6 +5437,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5186,6 +5460,54 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -5195,7 +5517,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5211,7 +5533,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5227,7 +5549,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5243,7 +5565,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5259,7 +5581,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5275,7 +5597,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5291,7 +5613,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5307,7 +5629,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5323,7 +5645,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5339,7 +5661,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5355,7 +5677,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5371,7 +5693,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5387,7 +5709,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5403,7 +5725,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5419,7 +5741,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5435,7 +5757,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5451,7 +5773,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5467,7 +5789,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5483,7 +5805,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5499,7 +5821,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5515,7 +5837,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5531,7 +5853,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5547,7 +5869,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5563,7 +5885,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5579,7 +5901,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5595,7 +5917,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5611,7 +5933,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5627,7 +5949,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5643,7 +5965,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5659,7 +5981,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5675,7 +5997,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5691,7 +6013,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5707,7 +6029,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5723,7 +6045,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5739,7 +6061,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5755,7 +6077,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5771,7 +6093,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5787,7 +6109,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5803,7 +6125,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5819,7 +6141,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5835,7 +6157,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5851,7 +6173,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5867,7 +6189,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5883,7 +6205,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5899,7 +6221,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5915,7 +6237,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5931,7 +6253,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5947,7 +6269,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5963,7 +6285,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5979,7 +6301,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5995,7 +6317,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6011,7 +6333,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6027,6 +6349,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -6175,6 +6513,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -6187,7 +6541,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6203,7 +6557,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6219,7 +6573,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6235,7 +6589,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6251,7 +6605,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6267,7 +6621,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6283,7 +6637,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6299,7 +6653,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6315,7 +6669,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6331,7 +6685,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6347,7 +6701,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6363,7 +6717,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6379,7 +6733,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6395,7 +6749,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6411,7 +6765,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6427,7 +6781,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6443,7 +6797,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6459,7 +6813,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6475,7 +6829,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6491,7 +6845,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6507,7 +6861,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6523,7 +6877,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6539,7 +6893,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6555,7 +6909,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6571,7 +6925,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6587,7 +6941,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6603,7 +6957,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6619,7 +6973,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6635,7 +6989,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6651,7 +7005,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6667,7 +7021,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6683,7 +7037,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6699,7 +7053,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6715,7 +7069,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6731,7 +7085,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6747,7 +7101,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6763,7 +7117,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6779,7 +7133,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6795,7 +7149,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6811,7 +7165,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6827,7 +7181,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6843,7 +7197,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6859,7 +7213,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6875,7 +7229,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6891,7 +7245,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6907,7 +7261,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6923,7 +7277,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6939,7 +7293,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6955,7 +7309,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6971,7 +7325,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6987,7 +7341,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7003,6 +7357,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7903,6 +8273,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -7915,7 +8301,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7931,7 +8317,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7947,7 +8333,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7963,7 +8349,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7979,7 +8365,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7995,7 +8381,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8011,7 +8397,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8027,7 +8413,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8043,7 +8429,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8059,7 +8445,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8075,7 +8461,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8091,7 +8477,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8107,7 +8493,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8123,7 +8509,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8139,7 +8525,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8155,7 +8541,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8171,7 +8557,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8187,7 +8573,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8203,7 +8589,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8219,6 +8605,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -8229,13 +8631,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8251,7 +8669,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8267,7 +8685,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8283,7 +8701,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8299,7 +8717,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8315,7 +8733,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8331,7 +8749,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8347,7 +8765,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8363,7 +8781,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8379,7 +8797,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8395,7 +8813,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8411,7 +8829,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8427,7 +8845,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8443,7 +8861,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8459,7 +8877,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8475,7 +8893,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8491,6 +8909,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9397,7 +9831,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
         
   </td></tr>
 
@@ -9413,13 +9847,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9435,7 +9885,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9451,7 +9901,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9467,7 +9917,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9483,7 +9933,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9499,7 +9949,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9515,7 +9965,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9531,7 +9981,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9547,7 +9997,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9563,6 +10013,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9573,13 +10039,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9595,7 +10109,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9611,7 +10125,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9627,7 +10141,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9643,7 +10157,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9659,7 +10173,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9675,7 +10189,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9691,7 +10205,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9707,7 +10221,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9723,7 +10237,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9739,7 +10253,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9755,7 +10269,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9771,7 +10285,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9787,7 +10301,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9803,7 +10317,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9819,7 +10333,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9835,7 +10349,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9851,7 +10365,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9867,7 +10381,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9883,7 +10397,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9899,7 +10413,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9915,7 +10429,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9931,7 +10445,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9947,7 +10461,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9963,7 +10477,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9979,6 +10493,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10101,7 +10631,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
         
   </td></tr>
 
@@ -10117,13 +10647,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10139,7 +10685,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10155,7 +10701,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10171,7 +10717,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10187,7 +10733,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10203,7 +10749,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10219,7 +10765,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10235,7 +10781,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10251,7 +10797,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10267,7 +10813,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10283,7 +10829,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10299,7 +10845,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10315,7 +10861,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10331,7 +10877,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10347,7 +10893,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10363,7 +10909,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10379,7 +10925,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10395,7 +10941,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10411,7 +10957,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10427,7 +10973,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10443,6 +10989,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10453,13 +11015,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10475,7 +11053,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10491,7 +11069,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10507,7 +11085,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10523,7 +11101,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10539,7 +11117,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10555,7 +11133,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10571,7 +11149,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10587,7 +11165,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10603,7 +11181,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10619,7 +11197,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10635,7 +11213,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10651,7 +11229,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10667,7 +11245,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10683,7 +11261,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10699,7 +11277,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10715,7 +11293,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10731,7 +11309,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10747,7 +11325,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10763,7 +11341,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10779,7 +11357,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10795,7 +11373,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10811,7 +11389,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10827,7 +11405,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10843,7 +11421,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10859,7 +11437,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10875,6 +11453,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -11061,7 +11655,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -11263,7 +11857,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11337,7 +11931,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11427,7 +12021,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/DismissOverlayView.html b/docs/html/reference/android/support/wearable/view/DismissOverlayView.html
index f146daf..ed4a66e 100644
--- a/docs/html/reference/android/support/wearable/view/DismissOverlayView.html
+++ b/docs/html/reference/android/support/wearable/view/DismissOverlayView.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -146,7 +151,7 @@
 
 </head>
 
-<body class="gc-documentation 
+<body class="gc-documentation
   develop reference" itemscope itemtype="http://schema.org/Article">
   <div id="doc-api-level" class="" style="display:none"></div>
   <a name="top"></a>
@@ -221,13 +226,13 @@
           </a>
 
         <ul class="dac-header-crumbs">
-          
+
           <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">DismissOverlayView</a></li>
         </ul>
 
-        
-        
-        
+
+
+
   <div class="dac-header-search" id="search-container">
     <div class="dac-header-search-inner">
       <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
@@ -267,7 +272,7 @@
     </div>
   </div>
 
-        
+
 
         <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
           <span class="dac-sprite dac-google-play"></span>
@@ -284,7 +289,7 @@
     </div>
   </div> <!--end header-wrapper -->
 
-  
+
   <!-- Navigation-->
   <nav class="dac-nav">
     <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
@@ -370,7 +375,7 @@
           <li class="dac-nav-item google">
             <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
           </li>
-          
+
           <li class="dac-nav-item preview">
             <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
           </li>
@@ -407,7 +412,7 @@
     </ul>
   </nav>
   <!-- end navigation-->
-  
+
 
 
 
@@ -439,7 +444,7 @@
             <div id="packages-nav" class="scroll-pane">
 
               <ul>
-                
+
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
     <li class="api apilevel-">
@@ -465,10 +470,11 @@
 
 
             <ul>
-              
-              
+
+
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -481,9 +487,10 @@
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a></li>
       </ul>
     </li>
-              
+
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -511,9 +518,9 @@
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></li>
       </ul>
     </li>
-              
-              
-              
+
+
+
             </ul><br/>
 
 
@@ -556,7 +563,7 @@
         });
     </script>
 
-     
+
 
 
 
@@ -566,74 +573,74 @@
 
 
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-   
-  
-  
-  
 
-  
-   
-  
-  
-   
-  
-  
-   
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
 
 <div class="sum-details-links">
@@ -646,21 +653,21 @@
 
 
   <a href="#inhconstants">Inherited Constants</a>
-  
+
 
 
 
   &#124; <a href="#inhfields">Inherited Fields</a>
-  
+
 
 
   &#124; <a href="#pubctors">Ctors</a>
-  
+
 
 
 
   &#124; <a href="#pubmethods">Methods</a>
-  
+
 
 
 
@@ -670,9 +677,9 @@
 
 </div><!-- end sum-details-links -->
 <div class="api-level">
-  
-  
-  
+
+
+
 
 </div>
 </div><!-- end api-info-block -->
@@ -682,38 +689,38 @@
 
 <div id="jd-header">
     public
-     
-     
-    
+
+
+
     class
 <h1 itemprop="name">DismissOverlayView</h1>
 
 
 
-  
-  
-  
 
-  
-  
-  
 
-  
-  
-  
 
-  
+
+
+
+
+
+
+
+
+
+
     extends FrameLayout<br/>
-  
-  
-  
-
-  
-  
-  
 
 
-    
+
+
+
+
+
+
+
+
 
 
 </div><!-- end header -->
@@ -725,54 +732,54 @@
 
 
     <tr>
-         	
+
         <td colspan="5" class="jd-inheritance-class-cell">java.lang.Object</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="4" class="jd-inheritance-class-cell">android.view.View</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="3" class="jd-inheritance-class-cell">android.view.ViewGroup</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="2" class="jd-inheritance-class-cell">android.widget.FrameLayout</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.view.DismissOverlayView</td>
     </tr>
-    
+
 
 </table>
 
@@ -853,7 +860,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup
 <div id="inherited-constants-android.view.ViewGroup">
@@ -862,129 +869,129 @@
   </div>
   <div id="inherited-constants-android.view.ViewGroup-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CLIP_TO_PADDING_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_AFTER_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BEFORE_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BLOCK_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_MODE_CLIP_BOUNDS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_MODE_OPTICAL_BOUNDS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_ALL_CACHES</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_ANIMATION_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_NO_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_SCROLLING_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -997,7 +1004,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1006,957 +1013,1065 @@
   </div>
   <div id="inherited-constants-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_ASSERTIVE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_POLITE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_AUTO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_HIGH</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_LOW</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FIND_VIEWS_WITH_CONTENT_DESCRIPTION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FIND_VIEWS_WITH_TEXT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUSABLES_ALL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUSABLES_TOUCH_MODE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BACKWARD</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_DOWN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_FORWARD</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_LEFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_RIGHT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_UP</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">GONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">HAPTIC_FEEDBACK_ENABLED</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_AUTO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_YES</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">INVISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">KEEP_SCREEN_ON</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_HARDWARE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_SOFTWARE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_HEIGHT_STATE_SHIFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_SIZE_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_STATE_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_STATE_TOO_SMALL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">NO_ID</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_ALWAYS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_IF_CONTENT_SCROLLS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_NEVER</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCREEN_STATE_OFF</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCREEN_STATE_ON</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_INSIDE_INSET</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_INSIDE_OVERLAY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_OUTSIDE_INSET</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_OUTSIDE_OVERLAY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_DEFAULT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_LEFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_RIGHT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_HORIZONTAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_VERTICAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">STATUS_BAR_HIDDEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">STATUS_BAR_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_FULLSCREEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_HIDE_NAVIGATION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE_STICKY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_STABLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -1998,7 +2113,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -2007,9 +2122,9 @@
   </div>
   <div id="inherited-fields-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2018,14 +2133,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ALPHA</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2034,14 +2149,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">EMPTY_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2050,14 +2165,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2066,14 +2181,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2082,14 +2197,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2098,14 +2213,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2114,14 +2229,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2130,14 +2245,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2146,14 +2261,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2162,14 +2277,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2178,14 +2293,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2194,14 +2309,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2210,14 +2325,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2226,14 +2341,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2242,14 +2357,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2258,14 +2373,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2274,14 +2389,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2290,14 +2405,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2306,14 +2421,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2322,14 +2437,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2338,14 +2453,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2354,14 +2469,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2370,14 +2485,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2386,14 +2501,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2402,14 +2517,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2418,14 +2533,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2434,14 +2549,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2450,14 +2565,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2466,14 +2581,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2482,14 +2597,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2498,14 +2613,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2514,14 +2629,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2530,14 +2645,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2546,14 +2661,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">SCALE_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2562,14 +2677,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">SCALE_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2578,14 +2693,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2594,14 +2709,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2610,14 +2725,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2626,14 +2741,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2642,14 +2757,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_Z</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2658,14 +2773,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2674,14 +2789,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2690,14 +2805,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2706,14 +2821,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">Z</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
 </table>
   </div>
 </div>
@@ -2742,51 +2857,51 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html#DismissOverlayView(android.content.Context)">DismissOverlayView</a></span>(Context context)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html#DismissOverlayView(android.content.Context, android.util.AttributeSet)">DismissOverlayView</a></span>(Context context, AttributeSet attrs)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html#DismissOverlayView(android.content.Context, android.util.AttributeSet, int)">DismissOverlayView</a></span>(Context context, AttributeSet attrs, int defStyle)</nobr>
-        
+
   </td></tr>
 
 
@@ -2803,111 +2918,111 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html#performClick()">performClick</a></span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html#setIntroText(int)">setIntroText</a></span>(int textResId)</nobr>
-        
+
         <div class="jd-descrdiv">
           Set the intro text.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html#setIntroText(java.lang.CharSequence)">setIntroText</a></span>(CharSequence str)</nobr>
-        
+
         <div class="jd-descrdiv">
           Set the intro text.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html#show()">show</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           Show the exit button.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html#showIntroIfNecessary()">showIntroIfNecessary</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           Displays the intro overlay over your app if necessary.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
@@ -2930,7 +3045,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.widget.FrameLayout" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.widget.FrameLayout-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2942,454 +3057,198 @@
   </div>
   <div id="inherited-methods-android.widget.FrameLayout-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">draw</span>(Canvas arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">drawableStateChanged</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">gatherTransparentRegion</span>(Region arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateDefaultLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(AttributeSet arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getConsiderGoneChildrenWhenMeasuring</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            Drawable</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForeground</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundGravity</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            ColorStateList</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundTintList</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            PorterDuff.Mode</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundTintMode</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasureAllChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMeasureAllChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setVisibility</span>(int arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">shouldDelayChildPressedState</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
-        
   </td></tr>
 
 
@@ -3416,2598 +3275,2647 @@
   </div>
   <div id="inherited-methods-android.view.ViewGroup-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addStatesFromChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addViewInLayout</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addViewInLayout</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">attachLayoutAnimationParameters</span>(View arg0, ViewGroup.LayoutParams arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">attachViewToParent</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringChildToFront</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canAnimate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+
         <span class="sympad">checkLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childDrawableStateChanged</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childHasTransientStateChanged</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cleanupLayoutState</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearChildFocus</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearDisappearingChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">debug</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachAllViewsFromParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewFromParent</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewFromParent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewsFromParent</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchFreezeSelfOnly</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchThawSelfOnly</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawChild</span>(Canvas arg0, View arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableStateChanged</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">endViewTransition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusableViewAvailable</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">gatherTransparentRegion</span>(Region arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateDefaultLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(AttributeSet arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildAt</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildCount</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildDrawingOrder</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildMeasureSpec</span>(int arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildStaticTransformation</span>(View arg0, Transformation arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildVisibleRect</span>(View arg0, Rect arg1, Point arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipToPadding</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDescendantFocusability</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusedChild</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             LayoutAnimationController</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Animation.AnimationListener</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutAnimationListener</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             LayoutTransition</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutTransition</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNestedScrollAxes</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOverlay</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverlay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPersistentDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchscreenBlocksFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasTransientState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">indexOfChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChild</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChildInParent</span>(int[] arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAlwaysDrawnWithCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAnimationCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isChildrenDrawingOrderEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isChildrenDrawnWithCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isMotionEventSplittingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTransitionGroup</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChild</span>(View arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChildWithMargins</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChildren</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifySubtreeAccessibilityStateChanged</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetDescendantRectToMyCoords</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetRectIntoDescendantCoords</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationEnd</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationStart</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedFling</span>(View arg0, float arg1, float arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreFling</span>(View arg0, float arg1, float arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPrePerformAccessibilityAction</span>(View arg0, int arg1, Bundle arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreScroll</span>(View arg0, int arg1, int arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScroll</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScrollAccepted</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRequestFocusInDescendants</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRequestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartNestedScroll</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStopNestedScroll</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewAdded</span>(View arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewRemoved</span>(View arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeAllViews</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeAllViewsInLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeDetachedView</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewAt</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewInLayout</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViews</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewsInLayout</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestTransparentRegion</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAddStatesFromChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAlwaysDrawnWithCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAnimationCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawingCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawingOrderEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawnWithCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToPadding</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDescendantFocusability</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutAnimation</span>(LayoutAnimationController arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutAnimationListener</span>(Animation.AnimationListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutMode</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutTransition</span>(LayoutTransition arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMotionEventSplittingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnHierarchyChangeListener</span>(ViewGroup.OnHierarchyChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPersistentDrawingCache</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setStaticTransformationsEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTouchscreenBlocksFocus</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTransitionGroup</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">shouldDelayChildPressedState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenuForChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startViewTransition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -6022,7 +5930,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -6034,7718 +5942,8102 @@
   </div>
   <div id="inherited-methods-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewPropertyAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">animate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">announceForAccessibility</span>(CharSequence arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>(int arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringToFront</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildDrawingCache</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildLayer</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">callOnClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canScrollHorizontally</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canScrollVertically</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cancelLongPress</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cancelPendingInputEvents</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkInputConnectionProxy</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">combineMeasuredStates</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeSystemWindowInsets</span>(WindowInsets arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             AccessibilityNodeInfo</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createAccessibilityNodeInfo</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">destroyDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericMotionEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedFling</span>(float arg0, float arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPreFling</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPrePerformAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPreScroll</span>(int arg0, int arg1, int[] arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedScroll</span>(int arg0, int arg1, int arg2, int arg3, int[] arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">draw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableStateChanged</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewById</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewWithTag</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">fitSystemWindows</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">forceLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateViewId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityLiveRegion</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             AccessibilityNodeProvider</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityNodeProvider</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityTraversalAfter</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityTraversalBefore</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAlpha</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Animation</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             IBinder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getApplicationWindowToken</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Drawable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackground</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ColorStateList</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackgroundTintList</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             PorterDuff.Mode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackgroundTintMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBaseline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottom</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottomFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottomPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getCameraDistance</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Rect</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipBounds</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipToOutline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             CharSequence</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContentDescription</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             Context</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContext</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ContextMenu.ContextMenuInfo</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContextMenuInfo</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDefaultSize</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Display</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDisplay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawableState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Bitmap</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCache</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Bitmap</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCacheBackgroundColor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCacheQuality</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             long</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingTime</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getElevation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFilterTouchesWhenObscured</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFitsSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ArrayList&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusables</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusedRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getGlobalVisibleRect</span>(Rect arg0, Point arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getGlobalVisibleRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Handler</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHandler</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHitRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHorizontalFadingEdgeLength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHorizontalScrollbarHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getImportantForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getKeepScreenOn</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             KeyEvent.DispatcherState</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getKeyDispatcherState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLabelFor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayerType</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeft</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeftFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeftPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocalVisibleRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocationInWindow</span>(int[] arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocationOnScreen</span>(int[] arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Matrix</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMatrix</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredHeightAndState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredWidthAndState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMinimumHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMinimumWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusDownId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusForwardId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusLeftId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusRightId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusUpId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View.OnFocusChangeListener</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOnFocusChangeListener</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOutlineProvider</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOutlineProvider</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverScrollMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOverlay</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverlay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingBottom</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingEnd</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingLeft</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingRight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingStart</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingTop</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParentForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPivotX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPivotY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Resources</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getResources</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRightFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRightPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRootView</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotationX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotationY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScaleX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScaleY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarDefaultDelayBeforeFade</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarFadeDuration</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarSize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarStyle</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSolidColor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             StateListAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getStateListAnimator</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSuggestedMinimumHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSuggestedMinimumWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSystemUiVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTag</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTag</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTop</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTopFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTopPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             TouchDelegate</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchDelegate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ArrayList&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchables</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTransitionName</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationZ</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalFadingEdgeLength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalScrollbarPosition</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalScrollbarWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewTreeObserver</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getViewTreeObserver</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowAttachCount</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowId</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowSystemUiVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             IBinder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowToken</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowVisibleDisplayFrame</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getZ</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasNestedScrollingParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasOnClickListeners</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasOverlappingRendering</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasTransientState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasWindowFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">inflate</span>(Context arg0, int arg1, ViewGroup arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateOutline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAccessibilityFocused</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isActivated</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isClickable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDirty</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDrawingCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDuplicateParentStateEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocusableInTouchMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocused</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHapticFeedbackEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHardwareAccelerated</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHorizontalFadingEdgeEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHorizontalScrollBarEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHovered</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isImportantForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInEditMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInTouchMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLaidOut</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutRequested</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLongClickable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isNestedScrollingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isOpaque</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPaddingOffsetRequired</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPaddingRelative</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPressed</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSaveEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSaveFromParentEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isScrollContainer</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isScrollbarFadingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSelected</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isShown</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSoundEffectsEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextAlignmentResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isVerticalFadingEdgeEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isVerticalScrollBarEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">mergeDrawableStates</span>(int[] arg0, int[] arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetLeftAndRight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetTopAndBottom</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAnimationEnd</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAnimationStart</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCancelPendingInputEvents</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCheckIsTextEditor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             InputConnection</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateInputConnection</span>(EditorInfo arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDrawScrollBars</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFilterTouchEventForSecurity</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFinishInflate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFinishTemporaryDetach</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFocusChanged</span>(boolean arg0, int arg1, Rect arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onGenericMotionEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onHoverChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyPreIme</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyShortcut</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onOverScrolled</span>(int arg0, int arg1, boolean arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRtlPropertiesChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Parcelable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSaveInstanceState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onScreenStateChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onScrollChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSetAlpha</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartTemporaryDetach</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">overScrollBy</span>(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, boolean arg8)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performHapticFeedback</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performHapticFeedback</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performLongClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">playSoundEffect</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">post</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postDelayed</span>(Runnable arg0, long arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateDelayed</span>(long arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateDelayed</span>(long arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateOnAnimation</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateOnAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postOnAnimation</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postOnAnimationDelayed</span>(Runnable arg0, long arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">refreshDrawableState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeCallbacks</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestApplyInsets</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFitSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocusFromTouch</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestRectangleOnScreen</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestRectangleOnScreen</span>(Rect arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestUnbufferedDispatch</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">resolveSize</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">resolveSizeAndState</span>(int arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">restoreHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">saveHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollBy</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollTo</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityDelegate</span>(View.AccessibilityDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityLiveRegion</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityTraversalAfter</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityTraversalBefore</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAlpha</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAnimation</span>(Animation arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackground</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundColor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundResource</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundTintList</span>(ColorStateList arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBottom</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setCameraDistance</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClickable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipBounds</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToOutline</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setContentDescription</span>(CharSequence arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheQuality</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDuplicateParentStateEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setElevation</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFadingEdgeLength</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFilterTouchesWhenObscured</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFitsSystemWindows</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFocusable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFocusableInTouchMode</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHasTransientState</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHorizontalFadingEdgeEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHorizontalScrollBarEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHovered</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setImportantForAccessibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setKeepScreenOn</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLabelFor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayerPaint</span>(Paint arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayerType</span>(int arg0, Paint arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutDirection</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLeft</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLongClickable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMeasuredDimension</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMinimumHeight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMinimumWidth</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNestedScrollingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusDownId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusForwardId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusLeftId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusRightId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusUpId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnApplyWindowInsetsListener</span>(View.OnApplyWindowInsetsListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnClickListener</span>(View.OnClickListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnCreateContextMenuListener</span>(View.OnCreateContextMenuListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnDragListener</span>(View.OnDragListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnFocusChangeListener</span>(View.OnFocusChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnGenericMotionListener</span>(View.OnGenericMotionListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnHoverListener</span>(View.OnHoverListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnKeyListener</span>(View.OnKeyListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnLongClickListener</span>(View.OnLongClickListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOutlineProvider</span>(ViewOutlineProvider arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOverScrollMode</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPadding</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPaddingRelative</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPivotX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPivotY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotation</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotationX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotationY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSaveEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSaveFromParentEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScaleX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScaleY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarDefaultDelayBeforeFade</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarFadeDuration</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarSize</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarStyle</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollContainer</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollY</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollbarFadingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSoundEffectsEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setStateListAnimator</span>(StateListAnimator arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSystemUiVisibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTag</span>(int arg0, Object arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTag</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTextAlignment</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTextDirection</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTop</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTouchDelegate</span>(TouchDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTransitionName</span>(String arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationZ</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalFadingEdgeEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalScrollBarEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalScrollbarPosition</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVisibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setWillNotCacheDrawing</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setWillNotDraw</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setZ</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenu</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionMode</span>(ActionMode.Callback arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startAnimation</span>(Animation arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startDrag</span>(ClipData arg0, View.DragShadowBuilder arg1, Object arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startNestedScroll</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">stopNestedScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">toString</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">willNotCacheDrawing</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">willNotDraw</span>()</nobr>
-        
+
   </td></tr>
 
 
@@ -13760,7 +14052,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -13772,182 +14064,182 @@
   </div>
   <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clone</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">equals</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">finalize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             Class&lt;?&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClass</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hashCode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notify</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifyAll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">toString</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>(long arg0)</nobr>
-        
+
   </td></tr>
 
 
@@ -13962,7 +14254,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewParent-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -13974,662 +14266,678 @@
   </div>
   <div id="inherited-methods-android.view.ViewParent-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringChildToFront</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childDrawableStateChanged</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childHasTransientStateChanged</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearChildFocus</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusableViewAvailable</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildVisibleRect</span>(View arg0, Rect arg1, Point arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParentForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChild</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChildInParent</span>(int[] arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutRequested</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextAlignmentResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifySubtreeAccessibilityStateChanged</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedFling</span>(View arg0, float arg1, float arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreFling</span>(View arg0, float arg1, float arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPrePerformAccessibilityAction</span>(View arg0, int arg1, Bundle arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreScroll</span>(View arg0, int arg1, int arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScroll</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScrollAccepted</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartNestedScroll</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStopNestedScroll</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFitSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestTransparentRegion</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenuForChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14644,7 +14952,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewManager-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14656,54 +14964,54 @@
   </div>
   <div id="inherited-methods-android.view.ViewManager-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14718,7 +15026,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14730,54 +15038,54 @@
   </div>
   <div id="inherited-methods-android.graphics.drawable.Drawable.Callback-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14792,7 +15100,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14804,70 +15112,70 @@
   </div>
   <div id="inherited-methods-android.view.KeyEvent.Callback-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14882,7 +15190,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14894,38 +15202,38 @@
   </div>
   <div id="inherited-methods-android.view.accessibility.AccessibilityEventSource-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
@@ -14971,30 +15279,30 @@
 
 <A NAME="DismissOverlayView(android.content.Context)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">DismissOverlayView</span>
       <span class="normal">(Context context)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15003,30 +15311,30 @@
 
 <A NAME="DismissOverlayView(android.content.Context, android.util.AttributeSet)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">DismissOverlayView</span>
       <span class="normal">(Context context, AttributeSet attrs)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15035,30 +15343,30 @@
 
 <A NAME="DismissOverlayView(android.content.Context, android.util.AttributeSet, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">DismissOverlayView</span>
       <span class="normal">(Context context, AttributeSet attrs, int defStyle)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15082,14 +15390,14 @@
 
 <A NAME="performClick()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         boolean
       </span>
       <span class="sympad">performClick</span>
@@ -15097,15 +15405,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15114,14 +15422,14 @@
 
 <A NAME="setIntroText(int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setIntroText</span>
@@ -15129,15 +15437,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Set the intro text.
 
  The intro text is the text displayed when the app is run for the first time, as an overlay
@@ -15150,14 +15458,14 @@
 
 <A NAME="setIntroText(java.lang.CharSequence)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setIntroText</span>
@@ -15165,15 +15473,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Set the intro text.
 
  The intro text is the text displayed when the app is run for the first time, as an overlay
@@ -15186,14 +15494,14 @@
 
 <A NAME="show()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">show</span>
@@ -15201,15 +15509,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Show the exit button.
 
  This should be called from a long-press listener.
@@ -15221,14 +15529,14 @@
 
 <A NAME="showIntroIfNecessary()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">showIntroIfNecessary</span>
@@ -15236,15 +15544,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Displays the intro overlay over your app if necessary.
 
  This does nothing if no intro text has been set, or if this is not the first time
@@ -15288,22 +15596,22 @@
 
     <hr class="dac-footer-separator"/>
 
-    
+
       <p class="dac-footer-copyright">
-        
+
   Except as noted, this content is licensed under <a
   href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
   For details and restrictions, see the <a href="../../../../../license.html">
   Content License</a>.
       </p>
       <p class="dac-footer-build">
-        
-    Android Wearable Support&nbsp;r &mdash; 
+
+    Android Wearable Support&nbsp;r &mdash;
 <script src="../../../../../timestamp.js" type="text/javascript"></script>
 <script>document.write(BUILD_TIMESTAMP)</script>
 
       </p>
-    
+
 
     <p class="dac-footer-links">
       <a href="/about/index.html">About Android</a>
@@ -15445,8 +15753,8 @@
 
 </div><!-- end doc-content -->
 
-</div> <!-- end .cols --> 
-</div> <!-- end body-content --> 
+</div> <!-- end .cols -->
+</div> <!-- end body-content -->
 
 
 
diff --git a/docs/html/reference/android/support/wearable/view/DotsPageIndicator.html b/docs/html/reference/android/support/wearable/view/DotsPageIndicator.html
index 634cf95..58aeed8 100644
--- a/docs/html/reference/android/support/wearable/view/DotsPageIndicator.html
+++ b/docs/html/reference/android/support/wearable/view/DotsPageIndicator.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -808,7 +815,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1434,6 +1441,78 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1554,7 +1633,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1566,6 +1645,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1576,7 +1667,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
@@ -1588,7 +1679,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
@@ -1600,7 +1691,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1612,7 +1703,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
@@ -1624,7 +1715,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1636,7 +1727,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1648,7 +1739,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1660,7 +1751,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1672,7 +1763,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1684,7 +1775,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
@@ -1696,8 +1787,32 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1708,7 +1823,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
@@ -1720,7 +1835,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
@@ -1732,7 +1847,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1744,7 +1859,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
@@ -1756,7 +1871,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1805,7 +1920,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -3456,7 +3571,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4394,7 +4509,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -4410,13 +4525,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4432,7 +4563,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4448,7 +4579,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4464,7 +4595,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4480,7 +4611,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4496,7 +4627,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4512,7 +4643,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4528,7 +4659,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4544,7 +4675,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4560,7 +4691,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4576,7 +4707,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4592,7 +4723,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4608,7 +4739,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4624,7 +4755,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4640,7 +4771,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4656,7 +4787,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4672,7 +4803,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4688,7 +4819,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4704,7 +4835,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4720,7 +4851,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4736,7 +4867,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4752,7 +4883,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4768,6 +4899,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5028,6 +5175,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -5040,7 +5203,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5056,7 +5219,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5072,7 +5235,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5088,7 +5251,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5104,7 +5267,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5120,7 +5283,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5136,7 +5299,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5152,7 +5315,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5168,7 +5331,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5184,7 +5347,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5200,7 +5363,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5216,7 +5379,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5232,7 +5395,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5248,7 +5411,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5264,7 +5427,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5280,7 +5443,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5296,7 +5459,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5312,6 +5475,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5319,6 +5498,54 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -5328,7 +5555,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5344,7 +5571,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5360,7 +5587,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5376,7 +5603,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5392,7 +5619,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5408,7 +5635,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5424,7 +5651,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5440,7 +5667,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5456,7 +5683,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5472,7 +5699,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5488,7 +5715,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5504,7 +5731,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5520,7 +5747,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5536,7 +5763,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5552,7 +5779,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5568,7 +5795,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5584,7 +5811,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5600,7 +5827,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5616,7 +5843,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5632,7 +5859,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5648,7 +5875,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5664,7 +5891,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5680,7 +5907,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5696,7 +5923,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5712,7 +5939,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5728,7 +5955,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5744,7 +5971,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5760,7 +5987,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5776,7 +6003,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5792,7 +6019,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5808,7 +6035,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5824,7 +6051,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5840,7 +6067,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5856,7 +6083,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5872,7 +6099,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5888,7 +6115,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5904,7 +6131,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5920,7 +6147,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5936,7 +6163,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5952,7 +6179,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5968,7 +6195,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5984,7 +6211,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6000,7 +6227,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6016,7 +6243,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6032,7 +6259,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6048,7 +6275,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6064,7 +6291,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6080,7 +6307,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6096,7 +6323,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6112,7 +6339,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6128,7 +6355,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6144,7 +6371,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6160,6 +6387,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -6308,6 +6551,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -6320,7 +6579,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6336,7 +6595,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6352,7 +6611,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6368,7 +6627,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6384,7 +6643,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6400,7 +6659,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6416,7 +6675,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6432,7 +6691,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6448,7 +6707,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6464,7 +6723,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6480,7 +6739,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6496,7 +6755,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6512,7 +6771,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6528,7 +6787,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6544,7 +6803,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6560,7 +6819,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6576,7 +6835,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6592,7 +6851,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6608,7 +6867,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6624,7 +6883,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6640,7 +6899,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6656,7 +6915,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6672,7 +6931,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6688,7 +6947,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6704,7 +6963,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6720,7 +6979,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6736,7 +6995,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6752,7 +7011,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6768,7 +7027,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6784,7 +7043,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6800,7 +7059,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6816,7 +7075,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6832,7 +7091,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6848,7 +7107,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6864,7 +7123,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6880,7 +7139,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6896,7 +7155,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6912,7 +7171,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6928,7 +7187,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6944,7 +7203,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6960,7 +7219,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6976,7 +7235,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -6992,7 +7251,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7008,7 +7267,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7024,7 +7283,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7040,7 +7299,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7056,7 +7315,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7072,7 +7331,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7088,7 +7347,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7104,7 +7363,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7120,7 +7379,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7136,6 +7395,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -8036,6 +8311,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -8048,7 +8339,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8064,7 +8355,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8080,7 +8371,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8096,7 +8387,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8112,7 +8403,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8128,7 +8419,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8144,7 +8435,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8160,7 +8451,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8176,7 +8467,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8192,7 +8483,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8208,7 +8499,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8224,7 +8515,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8240,7 +8531,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8256,7 +8547,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8272,7 +8563,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8288,7 +8579,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8304,7 +8595,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8320,7 +8611,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8336,7 +8627,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8352,6 +8643,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -8362,13 +8669,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8384,7 +8707,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8400,7 +8723,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8416,7 +8739,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8432,7 +8755,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8448,7 +8771,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8464,7 +8787,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8480,7 +8803,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8496,7 +8819,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8512,7 +8835,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8528,7 +8851,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8544,7 +8867,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8560,7 +8883,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8576,7 +8899,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8592,7 +8915,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8608,7 +8931,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8624,6 +8947,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9530,7 +9869,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
         
   </td></tr>
 
@@ -9546,13 +9885,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9568,7 +9923,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9584,7 +9939,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9600,7 +9955,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9616,7 +9971,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9632,7 +9987,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9648,7 +10003,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9664,7 +10019,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9680,7 +10035,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9696,6 +10051,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9706,13 +10077,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9728,7 +10147,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9744,7 +10163,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9760,7 +10179,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9776,7 +10195,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9792,7 +10211,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9808,7 +10227,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9824,7 +10243,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9840,7 +10259,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9856,7 +10275,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9872,7 +10291,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9888,7 +10307,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9904,7 +10323,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9920,7 +10339,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9936,7 +10355,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9952,7 +10371,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9968,7 +10387,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9984,7 +10403,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10000,7 +10419,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10016,7 +10435,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10032,7 +10451,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10048,7 +10467,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10064,7 +10483,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10080,7 +10499,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10096,7 +10515,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10112,6 +10531,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10234,7 +10669,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
         
   </td></tr>
 
@@ -10250,13 +10685,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10272,7 +10723,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10288,7 +10739,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10304,7 +10755,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10320,7 +10771,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10336,7 +10787,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10352,7 +10803,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10368,7 +10819,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10384,7 +10835,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10400,7 +10851,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10416,7 +10867,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10432,7 +10883,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10448,7 +10899,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10464,7 +10915,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10480,7 +10931,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10496,7 +10947,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10512,7 +10963,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10528,7 +10979,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10544,7 +10995,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10560,7 +11011,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10576,6 +11027,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10586,13 +11053,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10608,7 +11091,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10624,7 +11107,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10640,7 +11123,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10656,7 +11139,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10672,7 +11155,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10688,7 +11171,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10704,7 +11187,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10720,7 +11203,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10736,7 +11219,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10752,7 +11235,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10768,7 +11251,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10784,7 +11267,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10800,7 +11283,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10816,7 +11299,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10832,7 +11315,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10848,7 +11331,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10864,7 +11347,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10880,7 +11363,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10896,7 +11379,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10912,7 +11395,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10928,7 +11411,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10944,7 +11427,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10960,7 +11443,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10976,7 +11459,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10992,7 +11475,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11008,6 +11491,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -11194,7 +11693,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -11396,7 +11895,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11470,7 +11969,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11560,7 +12059,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11618,7 +12117,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.view.GridViewPager.OnPageChangeListener" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.wearable.view.GridViewPager.OnPageChangeListener-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -11714,7 +12213,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.view.GridViewPager.OnAdapterChangeListener" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.wearable.view.GridViewPager.OnAdapterChangeListener-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/FragmentGridPagerAdapter.html b/docs/html/reference/android/support/wearable/view/FragmentGridPagerAdapter.html
index ed7fecd..a8a4781 100644
--- a/docs/html/reference/android/support/wearable/view/FragmentGridPagerAdapter.html
+++ b/docs/html/reference/android/support/wearable/view/FragmentGridPagerAdapter.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -768,7 +775,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.wearable.view.GridPagerAdapter" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.support.wearable.view.GridPagerAdapter-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 <a href="../../../../../reference/android/support/wearable/view/GridPagerAdapter.html">android.support.wearable.view.GridPagerAdapter</a>
 <div id="inherited-constants-android.support.wearable.view.GridPagerAdapter">
@@ -831,7 +838,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.support.wearable.view.GridPagerAdapter" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.support.wearable.view.GridPagerAdapter-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 <a href="../../../../../reference/android/support/wearable/view/GridPagerAdapter.html">android.support.wearable.view.GridPagerAdapter</a>
 <div id="inherited-fields-android.support.wearable.view.GridPagerAdapter">
@@ -1224,7 +1231,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.view.GridPagerAdapter" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.wearable.view.GridPagerAdapter-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1738,7 +1745,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html b/docs/html/reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html
index 1e066c1..175073b 100644
--- a/docs/html/reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html
+++ b/docs/html/reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
diff --git a/docs/html/reference/android/support/wearable/view/GridPageOptions.html b/docs/html/reference/android/support/wearable/view/GridPageOptions.html
index 8c22582..66db3e5 100644
--- a/docs/html/reference/android/support/wearable/view/GridPageOptions.html
+++ b/docs/html/reference/android/support/wearable/view/GridPageOptions.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
diff --git a/docs/html/reference/android/support/wearable/view/GridPagerAdapter.html b/docs/html/reference/android/support/wearable/view/GridPagerAdapter.html
index b157c39..d40ff0b 100644
--- a/docs/html/reference/android/support/wearable/view/GridPagerAdapter.html
+++ b/docs/html/reference/android/support/wearable/view/GridPagerAdapter.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -676,7 +683,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
           ><img id="subclasses-direct-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Direct Subclasses
 
   <div id="subclasses-direct">
@@ -1419,7 +1426,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/view/GridViewPager.LayoutParams.html b/docs/html/reference/android/support/wearable/view/GridViewPager.LayoutParams.html
index c4d63e22..9702ae8 100644
--- a/docs/html/reference/android/support/wearable/view/GridViewPager.LayoutParams.html
+++ b/docs/html/reference/android/support/wearable/view/GridViewPager.LayoutParams.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -783,7 +790,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup.LayoutParams
 <div id="inherited-constants-android.view.ViewGroup.LayoutParams">
@@ -900,7 +907,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.ViewGroup.MarginLayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup.MarginLayoutParams
 <div id="inherited-fields-android.view.ViewGroup.MarginLayoutParams">
@@ -988,7 +995,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.ViewGroup.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup.LayoutParams
 <div id="inherited-fields-android.view.ViewGroup.LayoutParams">
@@ -1121,7 +1128,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewGroup.MarginLayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1291,7 +1298,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewGroup.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1349,7 +1356,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html b/docs/html/reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html
index fcd6a3d..a79e1ee 100644
--- a/docs/html/reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html
+++ b/docs/html/reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -643,7 +650,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html b/docs/html/reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html
index 072f6c5..671da66 100644
--- a/docs/html/reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html
+++ b/docs/html/reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -643,7 +650,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
           ><img id="subclasses-indirect-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
 
   <div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/wearable/view/GridViewPager.html b/docs/html/reference/android/support/wearable/view/GridViewPager.html
index 3e2179d..027892b 100644
--- a/docs/html/reference/android/support/wearable/view/GridViewPager.html
+++ b/docs/html/reference/android/support/wearable/view/GridViewPager.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -943,7 +950,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup
 <div id="inherited-constants-android.view.ViewGroup">
@@ -1087,7 +1094,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1713,6 +1720,78 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1833,7 +1912,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1845,6 +1924,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1855,7 +1946,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
@@ -1867,7 +1958,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
@@ -1879,7 +1970,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1891,7 +1982,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
@@ -1903,7 +1994,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1915,7 +2006,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1927,7 +2018,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1939,7 +2030,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1951,7 +2042,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1963,7 +2054,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
@@ -1975,8 +2066,32 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1987,7 +2102,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
@@ -1999,7 +2114,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
@@ -2011,7 +2126,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -2023,7 +2138,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
@@ -2035,7 +2150,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
@@ -2086,7 +2201,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -3608,7 +3723,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4274,7 +4389,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -4290,13 +4405,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4312,7 +4443,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4328,7 +4459,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4344,7 +4475,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4360,7 +4491,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4376,7 +4507,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4392,7 +4523,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4408,7 +4539,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4424,7 +4555,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4440,7 +4571,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4456,7 +4587,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4472,7 +4603,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4488,7 +4619,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4504,7 +4635,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4520,7 +4651,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4536,7 +4667,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4552,7 +4683,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4568,7 +4699,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4584,7 +4715,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4600,7 +4731,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4616,7 +4747,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4632,7 +4763,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4648,7 +4779,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4664,6 +4795,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5282,38 +5429,6 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationEnd</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationStart</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
         
   </td></tr>
@@ -5570,6 +5685,38 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewAdded</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewRemoved</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
         
   </td></tr>
@@ -6175,10 +6322,10 @@
             
             
             
-            void</nobr>
+            ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">startLayoutAnimation</span>()</nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
         
   </td></tr>
 
@@ -6194,7 +6341,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">startViewTransition</span>(View arg0)</nobr>
+        <span class="sympad">startLayoutAnimation</span>()</nobr>
         
   </td></tr>
 
@@ -6210,6 +6357,22 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startViewTransition</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
         
   </td></tr>
@@ -6226,7 +6389,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -7164,7 +7327,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -7180,13 +7343,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7202,7 +7381,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7218,7 +7397,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7234,7 +7413,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7250,7 +7429,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7266,7 +7445,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7282,7 +7461,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7298,7 +7477,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7314,7 +7493,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7330,7 +7509,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7346,7 +7525,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7362,7 +7541,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7378,7 +7557,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7394,7 +7573,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7410,7 +7589,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7426,7 +7605,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7442,7 +7621,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7458,7 +7637,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7474,7 +7653,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7490,7 +7669,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7506,7 +7685,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7522,7 +7701,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7538,6 +7717,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7798,6 +7993,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -7810,7 +8021,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7826,7 +8037,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7842,7 +8053,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7858,7 +8069,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7874,7 +8085,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7890,7 +8101,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7906,7 +8117,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7922,7 +8133,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7938,7 +8149,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7954,7 +8165,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7970,7 +8181,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7986,7 +8197,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8002,7 +8213,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8018,7 +8229,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8034,7 +8245,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8050,7 +8261,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8066,7 +8277,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8082,6 +8293,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -8089,6 +8316,54 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -8098,7 +8373,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8114,7 +8389,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8130,7 +8405,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8146,7 +8421,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8162,7 +8437,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8178,7 +8453,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8194,7 +8469,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8210,7 +8485,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8226,7 +8501,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8242,7 +8517,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8258,7 +8533,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8274,7 +8549,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8290,7 +8565,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8306,7 +8581,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8322,7 +8597,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8338,7 +8613,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8354,7 +8629,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8370,7 +8645,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8386,7 +8661,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8402,7 +8677,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8418,7 +8693,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8434,7 +8709,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8450,7 +8725,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8466,7 +8741,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8482,7 +8757,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8498,7 +8773,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8514,7 +8789,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8530,7 +8805,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8546,7 +8821,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8562,7 +8837,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8578,7 +8853,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8594,7 +8869,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8610,7 +8885,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8626,7 +8901,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8642,7 +8917,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8658,7 +8933,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8674,7 +8949,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8690,7 +8965,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8706,7 +8981,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8722,7 +8997,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8738,7 +9013,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8754,7 +9029,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8770,7 +9045,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8786,7 +9061,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8802,7 +9077,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8818,7 +9093,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8834,7 +9109,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8850,7 +9125,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8866,7 +9141,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8882,7 +9157,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8898,7 +9173,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8914,7 +9189,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8930,6 +9205,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -9078,6 +9369,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -9090,7 +9397,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9106,7 +9413,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9122,7 +9429,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9138,7 +9445,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9154,7 +9461,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9170,7 +9477,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9186,7 +9493,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9202,7 +9509,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9218,7 +9525,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9234,7 +9541,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9250,7 +9557,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9266,7 +9573,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9282,7 +9589,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9298,7 +9605,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9314,7 +9621,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9330,7 +9637,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9346,7 +9653,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9362,7 +9669,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9378,7 +9685,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9394,7 +9701,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9410,7 +9717,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9426,7 +9733,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9442,7 +9749,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9458,7 +9765,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9474,7 +9781,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9490,7 +9797,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9506,7 +9813,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9522,7 +9829,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9538,7 +9845,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9554,7 +9861,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9570,7 +9877,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9586,7 +9893,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9602,7 +9909,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9618,7 +9925,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9634,7 +9941,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9650,7 +9957,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9666,7 +9973,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9682,7 +9989,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9698,7 +10005,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9714,7 +10021,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9730,7 +10037,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9746,7 +10053,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9762,7 +10069,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9778,7 +10085,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9794,7 +10101,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9810,7 +10117,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9826,7 +10133,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9842,7 +10149,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9858,7 +10165,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9874,7 +10181,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9890,7 +10197,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9906,6 +10213,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10806,6 +11129,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -10818,7 +11157,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10834,7 +11173,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10850,7 +11189,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10866,7 +11205,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10882,7 +11221,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10898,7 +11237,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10914,7 +11253,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10930,7 +11269,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10946,7 +11285,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10962,7 +11301,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10978,7 +11317,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10994,7 +11333,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11010,7 +11349,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11026,7 +11365,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11042,7 +11381,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11058,7 +11397,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11074,7 +11413,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11090,7 +11429,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11106,7 +11445,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11122,6 +11461,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -11132,13 +11487,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11154,7 +11525,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11170,7 +11541,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11186,7 +11557,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11202,7 +11573,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11218,7 +11589,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11234,7 +11605,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11250,7 +11621,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11266,7 +11637,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11282,7 +11653,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11298,7 +11669,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11314,7 +11685,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11330,7 +11701,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11346,7 +11717,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11362,7 +11733,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11378,7 +11749,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11394,6 +11765,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -12300,7 +12687,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
         
   </td></tr>
 
@@ -12316,13 +12703,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12338,7 +12741,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12354,7 +12757,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12370,7 +12773,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12386,7 +12789,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12402,7 +12805,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12418,7 +12821,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12434,7 +12837,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12450,7 +12853,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12466,6 +12869,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -12476,13 +12895,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12498,7 +12965,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12514,7 +12981,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12530,7 +12997,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12546,7 +13013,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12562,7 +13029,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12578,7 +13045,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12594,7 +13061,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12610,7 +13077,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12626,7 +13093,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12642,7 +13109,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12658,7 +13125,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12674,7 +13141,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12690,7 +13157,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12706,7 +13173,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12722,7 +13189,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12738,7 +13205,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12754,7 +13221,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12770,7 +13237,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12786,7 +13253,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12802,7 +13269,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12818,7 +13285,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12834,7 +13301,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12850,7 +13317,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12866,7 +13333,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12882,6 +13349,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -13004,7 +13487,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
         
   </td></tr>
 
@@ -13020,13 +13503,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13042,7 +13541,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13058,7 +13557,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13074,7 +13573,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13090,7 +13589,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13106,7 +13605,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13122,7 +13621,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13138,7 +13637,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13154,7 +13653,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13170,7 +13669,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13186,7 +13685,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13202,7 +13701,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13218,7 +13717,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13234,7 +13733,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13250,7 +13749,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13266,7 +13765,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13282,7 +13781,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13298,7 +13797,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13314,7 +13813,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13330,7 +13829,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13346,6 +13845,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -13356,13 +13871,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13378,7 +13909,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13394,7 +13925,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13410,7 +13941,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13426,7 +13957,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13442,7 +13973,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13458,7 +13989,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13474,7 +14005,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13490,7 +14021,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13506,7 +14037,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13522,7 +14053,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13538,7 +14069,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13554,7 +14085,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13570,7 +14101,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13586,7 +14117,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13602,7 +14133,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13618,7 +14149,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13634,7 +14165,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13650,7 +14181,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13666,7 +14197,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13682,7 +14213,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13698,7 +14229,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13714,7 +14245,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13730,7 +14261,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13746,7 +14277,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13762,7 +14293,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13778,6 +14309,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -13964,7 +14511,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -14166,7 +14713,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewParent-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14832,6 +15379,22 @@
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
         
   </td></tr>
@@ -14848,7 +15411,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewManager-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14922,7 +15485,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14996,7 +15559,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -15086,7 +15649,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/ProgressSpinner.html b/docs/html/reference/android/support/wearable/view/ProgressSpinner.html
new file mode 100644
index 0000000..584c60e
--- /dev/null
+++ b/docs/html/reference/android/support/wearable/view/ProgressSpinner.html
@@ -0,0 +1,12916 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.ico" />
+<title>ProgressSpinner | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+<body class="gc-documentation 
+  develop reference" itemscope itemtype="http://schema.org/Article">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../../assets/images/android_logo.png"
+              srcset="../../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+          
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">ProgressSpinner</a></li>
+        </ul>
+
+        
+        
+        
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+        
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+  
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../../assets/images/android_logo.png"
+               srcset="../../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
+          </li>
+          
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+  
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+                
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/activity/package-summary.html">android.support.wearable.activity</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/companion/package-summary.html">android.support.wearable.companion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/input/package-summary.html">android.support.wearable.input</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/media/package-summary.html">android.support.wearable.media</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/provider/package-summary.html">android.support.wearable.provider</a></li>
+    <li class="selected api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/view/package-summary.html">android.support.wearable.view</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/watchface/package-summary.html">android.support.wearable.watchface</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+              
+              
+    <li><h2>Interfaces</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html">GridViewPager.OnAdapterChangeListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html">GridViewPager.OnPageChangeListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.OnLayoutInflatedListener.html">WatchViewStub.OnLayoutInflatedListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ClickListener.html">WearableListView.ClickListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCenterProximityListener.html">WearableListView.OnCenterProximityListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html">WearableListView.OnCentralPositionChangedListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a></li>
+      </ul>
+    </li>
+              
+    <li><h2>Classes</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html">BoxInsetLayout.LayoutParams</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CardFragment.html">CardFragment</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CardFrame.html">CardFrame</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html">CardScrollView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html">CircledImageView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CircularButton.html">CircularButton</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/CrossfadeDrawable.html">CrossfadeDrawable</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.html">DelayedConfirmationView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html">DismissOverlayView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DotsPageIndicator.html">DotsPageIndicator</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/FragmentGridPagerAdapter.html">FragmentGridPagerAdapter</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPagerAdapter.html">GridPagerAdapter</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.html">GridViewPager</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.LayoutParams.html">GridViewPager.LayoutParams</a></li>
+          <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html">ProgressSpinner</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/SimpleAnimatorListener.html">SimpleAnimatorListener</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html">WatchViewStub</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableFrameLayout.html">WearableFrameLayout</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html">WearableFrameLayout.LayoutParams</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html">WearableListView</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.Adapter.html">WearableListView.Adapter</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></li>
+      </ul>
+    </li>
+              
+              
+              
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+     
+
+
+
+<div class="col-12"  id="doc-col">
+
+<div id="api-info-block">
+
+
+
+  
+   
+  
+  
+  
+  
+
+  
+   
+  
+  
+   
+  
+  
+   
+  
+  
+
+  
+   
+  
+  
+  
+  
+
+  
+   
+  
+  
+  
+  
+
+  
+   
+  
+  
+  
+  
+
+  
+   
+  
+  
+  
+  
+
+
+<div class="sum-details-links">
+
+Summary:
+
+
+
+
+
+
+  <a href="#inhconstants">Inherited Constants</a>
+  
+
+
+
+  &#124; <a href="#inhfields">Inherited Fields</a>
+  
+
+
+  &#124; <a href="#pubctors">Ctors</a>
+  
+
+
+
+  &#124; <a href="#pubmethods">Methods</a>
+  
+
+
+
+  &#124; <a href="#inhmethods">Inherited Methods</a>
+
+&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
+
+</div><!-- end sum-details-links -->
+<div class="api-level">
+  
+  
+  
+
+</div>
+</div><!-- end api-info-block -->
+
+
+<!-- ======== START OF CLASS DATA ======== -->
+
+<div id="jd-header">
+    public
+     
+     
+    
+    class
+<h1 itemprop="name">ProgressSpinner</h1>
+
+
+
+  
+  
+  
+
+  
+  
+  
+
+  
+    extends ProgressBar<br/>
+  
+  
+  
+
+  
+  
+  
+
+
+    
+
+
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+<table class="jd-inheritance-table">
+
+
+    <tr>
+         	
+        <td colspan="4" class="jd-inheritance-class-cell">java.lang.Object</td>
+    </tr>
+    
+
+    <tr>
+        
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+         	
+        <td colspan="3" class="jd-inheritance-class-cell">android.view.View</td>
+    </tr>
+    
+
+    <tr>
+        
+            <td class="jd-inheritance-space">&nbsp;</td>
+        
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+         	
+        <td colspan="2" class="jd-inheritance-class-cell">android.widget.ProgressBar</td>
+    </tr>
+    
+
+    <tr>
+        
+            <td class="jd-inheritance-space">&nbsp;</td>
+        
+            <td class="jd-inheritance-space">&nbsp;</td>
+        
+            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
+         	
+        <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.view.ProgressSpinner</td>
+    </tr>
+    
+
+</table>
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Class Overview</h2>
+<p itemprop="articleBody">An indeterminate progress spinner designed for wearables which cycles through colors.
+ There are four valid ways for colors to be set.
+ <ul>
+     <li>Do nothing. The defaults will be used.</li>
+     <li>Specify an array containing colors in the colors attribute</li>
+     <li>Specify a single color in the colors attribute</li>
+     <li>Call setColors(int[]) with the ARGB color values</li>
+ </ul>
+</p>
+
+
+
+
+
+</div><!-- jd-descr -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Summary</h2>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<table id="inhconstants" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Constants</div></th></tr>
+
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
+          ><img id="inherited-constants-android.view.View-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>From class
+android.view.View
+<div id="inherited-constants-android.view.View">
+  <div id="inherited-constants-android.view.View-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-constants-android.view.View-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_ASSERTIVE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_NONE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_POLITE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">DRAWING_CACHE_QUALITY_AUTO</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">DRAWING_CACHE_QUALITY_HIGH</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">DRAWING_CACHE_QUALITY_LOW</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FIND_VIEWS_WITH_CONTENT_DESCRIPTION</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FIND_VIEWS_WITH_TEXT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUSABLES_ALL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUSABLES_TOUCH_MODE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_BACKWARD</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_DOWN</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_FORWARD</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">FOCUS_UP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">GONE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">HAPTIC_FEEDBACK_ENABLED</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_AUTO</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_YES</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">INVISIBLE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">KEEP_SCREEN_ON</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYER_TYPE_HARDWARE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYER_TYPE_NONE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYER_TYPE_SOFTWARE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYOUT_DIRECTION_INHERIT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYOUT_DIRECTION_LOCALE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYOUT_DIRECTION_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">LAYOUT_DIRECTION_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">MEASURED_HEIGHT_STATE_SHIFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">MEASURED_SIZE_MASK</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">MEASURED_STATE_MASK</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">MEASURED_STATE_TOO_SMALL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">NO_ID</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">OVER_SCROLL_ALWAYS</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">OVER_SCROLL_IF_CONTENT_SCROLLS</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">OVER_SCROLL_NEVER</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCREEN_STATE_OFF</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCREEN_STATE_ON</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBARS_INSIDE_INSET</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBARS_INSIDE_OVERLAY</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBARS_OUTSIDE_INSET</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBARS_OUTSIDE_OVERLAY</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBAR_POSITION_DEFAULT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBAR_POSITION_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLLBAR_POSITION_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_AXIS_HORIZONTAL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_AXIS_NONE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_AXIS_VERTICAL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">STATUS_BAR_HIDDEN</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">STATUS_BAR_VISIBLE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_FULLSCREEN</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_HIDE_NAVIGATION</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE_STICKY</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_STABLE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">VIEW_LOG_TAG</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">VISIBLE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+
+
+
+
+
+
+
+</table>
+
+
+
+
+
+
+
+<!-- =========== FIELD SUMMARY =========== -->
+<table id="inhfields" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Fields</div></th></tr>
+
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
+          ><img id="inherited-fields-android.view.View-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>From class
+android.view.View
+<div id="inherited-fields-android.view.View">
+  <div id="inherited-fields-android.view.View-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-fields-android.view.View-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">ALPHA</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">EMPTY_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">ENABLED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">FOCUSED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">PRESSED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">ROTATION</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">ROTATION_X</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">ROTATION_Y</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">SCALE_X</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">SCALE_Y</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">SELECTED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">SELECTED_WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">TRANSLATION_X</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">TRANSLATION_Y</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">TRANSLATION_Z</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          protected
+          static
+          final
+          int[]</nobr></td>
+          <td class="jd-linkcol">WINDOW_FOCUSED_STATE_SET</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">X</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class="alt-color api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">Y</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
+          <td class="jd-typecol"><nobr>
+          public
+          static
+          final
+          Property&lt;View,&nbsp;Float&gt;</nobr></td>
+          <td class="jd-linkcol">Z</td>
+          <td class="jd-descrcol" width="100%">
+            
+            
+    
+
+          </td>
+      </tr>
+      
+    
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+
+
+
+
+
+
+
+</table>
+
+
+
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
+
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#ProgressSpinner(android.content.Context)">ProgressSpinner</a></span>(Context context)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#ProgressSpinner(android.content.Context, android.util.AttributeSet)">ProgressSpinner</a></span>(Context context, AttributeSet attrs)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            </nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#ProgressSpinner(android.content.Context, android.util.AttributeSet, int)">ProgressSpinner</a></span>(Context context, AttributeSet attrs, int defStyle)</nobr>
+        
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
+
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#hide()">hide</a></span>()</nobr>
+        
+        <div class="jd-descrdiv">
+          Stops the animation and hides the view.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#hideWithAnimation(android.animation.AnimatorListenerAdapter)">hideWithAnimation</a></span>(AnimatorListenerAdapter listener)</nobr>
+        
+        <div class="jd-descrdiv">
+          Hides the spinner with an animation.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#hideWithAnimation()">hideWithAnimation</a></span>()</nobr>
+        
+        <div class="jd-descrdiv">
+          Hides the spinner with an animation.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#setColors(int[])">setColors</a></span>(int[] colors)</nobr>
+        
+        <div class="jd-descrdiv">
+          Sets the color(s) to be used in the spinner.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#showWithAnimation(long, android.animation.AnimatorListenerAdapter)">showWithAnimation</a></span>(long delayMs, AnimatorListenerAdapter listener)</nobr>
+        
+        <div class="jd-descrdiv">
+          Shows the spinner with an animation and delay.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#showWithAnimation()">showWithAnimation</a></span>()</nobr>
+        
+        <div class="jd-descrdiv">
+          Shows the spinner with an animation.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#showWithAnimation(long)">showWithAnimation</a></span>(long delayMs)</nobr>
+        
+        <div class="jd-descrdiv">
+          Shows the spinner with an animation.
+          
+    
+
+        </div>
+  
+  </td></tr>
+
+
+
+</table>
+
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="inhmethods" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Methods</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.widget.ProgressBar" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.widget.ProgressBar-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  android.widget.ProgressBar
+
+<div id="inherited-methods-android.widget.ProgressBar">
+  <div id="inherited-methods-android.widget.ProgressBar-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.widget.ProgressBar-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">drawableStateChanged</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getIndeterminateDrawable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getIndeterminateTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getIndeterminateTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Interpolator</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getInterpolator</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMax</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getProgress</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getProgressBackgroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getProgressBackgroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getProgressDrawable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getProgressTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getProgressTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSecondaryProgress</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSecondaryProgressTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSecondaryProgressTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">incrementProgressBy</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">incrementSecondaryProgressBy</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isIndeterminate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onAttachedToWindow</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDetachedFromWindow</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDraw</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Parcelable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onSaveInstanceState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onVisibilityChanged</span>(View arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setIndeterminate</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setIndeterminateDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setIndeterminateDrawableTiled</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setIndeterminateTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setIndeterminateTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setInterpolator</span>(Context arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setInterpolator</span>(Interpolator arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setMax</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setProgress</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setProgressBackgroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setProgressBackgroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setProgressDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setProgressDrawableTiled</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setProgressTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setProgressTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            synchronized
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSecondaryProgress</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSecondaryProgressTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSecondaryProgressTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setVisibility</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.view.View-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  android.view.View
+
+<div id="inherited-methods-android.view.View">
+  <div id="inherited-methods-android.view.View-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.view.View-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewPropertyAnimator</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">animate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">announceForAccessibility</span>(CharSequence arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">awakenScrollBars</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">awakenScrollBars</span>(int arg0, boolean arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">awakenScrollBars</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">bringToFront</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">buildDrawingCache</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">buildDrawingCache</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">buildLayer</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">callOnClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">canResolveLayoutDirection</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">canResolveTextAlignment</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">canResolveTextDirection</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">canScrollHorizontally</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">canScrollVertically</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">cancelLongPress</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">cancelPendingInputEvents</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkInputConnectionProxy</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clearAnimation</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clearFocus</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">combineMeasuredStates</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeHorizontalScrollExtent</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeHorizontalScrollOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeHorizontalScrollRange</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeScroll</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeSystemWindowInsets</span>(WindowInsets arg0, Rect arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeVerticalScrollExtent</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeVerticalScrollOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeVerticalScrollRange</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            AccessibilityNodeInfo</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">createAccessibilityNodeInfo</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">destroyDrawingCache</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchGenericMotionEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedFling</span>(float arg0, float arg1, boolean arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedPreFling</span>(float arg0, float arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedPrePerformAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedPreScroll</span>(int arg0, int arg1, int[] arg2, int[] arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedScroll</span>(int arg0, int arg1, int arg2, int arg3, int[] arg4)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">draw</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">drawableStateChanged</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">findFocus</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">findViewById</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">findViewWithTag</span>(Object arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">fitSystemWindows</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">focusSearch</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">forceLayout</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">generateViewId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityLiveRegion</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            AccessibilityNodeProvider</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityNodeProvider</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityTraversalAfter</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityTraversalBefore</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAlpha</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Animation</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAnimation</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            IBinder</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getApplicationWindowToken</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBackground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBackgroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBackgroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBaseline</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBottom</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBottomFadingEdgeStrength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBottomPaddingOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getCameraDistance</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Rect</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipToOutline</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getContentDescription</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            Context</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getContext</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ContextMenu.ContextMenuInfo</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getContextMenuInfo</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDefaultSize</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Display</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDisplay</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int[]</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawableState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Bitmap</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingCache</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Bitmap</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingCache</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingCacheBackgroundColor</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingCacheQuality</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingRect</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            long</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getDrawingTime</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getElevation</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getFilterTouchesWhenObscured</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getFitsSystemWindows</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ArrayList&lt;View&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getFocusables</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getFocusedRect</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getGlobalVisibleRect</span>(Rect arg0, Point arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getGlobalVisibleRect</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Handler</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getHandler</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getHitRect</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getHorizontalFadingEdgeLength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getHorizontalScrollbarHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getImportantForAccessibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getKeepScreenOn</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            KeyEvent.DispatcherState</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getKeyDispatcherState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLabelFor</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLayerType</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLayoutDirection</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewGroup.LayoutParams</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLayoutParams</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLeft</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLeftFadingEdgeStrength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLeftPaddingOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLocalVisibleRect</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLocationInWindow</span>(int[] arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getLocationOnScreen</span>(int[] arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Matrix</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMatrix</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMeasuredHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMeasuredHeightAndState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMeasuredState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMeasuredWidth</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMeasuredWidthAndState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMinimumHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMinimumWidth</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getNextFocusDownId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getNextFocusForwardId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getNextFocusLeftId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getNextFocusRightId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getNextFocusUpId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            View.OnFocusChangeListener</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getOnFocusChangeListener</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewOutlineProvider</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getOutlineProvider</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getOverScrollMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewOverlay</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getOverlay</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingBottom</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingEnd</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingLeft</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingRight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingStart</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPaddingTop</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            ViewParent</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getParent</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewParent</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getParentForAccessibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPivotX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getPivotY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Resources</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getResources</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRightFadingEdgeStrength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRightPaddingOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootView</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRotation</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRotationX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRotationY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScaleX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScaleY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollBarDefaultDelayBeforeFade</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollBarFadeDuration</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollBarSize</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollBarStyle</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSolidColor</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            StateListAnimator</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getStateListAnimator</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSuggestedMinimumHeight</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSuggestedMinimumWidth</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemUiVisibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Object</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTag</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Object</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTag</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTextAlignment</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTextDirection</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTop</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTopFadingEdgeStrength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTopPaddingOffset</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            TouchDelegate</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTouchDelegate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ArrayList&lt;View&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTouchables</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTransitionName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTranslationX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTranslationY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getTranslationZ</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getVerticalFadingEdgeLength</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getVerticalScrollbarPosition</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getVerticalScrollbarWidth</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ViewTreeObserver</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getViewTreeObserver</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getVisibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWidth</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowAttachCount</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowId</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowId</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowSystemUiVisibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            IBinder</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowToken</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowVisibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getWindowVisibleDisplayFrame</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getX</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getY</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            float</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getZ</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasFocus</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasFocusable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasNestedScrollingParent</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasOnClickListeners</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasOverlappingRendering</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasTransientState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasWindowFocus</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            View</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">inflate</span>(Context arg0, int arg1, ViewGroup arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidate</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidateOutline</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isAccessibilityFocused</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isActivated</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isAttachedToWindow</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isDirty</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isDrawingCacheEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isDuplicateParentStateEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isFocusable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isFocusableInTouchMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isFocused</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isHapticFeedbackEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isHardwareAccelerated</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isHorizontalFadingEdgeEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isHorizontalScrollBarEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isHovered</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isImportantForAccessibility</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isInEditMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isInLayout</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isInTouchMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isLaidOut</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isLayoutRequested</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isLongClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isNestedScrollingEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isOpaque</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isPaddingOffsetRequired</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isPaddingRelative</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isPressed</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isSaveEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isSaveFromParentEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isScrollContainer</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isScrollbarFadingEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isSelected</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isShown</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isSoundEffectsEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isTextAlignmentResolved</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isTextDirectionResolved</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isVerticalFadingEdgeEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isVerticalScrollBarEnabled</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">measure</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int[]</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">mergeDrawableStates</span>(int[] arg0, int[] arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">offsetLeftAndRight</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">offsetTopAndBottom</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onAnimationEnd</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onAnimationStart</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onApplyWindowInsets</span>(WindowInsets arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onAttachedToWindow</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onCancelPendingInputEvents</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onCheckIsTextEditor</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onConfigurationChanged</span>(Configuration arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onCreateContextMenu</span>(ContextMenu arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int[]</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            InputConnection</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onCreateInputConnection</span>(EditorInfo arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDetachedFromWindow</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDisplayHint</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDragEvent</span>(DragEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDraw</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawScrollBars</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onFilterTouchEventForSecurity</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onFinishInflate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onFinishTemporaryDetach</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onFocusChanged</span>(boolean arg0, int arg1, Rect arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onGenericMotionEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onHoverChanged</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onHoverEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyPreIme</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyShortcut</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onOverScrolled</span>(int arg0, int arg1, boolean arg2, boolean arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onRtlPropertiesChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Parcelable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onSaveInstanceState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onScreenStateChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onScrollChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onSetAlpha</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onStartTemporaryDetach</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onTouchEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onTrackballEvent</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onVisibilityChanged</span>(View arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowFocusChanged</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowSystemUiVisibilityChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onWindowVisibilityChanged</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">overScrollBy</span>(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, boolean arg8)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performHapticFeedback</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performHapticFeedback</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performLongClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">playSoundEffect</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">post</span>(Runnable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postDelayed</span>(Runnable arg0, long arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidate</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidateDelayed</span>(long arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidateDelayed</span>(long arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidateOnAnimation</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postInvalidateOnAnimation</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postOnAnimation</span>(Runnable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">postOnAnimationDelayed</span>(Runnable arg0, long arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">refreshDrawableState</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">removeCallbacks</span>(Runnable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">removeOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">removeOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestApplyInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestFitSystemWindows</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestFocus</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestFocus</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestFocusFromTouch</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestLayout</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestRectangleOnScreen</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestRectangleOnScreen</span>(Rect arg0, boolean arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestUnbufferedDispatch</span>(MotionEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">resolveSize</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            static
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">resolveSizeAndState</span>(int arg0, int arg1, int arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">restoreHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">saveHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">scrollBy</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">scrollTo</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAccessibilityDelegate</span>(View.AccessibilityDelegate arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAccessibilityLiveRegion</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAccessibilityTraversalAfter</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAccessibilityTraversalBefore</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setActivated</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAlpha</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setAnimation</span>(Animation arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackgroundDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackgroundResource</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackgroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBackgroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setBottom</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setCameraDistance</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setClickable</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setClipToOutline</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setContentDescription</span>(CharSequence arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheQuality</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDuplicateParentStateEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setElevation</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setFadingEdgeLength</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setFilterTouchesWhenObscured</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setFitsSystemWindows</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setFocusable</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setFocusableInTouchMode</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setHasTransientState</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setHorizontalFadingEdgeEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setHorizontalScrollBarEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setHovered</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setImportantForAccessibility</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setKeepScreenOn</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLabelFor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLayerPaint</span>(Paint arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLayerType</span>(int arg0, Paint arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLayoutDirection</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLeft</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLongClickable</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setMeasuredDimension</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setMinimumHeight</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setMinimumWidth</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNestedScrollingEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNextFocusDownId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNextFocusForwardId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNextFocusLeftId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNextFocusRightId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNextFocusUpId</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnApplyWindowInsetsListener</span>(View.OnApplyWindowInsetsListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnClickListener</span>(View.OnClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnCreateContextMenuListener</span>(View.OnCreateContextMenuListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnDragListener</span>(View.OnDragListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnFocusChangeListener</span>(View.OnFocusChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnGenericMotionListener</span>(View.OnGenericMotionListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnHoverListener</span>(View.OnHoverListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnKeyListener</span>(View.OnKeyListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnLongClickListener</span>(View.OnLongClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOutlineProvider</span>(ViewOutlineProvider arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOverScrollMode</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setPadding</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setPaddingRelative</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setPivotX</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setPivotY</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setPressed</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setRight</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setRotation</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setRotationX</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setRotationY</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSaveEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSaveFromParentEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScaleX</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScaleY</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollBarDefaultDelayBeforeFade</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollBarFadeDuration</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollBarSize</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollBarStyle</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollContainer</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollX</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollY</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollbarFadingEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSelected</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSoundEffectsEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setStateListAnimator</span>(StateListAnimator arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setSystemUiVisibility</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTag</span>(int arg0, Object arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTag</span>(Object arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTextAlignment</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTextDirection</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTop</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTouchDelegate</span>(TouchDelegate arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTransitionName</span>(String arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTranslationX</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTranslationY</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setTranslationZ</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setVerticalFadingEdgeEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setVerticalScrollBarEnabled</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setVerticalScrollbarPosition</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setVisibility</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setWillNotCacheDrawing</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setWillNotDraw</span>(boolean arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setX</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setY</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setZ</span>(float arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">showContextMenu</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startAnimation</span>(Animation arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startDrag</span>(ClipData arg0, View.DragShadowBuilder arg1, Object arg2, int arg3)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startNestedScroll</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">stopNestedScroll</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">unscheduleDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">willNotCacheDrawing</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">willNotDraw</span>()</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-java.lang.Object-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  java.lang.Object
+
+<div id="inherited-methods-java.lang.Object">
+  <div id="inherited-methods-java.lang.Object-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Object</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clone</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">equals</span>(Object arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">finalize</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            Class&lt;?&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClass</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hashCode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notify</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notifyAll</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">wait</span>(long arg0)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  android.graphics.drawable.Drawable.Callback
+
+<div id="inherited-methods-android.graphics.drawable.Drawable.Callback">
+  <div id="inherited-methods-android.graphics.drawable.Drawable.Callback-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.graphics.drawable.Drawable.Callback-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  android.view.KeyEvent.Callback
+
+<div id="inherited-methods-android.view.KeyEvent.Callback">
+  <div id="inherited-methods-android.view.KeyEvent.Callback-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.view.KeyEvent.Callback-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  android.view.accessibility.AccessibilityEventSource
+
+<div id="inherited-methods-android.view.accessibility.AccessibilityEventSource">
+  <div id="inherited-methods-android.view.accessibility.AccessibilityEventSource-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.view.accessibility.AccessibilityEventSource-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+</table>
+
+
+</div><!-- jd-descr (summary) -->
+
+<!-- Details -->
+
+
+
+
+
+
+
+
+<!-- XML Attributes -->
+
+
+<!-- Enum Values -->
+
+
+<!-- Constants -->
+
+
+<!-- Fields -->
+
+
+<!-- Public ctors -->
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<h2>Public Constructors</h2>
+
+
+
+<A NAME="ProgressSpinner(android.content.Context)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        
+      </span>
+      <span class="sympad">ProgressSpinner</span>
+      <span class="normal">(Context context)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="ProgressSpinner(android.content.Context, android.util.AttributeSet)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        
+      </span>
+      <span class="sympad">ProgressSpinner</span>
+      <span class="normal">(Context context, AttributeSet attrs)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="ProgressSpinner(android.content.Context, android.util.AttributeSet, int)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        
+      </span>
+      <span class="sympad">ProgressSpinner</span>
+      <span class="normal">(Context context, AttributeSet attrs, int defStyle)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<!-- Protected ctors -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+<!-- Public methdos -->
+
+<h2>Public Methods</h2>
+
+
+
+<A NAME="hide()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">hide</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Stops the animation and hides the view.
+</p></div>
+
+    </div>
+</div>
+
+
+<A NAME="hideWithAnimation(android.animation.AnimatorListenerAdapter)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">hideWithAnimation</span>
+      <span class="normal">(AnimatorListenerAdapter listener)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Hides the spinner with an animation.
+
+ <p>Will always cancel all other animations for this spinner instance regardless of whether
+ the hide animation will actually run.
+
+ <p>If the hide animation will not run because of the existing visible state of the
+ spinner, the listener onAnimationEnd() method will be called immediately with a null
+ Animation.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>listener</td>
+          <td>listener to receive animation callbacks while hiding spinner
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="hideWithAnimation()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">hideWithAnimation</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Hides the spinner with an animation.
+
+ <p>Will always cancel all other animations for this spinner instance regardless of whether
+ the hide animation will actually run.
+</p></div>
+
+    </div>
+</div>
+
+
+<A NAME="setColors(int[])"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">setColors</span>
+      <span class="normal">(int[] colors)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Sets the color(s) to be used in the spinner. They will be shown repeatedly and sequentially.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>colors</td>
+          <td>Array of one or more integers representing colors in ARGB format.
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="showWithAnimation(long, android.animation.AnimatorListenerAdapter)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">showWithAnimation</span>
+      <span class="normal">(long delayMs, AnimatorListenerAdapter listener)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Shows the spinner with an animation and delay.
+
+ <p>Will always cancel all other animations for this spinner instance.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>delayMs</td>
+          <td>delay before starting the animation in milliseconds</td>
+        </tr>
+        <tr>
+          <th>listener</td>
+          <td>listener to receive animation callbacks while showing spinner
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+<A NAME="showWithAnimation()"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">showWithAnimation</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Shows the spinner with an animation. This is equivalent to calling
+ <code><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html#showWithAnimation(long)">showWithAnimation(long)</a></code> with a delay of 0.
+</p></div>
+
+    </div>
+</div>
+
+
+<A NAME="showWithAnimation(long)"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+         
+         
+         
+         
+        void
+      </span>
+      <span class="sympad">showWithAnimation</span>
+      <span class="normal">(long delayMs)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Shows the spinner with an animation.
+
+ <p>Will always cancel all other animations for this spinner instance.</p></div>
+  <div class="jd-tagdata">
+      <h5 class="jd-tagtitle">Parameters</h5>
+      <table class="jd-tagtable">
+        <tr>
+          <th>delayMs</td>
+          <td>delay before starting the animation in milliseconds
+</td>
+        </tr>
+      </table>
+  </div>
+
+    </div>
+</div>
+
+
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+
+
+
+<!-- ========= END OF CLASS DATA ========= -->
+<A NAME="navbar_top"></A>
+</div> <!-- jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+    
+      <p class="dac-footer-copyright">
+        
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+        
+    Android Wearable Support&nbsp;r &mdash; 
+<script src="../../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+    
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- end doc-content -->
+
+</div> <!-- end .cols --> 
+</div> <!-- end body-content --> 
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/wearable/view/SimpleAnimatorListener.html b/docs/html/reference/android/support/wearable/view/SimpleAnimatorListener.html
index 9940f3b..4908df6 100644
--- a/docs/html/reference/android/support/wearable/view/SimpleAnimatorListener.html
+++ b/docs/html/reference/android/support/wearable/view/SimpleAnimatorListener.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -897,7 +904,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1099,7 +1106,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.animation.Animator.AnimatorListener" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.animation.Animator.AnimatorListener-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/WatchViewStub.OnLayoutInflatedListener.html b/docs/html/reference/android/support/wearable/view/WatchViewStub.OnLayoutInflatedListener.html
index 9492429..2cf210d 100644
--- a/docs/html/reference/android/support/wearable/view/WatchViewStub.OnLayoutInflatedListener.html
+++ b/docs/html/reference/android/support/wearable/view/WatchViewStub.OnLayoutInflatedListener.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
diff --git a/docs/html/reference/android/support/wearable/view/WatchViewStub.html b/docs/html/reference/android/support/wearable/view/WatchViewStub.html
index 170a165..9b191bb 100644
--- a/docs/html/reference/android/support/wearable/view/WatchViewStub.html
+++ b/docs/html/reference/android/support/wearable/view/WatchViewStub.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -146,7 +151,7 @@
 
 </head>
 
-<body class="gc-documentation 
+<body class="gc-documentation
   develop reference" itemscope itemtype="http://schema.org/Article">
   <div id="doc-api-level" class="" style="display:none"></div>
   <a name="top"></a>
@@ -221,13 +226,13 @@
           </a>
 
         <ul class="dac-header-crumbs">
-          
+
           <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">WatchViewStub</a></li>
         </ul>
 
-        
-        
-        
+
+
+
   <div class="dac-header-search" id="search-container">
     <div class="dac-header-search-inner">
       <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
@@ -267,7 +272,7 @@
     </div>
   </div>
 
-        
+
 
         <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
           <span class="dac-sprite dac-google-play"></span>
@@ -284,7 +289,7 @@
     </div>
   </div> <!--end header-wrapper -->
 
-  
+
   <!-- Navigation-->
   <nav class="dac-nav">
     <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
@@ -370,7 +375,7 @@
           <li class="dac-nav-item google">
             <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
           </li>
-          
+
           <li class="dac-nav-item preview">
             <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
           </li>
@@ -407,7 +412,7 @@
     </ul>
   </nav>
   <!-- end navigation-->
-  
+
 
 
 
@@ -439,7 +444,7 @@
             <div id="packages-nav" class="scroll-pane">
 
               <ul>
-                
+
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
     <li class="api apilevel-">
@@ -465,10 +470,11 @@
 
 
             <ul>
-              
-              
+
+
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -481,9 +487,10 @@
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a></li>
       </ul>
     </li>
-              
+
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -511,9 +518,9 @@
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></li>
       </ul>
     </li>
-              
-              
-              
+
+
+
             </ul><br/>
 
 
@@ -556,7 +563,7 @@
         });
     </script>
 
-     
+
 
 
 
@@ -566,74 +573,74 @@
 
 
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-   
-  
-  
-  
 
-  
-   
-  
-  
-   
-  
-  
-   
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
 
 <div class="sum-details-links">
@@ -641,7 +648,7 @@
 Summary:
 
   <a href="#nestedclasses">Nested Classes</a>
-  
+
 
 
 
@@ -649,25 +656,25 @@
 
 
   &#124; <a href="#inhconstants">Inherited Constants</a>
-  
+
 
 
 
   &#124; <a href="#inhfields">Inherited Fields</a>
-  
+
 
 
   &#124; <a href="#pubctors">Ctors</a>
-  
+
 
 
 
   &#124; <a href="#pubmethods">Methods</a>
-  
+
 
 
   &#124; <a href="#promethods">Protected Methods</a>
-  
+
 
 
   &#124; <a href="#inhmethods">Inherited Methods</a>
@@ -676,9 +683,9 @@
 
 </div><!-- end sum-details-links -->
 <div class="api-level">
-  
-  
-  
+
+
+
 
 </div>
 </div><!-- end api-info-block -->
@@ -688,38 +695,38 @@
 
 <div id="jd-header">
     public
-     
-     
-    
+
+
+
     class
 <h1 itemprop="name">WatchViewStub</h1>
 
 
 
-  
-  
-  
 
-  
-  
-  
 
-  
-  
-  
 
-  
+
+
+
+
+
+
+
+
+
+
     extends FrameLayout<br/>
-  
-  
-  
-
-  
-  
-  
 
 
-    
+
+
+
+
+
+
+
+
 
 
 </div><!-- end header -->
@@ -731,54 +738,54 @@
 
 
     <tr>
-         	
+
         <td colspan="5" class="jd-inheritance-class-cell">java.lang.Object</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="4" class="jd-inheritance-class-cell">android.view.View</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="3" class="jd-inheritance-class-cell">android.view.ViewGroup</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="2" class="jd-inheritance-class-cell">android.widget.FrameLayout</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.view.WatchViewStub</td>
     </tr>
-    
+
 
 </table>
 
@@ -830,24 +837,24 @@
 <table id="nestedclasses" class="jd-sumtable"><tr><th colspan="12">Nested Classes</th></tr>
 
 
-  
+
     <tr class="alt-color api apilevel-" >
       <td class="jd-typecol"><nobr>
-        
-         
-         
-        
+
+
+
+
         interface</nobr></td>
       <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.OnLayoutInflatedListener.html">WatchViewStub.OnLayoutInflatedListener</a></td>
       <td class="jd-descrcol" width="100%">
         Listener for detecting when internal layout inflation has completed.&nbsp;
-        
-    
+
+
 
       </td>
     </tr>
-    
-    
+
+
 
 
 
@@ -877,7 +884,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup
 <div id="inherited-constants-android.view.ViewGroup">
@@ -886,129 +893,129 @@
   </div>
   <div id="inherited-constants-android.view.ViewGroup-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CLIP_TO_PADDING_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_AFTER_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BEFORE_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BLOCK_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_MODE_CLIP_BOUNDS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_MODE_OPTICAL_BOUNDS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_ALL_CACHES</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_ANIMATION_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_NO_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_SCROLLING_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -1021,7 +1028,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1030,957 +1037,1065 @@
   </div>
   <div id="inherited-constants-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_ASSERTIVE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_POLITE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_AUTO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_HIGH</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_LOW</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FIND_VIEWS_WITH_CONTENT_DESCRIPTION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FIND_VIEWS_WITH_TEXT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUSABLES_ALL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUSABLES_TOUCH_MODE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BACKWARD</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_DOWN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_FORWARD</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_LEFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_RIGHT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_UP</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">GONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">HAPTIC_FEEDBACK_ENABLED</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_AUTO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_YES</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">INVISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">KEEP_SCREEN_ON</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_HARDWARE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_SOFTWARE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_HEIGHT_STATE_SHIFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_SIZE_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_STATE_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_STATE_TOO_SMALL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">NO_ID</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_ALWAYS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_IF_CONTENT_SCROLLS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_NEVER</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCREEN_STATE_OFF</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCREEN_STATE_ON</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_INSIDE_INSET</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_INSIDE_OVERLAY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_OUTSIDE_INSET</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_OUTSIDE_OVERLAY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_DEFAULT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_LEFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_RIGHT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_HORIZONTAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_VERTICAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">STATUS_BAR_HIDDEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">STATUS_BAR_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_FULLSCREEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_HIDE_NAVIGATION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE_STICKY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_STABLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -2022,7 +2137,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -2031,9 +2146,9 @@
   </div>
   <div id="inherited-fields-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2042,14 +2157,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ALPHA</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2058,14 +2173,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">EMPTY_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2074,14 +2189,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2090,14 +2205,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2106,14 +2221,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2122,14 +2237,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2138,14 +2253,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2154,14 +2269,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2170,14 +2285,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2186,14 +2301,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2202,14 +2317,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2218,14 +2333,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2234,14 +2349,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2250,14 +2365,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2266,14 +2381,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2282,14 +2397,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2298,14 +2413,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2314,14 +2429,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2330,14 +2445,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2346,14 +2461,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2362,14 +2477,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2378,14 +2493,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2394,14 +2509,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2410,14 +2525,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2426,14 +2541,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2442,14 +2557,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2458,14 +2573,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2474,14 +2589,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2490,14 +2605,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2506,14 +2621,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2522,14 +2637,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2538,14 +2653,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2554,14 +2669,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2570,14 +2685,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">SCALE_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2586,14 +2701,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">SCALE_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2602,14 +2717,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2618,14 +2733,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2634,14 +2749,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2650,14 +2765,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2666,14 +2781,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_Z</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2682,14 +2797,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2698,14 +2813,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2714,14 +2829,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2730,14 +2845,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">Z</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
 </table>
   </div>
 </div>
@@ -2766,51 +2881,51 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html#WatchViewStub(android.content.Context)">WatchViewStub</a></span>(Context context)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html#WatchViewStub(android.content.Context, android.util.AttributeSet)">WatchViewStub</a></span>(Context context, AttributeSet attrs)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html#WatchViewStub(android.content.Context, android.util.AttributeSet, int)">WatchViewStub</a></span>(Context context, AttributeSet attrs, int defStyle)</nobr>
-        
+
   </td></tr>
 
 
@@ -2827,105 +2942,105 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html#onApplyWindowInsets(android.view.WindowInsets)">onApplyWindowInsets</a></span>(WindowInsets insets)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html#onMeasure(int, int)">onMeasure</a></span>(int widthMeasureSpec, int heightMeasureSpec)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html#setOnLayoutInflatedListener(android.support.wearable.view.WatchViewStub.OnLayoutInflatedListener)">setOnLayoutInflatedListener</a></span>(<a href="../../../../../reference/android/support/wearable/view/WatchViewStub.OnLayoutInflatedListener.html">WatchViewStub.OnLayoutInflatedListener</a> listener)</nobr>
-        
+
         <div class="jd-descrdiv">
           Set a listener to be notified when one of the specified sub-layouts is inflated into
  this stub container.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html#setRectLayout(int)">setRectLayout</a></span>(int resId)</nobr>
-        
+
         <div class="jd-descrdiv">
           Set a layout resource to be inflated when this stub is within a rectangular container.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html#setRoundLayout(int)">setRoundLayout</a></span>(int resId)</nobr>
-        
+
         <div class="jd-descrdiv">
           Set a layout resource to be inflated when this stub is within a round container.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
@@ -2940,35 +3055,35 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html#onAttachedToWindow()">onAttachedToWindow</a></span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html#onLayout(boolean, int, int, int, int)">onLayout</a></span>(boolean changed, int left, int top, int right, int bottom)</nobr>
-        
+
   </td></tr>
 
 
@@ -2989,7 +3104,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.widget.FrameLayout" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.widget.FrameLayout-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -3001,454 +3116,198 @@
   </div>
   <div id="inherited-methods-android.widget.FrameLayout-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">draw</span>(Canvas arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">drawableStateChanged</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">gatherTransparentRegion</span>(Region arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateDefaultLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(AttributeSet arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getConsiderGoneChildrenWhenMeasuring</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            Drawable</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForeground</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundGravity</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            ColorStateList</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundTintList</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            PorterDuff.Mode</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getForegroundTintMode</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasureAllChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMeasureAllChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setVisibility</span>(int arg0)</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">shouldDelayChildPressedState</span>()</nobr>
-        
-  </td></tr>
 
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
-        
   </td></tr>
 
 
@@ -3475,2598 +3334,2647 @@
   </div>
   <div id="inherited-methods-android.view.ViewGroup-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addStatesFromChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addViewInLayout</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addViewInLayout</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">attachLayoutAnimationParameters</span>(View arg0, ViewGroup.LayoutParams arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">attachViewToParent</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringChildToFront</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canAnimate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+
         <span class="sympad">checkLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childDrawableStateChanged</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childHasTransientStateChanged</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cleanupLayoutState</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearChildFocus</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearDisappearingChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">debug</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachAllViewsFromParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewFromParent</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewFromParent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewsFromParent</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchFreezeSelfOnly</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchThawSelfOnly</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawChild</span>(Canvas arg0, View arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableStateChanged</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">endViewTransition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusableViewAvailable</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">gatherTransparentRegion</span>(Region arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateDefaultLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(AttributeSet arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildAt</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildCount</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildDrawingOrder</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildMeasureSpec</span>(int arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildStaticTransformation</span>(View arg0, Transformation arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildVisibleRect</span>(View arg0, Rect arg1, Point arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipToPadding</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDescendantFocusability</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusedChild</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             LayoutAnimationController</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Animation.AnimationListener</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutAnimationListener</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             LayoutTransition</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutTransition</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNestedScrollAxes</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOverlay</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverlay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPersistentDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchscreenBlocksFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasTransientState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">indexOfChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChild</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChildInParent</span>(int[] arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAlwaysDrawnWithCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAnimationCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isChildrenDrawingOrderEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isChildrenDrawnWithCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isMotionEventSplittingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTransitionGroup</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChild</span>(View arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChildWithMargins</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChildren</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifySubtreeAccessibilityStateChanged</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetDescendantRectToMyCoords</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetRectIntoDescendantCoords</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationEnd</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationStart</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedFling</span>(View arg0, float arg1, float arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreFling</span>(View arg0, float arg1, float arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPrePerformAccessibilityAction</span>(View arg0, int arg1, Bundle arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreScroll</span>(View arg0, int arg1, int arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScroll</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScrollAccepted</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRequestFocusInDescendants</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRequestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartNestedScroll</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStopNestedScroll</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewAdded</span>(View arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewRemoved</span>(View arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeAllViews</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeAllViewsInLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeDetachedView</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewAt</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewInLayout</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViews</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewsInLayout</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestTransparentRegion</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAddStatesFromChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAlwaysDrawnWithCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAnimationCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawingCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawingOrderEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawnWithCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToPadding</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDescendantFocusability</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutAnimation</span>(LayoutAnimationController arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutAnimationListener</span>(Animation.AnimationListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutMode</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutTransition</span>(LayoutTransition arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMotionEventSplittingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnHierarchyChangeListener</span>(ViewGroup.OnHierarchyChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPersistentDrawingCache</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setStaticTransformationsEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTouchscreenBlocksFocus</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTransitionGroup</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">shouldDelayChildPressedState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenuForChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startViewTransition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -6081,7 +5989,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -6093,7718 +6001,8102 @@
   </div>
   <div id="inherited-methods-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewPropertyAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">animate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">announceForAccessibility</span>(CharSequence arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>(int arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringToFront</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildDrawingCache</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildLayer</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">callOnClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canScrollHorizontally</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canScrollVertically</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cancelLongPress</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cancelPendingInputEvents</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkInputConnectionProxy</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">combineMeasuredStates</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeSystemWindowInsets</span>(WindowInsets arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             AccessibilityNodeInfo</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createAccessibilityNodeInfo</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">destroyDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericMotionEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedFling</span>(float arg0, float arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPreFling</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPrePerformAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPreScroll</span>(int arg0, int arg1, int[] arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedScroll</span>(int arg0, int arg1, int arg2, int arg3, int[] arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">draw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableStateChanged</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewById</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewWithTag</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">fitSystemWindows</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">forceLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateViewId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityLiveRegion</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             AccessibilityNodeProvider</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityNodeProvider</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityTraversalAfter</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityTraversalBefore</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAlpha</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Animation</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             IBinder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getApplicationWindowToken</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Drawable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackground</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ColorStateList</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackgroundTintList</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             PorterDuff.Mode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackgroundTintMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBaseline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottom</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottomFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottomPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getCameraDistance</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Rect</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipBounds</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipToOutline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             CharSequence</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContentDescription</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             Context</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContext</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ContextMenu.ContextMenuInfo</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContextMenuInfo</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDefaultSize</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Display</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDisplay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawableState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Bitmap</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCache</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Bitmap</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCacheBackgroundColor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCacheQuality</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             long</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingTime</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getElevation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFilterTouchesWhenObscured</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFitsSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ArrayList&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusables</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusedRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getGlobalVisibleRect</span>(Rect arg0, Point arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getGlobalVisibleRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Handler</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHandler</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHitRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHorizontalFadingEdgeLength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHorizontalScrollbarHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getImportantForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getKeepScreenOn</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             KeyEvent.DispatcherState</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getKeyDispatcherState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLabelFor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayerType</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeft</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeftFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeftPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocalVisibleRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocationInWindow</span>(int[] arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocationOnScreen</span>(int[] arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Matrix</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMatrix</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredHeightAndState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredWidthAndState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMinimumHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMinimumWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusDownId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusForwardId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusLeftId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusRightId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusUpId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View.OnFocusChangeListener</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOnFocusChangeListener</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOutlineProvider</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOutlineProvider</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverScrollMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOverlay</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverlay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingBottom</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingEnd</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingLeft</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingRight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingStart</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingTop</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParentForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPivotX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPivotY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Resources</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getResources</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRightFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRightPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRootView</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotationX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotationY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScaleX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScaleY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarDefaultDelayBeforeFade</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarFadeDuration</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarSize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarStyle</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSolidColor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             StateListAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getStateListAnimator</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSuggestedMinimumHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSuggestedMinimumWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSystemUiVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTag</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTag</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTop</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTopFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTopPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             TouchDelegate</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchDelegate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ArrayList&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchables</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTransitionName</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationZ</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalFadingEdgeLength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalScrollbarPosition</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalScrollbarWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewTreeObserver</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getViewTreeObserver</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowAttachCount</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowId</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowSystemUiVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             IBinder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowToken</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowVisibleDisplayFrame</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getZ</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasNestedScrollingParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasOnClickListeners</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasOverlappingRendering</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasTransientState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasWindowFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">inflate</span>(Context arg0, int arg1, ViewGroup arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateOutline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAccessibilityFocused</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isActivated</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isClickable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDirty</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDrawingCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDuplicateParentStateEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocusableInTouchMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocused</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHapticFeedbackEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHardwareAccelerated</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHorizontalFadingEdgeEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHorizontalScrollBarEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHovered</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isImportantForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInEditMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInTouchMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLaidOut</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutRequested</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLongClickable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isNestedScrollingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isOpaque</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPaddingOffsetRequired</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPaddingRelative</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPressed</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSaveEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSaveFromParentEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isScrollContainer</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isScrollbarFadingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSelected</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isShown</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSoundEffectsEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextAlignmentResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isVerticalFadingEdgeEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isVerticalScrollBarEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">mergeDrawableStates</span>(int[] arg0, int[] arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetLeftAndRight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetTopAndBottom</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAnimationEnd</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAnimationStart</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCancelPendingInputEvents</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCheckIsTextEditor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             InputConnection</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateInputConnection</span>(EditorInfo arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDrawScrollBars</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFilterTouchEventForSecurity</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFinishInflate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFinishTemporaryDetach</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFocusChanged</span>(boolean arg0, int arg1, Rect arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onGenericMotionEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onHoverChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyPreIme</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyShortcut</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onOverScrolled</span>(int arg0, int arg1, boolean arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRtlPropertiesChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Parcelable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSaveInstanceState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onScreenStateChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onScrollChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSetAlpha</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartTemporaryDetach</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">overScrollBy</span>(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, boolean arg8)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performHapticFeedback</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performHapticFeedback</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performLongClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">playSoundEffect</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">post</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postDelayed</span>(Runnable arg0, long arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateDelayed</span>(long arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateDelayed</span>(long arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateOnAnimation</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateOnAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postOnAnimation</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postOnAnimationDelayed</span>(Runnable arg0, long arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">refreshDrawableState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeCallbacks</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestApplyInsets</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFitSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocusFromTouch</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestRectangleOnScreen</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestRectangleOnScreen</span>(Rect arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestUnbufferedDispatch</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">resolveSize</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">resolveSizeAndState</span>(int arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">restoreHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">saveHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollBy</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollTo</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityDelegate</span>(View.AccessibilityDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityLiveRegion</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityTraversalAfter</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityTraversalBefore</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAlpha</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAnimation</span>(Animation arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackground</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundColor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundResource</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundTintList</span>(ColorStateList arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBottom</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setCameraDistance</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClickable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipBounds</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToOutline</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setContentDescription</span>(CharSequence arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheQuality</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDuplicateParentStateEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setElevation</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFadingEdgeLength</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFilterTouchesWhenObscured</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFitsSystemWindows</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFocusable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFocusableInTouchMode</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHasTransientState</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHorizontalFadingEdgeEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHorizontalScrollBarEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHovered</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setImportantForAccessibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setKeepScreenOn</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLabelFor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayerPaint</span>(Paint arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayerType</span>(int arg0, Paint arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutDirection</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLeft</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLongClickable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMeasuredDimension</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMinimumHeight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMinimumWidth</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNestedScrollingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusDownId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusForwardId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusLeftId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusRightId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusUpId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnApplyWindowInsetsListener</span>(View.OnApplyWindowInsetsListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnClickListener</span>(View.OnClickListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnCreateContextMenuListener</span>(View.OnCreateContextMenuListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnDragListener</span>(View.OnDragListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnFocusChangeListener</span>(View.OnFocusChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnGenericMotionListener</span>(View.OnGenericMotionListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnHoverListener</span>(View.OnHoverListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnKeyListener</span>(View.OnKeyListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnLongClickListener</span>(View.OnLongClickListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOutlineProvider</span>(ViewOutlineProvider arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOverScrollMode</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPadding</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPaddingRelative</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPivotX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPivotY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotation</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotationX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotationY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSaveEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSaveFromParentEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScaleX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScaleY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarDefaultDelayBeforeFade</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarFadeDuration</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarSize</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarStyle</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollContainer</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollY</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollbarFadingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSoundEffectsEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setStateListAnimator</span>(StateListAnimator arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSystemUiVisibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTag</span>(int arg0, Object arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTag</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTextAlignment</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTextDirection</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTop</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTouchDelegate</span>(TouchDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTransitionName</span>(String arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationZ</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalFadingEdgeEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalScrollBarEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalScrollbarPosition</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVisibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setWillNotCacheDrawing</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setWillNotDraw</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setZ</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenu</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionMode</span>(ActionMode.Callback arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startAnimation</span>(Animation arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startDrag</span>(ClipData arg0, View.DragShadowBuilder arg1, Object arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startNestedScroll</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">stopNestedScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">toString</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">willNotCacheDrawing</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">willNotDraw</span>()</nobr>
-        
+
   </td></tr>
 
 
@@ -13819,7 +14111,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -13831,182 +14123,182 @@
   </div>
   <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clone</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">equals</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">finalize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             Class&lt;?&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClass</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hashCode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notify</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifyAll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">toString</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>(long arg0)</nobr>
-        
+
   </td></tr>
 
 
@@ -14021,7 +14313,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewParent-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14033,662 +14325,678 @@
   </div>
   <div id="inherited-methods-android.view.ViewParent-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringChildToFront</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childDrawableStateChanged</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childHasTransientStateChanged</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearChildFocus</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusableViewAvailable</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildVisibleRect</span>(View arg0, Rect arg1, Point arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParentForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChild</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChildInParent</span>(int[] arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutRequested</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextAlignmentResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifySubtreeAccessibilityStateChanged</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedFling</span>(View arg0, float arg1, float arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreFling</span>(View arg0, float arg1, float arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPrePerformAccessibilityAction</span>(View arg0, int arg1, Bundle arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreScroll</span>(View arg0, int arg1, int arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScroll</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScrollAccepted</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartNestedScroll</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStopNestedScroll</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFitSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestTransparentRegion</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenuForChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14703,7 +15011,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewManager-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14715,54 +15023,54 @@
   </div>
   <div id="inherited-methods-android.view.ViewManager-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14777,7 +15085,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14789,54 +15097,54 @@
   </div>
   <div id="inherited-methods-android.graphics.drawable.Drawable.Callback-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14851,7 +15159,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14863,70 +15171,70 @@
   </div>
   <div id="inherited-methods-android.view.KeyEvent.Callback-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -14941,7 +15249,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14953,38 +15261,38 @@
   </div>
   <div id="inherited-methods-android.view.accessibility.AccessibilityEventSource-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
@@ -15030,30 +15338,30 @@
 
 <A NAME="WatchViewStub(android.content.Context)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">WatchViewStub</span>
       <span class="normal">(Context context)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15062,30 +15370,30 @@
 
 <A NAME="WatchViewStub(android.content.Context, android.util.AttributeSet)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">WatchViewStub</span>
       <span class="normal">(Context context, AttributeSet attrs)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15094,30 +15402,30 @@
 
 <A NAME="WatchViewStub(android.content.Context, android.util.AttributeSet, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">WatchViewStub</span>
       <span class="normal">(Context context, AttributeSet attrs, int defStyle)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15141,14 +15449,14 @@
 
 <A NAME="onApplyWindowInsets(android.view.WindowInsets)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         WindowInsets
       </span>
       <span class="sympad">onApplyWindowInsets</span>
@@ -15156,15 +15464,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15173,14 +15481,14 @@
 
 <A NAME="onMeasure(int, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">onMeasure</span>
@@ -15188,15 +15496,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15205,14 +15513,14 @@
 
 <A NAME="setOnLayoutInflatedListener(android.support.wearable.view.WatchViewStub.OnLayoutInflatedListener)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setOnLayoutInflatedListener</span>
@@ -15220,15 +15528,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Set a listener to be notified when one of the specified sub-layouts is inflated into
  this stub container.
 
@@ -15252,14 +15560,14 @@
 
 <A NAME="setRectLayout(int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setRectLayout</span>
@@ -15267,15 +15575,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Set a layout resource to be inflated when this stub is within a rectangular container.</p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">Parameters</h5>
@@ -15294,14 +15602,14 @@
 
 <A NAME="setRoundLayout(int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setRoundLayout</span>
@@ -15309,15 +15617,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Set a layout resource to be inflated when this stub is within a round container.</p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">Parameters</h5>
@@ -15345,14 +15653,14 @@
 
 <A NAME="onAttachedToWindow()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         void
       </span>
       <span class="sympad">onAttachedToWindow</span>
@@ -15360,15 +15668,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15377,14 +15685,14 @@
 
 <A NAME="onLayout(boolean, int, int, int, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        protected 
-         
-         
-         
-         
+        protected
+
+
+
+
         void
       </span>
       <span class="sympad">onLayout</span>
@@ -15392,15 +15700,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -15436,22 +15744,22 @@
 
     <hr class="dac-footer-separator"/>
 
-    
+
       <p class="dac-footer-copyright">
-        
+
   Except as noted, this content is licensed under <a
   href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
   For details and restrictions, see the <a href="../../../../../license.html">
   Content License</a>.
       </p>
       <p class="dac-footer-build">
-        
-    Android Wearable Support&nbsp;r &mdash; 
+
+    Android Wearable Support&nbsp;r &mdash;
 <script src="../../../../../timestamp.js" type="text/javascript"></script>
 <script>document.write(BUILD_TIMESTAMP)</script>
 
       </p>
-    
+
 
     <p class="dac-footer-links">
       <a href="/about/index.html">About Android</a>
@@ -15593,8 +15901,8 @@
 
 </div><!-- end doc-content -->
 
-</div> <!-- end .cols --> 
-</div> <!-- end body-content --> 
+</div> <!-- end .cols -->
+</div> <!-- end body-content -->
 
 
 
diff --git a/docs/html/reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html b/docs/html/reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html
index fb54c95..255df70 100644
--- a/docs/html/reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html
+++ b/docs/html/reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -810,7 +817,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup.LayoutParams
 <div id="inherited-constants-android.view.ViewGroup.LayoutParams">
@@ -1007,7 +1014,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.widget.FrameLayout.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.widget.FrameLayout.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.widget.FrameLayout.LayoutParams
 <div id="inherited-fields-android.widget.FrameLayout.LayoutParams">
@@ -1047,7 +1054,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.ViewGroup.MarginLayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup.MarginLayoutParams
 <div id="inherited-fields-android.view.ViewGroup.MarginLayoutParams">
@@ -1135,7 +1142,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.ViewGroup.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup.LayoutParams
 <div id="inherited-fields-android.view.ViewGroup.LayoutParams">
@@ -1358,7 +1365,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewGroup.MarginLayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1528,7 +1535,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewGroup.LayoutParams-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1586,7 +1593,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/view/WearableFrameLayout.html b/docs/html/reference/android/support/wearable/view/WearableFrameLayout.html
index e269ab8..3192f03 100644
--- a/docs/html/reference/android/support/wearable/view/WearableFrameLayout.html
+++ b/docs/html/reference/android/support/wearable/view/WearableFrameLayout.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -878,7 +885,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup
 <div id="inherited-constants-android.view.ViewGroup">
@@ -1022,7 +1029,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1648,6 +1655,78 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1768,7 +1847,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1780,6 +1859,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1790,7 +1881,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
@@ -1802,7 +1893,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
@@ -1814,7 +1905,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1826,7 +1917,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
@@ -1838,7 +1929,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1850,7 +1941,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1862,7 +1953,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
@@ -1874,7 +1965,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
@@ -1886,7 +1977,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1898,7 +1989,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
@@ -1910,8 +2001,32 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1922,7 +2037,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
@@ -1934,7 +2049,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
@@ -1946,7 +2061,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
@@ -1958,7 +2073,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
@@ -1970,7 +2085,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
@@ -2021,7 +2136,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -3490,7 +3605,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4156,7 +4271,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -4172,13 +4287,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4194,7 +4325,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4210,7 +4341,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4226,7 +4357,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4242,7 +4373,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4258,7 +4389,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4274,7 +4405,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4290,7 +4421,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4306,7 +4437,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4322,7 +4453,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4338,7 +4469,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4354,7 +4485,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4370,7 +4501,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4386,7 +4517,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4402,7 +4533,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4418,7 +4549,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4434,7 +4565,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4450,7 +4581,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4466,7 +4597,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4482,7 +4613,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4498,7 +4629,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4514,7 +4645,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4530,7 +4661,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4546,6 +4677,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -5164,38 +5311,6 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationEnd</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationStart</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
         
   </td></tr>
@@ -5452,6 +5567,38 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewAdded</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewRemoved</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
         
   </td></tr>
@@ -6057,10 +6204,10 @@
             
             
             
-            void</nobr>
+            ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">startLayoutAnimation</span>()</nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
         
   </td></tr>
 
@@ -6076,7 +6223,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">startViewTransition</span>(View arg0)</nobr>
+        <span class="sympad">startLayoutAnimation</span>()</nobr>
         
   </td></tr>
 
@@ -6092,6 +6239,22 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startViewTransition</span>(View arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
         
   </td></tr>
@@ -6108,7 +6271,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -7046,7 +7209,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
         
   </td></tr>
 
@@ -7062,13 +7225,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7084,7 +7263,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7100,7 +7279,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7116,7 +7295,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7132,7 +7311,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7148,7 +7327,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7164,7 +7343,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7180,7 +7359,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7196,7 +7375,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7212,7 +7391,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7228,7 +7407,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7244,7 +7423,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7260,7 +7439,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7276,7 +7455,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7292,7 +7471,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7308,7 +7487,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7324,7 +7503,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7340,7 +7519,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7356,7 +7535,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7372,7 +7551,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7388,7 +7567,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7404,7 +7583,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7420,6 +7599,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7680,6 +7875,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -7692,7 +7903,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7708,7 +7919,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7724,7 +7935,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7740,7 +7951,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7756,7 +7967,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7772,7 +7983,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7788,7 +7999,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7804,7 +8015,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7820,7 +8031,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7836,7 +8047,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7852,7 +8063,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7868,7 +8079,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7884,7 +8095,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7900,7 +8111,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7916,7 +8127,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7932,7 +8143,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7948,7 +8159,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7964,6 +8175,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -7971,6 +8198,54 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -7980,7 +8255,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -7996,7 +8271,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8012,7 +8287,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8028,7 +8303,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8044,7 +8319,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8060,7 +8335,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8076,7 +8351,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8092,7 +8367,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8108,7 +8383,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8124,7 +8399,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8140,7 +8415,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8156,7 +8431,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8172,7 +8447,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8188,7 +8463,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8204,7 +8479,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8220,7 +8495,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8236,7 +8511,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8252,7 +8527,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8268,7 +8543,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8284,7 +8559,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8300,7 +8575,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8316,7 +8591,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8332,7 +8607,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8348,7 +8623,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8364,7 +8639,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8380,7 +8655,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8396,7 +8671,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8412,7 +8687,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8428,7 +8703,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8444,7 +8719,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8460,7 +8735,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8476,7 +8751,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8492,7 +8767,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8508,7 +8783,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8524,7 +8799,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8540,7 +8815,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8556,7 +8831,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8572,7 +8847,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8588,7 +8863,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8604,7 +8879,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8620,7 +8895,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8636,7 +8911,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8652,7 +8927,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8668,7 +8943,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8684,7 +8959,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8700,7 +8975,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8716,7 +8991,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8732,7 +9007,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8748,7 +9023,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8764,7 +9039,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8780,7 +9055,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8796,7 +9071,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8812,6 +9087,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -8960,6 +9251,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -8972,7 +9279,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -8988,7 +9295,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9004,7 +9311,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9020,7 +9327,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9036,7 +9343,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9052,7 +9359,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9068,7 +9375,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9084,7 +9391,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9100,7 +9407,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9116,7 +9423,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9132,7 +9439,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9148,7 +9455,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9164,7 +9471,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9180,7 +9487,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9196,7 +9503,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9212,7 +9519,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9228,7 +9535,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9244,7 +9551,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9260,7 +9567,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9276,7 +9583,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9292,7 +9599,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9308,7 +9615,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9324,7 +9631,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9340,7 +9647,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9356,7 +9663,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9372,7 +9679,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9388,7 +9695,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9404,7 +9711,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9420,7 +9727,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9436,7 +9743,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9452,7 +9759,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9468,7 +9775,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9484,7 +9791,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9500,7 +9807,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9516,7 +9823,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9532,7 +9839,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9548,7 +9855,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9564,7 +9871,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9580,7 +9887,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9596,7 +9903,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9612,7 +9919,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9628,7 +9935,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9644,7 +9951,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9660,7 +9967,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9676,7 +9983,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9692,7 +9999,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9708,7 +10015,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9724,7 +10031,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9740,7 +10047,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9756,7 +10063,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9772,7 +10079,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -9788,6 +10095,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -10688,6 +11011,22 @@
         <td class="jd-typecol"><nobr>
             
             
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
             final
             
             
@@ -10700,7 +11039,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10716,7 +11055,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10732,7 +11071,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10748,7 +11087,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10764,7 +11103,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10780,7 +11119,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10796,7 +11135,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10812,7 +11151,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10828,7 +11167,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10844,7 +11183,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10860,7 +11199,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10876,7 +11215,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10892,7 +11231,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10908,7 +11247,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10924,7 +11263,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10940,7 +11279,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10956,7 +11295,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10972,7 +11311,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -10988,7 +11327,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11004,6 +11343,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -11014,13 +11369,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11036,7 +11407,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11052,7 +11423,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11068,7 +11439,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11084,7 +11455,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11100,7 +11471,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11116,7 +11487,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11132,7 +11503,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11148,7 +11519,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11164,7 +11535,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11180,7 +11551,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11196,7 +11567,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11212,7 +11583,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11228,7 +11599,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11244,7 +11615,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11260,7 +11631,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -11276,6 +11647,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -12182,7 +12569,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
         
   </td></tr>
 
@@ -12198,13 +12585,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12220,7 +12623,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12236,7 +12639,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12252,7 +12655,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12268,7 +12671,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12284,7 +12687,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12300,7 +12703,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12316,7 +12719,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12332,7 +12735,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12348,6 +12751,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -12358,13 +12777,61 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12380,7 +12847,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12396,7 +12863,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12412,7 +12879,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12428,7 +12895,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12444,7 +12911,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12460,7 +12927,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12476,7 +12943,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12492,7 +12959,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12508,7 +12975,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12524,7 +12991,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12540,7 +13007,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12556,7 +13023,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12572,7 +13039,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12588,7 +13055,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12604,7 +13071,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12620,7 +13087,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12636,7 +13103,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12652,7 +13119,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12668,7 +13135,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12684,7 +13151,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12700,7 +13167,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12716,7 +13183,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12732,7 +13199,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12748,7 +13215,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12764,6 +13231,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -12886,7 +13369,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
         
   </td></tr>
 
@@ -12902,13 +13385,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12924,7 +13423,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12940,7 +13439,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12956,7 +13455,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12972,7 +13471,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -12988,7 +13487,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13004,7 +13503,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13020,7 +13519,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13036,7 +13535,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13052,7 +13551,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13068,7 +13567,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13084,7 +13583,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13100,7 +13599,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13116,7 +13615,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13132,7 +13631,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13148,7 +13647,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13164,7 +13663,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13180,7 +13679,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13196,7 +13695,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13212,7 +13711,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13228,6 +13727,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -13238,13 +13753,29 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
         
   </td></tr>
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13260,7 +13791,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13276,7 +13807,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13292,7 +13823,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13308,7 +13839,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13324,7 +13855,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13340,7 +13871,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13356,7 +13887,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13372,7 +13903,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13388,7 +13919,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13404,7 +13935,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13420,7 +13951,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13436,7 +13967,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13452,7 +13983,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13468,7 +13999,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13484,7 +14015,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13500,7 +14031,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13516,7 +14047,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13532,7 +14063,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13548,7 +14079,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13564,7 +14095,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13580,7 +14111,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13596,7 +14127,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13612,7 +14143,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13628,7 +14159,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13644,7 +14175,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -13660,6 +14191,22 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -13846,7 +14393,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -14048,7 +14595,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewParent-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14714,6 +15261,22 @@
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
         
   </td></tr>
@@ -14730,7 +15293,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewManager-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14804,7 +15367,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14878,7 +15441,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -14968,7 +15531,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/view/WearableListView.Adapter.html b/docs/html/reference/android/support/wearable/view/WearableListView.Adapter.html
index 0686ff2..34466c1 100644
--- a/docs/html/reference/android/support/wearable/view/WearableListView.Adapter.html
+++ b/docs/html/reference/android/support/wearable/view/WearableListView.Adapter.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -784,7 +791,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.v7.widget.RecyclerView.Adapter" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.v7.widget.RecyclerView.Adapter-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -954,7 +961,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notifyItemInserted</span>(int arg0)</nobr>
+        <span class="sympad">notifyItemChanged</span>(int arg0, Object arg1)</nobr>
         
   </td></tr>
 
@@ -970,7 +977,7 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notifyItemMoved</span>(int arg0, int arg1)</nobr>
+        <span class="sympad">notifyItemInserted</span>(int arg0)</nobr>
         
   </td></tr>
 
@@ -986,12 +993,44 @@
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notifyItemMoved</span>(int arg0, int arg1)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifyItemRangeChanged</span>(int arg0, int arg1)</nobr>
         
   </td></tr>
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">notifyItemRangeChanged</span>(int arg0, int arg1, Object arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -1058,6 +1097,22 @@
 	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onBindViewHolder</span>(<a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a> arg0, int arg1, List&lt;Object&gt; arg2)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
             abstract
             
             
@@ -1072,7 +1127,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -1088,7 +1143,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1104,7 +1159,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1120,7 +1175,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1136,7 +1191,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1152,7 +1207,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1168,7 +1223,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1184,7 +1239,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1200,7 +1255,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -1226,7 +1281,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/view/WearableListView.ClickListener.html b/docs/html/reference/android/support/wearable/view/WearableListView.ClickListener.html
index 17431c4..bf87a1f 100644
--- a/docs/html/reference/android/support/wearable/view/WearableListView.ClickListener.html
+++ b/docs/html/reference/android/support/wearable/view/WearableListView.ClickListener.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
diff --git a/docs/html/reference/android/support/wearable/view/WearableListView.OnCenterProximityListener.html b/docs/html/reference/android/support/wearable/view/WearableListView.OnCenterProximityListener.html
index 936a163..9e21953 100644
--- a/docs/html/reference/android/support/wearable/view/WearableListView.OnCenterProximityListener.html
+++ b/docs/html/reference/android/support/wearable/view/WearableListView.OnCenterProximityListener.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
diff --git a/docs/html/reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html b/docs/html/reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html
index c49bbcc..f1331fa 100644
--- a/docs/html/reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html
+++ b/docs/html/reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
diff --git a/docs/html/reference/android/support/wearable/view/WearableListView.OnScrollListener.html b/docs/html/reference/android/support/wearable/view/WearableListView.OnScrollListener.html
index 2871600..c9d45bf 100644
--- a/docs/html/reference/android/support/wearable/view/WearableListView.OnScrollListener.html
+++ b/docs/html/reference/android/support/wearable/view/WearableListView.OnScrollListener.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
diff --git a/docs/html/reference/android/support/wearable/view/WearableListView.ViewHolder.html b/docs/html/reference/android/support/wearable/view/WearableListView.ViewHolder.html
index 270d8d8..da41c81 100644
--- a/docs/html/reference/android/support/wearable/view/WearableListView.ViewHolder.html
+++ b/docs/html/reference/android/support/wearable/view/WearableListView.ViewHolder.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -469,6 +474,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -484,6 +490,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -756,7 +763,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.support.v7.widget.RecyclerView.ViewHolder" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.support.v7.widget.RecyclerView.ViewHolder-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.support.v7.widget.RecyclerView.ViewHolder
 <div id="inherited-fields-android.support.v7.widget.RecyclerView.ViewHolder">
@@ -841,7 +848,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.v7.widget.RecyclerView.ViewHolder" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.v7.widget.RecyclerView.ViewHolder-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1011,7 +1018,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/view/WearableListView.html b/docs/html/reference/android/support/wearable/view/WearableListView.html
index 7fb9565..5f42201 100644
--- a/docs/html/reference/android/support/wearable/view/WearableListView.html
+++ b/docs/html/reference/android/support/wearable/view/WearableListView.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -146,7 +151,7 @@
 
 </head>
 
-<body class="gc-documentation 
+<body class="gc-documentation
   develop reference" itemscope itemtype="http://schema.org/Article">
   <div id="doc-api-level" class="" style="display:none"></div>
   <a name="top"></a>
@@ -221,13 +226,13 @@
           </a>
 
         <ul class="dac-header-crumbs">
-          
+
           <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">WearableListView</a></li>
         </ul>
 
-        
-        
-        
+
+
+
   <div class="dac-header-search" id="search-container">
     <div class="dac-header-search-inner">
       <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
@@ -267,7 +272,7 @@
     </div>
   </div>
 
-        
+
 
         <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
           <span class="dac-sprite dac-google-play"></span>
@@ -284,7 +289,7 @@
     </div>
   </div> <!--end header-wrapper -->
 
-  
+
   <!-- Navigation-->
   <nav class="dac-nav">
     <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
@@ -370,7 +375,7 @@
           <li class="dac-nav-item google">
             <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
           </li>
-          
+
           <li class="dac-nav-item preview">
             <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
           </li>
@@ -407,7 +412,7 @@
     </ul>
   </nav>
   <!-- end navigation-->
-  
+
 
 
 
@@ -439,7 +444,7 @@
             <div id="packages-nav" class="scroll-pane">
 
               <ul>
-                
+
     <li class="api apilevel-">
   <a href="../../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
     <li class="api apilevel-">
@@ -465,10 +470,11 @@
 
 
             <ul>
-              
-              
+
+
     <li><h2>Interfaces</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -481,9 +487,10 @@
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a></li>
       </ul>
     </li>
-              
+
     <li><h2>Classes</h2>
       <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -511,9 +518,9 @@
           <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></li>
       </ul>
     </li>
-              
-              
-              
+
+
+
             </ul><br/>
 
 
@@ -556,7 +563,7 @@
         });
     </script>
 
-     
+
 
 
 
@@ -566,76 +573,90 @@
 
 
 
-  
-   
-  
-  
-   
-  
-  
-  
 
-  
-   
-  
-  
-   
-  
-  
-  
 
-  
-   
-  
-  
-   
-  
-  
-   
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
 
-  
-   
-  
-  
-  
-  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
 
 <div class="sum-details-links">
@@ -643,7 +664,7 @@
 Summary:
 
   <a href="#nestedclasses">Nested Classes</a>
-  
+
 
 
 
@@ -651,21 +672,24 @@
 
 
   &#124; <a href="#inhconstants">Inherited Constants</a>
-  
+
 
 
 
   &#124; <a href="#inhfields">Inherited Fields</a>
-  
+
 
 
   &#124; <a href="#pubctors">Ctors</a>
-  
+
 
 
 
   &#124; <a href="#pubmethods">Methods</a>
-  
+
+
+
+  &#124; <a href="#promethods">Protected Methods</a>
 
 
 
@@ -675,9 +699,9 @@
 
 </div><!-- end sum-details-links -->
 <div class="api-level">
-  
-  
-  
+
+
+
 
 </div>
 </div><!-- end api-info-block -->
@@ -687,38 +711,38 @@
 
 <div id="jd-header">
     public
-     
-     
-    
+
+
+
     class
 <h1 itemprop="name">WearableListView</h1>
 
 
 
-  
-  
-  
 
-  
-  
-  
 
-  
-  
-  
 
-  
+
+
+
+
+
+
+
+
+
+
     extends RecyclerView<br/>
-  
-  
-  
-
-  
-  
-  
 
 
-    
+
+
+
+
+
+
+
+
 
 
 </div><!-- end header -->
@@ -730,54 +754,54 @@
 
 
     <tr>
-         	
+
         <td colspan="5" class="jd-inheritance-class-cell">java.lang.Object</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="4" class="jd-inheritance-class-cell">android.view.View</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="3" class="jd-inheritance-class-cell">android.view.ViewGroup</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="2" class="jd-inheritance-class-cell">android.support.v7.widget.RecyclerView</td>
     </tr>
-    
+
 
     <tr>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;</td>
-        
+
             <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
+
         <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.view.WearableListView</td>
     </tr>
-    
+
 
 </table>
 
@@ -835,111 +859,111 @@
 <table id="nestedclasses" class="jd-sumtable"><tr><th colspan="12">Nested Classes</th></tr>
 
 
-  
+
     <tr class="alt-color api apilevel-" >
       <td class="jd-typecol"><nobr>
-        
-         
-         
-        
+
+
+
+
         class</nobr></td>
       <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.Adapter.html">WearableListView.Adapter</a></td>
       <td class="jd-descrcol" width="100%">
         Base class for adapters providing data for the WearableListView.&nbsp;
-        
-    
+
+
 
       </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
       <td class="jd-typecol"><nobr>
-        
-         
-         
-        
+
+
+
+
         interface</nobr></td>
       <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ClickListener.html">WearableListView.ClickListener</a></td>
       <td class="jd-descrcol" width="100%">
         Interface for listening for click events on WearableListView.&nbsp;
-        
-    
+
+
 
       </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
       <td class="jd-typecol"><nobr>
-        
-         
-         
-        
+
+
+
+
         interface</nobr></td>
       <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCenterProximityListener.html">WearableListView.OnCenterProximityListener</a></td>
       <td class="jd-descrcol" width="100%">
         Interface for receiving callbacks when WearableListView children become or cease to be the
  central item.&nbsp;
-        
-    
+
+
 
       </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
       <td class="jd-typecol"><nobr>
-        
-         
-         
-        
+
+
+
+
         interface</nobr></td>
       <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html">WearableListView.OnCentralPositionChangedListener</a></td>
       <td class="jd-descrcol" width="100%">
         A listener interface that can be added to the WearableListView to get notified when the
  central item is changed.&nbsp;
-        
-    
+
+
 
       </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
       <td class="jd-typecol"><nobr>
-        
-         
-         
-        
+
+
+
+
         interface</nobr></td>
       <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a></td>
       <td class="jd-descrcol" width="100%">
         Interface for listening to WearableListView content scrolling.&nbsp;
-        
-    
+
+
 
       </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
       <td class="jd-typecol"><nobr>
-        
-         
-         
-        
+
+
+
+
         class</nobr></td>
       <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></td>
       <td class="jd-descrcol" width="100%">
         Wrapper around items displayed in the list view.&nbsp;
-        
-    
+
+
 
       </td>
     </tr>
-    
-    
+
+
 
 
 
@@ -967,7 +991,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.v7.widget.RecyclerView" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.support.v7.widget.RecyclerView-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.support.v7.widget.RecyclerView
 <div id="inherited-constants-android.support.v7.widget.RecyclerView">
@@ -976,129 +1000,129 @@
   </div>
   <div id="inherited-constants-android.support.v7.widget.RecyclerView-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">HORIZONTAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">INVALID_TYPE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">long</td>
         <td class="jd-linkcol">NO_ID</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">NO_POSITION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_STATE_DRAGGING</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_STATE_IDLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_STATE_SETTLING</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TOUCH_SLOP_DEFAULT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TOUCH_SLOP_PAGING</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VERTICAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -1111,7 +1135,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.ViewGroup-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.ViewGroup
 <div id="inherited-constants-android.view.ViewGroup">
@@ -1120,129 +1144,129 @@
   </div>
   <div id="inherited-constants-android.view.ViewGroup-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CLIP_TO_PADDING_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_AFTER_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BEFORE_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BLOCK_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_MODE_CLIP_BOUNDS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_MODE_OPTICAL_BOUNDS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_ALL_CACHES</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_ANIMATION_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_NO_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">PERSISTENT_SCROLLING_CACHE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -1255,7 +1279,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-constants-android.view.View">
@@ -1264,957 +1288,1065 @@
   </div>
   <div id="inherited-constants-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_ASSERTIVE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">ACCESSIBILITY_LIVE_REGION_POLITE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_AUTO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_HIGH</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">DRAWING_CACHE_QUALITY_LOW</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FIND_VIEWS_WITH_CONTENT_DESCRIPTION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FIND_VIEWS_WITH_TEXT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUSABLES_ALL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUSABLES_TOUCH_MODE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_BACKWARD</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_DOWN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_FORWARD</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_LEFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_RIGHT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">FOCUS_UP</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">GONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">HAPTIC_FEEDBACK_ENABLED</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_AUTO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">IMPORTANT_FOR_ACCESSIBILITY_YES</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">INVISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">KEEP_SCREEN_ON</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_HARDWARE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYER_TYPE_SOFTWARE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">LAYOUT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_HEIGHT_STATE_SHIFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_SIZE_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_STATE_MASK</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MEASURED_STATE_TOO_SMALL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">NO_ID</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_ALWAYS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_IF_CONTENT_SCROLLS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">OVER_SCROLL_NEVER</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCREEN_STATE_OFF</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCREEN_STATE_ON</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_INSIDE_INSET</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_INSIDE_OVERLAY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_OUTSIDE_INSET</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBARS_OUTSIDE_OVERLAY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_DEFAULT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_LEFT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLLBAR_POSITION_RIGHT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_HORIZONTAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_NONE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SCROLL_AXIS_VERTICAL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_BOTTOM</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_END</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_LEFT</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_RIGHT</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_START</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SCROLL_INDICATOR_TOP</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SOUND_EFFECTS_ENABLED</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">STATUS_BAR_HIDDEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">STATUS_BAR_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_FULLSCREEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_HIDE_NAVIGATION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_IMMERSIVE_STICKY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LAYOUT_STABLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">SYSTEM_UI_FLAG_LIGHT_STATUS_BAR</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_LOW_PROFILE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_FLAG_VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">SYSTEM_UI_LAYOUT_FLAGS</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_CENTER</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_GRAVITY</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_END</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_TEXT_START</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_END</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_ALIGNMENT_VIEW_START</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_ANY_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_LTR</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol">TEXT_DIRECTION_FIRST_STRONG_RTL</td>
+        <td class="jd-descrcol" width="100%">
+
+
+
+
+        </td>
+    </tr>
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_INHERIT</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LOCALE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_LTR</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">TEXT_DIRECTION_RTL</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class=" api apilevel-" >
+
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">VIEW_LOG_TAG</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
-    <tr class="alt-color api apilevel-" >
+
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">VISIBLE</td>
         <td class="jd-descrcol" width="100%">
-          
-          
-    
+
+
+
 
         </td>
     </tr>
-    
-    
+
+
 </table>
   </div>
 </div>
@@ -2233,6 +2365,10 @@
 
 
 
+
+
+
+
 </table>
 
 
@@ -2256,7 +2392,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
           ><img id="inherited-fields-android.view.View-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.view.View
 <div id="inherited-fields-android.view.View">
@@ -2265,9 +2401,9 @@
   </div>
   <div id="inherited-fields-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2276,14 +2412,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ALPHA</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2292,14 +2428,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">EMPTY_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2308,14 +2444,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2324,14 +2460,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2340,14 +2476,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2356,14 +2492,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2372,14 +2508,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2388,14 +2524,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2404,14 +2540,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2420,14 +2556,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">ENABLED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2436,14 +2572,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2452,14 +2588,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2468,14 +2604,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2484,14 +2620,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2500,14 +2636,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2516,14 +2652,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2532,14 +2668,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2548,14 +2684,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2564,14 +2700,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2580,14 +2716,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2596,14 +2732,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2612,14 +2748,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2628,14 +2764,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2644,14 +2780,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2660,14 +2796,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2676,14 +2812,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2692,14 +2828,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2708,14 +2844,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2724,14 +2860,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2740,14 +2876,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">PRESSED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2756,14 +2892,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2772,14 +2908,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2788,14 +2924,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">ROTATION_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2804,14 +2940,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">SCALE_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2820,14 +2956,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">SCALE_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2836,14 +2972,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">SELECTED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2852,14 +2988,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">SELECTED_WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2868,14 +3004,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2884,14 +3020,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2900,14 +3036,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">TRANSLATION_Z</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           protected
@@ -2916,14 +3052,14 @@
           int[]</nobr></td>
           <td class="jd-linkcol">WINDOW_FOCUSED_STATE_SET</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2932,14 +3068,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">X</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class="alt-color api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2948,14 +3084,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">Y</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
       <tr class=" api apilevel-" >
           <td class="jd-typecol"><nobr>
           public
@@ -2964,14 +3100,14 @@
           Property&lt;View,&nbsp;Float&gt;</nobr></td>
           <td class="jd-linkcol">Z</td>
           <td class="jd-descrcol" width="100%">
-            
-            
-    
+
+
+
 
           </td>
       </tr>
-      
-    
+
+
 </table>
   </div>
 </div>
@@ -2990,6 +3126,10 @@
 
 
 
+
+
+
+
 </table>
 
 
@@ -3000,51 +3140,51 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#WearableListView(android.content.Context)">WearableListView</a></span>(Context context)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#WearableListView(android.content.Context, android.util.AttributeSet)">WearableListView</a></span>(Context context, AttributeSet attrs)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             </nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#WearableListView(android.content.Context, android.util.AttributeSet, int)">WearableListView</a></span>(Context context, AttributeSet attrs, int defStyleAttr)</nobr>
-        
+
   </td></tr>
 
 
@@ -3061,411 +3201,473 @@
 
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#addOnCentralPositionChangedListener(android.support.wearable.view.WearableListView.OnCentralPositionChangedListener)">addOnCentralPositionChangedListener</a></span>(<a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html">WearableListView.OnCentralPositionChangedListener</a> listener)</nobr>
-        
+
         <div class="jd-descrdiv">
           Adds a listener that will be called when the central item of the list changes.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#addOnScrollListener(android.support.wearable.view.WearableListView.OnScrollListener)">addOnScrollListener</a></span>(<a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a> listener)</nobr>
-        
+
         <div class="jd-descrdiv">
           Adds a listener that will be called when the content of the list view is scrolled.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#animateToCenter()">animateToCenter</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           Automatically starts an animation that snaps the list to center on the element closest to the
  middle.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#fling(int, int)">fling</a></span>(int velocityX, int velocityY)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#getBaseline()">getBaseline</a></span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#getCentralViewTop()">getCentralViewTop</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           Returns top of the central <code>View</code> in the list when such view is fully centered.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             <a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#getChildViewHolder(android.view.View)">getChildViewHolder</a></span>(View child)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#getMaximizeSingleItem()">getMaximizeSingleItem</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           Determines if, when there is only one item in the WearableListView, that the single item
  is laid out so that it's height fills the entire WearableListView.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#isAtTop()">isAtTop</a></span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#isGestureNavigationEnabled()">isGestureNavigationEnabled</a></span>()</nobr>
+
+        <div class="jd-descrdiv">
+          Determines if navigation of list with wrist gestures is enabled.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#onInterceptTouchEvent(android.view.MotionEvent)">onInterceptTouchEvent</a></span>(MotionEvent event)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#onKeyDown(int, android.view.KeyEvent)">onKeyDown</a></span>(int keyCode, KeyEvent event)</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#onTouchEvent(android.view.MotionEvent)">onTouchEvent</a></span>(MotionEvent event)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#removeOnCentralPositionChangedListener(android.support.wearable.view.WearableListView.OnCentralPositionChangedListener)">removeOnCentralPositionChangedListener</a></span>(<a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html">WearableListView.OnCentralPositionChangedListener</a> listener)</nobr>
-        
+
         <div class="jd-descrdiv">
           Removes a listener that would be called when the central item of the list changes.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#removeOnScrollListener(android.support.wearable.view.WearableListView.OnScrollListener)">removeOnScrollListener</a></span>(<a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a> listener)</nobr>
-        
+
         <div class="jd-descrdiv">
           Removes listener for scroll events.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#resetLayoutManager()">resetLayoutManager</a></span>()</nobr>
-        
+
         <div class="jd-descrdiv">
           Clears the state of the layout manager that positions list items.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#setAdapter(android.support.v7.widget.RecyclerView.Adapter)">setAdapter</a></span>(Adapter adapter)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#setClickListener(android.support.wearable.view.WearableListView.ClickListener)">setClickListener</a></span>(<a href="../../../../../reference/android/support/wearable/view/WearableListView.ClickListener.html">WearableListView.ClickListener</a> clickListener)</nobr>
-        
+
         <div class="jd-descrdiv">
           Adds a listener that will be called when the user taps on the WearableListView or its items.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#setEnableGestureNavigation(boolean)">setEnableGestureNavigation</a></span>(boolean enabled)</nobr>
+
+        <div class="jd-descrdiv">
+          Sets whether navigation of list with wrist gestures is enabled.
+
+
+
+        </div>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#setGreedyTouchMode(boolean)">setGreedyTouchMode</a></span>(boolean greedy)</nobr>
-        
+
         <div class="jd-descrdiv">
           Controls whether WearableListView should intercept all touch events and also prevent the
  parent from receiving them.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#setInitialOffset(int)">setInitialOffset</a></span>(int top)</nobr>
-        
+
         <div class="jd-descrdiv">
           By default the first element of the list is initially positioned in the center of the screen.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#setMaximizeSingleItem(boolean)">setMaximizeSingleItem</a></span>(boolean maximizeSingleItem)</nobr>
-        
+
         <div class="jd-descrdiv">
           When set to true, if there is only one item in the WearableListView, it will fill the entire
  WearableListView.
-          
-    
+
+
 
         </div>
-  
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#smoothScrollToPosition(int, android.support.v7.widget.RecyclerView.SmoothScroller)">smoothScrollToPosition</a></span>(int position, RecyclerView.SmoothScroller smoothScroller)</nobr>
-        
+
   </td></tr>
 
 
@@ -3475,6 +3677,49 @@
 
 
 
+<!-- ========== METHOD SUMMARY =========== -->
+
+<table id="promethods" class="jd-sumtable"><tr><th colspan="12">Protected Methods</th></tr>
+
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#onAttachedToWindow()">onAttachedToWindow</a></span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html#onDetachedFromWindow()">onDetachedFromWindow</a></span>()</nobr>
+
+  </td></tr>
+
+
+
+</table>
+
+
 
 
 
@@ -3500,1190 +3745,1763 @@
   </div>
   <div id="inherited-methods-android.support.v7.widget.RecyclerView-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addItemDecoration</span>(RecyclerView.ItemDecoration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addItemDecoration</span>(RecyclerView.ItemDecoration arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addOnChildAttachStateChangeListener</span>(RecyclerView.OnChildAttachStateChangeListener arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnItemTouchListener</span>(RecyclerView.OnItemTouchListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">addOnScrollListener</span>(RecyclerView.OnScrollListener arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clearOnChildAttachStateChangeListeners</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">clearOnScrollListeners</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedFling</span>(float arg0, float arg1, boolean arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedPreFling</span>(float arg0, float arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedPreScroll</span>(int arg0, int arg1, int[] arg2, int[] arg3)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedScroll</span>(int arg0, int arg1, int arg2, int arg3, int[] arg4)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">draw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">drawChild</span>(Canvas arg0, View arg1, long arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findChildViewUnder</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             RecyclerView.ViewHolder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewHolderForAdapterPosition</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             RecyclerView.ViewHolder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewHolderForItemId</span>(long arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             RecyclerView.ViewHolder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewHolderForLayoutPosition</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             RecyclerView.ViewHolder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewHolderForPosition</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">fling</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateDefaultLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(AttributeSet arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Adapter</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAdapter</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getBaseline</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildAdapterPosition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getChildDrawingOrder</span>(int arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             long</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildItemId</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildLayoutPosition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildPosition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             RecyclerView.ViewHolder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildViewHolder</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             RecyclerViewAccessibilityDelegate</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getCompatAccessibilityDelegate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             RecyclerView.ItemAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getItemAnimator</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             RecyclerView.LayoutManager</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutManager</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMaxFlingVelocity</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getMinFlingVelocity</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             RecyclerView.RecycledViewPool</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRecycledViewPool</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFixedSize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasNestedScrollingParent</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasPendingAdapterUpdates</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateItemDecorations</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isAnimating</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isAttachedToWindow</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isComputingLayout</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isLayoutFrozen</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isNestedScrollingEnabled</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetChildrenHorizontal</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetChildrenVertical</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onChildAttachedToWindow</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onChildDetachedFromWindow</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onGenericMotionEvent</span>(MotionEvent arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Parcelable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSaveInstanceState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onScrollStateChanged</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onScrolled</span>(int arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+<<<<<<< HEAD
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.view.ViewGroup-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  android.view.ViewGroup
+
+<div id="inherited-methods-android.view.ViewGroup">
+  <div id="inherited-methods-android.view.ViewGroup-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.view.ViewGroup-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+=======
+>>>>>>> b60df1f... docs: Updated API changes for Dinar wearable support.
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeDetachedView</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeItemDecoration</span>(RecyclerView.ItemDecoration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">removeOnChildAttachStateChangeListener</span>(RecyclerView.OnChildAttachStateChangeListener arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnItemTouchListener</span>(RecyclerView.OnItemTouchListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">removeOnScrollListener</span>(RecyclerView.OnScrollListener arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollBy</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollTo</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollToPosition</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityDelegateCompat</span>(RecyclerViewAccessibilityDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAdapter</span>(Adapter arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setChildDrawingOrderCallback</span>(RecyclerView.ChildDrawingOrderCallback arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToPadding</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHasFixedSize</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setItemAnimator</span>(RecyclerView.ItemAnimator arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setItemViewCacheSize</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setLayoutFrozen</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutManager</span>(RecyclerView.LayoutManager arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNestedScrollingEnabled</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnScrollListener</span>(RecyclerView.OnScrollListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRecycledViewPool</span>(RecyclerView.RecycledViewPool arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRecyclerListener</span>(RecyclerView.RecyclerListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollingTouchSlop</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setViewCacheExtension</span>(RecyclerView.ViewCacheExtension arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">smoothScrollBy</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">smoothScrollToPosition</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startNestedScroll</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">stopNestedScroll</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">stopScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">swapAdapter</span>(Adapter arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -4710,2598 +5528,2675 @@
   </div>
   <div id="inherited-methods-android.view.ViewGroup-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addStatesFromChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addViewInLayout</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addViewInLayout</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">attachLayoutAnimationParameters</span>(View arg0, ViewGroup.LayoutParams arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">attachViewToParent</span>(View arg0, int arg1, ViewGroup.LayoutParams arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringChildToFront</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canAnimate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childDrawableStateChanged</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childHasTransientStateChanged</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cleanupLayoutState</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearChildFocus</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearDisappearingChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">debug</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachAllViewsFromParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewFromParent</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewFromParent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">detachViewsFromParent</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchFreezeSelfOnly</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchThawSelfOnly</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawChild</span>(Canvas arg0, View arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableStateChanged</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">endViewTransition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusableViewAvailable</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">gatherTransparentRegion</span>(Region arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateDefaultLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(AttributeSet arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildAt</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildCount</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildDrawingOrder</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildMeasureSpec</span>(int arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildStaticTransformation</span>(View arg0, Transformation arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildVisibleRect</span>(View arg0, Rect arg1, Point arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipChildren</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipToPadding</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDescendantFocusability</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusedChild</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             LayoutAnimationController</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Animation.AnimationListener</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutAnimationListener</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             LayoutTransition</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutTransition</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNestedScrollAxes</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOverlay</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverlay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPersistentDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchscreenBlocksFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasTransientState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">indexOfChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChild</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChildInParent</span>(int[] arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAlwaysDrawnWithCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAnimationCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isChildrenDrawingOrderEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isChildrenDrawnWithCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isMotionEventSplittingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTransitionGroup</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChild</span>(View arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChildWithMargins</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measureChildren</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifySubtreeAccessibilityStateChanged</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetDescendantRectToMyCoords</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetRectIntoDescendantCoords</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationEnd</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">onAnimationStart</span>()</nobr>
-        
-  </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInterceptTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedFling</span>(View arg0, float arg1, float arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreFling</span>(View arg0, float arg1, float arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPrePerformAccessibilityAction</span>(View arg0, int arg1, Bundle arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreScroll</span>(View arg0, int arg1, int arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScroll</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScrollAccepted</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRequestFocusInDescendants</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRequestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartNestedScroll</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStopNestedScroll</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewAdded</span>(View arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onViewRemoved</span>(View arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeAllViews</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeAllViewsInLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+<<<<<<< HEAD
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.view.View-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From class
+
+  android.view.View
+
+<div id="inherited-methods-android.view.View">
+  <div id="inherited-methods-android.view.View-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.view.View-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+=======
+>>>>>>> b60df1f... docs: Updated API changes for Dinar wearable support.
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeDetachedView</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewAt</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewInLayout</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViews</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeViewsInLayout</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestTransparentRegion</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAddStatesFromChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAlwaysDrawnWithCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAnimationCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawingCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawingOrderEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setChildrenDrawnWithCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipChildren</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToPadding</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDescendantFocusability</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutAnimation</span>(LayoutAnimationController arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutAnimationListener</span>(Animation.AnimationListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutMode</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutTransition</span>(LayoutTransition arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMotionEventSplittingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnHierarchyChangeListener</span>(ViewGroup.OnHierarchyChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPersistentDrawingCache</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setStaticTransformationsEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTouchscreenBlocksFocus</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTransitionGroup</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">shouldDelayChildPressedState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenuForChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startLayoutAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startViewTransition</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -7328,7718 +8223,8102 @@
   </div>
   <div id="inherited-methods-android.view.View-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addChildrenForAccessibility</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addFocusables</span>(ArrayList&lt;View&gt; arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addTouchables</span>(ArrayList&lt;View&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewPropertyAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">animate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">announceForAccessibility</span>(CharSequence arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>(int arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">awakenScrollBars</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringToFront</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildDrawingCache</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">buildLayer</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">callOnClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canScrollHorizontally</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canScrollVertically</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cancelLongPress</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">cancelPendingInputEvents</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">checkInputConnectionProxy</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">combineMeasuredStates</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeHorizontalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeSystemWindowInsets</span>(WindowInsets arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollExtent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">computeVerticalScrollRange</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             AccessibilityNodeInfo</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createAccessibilityNodeInfo</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">destroyDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchDrawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericFocusedEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericMotionEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchGenericPointerEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyEventPreIme</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchKeyShortcutEvent</span>(KeyEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedFling</span>(float arg0, float arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPreFling</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPrePerformAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedPreScroll</span>(int arg0, int arg1, int[] arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchNestedScroll</span>(int arg0, int arg1, int arg2, int arg3, int[] arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchRestoreInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSaveInstanceState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSetSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchUnhandledMove</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowSystemUiVisiblityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">dispatchWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">draw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableHotspotChanged</span>(float arg0, float arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">drawableStateChanged</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewById</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewWithTag</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">findViewsWithText</span>(ArrayList&lt;View&gt; arg0, CharSequence arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">fitSystemWindows</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">forceLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">generateViewId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            CharSequence</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getAccessibilityClassName</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityLiveRegion</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             AccessibilityNodeProvider</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityNodeProvider</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityTraversalAfter</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAccessibilityTraversalBefore</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAlpha</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Animation</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             IBinder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getApplicationWindowToken</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Drawable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackground</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ColorStateList</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackgroundTintList</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             PorterDuff.Mode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBackgroundTintMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBaseline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottom</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottomFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getBottomPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getCameraDistance</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Rect</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipBounds</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getClipBounds</span>(Rect arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClipToOutline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             CharSequence</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContentDescription</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             Context</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContext</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ContextMenu.ContextMenuInfo</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getContextMenuInfo</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDefaultSize</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Display</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDisplay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawableState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Bitmap</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCache</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Bitmap</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCache</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCacheBackgroundColor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingCacheQuality</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             long</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getDrawingTime</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getElevation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFilterTouchesWhenObscured</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFitsSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ArrayList&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusables</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getFocusedRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            Drawable</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForeground</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundGravity</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintList</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            PorterDuff.Mode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getForegroundTintMode</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getGlobalVisibleRect</span>(Rect arg0, Point arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getGlobalVisibleRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Handler</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHandler</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHitRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHorizontalFadingEdgeLength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getHorizontalScrollbarHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getImportantForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getKeepScreenOn</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             KeyEvent.DispatcherState</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getKeyDispatcherState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLabelFor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayerType</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewGroup.LayoutParams</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutParams</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeft</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeftFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLeftPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocalVisibleRect</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocationInWindow</span>(int[] arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLocationOnScreen</span>(int[] arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Matrix</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMatrix</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredHeightAndState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMeasuredWidthAndState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMinimumHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getMinimumWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusDownId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusForwardId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusLeftId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusRightId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getNextFocusUpId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View.OnFocusChangeListener</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOnFocusChangeListener</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOutlineProvider</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOutlineProvider</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverScrollMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewOverlay</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getOverlay</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingBottom</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingEnd</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingLeft</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingRight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingStart</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPaddingTop</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParentForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPivotX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getPivotY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Resources</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getResources</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRightFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRightPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRootView</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            WindowInsets</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getRootWindowInsets</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotationX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getRotationY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScaleX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScaleY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarDefaultDelayBeforeFade</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarFadeDuration</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarSize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollBarStyle</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getScrollIndicators</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getScrollY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSolidColor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             StateListAnimator</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getStateListAnimator</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSuggestedMinimumHeight</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSuggestedMinimumWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getSystemUiVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTag</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTag</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTop</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTopFadingEdgeStrength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTopPaddingOffset</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             TouchDelegate</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchDelegate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ArrayList&lt;View&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTouchables</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTransitionName</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTranslationZ</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalFadingEdgeLength</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalScrollbarPosition</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVerticalScrollbarWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ViewTreeObserver</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getViewTreeObserver</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWidth</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowAttachCount</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowId</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowId</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowSystemUiVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             IBinder</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowToken</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowVisibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getWindowVisibleDisplayFrame</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getX</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getY</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             float</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getZ</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasNestedScrollingParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasOnClickListeners</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasOverlappingRendering</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasTransientState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hasWindowFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">inflate</span>(Context arg0, int arg1, ViewGroup arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateOutline</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAccessibilityFocused</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isActivated</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isClickable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isContextClickable</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDirty</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDrawingCacheEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isDuplicateParentStateEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocusable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocusableInTouchMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isFocused</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHapticFeedbackEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHardwareAccelerated</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHorizontalFadingEdgeEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHorizontalScrollBarEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isHovered</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isImportantForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInEditMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isInTouchMode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLaidOut</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutRequested</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLongClickable</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isNestedScrollingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isOpaque</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPaddingOffsetRequired</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPaddingRelative</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isPressed</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSaveEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSaveFromParentEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isScrollContainer</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isScrollbarFadingEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSelected</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isShown</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isSoundEffectsEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextAlignmentResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isVerticalFadingEdgeEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isVerticalScrollBarEnabled</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">jumpDrawablesToCurrentState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">layout</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">measure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">mergeDrawableStates</span>(int[] arg0, int[] arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetLeftAndRight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">offsetTopAndBottom</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAnimationEnd</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAnimationStart</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             WindowInsets</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onApplyWindowInsets</span>(WindowInsets arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onAttachedToWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCancelPendingInputEvents</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCheckIsTextEditor</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onConfigurationChanged</span>(Configuration arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int[]</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateDrawableState</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             InputConnection</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onCreateInputConnection</span>(EditorInfo arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDetachedFromWindow</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDisplayHint</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDragEvent</span>(DragEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDraw</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onDrawForeground</span>(Canvas arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onDrawScrollBars</span>(Canvas arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFilterTouchEventForSecurity</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFinishInflate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFinishTemporaryDetach</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onFocusChanged</span>(boolean arg0, int arg1, Rect arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onGenericMotionEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onHoverChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onHoverEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInitializeAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onInitializeAccessibilityNodeInfo</span>(AccessibilityNodeInfo arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyPreIme</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyShortcut</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onLayout</span>(boolean arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onMeasure</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onOverScrolled</span>(int arg0, int arg1, boolean arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onPopulateAccessibilityEvent</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">onProvideVirtualStructure</span>(ViewStructure arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRestoreInstanceState</span>(Parcelable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onRtlPropertiesChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Parcelable</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSaveInstanceState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onScreenStateChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onScrollChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSetAlpha</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onSizeChanged</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartTemporaryDetach</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTouchEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onTrackballEvent</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onVisibilityChanged</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowFocusChanged</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowSystemUiVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onWindowVisibilityChanged</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">overScrollBy</span>(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, boolean arg8)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performAccessibilityAction</span>(int arg0, Bundle arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">performContextClick</span>()</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performHapticFeedback</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performHapticFeedback</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">performLongClick</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">playSoundEffect</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">post</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postDelayed</span>(Runnable arg0, long arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidate</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidate</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateDelayed</span>(long arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateDelayed</span>(long arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateOnAnimation</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postInvalidateOnAnimation</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postOnAnimation</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">postOnAnimationDelayed</span>(Runnable arg0, long arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">refreshDrawableState</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeCallbacks</span>(Runnable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnAttachStateChangeListener</span>(View.OnAttachStateChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeOnLayoutChangeListener</span>(View.OnLayoutChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestApplyInsets</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFitSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocus</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFocusFromTouch</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestRectangleOnScreen</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestRectangleOnScreen</span>(Rect arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestUnbufferedDispatch</span>(MotionEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">resolveSize</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
+
+
+
             static
-            
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">resolveSizeAndState</span>(int arg0, int arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">restoreHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">saveHierarchyState</span>(SparseArray&lt;Parcelable&gt; arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollBy</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scrollTo</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityDelegate</span>(View.AccessibilityDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityLiveRegion</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityTraversalAfter</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAccessibilityTraversalBefore</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setActivated</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAlpha</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setAnimation</span>(Animation arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackground</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundColor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundResource</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundTintList</span>(ColorStateList arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBackgroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setBottom</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setCameraDistance</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClickable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipBounds</span>(Rect arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setClipToOutline</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setContentDescription</span>(CharSequence arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setContextClickable</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheBackgroundColor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDrawingCacheQuality</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setDuplicateParentStateEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setElevation</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFadingEdgeLength</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFilterTouchesWhenObscured</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFitsSystemWindows</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFocusable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setFocusableInTouchMode</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForeground</span>(Drawable arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundGravity</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintList</span>(ColorStateList arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setForegroundTintMode</span>(PorterDuff.Mode arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHapticFeedbackEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHasTransientState</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHorizontalFadingEdgeEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHorizontalScrollBarEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setHovered</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setImportantForAccessibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setKeepScreenOn</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLabelFor</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayerPaint</span>(Paint arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayerType</span>(int arg0, Paint arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutDirection</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLayoutParams</span>(ViewGroup.LayoutParams arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLeft</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setLongClickable</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMeasuredDimension</span>(int arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMinimumHeight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setMinimumWidth</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNestedScrollingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusDownId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusForwardId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusLeftId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusRightId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setNextFocusUpId</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnApplyWindowInsetsListener</span>(View.OnApplyWindowInsetsListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnClickListener</span>(View.OnClickListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnContextClickListener</span>(View.OnContextClickListener arg0)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnCreateContextMenuListener</span>(View.OnCreateContextMenuListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnDragListener</span>(View.OnDragListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnFocusChangeListener</span>(View.OnFocusChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnGenericMotionListener</span>(View.OnGenericMotionListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnHoverListener</span>(View.OnHoverListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnKeyListener</span>(View.OnKeyListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnLongClickListener</span>(View.OnLongClickListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setOnScrollChangeListener</span>(View.OnScrollChangeListener arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnSystemUiVisibilityChangeListener</span>(View.OnSystemUiVisibilityChangeListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOnTouchListener</span>(View.OnTouchListener arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOutlineProvider</span>(ViewOutlineProvider arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setOverScrollMode</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPadding</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPaddingRelative</span>(int arg0, int arg1, int arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPivotX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPivotY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setPressed</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRight</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotation</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotationX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setRotationY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSaveEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSaveFromParentEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScaleX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScaleY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarDefaultDelayBeforeFade</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarFadeDuration</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarSize</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollBarStyle</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollContainer</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setScrollIndicators</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollX</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollY</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setScrollbarFadingEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSelected</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSoundEffectsEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setStateListAnimator</span>(StateListAnimator arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setSystemUiVisibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTag</span>(int arg0, Object arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTag</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTextAlignment</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTextDirection</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTop</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTouchDelegate</span>(TouchDelegate arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTransitionName</span>(String arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setTranslationZ</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalFadingEdgeEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalScrollBarEnabled</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVerticalScrollbarPosition</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setVisibility</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setWillNotCacheDrawing</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setWillNotDraw</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setX</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setY</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class=" api apilevel-" >
+
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">setZ</span>(float arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
-    <tr class="alt-color api apilevel-" >
+
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenu</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionMode</span>(ActionMode.Callback arg0, int arg1)</nobr>
+
+  </td></tr>
+
+
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionMode</span>(ActionMode.Callback arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startAnimation</span>(Animation arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startDrag</span>(ClipData arg0, View.DragShadowBuilder arg1, Object arg2, int arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startNestedScroll</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">stopNestedScroll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">toString</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">verifyDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">willNotCacheDrawing</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">willNotDraw</span>()</nobr>
-        
+
   </td></tr>
 
 
@@ -15054,7 +16333,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -15066,182 +16345,474 @@
   </div>
   <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             Object</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clone</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">equals</span>(Object arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">finalize</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             Class&lt;?&gt;</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getClass</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">hashCode</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notify</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifyAll</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
+
+
+
+
+
             String</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">toString</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
-            
-            
+
+
             final
-            
-            
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">wait</span>(long arg0)</nobr>
-        
+
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.v4.view.ScrollingView" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.support.v4.view.ScrollingView-trigger"
+          src="../../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  android.support.v4.view.ScrollingView
+
+<div id="inherited-methods-android.support.v4.view.ScrollingView">
+  <div id="inherited-methods-android.support.v4.view.ScrollingView-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.support.v4.view.ScrollingView-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeHorizontalScrollExtent</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeHorizontalScrollOffset</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeHorizontalScrollRange</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeVerticalScrollExtent</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeVerticalScrollOffset</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">computeVerticalScrollRange</span>()</nobr>
+
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.v4.view.NestedScrollingChild" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-android.support.v4.view.NestedScrollingChild-trigger"
+          src="../../../../../assets/images/triangle-closed.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  android.support.v4.view.NestedScrollingChild
+
+<div id="inherited-methods-android.support.v4.view.NestedScrollingChild">
+  <div id="inherited-methods-android.support.v4.view.NestedScrollingChild-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-android.support.v4.view.NestedScrollingChild-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedFling</span>(float arg0, float arg1, boolean arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedPreFling</span>(float arg0, float arg1)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedPreScroll</span>(int arg0, int arg1, int[] arg2, int[] arg3)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">dispatchNestedScroll</span>(int arg0, int arg1, int arg2, int arg3, int[] arg4)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hasNestedScrollingParent</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">isNestedScrollingEnabled</span>()</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">setNestedScrollingEnabled</span>(boolean arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startNestedScroll</span>(int arg0)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
+            void</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">stopNestedScroll</span>()</nobr>
+
   </td></tr>
 
 
@@ -15256,7 +16827,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewParent-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -15268,662 +16839,678 @@
   </div>
   <div id="inherited-methods-android.view.ViewParent-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">bringChildToFront</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">canResolveTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childDrawableStateChanged</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">childHasTransientStateChanged</span>(View arg0, boolean arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">clearChildFocus</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">createContextMenu</span>(ContextMenu arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             View</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusSearch</span>(View arg0, int arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">focusableViewAvailable</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getChildVisibleRect</span>(View arg0, Rect arg1, Point arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getLayoutDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParent</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getParentForAccessibility</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextAlignment</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">getTextDirection</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChild</span>(View arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             ViewParent</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateChildInParent</span>(int[] arg0, Rect arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isLayoutRequested</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextAlignmentResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">isTextDirectionResolved</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">notifySubtreeAccessibilityStateChanged</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedFling</span>(View arg0, float arg1, float arg2, boolean arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreFling</span>(View arg0, float arg1, float arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPrePerformAccessibilityAction</span>(View arg0, int arg1, Bundle arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedPreScroll</span>(View arg0, int arg1, int arg2, int[] arg3)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScroll</span>(View arg0, int arg1, int arg2, int arg3, int arg4)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onNestedScrollAccepted</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStartNestedScroll</span>(View arg0, View arg1, int arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onStopNestedScroll</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">recomputeViewAttributes</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildFocus</span>(View arg0, View arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestChildRectangleOnScreen</span>(View arg0, Rect arg1, boolean arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestDisallowInterceptTouchEvent</span>(boolean arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestFitSystemWindows</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestLayout</span>()</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestSendAccessibilityEvent</span>(View arg0, AccessibilityEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">requestTransparentRegion</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">showContextMenuForChild</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
+            ActionMode</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1, int arg2)</nobr>
+
+  </td></tr>
+
+
+
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+
+
+
+
             ActionMode</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">startActionModeForChild</span>(View arg0, ActionMode.Callback arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -15938,7 +17525,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.ViewManager-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -15950,54 +17537,54 @@
   </div>
   <div id="inherited-methods-android.view.ViewManager-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">addView</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">removeView</span>(View arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">updateViewLayout</span>(View arg0, ViewGroup.LayoutParams arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -16012,7 +17599,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -16024,54 +17611,54 @@
   </div>
   <div id="inherited-methods-android.graphics.drawable.Drawable.Callback-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">invalidateDrawable</span>(Drawable arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">scheduleDrawable</span>(Drawable arg0, Runnable arg1, long arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">unscheduleDrawable</span>(Drawable arg0, Runnable arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -16086,7 +17673,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -16098,70 +17685,70 @@
   </div>
   <div id="inherited-methods-android.view.KeyEvent.Callback-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyDown</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyLongPress</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyMultiple</span>(int arg0, int arg1, KeyEvent arg2)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             boolean</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">onKeyUp</span>(int arg0, KeyEvent arg1)</nobr>
-        
+
   </td></tr>
 
 
@@ -16176,7 +17763,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -16188,38 +17775,38 @@
   </div>
   <div id="inherited-methods-android.view.accessibility.AccessibilityEventSource-summary" style="display: none;">
     <table class="jd-sumtable-expando">
-    
 
 
-	 
+
+
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEvent</span>(int arg0)</nobr>
-        
+
   </td></tr>
 
 
-	 
+
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
-            
-            
-            
-            
+
+
+
+
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
         <span class="sympad">sendAccessibilityEventUnchecked</span>(AccessibilityEvent arg0)</nobr>
-        
+
   </td></tr>
 
 
@@ -16265,30 +17852,30 @@
 
 <A NAME="WearableListView(android.content.Context)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">WearableListView</span>
       <span class="normal">(Context context)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -16297,30 +17884,30 @@
 
 <A NAME="WearableListView(android.content.Context, android.util.AttributeSet)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">WearableListView</span>
       <span class="normal">(Context context, AttributeSet attrs)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -16329,30 +17916,30 @@
 
 <A NAME="WearableListView(android.content.Context, android.util.AttributeSet, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
-        
+        public
+
+
+
+
+
       </span>
       <span class="sympad">WearableListView</span>
       <span class="normal">(Context context, AttributeSet attrs, int defStyleAttr)</span>
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -16376,14 +17963,14 @@
 
 <A NAME="addOnCentralPositionChangedListener(android.support.wearable.view.WearableListView.OnCentralPositionChangedListener)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">addOnCentralPositionChangedListener</span>
@@ -16391,15 +17978,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Adds a listener that will be called when the central item of the list changes.
 </p></div>
 
@@ -16409,14 +17996,14 @@
 
 <A NAME="addOnScrollListener(android.support.wearable.view.WearableListView.OnScrollListener)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">addOnScrollListener</span>
@@ -16424,15 +18011,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Adds a listener that will be called when the content of the list view is scrolled.
 </p></div>
 
@@ -16442,14 +18029,14 @@
 
 <A NAME="animateToCenter()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">animateToCenter</span>
@@ -16457,15 +18044,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Automatically starts an animation that snaps the list to center on the element closest to the
  middle.
 </p></div>
@@ -16476,14 +18063,14 @@
 
 <A NAME="fling(int, int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         boolean
       </span>
       <span class="sympad">fling</span>
@@ -16491,15 +18078,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -16508,14 +18095,14 @@
 
 <A NAME="getBaseline()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         int
       </span>
       <span class="sympad">getBaseline</span>
@@ -16523,15 +18110,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">Returns</h5>
@@ -16546,14 +18133,14 @@
 
 <A NAME="getCentralViewTop()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         int
       </span>
       <span class="sympad">getCentralViewTop</span>
@@ -16561,15 +18148,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Returns top of the central <code>View</code> in the list when such view is fully centered.
 
  This is a more or a less a static value that you can use to align other views with the
@@ -16582,14 +18169,14 @@
 
 <A NAME="getChildViewHolder(android.view.View)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         <a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a>
       </span>
       <span class="sympad">getChildViewHolder</span>
@@ -16597,15 +18184,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -16614,14 +18201,14 @@
 
 <A NAME="getMaximizeSingleItem()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         boolean
       </span>
       <span class="sympad">getMaximizeSingleItem</span>
@@ -16629,15 +18216,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Determines if, when there is only one item in the WearableListView, that the single item
  is laid out so that it's height fills the entire WearableListView.
 </p></div>
@@ -16648,14 +18235,14 @@
 
 <A NAME="isAtTop()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         boolean
       </span>
       <span class="sympad">isAtTop</span>
@@ -16663,15 +18250,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">Returns</h5>
@@ -16683,16 +18270,49 @@
 </div>
 
 
-<A NAME="onInterceptTouchEvent(android.view.MotionEvent)"></A>
+<A NAME="isGestureNavigationEnabled()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
+        boolean
+      </span>
+      <span class="sympad">isGestureNavigationEnabled</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Determines if navigation of list with wrist gestures is enabled.
+</p></div>
+
+    </div>
+</div>
+
+
+<A NAME="onInterceptTouchEvent(android.view.MotionEvent)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+
+
+
+
         boolean
       </span>
       <span class="sympad">onInterceptTouchEvent</span>
@@ -16700,15 +18320,47 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="onKeyDown(int, android.view.KeyEvent)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+
+
+
+
+        boolean
+      </span>
+      <span class="sympad">onKeyDown</span>
+      <span class="normal">(int keyCode, KeyEvent event)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -16717,14 +18369,14 @@
 
 <A NAME="onTouchEvent(android.view.MotionEvent)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         boolean
       </span>
       <span class="sympad">onTouchEvent</span>
@@ -16732,15 +18384,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -16749,14 +18401,14 @@
 
 <A NAME="removeOnCentralPositionChangedListener(android.support.wearable.view.WearableListView.OnCentralPositionChangedListener)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">removeOnCentralPositionChangedListener</span>
@@ -16764,15 +18416,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Removes a listener that would be called when the central item of the list changes.
 </p></div>
 
@@ -16782,14 +18434,14 @@
 
 <A NAME="removeOnScrollListener(android.support.wearable.view.WearableListView.OnScrollListener)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">removeOnScrollListener</span>
@@ -16797,15 +18449,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Removes listener for scroll events.
 </p></div>
 
@@ -16815,14 +18467,14 @@
 
 <A NAME="resetLayoutManager()"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">resetLayoutManager</span>
@@ -16830,15 +18482,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Clears the state of the layout manager that positions list items.
 </p></div>
 
@@ -16848,14 +18500,14 @@
 
 <A NAME="setAdapter(android.support.v7.widget.RecyclerView.Adapter)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setAdapter</span>
@@ -16863,15 +18515,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -16880,14 +18532,14 @@
 
 <A NAME="setClickListener(android.support.wearable.view.WearableListView.ClickListener)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setClickListener</span>
@@ -16895,15 +18547,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Adds a listener that will be called when the user taps on the WearableListView or its items.
 </p></div>
 
@@ -16911,16 +18563,49 @@
 </div>
 
 
+<A NAME="setEnableGestureNavigation(boolean)"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public
+
+
+
+
+        void
+      </span>
+      <span class="sympad">setEnableGestureNavigation</span>
+      <span class="normal">(boolean enabled)</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p>Sets whether navigation of list with wrist gestures is enabled.
+</p></div>
+
+    </div>
+</div>
+
+
 <A NAME="setGreedyTouchMode(boolean)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setGreedyTouchMode</span>
@@ -16928,15 +18613,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>Controls whether WearableListView should intercept all touch events and also prevent the
  parent from receiving them.</p></div>
   <div class="jd-tagdata">
@@ -16956,14 +18641,14 @@
 
 <A NAME="setInitialOffset(int)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setInitialOffset</span>
@@ -16971,15 +18656,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>By default the first element of the list is initially positioned in the center of the screen.
  This method allows the developer to specify a different offset, e.g. to hide the
  WearableListView before the user is allowed to use it.</p></div>
@@ -17000,14 +18685,14 @@
 
 <A NAME="setMaximizeSingleItem(boolean)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">setMaximizeSingleItem</span>
@@ -17015,15 +18700,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p>When set to true, if there is only one item in the WearableListView, it will fill the entire
  WearableListView. When set to false, the default behavior will be used and the single item
  will fill only a third of the screen.
@@ -17035,14 +18720,14 @@
 
 <A NAME="smoothScrollToPosition(int, android.support.v7.widget.RecyclerView.SmoothScroller)"></A>
 
-<div class="jd-details api apilevel-"> 
+<div class="jd-details api apilevel-">
     <h4 class="jd-details-title">
       <span class="normal">
-        public 
-         
-         
-         
-         
+        public
+
+
+
+
         void
       </span>
       <span class="sympad">smoothScrollToPosition</span>
@@ -17050,15 +18735,15 @@
     </h4>
       <div class="api-level">
         <div></div>
-        
-  
+
+
 
       </div>
     <div class="jd-details-descr">
-      
-    
 
-      
+
+
+
   <div class="jd-tagdata jd-tagdescr"><p></p></div>
 
     </div>
@@ -17070,6 +18755,75 @@
 
 <!-- ========= METHOD DETAIL ======== -->
 
+<h2>Protected Methods</h2>
+
+
+
+<A NAME="onAttachedToWindow()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        protected
+
+
+
+
+        void
+      </span>
+      <span class="sympad">onAttachedToWindow</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+<A NAME="onDetachedFromWindow()"></A>
+
+<div class="jd-details api apilevel-">
+    <h4 class="jd-details-title">
+      <span class="normal">
+        protected
+
+
+
+
+        void
+      </span>
+      <span class="sympad">onDetachedFromWindow</span>
+      <span class="normal">()</span>
+    </h4>
+      <div class="api-level">
+        <div></div>
+
+
+
+      </div>
+    <div class="jd-details-descr">
+
+
+
+
+  <div class="jd-tagdata jd-tagdescr"><p></p></div>
+
+    </div>
+</div>
+
+
+
 
 
 <!-- ========= END OF CLASS DATA ========= -->
@@ -17098,22 +18852,22 @@
 
     <hr class="dac-footer-separator"/>
 
-    
+
       <p class="dac-footer-copyright">
-        
+
   Except as noted, this content is licensed under <a
   href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
   For details and restrictions, see the <a href="../../../../../license.html">
   Content License</a>.
       </p>
       <p class="dac-footer-build">
-        
-    Android Wearable Support&nbsp;r &mdash; 
+
+    Android Wearable Support&nbsp;r &mdash;
 <script src="../../../../../timestamp.js" type="text/javascript"></script>
 <script>document.write(BUILD_TIMESTAMP)</script>
 
       </p>
-    
+
 
     <p class="dac-footer-links">
       <a href="/about/index.html">About Android</a>
@@ -17255,8 +19009,8 @@
 
 </div><!-- end doc-content -->
 
-</div> <!-- end .cols --> 
-</div> <!-- end body-content --> 
+</div> <!-- end .cols -->
+</div> <!-- end body-content -->
 
 
 
diff --git a/docs/html/reference/android/support/wearable/view/package-summary.html b/docs/html/reference/android/support/wearable/view/package-summary.html
index f76e378..09a98c8 100644
--- a/docs/html/reference/android/support/wearable/view/package-summary.html
+++ b/docs/html/reference/android/support/wearable/view/package-summary.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -470,6 +475,7 @@
               
     <li><h2>Interfaces</h2>
       <ul>
+        <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></li>
         <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></li>
         <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></li>
         <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></li>
@@ -485,6 +491,7 @@
               
     <li><h2>Classes</h2>
       <ul>
+        <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></li>
         <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></li>
         <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></li>
         <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></li>
@@ -597,6 +604,17 @@
   <table class="jd-sumtable-expando">
     
       <tr class="alt-color api apilevel-" >
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.ActionChooserListener.html">ActionChooserView.ActionChooserListener</a></td>
+        <td class="jd-descrcol" width="100%">
+          Interface for receiving callbacks about options chosen from an <code><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></code>.&nbsp;
+          
+    
+
+        </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.DelayedConfirmationListener.html">DelayedConfirmationView.DelayedConfirmationListener</a></td>
         <td class="jd-descrcol" width="100%">
           Implement this interface to receive callbacks when the timer is finished and when the user
@@ -608,7 +626,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.html">GridPageOptions</a></td>
         <td class="jd-descrcol" width="100%">
           An optional interface for a Fragment within a GridViewPager which provides additional
@@ -620,7 +638,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/GridPageOptions.BackgroundListener.html">GridPageOptions.BackgroundListener</a></td>
         <td class="jd-descrcol" width="100%">
           Interface for communicating background changes to a listener.&nbsp;
@@ -631,7 +649,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html">GridViewPager.OnAdapterChangeListener</a></td>
         <td class="jd-descrcol" width="100%">
           Callback interface for responding to a replaced or removed adapter.&nbsp;
@@ -642,7 +660,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html">GridViewPager.OnPageChangeListener</a></td>
         <td class="jd-descrcol" width="100%">
           Callback interface for responding to changing state of the selected page.&nbsp;
@@ -653,7 +671,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.OnLayoutInflatedListener.html">WatchViewStub.OnLayoutInflatedListener</a></td>
         <td class="jd-descrcol" width="100%">
           Listener for detecting when internal layout inflation has completed.&nbsp;
@@ -664,7 +682,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ClickListener.html">WearableListView.ClickListener</a></td>
         <td class="jd-descrcol" width="100%">
           Interface for listening for click events on WearableListView.&nbsp;
@@ -675,7 +693,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCenterProximityListener.html">WearableListView.OnCenterProximityListener</a></td>
         <td class="jd-descrcol" width="100%">
           Interface for receiving callbacks when WearableListView children become or cease to be the
@@ -687,7 +705,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnCentralPositionChangedListener.html">WearableListView.OnCentralPositionChangedListener</a></td>
         <td class="jd-descrcol" width="100%">
           A listener interface that can be added to the WearableListView to get notified when the
@@ -699,7 +717,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.OnScrollListener.html">WearableListView.OnScrollListener</a></td>
         <td class="jd-descrcol" width="100%">
           Interface for listening to WearableListView content scrolling.&nbsp;
@@ -724,6 +742,18 @@
   <table class="jd-sumtable-expando">
     
       <tr class="alt-color api apilevel-" >
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/ActionChooserView.html">ActionChooserView</a></td>
+        <td class="jd-descrcol" width="100%">
+          The action chooser view allows the user to select from two options that are presented in the
+ sides of the view.&nbsp;
+          
+    
+
+        </td>
+      </tr>
+      
+    
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/ActionLabel.html">ActionLabel</a></td>
         <td class="jd-descrcol" width="100%">
           ActionLabel is a specialized text display widget.&nbsp;
@@ -734,7 +764,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/ActionPage.html">ActionPage</a></td>
         <td class="jd-descrcol" width="100%">
           Displays a circular button, with an optional image to perform an action.&nbsp;
@@ -745,7 +775,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.html">BoxInsetLayout</a></td>
         <td class="jd-descrcol" width="100%">
           BoxInsetLayout is a screen shape-aware FrameLayout that can box its children
@@ -758,7 +788,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html">BoxInsetLayout.LayoutParams</a></td>
         <td class="jd-descrcol" width="100%">
           adds <code>layout_box</code> attribute to layout parameters
@@ -770,7 +800,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/CardFragment.html">CardFragment</a></td>
         <td class="jd-descrcol" width="100%">
           Presents content within an expandable, vertically scrollable card.&nbsp;
@@ -781,7 +811,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/CardFrame.html">CardFrame</a></td>
         <td class="jd-descrcol" width="100%">
           Wraps a view in a card-styled frame with a white background, rounded corners and a light
@@ -793,7 +823,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/CardScrollView.html">CardScrollView</a></td>
         <td class="jd-descrcol" width="100%">
           Designed to host a CardFrame and provides special support for scrolling with expansion in both
@@ -805,7 +835,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/CircledImageView.html">CircledImageView</a></td>
         <td class="jd-descrcol" width="100%">
           An image view surrounded by a circle.&nbsp;
@@ -816,7 +846,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/CircularButton.html">CircularButton</a></td>
         <td class="jd-descrcol" width="100%">
           A circular button in the style of a <a
@@ -829,7 +859,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/CrossfadeDrawable.html">CrossfadeDrawable</a></td>
         <td class="jd-descrcol" width="100%">
           Contains two child drawables and provides methods to directly adjust the blend between the two.&nbsp;
@@ -840,7 +870,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/DelayedConfirmationView.html">DelayedConfirmationView</a></td>
         <td class="jd-descrcol" width="100%">
           <code>DelayedConfirmationView</code> provides a circular countdown timer, typically used to
@@ -852,7 +882,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/DismissOverlayView.html">DismissOverlayView</a></td>
         <td class="jd-descrcol" width="100%">
           A view for implementing long-press-to-dismiss in an app.&nbsp;
@@ -863,7 +893,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/DotsPageIndicator.html">DotsPageIndicator</a></td>
         <td class="jd-descrcol" width="100%">
           A page indicator for <code><a href="../../../../../reference/android/support/wearable/view/GridViewPager.html">GridViewPager</a></code> which identifies the current page in relation to all
@@ -875,7 +905,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/FragmentGridPagerAdapter.html">FragmentGridPagerAdapter</a></td>
         <td class="jd-descrcol" width="100%">
           An implementation of GridPagerAdapter which represents each page as a <code><a href="../../../../../reference/android/app/Fragment.html">Fragment</a></code>.&nbsp;
@@ -886,7 +916,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/GridPagerAdapter.html">GridPagerAdapter</a></td>
         <td class="jd-descrcol" width="100%">
           This component is responsible for providing views requested by a <code><a href="../../../../../reference/android/support/wearable/view/GridViewPager.html">GridViewPager</a></code>.&nbsp;
@@ -897,7 +927,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.html">GridViewPager</a></td>
         <td class="jd-descrcol" width="100%">
           Layout manager that allows the user to navigate both vertically and horizontally through pages of
@@ -909,7 +939,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/GridViewPager.LayoutParams.html">GridViewPager.LayoutParams</a></td>
         <td class="jd-descrcol" width="100%">
           Layout parameters that should be supplied for views added to a ViewPager.&nbsp;
@@ -920,7 +950,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/ProgressSpinner.html">ProgressSpinner</a></td>
         <td class="jd-descrcol" width="100%">
           An indeterminate progress spinner designed for wearables which cycles through colors.&nbsp;
@@ -931,7 +961,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/SimpleAnimatorListener.html">SimpleAnimatorListener</a></td>
         <td class="jd-descrcol" width="100%">
           Convenience class for listening for Animator events that implements the AnimatorListener
@@ -943,7 +973,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WatchViewStub.html">WatchViewStub</a></td>
         <td class="jd-descrcol" width="100%">
           A WatchViewStub allows for the use of different sub-layouts depending on the
@@ -956,7 +986,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableFrameLayout.html">WearableFrameLayout</a></td>
         <td class="jd-descrcol" width="100%">
           WearableFrameLayout works exactly like FrameLayout, except it can have overrides for a round
@@ -968,7 +998,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html">WearableFrameLayout.LayoutParams</a></td>
         <td class="jd-descrcol" width="100%">
           Per-child layout information for layouts on wearable devices.&nbsp;
@@ -979,7 +1009,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.html">WearableListView</a></td>
         <td class="jd-descrcol" width="100%">
           An alternative version of ListView that is optimized for ease of use on small screen wearable
@@ -991,7 +1021,7 @@
       </tr>
       
     
-      <tr class=" api apilevel-" >
+      <tr class="alt-color api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.Adapter.html">WearableListView.Adapter</a></td>
         <td class="jd-descrcol" width="100%">
           Base class for adapters providing data for the WearableListView.&nbsp;
@@ -1002,7 +1032,7 @@
       </tr>
       
     
-      <tr class="alt-color api apilevel-" >
+      <tr class=" api apilevel-" >
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/view/WearableListView.ViewHolder.html">WearableListView.ViewHolder</a></td>
         <td class="jd-descrcol" width="100%">
           Wrapper around items displayed in the list view.&nbsp;
diff --git a/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html b/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html
index 1a7aa76..44b539d 100644
--- a/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html
+++ b/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -927,7 +932,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1346,7 +1351,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService.Engine" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1692,7 +1697,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.html b/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.html
index aee337f..9f3bf6c 100644
--- a/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.html
+++ b/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -880,7 +885,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.wearable.watchface.WatchFaceService" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.support.wearable.watchface.WatchFaceService-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 <a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html">android.support.wearable.watchface.WatchFaceService</a>
 <div id="inherited-constants-android.support.wearable.watchface.WatchFaceService">
@@ -894,7 +899,7 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALARMS">INTERRUPTION_FILTER_ALARMS</a></td>
         <td class="jd-descrcol" width="100%">
           Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
  <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
@@ -907,7 +912,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></td>
         <td class="jd-descrcol" width="100%">
           Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
  <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
@@ -920,6 +925,19 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></td>
+        <td class="jd-descrcol" width="100%">
+          Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
+ <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_PRIORITY">INTERRUPTION_FILTER_PRIORITY</a></td>
         <td class="jd-descrcol" width="100%">
           Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
@@ -931,6 +949,19 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_UNKNOWN">INTERRUPTION_FILTER_UNKNOWN</a></td>
+        <td class="jd-descrcol" width="100%">
+          Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
+ <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#PROPERTY_BURN_IN_PROTECTION">PROPERTY_BURN_IN_PROTECTION</a></td>
@@ -1007,7 +1038,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.service.wallpaper.WallpaperService-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.service.wallpaper.WallpaperService
 <div id="inherited-constants-android.service.wallpaper.WallpaperService">
@@ -1055,7 +1086,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Service" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.app.Service-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.app.Service
 <div id="inherited-constants-android.app.Service">
@@ -1165,7 +1196,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.Context" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.Context-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.content.Context
 <div id="inherited-constants-android.content.Context">
@@ -1407,7 +1438,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
-        <td class="jd-linkcol">CLIPBOARD_SERVICE</td>
+        <td class="jd-linkcol">CARRIER_CONFIG_SERVICE</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1419,6 +1450,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">CLIPBOARD_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
         <td class="jd-linkcol">CONNECTIVITY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1429,7 +1472,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">CONSUMER_IR_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1441,7 +1484,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_IGNORE_SECURITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1453,7 +1496,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_INCLUDE_CODE</td>
         <td class="jd-descrcol" width="100%">
@@ -1465,7 +1508,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_RESTRICTED</td>
         <td class="jd-descrcol" width="100%">
@@ -1477,7 +1520,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DEVICE_POLICY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1489,7 +1532,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DISPLAY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1501,7 +1544,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DOWNLOAD_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1513,7 +1556,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DROPBOX_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1525,6 +1568,18 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">FINGERPRINT_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">INPUT_METHOD_SERVICE</td>
@@ -1646,6 +1701,18 @@
     
     
     <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">MIDI_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_APPEND</td>
         <td class="jd-descrcol" width="100%">
@@ -1657,7 +1724,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_ENABLE_WRITE_AHEAD_LOGGING</td>
         <td class="jd-descrcol" width="100%">
@@ -1669,7 +1736,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_MULTI_PROCESS</td>
         <td class="jd-descrcol" width="100%">
@@ -1681,7 +1748,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_PRIVATE</td>
         <td class="jd-descrcol" width="100%">
@@ -1693,7 +1760,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_WORLD_READABLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1705,7 +1772,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_WORLD_WRITEABLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1717,6 +1784,18 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">NETWORK_STATS_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">NFC_SERVICE</td>
@@ -2007,7 +2086,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From interface
 android.content.ComponentCallbacks2
 <div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -2190,7 +2269,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.watchface.WatchFaceService" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.wearable.watchface.WatchFaceService-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2232,7 +2311,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.service.wallpaper.WallpaperService-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2338,7 +2417,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Service" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.app.Service-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2652,7 +2731,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ContextWrapper" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ContextWrapper-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2790,7 +2869,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
+        <span class="sympad">checkSelfPermission</span>(String arg0)</nobr>
         
   </td></tr>
 
@@ -2806,7 +2885,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
         
   </td></tr>
 
@@ -2819,6 +2898,22 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -2828,7 +2923,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2844,7 +2939,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2860,7 +2955,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2876,7 +2971,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2892,7 +2987,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2908,7 +3003,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2924,7 +3019,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2940,7 +3035,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2956,7 +3051,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2972,7 +3067,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2988,7 +3083,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3004,7 +3099,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3020,7 +3115,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3036,7 +3131,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3052,7 +3147,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3068,7 +3163,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3084,7 +3179,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3100,7 +3195,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3116,7 +3211,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3132,7 +3227,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3148,7 +3243,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3164,7 +3259,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3180,7 +3275,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3196,7 +3291,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3212,7 +3307,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3228,7 +3323,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3244,7 +3339,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3260,7 +3355,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3276,7 +3371,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3292,7 +3387,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3308,7 +3403,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3324,7 +3419,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3340,7 +3435,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3356,7 +3451,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3372,7 +3467,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3388,7 +3483,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3404,7 +3499,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3420,7 +3515,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3436,7 +3531,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3452,7 +3547,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3468,7 +3563,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3484,7 +3579,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3500,6 +3595,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemServiceName</span>(Class&lt;?&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4166,7 +4277,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.Context" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.Context-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4288,7 +4399,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
+        <span class="sympad">checkSelfPermission</span>(String arg0)</nobr>
         
   </td></tr>
 
@@ -4304,7 +4415,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
         
   </td></tr>
 
@@ -4317,6 +4428,22 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -4326,7 +4453,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4342,7 +4469,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4358,7 +4485,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4374,7 +4501,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4390,7 +4517,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4406,7 +4533,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4422,7 +4549,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4438,7 +4565,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4454,7 +4581,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4470,7 +4597,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4486,7 +4613,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4502,7 +4629,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4518,7 +4645,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4534,7 +4661,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4550,7 +4677,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4566,7 +4693,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4582,7 +4709,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4598,7 +4725,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4614,7 +4741,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4630,7 +4757,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4646,8 +4773,40 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getColorStateList</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
             abstract
             
             
@@ -4662,7 +4821,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4678,7 +4837,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4694,7 +4853,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4710,7 +4869,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4726,7 +4885,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4742,7 +4901,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4758,7 +4917,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4774,7 +4933,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4790,7 +4949,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4806,7 +4965,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4822,7 +4981,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4838,7 +4997,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4854,7 +5013,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4870,7 +5029,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4886,7 +5045,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4902,7 +5061,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4918,7 +5077,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4934,7 +5093,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4950,7 +5109,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4966,7 +5125,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4982,7 +5141,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4998,7 +5157,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5014,6 +5173,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            &lt;T&gt;
+            T</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemService</span>(Class&lt;T&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
@@ -5032,6 +5207,22 @@
 	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemServiceName</span>(Class&lt;?&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
             
             
             final
@@ -5046,7 +5237,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5062,7 +5253,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5078,7 +5269,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5094,7 +5285,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5110,7 +5301,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5126,7 +5317,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5142,7 +5333,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5158,7 +5349,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5174,7 +5365,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5190,7 +5381,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5206,7 +5397,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5222,7 +5413,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5238,7 +5429,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5254,7 +5445,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5270,7 +5461,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5286,7 +5477,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5302,7 +5493,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5318,7 +5509,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5334,7 +5525,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5350,7 +5541,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5366,7 +5557,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5382,7 +5573,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5398,7 +5589,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5414,7 +5605,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5430,7 +5621,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5446,7 +5637,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5462,7 +5653,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5478,7 +5669,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5494,7 +5685,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5510,7 +5701,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5526,7 +5717,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5542,7 +5733,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5558,7 +5749,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5574,7 +5765,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5590,7 +5781,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5606,7 +5797,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5622,7 +5813,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5638,7 +5829,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5654,7 +5845,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5670,7 +5861,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5686,7 +5877,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5702,7 +5893,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5718,7 +5909,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5734,7 +5925,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5750,7 +5941,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5766,7 +5957,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5782,7 +5973,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5808,7 +5999,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -6010,7 +6201,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -6052,7 +6243,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html b/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html
index aba23a6..2b2c846 100644
--- a/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html
+++ b/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -1097,7 +1102,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1516,7 +1521,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService.Engine" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1862,7 +1867,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.html b/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.html
index 1dcc7dd..67939cbf 100644
--- a/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.html
+++ b/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -883,7 +888,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.wearable.watchface.WatchFaceService" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.support.wearable.watchface.WatchFaceService-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 <a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html">android.support.wearable.watchface.WatchFaceService</a>
 <div id="inherited-constants-android.support.wearable.watchface.WatchFaceService">
@@ -897,7 +902,7 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALARMS">INTERRUPTION_FILTER_ALARMS</a></td>
         <td class="jd-descrcol" width="100%">
           Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
  <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
@@ -910,7 +915,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></td>
         <td class="jd-descrcol" width="100%">
           Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
  <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
@@ -923,6 +928,19 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></td>
+        <td class="jd-descrcol" width="100%">
+          Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
+ <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_PRIORITY">INTERRUPTION_FILTER_PRIORITY</a></td>
         <td class="jd-descrcol" width="100%">
           Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
@@ -934,6 +952,19 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_UNKNOWN">INTERRUPTION_FILTER_UNKNOWN</a></td>
+        <td class="jd-descrcol" width="100%">
+          Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
+ <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#PROPERTY_BURN_IN_PROTECTION">PROPERTY_BURN_IN_PROTECTION</a></td>
@@ -1010,7 +1041,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.service.wallpaper.WallpaperService-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.service.wallpaper.WallpaperService
 <div id="inherited-constants-android.service.wallpaper.WallpaperService">
@@ -1058,7 +1089,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Service" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.app.Service-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.app.Service
 <div id="inherited-constants-android.app.Service">
@@ -1168,7 +1199,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.Context" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.Context-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.content.Context
 <div id="inherited-constants-android.content.Context">
@@ -1410,7 +1441,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
-        <td class="jd-linkcol">CLIPBOARD_SERVICE</td>
+        <td class="jd-linkcol">CARRIER_CONFIG_SERVICE</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1422,6 +1453,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">CLIPBOARD_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
         <td class="jd-linkcol">CONNECTIVITY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1432,7 +1475,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">CONSUMER_IR_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1444,7 +1487,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_IGNORE_SECURITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1456,7 +1499,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_INCLUDE_CODE</td>
         <td class="jd-descrcol" width="100%">
@@ -1468,7 +1511,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_RESTRICTED</td>
         <td class="jd-descrcol" width="100%">
@@ -1480,7 +1523,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DEVICE_POLICY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1492,7 +1535,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DISPLAY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1504,7 +1547,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DOWNLOAD_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1516,7 +1559,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DROPBOX_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1528,6 +1571,18 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">FINGERPRINT_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">INPUT_METHOD_SERVICE</td>
@@ -1649,6 +1704,18 @@
     
     
     <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">MIDI_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_APPEND</td>
         <td class="jd-descrcol" width="100%">
@@ -1660,7 +1727,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_ENABLE_WRITE_AHEAD_LOGGING</td>
         <td class="jd-descrcol" width="100%">
@@ -1672,7 +1739,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_MULTI_PROCESS</td>
         <td class="jd-descrcol" width="100%">
@@ -1684,7 +1751,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_PRIVATE</td>
         <td class="jd-descrcol" width="100%">
@@ -1696,7 +1763,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_WORLD_READABLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1708,7 +1775,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_WORLD_WRITEABLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1720,6 +1787,18 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">NETWORK_STATS_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">NFC_SERVICE</td>
@@ -2010,7 +2089,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From interface
 android.content.ComponentCallbacks2
 <div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -2193,7 +2272,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.watchface.WatchFaceService" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.support.wearable.watchface.WatchFaceService-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2235,7 +2314,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.service.wallpaper.WallpaperService-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2341,7 +2420,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Service" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.app.Service-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2655,7 +2734,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ContextWrapper" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ContextWrapper-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2793,7 +2872,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
+        <span class="sympad">checkSelfPermission</span>(String arg0)</nobr>
         
   </td></tr>
 
@@ -2809,7 +2888,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
         
   </td></tr>
 
@@ -2822,6 +2901,22 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -2831,7 +2926,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2847,7 +2942,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2863,7 +2958,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2879,7 +2974,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2895,7 +2990,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2911,7 +3006,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2927,7 +3022,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2943,7 +3038,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2959,7 +3054,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2975,7 +3070,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2991,7 +3086,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3007,7 +3102,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3023,7 +3118,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3039,7 +3134,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3055,7 +3150,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3071,7 +3166,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3087,7 +3182,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3103,7 +3198,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3119,7 +3214,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3135,7 +3230,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3151,7 +3246,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3167,7 +3262,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3183,7 +3278,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3199,7 +3294,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3215,7 +3310,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3231,7 +3326,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3247,7 +3342,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3263,7 +3358,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3279,7 +3374,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3295,7 +3390,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3311,7 +3406,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3327,7 +3422,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3343,7 +3438,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3359,7 +3454,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3375,7 +3470,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3391,7 +3486,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3407,7 +3502,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3423,7 +3518,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3439,7 +3534,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3455,7 +3550,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3471,7 +3566,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3487,7 +3582,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3503,6 +3598,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemServiceName</span>(Class&lt;?&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4169,7 +4280,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.Context" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.Context-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4291,7 +4402,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
+        <span class="sympad">checkSelfPermission</span>(String arg0)</nobr>
         
   </td></tr>
 
@@ -4307,7 +4418,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
         
   </td></tr>
 
@@ -4320,6 +4431,22 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -4329,7 +4456,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4345,7 +4472,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4361,7 +4488,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4377,7 +4504,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4393,7 +4520,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4409,7 +4536,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4425,7 +4552,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4441,7 +4568,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4457,7 +4584,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4473,7 +4600,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4489,7 +4616,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4505,7 +4632,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4521,7 +4648,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4537,7 +4664,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4553,7 +4680,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4569,7 +4696,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4585,7 +4712,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4601,7 +4728,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4617,7 +4744,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4633,7 +4760,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4649,8 +4776,40 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getColorStateList</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
             abstract
             
             
@@ -4665,7 +4824,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4681,7 +4840,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4697,7 +4856,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4713,7 +4872,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4729,7 +4888,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4745,7 +4904,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4761,7 +4920,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4777,7 +4936,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4793,7 +4952,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4809,7 +4968,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4825,7 +4984,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4841,7 +5000,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4857,7 +5016,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4873,7 +5032,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4889,7 +5048,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4905,7 +5064,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4921,7 +5080,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4937,7 +5096,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4953,7 +5112,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4969,7 +5128,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4985,7 +5144,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5001,7 +5160,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5017,6 +5176,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            &lt;T&gt;
+            T</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemService</span>(Class&lt;T&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
@@ -5035,6 +5210,22 @@
 	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemServiceName</span>(Class&lt;?&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
             
             
             final
@@ -5049,7 +5240,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5065,7 +5256,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5081,7 +5272,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5097,7 +5288,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5113,7 +5304,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5129,7 +5320,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5145,7 +5336,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5161,7 +5352,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5177,7 +5368,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5193,7 +5384,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5209,7 +5400,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5225,7 +5416,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5241,7 +5432,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5257,7 +5448,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5273,7 +5464,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5289,7 +5480,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5305,7 +5496,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5321,7 +5512,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5337,7 +5528,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5353,7 +5544,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5369,7 +5560,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5385,7 +5576,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5401,7 +5592,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5417,7 +5608,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5433,7 +5624,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5449,7 +5640,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5465,7 +5656,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5481,7 +5672,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5497,7 +5688,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5513,7 +5704,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5529,7 +5720,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5545,7 +5736,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5561,7 +5752,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5577,7 +5768,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5593,7 +5784,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5609,7 +5800,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5625,7 +5816,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5641,7 +5832,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5657,7 +5848,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5673,7 +5864,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5689,7 +5880,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5705,7 +5896,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5721,7 +5912,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5737,7 +5928,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5753,7 +5944,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5769,7 +5960,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5785,7 +5976,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5811,7 +6002,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -6013,7 +6204,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -6055,7 +6246,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.Engine.html b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.Engine.html
index ad6cc2c..23f17e1 100644
--- a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.Engine.html
+++ b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.Engine.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -662,7 +667,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
           ><img id="subclasses-direct-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Direct Subclasses
 
   <div id="subclasses-direct">
@@ -1217,7 +1222,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService.Engine" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1563,7 +1568,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1870,8 +1875,9 @@
   <div class="jd-tagdata jd-tagdescr"><p>Returns interruption filter selected by the user.</p></div>
   <div class="jd-tagdata">
       <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li><code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></code>, <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_PRIORITY">INTERRUPTION_FILTER_PRIORITY</a></code> or
-         <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></code>
+      <ul class="nolist"><li><code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></code>, <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_PRIORITY">INTERRUPTION_FILTER_PRIORITY</a></code>,
+         <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></code>, <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALARMS">INTERRUPTION_FILTER_ALARMS</a></code>,
+         or <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_UNKNOWN">INTERRUPTION_FILTER_UNKNOWN</a></code>.
 </li></ul>
   </div>
 
@@ -2174,8 +2180,9 @@
   <div class="jd-tagdata jd-tagdescr"><p>Called when the user changes interruption filter. The watch face should adjust the
  amount of information it displays. For example, if it displays the
  number of pending emails, it should hide it if interruptionFilter is equal to <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></code>. <code>interruptionFilter</code> can be
- <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></code>, <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_PRIORITY">INTERRUPTION_FILTER_PRIORITY</a></code> or
- <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></code>.
+ <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></code>, <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_PRIORITY">INTERRUPTION_FILTER_PRIORITY</a></code>,
+ <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></code>, <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALARMS">INTERRUPTION_FILTER_ALARMS</a></code>,
+ or <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_UNKNOWN">INTERRUPTION_FILTER_UNKNOWN</a></code>.
 </p></div>
 
     </div>
diff --git a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.TapType.html b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.TapType.html
new file mode 100644
index 0000000..6ae7176
--- /dev/null
+++ b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.TapType.html
@@ -0,0 +1,1024 @@
+<!DOCTYPE html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<html>
+<head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+
+<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.ico" />
+<title>WatchFaceService.TapType | Android Developers</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+  title="roboto">
+
+<link href="../../../../../assets/css/default.css?v=7" rel="stylesheet" type="text/css">
+
+
+<!-- FULLSCREEN STYLESHEET -->
+<link href="../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
+type="text/css">
+
+
+<!-- JAVASCRIPT -->
+<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+  var toRoot = "../../../../../";
+  var metaTags = [];
+  var devsite = false;
+</script>
+<script src="../../../../../assets/js/docs.js?v=6" type="text/javascript"></script>
+
+
+
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-5831155-1', 'android.com');
+  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
+  ga('send', 'pageview');
+  ga('universal.send', 'pageview'); // Send page view for new tracker.
+</script>
+
+</head>
+
+<body class="gc-documentation 
+  develop reference" itemscope itemtype="http://schema.org/Article">
+  <div id="doc-api-level" class="" style="display:none"></div>
+  <a name="top"></a>
+
+<a name="top"></a>
+
+<!-- dialog to prompt lang pref change when loaded from hardcoded URL
+<div id="langMessage" style="display:none">
+  <div>
+    <div class="lang en">
+      <p>You requested a page in English, would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang es">
+      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ja">
+      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ko">
+      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang ru">
+      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-cn">
+      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
+    </div>
+    <div class="lang zh-tw">
+      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
+    </div>
+    <a href="#" class="button yes" onclick="return false;">
+      <span class="lang en">Yes</span>
+      <span class="lang es">Sí</span>
+      <span class="lang ja">Yes</span>
+      <span class="lang ko">Yes</span>
+      <span class="lang ru">Yes</span>
+      <span class="lang zh-cn">是的</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
+      <span class="lang en">No</span>
+      <span class="lang es">No</span>
+      <span class="lang ja">No</span>
+      <span class="lang ko">No</span>
+      <span class="lang ru">No</span>
+      <span class="lang zh-cn">没有</span>
+      <span class="lang zh-tw">没有</span>
+    </a>
+  </div>
+</div> -->
+
+
+  <!-- Header -->
+  <div id="header-wrapper">
+    <div class="dac-header" id="header">
+
+
+
+
+      <div class="dac-header-inner">
+        <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
+          <span class="dac-nav-hamburger">
+            <span class="dac-nav-hamburger-top"></span>
+            <span class="dac-nav-hamburger-mid"></span>
+            <span class="dac-nav-hamburger-bot"></span>
+          </span>
+        </a>
+        <a class="dac-header-logo" href="../../../../../index.html">
+          <img class="dac-header-logo-image" src="../../../../../assets/images/android_logo.png"
+              srcset="../../../../../assets/images/android_logo@2x.png 2x"
+              width="32" height="36" alt="Android" /> Developers
+          </a>
+
+        <ul class="dac-header-crumbs">
+          
+          <li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current ">WatchFaceService.TapType</a></li>
+        </ul>
+
+        
+        
+        
+  <div class="dac-header-search" id="search-container">
+    <div class="dac-header-search-inner">
+      <div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div>
+      <form class="dac-header-search-form" onsubmit="return submit_search()">
+        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
+          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+          onkeydown="return search_changed(event, true, '../../../../../')"
+          onkeyup="return search_changed(event, false, '../../../../../')"
+          class="dac-header-search-input" placeholder="Search" />
+          <a class="dac-header-search-close hide" id="search-close">close</a>
+      </form>
+    </div><!-- end dac-header-search-inner -->
+  </div><!-- end dac-header-search -->
+
+  <div class="search_filtered_wrapper">
+    <div class="suggest-card reference no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card develop no-display">
+      <ul class="search_filtered">
+      </ul>
+      <div class="child-card guides no-display">
+      </div>
+      <div class="child-card training no-display">
+      </div>
+      <div class="child-card samples no-display">
+      </div>
+    </div>
+    <div class="suggest-card design no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+    <div class="suggest-card distribute no-display">
+      <ul class="search_filtered">
+      </ul>
+    </div>
+  </div>
+
+        
+
+        <a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
+          <span class="dac-sprite dac-google-play"></span>
+          <span class="dac-visible-desktop-inline">Developer</span>
+          Console
+        </a>
+
+      </div><!-- end header-wrap.wrap -->
+    </div><!-- end header -->
+
+    <div id="searchResults" class="wrap" style="display:none;">
+      <h2 id="searchTitle">Results</h2>
+      <div id="leftSearchControl" class="search-control">Loading...</div>
+    </div>
+  </div> <!--end header-wrapper -->
+
+  
+  <!-- Navigation-->
+  <nav class="dac-nav">
+    <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
+
+    <ul class="dac-nav-list" data-dac-nav>
+      <li class="dac-nav-item dac-nav-head">
+        <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation">
+          <img class="dac-logo-image" src="../../../../../assets/images/android_logo.png"
+               srcset="../../../../../assets/images/android_logo@2x.png 2x"
+               width="32" height="36" alt="Android" /> Developers
+        </a>
+      </li>
+      <li class="dac-nav-item home">
+        <a class="dac-nav-link dac-visible-mobile-block" href="../../../../../index.html">Home</a>
+        <ul class="dac-nav-secondary about">
+          <li class="dac-nav-item about">
+            <a class="dac-nav-link" href="../../../../../about/index.html">Android</a>
+          </li>
+          <li class="dac-nav-item wear">
+            <a class="dac-nav-link" href="../../../../../wear/index.html">Wear</a>
+          </li>
+          <li class="dac-nav-item tv">
+            <a class="dac-nav-link" href="../../../../../tv/index.html">TV</a>
+          </li>
+          <li class="dac-nav-item auto">
+            <a class="dac-nav-link" href="../../../../../auto/index.html">Auto</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item design">
+        <a class="dac-nav-link" href="../../../../../design/index.html"
+           zh-tw-lang="設計"
+           zh-cn-lang="设计"
+           ru-lang="Проектирование"
+           ko-lang="디자인"
+           ja-lang="設計"
+           es-lang="Diseñar">Design</a>
+      </li>
+      <li class="dac-nav-item develop">
+        <a class="dac-nav-link" href="../../../../../develop/index.html"
+           zh-tw-lang="開發"
+           zh-cn-lang="开发"
+           ru-lang="Разработка"
+           ko-lang="개발"
+           ja-lang="開発"
+           es-lang="Desarrollar">Develop</a>
+        <ul class="dac-nav-secondary develop">
+          <li class="dac-nav-item training">
+            <a class="dac-nav-link" href="../../../../../training/index.html"
+               zh-tw-lang="訓練課程"
+               zh-cn-lang="培训"
+               ru-lang="Курсы"
+               ko-lang="교육"
+               ja-lang="トレーニング"
+               es-lang="Capacitación">Training</a>
+          </li>
+          <li class="dac-nav-item guide">
+            <a class="dac-nav-link" href="../../../../../guide/index.html"
+               zh-tw-lang="API 指南"
+               zh-cn-lang="API 指南"
+               ru-lang="Руководства по API"
+               ko-lang="API 가이드"
+               ja-lang="API ガイド"
+               es-lang="Guías de la API">API Guides</a>
+          </li>
+          <li class="dac-nav-item reference">
+            <a class="dac-nav-link" href="../../../../../reference/packages.html"
+               zh-tw-lang="參考資源"
+               zh-cn-lang="参考"
+               ru-lang="Справочник"
+               ko-lang="참조문서"
+               ja-lang="リファレンス"
+               es-lang="Referencia">Reference</a>
+          </li>
+          <li class="dac-nav-item tools">
+            <a class="dac-nav-link" href="../../../../../sdk/index.html"
+               zh-tw-lang="相關工具"
+               zh-cn-lang="工具"
+               ru-lang="Инструменты"
+               ko-lang="도구"
+               ja-lang="ツール"
+               es-lang="Herramientas">Tools</a></li>
+          <li class="dac-nav-item google">
+            <a class="dac-nav-link" href="../../../../../google/index.html">Google Services</a>
+          </li>
+          
+          <li class="dac-nav-item preview">
+            <a class="dac-nav-link" href="../../../../../preview/index.html">Preview</a>
+          </li>
+        </ul>
+      </li>
+      <li class="dac-nav-item distribute">
+        <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html"
+           zh-tw-lang="發佈"
+           zh-cn-lang="分发"
+           ru-lang="Распространение"
+           ko-lang="배포"
+           ja-lang="配布"
+           es-lang="Distribuir">Distribute</a>
+        <ul class="dac-nav-secondary distribute">
+          <li class="dac-nav-item googleplay">
+            <a class="dac-nav-link" href="../../../../../distribute/googleplay/index.html">Google Play</a></li>
+          <li class="dac-nav-item essentials">
+            <a class="dac-nav-link" href="../../../../../distribute/essentials/index.html">Essentials</a></li>
+          <li class="dac-nav-item users">
+            <a class="dac-nav-link" href="../../../../../distribute/users/index.html">Get Users</a></li>
+          <li class="dac-nav-item engage">
+            <a class="dac-nav-link" href="../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
+          <li class="dac-nav-item monetize">
+            <a class="dac-nav-link" href="../../../../../distribute/monetize/index.html">Earn</a>
+          </li>
+          <li class="dac-nav-item analyze">
+            <a class="dac-nav-link" href="../../../../../distribute/analyze/index.html">Analyze</a>
+          </li>
+          <li class="dac-nav-item stories">
+            <a class="dac-nav-link" href="../../../../../distribute/stories/index.html">Stories</a>
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </nav>
+  <!-- end navigation-->
+  
+
+
+
+
+
+  <div class="wrap clearfix" id="body-content"><div class="cols">
+    <div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
+      <div id="devdoc-nav">
+      <div id="api-nav-header">
+        <div id="api-level-toggle">
+          <label for="apiLevelCheckbox" class="disabled"
+            title="Select your target API level to dim unavailable APIs">API level: </label>
+          <div class="select-wrapper">
+            <select id="apiLevelSelector">
+              <!-- option elements added by buildApiLevelSelector() -->
+            </select>
+          </div>
+        </div><!-- end toggle -->
+        <div id="api-nav-title">Android APIs</div>
+        </div><!-- end nav header -->
+      <script>
+        var SINCE_DATA = [  ];
+        buildApiLevelSelector();
+      </script>
+
+      <div id="swapper">
+        <div id="nav-panels">
+          <div id="resize-packages-nav">
+            <div id="packages-nav" class="scroll-pane">
+
+              <ul>
+                
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/activity/package-summary.html">android.support.wearable.activity</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/companion/package-summary.html">android.support.wearable.companion</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/input/package-summary.html">android.support.wearable.input</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/media/package-summary.html">android.support.wearable.media</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/provider/package-summary.html">android.support.wearable.provider</a></li>
+    <li class="api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/view/package-summary.html">android.support.wearable.view</a></li>
+    <li class="selected api apilevel-">
+  <a href="../../../../../reference/android/support/wearable/watchface/package-summary.html">android.support.wearable.watchface</a></li>
+              </ul><br/>
+
+            </div> <!-- end packages-nav -->
+          </div> <!-- end resize-packages -->
+          <div id="classes-nav" class="scroll-pane">
+
+
+
+            <ul>
+              
+    <li><h2>Annotations</h2>
+      <ul>
+          <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.TapType.html">WatchFaceService.TapType</a></li>
+      </ul>
+    </li>
+              
+              
+    <li><h2>Classes</h2>
+      <ul>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.html">CanvasWatchFaceService</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html">CanvasWatchFaceService.Engine</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/Gles2WatchFaceService.html">Gles2WatchFaceService</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html">Gles2WatchFaceService.Engine</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html">WatchFaceService</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html">WatchFaceService.Engine</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceStyle.html">WatchFaceStyle</a></li>
+          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html">WatchFaceStyle.Builder</a></li>
+      </ul>
+    </li>
+              
+              
+              
+            </ul><br/>
+
+
+          </div><!-- end classes -->
+        </div><!-- end nav-panels -->
+        <div id="nav-tree" style="display:none" class="scroll-pane">
+          <div id="tree-list"></div>
+        </div><!-- end nav-tree -->
+      </div><!-- end swapper -->
+      <div id="nav-swap">
+      <a class="fullscreen">fullscreen</a>
+      <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
+      </div>
+    </div> <!-- end devdoc-nav -->
+    </div> <!-- end side-nav -->
+    <script type="text/javascript">
+      // init fullscreen based on user pref
+      var fullscreen = readCookie("fullscreen");
+      if (fullscreen != 0) {
+        if (fullscreen == "false") {
+          toggleFullscreen(false);
+        } else {
+          toggleFullscreen(true);
+        }
+      }
+      // init nav version for mobile
+      if (isMobile) {
+        swapNav(); // tree view should be used on mobile
+        $('#nav-swap').hide();
+      } else {
+        chooseDefaultNav();
+        if ($("#nav-tree").is(':visible')) {
+          init_default_navtree("../../../../../");
+        }
+      }
+      // scroll the selected page into view
+      $(document).ready(function() {
+        scrollIntoView("packages-nav");
+        scrollIntoView("classes-nav");
+        });
+    </script>
+
+     
+
+
+
+<div class="col-12"  id="doc-col">
+
+<div id="api-info-block">
+
+
+
+  
+   
+  
+  
+  
+  
+
+
+<div class="sum-details-links">
+
+Summary:
+
+
+
+
+
+
+
+
+
+
+
+
+
+  <a href="#inhmethods">Inherited Methods</a>
+
+&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
+
+</div><!-- end sum-details-links -->
+<div class="api-level">
+  
+  
+  
+
+</div>
+</div><!-- end api-info-block -->
+
+
+<!-- ======== START OF CLASS DATA ======== -->
+
+<div id="jd-header">
+    public
+    static 
+     
+    abstract
+    @interface
+<h1 itemprop="name">WatchFaceService.TapType</h1>
+
+
+
+  
+  
+      implements 
+      
+        Annotation 
+      
+  
+  
+
+
+    
+
+
+</div><!-- end header -->
+
+<div id="naMessage"></div>
+
+<div id="jd-content" class="api apilevel-">
+<table class="jd-inheritance-table">
+
+
+    <tr>
+         	
+        <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.watchface.WatchFaceService.TapType</td>
+    </tr>
+    
+
+</table>
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+
+
+
+
+</div><!-- jd-descr -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div class="jd-descr">
+
+
+<h2>Summary</h2>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!-- ========== METHOD SUMMARY =========== -->
+<table id="inhmethods" class="jd-sumtable"><tr><th>
+  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
+  <div style="clear:left;">Inherited Methods</div></th></tr>
+
+
+<tr class="api apilevel-" >
+<td colspan="12">
+  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
+          ><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
+          src="../../../../../assets/images/styles/disclosure_down.png"
+          class="jd-expando-trigger-img" /></a>
+From interface
+
+  java.lang.annotation.Annotation
+
+<div id="inherited-methods-java.lang.annotation.Annotation">
+  <div id="inherited-methods-java.lang.annotation.Annotation-list"
+        class="jd-inheritedlinks">
+  </div>
+  <div id="inherited-methods-java.lang.annotation.Annotation-summary" style="display: none;">
+    <table class="jd-sumtable-expando">
+    
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            Class&lt;?&nbsp;extends&nbsp;Annotation&gt;</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">annotationType</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            boolean</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">equals</span>(Object arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">hashCode</span>()</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">toString</span>()</nobr>
+        
+  </td></tr>
+
+
+</table>
+  </div>
+</div>
+</td></tr>
+
+
+</table>
+
+
+</div><!-- jd-descr (summary) -->
+
+<!-- Details -->
+
+
+
+
+
+
+
+
+<!-- XML Attributes -->
+
+
+<!-- Enum Values -->
+
+
+<!-- Constants -->
+
+
+<!-- Fields -->
+
+
+<!-- Public ctors -->
+
+
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<!-- Protected ctors -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+<!-- Public methdos -->
+
+
+
+<!-- ========= METHOD DETAIL ======== -->
+
+
+
+<!-- ========= END OF CLASS DATA ========= -->
+<A NAME="navbar_top"></A>
+</div> <!-- jd-content -->
+
+<div class="wrap">
+  <div class="dac-footer">
+    <div class="cols dac-footer-main">
+      <div class="col-1of2">
+        <a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
+          class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
+      </div>
+      <div class="col-1of2 dac-footer-reachout">
+        <div class="dac-footer-contact">
+          <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
+          <a class="dac-footer-contact-link" href="/support.html">Support</a>
+        </div>
+        <div class="dac-footer-social">
+          <a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
+          <a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
+        </div>
+      </div>
+    </div>
+
+    <hr class="dac-footer-separator"/>
+
+    
+      <p class="dac-footer-copyright">
+        
+  Except as noted, this content is licensed under <a
+  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
+  For details and restrictions, see the <a href="../../../../../license.html">
+  Content License</a>.
+      </p>
+      <p class="dac-footer-build">
+        
+    Android Wearable Support&nbsp;r &mdash; 
+<script src="../../../../../timestamp.js" type="text/javascript"></script>
+<script>document.write(BUILD_TIMESTAMP)</script>
+
+      </p>
+    
+
+    <p class="dac-footer-links">
+      <a href="/about/index.html">About Android</a>
+      <a href="/auto/index.html">Auto</a>
+      <a href="/tv/index.html">TV</a>
+      <a href="/wear/index.html">Wear</a>
+      <a href="/legal.html">Legal</a>
+
+      <span id="language" class="locales">
+        <select name="language" onchange="changeLangPref(this.value, true)">
+          <option value="en" selected="selected">English</option>
+          <option value="es">Español</option>
+          <option value="ja">日本語</option>
+          <option value="ko">한국어</option>
+          <option value="pt-br">Português Brasileiro</option>
+          <option value="ru">Русский</option>
+          <option value="zh-cn">中文（简体)</option>
+          <option value="zh-tw">中文（繁體)</option>
+        </select>
+      </span>
+    </p>
+  </div>
+</div> <!-- end footer -->
+
+<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button>
+        <div class="dac-swap" data-swap-container>
+          <section class="dac-swap-section dac-active dac-down">
+            <h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2>
+            <p class="dac-modal-header-subtitle">&#42; Required Fields</p>
+          </section>
+          <section class="dac-swap-section dac-up">
+            <h2 class="norule dac-modal-header-title">Hooray!</h2>
+          </section>
+        </div>
+      </header>
+      <div class="dac-swap" data-swap-container>
+        <section class="dac-swap-section dac-active dac-left">
+          <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
+            <section class="dac-modal-content">
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label>
+                      <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-email" class="dac-form-floatlabel">Email address</label>
+                      <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol">
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label>
+                      <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
+                    </div>
+                    <div class="dac-form-input-group">
+                      <label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label>
+                      <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
+                      <span class="dac-form-required">*</span>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+              <fieldset class="dac-form-fieldset">
+                <div class="cols">
+                  <div class="col-1of2 newsletter-leftCol">
+                    <legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span>
+                    </legend>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
+                      <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-app" class="dac-form-label">Apps</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
+                      <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-games" class="dac-form-label">Games</label>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
+                      <label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label>
+                    </div>
+                  </div>
+                  <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.732309842" id="newsletter-add" required value="Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.">
+                          <label for="newsletter-add" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="dac-form-radio-group">
+                      <div class="dac-media">
+                        <div class="dac-media-figure">
+                          <input type="checkbox" class="dac-form-checkbox" name="entry.2045036090" id="newsletter-terms" required value="I acknowledge that the information provided in this form will be subject to Google's privacy policy (https://www.google.com/policies/privacy/).">
+                          <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
+                        </div>
+                        <div class="dac-media-body">
+                          <label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </fieldset>
+            </section>
+            <footer class="dac-modal-footer">
+              <div class="cols">
+                <div class="col-2of5">
+                </div>
+              </div>
+              <button type="submit" value="Submit" class="dac-fab dac-primary dac-large dac-modal-action"><i class="dac-sprite dac-arrow-right"></i></button>
+            </footer>
+          </form>
+        </section>
+        <section class="dac-swap-section dac-right">
+          <div class="dac-modal-content">
+            <p class="newsletter-success-message">
+              You have successfully signed up for the latest Android developer news and tips.
+            </p>
+          </div>
+        </section>
+      </div>
+    </div>
+  </div>
+</div> <!-- end footer -->
+
+</div><!-- end doc-content -->
+
+</div> <!-- end .cols --> 
+</div> <!-- end body-content --> 
+
+
+
+
+
+
+</body>
+</html>
diff --git a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.html b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.html
index 40cf0a3..ef29440 100644
--- a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.html
+++ b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -768,7 +773,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
           ><img id="subclasses-direct-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>Known Direct Subclasses
 
   <div id="subclasses-direct">
@@ -844,10 +849,9 @@
  sleep until the watch face finishes drawing.
 
  <p>Registering watch faces in your application works similarly to registering wallpapers with
- several additional steps. First, watch faces require two permissions:
+ several additional steps. First, watch faces require the wake lock permission:
 
  <pre class="prettyprint">
- &lt;uses-permission android:name="com.google.android.permission.PROVIDE_BACKGROUND" /&gt;
  &lt;uses-permission android:name="android.permission.WAKE_LOCK" /&gt;
  </pre>
 
@@ -964,7 +968,7 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALARMS">INTERRUPTION_FILTER_ALARMS</a></td>
         <td class="jd-descrcol" width="100%">
           Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
  <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
@@ -977,7 +981,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
-        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></td>
         <td class="jd-descrcol" width="100%">
           Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
  <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
@@ -990,6 +994,19 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></td>
+        <td class="jd-descrcol" width="100%">
+          Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
+ <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">int</td>
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_PRIORITY">INTERRUPTION_FILTER_PRIORITY</a></td>
         <td class="jd-descrcol" width="100%">
           Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
@@ -1001,6 +1018,19 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">int</td>
+        <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_UNKNOWN">INTERRUPTION_FILTER_UNKNOWN</a></td>
+        <td class="jd-descrcol" width="100%">
+          Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
+ <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>.
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html#PROPERTY_BURN_IN_PROTECTION">PROPERTY_BURN_IN_PROTECTION</a></td>
@@ -1083,7 +1113,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.service.wallpaper.WallpaperService-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.service.wallpaper.WallpaperService
 <div id="inherited-constants-android.service.wallpaper.WallpaperService">
@@ -1131,7 +1161,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Service" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.app.Service-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.app.Service
 <div id="inherited-constants-android.app.Service">
@@ -1241,7 +1271,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.Context" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.Context-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 android.content.Context
 <div id="inherited-constants-android.content.Context">
@@ -1483,7 +1513,7 @@
     
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
-        <td class="jd-linkcol">CLIPBOARD_SERVICE</td>
+        <td class="jd-linkcol">CARRIER_CONFIG_SERVICE</td>
         <td class="jd-descrcol" width="100%">
           
           
@@ -1495,6 +1525,18 @@
     
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">CLIPBOARD_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
         <td class="jd-linkcol">CONNECTIVITY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
           
@@ -1505,7 +1547,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">CONSUMER_IR_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1517,7 +1559,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_IGNORE_SECURITY</td>
         <td class="jd-descrcol" width="100%">
@@ -1529,7 +1571,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_INCLUDE_CODE</td>
         <td class="jd-descrcol" width="100%">
@@ -1541,7 +1583,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">CONTEXT_RESTRICTED</td>
         <td class="jd-descrcol" width="100%">
@@ -1553,7 +1595,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DEVICE_POLICY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1565,7 +1607,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DISPLAY_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1577,7 +1619,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DOWNLOAD_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1589,7 +1631,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">DROPBOX_SERVICE</td>
         <td class="jd-descrcol" width="100%">
@@ -1601,6 +1643,18 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">FINGERPRINT_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">INPUT_METHOD_SERVICE</td>
@@ -1722,6 +1776,18 @@
     
     
     <tr class=" api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">MIDI_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_APPEND</td>
         <td class="jd-descrcol" width="100%">
@@ -1733,7 +1799,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_ENABLE_WRITE_AHEAD_LOGGING</td>
         <td class="jd-descrcol" width="100%">
@@ -1745,7 +1811,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_MULTI_PROCESS</td>
         <td class="jd-descrcol" width="100%">
@@ -1757,7 +1823,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_PRIVATE</td>
         <td class="jd-descrcol" width="100%">
@@ -1769,7 +1835,7 @@
     </tr>
     
     
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_WORLD_READABLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1781,7 +1847,7 @@
     </tr>
     
     
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol">int</td>
         <td class="jd-linkcol">MODE_WORLD_WRITEABLE</td>
         <td class="jd-descrcol" width="100%">
@@ -1793,6 +1859,18 @@
     </tr>
     
     
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol">String</td>
+        <td class="jd-linkcol">NETWORK_STATS_SERVICE</td>
+        <td class="jd-descrcol" width="100%">
+          
+          
+    
+
+        </td>
+    </tr>
+    
+    
     <tr class=" api apilevel-" >
         <td class="jd-typecol">String</td>
         <td class="jd-linkcol">NFC_SERVICE</td>
@@ -2083,7 +2161,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From interface
 android.content.ComponentCallbacks2
 <div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -2266,7 +2344,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.service.wallpaper.WallpaperService-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2372,7 +2450,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Service" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.app.Service-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2686,7 +2764,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ContextWrapper" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ContextWrapper-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -2824,7 +2902,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
+        <span class="sympad">checkSelfPermission</span>(String arg0)</nobr>
         
   </td></tr>
 
@@ -2840,7 +2918,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
         
   </td></tr>
 
@@ -2853,6 +2931,22 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -2862,7 +2956,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2878,7 +2972,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2894,7 +2988,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2910,7 +3004,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2926,7 +3020,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2942,7 +3036,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2958,7 +3052,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2974,7 +3068,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -2990,7 +3084,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3006,7 +3100,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3022,7 +3116,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3038,7 +3132,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3054,7 +3148,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3070,7 +3164,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3086,7 +3180,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3102,7 +3196,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3118,7 +3212,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3134,7 +3228,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3150,7 +3244,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3166,7 +3260,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3182,7 +3276,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3198,7 +3292,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3214,7 +3308,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3230,7 +3324,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3246,7 +3340,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3262,7 +3356,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3278,7 +3372,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3294,7 +3388,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3310,7 +3404,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3326,7 +3420,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3342,7 +3436,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3358,7 +3452,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3374,7 +3468,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3390,7 +3484,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3406,7 +3500,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3422,7 +3516,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3438,7 +3532,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3454,7 +3548,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3470,7 +3564,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3486,7 +3580,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3502,7 +3596,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3518,7 +3612,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -3534,6 +3628,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemServiceName</span>(Class&lt;?&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
@@ -4200,7 +4310,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.Context" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.Context-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -4322,7 +4432,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
+        <span class="sympad">checkSelfPermission</span>(String arg0)</nobr>
         
   </td></tr>
 
@@ -4338,7 +4448,7 @@
             int</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, int arg1, int arg2, int arg3)</nobr>
         
   </td></tr>
 
@@ -4351,6 +4461,22 @@
             
             
             
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">checkUriPermission</span>(Uri arg0, String arg1, String arg2, int arg3, int arg4, int arg5)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
             void</nobr>
         </td>
         <td class="jd-linkcol" width="100%"><nobr>
@@ -4360,7 +4486,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4376,7 +4502,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4392,7 +4518,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4408,7 +4534,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4424,7 +4550,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4440,7 +4566,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4456,7 +4582,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4472,7 +4598,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4488,7 +4614,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4504,7 +4630,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4520,7 +4646,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4536,7 +4662,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4552,7 +4678,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4568,7 +4694,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4584,7 +4710,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4600,7 +4726,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4616,7 +4742,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4632,7 +4758,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4648,7 +4774,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4664,7 +4790,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4680,8 +4806,40 @@
 
 
 	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            int</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getColor</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            
+            ColorStateList</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getColorStateList</span>(int arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
             abstract
             
             
@@ -4696,7 +4854,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4712,7 +4870,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4728,7 +4886,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -4744,7 +4902,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4760,7 +4918,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4776,7 +4934,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4792,7 +4950,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4808,7 +4966,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4824,7 +4982,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4840,7 +4998,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4856,7 +5014,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4872,7 +5030,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4888,7 +5046,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4904,7 +5062,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4920,7 +5078,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4936,7 +5094,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4952,7 +5110,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4968,7 +5126,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -4984,7 +5142,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5000,7 +5158,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5016,7 +5174,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5032,7 +5190,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5048,6 +5206,22 @@
 
 
 	 
+    <tr class=" api apilevel-" >
+        <td class="jd-typecol"><nobr>
+            
+            
+            final
+            
+            &lt;T&gt;
+            T</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemService</span>(Class&lt;T&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
     <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
@@ -5066,6 +5240,22 @@
 	 
     <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
+            abstract
+            
+            
+            
+            
+            String</nobr>
+        </td>
+        <td class="jd-linkcol" width="100%"><nobr>
+        <span class="sympad">getSystemServiceName</span>(Class&lt;?&gt; arg0)</nobr>
+        
+  </td></tr>
+
+
+	 
+    <tr class="alt-color api apilevel-" >
+        <td class="jd-typecol"><nobr>
             
             
             final
@@ -5080,7 +5270,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5096,7 +5286,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5112,7 +5302,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5128,7 +5318,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5144,7 +5334,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5160,7 +5350,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5176,7 +5366,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5192,7 +5382,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5208,7 +5398,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5224,7 +5414,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5240,7 +5430,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5256,7 +5446,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5272,7 +5462,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5288,7 +5478,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5304,7 +5494,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5320,7 +5510,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5336,7 +5526,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5352,7 +5542,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5368,7 +5558,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5384,7 +5574,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5400,7 +5590,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5416,7 +5606,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5432,7 +5622,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5448,7 +5638,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5464,7 +5654,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5480,7 +5670,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5496,7 +5686,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5512,7 +5702,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5528,7 +5718,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5544,7 +5734,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5560,7 +5750,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5576,7 +5766,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5592,7 +5782,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5608,7 +5798,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5624,7 +5814,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5640,7 +5830,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5656,7 +5846,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5672,7 +5862,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5688,7 +5878,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5704,7 +5894,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5720,7 +5910,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5736,7 +5926,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5752,7 +5942,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5768,7 +5958,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5784,7 +5974,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5800,7 +5990,7 @@
 
 
 	 
-    <tr class=" api apilevel-" >
+    <tr class="alt-color api apilevel-" >
         <td class="jd-typecol"><nobr>
             
             
@@ -5816,7 +6006,7 @@
 
 
 	 
-    <tr class="alt-color api apilevel-" >
+    <tr class=" api apilevel-" >
         <td class="jd-typecol"><nobr>
             abstract
             
@@ -5842,7 +6032,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -6044,7 +6234,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -6086,7 +6276,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
@@ -6168,6 +6358,50 @@
 
 
 
+<A NAME="INTERRUPTION_FILTER_ALARMS"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+        final 
+        int
+      </span>
+        INTERRUPTION_FILTER_ALARMS
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
+ <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>. This value means that the user requested to
+ only be interrupted by alarms.
+</p></div>
+
+    
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+            
+                4
+                (0x00000004)
+            
+        </span>
+        </div>
+    
+    </div>
+</div>
+
+
+
 <A NAME="INTERRUPTION_FILTER_ALL"></A>
 
 <div class="jd-details api apilevel-"> 
@@ -6300,6 +6534,50 @@
 
 
 
+<A NAME="INTERRUPTION_FILTER_UNKNOWN"></A>
+
+<div class="jd-details api apilevel-"> 
+    <h4 class="jd-details-title">
+      <span class="normal">
+        public 
+        static 
+        final 
+        int
+      </span>
+        INTERRUPTION_FILTER_UNKNOWN
+    </h4>
+      <div class="api-level">
+        
+        
+  
+
+      </div>
+    <div class="jd-details-descr">
+      
+    
+
+      
+  <div class="jd-tagdata jd-tagdescr"><p>Returned by <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter()</a></code> and passed to
+ <code><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged(int)</a></code>. This value means the interruption filter is
+ unavailable.
+</p></div>
+
+    
+        <div class="jd-tagdata">
+        <span class="jd-tagtitle">Constant Value: </span>
+        <span>
+            
+                0
+                (0x00000000)
+            
+        </span>
+        </div>
+    
+    </div>
+</div>
+
+
+
 <A NAME="PROPERTY_BURN_IN_PROTECTION"></A>
 
 <div class="jd-details api apilevel-"> 
diff --git a/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html b/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html
index a5401e5..11aac1e 100644
--- a/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html
+++ b/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -1029,7 +1034,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.html b/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.html
index 70c3851..606ed35 100644
--- a/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.html
+++ b/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
@@ -901,7 +906,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.os.Parcelable" class="jd-expando-trigger closed"
           ><img id="inherited-constants-android.os.Parcelable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From interface
 android.os.Parcelable
 <div id="inherited-constants-android.os.Parcelable">
@@ -1341,7 +1346,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1543,7 +1548,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.os.Parcelable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-android.os.Parcelable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/reference/android/support/wearable/watchface/package-summary.html b/docs/html/reference/android/support/wearable/watchface/package-summary.html
index a654b13..fab3583 100644
--- a/docs/html/reference/android/support/wearable/watchface/package-summary.html
+++ b/docs/html/reference/android/support/wearable/watchface/package-summary.html
@@ -95,6 +95,11 @@
 
 
 
+
+
+
+
+
 <html>
 <head>
 
diff --git a/docs/html/samples/_book.yaml b/docs/html/samples/_book.yaml
new file mode 100644
index 0000000..3fe0d19
--- /dev/null
+++ b/docs/html/samples/_book.yaml
@@ -0,0 +1,6 @@
+toc:
+- title: About the Samples
+  path: /samples/index.html
+
+- title: What's New
+  path: /samples/new/index.html
diff --git a/docs/html/samples/new/index.jd b/docs/html/samples/new/index.jd
index 80765c7..a7ffa8c 100644
--- a/docs/html/samples/new/index.jd
+++ b/docs/html/samples/new/index.jd
@@ -4,8 +4,8 @@
 @jd:body
 
 <p>The following code samples were recently published. You can
-download them in the Android SDK Manager under the <b>SDK Samples</b> component
-for API 21.</p>
+download them in the Android SDK Manager under the <b>Samples for SDK</b>
+component for Android 6.0 (API 23).</p>
 
 <p class="note">
   <strong>Note:</strong> The downloadable projects are designed
@@ -14,342 +14,115 @@
 
 <!-- NOTE TO EDITORS: add most recent samples first -->
 
-<h3 id="MediaBrowserService"><a href="/samples/MediaBrowserService/index.html">Media Browser Service</a></h3>
+<h3 id="ActiveNotification">
+  <a href="{@docRoot}samples/ActiveNotifications/index.html">Active
+  Notification</a>
+</h3>
 
 <p>
-This sample is a simple audio media app that exposes its media
-library and provides metadata and playback controls through the new
-MediaBrowserService and MediaSession APIs from API 21.
-The sample is compatible with Android Auto and also provides a basic UI
-when not connected to a car.
+  This sample demonstrates how to use the {@link
+  android.app.NotificationManager} to tell you how many notifications your app
+  is currently showing.
 </p>
 
-<p class="note">
-  <strong>Note:</strong> This sample is compatible with <a
-  href="http://android.com/auto">Android Auto</a>.
-</p>
-
-
-<h3 id="MessagingService"><a href="/samples/MessagingService/index.html">Messaging Service</a></h3>
+<h3 id="AutomaticBackup">
+  <a href="{@docRoot}samples/AutoBackupForApps/index.html">Auto Backup for
+  Apps</a>
+</h3>
 
 <p>
-This sample shows a simple service that sends notifications using
-NotificationCompat. In addition to sending a notification, it also extends
-the notification with a CarExtender to make it compatible with Android Auto.
-Each unread conversation from a user is sent as a distinct notification.
+  Android 6.0 (API level 23) introduces automatic backup for app settings. This
+  sample demonstrates how to add filtering rules to an app to manage settings
+  backup.
 </p>
 
-<p class="note">
-  <strong>Note:</strong> This sample is compatible with <a
-  href="http://android.com/auto">Android Auto</a>.
+<h3 id="Camera2Raw">
+  <a href="{@docRoot}samples/Camera2Raw/index.html">Camera 2 Raw</a>
+</h3>
+
+<p>
+  This sample demonstrates how to use the
+  <a href="{@docRoot}reference/android/hardware/camera2/package-summary.html">
+  <code>Camera2</code></a> API to capture RAW camera buffers and save them as
+  DNG files.
 </p>
 
-
-<h3 id="SpeedTracker"><a href="/samples/SpeedTracker/index.html">Speed Tracker (Wear)</a></h3>
+<h3 id="ConfirmCredential">
+  <a href="{@docRoot}samples/ConfirmCredential/index.html">Confirm
+  Credential</a>
+</h3>
 
 <p>
-This sample uses the FusedLocation APIs of Google Play Services on Android Wear 
-devices that have a hardware GPS built in. In those cases, this sample provides
-a simple screen that shows the current speed of the wearable device. User can
-set a speed limit and if the speed approaches that limit, it changes the color
-to yellow and if it exceeds the limit, it turns red. User can also enable
-recording of coordinates and when it pairs back with the phone, this data
-is synced with the phone component of the app and user can see a track
-made of those coordinates on a map on the phone.
+ This sample demonstrates how to use device credentials as an authentication method in your app.
 </p>
 
-
-<h3 id="AppRestrictionSchema"><a href="/samples/AppRestrictionSchema/index.html">AppRestrictionSchema</a></h3>
+<h3 id="DeviceOwner">
+  <a href="{@docRoot}samples/DeviceOwner/index.html">Device Owner</a>
+</h3>
 
 <p>
-This sample shows how to use app restrictions. This application has one boolean
-restriction with a key "can_say_hello" that defines whether the only feature of this
-app (press the button to show "Hello" message) is enabled or disabled. Use
-AppRestrictionEnforcer sample to toggle the restriction.
+  This sample demonstrates how to use the device owner features to manage and
+  configure a device.
 </p>
 
-
-<h3 id="AppRestrictionEnforcer"><a href="/samples/AppRestrictionEnforcer/index.html">AppRestrictionEnforcer</a></h3>
+<h3 id="DirectShare">
+  <a href="{@docRoot}samples/DirectShare/index.html">Direct Share</a>
+</h3>
 
 <p>
-This sample demonstrates how to set restrictions to other apps as a profile owner.
-Use AppRestrictionSchema sample as a app with available restrictions.
+  This sample demonstrates how to provide the
+  <a href="{@docRoot}about/versions/marshmallow/android-6.0.html#direct-share">Direct
+  Share</a> feature. The app shows some options directly in the list of share
+  intent candidates.
 </p>
 
-
-<h3 id="DocumentCentricRelinquishIdentity"><a href="/samples/DocumentCentricRelinquishIdentity/index.html">DocumentCentricRelinquishIdentity</a></h3>
+<h3 id="FingerprintDialog">
+  <a href="{@docRoot}samples/FingerprintDialog/index.html">Fingerprint
+  Dialog</a>
+</h3>
 
 <p>
-This sample shows how to relinquish identity to activities above it in the task stack.
+  This sample demonstrates how to recognize registered fingerprints to
+  authenticate your app's user.
 </p>
 
-
-<h3 id="DocumentCentricApps"><a href="/samples/DocumentCentricApps/index.html">DocumentCentricApps</a></h3>
+<h3 id="MidiScope">
+  <a href="{@docRoot}samples/MidiScope/index.html">MidiScope</a>
+</h3>
 
 <p>
-This sample shows the basic usage of the new "Document Centric Apps" API.
-It let's you create new documents in the system overview menu and persists its
-state through reboots. If "Task per document" is checked a new task will be
-created for every new document in the overview menu.
+  This sample demonstrates how to use the <a href=
+  "{@docRoot}reference/android/media/midi/package-summary.html">MIDI API</a> to
+  receive and process MIDI signals coming from an attached input device.
 </p>
 
-
-<h3 id="HdrViewfinder"><a href="/samples/HdrViewfinder/index.html">HdrViewfinder</a></h3>
+<h3 id="MidiSynth">
+  <a href="{@docRoot}samples/MidiSynth/index.html">MidiSynth</a>
+</h3>
 
 <p>
-This demo implements a real-time high-dynamic-range camera viewfinder, by alternating
-the sensor's exposure time between two exposure values on even and odd frames, and then
-compositing together the latest two frames whenever a new frame is captured.
+  This sample demonstrates how to use the <a href=
+  "{@docRoot}reference/android/media/midi/package-summary.html">MIDI API</a> to
+  receive and play MIDI messages coming from an attached input device.
 </p>
 
-
-<h3 id="Interpolator"><a href="/samples/Interpolator/index.html">Interpolator</a></h3>
+<h3 id="NfcProvisioning">
+  <a href="{@docRoot}samples/NfcProvisioning/index.html">NFC Provisioning</a>
+</h3>
 
 <p>
-This sample demonstrates the use of animation interpolators and path animations for
-Material Design. It shows how an ObjectAnimator is used to animate two properties of a
-view (scale X and Y) along a path.
+  This sample demonstrates how to use NFC to provision other devices with a
+  specific device owner.
 </p>
 
-
-<h3 id="DrawableTinting"><a href="/samples/DrawableTinting/index.html">DrawableTinting</a></h3>
-
-<p>Sample that shows applying tinting and color filters to Drawables both programmatically
-and as Drawable resources in XML.</p>
-<p>Tinting is set on a nine-patch drawable through the "tint" and "tintMode" parameters.
-A color state list is referenced as the tint color, which defines colors for different
-states of a View (for example disabled/enabled, focused, pressed or selected).</p>
-<p>Programmatically, tinting is applied to a Drawable through its "setColorFilter" method,
-with a reference to a color and a PorterDuff blend mode. The color and blend mode can be
-changed from the UI to see the effect of different options.</p>
-
-
-<h3 id="LNotifications"><a href="/samples/LNotifications/index.html">LNotifications</a></h3>
+<h3 id="RuntimePermissions">
+  <a href=
+  "{@docRoot}samples/RuntimePermissions/index.html">RuntimePermissions</a>
+</h3>
 
 <p>
-This sample demonstrates how new features for notifications introduced in Android 5.0
-are used such as Heads-Up notifications, visibility, people, category and priority
-metadata. </p>
-
-
-<h3 id="CardView"><a href="/samples/CardView/index.html">CardView</a></h3>
-
-<p>
-This sample demonstrates how to use the CardView UI widget introduced in Android 5.0, using the support library for backward compatibility.
+  This sample shows runtime permissions available in Android 6.0 (API level 23)
+  and higher. Display the log on screen to follow the execution. If executed on
+  an Android 6.0 device, the app displays an additional option to access
+  contacts using an 6.0-only optional permission.
 </p>
-
-
-<h3 id="RecyclerView"><a href="/samples/RecyclerView/index.html">RecyclerView</a></h3>
-
-<p>
-Demonstration of using RecyclerView with a LayoutManager to create a vertical ListView.
-</p>
-
-
-<h3 id="RevealEffectBasic"><a href="/samples/RevealEffectBasic/index.html">RevealEffectBasic</a></h3>
-
-<p>
-A sample demonstrating how to perform a reveal effect for UI elements within the Material Design framework.
-</p>
-
-
-<h3 id="FloatingActionButtonBasic"><a href="/samples/FloatingActionButtonBasic/index.html">FloatingActionButtonBasic</a></h3>
-
-<p>
-This sample shows the two sizes of Floating Action Buttons and how to interact with
-them.
-</p>
-
-
-<!--
-<h3 id="">SampleName</h3>
-
-<div class="figure" style="width:220px">
-  <img src="" srcset="@2x.png 2x" alt="" height="375" />
-  <p class="img-caption">
-    <strong>Figure n.</strong> Single sentence summarizing the figure.
-  </p>
-</div>
-
-<p>
-**description**
-</p>
--->
-
-<h3 id="JobSchedulerSample"><a href="/samples/JobScheduler/index.html">JobScheduler</a></h3>
-
-<p>
-This sample app allows the user to schedule jobs through the UI, and shows
-visual cues when the jobs are executed.
-</p>
-
-
-<h3 id="AndroidTVLeanbackSample"><a href="https://github.com/googlesamples/androidtv-leanback">AndroidTVLeanbackSample</a></h3>
-<!--
-<div class="figure" style="width:220px">
-  <img src="" srcset="@2x.png 2x" alt="" height="375" />
-  <p class="img-caption">
-    <strong>Figure n.</strong> Single sentence summarizing the figure.
-  </p>
-</div>
--->
-
-<p>
-This sample demonstrates use of the Android TV Leanback Support Library.
-</p>
-
-<h3 id="Visual-Game-Controller"><a href="https://github.com/googlesamples/androidtv-VisualGameController">Visual-Game-Controller</a></h3>
-<!--
-<div class="figure" style="width:220px">
-  <img src="" srcset="@2x.png 2x" alt="" height="375" />
-  <p class="img-caption">
-    <strong>Figure n.</strong> Single sentence summarizing the figure.
-  </p>
-</div>
--->
-
-<p>
-This sample displays events received from a game controller shown on the screen.
-</p>
-
-
-<h3 id="GameControllerSample"><a href="https://github.com/googlesamples/androidtv-GameController/">GameControllerSample</a></h3>
-<!--
-<div class="figure" style="width:220px">
-  <img src="" srcset="@2x.png 2x" alt="" height="375" />
-  <p class="img-caption">
-    <strong>Figure n.</strong> Single sentence summarizing the figure.
-  </p>
-</div>
--->
-
-<p>
-This sample implements a multi-player game, demonstrating game controller input
-handling.
-</p>
-
-
-<h3 id="ClippingBasic"><a href="/samples/ClippingBasic/index.html">ClippingBasic</a></h3>
-<!--
-<div class="figure" style="width:220px">
-  <img src="" srcset="@2x.png 2x" alt="" height="375" />
-  <p class="img-caption">
-    <strong>Figure n.</strong> Single sentence summarizing the figure.
-  </p>
-</div>
--->
-
-<p>
-This sample demonstrates clipping on a {@link android.view.View}.
-</p>
-
-<div class="figure" style="width:220px">
-  <img src="{@docRoot}samples/images/JobSchedulerSample.png"
-      srcset="{@docRoot}samples/images/JobSchedulerSample@2x.png 2x"
-      alt="" height="375" />
-  <p class="img-caption">
-    <strong>Figure 1.</strong> The JobSchedulerSample sample app.
-  </p>
-</div>
-
-
-<h3 id="ElevationDrag"><a href="/samples/ElevationDrag/index.html">ElevationDrag</a></h3>
-<!--
-<div class="figure" style="width:220px">
-  <img src="" srcset="@2x.png 2x" alt="" height="375" />
-  <p class="img-caption">
-    <strong>Figure n.</strong> Single sentence summarizing the figure.
-  </p>
-</div>
--->
-
-<p>This sample demonstrates a drag and drop action on different shapes.
-Elevation and z-translation are used to render the shadows. The views are
-clipped using different outlines.</p>
-
-
-<h3 id="ElevationBasic"><a href="/samples/ElevationBasic/index.html">ElevationBasic</a></h3>
-<!--
-<div class="figure" style="width:220px">
-<img src="" srcset="@2x.png 2x" alt="" height="375" />
-    <p class="img-caption">
-    <strong>Figure n.</strong> Single sentence summarizing the figure.
-  </p>
-</div>
--->
-
-<p>
-This sample demonstrates two alternative ways to move a view in the z-axis:</p>
-
-<ul>
-  <li>With a fixed elevation, using XML.</li>
-  <li>Raising the elevation when the user taps on it, using
-      <code>setTranslationZ()</code>.</li>
-</ul>
-
-
-<h3 id="ActivitySceneTransitionBasic"><a href="/samples/ActivitySceneTransitionBasic/index.html">ActivitySceneTransitionBasic</a></h3>
-<div class="figure" style="width:220px">
-  <img src="{@docRoot}samples/images/ActivitySceneTransitionBasic.png"
-      srcset="{@docRoot}samples/images/ActivitySceneTransitionBasic@2x.png 2x"
-      alt="" height="375" />
-  <p class="img-caption">
-    <strong>Figure 2.</strong> The ActivitySceneTransitionBasic sample app.
-  </p>
-  </div>
-
-<p> This sample demonstrates how to the use {@link android.app.Activity} scene
-transitions when transitioning from one activity to another. Uses a combination
-of <code>moveImage</code> and <code>changeBounds</code> to nicely transition
-from a grid of images to an activity with a large image and detail text. </p>
-
-
-<h3 id="Camera2Video"><a href="/samples/Camera2Video/index.html">Camera2Video</a></h3>
-<!--
-<div class="figure" style="width:220px">
-<img src="" srcset="@2x.png 2x" alt="" height="375" />
-    <p class="img-caption">
-    <strong>Figure n.</strong> Single sentence summarizing the figure.
-  </p>
-</div>
--->
-
-<p>This sample demonstrates how to record video using the Camera2 API.</p>
-
-
-<h3 id="Camera2Basic"><a href="/samples/Camera2Basic/index.html">Camera2Basic</a></h3>
-
-<!--
-<div class="figure" style="width:220px">
-  <img src="" srcset="@2x.png 2x" alt="" height="375" />
-  <p class="img-caption">
-    <strong>Figure n.</strong> Single sentence summarizing the figure.
-  </p>
-</div>
--->
-
-<p>This sample demonstrates the basic use of the Camera2 API. The sample code
-demonstrates how you can display camera preview and take pictures.</p>
-
-
-<h3 id="BasicManagedProfile"><a href="/samples/BasicManagedProfile/index.html">BasicManagedProfile</a></h3>
-<div class="figure" style="width:220px">
-  <img src="{@docRoot}samples/images/BasicManagedProfile.png"
-     srcset="{@docRoot}samples/images/BasicManagedProfile@2x.png 2x"
-     alt="" height="375" />
-  <p class="img-caption">
-    <strong>Figure 3.</strong> The BasicManagedProfile sample app.
-  </p>
-</div>
-
-<p>This sample demonstrates how to create a managed profile. You can also:</p>
-<ul>
-  <li>Enable or disable other apps, and set restrictions on them.</li>
-  <li>Configure intents to be forwarded between the primary account and the
-   managed profile.</li>
-  <li>Wipe all the data associated with the managed profile.</li>
-</ul>
-
-<p class="note"><strong>Note:</strong> There can be only one managed profile on
-  a device at a time.</p>
-
diff --git a/docs/html/sdk/index.jd b/docs/html/sdk/index.jd
index 39822e5..0250c1e 100644
--- a/docs/html/sdk/index.jd
+++ b/docs/html/sdk/index.jd
@@ -1,153 +1,127 @@
 page.title=Download Android Studio and SDK Tools
 page.tags=sdk, android studio
 page.template=sdk
-page.image=images/cards/android-studio_2x.png
+section.landing=true
 header.hide=1
+nonavpage=true
+fullpage=true
+page.image=images/cards/android-studio_2x.png
 page.metaDescription=Download the official Android IDE and developer tools to build apps for Android phones, tablets, wearables, TVs, and more.
 
-studio.version=1.3.2.0
-
-studio.linux_bundle_download=android-studio-ide-141.2178183-linux.zip
-studio.linux_bundle_bytes=352010593
-studio.linux_bundle_checksum=cf780413f8c8223eb348bd27c19a9c04b75eaeb2
-
-studio.mac_bundle_download=android-studio-ide-141.2178183-mac.dmg
-studio.mac_bundle_bytes=368335367
-studio.mac_bundle_checksum=75b67eb15a34a152a40e7189484ab0ebc375b877
-
-studio.win_bundle_download=android-studio-ide-141.2178183-windows.zip
-studio.win_bundle_bytes=344424713
-studio.win_bundle_checksum=3134f226b5f3c3f74d4fc2d9cff03a4458f01d69
-
-
-studio.win_bundle_exe_download=android-studio-bundle-141.2178183-windows.exe
-studio.win_bundle_exe_bytes=1136982712
-studio.win_bundle_exe_checksum=c7d39c529dd434489da9d086ff689d34dc791526
-
-studio.win_notools_exe_download=android-studio-ide-141.2178183-windows.exe
-studio.win_notools_exe_bytes=321810248
-studio.win_notools_exe_checksum=b5d1aaa000729c03a3cf980add79d1b93121c56d
-
-
-
-
-sdk.linux_download=android-sdk_r24.3.4-linux.tgz
-sdk.linux_bytes=309138331
-sdk.linux_checksum=fb293d7bca42e05580be56b1adc22055d46603dd
-
-sdk.mac_download=android-sdk_r24.3.4-macosx.zip
-sdk.mac_bytes=98340900
-sdk.mac_checksum=128f10fba668ea490cc94a08e505a48a608879b9
-
-sdk.win_download=android-sdk_r24.3.4-windows.zip
-sdk.win_bytes=187496897
-sdk.win_checksum=4a8718fb4a2bf2128d34b92f23ddd79fc65839e7
-
-
-sdk.win_installer=installer_r24.3.4-windows.exe
-sdk.win_installer_bytes=139477985
-sdk.win_installer_checksum=094dd45f98a31f839feae898b48f23704f2878dd
-
-
-
-
-
-
 @jd:body
 
-<style type="text/css">
-  .offline {display:none;}
-  h2.feature {
-    padding-top:30px;
-    margin-top:0;
-    clear:both;
-  }
-  .feature-blurb {
-  margin:0px; font-size:16px; font-weight:300;
-  padding-top:40px;
-  }
-
-  .landing-button .small {
-    font-size: 12px;
-    font-weight: normal;
-    line-height: 12px;
-    display: block;
-  }
-
-  h1.studio-logo {
-    width:226px;
-    height:78px;
-    display:block;
-    padding:0;
-    white-space: nowrap;
-    text-indent: -10000px;
-    font-size:0px;
-    background: url(../images/tools/studio-logo.png);
-    background-image: -webkit-image-set(url(../images/tools/studio-logo.png) 1x, url(../images/tools/studio-logo_2x.png) 2x);
-    background-size: 226px 78px;
-  }
-
+<style>
+.download-bundle-button {line-height:18px;}
+.download-bundle-button .small {font-size: 12px; opacity: 0.7;}
 </style>
 
+ <section class="dac-expand dac-hero dac-light">
+  <div class="wrap">
+    <div class="cols dac-hero-content">
+      <div class="col-1of2 col-push-1of2 dac-hero-figure">
+        <img class="dac-hero-image" src="/images/develop/hero_image_studio5_2x.png" srcset="/images/develop/hero_image_studio5.png 1x, /images/develop/hero_image_studio5_2x.png 2x">
+      </div>
+      <div class="col-1of2 col-pull-1of2" style="margin-bottom:40px">
+<h1 class="dac-hero-title">Android Studio<br>
+<span style="font-size: 65%;">The Official IDE for Android</span></h1>
+
+<p class="dac-hero-description">Android Studio provides the fastest tools for
+building apps on every type of Android device.</p>
+
+<p class="dac-hero-description">World-class code editing, debugging,
+performance tooling, a flexible build system, and an instant build/deploy
+system all allow you to focus on building unique and high quality apps.</p>
+
+<p style="margin-top:24px">
+  <a class="landing-button green download-bundle-button"
+    data-modal-toggle="studio_tos">Download Android Studio 2.0<br>
+  <span class="small"></span></a>
+</p>
+
+<p style="margin:24px 0 0">
+  <a class="dac-hero-cta" href="{@docRoot}tools/studio/index.html">
+  <span class="dac-sprite dac-auto-chevron"></span>
+  Read the docs</a>
+  <a class="dac-hero-cta" href="{@docRoot}tools/revisions/studio.html">
+  <span class="dac-sprite dac-auto-chevron"></span>
+  See the release notes</a>
+</p>
+      </div>
+    </div>
+  </div>
+</section>
 
 
 
 
-<div style="position:relative;">
-
-
-<div class="wrap" id="tos" style="display:none;width:inherit;height:650px">
-<div class="col-13" style="margin:0;">&nbsp;</div><!-- provides top margin for content -->
-
-<h1 id="tos-header" style="margin-top:0">Download</h1>
-
-<p class="sdk-terms-intro">Before installing Android Studio or the standalone SDK tools,
-you must agree to the following terms and conditions.</p>
+<!-- start studio download modal -->
+<div data-modal="studio_tos" class="dac-modal" id="langform">
+  <div class="dac-modal-container">
+    <div class="dac-modal-window">
+      <header class="dac-modal-header">
+        <div class="dac-modal-header-actions">
+          <button class="dac-modal-header-close" data-modal-toggle></button>
+        </div>
+        <section class="dac-swap-section dac-active dac-down">
+          <h2 class="norule dac-modal-header-title" id="tos-header">Download Android Studio</h2>
+        </section>
+      </header>
+      <section class="dac-swap-section dac-active dac-left">
+          <section class="dac-modal-content">
+            <fieldset class="dac-form-fieldset">
+              <div class="cols">
+                <div class="col-2of2 tos-leftCol">
+                  <p class="sdk-terms-intro">Before downloading,
+                  you must agree to the following terms
+                  and conditions.</p>
+                </div>
 
 <div class="sdk-terms" onfocus="this.blur()">
 <h2 class="norule">Terms and Conditions</h2>
 This is the Android Software Development Kit License Agreement
 
 <h3>1. Introduction</h3>
-1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
 
 1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
 
-1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
 
 
 <h3>2. Accepting this License Agreement</h3>
-2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use the SDK if you do not accept this License Agreement.
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
 
-2.2 By clicking to accept, you hereby agree to the terms of this License Agreement.
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
 
-2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK.
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
 
-2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
 
 
 <h3>3. SDK License from Google</h3>
-3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the SDK solely to develop applications to run on the Android platform.
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
 
-3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
 
-3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
 
-3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK.
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
 
-3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement.
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
 
 3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
 
-3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
 
 3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
 
 
 <h3>4. Use of the SDK by You</h3>
-4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
 
-4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
 
 4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
 
@@ -155,7 +129,7 @@
 
 4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
 
-4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
 
 
 <h3>5. Your Developer Credentials</h3>
@@ -173,7 +147,7 @@
 
 7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
 
-7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties.
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
 
 
 <h3>8. Using Android APIs</h3>
@@ -185,17 +159,17 @@
 
 
 <h3>9. Terminating this License Agreement</h3>
-9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below.
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
 
-9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
 
-9.3 Google may at any time, terminate this License Agreement with you if:
-(A) you have breached any provision of this License Agreement; or
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
 (B) Google is required to do so by law; or
 (C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
 (D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
 
-9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
 
 
 <h3>10. DISCLAIMER OF WARRANTIES</h3>
@@ -211,7 +185,7 @@
 
 
 <h3>12. Indemnification</h3>
-12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement.
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
 
 
 <h3>13. Changes to the License Agreement</h3>
@@ -219,25 +193,22 @@
 
 
 <h3>14. General Legal Terms</h3>
-14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
 
-14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
 
-14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of this License Agreement is invalid, then that provision will be removed from this License Agreement without affecting the rest of this License Agreement. The remaining provisions of this License Agreement will continue to be valid and enforceable.
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
 
-14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to this License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of this License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to this License Agreement.
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
 
 14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
 
-14.6 The rights granted in this License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under this License Agreement without the prior written approval of the other party.
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
 
-14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
 
-
-<em>December 8, 2014</em>
-</div>
-
-
+<em>November 20, 2015</em>
+</div><!-- close sdk-terms -->
 
 
 
@@ -245,243 +216,314 @@
   <p>You're just a few steps away from building apps for Android!</p>
   <p>In a moment, you'll be redirected to
   <a id="next-link" href="{@docRoot}sdk/installing/index.html">Installing the Android SDK</a>.</p>
-
 </div><!-- end next-steps -->
 
-
-
 <div id="sdk-terms-form">
 <p>
 <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
 <label id="agreeLabel" for="agree">I have read and agree with the above terms and conditions</label>
 </p>
-<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+<p><a href="" class="dac-button dac-raised dac-primary disabled ndk" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+</div><!-- end sdk-terms-form -->
+
+
+</div><!-- end cols -->
+
+            </fieldset>
+          </section>
+      </section>
+    </div><!-- end dac-modal-window -->
+  </div><!-- end dac-modal-container -->
+</div><!-- end #langform, .dac-modal -->
+<!-- end studio_tos modal -->
+
+<div id="useOldTemplates" class="actions-bar dac-expand dac-invert">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button="" href="#features">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
+    <div class="actions">
+      <div><a href="#features">
+        <span class="dac-sprite dac-auto-chevron-large"></span>
+        Features
+      </a></div>
+      <div><a href="#latest">
+        <span class="dac-sprite dac-auto-chevron-large"></span>
+        Latest
+      </a></div>
+      <div><a href="#resources">
+        <span class="dac-sprite dac-auto-chevron-large"></span>
+        Resources
+      </a></div>
+      <div><a href="#videos">
+        <span class="dac-sprite dac-auto-chevron-large"></span>
+        Videos
+      </a></div>
+      <div><a href="#downloads">
+        <span class="dac-sprite dac-auto-chevron-large"></span>
+        Download Options
+      </a></div>
+    </div><!-- end .actions -->
+  </div><!-- end .wrap -->
 </div>
 
 
-</div><!-- end TOS -->
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
+  <div class="wrap dac-offset-parent">
+    <a class="dac-fab dac-scroll-button" data-scroll-button href="#features">
+      <i class="dac-sprite dac-arrow-down-gray"></i>
+    </a>
+    <ul class="dac-actions">
+      <li class="dac-action">
+        <a class="dac-action-link" href="#features">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Features
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="#latest">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Latest
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="#resources">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Resources
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="#videos">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Videos
+        </a>
+      </li>
+      <li class="dac-action">
+        <a class="dac-action-link" href="#downloads">
+          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+          Download Options
+        </a>
+      </li>
+    </ul>
+  </div><!-- end .wrap -->
+</div><!-- end new templates -->
 
 
 
+<section id="features" class="dac-section dac-small">
+<div class="dac-toggle">
 
-
-
-<div id="landing">
-
-<div class="col-13">&nbsp;</div><!-- provides top margin for content -->
-
-<img src="{@docRoot}images/tools/studio-hero.png"
-srcset="{@docRoot}images/tools/studio-hero_2x.png 2x, {@docRoot}images/tools/studio-hero.png 1x"
-width="760" alt="" />
-
-<div style="color: #fff; width:226px; height:0; overflow:visible; position:absolute; top:40px; left:25px">
-
-<h1 class="studio-logo" style="margin:0 0 35px !important">Android Studio</h1>
-
-<p style="font-size: 16px; color:#bbb; position: absolute;left: 297px; top: 5px; display: block;
-width: 400px;text-align: center;">The official Android IDE</p>
-
-<ul style="font-size:12px;line-height:19px;">
-<li>Android Studio IDE</li>
-<li>Android SDK tools</li>
-<li>Android 5.0 (Lollipop) Platform</li>
-<li>Android 5.0 emulator system image with Google APIs</li>
-</ul>
-
-<a class="online landing-button green download-bundle-button"
-href="#Other" >Download Android Studio<br/><span class='small'></span></a>
-
-<!-- this appears when viewing the offline docs -->
-<p class="offline">
-To get Android Studio or stand-alone SDK tools, visit <a
-href="http://developer.android.com/sdk/index.html">developer.android.com/sdk/</a>
-</p>
+<div class="wrap feature">
+  <div class="cols dac-hero-content">
+    <div class="col-1of2 col-push-1of2 dac-hero-figure">
+      <img src="/images/tools/studio/studio-feature-instant-run_2x.png">
+    </div>
+    <div class="col-1of2 col-pull-1of2">
+      <div class="dac-hero-tag"></div>
+      <h1 class="dac-hero-title">Instant Run</h1>
+<p class="dac-hero-description">Push code and resource
+changes to your app running on a device or emulator and see the
+changes instantly come to life.</p>
+<p class="dac-hero-description">Instant Run dramatically speeds up your edit,
+build, and run cycles, keeping you "in the flow."</p>
+      <a class="dac-hero-cta"
+        href="/tools/building/building-studio.html#instant-run">
+        <span class="dac-sprite dac-auto-chevron"></span>
+        Learn more</a>
+    </div>
+  </div>
 </div>
 
-<ul>
-  <li><a href="#Requirements">System Requirements</a></li>
-  <li><a href="#Other">Other Download Options</a></li>
-  <li><a href="{@docRoot}sdk/installing/migrate.html">Migrating to Android Studio</a></li>
-  <li><a href="https://docs.google.com/a/google.com/forms/d/1mjsyfzv3HAnDY-_Kfj-3QJKdpuksyMFs9e73CRwmT6Q/viewform"
-target="_blank">Take a Survey</a></li>
-</ul>
+<div class="wrap feature">
+  <div class="cols dac-hero-content">
+    <div class="col-1of2 dac-hero-figure">
+      <img src="/images/tools/codeeditor-low.gif" >
+    </div>
+    <div class="col-1of2">
+      <div class="dac-hero-tag"></div>
+      <h1 class="dac-hero-title">Intelligent code editor</h1>
+<p class="dac-hero-description">Write better code, work faster, and be more productive with an intelligent code editor that helps you each step of the way.</p>
+<p class="dac-hero-description">Android Studio is built on IntelliJ and is capable of advanced code completion, refactoring, and code analysis.</p>
+    </div>
+  </div>
+</div>
+
+<div class="wrap feature">
+  <div class="cols dac-hero-content">
+    <div class="col-1of2 col-push-1of2 dac-hero-figure">
+      <img src="/images/tools/studio/studio-feature-emulator_2x.jpg">
+    </div>
+    <div class="col-1of2 col-pull-1of2">
+      <div class="dac-hero-tag"></div>
+      <h1 class="dac-hero-title">Fast and feature-rich emulator</h1>
+<p class="dac-hero-description">Install and run your apps faster than with a physical device and test your app on virtually any Android device configuration: Android phones, Android tablets, Android Wear, and Android TV devices.</p>
+<p class="dac-hero-description">The new Android Emulator 2.0 is faster than ever and allows you to dynamically resize the emulator and access a suite of sensor controls.</p>
+      <a class="dac-hero-cta"
+        href="/tools/devices/emulator.html">
+        <span class="dac-sprite dac-auto-chevron"></span>
+        Learn more</a>
+    </div>
+  </div>
+</div>
+
+<div class="wrap feature">
+  <div class="cols dac-hero-content">
+    <div class="col-1of2 dac-hero-figure">
+      <img src="/images/tools/studio/studio-feature-gradle_2x.png">
+    </div>
+    <div class="col-1of2">
+      <div class="dac-hero-tag"></div>
+      <h1 class="dac-hero-title">Robust and flexible build system</h1>
+<p class="dac-hero-description">Easily configure your project to include code libraries and generate multiple build variants from a single project.</p>
+<p class="dac-hero-description">With Gradle, Android Studio offers high-performance build automation, robust dependency management, and customizable build configurations.</p>
+      <a class="dac-hero-cta"
+        href="/tools/building/plugin-for-gradle.html">
+        <span class="dac-sprite dac-auto-chevron"></span>
+        Learn more</a>
+    </div>
+  </div>
+</div>
+
+<div class="dac-toggle-content clearfix">
+
+<div class="wrap feature">
+  <div class="cols dac-hero-content">
+    <div class="col-1of2 col-push-1of2 dac-hero-figure">
+      <img src="/images/tools/studio/studio-feature-devices_2x.png">
+    </div>
+    <div class="col-1of2 col-pull-1of2">
+      <div class="dac-hero-tag"></div>
+      <h1 class="dac-hero-title">Develop for all&nbsp;<wbr>Android&nbsp;devices</h1>
+<p class="dac-hero-description">Target multiple form factors with a single
+project to easily share code among your different versions of your app.</p>
+<p class="dac-hero-description">Android Studio provides a unified environment
+to develop apps for Android phones, tablets, Android Wear, Android TV, and
+Android Auto.</p>
+
+      <a class="dac-hero-cta"
+        href="/tools/building/configuring-gradle.html#workBuildVariants">
+        <span class="dac-sprite dac-auto-chevron"></span>
+        Learn more</a>
+    </div>
+  </div>
+</div>
+
+<div class="wrap feature">
+  <div class="cols dac-hero-content">
+    <div class="col-1of2 dac-hero-figure">
+      <img src="/images/tools/studio/studio-feature-github_2x.png">
+    </div>
+    <div class="col-1of2">
+      <div class="dac-hero-tag"></div>
+      <h1 class="dac-hero-title">Code templates and GitHub integration</h1>
+      <p class="dac-hero-description">Start projects with code templates for patterns such as navigation drawer and view pagers, or import Google code samples from GitHub.</p>
+      <p class="dac-hero-description">Android Studio's project wizards make it easier than ever to add code in a new project.</p>
+    </div>
+  </div>
+</div>
+
+</div><!-- end dac-toggle-content -->
+
+<div class="dac-section-links dac-text-center feature-more">
+  <div class="dac-section-link" data-toggle="section">
+    <span class="dac-toggle-expand">More
+      <i class="dac-sprite dac-auto-unfold-more"></i>
+    </span>
+    <span class="dac-toggle-collapse">Less
+      <i class="dac-sprite dac-auto-unfold-less"></i>
+    </span>
+  </div>
+</div>
+
+</div>
+</section><!-- end features -->
 
 
 
+<section id="latest" class="dac-section dac-light dac-small"><div class="wrap">
+  <h1 class="dac-section-title">Latest News</h1>
+  <div class="resource-widget resource-flow-layout col-16"
+       data-query="collection:tools/landing/latest"
+       data-cardSizes="6x6"
+       data-items-per-page="3"
+       data-initial-results="3"
+       data-maxResults="3"></div>
+  </div>
+</section>
+
+<section id="resources" class="dac-section dac-small"><div class="wrap">
+  <h1 class="dac-section-title">Resources</h1>
+  <div class="resource-widget resource-flow-layout col-16"
+       data-query="collection:tools/landing/resources"
+       data-cardSizes="6x6"
+       data-initial-results="3"
+       data-items-per-page="3"
+       data-maxResults="3"></div>
+  </div>
+</section>
+
+<section class="dac-section dac-light dac-small dac-gray" id="videos"><div class="wrap">
+  <h1 class="dac-section-title">Videos</h1>
+  <div class="resource-widget resource-flow-layout col-16"
+       data-query="collection:develop/landing/tools"
+       data-sortOrder="-timestamp"
+       data-cardSizes="6x6"
+       data-maxResults="3"></div>
+  </div>
+</section>
+
+
+
+<section id="Requirements" class="dac-section dac-light dac-small">
+<div class="wrap">
+
+<h2 class="norule">System Requirements</h2>
 
 <div class="cols">
-<h2 class="feature norule col-13">Intelligent code editor</h2>
 
-<div class="col-9">
-  <img src="{@docRoot}images/tools/studio-hero-code.png"
-srcset="{@docRoot}images/tools/studio-hero-code_2x.png 2x, {@docRoot}images/tools/studio-hero-code.png 1x" width="520" />
-</div><!-- end col-9 (left column) -->
-
-<div class="col-4 feature-blurb">
-  <p>At the core of Android Studio is an intelligent code editor capable of advanced
-  code completion, refactoring, and code analysis.</p>
-  <p>The powerful code editor helps you be a more productive Android app developer.</p>
-</div>
-
-
-
-
-
-<h2 class="feature norule col-13">Code templates and GitHub integration</h2>
-
-<div class="col-9">
-  <img src="{@docRoot}images/tools/studio-hero-import.png"
-srcset="{@docRoot}images/tools/studio-hero-import_2x.png 2x, {@docRoot}images/tools/studio-hero-import.png 1x" width="520" />
-</div><!-- end col-9 (left column) -->
-
-<div class="col-4 feature-blurb">
-  <p>New project wizards make it easier than ever to start a new project.</p>
-
-  <p>Start projects using template code for patterns such as navigation drawer and view pagers,
-  and even import Google code samples from GitHub.</p>
-</div>
-
-
-
-
-<h2 class="feature norule col-13">Multi-screen app development</h2>
-
-<div class="col-9">
-  <img src="{@docRoot}images/tools/studio-hero-screens.png"
-srcset="{@docRoot}images/tools/studio-hero-screens_2x.png 2x, {@docRoot}images/tools/studio-hero-screens.png 1x" width="520" />
-</div><!-- end col-9 (left column) -->
-
-<div class="col-4 feature-blurb">
-  <p>Build apps for Android phones, tablets, Android Wear,
-  Android TV, Android Auto and Google Glass.</p>
-  <p>With the new Android Project View and module support in Android Studio, it's easier
-  to manage app projects and resources.
-</div>
-
-
-
-
-<h2 class="feature norule col-13">Virtual devices for all shapes and sizes</h2>
-
-<div class="col-9">
-  <img src="{@docRoot}images/tools/studio-hero-avds.png"
-srcset="{@docRoot}images/tools/studio-hero-avds_2x.png 2x, {@docRoot}images/tools/studio-hero-avds.png 1x" width="520" />
-</div><!-- end col-9 (left column) -->
-
-<div class="col-4 feature-blurb">
-  <p>Android Studio comes pre-configured with an optimized emulator image.</p>
-  <p>The updated and streamlined Virtual Device Manager provides
-  pre-defined device profiles for common Android devices.</p>
-</div>
-
-
-
-
-<h2 class="feature norule col-13">
-Android builds evolved, with Gradle</h2>
-
-<div class="col-9">
-  <img src="{@docRoot}images/tools/studio-hero-gradle.png"
-srcset="{@docRoot}images/tools/studio-hero-gradle_2x.png 2x, {@docRoot}images/tools/studio-hero-gradle.png 1x" width="520" />
-</div><!-- end col-9 (left column) -->
-
-<div class="col-4 feature-blurb">
-  <p>Create multiple APKs for your Android app with different features using the same project.</p>
-  <p>Manage app dependencies with Maven.</p>
-  <p>Build APKs from Android Studio or the command line.</p>
-</div>
-
-</div>
-
-<h2 class="feature norule">More about Android Studio</h2>
-<div style="background:#424242;padding:30px; color:#fff;margin:0 0 15px;">
-
-<a class="online landing-button green download-bundle-button"
-style="margin:0 0 40px 60px;float:right"
-href="" >Download Android Studio</a>
-
-  <ul>
-  <li>Built on IntelliJ IDEA Community Edition, the popular Java IDE by JetBrains.</li>
-  <li>Flexible Gradle-based build system.</li>
-  <li>Build variants and multiple APK generation.</li>
-  <li>Expanded template support for Google Services and various device types.</li>
-  <li>Rich layout editor with support for theme editing.</li>
-  <li>Lint tools to catch performance, usability, version compatibility, and other problems.</li>
-  <li>ProGuard and app-signing capabilities.</li>
-  <li>Built-in support for Google Cloud Platform, making it easy to integrate Google Cloud
-  Messaging and App Engine.</li>
-  </ul>
-
-<p style="margin:0">
-For more details about features available in Android Studio,
-read the overview at <a href="{@docRoot}tools/studio/index.html">Android Studio</a>.</p>
-</div>
-
-
-<p>If you have been using Eclipse with ADT, be aware that Android Studio is now the official IDE
-for Android, so you should migrate to Android Studio to receive all the
-latest IDE updates. For help moving projects,
-see <a href="{@docRoot}sdk/installing/migrate.html">Migrating to Android
-Studio</a>.</p>
-
-
-
-
-
-
-
-<h2 id="Requirements">System Requirements</h2>
-
-<h3>Windows</h3>
-
+<div class="col-2of6">
+<h4>Windows</h4>
 <ul>
-<li>Microsoft&reg;  Windows&reg;  8/7/Vista/2003 (32 or 64-bit)</li>
-<li>2 GB RAM minimum, 4 GB RAM recommended</li>
-<li>400 MB hard disk space</li>
-<li>At least 1 GB for Android SDK, emulator system images, and caches</li>
+<li>Microsoft&reg;  Windows&reg;  7/8/10 (32 or 64-bit)</li>
+<li>2 GB RAM minimum, 8 GB RAM recommended</li>
+<li>2 GB of available disk space minimum (500 MB for IDE + 1.5 GB for
+Android SDK and emulator system image). 4 GB Recommended.</li>
 <li>1280 x 800  minimum screen resolution</li>
-<li>Java Development Kit (JDK) 7 </li>
-<li>Optional for accelerated emulator: Intel® processor with support for Intel® VT-x, Intel® EM64T
-(Intel® 64), and Execute Disable (XD) Bit functionality</li>
+<li>Java Development Kit (JDK) 8</li>
+<li>Optional for accelerated emulator: Intel® processor with support for Intel®
+VT-x, Intel® EM64T (Intel® 64), and Execute Disable (XD) Bit functionality</li>
 </ul>
+</div>
 
-
-<h3>Mac OS X</h3>
-
+<div class="col-2of6">
+<h4>Mac</h4>
 <ul>
-<li>Mac&reg;  OS X&reg;  10.8.5 or higher, up to 10.9 (Mavericks)</li>
-<li>2 GB RAM minimum, 4 GB RAM recommended</li>
-<li>400 MB hard disk space</li>
-<li>At least 1 GB for Android SDK, emulator system images, and caches</li>
+<li>Mac&reg;  OS X&reg;  10.8.5 or higher, up to 10.11.4 (El Capitan)</li>
+<li>2 GB RAM minimum, 8 GB RAM recommended</li>
+<li>2 GB of available disk space minimum (500 MB for IDE + 1.5 GB for
+Android SDK and emulator system image). 4 GB Recommended.</li>
 <li>1280 x 800 minimum screen resolution</li>
-<li>Java Runtime Environment (JRE) 6</li>
-<li>Java Development Kit (JDK) 7</li>
-<li>Optional for accelerated emulator: Intel® processor with support for Intel® VT-x, Intel® EM64T
-(Intel® 64), and Execute Disable (XD) Bit functionality</li>
+<li>Java Development Kit (JDK) 8</li>
 </ul>
+</div>
 
-<p>On Mac OS, run Android Studio with Java Runtime Environment (JRE) 6 for optimized font
-rendering. You can then configure your project to use Java Development Kit (JDK) 6 or JDK 7.</p>
-
-
-
-<h3>Linux</h3>
-
+<div class="col-2of6">
+<h4>Linux</h4>
 <ul>
-<li>GNOME or KDE desktop</li>
-<li>GNU C Library (glibc) 2.15 or later</li>
-<li>2 GB RAM minimum, 4 GB RAM recommended</li>
-<li>400 MB hard disk space</li>
-<li>At least 1 GB for Android SDK, emulator system images, and caches</li>
+<li>GNOME or KDE desktop
+<p><i>Tested on Ubuntu®  12.04, Precise Pangolin (64-bit distribution
+capable of running 32-bit applications)</i></li>
+<li>GNU C Library (glibc) 2.11 or later</li>
+<li>2 GB RAM minimum, 8 GB RAM recommended</li>
+<li>2 GB of available disk space minimum (500 MB for IDE + 1.5 GB for
+Android SDK and emulator system image). 4 GB Recommended.</li>
 <li>1280 x 800 minimum screen resolution</li>
-<li>Oracle&reg;  Java Development Kit (JDK) 7 </li>
+<li>Java Development Kit (JDK) 8</li>
 </ul>
-<p>Tested on Ubuntu&reg;  14.04, Trusty Tahr (64-bit distribution capable of running
-32-bit applications).</p>
+</div>
 
+</div>
+</div>
 
+</section>
 
-
-<h2 id="Other" style="clear:left">Other Download Options</h2>
-
-<!-- alternative SDK options follows -->
diff --git a/docs/html/sdk/installing/adding-packages.jd b/docs/html/sdk/installing/adding-packages.jd
deleted file mode 100644
index 88619bd..0000000
--- a/docs/html/sdk/installing/adding-packages.jd
+++ /dev/null
@@ -1,229 +0,0 @@
-page.title=Adding SDK Packages
-
-page.tags=sdk manager
-helpoutsWidget=true
-
-@jd:body
-
-<style>
-ol.large {
-  margin-left:0;
-}
-ol.large > li {
-  list-style-position: inside;
-  list-style-type:none;
-  margin:30px 0 0 0;
-  padding:30px 20px;
-  background:#eee;
-}
-ol.large > li:nth-child(odd) {
-}
-ol.large > li:before {
-  display:inline;
-  left:-40px;
-  float:left;
-  width:20px;
-  font-size:20px;
-  line-height:20px;
-}
-ol.large > li > h2 {
-  font-size:20px;
-  line-height:20px;
-  padding:0 0 0 20px;
-  margin:0 0 20px 0;
-  display:inline-block;
-  font-weight:normal;
-}
-ol.large > li:nth-child(1):before {
-  content:"1. ";
-}
-ol.large > li:nth-child(2):before {
-  content:"2. ";
-}
-ol.large > li:nth-child(3):before {
-  content:"3. ";
-}
-ol.large > li:nth-child(4):before {
-  content:"4. ";
-}
-ol.large > li:nth-child(5):before {
-  content:"5. ";
-}
-ol.large > li:nth-child(6):before {
-  content:"6. ";
-}
-</style>
-
-
-<p>
-By default, the Android SDK does not include everything you need to start developing.
-The SDK separates tools, platforms, and other components into packages you can
-download as needed using the
-<a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>.
-So before you can start, there are a few packages you should add to your Android SDK.</p>
-
-<p>To start adding packages, launch the Android SDK Manager in one of the following ways:</p>
-<ul>
-  <li>In Android Studio, click <strong>SDK Manager</strong>
-<img src="{@docRoot}images/tools/sdk-manager-studio.png"
-style="vertical-align:bottom;margin:0;height:17px" /> in the toolbar.</li>
-  <li>If you're not using Android Studio:
-    <ul>
-      <li>Windows: Double-click the <code>SDK Manager.exe</code> file at the root of the Android
-  SDK directory.</li>
-      <li>Mac/Linux: Open a terminal and navigate to the <code>tools/</code> directory in the
-      location where the Android SDK was installed, then execute <code>android sdk</code>.</li>
-    </ul>
-  </li>
-</ul>
-
-<p>When you open the SDK Manager for the first time, several packages are selected by
-default. Leave these selected, but be sure you have everything you need
-to get started by following these steps:</p>
-
-
-<ol class="large">
-<li>
-  <h2 id="GetTools" class="norule">Get the latest SDK tools</h2>
-
-<img src="/images/sdk_manager_packages.png" alt="" width="350" style="float:right;margin-left:20px" />
-
-  <p>As a minimum when setting up the Android SDK,
-  you should download the latest tools and Android platform:</p>
-  <ol>
-   <li>Open the Tools directory and select:
-     <ul>
-       <li><strong>Android SDK Tools</strong></li>
-       <li><strong>Android SDK Platform-tools</strong></li>
-       <li><strong>Android SDK Build-tools</strong> (highest version)</li>
-     </ul>
-   </li>
-   <li>Open the first Android X.X folder (the latest version) and select:
-     <ul>
-      <li><strong>SDK Platform</strong></li>
-      <li>A system image for the emulator, such as <br>
-      <strong>ARM EABI v7a System Image</strong></li>
-     </ul>
-   </li>
-  </ol>
-</li>
-
-<li>
-  <h2 id="GetSupportLib" class="norule">Get the support library for additional APIs</h2>
-
-  <div class="sidebox">
-    <p>The support library is required for:</p>
-    <ul>
-      <li><a href="{@docRoot}wear/index.html">Android Wear</a></li>
-      <li><a href="{@docRoot}tv/index.html">Android TV</a></li>
-      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
-    </ul>
-
-    <p>It also provides these popular APIs:</p>
-    <ul>
-      <li><a href="{@docRoot}reference/android/support/v4/widget/DrawerLayout.html">Navigation
-      drawer</a></li>
-      <li><a href="{@docRoot}reference/android/support/v4/view/ViewPager.html">Swipe views</a></li>
-      <li><a href="{@docRoot}reference/android/support/v7/app/ActionBar.html">Backward-compatible
-      action bar</a></li>
-    </ul>
-  </div>
-
-  <p>The <a href="{@docRoot}tools/support-library/features.html">Android Support Library</a>
-  provides an extended set of APIs that are compatible with most versions of Android.</p>
-
-  <p>Open the <strong>Extras</strong> directory and select:</p>
-     <ul>
-       <li><strong>Android Support Repository</strong></li>
-       <li><strong>Android Support Library</strong></li>
-     </ul>
-
-  <p>&nbsp;</p>
-  <p>&nbsp;</p>
-
-</li>
-
-
-<li>
-  <h2 id="GetGoogle" class="norule">Get Google Play services for even more APIs</h2>
-
-  <div class="sidebox">
-
-    <p>The Google Play services APIs provide a variety of features and services for your Android
-    apps, such as:</p>
-    <ul>
-      <li><a href="{@docRoot}google/play-services/plus.html">User authentication</a></li>
-      <li><a href="{@docRoot}google/play-services/maps.html">Google Maps</a></li>
-      <li><a href="{@docRoot}google/play-services/cast.html">Google Cast</a></li>
-      <li><a href="{@docRoot}google/play-services/games.html">Games achievements and
-      leaderboards</a></li>
-      <li><a href="{@docRoot}google/play-services/index.html">And much more</a></li>
-    </ul>
-  </div>
-
-  <p>To develop with Google APIs, you need the Google Play services package:</p>
-  <p>Open the <strong>Extras</strong> directory and select:</p>
-     <ul>
-       <li><strong>Google Repository</strong></li>
-       <li><strong>Google Play services</strong></li>
-     </ul>
-
-  <p class="note"><strong>Note:</strong> Google Play services APIs are not available on all
-  Android-powered devices, but are available on all devices with Google Play Store. To use these
-  APIs in the Android emulator, you must also install the the <strong>Google APIs</strong>
-  system image from the latest Android X.X directory in the SDK Manager.</p>
-</li>
-
-
-<li>
-  <h2 id="Install" class="norule">Install the packages</h2>
-  <p>Once you've selected all the desired packages, continue to install:</p>
-  <ol>
-   <li>Click <strong>Install X packages</strong>.</li>
-   <li>In the next window, double-click each package name on the left
-   to accept the license agreement for each.</li>
-   <li>Click <strong>Install</strong>.</li>
-  </ol>
-  <p>The download progress is shown at the bottom of the SDK Manager window.
-  <strong>Do not exit the SDK Manager</strong> or it will cancel the download.</p>
-</li>
-
-<li>
-  <h2 id="Build" class="norule">Build something!</h2>
-
-<p>With the above packages now in your Android SDK, you're ready to build apps
-for Android. As new tools and other APIs become available, simply launch the SDK Manager
-  to download the new packages for your SDK.</p>
-
-<p>Here are a few options for how you should proceed:</p>
-
-<div class="cols" style="padding:10px 0">
-<div class="col-4">
-<h3>Get started</h3>
-<p>If you're new to Android development, learn the basics of Android apps by following
-the guide to <strong><a href="{@docRoot}training/basics/firstapp/index.html"
->Building Your First App</a></strong>.</p>
-
-</div>
-<div class="col-4 box">
-<h3>Build for wearables</h3>
-<p>If you're ready to start building apps for Android wearables, see the guide to
-<strong><a href="{@docRoot}wear/preview/start.html">Building Apps for Android Wear</a></strong>.</p>
-
-</div>
-<div class="col-4 box">
-<h3>Use Google APIs</h3>
-<p>To start using Google APIs, such as Maps or
-Play Game services, see the guide to
-<strong><a href="{@docRoot}google/play-services/setup.html">Setting Up Google Play
-Services</a></strong>.</p>
-
-</div>
-</div><!-- end cols -->
-
-
-</li>
-
-</ol>
-
-
diff --git a/docs/html/sdk/installing/create-project.jd b/docs/html/sdk/installing/create-project.jd
index 68fd572..a4de85c 100644
--- a/docs/html/sdk/installing/create-project.jd
+++ b/docs/html/sdk/installing/create-project.jd
@@ -1,4 +1,4 @@
-page.title=Managing Projects from Android Studio
+page.title=Managing Projects with Android Studio
 
 @jd:body
 
@@ -8,13 +8,6 @@
 
       <ol>
         <li><a href="#CreatingAProject">Creating an Android Project</a></li>
-        <ol>
-          <li><a href="#Step1CreatingAProject">Create a New Project</a> </li>
-          <li><a href="#Step2SelectFormFactor">Select Form Factors and API Level</a> </li>
-          <li><a href="#Step3AddActivity">Add an Activity</a> </li>
-          <li><a href="#Step4ConfigureActivity">Configure Your App</a> </li>
-          <li><a href="#Step5DevelopYourApp">Develop Your App</a> </li>
-        </ol>
 
         <li><a href="#CreatingAModule">Creating an Android Module</a></li>
 
@@ -190,8 +183,8 @@
         <li>Select a <strong>Theme</strong>. This setting specifies which standard Android
         <a href="{@docRoot}design/style/themes.html">visual style</a> is applied to your
         application. Select activity template. For more information about Android code templates, see
-        <a href="{@docRoot}tools/projects/templates.html">Using Code Templates</a>Leave the <strong>
-        Create activity</strong> option checked so you can start your
+        <a href="{@docRoot}tools/projects/templates.html">Using Code Templates</a>. Leave the
+        <strong>Create activity</strong> option checked so you can start your
         application with some essential components. </li>
 
         <li>Click the check box for the required Support Libraries then click <strong>Next</strong>.</li>
@@ -359,10 +352,6 @@
 per resource type.</li>
 </ul>
 
-
-
-<h2 id="enable-view">Use the Android Project View</h2>
-
 <p>The <em>Android</em> project view is enabled by default and shows all the build files at
 the top level of the project hierarchy under <strong>Gradle Scripts</strong>. The project module
 appears as a folder at the top level of the project hierarchy and contains these three elements
@@ -386,12 +375,3 @@
 &nbsp;&nbsp;&nbsp;
 <img src="{@docRoot}images/tools/projectview-p2.png" alt="" style="width:240px" " />
 <p class="img-caption"><strong>Figure 10:</strong> Android and Traditional project view </p>
-
-
-
-
-
-
-
-
-
diff --git a/docs/html/sdk/installing/index.jd b/docs/html/sdk/installing/index.jd
index 0375a2f..f776c9a 100644
--- a/docs/html/sdk/installing/index.jd
+++ b/docs/html/sdk/installing/index.jd
@@ -1,379 +1,199 @@
-page.title=Installing the Android SDK
+page.title=Install Android Studio
 excludeFromSuggestions=true
 
 page.tags=sdk tools
-helpoutsWidget=true
 
 @jd:body
 
-<style>
-p.paging-links {
-  margin:0 0 40px;
-}
-.paging-links .next-page-link {
-  right:initial;
-}
-.procedure-box {
-  padding:20px 20px 5px;
-  margin-bottom:1em;
-  background:#eee;
-}
-.landing-button {
-  min-width: 155px;
-  text-align: center;
-}
-</style>
 
-
-
-<!-- ################    STUDIO    ##################### -->
-<div id="studio" heading="Installing Android Studio" style="display:none">
-
-<p>Android Studio provides everything you need to start developing apps for Android, including
-the Android Studio IDE and the Android SDK tools.</p>
-
-<p>If you didn't download Android Studio, go <a href="{@docRoot}sdk/index.html"
-><b>download Android Studio now</b></a>, or switch to the
-<a href="{@docRoot}sdk/installing/index.html?pkg=tools">stand-alone SDK Tools
-install</a> instructions.</p>
-
-
-<p>Before you set up Android Studio, be sure you have installed
-JDK 6 or higher (the JRE alone is not sufficient)&mdash;JDK 7 is required when
-developing for Android 5.0 and higher. To check if you
-have JDK installed (and which version), open a terminal and type <code>javac -version</code>.
-If the JDK is not available or the version is lower than version 6, download the 
-<a href="http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html" class="external-link"
->Java SE Development Kit 7</a>.</p>
-
-
-<div class="procedure-box">
-
-<p id="instructions-toggle"
-style="float:right;font-size:13px"><a href='' onclick='showAll();return false;'
->[ Show instructions for all platforms ]</a></p>
-
-<div class="win docs" style="display:none">
-
-<p><b>To set up Android Studio on Windows:</b></p>
-  <ol>
-    <li>Launch the <code>.exe</code> file you just downloaded.</li>
-    <li>Follow the setup wizard to install Android Studio and any necessary SDK tools.
-
-    <p>On some Windows systems, the launcher script does not find where Java is installed.
-      If you encounter this problem,
-      you need to set an environment variable indicating the correct location.</p>
-      <p>Select <strong>Start menu > Computer > System Properties >
-      Advanced System Properties</strong>. Then open <strong>Advanced tab > Environment
-      Variables</strong> and add a new system variable <code>JAVA_HOME</code> that points to
-      your JDK folder, for example <code>C:\Program Files\Java\jdk1.7.0_21</code>.</p>
-    </p>
-    </li>
-
-  </ol>
-
-
-<p>The individual tools and other SDK packages are saved outside the Android Studio application
-directory. If you need to access the tools directly, use a terminal to navigate to the location
-where they are installed. For example:</p>
-<p><code>\Users\&lt;user&gt;\sdk\</code></p>
-
-
-
-</div><!-- end windows -->
-
-
-<div class="mac docs" style="display:none">
-
-<p><b>To set up Android Studio on Mac OSX:</b></p>
-  <ol>
-    <li>Launch the {@code .dmg} file you just downloaded.</li>
-    <li>Drag and drop Android Studio into the Applications folder.
-    <li>Open Android Studio and follow the setup wizard to install any necessary SDK tools.
-      <p>
-      Depending on your security settings, when you attempt to open Android Studio, you might
-      see a warning that says the package is damaged and should be moved to the trash. If this
-      happens, go to <strong>System Preferences > Security &amp; Privacy</strong> and under
-      <strong>Allow applications downloaded from</strong>, select <strong>Anywhere</strong>.
-      Then open Android Studio again.</p>
-    </li>
-  </ol>
-
-<p>If you need use the Android SDK tools from a command line,
-you can access them at:</p>
-<p><code>/Users/&lt;user>/Library/Android/sdk/</code></p>
-
-
-</div><!-- end mac -->
-
-
-<div class="linux docs" style="display:none">
-
-<p><b>To set up Android Studio on Linux:</b></p>
-
-  <ol>
-    <li>Unpack the downloaded ZIP file into an
-        appropriate location for your applications.
-    <li>To launch Android Studio, navigate to the {@code android-studio/bin/} directory
-    in a terminal and execute {@code studio.sh}.
-      <p>You may want to add {@code android-studio/bin/} to your PATH environmental
-      variable so that you can start Android Studio from any directory.</p>
-    </li>
-    <li>If the SDK is not already installed, follow the setup wizard to install the SDK and any
-    necessary SDK tools.
-    <p class="note"><strong>Note:</strong> You may also need to install the ia32-libs,
-    lib32ncurses5-dev, and lib32stdc++6 packages. These packages are required to support 32-bit apps
-    on a 64-bit machine. </p>
-    </li>
-  </ol>
-
-</div><!-- end linux -->
-</div><!-- end procedure box -->
-
-<p>Android Studio is now ready and loaded with the Android developer tools, but there are still a
-couple packages you should add to make your Android SDK complete.</p>
-
-<p class="paging-links">
-<a href="{@docRoot}sdk/installing/adding-packages.html" class="next-page-link">
-Continue: Adding SDK Packages</a></p>
-
-
+<div style="float:right;margin:0 0 20px 20px;border:1px solid #ccc;padding:10px">
+<p><strong>Instructions for</strong></p>
+<select id="instructions-option" onchange="showInstructions(this.value)" style="padding:4px">
+  <option value="windows">Windows</option>
+  <option value="mac">Mac</option>
+  <option value="linux">Linux</option>
+</select> 
 </div>
-<!-- ################    END STUDIO    ##################### -->
+
+<p>Setting up Android Studio takes just a few clicks.</p>
+
+<p>While the <a href="{@docRoot}sdk/index.html">Android Studio download</a>
+completes, make sure you have JDK 8 or higher installed. To check which version
+you have, open a command line and type <code>javac -version</code>. If the JDK
+is not available or the version is lower than 1.8, download the <a href=
+"http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html"
+class="external-link">Java SE Development Kit 8</a>.</p>
 
 
+<div id="system-windows" style="display:none">
 
-
-
-
-
-
-
-<!-- ################    JUST SDK TOOLS    ##################### -->
-<div id="tools" heading="Installing the Stand-alone SDK Tools" style="display:none">
-
-
-<p>The stand-alone SDK Tools package does not include a complete Android development environment.
-It includes only the core SDK tools, which you can access from a command line or with a plugin
-for your favorite IDE (if available).</p>
-
-<p>If you didn't download the SDK tools, go <a href="{@docRoot}sdk/index.html#Other"
-><b>download the SDK now</b></a>,
-or switch to the <a href="{@docRoot}sdk/installing/index.html?pkg=studio">Android Studio
-install</a> instructions.</p>
-
-
-<div class="procedure-box">
-<p id="instructions-toggle"
-style="float:right;font-size:13px"><a href='' onclick='showAll();return false;'
->[ Show instructions for all platforms ]</a></p>
-
-<div class="win docs" style="display:none">
-
-<p><b>To get started on Windows:</b></p>
-
-<p>Your download package is an executable file that starts an installer. The installer checks your machine
-  for required tools, such as the proper Java SE Development Kit (JDK) and installs it if necessary.
-  The installer then saves the Android SDK Tools to a specified the location outside of the Android
-  Studio directories.</p>
-
+<p>To install Android Studio on Windows, proceed as follows:</p>
 <ol>
-<li>Double-click the executable ({@code .exe} file) to start the install.</li>
-<li>Make a note of the name and location where you save the SDK on your system&mdash;you will need to
-refer to the SDK directory later when using
-the SDK tools from the command line.</li>
-<li>Once the installation completes, the installer starts the Android SDK Manager.
-</li>
+  <li>Launch the <code>.exe</code> file you downloaded.</li>
+  <li>Follow the setup wizard to install Android Studio and any necessary SDK tools.
+
+  <p>On some Windows systems, the launcher script does not find where the JDK is installed.
+    If you encounter this problem,
+    you need to set an environment variable indicating the correct location.</p>
+    <p>Select <strong>Start menu > Computer > System Properties >
+    Advanced System Properties</strong>. Then open <strong>Advanced tab > Environment
+    Variables</strong> and add a new system variable <code>JAVA_HOME</code> that points to
+    your JDK folder, for example <code>C:\Program Files\Java\jdk1.7.0_21</code>.</p>
+  </p>
+  </li>
 </ol>
 
-</div>
+<p>That's it!
+The following video shows each step of the recommended setup procedure.</p>
 
+<video controls style="margin:20px 0" onclick="this.play()">
+  <source src="https://storage.googleapis.com/androiddevelopers/videos/studio-install-windows.mp4" type="video/mp4">
+</video>
 
+<p>As new tools and other APIs become available, Android Studio will tell you
+with a pop-up, or you can check yourself by clicking <strong>Help &gt;
+Check for Update</strong>.</p>
 
-<div class="mac docs" style="display:none">
-
-<p><b>To get started on Mac OSX:</b></p>
-
-<p>Unpack the ZIP file you've downloaded. By default, it's unpacked
-into a directory named <code>android-sdk-mac_x86</code>. Move it to an appropriate location on your
-machine, such as a "Development" directory in your home directory.</p>
-
-<p>Make a note of the name and location of the SDK directory on your system&mdash;you will need to
-refer to the SDK directory later when using
-the SDK tools from the command line.</p>
 
 </div>
+<!-- end windows -->
 
 
 
+<!-- #### MAC INSTRUCTIONS #### -->
 
-<div class="linux docs" style="display:none">
+<div id="system-mac" style="display:none">
 
-<p><b>To get started on Linux:</b></p>
+<p>To install Android Studio on your Mac, proceed as follows:</p>
 
-<p>Unpack the {@code .zip} file you've downloaded. The SDK files are download separately to a
-user-specified directory. </p>
+<ol>
+  <li>Launch the Android Studio DMG file.</li>
+  <li>Drag and drop Android Studio into the Applications folder, then launch
+    Android Studio.</li>
+  <li>Select whether you want to import previous Android Studio settings,
+    then click <strong>OK</strong>.</li>
+  <li>The Android Studio Setup Wizard will guide you though the rest of the
+    setup procedures in just a few clicks,
+    which includes downloading various Android SDK components
+    that are required for development.</li>
+</ol>
 
-<p>Make a note of the name and location of the SDK directory on your system&mdash;you will need to
-refer to the SDK directory later when using
-the SDK tools from the command line.</p>
+<p>That's it!
+The following video shows each step of the recommended setup procedure.</p>
+
+<video controls style="margin:20px 0" onclick="this.play()">
+  <source src="https://storage.googleapis.com/androiddevelopers/videos/studio-install-mac.mp4" type="video/mp4">
+</video>
+
+<p>
+As new tools and other APIs become available, Android Studio will tell you
+with a pop-up, or you can check yourself by clicking <strong>Android Studio &gt;
+Check for Updates</strong>.</p>
+
+</div>
+<!-- end mac -->
 
 
-<h5 id="Troubleshooting" style="margin-bottom:15px"><a href='' class="expandable"
-  onclick="toggleExpandable(this,'#UbuntuTrouble');return false;"
-  >Troubleshooting Ubuntu</a></h5>
 
-<div id="UbuntuTrouble" style="display:none">
-<ul>
-  <li>If you need help installing and configuring Java on your
-    development machine, you might find these resources helpful:
-    <ul>
-      <li><a href="https://help.ubuntu.com/community/Java">https://help.ubuntu.com/community/Java </a></li>
-      <li><a href="https://help.ubuntu.com/community/Java">https://help.ubuntu.com/community/JavaInstallation</a></li>
-    </ul>
+<!-- #### LINUX INSTRUCTIONS #### -->
+
+<div id="system-linux" style="display:none">
+
+
+<p>To install Android Studio on Linux, proceed as follows:</p>
+
+<ol>
+  <li>Unpack the <code>.zip</code> file you downloaded to an
+      appropriate location for your applications, such as within
+      <code>/usr/local/</code> for your user profile, or <code>/opt/</code>
+      for shared users.
+  <li>To launch Android Studio, open a terminal,
+    navigate to the <code>android-studio/bin/</code> directory,
+   and execute <code>studio.sh</code>.
+    <p><strong>Tip:</strong>
+    Add <code>android-studio/bin/</code> to your <code>PATH</code> environment
+    variable so you can start Android Studio from any directory.</p>
   </li>
-  <li>Here are the steps to install Java:
-    <ol>
-      <li><p>If you are running a 64-bit distribution on your development
-      machine, you need to install additional packages first. For Ubuntu 13.10 (Saucy Salamander)
-      and above, install the <code>libncurses5:i386</code>, <code>libstdc++6:i386</code>, and
-      <code>zlib1g:i386</code> packages using <code>apt-get</code>:</p>
-      <pre class="no-pretty-print">sudo dpkg --add-architecture i386
-sudo apt-get update
-sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386</pre>
-      <p>For earlier versions of Ubuntu, install the <code>ia32-libs</code> package using
-      <code>apt-get</code>:</p>
-      <pre class="no-pretty-print">apt-get install ia32-libs</pre>
-      </li>
-      <li>Next, install Java: <pre class="no-pretty-print">apt-get install sun-java6-jdk</pre></li>
-    </ol>
+  <li>Select whether you want to import previous Android Studio settings
+    or not, then click <strong>OK</strong>.</li>
+  <li>The Android Studio Setup Wizard will guide you though the rest of the
+    setup procedures in just a few clicks,
+    which includes downloading various Android SDK components
+    that are required for development.</li>
   </li>
-</ul>
-</div><!-- end ubuntu trouble -->
+</ol>
 
+<p>That's it!
+The following video shows each step of the recommended setup procedure.</p>
+
+<video controls style="margin:20px 0" onclick="this.play()">
+  <source src="https://storage.googleapis.com/androiddevelopers/videos/studio-install-linux.mp4" type="video/mp4">
+</video>
+
+<p>As new tools and other APIs become available, Android Studio will tell you
+with a pop-up, or you can check yourself by clicking <strong>Help &gt;
+Check for Update</strong>.</p>
+
+  <p class="note"><strong>Note:</strong> To support 32-bit apps
+  on a 64-bit machine, you will need to install the ia32-libs,
+  lib32ncurses5-dev, and lib32stdc++6 packages.</p>
 
 </div><!-- end linux -->
-</div><!-- end procedure box -->
 
 
-<p>The Android SDK tools are now ready to begin developing apps, but there are still a
-couple packages you should add to make your Android SDK complete.</p>
 
-<p class="paging-links">
-<a href="{@docRoot}sdk/installing/adding-packages.html" class="next-page-link">
-Continue: Adding SDK Packages</a></p>
 
+<h2>Start building apps</h2>
+
+<div class="cols" style="padding:10px 0">
+<div class="col-2of6">
+<img src="{@docRoot}images/tools/studio/ic_devices_grey.png"
+  style="width:100%;background:#eee;margin:0" />
+<h3>Build your first app</h3>
+<p>Get started quickly and learn the basics of Android by following
+the guide to <strong><a href="{@docRoot}training/basics/firstapp/index.html"
+>Building Your First App</a></strong>.</p>
 
 </div>
-<!-- ################    END JUST TOOLS    ##################### -->
-
-
-
-
-
-
-
-
-
-
-<!-- ################    DEFAULT    ##################### -->
-
-
-<div id="default" style="display:none">
-
-<p>If you haven't already, <b><a href="{@docRoot}sdk/index.html">download
-the Android SDK bundle for Android Studio</a></b> or the
-<a href="{@docRoot}sdk/index.html#Other">stand-alone SDK Tools</a>. </p>
-
-<p>Then, select which SDK bundle you want to install:</p>
-
-<div class="cols" style="margin:30px 0 60px">
-
-<div class="col-4">
-<a href="{@docRoot}sdk/installing/index.html?pkg=studio" class="landing-button landing-secondary">
-Android Studio
-</a>
-</div>
-
-<div class="col-4">
-<a href="{@docRoot}sdk/installing/index.html?pkg=tools" class="landing-button landing-secondary">
-Stand-alone SDK Tools
-</a>
-</div>
-</div>
-
-<p></p>
-
-<div>
-<p></p>
+<div class="col-2of6">
+<img src="{@docRoot}images/tools/studio/ic_school_grey.png"
+  style="width:100%;background:#eee;margin:0" />
+<h3>Learn with Udacity</h3>
+<p>Ramp up on Android with interactive video training in the
+<strong><a href="https://www.udacity.com/course/developing-android-apps--ud853">Android Fundamentals Udacity course</a></strong>.</p>
 
 </div>
+<div class="col-2of6">
+<img src="{@docRoot}images/tools/studio/ic_explore_grey.png"
+  style="width:100%;background:#eee;margin:0" />
+<h3>Explore Studio</h3>
+<p>Discover powerful Android Studio features and developer strategies in the
+<strong><a href="{@docRoot}tools/studio/index.html">Android Studio Introduction</a></strong>.</p>
 
 </div>
-<!-- ################    END DEFAULT    ##################### -->
-
-
-
-
+</div><!-- end cols -->
 
 
 <script>
-
-// Show proper instructions based on downloaded SDK package
-var package = getUrlParam("pkg");
-if (package == "tools") {
-  // Show the SDK Tools (other IDE) instructions
-  $("h1").text($("#tools").attr('heading'));
-  $("#tools").show();
-} else if (package == "studio") {
-  // Show the Android Studio instructions
-  $("h1").text($("#studio").attr('heading'));
-  $("#studio").show();
-} else {
-  // Show the default page content so user can select their setup
-  $("#default").show();
-}
-
-// Show the proper instructions based on machine OS
-var $osDocs;
-if (navigator.appVersion.indexOf("Win")!=-1) {
-  $osDocs = $('.win');
-} else if (navigator.appVersion.indexOf("Mac")!=-1) {
-  $osDocs = $('.mac');
-} else if (navigator.appVersion.indexOf("Linux")!=-1) {
-  $osDocs = $('.linux');
-}
-
-if ($osDocs.length) {
-  // reveal only the docs for this OS
-  $osDocs.show();
-} else {
-  // not running a compatible OS, so just show all the docs
-  $('.docs').show();
-}
-
-
-/* Shows all the machine OS instructions */
-function showAll() {
-  $('.docs').show();
-  $("#instructions-toggle").hide();
-}
-
-/* Returns the value for the given URL parameter */
-function getUrlParam(param) {
-  var url = window.location.search.substring(1);
-  var variables = url.split('&');
-  for (var i = 0; i < variables.length; i++) {
-    var paramName = variables[i].split('=');
-    if (escape(paramName[0]) == param) {
-      return escape(paramName[1]);
-    }
+/** Show the appropriate instructions for user **/
+function showInstructions(system) {
+  $("[id^=system-]").hide(); // hide all of them first
+  if (system == "linux") {
+    $("#system-linux").show();
+  } else if (system == "mac") {
+    $("#system-mac").show();
+  } else {
+    $("#system-windows").show();
   }
+  $("select#instructions-option").val(system);
 }
 
-/* direct link to ubuntu troubleshooting */
-if ( document.location.href.indexOf('#UbuntuTrouble') > -1 ) {
-  $(".linux.docs").show();
-  toggleExpandable(this,'#UbuntuTrouble');
+// Get operating system based on the user agent, default windows
+var os = "windows";
+if (navigator.appVersion.indexOf("Linux")!=-1) {
+  os = "linux";
+} else if (navigator.appVersion.indexOf("Mac")!=-1) {
+  os = "mac";
 }
+showInstructions(os);
 </script>
diff --git a/docs/html/sdk/installing/installing-adt.jd b/docs/html/sdk/installing/installing-adt.jd
deleted file mode 100644
index b89c068..0000000
--- a/docs/html/sdk/installing/installing-adt.jd
+++ /dev/null
@@ -1,160 +0,0 @@
-page.title=Installing the Eclipse Plugin
-adt.zip.version=23.0.6
-adt.zip.download=ADT-23.0.6.zip
-adt.zip.bytes=103344298
-adt.zip.checksum=f64b7e50c84799f41c642218c35f1bbe
-
-@jd:body
-
-
-<p class="caution">
-  <strong>Important:</strong> Support for the Android Developer Tools (ADT) in Eclipse is ending,
-  per our <a href=
-  "http://android-developers.blogspot.com/2015/06/an-update-on-eclipse-android-developer.html"
-  class="external-link">announcement</a>. You should migrate your app development projects to
-  Android Studio as soon as possible. For more information on transitioning to Android Studio, see
-  <a href="{@docRoot}sdk/installing/migrate.html">Migrating to Android Studio</a>.
-</p>
-
-<p>Android offers a custom plugin for the Eclipse IDE, called Android
-Development Tools (ADT). This plugin provides a powerful, integrated
-environment in which to develop Android apps. It extends the capabilities
-of Eclipse to let you quickly set up new Android projects, build an app
-UI, debug your app, and export signed (or unsigned) app packages (APKs) for distribution.
-</p>
-
-<p>You should install the ADT plugin
-only if you already have an Eclipse installation that you want to continue using.
-Your existing Eclipse installation must meet these requirements:</p>
-    <ul>
-      <li><a href="http://eclipse.org/mobile/">Eclipse</a> 3.7.2 (Indigo) or greater
-<p class="note"><strong>Note:</strong> Eclipse 3.6 (Helios) is no longer
-supported with the latest version of ADT.</p></li>
-      <li>Eclipse <a href="http://www.eclipse.org/jdt">JDT</a> plugin (included
-in most Eclipse IDE packages) </li>
-      <li><a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">JDK 6</a>
-        (JRE alone is not sufficient)</li>
-      <li><strong>Not</strong> compatible with GNU Compiler for Java (gcj)</li>
-    </ul>
-
-
-<h2 id="Download">Download the ADT Plugin</h2>
-
-<p>To add the ADT plugin to Eclipse:</p>
-<ol>
-    <li>Start Eclipse, then select <strong>Help</strong> &gt; <strong>Install New
-Software</strong>.</li>
-    <li>Click <strong>Add</strong>, in the top-right corner.</li>
-    <li>In the Add Repository dialog that appears, enter "ADT Plugin" for the <em>Name</em> and the
-following URL for the <em>Location</em>:
-      <pre>https://dl-ssl.google.com/android/eclipse/</pre>
-      <p class="note"><strong>Note:</strong> The Android Developer Tools update site requires
-      a secure connection. Make sure the update site URL you enter starts with HTTPS.</p>
-    </li>
-    <li>Click <strong>OK</strong>.</li>
-    <li>In the Available Software dialog, select the checkbox next to Developer Tools and click
-<strong>Next</strong>.</li>
-    <li>In the next window, you'll see a list of the tools to be downloaded. Click
-<strong>Next</strong>. </li>
-    <li>Read and accept the license agreements, then click <strong>Finish</strong>.
-      <p>If you get a security warning saying that the authenticity or validity of
-the software can't be established, click <strong>OK</strong>.</p></li>
-    <li>When the installation completes, restart Eclipse. </li>
-</ol>
-
-
-
-<h2 id="Configure">Configure the ADT Plugin</h2>
-
-<p>Once Eclipse restarts, you
-  must specify the location of your Android SDK directory:</p>
-
-<ol>
-    <li>In the "Welcome to Android Development" window that appears, select <strong>Use
-existing SDKs</strong>.</li>
-    <li>Browse and select the location of the Android SDK directory you recently
-downloaded and unpacked.</li>
-    <li>Click <strong>Next</strong>.</li>
-</ol>
-
-<p>Your Eclipse IDE is now set up to develop Android apps, but you need to add
-the latest SDK platform tools and an Android platform to your environment.
-To get these packages for your SDK, continue to
-<a href="{@docRoot}sdk/installing/adding-packages.html">Adding Platforms and Packages</a>.</p>
-
-
-<h2 id="Troubleshooting">Troubleshooting ADT Installation</h2>
-
-<p>If you are having trouble downloading the ADT plugin after following the
-steps above and you are behind a firewall (such as a corporate firewall), make sure that
-you have properly configured your proxy settings in Eclipse. In Eclipse,
-you can configure proxy information from the main Eclipse menu in
-<strong>Window</strong> (on Mac OS X, <strong>Eclipse</strong>) &gt;
-<strong>Preferences</strong> &gt; <strong>General</strong> &gt; <strong>Network
-Connections</strong>.
-</p>
-
-<p>If you are still unable to use Eclipse to download the ADT plugin as a
-remote update site, you can download the ADT zip file to your local machine and
-manually install it:</p>
-
-<ol>
-  <li>Download the ADT Plugin zip file (do not unpack it):
-
-  <table class="download">
-    <tr>
-      <th>Package</th>
-      <th>Size</th>
-      <th>MD5 Checksum</th>
-  </tr>
-  <tr>
-    <td>
-      <a href="https://dl.google.com/android/{@adtZipDownload}">{@adtZipDownload}</a>
-    </td>
-    <td>{@adtZipBytes} bytes</td>
-    <td>{@adtZipChecksum}</td>
-  </tr>
-</table>
-</li>
-
-</li>
-  <li>Start Eclipse, then select <strong>Help</strong> &gt; <strong>Install New
-Software</strong>.</li>
-  <li>Click <strong>Add</strong>, in the top-right corner.</li>
-  <li>In the Add Repository dialog, click <strong>Archive</strong>.</li>
-  <li>Select the downloaded {@adtZipDownload} file and click <strong>OK</strong>.</li>
-  <li>Enter "ADT Plugin" for the name and click <strong>OK</strong>.
-  <li>In the Available Software dialog, select the checkbox next to Developer Tools and click
-<strong>Next</strong>.</li>
-  <li>In the next window, you'll see a list of the tools to be downloaded. Click
-<strong>Next</strong>. </li>
-  <li>Read and accept the license agreements, then click <strong>Finish</strong>.
-    <p>If you get a security warning saying that the authenticity or validity of
-the software can't be established, click <strong>OK</strong>.</p></li>
-  <li>When the installation completes, restart Eclipse. </li>
-</ol>
-
-<p>To update your plugin once you've installed using the zip file, you will have
-to follow these steps again instead of the default update instructions.</p>
-
-<h4>Other install errors</h4>
-
-<p>Note that there are features of ADT that require some optional
-Eclipse packages (for example, WST). If you encounter an error when
-installing ADT, your Eclipse installation might not include these packages.
-For information about how to quickly add the necessary packages to your
-Eclipse installation, see the troubleshooting topic
-<a href="{@docRoot}resources/faq/troubleshooting.html#installeclipsecomponents">ADT
-Installation Error: "requires plug-in org.eclipse.wst.sse.ui"</a>.</p>
-
-<h4>For Linux users</h4>
-<p>If you encounter this error when installing the ADT Plugin for Eclipse:
-<pre>
-An error occurred during provisioning.
-Cannot connect to keystore.
-JKS</pre>
-<p>
-...then your development machine lacks a suitable Java VM. Installing Sun
-Java 6 will resolve this issue and you can then reinstall the ADT
-Plugin.</p>
-
diff --git a/docs/html/sdk/installing/migrate.jd b/docs/html/sdk/installing/migrate.jd
index 6dedad6..61e6798 100644
--- a/docs/html/sdk/installing/migrate.jd
+++ b/docs/html/sdk/installing/migrate.jd
@@ -1,4 +1,4 @@
-page.title=Migrating to Android Studio
+page.title=Migrating from Eclipse ADT
 
 @jd:body
 
diff --git a/docs/html/sdk/installing/studio-build.jd b/docs/html/sdk/installing/studio-build.jd
old mode 100644
new mode 100755
index b68b176..a486817
--- a/docs/html/sdk/installing/studio-build.jd
+++ b/docs/html/sdk/installing/studio-build.jd
@@ -13,7 +13,6 @@
    <li><a href="{@docRoot}sdk/installing/studio.html">
    Getting Started with Android Studio</a></li>
    <li><a href="{@docRoot}tools/studio/index.html">Android Studio Basics</a></li>
-   <li><a href="{@docRoot}sdk/installing/migrate.html">Migrating from Eclipse</a></li>
 </div>
 </div>
 
@@ -85,7 +84,7 @@
     usage when the application is -running on a device.</li>
   </ul>
 
-<p class="note"><b>Note:</b> Apps are limited to a 64K method reference limit. If your app reaches
+<p class="note"><b>Note:</b> Apps are limited to a 65K method reference limit. If your app reaches
 this limit, the build process outputs the following error message:
 
 <pre>Unable to execute dex: method ID not in [0, 0xffff]: 65536.</pre>
diff --git a/docs/html/sdk/installing/studio-layout.jd b/docs/html/sdk/installing/studio-layout.jd
index f0e5d59..60cbcb3 100644
--- a/docs/html/sdk/installing/studio-layout.jd
+++ b/docs/html/sdk/installing/studio-layout.jd
@@ -132,6 +132,15 @@
 <p>Within the graphical editor, you can rearrange your app's UI by dragging widgets to
 the desired location.</p>
 
+<h3>Multi-API Version Rendering</h3>
+
+<p>Android Studio supports multi-API version rendering. When you click the Android version icon <img src="{@docRoot}images/tools/as-api-level-preview.png" style="vertical-align:bottom;margin:0;height:19px" /> in the <b>Design</b> view,
+Android Studio allows you to preview your Android layouts across multiple Android API levels.
+</p>
+
+<p><img src="{@docRoot}images/tools/studio-api-version-rendering.png" /></p>
+    <p class="img-caption"><strong>Figure 7.</strong> Multi-API version rendering.</p>
+
 <h3>Taking a snapshot</h3>
 
 <p>When you run your app on a connected device, you can take a snapshot of it by clicking
diff --git a/docs/html/sdk/installing/studio-tips.jd b/docs/html/sdk/installing/studio-tips.jd
index b8511a4..4cd6f8c 100644
--- a/docs/html/sdk/installing/studio-tips.jd
+++ b/docs/html/sdk/installing/studio-tips.jd
@@ -1,4 +1,8 @@
 page.title=Android Studio Tips and Tricks
+page.image=images/tools/studio-previewall.png
+page.metaDescription=Tips to help you get started with Android Studio's most common tasks and productivity enhancements.
+page.tags=studio,tips
+meta.tags="studio", "tools"
 @jd:body
 
 <div id="qv-wrapper">
@@ -204,7 +208,7 @@
 <p>With language injection, the Android Studio IDE allows you to work with islands of different
 languages embedded in the source code. This extends the syntax, error highlighting and coding
 assistance to the embedded language. This can be especially useful for checking regular expression
-values inline, and validating XML and SQL statements.</p>
+values inline and validating XML.</p>
 
 
 <h3>Code folding</h3>
diff --git a/docs/html/sdk/sdk_vars.cs b/docs/html/sdk/sdk_vars.cs
new file mode 100644
index 0000000..449935e
--- /dev/null
+++ b/docs/html/sdk/sdk_vars.cs
@@ -0,0 +1,62 @@
+<?cs
+set:studio.version='1.5.1.0' ?><?cs
+set:studio.release.date='April 4, 2016' ?><?cs
+
+
+set:studio.linux_bundle_download='android-studio-ide-141.2456560-linux.zip' ?><?cs
+set:studio.linux_bundle_bytes='380943097' ?><?cs
+set:studio.linux_bundle_checksum='b8460a2197abe26979d88e3b01b3c8bfd80a37db' ?><?cs
+
+set:studio.mac_bundle_download='android-studio-ide-141.2456560-mac.dmg' ?><?cs
+set:studio.mac_bundle_bytes='367456698' ?><?cs
+set:studio.mac_bundle_checksum='d0807423985757195ad5ae4717d580deeba1dbd8' ?><?cs
+
+set:studio.win_bundle_download='android-studio-ide-141.2456560-windows.zip' ?><?cs
+set:studio.win_bundle_bytes='375635150' ?><?cs
+set:studio.win_bundle_checksum='64882fb967f960f2142de239200104cdc9b4c75b' ?><?cs
+
+set:studio.win_bundle_exe_download='android-studio-bundle-141.2456560-windows.exe' ?><?cs
+set:studio.win_bundle_exe_bytes='1209163328' ?><?cs
+set:studio.win_bundle_exe_checksum='6ffe608b1dd39041a578019eb3fedb5ee62ba545' ?><?cs
+
+set:studio.win_notools_exe_download='android-studio-ide-141.2456560-windows.exe' ?><?cs
+set:studio.win_notools_exe_bytes='351419656' ?><?cs
+set:studio.win_notools_exe_checksum='8d016b90bf04ebac6ce548b1976b0c8a4f46b5f9' ?><?cs
+
+
+set:sdk.linux_download='android-sdk_r24.4.1-linux.tgz' ?><?cs
+set:sdk.linux_bytes='326412652' ?><?cs
+set:sdk.linux_checksum='725bb360f0f7d04eaccff5a2d57abdd49061326d' ?><?cs
+
+set:sdk.mac_download='android-sdk_r24.4.1-macosx.zip' ?><?cs
+set:sdk.mac_bytes='102781947' ?><?cs
+set:sdk.mac_checksum='85a9cccb0b1f9e6f1f616335c5f07107553840cd' ?><?cs
+
+set:sdk.win_download='android-sdk_r24.4.1-windows.zip' ?><?cs
+set:sdk.win_bytes='199701062' ?><?cs
+set:sdk.win_checksum='66b6a6433053c152b22bf8cab19c0f3fef4eba49' ?><?cs
+set:sdk.win_installer='installer_r24.4.1-windows.exe' ?><?cs
+set:sdk.win_installer_bytes='151659917' ?><?cs
+set:sdk.win_installer_checksum='f9b59d72413649d31e633207e31f456443e7ea0b' ?><?cs
+
+
+set:ndk.mac64_download='android-ndk-r11c-darwin-x86_64.zip' ?><?cs
+set:ndk.mac64_bytes='772428792' ?><?cs
+set:ndk.mac64_checksum='4ce8e7ed8dfe08c5fe58aedf7f46be2a97564696' ?><?cs
+
+set:ndk.linux64_download='android-ndk-r11c-linux-x86_64.zip' ?><?cs
+set:ndk.linux64_bytes='794135138' ?><?cs
+set:ndk.linux64_checksum='de5ce9bddeee16fb6af2b9117e9566352aa7e279' ?><?cs
+
+set:ndk.win64_download='android-ndk-r11c-windows-x86_64.zip' ?><?cs
+set:ndk.win64_bytes='771407642' ?><?cs
+set:ndk.win64_checksum='3d89deb97b3191c7e5555f1313ad35059479f071' ?><?cs
+set:ndk.win32_download='android-ndk-r11c-windows-x86.zip' ?><?cs
+set:ndk.win32_bytes='728899082' ?><?cs
+set:ndk.win32_checksum='ff939bde6cd374eecbd2c3b2ad218697f9a5038c'
+?>
+<?cs
+def:size_in_mb(bytes)
+  ?><?cs set:mb = bytes / 1024 / 1024
+  ?><?cs var:mb ?><?cs
+/def ?>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes.html b/docs/html/sdk/support_api_diff/23.1.0/changes.html
new file mode 100644
index 0000000..49f3552
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes.html
@@ -0,0 +1,45 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<!-- on Thu Oct 15 12:23:06 BST 2015 -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Support&nbsp;Library&nbsp;API&nbsp;Differences&nbsp;Report
+</TITLE>
+<link href="../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</head>
+<frameset cols="242,**" framespacing="1" frameborder="yes" border="1" bordercolor="#e9e9e9"> 
+<frameset rows="174,**" framespacing="1" frameborder="yes"  border="1" bordercolor="#e9e9e9">
+    <frame src="changes/jdiff_topleftframe.html" scrolling="no" name="topleftframe" frameborder="1">
+    <frame src="changes/alldiffs_index_all.html" scrolling="auto" name="bottomleftframe" frameborder="1">
+  </frameset>
+  <frame src="changes/changes-summary.html" scrolling="auto" name="rightframe" frameborder="1">
+</frameset>
+<noframes>
+<h2>
+Frame Alert
+</h2>
+
+<p>
+This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
+<br>
+Link to <a href="changes/changes-summary.html" target="_top">Non-frame version.</A>
+</noframes>
+</html>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_additions.html b/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_additions.html
new file mode 100644
index 0000000..5495f89
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_additions.html
@@ -0,0 +1,1118 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+All Additions Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for All Differences" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="alldiffs_index_all.html" xclass="hiddenlink">All Differences</a>
+  <br>
+<A HREF="alldiffs_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<b>Additions</b>
+  <br>
+<A HREF="alldiffs_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<!-- Field abc_alert_dialog_button_bar_material -->
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.layout.html#android.support.v7.appcompat.R.layout.abc_alert_dialog_button_bar_material" class="hiddenlink" target="rightframe">abc_alert_dialog_button_bar_material</A>
+</nobr><br>
+<!-- Field abc_allow_stacked_button_bar -->
+<nobr><A HREF="android.support.v7.appcompat.R.bool.html#android.support.v7.appcompat.R.bool.abc_allow_stacked_button_bar" class="hiddenlink" target="rightframe">abc_allow_stacked_button_bar</A>
+</nobr><br>
+<!-- Field abc_btn_default_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_default_material" class="hiddenlink" target="rightframe">abc_btn_default_material</A>
+</nobr><br>
+<!-- Field abc_capital_off -->
+<nobr><A HREF="android.support.v7.appcompat.R.string.html#android.support.v7.appcompat.R.string.abc_capital_off" class="hiddenlink" target="rightframe">abc_capital_off</A>
+</nobr><br>
+<!-- Field abc_capital_on -->
+<nobr><A HREF="android.support.v7.appcompat.R.string.html#android.support.v7.appcompat.R.string.abc_capital_on" class="hiddenlink" target="rightframe">abc_capital_on</A>
+</nobr><br>
+<!-- Field abc_dialog_fixed_height_major -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_height_major" class="hiddenlink" target="rightframe">abc_dialog_fixed_height_major</A>
+</nobr><br>
+<!-- Field abc_dialog_fixed_height_minor -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_height_minor" class="hiddenlink" target="rightframe">abc_dialog_fixed_height_minor</A>
+</nobr><br>
+<!-- Field abc_dialog_fixed_width_major -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_width_major" class="hiddenlink" target="rightframe">abc_dialog_fixed_width_major</A>
+</nobr><br>
+<!-- Field abc_dialog_fixed_width_minor -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_width_minor" class="hiddenlink" target="rightframe">abc_dialog_fixed_width_minor</A>
+</nobr><br>
+<!-- Field abc_scrubber_control_off_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_off_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_control_off_mtrl_alpha</A>
+</nobr><br>
+<!-- Field abc_scrubber_control_to_pressed_mtrl_000 -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_to_pressed_mtrl_000" class="hiddenlink" target="rightframe">abc_scrubber_control_to_pressed_mtrl_000</A>
+</nobr><br>
+<!-- Field abc_scrubber_control_to_pressed_mtrl_005 -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_to_pressed_mtrl_005" class="hiddenlink" target="rightframe">abc_scrubber_control_to_pressed_mtrl_005</A>
+</nobr><br>
+<!-- Field abc_scrubber_primary_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_primary_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_primary_mtrl_alpha</A>
+</nobr><br>
+<!-- Field abc_scrubber_track_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_track_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_track_mtrl_alpha</A>
+</nobr><br>
+<!-- Field abc_seekbar_thumb_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_seekbar_thumb_material" class="hiddenlink" target="rightframe">abc_seekbar_thumb_material</A>
+</nobr><br>
+<!-- Field abc_seekbar_track_background_height_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_seekbar_track_background_height_material" class="hiddenlink" target="rightframe">abc_seekbar_track_background_height_material</A>
+</nobr><br>
+<!-- Field abc_seekbar_track_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_seekbar_track_material" class="hiddenlink" target="rightframe">abc_seekbar_track_material</A>
+</nobr><br>
+<!-- Field abc_seekbar_track_progress_height_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_seekbar_track_progress_height_material" class="hiddenlink" target="rightframe">abc_seekbar_track_progress_height_material</A>
+</nobr><br>
+<!-- Field abc_select_dialog_padding_start_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_select_dialog_padding_start_material" class="hiddenlink" target="rightframe">abc_select_dialog_padding_start_material</A>
+</nobr><br>
+<!-- Method add -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.add_added(android.app.FragmentManager, android.support.v17.leanback.app.GuidedStepFragment, int)" class="hiddenlink" target="rightframe"><b>add</b>
+(<code>FragmentManager, GuidedStepFragment, int</code>)</A></nobr><br>
+<!-- Method addAsRoot -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.addAsRoot_added(android.app.Activity, android.support.v17.leanback.app.GuidedStepFragment, int)" class="hiddenlink" target="rightframe"><b>addAsRoot</b>
+(<code>Activity, GuidedStepFragment, int</code>)</A></nobr><br>
+<!-- Method addGroupMemberId -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberId_added(java.lang.String)" class="hiddenlink" target="rightframe"><b>addGroupMemberId</b>
+(<code>String</code>)</A></nobr><br>
+<!-- Method addGroupMemberIds -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberIds_added(java.util.Collection<java.lang.String>)" class="hiddenlink" target="rightframe"><b>addGroupMemberIds</b>
+(<code>Collection&lt;String&gt;</code>)</A></nobr><br>
+<!-- Field allowStacking -->
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.allowStacking" class="hiddenlink" target="rightframe">allowStacking</A>
+</nobr><br>
+<!-- Class AppBarLayout.Behavior.DragCallback -->
+<A HREF="pkg_android.support.design.widget.html#AppBarLayout.Behavior.DragCallback" class="hiddenlink" target="rightframe"><b>AppBarLayout.Behavior.DragCallback</b></A><br>
+<!-- Constructor AppBarLayout.Behavior.SavedState -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html#android.support.design.widget.AppBarLayout.Behavior.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>AppBarLayout.Behavior.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Field aspectRatio -->
+<nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html#android.support.percent.PercentLayoutHelper.PercentLayoutInfo.aspectRatio" class="hiddenlink" target="rightframe">aspectRatio</A>
+</nobr><br>
+<!-- Field Base_Widget_AppCompat_ImageButton -->
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_ImageButton" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_ImageButton</A>
+</nobr><br>
+<!-- Field Base_Widget_AppCompat_SeekBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_SeekBar" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_SeekBar</A>
+</nobr><br>
+<!-- Class BundleCompat -->
+<A HREF="pkg_android.support.v4.app.html#BundleCompat" class="hiddenlink" target="rightframe"><b>BundleCompat</b></A><br>
+<!-- Field ButtonBarLayout_allowStacking -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.ButtonBarLayout_allowStacking" class="hiddenlink" target="rightframe">ButtonBarLayout_allowStacking</A>
+</nobr><br>
+<!-- Field CARD_TYPE_FLAG_CONTENT -->
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_CONTENT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_CONTENT</A>
+</nobr><br>
+<!-- Field CARD_TYPE_FLAG_ICON_LEFT -->
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_ICON_LEFT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_ICON_LEFT</A>
+</nobr><br>
+<!-- Field CARD_TYPE_FLAG_ICON_RIGHT -->
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_ICON_RIGHT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_ICON_RIGHT</A>
+</nobr><br>
+<!-- Field CARD_TYPE_FLAG_IMAGE_ONLY -->
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_IMAGE_ONLY" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_IMAGE_ONLY</A>
+</nobr><br>
+<!-- Field CARD_TYPE_FLAG_TITLE -->
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_TITLE" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_TITLE</A>
+</nobr><br>
+<!-- Method clearRegion -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.clearRegion_added()" class="hiddenlink" target="rightframe"><b>clearRegion</b>
+()</A></nobr><br>
+<!-- Field CONNECTION_STATE_CONNECTED -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_CONNECTED" class="hiddenlink" target="rightframe">CONNECTION_STATE_CONNECTED</A>
+</nobr><br>
+<!-- Field CONNECTION_STATE_CONNECTING -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_CONNECTING" class="hiddenlink" target="rightframe">CONNECTION_STATE_CONNECTING</A>
+</nobr><br>
+<!-- Field CONNECTION_STATE_DISCONNECTED -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_DISCONNECTED" class="hiddenlink" target="rightframe">CONNECTION_STATE_DISCONNECTED</A>
+</nobr><br>
+<!-- Constructor CoordinatorLayout.SavedState -->
+<nobr><A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html#android.support.design.widget.CoordinatorLayout.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>CoordinatorLayout.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Method createEntranceTransition -->
+<i>createEntranceTransition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method createEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method createEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method createEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method createEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<!-- Method createEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<!-- Method createShadowOverlayOptions -->
+<i>createShadowOverlayOptions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.createShadowOverlayOptions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.ListRowPresenter
+</A></nobr><br>
+<!-- Method createShadowOverlayOptions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.createShadowOverlayOptions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.VerticalGridPresenter
+</A></nobr><br>
+<!-- Field DEVICE_TYPE_SPEAKER -->
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.DEVICE_TYPE_SPEAKER" class="hiddenlink" target="rightframe">DEVICE_TYPE_SPEAKER</A>
+</nobr><br>
+<!-- Field DEVICE_TYPE_TV -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.DEVICE_TYPE_TV" class="hiddenlink" target="rightframe">DEVICE_TYPE_TV</A>
+</nobr><br>
+<!-- Method displayCompletions -->
+<i>displayCompletions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.SearchFragment.html#android.support.v17.leanback.app.SearchFragment.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.SearchFragment
+</A></nobr><br>
+<!-- Method displayCompletions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.SearchSupportFragment.html#android.support.v17.leanback.app.SearchSupportFragment.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.SearchSupportFragment
+</A></nobr><br>
+<!-- Method displayCompletions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.SearchBar.html#android.support.v17.leanback.widget.SearchBar.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.SearchBar
+</A></nobr><br>
+<!-- Method editable -->
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editable_added(boolean)" class="hiddenlink" target="rightframe"><b>editable</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method editTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editTitle_added(java.lang.String)" class="hiddenlink" target="rightframe"><b>editTitle</b>
+(<code>String</code>)</A></nobr><br>
+<!-- Method enableUrlBarHiding -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.enableUrlBarHiding_added()" class="hiddenlink" target="rightframe"><b>enableUrlBarHiding</b>
+()</A></nobr><br>
+<!-- Field EXTRA_ENABLE_URLBAR_HIDING -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_ENABLE_URLBAR_HIDING" class="hiddenlink" target="rightframe">EXTRA_ENABLE_URLBAR_HIDING</A>
+</nobr><br>
+<!-- Field EXTRA_TINT_ACTION_BUTTON -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_TINT_ACTION_BUTTON" class="hiddenlink" target="rightframe">EXTRA_TINT_ACTION_BUTTON</A>
+</nobr><br>
+<!-- Field EXTRA_UI_STYLE -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.EXTRA_UI_STYLE" class="hiddenlink" target="rightframe">EXTRA_UI_STYLE</A>
+</nobr><br>
+<!-- Class FloatingActionButton.OnVisibilityChangedListener -->
+<A NAME="F"></A>
+<br><font size="+2">F</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.design.widget.html#FloatingActionButton.OnVisibilityChangedListener" class="hiddenlink" target="rightframe"><b>FloatingActionButton.OnVisibilityChangedListener</b></A><br>
+<!-- Method getCollapsedTitleTypeface -->
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getCollapsedTitleTypeface_added()" class="hiddenlink" target="rightframe"><b>getCollapsedTitleTypeface</b>
+()</A></nobr><br>
+<!-- Method getColor -->
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColor_added(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>getColor</b>
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<!-- Method getColorStateList -->
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColorStateList_added(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>getColorStateList</b>
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<!-- Method getConnectionState -->
+<i>getConnectionState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getConnectionState_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+<!-- Method getConnectionState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getConnectionState_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<!-- Method getContainerIdForBackground -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getContainerIdForBackground_added()" class="hiddenlink" target="rightframe"><b>getContainerIdForBackground</b>
+()</A></nobr><br>
+<!-- Method getCounterMaxLength -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.getCounterMaxLength_added()" class="hiddenlink" target="rightframe"><b>getCounterMaxLength</b>
+()</A></nobr><br>
+<!-- Method getDeviceType -->
+<i>getDeviceType</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getDeviceType_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+<!-- Method getDeviceType -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getDeviceType_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<!-- Method getEditableTitleView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditableTitleView_added()" class="hiddenlink" target="rightframe"><b>getEditableTitleView</b>
+()</A></nobr><br>
+<!-- Method getEditTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getEditTitle_added()" class="hiddenlink" target="rightframe"><b>getEditTitle</b>
+()</A></nobr><br>
+<!-- Method getExpandedTitleTypeface -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleTypeface_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleTypeface</b>
+()</A></nobr><br>
+<!-- Method getGroupMemberIds -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getGroupMemberIds_added()" class="hiddenlink" target="rightframe"><b>getGroupMemberIds</b>
+()</A></nobr><br>
+<!-- Method getIconUri -->
+<i>getIconUri</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getIconUri_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+<!-- Method getIconUri -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getIconUri_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<!-- Method getKeepChildForeground -->
+<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.getKeepChildForeground_added()" class="hiddenlink" target="rightframe"><b>getKeepChildForeground</b>
+()</A></nobr><br>
+<!-- Method getMaxLines -->
+<nobr><A HREF="android.support.v4.widget.TextViewCompat.html#android.support.v4.widget.TextViewCompat.getMaxLines_added(android.widget.TextView)" class="hiddenlink" target="rightframe"><b>getMaxLines</b>
+(<code>TextView</code>)</A></nobr><br>
+<!-- Method getMinLines -->
+<nobr><A HREF="android.support.v4.widget.TextViewCompat.html#android.support.v4.widget.TextViewCompat.getMinLines_added(android.widget.TextView)" class="hiddenlink" target="rightframe"><b>getMinLines</b>
+(<code>TextView</code>)</A></nobr><br>
+<!-- Method getPaint -->
+<nobr><A HREF="android.support.v7.graphics.drawable.DrawerArrowDrawable.html#android.support.v7.graphics.drawable.DrawerArrowDrawable.getPaint_added()" class="hiddenlink" target="rightframe"><b>getPaint</b>
+()</A></nobr><br>
+<!-- Method getScrollIndicators -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.getScrollIndicators_added(android.view.View)" class="hiddenlink" target="rightframe"><b>getScrollIndicators</b>
+(<code>View</code>)</A></nobr><br>
+<!-- Method getSessionTokenFromIntent -->
+<nobr><A HREF="android.support.customtabs.CustomTabsSessionToken.html#android.support.customtabs.CustomTabsSessionToken.getSessionTokenFromIntent_added(android.content.Intent)" class="hiddenlink" target="rightframe"><b>getSessionTokenFromIntent</b>
+(<code>Intent</code>)</A></nobr><br>
+<!-- Method getSupportMediaController -->
+<nobr><A HREF="android.support.v4.app.FragmentActivity.html#android.support.v4.app.FragmentActivity.getSupportMediaController_added()" class="hiddenlink" target="rightframe"><b>getSupportMediaController</b>
+()</A></nobr><br>
+<!-- Method getTypeface -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.getTypeface_added()" class="hiddenlink" target="rightframe"><b>getTypeface</b>
+()</A></nobr><br>
+<!-- Method getUiStyle -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getUiStyle_added()" class="hiddenlink" target="rightframe"><b>getUiStyle</b>
+()</A></nobr><br>
+<!-- Class GuidedActionEditText -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedActionEditText" class="hiddenlink" target="rightframe"><b>GuidedActionEditText</b></A><br>
+<!-- Class GuidedStepFragment.GuidedStepBackgroundFragment -->
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepFragment.GuidedStepBackgroundFragment" class="hiddenlink" target="rightframe"><b>GuidedStepFragment.GuidedStepBackgroundFragment</b></A><br>
+<!-- Class GuidedStepSupportFragment -->
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepSupportFragment" class="hiddenlink" target="rightframe"><b>GuidedStepSupportFragment</b></A><br>
+<!-- Class GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment -->
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment" class="hiddenlink" target="rightframe"><b>GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment</b></A><br>
+<!-- Method hasOnClickListeners -->
+<A NAME="H"></A>
+<br><font size="+2">H</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.hasOnClickListeners_added(android.view.View)" class="hiddenlink" target="rightframe"><b>hasOnClickListeners</b>
+(<code>View</code>)</A></nobr><br>
+<!-- Class HeaderBehavior -->
+<A HREF="pkg_android.support.design.widget.html#HeaderBehavior" class="hiddenlink" target="rightframe"><b>HeaderBehavior</b></A><br>
+<!-- Class HeaderScrollingViewBehavior -->
+<A HREF="pkg_android.support.design.widget.html#HeaderScrollingViewBehavior" class="hiddenlink" target="rightframe"><b>HeaderScrollingViewBehavior</b></A><br>
+<!-- Method hide -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.hide_added(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)" class="hiddenlink" target="rightframe"><b>hide</b>
+(<code>OnVisibilityChangedListener</code>)</A></nobr><br>
+<!-- Field imageButtonStyle -->
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.imageButtonStyle" class="hiddenlink" target="rightframe">imageButtonStyle</A>
+</nobr><br>
+<!-- Constructor ImageCardView -->
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.ctor_added(android.content.Context, int)" class="hiddenlink" target="rightframe"><b>ImageCardView</b>
+(<code>Context, int</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Class ImeKeyMonitor -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ImeKeyMonitor" class="hiddenlink" target="rightframe"><b><i>ImeKeyMonitor</i></b></A><br>
+<!-- Class ImeKeyMonitor.ImeKeyListener -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ImeKeyMonitor.ImeKeyListener" class="hiddenlink" target="rightframe"><b><i>ImeKeyMonitor.ImeKeyListener</i></b></A><br>
+<!-- Method isEditable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isEditable_added()" class="hiddenlink" target="rightframe"><b>isEditable</b>
+()</A></nobr><br>
+<!-- Method isEditTitleUsed -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isEditTitleUsed_added()" class="hiddenlink" target="rightframe"><b>isEditTitleUsed</b>
+()</A></nobr><br>
+<!-- Method isKeepChildForeground -->
+<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.isKeepChildForeground_added()" class="hiddenlink" target="rightframe"><b>isKeepChildForeground</b>
+()</A></nobr><br>
+<!-- Method isShownOrQueued -->
+<nobr><A HREF="android.support.design.widget.Snackbar.html#android.support.design.widget.Snackbar.isShownOrQueued_added()" class="hiddenlink" target="rightframe"><b>isShownOrQueued</b>
+()</A></nobr><br>
+<!-- Class ItemBridgeAdapterShadowOverlayWrapper -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ItemBridgeAdapterShadowOverlayWrapper" class="hiddenlink" target="rightframe"><b>ItemBridgeAdapterShadowOverlayWrapper</b></A><br>
+<!-- Class MediaButtonReceiver -->
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v4.media.session.html#MediaButtonReceiver" class="hiddenlink" target="rightframe"><b>MediaButtonReceiver</b></A><br>
+<!-- Class MediaRouter.RouteGroup -->
+<A HREF="pkg_android.support.v7.media.html#MediaRouter.RouteGroup" class="hiddenlink" target="rightframe"><b>MediaRouter.RouteGroup</b></A><br>
+<!-- Constructor MediaSessionCompat -->
+<nobr><A HREF="android.support.v4.media.session.MediaSessionCompat.html#android.support.v4.media.session.MediaSessionCompat.ctor_added(android.content.Context, java.lang.String)" class="hiddenlink" target="rightframe"><b>MediaSessionCompat</b>
+(<code>Context, String</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Constructor NavigationView.SavedState -->
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.NavigationView.SavedState.html#android.support.design.widget.NavigationView.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>NavigationView.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Class NestedScrollView.OnScrollChangeListener -->
+<A HREF="pkg_android.support.v4.widget.html#NestedScrollView.OnScrollChangeListener" class="hiddenlink" target="rightframe"><b><i>NestedScrollView.OnScrollChangeListener</i></b></A><br>
+<!-- Method onDestroyView -->
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>onDestroyView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html#android.support.v17.leanback.app.PlaybackOverlayFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlayFragment
+</A></nobr><br>
+<!-- Method onDestroyView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html#android.support.v17.leanback.app.PlaybackOverlaySupportFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlaySupportFragment
+</A></nobr><br>
+<!-- Method onDestroyView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionEnd -->
+<i>onEntranceTransitionEnd</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionEnd -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionEnd -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionEnd -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionPrepare -->
+<i>onEntranceTransitionPrepare</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionPrepare -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionPrepare -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionPrepare -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionStart -->
+<i>onEntranceTransitionStart</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method onGuidedActionEdited -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onGuidedActionEdited_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onGuidedActionEdited</b>
+(<code>GuidedAction</code>)</A></nobr><br>
+<!-- Method onImeAppearing -->
+<i>onImeAppearing</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onImeAppearing -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onImeAppearing -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onImeDisappearing -->
+<i>onImeDisappearing</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onImeDisappearing -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onImeDisappearing -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onLayoutChild -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onLayoutChild_added(android.support.design.widget.CoordinatorLayout, android.view.View, int)" class="hiddenlink" target="rightframe"><b>onLayoutChild</b>
+(<code>CoordinatorLayout, View, int</code>)</A></nobr><br>
+<!-- Method onProvideBackgroundFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onProvideBackgroundFragment_added()" class="hiddenlink" target="rightframe"><b>onProvideBackgroundFragment</b>
+()</A></nobr><br>
+<!-- Method onProvideFragmentTransitions -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onProvideFragmentTransitions_added()" class="hiddenlink" target="rightframe"><b>onProvideFragmentTransitions</b>
+()</A></nobr><br>
+<!-- Method onResume -->
+<i>onResume</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html#android.support.v17.leanback.app.PlaybackOverlayFragment.onResume_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlayFragment
+</A></nobr><br>
+<!-- Method onResume -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html#android.support.v17.leanback.app.PlaybackOverlaySupportFragment.onResume_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlaySupportFragment
+</A></nobr><br>
+<!-- Method onSaveInstanceState -->
+<i>onSaveInstanceState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onSaveInstanceState_added(android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method onSaveInstanceState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onSaveInstanceState_added(android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method onStart -->
+<i>onStart</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method onStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method onStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method onStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method onStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<!-- Method onViewCreated -->
+<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onViewCreated_added(android.view.View, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>onViewCreated</b>
+(<code>View, Bundle</code>)</A></nobr><br>
+<!-- Class ParallelExecutorCompat -->
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v4.content.html#ParallelExecutorCompat" class="hiddenlink" target="rightframe"><b>ParallelExecutorCompat</b></A><br>
+<!-- Class PlaybackControlSupportGlue -->
+<A HREF="pkg_android.support.v17.leanback.app.html#PlaybackControlSupportGlue" class="hiddenlink" target="rightframe"><b>PlaybackControlSupportGlue</b></A><br>
+<!-- Field RtlUnderlay_Widget_AppCompat_ActionButton -->
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlUnderlay_Widget_AppCompat_ActionButton" class="hiddenlink" target="rightframe">RtlUnderlay_Widget_AppCompat_ActionButton</A>
+</nobr><br>
+<!-- Field RtlUnderlay_Widget_AppCompat_ActionButton_Overflow -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlUnderlay_Widget_AppCompat_ActionButton_Overflow" class="hiddenlink" target="rightframe">RtlUnderlay_Widget_AppCompat_ActionButton_Overflow</A>
+</nobr><br>
+<!-- Method runEntranceTransition -->
+<i>runEntranceTransition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method runEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method runEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method runEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method runEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<!-- Method runEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<!-- Field SCROLL_FLAG_SNAP -->
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.AppBarLayout.LayoutParams.html#android.support.design.widget.AppBarLayout.LayoutParams.SCROLL_FLAG_SNAP" class="hiddenlink" target="rightframe">SCROLL_FLAG_SNAP</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_BOTTOM -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_BOTTOM" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_BOTTOM</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_END -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_END" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_END</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_LEFT -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_LEFT" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_LEFT</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_RIGHT -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_RIGHT" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_RIGHT</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_START -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_START" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_START</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_TOP -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_TOP" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_TOP</A>
+</nobr><br>
+<!-- Field scrollIndicatorDown -->
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.scrollIndicatorDown" class="hiddenlink" target="rightframe">scrollIndicatorDown</A>
+</nobr><br>
+<!-- Field scrollIndicatorUp -->
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.scrollIndicatorUp" class="hiddenlink" target="rightframe">scrollIndicatorUp</A>
+</nobr><br>
+<!-- Field seekBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.seekBarStyle" class="hiddenlink" target="rightframe">seekBarStyle</A>
+</nobr><br>
+<!-- Method setActionButton -->
+<i>setActionButton</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.setActionButton_added(android.graphics.Bitmap, java.lang.String, android.app.PendingIntent, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bitmap, String, PendingIntent, boolean</code>)</b>&nbsp;in&nbsp;android.support.customtabs.CustomTabsIntent.Builder
+</A></nobr><br>
+<!-- Method setActionButton -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.customtabs.CustomTabsSession.html#android.support.customtabs.CustomTabsSession.setActionButton_added(android.graphics.Bitmap, java.lang.String)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bitmap, String</code>)</b>&nbsp;in&nbsp;android.support.customtabs.CustomTabsSession
+</A></nobr><br>
+<!-- Method setCollapsedTitleTypeface -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setCollapsedTitleTypeface_added(android.graphics.Typeface)" class="hiddenlink" target="rightframe"><b>setCollapsedTitleTypeface</b>
+(<code>Typeface</code>)</A></nobr><br>
+<!-- Method setConnectionState -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setConnectionState_added(int)" class="hiddenlink" target="rightframe"><b>setConnectionState</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setCounterEnabled -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.setCounterEnabled_added(boolean)" class="hiddenlink" target="rightframe"><b>setCounterEnabled</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setCounterMaxLength -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.setCounterMaxLength_added(int)" class="hiddenlink" target="rightframe"><b>setCounterMaxLength</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setDescription -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setDescription_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setDescription</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<!-- Method setDeviceType -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setDeviceType_added(int)" class="hiddenlink" target="rightframe"><b>setDeviceType</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setDragCallback -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.setDragCallback_added(android.support.design.widget.AppBarLayout.Behavior.DragCallback)" class="hiddenlink" target="rightframe"><b>setDragCallback</b>
+(<code>DragCallback</code>)</A></nobr><br>
+<!-- Method setEditTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setEditTitle_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setEditTitle</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<!-- Method setEntranceTransitionState -->
+<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.setEntranceTransitionState_added(android.support.v17.leanback.widget.VerticalGridPresenter.ViewHolder, boolean)" class="hiddenlink" target="rightframe"><b>setEntranceTransitionState</b>
+(<code>ViewHolder, boolean</code>)</A></nobr><br>
+<!-- Method setExpandedTitleTypeface -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleTypeface_added(android.graphics.Typeface)" class="hiddenlink" target="rightframe"><b>setExpandedTitleTypeface</b>
+(<code>Typeface</code>)</A></nobr><br>
+<!-- Method setIconUri -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setIconUri_added(android.net.Uri)" class="hiddenlink" target="rightframe"><b>setIconUri</b>
+(<code>Uri</code>)</A></nobr><br>
+<!-- Method setKeepChildForeground -->
+<i>setKeepChildForeground</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.setKeepChildForeground_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.ListRowPresenter
+</A></nobr><br>
+<!-- Method setKeepChildForeground -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.setKeepChildForeground_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.VerticalGridPresenter
+</A></nobr><br>
+<!-- Method setOnScrollChangeListener -->
+<nobr><A HREF="android.support.v4.widget.NestedScrollView.html#android.support.v4.widget.NestedScrollView.setOnScrollChangeListener_added(android.support.v4.widget.NestedScrollView.OnScrollChangeListener)" class="hiddenlink" target="rightframe"><b>setOnScrollChangeListener</b>
+(<code>OnScrollChangeListener</code>)</A></nobr><br>
+<!-- Method setRegion -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.setRegion_added(int, int, int, int)" class="hiddenlink" target="rightframe"><b>setRegion</b>
+(<code>int, int, int, int</code>)</A></nobr><br>
+<!-- Method setScrimsShown -->
+<i>setScrimsShown</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setScrimsShown_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.design.widget.CollapsingToolbarLayout
+</A></nobr><br>
+<!-- Method setScrimsShown -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setScrimsShown_added(boolean, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean, boolean</code>)</b>&nbsp;in&nbsp;android.support.design.widget.CollapsingToolbarLayout
+</A></nobr><br>
+<!-- Method setScrollIndicators -->
+<i>setScrollIndicators</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.setScrollIndicators_added(android.view.View, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, int</code>)</b>&nbsp;in&nbsp;android.support.v4.view.ViewCompat
+</A></nobr><br>
+<!-- Method setScrollIndicators -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.setScrollIndicators_added(android.view.View, int, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, int, int</code>)</b>&nbsp;in&nbsp;android.support.v4.view.ViewCompat
+</A></nobr><br>
+<!-- Method setSupportMediaController -->
+<nobr><A HREF="android.support.v4.app.FragmentActivity.html#android.support.v4.app.FragmentActivity.setSupportMediaController_added(android.support.v4.media.session.MediaControllerCompat)" class="hiddenlink" target="rightframe"><b>setSupportMediaController</b>
+(<code>MediaControllerCompat</code>)</A></nobr><br>
+<!-- Method setTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setTitle_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setTitle</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<!-- Method setUiStyle -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setUiStyle_added(int)" class="hiddenlink" target="rightframe"><b>setUiStyle</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Class ShadowOverlayHelper -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper</b></A><br>
+<!-- Class ShadowOverlayHelper.Builder -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper.Builder" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper.Builder</b></A><br>
+<!-- Class ShadowOverlayHelper.Options -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper.Options" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper.Options</b></A><br>
+<!-- Method show -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.show_added(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)" class="hiddenlink" target="rightframe"><b>show</b>
+(<code>OnVisibilityChangedListener</code>)</A></nobr><br>
+<!-- Field spacer -->
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.spacer" class="hiddenlink" target="rightframe">spacer</A>
+</nobr><br>
+<!-- Method springBack -->
+<nobr><A HREF="android.support.v4.widget.ScrollerCompat.html#android.support.v4.widget.ScrollerCompat.springBack_added(int, int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>springBack</b>
+(<code>int, int, int, int, int, int</code>)</A></nobr><br>
+<!-- Field TAB_HIDDEN -->
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.customtabs.CustomTabsCallback.html#android.support.customtabs.CustomTabsCallback.TAB_HIDDEN" class="hiddenlink" target="rightframe">TAB_HIDDEN</A>
+</nobr><br>
+<!-- Field TAB_SHOWN -->
+<nobr><A HREF="android.support.customtabs.CustomTabsCallback.html#android.support.customtabs.CustomTabsCallback.TAB_SHOWN" class="hiddenlink" target="rightframe">TAB_SHOWN</A>
+</nobr><br>
+<!-- Field TextAppearance_android_shadowColor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowColor" class="hiddenlink" target="rightframe">TextAppearance_android_shadowColor</A>
+</nobr><br>
+<!-- Field TextAppearance_android_shadowDx -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowDx" class="hiddenlink" target="rightframe">TextAppearance_android_shadowDx</A>
+</nobr><br>
+<!-- Field TextAppearance_android_shadowDy -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowDy" class="hiddenlink" target="rightframe">TextAppearance_android_shadowDy</A>
+</nobr><br>
+<!-- Field TextAppearance_android_shadowRadius -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowRadius" class="hiddenlink" target="rightframe">TextAppearance_android_shadowRadius</A>
+</nobr><br>
+<!-- Field Theme_imageButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_imageButtonStyle" class="hiddenlink" target="rightframe">Theme_imageButtonStyle</A>
+</nobr><br>
+<!-- Field Theme_seekBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_seekBarStyle" class="hiddenlink" target="rightframe">Theme_seekBarStyle</A>
+</nobr><br>
+<!-- Field UI_STYLE_ACTIVITY_ROOT -->
+<A NAME="U"></A>
+<br><font size="+2">U</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_ACTIVITY_ROOT" class="hiddenlink" target="rightframe">UI_STYLE_ACTIVITY_ROOT</A>
+</nobr><br>
+<!-- Field UI_STYLE_DEFAULT -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_DEFAULT" class="hiddenlink" target="rightframe">UI_STYLE_DEFAULT</A>
+</nobr><br>
+<!-- Field UI_STYLE_ENTRANCE -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_ENTRANCE" class="hiddenlink" target="rightframe">UI_STYLE_ENTRANCE</A>
+</nobr><br>
+<!-- Method updateVisuals -->
+<nobr><A HREF="android.support.customtabs.CustomTabsService.html#android.support.customtabs.CustomTabsService.updateVisuals_added(android.support.customtabs.CustomTabsSessionToken, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>updateVisuals</b>
+(<code>CustomTabsSessionToken, Bundle</code>)</A></nobr><br>
+<!-- Field Widget_AppCompat_ImageButton -->
+<A NAME="W"></A>
+<br><font size="+2">W</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_ImageButton" class="hiddenlink" target="rightframe">Widget_AppCompat_ImageButton</A>
+</nobr><br>
+<!-- Field Widget_AppCompat_SeekBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_SeekBar" class="hiddenlink" target="rightframe">Widget_AppCompat_SeekBar</A>
+</nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_all.html b/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_all.html
new file mode 100644
index 0000000..575ee95
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_all.html
@@ -0,0 +1,1525 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+All Differences Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for All Differences" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<b>All Differences</b>
+  <br>
+<A HREF="alldiffs_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<A HREF="alldiffs_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<A HREF="alldiffs_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<!-- Field abc_alert_dialog_button_bar_material -->
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.layout.html#android.support.v7.appcompat.R.layout.abc_alert_dialog_button_bar_material" class="hiddenlink" target="rightframe">abc_alert_dialog_button_bar_material</A>
+</nobr><br>
+<!-- Field abc_allow_stacked_button_bar -->
+<nobr><A HREF="android.support.v7.appcompat.R.bool.html#android.support.v7.appcompat.R.bool.abc_allow_stacked_button_bar" class="hiddenlink" target="rightframe">abc_allow_stacked_button_bar</A>
+</nobr><br>
+<!-- Field abc_btn_default_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_default_material" class="hiddenlink" target="rightframe">abc_btn_default_material</A>
+</nobr><br>
+<!-- Field abc_capital_off -->
+<nobr><A HREF="android.support.v7.appcompat.R.string.html#android.support.v7.appcompat.R.string.abc_capital_off" class="hiddenlink" target="rightframe">abc_capital_off</A>
+</nobr><br>
+<!-- Field abc_capital_on -->
+<nobr><A HREF="android.support.v7.appcompat.R.string.html#android.support.v7.appcompat.R.string.abc_capital_on" class="hiddenlink" target="rightframe">abc_capital_on</A>
+</nobr><br>
+<!-- Field abc_dialog_fixed_height_major -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_height_major" class="hiddenlink" target="rightframe">abc_dialog_fixed_height_major</A>
+</nobr><br>
+<!-- Field abc_dialog_fixed_height_minor -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_height_minor" class="hiddenlink" target="rightframe">abc_dialog_fixed_height_minor</A>
+</nobr><br>
+<!-- Field abc_dialog_fixed_width_major -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_width_major" class="hiddenlink" target="rightframe">abc_dialog_fixed_width_major</A>
+</nobr><br>
+<!-- Field abc_dialog_fixed_width_minor -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_width_minor" class="hiddenlink" target="rightframe">abc_dialog_fixed_width_minor</A>
+</nobr><br>
+<!-- Field abc_scrubber_control_off_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_off_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_control_off_mtrl_alpha</A>
+</nobr><br>
+<!-- Field abc_scrubber_control_to_pressed_mtrl_000 -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_to_pressed_mtrl_000" class="hiddenlink" target="rightframe">abc_scrubber_control_to_pressed_mtrl_000</A>
+</nobr><br>
+<!-- Field abc_scrubber_control_to_pressed_mtrl_005 -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_to_pressed_mtrl_005" class="hiddenlink" target="rightframe">abc_scrubber_control_to_pressed_mtrl_005</A>
+</nobr><br>
+<!-- Field abc_scrubber_primary_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_primary_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_primary_mtrl_alpha</A>
+</nobr><br>
+<!-- Field abc_scrubber_track_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_track_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_track_mtrl_alpha</A>
+</nobr><br>
+<!-- Field abc_seekbar_thumb_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_seekbar_thumb_material" class="hiddenlink" target="rightframe">abc_seekbar_thumb_material</A>
+</nobr><br>
+<!-- Field abc_seekbar_track_background_height_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_seekbar_track_background_height_material" class="hiddenlink" target="rightframe">abc_seekbar_track_background_height_material</A>
+</nobr><br>
+<!-- Field abc_seekbar_track_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_seekbar_track_material" class="hiddenlink" target="rightframe">abc_seekbar_track_material</A>
+</nobr><br>
+<!-- Field abc_seekbar_track_progress_height_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_seekbar_track_progress_height_material" class="hiddenlink" target="rightframe">abc_seekbar_track_progress_height_material</A>
+</nobr><br>
+<!-- Field abc_select_dialog_padding_start_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_select_dialog_padding_start_material" class="hiddenlink" target="rightframe">abc_select_dialog_padding_start_material</A>
+</nobr><br>
+<!-- Method add -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.add_added(android.app.FragmentManager, android.support.v17.leanback.app.GuidedStepFragment, int)" class="hiddenlink" target="rightframe"><b>add</b>
+(<code>FragmentManager, GuidedStepFragment, int</code>)</A></nobr><br>
+<!-- Method addAsRoot -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.addAsRoot_added(android.app.Activity, android.support.v17.leanback.app.GuidedStepFragment, int)" class="hiddenlink" target="rightframe"><b>addAsRoot</b>
+(<code>Activity, GuidedStepFragment, int</code>)</A></nobr><br>
+<!-- Method addGroupMemberId -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberId_added(java.lang.String)" class="hiddenlink" target="rightframe"><b>addGroupMemberId</b>
+(<code>String</code>)</A></nobr><br>
+<!-- Method addGroupMemberIds -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberIds_added(java.util.Collection<java.lang.String>)" class="hiddenlink" target="rightframe"><b>addGroupMemberIds</b>
+(<code>Collection&lt;String&gt;</code>)</A></nobr><br>
+<!-- Field allowStacking -->
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.allowStacking" class="hiddenlink" target="rightframe">allowStacking</A>
+</nobr><br>
+<!-- Package android.support.customtabs -->
+<A HREF="pkg_android.support.customtabs.html" class="hiddenlink" target="rightframe">android.support.customtabs</A><br>
+<!-- Package android.support.design.widget -->
+<A HREF="pkg_android.support.design.widget.html" class="hiddenlink" target="rightframe">android.support.design.widget</A><br>
+<!-- Package android.support.percent -->
+<A HREF="pkg_android.support.percent.html" class="hiddenlink" target="rightframe">android.support.percent</A><br>
+<!-- Package android.support.v14.preference -->
+<A HREF="pkg_android.support.v14.preference.html" class="hiddenlink" target="rightframe">android.support.v14.preference</A><br>
+<!-- Package android.support.v17.leanback.app -->
+<A HREF="pkg_android.support.v17.leanback.app.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.app</A><br>
+<!-- Package android.support.v17.leanback.widget -->
+<A HREF="pkg_android.support.v17.leanback.widget.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Package android.support.v4.app -->
+<A HREF="pkg_android.support.v4.app.html" class="hiddenlink" target="rightframe">android.support.v4.app</A><br>
+<!-- Package android.support.v4.content -->
+<A HREF="pkg_android.support.v4.content.html" class="hiddenlink" target="rightframe">android.support.v4.content</A><br>
+<!-- Package android.support.v4.content.res -->
+<A HREF="pkg_android.support.v4.content.res.html" class="hiddenlink" target="rightframe">android.support.v4.content.res</A><br>
+<!-- Package android.support.v4.media.session -->
+<A HREF="pkg_android.support.v4.media.session.html" class="hiddenlink" target="rightframe">android.support.v4.media.session</A><br>
+<!-- Package android.support.v4.view -->
+<A HREF="pkg_android.support.v4.view.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Package android.support.v4.widget -->
+<A HREF="pkg_android.support.v4.widget.html" class="hiddenlink" target="rightframe">android.support.v4.widget</A><br>
+<!-- Package android.support.v7.appcompat -->
+<A HREF="pkg_android.support.v7.appcompat.html" class="hiddenlink" target="rightframe">android.support.v7.appcompat</A><br>
+<!-- Package android.support.v7.graphics -->
+<A HREF="pkg_android.support.v7.graphics.html" class="hiddenlink" target="rightframe">android.support.v7.graphics</A><br>
+<!-- Package android.support.v7.graphics.drawable -->
+<A HREF="pkg_android.support.v7.graphics.drawable.html" class="hiddenlink" target="rightframe">android.support.v7.graphics.drawable</A><br>
+<!-- Package android.support.v7.media -->
+<A HREF="pkg_android.support.v7.media.html" class="hiddenlink" target="rightframe">android.support.v7.media</A><br>
+<!-- Package android.support.v7.preference -->
+<A HREF="pkg_android.support.v7.preference.html" class="hiddenlink" target="rightframe">android.support.v7.preference</A><br>
+<!-- Class AppBarLayout.Behavior -->
+<A HREF="android.support.design.widget.AppBarLayout.Behavior.html" class="hiddenlink" target="rightframe">AppBarLayout.Behavior</A><br>
+<!-- Class AppBarLayout.Behavior.DragCallback -->
+<A HREF="pkg_android.support.design.widget.html#AppBarLayout.Behavior.DragCallback" class="hiddenlink" target="rightframe"><b>AppBarLayout.Behavior.DragCallback</b></A><br>
+<!-- Class AppBarLayout.Behavior.SavedState -->
+<i>AppBarLayout.Behavior.SavedState</i><br>
+&nbsp;&nbsp;<A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html" class="hiddenlink" target="rightframe">android.support.design.widget</A><br>
+<!-- Constructor AppBarLayout.Behavior.SavedState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html#android.support.design.widget.AppBarLayout.Behavior.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>AppBarLayout.Behavior.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Constructor AppBarLayout.Behavior.SavedState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html#android.support.design.widget.AppBarLayout.Behavior.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>AppBarLayout.Behavior.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Class AppBarLayout.LayoutParams -->
+<A HREF="android.support.design.widget.AppBarLayout.LayoutParams.html" class="hiddenlink" target="rightframe">AppBarLayout.LayoutParams</A><br>
+<!-- Class AppBarLayout.ScrollingViewBehavior -->
+<A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html" class="hiddenlink" target="rightframe">AppBarLayout.ScrollingViewBehavior</A><br>
+<!-- Field aspectRatio -->
+<nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html#android.support.percent.PercentLayoutHelper.PercentLayoutInfo.aspectRatio" class="hiddenlink" target="rightframe">aspectRatio</A>
+</nobr><br>
+<!-- Field Base_Widget_AppCompat_ImageButton -->
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_ImageButton" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_ImageButton</A>
+</nobr><br>
+<!-- Field Base_Widget_AppCompat_SeekBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_SeekBar" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_SeekBar</A>
+</nobr><br>
+<!-- Class BrowseFragment -->
+<A HREF="android.support.v17.leanback.app.BrowseFragment.html" class="hiddenlink" target="rightframe">BrowseFragment</A><br>
+<!-- Class BrowseSupportFragment -->
+<A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html" class="hiddenlink" target="rightframe">BrowseSupportFragment</A><br>
+<!-- Class BundleCompat -->
+<A HREF="pkg_android.support.v4.app.html#BundleCompat" class="hiddenlink" target="rightframe"><b>BundleCompat</b></A><br>
+<!-- Field ButtonBarLayout_allowStacking -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.ButtonBarLayout_allowStacking" class="hiddenlink" target="rightframe">ButtonBarLayout_allowStacking</A>
+</nobr><br>
+<!-- Method canDrawOutOfBounds -->
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.RowPresenter.html#android.support.v17.leanback.widget.RowPresenter.canDrawOutOfBounds_removed()" class="hiddenlink" target="rightframe"><strike>canDrawOutOfBounds</strike>
+()</A></nobr><br>
+<!-- Field CARD_TYPE_FLAG_CONTENT -->
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_CONTENT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_CONTENT</A>
+</nobr><br>
+<!-- Field CARD_TYPE_FLAG_ICON_LEFT -->
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_ICON_LEFT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_ICON_LEFT</A>
+</nobr><br>
+<!-- Field CARD_TYPE_FLAG_ICON_RIGHT -->
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_ICON_RIGHT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_ICON_RIGHT</A>
+</nobr><br>
+<!-- Field CARD_TYPE_FLAG_IMAGE_ONLY -->
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_IMAGE_ONLY" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_IMAGE_ONLY</A>
+</nobr><br>
+<!-- Field CARD_TYPE_FLAG_TITLE -->
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_TITLE" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_TITLE</A>
+</nobr><br>
+<!-- Method clearRegion -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.clearRegion_added()" class="hiddenlink" target="rightframe"><b>clearRegion</b>
+()</A></nobr><br>
+<!-- Class CollapsingToolbarLayout -->
+<A HREF="android.support.design.widget.CollapsingToolbarLayout.html" class="hiddenlink" target="rightframe">CollapsingToolbarLayout</A><br>
+<!-- Field CONNECTION_STATE_CONNECTED -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_CONNECTED" class="hiddenlink" target="rightframe">CONNECTION_STATE_CONNECTED</A>
+</nobr><br>
+<!-- Field CONNECTION_STATE_CONNECTING -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_CONNECTING" class="hiddenlink" target="rightframe">CONNECTION_STATE_CONNECTING</A>
+</nobr><br>
+<!-- Field CONNECTION_STATE_DISCONNECTED -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_DISCONNECTED" class="hiddenlink" target="rightframe">CONNECTION_STATE_DISCONNECTED</A>
+</nobr><br>
+<!-- Class CoordinatorLayout.SavedState -->
+<i>CoordinatorLayout.SavedState</i><br>
+&nbsp;&nbsp;<A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html" class="hiddenlink" target="rightframe">android.support.design.widget</A><br>
+<!-- Constructor CoordinatorLayout.SavedState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html#android.support.design.widget.CoordinatorLayout.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>CoordinatorLayout.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Constructor CoordinatorLayout.SavedState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html#android.support.design.widget.CoordinatorLayout.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>CoordinatorLayout.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Method createEntranceTransition -->
+<i>createEntranceTransition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method createEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method createEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method createEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method createEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<!-- Method createEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<!-- Method createShadowOverlayOptions -->
+<i>createShadowOverlayOptions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.createShadowOverlayOptions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.ListRowPresenter
+</A></nobr><br>
+<!-- Method createShadowOverlayOptions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.createShadowOverlayOptions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.VerticalGridPresenter
+</A></nobr><br>
+<!-- Class CustomTabsCallback -->
+<A HREF="android.support.customtabs.CustomTabsCallback.html" class="hiddenlink" target="rightframe">CustomTabsCallback</A><br>
+<!-- Class CustomTabsIntent -->
+<A HREF="android.support.customtabs.CustomTabsIntent.html" class="hiddenlink" target="rightframe">CustomTabsIntent</A><br>
+<!-- Class CustomTabsIntent.Builder -->
+<A HREF="android.support.customtabs.CustomTabsIntent.Builder.html" class="hiddenlink" target="rightframe">CustomTabsIntent.Builder</A><br>
+<!-- Class CustomTabsService -->
+<A HREF="android.support.customtabs.CustomTabsService.html" class="hiddenlink" target="rightframe">CustomTabsService</A><br>
+<!-- Class CustomTabsSession -->
+<A HREF="android.support.customtabs.CustomTabsSession.html" class="hiddenlink" target="rightframe">CustomTabsSession</A><br>
+<!-- Class CustomTabsSessionToken -->
+<A HREF="android.support.customtabs.CustomTabsSessionToken.html" class="hiddenlink" target="rightframe">CustomTabsSessionToken</A><br>
+<!-- Class DetailsFragment -->
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.DetailsFragment.html" class="hiddenlink" target="rightframe">DetailsFragment</A><br>
+<!-- Class DetailsSupportFragment -->
+<A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html" class="hiddenlink" target="rightframe">DetailsSupportFragment</A><br>
+<!-- Field DEVICE_TYPE_SPEAKER -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.DEVICE_TYPE_SPEAKER" class="hiddenlink" target="rightframe">DEVICE_TYPE_SPEAKER</A>
+</nobr><br>
+<!-- Field DEVICE_TYPE_TV -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.DEVICE_TYPE_TV" class="hiddenlink" target="rightframe">DEVICE_TYPE_TV</A>
+</nobr><br>
+<!-- Field dialog_fixed_height_major -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_height_major" class="hiddenlink" target="rightframe"><strike>dialog_fixed_height_major</strike></A>
+</nobr><br>
+<!-- Field dialog_fixed_height_minor -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_height_minor" class="hiddenlink" target="rightframe"><strike>dialog_fixed_height_minor</strike></A>
+</nobr><br>
+<!-- Field dialog_fixed_width_major -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_width_major" class="hiddenlink" target="rightframe"><strike>dialog_fixed_width_major</strike></A>
+</nobr><br>
+<!-- Field dialog_fixed_width_minor -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_width_minor" class="hiddenlink" target="rightframe"><strike>dialog_fixed_width_minor</strike></A>
+</nobr><br>
+<!-- Method displayCompletions -->
+<i>displayCompletions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.SearchFragment.html#android.support.v17.leanback.app.SearchFragment.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.SearchFragment
+</A></nobr><br>
+<!-- Method displayCompletions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.SearchSupportFragment.html#android.support.v17.leanback.app.SearchSupportFragment.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.SearchSupportFragment
+</A></nobr><br>
+<!-- Method displayCompletions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.SearchBar.html#android.support.v17.leanback.widget.SearchBar.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.SearchBar
+</A></nobr><br>
+<!-- Class DrawerArrowDrawable -->
+<A HREF="android.support.v7.graphics.drawable.DrawerArrowDrawable.html" class="hiddenlink" target="rightframe">DrawerArrowDrawable</A><br>
+<!-- Method editable -->
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editable_added(boolean)" class="hiddenlink" target="rightframe"><b>editable</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Class EditTextPreferenceDialogFragment -->
+<A HREF="android.support.v14.preference.EditTextPreferenceDialogFragment.html" class="hiddenlink" target="rightframe">EditTextPreferenceDialogFragment</A><br>
+<!-- Class EditTextPreferenceDialogFragmentCompat -->
+<A HREF="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html" class="hiddenlink" target="rightframe">EditTextPreferenceDialogFragmentCompat</A><br>
+<!-- Method editTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editTitle_added(java.lang.String)" class="hiddenlink" target="rightframe"><b>editTitle</b>
+(<code>String</code>)</A></nobr><br>
+<!-- Method enableUrlBarHiding -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.enableUrlBarHiding_added()" class="hiddenlink" target="rightframe"><b>enableUrlBarHiding</b>
+()</A></nobr><br>
+<!-- Field EXTRA_ENABLE_URLBAR_HIDING -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_ENABLE_URLBAR_HIDING" class="hiddenlink" target="rightframe">EXTRA_ENABLE_URLBAR_HIDING</A>
+</nobr><br>
+<!-- Field EXTRA_TINT_ACTION_BUTTON -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_TINT_ACTION_BUTTON" class="hiddenlink" target="rightframe">EXTRA_TINT_ACTION_BUTTON</A>
+</nobr><br>
+<!-- Field EXTRA_UI_STYLE -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.EXTRA_UI_STYLE" class="hiddenlink" target="rightframe">EXTRA_UI_STYLE</A>
+</nobr><br>
+<!-- Class FloatingActionButton -->
+<A NAME="F"></A>
+<br><font size="+2">F</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.FloatingActionButton.html" class="hiddenlink" target="rightframe">FloatingActionButton</A><br>
+<!-- Class FloatingActionButton.Behavior -->
+<A HREF="android.support.design.widget.FloatingActionButton.Behavior.html" class="hiddenlink" target="rightframe">FloatingActionButton.Behavior</A><br>
+<!-- Class FloatingActionButton.OnVisibilityChangedListener -->
+<A HREF="pkg_android.support.design.widget.html#FloatingActionButton.OnVisibilityChangedListener" class="hiddenlink" target="rightframe"><b>FloatingActionButton.OnVisibilityChangedListener</b></A><br>
+<!-- Class FragmentActivity -->
+<A HREF="android.support.v4.app.FragmentActivity.html" class="hiddenlink" target="rightframe">FragmentActivity</A><br>
+<!-- Class FragmentAnimationProvider -->
+<A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html" class="hiddenlink" target="rightframe"><i>FragmentAnimationProvider</i></A><br>
+<!-- Method getCollapsedTitleTypeface -->
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getCollapsedTitleTypeface_added()" class="hiddenlink" target="rightframe"><b>getCollapsedTitleTypeface</b>
+()</A></nobr><br>
+<!-- Method getColor -->
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColor_added(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>getColor</b>
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<!-- Method getColorStateList -->
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColorStateList_added(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>getColorStateList</b>
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<!-- Method getConnectionState -->
+<i>getConnectionState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getConnectionState_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+<!-- Method getConnectionState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getConnectionState_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<!-- Method getContainerIdForBackground -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getContainerIdForBackground_added()" class="hiddenlink" target="rightframe"><b>getContainerIdForBackground</b>
+()</A></nobr><br>
+<!-- Method getCounterMaxLength -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.getCounterMaxLength_added()" class="hiddenlink" target="rightframe"><b>getCounterMaxLength</b>
+()</A></nobr><br>
+<!-- Method getDeviceType -->
+<i>getDeviceType</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getDeviceType_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+<!-- Method getDeviceType -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getDeviceType_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<!-- Method getEditableTitleView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditableTitleView_added()" class="hiddenlink" target="rightframe"><b>getEditableTitleView</b>
+()</A></nobr><br>
+<!-- Method getEditTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getEditTitle_added()" class="hiddenlink" target="rightframe"><b>getEditTitle</b>
+()</A></nobr><br>
+<!-- Method getExpandedTitleTypeface -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleTypeface_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleTypeface</b>
+()</A></nobr><br>
+<!-- Method getGroupMemberIds -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getGroupMemberIds_added()" class="hiddenlink" target="rightframe"><b>getGroupMemberIds</b>
+()</A></nobr><br>
+<!-- Method getIconUri -->
+<i>getIconUri</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getIconUri_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+<!-- Method getIconUri -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getIconUri_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<!-- Method getKeepChildForeground -->
+<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.getKeepChildForeground_added()" class="hiddenlink" target="rightframe"><b>getKeepChildForeground</b>
+()</A></nobr><br>
+<!-- Method getMaxLines -->
+<nobr><A HREF="android.support.v4.widget.TextViewCompat.html#android.support.v4.widget.TextViewCompat.getMaxLines_added(android.widget.TextView)" class="hiddenlink" target="rightframe"><b>getMaxLines</b>
+(<code>TextView</code>)</A></nobr><br>
+<!-- Method getMinLines -->
+<nobr><A HREF="android.support.v4.widget.TextViewCompat.html#android.support.v4.widget.TextViewCompat.getMinLines_added(android.widget.TextView)" class="hiddenlink" target="rightframe"><b>getMinLines</b>
+(<code>TextView</code>)</A></nobr><br>
+<!-- Method getPaint -->
+<nobr><A HREF="android.support.v7.graphics.drawable.DrawerArrowDrawable.html#android.support.v7.graphics.drawable.DrawerArrowDrawable.getPaint_added()" class="hiddenlink" target="rightframe"><b>getPaint</b>
+()</A></nobr><br>
+<!-- Method getScrollIndicators -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.getScrollIndicators_added(android.view.View)" class="hiddenlink" target="rightframe"><b>getScrollIndicators</b>
+(<code>View</code>)</A></nobr><br>
+<!-- Method getSessionTokenFromIntent -->
+<nobr><A HREF="android.support.customtabs.CustomTabsSessionToken.html#android.support.customtabs.CustomTabsSessionToken.getSessionTokenFromIntent_added(android.content.Intent)" class="hiddenlink" target="rightframe"><b>getSessionTokenFromIntent</b>
+(<code>Intent</code>)</A></nobr><br>
+<!-- Method getSupportMediaController -->
+<nobr><A HREF="android.support.v4.app.FragmentActivity.html#android.support.v4.app.FragmentActivity.getSupportMediaController_added()" class="hiddenlink" target="rightframe"><b>getSupportMediaController</b>
+()</A></nobr><br>
+<!-- Method getTypeface -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.getTypeface_added()" class="hiddenlink" target="rightframe"><b>getTypeface</b>
+()</A></nobr><br>
+<!-- Method getUiStyle -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getUiStyle_added()" class="hiddenlink" target="rightframe"><b>getUiStyle</b>
+()</A></nobr><br>
+<!-- Class GuidanceStylist -->
+<A HREF="android.support.v17.leanback.widget.GuidanceStylist.html" class="hiddenlink" target="rightframe">GuidanceStylist</A><br>
+<!-- Class GuidedAction -->
+<A HREF="android.support.v17.leanback.widget.GuidedAction.html" class="hiddenlink" target="rightframe">GuidedAction</A><br>
+<!-- Class GuidedAction.Builder -->
+<A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html" class="hiddenlink" target="rightframe">GuidedAction.Builder</A><br>
+<!-- Class GuidedActionEditText -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedActionEditText" class="hiddenlink" target="rightframe"><b>GuidedActionEditText</b></A><br>
+<!-- Class GuidedActionsStylist -->
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html" class="hiddenlink" target="rightframe">GuidedActionsStylist</A><br>
+<!-- Class GuidedActionsStylist.ViewHolder -->
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html" class="hiddenlink" target="rightframe">GuidedActionsStylist.ViewHolder</A><br>
+<!-- Class GuidedStepFragment -->
+<A HREF="android.support.v17.leanback.app.GuidedStepFragment.html" class="hiddenlink" target="rightframe">GuidedStepFragment</A><br>
+<!-- Class GuidedStepFragment.GuidedStepBackgroundFragment -->
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepFragment.GuidedStepBackgroundFragment" class="hiddenlink" target="rightframe"><b>GuidedStepFragment.GuidedStepBackgroundFragment</b></A><br>
+<!-- Class GuidedStepSupportFragment -->
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepSupportFragment" class="hiddenlink" target="rightframe"><b>GuidedStepSupportFragment</b></A><br>
+<!-- Class GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment -->
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment" class="hiddenlink" target="rightframe"><b>GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment</b></A><br>
+<!-- Method hasOnClickListeners -->
+<A NAME="H"></A>
+<br><font size="+2">H</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.hasOnClickListeners_added(android.view.View)" class="hiddenlink" target="rightframe"><b>hasOnClickListeners</b>
+(<code>View</code>)</A></nobr><br>
+<!-- Class HeaderBehavior -->
+<A HREF="pkg_android.support.design.widget.html#HeaderBehavior" class="hiddenlink" target="rightframe"><b>HeaderBehavior</b></A><br>
+<!-- Class HeaderScrollingViewBehavior -->
+<A HREF="pkg_android.support.design.widget.html#HeaderScrollingViewBehavior" class="hiddenlink" target="rightframe"><b>HeaderScrollingViewBehavior</b></A><br>
+<!-- Method hide -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.hide_added(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)" class="hiddenlink" target="rightframe"><b>hide</b>
+(<code>OnVisibilityChangedListener</code>)</A></nobr><br>
+<!-- Field imageButtonStyle -->
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.imageButtonStyle" class="hiddenlink" target="rightframe">imageButtonStyle</A>
+</nobr><br>
+<!-- Class ImageCardView -->
+<i>ImageCardView</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v17.leanback.widget.ImageCardView.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Constructor ImageCardView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.ctor_added(android.content.Context, int)" class="hiddenlink" target="rightframe"><b>ImageCardView</b>
+(<code>Context, int</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Class ImeKeyMonitor -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ImeKeyMonitor" class="hiddenlink" target="rightframe"><b><i>ImeKeyMonitor</i></b></A><br>
+<!-- Class ImeKeyMonitor.ImeKeyListener -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ImeKeyMonitor.ImeKeyListener" class="hiddenlink" target="rightframe"><b><i>ImeKeyMonitor.ImeKeyListener</i></b></A><br>
+<!-- Method initialize -->
+<nobr><A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html#android.support.v17.leanback.widget.ShadowOverlayContainer.initialize_changed(boolean, boolean, boolean)" class="hiddenlink" target="rightframe">initialize
+(<code>boolean, boolean, boolean</code>)</A></nobr><br>
+<!-- Method isConnecting -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.isConnecting_changed()" class="hiddenlink" target="rightframe">isConnecting
+()</A></nobr><br>
+<!-- Method isEditable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isEditable_added()" class="hiddenlink" target="rightframe"><b>isEditable</b>
+()</A></nobr><br>
+<!-- Method isEditTitleUsed -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isEditTitleUsed_added()" class="hiddenlink" target="rightframe"><b>isEditTitleUsed</b>
+()</A></nobr><br>
+<!-- Method isEntryTransitionEnabled -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.isEntryTransitionEnabled_removed()" class="hiddenlink" target="rightframe"><strike>isEntryTransitionEnabled</strike>
+()</A></nobr><br>
+<!-- Method isKeepChildForeground -->
+<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.isKeepChildForeground_added()" class="hiddenlink" target="rightframe"><b>isKeepChildForeground</b>
+()</A></nobr><br>
+<!-- Method isShownOrQueued -->
+<nobr><A HREF="android.support.design.widget.Snackbar.html#android.support.design.widget.Snackbar.isShownOrQueued_added()" class="hiddenlink" target="rightframe"><b>isShownOrQueued</b>
+()</A></nobr><br>
+<!-- Class ItemBridgeAdapterShadowOverlayWrapper -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ItemBridgeAdapterShadowOverlayWrapper" class="hiddenlink" target="rightframe"><b>ItemBridgeAdapterShadowOverlayWrapper</b></A><br>
+<!-- Class ListRowPresenter -->
+<A NAME="L"></A>
+<br><font size="+2">L</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.widget.ListRowPresenter.html" class="hiddenlink" target="rightframe">ListRowPresenter</A><br>
+<!-- Class MediaButtonReceiver -->
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v4.media.session.html#MediaButtonReceiver" class="hiddenlink" target="rightframe"><b>MediaButtonReceiver</b></A><br>
+<!-- Class MediaRouteDescriptor -->
+<A HREF="android.support.v7.media.MediaRouteDescriptor.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor</A><br>
+<!-- Class MediaRouteDescriptor.Builder -->
+<A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor.Builder</A><br>
+<!-- Class MediaRouter.RouteGroup -->
+<A HREF="pkg_android.support.v7.media.html#MediaRouter.RouteGroup" class="hiddenlink" target="rightframe"><b>MediaRouter.RouteGroup</b></A><br>
+<!-- Class MediaRouter.RouteInfo -->
+<A HREF="android.support.v7.media.MediaRouter.RouteInfo.html" class="hiddenlink" target="rightframe">MediaRouter.RouteInfo</A><br>
+<!-- Class MediaSessionCompat -->
+<i>MediaSessionCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.media.session.MediaSessionCompat.html" class="hiddenlink" target="rightframe">android.support.v4.media.session</A><br>
+<!-- Constructor MediaSessionCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.media.session.MediaSessionCompat.html#android.support.v4.media.session.MediaSessionCompat.ctor_added(android.content.Context, java.lang.String)" class="hiddenlink" target="rightframe"><b>MediaSessionCompat</b>
+(<code>Context, String</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Class NavigationView.SavedState -->
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>NavigationView.SavedState</i><br>
+&nbsp;&nbsp;<A HREF="android.support.design.widget.NavigationView.SavedState.html" class="hiddenlink" target="rightframe">android.support.design.widget</A><br>
+<!-- Constructor NavigationView.SavedState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.NavigationView.SavedState.html#android.support.design.widget.NavigationView.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>NavigationView.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Constructor NavigationView.SavedState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.NavigationView.SavedState.html#android.support.design.widget.NavigationView.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>NavigationView.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Class NestedScrollView -->
+<A HREF="android.support.v4.widget.NestedScrollView.html" class="hiddenlink" target="rightframe">NestedScrollView</A><br>
+<!-- Class NestedScrollView.OnScrollChangeListener -->
+<A HREF="pkg_android.support.v4.widget.html#NestedScrollView.OnScrollChangeListener" class="hiddenlink" target="rightframe"><b><i>NestedScrollView.OnScrollChangeListener</i></b></A><br>
+<!-- Method onActivityEnter -->
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>onActivityEnter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onActivityEnter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onActivityEnter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onActivityExit -->
+<i>onActivityExit</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onActivityExit -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onActivityExit -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onAddEditTextToDialogView -->
+<i>onAddEditTextToDialogView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v14.preference.EditTextPreferenceDialogFragment.html#android.support.v14.preference.EditTextPreferenceDialogFragment.onAddEditTextToDialogView_removed(android.view.View, android.widget.EditText)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>View, EditText</code>)</strike>&nbsp;in&nbsp;android.support.v14.preference.EditTextPreferenceDialogFragment
+</A></nobr><br>
+<!-- Method onAddEditTextToDialogView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html#android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.onAddEditTextToDialogView_removed(android.view.View, android.widget.EditText)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>View, EditText</code>)</strike>&nbsp;in&nbsp;android.support.v7.preference.EditTextPreferenceDialogFragmentCompat
+</A></nobr><br>
+<!-- Method onDependentViewRemoved -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.Behavior.html#android.support.design.widget.FloatingActionButton.Behavior.onDependentViewRemoved_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.FloatingActionButton, android.view.View)" class="hiddenlink" target="rightframe"><strike>onDependentViewRemoved</strike>
+(<code>CoordinatorLayout, FloatingActionButton, View</code>)</A></nobr><br>
+<!-- Method onDestroyView -->
+<i>onDestroyView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html#android.support.v17.leanback.app.PlaybackOverlayFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlayFragment
+</A></nobr><br>
+<!-- Method onDestroyView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html#android.support.v17.leanback.app.PlaybackOverlaySupportFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlaySupportFragment
+</A></nobr><br>
+<!-- Method onDestroyView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<!-- Method onDestroyView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onDestroyView_changed()" class="hiddenlink" target="rightframe">type&nbsp;
+()&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionEnd -->
+<i>onEntranceTransitionEnd</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionEnd -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionEnd -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionEnd -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionPrepare -->
+<i>onEntranceTransitionPrepare</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionPrepare -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionPrepare -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionPrepare -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionStart -->
+<i>onEntranceTransitionStart</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method onEntranceTransitionStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method onFragmentEnter -->
+<i>onFragmentEnter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onFragmentEnter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onFragmentEnter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onFragmentExit -->
+<i>onFragmentExit</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onFragmentExit -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onFragmentExit -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onFragmentReenter -->
+<i>onFragmentReenter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onFragmentReenter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onFragmentReenter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onFragmentReturn -->
+<i>onFragmentReturn</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onFragmentReturn -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onFragmentReturn -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onGuidedActionEdited -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onGuidedActionEdited_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onGuidedActionEdited</b>
+(<code>GuidedAction</code>)</A></nobr><br>
+<!-- Method onImeAppearing -->
+<i>onImeAppearing</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onImeAppearing -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onImeAppearing -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onImeDisappearing -->
+<i>onImeDisappearing</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onImeDisappearing -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onImeDisappearing -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onInterceptTouchEvent -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.onInterceptTouchEvent_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.AppBarLayout, android.view.MotionEvent)" class="hiddenlink" target="rightframe"><strike>onInterceptTouchEvent</strike>
+(<code>CoordinatorLayout, AppBarLayout, MotionEvent</code>)</A></nobr><br>
+<!-- Method onLayout -->
+<nobr><A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html#android.support.v17.leanback.widget.ShadowOverlayContainer.onLayout_removed(boolean, int, int, int, int)" class="hiddenlink" target="rightframe"><strike>onLayout</strike>
+(<code>boolean, int, int, int, int</code>)</A></nobr><br>
+<!-- Method onLayoutChild -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onLayoutChild_added(android.support.design.widget.CoordinatorLayout, android.view.View, int)" class="hiddenlink" target="rightframe"><b>onLayoutChild</b>
+(<code>CoordinatorLayout, View, int</code>)</A></nobr><br>
+<!-- Method onMeasureChild -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onMeasureChild_removed(android.support.design.widget.CoordinatorLayout, android.view.View, int, int, int, int)" class="hiddenlink" target="rightframe"><strike>onMeasureChild</strike>
+(<code>CoordinatorLayout, View, int, int, int, int</code>)</A></nobr><br>
+<!-- Method onProvideBackgroundFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onProvideBackgroundFragment_added()" class="hiddenlink" target="rightframe"><b>onProvideBackgroundFragment</b>
+()</A></nobr><br>
+<!-- Method onProvideFragmentTransitions -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onProvideFragmentTransitions_added()" class="hiddenlink" target="rightframe"><b>onProvideFragmentTransitions</b>
+()</A></nobr><br>
+<!-- Method onResume -->
+<i>onResume</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html#android.support.v17.leanback.app.PlaybackOverlayFragment.onResume_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlayFragment
+</A></nobr><br>
+<!-- Method onResume -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html#android.support.v17.leanback.app.PlaybackOverlaySupportFragment.onResume_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlaySupportFragment
+</A></nobr><br>
+<!-- Method onSaveInstanceState -->
+<i>onSaveInstanceState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onSaveInstanceState_added(android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method onSaveInstanceState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onSaveInstanceState_added(android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method onStart -->
+<i>onStart</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method onStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method onStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method onStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method onStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<!-- Method onStart -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onStart_changed()" class="hiddenlink" target="rightframe">type&nbsp;
+()&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<!-- Method onTouchEvent -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.onTouchEvent_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.AppBarLayout, android.view.MotionEvent)" class="hiddenlink" target="rightframe"><strike>onTouchEvent</strike>
+(<code>CoordinatorLayout, AppBarLayout, MotionEvent</code>)</A></nobr><br>
+<!-- Method onViewCreated -->
+<i>onViewCreated</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onViewCreated_added(android.view.View, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<!-- Method onViewCreated -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onViewCreated_changed(android.view.View, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;
+(<code>View, Bundle</code>)&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<!-- Class Palette.Builder -->
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.graphics.Palette.Builder.html" class="hiddenlink" target="rightframe">Palette.Builder</A><br>
+<!-- Class ParallelExecutorCompat -->
+<A HREF="pkg_android.support.v4.content.html#ParallelExecutorCompat" class="hiddenlink" target="rightframe"><b>ParallelExecutorCompat</b></A><br>
+<!-- Class PercentLayoutHelper.PercentLayoutInfo -->
+<A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html" class="hiddenlink" target="rightframe">PercentLayoutHelper.PercentLayoutInfo</A><br>
+<!-- Class PlaybackControlSupportGlue -->
+<A HREF="pkg_android.support.v17.leanback.app.html#PlaybackControlSupportGlue" class="hiddenlink" target="rightframe"><b>PlaybackControlSupportGlue</b></A><br>
+<!-- Class PlaybackOverlayFragment -->
+<A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html" class="hiddenlink" target="rightframe">PlaybackOverlayFragment</A><br>
+<!-- Class PlaybackOverlaySupportFragment -->
+<A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html" class="hiddenlink" target="rightframe">PlaybackOverlaySupportFragment</A><br>
+<!-- Class R.attr -->
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.appcompat.R.attr.html" class="hiddenlink" target="rightframe">R.attr</A><br>
+<!-- Class R.bool -->
+<A HREF="android.support.v7.appcompat.R.bool.html" class="hiddenlink" target="rightframe">R.bool</A><br>
+<!-- Class R.dimen -->
+<A HREF="android.support.v7.appcompat.R.dimen.html" class="hiddenlink" target="rightframe">R.dimen</A><br>
+<!-- Class R.drawable -->
+<A HREF="android.support.v7.appcompat.R.drawable.html" class="hiddenlink" target="rightframe">R.drawable</A><br>
+<!-- Class R.id -->
+<A HREF="android.support.v7.appcompat.R.id.html" class="hiddenlink" target="rightframe">R.id</A><br>
+<!-- Class R.layout -->
+<A HREF="android.support.v7.appcompat.R.layout.html" class="hiddenlink" target="rightframe">R.layout</A><br>
+<!-- Class R.string -->
+<A HREF="android.support.v7.appcompat.R.string.html" class="hiddenlink" target="rightframe">R.string</A><br>
+<!-- Class R.style -->
+<A HREF="android.support.v7.appcompat.R.style.html" class="hiddenlink" target="rightframe">R.style</A><br>
+<!-- Class R.styleable -->
+<A HREF="android.support.v7.appcompat.R.styleable.html" class="hiddenlink" target="rightframe">R.styleable</A><br>
+<!-- Class ResourcesCompat -->
+<A HREF="android.support.v4.content.res.ResourcesCompat.html" class="hiddenlink" target="rightframe">ResourcesCompat</A><br>
+<!-- Class RowPresenter -->
+<A HREF="android.support.v17.leanback.widget.RowPresenter.html" class="hiddenlink" target="rightframe">RowPresenter</A><br>
+<!-- Field RtlOverlay_Widget_AppCompat_ActionButton_Overflow -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlOverlay_Widget_AppCompat_ActionButton_Overflow" class="hiddenlink" target="rightframe"><strike>RtlOverlay_Widget_AppCompat_ActionButton_Overflow</strike></A>
+</nobr><br>
+<!-- Field RtlUnderlay_Widget_AppCompat_ActionButton -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlUnderlay_Widget_AppCompat_ActionButton" class="hiddenlink" target="rightframe">RtlUnderlay_Widget_AppCompat_ActionButton</A>
+</nobr><br>
+<!-- Field RtlUnderlay_Widget_AppCompat_ActionButton_Overflow -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlUnderlay_Widget_AppCompat_ActionButton_Overflow" class="hiddenlink" target="rightframe">RtlUnderlay_Widget_AppCompat_ActionButton_Overflow</A>
+</nobr><br>
+<!-- Method runEntranceTransition -->
+<i>runEntranceTransition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method runEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method runEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method runEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method runEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<!-- Method runEntranceTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<!-- Field SCROLL_FLAG_SNAP -->
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.AppBarLayout.LayoutParams.html#android.support.design.widget.AppBarLayout.LayoutParams.SCROLL_FLAG_SNAP" class="hiddenlink" target="rightframe">SCROLL_FLAG_SNAP</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_BOTTOM -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_BOTTOM" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_BOTTOM</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_END -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_END" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_END</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_LEFT -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_LEFT" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_LEFT</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_RIGHT -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_RIGHT" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_RIGHT</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_START -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_START" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_START</A>
+</nobr><br>
+<!-- Field SCROLL_INDICATOR_TOP -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_TOP" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_TOP</A>
+</nobr><br>
+<!-- Class ScrollerCompat -->
+<A HREF="android.support.v4.widget.ScrollerCompat.html" class="hiddenlink" target="rightframe">ScrollerCompat</A><br>
+<!-- Field scrollIndicatorDown -->
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.scrollIndicatorDown" class="hiddenlink" target="rightframe">scrollIndicatorDown</A>
+</nobr><br>
+<!-- Field scrollIndicatorUp -->
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.scrollIndicatorUp" class="hiddenlink" target="rightframe">scrollIndicatorUp</A>
+</nobr><br>
+<!-- Class SearchBar -->
+<A HREF="android.support.v17.leanback.widget.SearchBar.html" class="hiddenlink" target="rightframe">SearchBar</A><br>
+<!-- Class SearchFragment -->
+<A HREF="android.support.v17.leanback.app.SearchFragment.html" class="hiddenlink" target="rightframe">SearchFragment</A><br>
+<!-- Class SearchSupportFragment -->
+<A HREF="android.support.v17.leanback.app.SearchSupportFragment.html" class="hiddenlink" target="rightframe">SearchSupportFragment</A><br>
+<!-- Field seekBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.seekBarStyle" class="hiddenlink" target="rightframe">seekBarStyle</A>
+</nobr><br>
+<!-- Method setActionButton -->
+<i>setActionButton</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.setActionButton_added(android.graphics.Bitmap, java.lang.String, android.app.PendingIntent, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bitmap, String, PendingIntent, boolean</code>)</b>&nbsp;in&nbsp;android.support.customtabs.CustomTabsIntent.Builder
+</A></nobr><br>
+<!-- Method setActionButton -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.customtabs.CustomTabsSession.html#android.support.customtabs.CustomTabsSession.setActionButton_added(android.graphics.Bitmap, java.lang.String)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bitmap, String</code>)</b>&nbsp;in&nbsp;android.support.customtabs.CustomTabsSession
+</A></nobr><br>
+<!-- Method setCollapsedTitleTypeface -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setCollapsedTitleTypeface_added(android.graphics.Typeface)" class="hiddenlink" target="rightframe"><b>setCollapsedTitleTypeface</b>
+(<code>Typeface</code>)</A></nobr><br>
+<!-- Method setConnecting -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setConnecting_changed(boolean)" class="hiddenlink" target="rightframe">setConnecting
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setConnectionState -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setConnectionState_added(int)" class="hiddenlink" target="rightframe"><b>setConnectionState</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setCounterEnabled -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.setCounterEnabled_added(boolean)" class="hiddenlink" target="rightframe"><b>setCounterEnabled</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setCounterMaxLength -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.setCounterMaxLength_added(int)" class="hiddenlink" target="rightframe"><b>setCounterMaxLength</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setDescription -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setDescription_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setDescription</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<!-- Method setDeviceType -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setDeviceType_added(int)" class="hiddenlink" target="rightframe"><b>setDeviceType</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setDragCallback -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.setDragCallback_added(android.support.design.widget.AppBarLayout.Behavior.DragCallback)" class="hiddenlink" target="rightframe"><b>setDragCallback</b>
+(<code>DragCallback</code>)</A></nobr><br>
+<!-- Method setEditTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setEditTitle_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setEditTitle</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<!-- Method setEntranceTransitionState -->
+<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.setEntranceTransitionState_added(android.support.v17.leanback.widget.VerticalGridPresenter.ViewHolder, boolean)" class="hiddenlink" target="rightframe"><b>setEntranceTransitionState</b>
+(<code>ViewHolder, boolean</code>)</A></nobr><br>
+<!-- Method setEntryTransitionEnabled -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setEntryTransitionEnabled_removed(boolean)" class="hiddenlink" target="rightframe"><strike>setEntryTransitionEnabled</strike>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setExpandedTitleTypeface -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleTypeface_added(android.graphics.Typeface)" class="hiddenlink" target="rightframe"><b>setExpandedTitleTypeface</b>
+(<code>Typeface</code>)</A></nobr><br>
+<!-- Method setIconUri -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setIconUri_added(android.net.Uri)" class="hiddenlink" target="rightframe"><b>setIconUri</b>
+(<code>Uri</code>)</A></nobr><br>
+<!-- Method setKeepChildForeground -->
+<i>setKeepChildForeground</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.setKeepChildForeground_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.ListRowPresenter
+</A></nobr><br>
+<!-- Method setKeepChildForeground -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.setKeepChildForeground_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.VerticalGridPresenter
+</A></nobr><br>
+<!-- Method setOnScrollChangeListener -->
+<nobr><A HREF="android.support.v4.widget.NestedScrollView.html#android.support.v4.widget.NestedScrollView.setOnScrollChangeListener_added(android.support.v4.widget.NestedScrollView.OnScrollChangeListener)" class="hiddenlink" target="rightframe"><b>setOnScrollChangeListener</b>
+(<code>OnScrollChangeListener</code>)</A></nobr><br>
+<!-- Method setRegion -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.setRegion_added(int, int, int, int)" class="hiddenlink" target="rightframe"><b>setRegion</b>
+(<code>int, int, int, int</code>)</A></nobr><br>
+<!-- Method setScrimsShown -->
+<i>setScrimsShown</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setScrimsShown_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.design.widget.CollapsingToolbarLayout
+</A></nobr><br>
+<!-- Method setScrimsShown -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setScrimsShown_added(boolean, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean, boolean</code>)</b>&nbsp;in&nbsp;android.support.design.widget.CollapsingToolbarLayout
+</A></nobr><br>
+<!-- Method setScrollIndicators -->
+<i>setScrollIndicators</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.setScrollIndicators_added(android.view.View, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, int</code>)</b>&nbsp;in&nbsp;android.support.v4.view.ViewCompat
+</A></nobr><br>
+<!-- Method setScrollIndicators -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.setScrollIndicators_added(android.view.View, int, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, int, int</code>)</b>&nbsp;in&nbsp;android.support.v4.view.ViewCompat
+</A></nobr><br>
+<!-- Method setSupportMediaController -->
+<nobr><A HREF="android.support.v4.app.FragmentActivity.html#android.support.v4.app.FragmentActivity.setSupportMediaController_added(android.support.v4.media.session.MediaControllerCompat)" class="hiddenlink" target="rightframe"><b>setSupportMediaController</b>
+(<code>MediaControllerCompat</code>)</A></nobr><br>
+<!-- Method setTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setTitle_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setTitle</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<!-- Method setUiStyle -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setUiStyle_added(int)" class="hiddenlink" target="rightframe"><b>setUiStyle</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Class ShadowOverlayContainer -->
+<A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html" class="hiddenlink" target="rightframe">ShadowOverlayContainer</A><br>
+<!-- Class ShadowOverlayHelper -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper</b></A><br>
+<!-- Class ShadowOverlayHelper.Builder -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper.Builder" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper.Builder</b></A><br>
+<!-- Class ShadowOverlayHelper.Options -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper.Options" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper.Options</b></A><br>
+<!-- Method show -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.show_added(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)" class="hiddenlink" target="rightframe"><b>show</b>
+(<code>OnVisibilityChangedListener</code>)</A></nobr><br>
+<!-- Class Snackbar -->
+<A HREF="android.support.design.widget.Snackbar.html" class="hiddenlink" target="rightframe">Snackbar</A><br>
+<!-- Field spacer -->
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.spacer" class="hiddenlink" target="rightframe">spacer</A>
+</nobr><br>
+<!-- Method springBack -->
+<nobr><A HREF="android.support.v4.widget.ScrollerCompat.html#android.support.v4.widget.ScrollerCompat.springBack_added(int, int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>springBack</b>
+(<code>int, int, int, int, int, int</code>)</A></nobr><br>
+<!-- Field TAB_HIDDEN -->
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.customtabs.CustomTabsCallback.html#android.support.customtabs.CustomTabsCallback.TAB_HIDDEN" class="hiddenlink" target="rightframe">TAB_HIDDEN</A>
+</nobr><br>
+<!-- Field TAB_SHOWN -->
+<nobr><A HREF="android.support.customtabs.CustomTabsCallback.html#android.support.customtabs.CustomTabsCallback.TAB_SHOWN" class="hiddenlink" target="rightframe">TAB_SHOWN</A>
+</nobr><br>
+<!-- Field TextAppearance_android_shadowColor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowColor" class="hiddenlink" target="rightframe">TextAppearance_android_shadowColor</A>
+</nobr><br>
+<!-- Field TextAppearance_android_shadowDx -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowDx" class="hiddenlink" target="rightframe">TextAppearance_android_shadowDx</A>
+</nobr><br>
+<!-- Field TextAppearance_android_shadowDy -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowDy" class="hiddenlink" target="rightframe">TextAppearance_android_shadowDy</A>
+</nobr><br>
+<!-- Field TextAppearance_android_shadowRadius -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowRadius" class="hiddenlink" target="rightframe">TextAppearance_android_shadowRadius</A>
+</nobr><br>
+<!-- Class TextInputLayout -->
+<A HREF="android.support.design.widget.TextInputLayout.html" class="hiddenlink" target="rightframe">TextInputLayout</A><br>
+<!-- Class TextViewCompat -->
+<A HREF="android.support.v4.widget.TextViewCompat.html" class="hiddenlink" target="rightframe">TextViewCompat</A><br>
+<!-- Field Theme_imageButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_imageButtonStyle" class="hiddenlink" target="rightframe">Theme_imageButtonStyle</A>
+</nobr><br>
+<!-- Field Theme_seekBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_seekBarStyle" class="hiddenlink" target="rightframe">Theme_seekBarStyle</A>
+</nobr><br>
+<!-- Field UI_STYLE_ACTIVITY_ROOT -->
+<A NAME="U"></A>
+<br><font size="+2">U</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_ACTIVITY_ROOT" class="hiddenlink" target="rightframe">UI_STYLE_ACTIVITY_ROOT</A>
+</nobr><br>
+<!-- Field UI_STYLE_DEFAULT -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_DEFAULT" class="hiddenlink" target="rightframe">UI_STYLE_DEFAULT</A>
+</nobr><br>
+<!-- Field UI_STYLE_ENTRANCE -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_ENTRANCE" class="hiddenlink" target="rightframe">UI_STYLE_ENTRANCE</A>
+</nobr><br>
+<!-- Method updateVisuals -->
+<nobr><A HREF="android.support.customtabs.CustomTabsService.html#android.support.customtabs.CustomTabsService.updateVisuals_added(android.support.customtabs.CustomTabsSessionToken, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>updateVisuals</b>
+(<code>CustomTabsSessionToken, Bundle</code>)</A></nobr><br>
+<!-- Class VerticalGridFragment -->
+<A NAME="V"></A>
+<br><font size="+2">V</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.VerticalGridFragment.html" class="hiddenlink" target="rightframe">VerticalGridFragment</A><br>
+<!-- Class VerticalGridPresenter -->
+<A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html" class="hiddenlink" target="rightframe">VerticalGridPresenter</A><br>
+<!-- Class VerticalGridSupportFragment -->
+<A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html" class="hiddenlink" target="rightframe">VerticalGridSupportFragment</A><br>
+<!-- Class ViewCompat -->
+<A HREF="android.support.v4.view.ViewCompat.html" class="hiddenlink" target="rightframe">ViewCompat</A><br>
+<!-- Field Widget_AppCompat_ImageButton -->
+<A NAME="W"></A>
+<br><font size="+2">W</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_ImageButton" class="hiddenlink" target="rightframe">Widget_AppCompat_ImageButton</A>
+</nobr><br>
+<!-- Field Widget_AppCompat_SeekBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_SeekBar" class="hiddenlink" target="rightframe">Widget_AppCompat_SeekBar</A>
+</nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_changes.html b/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_changes.html
new file mode 100644
index 0000000..d7ebd36
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_changes.html
@@ -0,0 +1,562 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+All Changes Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for All Differences" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="alldiffs_index_all.html" xclass="hiddenlink">All Differences</a>
+  <br>
+<A HREF="alldiffs_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<A HREF="alldiffs_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<b>Changes</b>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<!-- Package android.support.customtabs -->
+<A NAME="A"></A>
+<A HREF="pkg_android.support.customtabs.html" class="hiddenlink" target="rightframe">android.support.customtabs</A><br>
+<!-- Package android.support.design.widget -->
+<A HREF="pkg_android.support.design.widget.html" class="hiddenlink" target="rightframe">android.support.design.widget</A><br>
+<!-- Package android.support.percent -->
+<A HREF="pkg_android.support.percent.html" class="hiddenlink" target="rightframe">android.support.percent</A><br>
+<!-- Package android.support.v14.preference -->
+<A HREF="pkg_android.support.v14.preference.html" class="hiddenlink" target="rightframe">android.support.v14.preference</A><br>
+<!-- Package android.support.v17.leanback.app -->
+<A HREF="pkg_android.support.v17.leanback.app.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.app</A><br>
+<!-- Package android.support.v17.leanback.widget -->
+<A HREF="pkg_android.support.v17.leanback.widget.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Package android.support.v4.app -->
+<A HREF="pkg_android.support.v4.app.html" class="hiddenlink" target="rightframe">android.support.v4.app</A><br>
+<!-- Package android.support.v4.content -->
+<A HREF="pkg_android.support.v4.content.html" class="hiddenlink" target="rightframe">android.support.v4.content</A><br>
+<!-- Package android.support.v4.content.res -->
+<A HREF="pkg_android.support.v4.content.res.html" class="hiddenlink" target="rightframe">android.support.v4.content.res</A><br>
+<!-- Package android.support.v4.media.session -->
+<A HREF="pkg_android.support.v4.media.session.html" class="hiddenlink" target="rightframe">android.support.v4.media.session</A><br>
+<!-- Package android.support.v4.view -->
+<A HREF="pkg_android.support.v4.view.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Package android.support.v4.widget -->
+<A HREF="pkg_android.support.v4.widget.html" class="hiddenlink" target="rightframe">android.support.v4.widget</A><br>
+<!-- Package android.support.v7.appcompat -->
+<A HREF="pkg_android.support.v7.appcompat.html" class="hiddenlink" target="rightframe">android.support.v7.appcompat</A><br>
+<!-- Package android.support.v7.graphics -->
+<A HREF="pkg_android.support.v7.graphics.html" class="hiddenlink" target="rightframe">android.support.v7.graphics</A><br>
+<!-- Package android.support.v7.graphics.drawable -->
+<A HREF="pkg_android.support.v7.graphics.drawable.html" class="hiddenlink" target="rightframe">android.support.v7.graphics.drawable</A><br>
+<!-- Package android.support.v7.media -->
+<A HREF="pkg_android.support.v7.media.html" class="hiddenlink" target="rightframe">android.support.v7.media</A><br>
+<!-- Package android.support.v7.preference -->
+<A HREF="pkg_android.support.v7.preference.html" class="hiddenlink" target="rightframe">android.support.v7.preference</A><br>
+<!-- Class AppBarLayout.Behavior -->
+<A HREF="android.support.design.widget.AppBarLayout.Behavior.html" class="hiddenlink" target="rightframe">AppBarLayout.Behavior</A><br>
+<!-- Class AppBarLayout.Behavior.SavedState -->
+<A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html" class="hiddenlink" target="rightframe">AppBarLayout.Behavior.SavedState</A><br>
+<!-- Class AppBarLayout.LayoutParams -->
+<A HREF="android.support.design.widget.AppBarLayout.LayoutParams.html" class="hiddenlink" target="rightframe">AppBarLayout.LayoutParams</A><br>
+<!-- Class AppBarLayout.ScrollingViewBehavior -->
+<A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html" class="hiddenlink" target="rightframe">AppBarLayout.ScrollingViewBehavior</A><br>
+<!-- Class BrowseFragment -->
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.BrowseFragment.html" class="hiddenlink" target="rightframe">BrowseFragment</A><br>
+<!-- Class BrowseSupportFragment -->
+<A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html" class="hiddenlink" target="rightframe">BrowseSupportFragment</A><br>
+<!-- Class CollapsingToolbarLayout -->
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.CollapsingToolbarLayout.html" class="hiddenlink" target="rightframe">CollapsingToolbarLayout</A><br>
+<!-- Class CoordinatorLayout.SavedState -->
+<A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html" class="hiddenlink" target="rightframe">CoordinatorLayout.SavedState</A><br>
+<!-- Class CustomTabsCallback -->
+<A HREF="android.support.customtabs.CustomTabsCallback.html" class="hiddenlink" target="rightframe">CustomTabsCallback</A><br>
+<!-- Class CustomTabsIntent -->
+<A HREF="android.support.customtabs.CustomTabsIntent.html" class="hiddenlink" target="rightframe">CustomTabsIntent</A><br>
+<!-- Class CustomTabsIntent.Builder -->
+<A HREF="android.support.customtabs.CustomTabsIntent.Builder.html" class="hiddenlink" target="rightframe">CustomTabsIntent.Builder</A><br>
+<!-- Class CustomTabsService -->
+<A HREF="android.support.customtabs.CustomTabsService.html" class="hiddenlink" target="rightframe">CustomTabsService</A><br>
+<!-- Class CustomTabsSession -->
+<A HREF="android.support.customtabs.CustomTabsSession.html" class="hiddenlink" target="rightframe">CustomTabsSession</A><br>
+<!-- Class CustomTabsSessionToken -->
+<A HREF="android.support.customtabs.CustomTabsSessionToken.html" class="hiddenlink" target="rightframe">CustomTabsSessionToken</A><br>
+<!-- Class DetailsFragment -->
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.DetailsFragment.html" class="hiddenlink" target="rightframe">DetailsFragment</A><br>
+<!-- Class DetailsSupportFragment -->
+<A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html" class="hiddenlink" target="rightframe">DetailsSupportFragment</A><br>
+<!-- Class DrawerArrowDrawable -->
+<A HREF="android.support.v7.graphics.drawable.DrawerArrowDrawable.html" class="hiddenlink" target="rightframe">DrawerArrowDrawable</A><br>
+<!-- Class EditTextPreferenceDialogFragment -->
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v14.preference.EditTextPreferenceDialogFragment.html" class="hiddenlink" target="rightframe">EditTextPreferenceDialogFragment</A><br>
+<!-- Class EditTextPreferenceDialogFragmentCompat -->
+<A HREF="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html" class="hiddenlink" target="rightframe">EditTextPreferenceDialogFragmentCompat</A><br>
+<!-- Class FloatingActionButton -->
+<A NAME="F"></A>
+<br><font size="+2">F</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.FloatingActionButton.html" class="hiddenlink" target="rightframe">FloatingActionButton</A><br>
+<!-- Class FloatingActionButton.Behavior -->
+<A HREF="android.support.design.widget.FloatingActionButton.Behavior.html" class="hiddenlink" target="rightframe">FloatingActionButton.Behavior</A><br>
+<!-- Class FragmentActivity -->
+<A HREF="android.support.v4.app.FragmentActivity.html" class="hiddenlink" target="rightframe">FragmentActivity</A><br>
+<!-- Class FragmentAnimationProvider -->
+<A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html" class="hiddenlink" target="rightframe"><i>FragmentAnimationProvider</i></A><br>
+<!-- Class GuidanceStylist -->
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.widget.GuidanceStylist.html" class="hiddenlink" target="rightframe">GuidanceStylist</A><br>
+<!-- Class GuidedAction -->
+<A HREF="android.support.v17.leanback.widget.GuidedAction.html" class="hiddenlink" target="rightframe">GuidedAction</A><br>
+<!-- Class GuidedAction.Builder -->
+<A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html" class="hiddenlink" target="rightframe">GuidedAction.Builder</A><br>
+<!-- Class GuidedActionsStylist -->
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html" class="hiddenlink" target="rightframe">GuidedActionsStylist</A><br>
+<!-- Class GuidedActionsStylist.ViewHolder -->
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html" class="hiddenlink" target="rightframe">GuidedActionsStylist.ViewHolder</A><br>
+<!-- Class GuidedStepFragment -->
+<A HREF="android.support.v17.leanback.app.GuidedStepFragment.html" class="hiddenlink" target="rightframe">GuidedStepFragment</A><br>
+<!-- Class ImageCardView -->
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.widget.ImageCardView.html" class="hiddenlink" target="rightframe">ImageCardView</A><br>
+<!-- Method initialize -->
+<nobr><A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html#android.support.v17.leanback.widget.ShadowOverlayContainer.initialize_changed(boolean, boolean, boolean)" class="hiddenlink" target="rightframe">initialize
+(<code>boolean, boolean, boolean</code>)</A></nobr><br>
+<!-- Method isConnecting -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.isConnecting_changed()" class="hiddenlink" target="rightframe">isConnecting
+()</A></nobr><br>
+<!-- Class ListRowPresenter -->
+<A NAME="L"></A>
+<br><font size="+2">L</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.widget.ListRowPresenter.html" class="hiddenlink" target="rightframe">ListRowPresenter</A><br>
+<!-- Class MediaRouteDescriptor -->
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.media.MediaRouteDescriptor.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor</A><br>
+<!-- Class MediaRouteDescriptor.Builder -->
+<A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor.Builder</A><br>
+<!-- Class MediaRouter.RouteInfo -->
+<A HREF="android.support.v7.media.MediaRouter.RouteInfo.html" class="hiddenlink" target="rightframe">MediaRouter.RouteInfo</A><br>
+<!-- Class MediaSessionCompat -->
+<A HREF="android.support.v4.media.session.MediaSessionCompat.html" class="hiddenlink" target="rightframe">MediaSessionCompat</A><br>
+<!-- Class NavigationView.SavedState -->
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.NavigationView.SavedState.html" class="hiddenlink" target="rightframe">NavigationView.SavedState</A><br>
+<!-- Class NestedScrollView -->
+<A HREF="android.support.v4.widget.NestedScrollView.html" class="hiddenlink" target="rightframe">NestedScrollView</A><br>
+<!-- Method onDestroyView -->
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onDestroyView_changed()" class="hiddenlink" target="rightframe">onDestroyView
+()</A></nobr><br>
+<!-- Method onStart -->
+<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onStart_changed()" class="hiddenlink" target="rightframe">onStart
+()</A></nobr><br>
+<!-- Method onViewCreated -->
+<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onViewCreated_changed(android.view.View, android.os.Bundle)" class="hiddenlink" target="rightframe">onViewCreated
+(<code>View, Bundle</code>)</A></nobr><br>
+<!-- Class Palette.Builder -->
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.graphics.Palette.Builder.html" class="hiddenlink" target="rightframe">Palette.Builder</A><br>
+<!-- Class PercentLayoutHelper.PercentLayoutInfo -->
+<A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html" class="hiddenlink" target="rightframe">PercentLayoutHelper.PercentLayoutInfo</A><br>
+<!-- Class PlaybackOverlayFragment -->
+<A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html" class="hiddenlink" target="rightframe">PlaybackOverlayFragment</A><br>
+<!-- Class PlaybackOverlaySupportFragment -->
+<A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html" class="hiddenlink" target="rightframe">PlaybackOverlaySupportFragment</A><br>
+<!-- Class R.attr -->
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.appcompat.R.attr.html" class="hiddenlink" target="rightframe">R.attr</A><br>
+<!-- Class R.bool -->
+<A HREF="android.support.v7.appcompat.R.bool.html" class="hiddenlink" target="rightframe">R.bool</A><br>
+<!-- Class R.dimen -->
+<A HREF="android.support.v7.appcompat.R.dimen.html" class="hiddenlink" target="rightframe">R.dimen</A><br>
+<!-- Class R.drawable -->
+<A HREF="android.support.v7.appcompat.R.drawable.html" class="hiddenlink" target="rightframe">R.drawable</A><br>
+<!-- Class R.id -->
+<A HREF="android.support.v7.appcompat.R.id.html" class="hiddenlink" target="rightframe">R.id</A><br>
+<!-- Class R.layout -->
+<A HREF="android.support.v7.appcompat.R.layout.html" class="hiddenlink" target="rightframe">R.layout</A><br>
+<!-- Class R.string -->
+<A HREF="android.support.v7.appcompat.R.string.html" class="hiddenlink" target="rightframe">R.string</A><br>
+<!-- Class R.style -->
+<A HREF="android.support.v7.appcompat.R.style.html" class="hiddenlink" target="rightframe">R.style</A><br>
+<!-- Class R.styleable -->
+<A HREF="android.support.v7.appcompat.R.styleable.html" class="hiddenlink" target="rightframe">R.styleable</A><br>
+<!-- Class ResourcesCompat -->
+<A HREF="android.support.v4.content.res.ResourcesCompat.html" class="hiddenlink" target="rightframe">ResourcesCompat</A><br>
+<!-- Class RowPresenter -->
+<A HREF="android.support.v17.leanback.widget.RowPresenter.html" class="hiddenlink" target="rightframe">RowPresenter</A><br>
+<!-- Class ScrollerCompat -->
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.widget.ScrollerCompat.html" class="hiddenlink" target="rightframe">ScrollerCompat</A><br>
+<!-- Class SearchBar -->
+<A HREF="android.support.v17.leanback.widget.SearchBar.html" class="hiddenlink" target="rightframe">SearchBar</A><br>
+<!-- Class SearchFragment -->
+<A HREF="android.support.v17.leanback.app.SearchFragment.html" class="hiddenlink" target="rightframe">SearchFragment</A><br>
+<!-- Class SearchSupportFragment -->
+<A HREF="android.support.v17.leanback.app.SearchSupportFragment.html" class="hiddenlink" target="rightframe">SearchSupportFragment</A><br>
+<!-- Method setConnecting -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setConnecting_changed(boolean)" class="hiddenlink" target="rightframe">setConnecting
+(<code>boolean</code>)</A></nobr><br>
+<!-- Class ShadowOverlayContainer -->
+<A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html" class="hiddenlink" target="rightframe">ShadowOverlayContainer</A><br>
+<!-- Class Snackbar -->
+<A HREF="android.support.design.widget.Snackbar.html" class="hiddenlink" target="rightframe">Snackbar</A><br>
+<!-- Class TextInputLayout -->
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.TextInputLayout.html" class="hiddenlink" target="rightframe">TextInputLayout</A><br>
+<!-- Class TextViewCompat -->
+<A HREF="android.support.v4.widget.TextViewCompat.html" class="hiddenlink" target="rightframe">TextViewCompat</A><br>
+<!-- Class VerticalGridFragment -->
+<A NAME="V"></A>
+<br><font size="+2">V</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.VerticalGridFragment.html" class="hiddenlink" target="rightframe">VerticalGridFragment</A><br>
+<!-- Class VerticalGridPresenter -->
+<A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html" class="hiddenlink" target="rightframe">VerticalGridPresenter</A><br>
+<!-- Class VerticalGridSupportFragment -->
+<A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html" class="hiddenlink" target="rightframe">VerticalGridSupportFragment</A><br>
+<!-- Class ViewCompat -->
+<A HREF="android.support.v4.view.ViewCompat.html" class="hiddenlink" target="rightframe">ViewCompat</A><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_removals.html b/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_removals.html
new file mode 100644
index 0000000..0d7da0f
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/alldiffs_index_removals.html
@@ -0,0 +1,284 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+All Removals Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for All Differences" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="alldiffs_index_all.html" xclass="hiddenlink">All Differences</a>
+  <br>
+<b>Removals</b>
+  <br>
+<A HREF="alldiffs_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<A HREF="alldiffs_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<!-- Constructor AppBarLayout.Behavior.SavedState -->
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html#android.support.design.widget.AppBarLayout.Behavior.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>AppBarLayout.Behavior.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Method canDrawOutOfBounds -->
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.RowPresenter.html#android.support.v17.leanback.widget.RowPresenter.canDrawOutOfBounds_removed()" class="hiddenlink" target="rightframe"><strike>canDrawOutOfBounds</strike>
+()</A></nobr><br>
+<!-- Constructor CoordinatorLayout.SavedState -->
+<nobr><A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html#android.support.design.widget.CoordinatorLayout.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>CoordinatorLayout.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Field dialog_fixed_height_major -->
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_height_major" class="hiddenlink" target="rightframe"><strike>dialog_fixed_height_major</strike></A>
+</nobr><br>
+<!-- Field dialog_fixed_height_minor -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_height_minor" class="hiddenlink" target="rightframe"><strike>dialog_fixed_height_minor</strike></A>
+</nobr><br>
+<!-- Field dialog_fixed_width_major -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_width_major" class="hiddenlink" target="rightframe"><strike>dialog_fixed_width_major</strike></A>
+</nobr><br>
+<!-- Field dialog_fixed_width_minor -->
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_width_minor" class="hiddenlink" target="rightframe"><strike>dialog_fixed_width_minor</strike></A>
+</nobr><br>
+<!-- Method isEntryTransitionEnabled -->
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.isEntryTransitionEnabled_removed()" class="hiddenlink" target="rightframe"><strike>isEntryTransitionEnabled</strike>
+()</A></nobr><br>
+<!-- Constructor NavigationView.SavedState -->
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.NavigationView.SavedState.html#android.support.design.widget.NavigationView.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>NavigationView.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Method onActivityEnter -->
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>onActivityEnter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onActivityEnter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onActivityEnter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onActivityExit -->
+<i>onActivityExit</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onActivityExit -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onActivityExit -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onAddEditTextToDialogView -->
+<i>onAddEditTextToDialogView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v14.preference.EditTextPreferenceDialogFragment.html#android.support.v14.preference.EditTextPreferenceDialogFragment.onAddEditTextToDialogView_removed(android.view.View, android.widget.EditText)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>View, EditText</code>)</strike>&nbsp;in&nbsp;android.support.v14.preference.EditTextPreferenceDialogFragment
+</A></nobr><br>
+<!-- Method onAddEditTextToDialogView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html#android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.onAddEditTextToDialogView_removed(android.view.View, android.widget.EditText)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>View, EditText</code>)</strike>&nbsp;in&nbsp;android.support.v7.preference.EditTextPreferenceDialogFragmentCompat
+</A></nobr><br>
+<!-- Method onDependentViewRemoved -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.Behavior.html#android.support.design.widget.FloatingActionButton.Behavior.onDependentViewRemoved_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.FloatingActionButton, android.view.View)" class="hiddenlink" target="rightframe"><strike>onDependentViewRemoved</strike>
+(<code>CoordinatorLayout, FloatingActionButton, View</code>)</A></nobr><br>
+<!-- Method onFragmentEnter -->
+<i>onFragmentEnter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onFragmentEnter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onFragmentEnter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onFragmentExit -->
+<i>onFragmentExit</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onFragmentExit -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onFragmentExit -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onFragmentReenter -->
+<i>onFragmentReenter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onFragmentReenter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onFragmentReenter -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onFragmentReturn -->
+<i>onFragmentReturn</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+<!-- Method onFragmentReturn -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onFragmentReturn -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onInterceptTouchEvent -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.onInterceptTouchEvent_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.AppBarLayout, android.view.MotionEvent)" class="hiddenlink" target="rightframe"><strike>onInterceptTouchEvent</strike>
+(<code>CoordinatorLayout, AppBarLayout, MotionEvent</code>)</A></nobr><br>
+<!-- Method onLayout -->
+<nobr><A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html#android.support.v17.leanback.widget.ShadowOverlayContainer.onLayout_removed(boolean, int, int, int, int)" class="hiddenlink" target="rightframe"><strike>onLayout</strike>
+(<code>boolean, int, int, int, int</code>)</A></nobr><br>
+<!-- Method onMeasureChild -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onMeasureChild_removed(android.support.design.widget.CoordinatorLayout, android.view.View, int, int, int, int)" class="hiddenlink" target="rightframe"><strike>onMeasureChild</strike>
+(<code>CoordinatorLayout, View, int, int, int, int</code>)</A></nobr><br>
+<!-- Method onTouchEvent -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.onTouchEvent_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.AppBarLayout, android.view.MotionEvent)" class="hiddenlink" target="rightframe"><strike>onTouchEvent</strike>
+(<code>CoordinatorLayout, AppBarLayout, MotionEvent</code>)</A></nobr><br>
+<!-- Field RtlOverlay_Widget_AppCompat_ActionButton_Overflow -->
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlOverlay_Widget_AppCompat_ActionButton_Overflow" class="hiddenlink" target="rightframe"><strike>RtlOverlay_Widget_AppCompat_ActionButton_Overflow</strike></A>
+</nobr><br>
+<!-- Method setEntryTransitionEnabled -->
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setEntryTransitionEnabled_removed(boolean)" class="hiddenlink" target="rightframe"><strike>setEntryTransitionEnabled</strike>
+(<code>boolean</code>)</A></nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsCallback.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsCallback.html
new file mode 100644
index 0000000..0466d5d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsCallback.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.customtabs.CustomTabsCallback
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.customtabs.<A HREF="../../../../reference/android/support/customtabs/CustomTabsCallback.html" target="_top"><font size="+2"><code>CustomTabsCallback</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsCallback.TAB_HIDDEN"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsCallback.html#TAB_HIDDEN" target="_top"><code>TAB_HIDDEN</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsCallback.TAB_SHOWN"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsCallback.html#TAB_SHOWN" target="_top"><code>TAB_SHOWN</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsIntent.Builder.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsIntent.Builder.html
new file mode 100644
index 0000000..e3aefb5
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsIntent.Builder.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.customtabs.CustomTabsIntent.Builder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.customtabs.<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.Builder.html" target="_top"><font size="+2"><code>CustomTabsIntent.Builder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.Builder.enableUrlBarHiding_added()"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.Builder.html#enableUrlBarHiding()" target="_top"><code>enableUrlBarHiding</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.Builder.setActionButton_added(android.graphics.Bitmap, java.lang.String, android.app.PendingIntent, boolean)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.Builder.html#setActionButton(android.graphics.Bitmap, java.lang.String, android.app.PendingIntent, boolean)" target="_top"><code>setActionButton</code></A>(<code>Bitmap,</nobr> String<nobr>,</nobr> PendingIntent<nobr>,</nobr> boolean<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsIntent.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsIntent.html
new file mode 100644
index 0000000..9312755
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsIntent.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.customtabs.CustomTabsIntent
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.customtabs.<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.html" target="_top"><font size="+2"><code>CustomTabsIntent</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.EXTRA_ENABLE_URLBAR_HIDING"></A>
+  <nobr><code>String</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.html#EXTRA_ENABLE_URLBAR_HIDING" target="_top"><code>EXTRA_ENABLE_URLBAR_HIDING</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.EXTRA_TINT_ACTION_BUTTON"></A>
+  <nobr><code>String</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.html#EXTRA_TINT_ACTION_BUTTON" target="_top"><code>EXTRA_TINT_ACTION_BUTTON</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsService.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsService.html
new file mode 100644
index 0000000..2a0fd18
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsService.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.customtabs.CustomTabsService
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.customtabs.<A HREF="../../../../reference/android/support/customtabs/CustomTabsService.html" target="_top"><font size="+2"><code>CustomTabsService</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsService.updateVisuals_added(android.support.customtabs.CustomTabsSessionToken, android.os.Bundle)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsService.html#updateVisuals(android.support.customtabs.CustomTabsSessionToken, android.os.Bundle)" target="_top"><code>updateVisuals</code></A>(<code>CustomTabsSessionToken,</nobr> Bundle<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsSession.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsSession.html
new file mode 100644
index 0000000..6b70224
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsSession.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.customtabs.CustomTabsSession
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.customtabs.<A HREF="../../../../reference/android/support/customtabs/CustomTabsSession.html" target="_top"><font size="+2"><code>CustomTabsSession</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsSession.setActionButton_added(android.graphics.Bitmap, java.lang.String)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsSession.html#setActionButton(android.graphics.Bitmap, java.lang.String)" target="_top"><code>setActionButton</code></A>(<code>Bitmap,</nobr> String<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsSessionToken.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsSessionToken.html
new file mode 100644
index 0000000..2bdb42e
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.customtabs.CustomTabsSessionToken.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.customtabs.CustomTabsSessionToken
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.customtabs.<A HREF="../../../../reference/android/support/customtabs/CustomTabsSessionToken.html" target="_top"><font size="+2"><code>CustomTabsSessionToken</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsSessionToken.getSessionTokenFromIntent_added(android.content.Intent)"></A>
+  <nobr><code>CustomTabsSessionToken</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsSessionToken.html#getSessionTokenFromIntent(android.content.Intent)" target="_top"><code>getSessionTokenFromIntent</code></A>(<code>Intent</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.Behavior.SavedState.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.Behavior.SavedState.html
new file mode 100644
index 0000000..bb89bbd
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.Behavior.SavedState.html
@@ -0,0 +1,137 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.AppBarLayout.Behavior.SavedState
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/AppBarLayout.Behavior.SavedState.html" target="_top"><font size="+2"><code>AppBarLayout.Behavior.SavedState</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.Behavior.SavedState.ctor_removed(android.os.Parcel)"></A>
+  <nobr>AppBarLayout.Behavior.SavedState(<code>Parcel</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.Behavior.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)"></A>
+  <nobr><A HREF="../../../../reference/android/support/design/widget/AppBarLayout.Behavior.SavedState.html#AppBarLayout.Behavior.SavedState(android.os.Parcel, java.lang.ClassLoader)" target="_top"><code>AppBarLayout.Behavior.<br>SavedState</code></A>(<code>Parcel,</nobr> ClassLoader<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.Behavior.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.Behavior.html
new file mode 100644
index 0000000..b538999a
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.Behavior.html
@@ -0,0 +1,145 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.AppBarLayout.Behavior
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/AppBarLayout.Behavior.html" target="_top"><font size="+2"><code>AppBarLayout.Behavior</code></font></A>
+</H2>
+<p><font xsize="+1">The superclass changed from <code>android.support.design.widget.ViewOffsetBehavior</code> to <code>android.support.design.widget.HeaderBehavior</code>.<br></font>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.Behavior.onInterceptTouchEvent_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.AppBarLayout, android.view.MotionEvent)"></A>
+  <nobr><code>boolean</code>&nbsp;onInterceptTouchEvent(<code>CoordinatorLayout,</nobr> AppBarLayout<nobr>,</nobr> MotionEvent<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.Behavior.onTouchEvent_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.AppBarLayout, android.view.MotionEvent)"></A>
+  <nobr><code>boolean</code>&nbsp;onTouchEvent(<code>CoordinatorLayout,</nobr> AppBarLayout<nobr>,</nobr> MotionEvent<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.Behavior.setDragCallback_added(android.support.design.widget.AppBarLayout.Behavior.DragCallback)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/AppBarLayout.Behavior.html#setDragCallback(android.support.design.widget.AppBarLayout.Behavior.DragCallback)" target="_top"><code>setDragCallback</code></A>(<code>DragCallback</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.LayoutParams.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.LayoutParams.html
new file mode 100644
index 0000000..6d19d36
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.LayoutParams.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.AppBarLayout.LayoutParams
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/AppBarLayout.LayoutParams.html" target="_top"><font size="+2"><code>AppBarLayout.LayoutParams</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.LayoutParams.SCROLL_FLAG_SNAP"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/AppBarLayout.LayoutParams.html#SCROLL_FLAG_SNAP" target="_top"><code>SCROLL_FLAG_SNAP</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html
new file mode 100644
index 0000000..c089db3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html
@@ -0,0 +1,138 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.AppBarLayout.ScrollingViewBehavior
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/AppBarLayout.ScrollingViewBehavior.html" target="_top"><font size="+2"><code>AppBarLayout.ScrollingViewBehavior</code></font></A>
+</H2>
+<p><font xsize="+1">The superclass changed from <code>android.support.design.widget.ViewOffsetBehavior</code> to <code>android.support.design.widget.HeaderScrollingViewBehavior</code>.<br></font>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onMeasureChild_removed(android.support.design.widget.CoordinatorLayout, android.view.View, int, int, int, int)"></A>
+  <nobr><code>boolean</code>&nbsp;onMeasureChild(<code>CoordinatorLayout,</nobr> View<nobr>,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onLayoutChild_added(android.support.design.widget.CoordinatorLayout, android.view.View, int)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/AppBarLayout.ScrollingViewBehavior.html#onLayoutChild(android.support.design.widget.CoordinatorLayout, android.view.View, int)" target="_top"><code>onLayoutChild</code></A>(<code>CoordinatorLayout,</nobr> View<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.CollapsingToolbarLayout.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.CollapsingToolbarLayout.html
new file mode 100644
index 0000000..49d92737
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.CollapsingToolbarLayout.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.CollapsingToolbarLayout
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html" target="_top"><font size="+2"><code>CollapsingToolbarLayout</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.getCollapsedTitleTypeface_added()"></A>
+  <nobr><code>Typeface</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#getCollapsedTitleTypeface()" target="_top"><code>getCollapsedTitleTypeface</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleTypeface_added()"></A>
+  <nobr><code>Typeface</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#getExpandedTitleTypeface()" target="_top"><code>getExpandedTitleTypeface</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.setCollapsedTitleTypeface_added(android.graphics.Typeface)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#setCollapsedTitleTypeface(android.graphics.Typeface)" target="_top"><code>setCollapsedTitleTypeface</code></A>(<code>Typeface</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleTypeface_added(android.graphics.Typeface)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#setExpandedTitleTypeface(android.graphics.Typeface)" target="_top"><code>setExpandedTitleTypeface</code></A>(<code>Typeface</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.setScrimsShown_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#setScrimsShown(boolean)" target="_top"><code>setScrimsShown</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.setScrimsShown_added(boolean, boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#setScrimsShown(boolean, boolean)" target="_top"><code>setScrimsShown</code></A>(<code>boolean,</nobr> boolean<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.CoordinatorLayout.SavedState.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.CoordinatorLayout.SavedState.html
new file mode 100644
index 0000000..f92babd
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.CoordinatorLayout.SavedState.html
@@ -0,0 +1,137 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.CoordinatorLayout.SavedState
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/CoordinatorLayout.SavedState.html" target="_top"><font size="+2"><code>CoordinatorLayout.SavedState</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CoordinatorLayout.SavedState.ctor_removed(android.os.Parcel)"></A>
+  <nobr>CoordinatorLayout.SavedState(<code>Parcel</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CoordinatorLayout.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)"></A>
+  <nobr><A HREF="../../../../reference/android/support/design/widget/CoordinatorLayout.SavedState.html#CoordinatorLayout.SavedState(android.os.Parcel, java.lang.ClassLoader)" target="_top"><code>CoordinatorLayout.SavedState</code></A>(<code>Parcel,</nobr> ClassLoader<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.FloatingActionButton.Behavior.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.FloatingActionButton.Behavior.html
new file mode 100644
index 0000000..07fdda1
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.FloatingActionButton.Behavior.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.FloatingActionButton.Behavior
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.Behavior.html" target="_top"><font size="+2"><code>FloatingActionButton.Behavior</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.FloatingActionButton.Behavior.onDependentViewRemoved_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.FloatingActionButton, android.view.View)"></A>
+  <nobr><code>void</code>&nbsp;onDependentViewRemoved(<code>CoordinatorLayout,</nobr> FloatingActionButton<nobr>,</nobr> View<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.FloatingActionButton.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.FloatingActionButton.html
new file mode 100644
index 0000000..90553fa
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.FloatingActionButton.html
@@ -0,0 +1,130 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.FloatingActionButton
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.html" target="_top"><font size="+2"><code>FloatingActionButton</code></font></A>
+</H2>
+<p><font xsize="+1">The superclass changed from <code>android.widget.ImageView</code> to <code>android.widget.ImageButton</code>.<br></font>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.FloatingActionButton.hide_added(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.html#hide(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)" target="_top"><code>hide</code></A>(<code>OnVisibilityChangedListener</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.FloatingActionButton.show_added(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.html#show(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)" target="_top"><code>show</code></A>(<code>OnVisibilityChangedListener</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.NavigationView.SavedState.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.NavigationView.SavedState.html
new file mode 100644
index 0000000..8a9ae80
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.NavigationView.SavedState.html
@@ -0,0 +1,137 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.NavigationView.SavedState
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/NavigationView.SavedState.html" target="_top"><font size="+2"><code>NavigationView.SavedState</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.NavigationView.SavedState.ctor_removed(android.os.Parcel)"></A>
+  <nobr>NavigationView.SavedState(<code>Parcel</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.NavigationView.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)"></A>
+  <nobr><A HREF="../../../../reference/android/support/design/widget/NavigationView.SavedState.html#NavigationView.SavedState(android.os.Parcel, java.lang.ClassLoader)" target="_top"><code>NavigationView.SavedState</code></A>(<code>Parcel,</nobr> ClassLoader<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.Snackbar.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.Snackbar.html
new file mode 100644
index 0000000..d741863
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.Snackbar.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.Snackbar
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/Snackbar.html" target="_top"><font size="+2"><code>Snackbar</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.Snackbar.isShownOrQueued_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/Snackbar.html#isShownOrQueued()" target="_top"><code>isShownOrQueued</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.TextInputLayout.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.TextInputLayout.html
new file mode 100644
index 0000000..30d0dd6
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.design.widget.TextInputLayout.html
@@ -0,0 +1,143 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.TextInputLayout
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/TextInputLayout.html" target="_top"><font size="+2"><code>TextInputLayout</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.TextInputLayout.getCounterMaxLength_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/TextInputLayout.html#getCounterMaxLength()" target="_top"><code>getCounterMaxLength</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.TextInputLayout.getTypeface_added()"></A>
+  <nobr><code>Typeface</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/TextInputLayout.html#getTypeface()" target="_top"><code>getTypeface</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.TextInputLayout.setCounterEnabled_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/TextInputLayout.html#setCounterEnabled(boolean)" target="_top"><code>setCounterEnabled</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.TextInputLayout.setCounterMaxLength_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/TextInputLayout.html#setCounterMaxLength(int)" target="_top"><code>setCounterMaxLength</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html
new file mode 100644
index 0000000..b6f2e48
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.percent.PercentLayoutHelper.PercentLayoutInfo
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.percent.<A HREF="../../../../reference/android/support/percent/PercentLayoutHelper.PercentLayoutInfo.html" target="_top"><font size="+2"><code>PercentLayoutHelper.PercentLayoutInfo</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.aspectRatio"></A>
+  <nobr><code>float</code>&nbsp;<A HREF="../../../../reference/android/support/percent/PercentLayoutHelper.PercentLayoutInfo.html#aspectRatio" target="_top"><code>aspectRatio</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v14.preference.EditTextPreferenceDialogFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v14.preference.EditTextPreferenceDialogFragment.html
new file mode 100644
index 0000000..30f22a8
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v14.preference.EditTextPreferenceDialogFragment.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v14.preference.EditTextPreferenceDialogFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v14.preference.<A HREF="../../../../reference/android/support/v14/preference/EditTextPreferenceDialogFragment.html" target="_top"><font size="+2"><code>EditTextPreferenceDialogFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v14.preference.EditTextPreferenceDialogFragment.onAddEditTextToDialogView_removed(android.view.View, android.widget.EditText)"></A>
+  <nobr><code>void</code>&nbsp;onAddEditTextToDialogView(<code>View,</nobr> EditText<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.BrowseFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.BrowseFragment.html
new file mode 100644
index 0000000..f4d77bf
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.BrowseFragment.html
@@ -0,0 +1,164 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.BrowseFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html" target="_top"><font size="+2"><code>BrowseFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.createEntranceTransition_added()"></A>
+  <nobr><code>Object</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#createEntranceTransition()" target="_top"><code>createEntranceTransition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionEnd_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#onEntranceTransitionEnd()" target="_top"><code>onEntranceTransitionEnd</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionPrepare_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#onEntranceTransitionPrepare()" target="_top"><code>onEntranceTransitionPrepare</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionStart_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#onEntranceTransitionStart()" target="_top"><code>onEntranceTransitionStart</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.onSaveInstanceState_added(android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#onSaveInstanceState(android.os.Bundle)" target="_top"><code>onSaveInstanceState</code></A>(<code>Bundle</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.onStart_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#onStart()" target="_top"><code>onStart</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.runEntranceTransition_added(java.lang.Object)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#runEntranceTransition(java.lang.Object)" target="_top"><code>runEntranceTransition</code></A>(<code>Object</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.BrowseSupportFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.BrowseSupportFragment.html
new file mode 100644
index 0000000..a48ea3b
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.BrowseSupportFragment.html
@@ -0,0 +1,164 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.BrowseSupportFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html" target="_top"><font size="+2"><code>BrowseSupportFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.createEntranceTransition_added()"></A>
+  <nobr><code>Object</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#createEntranceTransition()" target="_top"><code>createEntranceTransition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionEnd_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#onEntranceTransitionEnd()" target="_top"><code>onEntranceTransitionEnd</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionPrepare_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#onEntranceTransitionPrepare()" target="_top"><code>onEntranceTransitionPrepare</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionStart_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#onEntranceTransitionStart()" target="_top"><code>onEntranceTransitionStart</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.onSaveInstanceState_added(android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#onSaveInstanceState(android.os.Bundle)" target="_top"><code>onSaveInstanceState</code></A>(<code>Bundle</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.onStart_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#onStart()" target="_top"><code>onStart</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.runEntranceTransition_added(java.lang.Object)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#runEntranceTransition(java.lang.Object)" target="_top"><code>runEntranceTransition</code></A>(<code>Object</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.DetailsFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.DetailsFragment.html
new file mode 100644
index 0000000..d38127c
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.DetailsFragment.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.DetailsFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsFragment.html" target="_top"><font size="+2"><code>DetailsFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsFragment.createEntranceTransition_added()"></A>
+  <nobr><code>Object</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsFragment.html#createEntranceTransition()" target="_top"><code>createEntranceTransition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionEnd_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsFragment.html#onEntranceTransitionEnd()" target="_top"><code>onEntranceTransitionEnd</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionPrepare_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsFragment.html#onEntranceTransitionPrepare()" target="_top"><code>onEntranceTransitionPrepare</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionStart_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsFragment.html#onEntranceTransitionStart()" target="_top"><code>onEntranceTransitionStart</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsFragment.onStart_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsFragment.html#onStart()" target="_top"><code>onStart</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsFragment.runEntranceTransition_added(java.lang.Object)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsFragment.html#runEntranceTransition(java.lang.Object)" target="_top"><code>runEntranceTransition</code></A>(<code>Object</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.DetailsSupportFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.DetailsSupportFragment.html
new file mode 100644
index 0000000..a02b8f3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.DetailsSupportFragment.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.DetailsSupportFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsSupportFragment.html" target="_top"><font size="+2"><code>DetailsSupportFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsSupportFragment.createEntranceTransition_added()"></A>
+  <nobr><code>Object</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsSupportFragment.html#createEntranceTransition()" target="_top"><code>createEntranceTransition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionEnd_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsSupportFragment.html#onEntranceTransitionEnd()" target="_top"><code>onEntranceTransitionEnd</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionPrepare_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsSupportFragment.html#onEntranceTransitionPrepare()" target="_top"><code>onEntranceTransitionPrepare</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionStart_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsSupportFragment.html#onEntranceTransitionStart()" target="_top"><code>onEntranceTransitionStart</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsSupportFragment.onStart_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsSupportFragment.html#onStart()" target="_top"><code>onStart</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsSupportFragment.runEntranceTransition_added(java.lang.Object)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsSupportFragment.html#runEntranceTransition(java.lang.Object)" target="_top"><code>runEntranceTransition</code></A>(<code>Object</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.GuidedStepFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.GuidedStepFragment.html
new file mode 100644
index 0000000..725281a
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.GuidedStepFragment.html
@@ -0,0 +1,229 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.GuidedStepFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html" target="_top"><font size="+2"><code>GuidedStepFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.isEntryTransitionEnabled_removed()"></A>
+  <nobr><code>boolean</code>&nbsp;isEntryTransitionEnabled()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.setEntryTransitionEnabled_removed(boolean)"></A>
+  <nobr><code>void</code>&nbsp;setEntryTransitionEnabled(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.add_added(android.app.FragmentManager, android.support.v17.leanback.app.GuidedStepFragment, int)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#add(android.app.FragmentManager, android.support.v17.leanback.app.GuidedStepFragment, int)" target="_top"><code>add</code></A>(<code>FragmentManager,</nobr> GuidedStepFragment<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.addAsRoot_added(android.app.Activity, android.support.v17.leanback.app.GuidedStepFragment, int)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#addAsRoot(android.app.Activity, android.support.v17.leanback.app.GuidedStepFragment, int)" target="_top"><code>addAsRoot</code></A>(<code>Activity,</nobr> GuidedStepFragment<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.getContainerIdForBackground_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#getContainerIdForBackground()" target="_top"><code>getContainerIdForBackground</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.getUiStyle_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#getUiStyle()" target="_top"><code>getUiStyle</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.onGuidedActionEdited_added(android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#onGuidedActionEdited(android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>onGuidedActionEdited</code></A>(<code>GuidedAction</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.onProvideBackgroundFragment_added()"></A>
+  <nobr><code>Fragment</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#onProvideBackgroundFragment()" target="_top"><code>onProvideBackgroundFragment</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.onProvideFragmentTransitions_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#onProvideFragmentTransitions()" target="_top"><code>onProvideFragmentTransitions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.setUiStyle_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#setUiStyle(int)" target="_top"><code>setUiStyle</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.EXTRA_UI_STYLE"></A>
+  <nobr><code>String</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#EXTRA_UI_STYLE" target="_top"><code>EXTRA_UI_STYLE</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_ACTIVITY_ROOT"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#UI_STYLE_ACTIVITY_ROOT" target="_top"><code>UI_STYLE_ACTIVITY_ROOT</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_DEFAULT"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#UI_STYLE_DEFAULT" target="_top"><code>UI_STYLE_DEFAULT</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_ENTRANCE"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#UI_STYLE_ENTRANCE" target="_top"><code>UI_STYLE_ENTRANCE</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.PlaybackOverlayFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.PlaybackOverlayFragment.html
new file mode 100644
index 0000000..71e230b
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.PlaybackOverlayFragment.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.PlaybackOverlayFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/PlaybackOverlayFragment.html" target="_top"><font size="+2"><code>PlaybackOverlayFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.PlaybackOverlayFragment.onDestroyView_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/PlaybackOverlayFragment.html#onDestroyView()" target="_top"><code>onDestroyView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.PlaybackOverlayFragment.onResume_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/PlaybackOverlayFragment.html#onResume()" target="_top"><code>onResume</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html
new file mode 100644
index 0000000..a794f14
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.PlaybackOverlaySupportFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.html" target="_top"><font size="+2"><code>PlaybackOverlaySupportFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.onDestroyView_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.html#onDestroyView()" target="_top"><code>onDestroyView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.onResume_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.html#onResume()" target="_top"><code>onResume</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.SearchFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.SearchFragment.html
new file mode 100644
index 0000000..827f46b
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.SearchFragment.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.SearchFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/SearchFragment.html" target="_top"><font size="+2"><code>SearchFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.SearchFragment.displayCompletions_added(android.view.inputmethod.CompletionInfo[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/SearchFragment.html#displayCompletions(android.view.inputmethod.CompletionInfo[])" target="_top"><code>displayCompletions</code></A>(<code>CompletionInfo[]</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.SearchSupportFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.SearchSupportFragment.html
new file mode 100644
index 0000000..f1e2826
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.SearchSupportFragment.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.SearchSupportFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/SearchSupportFragment.html" target="_top"><font size="+2"><code>SearchSupportFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.SearchSupportFragment.displayCompletions_added(android.view.inputmethod.CompletionInfo[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/SearchSupportFragment.html#displayCompletions(android.view.inputmethod.CompletionInfo[])" target="_top"><code>displayCompletions</code></A>(<code>CompletionInfo[]</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.VerticalGridFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.VerticalGridFragment.html
new file mode 100644
index 0000000..01bb4de
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.VerticalGridFragment.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.VerticalGridFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridFragment.html" target="_top"><font size="+2"><code>VerticalGridFragment</code></font></A>
+</H2>
+<p><font xsize="+1">The superclass changed from <code>android.app.Fragment</code> to <code>android.support.v17.leanback.app.BrandedFragment</code>.<br></font>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.VerticalGridFragment.createEntranceTransition_added()"></A>
+  <nobr><code>Object</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridFragment.html#createEntranceTransition()" target="_top"><code>createEntranceTransition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.VerticalGridFragment.onDestroyView_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridFragment.html#onDestroyView()" target="_top"><code>onDestroyView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.VerticalGridFragment.onStart_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridFragment.html#onStart()" target="_top"><code>onStart</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.VerticalGridFragment.onViewCreated_added(android.view.View, android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridFragment.html#onViewCreated(android.view.View, android.os.Bundle)" target="_top"><code>onViewCreated</code></A>(<code>View,</nobr> Bundle<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.VerticalGridFragment.runEntranceTransition_added(java.lang.Object)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridFragment.html#runEntranceTransition(java.lang.Object)" target="_top"><code>runEntranceTransition</code></A>(<code>Object</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.VerticalGridSupportFragment.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.VerticalGridSupportFragment.html
new file mode 100644
index 0000000..a818a79
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.app.VerticalGridSupportFragment.html
@@ -0,0 +1,168 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.VerticalGridSupportFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridSupportFragment.html" target="_top"><font size="+2"><code>VerticalGridSupportFragment</code></font></A>
+</H2>
+<p><font xsize="+1">The superclass changed from <code>android.support.v4.app.Fragment</code> to <code>android.support.v17.leanback.app.BrandedSupportFragment</code>.<br></font>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.VerticalGridSupportFragment.createEntranceTransition_added()"></A>
+  <nobr><code>Object</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridSupportFragment.html#createEntranceTransition()" target="_top"><code>createEntranceTransition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.VerticalGridSupportFragment.runEntranceTransition_added(java.lang.Object)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridSupportFragment.html#runEntranceTransition(java.lang.Object)" target="_top"><code>runEntranceTransition</code></A>(<code>Object</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.VerticalGridSupportFragment.onDestroyView_changed()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridSupportFragment.html#onDestroyView()" target="_top"><code>onDestroyView</code></A>()  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Method was inherited from <code>android.support.v4.app.Fragment</code>, but is now defined locally.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.VerticalGridSupportFragment.onStart_changed()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridSupportFragment.html#onStart()" target="_top"><code>onStart</code></A>()  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Method was inherited from <code>android.support.v4.app.Fragment</code>, but is now defined locally.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.VerticalGridSupportFragment.onViewCreated_changed(android.view.View, android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/VerticalGridSupportFragment.html#onViewCreated(android.view.View, android.os.Bundle)" target="_top"><code>onViewCreated</code></A>(<code>View,</nobr> Bundle<nobr><nobr></code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Method was inherited from <code>android.support.v4.app.Fragment</code>, but is now defined locally.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.FragmentAnimationProvider.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.FragmentAnimationProvider.html
new file mode 100644
index 0000000..1cf004d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.FragmentAnimationProvider.html
@@ -0,0 +1,179 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.FragmentAnimationProvider
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Interface android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/FragmentAnimationProvider.html" target="_top"><font size="+2"><code>FragmentAnimationProvider</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.FragmentAnimationProvider.onActivityEnter_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onActivityEnter(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.FragmentAnimationProvider.onActivityExit_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onActivityExit(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentEnter_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentEnter(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentExit_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentExit(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentReenter_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentReenter(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentReturn_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentReturn(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.FragmentAnimationProvider.onImeAppearing_added(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/FragmentAnimationProvider.html#onImeAppearing(java.util.List<android.animation.Animator>)" target="_top"><code>onImeAppearing</code></A>(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.FragmentAnimationProvider.onImeDisappearing_added(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/FragmentAnimationProvider.html#onImeDisappearing(java.util.List<android.animation.Animator>)" target="_top"><code>onImeDisappearing</code></A>(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidanceStylist.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidanceStylist.html
new file mode 100644
index 0000000..e0b94bc
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidanceStylist.html
@@ -0,0 +1,179 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.GuidanceStylist
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidanceStylist.html" target="_top"><font size="+2"><code>GuidanceStylist</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidanceStylist.onActivityEnter_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onActivityEnter(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidanceStylist.onActivityExit_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onActivityExit(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidanceStylist.onFragmentEnter_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentEnter(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidanceStylist.onFragmentExit_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentExit(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidanceStylist.onFragmentReenter_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentReenter(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidanceStylist.onFragmentReturn_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentReturn(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidanceStylist.onImeAppearing_added(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidanceStylist.html#onImeAppearing(java.util.List<android.animation.Animator>)" target="_top"><code>onImeAppearing</code></A>(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidanceStylist.onImeDisappearing_added(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidanceStylist.html#onImeDisappearing(java.util.List<android.animation.Animator>)" target="_top"><code>onImeDisappearing</code></A>(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedAction.Builder.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedAction.Builder.html
new file mode 100644
index 0000000..96d30a4
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedAction.Builder.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.GuidedAction.Builder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html" target="_top"><font size="+2"><code>GuidedAction.Builder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.editTitle_added(java.lang.String)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#editTitle(java.lang.String)" target="_top"><code>editTitle</code></A>(<code>String</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.editable_added(boolean)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#editable(boolean)" target="_top"><code>editable</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedAction.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedAction.html
new file mode 100644
index 0000000..84b93bf
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedAction.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.GuidedAction
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html" target="_top"><font size="+2"><code>GuidedAction</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.getEditTitle_added()"></A>
+  <nobr><code>CharSequence</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#getEditTitle()" target="_top"><code>getEditTitle</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.isEditTitleUsed_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#isEditTitleUsed()" target="_top"><code>isEditTitleUsed</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.isEditable_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#isEditable()" target="_top"><code>isEditable</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.setDescription_added(java.lang.CharSequence)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#setDescription(java.lang.CharSequence)" target="_top"><code>setDescription</code></A>(<code>CharSequence</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.setEditTitle_added(java.lang.CharSequence)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#setEditTitle(java.lang.CharSequence)" target="_top"><code>setEditTitle</code></A>(<code>CharSequence</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.setTitle_added(java.lang.CharSequence)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#setTitle(java.lang.CharSequence)" target="_top"><code>setTitle</code></A>(<code>CharSequence</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html
new file mode 100644
index 0000000..38e83b4
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html" target="_top"><font size="+2"><code>GuidedActionsStylist.ViewHolder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditableTitleView_added()"></A>
+  <nobr><code>EditText</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#getEditableTitleView()" target="_top"><code>getEditableTitleView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.html
new file mode 100644
index 0000000..104f325
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.html
@@ -0,0 +1,179 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.GuidedActionsStylist
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html" target="_top"><font size="+2"><code>GuidedActionsStylist</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onActivityEnter_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onActivityEnter(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onActivityExit_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onActivityExit(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentEnter_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentEnter(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentExit_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentExit(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentReenter_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentReenter(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentReturn_removed(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;onFragmentReturn(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onImeAppearing_added(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onImeAppearing(java.util.List<android.animation.Animator>)" target="_top"><code>onImeAppearing</code></A>(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onImeDisappearing_added(java.util.List<android.animation.Animator>)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onImeDisappearing(java.util.List<android.animation.Animator>)" target="_top"><code>onImeDisappearing</code></A>(<code>List&lt;Animator&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.ImageCardView.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.ImageCardView.html
new file mode 100644
index 0000000..1535ca0
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.ImageCardView.html
@@ -0,0 +1,165 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.ImageCardView
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/ImageCardView.html" target="_top"><font size="+2"><code>ImageCardView</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ImageCardView.ctor_added(android.content.Context, int)"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/ImageCardView.html#ImageCardView(android.content.Context, int)" target="_top"><code>ImageCardView</code></A>(<code>Context,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_CONTENT"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ImageCardView.html#CARD_TYPE_FLAG_CONTENT" target="_top"><code>CARD_TYPE_FLAG_CONTENT</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_ICON_LEFT"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ImageCardView.html#CARD_TYPE_FLAG_ICON_LEFT" target="_top"><code>CARD_TYPE_FLAG_ICON_LEFT</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_ICON_RIGHT"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ImageCardView.html#CARD_TYPE_FLAG_ICON_RIGHT" target="_top"><code>CARD_TYPE_FLAG_ICON_RIGHT</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_IMAGE_ONLY"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ImageCardView.html#CARD_TYPE_FLAG_IMAGE_ONLY" target="_top"><code>CARD_TYPE_FLAG_IMAGE_ONLY</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_TITLE"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ImageCardView.html#CARD_TYPE_FLAG_TITLE" target="_top"><code>CARD_TYPE_FLAG_TITLE</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.ListRowPresenter.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.ListRowPresenter.html
new file mode 100644
index 0000000..f536d92
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.ListRowPresenter.html
@@ -0,0 +1,136 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.ListRowPresenter
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/ListRowPresenter.html" target="_top"><font size="+2"><code>ListRowPresenter</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ListRowPresenter.createShadowOverlayOptions_added()"></A>
+  <nobr><code>Options</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ListRowPresenter.html#createShadowOverlayOptions()" target="_top"><code>createShadowOverlayOptions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ListRowPresenter.isKeepChildForeground_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ListRowPresenter.html#isKeepChildForeground()" target="_top"><code>isKeepChildForeground</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ListRowPresenter.setKeepChildForeground_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ListRowPresenter.html#setKeepChildForeground(boolean)" target="_top"><code>setKeepChildForeground</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.RowPresenter.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.RowPresenter.html
new file mode 100644
index 0000000..3f10b29
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.RowPresenter.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.RowPresenter
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/RowPresenter.html" target="_top"><font size="+2"><code>RowPresenter</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.RowPresenter.canDrawOutOfBounds_removed()"></A>
+  <nobr><code>boolean</code>&nbsp;canDrawOutOfBounds()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.SearchBar.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.SearchBar.html
new file mode 100644
index 0000000..2965c15
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.SearchBar.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.SearchBar
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/SearchBar.html" target="_top"><font size="+2"><code>SearchBar</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.SearchBar.displayCompletions_added(android.view.inputmethod.CompletionInfo[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/SearchBar.html#displayCompletions(android.view.inputmethod.CompletionInfo[])" target="_top"><code>displayCompletions</code></A>(<code>CompletionInfo[]</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.ShadowOverlayContainer.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.ShadowOverlayContainer.html
new file mode 100644
index 0000000..761fd92
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.ShadowOverlayContainer.html
@@ -0,0 +1,141 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.ShadowOverlayContainer
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/ShadowOverlayContainer.html" target="_top"><font size="+2"><code>ShadowOverlayContainer</code></font></A>
+</H2>
+<p><font xsize="+1">The superclass changed from <code>android.view.ViewGroup</code> to <code>android.widget.FrameLayout</code>.<br></font>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ShadowOverlayContainer.onLayout_removed(boolean, int, int, int, int)"></A>
+  <nobr><code>void</code>&nbsp;onLayout(<code>boolean,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ShadowOverlayContainer.initialize_changed(boolean, boolean, boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ShadowOverlayContainer.html#initialize(boolean, boolean, boolean)" target="_top"><code>initialize</code></A>(<code>boolean,</nobr> boolean<nobr>,</nobr> boolean<nobr><nobr></code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+<b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.VerticalGridPresenter.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.VerticalGridPresenter.html
new file mode 100644
index 0000000..e999838
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v17.leanback.widget.VerticalGridPresenter.html
@@ -0,0 +1,143 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.VerticalGridPresenter
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/VerticalGridPresenter.html" target="_top"><font size="+2"><code>VerticalGridPresenter</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.VerticalGridPresenter.createShadowOverlayOptions_added()"></A>
+  <nobr><code>Options</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/VerticalGridPresenter.html#createShadowOverlayOptions()" target="_top"><code>createShadowOverlayOptions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.VerticalGridPresenter.getKeepChildForeground_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/VerticalGridPresenter.html#getKeepChildForeground()" target="_top"><code>getKeepChildForeground</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.VerticalGridPresenter.setEntranceTransitionState_added(android.support.v17.leanback.widget.VerticalGridPresenter.ViewHolder, boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/VerticalGridPresenter.html#setEntranceTransitionState(android.support.v17.leanback.widget.VerticalGridPresenter.ViewHolder, boolean)" target="_top"><code>setEntranceTransitionState</code></A>(<code>ViewHolder,</nobr> boolean<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.VerticalGridPresenter.setKeepChildForeground_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/VerticalGridPresenter.html#setKeepChildForeground(boolean)" target="_top"><code>setKeepChildForeground</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.app.FragmentActivity.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.app.FragmentActivity.html
new file mode 100644
index 0000000..c68356c
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.app.FragmentActivity.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.FragmentActivity
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/FragmentActivity.html" target="_top"><font size="+2"><code>FragmentActivity</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app.FragmentActivity.getSupportMediaController_added()"></A>
+  <nobr><code>MediaControllerCompat</code>&nbsp;<A HREF="../../../../reference/android/support/v4/app/FragmentActivity.html#getSupportMediaController()" target="_top"><code>getSupportMediaController</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app.FragmentActivity.setSupportMediaController_added(android.support.v4.media.session.MediaControllerCompat)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/app/FragmentActivity.html#setSupportMediaController(android.support.v4.media.session.MediaControllerCompat)" target="_top"><code>setSupportMediaController</code></A>(<code>MediaControllerCompat</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.content.res.ResourcesCompat.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.content.res.ResourcesCompat.html
new file mode 100644
index 0000000..9bdd4f7
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.content.res.ResourcesCompat.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.res.ResourcesCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.content.res.<A HREF="../../../../reference/android/support/v4/content/res/ResourcesCompat.html" target="_top"><font size="+2"><code>ResourcesCompat</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.res.ResourcesCompat.getColor_added(android.content.res.Resources, int, android.content.res.Resources.Theme)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/content/res/ResourcesCompat.html#getColor(android.content.res.Resources, int, android.content.res.Resources.Theme)" target="_top"><code>getColor</code></A>(<code>Resources,</nobr> int<nobr>,</nobr> Theme<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.res.ResourcesCompat.getColorStateList_added(android.content.res.Resources, int, android.content.res.Resources.Theme)"></A>
+  <nobr><code>ColorStateList</code>&nbsp;<A HREF="../../../../reference/android/support/v4/content/res/ResourcesCompat.html#getColorStateList(android.content.res.Resources, int, android.content.res.Resources.Theme)" target="_top"><code>getColorStateList</code></A>(<code>Resources,</nobr> int<nobr>,</nobr> Theme<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.media.session.MediaSessionCompat.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.media.session.MediaSessionCompat.html
new file mode 100644
index 0000000..5b5f1e3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.media.session.MediaSessionCompat.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.media.session.MediaSessionCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.media.session.<A HREF="../../../../reference/android/support/v4/media/session/MediaSessionCompat.html" target="_top"><font size="+2"><code>MediaSessionCompat</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.media.session.MediaSessionCompat.ctor_added(android.content.Context, java.lang.String)"></A>
+  <nobr><A HREF="../../../../reference/android/support/v4/media/session/MediaSessionCompat.html#MediaSessionCompat(android.content.Context, java.lang.String)" target="_top"><code>MediaSessionCompat</code></A>(<code>Context,</nobr> String<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.view.ViewCompat.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.view.ViewCompat.html
new file mode 100644
index 0000000..2e39745
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.view.ViewCompat.html
@@ -0,0 +1,193 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.ViewCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html" target="_top"><font size="+2"><code>ViewCompat</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.getScrollIndicators_added(android.view.View)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html#getScrollIndicators(android.view.View)" target="_top"><code>getScrollIndicators</code></A>(<code>View</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.hasOnClickListeners_added(android.view.View)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html#hasOnClickListeners(android.view.View)" target="_top"><code>hasOnClickListeners</code></A>(<code>View</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.setScrollIndicators_added(android.view.View, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html#setScrollIndicators(android.view.View, int)" target="_top"><code>setScrollIndicators</code></A>(<code>View,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.setScrollIndicators_added(android.view.View, int, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html#setScrollIndicators(android.view.View, int, int)" target="_top"><code>setScrollIndicators</code></A>(<code>View,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.SCROLL_INDICATOR_BOTTOM"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html#SCROLL_INDICATOR_BOTTOM" target="_top"><code>SCROLL_INDICATOR_BOTTOM</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.SCROLL_INDICATOR_END"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html#SCROLL_INDICATOR_END" target="_top"><code>SCROLL_INDICATOR_END</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.SCROLL_INDICATOR_LEFT"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html#SCROLL_INDICATOR_LEFT" target="_top"><code>SCROLL_INDICATOR_LEFT</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.SCROLL_INDICATOR_RIGHT"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html#SCROLL_INDICATOR_RIGHT" target="_top"><code>SCROLL_INDICATOR_RIGHT</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.SCROLL_INDICATOR_START"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html#SCROLL_INDICATOR_START" target="_top"><code>SCROLL_INDICATOR_START</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.SCROLL_INDICATOR_TOP"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html#SCROLL_INDICATOR_TOP" target="_top"><code>SCROLL_INDICATOR_TOP</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.widget.NestedScrollView.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.widget.NestedScrollView.html
new file mode 100644
index 0000000..8d4cbaa
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.widget.NestedScrollView.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.NestedScrollView
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/NestedScrollView.html" target="_top"><font size="+2"><code>NestedScrollView</code></font></A>
+</H2>
+<p><font xsize="+1">Added interface <code>android.support.v4.view.ScrollingView</code>.<br></font>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget.NestedScrollView.setOnScrollChangeListener_added(android.support.v4.widget.NestedScrollView.OnScrollChangeListener)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/widget/NestedScrollView.html#setOnScrollChangeListener(android.support.v4.widget.NestedScrollView.OnScrollChangeListener)" target="_top"><code>setOnScrollChangeListener</code></A>(<code>OnScrollChangeListener</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.widget.ScrollerCompat.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.widget.ScrollerCompat.html
new file mode 100644
index 0000000..7f47eae
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.widget.ScrollerCompat.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.ScrollerCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/ScrollerCompat.html" target="_top"><font size="+2"><code>ScrollerCompat</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget.ScrollerCompat.springBack_added(int, int, int, int, int, int)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v4/widget/ScrollerCompat.html#springBack(int, int, int, int, int, int)" target="_top"><code>springBack</code></A>(<code>int,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.widget.TextViewCompat.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.widget.TextViewCompat.html
new file mode 100644
index 0000000..3641625
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v4.widget.TextViewCompat.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.TextViewCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/TextViewCompat.html" target="_top"><font size="+2"><code>TextViewCompat</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget.TextViewCompat.getMaxLines_added(android.widget.TextView)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/widget/TextViewCompat.html#getMaxLines(android.widget.TextView)" target="_top"><code>getMaxLines</code></A>(<code>TextView</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget.TextViewCompat.getMinLines_added(android.widget.TextView)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/widget/TextViewCompat.html#getMinLines(android.widget.TextView)" target="_top"><code>getMinLines</code></A>(<code>TextView</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.attr.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.attr.html
new file mode 100644
index 0000000..dc6fce2
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.attr.html
@@ -0,0 +1,136 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.attr
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.attr.html" target="_top"><font size="+2"><code>R.attr</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.attr.allowStacking"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.attr.html#allowStacking" target="_top"><code>allowStacking</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.attr.imageButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.attr.html#imageButtonStyle" target="_top"><code>imageButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.attr.seekBarStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.attr.html#seekBarStyle" target="_top"><code>seekBarStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.bool.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.bool.html
new file mode 100644
index 0000000..973cf83
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.bool.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.bool
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.bool.html" target="_top"><font size="+2"><code>R.bool</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.bool.abc_allow_stacked_button_bar"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.bool.html#abc_allow_stacked_button_bar" target="_top"><code>abc_allow_stacked_button_bar</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.dimen.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.dimen.html
new file mode 100644
index 0000000..ca5fec2
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.dimen.html
@@ -0,0 +1,200 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.dimen
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.dimen.html" target="_top"><font size="+2"><code>R.dimen</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.dialog_fixed_height_major"></A>
+  <code>int</code>&nbsp;dialog_fixed_height_major
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.dialog_fixed_height_minor"></A>
+  <code>int</code>&nbsp;dialog_fixed_height_minor
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.dialog_fixed_width_major"></A>
+  <code>int</code>&nbsp;dialog_fixed_width_major
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.dialog_fixed_width_minor"></A>
+  <code>int</code>&nbsp;dialog_fixed_width_minor
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.abc_dialog_fixed_height_major"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.dimen.html#abc_dialog_fixed_height_major" target="_top"><code>abc_dialog_fixed_height_major</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.abc_dialog_fixed_height_minor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.dimen.html#abc_dialog_fixed_height_minor" target="_top"><code>abc_dialog_fixed_height_minor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.abc_dialog_fixed_width_major"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.dimen.html#abc_dialog_fixed_width_major" target="_top"><code>abc_dialog_fixed_width_major</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.abc_dialog_fixed_width_minor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.dimen.html#abc_dialog_fixed_width_minor" target="_top"><code>abc_dialog_fixed_width_minor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.abc_seekbar_track_background_height_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.dimen.html#abc_seekbar_track_background_height_material" target="_top"><code>abc_seekbar_track_background_height_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.abc_seekbar_track_progress_height_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.dimen.html#abc_seekbar_track_progress_height_material" target="_top"><code>abc_seekbar_track_progress_height_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.dimen.abc_select_dialog_padding_start_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.dimen.html#abc_select_dialog_padding_start_material" target="_top"><code>abc_select_dialog_padding_start_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.drawable.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.drawable.html
new file mode 100644
index 0000000..3cfba65
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.drawable.html
@@ -0,0 +1,171 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.drawable
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html" target="_top"><font size="+2"><code>R.drawable</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_btn_default_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_btn_default_material" target="_top"><code>abc_btn_default_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_scrubber_control_off_mtrl_alpha"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_scrubber_control_off_mtrl_alpha" target="_top"><code>abc_scrubber_control_off_mtrl_alpha</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_scrubber_control_to_pressed_mtrl_000"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_scrubber_control_to_pressed_mtrl_000" target="_top"><code>abc_scrubber_control_to_pressed_mtrl_000</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_scrubber_control_to_pressed_mtrl_005"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_scrubber_control_to_pressed_mtrl_005" target="_top"><code>abc_scrubber_control_to_pressed_mtrl_005</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_scrubber_primary_mtrl_alpha"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_scrubber_primary_mtrl_alpha" target="_top"><code>abc_scrubber_primary_mtrl_alpha</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_scrubber_track_mtrl_alpha"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_scrubber_track_mtrl_alpha" target="_top"><code>abc_scrubber_track_mtrl_alpha</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_seekbar_thumb_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_seekbar_thumb_material" target="_top"><code>abc_seekbar_thumb_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_seekbar_track_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_seekbar_track_material" target="_top"><code>abc_seekbar_track_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.id.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.id.html
new file mode 100644
index 0000000..a25139d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.id.html
@@ -0,0 +1,136 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.id
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.id.html" target="_top"><font size="+2"><code>R.id</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.id.scrollIndicatorDown"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.id.html#scrollIndicatorDown" target="_top"><code>scrollIndicatorDown</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.id.scrollIndicatorUp"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.id.html#scrollIndicatorUp" target="_top"><code>scrollIndicatorUp</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.id.spacer"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.id.html#spacer" target="_top"><code>spacer</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.layout.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.layout.html
new file mode 100644
index 0000000..0b485ea
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.layout.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.layout
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.layout.html" target="_top"><font size="+2"><code>R.layout</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.layout.abc_alert_dialog_button_bar_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.layout.html#abc_alert_dialog_button_bar_material" target="_top"><code>abc_alert_dialog_button_bar_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.string.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.string.html
new file mode 100644
index 0000000..b5b32c7
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.string.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.string
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.string.html" target="_top"><font size="+2"><code>R.string</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.string.abc_capital_off"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.string.html#abc_capital_off" target="_top"><code>abc_capital_off</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.string.abc_capital_on"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.string.html#abc_capital_on" target="_top"><code>abc_capital_on</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.style.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.style.html
new file mode 100644
index 0000000..a7b4e2d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.style.html
@@ -0,0 +1,172 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.style
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html" target="_top"><font size="+2"><code>R.style</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.RtlOverlay_Widget_AppCompat_ActionButton_Overflow"></A>
+  <code>int</code>&nbsp;RtlOverlay_Widget_AppCompat_ActionButton_Overflow
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Base_Widget_AppCompat_ImageButton"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Base_Widget_AppCompat_ImageButton" target="_top"><code>Base_Widget_AppCompat_ImageButton</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Base_Widget_AppCompat_SeekBar"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Base_Widget_AppCompat_SeekBar" target="_top"><code>Base_Widget_AppCompat_SeekBar</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.RtlUnderlay_Widget_AppCompat_ActionButton"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#RtlUnderlay_Widget_AppCompat_ActionButton" target="_top"><code>RtlUnderlay_Widget_AppCompat_ActionButton</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.RtlUnderlay_Widget_AppCompat_ActionButton_Overflow"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#RtlUnderlay_Widget_AppCompat_ActionButton_Overflow" target="_top"><code>RtlUnderlay_Widget_AppCompat_ActionButton_Overflow</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Widget_AppCompat_ImageButton"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Widget_AppCompat_ImageButton" target="_top"><code>Widget_AppCompat_ImageButton</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Widget_AppCompat_SeekBar"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Widget_AppCompat_SeekBar" target="_top"><code>Widget_AppCompat_SeekBar</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.styleable.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.styleable.html
new file mode 100644
index 0000000..3f6d157
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.appcompat.R.styleable.html
@@ -0,0 +1,164 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.styleable
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html" target="_top"><font size="+2"><code>R.styleable</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.ButtonBarLayout_allowStacking"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#ButtonBarLayout_allowStacking" target="_top"><code>ButtonBarLayout_allowStacking</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowColor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#TextAppearance_android_shadowColor" target="_top"><code>TextAppearance_android_shadowColor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowDx"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#TextAppearance_android_shadowDx" target="_top"><code>TextAppearance_android_shadowDx</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowDy"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#TextAppearance_android_shadowDy" target="_top"><code>TextAppearance_android_shadowDy</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowRadius"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#TextAppearance_android_shadowRadius" target="_top"><code>TextAppearance_android_shadowRadius</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_imageButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#Theme_imageButtonStyle" target="_top"><code>Theme_imageButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_seekBarStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#Theme_seekBarStyle" target="_top"><code>Theme_seekBarStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.graphics.Palette.Builder.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.graphics.Palette.Builder.html
new file mode 100644
index 0000000..03171fb
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.graphics.Palette.Builder.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.graphics.Palette.Builder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.graphics.<A HREF="../../../../reference/android/support/v7/graphics/Palette.Builder.html" target="_top"><font size="+2"><code>Palette.Builder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.Palette.Builder.clearRegion_added()"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/graphics/Palette.Builder.html#clearRegion()" target="_top"><code>clearRegion</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.Palette.Builder.setRegion_added(int, int, int, int)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/graphics/Palette.Builder.html#setRegion(int, int, int, int)" target="_top"><code>setRegion</code></A>(<code>int,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.graphics.drawable.DrawerArrowDrawable.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.graphics.drawable.DrawerArrowDrawable.html
new file mode 100644
index 0000000..ec3cb15
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.graphics.drawable.DrawerArrowDrawable.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.graphics.drawable.DrawerArrowDrawable
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.graphics.drawable.<A HREF="../../../../reference/android/support/v7/graphics/drawable/DrawerArrowDrawable.html" target="_top"><font size="+2"><code>DrawerArrowDrawable</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.drawable.DrawerArrowDrawable.getPaint_added()"></A>
+  <nobr><code>Paint</code>&nbsp;<A HREF="../../../../reference/android/support/v7/graphics/drawable/DrawerArrowDrawable.html#getPaint()" target="_top"><code>getPaint</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.media.MediaRouteDescriptor.Builder.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.media.MediaRouteDescriptor.Builder.html
new file mode 100644
index 0000000..aec06c0
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.media.MediaRouteDescriptor.Builder.html
@@ -0,0 +1,168 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.media.MediaRouteDescriptor.Builder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.media.<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.Builder.html" target="_top"><font size="+2"><code>MediaRouteDescriptor.Builder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberId_added(java.lang.String)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.Builder.html#addGroupMemberId(java.lang.String)" target="_top"><code>addGroupMemberId</code></A>(<code>String</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberIds_added(java.util.Collection<java.lang.String>)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.Builder.html#addGroupMemberIds(java.util.Collection<java.lang.String>)" target="_top"><code>addGroupMemberIds</code></A>(<code>Collection&lt;String&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.Builder.setConnectionState_added(int)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.Builder.html#setConnectionState(int)" target="_top"><code>setConnectionState</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.Builder.setDeviceType_added(int)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.Builder.html#setDeviceType(int)" target="_top"><code>setDeviceType</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.Builder.setIconUri_added(android.net.Uri)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.Builder.html#setIconUri(android.net.Uri)" target="_top"><code>setIconUri</code></A>(<code>Uri</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.Builder.setConnecting_changed(boolean)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.Builder.html#setConnecting(boolean)" target="_top"><code>setConnecting</code></A>(<code>boolean</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+<b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.media.MediaRouteDescriptor.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.media.MediaRouteDescriptor.html
new file mode 100644
index 0000000..381eb20
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.media.MediaRouteDescriptor.html
@@ -0,0 +1,161 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.media.MediaRouteDescriptor
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.media.<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.html" target="_top"><font size="+2"><code>MediaRouteDescriptor</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.getConnectionState_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.html#getConnectionState()" target="_top"><code>getConnectionState</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.getDeviceType_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.html#getDeviceType()" target="_top"><code>getDeviceType</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.getGroupMemberIds_added()"></A>
+  <nobr><code>List&lt;String&gt;</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.html#getGroupMemberIds()" target="_top"><code>getGroupMemberIds</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.getIconUri_added()"></A>
+  <nobr><code>Uri</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.html#getIconUri()" target="_top"><code>getIconUri</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.isConnecting_changed()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.html#isConnecting()" target="_top"><code>isConnecting</code></A>()  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+<b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.media.MediaRouter.RouteInfo.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.media.MediaRouter.RouteInfo.html
new file mode 100644
index 0000000..239341d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.media.MediaRouter.RouteInfo.html
@@ -0,0 +1,180 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.media.MediaRouter.RouteInfo
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.media.<A HREF="../../../../reference/android/support/v7/media/MediaRouter.RouteInfo.html" target="_top"><font size="+2"><code>MediaRouter.RouteInfo</code></font></A>
+</H2>
+<p>Change from final to non-final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouter.RouteInfo.getConnectionState_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouter.RouteInfo.html#getConnectionState()" target="_top"><code>getConnectionState</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouter.RouteInfo.getDeviceType_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouter.RouteInfo.html#getDeviceType()" target="_top"><code>getDeviceType</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouter.RouteInfo.getIconUri_added()"></A>
+  <nobr><code>Uri</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouter.RouteInfo.html#getIconUri()" target="_top"><code>getIconUri</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_CONNECTED"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouter.RouteInfo.html#CONNECTION_STATE_CONNECTED" target="_top"><code>CONNECTION_STATE_CONNECTED</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_CONNECTING"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouter.RouteInfo.html#CONNECTION_STATE_CONNECTING" target="_top"><code>CONNECTION_STATE_CONNECTING</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_DISCONNECTED"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouter.RouteInfo.html#CONNECTION_STATE_DISCONNECTED" target="_top"><code>CONNECTION_STATE_DISCONNECTED</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouter.RouteInfo.DEVICE_TYPE_SPEAKER"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouter.RouteInfo.html#DEVICE_TYPE_SPEAKER" target="_top"><code>DEVICE_TYPE_SPEAKER</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouter.RouteInfo.DEVICE_TYPE_TV"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouter.RouteInfo.html#DEVICE_TYPE_TV" target="_top"><code>DEVICE_TYPE_TV</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html
new file mode 100644
index 0000000..05b65ff
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.preference.EditTextPreferenceDialogFragmentCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.preference.<A HREF="../../../../reference/android/support/v7/preference/EditTextPreferenceDialogFragmentCompat.html" target="_top"><font size="+2"><code>EditTextPreferenceDialogFragmentCompat</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.onAddEditTextToDialogView_removed(android.view.View, android.widget.EditText)"></A>
+  <nobr><code>void</code>&nbsp;onAddEditTextToDialogView(<code>View,</nobr> EditText<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/changes-summary.html b/docs/html/sdk/support_api_diff/23.1.0/changes/changes-summary.html
new file mode 100644
index 0000000..728ade1
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/changes-summary.html
@@ -0,0 +1,246 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Support&nbsp;Library&nbsp;API&nbsp;Differences&nbsp;Report
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<body class="gc-documentation">
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+    <div id="docTitleContainer">
+    <h1>Support&nbsp;Library&nbsp;API&nbsp;Differences&nbsp;Report</h1>
+<p>This report details the changes in the Android Support Library API between two versions. 
+It shows additions, modifications, and removals for packages, classes, methods, and fields. 
+The report also includes general statistics that characterize the extent and type of the differences.</p>
+<p>This report is based a comparison of the Support Library API specifications 
+whose version level identifiers are given in the upper-right corner of this page. It compares a 
+newer "to" version's API to an older "from" version's API, noting all changes relative to the 
+older API. So, for example, API elements marked as removed are no longer present in the "to" 
+API specification.</p>
+<p>To navigate the report, use the "Select a Diffs Index" and "Filter the Index" 
+controls on the left. The report uses text formatting to indicate <em>interface names</em>, 
+<a href= ><code>links to reference documentation</code></a>, and <a href= >links to change 
+description</a>. The statistics are accessible from the "Statistics" link in the upper-right corner.</p>
+<p>For more information about the Android API and SDK, 
+see the <a href="http://developer.android.com/index.html" target="_top">Android Developers site</a>.</p>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Packages" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Packages</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs"></A>
+  <nobr><A HREF="pkg_android.support.customtabs.html">android.support.customtabs</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget"></A>
+  <nobr><A HREF="pkg_android.support.design.widget.html">android.support.design.widget</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.percent"></A>
+  <nobr><A HREF="pkg_android.support.percent.html">android.support.percent</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v14.preference"></A>
+  <nobr><A HREF="pkg_android.support.v14.preference.html">android.support.v14.preference</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app"></A>
+  <nobr><A HREF="pkg_android.support.v17.leanback.app.html">android.support.v17.leanback.app</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget"></A>
+  <nobr><A HREF="pkg_android.support.v17.leanback.widget.html">android.support.v17.leanback.widget</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app"></A>
+  <nobr><A HREF="pkg_android.support.v4.app.html">android.support.v4.app</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content"></A>
+  <nobr><A HREF="pkg_android.support.v4.content.html">android.support.v4.content</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.res"></A>
+  <nobr><A HREF="pkg_android.support.v4.content.res.html">android.support.v4.content.res</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.media.session"></A>
+  <nobr><A HREF="pkg_android.support.v4.media.session.html">android.support.v4.media.session</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view"></A>
+  <nobr><A HREF="pkg_android.support.v4.view.html">android.support.v4.view</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget"></A>
+  <nobr><A HREF="pkg_android.support.v4.widget.html">android.support.v4.widget</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat"></A>
+  <nobr><A HREF="pkg_android.support.v7.appcompat.html">android.support.v7.appcompat</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics"></A>
+  <nobr><A HREF="pkg_android.support.v7.graphics.html">android.support.v7.graphics</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.drawable"></A>
+  <nobr><A HREF="pkg_android.support.v7.graphics.drawable.html">android.support.v7.graphics.drawable</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media"></A>
+  <nobr><A HREF="pkg_android.support.v7.media.html">android.support.v7.media</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference"></A>
+  <nobr><A HREF="pkg_android.support.v7.preference.html">android.support.v7.preference</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- End of API section -->
+<!-- Start of packages section -->
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_additions.html b/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_additions.html
new file mode 100644
index 0000000..c0022c9
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_additions.html
@@ -0,0 +1,211 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Class Additions Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Classes" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="classes_index_all.html" class="staysblack">All Classes</a>
+  <br>
+<font color="#999999">Removals</font>
+  <br>
+<b>Additions</b>
+  <br>
+<A HREF="classes_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.design.widget.html#AppBarLayout.Behavior.DragCallback" class="hiddenlink" target="rightframe"><b>AppBarLayout.Behavior.DragCallback</b></A><br>
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v4.app.html#BundleCompat" class="hiddenlink" target="rightframe"><b>BundleCompat</b></A><br>
+<A NAME="F"></A>
+<br><font size="+2">F</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.design.widget.html#FloatingActionButton.OnVisibilityChangedListener" class="hiddenlink" target="rightframe"><b>FloatingActionButton.OnVisibilityChangedListener</b></A><br>
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedActionEditText" class="hiddenlink" target="rightframe"><b>GuidedActionEditText</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepFragment.GuidedStepBackgroundFragment" class="hiddenlink" target="rightframe"><b>GuidedStepFragment.GuidedStepBackgroundFragment</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepSupportFragment" class="hiddenlink" target="rightframe"><b>GuidedStepSupportFragment</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment" class="hiddenlink" target="rightframe"><b>GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment</b></A><br>
+<A NAME="H"></A>
+<br><font size="+2">H</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.design.widget.html#HeaderBehavior" class="hiddenlink" target="rightframe"><b>HeaderBehavior</b></A><br>
+<A HREF="pkg_android.support.design.widget.html#HeaderScrollingViewBehavior" class="hiddenlink" target="rightframe"><b>HeaderScrollingViewBehavior</b></A><br>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v17.leanback.widget.html#ImeKeyMonitor" class="hiddenlink" target="rightframe"><b><i>ImeKeyMonitor</i></b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#ImeKeyMonitor.ImeKeyListener" class="hiddenlink" target="rightframe"><b><i>ImeKeyMonitor.ImeKeyListener</i></b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#ItemBridgeAdapterShadowOverlayWrapper" class="hiddenlink" target="rightframe"><b>ItemBridgeAdapterShadowOverlayWrapper</b></A><br>
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v4.media.session.html#MediaButtonReceiver" class="hiddenlink" target="rightframe"><b>MediaButtonReceiver</b></A><br>
+<A HREF="pkg_android.support.v7.media.html#MediaRouter.RouteGroup" class="hiddenlink" target="rightframe"><b>MediaRouter.RouteGroup</b></A><br>
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v4.widget.html#NestedScrollView.OnScrollChangeListener" class="hiddenlink" target="rightframe"><b><i>NestedScrollView.OnScrollChangeListener</i></b></A><br>
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v4.content.html#ParallelExecutorCompat" class="hiddenlink" target="rightframe"><b>ParallelExecutorCompat</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.app.html#PlaybackControlSupportGlue" class="hiddenlink" target="rightframe"><b>PlaybackControlSupportGlue</b></A><br>
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper.Builder" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper.Builder</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper.Options" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper.Options</b></A><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_all.html b/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_all.html
new file mode 100644
index 0000000..05f83b8
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_all.html
@@ -0,0 +1,485 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Class Differences Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Classes" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<b>Classes</b>
+  <br>
+<font color="#999999">Removals</font>
+  <br>
+<A HREF="classes_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<A HREF="classes_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.AppBarLayout.Behavior.html" class="hiddenlink" target="rightframe">AppBarLayout.Behavior</A><br>
+<A HREF="pkg_android.support.design.widget.html#AppBarLayout.Behavior.DragCallback" class="hiddenlink" target="rightframe"><b>AppBarLayout.Behavior.DragCallback</b></A><br>
+<A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html" class="hiddenlink" target="rightframe">AppBarLayout.Behavior.SavedState</A><br>
+<A HREF="android.support.design.widget.AppBarLayout.LayoutParams.html" class="hiddenlink" target="rightframe">AppBarLayout.LayoutParams</A><br>
+<A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html" class="hiddenlink" target="rightframe">AppBarLayout.ScrollingViewBehavior</A><br>
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.BrowseFragment.html" class="hiddenlink" target="rightframe">BrowseFragment</A><br>
+<A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html" class="hiddenlink" target="rightframe">BrowseSupportFragment</A><br>
+<A HREF="pkg_android.support.v4.app.html#BundleCompat" class="hiddenlink" target="rightframe"><b>BundleCompat</b></A><br>
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.CollapsingToolbarLayout.html" class="hiddenlink" target="rightframe">CollapsingToolbarLayout</A><br>
+<A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html" class="hiddenlink" target="rightframe">CoordinatorLayout.SavedState</A><br>
+<A HREF="android.support.customtabs.CustomTabsCallback.html" class="hiddenlink" target="rightframe">CustomTabsCallback</A><br>
+<A HREF="android.support.customtabs.CustomTabsIntent.html" class="hiddenlink" target="rightframe">CustomTabsIntent</A><br>
+<A HREF="android.support.customtabs.CustomTabsIntent.Builder.html" class="hiddenlink" target="rightframe">CustomTabsIntent.Builder</A><br>
+<A HREF="android.support.customtabs.CustomTabsService.html" class="hiddenlink" target="rightframe">CustomTabsService</A><br>
+<A HREF="android.support.customtabs.CustomTabsSession.html" class="hiddenlink" target="rightframe">CustomTabsSession</A><br>
+<A HREF="android.support.customtabs.CustomTabsSessionToken.html" class="hiddenlink" target="rightframe">CustomTabsSessionToken</A><br>
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.DetailsFragment.html" class="hiddenlink" target="rightframe">DetailsFragment</A><br>
+<A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html" class="hiddenlink" target="rightframe">DetailsSupportFragment</A><br>
+<A HREF="android.support.v7.graphics.drawable.DrawerArrowDrawable.html" class="hiddenlink" target="rightframe">DrawerArrowDrawable</A><br>
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v14.preference.EditTextPreferenceDialogFragment.html" class="hiddenlink" target="rightframe">EditTextPreferenceDialogFragment</A><br>
+<A HREF="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html" class="hiddenlink" target="rightframe">EditTextPreferenceDialogFragmentCompat</A><br>
+<A NAME="F"></A>
+<br><font size="+2">F</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.FloatingActionButton.html" class="hiddenlink" target="rightframe">FloatingActionButton</A><br>
+<A HREF="android.support.design.widget.FloatingActionButton.Behavior.html" class="hiddenlink" target="rightframe">FloatingActionButton.Behavior</A><br>
+<A HREF="pkg_android.support.design.widget.html#FloatingActionButton.OnVisibilityChangedListener" class="hiddenlink" target="rightframe"><b>FloatingActionButton.OnVisibilityChangedListener</b></A><br>
+<A HREF="android.support.v4.app.FragmentActivity.html" class="hiddenlink" target="rightframe">FragmentActivity</A><br>
+<A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html" class="hiddenlink" target="rightframe"><i>FragmentAnimationProvider</i></A><br>
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.widget.GuidanceStylist.html" class="hiddenlink" target="rightframe">GuidanceStylist</A><br>
+<A HREF="android.support.v17.leanback.widget.GuidedAction.html" class="hiddenlink" target="rightframe">GuidedAction</A><br>
+<A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html" class="hiddenlink" target="rightframe">GuidedAction.Builder</A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedActionEditText" class="hiddenlink" target="rightframe"><b>GuidedActionEditText</b></A><br>
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html" class="hiddenlink" target="rightframe">GuidedActionsStylist</A><br>
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html" class="hiddenlink" target="rightframe">GuidedActionsStylist.ViewHolder</A><br>
+<A HREF="android.support.v17.leanback.app.GuidedStepFragment.html" class="hiddenlink" target="rightframe">GuidedStepFragment</A><br>
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepFragment.GuidedStepBackgroundFragment" class="hiddenlink" target="rightframe"><b>GuidedStepFragment.GuidedStepBackgroundFragment</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepSupportFragment" class="hiddenlink" target="rightframe"><b>GuidedStepSupportFragment</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment" class="hiddenlink" target="rightframe"><b>GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment</b></A><br>
+<A NAME="H"></A>
+<br><font size="+2">H</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.design.widget.html#HeaderBehavior" class="hiddenlink" target="rightframe"><b>HeaderBehavior</b></A><br>
+<A HREF="pkg_android.support.design.widget.html#HeaderScrollingViewBehavior" class="hiddenlink" target="rightframe"><b>HeaderScrollingViewBehavior</b></A><br>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.widget.ImageCardView.html" class="hiddenlink" target="rightframe">ImageCardView</A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#ImeKeyMonitor" class="hiddenlink" target="rightframe"><b><i>ImeKeyMonitor</i></b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#ImeKeyMonitor.ImeKeyListener" class="hiddenlink" target="rightframe"><b><i>ImeKeyMonitor.ImeKeyListener</i></b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#ItemBridgeAdapterShadowOverlayWrapper" class="hiddenlink" target="rightframe"><b>ItemBridgeAdapterShadowOverlayWrapper</b></A><br>
+<A NAME="L"></A>
+<br><font size="+2">L</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.widget.ListRowPresenter.html" class="hiddenlink" target="rightframe">ListRowPresenter</A><br>
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v4.media.session.html#MediaButtonReceiver" class="hiddenlink" target="rightframe"><b>MediaButtonReceiver</b></A><br>
+<A HREF="android.support.v7.media.MediaRouteDescriptor.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor</A><br>
+<A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor.Builder</A><br>
+<A HREF="pkg_android.support.v7.media.html#MediaRouter.RouteGroup" class="hiddenlink" target="rightframe"><b>MediaRouter.RouteGroup</b></A><br>
+<A HREF="android.support.v7.media.MediaRouter.RouteInfo.html" class="hiddenlink" target="rightframe">MediaRouter.RouteInfo</A><br>
+<A HREF="android.support.v4.media.session.MediaSessionCompat.html" class="hiddenlink" target="rightframe">MediaSessionCompat</A><br>
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.NavigationView.SavedState.html" class="hiddenlink" target="rightframe">NavigationView.SavedState</A><br>
+<A HREF="android.support.v4.widget.NestedScrollView.html" class="hiddenlink" target="rightframe">NestedScrollView</A><br>
+<A HREF="pkg_android.support.v4.widget.html#NestedScrollView.OnScrollChangeListener" class="hiddenlink" target="rightframe"><b><i>NestedScrollView.OnScrollChangeListener</i></b></A><br>
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.graphics.Palette.Builder.html" class="hiddenlink" target="rightframe">Palette.Builder</A><br>
+<A HREF="pkg_android.support.v4.content.html#ParallelExecutorCompat" class="hiddenlink" target="rightframe"><b>ParallelExecutorCompat</b></A><br>
+<A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html" class="hiddenlink" target="rightframe">PercentLayoutHelper.PercentLayoutInfo</A><br>
+<A HREF="pkg_android.support.v17.leanback.app.html#PlaybackControlSupportGlue" class="hiddenlink" target="rightframe"><b>PlaybackControlSupportGlue</b></A><br>
+<A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html" class="hiddenlink" target="rightframe">PlaybackOverlayFragment</A><br>
+<A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html" class="hiddenlink" target="rightframe">PlaybackOverlaySupportFragment</A><br>
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.appcompat.R.attr.html" class="hiddenlink" target="rightframe">R.attr</A><br>
+<A HREF="android.support.v7.appcompat.R.bool.html" class="hiddenlink" target="rightframe">R.bool</A><br>
+<A HREF="android.support.v7.appcompat.R.dimen.html" class="hiddenlink" target="rightframe">R.dimen</A><br>
+<A HREF="android.support.v7.appcompat.R.drawable.html" class="hiddenlink" target="rightframe">R.drawable</A><br>
+<A HREF="android.support.v7.appcompat.R.id.html" class="hiddenlink" target="rightframe">R.id</A><br>
+<A HREF="android.support.v7.appcompat.R.layout.html" class="hiddenlink" target="rightframe">R.layout</A><br>
+<A HREF="android.support.v7.appcompat.R.string.html" class="hiddenlink" target="rightframe">R.string</A><br>
+<A HREF="android.support.v7.appcompat.R.style.html" class="hiddenlink" target="rightframe">R.style</A><br>
+<A HREF="android.support.v7.appcompat.R.styleable.html" class="hiddenlink" target="rightframe">R.styleable</A><br>
+<A HREF="android.support.v4.content.res.ResourcesCompat.html" class="hiddenlink" target="rightframe">ResourcesCompat</A><br>
+<A HREF="android.support.v17.leanback.widget.RowPresenter.html" class="hiddenlink" target="rightframe">RowPresenter</A><br>
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.widget.ScrollerCompat.html" class="hiddenlink" target="rightframe">ScrollerCompat</A><br>
+<A HREF="android.support.v17.leanback.widget.SearchBar.html" class="hiddenlink" target="rightframe">SearchBar</A><br>
+<A HREF="android.support.v17.leanback.app.SearchFragment.html" class="hiddenlink" target="rightframe">SearchFragment</A><br>
+<A HREF="android.support.v17.leanback.app.SearchSupportFragment.html" class="hiddenlink" target="rightframe">SearchSupportFragment</A><br>
+<A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html" class="hiddenlink" target="rightframe">ShadowOverlayContainer</A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper.Builder" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper.Builder</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#ShadowOverlayHelper.Options" class="hiddenlink" target="rightframe"><b>ShadowOverlayHelper.Options</b></A><br>
+<A HREF="android.support.design.widget.Snackbar.html" class="hiddenlink" target="rightframe">Snackbar</A><br>
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.TextInputLayout.html" class="hiddenlink" target="rightframe">TextInputLayout</A><br>
+<A HREF="android.support.v4.widget.TextViewCompat.html" class="hiddenlink" target="rightframe">TextViewCompat</A><br>
+<A NAME="V"></A>
+<br><font size="+2">V</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.VerticalGridFragment.html" class="hiddenlink" target="rightframe">VerticalGridFragment</A><br>
+<A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html" class="hiddenlink" target="rightframe">VerticalGridPresenter</A><br>
+<A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html" class="hiddenlink" target="rightframe">VerticalGridSupportFragment</A><br>
+<A HREF="android.support.v4.view.ViewCompat.html" class="hiddenlink" target="rightframe">ViewCompat</A><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_changes.html b/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_changes.html
new file mode 100644
index 0000000..b1ee972
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_changes.html
@@ -0,0 +1,429 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Class Changes Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Classes" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="classes_index_all.html" class="staysblack">All Classes</a>
+  <br>
+<font color="#999999">Removals</font>
+  <br>
+<A HREF="classes_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<b>Changes</b>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.AppBarLayout.Behavior.html" class="hiddenlink" target="rightframe">AppBarLayout.Behavior</A><br>
+<A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html" class="hiddenlink" target="rightframe">AppBarLayout.Behavior.SavedState</A><br>
+<A HREF="android.support.design.widget.AppBarLayout.LayoutParams.html" class="hiddenlink" target="rightframe">AppBarLayout.LayoutParams</A><br>
+<A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html" class="hiddenlink" target="rightframe">AppBarLayout.ScrollingViewBehavior</A><br>
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.BrowseFragment.html" class="hiddenlink" target="rightframe">BrowseFragment</A><br>
+<A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html" class="hiddenlink" target="rightframe">BrowseSupportFragment</A><br>
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.CollapsingToolbarLayout.html" class="hiddenlink" target="rightframe">CollapsingToolbarLayout</A><br>
+<A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html" class="hiddenlink" target="rightframe">CoordinatorLayout.SavedState</A><br>
+<A HREF="android.support.customtabs.CustomTabsCallback.html" class="hiddenlink" target="rightframe">CustomTabsCallback</A><br>
+<A HREF="android.support.customtabs.CustomTabsIntent.html" class="hiddenlink" target="rightframe">CustomTabsIntent</A><br>
+<A HREF="android.support.customtabs.CustomTabsIntent.Builder.html" class="hiddenlink" target="rightframe">CustomTabsIntent.Builder</A><br>
+<A HREF="android.support.customtabs.CustomTabsService.html" class="hiddenlink" target="rightframe">CustomTabsService</A><br>
+<A HREF="android.support.customtabs.CustomTabsSession.html" class="hiddenlink" target="rightframe">CustomTabsSession</A><br>
+<A HREF="android.support.customtabs.CustomTabsSessionToken.html" class="hiddenlink" target="rightframe">CustomTabsSessionToken</A><br>
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.DetailsFragment.html" class="hiddenlink" target="rightframe">DetailsFragment</A><br>
+<A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html" class="hiddenlink" target="rightframe">DetailsSupportFragment</A><br>
+<A HREF="android.support.v7.graphics.drawable.DrawerArrowDrawable.html" class="hiddenlink" target="rightframe">DrawerArrowDrawable</A><br>
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v14.preference.EditTextPreferenceDialogFragment.html" class="hiddenlink" target="rightframe">EditTextPreferenceDialogFragment</A><br>
+<A HREF="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html" class="hiddenlink" target="rightframe">EditTextPreferenceDialogFragmentCompat</A><br>
+<A NAME="F"></A>
+<br><font size="+2">F</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.FloatingActionButton.html" class="hiddenlink" target="rightframe">FloatingActionButton</A><br>
+<A HREF="android.support.design.widget.FloatingActionButton.Behavior.html" class="hiddenlink" target="rightframe">FloatingActionButton.Behavior</A><br>
+<A HREF="android.support.v4.app.FragmentActivity.html" class="hiddenlink" target="rightframe">FragmentActivity</A><br>
+<A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html" class="hiddenlink" target="rightframe"><i>FragmentAnimationProvider</i></A><br>
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.widget.GuidanceStylist.html" class="hiddenlink" target="rightframe">GuidanceStylist</A><br>
+<A HREF="android.support.v17.leanback.widget.GuidedAction.html" class="hiddenlink" target="rightframe">GuidedAction</A><br>
+<A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html" class="hiddenlink" target="rightframe">GuidedAction.Builder</A><br>
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html" class="hiddenlink" target="rightframe">GuidedActionsStylist</A><br>
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html" class="hiddenlink" target="rightframe">GuidedActionsStylist.ViewHolder</A><br>
+<A HREF="android.support.v17.leanback.app.GuidedStepFragment.html" class="hiddenlink" target="rightframe">GuidedStepFragment</A><br>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.widget.ImageCardView.html" class="hiddenlink" target="rightframe">ImageCardView</A><br>
+<A NAME="L"></A>
+<br><font size="+2">L</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.widget.ListRowPresenter.html" class="hiddenlink" target="rightframe">ListRowPresenter</A><br>
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.media.MediaRouteDescriptor.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor</A><br>
+<A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor.Builder</A><br>
+<A HREF="android.support.v7.media.MediaRouter.RouteInfo.html" class="hiddenlink" target="rightframe">MediaRouter.RouteInfo</A><br>
+<A HREF="android.support.v4.media.session.MediaSessionCompat.html" class="hiddenlink" target="rightframe">MediaSessionCompat</A><br>
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.NavigationView.SavedState.html" class="hiddenlink" target="rightframe">NavigationView.SavedState</A><br>
+<A HREF="android.support.v4.widget.NestedScrollView.html" class="hiddenlink" target="rightframe">NestedScrollView</A><br>
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.graphics.Palette.Builder.html" class="hiddenlink" target="rightframe">Palette.Builder</A><br>
+<A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html" class="hiddenlink" target="rightframe">PercentLayoutHelper.PercentLayoutInfo</A><br>
+<A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html" class="hiddenlink" target="rightframe">PlaybackOverlayFragment</A><br>
+<A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html" class="hiddenlink" target="rightframe">PlaybackOverlaySupportFragment</A><br>
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.appcompat.R.attr.html" class="hiddenlink" target="rightframe">R.attr</A><br>
+<A HREF="android.support.v7.appcompat.R.bool.html" class="hiddenlink" target="rightframe">R.bool</A><br>
+<A HREF="android.support.v7.appcompat.R.dimen.html" class="hiddenlink" target="rightframe">R.dimen</A><br>
+<A HREF="android.support.v7.appcompat.R.drawable.html" class="hiddenlink" target="rightframe">R.drawable</A><br>
+<A HREF="android.support.v7.appcompat.R.id.html" class="hiddenlink" target="rightframe">R.id</A><br>
+<A HREF="android.support.v7.appcompat.R.layout.html" class="hiddenlink" target="rightframe">R.layout</A><br>
+<A HREF="android.support.v7.appcompat.R.string.html" class="hiddenlink" target="rightframe">R.string</A><br>
+<A HREF="android.support.v7.appcompat.R.style.html" class="hiddenlink" target="rightframe">R.style</A><br>
+<A HREF="android.support.v7.appcompat.R.styleable.html" class="hiddenlink" target="rightframe">R.styleable</A><br>
+<A HREF="android.support.v4.content.res.ResourcesCompat.html" class="hiddenlink" target="rightframe">ResourcesCompat</A><br>
+<A HREF="android.support.v17.leanback.widget.RowPresenter.html" class="hiddenlink" target="rightframe">RowPresenter</A><br>
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.widget.ScrollerCompat.html" class="hiddenlink" target="rightframe">ScrollerCompat</A><br>
+<A HREF="android.support.v17.leanback.widget.SearchBar.html" class="hiddenlink" target="rightframe">SearchBar</A><br>
+<A HREF="android.support.v17.leanback.app.SearchFragment.html" class="hiddenlink" target="rightframe">SearchFragment</A><br>
+<A HREF="android.support.v17.leanback.app.SearchSupportFragment.html" class="hiddenlink" target="rightframe">SearchSupportFragment</A><br>
+<A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html" class="hiddenlink" target="rightframe">ShadowOverlayContainer</A><br>
+<A HREF="android.support.design.widget.Snackbar.html" class="hiddenlink" target="rightframe">Snackbar</A><br>
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.TextInputLayout.html" class="hiddenlink" target="rightframe">TextInputLayout</A><br>
+<A HREF="android.support.v4.widget.TextViewCompat.html" class="hiddenlink" target="rightframe">TextViewCompat</A><br>
+<A NAME="V"></A>
+<br><font size="+2">V</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.VerticalGridFragment.html" class="hiddenlink" target="rightframe">VerticalGridFragment</A><br>
+<A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html" class="hiddenlink" target="rightframe">VerticalGridPresenter</A><br>
+<A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html" class="hiddenlink" target="rightframe">VerticalGridSupportFragment</A><br>
+<A HREF="android.support.v4.view.ViewCompat.html" class="hiddenlink" target="rightframe">ViewCompat</A><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_removals.html b/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_removals.html
new file mode 100644
index 0000000..e6da73f
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/classes_index_removals.html
@@ -0,0 +1,61 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Class Removals Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Classes" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="classes_index_all.html" class="staysblack">All Classes</a>
+  <br>
+<font color="#999999">Removals</font>
+  <br>
+<A HREF="classes_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<A HREF="classes_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_additions.html b/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_additions.html
new file mode 100644
index 0000000..3bf8178
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_additions.html
@@ -0,0 +1,111 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Constructor Additions Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Constructors" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="constructors_index_all.html" class="staysblack">All Constructors</a>
+  <br>
+<A HREF="constructors_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<b>Additions</b>
+  <br>
+<font color="#999999">Changes</font>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html#android.support.design.widget.AppBarLayout.Behavior.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>AppBarLayout.Behavior.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html#android.support.design.widget.CoordinatorLayout.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>CoordinatorLayout.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.ctor_added(android.content.Context, int)" class="hiddenlink" target="rightframe"><b>ImageCardView</b>
+(<code>Context, int</code>)</A></nobr>&nbsp;constructor<br>
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.media.session.MediaSessionCompat.html#android.support.v4.media.session.MediaSessionCompat.ctor_added(android.content.Context, java.lang.String)" class="hiddenlink" target="rightframe"><b>MediaSessionCompat</b>
+(<code>Context, String</code>)</A></nobr>&nbsp;constructor<br>
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.NavigationView.SavedState.html#android.support.design.widget.NavigationView.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>NavigationView.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_all.html b/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_all.html
new file mode 100644
index 0000000..546eae8
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_all.html
@@ -0,0 +1,120 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Constructor Differences Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Constructors" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<b>Constructors</b>
+  <br>
+<A HREF="constructors_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<A HREF="constructors_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<font color="#999999">Changes</font>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>AppBarLayout.Behavior.SavedState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html#android.support.design.widget.AppBarLayout.Behavior.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>AppBarLayout.Behavior.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html#android.support.design.widget.AppBarLayout.Behavior.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>AppBarLayout.Behavior.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>CoordinatorLayout.SavedState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html#android.support.design.widget.CoordinatorLayout.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>CoordinatorLayout.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html#android.support.design.widget.CoordinatorLayout.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>CoordinatorLayout.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.ctor_added(android.content.Context, int)" class="hiddenlink" target="rightframe"><b>ImageCardView</b>
+(<code>Context, int</code>)</A></nobr>&nbsp;constructor<br>
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.media.session.MediaSessionCompat.html#android.support.v4.media.session.MediaSessionCompat.ctor_added(android.content.Context, java.lang.String)" class="hiddenlink" target="rightframe"><b>MediaSessionCompat</b>
+(<code>Context, String</code>)</A></nobr>&nbsp;constructor<br>
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>NavigationView.SavedState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.NavigationView.SavedState.html#android.support.design.widget.NavigationView.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>NavigationView.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.NavigationView.SavedState.html#android.support.design.widget.NavigationView.SavedState.ctor_added(android.os.Parcel, java.lang.ClassLoader)" class="hiddenlink" target="rightframe"><b>NavigationView.SavedState</b>
+(<code>Parcel, ClassLoader</code>)</A></nobr>&nbsp;constructor<br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_changes.html b/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_changes.html
new file mode 100644
index 0000000..52c8b49
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_changes.html
@@ -0,0 +1,61 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Constructor Changes Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Constructors" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="constructors_index_all.html" class="staysblack">All Constructors</a>
+  <br>
+<A HREF="constructors_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<A HREF="constructors_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<font color="#999999">Changes</font>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_removals.html b/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_removals.html
new file mode 100644
index 0000000..337274d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/constructors_index_removals.html
@@ -0,0 +1,85 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Constructor Removals Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Constructors" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="constructors_index_all.html" class="staysblack">All Constructors</a>
+  <br>
+<b>Removals</b>
+  <br>
+<A HREF="constructors_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<font color="#999999">Changes</font>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html#android.support.design.widget.AppBarLayout.Behavior.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>AppBarLayout.Behavior.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html#android.support.design.widget.CoordinatorLayout.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>CoordinatorLayout.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.NavigationView.SavedState.html#android.support.design.widget.NavigationView.SavedState.ctor_removed(android.os.Parcel)" class="hiddenlink" target="rightframe"><strike>NavigationView.SavedState</strike>
+(<code>Parcel</code>)</A></nobr>&nbsp;constructor<br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_additions.html b/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_additions.html
new file mode 100644
index 0000000..d1ef3ac
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_additions.html
@@ -0,0 +1,343 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Field Additions Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Fields" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="fields_index_all.html" class="staysblack">All Fields</a>
+  <br>
+<A HREF="fields_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<b>Additions</b>
+  <br>
+<font color="#999999">Changes</font>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.layout.html#android.support.v7.appcompat.R.layout.abc_alert_dialog_button_bar_material" class="hiddenlink" target="rightframe">abc_alert_dialog_button_bar_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.bool.html#android.support.v7.appcompat.R.bool.abc_allow_stacked_button_bar" class="hiddenlink" target="rightframe">abc_allow_stacked_button_bar</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_default_material" class="hiddenlink" target="rightframe">abc_btn_default_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.string.html#android.support.v7.appcompat.R.string.abc_capital_off" class="hiddenlink" target="rightframe">abc_capital_off</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.string.html#android.support.v7.appcompat.R.string.abc_capital_on" class="hiddenlink" target="rightframe">abc_capital_on</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_height_major" class="hiddenlink" target="rightframe">abc_dialog_fixed_height_major</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_height_minor" class="hiddenlink" target="rightframe">abc_dialog_fixed_height_minor</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_width_major" class="hiddenlink" target="rightframe">abc_dialog_fixed_width_major</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_width_minor" class="hiddenlink" target="rightframe">abc_dialog_fixed_width_minor</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_off_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_control_off_mtrl_alpha</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_to_pressed_mtrl_000" class="hiddenlink" target="rightframe">abc_scrubber_control_to_pressed_mtrl_000</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_to_pressed_mtrl_005" class="hiddenlink" target="rightframe">abc_scrubber_control_to_pressed_mtrl_005</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_primary_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_primary_mtrl_alpha</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_track_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_track_mtrl_alpha</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_seekbar_thumb_material" class="hiddenlink" target="rightframe">abc_seekbar_thumb_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_seekbar_track_background_height_material" class="hiddenlink" target="rightframe">abc_seekbar_track_background_height_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_seekbar_track_material" class="hiddenlink" target="rightframe">abc_seekbar_track_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_seekbar_track_progress_height_material" class="hiddenlink" target="rightframe">abc_seekbar_track_progress_height_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_select_dialog_padding_start_material" class="hiddenlink" target="rightframe">abc_select_dialog_padding_start_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.allowStacking" class="hiddenlink" target="rightframe">allowStacking</A>
+</nobr><br>
+<nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html#android.support.percent.PercentLayoutHelper.PercentLayoutInfo.aspectRatio" class="hiddenlink" target="rightframe">aspectRatio</A>
+</nobr><br>
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_ImageButton" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_ImageButton</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_SeekBar" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_SeekBar</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.ButtonBarLayout_allowStacking" class="hiddenlink" target="rightframe">ButtonBarLayout_allowStacking</A>
+</nobr><br>
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_CONTENT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_CONTENT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_ICON_LEFT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_ICON_LEFT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_ICON_RIGHT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_ICON_RIGHT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_IMAGE_ONLY" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_IMAGE_ONLY</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_TITLE" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_TITLE</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_CONNECTED" class="hiddenlink" target="rightframe">CONNECTION_STATE_CONNECTED</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_CONNECTING" class="hiddenlink" target="rightframe">CONNECTION_STATE_CONNECTING</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_DISCONNECTED" class="hiddenlink" target="rightframe">CONNECTION_STATE_DISCONNECTED</A>
+</nobr><br>
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.DEVICE_TYPE_SPEAKER" class="hiddenlink" target="rightframe">DEVICE_TYPE_SPEAKER</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.DEVICE_TYPE_TV" class="hiddenlink" target="rightframe">DEVICE_TYPE_TV</A>
+</nobr><br>
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_ENABLE_URLBAR_HIDING" class="hiddenlink" target="rightframe">EXTRA_ENABLE_URLBAR_HIDING</A>
+</nobr><br>
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_TINT_ACTION_BUTTON" class="hiddenlink" target="rightframe">EXTRA_TINT_ACTION_BUTTON</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.EXTRA_UI_STYLE" class="hiddenlink" target="rightframe">EXTRA_UI_STYLE</A>
+</nobr><br>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.imageButtonStyle" class="hiddenlink" target="rightframe">imageButtonStyle</A>
+</nobr><br>
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlUnderlay_Widget_AppCompat_ActionButton" class="hiddenlink" target="rightframe">RtlUnderlay_Widget_AppCompat_ActionButton</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlUnderlay_Widget_AppCompat_ActionButton_Overflow" class="hiddenlink" target="rightframe">RtlUnderlay_Widget_AppCompat_ActionButton_Overflow</A>
+</nobr><br>
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.AppBarLayout.LayoutParams.html#android.support.design.widget.AppBarLayout.LayoutParams.SCROLL_FLAG_SNAP" class="hiddenlink" target="rightframe">SCROLL_FLAG_SNAP</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_BOTTOM" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_BOTTOM</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_END" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_END</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_LEFT" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_LEFT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_RIGHT" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_RIGHT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_START" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_START</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_TOP" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_TOP</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.scrollIndicatorDown" class="hiddenlink" target="rightframe">scrollIndicatorDown</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.scrollIndicatorUp" class="hiddenlink" target="rightframe">scrollIndicatorUp</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.seekBarStyle" class="hiddenlink" target="rightframe">seekBarStyle</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.spacer" class="hiddenlink" target="rightframe">spacer</A>
+</nobr><br>
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.customtabs.CustomTabsCallback.html#android.support.customtabs.CustomTabsCallback.TAB_HIDDEN" class="hiddenlink" target="rightframe">TAB_HIDDEN</A>
+</nobr><br>
+<nobr><A HREF="android.support.customtabs.CustomTabsCallback.html#android.support.customtabs.CustomTabsCallback.TAB_SHOWN" class="hiddenlink" target="rightframe">TAB_SHOWN</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowColor" class="hiddenlink" target="rightframe">TextAppearance_android_shadowColor</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowDx" class="hiddenlink" target="rightframe">TextAppearance_android_shadowDx</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowDy" class="hiddenlink" target="rightframe">TextAppearance_android_shadowDy</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowRadius" class="hiddenlink" target="rightframe">TextAppearance_android_shadowRadius</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_imageButtonStyle" class="hiddenlink" target="rightframe">Theme_imageButtonStyle</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_seekBarStyle" class="hiddenlink" target="rightframe">Theme_seekBarStyle</A>
+</nobr><br>
+<A NAME="U"></A>
+<br><font size="+2">U</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_ACTIVITY_ROOT" class="hiddenlink" target="rightframe">UI_STYLE_ACTIVITY_ROOT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_DEFAULT" class="hiddenlink" target="rightframe">UI_STYLE_DEFAULT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_ENTRANCE" class="hiddenlink" target="rightframe">UI_STYLE_ENTRANCE</A>
+</nobr><br>
+<A NAME="W"></A>
+<br><font size="+2">W</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_ImageButton" class="hiddenlink" target="rightframe">Widget_AppCompat_ImageButton</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_SeekBar" class="hiddenlink" target="rightframe">Widget_AppCompat_SeekBar</A>
+</nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_all.html b/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_all.html
new file mode 100644
index 0000000..697f16a
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_all.html
@@ -0,0 +1,353 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Field Differences Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Fields" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<b>Fields</b>
+  <br>
+<A HREF="fields_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<A HREF="fields_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<font color="#999999">Changes</font>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.layout.html#android.support.v7.appcompat.R.layout.abc_alert_dialog_button_bar_material" class="hiddenlink" target="rightframe">abc_alert_dialog_button_bar_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.bool.html#android.support.v7.appcompat.R.bool.abc_allow_stacked_button_bar" class="hiddenlink" target="rightframe">abc_allow_stacked_button_bar</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_default_material" class="hiddenlink" target="rightframe">abc_btn_default_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.string.html#android.support.v7.appcompat.R.string.abc_capital_off" class="hiddenlink" target="rightframe">abc_capital_off</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.string.html#android.support.v7.appcompat.R.string.abc_capital_on" class="hiddenlink" target="rightframe">abc_capital_on</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_height_major" class="hiddenlink" target="rightframe">abc_dialog_fixed_height_major</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_height_minor" class="hiddenlink" target="rightframe">abc_dialog_fixed_height_minor</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_width_major" class="hiddenlink" target="rightframe">abc_dialog_fixed_width_major</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_dialog_fixed_width_minor" class="hiddenlink" target="rightframe">abc_dialog_fixed_width_minor</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_off_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_control_off_mtrl_alpha</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_to_pressed_mtrl_000" class="hiddenlink" target="rightframe">abc_scrubber_control_to_pressed_mtrl_000</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_control_to_pressed_mtrl_005" class="hiddenlink" target="rightframe">abc_scrubber_control_to_pressed_mtrl_005</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_primary_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_primary_mtrl_alpha</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_scrubber_track_mtrl_alpha" class="hiddenlink" target="rightframe">abc_scrubber_track_mtrl_alpha</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_seekbar_thumb_material" class="hiddenlink" target="rightframe">abc_seekbar_thumb_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_seekbar_track_background_height_material" class="hiddenlink" target="rightframe">abc_seekbar_track_background_height_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_seekbar_track_material" class="hiddenlink" target="rightframe">abc_seekbar_track_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_seekbar_track_progress_height_material" class="hiddenlink" target="rightframe">abc_seekbar_track_progress_height_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.abc_select_dialog_padding_start_material" class="hiddenlink" target="rightframe">abc_select_dialog_padding_start_material</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.allowStacking" class="hiddenlink" target="rightframe">allowStacking</A>
+</nobr><br>
+<nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html#android.support.percent.PercentLayoutHelper.PercentLayoutInfo.aspectRatio" class="hiddenlink" target="rightframe">aspectRatio</A>
+</nobr><br>
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_ImageButton" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_ImageButton</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_SeekBar" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_SeekBar</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.ButtonBarLayout_allowStacking" class="hiddenlink" target="rightframe">ButtonBarLayout_allowStacking</A>
+</nobr><br>
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_CONTENT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_CONTENT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_ICON_LEFT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_ICON_LEFT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_ICON_RIGHT" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_ICON_RIGHT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_IMAGE_ONLY" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_IMAGE_ONLY</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.CARD_TYPE_FLAG_TITLE" class="hiddenlink" target="rightframe">CARD_TYPE_FLAG_TITLE</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_CONNECTED" class="hiddenlink" target="rightframe">CONNECTION_STATE_CONNECTED</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_CONNECTING" class="hiddenlink" target="rightframe">CONNECTION_STATE_CONNECTING</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.CONNECTION_STATE_DISCONNECTED" class="hiddenlink" target="rightframe">CONNECTION_STATE_DISCONNECTED</A>
+</nobr><br>
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.DEVICE_TYPE_SPEAKER" class="hiddenlink" target="rightframe">DEVICE_TYPE_SPEAKER</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.DEVICE_TYPE_TV" class="hiddenlink" target="rightframe">DEVICE_TYPE_TV</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_height_major" class="hiddenlink" target="rightframe"><strike>dialog_fixed_height_major</strike></A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_height_minor" class="hiddenlink" target="rightframe"><strike>dialog_fixed_height_minor</strike></A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_width_major" class="hiddenlink" target="rightframe"><strike>dialog_fixed_width_major</strike></A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_width_minor" class="hiddenlink" target="rightframe"><strike>dialog_fixed_width_minor</strike></A>
+</nobr><br>
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_ENABLE_URLBAR_HIDING" class="hiddenlink" target="rightframe">EXTRA_ENABLE_URLBAR_HIDING</A>
+</nobr><br>
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_TINT_ACTION_BUTTON" class="hiddenlink" target="rightframe">EXTRA_TINT_ACTION_BUTTON</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.EXTRA_UI_STYLE" class="hiddenlink" target="rightframe">EXTRA_UI_STYLE</A>
+</nobr><br>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.imageButtonStyle" class="hiddenlink" target="rightframe">imageButtonStyle</A>
+</nobr><br>
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlOverlay_Widget_AppCompat_ActionButton_Overflow" class="hiddenlink" target="rightframe"><strike>RtlOverlay_Widget_AppCompat_ActionButton_Overflow</strike></A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlUnderlay_Widget_AppCompat_ActionButton" class="hiddenlink" target="rightframe">RtlUnderlay_Widget_AppCompat_ActionButton</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlUnderlay_Widget_AppCompat_ActionButton_Overflow" class="hiddenlink" target="rightframe">RtlUnderlay_Widget_AppCompat_ActionButton_Overflow</A>
+</nobr><br>
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.AppBarLayout.LayoutParams.html#android.support.design.widget.AppBarLayout.LayoutParams.SCROLL_FLAG_SNAP" class="hiddenlink" target="rightframe">SCROLL_FLAG_SNAP</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_BOTTOM" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_BOTTOM</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_END" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_END</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_LEFT" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_LEFT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_RIGHT" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_RIGHT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_START" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_START</A>
+</nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.SCROLL_INDICATOR_TOP" class="hiddenlink" target="rightframe">SCROLL_INDICATOR_TOP</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.scrollIndicatorDown" class="hiddenlink" target="rightframe">scrollIndicatorDown</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.scrollIndicatorUp" class="hiddenlink" target="rightframe">scrollIndicatorUp</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.seekBarStyle" class="hiddenlink" target="rightframe">seekBarStyle</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.id.html#android.support.v7.appcompat.R.id.spacer" class="hiddenlink" target="rightframe">spacer</A>
+</nobr><br>
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.customtabs.CustomTabsCallback.html#android.support.customtabs.CustomTabsCallback.TAB_HIDDEN" class="hiddenlink" target="rightframe">TAB_HIDDEN</A>
+</nobr><br>
+<nobr><A HREF="android.support.customtabs.CustomTabsCallback.html#android.support.customtabs.CustomTabsCallback.TAB_SHOWN" class="hiddenlink" target="rightframe">TAB_SHOWN</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowColor" class="hiddenlink" target="rightframe">TextAppearance_android_shadowColor</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowDx" class="hiddenlink" target="rightframe">TextAppearance_android_shadowDx</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowDy" class="hiddenlink" target="rightframe">TextAppearance_android_shadowDy</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.TextAppearance_android_shadowRadius" class="hiddenlink" target="rightframe">TextAppearance_android_shadowRadius</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_imageButtonStyle" class="hiddenlink" target="rightframe">Theme_imageButtonStyle</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_seekBarStyle" class="hiddenlink" target="rightframe">Theme_seekBarStyle</A>
+</nobr><br>
+<A NAME="U"></A>
+<br><font size="+2">U</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_ACTIVITY_ROOT" class="hiddenlink" target="rightframe">UI_STYLE_ACTIVITY_ROOT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_DEFAULT" class="hiddenlink" target="rightframe">UI_STYLE_DEFAULT</A>
+</nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_ENTRANCE" class="hiddenlink" target="rightframe">UI_STYLE_ENTRANCE</A>
+</nobr><br>
+<A NAME="W"></A>
+<br><font size="+2">W</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_ImageButton" class="hiddenlink" target="rightframe">Widget_AppCompat_ImageButton</A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_SeekBar" class="hiddenlink" target="rightframe">Widget_AppCompat_SeekBar</A>
+</nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_changes.html b/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_changes.html
new file mode 100644
index 0000000..0e2ccff
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_changes.html
@@ -0,0 +1,61 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Field Changes Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Fields" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="fields_index_all.html" class="staysblack">All Fields</a>
+  <br>
+<A HREF="fields_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<A HREF="fields_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<font color="#999999">Changes</font>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_removals.html b/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_removals.html
new file mode 100644
index 0000000..93bcdc3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/fields_index_removals.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Field Removals Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Fields" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="fields_index_all.html" class="staysblack">All Fields</a>
+  <br>
+<b>Removals</b>
+  <br>
+<A HREF="fields_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<font color="#999999">Changes</font>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#R"><font size="-2">R</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_height_major" class="hiddenlink" target="rightframe"><strike>dialog_fixed_height_major</strike></A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_height_minor" class="hiddenlink" target="rightframe"><strike>dialog_fixed_height_minor</strike></A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_width_major" class="hiddenlink" target="rightframe"><strike>dialog_fixed_width_major</strike></A>
+</nobr><br>
+<nobr><A HREF="android.support.v7.appcompat.R.dimen.html#android.support.v7.appcompat.R.dimen.dialog_fixed_width_minor" class="hiddenlink" target="rightframe"><strike>dialog_fixed_width_minor</strike></A>
+</nobr><br>
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#D"><font size="-2">D</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.RtlOverlay_Widget_AppCompat_ActionButton_Overflow" class="hiddenlink" target="rightframe"><strike>RtlOverlay_Widget_AppCompat_ActionButton_Overflow</strike></A>
+</nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/jdiff_help.html b/docs/html/sdk/support_api_diff/23.1.0/changes/jdiff_help.html
new file mode 100644
index 0000000..b03b763
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/jdiff_help.html
@@ -0,0 +1,134 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+JDiff Help
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<TABLE summary="Navigation bar" BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+  <TABLE summary="Navigation bar" BORDER="0" CELLPADDING="0" CELLSPACING="3">
+    <TR ALIGN="center" VALIGN="top">
+      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../reference/index.html" target="_top"><FONT CLASS="NavBarFont1"><B><code>23.1.0</code></B></FONT></A>&nbsp;</TD>
+      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="changes-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> &nbsp;<FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+      <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1"> &nbsp;<FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="jdiff_statistics.html"><FONT CLASS="NavBarFont1"><B>Statistics</B></FONT></A>&nbsp;</TD>
+      <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Help</B></FONT>&nbsp;</TD>
+    </TR>
+  </TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM><b>Generated by<br><a href="http://www.jdiff.org" class="staysblack" target="_top">JDiff</a></b></EM></TD>
+</TR>
+<TR>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell2"><FONT SIZE="-2"></FONT>
+</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../changes.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
+  &nbsp;<A HREF="jdiff_help.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
+</TR>
+</TABLE>
+<HR>
+<!-- End of nav bar -->
+<center>
+<H1>JDiff Documentation</H1>
+</center>
+<BLOCKQUOTE>
+JDiff is a <a href="http://java.sun.com/j2se/javadoc/" target="_top">Javadoc</a> doclet which generates a report of the API differences between two versions of a product. It does not report changes in Javadoc comments, or changes in what a class or method does. 
+This help page describes the different parts of the output from JDiff.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+ See the reference page in the <a href="http://www.jdiff.org">source for JDiff</a> for information about how to generate a report like this one.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+The indexes shown in the top-left frame help show each type of change in more detail. The index "All Differences" contains all the differences between the APIs, in alphabetical order. 
+These indexes all use the same format:
+<ul>
+<li>Removed packages, classes, constructors, methods and fields are <strike>struck through</strike>.</li>
+<li>Added packages, classes, constructors, methods and fields appear in <b>bold</b>.</li>
+<li>Changed packages, classes, constructors, methods and fields appear in normal text.</li>
+</ul>
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+You can always tell when you are reading a JDiff page, rather than a Javadoc page, by the color of the index bar and the color of the background. 
+Links which take you to a Javadoc page are always in a <code>typewriter</code> font. 
+Just like Javadoc, all interface names are in <i>italic</i>, and class names are not italicized. Where there are multiple entries in an index with the same name, the heading for them is also in italics, but is not a link.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+<H3><b><code>Javadoc</code></b></H3>
+This is a link to the <a href="../../../../reference/index.html" target="_top">top-level</a> Javadoc page for the new version of the product.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+<H3>Overview</H3>
+The <a href="changes-summary.html">overview</a> is the top-level summary of what was removed, added and changed between versions.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+<H3>Package</H3>
+This is a link to the package containing the current changed class or interface.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+<H3>Class</H3>
+This is highlighted when you are looking at the changed class or interface.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+<H3>Text Changes</H3>
+This is a link to the top-level index of all documentation changes for the current package or class. 
+If it is not present, then there are no documentation changes for the current package or class. 
+This link can be removed entirely by not using the <code>-docchanges</code> option.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+<H3>Statistics</H3>
+This is a link to a page which shows statistics about the changes between the two APIs.
+This link can be removed entirely by not using the <code>-stats</code> option.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+<H3>Help</H3>
+A link to this Help page for JDiff.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+<H3>Prev/Next</H3>
+These links take you to the previous  and next changed package or class.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+<H3>Frames/No Frames</H3>
+These links show and hide the HTML frames. All pages are available with or without frames.
+</BLOCKQUOTE>
+<BLOCKQUOTE>
+<H2>Complex Changes</H2>
+There are some complex changes which can occur between versions, for example, when two or more methods with the same name change simultaneously, or when a method or field is moved into or from a superclass. 
+In these cases, the change will be seen as a removal and an addition, rather than as a change. Unexpected removals or additions are often part of one of these type of changes. 
+</BLOCKQUOTE>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/jdiff_statistics.html b/docs/html/sdk/support_api_diff/23.1.0/changes/jdiff_statistics.html
new file mode 100644
index 0000000..bdda25f
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/jdiff_statistics.html
@@ -0,0 +1,581 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+API Change Statistics
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<body class="gc-documentation">
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;xborder-bottom:none;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="../changes.html" target="_top">Top of Report</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<h1>API&nbsp;Change&nbsp;Statistics</h1>
+<p>The overall difference between API Levels 23.0.0 and 23.1.0 is approximately <span style="color:222;font-weight:bold;">1.81%</span>.
+</p>
+<br>
+<a name="numbers"></a>
+<h2>Total of Differences, by Number and Type</h2>
+<p>
+The table below lists the numbers of program elements (packages, classes, constructors, methods, and fields) that were added, changed, or removed. The table includes only the highest-level program elements &mdash; that is, if a class with two methods was added, the number of methods added does not include those two methods, but the number of classes added does include that class.
+</p>
+<TABLE summary="Number of differences" WIDTH="100%">
+<TR>
+  <th>Type</th>
+  <TH ALIGN="center"><b>Additions</b></TH>
+  <TH ALIGN="center"><b>Changes</b></TH>
+  <TH ALIGN="center">Removals</TH>
+  <TH ALIGN="center"><b>Total</b></TH>
+</TR>
+<TR>
+  <TD>Packages</TD>
+  <TD ALIGN="right">0</TD>
+  <TD ALIGN="right">17</TD>
+  <TD ALIGN="right">0</TD>
+  <TD ALIGN="right">17</TD>
+</TR>
+<TR>
+  <TD>Classes and <i>Interfaces</i></TD>
+  <TD ALIGN="right">20</TD>
+  <TD ALIGN="right">64</TD>
+  <TD ALIGN="right">0</TD>
+  <TD ALIGN="right">84</TD>
+</TR>
+<TR>
+  <TD>Constructors</TD>
+  <TD ALIGN="right">5</TD>
+  <TD ALIGN="right">0</TD>
+  <TD ALIGN="right">3</TD>
+  <TD ALIGN="right">8</TD>
+</TR>
+<TR>
+  <TD>Methods</TD>
+  <TD ALIGN="right">117</TD>
+  <TD ALIGN="right">6</TD>
+  <TD ALIGN="right">28</TD>
+  <TD ALIGN="right">151</TD>
+</TR>
+<TR>
+  <TD>Fields</TD>
+  <TD ALIGN="right">64</TD>
+  <TD ALIGN="right">0</TD>
+  <TD ALIGN="right">5</TD>
+  <TD ALIGN="right">69</TD>
+</TR>
+<TR>
+  <TD style="background-color:#FAFAFA"><b>Total</b></TD>
+  <TD  style="background-color:#FAFAFA" ALIGN="right"><strong>206</strong></TD>
+  <TD  style="background-color:#FAFAFA" ALIGN="right"><strong>87</strong></TD>
+  <TD  style="background-color:#FAFAFA" ALIGN="right"><strong>36</strong></TD>
+  <TD  style="background-color:#FAFAFA" ALIGN="right"><strong>329</strong></TD>
+</TR>
+</TABLE>
+<br>
+<a name="packages"></a>
+<h2>Changed Packages, Sorted by Percentage Difference</h2>
+<TABLE summary="Packages sorted by percentage difference" WIDTH="100%">
+<TR>
+  <TH  WIDTH="10%">Percentage Difference*</TH>
+  <TH>Package</TH>
+</TR>
+<TR>
+  <TD ALIGN="center">25</TD>
+  <TD><A HREF="pkg_android.support.v4.content.res.html">android.support.v4.content.res</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">12</TD>
+  <TD><A HREF="pkg_android.support.customtabs.html">android.support.customtabs</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">12</TD>
+  <TD><A HREF="pkg_android.support.design.widget.html">android.support.design.widget</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">9</TD>
+  <TD><A HREF="pkg_android.support.v17.leanback.app.html">android.support.v17.leanback.app</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">5</TD>
+  <TD><A HREF="pkg_android.support.v17.leanback.widget.html">android.support.v17.leanback.widget</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">3</TD>
+  <TD><A HREF="pkg_android.support.v4.media.session.html">android.support.v4.media.session</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">3</TD>
+  <TD><A HREF="pkg_android.support.v7.media.html">android.support.v7.media</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">3</TD>
+  <TD><A HREF="pkg_android.support.v4.content.html">android.support.v4.content</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">2</TD>
+  <TD><A HREF="pkg_android.support.v4.widget.html">android.support.v4.widget</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">2</TD>
+  <TD><A HREF="pkg_android.support.v7.appcompat.html">android.support.v7.appcompat</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">2</TD>
+  <TD><A HREF="pkg_android.support.v7.graphics.html">android.support.v7.graphics</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">1</TD>
+  <TD><A HREF="pkg_android.support.v7.graphics.drawable.html">android.support.v7.graphics.drawable</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">1</TD>
+  <TD><A HREF="pkg_android.support.v14.preference.html">android.support.v14.preference</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">&lt;1</TD>
+  <TD><A HREF="pkg_android.support.v4.app.html">android.support.v4.app</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">&lt;1</TD>
+  <TD><A HREF="pkg_android.support.v7.preference.html">android.support.v7.preference</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">&lt;1</TD>
+  <TD><A HREF="pkg_android.support.percent.html">android.support.percent</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">&lt;1</TD>
+  <TD><A HREF="pkg_android.support.v4.view.html">android.support.v4.view</A></TD>
+</TR>
+</TABLE>
+<p style="font-size:10px">* See <a href="#calculation">Calculation of Change Percentages</a>, below.</p>
+<br>
+<a name="classes"></a>
+<h2>Changed Classes and <i>Interfaces</i>, Sorted by Percentage Difference</h2>
+<TABLE summary="Classes sorted by percentage difference" WIDTH="100%">
+<TR WIDTH="20%">
+  <TH WIDTH="10%">Percentage<br>Difference*</TH>
+  <TH><b>Class or <i>Interface</i></b></TH>
+</TR>
+<TR>
+  <TD ALIGN="center">100</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html">
+<i>android.support.v17.leanback.widget.FragmentAnimationProvider</i></A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">36</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html">
+android.support.v17.leanback.widget.GuidanceStylist</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">33</TD>
+  <TD><A HREF="android.support.customtabs.CustomTabsSession.html">
+android.support.customtabs.CustomTabsSession</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">33</TD>
+  <TD><A HREF="android.support.customtabs.CustomTabsSessionToken.html">
+android.support.customtabs.CustomTabsSessionToken</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">33</TD>
+  <TD><A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html">
+android.support.design.widget.AppBarLayout.Behavior.SavedState</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">33</TD>
+  <TD><A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html">
+android.support.design.widget.CoordinatorLayout.SavedState</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">29</TD>
+  <TD><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html">
+android.support.v17.leanback.app.GuidedStepFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">25</TD>
+  <TD><A HREF="android.support.design.widget.NavigationView.SavedState.html">
+android.support.design.widget.NavigationView.SavedState</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">25</TD>
+  <TD><A HREF="android.support.v4.content.res.ResourcesCompat.html">
+android.support.v4.content.res.ResourcesCompat</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">25</TD>
+  <TD><A HREF="android.support.v4.widget.TextViewCompat.html">
+android.support.v4.widget.TextViewCompat</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">23</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html">
+android.support.v17.leanback.widget.GuidedActionsStylist</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">21</TD>
+  <TD><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html">
+android.support.v17.leanback.app.VerticalGridFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">21</TD>
+  <TD><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html">
+android.support.v17.leanback.app.VerticalGridSupportFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">18</TD>
+  <TD><A HREF="android.support.v17.leanback.app.DetailsFragment.html">
+android.support.v17.leanback.app.DetailsFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">18</TD>
+  <TD><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html">
+android.support.v17.leanback.app.DetailsSupportFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">17</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.GuidedAction.html">
+android.support.v17.leanback.widget.GuidedAction</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">14</TD>
+  <TD><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html">
+android.support.design.widget.AppBarLayout.ScrollingViewBehavior</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">14</TD>
+  <TD><A HREF="android.support.design.widget.FloatingActionButton.html">
+android.support.design.widget.FloatingActionButton</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">14</TD>
+  <TD><A HREF="android.support.v14.preference.EditTextPreferenceDialogFragment.html">
+android.support.v14.preference.EditTextPreferenceDialogFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">14</TD>
+  <TD><A HREF="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html">
+android.support.v7.preference.EditTextPreferenceDialogFragmentCompat</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">13</TD>
+  <TD><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html">
+android.support.v7.media.MediaRouteDescriptor.Builder</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">13</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.ImageCardView.html">
+android.support.v17.leanback.widget.ImageCardView</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">13</TD>
+  <TD><A HREF="android.support.design.widget.AppBarLayout.Behavior.html">
+android.support.design.widget.AppBarLayout.Behavior</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">12</TD>
+  <TD><A HREF="android.support.customtabs.CustomTabsCallback.html">
+android.support.customtabs.CustomTabsCallback</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">12</TD>
+  <TD><A HREF="android.support.design.widget.TextInputLayout.html">
+android.support.design.widget.TextInputLayout</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">12</TD>
+  <TD><A HREF="android.support.v7.media.MediaRouteDescriptor.html">
+android.support.v7.media.MediaRouteDescriptor</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">12</TD>
+  <TD><A HREF="android.support.v17.leanback.app.BrowseFragment.html">
+android.support.v17.leanback.app.BrowseFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">12</TD>
+  <TD><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html">
+android.support.v17.leanback.app.BrowseSupportFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">11</TD>
+  <TD><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html">
+android.support.v7.media.MediaRouter.RouteInfo</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">11</TD>
+  <TD><A HREF="android.support.design.widget.CollapsingToolbarLayout.html">
+android.support.design.widget.CollapsingToolbarLayout</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">11</TD>
+  <TD><A HREF="android.support.design.widget.FloatingActionButton.Behavior.html">
+android.support.design.widget.FloatingActionButton.Behavior</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">11</TD>
+  <TD><A HREF="android.support.v7.graphics.Palette.Builder.html">
+android.support.v7.graphics.Palette.Builder</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">9</TD>
+  <TD><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html">
+android.support.customtabs.CustomTabsIntent.Builder</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">8</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html">
+android.support.v17.leanback.widget.VerticalGridPresenter</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">7</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html">
+android.support.v17.leanback.widget.ShadowOverlayContainer</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">7</TD>
+  <TD><A HREF="android.support.v7.appcompat.R.dimen.html">
+android.support.v7.appcompat.R.dimen</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">7</TD>
+  <TD><A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html">
+android.support.v17.leanback.app.PlaybackOverlayFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">7</TD>
+  <TD><A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html">
+android.support.v17.leanback.app.PlaybackOverlaySupportFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">6</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html">
+android.support.v17.leanback.widget.GuidedAction.Builder</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">6</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html">
+android.support.v17.leanback.widget.ListRowPresenter</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">5</TD>
+  <TD><A HREF="android.support.customtabs.CustomTabsIntent.html">
+android.support.customtabs.CustomTabsIntent</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">5</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html">
+android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">5</TD>
+  <TD><A HREF="android.support.v4.app.FragmentActivity.html">
+android.support.v4.app.FragmentActivity</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">5</TD>
+  <TD><A HREF="android.support.v7.appcompat.R.bool.html">
+android.support.v7.appcompat.R.bool</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">5</TD>
+  <TD><A HREF="android.support.v7.appcompat.R.drawable.html">
+android.support.v7.appcompat.R.drawable</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">5</TD>
+  <TD><A HREF="android.support.customtabs.CustomTabsService.html">
+android.support.customtabs.CustomTabsService</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">5</TD>
+  <TD><A HREF="android.support.v7.appcompat.R.string.html">
+android.support.v7.appcompat.R.string</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">3</TD>
+  <TD><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html">
+android.support.percent.PercentLayoutHelper.PercentLayoutInfo</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">3</TD>
+  <TD><A HREF="android.support.v4.view.ViewCompat.html">
+android.support.v4.view.ViewCompat</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">3</TD>
+  <TD><A HREF="android.support.design.widget.AppBarLayout.LayoutParams.html">
+android.support.design.widget.AppBarLayout.LayoutParams</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">3</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.SearchBar.html">
+android.support.v17.leanback.widget.SearchBar</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">2</TD>
+  <TD><A HREF="android.support.v17.leanback.app.SearchFragment.html">
+android.support.v17.leanback.app.SearchFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">2</TD>
+  <TD><A HREF="android.support.v17.leanback.app.SearchSupportFragment.html">
+android.support.v17.leanback.app.SearchSupportFragment</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">2</TD>
+  <TD><A HREF="android.support.v4.widget.NestedScrollView.html">
+android.support.v4.widget.NestedScrollView</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">2</TD>
+  <TD><A HREF="android.support.v4.widget.ScrollerCompat.html">
+android.support.v4.widget.ScrollerCompat</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">2</TD>
+  <TD><A HREF="android.support.design.widget.Snackbar.html">
+android.support.design.widget.Snackbar</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">1</TD>
+  <TD><A HREF="android.support.v4.media.session.MediaSessionCompat.html">
+android.support.v4.media.session.MediaSessionCompat</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">1</TD>
+  <TD><A HREF="android.support.v7.graphics.drawable.DrawerArrowDrawable.html">
+android.support.v7.graphics.drawable.DrawerArrowDrawable</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">1</TD>
+  <TD><A HREF="android.support.v7.appcompat.R.id.html">
+android.support.v7.appcompat.R.id</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">1</TD>
+  <TD><A HREF="android.support.v17.leanback.widget.RowPresenter.html">
+android.support.v17.leanback.widget.RowPresenter</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">1</TD>
+  <TD><A HREF="android.support.v7.appcompat.R.layout.html">
+android.support.v7.appcompat.R.layout</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">1</TD>
+  <TD><A HREF="android.support.v7.appcompat.R.style.html">
+android.support.v7.appcompat.R.style</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">1</TD>
+  <TD><A HREF="android.support.v7.appcompat.R.styleable.html">
+android.support.v7.appcompat.R.styleable</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">&lt;1</TD>
+  <TD><A HREF="android.support.v7.appcompat.R.attr.html">
+android.support.v7.appcompat.R.attr</A></TD>
+</TR>
+</TABLE>
+<p style="font-size:10px">* See <a href="#calculation">Calculation of Change Percentages</a>, below.</p>
+<br>
+<h2 id="calculation">Calculation of Change Percentages</h2>
+<p>
+The percent change statistic reported for all elements in the &quot;to&quot; API Level specification is defined recursively as follows:</p>
+<pre>
+Percentage difference = 100 * (added + removed + 2*changed)
+                        -----------------------------------
+                        sum of public elements in BOTH APIs
+</pre>
+<p>where <code>added</code> is the number of packages added, <code>removed</code> is the number of packages removed, and <code>changed</code> is the number of packages changed.
+This definition is applied recursively for the classes and their program elements, so the value for a changed package will be less than 1, unless every class in that package has changed.
+The definition ensures that if all packages are removed and all new packages are
+added, the change will be 100%.</p>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY></HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/jdiff_topleftframe.html b/docs/html/sdk/support_api_diff/23.1.0/changes/jdiff_topleftframe.html
new file mode 100644
index 0000000..36f9836
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/jdiff_topleftframe.html
@@ -0,0 +1,63 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Android API Version Differences
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<table class="jdiffIndex" summary="Links to diff index files" BORDER="0" WIDTH="100%" cellspacing="0" cellpadding="0" style="margin:0">
+<TR>
+  <th class="indexHeader" nowrap>
+  Select a Diffs Index:</th>
+</TR>
+<TR>
+  <TD><FONT CLASS="indexText" size="-2"><A HREF="alldiffs_index_all.html" TARGET="bottomleftframe">All Differences</A></FONT><br></TD>
+</TR>
+<TR>
+  <TD NOWRAP><FONT CLASS="indexText" size="-2"><A HREF="packages_index_all.html" TARGET="bottomleftframe">By Package</A></FONT><br></TD>
+</TR>
+<TR>
+  <TD NOWRAP><FONT CLASS="indexText" size="-2"><A HREF="classes_index_all.html" TARGET="bottomleftframe">By Class</A></FONT><br></TD>
+</TR>
+<TR>
+  <TD NOWRAP><FONT CLASS="indexText" size="-2"><A HREF="constructors_index_all.html" TARGET="bottomleftframe">By Constructor</A></FONT><br></TD>
+</TR>
+<TR>
+  <TD NOWRAP><FONT CLASS="indexText" size="-2"><A HREF="methods_index_all.html" TARGET="bottomleftframe">By Method</A></FONT><br></TD>
+</TR>
+<TR>
+  <TD NOWRAP><FONT CLASS="indexText" size="-2"><A HREF="fields_index_all.html" TARGET="bottomleftframe">By Field</A></FONT><br></TD>
+</TR>
+</TABLE>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_additions.html b/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_additions.html
new file mode 100644
index 0000000..9b4eab3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_additions.html
@@ -0,0 +1,530 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Method Additions Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Methods" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="methods_index_all.html" class="staysblack">All Methods</a>
+  <br>
+<A HREF="methods_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<b>Additions</b>
+  <br>
+<A HREF="methods_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.add_added(android.app.FragmentManager, android.support.v17.leanback.app.GuidedStepFragment, int)" class="hiddenlink" target="rightframe"><b>add</b>
+(<code>FragmentManager, GuidedStepFragment, int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.addAsRoot_added(android.app.Activity, android.support.v17.leanback.app.GuidedStepFragment, int)" class="hiddenlink" target="rightframe"><b>addAsRoot</b>
+(<code>Activity, GuidedStepFragment, int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberId_added(java.lang.String)" class="hiddenlink" target="rightframe"><b>addGroupMemberId</b>
+(<code>String</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberIds_added(java.util.Collection<java.lang.String>)" class="hiddenlink" target="rightframe"><b>addGroupMemberIds</b>
+(<code>Collection&lt;String&gt;</code>)</A></nobr><br>
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.clearRegion_added()" class="hiddenlink" target="rightframe"><b>clearRegion</b>
+()</A></nobr><br>
+<i>createEntranceTransition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<i>createShadowOverlayOptions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.createShadowOverlayOptions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.ListRowPresenter
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.createShadowOverlayOptions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.VerticalGridPresenter
+</A></nobr><br>
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>displayCompletions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.SearchFragment.html#android.support.v17.leanback.app.SearchFragment.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.SearchFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.SearchSupportFragment.html#android.support.v17.leanback.app.SearchSupportFragment.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.SearchSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.SearchBar.html#android.support.v17.leanback.widget.SearchBar.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.SearchBar
+</A></nobr><br>
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editable_added(boolean)" class="hiddenlink" target="rightframe"><b>editable</b>
+(<code>boolean</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editTitle_added(java.lang.String)" class="hiddenlink" target="rightframe"><b>editTitle</b>
+(<code>String</code>)</A></nobr><br>
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.enableUrlBarHiding_added()" class="hiddenlink" target="rightframe"><b>enableUrlBarHiding</b>
+()</A></nobr><br>
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getCollapsedTitleTypeface_added()" class="hiddenlink" target="rightframe"><b>getCollapsedTitleTypeface</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColor_added(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>getColor</b>
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColorStateList_added(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>getColorStateList</b>
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<i>getConnectionState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getConnectionState_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getConnectionState_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getContainerIdForBackground_added()" class="hiddenlink" target="rightframe"><b>getContainerIdForBackground</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.getCounterMaxLength_added()" class="hiddenlink" target="rightframe"><b>getCounterMaxLength</b>
+()</A></nobr><br>
+<i>getDeviceType</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getDeviceType_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getDeviceType_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditableTitleView_added()" class="hiddenlink" target="rightframe"><b>getEditableTitleView</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getEditTitle_added()" class="hiddenlink" target="rightframe"><b>getEditTitle</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleTypeface_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleTypeface</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getGroupMemberIds_added()" class="hiddenlink" target="rightframe"><b>getGroupMemberIds</b>
+()</A></nobr><br>
+<i>getIconUri</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getIconUri_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getIconUri_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.getKeepChildForeground_added()" class="hiddenlink" target="rightframe"><b>getKeepChildForeground</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v4.widget.TextViewCompat.html#android.support.v4.widget.TextViewCompat.getMaxLines_added(android.widget.TextView)" class="hiddenlink" target="rightframe"><b>getMaxLines</b>
+(<code>TextView</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v4.widget.TextViewCompat.html#android.support.v4.widget.TextViewCompat.getMinLines_added(android.widget.TextView)" class="hiddenlink" target="rightframe"><b>getMinLines</b>
+(<code>TextView</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.graphics.drawable.DrawerArrowDrawable.html#android.support.v7.graphics.drawable.DrawerArrowDrawable.getPaint_added()" class="hiddenlink" target="rightframe"><b>getPaint</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.getScrollIndicators_added(android.view.View)" class="hiddenlink" target="rightframe"><b>getScrollIndicators</b>
+(<code>View</code>)</A></nobr><br>
+<nobr><A HREF="android.support.customtabs.CustomTabsSessionToken.html#android.support.customtabs.CustomTabsSessionToken.getSessionTokenFromIntent_added(android.content.Intent)" class="hiddenlink" target="rightframe"><b>getSessionTokenFromIntent</b>
+(<code>Intent</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v4.app.FragmentActivity.html#android.support.v4.app.FragmentActivity.getSupportMediaController_added()" class="hiddenlink" target="rightframe"><b>getSupportMediaController</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.getTypeface_added()" class="hiddenlink" target="rightframe"><b>getTypeface</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getUiStyle_added()" class="hiddenlink" target="rightframe"><b>getUiStyle</b>
+()</A></nobr><br>
+<A NAME="H"></A>
+<br><font size="+2">H</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.hasOnClickListeners_added(android.view.View)" class="hiddenlink" target="rightframe"><b>hasOnClickListeners</b>
+(<code>View</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.hide_added(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)" class="hiddenlink" target="rightframe"><b>hide</b>
+(<code>OnVisibilityChangedListener</code>)</A></nobr><br>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isEditable_added()" class="hiddenlink" target="rightframe"><b>isEditable</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isEditTitleUsed_added()" class="hiddenlink" target="rightframe"><b>isEditTitleUsed</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.isKeepChildForeground_added()" class="hiddenlink" target="rightframe"><b>isKeepChildForeground</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.Snackbar.html#android.support.design.widget.Snackbar.isShownOrQueued_added()" class="hiddenlink" target="rightframe"><b>isShownOrQueued</b>
+()</A></nobr><br>
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>onDestroyView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html#android.support.v17.leanback.app.PlaybackOverlayFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlayFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html#android.support.v17.leanback.app.PlaybackOverlaySupportFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlaySupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<i>onEntranceTransitionEnd</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<i>onEntranceTransitionPrepare</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<i>onEntranceTransitionStart</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onGuidedActionEdited_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onGuidedActionEdited</b>
+(<code>GuidedAction</code>)</A></nobr><br>
+<i>onImeAppearing</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onImeDisappearing</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onLayoutChild_added(android.support.design.widget.CoordinatorLayout, android.view.View, int)" class="hiddenlink" target="rightframe"><b>onLayoutChild</b>
+(<code>CoordinatorLayout, View, int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onProvideBackgroundFragment_added()" class="hiddenlink" target="rightframe"><b>onProvideBackgroundFragment</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onProvideFragmentTransitions_added()" class="hiddenlink" target="rightframe"><b>onProvideFragmentTransitions</b>
+()</A></nobr><br>
+<i>onResume</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html#android.support.v17.leanback.app.PlaybackOverlayFragment.onResume_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlayFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html#android.support.v17.leanback.app.PlaybackOverlaySupportFragment.onResume_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlaySupportFragment
+</A></nobr><br>
+<i>onSaveInstanceState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onSaveInstanceState_added(android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onSaveInstanceState_added(android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<i>onStart</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onViewCreated_added(android.view.View, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>onViewCreated</b>
+(<code>View, Bundle</code>)</A></nobr><br>
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>runEntranceTransition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>setActionButton</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.setActionButton_added(android.graphics.Bitmap, java.lang.String, android.app.PendingIntent, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bitmap, String, PendingIntent, boolean</code>)</b>&nbsp;in&nbsp;android.support.customtabs.CustomTabsIntent.Builder
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.customtabs.CustomTabsSession.html#android.support.customtabs.CustomTabsSession.setActionButton_added(android.graphics.Bitmap, java.lang.String)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bitmap, String</code>)</b>&nbsp;in&nbsp;android.support.customtabs.CustomTabsSession
+</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setCollapsedTitleTypeface_added(android.graphics.Typeface)" class="hiddenlink" target="rightframe"><b>setCollapsedTitleTypeface</b>
+(<code>Typeface</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setConnectionState_added(int)" class="hiddenlink" target="rightframe"><b>setConnectionState</b>
+(<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.setCounterEnabled_added(boolean)" class="hiddenlink" target="rightframe"><b>setCounterEnabled</b>
+(<code>boolean</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.setCounterMaxLength_added(int)" class="hiddenlink" target="rightframe"><b>setCounterMaxLength</b>
+(<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setDescription_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setDescription</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setDeviceType_added(int)" class="hiddenlink" target="rightframe"><b>setDeviceType</b>
+(<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.setDragCallback_added(android.support.design.widget.AppBarLayout.Behavior.DragCallback)" class="hiddenlink" target="rightframe"><b>setDragCallback</b>
+(<code>DragCallback</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setEditTitle_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setEditTitle</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.setEntranceTransitionState_added(android.support.v17.leanback.widget.VerticalGridPresenter.ViewHolder, boolean)" class="hiddenlink" target="rightframe"><b>setEntranceTransitionState</b>
+(<code>ViewHolder, boolean</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleTypeface_added(android.graphics.Typeface)" class="hiddenlink" target="rightframe"><b>setExpandedTitleTypeface</b>
+(<code>Typeface</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setIconUri_added(android.net.Uri)" class="hiddenlink" target="rightframe"><b>setIconUri</b>
+(<code>Uri</code>)</A></nobr><br>
+<i>setKeepChildForeground</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.setKeepChildForeground_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.ListRowPresenter
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.setKeepChildForeground_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.VerticalGridPresenter
+</A></nobr><br>
+<nobr><A HREF="android.support.v4.widget.NestedScrollView.html#android.support.v4.widget.NestedScrollView.setOnScrollChangeListener_added(android.support.v4.widget.NestedScrollView.OnScrollChangeListener)" class="hiddenlink" target="rightframe"><b>setOnScrollChangeListener</b>
+(<code>OnScrollChangeListener</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.setRegion_added(int, int, int, int)" class="hiddenlink" target="rightframe"><b>setRegion</b>
+(<code>int, int, int, int</code>)</A></nobr><br>
+<i>setScrimsShown</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setScrimsShown_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.design.widget.CollapsingToolbarLayout
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setScrimsShown_added(boolean, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean, boolean</code>)</b>&nbsp;in&nbsp;android.support.design.widget.CollapsingToolbarLayout
+</A></nobr><br>
+<i>setScrollIndicators</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.setScrollIndicators_added(android.view.View, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, int</code>)</b>&nbsp;in&nbsp;android.support.v4.view.ViewCompat
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.setScrollIndicators_added(android.view.View, int, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, int, int</code>)</b>&nbsp;in&nbsp;android.support.v4.view.ViewCompat
+</A></nobr><br>
+<nobr><A HREF="android.support.v4.app.FragmentActivity.html#android.support.v4.app.FragmentActivity.setSupportMediaController_added(android.support.v4.media.session.MediaControllerCompat)" class="hiddenlink" target="rightframe"><b>setSupportMediaController</b>
+(<code>MediaControllerCompat</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setTitle_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setTitle</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setUiStyle_added(int)" class="hiddenlink" target="rightframe"><b>setUiStyle</b>
+(<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.show_added(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)" class="hiddenlink" target="rightframe"><b>show</b>
+(<code>OnVisibilityChangedListener</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v4.widget.ScrollerCompat.html#android.support.v4.widget.ScrollerCompat.springBack_added(int, int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>springBack</b>
+(<code>int, int, int, int, int, int</code>)</A></nobr><br>
+<A NAME="U"></A>
+<br><font size="+2">U</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.customtabs.CustomTabsService.html#android.support.customtabs.CustomTabsService.updateVisuals_added(android.support.customtabs.CustomTabsSessionToken, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>updateVisuals</b>
+(<code>CustomTabsSessionToken, Bundle</code>)</A></nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_all.html b/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_all.html
new file mode 100644
index 0000000..d63656c
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_all.html
@@ -0,0 +1,630 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Method Differences Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Methods" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<b>Methods</b>
+  <br>
+<A HREF="methods_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<A HREF="methods_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<A HREF="methods_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.add_added(android.app.FragmentManager, android.support.v17.leanback.app.GuidedStepFragment, int)" class="hiddenlink" target="rightframe"><b>add</b>
+(<code>FragmentManager, GuidedStepFragment, int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.addAsRoot_added(android.app.Activity, android.support.v17.leanback.app.GuidedStepFragment, int)" class="hiddenlink" target="rightframe"><b>addAsRoot</b>
+(<code>Activity, GuidedStepFragment, int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberId_added(java.lang.String)" class="hiddenlink" target="rightframe"><b>addGroupMemberId</b>
+(<code>String</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberIds_added(java.util.Collection<java.lang.String>)" class="hiddenlink" target="rightframe"><b>addGroupMemberIds</b>
+(<code>Collection&lt;String&gt;</code>)</A></nobr><br>
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.RowPresenter.html#android.support.v17.leanback.widget.RowPresenter.canDrawOutOfBounds_removed()" class="hiddenlink" target="rightframe"><strike>canDrawOutOfBounds</strike>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.clearRegion_added()" class="hiddenlink" target="rightframe"><b>clearRegion</b>
+()</A></nobr><br>
+<i>createEntranceTransition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.createEntranceTransition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<i>createShadowOverlayOptions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.createShadowOverlayOptions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.ListRowPresenter
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.createShadowOverlayOptions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.VerticalGridPresenter
+</A></nobr><br>
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>displayCompletions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.SearchFragment.html#android.support.v17.leanback.app.SearchFragment.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.SearchFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.SearchSupportFragment.html#android.support.v17.leanback.app.SearchSupportFragment.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.SearchSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.SearchBar.html#android.support.v17.leanback.widget.SearchBar.displayCompletions_added(android.view.inputmethod.CompletionInfo[])" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CompletionInfo[]</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.SearchBar
+</A></nobr><br>
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editable_added(boolean)" class="hiddenlink" target="rightframe"><b>editable</b>
+(<code>boolean</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editTitle_added(java.lang.String)" class="hiddenlink" target="rightframe"><b>editTitle</b>
+(<code>String</code>)</A></nobr><br>
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.enableUrlBarHiding_added()" class="hiddenlink" target="rightframe"><b>enableUrlBarHiding</b>
+()</A></nobr><br>
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getCollapsedTitleTypeface_added()" class="hiddenlink" target="rightframe"><b>getCollapsedTitleTypeface</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColor_added(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>getColor</b>
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColorStateList_added(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>getColorStateList</b>
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<i>getConnectionState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getConnectionState_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getConnectionState_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getContainerIdForBackground_added()" class="hiddenlink" target="rightframe"><b>getContainerIdForBackground</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.getCounterMaxLength_added()" class="hiddenlink" target="rightframe"><b>getCounterMaxLength</b>
+()</A></nobr><br>
+<i>getDeviceType</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getDeviceType_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getDeviceType_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditableTitleView_added()" class="hiddenlink" target="rightframe"><b>getEditableTitleView</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getEditTitle_added()" class="hiddenlink" target="rightframe"><b>getEditTitle</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleTypeface_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleTypeface</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getGroupMemberIds_added()" class="hiddenlink" target="rightframe"><b>getGroupMemberIds</b>
+()</A></nobr><br>
+<i>getIconUri</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getIconUri_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouteDescriptor
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html#android.support.v7.media.MediaRouter.RouteInfo.getIconUri_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v7.media.MediaRouter.RouteInfo
+</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.getKeepChildForeground_added()" class="hiddenlink" target="rightframe"><b>getKeepChildForeground</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v4.widget.TextViewCompat.html#android.support.v4.widget.TextViewCompat.getMaxLines_added(android.widget.TextView)" class="hiddenlink" target="rightframe"><b>getMaxLines</b>
+(<code>TextView</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v4.widget.TextViewCompat.html#android.support.v4.widget.TextViewCompat.getMinLines_added(android.widget.TextView)" class="hiddenlink" target="rightframe"><b>getMinLines</b>
+(<code>TextView</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.graphics.drawable.DrawerArrowDrawable.html#android.support.v7.graphics.drawable.DrawerArrowDrawable.getPaint_added()" class="hiddenlink" target="rightframe"><b>getPaint</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.getScrollIndicators_added(android.view.View)" class="hiddenlink" target="rightframe"><b>getScrollIndicators</b>
+(<code>View</code>)</A></nobr><br>
+<nobr><A HREF="android.support.customtabs.CustomTabsSessionToken.html#android.support.customtabs.CustomTabsSessionToken.getSessionTokenFromIntent_added(android.content.Intent)" class="hiddenlink" target="rightframe"><b>getSessionTokenFromIntent</b>
+(<code>Intent</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v4.app.FragmentActivity.html#android.support.v4.app.FragmentActivity.getSupportMediaController_added()" class="hiddenlink" target="rightframe"><b>getSupportMediaController</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.getTypeface_added()" class="hiddenlink" target="rightframe"><b>getTypeface</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getUiStyle_added()" class="hiddenlink" target="rightframe"><b>getUiStyle</b>
+()</A></nobr><br>
+<A NAME="H"></A>
+<br><font size="+2">H</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.hasOnClickListeners_added(android.view.View)" class="hiddenlink" target="rightframe"><b>hasOnClickListeners</b>
+(<code>View</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.hide_added(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)" class="hiddenlink" target="rightframe"><b>hide</b>
+(<code>OnVisibilityChangedListener</code>)</A></nobr><br>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html#android.support.v17.leanback.widget.ShadowOverlayContainer.initialize_changed(boolean, boolean, boolean)" class="hiddenlink" target="rightframe">initialize
+(<code>boolean, boolean, boolean</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.isConnecting_changed()" class="hiddenlink" target="rightframe">isConnecting
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isEditable_added()" class="hiddenlink" target="rightframe"><b>isEditable</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isEditTitleUsed_added()" class="hiddenlink" target="rightframe"><b>isEditTitleUsed</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.isEntryTransitionEnabled_removed()" class="hiddenlink" target="rightframe"><strike>isEntryTransitionEnabled</strike>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.isKeepChildForeground_added()" class="hiddenlink" target="rightframe"><b>isKeepChildForeground</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.Snackbar.html#android.support.design.widget.Snackbar.isShownOrQueued_added()" class="hiddenlink" target="rightframe"><b>isShownOrQueued</b>
+()</A></nobr><br>
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>onActivityEnter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onActivityExit</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onAddEditTextToDialogView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v14.preference.EditTextPreferenceDialogFragment.html#android.support.v14.preference.EditTextPreferenceDialogFragment.onAddEditTextToDialogView_removed(android.view.View, android.widget.EditText)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>View, EditText</code>)</strike>&nbsp;in&nbsp;android.support.v14.preference.EditTextPreferenceDialogFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html#android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.onAddEditTextToDialogView_removed(android.view.View, android.widget.EditText)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>View, EditText</code>)</strike>&nbsp;in&nbsp;android.support.v7.preference.EditTextPreferenceDialogFragmentCompat
+</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.Behavior.html#android.support.design.widget.FloatingActionButton.Behavior.onDependentViewRemoved_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.FloatingActionButton, android.view.View)" class="hiddenlink" target="rightframe"><strike>onDependentViewRemoved</strike>
+(<code>CoordinatorLayout, FloatingActionButton, View</code>)</A></nobr><br>
+<i>onDestroyView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html#android.support.v17.leanback.app.PlaybackOverlayFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlayFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html#android.support.v17.leanback.app.PlaybackOverlaySupportFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlaySupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onDestroyView_changed()" class="hiddenlink" target="rightframe">type&nbsp;
+()&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<i>onEntranceTransitionEnd</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionEnd_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<i>onEntranceTransitionPrepare</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionPrepare_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<i>onEntranceTransitionStart</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onEntranceTransitionStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<i>onFragmentEnter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onFragmentExit</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onFragmentReenter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onFragmentReturn</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onGuidedActionEdited_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onGuidedActionEdited</b>
+(<code>GuidedAction</code>)</A></nobr><br>
+<i>onImeAppearing</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onImeAppearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onImeDisappearing</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onImeDisappearing_added(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;Animator&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.onInterceptTouchEvent_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.AppBarLayout, android.view.MotionEvent)" class="hiddenlink" target="rightframe"><strike>onInterceptTouchEvent</strike>
+(<code>CoordinatorLayout, AppBarLayout, MotionEvent</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html#android.support.v17.leanback.widget.ShadowOverlayContainer.onLayout_removed(boolean, int, int, int, int)" class="hiddenlink" target="rightframe"><strike>onLayout</strike>
+(<code>boolean, int, int, int, int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onLayoutChild_added(android.support.design.widget.CoordinatorLayout, android.view.View, int)" class="hiddenlink" target="rightframe"><b>onLayoutChild</b>
+(<code>CoordinatorLayout, View, int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onMeasureChild_removed(android.support.design.widget.CoordinatorLayout, android.view.View, int, int, int, int)" class="hiddenlink" target="rightframe"><strike>onMeasureChild</strike>
+(<code>CoordinatorLayout, View, int, int, int, int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onProvideBackgroundFragment_added()" class="hiddenlink" target="rightframe"><b>onProvideBackgroundFragment</b>
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onProvideFragmentTransitions_added()" class="hiddenlink" target="rightframe"><b>onProvideFragmentTransitions</b>
+()</A></nobr><br>
+<i>onResume</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html#android.support.v17.leanback.app.PlaybackOverlayFragment.onResume_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlayFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html#android.support.v17.leanback.app.PlaybackOverlaySupportFragment.onResume_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.PlaybackOverlaySupportFragment
+</A></nobr><br>
+<i>onSaveInstanceState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onSaveInstanceState_added(android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onSaveInstanceState_added(android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<i>onStart</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onStart_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onStart_changed()" class="hiddenlink" target="rightframe">type&nbsp;
+()&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.onTouchEvent_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.AppBarLayout, android.view.MotionEvent)" class="hiddenlink" target="rightframe"><strike>onTouchEvent</strike>
+(<code>CoordinatorLayout, AppBarLayout, MotionEvent</code>)</A></nobr><br>
+<i>onViewCreated</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.onViewCreated_added(android.view.View, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onViewCreated_changed(android.view.View, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;
+(<code>View, Bundle</code>)&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>runEntranceTransition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html#android.support.v17.leanback.app.VerticalGridFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.runEntranceTransition_added(java.lang.Object)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Object</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.VerticalGridSupportFragment
+</A></nobr><br>
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>setActionButton</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.setActionButton_added(android.graphics.Bitmap, java.lang.String, android.app.PendingIntent, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bitmap, String, PendingIntent, boolean</code>)</b>&nbsp;in&nbsp;android.support.customtabs.CustomTabsIntent.Builder
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.customtabs.CustomTabsSession.html#android.support.customtabs.CustomTabsSession.setActionButton_added(android.graphics.Bitmap, java.lang.String)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bitmap, String</code>)</b>&nbsp;in&nbsp;android.support.customtabs.CustomTabsSession
+</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setCollapsedTitleTypeface_added(android.graphics.Typeface)" class="hiddenlink" target="rightframe"><b>setCollapsedTitleTypeface</b>
+(<code>Typeface</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setConnecting_changed(boolean)" class="hiddenlink" target="rightframe">setConnecting
+(<code>boolean</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setConnectionState_added(int)" class="hiddenlink" target="rightframe"><b>setConnectionState</b>
+(<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.setCounterEnabled_added(boolean)" class="hiddenlink" target="rightframe"><b>setCounterEnabled</b>
+(<code>boolean</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.setCounterMaxLength_added(int)" class="hiddenlink" target="rightframe"><b>setCounterMaxLength</b>
+(<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setDescription_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setDescription</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setDeviceType_added(int)" class="hiddenlink" target="rightframe"><b>setDeviceType</b>
+(<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.setDragCallback_added(android.support.design.widget.AppBarLayout.Behavior.DragCallback)" class="hiddenlink" target="rightframe"><b>setDragCallback</b>
+(<code>DragCallback</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setEditTitle_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setEditTitle</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.setEntranceTransitionState_added(android.support.v17.leanback.widget.VerticalGridPresenter.ViewHolder, boolean)" class="hiddenlink" target="rightframe"><b>setEntranceTransitionState</b>
+(<code>ViewHolder, boolean</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setEntryTransitionEnabled_removed(boolean)" class="hiddenlink" target="rightframe"><strike>setEntryTransitionEnabled</strike>
+(<code>boolean</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleTypeface_added(android.graphics.Typeface)" class="hiddenlink" target="rightframe"><b>setExpandedTitleTypeface</b>
+(<code>Typeface</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setIconUri_added(android.net.Uri)" class="hiddenlink" target="rightframe"><b>setIconUri</b>
+(<code>Uri</code>)</A></nobr><br>
+<i>setKeepChildForeground</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html#android.support.v17.leanback.widget.ListRowPresenter.setKeepChildForeground_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.ListRowPresenter
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html#android.support.v17.leanback.widget.VerticalGridPresenter.setKeepChildForeground_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.VerticalGridPresenter
+</A></nobr><br>
+<nobr><A HREF="android.support.v4.widget.NestedScrollView.html#android.support.v4.widget.NestedScrollView.setOnScrollChangeListener_added(android.support.v4.widget.NestedScrollView.OnScrollChangeListener)" class="hiddenlink" target="rightframe"><b>setOnScrollChangeListener</b>
+(<code>OnScrollChangeListener</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.setRegion_added(int, int, int, int)" class="hiddenlink" target="rightframe"><b>setRegion</b>
+(<code>int, int, int, int</code>)</A></nobr><br>
+<i>setScrimsShown</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setScrimsShown_added(boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean</code>)</b>&nbsp;in&nbsp;android.support.design.widget.CollapsingToolbarLayout
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setScrimsShown_added(boolean, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>boolean, boolean</code>)</b>&nbsp;in&nbsp;android.support.design.widget.CollapsingToolbarLayout
+</A></nobr><br>
+<i>setScrollIndicators</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.setScrollIndicators_added(android.view.View, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, int</code>)</b>&nbsp;in&nbsp;android.support.v4.view.ViewCompat
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.setScrollIndicators_added(android.view.View, int, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, int, int</code>)</b>&nbsp;in&nbsp;android.support.v4.view.ViewCompat
+</A></nobr><br>
+<nobr><A HREF="android.support.v4.app.FragmentActivity.html#android.support.v4.app.FragmentActivity.setSupportMediaController_added(android.support.v4.media.session.MediaControllerCompat)" class="hiddenlink" target="rightframe"><b>setSupportMediaController</b>
+(<code>MediaControllerCompat</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setTitle_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setTitle</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setUiStyle_added(int)" class="hiddenlink" target="rightframe"><b>setUiStyle</b>
+(<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.show_added(android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener)" class="hiddenlink" target="rightframe"><b>show</b>
+(<code>OnVisibilityChangedListener</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v4.widget.ScrollerCompat.html#android.support.v4.widget.ScrollerCompat.springBack_added(int, int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>springBack</b>
+(<code>int, int, int, int, int, int</code>)</A></nobr><br>
+<A NAME="U"></A>
+<br><font size="+2">U</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.customtabs.CustomTabsService.html#android.support.customtabs.CustomTabsService.updateVisuals_added(android.support.customtabs.CustomTabsSessionToken, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>updateVisuals</b>
+(<code>CustomTabsSessionToken, Bundle</code>)</A></nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_changes.html b/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_changes.html
new file mode 100644
index 0000000..8271b35
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_changes.html
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Method Changes Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Methods" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="methods_index_all.html" class="staysblack">All Methods</a>
+  <br>
+<A HREF="methods_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<A HREF="methods_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<b>Changes</b>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html#android.support.v17.leanback.widget.ShadowOverlayContainer.initialize_changed(boolean, boolean, boolean)" class="hiddenlink" target="rightframe">initialize
+(<code>boolean, boolean, boolean</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.isConnecting_changed()" class="hiddenlink" target="rightframe">isConnecting
+()</A></nobr><br>
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onDestroyView_changed()" class="hiddenlink" target="rightframe">onDestroyView
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onStart_changed()" class="hiddenlink" target="rightframe">onStart
+()</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html#android.support.v17.leanback.app.VerticalGridSupportFragment.onViewCreated_changed(android.view.View, android.os.Bundle)" class="hiddenlink" target="rightframe">onViewCreated
+(<code>View, Bundle</code>)</A></nobr><br>
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.setConnecting_changed(boolean)" class="hiddenlink" target="rightframe">setConnecting
+(<code>boolean</code>)</A></nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_removals.html b/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_removals.html
new file mode 100644
index 0000000..7250505
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/methods_index_removals.html
@@ -0,0 +1,172 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Method Removals Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Methods" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="methods_index_all.html" class="staysblack">All Methods</a>
+  <br>
+<b>Removals</b>
+  <br>
+<A HREF="methods_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<A HREF="methods_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.RowPresenter.html#android.support.v17.leanback.widget.RowPresenter.canDrawOutOfBounds_removed()" class="hiddenlink" target="rightframe"><strike>canDrawOutOfBounds</strike>
+()</A></nobr><br>
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.isEntryTransitionEnabled_removed()" class="hiddenlink" target="rightframe"><strike>isEntryTransitionEnabled</strike>
+()</A></nobr><br>
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>onActivityEnter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onActivityEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onActivityExit</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onActivityExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onAddEditTextToDialogView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v14.preference.EditTextPreferenceDialogFragment.html#android.support.v14.preference.EditTextPreferenceDialogFragment.onAddEditTextToDialogView_removed(android.view.View, android.widget.EditText)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>View, EditText</code>)</strike>&nbsp;in&nbsp;android.support.v14.preference.EditTextPreferenceDialogFragment
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html#android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.onAddEditTextToDialogView_removed(android.view.View, android.widget.EditText)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>View, EditText</code>)</strike>&nbsp;in&nbsp;android.support.v7.preference.EditTextPreferenceDialogFragmentCompat
+</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.Behavior.html#android.support.design.widget.FloatingActionButton.Behavior.onDependentViewRemoved_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.FloatingActionButton, android.view.View)" class="hiddenlink" target="rightframe"><strike>onDependentViewRemoved</strike>
+(<code>CoordinatorLayout, FloatingActionButton, View</code>)</A></nobr><br>
+<i>onFragmentEnter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentEnter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onFragmentExit</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentExit_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onFragmentReenter</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentReenter_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<i>onFragmentReturn</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html#android.support.v17.leanback.widget.FragmentAnimationProvider.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.FragmentAnimationProvider
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onFragmentReturn_removed(java.util.List<android.animation.Animator>)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>List&lt;Animator&gt;</code>)</strike>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.onInterceptTouchEvent_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.AppBarLayout, android.view.MotionEvent)" class="hiddenlink" target="rightframe"><strike>onInterceptTouchEvent</strike>
+(<code>CoordinatorLayout, AppBarLayout, MotionEvent</code>)</A></nobr><br>
+<nobr><A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html#android.support.v17.leanback.widget.ShadowOverlayContainer.onLayout_removed(boolean, int, int, int, int)" class="hiddenlink" target="rightframe"><strike>onLayout</strike>
+(<code>boolean, int, int, int, int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onMeasureChild_removed(android.support.design.widget.CoordinatorLayout, android.view.View, int, int, int, int)" class="hiddenlink" target="rightframe"><strike>onMeasureChild</strike>
+(<code>CoordinatorLayout, View, int, int, int, int</code>)</A></nobr><br>
+<nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html#android.support.design.widget.AppBarLayout.Behavior.onTouchEvent_removed(android.support.design.widget.CoordinatorLayout, android.support.design.widget.AppBarLayout, android.view.MotionEvent)" class="hiddenlink" target="rightframe"><strike>onTouchEvent</strike>
+(<code>CoordinatorLayout, AppBarLayout, MotionEvent</code>)</A></nobr><br>
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setEntryTransitionEnabled_removed(boolean)" class="hiddenlink" target="rightframe"><strike>setEntryTransitionEnabled</strike>
+(<code>boolean</code>)</A></nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_additions.html b/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_additions.html
new file mode 100644
index 0000000..1776064
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_additions.html
@@ -0,0 +1,63 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Package Additions Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Packages" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="packages_index_all.html" class="staysblack">All Packages</a>
+  <br>
+<font color="#999999">Removals</font>
+  <br>
+<font color="#999999">Additions</font>
+  <br>
+<A HREF="packages_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<br>
+<div id="indexTableEntries">
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_all.html b/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_all.html
new file mode 100644
index 0000000..2bf0974
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_all.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Package Differences Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Packages" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<b>Packages</b>
+  <br>
+<font color="#999999">Removals</font>
+  <br>
+<font color="#999999">Additions</font>
+  <br>
+<A HREF="packages_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<br>
+<div id="indexTableEntries">
+<A NAME="A"></A>
+<A HREF="pkg_android.support.customtabs.html" class="hiddenlink" target="rightframe">android.support.customtabs</A><br>
+<A HREF="pkg_android.support.design.widget.html" class="hiddenlink" target="rightframe">android.support.design.widget</A><br>
+<A HREF="pkg_android.support.percent.html" class="hiddenlink" target="rightframe">android.support.percent</A><br>
+<A HREF="pkg_android.support.v14.preference.html" class="hiddenlink" target="rightframe">android.support.v14.preference</A><br>
+<A HREF="pkg_android.support.v17.leanback.app.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.app</A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<A HREF="pkg_android.support.v4.app.html" class="hiddenlink" target="rightframe">android.support.v4.app</A><br>
+<A HREF="pkg_android.support.v4.content.html" class="hiddenlink" target="rightframe">android.support.v4.content</A><br>
+<A HREF="pkg_android.support.v4.content.res.html" class="hiddenlink" target="rightframe">android.support.v4.content.res</A><br>
+<A HREF="pkg_android.support.v4.media.session.html" class="hiddenlink" target="rightframe">android.support.v4.media.session</A><br>
+<A HREF="pkg_android.support.v4.view.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<A HREF="pkg_android.support.v4.widget.html" class="hiddenlink" target="rightframe">android.support.v4.widget</A><br>
+<A HREF="pkg_android.support.v7.appcompat.html" class="hiddenlink" target="rightframe">android.support.v7.appcompat</A><br>
+<A HREF="pkg_android.support.v7.graphics.html" class="hiddenlink" target="rightframe">android.support.v7.graphics</A><br>
+<A HREF="pkg_android.support.v7.graphics.drawable.html" class="hiddenlink" target="rightframe">android.support.v7.graphics.drawable</A><br>
+<A HREF="pkg_android.support.v7.media.html" class="hiddenlink" target="rightframe">android.support.v7.media</A><br>
+<A HREF="pkg_android.support.v7.preference.html" class="hiddenlink" target="rightframe">android.support.v7.preference</A><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_changes.html b/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_changes.html
new file mode 100644
index 0000000..519e9aa
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_changes.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Package Changes Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Packages" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="packages_index_all.html" class="staysblack">All Packages</a>
+  <br>
+<font color="#999999">Removals</font>
+  <br>
+<font color="#999999">Additions</font>
+  <br>
+<b>Changes</b>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<br>
+<div id="indexTableEntries">
+<A NAME="A"></A>
+<A HREF="pkg_android.support.customtabs.html" class="hiddenlink" target="rightframe">android.support.customtabs</A><br>
+<A HREF="pkg_android.support.design.widget.html" class="hiddenlink" target="rightframe">android.support.design.widget</A><br>
+<A HREF="pkg_android.support.percent.html" class="hiddenlink" target="rightframe">android.support.percent</A><br>
+<A HREF="pkg_android.support.v14.preference.html" class="hiddenlink" target="rightframe">android.support.v14.preference</A><br>
+<A HREF="pkg_android.support.v17.leanback.app.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.app</A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<A HREF="pkg_android.support.v4.app.html" class="hiddenlink" target="rightframe">android.support.v4.app</A><br>
+<A HREF="pkg_android.support.v4.content.html" class="hiddenlink" target="rightframe">android.support.v4.content</A><br>
+<A HREF="pkg_android.support.v4.content.res.html" class="hiddenlink" target="rightframe">android.support.v4.content.res</A><br>
+<A HREF="pkg_android.support.v4.media.session.html" class="hiddenlink" target="rightframe">android.support.v4.media.session</A><br>
+<A HREF="pkg_android.support.v4.view.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<A HREF="pkg_android.support.v4.widget.html" class="hiddenlink" target="rightframe">android.support.v4.widget</A><br>
+<A HREF="pkg_android.support.v7.appcompat.html" class="hiddenlink" target="rightframe">android.support.v7.appcompat</A><br>
+<A HREF="pkg_android.support.v7.graphics.html" class="hiddenlink" target="rightframe">android.support.v7.graphics</A><br>
+<A HREF="pkg_android.support.v7.graphics.drawable.html" class="hiddenlink" target="rightframe">android.support.v7.graphics.drawable</A><br>
+<A HREF="pkg_android.support.v7.media.html" class="hiddenlink" target="rightframe">android.support.v7.media</A><br>
+<A HREF="pkg_android.support.v7.preference.html" class="hiddenlink" target="rightframe">android.support.v7.preference</A><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_removals.html b/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_removals.html
new file mode 100644
index 0000000..9fd0f7e
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/packages_index_removals.html
@@ -0,0 +1,63 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Package Removals Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Packages" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="packages_index_all.html" class="staysblack">All Packages</a>
+  <br>
+<font color="#999999">Removals</font>
+  <br>
+<font color="#999999">Additions</font>
+  <br>
+<A HREF="packages_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<br>
+<div id="indexTableEntries">
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.customtabs.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.customtabs.html
new file mode 100644
index 0000000..d85f3f8
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.customtabs.html
@@ -0,0 +1,154 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.customtabs
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/customtabs/package-summary.html" target="_top"><font size="+1"><code>android.support.customtabs</code></font></A>
+</H2>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="CustomTabsCallback"></A>
+  <nobr><A HREF="android.support.customtabs.CustomTabsCallback.html">CustomTabsCallback</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="CustomTabsIntent"></A>
+  <nobr><A HREF="android.support.customtabs.CustomTabsIntent.html">CustomTabsIntent</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="CustomTabsIntent.Builder"></A>
+  <nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html">CustomTabsIntent.Builder</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="CustomTabsService"></A>
+  <nobr><A HREF="android.support.customtabs.CustomTabsService.html">CustomTabsService</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="CustomTabsSession"></A>
+  <nobr><A HREF="android.support.customtabs.CustomTabsSession.html">CustomTabsSession</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="CustomTabsSessionToken"></A>
+  <nobr><A HREF="android.support.customtabs.CustomTabsSessionToken.html">CustomTabsSessionToken</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.design.widget.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.design.widget.html
new file mode 100644
index 0000000..449afa6
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.design.widget.html
@@ -0,0 +1,225 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/design/widget/package-summary.html" target="_top"><font size="+1"><code>android.support.design.widget</code></font></A>
+</H2>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="AppBarLayout.Behavior.DragCallback"></A>
+  <nobr><A HREF="../../../../reference/android/support/design/widget/AppBarLayout.Behavior.DragCallback.html" target="_top"><code>AppBarLayout.Behavior.<br>DragCallback</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="FloatingActionButton.OnVisibilityChangedListener"></A>
+  <nobr><A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.OnVisibilityChangedListener.html" target="_top"><code>FloatingActionButton.<br>OnVisibilityChangedListener</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="HeaderBehavior"></A>
+  <nobr><A HREF="../../../../reference/android/support/design/widget/HeaderBehavior.html" target="_top"><code>HeaderBehavior</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="HeaderScrollingViewBehavior"></A>
+  <nobr><A HREF="../../../../reference/android/support/design/widget/HeaderScrollingViewBehavior.html" target="_top"><code>HeaderScrollingViewBehavior</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="AppBarLayout.Behavior"></A>
+  <nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.html">AppBarLayout.Behavior</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="AppBarLayout.Behavior.SavedState"></A>
+  <nobr><A HREF="android.support.design.widget.AppBarLayout.Behavior.SavedState.html">AppBarLayout.Behavior.<br>SavedState</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="AppBarLayout.LayoutParams"></A>
+  <nobr><A HREF="android.support.design.widget.AppBarLayout.LayoutParams.html">AppBarLayout.LayoutParams</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="AppBarLayout.ScrollingViewBehavior"></A>
+  <nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html">AppBarLayout.ScrollingViewBehavior</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="CollapsingToolbarLayout"></A>
+  <nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html">CollapsingToolbarLayout</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="CoordinatorLayout.SavedState"></A>
+  <nobr><A HREF="android.support.design.widget.CoordinatorLayout.SavedState.html">CoordinatorLayout.SavedState</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="FloatingActionButton"></A>
+  <nobr><A HREF="android.support.design.widget.FloatingActionButton.html">FloatingActionButton</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="FloatingActionButton.Behavior"></A>
+  <nobr><A HREF="android.support.design.widget.FloatingActionButton.Behavior.html">FloatingActionButton.Behavior</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="NavigationView.SavedState"></A>
+  <nobr><A HREF="android.support.design.widget.NavigationView.SavedState.html">NavigationView.SavedState</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="Snackbar"></A>
+  <nobr><A HREF="android.support.design.widget.Snackbar.html">Snackbar</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="TextInputLayout"></A>
+  <nobr><A HREF="android.support.design.widget.TextInputLayout.html">TextInputLayout</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.percent.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.percent.html
new file mode 100644
index 0000000..53b92a9
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.percent.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.percent
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/percent/package-summary.html" target="_top"><font size="+1"><code>android.support.percent</code></font></A>
+</H2>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="PercentLayoutHelper.PercentLayoutInfo"></A>
+  <nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html">PercentLayoutHelper.PercentLayoutInfo</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v14.preference.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v14.preference.html
new file mode 100644
index 0000000..3ef0a0f
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v14.preference.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v14.preference
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v14/preference/package-summary.html" target="_top"><font size="+1"><code>android.support.v14.preference</code></font></A>
+</H2>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="EditTextPreferenceDialogFragment"></A>
+  <nobr><A HREF="android.support.v14.preference.EditTextPreferenceDialogFragment.html">EditTextPreferenceDialogFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v17.leanback.app.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v17.leanback.app.html
new file mode 100644
index 0000000..49ee52f
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v17.leanback.app.html
@@ -0,0 +1,225 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v17/leanback/app/package-summary.html" target="_top"><font size="+1"><code>android.support.v17.leanback.app</code></font></A>
+</H2>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="GuidedStepFragment.GuidedStepBackgroundFragment"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.GuidedStepBackgroundFragment.html" target="_top"><code>GuidedStepFragment.GuidedStepBackgroundFragment</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="GuidedStepSupportFragment"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html" target="_top"><code>GuidedStepSupportFragment</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment.html" target="_top"><code>GuidedStepSupportFragment.<br>GuidedStepBackgroundSupportFragment</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="PlaybackControlSupportGlue"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/app/PlaybackControlSupportGlue.html" target="_top"><code>PlaybackControlSupportGlue</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="BrowseFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html">BrowseFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="BrowseSupportFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html">BrowseSupportFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="DetailsFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html">DetailsFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="DetailsSupportFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html">DetailsSupportFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="GuidedStepFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html">GuidedStepFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="PlaybackOverlayFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlayFragment.html">PlaybackOverlayFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="PlaybackOverlaySupportFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.PlaybackOverlaySupportFragment.html">PlaybackOverlaySupportFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="SearchFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.SearchFragment.html">SearchFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="SearchSupportFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.SearchSupportFragment.html">SearchSupportFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="VerticalGridFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.VerticalGridFragment.html">VerticalGridFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="VerticalGridSupportFragment"></A>
+  <nobr><A HREF="android.support.v17.leanback.app.VerticalGridSupportFragment.html">VerticalGridSupportFragment</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v17.leanback.widget.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v17.leanback.widget.html
new file mode 100644
index 0000000..73d5050
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v17.leanback.widget.html
@@ -0,0 +1,253 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v17/leanback/widget/package-summary.html" target="_top"><font size="+1"><code>android.support.v17.leanback.widget</code></font></A>
+</H2>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Classes and Interfaces" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Classes and Interfaces</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="GuidedActionEditText"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionEditText.html" target="_top"><code>GuidedActionEditText</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ImeKeyMonitor"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/ImeKeyMonitor.html" target="_top"><code><I>ImeKeyMonitor</I></code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ImeKeyMonitor.ImeKeyListener"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/ImeKeyMonitor.ImeKeyListener.html" target="_top"><code><I>ImeKeyMonitor.ImeKeyListener</I></code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ItemBridgeAdapterShadowOverlayWrapper"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/ItemBridgeAdapterShadowOverlayWrapper.html" target="_top"><code>ItemBridgeAdapterShadowOverlayWrapper</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ShadowOverlayHelper"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/ShadowOverlayHelper.html" target="_top"><code>ShadowOverlayHelper</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ShadowOverlayHelper.Builder"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/ShadowOverlayHelper.Builder.html" target="_top"><code>ShadowOverlayHelper.Builder</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ShadowOverlayHelper.Options"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/ShadowOverlayHelper.Options.html" target="_top"><code>ShadowOverlayHelper.Options</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes and Interfaces" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes and Interfaces</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="FragmentAnimationProvider"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.FragmentAnimationProvider.html"><I>FragmentAnimationProvider</I></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="GuidanceStylist"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html">GuidanceStylist</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="GuidedAction"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html">GuidedAction</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="GuidedAction.Builder"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html">GuidedAction.Builder</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="GuidedActionsStylist"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html">GuidedActionsStylist</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="GuidedActionsStylist.ViewHolder"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html">GuidedActionsStylist.<br>ViewHolder</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ImageCardView"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html">ImageCardView</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ListRowPresenter"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.html">ListRowPresenter</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="RowPresenter"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.RowPresenter.html">RowPresenter</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="SearchBar"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.SearchBar.html">SearchBar</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ShadowOverlayContainer"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.ShadowOverlayContainer.html">ShadowOverlayContainer</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="VerticalGridPresenter"></A>
+  <nobr><A HREF="android.support.v17.leanback.widget.VerticalGridPresenter.html">VerticalGridPresenter</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.app.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.app.html
new file mode 100644
index 0000000..b1645a6
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.app.html
@@ -0,0 +1,134 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v4/app/package-summary.html" target="_top"><font size="+1"><code>android.support.v4.app</code></font></A>
+</H2>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="BundleCompat"></A>
+  <nobr><A HREF="../../../../reference/android/support/v4/app/BundleCompat.html" target="_top"><code>BundleCompat</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="FragmentActivity"></A>
+  <nobr><A HREF="android.support.v4.app.FragmentActivity.html">FragmentActivity</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.content.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.content.html
new file mode 100644
index 0000000..efc62c9
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.content.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v4/content/package-summary.html" target="_top"><font size="+1"><code>android.support.v4.content</code></font></A>
+</H2>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ParallelExecutorCompat"></A>
+  <nobr><A HREF="../../../../reference/android/support/v4/content/ParallelExecutorCompat.html" target="_top"><code>ParallelExecutorCompat</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.content.res.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.content.res.html
new file mode 100644
index 0000000..fd9c9f8
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.content.res.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.res
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v4/content/res/package-summary.html" target="_top"><font size="+1"><code>android.support.v4.content.res</code></font></A>
+</H2>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ResourcesCompat"></A>
+  <nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html">ResourcesCompat</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.media.session.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.media.session.html
new file mode 100644
index 0000000..afd23b1
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.media.session.html
@@ -0,0 +1,134 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.media.session
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v4/media/session/package-summary.html" target="_top"><font size="+1"><code>android.support.v4.media.session</code></font></A>
+</H2>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="MediaButtonReceiver"></A>
+  <nobr><A HREF="../../../../reference/android/support/v4/media/session/MediaButtonReceiver.html" target="_top"><code>MediaButtonReceiver</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="MediaSessionCompat"></A>
+  <nobr><A HREF="android.support.v4.media.session.MediaSessionCompat.html">MediaSessionCompat</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.view.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.view.html
new file mode 100644
index 0000000..7d74c82
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.view.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v4/view/package-summary.html" target="_top"><font size="+1"><code>android.support.v4.view</code></font></A>
+</H2>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ViewCompat"></A>
+  <nobr><A HREF="android.support.v4.view.ViewCompat.html">ViewCompat</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.widget.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.widget.html
new file mode 100644
index 0000000..4ca7874
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v4.widget.html
@@ -0,0 +1,148 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v4/widget/package-summary.html" target="_top"><font size="+1"><code>android.support.v4.widget</code></font></A>
+</H2>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Interfaces" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Interfaces</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="NestedScrollView.OnScrollChangeListener"></A>
+  <nobr><A HREF="../../../../reference/android/support/v4/widget/NestedScrollView.OnScrollChangeListener.html" target="_top"><code><I>NestedScrollView.OnScrollChangeListener</I></code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="NestedScrollView"></A>
+  <nobr><A HREF="android.support.v4.widget.NestedScrollView.html">NestedScrollView</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ScrollerCompat"></A>
+  <nobr><A HREF="android.support.v4.widget.ScrollerCompat.html">ScrollerCompat</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="TextViewCompat"></A>
+  <nobr><A HREF="android.support.v4.widget.TextViewCompat.html">TextViewCompat</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.appcompat.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.appcompat.html
new file mode 100644
index 0000000..553bdf2
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.appcompat.html
@@ -0,0 +1,175 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v7/appcompat/package-summary.html" target="_top"><font size="+1"><code>android.support.v7.appcompat</code></font></A>
+</H2>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="R.attr"></A>
+  <nobr><A HREF="android.support.v7.appcompat.R.attr.html">R.attr</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="R.bool"></A>
+  <nobr><A HREF="android.support.v7.appcompat.R.bool.html">R.bool</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="R.dimen"></A>
+  <nobr><A HREF="android.support.v7.appcompat.R.dimen.html">R.dimen</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="R.drawable"></A>
+  <nobr><A HREF="android.support.v7.appcompat.R.drawable.html">R.drawable</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="R.id"></A>
+  <nobr><A HREF="android.support.v7.appcompat.R.id.html">R.id</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="R.layout"></A>
+  <nobr><A HREF="android.support.v7.appcompat.R.layout.html">R.layout</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="R.string"></A>
+  <nobr><A HREF="android.support.v7.appcompat.R.string.html">R.string</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="R.style"></A>
+  <nobr><A HREF="android.support.v7.appcompat.R.style.html">R.style</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="R.styleable"></A>
+  <nobr><A HREF="android.support.v7.appcompat.R.styleable.html">R.styleable</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.graphics.drawable.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.graphics.drawable.html
new file mode 100644
index 0000000..e9d5cd9
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.graphics.drawable.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.graphics.drawable
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v7/graphics/drawable/package-summary.html" target="_top"><font size="+1"><code>android.support.v7.graphics.drawable</code></font></A>
+</H2>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="DrawerArrowDrawable"></A>
+  <nobr><A HREF="android.support.v7.graphics.drawable.DrawerArrowDrawable.html">DrawerArrowDrawable</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.graphics.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.graphics.html
new file mode 100644
index 0000000..ba9a092
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.graphics.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.graphics
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v7/graphics/package-summary.html" target="_top"><font size="+1"><code>android.support.v7.graphics</code></font></A>
+</H2>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="Palette.Builder"></A>
+  <nobr><A HREF="android.support.v7.graphics.Palette.Builder.html">Palette.Builder</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.media.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.media.html
new file mode 100644
index 0000000..7892bf9
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.media.html
@@ -0,0 +1,148 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.media
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v7/media/package-summary.html" target="_top"><font size="+1"><code>android.support.v7.media</code></font></A>
+</H2>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="MediaRouter.RouteGroup"></A>
+  <nobr><A HREF="../../../../reference/android/support/v7/media/MediaRouter.RouteGroup.html" target="_top"><code>MediaRouter.RouteGroup</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="MediaRouteDescriptor"></A>
+  <nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html">MediaRouteDescriptor</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="MediaRouteDescriptor.Builder"></A>
+  <nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html">MediaRouteDescriptor.Builder</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="MediaRouter.RouteInfo"></A>
+  <nobr><A HREF="android.support.v7.media.MediaRouter.RouteInfo.html">MediaRouter.RouteInfo</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.preference.html b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.preference.html
new file mode 100644
index 0000000..ced3a90
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/changes/pkg_android.support.v7.preference.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.preference
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.1.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.0.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2015.10.15 12:23</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Package <A HREF="../../../../reference/android/support/v7/preference/package-summary.html" target="_top"><font size="+1"><code>android.support.v7.preference</code></font></A>
+</H2>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Classes" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Changed Classes</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="EditTextPreferenceDialogFragmentCompat"></A>
+  <nobr><A HREF="android.support.v7.preference.EditTextPreferenceDialogFragmentCompat.html">EditTextPreferenceDialogFragmentCompat</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.1.0/stylesheet-jdiff.css b/docs/html/sdk/support_api_diff/23.1.0/stylesheet-jdiff.css
new file mode 100644
index 0000000..edafaa3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.1.0/stylesheet-jdiff.css
@@ -0,0 +1,44 @@
+
+/* (http://www.jdiff.org) */
+
+div.and-diff-id {border: 1px solid #eee;position:relative;float:right;clear:both;padding:0px;}
+table.diffspectable {border:1px;padding:0px;margin:0px;}
+.diffspechead {background-color:#eee;}
+.diffspectable tr {border:0px;padding:0px;}
+.diffspectable td  {background-color:eee;border:0px;font-size:90%;font-weight:normal;padding:0px;padding-left:1px;padding-right:1px;text-align:center;color:777;}
+td.diffvalueold {color:orange;background-color:white;border:0px;font-size:80%;font-style:normal;text-align:left;padding:0px;padding-left:1px;padding-right:1px;line-height:.95em;}
+td.diffvaluenew {color:green;background-color:white;border:0px;font-size:80%;font-weight:normal;text-align:left;padding:0px;padding-left:1px;padding-right:1px;line-height:.95em;}
+td.diffvalue {color:444;background-color:white;border:0px;font-size:80%;font-weight:normal;text-align:left;padding:0px;padding-left:1px;padding-right:1px;line-height:.95em;}
+td.diffspec {background-color:white;border:0px;font-size:80%;font-weight:normal;padding:1px;color:444;text-align:right;padding-right:.5em;line-height:.95em;}
+tt {font-size:11pt;font-family:monospace;}
+.indexHeader {
+  font-size:96%;
+  line-height:.8em;}
+.jdiffIndex td {
+  font-size:96%;
+  xline-height:.8em;
+  padding:2px;
+  padding-left:1em;}
+.indexText {
+  font-size:100%;
+  padding-left:1em;}
+#indexTableCaption {
+  font-size:96%;
+  margin-top:.25em;
+  margin-bottom:0;
+  }
+.hiddenlink {
+  font-size:96%;
+  line-height:.8em;
+  text-decoration:none;}
+a {
+  text-decoration:none;}
+a:hover {
+  text-decoration:underline;}
+.indexBox {
+  border: 1px solid red;
+  margin:1em 0 0 0;}
+.letterIndexHead {
+  font-size: 1.5em;font-weight:9;
+  margin:0 0 0em 0;
+  border: 1px solid red;}
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes.html b/docs/html/sdk/support_api_diff/23.2.0/changes.html
new file mode 100644
index 0000000..fbe0de5
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes.html
@@ -0,0 +1,45 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<!-- on Tue Feb 23 13:25:04 PST 2016 -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Support&nbsp;Library&nbsp;API&nbsp;Differences&nbsp;Report
+</TITLE>
+<link href="../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</head>
+<frameset cols="242,**" framespacing="1" frameborder="yes" border="1" bordercolor="#e9e9e9"> 
+<frameset rows="174,**" framespacing="1" frameborder="yes"  border="1" bordercolor="#e9e9e9">
+    <frame src="changes/jdiff_topleftframe.html" scrolling="no" name="topleftframe" frameborder="1">
+    <frame src="changes/alldiffs_index_all.html" scrolling="auto" name="bottomleftframe" frameborder="1">
+  </frameset>
+  <frame src="changes/changes-summary.html" scrolling="auto" name="rightframe" frameborder="1">
+</frameset>
+<noframes>
+<h2>
+Frame Alert
+</h2>
+
+<p>
+This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
+<br>
+Link to <a href="changes/changes-summary.html" target="_top">Non-frame version.</A>
+</noframes>
+</html>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_additions.html b/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_additions.html
new file mode 100644
index 0000000..09ec1eb
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_additions.html
@@ -0,0 +1,1969 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+All Additions Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for All Differences" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="alldiffs_index_all.html" xclass="hiddenlink">All Differences</a>
+  <br>
+<A HREF="alldiffs_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<b>Additions</b>
+  <br>
+<A HREF="alldiffs_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<!-- Field abc_btn_checkbox_checked_mtrl -->
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_checkbox_checked_mtrl" class="hiddenlink" target="rightframe">abc_btn_checkbox_checked_mtrl</A>
+</nobr><br>
+<!-- Field abc_btn_checkbox_unchecked_mtrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_checkbox_unchecked_mtrl" class="hiddenlink" target="rightframe">abc_btn_checkbox_unchecked_mtrl</A>
+</nobr><br>
+<!-- Field abc_btn_radio_off_mtrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_radio_off_mtrl" class="hiddenlink" target="rightframe">abc_btn_radio_off_mtrl</A>
+</nobr><br>
+<!-- Field abc_btn_radio_on_mtrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_radio_on_mtrl" class="hiddenlink" target="rightframe">abc_btn_radio_on_mtrl</A>
+</nobr><br>
+<!-- Field abc_ic_ab_back_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_ab_back_material" class="hiddenlink" target="rightframe">abc_ic_ab_back_material</A>
+</nobr><br>
+<!-- Field abc_ic_clear_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_clear_material" class="hiddenlink" target="rightframe">abc_ic_clear_material</A>
+</nobr><br>
+<!-- Field abc_ic_go_search_api_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_go_search_api_material" class="hiddenlink" target="rightframe">abc_ic_go_search_api_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_copy_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_copy_material" class="hiddenlink" target="rightframe">abc_ic_menu_copy_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_cut_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_cut_material" class="hiddenlink" target="rightframe">abc_ic_menu_cut_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_overflow_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_overflow_material" class="hiddenlink" target="rightframe">abc_ic_menu_overflow_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_paste_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_paste_material" class="hiddenlink" target="rightframe">abc_ic_menu_paste_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_selectall_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_selectall_material" class="hiddenlink" target="rightframe">abc_ic_menu_selectall_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_share_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_share_material" class="hiddenlink" target="rightframe">abc_ic_menu_share_material</A>
+</nobr><br>
+<!-- Field abc_ic_star_black_16dp -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_star_black_16dp" class="hiddenlink" target="rightframe">abc_ic_star_black_16dp</A>
+</nobr><br>
+<!-- Field abc_ic_star_black_36dp -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_star_black_36dp" class="hiddenlink" target="rightframe">abc_ic_star_black_36dp</A>
+</nobr><br>
+<!-- Field abc_ic_star_half_black_16dp -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_star_half_black_16dp" class="hiddenlink" target="rightframe">abc_ic_star_half_black_16dp</A>
+</nobr><br>
+<!-- Field abc_ic_star_half_black_36dp -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_star_half_black_36dp" class="hiddenlink" target="rightframe">abc_ic_star_half_black_36dp</A>
+</nobr><br>
+<!-- Field abc_ic_voice_search_api_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_voice_search_api_material" class="hiddenlink" target="rightframe">abc_ic_voice_search_api_material</A>
+</nobr><br>
+<!-- Field abc_ratingbar_indicator_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ratingbar_indicator_material" class="hiddenlink" target="rightframe">abc_ratingbar_indicator_material</A>
+</nobr><br>
+<!-- Field abc_ratingbar_small_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ratingbar_small_material" class="hiddenlink" target="rightframe">abc_ratingbar_small_material</A>
+</nobr><br>
+<!-- Field ACTION_ID_CANCEL -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_CANCEL" class="hiddenlink" target="rightframe">ACTION_ID_CANCEL</A>
+</nobr><br>
+<!-- Field ACTION_ID_CONTINUE -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_CONTINUE" class="hiddenlink" target="rightframe">ACTION_ID_CONTINUE</A>
+</nobr><br>
+<!-- Field ACTION_ID_CURRENT -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_CURRENT" class="hiddenlink" target="rightframe">ACTION_ID_CURRENT</A>
+</nobr><br>
+<!-- Field ACTION_ID_FINISH -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_FINISH" class="hiddenlink" target="rightframe">ACTION_ID_FINISH</A>
+</nobr><br>
+<!-- Field ACTION_ID_NEXT -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_NEXT" class="hiddenlink" target="rightframe">ACTION_ID_NEXT</A>
+</nobr><br>
+<!-- Field ACTION_ID_NO -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_NO" class="hiddenlink" target="rightframe">ACTION_ID_NO</A>
+</nobr><br>
+<!-- Field ACTION_ID_OK -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_OK" class="hiddenlink" target="rightframe">ACTION_ID_OK</A>
+</nobr><br>
+<!-- Field ACTION_ID_YES -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_YES" class="hiddenlink" target="rightframe">ACTION_ID_YES</A>
+</nobr><br>
+<!-- Method addDefaultShareMenuItem -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.addDefaultShareMenuItem_added()" class="hiddenlink" target="rightframe"><b>addDefaultShareMenuItem</b>
+()</A></nobr><br>
+<!-- Method addDrawerListener -->
+<nobr><A HREF="android.support.v4.widget.DrawerLayout.html#android.support.v4.widget.DrawerLayout.addDrawerListener_added(android.support.v4.widget.DrawerLayout.DrawerListener)" class="hiddenlink" target="rightframe"><b>addDrawerListener</b>
+(<code>DrawerListener</code>)</A></nobr><br>
+<!-- Method addTarget -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.addTarget_added(android.support.v7.graphics.Target)" class="hiddenlink" target="rightframe"><b>addTarget</b>
+(<code>Target</code>)</A></nobr><br>
+<!-- Method addToolbarItem -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.addToolbarItem_added(int, android.graphics.Bitmap, java.lang.String, android.app.PendingIntent)" class="hiddenlink" target="rightframe"><b>addToolbarItem</b>
+(<code>int, Bitmap, String, PendingIntent</code>)</A></nobr><br>
+<!-- Package android.support.graphics.drawable -->
+<A HREF="changes-summary.html#android.support.graphics.drawable" class="hiddenlink" target="rightframe"><b>android.support.graphics.drawable</b></A><br>
+<!-- Package android.support.v17.leanback.widget.picker -->
+<A HREF="changes-summary.html#android.support.v17.leanback.widget.picker" class="hiddenlink" target="rightframe"><b>android.support.v17.leanback.widget.picker</b></A><br>
+<!-- Field AppCompatImageView -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatImageView" class="hiddenlink" target="rightframe">AppCompatImageView</A>
+</nobr><br>
+<!-- Field AppCompatImageView_android_src -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatImageView_android_src" class="hiddenlink" target="rightframe">AppCompatImageView_android_src</A>
+</nobr><br>
+<!-- Field AppCompatImageView_srcCompat -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatImageView_srcCompat" class="hiddenlink" target="rightframe">AppCompatImageView_srcCompat</A>
+</nobr><br>
+<!-- Field AppCompatTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme" class="hiddenlink" target="rightframe">AppCompatTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarDivider -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarDivider" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarDivider</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarItemBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarItemBackground" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarItemBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarPopupTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarPopupTheme" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarPopupTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarSize -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarSize" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarSize</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarSplitStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarSplitStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarSplitStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarTabBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTabBarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarTabBarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarTabStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTabStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarTabStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarTabTextStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTabTextStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarTabTextStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTheme" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarWidgetTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarWidgetTheme" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarWidgetTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionDropDownStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionDropDownStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionDropDownStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionMenuTextAppearance -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionMenuTextAppearance" class="hiddenlink" target="rightframe">AppCompatTheme_actionMenuTextAppearance</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionMenuTextColor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionMenuTextColor" class="hiddenlink" target="rightframe">AppCompatTheme_actionMenuTextColor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeBackground" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeCloseButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCloseButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeCloseButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeCloseDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCloseDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeCloseDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeCopyDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCopyDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeCopyDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeCutDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCutDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeCutDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeFindDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeFindDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeFindDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModePasteDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModePasteDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModePasteDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModePopupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModePopupWindowStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionModePopupWindowStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeSelectAllDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeSelectAllDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeSelectAllDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeShareDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeShareDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeShareDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeSplitBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeSplitBackground" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeSplitBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeWebSearchDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeWebSearchDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeWebSearchDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionOverflowButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionOverflowButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionOverflowButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionOverflowMenuStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionOverflowMenuStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionOverflowMenuStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_activityChooserViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_activityChooserViewStyle" class="hiddenlink" target="rightframe">AppCompatTheme_activityChooserViewStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_alertDialogButtonGroupStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogButtonGroupStyle" class="hiddenlink" target="rightframe">AppCompatTheme_alertDialogButtonGroupStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_alertDialogCenterButtons -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogCenterButtons" class="hiddenlink" target="rightframe">AppCompatTheme_alertDialogCenterButtons</A>
+</nobr><br>
+<!-- Field AppCompatTheme_alertDialogStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogStyle" class="hiddenlink" target="rightframe">AppCompatTheme_alertDialogStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_alertDialogTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogTheme" class="hiddenlink" target="rightframe">AppCompatTheme_alertDialogTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_android_windowAnimationStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_android_windowAnimationStyle" class="hiddenlink" target="rightframe">AppCompatTheme_android_windowAnimationStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_android_windowIsFloating -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_android_windowIsFloating" class="hiddenlink" target="rightframe">AppCompatTheme_android_windowIsFloating</A>
+</nobr><br>
+<!-- Field AppCompatTheme_autoCompleteTextViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_autoCompleteTextViewStyle" class="hiddenlink" target="rightframe">AppCompatTheme_autoCompleteTextViewStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_borderlessButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_borderlessButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_borderlessButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonBarButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonBarButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonBarNegativeButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarNegativeButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonBarNegativeButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonBarNeutralButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarNeutralButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonBarNeutralButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonBarPositiveButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarPositiveButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonBarPositiveButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonBarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonStyleSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonStyleSmall" class="hiddenlink" target="rightframe">AppCompatTheme_buttonStyleSmall</A>
+</nobr><br>
+<!-- Field AppCompatTheme_checkboxStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_checkboxStyle" class="hiddenlink" target="rightframe">AppCompatTheme_checkboxStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_checkedTextViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_checkedTextViewStyle" class="hiddenlink" target="rightframe">AppCompatTheme_checkedTextViewStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorAccent -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorAccent" class="hiddenlink" target="rightframe">AppCompatTheme_colorAccent</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorButtonNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorButtonNormal" class="hiddenlink" target="rightframe">AppCompatTheme_colorButtonNormal</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorControlActivated -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorControlActivated" class="hiddenlink" target="rightframe">AppCompatTheme_colorControlActivated</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorControlHighlight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorControlHighlight" class="hiddenlink" target="rightframe">AppCompatTheme_colorControlHighlight</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorControlNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorControlNormal" class="hiddenlink" target="rightframe">AppCompatTheme_colorControlNormal</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorPrimary -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorPrimary" class="hiddenlink" target="rightframe">AppCompatTheme_colorPrimary</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorPrimaryDark -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorPrimaryDark" class="hiddenlink" target="rightframe">AppCompatTheme_colorPrimaryDark</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorSwitchThumbNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorSwitchThumbNormal" class="hiddenlink" target="rightframe">AppCompatTheme_colorSwitchThumbNormal</A>
+</nobr><br>
+<!-- Field AppCompatTheme_controlBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_controlBackground" class="hiddenlink" target="rightframe">AppCompatTheme_controlBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dialogPreferredPadding -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dialogPreferredPadding" class="hiddenlink" target="rightframe">AppCompatTheme_dialogPreferredPadding</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dialogTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dialogTheme" class="hiddenlink" target="rightframe">AppCompatTheme_dialogTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dividerHorizontal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dividerHorizontal" class="hiddenlink" target="rightframe">AppCompatTheme_dividerHorizontal</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dividerVertical -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dividerVertical" class="hiddenlink" target="rightframe">AppCompatTheme_dividerVertical</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dropdownListPreferredItemHeight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dropdownListPreferredItemHeight" class="hiddenlink" target="rightframe">AppCompatTheme_dropdownListPreferredItemHeight</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dropDownListViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dropDownListViewStyle" class="hiddenlink" target="rightframe">AppCompatTheme_dropDownListViewStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_editTextBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_editTextBackground" class="hiddenlink" target="rightframe">AppCompatTheme_editTextBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_editTextColor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_editTextColor" class="hiddenlink" target="rightframe">AppCompatTheme_editTextColor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_editTextStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_editTextStyle" class="hiddenlink" target="rightframe">AppCompatTheme_editTextStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_homeAsUpIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_homeAsUpIndicator" class="hiddenlink" target="rightframe">AppCompatTheme_homeAsUpIndicator</A>
+</nobr><br>
+<!-- Field AppCompatTheme_imageButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_imageButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_imageButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listChoiceBackgroundIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listChoiceBackgroundIndicator" class="hiddenlink" target="rightframe">AppCompatTheme_listChoiceBackgroundIndicator</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listDividerAlertDialog -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listDividerAlertDialog" class="hiddenlink" target="rightframe">AppCompatTheme_listDividerAlertDialog</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPopupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPopupWindowStyle" class="hiddenlink" target="rightframe">AppCompatTheme_listPopupWindowStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPreferredItemHeight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemHeight" class="hiddenlink" target="rightframe">AppCompatTheme_listPreferredItemHeight</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPreferredItemHeightLarge -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemHeightLarge" class="hiddenlink" target="rightframe">AppCompatTheme_listPreferredItemHeightLarge</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPreferredItemHeightSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemHeightSmall" class="hiddenlink" target="rightframe">AppCompatTheme_listPreferredItemHeightSmall</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPreferredItemPaddingLeft -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemPaddingLeft" class="hiddenlink" target="rightframe">AppCompatTheme_listPreferredItemPaddingLeft</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPreferredItemPaddingRight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemPaddingRight" class="hiddenlink" target="rightframe">AppCompatTheme_listPreferredItemPaddingRight</A>
+</nobr><br>
+<!-- Field AppCompatTheme_panelBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_panelBackground" class="hiddenlink" target="rightframe">AppCompatTheme_panelBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_panelMenuListTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_panelMenuListTheme" class="hiddenlink" target="rightframe">AppCompatTheme_panelMenuListTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_panelMenuListWidth -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_panelMenuListWidth" class="hiddenlink" target="rightframe">AppCompatTheme_panelMenuListWidth</A>
+</nobr><br>
+<!-- Field AppCompatTheme_popupMenuStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_popupMenuStyle" class="hiddenlink" target="rightframe">AppCompatTheme_popupMenuStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_popupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_popupWindowStyle" class="hiddenlink" target="rightframe">AppCompatTheme_popupWindowStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_radioButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_radioButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_radioButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_ratingBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_ratingBarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_ratingBarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_ratingBarStyleIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_ratingBarStyleIndicator" class="hiddenlink" target="rightframe">AppCompatTheme_ratingBarStyleIndicator</A>
+</nobr><br>
+<!-- Field AppCompatTheme_ratingBarStyleSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_ratingBarStyleSmall" class="hiddenlink" target="rightframe">AppCompatTheme_ratingBarStyleSmall</A>
+</nobr><br>
+<!-- Field AppCompatTheme_searchViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_searchViewStyle" class="hiddenlink" target="rightframe">AppCompatTheme_searchViewStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_seekBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_seekBarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_seekBarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_selectableItemBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_selectableItemBackground" class="hiddenlink" target="rightframe">AppCompatTheme_selectableItemBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_selectableItemBackgroundBorderless -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_selectableItemBackgroundBorderless" class="hiddenlink" target="rightframe">AppCompatTheme_selectableItemBackgroundBorderless</A>
+</nobr><br>
+<!-- Field AppCompatTheme_spinnerDropDownItemStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_spinnerDropDownItemStyle" class="hiddenlink" target="rightframe">AppCompatTheme_spinnerDropDownItemStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_spinnerStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_spinnerStyle" class="hiddenlink" target="rightframe">AppCompatTheme_spinnerStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_switchStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_switchStyle" class="hiddenlink" target="rightframe">AppCompatTheme_switchStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceLargePopupMenu -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceLargePopupMenu" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceLargePopupMenu</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceListItem -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceListItem" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceListItem</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceListItemSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceListItemSmall" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceListItemSmall</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceSearchResultSubtitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceSearchResultSubtitle" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceSearchResultSubtitle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceSearchResultTitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceSearchResultTitle" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceSearchResultTitle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceSmallPopupMenu -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceSmallPopupMenu" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceSmallPopupMenu</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textColorAlertDialogListItem -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textColorAlertDialogListItem" class="hiddenlink" target="rightframe">AppCompatTheme_textColorAlertDialogListItem</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textColorSearchUrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textColorSearchUrl" class="hiddenlink" target="rightframe">AppCompatTheme_textColorSearchUrl</A>
+</nobr><br>
+<!-- Field AppCompatTheme_toolbarNavigationButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_toolbarNavigationButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_toolbarNavigationButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_toolbarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_toolbarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_toolbarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowActionBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowActionBar" class="hiddenlink" target="rightframe">AppCompatTheme_windowActionBar</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowActionBarOverlay -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowActionBarOverlay" class="hiddenlink" target="rightframe">AppCompatTheme_windowActionBarOverlay</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowActionModeOverlay -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowActionModeOverlay" class="hiddenlink" target="rightframe">AppCompatTheme_windowActionModeOverlay</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowFixedHeightMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedHeightMajor" class="hiddenlink" target="rightframe">AppCompatTheme_windowFixedHeightMajor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowFixedHeightMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedHeightMinor" class="hiddenlink" target="rightframe">AppCompatTheme_windowFixedHeightMinor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowFixedWidthMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedWidthMajor" class="hiddenlink" target="rightframe">AppCompatTheme_windowFixedWidthMajor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowFixedWidthMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedWidthMinor" class="hiddenlink" target="rightframe">AppCompatTheme_windowFixedWidthMinor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowMinWidthMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowMinWidthMajor" class="hiddenlink" target="rightframe">AppCompatTheme_windowMinWidthMajor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowMinWidthMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowMinWidthMinor" class="hiddenlink" target="rightframe">AppCompatTheme_windowMinWidthMinor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowNoTitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowNoTitle" class="hiddenlink" target="rightframe">AppCompatTheme_windowNoTitle</A>
+</nobr><br>
+<!-- Method applyDayNight -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.applyDayNight_added()" class="hiddenlink" target="rightframe"><b>applyDayNight</b>
+()</A></nobr><br>
+<!-- Method applyTheme -->
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.applyTheme_added(android.graphics.drawable.Drawable, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>applyTheme</b>
+(<code>Drawable, Theme</code>)</A></nobr><br>
+<!-- Field Base_Widget_AppCompat_RatingBar_Indicator -->
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_RatingBar_Indicator" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_RatingBar_Indicator</A>
+</nobr><br>
+<!-- Field Base_Widget_AppCompat_RatingBar_Small -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_RatingBar_Small" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_RatingBar_Small</A>
+</nobr><br>
+<!-- Method blendARGB -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.blendARGB_added(int, int, float)" class="hiddenlink" target="rightframe"><b>blendARGB</b>
+(<code>int, int, float</code>)</A></nobr><br>
+<!-- Method blendHSL -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.blendHSL_added(float[], float[], float, float[])" class="hiddenlink" target="rightframe"><b>blendHSL</b>
+(<code>float[], float[], float, float[]</code>)</A></nobr><br>
+<!-- Method blendLAB -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.blendLAB_added(double[], double[], double, double[])" class="hiddenlink" target="rightframe"><b>blendLAB</b>
+(<code>double[], double[], double, double[]</code>)</A></nobr><br>
+<!-- Class BottomSheetBehavior -->
+<A HREF="pkg_android.support.design.widget.html#BottomSheetBehavior" class="hiddenlink" target="rightframe"><b>BottomSheetBehavior</b></A><br>
+<!-- Class BottomSheetBehavior.BottomSheetCallback -->
+<A HREF="pkg_android.support.design.widget.html#BottomSheetBehavior.BottomSheetCallback" class="hiddenlink" target="rightframe"><b>BottomSheetBehavior.BottomSheetCallback</b></A><br>
+<!-- Class BottomSheetBehavior.SavedState -->
+<A HREF="pkg_android.support.design.widget.html#BottomSheetBehavior.SavedState" class="hiddenlink" target="rightframe"><b>BottomSheetBehavior.SavedState</b></A><br>
+<!-- Class BottomSheetDialog -->
+<A HREF="pkg_android.support.design.widget.html#BottomSheetDialog" class="hiddenlink" target="rightframe"><b>BottomSheetDialog</b></A><br>
+<!-- Class BottomSheetDialogFragment -->
+<A HREF="pkg_android.support.design.widget.html#BottomSheetDialogFragment" class="hiddenlink" target="rightframe"><b>BottomSheetDialogFragment</b></A><br>
+<!-- Method canApplyTheme -->
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.canApplyTheme_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><b>canApplyTheme</b>
+(<code>Drawable</code>)</A></nobr><br>
+<!-- Method canReuseUpdatedViewHolder -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.ItemAnimator.html#android.support.v7.widget.RecyclerView.ItemAnimator.canReuseUpdatedViewHolder_added(android.support.v7.widget.RecyclerView.ViewHolder, java.util.List<java.lang.Object>)" class="hiddenlink" target="rightframe"><b>canReuseUpdatedViewHolder</b>
+(<code>ViewHolder, List&lt;Object&gt;</code>)</A></nobr><br>
+<!-- Field CHECKBOX_CHECK_SET_ID -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.CHECKBOX_CHECK_SET_ID" class="hiddenlink" target="rightframe">CHECKBOX_CHECK_SET_ID</A>
+</nobr><br>
+<!-- Method chooseSize -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.chooseSize_added(int, int, int)" class="hiddenlink" target="rightframe"><b>chooseSize</b>
+(<code>int, int, int</code>)</A></nobr><br>
+<!-- Method clearTargets -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.clearTargets_added()" class="hiddenlink" target="rightframe"><b>clearTargets</b>
+()</A></nobr><br>
+<!-- Method collapseSubActions -->
+<i>collapseSubActions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.collapseSubActions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method collapseSubActions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.collapseSubActions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method colorToLAB -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.colorToLAB_added(int, double[])" class="hiddenlink" target="rightframe"><b>colorToLAB</b>
+(<code>int, double[]</code>)</A></nobr><br>
+<!-- Method colorToXYZ -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.colorToXYZ_added(int, double[])" class="hiddenlink" target="rightframe"><b>colorToXYZ</b>
+(<code>int, double[]</code>)</A></nobr><br>
+<!-- Method distanceEuclidean -->
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.distanceEuclidean_added(double[], double[])" class="hiddenlink" target="rightframe"><b>distanceEuclidean</b>
+(<code>double[], double[]</code>)</A></nobr><br>
+<!-- Method expandSubActions -->
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>expandSubActions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.expandSubActions_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method expandSubActions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.expandSubActions_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Field EXTRA_DEFAULT_SHARE_MENU_ITEM -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_DEFAULT_SHARE_MENU_ITEM" class="hiddenlink" target="rightframe">EXTRA_DEFAULT_SHARE_MENU_ITEM</A>
+</nobr><br>
+<!-- Field EXTRA_SECONDARY_TOOLBAR_COLOR -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_SECONDARY_TOOLBAR_COLOR" class="hiddenlink" target="rightframe">EXTRA_SECONDARY_TOOLBAR_COLOR</A>
+</nobr><br>
+<!-- Field EXTRA_TOOLBAR_ITEMS -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_TOOLBAR_ITEMS" class="hiddenlink" target="rightframe">EXTRA_TOOLBAR_ITEMS</A>
+</nobr><br>
+<!-- Method fillMarginLayoutParams -->
+<A NAME="F"></A>
+<br><font size="+2">F</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>fillMarginLayoutParams</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html#android.support.percent.PercentLayoutHelper.PercentLayoutInfo.fillMarginLayoutParams_added(android.view.View, android.view.ViewGroup.MarginLayoutParams, int, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, MarginLayoutParams, int, int</code>)</b>&nbsp;in&nbsp;android.support.percent.PercentLayoutHelper.PercentLayoutInfo
+</A></nobr><br>
+<!-- Method fillMarginLayoutParams -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html#android.support.percent.PercentLayoutHelper.PercentLayoutInfo.fillMarginLayoutParams_added(android.view.ViewGroup.MarginLayoutParams, int, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>MarginLayoutParams, int, int</code>)</b>&nbsp;in&nbsp;android.support.percent.PercentLayoutHelper.PercentLayoutInfo
+</A></nobr><br>
+<!-- Method findActionById -->
+<i>findActionById</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.findActionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method findActionById -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.findActionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method findActionPositionById -->
+<i>findActionPositionById</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.findActionPositionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method findActionPositionById -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.findActionPositionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method findButtonActionById -->
+<i>findButtonActionById</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.findButtonActionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method findButtonActionById -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.findButtonActionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method findButtonActionPositionById -->
+<i>findButtonActionPositionById</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.findButtonActionPositionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method findButtonActionPositionById -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.findButtonActionPositionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method findContainingItemView -->
+<i>findContainingItemView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.widget.RecyclerView.html#android.support.v7.widget.RecyclerView.findContainingItemView_added(android.view.View)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View</code>)</b>&nbsp;in&nbsp;android.support.v7.widget.RecyclerView
+</A></nobr><br>
+<!-- Method findContainingItemView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.findContainingItemView_added(android.view.View)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View</code>)</b>&nbsp;in&nbsp;android.support.v7.widget.RecyclerView.LayoutManager
+</A></nobr><br>
+<!-- Method findContainingViewHolder -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.html#android.support.v7.widget.RecyclerView.findContainingViewHolder_added(android.view.View)" class="hiddenlink" target="rightframe"><b>findContainingViewHolder</b>
+(<code>View</code>)</A></nobr><br>
+<!-- Method finishGuidedStepFragments -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.finishGuidedStepFragments_added()" class="hiddenlink" target="rightframe"><b>finishGuidedStepFragments</b>
+()</A></nobr><br>
+<!-- Method finishGuidedStepSupportFragments -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.finishGuidedStepSupportFragments_added()" class="hiddenlink" target="rightframe"><b>finishGuidedStepSupportFragments</b>
+()</A></nobr><br>
+<!-- Method getAction -->
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getAction_added()" class="hiddenlink" target="rightframe"><b>getAction</b>
+()</A></nobr><br>
+<!-- Method getAlpha -->
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.getAlpha_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><b>getAlpha</b>
+(<code>Drawable</code>)</A></nobr><br>
+<!-- Method getButtonActionItemView -->
+<i>getButtonActionItemView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getButtonActionItemView_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method getButtonActionItemView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.getButtonActionItemView_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method getButtonActions -->
+<i>getButtonActions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getButtonActions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method getButtonActions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.getButtonActions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method getChildMeasureSpec -->
+<i>getChildMeasureSpec</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.getChildMeasureSpec_added(int, int, int, int, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, int, int, int, boolean</code>)</b>&nbsp;in&nbsp;android.support.v7.widget.RecyclerView.LayoutManager
+</A></nobr><br>
+<!-- Method getChildMeasureSpec -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.getChildMeasureSpec_added(int, int, int, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, int, int, boolean</code>)</b>&nbsp;in&nbsp;android.support.v7.widget.RecyclerView.LayoutManager
+</A></nobr><br>
+<!-- Method getColorFilter -->
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.getColorFilter_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><b>getColorFilter</b>
+(<code>Drawable</code>)</A></nobr><br>
+<!-- Method getColorForTarget -->
+<nobr><A HREF="android.support.v7.graphics.Palette.html#android.support.v7.graphics.Palette.getColorForTarget_added(android.support.v7.graphics.Target, int)" class="hiddenlink" target="rightframe"><b>getColorForTarget</b>
+(<code>Target, int</code>)</A></nobr><br>
+<!-- Method getCompatElevation -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.getCompatElevation_added()" class="hiddenlink" target="rightframe"><b>getCompatElevation</b>
+()</A></nobr><br>
+<!-- Method getContentBackground -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.getContentBackground_added()" class="hiddenlink" target="rightframe"><b>getContentBackground</b>
+()</A></nobr><br>
+<!-- Method getContentRect -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.getContentRect_added(android.graphics.Rect)" class="hiddenlink" target="rightframe"><b>getContentRect</b>
+(<code>Rect</code>)</A></nobr><br>
+<!-- Method getDefaultNightMode -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.getDefaultNightMode_added()" class="hiddenlink" target="rightframe"><b>getDefaultNightMode</b>
+()</A></nobr><br>
+<!-- Method getDescriptionEditInputType -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getDescriptionEditInputType_added()" class="hiddenlink" target="rightframe"><b>getDescriptionEditInputType</b>
+()</A></nobr><br>
+<!-- Method getDescriptionInputType -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getDescriptionInputType_added()" class="hiddenlink" target="rightframe"><b>getDescriptionInputType</b>
+()</A></nobr><br>
+<!-- Method getEditableDescriptionView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditableDescriptionView_added()" class="hiddenlink" target="rightframe"><b>getEditableDescriptionView</b>
+()</A></nobr><br>
+<!-- Method getEditDescription -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getEditDescription_added()" class="hiddenlink" target="rightframe"><b>getEditDescription</b>
+()</A></nobr><br>
+<!-- Method getEditingView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditingView_added()" class="hiddenlink" target="rightframe"><b>getEditingView</b>
+()</A></nobr><br>
+<!-- Method getEditInputType -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getEditInputType_added()" class="hiddenlink" target="rightframe"><b>getEditInputType</b>
+()</A></nobr><br>
+<!-- Method getExpandedAction -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.getExpandedAction_added()" class="hiddenlink" target="rightframe"><b>getExpandedAction</b>
+()</A></nobr><br>
+<!-- Method getExpandedTitleMarginBottom -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginBottom_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleMarginBottom</b>
+()</A></nobr><br>
+<!-- Method getExpandedTitleMarginEnd -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginEnd_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleMarginEnd</b>
+()</A></nobr><br>
+<!-- Method getExpandedTitleMarginStart -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginStart_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleMarginStart</b>
+()</A></nobr><br>
+<!-- Method getExpandedTitleMarginTop -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginTop_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleMarginTop</b>
+()</A></nobr><br>
+<!-- Method getFactory -->
+<nobr><A HREF="android.support.v4.view.LayoutInflaterCompat.html#android.support.v4.view.LayoutInflaterCompat.getFactory_added(android.view.LayoutInflater)" class="hiddenlink" target="rightframe"><b>getFactory</b>
+(<code>LayoutInflater</code>)</A></nobr><br>
+<!-- Method getGuidedButtonActionsStylist -->
+<i>getGuidedButtonActionsStylist</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getGuidedButtonActionsStylist_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method getGuidedButtonActionsStylist -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.getGuidedButtonActionsStylist_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method getHeadersFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.getHeadersFragment_added()" class="hiddenlink" target="rightframe"><b>getHeadersFragment</b>
+()</A></nobr><br>
+<!-- Method getHeadersSupportFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.getHeadersSupportFragment_added()" class="hiddenlink" target="rightframe"><b>getHeadersSupportFragment</b>
+()</A></nobr><br>
+<!-- Method getHeightMode -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.getHeightMode_added()" class="hiddenlink" target="rightframe"><b>getHeightMode</b>
+()</A></nobr><br>
+<!-- Method getInputType -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getInputType_added()" class="hiddenlink" target="rightframe"><b>getInputType</b>
+()</A></nobr><br>
+<!-- Method getItemViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.html#android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.getItemViewHolder_added(int)" class="hiddenlink" target="rightframe"><b>getItemViewHolder</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method getItemViewType -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.getItemViewType_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>getItemViewType</b>
+(<code>GuidedAction</code>)</A></nobr><br>
+<!-- Method getMaxToolbarItems -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.getMaxToolbarItems_added()" class="hiddenlink" target="rightframe"><b>getMaxToolbarItems</b>
+()</A></nobr><br>
+<!-- Method getMode -->
+<nobr><A HREF="android.support.v7.widget.OrientationHelper.html#android.support.v7.widget.OrientationHelper.getMode_added()" class="hiddenlink" target="rightframe"><b>getMode</b>
+()</A></nobr><br>
+<!-- Method getModeInOther -->
+<nobr><A HREF="android.support.v7.widget.OrientationHelper.html#android.support.v7.widget.OrientationHelper.getModeInOther_added()" class="hiddenlink" target="rightframe"><b>getModeInOther</b>
+()</A></nobr><br>
+<!-- Method getOverlayTop -->
+<nobr><A HREF="android.support.design.widget.HeaderScrollingViewBehavior.html#android.support.design.widget.HeaderScrollingViewBehavior.getOverlayTop_added()" class="hiddenlink" target="rightframe"><b>getOverlayTop</b>
+()</A></nobr><br>
+<!-- Method getParentPresenter -->
+<nobr><A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html#android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.getParentPresenter_added()" class="hiddenlink" target="rightframe"><b>getParentPresenter</b>
+()</A></nobr><br>
+<!-- Method getParentViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html#android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.getParentViewHolder_added()" class="hiddenlink" target="rightframe"><b>getParentViewHolder</b>
+()</A></nobr><br>
+<!-- Method getRowsFragment -->
+<i>getRowsFragment</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.getRowsFragment_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method getRowsFragment -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.getRowsFragment_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method getRowsSupportFragment -->
+<i>getRowsSupportFragment</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.getRowsSupportFragment_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method getRowsSupportFragment -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.getRowsSupportFragment_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method getRowViewHolder -->
+<i>getRowViewHolder</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.RowsFragment.html#android.support.v17.leanback.app.RowsFragment.getRowViewHolder_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.RowsFragment
+</A></nobr><br>
+<!-- Method getRowViewHolder -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.RowsSupportFragment.html#android.support.v17.leanback.app.RowsSupportFragment.getRowViewHolder_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.RowsSupportFragment
+</A></nobr><br>
+<!-- Method getSelectedButtonActionPosition -->
+<i>getSelectedButtonActionPosition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getSelectedButtonActionPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method getSelectedButtonActionPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.getSelectedButtonActionPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method getSelectedPosition -->
+<i>getSelectedPosition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BaseRowFragment.html#android.support.v17.leanback.app.BaseRowFragment.getSelectedPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BaseRowFragment
+</A></nobr><br>
+<!-- Method getSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BaseRowSupportFragment.html#android.support.v17.leanback.app.BaseRowSupportFragment.getSelectedPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BaseRowSupportFragment
+</A></nobr><br>
+<!-- Method getSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.getSelectedPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method getSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.getSelectedPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method getSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.html#android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.getSelectedPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.ListRowPresenter.ViewHolder
+</A></nobr><br>
+<!-- Method getSubActions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getSubActions_added()" class="hiddenlink" target="rightframe"><b>getSubActions</b>
+()</A></nobr><br>
+<!-- Method getSubActionsGridView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.getSubActionsGridView_added()" class="hiddenlink" target="rightframe"><b>getSubActionsGridView</b>
+()</A></nobr><br>
+<!-- Method getSwatchForTarget -->
+<nobr><A HREF="android.support.v7.graphics.Palette.html#android.support.v7.graphics.Palette.getSwatchForTarget_added(android.support.v7.graphics.Target)" class="hiddenlink" target="rightframe"><b>getSwatchForTarget</b>
+(<code>Target</code>)</A></nobr><br>
+<!-- Method getSwipeEscapeVelocity -->
+<nobr><A HREF="android.support.v7.widget.helper.ItemTouchHelper.Callback.html#android.support.v7.widget.helper.ItemTouchHelper.Callback.getSwipeEscapeVelocity_added(float)" class="hiddenlink" target="rightframe"><b>getSwipeEscapeVelocity</b>
+(<code>float</code>)</A></nobr><br>
+<!-- Method getSwipeVelocityThreshold -->
+<nobr><A HREF="android.support.v7.widget.helper.ItemTouchHelper.Callback.html#android.support.v7.widget.helper.ItemTouchHelper.Callback.getSwipeVelocityThreshold_added(float)" class="hiddenlink" target="rightframe"><b>getSwipeVelocityThreshold</b>
+(<code>float</code>)</A></nobr><br>
+<!-- Method getTargets -->
+<nobr><A HREF="android.support.v7.graphics.Palette.html#android.support.v7.graphics.Palette.getTargets_added()" class="hiddenlink" target="rightframe"><b>getTargets</b>
+()</A></nobr><br>
+<!-- Method getUseCompatPadding -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.getUseCompatPadding_added()" class="hiddenlink" target="rightframe"><b>getUseCompatPadding</b>
+()</A></nobr><br>
+<!-- Method getWidthMode -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.getWidthMode_added()" class="hiddenlink" target="rightframe"><b>getWidthMode</b>
+()</A></nobr><br>
+<!-- Constructor GuidedAction -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ctor_added()" class="hiddenlink" target="rightframe"><b>GuidedAction</b>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor GuidedAction.Builder -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.ctor_added(android.content.Context)" class="hiddenlink" target="rightframe"><b>GuidedAction.Builder</b>
+(<code>Context</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Class GuidedAction.BuilderBase -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedAction.BuilderBase" class="hiddenlink" target="rightframe"><b>GuidedAction.BuilderBase</b></A><br>
+<!-- Constructor GuidedActionsStylist.ViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.ctor_added(android.view.View, boolean)" class="hiddenlink" target="rightframe"><b>GuidedActionsStylist.ViewHolder</b>
+(<code>View, boolean</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Class GuidedDatePickerAction -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedDatePickerAction" class="hiddenlink" target="rightframe"><b>GuidedDatePickerAction</b></A><br>
+<!-- Class GuidedDatePickerAction.Builder -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedDatePickerAction.Builder" class="hiddenlink" target="rightframe"><b>GuidedDatePickerAction.Builder</b></A><br>
+<!-- Class GuidedDatePickerAction.BuilderBase -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedDatePickerAction.BuilderBase" class="hiddenlink" target="rightframe"><b>GuidedDatePickerAction.BuilderBase</b></A><br>
+<!-- Method hasEditableActivatorView -->
+<A NAME="H"></A>
+<br><font size="+2">H</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.hasEditableActivatorView_added()" class="hiddenlink" target="rightframe"><b>hasEditableActivatorView</b>
+()</A></nobr><br>
+<!-- Method hasSubActions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.hasSubActions_added()" class="hiddenlink" target="rightframe"><b>hasSubActions</b>
+()</A></nobr><br>
+<!-- Method hasTextEditable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.hasTextEditable_added()" class="hiddenlink" target="rightframe"><b>hasTextEditable</b>
+()</A></nobr><br>
+<!-- Method inflate -->
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.inflate_added(android.graphics.drawable.Drawable, android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>inflate</b>
+(<code>Drawable, Resources, XmlPullParser, AttributeSet, Theme</code>)</A></nobr><br>
+<!-- Method isAutoMeasureEnabled -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.isAutoMeasureEnabled_added()" class="hiddenlink" target="rightframe"><b>isAutoMeasureEnabled</b>
+()</A></nobr><br>
+<!-- Method isButtonActions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.isButtonActions_added()" class="hiddenlink" target="rightframe"><b>isButtonActions</b>
+()</A></nobr><br>
+<!-- Method isCounterEnabled -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.isCounterEnabled_added()" class="hiddenlink" target="rightframe"><b>isCounterEnabled</b>
+()</A></nobr><br>
+<!-- Method isDescriptionEditable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isDescriptionEditable_added()" class="hiddenlink" target="rightframe"><b>isDescriptionEditable</b>
+()</A></nobr><br>
+<!-- Method isDividerAllowedAbove -->
+<nobr><A HREF="android.support.v7.preference.PreferenceViewHolder.html#android.support.v7.preference.PreferenceViewHolder.isDividerAllowedAbove_added()" class="hiddenlink" target="rightframe"><b>isDividerAllowedAbove</b>
+()</A></nobr><br>
+<!-- Method isDividerAllowedBelow -->
+<nobr><A HREF="android.support.v7.preference.PreferenceViewHolder.html#android.support.v7.preference.PreferenceViewHolder.isDividerAllowedBelow_added()" class="hiddenlink" target="rightframe"><b>isDividerAllowedBelow</b>
+()</A></nobr><br>
+<!-- Method isExpandTransitionSupported -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.isExpandTransitionSupported_added()" class="hiddenlink" target="rightframe"><b>isExpandTransitionSupported</b>
+()</A></nobr><br>
+<!-- Method isFocusable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isFocusable_added()" class="hiddenlink" target="rightframe"><b>isFocusable</b>
+()</A></nobr><br>
+<!-- Method isFocusOutEndAllowed -->
+<i>isFocusOutEndAllowed</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.isFocusOutEndAllowed_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method isFocusOutEndAllowed -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.isFocusOutEndAllowed_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method isFocusOutStartAllowed -->
+<i>isFocusOutStartAllowed</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.isFocusOutStartAllowed_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method isFocusOutStartAllowed -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.isFocusOutStartAllowed_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method isHintEnabled -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.isHintEnabled_added()" class="hiddenlink" target="rightframe"><b>isHintEnabled</b>
+()</A></nobr><br>
+<!-- Method isInEditing -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditing_added()" class="hiddenlink" target="rightframe"><b>isInEditing</b>
+()</A></nobr><br>
+<!-- Method isInEditingActivatorView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingActivatorView_added()" class="hiddenlink" target="rightframe"><b>isInEditingActivatorView</b>
+()</A></nobr><br>
+<!-- Method isInEditingDescription -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingDescription_added()" class="hiddenlink" target="rightframe"><b>isInEditingDescription</b>
+()</A></nobr><br>
+<!-- Method isInEditingText -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingText_added()" class="hiddenlink" target="rightframe"><b>isInEditingText</b>
+()</A></nobr><br>
+<!-- Method isInEditingTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingTitle_added()" class="hiddenlink" target="rightframe"><b>isInEditingTitle</b>
+()</A></nobr><br>
+<!-- Method isInExpandTransition -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.isInExpandTransition_added()" class="hiddenlink" target="rightframe"><b>isInExpandTransition</b>
+()</A></nobr><br>
+<!-- Method isMeasurementCacheEnabled -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.isMeasurementCacheEnabled_added()" class="hiddenlink" target="rightframe"><b>isMeasurementCacheEnabled</b>
+()</A></nobr><br>
+<!-- Method isMeasuring -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.State.html#android.support.v7.widget.RecyclerView.State.isMeasuring_added()" class="hiddenlink" target="rightframe"><b>isMeasuring</b>
+()</A></nobr><br>
+<!-- Method isSizeFromDrawableIntrinsic -->
+<nobr><A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html#android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.isSizeFromDrawableIntrinsic_added()" class="hiddenlink" target="rightframe"><b>isSizeFromDrawableIntrinsic</b>
+()</A></nobr><br>
+<!-- Method isSubAction -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isSubAction_added()" class="hiddenlink" target="rightframe"><b>isSubAction</b>
+()</A></nobr><br>
+<!-- Method isSubActionsExpanded -->
+<i>isSubActionsExpanded</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.isSubActionsExpanded_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method isSubActionsExpanded -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.isSubActionsExpanded_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method isSubActionsExpanded -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.isSubActionsExpanded_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Field item_touch_helper_swipe_escape_max_velocity -->
+<nobr><A HREF="android.support.v7.recyclerview.R.dimen.html#android.support.v7.recyclerview.R.dimen.item_touch_helper_swipe_escape_max_velocity" class="hiddenlink" target="rightframe">item_touch_helper_swipe_escape_max_velocity</A>
+</nobr><br>
+<!-- Field item_touch_helper_swipe_escape_velocity -->
+<nobr><A HREF="android.support.v7.recyclerview.R.dimen.html#android.support.v7.recyclerview.R.dimen.item_touch_helper_swipe_escape_velocity" class="hiddenlink" target="rightframe">item_touch_helper_swipe_escape_velocity</A>
+</nobr><br>
+<!-- Field KEY_ID -->
+<A NAME="K"></A>
+<br><font size="+2">K</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.KEY_ID" class="hiddenlink" target="rightframe">KEY_ID</A>
+</nobr><br>
+<!-- Method LABToColor -->
+<A NAME="L"></A>
+<br><font size="+2">L</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.LABToColor_added(double, double, double)" class="hiddenlink" target="rightframe"><b>LABToColor</b>
+(<code>double, double, double</code>)</A></nobr><br>
+<!-- Method LABToXYZ -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.LABToXYZ_added(double, double, double, double[])" class="hiddenlink" target="rightframe"><b>LABToXYZ</b>
+(<code>double, double, double, double[]</code>)</A></nobr><br>
+<!-- Method layoutChild -->
+<i>layoutChild</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.HeaderScrollingViewBehavior.html#android.support.design.widget.HeaderScrollingViewBehavior.layoutChild_added(android.support.design.widget.CoordinatorLayout, android.view.View, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CoordinatorLayout, View, int</code>)</b>&nbsp;in&nbsp;android.support.design.widget.HeaderScrollingViewBehavior
+</A></nobr><br>
+<!-- Method layoutChild -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.ViewOffsetBehavior.html#android.support.design.widget.ViewOffsetBehavior.layoutChild_added(android.support.design.widget.CoordinatorLayout, V, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CoordinatorLayout, V, int</code>)</b>&nbsp;in&nbsp;android.support.design.widget.ViewOffsetBehavior
+</A></nobr><br>
+<!-- Class ListRowPresenter.SelectItemViewHolderTask -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ListRowPresenter.SelectItemViewHolderTask" class="hiddenlink" target="rightframe"><b>ListRowPresenter.SelectItemViewHolderTask</b></A><br>
+<!-- Class ListViewCompat -->
+<A HREF="pkg_android.support.v4.widget.html#ListViewCompat" class="hiddenlink" target="rightframe"><b>ListViewCompat</b></A><br>
+<!-- Field LOCK_MODE_UNDEFINED -->
+<nobr><A HREF="android.support.v4.widget.DrawerLayout.html#android.support.v4.widget.DrawerLayout.LOCK_MODE_UNDEFINED" class="hiddenlink" target="rightframe">LOCK_MODE_UNDEFINED</A>
+</nobr><br>
+<!-- Class MediaBrowserCompat -->
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat</b></A><br>
+<!-- Class MediaBrowserCompat.ConnectionCallback -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.ConnectionCallback" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.ConnectionCallback</b></A><br>
+<!-- Class MediaBrowserCompat.ItemCallback -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.ItemCallback" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.ItemCallback</b></A><br>
+<!-- Class MediaBrowserCompat.MediaItem -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.MediaItem" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.MediaItem</b></A><br>
+<!-- Class MediaBrowserCompat.SubscriptionCallback -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.SubscriptionCallback" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.SubscriptionCallback</b></A><br>
+<!-- Class MediaBrowserServiceCompat -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserServiceCompat" class="hiddenlink" target="rightframe"><b>MediaBrowserServiceCompat</b></A><br>
+<!-- Class MediaBrowserServiceCompat.BrowserRoot -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserServiceCompat.BrowserRoot" class="hiddenlink" target="rightframe"><b>MediaBrowserServiceCompat.BrowserRoot</b></A><br>
+<!-- Class MediaBrowserServiceCompat.Result -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserServiceCompat.Result" class="hiddenlink" target="rightframe"><b>MediaBrowserServiceCompat.Result</b></A><br>
+<!-- Field MODE_NIGHT_AUTO -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.MODE_NIGHT_AUTO" class="hiddenlink" target="rightframe">MODE_NIGHT_AUTO</A>
+</nobr><br>
+<!-- Field MODE_NIGHT_FOLLOW_SYSTEM -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM" class="hiddenlink" target="rightframe">MODE_NIGHT_FOLLOW_SYSTEM</A>
+</nobr><br>
+<!-- Field MODE_NIGHT_NO -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.MODE_NIGHT_NO" class="hiddenlink" target="rightframe">MODE_NIGHT_NO</A>
+</nobr><br>
+<!-- Field MODE_NIGHT_YES -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.MODE_NIGHT_YES" class="hiddenlink" target="rightframe">MODE_NIGHT_YES</A>
+</nobr><br>
+<!-- Method notifyActionChanged -->
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>notifyActionChanged</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.notifyActionChanged_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method notifyActionChanged -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.notifyActionChanged_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method notifyButtonActionChanged -->
+<i>notifyButtonActionChanged</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.notifyButtonActionChanged_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method notifyButtonActionChanged -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.notifyButtonActionChanged_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onAddSharedElementTransition -->
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>onAddSharedElementTransition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onAddSharedElementTransition_added(android.app.FragmentTransaction, android.support.v17.leanback.app.GuidedStepFragment)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>FragmentTransaction, GuidedStepFragment</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onAddSharedElementTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onAddSharedElementTransition_added(android.support.v4.app.FragmentTransaction, android.support.v17.leanback.app.GuidedStepSupportFragment)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>FragmentTransaction, GuidedStepSupportFragment</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onAnimateItemPressedCancelled -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onAnimateItemPressedCancelled_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" class="hiddenlink" target="rightframe"><b>onAnimateItemPressedCancelled</b>
+(<code>ViewHolder</code>)</A></nobr><br>
+<!-- Method onBindActivatorView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onBindActivatorView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onBindActivatorView</b>
+(<code>ViewHolder, GuidedAction</code>)</A></nobr><br>
+<!-- Method onBindCheckMarkView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onBindCheckMarkView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onBindCheckMarkView</b>
+(<code>ViewHolder, GuidedAction</code>)</A></nobr><br>
+<!-- Method onBindChevronView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onBindChevronView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onBindChevronView</b>
+(<code>ViewHolder, GuidedAction</code>)</A></nobr><br>
+<!-- Method onCreateBackgroundView -->
+<i>onCreateBackgroundView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onCreateBackgroundView_added(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>LayoutInflater, ViewGroup, Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onCreateBackgroundView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onCreateBackgroundView_added(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>LayoutInflater, ViewGroup, Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onCreateButtonActions -->
+<i>onCreateButtonActions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onCreateButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;GuidedAction&gt;, Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onCreateButtonActions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onCreateButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;GuidedAction&gt;, Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onCreateButtonActionsStylist -->
+<i>onCreateButtonActionsStylist</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onCreateButtonActionsStylist_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onCreateButtonActionsStylist -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onCreateButtonActionsStylist_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onCreateView -->
+<nobr><A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.html#android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.onCreateView_added(android.view.ViewGroup)" class="hiddenlink" target="rightframe"><b>onCreateView</b>
+(<code>ViewGroup</code>)</A></nobr><br>
+<!-- Method onCreateViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onCreateViewHolder_added(android.view.ViewGroup, int)" class="hiddenlink" target="rightframe"><b>onCreateViewHolder</b>
+(<code>ViewGroup, int</code>)</A></nobr><br>
+<!-- Method onDestroyView -->
+<i>onDestroyView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onDestroyView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onEditingModeChange -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onEditingModeChange_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction, boolean)" class="hiddenlink" target="rightframe"><b>onEditingModeChange</b>
+(<code>ViewHolder, GuidedAction, boolean</code>)</A></nobr><br>
+<!-- Method onGuidedActionEditedAndProceed -->
+<i>onGuidedActionEditedAndProceed</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onGuidedActionEditedAndProceed_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onGuidedActionEditedAndProceed -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onGuidedActionEditedAndProceed_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onProvideItemLayoutId -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onProvideItemLayoutId_added(int)" class="hiddenlink" target="rightframe"><b>onProvideItemLayoutId</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method onRouteUnselected -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.Callback.html#android.support.v7.media.MediaRouter.Callback.onRouteUnselected_added(android.support.v7.media.MediaRouter, android.support.v7.media.MediaRouter.RouteInfo, int)" class="hiddenlink" target="rightframe"><b>onRouteUnselected</b>
+(<code>MediaRouter, RouteInfo, int</code>)</A></nobr><br>
+<!-- Method onSaveInstanceState -->
+<i>onSaveInstanceState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.onSaveInstanceState_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.design.widget.TextInputLayout
+</A></nobr><br>
+<!-- Method onSaveInstanceState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.onSaveInstanceState_added(android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bundle</code>)</b>&nbsp;in&nbsp;android.support.v7.app.AppCompatDelegate
+</A></nobr><br>
+<!-- Method onStartActivityFromFragment -->
+<nobr><A HREF="android.support.v4.app.FragmentHostCallback.html#android.support.v4.app.FragmentHostCallback.onStartActivityFromFragment_added(android.support.v4.app.Fragment, android.content.Intent, int, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>onStartActivityFromFragment</b>
+(<code>Fragment, Intent, int, Bundle</code>)</A></nobr><br>
+<!-- Method onSubGuidedActionClicked -->
+<i>onSubGuidedActionClicked</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onSubGuidedActionClicked_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onSubGuidedActionClicked -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onSubGuidedActionClicked_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onUpdateActivatorView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onUpdateActivatorView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onUpdateActivatorView</b>
+(<code>ViewHolder, GuidedAction</code>)</A></nobr><br>
+<!-- Method onUpdateExpandedViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onUpdateExpandedViewHolder_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" class="hiddenlink" target="rightframe"><b>onUpdateExpandedViewHolder</b>
+(<code>ViewHolder</code>)</A></nobr><br>
+<!-- Method popBackStackToGuidedStepFragment -->
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.popBackStackToGuidedStepFragment_added(java.lang.Class, int)" class="hiddenlink" target="rightframe"><b>popBackStackToGuidedStepFragment</b>
+(<code>Class, int</code>)</A></nobr><br>
+<!-- Method popBackStackToGuidedStepSupportFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.popBackStackToGuidedStepSupportFragment_added(java.lang.Class, int)" class="hiddenlink" target="rightframe"><b>popBackStackToGuidedStepSupportFragment</b>
+(<code>Class, int</code>)</A></nobr><br>
+<!-- Class Presenter.ViewHolderTask -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#Presenter.ViewHolderTask" class="hiddenlink" target="rightframe"><b>Presenter.ViewHolderTask</b></A><br>
+<!-- Field ratingBarStyleIndicator -->
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.ratingBarStyleIndicator" class="hiddenlink" target="rightframe">ratingBarStyleIndicator</A>
+</nobr><br>
+<!-- Field ratingBarStyleSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.ratingBarStyleSmall" class="hiddenlink" target="rightframe">ratingBarStyleSmall</A>
+</nobr><br>
+<!-- Method removeDrawerListener -->
+<nobr><A HREF="android.support.v4.widget.DrawerLayout.html#android.support.v4.widget.DrawerLayout.removeDrawerListener_added(android.support.v4.widget.DrawerLayout.DrawerListener)" class="hiddenlink" target="rightframe"><b>removeDrawerListener</b>
+(<code>DrawerListener</code>)</A></nobr><br>
+<!-- Method resizeBitmapArea -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.resizeBitmapArea_added(int)" class="hiddenlink" target="rightframe"><b>resizeBitmapArea</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method RGBToLAB -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.RGBToLAB_added(int, int, int, double[])" class="hiddenlink" target="rightframe"><b>RGBToLAB</b>
+(<code>int, int, int, double[]</code>)</A></nobr><br>
+<!-- Method RGBToXYZ -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.RGBToXYZ_added(int, int, int, double[])" class="hiddenlink" target="rightframe"><b>RGBToXYZ</b>
+(<code>int, int, int, double[]</code>)</A></nobr><br>
+<!-- Method setAsButtonActions -->
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.setAsButtonActions_added()" class="hiddenlink" target="rightframe"><b>setAsButtonActions</b>
+()</A></nobr><br>
+<!-- Method setAutoMeasureEnabled -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.setAutoMeasureEnabled_added(boolean)" class="hiddenlink" target="rightframe"><b>setAutoMeasureEnabled</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setButtonActions -->
+<i>setButtonActions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;GuidedAction&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method setButtonActions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.setButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;GuidedAction&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method setCompatElevation -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.setCompatElevation_added(float)" class="hiddenlink" target="rightframe"><b>setCompatElevation</b>
+(<code>float</code>)</A></nobr><br>
+<!-- Method setDefaultNightMode -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.setDefaultNightMode_added(int)" class="hiddenlink" target="rightframe"><b>setDefaultNightMode</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setDivider -->
+<i>setDivider</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v14.preference.PreferenceFragment.html#android.support.v14.preference.PreferenceFragment.setDivider_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Drawable</code>)</b>&nbsp;in&nbsp;android.support.v14.preference.PreferenceFragment
+</A></nobr><br>
+<!-- Method setDivider -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.preference.PreferenceFragmentCompat.html#android.support.v7.preference.PreferenceFragmentCompat.setDivider_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Drawable</code>)</b>&nbsp;in&nbsp;android.support.v7.preference.PreferenceFragmentCompat
+</A></nobr><br>
+<!-- Method setDividerAllowedAbove -->
+<nobr><A HREF="android.support.v7.preference.PreferenceViewHolder.html#android.support.v7.preference.PreferenceViewHolder.setDividerAllowedAbove_added(boolean)" class="hiddenlink" target="rightframe"><b>setDividerAllowedAbove</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setDividerAllowedBelow -->
+<nobr><A HREF="android.support.v7.preference.PreferenceViewHolder.html#android.support.v7.preference.PreferenceViewHolder.setDividerAllowedBelow_added(boolean)" class="hiddenlink" target="rightframe"><b>setDividerAllowedBelow</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setDividerHeight -->
+<i>setDividerHeight</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v14.preference.PreferenceFragment.html#android.support.v14.preference.PreferenceFragment.setDividerHeight_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v14.preference.PreferenceFragment
+</A></nobr><br>
+<!-- Method setDividerHeight -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.preference.PreferenceFragmentCompat.html#android.support.v7.preference.PreferenceFragmentCompat.setDividerHeight_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v7.preference.PreferenceFragmentCompat
+</A></nobr><br>
+<!-- Method setEditDescription -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setEditDescription_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setEditDescription</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<!-- Method setEditingMode -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.setEditingMode_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction, boolean)" class="hiddenlink" target="rightframe"><b>setEditingMode</b>
+(<code>ViewHolder, GuidedAction, boolean</code>)</A></nobr><br>
+<!-- Method setExpandedTitleMargin -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMargin_added(int, int, int, int)" class="hiddenlink" target="rightframe"><b>setExpandedTitleMargin</b>
+(<code>int, int, int, int</code>)</A></nobr><br>
+<!-- Method setExpandedTitleMarginBottom -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginBottom_added(int)" class="hiddenlink" target="rightframe"><b>setExpandedTitleMarginBottom</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setExpandedTitleMarginEnd -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginEnd_added(int)" class="hiddenlink" target="rightframe"><b>setExpandedTitleMarginEnd</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setExpandedTitleMarginStart -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginStart_added(int)" class="hiddenlink" target="rightframe"><b>setExpandedTitleMarginStart</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setExpandedTitleMarginTop -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginTop_added(int)" class="hiddenlink" target="rightframe"><b>setExpandedTitleMarginTop</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setExpandedViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.setExpandedViewHolder_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" class="hiddenlink" target="rightframe"><b>setExpandedViewHolder</b>
+(<code>ViewHolder</code>)</A></nobr><br>
+<!-- Method setFocusable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setFocusable_added(boolean)" class="hiddenlink" target="rightframe"><b>setFocusable</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setHintEnabled -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.setHintEnabled_added(boolean)" class="hiddenlink" target="rightframe"><b>setHintEnabled</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setIntent -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setIntent_added(android.content.Intent)" class="hiddenlink" target="rightframe"><b>setIntent</b>
+(<code>Intent</code>)</A></nobr><br>
+<!-- Method setLocalNightMode -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.setLocalNightMode_added(int)" class="hiddenlink" target="rightframe"><b>setLocalNightMode</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setMeasuredDimension -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.setMeasuredDimension_added(android.graphics.Rect, int, int)" class="hiddenlink" target="rightframe"><b>setMeasuredDimension</b>
+(<code>Rect, int, int</code>)</A></nobr><br>
+<!-- Method setMeasurementCacheEnabled -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.setMeasurementCacheEnabled_added(boolean)" class="hiddenlink" target="rightframe"><b>setMeasurementCacheEnabled</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setOverlayTop -->
+<nobr><A HREF="android.support.design.widget.HeaderScrollingViewBehavior.html#android.support.design.widget.HeaderScrollingViewBehavior.setOverlayTop_added(int)" class="hiddenlink" target="rightframe"><b>setOverlayTop</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setSecondaryToolbarColor -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.setSecondaryToolbarColor_added(int)" class="hiddenlink" target="rightframe"><b>setSecondaryToolbarColor</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setSelectedButtonActionPosition -->
+<i>setSelectedButtonActionPosition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setSelectedButtonActionPosition_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method setSelectedButtonActionPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.setSelectedButtonActionPosition_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method setSelectedPosition -->
+<i>setSelectedPosition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, boolean, ViewHolderTask</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method setSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, boolean, ViewHolderTask</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method setSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.RowsFragment.html#android.support.v17.leanback.app.RowsFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, boolean, ViewHolderTask</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.RowsFragment
+</A></nobr><br>
+<!-- Method setSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.RowsSupportFragment.html#android.support.v17.leanback.app.RowsSupportFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, boolean, ViewHolderTask</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.RowsSupportFragment
+</A></nobr><br>
+<!-- Method setShouldUseGeneratedIds -->
+<nobr><A HREF="android.support.v7.preference.PreferenceScreen.html#android.support.v7.preference.PreferenceScreen.setShouldUseGeneratedIds_added(boolean)" class="hiddenlink" target="rightframe"><b>setShouldUseGeneratedIds</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setSizeFromDrawableIntrinsic -->
+<nobr><A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html#android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.setSizeFromDrawableIntrinsic_added(boolean)" class="hiddenlink" target="rightframe"><b>setSizeFromDrawableIntrinsic</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setSubActions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setSubActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>)" class="hiddenlink" target="rightframe"><b>setSubActions</b>
+(<code>List&lt;GuidedAction&gt;</code>)</A></nobr><br>
+<!-- Method setTextAppearance -->
+<nobr><A HREF="android.support.v4.widget.TextViewCompat.html#android.support.v4.widget.TextViewCompat.setTextAppearance_added(android.widget.TextView, int)" class="hiddenlink" target="rightframe"><b>setTextAppearance</b>
+(<code>TextView, int</code>)</A></nobr><br>
+<!-- Method setToolbarItem -->
+<nobr><A HREF="android.support.customtabs.CustomTabsSession.html#android.support.customtabs.CustomTabsSession.setToolbarItem_added(int, android.graphics.Bitmap, java.lang.String)" class="hiddenlink" target="rightframe"><b>setToolbarItem</b>
+(<code>int, Bitmap, String</code>)</A></nobr><br>
+<!-- Method setupImeOptions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.setupImeOptions_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>setupImeOptions</b>
+(<code>ViewHolder, GuidedAction</code>)</A></nobr><br>
+<!-- Method setUseCompatPadding -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.setUseCompatPadding_added(boolean)" class="hiddenlink" target="rightframe"><b>setUseCompatPadding</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method shouldUseGeneratedIds -->
+<nobr><A HREF="android.support.v7.preference.PreferenceScreen.html#android.support.v7.preference.PreferenceScreen.shouldUseGeneratedIds_added()" class="hiddenlink" target="rightframe"><b>shouldUseGeneratedIds</b>
+()</A></nobr><br>
+<!-- Field Spinner_android_entries -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Spinner_android_entries" class="hiddenlink" target="rightframe">Spinner_android_entries</A>
+</nobr><br>
+<!-- Field srcCompat -->
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.srcCompat" class="hiddenlink" target="rightframe">srcCompat</A>
+</nobr><br>
+<!-- Method startActivity -->
+<nobr><A HREF="android.support.v4.app.Fragment.html#android.support.v4.app.Fragment.startActivity_added(android.content.Intent, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>startActivity</b>
+(<code>Intent, Bundle</code>)</A></nobr><br>
+<!-- Method startActivityForResult -->
+<nobr><A HREF="android.support.v4.app.Fragment.html#android.support.v4.app.Fragment.startActivityForResult_added(android.content.Intent, int, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>startActivityForResult</b>
+(<code>Intent, int, Bundle</code>)</A></nobr><br>
+<!-- Method startActivityFromFragment -->
+<nobr><A HREF="android.support.v4.app.FragmentActivity.html#android.support.v4.app.FragmentActivity.startActivityFromFragment_added(android.support.v4.app.Fragment, android.content.Intent, int, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>startActivityFromFragment</b>
+(<code>Fragment, Intent, int, Bundle</code>)</A></nobr><br>
+<!-- Method startExpandedTransition -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.startExpandedTransition_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" class="hiddenlink" target="rightframe"><b>startExpandedTransition</b>
+(<code>ViewHolder</code>)</A></nobr><br>
+<!-- Class TabItem -->
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.design.widget.html#TabItem" class="hiddenlink" target="rightframe"><b>TabItem</b></A><br>
+<!-- Class Target -->
+<A HREF="pkg_android.support.v7.graphics.html#Target" class="hiddenlink" target="rightframe"><b>Target</b></A><br>
+<!-- Class Target.Builder -->
+<A HREF="pkg_android.support.v7.graphics.html#Target.Builder" class="hiddenlink" target="rightframe"><b>Target.Builder</b></A><br>
+<!-- Class TextInputEditText -->
+<A HREF="pkg_android.support.design.widget.html#TextInputEditText" class="hiddenlink" target="rightframe"><b>TextInputEditText</b></A><br>
+<!-- Field Theme_AppCompat_DayNight -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_DarkActionBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_DarkActionBar" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_DarkActionBar</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_Dialog -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_Dialog" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_Dialog</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_Dialog_Alert -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_Dialog_Alert" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_Dialog_Alert</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_Dialog_MinWidth -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_Dialog_MinWidth" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_Dialog_MinWidth</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_DialogWhenLarge -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_DialogWhenLarge" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_DialogWhenLarge</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_NoActionBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_NoActionBar" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_NoActionBar</A>
+</nobr><br>
+<!-- Field TOOLBAR_ACTION_BUTTON_ID -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.TOOLBAR_ACTION_BUTTON_ID" class="hiddenlink" target="rightframe">TOOLBAR_ACTION_BUTTON_ID</A>
+</nobr><br>
+<!-- Field UI_STYLE_REPLACE -->
+<A NAME="U"></A>
+<br><font size="+2">U</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>UI_STYLE_REPLACE</i><br>
+<nobr>&nbsp;in&nbsp;
+<A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_REPLACE" class="hiddenlink" target="rightframe">android.support.v17.leanback.app.GuidedStepFragment</A>
+</nobr><br>
+<!-- Field UI_STYLE_REPLACE -->
+<nobr>&nbsp;in&nbsp;
+<A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.UI_STYLE_REPLACE" class="hiddenlink" target="rightframe">android.support.v17.leanback.app.GuidedStepSupportFragment</A>
+</nobr><br>
+<!-- Field VIEW_TYPE_DATE_PICKER -->
+<A NAME="V"></A>
+<br><font size="+2">V</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.VIEW_TYPE_DATE_PICKER" class="hiddenlink" target="rightframe">VIEW_TYPE_DATE_PICKER</A>
+</nobr><br>
+<!-- Field VIEW_TYPE_DEFAULT -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.VIEW_TYPE_DEFAULT" class="hiddenlink" target="rightframe">VIEW_TYPE_DEFAULT</A>
+</nobr><br>
+<!-- Class ViewHolderTask -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ViewHolderTask" class="hiddenlink" target="rightframe"><b><i>ViewHolderTask</i></b></A><br>
+<!-- Class VisibilityAwareImageButton -->
+<A HREF="pkg_android.support.design.widget.html#VisibilityAwareImageButton" class="hiddenlink" target="rightframe"><b>VisibilityAwareImageButton</b></A><br>
+<!-- Field Widget_AppCompat_RatingBar_Indicator -->
+<A NAME="W"></A>
+<br><font size="+2">W</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_RatingBar_Indicator" class="hiddenlink" target="rightframe">Widget_AppCompat_RatingBar_Indicator</A>
+</nobr><br>
+<!-- Field Widget_AppCompat_RatingBar_Small -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_RatingBar_Small" class="hiddenlink" target="rightframe">Widget_AppCompat_RatingBar_Small</A>
+</nobr><br>
+<!-- Method XYZToColor -->
+<A NAME="X"></A>
+<br><font size="+2">X</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.XYZToColor_added(double, double, double)" class="hiddenlink" target="rightframe"><b>XYZToColor</b>
+(<code>double, double, double</code>)</A></nobr><br>
+<!-- Method XYZToLAB -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.XYZToLAB_added(double, double, double, double[])" class="hiddenlink" target="rightframe"><b>XYZToLAB</b>
+(<code>double, double, double, double[]</code>)</A></nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_all.html b/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_all.html
new file mode 100644
index 0000000..770d615
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_all.html
@@ -0,0 +1,2928 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+All Differences Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for All Differences" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<b>All Differences</b>
+  <br>
+<A HREF="alldiffs_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<A HREF="alldiffs_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<A HREF="alldiffs_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<!-- Field abc_btn_check_to_on_mtrl_000 -->
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_check_to_on_mtrl_000" class="hiddenlink" target="rightframe"><strike>abc_btn_check_to_on_mtrl_000</strike></A>
+</nobr><br>
+<!-- Field abc_btn_check_to_on_mtrl_015 -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_check_to_on_mtrl_015" class="hiddenlink" target="rightframe"><strike>abc_btn_check_to_on_mtrl_015</strike></A>
+</nobr><br>
+<!-- Field abc_btn_checkbox_checked_mtrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_checkbox_checked_mtrl" class="hiddenlink" target="rightframe">abc_btn_checkbox_checked_mtrl</A>
+</nobr><br>
+<!-- Field abc_btn_checkbox_unchecked_mtrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_checkbox_unchecked_mtrl" class="hiddenlink" target="rightframe">abc_btn_checkbox_unchecked_mtrl</A>
+</nobr><br>
+<!-- Field abc_btn_radio_off_mtrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_radio_off_mtrl" class="hiddenlink" target="rightframe">abc_btn_radio_off_mtrl</A>
+</nobr><br>
+<!-- Field abc_btn_radio_on_mtrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_radio_on_mtrl" class="hiddenlink" target="rightframe">abc_btn_radio_on_mtrl</A>
+</nobr><br>
+<!-- Field abc_btn_radio_to_on_mtrl_000 -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_radio_to_on_mtrl_000" class="hiddenlink" target="rightframe"><strike>abc_btn_radio_to_on_mtrl_000</strike></A>
+</nobr><br>
+<!-- Field abc_btn_radio_to_on_mtrl_015 -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_radio_to_on_mtrl_015" class="hiddenlink" target="rightframe"><strike>abc_btn_radio_to_on_mtrl_015</strike></A>
+</nobr><br>
+<!-- Field abc_ic_ab_back_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_ab_back_material" class="hiddenlink" target="rightframe">abc_ic_ab_back_material</A>
+</nobr><br>
+<!-- Field abc_ic_ab_back_mtrl_am_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_ab_back_mtrl_am_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_ab_back_mtrl_am_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_clear_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_clear_material" class="hiddenlink" target="rightframe">abc_ic_clear_material</A>
+</nobr><br>
+<!-- Field abc_ic_clear_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_clear_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_clear_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_go_search_api_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_go_search_api_material" class="hiddenlink" target="rightframe">abc_ic_go_search_api_material</A>
+</nobr><br>
+<!-- Field abc_ic_go_search_api_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_go_search_api_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_go_search_api_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_copy_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_copy_material" class="hiddenlink" target="rightframe">abc_ic_menu_copy_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_copy_mtrl_am_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_copy_mtrl_am_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_copy_mtrl_am_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_cut_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_cut_material" class="hiddenlink" target="rightframe">abc_ic_menu_cut_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_cut_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_cut_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_cut_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_moreoverflow_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_moreoverflow_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_moreoverflow_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_overflow_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_overflow_material" class="hiddenlink" target="rightframe">abc_ic_menu_overflow_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_paste_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_paste_material" class="hiddenlink" target="rightframe">abc_ic_menu_paste_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_paste_mtrl_am_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_paste_mtrl_am_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_paste_mtrl_am_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_selectall_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_selectall_material" class="hiddenlink" target="rightframe">abc_ic_menu_selectall_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_selectall_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_selectall_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_selectall_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_share_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_share_material" class="hiddenlink" target="rightframe">abc_ic_menu_share_material</A>
+</nobr><br>
+<!-- Field abc_ic_menu_share_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_share_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_share_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_star_black_16dp -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_star_black_16dp" class="hiddenlink" target="rightframe">abc_ic_star_black_16dp</A>
+</nobr><br>
+<!-- Field abc_ic_star_black_36dp -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_star_black_36dp" class="hiddenlink" target="rightframe">abc_ic_star_black_36dp</A>
+</nobr><br>
+<!-- Field abc_ic_star_half_black_16dp -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_star_half_black_16dp" class="hiddenlink" target="rightframe">abc_ic_star_half_black_16dp</A>
+</nobr><br>
+<!-- Field abc_ic_star_half_black_36dp -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_star_half_black_36dp" class="hiddenlink" target="rightframe">abc_ic_star_half_black_36dp</A>
+</nobr><br>
+<!-- Field abc_ic_voice_search_api_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_voice_search_api_material" class="hiddenlink" target="rightframe">abc_ic_voice_search_api_material</A>
+</nobr><br>
+<!-- Field abc_ic_voice_search_api_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_voice_search_api_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_voice_search_api_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ratingbar_indicator_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ratingbar_indicator_material" class="hiddenlink" target="rightframe">abc_ratingbar_indicator_material</A>
+</nobr><br>
+<!-- Field abc_ratingbar_small_material -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ratingbar_small_material" class="hiddenlink" target="rightframe">abc_ratingbar_small_material</A>
+</nobr><br>
+<!-- Class AccessibilityEventCompat -->
+<A HREF="android.support.v4.view.accessibility.AccessibilityEventCompat.html" class="hiddenlink" target="rightframe">AccessibilityEventCompat</A><br>
+<!-- Class AccessibilityManagerCompat -->
+<i>AccessibilityManagerCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.accessibility.AccessibilityManagerCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view.accessibility</A><br>
+<!-- Constructor AccessibilityManagerCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.accessibility.AccessibilityManagerCompat.html#android.support.v4.view.accessibility.AccessibilityManagerCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>AccessibilityManagerCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class AccessibilityServiceInfoCompat -->
+<A HREF="android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat.html" class="hiddenlink" target="rightframe">AccessibilityServiceInfoCompat</A><br>
+<!-- Field ACTION_ID_CANCEL -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_CANCEL" class="hiddenlink" target="rightframe">ACTION_ID_CANCEL</A>
+</nobr><br>
+<!-- Field ACTION_ID_CONTINUE -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_CONTINUE" class="hiddenlink" target="rightframe">ACTION_ID_CONTINUE</A>
+</nobr><br>
+<!-- Field ACTION_ID_CURRENT -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_CURRENT" class="hiddenlink" target="rightframe">ACTION_ID_CURRENT</A>
+</nobr><br>
+<!-- Field ACTION_ID_FINISH -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_FINISH" class="hiddenlink" target="rightframe">ACTION_ID_FINISH</A>
+</nobr><br>
+<!-- Field ACTION_ID_NEXT -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_NEXT" class="hiddenlink" target="rightframe">ACTION_ID_NEXT</A>
+</nobr><br>
+<!-- Field ACTION_ID_NO -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_NO" class="hiddenlink" target="rightframe">ACTION_ID_NO</A>
+</nobr><br>
+<!-- Field ACTION_ID_OK -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_OK" class="hiddenlink" target="rightframe">ACTION_ID_OK</A>
+</nobr><br>
+<!-- Field ACTION_ID_YES -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ACTION_ID_YES" class="hiddenlink" target="rightframe">ACTION_ID_YES</A>
+</nobr><br>
+<!-- Class ActivityInfoCompat -->
+<A HREF="android.support.v4.content.pm.ActivityInfoCompat.html" class="hiddenlink" target="rightframe">ActivityInfoCompat</A><br>
+<!-- Method addDefaultShareMenuItem -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.addDefaultShareMenuItem_added()" class="hiddenlink" target="rightframe"><b>addDefaultShareMenuItem</b>
+()</A></nobr><br>
+<!-- Method addDrawerListener -->
+<nobr><A HREF="android.support.v4.widget.DrawerLayout.html#android.support.v4.widget.DrawerLayout.addDrawerListener_added(android.support.v4.widget.DrawerLayout.DrawerListener)" class="hiddenlink" target="rightframe"><b>addDrawerListener</b>
+(<code>DrawerListener</code>)</A></nobr><br>
+<!-- Method addGroupMemberId -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberId_removed(java.lang.String)" class="hiddenlink" target="rightframe"><strike>addGroupMemberId</strike>
+(<code>String</code>)</A></nobr><br>
+<!-- Method addGroupMemberIds -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberIds_removed(java.util.Collection<java.lang.String>)" class="hiddenlink" target="rightframe"><strike>addGroupMemberIds</strike>
+(<code>Collection&lt;String&gt;</code>)</A></nobr><br>
+<!-- Method addTarget -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.addTarget_added(android.support.v7.graphics.Target)" class="hiddenlink" target="rightframe"><b>addTarget</b>
+(<code>Target</code>)</A></nobr><br>
+<!-- Method addToolbarItem -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.addToolbarItem_added(int, android.graphics.Bitmap, java.lang.String, android.app.PendingIntent)" class="hiddenlink" target="rightframe"><b>addToolbarItem</b>
+(<code>int, Bitmap, String, PendingIntent</code>)</A></nobr><br>
+<!-- Package android.support.customtabs -->
+<A HREF="pkg_android.support.customtabs.html" class="hiddenlink" target="rightframe">android.support.customtabs</A><br>
+<!-- Package android.support.design.widget -->
+<A HREF="pkg_android.support.design.widget.html" class="hiddenlink" target="rightframe">android.support.design.widget</A><br>
+<!-- Package android.support.graphics.drawable -->
+<A HREF="changes-summary.html#android.support.graphics.drawable" class="hiddenlink" target="rightframe"><b>android.support.graphics.drawable</b></A><br>
+<!-- Package android.support.percent -->
+<A HREF="pkg_android.support.percent.html" class="hiddenlink" target="rightframe">android.support.percent</A><br>
+<!-- Package android.support.v14.preference -->
+<A HREF="pkg_android.support.v14.preference.html" class="hiddenlink" target="rightframe">android.support.v14.preference</A><br>
+<!-- Package android.support.v17.leanback.app -->
+<A HREF="pkg_android.support.v17.leanback.app.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.app</A><br>
+<!-- Package android.support.v17.leanback.widget -->
+<A HREF="pkg_android.support.v17.leanback.widget.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Package android.support.v17.leanback.widget.picker -->
+<A HREF="changes-summary.html#android.support.v17.leanback.widget.picker" class="hiddenlink" target="rightframe"><b>android.support.v17.leanback.widget.picker</b></A><br>
+<!-- Package android.support.v4.accessibilityservice -->
+<A HREF="pkg_android.support.v4.accessibilityservice.html" class="hiddenlink" target="rightframe">android.support.v4.accessibilityservice</A><br>
+<!-- Package android.support.v4.app -->
+<A HREF="pkg_android.support.v4.app.html" class="hiddenlink" target="rightframe">android.support.v4.app</A><br>
+<!-- Package android.support.v4.content -->
+<A HREF="pkg_android.support.v4.content.html" class="hiddenlink" target="rightframe">android.support.v4.content</A><br>
+<!-- Package android.support.v4.content.pm -->
+<A HREF="pkg_android.support.v4.content.pm.html" class="hiddenlink" target="rightframe">android.support.v4.content.pm</A><br>
+<!-- Package android.support.v4.content.res -->
+<A HREF="pkg_android.support.v4.content.res.html" class="hiddenlink" target="rightframe">android.support.v4.content.res</A><br>
+<!-- Package android.support.v4.database -->
+<A HREF="pkg_android.support.v4.database.html" class="hiddenlink" target="rightframe">android.support.v4.database</A><br>
+<!-- Package android.support.v4.graphics -->
+<A HREF="pkg_android.support.v4.graphics.html" class="hiddenlink" target="rightframe">android.support.v4.graphics</A><br>
+<!-- Package android.support.v4.graphics.drawable -->
+<A HREF="pkg_android.support.v4.graphics.drawable.html" class="hiddenlink" target="rightframe">android.support.v4.graphics.drawable</A><br>
+<!-- Package android.support.v4.hardware.fingerprint -->
+<A HREF="pkg_android.support.v4.hardware.fingerprint.html" class="hiddenlink" target="rightframe">android.support.v4.hardware.fingerprint</A><br>
+<!-- Package android.support.v4.media -->
+<A HREF="pkg_android.support.v4.media.html" class="hiddenlink" target="rightframe">android.support.v4.media</A><br>
+<!-- Package android.support.v4.net -->
+<A HREF="pkg_android.support.v4.net.html" class="hiddenlink" target="rightframe">android.support.v4.net</A><br>
+<!-- Package android.support.v4.os -->
+<A HREF="pkg_android.support.v4.os.html" class="hiddenlink" target="rightframe">android.support.v4.os</A><br>
+<!-- Package android.support.v4.text -->
+<A HREF="pkg_android.support.v4.text.html" class="hiddenlink" target="rightframe">android.support.v4.text</A><br>
+<!-- Package android.support.v4.view -->
+<A HREF="pkg_android.support.v4.view.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Package android.support.v4.view.accessibility -->
+<A HREF="pkg_android.support.v4.view.accessibility.html" class="hiddenlink" target="rightframe">android.support.v4.view.accessibility</A><br>
+<!-- Package android.support.v4.view.animation -->
+<A HREF="pkg_android.support.v4.view.animation.html" class="hiddenlink" target="rightframe">android.support.v4.view.animation</A><br>
+<!-- Package android.support.v4.widget -->
+<A HREF="pkg_android.support.v4.widget.html" class="hiddenlink" target="rightframe">android.support.v4.widget</A><br>
+<!-- Package android.support.v7.app -->
+<A HREF="pkg_android.support.v7.app.html" class="hiddenlink" target="rightframe">android.support.v7.app</A><br>
+<!-- Package android.support.v7.appcompat -->
+<A HREF="pkg_android.support.v7.appcompat.html" class="hiddenlink" target="rightframe">android.support.v7.appcompat</A><br>
+<!-- Package android.support.v7.graphics -->
+<A HREF="pkg_android.support.v7.graphics.html" class="hiddenlink" target="rightframe">android.support.v7.graphics</A><br>
+<!-- Package android.support.v7.media -->
+<A HREF="pkg_android.support.v7.media.html" class="hiddenlink" target="rightframe">android.support.v7.media</A><br>
+<!-- Package android.support.v7.preference -->
+<A HREF="pkg_android.support.v7.preference.html" class="hiddenlink" target="rightframe">android.support.v7.preference</A><br>
+<!-- Package android.support.v7.recyclerview -->
+<A HREF="pkg_android.support.v7.recyclerview.html" class="hiddenlink" target="rightframe">android.support.v7.recyclerview</A><br>
+<!-- Package android.support.v7.widget -->
+<A HREF="pkg_android.support.v7.widget.html" class="hiddenlink" target="rightframe">android.support.v7.widget</A><br>
+<!-- Package android.support.v7.widget.helper -->
+<A HREF="pkg_android.support.v7.widget.helper.html" class="hiddenlink" target="rightframe">android.support.v7.widget.helper</A><br>
+<!-- Class AppBarLayout.ScrollingViewBehavior -->
+<A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html" class="hiddenlink" target="rightframe">AppBarLayout.ScrollingViewBehavior</A><br>
+<!-- Class AppCompatDelegate -->
+<A HREF="android.support.v7.app.AppCompatDelegate.html" class="hiddenlink" target="rightframe">AppCompatDelegate</A><br>
+<!-- Field AppCompatImageView -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatImageView" class="hiddenlink" target="rightframe">AppCompatImageView</A>
+</nobr><br>
+<!-- Field AppCompatImageView_android_src -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatImageView_android_src" class="hiddenlink" target="rightframe">AppCompatImageView_android_src</A>
+</nobr><br>
+<!-- Field AppCompatImageView_srcCompat -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatImageView_srcCompat" class="hiddenlink" target="rightframe">AppCompatImageView_srcCompat</A>
+</nobr><br>
+<!-- Field AppCompatTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme" class="hiddenlink" target="rightframe">AppCompatTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarDivider -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarDivider" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarDivider</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarItemBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarItemBackground" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarItemBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarPopupTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarPopupTheme" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarPopupTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarSize -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarSize" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarSize</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarSplitStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarSplitStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarSplitStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarTabBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTabBarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarTabBarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarTabStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTabStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarTabStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarTabTextStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTabTextStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarTabTextStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTheme" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionBarWidgetTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarWidgetTheme" class="hiddenlink" target="rightframe">AppCompatTheme_actionBarWidgetTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionDropDownStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionDropDownStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionDropDownStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionMenuTextAppearance -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionMenuTextAppearance" class="hiddenlink" target="rightframe">AppCompatTheme_actionMenuTextAppearance</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionMenuTextColor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionMenuTextColor" class="hiddenlink" target="rightframe">AppCompatTheme_actionMenuTextColor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeBackground" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeCloseButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCloseButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeCloseButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeCloseDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCloseDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeCloseDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeCopyDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCopyDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeCopyDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeCutDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCutDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeCutDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeFindDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeFindDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeFindDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModePasteDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModePasteDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModePasteDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModePopupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModePopupWindowStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionModePopupWindowStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeSelectAllDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeSelectAllDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeSelectAllDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeShareDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeShareDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeShareDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeSplitBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeSplitBackground" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeSplitBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionModeWebSearchDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeWebSearchDrawable" class="hiddenlink" target="rightframe">AppCompatTheme_actionModeWebSearchDrawable</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionOverflowButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionOverflowButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionOverflowButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_actionOverflowMenuStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_actionOverflowMenuStyle" class="hiddenlink" target="rightframe">AppCompatTheme_actionOverflowMenuStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_activityChooserViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_activityChooserViewStyle" class="hiddenlink" target="rightframe">AppCompatTheme_activityChooserViewStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_alertDialogButtonGroupStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogButtonGroupStyle" class="hiddenlink" target="rightframe">AppCompatTheme_alertDialogButtonGroupStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_alertDialogCenterButtons -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogCenterButtons" class="hiddenlink" target="rightframe">AppCompatTheme_alertDialogCenterButtons</A>
+</nobr><br>
+<!-- Field AppCompatTheme_alertDialogStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogStyle" class="hiddenlink" target="rightframe">AppCompatTheme_alertDialogStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_alertDialogTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogTheme" class="hiddenlink" target="rightframe">AppCompatTheme_alertDialogTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_android_windowAnimationStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_android_windowAnimationStyle" class="hiddenlink" target="rightframe">AppCompatTheme_android_windowAnimationStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_android_windowIsFloating -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_android_windowIsFloating" class="hiddenlink" target="rightframe">AppCompatTheme_android_windowIsFloating</A>
+</nobr><br>
+<!-- Field AppCompatTheme_autoCompleteTextViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_autoCompleteTextViewStyle" class="hiddenlink" target="rightframe">AppCompatTheme_autoCompleteTextViewStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_borderlessButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_borderlessButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_borderlessButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonBarButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonBarButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonBarNegativeButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarNegativeButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonBarNegativeButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonBarNeutralButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarNeutralButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonBarNeutralButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonBarPositiveButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarPositiveButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonBarPositiveButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonBarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_buttonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_buttonStyleSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonStyleSmall" class="hiddenlink" target="rightframe">AppCompatTheme_buttonStyleSmall</A>
+</nobr><br>
+<!-- Field AppCompatTheme_checkboxStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_checkboxStyle" class="hiddenlink" target="rightframe">AppCompatTheme_checkboxStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_checkedTextViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_checkedTextViewStyle" class="hiddenlink" target="rightframe">AppCompatTheme_checkedTextViewStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorAccent -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorAccent" class="hiddenlink" target="rightframe">AppCompatTheme_colorAccent</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorButtonNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorButtonNormal" class="hiddenlink" target="rightframe">AppCompatTheme_colorButtonNormal</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorControlActivated -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorControlActivated" class="hiddenlink" target="rightframe">AppCompatTheme_colorControlActivated</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorControlHighlight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorControlHighlight" class="hiddenlink" target="rightframe">AppCompatTheme_colorControlHighlight</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorControlNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorControlNormal" class="hiddenlink" target="rightframe">AppCompatTheme_colorControlNormal</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorPrimary -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorPrimary" class="hiddenlink" target="rightframe">AppCompatTheme_colorPrimary</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorPrimaryDark -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorPrimaryDark" class="hiddenlink" target="rightframe">AppCompatTheme_colorPrimaryDark</A>
+</nobr><br>
+<!-- Field AppCompatTheme_colorSwitchThumbNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_colorSwitchThumbNormal" class="hiddenlink" target="rightframe">AppCompatTheme_colorSwitchThumbNormal</A>
+</nobr><br>
+<!-- Field AppCompatTheme_controlBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_controlBackground" class="hiddenlink" target="rightframe">AppCompatTheme_controlBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dialogPreferredPadding -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dialogPreferredPadding" class="hiddenlink" target="rightframe">AppCompatTheme_dialogPreferredPadding</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dialogTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dialogTheme" class="hiddenlink" target="rightframe">AppCompatTheme_dialogTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dividerHorizontal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dividerHorizontal" class="hiddenlink" target="rightframe">AppCompatTheme_dividerHorizontal</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dividerVertical -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dividerVertical" class="hiddenlink" target="rightframe">AppCompatTheme_dividerVertical</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dropdownListPreferredItemHeight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dropdownListPreferredItemHeight" class="hiddenlink" target="rightframe">AppCompatTheme_dropdownListPreferredItemHeight</A>
+</nobr><br>
+<!-- Field AppCompatTheme_dropDownListViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_dropDownListViewStyle" class="hiddenlink" target="rightframe">AppCompatTheme_dropDownListViewStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_editTextBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_editTextBackground" class="hiddenlink" target="rightframe">AppCompatTheme_editTextBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_editTextColor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_editTextColor" class="hiddenlink" target="rightframe">AppCompatTheme_editTextColor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_editTextStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_editTextStyle" class="hiddenlink" target="rightframe">AppCompatTheme_editTextStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_homeAsUpIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_homeAsUpIndicator" class="hiddenlink" target="rightframe">AppCompatTheme_homeAsUpIndicator</A>
+</nobr><br>
+<!-- Field AppCompatTheme_imageButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_imageButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_imageButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listChoiceBackgroundIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listChoiceBackgroundIndicator" class="hiddenlink" target="rightframe">AppCompatTheme_listChoiceBackgroundIndicator</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listDividerAlertDialog -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listDividerAlertDialog" class="hiddenlink" target="rightframe">AppCompatTheme_listDividerAlertDialog</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPopupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPopupWindowStyle" class="hiddenlink" target="rightframe">AppCompatTheme_listPopupWindowStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPreferredItemHeight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemHeight" class="hiddenlink" target="rightframe">AppCompatTheme_listPreferredItemHeight</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPreferredItemHeightLarge -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemHeightLarge" class="hiddenlink" target="rightframe">AppCompatTheme_listPreferredItemHeightLarge</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPreferredItemHeightSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemHeightSmall" class="hiddenlink" target="rightframe">AppCompatTheme_listPreferredItemHeightSmall</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPreferredItemPaddingLeft -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemPaddingLeft" class="hiddenlink" target="rightframe">AppCompatTheme_listPreferredItemPaddingLeft</A>
+</nobr><br>
+<!-- Field AppCompatTheme_listPreferredItemPaddingRight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemPaddingRight" class="hiddenlink" target="rightframe">AppCompatTheme_listPreferredItemPaddingRight</A>
+</nobr><br>
+<!-- Field AppCompatTheme_panelBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_panelBackground" class="hiddenlink" target="rightframe">AppCompatTheme_panelBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_panelMenuListTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_panelMenuListTheme" class="hiddenlink" target="rightframe">AppCompatTheme_panelMenuListTheme</A>
+</nobr><br>
+<!-- Field AppCompatTheme_panelMenuListWidth -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_panelMenuListWidth" class="hiddenlink" target="rightframe">AppCompatTheme_panelMenuListWidth</A>
+</nobr><br>
+<!-- Field AppCompatTheme_popupMenuStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_popupMenuStyle" class="hiddenlink" target="rightframe">AppCompatTheme_popupMenuStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_popupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_popupWindowStyle" class="hiddenlink" target="rightframe">AppCompatTheme_popupWindowStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_radioButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_radioButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_radioButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_ratingBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_ratingBarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_ratingBarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_ratingBarStyleIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_ratingBarStyleIndicator" class="hiddenlink" target="rightframe">AppCompatTheme_ratingBarStyleIndicator</A>
+</nobr><br>
+<!-- Field AppCompatTheme_ratingBarStyleSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_ratingBarStyleSmall" class="hiddenlink" target="rightframe">AppCompatTheme_ratingBarStyleSmall</A>
+</nobr><br>
+<!-- Field AppCompatTheme_searchViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_searchViewStyle" class="hiddenlink" target="rightframe">AppCompatTheme_searchViewStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_seekBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_seekBarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_seekBarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_selectableItemBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_selectableItemBackground" class="hiddenlink" target="rightframe">AppCompatTheme_selectableItemBackground</A>
+</nobr><br>
+<!-- Field AppCompatTheme_selectableItemBackgroundBorderless -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_selectableItemBackgroundBorderless" class="hiddenlink" target="rightframe">AppCompatTheme_selectableItemBackgroundBorderless</A>
+</nobr><br>
+<!-- Field AppCompatTheme_spinnerDropDownItemStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_spinnerDropDownItemStyle" class="hiddenlink" target="rightframe">AppCompatTheme_spinnerDropDownItemStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_spinnerStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_spinnerStyle" class="hiddenlink" target="rightframe">AppCompatTheme_spinnerStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_switchStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_switchStyle" class="hiddenlink" target="rightframe">AppCompatTheme_switchStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceLargePopupMenu -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceLargePopupMenu" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceLargePopupMenu</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceListItem -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceListItem" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceListItem</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceListItemSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceListItemSmall" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceListItemSmall</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceSearchResultSubtitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceSearchResultSubtitle" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceSearchResultSubtitle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceSearchResultTitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceSearchResultTitle" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceSearchResultTitle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textAppearanceSmallPopupMenu -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceSmallPopupMenu" class="hiddenlink" target="rightframe">AppCompatTheme_textAppearanceSmallPopupMenu</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textColorAlertDialogListItem -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textColorAlertDialogListItem" class="hiddenlink" target="rightframe">AppCompatTheme_textColorAlertDialogListItem</A>
+</nobr><br>
+<!-- Field AppCompatTheme_textColorSearchUrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_textColorSearchUrl" class="hiddenlink" target="rightframe">AppCompatTheme_textColorSearchUrl</A>
+</nobr><br>
+<!-- Field AppCompatTheme_toolbarNavigationButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_toolbarNavigationButtonStyle" class="hiddenlink" target="rightframe">AppCompatTheme_toolbarNavigationButtonStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_toolbarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_toolbarStyle" class="hiddenlink" target="rightframe">AppCompatTheme_toolbarStyle</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowActionBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowActionBar" class="hiddenlink" target="rightframe">AppCompatTheme_windowActionBar</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowActionBarOverlay -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowActionBarOverlay" class="hiddenlink" target="rightframe">AppCompatTheme_windowActionBarOverlay</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowActionModeOverlay -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowActionModeOverlay" class="hiddenlink" target="rightframe">AppCompatTheme_windowActionModeOverlay</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowFixedHeightMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedHeightMajor" class="hiddenlink" target="rightframe">AppCompatTheme_windowFixedHeightMajor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowFixedHeightMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedHeightMinor" class="hiddenlink" target="rightframe">AppCompatTheme_windowFixedHeightMinor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowFixedWidthMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedWidthMajor" class="hiddenlink" target="rightframe">AppCompatTheme_windowFixedWidthMajor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowFixedWidthMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedWidthMinor" class="hiddenlink" target="rightframe">AppCompatTheme_windowFixedWidthMinor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowMinWidthMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowMinWidthMajor" class="hiddenlink" target="rightframe">AppCompatTheme_windowMinWidthMajor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowMinWidthMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowMinWidthMinor" class="hiddenlink" target="rightframe">AppCompatTheme_windowMinWidthMinor</A>
+</nobr><br>
+<!-- Field AppCompatTheme_windowNoTitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.AppCompatTheme_windowNoTitle" class="hiddenlink" target="rightframe">AppCompatTheme_windowNoTitle</A>
+</nobr><br>
+<!-- Method applyDayNight -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.applyDayNight_added()" class="hiddenlink" target="rightframe"><b>applyDayNight</b>
+()</A></nobr><br>
+<!-- Method applyTheme -->
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.applyTheme_added(android.graphics.drawable.Drawable, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>applyTheme</b>
+(<code>Drawable, Theme</code>)</A></nobr><br>
+<!-- Class AppOpsManagerCompat -->
+<i>AppOpsManagerCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.app.AppOpsManagerCompat.html" class="hiddenlink" target="rightframe">android.support.v4.app</A><br>
+<!-- Constructor AppOpsManagerCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.app.AppOpsManagerCompat.html#android.support.v4.app.AppOpsManagerCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>AppOpsManagerCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class AsyncTaskCompat -->
+<i>AsyncTaskCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.os.AsyncTaskCompat.html" class="hiddenlink" target="rightframe">android.support.v4.os</A><br>
+<!-- Constructor AsyncTaskCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.os.AsyncTaskCompat.html#android.support.v4.os.AsyncTaskCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>AsyncTaskCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Field Base_Widget_AppCompat_RatingBar_Indicator -->
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_RatingBar_Indicator" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_RatingBar_Indicator</A>
+</nobr><br>
+<!-- Field Base_Widget_AppCompat_RatingBar_Small -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Base_Widget_AppCompat_RatingBar_Small" class="hiddenlink" target="rightframe">Base_Widget_AppCompat_RatingBar_Small</A>
+</nobr><br>
+<!-- Class BaseRowFragment -->
+<A HREF="android.support.v17.leanback.app.BaseRowFragment.html" class="hiddenlink" target="rightframe">BaseRowFragment</A><br>
+<!-- Class BaseRowSupportFragment -->
+<A HREF="android.support.v17.leanback.app.BaseRowSupportFragment.html" class="hiddenlink" target="rightframe">BaseRowSupportFragment</A><br>
+<!-- Class BitmapCompat -->
+<i>BitmapCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.graphics.BitmapCompat.html" class="hiddenlink" target="rightframe">android.support.v4.graphics</A><br>
+<!-- Constructor BitmapCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.graphics.BitmapCompat.html#android.support.v4.graphics.BitmapCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>BitmapCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method blendARGB -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.blendARGB_added(int, int, float)" class="hiddenlink" target="rightframe"><b>blendARGB</b>
+(<code>int, int, float</code>)</A></nobr><br>
+<!-- Method blendHSL -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.blendHSL_added(float[], float[], float, float[])" class="hiddenlink" target="rightframe"><b>blendHSL</b>
+(<code>float[], float[], float, float[]</code>)</A></nobr><br>
+<!-- Method blendLAB -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.blendLAB_added(double[], double[], double, double[])" class="hiddenlink" target="rightframe"><b>blendLAB</b>
+(<code>double[], double[], double, double[]</code>)</A></nobr><br>
+<!-- Class BottomSheetBehavior -->
+<A HREF="pkg_android.support.design.widget.html#BottomSheetBehavior" class="hiddenlink" target="rightframe"><b>BottomSheetBehavior</b></A><br>
+<!-- Class BottomSheetBehavior.BottomSheetCallback -->
+<A HREF="pkg_android.support.design.widget.html#BottomSheetBehavior.BottomSheetCallback" class="hiddenlink" target="rightframe"><b>BottomSheetBehavior.BottomSheetCallback</b></A><br>
+<!-- Class BottomSheetBehavior.SavedState -->
+<A HREF="pkg_android.support.design.widget.html#BottomSheetBehavior.SavedState" class="hiddenlink" target="rightframe"><b>BottomSheetBehavior.SavedState</b></A><br>
+<!-- Class BottomSheetDialog -->
+<A HREF="pkg_android.support.design.widget.html#BottomSheetDialog" class="hiddenlink" target="rightframe"><b>BottomSheetDialog</b></A><br>
+<!-- Class BottomSheetDialogFragment -->
+<A HREF="pkg_android.support.design.widget.html#BottomSheetDialogFragment" class="hiddenlink" target="rightframe"><b>BottomSheetDialogFragment</b></A><br>
+<!-- Class BrowseFragment -->
+<A HREF="android.support.v17.leanback.app.BrowseFragment.html" class="hiddenlink" target="rightframe">BrowseFragment</A><br>
+<!-- Class BrowseSupportFragment -->
+<A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html" class="hiddenlink" target="rightframe">BrowseSupportFragment</A><br>
+<!-- Class BundleCompat -->
+<i>BundleCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.app.BundleCompat.html" class="hiddenlink" target="rightframe">android.support.v4.app</A><br>
+<!-- Constructor BundleCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.app.BundleCompat.html#android.support.v4.app.BundleCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>BundleCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method canApplyTheme -->
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.canApplyTheme_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><b>canApplyTheme</b>
+(<code>Drawable</code>)</A></nobr><br>
+<!-- Method canReuseUpdatedViewHolder -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.ItemAnimator.html#android.support.v7.widget.RecyclerView.ItemAnimator.canReuseUpdatedViewHolder_added(android.support.v7.widget.RecyclerView.ViewHolder, java.util.List<java.lang.Object>)" class="hiddenlink" target="rightframe"><b>canReuseUpdatedViewHolder</b>
+(<code>ViewHolder, List&lt;Object&gt;</code>)</A></nobr><br>
+<!-- Field CHECKBOX_CHECK_SET_ID -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.CHECKBOX_CHECK_SET_ID" class="hiddenlink" target="rightframe">CHECKBOX_CHECK_SET_ID</A>
+</nobr><br>
+<!-- Method checked -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.checked_changed(boolean)" class="hiddenlink" target="rightframe">checked
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method checkSetId -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.checkSetId_changed(int)" class="hiddenlink" target="rightframe">checkSetId
+(<code>int</code>)</A></nobr><br>
+<!-- Method chooseSize -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.chooseSize_added(int, int, int)" class="hiddenlink" target="rightframe"><b>chooseSize</b>
+(<code>int, int, int</code>)</A></nobr><br>
+<!-- Method clearTargets -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.clearTargets_added()" class="hiddenlink" target="rightframe"><b>clearTargets</b>
+()</A></nobr><br>
+<!-- Method collapseSubActions -->
+<i>collapseSubActions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.collapseSubActions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method collapseSubActions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.collapseSubActions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Class CollapsingToolbarLayout -->
+<A HREF="android.support.design.widget.CollapsingToolbarLayout.html" class="hiddenlink" target="rightframe">CollapsingToolbarLayout</A><br>
+<!-- Method colorToLAB -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.colorToLAB_added(int, double[])" class="hiddenlink" target="rightframe"><b>colorToLAB</b>
+(<code>int, double[]</code>)</A></nobr><br>
+<!-- Method colorToXYZ -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.colorToXYZ_added(int, double[])" class="hiddenlink" target="rightframe"><b>colorToXYZ</b>
+(<code>int, double[]</code>)</A></nobr><br>
+<!-- Class ColorUtils -->
+<A HREF="android.support.v4.graphics.ColorUtils.html" class="hiddenlink" target="rightframe">ColorUtils</A><br>
+<!-- Class ConnectivityManagerCompat -->
+<i>ConnectivityManagerCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.net.ConnectivityManagerCompat.html" class="hiddenlink" target="rightframe">android.support.v4.net</A><br>
+<!-- Constructor ConnectivityManagerCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.net.ConnectivityManagerCompat.html#android.support.v4.net.ConnectivityManagerCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ConnectivityManagerCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class ContentResolverCompat -->
+<A HREF="android.support.v4.content.ContentResolverCompat.html" class="hiddenlink" target="rightframe">ContentResolverCompat</A><br>
+<!-- Class ContextCompat -->
+<A HREF="android.support.v4.content.ContextCompat.html" class="hiddenlink" target="rightframe">ContextCompat</A><br>
+<!-- Class CoordinatorLayout.Behavior -->
+<A HREF="android.support.design.widget.CoordinatorLayout.Behavior.html" class="hiddenlink" target="rightframe">CoordinatorLayout.Behavior</A><br>
+<!-- Class CustomTabsIntent -->
+<A HREF="android.support.customtabs.CustomTabsIntent.html" class="hiddenlink" target="rightframe">CustomTabsIntent</A><br>
+<!-- Class CustomTabsIntent.Builder -->
+<A HREF="android.support.customtabs.CustomTabsIntent.Builder.html" class="hiddenlink" target="rightframe">CustomTabsIntent.Builder</A><br>
+<!-- Class CustomTabsSession -->
+<A HREF="android.support.customtabs.CustomTabsSession.html" class="hiddenlink" target="rightframe">CustomTabsSession</A><br>
+<!-- Class DatabaseUtilsCompat -->
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.database.DatabaseUtilsCompat.html" class="hiddenlink" target="rightframe">DatabaseUtilsCompat</A><br>
+<!-- Method description -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.description_removed(java.lang.String)" class="hiddenlink" target="rightframe"><strike>description</strike>
+(<code>String</code>)</A></nobr><br>
+<!-- Class DetailsFragment -->
+<A HREF="android.support.v17.leanback.app.DetailsFragment.html" class="hiddenlink" target="rightframe">DetailsFragment</A><br>
+<!-- Class DetailsOverviewLogoPresenter -->
+<A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.html" class="hiddenlink" target="rightframe">DetailsOverviewLogoPresenter</A><br>
+<!-- Class DetailsOverviewLogoPresenter.ViewHolder -->
+<A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html" class="hiddenlink" target="rightframe">DetailsOverviewLogoPresenter.ViewHolder</A><br>
+<!-- Class DetailsSupportFragment -->
+<A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html" class="hiddenlink" target="rightframe">DetailsSupportFragment</A><br>
+<!-- Method distanceEuclidean -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.distanceEuclidean_added(double[], double[])" class="hiddenlink" target="rightframe"><b>distanceEuclidean</b>
+(<code>double[], double[]</code>)</A></nobr><br>
+<!-- Class DrawableCompat -->
+<i>DrawableCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.graphics.drawable.DrawableCompat.html" class="hiddenlink" target="rightframe">android.support.v4.graphics.drawable</A><br>
+<!-- Constructor DrawableCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>DrawableCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class DrawerLayout -->
+<A HREF="android.support.v4.widget.DrawerLayout.html" class="hiddenlink" target="rightframe">DrawerLayout</A><br>
+<!-- Class EdgeEffectCompat -->
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.widget.EdgeEffectCompat.html" class="hiddenlink" target="rightframe">EdgeEffectCompat</A><br>
+<!-- Method editable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editable_changed(boolean)" class="hiddenlink" target="rightframe">editable
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method editTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editTitle_removed(java.lang.String)" class="hiddenlink" target="rightframe"><strike>editTitle</strike>
+(<code>String</code>)</A></nobr><br>
+<!-- Method enabled -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.enabled_changed(boolean)" class="hiddenlink" target="rightframe">enabled
+(<code>boolean</code>)</A></nobr><br>
+<!-- Class EnvironmentCompat -->
+<i>EnvironmentCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.os.EnvironmentCompat.html" class="hiddenlink" target="rightframe">android.support.v4.os</A><br>
+<!-- Constructor EnvironmentCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.os.EnvironmentCompat.html#android.support.v4.os.EnvironmentCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>EnvironmentCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method expandSubActions -->
+<i>expandSubActions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.expandSubActions_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method expandSubActions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.expandSubActions_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Field EXTRA_DEFAULT_SHARE_MENU_ITEM -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_DEFAULT_SHARE_MENU_ITEM" class="hiddenlink" target="rightframe">EXTRA_DEFAULT_SHARE_MENU_ITEM</A>
+</nobr><br>
+<!-- Field EXTRA_SECONDARY_TOOLBAR_COLOR -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_SECONDARY_TOOLBAR_COLOR" class="hiddenlink" target="rightframe">EXTRA_SECONDARY_TOOLBAR_COLOR</A>
+</nobr><br>
+<!-- Field EXTRA_TOOLBAR_ITEMS -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.EXTRA_TOOLBAR_ITEMS" class="hiddenlink" target="rightframe">EXTRA_TOOLBAR_ITEMS</A>
+</nobr><br>
+<!-- Method fillMarginLayoutParams -->
+<A NAME="F"></A>
+<br><font size="+2">F</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>fillMarginLayoutParams</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html#android.support.percent.PercentLayoutHelper.PercentLayoutInfo.fillMarginLayoutParams_removed(android.view.ViewGroup.MarginLayoutParams, int, int)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>MarginLayoutParams, int, int</code>)</strike>&nbsp;in&nbsp;android.support.percent.PercentLayoutHelper.PercentLayoutInfo
+</A></nobr><br>
+<!-- Method fillMarginLayoutParams -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html#android.support.percent.PercentLayoutHelper.PercentLayoutInfo.fillMarginLayoutParams_added(android.view.View, android.view.ViewGroup.MarginLayoutParams, int, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View, MarginLayoutParams, int, int</code>)</b>&nbsp;in&nbsp;android.support.percent.PercentLayoutHelper.PercentLayoutInfo
+</A></nobr><br>
+<!-- Method fillMarginLayoutParams -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html#android.support.percent.PercentLayoutHelper.PercentLayoutInfo.fillMarginLayoutParams_added(android.view.ViewGroup.MarginLayoutParams, int, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>MarginLayoutParams, int, int</code>)</b>&nbsp;in&nbsp;android.support.percent.PercentLayoutHelper.PercentLayoutInfo
+</A></nobr><br>
+<!-- Method findActionById -->
+<i>findActionById</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.findActionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method findActionById -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.findActionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method findActionPositionById -->
+<i>findActionPositionById</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.findActionPositionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method findActionPositionById -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.findActionPositionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method findButtonActionById -->
+<i>findButtonActionById</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.findButtonActionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method findButtonActionById -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.findButtonActionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method findButtonActionPositionById -->
+<i>findButtonActionPositionById</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.findButtonActionPositionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method findButtonActionPositionById -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.findButtonActionPositionById_added(long)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>long</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method findContainingItemView -->
+<i>findContainingItemView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.widget.RecyclerView.html#android.support.v7.widget.RecyclerView.findContainingItemView_added(android.view.View)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View</code>)</b>&nbsp;in&nbsp;android.support.v7.widget.RecyclerView
+</A></nobr><br>
+<!-- Method findContainingItemView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.findContainingItemView_added(android.view.View)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>View</code>)</b>&nbsp;in&nbsp;android.support.v7.widget.RecyclerView.LayoutManager
+</A></nobr><br>
+<!-- Method findContainingViewHolder -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.html#android.support.v7.widget.RecyclerView.findContainingViewHolder_added(android.view.View)" class="hiddenlink" target="rightframe"><b>findContainingViewHolder</b>
+(<code>View</code>)</A></nobr><br>
+<!-- Class FingerprintManagerCompat -->
+<A HREF="android.support.v4.hardware.fingerprint.FingerprintManagerCompat.html" class="hiddenlink" target="rightframe">FingerprintManagerCompat</A><br>
+<!-- Method finishGuidedStepFragments -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.finishGuidedStepFragments_added()" class="hiddenlink" target="rightframe"><b>finishGuidedStepFragments</b>
+()</A></nobr><br>
+<!-- Method finishGuidedStepSupportFragments -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.finishGuidedStepSupportFragments_added()" class="hiddenlink" target="rightframe"><b>finishGuidedStepSupportFragments</b>
+()</A></nobr><br>
+<!-- Class FloatingActionButton -->
+<A HREF="android.support.design.widget.FloatingActionButton.html" class="hiddenlink" target="rightframe">FloatingActionButton</A><br>
+<!-- Class Fragment -->
+<A HREF="android.support.v4.app.Fragment.html" class="hiddenlink" target="rightframe">Fragment</A><br>
+<!-- Class FragmentActivity -->
+<A HREF="android.support.v4.app.FragmentActivity.html" class="hiddenlink" target="rightframe">FragmentActivity</A><br>
+<!-- Class FragmentHostCallback -->
+<A HREF="android.support.v4.app.FragmentHostCallback.html" class="hiddenlink" target="rightframe">FragmentHostCallback</A><br>
+<!-- Class GestureDetectorCompat -->
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.view.GestureDetectorCompat.html" class="hiddenlink" target="rightframe">GestureDetectorCompat</A><br>
+<!-- Method getAction -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getAction_added()" class="hiddenlink" target="rightframe"><b>getAction</b>
+()</A></nobr><br>
+<!-- Method getAlpha -->
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.getAlpha_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><b>getAlpha</b>
+(<code>Drawable</code>)</A></nobr><br>
+<!-- Method getButtonActionItemView -->
+<i>getButtonActionItemView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getButtonActionItemView_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method getButtonActionItemView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.getButtonActionItemView_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method getButtonActions -->
+<i>getButtonActions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getButtonActions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method getButtonActions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.getButtonActions_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method getChildMeasureSpec -->
+<i>getChildMeasureSpec</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.getChildMeasureSpec_removed(int, int, int, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+(<code>int, int, int, boolean</code>)</strike>&nbsp;in&nbsp;android.support.v7.widget.RecyclerView.LayoutManager
+</A></nobr><br>
+<!-- Method getChildMeasureSpec -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.getChildMeasureSpec_added(int, int, int, int, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, int, int, int, boolean</code>)</b>&nbsp;in&nbsp;android.support.v7.widget.RecyclerView.LayoutManager
+</A></nobr><br>
+<!-- Method getChildMeasureSpec -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.getChildMeasureSpec_added(int, int, int, boolean)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, int, int, boolean</code>)</b>&nbsp;in&nbsp;android.support.v7.widget.RecyclerView.LayoutManager
+</A></nobr><br>
+<!-- Method getCodeCacheDir -->
+<nobr><A HREF="android.support.v4.content.ContextCompat.html#android.support.v4.content.ContextCompat.getCodeCacheDir_changed(android.content.Context)" class="hiddenlink" target="rightframe">getCodeCacheDir
+(<code>Context</code>)</A></nobr><br>
+<!-- Method getColor -->
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColor_changed(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe">getColor
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<!-- Method getColorFilter -->
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.getColorFilter_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><b>getColorFilter</b>
+(<code>Drawable</code>)</A></nobr><br>
+<!-- Method getColorForTarget -->
+<nobr><A HREF="android.support.v7.graphics.Palette.html#android.support.v7.graphics.Palette.getColorForTarget_added(android.support.v7.graphics.Target, int)" class="hiddenlink" target="rightframe"><b>getColorForTarget</b>
+(<code>Target, int</code>)</A></nobr><br>
+<!-- Method getColorStateList -->
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColorStateList_changed(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe">getColorStateList
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<!-- Method getCompatElevation -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.getCompatElevation_added()" class="hiddenlink" target="rightframe"><b>getCompatElevation</b>
+()</A></nobr><br>
+<!-- Method getContainerIdForBackground -->
+<i>getContainerIdForBackground</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getContainerIdForBackground_removed()" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+()</strike>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method getContainerIdForBackground -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.getContainerIdForBackground_removed()" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+()</strike>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method getContentBackground -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.getContentBackground_added()" class="hiddenlink" target="rightframe"><b>getContentBackground</b>
+()</A></nobr><br>
+<!-- Method getContentRect -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.getContentRect_added(android.graphics.Rect)" class="hiddenlink" target="rightframe"><b>getContentRect</b>
+(<code>Rect</code>)</A></nobr><br>
+<!-- Method getDefaultNightMode -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.getDefaultNightMode_added()" class="hiddenlink" target="rightframe"><b>getDefaultNightMode</b>
+()</A></nobr><br>
+<!-- Method getDescriptionEditInputType -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getDescriptionEditInputType_added()" class="hiddenlink" target="rightframe"><b>getDescriptionEditInputType</b>
+()</A></nobr><br>
+<!-- Method getDescriptionInputType -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getDescriptionInputType_added()" class="hiddenlink" target="rightframe"><b>getDescriptionInputType</b>
+()</A></nobr><br>
+<!-- Method getEditableDescriptionView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditableDescriptionView_added()" class="hiddenlink" target="rightframe"><b>getEditableDescriptionView</b>
+()</A></nobr><br>
+<!-- Method getEditDescription -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getEditDescription_added()" class="hiddenlink" target="rightframe"><b>getEditDescription</b>
+()</A></nobr><br>
+<!-- Method getEditingView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditingView_added()" class="hiddenlink" target="rightframe"><b>getEditingView</b>
+()</A></nobr><br>
+<!-- Method getEditInputType -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getEditInputType_added()" class="hiddenlink" target="rightframe"><b>getEditInputType</b>
+()</A></nobr><br>
+<!-- Method getExpandedAction -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.getExpandedAction_added()" class="hiddenlink" target="rightframe"><b>getExpandedAction</b>
+()</A></nobr><br>
+<!-- Method getExpandedTitleMarginBottom -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginBottom_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleMarginBottom</b>
+()</A></nobr><br>
+<!-- Method getExpandedTitleMarginEnd -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginEnd_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleMarginEnd</b>
+()</A></nobr><br>
+<!-- Method getExpandedTitleMarginStart -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginStart_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleMarginStart</b>
+()</A></nobr><br>
+<!-- Method getExpandedTitleMarginTop -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginTop_added()" class="hiddenlink" target="rightframe"><b>getExpandedTitleMarginTop</b>
+()</A></nobr><br>
+<!-- Method getFactory -->
+<nobr><A HREF="android.support.v4.view.LayoutInflaterCompat.html#android.support.v4.view.LayoutInflaterCompat.getFactory_added(android.view.LayoutInflater)" class="hiddenlink" target="rightframe"><b>getFactory</b>
+(<code>LayoutInflater</code>)</A></nobr><br>
+<!-- Method getGroupMemberIds -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getGroupMemberIds_removed()" class="hiddenlink" target="rightframe"><strike>getGroupMemberIds</strike>
+()</A></nobr><br>
+<!-- Method getGuidedButtonActionsStylist -->
+<i>getGuidedButtonActionsStylist</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getGuidedButtonActionsStylist_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method getGuidedButtonActionsStylist -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.getGuidedButtonActionsStylist_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method getHeadersFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.getHeadersFragment_added()" class="hiddenlink" target="rightframe"><b>getHeadersFragment</b>
+()</A></nobr><br>
+<!-- Method getHeadersSupportFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.getHeadersSupportFragment_added()" class="hiddenlink" target="rightframe"><b>getHeadersSupportFragment</b>
+()</A></nobr><br>
+<!-- Method getHeightMode -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.getHeightMode_added()" class="hiddenlink" target="rightframe"><b>getHeightMode</b>
+()</A></nobr><br>
+<!-- Method getInputType -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getInputType_added()" class="hiddenlink" target="rightframe"><b>getInputType</b>
+()</A></nobr><br>
+<!-- Method getItemViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.html#android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.getItemViewHolder_added(int)" class="hiddenlink" target="rightframe"><b>getItemViewHolder</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method getItemViewType -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.getItemViewType_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>getItemViewType</b>
+(<code>GuidedAction</code>)</A></nobr><br>
+<!-- Method getMaxToolbarItems -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.getMaxToolbarItems_added()" class="hiddenlink" target="rightframe"><b>getMaxToolbarItems</b>
+()</A></nobr><br>
+<!-- Method getMode -->
+<nobr><A HREF="android.support.v7.widget.OrientationHelper.html#android.support.v7.widget.OrientationHelper.getMode_added()" class="hiddenlink" target="rightframe"><b>getMode</b>
+()</A></nobr><br>
+<!-- Method getModeInOther -->
+<nobr><A HREF="android.support.v7.widget.OrientationHelper.html#android.support.v7.widget.OrientationHelper.getModeInOther_added()" class="hiddenlink" target="rightframe"><b>getModeInOther</b>
+()</A></nobr><br>
+<!-- Method getOverlayTop -->
+<i>getOverlayTop</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.getOverlayTop_changed()" class="hiddenlink" target="rightframe">type&nbsp;
+()&nbsp;in&nbsp;android.support.design.widget.AppBarLayout.ScrollingViewBehavior
+</A></nobr><br>
+<!-- Method getOverlayTop -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.HeaderScrollingViewBehavior.html#android.support.design.widget.HeaderScrollingViewBehavior.getOverlayTop_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.design.widget.HeaderScrollingViewBehavior
+</A></nobr><br>
+<!-- Method getParentPresenter -->
+<nobr><A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html#android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.getParentPresenter_added()" class="hiddenlink" target="rightframe"><b>getParentPresenter</b>
+()</A></nobr><br>
+<!-- Method getParentViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html#android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.getParentViewHolder_added()" class="hiddenlink" target="rightframe"><b>getParentViewHolder</b>
+()</A></nobr><br>
+<!-- Method getRowsFragment -->
+<i>getRowsFragment</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.getRowsFragment_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method getRowsFragment -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsFragment.html#android.support.v17.leanback.app.DetailsFragment.getRowsFragment_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsFragment
+</A></nobr><br>
+<!-- Method getRowsSupportFragment -->
+<i>getRowsSupportFragment</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.getRowsSupportFragment_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method getRowsSupportFragment -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html#android.support.v17.leanback.app.DetailsSupportFragment.getRowsSupportFragment_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.DetailsSupportFragment
+</A></nobr><br>
+<!-- Method getRowViewHolder -->
+<i>getRowViewHolder</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.RowsFragment.html#android.support.v17.leanback.app.RowsFragment.getRowViewHolder_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.RowsFragment
+</A></nobr><br>
+<!-- Method getRowViewHolder -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.RowsSupportFragment.html#android.support.v17.leanback.app.RowsSupportFragment.getRowViewHolder_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.RowsSupportFragment
+</A></nobr><br>
+<!-- Method getScrimColor -->
+<nobr><A HREF="android.support.design.widget.CoordinatorLayout.Behavior.html#android.support.design.widget.CoordinatorLayout.Behavior.getScrimColor_changed(android.support.design.widget.CoordinatorLayout, V)" class="hiddenlink" target="rightframe">getScrimColor
+(<code>CoordinatorLayout, V</code>)</A></nobr><br>
+<!-- Method getScrimOpacity -->
+<nobr><A HREF="android.support.design.widget.CoordinatorLayout.Behavior.html#android.support.design.widget.CoordinatorLayout.Behavior.getScrimOpacity_changed(android.support.design.widget.CoordinatorLayout, V)" class="hiddenlink" target="rightframe">getScrimOpacity
+(<code>CoordinatorLayout, V</code>)</A></nobr><br>
+<!-- Method getSelectedButtonActionPosition -->
+<i>getSelectedButtonActionPosition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getSelectedButtonActionPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method getSelectedButtonActionPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.getSelectedButtonActionPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method getSelectedPosition -->
+<i>getSelectedPosition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BaseRowFragment.html#android.support.v17.leanback.app.BaseRowFragment.getSelectedPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BaseRowFragment
+</A></nobr><br>
+<!-- Method getSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BaseRowSupportFragment.html#android.support.v17.leanback.app.BaseRowSupportFragment.getSelectedPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BaseRowSupportFragment
+</A></nobr><br>
+<!-- Method getSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.getSelectedPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method getSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.getSelectedPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method getSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.html#android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.getSelectedPosition_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.ListRowPresenter.ViewHolder
+</A></nobr><br>
+<!-- Method getSubActions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.getSubActions_added()" class="hiddenlink" target="rightframe"><b>getSubActions</b>
+()</A></nobr><br>
+<!-- Method getSubActionsGridView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.getSubActionsGridView_added()" class="hiddenlink" target="rightframe"><b>getSubActionsGridView</b>
+()</A></nobr><br>
+<!-- Method getSwatchForTarget -->
+<nobr><A HREF="android.support.v7.graphics.Palette.html#android.support.v7.graphics.Palette.getSwatchForTarget_added(android.support.v7.graphics.Target)" class="hiddenlink" target="rightframe"><b>getSwatchForTarget</b>
+(<code>Target</code>)</A></nobr><br>
+<!-- Method getSwipeEscapeVelocity -->
+<nobr><A HREF="android.support.v7.widget.helper.ItemTouchHelper.Callback.html#android.support.v7.widget.helper.ItemTouchHelper.Callback.getSwipeEscapeVelocity_added(float)" class="hiddenlink" target="rightframe"><b>getSwipeEscapeVelocity</b>
+(<code>float</code>)</A></nobr><br>
+<!-- Method getSwipeVelocityThreshold -->
+<nobr><A HREF="android.support.v7.widget.helper.ItemTouchHelper.Callback.html#android.support.v7.widget.helper.ItemTouchHelper.Callback.getSwipeVelocityThreshold_added(float)" class="hiddenlink" target="rightframe"><b>getSwipeVelocityThreshold</b>
+(<code>float</code>)</A></nobr><br>
+<!-- Method getTargets -->
+<nobr><A HREF="android.support.v7.graphics.Palette.html#android.support.v7.graphics.Palette.getTargets_added()" class="hiddenlink" target="rightframe"><b>getTargets</b>
+()</A></nobr><br>
+<!-- Method getUseCompatPadding -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.getUseCompatPadding_added()" class="hiddenlink" target="rightframe"><b>getUseCompatPadding</b>
+()</A></nobr><br>
+<!-- Method getWidthMode -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.getWidthMode_added()" class="hiddenlink" target="rightframe"><b>getWidthMode</b>
+()</A></nobr><br>
+<!-- Class GravityCompat -->
+<i>GravityCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.GravityCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor GravityCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.GravityCompat.html#android.support.v4.view.GravityCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>GravityCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class GuidanceStylist -->
+<A HREF="android.support.v17.leanback.widget.GuidanceStylist.html" class="hiddenlink" target="rightframe">GuidanceStylist</A><br>
+<!-- Class GuidedAction -->
+<i>GuidedAction</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v17.leanback.widget.GuidedAction.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Constructor GuidedAction -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.ctor_added()" class="hiddenlink" target="rightframe"><b>GuidedAction</b>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class GuidedAction.Builder -->
+<i>GuidedAction.Builder</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Constructor GuidedAction.Builder -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.ctor_added(android.content.Context)" class="hiddenlink" target="rightframe"><b>GuidedAction.Builder</b>
+(<code>Context</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Constructor GuidedAction.Builder -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.ctor_changed()" class="hiddenlink" target="rightframe">GuidedAction.Builder
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class GuidedAction.BuilderBase -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedAction.BuilderBase" class="hiddenlink" target="rightframe"><b>GuidedAction.BuilderBase</b></A><br>
+<!-- Class GuidedActionsStylist -->
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html" class="hiddenlink" target="rightframe">GuidedActionsStylist</A><br>
+<!-- Class GuidedActionsStylist.ViewHolder -->
+<i>GuidedActionsStylist.ViewHolder</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Constructor GuidedActionsStylist.ViewHolder -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.ctor_added(android.view.View, boolean)" class="hiddenlink" target="rightframe"><b>GuidedActionsStylist.ViewHolder</b>
+(<code>View, boolean</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Class GuidedDatePickerAction -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedDatePickerAction" class="hiddenlink" target="rightframe"><b>GuidedDatePickerAction</b></A><br>
+<!-- Class GuidedDatePickerAction.Builder -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedDatePickerAction.Builder" class="hiddenlink" target="rightframe"><b>GuidedDatePickerAction.Builder</b></A><br>
+<!-- Class GuidedDatePickerAction.BuilderBase -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedDatePickerAction.BuilderBase" class="hiddenlink" target="rightframe"><b>GuidedDatePickerAction.BuilderBase</b></A><br>
+<!-- Class GuidedStepFragment -->
+<A HREF="android.support.v17.leanback.app.GuidedStepFragment.html" class="hiddenlink" target="rightframe">GuidedStepFragment</A><br>
+<!-- Class GuidedStepFragment.GuidedStepBackgroundFragment -->
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepFragment.GuidedStepBackgroundFragment" class="hiddenlink" target="rightframe"><strike>GuidedStepFragment.GuidedStepBackgroundFragment</strike></A><br>
+<!-- Class GuidedStepSupportFragment -->
+<A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html" class="hiddenlink" target="rightframe">GuidedStepSupportFragment</A><br>
+<!-- Class GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment -->
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment" class="hiddenlink" target="rightframe"><strike>GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment</strike></A><br>
+<!-- Method hasEditableActivatorView -->
+<A NAME="H"></A>
+<br><font size="+2">H</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.hasEditableActivatorView_added()" class="hiddenlink" target="rightframe"><b>hasEditableActivatorView</b>
+()</A></nobr><br>
+<!-- Method hasNext -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.hasNext_changed(boolean)" class="hiddenlink" target="rightframe">hasNext
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method hasSubActions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.hasSubActions_added()" class="hiddenlink" target="rightframe"><b>hasSubActions</b>
+()</A></nobr><br>
+<!-- Method hasTextEditable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.hasTextEditable_added()" class="hiddenlink" target="rightframe"><b>hasTextEditable</b>
+()</A></nobr><br>
+<!-- Class HeaderScrollingViewBehavior -->
+<A HREF="android.support.design.widget.HeaderScrollingViewBehavior.html" class="hiddenlink" target="rightframe">HeaderScrollingViewBehavior</A><br>
+<!-- Class HeadersFragment.OnHeaderClickedListener -->
+<A HREF="android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener.html" class="hiddenlink" target="rightframe"><i>HeadersFragment.OnHeaderClickedListener</i></A><br>
+<!-- Class HeadersFragment.OnHeaderViewSelectedListener -->
+<A HREF="android.support.v17.leanback.app.HeadersFragment.OnHeaderViewSelectedListener.html" class="hiddenlink" target="rightframe"><i>HeadersFragment.OnHeaderViewSelectedListener</i></A><br>
+<!-- Class HeadersSupportFragment.OnHeaderClickedListener -->
+<A HREF="android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener.html" class="hiddenlink" target="rightframe"><i>HeadersSupportFragment.OnHeaderClickedListener</i></A><br>
+<!-- Class HeadersSupportFragment.OnHeaderViewSelectedListener -->
+<A HREF="android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderViewSelectedListener.html" class="hiddenlink" target="rightframe"><i>HeadersSupportFragment.OnHeaderViewSelectedListener</i></A><br>
+<!-- Method icon -->
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.icon_removed(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><strike>icon</strike>
+(<code>Drawable</code>)</A></nobr><br>
+<!-- Method iconResourceId -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.iconResourceId_changed(int, android.content.Context)" class="hiddenlink" target="rightframe">iconResourceId
+(<code>int, Context</code>)</A></nobr><br>
+<!-- Class ICUCompat -->
+<i>ICUCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.text.ICUCompat.html" class="hiddenlink" target="rightframe">android.support.v4.text</A><br>
+<!-- Constructor ICUCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.text.ICUCompat.html#android.support.v4.text.ICUCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ICUCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method id -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.id_changed(long)" class="hiddenlink" target="rightframe">id
+(<code>long</code>)</A></nobr><br>
+<!-- Class ImageCardView -->
+<i>ImageCardView</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v17.leanback.widget.ImageCardView.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Constructor ImageCardView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.ctor_changed(android.content.Context, int)" class="hiddenlink" target="rightframe">ImageCardView
+(<code>Context, int</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Method inflate -->
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.inflate_added(android.graphics.drawable.Drawable, android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe"><b>inflate</b>
+(<code>Drawable, Resources, XmlPullParser, AttributeSet, Theme</code>)</A></nobr><br>
+<!-- Method infoOnly -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.infoOnly_changed(boolean)" class="hiddenlink" target="rightframe">infoOnly
+(<code>boolean</code>)</A></nobr><br>
+<!-- Class InputDeviceCompat -->
+<i>InputDeviceCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.InputDeviceCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor InputDeviceCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.InputDeviceCompat.html#android.support.v4.view.InputDeviceCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>InputDeviceCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method intent -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.intent_changed(android.content.Intent)" class="hiddenlink" target="rightframe">intent
+(<code>Intent</code>)</A></nobr><br>
+<!-- Class IntentCompat -->
+<A HREF="android.support.v4.content.IntentCompat.html" class="hiddenlink" target="rightframe">IntentCompat</A><br>
+<!-- Method isAutoMeasureEnabled -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.isAutoMeasureEnabled_added()" class="hiddenlink" target="rightframe"><b>isAutoMeasureEnabled</b>
+()</A></nobr><br>
+<!-- Method isButtonActions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.isButtonActions_added()" class="hiddenlink" target="rightframe"><b>isButtonActions</b>
+()</A></nobr><br>
+<!-- Method isCounterEnabled -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.isCounterEnabled_added()" class="hiddenlink" target="rightframe"><b>isCounterEnabled</b>
+()</A></nobr><br>
+<!-- Method isDescriptionEditable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isDescriptionEditable_added()" class="hiddenlink" target="rightframe"><b>isDescriptionEditable</b>
+()</A></nobr><br>
+<!-- Method isDividerAllowedAbove -->
+<nobr><A HREF="android.support.v7.preference.PreferenceViewHolder.html#android.support.v7.preference.PreferenceViewHolder.isDividerAllowedAbove_added()" class="hiddenlink" target="rightframe"><b>isDividerAllowedAbove</b>
+()</A></nobr><br>
+<!-- Method isDividerAllowedBelow -->
+<nobr><A HREF="android.support.v7.preference.PreferenceViewHolder.html#android.support.v7.preference.PreferenceViewHolder.isDividerAllowedBelow_added()" class="hiddenlink" target="rightframe"><b>isDividerAllowedBelow</b>
+()</A></nobr><br>
+<!-- Method isExpandTransitionSupported -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.isExpandTransitionSupported_added()" class="hiddenlink" target="rightframe"><b>isExpandTransitionSupported</b>
+()</A></nobr><br>
+<!-- Method isFocusable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.isFocusable_added()" class="hiddenlink" target="rightframe"><b>isFocusable</b>
+()</A></nobr><br>
+<!-- Method isFocusOutEndAllowed -->
+<i>isFocusOutEndAllowed</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.isFocusOutEndAllowed_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method isFocusOutEndAllowed -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.isFocusOutEndAllowed_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method isFocusOutStartAllowed -->
+<i>isFocusOutStartAllowed</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.isFocusOutStartAllowed_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method isFocusOutStartAllowed -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.isFocusOutStartAllowed_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method isHintEnabled -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.isHintEnabled_added()" class="hiddenlink" target="rightframe"><b>isHintEnabled</b>
+()</A></nobr><br>
+<!-- Method isInEditing -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditing_added()" class="hiddenlink" target="rightframe"><b>isInEditing</b>
+()</A></nobr><br>
+<!-- Method isInEditingActivatorView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingActivatorView_added()" class="hiddenlink" target="rightframe"><b>isInEditingActivatorView</b>
+()</A></nobr><br>
+<!-- Method isInEditingDescription -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingDescription_added()" class="hiddenlink" target="rightframe"><b>isInEditingDescription</b>
+()</A></nobr><br>
+<!-- Method isInEditingText -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingText_added()" class="hiddenlink" target="rightframe"><b>isInEditingText</b>
+()</A></nobr><br>
+<!-- Method isInEditingTitle -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingTitle_added()" class="hiddenlink" target="rightframe"><b>isInEditingTitle</b>
+()</A></nobr><br>
+<!-- Method isInExpandTransition -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.isInExpandTransition_added()" class="hiddenlink" target="rightframe"><b>isInExpandTransition</b>
+()</A></nobr><br>
+<!-- Method isMeasurementCacheEnabled -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.isMeasurementCacheEnabled_added()" class="hiddenlink" target="rightframe"><b>isMeasurementCacheEnabled</b>
+()</A></nobr><br>
+<!-- Method isMeasuring -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.State.html#android.support.v7.widget.RecyclerView.State.isMeasuring_added()" class="hiddenlink" target="rightframe"><b>isMeasuring</b>
+()</A></nobr><br>
+<!-- Method isSizeFromDrawableIntrinsic -->
+<nobr><A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html#android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.isSizeFromDrawableIntrinsic_added()" class="hiddenlink" target="rightframe"><b>isSizeFromDrawableIntrinsic</b>
+()</A></nobr><br>
+<!-- Method isSubAction -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isSubAction_added()" class="hiddenlink" target="rightframe"><b>isSubAction</b>
+()</A></nobr><br>
+<!-- Method isSubActionsExpanded -->
+<i>isSubActionsExpanded</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.isSubActionsExpanded_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method isSubActionsExpanded -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.isSubActionsExpanded_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method isSubActionsExpanded -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.isSubActionsExpanded_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Field item_touch_helper_swipe_escape_max_velocity -->
+<nobr><A HREF="android.support.v7.recyclerview.R.dimen.html#android.support.v7.recyclerview.R.dimen.item_touch_helper_swipe_escape_max_velocity" class="hiddenlink" target="rightframe">item_touch_helper_swipe_escape_max_velocity</A>
+</nobr><br>
+<!-- Field item_touch_helper_swipe_escape_velocity -->
+<nobr><A HREF="android.support.v7.recyclerview.R.dimen.html#android.support.v7.recyclerview.R.dimen.item_touch_helper_swipe_escape_velocity" class="hiddenlink" target="rightframe">item_touch_helper_swipe_escape_velocity</A>
+</nobr><br>
+<!-- Class ItemTouchHelper.Callback -->
+<A HREF="android.support.v7.widget.helper.ItemTouchHelper.Callback.html" class="hiddenlink" target="rightframe">ItemTouchHelper.Callback</A><br>
+<!-- Field KEY_ID -->
+<A NAME="K"></A>
+<br><font size="+2">K</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.KEY_ID" class="hiddenlink" target="rightframe">KEY_ID</A>
+</nobr><br>
+<!-- Class KeyEventCompat -->
+<i>KeyEventCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.KeyEventCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor KeyEventCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.KeyEventCompat.html#android.support.v4.view.KeyEventCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>KeyEventCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method LABToColor -->
+<A NAME="L"></A>
+<br><font size="+2">L</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.LABToColor_added(double, double, double)" class="hiddenlink" target="rightframe"><b>LABToColor</b>
+(<code>double, double, double</code>)</A></nobr><br>
+<!-- Method LABToXYZ -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.LABToXYZ_added(double, double, double, double[])" class="hiddenlink" target="rightframe"><b>LABToXYZ</b>
+(<code>double, double, double, double[]</code>)</A></nobr><br>
+<!-- Method layoutChild -->
+<i>layoutChild</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.HeaderScrollingViewBehavior.html#android.support.design.widget.HeaderScrollingViewBehavior.layoutChild_added(android.support.design.widget.CoordinatorLayout, android.view.View, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CoordinatorLayout, View, int</code>)</b>&nbsp;in&nbsp;android.support.design.widget.HeaderScrollingViewBehavior
+</A></nobr><br>
+<!-- Method layoutChild -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.ViewOffsetBehavior.html#android.support.design.widget.ViewOffsetBehavior.layoutChild_added(android.support.design.widget.CoordinatorLayout, V, int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>CoordinatorLayout, V, int</code>)</b>&nbsp;in&nbsp;android.support.design.widget.ViewOffsetBehavior
+</A></nobr><br>
+<!-- Class LayoutInflaterCompat -->
+<A HREF="android.support.v4.view.LayoutInflaterCompat.html" class="hiddenlink" target="rightframe">LayoutInflaterCompat</A><br>
+<!-- Class ListPopupWindowCompat -->
+<A HREF="android.support.v4.widget.ListPopupWindowCompat.html" class="hiddenlink" target="rightframe">ListPopupWindowCompat</A><br>
+<!-- Class ListRowPresenter.SelectItemViewHolderTask -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ListRowPresenter.SelectItemViewHolderTask" class="hiddenlink" target="rightframe"><b>ListRowPresenter.SelectItemViewHolderTask</b></A><br>
+<!-- Class ListRowPresenter.ViewHolder -->
+<A HREF="android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.html" class="hiddenlink" target="rightframe">ListRowPresenter.ViewHolder</A><br>
+<!-- Class ListViewCompat -->
+<A HREF="pkg_android.support.v4.widget.html#ListViewCompat" class="hiddenlink" target="rightframe"><b>ListViewCompat</b></A><br>
+<!-- Class LocalBroadcastManager -->
+<A HREF="android.support.v4.content.LocalBroadcastManager.html" class="hiddenlink" target="rightframe">LocalBroadcastManager</A><br>
+<!-- Field LOCK_MODE_UNDEFINED -->
+<nobr><A HREF="android.support.v4.widget.DrawerLayout.html#android.support.v4.widget.DrawerLayout.LOCK_MODE_UNDEFINED" class="hiddenlink" target="rightframe">LOCK_MODE_UNDEFINED</A>
+</nobr><br>
+<!-- Field mActionsGridView -->
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.mActionsGridView" class="hiddenlink" target="rightframe"><strike>mActionsGridView</strike></A>
+</nobr><br>
+<!-- Class MarginLayoutParamsCompat -->
+<i>MarginLayoutParamsCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.MarginLayoutParamsCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor MarginLayoutParamsCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.MarginLayoutParamsCompat.html#android.support.v4.view.MarginLayoutParamsCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>MarginLayoutParamsCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class MediaBrowserCompat -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat</b></A><br>
+<!-- Class MediaBrowserCompat.ConnectionCallback -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.ConnectionCallback" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.ConnectionCallback</b></A><br>
+<!-- Class MediaBrowserCompat.ItemCallback -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.ItemCallback" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.ItemCallback</b></A><br>
+<!-- Class MediaBrowserCompat.MediaItem -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.MediaItem" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.MediaItem</b></A><br>
+<!-- Class MediaBrowserCompat.SubscriptionCallback -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.SubscriptionCallback" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.SubscriptionCallback</b></A><br>
+<!-- Class MediaBrowserServiceCompat -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserServiceCompat" class="hiddenlink" target="rightframe"><b>MediaBrowserServiceCompat</b></A><br>
+<!-- Class MediaBrowserServiceCompat.BrowserRoot -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserServiceCompat.BrowserRoot" class="hiddenlink" target="rightframe"><b>MediaBrowserServiceCompat.BrowserRoot</b></A><br>
+<!-- Class MediaBrowserServiceCompat.Result -->
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserServiceCompat.Result" class="hiddenlink" target="rightframe"><b>MediaBrowserServiceCompat.Result</b></A><br>
+<!-- Class MediaRouteDescriptor -->
+<A HREF="android.support.v7.media.MediaRouteDescriptor.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor</A><br>
+<!-- Class MediaRouteDescriptor.Builder -->
+<A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor.Builder</A><br>
+<!-- Class MediaRouter.Callback -->
+<A HREF="android.support.v7.media.MediaRouter.Callback.html" class="hiddenlink" target="rightframe">MediaRouter.Callback</A><br>
+<!-- Class MediaRouter.RouteGroup -->
+<A HREF="pkg_android.support.v7.media.html#MediaRouter.RouteGroup" class="hiddenlink" target="rightframe"><strike>MediaRouter.RouteGroup</strike></A><br>
+<!-- Class MenuCompat -->
+<i>MenuCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.MenuCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor MenuCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.MenuCompat.html#android.support.v4.view.MenuCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>MenuCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class MenuItemCompat -->
+<i>MenuItemCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.MenuItemCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor MenuItemCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.MenuItemCompat.html#android.support.v4.view.MenuItemCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>MenuItemCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Field mMainView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.mMainView" class="hiddenlink" target="rightframe"><strike>mMainView</strike></A>
+</nobr><br>
+<!-- Field MODE_NIGHT_AUTO -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.MODE_NIGHT_AUTO" class="hiddenlink" target="rightframe">MODE_NIGHT_AUTO</A>
+</nobr><br>
+<!-- Field MODE_NIGHT_FOLLOW_SYSTEM -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM" class="hiddenlink" target="rightframe">MODE_NIGHT_FOLLOW_SYSTEM</A>
+</nobr><br>
+<!-- Field MODE_NIGHT_NO -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.MODE_NIGHT_NO" class="hiddenlink" target="rightframe">MODE_NIGHT_NO</A>
+</nobr><br>
+<!-- Field MODE_NIGHT_YES -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.MODE_NIGHT_YES" class="hiddenlink" target="rightframe">MODE_NIGHT_YES</A>
+</nobr><br>
+<!-- Class MotionEventCompat -->
+<i>MotionEventCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.MotionEventCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor MotionEventCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.MotionEventCompat.html#android.support.v4.view.MotionEventCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>MotionEventCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Field mSelectorView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.mSelectorView" class="hiddenlink" target="rightframe"><strike>mSelectorView</strike></A>
+</nobr><br>
+<!-- Method multilineDescription -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.multilineDescription_changed(boolean)" class="hiddenlink" target="rightframe">multilineDescription
+(<code>boolean</code>)</A></nobr><br>
+<!-- Class NavUtils -->
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.app.NavUtils.html" class="hiddenlink" target="rightframe">NavUtils</A><br>
+<!-- Field NO_DRAWABLE -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.NO_DRAWABLE" class="hiddenlink" target="rightframe"><strike>NO_DRAWABLE</strike></A>
+</nobr><br>
+<!-- Class NotificationManagerCompat -->
+<A HREF="android.support.v4.app.NotificationManagerCompat.html" class="hiddenlink" target="rightframe">NotificationManagerCompat</A><br>
+<!-- Method notifyActionChanged -->
+<i>notifyActionChanged</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.notifyActionChanged_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method notifyActionChanged -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.notifyActionChanged_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method notifyButtonActionChanged -->
+<i>notifyButtonActionChanged</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.notifyButtonActionChanged_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method notifyButtonActionChanged -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.notifyButtonActionChanged_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onAddSharedElementTransition -->
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>onAddSharedElementTransition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onAddSharedElementTransition_added(android.app.FragmentTransaction, android.support.v17.leanback.app.GuidedStepFragment)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>FragmentTransaction, GuidedStepFragment</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onAddSharedElementTransition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onAddSharedElementTransition_added(android.support.v4.app.FragmentTransaction, android.support.v17.leanback.app.GuidedStepSupportFragment)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>FragmentTransaction, GuidedStepSupportFragment</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onAnimateItemPressedCancelled -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onAnimateItemPressedCancelled_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" class="hiddenlink" target="rightframe"><b>onAnimateItemPressedCancelled</b>
+(<code>ViewHolder</code>)</A></nobr><br>
+<!-- Method onBindActivatorView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onBindActivatorView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onBindActivatorView</b>
+(<code>ViewHolder, GuidedAction</code>)</A></nobr><br>
+<!-- Method onBindCheckMarkView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onBindCheckMarkView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onBindCheckMarkView</b>
+(<code>ViewHolder, GuidedAction</code>)</A></nobr><br>
+<!-- Method onBindChevronView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onBindChevronView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onBindChevronView</b>
+(<code>ViewHolder, GuidedAction</code>)</A></nobr><br>
+<!-- Method onCreateBackgroundView -->
+<i>onCreateBackgroundView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onCreateBackgroundView_added(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>LayoutInflater, ViewGroup, Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onCreateBackgroundView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onCreateBackgroundView_added(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>LayoutInflater, ViewGroup, Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onCreateButtonActions -->
+<i>onCreateButtonActions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onCreateButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;GuidedAction&gt;, Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onCreateButtonActions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onCreateButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>, android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;GuidedAction&gt;, Bundle</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onCreateButtonActionsStylist -->
+<i>onCreateButtonActionsStylist</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onCreateButtonActionsStylist_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onCreateButtonActionsStylist -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onCreateButtonActionsStylist_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onCreateView -->
+<nobr><A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.html#android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.onCreateView_added(android.view.ViewGroup)" class="hiddenlink" target="rightframe"><b>onCreateView</b>
+(<code>ViewGroup</code>)</A></nobr><br>
+<!-- Method onCreateViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onCreateViewHolder_added(android.view.ViewGroup, int)" class="hiddenlink" target="rightframe"><b>onCreateViewHolder</b>
+(<code>ViewGroup, int</code>)</A></nobr><br>
+<!-- Method onDestroyView -->
+<i>onDestroyView</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidanceStylist.html#android.support.v17.leanback.widget.GuidanceStylist.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidanceStylist
+</A></nobr><br>
+<!-- Method onDestroyView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onDestroyView_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.v17.leanback.widget.GuidedActionsStylist
+</A></nobr><br>
+<!-- Method onEditingModeChange -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onEditingModeChange_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction, boolean)" class="hiddenlink" target="rightframe"><b>onEditingModeChange</b>
+(<code>ViewHolder, GuidedAction, boolean</code>)</A></nobr><br>
+<!-- Method onGuidedActionEditedAndProceed -->
+<i>onGuidedActionEditedAndProceed</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onGuidedActionEditedAndProceed_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onGuidedActionEditedAndProceed -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onGuidedActionEditedAndProceed_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onHeaderClicked -->
+<i>onHeaderClicked</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener.html#android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener.onHeaderClicked_changed(android.support.v17.leanback.widget.RowHeaderPresenter.ViewHolder, android.support.v17.leanback.widget.Row)" class="hiddenlink" target="rightframe">type&nbsp;
+(<code>ViewHolder, Row</code>)&nbsp;in&nbsp;android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener
+</A></nobr><br>
+<!-- Method onHeaderClicked -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener.html#android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener.onHeaderClicked_changed(android.support.v17.leanback.widget.RowHeaderPresenter.ViewHolder, android.support.v17.leanback.widget.Row)" class="hiddenlink" target="rightframe">type&nbsp;
+(<code>ViewHolder, Row</code>)&nbsp;in&nbsp;android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener
+</A></nobr><br>
+<!-- Method onLayoutChild -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onLayoutChild_removed(android.support.design.widget.CoordinatorLayout, android.view.View, int)" class="hiddenlink" target="rightframe"><strike>onLayoutChild</strike>
+(<code>CoordinatorLayout, View, int</code>)</A></nobr><br>
+<!-- Method onProvideBackgroundFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onProvideBackgroundFragment_removed()" class="hiddenlink" target="rightframe"><strike>onProvideBackgroundFragment</strike>
+()</A></nobr><br>
+<!-- Method onProvideBackgroundSupportFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onProvideBackgroundSupportFragment_removed()" class="hiddenlink" target="rightframe"><strike>onProvideBackgroundSupportFragment</strike>
+()</A></nobr><br>
+<!-- Method onProvideItemLayoutId -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onProvideItemLayoutId_added(int)" class="hiddenlink" target="rightframe"><b>onProvideItemLayoutId</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method onRouteUnselected -->
+<nobr><A HREF="android.support.v7.media.MediaRouter.Callback.html#android.support.v7.media.MediaRouter.Callback.onRouteUnselected_added(android.support.v7.media.MediaRouter, android.support.v7.media.MediaRouter.RouteInfo, int)" class="hiddenlink" target="rightframe"><b>onRouteUnselected</b>
+(<code>MediaRouter, RouteInfo, int</code>)</A></nobr><br>
+<!-- Method onSaveInstanceState -->
+<i>onSaveInstanceState</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.onSaveInstanceState_added()" class="hiddenlink" target="rightframe">type&nbsp;<b>
+()</b>&nbsp;in&nbsp;android.support.design.widget.TextInputLayout
+</A></nobr><br>
+<!-- Method onSaveInstanceState -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.onSaveInstanceState_added(android.os.Bundle)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Bundle</code>)</b>&nbsp;in&nbsp;android.support.v7.app.AppCompatDelegate
+</A></nobr><br>
+<!-- Method onStartActivityFromFragment -->
+<nobr><A HREF="android.support.v4.app.FragmentHostCallback.html#android.support.v4.app.FragmentHostCallback.onStartActivityFromFragment_added(android.support.v4.app.Fragment, android.content.Intent, int, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>onStartActivityFromFragment</b>
+(<code>Fragment, Intent, int, Bundle</code>)</A></nobr><br>
+<!-- Method onSubGuidedActionClicked -->
+<i>onSubGuidedActionClicked</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onSubGuidedActionClicked_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method onSubGuidedActionClicked -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onSubGuidedActionClicked_added(android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>GuidedAction</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method onUpdateActivatorView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onUpdateActivatorView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>onUpdateActivatorView</b>
+(<code>ViewHolder, GuidedAction</code>)</A></nobr><br>
+<!-- Method onUpdateExpandedViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.onUpdateExpandedViewHolder_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" class="hiddenlink" target="rightframe"><b>onUpdateExpandedViewHolder</b>
+(<code>ViewHolder</code>)</A></nobr><br>
+<!-- Class OrientationHelper -->
+<A HREF="android.support.v7.widget.OrientationHelper.html" class="hiddenlink" target="rightframe">OrientationHelper</A><br>
+<!-- Class Palette -->
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.graphics.Palette.html" class="hiddenlink" target="rightframe">Palette</A><br>
+<!-- Class Palette.Builder -->
+<A HREF="android.support.v7.graphics.Palette.Builder.html" class="hiddenlink" target="rightframe">Palette.Builder</A><br>
+<!-- Class ParallelExecutorCompat -->
+<i>ParallelExecutorCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.content.ParallelExecutorCompat.html" class="hiddenlink" target="rightframe">android.support.v4.content</A><br>
+<!-- Constructor ParallelExecutorCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.content.ParallelExecutorCompat.html#android.support.v4.content.ParallelExecutorCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ParallelExecutorCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class ParcelableCompat -->
+<i>ParcelableCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.os.ParcelableCompat.html" class="hiddenlink" target="rightframe">android.support.v4.os</A><br>
+<!-- Constructor ParcelableCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.os.ParcelableCompat.html#android.support.v4.os.ParcelableCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ParcelableCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class PathInterpolatorCompat -->
+<A HREF="android.support.v4.view.animation.PathInterpolatorCompat.html" class="hiddenlink" target="rightframe">PathInterpolatorCompat</A><br>
+<!-- Class PercentLayoutHelper.PercentLayoutInfo -->
+<A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html" class="hiddenlink" target="rightframe">PercentLayoutHelper.PercentLayoutInfo</A><br>
+<!-- Method popBackStackToGuidedStepFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.popBackStackToGuidedStepFragment_added(java.lang.Class, int)" class="hiddenlink" target="rightframe"><b>popBackStackToGuidedStepFragment</b>
+(<code>Class, int</code>)</A></nobr><br>
+<!-- Method popBackStackToGuidedStepSupportFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.popBackStackToGuidedStepSupportFragment_added(java.lang.Class, int)" class="hiddenlink" target="rightframe"><b>popBackStackToGuidedStepSupportFragment</b>
+(<code>Class, int</code>)</A></nobr><br>
+<!-- Class PopupMenuCompat -->
+<A HREF="android.support.v4.widget.PopupMenuCompat.html" class="hiddenlink" target="rightframe">PopupMenuCompat</A><br>
+<!-- Class PopupWindowCompat -->
+<A HREF="android.support.v4.widget.PopupWindowCompat.html" class="hiddenlink" target="rightframe">PopupWindowCompat</A><br>
+<!-- Class PreferenceFragment -->
+<A HREF="android.support.v14.preference.PreferenceFragment.html" class="hiddenlink" target="rightframe">PreferenceFragment</A><br>
+<!-- Class PreferenceFragmentCompat -->
+<A HREF="android.support.v7.preference.PreferenceFragmentCompat.html" class="hiddenlink" target="rightframe">PreferenceFragmentCompat</A><br>
+<!-- Class PreferenceScreen -->
+<A HREF="android.support.v7.preference.PreferenceScreen.html" class="hiddenlink" target="rightframe">PreferenceScreen</A><br>
+<!-- Class PreferenceViewHolder -->
+<A HREF="android.support.v7.preference.PreferenceViewHolder.html" class="hiddenlink" target="rightframe">PreferenceViewHolder</A><br>
+<!-- Class Presenter.ViewHolderTask -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#Presenter.ViewHolderTask" class="hiddenlink" target="rightframe"><b>Presenter.ViewHolderTask</b></A><br>
+<!-- Class R.attr -->
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.appcompat.R.attr.html" class="hiddenlink" target="rightframe">R.attr</A><br>
+<!-- Class R.dimen -->
+<A HREF="android.support.v7.recyclerview.R.dimen.html" class="hiddenlink" target="rightframe">R.dimen</A><br>
+<!-- Class R.drawable -->
+<A HREF="android.support.v7.appcompat.R.drawable.html" class="hiddenlink" target="rightframe">R.drawable</A><br>
+<!-- Class R.style -->
+<A HREF="android.support.v7.appcompat.R.style.html" class="hiddenlink" target="rightframe">R.style</A><br>
+<!-- Class R.styleable -->
+<A HREF="android.support.v7.appcompat.R.styleable.html" class="hiddenlink" target="rightframe">R.styleable</A><br>
+<!-- Field ratingBarStyleIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.ratingBarStyleIndicator" class="hiddenlink" target="rightframe">ratingBarStyleIndicator</A>
+</nobr><br>
+<!-- Field ratingBarStyleSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.ratingBarStyleSmall" class="hiddenlink" target="rightframe">ratingBarStyleSmall</A>
+</nobr><br>
+<!-- Class RecyclerView -->
+<A HREF="android.support.v7.widget.RecyclerView.html" class="hiddenlink" target="rightframe">RecyclerView</A><br>
+<!-- Class RecyclerView.ItemAnimator -->
+<A HREF="android.support.v7.widget.RecyclerView.ItemAnimator.html" class="hiddenlink" target="rightframe">RecyclerView.ItemAnimator</A><br>
+<!-- Class RecyclerView.LayoutManager -->
+<A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html" class="hiddenlink" target="rightframe">RecyclerView.LayoutManager</A><br>
+<!-- Class RecyclerView.State -->
+<A HREF="android.support.v7.widget.RecyclerView.State.html" class="hiddenlink" target="rightframe">RecyclerView.State</A><br>
+<!-- Class RemoteInput -->
+<A HREF="android.support.v4.app.RemoteInput.html" class="hiddenlink" target="rightframe">RemoteInput</A><br>
+<!-- Method removeDrawerListener -->
+<nobr><A HREF="android.support.v4.widget.DrawerLayout.html#android.support.v4.widget.DrawerLayout.removeDrawerListener_added(android.support.v4.widget.DrawerLayout.DrawerListener)" class="hiddenlink" target="rightframe"><b>removeDrawerListener</b>
+(<code>DrawerListener</code>)</A></nobr><br>
+<!-- Method resizeBitmapArea -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.resizeBitmapArea_added(int)" class="hiddenlink" target="rightframe"><b>resizeBitmapArea</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method resizeBitmapSize -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.resizeBitmapSize_changed(int)" class="hiddenlink" target="rightframe">resizeBitmapSize
+(<code>int</code>)</A></nobr><br>
+<!-- Class ResourcesCompat -->
+<i>ResourcesCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.content.res.ResourcesCompat.html" class="hiddenlink" target="rightframe">android.support.v4.content.res</A><br>
+<!-- Constructor ResourcesCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ResourcesCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method RGBToLAB -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.RGBToLAB_added(int, int, int, double[])" class="hiddenlink" target="rightframe"><b>RGBToLAB</b>
+(<code>int, int, int, double[]</code>)</A></nobr><br>
+<!-- Method RGBToXYZ -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.RGBToXYZ_added(int, int, int, double[])" class="hiddenlink" target="rightframe"><b>RGBToXYZ</b>
+(<code>int, int, int, double[]</code>)</A></nobr><br>
+<!-- Class RoundedBitmapDrawableFactory -->
+<i>RoundedBitmapDrawableFactory</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory.html" class="hiddenlink" target="rightframe">android.support.v4.graphics.drawable</A><br>
+<!-- Constructor RoundedBitmapDrawableFactory -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory.html#android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory.ctor_removed()" class="hiddenlink" target="rightframe"><strike>RoundedBitmapDrawableFactory</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class RowsFragment -->
+<A HREF="android.support.v17.leanback.app.RowsFragment.html" class="hiddenlink" target="rightframe">RowsFragment</A><br>
+<!-- Class RowsSupportFragment -->
+<A HREF="android.support.v17.leanback.app.RowsSupportFragment.html" class="hiddenlink" target="rightframe">RowsSupportFragment</A><br>
+<!-- Class ScaleGestureDetectorCompat -->
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.view.ScaleGestureDetectorCompat.html" class="hiddenlink" target="rightframe">ScaleGestureDetectorCompat</A><br>
+<!-- Class ScrollerCompat -->
+<A HREF="android.support.v4.widget.ScrollerCompat.html" class="hiddenlink" target="rightframe">ScrollerCompat</A><br>
+<!-- Class SearchViewCompat -->
+<A HREF="android.support.v4.widget.SearchViewCompat.html" class="hiddenlink" target="rightframe">SearchViewCompat</A><br>
+<!-- Class ServiceCompat -->
+<A HREF="android.support.v4.app.ServiceCompat.html" class="hiddenlink" target="rightframe">ServiceCompat</A><br>
+<!-- Method setAsButtonActions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.setAsButtonActions_added()" class="hiddenlink" target="rightframe"><b>setAsButtonActions</b>
+()</A></nobr><br>
+<!-- Method setAutoMeasureEnabled -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.setAutoMeasureEnabled_added(boolean)" class="hiddenlink" target="rightframe"><b>setAutoMeasureEnabled</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setButtonActions -->
+<i>setButtonActions</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;GuidedAction&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method setButtonActions -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.setButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>List&lt;GuidedAction&gt;</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method setCompatElevation -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.setCompatElevation_added(float)" class="hiddenlink" target="rightframe"><b>setCompatElevation</b>
+(<code>float</code>)</A></nobr><br>
+<!-- Method setDefaultNightMode -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.setDefaultNightMode_added(int)" class="hiddenlink" target="rightframe"><b>setDefaultNightMode</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setDivider -->
+<i>setDivider</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v14.preference.PreferenceFragment.html#android.support.v14.preference.PreferenceFragment.setDivider_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Drawable</code>)</b>&nbsp;in&nbsp;android.support.v14.preference.PreferenceFragment
+</A></nobr><br>
+<!-- Method setDivider -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.preference.PreferenceFragmentCompat.html#android.support.v7.preference.PreferenceFragmentCompat.setDivider_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>Drawable</code>)</b>&nbsp;in&nbsp;android.support.v7.preference.PreferenceFragmentCompat
+</A></nobr><br>
+<!-- Method setDividerAllowedAbove -->
+<nobr><A HREF="android.support.v7.preference.PreferenceViewHolder.html#android.support.v7.preference.PreferenceViewHolder.setDividerAllowedAbove_added(boolean)" class="hiddenlink" target="rightframe"><b>setDividerAllowedAbove</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setDividerAllowedBelow -->
+<nobr><A HREF="android.support.v7.preference.PreferenceViewHolder.html#android.support.v7.preference.PreferenceViewHolder.setDividerAllowedBelow_added(boolean)" class="hiddenlink" target="rightframe"><b>setDividerAllowedBelow</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setDividerHeight -->
+<i>setDividerHeight</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v14.preference.PreferenceFragment.html#android.support.v14.preference.PreferenceFragment.setDividerHeight_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v14.preference.PreferenceFragment
+</A></nobr><br>
+<!-- Method setDividerHeight -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v7.preference.PreferenceFragmentCompat.html#android.support.v7.preference.PreferenceFragmentCompat.setDividerHeight_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v7.preference.PreferenceFragmentCompat
+</A></nobr><br>
+<!-- Method setDrawerListener -->
+<nobr><A HREF="android.support.v4.widget.DrawerLayout.html#android.support.v4.widget.DrawerLayout.setDrawerListener_changed(android.support.v4.widget.DrawerLayout.DrawerListener)" class="hiddenlink" target="rightframe">setDrawerListener
+(<code>DrawerListener</code>)</A></nobr><br>
+<!-- Method setEditDescription -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setEditDescription_added(java.lang.CharSequence)" class="hiddenlink" target="rightframe"><b>setEditDescription</b>
+(<code>CharSequence</code>)</A></nobr><br>
+<!-- Method setEditingMode -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.setEditingMode_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction, boolean)" class="hiddenlink" target="rightframe"><b>setEditingMode</b>
+(<code>ViewHolder, GuidedAction, boolean</code>)</A></nobr><br>
+<!-- Method setExpandedTitleMargin -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMargin_added(int, int, int, int)" class="hiddenlink" target="rightframe"><b>setExpandedTitleMargin</b>
+(<code>int, int, int, int</code>)</A></nobr><br>
+<!-- Method setExpandedTitleMarginBottom -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginBottom_added(int)" class="hiddenlink" target="rightframe"><b>setExpandedTitleMarginBottom</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setExpandedTitleMarginEnd -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginEnd_added(int)" class="hiddenlink" target="rightframe"><b>setExpandedTitleMarginEnd</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setExpandedTitleMarginStart -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginStart_added(int)" class="hiddenlink" target="rightframe"><b>setExpandedTitleMarginStart</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setExpandedTitleMarginTop -->
+<nobr><A HREF="android.support.design.widget.CollapsingToolbarLayout.html#android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginTop_added(int)" class="hiddenlink" target="rightframe"><b>setExpandedTitleMarginTop</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setExpandedViewHolder -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.setExpandedViewHolder_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" class="hiddenlink" target="rightframe"><b>setExpandedViewHolder</b>
+(<code>ViewHolder</code>)</A></nobr><br>
+<!-- Method setFocusable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setFocusable_added(boolean)" class="hiddenlink" target="rightframe"><b>setFocusable</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setHintEnabled -->
+<nobr><A HREF="android.support.design.widget.TextInputLayout.html#android.support.design.widget.TextInputLayout.setHintEnabled_added(boolean)" class="hiddenlink" target="rightframe"><b>setHintEnabled</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setIntent -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setIntent_added(android.content.Intent)" class="hiddenlink" target="rightframe"><b>setIntent</b>
+(<code>Intent</code>)</A></nobr><br>
+<!-- Method setLocalNightMode -->
+<nobr><A HREF="android.support.v7.app.AppCompatDelegate.html#android.support.v7.app.AppCompatDelegate.setLocalNightMode_added(int)" class="hiddenlink" target="rightframe"><b>setLocalNightMode</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setMeasuredDimension -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.setMeasuredDimension_added(android.graphics.Rect, int, int)" class="hiddenlink" target="rightframe"><b>setMeasuredDimension</b>
+(<code>Rect, int, int</code>)</A></nobr><br>
+<!-- Method setMeasurementCacheEnabled -->
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.setMeasurementCacheEnabled_added(boolean)" class="hiddenlink" target="rightframe"><b>setMeasurementCacheEnabled</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setOverlayTop -->
+<i>setOverlayTop</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.setOverlayTop_changed(int)" class="hiddenlink" target="rightframe">type&nbsp;
+(<code>int</code>)&nbsp;in&nbsp;android.support.design.widget.AppBarLayout.ScrollingViewBehavior
+</A></nobr><br>
+<!-- Method setOverlayTop -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.design.widget.HeaderScrollingViewBehavior.html#android.support.design.widget.HeaderScrollingViewBehavior.setOverlayTop_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.design.widget.HeaderScrollingViewBehavior
+</A></nobr><br>
+<!-- Method setSecondaryToolbarColor -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.Builder.html#android.support.customtabs.CustomTabsIntent.Builder.setSecondaryToolbarColor_added(int)" class="hiddenlink" target="rightframe"><b>setSecondaryToolbarColor</b>
+(<code>int</code>)</A></nobr><br>
+<!-- Method setSelectedButtonActionPosition -->
+<i>setSelectedButtonActionPosition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.setSelectedButtonActionPosition_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method setSelectedButtonActionPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.setSelectedButtonActionPosition_added(int)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method setSelectedPosition -->
+<i>setSelectedPosition</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseFragment.html#android.support.v17.leanback.app.BrowseFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, boolean, ViewHolderTask</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseFragment
+</A></nobr><br>
+<!-- Method setSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html#android.support.v17.leanback.app.BrowseSupportFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, boolean, ViewHolderTask</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.BrowseSupportFragment
+</A></nobr><br>
+<!-- Method setSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.RowsFragment.html#android.support.v17.leanback.app.RowsFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, boolean, ViewHolderTask</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.RowsFragment
+</A></nobr><br>
+<!-- Method setSelectedPosition -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.RowsSupportFragment.html#android.support.v17.leanback.app.RowsSupportFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" class="hiddenlink" target="rightframe">type&nbsp;<b>
+(<code>int, boolean, ViewHolderTask</code>)</b>&nbsp;in&nbsp;android.support.v17.leanback.app.RowsSupportFragment
+</A></nobr><br>
+<!-- Method setShouldUseGeneratedIds -->
+<nobr><A HREF="android.support.v7.preference.PreferenceScreen.html#android.support.v7.preference.PreferenceScreen.setShouldUseGeneratedIds_added(boolean)" class="hiddenlink" target="rightframe"><b>setShouldUseGeneratedIds</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setSizeFromDrawableIntrinsic -->
+<nobr><A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html#android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.setSizeFromDrawableIntrinsic_added(boolean)" class="hiddenlink" target="rightframe"><b>setSizeFromDrawableIntrinsic</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method setSubActions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.setSubActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>)" class="hiddenlink" target="rightframe"><b>setSubActions</b>
+(<code>List&lt;GuidedAction&gt;</code>)</A></nobr><br>
+<!-- Method setTabsFromPagerAdapter -->
+<nobr><A HREF="android.support.design.widget.TabLayout.html#android.support.design.widget.TabLayout.setTabsFromPagerAdapter_changed(android.support.v4.view.PagerAdapter)" class="hiddenlink" target="rightframe">setTabsFromPagerAdapter
+(<code>PagerAdapter</code>)</A></nobr><br>
+<!-- Method setTextAppearance -->
+<nobr><A HREF="android.support.v4.widget.TextViewCompat.html#android.support.v4.widget.TextViewCompat.setTextAppearance_added(android.widget.TextView, int)" class="hiddenlink" target="rightframe"><b>setTextAppearance</b>
+(<code>TextView, int</code>)</A></nobr><br>
+<!-- Method setToolbarItem -->
+<nobr><A HREF="android.support.customtabs.CustomTabsSession.html#android.support.customtabs.CustomTabsSession.setToolbarItem_added(int, android.graphics.Bitmap, java.lang.String)" class="hiddenlink" target="rightframe"><b>setToolbarItem</b>
+(<code>int, Bitmap, String</code>)</A></nobr><br>
+<!-- Method setupImeOptions -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.setupImeOptions_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" class="hiddenlink" target="rightframe"><b>setupImeOptions</b>
+(<code>ViewHolder, GuidedAction</code>)</A></nobr><br>
+<!-- Method setUseCompatPadding -->
+<nobr><A HREF="android.support.design.widget.FloatingActionButton.html#android.support.design.widget.FloatingActionButton.setUseCompatPadding_added(boolean)" class="hiddenlink" target="rightframe"><b>setUseCompatPadding</b>
+(<code>boolean</code>)</A></nobr><br>
+<!-- Class ShareCompat -->
+<i>ShareCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.app.ShareCompat.html" class="hiddenlink" target="rightframe">android.support.v4.app</A><br>
+<!-- Constructor ShareCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.app.ShareCompat.html#android.support.v4.app.ShareCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ShareCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class SharedPreferencesCompat -->
+<i>SharedPreferencesCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.content.SharedPreferencesCompat.html" class="hiddenlink" target="rightframe">android.support.v4.content</A><br>
+<!-- Constructor SharedPreferencesCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.content.SharedPreferencesCompat.html#android.support.v4.content.SharedPreferencesCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>SharedPreferencesCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class SharedPreferencesCompat.EditorCompat -->
+<A HREF="android.support.v4.content.SharedPreferencesCompat.EditorCompat.html" class="hiddenlink" target="rightframe">SharedPreferencesCompat.EditorCompat</A><br>
+<!-- Method shouldUseGeneratedIds -->
+<nobr><A HREF="android.support.v7.preference.PreferenceScreen.html#android.support.v7.preference.PreferenceScreen.shouldUseGeneratedIds_added()" class="hiddenlink" target="rightframe"><b>shouldUseGeneratedIds</b>
+()</A></nobr><br>
+<!-- Field Spinner_android_entries -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Spinner_android_entries" class="hiddenlink" target="rightframe">Spinner_android_entries</A>
+</nobr><br>
+<!-- Field srcCompat -->
+<nobr><A HREF="android.support.v7.appcompat.R.attr.html#android.support.v7.appcompat.R.attr.srcCompat" class="hiddenlink" target="rightframe">srcCompat</A>
+</nobr><br>
+<!-- Method startActivity -->
+<nobr><A HREF="android.support.v4.app.Fragment.html#android.support.v4.app.Fragment.startActivity_added(android.content.Intent, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>startActivity</b>
+(<code>Intent, Bundle</code>)</A></nobr><br>
+<!-- Method startActivityForResult -->
+<nobr><A HREF="android.support.v4.app.Fragment.html#android.support.v4.app.Fragment.startActivityForResult_added(android.content.Intent, int, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>startActivityForResult</b>
+(<code>Intent, int, Bundle</code>)</A></nobr><br>
+<!-- Method startActivityFromFragment -->
+<nobr><A HREF="android.support.v4.app.FragmentActivity.html#android.support.v4.app.FragmentActivity.startActivityFromFragment_added(android.support.v4.app.Fragment, android.content.Intent, int, android.os.Bundle)" class="hiddenlink" target="rightframe"><b>startActivityFromFragment</b>
+(<code>Fragment, Intent, int, Bundle</code>)</A></nobr><br>
+<!-- Method startExpandedTransition -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.startExpandedTransition_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" class="hiddenlink" target="rightframe"><b>startExpandedTransition</b>
+(<code>ViewHolder</code>)</A></nobr><br>
+<!-- Class TabItem -->
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.design.widget.html#TabItem" class="hiddenlink" target="rightframe"><b>TabItem</b></A><br>
+<!-- Class TabLayout -->
+<A HREF="android.support.design.widget.TabLayout.html" class="hiddenlink" target="rightframe">TabLayout</A><br>
+<!-- Class Target -->
+<A HREF="pkg_android.support.v7.graphics.html#Target" class="hiddenlink" target="rightframe"><b>Target</b></A><br>
+<!-- Class Target.Builder -->
+<A HREF="pkg_android.support.v7.graphics.html#Target.Builder" class="hiddenlink" target="rightframe"><b>Target.Builder</b></A><br>
+<!-- Class TaskStackBuilder -->
+<A HREF="android.support.v4.app.TaskStackBuilder.html" class="hiddenlink" target="rightframe">TaskStackBuilder</A><br>
+<!-- Class TextDirectionHeuristicsCompat -->
+<i>TextDirectionHeuristicsCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.text.TextDirectionHeuristicsCompat.html" class="hiddenlink" target="rightframe">android.support.v4.text</A><br>
+<!-- Constructor TextDirectionHeuristicsCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.text.TextDirectionHeuristicsCompat.html#android.support.v4.text.TextDirectionHeuristicsCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>TextDirectionHeuristicsCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class TextInputEditText -->
+<A HREF="pkg_android.support.design.widget.html#TextInputEditText" class="hiddenlink" target="rightframe"><b>TextInputEditText</b></A><br>
+<!-- Class TextInputLayout -->
+<A HREF="android.support.design.widget.TextInputLayout.html" class="hiddenlink" target="rightframe">TextInputLayout</A><br>
+<!-- Class TextUtilsCompat -->
+<i>TextUtilsCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.text.TextUtilsCompat.html" class="hiddenlink" target="rightframe">android.support.v4.text</A><br>
+<!-- Constructor TextUtilsCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.text.TextUtilsCompat.html#android.support.v4.text.TextUtilsCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>TextUtilsCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class TextViewCompat -->
+<A HREF="android.support.v4.widget.TextViewCompat.html" class="hiddenlink" target="rightframe">TextViewCompat</A><br>
+<!-- Field Theme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme" class="hiddenlink" target="rightframe"><strike>Theme</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarDivider -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarDivider" class="hiddenlink" target="rightframe"><strike>Theme_actionBarDivider</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarItemBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarItemBackground" class="hiddenlink" target="rightframe"><strike>Theme_actionBarItemBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarPopupTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarPopupTheme" class="hiddenlink" target="rightframe"><strike>Theme_actionBarPopupTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarSize -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarSize" class="hiddenlink" target="rightframe"><strike>Theme_actionBarSize</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarSplitStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarSplitStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionBarSplitStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionBarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarTabBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarTabBarStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionBarTabBarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarTabStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarTabStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionBarTabStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarTabTextStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarTabTextStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionBarTabTextStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarTheme" class="hiddenlink" target="rightframe"><strike>Theme_actionBarTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarWidgetTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarWidgetTheme" class="hiddenlink" target="rightframe"><strike>Theme_actionBarWidgetTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_actionButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionDropDownStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionDropDownStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionDropDownStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionMenuTextAppearance -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionMenuTextAppearance" class="hiddenlink" target="rightframe"><strike>Theme_actionMenuTextAppearance</strike></A>
+</nobr><br>
+<!-- Field Theme_actionMenuTextColor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionMenuTextColor" class="hiddenlink" target="rightframe"><strike>Theme_actionMenuTextColor</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeBackground" class="hiddenlink" target="rightframe"><strike>Theme_actionModeBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeCloseButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeCloseButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionModeCloseButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeCloseDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeCloseDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeCloseDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeCopyDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeCopyDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeCopyDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeCutDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeCutDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeCutDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeFindDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeFindDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeFindDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModePasteDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModePasteDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModePasteDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModePopupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModePopupWindowStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionModePopupWindowStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeSelectAllDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeSelectAllDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeSelectAllDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeShareDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeShareDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeShareDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeSplitBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeSplitBackground" class="hiddenlink" target="rightframe"><strike>Theme_actionModeSplitBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionModeStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeWebSearchDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeWebSearchDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeWebSearchDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionOverflowButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionOverflowButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionOverflowButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionOverflowMenuStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionOverflowMenuStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionOverflowMenuStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_activityChooserViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_activityChooserViewStyle" class="hiddenlink" target="rightframe"><strike>Theme_activityChooserViewStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_alertDialogButtonGroupStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_alertDialogButtonGroupStyle" class="hiddenlink" target="rightframe"><strike>Theme_alertDialogButtonGroupStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_alertDialogCenterButtons -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_alertDialogCenterButtons" class="hiddenlink" target="rightframe"><strike>Theme_alertDialogCenterButtons</strike></A>
+</nobr><br>
+<!-- Field Theme_alertDialogStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_alertDialogStyle" class="hiddenlink" target="rightframe"><strike>Theme_alertDialogStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_alertDialogTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_alertDialogTheme" class="hiddenlink" target="rightframe"><strike>Theme_alertDialogTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_android_windowAnimationStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_android_windowAnimationStyle" class="hiddenlink" target="rightframe"><strike>Theme_android_windowAnimationStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_android_windowIsFloating -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_android_windowIsFloating" class="hiddenlink" target="rightframe"><strike>Theme_android_windowIsFloating</strike></A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_DarkActionBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_DarkActionBar" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_DarkActionBar</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_Dialog -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_Dialog" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_Dialog</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_Dialog_Alert -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_Dialog_Alert" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_Dialog_Alert</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_Dialog_MinWidth -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_Dialog_MinWidth" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_Dialog_MinWidth</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_DialogWhenLarge -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_DialogWhenLarge" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_DialogWhenLarge</A>
+</nobr><br>
+<!-- Field Theme_AppCompat_DayNight_NoActionBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_NoActionBar" class="hiddenlink" target="rightframe">Theme_AppCompat_DayNight_NoActionBar</A>
+</nobr><br>
+<!-- Field Theme_autoCompleteTextViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_autoCompleteTextViewStyle" class="hiddenlink" target="rightframe"><strike>Theme_autoCompleteTextViewStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_borderlessButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_borderlessButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_borderlessButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonBarButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonBarButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonBarButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonBarNegativeButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonBarNegativeButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonBarNegativeButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonBarNeutralButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonBarNeutralButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonBarNeutralButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonBarPositiveButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonBarPositiveButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonBarPositiveButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonBarStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonBarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonStyleSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonStyleSmall" class="hiddenlink" target="rightframe"><strike>Theme_buttonStyleSmall</strike></A>
+</nobr><br>
+<!-- Field Theme_checkboxStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_checkboxStyle" class="hiddenlink" target="rightframe"><strike>Theme_checkboxStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_checkedTextViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_checkedTextViewStyle" class="hiddenlink" target="rightframe"><strike>Theme_checkedTextViewStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_colorAccent -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorAccent" class="hiddenlink" target="rightframe"><strike>Theme_colorAccent</strike></A>
+</nobr><br>
+<!-- Field Theme_colorButtonNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorButtonNormal" class="hiddenlink" target="rightframe"><strike>Theme_colorButtonNormal</strike></A>
+</nobr><br>
+<!-- Field Theme_colorControlActivated -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorControlActivated" class="hiddenlink" target="rightframe"><strike>Theme_colorControlActivated</strike></A>
+</nobr><br>
+<!-- Field Theme_colorControlHighlight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorControlHighlight" class="hiddenlink" target="rightframe"><strike>Theme_colorControlHighlight</strike></A>
+</nobr><br>
+<!-- Field Theme_colorControlNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorControlNormal" class="hiddenlink" target="rightframe"><strike>Theme_colorControlNormal</strike></A>
+</nobr><br>
+<!-- Field Theme_colorPrimary -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorPrimary" class="hiddenlink" target="rightframe"><strike>Theme_colorPrimary</strike></A>
+</nobr><br>
+<!-- Field Theme_colorPrimaryDark -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorPrimaryDark" class="hiddenlink" target="rightframe"><strike>Theme_colorPrimaryDark</strike></A>
+</nobr><br>
+<!-- Field Theme_colorSwitchThumbNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorSwitchThumbNormal" class="hiddenlink" target="rightframe"><strike>Theme_colorSwitchThumbNormal</strike></A>
+</nobr><br>
+<!-- Field Theme_controlBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_controlBackground" class="hiddenlink" target="rightframe"><strike>Theme_controlBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_dialogPreferredPadding -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dialogPreferredPadding" class="hiddenlink" target="rightframe"><strike>Theme_dialogPreferredPadding</strike></A>
+</nobr><br>
+<!-- Field Theme_dialogTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dialogTheme" class="hiddenlink" target="rightframe"><strike>Theme_dialogTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_dividerHorizontal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dividerHorizontal" class="hiddenlink" target="rightframe"><strike>Theme_dividerHorizontal</strike></A>
+</nobr><br>
+<!-- Field Theme_dividerVertical -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dividerVertical" class="hiddenlink" target="rightframe"><strike>Theme_dividerVertical</strike></A>
+</nobr><br>
+<!-- Field Theme_dropdownListPreferredItemHeight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dropdownListPreferredItemHeight" class="hiddenlink" target="rightframe"><strike>Theme_dropdownListPreferredItemHeight</strike></A>
+</nobr><br>
+<!-- Field Theme_dropDownListViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dropDownListViewStyle" class="hiddenlink" target="rightframe"><strike>Theme_dropDownListViewStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_editTextBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_editTextBackground" class="hiddenlink" target="rightframe"><strike>Theme_editTextBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_editTextColor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_editTextColor" class="hiddenlink" target="rightframe"><strike>Theme_editTextColor</strike></A>
+</nobr><br>
+<!-- Field Theme_editTextStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_editTextStyle" class="hiddenlink" target="rightframe"><strike>Theme_editTextStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_homeAsUpIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_homeAsUpIndicator" class="hiddenlink" target="rightframe"><strike>Theme_homeAsUpIndicator</strike></A>
+</nobr><br>
+<!-- Field Theme_imageButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_imageButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_imageButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_listChoiceBackgroundIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listChoiceBackgroundIndicator" class="hiddenlink" target="rightframe"><strike>Theme_listChoiceBackgroundIndicator</strike></A>
+</nobr><br>
+<!-- Field Theme_listDividerAlertDialog -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listDividerAlertDialog" class="hiddenlink" target="rightframe"><strike>Theme_listDividerAlertDialog</strike></A>
+</nobr><br>
+<!-- Field Theme_listPopupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPopupWindowStyle" class="hiddenlink" target="rightframe"><strike>Theme_listPopupWindowStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_listPreferredItemHeight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPreferredItemHeight" class="hiddenlink" target="rightframe"><strike>Theme_listPreferredItemHeight</strike></A>
+</nobr><br>
+<!-- Field Theme_listPreferredItemHeightLarge -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPreferredItemHeightLarge" class="hiddenlink" target="rightframe"><strike>Theme_listPreferredItemHeightLarge</strike></A>
+</nobr><br>
+<!-- Field Theme_listPreferredItemHeightSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPreferredItemHeightSmall" class="hiddenlink" target="rightframe"><strike>Theme_listPreferredItemHeightSmall</strike></A>
+</nobr><br>
+<!-- Field Theme_listPreferredItemPaddingLeft -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPreferredItemPaddingLeft" class="hiddenlink" target="rightframe"><strike>Theme_listPreferredItemPaddingLeft</strike></A>
+</nobr><br>
+<!-- Field Theme_listPreferredItemPaddingRight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPreferredItemPaddingRight" class="hiddenlink" target="rightframe"><strike>Theme_listPreferredItemPaddingRight</strike></A>
+</nobr><br>
+<!-- Field Theme_panelBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_panelBackground" class="hiddenlink" target="rightframe"><strike>Theme_panelBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_panelMenuListTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_panelMenuListTheme" class="hiddenlink" target="rightframe"><strike>Theme_panelMenuListTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_panelMenuListWidth -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_panelMenuListWidth" class="hiddenlink" target="rightframe"><strike>Theme_panelMenuListWidth</strike></A>
+</nobr><br>
+<!-- Field Theme_popupMenuStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_popupMenuStyle" class="hiddenlink" target="rightframe"><strike>Theme_popupMenuStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_popupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_popupWindowStyle" class="hiddenlink" target="rightframe"><strike>Theme_popupWindowStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_radioButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_radioButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_radioButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_ratingBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_ratingBarStyle" class="hiddenlink" target="rightframe"><strike>Theme_ratingBarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_searchViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_searchViewStyle" class="hiddenlink" target="rightframe"><strike>Theme_searchViewStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_seekBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_seekBarStyle" class="hiddenlink" target="rightframe"><strike>Theme_seekBarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_selectableItemBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_selectableItemBackground" class="hiddenlink" target="rightframe"><strike>Theme_selectableItemBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_selectableItemBackgroundBorderless -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_selectableItemBackgroundBorderless" class="hiddenlink" target="rightframe"><strike>Theme_selectableItemBackgroundBorderless</strike></A>
+</nobr><br>
+<!-- Field Theme_spinnerDropDownItemStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_spinnerDropDownItemStyle" class="hiddenlink" target="rightframe"><strike>Theme_spinnerDropDownItemStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_spinnerStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_spinnerStyle" class="hiddenlink" target="rightframe"><strike>Theme_spinnerStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_switchStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_switchStyle" class="hiddenlink" target="rightframe"><strike>Theme_switchStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceLargePopupMenu -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceLargePopupMenu" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceLargePopupMenu</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceListItem -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceListItem" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceListItem</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceListItemSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceListItemSmall" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceListItemSmall</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceSearchResultSubtitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceSearchResultSubtitle" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceSearchResultSubtitle</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceSearchResultTitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceSearchResultTitle" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceSearchResultTitle</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceSmallPopupMenu -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceSmallPopupMenu" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceSmallPopupMenu</strike></A>
+</nobr><br>
+<!-- Field Theme_textColorAlertDialogListItem -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textColorAlertDialogListItem" class="hiddenlink" target="rightframe"><strike>Theme_textColorAlertDialogListItem</strike></A>
+</nobr><br>
+<!-- Field Theme_textColorSearchUrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textColorSearchUrl" class="hiddenlink" target="rightframe"><strike>Theme_textColorSearchUrl</strike></A>
+</nobr><br>
+<!-- Field Theme_toolbarNavigationButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_toolbarNavigationButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_toolbarNavigationButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_toolbarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_toolbarStyle" class="hiddenlink" target="rightframe"><strike>Theme_toolbarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_windowActionBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowActionBar" class="hiddenlink" target="rightframe"><strike>Theme_windowActionBar</strike></A>
+</nobr><br>
+<!-- Field Theme_windowActionBarOverlay -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowActionBarOverlay" class="hiddenlink" target="rightframe"><strike>Theme_windowActionBarOverlay</strike></A>
+</nobr><br>
+<!-- Field Theme_windowActionModeOverlay -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowActionModeOverlay" class="hiddenlink" target="rightframe"><strike>Theme_windowActionModeOverlay</strike></A>
+</nobr><br>
+<!-- Field Theme_windowFixedHeightMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowFixedHeightMajor" class="hiddenlink" target="rightframe"><strike>Theme_windowFixedHeightMajor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowFixedHeightMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowFixedHeightMinor" class="hiddenlink" target="rightframe"><strike>Theme_windowFixedHeightMinor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowFixedWidthMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowFixedWidthMajor" class="hiddenlink" target="rightframe"><strike>Theme_windowFixedWidthMajor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowFixedWidthMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowFixedWidthMinor" class="hiddenlink" target="rightframe"><strike>Theme_windowFixedWidthMinor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowMinWidthMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowMinWidthMajor" class="hiddenlink" target="rightframe"><strike>Theme_windowMinWidthMajor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowMinWidthMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowMinWidthMinor" class="hiddenlink" target="rightframe"><strike>Theme_windowMinWidthMinor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowNoTitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowNoTitle" class="hiddenlink" target="rightframe"><strike>Theme_windowNoTitle</strike></A>
+</nobr><br>
+<!-- Method title -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.title_removed(java.lang.String)" class="hiddenlink" target="rightframe"><strike>title</strike>
+(<code>String</code>)</A></nobr><br>
+<!-- Field TOOLBAR_ACTION_BUTTON_ID -->
+<nobr><A HREF="android.support.customtabs.CustomTabsIntent.html#android.support.customtabs.CustomTabsIntent.TOOLBAR_ACTION_BUTTON_ID" class="hiddenlink" target="rightframe">TOOLBAR_ACTION_BUTTON_ID</A>
+</nobr><br>
+<!-- Class TraceCompat -->
+<i>TraceCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.os.TraceCompat.html" class="hiddenlink" target="rightframe">android.support.v4.os</A><br>
+<!-- Constructor TraceCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.os.TraceCompat.html#android.support.v4.os.TraceCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>TraceCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class TrafficStatsCompat -->
+<i>TrafficStatsCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.net.TrafficStatsCompat.html" class="hiddenlink" target="rightframe">android.support.v4.net</A><br>
+<!-- Constructor TrafficStatsCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.net.TrafficStatsCompat.html#android.support.v4.net.TrafficStatsCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>TrafficStatsCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Field UI_STYLE_DEFAULT -->
+<A NAME="U"></A>
+<br><font size="+2">U</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>UI_STYLE_DEFAULT</i><br>
+<nobr>&nbsp;in&nbsp;
+<A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_DEFAULT" class="hiddenlink" target="rightframe">android.support.v17.leanback.app.GuidedStepFragment</A>
+</nobr><br>
+<!-- Field UI_STYLE_DEFAULT -->
+<nobr>&nbsp;in&nbsp;
+<A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.UI_STYLE_DEFAULT" class="hiddenlink" target="rightframe">android.support.v17.leanback.app.GuidedStepSupportFragment</A>
+</nobr><br>
+<!-- Field UI_STYLE_REPLACE -->
+<i>UI_STYLE_REPLACE</i><br>
+<nobr>&nbsp;in&nbsp;
+<A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_REPLACE" class="hiddenlink" target="rightframe">android.support.v17.leanback.app.GuidedStepFragment</A>
+</nobr><br>
+<!-- Field UI_STYLE_REPLACE -->
+<nobr>&nbsp;in&nbsp;
+<A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.UI_STYLE_REPLACE" class="hiddenlink" target="rightframe">android.support.v17.leanback.app.GuidedStepSupportFragment</A>
+</nobr><br>
+<!-- Class VelocityTrackerCompat -->
+<A NAME="V"></A>
+<br><font size="+2">V</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>VelocityTrackerCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.VelocityTrackerCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor VelocityTrackerCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.VelocityTrackerCompat.html#android.support.v4.view.VelocityTrackerCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>VelocityTrackerCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Field view -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.view" class="hiddenlink" target="rightframe"><strike>view</strike></A>
+</nobr><br>
+<!-- Field VIEW_TYPE_DATE_PICKER -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.VIEW_TYPE_DATE_PICKER" class="hiddenlink" target="rightframe">VIEW_TYPE_DATE_PICKER</A>
+</nobr><br>
+<!-- Field VIEW_TYPE_DEFAULT -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.VIEW_TYPE_DEFAULT" class="hiddenlink" target="rightframe">VIEW_TYPE_DEFAULT</A>
+</nobr><br>
+<!-- Class ViewCompat -->
+<i>ViewCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.ViewCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor ViewCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ViewCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class ViewConfigurationCompat -->
+<i>ViewConfigurationCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.ViewConfigurationCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor ViewConfigurationCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.ViewConfigurationCompat.html#android.support.v4.view.ViewConfigurationCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ViewConfigurationCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class ViewGroupCompat -->
+<A HREF="android.support.v4.view.ViewGroupCompat.html" class="hiddenlink" target="rightframe">ViewGroupCompat</A><br>
+<!-- Class ViewHolderTask -->
+<A HREF="pkg_android.support.v17.leanback.widget.html#ViewHolderTask" class="hiddenlink" target="rightframe"><b><i>ViewHolderTask</i></b></A><br>
+<!-- Class ViewOffsetBehavior -->
+<A HREF="android.support.design.widget.ViewOffsetBehavior.html" class="hiddenlink" target="rightframe">ViewOffsetBehavior</A><br>
+<!-- Class ViewParentCompat -->
+<A HREF="android.support.v4.view.ViewParentCompat.html" class="hiddenlink" target="rightframe">ViewParentCompat</A><br>
+<!-- Class ViewPropertyAnimatorCompat -->
+<A HREF="android.support.v4.view.ViewPropertyAnimatorCompat.html" class="hiddenlink" target="rightframe">ViewPropertyAnimatorCompat</A><br>
+<!-- Class VisibilityAwareImageButton -->
+<A HREF="pkg_android.support.design.widget.html#VisibilityAwareImageButton" class="hiddenlink" target="rightframe"><b>VisibilityAwareImageButton</b></A><br>
+<!-- Field Widget_AppCompat_RatingBar_Indicator -->
+<A NAME="W"></A>
+<br><font size="+2">W</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#X"><font size="-2">X</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_RatingBar_Indicator" class="hiddenlink" target="rightframe">Widget_AppCompat_RatingBar_Indicator</A>
+</nobr><br>
+<!-- Field Widget_AppCompat_RatingBar_Small -->
+<nobr><A HREF="android.support.v7.appcompat.R.style.html#android.support.v7.appcompat.R.style.Widget_AppCompat_RatingBar_Small" class="hiddenlink" target="rightframe">Widget_AppCompat_RatingBar_Small</A>
+</nobr><br>
+<!-- Class WindowCompat -->
+<i>WindowCompat</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v4.view.WindowCompat.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Constructor WindowCompat -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v4.view.WindowCompat.html#android.support.v4.view.WindowCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>WindowCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method XYZToColor -->
+<A NAME="X"></A>
+<br><font size="+2">X</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.XYZToColor_added(double, double, double)" class="hiddenlink" target="rightframe"><b>XYZToColor</b>
+(<code>double, double, double</code>)</A></nobr><br>
+<!-- Method XYZToLAB -->
+<nobr><A HREF="android.support.v4.graphics.ColorUtils.html#android.support.v4.graphics.ColorUtils.XYZToLAB_added(double, double, double, double[])" class="hiddenlink" target="rightframe"><b>XYZToLAB</b>
+(<code>double, double, double, double[]</code>)</A></nobr><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_changes.html b/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_changes.html
new file mode 100644
index 0000000..134580d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_changes.html
@@ -0,0 +1,953 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+All Changes Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for All Differences" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="alldiffs_index_all.html" xclass="hiddenlink">All Differences</a>
+  <br>
+<A HREF="alldiffs_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<A HREF="alldiffs_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<b>Changes</b>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<!-- Class AccessibilityEventCompat -->
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.view.accessibility.AccessibilityEventCompat.html" class="hiddenlink" target="rightframe">AccessibilityEventCompat</A><br>
+<!-- Class AccessibilityManagerCompat -->
+<A HREF="android.support.v4.view.accessibility.AccessibilityManagerCompat.html" class="hiddenlink" target="rightframe">AccessibilityManagerCompat</A><br>
+<!-- Class AccessibilityServiceInfoCompat -->
+<A HREF="android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat.html" class="hiddenlink" target="rightframe">AccessibilityServiceInfoCompat</A><br>
+<!-- Class ActivityInfoCompat -->
+<A HREF="android.support.v4.content.pm.ActivityInfoCompat.html" class="hiddenlink" target="rightframe">ActivityInfoCompat</A><br>
+<!-- Package android.support.customtabs -->
+<A HREF="pkg_android.support.customtabs.html" class="hiddenlink" target="rightframe">android.support.customtabs</A><br>
+<!-- Package android.support.design.widget -->
+<A HREF="pkg_android.support.design.widget.html" class="hiddenlink" target="rightframe">android.support.design.widget</A><br>
+<!-- Package android.support.percent -->
+<A HREF="pkg_android.support.percent.html" class="hiddenlink" target="rightframe">android.support.percent</A><br>
+<!-- Package android.support.v14.preference -->
+<A HREF="pkg_android.support.v14.preference.html" class="hiddenlink" target="rightframe">android.support.v14.preference</A><br>
+<!-- Package android.support.v17.leanback.app -->
+<A HREF="pkg_android.support.v17.leanback.app.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.app</A><br>
+<!-- Package android.support.v17.leanback.widget -->
+<A HREF="pkg_android.support.v17.leanback.widget.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Package android.support.v4.accessibilityservice -->
+<A HREF="pkg_android.support.v4.accessibilityservice.html" class="hiddenlink" target="rightframe">android.support.v4.accessibilityservice</A><br>
+<!-- Package android.support.v4.app -->
+<A HREF="pkg_android.support.v4.app.html" class="hiddenlink" target="rightframe">android.support.v4.app</A><br>
+<!-- Package android.support.v4.content -->
+<A HREF="pkg_android.support.v4.content.html" class="hiddenlink" target="rightframe">android.support.v4.content</A><br>
+<!-- Package android.support.v4.content.pm -->
+<A HREF="pkg_android.support.v4.content.pm.html" class="hiddenlink" target="rightframe">android.support.v4.content.pm</A><br>
+<!-- Package android.support.v4.content.res -->
+<A HREF="pkg_android.support.v4.content.res.html" class="hiddenlink" target="rightframe">android.support.v4.content.res</A><br>
+<!-- Package android.support.v4.database -->
+<A HREF="pkg_android.support.v4.database.html" class="hiddenlink" target="rightframe">android.support.v4.database</A><br>
+<!-- Package android.support.v4.graphics -->
+<A HREF="pkg_android.support.v4.graphics.html" class="hiddenlink" target="rightframe">android.support.v4.graphics</A><br>
+<!-- Package android.support.v4.graphics.drawable -->
+<A HREF="pkg_android.support.v4.graphics.drawable.html" class="hiddenlink" target="rightframe">android.support.v4.graphics.drawable</A><br>
+<!-- Package android.support.v4.hardware.fingerprint -->
+<A HREF="pkg_android.support.v4.hardware.fingerprint.html" class="hiddenlink" target="rightframe">android.support.v4.hardware.fingerprint</A><br>
+<!-- Package android.support.v4.media -->
+<A HREF="pkg_android.support.v4.media.html" class="hiddenlink" target="rightframe">android.support.v4.media</A><br>
+<!-- Package android.support.v4.net -->
+<A HREF="pkg_android.support.v4.net.html" class="hiddenlink" target="rightframe">android.support.v4.net</A><br>
+<!-- Package android.support.v4.os -->
+<A HREF="pkg_android.support.v4.os.html" class="hiddenlink" target="rightframe">android.support.v4.os</A><br>
+<!-- Package android.support.v4.text -->
+<A HREF="pkg_android.support.v4.text.html" class="hiddenlink" target="rightframe">android.support.v4.text</A><br>
+<!-- Package android.support.v4.view -->
+<A HREF="pkg_android.support.v4.view.html" class="hiddenlink" target="rightframe">android.support.v4.view</A><br>
+<!-- Package android.support.v4.view.accessibility -->
+<A HREF="pkg_android.support.v4.view.accessibility.html" class="hiddenlink" target="rightframe">android.support.v4.view.accessibility</A><br>
+<!-- Package android.support.v4.view.animation -->
+<A HREF="pkg_android.support.v4.view.animation.html" class="hiddenlink" target="rightframe">android.support.v4.view.animation</A><br>
+<!-- Package android.support.v4.widget -->
+<A HREF="pkg_android.support.v4.widget.html" class="hiddenlink" target="rightframe">android.support.v4.widget</A><br>
+<!-- Package android.support.v7.app -->
+<A HREF="pkg_android.support.v7.app.html" class="hiddenlink" target="rightframe">android.support.v7.app</A><br>
+<!-- Package android.support.v7.appcompat -->
+<A HREF="pkg_android.support.v7.appcompat.html" class="hiddenlink" target="rightframe">android.support.v7.appcompat</A><br>
+<!-- Package android.support.v7.graphics -->
+<A HREF="pkg_android.support.v7.graphics.html" class="hiddenlink" target="rightframe">android.support.v7.graphics</A><br>
+<!-- Package android.support.v7.media -->
+<A HREF="pkg_android.support.v7.media.html" class="hiddenlink" target="rightframe">android.support.v7.media</A><br>
+<!-- Package android.support.v7.preference -->
+<A HREF="pkg_android.support.v7.preference.html" class="hiddenlink" target="rightframe">android.support.v7.preference</A><br>
+<!-- Package android.support.v7.recyclerview -->
+<A HREF="pkg_android.support.v7.recyclerview.html" class="hiddenlink" target="rightframe">android.support.v7.recyclerview</A><br>
+<!-- Package android.support.v7.widget -->
+<A HREF="pkg_android.support.v7.widget.html" class="hiddenlink" target="rightframe">android.support.v7.widget</A><br>
+<!-- Package android.support.v7.widget.helper -->
+<A HREF="pkg_android.support.v7.widget.helper.html" class="hiddenlink" target="rightframe">android.support.v7.widget.helper</A><br>
+<!-- Class AppBarLayout.ScrollingViewBehavior -->
+<A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html" class="hiddenlink" target="rightframe">AppBarLayout.ScrollingViewBehavior</A><br>
+<!-- Class AppCompatDelegate -->
+<A HREF="android.support.v7.app.AppCompatDelegate.html" class="hiddenlink" target="rightframe">AppCompatDelegate</A><br>
+<!-- Class AppOpsManagerCompat -->
+<A HREF="android.support.v4.app.AppOpsManagerCompat.html" class="hiddenlink" target="rightframe">AppOpsManagerCompat</A><br>
+<!-- Class AsyncTaskCompat -->
+<A HREF="android.support.v4.os.AsyncTaskCompat.html" class="hiddenlink" target="rightframe">AsyncTaskCompat</A><br>
+<!-- Class BaseRowFragment -->
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v17.leanback.app.BaseRowFragment.html" class="hiddenlink" target="rightframe">BaseRowFragment</A><br>
+<!-- Class BaseRowSupportFragment -->
+<A HREF="android.support.v17.leanback.app.BaseRowSupportFragment.html" class="hiddenlink" target="rightframe">BaseRowSupportFragment</A><br>
+<!-- Class BitmapCompat -->
+<A HREF="android.support.v4.graphics.BitmapCompat.html" class="hiddenlink" target="rightframe">BitmapCompat</A><br>
+<!-- Class BrowseFragment -->
+<A HREF="android.support.v17.leanback.app.BrowseFragment.html" class="hiddenlink" target="rightframe">BrowseFragment</A><br>
+<!-- Class BrowseSupportFragment -->
+<A HREF="android.support.v17.leanback.app.BrowseSupportFragment.html" class="hiddenlink" target="rightframe">BrowseSupportFragment</A><br>
+<!-- Class BundleCompat -->
+<A HREF="android.support.v4.app.BundleCompat.html" class="hiddenlink" target="rightframe">BundleCompat</A><br>
+<!-- Method checked -->
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.checked_changed(boolean)" class="hiddenlink" target="rightframe">checked
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method checkSetId -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.checkSetId_changed(int)" class="hiddenlink" target="rightframe">checkSetId
+(<code>int</code>)</A></nobr><br>
+<!-- Class CollapsingToolbarLayout -->
+<A HREF="android.support.design.widget.CollapsingToolbarLayout.html" class="hiddenlink" target="rightframe">CollapsingToolbarLayout</A><br>
+<!-- Class ColorUtils -->
+<A HREF="android.support.v4.graphics.ColorUtils.html" class="hiddenlink" target="rightframe">ColorUtils</A><br>
+<!-- Class ConnectivityManagerCompat -->
+<A HREF="android.support.v4.net.ConnectivityManagerCompat.html" class="hiddenlink" target="rightframe">ConnectivityManagerCompat</A><br>
+<!-- Class ContentResolverCompat -->
+<A HREF="android.support.v4.content.ContentResolverCompat.html" class="hiddenlink" target="rightframe">ContentResolverCompat</A><br>
+<!-- Class ContextCompat -->
+<A HREF="android.support.v4.content.ContextCompat.html" class="hiddenlink" target="rightframe">ContextCompat</A><br>
+<!-- Class CoordinatorLayout.Behavior -->
+<A HREF="android.support.design.widget.CoordinatorLayout.Behavior.html" class="hiddenlink" target="rightframe">CoordinatorLayout.Behavior</A><br>
+<!-- Class CustomTabsIntent -->
+<A HREF="android.support.customtabs.CustomTabsIntent.html" class="hiddenlink" target="rightframe">CustomTabsIntent</A><br>
+<!-- Class CustomTabsIntent.Builder -->
+<A HREF="android.support.customtabs.CustomTabsIntent.Builder.html" class="hiddenlink" target="rightframe">CustomTabsIntent.Builder</A><br>
+<!-- Class CustomTabsSession -->
+<A HREF="android.support.customtabs.CustomTabsSession.html" class="hiddenlink" target="rightframe">CustomTabsSession</A><br>
+<!-- Class DatabaseUtilsCompat -->
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.database.DatabaseUtilsCompat.html" class="hiddenlink" target="rightframe">DatabaseUtilsCompat</A><br>
+<!-- Class DetailsFragment -->
+<A HREF="android.support.v17.leanback.app.DetailsFragment.html" class="hiddenlink" target="rightframe">DetailsFragment</A><br>
+<!-- Class DetailsOverviewLogoPresenter -->
+<A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.html" class="hiddenlink" target="rightframe">DetailsOverviewLogoPresenter</A><br>
+<!-- Class DetailsOverviewLogoPresenter.ViewHolder -->
+<A HREF="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html" class="hiddenlink" target="rightframe">DetailsOverviewLogoPresenter.ViewHolder</A><br>
+<!-- Class DetailsSupportFragment -->
+<A HREF="android.support.v17.leanback.app.DetailsSupportFragment.html" class="hiddenlink" target="rightframe">DetailsSupportFragment</A><br>
+<!-- Class DrawableCompat -->
+<A HREF="android.support.v4.graphics.drawable.DrawableCompat.html" class="hiddenlink" target="rightframe">DrawableCompat</A><br>
+<!-- Class DrawerLayout -->
+<A HREF="android.support.v4.widget.DrawerLayout.html" class="hiddenlink" target="rightframe">DrawerLayout</A><br>
+<!-- Class EdgeEffectCompat -->
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.widget.EdgeEffectCompat.html" class="hiddenlink" target="rightframe">EdgeEffectCompat</A><br>
+<!-- Method editable -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editable_changed(boolean)" class="hiddenlink" target="rightframe">editable
+(<code>boolean</code>)</A></nobr><br>
+<!-- Method enabled -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.enabled_changed(boolean)" class="hiddenlink" target="rightframe">enabled
+(<code>boolean</code>)</A></nobr><br>
+<!-- Class EnvironmentCompat -->
+<A HREF="android.support.v4.os.EnvironmentCompat.html" class="hiddenlink" target="rightframe">EnvironmentCompat</A><br>
+<!-- Class FingerprintManagerCompat -->
+<A NAME="F"></A>
+<br><font size="+2">F</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.hardware.fingerprint.FingerprintManagerCompat.html" class="hiddenlink" target="rightframe">FingerprintManagerCompat</A><br>
+<!-- Class FloatingActionButton -->
+<A HREF="android.support.design.widget.FloatingActionButton.html" class="hiddenlink" target="rightframe">FloatingActionButton</A><br>
+<!-- Class Fragment -->
+<A HREF="android.support.v4.app.Fragment.html" class="hiddenlink" target="rightframe">Fragment</A><br>
+<!-- Class FragmentActivity -->
+<A HREF="android.support.v4.app.FragmentActivity.html" class="hiddenlink" target="rightframe">FragmentActivity</A><br>
+<!-- Class FragmentHostCallback -->
+<A HREF="android.support.v4.app.FragmentHostCallback.html" class="hiddenlink" target="rightframe">FragmentHostCallback</A><br>
+<!-- Class GestureDetectorCompat -->
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.view.GestureDetectorCompat.html" class="hiddenlink" target="rightframe">GestureDetectorCompat</A><br>
+<!-- Method getCodeCacheDir -->
+<nobr><A HREF="android.support.v4.content.ContextCompat.html#android.support.v4.content.ContextCompat.getCodeCacheDir_changed(android.content.Context)" class="hiddenlink" target="rightframe">getCodeCacheDir
+(<code>Context</code>)</A></nobr><br>
+<!-- Method getColor -->
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColor_changed(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe">getColor
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<!-- Method getColorStateList -->
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.getColorStateList_changed(android.content.res.Resources, int, android.content.res.Resources.Theme)" class="hiddenlink" target="rightframe">getColorStateList
+(<code>Resources, int, Theme</code>)</A></nobr><br>
+<!-- Method getOverlayTop -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.getOverlayTop_changed()" class="hiddenlink" target="rightframe">getOverlayTop
+()</A></nobr><br>
+<!-- Method getScrimColor -->
+<nobr><A HREF="android.support.design.widget.CoordinatorLayout.Behavior.html#android.support.design.widget.CoordinatorLayout.Behavior.getScrimColor_changed(android.support.design.widget.CoordinatorLayout, V)" class="hiddenlink" target="rightframe">getScrimColor
+(<code>CoordinatorLayout, V</code>)</A></nobr><br>
+<!-- Method getScrimOpacity -->
+<nobr><A HREF="android.support.design.widget.CoordinatorLayout.Behavior.html#android.support.design.widget.CoordinatorLayout.Behavior.getScrimOpacity_changed(android.support.design.widget.CoordinatorLayout, V)" class="hiddenlink" target="rightframe">getScrimOpacity
+(<code>CoordinatorLayout, V</code>)</A></nobr><br>
+<!-- Class GravityCompat -->
+<A HREF="android.support.v4.view.GravityCompat.html" class="hiddenlink" target="rightframe">GravityCompat</A><br>
+<!-- Class GuidanceStylist -->
+<A HREF="android.support.v17.leanback.widget.GuidanceStylist.html" class="hiddenlink" target="rightframe">GuidanceStylist</A><br>
+<!-- Class GuidedAction -->
+<A HREF="android.support.v17.leanback.widget.GuidedAction.html" class="hiddenlink" target="rightframe">GuidedAction</A><br>
+<!-- Class GuidedAction.Builder -->
+<i>GuidedAction.Builder</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Constructor GuidedAction.Builder -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.ctor_changed()" class="hiddenlink" target="rightframe">GuidedAction.Builder
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class GuidedActionsStylist -->
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html" class="hiddenlink" target="rightframe">GuidedActionsStylist</A><br>
+<!-- Class GuidedActionsStylist.ViewHolder -->
+<A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html" class="hiddenlink" target="rightframe">GuidedActionsStylist.ViewHolder</A><br>
+<!-- Class GuidedStepFragment -->
+<A HREF="android.support.v17.leanback.app.GuidedStepFragment.html" class="hiddenlink" target="rightframe">GuidedStepFragment</A><br>
+<!-- Class GuidedStepSupportFragment -->
+<A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html" class="hiddenlink" target="rightframe">GuidedStepSupportFragment</A><br>
+<!-- Method hasNext -->
+<A NAME="H"></A>
+<br><font size="+2">H</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.hasNext_changed(boolean)" class="hiddenlink" target="rightframe">hasNext
+(<code>boolean</code>)</A></nobr><br>
+<!-- Class HeaderScrollingViewBehavior -->
+<A HREF="android.support.design.widget.HeaderScrollingViewBehavior.html" class="hiddenlink" target="rightframe">HeaderScrollingViewBehavior</A><br>
+<!-- Class HeadersFragment.OnHeaderClickedListener -->
+<A HREF="android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener.html" class="hiddenlink" target="rightframe"><i>HeadersFragment.OnHeaderClickedListener</i></A><br>
+<!-- Class HeadersFragment.OnHeaderViewSelectedListener -->
+<A HREF="android.support.v17.leanback.app.HeadersFragment.OnHeaderViewSelectedListener.html" class="hiddenlink" target="rightframe"><i>HeadersFragment.OnHeaderViewSelectedListener</i></A><br>
+<!-- Class HeadersSupportFragment.OnHeaderClickedListener -->
+<A HREF="android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener.html" class="hiddenlink" target="rightframe"><i>HeadersSupportFragment.OnHeaderClickedListener</i></A><br>
+<!-- Class HeadersSupportFragment.OnHeaderViewSelectedListener -->
+<A HREF="android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderViewSelectedListener.html" class="hiddenlink" target="rightframe"><i>HeadersSupportFragment.OnHeaderViewSelectedListener</i></A><br>
+<!-- Method iconResourceId -->
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.iconResourceId_changed(int, android.content.Context)" class="hiddenlink" target="rightframe">iconResourceId
+(<code>int, Context</code>)</A></nobr><br>
+<!-- Class ICUCompat -->
+<A HREF="android.support.v4.text.ICUCompat.html" class="hiddenlink" target="rightframe">ICUCompat</A><br>
+<!-- Method id -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.id_changed(long)" class="hiddenlink" target="rightframe">id
+(<code>long</code>)</A></nobr><br>
+<!-- Class ImageCardView -->
+<i>ImageCardView</i><br>
+&nbsp;&nbsp;<A HREF="android.support.v17.leanback.widget.ImageCardView.html" class="hiddenlink" target="rightframe">android.support.v17.leanback.widget</A><br>
+<!-- Constructor ImageCardView -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.widget.ImageCardView.html#android.support.v17.leanback.widget.ImageCardView.ctor_changed(android.content.Context, int)" class="hiddenlink" target="rightframe">ImageCardView
+(<code>Context, int</code>)</A></nobr>&nbsp;constructor<br>
+<!-- Method infoOnly -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.infoOnly_changed(boolean)" class="hiddenlink" target="rightframe">infoOnly
+(<code>boolean</code>)</A></nobr><br>
+<!-- Class InputDeviceCompat -->
+<A HREF="android.support.v4.view.InputDeviceCompat.html" class="hiddenlink" target="rightframe">InputDeviceCompat</A><br>
+<!-- Method intent -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.intent_changed(android.content.Intent)" class="hiddenlink" target="rightframe">intent
+(<code>Intent</code>)</A></nobr><br>
+<!-- Class IntentCompat -->
+<A HREF="android.support.v4.content.IntentCompat.html" class="hiddenlink" target="rightframe">IntentCompat</A><br>
+<!-- Class ItemTouchHelper.Callback -->
+<A HREF="android.support.v7.widget.helper.ItemTouchHelper.Callback.html" class="hiddenlink" target="rightframe">ItemTouchHelper.Callback</A><br>
+<!-- Class KeyEventCompat -->
+<A NAME="K"></A>
+<br><font size="+2">K</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.view.KeyEventCompat.html" class="hiddenlink" target="rightframe">KeyEventCompat</A><br>
+<!-- Class LayoutInflaterCompat -->
+<A NAME="L"></A>
+<br><font size="+2">L</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.view.LayoutInflaterCompat.html" class="hiddenlink" target="rightframe">LayoutInflaterCompat</A><br>
+<!-- Class ListPopupWindowCompat -->
+<A HREF="android.support.v4.widget.ListPopupWindowCompat.html" class="hiddenlink" target="rightframe">ListPopupWindowCompat</A><br>
+<!-- Class ListRowPresenter.ViewHolder -->
+<A HREF="android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.html" class="hiddenlink" target="rightframe">ListRowPresenter.ViewHolder</A><br>
+<!-- Class LocalBroadcastManager -->
+<A HREF="android.support.v4.content.LocalBroadcastManager.html" class="hiddenlink" target="rightframe">LocalBroadcastManager</A><br>
+<!-- Class MarginLayoutParamsCompat -->
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.view.MarginLayoutParamsCompat.html" class="hiddenlink" target="rightframe">MarginLayoutParamsCompat</A><br>
+<!-- Class MediaRouteDescriptor -->
+<A HREF="android.support.v7.media.MediaRouteDescriptor.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor</A><br>
+<!-- Class MediaRouteDescriptor.Builder -->
+<A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html" class="hiddenlink" target="rightframe">MediaRouteDescriptor.Builder</A><br>
+<!-- Class MediaRouter.Callback -->
+<A HREF="android.support.v7.media.MediaRouter.Callback.html" class="hiddenlink" target="rightframe">MediaRouter.Callback</A><br>
+<!-- Class MenuCompat -->
+<A HREF="android.support.v4.view.MenuCompat.html" class="hiddenlink" target="rightframe">MenuCompat</A><br>
+<!-- Class MenuItemCompat -->
+<A HREF="android.support.v4.view.MenuItemCompat.html" class="hiddenlink" target="rightframe">MenuItemCompat</A><br>
+<!-- Class MotionEventCompat -->
+<A HREF="android.support.v4.view.MotionEventCompat.html" class="hiddenlink" target="rightframe">MotionEventCompat</A><br>
+<!-- Method multilineDescription -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.multilineDescription_changed(boolean)" class="hiddenlink" target="rightframe">multilineDescription
+(<code>boolean</code>)</A></nobr><br>
+<!-- Class NavUtils -->
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.app.NavUtils.html" class="hiddenlink" target="rightframe">NavUtils</A><br>
+<!-- Class NotificationManagerCompat -->
+<A HREF="android.support.v4.app.NotificationManagerCompat.html" class="hiddenlink" target="rightframe">NotificationManagerCompat</A><br>
+<!-- Method onHeaderClicked -->
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>onHeaderClicked</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener.html#android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener.onHeaderClicked_changed(android.support.v17.leanback.widget.RowHeaderPresenter.ViewHolder, android.support.v17.leanback.widget.Row)" class="hiddenlink" target="rightframe">type&nbsp;
+(<code>ViewHolder, Row</code>)&nbsp;in&nbsp;android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener
+</A></nobr><br>
+<!-- Method onHeaderClicked -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener.html#android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener.onHeaderClicked_changed(android.support.v17.leanback.widget.RowHeaderPresenter.ViewHolder, android.support.v17.leanback.widget.Row)" class="hiddenlink" target="rightframe">type&nbsp;
+(<code>ViewHolder, Row</code>)&nbsp;in&nbsp;android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener
+</A></nobr><br>
+<!-- Class OrientationHelper -->
+<A HREF="android.support.v7.widget.OrientationHelper.html" class="hiddenlink" target="rightframe">OrientationHelper</A><br>
+<!-- Class Palette -->
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.graphics.Palette.html" class="hiddenlink" target="rightframe">Palette</A><br>
+<!-- Class Palette.Builder -->
+<A HREF="android.support.v7.graphics.Palette.Builder.html" class="hiddenlink" target="rightframe">Palette.Builder</A><br>
+<!-- Class ParallelExecutorCompat -->
+<A HREF="android.support.v4.content.ParallelExecutorCompat.html" class="hiddenlink" target="rightframe">ParallelExecutorCompat</A><br>
+<!-- Class ParcelableCompat -->
+<A HREF="android.support.v4.os.ParcelableCompat.html" class="hiddenlink" target="rightframe">ParcelableCompat</A><br>
+<!-- Class PathInterpolatorCompat -->
+<A HREF="android.support.v4.view.animation.PathInterpolatorCompat.html" class="hiddenlink" target="rightframe">PathInterpolatorCompat</A><br>
+<!-- Class PercentLayoutHelper.PercentLayoutInfo -->
+<A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html" class="hiddenlink" target="rightframe">PercentLayoutHelper.PercentLayoutInfo</A><br>
+<!-- Class PopupMenuCompat -->
+<A HREF="android.support.v4.widget.PopupMenuCompat.html" class="hiddenlink" target="rightframe">PopupMenuCompat</A><br>
+<!-- Class PopupWindowCompat -->
+<A HREF="android.support.v4.widget.PopupWindowCompat.html" class="hiddenlink" target="rightframe">PopupWindowCompat</A><br>
+<!-- Class PreferenceFragment -->
+<A HREF="android.support.v14.preference.PreferenceFragment.html" class="hiddenlink" target="rightframe">PreferenceFragment</A><br>
+<!-- Class PreferenceFragmentCompat -->
+<A HREF="android.support.v7.preference.PreferenceFragmentCompat.html" class="hiddenlink" target="rightframe">PreferenceFragmentCompat</A><br>
+<!-- Class PreferenceScreen -->
+<A HREF="android.support.v7.preference.PreferenceScreen.html" class="hiddenlink" target="rightframe">PreferenceScreen</A><br>
+<!-- Class PreferenceViewHolder -->
+<A HREF="android.support.v7.preference.PreferenceViewHolder.html" class="hiddenlink" target="rightframe">PreferenceViewHolder</A><br>
+<!-- Class R.attr -->
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v7.appcompat.R.attr.html" class="hiddenlink" target="rightframe">R.attr</A><br>
+<!-- Class R.dimen -->
+<A HREF="android.support.v7.recyclerview.R.dimen.html" class="hiddenlink" target="rightframe">R.dimen</A><br>
+<!-- Class R.drawable -->
+<A HREF="android.support.v7.appcompat.R.drawable.html" class="hiddenlink" target="rightframe">R.drawable</A><br>
+<!-- Class R.style -->
+<A HREF="android.support.v7.appcompat.R.style.html" class="hiddenlink" target="rightframe">R.style</A><br>
+<!-- Class R.styleable -->
+<A HREF="android.support.v7.appcompat.R.styleable.html" class="hiddenlink" target="rightframe">R.styleable</A><br>
+<!-- Class RecyclerView -->
+<A HREF="android.support.v7.widget.RecyclerView.html" class="hiddenlink" target="rightframe">RecyclerView</A><br>
+<!-- Class RecyclerView.ItemAnimator -->
+<A HREF="android.support.v7.widget.RecyclerView.ItemAnimator.html" class="hiddenlink" target="rightframe">RecyclerView.ItemAnimator</A><br>
+<!-- Class RecyclerView.LayoutManager -->
+<A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html" class="hiddenlink" target="rightframe">RecyclerView.LayoutManager</A><br>
+<!-- Class RecyclerView.State -->
+<A HREF="android.support.v7.widget.RecyclerView.State.html" class="hiddenlink" target="rightframe">RecyclerView.State</A><br>
+<!-- Class RemoteInput -->
+<A HREF="android.support.v4.app.RemoteInput.html" class="hiddenlink" target="rightframe">RemoteInput</A><br>
+<!-- Method resizeBitmapSize -->
+<nobr><A HREF="android.support.v7.graphics.Palette.Builder.html#android.support.v7.graphics.Palette.Builder.resizeBitmapSize_changed(int)" class="hiddenlink" target="rightframe">resizeBitmapSize
+(<code>int</code>)</A></nobr><br>
+<!-- Class ResourcesCompat -->
+<A HREF="android.support.v4.content.res.ResourcesCompat.html" class="hiddenlink" target="rightframe">ResourcesCompat</A><br>
+<!-- Class RoundedBitmapDrawableFactory -->
+<A HREF="android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory.html" class="hiddenlink" target="rightframe">RoundedBitmapDrawableFactory</A><br>
+<!-- Class RowsFragment -->
+<A HREF="android.support.v17.leanback.app.RowsFragment.html" class="hiddenlink" target="rightframe">RowsFragment</A><br>
+<!-- Class RowsSupportFragment -->
+<A HREF="android.support.v17.leanback.app.RowsSupportFragment.html" class="hiddenlink" target="rightframe">RowsSupportFragment</A><br>
+<!-- Class ScaleGestureDetectorCompat -->
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.view.ScaleGestureDetectorCompat.html" class="hiddenlink" target="rightframe">ScaleGestureDetectorCompat</A><br>
+<!-- Class ScrollerCompat -->
+<A HREF="android.support.v4.widget.ScrollerCompat.html" class="hiddenlink" target="rightframe">ScrollerCompat</A><br>
+<!-- Class SearchViewCompat -->
+<A HREF="android.support.v4.widget.SearchViewCompat.html" class="hiddenlink" target="rightframe">SearchViewCompat</A><br>
+<!-- Class ServiceCompat -->
+<A HREF="android.support.v4.app.ServiceCompat.html" class="hiddenlink" target="rightframe">ServiceCompat</A><br>
+<!-- Method setDrawerListener -->
+<nobr><A HREF="android.support.v4.widget.DrawerLayout.html#android.support.v4.widget.DrawerLayout.setDrawerListener_changed(android.support.v4.widget.DrawerLayout.DrawerListener)" class="hiddenlink" target="rightframe">setDrawerListener
+(<code>DrawerListener</code>)</A></nobr><br>
+<!-- Method setOverlayTop -->
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.setOverlayTop_changed(int)" class="hiddenlink" target="rightframe">setOverlayTop
+(<code>int</code>)</A></nobr><br>
+<!-- Method setTabsFromPagerAdapter -->
+<nobr><A HREF="android.support.design.widget.TabLayout.html#android.support.design.widget.TabLayout.setTabsFromPagerAdapter_changed(android.support.v4.view.PagerAdapter)" class="hiddenlink" target="rightframe">setTabsFromPagerAdapter
+(<code>PagerAdapter</code>)</A></nobr><br>
+<!-- Class ShareCompat -->
+<A HREF="android.support.v4.app.ShareCompat.html" class="hiddenlink" target="rightframe">ShareCompat</A><br>
+<!-- Class SharedPreferencesCompat -->
+<A HREF="android.support.v4.content.SharedPreferencesCompat.html" class="hiddenlink" target="rightframe">SharedPreferencesCompat</A><br>
+<!-- Class SharedPreferencesCompat.EditorCompat -->
+<A HREF="android.support.v4.content.SharedPreferencesCompat.EditorCompat.html" class="hiddenlink" target="rightframe">SharedPreferencesCompat.EditorCompat</A><br>
+<!-- Class TabLayout -->
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.design.widget.TabLayout.html" class="hiddenlink" target="rightframe">TabLayout</A><br>
+<!-- Class TaskStackBuilder -->
+<A HREF="android.support.v4.app.TaskStackBuilder.html" class="hiddenlink" target="rightframe">TaskStackBuilder</A><br>
+<!-- Class TextDirectionHeuristicsCompat -->
+<A HREF="android.support.v4.text.TextDirectionHeuristicsCompat.html" class="hiddenlink" target="rightframe">TextDirectionHeuristicsCompat</A><br>
+<!-- Class TextInputLayout -->
+<A HREF="android.support.design.widget.TextInputLayout.html" class="hiddenlink" target="rightframe">TextInputLayout</A><br>
+<!-- Class TextUtilsCompat -->
+<A HREF="android.support.v4.text.TextUtilsCompat.html" class="hiddenlink" target="rightframe">TextUtilsCompat</A><br>
+<!-- Class TextViewCompat -->
+<A HREF="android.support.v4.widget.TextViewCompat.html" class="hiddenlink" target="rightframe">TextViewCompat</A><br>
+<!-- Class TraceCompat -->
+<A HREF="android.support.v4.os.TraceCompat.html" class="hiddenlink" target="rightframe">TraceCompat</A><br>
+<!-- Class TrafficStatsCompat -->
+<A HREF="android.support.v4.net.TrafficStatsCompat.html" class="hiddenlink" target="rightframe">TrafficStatsCompat</A><br>
+<!-- Field UI_STYLE_DEFAULT -->
+<A NAME="U"></A>
+<br><font size="+2">U</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<i>UI_STYLE_DEFAULT</i><br>
+<nobr>&nbsp;in&nbsp;
+<A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_DEFAULT" class="hiddenlink" target="rightframe">android.support.v17.leanback.app.GuidedStepFragment</A>
+</nobr><br>
+<!-- Field UI_STYLE_DEFAULT -->
+<nobr>&nbsp;in&nbsp;
+<A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.UI_STYLE_DEFAULT" class="hiddenlink" target="rightframe">android.support.v17.leanback.app.GuidedStepSupportFragment</A>
+</nobr><br>
+<!-- Class VelocityTrackerCompat -->
+<A NAME="V"></A>
+<br><font size="+2">V</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.view.VelocityTrackerCompat.html" class="hiddenlink" target="rightframe">VelocityTrackerCompat</A><br>
+<!-- Class ViewCompat -->
+<A HREF="android.support.v4.view.ViewCompat.html" class="hiddenlink" target="rightframe">ViewCompat</A><br>
+<!-- Class ViewConfigurationCompat -->
+<A HREF="android.support.v4.view.ViewConfigurationCompat.html" class="hiddenlink" target="rightframe">ViewConfigurationCompat</A><br>
+<!-- Class ViewGroupCompat -->
+<A HREF="android.support.v4.view.ViewGroupCompat.html" class="hiddenlink" target="rightframe">ViewGroupCompat</A><br>
+<!-- Class ViewOffsetBehavior -->
+<A HREF="android.support.design.widget.ViewOffsetBehavior.html" class="hiddenlink" target="rightframe">ViewOffsetBehavior</A><br>
+<!-- Class ViewParentCompat -->
+<A HREF="android.support.v4.view.ViewParentCompat.html" class="hiddenlink" target="rightframe">ViewParentCompat</A><br>
+<!-- Class ViewPropertyAnimatorCompat -->
+<A HREF="android.support.v4.view.ViewPropertyAnimatorCompat.html" class="hiddenlink" target="rightframe">ViewPropertyAnimatorCompat</A><br>
+<!-- Class WindowCompat -->
+<A NAME="W"></A>
+<br><font size="+2">W</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#H"><font size="-2">H</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#U"><font size="-2">U</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="android.support.v4.view.WindowCompat.html" class="hiddenlink" target="rightframe">WindowCompat</A><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_removals.html b/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_removals.html
new file mode 100644
index 0000000..a60b244
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/alldiffs_index_removals.html
@@ -0,0 +1,970 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+All Removals Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for All Differences" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="alldiffs_index_all.html" xclass="hiddenlink">All Differences</a>
+  <br>
+<b>Removals</b>
+  <br>
+<A HREF="alldiffs_index_additions.html"xclass="hiddenlink">Additions</A>
+  <br>
+<A HREF="alldiffs_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<!-- Field abc_btn_check_to_on_mtrl_000 -->
+<A NAME="A"></A>
+<br><font size="+2">A</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_check_to_on_mtrl_000" class="hiddenlink" target="rightframe"><strike>abc_btn_check_to_on_mtrl_000</strike></A>
+</nobr><br>
+<!-- Field abc_btn_check_to_on_mtrl_015 -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_check_to_on_mtrl_015" class="hiddenlink" target="rightframe"><strike>abc_btn_check_to_on_mtrl_015</strike></A>
+</nobr><br>
+<!-- Field abc_btn_radio_to_on_mtrl_000 -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_radio_to_on_mtrl_000" class="hiddenlink" target="rightframe"><strike>abc_btn_radio_to_on_mtrl_000</strike></A>
+</nobr><br>
+<!-- Field abc_btn_radio_to_on_mtrl_015 -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_btn_radio_to_on_mtrl_015" class="hiddenlink" target="rightframe"><strike>abc_btn_radio_to_on_mtrl_015</strike></A>
+</nobr><br>
+<!-- Field abc_ic_ab_back_mtrl_am_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_ab_back_mtrl_am_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_ab_back_mtrl_am_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_clear_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_clear_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_clear_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_go_search_api_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_go_search_api_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_go_search_api_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_copy_mtrl_am_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_copy_mtrl_am_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_copy_mtrl_am_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_cut_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_cut_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_cut_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_moreoverflow_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_moreoverflow_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_moreoverflow_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_paste_mtrl_am_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_paste_mtrl_am_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_paste_mtrl_am_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_selectall_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_selectall_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_selectall_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_menu_share_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_menu_share_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_menu_share_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Field abc_ic_voice_search_api_mtrl_alpha -->
+<nobr><A HREF="android.support.v7.appcompat.R.drawable.html#android.support.v7.appcompat.R.drawable.abc_ic_voice_search_api_mtrl_alpha" class="hiddenlink" target="rightframe"><strike>abc_ic_voice_search_api_mtrl_alpha</strike></A>
+</nobr><br>
+<!-- Constructor AccessibilityManagerCompat -->
+<nobr><A HREF="android.support.v4.view.accessibility.AccessibilityManagerCompat.html#android.support.v4.view.accessibility.AccessibilityManagerCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>AccessibilityManagerCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method addGroupMemberId -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberId_removed(java.lang.String)" class="hiddenlink" target="rightframe"><strike>addGroupMemberId</strike>
+(<code>String</code>)</A></nobr><br>
+<!-- Method addGroupMemberIds -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.Builder.html#android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberIds_removed(java.util.Collection<java.lang.String>)" class="hiddenlink" target="rightframe"><strike>addGroupMemberIds</strike>
+(<code>Collection&lt;String&gt;</code>)</A></nobr><br>
+<!-- Constructor AppOpsManagerCompat -->
+<nobr><A HREF="android.support.v4.app.AppOpsManagerCompat.html#android.support.v4.app.AppOpsManagerCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>AppOpsManagerCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor AsyncTaskCompat -->
+<nobr><A HREF="android.support.v4.os.AsyncTaskCompat.html#android.support.v4.os.AsyncTaskCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>AsyncTaskCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor BitmapCompat -->
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.graphics.BitmapCompat.html#android.support.v4.graphics.BitmapCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>BitmapCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor BundleCompat -->
+<nobr><A HREF="android.support.v4.app.BundleCompat.html#android.support.v4.app.BundleCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>BundleCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor ConnectivityManagerCompat -->
+<A NAME="C"></A>
+<br><font size="+2">C</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.net.ConnectivityManagerCompat.html#android.support.v4.net.ConnectivityManagerCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ConnectivityManagerCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method description -->
+<A NAME="D"></A>
+<br><font size="+2">D</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.description_removed(java.lang.String)" class="hiddenlink" target="rightframe"><strike>description</strike>
+(<code>String</code>)</A></nobr><br>
+<!-- Constructor DrawableCompat -->
+<nobr><A HREF="android.support.v4.graphics.drawable.DrawableCompat.html#android.support.v4.graphics.drawable.DrawableCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>DrawableCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method editTitle -->
+<A NAME="E"></A>
+<br><font size="+2">E</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.editTitle_removed(java.lang.String)" class="hiddenlink" target="rightframe"><strike>editTitle</strike>
+(<code>String</code>)</A></nobr><br>
+<!-- Constructor EnvironmentCompat -->
+<nobr><A HREF="android.support.v4.os.EnvironmentCompat.html#android.support.v4.os.EnvironmentCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>EnvironmentCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Method fillMarginLayoutParams -->
+<A NAME="F"></A>
+<br><font size="+2">F</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html#android.support.percent.PercentLayoutHelper.PercentLayoutInfo.fillMarginLayoutParams_removed(android.view.ViewGroup.MarginLayoutParams, int, int)" class="hiddenlink" target="rightframe"><strike>fillMarginLayoutParams</strike>
+(<code>MarginLayoutParams, int, int</code>)</A></nobr><br>
+<!-- Method getChildMeasureSpec -->
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v7.widget.RecyclerView.LayoutManager.html#android.support.v7.widget.RecyclerView.LayoutManager.getChildMeasureSpec_removed(int, int, int, boolean)" class="hiddenlink" target="rightframe"><strike>getChildMeasureSpec</strike>
+(<code>int, int, int, boolean</code>)</A></nobr><br>
+<!-- Method getContainerIdForBackground -->
+<i>getContainerIdForBackground</i><br>
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.getContainerIdForBackground_removed()" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+()</strike>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepFragment
+</A></nobr><br>
+<!-- Method getContainerIdForBackground -->
+&nbsp;&nbsp;<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.getContainerIdForBackground_removed()" class="hiddenlink" target="rightframe">type&nbsp;<strike>
+()</strike>&nbsp;in&nbsp;android.support.v17.leanback.app.GuidedStepSupportFragment
+</A></nobr><br>
+<!-- Method getGroupMemberIds -->
+<nobr><A HREF="android.support.v7.media.MediaRouteDescriptor.html#android.support.v7.media.MediaRouteDescriptor.getGroupMemberIds_removed()" class="hiddenlink" target="rightframe"><strike>getGroupMemberIds</strike>
+()</A></nobr><br>
+<!-- Constructor GravityCompat -->
+<nobr><A HREF="android.support.v4.view.GravityCompat.html#android.support.v4.view.GravityCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>GravityCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class GuidedStepFragment.GuidedStepBackgroundFragment -->
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepFragment.GuidedStepBackgroundFragment" class="hiddenlink" target="rightframe"><strike>GuidedStepFragment.GuidedStepBackgroundFragment</strike></A><br>
+<!-- Class GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment -->
+<A HREF="pkg_android.support.v17.leanback.app.html#GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment" class="hiddenlink" target="rightframe"><strike>GuidedStepSupportFragment.GuidedStepBackgroundSupportFragment</strike></A><br>
+<!-- Method icon -->
+<A NAME="I"></A>
+<br><font size="+2">I</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.icon_removed(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><strike>icon</strike>
+(<code>Drawable</code>)</A></nobr><br>
+<!-- Constructor ICUCompat -->
+<nobr><A HREF="android.support.v4.text.ICUCompat.html#android.support.v4.text.ICUCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ICUCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor InputDeviceCompat -->
+<nobr><A HREF="android.support.v4.view.InputDeviceCompat.html#android.support.v4.view.InputDeviceCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>InputDeviceCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor KeyEventCompat -->
+<A NAME="K"></A>
+<br><font size="+2">K</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.view.KeyEventCompat.html#android.support.v4.view.KeyEventCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>KeyEventCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Field mActionsGridView -->
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.mActionsGridView" class="hiddenlink" target="rightframe"><strike>mActionsGridView</strike></A>
+</nobr><br>
+<!-- Constructor MarginLayoutParamsCompat -->
+<nobr><A HREF="android.support.v4.view.MarginLayoutParamsCompat.html#android.support.v4.view.MarginLayoutParamsCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>MarginLayoutParamsCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Class MediaRouter.RouteGroup -->
+<A HREF="pkg_android.support.v7.media.html#MediaRouter.RouteGroup" class="hiddenlink" target="rightframe"><strike>MediaRouter.RouteGroup</strike></A><br>
+<!-- Constructor MenuCompat -->
+<nobr><A HREF="android.support.v4.view.MenuCompat.html#android.support.v4.view.MenuCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>MenuCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor MenuItemCompat -->
+<nobr><A HREF="android.support.v4.view.MenuItemCompat.html#android.support.v4.view.MenuItemCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>MenuItemCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Field mMainView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.mMainView" class="hiddenlink" target="rightframe"><strike>mMainView</strike></A>
+</nobr><br>
+<!-- Constructor MotionEventCompat -->
+<nobr><A HREF="android.support.v4.view.MotionEventCompat.html#android.support.v4.view.MotionEventCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>MotionEventCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Field mSelectorView -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.html#android.support.v17.leanback.widget.GuidedActionsStylist.mSelectorView" class="hiddenlink" target="rightframe"><strike>mSelectorView</strike></A>
+</nobr><br>
+<!-- Field NO_DRAWABLE -->
+<A NAME="N"></A>
+<br><font size="+2">N</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.html#android.support.v17.leanback.widget.GuidedAction.NO_DRAWABLE" class="hiddenlink" target="rightframe"><strike>NO_DRAWABLE</strike></A>
+</nobr><br>
+<!-- Method onLayoutChild -->
+<A NAME="O"></A>
+<br><font size="+2">O</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html#android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onLayoutChild_removed(android.support.design.widget.CoordinatorLayout, android.view.View, int)" class="hiddenlink" target="rightframe"><strike>onLayoutChild</strike>
+(<code>CoordinatorLayout, View, int</code>)</A></nobr><br>
+<!-- Method onProvideBackgroundFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepFragment.html#android.support.v17.leanback.app.GuidedStepFragment.onProvideBackgroundFragment_removed()" class="hiddenlink" target="rightframe"><strike>onProvideBackgroundFragment</strike>
+()</A></nobr><br>
+<!-- Method onProvideBackgroundSupportFragment -->
+<nobr><A HREF="android.support.v17.leanback.app.GuidedStepSupportFragment.html#android.support.v17.leanback.app.GuidedStepSupportFragment.onProvideBackgroundSupportFragment_removed()" class="hiddenlink" target="rightframe"><strike>onProvideBackgroundSupportFragment</strike>
+()</A></nobr><br>
+<!-- Constructor ParallelExecutorCompat -->
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.content.ParallelExecutorCompat.html#android.support.v4.content.ParallelExecutorCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ParallelExecutorCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor ParcelableCompat -->
+<nobr><A HREF="android.support.v4.os.ParcelableCompat.html#android.support.v4.os.ParcelableCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ParcelableCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor ResourcesCompat -->
+<A NAME="R"></A>
+<br><font size="+2">R</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.content.res.ResourcesCompat.html#android.support.v4.content.res.ResourcesCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ResourcesCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor RoundedBitmapDrawableFactory -->
+<nobr><A HREF="android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory.html#android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory.ctor_removed()" class="hiddenlink" target="rightframe"><strike>RoundedBitmapDrawableFactory</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor ShareCompat -->
+<A NAME="S"></A>
+<br><font size="+2">S</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.app.ShareCompat.html#android.support.v4.app.ShareCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ShareCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor SharedPreferencesCompat -->
+<nobr><A HREF="android.support.v4.content.SharedPreferencesCompat.html#android.support.v4.content.SharedPreferencesCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>SharedPreferencesCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor TextDirectionHeuristicsCompat -->
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.text.TextDirectionHeuristicsCompat.html#android.support.v4.text.TextDirectionHeuristicsCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>TextDirectionHeuristicsCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor TextUtilsCompat -->
+<nobr><A HREF="android.support.v4.text.TextUtilsCompat.html#android.support.v4.text.TextUtilsCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>TextUtilsCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Field Theme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme" class="hiddenlink" target="rightframe"><strike>Theme</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarDivider -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarDivider" class="hiddenlink" target="rightframe"><strike>Theme_actionBarDivider</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarItemBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarItemBackground" class="hiddenlink" target="rightframe"><strike>Theme_actionBarItemBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarPopupTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarPopupTheme" class="hiddenlink" target="rightframe"><strike>Theme_actionBarPopupTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarSize -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarSize" class="hiddenlink" target="rightframe"><strike>Theme_actionBarSize</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarSplitStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarSplitStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionBarSplitStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionBarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarTabBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarTabBarStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionBarTabBarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarTabStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarTabStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionBarTabStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarTabTextStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarTabTextStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionBarTabTextStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarTheme" class="hiddenlink" target="rightframe"><strike>Theme_actionBarTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_actionBarWidgetTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionBarWidgetTheme" class="hiddenlink" target="rightframe"><strike>Theme_actionBarWidgetTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_actionButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionDropDownStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionDropDownStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionDropDownStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionMenuTextAppearance -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionMenuTextAppearance" class="hiddenlink" target="rightframe"><strike>Theme_actionMenuTextAppearance</strike></A>
+</nobr><br>
+<!-- Field Theme_actionMenuTextColor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionMenuTextColor" class="hiddenlink" target="rightframe"><strike>Theme_actionMenuTextColor</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeBackground" class="hiddenlink" target="rightframe"><strike>Theme_actionModeBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeCloseButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeCloseButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionModeCloseButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeCloseDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeCloseDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeCloseDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeCopyDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeCopyDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeCopyDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeCutDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeCutDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeCutDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeFindDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeFindDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeFindDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModePasteDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModePasteDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModePasteDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModePopupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModePopupWindowStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionModePopupWindowStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeSelectAllDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeSelectAllDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeSelectAllDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeShareDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeShareDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeShareDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeSplitBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeSplitBackground" class="hiddenlink" target="rightframe"><strike>Theme_actionModeSplitBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionModeStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionModeWebSearchDrawable -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionModeWebSearchDrawable" class="hiddenlink" target="rightframe"><strike>Theme_actionModeWebSearchDrawable</strike></A>
+</nobr><br>
+<!-- Field Theme_actionOverflowButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionOverflowButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionOverflowButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_actionOverflowMenuStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_actionOverflowMenuStyle" class="hiddenlink" target="rightframe"><strike>Theme_actionOverflowMenuStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_activityChooserViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_activityChooserViewStyle" class="hiddenlink" target="rightframe"><strike>Theme_activityChooserViewStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_alertDialogButtonGroupStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_alertDialogButtonGroupStyle" class="hiddenlink" target="rightframe"><strike>Theme_alertDialogButtonGroupStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_alertDialogCenterButtons -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_alertDialogCenterButtons" class="hiddenlink" target="rightframe"><strike>Theme_alertDialogCenterButtons</strike></A>
+</nobr><br>
+<!-- Field Theme_alertDialogStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_alertDialogStyle" class="hiddenlink" target="rightframe"><strike>Theme_alertDialogStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_alertDialogTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_alertDialogTheme" class="hiddenlink" target="rightframe"><strike>Theme_alertDialogTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_android_windowAnimationStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_android_windowAnimationStyle" class="hiddenlink" target="rightframe"><strike>Theme_android_windowAnimationStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_android_windowIsFloating -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_android_windowIsFloating" class="hiddenlink" target="rightframe"><strike>Theme_android_windowIsFloating</strike></A>
+</nobr><br>
+<!-- Field Theme_autoCompleteTextViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_autoCompleteTextViewStyle" class="hiddenlink" target="rightframe"><strike>Theme_autoCompleteTextViewStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_borderlessButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_borderlessButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_borderlessButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonBarButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonBarButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonBarButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonBarNegativeButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonBarNegativeButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonBarNegativeButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonBarNeutralButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonBarNeutralButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonBarNeutralButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonBarPositiveButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonBarPositiveButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonBarPositiveButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonBarStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonBarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonStyle" class="hiddenlink" target="rightframe"><strike>Theme_buttonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_buttonStyleSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_buttonStyleSmall" class="hiddenlink" target="rightframe"><strike>Theme_buttonStyleSmall</strike></A>
+</nobr><br>
+<!-- Field Theme_checkboxStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_checkboxStyle" class="hiddenlink" target="rightframe"><strike>Theme_checkboxStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_checkedTextViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_checkedTextViewStyle" class="hiddenlink" target="rightframe"><strike>Theme_checkedTextViewStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_colorAccent -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorAccent" class="hiddenlink" target="rightframe"><strike>Theme_colorAccent</strike></A>
+</nobr><br>
+<!-- Field Theme_colorButtonNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorButtonNormal" class="hiddenlink" target="rightframe"><strike>Theme_colorButtonNormal</strike></A>
+</nobr><br>
+<!-- Field Theme_colorControlActivated -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorControlActivated" class="hiddenlink" target="rightframe"><strike>Theme_colorControlActivated</strike></A>
+</nobr><br>
+<!-- Field Theme_colorControlHighlight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorControlHighlight" class="hiddenlink" target="rightframe"><strike>Theme_colorControlHighlight</strike></A>
+</nobr><br>
+<!-- Field Theme_colorControlNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorControlNormal" class="hiddenlink" target="rightframe"><strike>Theme_colorControlNormal</strike></A>
+</nobr><br>
+<!-- Field Theme_colorPrimary -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorPrimary" class="hiddenlink" target="rightframe"><strike>Theme_colorPrimary</strike></A>
+</nobr><br>
+<!-- Field Theme_colorPrimaryDark -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorPrimaryDark" class="hiddenlink" target="rightframe"><strike>Theme_colorPrimaryDark</strike></A>
+</nobr><br>
+<!-- Field Theme_colorSwitchThumbNormal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_colorSwitchThumbNormal" class="hiddenlink" target="rightframe"><strike>Theme_colorSwitchThumbNormal</strike></A>
+</nobr><br>
+<!-- Field Theme_controlBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_controlBackground" class="hiddenlink" target="rightframe"><strike>Theme_controlBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_dialogPreferredPadding -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dialogPreferredPadding" class="hiddenlink" target="rightframe"><strike>Theme_dialogPreferredPadding</strike></A>
+</nobr><br>
+<!-- Field Theme_dialogTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dialogTheme" class="hiddenlink" target="rightframe"><strike>Theme_dialogTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_dividerHorizontal -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dividerHorizontal" class="hiddenlink" target="rightframe"><strike>Theme_dividerHorizontal</strike></A>
+</nobr><br>
+<!-- Field Theme_dividerVertical -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dividerVertical" class="hiddenlink" target="rightframe"><strike>Theme_dividerVertical</strike></A>
+</nobr><br>
+<!-- Field Theme_dropdownListPreferredItemHeight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dropdownListPreferredItemHeight" class="hiddenlink" target="rightframe"><strike>Theme_dropdownListPreferredItemHeight</strike></A>
+</nobr><br>
+<!-- Field Theme_dropDownListViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_dropDownListViewStyle" class="hiddenlink" target="rightframe"><strike>Theme_dropDownListViewStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_editTextBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_editTextBackground" class="hiddenlink" target="rightframe"><strike>Theme_editTextBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_editTextColor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_editTextColor" class="hiddenlink" target="rightframe"><strike>Theme_editTextColor</strike></A>
+</nobr><br>
+<!-- Field Theme_editTextStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_editTextStyle" class="hiddenlink" target="rightframe"><strike>Theme_editTextStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_homeAsUpIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_homeAsUpIndicator" class="hiddenlink" target="rightframe"><strike>Theme_homeAsUpIndicator</strike></A>
+</nobr><br>
+<!-- Field Theme_imageButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_imageButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_imageButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_listChoiceBackgroundIndicator -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listChoiceBackgroundIndicator" class="hiddenlink" target="rightframe"><strike>Theme_listChoiceBackgroundIndicator</strike></A>
+</nobr><br>
+<!-- Field Theme_listDividerAlertDialog -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listDividerAlertDialog" class="hiddenlink" target="rightframe"><strike>Theme_listDividerAlertDialog</strike></A>
+</nobr><br>
+<!-- Field Theme_listPopupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPopupWindowStyle" class="hiddenlink" target="rightframe"><strike>Theme_listPopupWindowStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_listPreferredItemHeight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPreferredItemHeight" class="hiddenlink" target="rightframe"><strike>Theme_listPreferredItemHeight</strike></A>
+</nobr><br>
+<!-- Field Theme_listPreferredItemHeightLarge -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPreferredItemHeightLarge" class="hiddenlink" target="rightframe"><strike>Theme_listPreferredItemHeightLarge</strike></A>
+</nobr><br>
+<!-- Field Theme_listPreferredItemHeightSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPreferredItemHeightSmall" class="hiddenlink" target="rightframe"><strike>Theme_listPreferredItemHeightSmall</strike></A>
+</nobr><br>
+<!-- Field Theme_listPreferredItemPaddingLeft -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPreferredItemPaddingLeft" class="hiddenlink" target="rightframe"><strike>Theme_listPreferredItemPaddingLeft</strike></A>
+</nobr><br>
+<!-- Field Theme_listPreferredItemPaddingRight -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_listPreferredItemPaddingRight" class="hiddenlink" target="rightframe"><strike>Theme_listPreferredItemPaddingRight</strike></A>
+</nobr><br>
+<!-- Field Theme_panelBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_panelBackground" class="hiddenlink" target="rightframe"><strike>Theme_panelBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_panelMenuListTheme -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_panelMenuListTheme" class="hiddenlink" target="rightframe"><strike>Theme_panelMenuListTheme</strike></A>
+</nobr><br>
+<!-- Field Theme_panelMenuListWidth -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_panelMenuListWidth" class="hiddenlink" target="rightframe"><strike>Theme_panelMenuListWidth</strike></A>
+</nobr><br>
+<!-- Field Theme_popupMenuStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_popupMenuStyle" class="hiddenlink" target="rightframe"><strike>Theme_popupMenuStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_popupWindowStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_popupWindowStyle" class="hiddenlink" target="rightframe"><strike>Theme_popupWindowStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_radioButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_radioButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_radioButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_ratingBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_ratingBarStyle" class="hiddenlink" target="rightframe"><strike>Theme_ratingBarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_searchViewStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_searchViewStyle" class="hiddenlink" target="rightframe"><strike>Theme_searchViewStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_seekBarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_seekBarStyle" class="hiddenlink" target="rightframe"><strike>Theme_seekBarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_selectableItemBackground -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_selectableItemBackground" class="hiddenlink" target="rightframe"><strike>Theme_selectableItemBackground</strike></A>
+</nobr><br>
+<!-- Field Theme_selectableItemBackgroundBorderless -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_selectableItemBackgroundBorderless" class="hiddenlink" target="rightframe"><strike>Theme_selectableItemBackgroundBorderless</strike></A>
+</nobr><br>
+<!-- Field Theme_spinnerDropDownItemStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_spinnerDropDownItemStyle" class="hiddenlink" target="rightframe"><strike>Theme_spinnerDropDownItemStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_spinnerStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_spinnerStyle" class="hiddenlink" target="rightframe"><strike>Theme_spinnerStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_switchStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_switchStyle" class="hiddenlink" target="rightframe"><strike>Theme_switchStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceLargePopupMenu -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceLargePopupMenu" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceLargePopupMenu</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceListItem -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceListItem" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceListItem</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceListItemSmall -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceListItemSmall" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceListItemSmall</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceSearchResultSubtitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceSearchResultSubtitle" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceSearchResultSubtitle</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceSearchResultTitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceSearchResultTitle" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceSearchResultTitle</strike></A>
+</nobr><br>
+<!-- Field Theme_textAppearanceSmallPopupMenu -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textAppearanceSmallPopupMenu" class="hiddenlink" target="rightframe"><strike>Theme_textAppearanceSmallPopupMenu</strike></A>
+</nobr><br>
+<!-- Field Theme_textColorAlertDialogListItem -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textColorAlertDialogListItem" class="hiddenlink" target="rightframe"><strike>Theme_textColorAlertDialogListItem</strike></A>
+</nobr><br>
+<!-- Field Theme_textColorSearchUrl -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_textColorSearchUrl" class="hiddenlink" target="rightframe"><strike>Theme_textColorSearchUrl</strike></A>
+</nobr><br>
+<!-- Field Theme_toolbarNavigationButtonStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_toolbarNavigationButtonStyle" class="hiddenlink" target="rightframe"><strike>Theme_toolbarNavigationButtonStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_toolbarStyle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_toolbarStyle" class="hiddenlink" target="rightframe"><strike>Theme_toolbarStyle</strike></A>
+</nobr><br>
+<!-- Field Theme_windowActionBar -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowActionBar" class="hiddenlink" target="rightframe"><strike>Theme_windowActionBar</strike></A>
+</nobr><br>
+<!-- Field Theme_windowActionBarOverlay -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowActionBarOverlay" class="hiddenlink" target="rightframe"><strike>Theme_windowActionBarOverlay</strike></A>
+</nobr><br>
+<!-- Field Theme_windowActionModeOverlay -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowActionModeOverlay" class="hiddenlink" target="rightframe"><strike>Theme_windowActionModeOverlay</strike></A>
+</nobr><br>
+<!-- Field Theme_windowFixedHeightMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowFixedHeightMajor" class="hiddenlink" target="rightframe"><strike>Theme_windowFixedHeightMajor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowFixedHeightMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowFixedHeightMinor" class="hiddenlink" target="rightframe"><strike>Theme_windowFixedHeightMinor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowFixedWidthMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowFixedWidthMajor" class="hiddenlink" target="rightframe"><strike>Theme_windowFixedWidthMajor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowFixedWidthMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowFixedWidthMinor" class="hiddenlink" target="rightframe"><strike>Theme_windowFixedWidthMinor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowMinWidthMajor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowMinWidthMajor" class="hiddenlink" target="rightframe"><strike>Theme_windowMinWidthMajor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowMinWidthMinor -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowMinWidthMinor" class="hiddenlink" target="rightframe"><strike>Theme_windowMinWidthMinor</strike></A>
+</nobr><br>
+<!-- Field Theme_windowNoTitle -->
+<nobr><A HREF="android.support.v7.appcompat.R.styleable.html#android.support.v7.appcompat.R.styleable.Theme_windowNoTitle" class="hiddenlink" target="rightframe"><strike>Theme_windowNoTitle</strike></A>
+</nobr><br>
+<!-- Method title -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedAction.Builder.html#android.support.v17.leanback.widget.GuidedAction.Builder.title_removed(java.lang.String)" class="hiddenlink" target="rightframe"><strike>title</strike>
+(<code>String</code>)</A></nobr><br>
+<!-- Constructor TraceCompat -->
+<nobr><A HREF="android.support.v4.os.TraceCompat.html#android.support.v4.os.TraceCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>TraceCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor TrafficStatsCompat -->
+<nobr><A HREF="android.support.v4.net.TrafficStatsCompat.html#android.support.v4.net.TrafficStatsCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>TrafficStatsCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor VelocityTrackerCompat -->
+<A NAME="V"></A>
+<br><font size="+2">V</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#W"><font size="-2">W</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.view.VelocityTrackerCompat.html#android.support.v4.view.VelocityTrackerCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>VelocityTrackerCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Field view -->
+<nobr><A HREF="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html#android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.view" class="hiddenlink" target="rightframe"><strike>view</strike></A>
+</nobr><br>
+<!-- Constructor ViewCompat -->
+<nobr><A HREF="android.support.v4.view.ViewCompat.html#android.support.v4.view.ViewCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ViewCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor ViewConfigurationCompat -->
+<nobr><A HREF="android.support.v4.view.ViewConfigurationCompat.html#android.support.v4.view.ViewConfigurationCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>ViewConfigurationCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<!-- Constructor WindowCompat -->
+<A NAME="W"></A>
+<br><font size="+2">W</font>&nbsp;
+<a href="#A"><font size="-2">A</font></a> 
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#C"><font size="-2">C</font></a> 
+<a href="#D"><font size="-2">D</font></a> 
+<a href="#E"><font size="-2">E</font></a> 
+<a href="#F"><font size="-2">F</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#I"><font size="-2">I</font></a> 
+<a href="#K"><font size="-2">K</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#N"><font size="-2">N</font></a> 
+<a href="#O"><font size="-2">O</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#R"><font size="-2">R</font></a> 
+<a href="#S"><font size="-2">S</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<nobr><A HREF="android.support.v4.view.WindowCompat.html#android.support.v4.view.WindowCompat.ctor_removed()" class="hiddenlink" target="rightframe"><strike>WindowCompat</strike>
+()</A></nobr>&nbsp;constructor<br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.customtabs.CustomTabsIntent.Builder.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.customtabs.CustomTabsIntent.Builder.html
new file mode 100644
index 0000000..46a0548
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.customtabs.CustomTabsIntent.Builder.html
@@ -0,0 +1,136 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.customtabs.CustomTabsIntent.Builder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.customtabs.<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.Builder.html" target="_top"><font size="+2"><code>CustomTabsIntent.Builder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.Builder.addDefaultShareMenuItem_added()"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.Builder.html#addDefaultShareMenuItem()" target="_top"><code>addDefaultShareMenuItem</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.Builder.addToolbarItem_added(int, android.graphics.Bitmap, java.lang.String, android.app.PendingIntent)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.Builder.html#addToolbarItem(int, android.graphics.Bitmap, java.lang.String, android.app.PendingIntent)" target="_top"><code>addToolbarItem</code></A>(<code>int,</nobr> Bitmap<nobr>,</nobr> String<nobr>,</nobr> PendingIntent<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.Builder.setSecondaryToolbarColor_added(int)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.Builder.html#setSecondaryToolbarColor(int)" target="_top"><code>setSecondaryToolbarColor</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.customtabs.CustomTabsIntent.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.customtabs.CustomTabsIntent.html
new file mode 100644
index 0000000..7987724
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.customtabs.CustomTabsIntent.html
@@ -0,0 +1,165 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.customtabs.CustomTabsIntent
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.customtabs.<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.html" target="_top"><font size="+2"><code>CustomTabsIntent</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.getMaxToolbarItems_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.html#getMaxToolbarItems()" target="_top"><code>getMaxToolbarItems</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.EXTRA_DEFAULT_SHARE_MENU_ITEM"></A>
+  <nobr><code>String</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.html#EXTRA_DEFAULT_SHARE_MENU_ITEM" target="_top"><code>EXTRA_DEFAULT_SHARE_MENU_ITEM</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.EXTRA_SECONDARY_TOOLBAR_COLOR"></A>
+  <nobr><code>String</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.html#EXTRA_SECONDARY_TOOLBAR_COLOR" target="_top"><code>EXTRA_SECONDARY_TOOLBAR_COLOR</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.EXTRA_TOOLBAR_ITEMS"></A>
+  <nobr><code>String</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.html#EXTRA_TOOLBAR_ITEMS" target="_top"><code>EXTRA_TOOLBAR_ITEMS</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.KEY_ID"></A>
+  <nobr><code>String</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.html#KEY_ID" target="_top"><code>KEY_ID</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsIntent.TOOLBAR_ACTION_BUTTON_ID"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsIntent.html#TOOLBAR_ACTION_BUTTON_ID" target="_top"><code>TOOLBAR_ACTION_BUTTON_ID</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.customtabs.CustomTabsSession.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.customtabs.CustomTabsSession.html
new file mode 100644
index 0000000..1296d4c
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.customtabs.CustomTabsSession.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.customtabs.CustomTabsSession
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.customtabs.<A HREF="../../../../reference/android/support/customtabs/CustomTabsSession.html" target="_top"><font size="+2"><code>CustomTabsSession</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs.CustomTabsSession.setToolbarItem_added(int, android.graphics.Bitmap, java.lang.String)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/customtabs/CustomTabsSession.html#setToolbarItem(int, android.graphics.Bitmap, java.lang.String)" target="_top"><code>setToolbarItem</code></A>(<code>int,</nobr> Bitmap<nobr>,</nobr> String<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html
new file mode 100644
index 0000000..d539481
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.AppBarLayout.ScrollingViewBehavior.html
@@ -0,0 +1,150 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.AppBarLayout.ScrollingViewBehavior
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/AppBarLayout.ScrollingViewBehavior.html" target="_top"><font size="+2"><code>AppBarLayout.ScrollingViewBehavior</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.onLayoutChild_removed(android.support.design.widget.CoordinatorLayout, android.view.View, int)"></A>
+  <nobr><code>boolean</code>&nbsp;onLayoutChild(<code>CoordinatorLayout,</nobr> View<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.getOverlayTop_changed()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/AppBarLayout.ScrollingViewBehavior.html#getOverlayTop()" target="_top"><code>getOverlayTop</code></A>()  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/design/widget/HeaderScrollingViewBehavior.html#getOverlayTop()" target="_top"><code>HeaderScrollingViewBehavior</code></a>. Change from non-final to final.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.AppBarLayout.ScrollingViewBehavior.setOverlayTop_changed(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/AppBarLayout.ScrollingViewBehavior.html#setOverlayTop(int)" target="_top"><code>setOverlayTop</code></A>(<code>int</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/design/widget/HeaderScrollingViewBehavior.html#setOverlayTop(int)" target="_top"><code>HeaderScrollingViewBehavior</code></a>. Change from non-final to final.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.CollapsingToolbarLayout.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.CollapsingToolbarLayout.html
new file mode 100644
index 0000000..e47f317
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.CollapsingToolbarLayout.html
@@ -0,0 +1,178 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.CollapsingToolbarLayout
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html" target="_top"><font size="+2"><code>CollapsingToolbarLayout</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginBottom_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#getExpandedTitleMarginBottom()" target="_top"><code>getExpandedTitleMarginBottom</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginEnd_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#getExpandedTitleMarginEnd()" target="_top"><code>getExpandedTitleMarginEnd</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginStart_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#getExpandedTitleMarginStart()" target="_top"><code>getExpandedTitleMarginStart</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.getExpandedTitleMarginTop_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#getExpandedTitleMarginTop()" target="_top"><code>getExpandedTitleMarginTop</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMargin_added(int, int, int, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#setExpandedTitleMargin(int, int, int, int)" target="_top"><code>setExpandedTitleMargin</code></A>(<code>int,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginBottom_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#setExpandedTitleMarginBottom(int)" target="_top"><code>setExpandedTitleMarginBottom</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginEnd_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#setExpandedTitleMarginEnd(int)" target="_top"><code>setExpandedTitleMarginEnd</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginStart_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#setExpandedTitleMarginStart(int)" target="_top"><code>setExpandedTitleMarginStart</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CollapsingToolbarLayout.setExpandedTitleMarginTop_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CollapsingToolbarLayout.html#setExpandedTitleMarginTop(int)" target="_top"><code>setExpandedTitleMarginTop</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.CoordinatorLayout.Behavior.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.CoordinatorLayout.Behavior.html
new file mode 100644
index 0000000..04efe89
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.CoordinatorLayout.Behavior.html
@@ -0,0 +1,135 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.CoordinatorLayout.Behavior
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/CoordinatorLayout.Behavior.html" target="_top"><font size="+2"><code>CoordinatorLayout.Behavior</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CoordinatorLayout.Behavior.getScrimColor_changed(android.support.design.widget.CoordinatorLayout, V)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CoordinatorLayout.Behavior.html#getScrimColor(android.support.design.widget.CoordinatorLayout, V)" target="_top"><code>getScrimColor</code></A>(<code>CoordinatorLayout,</nobr> V<nobr><nobr></code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change from final to non-final.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.CoordinatorLayout.Behavior.getScrimOpacity_changed(android.support.design.widget.CoordinatorLayout, V)"></A>
+  <nobr><code>float</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/CoordinatorLayout.Behavior.html#getScrimOpacity(android.support.design.widget.CoordinatorLayout, V)" target="_top"><code>getScrimOpacity</code></A>(<code>CoordinatorLayout,</nobr> V<nobr><nobr></code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change from final to non-final.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.FloatingActionButton.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.FloatingActionButton.html
new file mode 100644
index 0000000..985adba
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.FloatingActionButton.html
@@ -0,0 +1,158 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.FloatingActionButton
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.html" target="_top"><font size="+2"><code>FloatingActionButton</code></font></A>
+</H2>
+<p><font xsize="+1">The superclass changed from <code>android.widget.ImageButton</code> to <code>android.support.design.widget.VisibilityAwareImageButton</code>.<br></font>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.FloatingActionButton.getCompatElevation_added()"></A>
+  <nobr><code>float</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.html#getCompatElevation()" target="_top"><code>getCompatElevation</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.FloatingActionButton.getContentBackground_added()"></A>
+  <nobr><code>Drawable</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.html#getContentBackground()" target="_top"><code>getContentBackground</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.FloatingActionButton.getContentRect_added(android.graphics.Rect)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.html#getContentRect(android.graphics.Rect)" target="_top"><code>getContentRect</code></A>(<code>Rect</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.FloatingActionButton.getUseCompatPadding_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.html#getUseCompatPadding()" target="_top"><code>getUseCompatPadding</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.FloatingActionButton.setCompatElevation_added(float)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.html#setCompatElevation(float)" target="_top"><code>setCompatElevation</code></A>(<code>float</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.FloatingActionButton.setUseCompatPadding_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/FloatingActionButton.html#setUseCompatPadding(boolean)" target="_top"><code>setUseCompatPadding</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.HeaderScrollingViewBehavior.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.HeaderScrollingViewBehavior.html
new file mode 100644
index 0000000..7021ba2
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.HeaderScrollingViewBehavior.html
@@ -0,0 +1,136 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.HeaderScrollingViewBehavior
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/HeaderScrollingViewBehavior.html" target="_top"><font size="+2"><code>HeaderScrollingViewBehavior</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.HeaderScrollingViewBehavior.getOverlayTop_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/HeaderScrollingViewBehavior.html#getOverlayTop()" target="_top"><code>getOverlayTop</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.HeaderScrollingViewBehavior.layoutChild_added(android.support.design.widget.CoordinatorLayout, android.view.View, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/HeaderScrollingViewBehavior.html#layoutChild(android.support.design.widget.CoordinatorLayout, android.view.View, int)" target="_top"><code>layoutChild</code></A>(<code>CoordinatorLayout,</nobr> View<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.HeaderScrollingViewBehavior.setOverlayTop_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/HeaderScrollingViewBehavior.html#setOverlayTop(int)" target="_top"><code>setOverlayTop</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.TabLayout.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.TabLayout.html
new file mode 100644
index 0000000..9224ddb
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.TabLayout.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.TabLayout
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/TabLayout.html" target="_top"><font size="+2"><code>TabLayout</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.TabLayout.setTabsFromPagerAdapter_changed(android.support.v4.view.PagerAdapter)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/TabLayout.html#setTabsFromPagerAdapter(android.support.v4.view.PagerAdapter)" target="_top"><code>setTabsFromPagerAdapter</code></A>(<code>PagerAdapter</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+<b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.TextInputLayout.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.TextInputLayout.html
new file mode 100644
index 0000000..b0f5d63
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.TextInputLayout.html
@@ -0,0 +1,143 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.TextInputLayout
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/TextInputLayout.html" target="_top"><font size="+2"><code>TextInputLayout</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.TextInputLayout.isCounterEnabled_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/TextInputLayout.html#isCounterEnabled()" target="_top"><code>isCounterEnabled</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.TextInputLayout.isHintEnabled_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/TextInputLayout.html#isHintEnabled()" target="_top"><code>isHintEnabled</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.TextInputLayout.onSaveInstanceState_added()"></A>
+  <nobr><code>Parcelable</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/TextInputLayout.html#onSaveInstanceState()" target="_top"><code>onSaveInstanceState</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.TextInputLayout.setHintEnabled_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/TextInputLayout.html#setHintEnabled(boolean)" target="_top"><code>setHintEnabled</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.ViewOffsetBehavior.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.ViewOffsetBehavior.html
new file mode 100644
index 0000000..1b4625f
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.design.widget.ViewOffsetBehavior.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.design.widget.ViewOffsetBehavior
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.design.widget.<A HREF="../../../../reference/android/support/design/widget/ViewOffsetBehavior.html" target="_top"><font size="+2"><code>ViewOffsetBehavior</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget.ViewOffsetBehavior.layoutChild_added(android.support.design.widget.CoordinatorLayout, V, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/design/widget/ViewOffsetBehavior.html#layoutChild(android.support.design.widget.CoordinatorLayout, V, int)" target="_top"><code>layoutChild</code></A>(<code>CoordinatorLayout,</nobr> V<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html
new file mode 100644
index 0000000..c13de02
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.percent.PercentLayoutHelper.PercentLayoutInfo.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.percent.PercentLayoutHelper.PercentLayoutInfo
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.percent.<A HREF="../../../../reference/android/support/percent/PercentLayoutHelper.PercentLayoutInfo.html" target="_top"><font size="+2"><code>PercentLayoutHelper.PercentLayoutInfo</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.fillMarginLayoutParams_removed(android.view.ViewGroup.MarginLayoutParams, int, int)"></A>
+  <nobr><code>void</code>&nbsp;fillMarginLayoutParams(<code>MarginLayoutParams,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.fillMarginLayoutParams_added(android.view.View, android.view.ViewGroup.MarginLayoutParams, int, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/percent/PercentLayoutHelper.PercentLayoutInfo.html#fillMarginLayoutParams(android.view.View, android.view.ViewGroup.MarginLayoutParams, int, int)" target="_top"><code>fillMarginLayoutParams</code></A>(<code>View,</nobr> MarginLayoutParams<nobr>,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.percent.PercentLayoutHelper.PercentLayoutInfo.fillMarginLayoutParams_added(android.view.ViewGroup.MarginLayoutParams, int, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/percent/PercentLayoutHelper.PercentLayoutInfo.html#fillMarginLayoutParams(android.view.ViewGroup.MarginLayoutParams, int, int)" target="_top"><code>fillMarginLayoutParams</code></A>(<code>MarginLayoutParams,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v14.preference.PreferenceFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v14.preference.PreferenceFragment.html
new file mode 100644
index 0000000..3a910d0
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v14.preference.PreferenceFragment.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v14.preference.PreferenceFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v14.preference.<A HREF="../../../../reference/android/support/v14/preference/PreferenceFragment.html" target="_top"><font size="+2"><code>PreferenceFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v14.preference.PreferenceFragment.setDivider_added(android.graphics.drawable.Drawable)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v14/preference/PreferenceFragment.html#setDivider(android.graphics.drawable.Drawable)" target="_top"><code>setDivider</code></A>(<code>Drawable</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v14.preference.PreferenceFragment.setDividerHeight_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v14/preference/PreferenceFragment.html#setDividerHeight(int)" target="_top"><code>setDividerHeight</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BaseRowFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BaseRowFragment.html
new file mode 100644
index 0000000..003f04b
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BaseRowFragment.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.BaseRowFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/BaseRowFragment.html" target="_top"><font size="+2"><code>BaseRowFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BaseRowFragment.getSelectedPosition_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BaseRowFragment.html#getSelectedPosition()" target="_top"><code>getSelectedPosition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BaseRowSupportFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BaseRowSupportFragment.html
new file mode 100644
index 0000000..6a30cc3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BaseRowSupportFragment.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.BaseRowSupportFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/BaseRowSupportFragment.html" target="_top"><font size="+2"><code>BaseRowSupportFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BaseRowSupportFragment.getSelectedPosition_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BaseRowSupportFragment.html#getSelectedPosition()" target="_top"><code>getSelectedPosition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BrowseFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BrowseFragment.html
new file mode 100644
index 0000000..74cb151
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BrowseFragment.html
@@ -0,0 +1,143 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.BrowseFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html" target="_top"><font size="+2"><code>BrowseFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.getHeadersFragment_added()"></A>
+  <nobr><code>HeadersFragment</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#getHeadersFragment()" target="_top"><code>getHeadersFragment</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.getRowsFragment_added()"></A>
+  <nobr><code>RowsFragment</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#getRowsFragment()" target="_top"><code>getRowsFragment</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.getSelectedPosition_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#getSelectedPosition()" target="_top"><code>getSelectedPosition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseFragment.html#setSelectedPosition(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" target="_top"><code>setSelectedPosition</code></A>(<code>int,</nobr> boolean<nobr>,</nobr> ViewHolderTask<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BrowseSupportFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BrowseSupportFragment.html
new file mode 100644
index 0000000..a46a8ed
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.BrowseSupportFragment.html
@@ -0,0 +1,143 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.BrowseSupportFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html" target="_top"><font size="+2"><code>BrowseSupportFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.getHeadersSupportFragment_added()"></A>
+  <nobr><code>HeadersSupportFragment</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#getHeadersSupportFragment()" target="_top"><code>getHeadersSupportFragment</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.getRowsSupportFragment_added()"></A>
+  <nobr><code>RowsSupportFragment</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#getRowsSupportFragment()" target="_top"><code>getRowsSupportFragment</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.getSelectedPosition_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#getSelectedPosition()" target="_top"><code>getSelectedPosition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.BrowseSupportFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/BrowseSupportFragment.html#setSelectedPosition(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" target="_top"><code>setSelectedPosition</code></A>(<code>int,</nobr> boolean<nobr>,</nobr> ViewHolderTask<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.DetailsFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.DetailsFragment.html
new file mode 100644
index 0000000..34875c3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.DetailsFragment.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.DetailsFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsFragment.html" target="_top"><font size="+2"><code>DetailsFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsFragment.getRowsFragment_added()"></A>
+  <nobr><code>RowsFragment</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsFragment.html#getRowsFragment()" target="_top"><code>getRowsFragment</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.DetailsSupportFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.DetailsSupportFragment.html
new file mode 100644
index 0000000..4cd41ed
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.DetailsSupportFragment.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.DetailsSupportFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsSupportFragment.html" target="_top"><font size="+2"><code>DetailsSupportFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.DetailsSupportFragment.getRowsSupportFragment_added()"></A>
+  <nobr><code>RowsSupportFragment</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/DetailsSupportFragment.html#getRowsSupportFragment()" target="_top"><code>getRowsSupportFragment</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.GuidedStepFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.GuidedStepFragment.html
new file mode 100644
index 0000000..0962be7
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.GuidedStepFragment.html
@@ -0,0 +1,344 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.GuidedStepFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html" target="_top"><font size="+2"><code>GuidedStepFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.getContainerIdForBackground_removed()"></A>
+  <nobr><code>int</code>&nbsp;getContainerIdForBackground()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.onProvideBackgroundFragment_removed()"></A>
+  <nobr><code>Fragment</code>&nbsp;onProvideBackgroundFragment()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.collapseSubActions_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#collapseSubActions()" target="_top"><code>collapseSubActions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.expandSubActions_added(android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#expandSubActions(android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>expandSubActions</code></A>(<code>GuidedAction</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.findActionById_added(long)"></A>
+  <nobr><code>GuidedAction</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#findActionById(long)" target="_top"><code>findActionById</code></A>(<code>long</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.findActionPositionById_added(long)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#findActionPositionById(long)" target="_top"><code>findActionPositionById</code></A>(<code>long</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.findButtonActionById_added(long)"></A>
+  <nobr><code>GuidedAction</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#findButtonActionById(long)" target="_top"><code>findButtonActionById</code></A>(<code>long</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.findButtonActionPositionById_added(long)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#findButtonActionPositionById(long)" target="_top"><code>findButtonActionPositionById</code></A>(<code>long</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.finishGuidedStepFragments_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#finishGuidedStepFragments()" target="_top"><code>finishGuidedStepFragments</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.getButtonActionItemView_added(int)"></A>
+  <nobr><code>View</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#getButtonActionItemView(int)" target="_top"><code>getButtonActionItemView</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.getButtonActions_added()"></A>
+  <nobr><code>List&lt;GuidedAction&gt;</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#getButtonActions()" target="_top"><code>getButtonActions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.getGuidedButtonActionsStylist_added()"></A>
+  <nobr><code>GuidedActionsStylist</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#getGuidedButtonActionsStylist()" target="_top"><code>getGuidedButtonActionsStylist</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.getSelectedButtonActionPosition_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#getSelectedButtonActionPosition()" target="_top"><code>getSelectedButtonActionPosition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.isFocusOutEndAllowed_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#isFocusOutEndAllowed()" target="_top"><code>isFocusOutEndAllowed</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.isFocusOutStartAllowed_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#isFocusOutStartAllowed()" target="_top"><code>isFocusOutStartAllowed</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.isSubActionsExpanded_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#isSubActionsExpanded()" target="_top"><code>isSubActionsExpanded</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.notifyActionChanged_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#notifyActionChanged(int)" target="_top"><code>notifyActionChanged</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.notifyButtonActionChanged_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#notifyButtonActionChanged(int)" target="_top"><code>notifyButtonActionChanged</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.onAddSharedElementTransition_added(android.app.FragmentTransaction, android.support.v17.leanback.app.GuidedStepFragment)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#onAddSharedElementTransition(android.app.FragmentTransaction, android.support.v17.leanback.app.GuidedStepFragment)" target="_top"><code>onAddSharedElementTransition</code></A>(<code>FragmentTransaction,</nobr> GuidedStepFragment<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.onCreateBackgroundView_added(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)"></A>
+  <nobr><code>View</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#onCreateBackgroundView(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)" target="_top"><code>onCreateBackgroundView</code></A>(<code>LayoutInflater,</nobr> ViewGroup<nobr>,</nobr> Bundle<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.onCreateButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>, android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#onCreateButtonActions(java.util.List<android.support.v17.leanback.widget.GuidedAction>, android.os.Bundle)" target="_top"><code>onCreateButtonActions</code></A>(<code>List&lt;GuidedAction&gt;,</nobr> Bundle<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.onCreateButtonActionsStylist_added()"></A>
+  <nobr><code>GuidedActionsStylist</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#onCreateButtonActionsStylist()" target="_top"><code>onCreateButtonActionsStylist</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.onGuidedActionEditedAndProceed_added(android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>long</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#onGuidedActionEditedAndProceed(android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>onGuidedActionEditedAndProceed</code></A>(<code>GuidedAction</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.onSubGuidedActionClicked_added(android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#onSubGuidedActionClicked(android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>onSubGuidedActionClicked</code></A>(<code>GuidedAction</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.popBackStackToGuidedStepFragment_added(java.lang.Class, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#popBackStackToGuidedStepFragment(java.lang.Class, int)" target="_top"><code>popBackStackToGuidedStepFragment</code></A>(<code>Class,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.setButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#setButtonActions(java.util.List<android.support.v17.leanback.widget.GuidedAction>)" target="_top"><code>setButtonActions</code></A>(<code>List&lt;GuidedAction&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.setSelectedButtonActionPosition_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#setSelectedButtonActionPosition(int)" target="_top"><code>setSelectedButtonActionPosition</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_REPLACE"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#UI_STYLE_REPLACE" target="_top"><code>UI_STYLE_REPLACE</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepFragment.UI_STYLE_DEFAULT"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepFragment.html#UI_STYLE_DEFAULT" target="_top"><code>UI_STYLE_DEFAULT</code></font></A></nobr>  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+<b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.GuidedStepSupportFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.GuidedStepSupportFragment.html
new file mode 100644
index 0000000..b464afa
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.GuidedStepSupportFragment.html
@@ -0,0 +1,344 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.GuidedStepSupportFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html" target="_top"><font size="+2"><code>GuidedStepSupportFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.getContainerIdForBackground_removed()"></A>
+  <nobr><code>int</code>&nbsp;getContainerIdForBackground()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.onProvideBackgroundSupportFragment_removed()"></A>
+  <nobr><code>Fragment</code>&nbsp;onProvideBackgroundSupportFragment()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.collapseSubActions_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#collapseSubActions()" target="_top"><code>collapseSubActions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.expandSubActions_added(android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#expandSubActions(android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>expandSubActions</code></A>(<code>GuidedAction</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.findActionById_added(long)"></A>
+  <nobr><code>GuidedAction</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#findActionById(long)" target="_top"><code>findActionById</code></A>(<code>long</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.findActionPositionById_added(long)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#findActionPositionById(long)" target="_top"><code>findActionPositionById</code></A>(<code>long</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.findButtonActionById_added(long)"></A>
+  <nobr><code>GuidedAction</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#findButtonActionById(long)" target="_top"><code>findButtonActionById</code></A>(<code>long</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.findButtonActionPositionById_added(long)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#findButtonActionPositionById(long)" target="_top"><code>findButtonActionPositionById</code></A>(<code>long</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.finishGuidedStepSupportFragments_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#finishGuidedStepSupportFragments()" target="_top"><code>finishGuidedStepSupportFragments</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.getButtonActionItemView_added(int)"></A>
+  <nobr><code>View</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#getButtonActionItemView(int)" target="_top"><code>getButtonActionItemView</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.getButtonActions_added()"></A>
+  <nobr><code>List&lt;GuidedAction&gt;</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#getButtonActions()" target="_top"><code>getButtonActions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.getGuidedButtonActionsStylist_added()"></A>
+  <nobr><code>GuidedActionsStylist</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#getGuidedButtonActionsStylist()" target="_top"><code>getGuidedButtonActionsStylist</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.getSelectedButtonActionPosition_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#getSelectedButtonActionPosition()" target="_top"><code>getSelectedButtonActionPosition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.isFocusOutEndAllowed_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#isFocusOutEndAllowed()" target="_top"><code>isFocusOutEndAllowed</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.isFocusOutStartAllowed_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#isFocusOutStartAllowed()" target="_top"><code>isFocusOutStartAllowed</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.isSubActionsExpanded_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#isSubActionsExpanded()" target="_top"><code>isSubActionsExpanded</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.notifyActionChanged_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#notifyActionChanged(int)" target="_top"><code>notifyActionChanged</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.notifyButtonActionChanged_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#notifyButtonActionChanged(int)" target="_top"><code>notifyButtonActionChanged</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.onAddSharedElementTransition_added(android.support.v4.app.FragmentTransaction, android.support.v17.leanback.app.GuidedStepSupportFragment)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#onAddSharedElementTransition(android.support.v4.app.FragmentTransaction, android.support.v17.leanback.app.GuidedStepSupportFragment)" target="_top"><code>onAddSharedElementTransition</code></A>(<code>FragmentTransaction,</nobr> GuidedStepSupportFragment<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.onCreateBackgroundView_added(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)"></A>
+  <nobr><code>View</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#onCreateBackgroundView(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)" target="_top"><code>onCreateBackgroundView</code></A>(<code>LayoutInflater,</nobr> ViewGroup<nobr>,</nobr> Bundle<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.onCreateButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>, android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#onCreateButtonActions(java.util.List<android.support.v17.leanback.widget.GuidedAction>, android.os.Bundle)" target="_top"><code>onCreateButtonActions</code></A>(<code>List&lt;GuidedAction&gt;,</nobr> Bundle<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.onCreateButtonActionsStylist_added()"></A>
+  <nobr><code>GuidedActionsStylist</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#onCreateButtonActionsStylist()" target="_top"><code>onCreateButtonActionsStylist</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.onGuidedActionEditedAndProceed_added(android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>long</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#onGuidedActionEditedAndProceed(android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>onGuidedActionEditedAndProceed</code></A>(<code>GuidedAction</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.onSubGuidedActionClicked_added(android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#onSubGuidedActionClicked(android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>onSubGuidedActionClicked</code></A>(<code>GuidedAction</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.popBackStackToGuidedStepSupportFragment_added(java.lang.Class, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#popBackStackToGuidedStepSupportFragment(java.lang.Class, int)" target="_top"><code>popBackStackToGuidedStepSupportFragment</code></A>(<code>Class,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.setButtonActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#setButtonActions(java.util.List<android.support.v17.leanback.widget.GuidedAction>)" target="_top"><code>setButtonActions</code></A>(<code>List&lt;GuidedAction&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.setSelectedButtonActionPosition_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#setSelectedButtonActionPosition(int)" target="_top"><code>setSelectedButtonActionPosition</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.UI_STYLE_REPLACE"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#UI_STYLE_REPLACE" target="_top"><code>UI_STYLE_REPLACE</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.GuidedStepSupportFragment.UI_STYLE_DEFAULT"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/GuidedStepSupportFragment.html#UI_STYLE_DEFAULT" target="_top"><code>UI_STYLE_DEFAULT</code></font></A></nobr>  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+<b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener.html
new file mode 100644
index 0000000..0df02c4
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener.html
@@ -0,0 +1,126 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Interface android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/HeadersFragment.OnHeaderClickedListener.html" target="_top"><font size="+2"><code>HeadersFragment.OnHeaderClickedListener</code></font></A>
+</H2>
+<p>Change of visibility from  to public.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.HeadersFragment.OnHeaderClickedListener.onHeaderClicked_changed(android.support.v17.leanback.widget.RowHeaderPresenter.ViewHolder, android.support.v17.leanback.widget.Row)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/HeadersFragment.OnHeaderClickedListener.html#onHeaderClicked(android.support.v17.leanback.widget.RowHeaderPresenter.ViewHolder, android.support.v17.leanback.widget.Row)" target="_top"><code>onHeaderClicked</code></A>(<code>ViewHolder,</nobr> Row<nobr><nobr></code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in signature from <code>void</code> to (<code>ViewHolder, Row</code>).<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersFragment.OnHeaderViewSelectedListener.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersFragment.OnHeaderViewSelectedListener.html
new file mode 100644
index 0000000..cc2eeda
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersFragment.OnHeaderViewSelectedListener.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.HeadersFragment.OnHeaderViewSelectedListener
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Interface android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/HeadersFragment.OnHeaderViewSelectedListener.html" target="_top"><font size="+2"><code>HeadersFragment.OnHeaderViewSelectedListener</code></font></A>
+</H2>
+<p>Change of visibility from  to public.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener.html
new file mode 100644
index 0000000..0c59abd
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener.html
@@ -0,0 +1,126 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Interface android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/HeadersSupportFragment.OnHeaderClickedListener.html" target="_top"><font size="+2"><code>HeadersSupportFragment.OnHeaderClickedListener</code></font></A>
+</H2>
+<p>Change of visibility from  to public.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderClickedListener.onHeaderClicked_changed(android.support.v17.leanback.widget.RowHeaderPresenter.ViewHolder, android.support.v17.leanback.widget.Row)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/HeadersSupportFragment.OnHeaderClickedListener.html#onHeaderClicked(android.support.v17.leanback.widget.RowHeaderPresenter.ViewHolder, android.support.v17.leanback.widget.Row)" target="_top"><code>onHeaderClicked</code></A>(<code>ViewHolder,</nobr> Row<nobr><nobr></code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in signature from <code>void</code> to (<code>ViewHolder, Row</code>).<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderViewSelectedListener.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderViewSelectedListener.html
new file mode 100644
index 0000000..ee27726
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderViewSelectedListener.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.HeadersSupportFragment.OnHeaderViewSelectedListener
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Interface android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/HeadersSupportFragment.OnHeaderViewSelectedListener.html" target="_top"><font size="+2"><code>HeadersSupportFragment.OnHeaderViewSelectedListener</code></font></A>
+</H2>
+<p>Change of visibility from  to public.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.RowsFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.RowsFragment.html
new file mode 100644
index 0000000..612c05a
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.RowsFragment.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.RowsFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/RowsFragment.html" target="_top"><font size="+2"><code>RowsFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.RowsFragment.getRowViewHolder_added(int)"></A>
+  <nobr><code>ViewHolder</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/RowsFragment.html#getRowViewHolder(int)" target="_top"><code>getRowViewHolder</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.RowsFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/RowsFragment.html#setSelectedPosition(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" target="_top"><code>setSelectedPosition</code></A>(<code>int,</nobr> boolean<nobr>,</nobr> ViewHolderTask<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.RowsSupportFragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.RowsSupportFragment.html
new file mode 100644
index 0000000..7cbdf0c
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.app.RowsSupportFragment.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.app.RowsSupportFragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.app.<A HREF="../../../../reference/android/support/v17/leanback/app/RowsSupportFragment.html" target="_top"><font size="+2"><code>RowsSupportFragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.RowsSupportFragment.getRowViewHolder_added(int)"></A>
+  <nobr><code>ViewHolder</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/RowsSupportFragment.html#getRowViewHolder(int)" target="_top"><code>getRowViewHolder</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app.RowsSupportFragment.setSelectedPosition_added(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/app/RowsSupportFragment.html#setSelectedPosition(int, boolean, android.support.v17.leanback.widget.Presenter.ViewHolderTask)" target="_top"><code>setSelectedPosition</code></A>(<code>int,</nobr> boolean<nobr>,</nobr> ViewHolderTask<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html
new file mode 100644
index 0000000..674231e
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.html
@@ -0,0 +1,143 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/DetailsOverviewLogoPresenter.ViewHolder.html" target="_top"><font size="+2"><code>DetailsOverviewLogoPresenter.ViewHolder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.getParentPresenter_added()"></A>
+  <nobr><code>FullWidthDetailsOverviewRowPresenter</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/DetailsOverviewLogoPresenter.ViewHolder.html#getParentPresenter()" target="_top"><code>getParentPresenter</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.getParentViewHolder_added()"></A>
+  <nobr><code>ViewHolder</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/DetailsOverviewLogoPresenter.ViewHolder.html#getParentViewHolder()" target="_top"><code>getParentViewHolder</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.isSizeFromDrawableIntrinsic_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/DetailsOverviewLogoPresenter.ViewHolder.html#isSizeFromDrawableIntrinsic()" target="_top"><code>isSizeFromDrawableIntrinsic</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.ViewHolder.setSizeFromDrawableIntrinsic_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/DetailsOverviewLogoPresenter.ViewHolder.html#setSizeFromDrawableIntrinsic(boolean)" target="_top"><code>setSizeFromDrawableIntrinsic</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.html
new file mode 100644
index 0000000..74e170c
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.DetailsOverviewLogoPresenter
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/DetailsOverviewLogoPresenter.html" target="_top"><font size="+2"><code>DetailsOverviewLogoPresenter</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.DetailsOverviewLogoPresenter.onCreateView_added(android.view.ViewGroup)"></A>
+  <nobr><code>View</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/DetailsOverviewLogoPresenter.html#onCreateView(android.view.ViewGroup)" target="_top"><code>onCreateView</code></A>(<code>ViewGroup</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidanceStylist.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidanceStylist.html
new file mode 100644
index 0000000..0a20eb4
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidanceStylist.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.GuidanceStylist
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidanceStylist.html" target="_top"><font size="+2"><code>GuidanceStylist</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidanceStylist.onDestroyView_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidanceStylist.html#onDestroyView()" target="_top"><code>onDestroyView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedAction.Builder.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedAction.Builder.html
new file mode 100644
index 0000000..b77684b
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedAction.Builder.html
@@ -0,0 +1,295 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.GuidedAction.Builder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html" target="_top"><font size="+2"><code>GuidedAction.Builder</code></font></A>
+</H2>
+<p><font xsize="+1">The superclass changed from <code>java.lang.Object</code> to <code>android.support.v17.leanback.widget.GuidedAction.BuilderBase</code>.<br></font>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.ctor_added(android.content.Context)"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#GuidedAction.Builder(android.content.Context)" target="_top"><code>GuidedAction.Builder</code></A>(<code>Context</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.ctor_changed()"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#GuidedAction.Builder()" target="_top"><code>GuidedAction.Builder</code></A>()  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+<b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.description_removed(java.lang.String)"></A>
+  <nobr><code>Builder</code>&nbsp;description(<code>String</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.editTitle_removed(java.lang.String)"></A>
+  <nobr><code>Builder</code>&nbsp;editTitle(<code>String</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.icon_removed(android.graphics.drawable.Drawable)"></A>
+  <nobr><code>Builder</code>&nbsp;icon(<code>Drawable</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.title_removed(java.lang.String)"></A>
+  <nobr><code>Builder</code>&nbsp;title(<code>String</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.checkSetId_changed(int)"></A>
+  <nobr><code>B</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#checkSetId(int)" target="_top"><code>checkSetId</code></A>(<code>int</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in return type from <code>Builder</code> to <code>B</code>.<br>
+ Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase.html#checkSetId(int)" target="_top"><code>GuidedAction.BuilderBase</code></a>.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.checked_changed(boolean)"></A>
+  <nobr><code>B</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#checked(boolean)" target="_top"><code>checked</code></A>(<code>boolean</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in return type from <code>Builder</code> to <code>B</code>.<br>
+ Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase.html#checked(boolean)" target="_top"><code>GuidedAction.BuilderBase</code></a>.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.editable_changed(boolean)"></A>
+  <nobr><code>B</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#editable(boolean)" target="_top"><code>editable</code></A>(<code>boolean</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in return type from <code>Builder</code> to <code>B</code>.<br>
+ Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase.html#editable(boolean)" target="_top"><code>GuidedAction.BuilderBase</code></a>.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.enabled_changed(boolean)"></A>
+  <nobr><code>B</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#enabled(boolean)" target="_top"><code>enabled</code></A>(<code>boolean</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in return type from <code>Builder</code> to <code>B</code>.<br>
+ Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase.html#enabled(boolean)" target="_top"><code>GuidedAction.BuilderBase</code></a>.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.hasNext_changed(boolean)"></A>
+  <nobr><code>B</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#hasNext(boolean)" target="_top"><code>hasNext</code></A>(<code>boolean</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in return type from <code>Builder</code> to <code>B</code>.<br>
+ Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase.html#hasNext(boolean)" target="_top"><code>GuidedAction.BuilderBase</code></a>.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.iconResourceId_changed(int, android.content.Context)"></A>
+  <nobr><code>B</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#iconResourceId(int, android.content.Context)" target="_top"><code>iconResourceId</code></A>(<code>int,</nobr> Context<nobr><nobr></code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in return type from <code>Builder</code> to <code>B</code>.<br>
+ Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase.html#iconResourceId(int, android.content.Context)" target="_top"><code>GuidedAction.BuilderBase</code></a>. <b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.id_changed(long)"></A>
+  <nobr><code>B</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#id(long)" target="_top"><code>id</code></A>(<code>long</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in return type from <code>Builder</code> to <code>B</code>.<br>
+ Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase.html#id(long)" target="_top"><code>GuidedAction.BuilderBase</code></a>.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.infoOnly_changed(boolean)"></A>
+  <nobr><code>B</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#infoOnly(boolean)" target="_top"><code>infoOnly</code></A>(<code>boolean</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in return type from <code>Builder</code> to <code>B</code>.<br>
+ Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase.html#infoOnly(boolean)" target="_top"><code>GuidedAction.BuilderBase</code></a>.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.intent_changed(android.content.Intent)"></A>
+  <nobr><code>B</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#intent(android.content.Intent)" target="_top"><code>intent</code></A>(<code>Intent</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in return type from <code>Builder</code> to <code>B</code>.<br>
+ Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase.html#intent(android.content.Intent)" target="_top"><code>GuidedAction.BuilderBase</code></a>.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.Builder.multilineDescription_changed(boolean)"></A>
+  <nobr><code>B</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.Builder.html#multilineDescription(boolean)" target="_top"><code>multilineDescription</code></A>(<code>boolean</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change in return type from <code>Builder</code> to <code>B</code>.<br>
+ Method was locally defined, but is now inherited from <a href="../../../../reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase.html#multilineDescription(boolean)" target="_top"><code>GuidedAction.BuilderBase</code></a>.
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedAction.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedAction.html
new file mode 100644
index 0000000..20165c7
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedAction.html
@@ -0,0 +1,321 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.GuidedAction
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html" target="_top"><font size="+2"><code>GuidedAction</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.ctor_added()"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#GuidedAction()" target="_top"><code>GuidedAction</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.getDescriptionEditInputType_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#getDescriptionEditInputType()" target="_top"><code>getDescriptionEditInputType</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.getDescriptionInputType_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#getDescriptionInputType()" target="_top"><code>getDescriptionInputType</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.getEditDescription_added()"></A>
+  <nobr><code>CharSequence</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#getEditDescription()" target="_top"><code>getEditDescription</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.getEditInputType_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#getEditInputType()" target="_top"><code>getEditInputType</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.getInputType_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#getInputType()" target="_top"><code>getInputType</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.getSubActions_added()"></A>
+  <nobr><code>List&lt;GuidedAction&gt;</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#getSubActions()" target="_top"><code>getSubActions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.hasEditableActivatorView_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#hasEditableActivatorView()" target="_top"><code>hasEditableActivatorView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.hasSubActions_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#hasSubActions()" target="_top"><code>hasSubActions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.hasTextEditable_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#hasTextEditable()" target="_top"><code>hasTextEditable</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.isDescriptionEditable_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#isDescriptionEditable()" target="_top"><code>isDescriptionEditable</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.isFocusable_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#isFocusable()" target="_top"><code>isFocusable</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.setEditDescription_added(java.lang.CharSequence)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#setEditDescription(java.lang.CharSequence)" target="_top"><code>setEditDescription</code></A>(<code>CharSequence</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.setFocusable_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#setFocusable(boolean)" target="_top"><code>setFocusable</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.setIntent_added(android.content.Intent)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#setIntent(android.content.Intent)" target="_top"><code>setIntent</code></A>(<code>Intent</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.setSubActions_added(java.util.List<android.support.v17.leanback.widget.GuidedAction>)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#setSubActions(java.util.List<android.support.v17.leanback.widget.GuidedAction>)" target="_top"><code>setSubActions</code></A>(<code>List&lt;GuidedAction&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.NO_DRAWABLE"></A>
+  <code>int</code>&nbsp;NO_DRAWABLE
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.ACTION_ID_CANCEL"></A>
+  <nobr><code>long</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#ACTION_ID_CANCEL" target="_top"><code>ACTION_ID_CANCEL</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.ACTION_ID_CONTINUE"></A>
+  <nobr><code>long</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#ACTION_ID_CONTINUE" target="_top"><code>ACTION_ID_CONTINUE</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.ACTION_ID_CURRENT"></A>
+  <nobr><code>long</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#ACTION_ID_CURRENT" target="_top"><code>ACTION_ID_CURRENT</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.ACTION_ID_FINISH"></A>
+  <nobr><code>long</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#ACTION_ID_FINISH" target="_top"><code>ACTION_ID_FINISH</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.ACTION_ID_NEXT"></A>
+  <nobr><code>long</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#ACTION_ID_NEXT" target="_top"><code>ACTION_ID_NEXT</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.ACTION_ID_NO"></A>
+  <nobr><code>long</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#ACTION_ID_NO" target="_top"><code>ACTION_ID_NO</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.ACTION_ID_OK"></A>
+  <nobr><code>long</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#ACTION_ID_OK" target="_top"><code>ACTION_ID_OK</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.ACTION_ID_YES"></A>
+  <nobr><code>long</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#ACTION_ID_YES" target="_top"><code>ACTION_ID_YES</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedAction.CHECKBOX_CHECK_SET_ID"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedAction.html#CHECKBOX_CHECK_SET_ID" target="_top"><code>CHECKBOX_CHECK_SET_ID</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html
new file mode 100644
index 0000000..0849383
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.html
@@ -0,0 +1,209 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html" target="_top"><font size="+2"><code>GuidedActionsStylist.ViewHolder</code></font></A>
+</H2>
+<p><font xsize="+1">The superclass changed from <code>java.lang.Object</code> to <code>android.support.v7.widget.RecyclerView.ViewHolder</code>.<br></font>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.ctor_added(android.view.View, boolean)"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#GuidedActionsStylist.ViewHolder(android.view.View, boolean)" target="_top"><code>GuidedActionsStylist.<br>ViewHolder</code></A>(<code>View,</nobr> boolean<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getAction_added()"></A>
+  <nobr><code>GuidedAction</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#getAction()" target="_top"><code>getAction</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditableDescriptionView_added()"></A>
+  <nobr><code>EditText</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#getEditableDescriptionView()" target="_top"><code>getEditableDescriptionView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.getEditingView_added()"></A>
+  <nobr><code>View</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#getEditingView()" target="_top"><code>getEditingView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditing_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#isInEditing()" target="_top"><code>isInEditing</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingActivatorView_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#isInEditingActivatorView()" target="_top"><code>isInEditingActivatorView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingDescription_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#isInEditingDescription()" target="_top"><code>isInEditingDescription</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingText_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#isInEditingText()" target="_top"><code>isInEditingText</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isInEditingTitle_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#isInEditingTitle()" target="_top"><code>isInEditingTitle</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.isSubAction_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder.html#isSubAction()" target="_top"><code>isSubAction</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder.view"></A>
+  <code>View</code>&nbsp;view
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.html
new file mode 100644
index 0000000..a8dff6f
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.GuidedActionsStylist.html
@@ -0,0 +1,320 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.GuidedActionsStylist
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html" target="_top"><font size="+2"><code>GuidedActionsStylist</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.getExpandedAction_added()"></A>
+  <nobr><code>GuidedAction</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#getExpandedAction()" target="_top"><code>getExpandedAction</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.getItemViewType_added(android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#getItemViewType(android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>getItemViewType</code></A>(<code>GuidedAction</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.getSubActionsGridView_added()"></A>
+  <nobr><code>VerticalGridView</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#getSubActionsGridView()" target="_top"><code>getSubActionsGridView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.isButtonActions_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#isButtonActions()" target="_top"><code>isButtonActions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.isExpandTransitionSupported_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#isExpandTransitionSupported()" target="_top"><code>isExpandTransitionSupported</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.isInExpandTransition_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#isInExpandTransition()" target="_top"><code>isInExpandTransition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.isSubActionsExpanded_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#isSubActionsExpanded()" target="_top"><code>isSubActionsExpanded</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onAnimateItemPressedCancelled_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onAnimateItemPressedCancelled(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" target="_top"><code>onAnimateItemPressedCancelled</code></A>(<code>ViewHolder</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onBindActivatorView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onBindActivatorView(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>onBindActivatorView</code></A>(<code>ViewHolder,</nobr> GuidedAction<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onBindCheckMarkView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onBindCheckMarkView(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>onBindCheckMarkView</code></A>(<code>ViewHolder,</nobr> GuidedAction<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onBindChevronView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onBindChevronView(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>onBindChevronView</code></A>(<code>ViewHolder,</nobr> GuidedAction<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onCreateViewHolder_added(android.view.ViewGroup, int)"></A>
+  <nobr><code>ViewHolder</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onCreateViewHolder(android.view.ViewGroup, int)" target="_top"><code>onCreateViewHolder</code></A>(<code>ViewGroup,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onDestroyView_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onDestroyView()" target="_top"><code>onDestroyView</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onEditingModeChange_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction, boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onEditingModeChange(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction, boolean)" target="_top"><code>onEditingModeChange</code></A>(<code>ViewHolder,</nobr> GuidedAction<nobr>,</nobr> boolean<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onProvideItemLayoutId_added(int)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onProvideItemLayoutId(int)" target="_top"><code>onProvideItemLayoutId</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onUpdateActivatorView_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onUpdateActivatorView(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>onUpdateActivatorView</code></A>(<code>ViewHolder,</nobr> GuidedAction<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.onUpdateExpandedViewHolder_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#onUpdateExpandedViewHolder(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" target="_top"><code>onUpdateExpandedViewHolder</code></A>(<code>ViewHolder</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.setAsButtonActions_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#setAsButtonActions()" target="_top"><code>setAsButtonActions</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.setEditingMode_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction, boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#setEditingMode(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction, boolean)" target="_top"><code>setEditingMode</code></A>(<code>ViewHolder,</nobr> GuidedAction<nobr>,</nobr> boolean<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.setExpandedViewHolder_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#setExpandedViewHolder(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" target="_top"><code>setExpandedViewHolder</code></A>(<code>ViewHolder</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.setupImeOptions_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#setupImeOptions(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder, android.support.v17.leanback.widget.GuidedAction)" target="_top"><code>setupImeOptions</code></A>(<code>ViewHolder,</nobr> GuidedAction<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.startExpandedTransition_added(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#startExpandedTransition(android.support.v17.leanback.widget.GuidedActionsStylist.ViewHolder)" target="_top"><code>startExpandedTransition</code></A>(<code>ViewHolder</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.mActionsGridView"></A>
+  <code>VerticalGridView</code>&nbsp;mActionsGridView
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.mMainView"></A>
+  <code>View</code>&nbsp;mMainView
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.mSelectorView"></A>
+  <code>View</code>&nbsp;mSelectorView
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.VIEW_TYPE_DATE_PICKER"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#VIEW_TYPE_DATE_PICKER" target="_top"><code>VIEW_TYPE_DATE_PICKER</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.GuidedActionsStylist.VIEW_TYPE_DEFAULT"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/GuidedActionsStylist.html#VIEW_TYPE_DEFAULT" target="_top"><code>VIEW_TYPE_DEFAULT</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.ImageCardView.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.ImageCardView.html
new file mode 100644
index 0000000..f110a16
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.ImageCardView.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.ImageCardView
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/ImageCardView.html" target="_top"><font size="+2"><code>ImageCardView</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ImageCardView.ctor_changed(android.content.Context, int)"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/ImageCardView.html#ImageCardView(android.content.Context, int)" target="_top"><code>ImageCardView</code></A>(<code>Context,</nobr> int<nobr><nobr></code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+<b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.html
new file mode 100644
index 0000000..2207a6d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v17.leanback.widget.ListRowPresenter.ViewHolder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v17.leanback.widget.<A HREF="../../../../reference/android/support/v17/leanback/widget/ListRowPresenter.ViewHolder.html" target="_top"><font size="+2"><code>ListRowPresenter.ViewHolder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.getItemViewHolder_added(int)"></A>
+  <nobr><code>ViewHolder</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ListRowPresenter.ViewHolder.html#getItemViewHolder(int)" target="_top"><code>getItemViewHolder</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.ListRowPresenter.ViewHolder.getSelectedPosition_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v17/leanback/widget/ListRowPresenter.ViewHolder.html#getSelectedPosition()" target="_top"><code>getSelectedPosition</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat.html
new file mode 100644
index 0000000..2479a86
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.accessibilityservice.<A HREF="../../../../reference/android/support/v4/accessibilityservice/AccessibilityServiceInfoCompat.html" target="_top"><font size="+2"><code>AccessibilityServiceInfoCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.AppOpsManagerCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.AppOpsManagerCompat.html
new file mode 100644
index 0000000..15ddb44
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.AppOpsManagerCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.AppOpsManagerCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/AppOpsManagerCompat.html" target="_top"><font size="+2"><code>AppOpsManagerCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app.AppOpsManagerCompat.ctor_removed()"></A>
+  <nobr>AppOpsManagerCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.BundleCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.BundleCompat.html
new file mode 100644
index 0000000..63ecf79
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.BundleCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.BundleCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/BundleCompat.html" target="_top"><font size="+2"><code>BundleCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app.BundleCompat.ctor_removed()"></A>
+  <nobr>BundleCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.Fragment.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.Fragment.html
new file mode 100644
index 0000000..d6c9e88
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.Fragment.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.Fragment
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/Fragment.html" target="_top"><font size="+2"><code>Fragment</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app.Fragment.startActivity_added(android.content.Intent, android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/app/Fragment.html#startActivity(android.content.Intent, android.os.Bundle)" target="_top"><code>startActivity</code></A>(<code>Intent,</nobr> Bundle<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app.Fragment.startActivityForResult_added(android.content.Intent, int, android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/app/Fragment.html#startActivityForResult(android.content.Intent, int, android.os.Bundle)" target="_top"><code>startActivityForResult</code></A>(<code>Intent,</nobr> int<nobr>,</nobr> Bundle<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.FragmentActivity.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.FragmentActivity.html
new file mode 100644
index 0000000..72bd4de
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.FragmentActivity.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.FragmentActivity
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/FragmentActivity.html" target="_top"><font size="+2"><code>FragmentActivity</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app.FragmentActivity.startActivityFromFragment_added(android.support.v4.app.Fragment, android.content.Intent, int, android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/app/FragmentActivity.html#startActivityFromFragment(android.support.v4.app.Fragment, android.content.Intent, int, android.os.Bundle)" target="_top"><code>startActivityFromFragment</code></A>(<code>Fragment,</nobr> Intent<nobr>,</nobr> int<nobr>,</nobr> Bundle<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.FragmentHostCallback.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.FragmentHostCallback.html
new file mode 100644
index 0000000..fcb311f
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.FragmentHostCallback.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.FragmentHostCallback
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/FragmentHostCallback.html" target="_top"><font size="+2"><code>FragmentHostCallback</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app.FragmentHostCallback.onStartActivityFromFragment_added(android.support.v4.app.Fragment, android.content.Intent, int, android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/app/FragmentHostCallback.html#onStartActivityFromFragment(android.support.v4.app.Fragment, android.content.Intent, int, android.os.Bundle)" target="_top"><code>onStartActivityFromFragment</code></A>(<code>Fragment,</nobr> Intent<nobr>,</nobr> int<nobr>,</nobr> Bundle<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.NavUtils.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.NavUtils.html
new file mode 100644
index 0000000..e4fb7fa
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.NavUtils.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.NavUtils
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/NavUtils.html" target="_top"><font size="+2"><code>NavUtils</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.NotificationManagerCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.NotificationManagerCompat.html
new file mode 100644
index 0000000..be48aac
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.NotificationManagerCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.NotificationManagerCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/NotificationManagerCompat.html" target="_top"><font size="+2"><code>NotificationManagerCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.RemoteInput.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.RemoteInput.html
new file mode 100644
index 0000000..a6a2a2d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.RemoteInput.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.RemoteInput
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/RemoteInput.html" target="_top"><font size="+2"><code>RemoteInput</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.ServiceCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.ServiceCompat.html
new file mode 100644
index 0000000..c038e52
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.ServiceCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.ServiceCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/ServiceCompat.html" target="_top"><font size="+2"><code>ServiceCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.ShareCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.ShareCompat.html
new file mode 100644
index 0000000..8e9c945
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.ShareCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.ShareCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/ShareCompat.html" target="_top"><font size="+2"><code>ShareCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app.ShareCompat.ctor_removed()"></A>
+  <nobr>ShareCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.TaskStackBuilder.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.TaskStackBuilder.html
new file mode 100644
index 0000000..8a8a3c7
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.app.TaskStackBuilder.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.app.TaskStackBuilder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.app.<A HREF="../../../../reference/android/support/v4/app/TaskStackBuilder.html" target="_top"><font size="+2"><code>TaskStackBuilder</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.ContentResolverCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.ContentResolverCompat.html
new file mode 100644
index 0000000..6abd31a
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.ContentResolverCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.ContentResolverCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.content.<A HREF="../../../../reference/android/support/v4/content/ContentResolverCompat.html" target="_top"><font size="+2"><code>ContentResolverCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.ContextCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.ContextCompat.html
new file mode 100644
index 0000000..c0abad2
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.ContextCompat.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.ContextCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.content.<A HREF="../../../../reference/android/support/v4/content/ContextCompat.html" target="_top"><font size="+2"><code>ContextCompat</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.ContextCompat.getCodeCacheDir_changed(android.content.Context)"></A>
+  <nobr><code>File</code>&nbsp;<A HREF="../../../../reference/android/support/v4/content/ContextCompat.html#getCodeCacheDir(android.content.Context)" target="_top"><code>getCodeCacheDir</code></A>(<code>Context</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change from non-static to static.<br> Change from final to non-final.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.IntentCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.IntentCompat.html
new file mode 100644
index 0000000..707b2de
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.IntentCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.IntentCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.content.<A HREF="../../../../reference/android/support/v4/content/IntentCompat.html" target="_top"><font size="+2"><code>IntentCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.LocalBroadcastManager.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.LocalBroadcastManager.html
new file mode 100644
index 0000000..fb0f8eb
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.LocalBroadcastManager.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.LocalBroadcastManager
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.content.<A HREF="../../../../reference/android/support/v4/content/LocalBroadcastManager.html" target="_top"><font size="+2"><code>LocalBroadcastManager</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.ParallelExecutorCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.ParallelExecutorCompat.html
new file mode 100644
index 0000000..135c65a
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.ParallelExecutorCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.ParallelExecutorCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.content.<A HREF="../../../../reference/android/support/v4/content/ParallelExecutorCompat.html" target="_top"><font size="+2"><code>ParallelExecutorCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.ParallelExecutorCompat.ctor_removed()"></A>
+  <nobr>ParallelExecutorCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.SharedPreferencesCompat.EditorCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.SharedPreferencesCompat.EditorCompat.html
new file mode 100644
index 0000000..2a46cc87
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.SharedPreferencesCompat.EditorCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.SharedPreferencesCompat.EditorCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.content.<A HREF="../../../../reference/android/support/v4/content/SharedPreferencesCompat.EditorCompat.html" target="_top"><font size="+2"><code>SharedPreferencesCompat.EditorCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.SharedPreferencesCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.SharedPreferencesCompat.html
new file mode 100644
index 0000000..99e7e84
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.SharedPreferencesCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.SharedPreferencesCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.content.<A HREF="../../../../reference/android/support/v4/content/SharedPreferencesCompat.html" target="_top"><font size="+2"><code>SharedPreferencesCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.SharedPreferencesCompat.ctor_removed()"></A>
+  <nobr>SharedPreferencesCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.pm.ActivityInfoCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.pm.ActivityInfoCompat.html
new file mode 100644
index 0000000..201f6e2
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.pm.ActivityInfoCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.pm.ActivityInfoCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.content.pm.<A HREF="../../../../reference/android/support/v4/content/pm/ActivityInfoCompat.html" target="_top"><font size="+2"><code>ActivityInfoCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.res.ResourcesCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.res.ResourcesCompat.html
new file mode 100644
index 0000000..497d73b
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.content.res.ResourcesCompat.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.content.res.ResourcesCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.content.res.<A HREF="../../../../reference/android/support/v4/content/res/ResourcesCompat.html" target="_top"><font size="+2"><code>ResourcesCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.res.ResourcesCompat.ctor_removed()"></A>
+  <nobr>ResourcesCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.res.ResourcesCompat.getColor_changed(android.content.res.Resources, int, android.content.res.Resources.Theme)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/content/res/ResourcesCompat.html#getColor(android.content.res.Resources, int, android.content.res.Resources.Theme)" target="_top"><code>getColor</code></A>(<code>Resources,</nobr> int<nobr>,</nobr> Theme<nobr><nobr></code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change from non-static to static.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.res.ResourcesCompat.getColorStateList_changed(android.content.res.Resources, int, android.content.res.Resources.Theme)"></A>
+  <nobr><code>ColorStateList</code>&nbsp;<A HREF="../../../../reference/android/support/v4/content/res/ResourcesCompat.html#getColorStateList(android.content.res.Resources, int, android.content.res.Resources.Theme)" target="_top"><code>getColorStateList</code></A>(<code>Resources,</nobr> int<nobr>,</nobr> Theme<nobr><nobr></code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+Change from non-static to static.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.database.DatabaseUtilsCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.database.DatabaseUtilsCompat.html
new file mode 100644
index 0000000..0feb04b
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.database.DatabaseUtilsCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.database.DatabaseUtilsCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.database.<A HREF="../../../../reference/android/support/v4/database/DatabaseUtilsCompat.html" target="_top"><font size="+2"><code>DatabaseUtilsCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.BitmapCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.BitmapCompat.html
new file mode 100644
index 0000000..3b50f8e
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.BitmapCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.graphics.BitmapCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.graphics.<A HREF="../../../../reference/android/support/v4/graphics/BitmapCompat.html" target="_top"><font size="+2"><code>BitmapCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.BitmapCompat.ctor_removed()"></A>
+  <nobr>BitmapCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.ColorUtils.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.ColorUtils.html
new file mode 100644
index 0000000..68c2dce
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.ColorUtils.html
@@ -0,0 +1,200 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.graphics.ColorUtils
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.graphics.<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html" target="_top"><font size="+2"><code>ColorUtils</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.LABToColor_added(double, double, double)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#LABToColor(double, double, double)" target="_top"><code>LABToColor</code></A>(<code>double,</nobr> double<nobr>,</nobr> double<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.LABToXYZ_added(double, double, double, double[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#LABToXYZ(double, double, double, double[])" target="_top"><code>LABToXYZ</code></A>(<code>double,</nobr> double<nobr>,</nobr> double<nobr>,</nobr> double[]<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.RGBToLAB_added(int, int, int, double[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#RGBToLAB(int, int, int, double[])" target="_top"><code>RGBToLAB</code></A>(<code>int,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> double[]<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.RGBToXYZ_added(int, int, int, double[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#RGBToXYZ(int, int, int, double[])" target="_top"><code>RGBToXYZ</code></A>(<code>int,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> double[]<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.XYZToColor_added(double, double, double)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#XYZToColor(double, double, double)" target="_top"><code>XYZToColor</code></A>(<code>double,</nobr> double<nobr>,</nobr> double<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.XYZToLAB_added(double, double, double, double[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#XYZToLAB(double, double, double, double[])" target="_top"><code>XYZToLAB</code></A>(<code>double,</nobr> double<nobr>,</nobr> double<nobr>,</nobr> double[]<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.blendARGB_added(int, int, float)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#blendARGB(int, int, float)" target="_top"><code>blendARGB</code></A>(<code>int,</nobr> int<nobr>,</nobr> float<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.blendHSL_added(float[], float[], float, float[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#blendHSL(float[], float[], float, float[])" target="_top"><code>blendHSL</code></A>(<code>float[],</nobr> float[]<nobr>,</nobr> float<nobr>,</nobr> float[]<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.blendLAB_added(double[], double[], double, double[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#blendLAB(double[], double[], double, double[])" target="_top"><code>blendLAB</code></A>(<code>double[],</nobr> double[]<nobr>,</nobr> double<nobr>,</nobr> double[]<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.colorToLAB_added(int, double[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#colorToLAB(int, double[])" target="_top"><code>colorToLAB</code></A>(<code>int,</nobr> double[]<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.colorToXYZ_added(int, double[])"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#colorToXYZ(int, double[])" target="_top"><code>colorToXYZ</code></A>(<code>int,</nobr> double[]<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.ColorUtils.distanceEuclidean_added(double[], double[])"></A>
+  <nobr><code>double</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/ColorUtils.html#distanceEuclidean(double[], double[])" target="_top"><code>distanceEuclidean</code></A>(<code>double[],</nobr> double[]<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.drawable.DrawableCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.drawable.DrawableCompat.html
new file mode 100644
index 0000000..735909e
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.drawable.DrawableCompat.html
@@ -0,0 +1,166 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.graphics.drawable.DrawableCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.graphics.drawable.<A HREF="../../../../reference/android/support/v4/graphics/drawable/DrawableCompat.html" target="_top"><font size="+2"><code>DrawableCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.drawable.DrawableCompat.ctor_removed()"></A>
+  <nobr>DrawableCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.drawable.DrawableCompat.applyTheme_added(android.graphics.drawable.Drawable, android.content.res.Resources.Theme)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/drawable/DrawableCompat.html#applyTheme(android.graphics.drawable.Drawable, android.content.res.Resources.Theme)" target="_top"><code>applyTheme</code></A>(<code>Drawable,</nobr> Theme<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.drawable.DrawableCompat.canApplyTheme_added(android.graphics.drawable.Drawable)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/drawable/DrawableCompat.html#canApplyTheme(android.graphics.drawable.Drawable)" target="_top"><code>canApplyTheme</code></A>(<code>Drawable</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.drawable.DrawableCompat.getAlpha_added(android.graphics.drawable.Drawable)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/drawable/DrawableCompat.html#getAlpha(android.graphics.drawable.Drawable)" target="_top"><code>getAlpha</code></A>(<code>Drawable</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.drawable.DrawableCompat.getColorFilter_added(android.graphics.drawable.Drawable)"></A>
+  <nobr><code>ColorFilter</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/drawable/DrawableCompat.html#getColorFilter(android.graphics.drawable.Drawable)" target="_top"><code>getColorFilter</code></A>(<code>Drawable</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.drawable.DrawableCompat.inflate_added(android.graphics.drawable.Drawable, android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet, android.content.res.Resources.Theme)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/graphics/drawable/DrawableCompat.html#inflate(android.graphics.drawable.Drawable, android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet, android.content.res.Resources.Theme)" target="_top"><code>inflate</code></A>(<code>Drawable,</nobr> Resources<nobr>,</nobr> XmlPullParser<nobr>,</nobr> AttributeSet<nobr>,</nobr> Theme<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory.html
new file mode 100644
index 0000000..f0e4cbf
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.graphics.drawable.<A HREF="../../../../reference/android/support/v4/graphics/drawable/RoundedBitmapDrawableFactory.html" target="_top"><font size="+2"><code>RoundedBitmapDrawableFactory</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory.ctor_removed()"></A>
+  <nobr>RoundedBitmapDrawableFactory()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.hardware.fingerprint.FingerprintManagerCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.hardware.fingerprint.FingerprintManagerCompat.html
new file mode 100644
index 0000000..3c5e74d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.hardware.fingerprint.FingerprintManagerCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.hardware.fingerprint.FingerprintManagerCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.hardware.fingerprint.<A HREF="../../../../reference/android/support/v4/hardware/fingerprint/FingerprintManagerCompat.html" target="_top"><font size="+2"><code>FingerprintManagerCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.net.ConnectivityManagerCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.net.ConnectivityManagerCompat.html
new file mode 100644
index 0000000..585fbe1
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.net.ConnectivityManagerCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.net.ConnectivityManagerCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.net.<A HREF="../../../../reference/android/support/v4/net/ConnectivityManagerCompat.html" target="_top"><font size="+2"><code>ConnectivityManagerCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.net.ConnectivityManagerCompat.ctor_removed()"></A>
+  <nobr>ConnectivityManagerCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.net.TrafficStatsCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.net.TrafficStatsCompat.html
new file mode 100644
index 0000000..d8d8d74
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.net.TrafficStatsCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.net.TrafficStatsCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.net.<A HREF="../../../../reference/android/support/v4/net/TrafficStatsCompat.html" target="_top"><font size="+2"><code>TrafficStatsCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.net.TrafficStatsCompat.ctor_removed()"></A>
+  <nobr>TrafficStatsCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.AsyncTaskCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.AsyncTaskCompat.html
new file mode 100644
index 0000000..0ea4b47
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.AsyncTaskCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.os.AsyncTaskCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.os.<A HREF="../../../../reference/android/support/v4/os/AsyncTaskCompat.html" target="_top"><font size="+2"><code>AsyncTaskCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.os.AsyncTaskCompat.ctor_removed()"></A>
+  <nobr>AsyncTaskCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.EnvironmentCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.EnvironmentCompat.html
new file mode 100644
index 0000000..4d625b1
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.EnvironmentCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.os.EnvironmentCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.os.<A HREF="../../../../reference/android/support/v4/os/EnvironmentCompat.html" target="_top"><font size="+2"><code>EnvironmentCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.os.EnvironmentCompat.ctor_removed()"></A>
+  <nobr>EnvironmentCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.ParcelableCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.ParcelableCompat.html
new file mode 100644
index 0000000..0192ed6
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.ParcelableCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.os.ParcelableCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.os.<A HREF="../../../../reference/android/support/v4/os/ParcelableCompat.html" target="_top"><font size="+2"><code>ParcelableCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.os.ParcelableCompat.ctor_removed()"></A>
+  <nobr>ParcelableCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.TraceCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.TraceCompat.html
new file mode 100644
index 0000000..3f490ba
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.os.TraceCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.os.TraceCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.os.<A HREF="../../../../reference/android/support/v4/os/TraceCompat.html" target="_top"><font size="+2"><code>TraceCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.os.TraceCompat.ctor_removed()"></A>
+  <nobr>TraceCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.text.ICUCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.text.ICUCompat.html
new file mode 100644
index 0000000..2b97440
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.text.ICUCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.text.ICUCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.text.<A HREF="../../../../reference/android/support/v4/text/ICUCompat.html" target="_top"><font size="+2"><code>ICUCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.text.ICUCompat.ctor_removed()"></A>
+  <nobr>ICUCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.text.TextDirectionHeuristicsCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.text.TextDirectionHeuristicsCompat.html
new file mode 100644
index 0000000..45557e1
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.text.TextDirectionHeuristicsCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.text.TextDirectionHeuristicsCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.text.<A HREF="../../../../reference/android/support/v4/text/TextDirectionHeuristicsCompat.html" target="_top"><font size="+2"><code>TextDirectionHeuristicsCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.text.TextDirectionHeuristicsCompat.ctor_removed()"></A>
+  <nobr>TextDirectionHeuristicsCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.text.TextUtilsCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.text.TextUtilsCompat.html
new file mode 100644
index 0000000..16d0835
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.text.TextUtilsCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.text.TextUtilsCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.text.<A HREF="../../../../reference/android/support/v4/text/TextUtilsCompat.html" target="_top"><font size="+2"><code>TextUtilsCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.text.TextUtilsCompat.ctor_removed()"></A>
+  <nobr>TextUtilsCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.GestureDetectorCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.GestureDetectorCompat.html
new file mode 100644
index 0000000..5c0463d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.GestureDetectorCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.GestureDetectorCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/GestureDetectorCompat.html" target="_top"><font size="+2"><code>GestureDetectorCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.GravityCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.GravityCompat.html
new file mode 100644
index 0000000..9ee14c5
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.GravityCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.GravityCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/GravityCompat.html" target="_top"><font size="+2"><code>GravityCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.GravityCompat.ctor_removed()"></A>
+  <nobr>GravityCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.InputDeviceCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.InputDeviceCompat.html
new file mode 100644
index 0000000..4a7f385
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.InputDeviceCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.InputDeviceCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/InputDeviceCompat.html" target="_top"><font size="+2"><code>InputDeviceCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.InputDeviceCompat.ctor_removed()"></A>
+  <nobr>InputDeviceCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.KeyEventCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.KeyEventCompat.html
new file mode 100644
index 0000000..49526ab
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.KeyEventCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.KeyEventCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/KeyEventCompat.html" target="_top"><font size="+2"><code>KeyEventCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.KeyEventCompat.ctor_removed()"></A>
+  <nobr>KeyEventCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.LayoutInflaterCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.LayoutInflaterCompat.html
new file mode 100644
index 0000000..7329ff7
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.LayoutInflaterCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.LayoutInflaterCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/LayoutInflaterCompat.html" target="_top"><font size="+2"><code>LayoutInflaterCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.LayoutInflaterCompat.getFactory_added(android.view.LayoutInflater)"></A>
+  <nobr><code>LayoutInflaterFactory</code>&nbsp;<A HREF="../../../../reference/android/support/v4/view/LayoutInflaterCompat.html#getFactory(android.view.LayoutInflater)" target="_top"><code>getFactory</code></A>(<code>LayoutInflater</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MarginLayoutParamsCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MarginLayoutParamsCompat.html
new file mode 100644
index 0000000..86a7b57
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MarginLayoutParamsCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.MarginLayoutParamsCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/MarginLayoutParamsCompat.html" target="_top"><font size="+2"><code>MarginLayoutParamsCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.MarginLayoutParamsCompat.ctor_removed()"></A>
+  <nobr>MarginLayoutParamsCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MenuCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MenuCompat.html
new file mode 100644
index 0000000..22ead5ec
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MenuCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.MenuCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/MenuCompat.html" target="_top"><font size="+2"><code>MenuCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.MenuCompat.ctor_removed()"></A>
+  <nobr>MenuCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MenuItemCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MenuItemCompat.html
new file mode 100644
index 0000000..a321ac3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MenuItemCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.MenuItemCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/MenuItemCompat.html" target="_top"><font size="+2"><code>MenuItemCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.MenuItemCompat.ctor_removed()"></A>
+  <nobr>MenuItemCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MotionEventCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MotionEventCompat.html
new file mode 100644
index 0000000..cb8895d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.MotionEventCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.MotionEventCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/MotionEventCompat.html" target="_top"><font size="+2"><code>MotionEventCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.MotionEventCompat.ctor_removed()"></A>
+  <nobr>MotionEventCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ScaleGestureDetectorCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ScaleGestureDetectorCompat.html
new file mode 100644
index 0000000..23f8718
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ScaleGestureDetectorCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.ScaleGestureDetectorCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/ScaleGestureDetectorCompat.html" target="_top"><font size="+2"><code>ScaleGestureDetectorCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.VelocityTrackerCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.VelocityTrackerCompat.html
new file mode 100644
index 0000000..31a2b66
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.VelocityTrackerCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.VelocityTrackerCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/VelocityTrackerCompat.html" target="_top"><font size="+2"><code>VelocityTrackerCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.VelocityTrackerCompat.ctor_removed()"></A>
+  <nobr>VelocityTrackerCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewCompat.html
new file mode 100644
index 0000000..bbfebc1
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.ViewCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/ViewCompat.html" target="_top"><font size="+2"><code>ViewCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewCompat.ctor_removed()"></A>
+  <nobr>ViewCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewConfigurationCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewConfigurationCompat.html
new file mode 100644
index 0000000..3deb282
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewConfigurationCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.ViewConfigurationCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/ViewConfigurationCompat.html" target="_top"><font size="+2"><code>ViewConfigurationCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.ViewConfigurationCompat.ctor_removed()"></A>
+  <nobr>ViewConfigurationCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewGroupCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewGroupCompat.html
new file mode 100644
index 0000000..973f25d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewGroupCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.ViewGroupCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/ViewGroupCompat.html" target="_top"><font size="+2"><code>ViewGroupCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewParentCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewParentCompat.html
new file mode 100644
index 0000000..0ff6977
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewParentCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.ViewParentCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/ViewParentCompat.html" target="_top"><font size="+2"><code>ViewParentCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewPropertyAnimatorCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewPropertyAnimatorCompat.html
new file mode 100644
index 0000000..dcb75fc
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.ViewPropertyAnimatorCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.ViewPropertyAnimatorCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/ViewPropertyAnimatorCompat.html" target="_top"><font size="+2"><code>ViewPropertyAnimatorCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.WindowCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.WindowCompat.html
new file mode 100644
index 0000000..a9711fa
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.WindowCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.WindowCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.<A HREF="../../../../reference/android/support/v4/view/WindowCompat.html" target="_top"><font size="+2"><code>WindowCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.WindowCompat.ctor_removed()"></A>
+  <nobr>WindowCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.accessibility.AccessibilityEventCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.accessibility.AccessibilityEventCompat.html
new file mode 100644
index 0000000..e2045d7
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.accessibility.AccessibilityEventCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.accessibility.AccessibilityEventCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.accessibility.<A HREF="../../../../reference/android/support/v4/view/accessibility/AccessibilityEventCompat.html" target="_top"><font size="+2"><code>AccessibilityEventCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.accessibility.AccessibilityManagerCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.accessibility.AccessibilityManagerCompat.html
new file mode 100644
index 0000000..d74f936
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.accessibility.AccessibilityManagerCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.accessibility.AccessibilityManagerCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.accessibility.<A HREF="../../../../reference/android/support/v4/view/accessibility/AccessibilityManagerCompat.html" target="_top"><font size="+2"><code>AccessibilityManagerCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Constructors" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Constructors</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.accessibility.AccessibilityManagerCompat.ctor_removed()"></A>
+  <nobr>AccessibilityManagerCompat()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.animation.PathInterpolatorCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.animation.PathInterpolatorCompat.html
new file mode 100644
index 0000000..6701f77
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.view.animation.PathInterpolatorCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.view.animation.PathInterpolatorCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.view.animation.<A HREF="../../../../reference/android/support/v4/view/animation/PathInterpolatorCompat.html" target="_top"><font size="+2"><code>PathInterpolatorCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.DrawerLayout.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.DrawerLayout.html
new file mode 100644
index 0000000..c2e7c83
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.DrawerLayout.html
@@ -0,0 +1,162 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.DrawerLayout
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/DrawerLayout.html" target="_top"><font size="+2"><code>DrawerLayout</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget.DrawerLayout.addDrawerListener_added(android.support.v4.widget.DrawerLayout.DrawerListener)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/widget/DrawerLayout.html#addDrawerListener(android.support.v4.widget.DrawerLayout.DrawerListener)" target="_top"><code>addDrawerListener</code></A>(<code>DrawerListener</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget.DrawerLayout.removeDrawerListener_added(android.support.v4.widget.DrawerLayout.DrawerListener)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/widget/DrawerLayout.html#removeDrawerListener(android.support.v4.widget.DrawerLayout.DrawerListener)" target="_top"><code>removeDrawerListener</code></A>(<code>DrawerListener</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget.DrawerLayout.setDrawerListener_changed(android.support.v4.widget.DrawerLayout.DrawerListener)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/widget/DrawerLayout.html#setDrawerListener(android.support.v4.widget.DrawerLayout.DrawerListener)" target="_top"><code>setDrawerListener</code></A>(<code>DrawerListener</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+<b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget.DrawerLayout.LOCK_MODE_UNDEFINED"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v4/widget/DrawerLayout.html#LOCK_MODE_UNDEFINED" target="_top"><code>LOCK_MODE_UNDEFINED</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.EdgeEffectCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.EdgeEffectCompat.html
new file mode 100644
index 0000000..6993bec
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.EdgeEffectCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.EdgeEffectCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/EdgeEffectCompat.html" target="_top"><font size="+2"><code>EdgeEffectCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.ListPopupWindowCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.ListPopupWindowCompat.html
new file mode 100644
index 0000000..fc5ed8d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.ListPopupWindowCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.ListPopupWindowCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/ListPopupWindowCompat.html" target="_top"><font size="+2"><code>ListPopupWindowCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.PopupMenuCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.PopupMenuCompat.html
new file mode 100644
index 0000000..1d55628
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.PopupMenuCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.PopupMenuCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/PopupMenuCompat.html" target="_top"><font size="+2"><code>PopupMenuCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.PopupWindowCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.PopupWindowCompat.html
new file mode 100644
index 0000000..215118c
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.PopupWindowCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.PopupWindowCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/PopupWindowCompat.html" target="_top"><font size="+2"><code>PopupWindowCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.ScrollerCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.ScrollerCompat.html
new file mode 100644
index 0000000..ea76c92
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.ScrollerCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.ScrollerCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/ScrollerCompat.html" target="_top"><font size="+2"><code>ScrollerCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.SearchViewCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.SearchViewCompat.html
new file mode 100644
index 0000000..ce5abd3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.SearchViewCompat.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.SearchViewCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/SearchViewCompat.html" target="_top"><font size="+2"><code>SearchViewCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.TextViewCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.TextViewCompat.html
new file mode 100644
index 0000000..e2078f4
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v4.widget.TextViewCompat.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v4.widget.TextViewCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v4.widget.<A HREF="../../../../reference/android/support/v4/widget/TextViewCompat.html" target="_top"><font size="+2"><code>TextViewCompat</code></font></A>
+</H2>
+<p>Change from non-final to final.<br>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget.TextViewCompat.setTextAppearance_added(android.widget.TextView, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v4/widget/TextViewCompat.html#setTextAppearance(android.widget.TextView, int)" target="_top"><code>setTextAppearance</code></A>(<code>TextView,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.app.AppCompatDelegate.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.app.AppCompatDelegate.html
new file mode 100644
index 0000000..6fd286c
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.app.AppCompatDelegate.html
@@ -0,0 +1,186 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.app.AppCompatDelegate
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.app.<A HREF="../../../../reference/android/support/v7/app/AppCompatDelegate.html" target="_top"><font size="+2"><code>AppCompatDelegate</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.app.AppCompatDelegate.applyDayNight_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v7/app/AppCompatDelegate.html#applyDayNight()" target="_top"><code>applyDayNight</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.app.AppCompatDelegate.getDefaultNightMode_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/app/AppCompatDelegate.html#getDefaultNightMode()" target="_top"><code>getDefaultNightMode</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.app.AppCompatDelegate.onSaveInstanceState_added(android.os.Bundle)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/app/AppCompatDelegate.html#onSaveInstanceState(android.os.Bundle)" target="_top"><code>onSaveInstanceState</code></A>(<code>Bundle</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.app.AppCompatDelegate.setDefaultNightMode_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/app/AppCompatDelegate.html#setDefaultNightMode(int)" target="_top"><code>setDefaultNightMode</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.app.AppCompatDelegate.setLocalNightMode_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/app/AppCompatDelegate.html#setLocalNightMode(int)" target="_top"><code>setLocalNightMode</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.app.AppCompatDelegate.MODE_NIGHT_AUTO"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/app/AppCompatDelegate.html#MODE_NIGHT_AUTO" target="_top"><code>MODE_NIGHT_AUTO</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.app.AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/app/AppCompatDelegate.html#MODE_NIGHT_FOLLOW_SYSTEM" target="_top"><code>MODE_NIGHT_FOLLOW_SYSTEM</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.app.AppCompatDelegate.MODE_NIGHT_NO"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/app/AppCompatDelegate.html#MODE_NIGHT_NO" target="_top"><code>MODE_NIGHT_NO</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.app.AppCompatDelegate.MODE_NIGHT_YES"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/app/AppCompatDelegate.html#MODE_NIGHT_YES" target="_top"><code>MODE_NIGHT_YES</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.attr.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.attr.html
new file mode 100644
index 0000000..c399a8a
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.attr.html
@@ -0,0 +1,136 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.attr
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.attr.html" target="_top"><font size="+2"><code>R.attr</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.attr.ratingBarStyleIndicator"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.attr.html#ratingBarStyleIndicator" target="_top"><code>ratingBarStyleIndicator</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.attr.ratingBarStyleSmall"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.attr.html#ratingBarStyleSmall" target="_top"><code>ratingBarStyleSmall</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.attr.srcCompat"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.attr.html#srcCompat" target="_top"><code>srcCompat</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.drawable.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.drawable.html
new file mode 100644
index 0000000..ec1ee38
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.drawable.html
@@ -0,0 +1,361 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.drawable
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html" target="_top"><font size="+2"><code>R.drawable</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_btn_check_to_on_mtrl_000"></A>
+  <code>int</code>&nbsp;abc_btn_check_to_on_mtrl_000
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_btn_check_to_on_mtrl_015"></A>
+  <code>int</code>&nbsp;abc_btn_check_to_on_mtrl_015
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_btn_radio_to_on_mtrl_000"></A>
+  <code>int</code>&nbsp;abc_btn_radio_to_on_mtrl_000
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_btn_radio_to_on_mtrl_015"></A>
+  <code>int</code>&nbsp;abc_btn_radio_to_on_mtrl_015
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_ab_back_mtrl_am_alpha"></A>
+  <code>int</code>&nbsp;abc_ic_ab_back_mtrl_am_alpha
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_clear_mtrl_alpha"></A>
+  <code>int</code>&nbsp;abc_ic_clear_mtrl_alpha
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_go_search_api_mtrl_alpha"></A>
+  <code>int</code>&nbsp;abc_ic_go_search_api_mtrl_alpha
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_copy_mtrl_am_alpha"></A>
+  <code>int</code>&nbsp;abc_ic_menu_copy_mtrl_am_alpha
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_cut_mtrl_alpha"></A>
+  <code>int</code>&nbsp;abc_ic_menu_cut_mtrl_alpha
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_moreoverflow_mtrl_alpha"></A>
+  <code>int</code>&nbsp;abc_ic_menu_moreoverflow_mtrl_alpha
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_paste_mtrl_am_alpha"></A>
+  <code>int</code>&nbsp;abc_ic_menu_paste_mtrl_am_alpha
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_selectall_mtrl_alpha"></A>
+  <code>int</code>&nbsp;abc_ic_menu_selectall_mtrl_alpha
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_share_mtrl_alpha"></A>
+  <code>int</code>&nbsp;abc_ic_menu_share_mtrl_alpha
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_voice_search_api_mtrl_alpha"></A>
+  <code>int</code>&nbsp;abc_ic_voice_search_api_mtrl_alpha
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_btn_checkbox_checked_mtrl"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_btn_checkbox_checked_mtrl" target="_top"><code>abc_btn_checkbox_checked_mtrl</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_btn_checkbox_unchecked_mtrl"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_btn_checkbox_unchecked_mtrl" target="_top"><code>abc_btn_checkbox_unchecked_mtrl</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_btn_radio_off_mtrl"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_btn_radio_off_mtrl" target="_top"><code>abc_btn_radio_off_mtrl</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_btn_radio_on_mtrl"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_btn_radio_on_mtrl" target="_top"><code>abc_btn_radio_on_mtrl</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_ab_back_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_ab_back_material" target="_top"><code>abc_ic_ab_back_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_clear_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_clear_material" target="_top"><code>abc_ic_clear_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_go_search_api_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_go_search_api_material" target="_top"><code>abc_ic_go_search_api_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_copy_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_menu_copy_material" target="_top"><code>abc_ic_menu_copy_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_cut_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_menu_cut_material" target="_top"><code>abc_ic_menu_cut_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_overflow_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_menu_overflow_material" target="_top"><code>abc_ic_menu_overflow_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_paste_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_menu_paste_material" target="_top"><code>abc_ic_menu_paste_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_selectall_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_menu_selectall_material" target="_top"><code>abc_ic_menu_selectall_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_menu_share_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_menu_share_material" target="_top"><code>abc_ic_menu_share_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_star_black_16dp"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_star_black_16dp" target="_top"><code>abc_ic_star_black_16dp</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_star_black_36dp"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_star_black_36dp" target="_top"><code>abc_ic_star_black_36dp</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_star_half_black_16dp"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_star_half_black_16dp" target="_top"><code>abc_ic_star_half_black_16dp</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_star_half_black_36dp"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_star_half_black_36dp" target="_top"><code>abc_ic_star_half_black_36dp</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ic_voice_search_api_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ic_voice_search_api_material" target="_top"><code>abc_ic_voice_search_api_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ratingbar_indicator_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ratingbar_indicator_material" target="_top"><code>abc_ratingbar_indicator_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.drawable.abc_ratingbar_small_material"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.drawable.html#abc_ratingbar_small_material" target="_top"><code>abc_ratingbar_small_material</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.style.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.style.html
new file mode 100644
index 0000000..478d333
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.style.html
@@ -0,0 +1,192 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.style
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html" target="_top"><font size="+2"><code>R.style</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Base_Widget_AppCompat_RatingBar_Indicator"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Base_Widget_AppCompat_RatingBar_Indicator" target="_top"><code>Base_Widget_AppCompat_RatingBar_Indicator</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Base_Widget_AppCompat_RatingBar_Small"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Base_Widget_AppCompat_RatingBar_Small" target="_top"><code>Base_Widget_AppCompat_RatingBar_Small</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Theme_AppCompat_DayNight" target="_top"><code>Theme_AppCompat_DayNight</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_DarkActionBar"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Theme_AppCompat_DayNight_DarkActionBar" target="_top"><code>Theme_AppCompat_DayNight_DarkActionBar</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_Dialog"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Theme_AppCompat_DayNight_Dialog" target="_top"><code>Theme_AppCompat_DayNight_Dialog</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_DialogWhenLarge"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Theme_AppCompat_DayNight_DialogWhenLarge" target="_top"><code>Theme_AppCompat_DayNight_DialogWhenLarge</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_Dialog_Alert"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Theme_AppCompat_DayNight_Dialog_Alert" target="_top"><code>Theme_AppCompat_DayNight_Dialog_Alert</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_Dialog_MinWidth"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Theme_AppCompat_DayNight_Dialog_MinWidth" target="_top"><code>Theme_AppCompat_DayNight_Dialog_MinWidth</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Theme_AppCompat_DayNight_NoActionBar"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Theme_AppCompat_DayNight_NoActionBar" target="_top"><code>Theme_AppCompat_DayNight_NoActionBar</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Widget_AppCompat_RatingBar_Indicator"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Widget_AppCompat_RatingBar_Indicator" target="_top"><code>Widget_AppCompat_RatingBar_Indicator</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.style.Widget_AppCompat_RatingBar_Small"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.style.html#Widget_AppCompat_RatingBar_Small" target="_top"><code>Widget_AppCompat_RatingBar_Small</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.styleable.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.styleable.html
new file mode 100644
index 0000000..498ec51
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.appcompat.R.styleable.html
@@ -0,0 +1,1719 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.appcompat.R.styleable
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.appcompat.<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html" target="_top"><font size="+2"><code>R.styleable</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme"></A>
+  <code>int[]</code>&nbsp;Theme
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarDivider"></A>
+  <code>int</code>&nbsp;Theme_actionBarDivider
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarItemBackground"></A>
+  <code>int</code>&nbsp;Theme_actionBarItemBackground
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarPopupTheme"></A>
+  <code>int</code>&nbsp;Theme_actionBarPopupTheme
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarSize"></A>
+  <code>int</code>&nbsp;Theme_actionBarSize
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarSplitStyle"></A>
+  <code>int</code>&nbsp;Theme_actionBarSplitStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarStyle"></A>
+  <code>int</code>&nbsp;Theme_actionBarStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarTabBarStyle"></A>
+  <code>int</code>&nbsp;Theme_actionBarTabBarStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarTabStyle"></A>
+  <code>int</code>&nbsp;Theme_actionBarTabStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarTabTextStyle"></A>
+  <code>int</code>&nbsp;Theme_actionBarTabTextStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarTheme"></A>
+  <code>int</code>&nbsp;Theme_actionBarTheme
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionBarWidgetTheme"></A>
+  <code>int</code>&nbsp;Theme_actionBarWidgetTheme
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_actionButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionDropDownStyle"></A>
+  <code>int</code>&nbsp;Theme_actionDropDownStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionMenuTextAppearance"></A>
+  <code>int</code>&nbsp;Theme_actionMenuTextAppearance
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionMenuTextColor"></A>
+  <code>int</code>&nbsp;Theme_actionMenuTextColor
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeBackground"></A>
+  <code>int</code>&nbsp;Theme_actionModeBackground
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeCloseButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_actionModeCloseButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeCloseDrawable"></A>
+  <code>int</code>&nbsp;Theme_actionModeCloseDrawable
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeCopyDrawable"></A>
+  <code>int</code>&nbsp;Theme_actionModeCopyDrawable
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeCutDrawable"></A>
+  <code>int</code>&nbsp;Theme_actionModeCutDrawable
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeFindDrawable"></A>
+  <code>int</code>&nbsp;Theme_actionModeFindDrawable
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModePasteDrawable"></A>
+  <code>int</code>&nbsp;Theme_actionModePasteDrawable
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModePopupWindowStyle"></A>
+  <code>int</code>&nbsp;Theme_actionModePopupWindowStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeSelectAllDrawable"></A>
+  <code>int</code>&nbsp;Theme_actionModeSelectAllDrawable
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeShareDrawable"></A>
+  <code>int</code>&nbsp;Theme_actionModeShareDrawable
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeSplitBackground"></A>
+  <code>int</code>&nbsp;Theme_actionModeSplitBackground
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeStyle"></A>
+  <code>int</code>&nbsp;Theme_actionModeStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionModeWebSearchDrawable"></A>
+  <code>int</code>&nbsp;Theme_actionModeWebSearchDrawable
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionOverflowButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_actionOverflowButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_actionOverflowMenuStyle"></A>
+  <code>int</code>&nbsp;Theme_actionOverflowMenuStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_activityChooserViewStyle"></A>
+  <code>int</code>&nbsp;Theme_activityChooserViewStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_alertDialogButtonGroupStyle"></A>
+  <code>int</code>&nbsp;Theme_alertDialogButtonGroupStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_alertDialogCenterButtons"></A>
+  <code>int</code>&nbsp;Theme_alertDialogCenterButtons
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_alertDialogStyle"></A>
+  <code>int</code>&nbsp;Theme_alertDialogStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_alertDialogTheme"></A>
+  <code>int</code>&nbsp;Theme_alertDialogTheme
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_android_windowAnimationStyle"></A>
+  <code>int</code>&nbsp;Theme_android_windowAnimationStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_android_windowIsFloating"></A>
+  <code>int</code>&nbsp;Theme_android_windowIsFloating
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_autoCompleteTextViewStyle"></A>
+  <code>int</code>&nbsp;Theme_autoCompleteTextViewStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_borderlessButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_borderlessButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_buttonBarButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_buttonBarButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_buttonBarNegativeButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_buttonBarNegativeButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_buttonBarNeutralButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_buttonBarNeutralButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_buttonBarPositiveButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_buttonBarPositiveButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_buttonBarStyle"></A>
+  <code>int</code>&nbsp;Theme_buttonBarStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_buttonStyle"></A>
+  <code>int</code>&nbsp;Theme_buttonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_buttonStyleSmall"></A>
+  <code>int</code>&nbsp;Theme_buttonStyleSmall
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_checkboxStyle"></A>
+  <code>int</code>&nbsp;Theme_checkboxStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_checkedTextViewStyle"></A>
+  <code>int</code>&nbsp;Theme_checkedTextViewStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_colorAccent"></A>
+  <code>int</code>&nbsp;Theme_colorAccent
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_colorButtonNormal"></A>
+  <code>int</code>&nbsp;Theme_colorButtonNormal
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_colorControlActivated"></A>
+  <code>int</code>&nbsp;Theme_colorControlActivated
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_colorControlHighlight"></A>
+  <code>int</code>&nbsp;Theme_colorControlHighlight
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_colorControlNormal"></A>
+  <code>int</code>&nbsp;Theme_colorControlNormal
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_colorPrimary"></A>
+  <code>int</code>&nbsp;Theme_colorPrimary
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_colorPrimaryDark"></A>
+  <code>int</code>&nbsp;Theme_colorPrimaryDark
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_colorSwitchThumbNormal"></A>
+  <code>int</code>&nbsp;Theme_colorSwitchThumbNormal
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_controlBackground"></A>
+  <code>int</code>&nbsp;Theme_controlBackground
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_dialogPreferredPadding"></A>
+  <code>int</code>&nbsp;Theme_dialogPreferredPadding
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_dialogTheme"></A>
+  <code>int</code>&nbsp;Theme_dialogTheme
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_dividerHorizontal"></A>
+  <code>int</code>&nbsp;Theme_dividerHorizontal
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_dividerVertical"></A>
+  <code>int</code>&nbsp;Theme_dividerVertical
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_dropDownListViewStyle"></A>
+  <code>int</code>&nbsp;Theme_dropDownListViewStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_dropdownListPreferredItemHeight"></A>
+  <code>int</code>&nbsp;Theme_dropdownListPreferredItemHeight
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_editTextBackground"></A>
+  <code>int</code>&nbsp;Theme_editTextBackground
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_editTextColor"></A>
+  <code>int</code>&nbsp;Theme_editTextColor
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_editTextStyle"></A>
+  <code>int</code>&nbsp;Theme_editTextStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_homeAsUpIndicator"></A>
+  <code>int</code>&nbsp;Theme_homeAsUpIndicator
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_imageButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_imageButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_listChoiceBackgroundIndicator"></A>
+  <code>int</code>&nbsp;Theme_listChoiceBackgroundIndicator
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_listDividerAlertDialog"></A>
+  <code>int</code>&nbsp;Theme_listDividerAlertDialog
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_listPopupWindowStyle"></A>
+  <code>int</code>&nbsp;Theme_listPopupWindowStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_listPreferredItemHeight"></A>
+  <code>int</code>&nbsp;Theme_listPreferredItemHeight
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_listPreferredItemHeightLarge"></A>
+  <code>int</code>&nbsp;Theme_listPreferredItemHeightLarge
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_listPreferredItemHeightSmall"></A>
+  <code>int</code>&nbsp;Theme_listPreferredItemHeightSmall
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_listPreferredItemPaddingLeft"></A>
+  <code>int</code>&nbsp;Theme_listPreferredItemPaddingLeft
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_listPreferredItemPaddingRight"></A>
+  <code>int</code>&nbsp;Theme_listPreferredItemPaddingRight
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_panelBackground"></A>
+  <code>int</code>&nbsp;Theme_panelBackground
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_panelMenuListTheme"></A>
+  <code>int</code>&nbsp;Theme_panelMenuListTheme
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_panelMenuListWidth"></A>
+  <code>int</code>&nbsp;Theme_panelMenuListWidth
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_popupMenuStyle"></A>
+  <code>int</code>&nbsp;Theme_popupMenuStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_popupWindowStyle"></A>
+  <code>int</code>&nbsp;Theme_popupWindowStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_radioButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_radioButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_ratingBarStyle"></A>
+  <code>int</code>&nbsp;Theme_ratingBarStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_searchViewStyle"></A>
+  <code>int</code>&nbsp;Theme_searchViewStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_seekBarStyle"></A>
+  <code>int</code>&nbsp;Theme_seekBarStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_selectableItemBackground"></A>
+  <code>int</code>&nbsp;Theme_selectableItemBackground
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_selectableItemBackgroundBorderless"></A>
+  <code>int</code>&nbsp;Theme_selectableItemBackgroundBorderless
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_spinnerDropDownItemStyle"></A>
+  <code>int</code>&nbsp;Theme_spinnerDropDownItemStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_spinnerStyle"></A>
+  <code>int</code>&nbsp;Theme_spinnerStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_switchStyle"></A>
+  <code>int</code>&nbsp;Theme_switchStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_textAppearanceLargePopupMenu"></A>
+  <code>int</code>&nbsp;Theme_textAppearanceLargePopupMenu
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_textAppearanceListItem"></A>
+  <code>int</code>&nbsp;Theme_textAppearanceListItem
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_textAppearanceListItemSmall"></A>
+  <code>int</code>&nbsp;Theme_textAppearanceListItemSmall
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_textAppearanceSearchResultSubtitle"></A>
+  <code>int</code>&nbsp;Theme_textAppearanceSearchResultSubtitle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_textAppearanceSearchResultTitle"></A>
+  <code>int</code>&nbsp;Theme_textAppearanceSearchResultTitle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_textAppearanceSmallPopupMenu"></A>
+  <code>int</code>&nbsp;Theme_textAppearanceSmallPopupMenu
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_textColorAlertDialogListItem"></A>
+  <code>int</code>&nbsp;Theme_textColorAlertDialogListItem
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_textColorSearchUrl"></A>
+  <code>int</code>&nbsp;Theme_textColorSearchUrl
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_toolbarNavigationButtonStyle"></A>
+  <code>int</code>&nbsp;Theme_toolbarNavigationButtonStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_toolbarStyle"></A>
+  <code>int</code>&nbsp;Theme_toolbarStyle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_windowActionBar"></A>
+  <code>int</code>&nbsp;Theme_windowActionBar
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_windowActionBarOverlay"></A>
+  <code>int</code>&nbsp;Theme_windowActionBarOverlay
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_windowActionModeOverlay"></A>
+  <code>int</code>&nbsp;Theme_windowActionModeOverlay
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_windowFixedHeightMajor"></A>
+  <code>int</code>&nbsp;Theme_windowFixedHeightMajor
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_windowFixedHeightMinor"></A>
+  <code>int</code>&nbsp;Theme_windowFixedHeightMinor
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_windowFixedWidthMajor"></A>
+  <code>int</code>&nbsp;Theme_windowFixedWidthMajor
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_windowFixedWidthMinor"></A>
+  <code>int</code>&nbsp;Theme_windowFixedWidthMinor
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_windowMinWidthMajor"></A>
+  <code>int</code>&nbsp;Theme_windowMinWidthMajor
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_windowMinWidthMinor"></A>
+  <code>int</code>&nbsp;Theme_windowMinWidthMinor
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Theme_windowNoTitle"></A>
+  <code>int</code>&nbsp;Theme_windowNoTitle
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatImageView"></A>
+  <nobr><code>int[]</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatImageView" target="_top"><code>AppCompatImageView</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatImageView_android_src"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatImageView_android_src" target="_top"><code>AppCompatImageView_android_src</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatImageView_srcCompat"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatImageView_srcCompat" target="_top"><code>AppCompatImageView_srcCompat</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme"></A>
+  <nobr><code>int[]</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme" target="_top"><code>AppCompatTheme</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarDivider"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarDivider" target="_top"><code>AppCompatTheme_actionBarDivider</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarItemBackground"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarItemBackground" target="_top"><code>AppCompatTheme_actionBarItemBackground</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarPopupTheme"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarPopupTheme" target="_top"><code>AppCompatTheme_actionBarPopupTheme</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarSize"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarSize" target="_top"><code>AppCompatTheme_actionBarSize</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarSplitStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarSplitStyle" target="_top"><code>AppCompatTheme_actionBarSplitStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarStyle" target="_top"><code>AppCompatTheme_actionBarStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTabBarStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarTabBarStyle" target="_top"><code>AppCompatTheme_actionBarTabBarStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTabStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarTabStyle" target="_top"><code>AppCompatTheme_actionBarTabStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTabTextStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarTabTextStyle" target="_top"><code>AppCompatTheme_actionBarTabTextStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarTheme"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarTheme" target="_top"><code>AppCompatTheme_actionBarTheme</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionBarWidgetTheme"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionBarWidgetTheme" target="_top"><code>AppCompatTheme_actionBarWidgetTheme</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionButtonStyle" target="_top"><code>AppCompatTheme_actionButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionDropDownStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionDropDownStyle" target="_top"><code>AppCompatTheme_actionDropDownStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionMenuTextAppearance"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionMenuTextAppearance" target="_top"><code>AppCompatTheme_actionMenuTextAppearance</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionMenuTextColor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionMenuTextColor" target="_top"><code>AppCompatTheme_actionMenuTextColor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeBackground"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeBackground" target="_top"><code>AppCompatTheme_actionModeBackground</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCloseButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeCloseButtonStyle" target="_top"><code>AppCompatTheme_actionModeCloseButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCloseDrawable"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeCloseDrawable" target="_top"><code>AppCompatTheme_actionModeCloseDrawable</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCopyDrawable"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeCopyDrawable" target="_top"><code>AppCompatTheme_actionModeCopyDrawable</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeCutDrawable"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeCutDrawable" target="_top"><code>AppCompatTheme_actionModeCutDrawable</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeFindDrawable"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeFindDrawable" target="_top"><code>AppCompatTheme_actionModeFindDrawable</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModePasteDrawable"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModePasteDrawable" target="_top"><code>AppCompatTheme_actionModePasteDrawable</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModePopupWindowStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModePopupWindowStyle" target="_top"><code>AppCompatTheme_actionModePopupWindowStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeSelectAllDrawable"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeSelectAllDrawable" target="_top"><code>AppCompatTheme_actionModeSelectAllDrawable</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeShareDrawable"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeShareDrawable" target="_top"><code>AppCompatTheme_actionModeShareDrawable</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeSplitBackground"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeSplitBackground" target="_top"><code>AppCompatTheme_actionModeSplitBackground</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeStyle" target="_top"><code>AppCompatTheme_actionModeStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionModeWebSearchDrawable"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionModeWebSearchDrawable" target="_top"><code>AppCompatTheme_actionModeWebSearchDrawable</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionOverflowButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionOverflowButtonStyle" target="_top"><code>AppCompatTheme_actionOverflowButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_actionOverflowMenuStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_actionOverflowMenuStyle" target="_top"><code>AppCompatTheme_actionOverflowMenuStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_activityChooserViewStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_activityChooserViewStyle" target="_top"><code>AppCompatTheme_activityChooserViewStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogButtonGroupStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_alertDialogButtonGroupStyle" target="_top"><code>AppCompatTheme_alertDialogButtonGroupStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogCenterButtons"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_alertDialogCenterButtons" target="_top"><code>AppCompatTheme_alertDialogCenterButtons</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_alertDialogStyle" target="_top"><code>AppCompatTheme_alertDialogStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_alertDialogTheme"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_alertDialogTheme" target="_top"><code>AppCompatTheme_alertDialogTheme</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_android_windowAnimationStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_android_windowAnimationStyle" target="_top"><code>AppCompatTheme_android_windowAnimationStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_android_windowIsFloating"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_android_windowIsFloating" target="_top"><code>AppCompatTheme_android_windowIsFloating</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_autoCompleteTextViewStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_autoCompleteTextViewStyle" target="_top"><code>AppCompatTheme_autoCompleteTextViewStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_borderlessButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_borderlessButtonStyle" target="_top"><code>AppCompatTheme_borderlessButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_buttonBarButtonStyle" target="_top"><code>AppCompatTheme_buttonBarButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarNegativeButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_buttonBarNegativeButtonStyle" target="_top"><code>AppCompatTheme_buttonBarNegativeButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarNeutralButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_buttonBarNeutralButtonStyle" target="_top"><code>AppCompatTheme_buttonBarNeutralButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarPositiveButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_buttonBarPositiveButtonStyle" target="_top"><code>AppCompatTheme_buttonBarPositiveButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonBarStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_buttonBarStyle" target="_top"><code>AppCompatTheme_buttonBarStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_buttonStyle" target="_top"><code>AppCompatTheme_buttonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_buttonStyleSmall"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_buttonStyleSmall" target="_top"><code>AppCompatTheme_buttonStyleSmall</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_checkboxStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_checkboxStyle" target="_top"><code>AppCompatTheme_checkboxStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_checkedTextViewStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_checkedTextViewStyle" target="_top"><code>AppCompatTheme_checkedTextViewStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_colorAccent"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_colorAccent" target="_top"><code>AppCompatTheme_colorAccent</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_colorButtonNormal"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_colorButtonNormal" target="_top"><code>AppCompatTheme_colorButtonNormal</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_colorControlActivated"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_colorControlActivated" target="_top"><code>AppCompatTheme_colorControlActivated</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_colorControlHighlight"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_colorControlHighlight" target="_top"><code>AppCompatTheme_colorControlHighlight</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_colorControlNormal"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_colorControlNormal" target="_top"><code>AppCompatTheme_colorControlNormal</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_colorPrimary"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_colorPrimary" target="_top"><code>AppCompatTheme_colorPrimary</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_colorPrimaryDark"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_colorPrimaryDark" target="_top"><code>AppCompatTheme_colorPrimaryDark</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_colorSwitchThumbNormal"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_colorSwitchThumbNormal" target="_top"><code>AppCompatTheme_colorSwitchThumbNormal</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_controlBackground"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_controlBackground" target="_top"><code>AppCompatTheme_controlBackground</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_dialogPreferredPadding"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_dialogPreferredPadding" target="_top"><code>AppCompatTheme_dialogPreferredPadding</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_dialogTheme"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_dialogTheme" target="_top"><code>AppCompatTheme_dialogTheme</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_dividerHorizontal"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_dividerHorizontal" target="_top"><code>AppCompatTheme_dividerHorizontal</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_dividerVertical"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_dividerVertical" target="_top"><code>AppCompatTheme_dividerVertical</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_dropDownListViewStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_dropDownListViewStyle" target="_top"><code>AppCompatTheme_dropDownListViewStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_dropdownListPreferredItemHeight"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_dropdownListPreferredItemHeight" target="_top"><code>AppCompatTheme_dropdownListPreferredItemHeight</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_editTextBackground"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_editTextBackground" target="_top"><code>AppCompatTheme_editTextBackground</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_editTextColor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_editTextColor" target="_top"><code>AppCompatTheme_editTextColor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_editTextStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_editTextStyle" target="_top"><code>AppCompatTheme_editTextStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_homeAsUpIndicator"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_homeAsUpIndicator" target="_top"><code>AppCompatTheme_homeAsUpIndicator</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_imageButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_imageButtonStyle" target="_top"><code>AppCompatTheme_imageButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_listChoiceBackgroundIndicator"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_listChoiceBackgroundIndicator" target="_top"><code>AppCompatTheme_listChoiceBackgroundIndicator</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_listDividerAlertDialog"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_listDividerAlertDialog" target="_top"><code>AppCompatTheme_listDividerAlertDialog</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_listPopupWindowStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_listPopupWindowStyle" target="_top"><code>AppCompatTheme_listPopupWindowStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemHeight"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_listPreferredItemHeight" target="_top"><code>AppCompatTheme_listPreferredItemHeight</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemHeightLarge"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_listPreferredItemHeightLarge" target="_top"><code>AppCompatTheme_listPreferredItemHeightLarge</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemHeightSmall"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_listPreferredItemHeightSmall" target="_top"><code>AppCompatTheme_listPreferredItemHeightSmall</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemPaddingLeft"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_listPreferredItemPaddingLeft" target="_top"><code>AppCompatTheme_listPreferredItemPaddingLeft</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_listPreferredItemPaddingRight"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_listPreferredItemPaddingRight" target="_top"><code>AppCompatTheme_listPreferredItemPaddingRight</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_panelBackground"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_panelBackground" target="_top"><code>AppCompatTheme_panelBackground</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_panelMenuListTheme"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_panelMenuListTheme" target="_top"><code>AppCompatTheme_panelMenuListTheme</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_panelMenuListWidth"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_panelMenuListWidth" target="_top"><code>AppCompatTheme_panelMenuListWidth</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_popupMenuStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_popupMenuStyle" target="_top"><code>AppCompatTheme_popupMenuStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_popupWindowStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_popupWindowStyle" target="_top"><code>AppCompatTheme_popupWindowStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_radioButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_radioButtonStyle" target="_top"><code>AppCompatTheme_radioButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_ratingBarStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_ratingBarStyle" target="_top"><code>AppCompatTheme_ratingBarStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_ratingBarStyleIndicator"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_ratingBarStyleIndicator" target="_top"><code>AppCompatTheme_ratingBarStyleIndicator</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_ratingBarStyleSmall"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_ratingBarStyleSmall" target="_top"><code>AppCompatTheme_ratingBarStyleSmall</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_searchViewStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_searchViewStyle" target="_top"><code>AppCompatTheme_searchViewStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_seekBarStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_seekBarStyle" target="_top"><code>AppCompatTheme_seekBarStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_selectableItemBackground"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_selectableItemBackground" target="_top"><code>AppCompatTheme_selectableItemBackground</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_selectableItemBackgroundBorderless"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_selectableItemBackgroundBorderless" target="_top"><code>AppCompatTheme_selectableItemBackgroundBorderless</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_spinnerDropDownItemStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_spinnerDropDownItemStyle" target="_top"><code>AppCompatTheme_spinnerDropDownItemStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_spinnerStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_spinnerStyle" target="_top"><code>AppCompatTheme_spinnerStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_switchStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_switchStyle" target="_top"><code>AppCompatTheme_switchStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceLargePopupMenu"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_textAppearanceLargePopupMenu" target="_top"><code>AppCompatTheme_textAppearanceLargePopupMenu</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceListItem"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_textAppearanceListItem" target="_top"><code>AppCompatTheme_textAppearanceListItem</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceListItemSmall"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_textAppearanceListItemSmall" target="_top"><code>AppCompatTheme_textAppearanceListItemSmall</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceSearchResultSubtitle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_textAppearanceSearchResultSubtitle" target="_top"><code>AppCompatTheme_textAppearanceSearchResultSubtitle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceSearchResultTitle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_textAppearanceSearchResultTitle" target="_top"><code>AppCompatTheme_textAppearanceSearchResultTitle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_textAppearanceSmallPopupMenu"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_textAppearanceSmallPopupMenu" target="_top"><code>AppCompatTheme_textAppearanceSmallPopupMenu</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_textColorAlertDialogListItem"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_textColorAlertDialogListItem" target="_top"><code>AppCompatTheme_textColorAlertDialogListItem</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_textColorSearchUrl"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_textColorSearchUrl" target="_top"><code>AppCompatTheme_textColorSearchUrl</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_toolbarNavigationButtonStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_toolbarNavigationButtonStyle" target="_top"><code>AppCompatTheme_toolbarNavigationButtonStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_toolbarStyle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_toolbarStyle" target="_top"><code>AppCompatTheme_toolbarStyle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_windowActionBar"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_windowActionBar" target="_top"><code>AppCompatTheme_windowActionBar</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_windowActionBarOverlay"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_windowActionBarOverlay" target="_top"><code>AppCompatTheme_windowActionBarOverlay</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_windowActionModeOverlay"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_windowActionModeOverlay" target="_top"><code>AppCompatTheme_windowActionModeOverlay</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedHeightMajor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_windowFixedHeightMajor" target="_top"><code>AppCompatTheme_windowFixedHeightMajor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedHeightMinor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_windowFixedHeightMinor" target="_top"><code>AppCompatTheme_windowFixedHeightMinor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedWidthMajor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_windowFixedWidthMajor" target="_top"><code>AppCompatTheme_windowFixedWidthMajor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_windowFixedWidthMinor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_windowFixedWidthMinor" target="_top"><code>AppCompatTheme_windowFixedWidthMinor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_windowMinWidthMajor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_windowMinWidthMajor" target="_top"><code>AppCompatTheme_windowMinWidthMajor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_windowMinWidthMinor"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_windowMinWidthMinor" target="_top"><code>AppCompatTheme_windowMinWidthMinor</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.AppCompatTheme_windowNoTitle"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#AppCompatTheme_windowNoTitle" target="_top"><code>AppCompatTheme_windowNoTitle</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat.R.styleable.Spinner_android_entries"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/appcompat/R.styleable.html#Spinner_android_entries" target="_top"><code>Spinner_android_entries</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.graphics.Palette.Builder.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.graphics.Palette.Builder.html
new file mode 100644
index 0000000..83f441b
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.graphics.Palette.Builder.html
@@ -0,0 +1,154 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.graphics.Palette.Builder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.graphics.<A HREF="../../../../reference/android/support/v7/graphics/Palette.Builder.html" target="_top"><font size="+2"><code>Palette.Builder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.Palette.Builder.addTarget_added(android.support.v7.graphics.Target)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/graphics/Palette.Builder.html#addTarget(android.support.v7.graphics.Target)" target="_top"><code>addTarget</code></A>(<code>Target</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.Palette.Builder.clearTargets_added()"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/graphics/Palette.Builder.html#clearTargets()" target="_top"><code>clearTargets</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.Palette.Builder.resizeBitmapArea_added(int)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/graphics/Palette.Builder.html#resizeBitmapArea(int)" target="_top"><code>resizeBitmapArea</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.Palette.Builder.resizeBitmapSize_changed(int)"></A>
+  <nobr><code>Builder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/graphics/Palette.Builder.html#resizeBitmapSize(int)" target="_top"><code>resizeBitmapSize</code></A>(<code>int</code>)  </nobr>
+  </TD>
+  <TD VALIGN="TOP" WIDTH="30%">
+<b>Now deprecated</b>.<br>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.graphics.Palette.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.graphics.Palette.html
new file mode 100644
index 0000000..be157a7
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.graphics.Palette.html
@@ -0,0 +1,136 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.graphics.Palette
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.graphics.<A HREF="../../../../reference/android/support/v7/graphics/Palette.html" target="_top"><font size="+2"><code>Palette</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.Palette.getColorForTarget_added(android.support.v7.graphics.Target, int)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/graphics/Palette.html#getColorForTarget(android.support.v7.graphics.Target, int)" target="_top"><code>getColorForTarget</code></A>(<code>Target,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.Palette.getSwatchForTarget_added(android.support.v7.graphics.Target)"></A>
+  <nobr><code>Swatch</code>&nbsp;<A HREF="../../../../reference/android/support/v7/graphics/Palette.html#getSwatchForTarget(android.support.v7.graphics.Target)" target="_top"><code>getSwatchForTarget</code></A>(<code>Target</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics.Palette.getTargets_added()"></A>
+  <nobr><code>List&lt;Target&gt;</code>&nbsp;<A HREF="../../../../reference/android/support/v7/graphics/Palette.html#getTargets()" target="_top"><code>getTargets</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.media.MediaRouteDescriptor.Builder.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.media.MediaRouteDescriptor.Builder.html
new file mode 100644
index 0000000..7db6666
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.media.MediaRouteDescriptor.Builder.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.media.MediaRouteDescriptor.Builder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.media.<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.Builder.html" target="_top"><font size="+2"><code>MediaRouteDescriptor.Builder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberId_removed(java.lang.String)"></A>
+  <nobr><code>Builder</code>&nbsp;addGroupMemberId(<code>String</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.Builder.addGroupMemberIds_removed(java.util.Collection<java.lang.String>)"></A>
+  <nobr><code>Builder</code>&nbsp;addGroupMemberIds(<code>Collection&lt;String&gt;</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.media.MediaRouteDescriptor.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.media.MediaRouteDescriptor.html
new file mode 100644
index 0000000..315ba3d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.media.MediaRouteDescriptor.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.media.MediaRouteDescriptor
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.media.<A HREF="../../../../reference/android/support/v7/media/MediaRouteDescriptor.html" target="_top"><font size="+2"><code>MediaRouteDescriptor</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouteDescriptor.getGroupMemberIds_removed()"></A>
+  <nobr><code>List&lt;String&gt;</code>&nbsp;getGroupMemberIds()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.media.MediaRouter.Callback.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.media.MediaRouter.Callback.html
new file mode 100644
index 0000000..66be68d
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.media.MediaRouter.Callback.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.media.MediaRouter.Callback
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.media.<A HREF="../../../../reference/android/support/v7/media/MediaRouter.Callback.html" target="_top"><font size="+2"><code>MediaRouter.Callback</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media.MediaRouter.Callback.onRouteUnselected_added(android.support.v7.media.MediaRouter, android.support.v7.media.MediaRouter.RouteInfo, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/media/MediaRouter.Callback.html#onRouteUnselected(android.support.v7.media.MediaRouter, android.support.v7.media.MediaRouter.RouteInfo, int)" target="_top"><code>onRouteUnselected</code></A>(<code>MediaRouter,</nobr> RouteInfo<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.preference.PreferenceFragmentCompat.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.preference.PreferenceFragmentCompat.html
new file mode 100644
index 0000000..68aa733
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.preference.PreferenceFragmentCompat.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.preference.PreferenceFragmentCompat
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.preference.<A HREF="../../../../reference/android/support/v7/preference/PreferenceFragmentCompat.html" target="_top"><font size="+2"><code>PreferenceFragmentCompat</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference.PreferenceFragmentCompat.setDivider_added(android.graphics.drawable.Drawable)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/preference/PreferenceFragmentCompat.html#setDivider(android.graphics.drawable.Drawable)" target="_top"><code>setDivider</code></A>(<code>Drawable</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference.PreferenceFragmentCompat.setDividerHeight_added(int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/preference/PreferenceFragmentCompat.html#setDividerHeight(int)" target="_top"><code>setDividerHeight</code></A>(<code>int</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.preference.PreferenceScreen.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.preference.PreferenceScreen.html
new file mode 100644
index 0000000..12de78c
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.preference.PreferenceScreen.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.preference.PreferenceScreen
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.preference.<A HREF="../../../../reference/android/support/v7/preference/PreferenceScreen.html" target="_top"><font size="+2"><code>PreferenceScreen</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference.PreferenceScreen.setShouldUseGeneratedIds_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/preference/PreferenceScreen.html#setShouldUseGeneratedIds(boolean)" target="_top"><code>setShouldUseGeneratedIds</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference.PreferenceScreen.shouldUseGeneratedIds_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v7/preference/PreferenceScreen.html#shouldUseGeneratedIds()" target="_top"><code>shouldUseGeneratedIds</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.preference.PreferenceViewHolder.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.preference.PreferenceViewHolder.html
new file mode 100644
index 0000000..b27e66c
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.preference.PreferenceViewHolder.html
@@ -0,0 +1,143 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.preference.PreferenceViewHolder
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.preference.<A HREF="../../../../reference/android/support/v7/preference/PreferenceViewHolder.html" target="_top"><font size="+2"><code>PreferenceViewHolder</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference.PreferenceViewHolder.isDividerAllowedAbove_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v7/preference/PreferenceViewHolder.html#isDividerAllowedAbove()" target="_top"><code>isDividerAllowedAbove</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference.PreferenceViewHolder.isDividerAllowedBelow_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v7/preference/PreferenceViewHolder.html#isDividerAllowedBelow()" target="_top"><code>isDividerAllowedBelow</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference.PreferenceViewHolder.setDividerAllowedAbove_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/preference/PreferenceViewHolder.html#setDividerAllowedAbove(boolean)" target="_top"><code>setDividerAllowedAbove</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference.PreferenceViewHolder.setDividerAllowedBelow_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/preference/PreferenceViewHolder.html#setDividerAllowedBelow(boolean)" target="_top"><code>setDividerAllowedBelow</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.recyclerview.R.dimen.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.recyclerview.R.dimen.html
new file mode 100644
index 0000000..b38c6dc
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.recyclerview.R.dimen.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.recyclerview.R.dimen
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.recyclerview.<A HREF="../../../../reference/android/support/v7/recyclerview/R.dimen.html" target="_top"><font size="+2"><code>R.dimen</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<a NAME="fields"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Fields" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Fields</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.recyclerview.R.dimen.item_touch_helper_swipe_escape_max_velocity"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/recyclerview/R.dimen.html#item_touch_helper_swipe_escape_max_velocity" target="_top"><code>item_touch_helper_swipe_escape_max_velocity</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.recyclerview.R.dimen.item_touch_helper_swipe_escape_velocity"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/recyclerview/R.dimen.html#item_touch_helper_swipe_escape_velocity" target="_top"><code>item_touch_helper_swipe_escape_velocity</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.OrientationHelper.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.OrientationHelper.html
new file mode 100644
index 0000000..6a2a9b3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.OrientationHelper.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.widget.OrientationHelper
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.widget.<A HREF="../../../../reference/android/support/v7/widget/OrientationHelper.html" target="_top"><font size="+2"><code>OrientationHelper</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.OrientationHelper.getMode_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/OrientationHelper.html#getMode()" target="_top"><code>getMode</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.OrientationHelper.getModeInOther_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/OrientationHelper.html#getModeInOther()" target="_top"><code>getModeInOther</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.ItemAnimator.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.ItemAnimator.html
new file mode 100644
index 0000000..95e642e
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.ItemAnimator.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.widget.RecyclerView.ItemAnimator
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.widget.<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.ItemAnimator.html" target="_top"><font size="+2"><code>RecyclerView.ItemAnimator</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.ItemAnimator.canReuseUpdatedViewHolder_added(android.support.v7.widget.RecyclerView.ViewHolder, java.util.List<java.lang.Object>)"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.ItemAnimator.html#canReuseUpdatedViewHolder(android.support.v7.widget.RecyclerView.ViewHolder, java.util.List<java.lang.Object>)" target="_top"><code>canReuseUpdatedViewHolder</code></A>(<code>ViewHolder,</nobr> List&lt;Object&gt;<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.LayoutManager.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.LayoutManager.html
new file mode 100644
index 0000000..30b0a78
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.LayoutManager.html
@@ -0,0 +1,207 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.widget.RecyclerView.LayoutManager
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.widget.<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html" target="_top"><font size="+2"><code>RecyclerView.LayoutManager</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Removed"></a>
+<TABLE summary="Removed Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.getChildMeasureSpec_removed(int, int, int, boolean)"></A>
+  <nobr><code>int</code>&nbsp;getChildMeasureSpec(<code>int,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> boolean<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.chooseSize_added(int, int, int)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#chooseSize(int, int, int)" target="_top"><code>chooseSize</code></A>(<code>int,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.findContainingItemView_added(android.view.View)"></A>
+  <nobr><code>View</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#findContainingItemView(android.view.View)" target="_top"><code>findContainingItemView</code></A>(<code>View</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.getChildMeasureSpec_added(int, int, int, int, boolean)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#getChildMeasureSpec(int, int, int, int, boolean)" target="_top"><code>getChildMeasureSpec</code></A>(<code>int,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> boolean<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.getChildMeasureSpec_added(int, int, int, boolean)"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#getChildMeasureSpec(int, int, int, boolean)" target="_top"><code>getChildMeasureSpec</code></A>(<code>int,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> boolean<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.getHeightMode_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#getHeightMode()" target="_top"><code>getHeightMode</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.getWidthMode_added()"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#getWidthMode()" target="_top"><code>getWidthMode</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.isAutoMeasureEnabled_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#isAutoMeasureEnabled()" target="_top"><code>isAutoMeasureEnabled</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.isMeasurementCacheEnabled_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#isMeasurementCacheEnabled()" target="_top"><code>isMeasurementCacheEnabled</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.setAutoMeasureEnabled_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#setAutoMeasureEnabled(boolean)" target="_top"><code>setAutoMeasureEnabled</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.setMeasuredDimension_added(android.graphics.Rect, int, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#setMeasuredDimension(android.graphics.Rect, int, int)" target="_top"><code>setMeasuredDimension</code></A>(<code>Rect,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.LayoutManager.setMeasurementCacheEnabled_added(boolean)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.LayoutManager.html#setMeasurementCacheEnabled(boolean)" target="_top"><code>setMeasurementCacheEnabled</code></A>(<code>boolean</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.State.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.State.html
new file mode 100644
index 0000000..2b3ac61
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.State.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.widget.RecyclerView.State
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.widget.<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.State.html" target="_top"><font size="+2"><code>RecyclerView.State</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.State.isMeasuring_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.State.html#isMeasuring()" target="_top"><code>isMeasuring</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.html
new file mode 100644
index 0000000..5cdc7a0
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.RecyclerView.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.widget.RecyclerView
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.widget.<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.html" target="_top"><font size="+2"><code>RecyclerView</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.findContainingItemView_added(android.view.View)"></A>
+  <nobr><code>View</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.html#findContainingItemView(android.view.View)" target="_top"><code>findContainingItemView</code></A>(<code>View</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.RecyclerView.findContainingViewHolder_added(android.view.View)"></A>
+  <nobr><code>ViewHolder</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/RecyclerView.html#findContainingViewHolder(android.view.View)" target="_top"><code>findContainingViewHolder</code></A>(<code>View</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.helper.ItemTouchHelper.Callback.html b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.helper.ItemTouchHelper.Callback.html
new file mode 100644
index 0000000..1237408
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/android.support.v7.widget.helper.ItemTouchHelper.Callback.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+android.support.v7.widget.helper.ItemTouchHelper.Callback
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY>
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+<H2>
+Class android.support.v7.widget.helper.<A HREF="../../../../reference/android/support/v7/widget/helper/ItemTouchHelper.Callback.html" target="_top"><font size="+2"><code>ItemTouchHelper.Callback</code></font></A>
+</H2>
+<a NAME="constructors"></a>
+<a NAME="methods"></a>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Methods" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.helper.ItemTouchHelper.Callback.getSwipeEscapeVelocity_added(float)"></A>
+  <nobr><code>float</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/helper/ItemTouchHelper.Callback.html#getSwipeEscapeVelocity(float)" target="_top"><code>getSwipeEscapeVelocity</code></A>(<code>float</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.helper.ItemTouchHelper.Callback.getSwipeVelocityThreshold_added(float)"></A>
+  <nobr><code>float</code>&nbsp;<A HREF="../../../../reference/android/support/v7/widget/helper/ItemTouchHelper.Callback.html#getSwipeVelocityThreshold(float)" target="_top"><code>getSwipeVelocityThreshold</code></A>(<code>float</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<a NAME="fields"></a>
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/changes-summary.html b/docs/html/sdk/support_api_diff/23.2.0/changes/changes-summary.html
new file mode 100644
index 0000000..d41ec1f
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/changes-summary.html
@@ -0,0 +1,366 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Support&nbsp;Library&nbsp;API&nbsp;Differences&nbsp;Report
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<body class="gc-documentation">
+<!-- Start of nav bar -->
+<a name="top"></a>
+<div id="header" style="margin-bottom:0;padding-bottom:0;">
+<div id="headerLeft">
+<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
+</div>
+  <div id="headerRight">
+  <div id="headerLinks">
+<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
+<span class="text">
+<!-- &nbsp;<a href="#">English</a> | -->
+<nobr><a href="http://developer.android.com" target="_top">Android Developers</a> | <a href="http://www.android.com" target="_top">Android.com</a></nobr>
+</span>
+</div>
+  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td colspan="2" class="diffspechead">API Diff Specification</td>
+      </tr>
+      <tr>
+        <td class="diffspec" style="padding-top:.25em">To Level:</td>
+        <td class="diffvaluenew" style="padding-top:.25em">23.2.0</td>
+      </tr>
+      <tr>
+        <td class="diffspec">From Level:</td>
+        <td class="diffvalueold">23.1.1</td>
+      </tr>
+      <tr>
+        <td class="diffspec">Generated</td>
+        <td class="diffvalue">2016.02.23 13:25</td>
+      </tr>
+    </table>
+    </div><!-- End and-diff-id -->
+  <div class="and-diff-id" style="margin-right:8px;">
+    <table class="diffspectable">
+      <tr>
+        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
+      </tr>
+    </table>
+  </div> <!-- End and-diff-id -->
+  </div> <!-- End headerRight -->
+  </div> <!-- End header -->
+<div id="body-content" xstyle="padding:12px;padding-right:18px;">
+<div id="doc-content" style="position:relative;">
+<div id="mainBodyFluid">
+    <div id="docTitleContainer">
+    <h1>Support&nbsp;Library&nbsp;API&nbsp;Differences&nbsp;Report</h1>
+<p>This report details the changes in the Android Support Library API between two versions. 
+It shows additions, modifications, and removals for packages, classes, methods, and fields. 
+The report also includes general statistics that characterize the extent and type of the differences.</p>
+<p>This report is based a comparison of the Support Library API specifications 
+whose version level identifiers are given in the upper-right corner of this page. It compares a 
+newer "to" version's API to an older "from" version's API, noting all changes relative to the 
+older API. So, for example, API elements marked as removed are no longer present in the "to" 
+API specification.</p>
+<p>To navigate the report, use the "Select a Diffs Index" and "Filter the Index" 
+controls on the left. The report uses text formatting to indicate <em>interface names</em>, 
+<a href= ><code>links to reference documentation</code></a>, and <a href= >links to change 
+description</a>. The statistics are accessible from the "Statistics" link in the upper-right corner.</p>
+<p>For more information about the Android API and SDK, 
+see the <a href="http://developer.android.com/index.html" target="_top">Android Developers site</a>.</p>
+<p>
+<a NAME="Added"></a>
+<TABLE summary="Added Packages" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=2>Added Packages</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.graphics.drawable"></A>
+  <nobr><A HREF="../../../../reference/android/support/graphics/drawable/package-summary.html" target="_top"><code>android.support.graphics.drawable</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget.picker"></A>
+  <nobr><A HREF="../../../../reference/android/support/v17/leanback/widget/picker/package-summary.html" target="_top"><code>android.support.v17.leanback.widget.picker</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<p>
+<a NAME="Changed"></a>
+<TABLE summary="Changed Packages" WIDTH="100%">
+<TR>
+  <TH VALIGN="TOP" COLSPAN=3>Changed Packages</FONT></TD>
+</TH>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.customtabs"></A>
+  <nobr><A HREF="pkg_android.support.customtabs.html">android.support.customtabs</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.design.widget"></A>
+  <nobr><A HREF="pkg_android.support.design.widget.html">android.support.design.widget</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.percent"></A>
+  <nobr><A HREF="pkg_android.support.percent.html">android.support.percent</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v14.preference"></A>
+  <nobr><A HREF="pkg_android.support.v14.preference.html">android.support.v14.preference</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.app"></A>
+  <nobr><A HREF="pkg_android.support.v17.leanback.app.html">android.support.v17.leanback.app</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v17.leanback.widget"></A>
+  <nobr><A HREF="pkg_android.support.v17.leanback.widget.html">android.support.v17.leanback.widget</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.accessibilityservice"></A>
+  <nobr><A HREF="pkg_android.support.v4.accessibilityservice.html">android.support.v4.accessibilityservice</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.app"></A>
+  <nobr><A HREF="pkg_android.support.v4.app.html">android.support.v4.app</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content"></A>
+  <nobr><A HREF="pkg_android.support.v4.content.html">android.support.v4.content</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.pm"></A>
+  <nobr><A HREF="pkg_android.support.v4.content.pm.html">android.support.v4.content.pm</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.content.res"></A>
+  <nobr><A HREF="pkg_android.support.v4.content.res.html">android.support.v4.content.res</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.database"></A>
+  <nobr><A HREF="pkg_android.support.v4.database.html">android.support.v4.database</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics"></A>
+  <nobr><A HREF="pkg_android.support.v4.graphics.html">android.support.v4.graphics</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.graphics.drawable"></A>
+  <nobr><A HREF="pkg_android.support.v4.graphics.drawable.html">android.support.v4.graphics.drawable</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.hardware.fingerprint"></A>
+  <nobr><A HREF="pkg_android.support.v4.hardware.fingerprint.html">android.support.v4.hardware.fingerprint</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.media"></A>
+  <nobr><A HREF="pkg_android.support.v4.media.html">android.support.v4.media</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.net"></A>
+  <nobr><A HREF="pkg_android.support.v4.net.html">android.support.v4.net</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.os"></A>
+  <nobr><A HREF="pkg_android.support.v4.os.html">android.support.v4.os</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.text"></A>
+  <nobr><A HREF="pkg_android.support.v4.text.html">android.support.v4.text</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view"></A>
+  <nobr><A HREF="pkg_android.support.v4.view.html">android.support.v4.view</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.accessibility"></A>
+  <nobr><A HREF="pkg_android.support.v4.view.accessibility.html">android.support.v4.view.accessibility</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.view.animation"></A>
+  <nobr><A HREF="pkg_android.support.v4.view.animation.html">android.support.v4.view.animation</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v4.widget"></A>
+  <nobr><A HREF="pkg_android.support.v4.widget.html">android.support.v4.widget</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.app"></A>
+  <nobr><A HREF="pkg_android.support.v7.app.html">android.support.v7.app</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.appcompat"></A>
+  <nobr><A HREF="pkg_android.support.v7.appcompat.html">android.support.v7.appcompat</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.graphics"></A>
+  <nobr><A HREF="pkg_android.support.v7.graphics.html">android.support.v7.graphics</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.media"></A>
+  <nobr><A HREF="pkg_android.support.v7.media.html">android.support.v7.media</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.preference"></A>
+  <nobr><A HREF="pkg_android.support.v7.preference.html">android.support.v7.preference</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.recyclerview"></A>
+  <nobr><A HREF="pkg_android.support.v7.recyclerview.html">android.support.v7.recyclerview</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget"></A>
+  <nobr><A HREF="pkg_android.support.v7.widget.html">android.support.v7.widget</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.support.v7.widget.helper"></A>
+  <nobr><A HREF="pkg_android.support.v7.widget.helper.html">android.support.v7.widget.helper</A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- End of API section -->
+<!-- Start of packages section -->
+      </div>	
+      <div id="footer">
+        <div id="copyright">
+        Except as noted, this content is licensed under 
+        <a href="http://creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
+        For details and restrictions, see the <a href="/license.html">Content License</a>.
+        </div>
+      <div id="footerlinks">
+      <p>
+        <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
+        <a href="http://www.android.com/privacy.html">Privacy Policy</a> -
+        <a href="http://www.android.com/branding.html">Brand Guidelines</a>
+      </p>
+    </div>
+    </div> <!-- end footer -->
+    </div><!-- end doc-content -->
+    </div> <!-- end body-content --> 
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/changes/classes_index_additions.html b/docs/html/sdk/support_api_diff/23.2.0/changes/classes_index_additions.html
new file mode 100644
index 0000000..a2e1d44
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/changes/classes_index_additions.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<HTML style="overflow:auto;">
+<HEAD>
+<meta name="generator" content="JDiff v1.1.0">
+<!-- Generated by the JDiff Javadoc doclet -->
+<!-- (http://www.jdiff.org) -->
+<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
+<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
+<TITLE>
+Class Additions Index
+</TITLE>
+<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
+<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
+<noscript>
+<style type="text/css">
+body{overflow:auto;}
+#body-content{position:relative; top:0;}
+#doc-content{overflow:visible;border-left:3px solid #666;}
+#side-nav{padding:0;}
+#side-nav .toggle-list ul {display:block;}
+#resize-packages-nav{border-bottom:3px solid #666;}
+</style>
+</noscript>
+<style type="text/css">
+</style>
+</HEAD>
+<BODY class="gc-documentation" style="padding:12px;">
+<a NAME="topheader"></a>
+<table summary="Index for Classes" width="100%" class="jdiffIndex" border="0" cellspacing="0" cellpadding="0" style="padding-bottom:0;margin-bottom:0;">
+  <tr>
+  <th class="indexHeader">
+    Filter the Index:
+  </th>
+  </tr>
+  <tr>
+  <td class="indexText" style="line-height:1.3em;padding-left:2em;">
+<a href="classes_index_all.html" class="staysblack">All Classes</a>
+  <br>
+<A HREF="classes_index_removals.html" xclass="hiddenlink">Removals</A>
+  <br>
+<b>Additions</b>
+  <br>
+<A HREF="classes_index_changes.html"xclass="hiddenlink">Changes</A>
+  </td>
+  </tr>
+</table>
+<div id="indexTableCaption" style="background-color:#eee;padding:0 4px 0 4px;font-size:11px;margin-bottom:1em;">
+Listed as: <span style="color:#069"><strong>Added</strong></span>,  <span style="color:#069"><strike>Removed</strike></span>,  <span style="color:#069">Changed</span></font>
+</div>
+<A NAME="B"></A>
+<br><font size="+2">B</font>&nbsp;
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.design.widget.html#BottomSheetBehavior" class="hiddenlink" target="rightframe"><b>BottomSheetBehavior</b></A><br>
+<A HREF="pkg_android.support.design.widget.html#BottomSheetBehavior.BottomSheetCallback" class="hiddenlink" target="rightframe"><b>BottomSheetBehavior.BottomSheetCallback</b></A><br>
+<A HREF="pkg_android.support.design.widget.html#BottomSheetBehavior.SavedState" class="hiddenlink" target="rightframe"><b>BottomSheetBehavior.SavedState</b></A><br>
+<A HREF="pkg_android.support.design.widget.html#BottomSheetDialog" class="hiddenlink" target="rightframe"><b>BottomSheetDialog</b></A><br>
+<A HREF="pkg_android.support.design.widget.html#BottomSheetDialogFragment" class="hiddenlink" target="rightframe"><b>BottomSheetDialogFragment</b></A><br>
+<A NAME="G"></A>
+<br><font size="+2">G</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedAction.BuilderBase" class="hiddenlink" target="rightframe"><b>GuidedAction.BuilderBase</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedDatePickerAction" class="hiddenlink" target="rightframe"><b>GuidedDatePickerAction</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedDatePickerAction.Builder" class="hiddenlink" target="rightframe"><b>GuidedDatePickerAction.Builder</b></A><br>
+<A HREF="pkg_android.support.v17.leanback.widget.html#GuidedDatePickerAction.BuilderBase" class="hiddenlink" target="rightframe"><b>GuidedDatePickerAction.BuilderBase</b></A><br>
+<A NAME="L"></A>
+<br><font size="+2">L</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v17.leanback.widget.html#ListRowPresenter.SelectItemViewHolderTask" class="hiddenlink" target="rightframe"><b>ListRowPresenter.SelectItemViewHolderTask</b></A><br>
+<A HREF="pkg_android.support.v4.widget.html#ListViewCompat" class="hiddenlink" target="rightframe"><b>ListViewCompat</b></A><br>
+<A NAME="M"></A>
+<br><font size="+2">M</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat</b></A><br>
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.ConnectionCallback" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.ConnectionCallback</b></A><br>
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.ItemCallback" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.ItemCallback</b></A><br>
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.MediaItem" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.MediaItem</b></A><br>
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserCompat.SubscriptionCallback" class="hiddenlink" target="rightframe"><b>MediaBrowserCompat.SubscriptionCallback</b></A><br>
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserServiceCompat" class="hiddenlink" target="rightframe"><b>MediaBrowserServiceCompat</b></A><br>
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserServiceCompat.BrowserRoot" class="hiddenlink" target="rightframe"><b>MediaBrowserServiceCompat.BrowserRoot</b></A><br>
+<A HREF="pkg_android.support.v4.media.html#MediaBrowserServiceCompat.Result" class="hiddenlink" target="rightframe"><b>MediaBrowserServiceCompat.Result</b></A><br>
+<A NAME="P"></A>
+<br><font size="+2">P</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v17.leanback.widget.html#Presenter.ViewHolderTask" class="hiddenlink" target="rightframe"><b>Presenter.ViewHolderTask</b></A><br>
+<A NAME="T"></A>
+<br><font size="+2">T</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#V"><font size="-2">V</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.design.widget.html#TabItem" class="hiddenlink" target="rightframe"><b>TabItem</b></A><br>
+<A HREF="pkg_android.support.v7.graphics.html#Target" class="hiddenlink" target="rightframe"><b>Target</b></A><br>
+<A HREF="pkg_android.support.v7.graphics.html#Target.Builder" class="hiddenlink" target="rightframe"><b>Target.Builder</b></A><br>
+<A HREF="pkg_android.support.design.widget.html#TextInputEditText" class="hiddenlink" target="rightframe"><b>TextInputEditText</b></A><br>
+<A NAME="V"></A>
+<br><font size="+2">V</font>&nbsp;
+<a href="#B"><font size="-2">B</font></a> 
+<a href="#G"><font size="-2">G</font></a> 
+<a href="#L"><font size="-2">L</font></a> 
+<a href="#M"><font size="-2">M</font></a> 
+<a href="#P"><font size="-2">P</font></a> 
+<a href="#T"><font size="-2">T</font></a> 
+ <a href="#topheader"><font size="-2">TOP</font></a>
+<p><div style="line-height:1.5em;color:black">
+<A HREF="pkg_android.support.v17.leanback.widget.html#ViewHolderTask" class="hiddenlink" target="rightframe"><b><i>ViewHolderTask</i></b></A><br>
+<A HREF="pkg_android.support.design.widget.html#VisibilityAwareImageButton" class="hiddenlink" target="rightframe"><b>VisibilityAwareImageButton</b></A><br>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+  try {
+    var pageTracker = _gat._getTracker("UA-5831155-1");
+    pageTracker._setAllowAnchor(true);
+    pageTracker._initData();
+    pageTracker._trackPageview();
+  } catch(e) {}
+</script>
+</BODY>
+</HTML>
diff --git a/docs/html/sdk/support_api_diff/23.2.0/stylesheet-jdiff.css b/docs/html/sdk/support_api_diff/23.2.0/stylesheet-jdiff.css
new file mode 100644
index 0000000..edafaa3
--- /dev/null
+++ b/docs/html/sdk/support_api_diff/23.2.0/stylesheet-jdiff.css
@@ -0,0 +1,44 @@
+
+/* (http://www.jdiff.org) */
+
+div.and-diff-id {border: 1px solid #eee;position:relative;float:right;clear:both;padding:0px;}
+table.diffspectable {border:1px;padding:0px;margin:0px;}
+.diffspechead {background-color:#eee;}
+.diffspectable tr {border:0px;padding:0px;}
+.diffspectable td  {background-color:eee;border:0px;font-size:90%;font-weight:normal;padding:0px;padding-left:1px;padding-right:1px;text-align:center;color:777;}
+td.diffvalueold {color:orange;background-color:white;border:0px;font-size:80%;font-style:normal;text-align:left;padding:0px;padding-left:1px;padding-right:1px;line-height:.95em;}
+td.diffvaluenew {color:green;background-color:white;border:0px;font-size:80%;font-weight:normal;text-align:left;padding:0px;padding-left:1px;padding-right:1px;line-height:.95em;}
+td.diffvalue {color:444;background-color:white;border:0px;font-size:80%;font-weight:normal;text-align:left;padding:0px;padding-left:1px;padding-right:1px;line-height:.95em;}
+td.diffspec {background-color:white;border:0px;font-size:80%;font-weight:normal;padding:1px;color:444;text-align:right;padding-right:.5em;line-height:.95em;}
+tt {font-size:11pt;font-family:monospace;}
+.indexHeader {
+  font-size:96%;
+  line-height:.8em;}
+.jdiffIndex td {
+  font-size:96%;
+  xline-height:.8em;
+  padding:2px;
+  padding-left:1em;}
+.indexText {
+  font-size:100%;
+  padding-left:1em;}
+#indexTableCaption {
+  font-size:96%;
+  margin-top:.25em;
+  margin-bottom:0;
+  }
+.hiddenlink {
+  font-size:96%;
+  line-height:.8em;
+  text-decoration:none;}
+a {
+  text-decoration:none;}
+a:hover {
+  text-decoration:underline;}
+.indexBox {
+  border: 1px solid red;
+  margin:1em 0 0 0;}
+.letterIndexHead {
+  font-size: 1.5em;font-weight:9;
+  margin:0 0 0em 0;
+  border: 1px solid red;}
diff --git a/docs/html/sdk/terms.jd b/docs/html/sdk/terms.jd
index 74e5254..149c243 100644
--- a/docs/html/sdk/terms.jd
+++ b/docs/html/sdk/terms.jd
@@ -11,45 +11,47 @@
 This is the Android Software Development Kit License Agreement
 
 <h3>1. Introduction</h3>
-1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
 
-1.2 “Android” means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
 
-1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
 
 
 <h3>2. Accepting this License Agreement</h3>
-2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use the SDK if you do not accept this License Agreement.
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
 
-2.2 By clicking to accept, you hereby agree to the terms of this License Agreement.
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
 
-2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK.
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
 
-2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
 
 
 <h3>3. SDK License from Google</h3>
-3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the SDK solely to develop applications to run on the Android platform.
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
 
-3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
 
-3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
 
-3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK.
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
 
-3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement.
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
 
 3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
 
-3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
 
 3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
 
 
 <h3>4. Use of the SDK by You</h3>
-4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
 
-4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
 
 4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
 
@@ -57,7 +59,7 @@
 
 4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
 
-4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
 
 
 <h3>5. Your Developer Credentials</h3>
@@ -75,7 +77,7 @@
 
 7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
 
-7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties.
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
 
 
 <h3>8. Using Android APIs</h3>
@@ -87,17 +89,17 @@
 
 
 <h3>9. Terminating this License Agreement</h3>
-9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below.
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
 
-9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
 
-9.3 Google may at any time, terminate this License Agreement with you if:
-(A) you have breached any provision of this License Agreement; or
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
 (B) Google is required to do so by law; or
 (C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
 (D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
 
-9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
 
 
 <h3>10. DISCLAIMER OF WARRANTIES</h3>
@@ -113,7 +115,7 @@
 
 
 <h3>12. Indemnification</h3>
-12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement.
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
 
 
 <h3>13. Changes to the License Agreement</h3>
@@ -121,22 +123,22 @@
 
 
 <h3>14. General Legal Terms</h3>
-14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
 
-14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
 
-14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of this License Agreement is invalid, then that provision will be removed from this License Agreement without affecting the rest of this License Agreement. The remaining provisions of this License Agreement will continue to be valid and enforceable.
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
 
-14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to this License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of this License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to this License Agreement.
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
 
 14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
 
-14.6 The rights granted in this License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under this License Agreement without the prior written approval of the other party.
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
 
-14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
 
 
-<em>November 13, 2012</em>
+<em>November 20, 2015</em>
 </div>
 
 </div>
\ No newline at end of file
diff --git a/docs/html/sdk/terms_body.html b/docs/html/sdk/terms_body.html
index 35e1655..95404f3 100644
--- a/docs/html/sdk/terms_body.html
+++ b/docs/html/sdk/terms_body.html
@@ -1,337 +1,408 @@
 
 
- 
-<p>This is the Android Software Development Kit License Agreement.</p> 
- 
-<h2> 
-	1. Introduction
-</h2> 
-<p> 
-	1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK"
-and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is
-licensed to you subject to the terms of this License Agreement. This License Agreement forms a
-legally binding contract between you and Google in relation to your use of the SDK.
- 
-</p> 
-<p> 
-	1.2 "Google" means Google Inc., a Delaware corporation with principal place of business at
-1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
-</p> 
-<h2> 
-	2. Accepting this License Agreement
-</h2> 
-<p> 
-	2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use
-the SDK if you do not accept this License Agreement.
-</p> 
-<p> 
-	2.2 You can accept this License Agreement by:
-</p> 
-<p> 
-	(A) clicking to accept or agree to this License Agreement, where this option is made
-available to you; or
-</p> 
-<p> 
-	(B) by actually using the SDK. In this case, you agree that use of the SDK constitutes
-acceptance of the Licensing Agreement from that point onwards.
-</p> 
-<p> 
-	2.3 You may not use the SDK and may not accept the Licensing Agreement if you are a person
-barred from receiving the SDK under the laws of the United States or other countries including the
-country in which you are resident or from which you use the SDK.
-</p> 
-<p> 
-	2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or
-other entity, you represent and warrant that you have full legal authority to bind your employer or
-such entity to this License Agreement. If you do not have the requisite authority, you may not
-accept the Licensing Agreement or use the SDK on behalf of your employer or other entity.
-</p> 
-<h2> 
-	3. SDK License from Google
-</h2> 
-<p> 
-	3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide,
-royalty-free, non- assignable and non-exclusive license to use the SDK solely to develop
-applications to run on the Android platform.
-</p> 
-<p> 
-	3.2 You agree that Google or third parties own all legal right, title and interest in and to
-the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property
-Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law,
-and any and all other proprietary rights. Google reserves all rights not expressly granted to you. 
- 
-</p> 
-<p> 
-	3.3 Except to the extent required by applicable third party licenses, you may not copy
-(except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble,
-or create derivative works of the SDK or any part of the SDK. Except to the extent required by
-applicable third party licenses, you may not load any part of the SDK onto a mobile handset or any
-other hardware device except a personal computer, combine any part of the SDK with other software,
-or distribute any software or device incorporating a part of the SDK. 
-</p> 
-<p> 
-	3.4 Use, reproduction and distribution of components of the SDK licensed under an open
-source software license are governed solely by the terms of that open source software license and
-not this License Agreement.
-</p> 
-<p> 
-	3.5 You agree that the form and nature of the SDK that Google provides may change without
-prior notice to you and that future versions of the SDK may be incompatible with applications
-developed on previous versions of the SDK. You agree that Google may stop (permanently or
-temporarily) providing the SDK (or any features within the SDK) to you or to users generally at
-Google's sole discretion, without prior notice to you.
-</p> 
-<p> 
-	3.6 Nothing in this License Agreement gives you a right to use any of Google's trade names,
-trademarks, service marks, logos, domain names, or other distinctive brand features.
-</p> 
-<p> 
-	3.7 You agree that you will not remove, obscure, or alter any proprietary rights notices
-(including copyright and trademark notices) that may be affixed to or contained within the SDK.
-</p> 
-<h2> 
-	4. Use of the SDK by You
-</h2> 
-<p> 
-	4.1 Google agrees that it obtains no right, title or interest from you (or your licensors)
-under this License Agreement in or to any software applications that you develop using the SDK,
-including any intellectual property rights that subsist in those applications. 
-</p> 
-<p> 
-	4.2 You agree to use the SDK and write applications only for purposes that are permitted by
-(a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or
-guidelines in the relevant jurisdictions (including any laws regarding the export of data or
-software to and from the United States or other relevant countries).
-</p> 
-<p> 
-	4.3 You agree that if you use the SDK to develop applications for general public users, you
-will protect the privacy and legal rights of those users. If the users provide you with user names,
-passwords, or other login information or personal information, your must make the users aware that
-the information will be available to your application, and you must provide legally adequate privacy
-notice and protection for those users. If your application stores personal or sensitive information
-provided by users, it must do so securely. If the user provides your application with Google Account
-information, your application may only use that information to access the user's Google Account
-when, and for the limited purposes for which, the user has given you permission to do so.
-</p> 
-<p> 
-	4.4 You agree that you will not engage in any activity with the SDK, including the
-development or distribution of an application, that interferes with, disrupts, damages, or accesses
-in an unauthorized manner the servers, networks, or other properties or services of any third party
-including, but not limited to, Google or any mobile communications carrier.
-</p> 
-<p> 
-	4.5 You agree that you are solely responsible for (and that Google has no responsibility to
-you or to any third party for) any data, content, or resources that you create, transmit or display
-through the Android platform and/or applications for the Android platform, and for the consequences
-of your actions (including any loss or damage which Google may suffer) by doing so.
-</p> 
-<p> 
-	4.6 You agree that you are solely responsible for (and that Google has no responsibility to
-you or to any third party for) any breach of your obligations under this License Agreement, any
-applicable third party contract or Terms of Service, or any applicable law or regulation, and for
-the consequences (including any loss or damage which Google or any third party may suffer) of any
-such breach.
-</p> 
-<h2> 
-	5. Your Developer Credentials
-</h2> 
-<p> 
-	5.1 You agree that you are responsible for maintaining the confidentiality of any developer
-credentials that may be issued to you by Google or which you may choose yourself and that you will
-be solely responsible for all applications that are developed under your developer credentials.
-</p> 
-<h2> 
-	6. Privacy and Information
-</h2> 
-<p> 
-	6.1 In order to continually innovate and improve the SDK, Google may collect certain usage
-statistics from the software including but not limited to a unique identifier, associated IP
-address, version number of the software, and information on which tools and/or services in the SDK
-are being used and how they are being used. Before any of this information is collected, the SDK
-will notify you and seek your consent. If you withhold consent, the information will not be
-collected.
-</p> 
-<p> 
-	6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in
-accordance with Google's Privacy Policy.
-</p> 
-<h2> 
-	7. Third Party Applications for the Android Platform
-</h2> 
-<p> 
-	7.1 If you use the SDK to run applications developed by a third party or that access data,
-content or resources provided by a third party, you agree that Google is not responsible for those
-applications, data, content, or resources. You understand that all data, content or resources which
-you may access through such third party applications are the sole responsibility of the person from
-which they originated and that Google is not liable for any loss or damage that you may experience
-as a result of the use or access of any of those third party applications, data, content, or
-resources.
-</p> 
-<p> 
-	7.2 You should be aware the data, content, and resources presented to you through such a
-third party application may be protected by intellectual property rights which are owned by the
-providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan,
-sell, distribute or create derivative works based on these data, content, or resources (either in
-whole or in part) unless you have been specifically given permission to do so by the relevant
-owners.
-</p> 
-<p> 
-	7.3 You acknowledge that your use of such third party applications, data, content, or
-resources may be subject to separate terms between you and the relevant third party. In that case,
-this License Agreement does not affect your legal relationship with these third parties.
-</p> 
-<h2> 
-	8. Using Android APIs
-</h2> 
-<p> 
-	8.1 Google Data APIs
-</p> 
-<p> 
-	8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be
-protected by intellectual property rights which are owned by Google or those parties that provide
-the data (or by other persons or companies on their behalf). Your use of any such API may be subject
-to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create
-derivative works based on this data (either in whole or in part) unless allowed by the relevant
-Terms of Service.
-</p> 
-<p> 
-	8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree
-that you shall retrieve data only with the user's explicit consent and only when, and for the
-limited purposes for which, the user has given you permission to do so. 
- 
-</p> 
-<h2> 
-	9. Terminating this License Agreement
-</h2> 
-<p> 
-	9.1 This License Agreement will continue to apply until terminated by either you or Google
-as set out below.
-</p> 
-<p> 
-	9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of
-the SDK and any relevant developer credentials.
-</p> 
-<p> 
-	9.3 Google may at any time, terminate this License Agreement with you if:
-</p> 
-<p> 
-	(A) you have breached any provision of this License Agreement; or
-</p> 
-<p> 
-	(B) Google is required to do so by law; or
-</p> 
-<p> 
-	(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has
-terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
-</p> 
-<p> 
-	(D) Google decides to no longer providing the SDK or certain parts of the SDK to users in
-the country in which you are resident or from which you use the service, or the provision of the SDK
-or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially
-viable.
-</p> 
-<p> 
-	9.4 When this License Agreement comes to an end, all of the legal rights, obligations and
-liabilities that you and Google have benefited from, been subject to (or which have accrued over
-time whilst this License Agreement has been in force) or which are expressed to continue
-indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall
-continue to apply to such rights, obligations and liabilities indefinitely.
-</p> 
-<h2> 
-	10. DISCLAIMER OF WARRANTIES
-</h2> 
-<p> 
-	10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND
-THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
-</p> 
-<p> 
-	10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE
-OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR
-COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
-</p> 
-<p> 
-	10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER
-EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
-</p> 
-<h2> 
-	11. LIMITATION OF LIABILITY
-</h2> 
-<p> 
-	11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND
-ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY
-LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN
-AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
-</p> 
-<h2> 
-	12. Indemnification
-</h2> 
-<p> 
-	12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold
-harmless Google, its affiliates and their respective directors, officers, employees and agents from
-and against any and all claims, actions, suits or proceedings, as well as any and all losses,
-liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or
-accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any
-copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any
-person or defames any person or violates their rights of publicity or privacy, and (c) any
-non-compliance by you with this License Agreement.
-</p> 
-<h2> 
-	13. Changes to the License Agreement
-</h2> 
-<p> 
-	13.1 Google may make changes to the License Agreement as it distributes new versions of the
-SDK. When these changes are made, Google will make a new version of the License Agreement available
-on the website where the SDK is made available.
-</p> 
-<h2> 
-	14. General Legal Terms
-</h2> 
-<p> 
-	14.1 This License Agreement constitute the whole legal agreement between you and Google and
-govern your use of the SDK (excluding any services which Google may provide to you under a separate
-written agreement), and completely replace any prior agreements between you and Google in relation
-to the SDK.
-</p> 
-<p> 
-	14.2 You agree that if Google does not exercise or enforce any legal right or remedy which
-is contained in this License Agreement (or which Google has the benefit of under any applicable
-law), this will not be taken to be a formal waiver of Google's rights and that those rights or
-remedies will still be available to Google.
-</p> 
-<p> 
-	14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any
-provision of this License Agreement is invalid, then that provision will be removed from this
-License Agreement without affecting the rest of this License Agreement. The remaining provisions of
-this License Agreement will continue to be valid and enforceable.
-</p> 
-<p> 
-	14.4 You acknowledge and agree that each member of the group of companies of which Google is
-the parent shall be third party beneficiaries to this License Agreement and that such other
-companies shall be entitled to directly enforce, and rely upon, any provision of this License
-Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person
-or company shall be third party beneficiaries to this License Agreement.
-</p> 
-<p> 
-	14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS.
-YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE
-SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
-</p> 
-<p> 
-	14.6 The rights granted in this License Agreement may not be assigned or transferred by
-either you or Google without the prior written approval of the other party. Neither you nor Google
-shall be permitted to delegate their responsibilities or obligations under this License Agreement
-without the prior written approval of the other party.
-</p> 
-<p> 
-	14.7 This License Agreement, and your relationship with Google under this License Agreement,
-shall be governed by the laws of the State of California without regard to its conflict of laws
-provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located
-within the county of Santa Clara, California to resolve any legal matter arising from this License
-Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for
-injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
-</p> 
-<p> 
-	<em>April 10, 2009</em> 
-</p> 
\ No newline at end of file
+
+<p>This is the Android Software Development Kit License Agreement.</p>
+
+<h2>
+  1. Introduction
+</h2>
+
+<p>
+  1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and
+  specifically including the Android system files, packaged APIs, and Google APIs add-ons) is
+  licensed to you subject to the terms of the License Agreement. The License Agreement forms a
+  legally binding contract between you and Google in relation to your use of the SDK.
+</p>
+
+<p>
+  1.2 "Android" means the Android software stack for devices, as made available under the Android
+  Open Source Project, which is located at the following URL: http://source.android.com/, as
+  updated from time to time.
+</p>
+
+<p>
+  1.3 A "compatible implementation" means any Android device that (i) complies with the Android
+  Compatibility Definition document, which can be found at the Android compatibility website
+  (http://source.android.com/compatibility) and which may be updated from time to time; and (ii)
+  successfully passes the Android Compatibility Test Suite (CTS).
+</p>
+
+<p>
+  1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600
+  Amphitheatre Parkway, Mountain View, CA 94043, United States.
+</p>
+
+<h2>
+  2. Accepting this License Agreement
+</h2>
+
+<p>
+  2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the
+  SDK if you do not accept the License Agreement.
+</p>
+
+<p>
+  2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
+</p>
+
+<p>
+  2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred
+  from receiving the SDK under the laws of the United States or other countries, including the
+  country in which you are resident or from which you use the SDK.
+</p>
+
+<p>
+  2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other
+  entity, you represent and warrant that you have full legal authority to bind your employer or
+  such entity to the License Agreement. If you do not have the requisite authority, you may not
+  accept the License Agreement or use the SDK on behalf of your employer or other entity.
+</p>
+
+<h2>
+  3. SDK License from Google
+</h2>
+
+<p>
+  3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide,
+  royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely
+  to develop applications for compatible implementations of Android.
+</p>
+
+<p>
+  3.2 You may not use this SDK to develop applications for other platforms (including
+  non-compatible implementations of Android) or to develop another SDK. You are of course free to
+  develop applications for other platforms, including non-compatible implementations of Android,
+  provided that this SDK is not used for that purpose.
+</p>
+
+<p>
+  3.3 You agree that Google or third parties own all legal right, title and interest in and to the
+  SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property
+  Rights" means any and all rights under patent law, copyright law, trade secret law, trademark
+  law, and any and all other proprietary rights. Google reserves all rights not expressly granted
+  to you.
+</p>
+
+<p>
+  3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.
+  Except to the extent required by applicable third party licenses, you may not: (a) copy (except
+  for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or
+  create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a
+  mobile handset or any other hardware device except a personal computer, combine any part of the
+  SDK with other software, or distribute any software or device incorporating a part of the SDK.
+</p>
+
+<p>
+  3.5 Use, reproduction and distribution of components of the SDK licensed under an open source
+  software license are governed solely by the terms of that open source software license and not
+  the License Agreement.
+</p>
+
+<p>
+  3.6 You agree that the form and nature of the SDK that Google provides may change without prior
+  notice to you and that future versions of the SDK may be incompatible with applications developed
+  on previous versions of the SDK. You agree that Google may stop (permanently or temporarily)
+  providing the SDK (or any features within the SDK) to you or to users generally at Google's sole
+  discretion, without prior notice to you.
+</p>
+
+<p>
+  3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names,
+  trademarks, service marks, logos, domain names, or other distinctive brand features.
+</p>
+
+<p>
+  3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices
+  (including copyright and trademark notices) that may be affixed to or contained within the SDK.
+</p>
+
+<h2>
+  4. Use of the SDK by You
+</h2>
+
+<p>
+  4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under
+  the License Agreement in or to any software applications that you develop using the SDK,
+  including any intellectual property rights that subsist in those applications.
+</p>
+
+<p>
+  4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a)
+  the License Agreement and (b) any applicable law, regulation or generally accepted practices or
+  guidelines in the relevant jurisdictions (including any laws regarding the export of data or
+  software to and from the United States or other relevant countries).
+</p>
+
+<p>
+  4.3 You agree that if you use the SDK to develop applications for general public users, you will
+  protect the privacy and legal rights of those users. If the users provide you with user names,
+  passwords, or other login information or personal information, you must make the users aware that
+  the information will be available to your application, and you must provide legally adequate
+  privacy notice and protection for those users. If your application stores personal or sensitive
+  information provided by users, it must do so securely. If the user provides your application with
+  Google Account information, your application may only use that information to access the user's
+  Google Account when, and for the limited purposes for which, the user has given you permission to
+  do so.
+</p>
+
+<p>
+  4.4 You agree that you will not engage in any activity with the SDK, including the development or
+  distribution of an application, that interferes with, disrupts, damages, or accesses in an
+  unauthorized manner the servers, networks, or other properties or services of any third party
+  including, but not limited to, Google or any mobile communications carrier.
+</p>
+
+<p>
+  4.5 You agree that you are solely responsible for (and that Google has no responsibility to you
+  or to any third party for) any data, content, or resources that you create, transmit or display
+  through Android and/or applications for Android, and for the consequences of your actions
+  (including any loss or damage which Google may suffer) by doing so.
+</p>
+
+<p>
+  4.6 You agree that you are solely responsible for (and that Google has no responsibility to you
+  or to any third party for) any breach of your obligations under the License Agreement, any
+  applicable third party contract or Terms of Service, or any applicable law or regulation, and for
+  the consequences (including any loss or damage which Google or any third party may suffer) of any
+  such breach.
+</p>
+
+<h2>
+  5. Your Developer Credentials
+</h2>
+
+<p>
+  5.1 You agree that you are responsible for maintaining the confidentiality of any developer
+  credentials that may be issued to you by Google or which you may choose yourself and that you
+  will be solely responsible for all applications that are developed under your developer
+  credentials.
+</p>
+
+<h2>
+  6. Privacy and Information
+</h2>
+
+<p>
+  6.1 In order to continually innovate and improve the SDK, Google may collect certain usage
+  statistics from the software including but not limited to a unique identifier, associated IP
+  address, version number of the software, and information on which tools and/or services in the
+  SDK are being used and how they are being used. Before any of this information is collected, the
+  SDK will notify you and seek your consent. If you withhold consent, the information will not be
+  collected.
+</p>
+
+<p>
+  6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in
+  accordance with Google's Privacy Policy.
+</p>
+
+<h2>
+  7. Third Party Applications
+</h2>
+
+<p>
+  7.1 If you use the SDK to run applications developed by a third party or that access data,
+  content or resources provided by a third party, you agree that Google is not responsible for
+  those applications, data, content, or resources. You understand that all data, content or
+  resources which you may access through such third party applications are the sole responsibility
+  of the person from which they originated and that Google is not liable for any loss or damage
+  that you may experience as a result of the use or access of any of those third party
+  applications, data, content, or resources.
+</p>
+
+<p>
+  7.2 You should be aware the data, content, and resources presented to you through such a third
+  party application may be protected by intellectual property rights which are owned by the
+  providers (or by other persons or companies on their behalf). You may not modify, rent, lease,
+  loan, sell, distribute or create derivative works based on these data, content, or resources
+  (either in whole or in part) unless you have been specifically given permission to do so by the
+  relevant owners.
+</p>
+
+<p>
+  7.3 You acknowledge that your use of such third party applications, data, content, or resources
+  may be subject to separate terms between you and the relevant third party. In that case, the
+  License Agreement does not affect your legal relationship with these third parties.
+</p>
+
+<h2>
+  8. Using Android APIs
+</h2>
+
+<p>
+  8.1 Google Data APIs
+</p>
+
+<p>
+  8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be
+  protected by intellectual property rights which are owned by Google or those parties that provide
+  the data (or by other persons or companies on their behalf). Your use of any such API may be
+  subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute
+  or create derivative works based on this data (either in whole or in part) unless allowed by the
+  relevant Terms of Service.
+</p>
+
+<p>
+  8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that
+  you shall retrieve data only with the user's explicit consent and only when, and for the limited
+  purposes for which, the user has given you permission to do so.
+</p>
+
+<h2>
+  9. Terminating this License Agreement
+</h2>
+
+<p>
+  9.1 The License Agreement will continue to apply until terminated by either you or Google as set
+  out below.
+</p>
+
+<p>
+  9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK
+  and any relevant developer credentials.
+</p>
+
+<p>
+  9.3 Google may at any time, terminate the License Agreement with you if:
+</p>
+
+<p>
+  (A) you have breached any provision of the License Agreement; or
+</p>
+
+<p>
+  (B) Google is required to do so by law; or
+</p>
+
+<p>
+  (C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has
+  terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
+</p>
+
+<p>
+  (D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the
+  country in which you are resident or from which you use the service, or the provision of the SDK
+  or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially
+  viable.
+</p>
+
+<p>
+  9.4 When the License Agreement comes to an end, all of the legal rights, obligations and
+  liabilities that you and Google have benefited from, been subject to (or which have accrued over
+  time whilst the License Agreement has been in force) or which are expressed to continue
+  indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall
+  continue to apply to such rights, obligations and liabilities indefinitely.
+</p>
+
+<h2>
+  10. DISCLAIMER OF WARRANTIES
+</h2>
+
+<p>
+  10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT
+  THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+</p>
+
+<p>
+  10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE
+  SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR
+  COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
+</p>
+
+<p>
+  10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER
+  EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF
+  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+</p>
+
+<h2>
+  11. LIMITATION OF LIABILITY
+</h2>
+
+<p>
+  11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS
+  LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT,
+  INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING
+  ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD
+  HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+</p>
+
+<h2>
+  12. Indemnification
+</h2>
+
+<p>
+  12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless
+  Google, its affiliates and their respective directors, officers, employees and agents from and
+  against any and all claims, actions, suits or proceedings, as well as any and all losses,
+  liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or
+  accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes
+  any copyright, trademark, trade secret, trade dress, patent or other intellectual property right
+  of any person or defames any person or violates their rights of publicity or privacy, and (c) any
+  non-compliance by you with the License Agreement.
+</p>
+
+<h2>
+  13. Changes to the License Agreement
+</h2>
+13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK.
+When these changes are made, Google will make a new version of the License Agreement available on
+the website where the SDK is made available.
+<h2>
+  14. General Legal Terms
+</h2>
+
+<p>
+  14.1 The License Agreement constitutes the whole legal agreement between you and Google and
+  governs your use of the SDK (excluding any services which Google may provide to you under a
+  separate written agreement), and completely replaces any prior agreements between you and Google
+  in relation to the SDK.
+</p>
+
+<p>
+  14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is
+  contained in the License Agreement (or which Google has the benefit of under any applicable law),
+  this will not be taken to be a formal waiver of Google's rights and that those rights or remedies
+  will still be available to Google.
+</p>
+
+<p>
+  14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any
+  provision of the License Agreement is invalid, then that provision will be removed from the
+  License Agreement without affecting the rest of the License Agreement. The remaining provisions
+  of the License Agreement will continue to be valid and enforceable.
+</p>
+
+<p>
+  14.4 You acknowledge and agree that each member of the group of companies of which Google is the
+  parent shall be third party beneficiaries to the License Agreement and that such other companies
+  shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that
+  confers a benefit on (or rights in favor of) them. Other than this, no other person or company
+  shall be third party beneficiaries to the License Agreement.
+</p>
+
+<p>
+  14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU
+  MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE
+  SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+</p>
+
+<p>
+  14.6 The rights granted in the License Agreement may not be assigned or transferred by either you
+  or Google without the prior written approval of the other party. Neither you nor Google shall be
+  permitted to delegate their responsibilities or obligations under the License Agreement without
+  the prior written approval of the other party.
+</p>
+
+<p>
+  14.7 The License Agreement, and your relationship with Google under the License Agreement, shall
+  be governed by the laws of the State of California without regard to its conflict of laws
+  provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located
+  within the county of Santa Clara, California to resolve any legal matter arising from the License
+  Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for
+  injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+</p>
+
+<p>
+  <em>November 20, 2015</em>
+</p>
\ No newline at end of file
diff --git a/docs/html/sdk/win-usb.jd b/docs/html/sdk/win-usb.jd
index c287a0c..d4948eb 100644
--- a/docs/html/sdk/win-usb.jd
+++ b/docs/html/sdk/win-usb.jd
@@ -19,45 +19,47 @@
 This is the Android Software Development Kit License Agreement
 
 <h3>1. Introduction</h3>
-1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
+1.1 The Android Software Development Kit (referred to in the License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
 
 1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
 
-1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
 
 
 <h3>2. Accepting this License Agreement</h3>
-2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use the SDK if you do not accept this License Agreement.
+2.1 In order to use the SDK, you must first agree to the License Agreement. You may not use the SDK if you do not accept the License Agreement.
 
-2.2 By clicking to accept, you hereby agree to the terms of this License Agreement.
+2.2 By clicking to accept, you hereby agree to the terms of the License Agreement.
 
-2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK.
+2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries, including the country in which you are resident or from which you use the SDK.
 
-2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
+2.4 If you are agreeing to be bound by the License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
 
 
 <h3>3. SDK License from Google</h3>
-3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the SDK solely to develop applications to run on the Android platform.
+3.1 Subject to the terms of the License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the SDK solely to develop applications for compatible implementations of Android.
 
-3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.
 
-3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
+3.3 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
 
-3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK.
+3.4 You may not use the SDK for any purpose not expressly permitted by the License Agreement.  Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
 
-3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement.
+3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement.
 
 3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
 
-3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
 
 3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
 
 
 <h3>4. Use of the SDK by You</h3>
-4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
+4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
 
-4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) the License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
 
 4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
 
@@ -65,7 +67,7 @@
 
 4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
 
-4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
 
 
 <h3>5. Your Developer Credentials</h3>
@@ -83,7 +85,7 @@
 
 7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
 
-7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties.
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, the License Agreement does not affect your legal relationship with these third parties.
 
 
 <h3>8. Using Android APIs</h3>
@@ -95,17 +97,17 @@
 
 
 <h3>9. Terminating this License Agreement</h3>
-9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below.
+9.1 The License Agreement will continue to apply until terminated by either you or Google as set out below.
 
-9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
 
-9.3 Google may at any time, terminate this License Agreement with you if:
-(A) you have breached any provision of this License Agreement; or
+9.3 Google may at any time, terminate the License Agreement with you if:
+(A) you have breached any provision of the License Agreement; or
 (B) Google is required to do so by law; or
 (C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
 (D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
 
-9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
+9.4 When the License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst the License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
 
 
 <h3>10. DISCLAIMER OF WARRANTIES</h3>
@@ -121,7 +123,7 @@
 
 
 <h3>12. Indemnification</h3>
-12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement.
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with the License Agreement.
 
 
 <h3>13. Changes to the License Agreement</h3>
@@ -129,22 +131,21 @@
 
 
 <h3>14. General Legal Terms</h3>
-14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
+14.1 The License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
 
-14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
 
-14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of this License Agreement is invalid, then that provision will be removed from this License Agreement without affecting the rest of this License Agreement. The remaining provisions of this License Agreement will continue to be valid and enforceable.
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
 
-14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to this License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of this License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to this License Agreement.
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
 
 14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
 
-14.6 The rights granted in this License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under this License Agreement without the prior written approval of the other party.
+14.6 The rights granted in the License Agreement may not be assigned or transferred by either you or Google without the prior written approval of the other party. Neither you nor Google shall be permitted to delegate their responsibilities or obligations under the License Agreement without the prior written approval of the other party.
 
-14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
 
-
-<em>November 13, 2012</em>
+<em>November 20, 2015</em>
 </div><!-- thin wrapper around tos doc -->
 
 
@@ -153,7 +154,7 @@
 <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
 <label id="agreeLabel" for="agree">I have read and agree with the above terms and conditions</label>
 </p>
-<p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+<p><a href="" class="dac-button dac-raised dac-primary disabled ndk" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
 </div>
 
 
diff --git a/docs/html/support.jd b/docs/html/support.jd
index 94d6478..0d87961 100644
--- a/docs/html/support.jd
+++ b/docs/html/support.jd
@@ -1,8 +1,7 @@
-page.title=Developer Support
+page.title=Developer Support Resources
 page.type=about
 fullpage=1
-page.metaDescription=Resources available to help you report and resolve issues while you are developing apps for Android.
-page.image=/images/android-support-card.png
+page.metaDescription=Links to community and support resources for Android developers.
 
 @jd:body
 
@@ -42,8 +41,6 @@
   <p>
     <a href="http://code.google.com/p/android/issues/entry?template=Developer%20Documentation">
       Report documentation bug</a><br />
-    <a href="https://code.google.com/p/android/issues/entry?template=User%20bug%20report">
-      Report device bug</a><br />
     <a href="https://code.google.com/p/android/issues/entry?template=Developer%20bug%20report">
       Report platform bug</a><br />
   </p>
diff --git a/docs/html/tools/_book.yaml b/docs/html/tools/_book.yaml
new file mode 100644
index 0000000..1006e6a
--- /dev/null
+++ b/docs/html/tools/_book.yaml
@@ -0,0 +1,280 @@
+toc:
+- title: Download
+  path: /sdk/index.html
+  section:
+  - title: Installing the SDK
+    path: /sdk/installing/index.html
+  - title: Adding SDK Packages
+    path: /sdk/installing/adding-packages.html
+
+- title: Workflow
+  path: /tools/workflow/index.html
+  section:
+  - title: Projects
+    path: /tools/projects/index.html
+  - title: Build and Run
+    path: /tools/building/index.html
+  - title: Virtual Devices
+    path: /tools/devices/index.html
+  - title: Hardware Devices
+    path: /tools/device.html
+    section:
+    - title: USB Drivers
+      path: /tools/extras/oem-usb.html
+  - title: Testing
+    path: /tools/testing/index.html
+  - title: Debugging
+    path: /tools/debugging/index.html
+  - title: Publishing
+    path: /tools/publishing/publishing_overview.html
+    custom_link_attributes:
+    - zh-cn-lang="发布概述"
+    section:
+    - title: Preparing for Release
+      path: /tools/publishing/preparing.html
+      custom_link_attributes:
+      - zh-cn-lang="准备发布"
+    - title: Versioning Your Apps
+      path: /tools/publishing/versioning.html
+    - title: Signing Your Apps
+      path: /tools/publishing/app-signing.html
+
+- title: Android Studio
+  path: /tools/studio/index.html
+  section:
+  - title: Features
+    path: /tools/studio/studio-features.html
+  - title: Configuration
+    path: /tools/studio/studio-config.html
+    section:
+    - title: SDK Manager
+      path: /tools/help/sdk-manager.html
+  - title: Project Tools
+    path: /sdk/installing/create-project.html
+    section:
+    - title: Project Structure Management
+      path: /tools/help/project-mgmt.html
+    - title: Using Code Templates
+      path: /tools/projects/templates.html
+    - title: Building and Running
+      path: /tools/building/building-studio.html
+  - title: Code Tools
+    path: /tools/studio/code-tools.html
+    section:
+    - title: Improving Your Code with lint
+      path: /tools/debugging/improving-w-lint.html
+    - title: Improving Code Inspection with Annotations
+      path: /tools/debugging/annotations.html
+    - title: Deep Link and App Indexing API Support
+      path: /tools/help/app-link-indexing.html
+  - title: UI Tools
+    path: /tools/studio/ui-tools.html
+    section:
+    - title: Layout Editor
+      path: /sdk/installing/studio-layout.html
+    - title: Theme Editor
+      path: /tools/help/theme-editor.html
+    - title: Translations Editor
+      path: /tools/help/translations-editor.html
+    - title: Vector Asset Studio
+      path: /tools/help/vector-asset-studio.html
+    - title: Image Asset Studio
+      path: /tools/help/image-asset-studio.html
+  - title: AVD Manager
+    path: /tools/devices/managing-avds.html
+  - title: Debugging Tools
+    path: /tools/debugging/debugging-studio.html
+    section:
+    - title: DDMS
+      path: /tools/debugging/ddms.html
+  - title: Android Monitor
+    path: /tools/help/android-monitor.html
+    section:
+    - title: logcat Monitor
+      path: /tools/help/am-logcat.html
+    - title: Memory Monitor
+      path: /tools/help/am-memory.html
+    - title: CPU Monitor
+      path: /tools/help/am-cpu.html
+    - title: GPU Monitor
+      path: /tools/help/am-gpu.html
+    - title: Network Monitor
+      path: /tools/help/am-network.html
+  - title: Tips and Tricks
+    path: /sdk/installing/studio-tips.html
+  - title: Migrating from Eclipse ADT
+    path: /sdk/installing/migrate.html
+    section:
+    - title: Transition Guide
+      path: /tools/studio/eclipse-transition-guide.html
+
+- title: Tools Help
+  path: /tools/help/index.html
+  section:
+  - title: adb
+    path: /tools/help/adb.html
+  - title: android
+    path: /tools/help/android.html
+    section:
+    - title: Managing AVDs
+      path: /tools/devices/managing-avds-cmdline.html
+    - title: Managing Projects
+      path: /tools/projects/projects-cmdline.html
+  - title: AVD Manager
+    path: /tools/help/avd-manager.html
+  - title: bmgr
+    path: /tools/help/bmgr.html
+  - title: Desktop Head Unit
+    path: /tools/help/desktop-head-unit.html
+  - title: Device Monitor
+    path: /tools/help/monitor.html
+  - title: dmtracedump
+    path: /tools/help/dmtracedump.html
+  - title: Draw 9-Patch
+    path: /tools/help/draw9patch.html
+  - title: etc1tool
+    path: /tools/help/etc1tool.html
+  - title: Hierarchy Viewer
+    path: /tools/help/hierarchy-viewer.html
+    section:
+    - title: Optimizing your UI
+      path: /tools/debugging/debugging-ui.html
+  - title: hprof-conv
+    path: /tools/help/hprof-conv.html
+  - title: jobb
+    path: /tools/help/jobb.html
+  - title: lint
+    path: /tools/help/lint.html
+  - title: logcat
+    path: /tools/help/logcat.html
+    section:
+    - title: Reading and Writing Logs
+      path: /tools/debugging/debugging-log.html
+  - title: mksdcard
+    path: /tools/help/mksdcard.html
+  - title: ProGuard
+    path: /tools/help/proguard.html
+  - title: Tracer for OpenGL ES
+    path: /tools/help/gltracer.html
+  - title: Virtual Device Emulator
+    path: /tools/devices/emulator.html
+    section:
+    - title: Command Reference
+      path: /tools/help/emulator.html
+  - title: zipalign
+    path: /tools/help/zipalign.html
+
+- title: Build System
+  path: /sdk/installing/studio-build.html
+  section:
+  - title: Running Gradle Builds
+    path: /tools/building/building-cmdline.html
+  - title: Configuring Gradle Builds
+    path: /tools/building/configuring-gradle.html
+  - title: Android Plugin for Gradle
+    path: /tools/building/plugin-for-gradle.html
+  - title: Manifest Merging
+    path: /tools/building/manifest-merge.html
+  - title: Apps Over 65K Methods
+    path: /tools/building/multidex.html
+
+- title: Performance Tools
+  path: /tools/performance/index.html
+  section:
+  - title: Overdraw Debugger
+    path: /tools/performance/debug-gpu-overdraw/index.html
+  - title: Rendering Profiler
+    path: /tools/performance/profile-gpu-rendering/index.html
+  - title: Hierarchy Viewer
+    path: /tools/performance/hierarchy-viewer/index.html
+    section:
+    - title: Setup
+      path: /tools/performance/hierarchy-viewer/setup.html
+    - title: Profiling
+      path: /tools/performance/hierarchy-viewer/profiling.html
+  - title: Memory Profilers
+    path: /tools/performance/comparison.html
+    section:
+    - title: Memory Monitor
+      path: /tools/performance/memory-monitor/index.html
+    - title: Heap Viewer
+      path: /tools/performance/heap-viewer/index.html
+    - title: Allocation Tracker
+      path: /tools/performance/allocation-tracker/index.html
+    - title: Investigating Your RAM Usage
+      path: /tools/debugging/debugging-memory.html
+  - title: Traceview
+    path: /tools/debugging/debugging-tracing.html
+    section:
+    - title: Walkthrough
+      path: /tools/performance/traceview/index.html
+    - title: Command Reference
+      path: /tools/help/traceview.html
+  - title: Systrace
+    path: /tools/debugging/systrace.html
+    section:
+    - title: Walkthrough
+      path: /tools/performance/systrace/index.html
+    - title: Command Reference
+      path: /tools/help/systrace.html
+  - title: Battery Profilers
+    path: /tools/performance/batterystats-battery-historian/index.html
+    section:
+    - title: Historian Charts
+      path: /tools/performance/batterystats-battery-historian/charts.html
+
+- title: Testing Tools
+  path: /tools/testing/testing-tools.html
+  section:
+  - title: Testing Concepts
+    path: /tools/testing/testing_android.html
+  - title: Testing Support Library
+    path: /tools/testing-support-library/index.html
+    section:
+    - title: API Reference
+      path: /reference/android/support/test/package-summary.html
+  - title: Testing with Android Studio
+    path: /training/testing/start/index.html
+  - title: Testing from the Command-Line
+    path: /tools/testing/testing_otheride.html
+  - title: monkey
+    path: /tools/help/monkey.html
+  - title: monkeyrunner
+    path: /tools/help/monkeyrunner_concepts.html
+    section:
+    - title: MonkeyDevice
+      path: /tools/help/MonkeyDevice.html
+    - title: MonkeyImage
+      path: /tools/help/MonkeyImage.html
+    - title: MonkeyRunner
+      path: /tools/help/MonkeyRunner.html
+
+- title: Support Library
+  path: /tools/support-library/index.html
+  section:
+  - title: Features
+    path: /tools/support-library/features.html
+  - title: Setup
+    path: /tools/support-library/setup.html
+
+- title: Data Binding Library
+  path: /tools/data-binding/guide.html
+
+- title: Revisions
+  path: /tools/revisions/index.html
+  section:
+  - title: Android Studio
+    path: /tools/revisions/studio.html
+  - title: SDK Tools
+    path: /tools/sdk/tools-notes.html
+  - title: SDK Build Tools
+    path: /tools/revisions/build-tools.html
+  - title: Android Plugin for Gradle
+    path: /tools/revisions/gradle-plugin.html
+  - title: SDK Platforms
+    path: /tools/revisions/platforms.html
+  - title: ADT Plugin
+    path: /tools/sdk/eclipse-adt.html
+
+- title: NDK
+  path: /tools/sdk/ndk/index.html
diff --git a/docs/html/tools/adk/adk.jd b/docs/html/tools/adk/adk.jd
old mode 100644
new mode 100755
index 3f45c3c..d602497
--- a/docs/html/tools/adk/adk.jd
+++ b/docs/html/tools/adk/adk.jd
@@ -299,46 +299,8 @@
   ADK board. The ADK board receives commands such as lighting up the board's LEDs or sends data
   from the board such as joystick movement and temperature readings.</p>
 
-  <p>To install and run the application in Eclipse:</p>
-
-  <ol>
-    <li><a href="http://code.google.com/android/add-ons/google-apis/installing.html">Install the
-    Google APIs API Level 10 add-on library</a>, which includes the Open Accessory library for
-    2.3.4 devices that support accessory mode. This library is also forward compatible with Android
-    3.1 or newer devices that support accessory mode. If you only care about Android 3.1 or newer
-    devices, all you need is API Level 12. For more information on deciding which API level to use,
-    see the <a href="{@docRoot}guide/topics/connectivity/usb/accessory.html#choosing">USB Accessory</a>
-    documentation.</li>
-
-    <li>Click <strong>File &gt; New &gt; Project...</strong>, then select <strong>Android &gt;
-    Android Project</strong></li>
-
-    <li>In the <strong>Project name:</strong> field, type DemoKit.</li>
-
-    <li>Choose <strong>Create project from existing source</strong>, click <strong>Browse</strong>,
-    select the <code>app</code> directory, click <strong>Open</strong> to close that dialog and then
-    click <strong>Finish</strong>.</li>
-
-    <li>For Build Target, select <strong>Google APIs</strong> (Platform 2.3.3, API Level 10).
-
-      <p class="note"><strong>Note:</strong> Even though the add-on is labeled as
-      <strong>2.3.3</strong>, the newest Google API add-on library for API level 10 adds USB Open
-      Accessory API support for 2.3.4 devices.</p>
-    </li>
-
-    <li>Click <strong>Finish</strong>.</li>
-
-    <li>Install the application to your device.</li>
-
-    <li>Connect the ADK board (USB-A) to your Android-powered device (micro-USB). Ensure that the
-    power cable to the accessory is plugged in or that the micro-USB port on the accessory is
-    connected to your computer for power (this also allows you to <a href="#monitoring">monitor the
-    ADK board</a>). When connected, accept the prompt that asks for whether or not to open the
-    DemoKit application to connect to the accessory. If the prompt does not show up, connect and
-    reconnect the accessory.</li>
-  </ol>
-
-  <p>You can now interact with the ADK board by moving the color LED or servo sliders (make sure
+  <p>After the application is installed, you can interact with the ADK board by moving the color
+  LED or servo sliders (make sure
   the servos are connected) or by pressing the relay buttons in the application. On the ADK shield,
   you can press the buttons and move the joystick to see their outputs displayed in the
   application.</p>
diff --git a/docs/html/tools/building/building-cmdline-ant.jd b/docs/html/tools/building/building-cmdline-ant.jd
deleted file mode 100644
index add6ca2..0000000
--- a/docs/html/tools/building/building-cmdline-ant.jd
+++ /dev/null
@@ -1,389 +0,0 @@
-page.title=Building and Running from the Command Line
-parent.title=Building and Running
-parent.link=index.html
-@jd:body
-
- <div id="qv-wrapper">
-    <div id="qv">
-      <h2>In this document</h2>
-      <ol>
-        <li><a href="#DebugMode">Building in Debug Mode</a></li>
-        <li><a href="#ReleaseMode">Building in Release Mode</a>
-          <ol>
-            <li><a href="#ManualReleaseMode">Build unsigned</a></li>
-            <li><a href="#AutoReleaseMode">Build signed and aligned</a></li>
-            <li><a href="#OnceBuilt">Once built and signed in release mode</a></li>
-          </ol>
-        </li>
-        <li><a href="#RunningOnEmulator">Running on the Emulator</a></li>
-        <li><a href="#RunningOnDevice">Running on a Device</a></li>
-        <li><a href="#Signing">Application Signing</a></li>
-        <li><a href="#AntReference">Ant Command Reference</a></li>
-      </ol>
-  <h2>See also</h2>
-  <ol>
-    <li><a href="{@docRoot}tools/devices/managing-avds-cmdline.html">Managing AVDs from
-the Command Line</a></li>
-    <li><a href="{@docRoot}tools/devices/emulator.html">Using the Android
-Emulator</a></li>
-    <li><a href="{@docRoot}tools/publishing/app-signing.html">Signing Your Applications</a></li>
-  </ol>
-    </div>
-  </div>
-
-<p class="caution">
-  <strong>Important:</strong> Support for Ant as a build tool for Android is ending, per our
-  <a href="http://android-developers.blogspot.com/2015/06/an-update-on-eclipse-android-developer.html"
-  class="external-link">announcement</a>. You should migrate your app development projects to
-  Android Studio and Gradle as soon as possible. For more information on transitioning to these
-  tools, see <a href="{@docRoot}sdk/installing/migrate.html">Migrating to Android Studio</a>.
-</p>
-
-  <p>There are two ways to build your application using the Ant build script: one for
-  testing/debugging your application &mdash; <em>debug mode</em> &mdash; and one for building your
-  final package for release &mdash; <em>release mode</em>. Regardless of which way you build your application,
-  it must be signed before it can install on an emulator or device&mdash;with a debug key when building
-  in debug mode and with your own private key when building in release mode.</p>
-
-  <p>Whether you're building in debug mode or release mode, you need to use the Ant tool to compile
-  and build your project. This will create the .apk file that you can install on an emulator or device.
-  When you build in debug mode, the .apk file is automatically signed by the SDK tools with
-  a debug key, so it's instantly ready for installation onto an emulator or attached
-  development device. You cannot distribute an application that is signed with a debug key.
-  When you build in release mode, the .apk file is <em>unsigned</em>, so you
-  must manually sign it with your own private key, using Keytool and Jarsigner.</p>
-
-  <p>It's important that you read and understand <a href=
-  "{@docRoot}tools/publishing/app-signing.html">Signing Your Applications</a>, particularly once
-  you're ready to release your application and share it with end-users. That document describes the
-  procedure for generating a private key and then using it to sign your .apk file. If you're just
-  getting started, however, you can quickly run your applications on an emulator or your own
-  development device by building in debug mode.</p>
-
-  <p>If you don't have Ant, you can obtain it from the <a href="http://ant.apache.org/">Apache Ant
-  home page</a>. Install it and make sure it is in your executable PATH. Before calling Ant, you
-  need to declare the JAVA_HOME environment variable to specify the path to where the JDK is
-  installed.</p>
-
-  <p class="note"><strong>Note:</strong> When installing JDK on Windows, the default is to install
-  in the "Program Files" directory. This location will cause <code>ant</code> to fail, because of
-  the space. To fix the problem, you can specify the JAVA_HOME variable like this:
-  <pre>set JAVA_HOME=c:\Progra~1\Java\&lt;jdkdir&gt;</pre>
-
-  <p>The easiest solution, however, is to install JDK in a non-space directory, for example:</p>
-
-  <pre>c:\java\jdk1.7</pre>
-
-  <h2 id="DebugMode">Building in Debug Mode</h2>
-
-  <p>For immediate application testing and debugging, you can build your application in debug mode
-  and immediately install it on an emulator. In debug mode, the build tools automatically sign your
-  application with a debug key and optimize the package with {@code zipalign}.</p>
-
-  <p>To build in debug mode:</p>
-
-  <ol>
-    <li>Open a command-line and navigate to the root of your project directory.</li>
-    <li>Use Ant to compile your project in debug mode:
-      <pre>
-ant debug
-</pre>
-
-      <p>This creates your debug <code>.apk</code> file inside the project <code>bin/</code> directory, named
-      <code>&lt;your_project_name&gt;-debug.apk</code>. The file is already signed with
-      the debug key and has been aligned with
-      <a href="{@docRoot}tools/help/zipalign.html"><code>zipalign</code></a>.
-      </p>
-    </li>
-  </ol>
-
-  <p>Each time you change a source file or resource, you must run Ant again in order to package up
-  the latest version of the application.</p>
-
-  <p>To install and run your application on an emulator, see the following section about <a href=
-  "#RunningOnEmulator">Running on the Emulator</a>.</p>
-
-  <h2 id="ReleaseMode">Building in Release Mode</h2>
-
-  <p>When you're ready to release and distribute your application to end-users, you must build your
-  application in release mode. Once you have built in release mode, it's a good idea to perform
-  additional testing and debugging with the final .apk.</p>
-
-  <p>Before you start building your application in release mode, be aware that you must sign the
-  resulting application package with your private key, and should then align it using the {@code
-  zipalign} tool. There are two approaches to building in release mode: build an unsigned package
-  in release mode and then manually sign and align the package, or allow the build script to sign
-  and align the package for you.</p>
-
-  <h3 id="ManualReleaseMode">Build unsigned</h3>
-
-  <p>If you build your application <em>unsigned</em>, then you will need to manually sign and align
-  the package.</p>
-
-  <p>To build an <em>unsigned</em> .apk in release mode:</p>
-
-  <ol>
-    <li>Open a command-line and navigate to the root of your project directory.</li>
-
-    <li>Use Ant to compile your project in release mode:
-      <pre>
-ant release
-</pre>
-    </li>
-  </ol>
-
-  <p>This creates your Android application .apk file inside the project <code>bin/</code>
-  directory, named <code><em>&lt;your_project_name&gt;</em>-unsigned.apk</code>.</p>
-
-  <p class="note"><strong>Note:</strong> The .apk file is <em>unsigned</em> at this point and can't
-  be installed until signed with your private key.</p>
-
-  <p>Once you have created the unsigned .apk, your next step is to sign the .apk with your private
-  key and then align it with {@code zipalign}. To complete this procedure, read <a href=
-  "{@docRoot}tools/publishing/app-signing.html">Signing Your Applications</a>.</p>
-
-  <p>When your <code>.apk</code> has been signed and aligned, it's ready to be distributed to end-users.
-  You should test the final build on different devices or AVDs to ensure that it
-  runs properly on different platforms.</p>
-
-  <h3 id="AutoReleaseMode">Build signed and aligned</h3>
-
-  <p>If you would like, you can configure the Android build script to automatically sign and align
-  your application package. To do so, you must provide the path to your keystore and the name of
-  your key alias in your project's {@code ant.properties} file. With this information provided,
-  the build script will prompt you for your keystore and alias password when you build in release
-  mode and produce your final application package, which will be ready for distribution.</p>
-
-  <p class="caution"><strong>Caution:</strong> Due to the way Ant handles input, the password that
-  you enter during the build process <strong>will be visible</strong>. If you are concerned about
-  your keystore and alias password being visible on screen, then you may prefer to perform the
-  application signing manually, via Jarsigner (or a similar tool). To instead perform the signing
-  procedure manually, <a href="#ManualReleaseMode">build unsigned</a> and then continue with
-  <a href="{@docRoot}tools/publishing/app-signing.html">Signing Your Applications</a>.</p>
-
-  <p>To specify your keystore and alias, open the project {@code ant.properties} file (found in
-  the root of the project directory) and add entries for {@code key.store} and {@code key.alias}.
-  For example:</p>
-  <pre>
-key.store=path/to/my.keystore
-key.alias=mykeystore
-</pre>
-
-  <p>Save your changes. Now you can build a <em>signed</em> .apk in release mode:</p>
-
-  <ol>
-    <li>Open a command-line and navigate to the root of your project directory.</li>
-
-    <li>Use Ant to compile your project in release mode:
-      <pre>
-ant release
-</pre>
-    </li>
-
-    <li>When prompted, enter you keystore and alias passwords.
-
-      <p class="caution"><strong>Caution:</strong> As described above, your password will be
-      visible on the screen.</p>
-    </li>
-  </ol>
-
-  <p>This creates your Android application .apk file inside the project <code>bin/</code>
-  directory, named <code><em>&lt;your_project_name&gt;</em>-release.apk</code>. This .apk file has
-  been signed with the private key specified in {@code ant.properties} and aligned with {@code
-  zipalign}. It's ready for installation and distribution.</p>
-
-  <h3 id="OnceBuilt">Once built and signed in release mode</h3>
-
-  <p>Once you have signed your application with a private key, you can install and run it on an
-  <a href="#RunningOnEmulator">emulator</a> or <a href="#RunningOnDevice">device</a>. You can
-  also try installing it onto a device from a web server. Simply upload the signed .apk to a web
-  site, then load the .apk URL in your Android web browser to download the application and begin
-  installation. (On your device, be sure you have enabled
-  <em>Settings &gt; Applications &gt; Unknown sources</em>.)</p>
-
-  <h2 id="RunningOnEmulator">Running on the Emulator</h2>
-
-  <p>Before you can run your application on the Android Emulator, you must <a href=
-  "{@docRoot}tools/devices/managing-avds.html">create an AVD</a>.</p>
-
-  <p>To run your application:</p>
-
-  <ol>
-    <li>
-      <strong>Open the AVD Manager and launch a virtual device</strong>
-
-      <p>From your SDK's <code>platform-tools/</code> directory, execute the {@code android} tool
-with the <code>avd</code> options:</p>
-      <pre>
-android avd
-</pre>
-
-      <p>In the <em>Virtual Devices</em> view, select an AVD and click <strong>Start</strong>.</p>
-    </li>
-
-    <li>
-      <strong>Install your application</strong>
-
-      <p>From your SDK's <code>tools/</code> directory, install the {@code .apk} on the
-      emulator:</p>
-      <pre>
-adb install <em>&lt;path_to_your_bin&gt;</em>.apk
-</pre>
-
-      <p>Your .apk file (signed with either a release or debug key) is in your project {@code bin/}
-      directory after you build your application.</p>
-
-      <p>If there is more than one emulator running, you must specify the emulator upon which to
-      install the application, by its serial number, with the <code>-s</code> option. For
-      example:</p>
-      <pre>
-adb -s emulator-5554 install <em>path/to/your/app</em>.apk
-</pre>
-
-      <p>To see a list of available device serial numbers, execute {@code adb devices}.</p>
-    </li>
-  </ol>
-
-  <p>If you don't see your application on the emulator, try closing the emulator and launching the
-  virtual device again from the AVD Manager. Sometimes when you install an application for the
-  first time, it won't show up in the application launcher or be accessible by other applications.
-  This is because the package manager usually examines manifests completely only on emulator
-  startup.</p>
-
-  <p>Be certain to create multiple AVDs upon which to test your application. You should have one
-  AVD for each platform and screen type with which your application is compatible. For instance, if
-  your application compiles against the Android 4.0 (API Level 14) platform, you should create an
-  AVD for each platform equal to and greater than 4.0 and an AVD for each <a href=
-  "{@docRoot}guide/practices/screens_support.html">screen type</a> you support, then test your
-  application on each one.</p>
-
-  <p class="note"><strong>Tip:</strong> If you have <em>only one</em> emulator running, you can
-  build your application and install it on the emulator in one simple step. Navigate to the root of
-  your project directory and use Ant to compile the project with <em>install mode</em>: <code>ant
-  install</code>. This will build your application, sign it with the debug key, and install it on
-  the currently running emulator.</p>
-
-  <h2 id="RunningOnDevice">Running on a Device</h2>
-
-  <p>Before you can run your application on a device, you must perform some basic setup for your
-  device:</p>
-
-  <ul>
-    <li>Enable <strong>USB debugging</strong> on your device.
-      <ul>
-        <li>On most devices running Android 3.2 or older, you can find the option under
-          <strong>Settings > Applications > Development</strong>.</li>
-        <li>On Android 4.0 and newer, it's in <strong>Settings > Developer options</strong>.
-          <p class="note"><strong>Note:</strong> On Android 4.2 and newer, <strong>Developer
-          options</strong> is hidden by default. To make it available, go
-          to <strong>Settings > About phone</strong> and tap <strong>Build number</strong>
-          seven times. Return to the previous screen to find <strong>Developer options</strong>.</p>
-        </li>
-      </ul>
-    </li>
-
-    <li>Ensure that your development computer can detect your device when connected via USB</li>
-  </ul>
-
-  <p>Read <a href="{@docRoot}tools/device.html#setting-up">Setting up a Device for
-  Development</a> for more information.</p>
-
-  <p>Once your device is set up and connected via USB, navigate to your SDK's <code>platform-tools/</code>
-  directory and install the <code>.apk</code> on the device:</p>
-  <pre>
-adb -d install <em>path/to/your/app</em>.apk
-</pre>
-
-  <p>The {@code -d} flag specifies that you want to use the attached device (in case you also have
-  an emulator running).</p>
-
-  <p>For more information on the tools used above, please see the following documents:</p>
-
-  <ul>
-    <li><a href="{@docRoot}tools/help/android.html">android Tool</a></li>
-
-    <li><a href="{@docRoot}tools/devices/emulator.html">Android Emulator</a></li>
-
-    <li><a href="{@docRoot}tools/help/adb.html">Android Debug Bridge</a> (ADB)</li>
-  </ul>
-
-  <h2 id="Signing">Application Signing</h2>
-
-  <p>As you begin developing Android applications, understand that all Android applications must be
-  digitally signed before the system will install them on an emulator or device. There are two ways
-  to do this: with a <em>debug key</em> (for immediate testing on an emulator or development
-  device) or with a <em>private key</em> (for application distribution).</p>
-
-  <p>The Android build tools help you get started by automatically signing your .apk files with a
-  debug key at build time. This means that you can compile your application and install it on the
-  emulator without having to generate your own private key. However, please note that if you intend
-  to publish your application, you <strong>must</strong> sign the application with your own private
-  key, rather than the debug key generated by the SDK tools.</p>
-
-  <p>The ADT plugin helps you get started quickly by signing your .apk files with a debug key,
-  prior to installing them on an emulator or development device. This means that you can quickly
-  run your application from Eclipse without having to generate your own private key. No specific
-  action on your part is needed, provided ADT has access to Keytool. However, please note that if
-  you intend to publish your application, you <strong>must</strong> sign the application with your
-  own private key, rather than the debug key generated by the SDK tools.</p>
-
-  <p>Please read <a href="{@docRoot}tools/publishing/app-signing.html">Signing Your
-  Applications</a>, which provides a thorough guide to application signing on Android and what it
-  means to you as an Android application developer. The document also includes a guide to exporting
-  and signing your application with the ADT's Export Wizard.</p>
-
-  <h2 id="AntReference">Ant Command Reference</h2>
-  <dt><code>ant clean</code></dt>
-  <dd>Cleans the project. If you include the <code>all</code> target before <code>clean</code>
-(<code>ant all clean</code>), other projects are also cleaned. For instance if you clean a
-test project, the tested project is also cleaned.</dd>
-
-  <dt><code>ant debug</code></dt>
-  <dd>Builds a debug package. Works on application, library, and test projects and compiles
-  dependencies as  needed.</dd>
-
-  <dt id="emma"><code>ant emma debug</code></dt>
-  <dd>Builds a test project while building the tested project with instrumentation turned on.
-  This is used to run tests with code coverage enabled.</dd>
-
-  <dt><code>ant release</code></dt>
-  <dd>Builds a release package.</dd>
-
-  <dt><code>ant instrument</code>
-  </dt>
-  <dd>Builds an instrumented debug package. This is generally called automatically when building a
-  test project with code coverage enabled (with the <code>emma</code>
-  target)</dd>
-
-  <dt><code>ant &lt;build_target&gt; install</code></dt>
-  <dd>Builds and installs a package. Using <code>install</code> by itself fails.</dd>
-
-  <dt><code>ant installd</code></dt>
-  <dd>Installs an already compiled debug package. This fails if the <code>.apk</code> is not
-  already built.</dd>
-
-  <dt><code>ant installr</code></dt>
-  <dd>Installs an already compiled release package. This fails if the <code>.apk</code> is not
-  already built.</dd>
-
-  <dt><code>ant installt</code></dt>
-  <dd>Installs an already compiled test package. Also installs the <code>.apk</code> of the
-  tested application. This fails if the <code>.apk</code> is not already built.</dd>
-
-  <dt><code>ant installi</code></dt>
-  <dd>Installs an already compiled instrumented package. This is generally not used manually as
-  it's called when installing a test package. This fails if the <code>.apk</code> is not already
-  built.</dd>
-
-   <dt><code>ant test</code></dt>
-   <dd>Runs the tests (for test projects). The tested and test <code>.apk</code> files must be
-   previously installed.</dd>
-
-  <dt><code>ant debug installt test</code></dt>
-  <dd>Builds a test project and the tested project, installs both <code>.apk</code> files, and
-  runs the tests.</dd>
-
-  <dt><code>ant emma debug install test</code></dt>
-  <dd>Builds a test project and the tested project, installs both <code>.apk</code> files, and
-  runs the tests with code coverage enabled.</dd>
-
diff --git a/docs/html/tools/building/building-eclipse.jd b/docs/html/tools/building/building-eclipse.jd
deleted file mode 100644
index 89c3e16..0000000
--- a/docs/html/tools/building/building-eclipse.jd
+++ /dev/null
@@ -1,176 +0,0 @@
-page.title=Building and Running from Eclipse with ADT
-parent.title=Building and Running
-parent.link=index.html
-@jd:body
-
-<div id="qv-wrapper">
-    <div id="qv">
-      <h2>In this document</h2>
-
-      <ol>
-        <li><a href="#RunningOnEmulatorEclipse">Running on an Emulator</a></li>
-
-        <li><a href="#RunningOnDeviceEclipse">Running on a Device</a></li>
-
-        <li><a href="#RunConfig">Creating a Run Configuration</a></li>
-      </ol>
-    </div>
-  </div>
-
-  <p>Eclipse and ADT provide an environment where most of the details of the build process are
-  hidden from you. By default, the build process constantly runs in the background as you make
-  changes to your project.</p>
-
-  <p>When Eclipse automatically builds your application, it enables debugging and signs the
-  <code>.apk</code> with a debug key, by default. When you run the application,
-  Eclipse invokes ADB and installs your application to a device or emulator, so you do not have to
-  manually perform these tasks. Since most of the build process is taken care of by Eclipse, the
-  following topics show you how to run an application, which will automatically build your
-  application as well.</p>
-
-  <p>To distribute your application, however, you must build your application in release mode and
-  sign the <code>.apk</code> file with your own private key.</p>
-
-   <p>This document shows you how to run your application on an emulator or a real device
-   from Eclipse&mdash;all of which is done using the debug version of your application.
-   For more information about how to sign your application with a private key for release, see <a href=
-  "{@docRoot}tools/publishing/app-signing.html#ExportWizard">Signing Your Applications</a></p>
-
-  <h2 id="RunningOnEmulatorEclipse">Running on the emulator</h2>
-
-  <p>Before you can run your application on the Android Emulator, you must <a href=
-  "{@docRoot}tools/devices/managing-avds.html">create an AVD</a>.</p>
-
-  <p>To run (or debug) your application, select <strong>Run</strong> &gt; <strong>Run</strong> (or
-  <strong>Run</strong> &gt; <strong>Debug</strong>) from the Eclipse menu bar. The ADT plugin will
-  automatically create a default run configuration for the project. Eclipse will then perform the
-  following:</p>
-
-  <ol>
-    <li>Compile the project (if there have been changes since the last build).</li>
-
-    <li>Create a default run configuration (if one does not already exist for the project).</li>
-
-    <li>Install and start the application on an emulator (or device), based on the Deployment
-    Target defined by the run configuration.
-
-      <p>By default, Android run configurations use an "automatic target" mode for selecting a
-      device target. For information on how automatic target mode selects a deployment target, see
-      <a href="#AutoAndManualTargetModes">Automatic and manual target modes</a> below.</p>
-    </li>
-  </ol>
-
-  <p>If you run the application with the Debug option, the application will start in the "Waiting For Debugger" mode. Once the debugger
-  is attached, Eclipse opens the Debug perspective and starts the application's main activity. Otherwise, if you run the
-  application with the normal Run option, Eclipse installs the application on the device and launches the main activity.</p>
-
-  <p>To set or change the run configuration used for your project, use the run configuration
-  manager. See the section below about <a href="#RunConfig">Creating a Run Configuration</a> for more information.</p>
-
-  <p>Be certain to create multiple AVDs upon which to test your application. You should have one
-  AVD for each platform and screen type with which your application is compatible. For instance, if
-  your application compiles against the Android 4.0 (API Level 14) platform, you should create an
-  AVD for each platform equal to and greater than 4.0 and an AVD for each <a href=
-  "{@docRoot}guide/practices/screens_support.html">screen type</a> you support, then test your
-  application on each one.</p>
-
-  <h2 id="RunningOnDeviceEclipse">Running on a device</h2>
-
-  <p>Before you can run your application on a device, you must perform some basic setup for your
-  device:</p>
-
-  <ul>
-    <li>Ensure that your application is debuggable by setting the
-    <code>android:debuggable</code> attribute of the <code>&lt;application&gt;</code>
-    element to <code>true</code>. As of ADT 8.0, this is done by default when you build in debug mode.</li>
-
-    <li>Enable <strong>USB debugging</strong> on your device.
-      <ul>
-        <li>On most devices running Android 3.2 or older, you can find the option under
-          <strong>Settings > Applications > Development</strong>.</li>
-        <li>On Android 4.0 and newer, it's in <strong>Settings > Developer options</strong>.
-          <p class="note"><strong>Note:</strong> On Android 4.2 and newer, <strong>Developer
-          options</strong> is hidden by default. To make it available, go
-          to <strong>Settings > About phone</strong> and tap <strong>Build number</strong>
-          seven times. Return to the previous screen to find <strong>Developer options</strong>.</p>
-        </li>
-      </ul>
-    </li>
-
-    <li>Ensure that your development computer can detect your device when connected via USB</li>
-  </ul>
-
-  <p>Read <a href="{@docRoot}tools/device.html">Using Hardware Devices</a>
-  for more information.</p>
-
-  <p>Once set up and your device is connected via USB, install your application on the device by
-  selecting <strong>Run</strong> &gt; <strong>Run</strong> (or <strong>Run</strong> &gt;
-  <strong>Debug</strong>) from the Eclipse menu bar.</p>
-
-  <h2 id="RunConfig">Creating a Run Configuration</h2>
-
-  <p>The run configuration specifies the project to run, the Activity to start, the emulator or
-  connected device to use, and so on. When you first run a project as an <em>Android
-  Application</em>, ADT will automatically create a run configuration. The default run
-  configuration will launch the default project Activity and use automatic target mode for device
-  selection (with no preferred AVD). If the default settings don't suit your project, you can
-  customize the run configuration or even create a new one.</p>
-
-  <p>To create or modify a run configuration, refer to the Eclipse documentation on how to create Run configurations.
-  The following steps highlight the important things you need to do for an Android project:</p>
-
-  <ol>
-    <li>Open the run configuration manager from the Run Menu.</li>
-
-    <li>Expand the <strong>Android Application</strong> item and create a new configuration or open
-    an existing one.
-    </li>
-
-    <li>With the Run Configuration selected, adjust your desired run configuration settings:
-      <ul>
-      <li>In the Android tab, specify the Project and Activity to launch.
-      </li>
-      <li><p>In the Target tab, consider whether you'd like to use Manual or Automatic mode when
-      selecting an AVD to run your application. See the following section on <a href=
-      "#AutoAndManualTargetModes">Automatic and manual target modes</a>).</p>
-
-      <p>You can specify any emulator options to the Additional Emulator Command Line Options
-      field. For example, you could add <code>-scale 96dpi</code> to scale the AVD's screen to an
-      accurate size, based on the dpi of your computer monitor. For a full list of emulator
-      options, see the <a href="{@docRoot}tools/help/emulator.html">Android
-      Emulator</a> document.</p>
-      </li>
-      </ul>
-    </li>
-  </ol>
-
-  <h4 id="AutoAndManualTargetModes">Automatic and manual target modes</h4>
-
-  <p>By default, a run configuration uses the <strong>automatic</strong> target mode in order to
-  select an AVD. In this mode, ADT will select an AVD for the application in the following
-  manner:</p>
-
-  <ol>
-    <li>If there's a device or emulator already running and its AVD configuration meets the
-    requirements of the application's build target, the application is installed and run upon
-    it.</li>
-
-    <li>If there's more than one device or emulator running, each of which meets the requirements
-    of the build target, a "device chooser" is shown to let you select which device to use.</li>
-
-    <li>If there are no devices or emulators running that meet the requirements of the build
-    target, ADT looks at the available AVDs. If there is an AVD that matches the build target of the
-    project, ADT chooses that AVD. If the AVD versions are newer than the build target of the project,
-    ADT chooses the oldest possible version of an AVD that meets the project's build target
-    requirement.</li>
-
-    <li>If there are no suitable AVDs, the application is not installed a console error warning tells
-    you that there is no existing AVD that meets the build target requirements.</li>
-  </ol>
-
-  <p>However, if a "preferred AVD" is selected in the run configuration, then the application will
-  <em>always</em> be deployed to that AVD. If it's not already running, then a new emulator will be
-  launched.</p>
-
-  <p>If your run configuration uses <strong>manual</strong> mode, then the "device chooser" is
-  presented every time that your application is run, so that you can select which AVD to use.</p>
diff --git a/docs/html/tools/building/building-studio.jd b/docs/html/tools/building/building-studio.jd
index 4431194..2e3615e 100644
--- a/docs/html/tools/building/building-studio.jd
+++ b/docs/html/tools/building/building-studio.jd
@@ -6,238 +6,182 @@
 <div id="qv-wrapper">
   <div id="qv">
     <h2>In this document</h2>
-  <ol>
-    <li><a href="#buildProject">Building your Project in Android Studio</a>
       <ol>
-        <li><a href="#buildRelease">Build a release version</a> </li>
+        <li><a href="#run-configuration">Changing the run configuration</a> </li>
+        <li><a href="#changing-variant">Changing build variants</a></li>
+        <li><a href="#gradle-console">Monitoring the build process</a></li>
+        <li><a href="#generating-apks">Generating APKs</a></li>
       </ol>
-    </li>
-    <li><a href=id="RunningApp">Running your App</a>
+
+    <h2>See also</h2>
       <ol>
-        <li><a href="#RunConfig">Creating a Run Configuration</a></li>
-        <li><a href="#AutoAndManualTargetModes">Automatic and manual target modes</a></li>
-        <li><a href="#RunningOnEmulatorStudio">Running on an Emulator</a></li>
-        <li><a href="#RunningOnDeviceStudio">Running on a Device</a></li>
+        <li><a href="{@docRoot}sdk/installing/studio-build.html">
+          Build System</a></li>
+        <li><a href="{@docRoot}tools/devices/managing-avds.html">
+          Managing AVDs with AVD Manager</a></li>
+        <li><a href="{@docRoot}tools/devices/emulator.html">
+          Using the Android Emulator</a></li>
+        <li><a href="{@docRoot}tools/device.html">
+          Using Hardware Devices</a></li>
+        <li><a href="{@docRoot}tools/publishing/app-signing.html">
+          Signing Your Applications</a></li>
       </ol>
-    </li>
-  </ol>
-
-  <h2>See also</h2>
-  <ol>
-    <li><a href="{@docRoot}sdk/installing/studio-build.html">
-      Build System</a></li>
-    <li><a href="{@docRoot}tools/devices/managing-avds.html">
-      Managing AVDs with AVD Manager</a></li>
-    <li><a href="{@docRoot}tools/devices/emulator.html">
-      Using the Android Emulator</a></li>
-    <li><a href="{@docRoot}tools/publishing/app-signing.html">
-      Signing Your Applications</a></li>
-  </ol>
-
   </div>
 </div>
 
+<p>
+  By default, Android Studio sets up new projects to deploy to the Emulator or
+  a physical device with just a few clicks.
+</p>
 
-<p>This document shows you how to use Android Studio to build an application <code>.apk</code> for
-testing or release and how to run your application on an emulator or a real device.</p>
+<p>
+  To build and run your app, click <strong>Run 'app'</strong> <img src=
+  "{@docRoot}images/tools/as-run.png" alt="" style=
+  "vertical-align:bottom;margin:0;">. Android Studio builds your app with
+  Gradle, asks you to select a deployment target (an emulator or a connected
+  device), and then deploys your app to it. You can customize some of this
+  default behavior, such as selecting an automatic deployment target, by
+  <a href="#run-configuration">changing the run configuration</a>.
+</p>
 
+<p>
+  If you want to <a href="{@docRoot}tools/devices/emulator.html">use the Android
+  Emulator</a> to run your app, you need to have an Android Virtual Device
+  (AVD) ready. If you haven't already created one, then after you click
+  <strong>Run 'app'</strong>, click <strong>Create New Emulator</strong> in the
+  <strong>Select Deployment Target</strong> dialog. Follow the Virtual Device
+  Configuration wizard to define the type of device you want to emulate. For
+  more information, see <a href=
+  "{@docRoot}tools/devices/managing-avds.html">Managing AVDs with the AVD
+  Manager</a>.
+</p>
 
-<h2 id="buildProject">Build your Project in Android Studio</h2>
+<p>
+  If you're using a physical Android device, you need to enable USB debugging
+  on the device. For more information, see <a href=
+  "{@docRoot}tools/device.html">Using Hardware Devices</a>.
+</p>
 
-<p>To build the project on Android Studio, click <strong>Build</strong> and select
-<strong>Make Project</strong>. The status bar at the bottom of the window shows the current
-progress of the build:</p>
+<p class="note">
+  <strong>Note:</strong> You can also deploy your app in debug mode by clicking
+  <strong>Debug 'app'</strong> <img src=
+  "{@docRoot}images/tools/as-debugbutton.png" alt="" style=
+  "vertical-align:bottom;margin:0;">. Running your app in debug mode
+  allows you to set breakpoints in your code, examine variables and evaluate
+  expressions at run time, and run debugging tools. To learn more, read about
+  <a href="{@docRoot}tools/debugging/debugging-studio.html">Debugging with
+  Android Studio</a>.
+</p>
 
-<p><code>Gradle: Executing tasks: [:app:assembleDebug, :lib:bundleDebug]</code></p>
+<h3 id="run-configuration">
+  Changing the run configuration
+</h3>
 
-<p>Click <img src="{@docRoot}images/tools/as-gradlebutton.png" alt=""
-style="vertical-align:bottom;margin:0;"/> on the bottom
-right part of the window to show the <em>Gradle Console</em>, as shown in figure 1.</p>
+<p>
+  The run configuration specifies the module to run, package to deploy,
+  activity to start, target device, emulator settings, and Logcat options. The
+  default run configuration launches the default project activity and uses the
+  <strong>Device Chooser</strong> for target device selection. If the default
+  settings don't suit your project or module, you can customize the run
+  configuration, or even create a new one, at the project, default, and module
+  levels. To edit a run configuration:
+</p>
 
-<img src="{@docRoot}images/tools/studio-gradle-console.png" alt="" />
-<p class="img-caption"><strong>Figure 1.</strong> The Gradle Console in Android Studio.</p>
+<ol>
+  <li>Select <strong>Run</strong> &gt; <strong>Edit Configurations</strong>.
+  </li>
 
-<p>The Gradle Console shows the build tasks and subtasks that the build system runs for
-Android Studio. If the build fails, you can find more details on the console. To hide the Gradle
-Console, click <img src="{@docRoot}images/tools/as-gradlebutton.png" alt=""
-style="vertical-align:bottom;margin:0;"/> again.</p>
-
-<p class="note">If your project uses product flavors, Android Studio invokes the task for the
-selected build variant. For more information, see the
-<a href="{@docRoot}sdk/installing/studio-build.html">Build System</a> guide.</p>
-
-<p>To view the list of all available build tasks in Android Studio, click <strong>Gradle</strong>
-on the right side of the IDE window. The <em>Gradle tasks</em> panel appears.</p>
-
-
-<h3 id="buildRelease">Build a release version</h3>
-
-<p>You can now use the <strong>Build</strong> menu options to build the release version of your
-application for distribution. </p>
-
-<p>The build generates an APK for each build variant:
-the <code>app/build/apk/</code> directory contains packages named
-<code>app-&lt;flavor>-&lt;buildtype>.apk</code>; for example, <code>app-full-release.apk</code> and
-<code>app-demo-debug.apk</code>.</p>
-
-
-<p>For more build system information, see
-<a href="{@docRoot}sdk/installing/studio-build.html">Build System</a>.</p>
-
-
-  <h2 id="RunningApp">Running your app</h2>
-
-  <p>This section shows you how to run your application on an emulator or a real device
-   from Android Studio&mdash;all of which is done using the debug version of your application.
-   For more information about how to sign your application with a private key for release, see
-   <a href="{@docRoot}tools/publishing/app-signing.html">Signing Your Applications</a></p>
-
-
-  <h3 id="RunConfig">Creating a Run Configuration</h3>
-
-  <p>The run configuration specifies the module to run, package to deploy, Activity to start,
-  target device, emulator settings, and Logcat options. Run configuration can be set at the project,
-  default, and module levels. When you first run a module as an <em>Android Application</em>,
-  Android Studio will automatically create a run configuration. The default run
-  configuration will launch the default project Activity and use automatic target mode for device
-  selection (with no preferred AVD). If the default settings don't suit your project or module, you
-  can customize the run configuration or even create a new one.</p>
-
-  <p>To create or modify a run configuration, see the IntelliJ documentation on
-  <a href="https://www.jetbrains.com/idea/webhelp/run-debug-configuration-android-application.html">
-  Run/Debug configurations</a>.</p>
-
-  <p>The following steps highlight the important things you need to do for an Android project:</p>
-
-  <ol>
-    <li>Open <strong>Edit</strong> Configurations from the <strong>Run</strong> Menu.</li>
-
-    <li>Expand the <strong>Android Application</strong> item and create a new configuration or open
-    an existing one.</li>
-
-    <li>With the Run Configuration selected, adjust your desired run configuration settings:
-      <ul>
-      <li>In the General tab, specify the Module settings to launch. In Target tab, consider whether
-      you'd like to use Manual or Automatic mode when selecting an AVD to run your application. See
-      the following section on <a href="#AutoAndManualTargetModes">Automatic and manual target modes</a>).
+  <li>Expand the <strong>Android Application</strong> item and select an
+  existing run configuration.
+    <ul>
+      <li>To create a new run configuration, click the '<strong>+</strong>'
+      button in the top left corner of the dialog box and select
+      <strong>Android Application</strong>.
       </li>
-      <li>In the Emulator tab, specify any emulator options to the Additional Emulator Command Line
-      Options field. For example, you could add <code>-scale 96dpi</code> to scale the AVD's screen
-      to an accurate size, based on the dpi of your computer monitor. For a full list of emulator
-      options, see the <a href="{@docRoot}tools/help/emulator.html">Android
-      Emulator</a> document.</p>
-      </li>
-      <li>In the Logcat tab, set the LogCat options for the application.  </li>
-      </ul>
-    </li>
-  </ol>
+    </ul>
+  </li>
 
+  <li>With a run configuration selected, adjust your desired settings. For
+  example, in the <strong>General</strong> tab, you can specify the APK
+  installation settings, launch options, and deployment target options.
+  </li>
+</ol>
 
-  <h3 id="AutoAndManualTargetModes">Automatic and manual target modes</h3>
+<h3 id="changing-variant">
+  Changing the build variant
+</h3>
 
-  <p>By default, a run configuration uses the <strong>automatic</strong> target mode in order to
-  select an AVD. In this mode, Android Studio will select an AVD for the application in the following
-  manner:</p>
+<p>
+  By default, Android Studio builds the debug version of your app, which is
+  intended only for testing, when you click <strong>Run 'app'</strong>. You
+  need to build the release version when <a href=
+  "{@docRoot}tools/publishing/preparing.html">preparing your app for public
+  release</a>.
+</p>
+<p>
+  To change the build variant Android Studio uses, go to <strong>Build</strong>
+  &gt; <strong>Select Build Variant</strong> and select a different one from
+  the drop-down menu. By default, new projects are set up with a debug and
+  release build variant.
+</p>
 
-  <ol>
-    <li>If there's a device or emulator already running and its AVD configuration meets the
-    requirements of the application's build target, the application is installed and run upon
-    it.</li>
+<p>
+  Using <em>product flavors</em>, you can create additional build variants for
+  different versions of your app, each having different features or device
+  requirements. To learn more about build variants and product flavors, read
+  <a href="{@docRoot}tools/building/configuring-gradle.html">Configuring Gradle
+  Builds</a>.
+</p>
 
-    <li>If there's more than one device or emulator running, each of which meets the requirements
-    of the build target, a device chooser is shown to let you select which device to use.</li>
+<h3 id="gradle-console">
+  Monitoring the build process
+</h3>
 
-    <li>If there are no devices or emulators running that meet the requirements of the build
-    target, Android Studio looks at the available AVDs. If there is an AVD that matches the build
-    target of the project, Android Studio chooses that AVD. If the AVD versions are newer than the
-    build target of the project, Android Studio chooses the oldest possible version of an AVD that
-    meets the project or module build target requirement.</li>
+<p>
+  You can view details about the build process by clicking <em>Gradle
+  Console</em> <img src="{@docRoot}images/tools/as-gradlebutton.png" alt=""
+  style="vertical-align:bottom;margin:0;">. The console displays each
+  task that Gradle executes in order to build your app, as shown in figure 1.
+</p>
 
-    <li>If there are no suitable AVDs, the application is not installed and a console error warning
-    tells you that there is no existing AVD that meets the build target requirements.</li>
-  </ol>
+<img src="{@docRoot}images/tools/studio-gradle-console.png" alt="">
+<p class="img-caption">
+  <strong>Figure 1.</strong> The Gradle Console in Android Studio.
+</p>
 
-  <p>However, if a "preferred" AVD is selected in the run configuration, then the application will
-  <em>always</em> be deployed to that AVD. If it's not already running, then a new emulator will be
-  launched.</p>
+<p>
+  If your build variants use product flavors, Gradle also invokes tasks to
+  build those product flavors. To view the list of all available build tasks,
+  click <strong>Gradle</strong> <img src=
+  "{@docRoot}images/tools/as-gradle.png" alt="" style=
+  "vertical-align:bottom;margin:0;"> on the right side of the IDE
+  window.
+</p>
 
-  <p>If your run configuration uses <strong>manual</strong> mode, then the "device chooser" is
-  presented every time that your application is run, so that you can select which AVD to use.</p>
+<p>
+  If an error occurs during the build process, the <em>Messages</em> window
+  will appear to describe the issue.
+</p>
 
+<h3 id="generating-apks">
+  Generating APKs
+</h3>
 
+<p>
+  When you click <strong>Run 'app'</strong>, Android Studio generates a debug
+  APK and deploys it to your target device. Before you can generate a release
+  version of your app for public distribution, however, you must first learn
+  how to <a href="{@docRoot}tools/publishing/app-signing.html#studio">sign your
+  app</a>. You can then generate multiple signed APKs of your debug or release
+  build variants. To locate the generated APK files, click the link in the
+  pop-up dialog, as shown in figure 2.
+</p>
 
-  <h3 id="RunningOnEmulatorStudio">Running on the emulator</h3>
+<p>
+  <img src="{@docRoot}images/tools/as-find-apk.png" alt="">
+</p>
 
-  <p>Before you can run your application on the Android Emulator, you verify the default AVD or
- <a href="{@docRoot}tools/devices/managing-avds.html">create an AVD</a>.</p>
-
-  <p>To run (or debug) your application, select <strong>Run</strong> &gt; <strong>Run</strong> (or
-  <strong>Run</strong> &gt; <strong>debug</strong>) from the Android Studio menu bar. Android Studio
-  automatically creates a default run configuration for the project. Android Studio will then perform
-  the following:</p>
-
-  <ol>
-    <li>Compile the project (if there have been changes since the last build).</li>
-
-    <li>Create a default run configuration (if one does not already exist for the project).</li>
-
-    <li>Install and start the application on an emulator (or device), based on the Deployment
-    Target defined by the run configuration.
-
-      <p>By default, Android run configurations use an "automatic target" mode for selecting a
-      device target. For information on how automatic target mode selects a deployment target, see
-      <a href="#AutoAndManualTargetModes">Automatic and manual target modes</a> above.</p>
-    </li>
-  </ol>
-
-  <p>If you run the application with <strong>Debug</strong>, the <em>Choose a Device</em> option
-  appears so you can select an attached device or emulator. Once the device or emulator is selected,
-  Android Studio opens the Debug console and starts the application's main activity. Otherwise, if
-  you run the application with the normal Run command, Android Studio installs the application on the
-  device and launches the main activity.</p>
-
-  <p>To set or change the run configuration used for your project or module, select
-  <strong>Run</strong> &gt; <strong>Edit Configurations</strong>. See the section below about
-  <a href="#RunConfig">Creating a Run Configuration</a> for more information.</p>
-
-  <p>Be certain to create multiple AVDs upon which to test your application. You should have one
-  AVD for each platform and screen type with which your application is compatible. For instance, if
-  your application compiles against the Android 4.0 (API Level 14) platform, you should create an
-  AVD for each platform equal to and greater than 4.0 and an AVD for each <a href=
-  "{@docRoot}guide/practices/screens_support.html">screen type</a> you support, then test your
-  application on each one.</p>
-
-  <h3 id="RunningOnDeviceStudio">Running on a device</h3>
-
-  <p>Before you can run your application on a device, you must perform some basic setup for your
-  device:</p>
-
-  <ul>
-    <li>Ensure that your application is debuggable by setting the
-    <code>android:debuggable</code> attribute of the <code>&lt;application&gt;</code>
-    element to <code>true</code> in the build.gradle file. </li>
-
-    <li>Enable <strong>USB debugging</strong> on your device.
-      <ul>
-        <li>On most devices running Android 3.2 or older, you can find the option under
-          <strong>Settings > Applications > Development</strong>.</li>
-        <li>On Android 4.0 and newer, it's in <strong>Settings > Developer options</strong>.
-          <p class="note"><strong>Note:</strong> On Android 4.2 and newer, <strong>Developer
-          options</strong> is hidden by default. To make it available, go
-          to <strong>Settings > About phone</strong> and tap <strong>Build number</strong>
-          seven times. Return to the previous screen to find <strong>Developer options</strong>.</p>
-        </li>
-      </ul>
-    </li>
-
-    <li>Ensure that your development computer can detect your device when connected via USB</li>
-  </ul>
-
-  <p>Read <a href="{@docRoot}tools/device.html">Using Hardware Devices</a>
-  for more information.</p>
-
-  <p>Once set up and your device is connected via USB, install your application on the device by
-  selecting <strong>Run</strong> &gt; <strong>Run</strong> (or <strong>Run</strong> &gt;
-  <strong>Debug</strong>) from the Android Studio menu bar.</p>
-
-
+<p class="img-caption">
+  <strong>Figure 2.</strong> Click the link to locate the generated APK
+  files.
+</p>
\ No newline at end of file
diff --git a/docs/html/tools/building/plugin-for-gradle.jd b/docs/html/tools/building/plugin-for-gradle.jd
index 513153d..aed1af2 100644
--- a/docs/html/tools/building/plugin-for-gradle.jd
+++ b/docs/html/tools/building/plugin-for-gradle.jd
@@ -6,9 +6,22 @@
 <div id="qv">
 <h2>In this document</h2>
 <ol>
-  <li><a href="#workBuildVariants">Work with build variants</a></li>
+  <li><a href="#buildConf">Build Configuration</a></li>
+  <li><a href="#buildConv">Build by Convention</a></li>
+  <li><a href="#projectModules">Project and Module Settings</a></li>
+  <li><a href="#dependencies">Dependencies</a></li>
+  <li><a href="#buildTasks">Build Tasks</a></li>
+  <li><a href="#gradleWrapper">Gradle Wrapper</a></li>
+  <li><a href="#buildVariants">Build Variants</a></li>
 </ol>
 
+<h2>Reference</h2>
+<ul>
+  <li>
+  <a class="external-link" href="http://google.github.io/android-gradle-dsl">
+    Android Plugin DSL</a>
+  </li>
+</ul>
 
 <h2>See also</h2>
 <ul>
@@ -20,13 +33,6 @@
 Building and Running from Android Studio</a></li>
 </ul>
 
-<h2>Download</h2>
-<div class="download-box">
-  <a href="{@docRoot}shareables/sdk-tools/android-gradle-plugin-dsl.zip"
-    class="button">Plugin Language Reference</a>
-  <p class="filename">android-gradle-plugin-dsl.zip</p>
-</div>
-
 </div>
 </div>
 
@@ -34,14 +40,14 @@
 <a href="http://www.gradle.org/">Gradle</a> is an advanced build toolkit that manages
 dependencies and allows you to define custom build logic. Android Studio uses a Gradle wrapper
 to fully integrate the Android plugin for Gradle. The Android plugin for Gradle also runs
-independent of Android Studio. This means that you can build your Android apps from which Android
+independent of Android Studio. This means that you can build your Android apps from within Android
 Studio and from the command line on your machine or on machines where Android Studio is not installed
 (such as continuous integration servers).</p>
 
 <p>The output of the build is the same whether you are building a project from the command line,
 on a remote machine, or using Android Studio.</p>
 
-<h2 id="buildConf">Build configuration</h2>
+<h2 id="buildConf">Build Configuration</h2>
 
 <p>The build configuration for your project is defined inside <code>build.gradle</code> files,
 which are plain text files that use the syntax and options from Gradle and the Android plugin
@@ -80,7 +86,7 @@
 language that you can use to define custom build logic and to interact with the Android-specific
 elements provided by the Android plugin for Gradle.</p>
 
-<h2 id="buildConv">Build by convention</h2>
+<h2 id="buildConv">Build by Convention</h2>
 
 <p>The Android Studio build system assumes <em>sensible defaults</em> for the project structure
 and other build options. If your project adheres to these conventions, your Gradle build files are
@@ -89,7 +95,7 @@
 you need to replace the default source folders in your module directories, you can configure a new
 directory structure in the module's build file. </p>
 
-<h2 id="projectModules">Projects and modules build settings</h2>
+<h2 id="projectModules">Project and Module Settings</h2>
 
 <p>A <em>project</em> in Android Studio represents the top-level Android development structure.
 Android Studio projects contain project files and one or more application modules. A
@@ -99,7 +105,7 @@
 
 <ul>
     <li><em>Android application modules</em> contain application (mobile, TV, Wear, Glass) code and
-         may depend on library modules, although many Android apps consists of only one application
+         may depend on library modules, although many Android apps consist of only one application
          module. The build system generates APK packages for application modules. </li>
     <li><em>Android library modules</em> contain reusable Android-specific code and resources.
         The build system generates an AAR (Android ARchive) package for library modules.</li>
@@ -256,7 +262,7 @@
     </dd>
 </dl>
 
-<h2 id="buildTasks">Build tasks</h2>
+<h2 id="buildTasks">Build Tasks</h2>
 
 <p>The Android Studio build system defines a hierarchical set of build tasks: the top-level or
 anchor tasks invoke dependent tasks to produce their collective build outcomes. The top-level build
@@ -283,7 +289,7 @@
 and <a href="{@docRoot}tools/building/building-cmdline.html">Build the project from
 the command line</a>.</p>
 
-<h2 id="gradleWrapper">The Gradle wrapper</h2>
+<h2 id="gradleWrapper">Gradle Wrapper</h2>
 
 <p>Android Studio projects contain the <em>Gradle wrapper</em>, which consists of:</p>
 
@@ -317,7 +323,7 @@
 scripts and JAR from a trusted source, such as those generated by Android Studio. </p>
 
 
-<h2 id="buildVariants"> Build variants</h2>
+<h2 id="buildVariants">Build Variants</h2>
 
 <p>Each version of your app is represented in the build system by a <em>build variant</em>.
 Build variants are combinations of product flavors and build types. Product flavors represent
diff --git a/docs/html/tools/data-binding/guide.jd b/docs/html/tools/data-binding/guide.jd
index 2de5bc2..b57fba7 100644
--- a/docs/html/tools/data-binding/guide.jd
+++ b/docs/html/tools/data-binding/guide.jd
@@ -131,6 +131,11 @@
           </li>
         </ol>
       </li>
+
+      <li>
+        <a href="#studio_support">Android Studio Support for Data Binding</a>
+      </li>
+
     </ol>
   </div><!-- qv -->
 </div><!-- qv-wrapper -->
@@ -141,49 +146,13 @@
   application logic and layouts.
 </p>
 
-<p>The Data Binding Library offers both flexibility and broad comnpatibility
+<p>The Data Binding Library offers both flexibility and broad compatibility
 &mdash; it's a support library, so you can use it with all Android platform
 versions back to <strong>Android 2.1</strong> (API level 7+).</p>
 
-<p>To use data binding, Android Plugin for Gradle <strong>1.3.0-beta4</strong>
+<p>To use data binding, Android Plugin for Gradle <strong>1.5.0-alpha1</strong>
 or higher is required.</p>
 
-<h4>Beta release</h4>
-
-<div class="caution">
-  <p>Please note that the Data Binding library is a <strong>beta release</strong>.
-  While Data Binding is in beta, developers should be aware of the following
-  caveats:</p>
-  <ul>
-    <li>
-    This is a beta release of the feature intended to generate developer
-    feedback. It might contain bugs, and it might not work for your use case,
-    so use it at your own risk. That said, we do want your feedback! Please
-    let us know what is or isn’t working for you using the <a
-    href="https://code.google.com/p/android-developer-preview/">issue
-    tracker</a>.
-    </li>
-    <li>
-    The Data Binding library beta release is subject to significant changes,
-    including those which are not source code compatible with your app. That is,
-    significant rework may be required to take updates to the library in the future.
-    </li>
-    <li>
-    Developers should feel free to publish apps built with the Data Binding
-    library beta release, with the caveats that the standard Android SDK and
-    Google Play terms of service apply, and it’s always a great idea to test your
-    app thoroughly when adopting new libraries or tools.
-    </li>
-    <li>
-    We’re just getting started with Android Studio support at this time.
-    Further Android Studio support will come in the future.
-    </li>
-    <li>
-    By using the Data Binding library beta release, you acknowledge these
-    caveats.</li>
-  </ul>
-</div>
-
 <h2 id="build_environment">
   Build Environment
 </h2>
@@ -191,53 +160,28 @@
 <p>To get started with Data Binding, download the library from the Support
 repository in the Android SDK manager. </p>
 
-<p>The Data Binding plugin requires Android Plugin for Gradle <strong>1.3.0-beta4
-or higher</strong>, so update your build dependencies (in the top-level
-<code>build.gradle</code> file) as needed.</p>
-
-<p>Also, make sure you are using a compatible version of Android Studio.
-<strong>Android Studio 1.3</strong> adds the code-completion and layout-preview
-support for data binding.</p>
-
 <p>
-  <strong>Setting Up Work Environment:</strong>
+To configure your app to use data binding, add the <code>dataBinding</code> element to your
+<code>build.gradle</code> file in the app module.
 </p>
 
-<p>
-  To set up your application to use data binding, add data binding to the class
-  path of your top-level <code>build.gradle</code> file, right below "android".
-</p>
+ <p>Use the following code snippet to configure data binding: </p>
 
 <pre>
-   dependencies {
-       classpath <strong>"com.android.tools.build:gradle:1.3.0-beta4"</strong>
-       classpath <strong>"com.android.databinding:dataBinder:1.0-rc1"</strong>
-   }
-</pre>
-<p>
-  Then make sure jcenter is in the repositories list for your projects in the top-level
-  <code>build.gradle</code> file.
-</p>
-
-<pre>
-allprojects {
-   repositories {
-       jcenter()
-   }
+android {
+    ....
+    dataBinding {
+        enabled = true
+    }
 }
 </pre>
-<p>
-  In each module you want to use data binding, apply the plugin right after
-  android plugin
-</p>
 
-<pre>
-apply plugin: &apos;com.android.application&apos;
-apply plugin: &apos;com.android.databinding&apos;
-</pre>
-<p>
-  The data binding plugin is going to add necessary <strong>provided</strong>
-  and <strong>compile configuration</strong> dependencies to your project.
+<p>If you have an app module that depends on a library which uses data binding, your app module
+ must configure data binding in its <code>build.gradle</code> file as well.</p>
+
+<p>Also, make sure you are using a compatible version of Android Studio.
+<strong>Android Studio 1.3</strong> and later provides support for data binding as described in
+<a href="#studio_support">Android Studio Support for Data Binding</a>.
 </p>
 
 <h2 id="data_binding_layout_files">
@@ -428,6 +372,36 @@
    &lt;/LinearLayout&gt;
 &lt;/layout&gt;
 </pre>
+
+<p>
+  Some specialized click event handlers exist and they need an attribute other than
+  <code>android:onClick</code> to avoid a conflict. The following attributes have been created
+  to avoid such conflicts:
+</p>
+
+<table>
+  <tr>
+    <th>Class</th>
+    <th>Listener Setter</th>
+    <th>Attribute</th>
+  </tr>
+  <tr>
+    <td>{@link android.widget.SearchView}</td>
+    <td>{@link android.widget.SearchView#setOnSearchClickListener}</td>
+    <td><code>android:onSearchClick</code></td>
+  </tr>
+  <tr>
+    <td>{@link android.widget.ZoomControls}</td>
+    <td>{@link android.widget.ZoomControls#setOnZoomInClickListener}</td>
+    <td><code>android:onZoomIn</code></td>
+  </tr>
+  <tr>
+    <td>{@link android.widget.ZoomControls}</td>
+    <td>{@link android.widget.ZoomControls#setOnZoomOutClickListener}</td>
+    <td><code>android:onZoomOut</code></td>
+  </tr>
+</table>
+
 <h2 id="layout_details">
   Layout Details
 </h2>
@@ -560,6 +534,14 @@
   <code>boolean</code>, etc.
 </p>
 
+<p>
+  A special variable named <code>context</code> is generated for use in binding
+  expressions as needed. The value for <code>context</code> is the
+  <code>Context</code> from the root View's {@link android.view.View#getContext}.
+  The <code>context</code> variable will be overridden by an explicit variable
+  declaration with that name.
+</p>
+
 <h3 id="custom_binding_class_names">
   Custom Binding Class Names
 </h3>
@@ -1669,3 +1651,28 @@
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/&gt;
 </pre>
+
+<h3 id="studio_support">Android Studio Support for Data Binding</h3>
+
+<p>
+Android Studio supports syntax highlighting of data binding expressions, and flags any expression
+language syntax errors in the editor.
+</p>
+<p>
+The Preview pane displays default values for data binding expressions if provided. In the following
+example excerpt of an element from a layout XML file, the Preview pane displays the
+{@code PLACEHOLDER} default text value in the <code>TextView</code>.
+</p>
+
+<pre>
+&lt;TextView android:layout_width="wrap_content"
+   android:layout_height="wrap_content"
+   android:text="&commat;{user.firstName, default=PLACEHOLDER}"/&gt;
+</pre>
+
+<p>
+If you need to display a default value during the design phase of your project, you
+can also use tools attributes instead of default expression values, as described in
+<a class="external-link" href="http://tools.android.com/tips/layout-designtime-attributes">
+Designtime Layout Attributes</a>.
+</p>
\ No newline at end of file
diff --git a/docs/html/tools/debugging/annotations.jd b/docs/html/tools/debugging/annotations.jd
index b0d5a22..fbdb9e4 100644
--- a/docs/html/tools/debugging/annotations.jd
+++ b/docs/html/tools/debugging/annotations.jd
@@ -266,19 +266,17 @@
 public abstract void setWallpaper(Bitmap bitmap) throws IOException;
 </pre>
 
-<p>This example requires the caller of the
-<code>updateVisitedHistory</code> method to have both read and write bookmark history permissions. </p>
-
+<p>This example requires the caller of the {@code copyFile()} method to have both read and write
+permissions to external storage:</p>
 <pre>
 &#64;RequiresPermission(allOf = {
-    Manifest.permission.READ_HISTORY_BOOKMARKS,
-    Manifest.permission.WRITE_HISTORY_BOOKMARKS})
-public static final void updateVisitedHistory(ContentResolver cr, String url, boolean real) {
+    Manifest.permission.READ_EXTERNAL_STORAGE,
+    Manifest.permission.WRITE_EXTERNAL_STORAGE})
+public static final void copyFile(String dest, String source) {
     ...
 }
 </pre>
 
-
 <h2 id="check-result">Adding CheckResults Annotations</h2>
 <p>Use the <code>@CheckResults</code> annotation to
 validate that a method's result or return value is actually used. The following example annotates
diff --git a/docs/html/tools/debugging/debugging-devtools.jd b/docs/html/tools/debugging/debugging-devtools.jd
deleted file mode 100644
index 3a05120..0000000
--- a/docs/html/tools/debugging/debugging-devtools.jd
+++ /dev/null
@@ -1,77 +0,0 @@
-page.title=Using the Dev Tools App
-parent.title=Debugging
-parent.link=index.html
-@jd:body
-
-<p>The Dev Tools application is installed by default on all system images included with the SDK,
-  so you can use it with the Android Emulator. With the Dev Tools application, you can enable a
-  number of settings on your device that will make it easier to test and debug your applications.</p>
-
-  <p> The Dev Tools application relies on a number of permissions that are not available for
-  third party applications. If you'd like to install the Dev Tools application
-  on a real development device, you'd have to build a system image for that device and sign
-  the Dev Tools application with the same key as used for the system image.</p>
-
-  <p>To get started, launch the Dev Tools application and select <strong>Development Settings</strong>. This will
-  open the Development Settings page with the following options (among others):</p>
-
-  <dl>
-    <dt><strong>Debug app</strong></dt>
-
-    <dd>
-      Lets you select the application to debug. You do not need to set this to attach a debugger,
-      but setting this value has two effects:
-
-      <ul>
-        <li>It will prevent Android from throwing an error if you pause on a breakpoint for a long
-        time while debugging.</li>
-
-        <li>It will enable you to select the <em>Wait for Debugger</em> option to pause application
-        startup until your debugger attaches (described next).</li>
-      </ul>
-    </dd>
-
-    <dt><strong>Wait for debugger</strong></dt>
-
-    <dd>Blocks the selected application from loading until a debugger attaches. This way you can
-    set a breakpoint in {@link android.app.Activity#onCreate onCreate()}, 
-    which is important to debug the startup process of an Activity.
-    When you change this option, any currently running instances of the selected application will
-    be killed. In order to check this box, you must have selected a debug application as described
-    in the previous option. You can do the same thing by adding {@link
-    android.os.Debug#waitForDebugger()} to your code.</dd>
-
-    <dt><strong>Show screen updates</strong></dt>
-
-    <dd>Flashes a momentary pink rectangle on any screen sections that are being redrawn. This is
-    very useful for discovering unnecessary screen drawing.</dd>
-
-    <dt><strong>Immediately destroy activities</strong></dt>
-
-    <dd>Tells the system to destroy an activity as soon as it is stopped (as if Android had to
-    reclaim memory).&nbsp; This is very useful for testing the {@link
-    android.app.Activity#onSaveInstanceState} / {@link
-    android.app.Activity#onCreate(android.os.Bundle)} code path, which would otherwise be difficult
-    to force. Choosing this option will probably reveal a number of problems in your application
-    due to not saving state. For more information about saving an activity's state, see the
-    <a href="{@docRoot}guide/components/activities.html#SavingActivityState">Activities</a>
-document.</dd>
-
-    <dt><strong>Show CPU usage</strong></dt>
-
-    <dd>Displays CPU meters at the top of the screen, showing how much the CPU is being used. The
-    top red bar shows overall CPU usage, and the green bar underneath it shows the CPU time spent
-    in compositing the screen. 
-    <p class="note">Note: You cannot turn this feature off once it is on, without
-    restarting the emulator.</p></dd>
-
-    <dt><strong>Show background</strong></dt>
-
-    <dd>Displays a background pattern when no activity screens are visible. This typically does not
-    happen, but can happen during debugging.</dd>
-  </dl>
-
-  <p>These settings will be remembered across emulator restarts.</p>
-
-
-
diff --git a/docs/html/tools/debugging/debugging-log.jd b/docs/html/tools/debugging/debugging-log.jd
index e222b2a..f17c4aa 100644
--- a/docs/html/tools/debugging/debugging-log.jd
+++ b/docs/html/tools/debugging/debugging-log.jd
@@ -1,6 +1,5 @@
 page.title=Reading and Writing Logs
-parent.title=Debugging
-parent.link=index.html
+
 @jd:body
 
 <div id="qv-wrapper">
@@ -8,8 +7,6 @@
       <h2>In this document</h2>
 
       <ol>
-        <li><a href="#logClass">The Log class</a></li>
-
         <li><a href="#startingLogcat">Starting LogCat</a></li>
 
         <li><a href="#filteringOutput">Filtering Log Output</a></li>
@@ -20,7 +17,7 @@
 
         <li><a href="#viewingStd">Viewing stdout and stderr</a></li>
 
-        <li><a href="#DebuggingWebPages">Debugging Web Pages</a></li>
+        <li><a href="#logClass">Logging from Code</a></li>
       </ol>
     </div>
   </div>
@@ -31,31 +28,6 @@
   {@link android.util.Log} class. You can run LogCat through ADB or from DDMS, which allows you to
   read the messages in real time.</p>
 
-  <h2 id="logClass">The <code>Log</code> class</h2>
-
-  <p>{@link android.util.Log} is a logging class that you can utilize in your code to print out
-  messages to the LogCat. Common logging methods include:</p>
-
-  <ul>
-    <li>{@link android.util.Log#v(String,String)} (verbose)</li>
-
-    <li>{@link android.util.Log#d(String,String)} (debug)</li>
-
-    <li>{@link android.util.Log#i(String,String)} (information)</li>
-
-    <li>{@link android.util.Log#w(String,String)} (warning)</li>
-
-    <li>{@link android.util.Log#e(String,String)} (error)</li>
-  </ul>For example:
-  <pre class="no-pretty-print">
-Log.i("MyActivity", "MyClass.getView() &mdash; get item number " + position);
-</pre>
-
-  <p>The LogCat will then output something like:</p>
-  <pre class="no-pretty-print">
-I/MyActivity( 1557): MyClass.getView() &mdash; get item number 1
-</pre>
-
   <h2 id="startingLogcat">Using LogCat</h2>
 
   <p>You can use LogCat from within DDMS or call it on an ADB shell. For more information on how to
@@ -192,7 +164,7 @@
 </pre>
 
   <p>The final element in the above expression, <code>*:S</code>, sets the priority level for all
-  tags to "silent", thus ensuring only log messages with "View" and "MyApp" are displayed. Using
+  tags to "silent", thus ensuring only log messages with "ActivityManager" and "MyApp" are displayed. Using
   <code>*:S</code> is an excellent way to ensure that log output is restricted to the filters that
   you have explicitly specified &mdash; it lets your filters serve as a "whitelist" for log
   output.</p>
@@ -287,8 +259,35 @@
   output to <code>/dev/null</code>. (The Java <code>System.out</code> and <code>System.err</code>
   streams go to the log.)
 
-  <h2 id="DebuggingWebPages">Debugging Web Apps</h2>
-  <p>
-  If you're developing a web application for Android, you can debug your JavaScript using the console JavaScript APIs,
-  which output messages to LogCat. For more information, see
-  <a href="{@docRoot}guide/webapps/debugging.html">Debugging Web Apps</a>.</p>
+  <h2 id="logClass">Logging from Code</h2>
+
+  <p>The {@link android.util.Log} class allows you to create log entries in your code that display
+  in the LogCat tool. Common logging methods include:</p>
+
+  <ul>
+    <li>{@link android.util.Log#v(java.lang.String, java.lang.String)
+      Log.v(String, String)} (verbose)</li>
+
+    <li>{@link android.util.Log#d(java.lang.String, java.lang.String)
+      Log.d(String, String)} (debug)</li>
+
+    <li>{@link android.util.Log#i(java.lang.String, java.lang.String)
+      Log.i(String, String)} (information)</li>
+
+    <li>{@link android.util.Log#w(java.lang.String, java.lang.String)
+      Log.w(String, String)} (warning)</li>
+
+    <li>{@link android.util.Log#e(java.lang.String, java.lang.String)
+      Log.e(String, String)} (error)</li>
+  </ul>
+
+  <p>For example, using the following call:</p>
+
+  <pre class="no-pretty-print">
+Log.i("MyActivity", "MyClass.getView() &mdash; get item number " + position);
+</pre>
+
+  <p>The LogCat outputs something like:</p>
+  <pre class="no-pretty-print">
+I/MyActivity( 1557): MyClass.getView() &mdash; get item number 1
+</pre>
diff --git a/docs/html/tools/debugging/debugging-memory.jd b/docs/html/tools/debugging/debugging-memory.jd
old mode 100644
new mode 100755
index fc4f4be..4e2e519
--- a/docs/html/tools/debugging/debugging-memory.jd
+++ b/docs/html/tools/debugging/debugging-memory.jd
@@ -42,7 +42,7 @@
 <p>The simplest place to begin investigating your app’s memory usage is the runtime log messages.
 Sometimes when a GC occurs, a message is printed to
 <a href="{@docRoot}tools/help/logcat.html">logcat</a>. The logcat output is also available in the
-Device Monitor or directly in IDEs such as Eclipse and Android Studio.</p>
+Device Monitor or directly in an IDE such as Android Studio.</p>
 
 <h3 id="DalvikLogMessages">Dalvik Log Messages</h3>
 
@@ -107,7 +107,7 @@
 
 <h3 id="ARTLogMessages">ART Log Messages</h3>
 
-<p>Unlike Dalvik, ART doesn't log messqages for GCs that were not explicitly requested. GCs are only
+<p>Unlike Dalvik, ART doesn't log messages for GCs that were not explicitly requested. GCs are only
 printed when they are they are deemed slow. More precisely, if the GC pause exceeds than 5ms or
 the GC duration exceeds 100ms. If the app is not in a pause perceptible process state,
 then none of its GCs are deemed slow. Explicit GCs are always logged.</p>
@@ -240,7 +240,7 @@
 
 <h3>Memory Monitor in Android Studio</h3>
 <p>Use Android Studio to view your app's memory use: </p>
-<ul>
+<ol>
   <li>Start your app on a connected device or emulator.</li>
   <li>Open the Android run-time window, and view the free and allocated memory in the Memory
     Monitor. </li>
@@ -260,7 +260,7 @@
    </li>
   <li>Identify which actions in your app are likely causing too much allocation and determine where
    in your app you should try to reduce allocations and release resources.
-</ul>
+</ol>
 
 <h3>Device Monitor </h3>
 <ol>
@@ -350,9 +350,9 @@
 
 
 <p class="note"><strong>Note:</strong> You will always see some allocations from {@code
-DdmVmInternal} and else where that come from the allocation tracker itself.</p>
+DdmVmInternal} and elsewhere that come from the allocation tracker itself.</p>
 
-<p>Although it's not necessary (nor possible) to remove all allocations for your performance
+<p>Although it's not necessary (nor possible) to remove all allocations from your performance
 critical code paths, the allocation tracker can help you identify important issues in your code.
 For instance, some apps might create a new {@link android.graphics.Paint} object on every draw.
 Moving that object into a global member is a simple fix that helps improve performance.</p>
@@ -628,7 +628,7 @@
 
 
 <p>To retrieve your heap dump from within Android Studio, use the
-<a href="{@docRoot}tools/studio/index.html#me-cpu">Memory Monitor</a> and
+<a href="{@docRoot}tools/studio/index.html#mem-cpu">Memory Monitor</a> and
 <a href="{@docRoot}tools/studio/index.html#heap-dump">HPROF viewer</a>.  
 
 <p>You can also still perform these procedures in the Android monitor:</p>
@@ -655,10 +655,12 @@
 number of allocations in the Zygote process. But because the Zygote allocations are shared across
 all app processes, they don’t matter very much to your own heap analysis.</p>
 
-<p>To analyze your heap dump, you can use a standard tool like jhat or the <a href=
-"http://www.eclipse.org/mat/downloads.php">Eclipse Memory Analyzer Tool</a> (MAT). However, first
+<p>To analyze your heap dump, you can use <a href=
+"{@docRoot}tools/help/am-memory.html">Memory Monitor</a> in Android Studio. 
+You can also use a standard tool like jhat. However, first
 you'll need to convert the HPROF file from Android's format to the J2SE HPROF format. You can do
-this using the <code>hprof-conv</code> tool provided in the <code>&lt;sdk&gt;/platform-tools/</code>
+this using the <code>hprof-conv</code> tool provided in the 
+<code>&lt;sdk&gt;/platform-tools/</code>
 directory. Simply run the <code>hprof-conv</code> command with two arguments: the original HPROF
 file and the location to write the converted HPROF file. For example:</p>
 
@@ -666,11 +668,9 @@
 hprof-conv heap-original.hprof heap-converted.hprof
 </pre>
 
-<p class="note"><strong>Note:</strong> If you're using the version of DDMS that's integrated into
-Eclipse, you do not need to perform the HPROF conversation—it performs the conversion by
-default.</p>
 
-<p>You can now load the converted file in MAT or another heap analysis tool that understands
+
+<p>You can now load the converted file into a heap analysis tool that understands
 the J2SE HPROF format.</p>
 
 <p>When analyzing your heap, you should look for memory leaks caused by:</p>
@@ -682,77 +682,6 @@
 </ul>
 
 
-<h3 id="EclipseMat">Using the Eclipse Memory Analyzer Tool</h3>
-
-<p>The <a href=
-"http://www.eclipse.org/mat/downloads.php">Eclipse Memory Analyzer Tool</a> (MAT) is just one
-tool that you can use to analyze your heap dump. It's also quite powerful so most of its
-capabilities are beyond the scope of this document, but here are a few tips to get you started.
-
-<p>Once you open your converted HPROF file in MAT, you'll see a pie chart in the Overview,
-showing what your largest objects are. Below this chart, are links to couple of useful features:</p>
-
-<ul>
-  <li>The <strong>Histogram view</strong> shows a list of all classes and how many instances
-  there are of each.
-  <p>You might want to use this view to find extra instances of classes for which you know there
-  should be only a certain number. For example, a common source of leaks is additional instance of
-  your {@link android.app.Activity} class, for which you should usually have only one instance
-  at a time. To find a specific class instance, type the class name into the <em>&lt;Regex></em>
-  field at the top of the list.
-  <p>When you find a class with too many instances, right-click it and select
-  <strong>List objects</strong> &gt; <strong>with incoming references</strong>. In the list that
-  appears, you can determine where an instance is retained by right-clicking it and selecting
-  <strong>Path To GC Roots</strong> &gt; <strong>exclude weak references</strong>.</p>
-  </li>
-
-  <li>The <strong>Dominator tree</strong> shows a list of objects organized by the amount
-  of retained heap.
-  <p>What you should look for is anything that's retaining a portion of heap that's roughly
-  equivalent to the memory size you observed leaking from the <a href="#LogMessages">GC logs</a>,
-  <a href="#ViewHeap">heap updates</a>, or <a href="#TrackAllocations">allocation
-  tracker</a>.
-  <p>When you see something suspicious, right-click on the item and select
-  <strong>Path To GC Roots</strong> &gt; <strong>exclude weak references</strong>. This opens a
-  new tab that traces the references to that object which is causing the alleged leak.</p>
-
-  <p class="note"><strong>Note:</strong> Most apps will show an instance of
-  {@link android.content.res.Resources} near the top with a good chunk of heap, but this is
-  usually expected when your app uses lots of resources from your {@code res/} directory.</p>
-  </li>
-</ul>
-
-
-<img src="{@docRoot}images/tools/mat-histogram@2x.png" width="760" alt="" />
-<p class="img-caption"><strong>Figure 4.</strong> The Eclipse Memory Analyzer Tool (MAT),
-showing the Histogram view and a search for "MainActivity".</p>
-
-<p>For more information about MAT, watch the Google I/O 2011 presentation,
-<a href="http://www.youtube.com/watch?v=_CruQY55HOk">Memory management for Android apps</a>,
-which includes a walkthrough using MAT beginning at about <a href=
-"http://www.youtube.com/watch?v=_CruQY55HOk&amp;feature=player_detailpage#t=1270">21:10</a>.
-Also refer to the <a href="http://wiki.eclipse.org/index.php/MemoryAnalyzer">Eclipse Memory
-Analyzer documentation</a>.</p>
-
-<h4 id="MatCompare">Comparing heap dumps</h4>
-
-<p>You may find it useful to compare your app's heap state at two different points in time in order
-to inspect the changes in memory allocation. To compare two heap dumps using MAT:</p>
-
-<ol>
-  <li>Create two HPROF files as described above, in <a href="#HeapDump">Capturing a Heap Dump</a>.
-  <li>Open the first HPROF file in MAT (<strong>File</strong> > <strong>Open Heap Dump</strong>).
-  <li>In the Navigation History view (if not visible, select <strong>Window</strong> >
-  <strong>Navigation History</strong>), right-click on <strong>Histogram</strong> and select
-  <strong>Add to Compare Basket</strong>.
-  <li>Open the second HPROF file and repeat steps 2 and 3.
-  <li>Switch to the <em>Compare Basket</em> view and click <strong>Compare the Results</strong>
-  (the red "!" icon in the top-right corner of the view).
-</ol>
-
-
-
-
 
 
 <h2 id="TriggerLeaks">Triggering Memory Leaks</h2>
diff --git a/docs/html/tools/debugging/debugging-projects-cmdline.jd b/docs/html/tools/debugging/debugging-projects-cmdline.jd
deleted file mode 100644
index 032d6ce..0000000
--- a/docs/html/tools/debugging/debugging-projects-cmdline.jd
+++ /dev/null
@@ -1,78 +0,0 @@
-page.title=Debugging from Other IDEs
-parent.title=Debugging
-parent.link=index.html
-@jd:body
-
-
- <div id="qv-wrapper">
-    <div id="qv">
-      <h2>In this document</h2>
-
-      <ol>
-        <li><a href="#start-debugging">Starting a Debugging Environment</a>
-        <ul>
-          <li><a href="#debuggingPort">Configuring Your IDE to Attach to the Debugging Port</a></li>
-        </ul>
-        </li>
-      </ol>
-    </div>
-  </div>
- 
-  <p>If you are not using Android Studio to develop, you can still take advantage of all the tools that
-  the Android SDK provides for debugging. A basic debugging environment consists of:</p>
-
-  <ul>
-    <li><a href="{@docRoot}tools/help/adb.html">ADB</a></li>
-
-    <li><a href="{@docRoot}tools/debugging/ddms.html">DDMS</a></li>
-
-    <li>Java Debugger</li>
-  </ul>
-  
-  <p>You need to obtain a JDWP-compliant Java debugger to properly debug your application.
-  Most Java IDEs will already have one included, or you can use a command line debugger,
-  such as JDB, if you are using a simple text editor to develop applications.</p>
-
-  <h2 id="start-debugging">Starting a debugging environment</h2>
-  <p>A Java Debugger assists you in finding problems with
-  your code by letting you set breakpoints, step through execution of your application, and examine
-  variable values. Since you are not using Android Studio, you have to manually start up the debugging
-  environment yourself by running a few tools that are provided in the Android SDK. To begin
-  debugging your application, follow these general steps:</p>
-
-  <ol>
-    <li>Load an AVD with the Android emulator or connect a device to your computer.</li>
-    
-    <li>Start DDMS from the sdk <code>/tools</code> directory. This also starts ADB if it is 
-    not already started. You should see your device appear in DDMS.</li>
-
-    <li>Install and run your <code>.apk</code> file on the device or emulator. In DDMS, you should
-    see your application running under the device that you installed it to.</li>
-
-    <li>Attach your debugger to the debugging port 8700, or to the specific port shown for the
-    application in DDMS.</li>
-  </ol>
-
-  <h3 id="debuggingPort">Configuring Your IDE to Attach to the Debugging Port</h3>
-
-  <p>DDMS assigns a specific debugging port to every virtual machine that it finds on the
-  emulator. You must either attach your IDE to that port (listed on the Info tab for that VM), or
-  you can use a default port 8700 to connect to whatever application is currently selected on the
-  list of discovered virtual machines.</p>
-
-  <p>Your IDE should attach to your application running on the emulator, showing you its threads
-  and allowing you to suspend them, inspect their state, and set breakpoints. If you selected "Wait
-  for debugger" in the Development settings panel the application will run when Android Studio connects,
-  so you will need to set any breakpoints you want before connecting.</p>
-
-  <p>Changing either the application being debugged or the "Wait for debugger" option causes the
-  system to kill the selected application if it is currently running. You can use this to kill your
-  application if it is in a bad state by simply going to the settings and toggling the
-  checkbox.</p>
-
-
-
-
-
-
-
diff --git a/docs/html/tools/debugging/debugging-projects.jd b/docs/html/tools/debugging/debugging-projects.jd
deleted file mode 100644
index 2283f8b..0000000
--- a/docs/html/tools/debugging/debugging-projects.jd
+++ /dev/null
@@ -1,67 +0,0 @@
-page.title=Debugging from Eclipse with ADT
-parent.title=Debugging
-parent.link=index.html
-@jd:body
-
- <div id="qv-wrapper">
-    <div id="qv">
-      <h2>In this document</h2>
-
-      <ol>
-        <li><a href="#tools">The Debug Perspective</a></li>
-
-        <li><a href="#toptips">The DDMS Perspective</a></li>
-      </ol>
-    </div>
-  </div>
-  
-  <p>If you are developing in Eclipse with the ADT plugin, you can use the built-in Java Debugger,
-  along with DDMS, to debug your applications. To access the debugger and
-  DDMS, Eclipse displays the debugger and DDMS features as perspectives, which are customized
-  Eclipse views that display certain tabs and windows depending on the perspective that you are in.
-  Eclipse also takes care of starting the ADB host daemon for you, so you do not have to run this
-  manually.</p>
-
-  <h2>The Debug Perspective in Eclipse</h2>
-
-  <p>The Debug Perspective in Eclipse gives you access to the following tabs:</p>
-
-  <ul>
-    <li>Debug - Displays previously and currently debugged Android applications and its currently
-    running threads</li>
-
-    <li>Variables - When breakpoints are set, displays variable values during code execution</li>
-
-    <li>Breakpoints - Displays a list of the set breakpoints in your application code</li>
-
-    <li>LogCat - Allows you to view system log messages in real time. The LogCat tab is also
-    available in the DDMS perspective.</li>
-  </ul>
-  <p>You can access the Debug Perspective by clicking <strong>Window &gt; Open Perspective &gt;
-  Debug</strong>. Refer to the appropriate documentation for the Eclipse debugger for more
-  information.</p>
-
-  <h2>The DDMS Perspective</h2>
-  <p>The DDMS Perspective in Eclipse lets you access all of the features
-  of DDMS from within the Eclipse IDE. The following sections of DDMS are available to you:</p>
-
-  <ul>
-    <li>Devices - Shows the list of devices and AVDs that are connected to ADB.</li>
-
-    <li>Emulator Control - Lets you carry out device functions.</li>
-
-    <li>LogCat - Lets you view system log messages in real time.</li>
-
-    <li>Threads - Shows currently running threads within a VM.</li>
-
-    <li>Heap - Shows heap usage for a VM.</li>
-
-    <li>Allocation Tracker - Shows the memory allocation of objects.</li>
-
-    <li>File Explorer - Lets you explore the device's file system.</li>
-  </ul>
-  <p>To access the DDMS perspective, go to <strong>Window &gt; Open Perspective &gt;
-  DDMS</strong>. If DDMS does not appear, go to <strong>Window &gt; Open Perspective &gt; Other
-  ...</strong> and select <strong>DDMS</strong> from the Open Perspective window that appears. For
-  more information on using DDMS, see <a href="ddms.html">Using the Dalvik Debug Monitor Server</a>.
-  </p>
\ No newline at end of file
diff --git a/docs/html/tools/debugging/debugging-tracing.jd b/docs/html/tools/debugging/debugging-tracing.jd
index 829c82a..70869da 100644
--- a/docs/html/tools/debugging/debugging-tracing.jd
+++ b/docs/html/tools/debugging/debugging-tracing.jd
@@ -108,7 +108,7 @@
   <ul>
     <li>If you are using the {@link android.os.Debug} class,
      your application must have permission to write to external storage
-     ({@link android.Manifest.permission#READ_EXTERNAL_STORAGE}). </li>
+     ({@link android.Manifest.permission#WRITE_EXTERNAL_STORAGE}). </li>
     <li>If you are using DDMS:
       <ul>
         <li>Android 2.1 and earlier devices must
diff --git a/docs/html/tools/debugging/improving-w-lint.jd b/docs/html/tools/debugging/improving-w-lint.jd
index 8f74f46..3b220b5 100644
--- a/docs/html/tools/debugging/improving-w-lint.jd
+++ b/docs/html/tools/debugging/improving-w-lint.jd
@@ -9,9 +9,9 @@
 
       <ol>
         <li><a href="#overview">Overview</a></li>
-        <li><a href=#studio">Running lint from Android Studio</a></li>
-        <li><a href=#commandline">Running lint from the command-line</a></li>
-         <li><a href=#config">Configuring lint</a>
+        <li><a href="#studio">Running lint from Android Studio</a></li>
+        <li><a href="#commandline">Running lint from the command-line</a></li>
+         <li><a href="#config">Configuring lint</a>
             <ol>
 		<LI><a href="#studio_config">Configuring lint in Android Studio</a></LI>
                 <LI><a href="#pref">Configuring the lint file</a></LI>
@@ -29,12 +29,24 @@
 
 
 <p>
-In addition to testing that your Android application meets its functional requirements, it's important to ensure that your code has no structural problems. Poorly structured code can impact the reliability and efficiency of your Android apps and make your code harder to maintain. For example, if your XML resource files contain unused namespaces, this takes up space and incurs unnecessary processing. Other structural issues, such as use of deprecated elements or API calls that are not supported by the target API versions, might lead to code failing to run correctly.</p>
+In addition to testing that your Android application meets its functional requirements, it's
+important to ensure that your code has no structural problems. Poorly structured code can impact the
+reliability and efficiency of your Android apps and make your code harder to maintain. For example,
+if your XML resource files contain unused namespaces, this takes up space and incurs unnecessary
+processing. Other structural issues, such as use of deprecated elements or API calls that are not
+supported by the target API versions, might lead to code failing to run correctly.</p>
 
 <h2 id="overview">Overview</h2>
 <p>The Android SDK provides a code scanning tool called <a href="{@docRoot}tools/help/lint.html"><code>lint</code></a>
-that can help you to easily identify and correct problems with the structural quality of your code, without having to execute the app or write any test cases. Each problem detected by the tool is reported with a description message and a severity level, so that you can quickly prioritize the critical improvements that need to be made.  You can also configure a problem's severity level to ignore issues that are not relevant for your project, or raise the severity level. The tool has a command-line interface, so you can easily integrate it into your automated testing process.</p>
-<p>The {@code lint} tool checks your Android project source files for potential bugs and optimization improvements for correctness, security, performance, usability, accessibility, and internationalization. You can run {@code lint} from the command-line or from Android Studio.</p>
+that can help you to easily identify and correct problems with the structural quality of your code,
+without having to execute the app or write any test cases. Each problem detected by the tool is
+reported with a description message and a severity level, so that you can quickly prioritize the
+critical improvements that need to be made.  You can also configure a problem's severity level to
+ignore issues that are not relevant for your project, or raise the severity level. The tool has a
+command-line interface, so you can easily integrate it into your automated testing process.</p>
+<p>The {@code lint} tool checks your Android project source files for potential bugs and
+optimization improvements for correctness, security, performance, usability, accessibility, and
+internationalization. You can run {@code lint} from the command-line or from Android Studio.</p>
 
 <p class="note"><strong>Note:</strong> In Android Studio, additional
 <a href="https://www.jetbrains.com/idea/help/inspection-basics.html?search=inspection" class="external-link"
@@ -46,15 +58,23 @@
 <p class="img-caption"><strong>Figure 1.</strong> Code scanning workflow with the {@code lint} tool</p>
 <dl>
 <dt><b>Application source files</b></dt>
-<dd>The source files consist of files that make up your Android project, including Java and XML files, icons, and ProGuard configuration files. </dd>
+<dd>The source files consist of files that make up your Android project, including Java and XML
+files, icons, and ProGuard configuration files. </dd>
 <dt><b>The <code>lint.xml</code> file</b></dt>
-<dd>A configuration file that you can use to specify any {@code lint} checks that you want to exclude and to customize problem severity levels.</dd>
+<dd>A configuration file that you can use to specify any {@code lint} checks that you want to
+exclude and to customize problem severity levels.</dd>
 <dt><b>The {@code lint} tool</b></dt>
-<dd>A static code scanning tool that you can run on your Android project from the command-line or Android Studio.  The {@code lint} tool checks for structural code problems that could affect the quality and performance of your Android application. It is strongly recommended that you correct any errors that {@code lint} detects before publishing your application.</dd>
+<dd>A static code scanning tool that you can run on your Android project from the command-line or
+Android Studio.  The {@code lint} tool checks for structural code problems that could affect the
+quality and performance of your Android application. It is strongly recommended that you correct any
+errors that {@code lint} detects before publishing your application.</dd>
 <dt><b>Results of {@code lint} checking</b></dt>
-<dd>You can view the results from {@code lint} in the console or in the <strong>Event Log</strong> in Android Studio.  Each issue is identified by the location in the source files where it occurred and a description of the issue.</dd>
+<dd>You can view the results from {@code lint} in the console or in the <strong>Event Log</strong>
+in Android Studio.  Each issue is identified by the location in the source files where it occurred
+and a description of the issue.</dd>
 </dl>
-<p>The {@code lint} tool is automatically installed as part of the Android SDK Tools revision 16 or higher.</p>
+<p>The {@code lint} tool is automatically installed as part of the Android SDK Tools revision 16 or
+higher.</p>
 
 
 <h2 id="studio">Running lint in Android Studio</h2>
@@ -101,14 +121,17 @@
 <p>
 To run {@code lint} against a list of files in a project directory:
 <pre>lint [flags] &lt;project directory&gt;</pre>
-<p>For example, you can issue the following command to scan the files under the {@code myproject} directory and its subdirectories. The issue ID  <code>MissingPrefix</code> tells {@code lint} to only scan for XML attributes that are missing the Android namespace prefix.</p>
+<p>For example, you can issue the following command to scan the files under the {@code myproject}
+directory and its subdirectories. The issue ID  <code>MissingPrefix</code> tells {@code lint} to
+only scan for XML attributes that are missing the Android namespace prefix.</p>
 <pre>lint --check MissingPrefix myproject </pre>
 <p>To see the full list of flags and command-line arguments supported by the tool:</p>
 <pre>lint --help</pre>
 </p>
 
 <h3>Example lint output</h3>
-<p>The following example shows the console output when the {@code lint} command is run against a project called Earthquake.  </p>
+<p>The following example shows the console output when the {@code lint} command is run against a
+project called Earthquake.  </p>
 <pre>
 $ lint Earthquake
 
@@ -124,10 +147,17 @@
 res: Warning: Missing density variation folders in res: drawable-xhdpi [IconMissingDensityFolder]
 0 errors, 4 warnings
 </pre>
-<p>The output above lists four warnings and no errors in this project.  Three warnings ({@code ManifestOrder}, {@code UsesMinSdkAttributes}, and {@code UsesMinSdkAttributes}) were found in the project's <code>AndroidManifest.xml</code> file. The remaining warning ({@code IconMissingDensityFolder}) was found in the <code>Preferences.xml</code> layout file.</p>
+<p>The output above lists four warnings and no errors in this project.  Three warnings
+({@code ManifestOrder}, {@code UsesMinSdkAttributes}, and {@code UnusedResources}) were found in
+the project's <code>AndroidManifest.xml</code> file. The remaining warning
+({@code IconMissingDensityFolder}) was found in the <code>Preferences.xml</code> layout file.</p>
 
 <h2 id="config">Configuring lint</h2>
-<p>By default, when you run a {@code lint} scan, the tool checks for all issues that are supported by {@code lint}.  You can also restrict the issues for {@code lint} to check and assign the severity level for those issues. For example, you can disable {@code lint} checking for specific issues that are not relevant to your project and configure {@code lint} to report non-critical issues at a lower severity level.</p>
+<p>By default, when you run a {@code lint} scan, the tool checks for all issues that are supported
+by {@code lint}.  You can also restrict the issues for {@code lint} to check and assign the severity
+level for those issues. For example, you can disable {@code lint} checking for specific issues that
+are not relevant to your project and configure {@code lint} to report non-critical issues at a lower
+severity level.</p>
 <p>You can configure {@code lint} checking at different levels:</p>
 <ul>
 <LI>Globally, for the entire project</LI>
@@ -161,23 +191,33 @@
 
 <h4>Module and file-specific preferences</h4>
 <ol>
-<LI>Run the {@code lint} tool on your module by right-clicking on your module folder or file in the Project View and selecting  <strong>Analyze &gt; Inspect Code</strong>. This displays the {@code lint} inspection results
+<LI>Run the {@code lint} tool on your module by right-clicking on your module folder or file in the
+Project View and selecting  <strong>Analyze &gt; Inspect Code</strong>. This displays the
+{@code lint} inspection results
 with a list of issues that {@code lint} detected in your module.</LI>
-<li>From the <strong>Lint Warnings</strong> view, use the toolbar options to configure {@code lint} preferences for individual modules and files, and set the issue display options.</li>
+<li>From the <strong>Lint Warnings</strong> view, use the toolbar options to configure {@code lint}
+preferences for individual modules and files, and set the issue display options.</li>
 </ol>
 
 
 <h3 id="pref">Configuring the lint file</h3>
-<p>You can specify your {@code lint} checking preferences in the <code>lint.xml</code> file.  If you are creating this file manually, place it in the root directory of your Android project.  If you are configuring {@code lint} preferences in Android Studio, the <code>lint.xml</code> file is automatically created and added to your Android project for you.</p>
-<p>The <code>lint.xml</code> file consists of an enclosing <code>&lt;lint&gt;</code> parent tag that contains one or more children <code>&lt;issue&gt;</code> elements.  Each <code>&lt;issue&gt;</code> is identified by a unique <code>id</code> attribute value, which is defined by {@code lint}.</p>
+<p>You can specify your {@code lint} checking preferences in the <code>lint.xml</code> file.  If you
+are creating this file manually, place it in the root directory of your Android project.  If you are
+configuring {@code lint} preferences in Android Studio, the <code>lint.xml</code> file is
+automatically created and added to your Android project for you.</p>
+<p>The <code>lint.xml</code> file consists of an enclosing <code>&lt;lint&gt;</code> parent tag that
+contains one or more children <code>&lt;issue&gt;</code> elements.  Each <code>&lt;issue&gt;</code>
+is identified by a unique <code>id</code> attribute value, which is defined by {@code lint}.</p>
 <pre>
 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
     &lt;lint&gt;
         &lt;!-- list of issues to configure --&gt;
 &lt;/lint&gt;
 </pre>
-<p>By setting the severity attribute value in the <code>&lt;issue&gt;</code> tag, you can disable {@code lint} checking for an issue or change the severity level for an issue.  </p>
-<p class="note"><strong>Tip: </strong>To see the full list of issues supported by the {@code lint} tool and their corresponding issue IDs, run the <code>lint --list</code> command.</p>
+<p>By setting the severity attribute value in the <code>&lt;issue&gt;</code> tag, you can disable
+{@code lint} checking for an issue or change the severity level for an issue.  </p>
+<p class="note"><strong>Tip: </strong>To see the full list of issues supported by the {@code lint}
+tool and their corresponding issue IDs, run the <code>lint --list</code> command.</p>
 
 <h4>Sample lint.xml file</h4>
 <p>The following example shows the contents of a <code>lint.xml</code> file.</p>
@@ -212,8 +252,11 @@
 </p>
 
 <h4>Configuring lint checking in Java</h4>
-<p>To disable {@code lint} checking specifically for a Java class or method in your Android project, add the <code>&#64;SuppressLint</code> annotation to that Java code. </p>
-<p>The following example shows how you can turn off {@code lint} checking for the {@code NewApi} issue in the <code>onCreate</code> method.  The {@code lint} tool continues to check for the {@code NewApi} issue in other methods of this class.</p>
+<p>To disable {@code lint} checking specifically for a Java class or method in your Android project,
+add the <code>&#64;SuppressLint</code> annotation to that Java code. </p>
+<p>The following example shows how you can turn off {@code lint} checking for the {@code NewApi}
+issue in the <code>onCreate</code> method.  The {@code lint} tool continues to check for the
+{@code NewApi} issue in other methods of this class.</p>
 <pre>
 &#64;SuppressLint("NewApi")
 &#64;Override
@@ -221,22 +264,30 @@
     super.onCreate(savedInstanceState);
     setContentView(R.layout.main);
 </pre>
-<p>The following example shows how to turn off {@code lint} checking for the {@code ParserError} issue in the <code>FeedProvider</code> class:</p>
+<p>The following example shows how to turn off {@code lint} checking for the {@code ParserError}
+issue in the <code>FeedProvider</code> class:</p>
 <pre>
 &#64;SuppressLint("ParserError")
 public class FeedProvider extends ContentProvider {
 </pre>
-<p>To suppress checking for all {@code lint} issues in the Java file, use the {@code all} keyword, like this:</p>
+<p>To suppress checking for all {@code lint} issues in the Java file, use the {@code all} keyword,
+like this:</p>
 <pre>
 &#64;SuppressLint("all")
 </pre>
 
 <h4>Configuring lint checking in XML</h4>
-<p>You can use the <code>tools:ignore</code> attribute to disable {@code lint} checking for specific sections of your XML files.  In order for this attribute to be recognized by the {@code lint} tool, the following namespace value must be included in your XML file:</p>
+<p>You can use the <code>tools:ignore</code> attribute to disable {@code lint} checking for specific
+sections of your XML files.  In order for this attribute to be recognized by the {@code lint} tool,
+the following namespace value must be included in your XML file:</p>
 <pre>
 namespace xmlns:tools="http://schemas.android.com/tools"
 </pre>
-<p>The following example shows how you can turn off {@code lint} checking for the  {@code UnusedResources} issue for the <code>&lt;LinearLayout&gt;</code> element of an XML layout file.  The <code>ignore</code> attribute is inherited by the children elements of the parent element in which the attribute is declared. In this example, the {@code lint} check is also disabled for the child <code>&lt;TextView&gt;</code> element. </p>
+<p>The following example shows how you can turn off {@code lint} checking for the
+{@code UnusedResources} issue for the <code>&lt;LinearLayout&gt;</code> element of an XML layout
+file.  The <code>ignore</code> attribute is inherited by the children elements of the parent element
+in which the attribute is declared. In this example, the {@code lint} check is also disabled for the
+child <code>&lt;TextView&gt;</code> element. </p>
 <pre>
 &lt;LinearLayout 
     xmlns:android="http://schemas.android.com/apk/res/android"
@@ -247,11 +298,13 @@
         android:text="&#64;string/auto_update_prompt" /&gt;
 &lt;/LinearLayout&gt;
 </pre>
-<p>To disable more than one issue, list the issues to disable in a comma-separated string.  For example:</p>
+<p>To disable more than one issue, list the issues to disable in a comma-separated string.  For
+example:</p>
 <pre>
 tools:ignore="NewApi,StringFormatInvalid"
 </pre>
-<p>To suppress checking for all {@code lint} issues in the XML element, use the {@code all} keyword, like this:</p>
+<p>To suppress checking for all {@code lint} issues in the XML element, use the {@code all} keyword,
+like this:</p>
 <pre>
 tools:ignore="all"
 </pre>
diff --git a/docs/html/tools/debugging/systrace.jd b/docs/html/tools/debugging/systrace.jd
index 5d2cd89..bdeff12 100644
--- a/docs/html/tools/debugging/systrace.jd
+++ b/docs/html/tools/debugging/systrace.jd
@@ -43,7 +43,7 @@
 systems on an Android device. It puts together system and application thread execution on a common
 timeline. In order to analyze your app with Systrace, you first collect a trace log of your app, and
 the system activity. The generated trace allows you to view highly detailed, interactive reports
-showing everything happening the system for the traced duration.</p>
+showing everything happening in the system for the traced duration.</p>
 
 <img src="{@docRoot}images/systrace/overview.png" alt="Systrace example overview" id="figure1" />
 <p class="img-caption">
diff --git a/docs/html/tools/extras/oem-usb.jd b/docs/html/tools/extras/oem-usb.jd
index eed8a5e..cf15048 100644
--- a/docs/html/tools/extras/oem-usb.jd
+++ b/docs/html/tools/extras/oem-usb.jd
@@ -86,7 +86,7 @@
   <li>Select <strong>Browse my computer for driver software</strong> and click
     <strong>Next</strong>.</li>
   <li>Click <strong>Browse</strong> and locate the USB driver folder. (The Google USB
-Driver is located in {@code <sdk>\extras\google\usb_driver\}.)</li>
+Driver is located in {@code &lt;sdk&gt;\extras\google\usb_driver\}.)</li>
   <li>Click <strong>Next</strong> to install the driver.</li>
 </ol>
 
@@ -109,7 +109,7 @@
 <strong>Search removable media</strong>; and check <strong>Include this location in the
 search</strong>.</li>
   <li>Click <strong>Browse</strong> and locate the USB driver folder. (The Google USB
-Driver is located in {@code <sdk>\extras\google\usb_driver\}.)</li>
+Driver is located in {@code &lt;sdk&gt;\extras\google\usb_driver\}.)</li>
   <li>Click <strong>Next</strong> to upgrade the driver.</li>
 </ol>
 
@@ -127,8 +127,8 @@
   <li>Select <strong>I don't have the disk. Show me other options</strong>.</li>
   <li>Select <strong>Browse my computer for driver software</strong>.</li>
   <li>Click <strong>Browse</strong> and locate the USB driver folder. (The Google USB
-Driver is located in {@code <sdk>\extras\google\usb_driver\}.) As long as you specified the
-exact location of the 
+Driver is located in {@code &lt;sdk&gt;\extras\google\usb_driver\}.) As long as you specified the
+exact location of the
     installation package, you may leave <strong>Include subfolders</strong> checked or
   unchecked&mdash;it doesn't matter.</li>
   <li>Click <strong>Next</strong>. Vista may prompt you to confirm the privilege elevation
@@ -152,7 +152,7 @@
   search for the driver
     software. Select <strong>Browse my computer for driver software</strong>.</li>
   <li>Click <strong>Browse</strong> and locate the USB driver folder. (The Google USB
-Driver is located in {@code <sdk>\extras\google\usb_driver\}.) As long as you specified the
+Driver is located in {@code &lt;sdk&gt;\extras\google\usb_driver\}.) As long as you specified the
 exact location of the
     installation package, you may leave <strong>Include subfolders</strong> checked or
     unchecked&mdash;it doesn't matter.</li>
@@ -161,124 +161,245 @@
   <li>When Vista asks if you'd like to install the Google ADB Interface device,
   click <strong>Install</strong> to upgrade the driver.</li>
 </ol>
-  
+
 
 <h2 id="Drivers">OEM Drivers</h2>
 
 
-<table><tr>
+<table>
+<tr>
     <th>OEM</th>
     <th>Driver URL</th></tr>
-<tr><td>Acer</td>	<td><a
-href="http://www.acer.com/worldwide/support/mobile.html">http://www.acer.com/worldwide/support/mobile.html</a>
-    </td></tr>
-  <tr>
-    <td style="font-variant:small-caps">alcatel one touch</td>
-    <td><a
-href="http://www.alcatelonetouch.com/global-en/support/faq/usbdriver.html">http://www.alcatelonetouch.com/global-en/support/faq/usbdriver.html</a></td>
-  </tr>
-  <tr>
-    <td>Asus</td>
-    <td><a href="http://support.asus.com/download/">http://support.asus.com/download/</a></td>
-  </tr>
-  <tr><td>
-       Dell
-    </td>	<td>
-      <a
-href="http://support.dell.com/support/downloads/index.aspx?c=us&cs=19&l=en&s=dhs&~ck=anavml">http://support.dell.com/support/downloads/index.aspx?c=us&cs=19&l=en&s=dhs&~ck=anavml</a>  </td></tr>
+      <tr>
+        <td>
+          Acer
+        </td>
+        <td>
+          <a href=
+          "http://www.acer.com/worldwide/support/mobile.html">http://www.acer.com/worldwide/support/mobile.html</a>
+        </td>
+      </tr>
 
-<tr><td>Foxconn</td>	<td><a
-href="http://drivers.cmcs.com.tw/">http://drivers.cmcs.com.tw/</a></td>
-</tr>
-  <tr>
-    <td>
-      Fujitsu
-    </td>
-    <td><a
-href="http://www.fmworld.net/product/phone/sp/android/develop/">http://www.fmworld.net/product/phone/sp/android/develop/</a>
-    </td>
-  </tr>
-  <tr><td>
-       Garmin-Asus
-    </td>	<td><a
-href="https://www.garminasus.com/en_US/support/pcsync/">https://www.garminasus.com/en_US/support/pcsync/</a></td>
-</tr>
+      <tr>
+        <td style="font-variant:small-caps">
+          alcatel one touch
+        </td>
+        <td>
+          <a href=
+          "http://www.alcatelonetouch.com/global-en/support/">http://www.alcatelonetouch.com/global-en/support/</a>
+        </td>
+      </tr>
 
-<tr><td>Hisense</td>
-  <td><a
-href="http://app.hismarttv.com/dss/resourcecontent.do?method=viewResourceDetail&resourceId=16&type=5">http://app.hismarttv.com/dss/resourcecontent.do?method=viewResourceDetail&amp;resourceId=16&amp;type=5 </a></td>
-</tr>
+      <tr>
+        <td>
+          Asus
+        </td>
+        <td>
+          <a href="http://support.asus.com/download/">http://support.asus.com/download/</a>
+        </td>
+      </tr>
 
-<tr><td>HTC</td>	<td><a href="http://www.htc.com">http://www.htc.com </a> <br>Click on the
-support tab to select your products/device.  Different regions will have different links.</td>
-</tr>
+      <tr>
+        <td>
+          Blackberry
+        </td>
+        <td>
+          <a href=
+          "https://swdownloads.blackberry.com/Downloads/entry.do?code=4EE0932F46276313B51570F46266A608">
+          https://swdownloads.blackberry.com/Downloads/entry.do?code=4EE0932F46276313B51570F46266A608</a>
+        </td>
+      </tr>
 
-<tr><td>Huawei</td>	<td><a
-href="http://www.huaweidevice.com/worldwide/downloadCenter.do?method=index">http://www.huaweidevice.com/worldwide/downloadCenter.do?method=index</a></td>
-</tr>
+      <tr>
+        <td>
+          Dell
+        </td>
+        <td>
+          <a href=
+          "http://support.dell.com/support/downloads/index.aspx?c=us&amp;cs=19&amp;l=en&amp;s=dhs&amp;~ck=anavml">
+          http://support.dell.com/support/downloads/index.aspx?c=us&amp;cs=19&amp;l=en&amp;s=dhs&amp;~ck=anavml</a>
+        </td>
+      </tr>
 
-<tr><td>Intel</td>	<td><a
-href="http://www.intel.com/software/android">http://www.intel.com/software/android</a></td>
-</tr>
+      <tr>
+        <td>
+          Fujitsu
+        </td>
+        <td>
+          <a href=
+          "http://www.fmworld.net/product/phone/sp/android/develop/">http://www.fmworld.net/product/phone/sp/android/develop/</a>
+        </td>
+      </tr>
 
-<tr><td>KT Tech</td>	<td><a
-href="http://www.kttech.co.kr/cscenter/download05.asp">http://www.kttech.co.kr/cscenter/download05.asp</a> for EV-S100 (Take)</td>
-</tr>
-  <tr>
-    <td>
-      Kyocera
-    </td>
-    <td><a href="http://www.kyocera-wireless.com/support/phone_drivers.htm">http://www.kyocera-wireless.com/support/phone_drivers.htm</a>
-    </td>
-  </tr>
-  <tr>
-    <td>Lenovo</td>
-    <td><a href="http://developer.lenovomm.com/developer/download.jsp"
-        >http://developer.lenovomm.com/developer/download.jsp</a>
-    </td>
-  </tr>
-  <tr><td>LGE</td>	<td><a
-href="http://www.lg.com/us/mobile-phones/mobile-support/mobile-lg-mobile-phone-support.jsp">http://www.lg.com/us/mobile-phones/mobile-support/mobile-lg-mobile-phone-support.jsp</a></td>
-</tr>
-<tr><td>Motorola</td> <td><a
-href="http://developer.motorola.com/docstools/USB_Drivers/">http://developer.motorola.com/docstools/USB_Drivers/</a></td>
-</tr>
-<tr><td>MTK</td> <td><a
-href="http://online.mediatek.com/Public%20Documents/MTK_Android_USB_Driver.zip">http://online.mediatek.com/Public%20Documents/MTK_Android_USB_Driver.zip</a></td>
-</tr>
-<tr><td>Oppo</td> <td><a
-href="http://www.oppo.com/index.php?q=software/view&sw_id=631"
->http://www.oppo.com/index.php?q=software/view&sw_id=631</a></td>
-</tr>
-<tr><td>Pantech</td>	<td><a
-href="http://www.isky.co.kr/cs/software/software.sky?fromUrl=index">http://www.isky.co.kr/cs/software/software.sky?fromUrl=index</a></td>
-</tr><tr><td>Pegatron</td>	<td><a
-href="http://www.pegatroncorp.com/download/New_Duke_PC_Driver_0705.zip">http://www.pegatroncorp.com/download/New_Duke_PC_Driver_0705.zip</a> (ZIP download)</td>
-</tr><tr><td>Samsung</td>	<td><a
-href="http://www.samsung.com/us/support/downloads">http://www.samsung.com/us/support/downloads</a></td>
-</tr><tr><td>Sharp</td>	<td><a
-href="http://k-tai.sharp.co.jp/support/">http://k-tai.sharp.co.jp/support/</a></td>
-</tr><tr><td>SK Telesys</td>	<td><a
-href="http://www.sk-w.com/service/wDownload/wDownload.jsp">http://www.sk-w.com/service/wDownload/wDownload.jsp</a></td></tr><tr>
-<td>Sony Mobile Communications</td>	<td><a
-href="http://developer.sonymobile.com/downloads/drivers/">http://developer.sonymobile.com/downloads/drivers/</a></td></tr>
+      <tr>
+        <td>
+          Hisense
+        </td>
+        <td>
+          <a href=
+          "http://app.hismarttv.com/dss/resourcecontent.do?method=viewResourceDetail&amp;resourceId=16&amp;type=5">
+          http://app.hismarttv.com/dss/resourcecontent.do?method=viewResourceDetail&amp;resourceId=16&amp;type=5</a>
+        </td>
+      </tr>
 
-<tr><td>Teleepoch</td>	<td><a
-href="http://www.teleepoch.com/android.html">http://www.teleepoch.com/android.html</a></td>
-</tr>
+      <tr>
+        <td>
+          HTC
+        </td>
+        <td>
+          <a href="http://www.htc.com">http://www.htc.com</a><br>
+          Click on the support tab to select your products/device. Different regions will have
+          different links.
+        </td>
+      </tr>
 
-<tr><td>Toshiba</td>  <td><a
-href="http://support.toshiba.com/sscontent?docId=4001814">http://support.toshiba.com/sscontent?docId=4001814</a></td>
-</tr>
+      <tr>
+        <td>
+          Huawei
+        </td>
+        <td>
+          <a href=
+          "http://consumer.huawei.com/en/support/index.htm">http://consumer.huawei.com/en/support/index.htm</a>
+        </td>
+      </tr>
 
-<tr><td>Yulong Coolpad</td>	<td><a
-href="http://www.yulong.com/product/product/product/downloadList.html#downListUL">http://www.yulong.com/product/product/product/downloadList.html#downListUL</a></td>
-</tr>
+      <tr>
+        <td>
+          Intel
+        </td>
+        <td>
+          <a href="http://www.intel.com/software/android">http://www.intel.com/software/android</a>
+        </td>
+      </tr>
 
-<tr><td>Xiaomi</td>  <td><a
-href="http://www.xiaomi.com/c/driver/index.html">http://www.xiaomi.com/c/driver/index.html</a></td>
-</tr>
-<tr>
-<td>ZTE</td>	<td><a
-href="http://support.zte.com.cn/support/news/NewsDetail.aspx?newsId=1000442">http://support.zte.com.cn/support/news/NewsDetail.aspx?newsId=1000442</a></td></tr>
-</table>
+      <tr>
+        <td>
+          Kyocera
+        </td>
+        <td>
+          <a href=
+          "http://www.kyocera-wireless.com/support/phone_drivers.htm">http://www.kyocera-wireless.com/support/phone_drivers.htm</a>
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          Lenovo
+        </td>
+        <td>
+          <a href=
+          "http://support.lenovo.com/us/en/GlobalProductSelector">http://support.lenovo.com/us/en/GlobalProductSelector</a>
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          LGE
+        </td>
+        <td>
+          <a href=
+          "http://www.lg.com/us/support/software-firmware">http://www.lg.com/us/support/software-firmware</a>
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          Motorola
+        </td>
+        <td>
+          <a href=
+          "https://motorola-global-portal.custhelp.com/app/answers/detail/a_id/88481">https://motorola-global-portal.custhelp.com/app/answers/detail/a_id/88481/</a>
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          MTK
+        </td>
+        <td>
+          <a href=
+          "http://online.mediatek.com/Public%20Documents/MTK_Android_USB_Driver.zip">http://online.mediatek.com/Public%20Documents/MTK_Android_USB_Driver.zip</a>
+          (ZIP download)
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          Oppo
+        </td>
+        <td>
+          <a href=
+          "http://www.oppo.com/index.php?q=software/view&amp;sw_id=631">http://www.oppo.com/index.php?q=software/view&amp;sw_id=631</a>
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          Pegatron
+        </td>
+        <td>
+          <a href=
+          "http://www.pegatroncorp.com/download/New_Duke_PC_Driver_0705.zip">http://www.pegatroncorp.com/download/New_Duke_PC_Driver_0705.zip</a>
+          (ZIP download)
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          Samsung
+        </td>
+        <td>
+          <a href=
+          "http://www.samsung.com/us/support/downloads">http://www.samsung.com/us/support/downloads</a>
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          Sharp
+        </td>
+        <td>
+          <a href="http://k-tai.sharp.co.jp/support/">http://k-tai.sharp.co.jp/support/</a>
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          Sony Mobile Communications
+        </td>
+        <td>
+          <a href=
+          "http://developer.sonymobile.com/downloads/drivers/">http://developer.sonymobile.com/downloads/drivers/</a>
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          Toshiba
+        </td>
+        <td>
+          <a href=
+          "http://support.toshiba.com/sscontent?docId=4001814">http://support.toshiba.com/sscontent?docId=4001814</a>
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          Xiaomi
+        </td>
+        <td>
+          <a href=
+          "http://www.xiaomi.com/c/driver/index.html">http://www.xiaomi.com/c/driver/index.html</a>
+        </td>
+      </tr>
+
+      <tr>
+        <td>
+          ZTE
+        </td>
+        <td>
+          <a href=
+          "http://support.zte.com.cn/support/news/NewsDetail.aspx?newsId=1000442">http://support.zte.com.cn/support/news/NewsDetail.aspx?newsId=1000442</a>
+        </td>
+      </tr>
+</table>
\ No newline at end of file
diff --git a/docs/html/tools/help/adb.jd b/docs/html/tools/help/adb.jd
old mode 100644
new mode 100755
index bcd949a..0340efe
--- a/docs/html/tools/help/adb.jd
+++ b/docs/html/tools/help/adb.jd
@@ -29,7 +29,7 @@
 
 <ul>
   <li>A client, which runs on your development machine. You can invoke a client from a shell
-by issuing an adb command. Other Android tools such as the ADT plugin and DDMS also create
+by issuing an adb command. Other Android tools such as DDMS also create
 adb clients. </li>
   <li>A server, which runs as a background process on your development machine. The server
 manages communication between the client and the adb daemon running on an emulator or device. </li>
@@ -361,7 +361,7 @@
 <p>For more information about how to create an .apk file that you can install on an emulator/device
 instance, see <a href="{@docRoot}tools/building/index.html">Building and Running</a></p>
 
-<p>Note that, if you are using the Eclipse IDE and have the ADT plugin installed, you do not need to use adb (or aapt) directly to install your application on the emulator/device. Instead, the ADT plugin handles the packaging and installation of the application for you. </p>
+<p>Note that, if you are using Android Studio, you do not need to use adb (or aapt) directly to install your application on the emulator/device. Instead, Android Studio handles the packaging and installation of the application for you. </p>
 
 
 
diff --git a/docs/html/tools/help/adt.jd b/docs/html/tools/help/adt.jd
index 0fac62d..7d29d02 100644
--- a/docs/html/tools/help/adt.jd
+++ b/docs/html/tools/help/adt.jd
@@ -2,540 +2,23 @@
 page.tags=adt
 @jd:body
 
-  <div id="qv-wrapper">
-    <div id="qv">
-      <h2>In this document</h2>
-
-      <ol>
-        <li><a href="#tools">SDK Tools Integration</a></li>
-
-        <li><a href="#editors">Code Editors</a>
-          <ol>
-            <li><a href="#resource-linking">Resource linking enhancements</a></li>
-          </ol>
-        </li>
-
-        <li><a href="#graphical-editor">Graphical Layout Editor</a>
-          <ol>
-            <li><a href="#canvas">Canvas and outline view</a></li>
-            <li><a href="#palette">Palette</a></li>
-            <li><a href="#config-chooser">Configuration chooser</a></li>
-          </ol>
-        </li>
-
-        <li><a href="#refactoring">Layout Factoring Support</a></li>
-        <li><a href="#Updating">Updating the ADT Plugin</a></li>
-
-      </ol>
-    </div>
-  </div>
-
 <p class="caution">
-  <strong>Important:</strong> Support for the Android Developer Tools (ADT) in Eclipse is ending,
+  <strong>Important:</strong> Support for the Android Developer Tools (ADT) in Eclipse has ended,
   per our <a href=
   "http://android-developers.blogspot.com/2015/06/an-update-on-eclipse-android-developer.html"
   class="external-link">announcement</a>. You should migrate your app development projects to
   Android Studio as soon as possible. For more information on transitioning to Android Studio, see
-  <a href="{@docRoot}sdk/installing/migrate.html">Migrating to Android Studio</a>.
+  <a href="{@docRoot}sdk/installing/migrate.html">Migrating from Eclipse ADT</a>.
 </p>
 
-  <p>Android Developer Tools (ADT) is a plugin for Eclipse that provides a suite of
-  tools that are integrated with the Eclipse IDE. It offers you access to many features that help
-  you develop Android applications. ADT
-  provides GUI access to many of the command line SDK tools as well as a UI design tool for rapid
-  prototyping, designing, and building of your application's user interface.</p>
+  <p>Formerly the official IDE solution for Android development, Android Developer Tools (ADT)
+  is a plugin for Eclipse that provides GUI-based access to many of the command-line SDK tools,
+  along with a UI design tool for rapid prototyping, designing, and building of your app's
+  user interface.</p>
 
-<p>If you still wish to use the ADT plugin for Eclipse, see
-<a href="{@docRoot}sdk/installing/installing-adt.html">Installing Eclipse Plugin.</a>
-</p>
-
-
-  <h2 id="tools">SDK Tools Integration</h2>
-
-  <div class="sidebox-wrapper">
-    <div class="sidebox">
-      <h2>Need help designing icons?</h2>
-  <p>The <a href="http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html">Android
-      Asset Studio</a> is a web-based tool that lets you generate icons from existing images,
-    clipart, or text. It also generates the icons with different DPIs for different screen sizes and
-    types.</p>
-
-    </div>
-  </div>
-
-  <p>Many of the tools that you can start or run from the command line are integrated into ADT.
-  They include:</p>
-
-  <ul>
-    <li><a href="{@docRoot}tools/debugging/debugging-tracing.html">Traceview</a>:
-    Allows you to profile your program's execution
-    (<strong>Window &gt; Open Perspective &gt; Traceview</strong>). </li>
-
-    <li><a href="{@docRoot}tools/help/android.html">android</a>: Provides access to
-    the Android SDK Manager and AVD Manager. Other <code>android</code> features such as creating or
-    updating projects (application and library) are integrated throughout the Eclipse IDE. </li>
-
-    <li><a href="{@docRoot}tools/debugging/debugging-ui.html#HierarchyViewer">Hierarchy
-    Viewer</a>: Allows you to visualize your application's view hierarchy to find inefficiencies
-    (<strong>Window &gt; Open Perspective &gt; Hierarchy Viewer</strong>).</li>
-
-    <li><a href="{@docRoot}tools/debugging/debugging-ui.html#pixelperfect">Pixel
-    Perfect</a>: Allows you to closely examine your UI to help with designing and building.
-    (<strong>Window &gt; Open Perspective &gt; Pixel Perfect</strong>).</li>
-
-    <li><a href="{@docRoot}tools/debugging/ddms.html">DDMS</a>: Provides
-    debugging features including: screen capturing, thread and heap information, and logcat
-    (<strong>Window &gt; Open Perspective &gt; DDMS</strong>).</li>
-
-    <li><a href="{@docRoot}tools/help/adb.html">adb</a>: Provides access to
-      a device from your development system. Some features of
-    <code>adb</code> are integrated into ADT such as project installation (Eclipse run menu),
-    file transfer, device enumeration, and logcat (DDMS). You must access the more advanced
-    features of <code>adb</code>, such as shell commands, from the command line.</li>
-
-    <li><a href="{@docRoot}tools/help/proguard.html">ProGuard</a>: Allows code obfuscation,
-    shrinking, and optimization. ADT integrates ProGuard as part of the build, if you <a href=
-    "{@docRoot}tools/help/proguard.html#enabling">enable it</a>.</li>
-  </ul>
-
-<h2 id="editors">Code Editors</h2>
-
-  <p>In addition to Eclipse's standard editor features, ADT provides custom XML editors to help
-  you create and edit Android manifests, resources, menus, and layouts in a form-based or graphical
-  mode. Double-clicking on an XML file in Eclipse's package explorer opens the
-  appropriate XML editor.
-
-    <div class="sidebox-wrapper">
-    <div class="sidebox">
-      <h2>Google I/O Session Video</h2>
-      <p>View the segment on the <a href=
-      "http://www.youtube.com/watch?v=Oq05KqjXTvs#t=30m50s">XML editors</a> for more
-      information.</p>
-    </div>
-  </div>
-
-  <p class="note"><strong>Note:</strong> You can edit Android-specific XML files (such as a layout
-or manifest) in both a graphical mode and also an XML markup mode. You can switch between
-these modes with the pair of tabs at the bottom of each custom XML editor.</p>
-
-  <p>In addition, some special file types that don't have custom editors, such as drawables, animations,
-  and color files offer editing enhancements such as XML tag completion.</p>
-
-<p>ADT provides the following custom, form-based XML editors:</p>
-
-  <dl>
-
-    <dt><strong>Graphical Layout Editor</strong></dt>
-
-    <dd>Edit and design your XML layout files with a drag and drop interface. The layout editor
-    renders your interface as well, offering you a preview as you design your layouts. This editor
-    is invoked when you open an XML file with a view declared (usually declared in
-    <code>res/layout</code>. For more information, see <a href="#graphical-editor">Graphical Layout
-    Editor</a>.</dd>
-
-    <dt><strong>Android Manifest Editor</strong></dt>
-
-    <dd>Edit Android manifests with a simple graphical interface. This editor is invoked
-    when you open an <code>AndroidManifest.xml</code> file.</dd>
-
-    <dt><strong>Menu Editor</strong></dt>
-
-    <dd>Edit menu groups and items with a simple graphical interface. This editor is
-    invoked when you open an XML file with a <code>&lt;menu&gt;</code> declared (usually located in
-    the <code>res/menu</code> folder).</dd>
-
-    <dt><strong>Resources Editor</strong></dt>
-
-    <dd>Edit resources with a simple graphical interface. This editor is invoked when
-    you open an XML file with a <code>&lt;resources&gt;</code> tag declared.</dd>
-
-    <dt><strong>XML Resources Editor</strong></dt>
-
-    <dd>Edit XML resources with a simple graphical interface. This editor is invoked
-    when you open an XML file.</dd>
-  </dl>
-
-
-  <h3 id="resource-linking">Resource linking enhancements</h3>
-  <p>In addition to the normal code editing features of Eclipse, ADT provides enhancements to the Android
-  development experience that allow you to quickly jump to declarations of various types of resources such
-  as strings or layout files. You can access these enhancements by holding down the control key and
-  clicking on the following items:
-
-      <ul>
-
-        <li>A resource identifier, such as <code>R.id.button1</code>, jumps
-        to the XML definition of the view.</li>
-
-        <li>A declaration in the <code>R.java</code> file, such as <code>public
-        static final int Button01=0x7f050000"</code>, jumps to the corresponding XML definition.</li>
-
-        <li>An activity or service definition in your manifest, such as
-        <code>&lt;activity android:name=".TestActivity"&gt;</code>, jumps to the corresponding Java class. You can
-        jump from an activity definition (or service definition) into the corresponding Java class.</li>
-
-        <li>You can jump to any value definition (e.g. <code>@string:foo</code>), regardless of
-which XML file
-        "foo" is defined in.</li>
-
-        <li>Any file-based declaration, such as <code>@layout/bar</code>, opens the file.</li>
-
-        <li>Non-XML resources, such as <code>@drawable/icon</code>, launches
-        Eclipse's default application for the given file type, which in this case is an
-        image.</li>
-
-        <li><code>@android</code> namespace resources opens the resources found in
-        the SDK install area.</li>
-
-        <li>Custom views in XML layouts, such as <code>&lt;foo.bar.MyView&gt;&lt;/foo.bar.MyView&gt;</code>,
-        or <code>&lt;view class="foo.bar.MyView"&gt;</code>) jump to the corresponding custom view classes.</li>
-
-        <li>An XML attribute such as <code>@android:string/ok</code> or <code>android.R.string.id</code> in Java code
-        opens the file that declares the strings. The XML tab opens when doing this, not
-        the form-based editor.</li>
-
-      </ul>
-
-  <h2 id="graphical-editor">Graphical Layout Editor</h2>
-
-  <p>ADT provides many features to allow you to design and build your application's user interface.
-  Many of these features are in the graphical layout editor, which you can access by opening one of
-  your application's XML layout files in Eclipse.
+  <p>As with ADT, support for the <a href="http://ant.apache.org/"
+  class="external-link">Ant</a>
+  tool for building from the command line has ended.
+  <a href="{@docRoot}tools/building/plugin-for-gradle.html">Gradle</a> is now the supported method
+  of building Android apps.
   </p>
-
-  <p>The graphical layout editor is the main screen that you use to visually design and build your
-  UI. It is split up into the following parts:</p>
-
-  <dl>
-    <dt><strong>Canvas</strong></dt>
-
-    <dd>In the middle of the editor is the canvas. It provides the rendered view of your
-    layout and supports dragging and dropping of UI widgets
-    directly from the palette. You can select the platform version used to render the items in
-    the canvas. Each platform version has its own look and feel, which might be the similar to or
-    radically different from another platform version. The canvas renders the appropriate look
-    and feel for the currently selected platform version.
-    This platform version does not need to be the same as the version that your
-    application targets.
-
-    <p>The canvas also provides
-    context-sensitive actions in the layout actions bar, such as adjusting layout margins and
-orientation.
-    The layout actions bar displays available actions depending on the selected UI element in the
-    canvas.</p>
-    </dd>
-
-    <dt><strong>Outline</strong></dt>
-
-    <dd>On the right side of the editor is the outline view. It displays a hierarchical
-    view of your layout where you can do things such as reorder of views. The outline
-    view exposes similar functionality as the canvas but displays your layout in an ordered
-    list instead of a rendered preview.</dd>
-
-    <dt><strong>Palette</strong></dt>
-
-    <dd>On the left side of the editor is the palette. It provides a set of widgets that
-    you can drag onto the canvas. The palette shows rendered previews of the
-    widgets for easy lookup of desired UI widgets.</dd>
-
-    <dt><strong>Configuration Chooser</strong></dt>
-
-    <dd>At the top of the editor is the configuration chooser.
-    It provides options to change a layout's rendering mode or screen type.</dd>
-  </dl>
-
-  <img src="{@docRoot}images/layout_editor.png" alt="graphical layout editor screenshot"
-  height="500" id="layout-editor" name="layout-editor">
-
-  <p class="img-caption"><strong>Figure 1.</strong> Graphical layout editor</p>
-
-  <h3 id="canvas">Canvas and outline view</h3>
-
-  <div class="sidebox-wrapper">
-    <div class="sidebox">
-      <h2>Google I/O Session Video</h2>
-
-      <p>View the segment on the <a href=
-      "http://www.youtube.com/watch?v=Oq05KqjXTvs#t=7m16s">canvas and outline view</a> and the
-      <a href="http://www.youtube.com/watch?v=Oq05KqjXTvs#t=11m43s">layout actions bar</a>
-      for more information.
-      </p>
-    </div>
-  </div>
-
-  <p>The canvas is the area where you can drag and drop UI widgets from the palette to design your
-  layout. The canvas offers a rendered preview of your layout depending on factors such as the
-  selected platform version, screen orientation, and currently selected theme that you specify in
-  the <a href="#configuration-chooser">configuration chooser</a>. You can also drag and drop
-  items into the outline view, which displays your layout in a hierarchical list. The outline view
-  exposes much of the same functionality as the canvas but offers another method of organization
-  that is beneficial for ordering and quickly selecting items. When you right-click a specific item
-  in the canvas or outline view, you can access a context-sensitive menu that lets you modify the
-  following attributes of the layout or view:</p>
-
-  <dl>
-    <dt><strong>View and layout properties</strong></dt>
-
-    <dd>
-      When you right-click a view or layout in the canvas or outline view, it brings up a
-      context-sensitive menu that lets you set things such as:
-
-      <ul>
-        <li>ID of the view or layout</li>
-
-        <li>Text of the view</li>
-
-        <li>Layout width</li>
-
-        <li>Layout height</li>
-
-        <li>Properties such as alpha or clickable</li>
-      </ul>
-    </dd>
-
-    <dt><strong>Animation preview and creation</strong></dt>
-
-    <dd>
-      If your layout or view is animated, you can preview the animation directly in the canvas
-      (when you select Android 3.0 or later as the platform version in the configuration chooser).
-      Right-click an item in the canvas and select <strong>Play Animation</strong>. If
-      animation is not associated with item, an option is available in the menu to create one.
-
-      <p>View the segment on the <a href=
-      "http://www.youtube.com/watch?v=Oq05KqjXTvs#t=28m30s">animation features</a> for more
-      information.</p>
-    </dd>
-
-    <dt><strong>Extract as Include</strong></dt>
-
-    <dd>You can extract parts of a current layout into its own layout file,
-    which you can then include in any layout with a single line of XML. See <a href=
-    "#extract-as-include">Layout Refactoring Support</a> for more information.</dd>
-  </dl>
-
-  <h4>Other canvas features</h4>
-
-  <p>The canvas has additional features not available in the outline view:</p>
-
-  <ul>
-
-    <li>Edit views with the layout actions bar: The context-sensitive layout actions bar allows you to
-    edit how a view is laid out in your UI. The available actions depend on the currently
-    selected view and its parent layout. Some common actions include
-    toggling the fill mode of the view and specifying margins. For instance, if you select a
-    {@link android.widget.Button}
-    in a {@link android.widget.LinearLayout}, you see actions related to the {@link
-android.widget.LinearLayout}, such as a toggle to switch
-    between horizontal and vertical layout, and a toggle to control whether its children are
-    aligned along their text baseline. You will also see toolbar actions to control the individual
-    layout attributes of the child, such as whether the child should stretch out to match its
-    parent's width and height, a dropdown action to set the child's layout gravity, a button to open
-    a margin editor, and a layout weight editor.</li>
-
-    <li>Edit a nested layout in its current context: If you are editing a layout
-    that includes another layout, you can edit the included layout in the layout that included
-    it.</li>
-
-    <li>Preview drag and drop location: When you drag and drop a UI widget onto the canvas, ruler
-    markers appear showing you the approximate location of the UI widget depending on the
-    type of layout, such as {@link android.widget.RelativeLayout} or {@link
-    android.widget.LinearLayout}.</li>
-
-    <li>Preview animations: You can preview view and layout animations when you select Android 2.1
-    or later for the platform version in the configuration bar.</li>
-
-    <li>Render layouts in real-time: Layouts are rendered as accurately as possible according to
-    the platform version, including the appropriate system and action bars.</li>
-
-    <li>Support for fragments: Fragments can be rendered in the same screen as the layout that
-    includes the fragments.</li>
-
-  </ul>
-
-  <img src="{@docRoot}images/canvas.png" alt="screenshot of the canvas" height="553">
-
-  <p class="img-caption"><strong>Figure 2.</strong> Canvas portion of the layout editor showing
-  a rendered preview of an application</p>
-
-  <img src=
-  "{@docRoot}images/layout_outline.png" alt="screenshot of the outline view" height="185">
-
-  <p class="img-caption"><strong>Figure 3.</strong> Outline view showing current layout's structure</p>
-
-  <h3 id="palette">Palette</h3>
-
-  <div class="sidebox-wrapper">
-    <div class="sidebox">
-      <h2>Google I/O Session Video</h2>
-
-      <p>View the segment on the <a href=
-      "http://www.youtube.com/watch?v=Oq05KqjXTvs#t=7m53s">palette</a> for more information.</p>
-    </div>
-  </div>
-
-  <p>The palette contains the UI widgets that you can drag and drop onto the canvas and add to your
-  layout. The pallete categorizes the widgets and shows rendered previews
-  for easier lookup. The main features of the palette include:</p>
-
-  <ul>
-    <li>Different modes of rendered previews include: icons only, icons and text, tiny previews,
-    small previews, and previews (rendered in real size). Previews are only available for layouts
-    rendered with the latest revisions of Android 2.1 (API Level 7) or later.</li>
-
-    <li>Custom views in your project or library projects are added under custom views
-    category.</li>
-
-    <li>Arrange UI widgets alphabetically or by category.</li>
-  </ul>
-  <img src="{@docRoot}images/palette.png" alt="palette screenshot" height="566">
-
-  <p class="img-caption"><strong>Figure 4.</strong> Palette showing available UI widgets</p>
-
-  <h3 id="config-chooser">Configuration chooser</h3>
-
-  <div class="sidebox-wrapper">
-    <div class="sidebox">
-      <h2>Google I/O Session Video</h2>
-
-      <p>View the segment on the <a href=
-      "http://www.youtube.com/watch?v=Oq05KqjXTvs#t=12m51s">configuration chooser</a> for more
-      information.</p>
-    </div>
-  </div>
-
-
-  <p>The configuration chooser allows you to create and configure different configurations of
-  a layout for different situations, such as one for landscape and one for portrait mode. You can
-  set the following options for each configuration of a layout:
-  </p>
-      <ul>
-        <li>Screen type combo box: Predefined screen settings for common device configurations. You
-        can also create your own by selecting <strong>Custom...</strong>.</li>
-
-        <li>Screen orientation combo box: Portrait or Landscape screen orientation.</li>
-
-        <li>Theme combo box: Predefined themes or a custom theme that you have created.</li>
-
-        <li>Platform combo box: Platform version used to render the canvas and palette as well as
-        displaying appropriate themes.</li>
-
-        <li>Custom layout combo boxes: The locale, dock, and time of day combo boxes let you select
-        different versions of the same layout depending on the device's current state. You can
-        create a new version of a layout with the <strong>Create</strong> button.</li>
-      </ul>
-
-      <img src="{@docRoot}images/layout_bar.png" alt=
-  "configuration chooser screenshot" height="50" id="configuration-chooser" name="configuration chooser">
-
-  <p class="img-caption"><strong>Figure 5.</strong> Configuration chooser</p>
-
-  <h2 id="refactoring">Layout Refactoring Support</h2>
-
-  <div class="sidebox-wrapper">
-    <div class="sidebox">
-      <h2>Google I/O Session Video</h2>
-
-      <p>View the segment on <a href=
-      "http://www.youtube.com/watch?v=Oq05KqjXTvs#t=18m00s">refactoring features</a> for a rundown
-of the more important refactoring features.</p>
-
-    </div>
-  </div>
-
-  <p>In both the graphical and XML layout editor, there are many features that help you quickly
-  refactor your layouts. The following list describes the major refactoring support:</p>
-
-  <dl>
-
-    <dt><strong>Change layout</strong></dt>
-    <dd>This lets you change the layout on the fly and re-renders the canvas for you.
-    You can apply this refactoring to any layout and the layout is converted to the new type if
-    possible. In many cases, the opening and closing tags of the layout's XML element are changed
-    along with things such as ID attributes and their references. However, for some supported
-    types, ADT attempts to preserve the layout, such as changing a {@link
-    android.widget.LinearLayout} to a {@link android.widget.RelativeLayout}.</dd>
-
-    <dt><strong>Change widget</strong></dt>
-    <dd>This lets you select one or more widgets and converts them to a new widget type. In
-    addition to changing the element name, it also removes any
-    attributes that are not supported by the new widget type and adds in any mandatory attributes
-    required by the new widget type. If the current ID of a widget includes the
-    current widget type in its ID (such as a <code>&lt;Button&gt;</code> widget named
-    <code>"button1"</code>), then the ID is changed to match the new widget type and all
-    references are updated.</dd>
-
-    <dt id="extract-as-include"><strong>Extract as include</strong></dt>
-    <dd>This lets you extract views inside of an existing layout into their own separate layout
-    file. An <code>include</code> tag that points to the newly created layout file is inserted
-    into the existing layout file. Right-click the view or layout and select <strong>Extract as
-    Include...</strong>.</dd>
-
-    <dt><strong>Extract string</strong></dt>
-    <dd>Extract strings from either XML or Java files into their own separate resource file.</dd>
-
-    <dt><strong>Extract style</strong></dt>
-    <dd>Extract style-related attributes from a layout and define them in a new
-    <code>styles.xml</code> file. You can select multiple views and this refactoring extracts all
-    of the same styles into one style and assigns that style to all the views that use it.</dd>
-
-    <dt><strong>Wrap-in container</strong></dt>
-    <dd>This lets you select one or more sibling elements and wrap them in a new container. This
-    can be applied to the root element as well, in which case the namespace declaration attributes
-    will be transferred to the new root. This refactoring also transfers <code>layout_</code>
-    attribute references to the new root, For example, suppose you have a {@link android.widget.RelativeLayout}.
-    If other widgets have layout constraints pointing to your widget, wrapping the widget causes
-    these constraints to point to the parent instead.</dd>
-
-    <dt><strong>Quick Assistant</strong></dt>
-    <dd>Provides refactoring suggestions depending on the current context. Press
-    <strong>Ctrl-1</strong> (or <strong>Cmd-1</strong> on
-    Mac) in an editor, and Eclipse provides a list of possible refactorings depending on the
-    context. The Quick Assistant provides fast access to all of the above refactorings, where applicable.
-    For example, if you are editing an XML value and decide you want to extract it out
-    as a string, place the text cursor in the string and press Ctrl-1 to see the refactoring context
-    menu.</dd>
-  </dl>
-
-
-
-
-
-<h2 id="Updating">Updating the ADT Plugin</h2>
-
-<p>From time to time, a new revision of the ADT Plugin becomes available, with
-new features and bug fixes. Generally, when a new revision of ADT is available,
-you should update to it as soon as convenient. </p>
-
-<p>In some cases, a new revision of ADT will have a dependency on a specific
-revision of the Android SDK Tools. If such dependencies exist, you will need to
-update the SDK Tools package of the SDK after installing the new revision of
-ADT. To update the SDK Tools package, use the Android SDK Manager, as
-described in <a href="{@docRoot}sdk/installing/adding-packages.html">Adding SDK Packages</a>.</p>
-
-<p>To learn about new features of each ADT revision and also any dependencies on
-the SDK Tools, see the listings in the <a href="{@docRoot}tools/revisions/index.html">Revisions</a>
-section. To determine the version currently installed, open the
-Eclipse Installed Software window using <strong>Help</strong>
-&gt; <strong>Software Updates</strong> and refer to the version listed for
-"Android Development Tools".</p>
-
-<p>Follow the steps below to check whether an update is available and, if so,
-to install it. </p>
-
-<ol>
-    <li>Select <strong>Help</strong> &gt; <strong>Check for Updates</strong>.
-      <p>If there are no updates available, a dialog will say so and you're done.</p></li>
-    <li>If there are updates available, select Android DDMS, Android Development Tools,
-      and Android Hierarchy Viewer, then click <strong>Next</strong>.</li>
-    <li>In the Update Details dialog, click <strong>Next</strong>.</li>
-    <li>Read and accept the license agreement and then click <strong>Finish</strong>.
-      This will download and install the latest version of Android DDMS and
-      Android Development Tools.</li>
-    <li>Restart Eclipse.</li>
-</ol>
-
-
-<p>If you encounter problems during the update, remove the existing ADT plugin from Eclipse, then
-perform a fresh installation, using the instructions for <a
-href="{@docRoot}sdk/installing/installing-adt.html">Installing the ADT
-Plugin</a>.</p>
diff --git a/docs/html/tools/help/am-cpu.jd b/docs/html/tools/help/am-cpu.jd
new file mode 100644
index 0000000..62b3590
--- /dev/null
+++ b/docs/html/tools/help/am-cpu.jd
@@ -0,0 +1,325 @@
+page.title=CPU Monitor
+parent.title=Android Monitor
+parent.link=android-monitor.html
+page.tags=monitor
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#running">Displaying a Running App in the CPU Monitor</a></li>
+  <li><a href="#trace">Performing a Method Trace in the CPU Monitor</a></li>
+  <li><a href="#viewtrace">Viewing a Saved Method Trace</a></li>
+  <li><a href="#sorttrace">Sorting Method Trace Data</a></li>
+  <li><a href="#renametrace">Renaming a Method Trace File</a></li>
+  <li><a href="#locatetrace">Locating a Method Trace File on Disk</a></li>
+  <li><a href="#deletetrace">Deleting a Method Trace File</a></li>
+</ol>
+
+ <h2>See also</h2>
+  <ol>
+    <li>
+        <a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a>
+      </li>
+    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
+      </li>
+
+      <li>
+        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
+      </li>
+  </ol>
+
+
+<h2>
+  Dependencies and Prerequisites
+</h2>
+
+<ul>
+  <li>Make sure your development computer detects your hardware device, which often happens
+  automatically when you connect it to a USB port.
+  </li>
+
+  <li>
+    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
+    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
+    <strong>Developer Options</strong> on the device or emulator.
+  </li>
+
+  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
+  <code>build.gradle</code> file (it’s initially set by default).
+  </li>
+
+<li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
+  <strong>Enable ADB Integration</strong>.
+  </li>
+
+  <li>
+    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
+  </li>
+
+</ul>
+
+</div>
+</div>
+
+
+<p>
+  The CPU Monitor lets you easily monitor the central processing unit (CPU) usage of your app. It
+  displays CPU usage in real time and displays the percentage of total CPU time (including all cores)
+  used by user and kernel mode. In user mode, the code must use system APIs to access hardware or
+  memory, and crashes are usually recoverable. In kernel mode, the code can directly access
+  hardware, including memory addresses; crashes halt the device.
+</p>
+
+<h2 id="running">
+  Displaying a Running App in the CPU Monitor
+</h2>
+
+<p>
+  Follow these steps:
+</p>
+
+<ol>
+  <li>Optionally connect a hardware device.
+  </li>
+
+  <li>
+    <a href="{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>.
+  </li>
+
+  <li>Click the <strong>CPU</strong> tab.
+  </li>
+
+  <li>Open an app project and <a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">run it</a> on a hardware device or
+  emulator.
+  </li>
+
+  <li>Enable the CPU Monitor by clicking Pause <img src="{@docRoot}images/tools/am-ipause.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to deselect
+  it.
+  </li>
+
+<p>
+  The CPU Monitor starts to display any CPU usage.
+  In the graph, the y-axis displays the percentage of CPU used. The x-axis records the time elapsed
+  and starts with seconds, and then minutes and seconds, and so on.
+</p>
+<img src="{@docRoot}images/tools/am-cpumon.png" style="vertical-align:sub;margin:0;width:450px" />
+  <li>To stop the CPU Monitor, click Pause <img src="{@docRoot}images/tools/am-ipause.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> again to select
+  it.
+  </li>
+</ol>
+
+
+<h2 id="trace">
+  Performing a Method Trace in the CPU Monitor
+</h2>
+
+<p>
+  Follow these steps:
+</p>
+
+<ol>
+  <li>
+    <a href="{@docRoot}tools/help/android-monitor.html#displaying">Display a running app in the CPU
+    Monitor</a>.
+  </li>
+
+  <li>Start a trace by clicking Start Method Tracing <img src="{@docRoot}images/tools/am-imethodtrace.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Start Method Tracing icon" /> to
+  select it.
+  </li>
+
+  <li>To stop the trace, click Stop Method Tracing <img src="{@docRoot}images/tools/am-imethodtrace.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Stop Method Tracing icon" /> to
+  deselect it.
+  </li>
+
+<p>
+  The method trace appears in the Code Editor area:
+</p>
+<img src="{@docRoot}images/tools/am-methodtrace.png" alt="Method Trace" />
+<p>
+  Android Studio creates the method trace file
+  with the filename <code>Trace_<em>yyyy.mm.dd_hh.mm.ss</em>.trace</code>
+  using the year, month, day, hour, minute, and second of the capture, for example,
+  <code>Trace_2015.11.17_14.58.48.trace</code>.
+</p>
+  <li>Specify display options:
+    <ul>
+      <li>Select a <strong>Thread</strong>.
+      </li>
+
+      <li>Select an <strong>x-axis</strong> time for the graphic and the method list:
+      </li>
+
+        <ul>
+          <li>
+            <strong>Wall Clock Time</strong> - Total CPU time elapsed between the method call and
+            return.
+          </li>
+
+          <li>
+            <strong>Thread Time</strong> - Total time during which the JRE scheduled the
+            thread during call processing. It’s less than or equal to the Wall Clock Time: less if
+            the JRE interrupted the thread, and equal if it didn’t.
+            The thread might not run continuously; when it’s not executing, that time is excluded.
+            If threads are interrupted often and it’s not by design, the interruptions affect app
+            performance. However, an example of a by-design use is synchronous operations that take
+            a long time, such as file transfers and reads from disk, where the method could be the
+            asynchronous wrapper for the synchronous reader.
+          </li>
+       </ul>
+
+        <li>
+          Optionally select <strong>Color by inclusive time</strong>.
+        </li>
+        </ul>
+
+        <p>
+          The display shows the following information:
+        </p>
+<table>
+  <tr>
+    <th scope="col">Field</th>
+    <th scope="col">Description</th>
+  </tr>
+
+  <tr>
+    <td><strong>Name</strong></td>
+    <td>The name of the method.</td>
+  </tr>
+
+  <tr>
+    <td><strong>Invocation Count</strong></td>
+    <td>How many times the method was called.</td>
+  </tr>
+
+  <tr>
+    <td><strong>Inclusive Time (microseconds)</strong></td>
+    <td>Time spent in the method and all of its children, either wall clock or thread time,
+          depending on your selection in the <strong>x-axis</strong> menu.</td>
+  </tr>
+
+  <tr>
+    <td><strong>Exclusive Time (microseconds)</strong></td>
+    <td>Time spent just in the method (excluding time spent in its children), either wall clock
+          or thread time, depending on your selection in the <strong>x-axis</strong> menu.</td>
+  </tr>
+</table>
+<p class="note"><strong>Note:</strong> Running the method trace significantly affects CPU timings.
+  Use the method trace to understand the flow of the program, but not for performance timings.</p>
+        <p>
+          The graphic represents the wall clock or thread time for each method. Hover the cursor
+          over the display to receive information about the method. This information also appears
+          in the table.
+        </p>
+</ol>
+        <h2 id="viewtrace">
+          Viewing a Saved Method Trace
+        </h2>
+
+        <p>
+          After you do a method trace, Android Studio automatically stores it so you can view it
+          again. To examine the trace, follow these steps:
+        </p>
+
+        <ol>
+          <li>Click <strong>Captures</strong> in the main window.
+          </li>
+
+        <p>
+          The <em>Captures</em> window appears.
+        </p>
+
+      <li>Open the <strong>Methods Tracing</strong> folder.
+      </li>
+
+      <li>Double-click the file to view it.
+      </li>
+</ol>
+
+<h2 id="sorttrace">
+  Sorting Method Trace Data
+</h2>
+
+<p>
+  You can sort the data by method name, count, inclusive time, and exclusive time. Follow this step:
+</p>
+
+
+<ul>
+  <li>Click a column heading to sort the table by ascending or descending order.
+  </li>
+</ul>
+
+<h2 id="renametrace">
+  Renaming a Method Trace File
+</h2>
+
+<p>
+  Rename a method trace file from within Android Studio so it
+  continues to appear in the <em>Captures</em> window. Follow these steps:
+</p>
+
+<ol>
+  <li>In the <em>Captures</em> window, right-click the file and select <strong>Rename</strong>.
+  </li>
+
+  <li>In the dialog, specify the name of the file and click <strong>OK</strong>.
+  </li>
+</ol>
+
+<h2 id="locatetrace">
+  Locating a Method Trace File on Disk
+</h2>
+
+<p>
+  You can quickly discover where Android Studio stored method trace files on disk. Follow this step:
+</p>
+
+
+
+<ul>
+  <li>In the <em>Captures</em> window, right-click a method trace file and select <strong>Show in
+  files</strong>.
+  </li>
+
+<p>
+  Android Studio opens an operating system file browser displaying the location where the file
+  resides.
+</p>
+</ul>
+<p class="note">
+  <strong>Note:</strong> If you move a method trace file, Android Studio no longer displays the file
+  in the <em>Captures</em> window. To display it, use <strong>File</strong> &gt;
+  <strong>Open</strong>. Also, rename a file from the <em>Captures</em>
+  window and not in the operating system file browser.
+</p>
+
+<h2 id="deletetrace">
+  Deleting a Method Trace File
+</h2>
+
+<p>
+  Follow this step in Android Studio:
+</p>
+
+<ul>
+  <li>In the <em>Captures</em> window, right-click a method trace file and select
+  <strong>Delete</strong>.
+  </li>
+</ul>
+
+<p>
+  Android Studio deletes the file from the <em>Captures</em> dialog and from disk.
+</p>
\ No newline at end of file
diff --git a/docs/html/tools/help/am-gpu.jd b/docs/html/tools/help/am-gpu.jd
new file mode 100644
index 0000000..a244b22
--- /dev/null
+++ b/docs/html/tools/help/am-gpu.jd
@@ -0,0 +1,136 @@
+page.title=GPU Monitor
+parent.title=Android Monitor
+parent.link=android-monitor.html
+page.tags=monitor
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#running">Displaying a Running App in the GPU Monitor</a></li>
+</ol>
+
+ <h2>See also</h2>
+  <ol>
+    <li>
+        <a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a>
+      </li>
+    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
+      </li>
+
+      <li>
+        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
+      </li>
+  </ol>
+
+<h2>
+  Dependencies and Prerequisites
+</h2>
+
+<ul>
+  <li>Make sure your development computer detects your hardware device, which often happens
+  automatically when you connect it to a USB port.
+  </li>
+
+  <li>
+    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
+    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
+    <strong>Developer Options</strong> on the device or emulator.
+  </li>
+
+  <li>For Android 5.0 (API level 21) and Android 5.1 (API level 22), in <strong>Developer
+  Options</strong> on the device or emulator, set <strong>Profile GPU rendering</strong> to
+  <strong>In adb shell dumpsys gfxinfo</strong>.
+  </li>
+
+  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
+  <code>build.gradle</code> file (it’s initially set by default).
+  </li>
+
+
+  <li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
+  <strong>Enable ADB Integration</strong>.
+  </li>
+
+   <li>
+    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
+  </li>
+</ul>
+
+</div>
+</div>
+
+<p>
+  The GPU Monitor gives you a quick visual representation of how much time it takes to render the
+  frames of a UI window. It profiles the amount of time it takes for the render thread to prepare,
+  process, and execute the draw commands. The GPU Monitor can help you to:
+</p>
+
+<ul>
+  <li>Quickly see how a UI window performs.
+  </li>
+
+  <li>Identify whether any part of the rendering pipeline stands out in using processing time.
+  </li>
+
+  <li>Look for spikes in frame rendering time associated with user or program actions.
+  </li>
+</ul>
+
+<p>
+  For example, if displaying a static photo continues to take Graphics Processor Unit
+  (GPU) resources long after it has finished
+  drawing on the screen, that’s a likely candidate for optimization.
+</p>
+
+
+<h2 id="running">
+  Displaying a Running App in the GPU Monitor
+</h2>
+
+<p>
+  Follow these steps:
+</p>
+
+<ol>
+  <li>Optionally connect a hardware device.
+  </li>
+
+  <li>
+    <a href="{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>.
+  </li>
+
+  <li>Click the <strong>GPU</strong> tab.
+  </li>
+
+  <li>Open an app project and <a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">run it</a> on a hardware device or
+  emulator.
+  </li>
+
+  <li>Enable the GPU Monitor by clicking Pause <img src="{@docRoot}images/tools/am-ipause.png" style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to deselect
+  it.
+  </li>
+
+  <p>
+  Any GPU usage begins to appear in the GPU Monitor:
+</p>
+  <img src="{@docRoot}images/tools/am-gpumon.png" style="vertical-align:sub;margin:0;width:450px" />
+
+<p>
+  The y-axis is the amount of time it takes the GPU to execute, process, prepare, and draw frames,
+  in milliseconds. The x-axis records the time elapsed; it starts with seconds, and then minutes
+  and seconds, and so on.
+</p>
+
+  <li>To stop the GPU Monitor, click Pause <img src="{@docRoot}images/tools/am-ipause.png" style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> again to select
+  it.
+  </li>
+</ol>
diff --git a/docs/html/tools/help/am-logcat.jd b/docs/html/tools/help/am-logcat.jd
new file mode 100644
index 0000000..57da848
--- /dev/null
+++ b/docs/html/tools/help/am-logcat.jd
@@ -0,0 +1,521 @@
+page.title=logcat Monitor
+parent.title=Android Monitor
+parent.link=android-monitor.html
+page.tags=monitor
+@jd:body
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>
+      In this document
+    </h2>
+
+    <ol>
+      <li>
+        <a href="#format">logcat Message Format</a>
+      </li>
+
+      <li>
+        <a href="#running">Displaying a Running App in the logcat Monitor</a>
+      </li>
+
+      <li>
+        <a href="#level">Setting the Log Level</a>
+      </li>
+
+      <li>
+        <a href="#searching">Searching logcat Messages</a>
+      </li>
+
+      <li>
+        <a href="#filtering">Filtering logcat Messages</a>
+      </li>
+
+      <li>
+        <a href="#logheader">Configuring the logcat Header Display</a>
+      </li>
+
+      <li>
+        <a href="#stack">Moving Up and Down the Stack Trace</a>
+      </li>
+
+      <li>
+        <a href="#logend">Moving to the End of the Log</a>
+      </li>
+
+      <li>
+        <a href="#printing">Printing the Log</a>
+      </li>
+
+      <li>
+        <a href="#clearing">Clearing the Log</a>
+      </li>
+
+      <li>
+        <a href="#restarting">Restarting the Log</a>
+      </li>
+    </ol>
+
+    <h2>
+      See also
+    </h2>
+
+    <ol>
+      <li>
+        <a href="{@docRoot}tools/debugging/debugging-log.html">Reading and Writing Logs</a>
+      </li>
+      <li>
+        <a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
+      </li>
+
+      <li>
+        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
+      </li>
+    </ol>
+
+    <h2>
+      Dependencies and Prerequisites
+    </h2>
+
+    <ul>
+      <li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
+      <strong>Enable ADB Integration</strong>.
+      </li>
+  <li>
+    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
+  </li>
+    </ul>
+  </div>
+</div>
+
+<p>
+  The Android logging system provides a mechanism for collecting and viewing system debug output.
+  logcat Monitor displays messages that you added to your app by using the <a href=
+  "{@docRoot}reference/android/util/Log.html">Log</a> class, as well as system
+  messages, such as stack traces when the emulator throws an error or a garbage collection occurs.
+  The monitor displays messages in real time and also keeps a history so you can view older
+  messages.
+</p>
+
+<p>
+  To display just the information of interest, you can create filters, modify how much information
+  is displayed in messages, set priority levels, display messages produced by app code
+  only, and search the log. By default, logcat Monitor shows the log output related to the running
+  application only.
+</p>
+
+<p>
+  You can traverse the stack trace when your app throws an exception, as well as view the
+  associated code. This feature can help you fix exceptions and improve app operation.
+</p>
+
+<h2 id="format">
+  logcat Message Format
+</h2>
+
+<p>
+  Every Android log message has a tag and a priority associated with it. The tag of a system
+  log message
+  is a short string indicating the system component from which the message originates (for example,
+  <code>ActivityManager</code>). A user-defined tag can be any string that you find helpful, such
+  as the name of the current class (the recommended tag). You define it in a <code>Log</code>
+  method call, for example:
+</p>
+
+<pre>
+Log.d(tag, message);
+</pre>
+<p>
+  The priority is one of the following values:
+</p>
+
+<ul>
+  <li>
+    <strong>V</strong> — Verbose (lowest priority)
+  </li>
+
+  <li>
+    <strong>D</strong> — Debug
+  </li>
+
+  <li>
+    <strong>I</strong> — Info
+  </li>
+
+  <li>
+    <strong>W</strong> — Warning
+  </li>
+
+  <li>
+    <strong>E</strong> — Error
+  </li>
+
+  <li>
+    <strong>A</strong> — Assert
+  </li>
+</ul>
+
+<p>
+  The log message format is:
+</p>
+
+<pre class="no-pretty-print">
+<em>date time PID-TID/package priority/tag: message</em>
+</pre>
+
+<p>
+  For example, the following log message has a priority of <code>V</code> and a tag of
+  <code>AuthZen</code>:
+</p>
+
+<pre class="no-pretty-print">
+12-10 13:02:50.071 1901-4229/com.google.android.gms V/AuthZen: Handling delegate intent.
+</pre>
+<p>
+  PID stands for process identifier and TID is thread identifier; they can be the same if there’s
+  only one thread.
+</p>
+
+<h2 id="running">
+  Displaying a Running App in the logcat Monitor
+</h2>
+
+<p>
+  Follow these steps:
+</p>
+
+<ol>
+  <li>Optionally connect a hardware device.
+  </li>
+
+  <li>
+    <a href="{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>.
+  </li>
+
+  <li>Click the <strong>logcat</strong> tab.
+  </li>
+
+  <li>Open an app project and <a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">run it</a> on a hardware device or
+  emulator.
+  </li>
+<p>
+  By default, the logcat Monitor displays messages for the app running on the device or emulator:
+</p>
+<img src="{@docRoot}images/tools/am-logcatmon.png" />
+<p>
+  To change this default, see <a href="#filtering">Filtering logcat Messages</a>.
+</p>
+</ol>
+
+<h2 id="level">
+  Setting the Log Level
+</h2>
+
+<p>
+  You can control how many messages appear in logcat Monitor by setting the log level. You can
+  display all messages, or just the messages indicating the most severe conditions.
+</p>
+
+<p>
+  Remember that logcat Monitor continues to collect all messages regardless of the log level setting.
+  The setting just determines what logcat Monitor displays.
+</p>
+
+<p>
+  Follow this step:
+</p>
+
+<ul>
+  <li>In the <strong>Log level</strong> menu, select one of the following values:
+  </li>
+
+    <ul>
+      <li>
+        <strong>Verbose</strong> - Show all log messages (the default).
+      </li>
+
+      <li>
+        <strong>Debug</strong> - Show debug log messages that are useful during development only,
+        as well as the message levels lower in this list.
+      </li>
+
+      <li>
+        <strong>Info</strong> - Show expected log messages for regular usage, as well as the
+        message levels lower in this list.
+      </li>
+
+      <li>
+        <strong>Warn</strong> - Show possible issues that are not yet errors, as well as the
+        message levels lower in this list.
+      </li>
+
+      <li>
+        <strong>Error</strong> - Show issues that have caused errors, as well as the message levels
+        lower in this list.
+      </li>
+
+      <li>
+        <strong>Assert</strong> - Show issues that the developer expects should never happen.
+      </li>
+    </ul>
+
+</ul>
+
+    <h2 id="searching">
+      Searching logcat Messages
+    </h2>
+
+    <p>
+      You can search the messages currently displayed in logcat Monitor. Follow these steps:
+    </p>
+
+    <ol>
+      <li>Optionally select <strong>Regex</strong> if you want to use a regular expression
+      search pattern.
+      </li>
+
+      <li>Type a character sequence in the search field <img src="{@docRoot}images/tools/am-isearch.png"
+        style="vertical-align:sub;margin:0;height:17px" alt="Search icon" />.
+      </li>
+
+    <p>
+      The logcat Monitor display changes accordingly.
+    </p>
+  </li>
+
+  <li>Press <strong>Enter</strong> to store the sequence in the menu during this session.
+  </li>
+
+  <li>To repeat a search, choose it from the search menu. Select or deselect
+  <strong>Regex</strong> as needed (the setting isn’t remembered).
+  </li>
+ </ol>
+
+    <h2 id="filtering">
+      Filtering logcat Messages
+    </h2>
+
+    <p>
+      One way to reduce the log output to a manageable level is to restrict it by using a filter.
+    </p>
+
+    <p class="note">
+      <strong>Note:</strong> The filter applies to your full logcat history, not just those messages
+      currently displayed in logcat Monitor. Make sure your other display options are set
+      appropriately so you can see the filter output you want to examine.
+    </p>
+
+    <p>
+      To define and apply a filter, follow these steps:
+    </p>
+
+    <ol>
+      <li>In the filter menu, select a filter option:
+        <ul>
+          <li>
+            <strong>Show only selected application</strong> - Display the messages produced by the
+            app code only.
+          </li>
+
+          <li>
+            <strong>No Filters</strong> - Apply no filters (the default).
+          </li>
+
+          <li>
+            <strong>Edit Filter Configuration</strong> - Create or modify a custom filter.
+          </li>
+        </ul>
+
+        <p>
+          After you define filters, you can also select them in the menu. To remove them from the
+          menu, delete them.
+        </p>
+
+          <li>If you selected <strong>Edit Filter Configuration</strong>, create or modify a
+          filter.
+            <ol type="a">
+              <li>Specify the filter parameters in the <em>Create New Logcat Filter</em> dialog:
+              </li>
+
+
+            <ul>
+              <li>
+                <strong>Filter Name</strong> - Type the name of a filter you want to define, or
+                select it in the left pane to modify an existing filter. The name can contain
+                lowercase characters, underscores, and digits only.
+              </li>
+
+              <li>
+                <strong>Log Tag</strong> - Optionally specify a tag. For more information, see
+                <a href="#format">logcat Message Format</a>.
+              </li>
+
+              <li>
+                <strong>Log Message</strong> - Optionally specify log message text. For more
+                information, see <a href="#format">logcat Message Format</a>.
+              </li>
+
+              <li>
+                <strong>Package Name</strong> - Optionally specify a package name. For more
+                information, see <a href="#format">logcat Message Format</a>.
+              </li>
+
+              <li>
+                <strong>PID</strong> - Optionally specify a process ID. For more information, see
+                <a href="#format">logcat Message Format</a>.
+              </li>
+
+              <li>
+                <strong>Log Level</strong> - Optionally select a log level. For more information,
+                see <a href="#level">Setting the Log Level</a>.
+              </li>
+
+              <li>
+                <strong>Regex</strong> - Select this option to use regular expression syntax for
+                that parameter.
+              </li>
+            </ul>
+
+            <li>
+              Click <strong>+</strong> to add it to the left pane.
+            </li>
+
+            <p>
+              To remove a filter, select it in the left pane and click <strong>-</strong>.
+            </p>
+
+            <li>
+              When you’re finished, click <strong>OK</strong>. If you click
+              <strong>Cancel</strong>, any filter additions or modifications are lost.
+            </li>
+            </ol>
+            </ol>
+
+            <h2 id="logheader">
+              Configuring the logcat Header Display
+            </h2>
+
+            <p>
+              You can customize the header display to show just the information you’re interested
+              in:
+            </p>
+
+            <ul>
+              <li>Select Use Soft Wraps <img src="{@docRoot}images/tools/am-isoftwraps.png"
+                style="vertical-align:sub;margin:0;height:17px" alt="Use Soft Wraps icon" />
+                to see the entire
+              message and prevent it from running off of the right edge.
+              </li>
+
+              <li>Click Configure Logcat Header <img src="{@docRoot}images/tools/am-igear.png"
+                style="vertical-align:sub;margin:0;height:17px" alt="Configure Logcat header icon" />
+                to specify
+              elements of the messages that you want to show or hide, and then click
+              <strong>OK</strong>.
+              </li>
+            </ul>
+
+            <p>
+              For more information about message elements, see <a href=
+              "#format">logcat Message Format</a>.
+            </p>
+
+            <h2 id="stack">
+              Moving Up and Down the Stack Trace
+            </h2>
+
+            <p>
+              When the app throws an exception, the message includes a stack trace of method calls.
+              logcat
+              Monitor lets you quickly locate stack traces in the log and view the associated code
+              in the Code Editor. If needed (and possible), the decompiler derives source code that
+              you can view.
+            </p>
+
+            <ul>
+              <li>Click Up the Stack Trace <img src="{@docRoot}images/tools/am-iupstack.png"
+                style="vertical-align:sub;margin:0;height:17px" alt="Up the Stack Trace icon" />
+                to move to the
+              previous method in relation to the current position in the log.
+              </li>
+
+              <li>Click Down the Stack Trace <img src="{@docRoot}images/tools/am-idownstack.png"
+                style="vertical-align:sub;margin:0;height:17px" alt="Down the Stack Trace icon" />
+                to move to
+              the next method in relation to the current position in the log.
+              </li>
+            </ul>
+
+            <h2 id="logend">
+              Moving to the End of the Log
+            </h2>
+
+            <p>
+              Clicking a particular message stops the display of messages. You can quickly move to
+              the end of the log to see the real-time message flow.
+            </p>
+
+<ul>
+          <li>Click Scroll to the End <img src="{@docRoot}images/tools/am-iscrollend.png"
+            style="vertical-align:sub;margin:0;height:17px" alt="Scroll to the End icon" />.
+          </li>
+
+          <li>Press the End key.
+          </li>
+
+          <li>Scroll or press the Page Down key until you reach the end.
+</li>
+</ul>
+
+<h2 id="printing">
+  Printing the Log
+</h2>
+<p>
+  Follow these steps:
+</p>
+<ol>
+  <li>Click Print <img src="{@docRoot}images/tools/am-iprint.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Print icon" />.
+  </li>
+  <li>
+    In the <em>Print</em> dialog, optionally change print parameters, and then click
+    <strong>Print</strong>.
+</ol>
+
+<h2 id="clearing">
+  Clearing the Log
+</h2>
+<p>
+  To clear (flush) the entire log, follow this step:
+</p>
+<ul>
+  <li>Click Clear logcat <img src="{@docRoot}images/tools/am-iclear.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Clear logcat icon" />.
+  </li>
+</ul>
+
+
+
+<h2 id="restarting">
+  Restarting the Log
+</h2>
+
+<p>
+  If there is a problem and the log is no longer progressing, you can restart the log. Follow this
+  step:
+</p>
+
+<ul>
+  <li>Click Restart <img src="{@docRoot}images/tools/am-irestart.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Restart icon" />.
+  </li>
+</ul>
\ No newline at end of file
diff --git a/docs/html/tools/help/am-memory.jd b/docs/html/tools/help/am-memory.jd
new file mode 100644
index 0000000..24006cd
--- /dev/null
+++ b/docs/html/tools/help/am-memory.jd
@@ -0,0 +1,916 @@
+page.title=Memory Monitor
+parent.title=Android Monitor
+parent.link=android-monitor.html
+page.tags=monitor
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#workflow">Memory Monitor Workflow</a>
+  <ol>
+  <li><a href="#treeroot">Garbage collection roots and dominator trees</a></li>
+  <li><a href="#analysis">Memory leak and use analysis</a></li>
+  <li><a href="#vm">Memory management for different virtual machines</a></li>
+  </ol>
+  </li>
+  <li><a href="#displaying">Displaying a Running App in the Memory Monitor</a></li>
+  <li><a href="#forcing">Forcing a Garbage Collection Event</a></li>
+  <li><a href="#dumping">Dumping and Analyzing the Java Heap</a>
+    <ol>
+      <li><a href="#hprof-snapshot">Taking and displaying a snapshot of the Java heap</a></li>
+      <li><a href="#hprof-diving">Diving into heap dump data in the HPROF Viewer</a></li>
+      <li><a href="#hprof-analyzing">Analyzing heap dump data in the HPROF Analyzer</a></li>
+      <li><a href="#hprof-sorting">Sorting heap dump data</a></li>
+      <li><a href="#hprof-source">Displaying Java source</a></li>
+      <li><a href="#hprof-viewing">Viewing a saved HPROF file</a></li>
+      <li><a href="#hprof-renaming">Renaming an HPROF file</a></li>
+      <li><a href="#hprof-locating">Locating a heap dump file on disk</a></li>
+      <li><a href="#hprof-deleting">Deleting a heap dump file</a></li>
+      <li><a href="#hprof-converting">Converting a heap dump file to standard HPROF format</a></li>
+    </ol>
+    </li>
+  <li><a href="#tracking">Tracking and Analyzing Memory Allocation</a>
+      <ol>
+      <li><a href="#alloc-snapshot">Taking and displaying a snapshot of allocation data</a></li>
+      <li><a href="#alloc-sorting">Sorting allocation data</a></li>
+      <li><a href="#alloc-source">Displaying Java source</a></li>
+      <li><a href="#alloc-viewing">Viewing a saved allocation tracking file</a></li>
+      <li><a href="#alloc-renaming">Renaming an allocation tracking file</a></li>
+      <li><a href="#alloc-locating">Locating an allocation tracking file</a></li>
+      <li><a href="#alloc-deleting">Deleting an allocation tracking file</a></li>
+    </ol>
+    </li>
+</ol>
+
+ <h2>See also</h2>
+  <ol>
+    <li><a href="{@docRoot}training/articles/memory.html">Managing Your App's Memory</a></li>
+    <li><a href="{@docRoot}guide/practices/verifying-apps-art.html#GC_Migration">Addressing Garbage Collection Issues</a></li>
+    <li><a href="{@docRoot}tools/debugging/debugging-memory.html">Investigating Your RAM Usage</a></li>
+
+    <li>
+        <a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a>
+      </li>
+    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
+      </li>
+
+      <li>
+        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
+      </li>
+  </ol>
+
+
+<h2>
+  Dependencies and Prerequisites
+</h2>
+
+<ul>
+  <li>
+    Make sure your development computer detects your hardware device, which often happens
+  automatically when you connect it to a USB port.
+  </li>
+<li>
+    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
+    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
+    <strong>Developer Options</strong> on the device or emulator.
+  </li>
+
+  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
+  <code>build.gradle</code> file (it’s initially set by default).
+  </li>
+
+  <li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
+  <strong>Enable ADB Integration</strong>.
+  </li>
+
+   <li>
+    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
+  </li>
+</ul>
+
+</div>
+</div>
+
+<p>
+  Android Studio provides a Memory Monitor so you can more easily monitor app performance and
+  memory usage to find deallocated objects, locate memory leaks, and track the amount of memory the
+  connected device is using. The Memory Monitor reports how your app allocates memory and helps you
+  to visualize the memory your app uses. It lets you:
+</p>
+
+<ul>
+  <li>Show a graph of available and allocated memory over time.
+  </li>
+<li>Show garbage collection (GC) events
+  over time.
+  </li>
+  <li>Initiate garbage collection events.
+  </li>
+
+  <li>Quickly test whether app slowness might be related to excessive garbage collection events.
+  </li>
+
+  <li>Quickly test whether app crashes may be related to running out of memory.
+  </li>
+</ul>
+
+<h2 id="workflow">
+  Memory Monitor Workflow
+</h2>
+
+<p>
+  To profile and optimize memory use, the typical workflow is to run your app and do the following:
+</p>
+
+<ol>
+  <li>Profile the app using the Memory Monitor to find out whether undesirable garbage collection
+  event patterns might be causing performance problems.
+  </li>
+
+  <li>If you see many garbage collection events in a short amount of time, dump the Java heap to
+  identify candidate object types that get or stay allocated unexpectedly or unnecessarily.
+  </li>
+
+  <li>Start allocation tracking to determine where any problems are happening in your code.
+  </li>
+</ol>
+
+<p>
+  The Java heap data shows in real-time what types of objects your application has allocated, how
+  many, and their sizes on the heap. Viewing the heap helps you to:
+</p>
+
+<ul>
+  <li>Get a sense of how your app allocates and frees memory.
+  </li>
+
+  <li>Identify memory leaks.
+  </li>
+</ul>
+
+<p>
+  Allocation tracking records app memory allocations and lists all allocations for the
+  profiling cycle, including the call stack, size, and allocating code. It helps you to:
+</p>
+
+<ul>
+  <li>Identify where many similar object types, from roughly the same call stack, are allocated and
+  deallocated over a very short period of time.
+  </li>
+
+  <li>Find the places in your code that may contribute to inefficient memory use.
+  </li>
+</ul>
+
+<h3 id="treeroot">
+  Garbage collection roots and dominator trees
+</h3>
+
+<p>
+  When you dump the Java heap, the Memory Monitor creates an Android-specific Heap/CPU Profiling
+  (HPROF) file that you can view in the HPROF Viewer. The HPROF Viewer indicates a garbage
+  collection root with the <img src="{@docRoot}images/tools/am-igcroot.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="GC Root icon" /> icon (and a depth of zero)
+  and a
+  dominator with the <img src="{@docRoot}images/tools/am-idom.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Dominator icon" /> icon.
+</p>
+
+<p>
+  There are several kinds of garbage collection roots in Java:
+</p>
+
+<ul>
+<li>references on the stack</li>
+<li>Java Native Interface (JNI) native objects and memory</li>
+<li>static variables and functions</li>
+<li>threads and objects that can be referenced </li>
+<li>classes loaded by the bootstrap loader</li>
+<li>finalizers and unfinalized objects</li>
+<li>busy monitor objects</li>
+</ul>
+
+<p>
+  The HPROF file provides the list of roots to the HPROF Viewer.
+</p>
+
+<p>
+  A dominator tree traces paths to objects created by the app. An object dominates another object
+  if the only way to reach the other object is, directly or indirectly, through the dominator
+  object. When you examine objects and paths created by an app in an effort to optimize memory use,
+  try to remove objects that are no longer needed. You can release a dominator object to
+  release all subordinate objects. For example, in the following figure, if you were to
+  remove object B, that would also release the memory used by the objects it dominates, which are
+  objects C, D, E, and F. In fact, if objects C, D, E, and F were marked for removal, but object B
+  was still referring to them, that could be the reason that they weren’t released.
+</p>
+
+  <img src="{@docRoot}images/tools/am-domtree.png" height="200" />
+
+<h3 id="analysis">
+  Memory leak and use analysis
+</h3>
+
+<p>
+  An app performs better if it uses memory efficiently and releases the memory when it’s no longer
+  needed.
+  Memory leaks that are large or that grow over time are the most important to correct.
+</p>
+
+<p>
+  One way to optimize memory usage is to analyze large arrays. For example, can you reduce the size
+  of individual elements in the array to save memory? Does a dominator object point to
+  an element in the array, preventing it from being garbage-collected? If the dominator object
+  directly points to an element in the array, the dominator is either the contiguous memory
+  representing the underlying data of the array, some part of the array, or the array itself.
+</p>
+
+<p>
+  Another area that deserves attention is objects that the app no longer needs but continues to
+  reference. You can gather heap dumps over different periods of time and compare them to determine
+  if you have a growing memory leak, such as an object type that your code creates multiple times
+  but doesn’t destroy. These objects could be part of a growing array or an object tree, for
+  example. To track down this problem, compare the heap dumps and see if you have a particular
+  object type that continues to have more and more instances over time.
+</p>
+
+<p>
+  Continually growing object trees that contain root or dominator objects can prevent subordinate
+  objects from being garbage-collected. This issue is a common cause of memory leaks, out-of-memory
+  errors,
+  and crashes. Your app could have a small number of objects that are preventing a large number of
+  subordinate objects from being destroyed, so it runs out of memory quickly. To find these issues,
+  get a heap dump and examine the amount of memory held by root and dominator objects. If the
+  memory is substantial, you’ve likely found a good place to start optimizing your memory use.
+</p>
+
+<p>
+  As you start narrowing down memory issues, you should also use the Allocation Tracker to get a
+  better understanding of where your memory-hogging objects are allocated. The Allocation Tracker
+  can be valuable not only for looking at specific uses of memory, but also for analyzing critical
+  code paths, such as loading and scrolling. For example, tracking allocations when flinging a list
+  in your app
+  allows you to see all of the allocations that need to be done for that behavior, what thread they
+  are on, and where they came from. This information is extremely valuable for tightening up these
+  paths to reduce the work they need and improve the overall smoothness of the UI.
+</p>
+
+<p>
+  It’s useful to examine your algorithms for allocations that are unnecessary or that create the
+  same object many times instead of reusing them. For example, do you create temporary objects and
+  variables within recursive loops? If so, try creating an object or variable before
+  the loop for use within the loop. Otherwise, your app might needlessly allocate many objects and
+  variables, depending on the number of recursions.
+</p>
+
+<p>
+  It’s important to perform allocation tests on portions of your code that create the most and
+  largest objects, as those areas offer the most optimization opportunities. In addition to unit
+  tests, you should test your app with production-realistic data loads, especially those algorithms
+  that are data-driven. Also, make sure to account for the app caching and startup phase, which can
+  sometimes be slow; allocation analysis is best done after that phase to produce accurate results.
+</p>
+
+<p>
+  After you optimize code, be sure to test that it worked. You need to test under different load
+  conditions and also without running the Memory Monitor tools. Compare results before and after
+  optimization to make sure that performance has actually improved.
+</p>
+
+<h3 id="vm">
+  Memory management for different virtual machines
+</h3>
+
+<p>
+  Android Monitor uses the Virtual Machine (VM) that the device or emulator uses:
+</p>
+
+<ul>
+  <li>Android 4.3 (API level 18) and lower uses the Dalvik VM.
+  </li>
+
+  <li>In Android 4.4 (API level 19), the Android RunTime (ART) VM is an option, while the Dalvik VM
+  is the default.
+  </li>
+
+  <li>Android 5.0 (API level 21) and higher uses the ART VM.
+  </li>
+</ul>
+
+<p>
+  The VM handles garbage collection. The Dalvik VM uses a mark-and-sweep scheme for garbage
+  collection. The ART VM uses a generational scheme, combined with mark-and-sweep when memory needs
+  a more thorough garbage collection, such as when memory becomes excessively fragmented. The
+  logcat Monitor displays some messages that indicate the type of garbage collection that occurred
+  and why.
+</p>
+
+<p>
+  Memory Monitor results can vary between the different VMs. As a result, if you’re supporting both
+  VMs, you might want to test with both. In addition, the VMs available for different API levels
+  can have different behavior. For example, the Dalvik VM in Android 2.3 (API level 10) and lower
+  uses externally allocated memory while higher versions allocate in the Dalvik heap only.
+</p>
+
+<p>
+  You can’t reconfigure the Dalvik and ART VMs to tune performance. Instead, you should examine
+  your app code to determine how to improve its operation, for example, reducing the size of very
+  large arrays.
+</p>
+
+<p>
+  There are programmatic ways to manipulate when the VM performs garbage collection, although it’s
+  not a best practice. These techniques can be specific to the VM. For more information, see
+  <a href=
+  "{@docRoot}guide/practices/verifying-apps-art.html#GC_Migration">Addressing
+  Garbage Collection (GC) Issues</a> and <a href=
+  "{@docRoot}tools/debugging/debugging-memory.html">Investigating Your RAM
+  Usage</a>.
+</p>
+
+<p>
+  The ART VM adds a number of performance, development, and debugging improvements over the Dalvik
+  VM. For more information, see <a href=
+  "https://source.android.com/devices/tech/dalvik/index.html">ART and Dalvik</a>.
+</p>
+
+<h2 id="displaying">
+  Displaying a Running App in the Memory Monitor
+</h2>
+
+<p>
+  Follow these steps:
+</p>
+
+<ol>
+  <li>Optionally connect a hardware device.
+  </li>
+
+  <li>
+    <a href=
+    "{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>.
+  </li>
+
+  <li>Click the <strong>Memory</strong> tab.
+  </li>
+
+  <li>Open an app project and <a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">run it</a> on a
+  hardware device or emulator.
+  </li>
+
+  <li>Enable the Memory Monitor by clicking Pause <img src="{@docRoot}images/tools/am-ipause.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to deselect it.
+  </li>
+
+
+<p>
+  In the graph, the y-axis displays the free and allocated RAM in megabytes. The x-axis shows the
+  time elapsed; it starts with seconds, and then minutes and seconds, and so on. The amount of free
+  memory, measured in megabytes,
+  is shown in a light color, and allocated memory is a darker color. When there’s a sharp drop in
+  allocated memory, that indicates a garbage collection event. </p>
+
+
+
+<p>
+  To force a garbage collection event, click Initiate GC <img src="{@docRoot}images/tools/am-igc.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Initiate GC icon" />.
+</p>
+
+  <p>In the following figure, the VM initiated the first garbage collection event, while the
+    developer forced the second.
+</p>
+<img src="{@docRoot}images/tools/am-gc.png" />
+
+  <li>Interact with your app and watch how it affects memory usage in the Memory Monitor. You can
+  identify garbage collection patterns for your app and determine whether they are healthy and what
+  you expect.
+  </li>
+
+
+<p>
+  The graph can show you potential issues:
+</p>
+
+<ul>
+  <li>Excessive garbage collection events slow down the app.
+  </li>
+
+  <li>The app runs out of memory, which causes it to crash.
+  </li>
+
+  <li>Potential memory leaks.
+  </li>
+</ul>
+
+<p>
+  For example, you might see the following signs of problems:
+</p>
+
+<ul>
+  <li>Your app is static, but you see memory being allocated in the monitor.
+  </li>
+
+  <li>You see spikes of memory allocations in the monitor, but you don’t think there’s any app
+  logic to cause this behavior.
+  </li>
+</ul>
+  <li>To stop the Memory Monitor, click Pause <img src="{@docRoot}images/tools/am-ipause.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> again to select it.
+  </li>
+
+</ol>
+
+<h2 id="forcing">
+  Forcing a Garbage Collection Event
+</h2>
+
+<p>
+  Normally, VMs perform garbage collection only when absolutely needed, since it’s expensive.
+  However, it can be useful to force garbage collection in certain circumstances. For example, when
+  locating memory leaks, if you want to determine whether a large object was successfully released
+  already, you can initiate garbage collection much more aggressively than usual.
+</p>
+
+<p>
+  To force a garbage collection event:
+</p>
+
+<ul>
+  <li>While the <a href="#displaying">Memory Monitor is running</a>, click Initiate GC
+  <img src="{@docRoot}images/tools/am-igc.png" style="vertical-align:sub;margin:0;height:17px"
+  alt="Initiate GC icon" />.
+  </li>
+</ul>
+
+<h2 id="dumping">
+  Dumping and Analyzing the Java Heap
+</h2>
+
+<p>
+  When you're monitoring memory usage in Android Studio you can, at the same time, dump the Java
+  heap to a heap snapshot in an Android-specific HPROF binary format file. The HPROF Viewer
+  displays classes, instances of each class, and a reference tree to help you track memory usage
+  and find memory leaks. HPROF is a heap dump format originally supported by J2SE.
+</p>
+<p>The Java heap display does the following:</p>
+
+<ul>
+  <li>Shows snapshots of a number of objects allocated by type.
+  </li>
+
+  <li>Samples data every time a garbage collection event occurs naturally or is triggered by you.
+  </li>
+
+  <li>Helps identify which object types might be involved in memory leaks.
+  </li>
+</ul>
+
+<p>
+  However, you have to look for changes over time yourself by tracking what's happening in the
+  graph.
+</p>
+
+<p>
+  The HPROF Analyzer finds the following potential issues:
+</p>
+
+<ul>
+  <li>All destroyed activity instances that are reachable from garbage collection roots.
+  </li>
+
+  <li>Where the target program has strings that repeat values.
+  </li>
+</ul>
+
+<p>
+  A dominator is at the top of a tree. If you remove it, you also remove the branches of the tree
+  it dominates, so it’s a potential way to free memory.
+</p>
+
+<h3 id="hprof-snapshot">
+  Taking and displaying a snapshot of the Java heap
+</h3>
+
+<p>
+  To see a snapshot of the Java heap, follow these steps:
+</p>
+
+<ol>
+  <li>While the Memory Monitor is running, click Dump Java Heap
+    <img src="{@docRoot}images/tools/am-idump.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Dump Java Heap icon" />.
+  </li>
+
+
+<p>
+  When the icon on the Memory Monitor display changes from
+  <img src="{@docRoot}images/tools/am-idumpstart.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Dump Java Heap Start icon" /> to
+  <img src="{@docRoot}images/tools/am-idumpend.png" style="vertical-align:sub;margin:0;height:17px"
+  alt="Dump Java Heap End icon" />, the file is ready. Android Studio creates the heap snapshot
+  file with the
+  filename <code>Snapshot_<em>yyyy.mm.dd_hh.mm.ss</em>.hprof</code> using
+  the year, month, day, hour, minute, and second of the capture, for example,
+  <code>Snapshot_2015.11.17_14.58.48.hprof</code>.
+</p>
+
+  <li>Click <strong>Captures</strong> in the main window.
+  </li>
+
+<p>
+  The <em>Captures</em> window appears.
+</p>
+
+  <li>Double-click the file to view it in the HPROF Viewer.
+  </li>
+
+<p>
+  The HPROF Viewer appears:
+</p>
+<img src="{@docRoot}images/tools/am-hprofviewer.png" />
+<p>
+  The tool displays the following information:
+</p>
+
+<table>
+  <tr>
+    <th scope="col">Column</th>
+    <th scope="col">Description</th>
+  </tr>
+
+  <tr>
+    <td><strong>Class Name</strong></td>
+    <td>The Java class responsible for the memory.</td>
+  </tr>
+
+  <tr>
+    <td><strong>Total Count</strong></td>
+    <td>Total number of instances outstanding.</td>
+  </tr>
+  <tr>
+    <td><strong>Heap Count</strong></td>
+    <td>Number of instances in the selected heap.</td>
+  </tr>
+  <tr>
+    <td><strong>Sizeof</strong></td>
+    <td>Size of the instances (currently, 0 if the size is variable).</td>
+  </tr>
+  <tr>
+    <td><strong>Shallow Size</strong></td>
+    <td>Total size of all instances in this heap.</td>
+  </tr>
+  <tr>
+    <td><strong>Retained Size</strong></td>
+    <td>Size of memory that all instances of this class is dominating.</td>
+  </tr>
+  <tr>
+    <td><strong>Instance</strong></td>
+    <td>A specific instance of the class.</td>
+  </tr>
+  <tr>
+    <td><strong>Reference Tree</strong></td>
+    <td>References that point to the selected instance, as well as references pointing to the
+      references.</td>
+  </tr>
+  <tr>
+    <td><strong>Depth</strong></td>
+    <td>The shortest number of hops from any GC root to the selected instance.</td>
+  </tr>
+  <tr>
+    <td><strong>Shallow Size</strong></td>
+    <td>Size of this instance.</td>
+  </tr>
+  <tr>
+    <td><strong>Dominating Size</strong></td>
+    <td>Size of memory that this instance is dominating.</td>
+  </tr>
+</table>
+
+  <li>Select the Heap menu option you want to display:
+    <ul>
+      <li>
+        <strong>App heap</strong> - The heap used by the current app.
+      </li>
+
+      <li><strong>Image heap</strong> - The memory mapped copy of the
+      current app on disk.
+      </li>
+
+
+  <li>
+    <strong>Zygote heap</strong> - The common set of libraries and runtime classes and data that
+    all apps are forked
+    from. The zygote space is created during device startup and is never allocated into.
+  </li>
+
+    </ul>
+
+      <li>Select the View menu option you want to display:
+        <ul>
+          <li>
+            <strong>Class List View</strong>
+          </li>
+
+              <li>
+                <strong>Package Tree View</strong>
+              </li>
+            </ul>
+    </ol>
+
+
+<h3 id="hprof-diving">
+  Diving into heap dump data in the HPROF Viewer
+</h3>
+<p>The following steps outline the typical workflow:</p>
+<ol>
+<li>In the HPROF viewer, select a class name. </li>
+<li>Select an instance of that class.</li>
+<li>Examine the reference tree.</li>
+<li>Right-click an item to <strong>Jump to source</strong> or <strong>Go to instance</strong>,
+  as needed.</li>
+</ol>
+
+
+
+<h3 id="hprof-analyzing">Analyzing heap dump data in the HPROF Analyzer</h3>
+<p>You can detect leaked activities and find duplicate strings with the HPROF Analyzer.
+  Follow these steps: </p>
+<ol>
+<li>In the <em>Captures</em> window, double-click an <code>.hprof</code> file to display it in the
+  HPROF Viewer. </li>
+<li>Click <strong>Capture Analysis</strong> on the right side of the main Android Studio window.</li>
+
+
+<p>The HPROF Analyzer appears to the right of the HPROF Analyzer, by default: </p>
+
+<img src="{@docRoot}images/tools/am-hprofanalyzer.png" />
+
+<li>In the <strong>Analyzer Tasks</strong> list, select the items you want to find.</li>
+<li>Click Perform Analysis <img src="{@docRoot}images/tools/am-iperformanalysis.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Perform Analysis icon" />.</li>
+<li>Examine the items in <strong>Analysis Results</strong>. Click an item to display it in the
+  HPROF Viewer.</li>
+</ol>
+
+
+
+<h3 id="hprof-sorting">Sorting heap dump data</h3>
+<p>Follow this step:</p>
+<ul>
+<li>In the HPROF Viewer, click a column heading to sort the table by ascending or descending
+  order. </li>
+</ul>
+
+
+<h3 id="hprof-source">Displaying Java source</h3>
+<p>For some items displayed in the HPROF Viewer, you can go straight to its source code.
+  Follow this step:</p>
+<ul>
+<li>In the HPROF Viewer, right-click a class, instance, or item in the reference tree, and then
+  select <strong>Jump to Source</strong>. </li>
+
+
+<p>The source code appears in the Code Editor.</p>
+</ul>
+
+<h3 id="hprof-viewing">Viewing a saved HPROF file</h3>
+<p>After you do a heap dump, Android Studio automatically stores it so you can view it again.
+  Follow these steps:</p>
+
+<ol>
+<li>Click <strong>Captures</strong> in the main window.</li>
+
+<p>The <em>Captures</em> window appears.</p>
+<li>Open the <strong>Heap Snapshot</strong> folder.</li>
+<li>Double-click the file to view it.</li>
+</ol>
+
+
+<h3 id="hprof-renaming">Renaming an HPROF file</h3>
+
+<p>If you rename a file from within Android Studio, it continues to appear in <em>Captures</em>
+  window. Follow these steps:</p>
+<ol>
+<li>In the <em>Captures</em> window, right-click the file and select <strong>Rename</strong>. </li>
+<li>In the dialog, specify the name of the file and click <strong>OK</strong>.</li>
+</ol>
+
+
+<h3 id="hprof-locating">Locating a heap dump file on disk</h3>
+<p>You can quickly discover where Android Studio stored HPROF files on disk.</p>
+
+
+<p>Follow this step in Android Studio: </p>
+<ul>
+<li>In the <em>Captures</em> window, right-click a heap snapshot file and select
+  <strong>Show in files</strong>.</li>
+
+<p>Android Studio opens an operating system file browser displaying the location where the file
+  resides.</p>
+</ul>
+<p class="note"><strong>Note:</strong> If you move an HPROF file, Android Studio no longer
+  displays it in the <em>Captures</em> window. To display it, use
+  <strong>File</strong> &gt; <strong>Open</strong>. Also, if you want to rename the file, do it
+  from the <em>Captures</em> window and not in the operating system file browser. </p>
+
+<h3 id="hprof-deleting">Deleting a heap dump file</h3>
+
+<p>To delete a heap dump file, follow this step: </p>
+<ul>
+<li>In the <em>Captures</em> window, right-click a heap snapshot file and select
+  <strong>Delete</strong>.</li>
+
+<p>Android Studio deletes the file from the <em>Captures</em> dialog and from disk. </p>
+</ul>
+
+<h3 id="hprof-converting">Converting a heap dump file to standard HPROF format</h3>
+<p>You can convert an HPROF file to standard format so you can use it outside of Android Studio with
+  other analysis tools. Follow these steps: </p>
+<ol>
+<li>In the <em>Captures</em> window, right-click a heap snapshot file and select <strong>Export to
+  standard .hprof</strong>.</li>
+<li>In the <em>Convert Android Java Heap Dump</em> dialog, specify a filename and click
+  <strong>OK</strong>.</li>
+
+
+<p>Android Studio creates a binary HPROF file in the location you specified.</p>
+</ol>
+
+<h2 id="tracking">
+  Tracking and Analyzing Memory Allocation
+</h2>
+
+<p>Android Studio allows you to track memory allocation as it monitors memory use. Tracking memory
+  allocation allows you to monitor where objects are being allocated when you perform certain
+  actions. Knowing these allocations enables you to adjust the method calls related to those actions
+  to optimize app performance and memory use.</p>
+
+<p>The Allocation Tracker does the following:</p>
+<ul>
+<li>Shows when and where your code allocates object types, their size, allocating thread, and stack
+  traces.</li>
+<li>Helps recognize memory churn through recurring allocation/deallocation patterns.</li>
+<li>Help you track down memory leaks when used in combination with the HPROF Viewer. For example,
+  if you see a bitmap object resident on the heap, you can find its allocation location with
+  Allocation Tracker.</li>
+</ul>
+
+
+<p>However, it takes time and experience to learn to interpret the output from this tool.</p>
+
+<h3 id="alloc-snapshot">Taking and displaying a snapshot of allocation data</h3>
+
+<p>Follow these steps:</p>
+<ol>
+<li>While the Memory Monitor is running, click Start Allocation Tracking
+  <img src="{@docRoot}images/tools/am-ialloctracking.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Start Allocation Tracking icon" />. </li>
+<li>Click Start Allocation Tracking
+  <img src="{@docRoot}images/tools/am-ialloctracking.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Start Allocation Tracking icon" /> again to
+  deselect it and end the snapshot. </li>
+
+  <p>The Memory Monitor displays the period when it took the snapshot. In the following
+    figure, you can see the snapshot period, as shown on the left. By comparison, when you dump the
+    Java heap, the Memory Monitor displays just the point where the heap snapshot was taken, as
+    shown on the right.</p>
+    <img src="{@docRoot}images/tools/am-dumpalloc.png" />
+
+<p>Android Studio creates the heap snapshot file with the
+  filename <code>Allocations_<em>yyyy.mm.dd_hh.mm.ss</em>.alloc</code> using the year, month, day,
+  hour, minute, and second of the capture, for example,
+  <code>Allocations_2015.11.17_14.58.48.alloc</code>.</p>
+<li>Click <strong>Captures</strong> in the main window.</li>
+
+
+<p>The <em>Captures</em> window appears.</p>
+<li>Double-click the file to view it in the Allocation Tracker. </li>
+<li>Optionally click the graphic icon to display a visual representation of the data.
+  </li>
+<p>
+  The Allocation Tracker appears:
+</p>
+<img src="{@docRoot}images/tools/am-alloctracker.png" />
+<p>
+
+
+<p>The tool displays the following information: </p>
+
+<table>
+  <tr>
+    <th scope="col">Column</th>
+    <th scope="col">Description</th>
+  </tr>
+
+  <tr>
+    <td><strong>Method</strong></td>
+    <td>The Java method responsible for the allocation.</td>
+  </tr>
+  <tr>
+    <td><strong>Count</strong></td>
+    <td>Total number of instances allocated.</td>
+  </tr>
+  <tr>
+    <td><strong>Size</strong></td>
+    <td>The total amount of allocated memory in bytes.</td>
+  </tr>
+
+</table>
+
+
+<li>Select the Group By menu option you want to display: </li>
+<ul>
+<li><strong>Group by Allocator</strong> </li>
+<li><strong>Group by Method</strong></li>
+</ul>
+
+</ol>
+
+
+
+<h3 id="alloc-sorting">Sorting allocation data</h3>
+
+<p>Follow this step:</p>
+<ul>
+<li>In the Allocation Tracker, click a column heading to sort the table by ascending or
+  descending order. </li>
+</ul>
+
+
+<h3 id="alloc-source">Displaying Java source</h3>
+<p>For some items displayed in the Allocation Tracker, you can view the Java source. Follow one of
+  these steps:</p>
+<ul>
+<li>In the Allocation Tracker, right-click a method and then select <strong>Jump to Source</strong>.
+</li>
+<li>In the Allocation Tracker, select a method and then click Jump to Source
+  <img src="{@docRoot}images/tools/am-ijumptosource.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Jump to Source icon" />. </li>
+</ul>
+
+<p>The source code appears in the Code Editor.</p>
+
+<h3 id="alloc-viewing">Viewing a saved allocation tracking file</h3>
+<p>After you monitor allocation tracking, Android Studio automatically stores it so you can view it
+  again. Follow these steps:</p>
+
+
+<ol>
+<li>Click <strong>Captures</strong> in the main window.</li>
+
+
+<p>The <em>Captures</em> window appears.</p>
+<li>Open the <strong>Allocation Tracking</strong> folder.</li>
+<li>Double-click the file to view it.</li>
+</ol>
+
+
+<h3 id="alloc-renaming">Renaming an allocation tracking file</h3>
+
+<p>If you rename a file from within Android Studio, it continues to appear in the <em>Captures</em>
+  window. Follow these steps:</p>
+<ol>
+<li>In the <em>Captures</em> window, right-click the file and select <strong>Rename</strong>.</li>
+<li>In the <em>Rename</em> dialog, specify the name of the file and click <strong>OK</strong>.</li>
+</ol>
+
+
+<h3 id="alloc-locating">Locating an allocation tracking file</h3>
+<p>You can quickly discover where Android Studio stored allocation tracking files on disk.</p>
+
+
+<p>Follow this step in Android Studio: </p>
+<ul>
+<li>In the <em>Captures</em> window, right-click allocation file and select
+  <strong>Show in Files</strong>.</li>
+
+<p>Android Studio opens an operating system file browser displaying the location where the file
+  resides.</p>
+</ul>
+
+<p class="note"><strong>Note:</strong> If you move an allocation tracking file, Android Studio
+  no longer displays it in the <em>Captures</em> window. To display the file, use
+  <strong>File</strong>
+  &gt; <strong>Open</strong>. Also, rename the file from the <em>Captures</em>
+  window and not in the operating system file browser. </p>
+
+<h3 id="alloc-deleting">Deleting an allocation tracking file</h3>
+
+
+<p>Follow this step: </p>
+<ul>
+<li>In the <em>Captures</em> window, right-click an allocation tracking file and select
+  <strong>Delete</strong>.</li>
+
+<p>Android Studio deletes the file from the <em>Captures</em> dialog and from disk. </p>
+</ul>
diff --git a/docs/html/tools/help/am-network.jd b/docs/html/tools/help/am-network.jd
new file mode 100644
index 0000000..ae116ac
--- /dev/null
+++ b/docs/html/tools/help/am-network.jd
@@ -0,0 +1,130 @@
+page.title=Network Monitor
+parent.title=Android Monitor
+parent.link=android-monitor.html
+page.tags=monitor
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#running">Displaying a Running App in the Network Monitor</a></li>
+</ol>
+
+ <h2>See also</h2>
+  <ol>
+    <li>
+        <a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a>
+      </li>
+    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
+      </li>
+  </ol>
+
+<h2>Video</h2>
+  <ol>
+    <li><a href="https://www.youtube.com/watch?v=fEEulSk1kNY"
+      class="external-link">Battery Drain and Networking</a></li>
+  </ol>
+
+<h2>
+  Dependencies and Prerequisites
+</h2>
+
+<ul>
+  <li>
+    <a href="{@docRoot}tools/building/building-studio.html#RunningOnDeviceStudio">Connect a
+    hardware device</a> to your development computer.
+  </li>
+
+  <li>Make sure your development computer detects your hardware device, which often happens
+  automatically when you connect it to a USB port.
+  </li>
+
+  <li>
+    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
+    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
+    <strong>Developer Options</strong> on the device.
+  </li>
+
+  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
+  <code>build.gradle</code> file (it’s initially set by default).
+  </li>
+
+  <li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
+  <strong>Enable ADB Integration</strong>.
+  </li>
+
+  <li>
+    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
+  </li>
+</ul>
+
+</div>
+</div>
+
+<p>
+  The Network Monitor makes it possible to track when your application is making network requests.
+  Using this tool, you can monitor how and when your app transfers data, and optimize the underlying
+  code appropriately.
+</p>
+
+<p>
+  By monitoring the frequency of data transfers, and the amount of data transferred during each
+  connection, you can identify areas of your app that can be made more efficient and use less
+  battery power.
+  Generally, you should look for short spikes that can be delayed, or that could cause a later
+  transfer to be preempted.
+</p>
+
+
+<h2 id="running">
+  Displaying a Running App in the Network Monitor
+</h2>
+
+<p>
+  Follow these steps:
+</p>
+
+<ol>
+  <li>Connect a hardware device.
+  </li>
+
+  <li>
+    <a href="{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>.
+  </li>
+
+  <li>Click the <strong>Network</strong> tab.
+  </li>
+
+  <li>Open an app project and <a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">run it</a> on the hardware device.
+  </li>
+
+  <li>To start the Network Monitor, click Pause <img src="{@docRoot}images/tools/am-ipause.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> to
+  deselect it.
+  </li>
+<p>
+  Any network traffic begins to appear in the Network Monitor:
+</p>
+  <img src="{@docRoot}images/tools/am-networkmon.png" style="vertical-align:sub;margin:0;width:450px" />
+<p>
+  The Network Monitor adds up the amount of time it takes for the device to transmit and receive
+  kilobytes of data.
+  The y-axis is in kilobytes per second. The x-axis starts with seconds, and then minutes and
+  seconds, and so on.
+</p>
+  <li>To stop the Network Monitor, click Pause <img src="{@docRoot}images/tools/am-ipause.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Pause icon" /> again to
+  select it.
+  </li>
+</ol>
\ No newline at end of file
diff --git a/docs/html/tools/help/android-monitor.jd b/docs/html/tools/help/android-monitor.jd
new file mode 100644
index 0000000..4c9f80f
--- /dev/null
+++ b/docs/html/tools/help/android-monitor.jd
@@ -0,0 +1,462 @@
+page.title=Android Monitor
+parent.title=Tools
+parent.link=index.html
+page.tags=monitor
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#displaying">Displaying Android Monitor</a></li>
+  <li><a href="#profiling">Profiling a Running App in Android Monitor</a></li>
+  <li><a href="#switching">Switching between Devices and Apps</a></li>
+  <li><a href="#screencapture">Taking a Screen Capture of the Device</a></li>
+  <li><a href="#video">Recording a Video from the Screen</a></li>
+  <li><a href="#sysinfo">Examining System Information</a></li>
+  <li><a href="#terminating">Terminating the App</a></li>
+  <li><a href="#rearranging">Rearranging Android Monitor Windows</a></li>
+  <li><a href="#removing">Removing an App from a Device</a></li>
+</ol>
+
+ <h2>See also</h2>
+  <ol>
+    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
+      </li>
+
+      <li>
+        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
+      </li>
+  </ol>
+
+
+<h2>
+  Dependencies and Prerequisites
+</h2>
+
+<ul>
+  <li>In your app, set the <code>debuggable</code> property to <code>true</code> in the manifest or
+  <code>build.gradle</code> file (it’s initially set by default).
+  </li>
+
+    <li>Enable ADB integration through <strong>Tools</strong> &gt; <strong>Android</strong> &gt;
+  <strong>Enable ADB Integration</strong>.
+    </li>
+
+  <li>Make sure your development computer detects your hardware device, which often happens
+  automatically when you connect it to a USB port.
+  </li>
+ <li>
+    <a href="{@docRoot}tools/device.html#device-developer-options">Enable</a> <strong><a href=
+    "{@docRoot}tools/device.html#device-developer-options">USB debugging</a></strong> in
+    <strong>Developer Options</strong> on the device or emulator.
+  </li>
+
+  <li>
+    <a href="{@docRoot}tools/help/monitor.html">Android Device Monitor</a> can’t be running.
+  </li>
+</ul>
+
+</div>
+</div>
+
+<p>
+  Android Monitor helps you to profile the performance of your apps so you can optimize, debug, and
+  improve them. It lets you monitor the following aspects of your apps from a hardware device or
+  the Android Studio emulator:
+</p>
+
+<ul>
+  <li>
+    <a href="{@docRoot}reference/android/util/Log.html">Log</a> messages, either
+    system- or user-defined
+  </li>
+
+  <li>Memory, CPU, and GPU usage
+  </li>
+
+  <li>Network traffic (hardware device only)
+  </li>
+</ul>
+
+<p>
+  Android Monitor contains the logcat, Memory, CPU, GPU, and Network Monitors that you can use
+  separately to examine these aspects of your apps.
+</p>
+
+
+<h2 id="displaying">
+  Displaying Android Monitor
+</h2>
+
+<p>
+  Android Monitor is integrated into the Android Studio main window:
+</p>
+
+<ul>
+  <li>To display Android Monitor, click <img src="{@docRoot}images/tools/am-icon.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Android Monitor icon" />, which by default
+  is at the bottom of the main window.
+  </li>
+
+  <li>To hide Android Monitor, click <img src="{@docRoot}images/tools/am-icon.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Android Monitor icon" /> again.
+  </li>
+</ul>
+<img src="{@docRoot}images/tools/am-androidmon.png" style="vertical-align:sub;margin:0;width:480px" />
+
+<h2 id="profiling">
+  Profiling a Running App in Android Monitor
+</h2>
+
+<p>
+  Follow these steps:
+</p>
+
+<ol>
+  <li>Optionally connect a hardware device.
+  </li>
+
+  <li>
+    <a href="#displaying">Display Android Monitor</a>.
+  </li>
+
+  <li>Open an app project and <a href=
+  "{@docRoot}tools/building/building-studio.html#RunningApp">run the app</a> on a device or
+  emulator.
+  </li>
+
+  <li>Click the tab for the monitor you want to view and start the monitor, if needed:
+    <ul>
+      <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-memory.html">Memory Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-cpu.html">CPU Monitor</a>
+      </li>
+
+      <li><a href="{@docRoot}tools/help/am-gpu.html">GPU Monitor</a>
+      </li>
+
+      <li>
+        <a href="{@docRoot}tools/help/am-network.html">Network Monitor</a>
+      </li>
+    </ul>
+</ol>
+    <h2 id="switching">
+      Switching between Devices and Apps
+    </h2>
+
+    <p>
+      By default, Android Monitor displays data for your most recently run app. You can switch to
+      another device and app as needed. In addition to currently running apps, you can view
+      information about apps that are no longer running so you can continue to view any information
+      about them that you gathered previously.
+    </p>
+
+    <p>
+      At the top of the Android Monitor main window are two menus listing devices and processes. To
+      switch to another device, process, or both, follow these steps:
+    </p>
+
+    <ol>
+      <li>Select the device or emulator.
+      </li>
+
+    <p>
+      The Device menu lists the devices and emulators that are running or have run during your
+      current session. There are various status messages that can appear in the Device menu:
+    </p>
+
+    <ul>
+      <li>
+        <strong>DISCONNECTED</strong> - You closed an emulator or unplugged a device from the
+        computer.
+      </li>
+
+      <li>
+        <strong>UNAUTHORIZED</strong> - A device needs you to accept the incoming computer
+        connection. For example, if the connected device displays an <em>Allow USB Debugging</em>
+        dialog, click <strong>OK</strong> to allow the connection.
+      </li>
+
+      <li>
+        <strong>OFFLINE</strong> - Android Monitor can’t communicate with a device, even though it
+        has detected that device.
+      </li>
+    </ul>
+
+  <li>Select the process.
+  </li>
+</ol>
+
+<p>
+  The Process menu lists the processes that are running or have run during your current session. If
+  a process is no longer running, the menu displays a status of <strong>DEAD</strong>.
+</p>
+
+<h2 id="screencapture">
+  Taking a Screen Capture of the Device
+</h2>
+
+<p>
+  You can take a PNG screenshot of the display on a connected device or the emulator. You can use
+  the images for your marketing materials as well as for debugging, for example.
+</p>
+<p>
+  Follow these steps:
+</p>
+<ol>
+  <li>
+    <a href="{@docRoot}training/basics/firstapp/running-app.html">Run your
+    app</a> from within Android Studio.
+  </li>
+
+  <li>
+    <a href="#switching">Select the device and the process</a> in the Android Monitor
+    menus, if needed.
+  </li>
+
+  <li>Interact with the display on the device or emulator to stage the image you want.
+  </li>
+
+  <li>Click Screen Capture <img src="{@docRoot}images/tools/am-iscreencapture.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Screen Capture icon" /> in the
+    Android Monitor toolbar.
+  </li>
+  <p>The screenshot appears in a <em>Screenshot Editor</em> window.</p>
+
+  <li>Optionally change the image:
+    <ul>
+      <li>
+        <strong>Reload</strong> - Click to take a new screenshot.
+      </li>
+
+      <li>
+        <strong>Rotate</strong> - Click to rotate the image 90 degrees clockwise.
+      </li>
+
+      <li>
+        <strong>Frame Screenshot</strong> - Select this option and choose a device to add an image
+        of the device to the outside of the screenshot. Select <strong>Drop Shadow</strong>,
+        <strong>Screen Glare</strong>, or both to add these effects to your image.
+      </li>
+
+      <li>
+        <strong>Chessboard</strong> and <strong>Grid</strong> - Select an option to display these
+        behind your image.
+      </li>
+
+      <li>
+        <strong>Zoom In</strong>, <strong>Zoom Out</strong>, or <strong>Actual Size</strong> -
+        Click these options to get different perspectives of your image without changing the image
+        itself.
+      </li>
+    </ul>
+    </li>
+      <li>Click <strong>Save</strong> to save the image.
+      </li>
+</ol>
+
+<h2 id="video">
+  Recording a Video from the Screen
+</h2>
+
+<p>
+  Android Studio lets you record an MP4 video from your hardware device for a maximum of three
+  minutes. You can use the video for your marketing materials as well as for debugging, for
+  example.
+</p>
+<p>
+  Follow these steps:
+</p>
+<ol>
+  <li>
+    <a href="{@docRoot}training/basics/firstapp/running-app.html">Run your
+    app</a> from within Android Studio.
+  </li>
+
+  <li>
+    <a href="#switching">Select the device and the process</a> in the Android Monitor
+    menus, if needed.
+  </li>
+
+  <li>Interact with the display on the device or emulator to stage the start of the video.
+  </li>
+
+  <li>Click Screen Record <img src="{@docRoot}images/tools/am-ivideo.png" style="vertical-align:sub;margin:0;height:17px" alt="Screen Record icon" /> in the Android Monitor toolbar.
+  </li>
+  <p>The screenshot appears in a Screenshot Editor window.</p>
+
+  <li>In the <em>Screen Recorder Options</em> dialog, optionally change the recording options:
+  </li>
+<ul>
+  <li>
+    <strong>Bit Rate</strong> - Type a bit rate. The default is 4 Mbps.
+  </li>
+
+  <li>
+    <strong>Resolution</strong> - Type a width and height value in pixels. The value must be a
+    multiple of 16. The default is the resolution of the device.
+  </li>
+</ul>
+  <li>Click <strong>Start Recording</strong> to start the recording.
+  </li>
+
+  <li>Click <strong>Stop Recording</strong> to stop the recording.
+  </li>
+
+  <li>In the <em>Save As</em> dialog, save the MP4 file.
+  </li>
+
+  <li>In the <em>Screen Recorder</em> dialog, click one of the buttons to show the file location,
+  open the recording in a player, or to dismiss the dialog.
+  </li>
+</ol>
+
+<h2 id="sysinfo">
+  Examining System Information
+</h2>
+<p>
+  You can view <code>dumpsys</code> output from within Android Monitor. Follow these steps:
+</p>
+
+<ol>
+  <li>
+    <a href="{@docRoot}training/basics/firstapp/running-app.html">Run your
+    app</a> from within Android Studio.
+  </li>
+
+  <li>
+    <a href="#switching">Select the device and the process</a> in the Android Monitor
+    menus, if needed.
+  </li>
+
+  <li>Click System Information <img src="{@docRoot}images/tools/am-isysteminfo.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="System Information icon" /> and then a
+    menu item in the Android Monitor
+  toolbar.
+  </li>
+
+<p>
+  The menu items display different types of <code><a href=
+  "https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></code> output:
+</p>
+
+<ul>
+  <li>
+    <strong>Activity Manager State</strong> - <code>dumpsys activity</code>
+  </li>
+
+  <li>
+    <strong>Package Information</strong> - <code>dumpsys package</code>
+  </li>
+
+  <li>
+    <strong>Memory Usage</strong> - <code><a href=
+    "{@docRoot}tools/debugging/debugging-memory.html#ViewingAllocations">dumpsys
+    meminfo</a></code>
+  </li>
+
+  <li>
+    <strong>Memory Use Over Time</strong> - <code><a href=
+    "http://android-developers.blogspot.com/2014/01/process-stats-understanding-how-your.html">dumpsys
+    procstats</a></code>
+  </li>
+
+  <li>
+    <strong>Graphics State</strong> - <code><a href=
+    "{@docRoot}training/testing/performance.html">dumpsys gfxinfo</a></code>
+  </li>
+</ul>
+
+<p>
+  The information appears in an editable text file in the Code Editor.
+</p>
+</ol>
+
+<h2 id="terminating">
+  Terminating the App
+</h2>
+
+<p>
+  If you want to stop an app you’ve run from Android Studio, follow these steps:
+</p>
+
+<ol>
+  <li>
+    <a href="#switching">Select the device and the process</a> in the Android Monitor
+    menus, if needed.
+  </li>
+
+  <li>Click Terminate Application <img src="{@docRoot}images/tools/am-iterminate.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Terminate App icon" />.
+  </li>
+
+
+<p>
+  The process status changes to <strong>DEAD</strong> in the Processes menu. The emulator or device
+  continues to run, but the app closes. Any running monitors in Android Monitor stop.
+</p>
+</ol>
+
+<h2 id="rearranging">
+  Rearranging Android Monitor Windows
+</h2>
+
+<p>
+  You can rearrange the Android Monitor windows for optimal viewing during your tests:
+</p>
+
+<ul>
+  <li>To reorder the monitors, move the tabs back and forth.
+  </li>
+
+  <li>To move a monitor to a standalone window, grab a tab and move it to a different location on
+  the screen. Or, select <img src="{@docRoot}images/tools/am-igear.png" style="vertical-align:sub;margin:0;height:17px" alt="Gear menu icon" /> &gt; <strong>Floating Mode</strong>.
+  </li>
+
+
+  <li>To dock a standalone window, grab it and move it to the Android Monitor area. Or, select
+  <img src="{@docRoot}images/tools/am-igear.png" style="vertical-align:sub;margin:0;height:17px"
+  alt="Gear menu icon"> &gt; <strong>Floating Mode</strong> to deselect it.
+  </li>
+
+
+  <li>To combine two monitor displays together, grab a tab and move it onto another monitor.
+  </li>
+
+  <li>To hide a monitor, click the <img src="{@docRoot}images/tools/am-ihide.png" style="vertical-align:sub;margin:0;height:17px" alt="Hide icon" /> icon. To make it reappear, click the icon of
+  the monitor on the far right of the row of tabs.
+  </li>
+</ul>
+
+<h2 id="removing">
+  Removing an App from a Device
+</h2>
+
+<p>
+  To remove an app from a device you use for development, use the normal uninstall procedure on the
+  device.
+</p>
+
+<p>
+  If you run a new version of an app from Android Studio that’s been already installed on a
+  hardware device, the device displays an <em>Application Installation Failed</em> dialog. Click
+  <strong>OK</strong> to install the new version of the app.
+</p>
+
+
+
+
diff --git a/docs/html/tools/help/android.jd b/docs/html/tools/help/android.jd
old mode 100644
new mode 100755
index 0d7d2aa..fa359e9
--- a/docs/html/tools/help/android.jd
+++ b/docs/html/tools/help/android.jd
@@ -17,7 +17,7 @@
     "{@docRoot}tools/help/sdk-manager.html">SDK Manager</a>.</li>
   </ul>
 
-<p>If you are using Android Studio or Eclipse, the <code>android</code> tool's features are
+<p>If you are using Android Studio, the <code>android</code> tool's features are
 integrated into the IDE, so you should not need to use this tool directly. </p>
 
   <p class="note"><strong>Note:</strong> The documentation of options below is not exhaustive
diff --git a/docs/html/tools/help/app-link-indexing.jd b/docs/html/tools/help/app-link-indexing.jd
new file mode 100644
index 0000000..611373a
--- /dev/null
+++ b/docs/html/tools/help/app-link-indexing.jd
@@ -0,0 +1,514 @@
+page.title=Deep Link and App Indexing API Support in Android Studio
+parent.title=Tools
+parent.link=index.html
+page.tags=app indexing
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#workflow">Typical Workflow</a></li>
+  <li><a href="#intent">Adding an Intent Filter for Deep Linking and Google Search</a></li>
+  <li><a href="#indexing">Adding App Indexing API Skeleton Code to an Activity</a></li>
+  <li><a href="#testintent">Testing a Deep Link</a></li>
+  <li><a href="#testindexing">Viewing App Indexing API Messages in the logcat Monitor</a></li>
+  <li><a href="#lint">Configuring Lint</a></li>
+</ol>
+
+ <h2>See also</h2>
+  <ol>
+    <li><a href="https://developers.google.com/app-indexing/introduction"
+      class="external-link">App Indexing</a></li>
+    <li><a href="{@docRoot}training/app-indexing/index.html"
+      >Making Your App Content Searchable by Google</a></li>
+    <li><a href="{@docRoot}training/app-links/index.html">Handling App Links</a></li>
+    <li><a href="{@docRoot}tools/debugging/improving-w-lint.html"
+      >Improving Your Code with lint</a></li>
+    <li><a href="{@docRoot}tools/help/am-logcat.html">logcat Monitor</a></li>
+    <li><a href="https://www.google.com/webmasters/tools/home"
+      class="external-link">Google Search Console</a></li>
+    <li><a href="https://developers.google.com/android/guides/overview"
+      class="external-link">Google Play Services</a></li>
+  </ol>
+
+  <h2>Video</h2>
+  <ol>
+    <li><a href="https://www.youtube.com/watch?v=aISUYHTkTOU"
+      class="external-link">DevBytes: App Indexing</a></li>
+  </ol>
+
+  <h2>Dependencies and prerequisites</h2>
+  <ul>
+    <li>Android 2.3 (API level 9) or higher</li>
+    <li>Android Studio 1.5 or higher</li>
+    <li>Google Play Services 8.1.0 or higher</li>
+  </ul>
+
+</div>
+</div>
+
+<p>Android Studio helps you add deep links, app indexing, and search functionality to your apps.
+  These features can help to drive more traffic to your
+  app, discover which app content is used most, make it easier for users to find content in an
+  installed app, and attract new users.</p>
+
+<h2 id="workflow">Typical Workflow</h2>
+
+<p>To use Android Studio to add deep link, app indexing, and search features to your app, follow
+  these basic steps:</p>
+
+<ol>
+<li>Add intent filters and code to handle incoming intents.</li>
+<li>Associate a website with your app.</li>
+<li>Add App Indexing API code.</li>
+</ol>
+
+<p>Intent filters and the App Indexing API are ways to implement deep links and app indexing, but
+  there are other possible implementations as well. See
+  <a href="https://developers.google.com/app-indexing/reference/deeplinks"
+  class="external-link">Alternate Android Indexing Methods</a>
+  for more information.</p>
+
+<h3 id="aboutintent">Intent filters for deep links</h3>
+
+<p>Android Studio can create a basic intent filter in your manifest that you can customize to
+  define deep link URLs for your app. You can then write Java code in an activity to handle the
+  intent. This implementation lets users directly open the specified app activity by
+  clicking a deep link. Users can see the deep links in google.com in a browser, in the
+  Google Search app, and in Google Now on Tap. </p>
+
+<h3 id="aboutassociation">Website association with deep links</h3>
+
+<p>After setting up deep links for your app, you can associate your website with your app by using
+  the Google Search Console and Google Play Developer Console. Afterward, Google indexes your app
+  for URLs defined in
+  your intent filters and begins to include them in search results. In addition, you can optionally
+  exclude app content from Google Search. After you associate a website with your app, features
+  such as Now on Tap and enhanced search result display (like including your app icon)
+  become available.</p>
+
+<p>As an alternative to associating your app with a website,
+  for Android 6.0 (API level 23) and higher, you can add
+  <a href="{@docRoot}training/app-links/index.html"
+  >default handlers and verification for deep links</a>
+  instead.</p>
+
+<p>Chrome displaying google.com serves search results with deep links that are accessible to both
+  signed-in users and those who aren't. Google Search app users must be signed in to see deep links
+  in their search results. </p>
+
+<h3 id="aboutapi">App Indexing API code in activities</h3>
+
+<p>Next, if you want to support additional search features, such as autocompletions, you can
+  add App Indexing API code to your app. Android Studio can create skeleton code in an activity
+  that you can then customize to support app indexing. The App Indexing API allows app indexing
+  even if
+  <a href="https://developers.google.com/app-indexing/reference/deeplinks#allow-access-by-googlebot-optional"
+  class="external-link">Googlebot</a>
+  can’t get content from your app.</p>
+
+<h3 id="abouttest">Deep link and App Indexing API testing</h3>
+
+<p>Android Studio helps you test your code with the following features:</p>
+
+<ul>
+<li>Deep link testing helps you verify that a specified deep link can launch an app. </li>
+<li>The logcat Monitor helps you test App Indexing API calls in an activity. </li>
+<li>The Android Lint tool has warnings for certain issues involving deep links and the App Indexing
+  API. These warnings and errors appear in the Code Editor and in Lint inspection results.</li>
+</ul>
+
+<p>The details for implementing deep links and app indexing are described next.
+
+
+<h2 id="intent">Adding an Intent Filter for Deep Linking and Google Search</h2>
+
+<p>To use Android Studio features to add an intent filter defining a deep link, follow these
+  steps:</p>
+
+<ol>
+<li>In the <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a>
+  of the <em>Project</em> window, double-click the <code>AndroidManifest.xml</code> file to open it
+  in the Code Editor.</li>
+<li>Insert an intent filter in one of the following ways:</li>
+<ul>
+<li>In an <code>&lt;activity&gt;</code> element, click in the left column so the light bulb
+  <img src="{@docRoot}images/tools/ai-ilightbulb.png"
+    style="vertical-align:sub;margin:0;height:17px" alt="Lightbulb icon" /> appears. Click
+  <img src="{@docRoot}images/tools/ai-ilightbulb.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Lightbulb icon" />
+  and select <strong>Create Deep Link</strong>.</li>
+<li>Right-click in an <code>&lt;activity&gt;</code> element and select <strong>Generate</strong>
+  &gt; <strong>Deep Link</strong>.</li>
+<li>Place your cursor in an activity, and then select <strong>Code</strong> &gt;
+  <strong>Generate</strong> &gt; <strong>Deep Link</strong>.</li>
+</ul>
+
+<p>The Code Editor adds skeleton code using the
+  <a href="https://www.jetbrains.com/idea/help/intention-actions.html"
+  class="external-link">intention action</a> and
+  <a href="https://www.jetbrains.com/idea/help/generating-code.html"
+  class="external-link">generate code</a> mechanisms.</p>
+
+<p>The Code Editor adds an intent filter similar to the following:</p>
+<pre>
+&lt;!-- ATTENTION: This intent was auto-generated. Follow instructions at
+ https://g.co/AppIndexing/AndroidStudio to publish your Android app deep links. --&gt;
+&lt;intent-filter&gt;
+   &lt;action android:name="android.intent.action.VIEW" /&gt;
+
+   &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+   &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+   &lt;!-- ATTENTION: This data URL was auto-generated.
+     We recommend that you use the HTTP scheme.
+     TODO: Change the host or pathPrefix as necessary. --&gt;
+   &lt;data
+       android:host="www.example.com"
+       android:pathPrefix="/gizmos"
+       android:scheme="http" /&gt;
+&lt;/intent-filter&gt;
+</pre>
+
+<li><a href="{@docRoot}training/app-indexing/deep-linking.html#adding-filters">Modify the
+  <code>&lt;data&gt;</code> element</a>
+  and optionally the <code>&lt;category&gt;</code> element, as needed.</li>
+
+
+<p>We recommend that you define a <code>&lt;data&gt;</code> element that supports URLs that you’ll
+  add in the future. In the previous sample code, for example, Google will index any URLs starting
+  with <code>www.example.com/gizmos</code>. Also, remember to
+  include a deep link for your app home screen so it’s included in search results. </p>
+
+<p>Deep link URLs can be the same as the URLs of the comparable pages on your website.</p>
+
+<li>In the corresponding activity,
+  <a href="{@docRoot}training/app-indexing/deep-linking.html#handling-intents">add Java code</a>
+  to read data from the intent filter and direct the app to respond accordingly. </li>
+<li><a href="#testintent">Test your deep link</a>.</li>
+
+</ol>
+
+<p>To support Google Search for your deep links, follow these steps:</p>
+<ol>
+<li><a href="https://developers.google.com/app-indexing/android/app#declare-a-website-association"
+  class="external-link">Define an association</a>
+  between your app and your website.</li>
+<p>Alternatively, for Android 6.0 (API level 23) and higher, add
+  <a href="{@docRoot}training/app-links/index.html">link default handling and verification</a>.</p>
+<li>Optionally
+  <a href="https://developers.google.com/app-indexing/android/app#create-the-noindexxml-file"
+  class="external-link">exclude app URLs</a>
+  from the Google index.</li>
+<li>Optionally <a href="#indexing">add App Indexing API code</a> to support additional search
+  features.</li>
+</ol>
+
+
+<p>To test and debug your links, you can use the following Android Studio features:</p>
+<ul>
+<li><a href="#testintent">Launch your deep link</a> in Android Studio to test that it works.</li>
+<li><a href="#lint">Enable the following Android Lint categories</a>:</li>
+<ul>
+<li><strong>Missing Support for Google App Indexing</strong></li>
+<li><strong>Incorrect Usage of App Link for Google App Indexing</strong></li>
+</ul>
+</ul>
+
+<p>In addition, you can
+  <a href="https://developers.google.com/app-indexing/android/test#preview-your-apk-on-search-console"
+  class="external-link">preview your APK in the Google Search Console</a>
+  to test your deep links, whether the app is associated with a website or not. </p>
+
+
+
+<h2 id="indexing">Adding App Indexing API Skeleton Code to an Activity</h2>
+
+<p>After adding deep links, you can add App Indexing API code to an activity to support additional
+  search features.  </p>
+
+<p>To add App Indexing API code to an activity, follow these steps:</p>
+<ol>
+<li>In <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a>
+  in the <em>Project</em> window, double-click the activity Java file to open it in the
+  Code Editor.</li>
+<li>Insert skeleton code in one of the following ways:</li>
+<ul>
+<li>In an activity definition, click in the Java code so the light bulb
+  <img src="{@docRoot}images/tools/ai-ilightbulb.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Lightbulb icon" /> appears.
+  Click <img src="{@docRoot}images/tools/ai-ilightbulb.png"
+  style="vertical-align:sub;margin:0;height:17px" alt="Lightbulb icon" />
+  and select <strong>Insert App Indexing API Code</strong>.</li>
+<li>Right-click in an activity definition and select <strong>Generate</strong> &gt;
+  <strong>App Indexing API Code</strong>.</li>
+<li>Place the cursor in an activity, and then select <strong>Code</strong> &gt;
+  <strong>Generate</strong> &gt;
+  <strong>App Indexing API Code</strong>.</li>
+</ul>
+
+
+<p>The Code Editor adds skeleton code using the
+  <a href="https://www.jetbrains.com/idea/help/intention-actions.html"
+  class="external-link">intention action</a> and
+  <a href="https://www.jetbrains.com/idea/help/generating-code.html"
+  class="external-link">generate code</a>
+  mechanisms.</p>
+
+<p>If you don’t see the <strong>App Indexing API Code</strong> menu item, make sure your cursor is
+  within an activity, and check your code for App Indexing API methods. The Code Editor can insert
+  skeleton Java code into an activity in the following circumstances:</p>
+
+<ul>
+<li>The activity doesn’t have an <code>onStart()</code> method, or the <code>onStart()</code>
+  method doesn’t contain an <code>AppIndexApi.start()</code> or <code>AppIndexApi.view()</code>
+  call.</li>
+<li>The activity doesn’t have an <code>onStop()</code> method, or the <code>onStop()</code>
+  method doesn’t contain an <code>AppIndexApi.end()</code> or <code>AppIndexApi.viewEnd()</code>
+  call.</li>
+</ul>
+
+
+<p>The Code Editor adds Java code similar to the following:</p>
+<pre>
+   /**
+    * ATTENTION: This was auto-generated to implement the App Indexing API.
+    * See https://g.co/AppIndexing/AndroidStudio for more information.
+    */
+   private GoogleApiClient client;
+
+       // ATTENTION: This was auto-generated to implement the App Indexing API.
+       // See https://g.co/AppIndexing/AndroidStudio for more information.
+       client = new GoogleApiClient.Builder(this).addApi(AppIndex.API).build();
+   }
+
+
+   &#64;Override
+   public void onStart() {
+       super.onStart();
+
+       // ATTENTION: This was auto-generated to implement the App Indexing API.
+       // See https://g.co/AppIndexing/AndroidStudio for more information.
+       client.connect();
+       Action viewAction = Action.newAction(
+               Action.TYPE_VIEW, // TODO: choose an action type.
+               "Main Page", // TODO: Define a title for the content shown.
+               // TODO: If you have web page content that matches
+               // this app activity's content,
+               // make sure this auto-generated web page URL is correct.
+               // Otherwise, set the URL to null.
+               Uri.parse("http://host/path"),
+               // TODO: Make sure this auto-generated app deep link URI is correct.
+               Uri.parse("android-app://com.example/http/host/path")
+       );
+       AppIndex.AppIndexApi.start(client, viewAction);
+   }
+
+   &#64;Override
+   public void onStop() {
+       super.onStop();
+
+       // ATTENTION: This was auto-generated to implement the App Indexing API.
+       // See https://g.co/AppIndexing/AndroidStudio for more information.
+       Action viewAction = Action.newAction(
+               Action.TYPE_VIEW, // TODO: choose an action type.
+               "Main Page", // TODO: Define a title for the content shown.
+               // TODO: If you have web page content that matches
+               // this app activity's content,
+               // make sure this auto-generated web page URL is correct.
+               // Otherwise, set the URL to null.
+               Uri.parse("http://host/path"),
+               // TODO: Make sure this auto-generated app deep link URI is correct.
+               Uri.parse("android-app://com.example/http/host/path")
+       );
+       AppIndex.AppIndexApi.end(client, viewAction);
+       client.disconnect();
+   }
+}
+</pre>
+
+<p>For more information about the App Indexing API methods, see
+  <a href="https://developers.google.com/app-indexing/reference/package-summary"
+  class="external-link">Android API for App Indexing</a>.
+  For information about the action types, see the
+  <a href="https://developers.google.com/android/reference/com/google/android/gms/appindexing/Action#constant-summary"
+  class="external-link">Action Class Constant Summary</a>.
+</p>
+
+<p>If your app isn’t already configured for the Google Play Services App Indexing API, the Code
+  Editor also modifies your <code>build.gradle</code> and <code>AndroidManifest.xml</code> files
+  to include it. If your app already depends on it but the version is lower than 8.1.0, your app
+  is upgraded to version 8.1.0. For more information and to correct any issues, see
+  <a href="https://developers.google.com/app-indexing/android/publish#add-google-play-services"
+  class="external-link">Add Google Play Services</a>
+  and <a href="https://developers.google.com/android/guides/setup"
+  class="external-link">Setting Up Google Play Services</a>.
+</p>
+
+<li>Customize the skeleton code, as needed.</li>
+
+<p>Pay attention to the comments, which help you find areas that need work, such as setting the
+  title and URLs. For more information, see
+  <a href="https://developers.google.com/app-indexing/android/publish"
+  class="external-link">Add the App Indexing API</a>.
+</p>
+<li><a href="#testindexing">Verify that your app indexing code is working</a> by using
+  the logcat Monitor.</li>
+</ol>
+
+
+
+<p>To test and debug your App Indexing API code, you can use the following Android Studio
+  features:</p>
+<ul>
+<li><a href="#testindexing">Examine logcat Monitor Messages</a>.</li>
+<li><a href="#lint">Enable the following Android Lint category</a>:
+  <strong>Missing Support for Google App Indexing API</strong></li>
+</ul>
+
+<p>In addition, you can
+  <a href="https://developers.google.com/app-indexing/android/test#preview-your-apk-on-search-console"
+  class="external-link">preview your APK in the Google Search Console</a>.</p>
+
+
+<h2 id="testintent">Testing a Deep Link</h2>
+
+<p>When you run your app from Android Studio, you can specify a deep link to launch so you can
+  test it.</p>
+
+<p>To launch a deep link from Android Studio, follow these steps:</p>
+<ol>
+<li>In Android Studio, open your project in
+  <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a>.</li>
+<li>After opening a project, select <strong>Run</strong> &gt; <strong>Edit Configurations</strong>.
+</li>
+<li>In the <em>Run/Debug Configurations</em> dialog, beneath <strong>Android Application,</strong>
+  select the module you want to test.</li>
+<li>Select the <strong>General</strong> tab. </li>
+<li>In the <strong>Launch</strong> field, select <strong>Deep Link</strong>. </li>
+<li>In the <strong>Deep Link</strong> field, click <strong>…</strong> to select from a list of
+  defined deep links.</li>
+
+<p>Or type the URL you want to test, for example, <code>http://example.com/gizmos</code>. </p>
+<li>Click <strong>OK</strong>.</li>
+<li>Select <strong>Run</strong> &gt; <strong>Run app</strong> or <strong>Debug app</strong>.</li>
+<li>If the <em>Device Chooser</em> dialog appears, select a connected device or an
+  emulator, and click <strong>OK</strong>.</li>
+
+<p>If the link is successful, the app launches in the device or emulator, and displays the app at
+  the specified activity. Otherwise, an error message appears in the <em>Run</em> window.</p>
+</ol>
+
+<p>For more information about creating run configurations at the project, default, and module
+  levels, see
+  <a href="{@docRoot}tools/building/building-studio.html">Building and Running from Android Studio</a>.
+</p>
+
+<p>You can view App Indexing API log messages while the app is running, as described next.</p>
+
+
+<h2 id="testindexing">Viewing App Indexing API Messages in the logcat Monitor</h2>
+
+<p>The logcat Monitor can display app indexing log messages to determine if your App Indexing API
+  code is pushing the correct data to the cloud. For example, you can check the app title and the
+  URL. The logcat Monitor is part of Android Monitor in Android Studio. </p>
+
+<p>Follow these steps:</p>
+<ol>
+<li>Run your app in Android Studio so it <a href="#testintent">launches a deep link</a>.</li>
+<li><a href="{@docRoot}tools/help/android-monitor.html#displaying">Display Android Monitor</a>
+  and click the <strong>logcat</strong> tab.</li>
+<li><a href="{@docRoot}tools/help/am-logcat.html#level">Set the log level</a> to
+  <strong>Verbose</strong>.</li>
+<li>In the filter menu, select <strong>No Filters</strong>.</li>
+<li><a href="{@docRoot}tools/help/am-logcat.html#searching">Search the log</a> for the string
+  "appindex".</li>
+
+<p>App indexing log messages should appear. If they don’t, check the following items:</p>
+<ul>
+<li>Is Google Play Services installed on the device or emulator? You can check the settings on
+  the device. </li>
+<li>Is the Google Play Services version on the device or emulator lower than the version specified
+  in the <code>build.gradle</code> file? If so, it might be out-of-date and should be upgraded to
+  a higher version.  </li>
+</ul>
+
+<p>For more information, see the
+  <a href="https://play.google.com/store/apps/details?id=com.google.android.gms&hl=en"
+  class="external-link">Google Play Services Download</a>
+  page and <a href="https://developers.google.com/android/guides/setup"
+  class="external-link">Setting Up Google Play Services</a>.
+</p>
+<li>Visit app pages that trigger App Indexing API calls. </li>
+</ol>
+
+
+<h2 id="lint">Configuring Lint</h2>
+
+<p>You can use the Android Studio built-in Lint tool to check whether you have valid deep links
+  defined in the manifest and have implemented the App Indexing API correctly in activities.</p>
+
+<p>You can view deep link and app indexing warnings and errors in two ways: </p>
+<ul>
+<li>As pop-up text in the Code Editor. When Lint finds a problem, it highlights the problematic
+  code in yellow, or underlines the code in red for more serious issues.</li>
+<li>In the Lint <em>Inspection Results</em> window after you select <strong>Analyze</strong> &gt;
+  <strong>Inspect Code</strong>.</li>
+</ul>
+
+
+
+<p>To set default Lint checks for deep links and the App Indexing API, follow these steps:</p>
+<ol>
+<li>In Android Studio, open your project in
+  <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a>.
+</li>
+<li>Select <strong>File</strong> &gt; <strong>Other Settings</strong> &gt;
+  <strong>Default Settings</strong>.</li>
+<li>In the <em>Default Preferences</em> dialog, select <strong>Editor</strong> &gt;
+  <strong>Inspections</strong>. </li>
+<li>In the <strong>Profile</strong> field, select <strong>Default</strong> or
+  <strong>Project Default</strong> to set the scope for Android Studio or just for this project,
+  respectively. </li>
+<li>Expand the <strong>Android Lint</strong> category and change the Lint settings as needed:</li>
+<ul>
+<li><strong>Missing Support for Google App Indexing</strong> - Reports a warning if the app hasn’t
+  implemented deep links, which are used by Google Search. This warning setting is enabled by
+  default.</li>
+<li><strong>Missing Support for Google App Indexing API</strong> - Reports if an app hasn’t
+  implemented the App Indexing API at all. This warning setting is disabled by default.</li>
+<li><strong>Incorrect Usage of App Link for Google App Indexing</strong> - Reports deep link
+  errors in manifest code. This error setting is enabled by default.</li>
+</ul>
+
+<p>For example, the following Lint warning appears for the first setting:</p>
+<p><img src="{@docRoot}images/tools/ai-lint.png" /></p>
+
+<li>Click <strong>OK</strong>.</li>
+</ol>
+
+
+
+<p>To produce a list of Lint checks displayed in the <em>Inspection Results</em> window,
+  follow these steps:</p>
+<ol>
+<li>In Android Studio, open your project in
+  <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a>
+  and select a portion of your project that you want to test.</li>
+<li>Select <strong>Analyze</strong> &gt; <strong>Inspect Code</strong>.</li>
+<li>In the <em>Specify Inspection Scope </em>dialog, select the inspection scope and profile. </li>
+
+<p>The scope specifies the files you want to analyze, and the profile specifies the Lint checks
+  you’d like to perform.</p>
+<li>If you want to change the Lint settings, click <strong>…</strong>. In the <em>Inspections</em>
+  dialog, optionally click <strong>Manage</strong> to define a new profile, specify the Lint
+  settings you want, and then click <strong>OK</strong>.</li>
+<p>In the <em>Inspections</em>  dialog, you can search for the string "app indexing"
+to find the deep link and App Indexing API Lint checks. Note that changing Lint settings for a
+profile in the <em>Inspections</em> dialog doesn’t change the default settings, as described in
+the previous procedure. It does change the settings for profiles displayed in the
+<em>Inspections</em> dialog, however.</p>
+<li>Click <strong>OK</strong>.</li>
+<p>The results appear in the <em>Inspection Results</em> window.</p>
+
+</ol>
diff --git a/docs/html/tools/help/avd-manager.jd b/docs/html/tools/help/avd-manager.jd
old mode 100644
new mode 100755
index 20f6253..b3dcad5
--- a/docs/html/tools/help/avd-manager.jd
+++ b/docs/html/tools/help/avd-manager.jd
@@ -8,9 +8,6 @@
 
 <p>You can launch the AVD Manager in one of the following ways:</p>
 <ul>
-  <li>In Eclipse: select <strong>Window &gt; Android Virtual Device Manager</strong>, or click
-  the AVD Manager icon in the toolbar.</li>
-
   <li>In Android Studio: select <strong>Tools &gt; Android &gt; AVD Manager</strong>, or click
   the AVD Manager icon in the toolbar.</li>
 
diff --git a/docs/html/tools/help/gltracer.jd b/docs/html/tools/help/gltracer.jd
old mode 100644
new mode 100755
index 700ee39..866bdc9
--- a/docs/html/tools/help/gltracer.jd
+++ b/docs/html/tools/help/gltracer.jd
@@ -26,17 +26,6 @@
 
 <h2 id="running">Running Tracer</h2>
 
-<p>Tracer can be run as part of the Eclipse Android Development Tools (ADT) plugin or as part of the
-Device Monitor tool.</p>
-
-<p>To run Tracer in Eclipse:</p>
-
-<ol>
-  <li>Start Eclipse and open a workspace that contains an Android project.</li>
-  <li>Activate the perspective for Tracer by choosing <strong>Window > Open Perspective >
-Other...</strong></li>
-  <li>Select <strong>Tracer for OpenGL ES</strong> and click <strong>OK</strong>.</li>
-</ol>
 
 <p>To run Tracer in Device Monitor:</p>
 
@@ -64,7 +53,7 @@
 <ol>
   <li>Connect the Android device using a USB cable and make sure it is enabled for debugging. For
 more information, see <a href="{@docRoot}tools/device.html">Using Hardware Devices</a>.</li>
-  <li>In Eclipse or Device Monitor, activate the <strong>Tracer for OpenGL ES</strong>
+  <li>In the Device Monitor, activate the <strong>Tracer for OpenGL ES</strong>
 perspective.</li>
   <li>On the toolbar, click the trace capture button (<img
 src="{@docRoot}images/gltracer/icon-capture.png">).</li>
@@ -94,10 +83,10 @@
 <p>To review a captured trace:</p>
 
 <ol>
-  <li>In Eclipse or Device Monitor, activate the <strong>Tracer for OpenGL ES</strong>
+  <li>In Device Monitor, activate the <strong>Tracer for OpenGL ES</strong>
 perspective.</li>
   <li>On the toolbar, click the trace load button (<img
 src="{@docRoot}images/gltracer/icon-load-trace.png">).</li>
   <li>After loading a trace, select a frame and review the OpenGL ES calls. Drawing commands are
 highlighted in blue.</li>
-</ol>
\ No newline at end of file
+</ol>
diff --git a/docs/html/tools/help/image-asset-studio.jd b/docs/html/tools/help/image-asset-studio.jd
new file mode 100644
index 0000000..818b744
--- /dev/null
+++ b/docs/html/tools/help/image-asset-studio.jd
@@ -0,0 +1,200 @@
+page.title=Image Asset Studio
+parent.title=Tools
+parent.link=index.html
+page.tags=image asset
+@jd:body
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#access">Accessing Image Asset Studio</a></li>
+  <li><a href="#creating">Creating Icons</a></li>
+  <li><a href="#customizing">Customizing Icons</a></li>
+  <li><a href="#saving">Saving Icons</a></li>
+  <li><a href="#configure">Configuring Build Properties</a></li>
+  <li><a href="#referincode">Referring to an Image Resource in Code</a></li>
+ </ol>
+</div>
+</div>
+
+
+<p>Image Asset Studio helps you to generate custom icons for your Android applications from existing
+ image, clipart, or text-string resources. It generates a set of icons at the appropriate resolution
+ for each <a href ="{@docRoot}guide/practices/screens_support.html#range"> generalized screen
+ density</a> that your app supports.
+  The newly generated icons are placed in density-specific folders (for example, <code>mipmap-mdpi/
+  </code> or <code>drawable-xxxhdpi/</code>), which
+ reside in the application’s <code>res/</code> folder. At runtime, Android uses the appropriate
+ resource based on the screen density of the device your application is running on. </p>
+
+<p>Image Asset Studio generates the following asset types:</p>
+<ul>
+<li>Launcher icons.</li>
+<li>Action bar and tab icons.</li>
+<li>Notification icons.</li>
+</ul>
+
+<p>This guide shows how to generate these assets using Image Asset Studio.</p>
+
+<h2 id="access">Accessing Image Asset Studio</h2>
+<p>Follow these steps to access Image Asset Studio:</p>
+<ol>
+<li>In Android Studio, open an Android app project.</li>
+<li>In the <a href= "{@docRoot}sdk/installing/create-project.html#enable-view">project-view-pane</a>
+ on the left side of the screen, select <strong>Android</strong> from the dropdown menu. The Android
+  project view appears in the pane.
+</li>
+<li>Right-click the <code>res/</code>folder and select <strong>New</strong> &gt; <strong>Image
+Asset</strong>. The Image Asset Studio window appears.</li>
+</ol>
+
+
+<h2 id="creating">Creating Icons</h2>
+<p>You can generate icons from <a href="#launch_image">image</a>, <a href="#launch_clipart">clipart
+</a>, or <a href="#launch_text">text-string</a> resources. This section explains how to work with
+each of these resources.
+</p>
+
+
+<h3 id="launch_image">From an image resource</h3>
+<ol>
+<li>Open the <em>Asset Type</em> dropdown menu and select an icon type.</li>
+<li>From the available <em>Foreground</em> options, select <strong>Image</strong>.</li>
+<li>Specify the asset to use by entering a filename in the <em>Image file</em> field or by
+ navigating to and selecting a file via the file browser. Image Asset Studio supports the following
+ file types, in descending order of desirability: PNG, JPG, and GIF.
+ <p>The icon to be generated appears in the <em>Preview</em> pane, displayed at sizes corresponding
+ to different screen densities.</p>
+
+<p>The rest of the settings on this screen are optional.
+To learn how to customize your icons using these options,
+ see <a href="#customizing">Customizing Icons</a>.</p></li>
+<li><a href="#saving">Save your icons</a> to the project folder.
+</li>
+</ol>
+
+
+<h3 id="launch_clipart">From a clipart resource</h3>
+<ol>
+<li>Open the <em>Asset Type</em> dropdown menu and select an icon type.</li>
+<li>From the available <em>Foreground</em> options, select <strong>Clipart</strong>. The <strong>
+Choose</strong> button appears.</li>
+<li>Click <strong>Choose</strong>. A window containing clipart resources appears.</li>
+<li> Select a clipart resource.
+<p>The icon to be generated appears in the <em>Preview</em> pane, displayed at sizes corresponding
+to different screen densities.</p>
+<p>The rest of the settings on this screen are optional.
+ To learn how to customize your icons using these options,
+ see <a href="#customizing">Customizing Icons</a>.</p></li>
+<li><a href="#saving">Save your icons</a> to the project folder.
+</li>
+</ol>
+
+
+
+<h3 id="launch_text"> From a text-string resource</h3>
+<ol>
+<li>Open the <em>Asset Type</em> dropdown menu and select an icon type.</li>
+<li>From the available <em>Foreground </em> options, select <strong>Text</strong>.</li>
+<li>Enter into the <em>Text</em> field the text you want to turn into an icon.
+<p>The icon to be generated appears in the <em> Preview</em> pane, displayed at sizes corresponding
+to different screen densities.</p></li>
+<li>To change the font, select a font from the <em>Font</em> dropdown menu.
+<p>The rest of the settings on this screen are optional.
+To learn how to customize your icons using these options,
+see <a href="#customizing">Customizing Icons</a>.</p></li>
+<li><a href="#saving">Save your icons</a> to the project folder.
+</li>
+</ol>
+
+
+<h2 id="customizing">Customizing Icons</h2>
+<p>Image Asset Studio lets you customize various visual effects for your icons. The following options
+are of particular note.</p>
+
+<ul>
+<li><em>Trim surrounding blank space</em>: This option allows you to adjust the margin between the
+icon graphic and border.
+<figure id="">
+  <img src="{@docRoot}images/tools/trim.png"
+    width="461">
+    <figcaption><strong>Figure 1</strong>: An icon before and after trimming.</figcaption>
+</figure>
+<li><em>Additional Padding</em>: This option allows you to adjust the icon's padding on all four
+sides. Use the slider to select a value between 0 and 100 pixels. For example, for a 100px X 100px
+image with padding of 25px, the resulting image is 150px X 150px.</li>
+ <li><em>Theme</em>: This option allows you to set a theme for your action bar and tab icons.
+ You can tint icons using the HOLO_DARK or HOLO_LIGHT theme or create
+  a custom theme using the color palette.</li>
+ <li><em>Resource name</em>: This option allows you to specify a resource name other than the
+ default one. If an asset with the specified resource name already exists, Image Asset Studio warns
+  you that it is going to overwrite the existing asset with this one.</li></ul>
+
+
+<h2 id="saving">Saving Icons</h2>
+ <p>This section explains how to save your icons to the <code>res/</code> folder. Do so by following
+  these steps:</p>
+ <ol>
+ <li>From the initial screen that appeared when you opened Image Asset Studio, click
+ <strong>Next</strong>. Image Asset Studio opens a new window.</li>
+ <li>Confirm the target module and resource directory settings for the icon.
+ If you don't want to use the default target module or resource directory, you can
+ <a href="#configure">enter your own values</a> for them.
+ </li>
+ <li>Click <strong>Finish</strong>. The Image Asset Studio generates new icon files, in PNG format,
+ according to the options you have chosen.
+ </li>
+ </ol>
+
+ <p class="note"><strong>Note:</strong> Launcher icon files reside in a different location from that
+  of other icons. They are located in the <code>mipmap/</code> folder. All other icon files reside
+  in the <code>drawable/</code> folder of your project.</p>
+
+
+<h2 id="configure">Configuring Build Properties</h2>
+<p>To change the module and resource directory, follow these steps:</p>
+<ol>
+<li>In the <em>Target Module</em> field, select a module to add the resource to.
+For more information,
+see <a href="{@docRoot}sdk/installing/create-project.html#CreatingAModule">
+Creating an Android Module</a>.
+ </li>
+<li>In the <em>Res Directory</em> field, select an option for where to place the image
+ asset:
+ <ul>
+  <li><code>src/main/res</code>: This source set applies to all build variants, including debug
+   and release.</li>
+  <li><code>src/debug/res</code>, <code> src/release/res</code>: These source sets override the main
+   source set and apply to one version of a build. The debug source set is for debugging only.
+   </li>
+   <li>User-defined: To define your own source set, select <strong>File</strong> &gt; <strong>Project
+   Structure</strong> &gt; <strong>app</strong>  &gt; <strong>Build Types</strong>.
+   For example, you could define a beta source set and create a version of an icon that includes the
+    text "BETA” in the bottom right corner. For more information, see
+    <a href="{@docRoot}tools/building/configuring-gradle.html#workBuildVariants">
+    Work with build variants</a>.</li>
+  </ul>
+</ol>
+
+
+
+
+<h2 id="referincode">Referring to an Image Resource in Code</h2>
+
+<p>After you have an image resource in the <code>res/</code>directory of your project, you can
+ reference it from your Java code or your XML layout using its
+ <a href="{@docRoot}guide/topics/resources/accessing-resources.html#ResourcesFromCode">
+ resource ID</a>. </p>
+
+<p> For example, the following XML references the <code>ic_launcher icon</code> in the
+<code>mipmap/</code> folder.</p>
+<pre>
+&lt;application android:name="ApplicationTitle"
+    android:label="&#64;string/app_label"
+    android:icon="&#64;mipmap/ic_launcher" &gt;</pre>
+
+<p>The following Java code sets an
+<a href="{@docRoot}reference/android/widget/ImageView.html">ImageView</a> to use
+ the <code>drawable/myimage.png</code> resource:</p>
+<pre>ImageView imageView = (ImageView) findViewById(R.id.myimageview);
+imageView.setImageResource(R.drawable.myimage);</pre>
diff --git a/docs/html/tools/help/index.jd b/docs/html/tools/help/index.jd
old mode 100644
new mode 100755
index 53247d1..411f908
--- a/docs/html/tools/help/index.jd
+++ b/docs/html/tools/help/index.jd
@@ -43,6 +43,7 @@
   <dt><a href="{@docRoot}tools/help/android.html">android</a></dt>
     <dd>Lets you manage AVDs, projects, and the installed components of the SDK.</dd>
 
+
   <dt><a href="{@docRoot}tools/help/hierarchy-viewer.html">Hierarchy Viewer (hierarchyviewer)</a></dt>
     <dd>Provides a visual representation of the layout's View hierarchy with performance information
         for each node in the layout, and a magnified view of the display to closely examine the
@@ -58,6 +59,7 @@
   <dt><a href="{@docRoot}tools/help/sqlite3.html">sqlite3</a></dt>
     <dd>Lets you access the SQLite data files created and used by Android applications.</dd>
 
+
 </dl>
 
 
@@ -65,6 +67,10 @@
 <h3 id="tools-debugging">Debugging Tools</h3>
 <dl>
 
+  <dt><a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a></dt>
+    <dd>Android Monitor is integrated into Android Studio and provides logcat, memory, CPU, GPU, and
+      network monitors for app debugging and analysis.</dd>
+
   <dt><a href="{@docRoot}tools/help/adb.html">adb</a></dt>
     <dd>Android Debug Bridge (adb) is a versatile command line tool that lets you communicate with
         an emulator instance or connected Android-powered device. It also provides access to the
@@ -73,9 +79,8 @@
   <dt><a href="{@docRoot}tools/help/shell.html">ADB Shell Commands</a></dt>
     <dd>Learn the commands available for advanced command-line operations.</dd>
 
-  <dt><a href="{@docRoot}tools/debugging/ddms.html">Dalvik Debug Monitor
-Server (ddms)</a></dt>
-    <dd>Lets you debug Android applications.</dd>
+  <dt><a href="{@docRoot}tools/debugging/ddms.html">Dalvik Debug Monitor Server (ddms)</a></dt>
+    <dd>Lets you debug Android apps.</dd>
 
   <dt><a href="{@docRoot}tools/help/monitor.html">Device Monitor</a></dt>
     <dd>Android Device Monitor is a stand-alone tool that provides a graphical user interface for
@@ -100,6 +105,11 @@
   <dt><a href="{@docRoot}tools/help/traceview.html">traceview</a></dt>
     <dd>Provides a graphical viewer for execution logs saved by your application.</dd>
 
+  <dt><a href="{@docRoot}tools/help/gltracer.html">Tracer for OpenGL ES</a></dt>
+    <dd>Allows you to capture <a href="{@docRoot}guide/topics/graphics/opengl.html">OpenGL ES</a>
+      commands and frame-by-frame images to help you understand how your app is executing
+      graphics commands.</dd>
+
 </dl>
 
 
@@ -134,10 +144,6 @@
     <dd>A command line utility that lets you encode PNG images to the ETC1 compression standard and
     decode ETC1 compressed images back to PNG.</dd>
 
-  <dt><a href="{@docRoot}tools/help/gltracer.html">Tracer for OpenGL ES</a></dt>
-    <dd>Allows you to capture OpenGL ES commands and frame by frame images to help you understand
-    how your graphics commands are being executed.</dd>
-
 </dl>
 
 
@@ -153,8 +159,8 @@
 
 <p>The other platform tools, such as <a href="{@docRoot}guide/components/aidl.html">aidl</a>,
 <code>aapt</code>, <code>dexdump</code>, and <code>dx</code>, are typically called by the Android
-build tools or Android Development Tools (ADT), so you rarely need to invoke these tools directly.
-As a general rule, you should rely on the build tools or the ADT plugin to call them as needed.</p>
+build tools, so you rarely need to invoke these tools directly.
+As a general rule, you should rely on the build tools to call them as needed.</p>
 
 <p class="note"><strong>Note:</strong> The Android SDK provides additional shell tools that can
 be accessed through <code>adb</code>, such as <a href="{@docRoot}tools/help/bmgr.html">bmgr</a> and
diff --git a/docs/html/tools/help/layoutopt.jd b/docs/html/tools/help/layoutopt.jd
old mode 100644
new mode 100755
index 1a18326..1bc6c64
--- a/docs/html/tools/help/layoutopt.jd
+++ b/docs/html/tools/help/layoutopt.jd
@@ -4,13 +4,18 @@
 @jd:body
 
 
-<p class="note"><strong>Note: </strong>The Android <code>layoutopt</code> tool has been replaced by the {@code lint} tool beginning in ADT and SDK Tools revision 16. The {@code lint} tool reports UI layout performance issues in a similar way as <code>layoutopt</code>, and detects additional problems.</p>
-<p>For more information about using {@code lint}, see <a href="{@docRoot}tools/debugging/improving-w-lint.html">Improving Your Code with lint</a> and the <a  href="{@docRoot}tools/help/lint.html">lint reference documentation</a>.</p>
+<p class="note"><strong>Note: </strong>The Android <code>layoutopt</code> tool has been replaced 
+by the {@code lint} tool beginning in SDK Tools revision 16. The {@code lint} tool reports UI 
+layout performance issues in a similar way as <code>layoutopt</code>, and detects additional problems.</p>
+<p>For more information about using {@code lint}, see 
+<a href="{@docRoot}tools/debugging/improving-w-lint.html">Improving Your Code with lint</a> and the 
+<a href="{@docRoot}tools/help/lint.html">lint reference documentation</a>.</p>
 
 <p><code>layoutopt</code> is a command-line tool that helps you optimize the
 layouts and layout hierarchies of your applications.<p>
 
-<p>This document is a reference to the available command line options. For more information and sample
+<p>This document is a reference to the available command line options. For more information and 
+sample
 output of the tool, see <a
 href="{@docRoot}tools/debugging/debugging-ui.html#layoutopt">Optimizing layouts with
 layoutopt</a>.</p>
diff --git a/docs/html/tools/help/logcat.jd b/docs/html/tools/help/logcat.jd
index b30971e..1d75848 100644
--- a/docs/html/tools/help/logcat.jd
+++ b/docs/html/tools/help/logcat.jd
@@ -3,15 +3,25 @@
 parent.link=index.html
 @jd:body
 
+  <div id="qv-wrapper">
+    <div id="qv">
+      <h2>See also</h2>
+
+      <ol>
+          <li><a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a></li>
+      </ol>
+    </div>
+  </div>
+
   <p>The Android logging system provides a mechanism for collecting and viewing system debug
   output. Logs from various applications and portions of the system are collected in a series of
-  circular buffers, which then can be viewed and filtered by the <code>logcat</code> command. You can use 
+  circular buffers, which then can be viewed and filtered by the <code>logcat</code> command. You can use
   <code>logcat</code> from an ADB shell to view the log messages.</p>
 
   <p>For complete information about logcat options and filtering specifications, see
   <a href="{@docRoot}tools/debugging/debugging-log.html">Reading and Writing Logs</a>.</p>
 
-  <p>For more information on accessing <code>logcat</code> from DDMS, instead of the command line, see 
+  <p>For more information on accessing <code>logcat</code> from DDMS, instead of the command line, see
   <a href="{@docRoot}tools/debugging/ddms.html">Using DDMS</a>. </p>
 
   <h3>Syntax</h3>
@@ -34,7 +44,7 @@
 
   <h3>Options</h3>
   <p>The following table describes the command line options of <code>logcat</code>.</p>
-  
+
   <table>
     <tr>
       <th>Option</th>
@@ -46,7 +56,7 @@
       <td><code>-b&nbsp;&lt;buffer&gt;</code></td>
 
       <td>Loads an alternate log buffer for viewing, such as <code>events</code> or
-      <code>radio</code>. The <code>main</code> buffer is used by default. See <a href= 
+      <code>radio</code>. The <code>main</code> buffer is used by default. See <a href=
       "{@docRoot}tools/debugging/debugging-log.html#alternativeBuffers">Viewing Alternative Log Buffers</a>.</td>
     </tr>
 
diff --git a/docs/html/tools/help/monitor.jd b/docs/html/tools/help/monitor.jd
old mode 100644
new mode 100755
index 5f7b5ce..3541cc3
--- a/docs/html/tools/help/monitor.jd
+++ b/docs/html/tools/help/monitor.jd
@@ -8,6 +8,7 @@
       <ol>
         <li><a href="{@docRoot}tools/debugging/debugging-memory.html"
           >Investigating Your RAM Usage</a></li>
+          <li><a href="{@docRoot}tools/help/android-monitor.html">Android Monitor</a></li>
       </ol>
     </div>
   </div>
@@ -47,6 +48,4 @@
 <p>Start an Android emulator or connect an Android device via USB cable, and connect Device
 Monitor to the device by selecting it in the <strong>Devices</strong> window.</p>
 
-<p class="note"><strong>Note:</strong> Only one debugger can be connected to your device at a time.
-If you're using ADT, you may need to close the debugging tool before launching the Device Monitor
-in order for the device to be fully debuggable.</p>
+<p class="note"><strong>Note:</strong> Only one debugger can be connected to your device at a time.</p>
diff --git a/docs/html/tools/help/proguard.jd b/docs/html/tools/help/proguard.jd
old mode 100644
new mode 100755
index b5d84ed..e26aca0
--- a/docs/html/tools/help/proguard.jd
+++ b/docs/html/tools/help/proguard.jd
@@ -1,6 +1,7 @@
 page.title=ProGuard
 parent.title=Tools
 parent.link=index.html
+page.metaDescription=Use ProGuard to shrink, optimize, and obfuscate your code prior to release.
 @jd:body
 
  <div id="qv-wrapper">
@@ -117,76 +118,6 @@
   </pre>
 
 
-
-  <h2 id="enabling">Enabling ProGuard (Ant Builds)</h2>
-
-  <p>When you create an Android project, a <code>proguard.cfg</code> file is automatically
-  generated in the root directory of the project. This file defines how ProGuard optimizes and
-  obfuscates your code, so it is very important that you understand how to customize it for your
-  needs. The default configuration file only covers general cases, so you most likely have to edit
-  it for your own needs. See the following section about <a href="#configuring">Configuring
-  ProGuard</a> for information on customizing the ProGuard configuration file.</p>
-
-  <p>To enable ProGuard so that it runs as part of an Ant or Eclipse build, set the
-  <code>proguard.config</code> property in the <code>&lt;project_root&gt;/project.properties</code>
-  file. The path can be an absolute path or a path relative to the project's root.</p>
-
-  <p>If you left the <code>proguard.cfg</code> file in its default location (the project's root
-  directory), you can specify its location like this:</p>
-
-<pre class="no-pretty-print">
-proguard.config=proguard.cfg
-</pre>
-
-<p>
-You can also move the the file to anywhere you want, and specify the absolute path to it:
-</p>
-
-<pre class="no-pretty-print">
-proguard.config=/path/to/proguard.cfg
-</pre>
-
-  <p>When you build your application in release mode, either by running <code>ant release</code> or
-  by using the <em>Export Wizard</em> in Eclipse, the build system automatically checks to see if
-  the <code>proguard.config</code> property is set. If it is, ProGuard automatically processes
-  the application's bytecode before packaging everything into an <code>.apk</code> file. Building in debug mode
-  does not invoke ProGuard, because it makes debugging more cumbersome.</p>
-
-  <p>ProGuard outputs the following files after it runs:</p>
-
-  <dl>
-    <dt><code>dump.txt</code></dt>
-    <dd>Describes the internal structure of all the class files in the <code>.apk</code> file</dd>
-
-    <dt><code>mapping.txt</code></dt>
-    <dd>Lists the mapping between the original and obfuscated class, method, and field names. 
-    This file is important when you receive a bug report from a release build, because it 
-    translates the obfuscated stack trace back to the original class, method, and member names.
-    See <a href="#decoding">Decoding Obfuscated Stack Traces</a> for more information.</dd>
-
-    <dt><code>seeds.txt</code></dt>
-    <dd>Lists the classes and members that are not obfuscated</dd>
-
-    <dt><code>usage.txt</code></dt>
-    <dd>Lists the code that was stripped from the <code>.apk</code></dd>
-  </ul>
-
-  <p>These files are located in the following directories:</p>
-
-  <ul>
-    <li><code>&lt;project_root&gt;/bin/proguard</code> if you are using Ant.</li>
-
-    <li><code>&lt;project_root&gt;/proguard</code> if you are using Eclipse.</li>
-  </ul>
-
-
-  <p class="caution"><strong>Caution:</strong> Every time you run a build in release mode, these files are
-  overwritten with the latest files generated by ProGuard. Save a copy of them each time you release your
-  application in order to de-obfuscate bug reports from your release builds.
-  For more information on why saving these files is important, see
-  <a href="#considerations">Debugging considerations for published applications</a>.
-  </p>
-
   <h2 id="configuring">Configuring ProGuard</h2>
 
   <p>For some situations, the default configurations in the ProGuard configuration file will
@@ -246,9 +177,7 @@
   By retaining a copy of the <code>mapping.txt</code> file for each release build,
   you ensure that you can debug a problem if a user encounters a bug and submits an obfuscated stack trace.
   A project's <code>mapping.txt</code> file is overwritten every time you do a release build, so you must be
-  careful about saving the versions that you need. For Eclipse, this file is stored in
-  <code>&lt;project_root&gt;/bin/proguard/</code>. For Android Studio, this file is stored in
-  the app <code>build/outs/</code> folder. </p>
+  careful about saving the versions that you need. The file is stored in the app <code>build/outs/</code> folder. </p>
 
   <p>For example, say you publish an application and continue developing new features of
   the application for a new version. You then do a release build using ProGuard soon after. The
diff --git a/docs/html/tools/help/project-mgmt.jd b/docs/html/tools/help/project-mgmt.jd
new file mode 100644
index 0000000..693f0de
--- /dev/null
+++ b/docs/html/tools/help/project-mgmt.jd
@@ -0,0 +1,174 @@
+page.title=Project Structure Management
+parent.title=Tools
+parent.link=index.html
+page.tags="android studio,project structure,target sdk,minimum sdk"
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#dev-svc">Developer Services</a></li>
+  <li><a href="#modules">Modules</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>
+  You can use the <strong>Android Studio File &gt; Project Structure</strong> dialog box to
+  change configuration settings for your Android Studio project. This dialog
+  box is useful if you need to change some of the settings you chose when you
+  created the project.
+</p>
+
+<p>
+  The Project Structure dialog box contains the following sections:
+</p>
+
+<ul>
+  <li>
+    <strong>SDK Location:</strong> Sets the location of the JDK, Android SDK,
+    and Android NDK that the project uses.
+  </li>
+
+  <li>
+    <strong>Project:</strong> Sets version information for <a
+    href="{@docRoot}tools/building/plugin-for-gradle.html">Gradle</a> and for
+    the <a href="{@docRoot}tools/building/plugin-for-gradle.html">Android plugin
+    for Gradle</a>.
+  </li>
+
+  <li>
+    <strong>Developer Services:</strong> Contains settings for Android Studio
+    add-in components from Google or third parties.
+  </li>
+
+  <li>
+    <strong>Modules:</strong> Used to set or change various module-specific
+    build settings, including the target and minimum SDK, the app signature,
+    and library dependencies. Most importantly, this is where you change
+    the settings for your project's <em>app</em> module.
+  </li>
+</ul>
+
+<p>
+  The following two sections provide information on the <a href=
+  "#dev-svc">Developer Services</a> and <a href="#modules">Modules</a>
+  sections.
+</p>
+
+<h2 id="dev-svc">
+  Developer Services
+</h2>
+
+<p>
+  The <em>Developer Services</em> section of the <em>Project Structure</em>
+  dialog box contains configuration pages
+  for several services that you can be use with your app. This section
+  contains the following pages:
+</p>
+
+<ul>
+  <li>
+    <strong>AdMob:</strong> Allows you to turn on Google's <a href=
+    "https://developers.google.com/admob/" class="external-link">AdMob</a>
+    component, which helps you understand your users and show them tailored
+    advertisements.
+  </li>
+
+  <li>
+    <strong>Analytics:</strong> Allows you to turn on <a href=
+    "https://developers.google.com/analytics/" class="external-link">Google
+    Analytics</a>, which helps you measure user interactions with your app
+    across various devices and environments.
+  </li>
+
+  <li>
+    <strong>Authentication:</strong> Allows users to use <a href=
+    "https://developers.google.com/identity/sign-in/android/" class=
+    "external-link">Google Sign-In</a> to sign in to your app with their Google
+    accounts.
+  </li>
+
+  <li>
+    <strong>Cloud:</strong> Allows you to turn on <a href=
+    "https://www.firebase.com/" class="external-link">Firebase</a> cloud-based
+    services for your app.
+  </li>
+
+  <li>
+    <strong>Notifications:</strong> Allows you to use <a href=
+    "https://developers.google.com/cloud-messaging/" class=
+    "external-link">Google Cloud Messaging</a> to communicate between your app
+    and your server.
+  </li>
+</ul>
+
+<p>
+  Turning on any of these services may cause Android Studio to add necessary
+  dependencies and permissions to your app. Each configuration page lists these
+  and other actions that Android Studio takes if you enable the associated service.
+</p>
+
+<h2 id="modules">
+  Modules
+</h2>
+
+<p>
+  The <em>Modules</em> settings section lets you change configuration
+  options for each of your project's modules. This section contains one page
+  for each module in your app. In many cases, the project has just a single
+  module, named <em>app</em>. However, if your project targets multiple form
+  factors, it might have several modules. For example, if your project contains
+  both a tablet app and a wearable app, it might have two modules, named
+  <em>mobile</em> and <em>wear</em>. For more information about project
+  modules, see <a href=
+  "{@docRoot}tools/projects/index.html#ApplicationModules">Android Application
+  Modules</a>.
+</p>
+
+<p>
+  Each module's settings page is divided into the following panes:
+</p>
+
+<ul>
+  <li>
+    <strong>Properties:</strong> Specifies the versions of the SDK and build
+    tools to use to compile the module.
+  </li>
+
+  <li>
+    <strong>Signing:</strong> Specifies the certificate to use to
+    <a href="{@docRoot}tools/publishing/app-signing.html#sign-auto">sign your
+    APK</a>.
+  </li>
+
+  <li>
+    <strong>Flavors:</strong> Lets you create multiple build <em>flavors</em>, where
+    each flavor specifies a set of configuration settings, such as the
+    module's minimum and target SDK version, and the
+    <a href="{@docRoot}tools/publishing/versioning.html">version code and
+    version name</a>. For example, you might define one flavor that has a
+    minimum SDK of 15 and a target SDK of 21, and another flavor that has a
+    minimum SDK of 19 and a target SDK of 23.
+  </li>
+
+  <li>
+    <strong>Build Types:</strong> Lets you create and modify build
+    configurations, as described in <a href=
+    "{@docRoot}tools/building/configuring-gradle.html">Configuring Gradle
+    Builds</a>. By default, every module has <em>debug</em> and
+    <em>release</em> build types, but you can define more as needed.
+  </li>
+
+  <li>
+    <strong>Dependencies:</strong> Lists the library, file, and module
+    dependencies for this module. You can add, modify, and delete dependencies
+    from this pane. For more information about module dependencies, see
+    <a href="{@docRoot}tools/building/configuring-gradle.html#declareDeps">Declare
+    dependencies</a> in <a href=
+    "{@docRoot}tools/building/configuring-gradle.html">Configuring Gradle
+    Builds</a>.
+  </li>
+</ul>
diff --git a/docs/html/tools/help/sdk-manager.jd b/docs/html/tools/help/sdk-manager.jd
old mode 100644
new mode 100755
index cc95edf..aaa1930
--- a/docs/html/tools/help/sdk-manager.jd
+++ b/docs/html/tools/help/sdk-manager.jd
@@ -34,7 +34,7 @@
 </ul>
 
 <p class="note"><strong>Tip:</strong> The standalone SDK Manager is still available from the
-command line, but we recommend it only for use with Eclipse ADT and standalone SDK installations.</p>
+command line, but we recommend it only for use with standalone SDK installations.</p>
 
 <p>By default, the SDK Manager installs the latest packages and tools. Click the checkbox next to
 each additional SDK platform and tool that you want to install. Clear the
@@ -95,19 +95,27 @@
 <a href="{@docRoot}tools/help/avd-manager.html">AVD Manager</a>. </dd>
 
   <dt>Android Support Library</dt>
-  <dd>Recommended. Includes a static library that allows you to use some of the latest
-Android APIs (such as <a href="{@docRoot}guide/components/fragments.html">fragments</a>,
-plus others not included in the framework at all) on devices running
-a platform version as old as Android 1.6. All of the activity templates available when creating
-a new project with the <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a>
-require this. For more information, read <a
-href="{@docRoot}tools/support-library/index.html">Support Library</a>.</dd>
+  <dd>Recommended. Includes a static library that provides an extended set of
+  APIs that are compatible with most versions of Android. It's required for
+  products such as <a href="{@docRoot}wear/index.html">Android Wear</a>, <a
+  href="{@docRoot}tv/index.html">Android TV</a>, and <a
+  href="https://developers.google.com/cast/">Google Cast</a>. For more
+  information, read <a href="{@docRoot}tools/support-library/index.html">Support
+  Library</a>.
+  </dd>
 
   <dt>Android Support Repository</dt>
   <dd>Recommended. Includes local Maven repository for Support libraries.</dd>
 
   <dt>Google Play services</dt>
-  <dd>Recommended. Includes Google Play services client library and sample code.</dd>
+  <dd>Recommended. Includes the Google Play services client library, which
+  provides a variety of features and services for your 
+  apps, such as <a
+  href="https://developers.google.com/identity/sign-in/android/">Google
+  sign-in</a>,<a
+  href="https://developers.google.com/maps/documentation/android-api/">Google
+  Maps</a>, <a href="https://developers.google.com/games/services/">Games
+  achievements and leaderboards</a>, and much more.</dd>
 
   <dt>Google Repository</dt>
   <dd>Recommended. Includes local Maven repository for Google libraries.</dd>
diff --git a/docs/html/tools/help/shell.jd b/docs/html/tools/help/shell.jd
index 41bef22..fabcf4b 100644
--- a/docs/html/tools/help/shell.jd
+++ b/docs/html/tools/help/shell.jd
@@ -570,6 +570,7 @@
     <li>{@code -s}: Install package on the shared mass storage (such as sdcard).
     <li>{@code -f}: Install package on the internal system memory.
     <li>{@code -d}: Allow version code downgrade.
+    <li>{@code -g}: Grant all permissions listed in the app manifest.
   </ul>
 </td>
 </tr>
@@ -622,21 +623,23 @@
 
 <tr>
 <td><code>
-grant &lt;PACKAGE_PERMISSION>
+grant &lt;PACKAGE_NAME&gt; &lt;PERMISSION&gt;
 </code></td>
-<td>Grant permissions
-  to applications.  Only optional permissions the application has
-  declared can be granted.
+<td>Grant a permission to an app. On devices running Android 6.0 (API level 23)
+and higher, may be any permission declared in the app manifest. On devices
+running Android 5.1 (API level 22) and lower, must be an optional permission defined by the
+app.
 </td>
 </tr>
 
 <tr>
 <td><code>
-revoke &lt;PACKAGE_PERMISSION>
+revoke &lt;PACKAGE_NAME&gt; &lt;PERMISSION&gt;
 </code></td>
-<td>Revoke permissions
-  to applications.  Only optional permissions the application has
-  declared can be revoked.
+<td>Revoke a permission from an app. On devices running Android 6.0 (API level
+23) and higher, may be any permission declared in the app manifest. On devices
+running Android 5.1 (API level 22) and lower, must be an optional permission defined by the
+app.
 </td>
 </tr>
 
@@ -865,7 +868,8 @@
 <td><code>dumpsys</code></td>
 <td>Dumps system data to the screen.</td>
 <td rowspan=4">The <a href="{@docRoot}tools/debugging/ddms.html">Dalvik Debug Monitor Server</a>
-(DDMS) tool offers integrated debug environment that you may find easier to use.</td>
+(DDMS) tool offers an integrated debug environment that you may find easier to use.
+</td>
 </tr>
 
 <tr>
@@ -895,4 +899,4 @@
 <td>&nbsp;</td>
 </tr>
 
-</table>
\ No newline at end of file
+</table>
diff --git a/docs/html/tools/help/systrace.jd b/docs/html/tools/help/systrace.jd
old mode 100644
new mode 100755
index 2a8e86f..236d282
--- a/docs/html/tools/help/systrace.jd
+++ b/docs/html/tools/help/systrace.jd
@@ -30,36 +30,15 @@
 
 <h2 id="gui">User Interface</h2>
 
-<p>The Systrace tool can be run from the
-<a href="{@docRoot}tools/help/adt.html">Android Developer Tools</a> (ADT) in Eclipse,
-<a href="{@docRoot}sdk/installing/studio.html">Android Studio</a>,
+<p>The Systrace tool can be run from
+<a href="{@docRoot}sdk/installing/studio.html">Android Studio</a>
 or the Android <a href="{@docRoot}tools/help/monitor.html">Device Monitor</a>.
 
 <p>To run the Systrace capture user interface:</p>
 
 <div class="toggle-content closed">
 <p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)">
-  <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
-  />Using Eclipse</a></p>
-
-  <div class="toggle-content-toggleme">
-  <ol>
-    <li>In Eclipse, open an Android application project.</li>
-    <li>Switch to the DDMS perspective, by selecting <strong>Window &gt; Perspectives &gt;
-      DDMS</strong>.</li>
-    <li>In the <strong>Devices</strong> tab, select the device on which to run a trace. If no
-      devices are listed, make sure your device is connected via USB cable and that debugging is
-      enabled on the device.</li>
-    <li>Click the Systrace icon <img src="{@docRoot}images/systrace/systrace-button.png"
-      style="margin:0"/> at the top of the <strong>Devices</strong> panel to configure tracing.</li>
-    <li>Set the tracing options and click <strong>OK</strong> to start the trace.</li>
-  </ol>
-  </div>
-</div>
-
-<div class="toggle-content closed">
-<p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)">
-  <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+  <img src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
   />Using Android Studio</a></p>
 
   <div class="toggle-content-toggleme">
@@ -80,7 +59,7 @@
 
 <div class="toggle-content closed">
 <p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)">
-  <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+  <img src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
   />Using Device Monitor</a></p>
 
   <div class="toggle-content-toggleme">
diff --git a/docs/html/tools/help/theme-editor.jd b/docs/html/tools/help/theme-editor.jd
new file mode 100644
index 0000000..19f765f
--- /dev/null
+++ b/docs/html/tools/help/theme-editor.jd
@@ -0,0 +1,166 @@
+page.title=Theme Editor
+parent.title=Tools
+parent.link=index.html
+page.tags=theme
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#basics">Theme Editor Basics</a></li>
+  <li><a href="#themes">Themes and Colors</a></li>
+  <li><a href="#device">Device-Specific Configurations</a></li>
+</ol>
+
+
+  <h2>Dependencies and Prerequisites</h2>
+  <ul>
+    <li>Android Studio 1.4.1 or higher</li>
+  </ul>
+
+</div>
+</div>
+
+<p>
+The Theme Editor is a visual assistant that helps you:
+</p>
+   <li>Create and modify
+<a href="{@docRoot}guide/topics/ui/themes.html">
+themes</a> for your app.</li>
+   <li>Adjust themes for different resource classifiers.</li>
+   <li>Visualize the effect of color changes on common UI elements.</li>
+
+<p>
+This page introduces the fundamental tasks that you can perform with the Theme
+Editor, and explains how to do so.
+</p>
+
+
+<h2 id="basics">Theme Editor Basics</h2>
+
+<p>
+This section describes how to access the Theme Editor, and how it is laid out.
+</p>
+
+<h3>Accessing the Theme Editor</h3>
+
+<p>There are two ways to open the Theme Editor:</p>
+
+<li>From an open {@code styles.xml} file, click <strong>Open editor</strong> near the top-right
+of the file window.</li>
+
+<li>From the <strong>Tools</strong> menu, select <strong>Android</strong> &gt;
+<strong>Theme Editor</strong>.</p>
+
+<h3 id="layout">Navigating the Theme Editor</h3>
+<p>
+The Theme Editor's main screen is divided into two sections. The left side of the editor
+shows what specific UI elements, such as the app bar or a raised button, look like
+when you apply the current theme to them. The right side of the editor displays
+the settings for the color resources, such as <strong>Theme parent</strong> and
+<strong>colorPrimary</strong>, that comprise the current theme. You can modify design
+themes by changing these resource settings.
+</p>
+
+<h2 id="themes">Themes and Colors</h2>
+
+<p>
+The Theme Editor allows you to create new themes, modify existing ones, and manage the
+colors that make up the themes.
+</p>
+
+<h3 id="create">Creating New Themes</h3>
+
+<p>
+To create a theme, follow these steps:
+</p>
+   <ol>
+   <li>Open the <strong>Theme</strong> dropdown menu near the top of the right
+side of the Theme Editor.</li>
+   <li>Select <strong>Create New Theme</strong>. The <em>New Theme</em> dialog appears.</li>
+   <li>Enter a name for the new theme.</li>
+   <li>In the <em>Parent theme name:</em> field, select the parent from which the theme
+   inherits initial resources.</li>
+   </ol>
+
+<h3 id="rename">Renaming Themes</h3>
+
+<p>
+To rename a theme, perform the following steps:
+</p>
+   <ol>
+   <li>Open the <strong>Theme</strong> dropdown menu near the top of the right
+side of the Theme Editor.</li>
+   <li>Select <strong>Rename AppTheme</strong>. The <em>Rename</em> dialog appears.</li>
+   <li>Enter a new name for the theme.</li>
+   <li>(optional) To see how the changes will look, click <strong>Preview</strong>.</li>
+   <li>To apply the changes, click <strong>Refactor</strong>.</li>
+   </ol>
+
+<h3 id="changing">Changing Color Resources</h3>
+
+<p>To change an existing color resource, such as <strong>colorPrimary</strong>,
+follow these steps:
+</p>
+<ol>
+<li>Click the colored square next to the name of the resource you want to change.
+The <em>Resources</em> dialog appears, containing a color picker, material-color
+palette, and other settings and information.</li>
+<li>Change the color, opacity, and name of a theme's resources as desired.</p>
+<li>To ensure that your theme uses a color from the material
+palette, click <strong>CLOSEST MATERIAL COLOR</strong>, located next to <em>Custom
+color</em>. Android Studio changes the color you picked to the material color most like it,
+and replaces <em>Custom color</em> with the name of the color from the material palette.</li>
+</ol>
+
+<p>You can also directly select colors from the material palette, which the editor displays
+as two rows of colored squares beneath the color picker.</p>
+
+<h3 id="viewing">Viewing State Lists and Colors</h3>
+
+<p>
+The Theme Editor allows you to preview
+<a href="{@docRoot}guide/topics/resources/color-list-resource.html">
+colors associated with different states.</a> To do so, open the <em>Resource</em> dialog, and click
+the <em>State List</em> tab that appears at the top of the dialog.</p>
+
+<p>
+To more fully control the states themselves, you can directly view and edit their
+properties in the XML file,
+such as {@code colors.xml}, that defines them. For more information, see the
+documentation for the {@link android.content.res.ColorStateList} class.
+</p>
+
+<h2 id="device">Device-Specific Configurations</h2>
+
+<p>
+You can choose
+<a href="{@docRoot}guide/topics/resources/providing-resources.html#Compatibility">
+device-specific</a> configurations for your app to support. Perform
+the following steps to do so:
+</p>
+
+<ol>
+<li>Click the triangle next to <em>Location</em>, near the bottom of the <a href="#changing">
+<em>Resources</em></a> dialog. The <em>Location</em> section expands, revealing
+the name of the XML file containing the
+resource, as well as a list of configuration-specific directories in which to
+place that file.</li>
+<li>If necessary, change the XML file name.</li>
+<li>Check the boxes next to the directories corresponding to the
+device-specific configurations you wish to support. Any configuration
+for which you do not specify a directory defaults to using the
+{@code values} directory.</li>
+</ol>
+
+<p>For more information about the relationship
+between directory names and configurations, see
+<a href="{@docRoot}guide/practices/screens_support.html#ConfigurationExamples">
+Supporting Multiple Screens</a>. For more information about
+supported directory names, see
+<a href="{@docRoot}guide/topics/resources/providing-resources.html#ResourceTypes">
+Providing Resources</a>.
+</p>
+
+
diff --git a/docs/html/tools/help/translations-editor.jd b/docs/html/tools/help/translations-editor.jd
new file mode 100644
index 0000000..ab557e1
--- /dev/null
+++ b/docs/html/tools/help/translations-editor.jd
@@ -0,0 +1,133 @@
+page.title=Translations Editor
+parent.title=Tools
+parent.link=index.html
+page.tags=translations
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#about">About the Translations Editor</a></li>
+  <li><a href="#running">Running the Translations Editor</a></li>
+  <li><a href="#managing">Managing String Resources</a></li>
+  <li><a href="#ordering">Ordering Translation Services</a></li>
+</ol>
+
+ <h2>See also</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/supporting-devices/languages.html">Supporting Different
+    Languages</a></li>
+    <li><a href="{@docRoot}guide/topics/resources/localization.html">Localizing with Resources</a>
+    </li>
+    <li><a href="{@docRoot}guide/topics/resources/providing-resources.html">Providing Resources</a>
+    </li>
+  </ol>
+
+</div>
+</div>
+
+<p>
+If your application supports multiple languages, you need to properly manage your
+translated string resources. Android Studio provides the Translations Editor to make viewing and
+managing your translated resources easier.
+</p>
+
+<h2 id="about">About the Translations Editor</h2>
+
+<p>
+Translated resources are stored in multiple XML files in multiple directories in your project.
+Manually finding and editing resource files across many translations can be difficult. Because of
+this, your application might have missing translations that go unnoticed until after your
+application has been built and distributed to users.
+</p>
+
+<p>
+The Translations Editor lets you view and update all your string resources in one convenient
+place. The editor gives you a single view of all of your translated resources, making it easy to
+change or add translations, and even find missing translations.
+</p>
+
+<img src="{@docRoot}images/tools/studio-translations-editor.png" />
+<p class="img-caption"><strong>Figure 1.</strong> Manage locales and strings in the
+Translations Editor.</p>
+
+<h2 id="running">Running the Translations Editor</h2>
+
+<p>
+Follow these steps to start the Translations Editor:
+</p>
+
+<ol>
+  <li>In Android Studio, open an Android app project.</li>
+  <li>In the <em>Project</em> window, select the
+  <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a>.</li>
+  <li>Open the <strong>res</strong> folder, and then open the <strong>values</strong> folder.</li>
+  <li>If a <strong>strings.xml</strong> folder is present, open this folder.</li>
+  <li>Right-click the <code>strings.xml</code> file (not folder) and select <strong>Open
+    Translations Editor</strong>.</li>
+</ol>
+
+<p>
+You can also access the Translations Editor by opening a <code>strings.xml</code> file for editing
+and clicking the <strong>Open editor</strong> link, or clicking the globe icon
+<img src="{@docRoot}images/tools/studio-globe-icon.png" alt=""/> in the Design layout view and
+choosing <strong>Edit Translations</strong>.
+</p>
+
+<h2 id="managing">Managing String Resources</h2>
+
+<p>
+The Translations Editor provides a view of all your string resources and current locale
+translations. The name of each resource is listed in the Key column, along with a default value
+for the key, a checkbox to mark the key as untranslatable, and values for each locale translation.
+</p>
+
+<p>
+Edit translations by double-clicking on the translation and editing the value directly
+in the list view, or selecting the translation and editing the <strong>Translation</strong> field
+value at the bottom of the editor. The default value can be edited by double-clicking on
+the default value or selecting the default value and updating the <strong>Default Value</strong>
+field.</p>
+
+<p>
+If a resource is missing a translation and isn't marked untranslatable, the key name is
+displayed in red. If you hover over a red resource, Android Studio displays details about the
+missing translations.
+</p>
+
+<h3 id="adding">Adding a new string resource</h3>
+
+<p>
+Add a new resource by clicking the add icon <img src="{@docRoot}images/tools/studio-add-icon.png"
+ alt=""/>. Android Studio prompts you for a key name,
+default value, and resource folder that contains the <code>strings.xml</code> file where the new
+resource is added.
+</p>
+
+<h3 id="adding_locales">Adding additional locales</h3>
+
+<p>
+Add additional locales by pressing the globe icon
+ <img src="{@docRoot}images/tools/studio-globe-icon.png" alt=""/> and selecting the locale you want
+to add. The Translations Editor adds the new locale column and creates the translation strings XML
+file in the appropriate project directory.
+</p>
+
+<p>
+The Translations Editor has
+<a class="external-link" href="https://tools.ietf.org/html/bcp47">BCP 47</a> support, and
+combines language and region codes into a single selection for targeted localizations.
+</p>
+
+<h2 id="ordering">Ordering Translation Services</h2>
+
+<p>
+Clicking the <strong>Order a translation</strong> link opens a page in your browser where you
+can upload string resource XML files and order translation services. App translation services are
+available from Google Play and other vendors. For more information about Google Play App
+Translation Services, see the <a class="external-link"
+href="http://android-developers.blogspot.com/2013/11/app-translation-service-now-available.html">
+Google Play App Translation Service</a> announcement.
+</p>
+
diff --git a/docs/html/tools/help/uiautomator/Configurator.jd b/docs/html/tools/help/uiautomator/Configurator.jd
index c898772..b6e15f6 100644
--- a/docs/html/tools/help/uiautomator/Configurator.jd
+++ b/docs/html/tools/help/uiautomator/Configurator.jd
@@ -281,7 +281,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/tools/help/uiautomator/UiAutomatorTestCase.jd b/docs/html/tools/help/uiautomator/UiAutomatorTestCase.jd
index 0d8d1bc..bd108ab 100644
--- a/docs/html/tools/help/uiautomator/UiAutomatorTestCase.jd
+++ b/docs/html/tools/help/uiautomator/UiAutomatorTestCase.jd
@@ -166,7 +166,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.TestCase" class="jd-expando-trigger closed"
           ><img id="inherited-methods-junit.framework.TestCase-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -304,7 +304,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Assert" class="jd-expando-trigger closed"
           ><img id="inherited-methods-junit.framework.Assert-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -938,7 +938,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1108,7 +1108,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Test" class="jd-expando-trigger closed"
           ><img id="inherited-methods-junit.framework.Test-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From interface
 
diff --git a/docs/html/tools/help/uiautomator/UiCollection.jd b/docs/html/tools/help/uiautomator/UiCollection.jd
index 3fc32b7..78c5254 100644
--- a/docs/html/tools/help/uiautomator/UiCollection.jd
+++ b/docs/html/tools/help/uiautomator/UiCollection.jd
@@ -161,7 +161,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-com.android.uiautomator.core.UiObject" class="jd-expando-trigger closed"
           ><img id="inherited-methods-com.android.uiautomator.core.UiObject-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -826,7 +826,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/tools/help/uiautomator/UiDevice.jd b/docs/html/tools/help/uiautomator/UiDevice.jd
index 574245e..1203841 100644
--- a/docs/html/tools/help/uiautomator/UiDevice.jd
+++ b/docs/html/tools/help/uiautomator/UiDevice.jd
@@ -1015,7 +1015,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/tools/help/uiautomator/UiObject.jd b/docs/html/tools/help/uiautomator/UiObject.jd
index 45007e0..4ce257b 100644
--- a/docs/html/tools/help/uiautomator/UiObject.jd
+++ b/docs/html/tools/help/uiautomator/UiObject.jd
@@ -940,7 +940,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/tools/help/uiautomator/UiObjectNotFoundException.jd b/docs/html/tools/help/uiautomator/UiObjectNotFoundException.jd
index b41cfe5..c34fdfd 100644
--- a/docs/html/tools/help/uiautomator/UiObjectNotFoundException.jd
+++ b/docs/html/tools/help/uiautomator/UiObjectNotFoundException.jd
@@ -111,7 +111,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Throwable-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -313,7 +313,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/tools/help/uiautomator/UiScrollable.jd b/docs/html/tools/help/uiautomator/UiScrollable.jd
index 7405f3b..8f6b1dd 100644
--- a/docs/html/tools/help/uiautomator/UiScrollable.jd
+++ b/docs/html/tools/help/uiautomator/UiScrollable.jd
@@ -38,7 +38,7 @@
 
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-com.android.uiautomator.core.UiObject" class="jd-expando-trigger closed"
           ><img id="inherited-constants-com.android.uiautomator.core.UiObject-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>From class
 <a href="UiObject.html">com.android.uiautomator.core.UiObject</a>
 <div id="inherited-constants-com.android.uiautomator.core.UiObject">
@@ -696,7 +696,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-com.android.uiautomator.core.UiCollection" class="jd-expando-trigger closed"
           ><img id="inherited-methods-com.android.uiautomator.core.UiCollection-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -798,7 +798,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-com.android.uiautomator.core.UiObject" class="jd-expando-trigger closed"
           ><img id="inherited-methods-com.android.uiautomator.core.UiObject-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
@@ -1606,7 +1606,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/tools/help/uiautomator/UiSelector.jd b/docs/html/tools/help/uiautomator/UiSelector.jd
index 7084540..1f045fd 100644
--- a/docs/html/tools/help/uiautomator/UiSelector.jd
+++ b/docs/html/tools/help/uiautomator/UiSelector.jd
@@ -650,7 +650,7 @@
 <td colspan="12">
   <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
           ><img id="inherited-methods-java.lang.Object-trigger"
-          src="../../../../../assets/images/triangle-closed.png"
+          src="../../../../../assets/images/styles/disclosure_down.png"
           class="jd-expando-trigger-img" /></a>
 From class
 
diff --git a/docs/html/tools/help/vector-asset-studio.jd b/docs/html/tools/help/vector-asset-studio.jd
new file mode 100644
index 0000000..491a699
--- /dev/null
+++ b/docs/html/tools/help/vector-asset-studio.jd
@@ -0,0 +1,506 @@
+page.title=Vector Asset Studio
+parent.title=Tools
+parent.link=index.html
+page.tags=vector
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+<ol>
+  <li><a href="#about">About Vector Asset Studio</a></li>
+  <li><a href="#running">Running Vector Asset Studio</a></li>
+  <li><a href="#importing">Importing a Vector Graphic</a></li>
+  <li><a href="#layout">Adding a Vector Drawable to a Layout</a></li>
+  <li><a href="#referring">Referring to a Vector Drawable in Code</a></li>
+  <li><a href="#code">Modifying XML Code Generated by Vector Asset Studio</a></li>
+  <li><a href="#delete">Deleting a Vector Asset from a Project</a></li>
+  <li><a href="#apk">Delivering an App Containing Vector Drawables</a></li>
+</ol>
+
+ <h2>See also</h2>
+  <ol>
+    <li><a href="{@docRoot}training/material/drawables.html#VectorDrawables">Create Vector Drawables</a></li>
+    <li><a href="http://www.google.com/design/icons" class="external-link">Material Icons</a></li>
+    <li><a href="{@docRoot}reference/android/graphics/drawable/Drawable.html">Drawable Class</a></li>
+    <li><a href="{@docRoot}reference/android/graphics/drawable/VectorDrawable.html">VectorDrawable Class</a></li>
+  </ol>
+
+  <h2>Videos</h2>
+  <ol>
+    <li><a href="http://www.youtube.com/watch?t=126&v=wlFVIIstKmA" class="external-link">DevBytes: Android Vector Graphics</a></li>
+    <li><a href="http://www.youtube.com/watch?v=8e3I-PYJNHg" class="external-link">Android Studio Support for Vector Graphics</a></li>
+  </ol>
+
+  <h2>Dependencies and Prerequisites</h2>
+  <ul>
+    <li><a href="{@docRoot}tools/building/plugin-for-gradle.html">Android Plugin for Gradle</a> 1.5.0 or higher</li>
+  </ul>
+
+</div>
+</div>
+
+<p>Vector Asset Studio helps you add material icons
+and import Scalable Vector Graphic (SVG) files into your app project as a drawable resource.
+Compared to raster images, vector drawables can reduce the size of your app and be resized without
+loss of image quality. They help you to more easily support different Android devices with varying
+screen sizes and resolutions because you can display one vector drawable on all of them. </p>
+
+<h2 id="about">About Vector Asset Studio</h2>
+
+<p>Vector Asset Studio adds a vector graphic to the project as an XML file that describes the image.
+Maintaining one XML file can be easier than updating multiple raster graphics at various resolutions.</p>
+
+<p>Android 4.4 (API level 20) and lower doesn't support vector drawables. If your minimum API level
+is set at one of these API levels, Vector Asset Studio also directs Gradle to generate raster images
+of the vector drawable for backward-compatibility. You can refer to vector assets as
+{@link android.graphics.drawable.Drawable} in Java code or <code>@drawable</code> in XML code; when
+your app runs, the corresponding vector or raster image displays automatically depending on the API
+level.</p>
+
+
+<h3 id="types">Supported vector graphic types</h3>
+
+<p>The Google material design specification provides <a href="http://www.google.com/design/icons" class="external-link">material icons</a>
+that you can use in your Android apps. Vector
+Asset Studio helps you choose, import, and size material icons, as well as define opacity and the
+Right-to-Left (RTL) mirroring setting.</p>
+
+<p>Vector Asset Studio also helps you to import your own SVG files. SVG is an XML-based open
+standard of the World Wide Web Consortium (W3C). Vector Asset Studio supports the essential
+standard, but not all features. When you specify an SVG file, Vector Asset Studio gives immediate
+feedback about whether the graphics code is supported or not. If the SVG code is supported, it
+converts the file into an XML file containing {@link
+android.graphics.drawable.VectorDrawable} code.</p>
+
+<h3 id="when">Considerations for SVG files</h3>
+
+<p>A vector drawable is appropriate for simple icons. The
+<a href="http://www.google.com/design/icons" class="external-link">material icons</a> provide good
+examples of the types
+of images that work well as vector drawables in an app. In contrast, many app launch icons do have
+many details, so they work better as raster images.</p>
+
+<p>The initial loading of a vector graphic can cost more CPU cycles than the corresponding raster
+image. Afterward, memory use and performance are similar between the two. We recommend that you
+limit a vector image to a maximum of 200 x 200 dp; otherwise, it can take too long to draw.</p>
+
+<p>Although vector drawables do support one or more colors, in many cases it makes sense to color
+icons black (<code>android:fillColor="#FF000000"</code>). Using this approach, you can add a
+<a href="{@docRoot}training/material/drawables.html#DrawableTint">tint</a> to the vector drawable
+that you placed in a layout, and the icon color changes to the tint color. If the icon color
+isn't black, the icon color might instead blend with the tint color.</p>
+
+<h3 id="apilevel">Vector drawable support at different API levels</h3>
+
+<p>Android 5.0 (API level 21) and higher provides vector drawable support. If your app has a
+minimum API level that is lower, Vector Asset Studio adds the vector drawable file to your
+project; also, at build time, Gradle creates Portable Network Graphic (PNG) raster images at various
+resolutions. Gradle generates the PNG densities specified by the Domain Specific Language (DSL)
+<a href="http://google.github.io/android-gradle-dsl/1.4/com.android.build.gradle.internal.dsl.ProductFlavor.html#com.android.build.gradle.internal.dsl.ProductFlavor:generatedDensities" class="external-link">generatedDensities</a> property
+in a <code>build.gradle</code> file. To generate PNGs, the build system requires Android
+Plugin for Gradle 1.5.0 or higher.</p>
+
+<p>For Android 5.0 (API level 21) and higher, Vector Asset Studio supports all of the {@link
+android.graphics.drawable.VectorDrawable} elements. For backward compatibility with Android 4.4 (API
+level 20) and lower, Vector Asset Studio supports the following XML elements:</p>
+
+<div class="wrap">
+  <div class="cols">
+    <div class="col-1of3">
+
+<p><code>&lt;vector></code></p>
+<ul>
+  <li><code>android:width</code></li>
+  <li><code>android:height</code></li>
+  <li><code>android:viewportWidth</code></li>
+  <li><code>android:viewportHeight</code></li>
+  <li><code>android:alpha</code></li>
+</ul>
+
+</div>
+
+<div class="col-1of3">
+
+<p><code>&lt;group></code></p>
+<ul>
+  <li><code>android:rotation</code></li>
+  <li><code>android:pivotX</code></li>
+  <li><code>android:pivotY</code></li>
+  <li><code>android:scaleX</code></li>
+  <li><code>android:scaleY</code></li>
+  <li><code>android:translateX</code></li>
+  <li><code>android:translateY</code></li>
+</ul>
+
+</div>
+
+
+<div class="col-1of3">
+
+<p><code>&lt;path></code></p>
+<ul>
+  <li><code>android:pathData</code></li>
+  <li><code>android:fillColor</code></li>
+  <li><code>android:strokeColor</code></li>
+  <li><code>android:strokeWidth</code></li>
+  <li><code>android:strokeAlpha</code></li>
+  <li><code>android:fillAlpha</code></li>
+  <li><code>android:strokeLineCap</code></li>
+  <li><code>android:strokeLineJoin</code></li>
+  <li><code>android:strokeMiterLimit</code></li>
+</ul>
+
+</div>
+
+</div>
+</div>
+
+<p>Only Android 5.0 (API level 21) and higher supports dynamic attributes, for example, <code>android:fillColor="?android:attr/colorControlNormal"</code>.</p>
+
+<p>You can change the XML code that Vector Asset Studio generates, although it’s not a best practice.
+Changing the values in the code should not cause any issues, as long as they’re valid and static. If
+you want to add XML elements, you need to make sure that they’re supported based on your minimum API
+level.</p>
+
+<p>For Android 5.0 (API level 21) and higher, you can use the {@link
+android.graphics.drawable.AnimatedVectorDrawable} class to animate the properties of {@link
+android.graphics.drawable.VectorDrawable}. For more information, see
+<a href="{@docRoot}training/material/animations.html#AnimVector">Animating Vector Drawables</a>.</p>
+
+<h2 id="running">Running Vector Asset Studio</h2>
+
+<p>Follow these steps to start Vector Asset Studio:</p>
+
+<ol>
+  <li>In Android Studio, open an Android app project.</li>
+  <li>In the <em>Project</em> window, select the
+  <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a>.</li>
+  <li>Right-click the <strong>res</strong> folder and select <strong>New</strong> >
+  <strong>Vector Asset</strong>.</li>
+  <p>Some other project views and folders have this menu item as well.</p>
+  <p>Vector Asset Studio appears.</p>
+  <img src="{@docRoot}images/tools/vas-materialicon.png" />
+  <li>If a <em>Need newer Android plugin for Gradle</em> dialog appears instead, correct
+  your Gradle version as follows:</li>
+    <ol type="a">
+      <li>Select <strong>File</strong> > <strong>Project Structure</strong>.</li>
+      <li>In the <em>Project Structure</em> dialog, select <strong>Project</strong>.</li>
+      <li>In the <strong>Android Plugin Version</strong> field, change the Android Plugin for Gradle
+      version to <strong>1.5.0</strong> or higher, and click <strong>OK</strong>.</li>
+      <p>Gradle syncs the project.</p>
+      <li>In the <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a>
+      of the <em>Project</em> window, right-click the <strong>res</strong> folder and select
+      <strong>New</strong> > <strong>Vector Asset</strong>.</li>
+      <p>Vector Asset Studio appears.</p>
+    </ol>
+  <li>Continue with <a href="#importing">Importing a Vector Graphic</a>.</li>
+</ol>
+
+<h2 id="importing">Importing a Vector Graphic</h2>
+
+<p>Vector Asset Studio helps you to import a vector graphics file into your app project. Follow one
+  of the following procedures:</p>
+<ul>
+  <li><a href="#materialicon">Adding a material icon</a></li>
+  <li><a href="#svg">Importing an SVG file</a></li>
+</ul>
+
+<h3 id="materialicon">Adding a material icon</h3>
+
+<p>After you <a href="#running">open Vector Asset Studio</a>, you can add a material icon as follows:</p>
+
+<ol>
+  <li>In Vector Asset Studio, select <strong>Material Icon</strong>.</li>
+  <li>Click <strong>Choose</strong>.</li>
+  <li>Select a material icon and click <strong>OK</strong>.</li>
+  <p>The icon appears in the <strong>Vector Drawable Preview</strong>.</p>
+  <li>Optionally change the resource name, size, opacity, and Right-To-Left (RTL) mirroring setting:
+    <ul>
+      <li><strong>Resource name</strong> - Type a new name if you don’t want to use the default name.
+      Vector Asset Studio automatically creates a unique name (adds a number to the end of the name)
+      if that resource name already exists in the project. The name can contain lowercase
+      characters, underscores, and digits only.</li>
+      <li><strong>Override default size from material design</strong> - Select this option if you
+      want to adjust the size of the image. When you type a new size, the change appears in the
+      preview area.</li>
+      <p>The default is 24 x 24 dp, which is defined in the
+      <a href="http://www.google.com/design/icons" class="external-link">material design</a>
+      specification. Deselect the checkbox to return to the default.</p>
+      <li><strong>Opacity</strong> - Use the slider to adjust the opacity of the image. The change
+      appears in the preview area.</li>
+      <li><strong>Enable auto mirroring for RTL layout</strong> - Select this option if you want a
+      mirror image to display when the layout is right to left, instead of left to right. For
+      example, some languages are read right to left; if you have an arrow icon, you might want to
+      display a mirror image of it in this case. Note that if you’re working with an older project,
+      you might also
+      need to add <code>android:supportsRtl="true"</code> to your app manifest. Auto-mirroring is
+      supported on Android 5.0 (API level 21) and higher only.</li>
+    </ul>
+  <li>Click <strong>Next</strong>.</li>
+  <li>Optionally change the module and resource directory:</li>
+   <ul>
+      <li><strong>Target Module</strong> - Select a module in the project where you want to add the
+      resource. For more information, see
+      <a href="{@docRoot}sdk/installing/create-project.html#CreatingAModule">Creating an Android Module</a>.</li>
+      <li><strong>Res Directory</strong> - Select the resource source set where you want to add the
+      vector asset: <code>src/main/res</code>, <code>src/debug/res</code>, <code>src/release/res</code>,
+      or a user-defined source set. The main source set applies to all build variants, including
+      debug and release. The debug and release source sets override the main source set and apply
+      to one version of a build. The debug source set is for debugging only. To define a new source
+      set, select <strong>File</strong> > <strong>Project Structure</strong> > <strong>app</strong> >
+      <strong>Build Types</strong>. For example, you could define a beta source set and create a
+      version of an icon that includes the text "BETA” in the bottom right corner. For more information, see
+      <a href="{@docRoot}tools/building/configuring-gradle.html#workBuildVariants">Working with Build Variants</a>.</li>
+    </ul>
+    <p>The <strong>Output Directories</strong> area displays the vector image and the directory
+    where it will appear.</p>
+  <li>Click <strong>Finish</strong>.</li>
+  <p>Vector Asset Studio adds an XML file defining the vector drawable to the project in the
+  <code>app/src/main/res/drawable/</code> folder. From the
+  <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a> of the <em>Project</em>
+  window, you can view the generated vector XML file in the <strong>drawable</strong> folder.</p>
+  <li>Build the project.</li>
+  <p>If the minimum API level is Android 4.4 (API level 20) and lower, Vector Asset Studio generates
+  PNG files. From the <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Project view</a>
+  of the <em>Project</em> window, you can view the generated PNG and XML files in the
+  <code>app/build/generated/res/pngs/debug/</code> folder.</p>
+  <p>You should not edit these generated raster files, but instead work with the vector XML file. The
+  build system regenerates the raster files automatically when needed so you don’t need to maintain
+  them.</p>
+</ol>
+
+<h3 id="svg">Importing a Scalable Vector Graphic (SVG)</h3>
+
+<p>After you <a href="#running">open Vector Asset Studio</a>, you can import an SVG file as follows:</p>
+
+<ol>
+  <li>In Vector Asset Studio, select <strong>Local SVG file</strong>.</li>
+  <p>The file must be on a local drive. If it’s located on the network, for example, you need to
+  download it to a local drive first.</p>
+  <li>Specify an <strong>Image file</strong> by clicking <strong>…</strong> .</li>
+  <p>The image appears in the <strong>Vector Drawable Preview</strong>.</p>
+  <p>However, if the SVG file contains unsupported features, an error appears at the bottom left of
+  Vector Asset Studio, as shown in the following figure.</p>
+  <img src="{@docRoot}images/tools/vas-svgerror.png" />
+  <p>In this case, you can’t use Vector Asset Studio to add the graphics file. Click
+    <strong>More</strong> to view the errors. For a list of supported elements, see
+  <a href="#apilevel">Vector Drawable Support at Different API Levels</a>.</p>
+  <li>Optionally change the resource name, size, opacity, and Right-To-Left (RTL) mirroring setting:</li>
+    <ul>
+      <li><strong>Resource name</strong> - Type a new name if you don’t want to use the default
+      name. Vector Asset Studio automatically creates a unique name (adds a number to the end of the
+      name) if that resource name already exists in the project. The name can contain lowercase
+      characters, underscores, and digits only.</li>
+      <li><strong>Override default size from material design</strong> - Select this option if you
+      want to adjust the size of the image. After you select it, the size changes to the size of the
+      image itself. Whenever you change the size, the change appears in the preview area.</li>
+      <p>The default is 24 x 24 dp, which is defined in the
+      <a href="http://www.google.com/design/icons" class="external-link">material design</a>
+      specification. Deselect the checkbox to return to the default.</p>
+      <li><strong>Opacity</strong> - Use the slider to adjust the opacity of the image. The change
+      appears in the preview area.</li>
+      <li><strong>Enable auto mirroring for RTL layout</strong> - Select this option if you want a
+      mirror image to display when the layout is right to left, instead of left to right. For
+      example, some languages are read right to left; if you have an arrow icon, you might want to
+      display a mirror image of it in this case. Note that if you’re working with an older project,
+      you might
+      need to add <code>android:supportsRtl="true"</code> to your app manifest.  Auto-mirroring is
+      supported on Android 5.0 (API level 21) and higher only.</li>
+    </ul>
+  <li>Click <strong>Next</strong>.</li>
+  <li>Optionally change the module and resource directory:</li>
+  <ul>
+      <li><strong>Target Module</strong> - Select a module in the project where you want to add the
+      resource. For more information, see
+      <a href="{@docRoot}sdk/installing/create-project.html#CreatingAModule">Creating an Android Module</a>.</li>
+      <li><strong>Res Directory</strong> - Select the resource source set where you want to add the
+      vector asset: <code>src/main/res</code>, <code>src/debug/res</code>, <code>src/release/res</code>,
+      or a user-defined source set. The main source set applies to all build variants, including
+      debug and release. The debug and release source sets override the main source set and apply
+      to one version of a build. The debug source set is for debugging only. To define a new source
+      set, select <strong>File</strong> > <strong>Project Structure</strong> > <strong>app</strong> >
+      <strong>Build Types</strong>. For example, you could define a beta source set and create a
+      version of an icon that includes the text "BETA” in the bottom right corner. For more information, see
+      <a href="{@docRoot}tools/building/configuring-gradle.html#workBuildVariants">Working with Build Variants</a>.</li>
+    </ul>
+    <p>The <strong>Output Directories</strong> area displays the vector image and the directory
+    where it will appear.</p>
+  <li>Click <strong>Finish</strong>.</li>
+  <p>Vector Asset Studio adds an XML file defining the vector drawable to the project in the
+  <code>app/src/main/res/drawable/</code> folder. From the
+  <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a> of the <em>Project</em>
+  window, you can view the generated vector XML file in the <strong>drawable</strong> folder.</p>
+  <li>Build the project.</li>
+  <p>If the minimum API level is Android 4.4 (API level 20) and lower, Vector Asset Studio generates
+  PNG files. From the <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Project view</a>
+  of the <em>Project</em> window, you can view the generated PNG and XML files in the
+  <code>app/build/generated/res/pngs/debug/</code> folder.</p>
+  <p>You should not edit these generated raster files, but instead work with the vector XML file. The
+  build system regenerates the raster files automatically when needed so you don’t need to maintain
+  them.</p>
+</ol>
+
+<h2 id="layout">Adding a Vector Drawable to a Layout</h2>
+
+<p>In a layout file, you can set any icon-related widget, such as {@link android.widget.ImageButton},
+{@link android.widget.ImageView}, and so on, to point to a vector asset. For example, the following
+layout shows a vector asset displayed on a button:</p>
+
+<img src="{@docRoot}images/tools/vas-layout.png" />
+
+<p>Follow these steps to display a vector asset on a widget, as shown in the figure:</p>
+
+<ol>
+  <li>Open a project and <a href="#running">import a vector asset</a>.</li>
+  <li>In the <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a> of
+  the <em>Project</em> window, double-click a layout XML file, such as <code>content_main.xml</code>.</li>
+  <li>Click the <strong>Design</strong> tab to display the
+  <a href="{@docRoot}sdk/installing/studio-layout.html">Layout Editor</a>.</li>
+  <li>Drag the {@link
+android.widget.ImageButton} widget from the <em>Palette</em> window onto the Layout Editor.</li>
+  <li>In the <em>Properties</em> window, locate the <strong>src</strong> property of the
+  <code>ImageButton</code> instance and click <strong>…</strong> .</li>
+  <li>In the <em>Resources</em> dialog, select the <strong>Project</strong> tab, navigate to the
+    <strong>Drawable</strong> folder, and select a vector asset. Click <strong>OK</strong>.</li>
+  <p>The vector asset appears on the <code>ImageButton</code> in the layout.</p>
+  <li>To change the color of the image to the accent color defined in the theme, locate the
+  <strong>tint</strong> property in the <em>Properties</em> window and click <strong>…</strong> .</li>
+  <li>In the <em>Resources</em> dialog, select the <strong>Project</strong> tab, navigate to the
+  <strong>Color</strong> folder, and select <strong>colorAccent</strong>. Click <strong>OK</strong>.</li>
+  <p>The color of the image changes to the accent color in the layout.</p>
+</ol>
+
+<p>The <code>ImageButton</code> code should be similar to the following:</p>
+
+<pre>
+&lt;ImageButton
+  android:id="@+id/imageButton"
+  android:src="@drawable/ic_build_24dp"
+  android:tint="@color/colorAccent"
+  android:layout_width="wrap_content"
+  android:layout_height="wrap_content"
+  android:layout_below="@+id/textView2"
+  android:layout_marginTop="168dp" />
+</pre>
+
+<h2 id="referring">Referring to a Vector Drawable in Code</h2>
+
+<p>You can normally refer to a vector drawable resource in a generic way in your code, and when
+your app runs, the corresponding vector or raster image displays automatically depending on the API
+level:</p>
+
+<ul>
+  <li>In most cases, you can refer to vector assets as <code>@drawable</code> in XML code or
+    {@link android.graphics.drawable.Drawable} in Java code. </li>
+  <p>For example, the following layout XML code applies the image to a view:</p>
+<pre>
+&lt;ImageView
+    android:layout_height="wrap_content"
+    android:layout_width="wrap_content"
+    android:src="@drawable/myimage" />
+</pre>
+  <p>The following Java code retrieves the image as a {@link android.graphics.drawable.Drawable}:</p>
+<pre>
+Resources res = {@link android.content.Context#getResources()};
+Drawable drawable = res.{@link android.content.res.Resources#getDrawable(int) getDrawable}(R.drawable.myimage);
+</pre>
+  <li>Occasionally, you might need to typecast the drawable resource to its exact class, such as
+  when you need to use specific features of the {@link android.graphics.drawable.VectorDrawable}
+  class. To do so, you could use Java code such as the following:</li>
+<pre>
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+   VectorDrawable vectorDrawable =  (VectorDrawable) drawable;
+} else {
+   BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable;
+}
+</pre>
+</ul>
+
+
+<h2 id="code">Modifying XML Code Generated by Vector Asset Studio</h2>
+
+<p>You can modify the vector asset XML code, but not the PNGs and corresponding XML code generated
+at build time. However, we don't recommended it. Vector Asset Studio makes sure that the vector
+drawable and the PNGs match, and that the manifest contains the proper code. If you add code that's
+<a href="#apilevel">not supported</a> on Android 4.4 (API level 20) and lower, your vector and PNG
+images might differ. You also need to make sure that the manifest contains the code to support your
+changes.</p>
+
+<p>Follow these steps to modify the vector XML file:</p>
+
+<ol>
+  <li>In the <em>Project</em> window, double-click the generated vector XML file in the
+  <strong>drawable</strong> folder.</li>
+  <p>The XML file appears in the editor and <em>Preview</em> windows.</p>
+
+  <img src="{@docRoot}images/tools/vas-codepreview.png" />
+
+  <li>Edit the XML code based on what’s supported by the minimum API level:</li>
+    <ul>
+      <li>Android 5.0 (API level 21) and higher - Vector Asset Studio supports all of the
+      {@link android.graphics.drawable.Drawable} and
+      {@link android.graphics.drawable.VectorDrawable} elements. You can add XML elements and
+      change values.</li>
+      <li>Android 4.4 (API level 20) and lower - Vector Asset Studio supports all of the
+      {@link android.graphics.drawable.Drawable} elements and a subset of the
+      {@link android.graphics.drawable.VectorDrawable} elements. See
+      <a href="#apilevel">Support at Different API Levels</a> for a list. You can change values in
+      the generated code and add XML elements that are supported. Dynamic attributes aren't
+      supported.</li>
+   </ul>
+  <p>For example, if you didn’t select the RTL option in Vector Asset Studio but realize you now
+  need it, you can add the <a href="{@docRoot}reference/android/R.attr.html#autoMirrored">autoMirrored</a>
+  attribute later. To view the RTL version, select <strong>Preview Right-to-Left Layout</strong> in
+  the <img src="{@docRoot}images/tools/vas-rtlmenu.png" style="vertical-align:sub;margin:0;height:17px" alt="" />
+  menu of the <em>Preview</em> window. (Select <strong>None</strong> to remove the RTL preview.)</p>
+<img src="{@docRoot}images/tools/vas-rtl.png" />
+  <p class="note"><strong>Note:</strong> If you’re working with an older project, you might need to
+  add <code>android:supportsRtl="true"</code> to your app manifest. Also, because
+  <code>autoMirrored</code> is a dynamic attribute, it's supported on Android 5.0 (API level 21) and
+  higher only.</p>
+  <li>Build the project and check that the vector and raster images look the same.</li>
+  <p>Remember that the generated PNGs could display differently in the <em>Preview</em> window than
+  in the app due to different rendering engines and any changes made to the vector drawable before a
+  build. If you add code to the vector XML file created by Vector Asset Studio, any features
+  unsupported in Android 4.4 (API level 20) and lower don't appear in the generated PNG files. As a
+  result, when you add code, you should always check that the generated PNGs match the vector
+  drawable. To do so, you could double-click the PNG in the
+  <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Project view</a> of the <em>Project</em>
+  window; the left margin of the code editor also displays the PNG image when your code refers to
+  the drawable.</p>
+  <img src="{@docRoot}images/tools/vas-imageincode.png" />
+</ol>
+
+
+<h2 id="delete">Deleting a Vector Asset from a Project</h2>
+
+<p>Follow these steps to remove a vector asset from a project:</p>
+
+<ol>
+  <li>In the <em>Project</em> window, delete the generated vector XML file by selecting the file and
+  pressing the <strong>Delete</strong> key (or select <strong>Edit</strong> > <strong>Delete</strong>).</li>
+  <p>The <em>Safe Delete</em> dialog appears.</p>
+  <li>Optionally select options to find where the file is used in the project, and click
+  <strong>OK</strong>.</li>
+  <p>Android Studio deletes the file from the project and the drive. However, if you chose to search
+  for places in the project where the file is used and some usages are found, you can view them and
+  decide whether to delete the file.</p>
+  <li>Select <strong>Build</strong> > <strong>Clean Project</strong>.</li>
+  <p>Any auto-generated PNG and XML files corresponding to the deleted vector
+  asset are removed from the project and the drive.</p>
+</ol>
+
+<h2 id="apk">Delivering an App Containing Vector Drawables</h2>
+
+<p>When your minimum API level includes Android 4.4 (API level 20) or lower, you have corresponding
+  vector and raster images in your project. In this case, you have two options for delivering your
+  APK files:</p>
+
+<ul>
+  <li>Create one APK that includes both the vector images and the corresponding raster
+    representations. This solution is the simplest to implement.</li>
+  <li>Create separate APKs for different API levels. When you don’t include the corresponding
+    raster images in the APK for Android 5.0 (API level 21) and higher, the APK can be much smaller in
+    size. For more information, see <a href="{@docRoot}google/play/publishing/multiple-apks.html">Multiple APK Support</a>.</li>
+</ul>
diff --git a/docs/html/tools/help/zipalign.jd b/docs/html/tools/help/zipalign.jd
old mode 100644
new mode 100755
index a32a3658..ed82b27
--- a/docs/html/tools/help/zipalign.jd
+++ b/docs/html/tools/help/zipalign.jd
@@ -16,12 +16,12 @@
 
 <p>This tool should always be used to align your .apk file before 
 distributing it to end-users. The Android build tools can handle
-this for you. When using Eclipse with the ADT plugin, the Export Wizard
-will automatically zipalign your .apk after it signs it with your private key. 
+this for you. Android Studio automatically aligns your .apk after it signs it with your 
+private key. 
 The build scripts used
-when compiling your application with Ant will also zipalign your .apk,
+when compiling your application with Gradle also align your .apk,
 as long as you have provided the path to your keystore and the key alias in
-your project {@code ant.properties} file, so that the build tools 
+your project {@code gradle.properties} file, so that the build tools 
 can sign the package first.</p>
 
 <p class="caution"><strong>Caution:</strong> zipalign must only be performed
diff --git a/docs/html/tools/performance/memory-monitor/index.jd b/docs/html/tools/performance/memory-monitor/index.jd
index a083a14..5b9d0c8 100644
--- a/docs/html/tools/performance/memory-monitor/index.jd
+++ b/docs/html/tools/performance/memory-monitor/index.jd
@@ -78,7 +78,7 @@
          alt=""
          width="300px" />
       <p class="img-caption">
-        <strong>Figure 1. </strong>Starting Memory Monitor.
+        <strong>Figure 1. </strong>Enable ADB Integration.
       </p>
     </div>
 
@@ -87,24 +87,63 @@
     <li>Open your application in Android Studio, build the source,
       and run it on your device or emulator.</li>
 
-    <li>In Android Studio, choose <strong> Tools &gt; Android &gt; Memory Monitor</strong>. You
-      can also click the <em>Android</em> tab in the lower-left corner of the application
-      window to launch the Android runtime window. The CPU and Memory Monitor views appear.</li>
- 
+    <li>In Android Studio, choose <strong>Tools &gt; Android &gt; Enable ADB Integration</strong>.
+
  </ol>
 </div></li>
 
+<li><div style="overflow:hidden">
+<hr>
+  <ol class="padded" start="4">
+
+    <div class="figure" style="">
+  <img src="{@docRoot}images/tools/performance/memory-monitor/gettingstarted_image001b.png"
+         alt=""
+         width="240px" />
+      <p class="img-caption">
+        <strong>Figure 2. </strong>The Android Monitor tab.
+      </p>
+    </div>
+
+    <li>Click the <strong>Android Monitor</strong> tab at the bottom of the runtime window.</li>
+
+    <li>Click the <strong>Memory</strong> tab to show the Memory Monitor tool.</li>
+
+ </ol>
+</div></li>
 
 <li><div style="overflow:hidden">
 <hr>
-  <ol class="padded" start="7">
+  <ol class="padded" start="6">
+
+    <div class="figure" style="">
+  <img src="/images/tools/performance/memory-monitor/gettingstarted_image002.png"
+         alt=""
+         width="400px" />
+      <p class="img-caption">
+        <strong>Figure 3. </strong>The Memory Monitor pane.
+      </p>
+    </div>
+
+    <li>Choose your device from the drop-down menu at the top left of the pane.
+    </li>
+
+    <li>Choose the Activity to monitor from the drop-down menu at the top right of the pane.
+    </li>
+
+ </ol>
+</div></li>
+
+<li><div style="overflow:hidden">
+<hr>
+  <ol class="padded" start="8">
 
     <div class="figure" style="">
   <img src="{@docRoot}images/tools/performance/memory-monitor/gettingstarted_image003.png"
          alt=""
          width="400px" />
       <p class="img-caption">
-        <strong>Figure 1. </strong>Allocated and free memory in Memory Monitor.
+        <strong>Figure 4. </strong>Allocated and free memory in Memory Monitor.
       </p>
     </div>
 
@@ -130,14 +169,14 @@
 
 <li><div style="overflow:hidden">
 <hr>
-  <ol class="padded" start="11">
+  <ol class="padded" start="12">
 
     <div class="figure" style="">
   <img src="{@docRoot}images/tools/performance/memory-monitor/gettingstarted_image005.png"
          alt=""
          width="400px" />
       <p class="img-caption">
-        <strong>Figure 2. </strong>Forcing a GC (Garbage Collection) event.
+        <strong>Figure 5. </strong>Forcing a GC (Garbage Collection) event.
       </p>
     </div>
 
diff --git a/docs/html/tools/performance/profile-gpu-rendering/index.jd b/docs/html/tools/performance/profile-gpu-rendering/index.jd
index 74862b5..5d22e8c 100644
--- a/docs/html/tools/performance/profile-gpu-rendering/index.jd
+++ b/docs/html/tools/performance/profile-gpu-rendering/index.jd
@@ -169,7 +169,7 @@
     screen asynchronously. In certain situations, the GPU can have too much work to do,
     and your CPU will have to wait before it can submit new commands.
     When this happens, you'll see spikes in the Process (orange bar) and Execute (red bar)
-    stages, and the sommand submission will block until more room is made on the
+    stages, and the command submission will block until more room is made on the
     GPU command queue.
   </p>
 
diff --git a/docs/html/tools/projects/index.jd b/docs/html/tools/projects/index.jd
index 8665479..344e844 100644
--- a/docs/html/tools/projects/index.jd
+++ b/docs/html/tools/projects/index.jd
@@ -100,7 +100,7 @@
 
    <dt><code>build</code></dt>
 
-   <dd>This directory stories the build output for all project modules.</dd>
+   <dd>This directory stores the build output for all project modules.</dd>
 
 
     <dt><code>gradle</code></dt>
@@ -176,8 +176,9 @@
     <dt><code>src/</code></dt>
 
     <dd>Contains your stub Activity file, which is stored at
-    <code>src<em>/main/java/<namespace.applicationname>/ActivityName></em>.java</code>. All other source
-    code files (such as <code>.java</code> or <code>.aidl</code> files) go here as well.</dd>
+    <code>src<em>/main/java/&lt;namespace.appname&gt;/&lt;ActivityName&gt;</em>.java</code>. All
+    other source code files (such as <code>.java</code> or <code>.aidl</code> files) go here as
+    well.</dd>
 
      <dl>
        <dt><code>androidTest/</code></dt>
@@ -185,7 +186,7 @@
        <dd>Contains the instrumentation tests. For more information, see the
        <a href="{@docRoot}tools/testing/index.html">Android Test documentation</a>.</dd>
 
-       <dt><code>main/java/com.&gt;project&lt;.&gt;app&lt;</code></dt>
+       <dt><code>main/java/com.&lt;project&gt;.&lt;app&gt;</code></dt>
 
        <dd>Contains Java code source for the app activities.</dd>
 
diff --git a/docs/html/tools/projects/projects-eclipse.jd b/docs/html/tools/projects/projects-eclipse.jd
deleted file mode 100644
index af85015..0000000
--- a/docs/html/tools/projects/projects-eclipse.jd
+++ /dev/null
@@ -1,273 +0,0 @@
-page.title=Managing Projects from Eclipse with ADT
-parent.title=Managing Projects
-parent.link=index.html
-@jd:body
-
- <div id="qv-wrapper">
-    <div id="qv">
-      <h2>In this document</h2>
-
-      <ol>
-        <li><a href="#CreatingAProject">Creating an Android Project</a></li>
-
-        <li><a href="#SettingUpLibraryProject">Setting up a Library Project</a></li>
-
-        <li><a href="#ReferencingLibraryProject">Referencing a Library Project</a></li>
-      </ol>
-
-      <h2>See also</h2>
-
-      <ol>
-        <li><a href=
-        "{@docRoot}tools/testing/testing_eclipse.html#CreateTestProjectEclipse">Testing
-        from Eclipse with ADT</a></li>
-      </ol>
-    </div>
-  </div>
-
-  <p>Eclipse and the ADT plugin provide GUIs and wizards to create all three types of projects
-  (Android project, Library project, and Test project):
-
-  <ul>
-    <li>An Android project contains all of the files and resources that are needed to build a project into
-  an .apk file for installation. You need to create an Android project for any application that you
-  want to eventually install on a device.</li>
-
-  <li>You can also designate an Android project as a library project, which allows it to be shared
-  with other projects that depend on it. Once an Android project is designated as a library
-  project, it cannot be installed onto a device.</li>
-
-  <li>Test projects extend JUnit test functionality to include Android specific functionality. For
-  more information on creating a test project, see <a href=
-  "{@docRoot}tools/testing/testing_eclipse.html">Testing from Eclipse with ADT</a>.</li>
-  </ul>
-
-  <h2 id="CreatingAProject">Creating an Android Project</h2>
-
-  <p>The ADT plugin provides a <em>New Project Wizard</em> that you can use to quickly create a new
-  Android project (or a project from existing code). To create a new project:</p>
-
-  <ol>
-    <li>Select <strong>File</strong> &gt; <strong>New</strong> &gt; <strong>Project</strong>.</li>
-
-    <li>Select <strong>Android</strong> &gt; <strong>Android Application Project</strong>, and click
-    <strong>Next</strong>.</li>
-
-    <li>Enter the basic settings for the project:
-
-      <ul>
-        <li>Enter an <strong>Application Name</strong>. This name is used as the title of your
-        application launcher icon when it is installed on a device.</li>
-
-        <li>Enter a <strong>Project Name</strong>. This text is used as the name of the folder where
-        your project is created.</li>
-
-        <li>Enter a <strong>Package Name</strong>. This class package namespace creates the initial
-        package structure for your applications code files and is added as the
-        <a href="{@docRoot}guide/topics/manifest/manifest-element.html#package">{@code package}</a>
-        attribute in your application's
-        <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">Android manifest file</a>.
-        This manifest value serves as the unique identifier for your application app when you
-        distribute it to users. The package name must follow the same rules as packages in the Java
-        programming language.</li>
-
-        <li>Select a <strong>Minimum Required SDK</strong>. This setting indicates the lowest
-        version of the Android platform that your application supports. This value sets the
-        <code>minSdkVersion</code> attribute in the
-        <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a>
-        element of your manifest file.</li>
-
-        <li>Select a <strong>Target SDK</strong>. This setting indicates the highest version of
-        Android with which you have tested with your application and sets the
-        <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
-        targetSdkVersion}</a> attribute in your application's' manifest file.
-
-          <p class="note"><strong>Note:</strong> You can change the target SDK for your
-          project at any time: Right-click the project in the Package Explorer, select
-          <strong>Properties</strong>, select <strong>Android</strong> and then check the desired
-          <strong>Project Build Target</strong>.</p>
-        </li>
-
-        <li>Select a <strong>Compile With</strong> API version. This setting specifies what version
-        of the SDK to compile your project against. We strongly recommend using the most recent
-        version of the API.</li>
-
-        <li>Select a <strong>Theme</strong>. This setting specifies which standard Android
-        <a href="{@docRoot}design/style/themes.html">visual style</a> is applied to your
-        application.</li>
-
-        <li>Click <strong>Next</strong>.</li>
-      </ul>
-    </li>
-
-    <li>In the <strong>Configure Project</strong> page, select the desired settings and click
-      <strong>Next</strong>. Leave the <strong>Create activity</strong> option checked so you can
-      start your application with some essential components.</li>
-
-    <li>In the <strong>Configure Launcher Icon</strong> page, create an icon and click
-      <strong>Next</strong>.</li>
-
-    <li>In the <strong>Create Activity</strong> page, select activity template and click
-      <strong>Next</strong>. For more information about Android code templates, see
-      <a href="{@docRoot}tools/projects/templates.html">Using Code Templates</a>.
-      </li>
-
-    <li>Click <strong>Finish</strong> and the wizard creates a new project according to the options
-      you have chosen.</li>
-  </ol>
-
-  <p class="note"><strong>Tip:</strong> You can also start the New Project Wizard by clicking the
-  <strong>New</strong> <img src="/images/tools/eclipse-new.png"
-  style="vertical-align:baseline;margin:0"> icon in the toolbar.</p>
-
-
-  <h2 id="SettingUpLibraryProject">Setting up a Library Project</h2>
-
-  <p>A library project is a standard Android project, so you can create a new one in the same way
-  as you would a new application project.</p>
-
-  <p>To create a new library project:</p>
-
-  <ol>
-    <li>Select <strong>File</strong> &gt; <strong>New</strong> &gt; <strong>Project</strong>.</li>
-
-    <li>Select <strong>Android</strong> &gt; <strong>Android Application Project</strong>, and click
-    <strong>Next</strong>.</li>
-
-    <li>Enter the basic settings for the project, including <strong>Application Name</strong>,
-    <strong>Project Name</strong>, <strong>Package Name</strong>, and SDK settings.</li>
-
-    <li>In the <strong>Configure Project</strong> page, select the <strong>Mark this project as a
-    library</strong> option to flag the project as a library.</li>
-
-    <li>Set the other options as desired and click <strong>Next</strong>.</li>
-
-    <li>Follow the instructions to complete the wizard and create a new library project.</li>
-  </ol>
-
-  <p>You can also convert an existing application project into a library. To do so, simply open the
-    Properties for the project and select the <strong>is Library</strong> checkbox, as shown in
-    the figure below.</p>
-
-  <img src= "{@docRoot}images/developing/adt-props-isLib.png">
-  <p class="img-caption"><strong>Figure 1.</strong> Marking a project as an Android library.</p>
-
-  <p>To set the a project's properties to indicate that it is a library project:</p>
-
-  <ol>
-    <li>In the <strong>Package Explorer</strong>, right-click the library project and select
-    <strong>Properties</strong>.</li>
-
-    <li>In the <strong>Properties</strong> window, select the <strong>Android</strong> properties
-    group in the left pane and locate the <strong>Library</strong> properties in the right pane.</li>
-
-    <li>Select the <strong>is Library</strong> check box and click <strong>Apply</strong>.</li>
-
-    <li>Click <strong>OK</strong> to close the <strong>Properties</strong> window.</li>
-  </ol>
-
-  <p>Once you create a library project or mark an existing project as a library, you can reference
-  the library project in other Android application projects. For more information, see the
-  <a href="#ReferencingLibraryProject">Referencing a library project</a> section.
-
-
-  <h3>Creating the manifest file</h3>
-
-  <p>A library project's manifest file must declare all of the shared components that it includes,
-  just as would a standard Android application. For more information, see the documentation for
-  <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">AndroidManifest.xml</a>.</p>
-
-  <p>For example, the <a href=
-  "{@docRoot}resources/samples/TicTacToeLib/AndroidManifest.html">TicTacToeLib</a> example library
-  project declares the activity <code>GameActivity</code>:</p>
-  <pre>
-&lt;manifest&gt;
-  ...
-  &lt;application&gt;
-    ...
-    &lt;activity android:name="GameActivity" /&gt;
-    ...
-  &lt;/application&gt;
-&lt;/manifest&gt;
-</pre>
-
-  <h2 id="ReferencingLibraryProject">Referencing a library project</h2>
-
-  <p>If you are developing an application and want to include the shared code or resources from a
-  library project, you can do so easily by adding a reference to the library project in the
-  application project's Properties.</p>
-
-  <p>To add a reference to a library project, follow these steps:</p>
-
-  <ol>
-    <li>Make sure that both the project library and the application project that depends on it are
-      in your workspace. If one of the projects is missing, import it into your workspace.</li>
-
-    <li>In the <strong>Package Explorer</strong>, right-click the dependent project and select
-    <strong>Properties</strong>.</li>
-
-    <li>In the <strong>Properties</strong> window, select the "Android" properties group at left
-    and locate the <strong>Library</strong> properties at right.</li>
-
-    <li>Click <strong>Add</strong> to open the <strong>Project Selection</strong> dialog.</li>
-
-    <li>From the list of available library projects, select a project and click
-    <strong>OK</strong>.</li>
-
-    <li>When the dialog closes, click <strong>Apply</strong> in the <strong>Properties</strong>
-    window.</li>
-
-    <li>Click <strong>OK</strong> to close the <strong>Properties</strong> window.</li>
-  </ol>
-
-  <p>As soon as the Properties dialog closes, Eclipse rebuilds the project, including the contents
-  of the library project.</p>
-
-  <p>Figure 2 shows the Properties dialog that lets you add library references and move
-  them up and down in priority.</p><img src="{@docRoot}images/developing/adt-props-libRef.png">
-
-  <p class="img-caption"><strong>Figure 2.</strong> Adding a reference to a
-     library project in the properties of an application project.</p>
-
-  <p>If you are adding references to multiple libraries, note that you can set their relative
-  priority (and merge order) by selecting a library and using the <strong>Up</strong> and
-  <strong>Down</strong> controls. The tools merge the referenced libraries with your application
-  starting from lowest priority (bottom of the list) to highest (top of the list). If more than one
-  library defines the same resource ID, the tools select the resource from the library with higher
-  priority. The application itself has highest priority and its resources are always used in
-  preference to identical resource IDs defined in libraries.</p>
-
-  <h3>Declaring library components in the manifest file</h3>
-
-  <p>In the manifest file of the application project, you must add declarations of all components
-  that the application will use that are imported from a library project. For example, you must
-  declare any <code>&lt;activity&gt;</code>, <code>&lt;service&gt;</code>,
-  <code>&lt;receiver&gt;</code>, <code>&lt;provider&gt;</code>, and so on, as well as
-  <code>&lt;permission&gt;</code>, <code>&lt;uses-library&gt;</code>, and similar elements.</p>
-
-  <p>Declarations should reference the library components by their fully-qualified package names,
-  where appropriate.</p>
-
-  <p>For example, the <a href=
-  "{@docRoot}resources/samples/TicTacToeMain/AndroidManifest.html">TicTacToeMain</a> example
-  application declares the library activity <code>GameActivity</code> like this:</p>
-  <pre>
-&lt;manifest&gt;
-  ...
-  &lt;application&gt;
-    ...
-    &lt;activity android:name="com.example.android.tictactoe.library.GameActivity" /&gt;
-    ...
-  &lt;/application&gt;
-&lt;/manifest&gt;
-</pre>
-
-  <p>For more information about the manifest file, see the documentation for <a href=
-  "{@docRoot}guide/topics/manifest/manifest-intro.html">AndroidManifest.xml</a>.</p>
-
-
-
-
-
-
-
diff --git a/docs/html/tools/projects/templates.jd b/docs/html/tools/projects/templates.jd
index 002e2c5..676ca50 100644
--- a/docs/html/tools/projects/templates.jd
+++ b/docs/html/tools/projects/templates.jd
@@ -1,6 +1,6 @@
 page.title=Using Code Templates
 page.image=images/cards/card-using-code-templates_16x9_2x.png
-page.metaDescription=Quickly create Android app projects with various UI or functional components. 
+page.metaDescription=Quickly create Android app projects with various UI or functional components.
 page.tags=studio,templates,firstapp
 @jd:body
 
@@ -29,7 +29,6 @@
     </div>
   </div>
 
-<img style="float:right" src="{@docRoot}images/cards/card-using-code-templates_16x9_2x.png">
 <p>The SDK tools provide templates for quickly creating Android application projects with the basic
   structure or for adding components to your existing application modules. The code templates
   provided by the Android SDK follow the Android design and development guidelines to get you on the
@@ -45,6 +44,18 @@
   <li><a href="#object-templates">Other Templates</a></li>
 </ul>
 
+<p>
+  The templates use <a href=
+  "{@docRoot}tools/support-library/features.html">support library</a> objects
+  if such objects are available. The support library objects make new features
+  available on the widest range of platforms. For example, since the templates
+  use the <a href=
+  "{@docRoot}tools/support-library/features.html#v7-appcompat">appcompat
+  library</a>, apps based on the templates use <a href=
+  "{@docRoot}design/material/index.html">material design</a> user interface
+  principles even if they are running on older Android devices that do not
+  directly support material design.
+</p>
 
 <h2 id="app-templates">Application Templates</h2>
 
diff --git a/docs/html/tools/publishing/app-signing-eclipse.jd b/docs/html/tools/publishing/app-signing-eclipse.jd
deleted file mode 100644
index 738e488..0000000
--- a/docs/html/tools/publishing/app-signing-eclipse.jd
+++ /dev/null
@@ -1,64 +0,0 @@
-page.title=Signing Your Applications from Eclipse with ADT
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
-
-<h2>In this document</h2>
-
-<ol>
-<li><a href="#signing">Signing Your App for Release</a></li>
-</ol>
-
-<h2>See also</h2>
-
-<ol>
-<li><a href="{@docRoot}tools/publishing/app-signing.html">Signing Your Applications</a></li>
-</ol>
-
-</div>
-</div>
-
-
-<p>Android requires that all apps be digitally signed with a certificate before they can be
-installed. Android uses this certificate to identify the author of an app, and the certificate
-does not need to be signed by a certificate authority.</p>
-
-<p>This document provides detailed instructions about how to sign your apps in release mode with the
-ADT plugin for Eclipse. For information about how to obtain a certificate for signing your app, see
-<a href="{@docRoot}tools/publishing/app-signing.html">Signing Your Applications</a>.
-</p>
-
-
-<h2 id="signing">Signing Your App for Release</h2>
-
-<p>To sign your app for release with ADT, follow these steps:</p>
-
-<ol>
-<li>Select the project in the Package Explorer and select <strong>File</strong> >
-<strong>Export</strong>.</li>
-<li>On the <em>Export</em> window, select <strong>Export Android Application</strong> and click
-<strong>Next</strong>.</li>
-<li>On the <em>Export Android Application</em> window, select the project you want to sign and
-click <strong>Next</strong>.</li>
-<li>
-<p>On the next window, enter the location to create a keystore and a keystore password. If you
-already have a keystore, select <strong>Use existing keystore</strong>, enter your keystore's
-location and password, and go to step 6.</p>
-<img src="{@docRoot}images/tools/signadt3.png" alt=""
-     width="488" height="270" style="margin-top:15px"/>
-<p class="img-caption"><strong>Figure 6</strong>. Select a keystore in ADT.</p>
-</li>
-<li><p>On the next window, provide the required information as shown in figure 5.<p>
-<p>Your key should be valid for at least 25 years, so you can sign app updates with the same key
-through the lifespan of your app.</p>
-<img src="{@docRoot}images/tools/signadt4.png" alt=""
-     width="488" height="448" style="margin-top:15px"/>
-<p class="img-caption"><strong>Figure 7</strong>. Create a private key in ADT.</p>
-</li>
-<li><p>On the next window, select the location to export the signed APK.</p>
-<img src="{@docRoot}images/tools/signadt5.png" alt=""
-     width="488" height="217" style="margin-top:15px"/>
-<p class="img-caption"><strong>Figure 8</strong>. Export the signed APK in ADT.</p>
-</li>
-</ol>
diff --git a/docs/html/tools/publishing/app-signing.jd b/docs/html/tools/publishing/app-signing.jd
index 4265a63..4b74f5f 100644
--- a/docs/html/tools/publishing/app-signing.jd
+++ b/docs/html/tools/publishing/app-signing.jd
@@ -16,7 +16,7 @@
 </li>
 <li><a href="#studio">Signing Your App in Android Studio</a>
   <ol>
-  	<li><a href="sign-auto">Automatically Signing Your App</a></li>
+  	<li><a href="#sign-auto">Automatically Signing Your App</a></li>
   </ol>
 </li>
 <li><a href="#studio">Signing Your App with Android Studio</a></li>
@@ -60,14 +60,14 @@
 you run or debug your project from the IDE.</p>
 
 <p>You can run and debug an app signed in debug mode on the emulator and on devices connected
-to your development manchine through USB, but you cannot distribute an app signed in debug
+to your development machine through USB, but you cannot distribute an app signed in debug
 mode.</p>
 
 <p>By default, the <em>debug</em> configuration uses a debug keystore, with a known
 password and a default key with a known password.
-The debug keystore is located in $HOME/.android/debug.keystore, and is created if not present.
-
-The debug build type is set to use this debug <code>SigningConfig</code> automatically. </p>
+The debug keystore is located in <code>$HOME/.android/debug.keystore</code>, and
+is created if not present.
+The debug build type is set to use this debug <code>SigningConfig</code> automatically.</p>
 
 <p>For more information about how to build and run apps in debug mode, see
 <a href="{@docRoot}tools/building/index.html">Building and Running</a>.</p>
@@ -82,7 +82,8 @@
 <li><em>Create a private key.</em> A <strong>private key</strong> represents the entity to
 be identified with the app, such as a person or a company.</li>
 <li><p>Add the signing configuration to the build file for the <code>app</code> module:</p>
-        <p><pre>
+
+<pre>
 ...
 android {
     ...
@@ -103,12 +104,13 @@
     }
 }
 ...
-</pre></p>
+</pre>
     </li>
 <li>Invoke the <code>assembleRelease</code> build task from Android Studio.</li>
 </ol>
 
-<p>The package in <code>app/build/apk/app-release.apk</code> is now signed with your release key.</p>
+<p>The package in <code>app/build/apk/app-release.apk</code> is now signed with your release
+key.</p>
 
 <p class="note"><strong>Note:</strong> Including the passwords for your release key and keystore
 inside the build file is not a good security practice. Alternatively, you can configure the build
@@ -156,26 +158,40 @@
 
 <ol>
 <li>On the menu bar, click <strong>Build</strong> &gt; <strong>Generate Signed APK</strong>.</li>
-<li><p>On the <em>Generate Signed APK Wizard</em> window, click <strong>Create new</strong> to create
-a new keystore.</p><p>If you already have a keystore, go to step 4.</p></li>
+<li><p>On the <em>Generate Signed APK Wizard</em> window, click <strong>Create new</strong> to
+create a new keystore.</p>
+<p>If you already have a keystore, go to step 4.</p></li>
 <li><p>On the <em>New Key Store</em> window, provide the required information as shown
-in figure 1.</p><p>Your key should be valid for at least 25 years, so you can sign app updates
+in figure 1.</p>
+<p>Your key should be valid for at least 25 years, so you can sign app updates
 with the same key through the lifespan of your app.</p>
 <img src="{@docRoot}images/tools/signstudio2.png" alt=""
      width="416" height="364" style="margin-top:15px"/>
 <p class="img-caption"><strong>Figure 1</strong>. Create a new keystore in Android Studio.</p>
 </li>
-<li><p>On the <em>Generate Signed APK Wizard</em> window, select a keystore, a private key, and enter
-the passwords for both. Then click <strong>Next</strong>.</p>
+<li><p>On the <em>Generate Signed APK Wizard</em> window, select a keystore, a private key, and
+enter the passwords for both. Then click <strong>Next</strong>.</p>
 <img src="{@docRoot}images/tools/signstudio1.png" alt=""
      width="349" height="232" style="margin-top:15px"/>
 <p class="img-caption"><strong>Figure 2</strong>. Select a private key in Android Studio.</p>
 </li>
-<li><p>On the next window, select a destination for the signed APK and click
-<strong>Finish</strong>.</p>
+<li><p>
+  On the next window, select a destination for the signed APK(s), select the
+  build type, (if applicable) choose the product flavor(s), and click
+  <strong>Finish</strong>.</p>
 <img src="{@docRoot}images/tools/signstudio3.png" alt=""
      width="350" height="175" style="margin-top:15px"/>
-<p class="img-caption"><strong>Figure 3</strong>. Generate a signed APK in Android Studio.</p>
+<p class="img-caption">
+  <strong>Figure 3</strong>. Generate signed APKs for the selected product
+  flavors.
+</p>
+<p class="note">
+  <strong>Note:</strong> If your project uses product flavors, you can select
+  multiple product flavors while holding down the <strong>Ctrl</strong> key on
+  Windown/Linux, or the <strong>Command</strong> key on Mac OSX. Android Studio
+  will generate a separate APK for each selected product flavor.
+</p>
+
 </li>
 </ol>
 
@@ -193,14 +209,16 @@
 more than one), and enter the required information.</p>
 <img src="{@docRoot}images/tools/signstudio10.png" alt=""
      width="623" height="372" style="margin-top:15px"/>
-<p class="img-caption"><strong>Figure 4</strong>. Create a signing configuration in Android Studio.</p>
+<p class="img-caption"><strong>Figure 4</strong>. Create a signing configuration in Android
+Studio.</p>
 </li>
 <li>Click on the <strong>Build Types</strong> tab.</li>
 <li>Select the <strong>release</strong> build.</li>
 <li><p>Under <em>Signing Config</em>, select the signing configuration you just created.</p>
 <img src="{@docRoot}images/tools/signstudio11.png" alt=""
      width="623" height="372" style="margin-top:15px"/>
-<p class="img-caption"><strong>Figure 5</strong>. Select a signing configuration in Android Studio.</p>
+<p class="img-caption"><strong>Figure 5</strong>. Select a signing configuration in Android
+Studio.</p>
 </li>
 <li>Click <strong>OK</strong>.</li>
 </ol>
@@ -299,9 +317,10 @@
 <ol>
 <li>
   <p>Generate a private key using
-  <code><a href="http://docs.oracle.com/javase/6/docs/technotes/tools/solaris/keytool.html">keytool</a></code>.
+  <code><a href="http://docs.oracle.com/javase/6/docs/technotes/tools/solaris/keytool.html"
+    >keytool</a></code>.
   For example:</p>
-<pre>
+<pre class="no-pretty-print">
 $ keytool -genkey -v -keystore my-release-key.keystore
 -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
 </pre>
@@ -317,7 +336,7 @@
   <p>Sign your app with your private key using
   <code><a href="http://docs.oracle.com/javase/6/docs/technotes/tools/windows/jarsigner.html">jarsigner</a></code>:
   </p>
-<pre>
+<pre class="no-pretty-print">
 $ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1
 -keystore my-release-key.keystore my_application.apk alias_name
 </pre>
@@ -326,14 +345,14 @@
 </li>
 <li style="margin-top:18px">
   <p>Verify that your APK is signed. For example:</p>
-<pre>
+<pre class="no-pretty-print">
 $ jarsigner -verify -verbose -certs my_application.apk
 </pre>
 </li>
 <li style="margin-top:18px">
   <p>Align the final APK package using
   <code><a href="{@docRoot}tools/help/zipalign.html">zipalign</a></code>.</p>
-<pre>
+<pre class="no-pretty-print">
 $ zipalign -v 4 your_project_name-unaligned.apk your_project_name.apk
 </pre>
   <p><code>zipalign</code> ensures that all uncompressed data starts with a particular byte
diff --git a/docs/html/tools/publishing/preparing.jd b/docs/html/tools/publishing/preparing.jd
index 0b61aa7..3acaedc 100644
--- a/docs/html/tools/publishing/preparing.jd
+++ b/docs/html/tools/publishing/preparing.jd
@@ -1,4 +1,5 @@
 page.title=Preparing for Release
+page.metaDescription=Developer documentation on how to build the signed, release-ready APK. This process is the same for all Android apps.
 @jd:body
 
 <div id="qv-wrapper">
diff --git a/docs/html/tools/publishing/publishing_overview.jd b/docs/html/tools/publishing/publishing_overview.jd
index e42b2fb..167758a 100644
--- a/docs/html/tools/publishing/publishing_overview.jd
+++ b/docs/html/tools/publishing/publishing_overview.jd
@@ -1,4 +1,5 @@
 page.title=Publishing Overview
+page.metaDescription=Start here for an overview of publishing options for Android apps.
 @jd:body
 
 <div id="qv-wrapper">
diff --git a/docs/html/tools/publishing/versioning.jd b/docs/html/tools/publishing/versioning.jd
index 4af6f30..9908d81 100644
--- a/docs/html/tools/publishing/versioning.jd
+++ b/docs/html/tools/publishing/versioning.jd
@@ -80,6 +80,13 @@
 strong resemblance to the application release version that is visible to the
 user (see <code>android:versionName</code>, below). Applications and publishing
 services should not display this version value to users.</p>
+
+<p class="warning">
+    <strong>Warning:</strong> The greatest possible value for <code>
+    android:versionCode</code> is <code>MAXINT</code> (2147483647). However, if
+    you upload an app with this value, your app can't ever be updated.
+</p>
+
 </li>
 <li><code>android:versionName</code> &mdash; A string value that represents the
 release version of the application code, as it should be shown to users.
diff --git a/docs/html/tools/revisions/build-tools.jd b/docs/html/tools/revisions/build-tools.jd
old mode 100644
new mode 100755
index 1912bb2..5d9ba05
--- a/docs/html/tools/revisions/build-tools.jd
+++ b/docs/html/tools/revisions/build-tools.jd
@@ -26,31 +26,7 @@
 
 <p>To use a specific version of the Build Tools in your application project:</p>
 
-<div class="toggle-content closed">
-<p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)">
-  <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
-  />Using Eclipse</a></p>
 
-  <div class="toggle-content-toggleme">
-  <ol>
-    <li>In the root folder of your application project, find the {@code project.properties}
-      file.</li>
-    <li>Open the file and specify the Build Tools version by adding a {@code buildtools} property
-      on a separate line:
-<pre>
-sdk.buildtools=17.0.0
-</pre>
-    </li>
-  </ol>
-  </div>
-</div>
-
-<div class="toggle-content closed">
-<p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)">
-  <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
-  />Using Android Studio</a></p>
-
-  <div class="toggle-content-toggleme">
   <ol>
     <li>In the root folder of your application project, find the {@code build.gradle}
       file.</li>
@@ -65,8 +41,6 @@
 </pre>
     </li>
   </ol>
-  </div>
-</div>
 
 
 <h2 id="notes">Revisions</h2>
@@ -77,7 +51,48 @@
 
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
+      alt=""/>Build Tools, Revision 23.0.3</a> <em>(March 2016)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <ul>
+      <li>Fix issues in the <a href="{@docRoot}guide/topics/renderscript/compute.html">RenderScript</a>
+        Support Library on arm64 devices.</li>
+      <li>Fix issues in the <a href="{@docRoot}guide/topics/renderscript/compute.html">RenderScript</a>
+        Support Library on certain Jelly Bean devices.</li>
+      <li>Support <code>renderscriptTargetAPI 21+</code> when using Android
+        Plugin for Gradle, Revision 2.1.0 and above .</li>
+    </ul>
+  </div>
+</div>
+
+<div class="toggle-content opened">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
+      alt=""/>Build Tools, Revision 23.0.2</a> <em>(November 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <ul>
+      <li>Improved the merging performance of the <code>dx</code> tool.</li>
+      <li>Fixed issues in the <a href="{@docRoot}guide/topics/renderscript/compute.html">RenderScript</a>
+        compiler for Windows.</li>
+    </ul>
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
+      alt=""/>Build Tools, Revision 23.0.1</a> <em>(October 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <p>Fixed issues in the RenderScript tools.</p>
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 23.0.0</a> <em>(August 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -88,7 +103,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 22.0.1</a> <em>(March 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -101,7 +116,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 22.0.0</a> <em>(March 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -112,7 +127,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 21.1.2</a> <em>(February 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -123,7 +138,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 21.1.1</a> <em>(November 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -134,7 +149,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 21.1</a> <em>(October 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -146,7 +161,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 21.0.2</a> <em>(October 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -157,7 +172,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 21.0.1</a> <em>(October 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -168,7 +183,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 21.0.0</a> <em>(October 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -191,7 +206,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 20.0.0</a> <em>(June 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -210,7 +225,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 19.1.0</a> <em>(May 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -230,7 +245,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 19.0.3</a> <em>(March 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -242,7 +257,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 19.0.2</a> <em>(February 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -269,7 +284,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 19.0.1</a> <em>(December 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -292,7 +307,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 19</a> <em>(October 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -304,7 +319,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 18.1.1</a> <em>(September 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -316,7 +331,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 18.1.0</a> <em>(September 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -328,7 +343,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 18.0.1</a> <em>(July 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -340,7 +355,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 17</a> <em>(May 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
diff --git a/docs/html/tools/revisions/gradle-plugin.jd b/docs/html/tools/revisions/gradle-plugin.jd
index 17e6d79..540bbcd 100644
--- a/docs/html/tools/revisions/gradle-plugin.jd
+++ b/docs/html/tools/revisions/gradle-plugin.jd
@@ -36,10 +36,145 @@
 <p>For a summary of known issues in Android Plugin for Gradle, see <a
 href="http://tools.android.com/knownissues">http://tools.android.com/knownissues</a>.</p>
 
-
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
+      alt=""/>Android Plugin for Gradle, Revision 1.5.0</a> <em>(November 2015)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <dl>
+    <dt>Dependencies:</dt>
+
+    <dd>
+      <ul>
+        <li>Gradle 2.2.1 or higher.</li>
+        <li>Build Tools 21.1.1 or higher.</li>
+      </ul>
+    </dd>
+
+    <dt>General Notes:</dt>
+    <dd>
+      <ul>
+      <li>Integrated the Data Binding Plugin into the Android Plugin for Gradle. To enable it, add
+        the following code to each per-project <code>build.gradle</code> file that uses the
+        plugin:</li>
+<pre>
+android {
+    dataBinding {
+        enabled = true
+    }
+}
+</pre>
+      <li>Added a new <a href="http://google.github.io/android-gradle-dsl/javadoc/1.5/" class="external-link">Transform API</a>
+       to allow third-party plugins to manipulate compiled <code>.class</code> files before they’re
+       converted to <code>.dex</code> files. The Transform API simplifies injecting custom class
+       manipulations while offering more flexibility regarding what you can manipulate. To insert a
+       transform into a build, create a new class implementing one of the <code>Transform</code>
+       interfaces, and register it with <code>android.registerTransform(theTransform)</code> or
+       <code>android.registerTransform(theTransform, dependencies)</code>. There’s no need to
+       wire tasks together. Note the following about the Transform API:</li>
+       <ul>
+        <li>A transform can apply to one or more of the following: the current project, subprojects,
+          and external libraries.</li>
+          <li>A transform must be registered globally, which applies them to all variants.</li>
+          <li>Internal code processing, through the Java Code Coverage Library (JaCoCo), ProGuard,
+            and MultiDex, now uses the Transform API. However, the Java Android Compiler Kit
+            (Jack) doesn’t use this API: only the <code>javac/dx</code> code path does.</li>
+          <li>Gradle executes the transforms in this order: JaCoCo, third-party plugins, ProGuard.
+          The execution order for third-party plugins matches the order in which the transforms are
+          added by the third party plugins; third-party plugin developers can't control the execution
+          order of the transforms through an API.</li>
+      </ul>
+      <li>Deprecated the <code>dex</code> getter from the <code>ApplicationVariant</code> class.
+        You can't access the <code>Dex</code> task through the variant API anymore because it’s now
+        accomplished through a transform. There's
+        currently no replacement for controlling the dex process.</li>
+      <li>Fixed incremental support for assets.</li>
+      <li>Improved MultiDex support by making it available for test projects, and
+        tests now automatically have the <code>com.android.support:multidex-instrumentation</code>
+        dependency.</li>
+      <li>Added the ability to properly fail a Gradle build and report the underlying error cause
+        when the Gradle build invokes asynchronous tasks and there’s a failure in the worker
+        process.</li>
+      <li>Added support for configuring a specific Application Binary Interface (ABI) in variants
+        that contain multiple ABIs.</li>
+      <li>Added support for a comma-separated list of device serial numbers for the
+        <code>ANDROID_SERIAL</code> environment variable when installing or running tests.</li>
+      <li>Fixed an installation failure on devices running Android 5.0 (API level 20) and higher
+        when the APK name contains a space.</li>
+      <li>Fixed various issues related to the Android Asset Packaging Tool (AAPT) error output.</li>
+      <li>Added JaCoCo incremental instrumentation support for faster incremental builds. The
+        Android Plugin for Gradle now invokes the JaCoCo instrumenter directly. To force a newer
+        version of the JaCoCo instrumenter, you need to add it as a build script dependency.</li>
+      <li>Fixed JaCoCo support so it ignores files that aren’t classes.</li>
+      <li>Added vector drawable support for generating PNGs at build time for backward-compatibility.
+        Android Plugin for Gradle generates PNGs for every vector drawable found in a resource
+        directory that doesn’t specify an API version or specifies an
+        <code>android:minSdkVersion</code> attribute of 20 or lower in the
+        <code>&lt;uses-sdk&gt;</code> element in the app manifest. You can set PNG densities by
+        using the <code>generatedDensities</code> property in the <code>defaultConfig</code> or
+        <code>productFlavor</code> sections of a <code>build.gradle</code> file.</li>
+      <li>Added sharing of the mockable <code>android.jar</code>, which the plugin generates only
+        once and uses for unit testing. Multiple modules, such as <code>app</code> and
+        <code>lib</code>, now share it. Delete <code>$rootDir/build</code> to regenerate it. </li>
+      <li>Changed the processing of Java resources to occur before the obfuscation tasks instead of
+        during the packaging of the APK. This change allows the obfuscation tasks to have a chance
+        to adapt the Java resources following packages obfuscation.</li>
+      <li>Fixed an issue with using Java Native Interface (JNI) code in the experimental library
+        plugin.</li>
+      <li>Added the ability to set the platform version separately from the
+        <code>android:compileSdkVersion</code> attribute in the experimental library
+        plugin.</li>
+     </ul>
+    </dd>
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
+      alt=""/>Android Plugin for Gradle, Revision 1.3.1</a> <em>(August 2015)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <dl>
+    <dt>Dependencies:</dt>
+
+    <dd>
+      <ul>
+        <li>Gradle 2.2.1 or higher.</li>
+        <li>Build Tools 21.1.1 or higher.</li>
+      </ul>
+    </dd>
+
+    <dt>General Notes:</dt>
+    <dd>
+      <ul>
+      <li>Fixed the <a href="{@docRoot}tools/help/zipalign.html">ZipAlign</a> task to properly
+        consume the output of the previous task when using a customized filename. </li>
+      <li>Fixed <a href="{@docRoot}guide/topics/renderscript/compute.html">Renderscript</a>
+        packaging with the <a href="{@docRoot}tools/sdk/ndk/index.html">NDK</a>. </li>
+      <li>Maintained support for the <code>createDebugCoverageReport</code> build task. </li>
+      <li>Fixed support for customized use of the <code>archiveBaseName</code> property
+        in the <code>build.gradle</code> build> file. </li>
+      <li>Fixed the <code>Invalid ResourceType</code>
+        <a href="{@docRoot}tools/help/lint.html">lint</a> warning caused by parameter method
+        annotation lookup when running
+        <a href="{@docRoot}tools/help/lint.html">lint</a> outside of Android Studio.</li>
+     </ul>
+    </dd>
+  </div>
+</div>
+
+
+
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Plugin for Gradle, Revision 1.3.0</a> <em>(July 2015)</em>
   </p>
 
@@ -139,7 +274,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Plugin for Gradle, Revision 1.2.0</a> <em>(April 2015)</em>
   </p>
 
@@ -206,7 +341,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Plugin for Gradle, Revision 1.1.3</a> <em>(March 2015)</em>
   </p>
 
@@ -236,7 +371,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Plugin for Gradle, Revision 1.1.2</a> <em>(February 2015)</em>
   </p>
 
@@ -268,7 +403,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Plugin for Gradle, Revision 1.1.1</a> <em>(February 2015)</em>
   </p>
 
@@ -305,7 +440,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Plugin for Gradle, Revision 1.1.0</a> <em>(February 2015)</em>
   </p>
 
@@ -375,7 +510,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Plugin for Gradle, Revision 1.0.1</a> <em>(January 2015)</em>
   </p>
 
@@ -416,7 +551,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Plugin for Gradle, Revision 1.0.0</a> <em>(December 2014)</em>
   </p>
 
@@ -449,9 +584,9 @@
 
 <h2>Updating the Android Plugin for Gradle Version</h2>
 <p>The Android Plugin for Gradle version is specified in the
-<strong>File &gt; Project Structure</strong> menu or the project-level
+<strong>File &gt; Project Structure &gt; Project</strong> menu and the project-level
 <code>build.gradle</code> file. The plugin version applies to all modules built in that
-Android Studio project. This example updates the Android Plugin for Gradle to version 1.1.0:
+Android Studio project. This example sets the Android Plugin for Gradle to version 1.1.0 from the <code>build.gradle</code> file:
 <pre>
 ...
      dependencies {
@@ -465,8 +600,8 @@
 version numbers. Using this feature can cause unexpected version updates and difficulty
 resolving version differences. </p>
 
-<p>If you're building with Gradle but using not Android Studio, the build process downloads the
-latest Android Plugin for Gradle plugin when it runs. </p>
+<p>If you're building with Gradle but not using Android Studio, the build process downloads the
+latest Android Plugin for Gradle when it runs. </p>
 
 
 
@@ -474,8 +609,8 @@
 
 <p>Android Studio requires Gradle version 2.2.1 or later. To view and
 update the Gradle version, edit the Gradle distribution reference in the
-<code>gradle/wrapper/gradle-wrapper.properties</code> file. This example shows the
-Android Plugin for Gradle version set to 2.2.1.</p>
+<code>gradle/wrapper/gradle-wrapper.properties</code> file. This example sets the
+Gradle version to 2.2.1.</p>
 
 <pre>
 ...
@@ -483,14 +618,6 @@
 ...
 </pre>
 
-
-
-
 <p>For more details about the supported Android Plugin for Gradle properties and syntax, click
 the link to the
-<a href="{@docRoot}tools/building/plugin-for-gradle.html">Plugin Language Reference</a>.</p>
-
-
-
-
-
+<a href="{@docRoot}tools/building/plugin-for-gradle.html">Plugin Language Reference</a>.</p>
\ No newline at end of file
diff --git a/docs/html/tools/revisions/platforms.jd b/docs/html/tools/revisions/platforms.jd
index 61bfcbb..b3941ae 100644
--- a/docs/html/tools/revisions/platforms.jd
+++ b/docs/html/tools/revisions/platforms.jd
@@ -26,7 +26,7 @@
 version, instead read the highlights in the <a href="{@docRoot}about/index.html">About</a>
 section.</p>
 
-<p>In order to compile your application against a particular version of Android, you must use the
+<p>To compile your application against a particular version of Android, you must use the
 <a href="{@docRoot}tools/help/sdk-manager.html">SDK Manager</a> to download and install the SDK
 Platform for that release. If you want to test your application on an emulator, you must also
 download at least one System Image for that Android version.</p>
@@ -58,7 +58,25 @@
 
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-opened.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_up.png"
+class="toggle-content-img" alt="" />Revision 2</a> <em>(November 2015)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <p>Fixed bugs in the layout rendering library used by Android Studio.</p>
+    <p>Dependencies:</p>
+    <ul>
+      <li>Android SDK Platform-tools r23 or higher is required.</li>
+      <li>Android SDK Tools 24.3.4 or higher is required.</li>
+    </ul>
+  </div>
+
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(August 2015)</em>
   </p>
 
@@ -80,7 +98,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(March 2015)</em>
   </p>
 
@@ -102,7 +120,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 2</a> <em>(December 2014)</em>
   </p>
 
@@ -118,7 +136,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(October 2014)</em>
   </p>
 
@@ -150,7 +168,7 @@
 
 <div class="toggle-content open">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 2</a> <em>(October 2014)</em>
   </p>
 
@@ -167,7 +185,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(June 2014)</em>
   </p>
 
@@ -196,7 +214,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 2</a> <em>(December 2013)</em>
   </p>
 
@@ -215,7 +233,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(October 2013)</em>
   </p>
 
@@ -238,7 +256,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 4</a> <em>(March 2014)</em>
   </p>
 
@@ -253,7 +271,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 3</a> <em>(February 2014)</em>
   </p>
 
@@ -268,7 +286,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 2</a> <em>(December 2013)</em>
   </p>
 
@@ -282,7 +300,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(October 2013)</em>
   </p>
 
@@ -303,7 +321,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 2</a> <em>(August 2013)</em>
   </p>
 
@@ -322,7 +340,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(July 2013)</em>
   </p>
 
@@ -342,7 +360,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 3</a> <em>(September 2013)</em>
   </p>
 
@@ -357,7 +375,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 2</a> <em>(August 2013)</em>
   </p>
 
@@ -372,7 +390,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(July 2013)</em>
   </p>
 
@@ -393,7 +411,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 2</a> <em>(February 2013)</em>
   </p>
 
@@ -411,7 +429,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(November 2012)</em>
   </p>
 
@@ -499,7 +517,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 3</a> <em>(October 2012)</em>
   </p>
 
@@ -517,7 +535,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 2</a> <em>(July 2012)</em>
   </p>
 
@@ -535,7 +553,7 @@
 <div class="toggle-content closed" >
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(June 2012)</em>
   </p>
 
@@ -612,7 +630,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 3</a> <em>(March 2012)</em>
   </p>
 
@@ -633,7 +651,7 @@
 <div class="toggle-content closed" >
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 2</a> <em>(January 2012)</em>
   </p>
 
@@ -651,7 +669,7 @@
 <div class="toggle-content closed" >
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Revision 1</a> <em>(December 2011)</em>
   </p>
 
@@ -721,7 +739,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android 4.0, Revision 2</a> <em>(December 2011)</em>
   </p>
 
@@ -737,7 +755,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android 4.0, Revision 1</a> <em>(October 2011)</em>
   </p>
 
@@ -814,7 +832,7 @@
 <div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android 3.2, Revision 1</a> <em>(July 2011)</em>
   </p>
 
@@ -868,7 +886,7 @@
 <div class="toggle-content closed">
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android 3.1, Revision 3</a> <em>(July 2011)</em>
 </p>
 
@@ -896,7 +914,7 @@
 <div class="toggle-content closed" >
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android 3.1, Revision 2</a> <em>(May 2011)</em>
 </p>
 
@@ -922,7 +940,7 @@
 <div class="toggle-content closed">
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android 3.1, Revision 1</a> <em>(May 2011)</em>
 </p>
 
@@ -971,7 +989,7 @@
 <div class="toggle-content closed" >
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android 3.0, Revision 2</a> <em>(July 2011)</em>
 </p>
 
@@ -998,7 +1016,7 @@
 <div class="toggle-content closed">
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
        alt="" />Android 3.0, Revision 1</a> <em>(February 2011)</em>
 </p>
 
@@ -1049,7 +1067,7 @@
 <div class="toggle-content closed" >
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
        alt="" />Android 2.3.4, Revision 1</a> <em>(May 2011)</em>
 </p>
 
@@ -1109,7 +1127,7 @@
 <div class="toggle-content closed" >
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android 2.3.3, Revision 2</a> <em>(July 2011)</em>
 </p>
 
@@ -1136,7 +1154,7 @@
 <div class="toggle-content closed" >
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android 2.3.3, Revision 1</a> <em>(February 2011)</em>
 </p>
 
@@ -1196,7 +1214,7 @@
 <div class="toggle-content closed" >
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
        alt="" />Android 2.3, Revision 1</a> <em>(December 2010)</em>
 </p>
 
@@ -1252,7 +1270,7 @@
 <div class="toggle-content closed" >
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android {@sdkPlatformVersion}, Revision 3</a> <em>(July 2011)</em>
 </p>
 
@@ -1279,7 +1297,7 @@
 <div class="toggle-content closed" >
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android {@sdkPlatformVersion}, Revision 2</a> <em>(July 2010)</em>
 </p>
 
@@ -1307,7 +1325,7 @@
 <div class="toggle-content closed">
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png"
+  <img src="{@docRoot}assets/images/styles/disclosure_down.png"
 class="toggle-content-img" alt="" />Android {@sdkPlatformVersion}, Revision 1</a> <em>(May 2010)</em></p>
 
 <div class="toggle-content-toggleme">
diff --git a/docs/html/tools/revisions/studio.jd b/docs/html/tools/revisions/studio.jd
old mode 100644
new mode 100755
index 298b173..a65c164
--- a/docs/html/tools/revisions/studio.jd
+++ b/docs/html/tools/revisions/studio.jd
@@ -39,10 +39,158 @@
 <p>The sections below provide notes about successive releases of
 Android Studio, as denoted by revision number. </p>
 
-
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
+      alt=""/>Android Studio v1.5.1</a> <em>(December 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <p>Fixes and enhancements:</p>
+    <ul>
+    <li>Fixed a rendering failure issue in the Layout Editor.
+      <a href="http://b.android.com/194612">Issue: 194612</a> </li>
+    <li>Added the ability to vary <code>description</code> manifest attributes by configuration.
+      <a href="http://b.android.com/194705">Issue: 194705</a>
+    </li>
+     <li>Improved the contrast of the Android Studio Darcula appearance theme in Vector Asset Studio.
+      <a href="http://b.android.com/191819">Issue: 191819</a>
+    </li>
+    <li>Added <em>Help</em> button support to Vector Asset Studio.
+    </li>
+    <li>Added support for the <code>%</code> operator for data binding. <a href="http://b.android.com/194045">Issue: 194045</a>
+      </li>
+    <li>Fixed a case where launching an app for debugging resulted in the debugger connecting to the
+      wrong device. <a href="http://b.android.com/195167">Issue: 195167</a>
+    </li>
+    <li>Fixed a null pointer exception that could occur when attempting to run an app in
+      certain scenarios.
+    </li>
+  </ul>
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
+      alt=""/>Android Studio v1.5.0</a> <em>(November 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <p>Fixes and enhancements:</p>
+    <ul>
+    <li>Added new Memory Monitor analysis abilities to Android Monitor. When you view an HPROF file
+      captured from this monitor, the display is now more helpful so you can more quickly locate
+      problems, such as memory leaks. To use this monitor, click <strong>Android Monitor</strong> at
+      the bottom of the main window. In Android Monitor, click the <strong>Memory</strong> tab. While
+      the monitor is running, click the <strong>Dump Java Heap</strong> icon, and then click
+      <strong>Captures</strong> in the main window and double-click the file to view it. Click
+      <em>Capture Analysis</em> on the right. (The
+      Android Device Monitor can't be running at the same time as Android Monitor.)</li>
+    <li>Added new deep link and app link support. The Code Editor can automatically create an
+      intent filter for deep linking in the <code>AndroidManifest.xml</code> file. It can also
+      generate code to help you integrate with the
+      <a href="http://developers.google.com/app-indexing/android/publish" class="external-link">App Indexing API</a>
+      in an activity in a Java file. A deep link testing feature
+      helps you verify that a specified deep link can launch an app. In the <strong>General</strong>
+      tab of the <em>Run/Debug Configurations</em> dialog, you can specify deep link launch
+      options. You can also test App Indexing API calls in an activity by using the Android Monitor
+      <strong>logcat</strong> display. The Android <code>lint</code> tool now has warnings for
+      certain issues involving deep links and the App Indexing API.
+    </li>
+     <li>Added the ability to use short names when code-completing custom views in the Code Editor.
+    </li>
+    <li>Added support for more {@link android.graphics.drawable.VectorDrawable} elements to
+      <a href="{@docRoot}tools/help/vector-asset-studio.html">Vector Asset Studio</a>
+      for backward-compatibility. Vector Asset Studio can use these elements to convert vector
+      drawables into PNG raster images to use with Android 4.4 (API level 20) and lower.
+    </li>
+    <li>Added new <code>lint</code> checks for Android TV and Android Auto to give you
+      immediate, actionable feedback in Android Studio, along with several quick fixes. For example,
+      for Android TV, it can report and provide a quick fix for permissions, unsupported hardware,
+      <code>uses-feature</code> element, and missing banner issues. For Android Auto, it can
+      validate the correct usage in the descriptor file referred from your
+      <code>AndroidManifest.xml</code> file, report if there isn't an intent filter for the
+      <code>MediaBrowserService</code> class, and identify certain voice actions issues.
+      </li>
+    <li>Added new <code>lint</code> checks for insecure broadcast receivers,
+    <code>SSLCertificateSocketFactory</code> and <code>HostnameVerifier</code> class uses, and
+    <code>File.setReadable()</code> and <code>File.setWritable()</code> calls. It also detects
+    invalid manifest resource lookups, especially for resources that vary by configuration.
+    </li>
+    <li>Fixed a number of stability issues.
+    </li>
+  </ul>
+  </div>
+</div>
+
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
+      alt=""/>Android Studio v1.4.1</a> <em>(October 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <p>Fixes and enhancements:</p>
+  <ul>
+    <li>Fixed a Gradle model caching issue that could lead to excessive Gradle syncing when the IDE
+    was restarted.
+    </li>
+    <li>Fixed a native debugging deadlock issue.
+    </li>
+    <li>Fixed an issue blocking users of the Subversion 1.9 version control system.
+    </li>
+    <li>Fixed a <em>Device Chooser</em> dialog problem where after connecting a device that was
+    unauthorized you could no longer select the emulator. <a href="http://b.android.com/189658">Issue: 189658</a>
+    </li>
+    <li>Fixed incorrect translation error reporting for locales that have a region qualifier and a
+    translation in the region (but not in the base locale). <a href="http://b.android.com/188577">Issue: 188577</a>
+    </li>
+    <li>Fixed a deadlock issue in the Theme Editor related to its interaction with the Layout
+    Editor. <a href="http://b.android.com/188070">Issue: 188070</a>
+    </li>
+    <li>Fixed a Theme Editor reload and edit conflict causing attributes to not properly update.
+    <a href="http://b.android.com/187726">Issue: 187726</a>
+    </li>
+    <li>Improved Theme Editor performance.
+    </li>
+    <li>Fixed an issue where the <code>android:required</code> attribute was ignored in the manifest.
+    <a href="http://b.android.com/187665">Issue: 187665</a>
+    </li>
+  </ul>
+</div>
+</div>
+
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
+      alt=""/>Android Studio v1.4.0</a> <em>(September 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <p>Fixes and enhancements:</p>
+  <ul>
+    <li>Added the <a href="{@docRoot}tools/help/vector-asset-studio.html">Vector Asset Studio</a>
+      tool for importing vector graphics, such as material icons
+      and SVG files. To use this tool, in the Android view of the Project window, right-click the
+      <strong>res</strong> folder and select <strong>New</strong> &gt; <strong>Vector Asset</strong>.
+    </li>
+    <li>Added new Android Monitor functions, GPU and Network. To use these monitors, click
+      <strong>Android Monitor</strong> at the bottom of the main window. The Android Device Monitor
+      can't be running at the same time as Android Monitor.
+    </li>
+    <li>Added an early preview of the new Theme Editor. To use this feature, select
+      <strong>Tools</strong> &gt; <strong>Android</strong> &gt; <strong>Theme Editor</strong>.
+    </li>
+    <li>Updated the Android templates for the Design Support Library. Templates now include support
+      for the Material Design specification, as well as the <code>appcompat</code> Support Library
+      for backwards compatibility.
+    </li>
+  </ul>
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v1.3.2</a> <em>(August 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -65,7 +213,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v1.3.1</a> <em>(August 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -85,7 +233,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v1.3.0</a> <em>(July 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -106,7 +254,7 @@
       <li>Integrated the <a href="{@docRoot}tools/help/sdk-manager.html">SDK Manager</a>
         into Android Studio to simplify package and tools access and provide update notifications.
         <p class="note"><strong>Note:</strong> The standalone SDK Manager is still available from
-        the command line, but is recommended for use with only Eclipse ADT and standalone SDK
+        the command line, but is recommended for use only with standalone SDK
         installations. </p> </li>
       <li>Added the <code>finger</code> command in the emulator console to simulate
         <a href="{@docRoot}tools/studio/studio-features.html#finger-print">fingerprint</a>
@@ -142,7 +290,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v1.2.2</a> <em>(June 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -156,7 +304,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v1.2.1</a> <em>(May 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -171,7 +319,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v1.2.0</a> <em>(April 2015)</em>
   </p>
 
@@ -218,7 +366,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v1.1.0</a> <em>(February 2015)</em>
   </p>
 
@@ -246,7 +394,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v1.0.1</a> <em>(December 2014)</em>
   </p>
 
@@ -269,7 +417,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v1.0</a> <em>(December 2014)</em>
   </p>
 
@@ -281,7 +429,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v0.8.14</a> <em>(October 2014)</em>
   </p>
 
@@ -294,7 +442,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v0.8.6</a> <em>(August 2014)</em>
   </p>
 
@@ -305,7 +453,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v0.8.0</a> <em>(June 2014)</em>
   </p>
 
@@ -317,7 +465,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v0.5.2</a> <em>(May 2014)</em>
   </p>
 
@@ -330,7 +478,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v0.4.6</a> <em>(March 2014)</em>
   </p>
 
@@ -343,7 +491,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v0.4.2</a> <em>(Jan 2014)</em>
   </p>
 
@@ -356,7 +504,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v0.3.2</a> <em>(Oct 2013)</em>
   </p>
 
@@ -369,7 +517,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v0.2.x</a> <em>(July 2013)</em>
   </p>
 
@@ -430,7 +578,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>Android Studio v0.1.x</a> <em>(May 2013)</em>
   </p>
 
diff --git a/docs/html/tools/sdk/eclipse-adt.jd b/docs/html/tools/sdk/eclipse-adt.jd
index 5a9d9d0..d5f581f 100644
--- a/docs/html/tools/sdk/eclipse-adt.jd
+++ b/docs/html/tools/sdk/eclipse-adt.jd
@@ -52,7 +52,7 @@
 
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
       alt=""/>ADT 23.0.7</a> <em>(August 2015)</em>
   </p>
 
@@ -85,7 +85,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 23.0.6</a> <em>(March 2015)</em>
   </p>
 
@@ -119,7 +119,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 23.0.4</a> <em>(October 2014)</em>
   </p>
 
@@ -153,7 +153,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 23.0.3</a> <em>(August 2014)</em>
   </p>
 
@@ -189,7 +189,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 23.0.2</a> <em>(July 2014)</em>
   </p>
 
@@ -224,7 +224,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 23.0.0</a> <em>(June 2014)</em>
   </p>
 
@@ -256,7 +256,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.6.3</a> <em>(April 2014)</em>
   </p>
 
@@ -296,7 +296,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.6.2</a> <em>(March 2014)</em>
   </p>
 
@@ -341,7 +341,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.6.1</a> <em>(March 2014)</em>
   </p>
 
@@ -389,7 +389,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.6.0</a> <em>(March 2014)</em>
   </p>
 
@@ -453,7 +453,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.3.0</a> <em>(October 2013)</em>
   </p>
 
@@ -490,7 +490,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.2.1</a> <em>(September 2013)</em>
   </p>
 
@@ -524,7 +524,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.2</a> <em>(September 2013)</em>
   </p>
 
@@ -562,7 +562,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.0.5</a> <em>(July 2013)</em>
   </p>
 
@@ -597,7 +597,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.0.4</a> <em>(July 2013)</em>
   </p>
 
@@ -634,7 +634,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.0.1</a> <em>(May 2013)</em>
   </p>
 
@@ -671,7 +671,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 22.0.0</a> <em>(May 2013)</em>
   </p>
 
@@ -715,7 +715,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 21.1.0</a> <em>(February 2013)</em>
   </p>
 
@@ -773,7 +773,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 21.0.1</a> <em>(December 2012)</em>
   </p>
 
@@ -893,7 +893,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 21.0.0</a> <em>(November 2012)</em>
   </p>
 
@@ -1015,7 +1015,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 20.0.3</a> <em>(August 2012)</em>
   </p>
 
@@ -1050,7 +1050,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 20.0.2</a> <em>(July 2012)</em>
   </p>
 
@@ -1086,7 +1086,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 20.0.1</a> <em>(July 2012)</em>
   </p>
 
@@ -1128,7 +1128,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 20.0.0</a> <em>(June 2012)</em>
   </p>
 
@@ -1252,7 +1252,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 18.0.0</a> <em>(April 2012)</em>
   </p>
 
@@ -1288,7 +1288,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 17.0.0</a> <em>(March 2012)</em>
   </p>
 
@@ -1391,7 +1391,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 16.0.1</a> <em>(December 2011)</em>
   </p>
 
@@ -1426,7 +1426,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 16.0.0</a> <em>(December 2011)</em>
   </p>
 
@@ -1459,7 +1459,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 15.0.1</a> <em>(November 2011)</em>
   </p>
 
@@ -1494,7 +1494,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 15.0.0</a> <em>(October 2011)</em>
   </p>
 
@@ -1527,7 +1527,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 14.0.0</a> <em>(October 2011)</em>
   </p>
 
@@ -1647,7 +1647,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 12.0.0</a> <em>(July 2011)</em>
   </p>
 
@@ -1701,7 +1701,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 11.0.0</a> <em>(June 2011)</em>
   </p>
 
@@ -1837,7 +1837,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 10.0.1</a> <em>(March 2011)</em>
   </p>
 
@@ -1868,7 +1868,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 10.0.0</a> <em>(February 2011)</em>
   </p>
 
@@ -1918,7 +1918,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 9.0.0</a> <em>(January 2011)</em>
   </p>
 
@@ -2027,7 +2027,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 8.0.1</a> <em>(December 2010)</em>
   </p>
 
@@ -2056,7 +2056,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 8.0.0</a> <em>(December 2010)</em>
   </p>
 
@@ -2103,7 +2103,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 0.9.9</a> <em>(September 2010)</em>
   </p>
 
@@ -2131,7 +2131,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 0.9.8</a> <em>(September 2010)</em>
   </p>
 
@@ -2180,7 +2180,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 0.9.7</a> <em>(May 2010)</em>
   </p>
 
@@ -2206,7 +2206,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 0.9.6</a> <em>(March 2010)</em>
   </p>
 
@@ -2275,7 +2275,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 0.9.5</a> <em>(December 2009)</em>
   </p>
 
@@ -2305,7 +2305,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>ADT 0.9.4</a> <em>(October 2009)</em>
   </p>
 
diff --git a/docs/html/tools/sdk/tools-notes.jd b/docs/html/tools/sdk/tools-notes.jd
index a43c969..1625716 100644
--- a/docs/html/tools/sdk/tools-notes.jd
+++ b/docs/html/tools/sdk/tools-notes.jd
@@ -21,12 +21,95 @@
 <p>For a summary of all known issues in SDK Tools, see <a
 href="http://tools.android.com/knownissues">http://tools.android.com/knownissues</a>.</p>
 
-
-
-
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
+      alt=""/>SDK Platform-tools, Revision 23.1.0</a> <em>(December 2015)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <dl>
+        <dt>General Notes:</dt>
+    <dd>
+      <ul>
+        <li>Changed Linux requirements for Android SDK Platform-tools revision 23.1.0 and later:
+          it now requires 64-bit Linux.</li>
+      </ul>
+    </dd>
+
+
+
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 24.4.1</a> <em>(October 2015)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <dl>
+    <dt>Dependencies:</dt>
+
+    <dd>
+      <ul>
+        <li>Android SDK Platform-tools revision 23 or later.</li>
+      </ul>
+    </dd>
+
+    <dt>General Notes:</dt>
+    <dd>
+      <ul>
+        <li>Fixed a problem where the emulator title bar was hidden off screen.
+        (<a href="http://code.google.com/p/android/issues/detail?id=178344">Issue 178344</a>)</li>
+        <li>Enabled the emulator to resize the user data partition by including e2fsprogs binaries.
+        (<a href="http://code.google.com/p/android/issues/detail?id=189030">Issue 189030</a>)</li>
+        <li>Fixed a regression on the 32-bit Windows OS where the emulator fails to boot Android 6.0
+        (API level 23) through Android 5.0 (API level 21) system images.
+        (<a href="http://code.google.com/p/android/issues/detail?id=188326">Issue 188326</a>)</li>
+      </ul>
+    </dd>
+
+  </div>
+</div>
+
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 24.4.0</a> <em>(October 2015)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <dl>
+    <dt>Dependencies:</dt>
+
+    <dd>
+      <ul>
+        <li>Android SDK Platform-tools revision 23 or later.</li>
+      </ul>
+    </dd>
+
+    <dt>General Notes:</dt>
+    <dd>
+      <ul>
+        <li>Updated the emulator so it can display an upgrade notification when a new version is
+        available.</li>
+        <li>Added the ability for the emulator to send basic crash reports. You <em>must</em> opt-in
+        through Android Studio preferences to enable crash report transmission.</li>
+      </ul>
+    </dd>
+
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 24.3.4</a> <em>(August 2015)</em>
   </p>
 
@@ -78,7 +161,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 24.3.3</a> <em>(June 2015)</em>
   </p>
 
@@ -106,7 +189,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 24.3.2</a> <em>(June 2015)</em>
   </p>
 
@@ -133,7 +216,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 24.3.1</a> <em>(June 2015)</em>
   </p>
 
@@ -163,7 +246,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 24.3.0</a> <em>(June 2015)</em>
   </p>
 
@@ -194,7 +277,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 24.2.0</a> <em>(May 2015)</em>
   </p>
 
@@ -221,7 +304,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 24.1.2</a> <em>(February 2015)</em>
   </p>
 
@@ -250,7 +333,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 24.0.2</a> <em>(December 2014)</em>
   </p>
 
@@ -277,7 +360,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 24.0.1</a> <em>(December 2014)</em>
   </p>
 
@@ -304,7 +387,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 24.0.0</a> <em>(December 2014)</em>
   </p>
 
@@ -332,7 +415,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 23.0.5</a> <em>(October 2014)</em>
   </p>
 
@@ -364,7 +447,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 23.0.4</a> <em>(October 2014)</em>
   </p>
 
@@ -396,7 +479,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 23.0.2</a> <em>(July 2014)</em>
   </p>
 
@@ -430,7 +513,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 23.0.0</a> <em>(June 2014)</em>
   </p>
 
@@ -461,7 +544,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.6.4</a> <em>(June 2014)</em>
   </p>
 
@@ -494,7 +577,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.6.3</a> <em>(April 2014)</em>
   </p>
 
@@ -534,7 +617,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.6.2</a> <em>(March 2014)</em>
   </p>
 
@@ -569,7 +652,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.6.1</a> <em>(March 2014)</em>
   </p>
 
@@ -617,7 +700,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.6</a> <em>(March 2014)</em>
   </p>
 
@@ -700,7 +783,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.3</a> <em>(October 2013)</em>
   </p>
 
@@ -732,7 +815,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.2.1</a> <em>(September 2013)</em>
   </p>
 
@@ -766,7 +849,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.2</a> <em>(September 2013)</em>
   </p>
 
@@ -814,7 +897,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.0.5</a> <em>(July 2013)</em>
   </p>
 
@@ -854,7 +937,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.0.4</a> <em>(July 2013)</em>
   </p>
 
@@ -890,7 +973,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.0.1</a> <em>(May 2013)</em>
   </p>
 
@@ -931,7 +1014,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22</a> <em>(May 2013)</em>
   </p>
 
@@ -986,7 +1069,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 21.1</a> <em>(February 2013)</em>
   </p>
 
@@ -1021,7 +1104,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 21.0.1</a> <em>(December 2012)</em>
   </p>
 
@@ -1124,7 +1207,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 21</a> <em>(November 2012)</em>
   </p>
 
@@ -1210,7 +1293,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 20.0.3</a> <em>(August 2012)</em>
   </p>
 
@@ -1241,7 +1324,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 20.0.1</a> <em>(July 2012)</em>
   </p>
 
@@ -1278,7 +1361,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 20</a> <em>(June 2012)</em>
   </p>
 
@@ -1352,7 +1435,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 19</a> <em>(April 2012)</em>
   </p>
 
@@ -1386,7 +1469,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 18</a> <em>(April 2012)</em>
   </p>
 
@@ -1428,7 +1511,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 17</a> <em>(March 2012)</em>
   </p>
 
@@ -1532,7 +1615,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 16</a> <em>(December 2011)</em>
   </p>
 
@@ -1582,7 +1665,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 15</a> <em>(October 2011)</em>
   </p>
 
@@ -1630,7 +1713,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 14</a> <em>(October 2011)</em>
   </p>
 
@@ -1685,7 +1768,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 13</a> <em>(September 2011)</em>
   </p>
 
@@ -1716,7 +1799,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 12</a> <em>(July 2011)</em>
   </p>
 
@@ -1744,7 +1827,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 11</a> <em>(May 2011)</em>
   </p>
 
@@ -1772,7 +1855,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 10</a> <em>(February 2011)</em>
   </p>
 
@@ -1803,7 +1886,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 9</a> <em>(January 2011)</em>
   </p>
 
@@ -1862,7 +1945,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 8</a> <em>(December 2010)</em>
   </p>
 
@@ -1930,7 +2013,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 7</a> <em>(September 2010)</em>
   </p>
 
@@ -1964,7 +2047,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 6</a> <em>(May 2010)</em>
   </p>
 
@@ -1995,7 +2078,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 5</a> <em>(March 2010)</em>
   </p>
 
@@ -2044,7 +2127,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 4</a> <em>(December 2009)</em>
   </p>
 
@@ -2094,7 +2177,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 3</a> <em>(October 2009)</em>
   </p>
 
diff --git a/docs/html/tools/studio/code-tools.jd b/docs/html/tools/studio/code-tools.jd
new file mode 100644
index 0000000..4033bfc
--- /dev/null
+++ b/docs/html/tools/studio/code-tools.jd
@@ -0,0 +1,28 @@
+page.title=Android Studio Code Tools
+
+@jd:body
+
+<p>
+  Android Studio provides a number of coding features to assist with writing and building your
+  app. These tools help you write code faster and improve quality.
+</p>
+
+<dl>
+  <dt><a href="{@docRoot}tools/debugging/improving-w-lint.html">Lint</a></dt>
+    <dd>The Lint tool is a static code analysis tool that checks your Android
+    project source files for potential bugs and optimization improvements.</dd>
+
+  <dt><a href="{@docRoot}tools/debugging/annotations.html">Code Annotations</a></dt>
+    <dd>Annotations help you improve code readability and improve code inspector output,
+      by allowing you to more clearly define method parameter requirements.
+    </dd>
+
+  <dt><a href="{@docRoot}tools/help/app-link-indexing.html">Deep Link and App Indexing</a></dt>
+    <dd>These features help you add deep links, app indexing, and search functionality to your
+      apps. These features can make it easier to find content in an installed app, drive more
+      traffic to your app, discover which app content users view the most, and attract new users.
+    </dd>
+
+</dl>
+
+
diff --git a/docs/html/tools/studio/index.jd b/docs/html/tools/studio/index.jd
index 43cb2fe..b3ed82d 100644
--- a/docs/html/tools/studio/index.jd
+++ b/docs/html/tools/studio/index.jd
@@ -1,6 +1,6 @@
 page.title=Android Studio Overview
 page.image=images/cards/card-android-studio-overview_16x9_2x.jpg
-page.metaDescription=Learn about the official IDE for Android.
+page.metaDescription=The basics of working with Android Studio, from projects to build and performance.
 page.tags=studio,sdk,tools,firstapp
 @jd:body
 
@@ -9,139 +9,105 @@
 
     <h2>In this document</h2>
     <ol>
-      <li><a href="#project-structure">Project and File Structure</a></li>
-      <li><a href="#build-system">Android Build System</a></li>
-      <li><a href="#debug-perf">Debug and Performance</a></li>
-
-
+      <li><a href="#project-structure">Project Structure</a></li>
+      <li><a href="#build-system">Gradle Build System</a></li>
+      <li><a href="#debug-perf">Debug and Profile Tools</a></li>
     </ol>
 
-  <h2>See also</h2>
-  <ol>
-    <li><a class="external-link" href="http://confluence.jetbrains.com/display/IntelliJIDEA/FAQ+on+Migrating+to+IntelliJ+IDEA">IntelliJ FAQ on migrating to IntelliJ IDEA</a></li>
-  </ol>
+
+<a class="button" href="{@docRoot}sdk/index.html" style="margin:15px">
+  Get Android Studio
+</a>
 
 </div>
 </div>
 
 
-<p>Android Studio is the official IDE for Android application development,
-based on <a class="external-link" href="https://www.jetbrains.com/idea/" target="_blank">IntelliJ IDEA</a>.
-On top of the capabilities you expect from IntelliJ,
-Android Studio offers:</p>
+<p>Android Studio is the official IDE for Android app development, based on
+<a class="external-link" href="https://www.jetbrains.com/idea/" target=
+"_blank">IntelliJ IDEA</a>. On top of IntelliJ's powerful code editor and
+developer tools, Android Studio offers even more features that enhance your
+productivity when building Android apps, such as:</p>
+
 
 <ul>
-  <li>Flexible Gradle-based build system</li>
-  <li>Build variants and multiple <code>apk</code> file generation</li>
+  <li>A flexible Gradle-based build system</li>
+  <li>Build variants and multiple APK file generation</li>
   <li>Code templates to help you build common app features</li>
-  <li>Rich layout editor with support for drag and drop theme editing</li>
-  <li>{@code lint} tools to catch performance, usability, version compatibility, and other problems</li>
-  <li>ProGuard and app-signing capabilities</li>
+  <li>A rich layout editor with support for drag and drop theme editing</li>
+  <li>Lint tools to catch performance, usability, version compatibility, and other problems</li>
+  <li>Code shrinking with ProGuard and resource shrinking with Gradle</li>
   <li>Built-in support for
   <a href="http://developers.google.com/cloud/devtools/android_studio_templates/">Google Cloud Platform</a>,
   making it easy to integrate Google Cloud Messaging and App Engine</li>
-  <li>And much more</li>
 </ul>
 
+<p>This page provides an introduction to basic Android Studio features. For
+more detailed guides to using Android Studio, start by browsing pages in the
+<a href="{@docRoot}tools/workflow/index.html">Workflow</a> section.</p>
 
-<p>If you're new to Android Studio or the IntelliJ IDEA interface, this
-page provides an introduction to some key Android
-Studio features.</p>
-
-<p>For specific Android Studio how-to documentation, see the pages in the <a href=
-"{@docRoot}tools/workflow/index.html">Workflow</a> section, such as <a href=
-"{@docRoot}sdk/installing/create-project.html">Managing Projects from Android Studio</a> and
-<a href="{@docRoot}tools/building/building-studio.html">Building and Running from Android
-Studio</a>. For a summary of the latest changes to Android Studio, see the
-<a href="{@docRoot}tools/revisions/studio.html">Android Studio Release Notes</a>.</p>
+<p>For a summary of the latest changes, see the <a href=
+"{@docRoot}tools/revisions/studio.html">Android Studio Release Notes</a>.</p>
 
 
 
+<h2 id="project-structure">Project Structure</h2>
 
-<h2 id="project-structure">Project and File Structure</h2>
+<div class="figure" style="width:230px">
+<img src="{@docRoot}images/tools/studio/studio-project-files.png" width="230" />
+<p class="img-caption"><strong>Figure 1.</strong> The project files in Android
+view.</p>
+</div>
 
-<h3 id="project-view"><em>Android</em> project view</h3>
-<p>By default, Android Studio displays your project files in the <em>Android</em> project view. This
-view shows a flattened version of your project's structure that provides quick access to the key
-source files of Android projects and helps you work with the
-<a href="{@docRoot}sdk/installing/studio-build.html">Gradle-based build system</a>.
-The <em>Android</em> project view:</p>
+<p>Each project in Android Studio contains one or more modules with source code
+files and resource files. Different types of modules include:</p>
 
 <ul>
-  <li>Shows the most important source directories at the top level of the module hierarchy.</li>
-  <li>Groups the build files for all modules in a common folder.</li>
-  <li>Groups all the manifest files for each module in a common folder.</li>
-  <li>Shows resource files from all Gradle source sets.</li>
-  <li>Groups resource files for different locales, orientations, and screen types in a single
-  group per resource type.</li>
+<li>Android app modules</li>
+<li>Test modules</li>
+<li>Library modules</li>
+<li>App Engine modules</li>
 </ul>
 
-     <img src="{@docRoot}images/tools/projectview01.png" />
-     <p class="img-caption"><strong>Figure 1.</strong> Show the Android project view.</p>
-     <img src="{@docRoot}images/tools/studio-projectview_scripts.png"  />
-     <p class="img-caption"><strong>Figure 2.</strong> Show project build files.</p>
+<p>By default, Android Studio displays your project files in the
+<em>Android</em> project view, as shown in figure 1.
+This view is organized by modules to
+provide quick access to the key source files of your
+project.</p>
 
-<p>The <em>Android</em> project view shows all the build files at the top level of the project
-hierarchy under <strong>Gradle Scripts</strong>. Each project module appears as a folder at the
-top level of the project hierarchy and contains these four elements at the top level:</p>
-
+<p>All the build files are visible at the top level
+under <strong>Gradle Scripts</strong> and each app module
+contains the following three elements:</p></p>
 <ul>
-  <li><code>java/</code> - Source files for the module.</li>
-  <li><code>manifests/</code> - Manifest files for the module.</li>
-  <li><code>res/</code> - Resource files for the module.</li>
-  <li><code>Gradle Scripts/</code> - Gradle build and property files.</li>
+  <li><b>manifests</b>: Manifest files.</li>
+  <li><b>java</b>: Source code files.</li>
+  <li><b>res</b>: Resource files.</li>
 </ul>
 
-<p>For example, <em>Android</em> project view groups all the instances of the
-<code>ic_launcher.png</code> resource for different screen densities under the same element.</p>
+<p>The Android project structure on disk differs
+from this flattened representation. To see the actual file structure of the
+project, select <strong>Project</strong> from the <strong>Project</strong>
+drop-down (in figure 1, it's showing as <strong>Android</strong>).</p>
 
-<p class="note"><strong>Note:</strong> The project structure on disk differs from this flattened
-representation. To switch to back to the segregated project view, select <strong>Project</strong>
-from the <strong>Project</strong> drop-down. </p>
-
-
-
-<h3 id="other-views">Other Android Studio views</h3>
-<p>When you use the <em>Project</em> view in Android Studio, you
-should notice that the project structure appears different than you may be used to in Eclipse. Each
-instance of Android Studio contains a project with one or more application modules. Each
-application module folder contains the complete source sets for that module, including
-{@code src/main/} and {@code src/androidTest/} directories, resources, build
-file and the Android manifest. For the most part, you will need to modify the files under each
-module's {@code src/main/} directory for source code updates, the gradle.build file for build
-specification and the files under {@code src/androidTest/} directory for test case creation.
-
-    <p>  <img src="{@docRoot}images/tools/studio-project-layout.png" alt="" /></p>
-    <p>  <class="img-caption"><strong>Figure 3.</strong> View Android Studio <em>Project</em>
-         structure.</p>
-
-<p>You can also customize the view of the project files to focus on specific aspects of your app
-development: </p>
-
-<ul>
-  <li><em>Packages</em> </li>
-  <li><em>Project Files</em> </li>
-  <li><em>Scratches</em> </li>
-  <li><em>Problems</em> </li>
-  <li><em>Production</em> </li>
-  <li><em>Tests</em> </li>
-</ul>
-
-<p>For example, selecting the <strong>Problems</strong> view of your project displays links to the
-source files containing any recognized coding and syntax errors, such as missing an XML element
-closing tag in a layout file.<p>
+<p>You can also customize the view of the project files to focus on specific
+aspects of your app development. For example, selecting the
+<strong>Problems</strong> view of your project displays links to the source
+files containing any recognized coding and syntax errors, such as missing an
+XML element closing tag in a layout file.</p>
 
 <p>For more information, see
 <a class="external-link" href="http://confluence.jetbrains.com/display/IntelliJIDEA/Project+Organization">IntelliJ project organization</a>
 and <a href="{@docRoot}tools/projects/index.html">Managing Projects</a>.</p>
 
 
+<h2 id="build-system">Gradle Build System</h2>
 
-<h2 id="build-system">Android Build System</h2>
-<p>The Android build system is the toolkit you use to build, test, run and package
-your apps. This build system replaces the Ant system used with Eclipse ADT. It can run as an
-integrated tool from the Android Studio menu and independently from the command line. You can use
-the features of the build system to:</p>
+<p>Android Studio uses Gradle as the foundation of the build system, with
+more Android-specific capabilities provided by the <a
+href="{@docRoot}tools/revisions/gradle-plugin.html">Android Plugin for
+Gradle</a>. This build system
+runs as an integrated tool from the Android Studio menu and independently from
+the command line. You can use the features of the build system to:</p>
 
 <ul>
     <li>Customize, configure, and extend the build process.</li>
@@ -150,39 +116,30 @@
     <li>Reuse code and resources across source sets.</li>
 </ul>
 
-<p>The flexibility of the Android build system enables you to achieve all of this without
+<p>The flexibility of Gradle enables you to achieve all of this without
 modifying your app's core source files. To build an Android Studio project, see
-<a href="{@docRoot}tools/building/building-studio.html">Building and Running from Android Studio</a>.
-To configure custom build settings in an Android Studio project, see
-<a href="{@docRoot}tools/building/configuring-gradle.html">Configuring Gradle Builds</a>.</p>
+<a href="{@docRoot}tools/building/building-studio.html">Building and Running
+from Android Studio</a>. To configure custom build settings in an Android
+Studio project, see <a href=
+"{@docRoot}tools/building/configuring-gradle.html">Configuring Gradle
+Builds</a>.</p>
 
 
 
-<h2 id="debug-perf">Debug and Performance</h2>
-<p>Android Studio provides a number of improvements to assist you in debugging and improving the
-performance of your code, including an improved virtual device management, inline debugging, and
+
+<h2 id="debug-perf">Debug and Profile Tools</h2>
+
+<p>Android Studio assists you in debugging and improving the
+performance of your code, including inline debugging and
 performance analysis tools.</p>
 
-<h3>Android Virtual Device (AVD) Manager</h3>
-<p>AVD Manager has updated screens with links to help you select the most popular device
-configurations, screen sizes and resolutions for your app previews.</p>
-Click the <strong>Android Virtual Device Manager</strong>
-<img src="{@docRoot}images/tools/avd-manager-studio.png"
-style="vertical-align:bottom;margin:0;height:19px" /> in the toolbar to open it and create
-new virtual devices for running your app in the emulator.</p>
-
-<p>The AVD Manager comes with emulators for Nexus 6 and Nexus 9 devices and also supports
-creating custom Android device skins based on specific emulator properties and assigning those
-skins to hardware profiles. Android Studio installs the Intel&#174; x86 Hardware Accelerated Execution
-Manager (HAXM) emulator accelerator and creates a default emulator for quick app prototyping.</p>
-
-<p>For more information, see <a href="{@docRoot}tools/devices/managing-avds.html">Managing AVDs</a>.</p>
-
 
 <h3 id="inline-debug">Inline debugging</h3>
+
 <p>Use inline debugging to enhance your code walk-throughs in the debugger view
-with inline verification of references, expressions, and variable values. Inline debug information
-includes: </p>
+with inline verification of references, expressions, and variable values.
+Inline debug information includes:</p>
+
 <ul>
  <li>Inline variable values</li>
  <li>Referring objects that reference a selected object </li>
@@ -203,8 +160,9 @@
 runtime window to launch the Android runtime window. Click the <strong>Memory</strong> or
 <strong>CPU</strong> tab. </p>
 
-<img src="{@docRoot}images/tools/studio-memory-monitor.png" srcset="{@docRoot}images/tools/studio-memory-monitor_2x.png 2x" width"635" height="171" alt="" />
-    <p class="img-caption"><strong>Figure 4.</strong> Monitor memory and CPU usage.</p>
+<img src="{@docRoot}images/tools/studio-memory-monitor.png"
+srcset="{@docRoot}images/tools/studio-memory-monitor2x.png 2x" width"635" height="171" alt="" />
+    <p class="img-caption"><strong>Figure 2.</strong> Monitor memory and CPU usage.</p>
 
 <h4 id="heap-dump">Heap dump </h4>
 <p>When you're monitoring memory usage in Android Studio you can, at the same time, initiate
@@ -213,7 +171,7 @@
 help you track memory usage and find memory leaks. </p>
 
 <img src="{@docRoot}images/tools/studio-hprof-viewer.png" alt="" />
-    <p class="img-caption"><strong>Figure 5.</strong> HPROF viewer with heap dump.</p>
+    <p class="img-caption"><strong>Figure 3.</strong> HPROF viewer with heap dump.</p>
 
 <p>To create a snapshot of the Android app heap memory, click the
 Dump Java Heap icon (<img src="{@docRoot}images/tools/studio-dump-heap-icon.png" style="vertical-align:bottom;margin:0;height:17px"/>)
@@ -233,21 +191,11 @@
 calls related to those actions to optimize your app's performance and memory use. </p>
 
 <img src="{@docRoot}images/tools/studio-allocation-tracker.png" alt="" />
-    <p class="img-caption"><strong>Figure 6.</strong> Allocation tracker.</p>
+    <p class="img-caption"><strong>Figure 4.</strong> Allocation tracker.</p>
 
-<p>Perform the following steps to track and analyze allocations: </p>
-<ol>
-  <li>Click the Start/Stop Allocation Tracking icon
-    (<img src="{@docRoot}images/tools/studio-allocation-tracker-icon.png" style="vertical-align:bottom;margin:0;height:17px"/>) in the
-    <a href="#mem-cpu">Memory Monitor</a>. Android Studio starts tracking memory allocations.</li>
-  <li>Perform the tasks whose mallocs you want to track. </li> 
-  <li>Click the Start/Stop Allocation Tracking icon again. Android Studio stops tracking mallocs
-    and saves the data to a file named <code>Allocation-yyyy.mm.dd-hh.mm.ss.alloc</code>. The
-    resulting file appears in the <em>Captures</em> tab. </li>
-  <li>Double-click the file to open it in the allocation viewer.
-   <p>The allocation viewer allows you to view and analyze the allocations your app made while
-   running. </p> </li>
-</ol>
+<p>For information about tracking and analyzing allocations, see
+  <a href="{@docRoot}/tools/help/am-memory.html#tracking">Memory Monitor</a>.
+</p>
 
 
 <h3>Data file access</h3>
@@ -324,17 +272,6 @@
 The <em>Inspections Scope</em> dialog appears so you can specify the desired inspection profile and scope.</p>
 
 
-
-<h4>Running inspections from the command line</h4>
-<p>You can also run {@code lint} inspections from the command line in your SDK directory. </p>
-<pre>
-sdk$ lint [flags] <project directories>
-</pre>
-
-<p class="note"><strong>Note:</strong> The {@code lint} <strong>--show</strong> and <strong>--list</strong>
-flags can be used to display the available issues and explanations. </p>
-
-
 <p>For more information, see
 <a href="{@docRoot}tools/debugging/improving-w-lint.html">Improving Your Code with {@code lint}</a>
 and <a href="{@docRoot}tools/help/lint.html">lint tool</a>.</p>
@@ -359,7 +296,7 @@
  <strong>Library dependency</strong>.</li>
  <li>In the <em>Choose Library Dependency</em> dialog, select <code>support-annotations</code> and
  click <strong>Ok</strong>. </li>
-</ol> 
+</ol>
 
 <p>The <code>build.gradle</code> file is updated with the <code>support-annotations</code>
 dependency.</p>
@@ -432,7 +369,7 @@
 <p>Run <strong>Analyze &gt; Inspect Code</strong> to validate the configured annotations. </p>
 
 <p>For a complete list of the supported annotations, either use the auto-complete feature to display
-the available options for the <code>import android.support.annotation.</code> statement or
+the available options for the <code>import android.support.annotation</code> statement or
 view the contents of the
 {@link android.support.annotation Support-Annotations}
 library. </p>
@@ -440,30 +377,6 @@
 <p>For more details about Android annotations, see
 <a href="{@docRoot}tools/debugging/annotations.html">Improving Code Inspection with Annotations</a>.
 
-
-
-<h3>Dynamic layout preview</h3>
-<p>Android Studio allows you to work with layouts in both a <em>Design View</em> </p>
-<p><img src="{@docRoot}images/tools/studio-helloworld-design.png" alt="" />
-</p>
-    <p class="img-caption"><strong>Figure 6.</strong> Hello World App with Design View.</p>
-
-<p>and a <em>Text View</em>. </p>
-
-    <p><img src="{@docRoot}images/tools/studio-helloworld-text.png" alt="" />
-    <pclass="img-caption"><strong>Figure 7.</strong> Hello World App with text view.</p>
-
-<p>Easily select and preview layout changes for different device images, display
-densities, UI modes, locales, and Android versions (multi-API version rendering).
-    <p><img src="{@docRoot}images/tools/studio-api-version-rendering.png" /></p>
-    <p class="img-caption"><strong>Figure 8.</strong> Multi-API version rendering.</p>
-
-
-<p>From the Design View, you can drag and drop elements from the Palette to the Preview or
-Component Tree. The Text View allows you to directly edit the XML settings, while previewing
-the device display. </p>
-
-
 <h3>Log messages</h3>
 <p>When you build and run your app with Android Studio, you can view adb and device log messages
 (logcat) by clicking <strong>Android</strong> at the bottom of the window.</p>
diff --git a/docs/html/tools/studio/studio-features.jd b/docs/html/tools/studio/studio-features.jd
index 44d6985..080a124 100644
--- a/docs/html/tools/studio/studio-features.jd
+++ b/docs/html/tools/studio/studio-features.jd
@@ -1,6 +1,10 @@
-page.title=Features
-page.metaDescription=Learn about the Android Studio features.
-page.tags=studio, features
+page.title=Android Studio Features
+page.image=images/cards/card-studio-modules_crop_2x.png
+page.metaDescription=A quick look at Android Studio features that make your work faster.
+page.tags=studio, tools, sdk
+meta.tags="studio"
+
+
 @jd:body
 
 <div id="qv-wrapper">
@@ -42,24 +46,24 @@
 
 
 <h2 id="trans-editor">Translations Editor</h2>
-<p>Multi-language support is enhanced with the Translations Editor plugin so you can easily add
-a variety of locales to the app's translation file. With
-<a class="external-link" href="https://tools.ietf.org/html/bcp47">BCP 47</a> support, the editor
-combines language and
-region codes into a single selection for targeted localizations. Color codes indicate whether a
-locale is complete or still missing string translations. </p>
+<p>If your application supports multiple languages, you need to properly manage your
+translated string resources. The Translations Editor lets you view and update all your string
+resources in one convenient place.</p>
 
-<p>To access the Translations Editor, open a <code>strings.xml</code> file and click the
-<strong>Open Editor</strong> link, or click the globe icon
-(<img src="{@docRoot}images/tools/studio-globe-icon.png" style="vertical-align:bottom;margin:0;height:19px" />) in the Design layout view.  </p>
+<p>
+Use the Translations Editor to view all your translated resources, modify translations, and add
+new locales. You can provide default values for your resources and mark resources as
+untranslatable. The Translations Editor also marks resources with missing translations in red,
+and provides a link to a page where you can upload resource files and order translation services.
+</p>
 
+<p>For more details on the Translations Editor, see
+<a href="{@docRoot}tools/help/translations-editor.html">Translations Editor</a>.</p>
 
-    <img src="{@docRoot}images/tools/studio-translationeditoropen.png" />
-    <p class="img-caption"><strong>Figure 1.</strong> Add locales and strings in the
+    <img src="{@docRoot}images/tools/studio-translations-editor.png" />
+    <p class="img-caption"><strong>Figure 1.</strong> Manage locales and strings in the
     Translations Editor.</p>
 
-
-
 <h2 id="git-samples">Android Code Samples on GitHub</h2>
 <p>Clicking <strong>Import Samples</strong> from the <strong>File</strong> menu or <em>Welcome</em>
 page provides seamless access to Google code samples on GitHub.</p>
diff --git a/docs/html/tools/studio/ui-tools.jd b/docs/html/tools/studio/ui-tools.jd
new file mode 100644
index 0000000..2d25de6
--- /dev/null
+++ b/docs/html/tools/studio/ui-tools.jd
@@ -0,0 +1,32 @@
+page.title=Android Studio User Interface Tools
+
+@jd:body
+
+<p>
+  Android Studio provides a number of user interface tools to assist you with creating layouts,
+  implementing style themes, and building graphic or text resources for your app.
+</p>
+
+<dl>
+
+   <dt><a href="{@docRoot}sdk/installing/studio-layout.html">Layout Editor</a></dt>
+        <dd>Drag and drop user interface elements to build layouts for your app.
+        </dd>
+
+   <dt><a href="{@docRoot}tools/help/theme-editor.html">Theme Editor</a></dt>
+        <dd>Build re-usable user interface styles for layouts and widgets in your app.
+        </dd>
+
+    <dt><a href="{@docRoot}tools/help/translations-editor.html">Translations Editor</a></dt>
+        <dd>View and update all your string resource translations in one convenient place.
+        </dd>
+
+    <dt><a href="{@docRoot}tools/help/vector-asset-studio.html">Vector Asset Studio</a></dt>
+        <dd>Add material icons and import Scalable Vector Graphic (SVG) files into your
+        Android Studio project as a drawable resource.</dd>
+
+    <dt><a href="{@docRoot}tools/help/image-asset-studio.html">Image Asset Studio</a></dt>
+      <dd>Generate custom icons for your Android applications from existing images,
+        clipart, or text.</dd>
+
+</dl>
diff --git a/docs/html/tools/support-library/features.jd b/docs/html/tools/support-library/features.jd
old mode 100644
new mode 100755
index f03de77..fa5a8b4
--- a/docs/html/tools/support-library/features.jd
+++ b/docs/html/tools/support-library/features.jd
@@ -38,6 +38,8 @@
         Support Library Revisions</a></li>
       <li><a href="{@docRoot}tools/support-library/setup.html">
         Support Library Setup</a></li>
+      <li><a href="{@docRoot}tools/testing-support-library/index.html">
+        Testing Support Library</a></li>
     </ol>
 
   </div>
@@ -140,7 +142,7 @@
 </p>
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/v4/} directory. The library does not contain user
+{@code &lt;sdk&gt;/extras/android/support/v4/} directory. The library does not contain user
 interface resources. To include it in your application project, follow the instructions for
 <a href="{@docRoot}tools/support-library/setup.html#libs-without-res">Adding libraries without
 resources</a>.</p>
@@ -151,7 +153,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:support-v4:21.0.0
+com.android.support:support-v4:23.2.1
 </pre>
 
 
@@ -167,7 +169,7 @@
 
 <p>
   After you download the Android Support Libraries, this library is located in the
-  {@code <sdk>/extras/android/support/multidex/} directory. The library does not contain
+  {@code &lt;sdk&gt;/extras/android/support/multidex/} directory. The library does not contain
   user interface resources. To include it in your application project, follow the instructions
   for
   <a href= "{@docRoot}tools/support-library/setup.html#libs-without-res">Adding libraries without
@@ -202,8 +204,7 @@
 </p>
 
 <p class="note"><strong>Note:</strong>
-  This library depends on the v4 Support Library. If you are using Ant or Eclipse, make sure
-  you include the v4 Support Library as part of this library's classpath.
+  This library depends on the v4 Support Library.
 </p>
 
 <p>Here are a few of the key classes included in the v7 appcompat library:</p>
@@ -228,7 +229,7 @@
 </ul>
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/v7/appcompat/} directory. The library contains user
+{@code &lt;sdk&gt;/extras/android/support/v7/appcompat/} directory. The library contains user
 interface resources. To include it in your application project, follow the instructions for
 <a href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries with
 resources</a>.</p>
@@ -236,7 +237,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:appcompat-v7:21.0.0
+com.android.support:appcompat-v7:23.2.1
 </pre>
 
 
@@ -249,7 +250,7 @@
 implementations, and are used extensively in layouts for TV apps.</p>
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/v7/cardview/} directory. The library contains user interface
+{@code &lt;sdk&gt;/extras/android/support/v7/cardview/} directory. The library contains user interface
 resources. To include it in your application project, follow the instructions
 for <a href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding
 libraries with resources</a>.</p>
@@ -257,7 +258,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:cardview-v7:21.0.0
+com.android.support:cardview-v7:23.2.1
 </pre>
 
 
@@ -270,7 +271,7 @@
 For detailed information about the v7 gridlayout library APIs, see the
 {@link android.support.v7.widget android.support.v7.widget} package in the API reference.</p>
 
-<p>This library is located in the {@code <sdk>/extras/android/support/v7/gridlayout/}
+<p>This library is located in the {@code &lt;sdk&gt;/extras/android/support/v7/gridlayout/}
   directory . The library contains user
   interface resources. To include it in your application project, follow the instructions for
   <a href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries with
@@ -279,7 +280,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:gridlayout-v7:21.0.0
+com.android.support:gridlayout-v7:23.2.1
 </pre>
 
 
@@ -306,16 +307,14 @@
 libraries in your build path when setting up your project. For more information
 on how to set up your project, follow the instructions in <a
 href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries
-with resources</a>. If you are developing in Eclipse/ADT, make sure to include
-the <code>android-support-v7-mediarouter.jar</code>, <code>android-support-v7-appcompat.jar</code>,
-and <code>android-support-v7-palette.jar</code> files.</p>
+with resources</a>.</p>
 
-<p>If you are using Android Studio, all you need to do is specify the Gradle build
-script dependency identifier <code>com.android.support:support-v7-mediarouter:&lt;revision&gt;</code>,
+<p>The Gradle builder script dependency identifier is as follows:
+<code>com.android.support:support-v7-mediarouter:&lt;revision&gt;</code>,
 where "&lt;revision&gt;" is the minimum revision at which the library is available. For example:</p>
 
 <pre>
-com.android.support:mediarouter-v7:21.0.0
+com.android.support:mediarouter-v7:23.2.1
 </pre>
 
 <p class="caution">The v7 mediarouter library APIs introduced in Support Library
@@ -333,7 +332,7 @@
 title card.</p>
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/v7/palette/} directory. The library does not contain
+{@code &lt;sdk&gt;/extras/android/support/v7/palette/} directory. The library does not contain
 user interface resources. To include it in your application project, follow the instructions for
 <a href="{@docRoot}tools/support-library/setup.html#libs-without-res">Adding libraries without
 resources</a>.</p>
@@ -341,7 +340,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:palette-v7:21.0.0
+com.android.support:palette-v7:23.2.1
 </pre>
 
 
@@ -350,12 +349,12 @@
 
 <p>The recyclerview library adds the {@link android.support.v7.widget.RecyclerView}
 class. This class provides support for the
-<a href="{@docRoot}training/material/lists-cards#RecyclerView">RecyclerView
-widget</a>, a view for efficiently displaying large data sets by providing a
+<a href="{@docRoot}training/material/lists-cards.html">RecyclerView</a>
+widget, a view for efficiently displaying large data sets by providing a
 limited window of data items.</p>
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/v7/recyclerview/} directory. The library contains
+{@code &lt;sdk&gt;/extras/android/support/v7/recyclerview/} directory. The library contains
 user interface resources. To include it in your application project, follow the instructions
 for <a href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding
 libraries with resources</a>.</p>
@@ -363,7 +362,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:recyclerview-v7:21.0.0
+com.android.support:recyclerview-v7:23.2.1
 </pre>
 
 
@@ -384,7 +383,7 @@
 
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/v7/preference} directory. For more information
+{@code &lt;sdk&gt;/extras/android/support/v7/preference} directory. For more information
 on how to set up your project, follow the instructions in <a
 href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries
 with resources</a>. </p>
@@ -392,7 +391,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:preference-v7:23.0.0
+com.android.support:preference-v7:23.2.1
 </pre>
 
 
@@ -421,7 +420,7 @@
 
 <p class="note">
   <strong>Note:</strong> Use of RenderScript with the support library is supported with Android
-  Studio and Gradle-based builds, as well as the Eclipse plugin and Ant build tools. The
+  Studio and Gradle-based builds. The
   renderscript library is located in the <code>build-tools/$VERSION/renderscript/</code> folder.
 </p>
 
@@ -448,7 +447,7 @@
 </p>
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/v13/} directory. The library does not contain user
+{@code &lt;sdk&gt;/extras/android/support/v13/} directory. The library does not contain user
 interface resources. To include it in your application project, follow the instructions for
 <a href="{@docRoot}tools/support-library/setup.html#libs-without-res">Adding libraries without
 resources</a>.</p>
@@ -456,7 +455,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:support-v13:18.0.0
+com.android.support:support-v13:23.2.1
 </pre>
 
 
@@ -480,7 +479,7 @@
 </p>
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/v14/} directory. The library does not contain user
+{@code &lt;sdk&gt;/extras/android/support/v14/} directory. The library does not contain user
 interface resources. To include it in your application project, follow the instructions for
 <a href="{@docRoot}tools/support-library/setup.html#libs-without-res">Adding libraries without
 resources</a>.</p>
@@ -488,7 +487,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:preference-v14:23.0.0
+com.android.support:preference-v14:23.2.1
 </pre>
 
 
@@ -509,7 +508,7 @@
 </p>
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/v17/} directory. The library does not contain user
+{@code &lt;sdk&gt;/extras/android/support/v17/} directory. The library does not contain user
 interface resources. To include it in your application project, follow the instructions for
 <a href="{@docRoot}tools/support-library/setup.html#libs-without-res">Adding libraries without
 resources</a>.</p>
@@ -517,7 +516,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:preference-v17:23.0.0
+com.android.support:preference-leanback-v17:23.2.1
 </pre>
 
 
@@ -551,7 +550,7 @@
 </ul>
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/v17/leanback} directory. For more information
+{@code &lt;sdk&gt;/extras/android/support/v17/leanback} directory. For more information
 on how to set up your project, follow the instructions in <a
 href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries
 with resources</a>. </p>
@@ -559,7 +558,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:leanback-v17:21.0.0
+com.android.support:leanback-v17:23.2.1
 </pre>
 
 
@@ -572,7 +571,7 @@
 <p></p>
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/annotations} directory. For more information
+{@code &lt;sdk&gt;/extras/android/support/annotations} directory. For more information
 on how to set up your project, follow the instructions in <a
 href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries
 with resources</a>. </p>
@@ -580,7 +579,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:support-annotations:22.0.0
+com.android.support:support-annotations:23.2.1
 </pre>
 
 
@@ -597,7 +596,7 @@
 
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/design} directory. For more information
+{@code &lt;sdk&gt;/extras/android/support/design} directory. For more information
 on how to set up your project, follow the instructions in <a
 href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries
 with resources</a>. </p>
@@ -605,7 +604,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:design:22.2.0
+com.android.support:design:23.2.1
 </pre>
 
 
@@ -625,7 +624,7 @@
 
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/customtabs} directory. For more information
+{@code &lt;sdk&gt;/extras/android/support/customtabs} directory. For more information
 on how to set up your project, follow the instructions in <a
 href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries
 with resources</a>. </p>
@@ -633,7 +632,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:customtabs:23.0.0
+com.android.support:customtabs:23.2.1
 </pre>
 
 
@@ -656,7 +655,7 @@
 
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/customtabs} directory. For more information
+{@code &lt;sdk&gt;/extras/android/support/percent} directory. For more information
 on how to set up your project, follow the instructions in <a
 href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries
 with resources</a>. </p>
@@ -664,7 +663,7 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:percent:23.0.0
+com.android.support:percent:23.2.1
 </pre>
 
 
@@ -686,7 +685,7 @@
 
 
 <p>After you download the Android Support Libraries, this library is located in the
-{@code <sdk>/extras/android/support/customtabs} directory. For more information
+{@code &lt;sdk&gt;/extras/android/support/recommendation} directory. For more information
 on how to set up your project, follow the instructions in <a
 href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries
 with resources</a>. </p>
@@ -694,5 +693,5 @@
 <p>The Gradle build script dependency identifier for this library is as follows:</p>
 
 <pre>
-com.android.support:app.recommendation-app:23.0.0
+com.android.support:recommendation:23.2.1
 </pre>
diff --git a/docs/html/tools/support-library/index.jd b/docs/html/tools/support-library/index.jd
index 60620e7..1152eac4 100644
--- a/docs/html/tools/support-library/index.jd
+++ b/docs/html/tools/support-library/index.jd
@@ -58,11 +58,945 @@
 
 <p>This section provides details about the Support Library package releases.</p>
 
-
-
 <div class="toggle-content opened">
-  <p id="rev21"><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img" alt=""
+  <p id="rev23-2-1">
+    <a href="#" onclick="return toggleContent(this)"><img src=
+    "{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
+    alt="">Android Support Library, revision 23.2.1</a> <em>(March
+    2016)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+    <dl>
+      <dt>
+        Changes for <a href=
+        "{@docRoot}tools/support-library/features.html#v4">v4 Support
+        Library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Fixed an exception in {@link
+          android.support.v4.graphics.drawable.DrawableCompat#wrap
+          DrawableCompat.wrap()} and {@link android.graphics.drawable.LayerDrawable} on
+          API levels 17 to 19. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201817">Issue 201817</a>)
+          </li>
+
+          <li>Fixed an {@code ArrayIndexOutOfBoundsException} in {@link
+          android.support.v4.widget.ViewDragHelper#shouldInterceptTouchEvent
+          ViewDragHelper.shouldInterceptTouchEvent()}. (<a class="external-link"
+            href="https://code.google.com/p/android/issues/detail?id=182262">Issue
+            182262</a>)
+          </li>
+
+          <li>Fixed a bug in {@link android.support.v4.view.ViewPager} related to
+          scroll calculation for size changes.
+          </li>
+
+          <li>Fixed a {@code NullPointerException} when {@code
+          DrawerLayout.removeDrawerListener()} is called without a set {@link
+          android.support.v4.widget.DrawerLayout.DrawerListener
+          DrawerLayout.DrawerListener}. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=202478">Issue 202478</a>)
+          </li>
+
+          <li>Fixed a bug where {@link android.support.v4.view.ViewPager} does not set
+          {@link android.view.accessibility.AccessibilityEvent} parameters properly
+          when scrolling.
+          </li>
+
+          <li>Fixed an issue that caused lag during device rotation when using
+          {@link android.support.v4.graphics.drawable.DrawableCompat#wrap
+          Drawable.wrap()}. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201924">Issue 201924</a>)
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for <a href=
+        "{@docRoot}tools/support-library/features.html#v7-appcompat">v7
+        appcompat library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Reverted dependency on vector assets so that developers using the
+            <a href="{@docRoot}tools/support-library/features.html#v7-appcompat">appcompat
+            library</a> are not forced to use {@link
+            android.graphics.drawable.VectorDrawable} and its associated build flags.
+          </li>
+
+          <li>Fixed a compatibility issue with Night Mode and API level 23.
+            (<a class="external-link" href=
+            "https://code.google.com/p/android/issues/detail?id=201910">Issue
+            201910</a>)
+          </li>
+
+          <li>Fixed a compatibility issue with {@link
+          android.support.v7.widget.SwitchCompat} and API level 7. (<a class=
+          "external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201942">Issue 201942</a>)
+          </li>
+
+          <li>Fixed an issue with propagating configuration values in Resources objects
+          <a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201928">Issue 201928</a>
+          </li>
+
+          <li>Fixed a compatibility issue where the {@link
+          android.support.v7.app.NotificationCompat.MediaStyle
+          NotificationCompat.MediaStyle} cancel button becomes invisible on API level
+          21 and below. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=202156">Issue 202156</a>)
+          </li>
+
+          <li>Fixed a compatibility crash with {@link
+          android.support.v7.widget.AppCompatSpinner} on API level 21 and below.
+          (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=202246">Issue 202246</a>)
+          </li>
+
+          <li>Fixed an issue where the {@code app:textAllCaps = "false"} style did not
+          work. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=202117">Issue 202117</a>)
+          </li>
+
+          <li>Fixed a crash when restoring {@link android.widget.SearchView}.
+            (<a class="external-link" href=
+            "https://code.google.com/p/android/issues/detail?id=201836">Issue
+            201836</a>)
+          </li>
+
+          <li>Fixed a memory leak that occurs when tinting drawable resources using
+          AppCompat. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=202379">Issue 202379</a>)
+          </li>
+
+          <li>Fixed an issue with {@link android.view.KeyEvent} on API level 11 and
+          lower. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=202939">Issue 202939</a>)
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for <a href=
+        "{@docRoot}tools/support-library/features.html#v7-cardview">v7 cardview
+        library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Added Night Mode support for {@link
+          android.support.v7.widget.CardView}. (<a class="external-link"
+            href="https://code.google.com/p/android/issues/detail?id=194497">Issue
+            194497</a>)
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for <a href=
+        "{@docRoot}tools/support-library/features.html#v7-recyclerview">v7
+        recyclerview library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Fixed bugs related to various measure-spec methods. (<a class=
+          "external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201856">Issue
+          201856</a>)
+          </li>
+
+          <li>Reduced the lockdown period in which {@link
+          android.support.v7.widget.RecyclerView} does not allow adapter
+          changes while calculating a layout or scroll. (<a class=
+          "external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=202046">Issue
+          202046</a>)
+          </li>
+
+          <li>Fixed a crash when calling {@link
+          android.support.v7.widget.RecyclerView.Adapter#notifyItemChanged
+          notifyItemChanged()} on an item that is out of view. (<a class=
+          "external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=202136">Issue
+          202136</a>)
+          </li>
+
+          <li>Fixed a crash that occurs when {@link
+          android.support.v7.widget.RecyclerView.LayoutManager
+          RecyclerView.LayoutManager} adds and removes a view in the same
+          measurement pass. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=193958">Issue
+          193958</a>)
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for <a href=
+        "{@docRoot}tools/support-library/features.html#v7-mediarouter">v7
+        mediarouter library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Fixed a crash that occurs when calling {@link
+          android.support.v7.media.MediaRouter#getInstance
+          MediaRouter.getInstance()} on API level 17. (<a class="external-link"
+            href=
+            "https://code.google.com/p/android/issues/detail?id=180654">Issue
+            180654</a>)
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for <a href=
+        "{@docRoot}tools/support-library/features.html#v17-leanback">v17
+        Leanback Library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Fixed an issue with {@code GridLayout.onAddFocusables()} that
+          caused the wrong item to be selected.
+          </li>
+
+          <li>Fixed issue with {@link
+          android.support.v17.leanback.app.GuidedStepFragment} actions
+          disappearing after an action was collapsed.
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for <a href=
+        "{@docRoot}tools/support-library/features.html#design">Design Support
+        Library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Fixed a {@link android.support.design.widget.TabLayout} crash
+          caused by tab-pooling. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201827">Issue
+          201827</a>)
+          </li>
+
+          <li>Fixed a bug in {@link
+          android.support.design.widget.NavigationView} that caused the wrong
+          color to be selected. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201951">Issue
+          201951</a>)
+          </li>
+
+          <li>Fixed a bug where {@link
+          android.support.design.widget.FloatingActionButton#setBackgroundTintList
+          setBackgroundTintList()} was no longer able to change the background
+          color. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201873">Issue
+          201873</a>)
+          </li>
+
+          <li>Fixed an issue where {@link
+          android.support.design.widget.AppBarLayout} did not completely scroll
+          out of view when used with {@code android:fitsSystemWindows = “true”}.
+          (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201822">Issue
+          201822</a>)
+          </li>
+
+          <li>Fixed an issue where {@code BottomSheetDialog} did not display
+          short content views correctly. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201793">Issue
+          201793</a>)
+          </li>
+
+          <li>Fixed an issue where {@code BottomSheetDialogFragment} moved
+          sporadically when content inside was changed. (<a class=
+          "external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=202125">Issue
+          202125</a>)
+          </li>
+
+          <li>Fixed a crash in TextInputLayout counter <a class="external-link"
+            href=
+            "https://code.google.com/p/android/issues/detail?id=202051">link</a>
+          </li>
+
+          <li>Fixed a crash that occured when {@link
+          android.support.design.widget.TextInputLayout#getCounterMaxLength
+          TextInputLayout.getCounterMaxLength()} restored a saved state.
+          (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=202375">Issue
+          202375</a>)
+          </li>
+
+          <li>Fixed a {@code ClassCastException} that occurred when restoring a
+          {@link android.support.design.widget.CoordinatorLayout} using the
+          saved state of a view that was not a {@link
+          android.support.design.widget.CoordinatorLayout}.
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for VectorDrawableCompat:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Fixed a bug where the wrong variable was read for {@code
+          android:tintMode}. (<a class="external-link" href=
+          "https://code.google.com/p/android/issues/detail?id=201907">Issue
+          201907</a>)
+          </li>
+        </ul>
+      </dd>
+    </dl>
+  </div>
+</div>
+<!-- end of collapsible section -->
+
+<div class="toggle-content closed">
+  <p id="rev23-2-0">
+    <a href="#" onclick="return toggleContent(this)"><img src=
+    "{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
+    alt="">Android Support Library, revision 23.2.0</a> <em>(February
+    2016)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+    <dl>
+      <dt>
+        Changes for <a href="features.html#v4">v4 Support library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Added {@code MediaBrowserCompat} for {@link
+          android.media.browse.MediaBrowser} support, and {@code
+          MediaBrowserServiceCompat} for {@link
+          android.service.media.MediaBrowserService} support. This is useful
+          when connecting a media app’s background service with UI components,
+          and integrating with Android Auto and Android Wear without requiring
+          API level 21 or higher.
+          </li>
+
+          <li>The system now calls {@link
+          android.support.v4.app.FragmentActivity#onActivityResult onActivityResult()} for a
+          nested {@link android.support.v4.app.FragmentActivity}.
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for <a href="features.html#v7-appcompat">v7 AppCompat
+        library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Added Night Mode functionality to API level 14 and higher. Switch
+          between <a href="{@docRoot}training/material/theme.html">Material
+          Light and Material Dark Themes</a> based on the time of day or
+          app-specific setting.
+          </li>
+
+          <li style="list-style: none; display: inline">
+            <ul>
+              <li>Day and night themes can be found here: {@code
+              &lt;sdk&gt;/extras/android/support/v7/appcompat/res/values/themes_daynight.xml}
+              </li>
+
+              <li>{@code AppCompatDelegate.setDefaultNightMode()}: sets the
+              app’s default mode by passing one of the following constants:
+              </li>
+
+              <li style="list-style: none; display: inline">
+                <ul>
+                  <li>{@code MODE_NIGHT_AUTO}
+                  </li>
+
+                  <li>{@code MODE_NIGHT_NO}
+                  </li>
+
+                  <li>{@code MODE_NIGHT_YES}
+                  </li>
+
+                  <li>{@code MODE_NIGHT_FOLLOW_SYSTEM}
+                  </li>
+                </ul>
+              </li>
+
+              <li>{@code AppCompatDelegate.setLocalNightMode()}: overrides
+              the night mode setting for the local app component.
+              </li>
+
+              <li>{@code AppCompatDelegate.getDefaultNightMode()}: returns
+              the default night mode.
+              </li>
+            </ul>
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for <a href="features.html#v7-mediarouter">v7 mediarouter
+        library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>{@link android.support.v7.app.MediaRouteControllerDialog} now
+          correctly applies custom app theme colors.
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for <a href="features.html#design">Design support library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Added support for <a href=
+          "https://www.google.com/design/spec/components/bottom-sheets.html">bottom
+          sheets</a>. An interaction plugin, {@code
+          BottomSheetBehavior}, allows a child view of a {@link
+          android.support.design.widget.CoordinatorLayout} to act as
+          a bottom sheet. The base class, {@code BottomSheetCallback}, provides
+          callbacks to monitor bottom sheet events.
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for the <a href="features.html#custom-tabs">CustomTabs support
+        library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>
+            <a href=
+            "https://developer.chrome.com/multidevice/android/customtabs">Chrome
+            Custom Tabs</a> now allows apps to include a bottom bar with action
+            buttons in addition to the existing top action button.
+          </li>
+
+          <li>{@code CustomTabsIntent.Builder.addToolBarItem()}: adds an action
+          button to a custom tab. You can use this to add multiple buttons.
+          </li>
+
+          <li>{@code CustomTabsSession.setToolBarItem()}: updates the visuals
+          for toolbar items. This method will only succeed if it is given a
+          valid id and the browser session is in the foreground.
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Added VectorDrawable support library:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Added Classes:
+          </li>
+
+          <li style="list-style: none; display: inline">
+            <ul>
+              <li>{@code VectorDrawableCompat}
+              </li>
+
+              <li>{@code AnimatedVectorDrawableCompat}
+              </li>
+            </ul>
+          </li>
+
+          <li>Adds support for {@link
+          android.graphics.drawable.VectorDrawable} assets to apps
+          running on API level 7 or higher. {@link
+          android.graphics.drawable.AnimatedVectorDrawable} assets
+          are also supported on API level 11 or higher. Vector assets can be
+          considerably smaller than image assets and should help reduce app
+          size by reducing the amount of assets required to support multiple
+          device screens.
+          </li>
+
+          <li>This library is now a dependency of the <a href=
+          "features.html#v7-appcompat">v7 AppCompat library</a>, allowing
+          developers and <a href="features.html#v7-appcompat">AppCompat </a>
+          to easily use vector drawables. To use {@code
+          VectorDrawableCompat} within an {@link android.widget.ImageButton} or
+          {@link android.widget.ImageView}, use the {@code app:srcCompat} XML
+          attribute or {@code setImageResource()}
+          method.
+          </li>
+
+          <li>To keep referencing attribute IDs on API level 20 or
+          lower, add the following {@code appt} flag to your {@code
+          build,gradle} file:
+          </li>
+
+          <li style="list-style: none; display: inline">
+            <ul>
+              <li>If you are building with Android Plugin for Gradle 1.5.0 or
+              lower, add the following to your {@code build.gradle} file:
+              </li>
+
+              <li style="list-style: none; display: inline">
+                <pre>
+android {
+  defaultConfig {
+    // Stops the Gradle’s automatic rasterization of vectors
+    generatedDensities = []
+  }
+   // Flag that tells aapt to keep the attribute ids
+  aaptOptions {
+    additionalParameters "--no-version-vectors"
+  }
+}
+</pre>
+              </li>
+
+              <li>If you are building with Android Plugin for Gradle 2.0.0 or
+              higher, add the following to your {@code build.gradle} file:
+              </li>
+
+              <li style="list-style: none; display: inline">
+                <pre>
+android {
+  defaultConfig {
+    vectorDrawables.useSupportLibrary = true
+  }
+}
+</pre>
+              </li>
+            </ul>
+          </li>
+        </ul>
+      </dd>
+
+      <dt>
+        Changes for <a href="features.html#v17-leanback">v17 Leanback
+        Library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>Added new capabilities to {@link android.support.v17.leanback.app.GuidedStepFragment},
+          which is a component that guides users through a decision or series of decisions:
+          </li>
+
+          <li style="list-style: none; display: inline">
+            <ul>
+              <li>Added button actions to {@link
+              android.support.v17.leanback.widget.GuidedAction}:
+              </li>
+
+                <ul>
+                  <li>{@code GuidedStepFragment.setButtonActions()}: sets a list of
+                  {@link android.support.v17.leanback.widget.GuidedAction} buttons that
+                  the user may select from the Actions view.
+                  </li>
+                </ul>
+              </li>
+
+              <li>Description fields are now editable:
+              </li>
+
+              <li style="list-style: none; display: inline">
+                <ul>
+                  <li>{@code GuidedAction.Builder.descriptionEditable()}: when passing
+                  {@code true}, sets the action’s description to be editable.
+                  </li>
+
+                  <li>{@code GuidedAction.getEditDescription()}: returns the editable
+                  description as a {@code CharSequence}.
+                  </li>
+                </ul>
+              </li>
+
+              <li>Added drop-down lists of sub-actions:
+              </li>
+
+              <li style="list-style: none; display: inline">
+                <ul>
+                  <li>{@code GuidedAction.setSubActions()}: sets a {@link
+                  android.support.v17.leanback.widget.GuidedAction} list as a drop-down
+                  menu of sub-actions.
+                  </li>
+                </ul>
+              </li>
+            </ul>
+
+          <li>Added the {@code GuidedDatePickerAction} widget for {@link
+          android.widget.DatePicker} functionality:
+          </li>
+
+          <li style="list-style: none; display: inline">
+            <ul>
+              <li>The date is selected using year, month, and day columns and has a
+              customizable range.
+              </li>
+
+              <li>{@code GuidedDatePickerAction.Builder}: builder class for the {@code
+              GuidedDatePickerAction} object.
+              </li>
+
+              <li>{@code GuidedDatePickerAction.Builder.datePickerFormat(String
+              datePickerFormat)}: set the desired date format by passing the
+              appropriate three-character {@code String}, e.g. {@code “YMD”} or {@code
+              “MDY”}. Alternatively, use the {@code datePickerFormat} XML attribute.
+              </li>
+            </ul>
+          </li>
+        </ul>
+      </dd>
+    </dl>
+
+    <dl>
+      <dt>
+        Changes for <a href="features.html#v7-recyclerview">v7 RecyclerView
+        library</a>:
+      </dt>
+
+      <dd>
+        <ul>
+          <li>{@link android.support.v7.widget.RecyclerView} now has an opt-in
+          feature called <em>AutoMeasure</em> which allows {@link
+          android.support.v7.widget.RecyclerView.LayoutManager} to easily wrap
+          content or handle various measurement specifications provided by the
+          parent of the {@link android.support.v7.widget.RecyclerView}. It
+          supports all existing animation capabilities of the {@link
+          android.support.v7.widget.RecyclerView}.
+          </li>
+
+          <li style="list-style: none; display: inline">
+            <ul>
+              <li>If you have a custom {@link
+              android.support.v7.widget.RecyclerView.LayoutManager},
+              call {@code setAutoMeasureEnabled(true)} to start using the new
+              AutoMeasure API. All built-in {@link
+              android.support.v7.widget.RecyclerView.LayoutManager} objects
+              enable auto-measure by default.
+              </li>
+
+              <li>{@link android.support.v7.widget.RecyclerView.LayoutManager}
+              no longer ignores some {@link
+              android.support.v7.widget.RecyclerView.LayoutParams} settings,
+              such as {@code MATCH_PARENT} in the scroll direction.
+                <p class="note">
+                  <strong>Note:</strong> These lifted restrictions may cause
+                  unexpected behavior in your layouts. Make sure you specify
+                  the correct layout parameters.
+                </p>
+              </li>
+            </ul>
+          </li>
+
+          <li>When updating a {@link
+          android.support.v7.widget.RecyclerView.ViewHolder} with payload
+          information, {@link android.support.v7.widget.DefaultItemAnimator}
+          now disables change animations.
+          </li>
+
+          <li>You can now modify the {@link
+          android.support.v7.widget.helper.ItemTouchHelper} escape velocity to
+          control swipe sensitivity. To make it easier or harder to swipe,
+          override {@code getSwipeEscapeVelocity(float defaultValue)} and modify {@code defaultValue}.
+          </li>
+        </ul>
+      </dd>
+    </dl>
+  </div>
+</div>
+<!-- end of collapsible section -->
+
+<div class="toggle-content closed">
+  <p id="rev23-1-1"><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
+/>Android Support Library, revision 23.1.1</a> <em>(November 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <dl>
+      <dt>Changes for <a href="features.html#v7-recyclerview">v7 recyclerview library:</a></dt>
+      <dd>
+        <ul>
+          <li>Fixed a crash that occurs when you perform a swipe-to-dismiss action that the
+            {@code ItemTouchHelper} utility class provides, and then add an item.
+            (<a href="http://b.android.com/190500">Issue 190500</a>)</li>
+         </ul>
+      </dd>
+      <dt>Changes for <a href="features.html#v7-preference">v7 preference library:</a></dt>
+      <dd>
+        <ul>
+          <li>Fixed an issue with ProGuard usage.
+          (<a href="http://b.android.com/183261">Issue 183261</a>)</li>
+         </ul>
+      </dd>
+
+      <dt>Changes for <a href="features.html#v17-leanback">v17 Leanback Support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Fixed a number of internal issues in this library.</li>
+         </ul>
+      </dd>
+      <dt>Changes for <a href="features.html#design">Design Support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Added the <code>getHeaderView</code> method to the <code>NavigationView</code> class.</li>
+          <li>Fixed a transparent background issue for a <code>FloatingActionButton</code> object on
+          devices running Android 4.0 (API level 15) and lower.
+          (<a href="http://b.android.com/183315">Issue 183315</a>)</li>
+         </ul>
+       </dd>
+    </dl>
+
+  </div>
+</div> <!-- end of collapsible section -->
+
+
+
+<div class="toggle-content closed">
+  <p id="rev23-1-0"><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
+/>Android Support Library, revision 23.1.0</a> <em>(October 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <dl>
+      <dt>Changes for <a href="features.html#v4">v4 Support library:</a></dt>
+       <dd>
+        <ul>
+           <li>Added <code>OnScrollChangedListener</code> interface support to the
+            <code>NestedScrollView</code> widget. It
+            allows you to receive callbacks when the scroll X or Y positions change.</li>
+          <li>Added a <code>MediaButtonReceiver</code> class to forward received playback controls
+            to a service that’s managing the <code>MediaSessionCompat</code> class. The
+            <code>MediaSessionCompat</code> class has a
+            constructor that can automatically find a media button receiver in the manifest. A
+            media button receiver is a key part to <a href=
+          "http://developer.android.com/training/managing-audio/volume-playback.html#PlaybackControls">handling
+          playback controls</a> from hardware or bluetooth controls.</li>
+        </ul>
+       </dd>
+
+
+      <dt>Changes for <a href="features.html#v7-appcompat">v7 appcompat library:</a></dt>
+       <dd>
+        <ul>
+          <li>Added material design <code>Seekbar</code> and <code>ImageButton</code> widgets.</li>
+          <li>Updated the <code>ImageView</code> widget to support the tint feature.</li>
+          <li>Updated the look-and-feel of the <code>SwitchCompat</code> widget.</li>
+         </ul>
+       </dd>
+
+      <dt>Changes for <a href="features.html#v7-mediarouter">v7 mediarouter library:</a></dt>
+       <dd>
+        <ul>
+        <li>Added the following features to the <code>MediaRouteChooserDialog</code> class:</li>
+        <ul>
+          <li>Displays a loading page while discovering media route providers.</li>
+          <li>Includes a device type icon for easier device identification.</li>
+          <li>Sorts the routes according to frequency of use in the current app.</li>
+          <li>Supports landscape mode.</li>
+        </ul>
+        </ul>
+        <ul>
+        <li>Added the following features to the <code>MediaRouteControllerDialog</code> class:</li>
+        <ul>
+           <li>Recognizes screen casting and provides a proper description.</li>
+           <li>Supports various album art sizes and aspect ratios, and loads the art asynchronously.</li>
+           <li>Automatically selects the content color based on the primary color of the app.</li>
+           <li>Adjusts the dialog layout based on available screen space on the device.</li>
+           <li>Supports landscape mode.</li>
+        </ul>
+        </ul>
+       </dd>
+
+      <dt>Changes for <a href="features.html#v7-palette">v7 palette library:</a></dt>
+       <dd>
+        <ul>
+          <li>Added the <code>setRegion()</code> method to support extracting color from a specific
+            region of a <code>Bitmap</code> object.</li>
+         </ul>
+       </dd>
+
+      <dt>Changes for <a href="features.html#v7-recyclerview">v7 recyclerview library:</a></dt>
+       <dd>
+        <ul>
+        <li>Added an improved animation API to the <code>ItemAnimator</code> class for better
+          customizations:</li>
+           <ul>
+           <li>Change animations no longer enforce two copies of the <code>ViewHolder</code> object,
+            which enables item content animations. Also, the <code>ItemAnimator</code> object
+            decides whether it wants to reuse the same <code>ViewHolder</code> object or create a
+            new one.</li>
+           <li>The new information record API gives the <code>ItemAnimator</code> class the flexibility
+            to collect data at the correct point in the layout lifecycle. This information is later
+            passed into the animate callbacks.</li>
+            </ul>
+         </ul>
+          <ul>
+          <li>Provided an easy transition plan for this backward-incompatible API change:</li>
+           <ul>
+           <li>If you’ve previously extended the <code>ItemAnimator</code> class, you can change
+            your base class to <code>SimpleItemAnimator</code> and your code should work as before.
+            The <code>SimpleItemAnimator</code> class provides the old API by wrapping the new API.</li>
+           <li>Some methods were removed from the <code>ItemAnimator</code> class. The following
+            code will no longer compile:</li>
+           <pre>recyclerView.getItemAnimator().setSupportsChangeAnimations(false)</pre>
+           <p>You can replace it with:</p>
+           <pre>
+ItemAnimator animator = recyclerView.getItemAnimator();
+if (animator instanceof SimpleItemAnimator) {
+   ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false);
+}
+           </pre>
+          </ul>
+         </ul>
+       </dd>
+
+
+      <dt>Changes for <a href="features.html#v7-preference">v7</a>,
+          <a href="features.html#v14-preference">v14</a>, and
+          <a href="features.html#v17-preference">v17</a> Preference Support library:</dt>
+       <dd>
+        <ul>
+          <li>Removed APIs for controlling <code>EditText</code> dialogs.</li>
+         </ul>
+       </dd>
+
+     <dt>Changes for <a href="features.html#v17-leanback">v17 Leanback Support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Added a version of the <code>GuidedStepFragment</code> class for the Support library
+            (extends <code>android.support.v4.app.Fragment</code>), and improved animations and
+            transitions.</li>
+          <li>Updated the <code>GuidedStepFragment</code> class so it can be placed on top of
+            existing content.</li>
+          <li>Added the ability to annotate different types of search completions to the
+          <code>SearchFragment</code> class.</li>
+          <li>Added staggered slide transition support to the <code>VerticalGridFragment</code>
+            class.</li>
+         </ul>
+       </dd>
+
+
+     <dt>Changes for <a href="features.html#design">Design Support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Added <a href=
+  "https://www.google.com/design/spec/components/text-fields.html#text-fields-character-counter">
+          character counting</a> support to the <code>TextInputLayout</code> widget.</li>
+          <li>Added edge snapping support to the <code>AppBarLayout</code> class by adding the
+            <code>SCROLL_FLAG_SNAP</code> constant. When scrolling ends, if the view is only
+            partially visible, the view is snapped and scrolled to its closest edge.</li>
+          <li>Added support for custom views to the <code>NavigationView</code> class by using the
+            <code>app:actionLayout</code> attribute or <code>MenuItemCompat.setActionView()</code>
+            method.</li>
+         </ul>
+       </dd>
+
+
+     <dt>Changes for <a href="features.html#custom-tabs">Custom Tabs Support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Added the <code>enableUrlBarHiding()</code> method to the <code>CustomTabsIntent</code>
+            class. It lets the client customize whether the URL bar should be hidden automatically
+            on scroll down.</li>
+          <li>Added the <code>setActionButton()</code> method to the <code>CustomTabsSession</code>
+            class. It lets the client
+            change the icon for a custom action button in an already launched custom tab.</li>
+          <li>Added the <code>TAB_SHOWN</code> and <code>TAB_HIDDEN</code> constants as new events
+            for the <code>onNavigationEvent</code> method of the <code>CustomTabsCallback</code>
+            class.</li>
+         </ul>
+       </dd>
+
+    </dl>
+
+  </div>
+</div> <!-- end of collapsible section -->
+
+
+<div class="toggle-content closed">
+  <p id="rev23-0-1"><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
+/>Android Support Library, revision 23.0.1</a> <em>(September 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <dl>
+      <dt>Changes for <a href="features.html#v7-preference">v7</a> and
+          <a href="features.html#v14-preference">v14</a> Preference Support library:</dt>
+       <dd>
+        <ul>
+          <li>Added the material design layout and style files.
+          (<a href="http://b.android.com/183376">Issue 183376</a>)</li>
+         </ul>
+       </dd>
+
+
+      <dt>Changes for <a href="features.html#v7-appcompat">v7 appcompat library:</a></dt>
+       <dd>
+        <ul>
+          <li>Fixed crash issues for the {@link android.app.Fragment} class by limiting the use of
+              hardware layers to Android 4.1 (API level 16) and higher.
+          (<a href="http://b.android.com/183896">Issue 183896</a>)</li>
+          <li>Fixed an issue where hardware buttons did not work when an activity had set the
+            {@link android.widget.Toolbar} class to act as the
+            {@link android.app.ActionBar} by using the <code>setSupportActionBar()</code> method.
+          (<a href="http://b.android.com/183334">Issue 183334</a>)</li>
+          <li>Updated the {@link android.support.v7.app.AppCompatDialogFragment} class so it
+            no longer throws the {@code Windows feature must be requested before adding content}
+            error.
+          (<a href="http://b.android.com/183186">Issue 183186</a>)</li>
+         </ul>
+       </dd>
+
+
+     <dt>Changes for <a href="features.html#design">Design Support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Fixed the
+            {@link android.support.design.widget.AppBarLayout} class so it now draws correctly after
+            rotation.
+          (<a href="http://b.android.com/183109">Issue 183109</a>)</li>
+          <li>Fixed the
+            {@link android.support.design.widget.TabLayout} class so it now behaves correctly when a
+            user clicks after a swipe.
+          (<a href="http://b.android.com/183123">Issue 183123</a>)</li>
+         </ul>
+       </dd>
+
+
+     <dt>Changes for <a href="features.html#custom-tabs">Custom Tabs Support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Lowered the
+          <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html"><code>minSdkVersion</code></a>
+              value from 16 to 15 for version support.</li>
+          <li>Added a way to generate a
+            {@link android.support.customtabs.CustomTabsSessionToken} from an intent.</li>
+         </ul>
+       </dd>
+
+    </dl>
+
+  </div>
+</div> <!-- end of collapsible section -->
+
+
+<div class="toggle-content closed">
+  <p id="rev23"><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 23</a> <em>(August 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -91,8 +1025,8 @@
 
 
 <div class="toggle-content closed">
-  <p id="rev21"><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+  <p id="rev22-2-1"><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 22.2.1</a> <em>(July 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -132,7 +1066,7 @@
 
 <div class="toggle-content closed">
   <p id="rev21"><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 22.2.0</a> <em>(May 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -288,7 +1222,7 @@
 
 <div class="toggle-content closed">
   <p id="rev21"><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 22.1.0</a> <em>(April 2015)</em>
   </p>
 
@@ -512,7 +1446,7 @@
 
 <div class="toggle-content closed">
   <p id="rev21"><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 22</a> <em>(March 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -618,7 +1552,7 @@
 
 <div class="toggle-content closed">
   <p id="rev21"><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 21.0.3</a> <em>(December 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -645,7 +1579,7 @@
 
 <div class="toggle-content closed">
   <p id="rev21"><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 21.0.2</a> <em>(November 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -704,7 +1638,7 @@
 
 <div class="toggle-content closed">
   <p id="rev21"><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 21.0.1</a> <em>(November 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -723,7 +1657,7 @@
 
 <div class="toggle-content closed">
   <p id="rev21"><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 21</a> <em>(October 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -806,7 +1740,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 20</a> <em>(July 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -833,7 +1767,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 19.1.0</a> <em>(March 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -860,7 +1794,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 19.0.1</a> <em>(December 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -903,7 +1837,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 19</a> <em>(October 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -955,7 +1889,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 18</a> <em>(July 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1056,7 +1990,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 13</a> <em>(May 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1107,7 +2041,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 12</a> <em>(February 2013)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1132,7 +2066,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 11</a> <em>(November 2012)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1194,7 +2128,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 10</a> <em>(August 2012)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1213,7 +2147,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 9</a> <em>(June 2012)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1283,7 +2217,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 8</a> <em>(April 2012)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1306,7 +2240,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 7</a> <em>(March 2012)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1336,7 +2270,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 6</a> <em>(December 2011)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1389,7 +2323,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 5</a> <em>(December 2011)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1448,7 +2382,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 4</a> <em>(October 2011)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1490,7 +2424,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 3</a> <em>(July 2011)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1541,7 +2475,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 2</a> <em>(May 2011)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -1561,7 +2495,7 @@
 
 <div class="toggle-content closed">
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+    <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 1</a> <em>(March 2011)</em>
   </p>
   <div class="toggle-content-toggleme">
diff --git a/docs/html/tools/support-library/setup.jd b/docs/html/tools/support-library/setup.jd
old mode 100644
new mode 100755
index a39e4b0..8fbcee1
--- a/docs/html/tools/support-library/setup.jd
+++ b/docs/html/tools/support-library/setup.jd
@@ -72,7 +72,7 @@
 
 <p>After downloading, the tool installs the Support Library files to your existing Android SDK
   directory. The library files are located in the following subdirectory of your SDK:
-  {@code <sdk>/extras/android/support/} directory.</p>
+  {@code &lt;sdk&gt;/extras/android/support/} directory.</p>
 
 
 <h2 id="choosing">Choosing Support Libraries</h2>
@@ -104,31 +104,6 @@
 
 <p>To add a Support Library without resources to your application project:</p>
 
-<div class="toggle-content closed">
-<p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)">
-  <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
-  />Using Eclipse</a></p>
-
-  <div class="toggle-content-toggleme">
-  <ol>
-    <li>Make sure you have downloaded the <strong>Android Support Library</strong>
-      using the <a href="#download">SDK Manager</a>.</li>
-    <li>Create a {@code libs/} directory in the root of your application project.</li>
-    <li>Copy the JAR file from your Android SDK installation directory (e.g.,
-      {@code <sdk>/extras/android/support/v4/android-support-v4.jar}) into your
-      application's project {@code libs/} directory.
-    <li>Right click the JAR file and select <strong>Build Path &gt; Add to Build Path</strong>.
-      </li>
-  </ol>
-  </div>
-</div>
-
-<div class="toggle-content closed">
-<p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)">
-  <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
-  />Using Android Studio</a></p>
-
-  <div class="toggle-content-toggleme">
     <ol>
       <li>Make sure you have downloaded the <strong>Android Support Repository</strong>
         using the <a href="#download">SDK Manager</a>.</li>
@@ -143,8 +118,6 @@
 </pre>
       </li>
     </ol>
-  </div>
-</div>
 
 
 <h3 id="libs-with-res">Adding libraries with resources</h3>
@@ -153,77 +126,6 @@
   <a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7
   appcompat</a> for action bar) to your application project:</p>
 
-<div class="toggle-content closed">
-  <p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)">
-  <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
-  />Using Eclipse</a></p>
-    <div class="toggle-content-toggleme">
-
-<p>Create a <a href="{@docRoot}tools/projects/index.html#LibraryProjects">library
-project</a> based on the support library code:</p>
-
-<ol>
-  <li>Make sure you have downloaded the <strong>Android Support Library</strong>
-    using the <a href="#download">SDK Manager</a>.</li>
-  <li>Create a library project and ensure the required JAR files are included in the project's
-    build path:
-    <ol>
-      <li>Select <strong>File &gt; Import</strong>.</li>
-      <li>Select <strong>Existing Android Code Into Workspace</strong> and click
-        <strong>Next</strong>.</li>
-      <li>Browse to the SDK installation directory and then to the Support Library folder.
-        For example, if you are adding the {@code appcompat} project, browse to
-        <code>&lt;sdk&gt;/extras/android/support/v7/appcompat/</code>.</li>
-      <li>Click <strong>Finish</strong> to import the project. For the v7 appcompat project, you
-        should now see a new project titled <em>android-support-v7-appcompat</em>.</li>
-      <li>In the new library project, expand the {@code libs/} folder, right-click each {@code .jar}
-        file and select <strong>Build Path &gt; Add to Build Path</strong>. For example, when
-        creating the the v7 appcompat project, add both the {@code android-support-v4.jar} and
-        {@code android-support-v7-appcompat.jar} files to the build path.</li>
-      <li>Right-click the library project folder and select <strong>Build Path &gt; Configure
-        Build Path</strong>.</li>
-      <li>In the <strong>Order and Export</strong> tab, check the <code>.jar</code> files you just
-        added to the build path, so they are available to projects that depend on this library
-        project. For example, the {@code appcompat} project requires you to export both the
-        {@code android-support-v4.jar} and {@code android-support-v7-appcompat.jar} files.</li>
-      <li>Uncheck <strong>Android Dependencies</strong>.</li>
-      <li>Click <strong>OK</strong> to complete the changes.</li>
-    </ol>
-  </li>
-</ol>
-
-<p>You now have a library project for your selected Support Library that you can use with one or
-  more application projects.</p>
-
-<p>Add the library to your application project:</p>
-  <ol>
-    <li>In the Project Explorer, right-click your project and select <strong>Properties</strong>.</li>
-    <li>In the category panel on the left side of the dialog, select <strong>Android</strong>.</li>
-    <li>In the Library pane, click the <strong>Add</strong> button.</li>
-    <li>Select the library project and click <strong>OK</strong>. For example, the
-      {@code appcompat} project should be listed as <strong>android-support-v7-appcompat</strong>.
-      </li>
-    <li>In the properties window, click <strong>OK</strong>.</li>
-  </ol>
-
-<p class="note">
-  <strong>Note:</strong> If you are using the {@code android-support-v7-mediarouter} support
-  library, you should note that it depends on the {@code android-support-v7-appcompat} library.
-  In order for the v7 mediarouter library to compile, you must import both library projects into
-  your development workspace. Then follow the procedure above to add the v7 appcompat project as a
-  library to the v7 mediarouter library project.
-</p>
-
-  </div>
-</div>
-
-
-<div class="toggle-content closed">
-<p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)">
-    <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
-    />Using Android Studio</a></p>
-
-  <div class="toggle-content-toggleme">
     <ol>
       <li>Make sure you have downloaded the <strong>Android Support Repository</strong>
         using the <a href="#download">SDK Manager</a>.</li>
@@ -240,8 +142,6 @@
 </pre>
       </li>
     </ol>
-  </div>
-</div>
 
 
 <h2 id="using-apis">Using Support Library APIs</h2>
@@ -333,9 +233,9 @@
 SDK installation directory, as listed below:</p>
 
 <ul>
-  <li>4v Samples: {@code <sdk>/extras/android/support/samples/Support4Demos/}</li>
-  <li>7v Samples: {@code <sdk>/extras/android/support/samples/Support7Demos/}</li>
-  <li>13v Samples: {@code <sdk>/extras/android/support/samples/Support13Demos/}</li>
-  <li>App Navigation: {@code <sdk>/extras/android/support/samples/SupportAppNavigation/}</li>
+  <li>4v Samples: {@code &lt;sdk&gt;/extras/android/support/samples/Support4Demos/}</li>
+  <li>7v Samples: {@code &lt;sdk&gt;/extras/android/support/samples/Support7Demos/}</li>
+  <li>13v Samples: {@code &lt;sdk&gt;/extras/android/support/samples/Support13Demos/}</li>
+  <li>App Navigation: {@code &lt;sdk&gt;/extras/android/support/samples/SupportAppNavigation/}</li>
 </ul>
 
diff --git a/docs/html/tools/testing-support-library/index.jd b/docs/html/tools/testing-support-library/index.jd
index 97c2dcf..35a3c7d 100644
--- a/docs/html/tools/testing-support-library/index.jd
+++ b/docs/html/tools/testing-support-library/index.jd
@@ -1,4 +1,5 @@
 page.title=Testing Support Library
+page.image=images/tools/studio-test-module.png
 
 @jd:body
 
@@ -585,13 +586,13 @@
 
   <pre>
 dependencies {
-  androidTestCompile 'com.android.support.test:runner:0.3'
+  androidTestCompile 'com.android.support.test:runner:0.4'
   // Set this dependency to use JUnit 4 rules
-  androidTestCompile 'com.android.support.test:rules:0.3'
+  androidTestCompile 'com.android.support.test:rules:0.4'
   // Set this dependency to build and run Espresso tests
-  androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2'
+  androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1'
   // Set this dependency to build and run UI Automator tests
-  androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1'
+  androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2'
 }</pre>
 
   <p>To set
@@ -628,4 +629,4 @@
   <p>
   For more information about Android Studio and to download it, see
   <a href="{@docRoot}sdk/index.html">Download Android Studio and SDK Tools</a>.
-  </p>
\ No newline at end of file
+  </p>
diff --git a/docs/html/tools/testing/activity_test.jd b/docs/html/tools/testing/activity_test.jd
deleted file mode 100644
index 036407a..0000000
--- a/docs/html/tools/testing/activity_test.jd
+++ /dev/null
@@ -1,1321 +0,0 @@
-page.title=Activity Testing Tutorial
-parent.title=Testing
-parent.link=index.html
-@jd:body
- <div id="qv-wrapper">
-  <div id="qv">
-  <h2>In this document</h2>
-  <ol>
-    <li>
-      <a href="#Prerequisites">Prerequisites</a>
-    </li>
-    <li>
-      <a href="#DownloadCode">Installing the Tutorial Sample Code</a>
-    </li>
-    <li>
-        <a href="#SetupEmulator">Setting Up the Emulator</a>
-    </li>
-    <li>
-        <a href="#SetupProjects">Setting Up the Projects</a>
-    </li>
-    <li>
-      <a href="#CreateTestCaseClass">Creating the Test Case Class</a>
-      <ol>
-        <li>
-          <a href="#AddTestCaseClass">Adding the test case class file</a>
-        </li>
-        <li>
-          <a href="#AddConstructor">Adding the test case constructor</a>
-        </li>
-        <li>
-            <a href="#AddSetupMethod">Adding the setup method</a>
-        </li>
-        <li>
-            <a href="#AddPreConditionsTest">Adding an initial conditions test</a>
-        </li>
-        <li>
-            <a href="#AddUITest">Adding a UI test</a>
-        </li>
-        <li>
-            <a href="#StateManagementTests">Adding state management tests</a>
-        </li>
-      </ol>
-    </li>
-    <li>
-        <a href="#RunTests">Running the Tests and Seeing the Results</a>
-    </li>
-    <li>
-        <a href="#TestFailure">Forcing Some Tests to Fail</a>
-    </li>
-    <li>
-        <a href="#NextSteps">Next Steps</a>
-    </li>
-</ol>
-<h2 id="#Appendix">Appendix</h2>
-<ol>
-    <li>
-        <a href="#InstallCompletedTestApp">Installing the Completed Test Application File</a>
-    </li>
-    <li>
-        <a href="#EditorCommandLine">For Users Not Developing In Eclipse</a>
-    </li>
-</ol>
-<h2>See Also</h2>
-<ol>
-    <li>
-        <a href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>
-    </li>
-    <li>
-        {@link android.test.ActivityInstrumentationTestCase2}
-    </li>
-    <li>
-        {@link junit.framework.Assert}
-    </li>
-    <li>
-        {@link android.test.InstrumentationTestRunner}
-    </li>
-</ol>
-</div>
-</div>
-<p>
-  Android includes powerful tools for testing applications. The tools extend JUnit with additional features, provide convenience classes for mock Android system objects, and use
-  instrumentation to give you control over your main application while you are testing it. The entire Android testing environment is discussed in the document
-  <a href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>.
-</p>
-<p>
-  This tutorial demonstrates the Android testing tools by presenting a simple Android application and then leading you step-by-step through the creation of a test application for it.
-  The test application demonstrates these key points:
-</p>
-  <ul>
-    <li>
-      An Android test is itself an Android application that is linked to the application under test by entries in its <code>AndroidManifest.xml</code> file.
-    </li>
-    <li>
-      Instead of Android components, an Android test application contains one or more test cases. Each of these is a separate class definition.
-    </li>
-    <li>
-      Android test case classes extend the JUnit {@link junit.framework.TestCase} class.
-    </li>
-    <li>
-      Android test case classes for activities extend JUnit and also connect you to the application under test with instrumentation. You can send keystroke or touch events directly to the UI.
-    </li>
-    <li>
-      You choose an Android test case class based on the type of component (application, activity, content provider, or service) you are testing.
-    </li>
-    <li>
-      Additional test tools in Eclipse/ADT provide integrated support for creating test applications, running them, and viewing the results.
-    </li>
-  </ul>
-<p>
-  The test application contains methods that perform the following tests:
-</p>
-  <ul>
-    <li>
-      Initial conditions test. Tests that the application under test initializes correctly. This is also a unit test of the application's
-      {@link android.app.Activity#onCreate(android.os.Bundle) onCreate()} method. Testing initial conditions also provides a confidence measure for subsequent tests.
-    </li>
-    <li>
-      UI test. Tests that the main UI operation works correctly. This test demonstrates the instrumentation features available in activity testing.
-      It shows that you can automate UI tests by sending key events from the test application to the main application.
-    </li>
-    <li>
-      State management tests. Test the application's code for saving state. This test demonstrates the instrumentation features of the test runner, which
-      are available for testing any component.
-    </li>
-  </ul>
-<h2 id="Prerequisites">Prerequisites</h2>
-<p>
-  The instructions and code in this tutorial depend on the following:
-</p>
-  <ul>
-    <li>
-      Basic knowledge of Android programming. If you haven't yet written an Android application, 
-      do the class 
-      <a href="{@docRoot}training/basics/firstapp/index.html">Building Your First App</a>. 
-      If you want to learn more about Spinner, the application under test, then you 
-      might want to review the "Spinner" sample app.
-    </li>
-    <li>
-      Some familiarity with the Android testing framework and concepts. If you haven't explored
-      Android testing yet, start by reading the
-      <a href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>
-      guide.
-    </li>
-    <li>
-        Eclipse with ADT. This tutorial describes how to set up and run a test application using
-        Eclipse with ADT. If you haven't yet installed Eclipse and the ADT plugin,
-        follow the steps in <a href="{@docRoot}sdk/installing/index.html">Installing the SDK</a>
-        to install them before continuing. If you are not developing in Eclipse, you will
-        find instructions for setting up and running the test application in the
-        <a href="#EditorCommandLine">appendix</a> of this document.
-    </li>
-  </ul>
-<h2 id="DownloadCode">Installing the Tutorial Sample Code</h2>
-<p>
-    During this tutorial, you will be working with sample code that is provided as part
-    of the downloadable Samples component of the SDK. Specifically, you will be working
-    with a pair of related sample applications &mdash; an application under test and a test
-    application:
-</p>
-    <ul>
-        <li>
-            Spinner is the application under test. This tutorial focuses on the
-            common situation of writing tests for an application that already exists, so the main
-            application is provided to you.
-        </li>
-        <li>
-             SpinnerTest is the test application. In the tutorial, you create this application
-             step-by-step. If you want to run quickly through the tutorial,
-             you can install the completed SpinnerTest application first, and then follow the
-             text. You may get more from the tutorial, however, if you create the test application
-             as you go. The instructions for installing the completed test application are in the
-             section 
-             <a href="#InstallCompletedTestApp">Installing the Completed Test Application File</a>.
-        </li>
-    </ul>
-<p>
-    The sample applications are described in more detail in the 
-    <a href="{@docRoot}tools/samples/index.html">Samples</a> topic. Follow the instructions to
-    download the version of the samples that's appropriate for the platform you're working with.
-</p>
-<h2 id="SetupEmulator">Setting Up the Emulator</h2>
-<p>
-  In this tutorial, you will use the Android emulator to run applications. The emulator needs
-  an Android Virtual Device (AVD) with an API level equal to or higher than the one you set for the projects in the previous step.
-  To find out how to check this and create the right AVD if necessary, 
-  see <a href="{@docRoot}tools/devices/managing-avds.html">Creating an AVD</a>.
-</p>
-<p>
-    As a test of the AVD and emulator, run the SpinnerActivity application in Eclipse with ADT. When it starts,
-    click the large downward-pointing arrow to the right of the spinner text. You see the spinner expand and display the title &quot;Select a planet&quot; at the top.
-    Click one of the other planets. The spinner closes, and your selection appears below it on the screen.
-</p>
-<h2 id="SetupProjects">Setting Up the Projects</h2>
-<p>
-    When you are ready to get started with the tutorial, begin by setting up Eclipse projects for
-    both Spinner (the application under test) and SpinnerTest (the test application).
-</p>
-<p>
-    You'll be using the Spinner application as-is, without modification, so you'll be loading it
-    into Eclipse as a new Android project from existing source. In the process, you'll be
-    creating a new test project associated with Spinner that will contain the SpinnerTest
-    application. The SpinnerTest application will be completely new and you'll be
-    using the code examples in this tutorial to add test classes and tests to it.
-</p>
-<p>
-    To install the Spinner app in a new Android project from existing source, following these steps:
-</p>
-<ol>
-    <li>
-        In Eclipse, select <strong>File</strong>&nbsp;&gt;&nbsp;<strong>New</strong>&nbsp;&gt;&nbsp;<strong>Project</strong>&nbsp;&gt;&nbsp;<strong>Android</strong>&nbsp;&gt;&nbsp;<strong>Android Project</strong>,
-        then click Next. The <strong>New Android Project</strong> dialog appears.
-    </li>
-    <li>
-        In the <em>Project name</em> text box, enter &quot;SpinnerActivity&quot;. The <em>Properties</em> area is filled in automatically.
-    </li>
-    <li>
-        In the <em>Contents</em> area, set &quot;Create project from existing source&quot;.
-    </li>
-    <li>
-        For <em>Location</em>, click <strong>Browse</strong>, navigate to the directory <code>&lt;SDK_path&gt;/samples/android-8/Spinner</code>,
-        then click Open. The directory name <code>&lt;SDK_path&gt;/samples/android-8/Spinner</code> now appears in the <em>Location</em> text box.
-    </li>
-    <li>
-        In the <em>Build Target</em> area, set a API level of 3 or higher. If you are already developing with a particular target, and it is API level 3 or higher, then use that target.
-    </li>
-    <li>
-        In the <em>Properties</em> area, in the <em>Min SDK Version:</em>, enter &quot;3&quot;.
-    </li>
-    <li>
-        You should now see these values:
-        <ul>
-            <li><em>Project Name:</em> &quot;SpinnerActivity&quot;</li>
-            <li><em>Create project from existing source:</em> set</li>
-            <li><em>Location:</em> &quot;<code>&lt;SDK_path&gt;/samples/android-8/Spinner</code>&quot;</li>
-            <li><em>Build Target:</em> &quot;API level of 3 or higher&quot; (<em>Target Name</em> &quot;Android 1.5 or higher&quot;)</li>
-            <li><em>Package name:</em> (disabled, set to &quot;<code>com.android.example.spinner</code>&quot;)</li>
-            <li><em>Create Activity:</em> (disabled, set to &quot;.SpinnerActivity&quot;)</li>
-            <li><em>Min SDK Version:</em> &quot;3&quot;</li>
-        </ul>
-        <p>
-            The following screenshot summarizes these values:
-        </p>
-            <a href="{@docRoot}images/testing/eclipse_new_android_project_complete_callouts.png">
-                <img src="{@docRoot}images/testing/eclipse_new_android_project_complete_callouts.png" alt="New Android Project dialog with filled-in values" style="height:230px"/>
-            </a>
-
-    </li>
-</ol>
-<p>
-    To create a new test project for the SpinnerTest application, follow these steps:
-</p>
-<ol>
-    <li>
-        Click Next. The <strong>New Android Test Project</strong> dialog appears.
-    </li>
-    <li>
-        Set &quot;Create a Test Project&quot;.
-    </li>
-    <li>
-        Leave the other values unchanged. The result should be:
-        <ul>
-            <li><em>Create a Test Project:</em> checked</li>
-            <li><em>Test Project Name:</em> &quot;SpinnerActivityTest&quot;</li>
-            <li><em>Use default location:</em> checked (this should contain the directory name &quot;<code>workspace/SpinnerActivityTest</code>&quot;).</li>
-            <li><em>Build Target:</em> Use the same API level you used in the previous step.</li>
-            <li><em>Application name:</em> &quot;SpinnerActivityTest&quot;</li>
-            <li><em>Package name:</em> &quot;<code>com.android.example.spinner.test</code>&quot;</li>
-            <li><em>Min SDK Version:</em> &quot;3&quot;</li>
-        </ul>
-        <p>
-            The following screenshot summarizes these values:
-        </p>
-            <a href="{@docRoot}images/testing/eclipse_new_android_testproject_complete_callouts.png">
-            <img src="{@docRoot}images/testing/eclipse_new_android_testproject_complete_callouts.png" alt="New Android Test Project dialog with filled-in values" style="height:230px"/>
-            </a>
-    </li>
-    <li>
-        Click Finish. Entries for SpinnerActivity and SpinnerActivityTest should appear in the
-        <strong>Package Explorer</strong>.
-        <p class="note">
-            <strong>Note:</strong> If you set <em>Build Target</em> to an API level higher than &quot;3&quot;, you will see the warning
-            &quot;The API level for the selected SDK target does not match the Min SDK version&quot;. You do not need to change the API level or the Min SDK version.
-            The message tells you that you are building the projects with one particular API level, but specifying that a lower API level is required. This may
-            occur if you have chosen not to install the optional earlier API levels.
-        </p>
-        <p>
-            If you see errors listed in the <strong>Problems</strong> pane at the bottom of the Eclipse window, or if a red error marker appears next to
-            the entry for SpinnerActivity in the Package Explorer, highlight the SpinnerActivity entry and then select
-            <strong>Project</strong>&nbsp;&gt;&nbsp;<strong>Clean</strong>. This should fix any errors.
-        </p>
-    </li>
-</ol>
-<p>
-    You now have the application under test in the SpinnerActivity project,
-    and an empty test project in SpinnerActivityTest. You may
-    notice that the two projects are in different directories, but Eclipse with
-    ADT handles this automatically. You should have no problem in either building or running them.
-</p>
-<p>
-    Notice that Eclipse and ADT have already done some initial setup for your test application.
-    Expand the SpinnerActivityTest project, and notice that it already has an
-    Android manifest file <code>AndroidManifest.xml</code>.
-    Eclipse with ADT created this when you added the test project.
-    Also, the test application is already set up to use instrumentation. You can see this
-    by examining <code>AndroidManifest.xml</code>.
-    Open it, then at the bottom of the center pane click <strong>AndroidManifest.xml</strong>
-    to display the XML contents:
-</p>
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
-      package="com.android.example.spinner.test"
-      android:versionCode="1"
-      android:versionName="1.0"&gt;
-    &lt;uses-sdk android:minSdkVersion="3" /&gt;
-    &lt;instrumentation
-        android:targetPackage="com.android.example.spinner"
-        android:name="android.test.InstrumentationTestRunner" /&gt;
-    &lt;application android:icon="@drawable/icon" android:label="@string/app_name"&gt;
-        &lt;uses-library android:name="android.test.runner" /&gt;
-        ...
-    &lt;/application&gt;
-&lt;/manifest&gt;
-</pre>
-<p>
-    Notice the <code>&lt;instrumentation&gt;</code> element. The attribute
-    <code>android:targetPackage="com.android.example.spinner"</code> tells Android that the
-    application under test is defined in the Android package
-    <code>com.android.example.spinner</code>. Android now knows to use that
-    package's <code>AndroidManifest.xml</code> file to launch the application under test.
-    The <code>&lt;instrumentation&gt;</code> element also contains the attribute
-    <code>android:name="android.test.InstrumentationTestRunner"</code>, which tells Android
-    instrumentation to run the test application with Android's instrumentation-enabled test runner.
-</p>
-<h2 id="CreateTestCaseClass">Creating the Test Case Class</h2>
-
-<p>
-    You now have a test project SpinnerActivityTest, and the basic structure of a test
-    application also called SpinnerActivityTest. The basic structure includes all the files and
-    directories you need to build and run a test application, except for the class that
-    contains your tests (the test case class).
-</p>
-<p>
-    The next step is to define the test case class. In this tutorial, you'll be creating a
-    test case class that includes:
-</p>
-<ul>
-    <li>
-        Test setup. This use of the JUnit {@link junit.framework.TestCase#setUp() setUp()}
-        method demonstrates some of the tasks you might perform before running an Android test.
-    </li>
-    <li>
-        Testing initial conditions. This test demonstrates a good testing technique.
-        It also demonstrates that with Android instrumentation you can look at the application
-        under test <em>before</em> the main activity starts. The test checks that the application's
-        important objects have been initialized.
-        If the test fails, you then know that any other tests against the application are
-        unreliable, since the application was running in an incorrect state.
-        <p class="note">
-            <strong>Note:</strong> The purpose of testing initial conditions is not the same as
-            using <code>setUp()</code>. The JUnit {@link junit.framework.TestCase#setUp()} runs once
-            before <strong>each test method</strong>, and its purpose is to create a clean test
-            environment. The initial conditions test runs once, and its purpose is to verify that the
-            application under test is ready to be tested.
-        </p>
-    </li>
-    <li>
-        Testing the UI. This test shows how to control the main application's UI
-        with instrumentation, a powerful automation feature of Android testing.
-    </li>
-    <li>
-        Testing state management. This test shows some techniques for testing how
-        well the application maintains state in the Android environment. Remember that to
-        provide a satisfactory user experience, your application must never lose its current state,
-        even if it's interrupted by a phone call or destroyed because of memory constraints.
-        The Android activity lifecycle provides ways to maintain state, and the
-        <code>SpinnerActivity</code> application uses them. The test shows the techniques for
-        verifying that they work.
-    </li>
-</ul>
-<p>
-  Android tests are contained in a special type of Android application that contains one or more test class definitions. Each of these contains
-  one or more test methods that do the actual tests. In this tutorial, you will first add a test case class, and then add tests to it.
-</p>
-<p>
- You first choose an Android test case class to extend. You choose from the base test case classes according to the Android component you are testing and the types of tests you are doing.
- In this tutorial, the application under test has a single simple activity, so the test case class will be for an Activity component. Android offers several, but the one that tests in
- the most realistic environment is {@link android.test.ActivityInstrumentationTestCase2}, so you will use it as the base class. Like all activity test case classes,
- <code>ActivityInstrumentationTestCase2</code> offers convenience methods for interacting directly with the UI of the application under test.
-</p>
-<h3 id="AddTestCaseClass">Adding the test case class file</h3>
-<p>
-    To add <code>ActivityInstrumentationTestCase2</code> as the base test case class, follow these steps:
-</p>
-<ol>
-  <li>
-    In the Package Explorer, expand the test project SpinnerActivityTest if it is not open already.
-  </li>
-  <li>
-    Within SpinnerActivityTest, expand the <code>src/</code> folder and then the package marker for
-    <code>com.android.example.spinner.test</code>. Right-click on the package name and select <strong>New</strong> &gt; <strong>Class</strong>:<br/>
-    <a href="{@docRoot}images/testing/spinner_create_test_class_callouts.png">
-      <img alt="Menu for creating a new class in the test application" src="{@docRoot}images/testing/spinner_create_test_class_callouts.png" style="height:230px"/>
-    </a>
-    <p>
-      The <strong>New Java Class</strong> wizard appears:
-    </p>
-    <a href="{@docRoot}images/testing/spinnertest_new_class_callouts.png">
-      <img alt="New Java Class wizard dialog" src="{@docRoot}images/testing/spinnertest_new_class_callouts.png" style="height:230px"/>
-    </a>
-  </li>
-  <li>
-    In the wizard, enter the following:
-    <ul>
-      <li>
-        <em>Name:</em> &quot;SpinnerActivityTest&quot;. This becomes the name of your test class.
-      </li>
-      <li>
-        <em>Superclass:</em> &quot;<code>android.test.ActivityInstrumentationTestCase2&lt;SpinnerActivity&gt;</code>&quot;. The superclass is parameterized, so
-        you have to provide it your main application's class name.
-      </li>
-    </ul>
-    <p>
-      Do not change any of the other settings. Click Finish.
-    </p>
-  </li>
-  <li>
-    You now have a new file <code>SpinnerActivityTest.java</code> in the project.
-  </li>
-  <li>
-    To resolve the reference to SpinnerActivity, add the following import:
-<pre>
-import com.android.example.spinner.SpinnerActivity;
-</pre>
-  </li>
-</ol>
-<h3 id="AddConstructor">Adding the test case constructor</h3>
-  <p>
-    To ensure that the test application is instantiated correctly, you must set up a constructor that the test
-    runner will call when it instantiates your test class. This constructor has no parameters, and its sole
-    purpose is to pass information to the superclass's default constructor. To set up this constructor, enter the
-    following code in the class:
-  </p>
-<pre>
-  public SpinnerActivityTest() {
-    super(SpinnerActivity.class);
-  } // end of SpinnerActivityTest constructor definition
-</pre>
-<p>
-  This calls the superclass constructor with the main activity's class (<code>SpinnerActivity.class</code>) for the application under test. Android uses this information to find the application and activity to test.
-</p>
-<p>
-  You are now ready to add tests, by adding test methods to the class.
-</p>
-<h3 id="AddSetupMethod">Adding the setup method</h3>
-<p>
-    The <code>setUp()</code> method is invoked before every test. You use it to initialize variables and clean up from previous tests. You can also use
-    the JUnit {@link junit.framework.TestCase#tearDown() tearDown()} method, which runs <strong>after</strong> every test method. The tutorial does not use it.
-</p>
-<p>
-    The method you are going to add does the following:
-</p>
-<ul>
-  <li>
-    <code>super.setUp()</code>. Invokes the superclass constructor for <code>setUp()</code>, which is required by JUnit.
-  </li>
-  <li>
-    Calls {@link android.test.ActivityInstrumentationTestCase2#setActivityInitialTouchMode(boolean) setActivityInitialTouchMode(false)}.
-    This turns off <strong>touch mode</strong> in the device or emulator. If any of your test methods send key events to the application,
-    you must turn off touch mode <em>before</em> you start any activities; otherwise, the call is ignored.
-  </li>
-  <li>
-    Stores references to system objects. Retrieves and stores a reference to the activity under test, the <code>Spinner</code>
-    widget used by the activity, the <code>SpinnerAdapter</code> that backs the widget, and the string value of the selection that is
-    set when the application is first installed. These objects are used in the state management test. The methods invoked are:
-    <ul>
-      <li>
-        {@link android.test.ActivityInstrumentationTestCase2#getActivity()}. Gets a reference to the activity under test (<code>SpinnerActivity</code>).
-        This call also starts the activity if it is not already running.
-      </li>
-      <li>
-        {@link android.app.Activity#findViewById(int)}. Gets a reference to the <code>Spinner</code> widget of the application under test.
-      </li>
-      <li>
-        {@link android.widget.AbsSpinner#getAdapter()}. Gets a reference to the adapter (an array of strings) backing the spinner.
-      </li>
-    </ul>
-  </li>
-</ul>
-<p>
-    Add this code to the definition of <code>SpinnerActivityTest</code>, after the constructor definition:
-</p>
-<pre>
-  &#64;Override
-  protected void setUp() throws Exception {
-    super.setUp();
-
-    setActivityInitialTouchMode(false);
-
-    mActivity = getActivity();
-
-    mSpinner =
-      (Spinner) mActivity.findViewById(
-        com.android.example.spinner.R.id.Spinner01
-      );
-
-      mPlanetData = mSpinner.getAdapter();
-
-  } // end of setUp() method definition
-</pre>
-<p>
-    Add these members to the test case class:
-</p>
-<pre>
-  private SpinnerActivity mActivity;
-  private Spinner mSpinner;
-  private SpinnerAdapter mPlanetData;
-</pre>
-<p>
-  Add these imports:
-</p>
-<pre>
-import android.widget.Spinner;
-import android.widget.SpinnerAdapter;
-</pre>
-<p>
-    You now have the complete <code>setUp()</code> method.
-</p>
-<h3 id="AddPreConditionsTest">Adding an initial conditions test</h3>
-<p>
-  The initial conditions test verifies that the application under test is initialized correctly. It is an illustration of the types of tests you can run, so it is not comprehensive.
-  It verifies the following:
-</p>
-<ul>
-  <li>
-    The item select listener is initialized. This listener is called when a selection is made from the spinner.
-  </li>
-  <li>
-    The adapter that provides values to the spinner is initialized.
-  </li>
-  <li>
-    The adapter contains the right number of entries.
-  </li>
-</ul>
-<p>
-  The actual initialization of the application under test is done in <code>setUp()</code>, which the test runner calls automatically before every test. The verifications are
-  done with JUnit {@link junit.framework.Assert} calls. As a useful convention, the method name is <code>testPreConditions()</code>:
-</p>
-<pre>
-  public void testPreConditions() {
-    assertTrue(mSpinner.getOnItemSelectedListener() != null);
-    assertTrue(mPlanetData != null);
-    assertEquals(mPlanetData.getCount(),ADAPTER_COUNT);
-  } // end of testPreConditions() method definition
-</pre>
-<p>
-  Add this member:
-</p>
-<pre>
-  public static final int ADAPTER_COUNT = 9;
-</pre>
-<h3 id="AddUITest">Adding a UI test</h3>
-<p>
-  Now create a UI test that selects an item from the <code>Spinner</code> widget. The test sends key events to the UI with key events.
-  The test confirms that the selection matches the result you expect.
-</p>
-<p>
-  This test demonstrates the power of using instrumentation in Android testing. Only an instrumentation-based test class allows you to send key events (or touch events)
-  to the application under test. With instrumentation, you can test your UI without having to take screenshots, record the screen, or do human-controlled testing.
-</p>
-<p>
-  To work with the spinner, the test has to request focus for it and then set it to a known position. The test uses {@link android.view.View#requestFocus() requestFocus()} and
-  {@link android.widget.AbsSpinner#setSelection(int) setSelection()} to do this. Both of these methods interact with a View in the application under test, so you have to call them
-  in a special way.
-</p>
-<p>
-  Code in a test application that interacts with a View of the application under test must run in the main application's thread, also
-  known as the <em>UI thread</em>. To do this, you use the {@link android.app.Activity#runOnUiThread(java.lang.Runnable) Activity.runOnUiThread()}
-  method. You pass the code to <code>runOnUiThread()</code>in an anonymous {@link java.lang.Runnable Runnable} object. To set
-  the statements in the <code>Runnable</code> object, you override the object's {@link java.lang.Runnable#run()} method.
-</p>
-<p>
-  To send key events to the UI of the application under test, you use the <a href="{@docRoot}reference/android/test/InstrumentationTestCase.html#sendKeys(int...)">sendKeys</a>() method.
-  This method does not have to run on the UI thread, since Android uses instrumentation to pass the key events to the application under test.
-</p>
-<p>
-  The last part of the test compares the selection made by sending the key events to a pre-determined value. This tests that the spinner is working as intended.
-</p>
-<p>
-    The following sections show you how to add the code for this test.
-</p>
-<ol>
-    <li>
-        Get focus and set selection. Create a new method <code>public void testSpinnerUI()</code>. Add
-        code to to request focus for the spinner and set its position to default or initial position, "Earth". This code is run on the UI thread of
-        the application under test:
-<pre>
-  public void testSpinnerUI() {
-
-    mActivity.runOnUiThread(
-      new Runnable() {
-        public void run() {
-          mSpinner.requestFocus();
-          mSpinner.setSelection(INITIAL_POSITION);
-        } // end of run() method definition
-      } // end of anonymous Runnable object instantiation
-    ); // end of invocation of runOnUiThread
-</pre>
-        <p>
-          Add the following member to the test case class.
-        </p>
-<pre>
-  public static final int INITIAL_POSITION = 0;
-</pre>
-    </li>
-    <li>
-      Make a selection. Send key events to the spinner to select one of the items. To do this, open the spinner by
-      "clicking" the center keypad button (sending a DPAD_CENTER key event) and then clicking (sending) the down arrow keypad button five times. Finally,
-      click the center keypad button again to highlight the desired item. Add the following code:
-<pre>
-    this.sendKeys(KeyEvent.KEYCODE_DPAD_CENTER);
-    for (int i = 1; i &lt;= TEST_POSITION; i++) {
-      this.sendKeys(KeyEvent.KEYCODE_DPAD_DOWN);
-    } // end of for loop
-
-    this.sendKeys(KeyEvent.KEYCODE_DPAD_CENTER);
-</pre>
-    <p>
-      Add the following member to the test case class:
-    </p>
-<pre>
-  public static final int TEST_POSITION = 5;
-</pre>
-    <p>
-      This sets the final position of the spinner to "Saturn" (the spinner's backing adapter is 0-based).
-    </p>
-  </li>
-  <li>
-    Check the result. Query the current state of the spinner, and compare its current selection to the expected value.
-    Call the method {@link android.widget.AdapterView#getSelectedItemPosition() getSelectedItemPosition()} to find out the current selection position, and then
-    {@link android.widget.AdapterView#getItemAtPosition(int) getItemAtPosition()} to get the object corresponding to that position (casting it to a String). Assert that
-    this string value matches the expected value of "Saturn":
-<pre>
-    mPos = mSpinner.getSelectedItemPosition();
-    mSelection = (String)mSpinner.getItemAtPosition(mPos);
-    TextView resultView =
-      (TextView) mActivity.findViewById(
-        com.android.example.spinner.R.id.SpinnerResult
-      );
-
-    String resultText = (String) resultView.getText();
-
-    assertEquals(resultText,mSelection);
-
-  } // end of testSpinnerUI() method definition
-</pre>
-<p>
-  Add the following members to the test case class:
-</p>
-<pre>
-  private String mSelection;
-  private int mPos;
-</pre>
-  <p>
-    Add the following imports to the test case class:
-  </p>
-<pre>
-  import android.view.KeyEvent;
-  import android.widget.TextView;
-</pre>
-  </li>
-</ol>
-<p>
-  Pause here to run the tests you have. The procedure for running a test application is different
-  from running a regular Android application. You run a test application as an Android JUnit
-  application. To see how to do this, see <a href="#RunTests">Running the Tests and Seeing the Results</a>.
-</p>
-<p>
-    Eventually, you will see the <code>SpinnerActivity</code> application start, and the test
-    application controlling it by sending it key events. You will also see a new
-    <strong>JUnit</strong> view in the Explorer pane, showing the results of the
-    test. The JUnit view is documented in a following section,
-    <a href="#RunTests">Running the Test and Seeing the Results</a>.
-</p>
-<h3 id="StateManagementTests">Adding state management tests</h3>
-<p>
-  You now write two tests that verify that SpinnerActivity maintains its state when it is paused or terminated.
-  The state, in this case, is the current selection in the spinner. When users make a selection,
-  pause or terminate the application, and then resume or restart it, they should see
-  the same selection.
-</p>
-<p>
-  Maintaining state is an important feature of an application. Users may switch from the current
-  application temporarily to answer the phone, and then switch back. Android may decide to
-  terminate and restart an activity to change the screen orientation, or terminate an unused
-  activity to regain storage. In each case, users are best served by having the UI return to its
-  previous state (except where the logic of the application dictates otherwise).
-</p>
-<p>
-  SpinnerActivity manages its state in these ways:
-</p>
-  <ul>
-    <li>
-      Activity is hidden. When the spinner screen (the activity) is running but hidden by some other screen, it
-      stores the spinner's position and value in a form that persists while the application is running.
-    </li>
-    <li>
-      Application is terminated. When the activity is terminated, it stores the spinner's position and value in
-      a permanent form. The activity can read the position and value when it restarts, and restore the spinner to its previous state.
-    </li>
-    <li>
-      Activity re-appears. When the user returns to the spinner screen, the previous selection is restored.
-    </li>
-    <li>
-      Application is restarted. When the user starts the application again, the previous selection is restored.
-    </li>
-  </ul>
-<p class="note">
-    <strong>Note:</strong> An application can manage its state in other ways as well, but these are
-    not covered in this tutorial.
-</p>
-<p>
-  When an activity is hidden, it is <strong>paused</strong>. When it re-appears, it
-  <strong>resumes</strong>. Recognizing that these are key points in an activity's life cycle,
-  the Activity class provides two callback methods {@link android.app.Activity#onPause()} and
-  {@link android.app.Activity#onResume()} for handling pauses and resumes.
-  SpinnerActivity uses them for code that saves and restores state.
-</p>
-<p>
-  <strong>Note:</strong> If you would like to learn more about the difference between losing
-  focus/pausing and killing an application,
-  read about the <a href="{@docRoot}guide/components/activities.html#Lifecycle">activity
-lifecycle</a>.
-</p>
-<p>
-  The first test verifies that the spinner selection is maintained after the entire application is shut down and then restarted. The test uses instrumentation to
-  set the spinner's variables outside of the UI. It then terminates the activity by calling {@link android.app.Activity#finish() Activity.finish()}, and restarts it
-  using the instrumentation method {@link android.test.ActivityInstrumentationTestCase2#getActivity()}. The test then asserts that the current spinner state matches
-  the test values.
-</p>
-<p>
-  The second test verifies that the spinner selection is maintained after the activity is paused and then resumed. The test uses instrumentation to
-  set the spinner's variables outside of the UI and then force calls to the <code>onPause()</code> and <code>onResume()</code> methods. The test then
-  asserts that the current spinner state matches the test values.
-</p>
-<p>
-  Notice that these tests make limited assumptions about the mechanism by which the activity manages state. The tests use the activity's getters and
-  setters to control the spinner. The first test also knows that hiding an activity calls <code>onPause()</code>, and bringing it back to the foreground
-  calls <code>onResume()</code>. Other than this, the tests treat the activity as a "black box".
-</p>
-<p>
-    To add the code for testing state management across shutdown and restart, follow these steps:
-</p>
- <ol>
-    <li>
-      Add the test method <code>testStateDestroy()</code>, then
-      set the spinner selection to a test value:
-<pre>
-  public void testStateDestroy() {
-    mActivity.setSpinnerPosition(TEST_STATE_DESTROY_POSITION);
-    mActivity.setSpinnerSelection(TEST_STATE_DESTROY_SELECTION);
-</pre>
-    </li>
-    <li>
-      Terminate the activity and restart it:
-<pre>
-    mActivity.finish();
-    mActivity = this.getActivity();
-</pre>
-    </li>
-    <li>
-      Get the current spinner settings from the activity:
-<pre>
-    int currentPosition = mActivity.getSpinnerPosition();
-    String currentSelection = mActivity.getSpinnerSelection();
-</pre>
-    </li>
-    <li>
-      Test the current settings against the test values:
-<pre>
-    assertEquals(TEST_STATE_DESTROY_POSITION, currentPosition);
-    assertEquals(TEST_STATE_DESTROY_SELECTION, currentSelection);
-  } // end of testStateDestroy() method definition
-</pre>
-<p>
-  Add the following members to the test case class:
-<pre>
-  public static final int TEST_STATE_DESTROY_POSITION = 2;
-  public static final String TEST_STATE_DESTROY_SELECTION = "Earth";
-</pre>
-    </li>
- </ol>
-<p>
-    To add the code for testing state management across a pause and resume, follow these steps:
-</p>
-<ol>
-    <li>
-      Add the test method <code>testStatePause()</code>:
-<pre>
-    &#64;UiThreadTest
-    public void testStatePause() {
-</pre>
-    <p>
-      The <code>@UiThreadTest</code> annotation tells Android to build this method so that it runs
-      on the UI thread. This allows the method to change the state of the spinner widget in the
-      application under test. This use of <code>@UiThreadTest</code> shows that, if necessary, you
-      can run an entire method on the UI thread.
-    </p>
-    </li>
-   <li>
-    Set up instrumentation. Get the instrumentation object
-    that is controlling the application under test. This is used later to
-    invoke the <code>onPause()</code> and <code>onResume()</code> methods:
-<pre>
-    Instrumentation mInstr = this.getInstrumentation();
-</pre>
-  </li>
-  <li>
-    Set the spinner selection to a test value:
-<pre>
-    mActivity.setSpinnerPosition(TEST_STATE_PAUSE_POSITION);
-    mActivity.setSpinnerSelection(TEST_STATE_PAUSE_SELECTION);
-</pre>
-  </li>
-  <li>
-    Use instrumentation to call the Activity's <code>onPause()</code>:
-<pre>
-    mInstr.callActivityOnPause(mActivity);
-</pre>
-    <p>
-      Under test, the activity is waiting for input. The invocation of
-      {@link android.app.Instrumentation#callActivityOnPause(android.app.Activity)}
-      performs a call directly to the activity's <code>onPause()</code> instead
-      of manipulating the activity's UI to force it into a paused state.
-    </p>
-  </li>
-  <li>
-    Force the spinner to a different selection:
-<pre>
-    mActivity.setSpinnerPosition(0);
-    mActivity.setSpinnerSelection("");
-</pre>
-    <p>
-      This ensures that resuming the activity actually restores the
-      spinner's state rather than simply leaving it as it was.
-    </p>
-  </li>
-  <li>
-    Use instrumentation to call the Activity's <code>onResume()</code>:
-<pre>
-    mInstr.callActivityOnResume(mActivity);
-</pre>
-    <p>
-      Invoking {@link android.app.Instrumentation#callActivityOnResume(android.app.Activity)}
-      affects the activity in a way similar to <code>callActivityOnPause</code>. The
-      activity's <code>onResume()</code> method is invoked instead of manipulating the
-      activity's UI to force it to resume.
-    </p>
-  </li>
-  <li>
-    Get the current state of the spinner:
-<pre>
-    int currentPosition = mActivity.getSpinnerPosition();
-    String currentSelection = mActivity.getSpinnerSelection();
-</pre>
-  </li>
-  <li>
-    Test the current spinner state against the test values:
-<pre>
-    assertEquals(TEST_STATE_PAUSE_POSITION,currentPosition);
-    assertEquals(TEST_STATE_PAUSE_SELECTION,currentSelection);
-  } // end of testStatePause() method definition
-</pre>
-    <p>
-      Add the following members to the test case class:
-    </p>
-<pre>
-  public static final int TEST_STATE_PAUSE_POSITION = 4;
-  public static final String TEST_STATE_PAUSE_SELECTION = "Jupiter";
-</pre>
-  </li>
-  <li>
-    Add the following imports:
-<pre>
-  import android.app.Instrumentation;
-  import android.test.UiThreadTest;
-</pre>
-  </li>
-</ol>
-<h2 id="RunTests">Running the Tests and Seeing the Results</h2>
- <p>
-    The most simple way to run the <code>SpinnerActivityTest</code> test case is to run it directly from the Package Explorer.
- </p>
- <p>
-    To run the <code>SpinnerActivityTest</code> test, follow these steps:
-</p>
- <ol>
-    <li>
-      In the Package Explorer, right-click the project SpinnerActivityTest at the top level, and then
-      select <strong>Run As</strong> &gt; <strong>Android JUnit Test</strong>:<br/>
-      <a href="{@docRoot}images/testing/spinnertest_runas_menu_callouts.png">
-        <img alt="Menu to run a test as an Android JUnit test" src="{@docRoot}images/testing/spinnertest_runas_menu_callouts.png" style="height:230px">
-      </a>
-    </li>
-    <li>
-        You will see the emulator start. When the unlock option is displayed (its appearance depends on the API level you specified for the AVD),
-        unlock the home screen.
-    </li>
-    <li>
-      The test application starts. You see a new tab for the <strong>JUnit</strong> view, next to the Package Explorer tab:<br/>
-      <a href="{@docRoot}images/testing/spinnertest_junit_panel.png">
-        <img alt="The JUnit window" src="{@docRoot}images/testing/spinnertest_junit_panel.png" style="height:230px">
-      </a>
-    </li>
-</ol>
-<p>
-    This view contains two sub-panes. The top pane summarizes the tests that were run, and the bottom pane shows failure traces for
-    highlighted tests.
-</p>
-<p>
-   At the conclusion of a successful test run, this is the view's appearance:<br/>
-   <a href="{@docRoot}images/testing/spinnertest_junit_success.png">
-    <img src="{@docRoot}images/testing/spinnertest_junit_success.png" alt="JUnit test run success" style="height:230px"/>
-   </a>
-</p>
-<p>
-    The upper pane summarizes the test:
-</p>
-    <ul>
-        <li>
-            Total time elapsed for the test application(labeled <em>Finished after &lt;x&gt; seconds</em>).
-        </li>
-        <li>
-            Number of runs (<em>Runs:</em>) - the number of tests in the entire test class.
-        </li>
-        <li>
-            Number of errors (<em>Errors:</em>) - the number of program errors and exceptions encountered during
-            the test run.
-        </li>
-        <li>
-            Number of failures (<em>Failures:</em>) - the number of test failures encountered during the test
-            run. This is the number of assertion failures. A test can fail even if the program does not encounter an error.
-        </li>
-        <li>
-            A progress bar. The progress bar extends from left to right as the tests run.
-            <p>
-               If all the tests succeed, the bar remains green. If a test fails, the bar turns from green to red.
-            </p>
-        </li>
-        <li>
-            A test method summary. Below the bar, you see a line for each class in the test application. To look at the results for the individual
-            methods in a test, click the arrow at the left to expand the line. You see the name of each test method. To the
-            right of the name, you see the time taken by the test. You can look at the test's code
-            by double-clicking its name.
-        </li>
-    </ul>
-<p>
-    The lower pane contains the failure trace. If all the tests are successful, this pane is empty. If some tests fail,
-    then if you highlight a failed test in the upper pane, the lower view contains a stack trace for the test. This is
-    demonstrated in the next section.
-</p>
-<p class="note">
-    <strong>Note:</strong> If you run the test application and nothing seems to happen, look for
-    the JUnit view. If you do not see it, you may have run the test application
-    as a regular Android application.
-    Remember that you need to run it as an Android <strong>JUnit</strong>
-    application.
-</p>
-<h2 id="TestFailure">Forcing Some Tests to Fail</h2>
-<p>
-  A test is as useful when it fails as when it succeeds. This section shows what happens in Eclipse with ADT when a test fails. You
-  can quickly see that a test class has failed, find the method or methods that failed, and then use a failure trace to find
-  the exact problem.
-</p>
-<p>
-  The example application SpinnerActivity that you downloaded passes all the tests in the test application SpinnerActivityTest.
-  To force the test to fail, you must modify the example application. You change a line of setup code in the application under test. This
-  causes the <code>testPreConditions()</code> and <code>testTextView()</code> test methods to fail.
-</p>
-<p>
-    To force the tests to fail, follow these steps:
-</p>
-<ol>
-  <li>
-    In Eclipse with ADT, go to the SpinnerActivity project and open the file <code>SpinnerActivity.java</code>.
-  </li>
-  <li>
-    At the top of <code>SpinnerActivity.java</code>, at the end of the <code>onCreate()</code> method, find the following line:
-<pre>
-    // mySpinner.setOnItemSelectedListener(null);
-</pre>
-    <p>Remove the forward slash characters at the beginning of the line to
-    uncomment the line. This sets the listener callback to null:
-    </p>
-<pre>
-    mySpinner.setOnItemSelectedListener(null);
-</pre>
-  </li>
-  <li>
-    The <code>testPreConditions()</code> method in <code>SpinnerActivityTest</code> contains the following test:
-    <code>assertTrue(mSpinner.getOnItemSelectedListener() != null);</code>. This test asserts that the listener callback is <em>not</em> null.
-    Since you have modified the application under test, this assertion now fails.
-  </li>
-  <li>
-    Run the test, as described in the previous section <a href="#RunTests">Running the Tests and Seeing the Results</a>.
-  </li>
-</ol>
-<p>
-    The JUnit view is either created or updated with the results of the test. Now, however, the progress bar is red,
-    the number of failures is 2, and small "x" icons appear in the list icons next to the testPreConditions and
-    TestSpinnerUI tests. This indicates that the tests have failed. The display is similar to this:<br/>
-    <a href="{@docRoot}images/testing/spinnertest_junit_panel_fail_callouts.png">
-      <img src="{@docRoot}images/testing/spinnertest_junit_panel_fail_callouts.png" alt="The JUnit Failure window" style="height:230px"/>
-    </a>
-</p>
-<p>
-  You now want to look at the failures to see exactly where they occurred.
-</p>
-<p>
-    To examine the failures, follow these steps:
-</p>
-<ol>
-  <li>
-    Click the testPreconditions entry. In the lower pane entitled <strong>Failure Trace</strong>,
-    you see a stack trace of the calls that led to the failure. This trace is similar to the following screenshot:<br/>
-    <a href="{@docRoot}images/testing/spinnertest_junit_panel_failtrace_callouts.png">
-      <img src="{@docRoot}images/testing/spinnertest_junit_panel_failtrace_callouts.png" alt="The JUnit failure trace" style="height:230px"/>
-    </a>
-  </li>
-  <li>
-      The first line of the trace tells you the error. In this case, a JUnit assertion failed. To look at the
-      assertion in the test code, double-click the next line (the first line of the trace). In the center pane
-      a new tabbed window opens, containing the code for the test application <code>SpinnerActivityTest</code>. The failed assertion
-      is highlighted in the middle of the window.
-  </li>
-</ol>
-<p>
-    The assertion failed because you modified the main application to set the <code>getOnItemSelectedListener</code> callback to <code>null</code>.
-</p>
-<p>
-    You can look at the failure in <code>testTextView</code> if you want. Remember, though, that <code>testPreConditions</code> is meant to verify the
-    initial setup of the application under test. If testPreConditions() fails, then succeeding tests can't be trusted. The best strategy to follow is to
-    fix the problem and re-run all the tests.
-</p>
-<p>
-    Remember to go back to <code>SpinnerActivity.java</code> and re-comment the line you uncommented in an earlier step.
-</p>
-<p>
-  You have now completed the tutorial.
-</p>
-<h2 id="NextSteps">Next Steps</h2>
-<p>
-    This example test application has shown you how to create a test project and link it to
-    the application you want to test, how to choose and add a test case class, how to write
-    UI and state management tests, and how to run the tests against the application under
-    test. Now that you are familiar with the basics of testing Android applications, here
-    are some suggested next steps:
-</p>
-<p>
-    <strong>Learn more about testing on Android</strong>
-</p>
-<ul>
-    <li>
-        If you haven't done so already, read the
-        <a href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>
-        document in the <em>Dev Guide</em>. It provides an overview of how testing on Android
-        works. If you are just getting started with Android testing, reading that document will
-        help you understand the tools available to you, so that you can develop effective
-        tests.
-    </li>
-</ul>
-<p>
-    <strong>Review the main Android test case classes</strong>
-</p>
-<ul>
-    <li>
-        {@link android.test.ActivityInstrumentationTestCase2}
-    </li>
-    <li>
-        {@link android.test.ActivityUnitTestCase}
-    </li>
-    <li>
-        {@link android.test.ProviderTestCase2}
-    </li>
-    <li>
-        {@link android.test.ServiceTestCase}
-    </li>
-</ul>
-<p>
-    <strong>Learn more about the assert and utility classes</strong>
-</p>
-<ul>
-    <li>
-        {@link junit.framework.Assert}, the JUnit Assert class.
-    </li>
-    <li>
-        {@link android.test.MoreAsserts}, additional Android assert methods.
-    </li>
-    <li>
-        {@link android.test.ViewAsserts}, useful assertion methods for testing Views.
-    </li>
-    <li>
-        {@link android.test.TouchUtils}, utility methods for simulating touch events in an Activity.
-    </li>
-</ul>
-<p>
-    <strong>Learn about instrumentation and the instrumented test runner</strong>
-</p>
-<ul>
-    <li>
-        {@link android.app.Instrumentation}, the base instrumentation class.
-    </li>
-    <li>
-        {@link android.test.InstrumentationTestCase}, the base instrumentation test case.
-    </li>
-    <li>
-        {@link android.test.InstrumentationTestRunner}, the standard Android test runner.
-    </li>
-</ul>
-<h2 id="Appendix">Appendix</h2>
-<h3 id="InstallCompletedTestApp">Installing the Completed Test Application File</h3>
-<p>
-    The recommended approach to this tutorial is to follow the instructions step-by-step and
-    write the test code as you go. However, if you want to do this tutorial quickly,
-    you can install the entire file for the test application into the test project.
-</p>
-<p>
-    To do this, you first create a test project with the necessary structure and files by using
-    the automated tools in Eclipse. Then you exit Eclipse and copy the test application's file
-    from the SpinnerTest sample project into your test project. The SpinnerTest sample project is
-    part of the Samples component of the SDK.
-</p>
-<p>
-    The result is a complete test application, ready to run against the Spinner sample application.
-</p>
-<p>
-    To install the test application file, follow these steps:
-</p>
-<ol>
-    <li>
-        Set up the projects for the application under test and the test application, as described
-        in the section section <a href="#SetupProjects">Setting Up the Projects</a>.
-    </li>
-    <li>
-        Set up the emulator, as described in the section <a href="#SetupEmulator">Setting Up the Emulator</a>.
-    </li>
-    <li>
-        Add the test case class, as described in the section <a href="#AddTestCaseClass">Adding the test case class file</a>.
-    </li>
-    <li>
-        Close Eclipse with ADT.
-    </li>
-    <li>
-        Copy the file <code>&lt;SDK_path&gt;/samples/android-8/SpinnerTest/src/com/android/example/spinner/test/SpinnerActivityTest.java</code>
-        to the directory <code>workspace/SpinnerActivityTest/src/com/android/example/spinner/test/</code>.
-    </li>
-    <li>
-        Restart Eclipse with ADT.
-    </li>
-    <li>
-        In Eclipse with ADT, re-build the project <code>SpinnerActivityTest</code> by selecting it in the Package Explorer, right-clicking,
-        and selecting <em>Project</em>&nbsp;&gt;&nbsp;<em>Clean</em>.
-    </li>
-    <li>
-        The complete, working test application should now be in the <code>SpinnerActivityTest</code> project.
-    </li>
-</ol>
-<p>
-    You can now continue with the tutorial, starting at the section <a href="#AddConstructor">Adding the test case constructor</a> and
-    following along in the text.
-</p>
-<h3 id="EditorCommandLine">For Users Not Developing In Eclipse</h3>
-<p>
-    If you are not developing in Eclipse, you can still do this tutorial. Android provides tools for
-    creating test applications using a code editor and command-line tools. You use the following tools:
-</p>
-<ul>
-  <li>
-   <a href="{@docRoot}tools/help/adb.html">adb</a> - Installs and uninstalls applications and test applications to a device or the emulator. You
-   also use this tool to run the test application from the command line.
-  </li>
-  <li>
-    <a href="{@docRoot}tools/help/android.html">android</a> - Manages projects and test projects. This tool also manages AVDs and Android platforms.
-  </li>
-</ul>
-  <p>
-    You use the <code>emulator</code> tool to run the emulator from the command line.
-  </p>
-  <p>
-    Here are the general steps for doing this tutorial using an editor and the command line:
-  </p>
-<ol>
-  <li>
-    As described in the section <a href="#DownloadCode">Installing the Tutorial Sample Code</a>, get the sample code. You will then
-    have a directory <code>&lt;SDK_path&gt;/samples/android-8</code>, containing (among others) the directories <code>Spinner</code>
-    and <code>SpinnerTest</code>:
-    <ul>
-        <li>
-            <code>Spinner</code> contains the main application, also known as the <strong>application under test</strong>. This tutorial focuses on the
-            common situation of writing tests for an application that already exists, so the main application is provided to you.
-        </li>
-        <li>
-            <code>SpinnerTest</code> contains all the code for the test application. If you want to run quickly through the tutorial, you can
-            install the test code and then follow the text. You may get more from the tutorial, however, if you write the code as you go. The instructions
-            for installing the test code are in the section <a href="#InstallCompletedTestApp">Appendix: Installing the Completed Test Application File</a>.
-        </li>
-        </ul>
-  </li>
-  <li>
-    Navigate to the directory <code>&lt;SDK_path&gt;/samples/android-8</code>.
-  </li>
-  <li>
-    Create a new Android application project using <code>android create project</code>:
-<pre>
-$ android create project -t &lt;APItarget&gt; -k com.android.example.spinner -a SpinnerActivity -n SpinnerActivity -p Spinner
-</pre>
-    <p>
-        The value of <code>&lt;APItarget&gt;</code> should be &quot;3&quot; (API level 3) or higher. If you are already developing with a particular API level, and it is
-        higher than 3, then use that API level.
-    </p>
-    <p>
-        This a new Android project <code>SpinnerActivity</code> in the existing <code>Spinner</code> directory. The existing source and
-        resource files are not touched, but the <code>android</code> tool adds the necessary build files.
-    </p>
-  </li>
-  <li>
-    Create a new Android test project using <code>android create test-project</code>:
-<pre>
-$ android create test-project -m ../Spinner -n SpinnerActivityTest -p SpinnerActivityTest
-</pre>
-    <p>
-        This will create a new Android test project in the <em>new</em> directory <code>SpinnerActivityTest</code>. You do this
-        so that the solution to the tutorial that is in <code>SpinnerTest</code> is left untouched. If you want to use the solution
-        code instead of entering it as you read through the tutorial, refer to the section
-        <a href="#InstallCompletedTestApp">Appendix: Installing the Completed Test Application File</a>.
-    </p>
-    <p class="Note">
-      <strong>Note:</strong> Running <code>android create test-project</code> will automatically create
-      the file <code>AndroidManifest.xml</code> with the correct <code>&lt;instrumentation&gt;</code> element.
-    </p>
-  </li>
-  <li>
-    Build the sample application. If you are building with Ant, then it is easiest to use the command <code>ant debug</code> to build a debug version, since the SDK comes
-    with a debug signing key. The result will be the file <code>Spinner/bin/SpinnerActivity-debug.apk</code>.
-    You can install this to your device or emulator. Attach your device or start the emulator if you haven't already, and run the command:
-<pre>
-$ adb install Spinner/bin/SpinnerActivity-debug.apk
-</pre>
-  </li>
-  <li>
-    To create the test application, create a file <code>SpinnerActivityTest.java</code> in the directory
-    <code>SpinnerActivityTest/src/com/android/example/spinner/test/</code>.
-  </li>
-  <li>
-    Follow the tutorial, starting with the section <a href="#CreateTestCaseClass">Creating the Test Case Class</a>. When you are prompted to
-    run the sample application, go to the Launcher screen in your device or emulator and select SpinnerActivity.
-    When you are prompted to run the test application, return here to continue with the following instructions.
-  </li>
-  <li>
-    Build the test application. If you are building with Ant, then it is easiest to use the command <code>ant debug</code> to build a
-    debug version, since the SDK comes with a debug signing key. The result will be the Android file
-    <code>SpinnerActivityTest/bin/SpinnerActivityTest-debug.apk</code>. You can install this to your device or emulator.
-    Attach your device or start the emulator if you haven't already, and run the command:
-<pre>
-$ adb install SpinnerActivityTest/bin/SpinnerActivityTest-debug.apk
-</pre>
-  </li>
-  <li>
-    In your device or emulator, check that both the main application <code>SpinnerActivity</code> and the test application
-    <code>SpinnerActivityTest</code> are installed.
-  </li>
-  <li>
-    To run the test application, enter the following at the command line:
-<pre>
-$ adb shell am instrument -w com.android.example.spinner.test/android.test.InstrumentationTestRunner
- </pre>
-  </li>
-</ol>
-<p>
-    The result of a successful test looks like this:
-</p>
-<pre>
-com.android.example.spinner.test.SpinnerActivityTest:....
-Test results for InstrumentationTestRunner=....
-Time: 10.098
-OK (4 tests)
-</pre>
-<p>
-    If you force the test to fail, as described in the previous section <a href="#TestFailure">Forcing Some Tests to Fail</a>, then
-    the output looks like this:
-</p>
-<pre>
-com.android.example.spinner.test.SpinnerActivityTest:
-Failure in testPreConditions:
-junit.framework.AssertionFailedError
-  at com.android.example.spinner.test.SpinnerActivityTest.testPreConditions(SpinnerActivityTest.java:104)
-  at java.lang.reflect.Method.invokeNative(Native Method)
-  at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:205)
-  at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:195)
-  at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:175)
-  at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
-  at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
-  at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:430)
-  at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1447)
-Failure in testSpinnerUI:
-junit.framework.ComparisonFailure: expected:&lt;Result&gt; but was:&lt;Saturn&gt;
-  at com.android.example.spinner.test.SpinnerActivityTest.testSpinnerUI(SpinnerActivityTest.java:153)
-  at java.lang.reflect.Method.invokeNative(Native Method)
-  at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:205)
-  at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:195)
-  at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:175)
-  at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
-  at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
-  at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:430)
-  at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1447)
-..
-Test results for InstrumentationTestRunner=.F.F..
-Time: 9.377
-FAILURES!!!
-Tests run: 4,  Failures: 2,  Errors: 0
-</pre>
diff --git a/docs/html/tools/testing/activity_testing.jd b/docs/html/tools/testing/activity_testing.jd
deleted file mode 100644
index 8baa35d..0000000
--- a/docs/html/tools/testing/activity_testing.jd
+++ /dev/null
@@ -1,375 +0,0 @@
-page.title=Activity Testing
-parent.title=Testing
-parent.link=index.html
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-  <h2>In this document</h2>
-  <ol>
-    <li>
-      <a href="#ActivityTestAPI">The Activity Testing API</a>
-      <ol>
-        <li>
-            <a href="#ActivityInstrumentationTestCase2">ActivityInstrumentationTestCase2</a>
-        </li>
-        <li>
-            <a href="#ActivityUnitTestCase">ActivityUnitTestCase</a>
-        </li>
-        <li>
-            <a href="#SingleLaunchActivityTestCase">SingleLaunchActivityTestCase</a>
-        </li>
-        <li>
-            <a href="#MockObjectNotes">Mock objects and activity testing</a>
-        </li>
-        <li>
-            <a href="#AssertionNotes">Assertions for activity testing</a>
-        </li>
-      </ol>
-    </li>
-    <li>
-        <a href="#WhatToTest">What to Test</a>
-    </li>
-    <li>
-        <a href="#NextSteps">Next Steps</a>
-    </li>
-    <li>
-      <a href="#UITesting">Appendix: UI Testing Notes</a>
-      <ol>
-        <li>
-          <a href="#RunOnUIThread">Testing on the UI thread</a>
-        </li>
-        <li>
-          <a href="#NotouchMode">Turning off touch mode</a>
-        </li>
-        <li>
-          <a href="#UnlockDevice">Unlocking the Emulator or Device</a>
-        </li>
-        <li>
-          <a href="#UITestTroubleshooting">Troubleshooting UI tests</a>
-        </li>
-      </ol>
-    </li>
-    </ol>
-<h2>Key Classes</h2>
-    <ol>
-      <li>{@link android.test.InstrumentationTestRunner}</li>
-      <li>{@link android.test.ActivityInstrumentationTestCase2}</li>
-      <li>{@link android.test.ActivityUnitTestCase}</li>
-    </ol>
-<h2>Related Tutorials</h2>
-    <ol>
-      <li>
-         <a href="{@docRoot}tools/testing/activity_test.html">Activity Testing Tutorial</a>
-      </li>
-    </ol>
-<h2>See Also</h2>
-      <ol>
-        <li>
-          <a href="{@docRoot}tools/testing/testing_eclipse.html">
-          Testing from Eclipse with ADT</a>
-        </li>
-        <li>
-          <a href="{@docRoot}tools/testing/testing_otheride.html">
-          Testing from Other IDEs</a>
-        </li>
-      </ol>
-  </div>
-</div>
-<p>
-    Activity testing is particularly dependent on the Android instrumentation framework.
-    Unlike other components, activities have a complex lifecycle based on callback methods; these
-    can't be invoked directly except by instrumentation. Also, the only way to send events to the
-    user interface from a program is through instrumentation.
-</p>
-<p>
-    This document describes how to test activities using instrumentation and other test
-    facilities. The document assumes you have already read
-    <a href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>,
-    the introduction to the Android testing and instrumentation framework.
-</p>
-<h2 id="ActivityTestAPI">The Activity Testing API</h2>
-<p>
-    The activity testing API base class is {@link android.test.InstrumentationTestCase},
-    which provides instrumentation to the test case subclasses you use for Activities.
-</p>
-<p>
-    For activity testing, this base class provides these functions:
-</p>
-<ul>
-    <li>
-        Lifecycle control: With instrumentation, you can start the activity under test, pause it,
-        and destroy it, using methods provided by the test case classes.
-    </li>
-    <li>
-        Dependency injection: Instrumentation allows you to create mock system objects such as
-        Contexts or Applications and use them to run the activity under test. This
-        helps you control the test environment and isolate it from production systems. You can
-        also set up customized Intents and start an activity with them.
-    </li>
-    <li>
-        User interface interaction: You use instrumentation to send keystrokes or touch events
-        directly to the UI of the activity under test.
-    </li>
-</ul>
-<p>
-    The activity testing classes also provide the JUnit framework by extending
-    {@link junit.framework.TestCase} and {@link junit.framework.Assert}.
-</p>
-<p>
-    The two main testing subclasses are {@link android.test.ActivityInstrumentationTestCase2} and
-    {@link android.test.ActivityUnitTestCase}. To test an Activity that is launched in a mode
-    other than <code>standard</code>, you use {@link android.test.SingleLaunchActivityTestCase}.
-</p>
-<h3 id="ActivityInstrumentationTestCase2">ActivityInstrumentationTestCase2</h3>
-<p>
-    The {@link android.test.ActivityInstrumentationTestCase2} test case class is designed to do
-    functional testing of one or more Activities in an application, using a normal system
-    infrastructure. It runs the Activities in a normal instance of the application under test,
-    using a standard system Context. It allows you to send mock Intents to the activity under
-    test, so you can use it to test an activity that responds to multiple types of intents, or
-    an activity that expects a certain type of data in the intent, or both. Notice, though, that it
-    does not allow mock Contexts or Applications, so you can not isolate the test from the rest of
-    a production system.
-</p>
-<h3 id="ActivityUnitTestCase">ActivityUnitTestCase</h3>
-<p>
-    The {@link android.test.ActivityUnitTestCase} test case class tests a single activity in
-    isolation. Before you start the activity, you can inject a mock Context or Application, or both.
-    You use it to run activity tests in isolation, and to do unit testing of methods
-    that do not interact with Android. You can not send mock Intents to the activity under test,
-    although you can call
-    {@link android.app.Activity#startActivity(Intent) Activity.startActivity(Intent)} and then
-    look at arguments that were received.
-</p>
-<h3 id="SingleLaunchActivityTestCase">SingleLaunchActivityTestCase</h3>
-<p>
-    The {@link android.test.SingleLaunchActivityTestCase} class is a convenience class for
-    testing a single activity in an environment that doesn't change from test to test.
-    It invokes {@link junit.framework.TestCase#setUp() setUp()} and
-    {@link junit.framework.TestCase#tearDown() tearDown()} only once, instead of once per
-    method call. It does not allow you to inject any mock objects.
-</p>
-<p>
-    This test case is useful for testing an activity that runs in a mode other than
-    <code>standard</code>. It ensures that the test fixture is not reset between tests. You
-    can then test that the activity handles multiple calls correctly.
-</p>
-<h3 id="MockObjectNotes">Mock objects and activity testing</h3>
-<p>
-    This section contains notes about the use of the mock objects defined in
-    {@link android.test.mock} with activity tests.
-</p>
-<p>
-    The mock object {@link android.test.mock.MockApplication} is only available for activity
-    testing if you use the {@link android.test.ActivityUnitTestCase} test case class.
-    By default, <code>ActivityUnitTestCase</code>, creates a hidden <code>MockApplication</code>
-    object that is used as the application under test. You can inject your own object using
-    {@link android.test.ActivityUnitTestCase#setApplication(Application) setApplication()}.
-</p>
-<h3 id="AssertionNotes">Assertions for activity testing</h3>
-<p>
-    {@link android.test.ViewAsserts} defines assertions for Views. You use it to verify the
-    alignment and position of View objects, and to look at the state of ViewGroup objects.
-</p>
-<h2 id="WhatToTest">What To Test</h2>
-<ul>
-    <li>
-        Input validation: Test that an activity responds correctly to input values in an
-        EditText View. Set up a keystroke sequence, send it to the activity, and then
-        use {@link android.view.View#findViewById(int)} to examine the state of the View. You can
-        verify that a valid keystroke sequence enables an OK button, while an invalid one leaves the
-        button disabled. You can also verify that the Activity responds to invalid input by
-        setting error messages in the View.
-    </li>
-    <li>
-        Lifecycle events: Test that each of your application's activities handles lifecycle events
-        correctly. In general, lifecycle events are actions, either from the system or from the
-        user, that trigger a callback method such as <code>onCreate()</code> or
-        <code>onClick()</code>. For example, an activity should respond to pause or destroy events
-        by saving its state. Remember that even a change in screen orientation causes the current
-        activity to be destroyed, so you should test that accidental device movements don't
-        accidentally lose the application state.
-    </li>
-    <li>
-        Intents: Test that each activity correctly handles the intents listed in the intent
-        filter specified in its manifest. You can use
-        {@link android.test.ActivityInstrumentationTestCase2} to send mock Intents to the
-        activity under test.
-    </li>
-    <li>
-        Runtime configuration changes: Test that each activity responds correctly to the
-        possible changes in the device's configuration while your application is running. These
-        include a change to the device's orientation, a change to the current language, and so
-        forth. Handling these changes is described in detail in the topic
-        <a href="{@docRoot}guide/topics/resources/runtime-changes.html">Handling Runtime
-        Changes</a>.
-    </li>
-    <li>
-        Screen sizes and resolutions: Before you publish your application, make sure to test it on
-        all of the screen sizes and densities on which you want it to run. You can test the
-        application on multiple sizes and densities using AVDs, or you can test your application
-        directly on the devices that you are targeting. For more information, see the topic
-        <a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>.
-    </li>
-</ul>
-<h2 id="NextSteps">Next Steps</h2>
-<p>
-    To learn how to set up and run tests in Eclipse, please refer to 
-<a href="{@docRoot}tools/testing/testing_eclipse.html">Testing from Eclipse with ADT</a>.
-    If you're not working in Eclipse, refer to 
-<a href="{@docRoot}tools/testing/testing_otheride.html">Testing from Other IDEs</a>.
-</p>
-<p>
-    If you want a step-by-step introduction to testing activities, try the 
-    <a href="{@docRoot}tools/testing/activity_test.html">Activity Testing Tutorial</a>, which
-    guides you through a testing scenario that you develop against an activity-oriented application.
-</p>
-<h2 id="UITesting">Appendix: UI Testing Notes</h2>
-<p>
-    The following sections have tips for testing the UI of your Android application, specifically
-    to help you handle actions that run in the UI thread, touch screen and keyboard events, and home
-    screen unlock during testing.
-</p>
-<h3 id="RunOnUIThread">Testing on the UI thread</h3>
-<p>
-    An application's activities run on the application's <strong>UI thread</strong>. Once the
-    UI is instantiated, for example in the activity's <code>onCreate()</code> method, then all
-    interactions with the UI must run in the UI thread. When you run the application normally, it
-    has access to the thread and does not have to do anything special.
-</p>
-<p>
-    This changes when you run tests against the application. With instrumentation-based classes,
-    you can invoke methods against the UI of the application under test. The other test classes
-    don't allow this. To run an entire test method on the UI thread, you can annotate the thread
-    with <code>@UiThreadTest</code>. Notice that this will run <em>all</em> of the method statements
-    on the UI thread.  Methods that do not interact with the UI are not allowed; for example, you
-    can't invoke <code>Instrumentation.waitForIdleSync()</code>.
-</p>
-<p>
-    To run a subset of a test method on the UI thread, create an anonymous class of type
-    <code>Runnable</code>, put the statements you want in the <code>run()</code> method, and
-    instantiate a new instance of the class as a parameter to the method
-    <code><em>appActivity</em>.runOnUiThread()</code>, where <code><em>appActivity</em></code> is
-    the instance of the application you are testing.
-</p>
-<p>
-    For example, this code instantiates an activity to test, requests focus (a UI action) for the
-    Spinner displayed by the activity, and then sends a key to it. Notice that the calls to
-    <code>waitForIdleSync</code> and <code>sendKeys</code> aren't allowed to run on the UI thread:
-</p>
-<pre>
-  private MyActivity mActivity; // MyActivity is the class name of the app under test
-  private Spinner mSpinner;
-
-  ...
-
-  protected void setUp() throws Exception {
-      super.setUp();
-      mInstrumentation = getInstrumentation();
-
-      mActivity = getActivity(); // get a references to the app under test
-
-      /*
-       * Get a reference to the main widget of the app under test, a Spinner
-       */
-      mSpinner = (Spinner) mActivity.findViewById(com.android.demo.myactivity.R.id.Spinner01);
-
-  ...
-
-  public void aTest() {
-      /*
-       * request focus for the Spinner, so that the test can send key events to it
-       * This request must be run on the UI thread. To do this, use the runOnUiThread method
-       * and pass it a Runnable that contains a call to requestFocus on the Spinner.
-       */
-      mActivity.runOnUiThread(new Runnable() {
-          public void run() {
-              mSpinner.requestFocus();
-          }
-      });
-
-      mInstrumentation.waitForIdleSync();
-
-      this.sendKeys(KeyEvent.KEYCODE_DPAD_CENTER);
-</pre>
-
-<h3 id="NotouchMode">Turning off touch mode</h3>
-<p>
-    To control the emulator or a device with key events you send from your tests, you must turn off
-    touch mode. If you do not do this, the key events are ignored.
-</p>
-<p>
-    To turn off touch mode, you invoke
-    <code>ActivityInstrumentationTestCase2.setActivityTouchMode(false)</code>
-    <em>before</em> you call <code>getActivity()</code> to start the activity. You must invoke the
-    method in a test method that is <em>not</em> running on the UI thread. For this reason, you
-    can't invoke the touch mode method from a test method that is annotated with
-    <code>@UIThread</code>. Instead, invoke the touch mode method from <code>setUp()</code>.
-</p>
-<h3 id="UnlockDevice">Unlocking the emulator or device</h3>
-<p>
-    You may find that UI tests don't work if the emulator's or device's home screen is disabled with
-    the keyguard pattern. This is because the application under test can't receive key events sent
-    by <code>sendKeys()</code>. The best way to avoid this is to start your emulator or device
-    first and then disable the keyguard for the home screen.
-</p>
-<p>
-    You can also explicitly disable the keyguard. To do this,
-    you need to add a permission in the manifest file (<code>AndroidManifest.xml</code>) and
-    then disable the keyguard in your application under test. Note, though, that you either have to
-    remove this before you publish your application, or you have to disable it with code in
-    the published application.
-</p>
-<p>
-    To add the permission, add the element
-    <code>&lt;uses-permission android:name="android.permission.DISABLE_KEYGUARD"/&gt;</code>
-    as a child of the <code>&lt;manifest&gt;</code> element. To disable the KeyGuard, add the
-    following code to the <code>onCreate()</code> method of activities you intend to test:
-</p>
-<pre>
-  mKeyGuardManager = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);
-  mLock = mKeyGuardManager.newKeyguardLock("<em>activity_classname</em>");
-  mLock.disableKeyguard();
-</pre>
-<p>where <code><em>activity_classname</em></code> is the class name of the activity.</p>
-<h3 id="UITestTroubleshooting">Troubleshooting UI tests</h3>
-<p>
-    This section lists some of the common test failures you may encounter in UI testing, and their
-    causes:
-</p>
-<dl>
-    <dt><code>WrongThreadException</code></dt>
-    <dd>
-      <p><strong>Problem:</strong></p>
-      For a failed test, the Failure Trace contains the following error message:
-      <code>
-        android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created
-        a view hierarchy can touch its views.
-      </code>
-      <p><strong>Probable Cause:</strong></p>
-        This error is common if you tried to send UI events to the UI thread from outside the UI
-        thread. This commonly happens if you send UI events from the test application, but you don't
-        use the <code>@UIThread</code> annotation or the <code>runOnUiThread()</code> method. The
-        test method tried to interact with the UI outside the UI thread.
-      <p><strong>Suggested Resolution:</strong></p>
-        Run the interaction on the UI thread. Use a test class that provides instrumentation. See
-        the previous section <a href="#RunOnUIThread">Testing on the UI Thread</a>
-        for more details.
-    </dd>
-    <dt><code>java.lang.RuntimeException</code></dt>
-    <dd>
-      <p><strong>Problem:</strong></p>
-        For a failed test, the Failure Trace contains the following error message:
-      <code>
-        java.lang.RuntimeException: This method can not be called from the main application thread
-      </code>
-      <p><strong>Probable Cause:</strong></p>
-        This error is common if your test method is annotated with <code>@UiThreadTest</code> but
-        then tries to do something outside the UI thread or tries to invoke
-        <code>runOnUiThread()</code>.
-      <p><strong>Suggested Resolution:</strong></p>
-        Remove the <code>@UiThreadTest</code> annotation, remove the <code>runOnUiThread()</code>
-        call, or re-factor your tests.
-    </dd>
-</dl>
diff --git a/docs/html/tools/testing/contentprovider_testing.jd b/docs/html/tools/testing/contentprovider_testing.jd
deleted file mode 100644
index a6440df..0000000
--- a/docs/html/tools/testing/contentprovider_testing.jd
+++ /dev/null
@@ -1,217 +0,0 @@
-page.title=Content Provider Testing
-parent.title=Testing
-parent.link=index.html
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-  <h2>In this document</h2>
-  <ol>
-    <li>
-        <a href="#DesignAndTest">Content Provider Design and Testing</a>
-    </li>
-    <li>
-      <a href="#ContentProviderTestAPI">The Content Provider Testing API</a>
-      <ol>
-        <li>
-          <a href="#ProviderTestCase2">ProviderTestCase2 </a>
-        </li>
-        <li>
-          <a href="#MockObjects">Mock object classes</a>
-        </li>
-      </ol>
-    </li>
-    <li>
-        <a href="#WhatToTest">What To Test</a>
-    </li>
-    <li>
-        <a href="#NextSteps">Next Steps</a>
-    </li>
-  </ol>
-  <h2>Key Classes</h2>
-    <ol>
-      <li>{@link android.test.InstrumentationTestRunner}</li>
-      <li>{@link android.test.ProviderTestCase2}</li>
-      <li>{@link android.test.IsolatedContext}</li>
-      <li>{@link android.test.mock.MockContentResolver}</li>
-    </ol>
-  <h2>Related Tutorials</h2>
-    <ol>
-        <li>
-            <a href="{@docRoot}tools/testing/activity_test.html">Activity Testing Tutorial</a>
-        </li>
-    </ol>
-  <h2>See Also</h2>
-      <ol>
-        <li>
-          <a
-          href="{@docRoot}tools/testing/testing_android.html">
-          Testing Fundamentals</a>
-        </li>
-        <li>
-          <a href="{@docRoot}tools/testing/testing_eclipse.html">
-          Testing From Eclipse with ADT</a>
-        </li>
-        <li>
-          <a href="{@docRoot}tools/testing/testing_otheride.html">
-          Testing From Other IDEs</a>
-        </li>
-      </ol>
-  </div>
-</div>
-<p>
-    Content providers, which store and retrieve data and make it accessible across applications,
-    are a key part of the Android API. As an application developer you're allowed to provide your
-    own public providers for use by other applications. If you do, then you should test them
-    using the API you publish.
-</p>
-<p>
-    This document describes how to test public content providers, although the information is
-    also applicable to providers that you keep private to your own application. If you aren't
-    familiar with content  providers or the Android testing framework, please read
-    <a href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a>,
-    the guide to developing content providers, and
-    <a href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>,
-    the introduction to the Android testing and instrumentation framework.
-</p>
-<h2 id="DesignAndTest">Content Provider Design and Testing</h2>
-<p>
-    In Android, content providers are viewed externally as data APIs that provide
-    tables of data, with their internals hidden from view. A content provider may have many
-    public constants, but it usually has few if any public methods and no public variables.
-    This suggests that you should write your tests based only on the provider's public members.
-    A content provider that is designed like this is offering a contract between itself and its
-    users.
-</p>
-<p>
-    The base test case class for content providers,
-    {@link android.test.ProviderTestCase2}, allows you to test your content provider in an
-    isolated environment. Android mock objects such as {@link android.test.IsolatedContext} and
-    {@link android.test.mock.MockContentResolver} also help provide an isolated test environment.
-</p>
-<p>
-    As with other Android tests, provider test packages are run under the control of the test
-    runner {@link android.test.InstrumentationTestRunner}. The section
-    <a href="{@docRoot}tools/testing/testing_android.html#InstrumentationTestRunner">
-    Running Tests With InstrumentationTestRunner</a> describes the test runner in
-    more detail. The topic <a href="{@docRoot}tools/testing/testing_eclipse.html">
-    Testing From Eclipse with ADT</a> shows you how to run a test package in Eclipse, and the
-    topic <a href="{@docRoot}tools/testing/testing_otheride.html">
-    Testing From Other IDEs</a>
-    shows you how to run a test package from the command line.
-</p>
-<h2 id="ContentProviderTestAPI">Content Provider Testing API</h2>
-<p>
-    The main focus of the provider testing API is to provide an isolated testing environment. This
-    ensures that tests always run against data dependencies set explicitly in the test case. It
-    also prevents tests from modifying actual user data. For example, you want to avoid writing
-    a test that fails because there was data left over from a previous test, and you want to
-    avoid adding or deleting contact information in a actual provider.
-</p>
-<p>
-    The test case class and mock object classes for provider testing set up this isolated testing
-    environment for you.
-</p>
-<h3 id="ProviderTestCase2">ProviderTestCase2</h3>
-<p>
-    You test a provider with a subclass of {@link android.test.ProviderTestCase2}. This base class
-    extends {@link android.test.AndroidTestCase}, so it provides the JUnit testing framework as well
-    as Android-specific methods for testing application permissions. The most important
-    feature of this class is its initialization, which creates the isolated test environment.
-</p>
-<p>
-    The initialization is done in the constructor for {@link android.test.ProviderTestCase2}, which
-    subclasses call in their own constructors. The {@link android.test.ProviderTestCase2}
-    constructor creates an {@link android.test.IsolatedContext} object that allows file and
-    database operations but stubs out other interactions with the Android system.
-    The file and database operations themselves take place in a directory that is local to the
-    device or emulator and has a special prefix.
-</p>
-<p>
-    The constructor then creates a {@link android.test.mock.MockContentResolver} to use as the
-    resolver for the test. The {@link android.test.mock.MockContentResolver} class is described in
-    detail in the section
-    <a href="{@docRoot}tools/testing/testing_android.html#MockObjectClasses">Mock object
-classes</a>.
-</p>
-<p>
-    Lastly, the constructor creates an instance of the provider under test. This is a normal
-    {@link android.content.ContentProvider} object, but it takes all of its environment information
-    from the {@link android.test.IsolatedContext}, so it is restricted to
-    working in the isolated test environment. All of the tests done in the test case class run
-    against this isolated object.
-</p>
-<h3 id="MockObjects">Mock object classes</h3>
-<p>
-    {@link android.test.ProviderTestCase2} uses {@link android.test.IsolatedContext} and
-    {@link android.test.mock.MockContentResolver}, which are standard mock object classes. To
-    learn more about them, please read
-    <a href="{@docRoot}tools/testing/testing_android.html#MockObjectClasses">
-    Testing Fundamentals</a>.
-</p>
-<h2 id="WhatToTest">What To Test</h2>
-<p>
-    The topic <a href="{@docRoot}tools/testing/what_to_test.html">What To Test</a>
-    lists general considerations for testing Android components.
-    Here are some specific guidelines for testing content providers.
-</p>
-<ul>
-    <li>
-        Test with resolver methods: Even though you can instantiate a provider object in
-        {@link android.test.ProviderTestCase2}, you should always test with a resolver object
-        using the appropriate URI. This ensures that you are testing the provider using the same
-        interaction that a regular application would use.
-    </li>
-    <li>
-        Test a public provider as a contract: If you intent your provider to be public and
-        available to other applications, you should test it as a contract. This includes
-        the following ideas:
-        <ul>
-            <li>
-                Test with constants that your provider publicly exposes. For
-                example, look for constants that refer to column names in one of the provider's
-                data tables. These should always be constants publicly defined by the provider.
-            </li>
-            <li>
-                Test all the URIs offered by your provider. Your provider may offer several URIs,
-                each one referring to a different aspect of the data. The
-                <a href="{@docRoot}resources/samples/NotePad/index.html">Note Pad</a> sample,
-                for example, features a provider that offers one URI for retrieving a list of notes,
-                another for retrieving an individual note by it's database ID, and a third for
-                displaying notes in a live folder.
-            </li>
-            <li>
-                Test invalid URIs: Your unit tests should deliberately call the provider with an
-                invalid URI, and look for errors. Good provider design is to throw an
-                IllegalArgumentException for invalid URIs.
-
-            </li>
-        </ul>
-    </li>
-    <li>
-        Test the standard provider interactions: Most providers offer six access methods:
-        query, insert, delete, update, getType, and onCreate(). Your tests should verify that all
-        of these methods work. These are described in more detail in the topic
-        <a href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a>.
-    </li>
-    <li>
-        Test business logic: Don't forget to test the business logic that your provider should
-        enforce. Business logic includes handling of invalid values, financial or arithmetic
-        calculations, elimination or combining of duplicates, and so forth. A content provider
-        does not have to have business logic, because it may be implemented by activities that
-        modify the data. If the provider does implement business logic, you should test it.
-    </li>
-</ul>
-<h2 id="NextSteps">Next Steps</h2>
-<p>
-    To learn how to set up and run tests in Eclipse, please refer to 
-<a href="{@docRoot}tools/testing/testing_eclipse.html">Testing from Eclipse with ADT</a>.
-    If you're not working in Eclipse, refer to 
-<a href="{@docRoot}tools/testing/testing_otheride.html">Testing From Other IDEs</a>.
-</p>
-<p>
-    If you want a step-by-step introduction to testing activities, try the 
-    <a href="{@docRoot}tools/testing/activity_test.html">Activity Testing Tutorial</a>, which
-    guides you through a testing scenario that you develop against an activity-oriented application.
-</p>
-
diff --git a/docs/html/tools/testing/index.jd b/docs/html/tools/testing/index.jd
index 56de4cf..a454891 100644
--- a/docs/html/tools/testing/index.jd
+++ b/docs/html/tools/testing/index.jd
@@ -1,40 +1,19 @@
 page.title=Testing
 @jd:body
 
-<p> The Android framework includes an integrated testing framework that helps you test all aspects
-of your application and the SDK tools include tools for setting up and running test applications.
-Whether you are working in Eclipse with ADT or working from the command line, the SDK tools help you
-set up and run your tests within an emulator or the device you are targeting. </p>
+<p>Android provides an integrated testing framework that helps you test all aspects
+of your app. The Android <a href="{@docRoot}sdk/installing/index.html">SDK</a> and
+<a href="{@docRoot}tools/testing-support-library/index.html">Testing Support Library</a> include
+tools and APIs for setting up and running test apps within an emulator or on the device you are
+targeting. You can build and execute tests whether you are working in Android Studio or working
+from the command line.</p>
 
-<p>If you aren't yet familiar with the Android testing framework, start by reading <a
-href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>. For a step-by-step
-introduction to Android testing, try the <a
-href="{@docRoot}tools/testing/activity_test.html">Activity Testing Tutorial</a>. </p>
-
-
-
-<div class="landing-docs">
-
-  <div class="col-13" style="margin-left:0">
-    <h3>Blog Articles</h3>
-    
-    <a href="http://android-developers.blogspot.com/2010/12/new-gingerbread-api-strictmode.html">
-      <h4>New Gingerbread API: StrictMode</h4>
-      <p>StrictMode is a new API in Gingerbread which primarily lets you set a policy on a thread
-declaring what you’re not allowed to do on that thread, and what the penalty is if you violate the
-policy. Implementation-wise, this policy is simply a thread-local integer bitmask.</p>
-    </a>
-    
-    <a href="http://android-developers.blogspot.com/2010/10/traceview-war-story.html">
-      <h4>Traceview War Story</h4>
-      <p>I recently took my first serious look at Traceview, and it occurred to me, first, that
-there are probably a few other Android developers who haven’t used it and, second, that this is an
-opportunity to lecture sternly on one of my favorite subjects: performance improvement and
-profiling.</p>
-    </a>
-  </div>
-
-
-</div>
-
-
+<p>To familiarize yourself with mobile app testing in Android, start by reading these resources:</p>
+<ul>
+  <li><a href="{@docRoot}tools/testing/testing_android.html">Testing Concepts</a>: Learn key
+    concepts related to Android app testing and get an overview of the testing tools and APIs
+    that Google provides.</li>
+  <li><a href="{@docRoot}training/testing/start/index.html">Getting Started with Testing</a>: Learn
+    how to build and run your tests, step-by-step, using the testing APIs and tools that
+    Google provides.</li>
+</ul>
diff --git a/docs/html/tools/testing/service_testing.jd b/docs/html/tools/testing/service_testing.jd
deleted file mode 100644
index 7c56fd9..0000000
--- a/docs/html/tools/testing/service_testing.jd
+++ /dev/null
@@ -1,176 +0,0 @@
-page.title=Service Testing
-parent.title=Testing
-parent.link=index.html
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-  <h2>In this document</h2>
-  <ol>
-    <li>
-        <a href="#DesignAndTest">Service Design and Testing</a>
-    </li>
-    <li>
-        <a href="#ServiceTestCase">ServiceTestCase</a>
-    </li>
-    <li>
-        <a href="#MockObjects">Mock object classes</a>
-    </li>
-    <li>
-        <a href="#TestAreas">What to Test</a>
-    </li>
-  </ol>
-  <h2>Key Classes</h2>
-    <ol>
-      <li>{@link android.test.InstrumentationTestRunner}</li>
-      <li>{@link android.test.ServiceTestCase}</li>
-      <li>{@link android.test.mock.MockApplication}</li>
-      <li>{@link android.test.RenamingDelegatingContext}</li>
-    </ol>
-  <h2>Related Tutorials</h2>
-    <ol>
-        <li>
-            <a href="{@docRoot}tools/testing/activity_test.html">Activity Testing Tutorial</a>
-        </li>
-    </ol>
-  <h2>See Also</h2>
-      <ol>
-        <li>
-          <a href="{@docRoot}tools/testing/testing_eclipse.html">
-          Testing From Eclipse with ADT</a>
-        </li>
-        <li>
-          <a href="{@docRoot}tools/testing/testing_otheride.html">
-          Testing From Other IDEs</a>
-        </li>
-      </ol>
-  </div>
-</div>
-<p>
-    Android provides a testing framework for Service objects that can run them in
-    isolation and provides mock objects. The test case class for Service objects is
-    {@link android.test.ServiceTestCase}. Since the Service class assumes that it is separate
-    from its clients, you can test a Service object without using instrumentation.
-</p>
-<p>
-    This document describes techniques for testing Service objects. If you aren't familiar with the
-    Service class, please read the <a href="{@docRoot}guide/components/services.html">
-    Services</a> document. If you aren't familiar with Android testing, please read
-    <a href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>,
-    the introduction to the Android testing and instrumentation framework.
-</p>
-<h2 id="DesignAndTest">Service Design and Testing</h2>
-<p>
-    When you design a Service, you should consider how your tests can examine the various states
-    of the Service lifecycle. If the lifecycle methods that start up your Service, such as
-    {@link android.app.Service#onCreate() onCreate()} or
-    {@link android.app.Service#onStartCommand(Intent, int, int) onStartCommand()} do not normally
-    set a global variable to indicate that they were successful, you may want to provide such a
-    variable for testing purposes.
-</p>
-<p>
-    Most other testing is facilitated by the methods in the {@link android.test.ServiceTestCase}
-    test case class. For example, the {@link android.test.ServiceTestCase#getService()} method
-    returns a handle to the Service under test, which you can test to confirm that the Service is
-    running even at the end of your tests.
-</p>
-<h2 id="ServiceTestCase">ServiceTestCase</h2>
-<p>
-    {@link android.test.ServiceTestCase} extends the JUnit {@link junit.framework.TestCase} class
-    with with methods for testing application permissions and for controlling the application and
-    Service under test. It also provides mock application and Context objects that isolate your
-    test from the rest of the system.
-</p>
-<p>
-    {@link android.test.ServiceTestCase} defers initialization of the test environment until you
-    call {@link android.test.ServiceTestCase#startService(Intent) ServiceTestCase.startService()} or
-    {@link android.test.ServiceTestCase#bindService(Intent) ServiceTestCase.bindService()}. This
-    allows you to set up your test environment, particularly your mock objects, before the Service
-    is started.
-</p>
-<p>
-    Notice that the parameters to <code>ServiceTestCase.bindService()</code>are different from
-    those for <code>Service.bindService()</code>. For the <code>ServiceTestCase</code> version,
-    you only provide an Intent. Instead of returning a boolean,
-    <code>ServiceTestCase.bindService()</code> returns an object that subclasses
-    {@link android.os.IBinder}.
-</p>
-<p>
-    The {@link android.test.ServiceTestCase#setUp()} method for {@link android.test.ServiceTestCase}
-    is called before each test. It sets up the test fixture by making a copy of the current system
-    Context before any test methods touch it. You can retrieve this Context by calling
-    {@link android.test.ServiceTestCase#getSystemContext()}. If you override this method, you must
-    call <code>super.setUp()</code> as the first statement in the override.
-</p>
-<p>
-    The methods {@link android.test.ServiceTestCase#setApplication(Application) setApplication()}
-    and {@link android.test.AndroidTestCase#setContext(Context)} setContext()} allow you to set
-    a mock Context or mock Application (or both) for the Service, before you start it. These mock
-    objects are described in <a href="#MockObjects">Mock object classes</a>.
-</p>
-<p>
-    By default, {@link android.test.ServiceTestCase} runs the test method
-    {@link android.test.AndroidTestCase#testAndroidTestCaseSetupProperly()}, which asserts that
-    the base test case class successfully set up a Context before running.
-</p>
-<h2 id="MockObjects">Mock object classes</h2>
-<p>
-    <code>ServiceTestCase</code> assumes that you will use a mock Context or mock Application
-    (or both) for the test environment. These objects isolate the test environment from the
-    rest of the system. If you don't provide your own instances of these objects before you
-    start the Service, then {@link android.test.ServiceTestCase} will create its own internal
-    instances and inject them into the Service. You can override this behavior by creating and
-    injecting your own instances before starting the Service
-</p>
-<p>
-    To inject a mock Application object into the Service under test, first create a subclass of
-    {@link android.test.mock.MockApplication}. <code>MockApplication</code> is a subclass of
-    {@link android.app.Application} in which all the methods throw an Exception, so to use it
-    effectively you subclass it and override the methods you need. You then inject it into the
-    Service with the
-    {@link android.test.ServiceTestCase#setApplication(Application) setApplication()} method.
-    This mock object allows you to control the application values that the Service sees, and
-    isolates it from the real system. In addition, any hidden dependencies your Service has on
-    its application reveal themselves as exceptions when you run the test.
-</p>
-<p>
-    You inject a mock Context into the Service under test with the
-    {@link android.test.AndroidTestCase#setContext(Context) setContext()} method. The mock
-    Context classes you can use are described in more detail in
-    <a href="{@docRoot}tools/testing/testing_android.html#MockObjectClasses">
-    Testing Fundamentals</a>.
-</p>
-<h2 id="TestAreas">What to Test</h2>
-<p>
-    The topic <a href="{@docRoot}tools/testing/what_to_test.html">What To Test</a>
-    lists general considerations for testing Android components.
-    Here are some specific guidelines for testing a Service:
-</p>
-<ul>
-    <li>
-        Ensure that the {@link android.app.Service#onCreate()} is called in response to
-        {@link android.content.Context#startService(Intent) Context.startService()} or
-    {@link android.content.Context#bindService(Intent,ServiceConnection,int) Context.bindService()}.
-        Similarly, you should ensure that {@link android.app.Service#onDestroy()} is called in
-        response to {@link android.content.Context#stopService(Intent) Context.stopService()},
-        {@link android.content.Context#unbindService(ServiceConnection) Context.unbindService()},
-        {@link android.app.Service#stopSelf()}, or
-        {@link android.app.Service#stopSelfResult(int) stopSelfResult()}.
-    </li>
-    <li>
-        Test that your Service correctly handles multiple calls from
-        <code>Context.startService()</code>. Only the first call triggers
-        <code>Service.onCreate()</code>, but all calls trigger a call to
-        <code>Service.onStartCommand()</code>.
-        <p>
-            In addition, remember that <code>startService()</code> calls don't
-            nest, so a single call to <code>Context.stopService()</code> or
-            <code>Service.stopSelf()</code> (but not <code>stopSelf(int)</code>)
-            will stop the Service. You should test that your Service stops at the correct point.
-        </p>
-    </li>
-    <li>
-        Test any business logic that your Service implements. Business logic includes checking for
-        invalid values, financial and arithmetic calculations, and so forth.
-    </li>
-</ul>
diff --git a/docs/html/tools/testing/testing-tools.jd b/docs/html/tools/testing/testing-tools.jd
index 5e0a5bc..c60199f7 100644
--- a/docs/html/tools/testing/testing-tools.jd
+++ b/docs/html/tools/testing/testing-tools.jd
@@ -5,7 +5,7 @@
 <div id="qv">
   <h2>See also</h2>
   <ol>
-    <li><a href="{@docRoot}training/testing.html">Best Practices for Testing</a></li>
+    <li><a href="{@docRoot}training/testing/index.html">Best Practices for Testing</a></li>
   </ol>
 </div>
 </div>
diff --git a/docs/html/tools/testing/testing_accessibility.jd b/docs/html/tools/testing/testing_accessibility.jd
deleted file mode 100644
index 20948fa..0000000
--- a/docs/html/tools/testing/testing_accessibility.jd
+++ /dev/null
@@ -1,255 +0,0 @@
-page.title=Accessibility Testing Checklist
-parent.title=Testing
-parent.link=index.html
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-  <h2>In this document</h2>
-  <ol>
-    <li><a href="#goals">Testing Goals</a></li>
-    <li><a href="#requirements">Testing Requirements</a></li>
-    <li><a href="#recommendations">Testing Recommendations</a></li>
-    <li><a href="#special-cases">Special Cases and Considerations</a></li>
-    <li><a href="#how-to">Testing Accessibility Features</a>
-      <ol>
-        <li><a href="#test-audibles">Testing audible feedback</a></li>
-        <li><a href="#test-navigation">Testing focus navigation</a></li>
-        <li><a href="#test-gestures">Testing gesture navigation</a></li>
-      </ol>
-    </li>
-  </ol>
-
-  <h2>See Also</h2>
-    <ol>
-      <li>
-        <a href="{@docRoot}guide/topics/ui/accessibility/checklist.html">
-        Accessibility Developer Checklist</a>
-      </li>
-      <li>
-        <a href="{@docRoot}design/patterns/accessibility.html">
-        Android Design: Accessibility</a>
-      </li>
-      <li>
-        <a href="{@docRoot}guide/topics/ui/accessibility/apps.html">
-        Making Applications Accessible</a>
-      </li>
-    </ol>
-  </div>
-</div>
-<p>
-  Testing is an important part of making your application accessible to users with varying
-  abilities. Following <a href="{@docRoot}design/patterns/accessibility.html">design</a> and
-  <a href="{@docRoot}guide/topics/ui/accessibility/checklist.html">development</a> guidelines for
-  accessibility are important steps toward that goal, but testing for accessibility can uncover
-  problems with user interaction that are not obvious during design and development.</p>
-
-<p>This accessibility testing checklist guides you through the important aspects of
-  accessibility testing, including overall goals, required testing steps, recommended testing and
-  special considerations. This document also discusses how to enable accessibility features on
-  Android devices for testing purposes.</p>
-
-
-<h2 id="goals">Testing Goals</h2>
-
-<p>Your accessibility testing should have the following, high level goals:</p>
-
-<ul>
-  <li>Set up and use the application without sighted assistance</li>
-  <li>All task workflows in the application can be easily navigated using directional controls and
-    provide clear and appropriate feedback</li>
-</ul>
-
-
-<h2 id="requirements">Testing Requirements</h2>
-
-<p>The following tests must be completed in order to ensure a minimum level of application
-  accessibility.</p>
-
-<ol>
-  <li><strong>Directional controls:</strong> Verify that the application can be operated
-    without the use of a touch screen. Attempt to use only directional controls to accomplish the
-    primary tasks in the application. Use the keyboard and directional-pad (D-Pad) controls in the
-    Android <a href="{@docRoot}tools/devices/emulator.html">Emulator</a> or use
-    <a href="http://support.google.com/nexus/bin/answer.py?hl=en&answer=2700718">gesture
-    navigation</a> on devices with Android 4.1 (API Level 16) or higher.
-    <p class="note"><strong>Note:</strong> Keyboards and D-pads provide different navigation paths
-    than accessibility gestures. While gestures allow users to focus on nearly any on-screen
-    content, keyboard and D-pad navigation only allow focus on input fields and buttons.</p>
-    </li>
-  <li><strong>TalkBack audio prompts:</strong> Verify that user interface controls that provide
-    information (graphics or text) or allow user action have clear and accurate audio descriptions
-    when <a href="#testing-talkback">TalkBack is enabled</a> and controls are focused. Use
-    directional controls to move focus between application layout elements.</li>
-  <li><strong>Explore by Touch prompts:</strong> Verify that user interface controls that
-    provide information (graphics or text) or allow user action have appropriate audio descriptions
-    when <a href="#testing-ebt">Explore by Touch is enabled</a>. There should be no
-    regions where contents or controls do not provide an audio description.</li>
-  <li><strong>Touchable control sizes:</strong> All controls where a user can select or take an
-    action must be a minimum of 48 dp (approximately 9mm) in length and width, as recommended by
-    <a href="{@docRoot}design/patterns/accessibility.html">Android Design</a>.</li>
-  <li><strong>Gestures work with TalkBack enabled:</strong> Verify that app-specific gestures,
-    such as zooming images, scrolling lists, swiping between pages or navigating carousel controls
-    continue to work when <a href="#testing-talkback">TalkBack is enabled</a>. If these gestures do
-    not function, then an alternative interface for these actions must be provided.</li>
-  <li><strong>No audio-only feedback:</strong> Audio feedback must always have a secondary
-    feedback mechanism to support users who are deaf or hard of hearing, for example: A sound alert
-    for the arrival of a message should also be accompanied by a system
-    {@link android.app.Notification}, haptic feedback (if available) or another visual alert.</li>
-</ol>
-
-
-<h2 id="recommendations">Testing Recommendations</h2>
-
-<p>The following tests are recommended for ensuring the accessibility of your application. If you
-  do not test these items, it may impact the overall accessibility and quality of your
-  application.</p>
-
-<ol>
-  <li><strong>Repetitive audio prompting:</strong> Check that closely related controls (such as
-    items with multiple components in a list) do not simply repeat the same audio prompt. For
-    example, in a contacts list that contains a contact picture, written name and title, the prompts
-    should not simply repeat “Bob Smith” for each item.</li>
-  <li><strong>Audio prompt overloading or underloading:</strong> Check that closely related
-    controls provide an appropriate level of audio information that enables users to understand and
-    act on a screen element. Too little or too much prompting can make it difficult to understand
-    and use a control.</li>
-</ol>
-
-
-<h2 id="special-cases">Special Cases and Considerations</h2>
-
-<p>The following list describes specific situations that should be tested to ensure an
-  accessible app. Some, none or all of the cases described here may apply to your application. Be
-  sure to review this list to find out if these special cases apply and take appropriate action.</p>
-
-<ol>
-  <li><strong>Review developer special cases and considerations:</strong> Review the list of
-    <a href="{@docRoot}guide/topics/ui/accessibility/checklist.html#special-cases">special cases</a>
-     for accessibility development and test your application for the cases that apply.</li>
-  <li><strong>Prompts for controls that change function:</strong> Buttons or other controls
-    that change function due to application context or workflow must provide audio prompts
-    appropriate to their current function. For example, a button that changes function from play
-    video to pause video should provide an audio prompt which is appropriate to its current state.</li>
-  <li><strong>Video playback and captioning:</strong> If the application provides video
-    playback, verify that it supports captioning and subtitles to assist users who are deaf or hard
-    of hearing. The video playback controls must clearly indicate if captioning is available for a
-    video and provide a clear way of enabling captions.</li>
-</ol>
-
-
-<h2 id="how-to">Testing Accessibility Features</h2>
-
-<p>Testing of accessibility features such as TalkBack, Explore by Touch and accessibility Gestures
-requires setup of your testing device. This section describes how to enable these features for
-accessibility testing.</p>
-
-
-<h3 id="test-audibles">Testing audible feedback</h3>
-
-<p>Audible accessibility feedback features on Android devices provide audio prompts that speaks
-  the screen content as you move around an application. By enabling these features on an Android
-  device, you can test the experience of users with blindness or low-vision using your application.
-</p>
-
-<p>Audible feedback for users on Android is typically provided by TalkBack accessibility service and
-the Explore by Touch system feature. The TalkBack accessibility service comes preinstalled on most
-Android devices and can also be downloaded for free from
-<a href="https://play.google.com/store/apps/details?id=com.google.android.marvin.talkback">Google
-Play</a>. The Explore by Touch system feature is available on devices running Android 4.0 and later.
-</p>
-
-<h4 id="testing-talkback">Testing with TalkBack</h4>
-
-<p>The <em>TalkBack</em> accessibility service works by speaking the contents of user interface
-controls as the user moves focus onto controls. This service should be enabled as part of testing
-focus navigation and audible prompts.</p>
-
-<p>To enable the TalkBack accessibility service:</p>
-<ol>
-  <li>Launch the <strong>Settings</strong> application.</li>
-  <li>Navigate to the <strong>Accessibility</strong> category and select it.</li>
-  <li>Select <strong>Accessibility</strong> to enable it.</li>
-  <li>Select <strong>TalkBack</strong> to enable it.</li>
-</ol>
-
-<p class="note">
-  <strong>Note:</strong> While TalkBack is the most available Android accessibility service for
-  users with disabilities, other accessibility services are available and may be installed by users.
-</p>
-
-<p>For more information about using TalkBack, see
-<a href="https://support.google.com/accessibility/android/topic/3529932">TalkBack</a>.</p>
-
-<h4 id="testing-ebt">Testing with Explore by Touch</h4>
-
-<p>The <em>Explore by Touch</em> system feature is available on devices running Android 4.0 and
-  later, and works by enabling a special accessibility mode that allows users to drag a finger
-  around the interface of an application and hear the contents of the screen spoken. This feature
-  does not require screen elements to be focused using an directional controller, but listens for
-  hover events over user interface controls.
-</p>
-
-<p>To enable Explore by Touch on Android 4.0 and later:</p>
-<ol>
-  <li>Launch the <strong>Settings</strong> application.</li>
-  <li>Navigate to the <strong>Accessibility</strong> category and select it.</li>
-  <li>Select the <strong>TalkBack</strong> to enable it.
-      <p class="note"><strong>Note:</strong> On Android 4.1 (API Level 16) and higher, the system
-      provides a popup message to enable Explore by Touch. On older versions, you must follow the
-      step below.</p>
-  </li>
-  <li>Return to the <strong>Accessibility</strong> category and select <strong>Explore by
-Touch</strong> to enable it.
-    <p class="note"><strong>Note:</strong> You must turn on TalkBack <em>first</em>, otherwise this
-option is not available.</p>
-  </li>
-</ol>
-
-<p>For more information about using the Explore by Touch features, see
-<a href="https://support.google.com/accessibility/android/answer/6006598">Touch Exploration</a>.</p>
-
-<h3 id="test-navigation">Testing focus navigation</h3>
-
-<p>Focus navigation is the use of directional controls to navigate between the individual user
-  interface elements of an application in order to operate it. Users with limited vision or limited
-  manual dexterity often use this mode of navigation instead of touch navigation. As part of
-  accessibility testing, you should verify that your application can be operated using only
-  directional controls.</p>
-
-<p>You can test navigation of your application using only focus controls, even if your test devices
-  does not have a directional controller. The <a href="{@docRoot}tools/help/emulator.html">Android
-  Emulator</a> provides a simulated directional controller that you can use to test navigation. You
-  can also use a software-based directional controller, such as the one provided by the
-  <a href="https://play.google.com/store/apps/details?id=com.googlecode.eyesfree.inputmethod.latin"
-  >Eyes-Free Keyboard</a> to simulate use of a D-pad on a test device that does not have a physical
-  D-pad.</p>
-
-
-<h3 id="test-gestures">Testing gesture navigation</h3>
-
-<p>Gesture navigation is an accessibility navigation mode that allows users to navigate Android
-  devices and applications using specific
-  <a href="https://support.google.com/accessibility/android/answer/6006598">gestures</a>. This
-  navigation mode is available on Android 4.1 (API Level 16) and higher.</p>
-
-<p class="note"><strong>Note:</strong> Accessibility gestures provide a different navigation path
-than keyboards and D-pads. While gestures allow users to focus on nearly any on-screen
-content, keyboard and D-pad navigation only allow focus on input fields and buttons.</p>
-
-<p>To enable gesture navigation on Android 4.1 and later:</p>
-<ul>
-  <li>Enable both TalkBack and the Explore by Touch feature as described in the
-    <a href="#testing-ebt">Testing with Explore by Touch</a>. When <em>both</em> of these
-    features are enabled, accessibility gestures are automatically enabled.</li>
-  <li>You can change gesture settings using <strong>Settings &gt; Accessibility &gt; TalkBack &gt;
-    Settings &gt; Manage shortcut gestures</strong>.
-</ul>
-
-<p>For more information about using Explore by Touch accessibility gestures, see
-<a href="https://support.google.com/accessibility/android/answer/6006598">Touch Exploration</a>.</p>
-
-<p class="note">
-  <strong>Note:</strong> Accessibility services other than TalkBack may map accessibility gestures
-  to different user actions. If gestures are not producing the expected actions during testing, try
-  disabling other accessibility services before proceeding.</p>
\ No newline at end of file
diff --git a/docs/html/tools/testing/testing_android.jd b/docs/html/tools/testing/testing_android.jd
old mode 100644
new mode 100755
index 10843e8..5adb7e9
--- a/docs/html/tools/testing/testing_android.jd
+++ b/docs/html/tools/testing/testing_android.jd
@@ -1,4 +1,4 @@
-page.title=Testing Fundamentals
+page.title=Testing Concepts
 parent.title=Testing
 parent.link=index.html
 @jd:body
@@ -7,14 +7,8 @@
   <div id="qv">
   <h2>In this document</h2>
   <ol>
-    <li>
-        <a href="#TestStructure">Test Structure</a>
-    </li>
-    <li>
-        <a href="#TestProjects">Test Projects</a>
-    </li>
-    <li>
-      <a href="#TestAPI">The Testing API</a>
+    <li><a href="#TestStructure">Test Structure</a></li>
+    <li><a href="#TestAPI">Testing APIs</a>
       <ol>
         <li>
           <a href="#JUnit">JUnit</a>
@@ -23,111 +17,192 @@
           <a href="#Instrumentation">Instrumentation</a>
         </li>
         <li>
-            <a href="#TestCaseClasses">Test case classes</a>
+            <a href="#TestingSupportLibraryClasses">Android Testing Support Library APIs</a>
         </li>
         <li>
           <a href="#AssertionClasses">Assertion classes</a>
         </li>
-        <li>
-          <a href="#MockObjectClasses">Mock object classes</a>
-        </li>
       </ol>
     </li>
     <li>
-        <a href="#InstrumentationTestRunner">Running Tests</a>
-    </li>
-    <li>
-        <a href="#TestResults">Seeing Test Results</a>
-    </li>
-    <li>
-        <a href="#Monkeys">monkey and monkeyrunner</a>
-    </li>
-    <li>
-       <a href="#PackageNames">Working With Package Names</a>
-    </li>
-    <li>
-        <a href="#WhatToTest">What To Test</a>
-    </li>
-    <li>
-        <a href="#NextSteps">Next Steps</a>
+        <a href="#Monkeys">Monkey and Monkeyrunner</a>
     </li>
   </ol>
-  <h2>Key classes</h2>
-    <ol>
-      <li>{@link android.test.InstrumentationTestRunner}</li>
-      <li>{@link android.test}</li>
-      <li>{@link android.test.mock}</li>
-      <li>{@link junit.framework}</li>
-    </ol>
-  <h2>Related tutorials</h2>
-    <ol>
-        <li>
-            <a href="{@docRoot}tools/testing/activity_test.html">Activity Testing Tutorial</a>
-        </li>
-    </ol>
   <h2>See also</h2>
-      <ol>
-        <li>
-          <a href="{@docRoot}tools/testing/testing_eclipse.html">
-          Testing from Eclipse with ADT</a>
-        </li>
-        <li>
-          <a href="{@docRoot}tools/testing/testing_otheride.html">
-          Testing from Other IDEs</a>
-        </li>
-        <li>
-          <a href="{@docRoot}tools/help/monkeyrunner_concepts.html">
-          monkeyrunner</a>
-        </li>
-        <li>
-     <a href="{@docRoot}tools/help/monkey.html">UI/Application Exerciser Monkey</a>
-        </li>
-      </ol>
+  <ol>
+      <li><a href="{@docRoot}training/testing/start/index.html">Getting Started with Testing</a></li>
+  </ol>
   </div>
 </div>
+
 <p>
-    The Android testing framework, an integral part of the development environment,
-    provides an architecture and powerful tools that help you test every aspect of your application
-    at every level from unit to framework.
-</p>
-<p>
-    The testing framework has these key features:
-</p>
+This document describes key concepts related to Android app testing. It assumes you have a basic
+knowledge of the <a href="http://junit.org/" class="external-link">JUnit</a> testing framework.</p>
+
+<h2 id="TestStructure">Test Structure</h2>
+<p>Android testing is based on JUnit. In general, a JUnit test is a method whose statements test a
+part of the application. You organize test methods into classes called
+<em>test cases</em>. You can further organize these classes into <em>test suites</em>.</p>
+<p>In JUnit, you build one or more test classes and use a test runner to
+execute them. In Android, you use <a href="{@docRoot}tools/studio/index.html">
+Android Studio </a>(or the <a href="{@docRoot}tools/building/plugin-for-gradle.html">
+Android Plugin for Gradle</a>) to build one or more test source files into an
+<em>Android test app</em>.</p>
+
+<p>From your testing environment, you can run your test in one of the following ways:</p>
 <ul>
-    <li>
-        Android test suites are based on JUnit. You can use plain JUnit to test a class that doesn't
-        call the Android API, or Android's JUnit extensions to test Android components. If you're
-        new to Android testing, you can start with general-purpose test case classes such as {@link
-        android.test.AndroidTestCase} and then go on to use more sophisticated classes.
-    </li>
-    <li>
-        The Android JUnit extensions provide component-specific test case classes. These classes
-        provide helper methods for creating mock objects and methods that help you control the
-        lifecycle of a component.
-    </li>
-    <li>
-        Test suites are contained in test packages that are similar to main application packages, so
-        you don't need to learn a new set of tools or techniques for designing and building tests.
-    </li>
-    <li>
-        The SDK tools for building and tests are available in Eclipse with ADT, and also in
-        command-line form for use with other IDEs. These tools get information from the project of
-        the application under test and use this information to automatically create the build files,
-        manifest file, and directory structure for the test package.
-    </li>
-    <li>
-        The SDK also provides
-  <a href="{@docRoot}tools/help/monkeyrunner_concepts.html">monkeyrunner</a>, an API
-        for testing devices with Python programs, and <a
-        href="{@docRoot}tools/help/monkey.html">UI/Application Exerciser Monkey</a>,
-        a command-line tool for stress-testing UIs by sending pseudo-random events to a device.
-    </li>
+    <li><strong>On your local machine:</strong> Compile the test classes and
+        execute them locally on the Java Virtual Machine (JVM) using the JUnit test runner.</li>
+    <li><strong>On a device or emulator</strong>: Install the test app and the app
+under test to a physical device or emulator, and then execute your tests using an Android-specific
+test runner (such as <a href="{@docRoot}tools/testing-support-library/index.html#AndroidJUnitRunner">
+{@code AndroidJUnitRunner}</a>).</li>
 </ul>
+
+<p>The structure of your test code and the way you build and run the tests in Android Studio depend
+on the type of testing you are performing. The following table summarizes the common testing types
+for Android:</p>
+
+<table>
+<tr><th>Type</th>
+    <th>Subtype</th>
+    <th>Description</th></tr>
+
+<tr><td rowspan="3">Unit tests</td>
+    <tr><td>Local Unit Tests</td>
+        <td>Unit tests that run on your local machine only. These tests are compiled to run locally
+on the JVM to minimize execution time. Use this approach to run unit tests
+that have no dependencies on the Android framework or have dependencies that mock objects can
+satisfy.</td></tr>
+    <tr><td>Instrumented unit tests</td>
+        <td>Unit tests that run on an Android device or emulator. These tests have access to
+{@link android.app.Instrumentation} information, such as the {@link android.content.Context} of the
+app under test. Use this approach to run unit tests that have Android dependencies which mock
+objects cannot easily satisfy.</td></tr>
+
+<tr><td rowspan="3">Integration Tests</td>
+    <tr><td>Components within your app only</td>
+        <td>This type of test verifies that the target app behaves as expected when a user performs
+a specific action or enters a specific input in its activities. For example, it allows you to check
+that the target app returns the correct UI output in response to user interactions in the app’s
+activities. UI testing frameworks like
+<a href="{@docRoot}tools/testing-support-library/index.html#Espresso">Espresso</a> allow you to
+programmatically simulate user actions and test complex intra-app user interactions.</td></tr>
+    <tr><td>Cross-app Components</td>
+    <td>This type of test verifies the correct behavior of interactions between different user
+apps or between user apps and system apps. For example, you might want to test that your app behaves
+correctly when the user performs an action in the Android Settings menu. UI testing frameworks
+that support cross-app interactions, such as UI Automator, allow you to create tests for such
+scenarios.</td></tr>
+</table>
+
+<p>Based on the type of test you want to create, you need to configure the test code source
+location and the project dependencies in Android Studio as described in
+<a href="{@docRoot}training/testing/start/index.html">Getting Started with Testing</a>.</p>
+
+<h2 id="TestAPI">Testing APIs</h2>
+<p>The following list summarizes the common APIs related to app testing for Android.</p>
+
+<h3 id="JUnit">JUnit</h3>
+
+<p>You should write your unit or integration test class as a JUnit 4 test class.
+<a href="http://junit.org/" class="external-link">JUnit</a> is the most popular
+and widely-used unit testing framework for Java. The framework offers a convenient way to perform
+common setup, teardown, and assertion operations in your test.</p>
+
+<p>JUnit 4 allows you to write tests in a cleaner and more
+flexible way than its predecessor versions. Unlike the previous approach to Android unit testing
+based on JUnit 3, with JUnit 4, you do not need to extend the {@code junit.framework.TestCase}
+class. You also do not need to prepend the {@code test} keyword to your test method name, or
+use any classes in the {@code junit.framework} or {@code junit.extensions} package.</p>
+
+<p>A basic JUnit 4 test class is a Java class that contains one or more test methods.
+A test method begins with the {@code &#64;Test} annotation and contains the code to exercise
+and verify a single functionality (that is, a logical <em>unit</em>) in the component that you want
+to test.</p>
+<p>The following snippet shows an example JUnit 4 integration test that uses the Espresso
+APIs to perform a click action on a UI element, then checks to see if an expected string is
+displayed.</p>
+<pre>
+&#64;RunWith(AndroidJUnit4.class)
+&#64;LargeTest
+public class MainActivityInstrumentationTest {
+
+    &#64;Rule
+    public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule<>(
+            MainActivity.class);
+
+    &#64;Test
+    public void sayHello(){
+        onView(withText("Say hello!")).perform(click());
+
+        onView(withId(R.id.textView)).check(matches(withText("Hello, World!")));
+    }
+}
+</pre>
+<p>In your JUnit 4 test class, you can call out sections in your test code for
+special processing by using the following annotations:</p>
+<ul>
+<li>
+{@code &#64;Before}: Use this annotation to specify a block of code that contains test setup
+operations. The test class invokes this code block before each test. You can have multiple
+{@code &#64;Before} methods but the order in which the test class calls these methods
+is not guaranteed.
+</li>
+<li>
+{@code &#64;After}: This annotation specifies a block of code that contains test
+tear-down operations. The test class calls this code block after every test method. You can define
+multiple {@code &#64;After} operations in your test code. Use this annotation to release any
+resources from memory.
+</li>
+<li>
+{@code &#64;Test}: Use this annotation to mark a test method. A single test class can contain
+multiple test methods, each prefixed with this annotation.
+</li>
+<li>
+{@code &#64;Rule}: Rules allow you to flexibly add or redefine the behavior of each test
+method in a reusable way. In Android testing, use this annotation together with
+one of the test rule classes that the Android Testing Support Library provides, such as
+<a href="{@docRoot}reference/android/support/test/rule/ActivityTestRule.html">
+{@code ActivityTestRule}</a> or
+<a href="{@docRoot}reference/android/support/test/rule/ServiceTestRule.html">
+{@code ServiceTestRule}</a>.
+</li>
+<li>
+{@code &#64;BeforeClass}: Use this annotation to specify static methods for each test class to
+invoke only once. This testing step is useful for expensive operations such as connecting to a
+database.
+</li>
+<li>
+{@code &#64;AfterClass}: Use this annotation to specify static methods for the test class to invoke
+only after all tests in the class have run. This testing step is useful for releasing any
+resources allocated in the {@code &#64;BeforeClass} block.
+</li>
+<li>
+{@code &#64;Test(timeout=&lt;milliseconds&gt;)}: Some annotations support the ability to pass in
+elements for which you can set values. For example, you can specify a timeout period for the test.
+If the test starts but does not complete within the given timeout period, it automatically fails.
+You must specify the timeout period in milliseconds, for example: {@code &#64;Test(timeout=5000)}.
+</li>
+</ul>
+<p>For more annotations, see the documentation for
+<a href="//junit.sourceforge.net/javadoc/org/junit/package-summary.html" class="external-link">
+JUnit annotations</a> and the
+<a href="{@docRoot}android/support/test/annotation/package-summary.html">
+Android-specific annotations</a>.
 <p>
-    This document describes the fundamentals of the Android testing framework, including the
-    structure of tests, the APIs that you use to develop tests, and the tools that you use to run
-    tests and view results. The document assumes you have a basic knowledge of Android application
-    programming and JUnit testing methodology.
+    You use the JUnit {@link junit.framework.Assert} class to verify the correctness of an object's
+    state. The assert methods compare values you expect from a test to the actual results and
+    throw an exception if the comparison fails. <a href="#AssertionClasses">
+    Assertion classes</a> describes these methods in more detail.
+</p>
+
+</p>
+<h3 id="Instrumentation">Instrumentation</h3>
+<p>
+    Android instrumentation is a set of control methods or hooks in the Android system. These
+    hooks control an Android component independently of its normal lifecycle. They also control how
+    Android loads applications.
 </p>
 <p>
     The following diagram summarizes the testing framework:
@@ -138,415 +213,60 @@
         alt="The Android testing framework"/>
 </a>
 </div>
-<h2 id="TestStructure">Test Structure</h2>
 <p>
-    Android's build and test tools assume that test projects are organized into a standard
-    structure of tests, test case classes, test packages, and test projects.
+Normally, an Android component runs in a lifecycle that the system determines. For example, an
+{@link android.app.Activity} object's lifecycle starts when an {@link android.content.Intent}
+activates the {@link android.app.Activity}. The system calls the object's <code>onCreate()</code>
+method, on then the <code>onResume()</code> method. When the user starts another application, the
+system calls the <code>onPause()</code> method. If the {@link android.app.Activity} code calls
+the <code>finish()</code> method, the system calls the <code>onDestroy()</code> method. The Android
+framework API does not provide a way for your code to invoke these callback methods directly, but
+you can do so using instrumentation.
 </p>
 <p>
-    Android testing is based on JUnit. In general, a JUnit test is a method whose
-    statements test a part of the application under test. You organize test methods into classes
-    called test cases (or test suites). Each test is an isolated test of an individual module in
-    the application under test. Each class is a container for related test methods, although it
-    often provides helper methods as well.
+The system runs all the components of an application in the same process. You can allow some
+components, such as content providers, to run in a separate process,
+but you can't force an application to run in the same process as another application that is
+already running.
 </p>
 <p>
-    In JUnit, you build one or more test source files into a class file. Similarly, in Android you
-    use the SDK's build tools to build one or more test source files into class files in an
-    Android test package. In JUnit, you use a test runner to execute test classes. In Android, you
-    use test tools to load the test package and the application under test, and the tools then
-    execute an Android-specific test runner.
+Instrumentation can load both a test package and the app under test into the
+same process. Since the application components and their tests are in the same process, your
+tests can invoke methods in the components, and modify and examine fields in the components.
 </p>
-<h2 id="TestProjects">Test Projects</h2>
+<h3 id="TestingSupportLibraryClasses">Android Testing Support Library APIs</h3>
 <p>
-    Tests, like Android applications, are organized into projects.
-</p>
-<p>
-    A test project is a directory or Eclipse project in which you create the source code, manifest
-    file, and other files for a test package. The Android SDK contains tools for Eclipse with ADT
-    and for the command line that create and update test projects for you. The tools create the
-    directories you use for source code and resources and the manifest file for the test package.
-    The command-line tools also create the Ant build files you need.
-</p>
-<p>
-    You should always use Android tools to create a test project. Among other benefits,
-    the tools:
-</p>
-    <ul>
-        <li>
-            Automatically set up your test package to use
-            {@link android.test.InstrumentationTestRunner} as the test case runner. You must use
-            <code>InstrumentationTestRunner</code> (or a subclass) to run JUnit tests.
-        </li>
-        <li>
-            Create an appropriate name for the test package. If the application
-            under test has a package name of <code>com.mydomain.myapp</code>, then the
-            Android tools set the test package name to <code>com.mydomain.myapp.test</code>. This
-            helps you identify their relationship, while preventing conflicts within the system.
-        </li>
-        <li>
-            Automatically create the proper build files, manifest file, and directory
-            structure for the test project. This helps you to build the test package without
-            having to modify build files and sets up the linkage between your test package and
-            the application under test.
-            The
-        </li>
-    </ul>
-<p>
-    You can create a test project anywhere in your file system, but the best approach is to
-    add the test project so that its root directory <code>tests/</code> is at the same level
-    as the <code>src/</code> directory of the main application's project. This helps you find the
-    tests associated with an application. For example, if your application project's root directory
-    is <code>MyProject</code>, then you should use the following directory structure:
-</p>
-<pre class="classic no-pretty-print">
-  MyProject/
-      AndroidManifest.xml
-      res/
-          ... (resources for main application)
-      src/
-          ... (source code for main application) ...
-      tests/
-          AndroidManifest.xml
-          res/
-              ... (resources for tests)
-          src/
-              ... (source code for tests)
-</pre>
-<h2 id="TestAPI">The Testing API</h2>
-<p>
-    The Android testing API is based on the JUnit API and extended with a instrumentation
-    framework and Android-specific testing classes.
-</p>
-<h3 id="JUnit">JUnit</h3>
-<p>
-    You can use the JUnit {@link junit.framework.TestCase TestCase} class to do unit testing on
-    a class that doesn't call Android APIs. <code>TestCase</code> is also the base class for
-    {@link android.test.AndroidTestCase}, which you can use to test Android-dependent objects.
-    Besides providing the JUnit framework, AndroidTestCase offers Android-specific setup,
-    teardown, and helper methods.
-</p>
-<p>
-    You use the JUnit {@link junit.framework.Assert} class to display test results.
-    The assert methods compare values you expect from a test to the actual results and
-    throw an exception if the comparison fails. Android also provides a class of assertions that
-    extend the possible types of comparisons, and another class of assertions for testing the UI.
-    These are described in more detail in the section <a href="#AssertionClasses">
-    Assertion classes</a>
-</p>
-<p>
-    To learn more about JUnit, you can read the documentation on the
-    <a href="http://www.junit.org">junit.org</a> home page.
-    Note that the Android testing API supports JUnit 3 code style, but not JUnit 4. Also, you must
-    use Android's instrumented test runner {@link android.test.InstrumentationTestRunner} to run
-    your test case classes. This test runner is described in the
-    section <a href="#InstrumentationTestRunner">Running Tests</a>.
-</p>
-<h3 id="Instrumentation">Instrumentation</h3>
-<p>
-    Android instrumentation is a set of control methods or "hooks" in the Android system. These hooks
-    control an Android component independently of its normal lifecycle. They also control how
-    Android loads applications.
-</p>
-<p>
-    Normally, an Android component runs in a lifecycle determined by the system. For example, an
-    Activity object's lifecycle starts when the Activity is activated by an Intent. The object's
-    <code>onCreate()</code> method is called, followed by <code>onResume()</code>. When the user
-    starts another application, the <code>onPause()</code> method is called. If the Activity
-    code calls the <code>finish()</code> method, the <code>onDestroy()</code> method is called.
-    The Android framework API does not provide a way for your code to invoke these callback
-    methods directly, but you can do so using instrumentation.
-</p>
-<p>
-    Also, the system runs all the components of an application into the same
-    process. You can allow some components, such as content providers, to run in a separate process,
-    but you can't force an application to run in the same process as another application that is
-    already running.
-</p>
-<p>
-    With Android instrumentation, though, you can invoke callback methods in your test code.
-    This allows you to run through the lifecycle of a component step by step, as if you were
-    debugging the component. The following test code snippet demonstrates how to use this to
-    test that an Activity saves and restores its state:
-</p>
-<a name="ActivitySnippet"></a>
-<pre>
-    // Start the main activity of the application under test
-    mActivity = getActivity();
-
-    // Get a handle to the Activity object's main UI widget, a Spinner
-    mSpinner = (Spinner)mActivity.findViewById(com.android.example.spinner.R.id.Spinner01);
-
-    // Set the Spinner to a known position
-    mActivity.setSpinnerPosition(TEST_STATE_DESTROY_POSITION);
-
-    // Stop the activity - The onDestroy() method should save the state of the Spinner
-    mActivity.finish();
-
-    // Re-start the Activity - the onResume() method should restore the state of the Spinner
-    mActivity = getActivity();
-
-    // Get the Spinner's current position
-    int currentPosition = mActivity.getSpinnerPosition();
-
-    // Assert that the current position is the same as the starting position
-    assertEquals(TEST_STATE_DESTROY_POSITION, currentPosition);
-</pre>
-<p>
-    The key method used here is
-    {@link android.test.ActivityInstrumentationTestCase2#getActivity()}, which is a
-    part of the instrumentation API. The Activity under test is not started until you call this
-    method. You can set up the test fixture in advance, and then call this method to start the
-    Activity.
-</p>
-<p>
-    Also, instrumentation can load both a test package and the application under test into the
-    same process. Since the application components and their tests are in the same process, the
-    tests can invoke methods in the components, and modify and examine fields in the components.
-</p>
-<h3 id="TestCaseClasses">Test case classes</h3>
-<p>
-    Android provides several test case classes that extend {@link junit.framework.TestCase} and
-    {@link junit.framework.Assert} with Android-specific setup, teardown, and helper methods.
-</p>
-<h4 id="AndroidTestCase">AndroidTestCase</h4>
-<p>
-    A useful general test case class, especially if you are
-    just starting out with Android testing, is {@link android.test.AndroidTestCase}. It extends
-    both {@link junit.framework.TestCase} and {@link junit.framework.Assert}. It provides the
-    JUnit-standard <code>setUp()</code> and <code>tearDown()</code> methods, as well as
-    all of JUnit's Assert methods. In addition, it provides methods for testing permissions, and a
-    method that guards against memory leaks by clearing out certain class references.
-</p>
-<h4 id="ComponentTestCase">Component-specific test cases</h4>
-<p>
-    A key feature of the Android testing framework is its component-specific test case classes.
-    These address specific component testing needs with methods for fixture setup and
-    teardown and component lifecycle control. They also provide methods for setting up mock objects.
-    These classes are described in the component-specific testing topics:
-</p>
+The <a href="{@docRoot}tools/testing-support-library/index.html">Android Testing Support Library</a>
+provides a set of APIs that allow you to quickly build and run test code for your apps, including
+JUnit 4 and functional user interface (UI) tests. The library includes the following
+instrumentation-based APIs that are useful when you want to automate your tests:</p>
 <ul>
-    <li>
-        <a href="{@docRoot}tools/testing/activity_testing.html">Activity Testing</a>
+    <li><a href="{@docRoot}tools/testing-support-library/index.html#AndroidJUnitRunner">
+        {@code AndroidJUnitRunner}</a>:
+      JUnit 4-compatible test runner for Android
     </li>
-    <li>
-        <a href="{@docRoot}tools/testing/contentprovider_testing.html">
-        Content Provider Testing</a>
+
+    <li><a href="{@docRoot}tools/testing-support-library/index.html#Espresso">Espresso</a>:
+    UI testing framework; suitable for functional UI testing within an app
     </li>
-    <li>
-        <a href="{@docRoot}tools/testing/service_testing.html">Service Testing</a>
-    </li>
-</ul>
-<p>
-    Android does not provide a separate test case class for BroadcastReceiver. Instead, test a
-    BroadcastReceiver by testing the component that sends it Intent objects, to verify that the
-    BroadcastReceiver responds correctly.
-</p>
-<h4 id="ApplicationTestCase">ApplicationTestCase</h4>
-<p>
-    You use the {@link android.test.ApplicationTestCase} test case class to test the setup and
-    teardown of {@link android.app.Application} objects. These objects maintain the global state of
-    information that applies to all the components in an application package. The test case can
-    be useful in verifying that the &lt;application&gt; element in the manifest file is correctly
-    set up. Note, however, that this test case does not allow you to control testing of the
-    components within your application package.
-</p>
-<h4 id="InstrumentationTestCase">InstrumentationTestCase</h4>
-<p>
-    If you want to use instrumentation methods in a test case class, you must use
-    {@link android.test.InstrumentationTestCase} or one of its subclasses. The
-    {@link android.app.Activity} test cases extend this base class with other functionality that
-    assists in Activity testing.
-</p>
+
+    <li><a href="{@docRoot}tools/testing-support-library/index.html#UIAutomator">UI Automator</a>:
+    UI testing framework; suitable for cross-app functional UI testing across system and installed
+    apps</li>
+  </ul>
 
 <h3 id="AssertionClasses">Assertion classes</h3>
-<p>
-    Because Android test case classes extend JUnit, you can use assertion methods to display the
-    results of tests. An assertion method compares an actual value returned by a test to an
-    expected value, and throws an AssertionException if the comparison test fails. Using assertions
-    is more convenient than doing logging, and provides better test performance.
+<p>Because Android Testing Support Library APIs extend JUnit, you can use assertion methods to
+display the results of tests. An assertion method compares an actual value returned by a test to an
+expected value, and throws an AssertionException if the comparison test fails. Using assertions
+is more convenient than logging, and provides better test performance.
 </p>
-<p>
-    Besides the JUnit {@link junit.framework.Assert} class methods, the testing API also provides
-    the {@link android.test.MoreAsserts} and {@link android.test.ViewAsserts} classes:
-</p>
-<ul>
-    <li>
-        {@link android.test.MoreAsserts} contains more powerful assertions such as
-        {@link android.test.MoreAsserts#assertContainsRegex}, which does regular expression
-        matching.
-    </li>
-    <li>
-        {@link android.test.ViewAsserts} contains useful assertions about Views. For example
-        it contains {@link android.test.ViewAsserts#assertHasScreenCoordinates} that tests if a View
-        has a particular X and Y position on the visible screen. These asserts simplify testing of
-        geometry and alignment in the UI.
-    </li>
-</ul>
-<h3 id="MockObjectClasses">Mock object classes</h3>
-<p>
-    To facilitate dependency injection in testing, Android provides classes that create mock system
-    objects such as {@link android.content.Context} objects,
-    {@link android.content.ContentProvider} objects, {@link android.content.ContentResolver}
-    objects, and {@link android.app.Service} objects. Some test cases also provide mock
-    {@link android.content.Intent} objects. You use these mocks both to isolate tests
-    from the rest of the system and to facilitate dependency injection for testing. These classes
-    are found in the packages {@link android.test} and {@link android.test.mock}.
-</p>
-<p>
-    Mock objects isolate tests from a running system by stubbing out or overriding
-    normal operations. For example, a {@link android.test.mock.MockContentResolver}
-    replaces the normal resolver framework with its own local framework, which is isolated
-    from the rest of the system. MockContentResolver also stubs out the
-    {@link android.content.ContentResolver#notifyChange(Uri, ContentObserver, boolean)} method
-    so that observer objects outside the test environment are not accidentally triggered.
-</p>
-<p>
-    Mock object classes also facilitate dependency injection by providing a subclass of the
-    normal object that is non-functional except for overrides you define. For example, the
-    {@link android.test.mock.MockResources} object provides a subclass of
-    {@link android.content.res.Resources} in which all the methods throw Exceptions when called.
-    To use it, you override only those methods that must provide information.
-</p>
-<p>
-    These are the mock object classes available in Android:
-</p>
-<h4 id="SimpleMocks">Simple mock object classes</h4>
-<p>
-    {@link android.test.mock.MockApplication}, {@link android.test.mock.MockContext},
-    {@link android.test.mock.MockContentProvider}, {@link android.test.mock.MockCursor},
-    {@link android.test.mock.MockDialogInterface}, {@link android.test.mock.MockPackageManager}, and
-    {@link android.test.mock.MockResources} provide a simple and useful mock strategy. They are
-    stubbed-out versions of the corresponding system object class, and all of their methods throw an
-    {@link java.lang.UnsupportedOperationException} exception if called. To use them, you override
-    the methods you need in order to provide mock dependencies.
-</p>
-<p class="Note"><strong>Note:</strong>
-    {@link android.test.mock.MockContentProvider}
-    and {@link android.test.mock.MockCursor} are new as of API level 8.
-</p>
-<h4 id="ResolverMocks">Resolver mock objects</h4>
-<p>
-    {@link android.test.mock.MockContentResolver} provides isolated testing of content providers by
-    masking out the normal system resolver framework. Instead of looking in the system to find a
-    content provider given an authority string, MockContentResolver uses its own internal table. You
-    must explicitly add providers to this table using
-    {@link android.test.mock.MockContentResolver#addProvider(String,ContentProvider)}.
-</p>
-<p>
-    With this feature, you can associate a mock content provider with an authority. You can create
-    an instance of a real provider but use test data in it. You can even set the provider for an
-    authority to <code>null</code>. In effect, a MockContentResolver object isolates your test
-    from providers that contain real data. You can control the
-    function of the provider, and you can prevent your test from affecting real data.
-</p>
-<h3 id="ContextMocks">Contexts for testing</h3>
-<p>
-    Android provides two Context classes that are useful for testing:
-</p>
-<ul>
-    <li>
-        {@link android.test.IsolatedContext} provides an isolated {@link android.content.Context},
-        File, directory, and database operations that use this Context take place in a test area.
-        Though its functionality is limited, this Context has enough stub code to respond to
-        system calls.
-        <p>
-            This class allows you to test an application's data operations without affecting real
-            data that may be present on the device.
-        </p>
-    </li>
-    <li>
-        {@link android.test.RenamingDelegatingContext} provides a Context in which
-        most functions are handled by an existing {@link android.content.Context}, but
-        file and database operations are handled by a {@link android.test.IsolatedContext}.
-        The isolated part uses a test directory and creates special file and directory names.
-        You can control the naming yourself, or let the constructor determine it automatically.
-        <p>
-            This object provides a quick way to set up an isolated area for data operations,
-            while keeping normal functionality for all other Context operations.
-        </p>
-    </li>
-</ul>
-<h2 id="InstrumentationTestRunner">Running Tests</h2>
-<p>
-    Test cases are run by a test runner class that loads the test case class, set ups,
-    runs, and tears down each test. An Android test runner must also be instrumented, so that
-    the system utility for starting applications can control how the test package
-    loads test cases and the application under test. You tell the Android platform
-    which instrumented test runner to use by setting a value in the test package's manifest file.
-</p>
-<p>
-    {@link android.test.InstrumentationTestRunner} is the primary Android test runner class. It
-    extends the JUnit test runner framework and is also instrumented. It can run any of the test
-    case classes provided by Android and supports all possible types of testing.
-</p>
-<p>
-    You specify <code>InstrumentationTestRunner</code> or a subclass in your test package's
-    manifest file, in the 
-<code><a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">&lt;instrumentation&gt;</a></code> 
-    element. Also, <code>InstrumentationTestRunner</code> code resides
-    in the shared library <code>android.test.runner</code>,  which is not normally linked to
-    Android code. To include it, you must specify it in a
-<code><a href="{@docRoot}guide/topics/manifest/uses-library-element.html">&lt;uses-library&gt;</a></code>
-    element. You do not have to set up these elements yourself. Both Eclipse with ADT and the
-    <code>android</code> command-line tool construct them automatically and add them to your
-    test package's manifest file.
-</p>
-<p class="Note">
-    <strong>Note:</strong> If you use a test runner other than
-    <code>InstrumentationTestRunner</code>, you must change the &lt;instrumentation&gt;
-    element to point to the class you want to use.
-</p>
-<p>
-    To run {@link android.test.InstrumentationTestRunner}, you use internal system classes called by
-    Android tools. When you run a test in Eclipse with ADT, the classes are called automatically.
-    When you run a test from the command line, you run these classes with
-    <a href="{@docRoot}tools/help/adb.html">Android Debug Bridge (adb)</a>.
-</p>
-<p>
-    The system classes load and start the test package, kill any processes that
-    are running an instance of the application under test, and then load a new instance of the
-    application under test. They then pass control to
-    {@link android.test.InstrumentationTestRunner}, which runs
-    each test case class in the test package. You can also control which test cases and
-    methods are run using settings in Eclipse with ADT, or using flags with the command-line tools.
-</p>
-<p>
-    Neither the system classes nor {@link android.test.InstrumentationTestRunner} run
-    the application under test. Instead, the test case does this directly. It either calls methods
-    in the application under test, or it calls its own methods that trigger lifecycle events in
-    the application under test. The application is under the complete control of the test case,
-    which allows it to set up the test environment (the test fixture) before running a test. This
-    is demonstrated in the previous <a href="#ActivitySnippet">code snippet</a> that tests an
-    Activity that displays a Spinner widget.
-</p>
-<p>
-    To learn more about running tests, please read the topics
-    <a href="{@docRoot}tools/testing/testing_eclipse.html">
-    Testing from Eclipse with ADT</a> or
-    <a href="{@docRoot}tools/testing/testing_otheride.html">
-    Testing from Other IDEs</a>.
-</p>
-<h2 id="TestResults">Seeing Test Results</h2>
-<p>
-    The Android testing framework returns test results back to the tool that started the test.
-    If you run a test in Eclipse with ADT, the results are displayed in a new JUnit view pane. If
-    you run a test from the command line, the results are displayed in <code>STDOUT</code>. In
-    both cases, you see a test summary that displays the name of each test case and method that
-    was run. You also see all the assertion failures that occurred. These include pointers to the
-    line in the test code where the failure occurred. Assertion failures also list the expected
-    value and actual value.
-</p>
-<p>
-    The test results have a format that is specific to the IDE that you are using. The test
-    results format for Eclipse with ADT is described in
-    <a href="{@docRoot}tools/testing/testing_eclipse.html#RunTestEclipse">
-    Testing from Eclipse with ADT</a>. The test results format for tests run from the
-    command line is described in
-    <a href="{@docRoot}tools/testing/testing_otheride.html#RunTestsCommand">
-    Testing from Other IDEs</a>.
-</p>
-<h2 id="Monkeys">monkey and monkeyrunner</h2>
+<p>To simplify your test development, we recommend that you use the
+<a href="https://github.com/hamcrest"
+class="external-link">Hamcrest</a> library, which lets you create more flexible tests using the
+Hamcrest matcher APIs.</p>
+
+<h2 id="Monkeys">Monkey and Monkeyrunner</h2>
 <p>
     The SDK provides two tools for functional-level application testing:
 </p>
@@ -569,72 +289,4 @@
             tests. You run programs that use the API with the <code>monkeyrunner</code> command-line
             tool.
         </li>
-    </ul>
-<h2 id="PackageNames">Working With Package names</h2>
-<p>
-    In the test environment, you work with both Android application package names and
-    Java package identifiers. Both use the same naming format, but they represent substantially
-    different entities. You need to know the difference to set up your tests correctly.
-</p>
-<p>
-    An Android package name is a unique system name for a <code>.apk</code> file, set by the
-    &quot;android:package&quot; attribute of the &lt;manifest&gt; element in the package's
-    manifest. The Android package name of your test package must be different from the
-    Android package name of the application under test. By default, Android tools create the
-    test package name by appending ".test" to the package name of the application under test.
-</p>
-<p>
-    The test package also uses an Android package name to target the application package it
-    tests. This is set in the &quot;android:targetPackage&quot; attribute of the
-    &lt;instrumentation&gt; element in the test package's manifest.
-</p>
-<p>
-    A Java package identifier applies to a source file. This package name reflects the directory
-    path of the source file. It also affects the visibility of classes and members to each other.
-</p>
-<p>
-    Android tools that create test projects set up an Android test package name for you.
-    From your input, the tools set up the test package name and the target package name for the
-    application under test. For these tools to work, the application project must already exist.
-</p>
-<p>
-    By default, these tools set the Java package identifier for the test class to be the same
-    as the Android package identifier. You may want to change this if you want to expose
-    members in the application under test by giving them package visibility. If you do this,
-    change only the Java package identifier, not the Android package names, and change only the
-    test case source files. Do not change the Java package name of the generated
-    <code>R.java</code> class in your test package, because it will then conflict with the
-    <code>R.java</code> class in the application under test. Do not change the Android package name
-    of your test package to be the same as the application it tests, because then their names
-    will no longer be unique in the system.
-</p>
-<h2 id="WhatToTest">What to Test</h2>
-<p>
-    The topic <a href="{@docRoot}tools/testing/what_to_test.html">What To Test</a>
-    describes the key functionality you should test in an Android application, and the key
-    situations that might affect that functionality.
-</p>
-<p>
-    Most unit testing is specific to the Android component you are testing.
-    The topics <a href="{@docRoot}tools/testing/activity_testing.html">Activity Testing</a>,
-    <a href="{@docRoot}tools/testing/contentprovider_testing.html">
-    Content Provider Testing</a>, and <a href="{@docRoot}tools/testing/service_testing.html">
-    Service Testing</a> each have a section entitled "What To Test" that lists possible testing
-    areas.
-</p>
-<p>
-    When possible, you should run these tests on an actual device. If this is not possible, you can
-    use the <a href="{@docRoot}tools/devices/emulator.html">Android Emulator</a> with
-    Android Virtual Devices configured for the hardware, screens, and versions you want to test.
-</p>
-<h2 id="NextSteps">Next Steps</h2>
-<p>
-    To learn how to set up and run tests in Eclipse, please refer to 
-<a href="{@docRoot}tools/testing/testing_eclipse.html">Testing from Eclipse with ADT</a>.
-    If you're not working in Eclipse, refer to 
-<a href="{@docRoot}tools/testing/testing_otheride.html">Testing from Other IDEs</a>.
-</p>
-<p>
-    If you want a step-by-step introduction to Android testing, try the
-    <a href="{@docRoot}tools/testing/activity_test.html">Activity Testing Tutorial</a>.
-</p>
+    </ul>
\ No newline at end of file
diff --git a/docs/html/tools/testing/testing_eclipse.jd b/docs/html/tools/testing/testing_eclipse.jd
deleted file mode 100644
index 6c9d55b..0000000
--- a/docs/html/tools/testing/testing_eclipse.jd
+++ /dev/null
@@ -1,535 +0,0 @@
-page.title=Testing from Eclipse with ADT
-parent.title=Testing
-parent.link=index.html
-@jd:body
-<div id="qv-wrapper">
-    <div id="qv">
-        <h2>In this document</h2>
-            <ol>
-                <li><a href="#CreateTestProjectEclipse">Creating a Test Project</a></li>
-                <li><a href="#CreateTestAppEclipse">Creating a Test Package</a></li>
-                <li><a href="#RunTestEclipse">Running Tests</a></li>
-            </ol>
-    </div>
-</div>
-<p>
-    This topic explains how create and run tests of Android applications in Eclipse with ADT.
-    Before you read this topic, you should read about how to create an Android application with the
-    basic processes for creating and running applications with ADT, as described in
-    <a href="{@docRoot}tools/projects/projects-eclipse.html">Managing Projects from
-Eclipse</a>
-    and <a href="{@docRoot}tools/building/building-eclipse.html">Building and Running
-from Eclipse</a>.
-    You may also want to read
-    <a href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>,
-    which provides an overview of the Android testing framework.
-</p>
-<p>
-    ADT provides several features that help you set up and manage your testing environment
-    effectively:
-</p>
-    <ul>
-        <li>
-            It lets you quickly create a test project and link it to the application under test.
-            When it creates the test project, it automatically inserts the necessary
-            <code>&lt;instrumentation&gt;</code> element in the test package's manifest file.
-        </li>
-        <li>
-            It lets you quickly import the classes of the application under test, so that your
-            tests can inspect them.
-        </li>
-        <li>
-            It lets you create run configurations for your test package and include in
-            them flags that are passed to the Android testing framework.
-        </li>
-        <li>
-            It lets you run your test package without leaving Eclipse. ADT builds both the
-            application under test and the test package automatically, installs them if
-            necessary to your device or emulator, runs the test package, and displays the
-            results in a separate window in Eclipse.
-        </li>
-    </ul>
-<p>
-    If you are not developing in Eclipse or you want to learn how to create and run tests from the
-    command line, see
-    <a href="{@docRoot}tools/testing/testing_otheride.html">Testing from Other IDEs</a>.
-</p>
-<h2 id="CreateTestProjectEclipse">Creating a Test Project</h2>
-<p>
-    To set up a test environment for your Android application, you must first create a separate
-    project that holds the test code. The new project follows the directory structure
-    used for any Android application. It includes the same types of content and files, such as
-    source code, resources, a manifest file, and so forth. The test package you
-    create is connected to the application under test by an
-    <a href="{@docRoot}guide/topics/manifest/instrumentation-element.html">
-    <code>&lt;instrumentation&gt;</code></a> element in its manifest file.
-</p>
-<p>
-    The <em>New Android Test Project</em> dialog makes it easy for you to generate a
-    new test project that has the proper structure, including the
-    <code>&lt;instrumentation&gt;</code> element in the manifest file. You can use the New
-    Android Test Project dialog to generate the test project at any time. The dialog appears
-    just after you create a new Android main application project, but you can also run it to
-    create a test project for a project that you created previously.
-</p>
-<p>
-    To create a test project in Eclipse with ADT:
-</p>
-<ol>
-    <li>
-        In Eclipse, select <strong>File &gt; New &gt; Other</strong>. This opens the <em>Select a
-        Wizard</em> dialog.
-    </li>
-    <li>
-        In the dialog, in the <em>Wizards</em> drop-down list, find the entry for Android, then
-        click the toggle to the left. Select <strong>Android Test Project</strong>, then at the
-        bottom of the dialog click <strong>Next</strong>. The <em>New Android Test Project</em>
-        wizard appears.
-    </li>
-    <li>
-        Next to <em>Test Project Name</em>, enter a name for the project. You may use any name,
-        but you may want to associate the name with the project name for the application under test.
-        One way to do this is to take the application's project name, append the string "Test" to
-        it, and then use this as the test package project name.
-        <p>
-            The name becomes part of the suggested project path, but you can change this in the
-            next step.
-        </p>
-    </li>
-    <li>
-        In the <em>Content</em> panel, examine the suggested path to the project.
-        If <em>Use default location</em> is set, then the wizard will suggest a path that is
-        a concatenation of the workspace path and the project name you entered. For example,
-        if your workspace path is <code>/usr/local/workspace</code> and your project name is
-        <code>MyTestApp</code>, then the wizard will suggest
-        <code>/usr/local/workspace/MyTestApp</code>. To enter your own
-        choice for a path, unselect <em>Use default location</em>, then enter or browse to the
-        path where you want your project.
-        <p>
-            To learn more about choosing the location of test projects, please read
-            <a href="{@docRoot}tools/testing/testing_android.html#TestProjectPaths">
-            Testing Fundamentals</a>.
-        </p>
-    </li>
-    <li>
-        In the Test Target panel, set An Existing Android Project, click Browse, then select your
-        Android application from the list. You now see that the wizard has completed the Test
-        Target Package, Application Name, and Package Name fields for you (the latter two are in
-        the Properties panel).
-    </li>
-    <li>
-        In the Build Target panel, select the Android SDK platform that the application under test
-        uses.
-    </li>
-    <li>
-        Click Finish to complete the wizard. If Finish is disabled, look for error messages at the
-        top of the wizard dialog, and then fix any problems.
-    </li>
-</ol>
-<h2 id="CreateTestAppEclipse">Creating a Test Package</h2>
-<p>
-    Once you have created a test project, you populate it with a test package. This package does not
-    require an Activity, although you can define one if you wish. Although your test package can
-    combine Activity classes, test case classes, or ordinary classes, your main test case
-    should extend one of the Android test case classes or JUnit classes, because these provide the
-    best testing features.
-</p>
-<p>
-    Test packages do not need to have an Android GUI. When you run the package in
-    Eclipse with ADT, its results appear in the JUnit view. Running tests and seeing the results is
-    described in more detail in the section <a href="#RunTestEclipse">Running Tests</a>.
-</p>
-
-<p>
-    To create a test package, start with one of Android's test case classes defined in
-    {@link android.test android.test}. These extend the JUnit
-    {@link junit.framework.TestCase TestCase} class. The Android test classes for Activity objects
-    also provide instrumentation for testing an Activity. To learn more about test case
-    classes, please read the topic <a href="{@docRoot}tools/testing/testing_android.html">
-    Testing Fundamentals</a>.
-</p>
-<p>
-    Before you create your test package, you choose the Java package identifier you want to use
-    for your test case classes and the Android package name you want to use. To learn more
-    about this, please read
-    <a href="{@docRoot}tools/testing/testing_android.html#PackageNames">
-    Testing Fundamentals</a>.
-</p>
-<p>
-    To add a test case class to your project:
-</p>
-<ol>
-    <li>
-        In the <em>Project Explorer</em> tab, open your test project, then open the <em>src</em>
-        folder.
-    </li>
-    <li>
-        Find the Java package identifier set by the projection creation wizard. If you haven't
-        added classes yet, this node won't have any children, and its icon will not be filled in.
-        If you want to change the identifier value, right-click the identifier and select
-        <strong>Refactor</strong> &gt; <strong>Rename</strong>, then enter the new name.
-    </li>
-    <li>
-        When you are ready, right-click the Java package identifier again and select
-        <strong>New</strong> &gt; <strong>Class</strong>. This displays the <em>New Java Class</em>
-        dialog, with the <em>Source folder</em> and <em>Package</em> values already set.
-    </li>
-    <li>
-        In the <em>Name</em> field, enter a name for the test case class. One way to choose a
-        class name is to append the string "Test" to the class of the component you are testing.
-        For example, if you are testing the class MyAppActivity, your test case class
-        name would be MyAppActivityTest. Leave the modifiers set to <em>public</em>.
-    </li>
-    <li>
-        In the <em>Superclass</em> field, enter the name of the Android test case class you
-        are extending. You can also browse the available classes.
-    </li>
-    <li>
-        In <em>Which method stubs would you like to create?</em>, unset all the options, then
-        click <strong>Finish</strong>. You will set up the constructor manually.
-    </li>
-    <li>
-        Your new class appears in a new Java editor pane.
-    </li>
-</ol>
-<p>
-    You now have to ensure that the constructor is set up correctly. Create a constructor for your
-    class that has no arguments; this is required by JUnit. As the first statement in this
-    constructor, add a call to the base class' constructor. Each base test case class has its
-    own constructor signature. Refer to the class documentation in the documentation for
-    {@link android.test} for more information.
-</p>
-<p>
-    To control your test environment, you will want to override the <code>setUp()</code> and
-    <code>tearDown()</code> methods:
-</p>
-<ul>
-    <li>
-        <code>setUp()</code>: This method is invoked before any of the test methods in the class.
-        Use it to set up the environment for the test (the test fixture. You can use
-        <code>setUp()</code> to instantiate a new Intent with the action <code>ACTION_MAIN</code>.
-        You can then use this intent to start the Activity under test.
-    </li>
-    <li>
-        <code>tearDown()</code>: This method is invoked after all the test methods in the class. Use
-        it to do garbage collection and to reset the test fixture.
-    </li>
-</ul>
-<p>
-    Another useful convention is to add the method <code>testPreconditions()</code> to your test
-    class. Use this method to test that the application under test is initialized correctly. If this
-    test fails, you know that the initial conditions were in error. When this happens, further
-    test results are suspect, regardless of whether or not the tests succeeded.
-</p>
-<p>
-    The Resources tab contains an
-    <a href="{@docRoot}tools/testing/activity_test.html">Activity Testing</a>
-    tutorial with more information about creating test classes and methods.
-</p>
-<h2 id="RunTestEclipse">Running Tests</h2>
-    <div class="sidebox-wrapper">
-        <div class="sidebox">
-            <h2>Running tests from the command line</h2>
-                <p>
-                    If you've created your tests in Eclipse, you can still run your tests and test
-                    suites by using command-line tools included with the Android SDK. You may want
-                    to do this, for example, if you have a large number of tests to run, if you
-                    have a large test case, or if you want a fine level of control over which
-                    tests are run at a particular time.
-                </p>
-                <p>
-                    To run tests created in Eclipse with ADT with command-line tools, you must first
-                    install additional files into the test project using the <code>android</code>
-                    tool's "create test-project" option. To see how to do this, read
-                   <a href="{@docRoot}tools/testing/testing_otheride.html#CreateProject">
-                    Testing in Other IDEs</a>.
-                </p>
-        </div>
-    </div>
-<p>
-    When you run a test package in Eclipse with ADT, the output appears in the Eclipse JUnit view.
-    You can run the entire test package or one test case class. To do run tests, Eclipse runs the
-    <code>adb</code> command for running a test package, and displays the output, so there is no
-    difference between running tests inside Eclipse and running them from the command line.
-</p>
-<p>
-    As with any other package, to run a test package in Eclipse with ADT you must either attach a
-    device to your computer or use the Android emulator. If you use the emulator, you must have an
-    Android Virtual Device (AVD) that uses the same target as the test package.
-</p>
-<p>
-    To run a test in Eclipse, you have two choices:</p>
-<ul>
-    <li>
-        Run a test just as you run an application, by selecting
-        <strong>Run As... &gt; Android JUnit Test</strong> from the project's context menu or
-        from the main menu's <strong>Run</strong> item.
-    </li>
-    <li>
-        Create an Eclipse run configuration for your test project. This is useful if you want
-        multiple test suites, each consisting of selected tests from the project. To run
-        a test suite, you run the test configuration.
-        <p>
-            Creating and running test configurations is described in the next section.
-        </p>
-    </li>
-</ul>
-<p>
-    To create and run a test suite using a run configuration:
-</p>
-<ol>
-    <li>
-        In the Package Explorer, select the test project, then from the main menu, select
-        <strong>Run &gt; Run Configurations...</strong>. The Run Configurations dialog appears.
-    </li>
-    <li>
-        In the left-hand pane, find the Android JUnit Test entry. In the right-hand pane, click the
-        Test tab. The Name: text box shows the name of your project. The Test class: dropdown box
-        shows one of the test classes in your project.
-    </li>
-    <li>
-        To run one test class, click  Run a single test, then enter your project name in the
-        Project: text box and the class name in the Test class: text box.
-        <p>
-            To run all the test classes, click Run all tests in the selected project or package,
-            then enter the project or package name in the text box.
-        </p>
-    </li>
-    <li>
-        Now click the Target tab.
-        <ul>
-            <li>
-                Optional: If you are using the emulator, click Automatic, then in the Android
-                Virtual Device (AVD) selection table, select an existing AVD.
-            </li>
-            <li>
-                In the Emulator Launch Parameters pane, set the Android emulator flags you want to
-                use. These are documented in the topic
-                <a href="{@docRoot}tools/help/emulator.html#startup-options">
-                Android Emulator</a>.
-            </li>
-        </ul>
-    </li>
-    <li>
-        Click the Common tab. In the Save As pane, click Local to save this run configuration
-        locally, or click Shared to save it to another project.
-    </li>
-    <li>
-        Optional: Add the configuration to the Run toolbar and the <strong>Favorites</strong>
-        menu: in the Display in Favorites pane click the checkbox next to Run.
-    </li>
-    <li>
-        Optional: To add this configuration to the <strong>Debug</strong> menu and toolbar, click
-        the checkbox next to Debug.
-    </li>
-    <li>
-        To save your settings, click Close.<br/>
-        <p class="note"><strong>Note:</strong>
-            Although you can run the test immediately by clicking Run, you should save the test
-            first and then run it by selecting it from the Eclipse standard toolbar.
-        </p>
-    </li>
-    <li>
-        On the Eclipse standard toolbar, click the down arrow next to the green Run arrow. This
-        displays a menu of saved Run and Debug configurations.
-    </li>
-    <li>
-        Select the test run configuration you just created. The test starts.
-    </li>
-</ol>
-<p>
-    The progress of your test appears in the Console view as a series of messages. Each message is
-    preceded by a timestamp and the <code>.apk</code> filename to which it applies. For example,
-    this message appears when you run a test to the emulator, and the emulator is not yet started:
-</p>
-<div class="sidebox-wrapper">
-    <div class="sidebox">
-        <h2>Message Examples</h2>
-        <p>
-            The examples shown in this section come from the
-            <a href="{@docRoot}resources/samples/SpinnerTest/index.html">SpinnerTest</a>
-            sample test package, which tests the
-            <a href="{@docRoot}resources/samples/Spinner/index.html">Spinner</a>
-            sample application. This test package is also featured in the
-            <a href="{@docRoot}tools/testing/activity_test.html">Activity Testing</a>
-            tutorial.
-        </p>
-    </div>
-</div>
-<pre>
-    [<em>yyyy-mm-dd hh:mm:ss</em> - <em>testfile</em>] Waiting for HOME ('android.process.acore') to be launched...
-</pre>
-<p>
-    In the following description of these messages, <code><em>devicename</em></code> is the name of
-    the device or emulator you are using to run the test, and <code><em>port</em></code> is the
-    port number for the device. The name and port number are in the format used by the
-    <code><a href="{@docRoot}tools/help/adb.html#devicestatus">adb devices</a></code>
-    command. Also, <code><em>testfile</em></code> is the <code>.apk</code> filename of the test
-    package you are running, and <em>appfile</em> is the filename of the application under test.
-</p>
-<ul>
-    <li>
-        If you are using an emulator and you have not yet started it, then Eclipse
-        first starts the emulator. When this is complete, you see
-        the message:
-        <p>
-            <code>HOME is up on device '<em>devicename</em>-<em>port</em>'</code>
-        </p>
-    </li>
-    <li>
-        If you have not already installed your test package, then you see
-        the message:
-        <p>
-            <code>Uploading <em>testfile</em> onto device '<em>devicename</em>-<em>port</em>'
-            </code>
-        </p>
-        <p>
-            then the message <code>Installing <em>testfile</em></code>.
-        </p>
-        <p>
-            and finally the message <code>Success!</code>
-        </p>
-    </li>
-</ul>
-<p>
-    The following lines are an example of this message sequence:
-</p>
-<code>
-[2010-07-01 12:44:40 - MyTest] HOME is up on device 'emulator-5554'<br>
-[2010-07-01 12:44:40 - MyTest] Uploading MyTest.apk onto device 'emulator-5554'<br>
-[2010-07-01 12:44:40 - MyTest] Installing MyTest.apk...<br>
-[2010-07-01 12:44:49 - MyTest] Success!<br>
-</code>
-<br>
-<ul>
-    <li>
-        Next, if you have not yet installed the application under test to the device or
-        emulator, you see the message
-        <p>
-        <code>Project dependency found, installing: <em>appfile</em></code>
-        </p>
-        <p>
-            then the message <code>Uploading <em>appfile</em></code> onto device
-            '<em>devicename</em>-<em>port</em>'
-        </p>
-        <p>
-            then the message <code>Installing <em>appfile</em></code>
-        </p>
-        <p>
-            and finally the message <code>Success!</code>
-        </p>
-    </li>
-</ul>
-<p>
-    The following lines are an example of this message sequence:
-</p>
-<code>
-[2010-07-01 12:44:49 - MyTest] Project dependency found, installing: MyApp<br>
-[2010-07-01 12:44:49 - MyApp] Uploading MyApp.apk onto device 'emulator-5554'<br>
-[2010-07-01 12:44:49 - MyApp] Installing MyApp.apk...<br>
-[2010-07-01 12:44:54 - MyApp] Success!<br>
-</code>
-<br>
-<ul>
-    <li>
-        Next, you see the message
-        <code>Launching instrumentation <em>instrumentation_class</em> on device
-        <em>devicename</em>-<em>port</em></code>
-        <p>
-            <code>instrumentation_class</code> is the fully-qualified class name of the
-            instrumentation test runner you have specified (usually
-            {@link android.test.InstrumentationTestRunner}.
-        </p>
-    </li>
-    <li>
-        Next, as {@link android.test.InstrumentationTestRunner} builds a list of tests to run,
-        you see the message
-        <p>
-            <code>Collecting test information</code>
-        </p>
-        <p>
-            followed by
-        </p>
-        <p>
-            <code>Sending test information to Eclipse</code>
-        </p>
-    </li>
-    <li>
-        Finally, you see the message <code>Running tests</code>, which indicates that your tests
-        are running. At this point, you should start seeing the test results in the JUnit view.
-        When the tests are finished, you see the console message <code>Test run complete</code>.
-        This indicates that your tests are finished.
-    </li>
-</ul>
-<p>
-    The following lines are an example of this message sequence:
-</p>
-<code>
-[2010-01-01 12:45:02 - MyTest] Launching instrumentation android.test.InstrumentationTestRunner on device emulator-5554<br>
-[2010-01-01 12:45:02 - MyTest] Collecting test information<br>
-[2010-01-01 12:45:02 - MyTest] Sending test information to Eclipse<br>
-[2010-01-01 12:45:02 - MyTest] Running tests...<br>
-[2010-01-01 12:45:22 - MyTest] Test run complete<br>
-</code>
-<br>
-<p>
-    The test results appear in the JUnit view. This is divided into an upper summary pane,
-    and a lower stack trace pane.
-</p>
-<p>
-    The upper pane contains test information. In the pane's header, you see the following
-    information:
-</p>
-<ul>
-    <li>
-        Total time elapsed for the test package (labeled Finished after <em>x</em> seconds).
-    </li>
-    <li>
-        Number of runs (Runs:) - the number of tests in the entire test class.
-    </li>
-    <li>
-        Number of errors (Errors:) - the number of program errors and exceptions encountered
-        during the test run.
-    </li>
-    <li>
-        Number of failures (Failures:) - the number of test failures encountered during the test
-        run. This is the number of assertion failures. A test can fail even if the program does
-        not encounter an error.
-    </li>
-    <li>
-        A progress bar. The progress bar extends from left to right as the tests run. If all the
-        tests succeed, the bar remains green. If a test fails, the bar turns from green to red.
-    </li>
-</ul>
-<p>
-    The body of the upper pane contains the details of the test run. For each test case class
-    that was run, you see a line with the class name. To look at the results for the individual
-    test methods in that class, you click the left arrow to expand the line. You now see a
-    line for each test method in the class, and to its right the time it took to run.
-    If you double-click the method name, Eclipse opens the test class source in an editor view
-    pane and moves the focus to the first line of the test method.
-</p>
-<p>
-    The results of a successful test are shown in figure 1.
-</p>
-<a href="{@docRoot}images/testing/eclipse_test_results.png">
-    <img src="{@docRoot}images/testing/eclipse_test_results.png"
-         alt="Messages for a successful test" height="327px" id="TestResults"/>
-</a>
-<p class="img-caption">
-    <strong>Figure 1.</strong> Messages for a successful test.
-</p>
-<p>
-    The lower pane is for stack traces. If you highlight a failed test in the upper pane, the
-    lower pane contains a stack trace for the test. If a line corresponds to a point in your
-    test code, you can double-click it to display the code in an editor view pane, with the
-    line highlighted. For a successful test, the lower pane is empty.
-</p>
-<p>The results of a failed test are shown in figure 2.</p>
-<a href="{@docRoot}images/testing/eclipse_test_run_failure.png">
-    <img src="{@docRoot}images/testing/eclipse_test_run_failure.png"
-         alt="" height="372px" id="TestRun"/>
-</a>
-<p class="img-caption">
-    <strong>Figure 2.</strong> Messages for a test failure.
-</p>
diff --git a/docs/html/tools/testing/testing_otheride.jd b/docs/html/tools/testing/testing_otheride.jd
old mode 100644
new mode 100755
index a774087..4b2a6b1
--- a/docs/html/tools/testing/testing_otheride.jd
+++ b/docs/html/tools/testing/testing_otheride.jd
@@ -1,6 +1,5 @@
-page.title=Testing from Other IDEs
-parent.title=Testing
-parent.link=index.html
+page.title=Testing from the Command-Line
+
 @jd:body
 
 <div id="qv-wrapper">
@@ -8,27 +7,13 @@
         <h2>In this document</h2>
             <ol>
                 <li>
-                    <a href="#CreateTestProjectCommand">Working with Test Projects</a>
-                    <ol>
-                        <li>
-                            <a href="#CreateTestProject">Creating a test project</a>
-                        </li>
-                        <li>
-                            <a href="#UpdateTestProject">Updating a test project</a>
-                        </li>
-                    </ol>
-                </li>
-                <li>
-                    <a href="#CreateTestApp">Creating a Test Package</a>
-                </li>
-                <li>
                     <a href="#RunTestsCommand">Running Tests</a>
                     <ol>
                         <li>
-                            <a href="#RunTestsAnt">Quick build and run with Ant</a>
+                            <a href="#RunTestsGradle">Running unit tests with Gradle</a>
                         </li>
                         <li>
-                            <a href="#RunTestsDevice">Running tests on a device or emulator</a>
+                            <a href="#RunTestsDevice">Running tests with adb</a>
                         </li>
                     </ol>
                 </li>
@@ -47,290 +32,84 @@
         <h2>See Also</h2>
             <ol>
                 <li>
-                    <a href="{@docRoot}tools/testing/testing_android.html">
-                        Testing Fundamentals</a>
-                </li>
-                <li>
                     <a href="{@docRoot}tools/help/adb.html">Android Debug Bridge</a>
                 </li>
             </ol>
     </div>
 </div>
 <p>
-    This document describes how to create and run tests directly from the command line.
-    You can use the techniques described here if you are developing in an IDE other than Eclipse
-    or if you prefer to work from the command line. This document assumes that you already know how
-    to create a Android application in your programming environment. Before you start this
-    document, you should read the topic
-    <a href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>,
-    which provides an overview of Android testing.
-</p>
-<p>
-    If you are developing in Eclipse with ADT, you can set up and run your tests
-    directly in Eclipse. For more information, please read
-    <a href="{@docRoot}tools/testing/testing_eclipse.html">
-    Testing from Eclipse with ADT</a>.
-</p>
-<h2 id="CreateTestProjectCommand">Working with Test Projects</h2>
-<p>
-    You use the <code>android</code> tool to create test projects.
-    You also use <code>android</code> to convert existing test code into an Android test project,
-    or to add the <code>test</code> Ant target to an existing Android test project.
-    These operations are described in more detail in the section <a href="#UpdateTestProject">
-    Updating a test project</a>. The <code>test</code> target is described in
-    <a href="#RunTestsAnt">Quick build and run with Ant</a>.
-</p>
-<h3 id="CreateTestProject">Creating a test project</h3>
-<p>
-    To create a test project with the <code>android</code> tool, enter:
-</p>
-<pre>
-android create test-project -m &lt;main_path&gt; -n &lt;project_name&gt; -p &lt;test_path&gt;
-</pre>
-<p>
-    You must supply all the flags. The following table explains them in detail:
-</p>
-<table>
-    <tr>
-        <th>Flag</th>
-        <th>Value</th>
-        <th>Description</th>
-    </tr>
-    <tr>
-        <td><code>-m, --main</code></td>
-        <td>
-            Path to the project of the application under test, relative to the test package
-            directory.
-        </td>
-        <td>
-            For example, if the application under test is in <code>source/HelloAndroid</code>, and
-            you want to create the test project in <code>source/HelloAndroidTest</code>, then the
-            value of <code>--main</code> should be <code>../HelloAndroid</code>.
-        <p>
-            To learn more about choosing the location of test projects, please read
-            <a href="{@docRoot}tools/testing/testing_android.html#TestProjects">
-            Testing Fundamentals</a>.
-        </p>
-        </td>
-    </tr>
-    <tr>
-        <td><code>-n, --name</code></td>
-        <td>Name that you want to give the test project.</td>
-        <td>&nbsp;</td>
-    </tr>
-    <tr>
-        <td><code>-p, --path</code></td>
-        <td>Directory in which you want to create the new test project.</td>
-        <td>
-            The <code>android</code> tool creates the test project files and directory structure
-            in this directory. If the directory does not exist, <code>android</code> creates it.
-        </td>
-    </tr>
-</table>
-<p>
-    If the operation is successful, <code>android</code> lists to STDOUT the names of the files
-    and directories it has created.
-</p>
-<p>
-    This creates a new test project with the appropriate directories and build files. The directory
-    structure and build file contents are identical to those in a regular Android application
-    project. They are described in detail in the topic
-    <a href="{@docRoot}tools/projects/index.html">Managing Projects</a>.
-</p>
-<p>
-    The operation also creates an <code>AndroidManifest.xml</code> file with instrumentation
-    information. When you run the test, Android uses this information to load the application you
-    are testing and control it with instrumentation.
-</p>
-<p>
-    For example, suppose you create a project in the directory <code>~/source/HelloAndroid</code>,
-with the package name <code>com.example.helloandroid</code>,
-    and the activity name <code>HelloAndroid</code>. You can to create the test for this in
-    <code>~/source/HelloAndroidTest</code>. To do so, you enter:
-</p>
-<pre>
-$ cd ~/source
-$ android create test-project -m ../HelloAndroid -n HelloAndroidTest -p HelloAndroidTest
-</pre>
-<p>
-    This creates a directory called <code>~/src/HelloAndroidTest</code>. In the new directory you
-    see the file <code>AndroidManifest.xml</code>. This file contains the following
-    instrumentation-related elements and attributes:
-</p>
-<ul>
-    <li>
-        <code>&lt;application&gt;</code>: to contain the
-        <code>&lt;uses-library&gt;</code> element.
-    </li>
-    <li>
-        <code>&lt;uses-library android:name=&quot;android.test.runner&quot;</code>:
-        specifies this testing application uses the <code>android.test.runner</code> library.
-    </li>
-    <li>
-        <code>&lt;instrumentation&gt;</code>: contains attributes that control Android
-        instrumentation. The attributes are:
-        <ul>
-            <li>
-                <code>android:name=&quot;android.test.InstrumentationTestRunner&quot;</code>:
-                {@link android.test.InstrumentationTestRunner} runs test cases. It extends both
-                JUnit test case runner classes and Android instrumentation classes.
-            </li>
-            <li>
-                <code>android:targetPackage=&quot;com.example.helloandroid&quot;</code>: specifies
-                that the tests in HelloAndroidTest should be run against the application with the
-                <em>Android</em> package name <code>com.example.helloandroid</code>.
-            </li>
-            <li>
-                <code>android:label=&quot;Tests for .HelloAndroid&quot;</code>: specifies a
-                user-readable label for the instrumentation class. By default,
-                the <code>android</code> tool gives it the value &quot;Tests for &quot; plus
-                the name of the main Activity of the application under test.
-            </li>
-        </ul>
-    </li>
-</ul>
-<h3 id="UpdateTestProject">Updating a test project</h3>
-<p>
-    You use the <code>android</code> tool when you need to change the path to the
-    project of the application under test. If you are changing an existing test project created in
-    Eclipse with ADT so that you can also build and run it from the command line, you must use the
-    "create" operation. See the section <a href="#CreateTestProject">Creating a test project</a>.
-</p>
-<p class="note">
-    <strong>Note:</strong> If you change the Android package name of the application under test,
-    you must <em>manually</em> change the value of the <code>&lt;android:targetPackage&gt;</code>
-    attribute within the <code>AndroidManifest.xml</code> file of the test package.
-    Running <code>android update test-project</code> does not do this.
-</p>
-<p>
-  To update a test project with the <code>android</code> tool, enter:
-</p>
-<pre>android update test-project -m &lt;main_path&gt; -p &lt;test_path&gt;</pre>
-
-<table>
-    <tr>
-        <th>Flag</th>
-        <th>Value</th>
-        <th>Description</th>
-    </tr>
-    <tr>
-        <td><code>-m, --main</code></td>
-        <td>The path to the project of the application under test, relative to the test project</td>
-        <td>
-            For example, if the application under test is in <code>source/HelloAndroid</code>, and
-            the test project is in <code>source/HelloAndroidTest</code>, then the value for
-            <code>--main</code> is <code>../HelloAndroid</code>.
-        </td>
-    </tr>
-    <tr>
-        <td><code>-p, --path</code></td>
-        <td>The of the test project.</td>
-        <td>
-            For example, if the test project is in <code>source/HelloAndroidTest</code>, then the
-            value for <code>--path</code> is <code>HelloAndroidTest</code>.
-        </td>
-    </tr>
-</table>
-<p>
-    If the operation is successful, <code>android</code> lists to STDOUT the names of the files
-    and directories it has created.
-</p>
-<h2 id="CreateTestApp">Creating a Test Package</h2>
-<p>
-    Once you have created a test project, you populate it with a test package.
-    The application does not require an {@link android.app.Activity Activity},
-    although you can define one if you wish. Although your test package can
-    combine Activities, Android test class extensions, JUnit extensions, or
-    ordinary classes, you should extend one of the Android test classes or JUnit classes,
-    because these provide the best testing features.
-</p>
-<p>
-    If you run your tests with {@link android.test.InstrumentationTestRunner}
-    (or a related test runner), then it will run all the methods in each class. You can modify
-    this behavior by using the {@link junit.framework.TestSuite TestSuite} class.
+    This document describes how to create and run tests directly from the command line. This
+    document assumes that you already know how to create a Android application in your programming
+    environment.
 </p>
 
-<p>
-    To create a test package, start with one of Android's test classes in the Java package
-    {@link android.test android.test}. These extend the JUnit
-    {@link junit.framework.TestCase TestCase} class. With a few exceptions, the Android test
-    classes also provide instrumentation for testing.
-</p>
-<p>
-    For test classes that extend {@link junit.framework.TestCase TestCase}, you probably want to
-    override the <code>setUp()</code> and <code>tearDown()</code> methods:
-</p>
-<ul>
-    <li>
-        <code>setUp()</code>: This method is invoked before any of the test methods in the class.
-        Use it to set up the environment for the test. You can use <code>setUp()</code>
-        to instantiate a new <code>Intent</code> object with the action <code>ACTION_MAIN</code>.
-        You can then use this intent to start the Activity under test.
-        <p class="note">
-            <strong>Note:</strong> If you override this method, call
-            <code>super.setUp()</code> as the first statement in your code.
-        </p>
-    </li>
-    <li>
-        <code>tearDown()</code>: This method is invoked after all the test methods in the class. Use
-        it to do garbage collection and re-setting before moving on to the next set of tests.
-        <p class="note"><strong>Note:</strong> If you override this method, you must call
-        <code>super.tearDown()</code> as the <em>last</em> statement in your code.</p>
-    </li>
-</ul>
-<p>
-    Another useful convention is to add the method <code>testPreConditions()</code> to your test
-    class. Use this method to test that the application under test is initialized correctly. If this
-    test fails, you know that the initial conditions were in error. When this happens, further
-    test results are suspect, regardless of whether or not the tests succeeded.
-</p>
-<p>
-    To learn more about creating test packages, see the topic <a
-    href="{@docRoot}tools/testing/testing_android.html">Testing Fundamentals</a>,
-    which provides an overview of Android testing. If you prefer to follow a tutorial,
-    try the <a href="{@docRoot}tools/testing/activity_test.html">Activity Testing</a>
-    tutorial, which leads you through the creation of tests for an actual Android application.
-</p>
 <h2 id="RunTestsCommand">Running Tests</h2>
 <p>
-    You run tests from the command line, either with Ant or with an
+    You can run tests from the command-line, either with Gradle or with an
     <a href="{@docRoot}tools/help/adb.html">
     Android Debug Bridge (adb)</a> shell.
 </p>
-<h3 id="RunTestsAnt">Quick build and run with Ant</h3>
+<h3 id="RunTestsGradle">Running unit tests with Gradle</h3>
+
+<p>The <a href="{@docRoot}tools/building/plugin-for-gradle.html">Android Plugin for Gradle</a>
+lets you run unit tests from your Gradle project via the command-line. For more information on
+how to build unit tests for your app, see
+<a href="{@docRoot}training/testing/unit-testing/index.html">Building Effective Unit Tests</a>.</p>
+
+<p>The table below summarizes how to run your unit tests with Gradle:</p>
+<table>
+    <tr>
+        <th>Unit Test Type</th>
+        <th>Command To Run</th>
+        <th>Test Result Location</th>
+    </tr>
+    <tr>
+        <td>Local unit test</td>
+        <td>Call the {@code test} task:
+<pre>
+./gradlew test
+</pre></td>
+        <td>
+HTML test result files:
+{@code &lt;path_to_your_project&gt;/app/build/reports/tests/} directory.
+<p>XML test result files:
+{@code &lt;path_to_your_project&gt;/app/build/test-results/} directory.
+</p></td>
+    </tr>
+    <tr>
+        <td>Instrumented unit test</td>
+        <td>Call the {@code connectedAndroidTest} (or {@code cAT}) task:
+<pre>
+./gradlew cAT
+</pre>
+        </td>
+        <td>
+HTML test result files:
+{@code &lt;path_to_your_project&gt;/app/build/outputs/reports/androidTests/connected/} directory.
+<p>XML test result files:
+{@code &lt;path_to_your_project&gt;/app/build/outputs/androidTest-results/connected/} directory.
+</p></td>
+    </tr>
+</table>
+
+<h3 id="RunTestsDevice">Running tests with ADB</h3>
 <p>
-    You can use Ant to run all the tests in your test project, using the target
-    <code>test</code>, which is created automatically when you create a test project with
-    the <code>android</code> tool.
-</p>
-<p>
-    This target re-builds your main project and test project if necessary, installs the test
-    application to the current AVD or device, and then runs all the test classes in the test
-    application. The results are directed to <code>STDOUT</code>.
-</p>
-<p>
-    You can update an existing test project to use this feature. To do this, use the
-    <code>android</code> tool with the <code>update test-project</code> option. This is described
-    in the section <a href="#UpdateTestProject">Updating a test project</a>.
-</p>
-<h3 id="RunTestsDevice">Running tests on a device or emulator</h3>
-<p>
-    When you run tests from the command line with
+    When you run tests from the command-line with
     <a href="{@docRoot}tools/help/adb.html">
     Android Debug Bridge (adb)</a>, you get more options for choosing the tests
     to run than with any other method. You can select individual test methods, filter tests
     according to their annotation, or specify testing options. Since the test run is controlled
-    entirely from a command line, you can customize your testing with shell scripts in various ways.
+    entirely from a command-line, you can customize your testing with shell scripts in various ways.
 </p>
 <p>
-    To run a test from the command line, you run <code>adb shell</code> to start a command-line
+    To run a test from the command-line, you run <code>adb shell</code> to start a command-line
     shell on your device or emulator, and then in the shell run the <code>am instrument</code>
     command. You control <code>am</code> and your tests with command-line flags.
 </p>
 <p>
     As a shortcut, you can start an <code>adb</code> shell, call <code>am instrument</code>, and
     specify command-line flags all on one input line. The shell opens on the device or emulator,
-    runs your tests, produces output, and then returns to the command line on your computer.
+    runs your tests, produces output, and then returns to the command-line on your computer.
 </p>
 <p>
     To run a test with <code>am instrument</code>:
@@ -343,7 +122,7 @@
         Install your test package and main application Android package files
         (<code>.apk</code> files) to your current Android device or emulator</li>
     <li>
-        At the command line, enter:
+        At the command-line, enter:
 <pre>
 $ adb shell am instrument -w &lt;test_package_name&gt;/&lt;runner_class&gt;
 </pre>
@@ -353,7 +132,9 @@
             runner class you are using. The Android package name is the value of the
             <code>package</code> attribute of the <code>manifest</code> element in the manifest file
             (<code>AndroidManifest.xml</code>) of your test package. The Android test runner
-            class is usually {@link android.test.InstrumentationTestRunner}.
+            class is usually
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a>.
         </p>
         <p>
             Your test results appear in <code>STDOUT</code>.
@@ -371,7 +152,7 @@
     The general syntax of the <code>am instrument</code> command is:
 </p>
 <pre>
-    am instrument [flags] &lt;test_package&gt;/&lt;runner_class&gt;
+am instrument [flags] &lt;test_package&gt;/&lt;runner_class&gt;
 </pre>
 <p>
     The main input parameters to <code>am instrument</code> are described in the following table:
@@ -408,10 +189,13 @@
             The class name of the instrumented test runner you are using.
         </td>
         <td>
-            This is usually {@link android.test.InstrumentationTestRunner}.
+            This is usually
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a>.
         </td>
     </tr>
 </table>
+
 <p>
     The flags for <code>am instrument</code> are described in the following table:
 </p>
@@ -467,12 +251,11 @@
             <code>am instrument</code> tool passes these to the specified instrumentation class
             via its <code>onCreate()</code> method. You can specify multiple occurrences of
             <code>-e &lt;test_options&gt;</code>. The keys and values are described in the
-            section <a href="#AMOptionsSyntax">am instrument options</a>.
-            <p>
-                The only instrumentation class that uses these key-value pairs is
-                {@link android.test.InstrumentationTestRunner} (or a subclass). Using them with
-                any other class has no effect.
-            </p>
+            section <a href="#AMOptionsSyntax">am instrument options</a>. You can only use these
+            key-value pairs with
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a> or with {@link android.test.InstrumentationTestRunner} and its
+subclasses. Using them with any other class has no effect.
         </td>
     </tr>
 </table>
@@ -480,25 +263,24 @@
 <h3 id="AMOptionsSyntax">am instrument options</h3>
 <p>
     The <code>am instrument</code> tool passes testing options to
-    <code>InstrumentationTestRunner</code> or a subclass in the form of key-value pairs,
-    using the <code>-e</code> flag, with this syntax:
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a> or {@link android.test.InstrumentationTestRunner} in the form of
+key-value pairs, using the <code>-e</code> flag, with this syntax:
 </p>
 <pre>
-    -e &lt;key&gt; &lt;value&gt;
+-e &lt;key&gt; &lt;value&gt;
 </pre>
 <p>
     Some keys accept multiple values. You specify multiple values in a comma-separated list.
-    For example, this invocation of <code>InstrumentationTestRunner</code> provides multiple
-    values for the <code>package</code> key:
+    For example, this invocation of
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a> provides multiple values for the <code>package</code> key:
 </p>
 <pre>
 $ adb shell am instrument -w -e package com.android.test.package1,com.android.test.package2 \
-&gt; com.android.test/android.test.InstrumentationTestRunner
+&gt; com.android.test/android.support.test.runner.AndroidJUnitRunner
 </pre>
-<p>
-    The following table describes the key-value pairs and their result. Please review the
-    <strong>Usage Notes</strong> following the table.
-</p>
+<p>The following table lists the key-value pairs you can use with your test runner.</p>
 <table>
     <tr>
         <th>Key</th>
@@ -556,8 +338,8 @@
             [<code>small</code> | <code>medium</code> | <code>large</code>]
         </td>
         <td>
-            Runs a test method annotated by size. The  annotations are <code>@SmallTest</code>,
-            <code>@MediumTest</code>, and <code>@LargeTest</code>.
+            Runs a test method annotated by size. The annotations are <code>&#64;SmallTest</code>,
+            <code>&#64;MediumTest</code>, and <code>&#64;LargeTest</code>.
         </td>
     </tr>
     <tr>
@@ -591,8 +373,9 @@
         <td><code>true</code></td>
         <td>
             Runs an EMMA code coverage analysis and writes the output to
-            <code>/data//coverage.ec</code> on the device. To override the file location, use the
-            <code>coverageFile</code> key that is described in the following entry.
+            <code>/data/&lt;app_package&gt;/coverage.ec</code> on the device. To override the
+            file location, use the <code>coverageFile</code> key that is described in the
+            following entry.
             <p class="note">
                 <strong>Note:</strong> This option requires an EMMA-instrumented build of the test
                 application, which you can generate with the <code>coverage</code> target.
@@ -634,24 +417,16 @@
         The test package has the Android package name <code>com.android.demo.app.tests</code>
     </li>
     <li>
-        There are three test classes:
+        Two instrumented test classes:
         <ul>
-            <li>
-                <code>UnitTests</code>, which contains the methods
-                <code>testPermissions</code> and <code>testSaveState</code>.
-            </li>
-            <li>
-                <code>FunctionTests</code>, which contains the methods
-                <code>testCamera</code>, <code>testXVGA</code>, and <code>testHardKeyboard</code>.
-            </li>
-            <li>
-                <code>IntegrationTests</code>,
-                which contains the method <code>testActivityProvider</code>.
-            </li>
+            <li>{@code Foo1} which contains the test method {@code bar1}, and</li>
+            <li>{@code Foo2} which contains test methods {@code bar2} and {@code bar3}</li>
         </ul>
     </li>
     <li>
-        The test runner is {@link android.test.InstrumentationTestRunner}.
+        The test runner is
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a>.
     </li>
 </ul>
 <h4>Running the entire test package</h4>
@@ -659,7 +434,7 @@
     To run all of the test classes in the test package, enter:
 </p>
 <pre>
-$ adb shell am instrument -w com.android.demo.app.tests/android.test.InstrumentationTestRunner
+$ adb shell am instrument -w com.android.demo.app.tests/android.support.test.runner.AndroidJUnitRunner
 </pre>
 <h4>Running all tests in a test case class</h4>
 <p>
@@ -667,8 +442,8 @@
 </p>
 <pre>
 $ adb shell am instrument -w  \
-&gt; -e class com.android.demo.app.tests.UnitTests \
-&gt; com.android.demo.app.tests/android.test.InstrumentationTestRunner
+&gt; -e class com.android.demo.app.tests.Foo \
+&gt; com.android.demo.app.tests/android.support.test.runner.AndroidJUnitRunner
 </pre>
 <p>
   <code>am instrument</code> gets the value of the <code>-e</code> flag, detects the
@@ -676,15 +451,11 @@
 </p>
 <h4>Selecting a subset of tests</h4>
 <p>
-    To run all of the tests in <code>UnitTests</code>, and the <code>testCamera</code> method in
-    <code>FunctionTests</code>, enter:
+    To run all of the tests in <code>Foo1</code>, and the <code>bar3</code> method in
+    <code>Foo2</code>, enter:
 </p>
 <pre>
 $ adb shell am instrument -w \
-&gt; -e class com.android.demo.app.tests.UnitTests,com.android.demo.app.tests.FunctionTests#testCamera \
-&gt; com.android.demo.app.tests/android.test.InstrumentationTestRunner
+&gt; -e class com.android.demo.app.tests.Foo1,com.android.demo.app.tests.Foo2#bar3 \
+&gt; com.android.demo.app.tests/android.support.test.runner.AndroidJUnitRunner
 </pre>
-<p>
-    You can find more examples of the command in the documentation for
-    {@link android.test.InstrumentationTestRunner}.
-</p>
diff --git a/docs/html/tools/testing/testing_ui.jd b/docs/html/tools/testing/testing_ui.jd
deleted file mode 100644
index 3f4bf7a..0000000
--- a/docs/html/tools/testing/testing_ui.jd
+++ /dev/null
@@ -1,356 +0,0 @@
-page.title=UI Testing
-parent.title=Testing
-parent.link=index.html
-@jd:body
-
-<div id="qv-wrapper">
-  <div id="qv">
-     <h2>In this document</h2>
-  <ol>
-     <li><a href="#overview">Overview</a></li>
-        <ul>
-        <li><a href="#workflow">Workflow</a></li>
-        </ul>
-     <li><a href="#uianalysis">Analyzing Your UI</a></li>
-     <li><a href="#prepare">Preparing to Test</a>
-        <ul>
-        <LI><a href="#loading">Load the App</a></LI>
-        <LI><a href="#identifyUI">Identify UI Components</a></LI>
-        <LI><a href="#accessibility">Ensure Accessibility</a></LI>
-        <LI><a href="#configure">Configure Development Environment</a></LI>
-        </ul>
-     </li>
-     <li><a href="#creating">Creating Tests</a>
-       <ul>
-       <LI><a href="#classes">uiautomator API</a></LI>
-        <li><a href="#sample">Sample Test Case</a>
-       </ul>
-     </li>
-     <li><a href="#builddeploy">Building and Deploying Tests</a></li>
-     <li><a href="#running">Running Tests</a></li>
-     <li><a href="#bestpractices">Best Practices</a></li>
-  </ol>
-     <h2>Key classes</h2>
-    <ol>
-      <li><a href="{@docRoot}tools/help/uiautomator/IAutomationSupport.html">IAutomationSupport</a></li>
-      <li><a href="{@docRoot}tools/help/uiautomator/UiAutomatorTestCase.html">UiAutomatorTestCase</a></li>
-      <li><a href="{@docRoot}tools/help/uiautomator/UiCollection.html">UiCollection</a></li>
-      <li><a href="{@docRoot}tools/help/uiautomator/UiDevice.html">UiDevice</a></li>
-      <li><a href="{@docRoot}tools/help/uiautomator/UiObject.html">UiObject</a></li>
-      <li><a href="{@docRoot}tools/help/uiautomator/UiScrollable.html">UiScrollable</a></li>
-      <li><a href="{@docRoot}tools/help/uiautomator/UiSelector.html">UiSelector</a></li>
-    </ol>
-    <h2>See Also</h2>
-      <ol>
-        <li>
-            <a href="{@docRoot}tools/help/uiautomator/index.html">uiautomator (reference)</a>
-        </li>
-      </ol>
-  </div>
-</div>
-
-<p>
-In addition to unit testing the individual components that make up your Android application (such as activities, services, and content providers), it is also important that you test the behavior of your application’s user interface (UI) when it is running on a device. UI testing ensures that your application returns the correct UI output in response to a sequence of user actions on a device, such as entering keyboard input or pressing toolbars, menus, dialogs, images, and other UI controls.
-</p>
-<p>
-Functional or black-box UI testing does not require testers to know the internal implementation details of the app, only its expected output when a user performs a specific action or enters a specific input. This approach allows for better separation of development and testing roles in your organization.
-</p>
-<p>One common approach to UI testing is to run tests manually and verify that the app is behaving as expected. However, this approach can be time-consuming, tedious, and error-prone. A more efficient and reliable approach is to automate the UI testing with a software testing framework. Automated testing involves creating programs to perform testing tasks (test cases) to cover specific usage scenarios, and then using the testing framework to run the test cases automatically and in a repeatable manner.</p>
-
-<h2 id="overview">Overview</h2>
-<p>The Android SDK provides the following tools to support automated, functional UI testing on your application:
-<ul>
-<LI>{@code uiautomatorviewer} - A GUI tool to scan and analyze the UI components of an Android application.</LI>
-<LI>{@code uiautomator} - A Java library containing APIs to create customized functional UI tests, and an execution engine to automate and run the tests.</LI>
-</ul></p>
-
-<p>To use these tools, you must have the following versions of the Android development tools installed:
-<ul>
-<LI>Android SDK Tools, Revision 21 or higher</LI>
-<LI>Android SDK Platform, API 16 or higher</LI>
-</ul>
-</p>
-
-<h3 id="workflow">Workflow for the the uiautomator testing framework</h3>
-<p>Here's a short overview of the steps required to automate UI testing:
-<ol>
-<LI>Prepare to test by installing the app on a test device, analyzing the app’s UI components, and ensuring that your application is accessible by the test automation framework.</LI>
-<li>Create automated tests to simulate specific user interactions on your application.</li>
-<li>Compile your test cases into a JAR file and install it on your test device along with your app.</li>
-<li>Run the tests and view the test results.</li>
-<li>Correct any bugs or defects discovered in testing.</li>
-</ol>
-</p>
-
-<h2 id="uianalysis">Analyzing Your Application's UI</h2>
-<p>Before you start writing your test cases, it's helpful to familiarize yourself with the UI components (including the views and controls) of the targeted application. You can use the {@code uiautomatorviewer} tool to take a snapshot of the foreground UI screen on any Android device that is connected to your development machine.  The {@code uiautomatorviewer} tool provides a convenient visual interface to inspect the layout hierarchy and view the properties of the individual UI components that are displayed on the test device.  Using this information, you can later create {@code uiautomator} tests with selector objects that target specific UI components to test.</p>
-
-<a href="{@docRoot}images/testing/UIAutomatorViewer.png">
-    <img src="{@docRoot}images/testing/UIAutomatorViewer.png"
-         alt="User interface of uiautomatorviewer tool" height="327px" id="figure1"/>
-</a>
-<p class="img-caption">
-    <strong>Figure 1.</strong> The {@code uiautomatorviewer} showing the captured interface of a test device.
-</p>
-
-<p>To analyze the UI components of the application that you want to test:</p>
-<ol>
-<li>Connect your Android device to your development machine.</li>
-<li>Open a terminal window and navigate to {@code <android-sdk>/tools/}.</li>
-<LI>Run the tool with this command:<pre>$ uiautomatorviewer</pre></LI>
-<li><p>To capture a screen for analysis, click the <strong>Device Screenshot</strong> button in the GUI of the {@code uiautomatorviewer} tool.</p>
-<p class="note"><strong>Note: </strong>If you have more than one device connected, specify the device for screen capture by setting the {@code ANDROID_SERIAL} environment variable:  
-   <ol type="a">
-   <li>Find the serial numbers for your connected devices by running this command:<pre>$ adb devices</pre> </li>
-   <li>Set the {@code ANDROID_SERIAL}  environment variable to select the device to test:
-      <ul>
-      <li>In Windows: <pre>set ANDROID_SERIAL=&lt;device serial number&gt;</pre></li>
-      <li>In UNIX: <pre>export ANDROID_SERIAL=&lt;device serial number&gt;</pre></li>
-      </ul>
-   </li>
-   </ol>
-If you are connected to only a single device, you do not need to set the ANDROID_SERIAL environment variable.</p>
-</li>
-<li>View the UI properties for your application:
-  <ul>
-  <LI>Hover over the snapshot in the left-hand panel to see the UI components identified by the {@code uiautomatorviewer} tool. You can view the component’s properties listed in the lower right-hand panel, and the layout hierarchy in the upper right-hand panel.</LI>
-  <li>Optionally, click on the <strong>Toggle NAF Nodes</strong> button to see UI components that are not accessible to the {@code uiautomator} testing framework. Only limited information may be available for these components.</li>
-  </ul>
-</li>
-</ol>
-
-<h2 id="prepare">Preparing to Test</h2>
-<p>Before using the {@code uiautomator} testing framework, complete these pre-flight tasks:
-</p>
-<h3 id="loading">Load the application to a device</h3>
-<p>If you are reading this document, chances are that the Android application that you want to test has not been published yet. If you have a copy of the APK file, you can install the APK onto a test device by using the {@code adb} tool. To learn how to install an APK file using the {@code adb} tool, see the <a href="{@docRoot}tools/help/adb.html#move">{@code adb}</a> documentation. </p>
-
-<h3 id="identifyUI">Identify the application’s UI components</h3>
-<p>Before writing your {@code uiautomator} tests, first identify the UI components in the application that you want to test. Typically, good candidates for testing are UI components that are visible and that users can interact with. The UI components should also have visible text labels, <a href="{@docRoot}reference/android/view/View.html#attr_android:contentDescription">{@code android:contentDescription}</a> values, or both. 
-
-<p>You can inspect the visible screen objects in an application conveniently by using the {@code uiautomatorviewer} tool. For more information about how to analyze an application screen with this tool, see the section <a href="#uianalaysis">Analyzing Your Application’s UI</a>.  For more information about the common types of UI components provided by Android, see <a href="{@docRoot}guide/topics/ui/index.html">User Interface</a>.</p>
-
-<h3 id="accessibility">Ensure that the application is accessible</h3>
-<p>This step is required because the {@code uiautomator} tool depends on the accessibility features of the Android framework to execute your functional UI tests. You should include these minimum optimizations to support the {@code uiautomator} tool:
-<ul>
-<LI>Use the <a href="{@docRoot}reference/android/view/View.html#attr_android:contentDescription">{@code android:contentDescription}</a> attribute to label the {@link android.widget.ImageButton}, {@link android.widget.ImageView}, {@link android.widget.CheckBox} and other user interface controls.</LI>
-<li>Provide an <a href="{@docRoot}reference/android/widget/TextView.html#attr_android:hint">{@code android:hint}</a>  attribute <em>instead</em> of a content description for {@link android.widget.EditText} fields</li>
-<li>Associate an <a href="{@docRoot}reference/android/widget/TextView.html#attr_android:hint">{@code android:hint}</a> attribute with any graphical icons used by controls that provide feedback to the user (for example, status or state information).</li>
-<li>Make sure that all the user interface elements are accessible with a directional controller, such as a trackball or D-pad.</li>
-<li>Use the {@code uiautomatorviewer} tool to ensure that the UI component is accessible to the testing framework. You can also test the application by turning on accessibility services like TalkBack and Explore by Touch, and try using your application using only directional controls. </li>
-</ul>
-</p>
-
-<p>For more information about implementing and testing accessibility, see <a href="{@docRoot}guide/topics/ui/accessibility/apps.html">Making Applications Accessible</a>.</p>
-
-<p class="note"><strong>Note: </strong>To identify the non-accessible components in the UI, click on the <strong>Toggle NAF Nodes</strong> option in the {@code uiautomatorviewer} tool.</p>
-
-<p>Generally, Android application developers get accessibility support for free, courtesy of the {@link android.view.View} and {@link android.view.ViewGroup} classes. However, some applications use custom view components to provide a richer user experience. Such custom components won't get the accessibility support that is provided by the standard Android UI components. If this applies to your application, ensure that the application developer exposes the custom drawn UI components to Android accessibility services, by implementing the {@link android.view.accessibility.AccessibilityNodeProvider} class. For more information about making custom view components accessible, see <a href="{@docRoot}guide/topics/ui/accessibility/apps.html#custom-views">Making Applications Accessible</a>.</p>
-
-<h3 id="configure">Configure your development environment</h3>
-<p>If you're developing in Eclipse, the Android SDK provides additional tools that help you write test cases using {@code uiautomator} and buiild your JAR file. In order to set up Eclipse to assist you, you need to create a project that includes the {@code uiautomator} client library, along with the Android SDK library. To configure Eclipse:</p>
-<ol>
-<li>Create a new Java project in Eclipse, and give your project a name that is relevant to the tests you’re about to create (for example, "MyAppNameTests"). In the project, you will create the test cases that are specific to the application that you want to test.</li>
-<li>From the <strong>Project Explorer</strong>, right-click on the new project that you created, then select <strong>Properties > Java Build Path</strong>, and do the following:
-  <ol type="a">
-  <LI>Click <strong>Add Library > JUnit</strong> then select <strong>JUnit3</strong> to add JUnit support.</LI>
-  <li>Click <strong>Add External JARs...</strong> and navigate to the SDK directory. Under the platforms directory, select the latest SDK version and add both the {@code uiautomator.jar} and {@code android.jar} files.</li>
-  </ol>
-</li>
-</ol>
-<p>If you did not configure Eclipse as your development environment, make sure that the {@code uiautomator.jar} and {@code android.jar} files from the {@code <android-sdk>/platforms/<sdk>} directory are in your Java class path.</p>
-<p>Once you have completed these prerequisite tasks, you're almost ready to start creating your {@code uiautomator} tests. </li>
-
-<h2 id="creating">Creating uiautomator Tests</h2>
-<p>To build a test that runs in the {@code uiautomator} framework, create a test case that extends the <a href="{@docRoot}tools/help/uiautomator/UiAutomatorTestCase.html">{@code UiAutomatorTestCase}</a> class. In Eclipse, the test case file goes under the {@code src} directory in your project.  Later, you will build the test case as a JAR file, then copy this file to the test device. The test JAR file is not an APK file and resides separately from the application that you want to test on the device.</p>
-
-<p>Because the <a href="{@docRoot}tools/help/uiautomator/UiAutomatorTestCase.html">{@code UiAutomatorTestCase}</a> class extends {@code junit.framework.TestCase}, you can use the JUnit {@code Assert} class to test that UI components in the app return the expected results. To learn more about JUnit, you can read the documentation on the <a href="http://www.junit.org/">junit.org</a> home page.</p>
-
-<p>The first thing your test case should do is access the device that contains the target app. It’s also good practice to start the test from the Home screen of the device. From the Home screen (or some other starting location you’ve chosen in the target app), you can use the classes provided by the {@code uiautomator} API to simulate user actions and to test specific UI components. For an example of how to put together a {@code uiautomator} test case, see the <a href="#sample">sample test case</a>.</p>
-
-<h3 id="classes">uiautomator API</h3>
-<p>The {@code uiautomator} API is bundled in the {@code uiautomator.jar} file under the {@code <android-sdk>/platforms/} directory.  The API includes these key classes that allow you to capture and manipulate UI components on the target app:</p>
-<dl>
-<DT><a href="{@docRoot}tools/help/uiautomator/UiDevice.html">{@code UiDevice}</a></DT>
-<dd><p>Represents the device state.  In your tests, you can call methods on the <a href="{@docRoot}tools/help/uiautomator/UiDevice.html">{@code UiDevice}</a> instance to check for the state of various properties, such as current orientation or display size. Your tests also can use the <a href="{@docRoot}tools/help/uiautomator/UiDevice.html">{@code UiDevice}</a> instance to perform device level actions, such as forcing the device into a specific rotation, pressing the d-pad hardware button, or pressing the Home and Menu buttons.</p>
-<p>To get an instance of <a href="{@docRoot}tools/help/uiautomator/UiDevice.html">{@code UiDevice}</a> and simulate a Home button press:
-<pre>
-getUiDevice().pressHome();
-</pre></p></dd>
-
-<dt><a href="{@docRoot}tools/help/uiautomator/UiSelector.html">{@code UiSelector}</a></dt>
-<dd>Represents a search criteria to query and get a handle on specific elements in the currently displayed UI. 	
-If more than one matching element is found, the first matching element in the layout hierarchy is returned as the target {@code UiObject}.  When constructing a <a href="{@docRoot}tools/help/uiautomator/UiSelector.html">{@code UiSelector}</a>, you can chain together multiple properties to refine your search. If no matching UI element is found, a <a href="{@docRoot}tools/help/uiautomator/UiAutomatorObjectNotFoundException.html">{@code UiAutomatorObjectNotFoundException}</a> is thrown. You can use the <a href="{@docRoot}tools/help/uiautomator/UiSelector.html#childSelector(com.android.uiautomator.core.UiSelector)">{@code childSelector()}</a> method to nest multiple <a href="{@docRoot}tools/help/uiautomator/UiSelector.html">{@code UiSelector}</a> instances. For example, the following code example shows how to specify a search to find the first {@link android.widget.ListView} in the currently displayed UI, then search within that {@link android.widget.ListView} to find a UI element with the text property {@code Apps}.
-<pre>
-UiObject appItem = new UiObject(new UiSelector()
-   .className("android.widget.ListView").instance(1)
-   .childSelector(new UiSelector().text("Apps")));
-</pre>
-</dd>
-
-<dt><a href="{@docRoot}tools/help/uiautomator/UiObject.html">{@code UiObject}</a></dt>
-<dd>Represents a UI element. To create a <a href="{@docRoot}tools/help/uiautomator/UiObject.html">{@code UiObject}</a> instance, use a {@code UiSelector} that describes how to search for, or select, the UI element.
-<p>The following code example shows how to construct <a href="{@docRoot}tools/help/uiautomator/UiObject.html">{@code UiObject}</a> instances that represent a <strong>Cancel</strong> button and a <strong>OK</strong> button in your application.</p>
-<pre>
-UiObject cancelButton = new UiObject(new UiSelector().text("Cancel"));
-UiObject okButton = new UiObject(new UiSelector().text("OK"));
-</pre>
-<p>You can reuse the <a href="{@docRoot}tools/help/uiautomator/UiObject.html">{@code UiObject}</a> instances that you have created in other parts of your app testing, as needed.  Note that the {@code uiautomator} test framework searches the current display for a match every time your test uses a <a href="{@docRoot}tools/help/uiautomator/UiObject.html">{@code UiObject}</a> instance to click on a UI element or query a property.</p>
-<p>In the following code example, the {@code uiautomator} test framework searches for a UI element with the text property {@code OK}. If a match is found and if the element is enabled, the framework simulates a user click action on the element.</p>
-<pre>
-if(okButton.exists() && okButton.isEnabled()) 
-{
-  okButton.click();
-}
-</pre>
-<p>You can also restrict the search to find only elements of a specific class. For example, to find matches of the {@link android.widget.Button} class:</p>
-<pre>
-UiObject cancelButton = new UiObject(new UiSelector().text("Cancel")
-   .className("android.widget.Button"));
-UiObject okButton = new UiObject(new UiSelector().text("OK")
-   .className("android.widget.Button"));
-</pre>
-</dd>
-
-<dt><a href="{@docRoot}tools/help/uiautomator/UiCollection.html">{@code UiCollection}</a></dt>
-<dd>Represents a collection of items, for example songs in a music album or a list of emails in an inbox. Similar to a <a href="{@docRoot}tools/help/uiautomator/UiObject.html">{@code UiObject}</a>, you construct a <a href="{@docRoot}tools/help/uiautomator/UiCollection.html">{@code UiCollection}</a> instance by specifying a <a href="{@docRoot}tools/help/uiautomator/UiSelector.html">{@code UiSelector}</a>. The <a href="{@docRoot}tools/help/uiautomator/UiSelector.html">{@code UiSelector}</a> for a <a href="{@docRoot}tools/help/uiautomator/UiCollection.html">{@code UiCollection}</a> should search for a UI element that is a container or wrapper of other child UI elements (such as  a layout view that contains child UI elements).  For example, the following code snippet  shows how to construct a <a href="{@docRoot}tools/help/uiautomator/UiCollection.html">{@code UiCollection}</a> to represent a video album that is displayed within a {@link android.widget.FrameLayout}:
-<pre>
-UiCollection videos = new UiCollection(new UiSelector()
-   .className("android.widget.FrameLayout"));
-</pre>
-<p>If the videos are listed within a {@link android.widget.LinearLayout} view, and you want to to retrieve the number of videos in this collection:</p>
-<pre>
-int count = videos.getChildCount(new UiSelector()
-   .className("android.widget.LinearLayout"));
-</pre>
-<p>If you want to find a specific video that is labeled with the text element {@code Cute Baby Laughing} from the collection and simulate a user-click on the video:</p>
-<pre>
-UiObject video = videos.getChildByText(new UiSelector()
-   .className("android.widget.LinearLayout"), "Cute Baby Laughing");
-video.click();
-</pre>
-<p>Similarly, you can simulate other user actions on the UI object.  For example, if you want 
-to simulate selecting a checkbox that is associated with the video:</p>
-<pre>
-UiObject checkBox = video.getChild(new UiSelector()
-   .className("android.widget.Checkbox"));
-if(!checkBox.isSelected()) checkbox.click();
-</pre>
-</dd>
-
-<dt><a href="{@docRoot}tools/help/uiautomator/UiScrollable.html">{@code UiScrollable}</a></dt>
-<dd>Represents a scrollable collection of UI elements.  You can use the <a href="{@docRoot}tools/help/uiautomator/UiScrollable.html">{@code UiScrollable}</a> class to simulate vertical or horizontal scrolling across a display. This technique is helpful when a UI element is positioned off-screen and you need to scroll to bring it into view.
-<p>For example, the following code shows how to simulate scrolling down the Settings menu and clicking on an <strong>About tablet</strong> option:</p>
-<pre>
-UiScrollable settingsItem = new UiScrollable(new UiSelector()
-   .className("android.widget.ListView"));
-UiObject about = settingsItem.getChildByText(new UiSelector()
-   .className("android.widget.LinearLayout"), "About  tablet");
-about.click()
-</pre>
-</dd>
-</dl>
-<p>For more information about these APIs, see the <a href="{@docRoot}tools/help/uiautomator/index.html">{@code uiautomator}</a> reference.</p>
-
-<h3 id="sample">A sample uiautomator test case</h3>
-<p>The following code example shows a simple test case which simulates a user bringing up the Settings app in a stock Android device.  The test case mimics all the steps that a user would typically take to perform this task, including opening the Home screen, launching the <strong>All Apps</strong> screen, scrolling to the <strong>Settings</strong> app icon, and clicking on the icon to enter the Settings app.</p>
-<pre>
-package com.uia.example.my;
-
-// Import the uiautomator libraries
-import com.android.uiautomator.core.UiObject;
-import com.android.uiautomator.core.UiObjectNotFoundException;
-import com.android.uiautomator.core.UiScrollable;
-import com.android.uiautomator.core.UiSelector;
-import com.android.uiautomator.testrunner.UiAutomatorTestCase;
-
-public class LaunchSettings extends UiAutomatorTestCase {   
-
-   public void testDemo() throws UiObjectNotFoundException {   
-      
-      // Simulate a short press on the HOME button.
-      getUiDevice().pressHome();
-      
-      // We’re now in the home screen. Next, we want to simulate 
-      // a user bringing up the All Apps screen.
-      // If you use the uiautomatorviewer tool to capture a snapshot 
-      // of the Home screen, notice that the All Apps button’s 
-      // content-description property has the value “Apps”.  We can 
-      // use this property to create a UiSelector to find the button. 
-      UiObject allAppsButton = new UiObject(new UiSelector()
-         .description("Apps"));
-      
-      // Simulate a click to bring up the All Apps screen.
-      allAppsButton.clickAndWaitForNewWindow();
-      
-      // In the All Apps screen, the Settings app is located in 
-      // the Apps tab. To simulate the user bringing up the Apps tab,
-      // we create a UiSelector to find a tab with the text 
-      // label “Apps”.
-      UiObject appsTab = new UiObject(new UiSelector()
-         .text("Apps"));
-      
-      // Simulate a click to enter the Apps tab.
-      appsTab.click();
-
-      // Next, in the apps tabs, we can simulate a user swiping until
-      // they come to the Settings app icon.  Since the container view 
-      // is scrollable, we can use a UiScrollable object.
-      UiScrollable appViews = new UiScrollable(new UiSelector()
-         .scrollable(true));
-      
-      // Set the swiping mode to horizontal (the default is vertical)
-      appViews.setAsHorizontalList();
-      
-      // Create a UiSelector to find the Settings app and simulate      
-      // a user click to launch the app. 
-      UiObject settingsApp = appViews.getChildByText(new UiSelector()
-         .className(android.widget.TextView.class.getName()), 
-         "Settings");
-      settingsApp.clickAndWaitForNewWindow();
-      
-      // Validate that the package name is the expected one
-      UiObject settingsValidation = new UiObject(new UiSelector()
-         .packageName("com.android.settings"));
-      assertTrue("Unable to detect Settings", 
-         settingsValidation.exists());   
-  }   
-}
-</pre>
-
-<h2 id="builddeploy">Building and Deploying Your uiautomator Tests</h2>
-<p>Once you have coded your test, follow these steps to build and deploy your test JAR to your target Android test device:</p>
-<ol>
-<li>Create the required build configuration files to build the output JAR. To generate the build configuration files, open a terminal and run the following command:
-<pre>&lt;android-sdk&gt;/tools/android create uitest-project -n &lt;name&gt; -t 1 -p &lt;path&gt;</pre>
-The {@code <name>} is the name of the project that contains your {@code uiautomator} test source files, and the {@code <path>} is the path to the corresponding project directory.
-</li>
-<LI>From the command line, set the {@code ANDROID_HOME} variable: 
-<ul>
-<li>In Windows: 
-<pre>set ANDROID_HOME=&lt;path_to_your_sdk&gt;</pre>
-</li>
-<li>In UNIX: 
-<pre>export ANDROID_HOME=&lt;path_to_your_sdk&gt;</pre>
-</li>
-</ul>
-</LI>
-<li>Go to the project directory where your {@code build.xml} file is located and build your test JAR. <pre>ant build</pre></li>
-<li>Deploy your generated test JAR file to the test device by using the {@code adb push} command: <pre>adb push &lt;path_to_output_jar&gt; /data/local/tmp/</pre>
-<p>Here’s an example: <pre>adb push ~/dev/workspace/LaunchSettings/bin/LaunchSettings.jar /data/local/tmp/</pre></p>
-</li>
-</ol>
-
-<h2 id="running">Running uiautomator Tests</h2>
-<p>Here’s an example of how to run a test that is implemented in the {@code LaunchSettings.jar} file. The tests are bundled in the {@code com.uia.example.my} package:</p>
-<pre>adb shell uiautomator runtest LaunchSettings.jar -c com.uia.example.my.LaunchSettings</pre>
-<p>To learn more about the syntax, subcommands, and options for {@code uiautomator}, see the <a href="{@docRoot}tools/help/uiautomator/index.html">{@code uiautomator}</a> reference.</p>
-
-
-<h2 id="bestpractices">Best Practices</h2>
-<p>Here are some best practices for functional UI testing with the {@code uiautomator} framework: </p>
-<ul>
-<LI>Ensure that you validate the same UI functions on your application across the various types of devices that your application might run on (for example, devices with different screen densities).</LI>
-<li>You should also test your UI against common scenarios such as in-coming phone calls, network interruptions, and user-initiated switching to other applications on the device.</li>
-</ul>
-
diff --git a/docs/html/tools/testing/what_to_test.jd b/docs/html/tools/testing/what_to_test.jd
deleted file mode 100644
index 77ae211..0000000
--- a/docs/html/tools/testing/what_to_test.jd
+++ /dev/null
@@ -1,86 +0,0 @@
-page.title=What To Test
-parent.title=Testing
-parent.link=index.html
-@jd:body
-<p>
-    As you develop Android applications, knowing what to test is as important as knowing how to
-    test. This document lists some most common Android-related situations that you should consider
-    when you test, even at the unit test level. This is not an exhaustive list, and you consult the
-    documentation for the features that you use for more ideas. The
-    <a href="http://groups.google.com/group/android-developers">android-developers</a> Google Groups
-    site is another resource for information about testing.
-</p>
-<h2 id="Tests">Ideas for Testing</h2>
-<p>
-    The following sections are organized by behaviors or situations that you should test. Each
-    section contains a scenario that further illustrates the situation and the test or tests you
-    should do.
-</p>
-<h4>Change in orientation</h4>
-<p>
-    For devices that support multiple orientations, Android detects a change in orientation when
-    the user turns the device so that the display is "landscape" (long edge is horizontal) instead
-    of "portrait" (long edge is vertical).
-</p>
-<p>
-    When Android detects a change in orientation, its default behavior is to destroy and then
-    re-start the foreground Activity. You should consider testing the following:
-</p>
-<ul>
-    <li>
-        Is the screen re-drawn correctly? Any custom UI code you have should handle changes in the
-        orientation.
-    </li>
-    <li>
-        Does the application maintain its state? The Activity should not lose anything that the
-        user has already entered into the UI. The application should not "forget" its place in the
-        current transaction.
-    </li>
-</ul>
-<h4>Change in configuration</h4>
-<p>
-    A situation that is more general than a change in orientation is a change in the device's
-    configuration, such as a change in the availability of a keyboard or a change in system
-    language.
-</p>
-<p>
-    A change in configuration also triggers the default behavior of destroying and then restarting
-    the foreground Activity. Besides testing that the application maintains the UI and its
-    transaction state, you should also test that the application updates itself to respond
-    correctly to the new configuration.
-</p>
-<h4>Battery life</h4>
-<p>
-    Mobile devices primarily run on battery power. A device has finite "battery budget", and when it
-    is gone, the device is useless until it is recharged. You need to write your application to
-    minimize battery usage, you need to test its battery performance, and you need to test the
-    methods that manage battery usage.
-</p>
-<p>
-    Techniques for minimizing battery usage were presented at the 2010 Google I/O conference in the
-    presentation
-    <a href="http://code.google.com/events/io/2009/sessions/CodingLifeBatteryLife.html">
-    Coding for Life -- Battery Life, That Is</a>. This presentation describes the impact on battery
-    life of various operations, and the ways you can design your application to minimize these
-    impacts. When you code your application to reduce battery usage, you also write the
-    appropriate unit tests.
-</p>
-<h4>Dependence on external resources</h4>
-<p>
-    If your application depends on network access, SMS, Bluetooth, or GPS, then you should
-    test what happens when the resource or resources are not available.
-</p>
-<p>
-    For example, if your application uses the network,it can notify the user if access is
-    unavailable, or disable network-related features, or do both. For GPS, it can switch to
-    IP-based location awareness. It can also wait for WiFi access before doing large data transfers,
-    since WiFi transfers maximize battery usage compared to transfers over 3G or EDGE.
-</p>
-<p>
-    You can use the emulator to test network access and bandwidth. To learn more, please see
-    <a href="{@docRoot}tools/help/emulator.html#netspeed">Network Speed Emulation</a>.
-    To test GPS, you can use the emulator console and {@link android.location.LocationManager}. To
-    learn more about the emulator console, please see
-    <a href="{@docRoot}tools/help/emulator.html#console">
-    Using the Emulator Console</a>.
-</p>
diff --git a/docs/html/tools/tools_toc.cs b/docs/html/tools/tools_toc.cs
index 72f9f21..3ce0d11 100644
--- a/docs/html/tools/tools_toc.cs
+++ b/docs/html/tools/tools_toc.cs
@@ -5,32 +5,11 @@
 ?>sdk/index.html"><span class="en">Download</span></a></div>
     <ul>
       <li><a href="<?cs var:toroot ?>sdk/installing/index.html">
-          <span class="en">Installing the SDK</span></a></li>
-
-      <li><a href="<?cs var:toroot ?>sdk/installing/adding-packages.html">
-          <span class="en">Adding SDK Packages</span></a></li>
+          <span class="en">Install Android Studio</span></a></li>
     </ul>
   </li>
 
 
-<!-- Android Studio menu-->
-
- <li class="nav-section">
-    <div class="nav-section-header">
-      <a href="<?cs var:toroot?>tools/studio/index.html">Android Studio</a>
-    </div>
-    <ul>
-      <li><a href="<?cs var:toroot ?>tools/studio/studio-config.html">
-          Configuration</a></li>
-      <li><a href="<?cs var:toroot ?>tools/studio/studio-features.html">
-          Features</a></li>
-      <li><a href="<?cs var:toroot ?>sdk/installing/studio-tips.html">
-          Tips and Tricks</a></li>
-    </ul>
-
- </li><!-- End of Android Studio menu -->
-
-
 <!-- Workflow menu-->
 
   <li class="nav-section">
@@ -38,117 +17,157 @@
         <a href="<?cs var:toroot ?>tools/workflow/index.html"><span class="en">Workflow</span></a>
     </div>
     <ul>
-      <li class="nav-section">
-        <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/devices/index.html"><span class="en">Setting Up Virtual Devices</span></a></div>
-        <ul>
-          <li><a href="<?cs var:toroot ?>tools/devices/managing-avds.html"><span class="en">With AVD Manager</span></a></li>
-          <li><a href="<?cs var:toroot ?>tools/devices/managing-avds-cmdline.html"><span class="en">From the Command Line</span></a></li>
-          <li><a href="<?cs var:toroot ?>tools/devices/emulator.html"><span class="en">Using the Emulator</span></a></li>
-        </ul>
+      <li><a href="<?cs var:toroot ?>tools/projects/index.html">
+          <span class="en">Projects</span></a>
       </li>
-      <li class="nav-section">
-        <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/device.html"><span class="en">Using Hardware Devices</span></a></div>
-        <ul>
-          <li><a href="<?cs var:toroot ?>tools/extras/oem-usb.html"><span
-            class="en">USB Drivers</span></a></li>
-        </ul>
+      <li><a href="<?cs var:toroot ?>tools/building/index.html">
+          <span class="en">Build and Run</span></a>
       </li>
+      <li><a href="<?cs var:toroot ?>tools/devices/index.html">
+        <span class="en">Virtual Devices</span></a></li>
+
       <li class="nav-section">
-        <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/projects/index.html"><span class="en">Managing Projects</span></a></div>
+        <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/device.html">
+          <span class="en">Hardware Devices</span></a></div>
         <ul>
-          <li><a href="<?cs var:toroot ?>sdk/installing/create-project.html"><span class="en">From Android Studio</span></a></li>
-          <li><a href="<?cs var:toroot ?>tools/projects/projects-cmdline.html"><span class="en">From the Command Line</span></a></li>
-          <li><a href="<?cs var:toroot ?>tools/projects/templates.html"><span class="en">Using Code Templates</span></a></li>
+          <li><a href="<?cs var:toroot ?>tools/extras/oem-usb.html">
+            <span class="en">USB Drivers</span></a></li>
         </ul>
       </li>
 
-
-      <li class="nav-section">
-        <div class="nav-section-header">
-          <a href="<?cs var:toroot ?>tools/building/index.html">
-          <span class="en">Building and Running</span></a>
-        </div>
-        <ul>
-          <li><a href="<?cs var:toroot ?>tools/building/building-studio.html">
-            <span class="en">From Android Studio</span></a></li>
-          <li><a href="<?cs var:toroot ?>tools/building/building-cmdline.html">
-            <span class="en">From the Command Line</span></a></li>
-        </ul>
+      <li><a href="<?cs var:toroot?>tools/testing/index.html">
+        <span class="en">Testing</span></a>
       </li>
 
+      <li><a href="<?cs var:toroot ?>tools/debugging/index.html">
+          <span class="en">Debugging</span></a></li>
 
-  <li class="nav-section">
-        <div class="nav-section-header"><a href="<?cs var:toroot?>tools/testing/index.html">
-            <span class="en">Testing</span>
-          </a></div>
-        <ul>
-          <li>
-            <a href="<?cs var:toroot?>tools/testing/testing_android.html">
-            <span class="en">Fundamentals</span></a>
-          </li>
-          <li><a href="<?cs var:toroot ?>tools/testing/testing_eclipse.html">
-            <span class="en">From Eclipse</span></a>
-          </li>
-          <li><a href="<?cs var:toroot ?>tools/testing/testing_otheride.html">
-            <span class="en">From Other IDEs</span></a>
-          </li>
-          <li>
-            <a href="<?cs var:toroot?>tools/testing/activity_testing.html">
-            <span class="en">Activity Testing</span></a>
-          </li>
-          <li>
-            <a href="<?cs var:toroot?>tools/testing/service_testing.html">
-            <span class="en">Service Testing</span></a>
-          </li>
-          <li>
-            <a href="<?cs var:toroot?>tools/testing/contentprovider_testing.html">
-            <span class="en">Content Provider Testing</span></a>
-          </li>
-          <li>
-            <a href="<?cs var:toroot?>tools/testing/testing_accessibility.html">
-            <span class="en">Accessibility Testing</span></a>
-          </li>
-           <li>
-            <a href="<?cs var:toroot?>tools/testing/testing_ui.html">
-            <span class="en">UI Testing</span></a>
-          </li>
-          <li>
-            <a href="<?cs var:toroot ?>tools/testing/what_to_test.html">
-            <span class="en">What To Test</span></a>
-          </li>
-          <li>
-            <a href="<?cs var:toroot ?>tools/testing/activity_test.html">
-            <span class="en">Activity Testing Tutorial</span></a>
-          </li>
-        </ul>
-  </li><!-- end of testing -->
-
-  <li class="nav-section">
-    <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/debugging/index.html"><span class="en">Debugging</span></a></div>
-    <ul>
-      <li><a href="<?cs var:toroot ?>tools/debugging/debugging-studio.html"><span class="en">From Android Studio</span></a></li>
-      <li><a href="<?cs var:toroot ?>tools/debugging/debugging-projects-cmdline.html"><span class="en">From Other IDEs</span></a></li>
-      <li><a href="<?cs var:toroot ?>tools/debugging/ddms.html"><span class="en">Using DDMS</span></a></li>
-      <li><a href="<?cs var:toroot ?>tools/debugging/debugging-log.html"><span class="en">Reading and Writing Logs</span></a></li>
-      <li><a href="<?cs var:toroot ?>tools/debugging/improving-w-lint.html"><span class="en">Improving Your Code with lint</span></a></li>
-      <li><a href="<?cs var:toroot ?>tools/debugging/debugging-ui.html"><span class="en">Optimizing your UI</span></a></li>
-      <li><a href="<?cs var:toroot ?>tools/debugging/debugging-tracing.html"><span class="en">Profiling with Traceview and dmtracedump</span></a></li>
-      <li><a href="<?cs var:toroot ?>tools/debugging/annotations.html"><span class="en">Improving Code Inspection with Annotations</span></a></li>
-      <li><a href="<?cs var:toroot ?>tools/debugging/systrace.html"><span class="en">Analyzing UI Performance</span></a></li>
-      <li><a href="<?cs var:toroot ?>tools/debugging/debugging-memory.html">Investigating Your RAM Usage</a></li>
-      <li><a href="<?cs var:toroot ?>tools/debugging/debugging-devtools.html"><span class="en">Using the Dev Tools App</span></a></li>
-    </ul>
-  </li>
       <li class="nav-section">
-        <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/publishing/publishing_overview.html" zh-cn-lang="发布概述"><span class="en">Publishing</span></a></div>
+        <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/publishing/publishing_overview.html"
+          zh-cn-lang="发布概述"><span class="en">Publishing</span></a></div>
         <ul>
           <li><a href="<?cs var:toroot ?>tools/publishing/preparing.html" zh-cn-lang="准备发布"><span class="en">Preparing for Release</span></a></li>
           <li><a href="<?cs var:toroot ?>tools/publishing/versioning.html"><span class="en">Versioning Your Apps</span></a></li>
           <li><a href="<?cs var:toroot ?>tools/publishing/app-signing.html"><span class="en">Signing Your Apps</span></a></li>
         </ul>
       </li>
+
     </ul>
-  </li>
+  </li> <!-- end of Workflow -->
+
+
+<!-- Android Studio menu-->
+
+ <li class="nav-section">
+    <div class="nav-section-header">
+      <a href="<?cs var:toroot?>tools/studio/index.html"><span class="en">Android Studio</span></a>
+    </div>
+    <ul>
+      <li><a href="<?cs var:toroot ?>tools/studio/studio-features.html">
+          Features</a></li>
+
+      <li class="nav-section">
+        <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/studio/studio-config.html">
+          Configuration</a></div>
+          <ul>
+            <li><a href="<?cs var:toroot ?>tools/help/sdk-manager.html">SDK Manager</a></li>
+          </ul>
+      </li>
+
+      <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>sdk/installing/create-project.html">
+          Project Tools</a></div>
+          <ul>
+            <li><a href="<?cs var:toroot ?>tools/help/project-mgmt.html">
+              <span class="en">Project Structure Management</span></a></li>
+            <li><a href="<?cs var:toroot ?>tools/projects/templates.html">
+              <span class="en">Using Code Templates</span></a></li>
+            <li><a href="<?cs var:toroot ?>tools/building/building-studio.html">
+              <span class="en">Building and Running</span></a></li>
+          </ul>
+      </li>
+
+      <li class="nav-section">
+        <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/studio/code-tools.html">
+          Code Tools</a></div>
+          <ul>
+            <li><a href="<?cs var:toroot ?>tools/debugging/improving-w-lint.html">
+              <span class="en">Improving Your Code with lint</span></a></li>
+            <li><a href="<?cs var:toroot ?>tools/debugging/annotations.html">
+              <span class="en">Improving Code Inspection with Annotations</span></a></li>
+            <li><a href="<?cs var:toroot ?>tools/help/app-link-indexing.html">
+              <span class="en">Deep Link and App Indexing API Support</span></a></li>
+          </ul>
+      </li>
+
+      <li class="nav-section">
+        <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/studio/ui-tools.html">
+          UI Tools</a></div>
+          <ul>
+            <li><a href="<?cs var:toroot ?>sdk/installing/studio-layout.html">
+              <span class="en">Layout Editor</span></a></li>
+            <li><a href="<?cs var:toroot ?>tools/help/theme-editor.html">
+              <span class="en">Theme Editor</span></a></li>
+            <li><a href="<?cs var:toroot ?>tools/help/translations-editor.html">
+              <span class="en">Translations Editor</span></a>
+            <li><a href="<?cs var:toroot ?>tools/help/vector-asset-studio.html">
+              <span class="en">Vector Asset Studio</span></a></li>
+            <li><a href="<?cs var:toroot ?>tools/help/image-asset-studio.html">
+              <span class="en">Image Asset Studio</span></a></li>
+          </ul>
+      </li>
+
+      <li><a href="<?cs var:toroot ?>tools/devices/managing-avds.html">
+        <span class="en">AVD Manager</span></a></li>
+
+      <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>tools/debugging/debugging-studio.html">
+            <span class="en">Debugging Tools</span></a></div>
+          <ul>
+            <li><a href="<?cs var:toroot ?>tools/debugging/ddms.html">
+              <span class="en">DDMS</span></a></li>
+          </ul>
+      </li>
+
+      <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>tools/help/android-monitor.html">Android Monitor</a></div>
+        <ul>
+          <li><a href="<?cs var:toroot ?>tools/help/am-logcat.html"><span
+            class="en">logcat Monitor</span></a>
+          </li>
+          <li><a href="<?cs var:toroot ?>tools/help/am-memory.html"><span
+            class="en">Memory Monitor</span></a>
+          </li>
+          <li><a href="<?cs var:toroot ?>tools/help/am-cpu.html"><span
+            class="en">CPU Monitor</span></a>
+          </li>
+          <li><a href="<?cs var:toroot ?>tools/help/am-gpu.html"><span
+            class="en">GPU Monitor</span></a>
+          </li>
+          <li><a href="<?cs var:toroot ?>tools/help/am-network.html"><span
+            class="en">Network Monitor</span></a>
+          </li>
+        </ul>
+      </li>
+
+      <li><a href="<?cs var:toroot ?>sdk/installing/studio-tips.html">
+          Tips and Tricks</a></li>
+
+      <li class="nav-section">
+        <div class="nav-section-header"><a href="<?cs var:toroot ?>sdk/installing/migrate.html">
+        <span class="en">
+          Migrating from Eclipse ADT</span></a></div>
+          <ul>
+            <li><a href="<?cs var:toroot ?>tools/studio/eclipse-transition-guide.html">
+            <span class="en">Transition Guide</span></a></li>
+          </ul>
+      </li>
+    </ul>
+
+ </li><!-- End of Android Studio menu -->
 
 
   <li class="nav-section">
@@ -156,27 +175,60 @@
 class="en">Tools Help</span></a></div>
     <ul>
       <li><a href="<?cs var:toroot ?>tools/help/adb.html">adb</a></li>
-      <li><a href="<?cs var:toroot ?>tools/help/android.html">android</a></li>
+      <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>tools/help/android.html">android</a></div>
+          <ul>
+            <li><a href="<?cs var:toroot ?>tools/devices/managing-avds-cmdline.html"><span class="en">
+              Managing AVDs</span></a></li>
+            <li><a href="<?cs var:toroot ?>tools/projects/projects-cmdline.html"><span class="en">
+              Managing Projects</span></a></li>
+          </ul>
+      </li>
       <li><a href="<?cs var:toroot ?>tools/help/avd-manager.html">AVD Manager</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/bmgr.html">bmgr</a>
-      <li><a href="<?cs var:toroot ?>tools/help/monitor.html">Device Monitor</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/desktop-head-unit.html">Desktop Head Unit</a></li>
+      <li><a href="<?cs var:toroot ?>tools/help/monitor.html">Device Monitor</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/dmtracedump.html">dmtracedump</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/draw9patch.html">Draw 9-Patch</a></li>
-      <li><a href="<?cs var:toroot ?>tools/help/emulator.html">Emulator</a></li>
+
       <li><a href="<?cs var:toroot ?>tools/help/etc1tool.html">etc1tool</a></li>
-      <li><a href="<?cs var:toroot ?>tools/help/hierarchy-viewer.html">Hierarchy Viewer</a></li>
+
+      <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>tools/help/hierarchy-viewer.html">
+            <span class="en">Hierarchy Viewer</span></a></div>
+          <ul>
+            <li><a href="<?cs var:toroot ?>tools/debugging/debugging-ui.html">
+              <span class="en">Optimizing your UI</span></a></li>
+          </ul>
+      </li>
+
       <li><a href="<?cs var:toroot ?>tools/help/hprof-conv.html">hprof-conv</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/jobb.html">jobb</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/lint.html">lint</span></a></li>
-      <li><a href="<?cs var:toroot ?>tools/help/logcat.html">logcat</a></li>
+      <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>tools/help/logcat.html">logcat</a></div>
+          <ul>
+            <li><a href="<?cs var:toroot ?>tools/debugging/debugging-log.html">
+              <span class="en">Reading and Writing Logs</span></a></li>
+          </ul>
+      </li>
       <li><a href="<?cs var:toroot ?>tools/help/mksdcard.html">mksdcard</a></li>
        <li><a href="<?cs var:toroot ?>tools/help/proguard.html" zh-cn-lang="ProGuard">ProGuard</a></li>
-       <li><a href="<?cs var:toroot ?>tools/help/sdk-manager.html">SDK Manager</a></li>
-       <li><a href="<?cs var:toroot ?>tools/help/systrace.html">Systrace</a></li>
        <li><a href="<?cs var:toroot ?>tools/help/gltracer.html">Tracer for OpenGL ES</a></li>
-       <li><a href="<?cs var:toroot ?>tools/help/traceview.html">Traceview</a></li>
+
+       <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>tools/devices/emulator.html">
+            <span class="en">Virtual Device Emulator</span></a></div>
+         <ul>
+           <li><a href="<?cs var:toroot ?>tools/help/emulator.html">Command Reference</a></li>
+         </ul>
+       </li>
        <li><a href="<?cs var:toroot ?>tools/help/zipalign.html">zipalign</a></li>
+
     </ul>
   </li>
 
@@ -190,6 +242,8 @@
       <a href="<?cs var:toroot ?>sdk/installing/studio-build.html">Build System</a>
     </div>
     <ul>
+      <li><a href="<?cs var:toroot ?>tools/building/building-cmdline.html">
+        <span class="en">Running Gradle Builds</span></a></li>
       <li><a href="<?cs var:toroot ?>tools/building/configuring-gradle.html">
         <span class="en">Configuring Gradle Builds</span></a></li>
       <li><a href="<?cs var:toroot ?>tools/building/plugin-for-gradle.html">
@@ -205,7 +259,7 @@
 <!-- Performance Tools menu-->
   <li class="nav-section">
     <div class="nav-section-header">
-      <a href="<?cs var:toroot ?>tools/performance/index.html">Peformance Tools</a>
+      <a href="<?cs var:toroot ?>tools/performance/index.html">Performance Tools</a>
     </div>
     <ul>
       <li><a href="<?cs var:toroot ?>tools/performance/debug-gpu-overdraw/index.html">
@@ -241,14 +295,38 @@
           <li><a href="<?cs var:toroot ?>tools/performance/allocation-tracker/index.html"><span
             class="en">Allocation Tracker</span></a>
           </li>
+          <li><a href="<?cs var:toroot ?>tools/debugging/debugging-memory.html">
+            <span class="en">Investigating Your RAM Usage</span></a></li>
         </ul>
       </li>
-      <li><a href="<?cs var:toroot ?>tools/performance/traceview/index.html">
-        Traceview</a>
+
+      <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>tools/debugging/debugging-tracing.html">
+            <span class="en">Traceview</span></a>
+        </div>
+        <ul>
+          <li><a href="<?cs var:toroot ?>tools/performance/traceview/index.html">
+            Walkthrough</a>
+          </li>
+          <li><a href="<?cs var:toroot ?>tools/help/traceview.html">
+            Command Reference</a></li>
+        </ul>
       </li>
-      <li><a href="<?cs var:toroot ?>tools/performance/systrace/index.html">
-        Systrace</a>
+
+      <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>tools/debugging/systrace.html">
+          <span class="en">Systrace</span></a>
+        </div>
+        <ul>
+          <li><a href="<?cs var:toroot ?>tools/performance/systrace/index.html">
+            Walkthrough</a></li>
+           <li><a href="<?cs var:toroot ?>tools/help/systrace.html">
+            Command Reference</a></li>
+        </ul>
       </li>
+
       <li class="nav-section">
         <div class="nav-section-header">
           <a href="<?cs var:toroot ?>tools/performance/batterystats-battery-historian/index.html">
@@ -266,15 +344,24 @@
   <!-- Testing Tools menu-->
 
   <li class="nav-section">
-    <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/testing/testing-tools.html"><span class="en">Testing Tools</span></a></div>
+    <div class="nav-section-header">
+      <a href="<?cs var:toroot ?>tools/testing/testing-tools.html">
+      <span class="en">Testing Tools</span></a></div>
     <ul>
+      <li><a href="<?cs var:toroot ?>tools/testing/testing_android.html">Testing Concepts</a></li>
       <li class="nav-section">
-         <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/testing-support-library/index.html"><span
+         <div class="nav-section-header">
+         <a href="<?cs var:toroot ?>tools/testing-support-library/index.html"><span
 class="en">Testing Support Library</span></a></div>
          <ul>
-            <li><a href="<?cs var:toroot ?>reference/android/support/test/package-summary.html">API Reference</a></li>
+            <li><a href="<?cs var:toroot ?>reference/android/support/test/package-summary.html">
+            API Reference</a></li>
          </ul>
       </li>
+      <li><a href="<?cs var:toroot ?>training/testing/start/index.html">
+      Testing with Android Studio</a></li>
+      <li><a href="<?cs var:toroot ?>tools/testing/testing_otheride.html">
+      Testing from the Command-Line</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/monkey.html">monkey</a></li>
       <li class="nav-section">
         <div class="nav-section-header"><a href="<?cs var:toroot
@@ -351,38 +438,6 @@
     </ul>
   </li> -->
 
-
-<!-- Eclipse ADT menu-->
-
-  <li class="nav-section">
-    <div class="nav-section-header">
-    <a href="<?cs var:toroot ?>tools/help/adt.html">
-      <span class="en">Eclipse with ADT</span></a>
-    </div>
-    <ul>
-        <li class="nav-section">
-        <div class="nav-section-header"><a href="<?cs var:toroot ?>sdk/installing/migrate.html">
-          <span class="en">Migrating to Android Studio</span></a></div>
-         <ul>
-            <li><a href="<?cs var:toroot ?>tools/studio/eclipse-transition-guide.html">
-            Transition Guide</span></a> </li>
-         </ul>
-        </li>
-
-    <li><a href="<?cs var:toroot ?>sdk/installing/installing-adt.html">
-        <span class="en">Installing the Eclipse Plugin</span></a></li>
-    <li><a href="<?cs var:toroot ?>tools/projects/projects-eclipse.html">Managing Projects</a></li>
-    <li><a href="<?cs var:toroot ?>tools/building/building-eclipse.html">Building and Running</a></li>
-    <li><a href="<?cs var:toroot ?>tools/building/building-cmdline-ant.html">Building with Ant</a></li>
-    <li><a href="<?cs var:toroot ?>tools/testing/testing_eclipse.html">Testing</a></li>
-    <li><a href="<?cs var:toroot ?>tools/debugging/debugging-projects.html">Debugging</a></li>
-    <li><a href="<?cs var:toroot ?>tools/publishing/app-signing-eclipse.html">Signing Your Apps</a></li>
-    </ul>
-  </li><!-- end of Eclipse  -->
-
-
-</ul><!-- nav -->
-
 <script type="text/javascript">
 <!--
     buildToggleLists();
diff --git a/docs/html/tools/workflow.jd b/docs/html/tools/workflow.jd
old mode 100644
new mode 100755
index 4eb5ada..edf7400
--- a/docs/html/tools/workflow.jd
+++ b/docs/html/tools/workflow.jd
@@ -2,14 +2,13 @@
 @jd:body
 
 <p>Developing applications for Android devices is facilitated by a group of tools that are
-  provided with the SDK. You can access these tools through an Eclipse plugin called ADT (Android
-  Development Tools) or from the command line. Developing with Eclipse is the preferred method because
+  provided with the SDK. You can access these tools through Android Studio or from the command line. Developing with Android Studio is the preferred method because
   it can directly invoke the tools that you need while developing applications.</p>
 
   <p>However, you may choose to develop with another IDE or a simple text editor and invoke the
   tools on the command line or with scripts. This is a less streamlined way to develop because you
   will sometimes have to call command line tools manually, but you will have access to the same
-  number of features that you would have in Eclipse.</p>
+  number of features that you would have in Android Studio.</p>
 
 <div class="figure" style="width:461px">
   <img src="{@docRoot}images/developing/developing_overview.png"
@@ -20,7 +19,7 @@
   </p>
 </div>
 
-<p>The basic steps for developing applications (with or without Eclipse) are shown in figure 1. The
+<p>The basic steps for developing applications (with or without Android Studio) are shown in figure 1. The
 development steps encompass four development phases, which include:</p>
 
 <ul>
@@ -39,13 +38,14 @@
   </li>
   <li><strong>Debugging and Testing</strong>
     <p>During this phase you build your project into a debuggable <code>.apk</code> package that you
-    can install and run on the emulator or an Android-powered device. If you are using Eclipse,
-    builds are generated each time you project is saved. If you're using another IDE,
-    you can build your project using Ant and install it on a device using
-    <a href="{@docRoot}tools/help/adb.html">adb</a>. For more information, see
+    can install and run on the emulator or an Android-powered device. Android Studio uses
+    a build system based on <a href="http://www.gradle.org/" target="_android">Gradle</a>
+    that provides flexibility, customized build variants, dependency resolution, and much more.
+    If you're using another IDE, you can build your project using Gradle and install it on a device
+    using <a href="{@docRoot}tools/help/adb.html">adb</a>. For more information, see
     <a href="{@docRoot}tools/building/index.html">Build and run your application</a>.</p>
     <p>Next, you debug your application using a JDWP-compliant debugger along with the debugging
-    and logging tools that are provided with the Android SDK. Eclipse already comes packaged with
+    and logging tools that are provided with the Android SDK. Android Studio already comes packaged with
     a compatible debugger. For more information see,
     <a href="{@docRoot}tools/debugging/index.html">Debug your application with the
       SDK debugging and logging tools</a>.</p>
@@ -62,7 +62,7 @@
 
 <h2 id="EssentialTools">Essential command line tools</h2>
 
-  <p>When developing in IDEs or editors other than Eclipse, be familiar with
+  <p>When developing in IDEs or editors other than Android Studio, be familiar with
   all of the tools below, because you will have to run them from the command line.</p>
 
   <dl>
@@ -84,7 +84,7 @@
   source and third-party tools:</p>
 
   <dl>
-    <dt>Ant</dt>
+    <a href="http://www.gradle.org/">Gradle</a> 
 
     <dd>To compile and build your Android project into an installable .apk file.</dd>
 
@@ -99,13 +99,13 @@
     JDK.</dd>
   </dl>
 
-  <p>If you are using Eclipse and ADT, tools such as <code>adb</code> and <code>android</code>
-  are automatically called by Eclipse and ADT so you don't have to manually invoke these tools.
+  <p>If you are using Android Studio, tools such as <code>adb</code> and <code>android</code>
+  are automatically called by Android Studio, so you don't have to manually invoke these tools.
   You need to be familiar with <code>adb</code>, however, because certain functions are not
 accessible from
-  Eclipse, such as the <code>adb</code> shell commands. You might also need to call Keytool and
+  Android Studio, such as the <code>adb</code> shell commands. You might also need to call Keytool and
 Jarsigner to
-  sign your applications, but you can set up Eclipse to do this automatically as well.</p>
+  sign your applications, but you can set up Android Studio to do this automatically as well.</p>
 
 <p>For more information on the tools provided with the Android SDK, see the
   <a href="{@docRoot}tools/index.html">Tools</a> section of the documentation.</p>
@@ -147,4 +147,3 @@
     	<a href="http://wiki.jetbrains.net/intellij/Android">IntelliJ IDEA Android Tutorials</a>
 	</li>
 </ul>
-
diff --git a/docs/html/training/_book.yaml b/docs/html/training/_book.yaml
new file mode 100644
index 0000000..cd4df43
--- /dev/null
+++ b/docs/html/training/_book.yaml
@@ -0,0 +1,1210 @@
+toc:
+- title: Getting Started
+  path: /training/index.html
+  section:
+  - title: Building Your First App
+    path: /training/basics/firstapp/index.html
+    custom_link_attributes:
+    - description="After you've installed the Android SDK, start with this class to learn the basics about Android app development."
+    section:
+    - title: Creating an Android Project
+      path: /training/basics/firstapp/creating-project.html
+    - title: Running Your Application
+      path: /training/basics/firstapp/running-app.html
+    - title: Building a Simple User Interface
+      path: /training/basics/firstapp/building-ui.html
+    - title: Starting Another Activity
+      path: /training/basics/firstapp/starting-activity.html
+  - title: Supporting Different Devices
+    path: /training/basics/supporting-devices/index.html
+    custom_link_attributes:
+    - description="How to build your app with alternative resources that provide an optimized user experience on multiple device form factors using a single APK."
+    section:
+    - title: Supporting Different Languages
+      path: /training/basics/supporting-devices/languages.html
+    - title: Supporting Different Screens
+      path: /training/basics/supporting-devices/screens.html
+    - title: Supporting Different Platform Versions
+      path: /training/basics/supporting-devices/platforms.html
+  - title: Managing the Activity Lifecycle
+    path: /training/basics/activity-lifecycle/index.html
+    custom_link_attributes:
+    - ja-lang="アクティビティのライフサイクル 管理"
+    - ko-lang="액티비티 수명 주기 관리하기"
+    - pt-br-lang="Como gerenciar o ciclo de vida da atividade"
+    - ru-lang="Управление жизненным циклом операций"
+    - zh-cn-lang="管理活动生命周期"
+    - zh-tw-lang="管理應用行為顯示生命週期"
+    - description="How Android activities live and die and how to create a seamless user experience by implementing lifecycle callback methods."
+    section:
+    - title: Starting an Activity
+      path: /training/basics/activity-lifecycle/starting.html
+      custom_link_attributes:
+      - ja-lang="アクティビティを開始する"
+      - ko-lang="액티비티 시작하기"
+      - pt-br-lang="Iniciando uma atividade"
+      - ru-lang="Запуск операции"
+      - zh-cn-lang="开始活动"
+      - zh-tw-lang="啟動應用行為顯示"
+    - title: Pausing and Resuming an Activity
+      path: /training/basics/activity-lifecycle/pausing.html
+    - title: Stopping and Restarting an Activity
+      path: /training/basics/activity-lifecycle/stopping.html
+      custom_link_attributes:
+      - ja-lang="アクティビティの一時停止と再開"
+      - ko-lang="액티비티 일시정지 및 재개하기"
+      - pt-br-lang="Pausando e reiniciando uma atividade"
+      - ru-lang="Приостановка и возобновление операции"
+      - zh-cn-lang="暂停和继续活动"
+      - zh-tw-lang="暫停並繼續應用行為顯示"
+    - title: Recreating an Activity
+      path: /training/basics/activity-lifecycle/recreating.html
+      custom_link_attributes:
+      - ja-lang="アクティビティを再作成する"
+      - ko-lang="액티비티 재생성하기"
+      - pt-br-lang="Recriando uma atividade"
+      - ru-lang="Воссоздание операции"
+      - zh-cn-lang="重新创建活动"
+      - zh-tw-lang="重新建立應用行為顯示"
+  - title: Building a Dynamic UI with Fragments
+    path: /training/basics/fragments/index.html
+    custom_link_attributes:
+    - description="How to build a user interface for your app that is flexible enough to present multiple UI components on large screens and a more constrained set of UI components on smaller screens—essential for building a single APK for both phones and tablets."
+    section:
+    - title: Creating a Fragment
+      path: /training/basics/fragments/creating.html
+    - title: Building a Flexible UI
+      path: /training/basics/fragments/fragment-ui.html
+      custom_link_attributes:
+      - zh-cn-lang="构建灵活的界面"
+    - title: Communicating with Other Fragments
+      path: /training/basics/fragments/communicating.html
+  - title: Saving Data
+    path: /training/basics/data-storage/index.html
+    custom_link_attributes:
+    - ja-lang="データの保存"
+    - ko-lang="데이터 저장하기"
+    - pt-br-lang="Salvando dados"
+    - ru-lang="Сохранение данных"
+    - zh-cn-lang="保存数据"
+    - zh-tw-lang="儲存資料"
+    - description="How to save data on the device, whether it's temporary files, downloaded app assets, user media, structured data, or something else."
+    section:
+    - title: Saving Key-Value Sets
+      path: /training/basics/data-storage/shared-preferences.html
+      custom_link_attributes:
+      - ja-lang="キー値セットを保存する"
+      - ko-lang="키-값 세트 저장하기"
+      - pt-br-lang="Salvando conjuntos de valor-chave"
+      - ru-lang="Сохранение наборов \"ключ-значение\""
+      - zh-cn-lang="保存键值集"
+      - zh-tw-lang="儲存索引鍵值組"
+    - title: Saving Files
+      path: /training/basics/data-storage/files.html
+      custom_link_attributes:
+      - ja-lang="ファイルを保存する"
+      - ko-lang="파일 저장하기"
+      - pt-br-lang="Salvando arquivos"
+      - ru-lang="Сохранение файлов"
+      - zh-cn-lang="保存文件"
+      - zh-tw-lang="儲存檔案"
+    - title: Saving Data in SQL Databases
+      path: /training/basics/data-storage/databases.html
+      custom_link_attributes:
+      - ja-lang="SQL データベースにデータを保存する"
+      - ko-lang="SQL 데이터베이스에 데이터 저장하기"
+      - pt-br-lang="Salvando dados em bancos de dados do SQL"
+      - ru-lang="Сохранение данных в базах данных SQL"
+      - zh-cn-lang="在 SQL 数据库中保存数据"
+      - zh-tw-lang="在 SQL 資料庫中儲存資料"
+  - title: Interacting with Other Apps
+    path: /training/basics/intents/index.html
+    custom_link_attributes:
+    - ja-lang="他のアプリとの相互操作"
+    - ko-lang="액티비티 수명 주기 관리하기"
+    - pt-br-lang="Interagindo com outros aplicativos"
+    - ru-lang="Взаимодействие с другими приложениями"
+    - zh-cn-lang="与其他应用交互"
+    - zh-tw-lang="與其他應用程式互動"
+    - description="How to build a user experience that leverages other apps available on the device to perform advanced user tasks, such as capture a photo or view an address on a map."
+    section:
+    - title: Sending the User to Another App
+      path: /training/basics/intents/sending.html
+      custom_link_attributes:
+      - ja-lang="別のアプリにユーザーを送る"
+      - ko-lang="다른 앱으로 사용자 보내기"
+      - pt-br-lang="Enviando o usuário para outro aplicativo"
+      - ru-lang="Направление пользователя в другое приложение"
+      - zh-cn-lang="向另一个应用发送用户"
+      - zh-tw-lang="將使用者傳送至其他應用程式"
+    - title: Getting a Result from the Activity
+      path: /training/basics/intents/result.html
+      custom_link_attributes:
+      - ja-lang="アクティビティから結果を取得する"
+      - ko-lang="액티비티로부터 결과 가져오기"
+      - pt-br-lang="Obtendo resultados de uma atividade"
+      - ru-lang="Получение результата операции"
+      - zh-cn-lang="获取活动的结果"
+      - zh-tw-lang="從應用行為顯示取得結果"
+    - title: Allowing Other Apps to Start Your Activity
+      path: /training/basics/intents/filters.html
+      custom_link_attributes:
+      - ja-lang="他のアプリからのアクティビティの開始を許可する"
+      - ko-lang="다른 앱이 자신의 액티비티를 시작하도록 허용하기"
+      - pt-br-lang="Permitindo que outros aplicativos iniciem sua atividade"
+      - ru-lang="Разрешение другим приложениям на запуск вашей операции"
+      - zh-cn-lang="允许其他应用开始您的活动"
+      - zh-tw-lang="允許其他應用程式啟動您的應用行為顯示"
+  - title: Working with System Permissions
+    path: /training/permissions/index.html
+    custom_link_attributes:
+    - description="How to declare that your app needs access to features and resources outside of its 'sandbox', and how to request those privileges at runtime."
+    section:
+    - title: Declaring Permissions
+      path: /training/permissions/declaring.html
+    - title: Requesting Permissions at Run Time
+      path: /training/permissions/requesting.html
+    - title: Best Practices for Runtime Permissions
+      path: /training/permissions/best-practices.html
+
+- title: Building Apps with Content Sharing
+  path: /training/building-content-sharing.html
+  section:
+  - title: Sharing Simple Data
+    path: /training/sharing/index.html
+    custom_link_attributes:
+    - description="How to take your app interaction to the next level by sharing information with other apps, receive information back, and provide a simple and scalable way to perform Share actions with user content."
+    section:
+    - title: Sending Simple Data to Other Apps
+      path: /training/sharing/send.html
+    - title: Receiving Simple Data from Other Apps
+      path: /training/sharing/receive.html
+    - title: Adding an Easy Share Action
+      path: /training/sharing/shareaction.html
+  - title: Sharing Files
+    path: /training/secure-file-sharing/index.html
+    custom_link_attributes:
+    - description="How to provide secure access to a file associated with your app using a content URI and temporary access permissions."
+    section:
+    - title: Setting Up File Sharing
+      path: /training/secure-file-sharing/setup-sharing.html
+    - title: Sharing a File
+      path: /training/secure-file-sharing/share-file.html
+    - title: Requesting a Shared File
+      path: /training/secure-file-sharing/request-file.html
+    - title: Retrieving File Information
+      path: /training/secure-file-sharing/retrieve-info.html
+  - title: Sharing Files with NFC
+    path: /training/beam-files/index.html
+    custom_link_attributes:
+    - description="How to transfer files between devices using the NFC Android Beam feature."
+    section:
+    - title: Sending Files to Another Device
+      path: /training/beam-files/send-files.html
+    - title: Receiving Files from Another Device
+      path: /training/beam-files/receive-files.html
+
+- title: Building Apps with Multimedia
+  path: /training/building-multimedia.html
+  section:
+  - title: Managing Audio Playback
+    path: /training/managing-audio/index.html
+    custom_link_attributes:
+    - description="How to respond to hardware audio key presses, request audio focus when playing audio, and respond appropriately to changes in audio focus."
+    section:
+    - title: Controlling Your App's Volume and Playback
+      path: /training/managing-audio/volume-playback.html
+    - title: Managing Audio Focus
+      path: /training/managing-audio/audio-focus.html
+    - title: Dealing with Audio Output Hardware
+      path: /training/managing-audio/audio-output.html
+  - title: Capturing Photos
+    path: /training/camera/index.html
+    custom_link_attributes:
+    - description="How to leverage existing camera apps on the user's device to capture photos or control the camera hardware directly and build your own camera app."
+    section:
+    - title: Taking Photos Simply
+      path: /training/camera/photobasics.html
+    - title: Recording Videos Simply
+      path: /training/camera/videobasics.html
+    - title: Controlling the Camera
+      path: /training/camera/cameradirect.html
+  - title: Printing Content
+    path: /training/printing/index.html
+    custom_link_attributes:
+    - description="How to print photos, HTML documents, and custom documents from your app."
+    section:
+    - title: Photos
+      path: /training/printing/photos.html
+    - title: HTML Documents
+      path: /training/printing/html-docs.html
+    - title: Custom Documents
+      path: /training/printing/custom-docs.html
+
+- title: Building Apps with Graphics & Animation
+  path: /training/building-graphics.html
+  section:
+  - title: Displaying Bitmaps Efficiently
+    path: /training/displaying-bitmaps/index.html
+    custom_link_attributes:
+    - description="How to load and process bitmaps while keeping your user interface responsive and avoid exceeding memory limits."
+    section:
+    - title: Loading Large Bitmaps Efficiently
+      path: /training/displaying-bitmaps/load-bitmap.html
+    - title: Processing Bitmaps Off the UI Thread
+      path: /training/displaying-bitmaps/process-bitmap.html
+    - title: Caching Bitmaps
+      path: /training/displaying-bitmaps/cache-bitmap.html
+    - title: Managing Bitmap Memory
+      path: /training/displaying-bitmaps/manage-memory.html
+    - title: Displaying Bitmaps in Your UI
+      path: /training/displaying-bitmaps/display-bitmap.html
+  - title: Displaying Graphics with OpenGL ES
+    path: /training/graphics/opengl/index.html
+    custom_link_attributes:
+    - description="How to create OpenGL graphics within the Android app framework and respond to touch input."
+    section:
+    - title: Building an OpenGL ES Environment
+      path: /training/graphics/opengl/environment.html
+    - title: Defining Shapes
+      path: /training/graphics/opengl/shapes.html
+    - title: Drawing Shapes
+      path: /training/graphics/opengl/draw.html
+    - title: Applying Projection and Camera Views
+      path: /training/graphics/opengl/projection.html
+    - title: Adding Motion
+      path: /training/graphics/opengl/motion.html
+    - title: Responding to Touch Events
+      path: /training/graphics/opengl/touch.html
+  - title: Animating Views Using Scenes and Transitions
+    path: /training/transitions/index.html
+    custom_link_attributes:
+    - description="How to animate state changes in a view hierarchy using transitions."
+    section:
+    - title: The Transitions Framework
+      path: /training/transitions/overview.html
+    - title: Creating a Scene
+      path: /training/transitions/scenes.html
+    - title: Applying a Transition
+      path: /training/transitions/transitions.html
+    - title: Creating Custom Transitions
+      path: /training/transitions/custom-transitions.html
+  - title: Adding Animations
+    path: /training/animation/index.html
+    custom_link_attributes:
+    - description="How to add transitional animations to your user interface."
+    section:
+    - title: Crossfading Two Views
+      path: /training/animation/crossfade.html
+    - title: Using ViewPager for Screen Slide
+      path: /training/animation/screen-slide.html
+    - title: Displaying Card Flip Animations
+      path: /training/animation/cardflip.html
+    - title: Zooming a View
+      path: /training/animation/zoom.html
+    - title: Animating Layout Changes
+      path: /training/animation/layout.html
+
+- title: Building Apps with Connectivity & the Cloud
+  path: /training/building-connectivity.html
+  section:
+  - title: Connecting Devices Wirelessly
+    path: /training/connect-devices-wirelessly/index.html
+    custom_link_attributes:
+    - description="How to find and connect to local devices using Network Service Discovery and how to create peer-to-peer connections with Wi-Fi."
+    section:
+    - title: Using Network Service Discovery
+      path: /training/connect-devices-wirelessly/nsd.html
+    - title: Creating P2P Connections with Wi-Fi
+      path: /training/connect-devices-wirelessly/wifi-direct.html
+    - title: Using Wi-Fi P2P for Service Discovery
+      path: /training/connect-devices-wirelessly/nsd-wifi-direct.html
+  - title: Performing Network Operations
+    path: /training/basics/network-ops/index.html
+    custom_link_attributes:
+    - description="How to create a network connection, monitor the connection for changes in connectivity, and perform transactions with XML data."
+    section:
+    - title: Connecting to the Network
+      path: /training/basics/network-ops/connecting.html
+    - title: Managing Network Usage
+      path: /training/basics/network-ops/managing.html
+    - title: Parsing XML Data
+      path: /training/basics/network-ops/xml.html
+  - title: Transferring Data Without Draining the Battery
+    path: /training/efficient-downloads/index.html
+    custom_link_attributes:
+    - description="How to minimize your app's impact on the battery when performing downloads and other network transactions."
+    section:
+    - title: Optimizing Downloads for Efficient Network Access
+      path: /training/efficient-downloads/efficient-network-access.html
+    - title: Minimizing the Effect of Regular Updates
+      path: /training/efficient-downloads/regular_updates.html
+    - title: Redundant Downloads are Redundant
+      path: /training/efficient-downloads/redundant_redundant.html
+    - title: Modifying Patterns Based on the Connectivity Type
+      path: /training/efficient-downloads/connectivity_patterns.html
+  - title: Syncing to the Cloud
+    path: /training/backup/index.html
+    custom_link_attributes:
+    - description="How to sync and back up app and user data to remote web services in the cloud and how to restore the data back to multiple devices."
+    section:
+    - title: Configuring Auto Backup
+      path: /training/backup/autosyncapi.html
+    - title: Using the Backup API
+      path: /training/backup/backupapi.html
+  - title: Resolving Cloud Save Conflicts
+    path: /training/cloudsave/conflict-res.html
+    custom_link_attributes:
+    - description="How to design a robust conflict resolution strategy for apps that save data to the cloud."
+  - title: Transferring Data Using Sync Adapters
+    path: /training/sync-adapters/index.html
+    custom_link_attributes:
+    - description="How to transfer data between the cloud and the device using the Android sync adapter framework"
+    section:
+    - title: Creating a Stub Authenticator
+      path: /training/sync-adapters/creating-authenticator.html
+    - title: Creating a Stub Content Provider
+      path: /training/sync-adapters/creating-stub-provider.html
+    - title: Creating a Sync Adapter
+      path: /training/sync-adapters/creating-sync-adapter.html
+    - title: Running a Sync Adapter
+      path: /training/sync-adapters/running-sync-adapter.html
+  - title: Transmitting Network Data Using Volley
+    path: /training/volley/index.html
+    custom_link_attributes:
+    - description="How to perform fast, scalable UI operations over the network using Volley"
+    section:
+    - title: Sending a Simple Request
+      path: /training/volley/simple.html
+    - title: Setting Up a RequestQueue
+      path: /training/volley/requestqueue.html
+    - title: Making a Standard Request
+      path: /training/volley/request.html
+    - title: Implementing a Custom Request
+      path: /training/volley/request-custom.html
+
+- title: Building Apps with Location & Maps
+  path: /training/building-location.html
+  section:
+  - title: Making Your App Location-Aware
+    path: /training/location/index.html
+    custom_link_attributes:
+    - description="How to add location-aware features to your app by getting the user's current location."
+    section:
+    - title: Getting the Last Known Location
+      path: /training/location/retrieve-current.html
+    - title: Changing Location Settings
+      path: /training/location/change-location-settings.html
+    - title: Receiving Location Updates
+      path: /training/location/receive-location-updates.html
+    - title: Displaying a Location Address
+      path: /training/location/display-address.html
+    - title: Creating and Monitoring Geofences
+      path: /training/location/geofencing.html
+  - title: Adding Maps
+    path: /training/maps/index.html
+    custom_link_attributes:
+    - description="How to add maps and mapping information to your app."
+
+- title: Building Apps with User Info & Sign-In
+  path: /training/building-userinfo.html
+  section:
+  - title: Accessing Contacts Data
+    path: /training/contacts-provider/index.html
+    custom_link_attributes:
+    - description="How to use Android's central address book, the Contacts Provider, to display contacts and their details and modify contact information."
+    section:
+    - title: Retrieving a List of Contacts
+      path: /training/contacts-provider/retrieve-names.html
+    - title: Retrieving Details for a Contact
+      path: /training/contacts-provider/retrieve-details.html
+    - title: Modifying Contacts Using Intents
+      path: /training/contacts-provider/modify-data.html
+    - title: Displaying the Quick Contact Badge
+      path: /training/contacts-provider/display-contact-badge.html
+  - title: Adding Sign-In
+    path: /training/sign-in/index.html
+    custom_link_attributes:
+    - description="How to add user sign-in functionality to your app."
+
+- title: Building Apps for Wearables
+  path: /training/building-wearables.html
+  section:
+  - title: Adding Wearable Features to Notifications
+    path: /training/wearables/notifications/index.html
+    custom_link_attributes:
+    - description="How to build handheld notifications that are synced to and look great on wearables."
+    section:
+    - title: Creating a Notification
+      path: /training/wearables/notifications/creating.html
+    - title: Receiving Voice Input in a Notification
+      path: /training/wearables/notifications/voice-input.html
+    - title: Adding Pages to a Notification
+      path: /training/wearables/notifications/pages.html
+    - title: Stacking Notifications
+      path: /training/wearables/notifications/stacks.html
+  - title: Creating Wearable Apps
+    path: /training/wearables/apps/index.html
+    custom_link_attributes:
+    - description="How to build apps that run directly on wearables."
+    section:
+    - title: Creating and Running a Wearable App
+      path: /training/wearables/apps/creating.html
+    - title: Creating Custom Layouts
+      path: /training/wearables/apps/layouts.html
+    - title: Keeping Your App Visible
+      path: /training/wearables/apps/always-on.html
+    - title: Adding Voice Capabilities
+      path: /training/wearables/apps/voice.html
+    - title: Packaging Wearable Apps
+      path: /training/wearables/apps/packaging.html
+    - title: Debugging over Bluetooth
+      path: /training/wearables/apps/bt-debugging.html
+  - title: Creating Custom UIs
+    path: /training/wearables/ui/index.html
+    custom_link_attributes:
+    - description="How to create custom user interfaces for wearable apps."
+    section:
+    - title: Defining Layouts
+      path: /training/wearables/ui/layouts.html
+    - title: Creating Cards
+      path: /training/wearables/ui/cards.html
+    - title: Creating Lists
+      path: /training/wearables/ui/lists.html
+    - title: Creating a 2D Picker
+      path: /training/wearables/ui/2d-picker.html
+    - title: Showing Confirmations
+      path: /training/wearables/ui/confirm.html
+    - title: Exiting Full-Screen Activities
+      path: /training/wearables/ui/exit.html
+  - title: Sending and Syncing Data
+    path: /training/wearables/data-layer/index.html
+    custom_link_attributes:
+    - description="How to sync data between handhelds and wearables."
+    section:
+    - title: Accessing the Wearable Data Layer
+      path: /training/wearables/data-layer/accessing.html
+    - title: Syncing Data Items
+      path: /training/wearables/data-layer/data-items.html
+    - title: Transferring Assets
+      path: /training/wearables/data-layer/assets.html
+    - title: Sending and Receiving Messages
+      path: /training/wearables/data-layer/messages.html
+    - title: Handling Data Layer Events
+      path: /training/wearables/data-layer/events.html
+  - title: Creating Watch Faces
+    path: /training/wearables/watch-faces/index.html
+    custom_link_attributes:
+    - description="How to create watch faces for wearables."
+    section:
+    - title: Designing Watch Faces
+      path: /training/wearables/watch-faces/designing.html
+    - title: Building a Watch Face Service
+      path: /training/wearables/watch-faces/service.html
+    - title: Drawing Watch Faces
+      path: /training/wearables/watch-faces/drawing.html
+    - title: Showing Information in Watch Faces
+      path: /training/wearables/watch-faces/information.html
+    - title: Creating Interactive Watch Faces
+      path: /training/wearables/watch-faces/interacting.html
+    - title: Providing Configuration Activities
+      path: /training/wearables/watch-faces/configuration.html
+    - title: Addressing Common Issues
+      path: /training/wearables/watch-faces/issues.html
+    - title: Optimizing Performance and Battery Life
+      path: /training/wearables/watch-faces/performance.html
+  - title: Detecting Location
+    path: /training/articles/wear-location-detection.html
+    custom_link_attributes:
+    - description="How to detect location data on Android Wear devices."
+  - title: Requesting Permissions
+    path: /training/articles/wear-permissions.html
+    custom_link_attributes:
+    - description="How to request permissions on Android Wear devices."
+  - title: Using the Speaker
+    path: /training/wearables/wearable-sounds.html
+    custom_link_attributes:
+    - description="How to use the speaker on Android Wear devices."
+
+- title: Building Apps for TV
+  path: /training/tv/index.html
+  section:
+  - title: Building TV Apps
+    path: /training/tv/start/index.html
+    custom_link_attributes:
+    - ja-lang="TV アプリのビルド"
+    - description="How to start building TV apps or extend your existing app to run on TV devices."
+    section:
+    - title: Getting Started with TV Apps
+      path: /training/tv/start/start.html
+      custom_link_attributes:
+      - ja-lang="TV アプリのビルドを開始する"
+    - title: Handling TV Hardware
+      path: /training/tv/start/hardware.html
+      custom_link_attributes:
+      - ja-lang="TV ハードウェアを処理する"
+    - title: Building TV Layouts
+      path: /training/tv/start/layouts.html
+      custom_link_attributes:
+      - ja-lang="TV 向けレイアウトをビルドする"
+    - title: Creating TV Navigation
+      path: /training/tv/start/navigation.html
+      custom_link_attributes:
+      - ja-lang="TV 用のナビゲーションを作成する"
+  - title: Building TV Playback Apps
+    path: /training/tv/playback/index.html
+    custom_link_attributes:
+    - ja-lang="TV 再生アプリのビルド"
+    - description="How to build apps that provide media catalogs and play content."
+    section:
+    - title: Creating a Catalog Browser
+      path: /training/tv/playback/browse.html
+      custom_link_attributes:
+      - ja-lang="カタログ ブラウザを作成する"
+    - title: Providing a Card View
+      path: /training/tv/playback/card.html
+    - title: Building a Details View
+      path: /training/tv/playback/details.html
+      custom_link_attributes:
+      - ja-lang="詳細ビューをビルドする"
+    - title: Displaying a Now Playing Card
+      path: /training/tv/playback/now-playing.html
+      custom_link_attributes:
+      - ja-lang="再生中カードを表示する"
+    - title: Adding a Guided Step
+      path: /training/tv/playback/guided-step.html
+    - title: Enabling Background Playback
+      path: /training/tv/playback/options.html
+  - title: Helping Users Find Content on TV
+    path: /training/tv/discovery/index.html
+    custom_link_attributes:
+    - description="How to help users discover content from your app."
+    section:
+    - title: Recommending TV Content
+      path: /training/tv/discovery/recommendations.html
+    - title: Making TV Apps Searchable
+      path: /training/tv/discovery/searchable.html
+    - title: Searching within TV Apps
+      path: /training/tv/discovery/in-app-search.html
+  - title: Building TV Games
+    path: /training/tv/games/index.html
+    custom_link_attributes:
+    - description="How to build games for TV."
+  - title: Building TV Channels
+    path: /training/tv/tif/index.html
+    custom_link_attributes:
+    - description="How to build channels for TV."
+    section:
+    - title: Developing a TV Input Service
+      path: /training/tv/tif/tvinput.html
+    - title: Working with Channel Data
+      path: /training/tv/tif/channel.html
+    - title: Managing User Interaction
+      path: /training/tv/tif/ui.html
+  - title: TV Apps Checklist
+    path: /training/tv/publishing/checklist.html
+    custom_link_attributes:
+    - description="An itemized list of requirements for TV apps."
+
+- title: Building Apps for Auto
+  path: /training/auto/index.html
+  section:
+  - title: Getting Started with Auto
+    path: /training/auto/start/index.html
+    custom_link_attributes:
+    - description="How to start building or extending apps that work with Auto devices."
+  - title: Playing Audio for Auto
+    path: /training/auto/audio/index.html
+    custom_link_attributes:
+    - description="How to extend audio apps to play content on Auto devices."
+  - title: Messaging for Auto
+    path: /training/auto/messaging/index.html
+    custom_link_attributes:
+    - description="How to extend text messaging apps to work with Auto devices."
+
+- title: Building Apps for Work
+  path: /training/enterprise/index.html
+  section:
+  - title: Ensuring Compatibility with Managed Profiles
+    path: /training/enterprise/app-compatibility.html
+  - title: Implementing App Restrictions
+    path: /training/enterprise/app-restrictions.html
+  - title: Building a Device Policy Controller
+    path: /training/enterprise/work-policy-ctrl.html
+  - title: Configuring Corporate-Owned, Single-Use Devices
+    path: /training/enterprise/cosu.html
+
+- title: Best Practices for Interaction & Engagement
+  path: /training/best-ux.html
+  section:
+  - title: Designing Effective Navigation
+    path: /training/design-navigation/index.html
+    custom_link_attributes:
+    - description="How to plan your app's screen hierarchy and forms of navigation so users can effectively and intuitively traverse your app content using various navigation patterns."
+    section:
+    - title: Planning Screens and Their Relationships
+      path: /training/design-navigation/screen-planning.html
+    - title: Planning for Multiple Touchscreen Sizes
+      path: /training/design-navigation/multiple-sizes.html
+    - title: Providing Descendant and Lateral Navigation
+      path: /training/design-navigation/descendant-lateral.html
+    - title: Providing Ancestral and Temporal Navigation
+      path: /training/design-navigation/ancestral-temporal.html
+    - title: "Putting it All Together: Wireframing the Example App"
+      path: /training/design-navigation/wireframing.html
+  - title: Implementing Effective Navigation
+    path: /training/implementing-navigation/index.html
+    custom_link_attributes:
+    - description="How to implement various navigation patterns such as swipe views, a navigation drawer, and up navigation."
+    section:
+    - title: Creating Swipe Views with Tabs
+      path: /training/implementing-navigation/lateral.html
+    - title: Creating a Navigation Drawer
+      path: /training/implementing-navigation/nav-drawer.html
+    - title: Providing Up Navigation
+      path: /training/implementing-navigation/ancestral.html
+    - title: Providing Proper Back Navigation
+      path: /training/implementing-navigation/temporal.html
+    - title: Implementing Descendant Navigation
+      path: /training/implementing-navigation/descendant.html
+  - title: Notifying the User
+    path: /training/notify-user/index.html
+    custom_link_attributes:
+    - description="How to display messages called notifications outside of your application's UI."
+    section:
+    - title: Building a Notification
+      path: /training/notify-user/build-notification.html
+    - title: Preserving Navigation when Starting an Activity
+      path: /training/notify-user/navigation.html
+    - title: Updating Notifications
+      path: /training/notify-user/managing.html
+    - title: Using Big View Styles
+      path: /training/notify-user/expanded.html
+    - title: Displaying Progress in a Notification
+      path: /training/notify-user/display-progress.html
+  - title: Supporting Swipe-to-Refresh
+    path: /training/swipe/index.html
+    custom_link_attributes:
+    - description="How to modify your app's layout to support manual content updates triggered by the swipe-to-refresh gesture."
+    section:
+    - title: Adding Swipe-to-Refresh To Your App
+      path: /training/swipe/add-swipe-interface.html
+    - title: Responding to a Refresh Gesture
+      path: /training/swipe/respond-refresh-request.html
+  - title: Adding Search Functionality
+    path: /training/search/index.html
+    custom_link_attributes:
+    - description="How to properly add a search interface to your app and create a searchable database."
+    section:
+    - title: Setting up the Search Interface
+      path: /training/search/setup.html
+    - title: Storing and Searching for Data
+      path: /training/search/search.html
+    - title: Remaining Backward Compatible
+      path: /training/search/backward-compat.html
+  - title: Making Your App Content Searchable by Google
+    path: /training/app-indexing/index.html
+    custom_link_attributes:
+    - description="How to enable deep linking and indexing of your application content so that users can open this content directly from their mobile search results."
+    section:
+    - title: Enabling Deep Links for App Content
+      path: /training/app-indexing/deep-linking.html
+    - title: Specifying App Content for Indexing
+      path: /training/app-indexing/enabling-app-indexing.html
+  - title: Optimizing Content for the Assistant
+    path: /training/articles/assistant.html
+    custom_link_attributes:
+    - description="Support contextually relevant actions through the Assist API."
+  - title: Handling App Links
+    path: /training/app-links/index.html
+    custom_link_attributes:
+    - description="How to enable the system to handle web requests by taking the user directly to your app instead of your website."
+
+- title: Best Practices for User Interface
+  path: /training/best-ui.html
+  section:
+  - title: Designing for Multiple Screens
+    path: /training/multiscreen/index.html
+    custom_link_attributes:
+    - es-lang="Cómo diseñar aplicaciones para varias pantallas"
+    - ja-lang="複数画面のデザイン"
+    - zh-cn-lang="针对多种屏幕进行设计"
+    - description="How to build a user interface that's flexible enough to fit perfectly on any screen and how to create different interaction patterns that are optimized for different screen sizes."
+    section:
+    - title: Supporting Different Screen Sizes
+      path: /training/multiscreen/screensizes.html
+      custom_link_attributes:
+      - es-lang="Cómo admitir varios tamaños de pantalla"
+      - ja-lang="さまざまな画面サイズのサポート"
+      - ko-lang="다양한 화면 크기 지원"
+      - zh-cn-lang="支持各种屏幕尺寸"
+    - title: Supporting Different Screen Densities
+      path: /training/multiscreen/screendensities.html
+      custom_link_attributes:
+      - es-lang="Cómo admitir varias densidades de pantalla"
+      - ja-lang="さまざまな画面密度のサポート"
+      - zh-cn-lang="支持各种屏幕密度"
+    - title: Implementing Adaptive UI Flows
+      path: /training/multiscreen/adaptui.html
+      custom_link_attributes:
+      - es-lang="Cómo implementar interfaces de usuario adaptables"
+      - ja-lang="順応性のある UI フローの実装"
+      - zh-cn-lang="实施自适应用户界面流程"
+  - title: Adding the App Bar
+    path: /training/appbar/index.html
+    custom_link_attributes:
+    - description="How to use the support library's toolbar widget to implement an app bar that displays properly on a wide range of devices."
+    section:
+    - title: Setting Up the App Bar
+      path: /training/appbar/setting-up.html
+    - title: Adding and Handling Actions
+      path: /training/appbar/actions.html
+    - title: Adding an Up Action
+      path: /training/appbar/up-action.html
+    - title: Action Views and Action Providers
+      path: /training/appbar/action-views.html
+  - title: Showing Pop-Up Messages
+    path: /training/snackbar/index.html
+    custom_link_attributes:
+    - description="How to use the support library's Snackbar widget to display a brief pop-up message."
+    section:
+    - title: Building and Displaying a Pop-Up Message
+      path: /training/snackbar/showing.html
+    - title: Adding an Action to a Message
+      path: /training/snackbar/action.html
+  - title: Creating Custom Views
+    path: /training/custom-views/index.html
+    custom_link_attributes:
+    - description="How to build custom UI widgets that are interactive and smooth."
+    section:
+    - title: Creating a Custom View Class
+      path: /training/custom-views/create-view.html
+    - title: Implementing Custom Drawing
+      path: /training/custom-views/custom-drawing.html
+    - title: Making the View Interactive
+      path: /training/custom-views/making-interactive.html
+    - title: Optimizing the View
+      path: /training/custom-views/optimizing-view.html
+  - title: Creating Backward-Compatible UIs
+    path: /training/backward-compatible-ui/index.html
+    custom_link_attributes:
+    - description="How to use UI components and other APIs from the more recent versions of Android while remaining compatible with older versions of the platform."
+    section:
+    - title: Abstracting the New APIs
+      path: /training/backward-compatible-ui/abstracting.html
+    - title: Proxying to the New APIs
+      path: /training/backward-compatible-ui/new-implementation.html
+    - title: Creating an Implementation with Older APIs
+      path: /training/backward-compatible-ui/older-implementation.html
+    - title: Using the Version-Aware Component
+      path: /training/backward-compatible-ui/using-component.html
+  - title: Implementing Accessibility
+    path: /training/accessibility/index.html
+    custom_link_attributes:
+    - description="How to make your app accessible to users with vision impairment or other physical disabilities."
+    section:
+    - title: Developing Accessible Applications
+      path: /training/accessibility/accessible-app.html
+    - title: Developing Accessibility Services
+      path: /training/accessibility/service.html
+    - title: Accessibility Testing Checklist
+      path: /training/accessibility/testing.html
+  - title: Managing the System UI
+    path: /training/system-ui/index.html
+    custom_link_attributes:
+    - description="How to hide and show status and navigation bars across different versions of Android, while managing the display of other screen components."
+    section:
+    - title: Dimming the System Bars
+      path: /training/system-ui/dim.html
+    - title: Hiding the Status Bar
+      path: /training/system-ui/status.html
+    - title: Hiding the Navigation Bar
+      path: /training/system-ui/navigation.html
+    - title: Using Immersive Full-Screen Mode
+      path: /training/system-ui/immersive.html
+    - title: Responding to UI Visibility Changes
+      path: /training/system-ui/visibility.html
+  - title: Creating Apps with Material Design
+    path: /training/material/index.html
+    custom_link_attributes:
+    - es-lang="Crear aplicaciones con Material Design"
+    - in-lang="Desain Bahan untuk Pengembang"
+    - ja-lang="マテリアル デザインでのアプリ作成"
+    - ko-lang="개발자를 위한 머티리얼 디자인"
+    - pt-br-lang="Material Design para desenvolvedores"
+    - ru-lang="Создание приложений с помощью Material Design"
+    - vi-lang="Material Design cho Nhà phát triển"
+    - zh-cn-lang="面向开发者的材料设计"
+    - zh-tw-lang="開發人員材料設計"
+    - description="How to implement material design on Android."
+    section:
+    - title: Getting Started
+      path: /training/material/get-started.html
+      custom_link_attributes:
+      - es-lang="Comencemos"
+      - in-lang="Memulai"
+      - ja-lang="スタート ガイド"
+      - ko-lang="시작하기"
+      - pt-br-lang="Como iniciar"
+      - ru-lang="Начало работы"
+      - vi-lang="Bắt đầu"
+      - zh-cn-lang="入门指南"
+      - zh-tw-lang="開始使用"
+    - title: Using the Material Theme
+      path: /training/material/theme.html
+      custom_link_attributes:
+      - es-lang="Usar el tema Material"
+      - in-lang="Menggunakan Tema Bahan"
+      - ja-lang="マテリアル テーマの使用"
+      - ko-lang="머티어리얼 테마 사용"
+      - pt-br-lang="Como usar o tema do Material"
+      - ru-lang="Использование темы Material Design"
+      - vi-lang="Sử dụng Chủ đề Material"
+      - zh-cn-lang="使用材料主题"
+      - zh-tw-lang="使用材料設計風格"
+    - title: Creating Lists and Cards
+      path: /training/material/lists-cards.html
+      custom_link_attributes:
+      - es-lang="Crear listas y tarjetas"
+      - in-lang="Membuat Daftar dan Kartu"
+      - ja-lang="リストとカードの作成"
+      - ko-lang="목록 및 카드 생성"
+      - pt-br-lang="Como criar listas e cartões"
+      - ru-lang="Создание списков и подсказок"
+      - vi-lang="Tạo Danh sách và Thẻ"
+      - zh-cn-lang="创建列表与卡片"
+      - zh-tw-lang="建立清單和卡片"
+    - title: Defining Shadows and Clipping Views
+      path: /training/material/shadows-clipping.html
+      custom_link_attributes:
+      - es-lang="Definir vistas de recorte y sombras"
+      - in-lang="Mendefinisikan Bayangan dan Memangkas Tampilan"
+      - ja-lang="シャドウとクリッピング ビューの定義"
+      - ko-lang="그림자 정의 및 뷰 클리핑"
+      - pt-br-lang="Como definir sombras e recortar visualizações"
+      - ru-lang="Определение теней и обрезка представлений"
+      - vi-lang="Định nghĩa Đổ bóng và Dạng xem Cắt hình"
+      - zh-cn-lang="定义阴影与裁剪视图"
+      - zh-tw-lang="定義陰影和裁剪檢視"
+    - title: Working with Drawables
+      path: /training/material/drawables.html
+      custom_link_attributes:
+      - es-lang="Trabajar con interfaces dibujables"
+      - in-lang="Bekerja dengan Drawable"
+      - ja-lang="ドローアブルの使用"
+      - ko-lang="Drawable 사용"
+      - pt-br-lang="Como trabalhar com desenháveis"
+      - ru-lang="Работа с элементами дизайна"
+      - vi-lang="Làm việc với Nội dung vẽ được"
+      - zh-cn-lang="使用 Drawables"
+      - zh-tw-lang="使用可繪項目"
+    - title: Defining Custom Animations
+      path: /training/material/animations.html
+      custom_link_attributes:
+      - es-lang="Definir animaciones personalizadas"
+      - in-lang="Mendefinisikan Animasi Custom"
+      - ja-lang="カスタム アニメーションの定義"
+      - ko-lang="사용자지정 애니메이션 정의"
+      - pt-br-lang="Como definir animações personalizadas"
+      - ru-lang="Определение настраиваемой анимации"
+      - vi-lang="Định nghĩa Hoạt hình Tùy chỉnh"
+      - zh-cn-lang="定义定制动画"
+      - zh-tw-lang="定義自訂動畫"
+    - title: Maintaining Compatibility
+      path: /training/material/compatibility.html
+      custom_link_attributes:
+      - es-lang="Mantener la compatibilidad"
+      - in-lang="Mempertahankan Kompatibilitas"
+      - ja-lang="互換性の維持"
+      - ko-lang="호환성 유지"
+      - pt-br-lang="Como manter a compatibilidade"
+      - ru-lang="Обеспечение совместимости"
+      - vi-lang="Duy trì Tính tương thích"
+      - zh-cn-lang="维护兼容性"
+      - zh-tw-lang="維持相容性"
+
+- title: Best Practices for User Input
+  path: /training/best-user-input.html
+  section:
+  - title: Using Touch Gestures
+    path: /training/gestures/index.html
+    custom_link_attributes:
+    - description="How to write apps that allow users to interact with the touch screen via touch gestures."
+    section:
+    - title: Detecting Common Gestures
+      path: /training/gestures/detector.html
+    - title: Tracking Movement
+      path: /training/gestures/movement.html
+    - title: Animating a Scroll Gesture
+      path: /training/gestures/scroll.html
+    - title: Handling Multi-Touch Gestures
+      path: /training/gestures/multi.html
+    - title: Dragging and Scaling
+      path: /training/gestures/scale.html
+    - title: Managing Touch Events in a ViewGroup
+      path: /training/gestures/viewgroup.html
+  - title: Handling Keyboard Input
+    path: /training/keyboard-input/index.html
+    custom_link_attributes:
+    - description="How to specify the appearance and behaviors of soft input methods (such as on-screen keyboards) and how to optimize the experience with hardware keyboards."
+    section:
+    - title: Specifying the Input Method Type
+      path: /training/keyboard-input/style.html
+    - title: Handling Input Method Visibility
+      path: /training/keyboard-input/visibility.html
+    - title: Supporting Keyboard Navigation
+      path: /training/keyboard-input/navigation.html
+    - title: Handling Keyboard Actions
+      path: /training/keyboard-input/commands.html
+  - title: Supporting Game Controllers
+    path: /training/game-controllers/index.html
+    custom_link_attributes:
+    - description="How to write apps that support game controllers."
+    section:
+    - title: Handling Controller Actions
+      path: /training/game-controllers/controller-input.html
+    - title: Supporting Controllers Across Android Versions
+      path: /training/game-controllers/compatibility.html
+    - title: Supporting Multiple Game Controllers
+      path: /training/game-controllers/multiple-controllers.html
+
+- title: Best Practices for Background Jobs
+  path: /training/best-background.html
+  section:
+  - title: Running in a Background Service
+    path: /training/run-background-service/index.html
+    custom_link_attributes:
+    - description="How to improve UI performance and responsiveness by sending work to a Service running in the background"
+    section:
+    - title: Creating a Background Service
+      path: /training/run-background-service/create-service.html
+    - title: Sending Work Requests to the Background Service
+      path: /training/run-background-service/send-request.html
+    - title: Reporting Work Status
+      path: /training/run-background-service/report-status.html
+  - title: Loading Data in the Background
+    path: /training/load-data-background/index.html
+    custom_link_attributes:
+    - description="How to use CursorLoader to query data without affecting UI responsiveness."
+    section:
+    - title: Running a Query with a CursorLoader
+      path: /training/load-data-background/setup-loader.html
+    - title: Handling the Results
+      path: /training/load-data-background/handle-results.html
+  - title: Managing Device Awake State
+    path: /training/scheduling/index.html
+    custom_link_attributes:
+    - description="How to use repeating alarms and wake locks to run background jobs."
+    section:
+    - title: Keeping the Device Awake
+      path: /training/scheduling/wakelock.html
+    - title: Scheduling Repeating Alarms
+      path: /training/scheduling/alarms.html
+
+- title: Best Practices for Performance
+  path: /training/best-performance.html
+  section:
+  - title: Managing Your App's Memory
+    path: /training/articles/memory.html
+    custom_link_attributes:
+    - description="How to keep your app's memory footprint small in order to improve performance on a variety of mobile devices."
+  - title: Performance Tips
+    path: /training/articles/perf-tips.html
+    custom_link_attributes:
+    - description="How to optimize your app's performance in various ways to improve its responsiveness and battery efficiency."
+  - title: Improving Layout Performance
+    path: /training/improving-layouts/index.html
+    custom_link_attributes:
+    - description="How to identify problems in your app's layout performance and improve the UI responsiveness."
+    section:
+    - title: Optimizing Layout Hierarchies
+      path: /training/improving-layouts/optimizing-layout.html
+    - title: Re-using Layouts with <include/>
+      path: /training/improving-layouts/reusing-layouts.html
+    - title: Loading Views On Demand
+      path: /training/improving-layouts/loading-ondemand.html
+    - title: Making ListView Scrolling Smooth
+      path: /training/improving-layouts/smooth-scrolling.html
+  - title: Optimizing Battery Life
+    path: /training/monitoring-device-state/index.html
+    custom_link_attributes:
+    - es-lang="Cómo optimizar la duración de la batería"
+    - ja-lang="電池消費量の最適化"
+    - zh-cn-lang="优化电池使用时间"
+    - description="How to minimize the amount of power your app requires by adapting to current power conditions and performing power-hungry tasks at proper intervals."
+    section:
+    - title: Reducing Network Battery Drain
+      path: /training/performance/battery/network/index.html
+      section:
+      - title: Collecting Network Traffic Data
+        path: /training/performance/battery/network/gather-data.html
+      - title: Analyzing Network Traffic Data
+        path: /training/performance/battery/network/analyze-data.html
+      - title: Optimizing User-Initiated Network Use
+        path: /training/performance/battery/network/action-user-traffic.html
+      - title: Optimizing App-Initiated Network Use
+        path: /training/performance/battery/network/action-app-traffic.html
+      - title: Optimizing Server-Initiated Network Use
+        path: /training/performance/battery/network/action-server-traffic.html
+      - title: Optimizing General Network Use
+        path: /training/performance/battery/network/action-any-traffic.html
+    - title: Optimizing for Doze and App Standby
+      path: /training/monitoring-device-state/doze-standby.html
+    - title: Monitoring the Battery Level and Charging State
+      path: /training/monitoring-device-state/battery-monitoring.html
+      custom_link_attributes:
+      - es-lang="Cómo controlar el nivel de batería y el estado de carga"
+      - ja-lang="電池残量と充電状態の監視"
+      - zh-cn-lang="监控电池电量和充电状态"
+    - title: Determining and Monitoring the Docking State and Type
+      path: /training/monitoring-device-state/docking-monitoring.html
+      custom_link_attributes:
+      - es-lang="Cómo determinar y controlar el tipo de conector y el estado de la conexión"
+      - ja-lang="ホルダーの装着状態とタイプの特定と監視"
+      - zh-cn-lang="确定和监控基座对接状态和类型"
+    - title: Determining and Monitoring the Connectivity Status
+      path: /training/monitoring-device-state/connectivity-monitoring.html
+      custom_link_attributes:
+      - es-lang="Cómo determinar y controlar el estado de la conectividad"
+      - ja-lang="接続状態の特定と監視"
+      - zh-cn-lang="确定和监控网络连接状态"
+    - title: Manipulating Broadcast Receivers On Demand
+      path: /training/monitoring-device-state/manifest-receivers.html
+      custom_link_attributes:
+      - es-lang="Cómo manipular los receptores de emisión bajo demanda"
+      - ja-lang="オンデマンドでのブロードキャスト レシーバ操作"
+      - zh-cn-lang="根据需要操作广播接收器"
+  - title: Sending Operations to Multiple Threads
+    path: /training/multiple-threads/index.html
+    custom_link_attributes:
+    - description="How to improve the performance and scalability of long-running operations by dispatching work to multiple threads."
+    section:
+    - title: Specifying the Code to Run on a Thread
+      path: /training/multiple-threads/define-runnable.html
+    - title: Creating a Manager for Multiple Threads
+      path: /training/multiple-threads/create-threadpool.html
+    - title: Running Code on a Thread Pool Thread
+      path: /training/multiple-threads/run-code.html
+    - title: Communicating with the UI Thread
+      path: /training/multiple-threads/communicate-ui.html
+  - title: Keeping Your App Responsive
+    path: /training/articles/perf-anr.html
+    custom_link_attributes:
+    - description="How to keep your app responsive to user interaction so the UI does not lock-up and display an \"Application Not Responding\" dialog."
+  - title: JNI Tips
+    path: /training/articles/perf-jni.html
+    custom_link_attributes:
+    - description="How to efficiently use the Java Native Interface with the Android NDK."
+  - title: SMP Primer for Android
+    path: /training/articles/smp.html
+    custom_link_attributes:
+    - description="Tips for coding Android apps on symmetric multiprocessor systems."
+
+- title: Best Practices for Security & Privacy
+  path: /training/best-security.html
+  section:
+  - title: Security Tips
+    path: /training/articles/security-tips.html
+    custom_link_attributes:
+    - description="How to perform various tasks and keep your app's data and your user's data secure."
+  - title: Security with HTTPS and SSL
+    path: /training/articles/security-ssl.html
+    custom_link_attributes:
+    - description="How to ensure that your app is secure when performing network transactions."
+  - title: Updating Your Security Provider to Protect Against SSL Exploits
+    path: /training/articles/security-gms-provider.html
+    custom_link_attributes:
+    - description="How to use and update Google Play services security provider, to protect against SSL exploits."
+  - title: Checking Device Compatibility with SafetyNet
+    path: /training/safetynet/index.html
+    custom_link_attributes:
+    - description="How to use the SafetyNet service to analyze a device where your app is running and get information about its compatibility with your app."
+  - title: Enhancing Security with Device Management Policies
+    path: /training/enterprise/device-management-policy.html
+    custom_link_attributes:
+    - description="How to create an application that enforces security policies on devices."
+
+- title: Best Practices for Permissions & Identifiers
+  path: /training/best-permissions-ids.html
+  section:
+  - title: Permissions and User Data
+    path: /training/articles/user-data-overview.html
+    custom_link_attributes:
+    - description="Overview of app permissions on Android and how they affect your users."
+  - title: Best Practices for App Permissions
+    path: /training/articles/user-data-permissions.html
+    custom_link_attributes:
+    - description="How to manage permissions the right way for users."
+  - title: Best Practices for Unique Identifiers
+    path: /training/articles/user-data-ids.html
+    custom_link_attributes:
+    - description="Unique identifiers available and how to choose the right one for your use case."
+
+- title: Best Practices for Testing
+  path: /training/testing/index.html
+  section:
+  - title: Getting Started with Testing
+    path: /training/testing/start/index.html
+    custom_link_attributes:
+    - description="How to get started with testing your Android applications."
+  - title: Building Effective Unit Tests
+    path: /training/testing/unit-testing/index.html
+    custom_link_attributes:
+    - description="How to build effective unit tests for Android apps."
+    section:
+    - title: Building Local Unit Tests
+      path: /training/testing/unit-testing/local-unit-tests.html
+    - title: Building Instrumented Unit Tests
+      path: /training/testing/unit-testing/instrumented-unit-tests.html
+  - title: Automating UI Tests
+    path: /training/testing/ui-testing/index.html
+    custom_link_attributes:
+    - description="How to automate your user interface tests for Android apps."
+    section:
+    - title: Testing UI for a Single App
+      path: /training/testing/ui-testing/espresso-testing.html
+    - title: Testing UI for Multiple Apps
+      path: /training/testing/ui-testing/uiautomator-testing.html
+  - title: Testing App Component Integrations
+    path: /training/testing/integration-testing/index.html
+    custom_link_attributes:
+    - description="How to build effective integration tests for Android apps."
+    section:
+    - title: Testing Your Service
+      path: /training/testing/integration-testing/service-testing.html
+    - title: Testing Your Content Provider
+      path: /training/testing/integration-testing/content-provider-testing.html
+  - title: Testing Display Performance
+    path: /training/testing/performance.html
+    custom_link_attributes:
+    - description="How to automate UI performance testing."
+
+- title: Using Google Play to Distribute & Monetize
+  path: /training/distribute.html
+  section:
+  - title: Selling In-app Products
+    path: /training/in-app-billing/index.html
+    custom_link_attributes:
+    - description="How to sell in-app products from your application using In-app Billing."
+    section:
+    - title: Preparing Your App
+      path: /training/in-app-billing/preparing-iab-app.html
+    - title: Establishing Products for Sale
+      path: /training/in-app-billing/list-iab-products.html
+    - title: Purchasing Products
+      path: /training/in-app-billing/purchase-iab-products.html
+    - title: Testing Your App
+      path: /training/in-app-billing/test-iab-app.html
+  - title: Maintaining Multiple APKs
+    path: /training/multiple-apks/index.html
+    custom_link_attributes:
+    - description="How to publish your app on Google Play with separate APKs that target different devices, while using a single app listing."
+    section:
+    - title: Creating Multiple APKs for Different API Levels
+      path: /training/multiple-apks/api.html
+    - title: Creating Multiple APKs for Different Screen Sizes
+      path: /training/multiple-apks/screensize.html
+    - title: Creating Multiple APKs for Different GL Textures
+      path: /training/multiple-apks/texture.html
+    - title: Creating Multiple APKs with 2+ Dimensions
+      path: /training/multiple-apks/multiple.html
diff --git a/docs/html/training/accessibility/index.jd b/docs/html/training/accessibility/index.jd
index ea54dc4..7a5d6d7 100644
--- a/docs/html/training/accessibility/index.jd
+++ b/docs/html/training/accessibility/index.jd
@@ -50,5 +50,7 @@
     and uses that information to communicate with the user.  The example will
     use a text-to-speech engine to speak to the user.</dd>
 
+    <dt><b><a href="testing.html">Accessibility Checklist</a></b></dt>
+    <dd>Learn how to test your app for accessibility.</dd>
 </dl>
 
diff --git a/docs/html/training/accessibility/service.jd b/docs/html/training/accessibility/service.jd
old mode 100644
new mode 100755
index 953c558..5b99c46
--- a/docs/html/training/accessibility/service.jd
+++ b/docs/html/training/accessibility/service.jd
@@ -132,7 +132,7 @@
 }
 </pre>
 
-<p>Starting with Android 4.0, there is a second option available: configure the
+<p>The second option is to configure the
 service using an XML file.  Certain configuration options like
 {@link android.R.attr#canRetrieveWindowContent} are only available if you
 configure your service using XML.  The same configuration options above, defined
@@ -201,8 +201,7 @@
 </pre>
 
 <h2 id="query">Query the View Heirarchy for More Context</h2>
-<p>This step is optional, but highly useful.  One of the new features in Android
-4.0 (API Level 14) is the ability for an
+<p>This step is optional, but highly useful. The Android platform provides the ability for an
 {@link android.accessibilityservice.AccessibilityService} to query the view
 hierarchy, collecting information about the UI component that generated an event, and
 its parent and children.  In order to do this, make sure that you set the
diff --git a/docs/html/training/accessibility/testing.jd b/docs/html/training/accessibility/testing.jd
new file mode 100644
index 0000000..6563f4e
--- /dev/null
+++ b/docs/html/training/accessibility/testing.jd
@@ -0,0 +1,257 @@
+page.title=Accessibility Testing Checklist
+page.tags=testing,accessibility
+
+trainingnavtop=true
+startpage=true
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+  <h2>Checklist sections</h2>
+  <ol>
+    <li><a href="#goals">Testing Goals</a></li>
+    <li><a href="#requirements">Testing Requirements</a></li>
+    <li><a href="#recommendations">Testing Recommendations</a></li>
+    <li><a href="#special-cases">Special Cases and Considerations</a></li>
+    <li><a href="#how-to">Testing Accessibility Features</a>
+      <ol>
+        <li><a href="#test-audibles">Testing audible feedback</a></li>
+        <li><a href="#test-navigation">Testing focus navigation</a></li>
+        <li><a href="#test-gestures">Testing gesture navigation</a></li>
+      </ol>
+    </li>
+  </ol>
+
+  <h2>You should also read</h2>
+    <ol>
+      <li>
+        <a href="{@docRoot}guide/topics/ui/accessibility/checklist.html">
+        Accessibility Developer Checklist</a>
+      </li>
+      <li>
+        <a href="{@docRoot}design/patterns/accessibility.html">
+        Android Design: Accessibility</a>
+      </li>
+      <li>
+        <a href="{@docRoot}guide/topics/ui/accessibility/apps.html">
+        Making Applications Accessible</a>
+      </li>
+    </ol>
+  </div>
+</div>
+<p>
+  Testing is an important part of making your application accessible to users with varying
+  abilities. Following <a href="{@docRoot}design/patterns/accessibility.html">design</a> and
+  <a href="{@docRoot}guide/topics/ui/accessibility/checklist.html">development</a> guidelines for
+  accessibility are important steps toward that goal, but testing for accessibility can uncover
+  problems with user interaction that are not obvious during design and development.</p>
+
+<p>This accessibility testing checklist guides you through the important aspects of
+  accessibility testing, including overall goals, required testing steps, recommended testing and
+  special considerations. This document also discusses how to enable accessibility features on
+  Android devices for testing purposes.</p>
+
+
+<h2 id="goals">Testing Goals</h2>
+
+<p>Your accessibility testing should have the following, high level goals:</p>
+
+<ul>
+  <li>Set up and use the application without sighted assistance</li>
+  <li>All task workflows in the application can be easily navigated using directional controls and
+    provide clear and appropriate feedback</li>
+</ul>
+
+
+<h2 id="requirements">Testing Requirements</h2>
+
+<p>The following tests must be completed in order to ensure a minimum level of application
+  accessibility.</p>
+
+<ol>
+  <li><strong>Directional controls:</strong> Verify that the application can be operated
+    without the use of a touch screen. Attempt to use only directional controls to accomplish the
+    primary tasks in the application. Use the keyboard and directional-pad (D-Pad) controls in the
+    Android <a href="{@docRoot}tools/devices/emulator.html">Emulator</a> or use
+    <a href="http://support.google.com/nexus/bin/answer.py?hl=en&answer=2700718">gesture
+    navigation</a> on devices with Android 4.1 (API Level 16) or higher.
+    <p class="note"><strong>Note:</strong> Keyboards and D-pads provide different navigation paths
+    than accessibility gestures. While gestures allow users to focus on nearly any on-screen
+    content, keyboard and D-pad navigation only allow focus on input fields and buttons.</p>
+    </li>
+  <li><strong>TalkBack audio prompts:</strong> Verify that user interface controls that provide
+    information (graphics or text) or allow user action have clear and accurate audio descriptions
+    when <a href="#testing-talkback">TalkBack is enabled</a> and controls are focused. Use
+    directional controls to move focus between application layout elements.</li>
+  <li><strong>Explore by Touch prompts:</strong> Verify that user interface controls that
+    provide information (graphics or text) or allow user action have appropriate audio descriptions
+    when <a href="#testing-ebt">Explore by Touch is enabled</a>. There should be no
+    regions where contents or controls do not provide an audio description.</li>
+  <li><strong>Touchable control sizes:</strong> All controls where a user can select or take an
+    action must be a minimum of 48 dp (approximately 9mm) in length and width, as recommended by
+    <a href="{@docRoot}design/patterns/accessibility.html">Android Design</a>.</li>
+  <li><strong>Gestures work with TalkBack enabled:</strong> Verify that app-specific gestures,
+    such as zooming images, scrolling lists, swiping between pages or navigating carousel controls
+    continue to work when <a href="#testing-talkback">TalkBack is enabled</a>. If these gestures do
+    not function, then an alternative interface for these actions must be provided.</li>
+  <li><strong>No audio-only feedback:</strong> Audio feedback must always have a secondary
+    feedback mechanism to support users who are deaf or hard of hearing, for example: A sound alert
+    for the arrival of a message should also be accompanied by a system
+    {@link android.app.Notification}, haptic feedback (if available) or another visual alert.</li>
+</ol>
+
+
+<h2 id="recommendations">Testing Recommendations</h2>
+
+<p>The following tests are recommended for ensuring the accessibility of your application. If you
+  do not test these items, it may impact the overall accessibility and quality of your
+  application.</p>
+
+<ol>
+  <li><strong>Repetitive audio prompting:</strong> Check that closely related controls (such as
+    items with multiple components in a list) do not simply repeat the same audio prompt. For
+    example, in a contacts list that contains a contact picture, written name and title, the prompts
+    should not simply repeat “Bob Smith” for each item.</li>
+  <li><strong>Audio prompt overloading or underloading:</strong> Check that closely related
+    controls provide an appropriate level of audio information that enables users to understand and
+    act on a screen element. Too little or too much prompting can make it difficult to understand
+    and use a control.</li>
+</ol>
+
+
+<h2 id="special-cases">Special Cases and Considerations</h2>
+
+<p>The following list describes specific situations that should be tested to ensure an
+  accessible app. Some, none or all of the cases described here may apply to your application. Be
+  sure to review this list to find out if these special cases apply and take appropriate action.</p>
+
+<ol>
+  <li><strong>Review developer special cases and considerations:</strong> Review the list of
+    <a href="{@docRoot}guide/topics/ui/accessibility/checklist.html#special-cases">special cases</a>
+     for accessibility development and test your application for the cases that apply.</li>
+  <li><strong>Prompts for controls that change function:</strong> Buttons or other controls
+    that change function due to application context or workflow must provide audio prompts
+    appropriate to their current function. For example, a button that changes function from play
+    video to pause video should provide an audio prompt which is appropriate to its current state.</li>
+  <li><strong>Video playback and captioning:</strong> If the application provides video
+    playback, verify that it supports captioning and subtitles to assist users who are deaf or hard
+    of hearing. The video playback controls must clearly indicate if captioning is available for a
+    video and provide a clear way of enabling captions.</li>
+</ol>
+
+
+<h2 id="how-to">Testing Accessibility Features</h2>
+
+<p>Testing of accessibility features such as TalkBack, Explore by Touch and accessibility Gestures
+requires setup of your testing device. This section describes how to enable these features for
+accessibility testing.</p>
+
+
+<h3 id="test-audibles">Testing audible feedback</h3>
+
+<p>Audible accessibility feedback features on Android devices provide audio prompts that speaks
+  the screen content as you move around an application. By enabling these features on an Android
+  device, you can test the experience of users with blindness or low-vision using your application.
+</p>
+
+<p>Audible feedback for users on Android is typically provided by TalkBack accessibility service and
+the Explore by Touch system feature. The TalkBack accessibility service comes preinstalled on most
+Android devices and can also be downloaded for free from
+<a href="https://play.google.com/store/apps/details?id=com.google.android.marvin.talkback">Google
+Play</a>. The Explore by Touch system feature is available on devices running Android 4.0 and later.
+</p>
+
+<h4 id="testing-talkback">Testing with TalkBack</h4>
+
+<p>The <em>TalkBack</em> accessibility service works by speaking the contents of user interface
+controls as the user moves focus onto controls. This service should be enabled as part of testing
+focus navigation and audible prompts.</p>
+
+<p>To enable the TalkBack accessibility service:</p>
+<ol>
+  <li>Launch the <strong>Settings</strong> application.</li>
+  <li>Navigate to the <strong>Accessibility</strong> category and select it.</li>
+  <li>Select <strong>Accessibility</strong> to enable it.</li>
+  <li>Select <strong>TalkBack</strong> to enable it.</li>
+</ol>
+
+<p class="note">
+  <strong>Note:</strong> While TalkBack is the most available Android accessibility service for
+  users with disabilities, other accessibility services are available and may be installed by users.
+</p>
+
+<p>For more information about using TalkBack, see
+<a href="https://support.google.com/accessibility/android/topic/3529932">TalkBack</a>.</p>
+
+<h4 id="testing-ebt">Testing with Explore by Touch</h4>
+
+<p>The <em>Explore by Touch</em> system feature is available on devices running Android 4.0 and
+  later, and works by enabling a special accessibility mode that allows users to drag a finger
+  around the interface of an application and hear the contents of the screen spoken. This feature
+  does not require screen elements to be focused using an directional controller, but listens for
+  hover events over user interface controls.
+</p>
+
+<p>To enable Explore by Touch on Android 4.0 and later:</p>
+<ol>
+  <li>Launch the <strong>Settings</strong> application.</li>
+  <li>Navigate to the <strong>Accessibility</strong> category and select it.</li>
+  <li>Select the <strong>TalkBack</strong> to enable it.
+      <p class="note"><strong>Note:</strong> On Android 4.1 (API Level 16) and higher, the system
+      provides a popup message to enable Explore by Touch. On older versions, you must follow the
+      step below.</p>
+  </li>
+  <li>Return to the <strong>Accessibility</strong> category and select <strong>Explore by
+Touch</strong> to enable it.
+    <p class="note"><strong>Note:</strong> You must turn on TalkBack <em>first</em>, otherwise this
+option is not available.</p>
+  </li>
+</ol>
+
+<p>For more information about using the Explore by Touch features, see
+<a href="https://support.google.com/accessibility/android/answer/6006598">Touch Exploration</a>.</p>
+
+<h3 id="test-navigation">Testing focus navigation</h3>
+
+<p>Focus navigation is the use of directional controls to navigate between the individual user
+  interface elements of an application in order to operate it. Users with limited vision or limited
+  manual dexterity often use this mode of navigation instead of touch navigation. As part of
+  accessibility testing, you should verify that your application can be operated using only
+  directional controls.</p>
+
+<p>You can test navigation of your application using only focus controls, even if your test devices
+  does not have a directional controller. The <a href="{@docRoot}tools/help/emulator.html">Android
+  Emulator</a> provides a simulated directional controller that you can use to test navigation. You
+  can also use a software-based directional controller, such as the one provided by the
+  <a href="https://play.google.com/store/apps/details?id=com.googlecode.eyesfree.inputmethod.latin"
+  >Eyes-Free Keyboard</a> to simulate use of a D-pad on a test device that does not have a physical
+  D-pad.</p>
+
+
+<h3 id="test-gestures">Testing gesture navigation</h3>
+
+<p>Gesture navigation is an accessibility navigation mode that allows users to navigate Android
+  devices and applications using specific
+  <a href="https://support.google.com/accessibility/android/answer/6006598">gestures</a>. This
+  navigation mode is available on Android 4.1 (API Level 16) and higher.</p>
+
+<p class="note"><strong>Note:</strong> Accessibility gestures provide a different navigation path
+than keyboards and D-pads. While gestures allow users to focus on nearly any on-screen
+content, keyboard and D-pad navigation only allow focus on input fields and buttons.</p>
+
+<p>To enable gesture navigation on Android 4.1 and later:</p>
+<ul>
+  <li>Enable both TalkBack and the Explore by Touch feature as described in the
+    <a href="#testing-ebt">Testing with Explore by Touch</a>. When <em>both</em> of these
+    features are enabled, accessibility gestures are automatically enabled.</li>
+  <li>You can change gesture settings using <strong>Settings &gt; Accessibility &gt; TalkBack &gt;
+    Settings &gt; Manage shortcut gestures</strong>.
+</ul>
+
+<p>For more information about using Explore by Touch accessibility gestures, see
+<a href="https://support.google.com/accessibility/android/answer/6006598">Touch Exploration</a>.</p>
+
+<p class="note">
+  <strong>Note:</strong> Accessibility services other than TalkBack may map accessibility gestures
+  to different user actions. If gestures are not producing the expected actions during testing, try
+  disabling other accessibility services before proceeding.</p>
\ No newline at end of file
diff --git a/docs/html/training/activity-testing/activity-basic-testing.jd b/docs/html/training/activity-testing/activity-basic-testing.jd
deleted file mode 100644
index 6f39bcd..0000000
--- a/docs/html/training/activity-testing/activity-basic-testing.jd
+++ /dev/null
@@ -1,227 +0,0 @@
-page.title=Creating and Running a Test Case
-trainingnavtop=true
-
-@jd:body
-
-<!-- This is the training bar -->
-<div id="tb-wrapper">
-<div id="tb">
-
-<h2>This lesson teaches you to</h2>
-<ol>
-  <li><a href="#testcase">Create a Test Case for Activity Testing</a>
-      <ol>
-      <li><a href="#fixture">Set Up Your Test Fixture</a></li>
-      <li><a href="#preconditions">Add Test Preconditions</a></li>
-      <li><a href="#test_method">Add Test Methods to Verify Your Activity</a></li>
-      </ol>
-  </li>
-  <li><a href="#build_run">Build and Run Your Test</a></li>
-</ol>
-
-<h2>You should also read</h2>
-<ul>
-<li><a href="{@docRoot}tools/testing/testing_android.html">Testing
-Fundamentals</a></li>
-</ul>
-
-</div>
-</div>
-<p>In order to verify that there are no regressions in the layout design and
-functional behavior in your application, it's important to
-create a test for each {@link android.app.Activity} in your application. For
-each test, you need to create the individual parts of a test case, including
-the test fixture, preconditions test method, and {@link android.app.Activity}
-test methods. You can then run your test to get a test report. If any test
-method fails, this might indicate a potential defect in your code.</p>
-<p class="note"><strong>Note:</strong> In the Test-Driven Development (TDD)
-approach, instead of writing most or all of your app code up-front and then
-running tests later in the development cycle, you would progressively write
-just enough production code to satisfy your test dependencies, update your
-test cases to reflect new functional requirements, and iterate repeatedly this
-way.</p>
-
-<h2 id="testcase">Create a Test Case</h2>
-<p>{@link android.app.Activity} tests are written in a structured way.
-Make sure to put your tests in a separate package, distinct from the code under
-test.</p>
-<p>By convention, your test package name should follow the same name as the
-application package, suffixed with <strong>".tests"</strong>. In the test package
-you created, add the Java class for your test case. By convention, your test case
-name should also follow the same name as the Java or Android class that you
-want to test, but suffixed with <strong>“Test”</strong>.</p>
-<p>To create a new test case in Eclipse:</p>
-<ol type="a">
-   <li>In the Package Explorer, right-click on the {@code /src} directory for
-your test project and select <strong>New &gt; Package</strong>.</li>
-   <li>Set the <strong>Name</strong> field to
-{@code <your_app_package_name>.tests} (for example,
-{@code com.example.android.testingfun.tests}) and click
-<strong>Finish</strong>.</li>
-   <li>Right-click on the test package you created, and select
-<strong>New &gt; Class</strong>.</li>
-    <li>Set the <strong>Name</strong> field to
-{@code <your_app_activity_name>Test} (for example,
-{@code MyFirstTestActivityTest}) and click <strong>Finish</strong>.</li>
-</ol>
-
-<h3 id="fixture">Set Up Your Test Fixture</h3>
-<p>A <em>test fixture</em> consists of objects that must be initialized for
-running one or more tests. To set up the test fixture, you can override the
-{@link junit.framework.TestCase#setUp()} and
-{@link junit.framework.TestCase#tearDown()} methods in your test. The
-test runner automatically runs {@link junit.framework.TestCase#setUp()} before
-running any other test methods, and {@link junit.framework.TestCase#tearDown()}
-at the end of each test method execution. You can use these methods to keep
-the code for test initialization and clean up separate from the tests methods.
-</p>
-<p>To set up your test fixture in Eclipse:</p>
-<ol>
-<li>In the Package Explorer, double-click on the test case that you created
-earlier to bring up the Eclipse Java editor, then modify your test case class
-to extend one of the sub-classes of {@link android.test.ActivityTestCase}.
-<p>For example:</p>
-<pre>
-public class MyFirstTestActivityTest
-        extends ActivityInstrumentationTestCase2&lt;MyFirstTestActivity&gt; {
-</pre>
-</li>
-<li>Next, add the constructor and {@link junit.framework.TestCase#setUp()}
-methods to your test case, and add variable declarations for the
-{@link android.app.Activity} that you want to test.</p>
-<p>For example:</p>
-<pre>
-public class MyFirstTestActivityTest
-        extends ActivityInstrumentationTestCase2&lt;MyFirstTestActivity&gt; {
-
-    private MyFirstTestActivity mFirstTestActivity;
-    private TextView mFirstTestText;
-
-    public MyFirstTestActivityTest() {
-        super(MyFirstTestActivity.class);
-    }
-
-    &#64;Override
-    protected void setUp() throws Exception {
-        super.setUp();
-        mFirstTestActivity = getActivity();
-        mFirstTestText =
-                (TextView) mFirstTestActivity
-                .findViewById(R.id.my_first_test_text_view);
-    }
-}
-</pre>
-<p>The constructor is invoked by the test runner to instantiate the test
-class, while the {@link junit.framework.TestCase#setUp()} method is invoked by
-the test runner before it runs any tests in the test class.</p>
-</li>
-</ol>
-
-<p>Typically, in the {@link junit.framework.TestCase#setUp()} method, you
-should:</p>
-<ul>
-<li>Invoke the superclass constructor for
-{@link junit.framework.TestCase#setUp()}, which is required by JUnit.</li>
-<li>Initialize your test fixture state by:
-   <ul>
-   <li>Defining the instance variables that store the state of the fixture.</li>
-   <li>Creating and storing a reference to an instance of the
-{@link android.app.Activity} under test.</li>
-   <li>Obtaining a reference to any UI components in the
-{@link android.app.Activity} that you want to test.</li>
-   </ul>
-</ul>
-
-<p>You can use the
-{@link android.test.ActivityInstrumentationTestCase2#getActivity()} method to
-get a reference to the {@link android.app.Activity} under test.</p>
-
-<h3 id="preconditions">Add Test Preconditions</h3>
-<p>As a sanity check, it is good practice to verify that the test fixture has
-been set up correctly, and the objects that you want to test have been correctly
-instantiated or initialized. That way, you won’t have to see
-tests failing because something was wrong with the setup of your test fixture.
-By convention, the method for verifying your test fixture is called
-{@code testPreconditions()}.</p>
-
-<p>For example, you might want to add a {@code testPreconditons()} method like
-this to your test case:</p>
-
-<pre>
-public void testPreconditions() {
-    assertNotNull(“mFirstTestActivity is null”, mFirstTestActivity);
-    assertNotNull(“mFirstTestText is null”, mFirstTestText);
-}
-</pre>
-
-<p>The assertion methods are from the JUnit {@link junit.framework.Assert}
-class. Generally, you can use assertions to
-verify if a specific condition that you want to test is true.
-<ul>
-<li>If the condition is false, the assertion method throws an
-{@link android.test.AssertionFailedError} exception, which is then typically
-reported by the test runner. You can provide a string in the first argument of
-your assertion method to give some contextual details if the assertion fails.</li>
-<li>If the condition is true, the test passes.</li>
-</ul>
-<p>In both cases, the test runner proceeds to run the other test methods in the
-test case.</p>
-
-<h3 id="test_method">Add Test Methods to Verify Your Activity</h3>
-<p>Next, add one or more test methods to verify the layout and functional
-behavior of your {@link android.app.Activity}.</p>
-<p>For example, if your {@link android.app.Activity} includes a
-{@link android.widget.TextView}, you can add a test method like this to check
-that it has the correct label text:</p>
-<pre>
-public void testMyFirstTestTextView_labelText() {
-    final String expected =
-            mFirstTestActivity.getString(R.string.my_first_test);
-    final String actual = mFirstTestText.getText().toString();
-    assertEquals(expected, actual);
-}
-</pre>
-
-<p>The {@code testMyFirstTestTextView_labelText()} method simply checks that the
-default text of the {@link android.widget.TextView} that is set by the layout
-is the same as the expected text defined in the {@code strings.xml} resource.</p>
-<p class="note"><strong>Note:</strong> When naming test methods, you can use
-an underscore to separate what is being tested from the specific case being
-tested. This style makes it easier to see exactly what cases are being tested.</p>
-<p>When doing this type of string value comparison, it’s good practice to read
-the expected string from your resources, instead of hardcoding the string in
-your comparison code. This prevents your test from easily breaking whenever the
-string definitions are modified in the resource file.</p>
-<p>To perform the comparison, pass both the expected and actual strings as
-arguments to the
-{@link junit.framework.Assert#assertEquals(java.lang.String, java.lang.String) assertEquals()}
-method. If the values are not the same, the assertion will throw an
-{@link junit.framework.AssertionFailedError} exception.</p>
-<p>If you added a {@code testPreconditions()} method, put your test methods
-after the {@code testPreconditions()} definition in your Java class.</p>
-<p>For a complete test case example, take a look at
-{@code MyFirstTestActivityTest.java} in the sample app.</p>
-
-<h2 id="build_run">Build and Run Your Test</h2>
-<p>You can build and run your test easily from the Package Explorer in
-Eclipse.</p>
-<p>To build and run your test:</p>
-<ol>
-<li>Connect an Android device to your machine. On the device or emulator, open
-the <strong>Settings</strong> menu, select <strong>Developer options</strong>
-and make sure that USB debugging is enabled.</li>
-<li>In the Project Explorer, right-click on the test class that you created
-earlier and select <strong>Run As &gt; Android Junit Test</strong>.</li>
-<li>In the Android Device Chooser dialog, select the device that you just
-connected, then click <strong>OK</strong>.</li>
-<li>In the JUnit view, verify that the test passes with no errors or failures.</li>
-</ol>
-<p>For example, if the test case passes with no errors, the result should look
-like this:</p>
-<img src="{@docRoot}images/training/activity-testing_lesson2_MyFirstTestActivityTest_result.png" alt="" />
-<p class="img-caption">
-  <strong>Figure 1.</strong> Result of a test with no errors.
-</p>
-
-
-
diff --git a/docs/html/training/activity-testing/activity-functional-testing.jd b/docs/html/training/activity-testing/activity-functional-testing.jd
deleted file mode 100644
index 7c8ff1d..0000000
--- a/docs/html/training/activity-testing/activity-functional-testing.jd
+++ /dev/null
@@ -1,166 +0,0 @@
-page.title=Creating Functional Tests
-trainingnavtop=true
-@jd:body
-
-<!-- This is the training bar -->
-<div id="tb-wrapper">
-<div id="tb">
-
-<h2>This lesson teaches you to</h2>
-<ol>
-   <li><a href="#test_methods">Add Test Method to Validate Functional Behavior</a>
-   <ol>
-      <li><a href="#activitymonitor">Set Up an ActivityMonitor</a></li>
-      <li><a href="#keyinput">Send Keyboard Input Using Instrumentation</a></li>
-   </ol>
-   </li>
-</ol>
-
-<h2>Try it out</h2>
-<div class="download-box">
- <a href="http://developer.android.com/shareables/training/AndroidTestingFun.zip"
-class="button">Download the demo</a>
- <p class="filename">AndroidTestingFun.zip</p>
-</div>
-
-</div>
-</div>
-<p>Functional testing involves verifying that individual application
-components work together as expected by the user. For example, you can create a
-functional test to verify that an {@link android.app.Activity} correctly
-launches a target {@link android.app.Activity} when the user performs a UI
-interaction.</p>
-
-<p>To create a functional test for your {@link android.app.Activity}, your test
-class should extend {@link android.test.ActivityInstrumentationTestCase2}.
-Unlike {@link android.test.ActivityUnitTestCase},
-tests in {@link android.test.ActivityInstrumentationTestCase2} can
-communicate with the Android system and send keyboard input and click events to
-the UI.</p>
-
-<p>For a complete test case example, take a look at
-{@code SenderActivityTest.java} in the sample app.</p>
-
-<h2 id="test_methods">Add Test Method to Validate Functional Behavior</h2>
-<p id="test_goals">Your functional testing goals might include:</p>
-<ul>
-<li>Verifying that a target {@link android.app.Activity} is started when a
-UI control is pushed in the sender {@link android.app.Activity}.</li>
-<li>Verifying that the target {@link android.app.Activity} displays the
-correct data based on the user's input in the sender
-{@link android.app.Activity}.</li>
-</ul>
-<p>You might implement your test method like this:</p>
-
-<pre>
-&#64;MediumTest
-public void testSendMessageToReceiverActivity() {
-    final Button sendToReceiverButton = (Button) 
-            mSenderActivity.findViewById(R.id.send_message_button);
-
-    final EditText senderMessageEditText = (EditText) 
-            mSenderActivity.findViewById(R.id.message_input_edit_text);
-
-    // Set up an ActivityMonitor
-    ...
-
-    // Send string input value
-    ...
-
-    // Validate that ReceiverActivity is started
-    ...
-
-    // Validate that ReceiverActivity has the correct data
-    ...
-
-    // Remove the ActivityMonitor
-    ...
-}
-</pre>
-<p>The test waits for an {@link android.app.Activity} that matches this monitor,
-otherwise returns null after a timeout elapses. If {@code ReceiverActivity} was
-started, the {@link android.app.Instrumentation.ActivityMonitor ActivityMonitor}
-that you set
-up earlier receives a hit. You can use the assertion methods to verify that
-the {@code ReceiverActivity} is indeed started, and that the hit count on the
-{@link android.app.Instrumentation.ActivityMonitor ActivityMonitor} incremented
-as expected.</p>
-
-<h2 id="activitymonitor">Set up an ActivityMonitor</h2>
-<p>To monitor a single {@link android.app.Activity} in your application, you
-can register an {@link android.app.Instrumentation.ActivityMonitor ActivityMonitor}.
-The {@link android.app.Instrumentation.ActivityMonitor ActivityMonitor} is
-notified by the system whenever an {@link android.app.Activity} that matches your criteria is started.
-If a match is found, the monitor’s hit count is updated.</p>
-<p>Generally, to use an
-{@link android.app.Instrumentation.ActivityMonitor ActivityMonitor}, you should:</p>
-<ol>
-<li>Retrieve the {@link android.app.Instrumentation} instance for your test
-case by using the
-{@link android.test.InstrumentationTestCase#getInstrumentation()} method.</li>
-<li>Add an instance of {@link android.app.Instrumentation.ActivityMonitor} to
-the current instrumentation using one of the {@link android.app.Instrumentation}
-{@code addMonitor()} methods. The match criteria can be specified as an
-{@link android.content.IntentFilter} or a class name string.</li>
-<li>Wait for the {@link android.app.Activity} to start.</li>
-<li>Verify that the monitor hits were incremented.</li>
-<li>Remove the monitor.</li>
-</ol>
-<p>For example:</p>
-<pre>
-// Set up an ActivityMonitor
-ActivityMonitor receiverActivityMonitor =
-        getInstrumentation().addMonitor(ReceiverActivity.class.getName(),
-        null, false);
-
-// Validate that ReceiverActivity is started
-TouchUtils.clickView(this, sendToReceiverButton);
-ReceiverActivity receiverActivity = (ReceiverActivity) 
-        receiverActivityMonitor.waitForActivityWithTimeout(TIMEOUT_IN_MS);
-assertNotNull("ReceiverActivity is null", receiverActivity);
-assertEquals("Monitor for ReceiverActivity has not been called",
-        1, receiverActivityMonitor.getHits());
-assertEquals("Activity is of wrong type",
-        ReceiverActivity.class, receiverActivity.getClass());
-
-// Remove the ActivityMonitor
-getInstrumentation().removeMonitor(receiverActivityMonitor);
-</pre>
-
-<h2 id="keyinput">Send Keyboard Input Using Instrumentation</h2>
-<p>If your {@link android.app.Activity} has an {@link android.widget.EditText}
-field, you might want to test that users can enter values into the
-{@link android.widget.EditText} object.</p>
-<p>Generally, to send a string input value to an {@link android.widget.EditText}
-object in {@link android.test.ActivityInstrumentationTestCase2}, you should:</p>
-<ol>
-<li>Use the {@link android.app.Instrumentation#runOnMainSync(java.lang.Runnable) runOnMainSync()}
-method to run the {@link android.view.View#requestFocus()} call synchronously
-in a loop. This way, the UI thread is blocked until focus is received.</li>
-<li>Call {@link android.app.Instrumentation#waitForIdleSync()} method to wait
-for the main thread to become idle (that is, have no more events to process).</li>
-<li>Send a text string to the {@link android.widget.EditText} by calling
-{@link android.app.Instrumentation#sendStringSync(java.lang.String)
-sendStringSync()} and pass your input string as the parameter.</p>
-</ol>
-<p>For example:</p>
-<pre>
-// Send string input value
-getInstrumentation().runOnMainSync(new Runnable() {
-    &#64;Override
-    public void run() {
-        senderMessageEditText.requestFocus();
-    }
-});
-getInstrumentation().waitForIdleSync();
-getInstrumentation().sendStringSync("Hello Android!");
-getInstrumentation().waitForIdleSync();
-</pre>
-
-
-
-
-
-
-
-
diff --git a/docs/html/training/activity-testing/activity-ui-testing.jd b/docs/html/training/activity-testing/activity-ui-testing.jd
deleted file mode 100644
index a47ccf3..0000000
--- a/docs/html/training/activity-testing/activity-ui-testing.jd
+++ /dev/null
@@ -1,216 +0,0 @@
-page.title=Testing UI Components
-trainingnavtop=true
-
-@jd:body
-
-<!-- This is the training bar -->
-<div id="tb-wrapper">
-<div id="tb">
-
-<h2>This lesson teaches you to</h2>
-<ol>
-  <li><a href="#testcase">Create a Test Case for UI Testing with Instrumentation</a>
-  <li><a href="#test_method">Add Test Methods to Verify UI Behavior</a>
-     <ol>
-     <li><a href="#verify_button_display">Verify Button Layout Parameters</a></li>
-     <li><a href="#verify_TextView">Verify TextView Layout Parameters</a></li>
-     <li><a href="#verify_button_behavior">Verify Button Behavior</a></li>
-     </ol>
-  </li>
-  <li><a href="#annotations">Apply Test Annotations</a></li>
-</ol>
-
-<h2>Try it out</h2>
-<div class="download-box">
- <a href="http://developer.android.com/shareables/training/AndroidTestingFun.zip"
-class="button">Download the demo</a>
- <p class="filename">AndroidTestingFun.zip</p>
-</div>
-
-</div>
-</div>
-
-<p>Typically, your {@link android.app.Activity} includes user interface
-components (such as buttons, editable text fields, checkboxes, and pickers) to
-allow users to interact with your Android application. This lesson shows how
-you can test an {@link android.app.Activity} with a simple push-button UI. You
-can use the same general steps to test other, more sophisticated types of UI
-components.</p>
-
-<p class="note"><strong>Note:</strong> The type of UI testing in this lesson is
-called <em>white-box testing</em> because you have the
-source code for the application that you want to test. The Android
-<a href="{@docRoot}tools/testing/testing_android.html#Instrumentation">Instrumentation</a>
-framework is suitable for creating white-box tests for UI components within an
-application. An alternative type of UI testing is <em>black-box testing</em>,
-where you may not have access to the application source. This type of testing
-is useful when you want to test how your app interacts with other apps or with
-the system. Black-box testing is not covered in this training. To learn more
-about how to perform black-box testing on your Android apps, see the
-<a href="{@docRoot}tools/testing/testing_ui.html">UI Testing guide</a>.
-<p>For a complete test case example, take a look at
-{@code ClickFunActivityTest.java} in the sample app.</p>
-
-<h2 id="testcase">Create a Test Case for UI Testing with Instrumentation</h2>
-<p>When testing an {@link android.app.Activity} that has a user interface (UI),
-the {@link android.app.Activity} under test runs in the UI thread. However, the
-test application itself runs in a separate thread in the same process as the
-application under test. This means that your test app can reference objects
-from the UI thread, but if it attempts to change properties on those objects or
-send events to the UI thread, you will usually get a {@code WrongThreadException}
-error.</p>
-<p>To safely inject {@link android.content.Intent} objects into your
-{@link android.app.Activity} or run test methods on the UI thread, you can
-extend your test class to use {@link android.test.ActivityInstrumentationTestCase2}.
-To learn more about how to run test methods on the UI thread, see
-<a href="{@docRoot}tools/testing/activity_testing.html#RunOnUIThread">Testing
-on the UI thread</a>.</p>
-
-<h3 id="fixture">Set Up Your Test Fixture</h3>
-<p>When setting up the test fixture for UI testing, you should specify the
-<a href="{@docRoot}guide/topics/ui/ui-events.html#TouchMode">touch mode</a>
-in your {@link junit.framework.TestCase#setUp()} method. Setting the touch mode
-to {@code true} prevents the UI control from taking focus when you click it
-programmatically in the test method later (for example, a button UI will just
-fire its on-click listener). Make sure that you call
-{@link android.test.ActivityInstrumentationTestCase2#setActivityInitialTouchMode(boolean) setActivityInitialTouchMode()}
-before calling {@link android.test.ActivityInstrumentationTestCase2#getActivity()}.
-</p>
-<p>For example:</ap>
-<pre>
-public class ClickFunActivityTest
-        extends ActivityInstrumentationTestCase2<ClickFunActivity> {
-    ...
-    &#64;Override
-    protected void setUp() throws Exception {
-        super.setUp();
-
-        setActivityInitialTouchMode(true);
-
-        mClickFunActivity = getActivity();
-        mClickMeButton = (Button) 
-                mClickFunActivity
-                .findViewById(R.id.launch_next_activity_button);
-        mInfoTextView = (TextView) 
-                mClickFunActivity.findViewById(R.id.info_text_view);
-    }
-}
-</pre>
-
-<h2 id="test_methods">Add Test Methods to Validate UI Behavior</h2>
-<p id="test_goals">Your UI testing goals might include:</p>
-<ul>
-<li>Verifying that a button is displayed with the correct layout when the
-{@link android.app.Activity} is launched.</li>
-<li>Verifying that a {@link android.widget.TextView} is initially hidden.</li>
-<li>Verifying that a {@link android.widget.TextView} displays the expected string
-when a button is pushed.</li>
-</ul>
-<p>The following section demonstrates how you can implement test methods
-to perform these verifications.</p>
-
-<h3 id="verify_button_display">Verify Button Layout Parameters</h3>
-<p>You might add a test method like this to verify that a button is displayed
-correctly in your {@link android.app.Activity}:</p>
-<pre>
-&#64;MediumTest
-public void testClickMeButton_layout() {
-    final View decorView = mClickFunActivity.getWindow().getDecorView();
-
-    ViewAsserts.assertOnScreen(decorView, mClickMeButton);
-
-    final ViewGroup.LayoutParams layoutParams =
-            mClickMeButton.getLayoutParams();
-    assertNotNull(layoutParams);
-    assertEquals(layoutParams.width, WindowManager.LayoutParams.MATCH_PARENT);
-    assertEquals(layoutParams.height, WindowManager.LayoutParams.WRAP_CONTENT);
-}
-</pre>
-
-<p>In the {@link android.test.ViewAsserts#assertOnScreen(android.view.View,android.view.View) assertOnScreen()}
-method call, you should pass in the root view and the view that you are
-expecting to be present on the screen. If the expected view is not found in the
-root view, the assertion method throws an {@link junit.framework.AssertionFailedError}
-exception, otherwise the test passes.</p>
-<p>You can also verify that the layout of a {@link android.widget.Button} is
-correct by getting a reference to its {@link android.view.ViewGroup.LayoutParams}
-object, then call assertion methods to verify that the
-{@link android.widget.Button} object's width and height attributes match the
-expected values.</p>
-<p>The {@code @MediumTest} annotation specifies how the test is categorized,
-relative to its absolute execution time. To learn more about using test size
-annotations, see <a href="#annotations">Apply Test Annotations</a>.</p>
-
-<h3 id="verify_TextView">Verify TextView Layout Parameters</h3>
-<p>You might add a test method like this to verify that a
-{@link android.widget.TextView} initially appears hidden in
-your {@link android.app.Activity}:</p>
-<pre>
-&#64;MediumTest
-public void testInfoTextView_layout() {
-    final View decorView = mClickFunActivity.getWindow().getDecorView();
-    ViewAsserts.assertOnScreen(decorView, mInfoTextView);
-    assertTrue(View.GONE == mInfoTextView.getVisibility());
-}
-</pre>
-<p>You can call {@link android.view.Window#getDecorView()} to get a reference
-to the decor view for the {@link android.app.Activity}. The decor view is the
-top-level ViewGroup ({@link android.widget.FrameLayout}) view in the layout
-hierarchy.</p>
-
-<h3 id="verify_button_behavior">Verify Button Behavior</h3>
-<p>You can use a test method like this to verify that a
-{@link android.widget.TextView} becomes visible when a
-{@link android.widget.Button} is pushed:</p>
-
-<pre>
-&#64;MediumTest
-public void testClickMeButton_clickButtonAndExpectInfoText() {
-    String expectedInfoText = mClickFunActivity.getString(R.string.info_text);
-    TouchUtils.clickView(this, mClickMeButton);
-    assertTrue(View.VISIBLE == mInfoTextView.getVisibility());
-    assertEquals(expectedInfoText, mInfoTextView.getText());
-}
-</pre>
-
-<p>To programmatically click a {@link android.widget.Button} in your
-test, call {@link android.test.TouchUtils#clickView(android.test.InstrumentationTestCase,android.view.View) clickView()}.
-You must pass in a reference to the test case that is being run and a reference
-to the {@link android.widget.Button} to manipulate.</p>
-
-<p class="note"><strong>Note: </strong>The {@link android.test.TouchUtils}
-helper class provides convenience methods for simulating touch interactions
-with your application. You can use these methods to simulate clicking, tapping,
-and dragging of Views or the application screen.</p>
-<p class="caution"><strong>Caution: </strong>The {@link android.test.TouchUtils}
-methods are designed to send events to the UI thread safely from the test thread.
-You should not run {@link android.test.TouchUtils} directly in the UI thread or
-any test method annotated with {@code @UIThread}. Doing so might
-raise the {@code WrongThreadException}.</p>
-
-<h2 id="annotations">Apply Test Annotations</h2>
-<p>The following annotations can be applied to indicate the size of a test
-method:</p>
-<dl>
-<dt>{@link
-android.test.suitebuilder.annotation.SmallTest &#64;SmallTest}</dt>
-<dd>Marks a test that should run as part of the small tests.</dd>
-<dt>{@link
-android.test.suitebuilder.annotation.MediumTest &#64;MediumTest}</dt>
-<dd>Marks a test that should run as part of the medium tests.</dd>
-<dt>{@link android.test.suitebuilder.annotation.LargeTest &#64;LargeTest}</dt>
-<dd>Marks a test that should run as part of the large tests.</dd>
-</dl>
-<p>Typically, a short running test that take only a few milliseconds should be
-marked as a {@code @SmallTest}. Longer running tests (100 milliseconds or
-more) are usually marked as {@code @MediumTest}s or {@code @LargeTest}s,
-depending on whether the test accesses resources on the local system only or
-remote resources over a network. For guidance on using test size annotations,
-see this <a href="https://plus.sandbox.google.com/+AndroidDevelopers/posts/TPy1EeSaSg8">Android Tools Protip</a>.</p>
-<p>You can mark up your test methods with other test annotations to control
-how the tests are organized and run. For more information on other annotations,
-see the {@link java.lang.annotation.Annotation} class reference.</p>
-
-
-
-
diff --git a/docs/html/training/activity-testing/activity-unit-testing.jd b/docs/html/training/activity-testing/activity-unit-testing.jd
deleted file mode 100644
index 74dcda9..0000000
--- a/docs/html/training/activity-testing/activity-unit-testing.jd
+++ /dev/null
@@ -1,134 +0,0 @@
-page.title=Creating Unit Tests
-trainingnavtop=true
-@jd:body
-
-<!-- This is the training bar -->
-<div id="tb-wrapper">
-<div id="tb">
-
-<h2>This lesson teaches you to</h2>
-<ol>
-  <li><a href="#testcase">Create a Test Case for Activity Unit Testing</a>
-  <li><a href="#test_method">Validate Launch of Another Activity</a>
-</ol>
-
-<h2>Try it out</h2>
-<div class="download-box">
- <a href="http://developer.android.com/shareables/training/AndroidTestingFun.zip"
-class="button">Download the demo</a>
- <p class="filename">AndroidTestingFun.zip</p>
-</div>
-
-</div>
-</div>
-
-<p>An {@link android.app.Activity} unit test is an excellent way to quickly
-verify the state of an {@link android.app.Activity} and its interactions with
-other components in isolation (that is, disconnected from the rest of the
-system). A unit test generally tests the smallest possible unit of code
-(which could be a method, class, or component), without dependencies on system
-or network resources. For example, you can write a unit test to check
-that an {@link android.app.Activity} has the correct layout or that it
-triggers an {@link android.content.Intent} object correctly.</p>
-<p>Unit tests are generally not suitable for testing complex UI interaction
-events with the system. Instead, you should use
-the {@link android.test.ActivityInstrumentationTestCase2} class, as described
-in <a href="activity-ui-testing.html">Testing UI Components</a>.</p>
-<p>This lesson shows how you can write a unit test to verify that an
-{@link android.content.Intent} is triggered to launch another
-{@link android.app.Activity}.
-Since the test runs in an isolated environment, the
-{@link android.content.Intent}
-is not actually sent to the Android system, but you can inspect that the
-{@link android.content.Intent} object's payload data is accurate.</p>
-<p>For a complete test case example, take a look at
-{@code LaunchActivityTest.java} in the sample app.</p>
-
-<p class="note"><strong>Note: </strong>To test against system or external
-dependencies, you can use mock objects from a mocking
-framework and inject them into your unit tests. To learn more about the mocking
-framework provided by Android, see
-<a href="{@docRoot}tools/testing/testing_android.html#MockObjectClasses}">Mock
-Object Classes</a>.</p>
-
-<h2 id="testcase">Create a Test Case for Activity Unit Testing</h2>
-<p>The {@link android.test.ActivityUnitTestCase} class provides support for
-isolated testing of a single {@link android.app.Activity}. To create a unit
-test for your {@link android.app.Activity}, your test class should extend
-{@link android.test.ActivityUnitTestCase}.</p>
-
-<p>The {@link android.app.Activity} in an {@link android.test.ActivityUnitTestCase}
-is not automatically started by Android Instrumentation. To start the
-{@link android.app.Activity} in isolation, you need to explicitly call the
-{@link android.test.ActivityUnitTestCase#startActivity(android.content.Intent, android.os.Bundle, java.lang.Object) startActivity()}
-method, and pass in the {@link android.content.Intent} to
-launch your target {@link android.app.Activity}.</p>
-
-<p>For example:</p>
-<pre>
-public class LaunchActivityTest
-        extends ActivityUnitTestCase&lt;LaunchActivity&gt; {
-    ...
-
-    &#64;Override
-    protected void setUp() throws Exception {
-        super.setUp();
-        mLaunchIntent = new Intent(getInstrumentation()
-                .getTargetContext(), LaunchActivity.class);
-        startActivity(mLaunchIntent, null, null);
-        final Button launchNextButton =
-                (Button) getActivity()
-                .findViewById(R.id.launch_next_activity_button);
-    }
-}
-</pre>
-
-<h2 id="test_method">Validate Launch of Another Activity</h2>
-<p id="test_goals">Your unit testing goals might include:</p>
-<ul>
-<li>Verifying that {@code LaunchActivity} fires an
-{@link android.content.Intent} when a button is pushed clicked.</li>
-<li>Verifying that the launched {@link android.content.Intent} contains the
-correct payload data.</li>
-</ul>
-
-<p>To verify if an {@link android.content.Intent} was triggered
-following the {@link android.widget.Button} click, you can use the
-{@link android.test.ActivityUnitTestCase#getStartedActivityIntent()} method.
-By using assertion methods, you can verify that the returned
-{@link android.content.Intent} is not null, and that it contains the expected
-string value to launch the next {@link android.app.Activity}. If both assertions
-evaluate to {@code true}, you've successfully verified that the
-{@link android.content.Intent} was correctly sent by your
-{@link android.app.Activity}.</p>
-
-<p>You might implement your test method like this:</p>
-<pre>
-&#64;MediumTest
-public void testNextActivityWasLaunchedWithIntent() {
-    startActivity(mLaunchIntent, null, null);
-    final Button launchNextButton =
-            (Button) getActivity()
-            .findViewById(R.id.launch_next_activity_button);
-    launchNextButton.performClick();
-
-    final Intent launchIntent = getStartedActivityIntent();
-    assertNotNull("Intent was null", launchIntent);
-    assertTrue(isFinishCalled());
-
-    final String payload =
-            launchIntent.getStringExtra(NextActivity.EXTRAS_PAYLOAD_KEY);
-    assertEquals("Payload is empty", LaunchActivity.STRING_PAYLOAD, payload);
-}
-</pre>
-<p>Because {@code LaunchActivity} runs in isolation, you cannot use the
-{@link android.test.TouchUtils} library to manipulate UI controls. To directly
-click a {@link android.widget.Button}, you can call the
-{@link android.view.View#performClick()} method instead.</p>
-
-
-
-
-
-
-
diff --git a/docs/html/training/activity-testing/index.jd b/docs/html/training/activity-testing/index.jd
deleted file mode 100644
index b9542b6..0000000
--- a/docs/html/training/activity-testing/index.jd
+++ /dev/null
@@ -1,68 +0,0 @@
-page.title=Testing Your Android Activity
-page.tags=testing
-
-trainingnavtop=true
-startpage=true
-
-@jd:body
-
-<div id="tb-wrapper">
-<div id="tb">
-
-<!-- Required platform, tools, add-ons, devices, knowledge, etc. -->
-<h2>Dependencies and prerequisites</h2>
-<ul>
-  <li>Android 2.2 (API Level 8) or higher.</li>
-</ul>
-
-<h2>You Should Also Read</h2>
-<ul>
-<li><a href="{@docRoot}tools/testing/index.html">Testing
-(Developer's Guide)</a></li>
-</ul>
-
-</div>
-</div>
-
-<p>You should be writing and running tests as part of your Android application
-development cycle. Well-written tests can help you to catch bugs early in
-development and give you confidence in your code.</p>
-
-<p>A <em>test case</em> defines a set of objects and methods to run multiple
-tests independently from each other. Test cases can be organized into
-<em>test suites</em> and run programmatically, in a repeatable manner, with
-a <em>test runner</em> provided by a testing framework.</p>
-
-<p>The lessons in this class teaches you how to use the Android's custom
-testing framework that is based on the popular JUnit framework. You can
-write test cases to verify specific behavior in your application, and check for
-consistency across different Android devices. Your test cases also serve as a
-form of internal code documentation by describing the expected behavior of
-app components.</p>
-
-<h2>Lessons</h2>
-
-<!-- Create a list of the lessons in this class along with a short description
-of each lesson. These should be short and to the point. It should be clear from
-reading the summary whether someone will want to jump to a lesson or not.-->
-
-<dl>
-  <dt><b><a href="preparing-activity-testing.html">Setting Up Your Test
-Environment</a></b></dt>
-    <dd>Learn how to create your test project.</dd>
-  <dt><b><a href="activity-basic-testing.html">Creating and Running a Test 
-Case</a></b></dt>
-    <dd>Learn how to write test cases to verify the
-expected properties of your {@link android.app.Activity}, and run the test
-cases with the {@code Instrumentation} test runner provided by the Android
-framework.</dd>
-  <dt><b><a href="activity-ui-testing.html">Testing UI Components</a></b></dt>
-    <dd>Learn how to test the behavior of specific UI
-components in your {@link android.app.Activity}.</dd>
-  <dt><b><a href="activity-unit-testing.html">Creating Unit Tests</a></b></dt>
-    <dd>Learn how to how to perform unit testing to
-verify the behavior of an Activity in isolation.</dd>
-  <dt><b><a href="activity-functional-testing.html">Creating Functional Tests</a></b></dt>
-    <dd>Learn how to perform functional testing to
-verify the interaction of multiple Activities.</dd>
-
diff --git a/docs/html/training/activity-testing/preparing-activity-testing.jd b/docs/html/training/activity-testing/preparing-activity-testing.jd
deleted file mode 100644
index c43c9ed..0000000
--- a/docs/html/training/activity-testing/preparing-activity-testing.jd
+++ /dev/null
@@ -1,95 +0,0 @@
-page.title=Setting Up Your Test Environment
-trainingnavtop=true
-
-@jd:body
-
-<!-- This is the training bar -->
-<div id="tb-wrapper">
-<div id="tb">
-
-<h2>This lesson teaches you to</h2>
-<ol>
-  <li><a href="#eclipse">Set Up Eclipse for Testing</a></li>
-  <li><a href="#cmdline">Set Up the Command Line Interface for Testing</a></li>
-</ol>
-
-<h2>You should also read</h2>
-<ul>
-<li><a href="{@docRoot}sdk/index.html">Getting the SDK Bundle</a></li>
-<li><a href="{@docRoot}tools/testing/testing_eclipse.html">Testing from Eclipse
-with ADT</a></li>
-<li><a href="{@docRoot}tools/testing/testing_otheride.html">Testing from Other
-IDEs</a></li>
-</ul>
-
-<h2>Try it out</h2>
-<div class="download-box">
- <a href="http://developer.android.com/shareables/training/AndroidTestingFun.zip"
-class="button">Download the demo</a>
- <p class="filename">AndroidTestingFun.zip</p>
-</div>
-
-</div>
-</div>
-
-<p>Before you start writing and running your tests, you should set up your test
-development environment. This lesson teaches you how to set up the Eclipse
-IDE to build and run tests, and how to
-build and run tests with the Gradle framework by using the command line
-interface.</p>
-
-<p class="note"><strong>Note:</strong> To help you get started, the lessons are
-based on Eclipse with the ADT plugin. However, for your own test development, you
-are free to use the IDE of your choice or the command-line.</p>
-
-<h2 id="eclipse">Set Up Eclipse for Testing</h2>
-<p>Eclipse with the Android Developer Tools (ADT) plugin provides an integrated
-development environment for you to create, build, and run Android application
-test cases from a graphical user interface (GUI). A convenient feature that
-Eclipse provides is the ability to auto-generate a new test project that
-corresponds with your Android application project</a>.
-
-<p>To set up your test environment in Eclipse:</p>
-
-<ol>
-<li><a href="{@docRoot}sdk/installing/bundle.html">Download and install the
-Eclipse ADT plugin</a>, if you haven’t installed it yet.</li>
-<li>Import or create the Android application project that you want to test
-against.</li>
-<li>Generate a test project that corresponds to the application project under
-test. To generate a test project for the app project that you imported:</p>
-   <ol type="a">
-   <li>In the Package Explorer, right-click on your app project, then
-select <strong>Android Tools</strong> &gt; <strong>New Test Project</strong>.</li>
-   <li>In the New Android Test Project wizard, set the property
-values for your test project then click <strong>Finish</strong>.</li>
-   </ol>
-</li>
-</ol>
-<p>You should now be able to create, build, and run test
-cases from your Eclipse environment. To learn how to perform these tasks in
-Eclipse, proceed to <a href="activity-basic-testing.html">Creating and Running 
-a Test Case</a>.</p>
-
-<h2 id="cmdline">Set Up the Command Line Interface for Testing</h2>
-<p>If you are using Gradle version 1.6 or higher as your build environment, you
-can build and run your Android application tests from the command line by using
-the Gradle Wrapper. Make sure that in your {@code gradle.build} file, the
-<a href={@docRoot}guide/topics/manifest/uses-sdk-element.html#min>minSdkVersion</a>
-attribute in the {@code defaultConfig} section is set to 8 or higher. You can
-refer to the sample {@code gradle.build} file that is
-included in the download bundle for this training class.</p>
-<p>To run your tests with the Gradle Wrapper:</p>
-<ol>
-   <li>Connect a physical Android device to your machine or launch the Android
-Emulator.</li>
-   <li>Run the following command from your project directory:
-      <pre>./gradlew build connectedCheck</pre>
-   </li>
-</ol>
-<p>To learn more about using Gradle for Android testing, see the
-<a href="//tools.android.com/tech-docs/new-build-system/user-guide#TOC-Testing">Gradle Plugin User Guide</a>.</p>
-<p>To learn more about using command line tools other than Gradle for test
-development, see
-<a href="{@docRoot}tools/testing/testing_otheride.html">Testing from Other IDEs</a>.</p>
-
diff --git a/docs/html/training/animation/cardflip.jd b/docs/html/training/animation/cardflip.jd
index 48fbbd8..721a9a3 100644
--- a/docs/html/training/animation/cardflip.jd
+++ b/docs/html/training/animation/cardflip.jd
@@ -2,98 +2,105 @@
 trainingnavtop=true
 
 @jd:body
-    <div id="tb-wrapper">
-      <div id="tb">
-        <h2>
-          This lesson teaches you to
-        </h2>
-        <ol>
-          <li>
-            <a href="#animators">Create the Animators</a>
-          </li>
-          <li>
-            <a href="#views">Create the Views</a>
-          </li>
-          <li>
-            <a href="#fragment">Create the Fragment</a>
-          </li>
-          <li>
-            <a href="#animate">Animate the Card Flip</a>
-          </li>
-        </ol>
-        <h2>
-          Try it out
-        </h2>
-        <div class="download-box">
-          <a href="{@docRoot}shareables/training/Animations.zip" class=
-          "button">Download the sample app</a>
-          <p class="filename">
-            Animations.zip
-          </p>
-        </div>
-      </div>
-    </div>
-    <p> This lesson shows you how to do a card flip
-      animation with custom fragment animations.
-      Card flips animate between views of content by showing an animation that emulates
-      a card flipping over. 
-    </p>
-    <p>Here's what a card flip looks like:
-    </p>
-
-    <div class="framed-galaxynexus-land-span-8">
-      <video class="play-on-hover" autoplay>
-        <source src="anim_card_flip.mp4" type="video/mp4">
-        <source src="anim_card_flip.webm" type="video/webm">
-        <source src="anim_card_flip.ogv" type="video/ogg">
-      </video>
-    </div>
-    <div class="figure-caption">
-      Card flip animation
-      <div class="video-instructions">&nbsp;</div>
-    </div>
-
-    <p>
-      If you want to jump ahead and see a full working example,
-      <a href="{@docRoot}shareables/training/Animations.zip">download</a> and
-      run the sample app and select the Card Flip example. See the following
-      files for the code implementation:
-    </p>
-    <ul>
-      <li>
-        <code>src/CardFlipActivity.java</code>
-      </li>
-      <li>
-        <code>animator/card_flip_right_in.xml</code>
-      </li>
-      <li>
-        <code>animator/card_flip_right_out.xml</code>
-      </li>
-      <li>
-        <code>animator/card_flip_left_in.xml</code>
-      </li>
-      <li>
-        <code>animator/card_flip_left_out.xml</code>
-      </li>
-      <li>
-        <code>layout/fragment_card_back.xml</code>
-      </li>
-      <li>
-        <code>layout/fragment_card_front.xml</code>
-      </li>
-    </ul>
-
-    <h2 id="animate">
-      Create the Animators
+<div id="tb-wrapper">
+  <div id="tb">
+    <h2>
+      This lesson teaches you to
     </h2>
-    <p>
-      Create the animations for the card flips. You'll need two animators for when the front
-      of the card animates out and to the left and in and from the left. You'll also need two animators
-      for when the back of the card animates in and from the right and out and to the right.
-    </p>
-    <h4>
-      card_flip_left_in.xml
-    </h4>
+    <ol>
+      <li>
+        <a href="#animators">Create the Animators</a>
+      </li>
+      <li>
+        <a href="#views">Create the Views</a>
+      </li>
+      <li>
+        <a href="#fragment">Create the Fragment</a>
+      </li>
+      <li>
+        <a href="#animate">Animate the Card Flip</a>
+      </li>
+    </ol>
+    <h2>
+      Try it out
+    </h2>
+    <div class="download-box">
+      <a href="{@docRoot}shareables/training/Animations.zip" class=
+      "button">Download the sample app</a>
+      <p class="filename">
+        Animations.zip
+      </p>
+    </div>
+  </div>
+</div>
+
+<p> This lesson shows you how to do a card flip
+  animation with custom fragment animations.
+  Card flips animate between views of content by showing an animation that emulates
+  a card flipping over.
+</p>
+
+<p>Here's what a card flip looks like:
+</p>
+
+<div class="framed-galaxynexus-land-span-8">
+  <video class="play-on-hover" autoplay>
+    <source src="anim_card_flip.mp4" type="video/mp4">
+    <source src="anim_card_flip.webm" type="video/webm">
+    <source src="anim_card_flip.ogv" type="video/ogg">
+  </video>
+</div>
+<div class="figure-caption">
+  Card flip animation
+  <div class="video-instructions">&nbsp;</div>
+</div>
+
+<p>
+  If you want to jump ahead and see a full working example,
+  <a href="{@docRoot}shareables/training/Animations.zip">download</a> and
+  run the sample app and select the Card Flip example. See the following
+  files for the code implementation:
+</p>
+
+<ul>
+  <li>
+    <code>src/CardFlipActivity.java</code>
+  </li>
+  <li>
+    <code>animator/card_flip_right_in.xml</code>
+  </li>
+  <li>
+    <code>animator/card_flip_right_out.xml</code>
+  </li>
+  <li>
+    <code>animator/card_flip_left_in.xml</code>
+  </li>
+  <li>
+    <code>animator/card_flip_left_out.xml</code>
+  </li>
+  <li>
+    <code>layout/fragment_card_back.xml</code>
+  </li>
+  <li>
+    <code>layout/fragment_card_front.xml</code>
+  </li>
+</ul>
+
+<h2 id="animate">
+  Create the Animators
+</h2>
+
+<p>
+  Create the animations for the card flips. You'll need two animators for when the front
+  of the card animates out and to the left and in and from the left. You'll also need two
+  animators for when the back of the card animates in and from the right and out and to the
+  right.
+</p>
+
+<h4 id="left-in">
+  card_flip_left_in.xml
+</h4>
+
 <pre>
 &lt;set xmlns:android="http://schemas.android.com/apk/res/android"&gt;
     &lt;!-- Before rotating, immediately set the alpha to 0. --&gt;
@@ -120,10 +127,12 @@
         android:duration="1" /&gt;
 &lt;/set&gt;
 </pre>
-    <h4>
-      card_flip_left_out.xml
-    </h4>
-    <pre>
+
+<h4 id="left-out">
+  card_flip_left_out.xml
+</h4>
+
+<pre>
 &lt;set xmlns:android="http://schemas.android.com/apk/res/android"&gt;
     &lt;!-- Rotate. --&gt;
     &lt;objectAnimator
@@ -141,11 +150,13 @@
         android:startOffset="@integer/card_flip_time_half"
         android:duration="1" /&gt;
 &lt;/set&gt;
-    </pre>
-    <h4>
-      card_flip_right_in.xml
-    </h4>
-    <pre>
+</pre>
+
+<h4 id="right-in">
+  card_flip_right_in.xml
+</h4>
+
+<pre>
 &lt;set xmlns:android="http://schemas.android.com/apk/res/android"&gt;
     &lt;!-- Before rotating, immediately set the alpha to 0. --&gt;
     &lt;objectAnimator
@@ -169,13 +180,14 @@
         android:propertyName="alpha"
         android:startOffset="@integer/card_flip_time_half"
         android:duration="1" /&gt;
-</set>
-
+&lt;/set&gt;
 </pre>
-    <h4>
-      card_flip_right_out.xml
-    </h4>
-    <pre>
+
+<h4  id="right-out">
+  card_flip_right_out.xml
+</h4>
+
+<pre>
 &lt;set xmlns:android="http://schemas.android.com/apk/res/android"&gt;
     &lt;!-- Rotate. --&gt;
     &lt;objectAnimator
@@ -194,17 +206,18 @@
         android:duration="1" /&gt;
 &lt;/set&gt;
 </pre>
-    <h2 id="views">
-      Create the Views
-    </h2>
-    <p>
-      Each side of the "card" is a separate layout that can contain any content you want,
-      such as two screens of text, two images, or any combination of views to flip between. You'll then
-      use the two layouts in the fragments that you'll later animate. The following layouts
-      create one side of a card that shows text:
-    </p>
 
-    <pre>
+<h2 id="views">
+  Create the Views
+</h2>
+<p>
+  Each side of the "card" is a separate layout that can contain any content you want,
+  such as two screens of text, two images, or any combination of views to flip between. You'll then
+  use the two layouts in the fragments that you'll later animate. The following layouts
+  create one side of a card that shows text:
+</p>
+
+<pre>
 &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
@@ -232,9 +245,11 @@
 
 &lt;/LinearLayout&gt;
 </pre>
+
 <p>
 and the other side of the card that displays an {@link android.widget.ImageView}:
 </p>
+
 <pre>
 &lt;ImageView xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
@@ -243,17 +258,20 @@
     android:scaleType="centerCrop"
     android:contentDescription="@string/description_image_1" /&gt;
 </pre>
-    <h2 id="fragment">
-      Create the Fragment
-    </h2>
-    <p>
-      Create fragment classes for the front and back of the card. These classes return the layouts
-      that you created previously in the {@link android.app.Fragment#onCreateView onCreateView()} method
-      of each fragment. You can then create instances of this fragment in the parent activity
-      where you want to show the card. The following example shows nested fragment classes inside
-      of the parent activity that uses them:
-    </p>
-    <pre>
+
+<h2 id="fragment">
+  Create the Fragment
+</h2>
+
+<p>
+  Create fragment classes for the front and back of the card. These classes return the layouts
+  that you created previously in the {@link android.app.Fragment#onCreateView onCreateView()} method
+  of each fragment. You can then create instances of this fragment in the parent activity
+  where you want to show the card. The following example shows nested fragment classes inside
+  of the parent activity that uses them:
+</p>
+
+<pre>
 public class CardFlipActivity extends Activity {
     ...
     /**
@@ -279,28 +297,27 @@
     }
 }
 </pre>
-    <h2 id="animate">
-      Animate the Card Flip
-    </h2>
 
-    <p> Now, you'll need to display the fragments inside of a parent activity.
-    To do this, first create the layout for your activity. The following example creates a
-    {@link android.widget.FrameLayout} that you
-    can add fragments to at runtime:</p>
+<h2 id="animate">
+  Animate the Card Flip
+</h2>
 
-    <pre>
+<p> Now, you'll need to display the fragments inside of a parent activity.
+To do this, first create the layout for your activity. The following example creates a
+{@link android.widget.FrameLayout} that you
+can add fragments to at runtime:</p>
+
+<pre>
 &lt;FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@+id/container"
     android:layout_width="match_parent"
     android:layout_height="match_parent" /&gt;
 </pre>
 
-    <p>In the activity code, set the content view to be the layout that you just created. It's also
-      good idea to show a default fragment when the activity is created, so the following example
-      activity shows you how to display the front of the card by default:
-    </p>
-
-
+<p>In the activity code, set the content view to be the layout that you just created. It's also
+  good idea to show a default fragment when the activity is created, so the following example
+  activity shows you how to display the front of the card by default:
+</p>
 
 <pre>
 public class CardFlipActivity extends Activity {
@@ -320,22 +337,25 @@
     ...
 }
 </pre>
-    <p>
-      Now that you have the front of the card showing, you can show the back of the card
-      with the flip animation at an appropriate time. Create a method to show the other
-      side of the card that does the following things:
-    </p>
-    <ul>
-      <li>Sets the custom animations that you created earlier for the fragment transitions.
-      </li>
-      <li>Replaces the currently displayed fragment with a new fragment and animates this event
-      with the custom animations that you created.
-      </li>
-      <li>Adds the previously displayed fragment to the fragment back stack
-      so when the user presses the <em>Back</em> button, the card flips back over.
-      </li>
-    </ul>
-    <pre>
+
+<p>
+  Now that you have the front of the card showing, you can show the back of the card
+  with the flip animation at an appropriate time. Create a method to show the other
+  side of the card that does the following things:
+</p>
+
+<ul>
+  <li>Sets the custom animations that you created earlier for the fragment transitions.
+  </li>
+  <li>Replaces the currently displayed fragment with a new fragment and animates this event
+  with the custom animations that you created.
+  </li>
+  <li>Adds the previously displayed fragment to the fragment back stack
+  so when the user presses the <em>Back</em> button, the card flips back over.
+  </li>
+</ul>
+
+<pre>
 private void flipCard() {
     if (mShowingBack) {
         getFragmentManager().popBackStack();
@@ -346,27 +366,30 @@
 
     mShowingBack = true;
 
-    // Create and commit a new fragment transaction that adds the fragment for the back of
-    // the card, uses custom animations, and is part of the fragment manager's back stack.
+    // Create and commit a new fragment transaction that adds the fragment for
+    // the back of the card, uses custom animations, and is part of the fragment
+    // manager's back stack.
 
     getFragmentManager()
             .beginTransaction()
 
-            // Replace the default fragment animations with animator resources representing
-            // rotations when switching to the back of the card, as well as animator
-            // resources representing rotations when flipping back to the front (e.g. when
-            // the system Back button is pressed).
+            // Replace the default fragment animations with animator resources
+            // representing rotations when switching to the back of the card, as
+            // well as animator resources representing rotations when flipping
+            // back to the front (e.g. when the system Back button is pressed).
             .setCustomAnimations(
-                    R.animator.card_flip_right_in, R.animator.card_flip_right_out,
-                    R.animator.card_flip_left_in, R.animator.card_flip_left_out)
+                    R.animator.card_flip_right_in,
+                    R.animator.card_flip_right_out,
+                    R.animator.card_flip_left_in,
+                    R.animator.card_flip_left_out)
 
-            // Replace any fragments currently in the container view with a fragment
-            // representing the next page (indicated by the just-incremented currentPage
-            // variable).
+            // Replace any fragments currently in the container view with a
+            // fragment representing the next page (indicated by the
+            // just-incremented currentPage variable).
             .replace(R.id.container, new CardBackFragment())
 
-            // Add this transaction to the back stack, allowing users to press Back
-            // to get to the front of the card.
+            // Add this transaction to the back stack, allowing users to press
+            // Back to get to the front of the card.
             .addToBackStack(null)
 
             // Commit the transaction.
diff --git a/docs/html/training/app-indexing/deep-linking.jd b/docs/html/training/app-indexing/deep-linking.jd
index fc67b26..2c4a131 100644
--- a/docs/html/training/app-indexing/deep-linking.jd
+++ b/docs/html/training/app-indexing/deep-linking.jd
@@ -66,10 +66,10 @@
               android:host="www.example.com"
               android:pathPrefix="/gizmos" /&gt;
         &lt;!-- note that the leading "/" is required for pathPrefix--&gt;
-        &lt;!-- Accepts URIs that begin with "example://gizmos”
+        &lt;!-- Accepts URIs that begin with "example://gizmos” --&gt;
         &lt;data android:scheme="example"
               android:host="gizmos" /&gt;
-        --&gt;
+        
     &lt;/intent-filter&gt;
 &lt;/activity&gt;
 </pre>
diff --git a/docs/html/training/app-indexing/index.jd b/docs/html/training/app-indexing/index.jd
index 15a6367..a1a47e9 100644
--- a/docs/html/training/app-indexing/index.jd
+++ b/docs/html/training/app-indexing/index.jd
@@ -22,6 +22,7 @@
 target="_blank">App Indexing for Google Search</a></li>
 <li><a href="{@docRoot}guide/components/intents-filters.html">Intents and Intent
 Filters</a></li>
+<li><a href="{@docRoot}tools/help/app-link-indexing.html">Deep Link and App Indexing API Support in Android Studio</a></li>
 </ul>
 </div>
 </div>
diff --git a/docs/html/training/app-links/index.jd b/docs/html/training/app-links/index.jd
new file mode 100644
index 0000000..27b6480
--- /dev/null
+++ b/docs/html/training/app-links/index.jd
@@ -0,0 +1,585 @@
+page.title=Handling App Links
+page.image=images/cards/card-app-linking_2x.png
+page.keywords=applinking, deeplinks, intents
+page.tags=androidm,marshmallow
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+    <h2>This lesson teaches you to</h2>
+    <ol>
+        <li><a href="#url-handling">Understand URI Request Handling</a> </li>
+        <li><a href="#intent-handler">Create an Intent Handler for URIs</a></li>
+        <li><a href="#request-verify">Request App Links Verification</a></li>
+        <li><a href="#web-assoc">Declare Website Associations</a></li>
+        <li><a href="#testing">Test App Links</a></li>
+    </ol>
+  <h2>See also</h2>
+  <ol>
+    <li><a href="{@docRoot}tools/help/app-link-indexing.html">Deep Link and App Indexing API Support in Android Studio</a></li>
+  </ol>
+  </div>
+</div>
+
+
+
+<p>
+  Users following web links on devices are frequently presented with confusing choices. Tapping a
+  link often results in the system asking the user which app should handle that link. For example,
+  clicking a URI in an email from a bank might result in a dialog asking the user whether to use
+  the browser, or the bank's own app, to open the link. Android 6.0 (API level 23) and higher allow
+  an app to designate itself as the default handler of a given type of link. If the user doesn't
+  want the app to be the default handler, they can override this behavior from
+  <strong>Settings</strong>.
+</p>
+
+<p>
+  Automatic handling of links requires the cooperation of app developers and website owners.
+  A developer must configure their app to declare associations with one or more websites, and to
+  request that the system verify those associations. A website owner must, in turn, provide
+  that verification by publishing a <a href="http://developers.google.com/digital-asset-links/"><i>Digital
+  Asset Links</i></a> file. The general steps for creating verified app links are as follows:
+</p>
+
+<ol>
+  <li>In your app manifest, create intent filters for your website URIs.</li>
+  <li>Configure your app to request verification of app links.</li>
+  <li>Publish a Digital Asset Links JSON file on your websites to provide verification.</li>
+</ol>
+
+<h2 id="url-handling">Understand URI Request Handling</h2>
+
+<p>
+  The app links feature allows your app to become the default handler for the website URIs you
+  specify, as long as the user has not already chosen a default app to handle that URI pattern.
+  When a clicked link or programmatic request invokes a web URI intent, the Android system
+  uses the following criteria, in descending order, to determine how to handle the request:
+</p>
+
+<ol>
+  <li>
+    <strong>The user has set app link associations</strong>: If the user has designated an app to
+    handle app links, the system passes the web URI request to that app. A user can set this
+    association in one of two ways: clicking <strong>Always</strong> when selecting an app
+    from an app-selection dialog; or, opening <em>Settings &gt; Apps &gt; (gear icon)
+    &gt; App links</em>, selecting an app to use, and setting the app's
+    <strong>App links</strong> property to the <strong>Open in this app</strong> option.
+  </li>
+
+  <li>
+    <strong>The user has set no association, and there is one supporting app</strong>: If the user
+    has not set a preference that matches the web URI request, and there is only one app declaring
+    support for the intent’s URI pattern, the system automatically passes the request to that app.
+  </li>
+
+  <li>
+    <strong>The user has set no association, and there are multiple supporting apps</strong>: If
+    there are multiple apps declaring support for the web URI pattern, the system displays an
+    app-selection dialog, prompting the user to select the most appropriate app.
+  </li>
+</ol>
+
+<p>
+  In case 2, if the user has newly installed the app, and the system has
+  verified it as a handler for this type of link, the system sets the app as the default handler. In
+  the other two cases, the presence of a verified app link handler has no effect on system behavior.
+</p>
+
+
+<h2 id="intent-handler">Create an Intent Handler for URIs</h2>
+
+<p>
+  App links are based on the <a href="{@docRoot}guide/components/intents-filters.html">Intent</a>
+  framework, which enables apps to handle requests from the system or other apps. Multiple apps may
+  declare the same web link URI patterns in their intent filters. When a user clicks on a web link
+  that does not have a default launch handler, the platform selects an app to handle the request,
+  using the criteria described in <a href="#url-handling">Understanding URI Request Handling</a>.
+</p>
+
+<p>
+  To enable your app to handle links, use intent filters in your app manifest to declare the URI
+  patterns that your app handles. The following example shows an intent filter that can
+  handle links to {@code http://www.android.com} and {@code https://www.android.com}:
+</p>
+
+<pre>
+&lt;activity ...&gt;
+    &lt;intent-filter&gt;
+        &lt;action android:name="android.intent.action.VIEW" /&gt;
+        &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+        &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+        &lt;data android:scheme="http" /&gt;
+        &lt;data android:scheme="https" /&gt;
+        &lt;data android:host="www.android.com" /&gt;
+    &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>
+  As this example shows, intent filters for app links must declare an {@code android:scheme}
+  value of {@code http}, {@code https}, or both. The filter must not declare
+  any other schemes. The filter must also include the {@code android.intent.action.VIEW} and
+  {@code android.intent.category.BROWSABLE} category names.
+</p>
+
+<p>
+  This manifest declaration defines the connection between your app and a website. However, in
+  order to have the system treat your app as the default handler for a set of URIs, you must
+  also request that the system verify this connection.
+  The next section explains how to implement this verification.
+</p>
+
+
+<h2 id="request-verify">Request App Links Verification</h2>
+
+<p>
+  In addition to using intent filters to declare an association between your app and a website,
+  your manifest must also include an additional declaration for requesting automatic verification.
+  When this declaration is present, the Android system attempts to verify your app after
+  installation. If the verification succeeds, and the user has not set an alternate
+  preference for handling your website URIs, the system automatically routes those URI requests to
+  your app.
+</p>
+
+<p>
+  The system performs app-link verifications by comparing the host names in the data elements of
+  the app’s intent filters against the Digital Asset Links files ({@code assetlinks.json}) hosted
+  on the respective web domains. To enable the system to verify a host, make sure that your intent
+  filter declarations include the {@code android.intent.action.VIEW} intent action and {@code
+  android.intent.category.BROWSABLE} intent category.
+</p>
+
+
+<h3 id="config-verify">Enabling automatic verification</h3>
+
+<p>
+  To enable link handling verification for your app, set the {@code android:autoVerify} attribute to
+  {@code true} on at least one of the web URI intent filters in your app manifest, as shown in the
+  following manifest code snippet:
+</p>
+
+<pre>
+&lt;activity ...&gt;
+
+    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
+        &lt;action android:name="android.intent.action.VIEW" /&gt;
+        &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+        &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+        &lt;data android:scheme="http" android:host="www.android.com" /&gt;
+        &lt;data android:scheme="https" android:host="www.android.com" /&gt;
+    &lt;/intent-filter&gt;
+
+&lt;/activity&gt;
+</pre>
+
+<p>
+  When the {@code android:autoVerify} attribute is present, installing your app causes the system
+  to attempt to verify all hosts associated with the web URIs in all of your app's intent filters.
+  The system treats your app as the default handler for the specified URI pattern only if it
+  successfully verifies <em>all</em> app link patterns declared in your manifest.
+</p>
+
+
+<h3 id="multi-host">Supporting app linking for multiple hosts</h3>
+
+<p>
+  The system must be able to verify every host specified in the app’s web URI intent filters’ data
+  elements against the Digital Asset Links files hosted on the respective web domains. If any
+  verification fails, the app is not verified to be a default handler for any of the web URI
+  patterns defined in the app's intent filters. For example, an app with the following intent
+  filters would fail verification if an {@code assetlinks.json} file were not found at both
+  {@code https://www.domain1.com/.well-known/assetlinks.json} and
+  {@code https://www.domain2.com/.well-known/assetlinks.json}:
+</p>
+
+<pre>
+&lt;application&gt;
+
+  &lt;activity android:name=”MainActivity”&gt;
+    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
+      &lt;action android:name="android.intent.action.VIEW" /&gt;
+      &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+      &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+      &lt;data android:scheme="http" android:host="www.domain1.com" /&gt;
+      &lt;data android:scheme="https" android:host="www.domain1.com" /&gt;
+    &lt;/intent-filter&gt;
+  &lt;/activity&gt;
+  &lt;activity android:name=”SecondActivity”&gt;
+    &lt;intent-filter&gt;
+      &lt;action android:name="android.intent.action.VIEW" /&gt;
+      &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+      &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+      &lt;data android:scheme="https" android:host="www.domain2.com" /&gt;
+    &lt;/intent-filter&gt;
+  &lt;/activity&gt;
+
+&lt;/application
+</pre>
+
+
+<h3 id="multi-subdomain">Supporting app linking for multiple subdomains</h3>
+
+<p>
+  The Digital Asset Links protocol treats subdomains as unique, separate hosts. If your intent
+  filter lists both the {@code www.example.com} and {@code mobile.example.com} subdomains as
+  hosts, you must host a separate {@code assetlink.json} file on each subdomain. For example, an
+  app with the following intent filter declaration would pass verification only if the website
+  owner published valid {@code assetlinks.json} files at both
+  {@code https://www.example.com/.well-known/assetlinks.json} and
+  {@code https://mobile.example.com/.well-known/assetlinks.json}:
+</p>
+
+<pre>
+&lt;application&gt;
+  &lt;activity android:name=”MainActivity”&gt;
+    &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
+      &lt;action android:name="android.intent.action.VIEW" /&gt;
+      &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+      &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+      &lt;data android:scheme="http" android:host="www.example.com" /&gt;
+      &lt;data android:scheme="https" android:host="mobile.example.com" /&gt;
+    &lt;/intent-filter&gt;
+  &lt;/activity&gt;
+&lt;/application&gt;
+</pre>
+
+
+<h2 id="web-assoc">Declare Website Associations</h2>
+
+<p>
+  For app link verification to be successful, website owners must declare associations
+  with apps. A site owner declares the relationship to an app by hosting a Digital Asset Links JSON
+  file, with the name {@code assetlinks.json}, at the following well-known location on the domain:
+</p>
+
+<pre>
+https://<em>domain</em>[:<em>optional_port</em>]/.well-known/assetlinks.json
+</pre>
+
+<p class="note">
+  <strong>Important:</strong> The system verifies the JSON file via the encrypted HTTPS protocol.
+  Make sure that your hosted file is accessible over an HTTPS connection, regardless of whether
+  your app's intent filter includes {@code https}.
+</p>
+
+<p>
+  A Digital Asset Links JSON file indicates the Android apps that are associated with the website.
+  The JSON file uses the following fields to identify associated apps:
+</p>
+
+<ul>
+  <li>{@code package_name}: The package name declared in the app's manifest.</li>
+
+  <li>{@code sha256_cert_fingerprints}: The SHA256 fingerprints of your app’s signing certificate.
+    You can use the following command to generate the fingerprint via the Java keytool:
+
+    <pre class="no-pretty-print">
+$ keytool -list -v -keystore my-release-key.keystore
+    </pre>
+
+    This field supports multiple fingerprints, which can be used to support different versions
+    of your app, such as debug and production builds.
+  </li>
+</ul>
+
+<p>
+  The following example {@code assetlinks.json} file grants link-opening rights to a
+  {@code com.example} Android app:
+</p>
+
+<pre>
+[{
+  "relation": ["delegate_permission/common.handle_all_urls"],
+  "target": {
+    "namespace": "android_app",
+    "package_name": "com.example",
+    "sha256_cert_fingerprints":
+    ["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"]
+  }
+}]
+</pre>
+
+
+<h3 id="multiple-apps">Associating a website with multiple apps</h3>
+
+<p>
+  A website can declare associations with multiple apps within the same {@code assetlinks.json}
+  file. The following file listing shows an example of a statement file that declares association
+  with two apps, separately, and resides at
+  <code>https://www.example.com/.well-known/assetlinks.json</code>:
+</p>
+
+<pre>
+[{
+  "relation": ["delegate_permission/common.handle_all_urls"],
+  "target": {
+    "namespace": "android_app",
+    "package_name": <strong>"example.com.puppies.app"</strong>,
+    "sha256_cert_fingerprints":
+    ["<strong>14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5</strong>"]
+  }
+  },
+  {
+  "relation": ["delegate_permission/common.handle_all_urls"],
+  "target": {
+    "namespace": "android_app",
+    "package_name": "<strong>example.com.monkeys.app</strong>",
+    "sha256_cert_fingerprints":
+    ["<strong>14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5</strong>"]
+  }
+}]
+</pre>
+
+<p>
+  Different apps may handle links for different resources under the same web host. For example,
+  app1 may declare an intent filter for {@code https://example.com/articles}, and app2 may declare
+  an intent filter for {@code https://example.com/videos}.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> Multiple apps associated with a domain may be signed with the same or
+  different certificates.
+</p>
+
+
+<h3 id="multi-site">Associating multiple websites with a single app</h3>
+
+<p>
+  Multiple websites can declare associations with the same app in their respective {@code
+  assetlinks.json} files. The following file listings show an example of how to declare the
+  association of domain1 and domain2 with app1. The first listing shows the association of
+  domain1 with app1:
+</p>
+
+<pre>
+https://www.domain1.com/.well-known/assetlinks.json
+
+[{
+  "relation": ["delegate_permission/common.handle_all_urls"],
+  "target": {
+    "namespace": "android_app",
+    "package_name": "<strong>com.mycompany.app1</strong>",
+    "sha256_cert_fingerprints":
+    ["<strong>14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5</strong>"]
+  }
+}]
+</pre>
+
+<p>The next listing shows the association of domain2 with app1. Only the very last line, which
+specifies the URL, is different:</p>
+
+<pre>
+https://www.domain2.com/.well-known/assetlinks.json
+
+[{
+  "relation": ["delegate_permission/common.handle_all_urls"],
+  "target": {
+    "namespace": "android_app",
+    "package_name": "<strong>com.mycompany.app1</strong>",
+    "sha256_cert_fingerprints":
+    ["<strong>14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5</strong>"]
+  }
+}]
+</pre>
+
+<h2 id="testing">Test App Links</h2>
+
+<p>
+  When implementing the app linking feature, you should test the linking functionality to
+  make sure the system can associate your app with your websites, and handle URI requests,
+  as you expect.
+</p>
+
+
+<h3 id="test-hosts">Confirm the list of hosts to verify</h3>
+
+<p>
+  When testing, you should confirm the list of associated hosts that the system should verify
+  for your app. Make a list of all web URIs whose corresponding intent filters include the following
+  attributes and elements:
+</p>
+
+<ul>
+  <li>{@code android:scheme} attribute with a value of {@code http} or {@code https}
+  </li>
+  <li>{@code android:host} attribute with a domain URI pattern
+  </li>
+  <li>{@code android.intent.action.VIEW} category element
+  </li>
+  <li>{@code android.intent.category.BROWSABLE} category element
+  </li>
+</ul>
+
+<p>
+  Use this list to check that a Digital Asset Links JSON file is provided on each named host
+  and subdomain.
+</p>
+
+
+<h3 id="test-dal-files">Confirm the Digital Asset Links files</h3>
+
+<p>
+  For each website, use the Digital Asset Links API to confirm that the Digital Asset Links JSON
+  file is properly hosted and defined:
+</p>
+
+<pre>
+https://digitalassetlinks.googleapis.com/v1/statements:list?
+   source.web.site=https://<strong>&lt;domain1&gt;:&lt;port&gt;</strong>&amp;
+   relation=delegate_permission/common.handle_all_urls
+</pre>
+
+
+<h3 id="test-intent">Testing a web URI intent</h3>
+
+<p>
+  Once you have confirmed the list of websites to associate with your app, and you have confirmed
+  that the hosted JSON file is valid, install the app on your device. Wait at least 20 seconds for
+  the asynchronous verification process to complete. Use the following command to check
+  whether the system verified your app and set the correct link handling policies:
+</p>
+
+<pre>
+adb shell am start -a android.intent.action.VIEW \
+    -c android.intent.category.BROWSABLE \
+    -d "http://&lt;domain1&gt;:&lt;port&gt;"
+</pre>
+
+
+<h3 id="check-link-policies">Check link policies</h3>
+
+<p>
+  As part of your testing process, you can check the current system settings for link handling.
+  Use the following command to get a listing of existing link-handling policies for all
+  applications:
+</p>
+
+<pre>
+adb shell dumpsys package domain-preferred-apps
+ --or--
+adb shell dumpsys package d
+</pre>
+
+<p class="note">
+  <strong>Note:</strong> Make sure you wait at least 20 seconds after installation of your app to
+  allow for the system to complete the verification process.
+</p>
+
+<p>
+  The command returns a listing of each user or profile defined on the device,
+  preceded by a header in the following format:
+</p>
+
+<pre>
+App linkages for user 0:
+</pre>
+
+<p>
+  Following this header, the output uses the following format to list the link-handling settings
+  for that user:
+</p>
+
+<pre>
+Package: com.android.vending
+Domains: play.google.com market.android.com
+Status: always : 200000002
+</pre>
+
+<p>This listing indicates which apps are associated with which domains for that user:</p>
+
+<ul>
+  <li>{@code Package} - Identifies an app by its package name, as declared in its manifest.
+  </li>
+  <li>{@code Domains} - Shows the full list of hosts whose web links this app handles, using
+  blank spaces as delimiters.
+  </li>
+  <li>{@code Status} - Shows the current link-handling setting for this app. An app that has
+  passed verification, and whose manifest contains {@code android:autoVerify="true"}, shows a status
+  of {@code always}. The hexadecimal number after this status is related to the Android system's
+  record of the user’s app linkage preferences. This value does not indicate whether verification
+  succeeded.
+  </li>
+</ul>
+
+<p class="note">
+  <strong>Note:</strong> If a user changes the app link settings for an app before verification
+  is complete, you may see a false positive for a successful verification, even though
+  verification has failed. This verification failure, however, does not matter if the user
+  explicitly enabled the app to open supported links without asking. This is because
+  user preferences take precedence over programmatic verification (or lack of it). As a result,
+  the link goes directly to your app, without showing a dialog, just as if verification had
+  succeeded.
+</p>
+
+
+
+<h3 id="test-example">Test example</h3>
+
+<p>
+  For app link verification to succeed, the system must be able to verify your app with all of
+  the websites that you specify in your app’s intent filters, and that meet the criteria for app
+  links. The following example shows a manifest configuration with several app links defined:
+</p>
+
+<pre>
+&lt;application&gt;
+
+    &lt;activity android:name=”MainActivity”&gt;
+        &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
+            &lt;action android:name="android.intent.action.VIEW" /&gt;
+            &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+            &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+            &lt;data android:scheme="http" android:host="www.example.com" /&gt;
+            &lt;data android:scheme="https" android:host="mobile.example.com" /&gt;
+        &lt;/intent-filter&gt;
+        &lt;intent-filter&gt;
+            &lt;action android:name="android.intent.action.VIEW" /&gt;
+            &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+            &lt;data android:scheme="http" android:host="www.example2.com" /&gt;
+        &lt;/intent-filter&gt;
+    &lt;/activity&gt;
+
+    &lt;activity android:name=”SecondActivity”&gt;
+        &lt;intent-filter&gt;
+            &lt;action android:name="android.intent.action.VIEW" /&gt;
+            &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+            &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+            &lt;data android:scheme="http" android:host="account.example.com" /&gt;
+        &lt;/intent-filter&gt;
+    &lt;/activity&gt;
+
+      &lt;activity android:name=”ThirdActivity”&gt;
+        &lt;intent-filter&gt;
+            &lt;action android:name="android.intent.action.VIEW" /&gt;
+            &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+            &lt;data android:scheme="http" android:host="map.example.com" /&gt;
+        &lt;/intent-filter&gt;
+        &lt;intent-filter&gt;
+            &lt;action android:name="android.intent.action.VIEW" /&gt;
+            &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+            &lt;data android:scheme="market" android:host="example.com" /&gt;
+        &lt;/intent-filter&gt;
+      &lt;/activity&gt;
+
+&lt;/application&gt;
+</pre>
+
+<p>
+  The list of hosts that the platform would attempt to verify from the above manifest is:
+</p>
+
+<pre>
+www.example.com
+mobile.example.com
+www.example2.com
+account.example.com
+</pre>
+
+<p>
+  The list of hosts that the platform would not attempt to verify from the above manifest is:
+</p>
+
+<pre>
+map.example.com (it does not have android.intent.category.BROWSABLE)
+market://example.com (it does not have either an “http” or “https” scheme)
+</pre>
diff --git a/docs/html/training/appbar/action-views.jd b/docs/html/training/appbar/action-views.jd
new file mode 100644
index 0000000..37d8a51
--- /dev/null
+++ b/docs/html/training/appbar/action-views.jd
@@ -0,0 +1,248 @@
+page.title=Action Views and Action Providers
+page.tags="action view", "action provider"
+helpoutsWidget=true
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+
+    <h2>This lesson teaches you to</h2>
+
+    <ol>
+      <li><a href="#action-view">Add an Action View</a></li>
+      <li><a href="#action-provider">Add an Action Provider</a></li>
+    </ol>
+
+<!--
+    <h2>Useful Resources</h2>
+    <ul>
+      <li></li>
+    </ul>
+-->
+
+  </div>
+</div>
+
+<p>
+  The <a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7
+  appcompat</a> support library {@link android.support.v7.widget.Toolbar} provides several
+  different ways for users to interact with your app. Previous lessons
+  described how to define an <em>action</em>, which can be either a button or a
+  menu item. This lesson describes how to add two versatile components:
+</p>
+
+<ul>
+  <li>An <em>action view</em> is an action that provides rich functionality
+  within the app bar. For example, a search action view allows the user to type
+  their search text in the app bar, without having to change activities or
+  fragments.
+  </li>
+
+  <li>An <em>action provider</em> is an action with its own customized layout.
+  The action initially appears as a button or menu item, but when the user clicks the
+  action, the action provider controls the action's behavior in any way you
+  want to define. For example, the action provider might respond to a click by
+  displaying a menu.
+  </li>
+</ul>
+
+<p>
+  The Android support libraries provide several specialized action view and
+  action provider widgets. For example, the {@link
+  android.support.v7.widget.SearchView} widget implements an action view for
+  entering search queries, and the {@link
+  android.support.v7.widget.ShareActionProvider} widget implements an action
+  provider for
+  sharing information with other apps. You can also define your own action
+  views and action providers.
+</p>
+
+<h2 id="action-view">
+  Add an Action View
+</h2>
+
+<p>
+  To add an action view, create an <a href=
+  "{@docRoot}guide/topics/resources/menu-resource.html#item-element"><code>&lt;item&gt;</code></a>
+  element in the toolbar's menu resource, as <a href="actions.html">Add Action
+  Buttons</a> describes. Add one of the following two
+  attributes to the <a href=
+  "{@docRoot}guide/topics/resources/menu-resource.html#item-element"><code>&lt;item&gt;</code></a>
+  element:
+</p>
+
+<ul>
+  <li>
+    <code>actionViewClass</code>: The class of a widget that implements the
+    action.
+  </li>
+
+  <li>
+    <code>actionLayout</code>: A layout resource describing the action's
+    components.
+  </li>
+</ul>
+
+<p>
+  Set the <code>showAsAction</code> attribute to either
+  <code>"ifRoom|collapseActionView"</code> or
+  <code>"never|collapseActionView"</code>. The <code>collapseActionView</code>
+  flag indicates how to display the widget when the user is not interacting with
+  it: If the widget is on the app bar, the app should display the widget as an
+  icon. If the widget is in the overflow menu, the app should display the widget
+  as a menu item. When the user interacts with the action view, it
+  expands to fill the app bar.
+</p>
+
+<p>
+  For example, the following code adds a {@link
+  android.support.v7.widget.SearchView} widget to the app bar:
+</p>
+
+<pre>
+&lt;item android:id="&#64;+id/action_search"
+     android:title="&#64;string/action_search"
+     android:icon="&#64;drawable/ic_search"
+     <strong>app:showAsAction="ifRoom|collapseActionView"</strong>
+     <strong>app:actionViewClass="android.support.v7.widget.SearchView" /&gt;</strong>
+</pre>
+
+<p>
+  If the user is not interacting with the widget, the app displays the widget
+  as the icon specified by <code>android:icon</code>. (If there is not enough
+  room in the app bar, the app adds the action to the overflow menu.) When the
+  user taps the icon or menu item, the widget expands to fill the toolbar,
+  allowing the user to interact with it.
+</p>
+
+<img src="{@docRoot}images/training/appbar/action_view_2x.png"
+    srcset="{@docRoot}images/training/appbar/action_view.png 1x,
+        {@docRoot}images/training/appbar/action_view_2x.png 2x"
+    alt="" width="400" id="figure-action-view">
+<p class="img-caption">
+  <strong>Figure 1.</strong> When the user clicks an action view's icon, the
+  view's UI fills the toolbar.
+</p>
+
+<p>
+  If you need to configure the action, do so in your activity's {@link
+  android.app.Activity#onCreateOptionsMenu onCreateOptionsMenu()} callback. You
+  can get the action view's object reference by calling the static {@link
+  android.support.v4.view.MenuItemCompat#getActionView getActionView()} method.
+  For example, the following code gets the object reference for the {@link
+  android.support.v7.widget.SearchView} widget defined in the previous code
+  example:
+</p>
+
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu) {
+    getMenuInflater().inflate(R.menu.main_activity_actions, menu);
+
+    <strong>MenuItem searchItem = menu.findItem(R.id.action_search);</strong>
+    <strong>SearchView searchView =
+            (SearchView) MenuItemCompat.getActionView(searchItem);</strong>
+
+    // Configure the search info and add any event listeners...
+
+    return super.onCreateOptionsMenu(menu);
+}
+</pre>
+<h3 id="view-expansion">Responding to action view expansion</h3>
+
+<p>
+  If the action's <a href=
+  "{@docRoot}guide/topics/resources/menu-resource.html#item-element"><code>&lt;item&gt;</code></a>
+  element has a <code>collapseActionView</code> flag, the app displays the action
+  view as an icon until the user interacts with the action view.
+  When the user clicks on the icon, the built-in handler for {@link
+  android.app.Activity#onOptionsItemSelected onOptionsItemSelected()} expands
+  the action view. If your activity subclass overrides the {@link
+  android.app.Activity#onOptionsItemSelected onOptionsItemSelected()} method,
+  your override method must call {@link android.app.Activity#onOptionsItemSelected
+  super.onOptionsItemSelected()} so the superclass can expand the action view.
+</p>
+
+<p>
+  If you want to do something when the action is expanded or collapsed, you can
+  define a class that implements
+  {@link android.view.MenuItem.OnActionExpandListener}, and pass a member of
+  that class to
+  {@link android.view.MenuItem#setOnActionExpandListener
+  setOnActionExpandListener()}. For example, you might want to update the
+  activity based on whether an action view is expanded or collapsed. The
+  following snippet shows how to define and pass a listener:
+</p>
+<pre>
+&#64;Override
+public boolean onCreateOptionsMenu(Menu menu) {
+    getMenuInflater().inflate(R.menu.options, menu);
+    // ...
+
+    // Define the listener
+    OnActionExpandListener expandListener = new OnActionExpandListener() {
+        &#64;Override
+        public boolean onMenuItemActionCollapse(MenuItem item) {
+            // Do something when action item collapses
+            return true;  // Return true to collapse action view
+        }
+
+        &#64;Override
+        public boolean onMenuItemActionExpand(MenuItem item) {
+            // Do something when expanded
+            return true;  // Return true to expand action view
+        }
+    };
+
+    // Get the MenuItem for the action item
+    MenuItem actionMenuItem = menu.findItem(R.id.myActionItem);
+
+    // Assign the listener to that action item
+    MenuItemCompat.setOnActionExpandListener(actionMenuItem, expandListener);
+
+    // Any other things you have to do when creating the options menu…
+
+    return true;
+}
+</pre>
+
+<h2 id="action-provider">
+  Add an Action Provider
+</h2>
+
+<p>
+  To declare an action provider, create an <a href=
+  "{@docRoot}guide/topics/resources/menu-resource.html#item-element"><code>&lt;item&gt;</code></a>
+  element in the toolbar's menu resource, as described in <a href=
+  "actions.html">Add Action Buttons</a>. Add an
+  <code>actionProviderClass</code> attribute, and set it to the fully qualified
+  class name for the action provider class.
+</p>
+
+<p>
+  For example, the following code declares a {@link
+  android.support.v7.widget.ShareActionProvider}, which is a widget defined in
+  the support library that allows your app to share data with other apps:
+</p>
+
+<pre>
+&lt;item android:id="&#64;+id/action_share"
+    android:title="&#64;string/share"
+    app:showAsAction="ifRoom"
+    app:actionProviderClass="android.support.v7.widget.ShareActionProvider"/&gt;
+</pre>
+
+<p>
+  In this case, it is not necessary to declare an icon for the widget, since {@link
+  android.support.v7.widget.ShareActionProvider} provides its own graphics. If
+  you are using a custom action, declare an icon.
+</p>
+
+<p>
+  For information about creating a custom action provider, see the {@link
+  android.support.v4.view.ActionProvider} reference. For information about
+  configuring a {@link android.support.v7.widget.ShareActionProvider}, see the
+  reference for that class.
+</p>
diff --git a/docs/html/training/appbar/actions.jd b/docs/html/training/appbar/actions.jd
new file mode 100644
index 0000000..68483ca
--- /dev/null
+++ b/docs/html/training/appbar/actions.jd
@@ -0,0 +1,154 @@
+page.title=Adding and Handling Actions
+page.tags="appbar","actionbar"
+helpoutsWidget=true
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+
+    <h2>This lesson teaches you to</h2>
+
+    <ol>
+      <li><a href="#add-actions">Add Action Buttons</a></li>
+      <li><a href="#handle-actions">Respond to Actions</a></li>
+    </ol>
+
+    <h2>Useful Resources</h2>
+    <ul>
+      <li><a href="https://www.google.com/design/icons/">Material Icons</a></li>
+    </ul>
+
+
+  </div>
+</div>
+
+
+<a class="notice-designers wide" href="{@docRoot}design/patterns/actionbar.html#ActionButtons">
+  <div>
+    <h3>Design Guide</h3>
+    <p>Action Buttons</p>
+  </div>
+</a>
+
+
+<p>
+  The app bar allows you to add buttons for user actions. This feature lets you
+  put the most important <em>actions</em> for the current context right at the
+  top of the app. For example, a photo browsing app might show <em>share</em>
+  and <em>create album</em> buttons at the top when the user is looking at
+  their photo roll; when the user looks at an individual photo, the app might
+  show <em>crop</em> and <em>filter</em> buttons.
+</p>
+
+<p>
+  Space in the app bar is limited. If an app declares more actions than can
+  fit in the app bar, the app bar send the excess actions to an
+  <em>overflow</em> menu. The app can also specify that an action should always
+  be shown in the overflow menu, instead of being displayed on the app bar.
+</p>
+
+<img src="{@docRoot}images/training/appbar/appbar_with_button_2x.png"
+  srcset="{@docRoot}images/training/appbar/appbar_with_button.png 1x,
+      {@docRoot}images/training/appbar/appbar_with_button_2x.png 2x"
+  width="400" alt="">
+
+<p class="img-caption">
+  <strong>Figure 1.</strong> An app bar with a single action button and an
+  overflow menu.
+</p>
+
+<h2 id="add-actions">Add Action Buttons</h2>
+
+<p>
+  All action buttons and other items available in the action overflow are
+  defined in an XML <a href=
+  "{@docRoot}guide/topics/resources/menu-resource.html">menu resource</a>. To
+  add actions to the action bar, create a new XML file in your project's
+  <code>res/menu/</code> directory.
+</p>
+
+<p>
+  Add an <a href=
+  "{@docRoot}guide/topics/resources/menu-resource.html#item-element"><code>&lt;item&gt;</code></a>
+  element for each item you want to include in the action bar, as shown in this
+  code example of a menu XML file:
+</p>
+
+<pre>
+&lt;menu xmlns:android="http://schemas.android.com/apk/res/android" &gt;
+
+    &lt;!-- "Mark Favorite", should appear as action button if possible --&gt;
+    &lt;item
+        android:id="@+id/action_favorite"
+        android:icon="@drawable/ic_favorite_black_48dp"
+        android:title="@string/action_favorite"
+        app:showAsAction="ifRoom"/&gt;
+
+    &lt;!-- Settings, should always be in the overflow --&gt;
+    &lt;item android:id="@+id/action_settings"
+          android:title="@string/action_settings"
+          app:showAsAction="never"/&gt;
+
+&lt;/menu&gt;
+</pre>
+
+<p>
+  The <code>app:showAsAction</code> attribute specifies whether the action
+  should be shown as a button on the app bar. If you set
+  <code>app:showAsAction="ifRoom"</code> (as in the example code's <em>favorite</em> action), the action is displayed as a button
+  if there is room in the app bar for it; if there is not enough room, excess
+  actions are sent to the overflow menu. If you set
+  <code>app:showAsAction="never"</code> (as in the example code's <em>settings</em> action), the action is always listed in the
+  overflow menu, not displayed in the app bar.
+</p>
+
+<p>
+  The system uses the action's icon as the action button if the action is
+  displayed in the app bar. You can find many useful icons on the <a href=
+  "https://www.google.com/design/icons/">Material Icons</a> page.
+</p>
+
+<h2 id="handle-actions">Respond to Actions</h2>
+
+<p>
+  When the user selects one of the app bar items, the system calls your
+  activity's {@link android.app.Activity#onOptionsItemSelected
+  onOptionsItemSelected()} callback method, and passes a {@link
+  android.view.MenuItem} object to indicate which item was clicked. In your
+  implementation of {@link android.app.Activity#onOptionsItemSelected
+  onOptionsItemSelected()}, call the {@link android.view.MenuItem#getItemId
+  MenuItem.getItemId()} method to determine which item was pressed. The ID returned
+  matches the value you declared in the corresponding <a href=
+  "{@docRoot}guide/topics/resources/menu-resource.html#item-element"><code>&lt;item&gt;</code></a>
+  element's <code>android:id</code> attribute.
+</p>
+
+<p>
+  For example, the following code checks to see which action the user selected.
+  If the method does not recognize the user's action, it invokes the superclass
+  method:
+</p>
+
+<pre>
+&#64;Override
+public boolean onOptionsItemSelected(MenuItem item) {
+    switch (item.getItemId()) {
+        case R.id.action_settings:
+            // User chose the "Settings" item, show the app settings UI...
+            return true;
+
+        case R.id.action_favorite:
+            // User chose the "Favorite" action, mark the current item
+            // as a favorite...
+            return true;
+
+        default:
+            // If we got here, the user's action was not recognized.
+            // Invoke the superclass to handle it.
+            return super.onOptionsItemSelected(item);
+
+    }
+}
+</pre>
diff --git a/docs/html/training/appbar/index.jd b/docs/html/training/appbar/index.jd
new file mode 100755
index 0000000..64ce94d
--- /dev/null
+++ b/docs/html/training/appbar/index.jd
@@ -0,0 +1,101 @@
+page.title=Adding the App Bar
+page.tags="appbar","actionbar"
+helpoutsWidget=true
+trainingnavtop=true
+startpage=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>You should also read</h2>
+<ul>
+  <li><a href="{@docRoot}training/implementing-navigation/index.html">
+    Implementing Effective Navigation</a></li>
+  <li><a href="http://www.google.com/design/spec/layout/structure.html#structure-app-bar">
+    Material Design: App Bar</a></li>
+</ul>
+
+</div>
+</div>
+
+<p>
+  The <em>app bar</em>, also known as the <em>action bar</em>, is one of the most
+  important design elements in your app's activities, because
+  it provides a visual structure and interactive elements that are familiar to
+  users. Using the app bar makes your app consistent with other Android apps,
+  allowing users to quickly understand how to operate your app and have a great
+  experience.
+  The key functions of the app bar
+  are as follows:
+</p>
+
+<ul>
+  <li>A dedicated space for giving your app an identity and indicating the
+  user's location in the app.
+  </li>
+
+  <li>Access to important actions in a predictable way, such as search.
+  </li>
+
+  <li>Support for navigation and view switching (with tabs or drop-down lists).
+  </li>
+</ul>
+
+<img src="{@docRoot}images/training/appbar/appbar_sheets_2x.png"
+    srcset="{@docRoot}images/training/appbar/appbar_sheets.png 1x,
+        {@docRoot}images/training/appbar/appbar_sheets_2x.png 2x"
+    width="400" alt="" />
+
+<p>
+  This class describes how to use the
+  <a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7
+  appcompat</a> support library's {@link
+  android.support.v7.widget.Toolbar} widget as an app bar. There are other ways
+  to implement an app bar—for example, some themes set up an {@link
+  android.app.ActionBar} as an app bar by default—but using the appcompat
+  {@link android.support.v7.widget.Toolbar} makes it easy to set up an app bar
+  that works on the widest range of devices, and also gives you room to
+  customize your app bar later on as your app develops.
+</p>
+
+<h2>Lessons</h2>
+
+<dl>
+  <dt>
+    <b><a href="setting-up.html">Setting Up the App Bar</a></b>
+  </dt>
+
+  <dd>
+    Learn how to add a {@link android.support.v7.widget.Toolbar} widget to your
+    activity, and set it as the activity's app bar.
+  </dd>
+
+  <dt>
+    <b><a href="actions.html">Adding and Handling Actions</a></b>
+  </dt>
+
+  <dd>
+    Learn how to add actions to the app bar and its overflow menu, and how to
+    respond when users choose those actions.
+  </dd>
+
+  <dt>
+    <b><a href="up-action.html">Adding an Up Action</a></b>
+  </dt>
+
+  <dd>
+    Learn how to add an <em>Up</em> button to your app bar, so users
+    can navigate back to the app's home screen.
+  </dd>
+
+  <dt>
+    <b><a href="action-views.html">Action Views and Action Providers</a></b>
+  </dt>
+
+  <dd>
+    Learn how to use these widgets to provide advanced functionality in your
+    app bar.
+  </dd>
+</dl>
diff --git a/docs/html/training/appbar/setting-up.jd b/docs/html/training/appbar/setting-up.jd
new file mode 100644
index 0000000..cc963c6
--- /dev/null
+++ b/docs/html/training/appbar/setting-up.jd
@@ -0,0 +1,181 @@
+page.title=Setting Up the App Bar
+page.tags="appbar","actionbar", "toolbar"
+helpoutsWidget=true
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+
+    <h2>This lesson teaches you to</h2>
+
+    <ol>
+      <li><a href="#add-toolbar">Add a Toolbar to an Activity</a></li>
+      <li><a href="#utility">Use App Bar Utility Methods</a></li>
+    </ol>
+
+    <h2>You should also read</h2>
+    <ul>
+      <li><a href="{@docRoot}tools/support-library/setup.html"
+    >Setting Up the Support Library</a></li>
+    </ul>
+  </div>
+</div>
+
+
+<p>
+  In its most basic form, the action bar displays the title for the activity on
+  one side and an <em>overflow menu</em> on the other. Even in this simple
+  form, the app bar provides useful information to the users, and helps to give
+  Android apps a consistent look and feel.
+</p>
+
+<img src="{@docRoot}images/training/appbar/appbar_basic_2x.png"
+    srcset="{@docRoot}images/training/appbar/appbar_basic.png 1x,
+        {@docRoot}images/training/appbar/appbar_basic_2x.png 2x"
+    width="400" alt="" />
+<p class="img-caption"><strong>Figure 1.</strong> An app bar with the app
+title and overflow menu.</a>
+
+<p>
+  Beginning with Android 3.0 (API level 11), all
+  activities that use the default theme have an {@link android.app.ActionBar}
+  as an app bar. However, app bar features have gradually been added to the
+  native {@link android.app.ActionBar} over various Android releases. As a
+  result, the native {@link android.app.ActionBar} behaves differently
+  depending on what version of the Android system a device may be using. By
+  contrast, the most recent features are added to the support library's version
+  of {@link android.support.v7.widget.Toolbar}, and they are available on any
+  device that can use the support library.
+</p>
+
+<p>
+  For this reason, you should use the support library's {@link
+  android.support.v7.widget.Toolbar} class to implement your activities' app
+  bars. Using the support library's toolbar helps ensure that your app will
+  have consistent behavior across the widest range of devices. For example, the
+  {@link android.support.v7.widget.Toolbar} widget provides a <a href=
+  "{@docRoot}design/material/index.html">material design</a> experience on
+  devices running Android 2.1 (API level 7) or later, but the native action
+  bar doesn't support material design unless the device is running Android 5.0
+  (API level 21) or later.
+</p>
+
+<h2 id="add-toolbar">Add a Toolbar to an Activity</h2>
+
+These steps describe how to set up a {@link android.support.v7.widget.Toolbar}
+as your activity's app bar:
+
+<ol>
+  <li>Add the the
+  <a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7
+  appcompat</a> support library to your project, as described in <a href=
+  "{@docRoot}tools/support-library/setup.html">Support Library Setup</a>.
+  </li>
+
+  <li>Make sure the activity extends {@link
+  android.support.v7.app.AppCompatActivity}:
+
+    <pre>
+public class MyActivity extends AppCompatActivity {
+  // ...
+}
+</pre>
+    <p class="note">
+      <strong>Note:</strong> Make this change for every activity in your app
+      that uses a {@link android.support.v7.widget.Toolbar} as an app bar.
+    </p>
+  </li>
+
+  <li>In the app manifest, set the <a href=
+  "{@docRoot}guide/topics/manifest/application-element.html"><code>&lt;application&gt;</code></a>
+  element to use one of appcompat's {@link
+  android.support.v7.appcompat.R.style#Theme_AppCompat_NoActionBar NoActionBar}
+  themes. Using one of these themes prevents the app from using the native
+  {@link android.app.ActionBar} class to provide the app bar. For example:
+
+    <pre>
+&lt;application
+    android:theme="&#64;style/Theme.AppCompat.Light.NoActionBar"
+    /&gt;
+</pre>
+  </li>
+
+  <li>Add a {@link android.support.v7.widget.Toolbar} to the activity's layout.
+  For example, the following layout code adds a {@link
+  android.support.v7.widget.Toolbar} and gives it the appearance of floating
+  above the activity:
+
+    <pre>
+&lt;android.support.v7.widget.Toolbar
+   android:id="&#64;+id/my_toolbar"
+   android:layout_width="match_parent"
+   android:layout_height="?attr/actionBarSize"
+   android:background="?attr/colorPrimary"
+   android:elevation="4dp"
+   android:theme="&#64;style/ThemeOverlay.AppCompat.ActionBar"
+   app:popupTheme="&#64;style/ThemeOverlay.AppCompat.Light"/&gt;
+</pre>
+    <p>
+      The <a href=
+      "https://www.google.com/design/spec/what-is-material/elevation-shadows.html#elevation-shadows-shadows">
+      Material Design specification</a> recommends that app bars have an
+      elevation of 4 dp.
+    </p>
+
+    <p>
+      Position the toolbar at the top of the activity's
+      <a href="{@docRoot}guide/topics/ui/declaring-layout.html">layout</a>,
+      since you are using it as an app bar.
+    </p>
+  </li>
+
+  <li>In the activity's {@link android.app.Activity#onCreate onCreate()}
+  method, call the activity's {@link
+  android.support.v7.app.AppCompatActivity#setSupportActionBar
+  setSupportActionBar()} method, and pass the activity's toolbar. This method
+  sets the toolbar as the app bar for the activity. For example:
+
+    <pre>
+&#64;Override
+protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_my);
+    <strong>Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
+    setSupportActionBar(myToolbar);</strong>
+    }
+</pre>
+  </li>
+</ol>
+
+<p>
+  Your app now has a basic action bar. By default, the action bar contains just
+  the name of the app and an overflow menu. The options menu initially contains
+  just the <strong>Settings</strong> item. You can add more actions to the
+  action bar and the overflow menu, as described in <a href=
+  "actions.html">Adding and Handling Actions</a>.
+</p>
+
+<h2 id="utility">Use App Bar Utility Methods</h2>
+
+<p>
+  Once you set the toolbar as an activity's app bar, you have access to the
+  various utility methods provided by the
+  <a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7
+  appcompat</a> support library's {@link
+  android.support.v7.app.ActionBar} class. This approach lets you do a number of useful
+  things, like hide and show the app bar.
+</p>
+
+<p>
+  To use the {@link android.support.v7.app.ActionBar} utility methods, call the
+  activity's {@link
+  android.support.v7.app.AppCompatActivity#getSupportActionBar
+  getSupportActionBar()} method. This method returns a reference to an
+  appcompat {@link android.support.v7.app.ActionBar} object.
+  Once you have that reference, you can call any of the {@link
+  android.support.v7.app.ActionBar} methods to adjust the app bar. For example,
+  to hide the app bar, call {@link android.support.v7.app.ActionBar#hide
+  ActionBar.hide()}.
+</p>
diff --git a/docs/html/training/appbar/up-action.jd b/docs/html/training/appbar/up-action.jd
new file mode 100644
index 0000000..1336d20
--- /dev/null
+++ b/docs/html/training/appbar/up-action.jd
@@ -0,0 +1,134 @@
+page.title=Adding an Up Action
+page.tags="appbar","actionbar", "up"
+helpoutsWidget=true
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+
+    <h2>This lesson teaches you to</h2>
+
+    <ol>
+      <li>
+        <a href="#declare-parent">Declare a Parent Activity</a>
+      </li>
+
+      <li>
+        <a href="#enable-up">Enable the Up Button</a>
+      </li>
+    </ol>
+
+    <h2>See Also</h2>
+    <ul>
+      <li><a href="{@docRoot}training/implementing-navigation/ancestral.html">
+          Providing Up Navigation</a></li>
+    </ul>
+
+
+  </div>
+</div>
+
+<p>
+  Your app should make it easy for users to find their way back to the app's
+  main screen. One simple way to do this is to provide an <em>Up</em>
+  button on the app bar for all activities except the main one. When the user
+  selects the <em>Up</em> button, the app navigates to the parent
+  activity.
+</p>
+
+<p>
+  This lesson shows you how to add an <em>Up</em> button to an activity by
+  declaring the activity's parent in the manifest, and enabling the app bar's
+  <em>Up</em> button.
+</p>
+
+<h2 id="declare-parent">Declare a Parent Activity</h2>
+
+<p>
+  To support the up functionality in an activity, you need to declare the
+  activity's parent. You can do this in the app manifest, by setting an
+  <code>android:parentActivityName</code> attribute.
+</p>
+
+<p>
+  The <code>android:parentActivityName</code> attribute
+  was introduced in Android 4.1 (API level 16). To support devices with older
+  versions of Android, define a <a href=
+  "{@docRoot}guide/topics/manifest/meta-data-element.html"><code>&lt;meta-data&gt;</code></a>
+  name-value pair, where the name is
+  <code>"android.support.PARENT_ACTIVITY"</code> and the value is the name of
+  the parent activity.
+</p>
+
+<p>
+  For example, suppose your app has a main activity named
+  <code>MainActivity</code> and a single child activity. The following manifest
+  code declares both activities, and specifies the parent/child relationship:
+</p>
+<pre>
+&lt;application ... &gt;
+    ...
+
+    &lt;!-- The main/home activity (it has no parent activity) --&gt;
+
+    &lt;activity
+        android:name="com.example.myfirstapp.MainActivity" ...&gt;
+        ...
+    &lt;/activity&gt;
+
+    &lt;!-- A child of the main activity --&gt;
+    &lt;activity
+        android:name="com.example.myfirstapp.MyChildActivity"
+        android:label="@string/title_activity_child"
+        <strong>android:parentActivityName="com.example.myfirstapp.MainActivity"</strong> &gt;
+
+        &lt;!-- Parent activity meta-data to support 4.0 and lower --&gt;
+        &lt;meta-data
+            <strong>android:name="android.support.PARENT_ACTIVITY"
+            android:value="com.example.myfirstapp.MainActivity" /&gt;</strong>
+    &lt;/activity&gt;
+&lt;/application&gt;
+</pre>
+
+<h2 id="enable-up">Enable the Up Button</h2>
+
+<p>
+  To enable the <em>Up</em> button for an activity that has a parent
+  activity, call the app bar's {@link
+  android.support.v7.app.ActionBar#setDisplayHomeAsUpEnabled
+  setDisplayHomeAsUpEnabled()} method. Typically, you would do this when the
+  activity is created. For example, the following {@link
+  android.app.Activity#onCreate onCreate()} method sets a {@link
+  android.support.v7.widget.Toolbar} as the app bar for
+  <code>MyChildActivity</code>, then enables that app bar's <em>Up</em> button:
+</p>
+
+<pre>
+&#64;Override
+protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.activity_my_child);
+
+    // my_child_toolbar is defined in the layout file
+    Toolbar myChildToolbar =
+        (Toolbar) findViewById(R.id.my_child_toolbar);
+    setSupportActionBar(myChildToolbar);
+
+    // Get a support ActionBar corresponding to this toolbar
+    ActionBar ab = getSupportActionBar();
+
+    // Enable the Up button
+    <strong>ab.setDisplayHomeAsUpEnabled(true);</strong>
+}
+</pre>
+
+<p>
+  You do <em>not</em> need to catch the up action in the activity's {@link
+  android.app.Activity#onOptionsItemSelected onOptionsItemSelected()} method.
+  Instead, that method should call its superclass, as shown in <a href=
+  "actions.html#handle-actions">Respond to Actions</a>. The superclass method
+  responds to the <em>Up</em> selection by navigating to the parent
+  activity, as specified in the app manifest.
+</p>
diff --git a/docs/html/training/articles/assistant.jd b/docs/html/training/articles/assistant.jd
new file mode 100644
index 0000000..a1fbd6b
--- /dev/null
+++ b/docs/html/training/articles/assistant.jd
@@ -0,0 +1,317 @@
+page.title=Optimizing Content for the Assistant
+page.metaDescription=Support contextually relevant actions through the Assist API.
+page.tags=assist, accessibility, now, now on tap
+meta.tags="assistant", "marshmallow", "now"
+page.image=images/cards/card-assist_16-9_2x.png
+
+page.article=true
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+    <h2>In this document</h2>
+    <ol>
+      <li><a href="#assist_api">Using the Assist API</a>
+      <ol>
+        <li><a href="#assist_api_lifecycle">Assist API Lifecycle</a></li>
+        <li><a href="#source_app">Source App</a></li>
+        <li><a href="#destination_app">Destination App</a></li>
+      </ol>
+      </li>
+      <li><a href="#implementing_your_own_assistant">Implementing your
+      own assistant</a></li>
+    </ol>
+  </div>
+</div>
+
+<p>
+  Android 6.0 Marshmallow introduces a new way for users to engage with apps
+  through the assistant.
+</p>
+
+<p>
+  Users summon the assistant with a long-press on the Home button or by saying
+  the {@link android.service.voice.AlwaysOnHotwordDetector keyphrase}. In
+  response to the long-press, the system opens a top-level window that displays
+  contextually relevant actions for the current activity. These potential
+  actions might include deep links to other apps on the device.
+</p>
+
+<p>
+  This guide explains how Android apps use Android's Assist API to improve the
+  assistant user experience.
+</p>
+
+
+<h2 id="assist_api">Using the Assist API</h2>
+
+<p>
+  The example below shows how Google Now integrates with the Android assistant
+  using a feature called Now on Tap.
+</p>
+
+<p>
+  The assistant overlay window in our example (2, 3) is implemented by Google
+  Now through a feature called Now on Tap, which works in concert with the
+  Android platform-level functionality. The system allows the user to select
+  the assistant app (Figure 2) that obtains contextual information from the
+  <em>source</em> app using the Assist API which is a part of the platform.
+</p>
+
+
+<div>
+  <img src="{@docRoot}images/training/assistant/image01.png">
+  <p class="img-caption" style="text-align:center;">
+    Figure 1. Assistant interaction example with the Now on Tap feature of
+    Google Now
+  </p>
+</div>
+
+<p>
+  An Android user first configures the assistant and can change system options
+  such as using text and view hierarchy as well as the screenshot of the
+  current screen (Figure 2).
+</p>
+
+<p>
+  From there, the assistant receives the information only when the user
+  activates assistance, such as when they tap and hold the Home button ( shown
+  in Figure 1, step 1).
+</p>
+
+<div style="float:right;margin:1em;max-width:300px">
+  <img src="{@docRoot}images/training/assistant/image02.png">
+  <p class="img-caption" style="text-align:center;">
+    Figure 2. Assist &amp; voice input settings (<em>Settings/Apps/Default
+    Apps/Assist &amp; voice input</em>)
+  </p>
+</div>
+
+<h3 id="assist_api_lifecycle">Assist API Lifecycle</h3>
+
+<p>
+  Going back to our example from Figure 1, the Assist API callbacks are invoked
+  in the <em>source</em> app after step 1 (user long-presses the Home button)
+  and before step 2 (the assistant renders the overlay window). Once the user
+  selects the action to perform (step 3), the assistant executes it, for
+  example by firing an intent with a deep link to the (<em>destination</em>)
+  restaurant app (step 4).
+</p>
+
+<h3 id="source_app">Source App</h3>
+
+<p>
+  In most cases, your app does not need to do anything extra to integrate with
+  the assistant if you already follow <a href=
+  "{@docRoot}guide/topics/ui/accessibility/apps.html">accessibility best
+  practices</a>. This section describes how to provide additional information
+  to help improve the assistant user experience, as well as scenarios, such as
+  custom Views, that need special handling.
+</p>
+
+<h4 id="share_additional_information_with_the_assistant">Share Additional Information with the Assistant</h4>
+
+<p>
+  In addition to the text and the screenshot, your app can share
+  <em>additional</em> information with the assistant. For example, your music
+  app can choose to pass current album information, so that the assistant can
+  suggest smarter actions tailored to the current activity.
+</p>
+
+<p>
+  To provide additional information to the assistant, your app provides
+  <em>global application context</em> by registering an app listener and
+  supplies activity-specific information with activity callbacks as shown in
+  Figure 3.
+</p>
+
+<div>
+  <img src="{@docRoot}images/training/assistant/image03.png">
+  <p class="img-caption" style="text-align:center;">
+    Figure 3. Assist API lifecycle sequence diagram.
+  </p>
+</div>
+
+<p>
+  To provide global application context, the app creates an implementation of
+  {@link android.app.Application.OnProvideAssistDataListener} and registers it
+  using {@link
+  android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener)}.
+  In order to provide activity-specific contextual information, activity
+  overrides {@link android.app.Activity#onProvideAssistData(android.os.Bundle)}
+  and {@link
+  android.app.Activity#onProvideAssistContent(android.app.assist.AssistContent)}.
+  The two activity methods are called <em>after</em> the optional global
+  callback (registered with {@link
+  android.app.Application#registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener)})
+  is invoked. Since the callbacks execute on the main thread, they should
+  complete <a href="{@docRoot}training/articles/perf-anr.html">promptly</a>.
+  The callbacks are invoked only when the activity is <a href=
+  "{@docRoot}reference/android/app/Activity.html#ActivityLifecycle">running</a>.
+</p>
+
+<h5 id="providing_context">Providing Context</h5>
+
+<p>
+  {@link android.app.Activity#onProvideAssistData(android.os.Bundle)} is called
+  when the user is requesting the assistant to build a full {@link
+  android.content.Intent#ACTION_ASSIST} Intent with all of the context of the
+  current application represented as an instance of the {@link
+  android.app.assist.AssistStructure}. You can override this method to place
+  into the bundle anything you would like to appear in the
+  <code>EXTRA_ASSIST_CONTEXT</code> part of the assist Intent.
+</p>
+
+<h5 id="describing_content">Describing Content</h5>
+
+<p>
+  Your app can implement {@link
+  android.app.Activity#onProvideAssistContent(android.app.assist.AssistContent)}
+  to improve assistant user experience by providing references to content
+  related to the current activity. You can describe the app content using the
+  common vocabulary defined by <a href="https://schema.org">Schema.org</a>
+  through a JSON-LD object. In the example below, a music app provides
+  structured data to describe the music album the user is currently
+  looking at.
+</p>
+
+<pre class="prettyprint">
+&commat;Override
+public void onProvideAssistContent(AssistContent <strong>assistContent</strong>) {
+  super.onProvideAssistContent(<strong>assistContent</strong>);
+
+  String structuredJson = <strong>new </strong>JSONObject()
+       .put(<strong>"@type"</strong>, <strong>"MusicRecording"</strong>)
+       .put(<strong>"@id"</strong>, <strong>"https://example.com/music/recording"</strong>)
+       .put(<strong>"name"</strong>, <strong>"Album Title"</strong>)
+       .toString();
+
+  <strong>assistContent</strong>.setStructuredData(structuredJson);
+}
+</pre>
+
+<p>
+  Custom implementations of {@link
+  android.app.Activity#onProvideAssistContent(android.app.assist.AssistContent)}
+  may also adjust the provided {@link
+  android.app.assist.AssistContent#setIntent(android.content.Intent) content
+  intent} to better reflect the top-level context of the activity, supply
+  {@link android.app.assist.AssistContent#setWebUri(android.net.Uri) the URI}
+  of the displayed content, and fill in its {@link
+  android.app.assist.AssistContent#setClipData(android.content.ClipData)} with
+  additional content of interest that the user is currently viewing.
+</p>
+
+<h4 id="default_implementation">Default Implementation</h4>
+
+<p>
+  If neither {@link
+  android.app.Activity#onProvideAssistData(android.os.Bundle)} nor {@link
+  android.app.Activity#onProvideAssistContent(android.app.assist.AssistContent)}
+  callbacks are implemented, the system will still proceed and pass the
+  information collected automatically to the assistant unless the current
+  window is flagged as <a href="#excluding_views">secure</a>.
+  As shown in Figure 3, the system uses the default implementations of {@link
+  android.view.View#onProvideStructure(android.view.ViewStructure)} and {@link
+  android.view.View#onProvideVirtualStructure(android.view.ViewStructure)} to
+  collect text and view hierarchy information. If your view implements custom
+  text drawing, you should override {@link
+  android.view.View#onProvideStructure(android.view.ViewStructure)} to provide
+  the assistant with the text shown to the user by calling {@link
+  android.view.ViewStructure#setText(java.lang.CharSequence)}.
+</p>
+
+<p>
+  <strong>In most cases, implementing accessibility support will enable the
+  assistant to obtain the information it needs.</strong> This includes
+  providing {@link android.R.attr#contentDescription
+  android:contentDescription} attributes, populating {@link
+  android.view.accessibility.AccessibilityNodeInfo} for custom views, making
+  sure custom {@link android.view.ViewGroup ViewGroups} correctly {@link
+  android.view.ViewGroup#getChildAt(int) expose} their children, and following
+  the best practices described in <a href=
+  "{@docRoot}guide/topics/ui/accessibility/apps.html">“Making Applications
+  Accessible”</a>.
+</p>
+
+<h4 id="excluding_views">Excluding views from the assistant</h4>
+
+<p>
+  An activity can exclude the current view from the assistant. This is accomplished
+  by setting the {@link android.view.WindowManager.LayoutParams#FLAG_SECURE
+  FLAG_SECURE} layout parameter of the WindowManager and must be done
+  explicitly for every window created by the activity, including Dialogs. Your
+  app can also use {@link android.view.SurfaceView#setSecure(boolean)
+  SurfaceView.setSecure} to exclude a surface from the assistant. There is no
+  global (app-level) mechanism to exclude all views from the assistant. Note
+  that <code>FLAG_SECURE</code> does not cause the Assist API callbacks to stop
+  firing. The activity which uses <code>FLAG_SECURE</code> can still explicitly
+  provide information to the assistant using the callbacks described earlier
+  this guide.
+</p>
+
+<h4 id="voice_interactions">Voice Interactions</h4>
+
+<p>
+  Assist API callbacks are also invoked upon {@link
+  android.service.voice.AlwaysOnHotwordDetector keyphrase detection}. For more
+  information see the <a href="https://developers.google.com/voice-actions/">voice
+  actions</a> documentation.
+</p>
+
+<h4 id="z-order_considerations">Z-order considerations</h4>
+
+<p>
+  The assistant uses a lightweight overlay window displayed on top of the
+  current activity. The assistant can be summoned by the user at any time.
+  Therefore, apps should not create permanent {@link
+  android.Manifest.permission#SYSTEM_ALERT_WINDOW system alert}
+  windows interfering with the overlay window shown in Figure 4.
+</p>
+
+<div style="">
+  <img src="{@docRoot}images/training/assistant/image04.png">
+  <p class="img-caption" style="text-align:center;">
+    Figure 4. Assist layer Z-order.
+  </p>
+</div>
+
+<p>
+  If your app uses {@link
+  android.Manifest.permission#SYSTEM_ALERT_WINDOW system alert} windows, it
+  must promptly remove them as leaving them on the screen will degrade user
+  experience and annoy the users.
+</p>
+
+<h3 id="destination_app">Destination App</h3>
+
+<p>
+  The matching between the current user context and potential actions displayed
+  in the overlay window (shown in step 3 in Figure 1) is specific to the
+  assistant’s implementation. However, consider adding <a href=
+  "{@docRoot}training/app-indexing/deep-linking.html">deep linking</a> support
+  to your app. The assistant will typically take advantage of deep linking. For
+  example, Google Now uses deep linking and <a href=
+  "https://developers.google.com/app-indexing/">App Indexing</a> in order to
+  drive traffic to destination apps.
+</p>
+
+<h2 id="implementing_your_own_assistant">Implementing your own assistant </h2>
+
+<p>
+  Some developers may wish to implement their own assistant. As shown in Figure
+  2, the active assistant app can be selected by the Android user. The
+  assistant app must provide an implementation of {@link
+  android.service.voice.VoiceInteractionSessionService} and {@link
+  android.service.voice.VoiceInteractionSession} as shown in <a href=
+  "https://android.googlesource.com/platform/frameworks/base/+/android-5.0.1_r1/tests/VoiceInteraction?autodive=0%2F%2F%2F%2F%2F%2F">
+  this</a> example and it requires the {@link
+  android.Manifest.permission#BIND_VOICE_INTERACTION} permission. It can then
+  receive the text and view hierarchy represented as an instance of the {@link
+  android.app.assist.AssistStructure} in {@link
+  android.service.voice.VoiceInteractionSession#onHandleAssist(android.os.Bundle,
+  android.app.assist.AssistStructure,android.app.assist.AssistContent) onHandleAssist()}.
+  The assistant receives the screenshot through {@link
+  android.service.voice.VoiceInteractionSession#onHandleScreenshot(android.graphics.Bitmap)
+  onHandleScreenshot()}.
+</p>
diff --git a/docs/html/training/articles/keystore.jd b/docs/html/training/articles/keystore.jd
index 026f7a0..7d2470d 100644
--- a/docs/html/training/articles/keystore.jd
+++ b/docs/html/training/articles/keystore.jd
@@ -1,8 +1,8 @@
 page.title=Android Keystore System
 @jd:body
 
-<div id="qv-wrapper">
-  <div id="qv">
+<div id="tb-wrapper">
+<div id="tb">
     <h2>In this document</h2>
     <ol>
       <li><a href="#SecurityFeatures">Security Features</a></li>
@@ -444,7 +444,7 @@
       <td>
         <ul>
           <li>Supported sizes: 224, 256, 384, 521</li>
-          <li>Supported named curves: P-224 (secp256r1), P-256 (aka secp256r1 and prime256v1), P-384
+          <li>Supported named curves: P-224 (secp224r1), P-256 (aka secp256r1 and prime256v1), P-384
             (aka secp384r1), P-521 (aka secp521r1)</li>
         </ul>
 
diff --git a/docs/html/training/articles/perf-anr.jd b/docs/html/training/articles/perf-anr.jd
index b32cc4f..bbebec5 100644
--- a/docs/html/training/articles/perf-anr.jd
+++ b/docs/html/training/articles/perf-anr.jd
@@ -91,7 +91,7 @@
 resizing bitmaps should be done in a worker thread (or in the case of databases
 operations, via an asynchronous request).</p>
 
-<p>The most effecive way to create a worker thread for longer
+<p>The most effective way to create a worker thread for longer
 operations is with the {@link android.os.AsyncTask}
 class. Simply extend {@link android.os.AsyncTask} and implement the
 {@link android.os.AsyncTask#doInBackground doInBackground()} method to perform the work.
@@ -168,7 +168,7 @@
 <p class="note"><strong>Tip:</strong>
 You can use {@link android.os.StrictMode} to help find potentially
 long running operations such as network or database operations that
-you might accidentally be doing your main thread.</p>
+you might accidentally be doing on your main thread.</p>
 
 
 
diff --git a/docs/html/training/articles/security-ssl.jd b/docs/html/training/articles/security-ssl.jd
index 7f43d9c..c3a2d9e 100644
--- a/docs/html/training/articles/security-ssl.jd
+++ b/docs/html/training/articles/security-ssl.jd
@@ -376,9 +376,8 @@
 hostname to the server so the proper certificate can be returned.</p>
 
 <p>Fortunately, {@link javax.net.ssl.HttpsURLConnection} supports
-SNI since Android 2.3. Unfortunately, Apache
-HTTP Client does not, which is one of the many reasons we discourage its use. One workaround
-if you need to support Android 2.2 (and older) or Apache HTTP Client is to set up an alternative
+SNI since Android 2.3. One workaround
+if you need to support Android 2.2 (and older) is to set up an alternative
 virtual host on a unique port so that it's unambiguous which server certificate to return.</p>
 
 <p>The more drastic alternative is to replace {@link javax.net.ssl.HostnameVerifier}
diff --git a/docs/html/training/articles/user-data-ids.jd b/docs/html/training/articles/user-data-ids.jd
new file mode 100644
index 0000000..5a4648b
--- /dev/null
+++ b/docs/html/training/articles/user-data-ids.jd
@@ -0,0 +1,741 @@
+page.title=Best Practices for Unique Identifiers
+page.metaDescription=How to manage unique identifiers the right way for users.
+page.tags=ids, user data
+meta.tags="ids", "user data"
+page.image=images/cards/card-user-ids_2x.png
+
+page.article=true
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+    <h2>In this document</h2>
+    <ol>
+      <li><a href="#tenets_of_working_with_android_identifiers">Tenets of Working with
+      Android Identifiers</a></li>
+      <li><a href="#version_specific_details_identifiers_in_m">Identifiers in Android 6.0+</a></li>
+      <li><a href="#working_with_advertising_ids">Working with Advertising IDs</a></li>
+      <li><a href="#working_with_instance_ids_&_guids">Working with Instance IDs and GUIDs</a></li>
+      <li><a href="#understand_identifier_characteristics">Understanding Identifier
+      Characteristics</a>
+      <ol>
+        <li><a href="#scope">Scope</a></li>
+        <li><a href="#resettability_&_persistence">Resettability &amp; persistence</a></li>
+        <li><a href="#uniqueness">Uniqueness</h3>
+        <li><a href="#integrity_protection_and_non-repudiability">Integrity protection and
+        non-repudiability</a></li>
+      </ol>
+      </li>
+      <li><a href="#use_appropriate_identifiers">Common Use Cases and the Identifier to Use</a>
+      <ol>
+        <li><a href="#a_track_signed-out_user_preferences">Tracking signed-out user
+        preferences</a></li>
+        <li><a href="#b_track_signed-out_user_behavior">Tracking signed-out user behavior</a></li>
+        <li><a href="#c_generate_signed-out_anonymous_user_analytics">Generating
+        signed-out/anonymous user analytics</a></li>
+        <li><a href="#d_track_signed-out_user_conversion">Tracking signed-out user
+        conversion</a></li>
+        <li><a href="#e_handle_multiple_installations">Handling multiple installations</a></li>
+        <li><a href="#f_anti-fraud_enforcing_free_content_limits_detecting_sybil_attacks">Anti-fraud:
+        Enforcing free content limits / detecting Sybil attacks</a></li>
+        <li><a href="#g_manage_telephony_&_carrier_functionality">Managing telephony and carrier
+        functionality</a></li>
+        <li><a href="#h_abuse_detection_identifying_bots_and_ddos_attacks">Abuse detection:
+        Identifying bots and DDoS attacks</a></li>
+        <li><a href="#i_abuse_detection_detecting_high_value_stolen_credentials">Abuse detection:
+        Detecting high value stolen credentials</a></li>
+      </ol>
+      </li>
+    </ol>
+  </div>
+</div>
+
+<p>
+  While there are valid reasons why your application may need to identify a
+  device rather than an instance of the application or an authenticated user on
+  the device, for the vast majority of applications, the ultimate goal is to
+  identify a particular <em>installation</em> of your app (not the actual
+  physical device).
+</p>
+
+<p>
+  Fortunately, identifying an installation on Android is straightforward using
+  an Instance ID or by creating your own GUID at install time. This document
+  provides guidance for selecting appropriate identifiers for your application,
+  based on your use-case.
+</p>
+
+<p>
+  For a general look at Android permissions, please see <a href=
+  "{@docRoot}training/articles/user-data-overview.html">Permissions
+  and User Data</a>. For specific best practices for
+  working with Android permissions, please see <a href=
+  "{@docRoot}training/articles/user-data-permissions.html">Best Practices for
+  App Permissions</a>.
+</p>
+
+
+<h2 id="tenets_of_working_with_android_identifiers">Tenets of Working with Android Identifiers</h2>
+
+<p>
+  We recommend that you follow these tenets when working with Android
+  identifiers:
+</p>
+
+<p>
+  <em><strong>#1: Avoid using hardware identifiers.</strong></em> Hardware
+  identifiers such as SSAID (Android ID) and IMEI can be avoided in most
+  use-cases without limiting required functionality.
+</p>
+
+<p>
+  <em><strong>#2: Only use Advertising ID for user profiling or ads
+  use-cases.</strong></em> When using an <a href=
+  "https://support.google.com/googleplay/android-developer/answer/6048248?hl=en">
+  Advertising ID</a>, always respect the <a href=
+  "https://play.google.com/about/developer-content-policy.html#ADID">Limit Ad
+  Tracking</a> flag, ensure the identifier cannot be connected to personally
+  identifiable information (PII) and avoid bridging Advertising ID resets.
+</p>
+
+<p>
+  <em><strong>#3: Use an Instance ID or a privately stored GUID whenever
+  possible for all other use-cases except payment fraud prevention and
+  telephony.</strong></em> For the vast majority of non-ads use-cases, an
+  instance ID or GUID should be sufficient.
+</p>
+
+<p>
+  <em><strong>#4: Use APIs that are appropriate to your use-case to minimize
+  privacy risk.</strong></em> Use the
+  <a href="http://source.android.com/devices/drm.html">DRM
+  API</a> API for high value content
+  protection and the <a href="{@docRoot}training/safetynet/index.html">SafetyNet
+  API</a> for abuse prevention. The Safetynet API is
+  the easiest way to determine whether a device is genuine without incurring
+  privacy risk.
+</p>
+
+<p>
+  The remaining sections of this guide elaborate on these rules in the context
+  of developing Android applications.
+</p>
+
+<h2 id="version_specific_details_identifiers_in_m">Identifiers in Android 6.0+</h2>
+
+<p>
+  MAC addresses are globally unique, not user-resettable and survive factory
+  reset. It is generally not recommended to use MAC address for any form of
+  user identification. As a result, as of Android M, local device MAC addresses
+  (for example, Wifi and Bluetooth) <em><strong>are not available via third party
+  APIs</strong></em>. The {@link android.net.wifi.WifiInfo#getMacAddress WifiInfo.getMacAddress()}
+  method and the {@link android.bluetooth.BluetoothAdapter#getAddress
+  BluetoothAdapter.getDefaultAdapter().getAddress()} method will
+  both return <code>02:00:00:00:00:00</code>..
+</p>
+
+<p>
+  Additionally, you must hold the following permissions to access MAC addresses
+  of nearby external devices available via Bluetooth and Wifi scans:
+</p>
+
+<table>
+ <tr>
+    <th><strong>Method/Property</strong></td>
+    <th><strong>Permissions Required</strong></td>
+ </tr>
+ <tr>
+    <td>
+      <code><a href="{@docRoot}reference/android/net/wifi/WifiManager.html#getScanResults()">WifiManager.getScanResults()</a></code>
+    </td>
+    <td>
+      <code>ACCESS_FINE_LOCATION</code> or <code>ACCESS_COARSE_LOCATION</code>
+    </td>
+ </tr>
+ <tr>
+    <td>
+      <code><a href="{@docRoot}reference/android/bluetooth/BluetoothDevice.html#ACTION_FOUND">BluetoothDevice.ACTION_FOUND</a></code>
+    </td>
+    <td>
+      <code>ACCESS_FINE_LOCATION</code> or <code>ACCESS_COARSE_LOCATION</code>
+    </td>
+ </tr>
+ <tr>
+    <td>
+      <code><a href="{@docRoot}reference/android/bluetooth/le/BluetoothLeScanner.html#startScan(android.bluetooth.le.ScanCallback)">BluetoothLeScanner.startScan(ScanCallback)</a></code>
+    </td>
+    <td>
+      <code>ACCESS_FINE_LOCATION</code> or <code>ACCESS_COARSE_LOCATION</code>
+    </td>
+ </tr>
+</table>
+
+
+<h2 id="working_with_advertising_ids">Working with Advertising IDs</h2>
+
+<p>
+  Advertising ID is a user-resettable identifier and is appropriate for Ads
+  use-cases, but there are some key points to bear in mind when using it:
+</p>
+
+<p>
+  <em><strong>Always respect the user’s intention in resetting the advertising
+  ID</strong></em>. Do not bridge user resets by using a more persistent device
+  identifier or fingerprint to link subsequent Advertising IDs together without
+  the user’s consent. The <a href=
+  "https://play.google.com/about/developer-content-policy.html">Google Play
+  Developer Content Policy</a> states:
+</p>
+
+<div style="padding:.5em 2em;">
+<div style="border-left:4px solid #999;padding:0 1em;font-style:italic;">
+<p>...upon reset, a new advertising
+  identifier must not be connected to a previous advertising identifier or data
+  derived from a previous advertising identifier without the explicit consent
+  of the user</span></p>
+</div>
+</div>
+
+<p>
+  <em><strong>Always respect the associated Interest Based Advertising
+  flag</strong></em>. Advertising IDs are configurable in that users can limit
+  the amount of tracking associated with the ID. Always use the <code><a href=
+  "https://developers.google.com/android/reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html#isLimitAdTrackingEnabled()">
+  AdvertisingIdClient.Info.isLimitAdTrackingEnabled()</a></code> method to
+  ensure you are not circumventing your users' wishes. The <a href=
+  "https://play.google.com/about/developer-content-policy.html">Google Play
+  Developer Content Policy</a> states:
+</p>
+
+
+<div style="padding:.5em 2em;">
+<div style="border-left:4px solid #999;padding:0 1em;font-style:italic;">
+<p>...you must abide by a user’s ‘opt out of
+  interest-based advertising’ setting. If a user has enabled this setting, you
+  may not use the advertising identifier for creating user profiles for
+  advertising purposes or for targeting users with interest-based advertising.
+  Allowed activities include contextual advertising, frequency capping,
+  conversion tracking, reporting and security and fraud detection.</span></p>
+</div>
+</div>
+
+<p>
+  <em><strong>Be aware of any privacy or security policies associated with SDKs
+  you use that are related to Advertising ID use.</strong></em> For example, if
+  you are using the Google Analytics SDK
+  <code><a href=
+  "https://developers.google.com/android/reference/com/google/android/gms/analytics/Tracker.html#enableAdvertisingIdCollection(boolean)">mTracker.enableAdvertisingIdCollection(true)</a></code>
+  method, make sure to review and adhere to all applicable <a href=
+  "https://developers.google.com/analytics/devguides/collection/android/v4/policy">
+  Analytics SDK policies</a>.
+</p>
+
+<p>
+  Also, be aware that the <a href=
+  "https://play.google.com/about/developer-content-policy.html">Google Play
+  Developer Content Policy</a> requires that the Advertising ID “must not be
+  connected to personally-identifiable information or associated with any
+  persistent device identifier (for example: SSAID, MAC address, IMEI, etc.,)
+  without the explicit consent of the user.”
+</p>
+
+<p>
+  As an example, suppose you want to collect information to populate database
+  tables with the following columns:
+</p>
+
+<table>
+ <tr>
+    <td>
+      <table>
+       <tr>
+          <td class="tab2">
+      <code>timestamp</code></td>
+          <td class="tab2">
+      <code>ad_id</code></td>
+          <td>
+      <code><strong>account_id</strong></code></td>
+          <td class="tab2">
+      <code>clickid</code></td>
+       </tr>
+      </table>
+
+      <p>TABLE-01</p>
+    </td>
+    <td>
+      <table>
+       <tr>
+          <td>
+      <code><strong>account_id</strong></code></td>
+          <td class="tab2">
+      <code>name</code></td>
+          <td class="tab2">
+      <code>dob</code></td>
+          <td class="tab2">
+      <code>country</code></td>
+       </tr>
+      </table>
+      <p>TABLE-02</p>
+    </td>
+ </tr>
+</table>
+
+
+<p>
+  In this example, the <code>ad_id</code> column could be joined to PII via the
+  <code>account_id</code> column in both tables, which would be a violation of
+  the <a href=
+  "https://play.google.com/about/developer-content-policy.html">Google Play
+  Developer Content Policy</a>.
+</p>
+
+<p>
+  Keep in mind that links between Advertiser ID and PII aren't always this
+  explicit. It's possible to have “quasi-identifiers” that appear in both PII
+  and Ad ID keyed tables, which also cause problems. For example, assume we
+  change TABLE-01 and TABLE-02 as follows:
+</p>
+
+<table>
+ <tr>
+    <td><table>
+ <tr>
+    <td>
+      <code><strong>timestamp</strong></code></td>
+          <td class="tab2">
+      <code>ad_id</code></td>
+          <td>
+      <code>clickid</code></td>
+          <td>
+      <code><strong>dev_model</strong></code></td>
+       </tr>
+      </table>
+
+      </pre>
+      <p>TABLE-01</p>
+    </td>
+    <td>
+      <table>
+       <tr>
+          <td>
+      <code><strong>timestamp</strong></code></td>
+          <td class="tab2">
+      <code>demo</code></td>
+          <td class="tab2">
+      <code>account_id</code></td>
+          <td>
+      <code><strong>dev_model</strong></code></td>
+          <td class="tab2">
+      <code>name</code></td>
+       </tr>
+      </table>
+      <p>TABLE-02</p>
+    </td>
+ </tr>
+</table>
+
+
+<p>
+  In this case, with sufficiently rare click events, it's still possible to
+  join between the Advertiser ID TABLE-01 and the PII contained in TABLE-2
+  using the timestamp of the event and the device model.
+</p>
+
+<p>
+  While it is often difficult to guarantee that no such quasi-identifiers exist
+  in a dataset, the most obvious join risks can be prevented by generalizing
+  unique data where possible. In the example, this would mean reducing the
+  accuracy of the timestamp so that multiple devices with the same model appear
+  for every timestamp.
+</p>
+
+<p>
+  Other solutions include:
+</p>
+
+<ul>
+<li><em><strong>Not designing tables that explicitly link PII with Advertising
+IDs</strong></em>. In the first example above this would mean not including the
+account_id column in TABLE-01.</li>
+
+<li><em><strong>Segregating and monitoring access control lists for users or roles
+that have access to both the Advertising ID keyed data and PII</strong></em>. If the
+ability to access both sources simultaneously (for example, to perform
+a join between two tables) is tightly controlled and audited, it reduces the
+risk of association between the Advertising ID and PII. Generally speaking,
+controlling access means:
+
+<ol>
+  <li> Keeping access control lists (ACLs) for Advertiser ID keyed data and PII disjoint to
+  minimize the number of individuals or roles that are in both ACLs, and</li>
+  <li> Implementing access logging and auditing to detect and manage any exceptions to
+  this rule.</li>
+</ol>
+</li>
+</ul>
+
+<p>
+  For more information on working responsibly with Advertising IDs, please see
+  the <a href=
+  "https://support.google.com/googleplay/android-developer/answer/6048248?hl=en">
+  Advertising ID</a> help center article.
+</p>
+
+<h2 id="working_with_instance_ids_&_guids">Working with Instance IDs and GUIDs</h2>
+
+<p>
+  The most straightforward solution to identifying an application instance
+  running on a device is to use an Instance ID, and this is the recommended
+  solution in the majority of non-ads use-cases. Only the app instance for
+  which it was provisioned can access this identifier, and it's (relatively)
+  easily resettable because it only persists as long as the app is installed.
+</p>
+
+<p>
+  As a result, Instance IDs provide better privacy properties compared to
+  non-resettable, device-scoped hardware IDs. They also come with a key-pair
+  for message signing (and similar actions) and are available on Android, iOS
+  and Chrome. Please see the <a href=
+  "https://developers.google.com/instance-id/">What is Instance ID?</a> help
+  center document for more information.
+</p>
+
+<p>
+  In cases where an Instance ID isn't practical, custom globally unique IDs
+  (GUIDs) can also be used to uniquely identify an app instance. The simplest
+  way to do so is by generating your own GUID using the following code.
+</p>
+
+<pre>String uniqueID = UUID.randomUUID().toString();</pre>
+
+<p>
+  Because the identifier is globally unique, it can be used to identify a
+  specific app instance. To avoid concerns related to linking the identifier
+  across applications, GUIDs should be stored in internal storage rather than
+  external (shared) storage. Please see <a href=
+  "{@docRoot}guide/topics/data/data-storage.html">Storage Options</a> guide for
+  more information.
+</p>
+
+
+<h2 id="understand_identifier_characteristics">Understanding Identifier Characteristics</h2>
+
+<p>
+  The Android Operating system offers a number of IDs with different behavior
+  characteristics and which ID you should use depends on how those following
+  characteristics work with your use-case. But these characteristics also come
+  with privacy implications so it's important to understand how these
+  characteristics play together.
+</p>
+
+<h3 id="scope">Scope</h3>
+
+<p>
+  Identifier scope explains which systems can access the identifier. Android
+  identifier scope generally comes in three flavors:
+</p>
+
+<ul>
+  <li> <em>Single app</em>.  the ID is internal to the app and not accessible to other apps.
+  <li> <em>Group of apps</em> - the ID is accessible to a pre-defined group of related apps.
+  <li> <em>Device</em> - the ID is accessible to all apps installed on the device.
+</ul>
+
+<p>
+  The wider the scope granted to an identifier, the greater the risk of it
+  being used for tracking purposes. Conversely, if an identifier can only be
+  accessed by a single app instance, it can’t be used to track a device across
+  transactions in different apps.
+</p>
+<h3 id="resettability_&_persistence">Resettability and persistence</h3>
+
+<p>
+  Resettability and persistence define the lifespan of the identifier and
+  explain how it can be reset. Common reset triggers are: in-app resets, resets
+  via System Settings, resets on launch, and resets on installation. Android
+  Identifiers can have varying lifespans, but the lifespan is usually related
+  to how the ID is reset:
+</p>
+<ul>
+  <li> <em>Session-only</em> - a new ID is used every time the user restarts the app.
+  <li> <em>Install-reset</em> - a new ID is used every time user uninstalls and reinstalls the app.
+  <li> <em>FDR-reset</em> - a new ID is used every time the user factory-resets the device.
+  <li> <em>FDR-persistent</em> - the ID survives factory reset.
+</ul>
+
+<p>
+  Resettability gives users the ability to create a new ID that is
+  disassociated from any existing profile information. This is important
+  because the longer, and more reliably, an identifier persists (e.g. across
+  factory resets etc.), the greater the risk that the user may be subjected to
+  long-term tracking. If the identifier is reset upon app reinstall, this
+  reduces the persistence and provides a means for the ID to be reset, even if
+  there is no explicit user control to reset it from within the app or the
+  System Settings.
+</p>
+<h3 id="uniqueness">Uniqueness</h3>
+
+<p>
+  Uniqueness establishes the likelihood that identical identifiers exist within
+  the associated scope. At the highest level, a globally unique identifier will
+  never have a collision - even on other devices/apps. Otherwise, the level of
+  uniqueness depends on the size of the identifier and the source of randomness
+  used to create it. For example, the chance of a collision is much higher for
+  random identifiers seeded with the calendar date of installation (e.g.,
+  2015-01-05) than for identifiers seeded with the Unix timestamp of
+  installation (e.g., 1445530977).
+</p>
+
+<p>
+  In general, user account identifiers can be considered unique (i.e., each
+  device/account combo has a unique ID). On the other hand, the less unique
+  an identifier is within a population (e.g. of devices), the greater the
+  privacy protection because it's less useful for tracking an individual user.
+</p>
+
+<h3 id="integrity_protection_and_non-repudiability">Integrity protection and
+non-repudiability</h3>
+
+<p>
+  An identifier that is difficult to spoof or replay can be used to prove that
+  the associated device or account has certain properties (e.g. it’s not a
+  virtual device used by a spammer). Difficult to spoof identifiers also
+  provide <em>non-repudiability</em>. If the device signs a message with a
+  secret key, it is difficult to claim someone else’s device sent the message.
+  Non-repudiability could be something a user wants (e.g. authenticating a
+  payment) or it could be an undesirable property (e.g. sending a message they
+  regret).
+</p>
+
+
+<h2 id="use_appropriate_identifiers">Common Use Cases and the Identifier to Use</h2>
+
+<p>
+  This section provides alternatives to using hardware IDs such as IMEI or
+  SSAID for the majority of use-cases. Relying on hardware IDs is discouraged
+  because the user cannot reset them and generally has limited control over
+  their collection.
+</p>
+
+<h3 id="a_track_signed-out_user_preferences">Tracking signed-out user preferences</h3>
+
+<p>
+  <em>In this case, you are saving per-device state on the server side.</em>
+</p>
+
+<p>
+  <strong>We Recommend</strong>: Instance ID or a GUID.
+</p>
+
+<p>
+  <strong>Why this Recommendation?</strong>
+</p>
+
+<p>
+  Persisting information through reinstalls is not recommended because users
+  may want to reset their preferences by reinstalling the app.
+</p>
+
+<h3 id="b_track_signed-out_user_behavior">Tracking signed-out user behavior</h3>
+
+<p>
+  <em>In this case, you have created a profile of a user based on their
+  behavior across different apps/sessions on the same device.</em>
+</p>
+
+<p>
+  <strong>We Recommend</strong>: Advertising ID.
+</p>
+
+<p>
+  <strong>Why this Recommendation?</strong>
+</p>
+
+<p>
+  Use of the Advertising ID is mandatory for Advertising use-cases per the
+  <a href="https://play.google.com/about/developer-content-policy.html">Google
+  Play Developer Content Policy</a> because the user can reset it.
+</p>
+
+<h3 id="c_generate_signed-out_anonymous_user_analytics">Generating signed-out/anonymous user analytics</h3>
+
+<p>
+  <em>In this case, you are measuring usage statistics and analytics for
+  signed-out or anonymous users.</em>
+</p>
+
+<p>
+  <strong>We Recommend</strong>: Instance ID; if an Instance ID is
+  insufficient, you can also use a GUID.
+</p>
+
+<p>
+  <strong>Why this Recommendation?</strong>
+</p>
+
+<p>
+  An Instance ID or a GUID is scoped to the app that creates it, which prevents
+  it from being used to track users across apps. It is also easily reset by
+  clearing app data or reinstalling the app. Creating Instance IDs and GUIDs is
+  straightforward:
+</p>
+
+<ul>
+  <li> Creating an Instance ID: <code>String iid = InstanceID.getInstance(context).getId()</code>
+  <li> Creating a GUID: <code>String uniqueID = UUID.randomUUID().toString</code>
+</ul>
+
+<p>
+  Be aware that if you have told the user that the data you are collecting is
+  anonymous, you should <em><strong>ensure you are not connecting the
+  identifier to PII</strong></em> or other identifiers that may be linked to
+  PII.
+</p>
+
+<p>
+  You can also use Google Analytics for Mobile Apps, which offers a solution
+  for per-app analytics.
+</p>
+
+<h3 id="d_track_signed-out_user_conversion">Tracking signed-out user conversion</h3>
+
+<p>
+  <em>In this case, you are tracking conversions to detect if your marketing
+  strategy was successful.</em>
+</p>
+
+<p>
+  <strong>We Recommend</strong>: Advertising ID.
+</p>
+
+<p>
+  <strong>Why this Recommendation?</strong>
+</p>
+
+<p>
+  This is an ads-related use-case which may require an ID that is available
+  across different apps so using an Advertising ID is the most appropriate
+  solution.
+</p>
+
+<h3 id="e_handle_multiple_installations">Handling multiple installations</h3>
+
+<p>
+  <em>In this case, you need to identify the correct instance of the app when
+  it's installed on multiple devices for the same user.</em>
+</p>
+
+<p>
+  <strong>We Recommend</strong>: Instance ID or GUID.
+</p>
+
+<p>
+  <strong>Why this Recommendation?</strong>
+</p>
+
+<p>
+  Instance ID is designed explicitly for this purpose; its scope is limited to
+  the app so that it cannot be used to track users across different apps and it
+  is reset upon app reinstall. In the rare cases where an Instance ID is
+  insufficient, you can also use a GUID.
+</p>
+
+<h3 id="f_anti-fraud_enforcing_free_content_limits_detecting_sybil_attacks">Anti-fraud: Enforcing free content limits / detecting Sybil attacks</h3>
+
+<p>
+  <em>In this case, you want to limit the number of free content (e.g.
+  articles) a user can see on a device.</em>
+</p>
+
+<p>
+  <strong>We Recommend</strong>: Instance ID or GUID.
+</p>
+
+<p>
+  <strong>Why this Recommendation?</strong>
+</p>
+
+<p>
+  Using a GUID or Instance ID forces the user to reinstall the app in order to
+  overcome the content limits, which is a sufficient burden to deter most
+  people. If this is not sufficient protection, Android provides a
+  <a href="http://source.android.com/devices/drm.html">DRM API</a>
+  which can be used to limit access to content.
+</p>
+
+<h3 id="g_manage_telephony_&_carrier_functionality">Managing telephony and carrier functionality</h3>
+
+<p>
+  <em>In this case, your app is interacting with the device's phone and texting
+  functionality.</em>
+</p>
+
+<p>
+  <strong>We Recommend</strong>: IMEI, IMSI, and Line1 (requires <code>PHONE</code>
+  permission group in Android 6.0 (API level 23) and higher).
+</p>
+
+<p>
+  <strong>Why this Recommendation?</strong>
+</p>
+
+<p>
+  Leveraging hardware identifiers is acceptable if it is required for
+  telephony/carrier related functionality; for example, switching between
+  cellular carriers/SIM slots or delivering SMS messages over IP (for Line1) -
+  SIM-based user accounts. But it's important to note that in Android 6.0+
+  these identifiers can only be used via a runtime permission and that users
+  may toggle off this permission so your app should handle these exceptions
+  gracefully.
+</p>
+
+<h3 id="h_abuse_detection_identifying_bots_and_ddos_attacks">Abuse detection:
+Identifying bots and DDoS attacks</h3>
+
+<p>
+  <em>In this case, you are trying to detect multiple fake devices attacking
+  your backend services.</em>
+</p>
+
+<p>
+  <strong>We Recommend:</strong> The Safetynet API.
+</p>
+
+<p>
+  <strong>Why this Recommendation?</strong>
+</p>
+
+<p>
+  An identifier in isolation does little to indicate that a device is genuine.
+  You can verify that a request comes from a genuine Android device (as opposed
+  to an emulator or other code spoofing another device) using the Safetynet
+  API's <code>SafetyNet.SafetyNetApi.attest(mGoogleApiClient, nonce)</code>
+  method to verify the integrity of a device making a request. For more
+  detailed information, please see <a href=
+  "{@docRoot}training/safetynet/index.html">Safetynet's API documentation</a>.
+</p>
+
+<h3 id="i_abuse_detection_detecting_high_value_stolen_credentials">Abuse detection:
+Detecting high value stolen credentials</h3>
+
+<p>
+  <em>In this case, you are trying to detect if a single device is being used
+  multiple times with high-value, stolen credentials (e.g. to make fraudulent
+  payments).</em>
+</p>
+
+<p>
+  <strong>We Recommend</strong>: IMEI/IMSI (requires <code>PHONE</code>
+  permission group in Android 6.0 (API level 23) and higher.)
+</p>
+
+<p>
+  <strong>Why this Recommendation?</strong>
+</p>
+
+<p>
+  With stolen credentials, devices can be used to monetize multiple high value
+  stolen credentials (such as tokenized credit cards). In these scenarios,
+  software IDs can be reset to avoid detection, so hardware identifiers may be
+  used.
+</p>
\ No newline at end of file
diff --git a/docs/html/training/articles/user-data-overview.jd b/docs/html/training/articles/user-data-overview.jd
new file mode 100644
index 0000000..8715d36
--- /dev/null
+++ b/docs/html/training/articles/user-data-overview.jd
@@ -0,0 +1,269 @@
+page.title=Permissions and User Data
+page.metaDescription=An overview of permissions on Android and how to manage them.
+page.tags="user data","permissions","identifiers"
+page.image=images/cards/card-user_2x.png
+
+page.article=true
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+    <h2>In this document</h2>
+    <ol>
+      <li><a href="#introduction">Introduction</a></li>
+      <li><a href="#permission_groups">Permission Groups</a></li>
+      <li><a href="#permission_requests_and_app_downloads">Permission
+      Requests and App Downloads</a></li>
+      <li><a href="#permission_requests_trend_downward">Permission Requests
+      Trend Downward</a></li>
+    </ol>
+    <h2>You should also read</h2>
+    <ol>
+      <li><a href="{@docRoot}guide/topics/security/permissions.html">System Permissions</a></li>
+      <li><a href="{@docRoot}training/permissions/index.html">Working with System
+      Permissions</a></li>
+    </ol>
+  </div>
+</div>
+
+<p>
+  Permissions protect sensitive information available from a device and should
+  only be used when access to information is necessary for the functioning of
+  your app.
+</p>
+
+<p>
+  This document provides a high-level overview on how permissions work in
+  Android so you can make better, more informed decisions about the permissions
+  you're requesting. The information in this document is not use-case specific
+  and avoids complex, low-level discussions of the underlying code.
+</p>
+
+<p>
+  For specific recommendations on how to manage permissions, please see
+  <a href="{@docRoot}training/articles/user-data-permissions.html">Best
+  Practices for App Permissions</a>. For best practices on using unique
+  identifiers on Android, please see <a href=
+  "{@docRoot}training/articles/user-data-ids.html">Best Practices for Unique
+  Identifiers</a>. For details on how to work with permissions in your code,
+  see <a href="{@docRoot}training/permissions/index.html">Working with System
+  Permissions</a>.
+</p>
+
+
+<h2 id="introduction">Introduction</h2>
+
+<p>
+  Every Android application must have a <em>manifest file</em> that presents
+  essential information about the app to the Android system. The Android system
+  also requires apps to request permission when they want to access sensitive
+  device or user information, and these requests must be documented in advance
+  as a part of your app's manifest. Moreover, accessing sensitive information
+  can affect user behavior, so it's important to make sure you are only making
+  permission requests when that information is necessary for the functioning of
+  your app.
+</p>
+
+
+<h2 id="permission_groups">Permission Groups</h2>
+
+<p>
+  Permissions in Android are organized into <code><a href=
+  "{@docRoot}guide/topics/security/permissions.html#perm-groups">permission
+  groups</a></code> that organize, and group, permissions related to a device's
+  capabilities or features. Under this system, permission requests are handled
+  at the group level and a <em><strong>single permission group</strong></em>
+  corresponds to <em><strong>several permission declarations</strong></em> in
+  the app manifest; for example, the SMS group includes both the
+  <code>READ_SMS</code> and the <code>RECEIVE_SMS</code> declarations.
+</p>
+
+
+<div class="wrap">
+   <img src="{@docRoot}images/training/articles/user-data-overview-permissions-flow01.jpg">
+</div>
+
+<p>
+  This arrangement is simpler and more informative for users; once an app is
+  granted permission to access the group, it can use API calls within that
+  group and users with auto-update enabled will not be asked for additional
+  permissions because they have already granted access to the group. Grouping
+  permissions in this way enables the user to make more meaningful and informed
+  choices, without being overwhelmed by complex and technical permission
+  requests.
+</p>
+
+<p>
+  This also means that when you request access to a particular API call or
+  query a content provider behind a permission, the user will be presented with
+  a request to grant permission for the whole group rather than the specific
+  API call. For example, if you request the <code>WRITE_CALL_LOG</code>
+  permission, the user will be asked to grant access to the <em>PHONE</em>
+  group (in API level 23 and higher), which is composed of the
+  <code>READ_PHONE_STATE</code>, <code>CALL_PHONE</code>,
+   <code>READ_CALL_LOG</code>, <code>WRITE_CALL_LOG</code>,
+  <code>ADD_VOICEMAIL</code>,  <code>USE_SIP</code>, and
+  <code>PROCESS_OUTGOING_CALLS</code> permissions, and
+  all their associated methods.
+</p>
+
+<div class="wrap">
+   <img src="{@docRoot}images/training/articles/user-data-overview-permissions-flow02.png">
+</div>
+
+<p>
+  One consequence of grouping permissions is that a single API call within your
+  app can have a multiplying effect in terms of the number of permissions
+  requested by your app.
+</p>
+
+<ol>
+<li>API Call →</li>
+<li stydle="margin-left:.5em;">Triggers a specific <em>Permission Group</em> access
+request →</li>
+<li stydle="margin-left:1em;">Successful request grants access to all permissions in
+group (if auto-update
+enabled) →</li>
+<li stydle="margin-left:1.5em;">Each permission grants access to all APIs under that
+permission</li>
+</ol>
+
+<p>
+  As another example, let's assume your application uses one or more <a href=
+  "{@docRoot}reference/android/telephony/TelephonyManager.html"><code>TelephonyManager</code></a>
+  methods, such as:
+</p>
+
+<pre class="prettyprint">
+TelephonyManager.getDeviceId()
+TelephonyManager.getSubscriberId()
+TelephonyManager.getSimSerialNumber()
+TelephonyManager.getLine1Number()
+TelephonyManager.getVoiceMailNumber()
+</pre>
+
+<p>
+  To use these methods, the <code>READ_PHONE_STATE</code> permission must be
+  declared in the app's manifest, and the associated permission group,
+  <em>PHONE</em>, will be surfaced to the user. This
+  is important, because it means the user will be asked to grant permission for
+  the relevant group and all its associated permissions and API calls, rather
+  than for the specific API call you're requesting.
+</p>
+
+<p>For a full mapping between permissions and their associated permission groups,
+please refer to the appropriate version-specific documentation below:</p>
+
+<ul>
+  <!--<li> <a href="">pre-M Android OS versions</a>.</li> -->
+  <li> <a href="{@docRoot}guide/topics/security/permissions.html#perm-groups">Permission
+  groups, Android 6.0 Marshmallow (API level 23) and later</a>.</li>
+</ul>
+
+
+<h2 id="permission_requests_and_app_downloads">Permission Requests and App Downloads</h2>
+
+<div style="padding:.5em 2em;">
+<div style="border-left:4px solid #999;padding:0 1em;font-style:italic;">
+<p><em>I'm currently using the READ_PHONE_STATE permission in Android to pause my
+media player when there's a call, and to resume playback when the call is over.
+The permission seems to scare a lot of people</em>...<span
+style="font-size:.8em;color:#777"><sup><em><a
+href="#references" style="color:#777;padding-left:.1em;">1</a></em></sup></span></p>
+</div>
+</div>
+
+<p>
+  Research shows that among apps that are otherwise identical (e.g.,
+  functionality, brand recognition), requesting fewer permissions leads to more
+  downloads. Publicly available sources exist that assign grades to apps based
+  on their permissions usage and allow users to compare related apps by score;
+  such grades exist for many of the current Android apps and users pay close
+  attention to the related rankings.
+</p>
+
+<p>
+  One study<span style="font-size:.8em;color:#777"><sup><em><a href=
+  "#references" style=
+  "color:#777;padding-left:.1em;">2</a></em></sup></span>, in which users
+  were shown two unbranded apps with similar ratings that had the same
+  functionality but different sets of permission requests, showed that users
+  were, on average, 3 times more likely to install the app with fewer
+  permissions requests. And a similar study <span style=
+  "font-size:.8em;color:#777"><sup><em><a href="#references" style=
+  "color:#777;padding-left:.1em;">3</a></em></sup></span> showed that users are 1.7
+  times more likely, on average, to select the application with fewer
+  permission requests.
+</p>
+
+<p>
+  Finally, permissions usage is not evenly distributed across apps within
+  a similar category of Play apps. For example, 39.3% of arcade game apps in
+  the Play store request no permissions that are surfaced to the user while
+  only 1.5% of arcade games request the Phone permission group (see Figure
+  1).
+</p>
+
+<div class="wrap">
+  <div class="cols">
+    <div class="col-16of16">
+   <img src="{@docRoot}images/training/articles/user-data-overview-permissions-groups.png">
+    <p class="figure-caption"><strong>Figure 1.</strong> Distribution of
+    permission groups use across Arcade Games category.</p>
+    </div>
+  </div>
+</div>
+
+<p>
+  Users comparing your app to other similar apps may determine that it is
+  making unusual permission requests for that category - in this case, Arcade
+  Games apps accessing the <em>Phone</em> permission group. As a result, they
+  may install a similar app in that category that avoids those
+  requests.<span style="font-size:.8em;color:#777"><sup><em><a href=
+  "#references" style="color:#777;padding-left:.1em;">4</a></em></sup></span>
+</p>
+
+
+<h2 id="permission_requests_trend_downward">Permission Requests Trend Downward</h2>
+
+<p>
+  A recent analysis of Play store apps over time indicated that many developers
+  trim permissions after first publishing their apps, suggesting that they may
+  be employing more caution around which permission groups they declare.
+</p>
+
+<div class="wrap">
+  <div class="cols">
+    <div class="col-16of16">
+   <img src="{@docRoot}images/training/articles/user-data-overview-permissions-usage.jpg">
+    <p class="figure-caption"><strong>Figure 2.</strong> Developer usage of popular
+    permissions has decreased over time.</p>
+    </div>
+  </div>
+</div>
+
+<p>
+  The graph in <em>Figure 2</em> illustrates this trend. There has been a
+  steady decrease in the average percentage of developers' apps requesting at
+  least one of the three most popular permissions in the Play store
+  (<code>READ_PHONE_STATE</code>, <code>ACCESS_FINE_LOCATION</code>, and
+  <code>ACCESS_COARSE_LOCATION</code>). These results indicate that developers
+  are reducing the permissions their apps request in response to user behavior.
+</p>
+
+<p>
+  The bottom line is that providing the same functionality to the user with
+  minimal access to sensitive information means more downloads for your app.
+  For specific recommendations on how to achieve this, please see <a href=
+  "{@docRoot}training/articles/user-data-permissions.html">Best Practices for
+  Application Permissions</a>.
+</p>
+
+
+<h2 id="references">References</h2>
+
+<p>[1] Developer quote on StackOverflow. <em>(<a
+    href="http://stackoverflow.com/questions/24374701/alternative-to-read-phone-state-permission-for-getting-notified-of-call">source</a>)</em></p>
+<p>[2] <em>Using Personal Examples to Improve Risk Communication for Security and Privacy Decisions</em>, by M. Harbach, M. Hettig, S. Weber, and M. Smith. In Proceedings of ACM CHI 2014.</p>
+<p>[3] <em>Modeling Users’ Mobile App Privacy Preferences: Restoring Usability in a Sea of Permission Settings</em>, by J. Lin B. Liu, N. Sadeh and J. Hong. In Proceedings of SOUPS 2014.</p>
+<p>[4] <em>Teens and Mobile Apps Privacy. (<a href="http://www.pewinternet.org/files/old-media/Files/Reports/2013/PIP_Teens%20and%20Mobile%20Apps%20Privacy.pdf">source</a>)</em></p> 
diff --git a/docs/html/training/articles/user-data-permissions.jd b/docs/html/training/articles/user-data-permissions.jd
new file mode 100644
index 0000000..edc7558
--- /dev/null
+++ b/docs/html/training/articles/user-data-permissions.jd
@@ -0,0 +1,381 @@
+page.title=Best Practices for App Permissions
+page.metaDescription=How to manage permissions to give users context and control.
+page.tags=permissions, user data
+meta.tags="permissions", "user data"
+page.image=images/cards/card-user-permissions_2x.png
+
+page.article=true
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+    <h2>In this document</h2>
+    <ol>
+      <li><a href="#tenets_of_working_with_android_permissions">Tenets</a></li>
+      <li><a href="#version_specific_details_permissions_in_m">Permissions in Android
+      6.0+</h2></a></li>
+      <li><a href="#avoid_requesting_unnecessary_permissions">Avoid Requesting
+Unnecessary Permissions</h2></a>
+      <ol>
+        <li><a href="#a_camera_contact_access_with_real-time_user_requests">Camera/Contact
+        access with realtime user requests</a></li>
+        <li><a href="#b_running_in_the_background_after_losing_audio_focus">Running in
+the background after losing audio focus</a></li>
+        <li><a href="#c_determine_the_device_your_instance_is_running_on">Determine the
+device your instance is running on</a></li>
+        <li><a href="#d_create_a_unique_identifier_for_advertising_or_user_analytics">
+Create a unique identifier for advertising or user analytics</a></li>
+      </ol>
+      </li>
+      <li><a href="#know_the_libraries_you're_working_with">Know the Libraries You're
+Working With</a></li>
+      <li><a href="#be_transparent">Be Transparent</a></li>
+    </ol>
+    <h2>You should also read</h2>
+    <ol>
+      <li><a href="{@docRoot}guide/topics/security/permissions.html">System Permissions</a></li>
+      <li><a href="{@docRoot}training/permissions/index.html">Working with System
+      Permissions</a></li>
+    </ol>
+  </div>
+</div>
+
+<p>
+  Permission requests protect sensitive information available from a device and
+  should only be used when access to information is necessary for the
+  functioning of your app. This document provides tips on ways you might be
+  able to achieve the same (or better) functionality without requiring access
+  to such information; it is not an exhaustive discussion of how permissions
+  work in the Android operating system.
+</p>
+
+<p>
+  For a more general look at Android permissions, please see <a href=
+  "{@docRoot}training/articles/user-data-overview.html">Permissions
+  and User Data</a>. For details on how to work with permissions in your code,
+  see <a href="{@docRoot}training/permissions/index.html">Working with System Permissions</a>.
+  For best practices for working with unique identifiers, please see <a href=
+  "{@docRoot}training/articles/user-data-ids.html">Best Practices for
+  Unique Identifiers</a>. 
+</p>
+
+<h2 id="tenets_of_working_with_android_permissions">Tenets of Working
+with Android Permissions</h2>
+
+<p>
+  We recommend following these tenets when working with Android permissions:
+</p>
+
+<p>
+  <em><strong>#1: Only use the permissions necessary for your app to
+  work</strong></em>. Depending on how you are using the permissions, there may
+  be another way to do what you need (system intents, identifiers,
+  backgrounding for phone calls) without relying on access to sensitive
+  information.
+</p>
+
+<p>
+  <em><strong>#2: Pay attention to permissions required by
+  libraries.</strong></em> When you include a library, you also inherit its
+  permission requirements. You should be aware of what you're including, the
+  permissions they require, and what those permissions are used for.
+</p>
+
+<p>
+  <em><strong>#3: Be transparent.</strong></em> When you make a permissions
+  request, be clear about what you’re accessing, and why, so users can make
+  informed decisions. Make this information available alongside the permission
+  request including install, runtime, or update permission dialogues.
+</p>
+
+<p>
+  <em><strong>#4: Make system accesses explicit.</strong></em> Providing
+  continuous indications when you access sensitive capabilities (for example, the
+  camera or microphone) makes it clear to users when you’re collecting data and
+  avoids the perception that you're collecting data surreptitiously.
+</p>
+
+<p>
+  The remaining sections of this guide elaborate on these rules in the context
+  of developing Android applications.
+</p>
+
+<h2 id="version_specific_details_permissions_in_m">Permissions in Android 6.0+</h2>
+
+<p>
+  Android 6.0 Marshmallow introduced a <a href=
+  "{@docRoot}training/permissions/requesting.html">new permissions model</a> that
+  lets apps request permissions from the user at runtime, rather than prior to
+  installation. Apps that support the new model request permissions when the app
+  actually requires the services or data protected by the services. While this
+  doesn't (necessarily) change overall app behavior, it does create a few
+  changes relevant to the way sensitive user data is handled:
+</p>
+
+<p>
+  <em><strong>Increased situational context</strong></em>: Users are
+  prompted at runtime, in the context of your app, for permission to access the
+  functionality covered by those permission groups. Users are more sensitive to
+  the context in which the permission is requested, and if there’s a mismatch
+  between what you are requesting and the purpose of your app, it's even
+  more important to provide detailed explanation to the user as to why you’re
+  requesting the permission; whenever possible, you should provide an
+  explanation of your request both at the time of the request and in a
+  follow-up dialog if the user denies the request.
+</p>
+
+<p>
+  <em><strong>Greater flexibility in granting permissions</strong></em>: Users
+  can deny access to individual permissions at the time they’re requested
+  <em>and</em> in settings, but they may still be surprised when functionality is
+  broken as a result. It’s a good idea to monitor how many users are denying
+  permissions (e.g. using Google Analytics) so that you can either refactor
+  your app to avoid depending on that permission or provide a better
+  explanation of why you need the permission for your app to work properly. You
+  should also make sure that your app handles exceptions created when users
+  deny permission requests or toggle off permissions in settings.
+</p>
+
+<p>
+  <em><strong>Increased transactional burden</strong></em>: Users will be asked
+  to grant access for permission groups individually and not as a set. This
+  makes it extremely important to minimize the number of permissions you’re
+  requesting because it increases the user burden for granting permissions and
+  increases the probability that at least one of the requests will be denied.
+</p>
+
+<h2 id="avoid_requesting_unnecessary_permissions">Avoid Requesting
+Unnecessary Permissions</h2>
+
+<p>
+  This section provides alternatives to common use-cases that will help you
+  limit the number of permission requests you make. Since the number and type
+  of user-surfaced permissions requested affects downloads compared to other
+  similar apps requesting fewer permissions, it’s best to avoid requesting
+  permissions for unnecessary functionality.
+</p>
+
+<h3 id="a_camera_contact_access_with_real-time_user_requests">Camera/contact
+access with realtime user requests</h3>
+
+<p>
+  <em>In this case, you need occasional access to the device's camera or
+  contact information and don’t mind the user being asked every time you need
+  access.</em>
+</p>
+
+<p>
+  If your requirement for access to user data is infrequent &mdash; in other
+  words, it's not unacceptably disruptive for the user to be presented with a
+  runtime dialogue each time you need to access data &mdash; you can use an
+  <em>intent based request</em>. Android provides some system intents that
+  applications can use without requiring permissions because the user chooses
+  what, if anything, to share with the app at the time the intent based request
+  is issued.
+</p>
+
+<p>
+  For example, an intent action type of <code><a href=
+  "{@docRoot}reference/android/provider/MediaStore.html#ACTION_IMAGE_CAPTURE">MediaStore.ACTION_IMAGE_CAPTURE</a></code>
+  or <code><a href=
+  "{@docRoot}reference/android/provider/MediaStore.html#ACTION_VIDEO_CAPTURE">MediaStore.ACTION_VIDEO_CAPTURE</a></code>
+  can be used to capture images or videos without directly using the <a href=
+  "{@docRoot}reference/android/hardware/Camera.html">Camera</a> object (or
+  requiring the permission). In this case, the system intent will ask for the
+  user’s permission on your behalf every time an image is captured.
+</p>
+
+<h3 id="b_running_in_the_background_after_losing_audio_focus">Running in
+the background after losing audio focus</h3>
+
+<p>
+  <em>In this case, your application needs to go into the background when the
+  user gets a phone call and refocus only once the call stops.</em>
+</p>
+
+<p>
+  The common approach in these cases - for example, a media player muting or
+  pausing during a phone call - is to listen for changes in the call state
+  using <code>PhoneStateListener</code> or listening for the broadcast of
+  <code>android.intent.action.PHONE_STATE</code>. The problem with this
+  solution is that it requires the <code>READ_PHONE_STATE</code> permission,
+  which forces the user to grant access to a wide cross section of sensitive
+  data such as their device and SIM hardware IDs and the phone number of the
+  incoming call.
+</p>
+
+<p>
+  You can avoid this by requesting <code>AudioFocus</code> for your app, which
+  doesn't require explicit permissions (because it does not access sensitive
+  information). Simply put the code required to background your audio in the
+  <code><a href=
+  "{@docRoot}reference/android/media/AudioManager.OnAudioFocusChangeListener.html#onAudioFocusChange(int)">
+  onAudioFocusChange()</a></code> event handler and it will run automatically
+  when the OS shifts its audio focus. More detailed documentation on how to do
+  this can be found <a href=
+  "{@docRoot}training/managing-audio/audio-focus.html">here</a>.
+</p>
+
+<h3 id="c_determine_the_device_your_instance_is_running_on">Determine the
+device your instance is running on</h3>
+
+<p>
+  <em>In this case, you need a unique identifier to determine which device the
+  instance of your app is running on.</em>
+</p>
+
+<p>
+  Applications may have device-specific preferences or messaging (e.g., saving
+  a device-specific playlist for a user in the cloud so that they can have a
+  different playlist for their car and at home). A common solution is to
+  leverage device identifiers such as <code>Device IMEI</code>, but this
+  requires the <code>Device ID and call information</code>
+  permission group (<code>PHONE</code> in M+). It also uses an identifier which
+  cannot be reset and is shared across all apps.
+</p>
+
+<p>
+  There are two alternatives to using these types of identifiers:
+</p>
+
+<ol>
+  <li> Use the <code>com.google.android.gms.iid</code> InstanceID API.
+  <code>getInstance(Context context).getID()<strong></code> </strong>will return a
+  unique device identifier for your application instance. The
+result is an app instance scoped identifier that can be used as a key when
+storing information about the app and is reset if the user re-installs the app.
+  <li> Create your own identifier that’s scoped to your app’s storage using basic
+  system functions like <a
+  href="{@docRoot}reference/java/util/UUID.html#randomUUID()"><code>randomUUID()</code></a>.</li>
+</ol>
+
+<h3 id="d_create_a_unique_identifier_for_advertising_or_user_analytics">Create a unique
+identifier for advertising or user analytics</h3>
+
+<p>
+  <em>In this case, you need a unique identifier for building a profile for
+  users who are not signed in to your app (e.g., for ads targeting or measuring
+  conversions).</em>
+</p>
+
+<p>
+  Building a profile for advertising and user analytics sometimes requires an
+  identifier that is shared across other applications. Common solutions for
+  this involve leveraging device identifiers such as <code>Device IMEI</code>,
+  which requires the <code>Device ID</code> <code>and call information</code>
+  permission group (<code>PHONE</code> in API level 23+) and cannot be reset by
+  the user. In any of these cases, in addition to using a non-resettable
+  identifier and requesting a permission that might seem unusual to users, you
+  will also be in violation of the <a href=
+  "https://play.google.com/about/developer-content-policy.html">Play Developer
+  Program Policies</a>.
+</p>
+
+<p>
+  Unfortunately, in these cases using the
+  <code>com.google.android.gms.iid</code> InstanceID API or system functions to
+  create an app-scoped ID are not appropriate solutions because the ID may need
+  to be shared across apps. An alternative solution is to use the
+  <code>Advertising Identifier</code> available from the <code><a href=
+  "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html">
+  AdvertisingIdClient.Info</a></code> class via the <code>getId()</code>
+  method. You can create an <code>AdvertisingIdClient.Info</code> object using
+  the <code>getAdvertisingIdInfo(Context)</code> method and call the
+  <code>getId()</code> method to use the identifier. <em><strong>Note that this
+  method is blocking</strong></em>, so you should not call it from the main
+  thread; a detailed explanation of this method is available <a href=
+  "{@docRoot}google/play-services/id.html">here</a>.
+</p>
+
+<h2 id="know_the_libraries_you're_working_with">Know the Libraries You're
+Working With</h2>
+
+<p>
+  Sometimes permissions are required by the libraries you use in your app. For
+  example, ads and analytics libraries may require access to the
+  <code>Location</code> or <code>Identity</code> permissions groups to
+  implement the required functionality. But from the user’s point of view, the
+  permission request comes from your app, not the library.
+</p>
+
+<p>
+  Just as users select apps that use fewer permissions for the same
+  functionality, developers should review their libraries and select
+  third-party SDKs that are not using unnecessary permissions. For example, try
+  to avoid libraries that require the <code>Identity</code> permission group
+  unless there is a clear user-facing reason why the app needs those permissions.
+  In particular, for libraries that provide location functionality, make sure you
+  are not required to request the <code>FINE_LOCATION</code> permission unless
+  you are using location-based targeting functionality.
+</p>
+
+<h2 id="be_transparent">Be Transparent</h2>
+
+<p>You should inform your users about what you’re accessing and why. Research shows
+that users are much less uncomfortable with permissions requests if they know
+why the app needs them. A user study showed that:</p>
+
+<div style="padding:.5em 2em;">
+<div style="border-left:4px solid #999;padding:0 1em;font-style:italic;">
+<p>...a user’s willingness to grant a given permission to a given mobile app is
+strongly influenced by the purpose associated with such a permission. For
+instance a user’s willingness to grant access to his or her location will vary
+based on whether the request is required to support the app’s core
+functionality or whether it is to share this information with an advertising
+network or an analytics company.<span
+style="font-size:.8em;color:#777"><sup><em><a
+  href="#references" style="color:#777;padding-left:.1em;">1</a></em></sup></span></p>
+</div>
+</div>
+
+<p>
+  Based on his group’s research, Professor Jason Hong from CMU concluded that,
+  in general:
+</p>
+
+<div style="padding:.5em 2em;">
+<div style="border-left:4px solid #999;padding:0 1em;font-style:italic;">
+<p>...when people know why an app is using something as sensitive as their location &mdash;
+for example, for targeted advertising &mdash; it makes them more comfortable than
+when simply told an app is using their location.<span
+style="font-size:.8em;color:#777"><sup><em><a
+  href="#references" style="color:#777;padding-left:.1em;">1</a></em></sup></span></p>
+</div>
+</div>
+
+<p>
+  As a result, if you’re only using a fraction of the API calls that fall under
+  a permission group, it helps to explicitly list which of those permissions
+  you're using, and why. For example:
+</p>
+
+<ul>
+  <li> If you’re only using coarse location, let the user know this in your app
+  description or in help articles about your app. </li>
+  <li> If you need access to SMS messages to receive authentication codes that
+  protect the user from fraud, let the user know this in your app description
+  and/or the first time you access the data.</li>
+</ul>
+
+<p>
+  Under certain conditions, it's also advantageous to let users know about
+  sensitive data accesses in real-time. For example, if you’re accessing the
+  camera or microphone, it’s usually a good idea to let the user know with a
+  notification icon somewhere in your app, or in the notification tray (if the
+  application is running in the background), so it doesn't seem like you're
+  collecting data surreptitiously.
+</p>
+
+<p>
+  Ultimately, if you need to request a permission to make something in your app
+  work, but the reason is not clear to the user, find a way to let the user
+  know why you need the most sensitive permissions.
+</p>
+
+<h2 id="references">References</h2>
+
+<p>
+  [1] <em>Modeling Users’ Mobile App Privacy Preferences: Restoring Usability
+  in a Sea of Permission Settings</em>, by J. Lin B. Liu, N. Sadeh and J. Hong.
+  In Proceedings of SOUPS 2014.
+</p>
diff --git a/docs/html/training/articles/wear-permissions.jd b/docs/html/training/articles/wear-permissions.jd
new file mode 100644
index 0000000..5f226e4
--- /dev/null
+++ b/docs/html/training/articles/wear-permissions.jd
@@ -0,0 +1,323 @@
+page.title=Requesting Permissions on Android Wear
+page.tags="Permissions"
+
+page.article=true
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>In this document</h2>
+<ol class="nolist">
+  <li><a href="#scenarios">Permission Scenarios</a></li>
+  <li><a href="#requesting">Requesting Permissions</a></li>
+  <li><a href="#services">Permissions for Services</a></li>
+  <li><a href="#settings">Settings</a></li>
+</ol>
+<!-- Required platform, tools, add-ons, devices, knowledge, etc. -->
+<h2>Dependencies and prerequisites</h2>
+<ul>
+  <li><a href="{@docRoot}about/versions/marshmallow/index.html">Android 6.0</a>
+  (API Level 23) or higher on the wearable and accompanying device</li>
+  <li><a href="{@docRoot}google/play-services/index.html">Google Play
+services</a> 8.3 or higher</li>
+  <li>An <a href="{@docRoot}wear/index.html">Android Wear</a> device</li>
+</ul>
+<h2>See also</h2>
+<ul>
+  <li><a href="{@docRoot}guide/topics/security/permissions.html">System Permissions</a></li>
+  <li><a href="{@docRoot}training/permissions/index.html">Working with System Permissions</a></li>
+</ul>
+</div></div>
+
+<p><a href="{@docRoot}about/versions/marshmallow/index.html">Android 6.0</a> (API level 23)
+introduces a new <a href="{@docRoot}training/permissions/requesting.html">permissions model</a>,
+bringing some changes that are specific to Wear, and other changes that apply to all Android-powered
+devices.</p>
+
+<p>The user must now grant permissions to Wear apps separately from the handset versions of the
+apps. Previously, when a user installed a Wear app, it automatically inherited the set of
+permissions that the user had granted to the handset version of the app. However, from Android 6.0
+(API level 23), the Wear app no longer inherits these permissions. Thus, for example,
+a user might grant a handset app permission to use location data, and subsequently
+have to grant the same permission to the Wear version of the app.</p>
+
+<p>For both Wear and handset apps, the Android 6.0 (API level 23) permissions model also
+streamlines app installation and upgrade by eliminating the requirement that the user grant upfront
+every permission an app may ever need. Instead, the app does not request permissions until it
+actually needs them.</p>
+
+<p class="note"><strong>Note: </strong> For an app to use the new permissions model, it must
+specify a value of {@code 23} for both
+<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code uses-sdk-element}</a>
+and <a href="{@docRoot}tools/building/configuring-gradle.html">{@code compileSdkVersion}</a>.</p>
+
+<p>The rest of this document discusses how to use the Android 6.0 (API level 23) permissions model
+when developing Android Wear apps.</p>
+
+<h2 id="scenarios">Permission Scenarios</h2>
+
+<p>Broadly speaking, there are four scenarios you may encounter when requesting
+<a href="{@docRoot}guide/topics/security/permissions.html#normal-dangerous">dangerous permissions</a>
+on Android Wear:</p>
+
+<ul>
+   <li>The <em>Wear app</em> requests permissions for an app running on the <em>wearable</em>
+   device.</li>
+
+   <li>The <em>Wear app</em> requests permissions for an app running on the <em>handset</em>.</li>
+
+   <li>The <em>handset app</em> requests permissions for an app running on the
+   <em>wearable</em> device.</li>
+
+   <li>The wearable app uses a <em>different permission model</em> from its handset counterpart.
+   </li>
+</ul>
+
+<p>The rest of this section explains each of these scenarios. For more detailed information
+about requesting permissions, see <a href="#requesting">Requesting Permissions</a>.</p>
+
+<h3 id="wear-app-wear-perm">Wear app requests permission for an app running on the wearable
+device</h3>
+
+<p>When the Wear app requests a permission for an app running on the wearable device, the system
+displays a dialog to prompt the user for that permission. An app or service can only call the
+{@link android.support.v4.app.ActivityCompat#requestPermissions requestPermissions()}
+method from an activity. If the user interacts with your app
+<a href="#services">via a service</a>, such as
+a watch face, the service must open an activity before requesting the permission.</p>
+
+<p>Your app requests permissions in context when it’s clear why the
+permissions are needed to perform a given operation. If it's obvious that your app requires
+certain permissions, your app can prompt for them on launch. If it may not be so obvious,
+you may choose to provide additional education before prompting for a permission.</p>
+
+<p>If an app or watch face requires more than one permission at a time,
+permission requests appear one after the other.</p>
+
+<img src="{@docRoot}images/training/wear/multiple_permissions.png"
+srcset="{@docRoot}images/training/wear/multiple_permissions.png 1x,
+{@docRoot}images/training/wear/multiple_permissions_2x.png 2x"
+alt="Multiple permission screens, one after another." width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 1.</strong> Permission screens appearing in succession.
+</p>
+
+<p class="note"><strong>Note:</strong> From Android 6.0 (API level 23), Android Wear
+automatically syncs Calendar, Contact, and Location data to the Wear device. As a result, this
+scenario is the applicable one when Wear requests this data.</p>
+
+<h3>Wear app requests handset permission</h3>
+
+<p>When the Wear app requests a handset permission, the
+Wear app must send the user to the handset to accept the permission. There, the handset app can
+provide additional education to the user via an activity. The activity should include two buttons:
+one for granting, and one for denying, the permission.</p>
+
+<img src="{@docRoot}images/training/wear/open_on_phone.png"
+srcset="{@docRoot}images/training/wear/open_on_phone.png 1x,
+{@docRoot}images/training/wear/open_on_phone_2x.png 2x"
+alt="The Wear app sends the user to the handset to grant permission." width="700"
+height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 2.</strong> Sending the user to the handset to grant permission.
+</p>
+<h3>Handset app requests wearable permission</h3>
+
+<p>When the user is in a handset app and the app requires a wearable permission, the
+handset app must send the user to the wearable to accept the permission.
+The handset app uses the
+{@link android.support.v4.app.ActivityCompat#requestPermissions requestPermissions()}
+method on the wearable to trigger the system permissions dialog.</p>
+
+<img src="{@docRoot}images/training/wear/phone_requests_wear.png"
+srcset="{@docRoot}images/training/wear/phone_requests_wear.png 1x,
+{@docRoot}images/training/wear/phone_requests_wear_2x.png 2x"
+alt="The handset app sends the user to the wearable to grant permission."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 3.</strong> Sending the user to the wearable to grant permission.
+</p>
+
+<h3>Mismatching permission models between wearable and handset app</h3>
+
+<p>If your handset app begins using the Android 6.0 (API level 23) model but your
+wearable app does not, the system downloads the Wear app, but does not install it.
+The first time the user launches the app, the system prompts them to grant all pending permissions.
+Once they do so, it installs the app.
+If your app, for example a watch face, does not have a launcher, the system displays a
+stream notification asking the user to grant the permissions the app needs.
+</p>
+
+<h2 id="requesting">Permission-Request Patterns</h2>
+
+<p>There are different patterns for requesting permission from users. In order of
+priority, they are:</p>
+
+<ul>
+   <li><a href="#aic">Ask in context</a> when the permission is obviously necessary for a specific
+   functionality, but is not necessary for the app to run at all.</li>
+
+   <li><a href="#eic">Educate in context</a> when the reason for requesting the permission is
+   not obvious, and the permission is not necessary for the app to run at all.</li>
+
+   <li><a href="#auf">Ask up front</a> when the need for the permission is obvious, and the
+   permission is required in order for the app to run at all.</li>
+
+   <li><a href="#euf">Educate up front</a> when the need for the permission is not obvious, but
+   the permission is required in order for the app to run at all.</li>
+</ul>
+
+<h3 id="aic">Ask in context</h3>
+
+<p>Your app should request permissions when it’s clear why they are needed in order to perform a
+given operation. Users are more likely to grant a permission when they understand its connection to
+the feature they want to use.</p>
+
+<p>For example, an app may require a user’s location in order to show nearby
+places of interest. When the user taps to search for nearby places, the app can
+immediately request the location permission, because there is a clear
+relationship between searching for nearby places and the need for the location
+permission. The obviousness of this relationship makes it unnecessary for the app to display
+additional education screens.</p>
+
+<img src="{@docRoot}images/training/wear/ask_in_context.png"
+srcset="{@docRoot}images/training/wear/ask_in_context.png 1x,
+{@docRoot}images/training/wear/ask_in_context_2x.png 2x"
+alt="The app requests permission when it's obviously necessary."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 4.</strong> Asking in context.
+
+<h3 id="eic">Educate in context</h3>
+
+<p>If necessary, you may choose to provide additional education before prompting
+for a permission. Again, your app should do this in context of a specific
+action, if it’s unclear why your app needs access to the requested permission
+in order to complete that action.</p>
+
+<p>Figure 5 shows an example of in-context education. The app does not require permissions
+in order to start the timer, but an inline educational cue shows that part of the
+activity (location detection) is locked. When the user taps the cue, a permission-request screen
+appears, allowing the user to unlock location-detection.</p>
+
+<p>You can use the {@link
+  android.support.v4.app.ActivityCompat#shouldShowRequestPermissionRationale
+  shouldShowRequestPermissionRationale()} method to help your app decide whether to provide more
+  information. For additional details, see <a
+  href="{@docRoot}training/permissions/requesting.html#explain">Requesting Permissions
+  at Run Time</a>.</p>
+
+
+<img src="{@docRoot}images/training/wear/educate_in_context.png"
+srcset="{@docRoot}images/training/wear/educate_in_context.png 1x,
+{@docRoot}images/training/wear/educate_in_context_2x.png 2x"
+alt="When the need for the permission arises, the app explains why the permission is necessary."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 5.</strong> Educating in context.
+
+<h3 id="auf">Ask up front</h3>
+
+<p>If your app clearly requires a permission in order to work at all, you can prompt for that
+permission when the user launches the app. For example, a maps app clearly requires access
+to the device’s location to run its expected activities. No further education
+is necessary for this permission.</p>
+
+<img src="{@docRoot}images/training/wear/ask_up_front.png"
+srcset="{@docRoot}images/training/wear/ask_up_front.png 1x,
+{@docRoot}images/training/wear/ask_up_front_2x.png 2x"
+alt="If the app obviously needs a permission to run at all, it can ask for it immediately on
+launch."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 6.</strong> Asking up front.
+
+
+<h3 id="euf">Educate up front</h3>
+
+<p>In some cases, the app requires a permission for basic functionality, but the need for that
+permission is not obvious. In these cases, when the user first
+starts the app or sets a watch face, the app or watch face may choose to educate the user and
+ask for the permission.</p>
+
+<img src="{@docRoot}images/training/wear/educate_up_front.png"
+srcset="{@docRoot}images/training/wear/educate_up_front.png 1x,
+{@docRoot}images/training/wear/educate_up_front_2x.png 2x"
+alt="When requesting a permission on launch, the app can explain why it needs the permission."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 7.</strong> Educating up front.
+
+<h3 id="nope">Handling Rejection</h3>
+
+<p>If a user denies a requested permission that is not critical to an intended
+activity, do not block them from continuing the activity.  If certain parts of
+the activity are disabled by the denied permission, provide visual, actionable
+feedback. Figure 8 shows the use of a lock icon to indicate that a feature is
+locked because the user did not grant permission to use it.</p>
+
+<img src="{@docRoot}images/training/wear/deny.png"
+srcset="{@docRoot}images/training/wear/deny.png 1x,
+{@docRoot}images/training/wear/deny_2x.png 2x"
+alt="When the user denies permission, a lock icon is shown alongside the associated feature."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 8.</strong> Lock icon, showing a feature is locked because of denied permission.
+</p>
+<p>When a previously denied wearable permission dialog appears a second
+time, it includes a <strong>Deny, don't show again</strong> option. If the user
+chooses this option, then the only way for them to allow this permission in the
+future is to go into the wearable's Settings app.</p>
+
+<img src="{@docRoot}images/training/wear/ask_again.png"
+srcset="{@docRoot}images/training/wear/ask_again.png 1x,
+{@docRoot}images/training/wear/ask_again_2x.png 2x"
+alt="The system offers to stop requesting permission."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 9.</strong> Offering not to show the permission-request screen anymore.
+
+<h2 id="services">Permissions for Services</h2>
+
+<p>As mentioned above, only an activity can call the
+{@link android.support.v4.app.ActivityCompat#requestPermissions requestPermissions()}
+method, so if the user interacts with your app via a service,
+for example a watch face, the service must open a background activity before requesting
+the permission. This activity could provide additional education, or it could simply
+be an invisible activity that brings up the system dialog.</p>
+
+<p>If your wearable app runs a service that is not a watch face, and the user does not launch
+an app in which it might make sense to request a permission,
+you can post an educational notification on the wearable. The notification can
+provide an action to open an activity that then triggers the system permissions
+dialog.</p>
+
+<p class="note"><strong>Note:</strong> This is the only acceptable use of a stream notification
+for permissions requests.</p>
+
+<img src="{@docRoot}images/training/wear/for_services.png"
+srcset="{@docRoot}images/training/wear/for_services.png 1x,
+{@docRoot}images/training/wear/for_services_2x.png 2x"
+alt="The user may need to grant a permission when indirectly interacting with an app, via a
+service."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 10.</strong> A service requesting permission.
+
+<h2 id="settings">Settings</h2>
+
+<p>As with the handset, the user can change a Wear app’s permissions in Settings at any time.
+Therefore, when the user tries to do something that requires a
+permission, the app should always first call the
+{@link android.support.v4.content.ContextCompat#checkSelfPermission(android.content.Context,java.lang.String) checkSelfPermission()}
+method to see if the app currently has permission to perform this operation. The app should perform
+this check even if it knows the user has previously granted that permission, since the
+user might have subsequently revoked that permission.</p>
+
+<img src="{@docRoot}images/training/wear/for_settings.png"
+srcset="{@docRoot}images/training/wear/for_settings.png 1x,
+{@docRoot}images/training/wear/for_settings_2x.png 2x"
+alt="The user can change permissions through the Settings app."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 11.</strong> Changing settings via the Settings app.
diff --git a/docs/html/training/auto/audio/index.jd b/docs/html/training/auto/audio/index.jd
index f5a797c..9144900 100644
--- a/docs/html/training/auto/audio/index.jd
+++ b/docs/html/training/auto/audio/index.jd
@@ -19,6 +19,7 @@
     <ol>
       <li><a href="#overview">Provide Audio Services</a></li>
       <li><a href="#config_manifest">Configure Your Manifest</a></li>
+      <li><a href="#isconnected">Determine if Your App is Connected</a></li>
       <li><a href="#implement_browser">Build a Browser Service</a></li>
       <li><a href="#implement_callback">Implement Play Controls</a></li>
       <li><a href="#support_voice">Support Voice Actions</a></li>
@@ -29,8 +30,8 @@
     <ul>
       <li><a href="{@docRoot}samples/MediaBrowserService/index.html">
         MediaBrowserService</a></li>
-      <li><a href="//github.com/googlesamples/android-UniversalMusicPlayer">Universal Media
-      Player</a></li>
+      <li><a href="//github.com/googlesamples/android-UniversalMusicPlayer"
+        class="external-link">Universal Media Player</a></li>
     </ul>
 
     <h2>See Also</h2>
@@ -210,6 +211,34 @@
 <p class="note"><strong>Note:</strong> The icon you provide should have transparency enabled, so the
 icon's background gets filled in with the app's primary color.</p>
 
+<h2 id="isconnected">Determine if Your App is Connected</h2>
+<p>
+It is possible to determine if your app is selected as the current media app.</p>
+<p>
+Android Auto broadcasts an intent with <code>com.google.android.gms.car.media.STATUS</code>
+action when a user connects or disconnects from a media app. The broadcast intent is
+scoped to the package name of the media app selected. You can register a broadcast receiver in your
+app, preferably in your <a href="{@docRoot}reference/android/service/media/MediaBrowserService.html">
+MediaBrowserService</a> implementation and listen for this intent
+and adjust advertisements, metadata, and UI buttons in your app to operate safely in a vehicle.</p>
+
+<p>The broadcasted intent has a String extra <code>media_connection_status</code>, that
+contains either <code>media_connected</code> or <code>media_disconnected</code> string that represents
+ the current connection status. </p>
+
+<pre>
+IntentFilter filter = new IntentFilter("com.google.android.gms.car.media.STATUS");
+BroadcastReceiver receiver = new BroadcastReceiver() {
+    ...
+    public void onReceive(Context context, Intent intent) {
+        String status = intent.getStringExtra("media_connection_status");
+        boolean isConnectedToCar = "media_connected".equals(status);
+        // adjust settings based on the connection status
+    }
+};
+registerReceiver(receiver, filter);
+</pre>
+
 
 <h2 id="implement_browser">Build a Browser Service</h2>
 
@@ -290,13 +319,20 @@
 
 <p>Your implementation of {@link android.service.media.MediaBrowserService#onGetRoot
 onGetRoot()} returns information about the root node of the menu
-hierarchy. This root node is the parent of the top items your browse hierarchy.
+hierarchy. This root node is the parent of the top items of your browse hierarchy.
 The method is passed information about the calling client. You can use this
 information to decide if the client should have access to your content at all.
 For example, if you want to limit your app's content to a list of approved
-clients, you can compare the passed {@code clientPackageName} to your whitelist.
-If the caller isn't an approved package, you can return null to deny access to
-your content.</p>
+clients, you can compare the passed {@code clientPackageName} to your whitelist
+and verify the certificate used to sign the caller's APK.
+If the caller can't be verified to be an approved package, return null to deny access to
+your content. For an example of an app that validates that the caller is an
+approved app, see the
+<a href="https://github.com/googlesamples/android-UniversalMusicPlayer/blob/master/mobile/src/main/java/com/example/android/uamp/PackageValidator.java"
+class="external-link"><code>PackageValidator</code></a> class in the
+<a href="https://github.com/googlesamples/android-UniversalMusicPlayer"
+class="external-link">Universal Android Music Player</a> sample app.
+</p>
 
 <p>A typical implementation of {@link
 android.service.media.MediaBrowserService#onGetRoot onGetRoot()} might
@@ -307,28 +343,23 @@
 public BrowserRoot onGetRoot(String clientPackageName, int clientUid,
     Bundle rootHints) {
 
-    // To ensure you are not allowing any arbitrary app to browse your app's
-    // contents, you need to check the origin:
-    if (!PackageValidator.isCallerAllowed(this, clientPackageName, clientUid)) {
+    // Verify that the specified package is allowed to access your
+    // content! You'll need to write your own logic to do this.
+    if (!isValid(clientPackageName, clientUid)) {
         // If the request comes from an untrusted package, return null.
         // No further calls will be made to other media browsing methods.
-        LogHelper.w(TAG, "OnGetRoot: IGNORING request from untrusted package "
-                + clientPackageName);
+
         return null;
     }
-    if (ANDROID_AUTO_PACKAGE_NAME.equals(clientPackageName)) {
-        // Optional: if your app needs to adapt ads, music library or anything
-        // else that needs to run differently when connected to the car, this
-        // is where you should handle it.
-    }
-    return new BrowserRoot(MEDIA_ID_ROOT, null);
+
+    return new BrowserRoot(MY_MEDIA_ROOT_ID, null);
 }
 </pre>
 
 <p>
   The Auto device client builds the top-level menu by calling {@link
   android.service.media.MediaBrowserService#onLoadChildren onLoadChildren()}
-  with the root node object and getting it's children. The client builds
+  with the root node object and getting its children. The client builds
   submenus by calling the same method with other child nodes. The following
   example code shows a simple implementation of {@link
   android.service.media.MediaBrowserService#onLoadChildren onLoadChildren()} method:
@@ -341,21 +372,30 @@
 
     // Assume for example that the music catalog is already loaded/cached.
 
-    List&lt;MediaBrowser.MediaItem&gt; mediaItems = new ArrayList&lt;&gt;();
+    List&lt;MediaItem&gt; mediaItems = new ArrayList&lt;&gt;();
 
     // Check if this is the root menu:
-    if (MEDIA_BROWSER_ROOT.equals(parentMediaId)) {
+    if (MY_MEDIA_ROOT_ID.equals(parentMediaId)) {
 
         // build the MediaItem objects for the top level,
-        // and put them in the &lt;result&gt; list
+        // and put them in the mediaItems list
     } else {
 
         // examine the passed parentMediaId to see which submenu we're at,
-        // and put the children of that menu in the &lt;result&gt; list
+        // and put the children of that menu in the mediaItems list
     }
+    result.sendResult(mediaItems);
 }
 </pre>
 
+<p>
+  For examples of how to implement {@link
+  android.service.media.MediaBrowserService#onLoadChildren onLoadChildren()},
+  see the <a href="{@docRoot}samples/MediaBrowserService/index.html">
+  MediaBrowserService</a> and
+  <a href="https://github.com/googlesamples/android-UniversalMusicPlayer"
+  class="external-link">Universal Android Music Player</a> sample apps.
+</p>
 
 <h2 id="implement_callback">Enable Playback Control</h2>
 
@@ -480,7 +520,13 @@
 <a href="{@docRoot}training/managing-audio/index.html">Managing Audio Playback</a>, and
 <a href="{@docRoot}guide/topics/media/exoplayer.html">ExoPlayer</a>.</p>
 
-
+<a class="notice-developers-video wide"
+href="https://www.youtube.com/watch?v=xc2HZSwPcwM">
+<div>
+    <h3>Video</h3>
+    <p>Devbytes: Android Auto Voice Actions</p>
+</div>
+</a>
 <h2 id="support_voice">Support Voice Actions</h2>
 
 <p>To reduce driver distractions, you can add voice actions in your audio playback app. With voice
@@ -671,4 +717,4 @@
 the
 <a href="//github.com/googlesamples/android-UniversalMusicPlayer/">Universal Media Player</a>
 sample.
-</p>
\ No newline at end of file
+</p>
diff --git a/docs/html/training/auto/index.jd b/docs/html/training/auto/index.jd
index c34911c..0a7ceb3 100644
--- a/docs/html/training/auto/index.jd
+++ b/docs/html/training/auto/index.jd
@@ -27,8 +27,7 @@
   For more information, follow the links below to learn how to extend your Android app to support
   use in vehicles.
 </p>
-
-
+ 
 <h2 id="overview">Get Started</h2>
 
 <p>
@@ -82,3 +81,20 @@
   data-cardSizes="9x3"
   data-maxResults="6">
 </div>
+
+<h2 id="training">Video Training</h2>
+
+<div class="wrap">
+  <div class="cols">
+    <div class="col-1of2">
+      <p>If you prefer to learn through interactive video training,
+      check out this online course about extending your apps to work with Android Auto.</p>
+      <p><a href="https://www.udacity.com/course/ud875C" class="button">
+        Start the video course</a>
+      </p>
+    </div>
+    <div class="col-1of2">
+      <iframe width="300" height="169" src="https://www.youtube.com/embed/pK2HQMTdq6Y?utohide=1&amp;showinfo=0" frameborder="0" allowfullscreen="" style="float: right; margin: 0 0 20px 20px;"></iframe>
+    </div>
+  </div>
+</div>
\ No newline at end of file
diff --git a/docs/html/training/auto/messaging/index.jd b/docs/html/training/auto/messaging/index.jd
index 0177c84..fa8a8c4 100644
--- a/docs/html/training/auto/messaging/index.jd
+++ b/docs/html/training/auto/messaging/index.jd
@@ -143,17 +143,23 @@
 messages belong to. It is important to use the same tag and ID for all messages in
 a conversation, and to not use that tag for other conversations.</p>
 
-<h3 id="#workflow">Workflow</h3>
+<h3 id="workflow">Workflow</h3>
 
 <p>This section describes how the mobile device interacts with Auto to present
 messages to the user.</p>
 
 <ol>
 
-<li>The app receives a message that it wants to pass on to the user. It attaches
-the message to an  {@link
+<li>The app receives a message that it wants to pass on to the user. The app
+attaches the message to an {@link
+android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation.Builder
+UnreadConversation.Builder} object, then uses the {@link
+android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation.Builder
+UnreadConversation.Builder} to generate an {@link
 android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation
-UnreadConversation} object and attaches it to a notification. That notification
+UnreadConversation}. The app attaches that {@link
+android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation
+UnreadConversation} to a notification. That notification
 is associated with a {@link
 android.support.v4.app.NotificationCompat.CarExtender CarExtender} object, which
 indicates that the notification can be handled by Android Auto.</li>
@@ -176,7 +182,7 @@
 
 </ol>
 
-<h2 id="#manifest">Configure Your Manifest</h2>
+<h2 id="manifest">Configure Your Manifest</h2>
 
 <p>
   You configure your app <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">manifest</a>
diff --git a/docs/html/training/auto/start/index.jd b/docs/html/training/auto/start/index.jd
index 0fdcb2a..ee01fe7 100644
--- a/docs/html/training/auto/start/index.jd
+++ b/docs/html/training/auto/start/index.jd
@@ -22,6 +22,7 @@
  <h2>You should also read</h2>
  <ul>
    <li><a href="{@docRoot}design/auto/index.html">Designing for Auto</a></li>
+   <li><a href="{@docRoot}distribute/googleplay/auto.html">Distribute to Android Auto</a></li>
    <li><a href="{@docRoot}training/auto/audio/index.html">Providing Audio Playback with Auto</a></li>
    <li><a href="{@docRoot}training/auto/messaging/index.html">Providing Messaging for Auto</a></li>
  </ul>
@@ -192,18 +193,24 @@
   </li>
 </ol>
 
-<div class="figure" style="width:330px">
-  <img src="{@docRoot}images/training/auto-desktop-head-unit-server-running.png"
-      alt="" >
-  <p class="img-caption">
-    <strong>Figure 2.</strong> Notification that the head unit server is running.
-  </p>
-</div>
-<img src="{@docRoot}images/training/auto-desktop-head-unit-context-menu-enabled.png"
-    alt="" >
-<p class="img-caption">
-  <strong>Figure 1.</strong> Context menu with developer options.
-</p>
+<div class="cols">
+  <div class="col-6">
+    <img src="{@docRoot}images/training/auto-desktop-head-unit-context-menu-enabled.png"
+        alt="" >
+    <p class="img-caption">
+      <strong>Figure 1.</strong> Context menu with developer options.
+    </p>
+  </div>
+
+  <div class="col-6">
+    <img src="{@docRoot}images/training/auto-desktop-head-unit-server-running.png"
+        alt="" >
+    <p class="img-caption">
+      <strong>Figure 2.</strong> Notification that the head unit server is running.
+    </p>
+  </div>
+</div> <!-- end cols-->
+
 
 <h3 id="connecting-dhu">Connecting the DHU to your mobile device</h3>
 
@@ -213,7 +220,7 @@
 
 <ol>
   <li>On the mobile device, enable Android Auto developer mode by starting the Android Auto
-    companion app, and then tapping the header image 10 times.
+    companion app, and then tapping the <i>Android Auto</i> toolbar title 10 times.
     This step is only required the first time you run the companion app.
   </li>
   <li>If the server is not already running, select <strong>Start head unit server</strong>
@@ -221,9 +228,13 @@
     <p>On the device, a foreground service appears in the notification area. </p>
   </li>
 
-  <li>Connect the mobile device to the development machine via USB. Your device must be unlocked to
-    launch the DHU.
-  </li>
+  <li>In the Android Auto app, make sure the <strong>Only connect to known cars</strong> option
+    is disabled.</li>
+
+  <li>Connect the mobile device to the development machine via USB.</li>
+
+  <li>Make sure the mobile device has its screen unlocked, otherwise it cannot launch the DHU.</li>
+
   <li>On the development machine, run the following {@code adb} command to
     forward socket connections from the
     development machine's port 5277 to the same port number on the Android device.
@@ -241,9 +252,13 @@
 
     <p>
       By default, the head unit server connects over port 5277. To override the host or port
-      (for example, to forward over SSH), use the <code>--adb</code> flag.
+      (for example, to forward over SSH), use the
+      <code>desktop-head-unit --adb &lt;[localhost:]port&gt;</code> flag, as in
+      the following example:
     </p>
 
+    <pre class="no-pretty-print">$ ./desktop-head-unit --adb 5999</pre>
+
   </li>
 </ol>
 
diff --git a/docs/html/training/backup/autosyncapi.jd b/docs/html/training/backup/autosyncapi.jd
new file mode 100644
index 0000000..0e2a9a9
--- /dev/null
+++ b/docs/html/training/backup/autosyncapi.jd
@@ -0,0 +1,370 @@
+page.title=Configuring Auto Backup for Apps
+page.tags=backup, marshmallow, androidm
+page.keywords=backup, autobackup
+page.image=images/cards/card-auto-backup_2x.png
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>This lesson teaches you to</h2>
+<ol>
+        <li><a href="#configuring">Configure Data Backup</a></li>
+        <li><a href="#previous-androids">Support Lower Versions of Android</a></li>
+        <li><a href="#testing">Test Backup Configuration</a></li>
+        <li><a href="#issues">Handle Google Cloud Messaging</a></li>
+</ol>
+    <h2>You should also read</h2>
+    <ul>
+      <li><a href="{@docRoot}guide/topics/data/backup.html">Data Backup</a></li>
+      <li><a href="{@docRoot}training/backup/backupapi.html">Using the Backup API</a>
+      </li>
+    </ul>
+
+</div>
+</div>
+
+<p>
+  Users frequently invest time and effort to configure apps just the way they like them. Switching
+  to a new device can cancel out all that careful configuration. For apps whose <a href=
+  "{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">target SDK version</a>
+  is Android 6.0 (API level 23) and higher, devices running Android 6.0 and higher automatically
+  back up app data to the cloud. The system performs this automatic backup
+  for nearly all app data by default, and does so without your having to write any additional app
+  code.
+</p>
+
+<p class="note">
+<strong>Note:</strong> To protect user privacy, the device user must have opted in to Google
+services for Auto Backup to work. The Google services opt-in dialog appears when the user goes
+through the Setup Wizard or configures the first Google account on the device.
+</p>
+
+<p>
+  When a user installs your app on
+  a new device, or reinstalls your app on one (for example, after a factory reset), the system
+  automatically restores the app data from the cloud. This lesson provides information about how to
+  configure the Auto Backup for Apps feature, explaining its default behavior and how to
+  exclude data that you don't want the system to back up.
+</p>
+
+<p>
+  The automatic backup feature preserves the data your app creates on a user device by uploading it
+  to the user’s Google Drive account and encrypting it. There is no charge to you or the user for
+  data storage, and the saved data does not count towards the user's personal Google Drive quota.
+  Each app can store up to 25MB. Once its backed-up data reaches 25MB, the app no longer sends
+  data to the cloud. If the system performs a data restore, it uses the last data snapshot that
+  the app had sent to the cloud.
+</p>
+
+<p>Automatic backups occur when the following conditions are met:</p>
+  <ul>
+     <li>The device is idle.</li>
+     <li>The device is charging.</li>
+     <li>The device is connected to a Wi-Fi network.</li>
+     <li>At least 24 hours have elapsed since the last backup.</li>
+  </ul>
+</p>
+
+<h2 id="configuring">Configure Data Backup</h2>
+
+<p>
+  On devices running Android 6.0 (API level 23) or higher, the default system behavior is to back up
+  almost all data that an app creates. The exception is <a href="#auto-exclude">
+  automatically excluded data files</a>. This section explains how you can use settings in
+  your app <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">manifest</a> to further
+  limit and configure what data the system backs up.
+</p>
+
+<h3 id="include-exclude">Including or excluding data</h3>
+
+<p>
+  Depending on what data your app needs and how you save it, you may need to set specific
+  rules for including or excluding certain files or directories. Auto Backup for Apps
+  lets you set these backup rules through the app manifest, in which you specify a backup scheme
+  configuration XML file. For example:
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
+        xmlns:tools="http://schemas.android.com/tools"
+        package="com.my.appexample"&gt;
+    &lt;uses-sdk android:minSdkVersion="23"/&gt;
+    &lt;uses-sdk android:targetSdkVersion="23"/&gt;
+    &lt;application ...
+<strong>        android:fullBackupContent="&#64;xml/mybackupscheme"&gt;</strong>
+    &lt;/app&gt;
+    ...
+&lt;/manifest&gt;
+</pre>
+
+<p>
+  In this example, the <code>android:fullBackupContent</code> attribute specifies an XML file
+  called {@code mybackupscheme.xml}, which resides in the <code>res/xml/</code> directory of your
+  app development project. This configuration file contains rules controlling which files are backed
+  up. The following example code shows a configuration file that excludes a specific file,
+  {@code device_info.db}:
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;full-backup-content&gt;
+    &lt;exclude domain="database" path="device_info.db"/&gt;
+&lt;/full-backup-content&gt;
+</pre>
+
+<h3 id="auto-exclude">Automatically excluded data files</h3>
+
+<p>
+  Most apps do not need to, and in fact should not, back up all data. For example, the system
+  should not back up temporary files and caches. For this reason, the automatic backup
+  service excludes certain data files by default:
+</p>
+
+<ul>
+  <li>Files in the directories to which the
+  {@link android.content.Context#getCacheDir getCacheDir()} and
+  {@link android.content.Context#getCodeCacheDir getCodeCacheDir()} methods refer.
+  </li>
+
+  <li>Files located on external storage, unless they reside in the directory to which the
+    {@link android.content.Context#getExternalFilesDir getExternalFilesDir()} method refers.
+  </li>
+
+  <li>Files located in the directory to which the
+    {@link android.content.Context#getNoBackupFilesDir getNoBackupFilesDir()} method refers.
+  </li>
+</ul>
+<h3>Backup Configuration Syntax</h3>
+
+<p>
+  The backup service configuration allows you to specify what files to include or exclude from
+  backup. The syntax for the data backup configuration XML file is as follows:
+</p>
+
+<pre>
+&lt;full-backup-content&gt;
+    &lt;include domain=["file" | "database" | "sharedpref" | "external" | "root"]
+    path="string" /&gt;
+    &lt;exclude domain=["file" | "database" | "sharedpref" | "external" | "root"]
+    path="string" /&gt;
+&lt;/full-backup-content&gt;
+</pre>
+
+<p>
+  The following elements and attributes allow you to specify the files to include in, and exclude
+  from, backup:
+</p>
+
+<ul>
+  <li>
+  <code>&lt;include&gt;</code>: Specifies a set of resources to
+  back up, instead of having the system back up all data in your app by default. If you specify
+  an <code>&lt;include&gt;</code> element, the system backs up <em>only the resources specified</em>
+  with this element. You can specify multiple sets of resources to back up by using multiple
+  <code>&lt;include&gt;</code> elements
+  </li>
+
+  <li>
+  <code>&lt;exclude&gt;</code>: Specifies any data you want the system to exclude
+  when it does a full backup. If you target the same set of resources with both the
+  <code>&lt;include&gt;</code> and <code>&lt;exclude&gt;</code> elements,
+  <code>&lt;exclude&gt;</code> takes precedence.
+  </li>
+
+  <li>
+  <code>domain</code>: Specifies the type of resource you want to include in,
+  or exclude from, backup. Valid values for this attribute include:
+
+
+
+  <ul>
+    <li>
+    <code>root</code>: Specifies that the resource is in the app’s root directory.
+    </li>
+
+    <li>
+    <code>file</code>: Specifies a resource in the directory returned by the
+    {@link android.content.Context#getFilesDir getFilesDir()} method.
+    </li>
+
+    <li>
+    <code>database</code>: Specifies a database that the
+    {@link android.content.Context#getDatabasePath getDatabasePath()} method returns, or that
+    the app interacts with via the {@link android.database.sqlite.SQLiteOpenHelper} class.
+    </li>
+
+    <li>
+    <code>sharedpref</code>: Specifies a {@link android.content.SharedPreferences} object
+    that the {@link android.content.Context#getSharedPreferences getSharedPreferences()}
+    method returns.
+    </li>
+
+    <li>
+    <code>external</code>: Specifies that the resource is in external storage, and corresponds
+    to a file in the directory that the
+    {@link android.content.Context#getExternalFilesDir getExternalFilesDir()} method returns.
+    </li>
+  </ul>
+  </li>
+    <li>
+    <code>path</code>: Specifies the file path to a resource that you want to include in, or
+    exclude from, backup.
+    </li>
+
+  </li>
+</ul>
+
+
+<h3 id="disabling">Disabling data backups</h3>
+
+<p>
+  You can choose to prevent automatic backups of any of your app data by setting the
+  <code>android:allowBackup</code> attribute to <code>false</code> in the {@code app} element of
+  your manifest. This setting is illustrated in the following example:
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
+        xmlns:tools="http://schemas.android.com/tools"
+        package="com.my.appexample"&gt;
+    &lt;uses-sdk android:minSdkVersion="23"/&gt;
+    &lt;uses-sdk android:targetSdkVersion="23"/&gt;
+    &lt;application ...
+<strong>        android:allowBackup="false"&gt;</strong>
+    &lt;/application&gt;
+    ...
+&lt;/manifest&gt;
+</pre>
+
+<h2 id="previous-androids">Support Lower Versions of Android</h2>
+
+<p>There are two scenarios in which you may also need to support versions of Android lower
+than 6.0 (API level 23): You may be updating your existing app to take advantage of the
+new auto backup functionality in Android 6.0, while wanting
+to continue supporting earlier versions of Android. Or you may be releasing a new app, but
+want to make sure devices running on versions of Android predating 6.0 also have backup
+functionality.</p>
+
+<h3 id="updating">Updating an existing app to support auto backup</h3>
+
+<p>Earlier versions of Android supported a key/value-pair-based backup mechanism, in which the app
+defines a subclass of {@link android.app.backup.BackupAgent} and sets
+<a href="{@docRoot}guide/topics/manifest/application-element.html#agent">
+{@code android:backupAgent}</a> in its
+<a href="{@docRoot}guide/topics/manifest/application-element.html">app manifest</a>. If your app
+used this legacy approach, you can transition to full-data backups by adding the
+{@code android:fullBackupOnly="true"} attribute to the
+<a href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application/&gt;}</a>
+element in the manifest. When running on a device with Android 5.1
+(API level 22) or lower, your app ignores this value in the manifest, and continues performing
+backups in the previous manner.</p>
+
+<p>Even if you’re not using key/value backups, you can still use the approach described above to do
+any custom processing in {@link android.app.Activity#onCreate(android.os.Bundle) onCreate()}
+or {@link android.app.backup.BackupAgent#onFullBackup onFullBackup()}. You can also use that
+approach to receive a notification when a restore operation happens in
+{@link android.app.backup.BackupAgent#onRestoreFinished onRestoreFinished()}. If you want to retain
+the system's default implementation of
+<a href="#include-exclude">XML include/exclude rules handling</a>, call
+{@link android.app.backup.BackupAgent#onFullBackup super.onFullBackup()}.</p>
+
+<h3 id="lower-versions">Giving your new app support for lower versions of Android</h3>
+
+<p>If you are creating a new app that targets Android 6.0, but you also want to enable cloud backup
+for devices running on Android 5.1 (API level 22) and lower, you must also
+<a href="{@docRoot}training/backup/backupapi.html">implement the Backup API</a>.</p>
+
+<h2 id="testing">Test Backup Configuration</h2>
+
+<p>
+  Once you have created a backup configuration, you should test it to make sure your app saves data
+  and can restore it properly.
+</p>
+
+
+<h3>Enabling Backup Logging</h3>
+
+<p>
+  To help determine how the backup feature is parsing your XML file, enable logging before
+  performing a test backup:
+</p>
+
+<pre class="no-pretty-print">
+$ adb shell setprop log.tag.BackupXmlParserLogging VERBOSE
+</pre>
+
+<h3>Testing Backup</h3>
+
+<p>To manually run a backup, first initialize the Backup Manager by executing the following
+  command:
+</p>
+
+<pre class="no-pretty-print">
+$ adb shell bmgr run
+</pre>
+
+<p>
+  Next, manually back up your application using the following command. Use the
+  <code>&lt;PACKAGE&gt;</code> parameter to specify the package name for your app:
+</p>
+
+<pre class="no-pretty-print">
+$ adb shell bmgr fullbackup &lt;PACKAGE&gt;</pre>
+
+
+<h3>Testing restore</h3>
+
+<p>
+  To manually initiate a restore after the system has backed up your app data, execute the following
+  command, using the <code>&lt;PACKAGE&gt;</code> parameter to specify the package name for your
+  app:
+</p>
+
+<pre class="noprettyprint">
+$ adb shell bmgr restore &lt;PACKAGE&gt;
+</pre>
+
+<p class="warning">
+  <b>Warning:</b> This action stops your app and wipes its data before performing the restore
+  operation.
+</p>
+
+<p>
+  You can test automatic restore for your app by uninstalling and reinstalling your app. The app
+  data is automatically restored from the cloud once the app installation is complete.
+</p>
+
+
+<h3>Troubleshooting backups</h3>
+
+<p>
+  If backup fails, you can clear the backup data and associated metadata either by turning backup
+  off and on in <strong>Settings &gt; Backup</strong>, factory-resetting the device, or
+  executing this command:
+</p>
+
+<pre>$ adb shell bmgr wipe &lt;TRANSPORT&gt; &lt;PACKAGE&gt;</pre>
+
+<p>
+  You must prepend <code>com.google.android.gms</code> to the {@code &lt;TRANSPORT&gt;} value.
+  To get the list of <a href="{@docRoot}google/backup/index.html">transports</a>, execute the
+  following command:
+</p>
+
+<pre>$ adb shell bmgr list transports</pre>
+
+<h2 id="gcm">Handle Google Cloud Messaging</h2>
+
+  <p>
+  For apps that use <a href="https://developers.google.com/cloud-messaging/gcm">Google Cloud
+  Messaging</a> (GCM) for push notifications, backing up the registration
+  token that Google Cloud Messaging registration returned can cause unexpected behavior in
+  notifications for the restored app. This is because when a user installs your app on a new device,
+  the app must <a href="https://developers.google.com/cloud-messaging/android/client#sample-register">
+  query the GCM API for a new registration token</a>. If the old registration is present, because the
+  system had backed it up and restored it, the app doesn't seek the new token. To prevent this issue
+  from arising, exclude the registration token from the set of backed-up files.
+  </p>
diff --git a/docs/html/training/backup/backupapi.jd b/docs/html/training/backup/backupapi.jd
new file mode 100644
index 0000000..b115b8b
--- /dev/null
+++ b/docs/html/training/backup/backupapi.jd
@@ -0,0 +1,200 @@
+page.title=Using the Backup API
+parent.title=Syncing to the Cloud
+parent.link=index.html
+
+trainingnavtop=true
+
+next.title=Making the Most of Google Cloud Messaging
+next.link=gcm.html
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+    <h2>This lesson teaches you to</h2>
+    <ol>
+      <li><a href="#register">Register for the Android Backup Service</a></li>
+      <li><a href="#manifest">Configure Your Manifest</a></li>
+      <li><a href="#agent">Write Your Backup Agent</a></li>
+      <li><a href="#backup">Request a Backup</a></li>
+      <li><a href="#restore">Restore from a Backup</a></li>
+    </ol>
+    <h2>You should also read</h2>
+    <ul>
+      <li><a href="{@docRoot}guide/topics/data/backup.html">Data Backup</a></li>
+      <li><a href="{@docRoot}training/backup/autosyncapi.html">Configuring Auto Backup for Apps</a>
+      (Android 6.0 (API level 23) and higher)</li>
+    </ul>
+  </div>
+</div>
+
+<p>When a user purchases a new device or resets their existing one, they might
+expect that when Google Play restores your app back to their device during the
+initial setup, the previous data associated with the app restores as well. On versions of Android
+prior to 6.0 (API level 23), app data is not restored by default, and all the user's accomplishments
+or settings in your app are lost.</p>
+<p>For situations where the volume of data is relatively light (less than a
+megabyte), like the user's preferences, notes, game high scores or other
+stats, the Backup API provides a lightweight solution.  This lesson walks you
+through integrating the Backup API into your application, and restoring data to
+new devices using the Backup API.
+
+<p class="note">
+<strong>Note:</strong> Devices running Android 6.0 and higher
+<a href="{@docRoot}training/backup/autosyncapi.html">automatically back up</a>
+nearly all data by default.
+</p>
+
+<h2 id="register">Register for the Android Backup Service</h2>
+<p>This lesson requires the use of the <a
+  href="{@docRoot}google/backup/index.html">Android Backup
+  Service</a>, which requires registration.  Go ahead and <a
+  href="http://code.google.com/android/backup/signup.html">register here</a>.  Once
+that's done, the service pre-populates an XML tag for insertion in your Android
+Manifest, which looks like this:</p>
+<pre>
+&lt;meta-data android:name="com.google.android.backup.api_key"
+android:value="ABcDe1FGHij2KlmN3oPQRs4TUvW5xYZ" /&gt;
+</pre>
+<p>Note that each backup key works with a specific package name.  If you have
+different applications, register separate keys for each one.</p>
+
+
+<h2 id="manifest">Configure Your Manifest</h2>
+<p>Use of the Android Backup Service requires two additions to your application
+manifest.  First, declare the name of the class that acts as your backup agent,
+then add the snippet above as a child element of the Application tag.  Assuming
+your backup agent is going to be called {@code TheBackupAgent}, here's an example of
+what the manifest looks like with this tag included:</p>
+
+<pre>
+&lt;application android:label="MyApp"
+             android:backupAgent="TheBackupAgent"&gt;
+    ...
+    &lt;meta-data android:name="com.google.android.backup.api_key"
+    android:value="ABcDe1FGHij2KlmN3oPQRs4TUvW5xYZ" /&gt;
+    ...
+&lt;/application&gt;
+</pre>
+<h2 id="agent">Write Your Backup Agent</h2>
+<p>The easiest way to create your backup agent is by extending the wrapper class
+{@link android.app.backup.BackupAgentHelper}.  Creating this helper class is
+actually a very simple process.  Just create a class with the same name as you
+used in the manifest in the previous step (in this example, {@code
+TheBackupAgent}),
+and extend {@code BackupAgentHelper}.  Then override the {@link
+android.app.backup.BackupAgent#onCreate()}.</p>
+
+<p>Inside the {@link android.app.backup.BackupAgent#onCreate()} method, create a {@link
+android.app.backup.BackupHelper}.  These helpers are
+specialized classes for backing up certain kinds of data.  The Android framework
+currently includes two such helpers:  {@link
+android.app.backup.FileBackupHelper} and {@link
+android.app.backup.SharedPreferencesBackupHelper}.  After you create the helper
+and point it at the data you want to back up, just add it to the
+BackupAgentHelper using the {@link android.app.backup.BackupAgentHelper#addHelper(String, BackupHelper) addHelper()}
+method, adding a key which is used to
+retrieve the data later.  In most cases the entire
+implementation is perhaps 10 lines of code.</p>
+
+<p>Here's an example that backs up a high scores file.</p>
+
+<pre>
+import android.app.backup.BackupAgentHelper;
+import android.app.backup.FileBackupHelper;
+
+
+public class TheBackupAgent extends BackupAgentHelper {
+  // The name of the SharedPreferences file
+  static final String HIGH_SCORES_FILENAME = "scores";
+
+  // A key to uniquely identify the set of backup data
+  static final String FILES_BACKUP_KEY = "myfiles";
+
+  // Allocate a helper and add it to the backup agent
+  &#64;Override
+  void onCreate() {
+      FileBackupHelper helper = new FileBackupHelper(this, HIGH_SCORES_FILENAME);
+      addHelper(FILES_BACKUP_KEY, helper);
+  }
+}
+</pre>
+<p>For added flexibility, {@link android.app.backup.FileBackupHelper}'s
+constructor can take a variable number of filenames.  You could just as easily
+have backed up both a high scores file and a game progress file just by adding
+an extra parameter, like this:</p>
+<pre>
+&#64;Override
+  void onCreate() {
+      FileBackupHelper helper = new FileBackupHelper(this, HIGH_SCORES_FILENAME, PROGRESS_FILENAME);
+      addHelper(FILES_BACKUP_KEY, helper);
+  }
+</pre>
+<p>Backing up preferences is similarly easy.  Create a {@link
+android.app.backup.SharedPreferencesBackupHelper}  the same way you did a {@link
+android.app.backup.FileBackupHelper}.  In this case, instead of adding filenames
+to the constructor, add the names of the shared preference groups being used by
+your application.  Here's an example of how your backup agent helper might look if
+high scores are implemented as preferences instead of a flat file:</p>
+
+<pre>
+import android.app.backup.BackupAgentHelper;
+import android.app.backup.SharedPreferencesBackupHelper;
+
+public class TheBackupAgent extends BackupAgentHelper {
+    // The names of the SharedPreferences groups that the application maintains.  These
+    // are the same strings that are passed to getSharedPreferences(String, int).
+    static final String PREFS_DISPLAY = "displayprefs";
+    static final String PREFS_SCORES = "highscores";
+
+    // An arbitrary string used within the BackupAgentHelper implementation to
+    // identify the SharedPreferencesBackupHelper's data.
+    static final String MY_PREFS_BACKUP_KEY = "myprefs";
+
+    // Simply allocate a helper and install it
+    void onCreate() {
+       SharedPreferencesBackupHelper helper =
+                new SharedPreferencesBackupHelper(this, PREFS_DISPLAY, PREFS_SCORES);
+        addHelper(MY_PREFS_BACKUP_KEY, helper);
+    }
+}
+</pre>
+
+<p>You can add as many backup helper instances to your backup agent helper as you
+like, but remember that you only need one of each type.  One {@link
+android.app.backup.FileBackupHelper} handles all the files that you need to back up, and one
+{@link android.app.backup.SharedPreferencesBackupHelper} handles all the shared
+preferencegroups you need backed up.
+</p>
+
+
+<h2 id="backup">Request a Backup</h2>
+<p>In order to request a backup, just create an instance of the {@link
+android.app.backup.BackupManager}, and call it's {@link
+android.app.backup.BackupManager#dataChanged()} method.</p>
+
+<pre>
+import android.app.backup.BackupManager;
+...
+
+public void requestBackup() {
+  BackupManager bm = new BackupManager(this);
+  bm.dataChanged();
+}
+</pre>
+
+<p>This call notifies the backup manager that there is data ready to be backed
+up to the cloud.  At some point in the future, the backup manager then calls
+your backup agent's {@link
+android.app.backup.BackupAgent#onBackup(ParcelFileDescriptor, BackupDataOutput,
+ParcelFileDescriptor) onBackup()} method.  You can make
+the call whenever your data has changed, without having to worry about causing
+excessive network activity.  If you request a backup twice before a backup
+occurs, the backup only occurs once.</p>
+
+
+<h2 id="restore">Restore from a Backup</h2>
+<p>Typically you shouldn't ever have to manually request a restore, as it
+happens automatically when your application is installed on a device.  However,
+if it <em>is</em> necessary to trigger a manual restore, just call the
+{@link android.app.backup.BackupManager#requestRestore(RestoreObserver) requestRestore()} method.</p>
diff --git a/docs/html/training/backup/index.jd b/docs/html/training/backup/index.jd
new file mode 100644
index 0000000..4449fde
--- /dev/null
+++ b/docs/html/training/backup/index.jd
@@ -0,0 +1,47 @@
+page.title=Backing up App Data to the Cloud
+page.tags=cloud,sync,backup
+
+trainingnavtop=true
+startpage=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>Dependencies and prerequisites</h2>
+<ul>
+  <li>Android 2.2 (API level 8) and higher</li>
+</ul>
+</div>
+</div>
+
+<p>Users often invest significant time and effort creating data and setting
+preferences within apps. Preserving that data for users if they replace a broken
+device or upgrade to a new one is an important part of ensuring a great user
+experience.</p>
+
+<p>This class covers techniques for backing up data to the cloud so that
+users can restore their data when recovering from a data loss (such as a factory
+reset) or installing your application on a new device.</p>
+
+<p>It is important to note that the API for cloud backup changed with the
+release of Android 6.0 (API level 23). For your app to support backup both
+on devices running Android 6.0, and those running Android 5.1 (API level
+22) and lower, you must implement both techniques that this class explains.</p>
+
+<h2>Lessons</h2>
+
+<dl>
+	<dt><strong><a href="autosyncapi.html">Configuring Auto Backup for Apps</a></strong></dt>
+	<dd>This lesson applies to Android 6.0 (API level 23) and higher. Learn how to accomplish
+  seamless app data backup and restore with zero additional lines of application code.</dd>
+</dl>
+
+<dl>
+  <dt><strong><a href="backupapi.html">Using the Backup API</a></strong></dt>
+  <dd>This lesson applies to Android 5.1 (API level 22) and lower. Learn how to integrate the Backup
+  API into your Android app, so all of that  app's user data, such as preferences, notes, and high
+  scores, updates seamlessly across all devices linked to that Google account.</dd>
+</dl>
+
diff --git a/docs/html/training/basics/actionbar/adding-buttons.jd b/docs/html/training/basics/actionbar/adding-buttons.jd
deleted file mode 100644
index caee729..0000000
--- a/docs/html/training/basics/actionbar/adding-buttons.jd
+++ /dev/null
@@ -1,226 +0,0 @@
-page.title=Adding Action Buttons
-page.tags=actionbar
-helpoutsWidget=true
-
-trainingnavtop=true
-
-@jd:body
-
-<div id="tb-wrapper">
-  <div id="tb">
-
-<h2>This lesson teaches you to</h2>
-<ol>
-  <li><a href="#XML">Specify the Actions in XML</a></li>
-  <li><a href="#AddActions">Add the Actions to the Action Bar</a></li>
-  <li><a href="#Respond">Respond to Action Buttons</a></li>
-  <li><a href="#UpNav">Add Up Button for Low-level Activities</a></li>
-</ol>
-
-<h2>You should also read</h2>
-<ul>
-  <li><a href="{@docRoot}training/implementing-navigation/ancestral.html">Providing Up
-  Navigation</a></li>
-  </div>
-</div>
-
-
-
-<p>The action bar allows you to add buttons for the most important action
-items relating to the app's current
-context. Those that appear directly in the action bar with an icon and/or text are known
-as <em>action buttons</em>. Actions that can't fit in the action bar or aren't
-important enough are hidden in the action overflow.</p>
-
-<img src="{@docRoot}images/training/basics/actionbar-actions.png" height="100" alt=""/>
-<p class="img-caption"><strong>Figure 1.</strong> An action bar with an action button
-for Search and the action overflow, which reveals additional actions.</a>
-
-
-<h2 id="XML">Specify the Actions in XML</h2>
-
-<p>All action buttons and other items available in the action overflow are defined
-in an XML <a
-href="{@docRoot}guide/topics/resources/menu-resource.html">menu resource</a>. To add
-actions to the action bar, create a new XML file in your project's
-{@code res/menu/} directory.</p>
-
-<p>Add an {@code <item>} element for each item you want to include in the action bar.
-For example:</p>
-
-<p class="code-caption">res/menu/main_activity_actions.xml</p>
-<pre>
-&lt;menu xmlns:android="http://schemas.android.com/apk/res/android" >
-    &lt;!-- Search, should appear as action button -->
-    &lt;item android:id="@+id/action_search"
-          android:icon="@drawable/ic_action_search"
-          android:title="@string/action_search"
-          android:showAsAction="ifRoom" /&gt;
-    &lt;!-- Settings, should always be in the overflow -->
-    &lt;item android:id="@+id/action_settings"
-          android:title="@string/action_settings"
-          android:showAsAction="never" /&gt;
-&lt;/menu&gt;
-</pre>
-
-<div class="sidebox">
-<h3>Download action bar icons</h3>
-<p>To best match the Android <a
-href="{@docRoot}design/style/iconography.html#action-bar">iconography</a> guidelines, you should
-use icons provided in the
-<a href="{@docRoot}design/downloads/index.html#action-bar-icon-pack">Action Bar Icon Pack</a>.</p>
-</div>
-
-<p>This declares that the Search action should appear as an action button when room
-is available in the action bar, but the
-Settings action should always appear in the overflow. (By default, all actions appear in the
-overflow, but it's good practice to explicitly declare your design intentions for each action.)
-
-<p>The {@code icon} attribute requires a resource ID for an
-image. The name that follows {@code @drawable/} must be the name of a bitmap image you've
-saved in your project's {@code res/drawable/} directory. For example,
-{@code "@drawable/ic_action_search"} refers to {@code ic_action_search.png}.
-Likewise, the {@code title} attribute uses a string resource that's defined by an XML
-file in your project's {@code res/values/} directory, as discussed in <a
-href="{@docRoot}training/basics/firstapp/building-ui.html#Strings">Building a Simple User
-Interface</a>.
-
-<p class="note"><strong>Note:</strong> When creating icons and other bitmap images for your app,
-it's important that you provide multiple versions that are each optimized for a different screen
-density. This is discussed more in the lesson about <a
-href="{@docRoot}training/basics/supporting-devices/screens.html">Supporting Different Screens</a>.
-
-<p><strong>If your app is using the Support Library</strong> for compatibility on versions
-as low as Android 2.1, the {@code showAsAction} attribute is not available from
-the {@code android:} namespace. Instead this attribute is provided by the Support Library
-and you must define your own XML namespace and use that namespace as the attribute prefix.
-(A custom XML namespace should be based on your app name, but it can be any
-name you want and is only accessible within the scope of the file in which you declare it.)
-For example:</p>
-
-<p class="code-caption">res/menu/main_activity_actions.xml</p>
-<pre>
-&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"
-      <strong>xmlns:yourapp="http://schemas.android.com/apk/res-auto"</strong> >
-    &lt;!-- Search, should appear as action button -->
-    &lt;item android:id="@+id/action_search"
-          android:icon="@drawable/ic_action_search"
-          android:title="@string/action_search"
-          <strong>yourapp:showAsAction="ifRoom"</strong>  /&gt;
-    ...
-&lt;/menu&gt;
-</pre>
-
-
-
-<h2 id="AddActions">Add the Actions to the Action Bar</h2>
-
-<p>To place the menu items into the action bar, implement the
-{@link android.app.Activity#onCreateOptionsMenu onCreateOptionsMenu()} callback
-method in your activity to inflate the menu resource into the given {@link android.view.Menu}
-object. For example:</p>
-
-<pre>
-&#64;Override
-public boolean onCreateOptionsMenu(Menu menu) {
-    // Inflate the menu items for use in the action bar
-    MenuInflater inflater = getMenuInflater();
-    inflater.inflate(R.menu.main_activity_actions, menu);
-    return super.onCreateOptionsMenu(menu);
-}
-</pre>
-
-
-
-<h2 id="Respond">Respond to Action Buttons</h2>
-
-<p>When the user presses one of the action buttons or another item in the action overflow,
-the system calls your activity's {@link android.app.Activity#onOptionsItemSelected
-onOptionsItemSelected()} callback method. In your implementation of this method,
-call {@link android.view.MenuItem#getItemId getItemId()} on the given {@link android.view.MenuItem} to
-determine which item was pressed&mdash;the returned ID matches the value you declared in the
-corresponding {@code <item>} element's {@code android:id} attribute.</p>
-
-<pre>
-&#64;Override
-public boolean onOptionsItemSelected(MenuItem item) {
-    // Handle presses on the action bar items
-    switch (item.getItemId()) {
-        case R.id.action_search:
-            openSearch();
-            return true;
-        case R.id.action_settings:
-            openSettings();
-            return true;
-        default:
-            return super.onOptionsItemSelected(item);
-    }
-}
-</pre>
-
-
-
-<h2 id="UpNav">Add Up Button for Low-level Activities</h2>
-
-<div class="figure" style="width:240px">
-  <img src="{@docRoot}images/ui/actionbar-up.png" width="240" alt="">
-  <p class="img-caption"><strong>Figure 4.</strong> The <em>Up</em> button in Gmail.</p>
-</div>
-
-<p>All screens in your app that are not the main entrance to your app
-(activities that are not the "home" screen) should
-offer the user a way to navigate to the logical parent screen in the app's hierarchy by pressing
-the <em>Up</em> button in the action bar.</p>
-
-<p>When running on Android 4.1 (API level 16) or higher, or when using {@link
-android.support.v7.app.ActionBarActivity} from the Support Library, performing <em>Up</em>
-navigation simply requires that you declare the parent activity in the manifest file and enable
-the <em>Up</em> button for the action bar.</p>
-
-<p>For example, here's how you can declare an activity's parent in the manifest:</p>
-
-<pre>
-&lt;application ... >
-    ...
-    &lt;!-- The main/home activity (it has no parent activity) -->
-    &lt;activity
-        android:name="com.example.myfirstapp.MainActivity" ...>
-        ...
-    &lt;/activity>
-    &lt;!-- A child of the main activity -->
-    &lt;activity
-        android:name="com.example.myfirstapp.DisplayMessageActivity"
-        android:label="@string/title_activity_display_message"
-        android:parentActivityName="com.example.myfirstapp.MainActivity" >
-        &lt;!-- Parent activity meta-data to support 4.0 and lower -->
-        &lt;meta-data
-            android:name="android.support.PARENT_ACTIVITY"
-            android:value="com.example.myfirstapp.MainActivity" />
-    &lt;/activity>
-&lt;/application>
-</pre>
-
-  <p>Then enable the app icon as the <em>Up</em> button by calling
-{@link android.app.ActionBar#setDisplayHomeAsUpEnabled setDisplayHomeAsUpEnabled()}:</p>
-
-<pre>
-{@literal @}Override
-public void onCreate(Bundle savedInstanceState) {
-    super.onCreate(savedInstanceState);
-    setContentView(R.layout.activity_displaymessage);
-
-    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
-    // If your minSdkVersion is 11 or higher, instead use:
-    // getActionBar().setDisplayHomeAsUpEnabled(true);
-}
-</pre>
-
-<p>Because the system now knows {@code MainActivity} is the parent activity for
-{@code DisplayMessageActivity}, when the user presses the
-<em>Up</em> button, the system navigates to
-the parent activity as appropriate&mdash;you <strong>do not</strong> need to handle the
-<em>Up</em> button's event.</p>
-
-<p>For more information about up navigation, see
-<a href="{@docRoot}training/implementing-navigation/ancestral.html">Providing Up
-  Navigation</a>.
\ No newline at end of file
diff --git a/docs/html/training/basics/actionbar/index.jd b/docs/html/training/basics/actionbar/index.jd
deleted file mode 100644
index 6a8eaff..0000000
--- a/docs/html/training/basics/actionbar/index.jd
+++ /dev/null
@@ -1,69 +0,0 @@
-page.title=Adding the Action Bar
-page.tags=actionbar
-helpoutsWidget=true
-
-trainingnavtop=true
-startpage=true
-
-@jd:body
-
-<div id="tb-wrapper">
-<div id="tb">
-
-<h2>Dependencies and prerequisites</h2>
-<ul>
-  <li>Android 2.1 or higher</li>
-</ul>
-
-
-<h2>You should also read</h2>
-<ul>
-  <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a></li>
-  <li><a href="{@docRoot}training/implementing-navigation/index.html">Implementing
-  Effective Navigation</a></li>
-</ul>
-
-</div>
-</div>
-
-<a class="notice-designers wide" href="{@docRoot}design/patterns/actionbar.html">
-  <div>
-    <h3>Design Guide</h3>
-    <p>Action Bar</p>
-  </div>
-</a>
-
-<p>The action bar is one of the most important design elements you can implement for your
-app's activities. It provides several user interface features that make your app immediately
-familiar to users by offering consistency between other Android apps. Key functions include:</p>
-
-<ul>
-  <li>A dedicated space for giving your app an identity and indicating the user's location
-  in the app.</li>
-  <li>Access to important actions in a predictable way (such as Search).</li>
-  <li>Support for navigation and view switching (with tabs or drop-down lists).</li>
-</ul>
-
-<img src="{@docRoot}images/training/basics/actionbar-actions.png" height="100" alt="">
-
-<p>This training class offers a quick guide to the action bar's basics. For more information
-about action bar's various features, see the
-<a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> guide.</p>
-
-
-<h2>Lessons</h2>
-
-<dl>
-  <dt><b><a href="setting-up.html">Setting Up the Action Bar</a></b></dt>
-  <dd>Learn how to add a basic action bar to your activity, whether your app
-  supports only Android 3.0 and higher or also supports versions as low as Android 2.1
-  (by using the Android Support Library).</dd>
-  <dt><b><a href="adding-buttons.html">Adding Action Buttons</a></b></dt>
-  <dd>Learn how to add and respond to user actions in the action bar.</dd>
-  <dt><b><a href="styling.html">Styling the Action Bar</a></b></dt>
-  <dd>Learn how to customize the appearance of your action bar.</dd>
-  <dt><b><a href="overlaying.html">Overlaying the Action Bar</a></b></dt>
-  <dd>Learn how to overlay the action bar in front of your layout, allowing for
-  seamless transitions when hiding the action bar.</dd>
-</dl>
-
diff --git a/docs/html/training/basics/actionbar/overlaying.jd b/docs/html/training/basics/actionbar/overlaying.jd
deleted file mode 100644
index 634534e..0000000
--- a/docs/html/training/basics/actionbar/overlaying.jd
+++ /dev/null
@@ -1,143 +0,0 @@
-page.title=Overlaying the Action Bar
-page.tags=actionbar
-helpoutsWidget=true
-
-trainingnavtop=true
-
-@jd:body
-
-
-<div id="tb-wrapper">
-  <div id="tb">
-
-<h2>This lesson teaches you to</h2>
-<ol>
-  <li><a href="#EnableOverlay">Enable Overlay Mode</a>
-    <ol>
-      <li><a href="#Overlay11">For Android 3.0 and higher only</a></li>
-      <li><a href="#Overlay7">For Android 2.1 and higher</a></li>
-    </ol>
-  </li>
-  <li><a href="#TopMargin">Specify Layout Top-margin</a></li>
-</ol>
-
-<h2>You should also read</h2>
-<ul>
-  <li><a href="{@docRoot}guide/topics/ui/themes.html">Styles and Themes</a></li>
-</ul>
-  </div>
-</div>
-
-
-<p>By default, the action bar appears at the top of your activity window,
-slightly reducing the amount of space available for the rest of your activity's layout.
-If, during the course of user interaction, you want to hide and show the action bar, you can do so
-by calling {@link android.app.ActionBar#hide()} and
-{@link android.app.ActionBar#show()} on the {@link android.app.ActionBar}. However,
-this causes your activity to recompute and redraw the layout based on its new size.</p>
-
-
-<div class="figure" style="width:280px">
-  <img src="{@docRoot}images/training/basics/actionbar-overlay@2x.png" width="280" alt="" />
-  <p class="img-caption"><strong>Figure 1.</strong> Gallery's action bar in overlay mode.</p>
-</div>
-
-<p>To avoid resizing your layout when the action bar hides and shows, you can enable <em>overlay
-mode</em> for the action bar. When in overlay mode, your activity layout uses all the space
-available as if the action bar is not there and the system draws the action bar in front of
-your layout. This obscures some of the layout at the top, but now when the action bar hides or
-appears, the system does not need to resize your layout and the transition is seamless.</p>
-
-<p class="note"><strong>Tip:</strong>
-If you want your layout to be partially visible behind the action bar, create a custom
-style for the action bar with a partially transparent background, such as the one shown
-in figure 1. For information about how to define the action bar background, read
-<a href="{@docRoot}training/basics/actionbar/styling.html">Styling the Action Bar</a>.</p>
-
-
-<h2 id="EnableOverlay">Enable Overlay Mode</h2>
-
-<p>To enable overlay mode for the action bar, you need to create a custom theme that
-extends an existing action bar theme and set the {@code android:windowActionBarOverlay} property to
-{@code true}.</p>
-
-
-<h3 id="Overlay11">For Android 3.0 and higher only</h3>
-
-<p>If your
-<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a>
-is set to {@code 11} or higher, your custom theme should use
-{@link android.R.style#Theme_Holo Theme.Holo} theme (or one of its descendants) as your parent
-theme. For example:</p>
-
-<pre>
-&lt;resources>
-    &lt;!-- the theme applied to the application or activity -->
-    &lt;style name="CustomActionBarTheme"
-           parent="&#64;android:style/Theme.Holo">
-        &lt;item name="android:windowActionBarOverlay">true&lt;/item>
-    &lt;/style>
-&lt;/resources>
-</pre>
-
-
-<h3 id="Overlay7">For Android 2.1 and higher</h3>
-
-<p>If your app is using the Support Library for compatibility on devices
-running versions lower than Android 3.0, your custom theme should use
-{@link android.support.v7.appcompat.R.style#Theme_AppCompat Theme.AppCompat} theme
-(or one of its descendants) as your parent theme. For example:</p>
-
-<pre>
-&lt;resources>
-    &lt;!-- the theme applied to the application or activity -->
-    &lt;style name="CustomActionBarTheme"
-           parent="&#64;android:style/Theme.<strong>AppCompat</strong>">
-        &lt;item name="android:windowActionBarOverlay">true&lt;/item>
-
-        &lt;!-- Support library compatibility -->
-        &lt;item name="windowActionBarOverlay">true&lt;/item>
-    &lt;/style>
-&lt;/resources>
-</pre>
-
-<p>Also notice that this theme includes two definitions for the {@code windowActionBarOverlay}
-style: one with the {@code android:} prefix and one without. The one with the {@code android:}
-prefix is for versions of Android that include the style in the platform and the one
-without the prefix is for older versions that read the style from the Support Library.</p>
-
-
-
-
-
-<h2 id="TopMargin">Specify Layout Top-margin</h2>
-
-<p>When the action bar is in overlay mode, it might obscure some of your layout that should
-remain visible. To ensure that such items remain below the action bar at all times,
-add either margin or padding to the top of the view(s)
-using the height specified by {@link android.R.attr#actionBarSize}. For example:</p>
-
-<pre>
-&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:paddingTop="?android:attr/actionBarSize">
-    ...
-&lt;/RelativeLayout>
-</pre>
-
-<p>If you're using the Support Library for the action bar, you need to remove the
-{@code android:} prefix. For example:</p>
-
-<pre>
-&lt;!-- Support library compatibility -->
-&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:paddingTop="?attr/actionBarSize">
-    ...
-&lt;/RelativeLayout>
-</pre>
-
-<p>In this case, the {@code ?attr/actionBarSize} value without the
-prefix works on all versions, including Android 3.0 and higher.</p>
\ No newline at end of file
diff --git a/docs/html/training/basics/actionbar/setting-up.jd b/docs/html/training/basics/actionbar/setting-up.jd
deleted file mode 100644
index 2cd4140..0000000
--- a/docs/html/training/basics/actionbar/setting-up.jd
+++ /dev/null
@@ -1,114 +0,0 @@
-page.title=Setting Up the Action Bar
-page.tags=actionbar
-helpoutsWidget=true
-
-trainingnavtop=true
-
-@jd:body
-
-<div id="tb-wrapper">
-  <div id="tb">
-
-<h2>This lesson teaches you to</h2>
-<ol>
-  <li><a href="#ApiLevel11">Support Android 3.0 and Above Only</a></li>
-  <li><a href="#ApiLevel7">Support Android 2.1 and Above</a></li>
-</ol>
-
-<h2>You should also read</h2>
-<ul>
-  <li><a href="{@docRoot}tools/support-library/setup.html"
->Setting Up the Support Library</a></li>
-</ul>
-  </div>
-</div>
-
-
-<p>In its most basic form, the action bar displays the title for the activity
-and the app icon on the left. Even in this simple form, the action bar
-is useful for all activities to inform
-users about where they are and to maintain a consistent identity for your app.</p>
-
-<img src="{@docRoot}images/training/basics/actionbar-basic.png" height="100" alt=""/>
-<p class="img-caption"><strong>Figure 1.</strong> An action bar with the app icon and
-activity title.</a>
-
-<p>Setting up a basic action bar requires that your app use an activity theme that enables
-the action bar. How to request such a theme depends on which version of Android is the
-lowest supported by your app. So this
-lesson is divided into two sections depending on which Android
-version is your lowest supported.</p>
-
-
-<h2 id="ApiLevel11">Support Android 3.0 and Above Only</h2>
-
-<p>Beginning with Android 3.0 (API level 11), the action bar is included in all
-activities that use the {@link android.R.style#Theme_Holo Theme.Holo} theme (or one of its
-descendants), which is the default theme when either the <a
-href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a> or
-<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a>
-attribute is set to <code>"11"</code> or greater.</p>
-
-<p>So to add the action bar to your activities, simply set either attribute to
-{@code 11} or higher. For example:</p>
-
-<pre>
-&lt;manifest ... &gt;
-    &lt;uses-sdk android:minSdkVersion="11" ... /&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
-
-<p class="note"><strong>Note:</strong> If you've created a custom theme, be sure it uses one
-of the {@link android.R.style#Theme_Holo Theme.Holo} themes as its parent. For details,
-see <a href="{@docRoot}training/basics/actionbar/styling.html">Styling the Action Bar</a>.</p>
-
-<p>Now the {@link android.R.style#Theme_Holo Theme.Holo} theme is applied to your app and
-all activities show the action bar. That's it.</p>
-
-
-
-<h2 id="ApiLevel7">Support Android 2.1 and Above</h2>
-
-<p>Adding the action bar when running on versions older than Android 3.0 (down to Android 2.1)
-requires that you include the Android Support Library in your application.</p>
-
-<p>To get started, read the <a href="{@docRoot}tools/support-library/setup.html"
->Support Library Setup</a> document and set up the <strong>v7 appcompat</strong>
-library (once you've downloaded the library package, follow the instructions for <a
-href="{@docRoot}tools/support-library/setup.html#libs-with-res">Adding libraries with
-resources</a>).</p>
-
-<p>Once you have the Support Library integrated with your app project:</p>
-
-<ol>
-  <li>Update your activity so that it extends {@link android.support.v7.app.ActionBarActivity}.
-  For example:
-<pre>
-public class MainActivity extends ActionBarActivity { ... }
-</pre>
-  </li>
-  <li>In your manifest file, update either the <a
-  href="{@docRoot}guide/topics/manifest/application-element.html">{@code
-  <application>}</a> element or individual
-  <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code <activity>}</a>
-  elements to use one of the {@link android.support.v7.appcompat.R.style#Theme_AppCompat
-  Theme.AppCompat} themes. For example:
-  <pre>&lt;activity android:theme="@style/Theme.AppCompat.Light" ... ></pre>
-  <p class="note"><strong>Note:</strong> If you've created a custom theme, be sure it uses one
-of the {@link android.support.v7.appcompat.R.style#Theme_AppCompat Theme.AppCompat} themes as
-its parent. For details, see <a href="{@docRoot}training/basics/actionbar/styling.html">Styling
-the Action Bar</a>.</p>
-  </li>
-</ol>
-
-<p>Now your activity includes the action bar when running on Android 2.1 (API level 7) or higher.
-</p>
-
-<p>Remember to properly set your app's API level support in the manifest:</p>
-<pre>
-&lt;manifest ... &gt;
-    &lt;uses-sdk android:minSdkVersion="7"  android:targetSdkVersion="18" /&gt;
-    ...
-&lt;/manifest&gt;
-</pre>
\ No newline at end of file
diff --git a/docs/html/training/basics/actionbar/styling.jd b/docs/html/training/basics/actionbar/styling.jd
deleted file mode 100644
index b658423..0000000
--- a/docs/html/training/basics/actionbar/styling.jd
+++ /dev/null
@@ -1,450 +0,0 @@
-page.title=Styling the Action Bar
-page.tags=actionbar
-helpoutsWidget=true
-
-trainingnavtop=true
-
-@jd:body
-
-
-<div id="tb-wrapper">
-  <div id="tb">
-
-<h2>This lesson teaches you to</h2>
-<ol>
-  <li><a href="#AndroidThemes">Use an Android Theme</a></li>
-  <li><a href="#CustomBackground">Customize the Background</a></li>
-  <li><a href="#CustomText">Customize the Text Color</a></li>
-  <li><a href="#CustomTabs">Customize the Tab Indicator</a></li>
-</ol>
-
-<h2>You should also read</h2>
-<ul>
-  <li><a href="{@docRoot}guide/topics/ui/themes.html">Styles and Themes</a></li>
-  <li><a class="external-link" target="_blank"
-  href="http://www.actionbarstylegenerator.com">Android Action Bar Style
-  Generator</a></li>
-</ul>
-
-  </div>
-</div>
-
-
-
-<p>The action bar provides your users a familiar and predictable way to perform
-actions and navigate your app, but that doesn't mean it needs to look exactly the
-same as it does in other apps. If you want to style the action bar to better fit your product
-brand, you can easily do so using Android's <a href="{@docRoot}guide/topics/ui/themes.html">style
-and theme</a> resources.</p>
-
-<p>Android includes a few built-in activity themes that include "dark" or "light" action bar
-styles. You can also extend these themes to further customize the look for your action bar.</p>
-
-<p class="note" style="clear:left"><strong>Note:</strong> If you are using the Support Library APIs
-for the action bar, then you must use (or override) the {@link
-android.support.v7.appcompat.R.style#Theme_AppCompat Theme.AppCompat} family of styles (rather
-than the {@link android.R.style#Theme_Holo Theme.Holo} family, available in API level 11 and
-higher). In doing so, each style property that you declare must be declared twice: once using
-the platform's style properties (the
-{@link android.R.attr android:} properties) and once using the
-style properties included in the Support Library (the {@link android.support.v7.appcompat.R.attr
-appcompat.R.attr} properties&mdash;the context for these properties is actually
-<em>your app</em>). See the examples below for details.</p>
-
-
-
-<h2 id="AndroidThemes">Use an Android Theme</h2>
-
-<div class="figure" style="width:340px">
-  <img src="{@docRoot}images/training/basics/actionbar-theme-dark@2x.png" width="340" alt="" />
-</div>
-
-<div class="figure" style="width:340px">
-  <img src="{@docRoot}images/training/basics/actionbar-theme-light-solid@2x.png" width="340" alt="" />
-</div>
-
-<p>Android includes two baseline activity themes that dictate the color for the action bar:
-</p>
-<ul>
-  <li>{@link android.R.style#Theme_Holo Theme.Holo} for a "dark" theme.
-  </li>
-  <li>{@link android.R.style#Theme_Holo_Light Theme.Holo.Light} for a "light" theme.
-  </li>
-</ul>
-
-<p>You can apply these themes to your entire app or to individual activities by
-declaring them in your manifest file with the {@code android:theme} attribute
-for the <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code
-<application>}</a> element or individual
-<a href="{@docRoot}guide/topics/manifest/application-element.html">{@code <activity>}</a>
-elements.</p>
-
-<p>For example:</p>
-<pre>
-&lt;application android:theme="@android:style/Theme.Holo.Light" ... />
-</pre>
-
-<div class="figure" style="width:340px">
-  <img src="{@docRoot}images/training/basics/actionbar-theme-light-darkactionbar@2x.png" width="340" alt="" />
-</div>
-
-<p>You can also use a dark action bar while the rest of the activity uses the light
-color scheme by declaring the {@link android.R.style#Theme_Holo_Light_DarkActionBar
-Theme.Holo.Light.DarkActionBar} theme.</p>
-
-<p>When using the Support Library, you must instead use the
-{@link android.support.v7.appcompat.R.style#Theme_AppCompat Theme.AppCompat} themes:</p>
-<ul>
-  <li>{@link android.support.v7.appcompat.R.style#Theme_AppCompat Theme.AppCompat} for the
-  "dark" theme.</li>
-  <li>{@link android.support.v7.appcompat.R.style#Theme_AppCompat_Light Theme.AppCompat.Light}
-  for the "light" theme.</li>
-  <li>{@link android.support.v7.appcompat.R.style#Theme_AppCompat_Light_DarkActionBar
-Theme.AppCompat.Light.DarkActionBar} for the light theme with a dark action bar.
-</ul>
-
-<p>Be sure that you use action bar icons that properly contrast with the color of your action
-bar. To help you, the <a href="{@docRoot}design/downloads/index.html#action-bar-icon-pack">Action
-Bar Icon Pack</a> includes standard action icons for use with both the Holo light and Holo dark
-action bar.</p>
-
-
-
-
-
-<h2 id="CustomBackground">Customize the Background</h2>
-
-<div class="figure" style="width:340px">
-  <img src="{@docRoot}images/training/basics/actionbar-theme-custom@2x.png" width="340" alt="" />
-</div>
-
-<p>To change the action bar background, create a custom theme for your activity that overrides the
-{@link android.R.attr#actionBarStyle} property. This property points to another style
-in which you can override the {@link android.R.attr#background} property to specify
-a drawable resource for the action bar background.</p>
-
-<p>If your app uses <a href="{@docRoot}guide/topics/ui/actionbar.html#Tabs">navigation tabs</a>
-or the <a href="{@docRoot}guide/topics/ui/actionbar.html#SplitBar">split
-action bar</a>, then you can also specify the background for these bars using
-the {@link android.R.attr#backgroundStacked} and
-{@link android.R.attr#backgroundSplit} properties, respectively.</p>
-
-<p class="caution"><strong>Caution:</strong> It's important that you declare an appropriate
-parent theme from which your custom theme and style inherit their styles. Without a parent
-style, your action bar will be without many style properties unless you explicitly declare
-them yourself.</p>
-
-
-<h3 id="CustomBackground11">For Android 3.0 and higher only</h3>
-
-<p>When supporting Android 3.0 and higher only, you can define the action bar's
-background like this:</p>
-
-<p class="code-caption">res/values/themes.xml</p>
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?>
-&lt;resources>
-    &lt;!-- the theme applied to the application or activity -->
-    &lt;style name="CustomActionBarTheme"
-           parent="&#64;android:style/Theme.Holo.Light.DarkActionBar">
-        &lt;item name="android:actionBarStyle">&#64;style/MyActionBar&lt;/item>
-    &lt;/style>
-
-    &lt;!-- ActionBar styles -->
-    &lt;style name="MyActionBar"
-           parent="&#64;android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
-        &lt;item name="android:background">&#64;drawable/actionbar_background&lt;/item>
-    &lt;/style>
-&lt;/resources>
-</pre>
-
-<p>Then apply your theme to your entire app or individual activities:</p>
-<pre>
-&lt;application android:theme="&#64;style/CustomActionBarTheme" ... />
-</pre>
-
-
-
-<h3 id="CustomBackground7">For Android 2.1 and higher</h3>
-
-<p>When using the Support Library, the same theme as above must instead look like this:</p>
-
-<p class="code-caption">res/values/themes.xml</p>
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?>
-&lt;resources>
-    &lt;!-- the theme applied to the application or activity -->
-    &lt;style name="CustomActionBarTheme"
-           parent="&#64;style/Theme.<strong>AppCompat</strong>.Light.DarkActionBar">
-        &lt;item name="android:actionBarStyle">&#64;style/MyActionBar&lt;/item>
-
-        &lt;!-- Support library compatibility -->
-        &lt;item name="actionBarStyle">&#64;style/MyActionBar&lt;/item>
-    &lt;/style>
-
-    &lt;!-- ActionBar styles -->
-    &lt;style name="MyActionBar"
-           parent="&#64;style/Widget.<strong>AppCompat</strong>.Light.ActionBar.Solid.Inverse">
-        &lt;item name="android:background">&#64;drawable/actionbar_background&lt;/item>
-
-        &lt;!-- Support library compatibility -->
-        &lt;item name="background">&#64;drawable/actionbar_background&lt;/item>
-    &lt;/style>
-&lt;/resources>
-</pre>
-
-<p>Then apply your theme to your entire app or individual activities:</p>
-<pre>
-&lt;application android:theme="&#64;style/CustomActionBarTheme" ... />
-</pre>
-
-
-
-
-
-
-
-<h2 id="CustomText">Customize the Text Color</h2>
-
-<p>To modify the color of text in the action bar, you need to override separate properties
-for each text element:</p>
-<ul>
-  <li>Action bar title: Create a custom style that specifies the {@code textColor} property and
-  specify that style for the {@link android.R.attr#titleTextStyle} property in your custom
-  {@link android.R.attr#actionBarStyle}.
-    <p class="note"><strong>Note:</strong>
-    The custom style applied to {@link android.R.attr#titleTextStyle} should use
-    {@link android.R.style#TextAppearance_Holo_Widget_ActionBar_Title
-    TextAppearance.Holo.Widget.ActionBar.Title} as the parent style.</p>
-  </li>
-  <li>Action bar tabs: Override {@link android.R.attr#actionBarTabTextStyle} in your
-  activity theme.</li>
-  <li>Action buttons: Override {@link android.R.attr#actionMenuTextColor} in your
-  activity theme.</li>
-</ul>
-
-
-<h3 id="CustomText11">For Android 3.0 and higher only</h3>
-
-<p>When supporting Android 3.0 and higher only, your style XML file might look like this:</p>
-
-<p class="code-caption">res/values/themes.xml</p>
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?>
-&lt;resources>
-    &lt;!-- the theme applied to the application or activity -->
-    &lt;style name="CustomActionBarTheme"
-           parent="&#64;style/Theme.Holo">
-        &lt;item name="android:actionBarStyle">&#64;style/MyActionBar&lt;/item>
-        &lt;item name="android:actionBarTabTextStyle">&#64;style/MyActionBarTabText&lt;/item>
-        &lt;item name="android:actionMenuTextColor">&#64;color/actionbar_text&lt;/item>
-    &lt;/style>
-
-    &lt;!-- ActionBar styles -->
-    &lt;style name="MyActionBar"
-           parent="&#64;style/Widget.Holo.ActionBar">
-        &lt;item name="android:titleTextStyle">&#64;style/MyActionBarTitleText&lt;/item>
-    &lt;/style>
-
-    &lt;!-- ActionBar title text -->
-    &lt;style name="MyActionBarTitleText"
-           parent="&#64;style/TextAppearance.Holo.Widget.ActionBar.Title">
-        &lt;item name="android:textColor">&#64;color/actionbar_text&lt;/item>
-    &lt;/style>
-
-    &lt;!-- ActionBar tabs text styles -->
-    &lt;style name="MyActionBarTabText"
-           parent="&#64;style/Widget.Holo.ActionBar.TabText">
-        &lt;item name="android:textColor">&#64;color/actionbar_text&lt;/item>
-    &lt;/style>
-&lt;/resources>
-</pre>
-
-
-
-
-<h3 id="CustomText7">For Android 2.1 and higher</h3>
-
-<p>When using the Support Library, your style XML file might look like this:</p>
-
-<p class="code-caption">res/values/themes.xml</p>
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?>
-&lt;resources>
-    &lt;!-- the theme applied to the application or activity -->
-    &lt;style name="CustomActionBarTheme"
-           parent="&#64;style/Theme.<strong>AppCompat</strong>">
-        &lt;item name="android:actionBarStyle">&#64;style/MyActionBar&lt;/item>
-        &lt;item name="android:actionBarTabTextStyle">&#64;style/MyActionBarTabText&lt;/item>
-        &lt;item name="android:actionMenuTextColor">&#64;color/actionbar_text&lt;/item>
-
-        &lt;!-- Support library compatibility -->
-        &lt;item name="actionBarStyle">&#64;style/MyActionBar&lt;/item>
-        &lt;item name="actionBarTabTextStyle">&#64;style/MyActionBarTabText&lt;/item>
-        &lt;item name="actionMenuTextColor">&#64;color/actionbar_text&lt;/item>
-    &lt;/style>
-
-    &lt;!-- ActionBar styles -->
-    &lt;style name="MyActionBar"
-           parent="&#64;style/Widget.<strong>AppCompat</strong>.ActionBar">
-        &lt;item name="android:titleTextStyle">&#64;style/MyActionBarTitleText&lt;/item>
-
-        &lt;!-- Support library compatibility -->
-        &lt;item name="titleTextStyle">&#64;style/MyActionBarTitleText&lt;/item>
-    &lt;/style>
-
-    &lt;!-- ActionBar title text -->
-    &lt;style name="MyActionBarTitleText"
-           parent="&#64;style/TextAppearance.<strong>AppCompat</strong>.Widget.ActionBar.Title">
-        &lt;item name="android:textColor">&#64;color/actionbar_text&lt;/item>
-        &lt;!-- The textColor property is backward compatible with the Support Library -->
-    &lt;/style>
-
-    &lt;!-- ActionBar tabs text -->
-    &lt;style name="MyActionBarTabText"
-           parent="&#64;style/Widget.<strong>AppCompat</strong>.ActionBar.TabText">
-        &lt;item name="android:textColor">&#64;color/actionbar_text&lt;/item>
-        &lt;!-- The textColor property is backward compatible with the Support Library -->
-    &lt;/style>
-&lt;/resources>
-</pre>
-
-
-
-
-
-
-<h2 id="CustomTabs">Customize the Tab Indicator</h2>
-
-<div class="figure" style="width:340px">
-  <img src="{@docRoot}images/training/basics/actionbar-theme-custom-tabs@2x.png" width="340" alt="" />
-</div>
-
-<p>To change the indicator used for the <a
-href="{@docRoot}guide/topics/ui/actionbar.html#Tabs">navigation tabs</a>,
-create an activity theme that overrides the
-{@link android.R.attr#actionBarTabStyle} property. This property points to another style
-resource in which you override the {@link android.R.attr#background} property that should specify
-a state-list drawable.</p>
-
-<p class="note"><strong>Note:</strong> A state-list drawable is important so that the tab currently
-selected indicates its state with a background different than the other tabs. For more information
-about how to create a drawable resource that handles multiple button states, read the
-<a href="{@docRoot}guide/topics/resources/drawable-resource.html#StateList">State List</a>
-documentation.</p>
-
-<p>For example, here's a state-list drawable that declares a specific background image
-for several different states of an action bar tab:</p>
-
-<p class="code-caption">res/drawable/actionbar_tab_indicator.xml</p>
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?>
-&lt;selector xmlns:android="http://schemas.android.com/apk/res/android">
-
-&lt;!-- STATES WHEN BUTTON IS NOT PRESSED -->
-
-    &lt;!-- Non focused states -->
-    &lt;item android:state_focused="false" android:state_selected="false"
-          android:state_pressed="false"
-          android:drawable="&#64;drawable/tab_unselected" />
-    &lt;item android:state_focused="false" android:state_selected="true"
-          android:state_pressed="false"
-          android:drawable="&#64;drawable/tab_selected" />
-
-    &lt;!-- Focused states (such as when focused with a d-pad or mouse hover) -->
-    &lt;item android:state_focused="true" android:state_selected="false"
-          android:state_pressed="false"
-          android:drawable="&#64;drawable/tab_unselected_focused" />
-    &lt;item android:state_focused="true" android:state_selected="true"
-          android:state_pressed="false"
-          android:drawable="&#64;drawable/tab_selected_focused" />
-
-
-&lt;!-- STATES WHEN BUTTON IS PRESSED -->
-
-    &lt;!-- Non focused states -->
-    &lt;item android:state_focused="false" android:state_selected="false"
-          android:state_pressed="true"
-          android:drawable="&#64;drawable/tab_unselected_pressed" />
-    &lt;item android:state_focused="false" android:state_selected="true"
-        android:state_pressed="true"
-        android:drawable="&#64;drawable/tab_selected_pressed" />
-
-    &lt;!-- Focused states (such as when focused with a d-pad or mouse hover) -->
-    &lt;item android:state_focused="true" android:state_selected="false"
-          android:state_pressed="true"
-          android:drawable="&#64;drawable/tab_unselected_pressed" />
-    &lt;item android:state_focused="true" android:state_selected="true"
-          android:state_pressed="true"
-          android:drawable="&#64;drawable/tab_selected_pressed" />
-&lt;/selector>
-</pre>
-
-
-
-<h3 id="CustomTabs11">For Android 3.0 and higher only</h3>
-
-<p>When supporting Android 3.0 and higher only, your style XML file might look like this:</p>
-
-<p class="code-caption">res/values/themes.xml</p>
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?>
-&lt;resources>
-    &lt;!-- the theme applied to the application or activity -->
-    &lt;style name="CustomActionBarTheme"
-           parent="&#64;style/Theme.Holo">
-        &lt;item name="android:actionBarTabStyle">&#64;style/MyActionBarTabs&lt;/item>
-    &lt;/style>
-
-    &lt;!-- ActionBar tabs styles -->
-    &lt;style name="MyActionBarTabs"
-           parent="&#64;style/Widget.Holo.ActionBar.TabView">
-        &lt;!-- tab indicator -->
-        &lt;item name="android:background">&#64;drawable/actionbar_tab_indicator&lt;/item>
-    &lt;/style>
-&lt;/resources>
-</pre>
-
-
-
-<h3 id="CustomTabs7">For Android 2.1 and higher</h3>
-
-<p>When using the Support Library, your style XML file might look like this:</p>
-
-<p class="code-caption">res/values/themes.xml</p>
-<pre>
-&lt;?xml version="1.0" encoding="utf-8"?>
-&lt;resources>
-    &lt;!-- the theme applied to the application or activity -->
-    &lt;style name="CustomActionBarTheme"
-           parent="&#64;style/Theme.<strong>AppCompat</strong>">
-        &lt;item name="android:actionBarTabStyle">&#64;style/MyActionBarTabs&lt;/item>
-
-        &lt;!-- Support library compatibility -->
-        &lt;item name="actionBarTabStyle">&#64;style/MyActionBarTabs&lt;/item>
-    &lt;/style>
-
-    &lt;!-- ActionBar tabs styles -->
-    &lt;style name="MyActionBarTabs"
-           parent="&#64;style/Widget.<strong>AppCompat</strong>.ActionBar.TabView">
-        &lt;!-- tab indicator -->
-        &lt;item name="android:background">&#64;drawable/actionbar_tab_indicator&lt;/item>
-
-        &lt;!-- Support library compatibility -->
-        &lt;item name="background">&#64;drawable/actionbar_tab_indicator&lt;/item>
-    &lt;/style>
-&lt;/resources>
-</pre>
-
-<div class="note"><p><strong>More resources</strong></p>
-<ul>
-  <li>See more style properties for the action bar are listed in the <a
-  href="{@docRoot}guide/topics/ui/actionbar.html#Style">Action Bar</a> guide.</li>
-  <li>Learn more about how themes work in the <a
-  href="{@docRoot}guide/topics/ui/themes.html">Styles and Themes</a> guide.</li>
-  <li>For even more complete styling for the action bar,
-try the <a class="external-link" target="_blank"
-  href="http://www.actionbarstylegenerator.com">Android Action Bar Style
-  Generator</a>.</li>
-</ul>
-</div>
\ No newline at end of file
diff --git a/docs/html/training/basics/activity-lifecycle/pausing.jd b/docs/html/training/basics/activity-lifecycle/pausing.jd
index de2c92a..223e41a 100644
--- a/docs/html/training/basics/activity-lifecycle/pausing.jd
+++ b/docs/html/training/basics/activity-lifecycle/pausing.jd
@@ -86,7 +86,7 @@
     // Release the Camera because we don't need it when paused
     // and other activities might need to use it.
     if (mCamera != null) {
-        mCamera.release()
+        mCamera.release();
         mCamera = null;
     }
 }
diff --git a/docs/html/training/basics/firstapp/building-ui.jd b/docs/html/training/basics/firstapp/building-ui.jd
index dcf3a16..402396e 100644
--- a/docs/html/training/basics/firstapp/building-ui.jd
+++ b/docs/html/training/basics/firstapp/building-ui.jd
@@ -71,10 +71,10 @@
 <h2 id="LinearLayout">Create a Linear Layout</h2>
 
 <ol>
-<li>In Android Studio, from the <code>res/layout</code> directory, open the <code>activity_my.xml</code>
+<li>In Android Studio, from the <code>res/layout</code> directory, open the {@code content_my.xml}
 file.
 <p>The BlankActivity template you chose when you created this project includes the
-<code>activity_my.xml</code> file with a {@link android.widget.RelativeLayout} root view and a
+<code>content_my.xml</code> file with a {@link android.widget.RelativeLayout} root view and a
 {@link android.widget.TextView} child view.</p>
 </li>
 <li>In the <strong>Preview</strong> pane, click the Hide icon <img src="{@docRoot}images/tools/as-hide-side.png"
@@ -90,16 +90,17 @@
 <li>Remove the {@code android:padding} attributes and the {@code tools:context} attribute.
 </ol>
 
-</p>The result looks like this:</p>
+<p>The result looks like this:</p>
 
-<p class="code-caption">res/layout/activity_my.xml</p>
 <pre>
 &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
+    android:orientation="horizontal"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:orientation="horizontal" >
-&lt;/LinearLayout>
+    app:layout_behavior="@string/appbar_scrolling_view_behavior"
+    tools:showIn="@layout/activity_my"&gt;
 </pre>
 
 <p>{@link android.widget.LinearLayout} is a view group (a subclass of {@link
@@ -131,7 +132,7 @@
 the {@link android.widget.EditText} object's properties.</p>
 
 <ol>
-<li>In the <code>activity_my.xml</code> file, within the
+<li>In the <code>content_my.xml</code> file, within the
 {@link android.widget.LinearLayout &lt;LinearLayout>} element, define an
 {@link android.widget.EditText &lt;EditText>} element with the <code>id</code> attribute
 set to <code>@+id/edit_message</code>.</li>
@@ -142,7 +143,6 @@
 
 <p>The {@link android.widget.EditText &lt;EditText>} element should read as follows:</p>
 
-<p class="code-caption">res/layout/activity_my.xml</p>
 <pre>
 &lt;EditText android:id="@+id/edit_message"
     android:layout_width="wrap_content"
@@ -232,12 +232,10 @@
 <li>Add a line for a string named <code>"button_send"</code> with the value, "Send".
 <p>You'll create the button that uses this string in the next section.</p>
 </li>
-<li>Remove the line for the <code>"hello world"</code> string.</li>
 </ol>
 
 <p>The result for <code>strings.xml</code> looks like this:</p>
 
-<p class="code-caption">res/values/strings.xml</p>
 <pre>
 &lt;?xml version="1.0" encoding="utf-8"?>
 &lt;resources>
@@ -245,7 +243,6 @@
     &lt;string name="edit_message">Enter a message&lt;/string>
     &lt;string name="button_send">Send&lt;/string>
     &lt;string name="action_settings">Settings&lt;/string>
-    &lt;string name="title_activity_main">MainActivity&lt;/string>
 &lt;/resources>
 </pre>
 
@@ -264,7 +261,7 @@
 <h2 id="Button">Add a Button</h2>
 
 <ol>
-<li>In Android Studio, from the <code>res/layout</code> directory, edit the <code>activity_my.xml</code>
+<li>In Android Studio, from the <code>res/layout</code> directory, edit the <code>content_my.xml</code>
 file.</li>
 <li>Within the
 {@link android.widget.LinearLayout &lt;LinearLayout>} element, define a
@@ -280,21 +277,23 @@
 
 <p>Your {@link android.widget.LinearLayout &lt;LinearLayout>} should look like this:</p>
 
-<p class="code-caption">res/layout/activity_my.xml</p>
 <pre>
 &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
+    android:orientation="horizontal"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:orientation="horizontal" &gt;
-      &lt;EditText android:id="@+id/edit_message"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:hint="@string/edit_message" /&gt;
-      &lt;Button
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:text="@string/button_send" /&gt;
+    app:layout_behavior="@string/appbar_scrolling_view_behavior"
+    tools:showIn="@layout/activity_my"&gt;
+        &lt;EditText android:id="@+id/edit_message"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:hint="@string/edit_message" /&gt;
+        &lt;Button
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:text="@string/button_send" /&gt;
 &lt;/LinearLayout&gt;
 </pre>
 
@@ -303,8 +302,8 @@
 attribute, because it won't be referenced from the activity code.</p>
 
 <p>The layout is currently designed so that both the {@link android.widget.EditText} and {@link
-android.widget.Button} widgets are only as big as necessary to fit their content, as shown in
-figure 2.</p>
+android.widget.Button} widgets are only as big as necessary to fit their content, as Figure 2 shows.
+</p>
 
 <img src="{@docRoot}images/training/firstapp/edittext_wrap.png" />
 <p class="img-caption"><strong>Figure 2.</strong> The {@link android.widget.EditText} and {@link
@@ -339,13 +338,12 @@
 the following:</p>
 
 <ol>
-<li>In the <code>activity_my.xml</code> file, assign the
+<li>In the <code>content_my.xml</code> file, assign the
 {@link android.widget.EditText &lt;EditText>} element's <code>layout_weight</code> attribute a value
 of <code>1</code>.</li>
 <li>Also, assign {@link android.widget.EditText &lt;EditText>} element's <code>layout_width</code>
 attribute a value of <code>0dp</code>.
 
-<p class="code-caption">res/layout/activity_my.xml</p>
 <pre>
 &lt;EditText
     android:layout_weight="1"
@@ -371,16 +369,18 @@
 </li>
 </ol>
 
-<p>Here’s how your complete <code>activity_my.xml</code>layout file should now look:</p>
+<p>Here’s how your complete <code>content_my.xml</code>layout file should now look:</p>
 
-<p class="code-caption">res/layout/activity_my.xml</p>
 <pre>
 &lt;?xml version="1.0" encoding="utf-8"?>
 &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:orientation="horizontal">
+   xmlns:app="http://schemas.android.com/apk/res-auto"
+   xmlns:tools="http://schemas.android.com/tools"
+   android:orientation="horizontal"
+   android:layout_width="match_parent"
+   android:layout_height="match_parent"
+   app:layout_behavior="@string/appbar_scrolling_view_behavior"
+   tools:showIn="@layout/activity_my"&gt;
     &lt;EditText android:id="@+id/edit_message"
         android:layout_weight="1"
         android:layout_width="0dp"
@@ -405,9 +405,9 @@
     style="vertical-align:baseline;margin:0; max-height:1em" />.</li>
   <li>Or from a command line, change directories to the root of your Android project and
 execute:
-<pre>
-ant debug
-adb install bin/MyFirstApp-debug.apk
+<pre class="no-pretty-print">
+$ ant debug
+adb install -r app/build/outputs/apk/app-debug.apk
 </pre></li>
 </ul>
 
diff --git a/docs/html/training/basics/firstapp/creating-project.jd b/docs/html/training/basics/firstapp/creating-project.jd
index 4bd92ee..57118ce 100644
--- a/docs/html/training/basics/firstapp/creating-project.jd
+++ b/docs/html/training/basics/firstapp/creating-project.jd
@@ -18,7 +18,6 @@
 
 <ol>
   <li><a href="#Studio">Create a Project with Android Studio</a></li>
-  <li><a href="#CommandLine">Create a Project with Command Line Tools</a></li>
 </ol>
 
 <h2>You should also read</h2>
@@ -53,16 +52,11 @@
       <li>If you don't have a project opened, in the <strong>Welcome</strong> screen, click <strong>
         New Project</strong>.</li>
       <li>If you have a project opened, from the <strong>File</strong> menu, select <strong>New
-        Project</strong>.</li>
+        Project</strong>. The <em>Create New Project</em> screen appears.</li>
     </ul>
   </li>
-  <div class="figure" style="width:420px">
-    <img src="{@docRoot}images/training/firstapp/studio-setup-1.png" alt="" />
-    <p class="img-caption"><strong>Figure 1.</strong> Configuring a new project in Android Studio.</p>
-  </div>
-  <li>Under <strong>Configure your new project</strong>, fill in the fields as shown in figure 1
-    and click <strong>Next</strong>.
-    <p>It will probably be easier to follow these lessons if you use the same values as shown.</p>
+  <li>Fill out the fields on the screen, and click <strong>Next</strong>.
+    <p>It is easier to follow these lessons if you use the same values as shown.</p>
     <ul>
       <li><strong>Application Name</strong> is the app name that appears to users.
           For this project, use "My First App."</li>
@@ -102,10 +96,10 @@
   </div>
   <li>Under <strong>Add an activity to &lt;<em>template</em>&gt;</strong>, select <strong>Blank
     Activity</strong> and click <strong>Next</strong>.</li>
-  <li>Under <strong>Choose options for your new file</strong>, change the
+  <li>Under <strong>Customize the Activity</strong>, change the
     <strong>Activity Name</strong> to <em>MyActivity</em>. The <strong>Layout Name</strong> changes
     to <em>activity_my</em>, and the <strong>Title</strong> to <em>MyActivity</em>. The
-    <strong>Menu Resource Name</strong> is <em>menu_my</em>. 
+    <strong>Menu Resource Name</strong> is <em>menu_my</em>.
    <li>Click the <strong>Finish</strong> button to create the project.</li>
 </ol>
 
@@ -114,10 +108,18 @@
 
 <dl>
   <dt><code>app/src/main/res/layout/activity_my.xml</code></dt>
-  <dd>This is the XML layout file for the activity you added when you created the project with Android
-    Studio. Following the New Project workflow, Android Studio presents this file with both a text
-    view and a preview of the screen UI. The file includes some default settings and a <code>TextView</code>
-    element that displays the message, "Hello world!"</dd>
+  <dd>This XML layout file is for the activity you added when you created the project
+  with Android Studio. Following the New Project workflow, Android Studio presents this file
+  with both a text
+    view and a preview of the screen UI. The file contains some default interface elements
+    from the material design library, including the
+    <a href="{@docRoot}training/appbar/index.html">app bar</a> and a floating action button.
+    It also includes a separate layout file with the main content.</dd>
+
+  <dt><code>app/src/main/res/layout/content_my.xml</code></dt>
+  <dd>This XML layout file resides in {@code activity_my.xml}, and contains some settings and
+  a {@code TextView} element that displays the message, "Hello world!".</dd>
+
   <dt><code>app/src/main/java/com.mycompany.myfirstapp/MyActivity.java</code></dt>
   <dd>A tab for this file appears in Android Studio when the New Project workflow finishes. When you
     select the file you see the class definition for the activity you created. When you build and
@@ -159,59 +161,24 @@
 <p>Note also the <code>/res</code> subdirectories that contain the
 <a href="{@docRoot}guide/topics/resources/overview.html">resources</a> for your application:</p>
 <dl>
-  <dt><code>drawable<em>&lt;density&gt;</em>/</code></dt>
-    <dd>Directories for drawable objects (such as bitmaps) that are designed for various densities,
-    such as medium-density (mdpi) and high-density (hdpi) screens. Other drawable directories
-    contain assets designed for other screen densities.
-    Here you'll find the ic_launcher.png that appears when you run the default app.</dd>
+  <dt><code>drawable<em>-&lt;density&gt;</em>/</code></dt>
+    <dd>Directories for <a href="{@docRoot}guide/topics/resources/drawable-resource.html">
+    drawable resources</a>, other than launcher icons, designed
+    for various <a href="{@docRoot}training/multiscreen/screendensities.html">densities</a>.
+</dd>
   <dt><code>layout/</code></dt>
-    <dd>Directory for files that define your app's user interface like activity_my.xml,
-      discussed above, which describes a basic layout for the MyActivity class.</dd>
+    <dd>Directory for files that define your app's user interface like {@code activity_my.xml},
+      discussed above, which describes a basic layout for the {@code MyActivity}
+      class.</dd>
   <dt><code>menu/</code></dt>
     <dd>Directory for files that define your app's menu items.</dd>
+  <dt><code>mipmap/</code></dt>
+    <dd>Launcher icons reside in the {@code mipmap/} folder rather than the
+    {@code drawable/} folders. This folder contains the {@code ic_launcher.png} image
+    that appears when you run the default app.</dd>
   <dt><code>values/</code></dt>
     <dd>Directory for other XML files that contain a collection of resources, such as
-      string and color definitions. The strings.xml file defines the "Hello world!" string that
-      displays when you run the default app.</dd>
+      string and color definitions.</dd>
 </dl>
 
 <p>To run the app, continue to the <a href="running-app.html">next lesson</a>.</p>
-
-<h2 id="CommandLine">Create a Project with Command Line Tools</h2>
-
-<p>If you're not using the Android Studio IDE, you can instead create your project
-using the SDK tools from a command line:</p>
-
-<ol>
-  <li>Change directories into the Android SDK’s <code>sdk/</code> path.</li>
-  <li>Execute:
-<pre class="no-pretty-print">tools/android list targets</pre>
-<p>This prints a list of the available Android platforms that you’ve downloaded for your SDK. Find
-the platform against which you want to compile your app. Make a note of the target ID. We
-recommend that you select the highest version possible. You can still build your app to
-support older versions, but setting the build target to the latest version allows you to optimize
-your app for the latest devices.</p>
-<p>If you don't see any targets listed, you need to
-install some using the Android SDK
-Manager tool. See <a href="{@docRoot}sdk/installing/adding-packages.html">Adding SDK
-  Packages</a>.</p></li>
-  <li>Execute:
-<pre class="no-pretty-print">
-android create project --target &lt;target-id> --name MyFirstApp \
---path &lt;path-to-workspace>/MyFirstApp --activity MyActivity \
---package com.example.myfirstapp
-</pre>
-<p>Replace <code>&lt;target-id></code> with an ID from the list of targets (from the previous step)
-and replace
-<code>&lt;path-to-workspace></code> with the location in which you want to save your Android
-projects.</p></li>
-</ol>
-
-<p class="note"><strong>Tip:</strong> Add the <code>platform-tools/</code> as well as the
-<code>tools/</code> directory to your <code>PATH</code> environment variable.</p>
-
-<p>Your Android project is now a basic "Hello World" app that contains some default files.
-To run the app, continue to the <a href="running-app.html">next lesson</a>.</p>
-
-
-
diff --git a/docs/html/training/basics/firstapp/running-app.jd b/docs/html/training/basics/firstapp/running-app.jd
old mode 100644
new mode 100755
index 6e4605f..99b38bf
--- a/docs/html/training/basics/firstapp/running-app.jd
+++ b/docs/html/training/basics/firstapp/running-app.jd
@@ -54,17 +54,12 @@
     If you're developing on Windows, you might need to install the appropriate USB driver for your
     device. For help installing drivers, see the <a href="{@docRoot}tools/extras/oem-usb.html">OEM
     USB Drivers</a> document.</li>
-  <li>Enable <strong>USB debugging</strong> on your device.
-    <ul>
-      <li>On most devices running Android 3.2 or older, you can find the option under
-        <strong>Settings > Applications > Development</strong>.</li>
-      <li>On Android 4.0 and newer, it's in <strong>Settings > Developer options</strong>.
+  <li>Enable <strong>USB debugging</strong> on your device. On Android 4.0 and newer, go to
+    <strong>Settings > Developer options</strong>.
         <p class="note"><strong>Note:</strong> On Android 4.2 and newer, <strong>Developer
         options</strong> is hidden by default. To make it available, go
         to <strong>Settings > About phone</strong> and tap <strong>Build number</strong>
         seven times. Return to the previous screen to find <strong>Developer options</strong>.</p>
-      </li>
-    </ul>
   </li>
 </ol>
 
@@ -88,7 +83,7 @@
   using the Gradle wrapper script (<code>gradlew assembleRelease</code>).
 
   <p>This creates your debug <code>.apk</code> file inside the module <code>build/</code>
-  directory, named <code>MyFirstApp-debug.apk</code>.  </p>
+  directory, named <code>app-debug.apk</code>.  </p>
 
   <p>On Windows platforms, type this command:</p>
 
@@ -112,7 +107,7 @@
 
   <p>Make sure the Android SDK <code>platform-tools/</code> directory is included in your
   <code>PATH</code> environment variable, then execute:
-  <pre class="no-pretty-print">adb install app/build/outputs/MyFirstApp-debug.apk</pre><p>
+  <pre class="no-pretty-print">$ adb install app/build/outputs/apk/app-debug.apk</pre><p>
   <p>On your device, locate <em>MyFirstApp</em> and open it.</p>
 
 <p>That's how you build and run your Android app on a device!
@@ -134,7 +129,9 @@
   <li>Launch the Android Virtual Device Manager:
     <ul>
       <li>In Android Studio, select <strong>Tools &gt; Android &gt; AVD Manager</strong>, or click
-  the AVD Manager icon <img src="{@docRoot}images/tools/avd-manager-studio.png" style="vertical-align:bottom;margin:0;height:19px"> in the toolbar.</li>
+  the AVD Manager icon <img src="{@docRoot}images/tools/avd-manager-studio.png"
+  style="vertical-align:bottom;margin:0;height:19px"> in the toolbar. The
+  <em>AVD Manager</em> screen appears.</li>
       <li>Or, from the command line, change directories to
       <code>sdk/</code> and execute:
         <pre class="no-pretty-print">tools/android avd</pre>
@@ -144,12 +141,8 @@
         </li>
     </ul>
 
-  <img src="{@docRoot}images/studio-avdmgr-firstscreen.png" alt=""
-  style="margin-top:1em">
-  <p class="img-caption"><strong>Figure 1.</strong> The AVD Manager main screen shows your current virtual devices.</p>
-
   </li>
-  <li>On the AVD Manager main screen (figure 1), click <strong>Create Virtual Device</strong>.</li>
+  <li>On the AVD Manager main screen, click <strong>Create Virtual Device</strong>.</li>
   <li>In the Select Hardware window, select a device configuration, such as Nexus 6,
   then click <strong>Next</strong>.
   </li>
@@ -183,8 +176,8 @@
   <code>PATH</code> environment variable.</li>
   <li>Execute this command:
    <p>
-   <pre class="no-pretty-print">adb install app/build/outputs/MyFirstApp-debug.apk</pre>
-   </p> 
+   <pre class="no-pretty-print">$ adb install app/build/outputs/apk/apk-debug.apk</pre>
+   </p>
   </li>
   <li>On the emulator, locate <em>MyFirstApp</em> and open it.</li>
  </ol>
diff --git a/docs/html/training/basics/firstapp/starting-activity.jd b/docs/html/training/basics/firstapp/starting-activity.jd
index 4f43ea0..69cf6f8 100644
--- a/docs/html/training/basics/firstapp/starting-activity.jd
+++ b/docs/html/training/basics/firstapp/starting-activity.jd
@@ -47,13 +47,13 @@
 <h2 id="RespondToButton">Respond to the Send Button</h2>
 
 <ol>
-<li>In Android Studio, from the <code>res/layout</code> directory, edit the <code>activity_my.xml</code>
+<li>In Android Studio, from the <code>res/layout</code> directory, edit the <code>content_my.xml</code>
 file.</li>
-<li>To the {@link android.widget.Button &lt;Button>} element, add the <a
+<li>Add the <a
 href="{@docRoot}reference/android/view/View.html#attr_android:onClick">{@code android:onClick}</a>
-attribute.
+attribute to the {@link android.widget.Button &lt;Button&gt;} element.
 
-<p class="code-caption">res/layout/activity_my.xml</p>
+<p class="code-caption">res/layout/content_my.xml</p>
 <pre>
 &lt;Button
     android:layout_width="wrap_content"
@@ -199,7 +199,7 @@
 follows:
 <p class="code-caption">java/com.mycompany.myfirstapp/MyActivity.java</p>
 <pre>
-public class MyActivity extends ActionBarActivity {
+public class MyActivity extends AppCompatActivity {
     public final static String EXTRA_MESSAGE = "com.mycompany.myfirstapp.MESSAGE";
     ...
 }
@@ -253,13 +253,9 @@
 
 <h3>Create a new activity using Android Studio</h3>
 
-<div class="figure" style="width:400px">
-<img src="{@docRoot}images/training/firstapp/studio-new-activity.png" alt="" />
-<p class="img-caption"><strong>Figure 1.</strong> The new activity wizard in Android Studio.</p>
-</div>
-
 <p>Android Studio includes a stub for the
-{@link android.app.Activity#onCreate onCreate()} method when you create a new activity.</p>
+{@link android.app.Activity#onCreate onCreate()} method when you create a new activity. The
+<em>New Android Activity</em> window appears.</p>
 
 <ol>
   <li>In Android Studio, in the <code>java</code> directory, select the package,
@@ -279,10 +275,8 @@
 <li>Open the {@code DisplayMessageActivity.java} file.
 
 <p>The class already includes an implementation of the required
-{@link android.app.Activity#onCreate onCreate()} method. You will update the implementation of this
-method later. It also includes an implementation of
-{@link android.app.Activity#onOptionsItemSelected onOptionsItemSelected()}, which handles the action
-bar's <em>Up</em> behavior. Keep these two methods as they are for now.</p>
+{@link android.app.Activity#onCreate onCreate()} method. You update the implementation of this
+method later.</p>
 
 <!-- Android Studio does not create a Fragment placeholder
 <p>Also, the file includes a <code>PlaceholderFragment</code> class that extends
@@ -294,10 +288,6 @@
 </p>
 -->
 </li>
-
-<li> Remove the {@link android.app.Activity#onCreateOptionsMenu onCreateOptionsMenu()} method.
-<p>You won't need it for this app.</p>
-</li>
 </ol>
 
 <!-- Not needed for Android Studio
@@ -322,7 +312,7 @@
 <li>Add the following code to the file:
 
 <pre>
-public class DisplayMessageActivity extends ActionBarActivity {
+public class DisplayMessageActivity extends AppCompatActivity {
 
     &#64;Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -337,8 +327,8 @@
 
     &#64;Override
     public boolean onOptionsItemSelected(MenuItem item) {
-        // Handle action bar item clicks here. The action bar will
-        // automatically handle clicks on the Home/Up button, so long
+        // Handle app bar item clicks here. The app bar
+        // automatically handles clicks on the Home/Up button, so long
         // as you specify a parent activity in AndroidManifest.xml.
         int id = item.getItemId();
         if (id == R.id.action_settings) {
@@ -437,10 +427,6 @@
 <ol>
 <li>In the <code>java/com.mycompany.myfirstapp</code> directory, edit the
   {@code DisplayMessageActivity.java} file.</li>
-<li>In the {@link android.app.Activity#onCreate onCreate()} method, remove the following line:
-<pre>
-  setContentView(R.layout.activity_display_message);
-</pre>
 <li>Get the intent and assign it to a local variable.
 <pre>
 Intent intent = getIntent();
@@ -460,6 +446,19 @@
 <h2 id="DisplayMessage">Display the Message</h2>
 
 <ol>
+<li>In the res/layout directory, edit the {@code content_display_message.xml} file.</li>
+<li>Add an {@code android:id} attribute to the {@code RelativeLayout}.
+You need this attribute to reference the object from your app code.</li>
+
+<pre>
+&lt; RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+...
+android:id="@+id/content"&gt;
+&lt;/RelativeLayout&gt;
+</pre>
+<li>Switch back to editing {@code DisplayMessageActivity.java}.</li>
+
+
 <li>In the {@link android.app.Activity#onCreate onCreate()} method, create a {@link android.widget.TextView} object.
 <pre>
 TextView textView = new TextView(this);
@@ -471,10 +470,11 @@
 textView.setText(message);
 </pre>
 </li>
-<li>Then add the {@link android.widget.TextView} as the root view of the activity’s layout by
-passing it to {@link android.app.Activity#setContentView setContentView()}.
+<li>Add the {@link android.widget.TextView} to the {@link android.widget.RelativeLayout}
+identified by {@code R.id.content}.
 <pre>
-setContentView(textView);
+RelativeLayout layout = (RelativeLayout) findViewById(R.id.content);
+layout.addView(textView);
 </pre>
 </li>
 <li>At the top of the file, import the {@link android.widget.TextView} class.
@@ -487,29 +487,36 @@
 
 <pre>
 &#64;Override
-public void onCreate(Bundle savedInstanceState) {
-    super.onCreate(savedInstanceState);
+protected void onCreate(Bundle savedInstanceState) {
+   super.onCreate(savedInstanceState);
+   setContentView(R.layout.activity_display_message);
+   Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+   setSupportActionBar(toolbar);
 
-    // Get the message from the intent
-    Intent intent = getIntent();
-    String message = intent.getStringExtra(MyActivity.EXTRA_MESSAGE);
+   FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
+   fab.setOnClickListener(new View.OnClickListener() {
+       &#64;Override
+       public void onClick(View view) {
+           Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
+                   .setAction("Action", null)
+                   .show();
+       }
+   });
+   getSupportActionBar().setDisplayHomeAsUpEnabled(true);
 
-    // Create the text view
-    TextView textView = new TextView(this);
-    textView.setTextSize(40);
-    textView.setText(message);
+   Intent intent = getIntent();
+   String message = intent.getStringExtra(MyActivity.EXTRA_MESSAGE);
+   TextView textView = new TextView(this);
+   textView.setTextSize(40);
+   textView.setText(message);
 
-    // Set the text view as the activity layout
-    setContentView(textView);
-}
+   RelativeLayout layout = (RelativeLayout) findViewById(R.id.content);
+   layout.addView(textView);
 </pre>
 
-<p>You can now run the app. When it opens, type a message in the text field, click Send,
-  and the message appears on the second activity.</p>
-
-<img src="{@docRoot}images/training/firstapp/firstapp.png" />
-<p class="img-caption"><strong>Figure 2.</strong> Both activities in the final app, running
-on Android 4.4.
+<p>You can now run the app. When it opens, type a message in the text field, and click
+<strong>Send</strong>. The second activity replaces the first one on the screen, showing
+the message you entered in the first activity.</p>
 
 <p>That's it, you've built your first Android app!</p>
 
diff --git a/docs/html/training/basics/fragments/creating.jd b/docs/html/training/basics/fragments/creating.jd
old mode 100644
new mode 100755
index 7afb149..49fb883
--- a/docs/html/training/basics/fragments/creating.jd
+++ b/docs/html/training/basics/fragments/creating.jd
@@ -38,18 +38,11 @@
 href="{@docRoot}tools/support-library/index.html">Support Library</a> so your app
 remains compatible with devices running system versions as low as Android 1.6.</p>
 
-<p class="note"><strong>Note:</strong> If you decide that the minimum
-API level your app requires is 11 or higher, you don't need to use the Support
-Library and can instead use the framework's built in {@link android.app.Fragment} class and related
-APIs. Just be aware that this lesson is focused on using the APIs from the Support Library, which
-use a specific package signature and sometimes slightly different API names than the versions
-included in the platform.</p>
-
 <p>Before you begin this lesson, you must set up your Android project to use the Support Library.
 If you have not used the Support Library before, set up your project to use the <strong>v4</strong>
 library by following the <a href="{@docRoot}tools/support-library/setup.html">Support Library
 Setup</a> document. However, you can also include the <a href=
-"{@docRoot}guide/topics/ui/actionbar.html">action bar</a> in your activities by instead using the
+"{@docRoot}training/appbar/index.html">app bar</a> in your activities by instead using the
 <strong>v7 appcompat</strong> library, which is compatible with Android 2.1 (API level 7)
 and also includes the {@link android.support.v4.app.Fragment} APIs.</p>
 
@@ -152,9 +145,9 @@
 
 <p>If you're using the <a href="{@docRoot}tools/support-library/features.html#v7-appcompat">v7
 appcompat library</a>, your activity should instead extend {@link
-android.support.v7.app.ActionBarActivity}, which is a subclass of {@link
-android.support.v4.app.FragmentActivity} (for more information,
-read <a href="{@docRoot}training/basics/actionbar/index.html">Adding the Action Bar</a>).</p>
+android.support.v7.app.AppCompatActivity}, which is a subclass of {@link
+android.support.v4.app.FragmentActivity}. For more information,
+read <a href="{@docRoot}training/appbar/index.html">Adding the App Bar</a>).</p>
 
 
 <p class="note"><strong>Note:</strong> When you add a fragment to an activity layout by defining
diff --git a/docs/html/training/basics/intents/filters.jd b/docs/html/training/basics/intents/filters.jd
index 0a6d401..833825f 100644
--- a/docs/html/training/basics/intents/filters.jd
+++ b/docs/html/training/basics/intents/filters.jd
@@ -197,7 +197,7 @@
 
 <pre>
 // Create intent to deliver some kind of result data
-Intent result = new Intent("com.example.RESULT_ACTION", Uri.parse("content://result_uri");
+Intent result = new Intent("com.example.RESULT_ACTION", Uri.parse("content://result_uri"));
 setResult(Activity.RESULT_OK, result);
 finish();
 </pre>
diff --git a/docs/html/training/basics/intents/result.jd b/docs/html/training/basics/intents/result.jd
old mode 100644
new mode 100755
index b521488..31d5a7c
--- a/docs/html/training/basics/intents/result.jd
+++ b/docs/html/training/basics/intents/result.jd
@@ -107,8 +107,8 @@
 <p>In order to successfully handle the result, you must understand what the format of the result
 {@link android.content.Intent} will be. Doing so is easy when the activity returning a result is
 one of your own activities. Apps included with the Android platform offer their own APIs that
-you can count on for specific result data. For instance, the People app (Contacts app on some older
-versions) always returns a result with the content URI that identifies the selected contact, and the
+you can count on for specific result data. For instance, the People app always returns a result
+with the content URI that identifies the selected contact, and the
 Camera app returns a {@link android.graphics.Bitmap} in the {@code "data"} extra (see the class
 about <a href="{@docRoot}training/camera/index.html">Capturing Photos</a>).</p>
 
diff --git a/docs/html/training/basics/intents/sending.jd b/docs/html/training/basics/intents/sending.jd
index b9463e4..233cf57 100644
--- a/docs/html/training/basics/intents/sending.jd
+++ b/docs/html/training/basics/intents/sending.jd
@@ -54,7 +54,7 @@
 one of several other data types, or the intent might not need data at all.</p>
 
 <p>If your data is a {@link android.net.Uri}, there's a simple {@link
-android.content.Intent#Intent(String,Uri) Intent()} constructor you can use define the action and
+android.content.Intent#Intent(String,Uri) Intent()} constructor you can use to define the action and
 data.</p>
 
 <p>For example, here's how to create an intent to initiate a phone call using the {@link
diff --git a/docs/html/training/basics/network-ops/connecting.jd b/docs/html/training/basics/network-ops/connecting.jd
index 0601480..798a9ee7 100644
--- a/docs/html/training/basics/network-ops/connecting.jd
+++ b/docs/html/training/basics/network-ops/connecting.jd
@@ -49,14 +49,10 @@
 
 <h2 id="http-client">Choose an HTTP Client</h2>
 
-<p>Most network-connected Android apps  use HTTP to send and receive  data.
-Android includes two HTTP clients: {@link java.net.HttpURLConnection} and the Apache HTTP client.
-Both support HTTPS, streaming uploads and downloads,  configurable
-timeouts, IPv6, and connection pooling. We recommend using {@link
-java.net.HttpURLConnection} for applications targeted at Gingerbread and higher. For
-more discussion of this topic, see the blog post <a
-href="http://android-developers.blogspot.com/2011/09/androids-http-clients.html"
->Android's HTTP Clients</a>.</p>
+<p>Most network-connected Android apps use HTTP to send and receive data. The
+Android platform includes the {@link java.net.HttpURLConnection} client, which
+supports HTTPS, streaming uploads and downloads, configurable timeouts,
+IPv6, and connection pooling.</p>
 
 <h2 id="connection">Check the Network Connection</h2>
 
diff --git a/docs/html/training/best-permissions-ids.jd b/docs/html/training/best-permissions-ids.jd
new file mode 100644
index 0000000..e98c095
--- /dev/null
+++ b/docs/html/training/best-permissions-ids.jd
@@ -0,0 +1,9 @@
+page.title=Best Practices for Permissions and Identifiers
+page.trainingcourse=true
+
+@jd:body
+
+
+
+<p>The articles below highlight key guidelines for using permissions
+and identifiers properly in your apps.</p>
\ No newline at end of file
diff --git a/docs/html/training/building-wearables.jd b/docs/html/training/building-wearables.jd
index c9e1856..9044928 100644
--- a/docs/html/training/building-wearables.jd
+++ b/docs/html/training/building-wearables.jd
@@ -12,3 +12,17 @@
 <p class="note"><strong>Note:</strong> For more information about the APIs used in these training
 classes, see the <a href="{@docRoot}reference/packages-wearable-support.html">Wear API reference
 documentation</a>.</p>
+
+<div class="wrap">
+  <div class="cols">
+    <div class="col-1of2">
+      <p>If you prefer to learn through interactive video training, check out this online course
+      about Android Wear Development.</p>
+      <p><a href="https://www.udacity.com/course/ud875A" class="button">
+        Start the video course</a>
+      </p>
+    </div>
+    <div class="col-1of2">
+      <iframe width="300" height="169" src="//www.youtube.com/embed/t2JaW-8WDok?utm_source=dac&utm_medium=video&utm_content=build_wear&utm_campaign=udacint?rel=0&amp;hd=1" frameborder="0" allowfullscreen></iframe>
+  </div>
+</div>
diff --git a/docs/html/training/cloudsync/backupapi.jd b/docs/html/training/cloudsync/backupapi.jd
deleted file mode 100644
index fd35ada..0000000
--- a/docs/html/training/cloudsync/backupapi.jd
+++ /dev/null
@@ -1,194 +0,0 @@
-page.title=Using the Backup API
-parent.title=Syncing to the Cloud
-parent.link=index.html
-
-trainingnavtop=true
-
-next.title=Making the Most of Google Cloud Messaging
-next.link=gcm.html
-
-@jd:body
-
-<div id="tb-wrapper">
-  <div id="tb">
-    <h2>This lesson teaches you to</h2>
-    <ol>
-      <li><a href="#register">Register for the Android Backup Service</a></li>
-      <li><a href="#manifest">Configure Your Manifest</a></li>
-      <li><a href="#agent">Write Your Backup Agent</a></li>
-      <li><a href="#backup">Request a Backup</a></li>
-      <li><a href="#restore">Restore from a Backup</a></li>
-    </ol>
-    <h2>You should also read</h2>
-    <ul>
-      <li><a
-        href="http://developer.android.com/guide/topics/data/backup.html">Data
-        Backup</a></li>
-    </ul>
-  </div>
-</div>
-
-<p>When a user purchases a new device or resets their existing one, they might
-expect that when Google Play restores your app back to their device during the
-initial setup, the previous data associated with the app restores as well.  By
-default, that doesn't happen and all the user's accomplishments or settings in
-your app are lost.</p>
-<p>For situations where the volume of data is relatively light (less than a
-megabyte), like the user's preferences, notes, game high scores or other
-stats, the Backup API provides a lightweight solution.  This lesson walks you
-through integrating the Backup API into your application, and restoring data to
-new devices using the Backup API.</p>
-
-<h2 id="register">Register for the Android Backup Service</h2>
-<p>This lesson requires the use of the <a
-  href="{@docRoot}google/backup/index.html">Android Backup
-  Service</a>, which requires registration.  Go ahead and <a
-  href="http://code.google.com/android/backup/signup.html">register here</a>.  Once
-that's done, the service pre-populates an XML tag for insertion in your Android
-Manifest, which looks like this:</p>
-<pre>
-&lt;meta-data android:name="com.google.android.backup.api_key"
-android:value="ABcDe1FGHij2KlmN3oPQRs4TUvW5xYZ" /&gt;
-</pre>
-<p>Note that each backup key works with a specific package name.  If you have
-different applications, register separate keys for each one.</p>
-
-
-<h2 id="manifest">Configure Your Manifest</h2>
-<p>Use of the Android Backup Service requires two additions to your application
-manifest.  First, declare the name of the class that acts as your backup agent,
-then add the snippet above as a child element of the Application tag.  Assuming
-your backup agent is going to be called {@code TheBackupAgent}, here's an example of
-what the manifest looks like with this tag included:</p>
-
-<pre>
-&lt;application android:label="MyApp"
-             android:backupAgent="TheBackupAgent"&gt;
-    ...
-    &lt;meta-data android:name="com.google.android.backup.api_key"
-    android:value="ABcDe1FGHij2KlmN3oPQRs4TUvW5xYZ" /&gt;
-    ...
-&lt;/application&gt;
-</pre>
-<h2 id="agent">Write Your Backup Agent</h2>
-<p>The easiest way to create your backup agent is by extending the wrapper class
-{@link android.app.backup.BackupAgentHelper}.  Creating this helper class is
-actually a very simple process.  Just create a class with the same name as you
-used in the manifest in the previous step (in this example, {@code
-TheBackupAgent}),
-and extend {@code BackupAgentHelper}.  Then override the {@link
-android.app.backup.BackupAgent#onCreate()}.</p>
-
-<p>Inside the {@link android.app.backup.BackupAgent#onCreate()} method, create a {@link
-android.app.backup.BackupHelper}.  These helpers are
-specialized classes for backing up certain kinds of data.  The Android framework
-currently includes two such helpers:  {@link
-android.app.backup.FileBackupHelper} and {@link
-android.app.backup.SharedPreferencesBackupHelper}.  After you create the helper
-and point it at the data you want to back up, just add it to the
-BackupAgentHelper using the {@link android.app.backup.BackupAgentHelper#addHelper(String, BackupHelper) addHelper()}
-method, adding a key which is used to
-retrieve the data later.  In most cases the entire
-implementation is perhaps 10 lines of code.</p>
-
-<p>Here's an example that backs up a high scores file.</p>
-
-<pre>
- import android.app.backup.BackupAgentHelper;
- import android.app.backup.FileBackupHelper;
-
-
- public class TheBackupAgent extends BackupAgentHelper {
-    // The name of the SharedPreferences file
-    static final String HIGH_SCORES_FILENAME = "scores";
-
-    // A key to uniquely identify the set of backup data
-    static final String FILES_BACKUP_KEY = "myfiles";
-
-    // Allocate a helper and add it to the backup agent
-    &#64;Override
-    void onCreate() {
-        FileBackupHelper helper = new FileBackupHelper(this, HIGH_SCORES_FILENAME);
-        addHelper(FILES_BACKUP_KEY, helper);
-    }
-}
-</pre>
-<p>For added flexibility, {@link android.app.backup.FileBackupHelper}'s
-constructor can take a variable number of filenames.  You could just as easily
-have backed up both a high scores file and a game progress file just by adding
-an extra parameter, like this:</p>
-<pre>
-    &#64;Override
-    void onCreate() {
-        FileBackupHelper helper = new FileBackupHelper(this, HIGH_SCORES_FILENAME, PROGRESS_FILENAME);
-        addHelper(FILES_BACKUP_KEY, helper);
-    }
-</pre>
-<p>Backing up preferences is similarly easy.  Create a {@link
-android.app.backup.SharedPreferencesBackupHelper}  the same way you did a {@link
-android.app.backup.FileBackupHelper}.  In this case, instead of adding filenames
-to the constructor, add the names of the shared preference groups being used by
-your application.  Here's an example of how your backup agent helper might look if
-high scores are implemented as preferences instead of a flat file:</p>
-
-<pre>
- import android.app.backup.BackupAgentHelper;
- import android.app.backup.SharedPreferencesBackupHelper;
-
- public class TheBackupAgent extends BackupAgentHelper {
-     // The names of the SharedPreferences groups that the application maintains.  These
-     // are the same strings that are passed to getSharedPreferences(String, int).
-     static final String PREFS_DISPLAY = "displayprefs";
-     static final String PREFS_SCORES = "highscores";
-
-     // An arbitrary string used within the BackupAgentHelper implementation to
-     // identify the SharedPreferencesBackupHelper's data.
-     static final String MY_PREFS_BACKUP_KEY = "myprefs";
-
-     // Simply allocate a helper and install it
-     void onCreate() {
-         SharedPreferencesBackupHelper helper =
-                 new SharedPreferencesBackupHelper(this, PREFS_DISPLAY, PREFS_SCORES);
-         addHelper(MY_PREFS_BACKUP_KEY, helper);
-     }
- }
-</pre>
-
-<p>You can add as many backup helper instances to your backup agent helper as you
-like, but remember that you only need one of each type.  One {@link
-android.app.backup.FileBackupHelper} handles all the files that you need to back up, and one
-{@link android.app.backup.SharedPreferencesBackupHelper} handles all the shared
-preferencegroups you need backed up.
-</p>
-
-
-<h2 id="backup">Request a Backup</h2>
-<p>In order to request a backup, just create an instance of the {@link
-android.app.backup.BackupManager}, and call it's {@link
-android.app.backup.BackupManager#dataChanged()} method.</p>
-
-<pre>
- import android.app.backup.BackupManager;
- ...
-
- public void requestBackup() {
-   BackupManager bm = new BackupManager(this);
-   bm.dataChanged();
- }
-</pre>
-
-<p>This call notifies the backup manager that there is data ready to be backed
-up to the cloud.  At some point in the future, the backup manager then calls
-your backup agent's {@link
-android.app.backup.BackupAgent#onBackup(ParcelFileDescriptor, BackupDataOutput,
-ParcelFileDescriptor) onBackup()} method.  You can make
-the call whenever your data has changed, without having to worry about causing
-excessive network activity.  If you request a backup twice before a backup
-occurs, the backup only occurs once.</p>
-
-
-<h2 id="restore">Restore from a Backup</h2>
-<p>Typically you shouldn't ever have to manually request a restore, as it
-happens automatically when your application is installed on a device.  However,
-if it <em>is</em> necessary to trigger a manual restore, just call the
-{@link android.app.backup.BackupManager#requestRestore(RestoreObserver) requestRestore()} method.</p>
diff --git a/docs/html/training/cloudsync/index.jd b/docs/html/training/cloudsync/index.jd
deleted file mode 100644
index 082ace5..0000000
--- a/docs/html/training/cloudsync/index.jd
+++ /dev/null
@@ -1,36 +0,0 @@
-page.title=Syncing to the Cloud
-page.tags=cloud,sync,backup
-
-trainingnavtop=true
-startpage=true
-
-@jd:body
-
-<div id="tb-wrapper">
-<div id="tb">
-
-<h2>Dependencies and prerequisites</h2>
-<ul>
-  <li>Android 2.2 (API level 8) and higher</li>
-</ul>
-</div>
-</div>
-
-<p>By providing powerful APIs for internet connectivity, the Android framework
-helps you build rich cloud-enabled apps that sync their data to a remote web
-service, making sure all your devices always stay in sync, and your valuable
-data is always backed up to the cloud.</p>
-
-<p>This class covers strategies for backing up data using the cloud so that
-users can restore their data when installing your application on a new device.
-</p>
-
-<h2>Lessons</h2>
-
-<dl>
-  <dt><strong><a href="backupapi.html">Using the Backup API</a></strong></dt>
-  <dd>Learn how to integrate the Backup API into your Android Application, so
-  that user data such as preferences, notes, and high scores update seamlessly
-  across all of a user's devices</dd>
-</dl>
-
diff --git a/docs/html/training/contacts-provider/display-contact-badge.jd b/docs/html/training/contacts-provider/display-contact-badge.jd
index 041eb58..b00ce0e 100644
--- a/docs/html/training/contacts-provider/display-contact-badge.jd
+++ b/docs/html/training/contacts-provider/display-contact-badge.jd
@@ -293,7 +293,6 @@
             /*
              * Handle file not found errors
              */
-        }
         // In all cases, close the asset file descriptor
         } finally {
             if (afd != null) {
diff --git a/docs/html/training/contacts-provider/retrieve-names.jd b/docs/html/training/contacts-provider/retrieve-names.jd
old mode 100644
new mode 100755
index d97b81b..49d6e95
--- a/docs/html/training/contacts-provider/retrieve-names.jd
+++ b/docs/html/training/contacts-provider/retrieve-names.jd
@@ -230,7 +230,7 @@
     {@link android.provider.ContactsContract.Contacts#DISPLAY_NAME_PRIMARY
     Contacts.DISPLAY_NAME_PRIMARY} requires Android 3.0 (API version 11) or later, setting your
     app's <code>minSdkVersion</code> to 10 or below generates an Android Lint warning in
-    Eclipse with ADK. To turn off this warning, add the annotation
+    Android Studio. To turn off this warning, add the annotation
     <code>@SuppressLint("InlinedApi")</code> before the definition of <code>FROM_COLUMNS</code>.
 </p>
 <h3 id="InitializeFragment">Initialize the Fragment</h3>
diff --git a/docs/html/training/custom-views/create-view.jd b/docs/html/training/custom-views/create-view.jd
old mode 100644
new mode 100755
index a476bbe..7b5cdc3
--- a/docs/html/training/custom-views/create-view.jd
+++ b/docs/html/training/custom-views/create-view.jd
@@ -61,8 +61,7 @@
     existing view
     subclasses, such as {@link android.widget.Button}.</p>
 
-<p>To allow the <a href="{@docRoot}guide/developing/tools/adt.html">Android Developer Tools
-</a> to interact with your view, at a minimum you must provide a constructor that takes a
+<p>To allow Android Studio to interact with your view, at a minimum you must provide a constructor that takes a
 {@link android.content.Context} and an {@link android.util.AttributeSet} object as parameters.
 This constructor allows the layout editor to create and edit an instance of your view.</p>
 
diff --git a/docs/html/training/custom-views/index.jd b/docs/html/training/custom-views/index.jd
old mode 100644
new mode 100755
index 87cd0b0..f732adb
--- a/docs/html/training/custom-views/index.jd
+++ b/docs/html/training/custom-views/index.jd
@@ -48,7 +48,7 @@
 <dl>
 <dt><b><a href="create-view.html">Creating a View Class</a></b></dt>
 <dd>Create a class that acts like a built-in view, with custom
-    attributes and support from the <a href="http://developer.android.com/sdk/eclipse-adt.html">ADT</a> layout editor.
+    attributes and support from the <a href="http://developer.android.com/sdk/installing/studio-layout.html">Android Studio</a> layout editor.
 </dd>
 
 <dt><b><a href="custom-drawing.html">Custom Drawing</a></b></dt>
diff --git a/docs/html/training/custom-views/making-interactive.jd b/docs/html/training/custom-views/making-interactive.jd
old mode 100644
new mode 100755
index 4e9d53a..14163d8
--- a/docs/html/training/custom-views/making-interactive.jd
+++ b/docs/html/training/custom-views/making-interactive.jd
@@ -229,8 +229,8 @@
     is not available prior to API level 11, so this technique cannot be used
 on devices running Android versions lower than 3.0.</p>
 
-<p class="note"><strong>Note:</strong> {@link android.animation.ValueAnimator} isn't available
-        prior to API level 11, but you can still use it in applications that
+<p class="note"><strong>Note:</strong> You can use {@link android.animation.ValueAnimator} in
+applications that
 target lower API levels. You just need to make sure to check the current API level
 at runtime, and omit the calls to the view animation system if the current level is less than 11.</p>
 
diff --git a/docs/html/training/design-navigation/wireframing.jd b/docs/html/training/design-navigation/wireframing.jd
old mode 100644
new mode 100755
index 1801f91..201d9e4
--- a/docs/html/training/design-navigation/wireframing.jd
+++ b/docs/html/training/design-navigation/wireframing.jd
@@ -78,9 +78,6 @@
   <li>What's the learning curve? Professional vector illustration tools may have a steep learning curve, while tools designed for wireframing may offer a smaller set of features that are more relevant to the task.</li>
 </ul>
 
-<p>Lastly, the XML Layout Editor that comes with the <a href="{@docRoot}tools/help/adt.html">Android Development Tools (ADT)</a> plugin for Eclipse can often be used for prototyping. However, you should be careful to focus more on the high-level layout and less on visual design details at this point.</p>
-
-
 <h2 id="wireframe-digital">Create Digital Wireframes</h2>
 
 <p>After sketching out layouts on paper and choosing a digital wireframing tool that works for you, you can create the digital wireframes that will serve as the starting point for your application's visual design. Below are example wireframes for our news application, corresponding one-to-one with our screen maps from earlier in this lesson.</p>
diff --git a/docs/html/training/efficient-downloads/redundant_redundant.jd b/docs/html/training/efficient-downloads/redundant_redundant.jd
index 674298a..0825b5d 100644
--- a/docs/html/training/efficient-downloads/redundant_redundant.jd
+++ b/docs/html/training/efficient-downloads/redundant_redundant.jd
@@ -37,7 +37,7 @@
 
 <p>To ensure that your caching doesn't result in your app displaying stale data, be sure to extract the time at which the requested content was last updated, and when it expires, from within the HTTP response headers. This will allow you to determine when the associated content should be refreshed.</p>
 
-<pre>long currentTime = System.currentTimeMillis());
+<pre>long currentTime = System.currentTimeMillis();
 
 HttpURLConnection conn = (HttpURLConnection) url.openConnection();
 
@@ -54,7 +54,7 @@
 
 <p>Using this approach, you can also effectively cache dynamic content while ensuring it doesn't result in your application displaying stale information.</p>
 
-<p>You can cache non-sensitive data can in the unmanaged external cache directory:</p>
+<p>You can cache non-sensitive data in the unmanaged external cache directory:</p>
 
 <pre>Context.getExternalCacheDir();</pre>
 
@@ -84,4 +84,4 @@
 
 <p>With the cache installed, fully cached HTTP requests can be served directly from local storage, eliminating the need to open a network connection. Conditionally cached responses can validate their freshness from the server, eliminating the bandwidth cost associated with the download.</p>
 
-<p>Uncached responses get stored in the response cache for for future requests.</p>
\ No newline at end of file
+<p>Uncached responses get stored in the response cache for future requests.</p>
diff --git a/docs/html/training/enterprise/app-restrictions.jd b/docs/html/training/enterprise/app-restrictions.jd
index dd2c2c0..07b1de7 100644
--- a/docs/html/training/enterprise/app-restrictions.jd
+++ b/docs/html/training/enterprise/app-restrictions.jd
@@ -152,10 +152,10 @@
 &lt;restrictions xmlns:android="http://schemas.android.com/apk/res/android" &gt;
 
   &lt;restriction
-    android:key="downloadOnCellular"
-    android:title="App is allowed to download data via cellular"
+    android:key="download_on_cell"
+    android:title="@string/download_on_cell_title"
     android:restrictionType="bool"
-    android:description="If 'false', app can only download data via Wi-Fi"
+    android:description="@string/download_on_cell_description"
     android:defaultValue="true" /&gt;
 
 &lt;/restrictions&gt;
@@ -166,6 +166,12 @@
   documented in the reference for {@link android.content.RestrictionsManager}.
 </p>
 
+<p class="note">
+  <strong>Note:</strong> <code>bundle</code> and
+  <code>bundle_array</code> restriction types are not supported by Google Play
+  for Work.
+</p>
+
 <p>
   You use each restriction's <code>android:key</code> attribute to read its
   value from a restrictions bundle. For this reason, each restriction must have
@@ -211,7 +217,7 @@
   </li>
 
   <li>When the app is notified of a restriction change, as described in
-    <a href="#listen">Listen for Device Configuration
+    <a href="#listen">Listen for App Configuration
     Changes</a>
   </li>
 </ul>
@@ -254,9 +260,30 @@
   the {@link android.content.Intent#ACTION_APPLICATION_RESTRICTIONS_CHANGED
   ACTION_APPLICATION_RESTRICTIONS_CHANGED} intent to find out if restrictions
   change while your app is active, as described in <a href="#listen">Listen for
-  Device Configuration Changes</a>.
+  App Restriction Changes</a>.
 </p>
 
+<p>
+  When your app checks for restrictions using
+ {@link android.content.RestrictionsManager#getApplicationRestrictions
+ RestrictionsManager.getApplicationRestrictions()}, we recommend that you
+ check to see if the enterprise administrator has set the key-value pair
+ {@link android.os.UserManager#KEY_RESTRICTIONS_PENDING} to true. If so, you
+ should block the user from using the app, and prompt them to contact their
+ enterprise administrator. The app should then proceed as normal, registering
+ for the {@link android.content.Intent#ACTION_APPLICATION_RESTRICTIONS_CHANGED
+ ACTION_APPLICATION_RESTRICTIONS_CHANGED} broadcast.
+</p>
+
+<img src="{@docRoot}images/training/enterprise/app_restrictions_diagram.png"
+width="620" srcset="{@docRoot}images/training/enterprise/app_restrictions_diagram.png 1x,
+{@docRoot}images/training/enterprise/app_restrictions_diagram_2x.png 2x" />
+
+ <p class="img-caption">
+   <strong>Figure 1.</strong> Checking whether restrictions are pending before
+   registering for the broadcast.
+ </p>
+
 <h3 id="read_restrictions">
   Reading and applying restrictions
 </h3>
@@ -266,11 +293,11 @@
   getApplicationRestrictions()} method returns a {@link android.os.Bundle}
   containing a key-value pair for each restriction that has been set. The
   values are all of type <code>Boolean</code>, <code>int</code>,
-  <code>String</code>, and <code>String[]</code>. Once you have the
-  restrictions {@link android.os.Bundle}, you can check the current
-  restrictions settings with the standard {@link android.os.Bundle} methods for
-  those data types, such as {@link android.os.Bundle#getBoolean getBoolean()}
-  or
+  <code>String</code>, <code>String[]</code>, <code>Bundle</code>, and
+  <code>Bundle[]</code>. Once you have the restrictions {@link android.os.Bundle},
+  you can check the current restrictions settings with the standard
+  {@link android.os.Bundle} methods for those data types, such as
+  {@link android.os.Bundle#getBoolean getBoolean()} or
   {@link android.os.Bundle#getString getString()}.
 </p>
 
@@ -284,10 +311,11 @@
 
 <p>
   It is up to your app to take appropriate action based on the current
-  restrictions settings. For example, if your app has a restriction specifying
-  whether it can download data over a cellular connection, and you find that
-  the restriction is set to <code>false</code>, you would have to disable data
-  download except when the device has a Wi-Fi connection, as shown in the
+  restrictions settings. For example, if your app has a restriction schema
+  to specify whether it can download over a cellular connection (like the
+  example in <a href="#define_restrictions">Define App Restrictions</a>),
+  and you find that the restriction is set to false, you would have to disable
+  data download except when the device has a Wi-Fi connection, as shown in the
   following example code:
 </p>
 
@@ -307,6 +335,13 @@
     // ...show appropriate notices to user
 }</pre>
 
+<p class="note">
+   <strong>Note:</strong> The restrictions schema should be
+   backward and forward compatible, since Google Play for Work
+   gives the EMM only one version of the App Restrictions
+   Schema per app.
+ </p>
+
 <h2 id="listen">
   Listen for App Restriction Changes
 </h2>
@@ -354,8 +389,8 @@
   <strong>Note:</strong> Ordinarily, your app does not need to be notified
   about restriction changes when it is paused. Instead, you should unregister
   your broadcast receiver when the app is paused. When the app resumes, you
-  first check for the current restrictions (as discussed in <a href=
-  "#check_restrictions">Check Device Restrictions</a>), then register your
-  broadcast receiver to make sure you're notified about restriction changes
+  first check for the current restrictions (as discussed in
+  <a href="#check_restrictions">Check App Restrictions</a>), then register
+  your broadcast receiver to make sure you're notified about restriction changes
   that happen while the app is active.
 </p>
diff --git a/docs/html/training/enterprise/cosu.jd b/docs/html/training/enterprise/cosu.jd
new file mode 100644
index 0000000..1d6388b
--- /dev/null
+++ b/docs/html/training/enterprise/cosu.jd
@@ -0,0 +1,503 @@
+page.title=Configuring Corporate-Owned, Single-Use Devices
+page.metaDescription=Learn how to develop single-use solutions for Android devices.
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>This lesson teaches you to</h2>
+<ol>
+ <li><a href="#locktask">How to use LockTask mode</a></li>
+ <li><a href="#cosu-solutions">Build COSU solutions</a></li>
+ <li><a href="#create-dpc">Create your own DPC app</a></li>
+</ol>
+
+<!-- related docs (NOT javadocs) -->
+<h2>You should also read</h2>
+<ul>
+  <li><a href="{@docRoot}training/enterprise/work-policy-ctrl.html">
+Building a Device Policy Controller</a>
+  </li>
+</ul>
+
+</div>
+</div>
+
+<p>
+As an IT administrator, you can configure Android 6.0 Marshmallow and later
+devices as <em>corporate-owned, single-use (COSU)</em> devices. These are Android
+devices used for a single purpose, such as digital signage, ticket printing,
+point of sale, or inventory management. To use Android devices as COSU devices,
+you need to develop Android apps that your customers can manage.
+</p>
+
+<p>
+Your customers can configure COSU devices:
+</p>
+<ul>
+<li>
+To lock a single application to the screen, and hide the
+<strong>Home</strong> and <strong>Recents</strong> buttons to prevent users
+from escaping the app.
+</li>
+
+<li>
+To allow multiple applications to appear on the screen, such as a library kiosk
+with a catalog app and web browser.
+</li>
+</ul>
+
+<h2 id="pinning">
+App pinning vs. lock task mode
+</h2>
+
+<p>Android 5.0 Lollipop introduced two new ways to configure Android devices
+for a single purpose:
+</p>
+
+<ul>
+<li>
+With app pinning, the device user can temporarily pin specific apps to the
+screen.
+</li>
+
+<li>
+With lock task mode, a user can’t escape the app and the Home and Recents
+buttons are hidden. Additionally, lock task mode gives the IT administrator
+a more robust way to manage COSU devices, as discussed below.
+</li>
+</ul>
+
+<p>
+This graphic compares the features of app pinning and lock task mode:
+</p>
+
+<img src="{@docRoot}images/training/enterprise/pinning_vs_locktaskmode.png"
+width="640" srcset="{@docRoot}images/training/enterprise/pinning_vs_locktaskmode.png 1x,
+{@docRoot}images/training/enterprise/pinning_vs_locktaskmode_2x.png 2x" />
+
+ <p class="img-caption">
+   <strong>Figure 1.</strong> Comparing the features of app pinning in Lollipop
+   vs. Lock task mode in Marshmallow and later
+ </p>
+
+<p>
+In Lollipop, you can pin a single application to cover the full screen, but
+only apps whitelisted by the device policy controller (DPC) can be locked.
+</p>
+
+<h2 id="locktask">
+  How to use LockTask mode
+</h2>
+
+<p>
+  To use LockTask mode, and the APIs that manage COSU devices, there must be
+  a device owner application installed on the device. Device owners are a
+  type of device policy controller (DPC) that manages the whole device. For
+  more information about DPCs, see the
+  <a class="external-link" href="https://developers.google.com/android/work/overview">EMM Developer’s Overview</a>.
+</p>
+
+<p>
+If you’re creating a new COSU app, we recommend you develop it for
+Marshmallow or later, which includes the following COSU features:
+</p>
+
+<ul>
+<li>
+Controls system updates
+</li>
+
+<li>
+Sets status and menu bar visibility
+</li>
+
+<li>
+Disables screen lock and sleep functions
+</li>
+
+<li>
+Permits switching between apps while staying in lock task mode
+</li>
+
+<li>
+Prevents restarting in safe mode
+</li>
+</ul>
+
+<p class="note">
+  <strong>Note:</strong> If you develop COSU features targeted for
+  Marshmallow devices, your app can still be compatible with prior
+  versions of Android.
+</p>
+
+<p>
+Additional COSU management features launched with Marshmallow make it easier to
+develop and deploy Android devices as a single-use device. If you want to
+enforce server-side app restrictions or server-side profile policy controls,
+you need to use an EMM or make your application a DPC. Follow the instructions
+below as you create your application.
+</p>
+
+<h2 id="cosu-solutions">
+  Build COSU solutions
+</h2>
+
+<p>
+  There are two different ways to manage COSU devices:
+</p>
+
+<ul>
+<li>
+<strong>Use a third-party enterprise mobility management (EMM)
+solution</strong>: Using an EMM, all you need to do is set up lock task mode.
+For instructions, skip to the next section,
+<a href="#emm-solutions">Solutions managed by a third-party EMM</a>.
+</li>
+
+<li>
+<strong>Advanced setup—Create your own DPC app</strong>: This requires
+more work and is intended for an advanced developer audience. With this
+option, you’ll need to set up the device so that you can manage it, set
+up APIs, and set up a DPC app and test it. For instructions, skip to
+<a href="#create-dpc">Create your own DPC app</a>.
+</li>
+</ul>
+
+<h2 id="emm-solutions">
+Solutions managed by a third-party EMM
+</h2>
+
+<p>
+In this section, you’ll need to do a small amount of development to
+have your device work with a third-party EMM.
+</p>
+
+<h3 id="use-smartlocktask">
+Using startLockTask()
+</h3>
+
+<p>
+If you need to add COSU functionality to an existing app, make sure that
+the customer’s EMM supports {@link android.R.attr#lockTaskMode}.
+</p>
+
+<ul>
+<li>
+The device owner must include your app’s package(s) in
+{@link android.app.admin.DevicePolicyManager#setLockTaskPackages setLockTaskPackages}</li>
+<ul>
+<li>
+Sets the packages that can enter into lock task mode
+</li>
+<li>
+Needs to be set by the EMM
+</li>
+<li>
+You can call {@link android.app.admin.DevicePolicyManager#isLockTaskPermitted isLockTaskPermitted}
+to verify that your package has been whitelisted by
+{@link android.app.admin.DevicePolicyManager#setLockTaskPackages setLockTaskPackages}.
+</li>
+</ul>
+
+<li>
+Your activity calls {@link android.app.Activity#startLockTask()}
+</li>
+<ul>
+<li>
+Requests to lock the user into the current task
+</li>
+<li>
+Prevents launching other apps, settings, and the <strong>Home</strong>
+button
+</li>
+</ul>
+
+<li>
+To exit, your activity must call {@link android.app.Activity#stopLockTask()}
+</li>
+<ul>
+<li>
+Can only be called on an activity that’s previously called
+ {@link android.app.Activity#startLockTask()}
+</li>
+<li>
+Should be called when the app is user-facing between {@link android.app.Activity#onResume()}
+and {@link android.app.Activity#onPause()}
+</li>
+</ul>
+</ul>
+
+<p>
+Starting from Marshmallow, if your app is whitelisted by an EMM using {@link 
+android.app.admin.DevicePolicyManager#setLockTaskPackages setLockTaskPackages},
+your activities can automatically start lock task mode when the app is
+launched.
+</p>
+
+<h3 id="locktaskmode-attribute">
+Set the lockTaskMode attribute
+</h3>
+
+<p>
+  The {@link android.R.attr#lockTaskMode} attribute allows you to define
+  your app’s lock task mode behavior in the AndroidManifest.xml file:
+</p>
+
+<ul>
+<li>
+If you set {@link android.R.attr#lockTaskMode} to <code>if_whitelisted</code>,
+you don’t need to call {@link android.app.Activity#startLockTask()}, and the
+app automatically enters into lock task mode.
+</li>
+
+<li>
+System apps and privileged apps can also set {@link android.R.attr#lockTaskMode}
+to always. This setting causes tasks (rooted at your activity) to always
+launch into lock task mode. Non-privileged apps are treated as normal.
+</li>
+
+<li>
+The default value of the {@link android.R.attr#lockTaskMode} attribute is
+normal. When this attribute is set to normal, tasks don’t launch into 
+{@link android.R.attr#lockTaskMode}, unless {@link android.app.Activity#startLockTask()} 
+is called. To call {@link android.app.Activity#startLockTask()},
+applications still need to be whitelisted using 
+{@link android.app.admin.DevicePolicyManager#setLockTaskPackages setLockTaskPackages}, 
+otherwise, the user sees a dialog to approve entering pinned mode.
+</li>
+</ul>
+  
+<p>To have your activity <em>automatically</em> enter {@link android.R.attr#lockTaskMode},
+change the value of this attribute to <code>if_whitelisted</code>.
+Doing so causes your app to behave in this manner:
+</p>
+
+<ul>
+<li>
+If your app isn’t whitelisted for {@link android.R.attr#lockTaskMode},
+it behaves as normal.
+</li>
+
+<li>
+If your app is a system or privileged app, and it’s whitelisted,
+{@link android.R.attr#lockTaskMode} automatically starts when the app is
+launched.
+</li>
+</ul>
+
+<p>
+Example XML as follows:
+</p>
+
+ <pre>&lt;activity android:name=".MainActivity" android:lockTaskMode="if_whitelisted"&gt;</pre>
+
+<p>
+Given either of these options, you still need to create a mechanism for
+calling {@link android.app.Activity#stopLockTask()} so that users can
+exit {@link android.R.attr#lockTaskMode}. 
+</p>
+
+<h2 id="create-dpc">
+  Advanced setup—Create your own DPC app
+</h2>
+
+<p>
+To manage applications in COSU, you need a DPC running as device
+owner to set several policies on the device. 
+</p>
+
+<p class="note">
+<strong>Note:</strong> This setup is advanced, and requires
+a thorough understanding of the EMM concepts described in the
+<a class="external-link" href="https://developers.google.com/android/work/prov-devices#implementation_considerations_for_device_owner_mode">EMM developer overview</a>.
+For more information about building a DPC, see
+<a class="external-link"
+href="https://developers.google.com/android/work/prov-devices">Provision Customer Devices</a>.
+</p>
+
+<p>
+To create a DPC app that can manage COSU device configuration,
+the DPC needs to:
+</p>
+
+<ol>
+<li>
+Provision the device into device owner mode. We recommend that
+you support provisioning with near field communication (NFC) bump.
+For more information, see
+<a class="external-link" href="https://developers.google.com/android/work/prov-devices#nfc_method"
+>Device Owner Provisioning via NFC</a>.
+</li>
+
+<li>
+Use the following APIs:
+<ul>
+<li>
+Keep devices from locking with the keyguard using
+{@link android.app.admin.DevicePolicyManager#setKeyguardDisabled setKeyguardDisabled()}
+</li>
+
+<li>
+Disable the status bar using
+{@link android.app.admin.DevicePolicyManager#setStatusBarDisabled setStatusBarDisabled()}
+</li>
+
+<li>
+Keep a device’s screen on while plugged in via
+{@link android.provider.Settings.Global#STAY_ON_WHILE_PLUGGED_IN}
+</li>
+
+<li>
+Set default user restrictions via
+{@link android.app.admin.DevicePolicyManager#addUserRestriction addUserRestriction()}
+</li>
+
+<li>
+Set system update policies using
+{@link android.app.admin.DevicePolicyManager#setSystemUpdatePolicy setSystemUpdatePolicy()}
+</li>
+
+<li>
+Ensure your app is launched on reboot by setting it as the default launcher
+</li>
+</ul>
+</li>
+</ol>
+
+<p>
+Here’s an example of how to implement an activity that starts lock task mode
+and implements the relevant COSU device management APIs:
+</p>
+
+<pre>
+public class CosuActivity extends Activity {
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        mAdminComponentName = DeviceAdminReceiver.getComponentName(this);
+        mDevicePolicyManager = (DevicePolicyManager) getSystemService(
+                Context.DEVICE_POLICY_SERVICE);
+        mPackageManager = getPackageManager();
+        setDefaultCosuPolicies(true);
+    }
+
+    &#64;Override
+    protected void onStart() {
+        super.onStart();
+
+        // start lock task mode if it's not already active
+        ActivityManager am = (ActivityManager) getSystemService(
+            Context.ACTIVITY_SERVICE);
+        // ActivityManager.getLockTaskModeState api is not available in pre-M.
+        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
+            if (!am.isInLockTaskMode()) {
+                startLockTask();
+            }
+        } else {
+            if (am.getLockTaskModeState() == 
+                ActivityManager.LOCK_TASK_MODE_NONE) {
+                startLockTask();
+            }
+        }
+    }
+
+    private void setDefaultCosuPolicies(boolean active) {
+        // set user restrictions
+        setUserRestriction(DISALLOW_SAFE_BOOT, active);
+        setUserRestriction(DISALLOW_FACTORY_RESET, active);
+        setUserRestriction(DISALLOW_ADD_USER, active);
+        setUserRestriction(DISALLOW_MOUNT_PHYSICAL_MEDIA, active);
+        setUserRestriction(DISALLOW_ADJUST_VOLUME, active);
+
+        // disable keyguard and status bar
+        mDevicePolicyManager.setKeyguardDisabled(mAdminComponentName, active);
+        mDevicePolicyManager.setStatusBarDisabled(mAdminComponentName, active);
+
+        // enable STAY_ON_WHILE_PLUGGED_IN
+        enableStayOnWhilePluggedIn(active);
+
+        // set System Update policy
+
+        if (active){
+        	mDevicePolicyManager.setSystemUpdatePolicy(mAdminComponentName, 
+                SystemUpdatePolicy.createWindowedInstallPolicy(60,120));
+        }
+        else
+        
+
+        // set this Activity as a lock task package
+
+        mDevicePolicyManager.setLockTaskPackages(mAdminComponentName,
+    	    active ? new String[]{getPackageName()} : new String[]{});
+
+        IntentFilter intentFilter = new IntentFilter(Intent.ACTION_MAIN);
+        intentFilter.addCategory(Intent.CATEGORY_HOME);
+        intentFilter.addCategory(Intent.CATEGORY_DEFAULT);
+
+        if (active) {
+            // set Cosu activity as home intent receiver so that it is started
+            // on reboot
+            mDevicePolicyManager.addPersistentPreferredActivity(
+                mAdminComponentName, intentFilter, new ComponentName(
+                getPackageName(), CosuModeActivity.class.getName()))
+        } else {
+            mDevicePolicyManager.clearPackagePersistentPreferredActivities(
+                mAdminComponentName, getPackageName());
+        }
+    }
+
+    private void setUserRestriction(String restriction, boolean disallow) {
+        if (disallow) {
+            mDevicePolicyManager.addUserRestriction(mAdminComponentName, 
+                restriction);
+        } else {
+            mDevicePolicyManager.clearUserRestriction(mAdminComponentName,
+                restriction);
+        }
+    }
+
+    private void enableStayOnWhilePluggedIn(boolean enabled) {
+    	if (enabled) {
+    		mDevicePolicyManager.setGlobalSetting(
+    			mAdminComponentName, 
+                        Settings.Global.STAY_ON_WHILE_PLUGGED_IN,
+    			BatteryManager.BATTERY_PLUGGED_AC 
+    			| BatteryManager.BATTERY_PLUGGED_USB 
+    			| BatteryManager.BATTERY_PLUGGED_WIRELESS);
+    	} else {
+    		mDevicePolicyManager.setGlobalSetting(
+    			mAdminComponentName, 
+                        Settings.Global.STAY_ON_WHILE_PLUGGED_IN, 0);
+    	}
+
+    }
+
+    // TODO: Implement the rest of the Activity
+}
+</pre>
+
+
+<h2 id="testing-plan">
+  Develop a test plan for COSU
+</h2>
+
+<p>
+  If you’re planning to support a third-party EMM, develop an end-to-end
+  testing plan utilizing the EMM’s app. We also provide testing resources,
+  which you can use to create your own Test Device Policy Client (Test DPC):
+</p>
+
+<ul>
+<li>
+<a class="external-link" href="https://play.google.com/store/search?q=testdpc">TestDPC on Google Play</a>
+</li>
+<li>
+<a class="external-link" href="https://github.com/googlesamples/android-testdpc/tree/master/app/src/main/java/com/afwsamples/testdpc/cosu">TestDPC for COSU source code on GitHub</a>
+</li>
+<li>
+<a class="external-link" href="https://github.com/googlesamples/android-testdpc">Test Device Policy Control app source code on GitHub</a>
+</li>
+</ul>
diff --git a/docs/html/training/enterprise/work-policy-ctrl.jd b/docs/html/training/enterprise/work-policy-ctrl.jd
index 5854e65..8225ea3 100644
--- a/docs/html/training/enterprise/work-policy-ctrl.jd
+++ b/docs/html/training/enterprise/work-policy-ctrl.jd
@@ -1,5 +1,6 @@
-page.title=Building a Work Policy Controller
-page.metaDescription=Learn how to develop a Work Policy Controller to create and administer a managed profile on an employee's device.
+page.title=Building a Device Policy Controller
+page.metaDescription=Learn how to develop a device policy controller to create and administer a managed profile on an employee's device.
+page.tags="work policy controller,WPC,device policy controller,DPC"
 @jd:body
 
 <div id="tb-wrapper">
@@ -54,8 +55,9 @@
 </p>
 
 <p>
-  To handle these tasks, an enterprise develops and deploys a Work Policy
-  Controller app. This app is installed on each employee's device. The
+  To handle these tasks, an enterprise develops and deploys
+  a <em>device policy controller</em> app (previously known as a
+  <em>work policy controller</em>). This app is installed on each employee's device. The
   controller app installed on each employee's device and creates a work user
   profile, which accesses enterprise apps and data separately from the user's
   personal account. The controller app also acts as the
@@ -66,7 +68,7 @@
 </p>
 
 <p>
-  This lesson describes how to develop a Work Policy Controller app for devices
+  This lesson describes how to develop a device policy controller app for devices
   in an Android for Work deployment. The lesson describes how to create a work
   user profile, how to set device policies, and how to apply
   restrictions to other apps running on the managed profile.
@@ -85,13 +87,13 @@
   policies to control the behavior of employees' devices and apps. The
   enterprise administrator sets these policies with software provided by their
   Enterprise Mobility Management (EMM) provider. The EMM software communicates
-  with a Work Policy Controller on each device. The Work Policy Controller, in
+  with a device policy controller on each device. The device policy controller, in
   turn, manages the settings and behavior of the work user profile on each
   individual’s device.
 </p>
 
 <p class="note">
-  <strong>Note:</strong> A Work Policy Controller is built on the existing
+  <strong>Note:</strong> A device policy controller is built on the existing
   model used for device administration applications, as described in <a href=
   "{@docRoot}guide/topics/admin/device-admin.html">Device Administration</a>.
   In particular, your app needs to create a subclass of {@link
@@ -177,7 +179,7 @@
   <li>Removes non-required applications from the managed profile.
   </li>
 
-  <li>Copies the Work Policy Controller application into the managed profile and
+  <li>Copies the device policy controller app into the managed profile and
     sets it as the profile owner.
   </li>
 </ul>
@@ -209,9 +211,8 @@
 
 <h3 id="after_creating_profile">After Creating the Managed Profile</h3>
 
-<p>When the profile has been provisioned, the system calls the Work Policy
-Controller app's {@link
-android.app.admin.DeviceAdminReceiver#onProfileProvisioningComplete
+<p>When the profile has been provisioned, the system calls the device policy
+controller app's {@link android.app.admin.DeviceAdminReceiver#onProfileProvisioningComplete
 DeviceAdminReceiver.onProfileProvisioningComplete()} method. Override this
 callback method to finish enabling the managed profile.</p>
 
@@ -257,7 +258,7 @@
 <h2 id="set_up_policies">Set Up Device Policies</h2>
 
 <p>
-  The Work Policy Controller app is responsible for applying the enterprise's
+  The device policy controller app is responsible for applying the enterprise's
   device policies. For example, a particular enterprise might require that all
   devices become locked after a certain number of failed attempts to enter the
   device password. The controller app queries the EMM to find out what
@@ -273,13 +274,12 @@
 
 <h2 id="apply_restrictions">Apply App Restrictions</h2>
 
-<p>Enterprise environments may require that approved apps implement apps
-implement security or feature restrictions. App developers must implement these
-restrictions and declare them for use by enterprise administrators, as described
-in <a href="{@docRoot}training/enterprise/app-restrictions.html">Implementing
-App Restrictions</a>. The Work Policy Controller receives restriction changes
-from the enterprise administrator, and forwards those restriction changes to the
-apps.</p>
+<p>Enterprise environments may require that approved apps implement security
+or feature restrictions. App developers must implement these restrictions
+and declare them for use by enterprise administrators, as described in
+<a href="{@docRoot}training/enterprise/app-restrictions.html">Implementing
+App Restrictions</a>. The device policy controller receives restriction changes
+from the enterprise administrator, and forwards those restriction changes to the apps.</p>
 
 <p>For example, a particular news app might have a restriction setting that
 controls whether the app is allowed to download videos over a cellular
@@ -287,9 +287,9 @@
 notification to the controller app. The controller app, in turn,
 notifies the news app that the restriction setting has changed.</p>
 
-<p class="note"><strong>Note:</strong> This document covers how the Work Policy
-Controller app changes the restriction settings for the other apps on the
-managed profile. Details on how the Work Policy Controller app communicates with
+<p class="note"><strong>Note:</strong> This document covers how the device policy
+controller app changes the restriction settings for the other apps on the
+managed profile. Details on how the device policy controller app communicates with
 the EMM are out of scope for this document.</p>
 
 <p>To change an app's restrictions, call the {@link
@@ -308,7 +308,7 @@
 a cellular network; it must use a Wi-Fi network instead.</p>
 
 <p>
-  If your Work Policy Controller app needs to turn off cellular downloads, it
+  If your device policy controller app needs to turn off cellular downloads, it
   would first fetch the device policy service object, as described above. It
   then assembles a restrictions bundle and passes this bundle to {@link
   android.app.admin.DevicePolicyManager#setApplicationRestrictions
diff --git a/docs/html/training/game-controllers/compatibility.jd b/docs/html/training/game-controllers/compatibility.jd
old mode 100644
new mode 100755
index f68ab1a..51ae9ee
--- a/docs/html/training/game-controllers/compatibility.jd
+++ b/docs/html/training/game-controllers/compatibility.jd
@@ -13,7 +13,7 @@
 Suppport</a></li>
   <li><a href="#abstraction">Add an Interface for Backward Compatibility</a></li>
   <li><a href="#newer">Implement the Interface on Android 4.1 and Higher</a></li>
-  <li><a href="#older">Implement the Interface on Android 2.3 up to Android
+  <li><a href="#older">Implement the Interface on Android 3.1 up to Android
 4.0</a></li>
   <li><a href="#using">Use the Version-Specific Implementations</a></li>
 </ol>
@@ -36,7 +36,7 @@
 
 <p>This lesson demonstrates how to use APIs available in Android 4.1 and higher
 in a backward compatible way, enabling your game to support the following
-features on devices running Android 2.3 and higher:</p>
+features on devices running Android 3.1 and higher:</p>
 <ul>
 <li>The game can detect if a new game controller is added, changed, or removed.</li>
 <li>The game can query the capabilities of a game controller.</li>
@@ -48,20 +48,20 @@
 above. This sample shows how to implement the {@code InputManagerCompat}
 interface to support different versions of Android. To compile the sample, you
 must use Android 4.1 (API level 16) or higher. Once compiled, the sample app
-runs on any device running Android 2.3 (API level 9) or higher as the build
+runs on any device running Android 3.1 (API level 12) or higher as the build
 target.
 </p>
 
 <h2 id="prepare">Prepare to Abstract APIs for Game Controller Support</h2>
 <p>Suppose you want to be able to determine if a game controller's connection
-status has changed on devices running on Android 2.3 (API level 9). However,
+status has changed on devices running on Android 3.1 (API level 12). However,
 the APIs are only available in Android 4.1 (API level 16) and higher, so you
 need to provide an implementation that supports Android 4.1 and higher while
-providing a fallback mechanism that supports Android 2.3 up to Android 4.0.</p>
+providing a fallback mechanism that supports Android 3.1 up to Android 4.0.</p>
 
 <p>To help you determine which features require such a fallback mechanism for
     older versions, table 1 lists the differences in game controller support
-    between Android 2.3 (API level 9), 3.1 (API level 12), and 4.1 (API level
+    between Android 3.1 (API level 12) and 4.1 (API level
     16).</p>
 
 <p class="table-caption" id="game-controller-support-table">
@@ -74,7 +74,6 @@
 <tr>
 <th>Controller Information</th>
 <th>Controller API</th>
-<th>API level 9</th>
 <th>API level 12</th>
 <th>API level 16</th>
 </tr>
@@ -83,34 +82,29 @@
 <td rowspan="5">Device Identification</td>
 <td>{@link android.hardware.input.InputManager#getInputDeviceIds()}</td>
 <td style="text-align: center;"><big>&nbsp;</big></td>
-<td style="text-align: center;"><big>&nbsp;</big></td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
 
 <tr>
 <td>{@link android.hardware.input.InputManager#getInputDevice(int)
 getInputDevice()}</td>
-<td style="text-align: center;">&nbsp;</td>
 <td style="text-align: center;"><big>&nbsp;</big></td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
 
 <tr>
 <td>{@link android.view.InputDevice#getVibrator()}</td>
-<td style="text-align: center;">&nbsp;</td>
 <td style="text-align: center;"><big>&nbsp;</big></td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
 
 <td>{@link android.view.InputDevice#SOURCE_JOYSTICK}</td>
-<td style="text-align: center;">&nbsp;</td>
 <td style="text-align: center;"><big>&bull;</big></td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
 
 <tr>
 <td>{@link android.view.InputDevice#SOURCE_GAMEPAD}</td>
-<td style="text-align: center;">&nbsp;</td>
 <td style="text-align: center;"><big>&bull;</big></td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
@@ -119,21 +113,18 @@
 <td rowspan="3">Connection Status</td>
 <td>{@link android.hardware.input.InputManager.InputDeviceListener#onInputDeviceAdded(int) onInputDeviceAdded()}</td>
 <td style="text-align: center;">&nbsp;</td>
-<td style="text-align: center;">&nbsp;</td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
 
 <tr>
 <td>{@link android.hardware.input.InputManager.InputDeviceListener#onInputDeviceChanged(int) onInputDeviceChanged()}</td>
 <td style="text-align: center;">&nbsp;</td>
-<td style="text-align: center;">&nbsp;</td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
 
 <tr>
 <td>{@link android.hardware.input.InputManager.InputDeviceListener#onInputDeviceRemoved(int) onInputDeviceRemoved()}</td>
 <td style="text-align: center;">&nbsp;</td>
-<td style="text-align: center;">&nbsp;</td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
 
@@ -147,7 +138,6 @@
 {@link android.view.KeyEvent#KEYCODE_DPAD_CENTER})</td>
 <td style="text-align: center;"><big>&bull;</big></td>
 <td style="text-align: center;"><big>&bull;</big></td>
-<td style="text-align: center;"><big>&bull;</big></td>
 </tr>
 
 <tr>
@@ -162,7 +152,6 @@
 {@link android.view.KeyEvent#KEYCODE_BUTTON_L1 BUTTON_L1},
 {@link android.view.KeyEvent#KEYCODE_BUTTON_R2 BUTTON_R2},
 {@link android.view.KeyEvent#KEYCODE_BUTTON_L2 BUTTON_L2})</td>
-<td style="text-align: center;">&nbsp;</td>
 <td style="text-align: center;"><big>&bull;</big></td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
@@ -175,7 +164,6 @@
 {@link android.view.MotionEvent#AXIS_RZ},
 {@link android.view.MotionEvent#AXIS_HAT_X},
 {@link android.view.MotionEvent#AXIS_HAT_Y})</td>
-<td style="text-align: center;">&nbsp;</td>
 <td style="text-align: center;"><big>&bull;</big></td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
@@ -184,7 +172,6 @@
 <td>Analog trigger press (
 {@link android.view.MotionEvent#AXIS_LTRIGGER},
 {@link android.view.MotionEvent#AXIS_RTRIGGER})</td>
-<td style="text-align: center;">&nbsp;</td>
 <td style="text-align: center;"><big>&bull;</big></td>
 <td style="text-align: center;"><big>&bull;</big></td>
 </tr>
@@ -200,7 +187,7 @@
 <li>Create a proxy implementation of your interface that uses APIs in Android
 4.1 and higher.</li>
 <li>Create a custom implementation of your interface that uses APIs available
-between Android 2.3 up to Android 4.0.</li>
+between Android 3.1 up to Android 4.0.</li>
 <li>Create the logic for switching between these implementations at runtime,
 and begin using the interface in your game.</li>
 </ol>
@@ -284,8 +271,9 @@
 across different platform versions. If your game is running on Android 4.1 or
 higher and calls an {@code InputManagerCompat} method, the proxy implementation
 calls the equivalent method in {@link android.hardware.input.InputManager}.
-However, if your game is running on Android 2.3 up to Android 4.0, the custom implementation processes calls to {@code InputManagerCompat} methods by using
-only APIs introduced no later than Android 2.3. Regardless of which
+However, if your game is running on Android 3.1 up to Android 4.0, the custom implementation
+processes calls to {@code InputManagerCompat} methods by using
+only APIs introduced no later than Android 3.1. Regardless of which
 version-specific implementation is used at runtime, the implementation passes
 the call results back transparently to the game.</p>
 
@@ -377,11 +365,10 @@
 }
 </pre>
 
-<h2 id="older">Implementing the Interface on Android 2.3 up to Android 4.0</h2>
+<h2 id="older">Implementing the Interface on Android 3.1 up to Android 4.0</h2>
 
-<p>The {@code InputManagerV9} implementation uses APIs introduced no later
-than Android 2.3. To create an implementation of {@code
-InputManagerCompat} that supports Android 2.3 up to Android 4.0, you can use
+<p>To create an implementation of {@code
+InputManagerCompat} that supports Android 3.1 up to Android 4.0, you can use
 the following objects:
 <ul>
 <li>A {@link android.util.SparseArray} of device IDs to track the
@@ -586,7 +573,7 @@
 
 <p>You now have two implementations of {@code InputManagerCompat}: one that
 works on devices running Android 4.1 and higher, and another
-that works on devices running Android 2.3 up to Android 4.0.</p>
+that works on devices running Android 3.1 up to Android 4.0.</p>
 
 <h2 id="using">Use the Version-Specific Implementation</h2>
 <p>The version-specific switching logic is implemented in a class that acts as
@@ -626,7 +613,7 @@
 onGenericMotionEvent()} method in your main view, as described in
 <a href="controller-input.html#analog">Handle a MotionEvent from a Game
 Controller</a>. Your game should now be able to process game controller events
-consistently on devices running Android 2.3 (API level 9) and higher.
+consistently on devices running Android 3.1 (API level 12) and higher.
 <p>
 <pre>
 &#64;Override
@@ -640,4 +627,4 @@
 </pre>
 <p>You can find a complete implementation of this compatibility code in the
 {@code GameView} class provided in the sample {@code ControllerSample.zip}
-available for download above.</p>
\ No newline at end of file
+available for download above.</p>
diff --git a/docs/html/training/improving-layouts/reusing-layouts.jd b/docs/html/training/improving-layouts/reusing-layouts.jd
index 7b0185d..b277c8b 100644
--- a/docs/html/training/improving-layouts/reusing-layouts.jd
+++ b/docs/html/training/improving-layouts/reusing-layouts.jd
@@ -43,7 +43,7 @@
 <p>Reusing layouts is particularly powerful as it allows you create reusable complex layouts. For
 example, a yes/no button panel, or custom progress bar with description text.
 It also means that any elements of your application that are common across multiple layouts can be
-extracted, managed separately, then included in each layout. So while 
+extracted, managed separately, then included in each layout. So while
 you can create individual UI components by writing a custom {@link android.view.View}, you can
 do it even more easily by re-using a layout file.</p>
 
@@ -56,14 +56,14 @@
 
 <pre>
 &lt;FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width=”match_parent”
+    android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:background="&#64;color/titlebar_bg">
 
     &lt;ImageView android:layout_width="wrap_content"
-               android:layout_height="wrap_content" 
-               android:src="&#64;drawable/gafricalogo" />
-&lt;/FrameLayout>
+               android:layout_height="wrap_content"
+               android:src="&#64;drawable/gafricalogo" /&gt;
+&lt;/FrameLayout&gt;
 </pre>
 
 <p>The root {@link android.view.View} should be exactly how you'd like it to appear in each
@@ -80,18 +80,18 @@
 
 <pre>
 &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:orientation="vertical" 
-    android:layout_width=”match_parent”
-    android:layout_height=”match_parent”
+    android:orientation="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
     android:background="&#64;color/app_bg"
-    android:gravity="center_horizontal">
+    android:gravity="center_horizontal"&gt;
 
-    <strong>&lt;include layout="&#64;layout/titlebar"/></strong>
+    <strong>&lt;include layout="&#64;layout/titlebar"/&gt;</strong>
 
-    &lt;TextView android:layout_width=”match_parent”
+    &lt;TextView android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:text="&#64;string/hello"
-              android:padding="10dp" />
+              android:padding="10dp" /&gt;
 
     ...
 
@@ -103,10 +103,10 @@
 example:</p>
 
 <pre>
-&lt;include android:id=”&#64;+id/news_title”
-         android:layout_width=”match_parent”
-         android:layout_height=”match_parent”
-         layout=”@layout/title”/>
+&lt;include android:id="&#64;+id/news_title"
+         android:layout_width="match_parent"
+         android:layout_height="match_parent"
+         layout="@layout/title"/&gt;
 </pre>
 
 <p>However, if you want to override layout attributes using
@@ -130,17 +130,17 @@
 {@code <merge>} element as the root view for the re-usable layout. For example:</p>
 
 <pre>
-&lt;merge xmlns:android="http://schemas.android.com/apk/res/android">
+&lt;merge xmlns:android="http://schemas.android.com/apk/res/android"&gt;
 
     &lt;Button
-        android:layout_width="fill_parent" 
+        android:layout_width="fill_parent"
         android:layout_height="wrap_content"
-        android:text="@string/add"/>
+        android:text="@string/add"/&gt;
 
     &lt;Button
-        android:layout_width="fill_parent" 
+        android:layout_width="fill_parent"
         android:layout_height="wrap_content"
-        android:text="@string/delete"/>
+        android:text="@string/delete"/&gt;
 
 &lt;/merge>
 </pre>
diff --git a/docs/html/training/in-app-billing/preparing-iab-app.jd b/docs/html/training/in-app-billing/preparing-iab-app.jd
old mode 100644
new mode 100755
index 42bc947..2c6e9a0
--- a/docs/html/training/in-app-billing/preparing-iab-app.jd
+++ b/docs/html/training/in-app-billing/preparing-iab-app.jd
@@ -30,18 +30,35 @@
 </div>
 </div>
 
+<a class="notice-developers-video wide"
+href="https://www.youtube.com/watch?v=UvCl5Xx7Z5o">
+<div>
+    <h3>Video</h3>
+    <p>Implementing Freemium</p>
+  </div>
+  </a>
+
 <p>Before you can start using the In-app Billing service, you'll need to add the library that contains the In-app Billing Version 3 API to your Android project. You also need to set the permissions for your application to communicate with Google Play. In addition, you'll need to establish a connection between your application and  Google Play. You should also verify that the In-app Billing API version that you are using in your application is supported by Google Play.</p>
 
 <h2 id="GetSample">Download the Sample Application</h2>
 <p>In this training class, you will use a reference implementation for the In-app Billing Version 3 API called the {@code TrivialDrive} sample application. The sample includes convenience classes to quickly set up the In-app Billing service, marshal and unmarshal data types, and handle In-app Billing requests from the main thread of your application.</p>
 <p>To download the sample application:</p>
 <ol>
-<li>Open the <a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>.</li>
-<li>In the SDK Manager, expand the {@code Extras} section.</li>
-<li>Select <strong>Google Play Billing Library</strong>.</li>
-<li>Click <strong>Install packages</strong> to complete the download.</li>
+<li>Open Android Studio and then close any open projects until you are
+presented with the welcome screen.</li>
+<li>Choose <strong>Import an Android code sample</strong> from the
+  <strong>Quick Start</strong> list on the right side the window.</li>
+<li>Type {@code Trivial Drive} into the search bar and select the
+  <strong>Trivial Drive</strong> sample.</li>
+<li>Follow the rest of the instructions in the <strong>Import Sample</strong>
+  wizard to import the sample to a directory of your choosing. The sample code
+  is in the <strong>TrivialDrive</strong> subdirectory of the repository.</li>
 </ol>
-<p>The sample files will be installed to {@code <sdk>/extras/google/play_billing/}.</p>
+
+<p>Alternatively, you can use {@code git} to manually clone
+ the repository from <a
+ href="https://github.com/googlesamples/android-play-billing"
+ class="external-link">https://github.com/googlesamples/android-play-billing</a></p>
 
 <h2 id="AddToDevConsole">Add Your Application to the Developer Console</h2>
 <p>The Google Play Developer Console is where you publish your In-app Billing application and  manage the various digital goods that are available for purchase from your application. When you create a new application entry in the Developer Console, it automatically generates a public license key for your application. You will need this key to establish a trusted connection from your application to the Google Play servers. You only need to generate this key once per application, and don’t need to repeat these steps when you update the APK file for your application.</p>
@@ -67,9 +84,9 @@
 <p>To add the In-app Billing Version 3 library to your new In-app Billing project:</p>
 <ol>
 <li>Copy the {@code TrivialDrive} sample files into your Android project.</li>
-<li>Modify the package name in the files you copied to use the package name for your project. In Eclipse, you can use this shortcut: right-click the package name, then  select <strong>Refactor</strong> > <strong>Rename</strong>.</li>
+<li>Modify the package name in the files you copied to use the package name for your project. In Android Studio, you can use this shortcut: right-click the package name, then  select <strong>Refactor</strong> > <strong>Rename</strong>.</li>
 <li>Open the {@code AndroidManifest.xml} file and update the package attribute value to use the package name for your project.</li>
-<li>Fix import statements as needed so that your project compiles correctly.  In Eclipse, you can use this shortcut: press <strong>Ctrl+Shift+O</strong> in each file showing errors.</li>
+<li>Fix import statements as needed so that your project compiles correctly.  In Android Studio, you can use this shortcut: press <strong>Ctrl+Shift+O</strong> in each file showing errors.</li>
 <li>Modify the sample to create your own application. Remember to copy the Base64 public license key for your application from the Developer Console over to your {@code MainActivity.java}.</li>
 </ol>
 
@@ -81,7 +98,6 @@
   <li>In Android Studio: Create a directory named {@code aidl} under {@code src/main}, add a new
   package {@code com.android.vending.billing} in this directory, and import the
   {@code IInAppBillingService.aidl} file into this package.</li>
-  <li>In Eclipse: Import the {@code IInAppBillingService.aidl} file into your {@code /src} directory.</li>
   <li>In other dev environments: Create the following directory {@code /src/com/android/vending/billing} and copy the {@code IInAppBillingService.aidl} file into this directory.</li>
   </ul>
 </li>
diff --git a/docs/html/training/index.jd b/docs/html/training/index.jd
index 1b0b1fe..18971ab 100644
--- a/docs/html/training/index.jd
+++ b/docs/html/training/index.jd
@@ -4,39 +4,46 @@
 
 @jd:body
 
-<p>Welcome to Training for Android developers. Here you'll find sets of lessons within classes
-that describe how to accomplish a specific task with code samples you can re-use in your app.
-Classes are organized into several groups you can see at the top-level of the left navigation.</p>
-
- <p>This first group, <em>Getting Started</em>, teaches you the bare
-    essentials for Android app development. If you're a new Android app developer, you should
-    complete each of these classes in order.</p>
-
 <div class="wrap">
   <div class="cols">
     <div class="col-1of2">
-      <p>If you prefer to learn through interactive video training,
-      check out this trailer for a course about the fundamentals of Android development.</p>
-      <p><a href="https://www.udacity.com/course/ud853" class="button">
-        Start the video course</a>
-      </p>
+<p>Welcome to Training for Android developers. Here you'll find
+training classes that describe how to accomplish a specific task with code
+samples you can re-use in your app. Classes are organized into several groups
+you can see at the top-level of the left navigation.</p>
+
+<p>The first <a href="#class-list">training guides below</a>
+teach you the essentials for Android app development. If you're a new
+Android app developer, you should complete each of these classes in order.</p>
+
+<p>Various online video courses are also available if you'd prefer
+an interactive video experience.</p>
+
     </div>
-    <div class="col-1of2">
-      <iframe width="300" height="169" src="//www.youtube.com/embed/LfVBFFoy9Y0?utm_source=dac&utm_medium=video&utm_content=andfuntrain&utm_campaign=udacint?rel=0&amp;hd=1" frameborder="0" allowfullscreen></iframe>
+    <div class="col-1of2" style="background:#eee;padding-top:10px">
+      <p>Check out this trailer for a course about the fundamentals of
+        Android development on Udacity.</p>
+      </p>
+      <iframe width="338" height="169" src="//www.youtube.com/embed/LfVBFFoy9Y0?utm_source=dac&utm_medium=video&utm_content=andfuntrain&utm_campaign=udacint?rel=0&amp;hd=1" frameborder="0" allowfullscreen></iframe>
+      <p><a href="https://www.udacity.com/course/ud853" class="button"
+        style="width:100%">Start the video course</a>
     </div>
   </div>
 </div>
 
-<div style="clear:left"></div>
-</div>
+<div style="clear:left" id="classes"></div>
 
-  <div><h2 class="norule">Online video courses</h2>
-  <p>If you prefer to learn through interactive video training,
-    check out these free courses.</p>
+<section class="dac-section dac-small" id="latest-games"><div class="wrap">
+  <h2 class="norule" style="margin:20px 0">Online video courses</h2>
   <div class="resource-widget resource-flow-layout col-16"
        data-query="collection:develop/landing/courses"
        data-sortOrder="random"
        data-cardSizes="6x6"
-       data-maxResults="12"
-       data-initial-results="3"></div>
-</div>
\ No newline at end of file
+       data-maxResults="24"
+       data-items-per-page="24"
+       data-initial-results="6"></div>
+  </div>
+</section>
+
+<h2 class="norule" id="class-list"
+  style="margin:0 0 -40px">Training guides</h2>
\ No newline at end of file
diff --git a/docs/html/training/location/change-location-settings.jd b/docs/html/training/location/change-location-settings.jd
new file mode 100644
index 0000000..70733eb
--- /dev/null
+++ b/docs/html/training/location/change-location-settings.jd
@@ -0,0 +1,251 @@
+page.title=Changing Location Settings
+trainingnavtop=true
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+
+  <h2>This lesson teaches you how to</h2>
+  <ol>
+    <li><a href="#connect">Connect to Location Services</a></li>
+    <li><a href="#location-request">Set Up a Location Request</a></li>
+    <li><a href="#get-settings">Get Current Location Settings</a></li>
+    <li><a href="#prompt">Prompt the User to Change Location Settings</a></li>
+  </ol>
+
+  <h2>You should also read</h2>
+  <ul>
+    <li>
+      <a href="https://developers.google.com/android/guides/setup"
+      class="external-link">Setting up Google Play Services</a>
+    </li>
+    <li>
+      <a href="retrieve-current.html">Getting the Last Known Location</a>
+    </li>
+   </ul>
+  </div>
+</div>
+
+<p>If your app needs to request location or receive permission updates, the
+  device needs to enable the appropriate system settings, such as GPS or Wi-Fi
+  scanning. Rather than directly enabling services such as the device's GPS,
+  your app specifies the required level of accuracy/power consumption and
+  desired update interval, and the device automatically makes the appropriate
+  changes to system settings. These settings are defined by the
+  <a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest"
+  class="external-link">{@code LocationRequest}</a>
+  data object. </p>
+
+<p>This lesson shows you how to use the
+  <a href="https://developers.google.com/android/reference/com/google/android/gms/location/SettingsApi">Settings API</a>
+  to check which settings are enabled, and present the Location Settings
+  dialog for the user to update their settings with a single tap.</p>
+
+<h2 id="connect">Connect to Location Services</h2>
+
+<p>In order to use the location services provided by Google Play Services and
+  the fused location provider, connect your app using the
+  <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient">Google API Client</a>,
+  then check the current location settings and prompt the user to enable the
+  required settings if needed. For details on connecting with the
+  Google API client, see <a href="retrieve-current.html">Getting the Last Known Location</a>.</p>
+
+<p>Apps that use location services must request location permissions. For this
+  lesson, coarse location detection is sufficient. Request this permission
+  with the <code>uses-permission</code> element in your app manifest, as shown
+  in the following example:</p>
+
+<pre><code>&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
+  package="com.google.android.gms.location.sample.locationupdates" &gt;
+
+  &lt;uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/&gt;
+&lt;/manifest&gt;
+</code></pre>
+
+<p>If the device is running Android 6.0 or higher, and your app's target
+  SDK is 23 or higher, the app has to list the permissions in the manifest
+  <em>and</em> request those permissions at run time. For more information, see
+<a href="{@docRoot}training/permissions/requesting.html">Requesting Permissions at Run Time</a>.</p>
+
+<h2 id="location-request">Set Up a Location Request</h2>
+
+<p>To store parameters for requests to the fused location provider, create a
+  <a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html">{@code LocationRequest}</a>.
+  The parameters determine the level of accuracy for location requests. For
+  details of all available location request options, see the
+  <a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html">{@code LocationRequest}</a>
+  class reference. This lesson sets the update interval, fastest update
+  interval, and priority, as described below:</p>
+
+<dl>
+  <dt>
+    Update interval
+  </dt>
+  <dd>
+    <a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html#setInterval(long)">{@code setInterval()}</a>
+    - This method sets the rate in milliseconds at which your app prefers to
+    receive location updates. Note that the location updates may be faster than
+    this rate if another app is receiving updates at a faster rate, or slower
+    than this rate, or there may be no updates at all (if the device has no
+    connectivity, for example).
+  </dd>
+  <dt>
+    Fastest update interval
+  </dt>
+  <dd>
+    <a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html#setFastestInterval(long)">{@code setFastestInterval()}</a>
+    - This method sets the <strong>fastest</strong> rate in milliseconds at which
+    your app can handle location updates. You need to set this rate because
+    other apps also affect the rate at which updates are sent. The Google Play
+    services location APIs send out updates at the fastest rate that any app
+    has requested with
+    <a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html#setInterval(long)">{@code setInterval()}</a>.
+    If this rate is faster
+    than your app can handle, you may encounter problems with UI flicker or data
+    overflow. To prevent this, call
+    <a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html#setFastestInterval(long)">{@code setFastestInterval()}</a>
+    to set an upper limit to the update rate.
+  </dd>
+  <dt>Priority</dt>
+  <dd>
+    <p>
+      <a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html#setPriority(int)">{@code setPriority()}</a>
+      - This method sets the priority of the request, which gives the Google Play
+      services location services a strong hint about which location sources to use.
+      The following values are supported:</p>
+      <ul>
+        <li>
+          <a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html#PRIORITY_BALANCED_POWER_ACCURACY">{@code PRIORITY_BALANCED_POWER_ACCURACY}</a>
+          - Use this setting to request location precision to within a city
+          block, which is an accuracy of approximately 100 meters. This is
+          considered a coarse level of accuracy, and is likely to consume less
+          power. With this setting, the location services are likely to use WiFi
+          and cell tower positioning. Note, however, that the choice of location
+          provider depends on many other factors, such as which sources are
+          available.</li>
+        <li>
+          <a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html#PRIORITY_HIGH_ACCURACY">{@code PRIORITY_HIGH_ACCURACY}</a>
+          - Use this setting to request the most precise location possible. With
+          this setting, the location services are more likely to use GPS
+          to determine the location.</li>
+        <li><a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html#PRIORITY_LOW_POWER">{@code PRIORITY_LOW_POWER}</a>
+          - Use this setting to request city-level precision, which is
+          an accuracy of approximately 10 kilometers. This is considered a
+          coarse level of accuracy, and is likely to consume less power.</li>
+        <li><a href="https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest.html#PRIORITY_NO_POWER">{@code PRIORITY_NO_POWER}</a>
+          - Use this setting if you need negligible impact on power consumption,
+          but want to receive location updates when available. With this
+          setting, your app does not trigger any location updates, but
+          receives locations triggered by other apps.</li>
+      </ul>
+  </dd>
+</dl>
+
+<p>Create the location request and set the parameters as shown in this
+  code sample:</p>
+
+<pre>
+protected void createLocationRequest() {
+    LocationRequest mLocationRequest = new LocationRequest();
+    mLocationRequest.setInterval(10000);
+    mLocationRequest.setFastestInterval(5000);
+    mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
+}
+</pre>
+
+<p>The priority of
+  <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#PRIORITY_HIGH_ACCURACY">{@code PRIORITY_HIGH_ACCURACY}</a>,
+  combined with the
+  {@link android.Manifest.permission#ACCESS_FINE_LOCATION ACCESS_FINE_LOCATION}
+  permission setting that you've defined in the app manifest, and a fast update
+  interval of 5000 milliseconds (5 seconds), causes the fused location
+  provider to return location updates that are accurate to within a few feet.
+  This approach is appropriate for mapping apps that display the location in
+  real time.</p>
+
+<p class="note"><strong>Performance hint:</strong> If your app accesses the
+  network or does other long-running work after receiving a location update,
+  adjust the fastest interval to a slower value. This adjustment prevents your
+  app from receiving updates it can't use. Once the long-running work is done,
+  set the fastest interval back to a fast value.</p>
+
+<h2 id="get-settings">Get Current Location Settings</h2>
+
+<p>Once you have connected to Google Play services and the location services
+    API, you can get the current location settings of a user's device. To do
+    this, create a
+    <a href="{@docRoot}reference/com/google/android/gms/location/LocationSettingsRequest.Builder"><code>LocationSettingsRequest.Builder</code></a>,
+    and add one or more location requests. The following code snippet shows how
+    to add the location request that was created in the previous step:</p>
+
+<pre>LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder()
+     .addLocationRequest(mLocationRequest);
+</pre>
+
+<p>Next check whether the current location settings are satisfied:</p>
+
+<pre>PendingResult&lt;LocationSettingsResult&gt; result =
+         LocationServices.SettingsApi.checkLocationSettings(mGoogleClient,
+                 builder.build());</pre>
+
+<p>When the <a href="{@docRoot}reference/com/google/android/gms/common/api/PendingResult"><code>PendingResult</code></a>
+  returns, your app can check the location settings by looking at the status
+  code from the <a href="{@docRoot}reference/com/google/android/gms/location/LocationSettingsResult"><code>LocationSettingsResult</code></a>
+  object. To get even more details about the the current state of the relevant
+  location settings, your app can call the
+  <a href="{@docRoot}reference/com/google/android/gms/location/LocationSettingsResult">{@code LocationSettingsResult}</a>
+  object's
+  <a href="{@docRoot}reference/com/google/android/gms/location/LocationSettingsResult#getLocationSettingsStates"><code>getLocationSettingsStates()</code></a>
+  method.</p>
+
+<h2 id="prompt">Prompt the User to Change Location Settings</h2>
+
+<p>To determine whether the location settings are appropriate for the location
+  request, check the status code from the
+  <a href="{@docRoot}reference/com/google/android/gms/location/LocationSettingsResult">{@code LocationSettingsResult}</a>
+  object. A status code of <code>RESOLUTION_REQUIRED</code> indicates that the
+  settings must be changed. To prompt the user for permission to modify the
+  location settings, call
+  <a href="{@docRoot}reference/com/google/android/gms/common/api/Status#startResolutionForResult(android.app.Activity, int)">
+            {@code startResolutionForResult(Activity, int)}</a>.
+  This method brings up a dialog asking for the user's permission to modify
+  location settings. The following code snippet shows how to check the location
+  settings, and how to call {@code startResolutionForResult(Activity, int)}.
+</p>
+
+<pre>result.setResultCallback(new ResultCallback&lt;LocationSettingsResult&gt;()) {
+     &#64;Override
+     public void onResult(LocationSettingsResult result) {
+         final Status status = result.getStatus();
+         final LocationSettingsStates = result.getLocationSettingsStates();
+         switch (status.getStatusCode()) {
+             case LocationSettingsStatusCodes.SUCCESS:
+                 // All location settings are satisfied. The client can
+                 // initialize location requests here.
+                 ...
+                 break;
+             case LocationSettingsStatusCodes.RESOLUTION_REQUIRED:
+                 // Location settings are not satisfied, but this can be fixed
+                 // by showing the user a dialog.
+                 try {
+                     // Show the dialog by calling startResolutionForResult(),
+                     // and check the result in onActivityResult().
+                     status.startResolutionForResult(
+                         OuterClass.this,
+                         REQUEST_CHECK_SETTINGS);
+                 } catch (SendIntentException e) {
+                     // Ignore the error.
+                 }
+                 break;
+             case LocationSettingsStatusCodes.SETTINGS_CHANGE_UNAVAILABLE:
+                 // Location settings are not satisfied. However, we have no way
+                 // to fix the settings so we won't show the dialog.
+                 ...
+                 break;
+         }
+     }
+ });</pre>
+
+  <p>The next lesson,
+    <a href="receive-location-updates.html">Receiving Location Updates</a>, shows
+    you how to receive periodic location updates.</p>
diff --git a/docs/html/training/location/geofencing.jd b/docs/html/training/location/geofencing.jd
index 556329c..1cf89fd 100644
--- a/docs/html/training/location/geofencing.jd
+++ b/docs/html/training/location/geofencing.jd
@@ -13,7 +13,8 @@
     <li><a href="#CreateAdd">Create and Add Geofences</a></li>
     <li><a href="#HandleGeofenceTransitions">Handle Geofence Transitions</a></li>
     <li><a href="#StopGeofenceMonitoring">Stop Geofence Monitoring</a></li>
-
+    <li><a href="#BestPractices">Use Best Practices for Geofencing</a></li>
+    <li><a href="#Troubleshooting">Troubleshoot the Geofence Entrance Event</a></li>
 </ol>
 
 <h2>You should also read</h2>
@@ -56,6 +57,16 @@
     This lesson shows you how to add and remove geofences, and then listen for geofence transitions
     using an {@link android.app.IntentService}.</p>
 
+<p>We recommend upgrading existing apps to use the
+<a href="{@docRoot}reference/com/google/android/gms/location/LocationServices.html">
+LocationServices</a> class, which contains the
+<a href="{@docRoot}reference/com/google/android/gms/location/GeofencingApi.html">
+GeofencingApi</a> interface. The
+<a href="{@docRoot}reference/com/google/android/gms/location/LocationServices.html">
+LocationServices</a> class replaces the
+<a href="{@docRoot}reference/com/google/android/gms/location/LocationClient.html">
+LocationClient</a> (deprecated).</p>
+
 <h2 id="RequestGeofences">Set up for Geofence Monitoring</h2>
 <p>
     The first step in requesting geofence monitoring is to request the necessary permission.
@@ -97,6 +108,8 @@
  {@link android.app.PendingIntent} as shown in this section.
 </p>
 
+<p class="note"><strong>Note:</strong> On single-user devices, there is a limit of 100 geofences per app. For multi-user devices, the limit is 100 geofences per app per device user.</p>
+
 <h3>Create geofence objects</h3>
 
 <p>
@@ -145,25 +158,30 @@
 </pre>
 
 <p>
-    This example shows the use of two geofence triggers. The <code><a href="{@docRoot}reference/com/google/android/gms/location/Geofence.html#GEOFENCE_TRANSITION_ENTER">
+    This example shows the use of two geofence triggers. The <code>
+<a href="{@docRoot}reference/com/google/android/gms/location/Geofence.html#GEOFENCE_TRANSITION_ENTER">
     GEOFENCE_TRANSITION_ENTER</a></code>
-    transition triggers when a device enters a geofence, and the <code><a href="{@docRoot}reference/com/google/android/gms/location/Geofence.html#GEOFENCE_TRANSITION_EXIT">
+    transition triggers when a device enters a geofence, and the <code>
+<a href="{@docRoot}reference/com/google/android/gms/location/Geofence.html#GEOFENCE_TRANSITION_EXIT">
     GEOFENCE_TRANSITION_EXIT</a></code>
     transition triggers when a device exits a geofence. Specifying
-    <code><a href="{@docRoot}reference/com/google/android/gms/location/GeofencingRequest.html#INITIAL_TRIGGER_ENTER">
+    <code>
+<a href="{@docRoot}reference/com/google/android/gms/location/GeofencingRequest.html#INITIAL_TRIGGER_ENTER">
         INITIAL_TRIGGER_ENTER</a></code> tells Location services that
-    <code><a href="{@docRoot}reference/com/google/android/gms/location/Geofence.html#GEOFENCE_TRANSITION_ENTER">
+    <code>
+<a href="{@docRoot}reference/com/google/android/gms/location/Geofence.html#GEOFENCE_TRANSITION_ENTER">
         GEOFENCE_TRANSITION_ENTER</a></code>
     should be triggered if the the device is already inside the geofence.</p>
 </p>
 
-<p>In many cases, it may be preferable to use instead <code><a href="{@docRoot}reference/com/google/android/gms/location/GeofencingRequest.html#INITIAL_TRIGGER_DWELL">
+<p>In many cases, it may be preferable to use instead <code>
+<a href="{@docRoot}reference/com/google/android/gms/location/GeofencingRequest.html#INITIAL_TRIGGER_DWELL">
     INITIAL_TRIGGER_DWELL</a></code>,
     which triggers events only when the user stops for a defined duration within a geofence.
     This approach can help reduce "alert spam" resulting from large numbers notifications when a
     device briefly enters and exits geofences. Another strategy for getting best results from your
     geofences is to set a minimum radius of 100 meters. This helps account for the location accuracy
-    of typical WiFi networks, and also helps reduce device power consumption.
+    of typical Wi-Fi networks, and also helps reduce device power consumption.
 </p>
 
 <h3>Define an Intent for geofence transitions</h3>
@@ -195,11 +213,15 @@
 <h3>Add geofences</h3>
 
 <p>
-    To add geofences, use the <code><a href="{@docRoot}reference/com/google/android/gms/location/GeofencingApi.html#addGeofences(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.location.GeofencingRequest, android.app.PendingIntent)">{@code GeoencingApi.addGeofences()}</a></code> method.
-    Provide the Google API client, the <code><a href="{@docRoot}reference/com/google/android/gms/location/GeofencingRequest">
+    To add geofences, use the <code>
+<a href="{@docRoot}reference/com/google/android/gms/location/GeofencingApi.html#addGeofences(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.location.GeofencingRequest, android.app.PendingIntent)">{@code GeoencingApi.addGeofences()}</a></code> method.
+    Provide the Google API client, the <code>
+<a href="{@docRoot}reference/com/google/android/gms/location/GeofencingRequest">
     GeofencingRequest</a></code> object, and the {@link android.app.PendingIntent}.
-    The following snippet, which processes the results in <code><a href="{@docRoot}reference/com/google/android/gms/common/api/ResultCallback.html#onResult(R)">
-    onResult()</a></code>, assumes that the main activity implements <code><a href="{@docRoot}reference/com/google/android/gms/common/api/ResultCallback.html">
+    The following snippet, which processes the results in <code>
+<a href="{@docRoot}reference/com/google/android/gms/common/api/ResultCallback.html#onResult(R)">
+    onResult()</a></code>, assumes that the main activity implements <code>
+<a href="{@docRoot}reference/com/google/android/gms/common/api/ResultCallback.html">
     ResultCallback</a></code>:
 </p>
 <pre>
@@ -304,3 +326,112 @@
     You can combine geofencing with other location-aware features, such as periodic location updates.
     For more information, see the other lessons in this class.
 </p>
+
+<h2 id="BestPractices">Use Best Practices for Geofencing</h2>
+
+<p>This section outlines recommendations for using geofencing with the location
+APIs for Android.</p>
+
+<h3>Reduce power consumption</h3>
+
+<p>You can use the following techniques to optimize power consumption in your apps that use geofencing:</p>
+
+<ul>
+<li><p>Set the <a href="{@docRoot}android/reference/com/google/android/gms/location/Geofence.Builder.html#setNotificationResponsiveness(int)">
+notification responsiveness</a> to a higher value. Doing so improves power consumption by
+increasing the latency of geofence alerts. For example, if you set a responsiveness value of five
+minutes your app only checks for an entrance or exit alert once every five minutes.
+Setting lower values does not necessarily mean that users will be notified within that time period
+(for example, if you set a value of 5 seconds it may take a bit longer than that to receive the
+alert).</p></li>
+<li><p>Use a larger geofence radius for locations where a user spends a significant amount of time,
+such as home or work. While a larger radius doesn't directly reduce power consumption, it reduces
+the frequency at which the app checks for entrance or exit, effectively lowering overall power
+consumption.</p></li>
+</ul>
+
+<h3>Choose the optimal radius for your geofence</h3>
+<p>For best results, the minimium radius of the geofence should be set between 100 - 150 meters.
+When Wi-Fi is available location accuracy is usually between 20 - 50 meters. When indoor
+location is available, the accuracy range can be as small as 5 meters. Unless you know indoor
+location is available inside the geofence, assume that Wi-Fi location accuracy is about
+50 meters.</p>
+
+<p>When Wi-Fi location is not available (for example, when you are driving in rural areas) the
+location accuracy degrades. The accuracy range can be as large as several hundred meters to
+several kilometers. In cases like this, you should create geofences using a larger radius.</p>
+
+<h3>Use the dwell transition type to reduce alert spam</h3>
+
+<p>If you receive a large number of alerts when driving briefly past a geofence, the best way to
+reduce the alerts is to use a transition type of <code>
+<a href="{@docRoot}reference/com/google/android/gms/location/Geofence.html#GEOFENCE_TRANSITION_DWELL">
+GEOFENCE_TRANSITION_DWELL</a></code> instead of <code>
+<a href="{@docRoot}reference/com/google/android/gms/location/Geofence.html#GEOFENCE_TRANSITION_ENTER">
+GEOFENCE_TRANSITION_ENTER</a></code>. This way, the dwelling alert is sent only when the user stops
+inside a geofence for a given period of time. You can choose the duration by setting a 
+<a href="{@docRoot}reference/com/google/android/gms/location/Geofence.Builder.html#setLoiteringDelay(int)">
+loitering delay</a>.</p>
+
+<h3>Re-register geofences only when required</h3>
+
+<p>Registered geofences are kept in the <code>com.google.process.location</code> process owned by
+the <code>com.google.android.gms</code> package.
+The app doesn’t need to do anything to handle the following events, because the system
+restores geofences after these events:</p>
+<ul>
+<li>Google Play services is upgraded.</li>
+<li>Google Play services is killed and restarted by the system due resource restriction.</li>
+<li>The location process crashes.</li>
+</ul>
+<p>The app must re-register geofences if they're still needed after the following events, since
+the system cannot recover the geofences in the following cases:</p>
+
+<ul>
+<li>The device is rebooted. The app should listen for the device's boot complete action, and then re-
+register the geofences required.</li>
+<li>The app is uninstalled and re-installed.</li>
+<li>The app's data is cleared.</li>
+<li>Google Play services data is cleared.</li>
+<li>The app has received a <code><a href="{@docRoot}reference/com/google/android/gms/location/LocationStatusCodes.html#GEOFENCE_NOT_AVAILABLE">GEOFENCE_NOT_AVAILABLE</a></code>
+alert. This typically happens
+after NLP (Android's Network Location Provider) is disabled.</li>
+</ul>
+
+<h2 id="Troubleshooting">Troubleshoot the Geofence Entrance Event</h2>
+
+<p>If geofences are not being triggered when the device enters a geofence
+(the <code><a href="{@docRoot}reference/com/google/android/gms/location/Geofence.html#GEOFENCE_TRANSITION_ENTER">
+GEOFENCE_TRANSITION_ENTER</a></code> alert isn’t triggered), first ensure that your geofences are
+registered properly as described in this guide.</p>
+
+<p>Here are some possible reasons for alerts not working as expected:</p>
+
+<ul>
+<li><strong>Accurate location is not available inside your geofence or your geofence is too
+small.</strong> On most devices, the geofence service uses only network location for geofence
+triggering. The service uses this approach because network location consumes much less
+power, it takes less time to get discrete locations, and most importantly it’s available indoors.
+Starting with Google Play services 3.2, the geofence service calculates the overlapping ratio of
+the location circle and the geofence circle and only generates the entrance alert when the ratio
+is at least 85% for a bigger geofence or 75% for a smaller geofence. For an exit alert, the ratio
+threshold used is 15% or 25%. Any ratio between these thresholds makes the geofence service mark
+the geofence state as <code>INSIDE_LOW_CONFIDENCE</code> or <code>OUTSIDE_LOW_CONFIDENCE</code> and
+no alert is sent.</li>
+<li><strong>Wi-Fi is turned off on the device.</strong> Having Wi-Fi on can significantly improve
+the location accuracy, so if Wi-Fi is turned off, your application might never get geofence alerts
+depending on several settings including the radius of the geofence, the device model, or the
+Android version. Starting from Android 4.3 (API level 18), we added the capability of “Wi-Fi scan
+only mode” which allows users to disable Wi-Fi but still get good network location. It’s good
+practice to prompt the user and provide a shortcut for the user to enable Wi-Fi or Wi-Fi scan only
+mode if both of them are disabled. Use <a href="{@docRoot}reference/com/google/android/gms/location/SettingsApi">
+SettingsApi</a> to ensure that the device's system settings are properly configured for optimal
+location detection.</li>
+<li><strong>There is no reliable network connectivity inside your geofence.</strong> If there is
+no reliable data connection, alerts might not be generated. This is because the geofence service
+depends on the network location provider which in turn requires a data connection.</li>
+<li><strong>Alerts can be late.</strong> The geofence service does not continuously query for
+location, so expect some latency when receiving alerts. Usually the latency is less than 2
+minutes, even less when the device has been moving. If the device has been stationary for a
+significant period of time, the latency may increase (up to 6 minutes).</li>
+</ul>
diff --git a/docs/html/training/location/index.jd b/docs/html/training/location/index.jd
index 8ed2071..dd6825c 100644
--- a/docs/html/training/location/index.jd
+++ b/docs/html/training/location/index.jd
@@ -79,6 +79,10 @@
      Learn how to retrieve the last known location of an Android device, which
      is usually equivalent to the user's current location.
   </dd> <dt>
+    <b><a href="change-location-settings.html">Changing Location Settings</a></b>
+  <dt> <dd>
+    Learn how to detect and apply system settings for location features.
+  </dd> <dt>
     <b><a href="receive-location-updates.html">Receiving Location
     Updates</a></b>
   </dt> <dd>
diff --git a/docs/html/training/location/receive-location-updates.jd b/docs/html/training/location/receive-location-updates.jd
index 208dc17..d82905f 100644
--- a/docs/html/training/location/receive-location-updates.jd
+++ b/docs/html/training/location/receive-location-updates.jd
@@ -7,8 +7,7 @@
 
   <h2>This lesson teaches you how to</h2>
   <ol>
-    <li><a href="#connect">Connect to Location Services</a></li>
-    <li><a href="#location-request">Set Up a Location Request</a></li>
+    <li><a href="#get-last-location">Get the Last Known Location</a></li>
     <li><a href="#updates">Request Location Updates</a></li>
     <li><a href="#callback">Define the Location Update Callback</a></li>
     <li><a href="#stop-updates">Stop Location Updates</a></li>
@@ -19,7 +18,7 @@
   <ul>
     <li>
       <a href="{@docRoot}google/play-services/setup.html">Setting up Google Play
-      Services</a>
+    Services</a>
     </li>
     <li>
       <a href="retrieve-current.html">Getting the Last Known Location</a>
@@ -64,16 +63,7 @@
   <a href="{@docRoot}reference/com/google/android/gms/location/FusedLocationProviderApi.html#requestLocationUpdates(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.location.LocationRequest, com.google.android.gms.location.LocationListener)">{@code requestLocationUpdates()}</a>
   method in the fused location provider.
 
-<h2 id="connect">Connect to Location Services</h2>
-
-<p>Location services for apps are provided through Google Play services and the
-  fused location provider. In order to use these services, you connect your app
-  using the Google API Client and then request location updates. For details on
-  connecting with the
-  <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.html">{@code GoogleApiClient}</a>,
-  follow the instructions in
-  <a href="retrieve-current.html">Getting the Last Known Location</a>, including
-  requesting the current location.</p>
+<h2 id="get-last-location">Get the Last Known Location</h2>
 
 <p>The last known location of the device provides a handy base from which to
   start, ensuring that the app has a known location before starting the
@@ -101,112 +91,13 @@
 &lt;/manifest&gt;
 </pre>
 
-<h2 id="location-request">Set Up a Location Request</h2>
-
-<p>To store parameters for requests to the fused location provider, create a
-  <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html">{@code LocationRequest}</a>.
-  The parameters determine the levels of accuracy requested. For details of all
-  the options available in the location request, see the
-  <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html">{@code LocationRequest}</a>
-  class reference. This lesson sets the update interval, fastest update
-  interval, and priority, as described below:</p>
-
-<dl>
-  <dt>
-    Update interval
-  </dt>
-  <dd>
-    <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#setInterval(long)">{@code setInterval()}</a>
-    - This method sets the rate in milliseconds at which your app prefers to
-    receive location updates. Note that the location updates may be faster than
-    this rate if another app is receiving updates at a faster rate, or slower
-    than this rate, or there may be no updates at all (if the device has no
-    connectivity, for example).
-  </dd>
-  <dt>
-    Fastest update interval
-  </dt>
-  <dd>
-    <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#setFastestInterval(long)">{@code setFastestInterval()}</a>
-    - This method sets the <strong>fastest</strong> rate in milliseconds at which
-    your app can handle location updates. You need to set this rate because
-    other apps also affect the rate at which updates are sent. The Google Play
-    services location APIs send out updates at the fastest rate that any app
-    has requested with
-    <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#setInterval(long)">{@code setInterval()}</a>.
-    If this rate is faster
-    than your app can handle, you may encounter problems with UI flicker or data
-    overflow. To prevent this, call
-    <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#setFastestInterval(long)">{@code setFastestInterval()}</a>
-    to set an upper limit to the update rate.
-  </dd>
-  <dt>Priority</dt>
-  <dd>
-    <p>
-      <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#setPriority(int)">{@code setPriority()}</a>
-      - This method sets the priority of the request, which gives the Google Play
-      services location services a strong hint about which location sources to use.
-      The following values are supported:</p>
-      <ul>
-        <li>
-          <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#PRIORITY_BALANCED_POWER_ACCURACY">{@code PRIORITY_BALANCED_POWER_ACCURACY}</a>
-          - Use this setting to request location precision to within a city
-          block, which is an accuracy of approximately 100 meters. This is
-          considered a coarse level of accuracy, and is likely to consume less
-          power. With this setting, the location services are likely to use WiFi
-          and cell tower positioning. Note, however, that the choice of location
-          provider depends on many other factors, such as which sources are
-          available.</li>
-        <li>
-          <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#PRIORITY_HIGH_ACCURACY">{@code PRIORITY_HIGH_ACCURACY}</a>
-          - Use this setting to request the most precise location possible. With
-          this setting, the location services are more likely to use GPS
-          (Global Positioning System) to determine the location.</li>
-        <li><a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#PRIORITY_LOW_POWER">{@code PRIORITY_LOW_POWER}</a>
-          - Use this setting to request city-level precision, which is
-          an accuracy of approximately 10 kilometers. This is considered a
-          coarse level of accuracy, and is likely to consume less power.</li>
-        <li><a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#PRIORITY_NO_POWER">{@code PRIORITY_NO_POWER}</a>
-          - Use this setting if you need negligible impact on power consumption,
-          but want to receive location updates when available. With this
-          setting, your app does not trigger any location updates, but
-          receives locations triggered by other apps.</li>
-      </ul>
-  </dd>
-</dl>
-
-<p>Create the location request and set the parameters as shown in this
-  code sample:</p>
-
-<pre>
-protected void createLocationRequest() {
-    LocationRequest mLocationRequest = new LocationRequest();
-    mLocationRequest.setInterval(10000);
-    mLocationRequest.setFastestInterval(5000);
-    mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
-}
-</pre>
-
-<p>The priority of
-  <a href="{@docRoot}reference/com/google/android/gms/location/LocationRequest.html#PRIORITY_HIGH_ACCURACY">{@code PRIORITY_HIGH_ACCURACY}</a>,
-  combined with the
-  {@link android.Manifest.permission#ACCESS_FINE_LOCATION ACCESS_FINE_LOCATION}
-  permission setting that you've defined in the app manifest, and a fast update
-  interval of 5000 milliseconds (5 seconds), causes the fused location
-  provider to return location updates that are accurate to within a few feet.
-  This approach is appropriate for mapping apps that display the location in
-  real time.</p>
-
-<p class="note"><strong>Performance hint:</strong> If your app accesses the
-  network or does other long-running work after receiving a location update,
-  adjust the fastest interval to a slower value. This adjustment prevents your
-  app from receiving updates it can't use. Once the long-running work is done,
-  set the fastest interval back to a fast value.</p>
-
 <h2 id="updates">Request Location Updates</h2>
 
-<p>Now that you've set up a location request containing your app's requirements
-  for the location updates, you can start the regular updates by calling
+<p>Before requesting location updates, your app must connect to location
+  services and make a location request. The lesson on
+  <a href="change-location-settings.html">Changing Location Settings</a>
+  shows you how to do this. Once a location request is in place you can start
+  the regular updates by calling
   <a href="{@docRoot}reference/com/google/android/gms/location/FusedLocationProviderApi.html#requestLocationUpdates(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.location.LocationRequest, com.google.android.gms.location.LocationListener)">{@code requestLocationUpdates()}</a>.
   Do this in the
   <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks.html#onConnected(android.os.Bundle)">{@code onConnected()}</a>
diff --git a/docs/html/training/location/retrieve-current.jd b/docs/html/training/location/retrieve-current.jd
index 5bac3fa..c49b666 100644
--- a/docs/html/training/location/retrieve-current.jd
+++ b/docs/html/training/location/retrieve-current.jd
@@ -71,13 +71,13 @@
   block.</p>
 
 <p>This lesson requires only coarse location. Request this permission with the
-  {@code uses-permission} element in your app manifest, as shown in the
-  following example:
+  {@code uses-permission} element in your app manifest, as the following code
+  snippet shows:
 
 <pre>
 &lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.google.android.gms.location.sample.basiclocationsample" &gt;
-  
+
   &lt;uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/&gt;
 &lt;/manifest&gt;
 </pre>
@@ -92,18 +92,15 @@
 </p>
 
 <p>In your activity's {@link android.app.Activity#onCreate onCreate()} method,
-  create an instance of Google API Client using
-  <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.Builder.html">{@code GoogleApiClient.Builder}</a>.
-  Use the builder to add the
-  <a href="{@docRoot}reference/com/google/android/gms/location/LocationServices.html">{@code LocationServices}</a>
-  API.</p>
-
-<p>The sample app defines a {@code buildGoogleApiClient()} method, called from
-  the activity's {@link android.app.Activity#onCreate onCreate()} method,
-  which includes the following code.</p>
+  create an instance of Google API Client, using the
+  <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.Builder.html">{@code GoogleApiClient.Builder}</a> class to add the
+  <a href="{@docRoot}reference/com/google/android/gms/location/LocationServices.html">
+  {@code LocationServices}</a>
+  API, as the following code snippet shows.</p>
 
 <pre>
-protected synchronized void buildGoogleApiClient() {
+// Create an instance of GoogleAPIClient.
+if (mGoogleApiClient == null) {
     mGoogleApiClient = new GoogleApiClient.Builder(this)
         .addConnectionCallbacks(this)
         .addOnConnectionFailedListener(this)
@@ -112,6 +109,31 @@
 }
 </pre>
 
+<p>To connect, call
+<a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient#connect()">
+  {@code connect()}</a>
+  from the activity's
+  <a href="{@docRoot}reference/android/app/Activity.html#onStart()">{@code onStart()}</a>
+  method. To disconnect, call
+  <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient#disconnect()">
+  {@code disconnect()}</a> from the activity's
+  <a href="{@docRoot}reference/android/app/Activity.html#onStop()">
+  {@code onStop()}</a> method. The following snippet shows an example of how
+  to use both of these methods.
+  </p>
+
+<pre>
+protected void onStart() {
+    mGoogleApiClient.connect();
+    super.onStart();
+}
+
+protected void onStop() {
+    mGoogleApiClient.disconnect();
+    super.onStop();
+}
+</pre>
+
 <h2 id="last-known">Get the Last Known Location</h2>
 
 <p>Once you have connected to Google Play services and the location services
@@ -130,7 +152,7 @@
   object. Do this in the
   <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks.html#onConnected(android.os.Bundle)">{@code onConnected()}</a>
   callback provided by Google API Client, which is called when the client is
-  ready. The following code sample illustrates the request and a simple
+  ready. The following code snippet illustrates the request and a simple
   handling of the response:</p>
 
 <pre>
@@ -158,5 +180,6 @@
   when the location is not available.</p>
 
 <p>The next lesson,
-  <a href="receive-location-updates.html">Receiving Location Updates</a>, shows
-  you how to receive periodic location updates.</p>
+  <a href="change-location-settings.html">Changing Location Settings</a>, shows
+  you how to detect the current location settings, and prompt the user to
+  change settings as appropriate for your app's requirements.</p>
diff --git a/docs/html/training/managing-audio/audio-focus.jd b/docs/html/training/managing-audio/audio-focus.jd
index 6dcaa7f..8d820db 100644
--- a/docs/html/training/managing-audio/audio-focus.jd
+++ b/docs/html/training/managing-audio/audio-focus.jd
@@ -11,7 +11,7 @@
 @jd:body
 
 
-<div id="tb-wrapper"> 
+<div id="tb-wrapper">
 <div id="tb">
 
 <h2>This lesson teaches you to</h2>
@@ -27,21 +27,21 @@
   <li><a href="{@docRoot}guide/topics/media/mediaplayer.html">Media Playback</a></li>
 </ul>
 
-</div> 
 </div>
- 
+</div>
+
 
 <p>With multiple apps potentially playing audio it's important to think about how they should
 interact. To avoid every music app playing at the same time, Android uses audio focus to moderate
 audio playback&mdash;only apps that hold the audio focus should play audio.</p>
 
-<p>Before your app starts playing audio it should request&mdash;and receive&mdash;the audio focus. 
+<p>Before your app starts playing audio it should request&mdash;and receive&mdash;the audio focus.
 Likewise, it should know how to listen for a loss of audio focus and respond appropriately when that
 happens.</p>
 
- 
-<h2 id="RequestFocus">Request the Audio Focus</h2> 
- 
+
+<h2 id="RequestFocus">Request the Audio Focus</h2>
+
 <p>Before your app starts playing any audio, it should hold the audio focus for the stream
 it will be using. This is done with a call to {@link android.media.AudioManager#requestAudioFocus
 requestAudioFocus()} which returns
@@ -55,7 +55,7 @@
 <p>The following snippet requests permanent audio focus on the music audio stream. You should
 request the audio focus immediately before you begin playback, such as when the user presses
 play or the background music for the next game level begins.</p>
-  
+
 <pre>
 AudioManager am = mContext.getSystemService(Context.AUDIO_SERVICE);
 ...
@@ -66,7 +66,7 @@
                                  AudioManager.STREAM_MUSIC,
                                  // Request permanent focus.
                                  AudioManager.AUDIOFOCUS_GAIN);
-   
+
 if (result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
     am.registerMediaButtonEventReceiver(RemoteControlReceiver);
     // Start playback.
@@ -80,7 +80,7 @@
 this allows any interupted app to continue playback.</p>
 
 <pre>
-// Abandon audio focus when playback complete    
+// Abandon audio focus when playback complete
 am.abandonAudioFocus(afChangeListener);
 </pre>
 
@@ -97,7 +97,7 @@
                              AudioManager.STREAM_MUSIC,
                              // Request permanent focus.
                              AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK);
-   
+
 if (result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
     // Start playback.
 }
@@ -111,7 +111,7 @@
 registered when requesting focus.</p>
 
 
-<h2 id="HandleFocusLoss">Handle the Loss of Audio Focus</h2> 
+<h2 id="HandleFocusLoss">Handle the Loss of Audio Focus</h2>
 
 <p>If your app can request audio focus, it follows that it will in turn lose that focus when another
 app requests it. How your app responds to a loss of audio focus depends on the manner of that
@@ -139,26 +139,27 @@
 unregisters our media button event receiver and stops monitoring audio focus changes.<p>
 
 <pre>
-OnAudioFocusChangeListener afChangeListener = new OnAudioFocusChangeListener() {
-    public void onAudioFocusChange(int focusChange) {
-        if (focusChange == AUDIOFOCUS_LOSS_TRANSIENT
-            // Pause playback
-        } else if (focusChange == AudioManager.AUDIOFOCUS_GAIN) {
-            // Resume playback 
-        } else if (focusChange == AudioManager.AUDIOFOCUS_LOSS) {
-            am.unregisterMediaButtonEventReceiver(RemoteControlReceiver);
-            am.abandonAudioFocus(afChangeListener);
-            // Stop playback
+AudioManager.OnAudioFocusChangeListener afChangeListener =
+    new AudioManager.OnAudioFocusChangeListener() {
+        public void onAudioFocusChange(int focusChange) {
+            if (focusChange == AUDIOFOCUS_LOSS_TRANSIENT) {
+                // Pause playback
+            } else if (focusChange == AudioManager.AUDIOFOCUS_GAIN) {
+                // Resume playback
+            } else if (focusChange == AudioManager.AUDIOFOCUS_LOSS) {
+                am.unregisterMediaButtonEventReceiver(RemoteControlReceiver);
+                am.abandonAudioFocus(afChangeListener);
+                // Stop playback
+            }
         }
-    }
-};
+    };
 </pre>
- 
+
 <p>In the case of a transient loss of audio focus where ducking is permitted, rather than pausing
 playback, you can "duck" instead.</p>
 
 
-<h2 id="DUCK">Duck!</h2> 
+<h2 id="DUCK">Duck!</h2>
 
 <p>Ducking is the process of lowering your audio stream output volume to make transient audio from
 another app easier to hear without totally disrupting the audio from your own application.</p>
diff --git a/docs/html/training/material/animations.jd b/docs/html/training/material/animations.jd
index 6f263db..9c78545 100644
--- a/docs/html/training/material/animations.jd
+++ b/docs/html/training/material/animations.jd
@@ -85,7 +85,7 @@
 int cy = myView.getHeight() / 2;
 
 // get the final radius for the clipping circle
-int finalRadius = Math.max(myView.getWidth(), myView.getHeight());
+float finalRadius = (float) Math.hypot(cx, cy);
 
 // create the animator for this view (the start radius is zero)
 Animator anim =
@@ -107,7 +107,7 @@
 int cy = myView.getHeight() / 2;
 
 // get the initial radius for the clipping circle
-int initialRadius = myView.getWidth();
+float initialRadius = (float) Math.hypot(cx, cy);
 
 // create the animation (the final radius is zero)
 Animator anim =
@@ -194,16 +194,16 @@
   <strong>Figure 2</strong> - A scene transition with one shared element.
 </p>
 
-<h3>Specify custom transitions</h3>
+<h3 id="custom-trans">Specify custom transitions</h3>
 
-<p>First, enable window content transitions with the <code>android:windowContentTransitions</code>
+<p>First, enable window content transitions with the <code>android:windowActivityTransitions</code>
 attribute when you define a style that inherits from the material theme. You can also specify
 enter, exit, and shared element transitions in your style definition:</p>
 
 <pre>
 &lt;style name="BaseAppTheme" parent="android:Theme.Material">
   &lt;!-- enable window content transitions -->
-  &lt;item name="android:windowContentTransitions">true&lt;/item>
+  &lt;item name="android:windowActivityTransitions">true&lt;/item>
 
   &lt;!-- specify enter and exit transitions -->
   &lt;item name="android:windowEnterTransition">@transition/explode&lt;/item>
diff --git a/docs/html/training/material/drawables.jd b/docs/html/training/material/drawables.jd
index c58075e..eb9d273 100644
--- a/docs/html/training/material/drawables.jd
+++ b/docs/html/training/material/drawables.jd
@@ -14,6 +14,8 @@
 <ul>
   <li><a href="http://www.google.com/design/spec">Material design specification</a></li>
   <li><a href="{@docRoot}design/material/index.html">Material design on Android</a></li>
+  <li><a href="{@docRoot}tools/help/vector-asset-studio.html">Vector Asset Studio</a></li>
+  <li><a href="{@docRoot}tools/help/image-asset-studio.html">Image Asset Studio</a></li>
 </ul>
 </div>
 </div>
diff --git a/docs/html/training/material/index.jd b/docs/html/training/material/index.jd
index 6e07860..4001e6b 100644
--- a/docs/html/training/material/index.jd
+++ b/docs/html/training/material/index.jd
@@ -59,3 +59,22 @@
   <dt><a href="{@docRoot}training/material/compatibility.html">Maintaining Compatibility</a></dt>
   <dd>Learn how to maintain compatibility with platform versions earlier than Android 5.0.</dd>
 </dl>
+
+<h2>Video Training</h2>
+
+<div class="wrap">
+  <div class="cols">
+    <div class="col-1of2">
+      <p>If you prefer to learn through interactive video training, check out this online course
+      about material design for Android developers.</p>
+      <p><a href="https://www.udacity.com/course/ud862" class="button">
+        Start the video course</a>
+      </p>
+    </div>
+    <div class="col-1of2">
+      <iframe width="300" height="169"
+      src="//www.youtube.com/embed/eKJ3aMGM-WM?autohide=1&amp;showinfo=0"
+      frameborder="0" allowfullscreen="" style="float: right; margin: 0 0 20px 20px;"></iframe>
+    </div>
+  </div>
+</div>
diff --git a/docs/html/training/monitoring-device-state/battery-monitoring.jd b/docs/html/training/monitoring-device-state/battery-monitoring.jd
index a202566..db75aaf 100644
--- a/docs/html/training/monitoring-device-state/battery-monitoring.jd
+++ b/docs/html/training/monitoring-device-state/battery-monitoring.jd
@@ -3,12 +3,14 @@
 parent.link=index.html
 
 trainingnavtop=true
-next.title=Determining and Monitoring the Docking State and Type
-next.link=docking-monitoring.html
-
+parent.link=index.html
+previous.title=Optimizing for Doze and App Standby
+previous.link=doze-standby.html
+next.title= Determining and Monitoring the Connectivity Status
+next.link=connectivity-monitoring.html
 @jd:body
- 
-<div id="tb-wrapper"> 
+
+<div id="tb-wrapper">
 <div id="tb">
 
 <h2>This lesson teaches you to</h2>
@@ -24,9 +26,9 @@
   <li><a href="{@docRoot}guide/components/intents-filters.html">Intents and Intent Filters</a>
 </ul>
 
-</div> 
 </div>
- 
+</div>
+
 <p>When you're altering the frequency of your background updates to reduce the effect of those
 updates on battery life, checking the current battery level and charging state is a good place to
 start.</p>
@@ -41,8 +43,8 @@
 even stopping&mdash;your updates when the battery charge is nearly exhausted.</p>
 
 
-<h2 id="DetermineChargeState">Determine the Current Charging State</h2> 
- 
+<h2 id="DetermineChargeState">Determine the Current Charging State</h2>
+
 <p>Start by determining the current charge status. The {@link android.os.BatteryManager}
 broadcasts all battery and charging details in a sticky {@link android.content.Intent} that includes
 the charging status.</p>
@@ -74,13 +76,13 @@
 further if the battery is discharging.</p>
 
 
-<h2 id="MonitorChargeState">Monitor Changes in Charging State</h2> 
+<h2 id="MonitorChargeState">Monitor Changes in Charging State</h2>
 
 <p>The charging status can change as easily as a device can be plugged in, so it's important to
 monitor the charging state for changes and alter your refresh rate accordingly.</p>
 
 <p>The {@link android.os.BatteryManager} broadcasts an action whenever the device is connected or
-disconnected from power. It's important to to receive these events even while your app isn't
+disconnected from power. It's important to receive these events even while your app isn't
 running&mdash;particularly as these events should impact how often you start your app in order to
 initiate a background update&mdash;so you should register a {@link
 android.content.BroadcastReceiver} in your manifest to listen for both events by defining the
@@ -99,11 +101,11 @@
 
 <pre>public class PowerConnectionReceiver extends BroadcastReceiver {
     &#64;Override
-    public void onReceive(Context context, Intent intent) { 
+    public void onReceive(Context context, Intent intent) {
         int status = intent.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
         boolean isCharging = status == BatteryManager.BATTERY_STATUS_CHARGING ||
                             status == BatteryManager.BATTERY_STATUS_FULL;
-    
+
         int chargePlug = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
         boolean usbCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_USB;
         boolean acCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_AC;
@@ -111,7 +113,7 @@
 }</pre>
 
 
-<h2 id="CurrentLevel">Determine the Current Battery Level</h2> 
+<h2 id="CurrentLevel">Determine the Current Battery Level</h2>
 
 <p>In some cases it's also useful to determine the current battery level. You may choose to reduce
 the rate of your background updates if the battery charge is below a certain level.</p>
@@ -125,7 +127,7 @@
 float batteryPct = level / (float)scale;</pre>
 
 
-<h2 id="MonitorLevel">Monitor Significant Changes in Battery Level</h2> 
+<h2 id="MonitorLevel">Monitor Significant Changes in Battery Level</h2>
 
 <p>You can't easily continually monitor the battery state, but you don't need to.</p>
 
@@ -154,3 +156,6 @@
 lesson shows you how to determine the current dock state and monitor for changes in device
 docking.</p>
 
+
+
+
diff --git a/docs/html/training/monitoring-device-state/connectivity-monitoring.jd b/docs/html/training/monitoring-device-state/connectivity-monitoring.jd
index fb5096d..d5e7a85 100644
--- a/docs/html/training/monitoring-device-state/connectivity-monitoring.jd
+++ b/docs/html/training/monitoring-device-state/connectivity-monitoring.jd
@@ -87,5 +87,5 @@
 It's generally sufficient to simply check for Internet connectivity before beginning an update and,
 should there be none, suspend further updates until connectivity is restored.</p>
 
-<p>This technique requires toggling broadcast receivers you've declard in the manifest, which is
+<p>This technique requires toggling broadcast receivers you've declared in the manifest, which is
 described in the next lesson.</p>
diff --git a/docs/html/training/monitoring-device-state/docking-monitoring.jd b/docs/html/training/monitoring-device-state/docking-monitoring.jd
index 5c8bfd6..0994b63 100644
--- a/docs/html/training/monitoring-device-state/docking-monitoring.jd
+++ b/docs/html/training/monitoring-device-state/docking-monitoring.jd
@@ -3,14 +3,14 @@
 parent.link=index.html
 
 trainingnavtop=true
-previous.title= Monitoring the Battery Level and Charging State
-previous.link=battery-monitoring.html
+next.title=Optimizing for Power-Saving
+next.link=battery-optimization.html
 next.title= Determining and Monitoring the Connectivity Status
 next.link=connectivity-monitoring.html
 
 @jd:body
 
-<div id="tb-wrapper"> 
+<div id="tb-wrapper">
 <div id="tb">
 
 <h2>This lesson teaches you to</h2>
@@ -26,7 +26,7 @@
   <li><a href="{@docRoot}guide/components/intents-filters.html">Intents and Intent Filters</a>
 </ul>
 
-</div> 
+</div>
 </div>
 
 <p>Android devices can be docked into several different kinds of docks. These include car or home
@@ -42,8 +42,8 @@
 query if the device is docked or not, and if so, in which kind of dock.</p>
 
 
-<h2 id="CurrentDockState">Determine the Current Docking State</h2> 
- 
+<h2 id="CurrentDockState">Determine the Current Docking State</h2>
+
 <p>The dock-state details are included as an extra in a sticky broadcast of the {@link
 android.content.Intent#ACTION_DOCK_EVENT} action. Because it's sticky, you don't need to register a
 {@link android.content.BroadcastReceiver}. You can simply call {@link
@@ -59,9 +59,9 @@
 boolean isDocked = dockState != Intent.EXTRA_DOCK_STATE_UNDOCKED;</pre>
 
 
-<h2 id="DockType">Determine the Current Dock Type</h2> 
+<h2 id="DockType">Determine the Current Dock Type</h2>
 
-<p>If a device is docked, it can be docked in any one of four different type of dock: 
+<p>If a device is docked, it can be docked in any one of four different type of dock:
 <ul><li>Car</li>
 <li>Desk</li>
 <li>Low-End (Analog) Desk</li>
@@ -72,12 +72,12 @@
 being digital or analog specifically:</p>
 
 <pre>boolean isCar = dockState == EXTRA_DOCK_STATE_CAR;
-boolean isDesk = dockState == EXTRA_DOCK_STATE_DESK || 
+boolean isDesk = dockState == EXTRA_DOCK_STATE_DESK ||
                  dockState == EXTRA_DOCK_STATE_LE_DESK ||
                  dockState == EXTRA_DOCK_STATE_HE_DESK;</pre>
 
 
-<h2 id="MonitorDockState">Monitor for Changes in the Dock State or Type</h2> 
+<h2 id="MonitorDockState">Monitor for Changes in the Dock State or Type</h2>
 
 <p>Whenever the device is docked or undocked, the {@link
 android.content.Intent#ACTION_DOCK_EVENT} action is broadcast. To monitor changes in the
diff --git a/docs/html/training/monitoring-device-state/doze-standby.jd b/docs/html/training/monitoring-device-state/doze-standby.jd
new file mode 100644
index 0000000..11e81c1
--- /dev/null
+++ b/docs/html/training/monitoring-device-state/doze-standby.jd
@@ -0,0 +1,493 @@
+page.title=Optimizing for Doze and App Standby
+page.metaDescription=Test and optimize your app for the power-saving features in Android 6.0.
+page.tags=doze, app standby, marshmallow, alarms
+meta.tags="battery", "marshmallow", "alarms"
+page.image=images/cards/card-doze_16-9_2x.png
+
+
+parent.link=index.html
+
+trainingnavtop=true
+next.title=Monitoring the Battery Level and Charging State
+next.link=battery-monitoring.html
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+    <h2>In this document</h2>
+    <ol>
+      <li><a href="#understand_doze">Understanding Doze</a>
+      <ol>
+        <li><a href="#restrictions">Doze restrictions</a></li>
+        <li><a href="#assessing_your_app">Adapting your app to Doze</a></li>
+      </ol>
+      </li>
+      <li><a href="#understand_app_standby">Understanding App Standby</a></li>
+      <li><a href="#using_gcm">Using GCM to Interact with Your App</a></li>
+      <li><a href="#support_for_other_use_cases">Support for Other Use Cases</a></li>
+      <li><a href="#testing_doze_and_app_standby">Testing with Doze and App
+Standby</a>
+      <ol>
+        <li><a href="#testing_doze">Testing your app with Doze</a></li>
+        <li><a href="#testing_your_app_with_app_standby">Testing your app with App Standby</a></li>
+      </ol>
+      </li>
+      <li><a href="#whitelisting-cases">Acceptable Use Cases for Whitelisting</a></li>
+    </ol>
+  </div>
+</div>
+
+<p>
+  Starting from Android 6.0 (API level 23), Android introduces two
+  power-saving features that extend battery life for users by managing how apps behave when a
+  device is not connected to a power source. <em>Doze</em> reduces battery consumption by deferring
+  background CPU and network activity for apps when the device is unused for long periods
+  of time. <em>App Standby</em> defers background network activity for apps
+  with which the user has not recently interacted.
+</p>
+
+<p>
+  Doze and App Standby manage the behavior of all apps running on Android 6.0
+  or higher, regardless whether they are specifically targeting API level 23.
+  To ensure the best experience for users, test your app in Doze and App
+  Standby modes and make any necessary adjustments to your code. The sections
+  below provide details.
+</p>
+
+
+<h2 id="understand_doze">Understanding Doze</h2>
+<p>
+  If a user leaves a device unplugged and stationary for a period of time, with
+  the screen off, the device enters Doze mode. In Doze mode, the system
+  attempts to conserve battery by restricting apps' access to network and
+  CPU-intensive services. It also prevents apps from accessing the network and
+  defers their jobs, syncs, and standard alarms.
+</p>
+
+<p>
+  Periodically, the system exits Doze for a brief time to let apps complete
+  their deferred activities. During this <em>maintenance window</em>, the
+  system runs all pending syncs, jobs, and alarms, and lets apps access the
+  network.
+</p>
+
+<div style="margin:1em 0em;">
+  <img src="{@docRoot}images/training/doze.png">
+  <p class="img-caption" style="text-align:center;">
+    <strong>Figure 1.</strong> Doze provides a recurring maintenance window for apps to use the
+    network and handle pending activities.
+  </p>
+</div>
+
+<p>
+  At the conclusion of each maintenance window, the system again enters Doze,
+  suspending network access and deferring jobs, syncs, and alarms. Over time,
+  the system schedules maintenance windows less and less frequently, helping to
+  reduce battery consumption in cases of longer-term inactivity when the device is not
+  connected to a charger.
+</p>
+
+
+<p>
+  As soon as the user wakes the device by moving it, turning on the screen, or
+  connecting a charger, the system exits Doze and all apps return to normal
+  activity.
+</p>
+
+
+<h3 id="restrictions">Doze restrictions</h3>
+
+<p>
+  The following restrictions apply to your apps while in Doze:
+</p>
+
+<ul>
+  <li>Network access is suspended.
+  </li>
+
+  <li>The system ignores <a href="{@docRoot}reference/android/os/PowerManager.WakeLock.html">
+  wake locks</a>.
+  </li>
+
+  <li>Standard {@link android.app.AlarmManager} alarms (including {@link
+  android.app.AlarmManager#setExact(int, long, android.app.PendingIntent) setExact()} and
+  {@link android.app.AlarmManager#setWindow(int, long, long,
+  android.app.PendingIntent) setWindow()}) are deferred to the next maintenance window.
+  </li>
+
+  <li style="list-style: none; display: inline">
+    <ul>
+      <li>If you need to set alarms that fire while in Doze, use {@link
+      android.app.AlarmManager#setAndAllowWhileIdle(int,long,android.app.PendingIntent)
+      setAndAllowWhileIdle()}
+      or {@link android.app.AlarmManager#setExactAndAllowWhileIdle(int, long,
+      android.app.PendingIntent) setExactAndAllowWhileIdle()}.
+      </li>
+
+      <li>Alarms set with {@link
+      android.app.AlarmManager#setAlarmClock(android.app.AlarmManager.AlarmClockInfo,
+      android.app.PendingIntent) setAlarmClock()} continue to fire normally &mdash; the system
+      exits Doze shortly before those alarms fire.
+      </li>
+    </ul>
+  </li>
+
+  <li>The system does not perform Wi-Fi scans.
+  </li>
+
+  <li>The system does not allow
+  <a href="{@docRoot}reference/android/content/AbstractThreadedSyncAdapter.html">sync adapters</a>
+  to run.
+  </li>
+
+  <li>The system does not allow {@link android.app.job.JobScheduler} to run.
+  </li>
+</ul>
+
+
+<div id="qv-wrapper">
+<div id="qv" style="width:300px">
+<h2>Doze checklist</h2>
+<ol>
+<ul>
+  <li>If possible, use GCM for <a href=
+  "https://developers.google.com/cloud-messaging/downstream">downstream
+  messaging</a>.
+  </li>
+
+  <li>If your users must see a notification right away, make sure to use a <a href=
+  "https://developers.google.com/cloud-messaging/concept-options#setting-the-priority-of-a-message">GCM
+  high priority message</a>.
+  </li>
+
+  <li>Provide sufficient information within the initial <a href=
+  "https://developers.google.com/cloud-messaging/concept-options#payload">message
+  payload</a>, so subsequent network access is unnecessary.
+  </li>
+
+  <li>Set critical alarms with {@link
+  android.app.AlarmManager#setAndAllowWhileIdle(int, long,
+  android.app.PendingIntent) setAndAllowWhileIdle()} and {@link
+  android.app.AlarmManager#setExactAndAllowWhileIdle(int, long,
+  android.app.PendingIntent) setExactAndAllowWhileIdle()}.
+  </li>
+
+  <li>
+    <a href="#testing_doze">Test your app in Doze.</a>
+  </li>
+</ul>
+</ol>
+</div>
+</div>
+
+<h3 id="assessing_your_app">Adapting your app to Doze</h3>
+
+<p>
+  Doze can affect apps differently, depending on the capabilities they offer
+  and the services they use. Many apps function normally across Doze
+  cycles without modification. In some cases, you must optimize the way
+  that your app manages network, alarms, jobs, and syncs. Apps should be able
+  to efficiently manage activities during each maintenance window.
+</p>
+<p>
+  Doze is particularly likely to affect activities that {@link android.app.AlarmManager} alarms and
+  timers manage, because alarms in Android 5.1 (API level 22) or lower do not fire when the system
+  is in Doze.
+</p>
+
+<p>
+  To help with scheduling alarms, Android 6.0 (API level 23) introduces two new
+  {@link android.app.AlarmManager} methods: {@link
+  android.app.AlarmManager#setAndAllowWhileIdle(int, long,
+  android.app.PendingIntent) setAndAllowWhileIdle()} and {@link
+  android.app.AlarmManager#setExactAndAllowWhileIdle(int, long,
+  android.app.PendingIntent) setExactAndAllowWhileIdle()}. With these methods,
+  you can set alarms that will fire even if the device is in Doze.
+</p>
+
+<p class="note"><strong>Note:</strong> Neither
+{@link
+  android.app.AlarmManager#setAndAllowWhileIdle(int, long,
+  android.app.PendingIntent) setAndAllowWhileIdle()} nor {@link
+  android.app.AlarmManager#setExactAndAllowWhileIdle(int, long,
+  android.app.PendingIntent) setExactAndAllowWhileIdle()} can fire alarms more than once per 15
+minutes per app.</p>
+
+<p>
+  The Doze restriction on network access is also likely to affect your app,
+  especially if the app relies on real-time messages such as tickles or
+  notifications. If your app requires a persistent connection to the network to
+  receive messages, you should use <a href="#using_gcm">Google Cloud Messaging (GCM)</a>
+  if possible.
+</p>
+
+<p>
+  To confirm that your app behaves as expected with Doze, you can use adb commands to force the
+  system to enter and exit Doze and observe your app’s behavior. For details, see
+  <a href="#testing_doze_and_app_standby">Testing with Doze and App Standby</a>.
+</p>
+
+<h2 id="understand_app_standby">Understanding App Standby</h2>
+
+<p>
+  App Standby allows the system to determine that an app is idle when the user
+  is not actively using it. The system makes this determination when the user
+  does not touch the app for a certain period of time and none of the following
+  conditions applies:
+</p>
+
+<ul>
+  <li>The user explicitly launches the app.
+  </li>
+
+  <li>The app has a process currently in the foreground (either as an activity
+  or foreground service, or in use by another activity or foreground service).
+  </li>
+
+  <li>The app generates a notification that users see on the lock screen or in
+  the notification tray.
+  </li>
+</ul>
+
+<p>
+  When the user plugs the device into a power supply, the system releases apps
+  from the standby state, allowing them to freely access the network and to
+  execute any pending jobs and syncs. If the device is idle for long periods of
+  time, the system allows idle apps network access around once a day.
+</p>
+
+<h2 id="using_gcm">Using GCM to Interact with Your App While the Device is Idle</h2>
+
+<p>
+  <a href="https://developers.google.com/cloud-messaging/">Google Cloud
+  Messaging (GCM)</a> is a cloud-to-device service that lets you support
+  real-time downstream messaging between backend services and apps on
+  Android devices. GCM provides a single, persistent connection to the cloud; all apps needing
+  real-time messaging can share this connection. This shared
+  connection significantly optimizes battery consumption by making it unnecessary for
+  multiple apps to maintain their own, separate persistent connections, which can
+  deplete the battery rapidly. For this reason, if your app requires messaging integration with a
+  backend service, we strongly recommend that you <strong>use GCM if possible</strong>, rather than
+  maintaining your own persistent network connection.
+</p>
+
+<p>
+  GCM is optimized to work with Doze and App Standby idle modes by means of
+  <a href="https://developers.google.com/cloud-messaging/concept-options#setting-the-priority-of-a-message">
+  high-priority GCM messages</a>. GCM high-priority messages let you reliably wake your app to
+  access the network, even if the user’s device is in Doze or the app is in App Standby mode.
+  In Doze or App Standby mode, the system delivers the message and gives the
+  app temporary access to network services and partial wakelocks, then returns the device or app
+  to idle state.
+</p>
+
+<p>
+  High-priority GCM messages do not otherwise affect Doze mode, and they don’t
+  affect the state of any other app. This means that your app can use them to communicate
+  efficiently while minimizing battery impacts across the system and device.
+</p>
+
+<p>
+  As a general best practice, if your app requires downstream messaging, it
+  should use GCM. If your server and client already uses GCM, make sure that your service uses
+  high-priority messages for critical messages, since this will reliably
+  wake apps even when the device is in Doze.
+</p>
+
+<h2 id="support_for_other_use_cases">Support for Other Use Cases</h2>
+
+<p>
+  Almost all apps should be able to support Doze by managing network connectivity, alarms,
+  jobs, and syncs properly, and using GCM high-priority messages. For a narrow
+  set of use cases, this might not be sufficient. For such cases, the system
+  provides a configurable whitelist of apps that are <strong>partially
+  exempt</strong> from Doze and App Standby optimizations.
+</p>
+
+<p>
+  An app that is whitelisted can use the network and hold
+
+  <a href="{@docRoot}reference/android/os/PowerManager.html#PARTIAL_WAKE_LOCK">
+  partial wake locks</a> during Doze and
+  App Standby. However, <strong>other restrictions still apply</strong> to the
+  whitelisted app, just as they do to other apps. For example, the whitelisted
+  app’s jobs and syncs are deferred, and its regular {@link android.app.AlarmManager} alarms do not
+  fire. An app can check whether it is currently on the exemption whitelist by
+  calling {@link
+  android.os.PowerManager#isIgnoringBatteryOptimizations(java.lang.String)
+  isIgnoringBatteryOptimizations()}.
+  </li>
+</p>
+
+<p>
+  Users can manually configure the whitelist in <strong>Settings &gt; Battery
+  &gt; Battery Optimization.</strong> Alternatively, the system provides
+  ways for apps to ask users to whitelist them.
+
+</p>
+
+<ul>
+  <li>An app can fire the {@link
+  android.provider.Settings#ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS} intent
+  to take the user directly to the <strong>Battery Optimization</strong>, where they can
+  add the app.
+  </li>
+
+  <li>An app holding the {@link
+  android.Manifest.permission#REQUEST_IGNORE_BATTERY_OPTIMIZATIONS} permission
+  can trigger a system dialog to let the user add the app to the whitelist
+  directly, without going to settings. The app fires a {@link
+  android.provider.Settings#ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS} Intent
+  to trigger the dialog.
+  </li>
+
+  <li>The user can manually remove apps from the whitelist as needed.
+  </li>
+</ul>
+
+<p>Before asking the user to add your app to the whitelist, make sure the app
+
+matches the <a href="#whitelisting-cases">acceptable use cases</a> for whitelisting.</p>
+
+
+<p class="caution">
+  <strong>Note:</strong> Google Play policies prohibit apps from requesting
+  direct exemption from Power Management features in Android 6.0+ (Doze and App
+  Standby) unless the core function of the app is adversely affected.
+</p>
+
+<h2 id="testing_doze_and_app_standby">Testing with Doze and App Standby</h2>
+
+<p>
+  To ensure a great experience for your users, you should test your app fully
+  in Doze and App Standby.
+</p>
+
+<h3 id="testing_doze">Testing your app with Doze</h4>
+
+<p>You can test Doze mode by following these steps:</p>
+<ol>
+  <li>Configure a hardware device or virtual device with an Android 6.0 (API
+  level 23) or higher system image.
+  </li>
+
+  <li>Connect the device to your development machine and install your app.
+  </li>
+
+  <li>Run your app and leave it active.
+  </li>
+
+  <li>Shut off the device screen. (The app remains active.)
+  </li>
+
+  <li>Force the system to cycle through Doze modes by running the following
+  commands:
+
+  <pre class="no-pretty-print">
+$ adb shell dumpsys battery unplug
+$ adb shell dumpsys deviceidle step</pre>
+
+  <p>You may need to run the second command more than once. Repeat it until
+  the device state changes to idle.</p>
+  </li>
+
+  <li> Observe the behavior of your app after you reactivate the device. Make
+  sure the app recovers gracefully when the device exits Doze.
+  </li>
+</ol>
+
+<h3 id="testing_your_app_with_app_standby">Testing your app with App Standby</h4>
+
+<p>To test the App Standby mode with your app:</p>
+
+<ol>
+  <li> Configure a hardware device or virtual device with an Android 6.0 (API level
+  23) or higher system image.
+  </li>
+  <li> Connect the device to your development machine and install your app.</li>
+  <li> Run your app and leave it active.</li>
+  <li> Force the app into App Standby mode by running the following commands:
+
+  <pre class="no-pretty-print">$ adb shell dumpsys battery unplug
+$ adb shell am set-inactive &lt;packageName&gt; true</pre>
+  <li>Simulate waking your app using the following commands:
+
+  <pre class="no-pretty-print">$ adb shell am set-inactive &lt;packageName&gt; false
+$ adb shell am get-inactive &lt;packageName&gt;</pre>
+  </li>
+  <li>Observe the behavior of your app after waking it. Make sure the app recovers gracefully
+    from standby mode. In particular, you should check if your app's Notifications and background
+    jobs continue to function as expected.
+  </li>
+</ol>
+
+
+<h2 id="whitelisting-cases">Acceptable Use Cases for Whitelisting</h2>
+
+<p>The table below highlights the acceptable use cases for requesting or being on
+   the Battery Optimizations exceptions whitelist. In general, your app should not be on the
+   whitelist unless Doze or App Standby break the core function of the app or there is a
+   technical reason why your app cannot use GCM high-priority messages.</p>
+
+   <p>For more information, see <a href="#support_for_other_use_cases">Support for Other Use Cases
+   </a>.</p>
+
+<table>
+ <tr>
+    <th>Type</td>
+    <th>Use-case</td>
+    <th>Can use GCM?</td>
+    <th>Whitelisting acceptable?</td>
+    <th>Notes</td>
+ </tr>
+
+ <tr>
+    <td rowspan="2">Instant messaging, chat, or calling app. </td>
+    <td rowspan="3">Requires delivery of real-time messages to users while device is in Doze or app
+    is in App Standby.</td>
+    <td>Yes, using GCM</td>
+    <td rowspan="2" style="color:red">Not Acceptable</td>
+    <td rowspan="2">Should use GCM high-priority messages to wake the app and access the network.</td>
+ </tr>
+
+ <tr>
+    <td>Yes, but is not using GCM high-priority messages.</td>
+ </tr>
+
+ <tr>
+    <td rowspan="1">Instant messaging, chat, or calling app;
+    enterprise VOIP apps.</td>
+    <td>No, can not use GCM because of technical dependency on another messaging
+    service or Doze and App Standby break the core function of the app.</td>
+    <td style="color:green">Acceptable</td>
+    <td></td>
+ </tr>
+
+  <tr>
+    <td rowspan="1">Task automation app</td>
+    <td>App's core function is scheduling automated actions, such as for instant
+    messaging, voice calling, new photo management, or location actions.</td>
+    <td>If applicable.</td>
+    <td style="color:green">Acceptable</td>
+    <td></td>
+ </tr>
+
+  <tr>
+    <td rowspan="2">Peripheral device companion app</td>
+    <td>App's core function is maintaining a persistent connection with the peripheral
+    device for the purpose of providing the peripheral device internet access.</td>
+    <td >If applicable.</td>
+    <td style="color:green">Acceptable</td>
+    <td rowspan="2"></td>
+  </tr>
+
+  <tr>
+    <td>App only needs to connect to a peripheral device periodically to sync, or only
+    needs to connect to devices, such as wireless headphones, connected via standard
+    Bluetooth profiles.</td>
+    <td >If applicable.</td>
+    <td style="color:red">Not Acceptable</td>
+  </tr>
+</table>
+
+
diff --git a/docs/html/training/monitoring-device-state/index.jd b/docs/html/training/monitoring-device-state/index.jd
index 949c1da..1e1ce20 100644
--- a/docs/html/training/monitoring-device-state/index.jd
+++ b/docs/html/training/monitoring-device-state/index.jd
@@ -1,17 +1,19 @@
 page.title=Optimizing Battery Life
-page.tags=network,internet
+page.tags=battery,network,internet
+page.metaDescription=Learn how to optimize your app to reduce battery drain and use power-hungry resources efficiently.
+
+page.article=true
 
 trainingnavtop=true
 startpage=true
 
 @jd:body
 
-<div id="tb-wrapper"> 
+<div id="tb-wrapper">
 <div id="tb">
 
-<h2>Dependencies and prerequisites</h2> 
+<h2>Dependencies and prerequisites</h2>
 <ul>
-  <li>Android 2.0 (API level 5) or higher</li>
   <li>Experience with <a href="{@docRoot}guide/components/intents-filters.html">Intents and Intent Filters</a></li>
 </ul>
 
@@ -20,24 +22,34 @@
   <li><a href="{@docRoot}guide/components/services.html">Services</a>
 </ul>
 
-</div> 
+</div>
 </div>
 
 <p>For your app to be a good citizen, it should seek to limit its impact on the battery life of its
-host device. After this class you will be able to build apps that monitor modify their functionality
-and behavior based on the state of the host device.</p>
+device. After this class you will be able to build apps that modify their functionality
+and behavior based on the state of its device.</p>
 
-<p>By taking steps such as disabling background service updates when you lose connectivity, or
-reducing the rate of such updates when the battery level is low, you can ensure that the impact of
-your app on battery life is minimized, without compromising the user experience.</p>
+<p>By taking steps such as batching network requests, disabling background service updates when you
+lose connectivity, or reducing the rate of such updates when the battery level is low, you can
+ensure that the impact of your app on battery life is minimized, without compromising the user
+experience.</p>
 
-<h2>Lessons</h2> 
- 
+<h2>Lessons</h2>
+
 <!-- Create a list of the lessons in this class along with a short description of each lesson.
 These should be short and to the point. It should be clear from reading the summary whether someone
-will want to jump to a lesson or not.--> 
- 
+will want to jump to a lesson or not.-->
+
 <dl>
+  <dt><b><a href="{@docRoot}training/performance/battery/network/index.html">Reducing Network Battery
+Drain</a></b></dt>
+  <dd>Learn how to analyze your app's use of network resources and optimize it to reduce
+power consumption.</dd>
+
+  <dt><b><a href="doze-standby.html">Optimizing for Doze and App Standby</a></b></dt>
+  <dd>Learn how to test and optimize your app for the power-management features introduced in
+  Android 6.0 Marshmallow.</dd>
+
   <dt><b><a href="battery-monitoring.html">Monitoring the Battery Level and Charging State</a></b></dt>
   <dd>Learn how to alter your app's update rate by determining, and monitoring, the current battery
 level and changes in charging state.</dd>
@@ -50,7 +62,7 @@
 
   <dt><b><a href="connectivity-monitoring.html">Determining and Monitoring the Connectivity
 Status</a></b></dt>
-  <dd>Without Internet connectivity you can't update your app from an online source. Learn how to  
+  <dd>Without Internet connectivity you can't update your app from an online source. Learn how to
 check the connectivity status to alter your background update rate. You'll also learn to check for
 Wi-Fi or mobile connectivity before beginning high-bandwidth operations.</dd>
 
@@ -59,4 +71,4 @@
 those that aren't necessary due to the current device state. Learn to improve
 efficiency by toggling and cascading state change receivers and delay actions until the device is in
 a specific state.</dd>
-</dl> 
+</dl>
diff --git a/docs/html/training/monitoring-device-state/manifest-receivers.jd b/docs/html/training/monitoring-device-state/manifest-receivers.jd
index d4aeed3..ca184aa5 100644
--- a/docs/html/training/monitoring-device-state/manifest-receivers.jd
+++ b/docs/html/training/monitoring-device-state/manifest-receivers.jd
@@ -42,7 +42,7 @@
 
 <h2 id="ToggleReceivers">Toggle and Cascade State Change Receivers to Improve Efficiency </h2> 
  
-<p>Use can use the {@link android.content.pm.PackageManager} to toggle the enabled state on any
+<p>You can use the {@link android.content.pm.PackageManager} to toggle the enabled state on any
 component defined in the manifest, including whichever broadcast receivers you wish to enable or
 disable as shown in the snippet below:</p>
 
diff --git a/docs/html/training/multiple-apks/api.jd b/docs/html/training/multiple-apks/api.jd
old mode 100644
new mode 100755
index f43dcae..504b4e3
--- a/docs/html/training/multiple-apks/api.jd
+++ b/docs/html/training/multiple-apks/api.jd
@@ -153,11 +153,11 @@
 their creation at the following links:</p>
 <ul>
 <li><a
-href="{@docRoot}tools/projects/projects-eclipse.html#SettingUpLibraryProject">Setting up
-a library project (Eclipse)</a></li>
+href="{@docRoot}sdk/installing/create-project.html#SettingUpLibraryModule">Managing Projects
+from Android Studio</a></li>
 <li><a
-href="{@docRoot}tools/projects/projects-cmdline.html#SettingUpLibraryProject">Setting up
-a library project (Command line)</a></li>
+href="{@docRoot}tools/projects/projects-cmdline.html#SettingUpLibraryProject">Managing Projects
+from the Command Line</a></li>
 </ul>
 
 
@@ -176,7 +176,7 @@
 
 <h2 id="CreateAPKs">Create New APK Projects</h2>
 <p>There should be a separate Android project for each APK you’re going to release.  For easy
-organization, place the library project and all related APK projects under the same parent folder. 
+organization, place the library project and all related APK projects under the same parent folder.
 Also remember that each APK needs to have the same package name, although they don’t necessarily
 need to share the package name with the library.  If you were to have 3 APKs following the scheme
 described earlier, your root directory might look like this:</p>
@@ -278,7 +278,7 @@
 </table>
 
 <p>
-Now, let’s further assume that the Red APK has some requirement on it that the other two don’t.  
+Now, let’s further assume that the Red APK has some requirement on it that the other two don’t.
 <a href="{@docRoot}google/play/filters.html">Filters on Google Play</a> page of
 the Android Developer guide has a whole list of possible culprits.  For the
 sake of example, let’s assume that red requires a front-facing camera.  In fact, the entire point of
diff --git a/docs/html/training/multiple-apks/multiple.jd b/docs/html/training/multiple-apks/multiple.jd
old mode 100644
new mode 100755
index ccee397..2501564
--- a/docs/html/training/multiple-apks/multiple.jd
+++ b/docs/html/training/multiple-apks/multiple.jd
@@ -169,7 +169,7 @@
 easier to ask your cubie than "Have we tested  the 3-to-10 xlarge APK against the Xoom?"  Print this
 chart out and hand it to every person working on your codebase.  Life just got a lot easier.</p>
 
-<h2 id="CreateLibrary">Put All Common Code and Resources in a Library Project.</h2>
+<h2 id="CreateLibrary">Put All Common Code and Resources in a Library Project</h2>
 
 <p>Whether you’re modifying an existing Android application or starting one from scratch, this is
 the first thing that you should do to the codebase, and by the far the most important.  Everything
@@ -182,11 +182,11 @@
 their creation at the following links:</p>
 <ul>
 <li><a
-href="{@docRoot}tools/projects/projects-eclipse.html#SettingUpLibraryProject">Setting up
-a library project (Eclipse)</a></li>
+href="{@docRoot}sdk/installing/create-project.html#SettingUpLibraryModule">Managing Projects
+from Android Studio</a></li>
 <li><a
-href="{@docRoot}tools/projects/projects-cmdline.html#SettingUpLibraryProject">Setting up
-a library project (Command line)</a></li>
+href="{@docRoot}tools/projects/projects-cmdline.html#SettingUpLibraryProject">Managing Projects
+from the Command Line</a></li>
 </ul>
 
 <p>If you’re converting an existing application to use multiple APK support,
@@ -204,7 +204,7 @@
 
 <h2 id="CreateAPKs">Create New APK Projects</h2>
 <p>There should be a separate Android project for each APK you’re going to release.  For easy
-organization, place the library project and all related APK projects under the same parent folder. 
+organization, place the library project and all related APK projects under the same parent folder.
 Also remember that each APK needs to have the same package name, although they don’t necessarily
 need to share the package name with the library.  If you were to have 3 APKs following the scheme
 described earlier, your root directory might look like this:</p>
diff --git a/docs/html/training/multiple-apks/screensize.jd b/docs/html/training/multiple-apks/screensize.jd
old mode 100644
new mode 100755
index c7941c4..a482f67
--- a/docs/html/training/multiple-apks/screensize.jd
+++ b/docs/html/training/multiple-apks/screensize.jd
@@ -58,7 +58,7 @@
 though multiple APK support is the best solution, but this often isn’t the case.  The <a
 href="{@docRoot}google/play/publishing/multiple-apks.html#ApiLevelOptions">Using Single APK
 Instead</a> section of the multiple APK developer guide includes some useful information on how to
-accomplish this with a single APK, including use of our support library. You should also read the 
+accomplish this with a single APK, including use of our support library. You should also read the
 guide to <a href="{@docRoot}guide/practices/screens_support.html">supporting multiple screens</a>,
 and there’s even a <a
 href="http://android-developers.blogspot.com/2011/03/fragments-for-all.html">support library</a> you
@@ -118,7 +118,7 @@
 now simply refer to each APK as "blue", "green", or "red", no matter how many different screen types
 it covers.</p>
 
-<h2 id="CreateLibrary">Put All Common Code and Resources in a Library Project.</h2>
+<h2 id="CreateLibrary">Put All Common Code and Resources in a Library Project</h2>
 <p>Whether you’re modifying an existing Android application or starting one from scratch, this is
 the first thing that you should do to the codebase, and by the far the most important.  Everything
 that goes into the library project only needs to be updated once (think language-localized strings,
@@ -130,11 +130,11 @@
 their creation at the following links:</p>
 <ul>
 <li><a
-href="{@docRoot}tools/projects/projects-eclipse.html#SettingUpLibraryProject">Setting up
-a library project (Eclipse)</a></li>
+href="{@docRoot}sdk/installing/create-project.html#SettingUpLibraryModule">Managing Projects
+from Android Studio</a></li>
 <li><a
-href="{@docRoot}tools/projects/projects-cmdline.html#SettingUpLibraryProject">Setting up
-a library project (Command line)</a></li>
+href="{@docRoot}tools/projects/projects-cmdline.html#SettingUpLibraryProject">Managing Projects
+from the Command Line</a></li>
 </ul>
 
 
@@ -156,7 +156,7 @@
 
 <h2 id="CreateAPKs">Create New APK Projects</h2>
 <p>There should be a separate Android project for each APK you’re going to release.  For easy
-organization, place the library project and all related APK projects under the same parent folder. 
+organization, place the library project and all related APK projects under the same parent folder.
 Also remember that each APK needs to have the same package name, although they don’t necessarily
 need to share the package name with the library.  If you were to have 3 APKs following the scheme
 described earlier, your root directory might look like this:</p>
@@ -295,7 +295,7 @@
 Also note that instead of taking advantage of the default values (small and
 normal are always true by default), the manifests explicitly set the value for
 each screen size.  This can save you headaches down the line.  For instance, a manifest with a
-target SDK of &lt; 9 will have xlarge automatically set to false, since that size didn’t exist yet. 
+target SDK of &lt; 9 will have xlarge automatically set to false, since that size didn’t exist yet.
 So be explicit!
 </p>
 
diff --git a/docs/html/training/multiple-apks/texture.jd b/docs/html/training/multiple-apks/texture.jd
old mode 100644
new mode 100755
index c49cc95..3ffd64f
--- a/docs/html/training/multiple-apks/texture.jd
+++ b/docs/html/training/multiple-apks/texture.jd
@@ -73,7 +73,7 @@
 
 
 <h2 id="ChartReqs">Chart Your Requirements</h2>
- 
+
 <p>The Android Developer Guide provides a handy reference of some of common supported textures on
 the <a href="{@docRoot}guide/topics/manifest/supports-gl-texture-element.html">supports-gl-texture
 page</a>.  This page also contains some hints as to which phones (or families of phones) support
@@ -113,11 +113,11 @@
 their creation at the following links:</p>
 <ul>
 <li><a
-href="{@docRoot}tools/projects/projects-eclipse.html#SettingUpLibraryProject">Setting up
-a library project (Eclipse)</a></li>
+href="{@docRoot}sdk/installing/create-project.html#SettingUpLibraryModule">Managing Projects
+from Android Studio</a></li>
 <li><a
-href="{@docRoot}tools/projects/projects-cmdline.html#SettingUpLibraryProject">Setting up
-a library project (Command line)</a></li>
+href="{@docRoot}tools/projects/projects-cmdline.html#SettingUpLibraryProject">Managing Projects
+from the Command Line</a></li>
 </ul>
 
 <p>If you’re converting an existing application to use multiple APK support,
@@ -135,7 +135,7 @@
 
 <h2 id="CreateAPKs">Create New APK Projects</h2>
 <p>There should be a separate Android project for each APK you’re going to release.  For easy
-organization, place the library project and all related APK projects under the same parent folder. 
+organization, place the library project and all related APK projects under the same parent folder.
 Also remember that each APK needs to have the same package name, although they don’t necessarily
 need to share the package name with the library.  If you were to have 3 APKs following the scheme
 described earlier, your root directory might look like this:</p>
@@ -194,7 +194,7 @@
     <tr>
       <td class="blueCell">ETC1</td>
       <td class="blueCell">ETC1</td>
-      <td class="blueCell">ETC1</td>      
+      <td class="blueCell">ETC1</td>
     </tr>
     <tr>
       <td></td>
@@ -290,7 +290,7 @@
 supports-screens and compatible-screens, and that you don’t have unintended "uses-feature" values
 that were added as a result of permissions you set in the manifest. In the example above, the APK
 will be invisible to most, if not all devices.</p>
-<p>Why?  By adding the required permission SEND_SMS, the feature requirement of android.hardware.telephony was implicitly added.  Since most (if not all) xlarge devices are tablets without telephony hardware in them, Google Play will filter out this APK in these cases, until future devices come along which are both large enough to report as xlarge screen size, and possess telephony hardware.  
+<p>Why?  By adding the required permission SEND_SMS, the feature requirement of android.hardware.telephony was implicitly added.  Since most (if not all) xlarge devices are tablets without telephony hardware in them, Google Play will filter out this APK in these cases, until future devices come along which are both large enough to report as xlarge screen size, and possess telephony hardware.
 </p>
 <p>Fortunately this is easily fixed by adding the following to your manifest:</p>
 <pre>
diff --git a/docs/html/training/multiscreen/screensizes.jd b/docs/html/training/multiscreen/screensizes.jd
old mode 100644
new mode 100755
index a34c3d5..2cd59ee
--- a/docs/html/training/multiscreen/screensizes.jd
+++ b/docs/html/training/multiscreen/screensizes.jd
@@ -56,9 +56,8 @@
 you should use <code>"wrap_content"</code> and <code>"match_parent"</code> for the width
 and height of some view components. If you use <code>"wrap_content"</code>, the width
 or height of the view is set to the minimum size necessary to fit the content
-within that view, while <code>"match_parent"</code> (also known as
-<code>"fill_parent"</code> before API level 8) makes the component expand to match the size of its
-parent view.</p>
+within that view, while <code>"match_parent"</code> makes the component expand to match the size of
+its parent view.</p>
 
 <p>By using the <code>"wrap_content"</code> and <code>"match_parent"</code> size values instead of
 hard-coded sizes, your views either use only the space required for that
diff --git a/docs/html/training/notepad/codelab/NotepadCodeLab.zip b/docs/html/training/notepad/codelab/NotepadCodeLab.zip
deleted file mode 100644
index cd30f29..0000000
--- a/docs/html/training/notepad/codelab/NotepadCodeLab.zip
+++ /dev/null
Binary files differ
diff --git a/docs/html/training/notepad/index.jd b/docs/html/training/notepad/index.jd
deleted file mode 100644
index 507b232..0000000
--- a/docs/html/training/notepad/index.jd
+++ /dev/null
@@ -1,136 +0,0 @@
-excludeFromSuggestions=true
-page.title=Notepad Tutorial
-parent.title=Tutorials
-@jd:body
-
-
-<p>This tutorial on writing a notepad application gives you a &quot;hands-on&quot; introduction
-to the Android framework and the  tools you use to build  applications on it.
-Starting from a preconfigured project file, it guides you through the process of
-developing a simple notepad application and provides concrete examples of how to
-set up the project,  develop the application logic and user interface, and then
-compile and run the application. </p>
-
-<p>The tutorial presents the application development as a set of 
-exercises (see below), each consisting of several steps. You should follow 
-the steps in each exercise to gradually build and refine your  
-application. The exercises explain each step in detail and provide all the 
-sample code you need to complete the application. </p>
-
-<p><p>When you are finished with the tutorial, you will have created a functioning
-Android application and will have learned many of the most important
-concepts in Android development.</p>
-
-<a name="who"></a>
-<h2>Who Should Use this Tutorial</h2>
-
-<p>This tutorial is designed for  experienced developers, especially those with 
-knowledge of the Java programming language. If you haven't written Java
-applications before, you can still use the tutorial, but you might need to work
-at a slower pace. </p>
-
-<p>Also note that this tutorial uses
-the Eclipse development environment, with the Android plugin installed. If you
-are not using Eclipse, you can  follow  the exercises and build the application,
-but you will need to determine how to accomplish the Eclipse-specific
-steps in your environment. </p>
-
-<a name="preparing"></a>
-<h2>Preparing for the Exercises</h2>
-
-<p>The tutorial  assumes that you have some familiarity with basic Android
-application concepts and terminology. If you are not, you
-should read <a href="{@docRoot}guide/components/fundamentals.html">Application 
-Fundamentals</a> before continuing. </p>
-
-<p>This tutorial also builds on the introductory information provided in the 
-<a href="{@docRoot}training/basics/firstapp/index.html">Building Your First App</a>
-tutorial, which explains how to set up your Eclipse environment
-for building Android applications. We recommend you complete the Hello World
-tutorial before starting this one.</p>
-
-<p>To prepare for this lesson:</p>
-
-<ol>
-  <li>Download the <a href="codelab/NotepadCodeLab.zip">project
-      exercises archive (.zip)</a>.</li>
-  <li>Unpack the archive file to a suitable location on your machine.</li>
-  <li>Open the <code>NotepadCodeLab</code> folder.</li>
-</ol>
-
-<p>Inside the <code>NotepadCodeLab</code> folder, you should see six project
-files: <code>Notepadv1</code>,
-    <code>Notepadv2</code>, <code>Notepadv3</code>,
-    <code>Notepadv1Solution</code>, <code>Notepadv2Solution</code>
-    and <code>Notepadv3Solution</code>. The <code>Notepadv#</code> projects are
-the starting points for each of the exercises, while the
-<code>Notepadv#Solution</code> projects are the exercise
-    solutions. If you are having trouble with a particular exercise, you
-    can compare your current work against the exercise solution.</p>
-
-<a name="exercises"></a>
-<h2> Exercises</h2>
-
-  <p>The table below lists the tutorial exercises and describes the development
-areas that each covers. Each exercise assumes that you have completed any
-previous exercises.</p>
-
-  <table border="0" style="padding:4px;spacing:2px;" summary="This
-table lists the
-tutorial examples and describes what each covers. ">
-    <tr>
-      <th width="120"><a href="{@docRoot}training/notepad/notepad-ex1.html">Exercise
-1</a></th>
-      <td>Start here. Construct a simple notes list that lets the user add new notes but not
-edit them. Demonstrates the basics of <code>ListActivity</code> and creating
-and handling
-      menu options. Uses a SQLite database to store the notes.</td>
-    </tr>
-    <tr>
-      <th><a href="{@docRoot}training/notepad/notepad-ex2.html">Exercise 2</a></th>
-      <td>Add a second Activity to the
-application. Demonstrates constructing a
-new Activity, adding it to the Android manifest, passing data between the
-activities, and using more advanced screen layout. Also shows how to
-invoke another Activity to return a result, using
-<code>startActivityForResult()</code>.</td>
-    </tr>
-    <tr>
-      <th><a href="{@docRoot}training/notepad/notepad-ex3.html">Exercise 3</a></th>
-      <td>Add handling of life-cycle events to
-the application, to let it
-maintain application state across the life cycle. </td>
-    </tr>
-    <tr>
-    <th><a href="{@docRoot}training/notepad/notepad-extra-credit.html">Extra
-Credit</a></th>
-    <td>Demonstrates how to use the Eclipse
-debugger and how you can use it to
-view life-cycle events as they are generated. This section is optional but
-highly recommended.</td>
-    </tr>
-</table>
-
-
-<a name="other"></a>
-<h2>Other Resources and Further Learning</h2>
-<ul>
-<li>For a lighter but broader introduction to concepts not covered in the
-tutorial,
-take a look at <a href="{@docRoot}resources/faq/commontasks.html">Common Android Tasks</a>.</li>
-
-<li>This tutorial draws from the full Notepad application included in the
-<code>samples/legacy/NotePad</code> directory of the SDK, though it does not
-match it exactly. When you are done with the tutorial, it is highly recommended
-that you take a closer look at this version of the Notepad application, as it
-demonstrates a variety of interesting additions for your application, such
-as:</li>
-  <ul>
-    <li>Setting up a custom striped list for the list of notes.</li>
-    <li>Creating a custom text edit view that overrides the <code>draw()</code>
-    method to make it look like a lined notepad.</li>
-    <li>Implementing a full <code>ContentProvider</code> for notes.</li>
-    <li>Reverting and discarding edits instead of just automatically saving
-    them.</li>
-  </ul>
-</ul>
diff --git a/docs/html/training/notepad/notepad-ex1.jd b/docs/html/training/notepad/notepad-ex1.jd
deleted file mode 100644
index f680f15..0000000
--- a/docs/html/training/notepad/notepad-ex1.jd
+++ /dev/null
@@ -1,583 +0,0 @@
-excludeFromSuggestions=true
-page.title=Notepad Exercise 1
-parent.title=Notepad Tutorial
-parent.link=index.html
-@jd:body
-
-
-<p><em>In this exercise, you will construct a simple notes list that lets the
-user add new notes but not edit them. The exercise demonstrates:</em></p>
-<ul>
-<li><em>The basics of <code>ListActivities</code> and creating and handling menu
-options. </em></li>
-<li><em>How to use a SQLite database to store the notes.</em></li>
-<li><em>How to bind data from a database cursor into a ListView using a
-SimpleCursorAdapter.</em></li>
-<li><em>The basics of screen layouts, including how to lay out a list view, how
-you can add items to the activity menu, and how the activity handles those menu
-selections. </em></li>
-</ul>
-
-<div style="float:right;white-space:nowrap">
-<span style="color:#BBB;">
-	[<a href="notepad-ex1.html" style="color:#BBB;">Exercise 1</a>]</span>
-	[<a href="notepad-ex2.html">Exercise 2</a>]
-	[<a href="notepad-ex3.html">Exercise 3</a>]
-	[<a href="notepad-extra-credit.html">Extra Credit</a>]
-</div>
-
-
-
-<h2>Step 1</h2>
-
-	<p>Open up the <code>Notepadv1</code> project in Eclipse.</p>
-    
-    <p><code>Notepadv1</code> is a project that is provided as a starting point. It
-    takes care of some of the boilerplate work that you have already seen if you
-    followed the <a href="{@docRoot}training/basics/firstapp/index.html">Hello,
-    World</a> tutorial.</p>
-    
-  <ol>
-    <li>
-      Start a new Android Project by clicking <strong>File</strong> > 
-      <strong>New</strong> > <strong>Android Project</strong>.</li>
-    <li>
-      In the New Android Project dialog, select <strong>Create project from existing source</strong>.</li>
-    <li>
-      Click <strong>Browse</strong> and navigate to where you copied the <code>NotepadCodeLab</code> 
-      (downloaded during <a href="{@docRoot}training/notepad/index.html#preparing">setup</a>) 
-      and select <code>Notepadv1</code>.</li>
-    <li>
-      The Project Name and other properties should be automatically filled for you. 
-      You must select the Build Target&mdash;we recommend selecting a target with the 
-      lowest platform version available. Also add an integer to the Min SDK Version field 
-      that matches the API Level of the selected Build Target.</li>
-    <li>
-      Click <strong>Finish</strong>. The <code>Notepadv1</code> project should open and be 
-      visible in your Eclipse package explorer.</li>
-  </ol>
-  
-    <p>If you see an error about <code>AndroidManifest.xml</code>, or some
-      problems related to an Android zip file, right click on the project and
-      select <strong>Android Tools</strong> > <strong>Fix Project Properties</strong>.
-      (The project is looking in the wrong location for the library file,
-      this will fix it for you.)</p>
-
-  <h2>Step 2</h2>
-
-  <div class="sidebox-wrapper">
-  <div class="sidebox">
-    <h2>Accessing and modifying data</h2>
-    <p>For this
-    exercise, we are using a SQLite database to store our data. This is useful
-    if only <em>your</em> application will need to access or modify the data. If you wish for
-    other activities to access or modify the data, you have to expose the data using a 
-    {@link android.content.ContentProvider ContentProvider}.</p>
-    <p>If you are interested, you can find out more about
-    <a href="{@docRoot}guide/topics/providers/content-providers.html">content providers</a> or the
-whole
-    subject of <a href="{@docRoot}guide/topics/data/data-storage.html">Data Storage</a>.
-    The NotePad sample in the <code>samples/</code> folder of the SDK also has an example of how
-    to create a ContentProvider.</p>
-  </div>
-  </div>
-
-    <p>Take a look at the <code>NotesDbAdapter</code> class &mdash; this class is provided to
-    encapsulate data access to a SQLite database that will hold our notes data
-    and allow us to update it.</p>
-    <p>At the top of the class are some constant definitions that will be used in the application
-    to look up data from the proper field names in the database. There is also a database creation
-    string defined, which is used to create a new database schema if one doesn't exist already.</p>
-    <p>Our database will have the name <code>data</code>, and have a single table called 
-    <code>notes</code>, which in turn has three fields: <code>_id</code>, <code>title</code> and 
-    <code>body</code>. The <code>_id</code> is named with an underscore convention used in a number of
-    places inside the Android SDK and helps keep a track of state. The <code>_id</code>
-    usually has to be specified when querying or updating the database (in the column projections
-    and so on). The other two fields are simple text fields that will store data.
-    </p>
-    <p>The constructor for <code>NotesDbAdapter</code> takes a Context, which allows it to communicate with aspects
-    of the Android operating system. This is quite common for classes that need to touch the
-    Android system in some way. The Activity class implements the Context class, so usually you will just pass
-    <code>this</code> from your Activity, when needing a Context.</p>
-    <p>The <code>open()</code> method calls up an instance of DatabaseHelper, which is our local
-    implementation of the SQLiteOpenHelper class. It calls <code>getWritableDatabase()</code>, 
-    which handles creating/opening a database for us.</p>
-    <p><code>close()</code> just closes the database, releasing resources related to the 
-    connection.</p>
-    <p><code>createNote()</code> takes strings for the title and body of a new note,
-    then creates that note in the database. Assuming the new note is created successfully, the
-    method also returns the row <code>_id</code> value for the newly created note.</p>
-    <p><code>deleteNote()</code> takes a <var>rowId</var> for a particular note, and deletes that note from
-    the database.</p>
-
-    <p><code>fetchAllNotes()</code> issues a query to return a {@link android.database.Cursor} over all notes in the
-    database. The <code>query()</code> call is worth examination and understanding. The first field is the 
-    name of the database table to query (in this case <code>DATABASE_TABLE</code> is "notes").
-    The next is the list of columns we want returned, in this case we want the <code>_id</code>, 
-    <code>title</code> and <code>body</code> columns so these are specified in the String array.
-    The remaining fields are, in order: <code>selection</code>, 
-    <code>selectionArgs</code>, <code>groupBy</code>, <code>having</code> and <code>orderBy</code>.
-    Having these all <code>null</code> means we want all data, need no grouping, and will take the default
-    order. See {@link android.database.sqlite.SQLiteDatabase SQLiteDatabase} for more details.</p>
-    <p class="note"><b>Note:</b> A Cursor is returned rather than a collection of rows. This allows
-    Android to use resources efficiently -- instead of putting lots of data straight into memory
-    the cursor will retrieve and release data as it is needed, which is much more efficient for
-    tables with lots of rows.</p>
-
-    <p><code>fetchNote()</code> is similar to <code>fetchAllNotes()</code> but just gets one note
-    with the <var>rowId</var> we specify. It uses a slightly different version of the 
-    {@link android.database.sqlite.SQLiteDatabase} <code>query()</code> method. 
-    The first parameter (set <em>true</em>) indicates that we are interested
-    in one distinct result. The <var>selection</var> parameter (the fourth parameter) has been specified to search
-    only for the row "where _id =" the <var>rowId</var> we passed in. So we are returned a Cursor on
-    the one row.</p>
-    <p>And finally, <code>updateNote()</code> takes a <var>rowId</var>, <var>title</var> and <var>body</var>, and uses a
-    {@link android.content.ContentValues ContentValues} instance to update the note of the given
-    <var>rowId</var>.</p>
-   
-<h2 style="clear:right;">Step 3</h2>
-
-	<div class="sidebox-wrapper">
-  <div class="sidebox">
-    <h2>Layouts and activities</h2>
-      <p>Most Activity classes will have a layout associated with them. The layout
-    will be the "face" of the Activity to the user. In this case our layout will
-    take over the whole screen and provide a list of notes.</p>
-    <p>Full screen layouts are not the only option for an Activity however. You
-    might also want to use a <a
-href="{@docRoot}resources/faq/commontasks.html#floatingorfull">floating 
-    layout</a> (for example, a <a
-href="{@docRoot}resources/faq/commontasks.html#dialogsandalerts">dialog
-    or alert</a>), 
-    or perhaps you don't need a layout at all (the Activity will be invisible 
-    to the user unless you specify some kind of layout for it to use).</p>
-  </div>
-  </div>
-    
-    <p>Open the <code>notepad_list.xml</code> file in <code>res/layout</code>
-and 
-    take a look at it. (You may have to
-    hit the <em>xml</em> tab, at the bottom, in order to view the XML markup.)</p>
-     
-    <p>This is a mostly-empty layout definition file. Here are some
-    things you should know about a layout file:</p>
-
-   
-  <ul>
-    <li>
-      All Android layout files must start with the XML header line:
-      <code>&lt;?xml version="1.0" encoding="utf-8"?&gt;</code>.    </li>
-    <li>
-      The next definition will often (but not always) be a layout
-      definition of some kind, in this case a <code>LinearLayout</code>.    </li>
-    <li>
-      The XML namespace of Android should always be defined in
-      the top level component or layout in the XML so that <code>android:</code> tags can
-      be used through the rest of the file:
-      <p><code>xmlns:android="http://schemas.android.com/apk/res/android"</code></p>
-    </li>
-  </ul>
-
-  <h2 style="clear:right;">Step 4</h2>
-    <p>We need to create the layout to hold our list. Add code inside
-    of the <code>LinearLayout</code> element so the whole file looks like this: </p>
-    <pre>
-&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
-&lt;LinearLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
-    android:layout_width=&quot;wrap_content&quot;
-    android:layout_height=&quot;wrap_content&quot;&gt;
-
-  &lt;ListView android:id=&quot;@android:id/list&quot;
-        android:layout_width=&quot;wrap_content&quot;
-        android:layout_height=&quot;wrap_content&quot;/&gt;
-  &lt;TextView android:id=&quot;@android:id/empty&quot;
-        android:layout_width=&quot;wrap_content&quot;
-        android:layout_height=&quot;wrap_content&quot;
-        android:text=&quot;@string/no_notes&quot;/&gt;
-
-&lt;/LinearLayout&gt;
-</pre>
-  <ul>
-    <li>
-      The <strong>&#64;</strong> symbol in the id strings of the <code>ListView</code> and 
-      <code>TextView</code> tags means 
-      that the XML parser should parse and expand the rest of
-      the id string and use an ID resource.</li>
-    <li>
-      The <code>ListView</code> and <code>TextView</code> can be
-      thought as two alternative views, only one of which will be displayed at once.
-      ListView will be used when there are notes to be shown, while the TextView
-      (which has a default value of "No Notes Yet!" defined as a string
-      resource in <code>res/values/strings.xml</code>) will be displayed if there 
-      aren't any notes to display.</li>
-    <li>The <code>list</code> and <code>empty</code> IDs are
-      provided for us by the Android platform, so, we must 
-      prefix the <code>id</code> with <code>android:</code> (e.g., <code>@android:id/list</code>).</li>
-    <li>The View with the <code>empty</code> id is used 
-      automatically when the {@link android.widget.ListAdapter} has no data for the ListView. The 
-      ListAdapter knows to look for this name by default. Alternatively, you could change the      
-      default empty view by using {@link android.widget.AdapterView#setEmptyView(View)}
-      on the ListView.
-      <p>
-      More broadly, the <code>android.R</code> class is a set of predefined 
-      resources provided for you by the platform, while your project's 
-      <code>R</code> class is the set of resources your project has defined.
-      Resources found in the <code>android.R</code> resource class can be
-      used in the XML files by using the <code>android:</code> name space prefix      
-      (as we see here).</p>
-    </li>
-  </ul>
-
-  <h2 style="clear:right;">Step 5</h2>
-
-	<div class="sidebox-wrapper">
-  <div class="sidebox">
-    <h2>Resources and the R class</h2>
-    <p>The folders under res/ in the Eclipse project are for resources.
-     There is a <a href="{@docRoot}resources/faq/commontasks.html#filelist">specific structure</a>
-to the
-     folders and files under res/.</p>
-    <p>Resources defined in these folders and files will have
-    corresponding entries in the R class allowing them to be easily accessed
-    and used from your application. The R class is automatically generated using the contents
-    of the res/ folder by the eclipse plugin (or by aapt if you use the command line tools).
-    Furthermore, they will be bundled and deployed for you as part of the application.</p>
-    </p>
-  </div>
-  </div>
-
-    <p>To make the list of notes in the ListView, we also need to define a View for each row:</p>
-  <ol>
-    <li>
-      Create a new file under <code>res/layout</code> called 
-      <code>notes_row.xml</code>.    </li>
-    <li>
-      Add the following contents (note: again the XML header is used, and the
-      first node defines the Android XML namespace)<br>
-      <pre style="overflow:auto">
-&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
-&lt;TextView android:id=&quot;&#64;+id/text1&quot;
-    xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
-    android:layout_width=&quot;wrap_content&quot;
-    android:layout_height=&quot;wrap_content&quot;/&gt;</pre>
-    <p>
-      This is the View that will be used for each notes title row &mdash; it has only
-      one text field in it.    </p>
-    <p>In this case we create a new id called <code>text1</code>. The
-      <strong>+</strong> after the <strong>@</strong> in the id string indicates that the id should
-      be automatically created as a resource if it does not already exist, so we are defining
-      <code>text1</code> on the fly and then using it.</p>
-    </li>
-    <li>Save the file.</li>
-  </ol>
-      <p>Open the <code>R.java</code> class in the
-      project and look at it, you should see new definitions for
-      <code>notes_row</code> and <code>text1</code> (our new definitions)
-      meaning we can now gain access to these from the our code. </p>
-
-  <h2 style="clear:right;">Step 6</h2>
-<p>Next, open the <code>Notepadv1</code> class in the source. In the following steps, we are going to
-    alter this class to become a list adapter and display our notes, and also
-    allow us to add new notes.</p>
-
-<p><code>Notepadv1</code> will inherit from a subclass
-    of <code>Activity</code> called a <code>ListActivity</code>, 
-    which has extra functionality to accommodate the kinds of 
-    things you might want to do with a list, for
-    example: displaying an arbitrary number of list items in rows on the screen,
-    moving through the list items, and allowing them to be selected.</p>
-
-<p>Take a look through the existing code in <code>Notepadv1</code> class.
-    There is a currently an unused private field called <code>mNoteNumber</code> that
-    we will use to create numbered note titles.</p>
-    <p>There are also three override methods defined:
-    <code>onCreate</code>, <code>onCreateOptionsMenu</code> and
-    <code>onOptionsItemSelected</code>; we need to fill these
-    out:</p>
-    <ul>
-      <li><code>onCreate()</code> is called when the activity is
-      started &mdash; it is a little like the "main" method for an Activity. We use
-      this to set up resources and state for the activity when it is
-      running.</li>
-     <li><code>onCreateOptionsMenu()</code> is used to populate the
-      menu for the Activity. This is shown when the user hits the menu button,
-and
-      has a list of options they can select (like "Create
-      Note"). </li>
-     <li><code>onOptionsItemSelected()</code> is the other half of the
-      menu equation, it is used to handle events generated from the menu (e.g.,
-      when the user selects the "Create Note" item).
-      </li>
-    </ul>
-    
-  <h2>Step 7</h2>
-    <p>Change the inheritance of <code>Notepadv1</code> from
-<code>Activity</code>
-    to <code>ListActivity</code>:</p> 
-    <pre>public class Notepadv1 extends ListActivity</pre>
-    <p>Note: you will have to import <code>ListActivity</code> into the
-Notepadv1
-    class using Eclipse, <strong>ctrl-shift-O</strong> on Windows or Linux, or
-    <strong>cmd-shift-O</strong> on the Mac (organize imports) will do this for you
-    after you've written the above change.</p>
-
-  <h2>Step 8</h2>
-    <p>Fill out the body of the <code>onCreate()</code> method.</p>
-    <p>Here we will set the title for the Activity (shown at the top of the
-    screen), use the <code>notepad_list</code> layout we created in XML, 
-    set up the <code>NotesDbAdapter</code> instance that will
-    access notes data, and populate the list with the available note
-    titles:</p>
-    <ol>
-    <li>
-      In the <code>onCreate</code> method, call <code>super.onCreate()</code> with the 
-      <code>savedInstanceState</code> parameter that's passed in.</li>
-    <li>
-      Call <code>setContentView()</code> and pass <code>R.layout.notepad_list</code>.</li>
-    <li>
-      At the top of the class, create a new private class field called <code>mDbHelper</code> of class
-      <code>NotesDbAdapter</code>.
-    </li>
-    <li>
-      Back in the <code>onCreate</code> method, construct a new
-<code>NotesDbAdapter</code>
-      instance and assign it to the <code>mDbHelper</code> field (pass
-      <code>this</code> into the constructor for <code>DBHelper</code>)
-    </li>
-    <li>
-      Call the <code>open()</code> method on <code>mDbHelper</code> to open (or create) the
-      database.
-    </li>
-    <li>
-      Finally, call a new method <code>fillData()</code>, which will get the data and
-      populate the ListView using the helper &mdash; we haven't defined this method yet.    </li>
-  </ol>
-    <p>
-      <code>onCreate()</code> should now look like this:</p>
-      <pre>
-    &#64;Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setContentView(R.layout.notepad_list);
-        mDbHelper = new NotesDbAdapter(this);
-        mDbHelper.open();
-        fillData();
-    }</pre>
-      <p>And be sure you have the <code>mDbHelper</code> field definition (right
-      under the mNoteNumber definition): </p>
-      <pre>    private NotesDbAdapter mDbHelper;</pre>
-
-  <h2>Step 9</h2>
-
-  <div class="sidebox-wrapper">
-  <div class="sidebox">
-    <h2>More about menus</h2>
-    <p>The notepad application we are constructing only scratches the
-     surface with <a href="{@docRoot}resources/faq/commontasks.html#addmenuitems">menus</a>. </p>
-    <p>You can also <a href="{@docRoot}resources/faq/commontasks.html#menukeyshortcuts">add
-shortcut keys for menu items</a>, <a
-href="{@docRoot}resources/faq/commontasks.html#menukeyshortcuts">create
-submenus</a> and even <a href="{@docRoot}resources/faq/commontasks.html#addingtoothermenus">add
-menu items to other applications!</a>. </p>
-  </div>
-  </div>
-
-<p>Fill out the body of the <code>onCreateOptionsMenu()</code> method.</p>
-
-<p>We will now create the "Add Item" button that can be accessed by pressing the menu
-button on the device. We'll specify that it occupy the first position in the menu.</p>
-
-  <ol>
-    <li>
-      In <code>strings.xml</code> resource (under <code>res/values</code>), add
-      a new string named "menu_insert" with its value set to <code>Add Item</code>:
-     <pre>&lt;string name="menu_insert"&gt;Add Item&lt;/string&gt;</pre>
-      <p>Then save the file and return to <code>Notepadv1</code>.</p>
-    </li>
-    <li>Create a menu position constant at the top of the  class:
-      <pre>public static final int INSERT_ID = Menu.FIRST;</pre>
-    </li>
-    <li>In the <code>onCreateOptionsMenu()</code> method, change the 
-    <code>super</code> call so we capture the boolean return as <code>result</code>. We'll return this value at the end.</li>
-    <li>Then add the menu item with <code>menu.add()</code>.</li>
-  </ol>
-  <p>The whole method should now look like this: 
-      <pre>
-    &#64;Override
-    public boolean onCreateOptionsMenu(Menu menu) {
-        boolean result = super.onCreateOptionsMenu(menu);
-        menu.add(0, INSERT_ID, 0, R.string.menu_insert);
-        return result;
-    }</pre>
-  <p>The arguments passed to <code>add()</code> indicate: a group identifier for this menu (none,
-  in this case), a unique ID (defined above), the order of the item (zero indicates no preference),
-  and the resource of the string to use for the item.</p>
-
-<h2 style="clear:right;">Step 10</h2>
-    <p>Fill out the body of the <code>onOptionsItemSelected()</code> method:</p>
-    <p>This is going
-    to handle our new "Add Note" menu item.  When this is selected, the
-    <code>onOptionsItemSelected()</code> method will be called with the
-    <code>item.getId()</code> set to <code>INSERT_ID</code> (the constant we
-    used to identify the menu item). We can detect this, and take the
-    appropriate actions:</p>
-  <ol>
-    <li>
-      The <code>super.onOptionsItemSelected(item)</code> method call goes at the
-      end of this method &mdash; we want to catch our events first!    </li>
-    <li>
-      Write a switch statement on <code>item.getItemId()</code>.   
-      <p>In the case of <var>INSERT_ID</var>, call a new method, <code>createNote()</code>,
-      and return true, because we have handled this event and do not want to
-      propagate it through the system.</p>
-    </li>
-    <li>Return the result of the superclass' <code>onOptionsItemSelected()</code>
-    method at the end.</li>
-   </ol>
-    <p>
-      The whole <code>onOptionsItemSelect()</code> method should now look like
-      this:</p>
-      <pre>
-    &#64;Override
-    public boolean onOptionsItemSelected(MenuItem item) {
-        switch (item.getItemId()) {
-        case INSERT_ID:
-            createNote();
-            return true;
-        }
-       
-        return super.onOptionsItemSelected(item);
-    }</pre>
-
-<h2>Step 11</h2>
-    <p>Add a new <code>createNote()</code> method:</p>
-    <p>In this first version of
-    our application, <code>createNote()</code> is not going to be very useful.
-We will simply
-    create a new note with a title assigned to it based on a counter ("Note 1",
-    "Note 2"...) and with an empty body. At present we have no way of editing
-    the contents of a note, so for now we will have to be content making one
-    with some default values:</p>
-  <ol>
-    <li>Construct the name using "Note" and the counter we defined in the class: <code>
-      String noteName = "Note " + mNoteNumber++</code></li>
-    <li>
-      Call <code>mDbHelper.createNote()</code> using <code>noteName</code> as the
-      title and <code>""</code> for the body 
-    </li>
-    <li>
-      Call <code>fillData()</code> to populate the list of notes (inefficient but
-      simple) &mdash; we'll create this method next.</li>
-  </ol>
-    <p>
-      The whole <code>createNote()</code> method should look like this: </p>
-      <pre>
-    private void createNote() {
-        String noteName = &quot;Note &quot; + mNoteNumber++;
-        mDbHelper.createNote(noteName, &quot;&quot;);
-        fillData();
-    }</pre>
-
-
-<h2>Step 12</h2>
-  <div class="sidebox-wrapper">
-  <div class="sidebox">
-    <h2>List adapters</h2>
-    <p>Our example uses a {@link android.widget.SimpleCursorAdapter
-     SimpleCursorAdapter} to bind a database {@link android.database.Cursor Cursor}
-     into a ListView, and this is a common way to use a {@link android.widget.ListAdapter 
-     ListAdapter}. Other options exist like {@link android.widget.ArrayAdapter ArrayAdapter} which 
-     can be used to take a List or Array of in-memory data and bind it in to
-     a list as well.</p>
-  </div>
-  </div>
-  
-  <p>Define the <code>fillData()</code> method:</p>
-   <p>This
-    method uses <code>SimpleCursorAdapter,</code> which takes a database <code>Cursor</code> 
-    and binds it to fields provided in the layout. These fields define the row elements of our list 
-    (in this case we use the <code>text1</code> field in our
-    <code>notes_row.xml</code> layout), so this allows us to easily populate the list with
-    entries from our database.</p>
-    <p>To do this we have to provide a mapping from the <code>title</code> field in the returned Cursor, to
-    our <code>text1</code> TextView, which is done by defining two arrays: the first a string array
-    with the list of columns to map <em>from</em> (just "title" in this case, from the constant 
-    <code>NotesDbAdapter.KEY_TITLE</code>) and, the second, an int array
-    containing references to the views that we'll bind the data <em>into</em> 
-    (the <code>R.id.text1</code> TextView).</p>
-    <p>This is a bigger chunk of code, so let's first take a look at it:</p>
-
-    <pre>
-    private void fillData() {
-        // Get all of the notes from the database and create the item list
-        Cursor c = mDbHelper.fetchAllNotes();
-        startManagingCursor(c);
-
-        String[] from = new String[] { NotesDbAdapter.KEY_TITLE };
-        int[] to = new int[] { R.id.text1 };
-        
-        // Now create an array adapter and set it to display using our row
-        SimpleCursorAdapter notes =
-            new SimpleCursorAdapter(this, R.layout.notes_row, c, from, to);
-        setListAdapter(notes);
-    }</pre>
-    
-  <p>Here's what we've done:</p>
-  <ol>
-    <li>
-      After obtaining the Cursor from <code>mDbHelper.fetchAllNotes()</code>, we 
-      use an Activity method called
-      <code>startManagingCursor()</code> that allows Android to take care of the
-      Cursor lifecycle instead of us needing to worry about it. (We will cover the implications
-      of the lifecycle in exercise 3, but for now just know that this allows Android to do some
-      of our resource management work for us.)</li>
-    <li>
-      Then we create a string array in which we declare the column(s) we want 
-      (just the title, in this case), and an int array that defines the View(s)
-      to which we'd like to bind the columns (these should be in order, respective to 
-      the string array, but here we only have one for each).</li>
-    <li>
-      Next is the SimpleCursorAdapter instantiation. 
-      Like many classes in Android, the SimpleCursorAdapter needs a Context in order to do its
-      work, so we pass in <code>this</code> for the context (since subclasses of Activity 
-      implement Context). We pass the <code>notes_row</code> View we created as the receptacle
-      for the data, the Cursor we just created, and then our arrays.</li>
-   </ol>
-    <p>
-      In the future, remember that the mapping between the <strong>from</strong> columns and <strong>to</strong> resources
-      is done using the respective ordering of the two arrays. If we had more columns we wanted
-      to bind, and more Views to bind them in to, we would specify them in order, for example we
-      might use <code>{ NotesDbAdapter.KEY_TITLE, NotesDbAdapter.KEY_BODY }</code> and
-      <code>{ R.id.text1, R.id.text2 }</code> to bind two fields into the row (and we would also need
-      to define text2 in the notes_row.xml, for the body text). This is how you can bind multiple fields
-      into a single row (and get a custom row layout as well).</p>
-    <p>
-      If you get compiler errors about classes not being found, ctrl-shift-O or
-      (cmd-shift-O on the mac) to organize imports. 
-    </p>
-    
-<h2 style="clear:right;">Step 13</h2>
-    <p>Run it!
-  <ol>
-    <li>
-      Right click on the <code>Notepadv1</code> project.</li>
-    <li>
-      From the popup menu, select <strong>Run As</strong> &gt; 
-      <strong>Android Application</strong>.</li>
-    <li>
-      If you see a dialog come up, select Android Launcher as the way of running
-      the application (you can also use the link near the top of the dialog to
-      set this as your default for the workspace; this is recommended as it will
-      stop the plugin from asking you this every time).</li>
-    <li>Add new notes by hitting the menu button and selecting <em>Add
-    Item</em> from the menu.</li>
-  </ol>
-
-<h2 style="clear:right;">Solution and Next Steps</h2>
-    <p>You can see the solution to this class in <code>Notepadv1Solution</code>
-from
-the zip file to compare with your own.</p>
-
-<p>Once you are ready, move on to <a href="notepad-ex2.html">Tutorial
-Exercise 2</a> to add the ability to create, edit and delete notes.</p>
-
diff --git a/docs/html/training/notepad/notepad-ex2.jd b/docs/html/training/notepad/notepad-ex2.jd
deleted file mode 100644
index d15499b3..0000000
--- a/docs/html/training/notepad/notepad-ex2.jd
+++ /dev/null
@@ -1,646 +0,0 @@
-excludeFromSuggestions=true
-page.title=Notepad Exercise 2
-parent.title=Notepad Tutorial
-parent.link=index.html
-@jd:body
-
-
-<p><em>In this exercise, you will add a second Activity to your notepad application, to let the user
-create and edit notes. You will also allow the user to delete existing notes through a context menu.
-The new Activity assumes responsibility for creating new notes by
-collecting user input and packing it into a return Bundle provided by the intent. This exercise
-demonstrates:</em></p>
-<ul>
-<li><em>Constructing a new Activity and adding it to the Android manifest</em></li>
-<li><em>Invoking another Activity asynchronously using <code>startActivityForResult()</code></em></li>
-<li><em>Passing data between Activity in Bundle objects</em></li>
-<li><em>How to use a more advanced screen layout</em></li>
-<li><em>How to create a context menu</em></li>
-</ul>
-
-<div style="float:right;white-space:nowrap">
-	[<a href="notepad-ex1.html">Exercise 1</a>]
-	<span style="color:#BBB;">
-		[<a href="notepad-ex2.html" style="color:#DDD;">Exercise 2</a>]
-	</span>
-	[<a href="notepad-ex3.html">Exercise 3</a>]
-	[<a href="notepad-extra-credit.html">Extra Credit</a>]
-</div>
-
-<h2>Step 1</h2>
-
-<p>Create a new Android project using the sources from <code>Notepadv2</code> under the
-<code>NotepadCodeLab</code> folder, just like you did for the first exercise. If you see an error about
-<code>AndroidManifest.xml</code>, or some problems related to an
-<code>android.zip</code> file, right click on the project and select <strong>Android
-Tools</strong> &gt; <strong>Fix Project Properties</strong>.</p>
-
-<p>Open the <code>Notepadv2</code> project and take a look around:</p>
-<ul>
-    <li>
-      Open and look at the <code>strings.xml</code> file under
-      <code>res/values</code> &mdash; there are several new strings which we will use
-      for our new functionality
-    </li>
-    <li>
-      Also, open and take a look at the top of the <code>Notepadv2</code> class,
-      you will notice several new constants have been defined along with a new <code>mNotesCursor</code>
-      field used to hold the cursor we are using.
-    </li>
-    <li>
-      Note also that the <code>fillData()</code> method has a few more comments and now uses
-      the new field to store the notes Cursor. The <code>onCreate()</code> method is
-      unchanged from the first exercise. Also notice that the member field used to store the
-      notes Cursor is now called <code>mNotesCursor</code>. The <code>m</code> denotes a member
-      field and is part of the Android coding style standards.
-    </li>
-    <li>
-      There are also a couple of new overridden methods
-      (<code>onCreateContextMenu()</code>, <code>onContextItemSelected()</code>,
-      <code>onListItemClick()</code> and <code>onActivityResult()</code>)
-      which we will be filling in below.
-    </li>
-</ul>
-
-
-<h2>Step 2</h2>
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<p>Context menus should always be used when performing actions upon specific elements in the UI.
-When you register a View to a context menu, the context menu is revealed by performing a "long-click"
-on the UI component (press and hold the touchscreen or highlight and hold down the selection key for about two seconds).</p>
-</div>
-</div>
-
-<p>First, let's create the context menu that will allow users to delete individual notes.
-Open the Notepadv2 class.</p>
-
-<ol>
-    <li>In order for each list item in the ListView to register for the context menu, we call
-    <code>registerForContextMenu()</code> and pass it our ListView. So, at the very end of
-    the <code>onCreate()</code> method add this line:
-    <pre>registerForContextMenu(getListView());</pre>
-    <p>Because our Activity extends the ListActivity class, <code>getListView()</code> will return us
-    the local ListView object for the Activity. Now, each list item in this ListView will activate the
-    context menu.
-    <li>
-      Now fill in the <code>onCreateContextMenu()</code> method. This callback is similar to the other
-    menu callback used for the options menu. Here, we add just one line, which will add a menu item
-    to delete a note. Call <code>menu.add()</code> like so:
-      <pre>
-public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
-    super.onCreateContextMenu(menu, v, menuInfo);
-    menu.add(0, DELETE_ID, 0, R.string.menu_delete);
-}</pre>
-    <p>The <code>onCreateContextMenu()</code> callback passes some other information in addition to the Menu object,
-    such as the View that has been triggered for the menu and
-    an extra object that may contain additional information about the object selected. However, we don't care about
-    these here, because we only have one kind of object in the Activity that uses context menus. In the next
-    step, we'll handle the menu item selection.</p>
-    </li>
-</ol>
-
-<h2>Step 3</h2>
-  <p>Now that we've registered our ListView for a context menu and defined our context menu item, we need
-  to handle the callback when it is selected. For this, we need to identify the list ID of the
-  selected item, then delete it. So fill in the
-  <code>onContextItemSelected()</code> method like this:</p>
-<pre>
-public boolean onContextItemSelected(MenuItem item) {
-    switch(item.getItemId()) {
-    case DELETE_ID:
-        AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
-        mDbHelper.deleteNote(info.id);
-        fillData();
-        return true;
-    }
-    return super.onContextItemSelected(item);
-}</pre>
-<p>Here, we retrieve the {@link android.widget.AdapterView.AdapterContextMenuInfo AdapterContextMenuInfo}
-with {@link android.view.MenuItem#getMenuInfo()}. The <var>id</var> field of this object tells us
-the position of the item in the ListView. We then pass this to the <code>deleteNote()</code>
-method of our NotesDbAdapter and the note is deleted. That's it for the context menu &mdash; notes
-can now be deleted.</p>
-
-<h2 style="clear:right;">Step 4</h2>
-  <div class="sidebox-wrapper">
-  <div class="sidebox">
-    <h2>Starting Other Activities</h2>
-    <p>In this example our Intent uses a class name specifically.
-     As well as
-     <a href="{@docRoot}resources/faq/commontasks.html#intentexamples">starting intents</a> in
-    classes we already know about, be they in our own application or another
-    application, we can also create Intents without knowing exactly which
-    application will handle it.</p>
-    <p>For example, we might want to open a page in a
-    browser, and for this we still use
-    an Intent. But instead of specifying a class to handle it, we use
-    a predefined Intent constant, and a content URI that describes what we
-    want to do. See {@link android.content.Intent
-    android.content.Intent} for more information.</p>
-  </div>
-  </div>
-
-	<p>Fill in the body of the <code>createNote()</code> method:
-    <p>Create a new <code>Intent</code> to create a note
-    (<code>ACTIVITY_CREATE</code>) using the <code>NoteEdit</code> class.
-    Then fire the Intent using the <code>startActivityForResult()</code> method
-    call:</p>
-    <pre style="overflow:auto">
-Intent i = new Intent(this, NoteEdit.class);
-startActivityForResult(i, ACTIVITY_CREATE);</pre>
-      <p>This form of the Intent call targets a specific class in our Activity, in this case
-      <code>NoteEdit</code>. Since the Intent class will need to communicate with the Android
-      operating system to route requests, we also have to provide a Context (<code>this</code>).</p>
-      <p>The <code>startActivityForResult()</code> method fires the Intent in a way that causes a method
-      in our Activity to be called when the new Activity is completed. The method in our Activity
-      that receives the callback is called
-      <code>onActivityResult()</code> and we will implement it in a later step. The other way
-      to call an Activity is using <code>startActivity()</code> but this is a "fire-and-forget" way
-      of calling it &mdash; in this manner, our Activity is not informed when the Activity is completed, and there is
-      no way to return result information from the called Activity with <code>startActivity()</code>.
-      <p>Don't worry about the fact that <code>NoteEdit</code> doesn't exist yet,
-      we will fix that soon. </p>
-  </li>
-
-
-<h2>Step 5</h2>
-
-	<p>Fill in the body of the <code>onListItemClick()</code> override.</p>
-    <p><code>onListItemClick()</code> is a callback method that we'll override. It is called when
-    the user selects an item from the list. It is passed four parameters: the
-    <code>ListView</code> object it was invoked from, the <code>View</code>
-    inside the <code>ListView</code> that was clicked on, the
-    <code>position</code> in the list that was clicked, and the
-    <code>mRowId</code> of the item that was clicked. In this instance we can
-    ignore the first two parameters (we only have one <code>ListView</code> it
-    could be), and we ignore the <code>mRowId</code> as well. All we are
-    interested in is the <code>position</code> that the user selected. We use
-    this to get the data from the correct row, and bundle it up to send to
-    the <code>NoteEdit</code> Activity.</p>
-   <p>In our implementation of the callback, the method creates an
-    <code>Intent</code> to edit the note using
-    the <code>NoteEdit</code> class. It then adds data into the extras Bundle of
-    the Intent, which will be passed to the called Activity. We use it
-    to pass in the title and body text, and the <code>mRowId</code> for the note we are
-    editing. Finally, it will fire the Intent using the
-    <code>startActivityForResult()</code> method call. Here's the code that
-    belongs in <code>onListItemClick()</code>:</p>
-    <pre>
-super.onListItemClick(l, v, position, id);
-Cursor c = mNotesCursor;
-c.moveToPosition(position);
-Intent i = new Intent(this, NoteEdit.class);
-i.putExtra(NotesDbAdapter.KEY_ROWID, id);
-i.putExtra(NotesDbAdapter.KEY_TITLE, c.getString(
-        c.getColumnIndexOrThrow(NotesDbAdapter.KEY_TITLE)));
-i.putExtra(NotesDbAdapter.KEY_BODY, c.getString(
-        c.getColumnIndexOrThrow(NotesDbAdapter.KEY_BODY)));
-startActivityForResult(i, ACTIVITY_EDIT);</pre>
-  <ul>
-    <li>
-      <code>putExtra()</code> is the method to add items into the extras Bundle
-      to pass in to intent invocations. Here, we are
-      using the Bundle to pass in the title, body and mRowId of the note we want to edit.
-    </li>
-    <li>
-      The details of the note are pulled out from our query Cursor, which we move to the
-      proper position for the element that was selected in the list, with
-      the <code>moveToPosition()</code> method.</li>
-    <li>With the extras added to the Intent, we invoke the Intent on the
-      <code>NoteEdit</code> class by passing <code>startActivityForResult()</code>
-      the Intent and the request code. (The request code will be
-      returned to <code>onActivityResult</code> as the <code>requestCode</code> parameter.)</li>
-  </ul>
-    <p class="note"><b>Note:</b> We assign the mNotesCursor field to a local variable at the
-    start of the method. This is done as an optimization of the Android code. Accessing a local
-    variable is much more efficient than accessing a field in the Dalvik VM, so by doing this
-    we make only one access to the field, and five accesses to the local variable, making the
-    routine much more efficient. It is recommended that you use this optimization when possible.</p>
-
-
-<h2>Step 6</h2>
-
-<p>The above <code>createNote()</code> and <code>onListItemClick()</code>
-    methods use an asynchronous Intent invocation. We need a handler for the callback, so here we fill
-    in the body of the <code>onActivityResult()</code>. </p>
-<p><code>onActivityResult()</code> is the overridden method
-    which will be called when an Activity returns with a result. (Remember, an Activity
-    will only return a result if launched with <code>startActivityForResult</code>.) The parameters provided
-    to the callback are: </p>
-  <ul>
-    <li><code>requestCode</code> &mdash; the original request code
-    specified in the Intent invocation (either <code>ACTIVITY_CREATE</code> or
-    <code>ACTIVITY_EDIT</code> for us).
-    </li>
-    <li><code>resultCode</code> &mdash; the result (or error code) of the call, this
-    should be zero if everything was OK, but may have a non-zero code indicating
-    that something failed. There are standard result codes available, and you
-    can also create your own constants to indicate specific problems.
-    </li>
-    <li><code>intent</code> &mdash; this is an Intent created by the Activity returning
-    results. It can be used to return data in the Intent "extras."
-    </li>
-  </ul>
-  <p>The combination of <code>startActivityForResult()</code> and
-  <code>onActivityResult()</code> can be thought of as an asynchronous RPC
-  (remote procedure call) and forms the recommended way for an Activity to invoke
-  another and share services.</p>
-  <p>Here's the code that belongs in your <code>onActivityResult()</code>:</p>
-    <pre>
-super.onActivityResult(requestCode, resultCode, intent);
-Bundle extras = intent.getExtras();
-
-switch(requestCode) {
-case ACTIVITY_CREATE:
-    String title = extras.getString(NotesDbAdapter.KEY_TITLE);
-    String body = extras.getString(NotesDbAdapter.KEY_BODY);
-    mDbHelper.createNote(title, body);
-    fillData();
-    break;
-case ACTIVITY_EDIT:
-    Long mRowId = extras.getLong(NotesDbAdapter.KEY_ROWID);
-    if (mRowId != null) {
-        String editTitle = extras.getString(NotesDbAdapter.KEY_TITLE);
-        String editBody = extras.getString(NotesDbAdapter.KEY_BODY);
-        mDbHelper.updateNote(mRowId, editTitle, editBody);
-    }
-    fillData();
-    break;
-}</pre>
-
-  <ul>
-    <li>
-      We are handling both the <code>ACTIVITY_CREATE</code> and
-      <code>ACTIVITY_EDIT</code> activity results in this method.
-    </li>
-    <li>
-      In the case of a create, we pull the title and body from the extras (retrieved from the
-      returned Intent) and use them to create a new note.
-    </li>
-    <li>
-      In the case of an edit, we pull the mRowId as well, and use that to update
-      the note in the database.
-    </li>
-    <li>
-      <code>fillData()</code> at the end ensures everything is up to date .
-    </li>
-  </ul>
-
-
-<h2>Step 7</h2>
-
-  <div class="sidebox-wrapper">
-  <div class="sidebox">
-    <h2>The Art of Layout</h2>
-    <p>The provided
-    note_edit.xml layout file is the most sophisticated one in the application we will be building,
-    but that doesn't mean it is even close to the kind of sophistication you will be likely to want
-    in real Android applications.</p>
-    <p>Creating a
-    good UI is part art and part science, and the rest is work. Mastery of <a
-    href="{@docRoot}guide/topics/ui/declaring-layout.html">XML Layouts</a> is an essential part of
-creating
-    a good looking Android application.</p>
-    <p>Take a look at the
-    <a href="{@docRoot}resources/tutorials/views/index.html">Hello Views</a>
-    for some example layouts and how to use them. The ApiDemos sample project is also a
-    great resource from which to learn how to create different layouts.</p>
-  </div>
-  </div>
-
-<p>Open the file <code>note_edit.xml</code> that has been provided and take a
-    look at it. This is the UI code for the Note Editor.</p>
-    <p>This is the most
-    sophisticated UI we have dealt with yet. The file is given to you to avoid
-    problems that may sneak in when typing the code. (The XML is very strict
-    about case sensitivity and structure, mistakes in these are the usual cause
-    of problems with layout.)</p>
-    <p>There is a new parameter used
-    here that we haven't seen before: <code>android:layout_weight</code> (in
-    this case set to use the value 1 in each case).</p>
-    <p><code>layout_weight</code> is used in LinearLayouts
-    to assign "importance" to Views within the layout. All Views have a default
-    <code>layout_weight</code> of zero, meaning they take up only as much room
-    on the screen as they need to be displayed. Assigning a value higher than
-    zero will split up the rest of the available space in the parent View, according
-    to the value of each View's <code>layout_weight</code> and its ratio to the
-    overall <code>layout_weight</code> specified in the current layout for this
-    and other View elements.</p>
-    <p>To give an example: let's say we have a text label
-    and two text edit elements in a horizontal row. The label has no
-    <code>layout_weight</code> specified, so it takes up the minimum space
-    required to render. If the <code>layout_weight</code> of each of the two
-    text edit elements is set to 1, the remaining width in the parent layout will
-    be split equally between them (because we claim they are equally important).
-    If the first one has a <code>layout_weight</code> of 1
-    and the second has a <code>layout_weight</code> of 2, then one third of the
-    remaining space will be given to the first, and two thirds to the
-    second (because we claim the second one is more important).</p>
-    <p>This layout also demonstrates how to nest multiple layouts
-    inside each other to achieve a more complex and pleasant layout. In this
-    example, a horizontal linear layout is nested inside the vertical one to
-    allow the title label and text field to be alongside each other,
-    horizontally.</p>
-
-
-<h2 style="clear:right;">Step 8</h2>
-
-	<p>Create a <code>NoteEdit</code> class that extends
-    <code>android.app.Activity</code>.</p>
-    <p>This is the first time we will have
-    created an Activity without the Android Eclipse plugin doing it for us. When
-    you do so, the <code>onCreate()</code> method is not automatically
-    overridden for you. It is hard to imagine an Activity that doesn't override
-    the <code>onCreate()</code> method, so this should be the first thing you do.</p>
-  <ol>
-    <li>Right click on the <code>com.android.demo.notepad2</code> package
-    in the Package Explorer, and select <strong>New</strong> &gt; <strong>Class</strong> from the popup
-    menu.</li>
-    <li>Fill in <code>NoteEdit</code> for the <code>Name:</code> field in the
-    dialog.</li>
-    <li>In the <code>Superclass:</code> field, enter
-    <code>android.app.Activity</code> (you can also just type Activity and hit
-    Ctrl-Space on Windows and Linux or Cmd-Space on the Mac, to invoke code
-    assist and find the right package and class).</li>
-    <li>Click <strong>Finish</strong>.</li>
-    <li>In the resulting <code>NoteEdit</code> class, right click in the editor
-    window and select <strong>Source</strong> &gt; <strong>Override/Implement Methods...</strong></li>
-    <li>Scroll down through the checklist in the dialog until you see
-    <code>onCreate(Bundle)</code> &mdash; and check the box next to it.</li>
-    <li>Click <strong>OK</strong>.<p>The method should now appear in your class.</p></li>
-  </ol>
-
-<h2>Step 9</h2>
-
-<p>Fill in the body of the <code>onCreate()</code> method for <code>NoteEdit</code>.</p>
-
-<p>This will set the title of our new Activity to say "Edit Note" (one
-    of the strings defined in <code>strings.xml</code>). It will also set the
-    content view to use our <code>note_edit.xml</code> layout file. We can then
-    grab handles to the title and body text edit views, and the confirm button,
-    so that our class can use them to set and get the note title and body,
-    and attach an event to the confirm button for when it is pressed by the
-    user.</p>
-    <p>We can then unbundle the values that were passed in to the Activity
-    with the extras Bundle attached to the calling Intent. We'll use them to pre-populate
-    the title and body text edit views so that the user can edit them.
-    Then we will grab and store the <code>mRowId</code> so we can keep
-    track of what note the user is editing.</p>
-
-  <ol>
-    <li>
-      Inside <code>onCreate()</code>, set up the layout:<br>
-      <pre>setContentView(R.layout.note_edit);</pre>
-    </li>
-    <li>
-      Change the Activity title to the "Edit Note" string:
-      <pre>setTitle(R.string.edit_note);</pre>
-    </li>
-    <li>
-      Find the {@link android.widget.EditText} and {@link android.widget.Button} components we need:
-      <p>These are found by the
-      IDs associated to them in the R class, and need to be cast to the right
-      type of <code>View</code> (<code>EditText</code> for the two text views,
-      and <code>Button</code> for the confirm button):</p>
-      <pre>
-mTitleText = (EditText) findViewById(R.id.title);
-mBodyText = (EditText) findViewById(R.id.body);
-Button confirmButton = (Button) findViewById(R.id.confirm);</pre>
-      <p>Note that <code>mTitleText</code> and <code>mBodyText</code> are member
-      fields (you need to declare them at the top of the class definition).</p>
-    </li>
-    <li>At the top of the class, declare a <code>Long mRowId</code> private field to store
-      the current <code>mRowId</code> being edited (if any).
-    </li>
-    <li>Continuing inside <code>onCreate()</code>,
-      add code to initialize the <code>title</code>, <code>body</code> and
-      <code>mRowId</code> from the extras Bundle in
-      the Intent (if it is present):<br>
-      <pre>
-mRowId = null;
-Bundle extras = getIntent().getExtras();
-if (extras != null) {
-    String title = extras.getString(NotesDbAdapter.KEY_TITLE);
-    String body = extras.getString(NotesDbAdapter.KEY_BODY);
-    mRowId = extras.getLong(NotesDbAdapter.KEY_ROWID);
-
-    if (title != null) {
-        mTitleText.setText(title);
-    }
-    if (body != null) {
-        mBodyText.setText(body);
-    }
-}</pre>
-     <ul>
-      <li>
-        We are pulling the <code>title</code> and
-        <code>body</code> out of the
-        <code>extras</code> Bundle that was set from the
-        Intent invocation.
-      </li><li>
-        We also null-protect the text field setting (i.e., we don't want to set
-        the text fields to null accidentally).</li>
-     </ul>
-    </li>
-    <li>
-      Create an <code>onClickListener()</code> for the button:
-      <p>Listeners can be one of the more confusing aspects of UI
-      implementation, but
-      what we are trying to achieve in this case is simple. We want an
-      <code>onClick()</code> method to be called when the user presses the
-      confirm button, and use that to do some work and return the values
-      of the edited note to the Intent caller. We do this using something called
-      an anonymous inner class. This is a bit confusing to look at unless you
-      have seen them before, but all you really need to take away from this is
-      that you can refer to this code in the future to see how to create a
-      listener and attach it to a button. (Listeners are a common idiom
-      in Java development, particularly for user interfaces.) Here's the empty listener:<br>
-      <pre>
-confirmButton.setOnClickListener(new View.OnClickListener() {
-
-    public void onClick(View view) {
-
-    }
-
-});</pre>
-    </li>
-  </ol>
-<h2>Step 10</h2>
-
-<p>Fill in the body of the <code>onClick()</code> method of the <code>OnClickListener</code> created in the last step.</p>
-
-    <p>This is the code that will be run when the user clicks on the
-    confirm button. We want this to grab the title and body text from the edit
-    text fields, and put them into the return Bundle so that they can be passed
-    back to the Activity that invoked this <code>NoteEdit</code> Activity. If the
-    operation is an edit rather than a create, we also want to put the
-    <code>mRowId</code> into the Bundle so that the
-    <code>Notepadv2</code> class can save the changes back to the correct
-    note.</p>
-  <ol>
-    <li>
-      Create a <code>Bundle</code> and put the title and body text into it using the
-      constants defined in Notepadv2 as keys:<br>
-      <pre>
-Bundle bundle = new Bundle();
-
-bundle.putString(NotesDbAdapter.KEY_TITLE, mTitleText.getText().toString());
-bundle.putString(NotesDbAdapter.KEY_BODY, mBodyText.getText().toString());
-if (mRowId != null) {
-    bundle.putLong(NotesDbAdapter.KEY_ROWID, mRowId);
-}</pre>
-    </li>
-    <li>
-      Set the result information (the Bundle) in a new Intent and finish the Activity:
-      <pre>
-Intent mIntent = new Intent();
-mIntent.putExtras(bundle);
-setResult(RESULT_OK, mIntent);
-finish();</pre>
-      <ul>
-      <li>The Intent is simply our data carrier that carries our Bundle
-      (with the title, body and mRowId).</li>
-      <li>The <code>setResult()</code> method is used to set the result
-      code and return Intent to be passed back to the
-      Intent caller. In this case everything worked, so we return RESULT_OK for the
-      result code.</li>
-      <li>The <code>finish()</code> call is used to signal that the Activity
-      is done (like a return call). Anything set in the Result will then be
-      returned to the caller, along with execution control.</li>
-      </ul>
-    </li>
-   </ol>
-   <p>The full <code>onCreate()</code> method (plus supporting class fields) should
-      now look like this:</p>
-      <pre>
-private EditText mTitleText;
-private EditText mBodyText;
-private Long mRowId;
-
-&#64;Override
-protected void onCreate(Bundle savedInstanceState) {
-    super.onCreate(savedInstanceState);
-    setContentView(R.layout.note_edit);
-
-    mTitleText = (EditText) findViewById(R.id.title);
-    mBodyText = (EditText) findViewById(R.id.body);
-
-    Button confirmButton = (Button) findViewById(R.id.confirm);
-
-    mRowId = null;
-    Bundle extras = getIntent().getExtras();
-    if (extras != null) {
-        String title = extras.getString(NotesDbAdapter.KEY_TITLE);
-        String body = extras.getString(NotesDbAdapter.KEY_BODY);
-        mRowId = extras.getLong(NotesDbAdapter.KEY_ROWID);
-
-        if (title != null) {
-            mTitleText.setText(title);
-        }
-        if (body != null) {
-            mBodyText.setText(body);
-        }
-    }
-
-    confirmButton.setOnClickListener(new View.OnClickListener() {
-
-        public void onClick(View view) {
-            Bundle bundle = new Bundle();
-
-            bundle.putString(NotesDbAdapter.KEY_TITLE, mTitleText.getText().toString());
-            bundle.putString(NotesDbAdapter.KEY_BODY, mBodyText.getText().toString());
-            if (mRowId != null) {
-                bundle.putLong(NotesDbAdapter.KEY_ROWID, mRowId);
-            }
-
-            Intent mIntent = new Intent();
-            mIntent.putExtras(bundle);
-            setResult(RESULT_OK, mIntent);
-            finish();
-        }
-    });
-}</pre>
-    </li>
-  </ol>
-
-<h2>Step 11</h2>
-
-  <div class="sidebox-wrapper">
-  <div class="sidebox">
-    <h2>The All-Important Android Manifest File</h2>
-  <p>The AndroidManifest.xml file is the way in which Android sees your
-    application. This file defines the category of the application, where
-    it shows up (or even if it shows up) in the launcher or settings, what
-    activities, services, and content providers it defines, what intents it can
-    receive, and more. </p>
-    <p>For more information, see the reference document
-    <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">The AndroidManifest.xml
-File</a></p>
-  </div>
-  </div>
-
-<p>Finally, the new Activity has to be defined in the manifest file:</p>
-    <p>Before the new Activity can be seen by Android, it needs its own
-    Activity entry in the <code>AndroidManifest.xml</code> file. This is to let
-    the system know that it is there and can be called. We could also specify
-    which IntentFilters the activity implements here, but we are going to skip
-    this for now and just let Android know that the Activity is
-    defined.</p>
-    <p>There is a Manifest editor included in the Eclipse plugin that makes it much easier
-    to edit the AndroidManifest file, and we will use this. If you prefer to edit the file directly
-    or are not using the Eclipse plugin, see the box at the end for information on how to do this
-    without using the new Manifest editor.<p>
-    <ol>
-    <li>Double click on the <code>AndroidManifest.xml</code> file in the package explorer to open it.
-    </li>
-    <li>Click the <strong>Application</strong> tab at the bottom of the Manifest editor.</li>
-    <li>Click <strong>Add...</strong> in the Application Nodes section.
-      <p>If you see a dialog with radiobuttons at the top, select the top radio button:
-      "Create a new element at the top level, in Application".</p></li>
-    <li>Make sure "(A) Activity" is selected in the selection pane of the dialog, and click <strong>OK</strong>.</li>
-    <li>Click on the new "Activity" node, in the Application Nodes section, then
-    type <code>.NoteEdit</code> into the <em>Name*</em>
-    field to the right. Press Return/Enter.</li>
-    </ol>
-    <p>The Android Manifest editor helps you add more complex entries into the AndroidManifest.xml
-    file, have a look around at some of the other options available (but be careful not to select
-    them otherwise they will be added to your Manifest). This editor should help you understand
-    and alter the AndroidManifest.xml file as you move on to more advanced Android applications.</p>
-
-    <p class="note">If you prefer to edit this file directly, simply open the
-    <code>AndroidManifest.xml</code> file and look at the source (use the
-    <code>AndroidManifest.xml</code> tab in the eclipse editor to see the source code directly).
-    Then edit the file as follows:<br>
-    <code>&lt;activity android:name=".NoteEdit" /&gt;</code><br><br>
-    This should be placed just below the line that reads:<br>
-    <code>&lt;/activity&gt;</code> for the <code>.Notepadv2</code> activity.</p>
-
-<h2 style="clear:right;">Step 12</h2>
-
-<p>Now Run it!</p>
-<p>You should now be able to add real notes from
-the menu, as well as delete an existing one. Notice that in order to delete, you must
-first use the directional controls on the device to highlight the note.
-Furthermore, selecting a note title from the list should bring up the note
-editor to let you edit it. Press confirm when finished to save the changes
-back to the database.
-
-<h2>Solution and Next Steps</h2>
-
-<p>You can see the solution to this exercise in  <code>Notepadv2Solution</code>
-from the zip file to compare with your own.</p>
-<p>Now try editing a note, and then hitting the back button on the emulator
-instead of the confirm button (the back button is below the menu button). You
-will see an error come up. Clearly our application still has some problems.
-Worse still, if you did make some changes and hit the back button, when you go
-back into the notepad to look at the note you changed, you will find that all
-your changes have been lost. In the next exercise we will fix these
-problems.</p>
-
-<p>
-Once you are ready, move on to <a href="notepad-ex3.html">Tutorial
-Exercise 3</a> where you will fix the problems with the back button and lost
-edits by introducing a proper life cycle into the NoteEdit Activity.</p>
-
-
diff --git a/docs/html/training/notepad/notepad-ex3.jd b/docs/html/training/notepad/notepad-ex3.jd
deleted file mode 100644
index 648f9f2..0000000
--- a/docs/html/training/notepad/notepad-ex3.jd
+++ /dev/null
@@ -1,367 +0,0 @@
-excludeFromSuggestions=true
-page.title=Notepad Exercise 3
-parent.title=Notepad Tutorial
-parent.link=index.html
-@jd:body
-
-
-<p><em>In this exercise, you will use life-cycle event callbacks to store and
-retrieve application state data. This exercise demonstrates:</em></p>
-<ul>
-<li><em>Life-cycle events and how your application can use them</em></li>
-<li><em>Techniques for maintaining application state</em></li>
-</ul>
-
-<div style="float:right;white-space:nowrap">
-	[<a href="notepad-ex1.html">Exercise 1</a>]
-	[<a href="notepad-ex2.html">Exercise 2</a>]
-	<span style="color:#BBB;">
-		[<a href="notepad-ex3.html" style="color:#BBB;">Exercise 3</a>]
-	</span>
-	[<a href="notepad-extra-credit.html">Extra Credit</a>]
-</div>
-
-<h2>Step 1</h2>
-
-<p>Import <code>Notepadv3</code> into Eclipse. If you see an error about
-<code>AndroidManifest.xml,</code> or some problems related to an Android zip
-file, right click on the project and select <strong>Android Tools</strong> &gt;
-<strong>Fix Project Properties</strong> from the popup menu. The starting point for this exercise is
-exactly where we left off at the end of the Notepadv2. </p>
-<p>The current application has some problems &mdash; hitting the back button when editing
-causes a crash, and anything else that happens during editing will cause the
-edits to be lost.</p>
-<p>To fix this, we will move most of the functionality for creating and editing
-the note into the NoteEdit class, and introduce a full life cycle for editing
-notes.</p>
-
-  <ol>
-    <li>Remove the code in <code>NoteEdit</code> that parses the title and body
-    from the extras Bundle.
-    <p>Instead, we are going to use the <code>DBHelper</code> class
-    to access the notes from the database directly. All we need passed into the
-    NoteEdit Activity is a <code>mRowId</code> (but only if we are editing, if creating we pass
-    nothing). Remove these lines:</p>
-      <pre>
-String title = extras.getString(NotesDbAdapter.KEY_TITLE);
-String body = extras.getString(NotesDbAdapter.KEY_BODY);</pre>
-    </li>
-    <li>We will also get rid of the properties that were being passed in
-    the <code>extras</code> Bundle, which we were using to set the title
-    and body text edit values in the UI. So delete:
-    <pre>
-if (title != null) {
-    mTitleText.setText(title);
-}
-if (body != null) {
-    mBodyText.setText(body);
-}</pre>
-    </li>
-  </ol>
-
-<h2>Step 2</h2>
-
-<p>Create a class field for a <code>NotesDbAdapter</code> at the top of the NoteEdit class:</p>
-    <pre>&nbsp;&nbsp;&nbsp; private NotesDbAdapter mDbHelper;</pre>
-<p>Also add an instance of <code>NotesDbAdapter</code> in the
-    <code>onCreate()</code> method (right below the <code>super.onCreate()</code> call):</p>
-    <pre>
-&nbsp;&nbsp;&nbsp; mDbHelper = new NotesDbAdapter(this);<br>
-&nbsp;&nbsp;&nbsp; mDbHelper.open();</pre>
-
-<h2>Step 3</h2>
-
-<p>In <code>NoteEdit</code>, we need to check the <var>savedInstanceState</var> for the
-<code>mRowId</code>, in case the note
-    editing contains a saved state in the Bundle, which we should recover (this would happen
-  if our Activity lost focus and then restarted).</p>
-  <ol>
-    <li>
-      Replace the code that currently initializes the <code>mRowId</code>:<br>
-      <pre>
-        mRowId = null;
-
-        Bundle extras = getIntent().getExtras();
-        if (extras != null) {
-            mRowId = extras.getLong(NotesDbAdapter.KEY_ROWID);
-        }
-        </pre>
-        with this:
-        <pre>
-        mRowId = (savedInstanceState == null) ? null :
-            (Long) savedInstanceState.getSerializable(NotesDbAdapter.KEY_ROWID);
-        if (mRowId == null) {
-            Bundle extras = getIntent().getExtras();
-            mRowId = extras != null ? extras.getLong(NotesDbAdapter.KEY_ROWID)
-                                    : null;
-        }
-        </pre>
-    </li>
-    <li>
-      Note the null check for <code>savedInstanceState</code>, and we still need to load up
-      <code>mRowId</code> from the <code>extras</code> Bundle if it is not
-      provided by the <code>savedInstanceState</code>. This is a ternary operator shorthand
-      to safely either use the value or null if it is not present.
-    </li>
-    <li>
-      Note the use of <code>Bundle.getSerializable()</code> instead of
-      <code>Bundle.getLong()</code>.  The latter encoding returns a <code>long</code> primitive and
-      so can not be used to represent the case when <code>mRowId</code> is <code>null</code>.
-    </li>
-  </ol>
-
-<h2>Step 4</h2>
-
-<p>Next, we need to populate the fields based on the <code>mRowId</code> if we
-    have it:</p>
-    <pre>populateFields();</pre>
-    <p>This goes before the <code>confirmButton.setOnClickListener()</code> line.
-    We'll define this method in a moment.</p>
-
-<h2>Step 5</h2>
-
-<p>Get rid of the Bundle creation and Bundle value settings from the
-    <code>onClick()</code> handler method. The Activity no longer needs to
-    return any extra information to the caller. And because we no longer have
-    an Intent to return, we'll use the shorter version
-    of <code>setResult()</code>:</p>
-    <pre>
-public void onClick(View view) {
-    setResult(RESULT_OK);
-    finish();
-}</pre>
-    <p>We will take care of storing the updates or new notes in the database
-    ourselves, using the life-cycle methods.</p>
-
-    <p>The whole <code>onCreate()</code> method should now look like this:</p>
-    <pre>
-super.onCreate(savedInstanceState);
-
-mDbHelper = new NotesDbAdapter(this);
-mDbHelper.open();
-
-setContentView(R.layout.note_edit);
-
-mTitleText = (EditText) findViewById(R.id.title);
-mBodyText = (EditText) findViewById(R.id.body);
-
-Button confirmButton = (Button) findViewById(R.id.confirm);
-
-mRowId = (savedInstanceState == null) ? null :
-    (Long) savedInstanceState.getSerializable(NotesDbAdapter.KEY_ROWID);
-if (mRowId == null) {
-    Bundle extras = getIntent().getExtras();
-    mRowId = extras != null ? extras.getLong(NotesDbAdapter.KEY_ROWID)
-                            : null;
-}
-
-populateFields();
-
-confirmButton.setOnClickListener(new View.OnClickListener() {
-
-    public void onClick(View view) {
-        setResult(RESULT_OK);
-        finish();
-    }
-
-});</pre>
-
-<h2>Step 6</h2>
-
-<p>Define the <code>populateFields()</code> method.</p>
-    <pre>
-private void populateFields() {
-    if (mRowId != null) {
-        Cursor note = mDbHelper.fetchNote(mRowId);
-        startManagingCursor(note);
-        mTitleText.setText(note.getString(
-	            note.getColumnIndexOrThrow(NotesDbAdapter.KEY_TITLE)));
-        mBodyText.setText(note.getString(
-                note.getColumnIndexOrThrow(NotesDbAdapter.KEY_BODY)));
-    }
-}</pre>
-<p>This method uses the <code>NotesDbAdapter.fetchNote()</code> method to find the right note to
-edit, then it calls <code>startManagingCursor()</code> from the <code>Activity</code> class, which
-is an Android convenience method provided to take care of the Cursor life-cycle. This will release
-and re-create resources as dictated by the Activity life-cycle, so we don't need to worry about
-doing that ourselves. After that, we just look up the title and body values from the Cursor
-and populate the View elements with them.</p>
-
-
-<h2>Step 7</h2>
-
-  <div class="sidebox-wrapper">
-  <div class="sidebox">
-    <h2>Why handling life-cycle events is important</h2>
-    <p>If you are used to always having control in your applications, you
-    might not understand why all this life-cycle work is necessary. The reason
-    is that in Android, you are not in control of your Activity, the
-    operating system is!</p>
-    <p>As we have already seen, the Android model is based around activities
-    calling each other. When one Activity calls another, the current Activity
-    is paused at the very least, and may be killed altogether if the
-    system starts to run low on resources. If this happens, your Activity will
-    have to store enough state to come back up later, preferably in the same
-    state it was in when it was killed.</p>
-    <p>
-    Activities have a <a
-href="{@docRoot}guide/components/activities.html#Lifecycle">well-defined life
-cycle</a>.
-    Lifecycle events can happen even if you are not handing off control to
-    another Activity explicitly. For example, perhaps a call comes in to the
-    handset. If this happens, and your Activity is running, it will be swapped
-    out while the call Activity takes over.</p>
-  </div>
-  </div>
-
-<p>Still in the <code>NoteEdit</code> class, we now override the methods
-   <code>onSaveInstanceState()</code>, <code>onPause()</code> and
-   <code>onResume()</code>. These are our life-cycle methods
-   (along with <code>onCreate()</code> which we already have).</p>
-
-<p><code>onSaveInstanceState()</code> is called by Android if the
-    Activity is being stopped and <strong>may be killed before it is
-    resumed!</strong> This means it should store any state necessary to
-    re-initialize to the same condition when the Activity is restarted. It is
-    the counterpart to the <code>onCreate()</code> method, and in fact the
-    <code>savedInstanceState</code> Bundle passed in to <code>onCreate()</code> is the same
-    Bundle that you construct as <code>outState</code> in the
-    <code>onSaveInstanceState()</code> method.</p>
-
-<p><code>onPause()</code> and <code>onResume()</code> are also
-    complimentary methods. <code>onPause()</code> is always called when the
-    Activity ends, even if we instigated that (with a <code>finish()</code> call for example).
-    We will use this to save the current note back to the database. Good
-    practice is to release any resources that can be released during an
-    <code>onPause()</code> as well, to take up less resources when in the
-    passive state. <code>onResume()</code> will call our <code>populateFields()</code> method
-    to read the note out of the database again and populate the fields.</p>
-
-<p>So, add some space after the <code>populateFields()</code> method
-  and add the following life-cycle methods:</p>
-  <ol type="a">
-    <li><code>
-      onSaveInstanceState()</code>:
-      <pre>
-    &#64;Override
-    protected void onSaveInstanceState(Bundle outState) {
-        super.onSaveInstanceState(outState);
-        saveState();
-        outState.putSerializable(NotesDbAdapter.KEY_ROWID, mRowId);
-    }</pre>
-    <p>We'll define <code>saveState()</code> next.</p>
-    </li>
-    <li><code>
-      onPause()</code>:
-      <pre>
-    &#64;Override
-    protected void onPause() {
-        super.onPause();
-        saveState();
-    }</pre>
-    </li>
-    <li><code>
-      onResume()</code>:
-      <pre>
-    &#64;Override
-    protected void onResume() {
-        super.onResume();
-        populateFields();
-    }</pre>
-    </li>
-  </ol>
-<p>Note that <code>saveState()</code> must be called in both <code>onSaveInstanceState()</code>
-and <code>onPause()</code> to ensure that the data is saved.  This is because there is no
-guarantee that <code>onSaveInstanceState()</code> will be called and because when it <em>is</em>
-called, it is called before <code>onPause()</code>.</p>
-
-
-<h2 style="clear:right;">Step 8</h2>
-
-<p>Define the <code>saveState()</code> method to put the data out to the
-database.</p>
-    <pre>
-     private void saveState() {
-        String title = mTitleText.getText().toString();
-        String body = mBodyText.getText().toString();
-
-        if (mRowId == null) {
-            long id = mDbHelper.createNote(title, body);
-            if (id > 0) {
-                mRowId = id;
-            }
-        } else {
-            mDbHelper.updateNote(mRowId, title, body);
-        }
-    }</pre>
-  <p>Note that we capture the return value from <code>createNote()</code> and if a valid row ID is
-  returned, we store it in the <code>mRowId</code> field so that we can update the note in future
-  rather than create a new one (which otherwise might happen if the life-cycle events are
-  triggered).</p>
-
-
-<h2 style="clear:right;">Step 9</h2>
-
-<p>Now pull out the previous handling code from the
-    <code>onActivityResult()</code> method in the <code>Notepadv3</code>
-    class.</p>
-<p>All of the note retrieval and updating now happens within the
-    <code>NoteEdit</code> life cycle, so all the <code>onActivityResult()</code>
-    method needs to do is update its view of the data, no other work is
-    necessary. The resulting method should look like this:</p>
-<pre>
-&#64;Override
-protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
-    super.onActivityResult(requestCode, resultCode, intent);
-    fillData();
-}</pre>
-
-<p>Because the other class now does the work, all this has to do is refresh
-      the data.</p>
-
-<h2>Step 10</h2>
-
-<p>Also remove the lines which set the title and body from the
-    <code>onListItemClick()</code> method (again they are no longer needed,
-    only the <code>mRowId</code> is):</p>
-<pre>
-    Cursor c = mNotesCursor;
-    c.moveToPosition(position);</pre>
-<br>
-and also remove:
-<br>
-<pre>
-    i.putExtra(NotesDbAdapter.KEY_TITLE, c.getString(
-                    c.getColumnIndex(NotesDbAdapter.KEY_TITLE)));
-    i.putExtra(NotesDbAdapter.KEY_BODY, c.getString(
-                    c.getColumnIndex(NotesDbAdapter.KEY_BODY)));</pre>
-<br>
-so that all that should be left in that method is:
-<br>
-<pre>
-    super.onListItemClick(l, v, position, id);
-    Intent i = new Intent(this, NoteEdit.class);
-    i.putExtra(NotesDbAdapter.KEY_ROWID, id);
-    startActivityForResult(i, ACTIVITY_EDIT);</pre>
-
-  <p>You can also now remove the mNotesCursor field from the class, and set it back to using
-  a local variable in the <code>fillData()</code> method:
-<br><pre>
-    Cursor notesCursor = mDbHelper.fetchAllNotes();</pre></p>
-  <p>Note that the <code>m</code> in <code>mNotesCursor</code> denotes a member field, so when we
-  make <code>notesCursor</code> a local variable, we drop the <code>m</code>. Remember to rename the
-  other occurrences of <code>mNotesCursor</code> in your <code>fillData()</code> method.
-</ol>
-<p>
-Run it! (use <em>Run As -&gt; Android Application</em> on the project right
-click menu again)</p>
-
-<h2>Solution and Next Steps</h2>
-
-<p>You can see the solution to this exercise in <code>Notepadv3Solution</code>
-from
-the zip file to compare with your own.</p>
-<p>
-When you are ready, move on to the <a href="notepad-extra-credit.html">Tutorial
-Extra Credit</a> exercise, where you can use the Eclipse debugger to
-examine the life-cycle events as they happen.</p>
diff --git a/docs/html/training/notepad/notepad-extra-credit.jd b/docs/html/training/notepad/notepad-extra-credit.jd
deleted file mode 100644
index 8ab2021..0000000
--- a/docs/html/training/notepad/notepad-extra-credit.jd
+++ /dev/null
@@ -1,71 +0,0 @@
-excludeFromSuggestions=true
-page.title=Notepad Extra Credit
-parent.title=Notepad Tutorial
-parent.link=index.html
-@jd:body
-
-
-<p><em>In this exercise, you will use the debugger to look at the work you did
-in Exercise 3. This exercise demonstrates:</em></p>
-<ul>
-<li><em>How to set breakpoints to observe execution</em> </li>
-<li><em>How to run your application in debug mode</code></em></li>
-</ul>
-
-<div style="float:right;white-space:nowrap">
-
-	[<a href="notepad-ex1.html">Exercise 1</a>]
-	[<a href="notepad-ex2.html">Exercise 2</a>]
-	[<a href="notepad-ex3.html">Exercise 3</a>]
-	<span style="color:#BBB;">
-		[<a href="notepad-extra-credit.html" style="color:#BBB;">Extra Credit</a>]
-	</span>
-</div>
-
-<h2>Step 1</h2>
-
-<p>Using the working <code>Notepadv3</code>, put breakpoints in the code at the
-    beginning of the <code>onCreate()</code>, <code>onPause()</code>,
-    <code>onSaveInstanceState()</code> and <code>onResume()</code> methods in the
-    <code>NoteEdit</code> class (if you are not familiar with Eclipse, just
-    right click in the narrow grey border on the left of the edit window at the
-    line you want a breakpoint, and select <em>Toggle Breakpoint</em>, you
-should see a blue dot appear).</p>
- 
-<h2>Step 2</h2>
-
-<p>Now start the notepad demo in debug mode:</p>
-
-<ol type="a">
-    <li>
-      Right click on the <code>Notepadv3</code> project and from the Debug menu
-      select <em>Debug As -&gt; Android Application.</em></li>
-    <li>
-      The Android emulator should say <em>"waiting for debugger to connect"</em>
-      briefly and then run the application.</li>
-  <li>
-      If it gets stuck on the waiting... screen, quit the emulator and Eclipse,
-      from the command line do an <code>adb kill-server</code>, and then restart
-Eclipse and try again.</li></ol>
-      
-      <h2>Step 3</h2>
-
-<p>When you edit or create a new note you should see the breakpoints getting
-    hit and the execution stopping.</p>
-    
-    <h2>Step 4</h2>
-
-<p>Hit the Resume button to let execution continue (yellow rectangle with a
-green triangle to its right in the Eclipse toolbars near the top).</p>
-
-<h2>Step 5</h2>
-
-<p>Experiment a bit with the confirm and back buttons, and try pressing Home and
-    making other mode changes. Watch what life-cycle events are generated and
-when.</p>
-
-<p>The Android Eclipse plugin not only offers excellent debugging support for
-your application development, but also superb profiling support. You can also
-try using <a href="{@docRoot}tools/help/traceview.html">Traceview</a> to profile your application. If your application is running too slow, this can help you 
-find the bottlenecks and fix them.</p>
-
diff --git a/docs/html/training/notepad/notepad-index.jd b/docs/html/training/notepad/notepad-index.jd
deleted file mode 100644
index fde43fa..0000000
--- a/docs/html/training/notepad/notepad-index.jd
+++ /dev/null
@@ -1,144 +0,0 @@
-excludeFromSuggestions=true
-page.title=Notepad Tutorial
-@jd:body
-
-
-<p>The  tutorial in this section gives you a &quot;hands-on&quot; introduction
-to the Android framework and the  tools you use to build  applications on it.
-Starting from a preconfigured project file, it guides you through the process of
-developing a simple notepad application and provides concrete examples of how to
-set up the project,  develop the application logic and user interface, and then
-compile and run the application. </p>
-
-<p>The tutorial presents the notepad application development as a set of 
-exercises (see below), each consisting of several steps. You can follow along 
-with the steps in each exercise and gradually build up and refine your  
-application. The exercises explain each step in detail and provide all the 
-sample code you need to complete the application. </p>
-
-<p>When you are finished with the tutorial, you will have created a functioning
-Android application and learned in depth about many of the most important
-concepts in Android development. If you want to add more complex features to
-your application, you can examine the code in an alternative implementation
-of a notepad application, in the 
-<a href="{@docRoot}samples/NotePad/index.html">Sample Code</a> documentation. </p>
-
-
-<a name="who"></a>
-<h2>Who Should Use this Tutorial</h2>
-
-<p>This tutorial is designed for  experienced developers, especially those with 
-knowledge of the Java programming language. If you haven't written Java
-applications before, you can still use the tutorial, but you might need to work
-at a slower pace. </p>
-
-<p>The tutorial  assumes that you have some familiarity with the basic Android
-application concepts and terminology. If you aren't yet familiar with those, you
-should read <a href="{@docRoot}intro/anatomy.html">Overview of an Android 
-Application</a> before continuing. </p>
-
-<p>Also note that this tutorial uses
-the Eclipse development environment, with the Android plugin installed. If you
-are not using Eclipse, you can  follow  the exercises and build the application,
-but you will need to determine how to accomplish the Eclipse-specific
-steps in your environment. </p>
-
-<a name="preparing"></a>
-<h2>Preparing for the Exercises</h2>
-
-<p>This tutorial builds on the information provided in the <a
-href="{@docRoot}intro/installing.html">Installing the SDK</a> and <a 
-href="{@docRoot}intro/hello-android.html">Hello Android</a>
-documents, which explain in detail how to set up your development environment
-for building Android applications. Before you start this tutorial, you should
-read both these documents, have the SDK installed, and your work environment set up.</p>
-
-<p>To prepare for this lesson:</p>
-
-<ol>
-  <li>Download the <a href="codelab/NotepadCodeLab.zip">project
-      exercises archive (.zip)</a></li>
-  <li>Unpack the archive file to a suitable location on your machine</li>
-  <li>Open the <code>NotepadCodeLab</code> folder</li>
-</ol>
-
-<p>Inside the <code>NotepadCodeLab</code> folder, you should see six project
-files: <code>Notepadv1</code>,
-    <code>Notepadv2</code>, <code>Notepadv3</code>,
-    <code>Notepadv1Solution</code>, <code>Notepadv2Solution</code>
-    and <code>Notepadv3Solution</code>. The <code>Notepadv#</code> projects are
-the starting points for each of the exercises, while the
-<code>Notepadv#Solution</code> projects are the exercise
-    solutions. If you are having trouble with a particular exercise, you
-    can compare your current work against the exercise solution.</p>
-
-<a name="exercises"></a>
-<h2> Exercises</h2>
-
-  <p>The table below lists the tutorial exercises and describes the development
-areas that each covers. Each exercise assumes that you have completed any
-previous exercises.</p>
-
-  <table border="0" style="padding:4px;spacing:2px;" summary="This
-table lists the
-tutorial examples and describes what each covers. ">
-    <tr>
-      <th width="120"><a href="{@docRoot}intro/tutorial-ex1.html">Exercise
-1</a></th>
-      <td>Start here. Construct a simple notes list that lets the user add new notes but not
-edit them. Demonstrates the basics of <code>ListActivity</code> and creating
-and handling
-      menu options. Uses a SQLite database to store the notes.</td>
-    </tr>
-    <tr>
-      <th><a href="{@docRoot}intro/tutorial-ex2.html">Exercise 2</a></th>
-      <td>Add a second Activity to the
-application. Demonstrates constructing a
-new Activity, adding it to the Android manifest, passing data between the
-activities, and using more advanced screen layout. Also shows how to
-invoke another Activity to return a result, using
-<code>startActivityForResult()</code>.</td>
-    </tr>
-    <tr>
-      <th><a href="{@docRoot}intro/tutorial-ex3.html">Exercise 3</a></th>
-      <td>Add handling of life-cycle events to
-the application, to let it
-maintain application state across the life cycle. </td>
-    </tr>
-    <tr>
-    <th><a href="{@docRoot}intro/tutorial-extra-credit.html">Extra
-Credit</a></th>
-    <td>Demonstrates how to use the Eclipse
-debugger and how you can use it to
-view life-cycle events as they are generated. This section is optional but
-highly recommended.</td>
-    </tr>
-</table>
-
-
-<a name="other"></a>
-<h2>Other Resources and Further Learning</h2>
-<ul>
-<li>For a lighter but broader introduction to concepts not covered in the
-tutorial,
-take a look at <a href="{@docRoot}kb/commontasks.html">Common Android Tasks</a>.</li>
-<li>The Android SDK includes a variety of fully functioning sample applications
-that make excellent opportunities for further learning. You can find the sample
-applications in the <code>samples/</code> directory of your downloaded SDK.</li>
-<li>This tutorial draws from the full Notepad application included in the
-<code>samples/</code> directory of the SDK, though it does not match it exactly. 
-When you are done with the tutorial,
-it is highly recommended that you take a closer look at this version of the Notepad
-application, 
-as it demonstrates a variety of interesting additions for your application, 
-such as:</li>
-  <ul>
-  <li>Setting up a custom striped list for the list of notes.</li>
-  <li>Creating a custom text edit view that overrides the <code>draw()</code>
-method to
-    make it look like a lined notepad.</li>
-  <li>Implementing a full <code>ContentProvider</code> for notes.</li>
-  <li>Reverting and discarding edits instead of just automatically saving
-them.</li>
-</ul>
-</ul>
diff --git a/docs/html/training/performance/battery/network/action-any-traffic.jd b/docs/html/training/performance/battery/network/action-any-traffic.jd
new file mode 100644
index 0000000..eafb3b8
--- /dev/null
+++ b/docs/html/training/performance/battery/network/action-any-traffic.jd
@@ -0,0 +1,100 @@
+page.title=Optimizing General Network Use
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>This lesson teaches you to</h2>
+<ol>
+  <li><a href="#compress-data">Compress Data</a>
+  <li><a href="#cache-locally">Cache Files Locally</a></li>
+  <li><a href="#pre-fetch">Optimize Pre-Fetch Cache Size</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>
+  In general, reducing the amount of network traffic helps reduce battery drain.
+  In addition to the battery-optimization techniques of the previous lessons,
+  you should look at these general-purpose techniques and see if you can apply
+  them to your app.
+</p>
+
+<p>
+  This lesson briefly covers techniques that you can use to lower network traffic and
+  consequently reduce the battery drain caused by your app.
+</p>
+
+<h2 id="compress-data">Compress Data</h2>
+
+<iframe width="448" height="252"
+    src="//www.youtube.com/embed/IwxIIUypnTE?autohide=1&amp;showinfo=0"
+    frameborder="0" allowfullscreen=""
+    style="float: right; margin: 0 0 20px 20px;"></iframe>
+
+
+<p>
+  Reducing the amount of data sent or received over a network connection also
+  reduces the duration of the connection, which conserves battery. You can:
+</p>
+
+<ul>
+  <li>Compress data, using a compression technique such as GZIP compression.</li>
+
+  <li>Use succinct data protocols. While JSON and XML offer human-readability, and
+    language-flexibility, they are bandwidth-heavy formats, with
+    high serialization costs in the Android platform. Binary serialization formats,
+    such as <a href="https://developers.google.com/protocol-buffers/">Protocol Buffers</a> or
+    <a href="https://google.github.io/flatbuffers/">FlatBuffers</a> offer a smaller on-the-wire
+    packet size, as well as faster encoding and decoding time. If your application transfers a lot
+    of serialized data on a regular basis, these formats can yield benefits for decoding time and
+    transfer size.
+  </li>
+</ul>
+
+
+<h2 id="cache-locally">Cache Files Locally</h2>
+
+<iframe width="448" height="252"
+    src="//www.youtube.com/embed/7lxVqqWwTb0?autohide=1&amp;showinfo=0"
+    frameborder="0" allowfullscreen=""
+    style="float: left; margin: 0 20px 20px 0;"></iframe>
+
+
+<p>
+  Your app can avoid downloading duplicate data by caching. Always cache static resources,
+  including on-demand downloads such as full size images, and cache them for as long as reasonably
+  possible.
+</p>
+
+<p>
+  For example, you should consider this approach for a networked app that displays data from
+  user-initiated network requests as the primary content on the screen. When the user opens this
+  screen the first time, the app should display a splash screen. Subsequent loads should initially
+  load with the data that was cached from the last network request. The screen reloads with
+  new data once the network request is complete.
+</p>
+
+<p>
+  To learn about caching, watch the video. To implement caching in your app, see <a href=
+  "{@docRoot}training/efficient-downloads/redundant_redundant.html#LocalCache">Cache Files
+  Locally</a>.
+</p>
+
+
+<h2 id="pre-fetch">Optimize Pre-Fetch Cache Size</h2>
+
+<p>
+  Optimize pre-fetch cache size based on local file system size and current network connectivity.
+  You can use the connectivity manager to determine what type of networks (Wi-FI, LTE, HSPAP, EDGE,
+  GPRS) are active and modify your pre-fetching routines to minimize battery load.
+</p>
+
+<p>
+  For more information, see
+  <a href="{@docRoot}training/efficient-downloads/connectivity_patterns.html#Bandwidth">Use
+  Modifying your Download Patterns Based on the Connectivity Type</a>.
+</p>
diff --git a/docs/html/training/performance/battery/network/action-app-traffic.jd b/docs/html/training/performance/battery/network/action-app-traffic.jd
new file mode 100644
index 0000000..d62461e
--- /dev/null
+++ b/docs/html/training/performance/battery/network/action-app-traffic.jd
@@ -0,0 +1,134 @@
+page.title=Optimizing App-Initiated Network Use
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>This lesson teaches you to</h2>
+<ol>
+  <li><a href="#batch-schedule">Batch and Schedule Network Requests</a>
+  <li><a href="#check-connect">Allow System to Check for Connectivity</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>
+  Network traffic initiated by your app can usually be significantly optimized, since you can plan
+  for what network resources it needs and set a schedule for accessing them. By applying careful
+  scheduling, you can create significant periods of rest for the device radio and, thereby, save
+  power. There are several Android APIs that can help with network access scheduling, and some of
+  these functions can coordinate network access for other apps, further optimizing battery
+  performance.
+</p>
+
+<p>
+  This lesson teaches you how to reduce battery consumption by applying techniques for
+  optimizing app-initiated network traffic.
+</p>
+
+
+<h2 id="batch-schedule">Batch and Schedule Network Requests</h2>
+
+<iframe width="448" height="252"
+    src="//www.youtube.com/embed/Ecz5WDZoJok?autohide=1&amp;showinfo=0"
+    frameborder="0" allowfullscreen=""
+    style="float: right; margin: 0 0 20px 20px;"></iframe>
+
+
+<p>
+  On a mobile device, the process of turning on the radio, making a connection, and keeping the
+  radio awake uses a large amount of power. For this reason, processing individual requests at
+  random times can consume significant power and reduce battery life. A more efficient approach is
+  to queue a set of network requests and process them together. This allows the system to pay the
+  power cost of turning on the radio just once, and still get all the data requested by an app.
+</p>
+
+
+<iframe width="448" height="252"
+    src="//www.youtube.com/embed/orlRuEwlDoM?autohide=1&amp;showinfo=0"
+    frameborder="0" allowfullscreen=""
+    style="float: left; margin: 0 20px 20px 0;"></iframe>
+
+<p>
+  Using a network access scheduler API for queuing and processing your app data requests can
+  significantly increase the power efficiency of your app. Schedulers conserve battery power by
+  grouping requests together for the system to process. They can further improve efficiency by
+  delaying some requests until other requests wake up the mobile radio, or waiting until the
+  device is charging. Schedulers defer and batch network requests system-wide, across all apps on
+  the device, which gives them an optimizing advantage over what any individual app can do.
+</p>
+
+
+<h3 id="choosing-scheduler">Choosing a batch-and-scheduling API</h3>
+
+<p>
+  Android provides three different APIs for your app to batch and schedule network requests. For
+  most operations, these techniques are functionally equivalent. These APIs are listed in the
+  following table with the most highly recommended first.
+</p>
+
+<table>
+  <tr>
+    <th>Scheduler</th>
+    <th>Requirements</th>
+    <th>Implementation Ease</th>
+  </tr>
+  <tr>
+    <td style="white-space: nowrap;"><a href="https://developers.google.com/cloud-messaging/network-manager">
+      GCM Network Manager</a></td>
+    <td>GCM Network Manager requires that your app use the Google Play services client library,
+      version 6.1.11 or higher &mdash; use the latest available version.</td>
+    <td>Straightforward</td>
+  </tr>
+  <tr>
+    <td><a href="{@docRoot}reference/android/app/job/JobScheduler.html">Job Scheduler</a></td>
+    <td>Job Scheduler does not require Google Play services, but is available only when targeting
+      Android 5.0 (API level 21) or higher.</td>
+    <td>Straightforward</td>
+  </tr>
+  <tr>
+    <td>
+      <a href="{@docRoot}training/sync-adapters/index.html">Sync Adapter for scheduled syncs</a>
+    </td>
+    <td>Sync Adapter does not require the Google Play services client library and has been
+      available since Android 2.0 (API level 5).</td>
+    <td>Complex</td>
+  </tr>
+</table>
+
+
+<p class="note">
+  <strong>Note:</strong> For scheduled data synchronization, you should <em>always</em> prefer GCM
+  Network Manager or Job Scheduler over Sync Adapter if your requirements allow it.
+</p>
+
+
+<h2 id="check-connect">Allow System to Check for Connectivity</h2>
+
+<p>
+  One of the most serious and unexpected causes of battery drain is when a user travels beyond the
+  reach of any cell tower or access point. In this situation, the user is typically not using their
+  device, but they notice the device getting warm, and then see that the battery is low or has run
+  out.
+</p>
+
+<p>
+  In this scenario, the problem is that an app is running a background process that keeps
+  waking up the mobile radio at regular intervals to search for a cellular signal, but finds none.
+  Searching for a cell signal is one of the most power-draining operations there is.
+</p>
+
+<p>
+  The way to avoid causing this kind of problem for a user with your app is to use a
+  battery-efficient method for checking connectivity. For app-initiated network requests, use a
+  <a href="#choosing-scheduler">scheduler</a>, which automatically uses <a href=
+  "{@docRoot}training/monitoring-device-state/connectivity-monitoring.html">Connectivity
+  Manager</a> to check for connectivity before calling into your app. As a result, if there's no
+  network, the Connectivity Manager conserves battery because it performs the connectivity check
+  itself, without loading the app to run the check. Battery is further conserved because schedulers
+  use <a href="http://en.wikipedia.org/wiki/Exponential_backoff" class="external-link">exponential
+  backoff</a> to check for connectivity less frequently as time progresses.
+</p>
diff --git a/docs/html/training/performance/battery/network/action-server-traffic.jd b/docs/html/training/performance/battery/network/action-server-traffic.jd
new file mode 100644
index 0000000..e568c8a
--- /dev/null
+++ b/docs/html/training/performance/battery/network/action-server-traffic.jd
@@ -0,0 +1,78 @@
+page.title=Optimizing Server-Initiated Network Use
+trainingnavtop=true
+
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>This lesson teaches you to</h2>
+<ol>
+  <li><a href="#gcm">Send Server Updates with GCM</a>
+</ol>
+
+</div>
+</div>
+
+<p>
+  Network traffic sent by server programs to your app can be challenging to optimize. A
+  solution to this problem is for your appp to periodically poll the server to check for updates.
+  This approach can waste network connection and power when your app starts up a device's radio,
+  only to receive an answer that no new data is available. A far more efficient approach would be
+  for the to notify your app when it has new data, but figuring out how to send a notification
+  from your server to potentially thousands of devices was previously no easy feat.
+</p>
+
+<p>
+  The <a href="https://developers.google.com/cloud-messaging/gcm">Google Cloud Messaging</a> (GCM)
+  service solves this communication problem by allowing your servers to send notifications to
+  instances of your app wherever they are installed, enabling greater network efficiency and
+  lowering power usage.
+</p>
+
+<p>
+  This lesson teaches you how to apply the GCM service to reduce network use for server-initiated
+  actions and reduce battery consumption.
+</p>
+
+
+<h2 id="gcm">Send Server Updates with GCM</h2>
+
+<p>
+  Google Cloud Messaging (GCM) is a lightweight mechanism used to transmit brief messages from an
+  app server to your app. Using GCM, your app server uses a message-passing
+  mechanism to notify your app that there is new data available. This approach eliminates network
+  traffic that your app would perform, by not contacting a backend server for new data when no
+  data is available.
+</p>
+
+<p>
+  An example use of GCM is an app that lists speaker sessions at a conference. When sessions are
+  updated on your server, the server sends a brief message to your app telling it updates are
+  available. Your app can then call the server to update the sessions on the device only when
+  the server has new data.
+</p>
+
+<p>
+  GCM is more efficient than having your app poll for changes on the server. The GCM service
+  eliminates unnecessary connections where polling would return no updates, and it avoids running
+  periodic network requests that could cause a device's radio to power up. Since GCM can be used by
+  many apps, using it in your app reduces the total number of network connections needed on a
+  device and allows the device radio to sleep more often.
+</p>
+
+<p>
+  For more information about GCM and how to implement it for your app, see
+  <a href="https://developers.google.com/cloud-messaging/gcm">Google Cloud Messaging</a>.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> When using GCM, your app can pass messages in normal or high priority.
+  Your server should typically use <a href=
+  "https://developers.google.com/cloud-messaging/concept-options#setting-the-priority-of-a-message">
+  normal priority</a> to deliver messages. Using this priority level prevents devices from being
+  woken up if they are inactive and in a low-power <a href=
+  "https://developer.android.com/training/monitoring-device-state/doze-standby.html">Doze</a>
+  state. Use high priority messages only if absolutely required.
+</p>
diff --git a/docs/html/training/performance/battery/network/action-user-traffic.jd b/docs/html/training/performance/battery/network/action-user-traffic.jd
new file mode 100644
index 0000000..e3ddaa2
--- /dev/null
+++ b/docs/html/training/performance/battery/network/action-user-traffic.jd
@@ -0,0 +1,128 @@
+page.title=Optimizing User-Initiated Network Use
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>This lesson teaches you to</h2>
+<ol>
+  <li><a href="#pre-fetch-data">Pre-fetch Network Data</a>
+  <li><a href="#check-or-listen">Check for Connectivity or Listen for Changes</a></li>
+  <li><a href="#reduce-connections">Reduce the Number of Connections</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>
+  Quick handling of user requests helps ensure a good user experience, especially when it comes to
+  user actions that require network access. You should prioritize low latency over power
+  conservation to provide the fastest response when optimizing network use that is a direct result
+  of user actions. Attaining an optimal network traffic profile for your app, while making sure
+  that your users get fast responses, can be a bit challenging.
+</p>
+
+<p>
+  This lesson teaches you how to optimize network use for user-initiated
+  actions and reduce battery consumption.
+</p>
+
+
+<h2 id="pre-fetch-data">Pre-fetch Network Data</h2>
+
+<iframe width="448" height="252"
+    src="//www.youtube.com/embed/Rk1u7VVmadE?autohide=1&amp;showinfo=0"
+    frameborder="0" allowfullscreen=""
+    style="float: right; margin: 0 0 20px 20px;"></iframe>
+
+<p>
+  Pre-fetching data is an effective way to reduce the number of independent data transfer sessions
+  that your app runs. With pre-fetching, when the user performs an action in your app, the app
+  anticipates which data will most likely be needed for the next series of user actions and fetches
+  that data in bulk. Battery power consumption is reduced for two reasons:
+  <ul>
+    <li>
+      Because your app pre-fetches data only when the the mobile radio is already awake from
+      the user's action, and so does not incur the overhead of waking up the mobile radio.
+    </li>
+    <li>
+      The app pre-fetches data for anticipated user actions, each of which might otherwise
+      require separate requests that each incur waking up the mobile radio.
+    </li>
+  </ul>
+
+</p>
+
+<p class="note">
+  <strong>Tip:</strong> To explore whether your app might benefit from pre-fetching, review your
+  app's network traffic and look for situations where a specific series of user actions almost
+  always results in multiple network requests over the course of the task. For instance, an app
+  that incrementally downloads article content as a user views it might be able to pre-fetch one or
+  more articles in categories the user is known to view.
+</p>
+
+<p>
+  Watch the video on effective pre-fetching which describes what pre-fetching is, where to
+  use it, and how much data to pre-fetch. For more details, see <a href=
+  "{@docRoot}training/efficient-downloads/efficient-network-access.html#PrefetchData">Optimizing
+  Downloads for Efficient Network Access</a>.
+</p>
+
+
+<h2 id="check-or-listen">Check for Connectivity or Listen for Changes</h2>
+
+<p>
+  Searching for a cell signal is one of the most power-draining operations on a mobile
+  device. Your app should always check for connectivity before sending a user-initiated network
+  request. If you use a scheduling service, <a href=
+  "{@docRoot}training/performance/battery/network/action-app-traffic.html#choosing-scheduler">Schedulers</a>
+  do this automatically for you.
+</p>
+
+<ul>
+  <li>If only certain buttons in your activity depend on a network connection, use <a href=
+  "{@docRoot}reference/android/net/ConnectivityManager.html">Connectivity Manager</a> to check for
+  a network connection before sending the network request, as instructed in <a href=
+  "{@docRoot}training/monitoring-device-state/connectivity-monitoring.html#MonitorChanges">Monitor
+  for Changes in Connectivity</a>. If there's no network, the app can save battery by not forcing
+  the mobile radio to search.
+  </li>
+
+  <li>If your entire activity's user interface is non-functional without network access, then use
+  <a href="{@docRoot}training/monitoring-device-state/manifest-receivers.html">Manipulate Broadcast
+  Receivers on Demand</a>. This technique listens for connectivity changes when your activity is in
+  the foreground, and prevents network requests from proceeding when no connectivity exists. That
+  is, if your app detects that connectivity has been lost, it disables all of its receivers, except
+  for the connectivity-change receiver. An example would be a news app that presents an activity
+  with a full-screen view of news snippets and does no pre-fetching. Any snippet a user taps would
+  require a network connection.
+  </li>
+</ul>
+
+
+<p>
+  A best practice for user-initiated traffic is to first check for a connection using <a href=
+  "{@docRoot}reference/android/net/ConnectivityManager.html">Connectivity Manager</a>, and if there
+  is no connection, <a href="#heading=h.a114i7ic2bxc">schedule</a> the network request for when the
+  connection is made. Schedulers will use techniques such as exponential backoff to save battery,
+  where each time the attempt to connect fails, the scheduler doubles the delay before the next
+  retry.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> To check for connectivity for app-initiated traffic, see <a href=
+  "action-app-traffic.html#check-connect">Optimizing App-Initiated Network Use</a>.
+</p>
+
+
+<h2 id="reduce-connections">Reduce the Number of Connections</h2>
+
+<p>
+  In general, it's more efficient to reuse existing network connections than to initiate new ones.
+  Reusing connections also allows the network to more intelligently react to congestion and related
+  network data issues. For more information on reducing the number of connections used by your app,
+  see <a href="{@docRoot}training/efficient-downloads/efficient-network-access.html#ReduceConnections">
+  Optimizing Downloads for Efficient Network Access</a>.
+</p>
diff --git a/docs/html/training/performance/battery/network/analyze-data.jd b/docs/html/training/performance/battery/network/analyze-data.jd
new file mode 100644
index 0000000..593201a
--- /dev/null
+++ b/docs/html/training/performance/battery/network/analyze-data.jd
@@ -0,0 +1,215 @@
+page.title=Analyzing Network Traffic Data
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>This lesson teaches you to</h2>
+<ol>
+  <li><a href="#general-traffic">Analyze App Network Traffic</a></li>
+  <li><a href="#traffic-types">Analyze Network Traffic Types</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>
+  In the previous section, you tagged your app code with traffic identifiers, ran tests, and
+  collected data. This lesson teaches you how to look at the network traffic data you have
+  collected and directs you to actions for improving your app's networking performance and
+  reducing power consumption.
+</p>
+
+
+<h2 id="general-traffic">Analyze App Network Traffic</h2>
+
+<p>
+  Efficient use of network resources by an app is characterized by significant periods where
+  the network hardware is not in use.
+
+  On mobile devices, there is a significant cost associated with starting up the radio
+  to send or receive data, and with keeping the mobile radio active for long periods. If your app
+  is accessing the network efficiently, you should see that its communications over the network are
+  tightly grouped together, well spaced with periods where the app is making no connection requests.
+</p>
+
+<p>
+  Figure 1 shows suboptimal network traffic from app, as measured by the Network Traffic tool. The
+  app is making frequent network requests. This traffic has few periods of
+  rest where the radio could switch to a standby, low-power mode. The network access behavior of
+  this app is likely to keep the radio on for extended periods of time, which is
+  battery-inefficient.
+</p>
+
+<img src="{@docRoot}images/training/performance/suboptimal_network_traffic_pattern.png"
+  alt="" id="figure1" />
+<p class="img-caption">
+  <strong>Figure 1.</strong> Battery-inefficient network activity measured from an app.
+</p>
+
+<p>
+  Figure 2 shows an optimal network traffic pattern. The app sends network requests in bursts,
+  separated by long periods of no traffic where the radio can switch to standby. This chart shows
+  the same amount of work being done as Figure 1, but the requests have been shifted and grouped to
+  allow the radio to be in standby most of the time.
+</p>
+
+<img src="{@docRoot}images/training/performance/optimal_network_traffic_pattern.png"
+  alt="" id="figure2" />
+<p class="img-caption">
+  <strong>Figure 2.</strong> Battery-efficient network activity measured from an app.
+</p>
+
+<p>
+  If the network traffic for your app looks similar to the graph in Figure 2, you are in good
+  shape! Congratulations! You may want to pursue further networking efficiency by checking out the
+  techniques described in <a href=
+  "{@docRoot}training/performance/battery/network/action-any-traffic.html">Optimizing General Network
+  Use</a>
+</p>
+
+<p>
+  If the network traffic for your app looks more like the graph in Figure 1, it's time to take a
+  harder look at how your app accesses the network. You should start by analyzing what types of
+  network traffic your app is generating.
+</p>
+
+
+<h2 id="traffic-types">Analyze Network Traffic Types</h2>
+
+<p>
+  When you look at the network traffic generated by your app, you need to understand the source of
+  the traffic, so you can optimize it appropriately. Frequent network activity generated by your
+  app may be entirely appropriate if it is responding to user actions, but completely inappropriate
+  if you app is not in the foreground or if the device in a pocket or purse. This section discusses
+  how to analyze the types of network traffic being generated by your app and directs you to
+  actions you can take to improve performance.
+</p>
+
+<p>
+  In the previous lesson, you tagged your app code for different traffic types and used the Network
+  Traffic tool to collect data on your app and produce a graph of activity, as shown in Figure 3.
+</p>
+<img src="{@docRoot}images/training/performance/network_traffic_colors.png" />
+<p class="img-caption">
+  <strong>Figure 3.</strong> Network traffic tagged for the three categories: user, app, and
+  server.
+</p>
+
+<p>
+  The Network Traffic tool colors traffic based on the tags you created in the previous lesson. The
+  colors are based on the traffic type <a href=
+  "{@docRoot}training/performance/battery/network/gather-data.html#constants">constants you defined</a> in
+  your app code. Refer back to your app code to confirm which constants represent user, app, or
+  server-initiated traffic.
+</p>
+
+<p>
+  The following sections discuss how to look at network traffic types and provides recommendations
+  on how to optimize traffic.
+</p>
+
+
+<h3 id="user">Analyzing user-initiated network traffic</h3>
+
+<p>
+  Network activity initiated by the user may be efficiently grouped together while a user is
+  performing a specific activity with your app, or spread out unevenly as the user requests additional
+  information your app needs to get. Your goal in analyzing user-initiated network traffic is to
+  look for patterns of frequent network use over time and attempt to create, or increase the size
+  of, periods where the network is not accessed.
+</p>
+
+<p>
+  The unpredictability of user requests makes it challenging to optimize this type of network use
+  in your app. In addition, users expect fast responses when they are actively using an app, so
+  delaying requests for efficiency can lead to poor user experiences. In general, you should
+  prioritize a quick response to the user over efficient use of the network while a user is
+  directly interacting with your app.
+</p>
+
+<p>
+  Here are some approaches for optimizing user-initiated network traffic:
+</p>
+
+<ul>
+  <li>
+    <a href="{@docRoot}training/performance/battery/network/action-user-traffic.html#pre-fetch-data">
+    Pre-fetch Network Data</a> - When the user performs an action in your app, the app
+    anticipates which data may be needed for the next user actions, fetches it in bulk
+    in a single connection, and holds it until the user requests it.
+  </li>
+
+  <li>
+    <a href="{@docRoot}training/performance/battery/network/action-user-traffic.html#check-or-listen">
+    Check for Connectivity or Listen for Changes</a> - Check for network connectivity or listen
+    for connectivity changes before performing an update.
+  </li>
+
+  <li>
+    <a href="{@docRoot}training/performance/battery/network/action-user-traffic.html#reduce-connections">
+    Reduce the Number of Connections</a> - Use server APIs that allow data to be downloaded in sets.
+  </li>
+</ul>
+
+<p class="caution">
+  <strong>Caution:</strong> Beware of network activity grouping bias in your user activity test
+  data! If you ran a set of user scenarios with your network testing plan, the graph of
+  user-initiated network access may be unrealistically grouped together, potentially causing you to
+  optimize for user behavior that does not actually occur. Make sure your user network test
+  scenarios reflect realistic use of your app.
+</p>
+
+
+<h3 id="app">Analyzing app-initiated network traffic</h3>
+
+<p>
+  Network activity initiated by your app code is typically an area where you can have a significant
+  impact on the efficient use of network bandwidth. In analyzing the network activity of your app,
+  look for periods of inactivity and determine if they can be increased. If you see patterns of
+  consistent network access from your app, look for ways to space out these accesses to allow the
+  device radio to switch into low power mode.
+</p>
+
+<p>
+  Here are some approaches for optimizing app-initiated network traffic:
+</p>
+
+<ul>
+  <li>
+    <a href="{@docRoot}training/performance/battery/network/action-app-traffic.html#batch-schedule">
+    Batch and Schedule Network Requests</a> - Defer your app's network requests so they can be
+    processed together and at a time which is advantageous for battery life.
+  </li>
+
+  <li>
+    <a href="{@docRoot}training/performance/battery/network/action-app-traffic.html#check-connect">
+    Allow System to Check for Connectivity</a> - Avoid the battery cost of running your app just
+    to check for a network connection when you can let the system run the check while your app
+    sleeps.
+  </li>
+</ul>
+
+
+<h3 id="server">Analyzing server-initiated network traffic</h3>
+
+<p>
+  Network activity initiated by servers communicating with your app is also typically an area where
+  you can have a significant impact on the efficient use of network bandwidth. In analyzing the
+  network activity from server connections, look for periods of inactivity and determine if they
+  can be increased. If you see patterns of consistent network activity from servers, look for ways
+  to space out this activity to allow the device radio to switch into low power mode.
+</p>
+
+<p>
+  Here is an approach for optimizing app-initiated network traffic:
+</p>
+
+<ul>
+  <li>
+    <a href="action-server-traffic.html#gcm">Use GCM for Server Updates</a> - Consider using
+    the Google Cloud Messaging service for server side updates instead of polling.
+  </li>
+</ul>
diff --git a/docs/html/training/performance/battery/network/gather-data.jd b/docs/html/training/performance/battery/network/gather-data.jd
new file mode 100644
index 0000000..32edcd5
--- /dev/null
+++ b/docs/html/training/performance/battery/network/gather-data.jd
@@ -0,0 +1,267 @@
+page.title=Collecting Network Traffic Data
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>This lesson teaches you to </h2>
+<ol>
+  <li><a href="#tag-requests">Tag Network Requests</a></li>
+  <li><a href="#build-type">Configure a Network Test Build Type</a></li>
+  <li><a href="#deploy-apk">Deploy the Network Test APK</a></li>
+  <li><a href="#network-tool">Run Network Traffic Tool</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>
+  The network traffic generated by an app can have a significant impact on the battery life of the
+  device where it is running. In order to optimize that traffic, you need to both measure it and
+  identify its source. Network requests can come directly from a user action, requests from your own
+  app code, or from a server communicating with your app.
+</p>
+
+<p>
+  The <a href="{@docRoot}tools/debugging/ddms.html#network">Network Traffic tool</a> (part of the
+  DDMS tools) enables you to view how and when your app transfers data over a network.
+</p>
+
+<p>
+  This lesson shows you how to measure and categorize network requests by tagging your source code,
+  then shows you how to deploy, test and visualize your apps's network traffic.
+</p>
+
+
+<h2 id="tag-requests">Tag Network Requests</h2>
+
+<p>
+  Apps use the networking hardware on a device for various reasons. In order to properly optimize
+  your app's use of networking resources, you must understand how frequently your app is using the
+  network and for what reasons. For performance analysis purposes, you should break down use of
+  network hardware into these categories:
+</p>
+
+<ul>
+  <li>
+    <strong>User-initiated network requests</strong> - Requests initiated by the user, such as a
+    user request for an updated articles list in a news app.
+  </li>
+
+  <li>
+    <strong>App-initiated network requests</strong> - Requests initiated within Android app code
+    that are not used to immediately satisfy a user action, such as an app request to cache the
+    text of unread articles in a news app.
+  </li>
+
+  <li>
+    <strong>Server-initiated network requests</strong> - Requests initiated by a server to your app
+    that are not used to immediately satisfy a user action, such as notification of a newly
+    available article in a news app.
+  </li>
+</ul>
+
+<p>
+  This procedure shows you how to tag your app's source code with constants to categorize traffic
+  as one of these three request types. The Network Traffic tool represents each type of traffic
+  with a different color, so you can visualize and optimize each traffic stream separately.
+  The technique described here reports network traffic based on the execution of threads in your
+  app which you identify as a user, app or server source.
+</p>
+
+<ol>
+  <li>In your app's development project, define three constants to represent the different types
+    of network use:
+
+<pre id="constants">
+public static final int USER_INITIATED = 0x1000;
+public static final int APP_INITIATED = 0x2000;
+public static final int SERVER_INITIATED =0x3000;
+</pre>
+  </li>
+
+  <li>Find networking code in your app by searching for the most common classes used for
+    this purpose:
+    <ol type="a">
+      <li>In Android Studio, choose <strong>Edit &gt; Find &gt; Find in Path</strong>.</li>
+      <li>Paste the following string into the <strong>Text to find</strong> field:<br>
+        <code>extends GcmTaskService|extends JobService|extends
+        AbstractThreadedSyncAdapter|HttpUrlConnection|Volley|Glide|HttpClient</code>
+      </li>
+      <li>Check <strong>Regular expression</strong>.</li>
+      <li>Check <strong>File mask(s)</strong> and type <code>*.java</code>.</li>
+      <li>Click the <strong>Find</strong> button.</li>
+    </ol>
+  </li>
+
+<li>
+  Based on your findings in the previous step, tag your app's use of network traffic by adding the
+  {@link android.net.TrafficStats#setThreadStatsTag} method to each execution thread in your app
+  that uses network resources, as shown in the following code example.
+
+<pre>
+if (BuildConfig.NETWORK-TEST && Build.VERSION.SDK_INT &gt;= 14) {
+    try {
+        TrafficStats.setThreadStatsTag(USER_INITIATED);
+        // make network request using HttpClient.execute()
+    } finally {
+        TrafficStats.clearThreadStatsTag();
+    }
+}
+</pre>
+
+    <p class="note">
+      <strong>Note:</strong> Ensure the tagging does not get into your production code by making
+      inclusion of this code conditional, based on the build type used to generate the APK.
+      In the example above, the <code>BuildConfig.NETWORK-TEST</code> field identifies this
+      APK as a test version.
+    </p>
+
+  </li>
+</ol>
+
+<p class="note">
+  <strong>Note:</strong> This technique for tagging network traffic from your app depends on
+  how the APIs that you are using access and manage network sockets. Some networking libraries
+  may not allow the {@link android.net.TrafficStats} utilities to tag traffic from your app.
+</p>
+
+<p>
+  For more information about tagging and tracking network traffic with the Network Traffic tool,
+  see <a href="http://tools.android.com/recent/detailednetworkusageinddms">Detailed Network Usage
+  in DDMS</a>.
+</p>
+
+
+<h2 id="build-type">Configure a Network Test Build Type</h2>
+
+<p>
+  When you run performance tests, your APK should be as close as possible to the production
+  build. In order to achieve this for your network testing, create a <code>network-test</code>
+  build type, rather than using <code>debug</code> build type.
+</p>
+
+<ol>
+  <li>Open your app in Android Studio.</li>
+  <li>Create a debuggable build type for your network test by modifying your project's
+    <code>build.gradle</code> file as shown in the following code example:
+
+<pre>
+android {
+    ...
+    buildTypes {
+        debug {
+            // debuggable true is default for the debug buildType
+        }
+        <strong>network-test {
+            debuggable true
+        }</strong>
+    }
+    ...
+}
+</pre>
+  </li>
+</ol>
+
+
+<h2 id="deploy-apk">Deploy the Network Test APK</h2>
+
+<p>
+  To deploy the APK generated by the {@code network-test} build type configured in the previous
+  proceedure:
+</p>
+
+<ol>
+  <li>Check that <strong>Developer Options</strong> are enabled on your test device. For
+  information about how to check and enable this option, see <a href=
+  "{@docRoot}tools/device.html#developer-device-options">Using Hardware Devices</a>.
+  </li>
+
+  <li>Using a USB cable, connect your test device to your development computer.
+  </li>
+
+  <li>In Android Studio, select <strong>Build Variants</strong> on the left edge of the window.
+  </li>
+
+  <li>Click the <strong>Sync Project with Gradle Files</strong> button to populate the
+  Build Variants list with <code>network-test</code> for the app module.
+  </li>
+
+  <li>Choose <code>network-test</code> from the list.
+  </li>
+
+  <li>Deploy the debuggable version of your app to your device by choosing
+  <strong>Run</strong> &gt; <strong>Debug</strong>.
+  </li>
+</ol>
+
+
+<h2 id="network-tool">Run Network Traffic Tool</h2>
+
+<p>
+  The Network Traffic tool in Android Studio helps you see how your app uses network resources
+  in real time, while it is running.
+</p>
+
+<p>
+  To improve the repeatability of your testing, you should start with a known initial state for
+  your app by clearing app data. The following procedure includes a step that shows you how to
+  clear <em>all</em> app data including previously cached data and networking data. This step
+  puts your app back to a state where it must re-cache all previously cached data. Do not skip
+  this step.
+</p>
+
+<p>
+  To start the Network Traffic tool and visualize the network requests:
+</p>
+
+<ol>
+  <li>Start the Network Traffic tool by launching Android Studio and choosing <strong>Tools &gt;
+  Android &gt; Android Device Monitor</strong>. When asked, allow incoming network connections.
+  </li>
+
+  <li>In the Android Device Monitor window, click the <strong>DDMS</strong> button along the top
+  and choose the <strong>Network Statistics</strong> tab. If you don't see this tab, widen the
+  window and then try <strong>Window &gt; Reset Perspective</strong>.
+  </li>
+
+  <li>Select your app to debug from the list of debuggable apps on your device in the
+    <strong>Devices</strong> tab, then click the <strong>Start</strong> button in the
+    <strong>Network Statistics</strong> tab.
+
+    <p class="note">
+      <strong>Note:</strong> You may be prompted to <strong>Allow USB Debugging</strong> on your
+      device. Select <strong>OK</strong> to allow debugging to proceed.
+    </p>
+  </li>
+
+  <li>Clear your app data using the following adb command:
+<pre class="no-pretty-print">
+adb shell pm clear <em>package.name.of.app</em>
+</pre>
+  </li>
+
+  <li>Start your app and run a testing plan that exercises your app's primary use cases. Your plan
+    should also allow for app idle time, where the user is not interacting with the app, to allow
+    app-initiated and server-initiated network access to occur.
+  </li>
+
+  <li>Repeat the test by clearing the app data and running your test plan again. You should repeat
+    the test a few times to verify the repeatability of your performance data.
+  </li>
+</ul>
+</ol>
+
+<p>
+  Use of tagging for network traffic helps you visually distinguish each request category by
+  producing a different color for each network traffic in the Network Traffic tool, as shown in
+  Figure 1.
+</p>
+
+<img src="{@docRoot}images/training/performance/network_traffic_colors.png" />
+<p class="img-caption">
+  <strong>Figure 1.</strong> Network traffic tagged for the three categories.
+</p>
+
diff --git a/docs/html/training/performance/battery/network/index.jd b/docs/html/training/performance/battery/network/index.jd
new file mode 100644
index 0000000..1da30cf
--- /dev/null
+++ b/docs/html/training/performance/battery/network/index.jd
@@ -0,0 +1,86 @@
+page.title=Reducing Network Battery Drain
+page.article=true
+
+page.tags=battery
+page.metaDescription=Learn how to optimize your app to reduce battery drain and use network resources efficiently.
+
+@jd:body
+
+
+<iframe width="448" height="252"
+    src="//www.youtube.com/embed/fEEulSk1kNY?autohide=1&amp;showinfo=0"
+    frameborder="0" allowfullscreen=""
+    style="float: right; margin: 0 0 20px 20px;"></iframe>
+
+<p>
+  Requests that your app makes to the network are a major cause of battery drain because they turn
+  on the power-hungry mobile or Wi-Fi radios. Beyond the power needed to send and receive packets,
+  these radios expend extra power just turning on and keeping awake. Something as simple as a
+  network request every 15 seconds can keep the mobile radio on continuously and quickly use up
+  battery power.
+</p>
+
+<p>
+  This lesson shows you how to tag your app's source code to categorize, visualize and color
+  your network requests according to how they are initiated. From there, each category
+  identifies areas of your app that you can make more battery-efficient.
+</p>
+
+
+<h2>Performance Actions</h2>
+
+<dl>
+  <dt>
+    <strong><a href="gather-data.html">
+        Collecting Network Traffic Data</a></strong>
+  </dt>
+  <dd>
+    Learn how to instrument your app's code and gather data on its use of network resources.
+  </dd>
+
+  <dt>
+    <strong><a href="analyze-data.html">
+        Analyzing Network Traffic Data</a></strong>
+  </dt>
+  <dd>
+    Learn how to analyze your app's use of network resources in response to user actions
+    and optimize it to reduce power consumption.
+  </dd>
+
+  <dt>
+    <strong><a href="action-user-traffic.html">
+        Optimizing User-Initiated Network Use</a></strong>
+  </dt>
+  <dd>
+    Learn how to optimize your app's use of network resources in response to user actions
+    to reduce power consumption.
+  </dd>
+
+  <dt>
+    <strong><a href="action-app-traffic.html">
+        Optimizing App-Initiated Network Use</a></strong>
+  </dt>
+  <dd>
+    Learn how to optimize your app's requests for network resources to reduce
+    power consumption.
+  </dd>
+
+  <dt>
+    <strong><a href="action-server-traffic.html">
+        Optimizing Server-Initiated Network Use</a></strong>
+  </dt>
+  <dd>
+    Learn how to optimize your app's requests for network resources and to reduce
+    power consumption.
+  </dd>
+
+  <dt>
+    <strong><a href="action-any-traffic.html">
+        Optimizing General Network Use</a></strong>
+  </dt>
+  <dd>
+    Learn how to optimize your app's requests for network resources and to reduce
+    power consumption.
+  </dd>
+
+</dl>
diff --git a/docs/html/training/permissions/best-practices.jd b/docs/html/training/permissions/best-practices.jd
new file mode 100644
index 0000000..dcdaf94
--- /dev/null
+++ b/docs/html/training/permissions/best-practices.jd
@@ -0,0 +1,247 @@
+page.title=Permissions Best Practices
+page.tags=permissions
+helpoutsWidget=true
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+
+<h2>In this document</h2>
+<ul>
+  <li><a href="#perms-vs-intents">Consider Using an Intent</a></li>
+
+  <li><a href="#dont-overwhelm">Don't Overwhelm the User</a></li>
+
+  <li><a href="#explain">Explain Why You Need Permissions</a></li>
+
+  <li><a href="#testing">Test for Both Permissions Models</a></li>
+
+</ul>
+
+<h2>You should also read</h2>
+  <ul>
+    <li><a href="{@docRoot}training/basics/intents/index.html">Interacting
+      with Other Apps</a></li>
+  </ul>
+
+</div>
+</div>
+
+
+<p>
+It's easy for an app to overwhelm a user with permission requests. If a user
+finds the app frustrating to use, or the user is worried about what the app
+might be doing with the user's information, they may avoid using the app or
+uninstall it entirely. The following best practices can help you avoid such
+bad user experiences.
+</p>
+
+<h2 id="perms-vs-intents">Consider Using an Intent</h2>
+
+<p>
+  In many cases, you can choose between two ways for your app to perform a
+  task. You can have your app ask for permission to perform the operation
+  itself. Alternatively, you can have the app use an <em>intent</em> to have
+  another app perform the task.
+</p>
+
+<p>
+  For example, suppose your app needs to be able to take pictures with the
+  device camera. Your app can request the {@link
+  android.Manifest.permission#CAMERA CAMERA} permission, which allows your app
+  to access the camera directly. Your app would then use the camera APIs to
+  control the camera and take a picture. This approach gives your app full
+  control over the photography process, and lets you incorporate the camera UI
+  into your app.
+</p>
+
+<p>
+  However, if you don't need such complete control, you can use an {@link
+  android.provider.MediaStore#ACTION_IMAGE_CAPTURE ACTION_IMAGE_CAPTURE} intent
+  to request an image. When you send the intent, the system prompts the user to
+  choose a camera app (if there isn't already a default camera app).
+  The user takes a picture with the selected camera app, and that app returns
+  the picture to your app's {@link
+  android.app.Activity#onActivityResult onActivityResult()} method.
+</p>
+
+<p>
+  Similarly, if you need to make a phone call, access the user's contacts, and
+  so on, you can do that by creating an appropriate intent, or you can request
+  the permission and access the appropriate objects directly. There are
+  advantages and disadvantages to each approach.
+</p>
+
+<p>
+  If you use permissions:
+</p>
+
+<ul>
+  <li>Your app has full control over the user experience when you perform the
+  operation. However, such broad control adds to the complexity of your task,
+  since you need to design an appropriate UI.
+  </li>
+
+  <li>The user is prompted to give permission once, either at run time or at
+  install time (depending on the user's Android version). After that, your app
+  can perform the operation without requiring additional interaction from the
+  user. However, if the user doesn't grant the permission (or revokes it later
+  on), your app becomes unable to perform the operation at all.
+  </li>
+</ul>
+
+<p>
+  If you use an intent:
+</p>
+
+<ul>
+  <li>You do not have to design the UI for the operation. The app that handles
+  the intent provides the UI. However, this means you have
+  no control over the user experience. The user could be interacting with an
+  app you've never seen.
+  </li>
+
+  <li>If the user does not have a default app for the operation, the system
+  prompts the user to choose an app. If the user does not designate a default
+  handler, they may have to go
+  through an extra dialog every time they perform the operation.
+  </li>
+</ul>
+
+<h2 id="ask-neccessary">Only Ask for Permissions You Need</h2>
+
+<p>
+  Every time you ask for a permission, you force the user to make a decision.
+  You should minimize the number of times you make these requests. If the user
+  is running Android 6.0 (API level 23) or later, every time the user tries
+  some new app feature that requires a permission, the app has to interrupt the
+  user's work with a permission request. If the user is running an earlier
+  version of Android, the user has to grant every one of the app's permissions
+  when installing the app; if the list is too long or seems inappropriate, the
+  user may decide not to install your app at all. For these reasons, you should
+  minimize the number of permissions your app needs.
+</p>
+
+<p>
+  Quite often your app can avoid requesting a permission by using an
+  <em>intent</em> instead. If a feature is not a core part of your app's
+  functionality, you should consider handing the work over to another app, as
+  described in <a href="#perms-vs-intents">Consider Using An Intent</a>.
+</p>
+
+<h2 id="dont-overwhelm">Don't Overwhelm the User</h2>
+
+<p>
+  If the user is running Android 6.0 (API level 23) or later, the user has to
+  grant your app its permissions while they are running the app. If you
+  confront the user with a lot of requests for permissions at once, you may
+  overwhelm the user and cause them to quit your app. Instead, you should ask
+  for permissions as you need them.
+</p>
+
+<p>
+  In some cases, one or more permissions might be absolutely essential to your
+  app. It might make sense to ask for all of those permissions as soon as the
+  app launches. For example, if you make a photography app, the app would need
+  access to the device camera. When the user launches the app for the first
+  time, they won't be surprised to be asked for permission to use the camera.
+  But if the same app also had a feature to share photos with the user's
+  contacts, you probably should <em>not</em> ask for the {@link
+  android.Manifest.permission#READ_CONTACTS READ_CONTACTS} permission at first
+  launch. Instead, wait until the user tries to use the "sharing" feature and
+  ask for the permission then.
+</p>
+
+<p>
+  If your app provides a tutorial, it may make sense to request the app's
+  essential permissions at the end of the tutorial sequence.
+</p>
+
+<h2 id="explain">Explain Why You Need Permissions</h2>
+
+<p>
+  The permissions dialog shown by the system when you call
+  {@link android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()} says what permission your app wants, but doesn't say
+  why. In some cases, the user may find that puzzling. It's a good idea to
+  explain to the user why your app wants the permissions before calling
+  {@link android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()}.
+</p>
+
+<p>
+  For example, a photography app might want to use location services so it can
+  geotag the photos. A typical user might not understand that a photo can
+  contain location information, and would be puzzled why their photography app
+  wants to know the location. So in this case, it's a good idea for the app to
+  tell the user about this feature <em>before</em> calling
+  {@link android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()}.
+</p>
+
+<p>
+  One way to inform the user is to incorporate these requests into an app
+  tutorial. The tutorial can show each of the app's features in turn, and as it
+  does this, it can explain what permissions are needed. For example, the
+  photography app's tutorial could demonstrate its "share photos with your
+  contacts" feature, then tell the user that they need to give permission for
+  the app to see the user's contacts. The app could then call {@link
+  android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()} to ask the user for that access. Of course, not every
+  user is going to follow the tutorial, so you still need to check for and
+  request permissions during the app's normal operation.
+</p>
+
+<h2 id="testing">Test for Both Permissions Models</h2>
+
+<p>
+  Beginning with Android 6.0 (API level 23), users grant and revoke app
+  permissions at run time, instead of doing so when they install the app. As a
+  result, you'll have to test your app under a wider range of conditions. Prior
+  to Android 6.0, you could reasonably assume that if your app is running at
+  all, it has all the permissions it declares in the app manifest. Under the
+  new permissions model, you can no longer make that assumption.
+</p>
+
+<p>
+  The following tips will help you identify permissions-related code problems
+  on devices running API level 23 or higher:
+</p>
+
+<ul>
+  <li>Identify your app’s current permissions and the related code paths.
+  </li>
+
+  <li>Test user flows across permission-protected services and data.
+  </li>
+
+  <li>Test with various combinations of granted or revoked permissions. For
+  example, a camera app might list {@link android.Manifest.permission#CAMERA
+  CAMERA}, {@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS}, and
+  {@link android.Manifest.permission#ACCESS_FINE_LOCATION ACCESS_FINE_LOCATION}
+  in its manifest. You should test the app with each of these permissions
+  turned on and off, to make sure the app can handle all permission
+  configurations gracefully. Remember, beginning with Android 6.0 the user can
+  turn permissions on or off for <em>any</em> app, even an app that targets API
+  level 22 or lower.
+  </li>
+
+  <li>Use the <a href="{@docRoot}tools/help/adb.html">adb</a> tool to manage
+  permissions from the command line:
+    <ul>
+      <li>List permissions and status by group:
+
+        <pre class="no-pretty-print">$ adb shell pm list permissions -d -g</pre>
+      </li>
+
+      <li>Grant or revoke one or more permissions:
+
+        <pre class="no-pretty-print">$ adb shell pm [grant|revoke] &lt;permission-name&gt; ...</pre>
+      </li>
+    </ul>
+  </li>
+
+  <li>Analyze your app for services that use permissions.
+  </li>
+</ul>
diff --git a/docs/html/training/permissions/declaring.jd b/docs/html/training/permissions/declaring.jd
new file mode 100644
index 0000000..ae96f81
--- /dev/null
+++ b/docs/html/training/permissions/declaring.jd
@@ -0,0 +1,115 @@
+page.title=Declaring Permissions
+helpoutsWidget=true
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+  <h2>This lesson teaches you to</h2>
+  <ul>
+    <li>
+      <a href="#perm-needed">Determine What Permissions Your App Needs</a>
+    </li>
+    <li>
+      <a href="#perm-add">Add Permissions to the Manifest</a>
+    </li>
+  </ul>
+
+<!--
+    <h2>Dependencies and Prerequisites</h2>
+    <ul>
+      <li></li>
+    </ul>
+-->
+
+<h2>You should also read</h2>
+  <ul>
+    <li><a href="{@docRoot}guide/topics/security/permissions.html#permissions">
+      Using Permissions</a></li>  <ul>
+    <li><a href="{@docRoot}guide/topics/security/permissions.html#normal-dangerous">
+      Normal and Dangerous Permissions</a></li>
+  </ul>
+</div>
+</div>
+
+<p>
+  Every Android app runs in a limited-access sandbox. If an app needs to use
+  resources or information outside of its own sandbox, the app has to request
+  the appropriate <i>permission.</i> You declare that your app needs a
+  permission by listing the permission in the <a href=
+  "{@docRoot}guide/topics/manifest/manifest-intro.html">App Manifest</a>.
+</p>
+
+<p>
+  Depending on how sensitive the permission is, the system might grant the
+  permission automatically, or the device user might have to grant
+  the request. For example, if your app requests permission to turn on the
+  device's flashlight, the system grants that permission automatically. But
+  if your app needs to read the user's contacts, the system asks the user
+  to approve that permission. Depending on the platform version, the user
+  grants the permission either when they install the app (on Android 5.1 and
+  lower) or while running the app (on Android 6.0 and higher).
+</p>
+
+<h2 id="perm-needed">Determine What Permissions Your App Needs</h2>
+
+<p>
+  As you develop your app, you should note when your app is using capabilities
+  that require a permission. Typically, an app is going to need permissions
+  whenever it uses information or resources that the app doesn't create, or
+  performs actions that affect the behavior of the device or other apps. For
+  example, if an app needs to access the internet, use the device camera, or
+  turn Wi-Fi on or off, the app needs the appropriate permission. For a list of
+  system permissions, see <a href=
+  "{@docRoot}guide/topics/security/permissions.html#normal-dangerous">Normal
+  and Dangerous Permissions</a>.
+</p>
+
+<p>
+  Your app only needs permissions for actions that it performs directly. Your
+  app does not need permission if it is requesting that another app perform the
+  task or provide the information. For example, if your app needs to read the
+  user's address book, the app needs the {@link
+  android.Manifest.permission#READ_CONTACTS READ_CONTACTS} permission. But if
+  your app uses an <em>intent</em> to request information from the user's
+  Contacts app, your app does not need any permissions, but the
+  Contacts app <em>does</em> need to have that permission. For more
+  information, see <a href="best-practices.html#perms-vs-intents">Consider
+  Using an Intent</a>.
+</p>
+
+<h2 id="perm-add">Add Permissions to the Manifest</h2>
+
+<p>
+  To declare that your app needs a permission, put a <a href=
+  "{@docRoot}guide/topics/manifest/uses-permission-element.html"
+  ><code>&lt;uses-permission&gt;</code></a>
+  element in your <a href=
+  "{@docRoot}guide/topics/manifest/manifest-intro.html">app manifest</a>, as a
+  child of the top-level <a href=
+  "{@docRoot}guide/topics/manifest/manifest-element.html"><code>&lt;manifest&gt;</code></a>
+  element. For example, an app that needs to send SMS messages would have this
+  line in the manifest:
+</p>
+
+<pre>&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
+        package="com.example.snazzyapp"&gt;
+
+    <strong>&lt;uses-permission android:name="android.permission.SEND_SMS"/&gt;</strong>
+    <!-- other permissions go here -->
+
+    &lt;application ...&gt;
+        ...
+    &lt;/application&gt;
+
+&lt;/manifest&gt;</pre>
+
+<p>
+  The system's behavior after you declare a permission depends on how sensitive
+  the permission is. If the permission does not affect user privacy, the system
+  grants the permission automatically. If the permission might grant access to
+  sensitive user information, the system asks the user to approve the request.
+  For more information about the different kinds of permissions, see
+  <a href="{@docRoot}guide/topics/security/permissions.html#normal-dangerous">Normal
+  and Dangerous Permissions</a>.
+</p>
diff --git a/docs/html/training/permissions/index.jd b/docs/html/training/permissions/index.jd
new file mode 100644
index 0000000..d1e7f21
--- /dev/null
+++ b/docs/html/training/permissions/index.jd
@@ -0,0 +1,76 @@
+page.title=Working with System Permissions
+page.tags=permissions
+helpoutsWidget=true
+
+@jd:body
+
+<div id="tb-wrapper">
+
+  <div id="tb">
+<!--
+    <h2>Dependencies and Prerequisites</h2>
+    <ul>
+      <li></li>
+    </ul>
+-->
+<h2>You should also read</h2>
+  <ul>
+    <li><a href="{@docRoot}guide/topics/security/permissions.html">
+      System Permissions</a></li>
+    <li><a href="{@docRoot}training/basics/intents/index.html">
+      Interacting with other apps</a></li>
+  </ul>
+  </div>
+</div>
+
+<a class="notice-designers wide"
+  href="https://www.google.com/design/spec/patterns/permissions.html">
+  <div>
+    <h3>Design Patterns</h3>
+    <p>Permissions</p>
+  </div>
+</a>
+
+<p>
+  To protect the system's integrity and the user's privacy, Android runs each
+  app in a limited access sandbox. If the app wants to use resources or
+  information outside of its sandbox, the app has to explicitly request
+  permission. Depending on the type of permission the app requests, the system
+  may grant the permission automatically, or the system may ask the user to
+  grant the permission.
+</p>
+
+<p>
+  This class shows you how to declare and request permissions for your app.
+</p>
+
+<h2>Lessons</h2>
+
+<dl>
+  <dt>
+    <a href="declaring.html">Declaring Permissions</a>
+  </dt>
+
+  <dd>
+    Learn how to declare the permissions you need in your app manifest.
+  </dd>
+
+  <dt>
+    <a href="requesting.html">Requesting Permissions at Run Time</a>
+  </dt>
+
+  <dd>
+    Learn how to request permissions from the user while the app is running.
+    This lesson only applies to apps on devices running Android 6.0 (API level
+    23) and higher.
+  </dd>
+
+  <dt>
+    <a href="best-practices.html">Permissions Best Practices</a>
+  </dt>
+
+  <dd>
+    Guidelines for creating the best user experience in requesting and using
+    permissions.
+  </dd>
+</dl>
diff --git a/docs/html/training/permissions/requesting.jd b/docs/html/training/permissions/requesting.jd
new file mode 100644
index 0000000..e173daf
--- /dev/null
+++ b/docs/html/training/permissions/requesting.jd
@@ -0,0 +1,361 @@
+page.title=Requesting Permissions at Run Time
+page.tags="runtime permissions",androidm,marshmallow
+page.image=images/permissions_check.png
+page.metaDescription=Learn about runtime permissions and how they make it easier for users to install and upgrade your apps.
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+  <h2>This lesson teaches you to</h2>
+
+  <ul>
+    <li>
+      <a href="#perm-check">Check For Permissions</a>
+    </li>
+    <li>
+      <a href="#perm-request">Request Permissions</a>
+    </li>
+  </ul>
+
+  <h2>Dependencies and Prerequisites</h2>
+
+  <ul>
+    <li>Android 6.0 (API level 23)
+    </li>
+  </ul>
+
+  <h2>You should also read</h2>
+
+  <ul>
+    <li>
+      <a href=
+      "{@docRoot}guide/topics/security/permissions.html#normal-dangerous">Normal
+      and Dangerous Permissions</a>
+    </li>
+  </ul>
+</div>
+</div>
+
+<p>
+  Beginning in Android 6.0 (API level 23), users grant
+  permissions to apps while the app is running, not when they install the app.
+  This approach streamlines the app
+  install process, since the user does not need to grant permissions when they
+  install or update the app. It also gives the user more control over the app's
+  functionality; for example, a user could choose to give a camera app access
+  to the camera but not to the device location. The user can revoke the
+  permissions at any time, by going to the app's Settings screen.
+</p>
+
+<p>
+  System permissions are divided into two categories, <em>normal</em> and
+  <em>dangerous:</em>
+</p>
+
+<ul>
+  <li>Normal permissions do not directly risk the user's privacy. If your app
+  lists a normal permission in its manifest, the system grants the permission
+  automatically.
+  </li>
+
+  <li>Dangerous permissions can give the app access to the user's confidential
+  data. If your app lists a normal permission in its manifest, the system
+  grants the permission automatically. If you list a dangerous permission, the
+  user has to explicitly give approval to your app.
+  </li>
+</ul>
+
+<p>
+  For more information, see <a href=
+  "{@docRoot}guide/topics/security/permissions.html#normal-dangerous">Normal
+  and Dangerous Permissions</a>.
+</p>
+
+<p>
+  On all versions of Android, your app needs to declare both the normal and the
+  dangerous permissions it needs in its app manifest, as described in <a href=
+  "declaring.html">Declaring Permissions</a>. However, the <em>effect</em> of
+  that declaration is different depending on the system version and your
+  app's target SDK level:
+</p>
+
+<ul>
+  <li>If the device is running Android 5.1 or lower, <strong>or</strong> your app's target SDK
+  is 22 or lower: If you list a dangerous permission in your manifest, the user
+  has to grant the permission when they install the app; if they do not grant
+  the permission, the system does not install the app at all.
+  </li>
+
+  <li>If the device is running Android 6.0 or higher, <strong>and</strong> your app's target SDK
+  is 23 or higher: The app has to list the permissions in the manifest,
+  <em>and</em> it must request each dangerous permission it needs while the app
+  is running. The user can grant or deny each permission, and the app can
+  continue to run with limited capabilities even if the user denies a
+  permission request.
+  </li>
+</ul>
+
+<p class="note">
+  <strong>Note:</strong> Beginning with Android 6.0 (API level 23), users can
+  revoke permissions from any app at any time, even if the app targets a lower
+  API level. You should test your app to verify that it behaves properly when
+  it's missing a needed permission, regardless of what API level your app
+  targets.
+</p>
+
+<p>
+  This lesson describes how to use the Android <a href=
+  "{@docRoot}tools/support-library/index.html">Support Library</a> to check
+  for, and request, permissions. The Android framework provides similar methods
+  as of Android 6.0 (API level 23). However, using the support library is
+  simpler, since your app doesn't need to check which version of Android it's
+  running on before calling the methods.
+</p>
+
+<h2 id="perm-check">Check For Permissions</h2>
+
+<p>
+  If your app needs a dangerous permission, you must check whether you have
+  that permission every time you perform an operation that requires that
+  permission. The user is always free to revoke the permission, so even if the
+  app used the camera yesterday, it can't assume it still has that permission
+  today.
+</p>
+
+<p>
+  To check if you have a permission, call the {@link
+  android.support.v4.content.ContextCompat#checkSelfPermission
+  ContextCompat.checkSelfPermission()} method. For example, this snippet shows how to
+  check if the activity has permission to write to the calendar:
+</p>
+
+<pre>// Assume thisActivity is the current activity
+int permissionCheck = ContextCompat.checkSelfPermission(thisActivity,
+        Manifest.permission.WRITE_CALENDAR);</pre>
+
+<p>
+  If the app has the permission, the method returns {@link
+  android.content.pm.PackageManager#PERMISSION_GRANTED
+  PackageManager.PERMISSION_GRANTED}, and the app can proceed with the
+  operation. If the app does not have the permission, the method returns {@link
+  android.content.pm.PackageManager#PERMISSION_DENIED PERMISSION_DENIED}, and
+  the app has to explicitly ask the user for permission.
+</p>
+
+<h2 id="perm-request">Request Permissions</h2>
+
+<p>
+  If your app needs a dangerous permission that was listed in the app manifest,
+  it must ask the user to grant the permission. Android provides several
+  methods you can use to request a permission. Calling these methods brings up a
+  standard Android dialog, which you cannot customize.
+</p>
+<h3 id="explain">Explain why the app needs permissions</h3>
+
+<div class="figure" style="width:220px" id="fig-perms-dialog">
+  <img src="{@docRoot}images/training/permissions/request_permission_dialog.png"
+      srcset="{@docRoot}images/training/permissions/request_permission_dialog.png 1x,
+      {@docRoot}images/training/permissions/request_permission_dialog_2x.png 2x"
+      alt="" width="220" />
+  <p class="img-caption">
+    <strong>Figure 1.</strong> System dialog prompting the user to grant or deny
+    a permission.
+  </p>
+</div>
+
+<p>
+  In some circumstances, you might want to help the user understand why your
+  app needs a permission. For example, if a user launches a photography app,
+  the user probably won't be surprised that the app asks for permission to use
+  the camera, but the user might not understand why the app wants access to the
+  user's location or contacts. Before you request a permission, you should
+  consider providing an explanation to the user. Keep in mind that you don't
+  want to overwhelm the user with explanations; if you provide too many
+  explanations, the user might find the app frustrating and remove it.
+</p>
+
+<p>
+  One approach you might use is to provide an explanation only if the user has
+  already turned down that permission request. If a user keeps trying to use
+  functionality that requires a permission, but keeps turning down the
+  permission request, that probably shows that the user doesn't understand why
+  the app needs the permission to provide that functionality. In a situation
+  like that, it's probably a good idea to show an explanation.
+</p>
+
+<p>
+  To help find situations where the user might need an explanation, Android
+  provides a utiltity method, {@link
+  android.support.v4.app.ActivityCompat#shouldShowRequestPermissionRationale
+  shouldShowRequestPermissionRationale()}. This method returns <code>true</code> if the app
+  has requested this permission previously and the user denied the request.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> If the user turned down the permission request in the
+  past and chose the <strong>Don't ask again</strong> option in the permission
+  request system dialog, this method returns <code>false</code>. The method
+  also returns <code>false</code> if a device policy prohibits the app from
+  having that permission.
+</p>
+
+<h3 id="make-the-request">Request the permissions you need</h3>
+
+<p>
+  If your app doesn't already have the permission it needs, the app must call
+  one of the {@link android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()} methods to request the appropriate
+  permissions. Your app passes the permissions it wants, and also
+  an integer <em>request code</em> that you specify to identify this permission
+  request. This method functions asynchronously: it
+  returns right away, and after the user responds to the dialog box, the system
+  calls the app's callback method with the results, passing the same request
+  code that the app passed to
+  {@link android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()}.
+</p>
+
+<p>
+  The following code checks if the app has permission to read the user's
+  contacts, and requests the permission if necessary:
+</p>
+
+<pre>// Here, thisActivity is the current activity
+if (ContextCompat.checkSelfPermission(thisActivity,
+                Manifest.permission.READ_CONTACTS)
+        != PackageManager.PERMISSION_GRANTED) {
+
+    // Should we show an explanation?
+    if (ActivityCompat.shouldShowRequestPermissionRationale(thisActivity,
+            Manifest.permission.READ_CONTACTS)) {
+
+        // Show an expanation to the user *asynchronously* -- don't block
+        // this thread waiting for the user's response! After the user
+        // sees the explanation, try again to request the permission.
+
+    } else {
+
+        // No explanation needed, we can request the permission.
+
+        ActivityCompat.requestPermissions(thisActivity,
+                new String[]{Manifest.permission.READ_CONTACTS},
+                MY_PERMISSIONS_REQUEST_READ_CONTACTS);
+
+        // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
+        // app-defined int constant. The callback method gets the
+        // result of the request.
+    }
+}</pre>
+
+<p class="note">
+  <strong>Note:</strong> When your app calls {@link
+  android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()}, the system shows a standard dialog box to the user.
+  Your app <em>cannot</em> configure or alter that dialog box. If you need to
+  provide any information or explanation to the user, you should do that before
+  you call {@link android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()}, as described in <a href="#explain">Explain why the app
+  needs permissions</a>.
+</p>
+
+<h3 id="handle-response">Handle the permissions request response
+</h3>
+
+<p>
+  When your app requests permissions, the system presents a dialog box to the
+  user. When the user responds, the system invokes your app's {@link
+  android.support.v4.app.ActivityCompat.OnRequestPermissionsResultCallback#onRequestPermissionsResult
+  onRequestPermissionsResult()} method, passing it the user response. Your app
+  has to override that method to find out whether the permission was granted.
+  The callback is passed the same request code you passed to
+  {@link android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()}. For example, if an app requests {@link
+  android.Manifest.permission#READ_CONTACTS READ_CONTACTS} access it might have
+  the following callback method:
+</p>
+
+<pre>&#64;Override
+public void onRequestPermissionsResult(int requestCode,
+        String permissions[], int[] grantResults) {
+    switch (requestCode) {
+        case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
+            // If request is cancelled, the result arrays are empty.
+            if (grantResults.length > 0
+                &amp;&amp; grantResults[0] == PackageManager.PERMISSION_GRANTED) {
+
+                // permission was granted, yay! Do the
+                // contacts-related task you need to do.
+
+            } else {
+
+                // permission denied, boo! Disable the
+                // functionality that depends on this permission.
+            }
+            return;
+        }
+
+        // other 'case' lines to check for other
+        // permissions this app might request
+    }
+}</pre>
+
+<p>
+  The dialog box shown by the system describes the <a href=
+  "{@docRoot}guide/topics/security/permissions.html#perm-groups">permission
+  group</a> your app needs access to; it does not list the specific permission.
+  For example, if you request the {@link
+  android.Manifest.permission#READ_CONTACTS READ_CONTACTS} permission, the
+  system dialog box just says your app needs access to the device's contacts.
+  The user only needs to grant permission once for each permission group. If
+  your app requests any other permissions in that group (that are listed in
+  your app manifest), the system automatically grants them. When you request
+  the permission, the system calls your {@link
+  android.support.v4.app.ActivityCompat.OnRequestPermissionsResultCallback#onRequestPermissionsResult
+  onRequestPermissionsResult()} callback method and passes {@link
+  android.content.pm.PackageManager#PERMISSION_GRANTED PERMISSION_GRANTED}, the
+  same way it would if the user had explicitly granted your request through the
+  system dialog box.
+</p>
+
+<p class="note">
+  <strong>Note:</strong> Your app still needs to explicitly request every
+  permission it needs, even if the user has already granted another permission
+  in the same group. In addition, the grouping of permissions into groups may
+  change in future Android releases. Your code should not rely
+  on the assumption that particular permissions are or are not in the
+  same group.
+</p>
+
+<p>
+  For example, suppose you list both {@link
+  android.Manifest.permission#READ_CONTACTS READ_CONTACTS} and {@link
+  android.Manifest.permission#WRITE_CONTACTS WRITE_CONTACTS} in your app
+  manifest. If you request
+  {@link android.Manifest.permission#READ_CONTACTS READ_CONTACTS} and the user
+  grants the permission, and you then request {@link
+  android.Manifest.permission#WRITE_CONTACTS WRITE_CONTACTS}, the system
+  immediately grants you that permission without interacting with the user.
+</p>
+
+<p>
+  If the user denies a permission request, your app should take appropriate
+  action. For example, your app might show a dialog explaining why it could not
+  perform the user's requested action that needs that permission.
+</p>
+
+<p>
+  When the system asks the user to grant a permission, the user has the option
+  of telling the system not to ask for that permission again. In that case, any
+  time an app uses {@link
+  android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()} to ask for that permission again, the system
+  immediately denies the request. The system calls your {@link
+  android.support.v4.app.ActivityCompat.OnRequestPermissionsResultCallback#onRequestPermissionsResult
+  onRequestPermissionsResult()} callback method and passes {@link
+  android.content.pm.PackageManager#PERMISSION_DENIED PERMISSION_DENIED}, the
+  same way it would if the user had explicitly rejected your request again.
+  This means that when you call {@link
+  android.support.v4.app.ActivityCompat#requestPermissions
+  requestPermissions()}, you cannot assume that any direct interaction with the
+  user has taken place.
+</p>
diff --git a/docs/html/training/scheduling/wakelock.jd b/docs/html/training/scheduling/wakelock.jd
index 0fab7be..61c78a1 100644
--- a/docs/html/training/scheduling/wakelock.jd
+++ b/docs/html/training/scheduling/wakelock.jd
@@ -137,7 +137,7 @@
 
 <pre>
 PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
-Wakelock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
+WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
         "MyWakelockTag");
 wakeLock.acquire();</pre>
 
diff --git a/docs/html/training/search/setup.jd b/docs/html/training/search/setup.jd
index 044e422..5769293 100644
--- a/docs/html/training/search/setup.jd
+++ b/docs/html/training/search/setup.jd
@@ -10,7 +10,7 @@
       <h2>This lesson teaches you to</h2>
 
       <ul>
-        <li><a href="{@docRoot}training/search/setup.html#add-sv">Add the Search View to the Action
+        <li><a href="{@docRoot}training/search/setup.html#add-sv">Add the Search View to the App
         Bar</a></li>
 
         <li><a href="{@docRoot}training/search/setup.html#create-sc">Create a Searchable
@@ -23,30 +23,30 @@
       <h2>You should also read:</h2>
 
       <ul>
-        <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a></li>
+        <li><a href="{@docRoot}training/appbar/index.html">Adding the App Bar</a></li>
       </ul>
     </div>
   </div>
 
   <p>Beginning in Android 3.0, using the {@link android.widget.SearchView} widget as an item in
-  the action bar is the preferred way to provide search in your app. Like with all items in
-  the action bar, you can define the {@link android.widget.SearchView} to show at all times, only
+  the app bar is the preferred way to provide search in your app. Like with all items in
+  the app bar, you can define the {@link android.widget.SearchView} to show at all times, only
   when there is room, or as a collapsible action, which displays the {@link
-  android.widget.SearchView} as an icon initially, then takes up the entire action bar as a search
+  android.widget.SearchView} as an icon initially, then takes up the entire app bar as a search
   field when the user clicks the icon.</p>
 
   <p class="note"><strong>Note:</strong> Later in this class, you will learn how to make your
   app compatible down to Android 2.1 (API level 7) for devices that do not support
   {@link android.widget.SearchView}.</p>
 
-  <h2 id="add-sv">Add the Search View to the Action Bar</h2>
+  <h2 id="add-sv">Add the Search View to the App Bar</h2>
 
-  <p>To add a {@link android.widget.SearchView} widget to the action bar, create a file named
+  <p>To add a {@link android.widget.SearchView} widget to the app bar, create a file named
   <code>res/menu/options_menu.xml</code> in your project and add the following code to the file.
   This code defines how to create the search item, such as the icon to use and the title of the
   item. The <code>collapseActionView</code> attribute allows your {@link android.widget.SearchView}
-  to expand to take up the whole action bar and collapse back down into a
-  normal action bar item when not in use. Because of the limited action bar space on handset devices,
+  to expand to take up the whole app bar and collapse back down into a
+  normal app bar item when not in use. Because of the limited app bar space on handset devices,
   using the <code>collapsibleActionView</code> attribute is recommended to provide a better
   user experience.</p>
   <pre>
@@ -63,7 +63,7 @@
   <p class="note"><strong>Note:</strong> If you already have an existing XML file for your menu
   items, you can add the <code>&lt;item&gt;</code> element to that file instead.</p>
 
-  <p>To display the {@link android.widget.SearchView} in the action bar, inflate the XML menu
+  <p>To display the {@link android.widget.SearchView} in the app bar, inflate the XML menu
   resource (<code>res/menu/options_menu.xml</code>) in the {@link
   android.app.Activity#onCreateOptionsMenu onCreateOptionsMenu()} method of your activity:</p>
   <pre>
@@ -76,7 +76,7 @@
 }
 </pre>
 
-  <p>If you run your app now, the {@link android.widget.SearchView} appears in your app's action
+  <p>If you run your app now, the {@link android.widget.SearchView} appears in your app's app
   bar, but it isn't functional. You now need to define <em>how</em> the {@link
   android.widget.SearchView} behaves.</p>
 
@@ -194,4 +194,4 @@
 
   <p>If you run your app now, the {@link android.widget.SearchView} can accept the user's query and
   start your searchable activity with the {@link android.content.Intent#ACTION_SEARCH} intent. It
-  is now up to you to figure out how to store and search your data given a query.</p>
\ No newline at end of file
+  is now up to you to figure out how to store and search your data given a query.</p>
diff --git a/docs/html/training/secure-file-sharing/share-file.jd b/docs/html/training/secure-file-sharing/share-file.jd
index 6c52770..cc8b2f1 100644
--- a/docs/html/training/secure-file-sharing/share-file.jd
+++ b/docs/html/training/secure-file-sharing/share-file.jd
@@ -78,7 +78,7 @@
         ...
             &lt;activity
                 android:name=".FileSelectActivity"
-                android:label="&#64;"File Selector" &gt;
+                android:label="&#64;File Selector" &gt;
                 &lt;intent-filter&gt;
                     &lt;action
                         android:name="android.intent.action.PICK"/&gt;
diff --git a/docs/html/training/sharing/shareaction.jd b/docs/html/training/sharing/shareaction.jd
index ee811da..53e13d0 100644
--- a/docs/html/training/sharing/shareaction.jd
+++ b/docs/html/training/sharing/shareaction.jd
@@ -21,7 +21,8 @@
 <!-- other docs (NOT javadocs) -->
 <h2>You should also read</h2>
 <ul>
-  <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a></li>
+  <li><a href="{@docRoot}training/appbar/action-views.html">Action Views and
+    Action Providers</a></li>
 </ul>
 
 </div>
@@ -121,7 +122,8 @@
 want to set it and then update it as the UI changes. For example, when you view photos full screen
 in the Gallery app, the sharing intent changes as you flip between photos.</p>
 
-<p>For further discussion about the {@link android.widget.ShareActionProvider} object, see the <a
-href="{@docRoot}guide/topics/ui/actionbar.html#ActionProvider">Action Bar</a> guide.</p>
+<p>For further discussion about the {@link android.widget.ShareActionProvider}
+object, see <a href="{@docRoot}training/appbar/action-views.html">Action Views
+and Action Providers</a>.</p>
 
 
diff --git a/docs/html/training/snackbar/action.jd b/docs/html/training/snackbar/action.jd
new file mode 100644
index 0000000..58a18a5
--- /dev/null
+++ b/docs/html/training/snackbar/action.jd
@@ -0,0 +1,94 @@
+page.title=Adding an Action to a Message
+page.tags="Snackbar" "action" "popup"
+helpoutsWidget=true
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+
+<!--
+    <h2>This lesson teaches you to</h2>
+
+    <ol>
+      <li>
+        <a href="#id">heading</a>
+      </li>
+
+      <li>
+        <a href="#id">heading</a>
+      </li>
+    </ol>
+-->
+
+    <h2>See Also</h2>
+    <ul>
+      <li><a href="{@docRoot}guide/topics/ui/ui-events.html">
+          Input Events</a></li>
+    </ul>
+
+
+  </div>
+</div>
+
+<p>
+  You can add an action to a {@link android.support.design.widget.Snackbar},
+  allowing the user to respond to your message. If you add an action to a
+  {@link android.support.design.widget.Snackbar}, the
+  {@link android.support.design.widget.Snackbar} puts a button
+  next to the message text. The user can trigger your action by pressing the
+  button. For example, an email app might put an <em>undo</em> button on its
+  "email archived" message; if the user clicks the <em>undo</em> button, the
+  app takes the email back out of the archive.
+</p>
+
+<img src="{@docRoot}images/training/snackbar/snackbar_undo_action_2x.png"
+  srcset="{@docRoot}images/training/snackbar/snackbar_undo_action.png 1x,
+      {@docRoot}images/training/snackbar/snackbar_undo_action_2x.png 2x"
+  width="400" alt="">
+
+<p class="img-caption">
+  <strong>Figure 1.</strong> This Snackbar has an <strong>Undo</strong>
+  button, which restores the item that was just removed.
+</p>
+
+<p>
+  To add an action to a {@link android.support.design.widget.Snackbar} message,
+  you need to define a listener object that implements the {@link
+  android.view.View.OnClickListener} interface. The system calls your
+  listener's {@link android.view.View.OnClickListener#onClick onClick()} method
+  if the user clicks on the message action. For example, this snippet shows a
+  listener for an undo action:
+</p>
+
+<pre>public class MyUndoListener implements View.OnClickListener{
+
+    &amp;Override
+    public void onClick(View v) {
+
+        // Code to undo the user's last action
+    }
+}</pre>
+
+<p>
+  Use one of the
+  {@link android.support.design.widget.Snackbar#setAction(int, android.view.View.OnClickListener)
+  SetAction()} methods to attach the listener to your {@link
+  android.support.design.widget.Snackbar}. Be sure to attach the listener
+  before you call {@link android.support.design.widget.Snackbar#show show()},
+  as shown in this code sample:
+</p>
+
+<pre>Snackbar mySnackbar = Snackbar.make(findViewById(R.id.myCoordinatorLayout),
+                                R.string.email_archived, Snackbar.LENGTH_SHORT);
+<strong>mySnackbar.setAction(R.string.undo_string, new MyUndoListener());</strong>
+mySnackbar.show();</pre>
+
+<p class="note">
+  <strong>Note:</strong> A {@link android.support.design.widget.Snackbar}
+  automatically goes away after a short time, so you can't count on the user
+  seeing the message or having a chance to press the button. For this reason,
+  you should consider offering an alternate way to perform any {@link
+  android.support.design.widget.Snackbar} action.
+</p>
diff --git a/docs/html/training/snackbar/index.jd b/docs/html/training/snackbar/index.jd
new file mode 100644
index 0000000..312f10c
--- /dev/null
+++ b/docs/html/training/snackbar/index.jd
@@ -0,0 +1,94 @@
+page.title=Showing Pop-Up Messages
+page.tags="Snackbar","Toast"
+helpoutsWidget=true
+trainingnavtop=true
+startpage=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>Dependencies and prerequisites</h2>
+<ul>
+  <li><a href="{@docRoot}tools/support-library/features.html#design">Design
+    Support Library</a></li>
+</ul>
+
+
+<h2>You should also read</h2>
+<ul>
+  <li><a href="{@docRoot}training/implementing-navigation/index.html">
+    Implementing Effective Navigation</a></li>
+  <li><a href="https://www.google.com/design/spec/components/snackbars-toasts.html">
+    Material Design: Snackbars &amp; toasts</a></li>
+</ul>
+
+</div>
+</div>
+
+<p>
+  There are many situations where you might want your app to show a quick
+  message to the user, without necessarily waiting for the user to respond.
+  For example, when a user performs an action like sending an email or deleting
+  a file, your app should show a quick confirmation to the user. Often the user
+  doesn't need to respond to the message. The message needs to be prominent
+  enough that the user can see it, but not so prominent that it prevents the
+  user from working with your app.
+</p>
+
+<p>
+  Android provides the {@link android.support.design.widget.Snackbar} widget
+  for this common use case.
+  A {@link android.support.design.widget.Snackbar} provides a quick pop-up
+  message to the user. The current activity remains visible and interactive
+  while the {@link android.support.design.widget.Snackbar} is displayed. After a
+  short time, the Snackbar automatically dismisses itself.
+</p>
+
+<p>
+  This class teaches you how to use {@link
+  android.support.design.widget.Snackbar} to show pop-up messages.
+</p>
+
+<div class="figure" style="width:400px">
+  <img src="{@docRoot}images/training/snackbar/snackbar_drive_2x.png"
+    srcset="{@docRoot}images/training/snackbar/snackbar_drive.png 1x,
+        {@docRoot}images/training/snackbar/snackbar_drive_2x.png 2x"
+    width="400" alt="">
+  <p class="img-caption">
+    <strong>Figure 1.</strong> A {@link android.support.design.widget.Snackbar}
+    shows a message at the bottom of the
+    activity, but the rest of the activity is still usable.
+  </p>
+</div>
+
+<p class="note">
+  <strong>Note:</strong> The {@link
+  android.support.design.widget.Snackbar} class supersedes {@link
+  android.widget.Toast}. While {@link android.widget.Toast} is currently still
+  supported, {@link android.support.design.widget.Snackbar} is now the
+  preferred way to display brief, transient messages to the user.
+</p>
+
+<h2>Lessons</h2>
+
+<dl>
+  <dt>
+    <b><a href="showing.html">Using a Snackbar to Show a Message</a></b>
+  </dt>
+
+  <dd>
+    Learn how to use a {@link android.support.design.widget.Snackbar} to display
+    a brief message to the user.
+  </dd>
+
+  <dt>
+    <b><a href="action.html">Adding an Action to a Message</a></b>
+  </dt>
+
+  <dd>
+    Learn how to add an action to a message, allowing the user to respond to
+    the message.
+  </dd>
+</dl>
diff --git a/docs/html/training/snackbar/showing.jd b/docs/html/training/snackbar/showing.jd
new file mode 100644
index 0000000..c178c0b
--- /dev/null
+++ b/docs/html/training/snackbar/showing.jd
@@ -0,0 +1,204 @@
+page.title=Building and Displaying a Pop-Up Message
+page.tags="Snackbar" "popup" "pop-up"
+helpoutsWidget=true
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+
+    <h2>This lesson teaches you to</h2>
+
+    <ol>
+      <li><a href="#coordinator">Use a CoordinatorLayout</a></li>
+      <li><a href="#display">Display a Message</a></li>
+    </ol>
+
+    <h2>You should also read</h2>
+    <ul>
+      <li><a href="{@docRoot}tools/support-library/setup.html"
+    >Support Library Setup</a></li>
+    </ul>
+  </div>
+</div>
+
+
+<p>
+  You can use a {@link android.support.design.widget.Snackbar} to display a brief
+  message to the user. The message automatically goes away after a short
+  period. A {@link android.support.design.widget.Snackbar} is ideal
+  for brief messages that the user doesn't necessarily need to act on. For
+  example, an email app could use a {@link
+  android.support.design.widget.Snackbar} to tell the user that the app
+  successfully sent an email.
+</p>
+
+<h2 id="coordinator">Use a CoordinatorLayout</h2>
+
+<p>
+  A {@link android.support.design.widget.Snackbar} is attached to a view. The
+  {@link android.support.design.widget.Snackbar} provides basic functionality
+  if it is attached to any object derived from the {@link android.view.View}
+  class, such as any of the common layout objects. However, if the
+  {@link android.support.design.widget.Snackbar}
+  is attached to a {@link android.support.design.widget.CoordinatorLayout}, the
+  {@link android.support.design.widget.Snackbar} gains additional features:
+</p>
+
+<ul>
+  <li>The user can dismiss the {@link android.support.design.widget.Snackbar}
+  by swiping it away.
+  </li>
+
+  <li>The layout moves some other UI elements when the {@link
+  android.support.design.widget.Snackbar} appears. For example, if the layout
+  has a {@link android.support.design.widget.FloatingActionButton}, the layout
+  moves the button up when it shows a {@link
+  android.support.design.widget.Snackbar}, instead of drawing the {@link
+  android.support.design.widget.Snackbar} on top of the button. You can see how
+  this looks in Figure 1.
+  </li>
+</ul>
+
+<p>
+  The {@link android.support.design.widget.CoordinatorLayout} class provides a superset
+  of the functionality of {@link android.widget.FrameLayout}. If your app
+  already uses a {@link android.widget.FrameLayout}, you can just replace that
+  layout with a {@link android.support.design.widget.CoordinatorLayout} to
+  enable the full {@link android.support.design.widget.Snackbar} functionality.
+  If your app uses other layout objects, the simplest thing to do is wrap your
+  existing layout elements in a {@link
+  android.support.design.widget.CoordinatorLayout}, as in this example:
+</p>
+
+<pre>&lt;android.support.design.widget.CoordinatorLayout
+    android:id="@+id/myCoordinatorLayout"
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
+
+    &lt;!-- Here are the existing layout elements, now wrapped in
+         a CoordinatorLayout --&gt;
+    &lt;LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:orientation="vertical"&gt;
+
+        &lt;!-- …Toolbar, other layouts, other elements… --&gt;
+
+    &lt;/LinearLayout>
+
+&lt;/android.support.design.widget.CoordinatorLayout&gt;</pre>
+
+<p>
+  Make sure to set an <code>android:id</code> tag for your {@link
+  android.support.design.widget.CoordinatorLayout}. You need the layout's ID
+  when you display the message.
+</p>
+
+<div class="framed-nexus5-port-span-5" id="video-coord">
+  <video class="play-on-hover" autoplay loop
+    alt="If the Snackbar is attached to a CoordinatorLayout, the layout
+        moves other elements up when it shows the Snackbar.">
+  <!-- Preferred video size 216x384 (portrait) -->
+    <source src="{@docRoot}images/training/snackbar/snackbar_button_move.mp4">
+  </video>
+</div>
+
+<p class="img-caption">
+  <strong>Figure 1.</strong> The {@link android.support.design.widget.CoordinatorLayout}
+  moves the {@link android.support.design.widget.FloatingActionButton} up
+  when the {@link android.support.design.widget.Snackbar} appears.
+</p>
+
+<h2 id="display">
+  Display a Message
+</h2>
+
+<p>
+  There are two steps to displaying a message. First, you create a {@link
+  android.support.design.widget.Snackbar} object with the message text. Then,
+  you call that object's {@link android.support.design.widget.Snackbar#show
+  show()} method to display the message to the user.
+</p>
+
+<h3 id="create-snackbar">Creating a Snackbar object</h3>
+
+<p>
+  Create a {@link android.support.design.widget.Snackbar} object by
+  calling the static {@link android.support.design.widget.Snackbar#make
+  Snackbar.make()} method. When you create the {@link
+  android.support.design.widget.Snackbar}, you specify both the message it
+  displays, and the length of time to show the message:
+</p>
+
+<pre>Snackbar mySnackbar = Snackbar.make(viewId, stringId, duration);</pre>
+
+<dl>
+  <dt>
+    <em>viewId</em>
+  </dt>
+
+  <dd>
+    The view to attach the {@link android.support.design.widget.Snackbar} to.
+    The method actually searches up the view hierarchy from the passed
+    <em>viewId</em> until it reaches either a {@link
+    android.support.design.widget.CoordinatorLayout}, or the window decor's
+    content view. Ordinarily, it's simplest to just pass the ID of the {@link
+    android.support.design.widget.CoordinatorLayout} enclosing your content.
+  </dd>
+
+  <dt>
+    <em>stringId</em>
+  </dt>
+
+  <dd>
+    The resource ID of the message you want to display. This can be formatted
+    or unformatted text.
+  </dd>
+
+  <dt>
+    <em>duration</em>
+  </dt>
+
+  <dd>
+    The length of time to show the message. This can be either {@link
+    android.support.design.widget.Snackbar#LENGTH_SHORT LENGTH_SHORT} or {@link
+    android.support.design.widget.Snackbar#LENGTH_LONG LENGTH_LONG}.
+  </dd>
+</dl>
+
+<h3 id="show-snackbar">Showing the message to the user</h3>
+
+<p>
+  Once you have created the {@link android.support.design.widget.Snackbar},
+  call its {@link android.support.design.widget.Snackbar#show show()} method to
+  display the {@link android.support.design.widget.Snackbar} to the user:
+</p>
+
+<pre>mySnackbar.show();</pre>
+
+<p>
+  The system does not show multiple {@link
+  android.support.design.widget.Snackbar} objects at the same time, so if the
+  view is currently displaying another {@link
+  android.support.design.widget.Snackbar}, the system queues your {@link
+  android.support.design.widget.Snackbar} and displays it after the current
+  {@link android.support.design.widget.Snackbar} expires or is dismissed.
+</p>
+
+<p>
+  If you just want to show a message to the user and won't need to call any of
+  the {@link android.support.design.widget.Snackbar} object's utility methods,
+  you don't need to keep the reference to the {@link
+  android.support.design.widget.Snackbar} after you call {@link
+  android.support.design.widget.Snackbar#show show()}. For this reason, it's
+  common to use method chaining to create and show a {@link
+  android.support.design.widget.Snackbar} in one statement:
+</p>
+
+<pre>Snackbar.make(findViewById(R.id.myCoordinatorLayout), R.string.email_sent,
+                        Snackbar.LENGTH_SHORT)
+        .show();</pre>
diff --git a/docs/html/training/sync-adapters/creating-sync-adapter.jd b/docs/html/training/sync-adapters/creating-sync-adapter.jd
index 9bd17ba..0819c16 100644
--- a/docs/html/training/sync-adapters/creating-sync-adapter.jd
+++ b/docs/html/training/sync-adapters/creating-sync-adapter.jd
@@ -382,7 +382,7 @@
     ...
     // Constants
     // The authority for the sync adapter's content provider
-    public static final String AUTHORITY = "com.example.android.datasync.provider"
+    public static final String AUTHORITY = "com.example.android.datasync.provider";
     // An account type, in the form of a domain name
     public static final String ACCOUNT_TYPE = "example.com";
     // The account name
@@ -416,7 +416,7 @@
          * Add the account and account type, no password or user data
          * If successful, return the Account object, otherwise report an error.
          */
-        if (accountManager.addAccountExplicitly(newAccount, null, null))) {
+        if (accountManager.addAccountExplicitly(newAccount, null, null)) {
             /*
              * If you don't set android:syncable="true" in
              * in your &lt;provider&gt; element in the manifest,
diff --git a/docs/html/training/sync-adapters/running-sync-adapter.jd b/docs/html/training/sync-adapters/running-sync-adapter.jd
index 194e94b..033450f 100644
--- a/docs/html/training/sync-adapters/running-sync-adapter.jd
+++ b/docs/html/training/sync-adapters/running-sync-adapter.jd
@@ -11,7 +11,6 @@
 <ol>
     <li><a href="#RunByMessage">Run the Sync Adapter When Server Data Changes</a>
     <li><a href="#RunDataChange">Run the Sync Adapter When Content Provider Data Changes</a></li>
-    <li><a href="#RunByNetwork">Run the Sync Adapter After a Network Message</a></li>
     <li><a href="#RunPeriodic">Run the Sync Adapter Periodically</a></li>
     <li><a href="#RunOnDemand">Run the Sync Adapter On Demand</a></li>
 </ol>
@@ -69,15 +68,6 @@
         content provider, detecting data changes may be more difficult.
     </dd>
     <dt>
-        When the system sends out a network message
-    </dt>
-    <dd>
-        Run a sync adapter when the Android system sends out a network message that keeps the
-        TCP/IP connection open; this message is a basic part of the networking framework. Using
-        this option is one way to run the sync adapter automatically. Consider using it in
-        conjunction with interval-based sync adapter runs.
-    </dd>
-    <dt>
         At regular intervals
     </dt>
     <dd>
@@ -283,60 +273,6 @@
     ...
 }
 </pre>
-<h2 id="RunByNetwork">Run the Sync Adapter After a Network Message</h2>
-<p>
-    When a network connection is available, the Android system sends out a message
-    every few seconds to keep the device's TCP/IP connection open. This message also goes to
-    the {@link android.content.ContentResolver} of each app. By calling
-    {@link android.content.ContentResolver#setSyncAutomatically setSyncAutomatically()},
-    you can run the sync adapter whenever the {@link android.content.ContentResolver}
-    receives the message.
-</p>
-<p>
-    By scheduling your sync adapter to run when the network message is sent, you ensure that your
-    sync adapter is always scheduled to run while the network is available. Use this option if you
-    don't have to force a data transfer in response to data changes, but you do want to ensure
-    your data is regularly updated. Similarly, you can use this option if you don't want a fixed
-    schedule for your sync adapter, but you do want it to run frequently.
-</p>
-<p>
-    Since the method
-    {@link android.content.ContentResolver#setSyncAutomatically setSyncAutomatically()}
-    doesn't disable {@link android.content.ContentResolver#addPeriodicSync addPeriodicSync()}, your
-    sync adapter may be triggered repeatedly in a short period of time. If you do want to run
-    your sync adapter periodically on a regular schedule, you should disable
-    {@link android.content.ContentResolver#setSyncAutomatically setSyncAutomatically()}.
-</p>
-<p>
-    The following code snippet shows you how to configure your
-    {@link android.content.ContentResolver} to run your sync adapter in response to a network
-    message:
-</p>
-<pre>
-public class MainActivity extends FragmentActivity {
-    ...
-    // Constants
-    // Content provider authority
-    public static final String AUTHORITY = "com.example.android.datasync.provider";
-    // Account
-    public static final String ACCOUNT = "default_account";
-    // Global variables
-    // A content resolver for accessing the provider
-    ContentResolver mResolver;
-    ...
-    &#64;Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        ...
-        // Get the content resolver for your app
-        mResolver = getContentResolver();
-        // Turn on automatic syncing for the default account and authority
-        mResolver.setSyncAutomatically(ACCOUNT, AUTHORITY, true);
-        ...
-    }
-    ...
-}
-</pre>
 <h2 id="RunPeriodic">Run the Sync Adapter Periodically</h2>
 <p>
     You can run your sync adapter periodically by setting a period of time to wait between runs,
diff --git a/docs/html/training/system-ui/dim.jd b/docs/html/training/system-ui/dim.jd
old mode 100644
new mode 100755
index f28c948..be2e6c2
--- a/docs/html/training/system-ui/dim.jd
+++ b/docs/html/training/system-ui/dim.jd
@@ -20,7 +20,7 @@
 
 <ul>
     <li>
-        <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> API Guide
+        <a href="{@docRoot}training/appbar/index.html">Adding the App Bar</a>
     </li>
     <li>
         <a href="{@docRoot}design/index.html">
@@ -53,7 +53,7 @@
 
 <h2 id="dim">Dim the Status and Navigation Bars</h2>
 
-<p>You can dim the status and notification bars on Android 4.0 and higher using the
+<p>You can dim the status and notification bars using the
 {@link android.view.View#SYSTEM_UI_FLAG_LOW_PROFILE} flag, as follows:</p>
 
 <pre>
diff --git a/docs/html/training/system-ui/immersive.jd b/docs/html/training/system-ui/immersive.jd
index 0a1516c..8e4ef09 100644
--- a/docs/html/training/system-ui/immersive.jd
+++ b/docs/html/training/system-ui/immersive.jd
@@ -21,7 +21,7 @@
 
 <ul>
     <li>
-        <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> API Guide
+        <a href="{@docRoot}training/appbar/index.html">Adding the App Bar</a>
     </li>
     <li>
         <a href="{@docRoot}design/patterns/fullscreen.html">
diff --git a/docs/html/training/system-ui/index.jd b/docs/html/training/system-ui/index.jd
index 56fa54b..80d6967 100644
--- a/docs/html/training/system-ui/index.jd
+++ b/docs/html/training/system-ui/index.jd
@@ -24,7 +24,7 @@
 
 <ul>
     <li>
-        <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> API Guide
+        <a href="{@docRoot}training/appbar/index.html">Adding the App Bar</a>
     </li>
     <li>
         <a href="{@docRoot}design/patterns/fullscreen.html">
diff --git a/docs/html/training/system-ui/navigation.jd b/docs/html/training/system-ui/navigation.jd
old mode 100644
new mode 100755
index 1c73c70..87f52c6
--- a/docs/html/training/system-ui/navigation.jd
+++ b/docs/html/training/system-ui/navigation.jd
@@ -10,7 +10,7 @@
 <!-- table of contents -->
 <h2>This lesson teaches you to</h2>
 <ol>
-  <li><a href="#40">Hide the Navigation Bar on 4.0 and Higher</a></li>
+  <li><a href="#40">Hide the Navigation Bar</a></li>
   <li><a href="#behind">Make Content Appear Behind the Navigation Bar</a></li>
 </ol>
 
@@ -20,7 +20,7 @@
 
 <ul>
     <li>
-        <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> API Guide
+        <a href="{@docRoot}training/appbar/index.html">Adding the App Bar</a>
     </li>
     <li>
         <a href="{@docRoot}design/index.html">
@@ -56,9 +56,9 @@
 
 
 
-<h2 id="40">Hide the Navigation Bar on 4.0 and Higher</h2>
+<h2 id="40">Hide the Navigation Bar</h2>
 
-<p>You can hide the navigation bar on Android 4.0 and higher using the
+<p>You can hide the navigation bar using the
 {@link android.view.View#SYSTEM_UI_FLAG_HIDE_NAVIGATION} flag. This snippet hides both
 the navigation bar and the status bar:</p>
 <pre>View decorView = getWindow().getDecorView();
diff --git a/docs/html/training/system-ui/status.jd b/docs/html/training/system-ui/status.jd
old mode 100644
new mode 100755
index 06b6143..8e5b356
--- a/docs/html/training/system-ui/status.jd
+++ b/docs/html/training/system-ui/status.jd
@@ -12,10 +12,7 @@
 <ol>
   <li><a href="#40">Hide the Status Bar on Android 4.0 and Lower</a></li>
   <li><a href="#41">Hide the Status Bar on Android 4.1 and Higher</a></li>
-  <li><a href="#44">Hide the Status Bar on Android 4.4 and Higher</a></li>
-
   <li><a href="#behind">Make Content Appear Behind the Status Bar</a></li>
-  <li><a href="#action-bar">Synchronize the Status Bar with Action Bar Transition</a></li>
 </ol>
 
 <!-- other docs (NOT javadocs) -->
@@ -23,7 +20,7 @@
 
 <ul>
     <li>
-        <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> API Guide
+        <a href="{@docRoot}training/appbar/index.html">Adding the App Bar</a>
     </li>
     <li>
         <a href="{@docRoot}design/index.html">
@@ -104,7 +101,7 @@
         super.onCreate(savedInstanceState);
         // If the Android version is lower than Jellybean, use this call to hide
         // the status bar.
-        if (Build.VERSION.SDK_INT < 16) {
+        if (Build.VERSION.SDK_INT &lt; 16) {
             getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                     WindowManager.LayoutParams.FLAG_FULLSCREEN);
         }
@@ -194,33 +191,3 @@
 view hierarchy when the content insets for a window have changed, to allow the window to
 adjust its content accordingly. By overriding this method you can handle the
 insets (and hence your app's layout) however you want. </p>
-
- <h2 id="action-bar">Synchronize the Status Bar with Action Bar Transition</h2>
-
-  <p>On Android 4.1 and higher, to avoid resizing your layout when the action bar hides and
-  shows, you can enable overlay mode for the <a href="{@docRoot}guide/topics/ui/actionbar.html">action bar</a>.
-  When in overlay mode, your activity layout uses all the
-  space available as if the action bar is not there and the system draws the action bar in
-  front of your layout. This obscures some of the layout at the top, but now when the
-  action bar hides or appears, the system does not need to resize your layout and the
-  transition is seamless.</p>
-
-  <p>To enable overlay mode for the action bar, you need to create a custom theme that
-  extends an existing theme with an action bar and set the
-  {@code android:windowActionBarOverlay} attribute
-  to {@code true}. For more discussion of this topic, see
-  <a href="{@docRoot}training/basics/actionbar/overlaying.html#EnableOverlay">
-  Overlaying the Action Bar</a> in the <a href="{@docRoot}training/basics/actionbar/index.html">
-  Adding the Action Bar</a> class.</p>
-
-
-<p>Then use
-{@link android.view.View#SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN},
-as described above,
-to set  your activity layout to use the same screen area that's available when you've enabled
-{@link android.view.View#SYSTEM_UI_FLAG_FULLSCREEN}.
-
-When you want to hide the system UI, use
-{@link android.view.View#SYSTEM_UI_FLAG_FULLSCREEN}.
-This also hides the action bar (because {@code windowActionBarOverlay=”true”)} and does
-so with a coordinated animation when both hiding and showing the two.</p>
diff --git a/docs/html/training/system-ui/visibility.jd b/docs/html/training/system-ui/visibility.jd
index b562add..14c139e 100644
--- a/docs/html/training/system-ui/visibility.jd
+++ b/docs/html/training/system-ui/visibility.jd
@@ -19,7 +19,7 @@
 
 <ul>
     <li>
-        <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> API Guide
+        <a href="{@docRoot}training/appbar/index.html">Adding the App Bar</a>
     </li>
     <li>
         <a href="{@docRoot}design/index.html">
diff --git a/docs/html/training/testing/index.jd b/docs/html/training/testing/index.jd
new file mode 100644
index 0000000..d6405c8
--- /dev/null
+++ b/docs/html/training/testing/index.jd
@@ -0,0 +1,72 @@
+page.title=Best Practices for Testing
+page.article=true
+page.image=images/testing/hwtest_junit_success.png
+
+meta.tags="testing"
+page.tags="testing"
+
+page.metaDescription=Starting point for testing Android apps, with guidelines, information, and examples.
+
+@jd:body
+
+<img src="/images/testing/testing-icon.png"
+style="float:right; margin:0 0 20px 30px" width="245" height="229" />
+
+<p>
+  Testing your app is an integral part of the app development process. Testing allows you to verify
+  the correctness, functional behavior, and usability of your app before it is released publicly.
+</p>
+<br>
+<br>
+
+<h2 id="start">Get Started</h2>
+
+<p>
+  Learn the basics of testing your app, with information about building and running your tests with
+  Android Studio:
+</p>
+
+<div class="resource-widget resource-flow-layout col-12"
+  data-query="collection:training/testing/overview"
+  data-cardSizes="6x3"
+  data-maxresults="3">
+</div>
+
+
+<h2 id="tools">Testing Tools and APIs</h2>
+
+<p>
+  Learn about the tools provided by the Android platform that help you test every aspect of your app
+  at every level:
+</p>
+
+<div class="resource-widget resource-flow-layout landing col-12"
+  data-query="collection:training/testing/tools"
+  data-cardSizes="15x3, 9x2, 9x2, 9x2, 9x2"
+  data-maxResults="5">
+</div>
+
+
+<h2 id="techniques">App Testing Techniques</h2>
+
+<p>
+  Learn techniques for testing your apps:
+</p>
+
+<div class="resource-widget resource-flow-layout landing col-12"
+  data-query="collection:training/testing/techniques"
+  data-cardSizes="6x3
+  data-maxResults="3">
+</div>
+
+<h2 id="resources">Other Resources</h2>
+
+<p>
+  More resources for app testing:
+</p>
+
+<div class="resource-widget resource-flow-layout landing col-12"
+  data-query="collection:training/testing/resources"
+  data-cardSizes="9x3"
+  data-maxResults="6">
+</div>
\ No newline at end of file
diff --git a/docs/html/training/testing/integration-testing/content-provider-testing.jd b/docs/html/training/testing/integration-testing/content-provider-testing.jd
new file mode 100644
index 0000000..75869d9
--- /dev/null
+++ b/docs/html/training/testing/integration-testing/content-provider-testing.jd
@@ -0,0 +1,174 @@
+page.title=Testing Your Content Provider
+page.tags=testing, content provider
+trainingnavtop=true
+
+@jd:body
+
+<!-- This is the training bar -->
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>Dependencies and Prerequisites</h2>
+
+  <ul>
+    <li>Android 2.2 (API level 8) or higher</li>
+    <li><a href="{@docRoot}tools/testing-support-library/index.html">
+      Android Testing Support Library</a></li>
+    <li><a href="{@docRoot}tools/studio/index.html">Android Studio 1.4.1 or higher</a>.</li>
+  </ul>
+
+  <h2>This lesson teaches you to</h2>
+
+  <ol>
+    <li><a href="#build">Create Integration Tests for Content Providers</a></li>
+    <li><a href="#WhatToTest">What to Test</a></li>
+  </ol>
+
+  <h2>You should also read</h2>
+  <ul>
+      <li><a href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a>
+      </li>
+  </ul>
+</div>
+</div>
+
+<p>
+    If you are implementing a <a href="{@docRoot}guide/topics/providers/content-providers.html">
+    content provider</a> to store and retrieve data or to make data
+    accessible to other apps, you should test your provider to ensure that it doesn't behave in an
+    unexpected way. This lesson describes how to test public content providers, and is also
+    applicable to providers that you keep private to your own app.
+</p>
+<h2 id="build">Create Integration Tests for Content Providers</h2>
+<p>
+In Android, apps view content providers as data APIs that provide
+tables of data, with their internals hidden from view. A content provider may have many
+public constants, but it usually has few if any public methods and no public variables.
+For this reason, you should write your tests based only on the provider's public members.
+A content provider that is designed like this is offering a contract between itself and its users.
+</p>
+<p>
+Content providers let you access actual user data, so it's important to ensure
+that you test the content provider in an isolated testing environment. This approach allows you to
+only run against data dependencies set explicitly in the test case. It also means that your tests
+do not modify actual user data. For example, you should avoid writing a test that fails because
+there was data left over from a previous test. Similarly, your test should avoid adding or deleting
+actual contact information in a provider.
+</p>
+
+<p>
+To test your content provider in isolation, use the {@link android.test.ProviderTestCase2} class.
+This class allows you to use Android mock object classes such as {@link android.test.IsolatedContext}
+and {@link android.test.mock.MockContentResolver} to access file and database information without
+affecting the actual user data.
+</p>
+
+<p>Your integration test should be written as a JUnit 4 test class. To learn more about creating
+JUnit 4 test classes and using JUnit 4 assertions, see
+<a href="{@docRoot}training/testing/unit-testing/local-unit-tests.html#build">
+Create a Local Unit Test Class</a>.</p>
+
+<p>To create an integration test for your content provider, you must perform these steps:</p>
+<ul>
+    <li>Create your test class as a subclass of {@link android.test.ProviderTestCase2}.</li>
+    <li>Add the
+{@code &#64;RunWith(AndroidJUnit4.class)} annotation at the beginning of your test class
+definition.</li>
+    <li>Specify the
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a> class that the
+<a href="{@docRoot}tools/testing-support-library/index.html">Android Testing Support Library</a>
+provides as your default test runner. This step is described in more detail in
+<a href="{@docRoot}training/testing/start/index.html#run-instrumented-tests">
+Getting Started with Testing</a>.</li>
+    <li>Set the {@link android.content.Context} object from the
+<a href="{@docRoot}reference/android/support/test/InstrumentationRegistry.html">
+{@code InstrumentationRegistry}</a> class. See the snippet below for an example.
+    <pre>
+&#64;Override
+protected void setUp() throws Exception {
+    setContext(InstrumentationRegistry.getTargetContext());
+    super.setUp();
+}</pre>
+    </li>
+</ul>
+
+<h3 id="ProviderTestCase2">How ProviderTestCase2 works</h3>
+<p>
+    You test a provider with a subclass of {@link android.test.ProviderTestCase2}. This base class
+    extends {@link android.test.AndroidTestCase}, so it provides the JUnit testing framework as well
+    as Android-specific methods for testing application permissions. The most important
+    feature of this class is its initialization, which creates the isolated test environment.
+</p>
+<p>
+    The initialization is done in the constructor for {@link android.test.ProviderTestCase2}, which
+    subclasses call in their own constructors. The {@link android.test.ProviderTestCase2}
+    constructor creates an {@link android.test.IsolatedContext} object that allows file and
+    database operations but stubs out other interactions with the Android system.
+    The file and database operations themselves take place in a directory that is local to the
+    device or emulator and has a special prefix.
+</p>
+<p>
+    The constructor then creates a {@link android.test.mock.MockContentResolver} to use as the
+    resolver for the test.
+</p>
+<p>
+    Lastly, the constructor creates an instance of the provider under test. This is a normal
+    {@link android.content.ContentProvider} object, but it takes all of its environment information
+    from the {@link android.test.IsolatedContext}, so it is restricted to
+    working in the isolated test environment. All of the tests done in the test case class run
+    against this isolated object.
+</p>
+
+<p>
+You run integration tests for content providers the same way as instrumented unit tests. To run the
+integration test for your content provider, follow the steps described in <a
+href="{@docRoot}training/testing/unit-testing/instrumented-unit-tests.html#run">
+Run Instrumented Unit Tests</a>.
+</p>
+
+<h2 id="WhatToTest">What to Test</h2>
+<p>
+Here are some specific guidelines for testing content providers.
+</p>
+<ul>
+    <li>
+        Test with resolver methods: Even though you can instantiate a provider object in
+        {@link android.test.ProviderTestCase2}, you should always test with a resolver object
+        using the appropriate URI. Doing so ensures that you are testing the provider by performing
+        the same interaction that a regular application would use.
+    </li>
+    <li>
+        Test a public provider as a contract: If you intend your provider to be public and
+        available to other applications, you should test it as a contract. Some examples of how to
+        do so are as follows:
+        <ul>
+            <li>
+                Test with constants that your provider publicly exposes. For
+                example, look for constants that refer to column names in one of the provider's
+                data tables. These should always be constants publicly defined by the provider.
+            </li>
+            <li>
+                Test all the URIs that your provider offers. Your provider may offer several URIs,
+                each one referring to a different aspect of the data.
+            </li>
+            <li>
+                Test invalid URIs: Your unit tests should deliberately call the provider with an
+                invalid URI, and look for errors. A good provider design is to throw an
+                {@code IllegalArgumentException} for invalid URIs.
+
+            </li>
+        </ul>
+    </li>
+    <li>
+        Test the standard provider interactions: Most providers offer six access methods:
+        {@code query()}, {@code insert()}, {@code delete()}, {@code update()},
+        {@code getType()}, and {@code onCreate()}. Your tests should verify that all
+        of these methods work. These methods are described in more detail in the topic
+        <a href="{@docRoot}guide/topics/providers/content-providers.html">Content Providers</a>.
+    </li>
+    <li>
+        Test business logic: If the content provider implements business logic, you should test it.
+        Business logic includes handling of invalid values, financial or arithmetic calculations,
+        elimination or combining of duplicates.
+    </li>
+</ul>
\ No newline at end of file
diff --git a/docs/html/training/testing/integration-testing/index.jd b/docs/html/training/testing/integration-testing/index.jd
new file mode 100644
index 0000000..d7ce899
--- /dev/null
+++ b/docs/html/training/testing/integration-testing/index.jd
@@ -0,0 +1,55 @@
+page.title=Testing App Component Integrations
+page.tags=testing,integration
+
+trainingnavtop=true
+startpage=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+        <h2>
+          You should also read
+        </h2>
+        <ul>
+          <li>
+            <a href="{@docRoot}tools/testing-support-library/index.html">Testing Support Library</a>
+          </li>
+        </ul>
+</div>
+</div>
+
+<p>
+If your app uses components that users do not directly interact with, such as
+a <a href="{@docRoot}guide/components/services.html">Service</a> or
+<a href="{@docRoot}guide/topics/providers/content-providers.html">Content Provider</a>, you
+should validate that these components behave in a correct way with your app.</p>
+<p>When developing such components, you should get into the habit of writing
+<em>integration tests</em> in order to validate the component's behavior when your app runs on a
+device or an emulator.</p>
+
+<p class="note"><strong>Note:</strong> Android does not provide a separate test case class for
+{@link android.content.BroadcastReceiver}. To verify that a
+{@link android.content.BroadcastReceiver} responds correctly, you can test the component that sends
+it an {@link android.content.Intent} object. Alternatively, you can create an instance of your
+{@link android.content.BroadcastReceiver} by calling
+<a href="{@docRoot}reference/android/support/test/InstrumentationRegistry.html#getContext()">
+{@code InstrumentationRegistry.getTargetContext()}</a>, then call the
+{@link android.content.BroadcastReceiver} method that you want to test (usually, this is
+the
+{@link android.content.BroadcastReceiver#onReceive(android.content.Context, android.content.Intent)
+onReceive()} method).</p>
+
+<p>This class teaches you to build automated integration tests using the testing APIs and tools
+that the Android platform provides.</p>
+<h2>Lessons</h2>
+<dl>
+  <dt><strong><a href="service-testing.html">
+Testing Your Service</a></strong></dt>
+    <dd>Learn how to build integration tests to verify that a service works correctly with your
+    app.</dd>
+  <dt><strong><a href="content-provider-testing.html">
+Testing Your Content Provider</a></strong></dt>
+    <dd>Learn how to build integration tests to verify that a content provider works correctly with
+    your app.</dd>
+</dl>
\ No newline at end of file
diff --git a/docs/html/training/testing/integration-testing/service-testing.jd b/docs/html/training/testing/integration-testing/service-testing.jd
new file mode 100644
index 0000000..7b420ac
--- /dev/null
+++ b/docs/html/training/testing/integration-testing/service-testing.jd
@@ -0,0 +1,140 @@
+page.title=Testing Your Service
+page.tags=testing, service
+trainingnavtop=true
+
+@jd:body
+
+<!-- This is the training bar -->
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>Dependencies and Prerequisites</h2>
+
+  <ul>
+    <li>Android 2.2 (API level 8) or higher</li>
+    <li><a href="{@docRoot}tools/testing-support-library/index.html">
+      Android Testing Support Library</a></li>
+    <li><a href="{@docRoot}tools/studio/index.html">Android Studio 1.4.1 or higher</a>.</li>
+  </ul>
+
+  <h2>This lesson teaches you to</h2>
+
+  <ol>
+    <li><a href="#setup">Set Up Your Testing Environment</a></li>
+    <li><a href="#build">Create an Integrated Test for Services</a></li>
+    <li><a href="#run">Run Integration Tests for Services</a></li>
+  </ol>
+
+  <h2>You should also read</h2>
+  <ul>
+      <li><a href="{@docRoot}guide/components/services.html">Services</a></li>
+  </ul>
+
+  <h2>Try it out</h2>
+
+  <ul>
+    <li>
+<a href="https://github.com/googlesamples/android-testing/tree/master/integration/ServiceTestRuleSample"
+class="external-link">Service Test Code Samples</a></li>
+  </ul>
+</div>
+</div>
+
+<p>
+If you are implementing a local {@link android.app.Service} as a component of
+your app, you should test the {@link android.app.Service} to ensure that it doesn't behave in an
+unexpected way. You can create
+<a href="{@docRoot}training/testing/unit-testing/instrumented-unit-tests.html">
+instrumented unit tests</a> to verify that the behavior in the {@link android.app.Service}
+is correct; for example, the service stores and returns valid data values and performs
+data operations correctly.
+</p>
+
+<p>
+The <a href="{@docRoot}tools/testing-support-library/index.html">Android Testing Support Library</a>
+provides an API for testing your {@link android.app.Service} objects in isolation.
+The
+<a href="{@docRoot}reference/android/support/test/rule/ServiceTestRule.html">ServiceTestRule</a>
+class is a JUnit 4 rule that starts your service before your unit test methods
+run, and shuts down the service after tests complete. By using this test rule, you ensure that the
+connection to the service is always established before your test method runs. To
+learn more about JUnit 4 rules, see the <a href="https://github.com/junit-team/junit/wiki/Rules"
+class="external-link">JUnit documentation</a>.
+</p>
+
+<p style="note">
+<strong>Note</strong>: The
+<a href="{@docRoot}reference/android/support/test/rule/ServiceTestRule.html">ServiceTestRule</a>
+class does not support testing of {@link android.app.IntentService} objects.
+If you need to test a {@link android.app.IntentService} object, you should encapsulate the logic
+in a separate class and create a corresponding unit test instead.
+</p>
+
+<h2 id="setup">Set Up Your Testing Environment</h2>
+<p>Before building your integration test for the service, make sure to configure your project for
+  instrumented tests, as described in
+<a href="{@docRoot}training/testing/start/index.html#config-instrumented-tests">
+Getting Started with Testing</a>.</p>
+
+<h2 id="build">Create an Integration Test for Services</h2>
+<p>Your integration test should be written as a JUnit 4 test class. To learn more about creating
+JUnit 4 test classes and using JUnit 4 assertion methods, see
+<a href="{@docRoot}training/testing/unit-testing/instrumented-unit-tests.html#build">
+Create an Instrumented Unit Test Class</a>.</p>
+
+<p>To create an integration test for your service, add the {@code &#64;RunWith(AndroidJUnit4.class)}
+annotation at the beginning of your test class definition. You also need to specify the
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a> class that the Android Testing Support Library provides as your
+default test runner. This step is described in more detail in
+<a href="{@docRoot}training/testing/unit-testing/instrumented-unit-tests.html#run">
+Run Instrumented Unit Tests</a>.</p>
+
+<p>Next, create a
+<a href="{@docRoot}reference/android/support/test/rule/ServiceTestRule.html">ServiceTestRule</a>
+instance in your test by using the {@code &#64;Rule} annotation.</p>
+
+<pre>
+&#64;Rule
+public final ServiceTestRule mServiceRule = new ServiceTestRule();
+</pre>
+
+<p>The following example shows how you might implement an integration test for a service.
+The test method {@code testWithBoundService} verifies that the app binds successfully to a
+local service and that the service interface behaves correctly.</p>
+
+<pre>
+&#64;Test
+public void testWithBoundService() throws TimeoutException {
+    // Create the service Intent.
+    Intent serviceIntent =
+            new Intent(InstrumentationRegistry.getTargetContext(),
+                LocalService.class);
+
+    // Data can be passed to the service via the Intent.
+    serviceIntent.putExtra(LocalService.SEED_KEY, 42L);
+
+    // Bind the service and grab a reference to the binder.
+    IBinder binder = mServiceRule.bindService(serviceIntent);
+
+    // Get the reference to the service, or you can call
+    // public methods on the binder directly.
+    LocalService service =
+            ((LocalService.LocalBinder) binder).getService();
+
+    // Verify that the service is working correctly.
+    assertThat(service.getRandomInt(), is(any(Integer.class)));
+}
+</pre>
+
+<h2 id="run">Run Integration Tests for Services</h2>
+<p>
+You can run integration tests from <a href="{@docRoot}sdk/index.html">Android Studio</a> or
+from the command-line. Make sure to specify
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+  {@code AndroidJUnitRunner}</a> as the default instrumentation runner in your project.
+</p>
+<p>
+To run the integration test for your service, follow the steps for running instrumented tests
+described in <a href="{@docRoot}training/testing/start/index.html#run-instrumented-tests">
+Getting Started with Testing</a>.
+</p>
diff --git a/docs/html/training/testing/performance.jd b/docs/html/training/testing/performance.jd
new file mode 100644
index 0000000..8592c0f
--- /dev/null
+++ b/docs/html/training/testing/performance.jd
@@ -0,0 +1,686 @@
+page.title=﻿Testing Display Performance
+page.article=true
+page.image=images/cards/card-test-performance_2x.png
+page.keywords=performance, fps, tools
+
+@jd:body
+
+
+<div id="tb-wrapper">
+  <div id="tb">
+    <h2>In this document</h2>
+      <ol>
+        <li><a href="#measure">Measuring UI Performance</a>
+          <ul>
+            <li><a href="#aggregate">Aggregate frame stats</a></li>
+            <li><a href="#timing-info">Precise frame timing info</a></li>
+            <li><a href="#timing-dump">Simple frame timing dump</a></li>
+            <li><a href="#collection-window">Controlling the window of stat collection</a></li>
+            <li><a href="#diagnose">Diagnosing performance regressions</a></li>
+            <li><a href="#resources">Additional resources</a></li>
+          </ul>
+        </li>
+        <li><a href="#automate">Automating UI Perfomance Tests</a>
+          <ul>
+            <li><a href="#ui-tests">Setting up UI tests</a></li>
+            <li><a href="#automated-tests">Setting up automated UI testing</a></li>
+            <li><a href="#triage">Triaging and fixing observed problems</a></li>
+          </ul>
+        </li>
+      </ol>
+
+  </div>
+</div>
+
+
+<p>
+  User interface (UI) performance testing ensures that your app not only meets its functional
+  requirements, but that user interactions with your app are buttery smooth, running at a
+  consistent 60 frames per second (<a href=
+  "https://www.youtube.com/watch?v=CaMTIgxCSqU&amp;index=25&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">why
+  60fps?</a>), without any dropped or delayed frames, or as we like to call it, <em>jank</em>. This
+  document explains tools available to measure UI performance, and lays out an approach to
+  integrate UI performance measurements into your testing practices.
+</p>
+
+
+<h2 id="measure">Measuring UI Performance</h2>
+
+<p>
+  In order to improve performance you first need the ability to measure the performance of
+  your system, and then diagnose and identify problems that may arrive from various parts of your
+  pipeline.
+</p>
+
+<p>
+  <em><a href="https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></em> is an
+  Android tool that runs on the device and dumps interesting information about the status of system
+  services. Passing the <em>gfxinfo</em> command to dumpsys provides an output in logcat with
+  performance information relating to frames of animation that are occurring during the recording
+  phase.
+</p>
+
+<pre>
+&gt; adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt;
+</pre>
+
+<p>
+  This command can produce multiple different variants of frame timing data.
+</p>
+
+<h3 id="aggregate">Aggregate frame stats</h3>
+
+<p>
+  With the M Preview the command prints out aggregated analysis of frame data to logcat, collected
+  across the entire lifetime of the process. For example:
+</p>
+
+<pre class="noprettyprint">
+Stats since: 752958278148ns
+Total frames rendered: 82189
+Janky frames: 35335 (42.99%)
+90th percentile: 34ms
+95th percentile: 42ms
+99th percentile: 69ms
+Number Missed Vsync: 4706
+Number High input latency: 142
+Number Slow UI thread: 17270
+Number Slow bitmap uploads: 1542
+Number Slow draw: 23342
+</pre>
+
+<p>
+  These high level statistics convey at a high level the rendering performance of the app, as well
+  as its stability across many frames.
+</p>
+
+
+<h3 id="timing-info">Precise frame timing info</h3>
+
+<p>
+  With the M Preview comes a new command for gfxinfo, and that’s <em>framestats</em> which provides
+  extremely detailed frame timing information from recent frames, so that you can track down and
+  debug problems more accurately.
+</p>
+
+<pre>
+&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats
+</pre>
+
+<p>
+  This command prints out frame timing information, with nanosecond timestamps, from the last 120
+  frames produced by the app. Below is example raw output from adb dumpsys gfxinfo
+  &lt;PACKAGE_NAME&gt; framestats:
+</p>
+
+<pre class="noprettyprint">
+0,27965466202353,27965466202353,27965449758000,27965461202353,27965467153286,27965471442505,27965471925682,27965474025318,27965474588547,27965474860786,27965475078599,27965479796151,27965480589068,
+0,27965482993342,27965482993342,27965465835000,27965477993342,27965483807401,27965486875630,27965487288443,27965489520682,27965490184380,27965490568703,27965491408078,27965496119641,27965496619641,
+0,27965499784331,27965499784331,27965481404000,27965494784331,27965500785318,27965503736099,27965504201151,27965506776568,27965507298443,27965507515005,27965508405474,27965513495318,27965514061984,
+0,27965516575320,27965516575320,27965497155000,27965511575320,27965517697349,27965521276151,27965521734797,27965524350474,27965524884536,27965525160578,27965526020891,27965531371203,27965532114484,
+</pre>
+
+<p>
+  Each line of this output represents a frame produced by the app. Each line has a fixed number of
+  columns describing time spent in each stage of the frame-producing pipeline. The next section
+  describes this format in detail, including what each column represents.
+</p>
+
+
+<h4 id="fs-data-format">Framestats data format</h4>
+
+<p>
+  Since the block of data is output in CSV format, it's very straightforward to paste it to your
+  spreadsheet tool of choice, or collect and parse with a script. The following table explains the
+  format of the output data columns. All timestamps are in nanoseconds.
+</p>
+
+<ul>
+  <li>FLAGS
+    <ul>
+      <li>Rows with a ‘0’ for the FLAGS column can have their total frame time computed by
+      subtracting the INTENDED_VSYNC column from the FRAME_COMPLETED column.
+      </li>
+
+      <li>If this is non-zero the row should be ignored, as the frame has been determined as being
+      an outlier from normal performance, where it is expected that layout &amp; draw take longer
+      than 16ms. Here are a few reasons this could occur:
+        <ul>
+          <li>The window layout changed (such as the first frame of the application or after a
+          rotation)
+          </li>
+
+          <li>It is also possible the frame was skipped in which case some of the values will have
+          garbage timestamps. A frame can be skipped if for example it is out-running 60fps or if
+          nothing on-screen ended up being dirty, this is not necessarily a sign of a problem in
+          the app.
+          </li>
+        </ul>
+      </li>
+    </ul>
+  </li>
+
+  <li>INTENDED_VSYNC
+    <ul>
+      <li>The intended start point for the frame. If this value is different from VSYNC, there
+      was work occurring on the UI thread that prevented it from responding to the vsync signal
+      in a timely fashion.
+      </li>
+    </ul>
+  </li>
+
+  <li>VSYNC
+    <ul>
+      <li>The time value that was used in all the vsync listeners and drawing for the frame
+      (Choreographer frame callbacks, animations, View.getDrawingTime(), etc…)
+      </li>
+
+      <li>To understand more about VSYNC and how it influences your application, check out the
+      <a href=
+      "https://www.youtube.com/watch?v=1iaHxmfZGGc&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=23">
+        Understanding VSYNC</a> video.
+      </li>
+    </ul>
+  </li>
+
+  <li>OLDEST_INPUT_EVENT
+    <ul>
+      <li>The timestamp of the oldest input event in the input queue, or Long.MAX_VALUE if
+      there were no input events for the frame.
+      </li>
+
+      <li>This value is primarily intended for platform work and has limited usefulness to app
+      developers.
+      </li>
+    </ul>
+  </li>
+
+  <li>NEWEST_INPUT_EVENT
+    <ul>
+      <li>The timestamp of the newest input event in the input queue, or 0 if there were no
+      input events for the frame.
+      </li>
+
+      <li>This value is primarily intended for platform work and has limited usefulness to app
+      developers.
+      </li>
+
+      <li>However it’s possible to get a rough idea of how much latency the app is adding by
+      looking at (FRAME_COMPLETED - NEWEST_INPUT_EVENT).
+      </li>
+    </ul>
+  </li>
+
+  <li>HANDLE_INPUT_START
+    <ul>
+      <li>The timestamp at which input events were dispatched to the application.
+      </li>
+
+      <li>By looking at the time between this and ANIMATION_START it is possible to measure how
+      long the application spent handling input events.
+      </li>
+
+      <li>If this number is high (&gt;2ms), this indicates the app is spending an unusually
+      long time processing input events, such as View.onTouchEvent(), which may indicate this
+      work needs to be optimized, or offloaded to a different thread. Note that there are some
+      scenarios, such as click events that launch new activities or similar, where it is
+      expected and acceptable that this number is large.
+      </li>
+    </ul>
+  </li>
+
+  <li>ANIMATION_START
+    <ul>
+      <li>The timestamp at which animations registered with Choreographer were run.
+      </li>
+
+      <li>By looking at the time between this and PERFORM_TRANVERSALS_START it is possible to
+      determine how long it took to evaluate all the animators (ObjectAnimator,
+      ViewPropertyAnimator, and Transitions being the common ones) that are running.
+      </li>
+
+      <li>If this number is high (&gt;2ms), check to see if your app has written any custom
+      animators or what fields ObjectAnimators are animating and ensure they are appropriate
+      for an animation.
+      </li>
+
+      <li>To learn more about Choreographer, check out the <a href=
+      "https://www.youtube.com/watch?v=Q8m9sHdyXnE">For Butter or Worse</a>
+      video.
+      </li>
+    </ul>
+  </li>
+
+  <li>PERFORM_TRAVERSALS_START
+    <ul>
+      <li>If you subtract out DRAW_START from this value, you can extract how long the layout
+      &amp; measure phases took to complete. (note, during a scroll, or animation, you would
+      hope this should be close to zero..)
+      </li>
+
+      <li>To learn more about the measure &amp; layout phases of the rendering pipeline, check
+      out the <a href=
+      "https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">
+        Invalidations, Layouts and Performance</a> video
+      </li>
+    </ul>
+  </li>
+
+  <li>DRAW_START
+    <ul>
+      <li>The time at which the draw phase of performTraversals started. This is the start
+      point of recording the display lists of any views that were invalidated.
+      </li>
+
+      <li>The time between this and SYNC_START is how long it took to call View.draw() on all
+      the invalidated views in the tree.
+      </li>
+
+      <li>For more information on the drawing model, see <a href=
+      "{@docRoot}guide/topics/graphics/hardware-accel.html#hardware-model">Hardware Acceleration</a>
+      or the <a href=
+      "https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">
+        Invalidations, Layouts and Performance</a> video
+      </li>
+    </ul>
+  </li>
+
+  <li>SYNC_QUEUED
+    <ul>
+      <li>The time at which a sync request was sent to the RenderThread.
+      </li>
+
+      <li>This marks the point at which a message to start the sync
+      phase was sent to the RenderThread. If the time between this and
+      SYNC_START is substantial (&gt;0.1ms or so), it means that
+      the RenderThread was busy working on a different frame. Internally
+      this is used to differentiate between the frame doing too much work
+      and exceeding the 16ms budget and the frame being stalled due to
+      the previous frame exceeding the 16ms budget.
+      </li>
+    </ul>
+  </li>
+
+  <li>SYNC_START
+    <ul>
+      <li>The time at which the sync phase of the drawing started.
+      </li>
+
+      <li>If the time between this and ISSUE_DRAW_COMMANDS_START is substantial (&gt;0.4ms or
+      so), it typically indicates a lot of new Bitmaps were drawn which must be uploaded to the
+      GPU.
+      </li>
+
+      <li>To understand more about the sync phase, check out the <a href=
+      "https://www.youtube.com/watch?v=VzYkVL1n4M8&amp;index=24&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">
+        Profile GPU Rendering</a> video
+      </li>
+    </ul>
+  </li>
+
+  <li>ISSUE_DRAW_COMMANDS_START
+    <ul>
+      <li>The time at which the hardware renderer started issuing drawing commands to the GPU.
+      </li>
+
+      <li>The time between this and FRAME_COMPLETED gives a rough idea of how much GPU work the
+      app is producing. Problems like too much overdraw or inefficient rendering effects show
+      up here.
+      </li>
+    </ul>
+  </li>
+
+  <li>SWAP_BUFFERS
+    <ul>
+      <li>The time at which eglSwapBuffers was called, relatively uninteresting outside of
+      platform work.
+      </li>
+    </ul>
+  </li>
+
+  <li>FRAME_COMPLETED
+    <ul>
+      <li>All done! The total time spent working on this frame can be computed by doing
+      FRAME_COMPLETED - INTENDED_VSYNC.
+      </li>
+    </ul>
+  </li>
+
+</ul>
+
+<p>
+  You can use this data in different ways. One simple but useful visualization is a
+  histogram showing the distribution of frames times (FRAME_COMPLETED - INTENDED_VSYNC) in
+  different latency buckets, see figure below. This graph tells us at a glance that most
+  frames were very good - well below the 16ms deadline (depicted in red), but a few frames
+  were significantly over the deadline. We can look at changes in this histogram over time
+  to see wholesale shifts or new outliers being created. You can also graph input latency,
+  time spent in layout, or other similar interesting metrics based on the many timestamps
+  in the data.
+</p>
+
+<img src="{@docRoot}images/performance-testing/perf-test-framestats.png">
+
+
+<h3 id="timing-dump">Simple frame timing dump</h3>
+
+<p>
+  If <strong>Profile GPU rendering</strong> is set to <strong>In adb shell dumpsys gfxinfo</strong>
+  in Developer Options, the <code>adb shell dumpsys gfxinfo</code> command prints out timing
+  information for the most recent 120 frames, broken into a few different categories with
+  tab-separated-values. This data can be useful for indicating which parts of the drawing pipeline
+  may be slow at a high level.
+</p>
+
+<p>
+  Similar to <a href="#fs-data-format">framestats</a> above, it's very
+  straightforward to paste it to your spreadsheet tool of choice, or collect and parse with
+  a script. The following graph shows a breakdown of where many frames produced by the app
+  were spending their time.
+</p>
+
+<img src="{@docRoot}images/performance-testing/perf-test-frame-latency.png">
+
+<p>
+  The result of running gfxinfo, copying the output, pasting it into a spreadsheet
+  application, and graphing the data as stacked bars.
+</p>
+
+<p>
+  Each vertical bar represents one frame of animation; its height represents the number of
+  milliseconds it took to compute that frame of animation. Each colored segment of the bar
+  represents a different stage of the rendering pipeline, so that you can see what parts of
+  your application may be creating a bottleneck. For more information on understanding the
+  rendering pipeline, and how to optimize for it, see the <a href=
+  "https://www.youtube.com/watch?v=we6poP0kw6E&amp;index=27&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">
+  Invalidations Layouts and Performance</a> video.
+</p>
+
+
+<h3 id="collection-window">Controlling the window of stat collection</h3>
+
+<p>
+  Both the framestats and simple frame timings gather data over a very short window - about
+  two seconds worth of rendering. In order to precisely control this window of time - for
+  example, to constrain the data to a particular animation - you can reset all counters,
+  and aggregate statistics gathered.
+</p>
+
+<pre>
+&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; reset
+</pre>
+
+<p>
+  This can also be used in conjunction with the dumping commands themselves to collect and
+  reset at a regular cadence, capturing less-than-two-second windows of frames
+  continuously.
+</p>
+
+
+<h3 id="diagnose">Diagnosing performance regressions</h3>
+
+<p>
+  Identification of regressions is a good first step to tracking down problems, and
+  maintaining high application health. However, dumpsys just identifies the existence and
+  relative severity of problems. You still need to diagnose the particular cause of the
+  performance problems, and find appropriate ways to fix them. For that, it’s highly
+  recommended to use the <a href="{@docRoot}tools/help/systrace.html">systrace</a> tool.
+</p>
+
+
+<h3 id="resources">Additional resources</h3>
+
+<p>
+  For more information on how Android’s rendering pipeline works, common problems that you
+  can find there, and how to fix them, some of the following resources may be useful to
+  you:
+</p>
+
+<ul>
+  <li>Rendering Performance 101
+  </li>
+  <li>Why 60fps?
+  </li>
+  <li>Android UI and the GPU
+  </li>
+  <li>Invalidations Layouts and performance
+  </li>
+  <li>Analyzing UI Performance with Systrace
+  </li>
+</ul>
+
+
+<h2 id="automate">Automating UI Perfomance Tests</h2>
+
+<p>
+  One approach to UI Performance testing is to simply have a human tester perform a set of
+  user operations on the target app, and either visually look for jank, or spend an very
+  large amount of time using a tool-driven approach to find it. But this manual approach is
+  fraught with peril - human ability to perceive frame rate changes varies tremendously,
+  and this is also time consuming, tedious, and error prone.
+</p>
+
+<p>
+  A more efficient approach is to log and analyze key performance metrics from automated UI
+  tests. The Android M developer preview includes new logging capabilities which make it
+  easy to determine the amount and severity of jank in your application’s animations, and
+  that can be used to build a rigorous process to determine your current performance and
+  track future performance objectives.
+</p>
+
+<p>
+  This article walks you through a recommended approach to using that data to automate your
+  performance testing.
+</p>
+
+<p>
+  This is mostly broken down into two key actions. Firstly, identifying what you're
+  testing, and how you’re testing it. and Secondly, setting up, and maintaining an
+  automated testing environment.
+</p>
+
+
+<h3 id="ui-tests">Setting up UI tests</h3>
+
+<p>
+  Before you can get started with automated testing, it’s important to determine a few high
+  level decisions, in order to properly understand your test space, and needs you may have.
+</p>
+
+<h4>
+  Identify key animations / flows to test
+</h4>
+
+<p>
+  Remember that bad performance is most visible to users when it interrupts a smooth
+  animation. As such, when identifying what types of UI actions to test for, it’s useful to
+  focus on the key animations that users see most, or are most important to their
+  experience. For example, here are some common scenarios that may be useful to identify:
+</p>
+
+<ul>
+  <li>Scrolling a primary ListView or RecyclerView
+  </li>
+
+  <li>Animations during async wait cycles
+  </li>
+
+  <li>Any animation that may have bitmap loading / manipulation in it
+  </li>
+
+  <li>Animations including Alpha Blending
+  </li>
+
+  <li>Custom View drawing with Canvas
+  </li>
+</ul>
+
+<p>
+  Work with engineers, designers, and product managers on your team to prioritize these key
+  product animations for test coverage.
+</p>
+
+<h4>
+  Define your future objectives and track against them
+</h4>
+
+<p>
+  From a high-level, it may be critical to identify your specific performance goals, and
+  focus on writing tests, and collecting data around them. For example:
+</p>
+
+<ul>
+  <li>Do you just want to begin tracking UI performance for the first time to learn more?
+  </li>
+
+  <li>Do you want to prevent regressions that might be introduced in the future?
+  </li>
+
+  <li>Are you at 90% of smooth frames today and want to get to 98% this quarter?
+  </li>
+
+  <li>Are you at 98% smooth frames and don’t want to regress?
+  </li>
+
+  <li>Is your goal to improve performance on low end devices?
+  </li>
+</ul>
+
+<p>
+  In all of these cases, you’ll want historical tracking which shows performance across
+  multiple versions of your application.
+</p>
+
+<h4>
+  Identify devices to test on
+</h4>
+
+<p>
+  Application performance varies depending on the device it's running on. Some devices may
+  contain less memory, less powerful GPUs, or slower CPU chips. This means that animations
+  which may perform well on one set of hardware, may not on others, and worse, may be a
+  result of a bottleneck in a different part of the pipeline. So, to account for this
+  variation in what a user might see, pick a range of devices to execute tests on, both
+  current high end devices, low end devices, tablets, etc. Look for variation in CPU
+  performance, RAM, screen density, size, and so on. Tests that pass on a high end device
+  may fail on a low end device.
+</p>
+
+<h4>
+  Basic frameworks for UI Testing
+</h4>
+
+<p>
+  Tool suites, like <a href=
+  "{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a> and
+  <a href="{@docRoot}training/testing/ui-testing/espresso-testing.html">Espresso</a>, are
+  built to help automate the action of a user moving through your application. These are simple
+  frameworks which mimic user interaction with your device. To use these frameworks, you
+  effectively create unique scripts, which run through a set of user-actions, and play them
+  out on the device itself.
+</p>
+
+<p>
+  By combining these automated tests, alongside <code>dumpsys gfxinfo</code> you can quickly
+  create a reproducible system that allows you to execute a test, and measure the
+  performance information of that particular condition.
+</p>
+
+
+<h3 id="automated-tests">Setting up automated UI testing</h3>
+
+<p>
+  Once you have the ability to execute a UI test, and a pipeline to gather the data from a
+  single test, the next important step is to embrace a framework which can execute that
+  test multiple times, across multiple devices, and aggregate the resulting performance
+  data for further analysis by your development team.
+</p>
+
+<h4>
+  A framework for test automation
+</h4>
+
+<p>
+  It’s worth noting that UI testing frameworks (like <a href=
+  "{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a>)
+  run on the target device/emulator directly. While performance gathering information done
+  by <em>dumpsys gfxinfo</em> is driven by a host machine, sending commands over ADB. To
+  help bridge the automation of these separate entities, <a href=
+  "{@docRoot}tools/help/monkeyrunner_concepts.html">MonkeyRunner</a> framework was
+  developed; A scripting system that runs on your host machine, which can issue commands to
+  a set of connected devices, as well as receive data from them.
+</p>
+
+<p>
+  Building a set of scripts for proper automation of UI Performance testing, at a minimum,
+  should be able to utilize monkeyRunner to accomplish the following tasks:
+</p>
+
+<ul>
+  <li>Load &amp; Launch a desired APK to a target device, devices, or emulator.
+  </li>
+
+  <li>Launch a UI Automator UI test, and allow it to be executed
+  </li>
+
+  <li>Collect performance information through <em>dumpsys gfxinfo</em><em>.</em>
+  </li>
+
+  <li>Aggregate information and display it back in a useful fashion to the developer.
+  </li>
+</ul>
+
+
+<h3 id="triage">Triaging and fixing observed problems</h3>
+
+<p>
+  Once problem patterns or regressions are identified, the next step is identifying and
+  applying the fix. If your automated test framework preserves precise timing breakdowns
+  for frames, it can help you scrutinize recent suspicious code/layout changes (in the case
+  of regression), or narrow down the part of the system you’re analyzing when you switch to
+  manual investigation. For manual investigation, <a href=
+  "{@docRoot}tools/help/systrace.html">systrace</a> is a great place to start, showing
+  precise timing information about every stage of the rendering pipeline, every thread and
+  core in the system, as well as any custom event markers you define.
+</p>
+
+<h4>
+  Properly profiling temporal timings
+</h4>
+
+<p>
+  It is important to note the difficulties in obtaining and measuring timings that come from
+  rendering performance. These numbers are, by nature, non deterministic, and often
+  fluctuate depending on the state of the system, amount of memory available, thermal
+  throttling, and the last time a sun flare hit your area of the earth. The point is that
+  you can run the same test, twice and get slightly different numbers that may be close to
+  each other, but not exact.
+</p>
+
+<p>
+  Properly gathering and profiling data in this manner means running the same test,
+  multiple times, and accumulating the results as an average, or median value. (for the
+  sake of simplicity, let’s call this a ‘batch’) This gives you the rough approximation of
+  the performance of the test, while not needing exact timings.
+</p>
+
+<p>
+  Batches can be used between code changes to see the relative impact of those changes on
+  performance. If the average frame rate for the pre-change Batch is larger than the
+  post-change batch, then you generally have an overall win wrt performance for that
+  particular change.
+</p>
+
+<p>
+  This means that any Automated UI testing you do should take this concept into
+  consideration, and also account for any anomalies that might occur during a test. For
+  example, if your application performance suddenly dips, due to some device issue (that
+  isn’t caused by your application) then you may want to re-run the batch in order to get
+  less chaotic timings.
+</p>
+
+<p>
+  So, how many times should you run a test, before the measurements become meaningful? 10
+  times should be the minimum, with higher numbers like 50 or 100 yielding more accurate
+  results (of course, you’re now trading off time for accuracy)
+</p>
diff --git a/docs/html/training/testing/start/index.jd b/docs/html/training/testing/start/index.jd
new file mode 100644
index 0000000..a4b4aea
--- /dev/null
+++ b/docs/html/training/testing/start/index.jd
@@ -0,0 +1,252 @@
+page.title=Getting Started with Testing
+page.tags="testing"
+page.article=true
+page.image=images/tools/studio-main-screen.png
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<!-- Required platform, tools, add-ons, devices, knowledge, etc. -->
+<h2>Dependencies and prerequisites</h2>
+<ul>
+  <li><a href="{@docRoot}tools/studio/index.html">Android Studio (latest version)</a>.</li>
+</ul>
+
+<h2>This lesson teaches you to</h2>
+<ol>
+<li><a href="#setup">Set Up Your Testing Environment</a></li>
+<li><a href="#build">Build and Run Your Tests</a></li>
+</ol>
+
+<h2>You Should Also Read</h2>
+<ul>
+<li><a href="{@docRoot}tools/testing/testing_android.html">Testing Concepts</a></li>
+<li><a href="https://github.com/googlesamples/android-testing"
+  class="external-link">Android Testing Samples</a></li>
+<li><a href="{@docRoot}about/dashboards/index.html">Android Dashboards</a></li>
+</ul>
+
+</div>
+</div>
+
+<p>You should be writing and running tests as part of your Android app development cycle.
+Well-written tests can help you catch bugs early in development and give you confidence in your
+code.</p>
+
+<p>To verify specific behavior in your app, and to check for consistency across different Android
+devices, you can write a <a href="//en.wikipedia.org/wiki/Test_case"
+class="external-link">test case</a>. This lesson teaches you how to build a test case using the
+JUnit 4 framework and the testing APIs and tools provided by Google, and how to run your
+tests.</p>
+
+<h2 id="setup">Set Up Your Testing Environment</h2>
+
+<p>Before you start writing and running your tests, you must set up your test
+development environment. Android Studio provides an integrated development environment for you to
+create, build, and run Android app test cases from a graphical user interface (GUI).</p>
+
+<p>You must first download the prerequisite Android development tools before proceeding:
+<ul>
+<li><a href="{@docRoot}sdk/index.html">Android Studio</a> (latest version).</li>
+<li>The latest Android Support Repository using the
+  <a href="{@docRoot}tools/help/sdk-manager.html">SDK Manager</a>. </li>
+</ul>
+
+<p>Based on the type of test you want to create, configure the test code source location and the
+  project dependencies in Android Studio as described in the following sections.</p>
+
+<h3 id="config-local-tests">Configure Your Project for Local Unit Tests</h3>
+<p><em>Local unit tests</em> are tests that run on your local machine, without needing access to the
+Android framework or an Android device. To learn how to develop local units tests, see
+<a href="{@docRoot}training/testing/unit-testing/local-unit-tests.html">
+Building Local Unit Tests</a>.</p>
+<p>In your Android Studio project, you must store the source files for local unit tests under a
+specific source directory ({@code src/test/java}). This feature improves your project organization
+by letting you group your unit tests together into a single source set.</p>
+<p>As with production code, you can create local unit tests for a
+<a href="http://developer.android.com/tools/building/configuring-gradle.html#workBuildVariants"
+class="external-link">specific flavor or build type</a>. Keep your unit tests in a test
+source tree location that corresponds to your production source tree, such as:</p>
+
+<table>
+<tr>
+<th>Path to Production Class</th>
+<th>Path to Local Unit Test Class</th>
+</tr>
+<tr>
+<td>{@code src/main/java/Foo.java}</td>
+<td>{@code src/test/java/FooTest.java}</td>
+</tr>
+<tr>
+<td>{@code src/debug/java/Foo.java}</td>
+<td>{@code src/testDebug/java/FooTest.java}</td>
+</tr>
+<tr>
+<td>{@code src/myFlavor/java/Foo.java}</td>
+<td>{@code src/testMyFlavor/java/FooTest.java}</td>
+</tr>
+</table>
+
+<p>You'll need to configure the testing dependencies for your project to use the
+  standard APIs provided by the JUnit 4 framework. To simplify your local unit test development,
+  we recommend that you include the <a href="https://github.com/mockito/mockito"
+  class="external-link">Mockito</a> library if your test needs to interact with Android
+  dependencies. To learn more about using mock objects in your local unit tests, see
+<a href="{@docRoot}training/testing/unit-testing/local-unit-tests.html#mocking-dependencies">
+  Mocking Android dependencies</a>.</p>
+<p>In the {@code build.gradle} file of your Android app module, specify your dependencies like
+this:</p>
+
+<pre>
+dependencies {
+    // Required -- JUnit 4 framework
+    testCompile 'junit:junit:4.12'
+    // Optional -- Mockito framework
+    testCompile 'org.mockito:mockito-core:1.10.19'
+}
+</pre>
+
+<h3 id="config-instrumented-tests">Configure Your Project for Instrumented Tests</h3>
+<p><em>Instrumented tests</em> are tests that run on an Android device or emulator. These tests
+have access to {@link android.app.Instrumentation} information, such as the
+{@link android.content.Context} for the app under test. Instrumented tests can be used for unit,
+user interface (UI), or app component integration testing. To learn how to develop instrumented
+tests for your specific needs, see these additional topics:
+<ul>
+<li><a href="{@docRoot}training/testing/unit-testing/instrumented-unit-tests.html">
+    Building Instrumented Unit Tests</a> - Build more complex unit tests that have Android
+    dependencies which cannot be easily filled by using mock objects.</li>
+<li><a href="{@docRoot}training/testing/ui-testing/index.html">
+    Automating User Interface Tests</a> - Create tests to verify that the user interface behaves
+    correctly for user interactions within a single app or for interactions across multiple apps.</li>
+<li><a href="{@docRoot}training/testing/integration-testing/index.html">
+    Testing App Component Integrations</a> - Verify the behavior of components that users do not
+directly interact with, such as a <a href="{@docRoot}guide/components/services.html">Service</a> or
+a <a href="guide/topics/providers/content-providers.html">Content Provider</a>.</li>
+</ul>
+</p>
+<p>
+In your Android Studio project, you must place the source code for your instrumentated tests under
+a specific directory (<code>src/androidTest/java</code>).
+</p>
+<p>
+Download the Android Testing Support Library, which provides APIs that allow you to quickly build and
+run instrumented test code for your apps. The Testing Support Library includes a JUnit 4 test runner
+(<a href="{@docRoot}tools/testing-support-library/index.html#AndroidJUnitRunner">AndroidJUnitRunner
+</a>) and APIs for functional UI tests
+(<a href="{@docRoot}tools/testing-support-library/index.html#Espresso">Espresso</a> and
+<a href="{@docRoot}tools/testing-support-library/index.html#UIAutomator">UI Automator</a>). To
+learn how to install the library, see
+<a href="{@docRoot}tools/testing-support-library/index.html#setup">Testing Support Library Setup</a>.
+</p>
+<p>You'll need to configure the Android testing dependencies for your project to use the test runner
+and the rules APIs provided by the Testing Support Library. To simplify your test development,
+we also recommend that you include the <a href="https://github.com/hamcrest"
+class="external-link">Hamcrest</a> library, which lets you create more flexible assertions using the
+Hamcrest matcher APIs.</p>
+<p>In the {@code build.gradle} file of your Android app module, specify your dependencies like
+this:</p>
+<pre>
+dependencies {
+    androidTestCompile 'com.android.support:support-annotations:23.0.1'
+    androidTestCompile 'com.android.support.test:runner:0.4.1'
+    androidTestCompile 'com.android.support.test:rules:0.4.1'
+    // Optional -- Hamcrest library
+    androidTestCompile 'org.hamcrest:hamcrest-library:1.3'
+    // Optional -- UI testing with Espresso
+    androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1'
+    // Optional -- UI testing with UI Automator
+    androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1'
+}
+</pre>
+
+<h2 id="build">Build and Run Your Tests</h2>
+
+<p>You can run build and run your tests in a similar way to how you run your Android apps --
+  graphically in Android Studio or from the command-line using the
+<a href="{@docRoot}tools/building/plugin-for-gradle.html">
+Android Plugin for Gradle</a>.</p>
+
+<h3 id="run-local-tests">Run Local Unit Tests</h3>
+<p>
+The Android Plugin for Gradle compiles the local unit test code located in the default directory
+({@code src/test/java}), builds a test app, and executes it locally
+using the default test runner class.
+</p>
+<p>
+To run local unit tests in your Gradle project from Android Studio:
+</p>
+<ol>
+<li>In the <strong>Project</strong> window, right click on the project and synchronize your project.
+</li>
+<li>Open the <strong>Build Variants</strong> window by clicking the left-hand tab, then change the
+test artifact to <em>Unit Tests</em>.
+</li>
+<li>In the <strong>Project</strong> window, drill down to your unit test class or method,
+then right-click and run it. To run all tests in the unit test directory, select the directory then
+right-click and press <strong>Run tests</strong>.
+</li>
+</ol>
+
+<p>Android Studio displays the results of the unit test execution in the <strong>Run</strong>
+window.</p>
+
+<p>To run local unit tests in your Gradle project from the command-line, call the {@code test} task
+command.</p>
+
+<pre>
+./gradlew test
+</pre>
+
+<p>If there are failing tests, the command will display links to HTML reports (one per build
+variant). You can find the generated HTML test result reports in the
+{@code &lt;path_to_your_project&gt;/app/build/reports/tests/} directory, and the corresponding XML
+files in the {@code &lt;path_to_your_project&gt;/app/build/test-results/} directory.</p>
+
+<h3 id="run-instrumented-tests">Run Instrumented Tests</h3>
+<p>
+The Android Plugin for Gradle compiles the instrumented test code located in the default directory
+({@code src/androidTest/java}), builds a test APK and production APK, installs both APKs on the
+connected device or emulator, and executes the tests.</p>
+
+<p>Make sure to specify
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a> as the default test instrumentation runner in your project. To do
+this, add the following setting in your {@code build.gradle} file:</p>
+
+<pre>
+android {
+    defaultConfig {
+        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
+    }
+}
+</pre>
+
+<p>To run your instrumented tests in Android Studio:</p>
+<ol>
+<li>Open the <strong>Build Variants</strong> window by clicking the left-hand tab, then set the
+test artifact to <em>Android Instrumentation Tests</em>.
+</li>
+<li>In the <strong>Project</strong> window, drill down to your instrumented test class or method,
+  then right-click and run it using the Android Test configuration. To run all tests in the
+instrumented test directory, select the directory then right-click and press
+<strong>Run tests</strong>.
+</li>
+</ol>
+
+<p>Android Studio displays the results of the instrumented test execution in the
+<strong>Run</strong> window.</p>
+
+<p>To run your instrumented tests from the command-line via Gradle, call the
+  {@code connectedAndroidTest} (or {@code cAT}) task:</p>
+
+<pre>
+./gradlew cAT
+</pre>
+
+<p>You can find the generated HTML test result reports in the
+{@code &lt;path_to_your_project&gt;/app/build/outputs/reports/androidTests/connected/} directory,
+and the corresponding XML files in the
+{@code &lt;path_to_your_project&gt;/app/build/outputs/androidTest-results/connected/} directory.</p>
\ No newline at end of file
diff --git a/docs/html/training/testing/ui-testing/espresso-testing.jd b/docs/html/training/testing/ui-testing/espresso-testing.jd
index 7637547..45a4ceb 100644
--- a/docs/html/training/testing/ui-testing/espresso-testing.jd
+++ b/docs/html/training/testing/ui-testing/espresso-testing.jd
@@ -55,6 +55,8 @@
             <a href="https://github.com/googlesamples/android-testing"
             class="external-link">Espresso Code Samples</a>
           </li>
+          <li><a href="https://www.code-labs.io/codelabs/android-testing/index.html?index=..%2F..%2Findex#0"
+            class="external-link">Android Testing Codelab</a></li>
         </ul>
       </div>
     </div>
@@ -90,72 +92,51 @@
       Set Up Espresso
     </h2>
 
-    <p>
-      Before you begin using Espresso, you must:
-    </p>
+<p>Before building your UI test with Espresso, make sure to configure your test source code
+location and project dependencies, as described in
+<a href="{@docRoot}training/testing/start/index.html#config-instrumented-tests">
+Getting Started with Testing</a>.</p>
 
-    <ul>
-      <li>
-        <strong>Install the Android Testing Support Library</strong>. The Espresso API is
-        located under the {@code com.android.support.test.espresso} package. These classes allow
-        you to create tests that use the Espresso testing framework. To learn how to install the
-        library, see <a href="{@docRoot}tools/testing-support-library/index.html#setup">
-        Testing Support Library Setup</a>.
-      </li>
+<p>In the {@code build.gradle} file of your Android app module, you must set a dependency
+  reference to the Espresso library:</p>
 
-      <li>
-        <strong>Set up your project structure.</strong> In your Gradle project, the source code for
-        the target app that you want to test is typically placed under the {@code app/src/main}
-        folder. The source code for instrumentation tests, including
-        your Espresso tests, must be placed under the <code>app/src/androidTest</code> folder. To
-        learn more about setting up your project directory, see
-        <a href="{@docRoot}tools/projects/index.html">Managing Projects</a>.
-      </li>
-
-      <li>
-        <strong>Specify your Android testing dependencies</strong>. In order for the
-        <a href="{@docRoot}tools/building/plugin-for-gradle.html">Android Plug-in for Gradle</a> to
-        correctly build and run your Espresso tests, you must specify the following libraries in
-        the {@code build.gradle} file of your Android app module:
-
-        <pre>
+<pre>
 dependencies {
-    androidTestCompile 'com.android.support.test:runner:0.3'
-    androidTestCompile 'com.android.support.test:rules:0.3'
-    androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2'
+    ...
+    androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1'
 }
 </pre>
-      </li>
 
-      <li>
-        <strong>Turn off animations on your test device.</strong> Leaving system animations turned
-        on in the test device might cause unexpected results or may lead your test to fail. Turn
-        off animations from <em>Settings</em> by opening <em>Developing Options</em> and
-        turning all the following options off:
+<p>Turn off animations on your test device &mdash; leaving system animations turned on in the test
+device might cause unexpected results or may lead your test to fail. Turn off animations from
+<em>Settings</em> by opening <em>Developing Options</em> and turning all the following options off:
+</p>
         <ul>
           <li>
-            <em>Window animation scale</em>
+            <strong>Window animation scale</strong>
           </li>
 
           <li>
-            <em>Transition animation scale</em>
+            <strong>Transition animation scale</strong>
           </li>
 
           <li>
-            <em>Animator duration scale</em>
+            <strong>Animator duration scale</strong>
           </li>
         </ul>
       </li>
     </ul>
+<p>If you want to set up your project to use Espresso features other than what the core API
+  provides, see this
+  <a href="https://google.github.io/android-testing-support-library/docs/espresso/index.html"
+  class="external-link">resource</a>.</p>
 
     <h2 id="build">
       Create an Espresso Test Class
     </h2>
 
     <p>
-      To create an Espresso test, create a Java class or an
-      {@link android.test.ActivityInstrumentationTestCase2}
-      subclass that follows this programming model:
+      To create an Espresso test, create a Java class that follows this programming model:
     </p>
 
     <ol>
@@ -200,11 +181,70 @@
         .perform(click())               // click() is a ViewAction
         .check(matches(isDisplayed())); // matches(isDisplayed()) is a ViewAssertion
 </pre>
+<h3 id="espresso-atr">Using Espresso with ActivityTestRule</h3>
+<p>
+The following section describes how to create a new Espresso test in the JUnit 4 style and use
+<a href="{@docRoot}reference/android/support/test/rule/ActivityTestRule.html">
+{@code ActivityTestRule}</a> to reduce the amount of boilerplate code you need to write. By using
+<a href="{@docRoot}reference/android/support/test/rule/ActivityTestRule.html">
+{@code ActivityTestRule}</a>, the testing framework launches the activity under test
+before each test method annotated with {@code &#64;Test} and before any method annotated with
+{@code &#64;Before}. The framework handles shutting down the activity after the test finishes
+and all methods annotated with {@code &#64;After} are run.</p>
+
+<pre>
+package com.example.android.testing.espresso.BasicSample;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import android.support.test.rule.ActivityTestRule;
+import android.support.test.runner.AndroidJUnit4;
+...
+
+&#64;RunWith(AndroidJUnit4.class)
+&#64;LargeTest
+public class ChangeTextBehaviorTest {
+
+    private String mStringToBetyped;
+
+    &#64;Rule
+    public ActivityTestRule&lt;MainActivity&gt; mActivityRule = new ActivityTestRule&lt;&gt;(
+            MainActivity.class);
+
+    &#64;Before
+    public void initValidString() {
+        // Specify a valid string.
+        mStringToBetyped = "Espresso";
+    }
+
+    &#64;Test
+    public void changeText_sameActivity() {
+        // Type text and then press the button.
+        onView(withId(R.id.editTextUserInput))
+                .perform(typeText(mStringToBetyped), closeSoftKeyboard());
+        onView(withId(R.id.changeTextBt)).perform(click());
+
+        // Check that the text was changed.
+        onView(withId(R.id.textToBeChanged))
+                .check(matches(withText(mStringToBetyped)));
+    }
+}
+</pre>
 
     <h3 id="espresso-aitc2">
       Using Espresso with ActivityInstrumentationTestCase2
     </h3>
-
+<p>The following section describes how to migrate to Espresso if you have existing test classes
+subclassed from {@link android.test.ActivityInstrumentationTestCase2} and you don't want to rewrite
+them to use JUnit4.</p>
+<p class="note"><strong>Note:</strong> For new UI tests, we strongly recommend that you write your
+test in the JUnit 4 style and use the
+<a href="{@docRoot}reference/android/support/test/rule/ActivityTestRule.html">
+{@code ActivityTestRule}</a> class, instead of
+{@link android.test.ActivityInstrumentationTestCase2}.</p>
     <p>
       If you are subclassing {@link android.test.ActivityInstrumentationTestCase2}
       to create your Espresso test class, you must inject an
@@ -541,40 +581,13 @@
 </pre>
 
 <h2 id="run">Run Espresso Tests on a Device or Emulator</h2>
-
-    <p>
-      To run Espresso tests, you must use the
-      <a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">{@code AndroidJUnitRunner}</a>
-      class provided in the
-      <a href="{@docRoot}tools/testing-support-library/index.html">
-      Android Testing Support Library</a> as your default test runner. The
-      <a href="{@docRoot}tools/building/plugin-for-gradle.html">Android Plug-in for
-      Gradle</a> provides a default directory ({@code src/androidTest/java}) for you to store the
-      instrumented test classes and test suites that you want to run on a device. The
-      plug-in compiles the test code in that directory and then executes the test app using
-      the configured test runner class.
-    </p>
-
-    <p>
-      To run Espresso tests in your Gradle project:
-    </p>
-
-    <ol>
-      <li>Specify
-        <a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">{@code AndroidJUnitRunner}</a>
-        as the default test instrumentation runner in
-      your {@code build.gradle} file:
-
-  <pre>
-android {
-    defaultConfig {
-        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
-    }
-}</pre>
-      </li>
-      <li>Run your tests from the command-line by calling the the {@code connectedCheck}
-        (or {@code cC}) task:
-  <pre>
-./gradlew cC</pre>
-      </li>
-    </ol>
\ No newline at end of file
+<p>
+You can run Espresso tests from <a href="{@docRoot}sdk/index.html">Android Studio</a> or
+from the command-line. Make sure to specify
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+  {@code AndroidJUnitRunner}</a> as the default instrumentation runner in your project.
+</p>
+<p>
+To run your Espresso test, follow the steps for running instrumented tests
+described in <a href="{@docRoot}training/testing/start/index.html#run-instrumented-tests">
+Getting Started with Testing</a>.</p>
diff --git a/docs/html/training/testing/ui-testing/index.jd b/docs/html/training/testing/ui-testing/index.jd
index d660c60..1aa95a4 100644
--- a/docs/html/training/testing/ui-testing/index.jd
+++ b/docs/html/training/testing/ui-testing/index.jd
@@ -1,5 +1,6 @@
 page.title=Automating User Interface Tests
 page.tags=testing
+page.image=images/testing/UIAutomatorViewer.png
 
 trainingnavtop=true
 startpage=true
diff --git a/docs/html/training/testing/ui-testing/uiautomator-testing.jd b/docs/html/training/testing/ui-testing/uiautomator-testing.jd
index d0defd8..9dac5aa 100644
--- a/docs/html/training/testing/ui-testing/uiautomator-testing.jd
+++ b/docs/html/training/testing/ui-testing/uiautomator-testing.jd
@@ -61,41 +61,21 @@
 </p>
 
 <h2 id="setup">Set Up UI Automator</h2>
-<p>Before you begin using UI Automator, you must:</p>
 
-  <ul>
-      <li>
-        <strong>Install the Android Testing Support Library</strong>. The UI Automator API is
-        located under the {@code com.android.support.test.uiautomator} package. These classes allow
-        you to create tests that use the Espresso testing framework. To learn how to install the
-        library, see <a href="{@docRoot}tools/testing-support-library/index.html#setup">
-        Testing Support Library Setup</a>.
-      </li>
+<p>Before building your UI test with UI Automator, make sure to configure your test source code
+location and project dependencies, as described in
+<a href="{@docRoot}training/testing/start/index.html#config-instrumented-tests">
+Getting Started with Testing</a>.</p>
 
-      <li>
-        <strong>Set up your project structure.</strong> In your Gradle project, the source code for
-        the target app that you want to test is typically placed under the {@code app/src/main}
-        folder. The source code for instrumentation tests, including
-        your UI Automator tests, must be placed under the <code>app/src/androidTest</code> folder.
-        To learn more about setting up your project directory, see
-        <a href="{@docRoot}tools/projects/index.html">Managing Projects</a>.
-      </li>
+<p>In the {@code build.gradle} file of your Android app module, you must set a dependency
+  reference to the UI Automator library:</p>
 
-      <li>
-        <strong>Specify your Android testing dependencies</strong>. In order for the
-        <a href="{@docRoot}tools/building/plugin-for-gradle.html">Android Plug-in for Gradle</a> to
-        correctly build and run your UI Automator tests, you must specify the following libraries in
-        the {@code build.gradle} file of your Android app module:
-
-        <pre>
+<pre>
 dependencies {
-    androidTestCompile 'com.android.support.test:runner:0.3'
-    androidTestCompile 'com.android.support.test:rules:0.3'
+    ...
     androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1'
 }
 </pre>
-      </li>
-  </ul>
 
 <p>To optimize your UI Automator testing, you should first inspect the target app’s UI components
 and ensure that they are accessible. These optimization tips are described in the next two
@@ -186,9 +166,21 @@
 
 <h2 id="build">Create a UI Automator Test Class</h2>
 
-<p>To build a UI Automator test, create a class that extends
-{@link android.test.InstrumentationTestCase}. Implement the following programming model in your
-UI Automator test class:</p>
+<p>
+Your UI Automator test class should be written the same way as a JUnit 4 test class. To learn more
+about creating JUnit 4 test classes and using JUnit 4 assertions and annotations, see
+<a href="{@docRoot}training/testing/unit-testing/instrumented-unit-tests.html#build">
+Create an Instrumented Unit Test Class</a>.
+</p>
+<p>Add the {@code &#64;RunWith(AndroidJUnit4.class)} annotation at the beginning of your test class
+definition. You also need to specify the
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a> class
+provided in the Android Testing Support Library as your default test runner. This step is described
+in more detail in <a href="#run">Run UI Automator Tests on a Device or Emulator</a>.
+</p>
+
+<p>Implement the following programming model in your UI Automator test class:</p>
 
 <ol>
 <li>Get a
@@ -241,25 +233,56 @@
 and simulate a Home button press:</p>
 
 <pre>
-import android.test.InstrumentationTestCase;
+import org.junit.Before;
+import android.support.test.runner.AndroidJUnit4;
 import android.support.test.uiautomator.UiDevice;
 import android.support.test.uiautomator.By;
+import android.support.test.uiautomator.Until;
+...
 
-public class CalculatorUiTest extends InstrumentationTestCase {
+&#64;RunWith(AndroidJUnit4.class)
+&#64;SdkSuppress(minSdkVersion = 18)
+public class ChangeTextBehaviorTest {
 
+    private static final String BASIC_SAMPLE_PACKAGE
+            = "com.example.android.testing.uiautomator.BasicSample";
+    private static final int LAUNCH_TIMEOUT = 5000;
+    private static final String STRING_TO_BE_TYPED = "UiAutomator";
     private UiDevice mDevice;
 
-    public void setUp() {
+    &#64;Before
+    public void startMainActivityFromHomeScreen() {
         // Initialize UiDevice instance
-        mDevice = UiDevice.getInstance(getInstrumentation());
+        mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
 
         // Start from the home screen
         mDevice.pressHome();
-        mDevice.wait(Until.hasObject(By.pkg(getHomeScreenPackage()).depth(0)),
+
+        // Wait for launcher
+        final String launcherPackage = mDevice.getLauncherPackageName();
+        assertThat(launcherPackage, notNullValue());
+        mDevice.wait(Until.hasObject(By.pkg(launcherPackage).depth(0)),
+                LAUNCH_TIMEOUT);
+
+        // Launch the app
+        Context context = InstrumentationRegistry.getContext();
+        final Intent intent = context.getPackageManager()
+                .getLaunchIntentForPackage(BASIC_SAMPLE_PACKAGE);
+        // Clear out any previous instances
+        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
+        context.startActivity(intent);
+
+        // Wait for the app to appear
+        mDevice.wait(Until.hasObject(By.pkg(BASIC_SAMPLE_PACKAGE).depth(0)),
+                LAUNCH_TIMEOUT);
     }
 }
 </pre>
 
+<p>In the example, the {@code &#64;SdkSuppress(minSdkVersion = 18)} statement helps to ensure that
+  tests will only run on devices with Android 4.3 (API level 18) or higher, as required by the
+  UI Automator framework.</p>
+
 <p>Use the
 <a href="{@docRoot}reference/android/support/test/uiautomator/UiDevice.html#findObject(android.support.test.uiautomator.UiSelector)">{@code findObject()}</a>
 method to retrieve a
@@ -292,8 +315,7 @@
 <h4 id="specifying-selector">Specifying a selector</h4>
 <p>If you want to access a specific UI component in an app, use the
 <a href="{@docRoot}reference/android/support/test/uiautomator/UiSelector.html">{@code UiSelector}</a>
-class. This class represents a query for specific elements in the
-currently displayed UI. </p>
+class. This class represents a query for specific elements in the currently displayed UI. </p>
 
 <p>If more than one matching element is found, the first matching element in the layout hierarchy
 is returned as the target
@@ -306,8 +328,8 @@
 {@code UiAutomatorObjectNotFoundException}</a> is thrown. </p>
 
 <p>You can use the
-<a href="{@docRoot}reference/android/support/test/uiautomator/UiSelector.html#childSelector(android.support.test.uiautomator.UiSelector)">{@code childSelector()}</a>
-method to nest multiple
+<a href="{@docRoot}reference/android/support/test/uiautomator/UiSelector.html#childSelector(android.support.test.uiautomator.UiSelector)">
+{@code childSelector()}</a> method to nest multiple
 <a href="{@docRoot}reference/android/support/test/uiautomator/UiSelector.html">{@code UiSelector}</a>
 instances. For example, the following code example shows how your test might specify a search to
 find the first {@link android.widget.ListView} in the currently displayed UI, then search within that
@@ -489,33 +511,14 @@
 </pre>
 
 <h2 id="run">Run UI Automator Tests on a Device or Emulator</h2>
-<p>UI Automator tests are based on the {@link android.app.Instrumentation} class. The
-<a href="https://developer.android.com/tools/building/plugin-for-gradle.html">
-  Android Plug-in for Gradle</a>
-provides a default directory ({@code src/androidTest/java}) for you to store the instrumented test
-classes and test suites that you want to run on a device. The plug-in compiles the test
-code in that directory and then executes the test app using a test runner class. You are
-strongly encouraged to use the
-<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">{@code AndroidJUnitRunner}</a>
-class provided in the
-<a href="{@docRoot}tools/testing-support-library/index.html">Android Testing Support Library</a>
-as your default test runner. </p>
-
-<p>To run UI Automator tests in your Gradle project:</p>
-
-<ol>
-<li>Specify
-<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">{@code AndroidJUnitRunner}</a>
-as the default test instrumentation runner in your {@code build.gradle} file:
-<pre>
-android {
-    defaultConfig {
-        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
-    }
-}</pre>
-</li>
-<li>Run your tests from the command-line by calling the {@code connectedCheck}
-  (or {@code cC}) task:
-<pre>./gradlew cC</pre>
-</li>
-</ol>
\ No newline at end of file
+<p>
+You can run UI Automator tests from <a href="{@docRoot}sdk/index.html">Android Studio</a> or
+from the command-line. Make sure to specify
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+  {@code AndroidJUnitRunner}</a> as the default instrumentation runner in your project.
+</p>
+<p>
+To run your UI Automator test, follow the steps for running instrumented tests
+described in <a href="{@docRoot}training/testing/start/index.html#run-instrumented-tests">
+Getting Started with Testing</a>.
+</p>
\ No newline at end of file
diff --git a/docs/html/training/testing/unit-testing/index.jd b/docs/html/training/testing/unit-testing/index.jd
index a35ba80..6610761 100644
--- a/docs/html/training/testing/unit-testing/index.jd
+++ b/docs/html/training/testing/unit-testing/index.jd
@@ -1,5 +1,6 @@
 page.title=Building Effective Unit Tests
 page.tags=testing,androidjunitrunner,junit,unit test
+page.image=images/testing/hwtest_junit_success.png
 
 trainingnavtop=true
 startpage=true
diff --git a/docs/html/training/testing/unit-testing/instrumented-unit-tests.jd b/docs/html/training/testing/unit-testing/instrumented-unit-tests.jd
index 9906d8c..38321ee 100644
--- a/docs/html/training/testing/unit-testing/instrumented-unit-tests.jd
+++ b/docs/html/training/testing/unit-testing/instrumented-unit-tests.jd
@@ -13,6 +13,7 @@
     <li>Android 2.2 (API level 8) or higher</li>
     <li><a href="{@docRoot}tools/testing-support-library/index.html">
       Android Testing Support Library</a></li>
+    <li><a href="{@docRoot}tools/studio/index.html">Android Studio (latest version)</a>.</li>
   </ul>
 
   <h2>This lesson teaches you to</h2>
@@ -27,8 +28,10 @@
 
   <ul>
     <li>
-<a href="https://github.com/googlesamples/android-testing/tree/master/unittesting/BasicUnitAndroidTest"
+<a href="https://github.com/googlesamples/android-testing/tree/master/unit/BasicUnitAndroidTest"
 class="external-link">Instrumented Unit Tests Code Samples</a></li>
+    <li><a href="https://www.code-labs.io/codelabs/android-studio-testing/index.html?index=..%2F..%2Findex#0"
+class="external-link">Unit and UI Testing in Android Studio (codelab)</a></li>
   </ul>
 </div>
 </div>
@@ -46,44 +49,10 @@
 </p>
 
 <h2 id="setup">Set Up Your Testing Environment</h2>
-<p>Before building instrumented unit tests, you must:</p>
-
-  <ul>
-      <li>
-        <strong>Install the Android Testing Support Library</strong>. The
-        <a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
-        {@code AndroidJUnitRunner}</a> API, located under the
-        {@code com.android.support.test.runner} package, allows you to
-        create and run instrumented unit tests.  To learn how to install the
-        library, see <a href="{@docRoot}tools/testing-support-library/index.html#setup">
-        Testing Support Library Setup</a>.
-      </li>
-
-      <li>
-        <strong>Set up your project structure.</strong> In your Gradle project, the source code for
-        the target app that you want to test is typically placed under the {@code app/src/main/java}
-        folder. The source code for instrumentatation tests, including your unit tests, must be
-        placed under the <code>app/src/androidTest/java</code> folder.
-        To learn more about setting up your project directory, see
-        <a href="{@docRoot}tools/projects/index.html">Managing Projects</a>.
-      </li>
-
-      <li>
-        <strong>Specify your Android testing dependencies</strong>. In order for the
-        <a href="{@docRoot}tools/building/plugin-for-gradle.html">Android Plug-in for Gradle</a> to
-        correctly build and run your instrumented unit tests, you must specify the following
-        libraries in the {@code build.gradle} file of your Android app module:
-
-        <pre>
-dependencies {
-    androidTestCompile 'com.android.support.test:runner:0.3'
-    androidTestCompile 'com.android.support.test:rules:0.3'
-    // Set this dependency if you want to use Hamcrest matching
-    androidTestCompile 'org.hamcrest:hamcrest-library:1.1'
-}
-</pre>
-      </li>
-  </ul>
+<p>Before building your instrumented unit test, make sure to configure your test source code
+location and project dependencies, as described in
+<a href="{@docRoot}training/testing/start/index.html#config-instrumented-tests">
+Getting Started with Testing</a>.</p>
 
 <h2 id="build">Create an Instrumented Unit Test Class</h2>
 <p>
@@ -91,13 +60,13 @@
 creating JUnit 4 test classes and using JUnit 4 assertions and annotations, see
 <a href="local-unit-tests.html#build">Create a Local Unit Test Class</a>.
 </p>
-<p>To create an instrumented JUnit 4 test class, add the {@code @RunWith(AndroidJUnit4.class)}
+<p>To create an instrumented JUnit 4 test class, add the {@code &#64;RunWith(AndroidJUnit4.class)}
 annotation at the beginning of your test class definition. You also need to specify the
 <a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
 {@code AndroidJUnitRunner}</a> class
 provided in the Android Testing Support Library as your default test runner. This step is described
-in more detail in <a href="#run">Run Instrumented Unit Tests</a>.
-</p>
+in more detail in <a href="{@docRoot}training/testing/start/index.html#run-instrumented-tests">
+Getting Started with Testing</p>
 
 <p>The following example shows how you might write an instrumented unit test to test that
 the {@link android.os.Parcelable} interface is implemented correctly for the
@@ -114,6 +83,7 @@
 import static org.junit.Assert.assertThat;
 
 &#64;RunWith(AndroidJUnit4.class)
+&#64;SmallTest
 public class LogHistoryAndroidUnitTest {
 
     public static final String TEST_STRING = "This is a string";
@@ -168,8 +138,8 @@
 class="external-link">{@code RunWith}</a> and
 <a href="http://junit.sourceforge.net/javadoc/org/junit/runners/Suite.html"
 class="external-link">{@code Suite}</a> classes. In your test suite, add the
-{@code @RunWith(Suite.class)} and the {@code @Suite.SuitClasses()} annotations. In
-the {@code @Suite.SuiteClasses()} annotation, list the individual test classes or test
+{@code &#64;RunWith(Suite.class)} and the {@code &#64;Suite.SuitClasses()} annotations. In
+the {@code &#64;Suite.SuiteClasses()} annotation, list the individual test classes or test
 suites as arguments.
 </p>
 
@@ -194,57 +164,7 @@
 
 <h2 id="run">Run Instrumented Unit Tests</h2>
 <p>
-The
-<a href="https://developer.android.com/tools/building/plugin-for-gradle.html">
-  Android Plug-in for Gradle</a>
-provides a default directory ({@code src/androidTest/java}) for you to store the instrumented unit
-and integration test classes and test suites that you want to run on a device. The plug-in compiles
-the test code in that directory and then executes the test app using a test runner class. You must
-set the
-<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
-{@code AndroidJUnitRunner}</a> class provided in the
-<a href="{@docRoot}tools/testing-support-library/index.html">Android Testing Support Library</a>
-as your default test runner.</p>
-</p>
-
-<p>To specify
-<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
-{@code AndroidJUnitRunner}</a> as the default test instrumentation runner, add the following
-setting in your {@code build.gradle} file:</p>
-<pre>
-android {
-    defaultConfig {
-        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
-    }
-}
-</pre>
-
-<h3 id="run-from-Android-Studio">Running instrumented unit tests from Android Studio</h3>
-<p>
-To run instrumented unit tests in your Gradle project from Android Studio:
-</p>
-<ol>
-<li>Open the <strong>Build Variants</strong> window by clicking the left-hand tab, then set the
-test artifact to <em>Android Instrumentation Tests</em>.
-</li>
-<li>In the <strong>Project</strong> window, drill down to your unit test class or method, then
-  right-click and run it using the Android Test configuration.
-</li>
-</ol>
-
-<p>Android Studio displays the results of the unit test execution in the <strong>Run</strong>
-window.</p>
-
-<h3 id="run-from-commandline">Running instrumented unit tests from the command-line</h3>
-
-<p>To run instrumented unit tests in your Gradle project from the command-line, call the
-  {@code connectedCheck} (or {@code cC}) task:</p>
-
-<pre>
-./gradlew cC
-</pre>
-
-<p>You can find the generated HTML test result reports in the
-{@code <path_to_your_project>/app/build/outputs/reports/androidTests/connected/} directory,
-and the corresponding XML files in the
-{@code <path_to_your_project>/app/build/outputs/androidTest-results/connected/} directory.</p>
\ No newline at end of file
+To run your test, follow the steps for running instrumented tests
+described in <a href="{@docRoot}training/testing/start/index.html#run-instrumented-tests">
+Getting Started with Testing</a>.
+</p>
\ No newline at end of file
diff --git a/docs/html/training/testing/unit-testing/local-unit-tests.jd b/docs/html/training/testing/unit-testing/local-unit-tests.jd
index 8221a6d..893d957 100644
--- a/docs/html/training/testing/unit-testing/local-unit-tests.jd
+++ b/docs/html/training/testing/unit-testing/local-unit-tests.jd
@@ -10,7 +10,7 @@
   <h2>Dependencies and Prerequisites</h2>
 
   <ul>
-    <li>Android Plug-in for Gradle 1.1.0 or higher</li>
+    <li><a href="{@docRoot}tools/studio/index.html">Android Studio (latest version)</a>.</li>
   </ul>
 
   <h2>This lesson teaches you to</h2>
@@ -25,8 +25,10 @@
 
   <ul>
     <li>
-<a href="https://github.com/googlesamples/android-testing/tree/master/unittesting/BasicSample"
+<a href="https://github.com/googlesamples/android-testing/tree/master/unit/BasicSample"
 class="external-link">Local Unit Tests Code Samples</a></li>
+    <li><a href="https://codelabs.developers.google.com/codelabs/android-testing/index.html?index=..%2F..%2Findex#0"
+class="external-link">Android Testing Codelab</a></li>
   </ul>
 </div>
 </div>
@@ -36,47 +38,15 @@
 you avoid the overhead of loading the target app and unit test code onto a physical device or
 emulator every time your test is run. Consequently, the execution time for running your unit
 test is greatly reduced. With this approach, you normally use a mocking framework, like
-<a href="https://code.google.com/p/mockito/" class="external-link">Mockito</a>, to fulfill any
+<a href="https://github.com/mockito/mockito" class="external-link">Mockito</a>, to fulfill any
 dependency relationships.</p>
 
-<p><a href="{@docRoot}tools/building/plugin-for-gradle.html">Android Plug-in for Gradle</a>
-version 1.1.0 and higher allows you to create a source directory ({@code src/test/java}) in your
-project to store JUnit tests that you want to run on a local machine. This feature improves your
-project organization by letting you group your unit tests together into a single source set. You
-can run the tests from Android Studio or the command-line, and the plugin executes them on the
-local Java Virtual Machine (JVM) on your development machine. </p>
-
 <h2 id="setup">Set Up Your Testing Environment</h2>
-<p>Before building local unit tests, you must:</p>
+<p>Before building your local unit test, make sure to configure your test source code location and
+project dependencies, as described in
+<a href="{@docRoot}training/testing/start/index.html#config-local-tests">
+Getting Started with Testing</a>.</p>
 
-  <ul>
-      <li>
-        <strong>Set up your project structure.</strong> In your Gradle project, the source code for
-        the target app that you want to test is typically placed under the {@code app/src/main/java}
-        folder. The source code for your local unit tests must be placed under the
-        <code>app/src/test/java</code> folder.
-        To learn more about setting up your project directory, see
-        <a href="#run">Run Local Unit Tests</a> and
-        <a href="{@docRoot}tools/projects/index.html">Managing Projects</a>.
-      </li>
-
-      <li>
-        <strong>Specify your Android testing dependencies</strong>. In order to use JUnit 4 and
-        Mockito with your local unit tests, specify the following libraries in
-        the {@code build.gradle} file of your Android app module:
-
-        <pre>
-dependencies {
-    // Unit testing dependencies
-    testCompile 'junit:junit:4.12'
-    // Set this dependency if you want to use Mockito
-    testCompile 'org.mockito:mockito-core:1.10.19'
-    // Set this dependency if you want to use Hamcrest matching
-    androidTestCompile 'org.hamcrest:hamcrest-library:1.1'
-}
-</pre>
-      </li>
-  </ul>
 
 <h2 id="build">Create a Local Unit Test Class</h2>
 <p>Your local unit test class should be written as a JUnit 4 test class.
@@ -89,7 +59,7 @@
 {@code junit.extensions} package.</p>
 
 <p>To create a basic JUnit 4 test class, create a Java class that contains one or more test methods.
-A test method begins with the {@code @Test} annotation and contains the code to exercise
+A test method begins with the {@code &#64;Test} annotation and contains the code to exercise
 and verify a single functionality in the component that you want to test.</p>
 
 <p>The following example shows how you might implement a local unit test class. The test method
@@ -116,44 +86,10 @@
 <a href="http://junit.org/javadoc/latest/org/junit/Assert.html" class="external-link">
 junit.Assert</a> methods to perform validation checks (or <em>assertions</em>) to compare the state
 of the component under test against some expected value. To make tests more readable, you
-can use <a href="https://code.google.com/p/hamcrest/wiki/Tutorial" class="external-link">
+can use <a href="https://github.com/hamcrest" class="external-link">
 Hamcrest matchers</a> (such as the {@code is()} and {@code equalTo()} methods) to match the
 returned result against the expected result.</p>
 
-<p>In your JUnit 4 test class, you can use annotations to call out sections in your test code for
-special processing, such as:</p>
-
-<ul>
-<li>
-{@code @Before}: Use this annotation to specify a block of code with test setup operations. This
-code block will be invoked before each test. You can have multiple {@code @Before} methods but
-the order which these methods are called is not fixed.
-</li>
-<li>
-{@code @After}: This annotation specifies a block of code with test tear-down operations. This
-code block will be called after every test method. You can define multiple {@code @After}
-operations in your test code. Use this annotation to release any resources from memory.
-</li>
-<li>
-{@code @Test}: Use this annotation to mark a test method. A single test class can contain
-multiple test methods, each prefixed with this annotation.
-</li>
-<li>
-{@code @BeforeClass}: Use this annotation to specify static methods to be invoked only once per
-test class. This testing step is useful for expensive operations such as connecting to a database.
-</li>
-<li>
-{@code @AfterClass}: Use this annotation to specify static methods to be invoked only after all
-tests in the class have been run. This testing step is useful for releasing any resources allocated
-in the {@code @BeforeClass} block.
-</li>
-<li>
-{@code @Test(timeout=<milliseconds>)}: Specifies a timeout period for the test. If the
-test starts but does not complete within the given timeout period, it automatically fails. You must
-specify the timeout period in milliseconds, for example: {@code @Test(timeout=5000)}.
-</li>
-</ul>
-
 <h3 id="mocking-dependencies">Mocking Android dependencies</h3>
 <p>
 By default, the <a href="{@docRoot}tools/building/plugin-for-gradle.html">
@@ -166,7 +102,7 @@
 your component interacts with a dependency in an expected way. By substituting Android dependencies
 with mock objects, you can isolate your unit test from the rest of the Android system while
 verifying that the correct methods in those dependencies are called. The
-<a href="https://code.google.com/p/mockito/" class="external-link">Mockito</a> mocking framework
+<a href="https://github.com/mockito/mockito" class="external-link">Mockito</a> mocking framework
 for Java (version 1.9.5 and higher) offers compatibility with Android unit testing.
 With Mockito, you can configure mock objects to return some specific value when invoked.</p>
 
@@ -179,11 +115,11 @@
 <a href="#setup">Set Up Your Testing Environment</a>.
 </li>
 <li>At the beginning of your unit test class definition, add the
-{@code @RunWith(MockitoJUnitRunner.class)} annotation. This annotation tells the Mockito test
+{@code &#64;RunWith(MockitoJUnitRunner.class)} annotation. This annotation tells the Mockito test
 runner to validate that your usage of the framework is correct and simplifies the initialization of
 your mock objects.
 </li>
-<li>To create a mock object for an Android dependency, add the {@code @Mock} annotation before
+<li>To create a mock object for an Android dependency, add the {@code &#64;Mock} annotation before
 the field declaration.</li>
 <li>To stub the behavior of the dependency, you can specify a condition and return
 value when the condition is met by using the {@code when()} and {@code thenReturn()} methods.
@@ -234,69 +170,14 @@
 <a href="http://site.mockito.org/mockito/docs/current/org/mockito/Mockito.html"
 class="external-link">Mockito API reference</a> and the
 {@code SharedPreferencesHelperTest} class in the
-<a href="https://github.com/googlesamples/android-testing/tree/master/unittesting/BasicSample"
+<a href="https://github.com/googlesamples/android-testing/tree/master/unit/BasicSample"
 class="external-link">sample code</a>.
 </p>
 
 <h2 id="run">Run Local Unit Tests</h2>
 <p>
-The Android Plug-in for Gradle provides a default directory ({@code src/test/java}) for you to
-store unit test classes that you want to run on a local JVM. The plug-in compiles the test code in
-that directory and then executes the test app locally using the default test runner class.
+To run your tests, follow the steps for running local unit tests
+described in <a href="{@docRoot}training/testing/start/index.html#run-local-tests">
+Getting Started with Testing</a>.
 </p>
-<p>
-As with production code, you can create unit tests for a
-<a href="http://developer.android.com/tools/building/configuring-gradle.html#workBuildVariants"
-class="external-link">specific flavor or build type</a>. You should keep unit tests in a test
-source tree location that corresponds to your production source tree, such as:
 
-<table>
-<tr>
-<th>Path to Production Class</th>
-<th>Path to Local Unit Test Class</th>
-</tr>
-<tr>
-<td>{@code src/main/java/Foo.java}</td>
-<td>{@code src/test/java/FooTest.java}</td>
-</tr>
-<tr>
-<td>{@code src/debug/java/Foo.java}</td>
-<td>{@code src/testDebug/java/FooTest.java}</td>
-</tr>
-<tr>
-<td>{@code src/myFlavor/java/Foo.java}</td>
-<td>{@code src/testMyFlavor/java/FooTest.java}</td>
-</tr>
-</table>
-
-<h3 id="run-from-Android-Studio">Running local unit tests from Android Studio</h3>
-<p>
-To run local unit tests in your Gradle project from Android Studio:
-</p>
-<ol>
-<li>In the <strong>Project</strong> window, right click on the project and synchronize your project.
-</li>
-<li>Open the <strong>Build Variants</strong> window by clicking the left-hand tab, then change the
-test artifact to <em>Unit Tests</em>.
-</li>
-<li>In the <strong>Project</strong> window, drill down to your unit test class or method, then
-right-click and run it.
-</li>
-</ol>
-
-<p>Android Studio displays the results of the unit test execution in the <strong>Run</strong>
-window.</p>
-
-<h3 id="run-from-commandline">Running local unit tests from the command-line</h3>
-
-<p>To run local unit tests in your Gradle project from the command-line, call the {@code test} task
-command with the {@code --continue} option.</p>
-
-<pre>
-./gradlew test --continue
-</pre>
-
-<p>If there are failing tests, the command will display links to HTML reports (one per build
-variant). You can find the generated HTML test result reports in the
-{@code <path_to_your_project>/app/build/reports/tests/} directory, and the corresponding XML
-files in the {@code <path_to_your_project>/app/build/test-results/} directory.</p>
\ No newline at end of file
diff --git a/docs/html/training/training_toc.cs b/docs/html/training/training_toc.cs
index 2963345..7561254 100644
--- a/docs/html/training/training_toc.cs
+++ b/docs/html/training/training_toc.cs
@@ -37,35 +37,6 @@
 
       <li class="nav-section">
         <div class="nav-section-header">
-          <a href="<?cs var:toroot ?>training/basics/actionbar/index.html"
-             description=
-             "The action bar is one of the most important design elements you can implement for your
-app's activities. Although first introduced with API level 11, you can use the Support Library to
-include the action bar on devices running Android 2.1 or higher."
-            >Adding the Action Bar</a>
-        </div>
-        <ul>
-          <li><a href="<?cs var:toroot ?>training/basics/actionbar/setting-up.html">
-            Setting Up the Action Bar
-          </a>
-          </li>
-          <li><a href="<?cs var:toroot ?>training/basics/actionbar/adding-buttons.html">
-            Adding Action Buttons
-          </a>
-          </li>
-          <li><a href="<?cs var:toroot ?>training/basics/actionbar/styling.html">
-            Styling the Action Bar
-          </a>
-          </li>
-          <li><a href="<?cs var:toroot ?>training/basics/actionbar/overlaying.html">
-            Overlaying the Action Bar
-          </a>
-          </li>
-        </ul>
-      </li>
-
-      <li class="nav-section">
-        <div class="nav-section-header">
           <a href="<?cs var:toroot ?>training/basics/supporting-devices/index.html"
              description=
              "How to build your app with alternative resources that provide an
@@ -91,7 +62,6 @@
       <li class="nav-section">
         <div class="nav-section-header">
           <a href="<?cs var:toroot ?>training/basics/activity-lifecycle/index.html"
-             es-lang=""
              ja-lang="アクティビティのライフサイクル 管理"
              ko-lang="액티비티 수명 주기 관리하기"
              pt-br-lang="Como gerenciar o ciclo de vida da atividade"
@@ -105,7 +75,6 @@
         </div>
         <ul>
           <li><a href="<?cs var:toroot ?>training/basics/activity-lifecycle/starting.html"
-             es-lang=""
              ja-lang="アクティビティを開始する"
              ko-lang="액티비티 시작하기"
              pt-br-lang="Iniciando uma atividade"
@@ -115,19 +84,11 @@
             Starting an Activity
           </a>
           </li>
-          <li><a href="<?cs var:toroot ?>training/basics/activity-lifecycle/pausing.html"
-             es-lang=""
-             ja-lang=""
-             ko-lang=""
-             pt-br-lang=""
-             ru-lang=""
-             zh-cn-lang=""
-             zh-tw-lang="">
+          <li><a href="<?cs var:toroot ?>training/basics/activity-lifecycle/pausing.html">
             Pausing and Resuming an Activity
           </a>
           </li>
           <li><a href="<?cs var:toroot ?>training/basics/activity-lifecycle/stopping.html"
-             es-lang=""
              ja-lang="アクティビティの一時停止と再開"
              ko-lang="액티비티 일시정지 및 재개하기"
              pt-br-lang="Pausando e reiniciando uma atividade"
@@ -138,7 +99,6 @@
           </a>
           </li>
           <li><a href="<?cs var:toroot ?>training/basics/activity-lifecycle/recreating.html"
-             es-lang=""
              ja-lang="アクティビティを再作成する"
              ko-lang="액티비티 재생성하기"
              pt-br-lang="Recriando uma atividade"
@@ -179,7 +139,6 @@
 
       <li class="nav-section">
         <div class="nav-section-header"><a href="<?cs var:toroot?>training/basics/data-storage/index.html"
-             es-lang=""
              ja-lang="データの保存"
              ko-lang="데이터 저장하기"
              pt-br-lang="Salvando dados"
@@ -193,7 +152,6 @@
         </div>
         <ul>
           <li><a href="<?cs var:toroot ?>training/basics/data-storage/shared-preferences.html"
-             es-lang=""
              ja-lang="キー値セットを保存する"
              ko-lang="키-값 세트 저장하기"
              pt-br-lang="Salvando conjuntos de valor-chave"
@@ -204,7 +162,6 @@
           </a>
           </li>
           <li><a href="<?cs var:toroot ?>training/basics/data-storage/files.html"
-             es-lang=""
              ja-lang="ファイルを保存する"
              ko-lang="파일 저장하기"
              pt-br-lang="Salvando arquivos"
@@ -215,7 +172,6 @@
           </a>
           </li>
           <li><a href="<?cs var:toroot ?>training/basics/data-storage/databases.html"
-             es-lang=""
              ja-lang="SQL データベースにデータを保存する"
              ko-lang="SQL 데이터베이스에 데이터 저장하기"
              pt-br-lang="Salvando dados em bancos de dados do SQL"
@@ -231,7 +187,6 @@
       <li class="nav-section">
         <div class="nav-section-header">
           <a href="<?cs var:toroot ?>training/basics/intents/index.html"
-             es-lang=""
              ja-lang="他のアプリとの相互操作"
              ko-lang="액티비티 수명 주기 관리하기"
              pt-br-lang="Interagindo com outros aplicativos"
@@ -246,7 +201,6 @@
         </div>
         <ul>
           <li><a href="<?cs var:toroot ?>training/basics/intents/sending.html"
-             es-lang=""
              ja-lang="別のアプリにユーザーを送る"
              ko-lang="다른 앱으로 사용자 보내기"
              pt-br-lang="Enviando o usuário para outro aplicativo"
@@ -257,7 +211,6 @@
           </a>
           </li>
           <li><a href="<?cs var:toroot ?>training/basics/intents/result.html"
-             es-lang=""
              ja-lang="アクティビティから結果を取得する"
              ko-lang="액티비티로부터 결과 가져오기"
              pt-br-lang="Obtendo resultados de uma atividade"
@@ -268,7 +221,6 @@
           </a>
           </li>
           <li><a href="<?cs var:toroot ?>training/basics/intents/filters.html"
-             es-lang=""
              ja-lang="他のアプリからのアクティビティの開始を許可する"
              ko-lang="다른 앱이 자신의 액티비티를 시작하도록 허용하기"
              pt-br-lang="Permitindo que outros aplicativos iniciem sua atividade"
@@ -280,6 +232,30 @@
           </li>
         </ul>
       </li>
+      <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>training/permissions/index.html"
+             description=
+             "How to declare that your app needs access to features and
+             resources outside of its 'sandbox', and how to request those
+             privileges at runtime."
+            >Working with System Permissions</a>
+        </div>
+        <ul>
+          <li><a href="<?cs var:toroot ?>training/permissions/declaring.html">
+            Declaring Permissions
+          </a>
+          </li>
+          <li><a href="<?cs var:toroot ?>training/permissions/requesting.html">
+            Requesting Permissions at Run Time
+          </a>
+          </li>
+          <li><a href="<?cs var:toroot ?>training/permissions/best-practices.html">
+            Best Practices for Runtime Permissions
+          </a>
+          </li>
+        </ul>
+      </li>
 
     </ul>
   </li><!-- end getting started -->
@@ -676,14 +652,18 @@
 
       <li class="nav-section">
         <div class="nav-section-header">
-          <a href="<?cs var:toroot ?>training/cloudsync/index.html"
+          <a href="<?cs var:toroot ?>training/backup/index.html"
              description=
              "How to sync and back up app and user data to remote web services in the
               cloud and how to restore the data back to multiple devices."
             >Syncing to the Cloud</a>
         </div>
         <ul>
-          <li><a href="<?cs var:toroot ?>training/cloudsync/backupapi.html">
+          <li><a href="<?cs var:toroot ?>training/backup/autosyncapi.html">
+            Configuring Auto Backup
+          </a>
+          </li>
+          <li><a href="<?cs var:toroot ?>training/backup/backupapi.html">
             Using the Backup API
           </a>
           </li>
@@ -781,6 +761,11 @@
             </a>
           </li>
           <li>
+            <a href="<?cs var:toroot ?>training/location/change-location-settings.html">
+            Changing Location Settings
+            </a>
+          </li>
+          <li>
             <a href="<?cs var:toroot ?>training/location/receive-location-updates.html">
             Receiving Location Updates
             </a>
@@ -811,7 +796,7 @@
     <div class="nav-section-header">
       <a href="<?cs var:toroot ?>training/building-userinfo.html">
       <span class="small">Building Apps with</span><br/>
-              Contacts &amp; Sign-In
+              User Info &amp; Sign-In
       </a>
     </div>
     <ul>
@@ -1009,6 +994,21 @@
            "How to detect location data on Android Wear devices."
           >Detecting Location</a>
       </li>
+
+      <li>
+        <a href="<?cs var:toroot ?>training/articles/wear-permissions.html"
+           description=
+           "How to request permissions on Android Wear devices."
+          >Requesting Permissions</a>
+      </li>
+
+      <li>
+        <a href="<?cs var:toroot ?>training/wearables/wearable-sounds.html"
+           description=
+           "How to use the speaker on Android Wear devices."
+          >Using the Speaker</a>
+      </li>
+
     </ul>
   </li>
   <!-- End Building for wearables -->
@@ -1084,6 +1084,14 @@
                ja-lang="再生中カードを表示する">
               Displaying a Now Playing Card</a>
           </li>
+          <li>
+            <a href="<?cs var:toroot ?>training/tv/playback/guided-step.html">
+              Adding a Guided Step</a>
+          </li>
+          <li>
+            <a href="<?cs var:toroot ?>training/tv/playback/options.html">
+              Enabling Background Playback</a>
+          </li>
         </ul>
       </li>
 
@@ -1193,7 +1201,11 @@
       </a>
       </li>
       <li><a href="<?cs var:toroot ?>training/enterprise/work-policy-ctrl.html">
-        Building a Work Policy Controller
+        Building a Device Policy Controller
+      </a>
+      </li>
+      <li><a href="<?cs var:toroot ?>training/enterprise/cosu.html">
+        Configuring Corporate-Owned, Single-Use Devices
       </a>
       </li>
     </ul>
@@ -1311,6 +1323,8 @@
               </li>
           </ul>
       </li>
+
+
       <li class="nav-section">
         <div class="nav-section-header">
             <a href="<?cs var:toroot ?>training/swipe/index.html"
@@ -1329,6 +1343,8 @@
             </li>
         </ul>
       </li>
+
+
       <li class="nav-section">
         <div class="nav-section-header">
           <a href="<?cs var:toroot ?>training/search/index.html"
@@ -1367,17 +1383,30 @@
           </a>
           </li>
           <li><a href="<?cs var:toroot ?>training/app-indexing/enabling-app-indexing.html">
-            Specifying  App Content for Indexing
+            Specifying App Content for Indexing
           </a>
           </li>
         </ul>
-      </li>
-    </ul>
   </li>
+
+      <li>
+        <a href="<?cs var:toroot ?>training/articles/assistant.html"
+           description=
+           "Support contextually relevant actions through the Assist API."
+          >Optimizing Content for the Assistant</a>
+      </li>
+       <li class="nav-section">
+        <div class="nav-section">
+          <a href="<?cs var:toroot ?>training/app-links/index.html"
+             description=
+             "How to enable the system to handle web requests by taking the user directly
+             to your app instead of your website."
+            >Handling App Links</a>
+        </div>
+      </li>
   <!-- End Interaction and Engagement -->
 
-
-
+</ul>
 
   <li class="nav-section">
     <div class="nav-section-header">
@@ -1426,6 +1455,48 @@
 
       <li class="nav-section">
         <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>training/appbar/index.html"
+             description=
+             "How to use the support library's toolbar widget to implement an
+             app bar that displays properly on a wide range of devices."
+            >Adding the App Bar</a>
+        </div>
+        <ul>
+          <li><a href="<?cs var:toroot ?>training/appbar/setting-up.html"
+            >Setting Up the App Bar</a>
+          </li>
+          <li><a href="<?cs var:toroot ?>training/appbar/actions.html"
+            >Adding and Handling Actions</a>
+          </li>
+          <li><a href="<?cs var:toroot ?>training/appbar/up-action.html"
+            >Adding an Up Action</a>
+          </li>
+          <li><a href="<?cs var:toroot ?>training/appbar/action-views.html"
+            >Action Views and Action Providers</a>
+          </li>
+        </ul>
+      </li>
+
+            <li class="nav-section">
+        <div class="nav-section-header">
+          <a href="<?cs var:toroot ?>training/snackbar/index.html"
+             description=
+             "How to use the support library's Snackbar widget to display a
+             brief pop-up message."
+            >Showing Pop-Up Messages</a>
+        </div>
+        <ul>
+          <li><a href="<?cs var:toroot ?>training/snackbar/showing.html"
+            >Building and Displaying a Pop-Up Message</a>
+          </li>
+          <li><a href="<?cs var:toroot ?>training/snackbar/action.html"
+            >Adding an Action to a Message</a>
+          </li>
+        </ul>
+      </li>
+
+      <li class="nav-section">
+        <div class="nav-section-header">
           <a href="<?cs var:toroot ?>training/custom-views/index.html"
              description=
              "How to build custom UI widgets that are interactive and smooth."
@@ -1496,6 +1567,10 @@
             Developing Accessibility Services
           </a>
           </li>
+          <li><a href="<?cs var:toroot ?>training/accessibility/testing.html">
+            Accessibility Testing Checklist
+          </a>
+          </li>
         </ul>
       </li>
 
@@ -1536,34 +1611,113 @@
           <a href="<?cs var:toroot ?>training/material/index.html"
              description=
              "How to implement material design on Android."
+            zh-cn-lang="面向开发者的材料设计"
+            zh-tw-lang="開發人員材料設計"
+            ja-lang="マテリアル デザインでのアプリ作成"
+            es-lang="Crear aplicaciones con Material Design"
+            pt-br-lang="Material Design para desenvolvedores"
+            ko-lang="개발자를 위한 머티리얼 디자인"
+            ru-lang="Создание приложений с помощью Material Design"
+            in-lang="Desain Bahan untuk Pengembang"
+            vi-lang="Material Design cho Nhà phát triển"
             >Creating Apps with Material Design</a>
         </div>
         <ul>
-          <li><a href="<?cs var:toroot ?>training/material/get-started.html">
+          <li><a href="<?cs var:toroot ?>training/material/get-started.html"
+            zh-cn-lang="入门指南"
+            zh-tw-lang="開始使用"
+            ja-lang="スタート ガイド"
+            es-lang="Comencemos"
+            pt-br-lang="Como iniciar"
+            ko-lang="시작하기"
+            ru-lang="Начало работы"
+            in-lang="Memulai"
+            vi-lang="Bắt đầu"
+            >
             Getting Started
           </a>
           </li>
-          <li><a href="<?cs var:toroot ?>training/material/theme.html">
+          <li><a href="<?cs var:toroot ?>training/material/theme.html"
+            zh-cn-lang="使用材料主题"
+            zh-tw-lang="使用材料設計風格"
+            ja-lang="マテリアル テーマの使用"
+            es-lang="Usar el tema Material"
+            pt-br-lang="Como usar o tema do Material"
+            ko-lang="머티어리얼 테마 사용"
+            ru-lang="Использование темы Material Design"
+            in-lang="Menggunakan Tema Bahan"
+            vi-lang="Sử dụng Chủ đề Material"
+            >
             Using the Material Theme
           </a>
           </li>
-          <li><a href="<?cs var:toroot ?>training/material/lists-cards.html">
+          <li><a href="<?cs var:toroot ?>training/material/lists-cards.html"
+            zh-cn-lang="创建列表与卡片"
+            zh-tw-lang="建立清單和卡片"
+            ja-lang="リストとカードの作成"
+            es-lang="Crear listas y tarjetas"
+            pt-br-lang="Como criar listas e cartões"
+            ko-lang="목록 및 카드 생성"
+            ru-lang="Создание списков и подсказок"
+            in-lang="Membuat Daftar dan Kartu"
+            vi-lang="Tạo Danh sách và Thẻ"
+            >
             Creating Lists and Cards
           </a>
           </li>
-          <li><a href="<?cs var:toroot ?>training/material/shadows-clipping.html">
+          <li><a href="<?cs var:toroot ?>training/material/shadows-clipping.html"
+            zh-cn-lang="定义阴影与裁剪视图"
+            zh-tw-lang="定義陰影和裁剪檢視"
+            ja-lang="シャドウとクリッピング ビューの定義"
+            es-lang="Definir vistas de recorte y sombras"
+            pt-br-lang="Como definir sombras e recortar visualizações"
+            ko-lang="그림자 정의 및 뷰 클리핑"
+            ru-lang="Определение теней и обрезка представлений"
+            in-lang="Mendefinisikan Bayangan dan Memangkas Tampilan"
+            vi-lang="Định nghĩa Đổ bóng và Dạng xem Cắt hình"
+            >
             Defining Shadows and Clipping Views
           </a>
           </li>
-          <li><a href="<?cs var:toroot ?>training/material/drawables.html">
+          <li><a href="<?cs var:toroot ?>training/material/drawables.html"
+            zh-cn-lang="使用 Drawables"
+            zh-tw-lang="使用可繪項目"
+            ja-lang="ドローアブルの使用"
+            es-lang="Trabajar con interfaces dibujables"
+            pt-br-lang="Como trabalhar com desenháveis"
+            ko-lang="Drawable 사용"
+            ru-lang="Работа с элементами дизайна"
+            in-lang="Bekerja dengan Drawable"
+            vi-lang="Làm việc với Nội dung vẽ được"
+            >
             Working with Drawables
           </a>
           </li>
-          <li><a href="<?cs var:toroot ?>training/material/animations.html">
+          <li><a href="<?cs var:toroot ?>training/material/animations.html"
+            zh-cn-lang="定义定制动画"
+            zh-tw-lang="定義自訂動畫"
+            ja-lang="カスタム アニメーションの定義"
+            es-lang="Definir animaciones personalizadas"
+            pt-br-lang="Como definir animações personalizadas"
+            ko-lang="사용자지정 애니메이션 정의"
+            ru-lang="Определение настраиваемой анимации"
+            in-lang="Mendefinisikan Animasi Custom"
+            vi-lang="Định nghĩa Hoạt hình Tùy chỉnh"
+            >
             Defining Custom Animations
           </a>
           </li>
-          <li><a href="<?cs var:toroot ?>training/material/compatibility.html">
+          <li><a href="<?cs var:toroot ?>training/material/compatibility.html"
+            zh-cn-lang="维护兼容性"
+            zh-tw-lang="維持相容性"
+            ja-lang="互換性の維持"
+            es-lang="Mantener la compatibilidad"
+            pt-br-lang="Como manter a compatibilidade"
+            ko-lang="호환성 유지"
+            ru-lang="Обеспечение совместимости"
+            in-lang="Mempertahankan Kompatibilitas"
+            vi-lang="Duy trì Tính tương thích"
+            >
             Maintaining Compatibility
           </a>
           </li>
@@ -1793,6 +1947,7 @@
           </li>
         </ul>
       </li>
+
       <li class="nav-section">
         <div class="nav-section-header">
           <a href="<?cs var:toroot ?>training/monitoring-device-state/index.html"
@@ -1806,6 +1961,44 @@
             </a>
         </div>
         <ul>
+
+          <li class="nav-section">
+            <div class="nav-section-header">
+              <a href="<?cs var:toroot ?>training/performance/battery/network/index.html">
+                Reducing Network Battery Drain
+              </a>
+            </div>
+            <ul>
+              <li><a href="<?cs var:toroot ?>training/performance/battery/network/gather-data.html">
+                Collecting Network Traffic Data
+              </a>
+              </li>
+              <li><a href="<?cs var:toroot ?>training/performance/battery/network/analyze-data.html">
+                Analyzing Network Traffic Data
+              </a>
+              </li>
+              <li><a href="<?cs var:toroot ?>training/performance/battery/network/action-user-traffic.html">
+                Optimizing User-Initiated Network Use
+              </a>
+              </li>
+              <li><a href="<?cs var:toroot ?>training/performance/battery/network/action-app-traffic.html">
+                Optimizing App-Initiated Network Use
+              </a>
+              </li>
+              <li><a href="<?cs var:toroot ?>training/performance/battery/network/action-server-traffic.html">
+                Optimizing Server-Initiated Network Use
+              </a>
+              </li>
+              <li><a href="<?cs var:toroot ?>training/performance/battery/network/action-any-traffic.html">
+                Optimizing General Network Use
+              </a>
+              </li>
+            </ul>
+          </li> <!-- End of Reducing Network Battery Drain -->
+
+          <li><a href="<?cs var:toroot ?>training/monitoring-device-state/doze-standby.html"
+            >Optimizing for Doze and App Standby</a>
+          </li>
           <li><a href="<?cs var:toroot ?>training/monitoring-device-state/battery-monitoring.html"
             zh-cn-lang="监控电池电量和充电状态"
             ja-lang="電池残量と充電状態の監視"
@@ -1930,42 +2123,64 @@
 
   <li class="nav-section">
     <div class="nav-section-header">
-      <a href="<?cs var:toroot ?>training/testing.html">
+      <a href="<?cs var:toroot ?>training/best-permissions-ids.html">
+      <span class="small">Best Practices for</span><br/>
+              Permissions &amp; Identifiers
+      </a>
+    </div>
+    <ul>
+      <li>
+        <a href="<?cs var:toroot ?>training/articles/user-data-overview.html"
+           description=
+           "Overview of app permissions on Android and how they affect your users."
+          >Permissions and User Data</a>
+      </li>
+      <li>
+        <a href="<?cs var:toroot ?>training/articles/user-data-permissions.html"
+           description=
+           "How to manage permissions the right way for users."
+          >Best Practices for App Permissions</a>
+      </li>
+      <li>
+        <a href="<?cs var:toroot ?>training/articles/user-data-ids.html"
+           description=
+           "Unique identifiers available and how to choose the right one for your use case."
+          >Best Practices for Unique Identifiers</a>
+      </li>
+    </ul>
+  </li>
+  <!-- End Permissions and identifiers -->
+
+  <li class="nav-section">
+    <div class="nav-section-header">
+      <a href="<?cs var:toroot ?>training/testing/index.html">
       <span class="small">Best Practices for</span><br/>
               Testing
       </a>
     </div>
     <ul>
+      <li>
+      <a href="<?cs var:toroot ?>training/testing/start/index.html"
+         description="How to get started with testing your Android applications.">
+            Getting Started with Testing
+          </a>
+      </li>
       <li class="nav-section">
-      <div class="nav-section-header"><a href="<?cs var:toroot ?>training/activity-testing/index.html"
-         description="How to test Activities in your Android applications.">
-            Testing Your Activity
+      <div class="nav-section-header"><a href="<?cs var:toroot ?>training/testing/unit-testing/index.html"
+         description="How to build effective unit tests for Android apps.">
+            Building Effective Unit Tests
           </a></div>
         <ul>
-          <li><a href="<?cs var:toroot ?>training/activity-testing/preparing-activity-testing.html">
-            <span class="en">Setting Up Your Test Environment</span>
-          </a>
+          <li><a href="<?cs var:toroot ?>training/testing/unit-testing/local-unit-tests.html">
+            <span class="en">Building Local Unit Tests</span>
+            </a>
           </li>
-          <li><a href="<?cs var:toroot ?>training/activity-testing/activity-basic-testing.html">
-            <span class="en">Creating and Running a Test Case</span>
-          </a>
-          </li>
-          <li><a href="<?cs var:toroot ?>training/activity-testing/activity-ui-testing.html">
-            <span class="en">Testing UI Components</span>
-          </a>
-          </li>
-          <li><a href="<?cs var:toroot ?>training/activity-testing/activity-unit-testing.html">
-            <span class="en">Creating Unit Tests</span>
-          </a>
-          </li>
-          <li><a href="<?cs var:toroot ?>training/activity-testing/activity-functional-testing.html">
-            <span class="en">Creating Functional Tests</span>
-          </a>
+          <li><a href="<?cs var:toroot ?>training/testing/unit-testing/instrumented-unit-tests.html">
+            <span class="en">Building Instrumented Unit Tests</span>
+            </a>
           </li>
         </ul>
       </li>
-    </ul>
-    <ul>
       <li class="nav-section">
       <div class="nav-section-header"><a href="<?cs var:toroot ?>training/testing/ui-testing/index.html"
          description="How to automate your user interface tests for Android apps.">
@@ -1982,24 +2197,21 @@
           </li>
         </ul>
       </li>
-    </ul>
-    <ul>
       <li class="nav-section">
-      <div class="nav-section-header"><a href="<?cs var:toroot ?>training/testing/unit-testing/index.html"
-         description="How to build effective unit tests for Android apps.">
-            Building Effective Unit Tests
+      <div class="nav-section-header"><a href="<?cs var:toroot ?>training/testing/integration-testing/index.html"
+         description="How to build effective integration tests for Android apps.">
+            Testing App Component Integrations
           </a></div>
         <ul>
-          <li><a href="<?cs var:toroot ?>training/testing/unit-testing/local-unit-tests.html">
-            <span class="en">Building Local Unit Tests</span>
-            </a>
-          </li>
-          <li><a href="<?cs var:toroot ?>training/testing/unit-testing/instrumented-unit-tests.html">
-            <span class="en">Building Instrumented Unit Tests</span>
-            </a>
-          </li>
+         <li><a href="<?cs var:toroot ?>training/testing/integration-testing/service-testing.html">
+           <span class="en">Testing Your Service</span></a></li>
+         <li><a href="<?cs var:toroot ?>training/testing/integration-testing/content-provider-testing.html">
+           <span class="en">Testing Your Content Provider</span></a></li>
         </ul>
       </li>
+      <li><a href="<?cs var:toroot ?>training/testing/performance.html"
+          description="How to automate UI performance testing.">Testing Display Performance</a>
+      </li>
     </ul>
   </li>
   <!-- End best Testing -->
diff --git a/docs/html/training/tv/discovery/recommendations.jd b/docs/html/training/tv/discovery/recommendations.jd
index ffe33f2..0b0b270 100644
--- a/docs/html/training/tv/discovery/recommendations.jd
+++ b/docs/html/training/tv/discovery/recommendations.jd
@@ -63,10 +63,13 @@
 
 <ul>
 <li><strong>Continuation content</strong> recommendations for the next episode for users to resume
-watching a series.</li>
+watching a series. Or, use continuation recommendations for paused movies, TV shows, or podcasts
+so users can get back to watching paused content in just a few clicks.</li>
 <li><strong>New content</strong> recommendations, such as for a new first-run episode, if the user
-finished watching another series.
-<li><strong>Related content</strong> recommendations based on the users historic viewing behavior.
+finished watching another series. Also, if your app lets users subscribe to, follow, or track
+content, use new content recommendations for unwatched items in their list of tracked content.</li>
+<li><strong>Related content</strong> recommendations based on the users' historic viewing behavior.
+</li>
 </ul>
 
 <p>For more information on how to design recommendation cards for the best user experience, see
@@ -88,6 +91,25 @@
 <a href="https://www.google.com/design/spec-tv/system-overview/recommendation-row.html#recommendation-row-card-customization"
 class="external-link">Recommendation Row</a> in the Android TV Design Spec.</p>
 
+<h3 id="grouping">Grouping Recommendations</h3>
+
+<p>
+You can optionally group recommendations based on recommendation source. For example, your app
+might provide two groups of recommendations: recommendations for content the user is subscribed to,
+and recommendations for new trending content the user might not be aware of.
+</p>
+<p>
+The system ranks and orders recommendations for each group separately when creating or updating
+the recommendation row. By providing group information for your recommendations, you can ensure
+that your recommendations don’t get ordered below unrelated recommendations.
+</p>
+<p>
+Use
+{@link android.support.v4.app.NotificationCompat.Builder#setGroup
+NotificationCompat.Builder.setGroup()} to set the group key string of a recommendation. For
+example, to mark a recommendation as belonging to a group that contains new trending content,
+you might call <code>setGroup("trending")</code>.
+</p>
 
 <h2 id="service">Create a Recommendations Service</h2>
 
diff --git a/docs/html/training/tv/games/index.jd b/docs/html/training/tv/games/index.jd
index 7a3365d..73336d0 100644
--- a/docs/html/training/tv/games/index.jd
+++ b/docs/html/training/tv/games/index.jd
@@ -225,24 +225,20 @@
 
 <p>
   Games controllers may not be available or active for users of a TV device. In order to properly
-  inform users that your game requires (or just supports) a game controller, you must include
-  entries in the app manifest. If your game requires a game controller, you must include the
-  following entry in your app manifest:
-</p>
-
-<pre>
-  &lt;uses-feature android:name="android.hardware.gamepad"/&gt;
-</pre>
-
-<p>
-  If your game uses, but does not require, a game controller, include the following feature
-  entry in your app manifest:
+  inform users that your game supports a game controller, you must include the following entry in
+  your app manifest:
 </p>
 
 <pre>
   &lt;uses-feature android:name="android.hardware.gamepad" android:required="false"/&gt;
 </pre>
 
+<p class="note">
+  <strong>Note:</strong> When specifying {@code android:hardware:gamepad} support, do not set the
+  {@code android:required} attribute to {@code "true"}. If you do this, users won’t be able to
+  install your app on TV devices.
+</p>
+
 <p>For more information about manifest entries, see
   <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">App Manifest</a>.
 </p>
diff --git a/docs/html/training/tv/index.jd b/docs/html/training/tv/index.jd
index ff9f111..4a6bcb8 100644
--- a/docs/html/training/tv/index.jd
+++ b/docs/html/training/tv/index.jd
@@ -9,4 +9,21 @@
 <p>These classes teach you how to build apps for TV devices.</p>
 
 <p class="note"><strong>Note:</strong> For details on how to publish your TV apps in Google Play,
-see <a href="{@docRoot}distribute/googleplay/tv.html">Distribute to Android TV</a>.</p>
\ No newline at end of file
+see <a href="{@docRoot}distribute/googleplay/tv.html">Distribute to Android TV</a>.</p>
+
+<div class="wrap">
+  <div class="cols">
+    <div class="col-1of2">
+      <p>If you prefer to learn through interactive video training, check out this online course
+      about extending your apps to work with Android TV.</p>
+      <p><a href="https://www.udacity.com/course/ud875B" class="button">
+        Start the video course</a>
+      </p>
+    </div>
+    <div class="col-1of2">
+      <iframe width="300" height="169"
+      src="//www.youtube.com/embed/anJtq2rtrA8?autohide=1&amp;showinfo=0"
+      frameborder="0" allowfullscreen="" style="float: right; margin: 0 0 20px 20px;"></iframe>
+    </div>
+  </div>
+</div>
\ No newline at end of file
diff --git a/docs/html/training/tv/playback/browse.jd b/docs/html/training/tv/playback/browse.jd
index 9c81597..4621389 100644
--- a/docs/html/training/tv/playback/browse.jd
+++ b/docs/html/training/tv/playback/browse.jd
@@ -11,25 +11,35 @@
   <h2>This lesson teaches you to</h2>
   <ol>
     <li><a href="#layout">Create a Media Browse Layout</a></li>
+    <li><a href="#header">Customize the Header Views</a></li>
     <li><a href="#lists">Display Media Lists</a></li>
     <li><a href="#background">Update the Background</a></li>
   </ol>
+  <h2>Try it out</h2>
+  <ul>
+    <li><a class="external-link" href="https://github.com/googlesamples/androidtv-Leanback">Android
+    Leanback sample app</a></li>
+  </ul>
 
 </div>
 </div>
 
 <p>
-  Media apps that run on TV need to allow users to browse its content offerings, make a
+  A media app that runs on a TV needs to allow users to browse its content offerings, make a
   selection, and start playing content. The content browsing experience for apps of this type
   should be simple and intuitive, as well as visually pleasing and engaging.
 </p>
 
 <p>
   This lesson discusses how to use the classes provided by the <a href=
-  "{@docRoot}tools/support-library/features.html#v17-leanback">v17 leanback support library</a> to
-  implement a user interface for browsing music or videos from your app's media catalog.
+  "{@docRoot}tools/support-library/features.html#v17-leanback">v17 leanback support library</a>
+  to implement a user interface for browsing music or videos from your app's media catalog.
 </p>
 
+<img itemprop="image" src="{@docRoot}images/tv/app-browse.png" alt="App main screen"/>
+<p class="img-caption"><b>Figure 1.</b> The <a href="https://github.com/googlesamples/androidtv-Leanback">
+Leanback sample app</a> browse fragment displays video catalog data.</p>
+
 
 <h2 id="layout">Create a Media Browse Layout</h2>
 
@@ -37,69 +47,270 @@
   The {@link android.support.v17.leanback.app.BrowseFragment} class in the leanback library
   allows you to create a primary layout for browsing categories and rows of media items with a
   minimum of code. The following example shows how to create a layout that contains a {@link
-  android.support.v17.leanback.app.BrowseFragment}:
+  android.support.v17.leanback.app.BrowseFragment} object:
 </p>
 
 <pre>
-&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-  android:layout_width=&quot;match_parent&quot;
-  android:layout_height=&quot;match_parent&quot;
-  android:orientation=&quot;vertical&quot;
-  &gt;
+&lt;FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/main_frame"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
 
-  &lt;fragment
-      <strong>android:name="android.support.v17.leanback.app.BrowseFragment"</strong>
-      android:id=&quot;@+id/browse_fragment&quot;
-      android:layout_width=&quot;match_parent&quot;
-      android:layout_height=&quot;match_parent&quot;
-      /&gt;
+    &lt;fragment
+        android:name="com.example.android.tvleanback.ui.MainFragment"
+        android:id="@+id/main_browse_fragment"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent" /&gt;
+
+&lt;/FrameLayout&gt;
+</pre>
+
+<p>The application's main activity sets this view, as shown in the following example:</p>
+
+<pre>
+public class MainActivity extends Activity {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.main);
+    }
+...
+</pre>
+
+<p>The {@link android.support.v17.leanback.app.BrowseFragment} methods populate the view with the
+video data and UI elements and set the layout parameters such as the icon, title, and whether
+category headers are enabled.</p>
+
+<ul>
+  <li>See <a href="#set-ui">Set UI Elements</a> for more information about setting up UI elements.</li>
+  <li>See <a href="#hide-heads">Hide or Disable Headers</a> for more information about hiding the
+  headers.</li>
+</ul>
+
+<p>The application's subclass that implements the
+{@link android.support.v17.leanback.app.BrowseFragment} methods also sets
+up event listeners for user actions on the UI elements, and prepares the background
+manager, as shown in the following example:</p>
+
+<pre>
+public class MainFragment extends BrowseFragment implements
+        LoaderManager.LoaderCallbacks&lt;HashMap&lt;String, List&lt;Movie&gt;&gt;&gt; {
+
+...
+
+    &#64;Override
+    public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+
+        loadVideoData();
+
+        prepareBackgroundManager();
+        setupUIElements();
+        setupEventListeners();
+    }
+...
+
+    private void prepareBackgroundManager() {
+        mBackgroundManager = BackgroundManager.getInstance(getActivity());
+        mBackgroundManager.attach(getActivity().getWindow());
+        mDefaultBackground = getResources()
+            .getDrawable(R.drawable.default_background);
+        mMetrics = new DisplayMetrics();
+        getActivity().getWindowManager().getDefaultDisplay().getMetrics(mMetrics);
+    }
+
+    private void setupUIElements() {
+        setBadgeDrawable(getActivity().getResources()
+            .getDrawable(R.drawable.videos_by_google_banner));
+        // Badge, when set, takes precedent over title
+        setTitle(getString(R.string.browse_title));
+        setHeadersState(HEADERS_ENABLED);
+        setHeadersTransitionOnBackEnabled(true);
+        // set headers background color
+        setBrandColor(getResources().getColor(R.color.fastlane_background));
+        // set search icon color
+        setSearchAffordanceColor(getResources().getColor(R.color.search_opaque));
+    }
+
+    private void loadVideoData() {
+        VideoProvider.setContext(getActivity());
+        mVideosUrl = getActivity().getResources().getString(R.string.catalog_url);
+        getLoaderManager().initLoader(0, null, this);
+    }
+
+    private void setupEventListeners() {
+        setOnSearchClickedListener(new View.OnClickListener() {
+
+            &#64;Override
+            public void onClick(View view) {
+                Intent intent = new Intent(getActivity(), SearchActivity.class);
+                startActivity(intent);
+            }
+        });
+
+        setOnItemViewClickedListener(new ItemViewClickedListener());
+        setOnItemViewSelectedListener(new ItemViewSelectedListener());
+    }
+...
+</pre>
+
+<h3 id="set-ui">Set UI Elements</h2>
+
+<p>In the sample above, the private method <code>setupUIElements()</code> calls several of the
+{@link android.support.v17.leanback.app.BrowseFragment} methods to style the media catalog browser:
+</p>
+
+<ul>
+  <li>{@link android.support.v17.leanback.app.BrowseFragment#setBadgeDrawable(android.graphics.drawable.Drawable) setBadgeDrawable()}
+  places the specified drawable resource in the upper-right corner of the browse fragment, as
+  shown in figures 1 and 2. This method replaces the title string with the
+  drawable resource, if {@code setTitle()} is also called. The drawable resource should be 52dps
+  tall.</li>
+  <li>{@link android.support.v17.leanback.app.BrowseFragment#setTitle(java.lang.CharSequence) setTitle()}
+  sets the title string in the upper-right corner of the browse fragment, unless
+  {@code setBadgeDrawable()} is called.</li>
+  <li>{@link android.support.v17.leanback.app.BrowseFragment#setHeadersState(int) setHeadersState()}
+  and {@link android.support.v17.leanback.app.BrowseFragment#setHeadersTransitionOnBackEnabled(boolean) setHeadersTransitionOnBackEnabled()} hide or disable the headers. See
+  <a href="#hide-heads">Hide or Disable Headers</a> for more information.
+  </li>
+  <li>{@link android.support.v17.leanback.app.BrowseFragment#setBrandColor(int) setBrandColor()}
+  sets the background color for UI elements in the browse fragment, specifically the header
+  section background color, with the specified color value.</li>
+  <li>{@link android.support.v17.leanback.app.BrowseFragment#setSearchAffordanceColor(int) setSearchAffordanceColor()}
+  sets the color of the search icon with the specified color value. The search icon
+  appears in the upper-left corner of the browse fragment, as shown in figures 1 and 2.</li>
+</ul>
+
+<h2 id="header">Customize the Header Views</h2>
+
+<p>The browse fragment shown in figure 1 lists the video category names (the row headers) in the
+left pane. Text views display these category names from the video database. You can customize the
+header to include additional views in a more complex layout. The following sections show how to
+include an image view that displays an icon next to the category name, as shown in figure 2.</p>
+
+<img itemprop="image" src="{@docRoot}images/tv/custom-head.png" alt="App main screen"/>
+<p class="img-caption"><b>Figure 2.</b> The row headers in the browse fragment, with both an icon
+and a text label.</p>
+
+<p>The layout for the row header is defined as follows:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"&gt;
+
+    &lt;ImageView
+        android:id="@+id/header_icon"
+        android:layout_width="32dp"
+        android:layout_height="32dp" /&gt;
+    &lt;TextView
+        android:id="@+id/header_label"
+        android:layout_marginTop="6dp"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content" /&gt;
+
 &lt;/LinearLayout&gt;
 </pre>
 
-<p>
-  In order to work with this layout in an activity, retrieve the {@link
-  android.support.v17.leanback.app.BrowseFragment} element from the layout. Use the methods in this
-  class to set display parameters such as the icon, title, and whether category headers are enabled.
-  The following code sample demonstrates how to set the layout parameters for a {@link
-  android.support.v17.leanback.app.BrowseFragment} in a layout:
+<p>Use a {@link android.support.v17.leanback.widget.Presenter} and implement the
+abstract methods to create, bind, and unbind the view holder. The following
+example shows how to bind the viewholder with two views, an
+{@link android.widget.ImageView} and a {@link android.widget.TextView}.
 </p>
 
 <pre>
-public class BrowseMediaActivity extends Activity {
+public class IconHeaderItemPresenter extends Presenter {
+    &#64;Override
+    public ViewHolder onCreateViewHolder(ViewGroup viewGroup) {
+        LayoutInflater inflater = (LayoutInflater) viewGroup.getContext()
+                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
 
-    public static final String TAG ="BrowseActivity";
+        View view = inflater.inflate(R.layout.icon_header_item, null);
 
-    protected BrowseFragment mBrowseFragment;
+        return new ViewHolder(view);
+    }
 
     &#64;Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setContentView(R.layout.browse_fragment);
+    public void onBindViewHolder(ViewHolder viewHolder, Object o) {
+        HeaderItem headerItem = ((ListRow) o).getHeaderItem();
+        View rootView = viewHolder.view;
 
-        final FragmentManager fragmentManager = getFragmentManager();
-        <strong>mBrowseFragment = (BrowseFragment) fragmentManager.findFragmentById(
-                R.id.browse_fragment);</strong>
+        ImageView iconView = (ImageView) rootView.findViewById(R.id.header_icon);
+        Drawable icon = rootView.getResources().getDrawable(R.drawable.ic_action_video, null);
+        iconView.setImageDrawable(icon);
 
-        // Set display parameters for the BrowseFragment
-        mBrowseFragment.setHeadersState(BrowseFragment.HEADERS_ENABLED);
-        mBrowseFragment.setTitle(getString(R.string.app_name));
-        mBrowseFragment.setBadgeDrawable(getResources().getDrawable(
-                R.drawable.ic_launcher));
-        mBrowseFragment.setBrowseParams(params);
+        TextView label = (TextView) rootView.findViewById(R.id.header_label);
+        label.setText(headerItem.getName());
+    }
 
+    &#64;Override
+    public void onUnbindViewHolder(ViewHolder viewHolder) {
+    // no op
     }
 }
 </pre>
 
+<p>This example shows how to define the presenter for a complex layout with
+multiple views, and you could use this pattern to do something even more complex.
+However, an easier way to combine a {@link android.widget.TextView} with a
+drawable resource is to use the <a href="{@docRoot}reference/android/widget/TextView.html#attr_android:drawableLeft">
+{@code TextView.drawableLeft}</a> attribute. Doing it this way, you don't need the
+{@link android.widget.ImageView} shown here.</p>
 
-<h2 id="lists">Displaying Media Lists</h2>
+<p>In the {@link android.support.v17.leanback.app.BrowseFragment} implementation that displays the
+catalog browser, use the {@link android.support.v17.leanback.app.BrowseFragment#setHeaderPresenterSelector(android.support.v17.leanback.widget.PresenterSelector) setHeaderPresenterSelector()}
+method to set the presenter for the row header, as shown in the following example.</p>
+
+<pre>
+setHeaderPresenterSelector(new PresenterSelector() {
+    &#64;Override
+    public Presenter getPresenter(Object o) {
+        return new IconHeaderItemPresenter();
+    }
+});
+</pre>
+
+<h3 id="hide-heads">Hide or Disable Headers</h3>
+
+<p>Sometimes you may not want the row headers to appear: when there aren't enough categories to
+require a scrollable list, for example. Call the {@link android.support.v17.leanback.app.BrowseFragment#setHeadersState(int) BrowseFragment.setHeadersState()}
+method during the fragment's {@link android.app.Fragment#onActivityCreated(android.os.Bundle) onActivityCreated()}
+method to hide or disable the row headers. The {@link android.support.v17.leanback.app.BrowseFragment#setHeadersState(int) setHeadersState()}
+method sets the initial state of the headers in the browse fragment given one of the following
+constants as a parameter:</p>
+
+<ul>
+  <li>{@link android.support.v17.leanback.app.BrowseFragment#HEADERS_ENABLED} - When the browse
+  fragment activity is created, the headers are enabled and shown by default. The headers appear as
+  shown in figures 1 and 2 on this page.</li>
+  <li>{@link android.support.v17.leanback.app.BrowseFragment#HEADERS_HIDDEN} - When the browse
+  fragment activity is created, headers are enabled and hidden by default. The header section of the
+  screen is collapsed, as shown in <a href="{@docRoot}training/tv/playback/card.html#collapsed">
+  figure 1</a> of <a href="{@docRoot}training/tv/playback/card.html">Providing a Card View</a>. The
+  user can select the collapsed header section to expand it.</li>
+  <li>{@link android.support.v17.leanback.app.BrowseFragment#HEADERS_DISABLED} - When the browse
+  fragment activity is created, headers are disabled by default and are never displayed.</li>
+</ul>
+
+<p>If either {@link android.support.v17.leanback.app.BrowseFragment#HEADERS_ENABLED} or
+{@link android.support.v17.leanback.app.BrowseFragment#HEADERS_HIDDEN} is set, you can call
+{@link android.support.v17.leanback.app.BrowseFragment#setHeadersTransitionOnBackEnabled(boolean) setHeadersTransitionOnBackEnabled()}
+to support moving back to the row header from a selected content item in the row. This is enabled by
+default (if you don't call the method), but if you want to handle the back movement yourself, you
+should pass the value <code>false</code> to {@link android.support.v17.leanback.app.BrowseFragment#setHeadersTransitionOnBackEnabled(boolean) setHeadersTransitionOnBackEnabled()}
+and implement your own back stack handling.</p>
+
+<h2 id="lists">Display Media Lists</h2>
 
 <p>
-  The {@link android.support.v17.leanback.app.BrowseFragment} allows you to define and display
-  browsable media content categories and media items from a media catalog using adapters and
-  presenters. Adapters enable you to connect to local or online data sources that contain your
-  media catalog information. Presenters hold data about media items and provide layout information
-  for displaying an item on screen.
+  The {@link android.support.v17.leanback.app.BrowseFragment} class allows you
+  to define and display browsable media content categories and media items from
+  a media catalog using adapters and presenters. Adapters enable you to connect
+  to local or online data sources that contain your media catalog information.
+  Adapters use presenters to create views and bind data to those views for
+  displaying an item on screen.
 </p>
 
 <p>
@@ -131,11 +342,12 @@
 </pre>
 
 <p>
-  Once you have constructed a presenter class for your media items, you can build and attach an
-  adapter to the {@link android.support.v17.leanback.app.BrowseFragment} to display those items on
-  screen for browsing by the user. The following example code demonstrates how to construct an
-  adapter to display categories and items in those categories using the {@code StringPresenter}
-  class shown in the previous code example:
+  Once you have constructed a presenter class for your media items, you can build
+  an adapter and attach it to the {@link android.support.v17.leanback.app.BrowseFragment}
+  to display those items on screen for browsing by the user. The following example
+  code demonstrates how to construct an adapter to display categories and items
+  in those categories using the {@code StringPresenter} class shown in the
+  previous code example:
 </p>
 
 <pre>
@@ -158,7 +370,7 @@
         listRowAdapter.add("Media Item 1");
         listRowAdapter.add("Media Item 2");
         listRowAdapter.add("Media Item 3");
-        HeaderItem header = new HeaderItem(i, "Category " + i, null);
+        HeaderItem header = new HeaderItem(i, "Category " + i);
         mRowsAdapter.add(new ListRow(header, listRowAdapter));
     }
 
@@ -170,15 +382,15 @@
   This example shows a static implementation of the adapters. A typical media browsing application
   uses data from an online database or web service. For an example of a browsing application that
   uses data retrieved from the web, see the
-  <a href="http://github.com/googlesamples/androidtv-leanback">Android TV</a> sample app.
+  <a href="http://github.com/googlesamples/androidtv-leanback">Android Leanback sample app</a>.
 </p>
 
 <h2 id="background">Update the Background</h2>
 
 <p>
   In order to add visual interest to a media-browsing app on TV, you can update the background
-  image as users browse through content. This technique can make interaction with your app feel
-  more cinematic and enjoyable for users.
+  image as users browse through content. This technique can make interaction with your app more
+  cinematic and enjoyable.
 </p>
 
 <p>
@@ -211,8 +423,8 @@
         &#64;Override
         public void onItemSelected(Object item, Row row) {
             if (item instanceof Movie ) {
-                URI uri = ((Movie)item).getBackdropURI();
-                updateBackground(uri);
+                Drawable background = ((Movie)item).getBackdropDrawable();
+                updateBackground(background);
             } else {
                 clearBackground();
             }
diff --git a/docs/html/training/tv/playback/card.jd b/docs/html/training/tv/playback/card.jd
index 8ac75fd..a3a9872 100644
--- a/docs/html/training/tv/playback/card.jd
+++ b/docs/html/training/tv/playback/card.jd
@@ -32,9 +32,10 @@
 Android Leanback sample app</a>, available on GitHub. Use this sample code to start your own
 app.</p>
 
-<img itemprop="image" src="{@docRoot}images/tv/app-browse.png" alt="App main screen"/>
+<img itemprop="image" src="{@docRoot}images/tv/card-view.png" alt="App card view" id="collapsed"/>
 <p class="img-caption"><b>Figure 1.</b> The <a href="https://github.com/googlesamples/androidtv-Leanback">
-Leanback sample app</a> browse fragment with a card presenter displaying card view objects.</p>
+Leanback sample app</a> image card view when selected.</p>
+
 
 <h2 id="presenter">Create a Card Presenter</h2>
 
@@ -147,10 +148,7 @@
 </pre>
 
 <p>When the user selects the {@link android.support.v17.leanback.widget.ImageCardView}, it expands
-to reveal its text area with the background color you specify, as shown in figure 2.</p>
+to reveal its text area with the background color you specify, as shown in figure 1.</p>
 
-<img itemprop="image" src="{@docRoot}images/tv/card-view.png" alt="App card view"/>
-<p class="img-caption"><b>Figure 2.</b> The <a href="https://github.com/googlesamples/androidtv-Leanback">
-Leanback sample app</a> image card view when selected.</p>
 
 
diff --git a/docs/html/training/tv/playback/details.jd b/docs/html/training/tv/playback/details.jd
index bd6d67a..dbe2c84 100644
--- a/docs/html/training/tv/playback/details.jd
+++ b/docs/html/training/tv/playback/details.jd
@@ -111,8 +111,9 @@
     private void buildDetails() {
         ClassPresenterSelector selector = new ClassPresenterSelector();
         // Attach your media item details presenter to the row presenter:
-        DetailsOverviewRowPresenter rowPresenter =
-            new DetailsOverviewRowPresenter(new DetailsDescriptionPresenter());
+        FullWidthDetailsOverviewRowPresenter rowPresenter =
+            new FullWidthDetailsOverviewRowPresenter(
+                new DetailsDescriptionPresenter());
 
         selector.addClassPresenter(DetailsOverviewRow.class, rowPresenter);
         selector.addClassPresenter(ListRow.class,
diff --git a/docs/html/training/tv/playback/guided-step.jd b/docs/html/training/tv/playback/guided-step.jd
new file mode 100644
index 0000000..121961f
--- /dev/null
+++ b/docs/html/training/tv/playback/guided-step.jd
@@ -0,0 +1,259 @@
+page.title=Adding a Guided Step
+page.tags=tv, guided step
+helpoutsWidget=true
+
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>This lesson teaches you to</h2>
+  <ol>
+    <li><a href="#details">Provide Details for a Step</a></li>
+    <li><a href="#actions">Create and Handle User Actions</a></li>
+    <li><a href="#sequence">Group Guided Steps Into a Sequence</a></li>
+    <li><a href="#presentation">Customize Step Presentation</a></li>
+  </ol>
+  <h2>Try it out</h2>
+  <ul>
+    <li><a class="external-link" href="https://github.com/googlesamples/androidtv-Leanback">Android
+    Leanback sample app</a></li>
+  </ul>
+</div>
+</div>
+
+<p>
+Your application might have multi-step tasks for users. For example, your app might need to guide
+users through purchasing additional content, or setting up a complex configuration setting, or
+simply confirming a decision. All of these tasks require walking users through one or more ordered
+steps or decisions.
+</p>
+
+<p>
+The <a href=
+"{@docRoot}tools/support-library/features.html#v17-leanback">v17 Leanback support library</a>
+provides classes to implement multi-step user tasks. This lesson discusses how to use the
+{@link android.support.v17.leanback.app.GuidedStepFragment} class to guide a user through a series
+of decisions to accomplish a task. {@link android.support.v17.leanback.app.GuidedStepFragment} uses
+TV UI best practices to make multi-step tasks easy to understand and navigate on TV devices.
+</p>
+
+<h2 id="details">Provide Details for a Step</h2>
+
+<p>
+A {@link android.support.v17.leanback.app.GuidedStepFragment} represents a single step in a series
+of steps. Visually it provides a guidance view on the left with step information. On the right,
+{@link android.support.v17.leanback.app.GuidedStepFragment} provides a view containing a
+list of possible actions or decisions for this step.
+</p>
+
+<img src="{@docRoot}images/training/tv/playback/guided-step-screen.png"
+srcset="{@docRoot}images/training/tv/playback/guided-step-screen.png 1x,
+{@docRoot}images/training/tv/playback/guided-step-screen-2x.png 2x" />
+<p class="img-caption"><strong>Figure 1.</strong> An example guided step.</p>
+
+<p>
+For each step in your multi-step task, extend
+{@link android.support.v17.leanback.app.GuidedStepFragment} and provide context information about
+the step and actions the user can take. Override
+{@link android.support.v17.leanback.app.GuidedStepFragment#onCreateGuidance onCreateGuidance()}
+and return a new
+{@link android.support.v17.leanback.widget.GuidanceStylist.Guidance} that contains context
+information, such as the step title, description, and icon.
+</p>
+
+<pre>
+&#64;Override
+public GuidanceStylist.Guidance onCreateGuidance(Bundle savedInstanceState) {
+    String title = getString(R.string.guidedstep_first_title);
+    String breadcrumb = getString(R.string.guidedstep_first_breadcrumb);
+    String description = getString(R.string.guidedstep_first_description);
+    Drawable icon = getActivity().getDrawable(R.drawable.guidedstep_main_icon_1);
+    return new GuidanceStylist.Guidance(title, description, breadcrumb, icon);
+}
+</pre>
+
+<p>
+Add your {@link android.support.v17.leanback.app.GuidedStepFragment} subclass to your desired
+activity by calling
+{@link android.support.v17.leanback.app.GuidedStepFragment#add GuidedStepFragment.add()}
+in your activity’s {@link android.app.Activity#onCreate onCreate()} method.
+
+If your activity contains only {@link android.support.v17.leanback.app.GuidedStepFragment}
+objects, use {@link android.support.v17.leanback.app.GuidedStepFragment#addAsRoot
+GuidedStepFragment.addAsRoot()} instead of
+{@link android.support.v17.leanback.app.GuidedStepFragment#add add()} to add the first
+{@link android.support.v17.leanback.app.GuidedStepFragment}. Using
+{@link android.support.v17.leanback.app.GuidedStepFragment#addAsRoot
+addAsRoot()} ensures that if the user presses the Back button on the TV remote when viewing
+the first {@link android.support.v17.leanback.app.GuidedStepFragment}, both the
+{@link android.support.v17.leanback.app.GuidedStepFragment} and the parent activity will close.
+</p>
+
+<p class="note"<strong>Note:</strong> Add
+{@link android.support.v17.leanback.app.GuidedStepFragment} objects programmatically
+and not in your layout XML files.</p>
+
+<h2 id="actions">Create and Handle User Actions</h2>
+
+<p>
+Add user actions by overriding
+{@link android.support.v17.leanback.app.GuidedStepFragment#onCreateActions onCreateActions()}.
+In your override, add a new {@link android.support.v17.leanback.widget.GuidedAction} for each
+action item, and provide the action string, description, and ID. Use
+{@link android.support.v17.leanback.widget.GuidedAction.Builder} to add new actions.
+</p>
+
+<pre>
+&#64;Override
+public void onCreateActions(List<GuidedAction> actions, Bundle savedInstanceState) {
+    // Add "Continue" user action for this step
+    actions.add(new GuidedAction.Builder()
+           .id(CONTINUE)
+           .title(getString(R.string.guidedstep_continue))
+           .description(getString(R.string.guidedstep_letsdoit))
+           .hasNext(true)
+           .build());
+...
+</pre>
+
+<p>
+Actions aren’t limited to single-line selections. Use
+{@link android.support.v17.leanback.widget.GuidedAction} attributes
+to add the following additional types of actions:
+</p>
+
+<ul>
+<li>
+Add a information label action by setting
+{@link android.support.v17.leanback.widget.GuidedAction.Builder#infoOnly infoOnly(true)}.
+If <code>infoOnly</code> is set to true, the action can't be selected by the user. Use label
+actions to provide additional information about user choices.
+</li>
+<li>
+Add an editable text action by setting
+{@link android.support.v17.leanback.widget.GuidedAction.Builder#editable editable(true)}. If
+<code>editable</code> is true, when the action is selected the user can enter text using the
+remote or a connected keyboard.
+</li>
+<li>
+Add a set of actions that behave as checkable radio buttons by using
+{@link android.support.v17.leanback.widget.GuidedAction.Builder#checkSetId checkSetId()}
+with a common ID value to group actions into a set. All actions in the same list with the same
+check-set ID are considered linked. When one of the actions within that set is selected, that
+action becomes checked, while all other actions become unchecked.
+</li>
+</ul>
+
+<p>
+You can also add a visual indicator that indicates selecting the action leads to a new step by
+setting
+{@link android.support.v17.leanback.widget.GuidedAction#hasNext hasNext(true)}.
+See {@link android.support.v17.leanback.widget.GuidedAction} for all the different attributes
+you can set.
+</p>
+
+<p>
+To respond to actions, override
+{@link android.support.v17.leanback.app.GuidedStepFragment#onGuidedActionClicked
+onGuidedActionClicked()} and process the passed-in
+{@link android.support.v17.leanback.widget.GuidedAction}. Identify the selected action by
+examining {@link android.support.v17.leanback.widget.GuidedAction#getId GuidedAction.getId()}.
+</p>
+
+<h2 id="sequence">Group Guided Steps Into a Guided Sequence</h2>
+
+<p>
+A {@link android.support.v17.leanback.app.GuidedStepFragment} represents a single step, however
+you might have several steps in an ordered sequence. Group multiple
+{@link android.support.v17.leanback.app.GuidedStepFragment} objects together by using
+{@link android.support.v17.leanback.app.GuidedStepFragment#add GuidedStepFragment.add()} to add
+the next step in the sequence to the fragment stack.
+</p>
+
+<pre>
+&#64;Override
+public void onGuidedActionClicked(GuidedAction action) {
+    FragmentManager fm = getFragmentManager();
+    if (action.getId() == CONTINUE) {
+       GuidedStepFragment.add(fm, new SecondStepFragment());
+    }
+...
+</pre>
+
+<p>
+If the user presses the Back button on the TV remote, the device shows the previous
+{@link android.support.v17.leanback.app.GuidedStepFragment} on the fragment stack. If you
+decide to provide your own {@link android.support.v17.leanback.widget.GuidedAction} that
+returns to the previous step, you can implement the Back behavior by calling
+{@link android.app.FragmentManager#popBackStack getFragmentManager().popBackStack()}.
+</p>
+
+<h2 id="presentation">Customize Step Presentation</h2>
+
+<p>
+The {@link android.support.v17.leanback.app.GuidedStepFragment} class can use custom
+themes that control presentation aspects such as title text formatting or step transition
+animations. Custom themes must inherit from
+{@link android.support.v17.leanback.R.style#Theme_Leanback_GuidedStep}, and can provide
+overriding values for attributes defined in
+{@link android.support.v17.leanback.widget.GuidanceStylist} and
+{@link android.support.v17.leanback.widget.GuidedActionsStylist}.
+</p>
+
+<p>
+To apply a custom theme to your GuidedStepFragment, do one of the following:
+</p>
+
+<ul>
+<li>
+Apply the theme to the parent activity by setting the <code>android:theme</code> attribute to the
+activity element in the Android manifest. Setting this attribute applies the theme to all child
+views and is the easiest way to apply a custom theme if the parent activity contains only
+{@link android.support.v17.leanback.app.GuidedStepFragment} objects.
+</li>
+<li>
+If your activity already uses a custom theme and you don’t want to apply
+{@link android.support.v17.leanback.app.GuidedStepFragment} styles to other views in the activity,
+add the
+{@link android.support.v17.leanback.R.styleable#LeanbackGuidedStepTheme_guidedStepTheme}
+attribute to your existing custom activity theme. This attribute points to the custom theme that
+only the {@link android.support.v17.leanback.app.GuidedStepFragment} objects in your
+activity will use.
+</li>
+<li>
+If you use {@link android.support.v17.leanback.app.GuidedStepFragment} objects in different
+activities that are part of the same overall multi-step task, and want to use a consistent
+visual theme across all steps, override
+{@link android.support.v17.leanback.app.GuidedStepFragment#onProvideTheme
+GuidedStepFragment.onProvideTheme()} and return your custom theme.
+</li>
+</ul>
+
+<p>
+For more information on how to add styles and themes, see
+<a href="{@docRoot}guide/topics/ui/themes.html">Styles and Themes</a>.
+</p>
+
+<p>
+The {@link android.support.v17.leanback.app.GuidedStepFragment} class uses special
+<em>stylist classes</em> to access and apply theme attributes.
+The {@link android.support.v17.leanback.widget.GuidanceStylist} class uses theme information
+to control presentation of the left guidance view, while the
+{@link android.support.v17.leanback.widget.GuidedActionsStylist} class uses theme information
+to control presentation of the right actions view.
+</p>
+
+<p>
+To customize the visual style of your steps beyond what theme customization can provide, subclass
+{@link android.support.v17.leanback.widget.GuidanceStylist} or
+{@link android.support.v17.leanback.widget.GuidedActionsStylist} and return your subclass in
+{@link android.support.v17.leanback.app.GuidedStepFragment#onCreateGuidanceStylist
+GuidedStepFragment.onCreateGuidanceStylist()} or
+{@link android.support.v17.leanback.app.GuidedStepFragment#onCreateActionsStylist
+GuidedStepFragment.onCreateActionsStylist()}.
+For details on what you can customize in these subclasses, see the documentation on
+{@link android.support.v17.leanback.widget.GuidanceStylist} and
+{@link android.support.v17.leanback.widget.GuidedActionsStylist}.
+</p>
\ No newline at end of file
diff --git a/docs/html/training/tv/playback/index.jd b/docs/html/training/tv/playback/index.jd
index e39e34a..d5e4e67 100644
--- a/docs/html/training/tv/playback/index.jd
+++ b/docs/html/training/tv/playback/index.jd
@@ -64,4 +64,11 @@
 
   <dt><b><a href="now-playing.html">Displaying a Now Playing Card</a></b></dt>
     <dd>Learn how to use a MediaSession to display a Now Playing card on the home screen.</dd>
+
+  <dt><b><a href="guided-step.html">Adding a Guided Step</a></b></dt>
+    <dd>Learn how to use the Leanback support library to guide a user through a series of
+    decisions.</dd>
+
+  <dt><b><a href="options.html">Enabling Background Playback</a></b></dt>
+    <dd>Learn how to continue playback when the user clicks on <strong>Home</strong>.</dd>
 </dl>
diff --git a/docs/html/training/tv/playback/now-playing.jd b/docs/html/training/tv/playback/now-playing.jd
index e158697..2bb628a 100644
--- a/docs/html/training/tv/playback/now-playing.jd
+++ b/docs/html/training/tv/playback/now-playing.jd
@@ -19,52 +19,45 @@
 </div>
 </div>
 
-<p>TV apps may allow users to play music or other media in the background while using other
-applications. If your app allows this type of use, it must must
-provide a means for the user to return to the app to pause the music or switch to a new song. The
-Android framework enables TV apps to do this by displaying a <em>Now Playing</em> card on the home
-screen in the recommendations row.</p>
+<p>TV apps must display a <em>Now Playing</em> card when playing media behind the launcher or in the
+background. This card allows users to return to the app that is currently playing media.</p>
 
-<p>The Now Playing card is a system artifact that displays on the
-home screen in the recommendations row for an active media session. It includes the media metadata
-such as the album art, title, and app icon. When the user selects it, the system opens the the app
-that owns the session.</p>
+<p>The Android framework displays a <em>Now Playing</em> card on the home
+screen when there is an active {@link android.media.session.MediaSession}.
+The card includes media metadata such as album art, title, and app icon.
+When the user selects the card, the system opens the app.</p>
 
 <p>This lesson shows how to use the {@link android.media.session.MediaSession} class to implement
-the Now Playing card.</p>
+the <em>Now Playing</em> card.</p>
+
+<img src="{@docRoot}images/training/tv/playback/now-playing-screen.png" />
+<p class="img-caption"><strong>Figure 1.</strong> Display a <em>Now Playing</em> card when playing
+media in the background.</p>
 
 <h2 id="session">Start a Media Session</h2>
 
-<p>A playback app can run as an <a href="{@docRoot}guide/components/activities">activity</a> or
-as a <a href="{@docRoot}guide/components/services">service</a>. The service is required for
-background playback because it can continue to play media even after the activity that launched it
-has been destroyed. For this discussion, the media playback app is assumed to be running in a
-{@link android.service.media.MediaBrowserService}.</p>
-
-<p>In your service's {@link android.service.media.MediaBrowserService#onCreate() onCreate()}
-method, create a new {@link android.media.session.MediaSession#MediaSession(android.content.Context, java.lang.String) MediaSession},
-set the callback and flags appropriate to a media app, and set the session token for the
-{@link android.service.media.MediaBrowserService}.</p>
+<p>Create a
+{@link android.media.session.MediaSession#MediaSession(android.content.Context, java.lang.String) MediaSession}
+when your app is preparing to play media. The following code snippet
+is an example of how to set the appropriate callback and flags:</p>
 
 <pre>
 mSession = new MediaSession(this, "MusicService");
 mSession.setCallback(new MediaSessionCallback());
 mSession.setFlags(MediaSession.FLAG_HANDLES_MEDIA_BUTTONS |
         MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS);
-
-// for the MediaBrowserService
-setSessionToken(mSession.getSessionToken());
 </pre>
 
-<p class="note"<strong>Note:</strong> The Now Playing card will display only for a media session with
+<p class="note"<strong>Note:</strong> The <em>Now Playing</em> card will display
+only for a media session with
 the {@link android.media.session.MediaSession#FLAG_HANDLES_TRANSPORT_CONTROLS} flag set.</p>
 
 <h2 id="card">Display a Now Playing Card</h2>
 
-<p>The Now Playing card shows up after {@link android.media.session.MediaSession#setActive(boolean) setActive(true)}
-is called, if the session is the highest priority session in the system. Also, note that your app
-must request the audio focus, as described in <a href="{@docRoot}training/managing-audio/audio-focus">
-Managing Audio Focus</a>.</p>
+<p>The <em>Now Playing</em> card only appears for active sessions. You must call
+{@link android.media.session.MediaSession#setActive(boolean) setActive(true)}
+when playback begins. Your app must also request audio focus, as described in
+<a href="{@docRoot}training/managing-audio/audio-focus.html">Managing Audio Focus</a>.</p>
 
 <pre>
 private void handlePlayRequest() {
@@ -77,15 +70,19 @@
 ...
 </pre>
 
-<p>The card is removed from the home screen when {@link android.media.session.MediaSession#setActive(boolean) setActive(false)}
-is called or if another app initiates media playback. You may want to remove the card from the home
-screen some time after playback is paused, depending on how long you want to keep the card up,
-usually 5 to 30 minutes.</p>
+<p>The card is removed from the launcher screen when a
+{@link android.media.session.MediaSession#setActive(boolean) setActive(false)}
+call deactivates the media session,
+or when another app initiates media playback.
+If playback is completely stopped and there is no active media,
+your app should deactivate the media session immediately.
+If playback is paused, your app should deactivate the media session
+after a delay, usually between 5 to 30 minutes.</p>
 
 <h2 id="state">Update the Playback State</h2>
 
-<p>As with any media app, update the playback state in the {@link android.media.session.MediaSession}
-so that the card can display the current metadata, as shown in the following example:</p>
+<p>Update the playback state in the {@link android.media.session.MediaSession}
+so the card can show the state of the current media.</p>
 
 <pre>
 private void updatePlaybackState() {
@@ -98,8 +95,9 @@
     stateBuilder.setState(mState, position, 1.0f);
     mSession.setPlaybackState(stateBuilder.build());
 }
+
 private long getAvailableActions() {
-    long actions = PlaybackState.ACTION_PLAY |
+    long actions = PlaybackState.ACTION_PLAY_PAUSE |
             PlaybackState.ACTION_PLAY_FROM_MEDIA_ID |
             PlaybackState.ACTION_PLAY_FROM_SEARCH;
     if (mPlayingQueue == null || mPlayingQueue.isEmpty()) {
@@ -107,6 +105,8 @@
     }
     if (mState == PlaybackState.STATE_PLAYING) {
         actions |= PlaybackState.ACTION_PAUSE;
+    } else {
+        actions |= PlaybackState.ACTION_PLAY;
     }
     if (mCurrentIndexOnQueue &gt; 0) {
         actions |= PlaybackState.ACTION_SKIP_TO_PREVIOUS;
@@ -120,10 +120,11 @@
 
 <h2 id="metadata">Display the Media Metadata</h2>
 
-<p>For the track currently playing, set the {@link android.media.MediaMetadata} with the
+<p>Set the {@link android.media.MediaMetadata} with the
 {@link android.media.session.MediaSession#setMetadata(android.media.MediaMetadata) setMetadata()}
-method. This method of the media session object lets you provide information to the Now Playing card
-about the track such as the title, subtitle, and various icons. The following example assumes your
+method. This method of the media session object lets you provide information to
+the <em>Now Playing</em> card about the track such as the title, subtitle,
+and various icons. The following example assumes your
 track's data is stored in a custom data class, {@code MediaData}.</p>
 
 <pre>
@@ -143,7 +144,7 @@
     metadataBuilder.putString(MediaMetadata.METADATA_KEY_ARTIST,
             myData.artist);
     // A small bitmap for the artwork is also recommended
-    metadataBuilder.putString(MediaMetadata.METADATA_KEY_ART,
+    metadataBuilder.putBitmap(MediaMetadata.METADATA_KEY_ART,
             myData.artBitmap);
     // Add any other fields you have for your data as well
     mSession.setMetadata(metadataBuilder.build());
@@ -152,8 +153,9 @@
 
 <h2 id="respond">Respond to User Action</h2>
 
-<p>When the user selects the Now Playing card, the system opens the app that owns the session.
-If your app provides a {@link android.app.PendingIntent} to pass to
+<p>When the user selects the <em>Now Playing</em> card, the system
+opens the app that owns the session.
+If your app provides a {@link android.app.PendingIntent} to
 {@link android.media.session.MediaSession#setSessionActivity(android.app.PendingIntent) setSessionActivity()},
 the system launches the activity you specify, as demonstrated below. If not, the default system
 intent opens. The activity you specify must provide playback controls that allow users to pause or
diff --git a/docs/html/training/tv/playback/options.jd b/docs/html/training/tv/playback/options.jd
new file mode 100644
index 0000000..c65343d
--- /dev/null
+++ b/docs/html/training/tv/playback/options.jd
@@ -0,0 +1,66 @@
+page.title=Enabling Background Playback
+page.tags=tv, play, playback, background
+helpoutsWidget=true
+
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+  <h2>This lesson teaches you to</h2>
+  <ol>
+    <li><a href="#background">Request Background Playback</a></li>
+  </ol>
+</div>
+</div>
+
+<p>
+A user watching content on a TV device may decide to switch to the TV launcher at any time.
+If a user switches to the launcher while using a TV playback app, by default the app is paused.
+Since the user did not explicitly request to pause playback, the default behavior might seem
+abrupt and unexpected. This lesson describes how to enable background playback in your app,
+which provides a better user experience.
+</p>
+
+<h2 id="background">Request Background Playback</h2>
+
+<p>Normally, when the user clicks on <strong>Home</strong> to display the TV
+launcher, the activity pauses. However, your app can request background playback, in
+which the activity continues playing behind the TV launcher.</p>
+
+<p>To request background playback, call
+{@link android.app.Activity#requestVisibleBehind requestVisibleBehind()}.
+Be sure to clean up media resources if the activity stops being
+visible. For example, you should free media resources if
+{@link android.app.Activity#requestVisibleBehind requestVisibleBehind()}
+returns <code>false</code> to indicate that the request failed, or if the system calls
+your override of {@link android.app.Activity#onVisibleBehindCanceled onVisibleBehindCanceled()}.
+</p>
+
+<pre>
+&commat;Override
+public void onPause() &lbrace;
+  super.onPause();
+  if (mVideoView.isPlaying()) &lbrace;
+    // Argument equals true to notify the system that the activity
+    // wishes to be visible behind other translucent activities
+    if (! requestVisibleBehind(true)) &lbrace;
+      // App-specific method to stop playback and release resources
+      // because call to requestVisibleBehind(true) failed
+      stopPlayback();
+    &rbrace;
+  &rbrace; else &lbrace;
+    // Argument equals false because the activity is not playing
+    requestVisibleBehind(false);
+  &rbrace;
+&rbrace;
+
+&commat;Override
+public void onVisibleBehindCanceled() &lbrace;
+  // App-specific method to stop playback and release resources
+  stopPlayback();
+  super.onVisibleBehindCanceled();
+&rbrace;
+</pre>
+
diff --git a/docs/html/training/tv/publishing/checklist.jd b/docs/html/training/tv/publishing/checklist.jd
index 6259721..c044f0e 100644
--- a/docs/html/training/tv/publishing/checklist.jd
+++ b/docs/html/training/tv/publishing/checklist.jd
@@ -137,6 +137,11 @@
   <p>See <a href="{@docRoot}training/tv/start/layouts.html#advertising">Provide Effective Advertising</a>.</p>
 </li>
 
+<li>
+  Use the Leanback library for guiding the user through a series of decisions.
+  <p>See <a href="{@docRoot}training/tv/playback/guided-step.html">Adding a Guided Step</a>.</p>
+</li>
+
 </ol>
 
 
diff --git a/docs/html/training/tv/start/hardware.jd b/docs/html/training/tv/start/hardware.jd
index 5747b56..9a66c09 100644
--- a/docs/html/training/tv/start/hardware.jd
+++ b/docs/html/training/tv/start/hardware.jd
@@ -100,10 +100,6 @@
     <td>{@code android.hardware.camera}</td>
   </tr>
   <tr>
-    <td>Bluetooth</td>
-    <td>{@code android.hardware.bluetooth}</td>
-  </tr>
-  <tr>
     <td>Near Field Communications (NFC)</td>
     <td>{@code android.hardware.nfc}</td>
   </tr>
@@ -159,8 +155,6 @@
         android:required="false"/&gt;
 &lt;uses-feature android:name="android.hardware.camera"
         android:required="false"/&gt;
-&lt;uses-feature android:name="android.hardware.bluetooth"
-        android:required="false"/&gt;
 &lt;uses-feature android:name="android.hardware.nfc"
         android:required="false"/&gt;
 &lt;uses-feature android:name="android.hardware.location.gps"
@@ -172,7 +166,7 @@
 </pre>
 
 <p class="note"><strong>Note:</strong> Some features have subfeatures like {@code android.hardware.camera.front},
-  as described in the <a href="guide/topics/manifest/uses-feature-element.html#features-reference">
+  as described in the <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#features-reference">
   Feature Reference</a>. Be sure to mark as {@code required="false"} any subfeatures also used in
   your app.</p>
 
diff --git a/docs/html/training/tv/start/layouts.jd b/docs/html/training/tv/start/layouts.jd
index 2b190b4..4ca77d0 100644
--- a/docs/html/training/tv/start/layouts.jd
+++ b/docs/html/training/tv/start/layouts.jd
@@ -117,25 +117,43 @@
   This behavior is generally referred to as <em>overscan</em>.
 </p>
 
-<p>
-  Avoid screen elements being clipped due to overscan and by incorporating a 10% margin
-  on all sides of your layout. This translates into a 48dp margin on the left and right edges and
-  a 27dp margin on the top and bottom of your base layouts for activities. The following
-  example layout demonstrates how to set these margins in the root layout for a TV app:
+<p>Screen elements that must be visible to the user at all times should be positioned within the
+overscan safe area. Adding a 5% margin of 48dp on the left and right edges and 27dp on the top and
+bottom edges to a layout ensures that screen elements in that layout will be within the overscan
+safe area.
+</p>
+
+<p>Background screen elements that the user doesn't directly interact with should not be adjusted or
+clipped to the overscan safe area. This approach ensures that background screen elements look
+correct on all screens.
+</p>
+
+<p>The following example shows a root layout that can contain background elements, and a nested
+child layout that has a 5% margin and can contain elements within the overscan safe area:
 </p>
 
 <pre>
 &lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-  android:id="@+id/base_layout"
-  android:layout_width="match_parent"
-  android:layout_height="match_parent"
-  android:orientation="vertical"
-  android:layout_marginTop="27dp"
-  android:layout_marginLeft="48dp"
-  android:layout_marginRight="48dp"
-  android:layout_marginBottom="27dp" &gt;
-&lt;/LinearLayout&gt;
+&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+   android:layout_width="match_parent"
+   android:layout_height="match_parent"
+   &gt;
+
+   &lt;!-- Screen elements that can render outside the overscan safe area go here --&gt;
+
+   &lt;!-- Nested RelativeLayout with overscan-safe margin --&gt;
+   &lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+       android:layout_width="match_parent"
+       android:layout_height="match_parent"
+       android:layout_marginTop="27dp"
+       android:layout_marginBottom="27dp"
+       android:layout_marginLeft="48dp"
+       android:layout_marginRight="48dp"&gt;
+
+      &lt;!-- Screen elements that need to be within the overscan safe area go here --&gt;
+
+   &lt;/RelativeLayout&gt;
+&lt;/RelativeLayout&gt;
 </pre>
 
 <p class="caution">
diff --git a/docs/html/training/tv/start/start.jd b/docs/html/training/tv/start/start.jd
old mode 100644
new mode 100755
index 4d04ad6..0c04bfa
--- a/docs/html/training/tv/start/start.jd
+++ b/docs/html/training/tv/start/start.jd
@@ -228,6 +228,27 @@
   design guide.
 </p>
 
+<h3 id="transition-color">Change the launcher color</h3>
+
+<p>When a TV app launches, the system displays an animation that resembles an expanding, filled
+  circle. To customize the color of this animation, set the <code>android:colorPrimary</code>
+  attribute of your TV app or activity to a specific color. You should also set two additional
+  transition overlap attributes to <code>true</code>, as shown in the following snippet from a
+  theme resource XML file:</p>
+
+<pre>
+&lt;resources&gt;
+    &lt;style ... &gt;
+      &lt;item name="android:colorPrimary"&gt;&#64;color/primary&lt;/item&gt;
+      &lt;item name="android:windowAllowReturnTransitionOverlap"&gt;true&lt;/item&gt;
+      &lt;item name="android:windowAllowEnterTransitionOverlap"&gt;true&lt;/item&gt;
+    &lt;/style&gt;
+&lt;/resources&gt;
+</pre>
+
+<p>For more information about working with themes and styles, see
+<a href="{@docRoot}guide/topics/ui/themes.html">Styles and Themes</a>.</p>
+
 <h2 id="tv-libraries">Add TV Support Libraries</h3>
 
 <p>
@@ -346,7 +367,5 @@
   For more information about using emulators see, <a href="{@docRoot}tools/devices/emulator.html">
   Using the Emulator</a>. For more information on deploying apps from Android Studio to virtual
   devices, see <a href="{@docRoot}sdk/installing/studio-debug.html">Debugging with Android
-  Studio</a>. For more information about deploying apps to emulators from Eclipse with ADT, see
-  <a href="{@docRoot}tools/building/building-eclipse.html">Building and Running from Eclipse with
-  ADT</a>.
+  Studio</a>.
 </p>
diff --git a/docs/html/training/tv/tif/tvinput.jd b/docs/html/training/tv/tif/tvinput.jd
index 91f8ded..1a53398 100644
--- a/docs/html/training/tv/tif/tvinput.jd
+++ b/docs/html/training/tv/tif/tvinput.jd
@@ -12,7 +12,7 @@
   <ol>
     <li><a href="#manifest">Declare Your TV Input Service in the Manifest</a></li>
     <li><a href="#tvinput">Define Your TV Input Service</a></li>
-    <li><a href="#setup">Define Setup and Settings Activities</a></li>
+    <li><a href="#setup">Define Your Setup Activity</a></li>
   </ol>
   <h2>You should also read</h2>
   <ul>
@@ -82,18 +82,14 @@
 
 <p>Define the service meta data in separate XML file, as shown in the following example. The service
 meta data must include a setup interface that describes the TV input's initial configuration and
-channel scan. Also, the service meta data may (optionally) describe a settings activity for users to
-modify the TV input's behavior. The service meta data file is located in the XML resources directory
+channel scan. The service meta data file is located in the XML resources directory
 for your application and must match the name of the resource in the manifest. Using the example
 manifest entries above, you would create an XML file in the location
 <code>res/xml/sample_tv_input.xml</code>, with the following contents:</p>
 
 <pre>
 &lt;tv-input xmlns:android="http://schemas.android.com/apk/res/android"
-  &lt;!-- Required: activity for setting up the input --&gt;
-  android:setupActivity="com.example.sampletvinput.SampleTvInputSetupActivity"
-  &lt;!-- Optional: activity for controlling the settings --&gt;
-  android:settingsActivity="com.example.sampletvinput.SampleTvInputSettingsActivity" /&gt;
+  android:setupActivity="com.example.sampletvinput.SampleTvInputSetupActivity" /&gt;
 </pre>
 
 <h2 id="tvinput">Define Your TV Input Service</h2>
@@ -157,21 +153,16 @@
 <p>The {@link android.media.tv.TvInputService.Session} handles the
 {@link android.media.tv.TvInputService.Session#onTune(android.net.Uri) onTune()}
 event when the user selects a channel, and notifies the system TV app for changes in the content and
-content meta data. These <code>notify()</code>code> methods are described in
+content meta data. These <code>notify()</code> methods are described in
 <a href="{@docRoot}training/tv/tif/ui.html#control">
-Control Content</a> and <a href="training/tv/tif/ui.html#track">Handle Track Selection</a> further
-in this training.</p>
+Control Content</a> and <a href="{@docRoot}training/tv/tif/ui.html#track">Handle Track Selection</a>
+further in this training.</p>
 
-<h2 id="setup">Define Setup and Settings Activities</h2>
+<h2 id="setup">Define Your Setup Activity</h2>
 
-<p>The system TV app works with the setup and settings activities you define for your TV input. The
+<p>The system TV app works with the setup activity you define for your TV input. The
 setup activity is required and must provide at least one channel record for the system database. The
 system TV app will invoke the setup activity when it cannot find a channel for the TV input.
 <p>The setup activity describes to the system TV app the channels made available through the TV
 input, as demonstrated in the next lesson, <a href="{@docRoot}training/tv/tif/channel.html">Creating
 and Updating Channel Data</a>.</p>
-
-<p>The settings activity is optional. You can define a settings activity to turn on parental
-controls, enable closed captions, set the display attributes, and so forth.</p>
-
-
diff --git a/docs/html/training/volley/index.jd b/docs/html/training/volley/index.jd
old mode 100644
new mode 100755
index ff74634..31c0ed0
--- a/docs/html/training/volley/index.jd
+++ b/docs/html/training/volley/index.jd
@@ -23,7 +23,7 @@
 </div>
 </div>
 
-<a class="notice-developers-video wide" href="https://developers.google.com/events/io/sessions/325304728">
+<a class="notice-developers-video wide" href="https://www.youtube.com/watch?v=yhv8l9F44qo">
 <div>
     <h3>Video</h3>
     <p>Volley: Easy, Fast Networking for Android</p>
@@ -77,9 +77,9 @@
 </pre>
 </li>
 
-<li>Import the downloaded source into your app project as an Android library project
-(as described in <a href="{@docRoot}tools/projects/projects-eclipse.html">
-Managing Projects from Eclipse with ADT</a>, if you're using Eclipse) or make a
+<li>Import the downloaded source into your app project as an Android library module
+(as described in <a href="{@docRoot}sdk/installing/create-project.html#SettingUpLibraryModule">
+Managing Projects from Android Studio</a>, if you're using Android Studio) or make a
 <a href="{@docRoot}guide/faq/commontasks.html#addexternallibrary"><code>.jar</code> file</a>.</li>
 </ol>
 
diff --git a/docs/html/training/volley/request-custom.jd b/docs/html/training/volley/request-custom.jd
index c62c254..9c3eb57 100644
--- a/docs/html/training/volley/request-custom.jd
+++ b/docs/html/training/volley/request-custom.jd
@@ -16,7 +16,7 @@
 </div>
 </div>
 
-<a class="notice-developers-video wide" href="https://developers.google.com/events/io/sessions/325304728">
+<a class="notice-developers-video wide" href="https://www.youtube.com/watch?v=yhv8l9F44qo">
 <div>
     <h3>Video</h3>
     <p>Volley: Easy, Fast Networking for Android</p>
diff --git a/docs/html/training/volley/request.jd b/docs/html/training/volley/request.jd
index 8a7dc62..a2b2ecd 100644
--- a/docs/html/training/volley/request.jd
+++ b/docs/html/training/volley/request.jd
@@ -17,7 +17,7 @@
 </div>
 </div>
 
-<a class="notice-developers-video wide" href="https://developers.google.com/events/io/sessions/325304728">
+<a class="notice-developers-video wide" href="https://www.youtube.com/watch?v=yhv8l9F44qo">
 <div>
     <h3>Video</h3>
     <p>Volley: Easy, Fast Networking for Android</p>
diff --git a/docs/html/training/volley/requestqueue.jd b/docs/html/training/volley/requestqueue.jd
index 6d19cee..f8c61aa 100644
--- a/docs/html/training/volley/requestqueue.jd
+++ b/docs/html/training/volley/requestqueue.jd
@@ -17,7 +17,7 @@
 </div>
 </div>
 
-<a class="notice-developers-video wide" href="https://developers.google.com/events/io/sessions/325304728">
+<a class="notice-developers-video wide" href="https://www.youtube.com/watch?v=yhv8l9F44qo">
 <div>
     <h3>Video</h3>
     <p>Volley: Easy, Fast Networking for Android</p>
@@ -39,36 +39,11 @@
 of the requests, and a cache to handle caching. There are standard implementations of these
 available in the Volley toolbox: {@code DiskBasedCache} provides a one-file-per-response
 cache with an in-memory index, and {@code BasicNetwork} provides a network transport based
-on your choice of the Apache HTTP client {@code android.net.http.AndroidHttpClient} or
-{@link java.net.HttpURLConnection}.</p>
+on your preferred HTTP client.</p>
 
 <p>{@code BasicNetwork} is Volley's default network implementation. A {@code BasicNetwork}
 must be initialized with the HTTP client your app is using to connect to the network.
-Typically this is a {@link java.net.HttpURLConnection}:</p>
-<ul>
-<li>Use {@code android.net.http.AndroidHttpClient} for apps targeting Android API levels
-lower than API Level 9 (Gingerbread). Prior to Gingerbread, {@link java.net.HttpURLConnection}
-was unreliable. For more discussion of this topic, see
-<a href="http://android-developers.blogspot.com/2011/09/androids-http-clients.html">
-Android's HTTP Clients</a>. </li>
-
-<li>Use {@link java.net.HttpURLConnection} for apps targeting Android API Level 9
-(Gingerbread) and higher.</li>
-</ul>
-<p>To create an app that runs on all versions of Android, you can check the version of
-Android the device is running and choose the appropriate HTTP client, for example:</p>
-
-<pre>
-HttpStack stack;
-...
-// If the device is running a version >= Gingerbread...
-if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) {
-    // ...use HttpURLConnection for stack.
-} else {
-    // ...use AndroidHttpClient for stack.
-}
-Network network = new BasicNetwork(stack);
-</pre>
+Typically this is an {@link java.net.HttpURLConnection}.</p>
 
 <p>This snippet shows you the steps involved in setting up a
 {@code RequestQueue}:</p>
@@ -88,7 +63,7 @@
 // Start the queue
 mRequestQueue.start();
 
-String url ="http://www.myurl.com";
+String url ="http://www.example.com";
 
 // Formulate the request and handle the response.
 StringRequest stringRequest = new StringRequest(Request.Method.GET, url,
@@ -107,7 +82,8 @@
 
 // Add the request to the RequestQueue.
 mRequestQueue.add(stringRequest);
-...
+
+// ...
 </pre>
 
 <p>If you just need to make a one-time request and don't want to leave the thread pool
@@ -198,7 +174,8 @@
 // Get a RequestQueue
 RequestQueue queue = MySingleton.getInstance(this.getApplicationContext()).
     getRequestQueue();
-...
+
+// ...
 
 // Add a request (in this example, called stringRequest) to your RequestQueue.
 MySingleton.getInstance(this).addToRequestQueue(stringRequest);
diff --git a/docs/html/training/volley/simple.jd b/docs/html/training/volley/simple.jd
index ecb5fde..ab61b9b 100644
--- a/docs/html/training/volley/simple.jd
+++ b/docs/html/training/volley/simple.jd
@@ -19,7 +19,7 @@
 </div>
 </div>
 
-<a class="notice-developers-video wide" href="https://developers.google.com/events/io/sessions/325304728">
+<a class="notice-developers-video wide" href="https://www.youtube.com/watch?v=yhv8l9F44qo">
 <div>
     <h3>Video</h3>
     <p>Volley: Easy, Fast Networking for Android</p>
@@ -101,7 +101,7 @@
 parsed on the cache thread and the parsed response is delivered on the main thread. If the
 request cannot be serviced from cache, it is placed on the network queue. The first
 available network thread takes the request from the queue, performs the HTTP transaction,
-parsse the response on the worker thread, writes the response to cache, and posts the parsed
+parses the response on the worker thread, writes the response to cache, and posts the parsed
 response back to the main thread for delivery.</p>
 
 <p>Note that expensive operations like blocking I/O and parsing/decoding are done on worker
diff --git a/docs/html/training/wearables/apps/always-on.jd b/docs/html/training/wearables/apps/always-on.jd
index d384974..9f28b70 100644
--- a/docs/html/training/wearables/apps/always-on.jd
+++ b/docs/html/training/wearables/apps/always-on.jd
@@ -140,11 +140,16 @@
 <p>If the user does not interact with your app for a period of time while it is displayed, or if
 the user covers the screen with their palm, the system switches the activity to ambient mode.
 After the app switches to ambient mode, update the activity UI to a more basic layout to reduce
-power consumption. You should use a black background with minimal white graphics and text. To
-ease a user into the transition from interactive to ambient mode, try to maintain similar placement
-of items on the screen. For more information on presenting content on an ambient screen, see the
+power consumption. You should use a black background with minimal white graphics and text.
+ To ease a user into the transition from interactive to ambient mode, try to maintain similar
+ placement of items on the screen. For more information on presenting content on an ambient screen,
+ see the
 <a href="{@docRoot}design/wear/watchfaces.html#DisplayModes">Watch Faces for Android Wear</a>
-design guide.
+design guide.</p>
+<p> Note that when your app runs on a device without a hardware button, palming the screen does not
+switch an app into ambient mode. Rather, it causes the app to exit and the home screen to appear.
+This behavior is intended to ensure that users can exit apps gracefully. However, these devices still
+ go to ambient mode when the screen times out.
 </p>
 
 <p class="note"><b>Note:</b> In ambient mode, disable any interactive elements on the
diff --git a/docs/html/training/wearables/apps/creating-app-china.jd b/docs/html/training/wearables/apps/creating-app-china.jd
new file mode 100644
index 0000000..d4b3ab7
--- /dev/null
+++ b/docs/html/training/wearables/apps/creating-app-china.jd
@@ -0,0 +1,157 @@
+page.title=Creating Android Wear Apps for China
+parent.title=Training
+parent.link=creating.html
+page.tags= "wearable", "apps", "china"
+page.article=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>This lesson teaches you to</h2>
+<ol>
+  <li><a href="#ChinaSDK">Support Your App on Android Wear for China</a></li>
+  <li><a href="#other-services">Use Other Google Play Services APIs</a></li>
+</ol>
+<h2>Dependencies and prerequisites</h2>
+<ol>
+<li> Android 4.3 (API Level 18) or higher on the handset and wearable device</li>
+</ol>
+<h2>Downloads</h2>
+<ol>
+<div class="download-box">
+<a href="https://dl.google.com/androidwear/developers/china/google-play-services-7-8-87.zip"
+  class="button">Standalone Client Library</a>
+<p class="filename">google-play-services-7-8-87.zip</p>
+</div>
+</ol>
+</div>
+</div>
+
+
+<p>
+Handsets sold in China do not have Google Play services preinstalled. For this reason, wearable
+apps running on devices in China must communicate with paired handsets through the Android Wear
+companion app.  To enable you to develop a single APK that works with both Android Wear for China and
+ Android Wear in the rest of the world, we provide a special variant of the Google Play services
+client library.</p>
+
+<p>
+This client library is compatible with Android 4.3 (API level 18) and higher, and you can simply
+drop it into your app. You do not need to write any new code. Instead, you change several project
+configuration settings, and re-compile your app.
+</p>
+
+
+<p>The rest of this page explains how to perform this process.</p>
+
+
+
+<h2 id = "ChinaSDK">Support Your App on Android Wear for China</h2>
+
+<p>
+<p>In order to support your wearable app on all handsets, you must download and add the Google Play
+Services 7.8.87 client library as a Maven repository in your project, configure your
+development project to use it, and re-compile your app.
+</p>
+
+<h3>Add the Google Play Services 7.8.87 library</h3>
+
+<p>The Google Play services 7.8.87 client library is distributed as a Maven repository. To add this
+repository to your project:</p>
+
+<ol>
+<li><a href="https://dl.google.com/androidwear/developers/china/google-play-services-7-8-87.zip">
+Download</a> the client library.
+The filename is {@code google-play-services-7-8-87.zip}.</li>
+<li>Create a local Maven repository by extracting the {@code google-play-services-7-8-87/} directory
+from the downloaded zip file, and placing it into the root directory of your project.
+</li>
+<li>In your top-level project {@code build.gradle} file, specify the location of the newly created
+local Maven {@code google-play-services-7-8-87} repository.
+</li>
+<p>
+The following example shows how to do so:
+</p>
+<pre>
+allprojects {
+  repositories {
+
+        maven {
+                url "${rootProject.projectDir}/google-play-services-7-8-87"
+              }
+       // ... other repositories may go here ...
+
+    }</pre>
+</ol>
+<h3>Configure your app to use the library</h3>
+<p>In the {@code build.gradle} file of your <em>mobile</em> module replace the Google Play
+ services dependency with a reference to the client library from the newly added repository. The
+ following example shows how to do so:
+</p>
+
+
+<pre>
+dependencies{
+    ...
+    wearApp project(':wear')
+    compile 'com.google.android.gms:play-services-wearable:7.8.87'
+    ...
+    }
+</pre>
+<p>The {@code build.gradle} file of your <em>wear</em> module must also use this version of the
+client library, for example:
+</p>
+<pre>
+dependencies {
+    compile 'com.google.android.support:wearable:1.3.0'
+    compile 'com.google.android.gms:play-services-wearable:7.8.87'
+}
+</pre>
+
+<p class="note"><strong>Note:</strong> If you are using any other Google Play services APIs in your
+wearable app, you must selectively add those Google Play service APIs into your app and explicitly
+ specify the 7.8.87 version. For example to include the Google location API in your wearable app,
+ add the following line in your {@code build.gradle} file:
+</p>
+<pre>
+compile 'com.google.android.gms:play-services-location:7.8.87'
+</pre>
+</p>
+<h3>Build the project</h3>
+
+
+<p>You can now <a href="{@docRoot}training/wearables/apps/packaging.html">build
+</a>a new version of your app and deploy it to Android handsets globally.</p>
+</ol>
+
+
+<h2 id= "other-services">Use Other Google Play services APIs</h2>
+
+<p>
+If your app uses Google Play services APIs other than the Wearable API, then your app needs to check
+whether these APIs are available to use during runtime and respond appropriately. There are two ways
+to check the availability of Google Play service APIs:
+</p>
+
+<ol>
+<li>Use a separate <a href="https://developers.google.com/android/reference/com/google/android/gms/
+common/api/GoogleApiClient.html">{@code GoogleApiClient}</a> instance for connecting to other APIs.
+This interface contains callbacks to alert your app to the success or failure of the connection.
+To learn how to handle connection failures,
+see <a href="https://developers.google.com/android/guides/api-client">Accessing Google APIs</a>.</li>
+
+<li>Use the <a href="https://developers.google.com/android/reference/com/google/android/gms/common/
+api/GoogleApiClient.Builder.html#addApiIfAvailable(com.google.android.gms.common.api.Api<O>, O,
+com.google.android.gms.common.api.Scope...)"> {@code addApiIfAvailable()}</a> method of
+<a href="https://developers.google.com/android/
+reference/com/google/android/gms/common/api/GoogleApiClient.Builder.html">{@code GoogleApiClient.Builder}
+</a>
+to connect to the required APIs. After the <a href = "https://developers.google.com/android/reference/
+com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks#onConnected(android.os.Bundle)">
+{@code onConnected()}</a> callback fires, check if each of the requested API is connected correctly
+using the <a href="https://developers.google.com/android/reference/com/google/android/gms/common/api/
+GoogleApiClient.html#hasConnectedApi(com.google.android.gms.common.api.Api<?>)">
+ {@code hasConnectedApi()}</a> method.
+
+</ol>
diff --git a/docs/html/training/wearables/apps/creating.jd b/docs/html/training/wearables/apps/creating.jd
index f1491e4..db91b67 100644
--- a/docs/html/training/wearables/apps/creating.jd
+++ b/docs/html/training/wearables/apps/creating.jd
@@ -51,6 +51,13 @@
 <p>To update your SDK with these components, see
 <a href="{@docRoot}sdk/installing/adding-packages.html#GetTools"> Get the latest SDK tools</a>.</p>
 
+<p class="note"><strong>Note:</strong> If you plan to make your Wear apps available for China,
+  you must use the special release version 7.8.87 of the Google Play services client library to handle
+  communication between handset and wearable.
+
+ For information on how to configure Wear apps for China, see
+ <a href="{@docRoot}training/wearables/apps/creating-app-china.html"> Creating Android Wear Apps for
+ China</a>.</p>
 
 <h2 id="SetupEmulator">Set Up an Android Wear Emulator or Device</h2>
 <p>We recommend that you develop on real hardware so you can better
diff --git a/docs/html/training/wearables/apps/index.jd b/docs/html/training/wearables/apps/index.jd
old mode 100644
new mode 100755
index e2a71de..da83cfa
--- a/docs/html/training/wearables/apps/index.jd
+++ b/docs/html/training/wearables/apps/index.jd
@@ -66,10 +66,9 @@
 need to show persistent content on versions prior to Android 5.1, create a notification in the
 context stream instead.</p>
 
-<p class="note"><b>Note:</b> We recommend using Android Studio for Android Wear development
-as it provides project setup, library inclusion, and packaging conveniences that aren't available
-in ADT. The rest of this training assumes you're using Android Studio.
-</p>
+<p class="note"><b>Note:</b> We recommend using Android Studio for Android Wear development,
+as it provides project setup, library inclusion, and packaging conveniences. The rest of this
+training assumes you're using Android Studio.</p>
 
 <h2>Lessons</h2>
   <dl>
@@ -92,4 +91,4 @@
       users install the companion handheld app from the Google Play store.</dd>
     <dt><a href="{@docRoot}training/wearables/apps/bt-debugging.html">Debugging over Bluetooth</a></dt>
       <dd>Learn how to debug your wearable over Bluetooth instead of USB.</dd>
-  </dl>
\ No newline at end of file
+  </dl>
diff --git a/docs/html/training/wearables/apps/layouts.jd b/docs/html/training/wearables/apps/layouts.jd
old mode 100644
new mode 100755
index 197b94b0c..6480e63
--- a/docs/html/training/wearables/apps/layouts.jd
+++ b/docs/html/training/wearables/apps/layouts.jd
@@ -199,12 +199,6 @@
 <a href="{@docRoot}reference/android/support/wearable/view/package-summary.html">Wear API
 reference documentation</a> for the classes above.</p>
 
-<h3 id="UiLibEclipse">Download the Wearable UI library for Eclipse ADT</h3>
-
-<p>If you are using the ADT plugin for Eclipse, download the
-<a href="{@docRoot}shareables/training/wearable-support-lib.zip">Wearable UI library</a> to
-include the Wearable UI library as a dependency in your project.</p>
-
-<p class="note"><strong>Note:</strong> We recommend
-<a href="{@docRoot}sdk/index.html">Android Studio</a> for Android Wear app
-development.</p>
+<p class="note"><strong>Note:</strong> We recommend using <a
+href="{@docRoot}sdk/index.html">Android Studio</a> for Android Wear development, as
+it provides project setup, library inclusion, and packaging conveniences.</p>
diff --git a/docs/html/training/wearables/data-layer/data-items.jd b/docs/html/training/wearables/data-layer/data-items.jd
index 49a8d32..b526946 100644
--- a/docs/html/training/wearables/data-layer/data-items.jd
+++ b/docs/html/training/wearables/data-layer/data-items.jd
@@ -38,25 +38,34 @@
   <li>Call <a href="{@docRoot}reference/com/google/android/gms/wearable/PutDataRequest.html#setData(byte[])">
   <code>setData()</code></a> to set the payload.
   </li>
+
+  <li>
+  If a delay in syncing would negatively impact user experience, call
+  <a href="{@docRoot}reference/com/google/android/gms/wearable/PutDataRequest#setUrgent()">
+  {@code setUrgent()}</a>.
+  </li>
+
   <li>Call <a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.html#putDataItem(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.PutDataRequest)"><code>DataApi.putDataItem()</code></a> to request the system to create the data item.
   </li>
-  <li>When requesting data items, the system returns objects
-  that properly implement the <a href="{@docRoot}reference/com/google/android/gms/wearable/DataItem.html"><code>DataItem</code></a> interface.
-  </li>
-</ol>
+  </ol>
 
 <p>
-However, instead of working with raw bytes using <a href="{@docRoot}reference/com/google/android/gms/wearable/PutDataRequest.html#setData(byte[])"><code>setData()</code></a>,
-we recommend you <a href="#SyncData">use a data map</a>, which exposes
+When requesting data items, the system returns objects that properly implement the
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataItem.html"><code>DataItem</code>
+</a> interface. However, instead of working with raw bytes using
+<a href="{@docRoot}reference/com/google/android/gms/wearable/PutDataRequest.html#setData(byte[])">
+<code>setData()</code></a>, we recommend you <a href="#SyncData">use a data map</a>, which exposes
 a data item in an easy-to-use {@link android.os.Bundle}-like interface.
 </p>
 
 
 <h2 id="SyncData">Sync Data with a Data Map</h2>
 <p>
-When possible, use the <a href="{@docRoot}reference/com/google/android/gms/wearable/DataMap.html"><code>DataMap</code></a> class.
+When possible, use the <a href="{@docRoot}reference/com/google/android/gms/wearable/DataMap.html">
+<code>DataMap</code></a> class.
 This approach lets you work with data items in the form of an Android {@link android.os.Bundle},
-so object serialization and de-serialization is done for you, and you can manipulate data with key-value pairs.
+so the system does object serialization and deserialization for you, and you can manipulate data
+with key-value pairs.
 </p>
 
 <p>To use a data map:</p>
@@ -77,11 +86,23 @@
   <li>Set any desired values for the data map using the <code>put...()</code> methods, such as
   <a href="{@docRoot}reference/com/google/android/gms/wearable/DataMap.html#putString(java.lang.String, java.lang.String)"><code>putString()</code></a>.
   </li>
+
+   <li>
+   If a delay in syncing would negatively impact user experience, call
+   <a href="{@docRoot}reference/com/google/android/gms/wearable/PutDataRequest#setUrgent()">
+   {@code setUrgent()}</a>.
+   </li>
+
+
   <li>Call <a href="{@docRoot}reference/com/google/android/gms/wearable/PutDataMapRequest.html#asPutDataRequest()"><code>PutDataMapRequest.asPutDataRequest()</code></a>
   to obtain a <a href="{@docRoot}reference/com/google/android/gms/wearable/PutDataRequest.html"><code>PutDataRequest</code></a> object.
    </li>
+
+
   <li>Call <a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.html#putDataItem(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.PutDataRequest)"><code>DataApi.putDataItem()</code></a> to request the system to create the data item.
+
   <p class="note"><b>Note:</b>
+
   If the handset and wearable devices are disconnected,
   the data is buffered and synced when the connection is re-established.
   </p>
@@ -124,6 +145,40 @@
 Layer Calls</a>.</p>
 
 
+<h3>Set DataItem priority</h3>
+
+<p>
+In <a href="https://developers.google.com/android/guides/releases">Google Play services 8.3 and later</a>,
+the
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi">{@code DataApi}</a> interface
+allows urgent requests for syncing of
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataItem">{@code DataItems}</a>.
+Normally, the system may delay delivery of
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataItem">{@code DataItems}</a>
+to the Wear network in order to improve battery life
+for user devices, but if a delay in syncing
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataItem">{@code DataItems}</a>
+would negatively impact user experience, you
+can mark them as urgent. For example, in a remote control app where the user expects their actions to be
+reflected immediately, you can have the system sync your
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataItem">{@code DataItems}</a>
+immediately by calling
+<a href="{@docRoot}reference/com/google/android/gms/wearable/PutDataRequest#setUrgent()">
+{@code setUrgent()}</a>.
+</p>
+
+<p>
+If you do not call
+<a href="{@docRoot}reference/com/google/android/gms/wearable/PutDataRequest#setUrgent()">
+{@code setUrgent()}</a>, the system may delay up to 30 minutes before syncing non-urgent
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataItem">{@code DataItems}</a>,
+but you can usually expect the delay to be a few minutes, if at all.
+The default urgency is now non-urgent, so you must use
+<a href="{@docRoot}reference/com/google/android/gms/wearable/PutDataRequest#setUrgent()">
+{@code setUrgent()}</a> if you wish to retain the immediate-sync behavior that
+existed in previous versions of the Wear API.
+</p>
+
 <h2 id="ListenEvents">Listen for Data Item Events</h2>
 
 <p>If one side of the data layer connection changes a data item, you probably want
@@ -158,7 +213,7 @@
 
     &#64;Override
     protected void onResume() {
-        super.onStart();
+        super.onResume();
         mGoogleApiClient.connect();
     }
 
diff --git a/docs/html/training/wearables/data-layer/events.jd b/docs/html/training/wearables/data-layer/events.jd
index c797f68..9bed9d5 100644
--- a/docs/html/training/wearables/data-layer/events.jd
+++ b/docs/html/training/wearables/data-layer/events.jd
@@ -68,72 +68,100 @@
 </pre>
 
 
-<h2 id="Listen">Listen for Data Layer Events </h2>
-<p>Because the data layer synchronizes and sends data across the handheld and
-wearable, you normally want to listen for important events, such as when data items
-are created, messages are received, or when the wearable and handset are connected.
+<h2 id="Listen">Listen for Data Layer Events</h2>
+<p>
+Because the data layer synchronizes and sends data across the handheld and
+wearable, it is usually necessary to listen for important events. Examples of
+such events include creation of data items and receipt of messages.
 </p>
-<p>To listen for data layer events, you have two options:</p>
-
+<p>
+To listen for data layer events, you have two options:
+</p>
 <ul>
-  <li>Create a service that extends
-  <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>.
-  </li>
-  <li>Create an activity that implements
-  <a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.DataListener.html"><code>DataApi.DataListener</code></a>.
-  </li>
+   <li>Create a service that extends <a href
+="https://developer.android.com/reference/com/google/android/gms/wearable/WearableListenerService.html">
+{@code WearableListenerService}</a>.</li>
+   <li>Create an activity that implements <a
+href="https://developer.android.com/reference/com/google/android/gms/wearable/DataApi.DataListener.html">
+{@code DataApi.DataListener}</a>.</li>
 </ul>
-
-<p>With both these options, you override the data event callback methods for the events you
-are interested in handling.</p>
-
-<h3 id="listener-service">With a WearableListenerService</h3>
+<p>
+With both these options, you override the data event callback methods for the
+events you are interested in handling.
+</p>
+<h3>With a WearableListenerService</h3>
+<p>
+You typically create instances of this service in both your wearable and
+handheld apps. If you are not interested in data events in one of these apps,
+then you don't need to implement this service in that particular app.
+</p>
+<p>
+For example, you can have a handheld app that sets and gets data item objects
+and a wearable app that listens for these updates to update its UI. The
+wearable never updates any of the data items, so the handheld app doesn't
+listen for any data events from the wearable app.
+</p>
+<p>
+Some of the events you can listen for using <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html">
+{@code WearableListenerService}</a> are as follows:
+</p>
+<ul>
+  <li><a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)">
+{@code onDataChanged()}</a>:
+Whenever a data item object is created, deleted, or changed, the system triggers
+this callback on all connected nodes.
+</li>
+<li><a
+href="http://developer.android.com/reference/com/google/android/gms/wearable/WearableListenerService.html#onMessageReceived(com.google.android.gms.wearable.MessageEvent)">
+{@code onMessageReceived()}</a>:  A message sent from a node triggers
+this callback on the target node.</li>
+<li><a
+href="https://developers.google.com/android/reference/com/google/android/gms/wearable/WearableListenerService.html#onCapabilityChanged(com.google.android.gms.wearable.CapabilityInfo)">
+{@code onCapabilityChanged()}</a>:
+When a capability that an instance of your app advertises becomes available
+on the network, that event triggers this callback. If you're looking for a
+nearby node you can query the
+<a
+href="https://developers.google.com/android/reference/com/google/android/gms/wearable/Node.html#isNearby()">
+{@code isNearby()}</a> method of the nodes provided in the callback.</li>
 
 <p>
-You typically create instances of this service in both your wearable and handheld apps. If you
-are not interested in data events in one of these apps, then you don't need to implement this
-service in that particular app.</p>
-
-<p>For example, you can have a handheld app that sets and gets data item objects and a wearable app
-that listens for these updates to update it's UI. The wearable never updates any of the data items,
-so the handheld app doesn't listen for any data events from the wearable app.</p>
-
-<p>You can listen for the following events with
-<a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>:</p>
-
-<ul>
-  <li><a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)"><code>onDataChanged()</code></a>
-- Called when data item objects are created, changed, or deleted. An event on one side of a connection
-triggers this callback on both sides.</li>
-  <li><a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onMessageReceived(com.google.android.gms.wearable.MessageEvent)"><code>onMessageReceived()</code></a>
--  A message sent from one side of a connection triggers this callback on the other side of the connection.</li>
-  <li><a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onMessageReceived(com.google.android.gms.wearable.MessageEvent)"><code>onPeerConnected()</code></a>
-  and <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onPeerDisconnected(com.google.android.gms.wearable.Node)"><code>onPeerDisconnected()</code></a> -
-  Called when the connection with the handheld or wearable is connected or disconnected.
-  Changes in connection state on one side of the connection trigger these callbacks on both sides
-  of the connection.
-  </li>
+In addition to those on this list, you can listen for events from
+<a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener">
+{@code ChannelApi.ChannelListener}</a>, such as
+<a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html#onChannelOpened(com.google.android.gms.wearable.Channel)">
+{@code onChannelOpened()}</a>.
+</p>
 </ul>
-
-<p>To create a <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>:</p>
+<p>To create a <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>, follow these steps:</p>
 
 <ol>
   <li>Create a class that extends
-  <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>.
+  <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>.
   </li>
   <li>Listen for the events that you're interested in, such as
-  <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)"><code>onDataChanged()</code></a>.
+  <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)">
+<code>onDataChanged()</code></a>.
   </li>
-  <li>Declare an intent filter in your Android manifest to notify the system about your
-  <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>.
-  This allows the system to bind your service as needed.
+  <li>Declare an intent filter in your Android manifest to notify the system
+about your
+  <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>
+WearableListenerService</code></a>.
+  This declaration allows the system to bind your service as needed.
   </li>
 </ol>
 
   <p>The following example shows how to implement a simple
-  <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>:
+  <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>
+WearableListenerService</code></a>:
   </p>
-
 <pre>
 public class DataLayerListenerService extends WearableListenerService {
 
@@ -146,7 +174,7 @@
         if (Log.isLoggable(TAG, Log.DEBUG)) {
             Log.d(TAG, "onDataChanged: " + dataEvents);
         }
-        final List<DataEvent> events = FreezableUtils
+        final List events = FreezableUtils
                 .freezeIterable(dataEvents);
 
         GoogleApiClient googleApiClient = new GoogleApiClient.Builder(this)
@@ -179,85 +207,139 @@
 }
 </pre>
 
-<p>Here's the corresponding intent filter in the Android manifest file:</p>
+<p>
+The next section explains how to use an intent filter with this listener.
+</p>
+
+<h3>Using filters with WearableListenerService</h3>
+
+<p>
+An intent filter for the
+<a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html">
+{@code WearableListenerService}</a> example shown in the previous section might look like this:
 
 <pre>
 &lt;service android:name=".DataLayerListenerService"&gt;
-  &lt;intent-filter&gt;
-      &lt;action android:name="com.google.android.gms.wearable.BIND_LISTENER" /&gt;
+  &lt;intent-filter>
+      &lt;action android:name="com.google.android.gms.wearable.DATA_CHANGED" /&gt;
+      &lt;data android:scheme="wear" android:host="*"
+               android:path="/start-activity" /&gt;
   &lt;/intent-filter&gt;
 &lt;/service&gt;
 </pre>
 
-
-<h4>Permissions within Data Layer Callbacks</h4>
-
 <p>
-To deliver callbacks to your application for data layer events, Google Play services
-binds to your <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>,
-and calls your callbacks via IPC. This has the consequence
-that your callbacks inherit the permissions of the calling process.</p>
-
-<p>If you try to perform a privileged operation within a callback, the security check fails because your callback is
-running with the identity of the calling process, instead of the identity of your app's
-process.</p>
-
-<p>To fix this, call {@link android.os.Binder#clearCallingIdentity} </a>,
-to reset identity after crossing the IPC boundary, and then restore identity with
-{@link android.os.Binder#restoreCallingIdentity restoreCallingIdentity()} when
-you've completed the privileged operation:
+In this filter, the {@code DATA_CHANGED} action replaces the
+previously recommended {@code BIND_LISTENER} action so that only specific
+events wake or launch your application. This change improves system efficiency
+and reduces battery consumption and other overhead associated with your
+application. In this example, the watch listens for the
+{@code /start-activity} data item, and the
+phone listens for the {@code /data-item-received} message response.
+</p>
+<p>
+Standard Android filter matching rules apply. You can specify multiple services
+per manifest, multiple intent filters per service, multiple actions per filter,
+and multiple data stanzas per filter. Filters can match on a wildcard host or on
+a specific one. To match on a wildcard host, use {@code host="*"}. To match
+on a specific host, specify {@code host=&lt;node_id&gt;}.
 </p>
 
-<pre>
-long token = Binder.clearCallingIdentity();
-try {
-    performOperationRequiringPermissions();
-} finally {
-    Binder.restoreCallingIdentity(token);
-}
-</pre>
-
-<h3 id="Listen">With a Listener Activity</h3>
-
 <p>
-If your app only cares about data layer events when the user is interacting
-with the app and does not need a long-running service to handle every data
-change, you can listen for events in an activity by implementing one or more
-of the following interfaces:
+You can also match a literal path or path prefix. If you are matching by path
+or path prefix, you must specify a wildcard or specific host.
+If you do not do so, the system ignores the path you specified.
+</p>
+<p>
+For more information on the filter types that Wear supports, see the
+API reference documentation for <a
+href="https://developers.google.com/android/reference/com/google/android/gms/wearable/WearableListenerService">
+{@code WearableListenerService}</a>.
 
+
+</p>
+<p>
+For more information on data filters and matching rules, see the API reference
+documentation for the <a
+href="{@docRoot}guide/topics/manifest/data-element.html">{@code data}</a>
+manifest element.
+</p>
+
+
+<p>When matching intent filters, there are two important rules to remember:</p>
 <ul>
-  <li><a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.DataListener.html"><code>DataApi.DataListener</code></a></li>
-  <li><a href="{@docRoot}reference/com/google/android/gms/wearable/MessageApi.MessageListener.html"><code>MessageApi.MessageListener</code></a></li>
-  <li><a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.NodeListener.html"><code>NodeApi.NodeListener</code></a></li>
+    <li>If a scheme is not specified for the intent filter, the system ignores
+    all the other URI attributes.</li>
+    <li>If no host is specified for the filter, the system ignores the
+    port attribute and all the path attributes.</li>
 </ul>
+
+<h3>With a listener activity</h3>
+<p>
+If your app only cares about data-layer events when the user is interacting
+with the app, it may not need a long-running service to handle every data
+change. In such a case, you can listen for events in an activity by
+implementing one or more of the following interfaces:
 </p>
+<ul>
+  <li><a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.DataListener.html"><code>
+  DataApi.DataListener</code></a></li>
+
+  <li><a href="{@docRoot}reference/com/google/android/gms/wearable/MessageApi.MessageListener.html">
+  <code>MessageApi.MessageListener</code></a></li>
+
+  <li><a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/CapabilityApi.CapabilityListener.html">{@code CapabilityApi.CapabilityListener}</a></li>
+</ul>
 
 <p>To create an activity that listens for data events:</p>
 <ol>
 <li>Implement the desired interfaces.</li>
-<li>In {@link android.app.Activity#onCreate}, create an instance of
-<a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.html"><code>GoogleApiClient</code></a>
-to work with the Data Layer API.
+<li>In {@link android.app.Activity#onCreate onCreate()}, create an instance of
+<a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.html"><code>GoogleApiClient</code>
+</a>to work with the Data Layer API.</li>
+
 <li>
-In {@link android.app.Activity#onStart onStart()}, call <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.html#connect()"><code>connect()</code></a> to connect the client to Google Play services.
+In {@link android.app.Activity#onStart onStart()}, call <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.html#connect()">
+<code>connect()</code></a> to connect the client to Google Play services.
 </li>
+
 <li>When the connection to Google Play services is established, the system calls
 <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks.html#onConnected(android.os.Bundle)"><code>onConnected()</code></a>. This is where you call
-<a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.DataApi.DataListener)"><code>DataApi.addListener()</code></a>,
-  <a href="{@docRoot}reference/com/google/android/gms/wearable/MessageApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.MessageApi.MessageListener)"><code>MessageApi.addListener()</code></a>,
-  or <a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.NodeApi.NodeListener)"><code>NodeApi.addListener()</code></a>
-  to notify Google Play services that your activity is interested in listening for data layer events.
-</li>
+
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.DataApi.DataListener)">
+<code>DataApi.addListener()</code></a>,
+
+<a href="{@docRoot}android/reference/com/google/android/gms/wearable/CapabilityApi.CapabilityListener">
+<code>MessageApi.addListener()</code></a>, or
+
+<a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/CapabilityApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient,%20com.google.android.gms.wearable.CapabilityApi.CapabilityListener,%20android.net.Uri,%20int)">
+{@code CapabilityApi.addListener()}</a> to notify Google Play services that your activity is
+interested in listening for data layer events.</li>
+
 <li>In {@link android.app.Activity#onStop onStop()}, unregister any listeners with
 <a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.html#removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.DataApi.DataListener)"><code>DataApi.removeListener()</code></a>,
-<a href="{@docRoot}reference/com/google/android/gms/wearable/MessageApi.html#removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.MessageApi.MessageListener)"><code>MessageApi.removeListener()</code></a>,
-or <a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.html#removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.NodeApi.NodeListener)"><code>NodeApi.removeListener()</code></a>.
-</li>
-<li>Implement <a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.DataListener.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)"><code>onDataChanged()</code>,
-  <a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.NodeListener.html#onPeerConnected(com.google.android.gms.wearable.Node)"><code>onMessageReceived()</code></a>,
-    <a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.NodeListener.html#onPeerConnected(com.google.android.gms.wearable.Node)"><code>onPeerConnected()</code></a>, and
-  <a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.NodeListener.html#onPeerDisconnected(com.google.android.gms.wearable.Node)"><code>onPeerDisconnected()</code></a>, depending on the interfaces that you implemented.
-</li>
+<a href="{@docRoot}reference/com/google/android/gms/wearable/MessageApi.html#removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.MessageApi.MessageListener)"><code>MessageApi.removeListener()</code></a>, or
+<a href="http://developer.android.com/reference/com/google/android/gms/wearable/MessageApi.html#removeListener(com.google.android.gms.common.api.GoogleApiClient,%20com.google.android.gms.wearable.MessageApi.MessageListener)">
+{@code CapabilityApi.removeListener()}</a>.</li>
+
+
+<p>An alternative to adding listeners in
+<a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks.html#onConnected(android.os.Bundle)"><code>onConnected()</code></a>
+and removing them in
+{@link android.app.Activity#onStop onStop()} is to add a filtered listener in an activity’s {@link android.app.Activity#onResume onResume()} and
+remove it in {@link android.app.Activity#onPause onPause()}, so as to only receive data that is relevant to the
+current application state.</p>
+
+
+<li>Implement
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.DataListener.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)">
+<code>onDataChanged()</code></a>,
+  <a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/MessageApi.MessageListener.html#onMessageReceived(com.google.android.gms.wearable.MessageEvent)">
+  <code>onMessageReceived()</code></a>,
+  <a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/WearableListenerService.html#onCapabilityChanged(com.google.android.gms.wearable.CapabilityInfo)">
+{@code onCapabilityChanged()}</a>,
+or methods from <a href="http://developer.android.com/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html">
+Channel API listener methods</a>, depending on the interfaces that you implemented.</li>
 </ol>
 
 <p>Here's an example that implements
@@ -318,3 +400,19 @@
     }
 }
 </pre>
+<h3>Using Filters with Listener Activities</h3>
+<p>
+Just as you can specify intent filters for manifest-based
+<a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html">
+<code>WearableListenerService</code></a> objects, you can also use intent filters when registering a
+listener through the Wearable API. The same rules are applicable to both
+API-based listeners manifest-based listeners.
+</p>
+
+<p>
+A common pattern is to register a listener with a specific path or path prefix
+in an activity’s{@link android.app.Activity#onResume onResume()} method, and to
+remove the listener in the activity’s {@link android.app.Activity#onPause onPause()} method.
+Implementing listeners in this fashion allows your application to more selectively receive events,
+improving its design and efficiency.
+</p>
diff --git a/docs/html/training/wearables/ui/index.jd b/docs/html/training/wearables/ui/index.jd
old mode 100644
new mode 100755
index f82d29c..c43e165
--- a/docs/html/training/wearables/ui/index.jd
+++ b/docs/html/training/wearables/ui/index.jd
@@ -36,9 +36,9 @@
 provides classes that help you implement these patterns and create layouts that work on
 both round and square Android Wear devices.</p>
 
-<p class="note"><b>Note:</b> We recommend using Android Studio for Android Wear development
-as it provides project setup, library inclusion, and packaging conveniences that aren't available
-in ADT. This training assumes you are using Android Studio.</p>
+<p class="note"><b>Note:</b> We recommend using Android Studio for Android Wear development,
+as it provides project setup, library inclusion, and packaging conveniences. This training assumes
+you are using Android Studio.</p>
 
 <h2>Lessons</h2>
 
@@ -55,4 +55,4 @@
   <dd>Learn how to display confirmation animations when users complete actions.</dd>
   <dt><a href="{@docRoot}training/wearables/ui/exit.html">Exiting Full-Screen Activities</a></dt>
   <dd>Learn how to implement the long-press-to-dismiss UI pattern to exit full-screen activities.</dd>
-</dl>
\ No newline at end of file
+</dl>
diff --git a/docs/html/training/wearables/watch-faces/designing.jd b/docs/html/training/wearables/watch-faces/designing.jd
index 1033fed..564203c 100644
--- a/docs/html/training/wearables/watch-faces/designing.jd
+++ b/docs/html/training/wearables/watch-faces/designing.jd
@@ -65,7 +65,7 @@
 technology, you may need to avoid large blocks of white pixels, use only black and white, and
 disable anti-aliasing.</dd>
 
-<dt><em>Accomodate system UI elements</em></dt>
+<dt><em>Accommodate system UI elements</em></dt>
 <dd>Your design should ensure that system indicators remain visible and that users can still
 read the time when notification cards appear on the screen.</dd>
 
diff --git a/docs/html/training/wearables/watch-faces/index.jd b/docs/html/training/wearables/watch-faces/index.jd
old mode 100644
new mode 100755
index a329fda..aac49d3
--- a/docs/html/training/wearables/watch-faces/index.jd
+++ b/docs/html/training/wearables/watch-faces/index.jd
@@ -45,9 +45,9 @@
 designs integrate with system UI elements and are power-efficient.</p>
 
 <p class="note"><strong>Note:</strong> We recommend using <a
-href="{@docRoot}sdk/index.html">Android Studio</a> for Android Wear development as
-it provides project setup, library inclusion, and packaging conveniences that aren't available
-in the Eclipse Android Developer Tools. This training assumes you are using Android Studio.</p>
+href="{@docRoot}sdk/index.html">Android Studio</a> for Android Wear development, as
+it provides project setup, library inclusion, and packaging conveniences. This training assumes
+you are using Android Studio.</p>
 
 
 <h2>Lessons</h2>
diff --git a/docs/html/training/wearables/watch-faces/performance.jd b/docs/html/training/wearables/watch-faces/performance.jd
index c2c411c..4a96545 100644
--- a/docs/html/training/wearables/watch-faces/performance.jd
+++ b/docs/html/training/wearables/watch-faces/performance.jd
@@ -15,6 +15,8 @@
 <h2>You should also read</h2>
 <ul>
   <li><a href="{@docRoot}design/wear/watchfaces.html">Watch Faces for Android Wear</a></li>
+  <li><a href="http://android-developers.blogspot.com/2014/12/making-performant-watch-face.html">
+Making a performant watch face</a></li>
 </ul>
 </div>
 </div>
diff --git a/docs/html/training/wearables/watch-faces/service.jd b/docs/html/training/wearables/watch-faces/service.jd
old mode 100644
new mode 100755
index 578e8c0..e94ee56
--- a/docs/html/training/wearables/watch-faces/service.jd
+++ b/docs/html/training/wearables/watch-faces/service.jd
@@ -87,11 +87,9 @@
 <a href="{@docRoot}reference/android/support/wearable/watchface/package-summary.html">API reference
 documentation</a> for the Wearable Support Library.</p>
 
-<h3 id="LibEclipse">Download the Wearable Support Library for Eclipse ADT</h3>
-
-<p>If you are using the ADT plugin for Eclipse, download the
-<a href="{@docRoot}shareables/training/wearable-support-lib.zip">Wearable Support Library</a> and
-include it as a dependency in your project.</p>
+<p class="note"><strong>Note:</strong> We recommend using <a
+href="{@docRoot}sdk/index.html">Android Studio</a> for Android Wear development, as
+it provides project setup, library inclusion, and packaging conveniences.</p>
 
 <h3 id="Permissions">Declare Permissions</h3>
 
diff --git a/docs/html/training/wearables/wearable-sounds.jd b/docs/html/training/wearables/wearable-sounds.jd
new file mode 100644
index 0000000..3c3c135
--- /dev/null
+++ b/docs/html/training/wearables/wearable-sounds.jd
@@ -0,0 +1,63 @@
+page.title=Using Speakers on Wearables
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>This lesson teaches you to</h2>
+<ol>
+  <li><a href="#Detect">Detect the Speaker</a></li>
+  <li><a href="#Play">Play Sounds</a></li>
+</ol>
+<h2>You should also read</h2>
+<ul>
+  <li><a href="{@docRoot}design/wear/watchfaces.html">Watch Faces for Android Wear</a></li>
+</ul>
+</div>
+</div>
+
+<p>Some Android Wear devices include speakers, enabling them to incorporate sound into their
+apps and offer an extra dimension of engagement with the user. A speaker-equipped Wear device might
+trigger a clock or timer alarm, complete with audio notification. Games on Wear become become more
+entertaining by offering not just sight, but sound.</p>
+
+<p>This page describes how apps on Wear devices running Android 6.0 (API level 23) can use
+familiar Android APIs to play sounds through the device speaker.</p>
+
+<h2 id="Detect">Detect the Speaker</h2>
+
+<p>A Wear app must first detect whether the wearable device has a speaker. In the following example,
+the app uses the {@link android.media.AudioManager#getDevices(int) getDevices() } method in
+conjunction with the value of {@link android.content.pm.PackageManager#FEATURE_AUDIO_OUTPUT} to
+confirm that the device is equipped with a speaker.</p>
+
+<pre>
+PackageManager packageManager = context.getPackageManager();
+AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
+
+// Check whether the device has a speaker.
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
+    // Check FEATURE_AUDIO_OUTPUT to guard against false positives.
+    if (!packageManager.hasSystemFeature(PackageManager.FEATURE_AUDIO_OUTPUT)) {
+        return false;
+    }
+
+    AudioDeviceInfo[] devices = audioManager.getDevices(AudioManager.GET_DEVICES_OUTPUTS);
+    for (AudioDeviceInfo device : devices) {
+        if (device.getType() == AudioDeviceInfo.TYPE_BUILTIN_SPEAKER) {
+            return true;
+        }
+    }
+}
+return false;
+</pre>
+
+<h2 id="Play">Play Sounds</h2>
+
+<p>Once you've detected the speaker, the process for playing sound on Android Wear is the
+same as for a handset or other device. For more information, see
+<a href="{@docRoot}guide/topics/media/mediaplayer.html">Media Playback</a>.</p>
+
+<p>If you also want to record audio from the microphone on the wearable, your app must also get
+permission to use the microphone. To learn more, see
+<a href="{@docRoot}training/articles/wear-permissions.html">Permissions on Android Wear.</a></p>
\ No newline at end of file
diff --git a/docs/html/tv/adt-1/index.jd b/docs/html/tv/adt-1/index.jd
index 4f62796..0b6cc235 100644
--- a/docs/html/tv/adt-1/index.jd
+++ b/docs/html/tv/adt-1/index.jd
@@ -1,6 +1,7 @@
 page.title=ADT-1 Developer Kit
 page.tags="emote","e-mote","adt"
 fullpage=1
+nonavpage=true
 
 @jd:body
 
diff --git a/docs/html/tv/adt-1/regulatory.jd b/docs/html/tv/adt-1/regulatory.jd
index f92ce3e..bd97df2 100644
--- a/docs/html/tv/adt-1/regulatory.jd
+++ b/docs/html/tv/adt-1/regulatory.jd
@@ -1,5 +1,6 @@
 page.title=Regulatory Disclosures for ADT-1
 fullpage=1
+nonavpage=true
 
 @jd:body
 
diff --git a/docs/html/tv/adt-1/safety.jd b/docs/html/tv/adt-1/safety.jd
index 79a9736..211220f 100644
--- a/docs/html/tv/adt-1/safety.jd
+++ b/docs/html/tv/adt-1/safety.jd
@@ -1,5 +1,6 @@
 page.title=Important Safety Instructions for ADT-1
 fullpage=1
+nonavpage=true
 
 @jd:body
 
diff --git a/docs/html/tv/index.jd b/docs/html/tv/index.jd
index 73b3435..7c958c0 100644
--- a/docs/html/tv/index.jd
+++ b/docs/html/tv/index.jd
@@ -7,6 +7,7 @@
 fullpage=true
 no_footer_links=true
 page.type=about
+nonavpage=true
 
 @jd:body
 
@@ -260,24 +261,6 @@
 
     </div> <!-- end .landing-rest-of-page -->
 
-    <div class="content-footer wrap" itemscope="" itemtype="http://schema.org/SiteNavigationElement">
-      <div class="layout-content-col col-16" style="padding-top:4px">
-        <style>#___plusone_0 {float:right !important;}</style>
-        <div class="g-plusone" data-size="medium"></div>
-      </div>
-    </div>
-    <div id="footer" class="wrap" style="width:940px;position:relative;top:-35px;z-index:-1">
-      <div id="copyright">
-        Except as noted, this content is
-        licensed under <a href="http://creativecommons.org/licenses/by/2.5/">
-        Creative Commons Attribution 2.5</a>. For details and
-        restrictions, see the <a href="/license.html">Content
-        License</a>.
-      </div>
-    </div>
-
-  </div> <!-- end .landing-hero-container -->
-
   <script>
   $("a.landing-down-arrow").on("click", function(e) {
     $("body").animate({
diff --git a/docs/html/wear/_book.yaml b/docs/html/wear/_book.yaml
new file mode 100644
index 0000000..35b9e2e
--- /dev/null
+++ b/docs/html/wear/_book.yaml
@@ -0,0 +1,46 @@
+toc:
+- title: Get Started
+  path: /wear/preview/start.html
+
+- title: UI Overview
+  path: /wear/design/user-interface.html
+
+- title: Design Principles
+  path: /wear/design/index.html
+
+- title: Creating Notifications for Android Wear
+  path: /wear/notifications/creating.html
+
+- title: Receiving Voice Input from a Notification
+  path: /wear/notifications/remote-input.html
+
+- title: Adding Pages to a Notification
+  path: /wear/notifications/pages.html
+
+- title: Stacking Notifications
+  path: /wear/notifications/stacks.html
+
+- title: Notification Reference
+  path: /reference/android/preview/support/package-summary.html
+  section:
+  - title: android.preview.support.v4.app
+    section:
+    - title: NotificationManagerCompat
+      path: /reference/android/preview/support/v4/app/NotificationManagerCompat.html
+  - title: android.preview.support.wearable.notifications
+    section:
+    - title: RemoteInput
+      path: /reference/android/preview/support/wearable/notifications/RemoteInput.html
+    - title: RemoteInput.Builder
+      path: /reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html
+    - title: WearableNotifications
+      path: /reference/android/preview/support/wearable/notifications/WearableNotifications.html
+    - title: WearableNotifications.Action
+      path: /reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html
+    - title: WearableNotifications.Action.Builder
+      path: /reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html
+    - title: WearableNotifications.Builder
+      path: /reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html
+
+- title: License Agreement
+  path: /wear/license.html
diff --git a/docs/html/wear/images/partners/casio.png b/docs/html/wear/images/partners/casio.png
new file mode 100644
index 0000000..41f36d8
--- /dev/null
+++ b/docs/html/wear/images/partners/casio.png
Binary files differ
diff --git a/docs/html/wear/images/partners/mobvoi.png b/docs/html/wear/images/partners/mobvoi.png
new file mode 100644
index 0000000..9a2eb4d
--- /dev/null
+++ b/docs/html/wear/images/partners/mobvoi.png
Binary files differ
diff --git a/docs/html/wear/images/partners/nb.png b/docs/html/wear/images/partners/nb.png
new file mode 100644
index 0000000..224b27e
--- /dev/null
+++ b/docs/html/wear/images/partners/nb.png
Binary files differ
diff --git a/docs/html/wear/index.jd b/docs/html/wear/index.jd
index e18ada4..62c0253 100644
--- a/docs/html/wear/index.jd
+++ b/docs/html/wear/index.jd
@@ -4,6 +4,7 @@
 no_footer_links=true
 page.type=about
 page.image=images/cards/android-wear_2x.png
+nonavpage=true
 @jd:body
 
 <style>
@@ -213,6 +214,9 @@
             <div class="col-4">
               <img src="/wear/images/partners/broadcom.png" alt="Broadcom">
             </div>
+             <div class="col-4">
+              <img src="/wear/images/partners/casio.png" alt="Casio">
+            </div>
             <div class="col-4">
               <img src="/wear/images/partners/fossil.png" alt="Fossil">
             </div>
@@ -234,9 +238,15 @@
             <div class="col-4">
               <img src="/wear/images/partners/mips.png" alt="MIPS">
             </div>
+             <div class="col-4">
+              <img src="/wear/images/partners/mobvoi.png" alt="Mobvoi">
+            </div>
             <div class="col-4">
               <img src="/wear/images/partners/motorola.png" alt="Motorola">
             </div>
+             <div class="col-4">
+              <img src="/wear/images/partners/nb.png" alt="New Balance">
+            </div>
             <div class="col-4">
               <img src="/wear/images/partners/qualcomm.png" alt="Qualcomm">
             </div>
@@ -249,6 +259,7 @@
             <div class="col-4">
               <img src="/wear/images/partners/tagheuer.png" alt="Tag Heuer">
             </div>
+
           </div>
         </div> <!-- end .wrap -->
       </div>
@@ -332,22 +343,6 @@
         </div> <!-- end .wrap -->
       </div> <!-- end .landing-section -->
     </div> <!-- end .landing-rest-of-page -->
-    <div class="content-footer wrap" itemscope="" itemtype="http://schema.org/SiteNavigationElement">
-      <div class="layout-content-col col-16" style="padding-top:4px">
-        <style>#___plusone_0 {float:right !important;}</style>
-        <div class="g-plusone" data-size="medium"></div>
-      </div>
-    </div>
-    <div id="footer" class="wrap" style="width:940px;position:relative;top:-35px;z-index:-1">
-      <div id="copyright">
-        Except as noted, this content is
-        licensed under <a href="http://creativecommons.org/licenses/by/2.5/">
-        Creative Commons Attribution 2.5</a>. For details and
-        restrictions, see the <a href="{@docRoot}license.html">Content
-        License</a>.
-      </div>
-    </div>
-  </div> <!-- end .landing-hero-container -->
 
   <script>
   $("a.landing-down-arrow").on("click", function(e) {
diff --git a/docs/image_sources/distribute/googleplay/about_developer_page_original.png b/docs/image_sources/distribute/googleplay/about_developer_page_original.png
new file mode 100644
index 0000000..4ccbfe9
--- /dev/null
+++ b/docs/image_sources/distribute/googleplay/about_developer_page_original.png
Binary files differ
diff --git a/docs/image_sources/distribute/googleplay/about_personalized_home_orig.png b/docs/image_sources/distribute/googleplay/about_personalized_home_orig.png
new file mode 100644
index 0000000..a5214d6
--- /dev/null
+++ b/docs/image_sources/distribute/googleplay/about_personalized_home_orig.png
Binary files differ
diff --git a/docs/image_sources/distribute/googleplay/about_play_store_home_original.png b/docs/image_sources/distribute/googleplay/about_play_store_home_original.png
new file mode 100644
index 0000000..3a4cba4
--- /dev/null
+++ b/docs/image_sources/distribute/googleplay/about_play_store_home_original.png
Binary files differ
diff --git a/docs/image_sources/distribute/googleplay/about_play_store_listing_original.png b/docs/image_sources/distribute/googleplay/about_play_store_listing_original.png
new file mode 100644
index 0000000..63d6e9b
--- /dev/null
+++ b/docs/image_sources/distribute/googleplay/about_play_store_listing_original.png
Binary files differ
diff --git a/docs/image_sources/distribute/googleplay/about_search_results_orig.png b/docs/image_sources/distribute/googleplay/about_search_results_orig.png
new file mode 100644
index 0000000..af775d3
--- /dev/null
+++ b/docs/image_sources/distribute/googleplay/about_search_results_orig.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/concrete-bowling-screenshot.png b/docs/image_sources/distribute/stories/concrete-bowling-screenshot.png
new file mode 100644
index 0000000..0f76df6
--- /dev/null
+++ b/docs/image_sources/distribute/stories/concrete-bowling-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/doctor-who-legacy-screenshot.png b/docs/image_sources/distribute/stories/doctor-who-legacy-screenshot.png
new file mode 100644
index 0000000..556bfcd
--- /dev/null
+++ b/docs/image_sources/distribute/stories/doctor-who-legacy-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/dots-screenshot.png b/docs/image_sources/distribute/stories/dots-screenshot.png
new file mode 100644
index 0000000..17edb12
--- /dev/null
+++ b/docs/image_sources/distribute/stories/dots-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/gameloft-asphalt8-screenshot.png b/docs/image_sources/distribute/stories/gameloft-asphalt8-screenshot.png
new file mode 100644
index 0000000..2b0c1e3
--- /dev/null
+++ b/docs/image_sources/distribute/stories/gameloft-asphalt8-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/glu-dh-screenshot_orig.png b/docs/image_sources/distribute/stories/glu-dh-screenshot_orig.png
new file mode 100644
index 0000000..a29f567
--- /dev/null
+++ b/docs/image_sources/distribute/stories/glu-dh-screenshot_orig.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/glu-eternity-warriors-screenshot.png b/docs/image_sources/distribute/stories/glu-eternity-warriors-screenshot.png
new file mode 100644
index 0000000..b41e917
--- /dev/null
+++ b/docs/image_sources/distribute/stories/glu-eternity-warriors-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/glu-tap-baseball-screenshot.png b/docs/image_sources/distribute/stories/glu-tap-baseball-screenshot.png
new file mode 100644
index 0000000..df6c8a8
--- /dev/null
+++ b/docs/image_sources/distribute/stories/glu-tap-baseball-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/hotheadgames-firefight-screenshot.png b/docs/image_sources/distribute/stories/hotheadgames-firefight-screenshot.png
new file mode 100644
index 0000000..4761715
--- /dev/null
+++ b/docs/image_sources/distribute/stories/hotheadgames-firefight-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/indian-rummy-screenshot.jpg b/docs/image_sources/distribute/stories/indian-rummy-screenshot.jpg
new file mode 100644
index 0000000..61943fc
--- /dev/null
+++ b/docs/image_sources/distribute/stories/indian-rummy-screenshot.jpg
Binary files differ
diff --git a/docs/image_sources/distribute/stories/intuit-mint-screenshot.png b/docs/image_sources/distribute/stories/intuit-mint-screenshot.png
new file mode 100644
index 0000000..39b8f11
--- /dev/null
+++ b/docs/image_sources/distribute/stories/intuit-mint-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/kongregate-adv-cap-screenshot.png b/docs/image_sources/distribute/stories/kongregate-adv-cap-screenshot.png
new file mode 100644
index 0000000..cff67dc
--- /dev/null
+++ b/docs/image_sources/distribute/stories/kongregate-adv-cap-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/kongregate-global-assault-screenshot.png b/docs/image_sources/distribute/stories/kongregate-global-assault-screenshot.png
new file mode 100644
index 0000000..d0709a3
--- /dev/null
+++ b/docs/image_sources/distribute/stories/kongregate-global-assault-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/leos-fortune-screenshot.png b/docs/image_sources/distribute/stories/leos-fortune-screenshot.png
new file mode 100644
index 0000000..d67c9af
--- /dev/null
+++ b/docs/image_sources/distribute/stories/leos-fortune-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/noodlecake-super-stickman-screenshot.png b/docs/image_sources/distribute/stories/noodlecake-super-stickman-screenshot.png
new file mode 100644
index 0000000..c1e8824
--- /dev/null
+++ b/docs/image_sources/distribute/stories/noodlecake-super-stickman-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/rememberthemilk-screenshot.png b/docs/image_sources/distribute/stories/rememberthemilk-screenshot.png
new file mode 100644
index 0000000..25d0391
--- /dev/null
+++ b/docs/image_sources/distribute/stories/rememberthemilk-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/rvappstudios-zombie-screenshot.jpg b/docs/image_sources/distribute/stories/rvappstudios-zombie-screenshot.jpg
new file mode 100644
index 0000000..e2bf6b5
--- /dev/null
+++ b/docs/image_sources/distribute/stories/rvappstudios-zombie-screenshot.jpg
Binary files differ
diff --git a/docs/image_sources/distribute/stories/sayhichat-screenshot.jpg b/docs/image_sources/distribute/stories/sayhichat-screenshot.jpg
new file mode 100644
index 0000000..b93e983
--- /dev/null
+++ b/docs/image_sources/distribute/stories/sayhichat-screenshot.jpg
Binary files differ
diff --git a/docs/image_sources/distribute/stories/tinyvillage-screenshot.png b/docs/image_sources/distribute/stories/tinyvillage-screenshot.png
new file mode 100644
index 0000000..51948b9
--- /dev/null
+++ b/docs/image_sources/distribute/stories/tinyvillage-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/two-dots-screenshot.png b/docs/image_sources/distribute/stories/two-dots-screenshot.png
new file mode 100644
index 0000000..2e34a68
--- /dev/null
+++ b/docs/image_sources/distribute/stories/two-dots-screenshot.png
Binary files differ
diff --git a/docs/image_sources/preview/features/bundles-orig.png b/docs/image_sources/preview/features/bundles-orig.png
new file mode 100644
index 0000000..298d1c0
--- /dev/null
+++ b/docs/image_sources/preview/features/bundles-orig.png
Binary files differ
diff --git a/docs/image_sources/preview/features/inline-reply_orig.png b/docs/image_sources/preview/features/inline-reply_orig.png
new file mode 100644
index 0000000..ae7cd30
--- /dev/null
+++ b/docs/image_sources/preview/features/inline-reply_orig.png
Binary files differ
diff --git a/docs/image_sources/preview/features/inline-type-reply-orig.png b/docs/image_sources/preview/features/inline-type-reply-orig.png
new file mode 100644
index 0000000..bb176f8
--- /dev/null
+++ b/docs/image_sources/preview/features/inline-type-reply-orig.png
Binary files differ
diff --git a/docs/image_sources/preview/features/mw-splitscreen-orig.png b/docs/image_sources/preview/features/mw-splitscreen-orig.png
new file mode 100644
index 0000000..658c7f9
--- /dev/null
+++ b/docs/image_sources/preview/features/mw-splitscreen-orig.png
Binary files differ
diff --git a/docs/image_sources/training/appbar/action_view.graffle b/docs/image_sources/training/appbar/action_view.graffle
new file mode 100644
index 0000000..5e35879
--- /dev/null
+++ b/docs/image_sources/training/appbar/action_view.graffle
Binary files differ
diff --git a/docs/image_sources/training/appbar/appbar_basic_fullrez.png b/docs/image_sources/training/appbar/appbar_basic_fullrez.png
new file mode 100644
index 0000000..4f596a7
--- /dev/null
+++ b/docs/image_sources/training/appbar/appbar_basic_fullrez.png
Binary files differ
diff --git a/docs/image_sources/training/appbar/appbar_sheets_full.png b/docs/image_sources/training/appbar/appbar_sheets_full.png
new file mode 100644
index 0000000..c662a6d
--- /dev/null
+++ b/docs/image_sources/training/appbar/appbar_sheets_full.png
Binary files differ
diff --git a/docs/image_sources/training/appbar/appbar_with_button_full.png b/docs/image_sources/training/appbar/appbar_with_button_full.png
new file mode 100644
index 0000000..802e29e
--- /dev/null
+++ b/docs/image_sources/training/appbar/appbar_with_button_full.png
Binary files differ
diff --git a/docs/image_sources/training/enterprise/app_restrictions_diagram.txt b/docs/image_sources/training/enterprise/app_restrictions_diagram.txt
new file mode 100644
index 0000000..19fbfc8
--- /dev/null
+++ b/docs/image_sources/training/enterprise/app_restrictions_diagram.txt
@@ -0,0 +1,5 @@
+The source file for app_restrictions_diagram.png is a
+Google Doc owned by Matt Werner, mattwerner@google.com.
+You can access the diagram in this doc:
+
+https://docs.google.com/document/d/1qffQfciilSYHHJxpWCs-VEsANnbIt69Zz1qmQuGe0Wc/edit
\ No newline at end of file
diff --git a/docs/image_sources/training/enterprise/pinning_vs_locktaskmode.txt b/docs/image_sources/training/enterprise/pinning_vs_locktaskmode.txt
new file mode 100644
index 0000000..0c1ef37
--- /dev/null
+++ b/docs/image_sources/training/enterprise/pinning_vs_locktaskmode.txt
@@ -0,0 +1,5 @@
+The source file for pinning_vs_locktaskmode.png is a
+Google Doc owned by Matt Werner, mattwerner@google.com.
+You can access the diagram in this doc:
+
+https://docs.google.com/document/d/1boC0uWSPxEDNGt6iCC6N3QxrvP1siwoZLXdD379Gmzs/edit
\ No newline at end of file
diff --git a/docs/image_sources/training/permissions/request_permission_dialog_original.png b/docs/image_sources/training/permissions/request_permission_dialog_original.png
new file mode 100644
index 0000000..49bff5b
--- /dev/null
+++ b/docs/image_sources/training/permissions/request_permission_dialog_original.png
Binary files differ
diff --git a/docs/image_sources/training/snackbar/snackbar_drive_original.png b/docs/image_sources/training/snackbar/snackbar_drive_original.png
new file mode 100644
index 0000000..7094a11
--- /dev/null
+++ b/docs/image_sources/training/snackbar/snackbar_drive_original.png
Binary files differ
diff --git a/docs/image_sources/training/snackbar/snackbar_undo_action_original.png b/docs/image_sources/training/snackbar/snackbar_undo_action_original.png
new file mode 100644
index 0000000..ec50c13
--- /dev/null
+++ b/docs/image_sources/training/snackbar/snackbar_undo_action_original.png
Binary files differ
diff --git a/docs/image_sources/training/tv/playback/guided-step-screen-orig.png b/docs/image_sources/training/tv/playback/guided-step-screen-orig.png
new file mode 100644
index 0000000..c39099c
--- /dev/null
+++ b/docs/image_sources/training/tv/playback/guided-step-screen-orig.png
Binary files differ
diff --git a/graphics/java/android/graphics/Bitmap.java b/graphics/java/android/graphics/Bitmap.java
index 169ef0b..ac2a88a 100644
--- a/graphics/java/android/graphics/Bitmap.java
+++ b/graphics/java/android/graphics/Bitmap.java
@@ -25,14 +25,14 @@
 import android.util.DisplayMetrics;
 import android.util.Log;
 
+import libcore.util.NativeAllocationRegistry;
+
 import java.io.OutputStream;
 import java.nio.Buffer;
 import java.nio.ByteBuffer;
 import java.nio.IntBuffer;
 import java.nio.ShortBuffer;
 
-import libcore.util.NativeAllocationRegistry;
-
 public final class Bitmap implements Parcelable {
     private static final String TAG = "Bitmap";
 
@@ -614,6 +614,22 @@
     }
 
     /**
+     * Creates a new immutable bitmap backed by ashmem which can efficiently
+     * be passed between processes.
+     *
+     * @hide
+     */
+    public Bitmap createAshmemBitmap(Config config) {
+        checkRecycled("Can't copy a recycled bitmap");
+        Bitmap b = nativeCopyAshmemConfig(mNativePtr, config.nativeInt);
+        if (b != null) {
+            b.setPremultiplied(mRequestPremultiplied);
+            b.mDensity = mDensity;
+        }
+        return b;
+    }
+
+    /**
      * Creates a new bitmap, scaled from an existing bitmap, when possible. If the
      * specified width and height are the same as the current width and height of
      * the source bitmap, the source bitmap is returned and no new bitmap is
@@ -1675,6 +1691,7 @@
     private static native Bitmap nativeCopy(long nativeSrcBitmap, int nativeConfig,
                                             boolean isMutable);
     private static native Bitmap nativeCopyAshmem(long nativeSrcBitmap);
+    private static native Bitmap nativeCopyAshmemConfig(long nativeSrcBitmap, int nativeConfig);
     private static native long nativeGetNativeFinalizer();
     private static native boolean nativeRecycle(long nativeBitmap);
     private static native void nativeReconfigure(long nativeBitmap, int width, int height,
diff --git a/graphics/java/android/graphics/drawable/AnimatedVectorDrawable.java b/graphics/java/android/graphics/drawable/AnimatedVectorDrawable.java
index 35385eb..6762bea 100644
--- a/graphics/java/android/graphics/drawable/AnimatedVectorDrawable.java
+++ b/graphics/java/android/graphics/drawable/AnimatedVectorDrawable.java
@@ -310,6 +310,15 @@
 
     @Override
     public boolean setVisible(boolean visible, boolean restart) {
+        if (mAnimatorSet.isInfinite() && mAnimatorSet.isStarted()) {
+            if (visible) {
+                // Resume the infinite animation when the drawable becomes visible again.
+                mAnimatorSet.resume();
+            } else {
+                // Pause the infinite animation once the drawable is no longer visible.
+                mAnimatorSet.pause();
+            }
+        }
         mAnimatedVectorState.mVectorDrawable.setVisible(visible, restart);
         return super.setVisible(visible, restart);
     }
@@ -815,6 +824,9 @@
         void onDraw(Canvas canvas);
         boolean isStarted();
         boolean isRunning();
+        boolean isInfinite();
+        void pause();
+        void resume();
     }
 
     private static class VectorDrawableAnimatorUI implements VectorDrawableAnimator {
@@ -825,6 +837,7 @@
         // Caching the listener in the case when listener operation is called before the mSet is
         // setup by init().
         private ArrayList<AnimatorListener> mListenerArray = null;
+        private boolean mIsInfinite = false;
 
         VectorDrawableAnimatorUI(@NonNull AnimatedVectorDrawable drawable) {
             mDrawable = drawable;
@@ -840,6 +853,7 @@
             // Keep a deep copy of the set, such that set can be still be constantly representing
             // the static content from XML file.
             mSet = set.clone();
+            mIsInfinite = mSet.getTotalDuration() == Animator.DURATION_INFINITE;
 
             // If there are listeners added before calling init(), now they should be setup.
             if (mListenerArray != null && !mListenerArray.isEmpty()) {
@@ -934,6 +948,27 @@
             return mSet != null && mSet.isRunning();
         }
 
+        @Override
+        public boolean isInfinite() {
+            return mIsInfinite;
+        }
+
+        @Override
+        public void pause() {
+            if (mSet == null) {
+                return;
+            }
+            mSet.pause();
+        }
+
+        @Override
+        public void resume() {
+            if (mSet == null) {
+                return;
+            }
+            mSet.resume();
+        }
+
         private void invalidateOwningView() {
             mDrawable.invalidateSelf();
         }
@@ -956,6 +991,7 @@
         private boolean mStarted = false;
         private boolean mInitialized = false;
         private boolean mIsReversible = false;
+        private boolean mIsInfinite = false;
         // This needs to be set before parsing starts.
         private boolean mShouldIgnoreInvalidAnim;
         // TODO: Consider using NativeAllocationRegistery to track native allocation
@@ -983,6 +1019,7 @@
             mShouldIgnoreInvalidAnim = shouldIgnoreInvalidAnimation();
             parseAnimatorSet(set, 0);
             mInitialized = true;
+            mIsInfinite = set.getTotalDuration() == Animator.DURATION_INFINITE;
 
             // Check reversible.
             mIsReversible = true;
@@ -1408,6 +1445,21 @@
             }
         }
 
+        @Override
+        public boolean isInfinite() {
+            return mIsInfinite;
+        }
+
+        @Override
+        public void pause() {
+            // TODO: Implement pause for Animator On RT.
+        }
+
+        @Override
+        public void resume() {
+            // TODO: Implement resume for Animator On RT.
+        }
+
         private void onAnimationEnd(int listenerId) {
             if (listenerId != mLastListenerId) {
                 return;
diff --git a/keystore/java/android/security/keystore/KeyGenParameterSpec.java b/keystore/java/android/security/keystore/KeyGenParameterSpec.java
index 127d756..c3dd223 100644
--- a/keystore/java/android/security/keystore/KeyGenParameterSpec.java
+++ b/keystore/java/android/security/keystore/KeyGenParameterSpec.java
@@ -41,9 +41,9 @@
  * {@link KeyGenerator} of the <a href="{@docRoot}training/articles/keystore.html">Android Keystore
  * system</a>. The spec determines authorized uses of the key, such as whether user authentication
  * is required for using the key, what operations are authorized (e.g., signing, but not
- * decryption) and with what parameters (e.g., only with a particular padding scheme or digest), the
- * key's validity start and end dates. Key use authorizations expressed in the spec apply only to
- * secret keys and private keys -- public keys can be used for any supported operations.
+ * decryption), with what parameters (e.g., only with a particular padding scheme or digest), and
+ * the key's validity start and end dates. Key use authorizations expressed in the spec apply
+ * only to secret keys and private keys -- public keys can be used for any supported operations.
  *
  * <p>To generate an asymmetric key pair or a symmetric key, create an instance of this class using
  * the {@link Builder}, initialize a {@code KeyPairGenerator} or a {@code KeyGenerator} of the
@@ -91,13 +91,22 @@
  *
  * <p>Instances of this class are immutable.
  *
+ * <p><h3>Known issues</h3>
+ * A known bug in Android 6.0 (API Level 23) causes user authentication-related authorizations to be
+ * enforced even for public keys. To work around this issue extract the public key material to use
+ * outside of Android Keystore. For example:
+ * <pre> {@code
+ * PublicKey unrestrictedPublicKey =
+ *         KeyFactory.getInstance(publicKey.getAlgorithm()).generatePublic(
+ *                 new X509EncodedKeySpec(publicKey.getEncoded()));
+ * }</pre>
+ *
  * <p><h3>Example: NIST P-256 EC key pair for signing/verification using ECDSA</h3>
  * This example illustrates how to generate a NIST P-256 (aka secp256r1 aka prime256v1) EC key pair
  * in the Android KeyStore system under alias {@code key1} where the private key is authorized to be
  * used only for signing using SHA-256, SHA-384, or SHA-512 digest and only if the user has been
- * authenticated within the last five minutes. The use of public key is unrestricted, thus
- * permitting signature verification using any padding schemes and digests, and without user
- * authentication.
+ * authenticated within the last five minutes. The use of the public key is unrestricted (See Known
+ * Issues).
  * <pre> {@code
  * KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance(
  *         KeyProperties.KEY_ALGORITHM_EC, "AndroidKeyStore");
@@ -129,8 +138,7 @@
  * <p><h3>Example: RSA key pair for signing/verification using RSA-PSS</h3>
  * This example illustrates how to generate an RSA key pair in the Android KeyStore system under
  * alias {@code key1} authorized to be used only for signing using the RSA-PSS signature padding
- * scheme with SHA-256 or SHA-512 digests. The use of public key is unrestricted, thus permitting
- * signature verification using any padding schemes and digests.
+ * scheme with SHA-256 or SHA-512 digests. The use of the public key is unrestricted.
  * <pre> {@code
  * KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance(
  *         KeyProperties.KEY_ALGORITHM_RSA, "AndroidKeyStore");
@@ -156,8 +164,8 @@
  * <p><h3>Example: RSA key pair for encryption/decryption using RSA OAEP</h3>
  * This example illustrates how to generate an RSA key pair in the Android KeyStore system under
  * alias {@code key1} where the private key is authorized to be used only for decryption using RSA
- * OAEP encryption padding scheme with SHA-256 or SHA-512 digests. The use of public key is
- * unrestricted, thus permitting encryption using any padding schemes and digests.
+ * OAEP encryption padding scheme with SHA-256 or SHA-512 digests. The use of the public key is
+ * unrestricted.
  * <pre> {@code
  * KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance(
  *         KeyProperties.KEY_ALGORITHM_RSA, "AndroidKeyStore");
diff --git a/keystore/java/android/security/keystore/KeyProtection.java b/keystore/java/android/security/keystore/KeyProtection.java
index fa57bdb..a5fb833 100644
--- a/keystore/java/android/security/keystore/KeyProtection.java
+++ b/keystore/java/android/security/keystore/KeyProtection.java
@@ -36,7 +36,7 @@
  * <a href="{@docRoot}training/articles/keystore.html">Android Keystore system</a>. This class
  * specifies authorized uses of the imported key, such as whether user authentication is required
  * for using the key, what operations the key is authorized for (e.g., decryption, but not signing)
- * and with what parameters (e.g., only with a particular padding scheme or digest), the key's and
+ * with what parameters (e.g., only with a particular padding scheme or digest), and the key's
  * validity start and end dates. Key use authorizations expressed in this class apply only to secret
  * keys and private keys -- public keys can be used for any supported operations.
  *
@@ -61,6 +61,16 @@
  *
  * <p>Instances of this class are immutable.
  *
+ * <p><h3>Known issues</h3>
+ * A known bug in Android 6.0 (API Level 23) causes user authentication-related authorizations to be
+ * enforced even for public keys. To work around this issue extract the public key material to use
+ * outside of Android Keystore. For example:
+ * <pre> {@code
+ * PublicKey unrestrictedPublicKey =
+ *         KeyFactory.getInstance(publicKey.getAlgorithm()).generatePublic(
+ *                 new X509EncodedKeySpec(publicKey.getEncoded()));
+ * }</pre>
+ *
  * <p><h3>Example: AES key for encryption/decryption in GCM mode</h3>
  * This example illustrates how to import an AES key into the Android KeyStore under alias
  * {@code key1} authorized to be used only for encryption/decryption in GCM mode with no padding.
@@ -111,9 +121,9 @@
  * <p><h3>Example: EC key pair for signing/verification using ECDSA</h3>
  * This example illustrates how to import an EC key pair into the Android KeyStore under alias
  * {@code key2} with the private key authorized to be used only for signing with SHA-256 or SHA-512
- * digests. The use of public key is unrestricted, thus permitting signature verification using any
- * digests. Both the private and the public key must export their key material via
- * {@link Key#getEncoded()} in {@code PKCS#8} and {@code X.509} format respectively.
+ * digests. The use of the public key is unrestricted. Both the private and the public key must
+ * export their key material via {@link Key#getEncoded()} in {@code PKCS#8} and {@code X.509} format
+ * respectively.
  * <pre> {@code
  * PrivateKey privateKey = ...;   // EC private key
  * Certificate[] certChain = ...; // Certificate chain with the first certificate
@@ -141,8 +151,7 @@
  * This example illustrates how to import an RSA key pair into the Android KeyStore under alias
  * {@code key2} with the private key authorized to be used only for signing using the PKCS#1
  * signature padding scheme with SHA-256 digest and only if the user has been authenticated within
- * the last ten minutes. The use of public key is unrestricted, thus permitting signature
- * verification using any padding schemes and digests, and without user authentication. Both the
+ * the last ten minutes. The use of the public key is unrestricted (see Known Issues). Both the
  * private and the public key must export their key material via {@link Key#getEncoded()} in
  * {@code PKCS#8} and {@code X.509} format respectively.
  * <pre> {@code
diff --git a/libs/androidfw/ResourceTypes.cpp b/libs/androidfw/ResourceTypes.cpp
index 15cb684..c3dfb89 100644
--- a/libs/androidfw/ResourceTypes.cpp
+++ b/libs/androidfw/ResourceTypes.cpp
@@ -562,7 +562,7 @@
 
         if ((mHeader->flags&ResStringPool_header::UTF8_FLAG &&
                 ((uint8_t*)mStrings)[mStringPoolSize-1] != 0) ||
-                (!mHeader->flags&ResStringPool_header::UTF8_FLAG &&
+                (!(mHeader->flags&ResStringPool_header::UTF8_FLAG) &&
                 ((uint16_t*)mStrings)[mStringPoolSize-1] != 0)) {
             ALOGW("Bad string block: last string is not 0-terminated\n");
             return (mError=BAD_TYPE);
diff --git a/libs/hwui/Android.mk b/libs/hwui/Android.mk
index 717a1e6..8857c41 100644
--- a/libs/hwui/Android.mk
+++ b/libs/hwui/Android.mk
@@ -7,7 +7,7 @@
 # Enables fine-grained GLES error checking
 # If set to true, every GLES call is wrapped & error checked
 # Has moderate overhead
-HWUI_ENABLE_OPENGL_VALIDATION := true
+HWUI_ENABLE_OPENGL_VALIDATION := false
 
 hwui_src_files := \
     font/CacheTexture.cpp \
@@ -247,6 +247,7 @@
     tests/unit/DamageAccumulatorTests.cpp \
     tests/unit/DeviceInfoTests.cpp \
     tests/unit/FatVectorTests.cpp \
+    tests/unit/FontRendererTests.cpp \
     tests/unit/GlopBuilderTests.cpp \
     tests/unit/GpuMemoryTrackerTests.cpp \
     tests/unit/GradientCacheTests.cpp \
diff --git a/libs/hwui/DisplayList.cpp b/libs/hwui/DisplayList.cpp
index 181b343..b572bda 100644
--- a/libs/hwui/DisplayList.cpp
+++ b/libs/hwui/DisplayList.cpp
@@ -73,6 +73,12 @@
         delete path;
     }
 
+    for (auto& iter : functors) {
+        if (iter.listener) {
+            iter.listener->onGlFunctorReleased(iter.functor);
+        }
+    }
+
     patchResources.clear();
     pathResources.clear();
     paints.clear();
diff --git a/libs/hwui/DisplayList.h b/libs/hwui/DisplayList.h
index aba5d4b..5b3227b 100644
--- a/libs/hwui/DisplayList.h
+++ b/libs/hwui/DisplayList.h
@@ -35,6 +35,7 @@
 #include "Debug.h"
 #include "CanvasProperty.h"
 #include "DeferredDisplayList.h"
+#include "GlFunctorLifecycleListener.h"
 #include "Matrix.h"
 #include "RenderProperties.h"
 
@@ -119,6 +120,11 @@
     virtual void operator ()() {}
 };
 
+struct FunctorContainer {
+    Functor* functor;
+    GlFunctorLifecycleListener* listener;
+};
+
 /**
  * Data structure that holds the list of commands used in display list stream
  */
@@ -154,7 +160,7 @@
     const LsaVector<NodeOpType*>& getChildren() const { return children; }
 
     const LsaVector<const SkBitmap*>& getBitmapResources() const { return bitmapResources; }
-    const LsaVector<Functor*>& getFunctors() const { return functors; }
+    const LsaVector<FunctorContainer>& getFunctors() const { return functors; }
     const LsaVector<PushStagingFunctor*>& getPushStagingFunctors() { return pushStagingFunctors; }
 
     size_t addChild(NodeOpType* childOp);
@@ -195,7 +201,7 @@
     LsaVector< sp<VirtualLightRefBase> > referenceHolders;
 
     // List of functors
-    LsaVector<Functor*> functors;
+    LsaVector<FunctorContainer> functors;
 
     // List of functors that need to be notified of pushStaging. Note that this list gets nothing
     // but a callback during sync DisplayList, unlike the list of functors defined above, which
diff --git a/libs/hwui/DisplayListCanvas.cpp b/libs/hwui/DisplayListCanvas.cpp
index c6e92ab..ca968ce 100644
--- a/libs/hwui/DisplayListCanvas.cpp
+++ b/libs/hwui/DisplayListCanvas.cpp
@@ -81,9 +81,11 @@
     return displayList;
 }
 
-void DisplayListCanvas::callDrawGLFunction(Functor *functor) {
+void DisplayListCanvas::callDrawGLFunction(Functor* functor,
+        GlFunctorLifecycleListener* listener) {
     addDrawOp(new (alloc()) DrawFunctorOp(functor));
-    mDisplayList->functors.push_back(functor);
+    mDisplayList->functors.push_back({functor, listener});
+    mDisplayList->ref(listener);
 }
 
 SkCanvas* DisplayListCanvas::asSkCanvas() {
diff --git a/libs/hwui/DisplayListCanvas.h b/libs/hwui/DisplayListCanvas.h
index d6a5794..664f79e 100644
--- a/libs/hwui/DisplayListCanvas.h
+++ b/libs/hwui/DisplayListCanvas.h
@@ -93,7 +93,8 @@
 // ----------------------------------------------------------------------------
     virtual void drawLayer(DeferredLayerUpdater* layerHandle) override;
     virtual void drawRenderNode(RenderNode* renderNode) override;
-    virtual void callDrawGLFunction(Functor* functor) override;
+    virtual void callDrawGLFunction(Functor* functor,
+            GlFunctorLifecycleListener* listener) override;
 
 // ----------------------------------------------------------------------------
 // CanvasStateClient interface
diff --git a/libs/hwui/FontRenderer.cpp b/libs/hwui/FontRenderer.cpp
index 1b618c6..276c18d 100644
--- a/libs/hwui/FontRenderer.cpp
+++ b/libs/hwui/FontRenderer.cpp
@@ -689,7 +689,7 @@
 void FontRenderer::blurImage(uint8_t** image, int32_t width, int32_t height, float radius) {
     uint32_t intRadius = Blur::convertRadiusToInt(radius);
 #ifdef ANDROID_ENABLE_RENDERSCRIPT
-    if (width * height * intRadius >= RS_MIN_INPUT_CUTOFF) {
+    if (width * height * intRadius >= RS_MIN_INPUT_CUTOFF && radius <= 25.0f) {
         uint8_t* outImage = (uint8_t*) memalign(RS_CPU_ALLOCATION_ALIGNMENT, width * height);
 
         if (mRs == nullptr) {
diff --git a/libs/hwui/FrameBuilder.cpp b/libs/hwui/FrameBuilder.cpp
index 6fc74a5..502f027 100644
--- a/libs/hwui/FrameBuilder.cpp
+++ b/libs/hwui/FrameBuilder.cpp
@@ -31,18 +31,16 @@
 namespace android {
 namespace uirenderer {
 
-FrameBuilder::FrameBuilder(const LayerUpdateQueue& layers, const SkRect& clip,
+FrameBuilder::FrameBuilder(const SkRect& clip,
         uint32_t viewportWidth, uint32_t viewportHeight,
-        const std::vector< sp<RenderNode> >& nodes,
-        const LightGeometry& lightGeometry, const Rect &contentDrawBounds, Caches& caches)
-        : mCanvasState(*this)
+        const LightGeometry& lightGeometry, Caches& caches)
+        : mStdAllocator(mAllocator)
+        , mLayerBuilders(mStdAllocator)
+        , mLayerStack(mStdAllocator)
+        , mCanvasState(*this)
         , mCaches(caches)
         , mLightRadius(lightGeometry.radius)
-        , mDrawFbo0(!nodes.empty()) {
-    ATRACE_NAME("prepare drawing commands");
-
-    mLayerBuilders.reserve(layers.entries().size());
-    mLayerStack.reserve(layers.entries().size());
+        , mDrawFbo0(true) {
 
     // Prepare to defer Fbo0
     auto fbo0 = mAllocator.create<LayerBuilder>(viewportWidth, viewportHeight, Rect(clip));
@@ -51,7 +49,31 @@
     mCanvasState.initializeSaveStack(viewportWidth, viewportHeight,
             clip.fLeft, clip.fTop, clip.fRight, clip.fBottom,
             lightGeometry.center);
+}
 
+FrameBuilder::FrameBuilder(const LayerUpdateQueue& layers,
+        const LightGeometry& lightGeometry, Caches& caches)
+        : mStdAllocator(mAllocator)
+        , mLayerBuilders(mStdAllocator)
+        , mLayerStack(mStdAllocator)
+        , mCanvasState(*this)
+        , mCaches(caches)
+        , mLightRadius(lightGeometry.radius)
+        , mDrawFbo0(false) {
+    // TODO: remove, with each layer on its own save stack
+
+    // Prepare to defer Fbo0 (which will be empty)
+    auto fbo0 = mAllocator.create<LayerBuilder>(1, 1, Rect(1, 1));
+    mLayerBuilders.push_back(fbo0);
+    mLayerStack.push_back(0);
+    mCanvasState.initializeSaveStack(1, 1,
+            0, 0, 1, 1,
+            lightGeometry.center);
+
+    deferLayers(layers);
+}
+
+void FrameBuilder::deferLayers(const LayerUpdateQueue& layers) {
     // Render all layers to be updated, in order. Defer in reverse order, so that they'll be
     // updated in the order they're passed in (mLayerBuilders are issued to Renderer in reverse)
     for (int i = layers.entries().size() - 1; i >= 0; i--) {
@@ -76,10 +98,45 @@
             restoreForLayer();
         }
     }
+}
 
+void FrameBuilder::deferRenderNode(RenderNode& renderNode) {
+    renderNode.computeOrdering();
+
+    mCanvasState.save(SaveFlags::MatrixClip);
+    deferNodePropsAndOps(renderNode);
+    mCanvasState.restore();
+}
+
+void FrameBuilder::deferRenderNode(float tx, float ty, Rect clipRect, RenderNode& renderNode) {
+    renderNode.computeOrdering();
+
+    mCanvasState.save(SaveFlags::MatrixClip);
+    mCanvasState.translate(tx, ty);
+    mCanvasState.clipRect(clipRect.left, clipRect.top, clipRect.right, clipRect.bottom,
+            SkRegion::kIntersect_Op);
+    deferNodePropsAndOps(renderNode);
+    mCanvasState.restore();
+}
+
+static Rect nodeBounds(RenderNode& node) {
+    auto& props = node.properties();
+    return Rect(props.getLeft(), props.getTop(),
+            props.getRight(), props.getBottom());
+}
+
+void FrameBuilder::deferRenderNodeScene(const std::vector< sp<RenderNode> >& nodes,
+        const Rect& contentDrawBounds) {
+    if (nodes.size() < 1) return;
+    if (nodes.size() == 1) {
+        if (!nodes[0]->nothingToDraw()) {
+            deferRenderNode(*nodes[0]);
+        }
+        return;
+    }
     // It there are multiple render nodes, they are laid out as follows:
     // #0 - backdrop (content + caption)
-    // #1 - content (positioned at (0,0) and clipped to - its bounds mContentDrawBounds)
+    // #1 - content (local bounds are at (0,0), will be translated and clipped to backdrop)
     // #2 - additional overlay nodes
     // Usually the backdrop cannot be seen since it will be entirely covered by the content. While
     // resizing however it might become partially visible. The following render loop will crop the
@@ -88,45 +145,52 @@
     //
     // Additional nodes will be drawn on top with no particular clipping semantics.
 
-    // The bounds of the backdrop against which the content should be clipped.
-    Rect backdropBounds = contentDrawBounds;
     // Usually the contents bounds should be mContentDrawBounds - however - we will
     // move it towards the fixed edge to give it a more stable appearance (for the moment).
     // If there is no content bounds we ignore the layering as stated above and start with 2.
-    int layer = (contentDrawBounds.isEmpty() || nodes.size() == 1) ? 2 : 0;
 
-    for (const sp<RenderNode>& node : nodes) {
-        if (node->nothingToDraw()) continue;
-        node->computeOrdering();
-        int count = mCanvasState.save(SaveFlags::MatrixClip);
+    // Backdrop bounds in render target space
+    const Rect backdrop = nodeBounds(*nodes[0]);
 
-        if (layer == 0) {
-            const RenderProperties& properties = node->properties();
-            Rect targetBounds(properties.getLeft(), properties.getTop(),
-                              properties.getRight(), properties.getBottom());
-            // Move the content bounds towards the fixed corner of the backdrop.
-            const int x = targetBounds.left;
-            const int y = targetBounds.top;
-            // Remember the intersection of the target bounds and the intersection bounds against
-            // which we have to crop the content.
-            backdropBounds.set(x, y, x + backdropBounds.getWidth(), y + backdropBounds.getHeight());
-            backdropBounds.doIntersect(targetBounds);
-        } else if (layer == 1) {
-            // We shift and clip the content to match its final location in the window.
-            const float left = contentDrawBounds.left;
-            const float top = contentDrawBounds.top;
-            const float dx = backdropBounds.left - left;
-            const float dy = backdropBounds.top - top;
-            const float width = backdropBounds.getWidth();
-            const float height = backdropBounds.getHeight();
-            mCanvasState.translate(dx, dy);
-            // It gets cropped against the bounds of the backdrop to stay inside.
-            mCanvasState.clipRect(left, top, left + width, top + height, SkRegion::kIntersect_Op);
+    // Bounds that content will fill in render target space (note content node bounds may be bigger)
+    Rect content(contentDrawBounds.getWidth(), contentDrawBounds.getHeight());
+    content.translate(backdrop.left, backdrop.top);
+    if (!content.contains(backdrop) && !nodes[0]->nothingToDraw()) {
+        // Content doesn't entirely overlap backdrop, so fill around content (right/bottom)
+
+        // Note: in the future, if content doesn't snap to backdrop's left/top, this may need to
+        // also fill left/top. Currently, both 2up and freeform position content at the top/left of
+        // the backdrop, so this isn't necessary.
+        if (content.right < backdrop.right) {
+            // draw backdrop to right side of content
+            deferRenderNode(0, 0, Rect(content.right, backdrop.top,
+                    backdrop.right, backdrop.bottom), *nodes[0]);
         }
+        if (content.bottom < backdrop.bottom) {
+            // draw backdrop to bottom of content
+            // Note: bottom fill uses content left/right, to avoid overdrawing left/right fill
+            deferRenderNode(0, 0, Rect(content.left, content.bottom,
+                    content.right, backdrop.bottom), *nodes[0]);
+        }
+    }
 
-        deferNodePropsAndOps(*node);
-        mCanvasState.restoreToCount(count);
-        layer++;
+    if (!backdrop.isEmpty()) {
+        // content node translation to catch up with backdrop
+        float dx = contentDrawBounds.left - backdrop.left;
+        float dy = contentDrawBounds.top - backdrop.top;
+
+        Rect contentLocalClip = backdrop;
+        contentLocalClip.translate(dx, dy);
+        deferRenderNode(-dx, -dy, contentLocalClip, *nodes[1]);
+    } else {
+        deferRenderNode(*nodes[1]);
+    }
+
+    // remaining overlay nodes, simply defer
+    for (size_t index = 2; index < nodes.size(); index++) {
+        if (!nodes[index]->nothingToDraw()) {
+            deferRenderNode(*nodes[index]);
+        }
     }
 }
 
diff --git a/libs/hwui/FrameBuilder.h b/libs/hwui/FrameBuilder.h
index a6fd761..b915443 100644
--- a/libs/hwui/FrameBuilder.h
+++ b/libs/hwui/FrameBuilder.h
@@ -37,8 +37,8 @@
 class Rect;
 
 /**
- * Traverses all of the drawing commands from the layers and RenderNodes passed into it, preparing
- * them to be rendered.
+ * Processes, optimizes, and stores rendering commands from RenderNodes and
+ * LayerUpdateQueue, building content needed to render a frame.
  *
  * Resolves final drawing state for each operation (including clip, alpha and matrix), and then
  * reorder and merge each op as it is resolved for drawing efficiency. Each layer of content (either
@@ -60,21 +60,21 @@
         float radius;
     };
 
-    // TODO: remove
-    FrameBuilder(const LayerUpdateQueue& layers, const SkRect& clip,
+    FrameBuilder(const SkRect& clip,
             uint32_t viewportWidth, uint32_t viewportHeight,
-            const std::vector< sp<RenderNode> >& nodes,
-            const LightGeometry& lightGeometry,
-            Caches& caches)
-            : FrameBuilder(layers, clip, viewportWidth, viewportHeight,
-                    nodes, lightGeometry, Rect(), caches) {}
+            const LightGeometry& lightGeometry, Caches& caches);
 
-    FrameBuilder(const LayerUpdateQueue& layers, const SkRect& clip,
-            uint32_t viewportWidth, uint32_t viewportHeight,
-            const std::vector< sp<RenderNode> >& nodes,
-            const LightGeometry& lightGeometry,
-            const Rect &contentDrawBounds,
-            Caches& caches);
+    FrameBuilder(const LayerUpdateQueue& layerUpdateQueue,
+            const LightGeometry& lightGeometry, Caches& caches);
+
+    void deferLayers(const LayerUpdateQueue& layers);
+
+    void deferRenderNode(RenderNode& renderNode);
+
+    void deferRenderNode(float tx, float ty, Rect clipRect, RenderNode& renderNode);
+
+    void deferRenderNodeScene(const std::vector< sp<RenderNode> >& nodes,
+            const Rect& contentDrawBounds);
 
     virtual ~FrameBuilder() {}
 
@@ -223,8 +223,12 @@
     MAP_DEFERRABLE_OPS(X)
 #undef X
 
+    // contains single-frame objects, such as BakedOpStates, LayerBuilders, Batches
+    LinearAllocator mAllocator;
+    LinearStdAllocator<void*> mStdAllocator;
+
     // List of every deferred layer's render state. Replayed in reverse order to render a frame.
-    std::vector<LayerBuilder*> mLayerBuilders;
+    LsaVector<LayerBuilder*> mLayerBuilders;
 
     /*
      * Stack of indices within mLayerBuilders representing currently active layers. If drawing
@@ -238,7 +242,7 @@
      * won't be in mLayerStack. This is because it can be replayed, but can't have any more drawing
      * ops added to it.
     */
-    std::vector<size_t> mLayerStack;
+    LsaVector<size_t> mLayerStack;
 
     CanvasState mCanvasState;
 
@@ -246,9 +250,6 @@
 
     float mLightRadius;
 
-    // contains single-frame objects, such as BakedOpStates, LayerBuilders, Batches
-    LinearAllocator mAllocator;
-
     const bool mDrawFbo0;
 };
 
diff --git a/libs/hwui/GlFunctorLifecycleListener.h b/libs/hwui/GlFunctorLifecycleListener.h
new file mode 100644
index 0000000..357090e
--- /dev/null
+++ b/libs/hwui/GlFunctorLifecycleListener.h
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#pragma once
+
+#include <utils/Functor.h>
+#include <utils/RefBase.h>
+
+namespace android {
+namespace uirenderer {
+
+class GlFunctorLifecycleListener : public VirtualLightRefBase {
+public:
+    virtual ~GlFunctorLifecycleListener() {}
+    virtual void onGlFunctorReleased(Functor* functor) = 0;
+};
+
+}; // namespace uirenderer
+}; // namespace android
diff --git a/libs/hwui/GlopBuilder.cpp b/libs/hwui/GlopBuilder.cpp
index 7d4f410..fdbe76a 100644
--- a/libs/hwui/GlopBuilder.cpp
+++ b/libs/hwui/GlopBuilder.cpp
@@ -471,6 +471,21 @@
     return *this;
 }
 
+GlopBuilder& GlopBuilder::setFillExternalTexture(Texture& texture) {
+    TRIGGER_STAGE(kFillStage);
+    REQUIRE_STAGES(kMeshStage | kRoundRectClipStage);
+
+    mOutGlop->fill.texture = { &texture,
+            GL_TEXTURE_EXTERNAL_OES, GL_LINEAR, GL_CLAMP_TO_EDGE,
+            nullptr };
+
+    setFill(SK_ColorWHITE, 1.0f, SkXfermode::kSrc_Mode, Blend::ModeOrderSwap::NoSwap,
+            nullptr, nullptr);
+
+    mDescription.modulate = mOutGlop->fill.color.a < 1.0f;
+    return *this;
+}
+
 ////////////////////////////////////////////////////////////////////////////////
 // Transform
 ////////////////////////////////////////////////////////////////////////////////
diff --git a/libs/hwui/GlopBuilder.h b/libs/hwui/GlopBuilder.h
index 6e5797d..b6c186d 100644
--- a/libs/hwui/GlopBuilder.h
+++ b/libs/hwui/GlopBuilder.h
@@ -70,6 +70,10 @@
     GlopBuilder& setFillLayer(Texture& texture, const SkColorFilter* colorFilter,
             float alpha, SkXfermode::Mode mode, Blend::ModeOrderSwap modeUsage);
     GlopBuilder& setFillTextureLayer(Layer& layer, float alpha);
+    // TODO: Texture should probably know and own its target.
+    // setFillLayer() forces it to GL_TEXTURE which isn't always correct.
+    // Similarly setFillLayer normally forces its own wrap & filter mode
+    GlopBuilder& setFillExternalTexture(Texture& texture);
 
     GlopBuilder& setTransform(const Snapshot& snapshot, const int transformFlags) {
         return setTransform(*snapshot.transform, transformFlags);
diff --git a/libs/hwui/JankTracker.cpp b/libs/hwui/JankTracker.cpp
index 9d4eccc..ebe9c42 100644
--- a/libs/hwui/JankTracker.cpp
+++ b/libs/hwui/JankTracker.cpp
@@ -212,8 +212,7 @@
 void JankTracker::addFrame(const FrameInfo& frame) {
     mData->totalFrameCount++;
     // Fast-path for jank-free frames
-    int64_t totalDuration =
-            frame[FrameInfoIndex::FrameCompleted] - frame[sFrameStart];
+    int64_t totalDuration = frame.duration(sFrameStart, FrameInfoIndex::FrameCompleted);
     uint32_t framebucket = frameCountIndexForFrameTime(totalDuration);
     // Keep the fast path as fast as possible.
     if (CC_LIKELY(totalDuration < mFrameInterval)) {
diff --git a/libs/hwui/LayerBuilder.cpp b/libs/hwui/LayerBuilder.cpp
index eea11bf..3000777 100644
--- a/libs/hwui/LayerBuilder.cpp
+++ b/libs/hwui/LayerBuilder.cpp
@@ -244,7 +244,8 @@
 
         if (CC_UNLIKELY(activeUnclippedSaveLayers.empty()
                 && bakedState->computedState.opaqueOverClippedBounds
-                && bakedState->computedState.clippedBounds.contains(repaintRect))) {
+                && bakedState->computedState.clippedBounds.contains(repaintRect)
+                && !Properties::debugOverdraw)) {
             // discard all deferred drawing ops, since new one will occlude them
             clear();
         }
diff --git a/libs/hwui/Readback.cpp b/libs/hwui/Readback.cpp
index d7df77c..4a32589 100644
--- a/libs/hwui/Readback.cpp
+++ b/libs/hwui/Readback.cpp
@@ -101,24 +101,51 @@
     // Setup the source
     sp<GraphicBuffer> sourceBuffer;
     sp<Fence> sourceFence;
-    // FIXME: Waiting on an API from libgui for this
-    // surface.getLastQueuedBuffer(&sourceBuffer, &sourceFence);
+    status_t err = surface.getLastQueuedBuffer(&sourceBuffer, &sourceFence);
+    if (err != NO_ERROR) {
+        ALOGW("Failed to get last queued buffer, error = %d", err);
+        return false;
+    }
     if (!sourceBuffer.get()) {
         ALOGW("Surface doesn't have any previously queued frames, nothing to readback from");
         return false;
     }
-    int err = sourceFence->wait(500 /* ms */);
+    err = sourceFence->wait(500 /* ms */);
     if (err != NO_ERROR) {
         ALOGE("Timeout (500ms) exceeded waiting for buffer fence, abandoning readback attempt");
         return false;
     }
-    Image sourceImage(sourceBuffer);
-    if (!sourceImage.getTexture()) {
-        ALOGW("Failed to make an EGLImage from the GraphicBuffer");
+
+    // TODO: Can't use Image helper since it forces GL_TEXTURE_2D usage via
+    // GL_OES_EGL_image, which doesn't work since we need samplerExternalOES
+    // to be able to properly sample from the buffer.
+
+    // Create the EGLImage object that maps the GraphicBuffer
+    EGLDisplay display = eglGetDisplay(EGL_DEFAULT_DISPLAY);
+    EGLClientBuffer clientBuffer = (EGLClientBuffer) sourceBuffer->getNativeBuffer();
+    EGLint attrs[] = { EGL_IMAGE_PRESERVED_KHR, EGL_TRUE, EGL_NONE };
+
+    EGLImageKHR sourceImage = eglCreateImageKHR(display, EGL_NO_CONTEXT,
+            EGL_NATIVE_BUFFER_ANDROID, clientBuffer, attrs);
+
+    if (sourceImage == EGL_NO_IMAGE_KHR) {
+        ALOGW("Error creating image (%#x)", eglGetError());
         return false;
     }
+    GLuint sourceTexId;
+    // Create a 2D texture to sample from the EGLImage
+    glGenTextures(1, &sourceTexId);
+    Caches::getInstance().textureState().bindTexture(GL_TEXTURE_EXTERNAL_OES, sourceTexId);
+    glEGLImageTargetTexture2DOES(GL_TEXTURE_EXTERNAL_OES, sourceImage);
+
+    GLenum status = GL_NO_ERROR;
+    while ((status = glGetError()) != GL_NO_ERROR) {
+        ALOGW("Error creating image (%#x)", status);
+        return false;
+    }
+
     Texture sourceTexture(caches);
-    sourceTexture.wrap(sourceImage.getTexture(),
+    sourceTexture.wrap(sourceTexId,
             sourceBuffer->getWidth(), sourceBuffer->getHeight(), 0 /* total lie */);
 
     {
@@ -133,8 +160,7 @@
         GlopBuilder(renderState, caches, &glop)
                 .setRoundRectClipState(nullptr)
                 .setMeshTexturedUvQuad(nullptr, Rect(0, 1, 1, 0)) // TODO: simplify with VBO
-                .setFillLayer(sourceTexture, nullptr, 1.0f, SkXfermode::kSrc_Mode,
-                        Blend::ModeOrderSwap::NoSwap)
+                .setFillExternalTexture(sourceTexture)
                 .setTransform(Matrix4::identity(), TransformFlags::None)
                 .setModelViewMapUnitToRect(destRect)
                 .build();
diff --git a/libs/hwui/RecordingCanvas.cpp b/libs/hwui/RecordingCanvas.cpp
index ab733f1..b49f9b5 100644
--- a/libs/hwui/RecordingCanvas.cpp
+++ b/libs/hwui/RecordingCanvas.cpp
@@ -594,8 +594,10 @@
             layerHandle->backingLayer()));
 }
 
-void RecordingCanvas::callDrawGLFunction(Functor* functor) {
-    mDisplayList->functors.push_back(functor);
+void RecordingCanvas::callDrawGLFunction(Functor* functor,
+        GlFunctorLifecycleListener* listener) {
+    mDisplayList->functors.push_back({functor, listener});
+    mDisplayList->ref(listener);
     addOp(alloc().create_trivial<FunctorOp>(
             *(mState.currentSnapshot()->transform),
             getRecordedClip(),
diff --git a/libs/hwui/RecordingCanvas.h b/libs/hwui/RecordingCanvas.h
index 219296c..372be24 100644
--- a/libs/hwui/RecordingCanvas.h
+++ b/libs/hwui/RecordingCanvas.h
@@ -59,7 +59,8 @@
 
     virtual void drawLayer(DeferredLayerUpdater* layerHandle) override;
     virtual void drawRenderNode(RenderNode* renderNode) override;
-    virtual void callDrawGLFunction(Functor* functor) override;
+    virtual void callDrawGLFunction(Functor* functor,
+            GlFunctorLifecycleListener* listener) override;
 
 // ----------------------------------------------------------------------------
 // CanvasStateClient interface
diff --git a/libs/hwui/RenderNode.cpp b/libs/hwui/RenderNode.cpp
index ea06fcd..6e848fd 100644
--- a/libs/hwui/RenderNode.cpp
+++ b/libs/hwui/RenderNode.cpp
@@ -474,8 +474,8 @@
     mDisplayList = mStagingDisplayList;
     mStagingDisplayList = nullptr;
     if (mDisplayList) {
-        for (size_t i = 0; i < mDisplayList->getFunctors().size(); i++) {
-            (*mDisplayList->getFunctors()[i])(DrawGlInfo::kModeSync, nullptr);
+        for (auto& iter : mDisplayList->getFunctors()) {
+            (*iter.functor)(DrawGlInfo::kModeSync, nullptr);
         }
         for (size_t i = 0; i < mDisplayList->getPushStagingFunctors().size(); i++) {
             (*mDisplayList->getPushStagingFunctors()[i])();
diff --git a/libs/hwui/SkiaCanvas.cpp b/libs/hwui/SkiaCanvas.cpp
index 1b459c1..ce67554 100644
--- a/libs/hwui/SkiaCanvas.cpp
+++ b/libs/hwui/SkiaCanvas.cpp
@@ -160,7 +160,8 @@
 
     virtual void drawLayer(uirenderer::DeferredLayerUpdater* layerHandle) override;
     virtual void drawRenderNode(uirenderer::RenderNode* renderNode) override;
-    virtual void callDrawGLFunction(Functor* functor) override;
+    virtual void callDrawGLFunction(Functor* functor,
+            uirenderer::GlFunctorLifecycleListener* listener) override;
 
 protected:
     virtual void drawGlyphs(const uint16_t* text, const float* positions, int count,
@@ -846,6 +847,7 @@
 
 void SkiaCanvas::drawRenderNode(uirenderer::RenderNode* renderNode) { }
 
-void SkiaCanvas::callDrawGLFunction(Functor* functor) { }
+void SkiaCanvas::callDrawGLFunction(Functor* functor,
+        uirenderer::GlFunctorLifecycleListener* listener) { }
 
 } // namespace android
diff --git a/libs/hwui/TreeInfo.h b/libs/hwui/TreeInfo.h
index a43e544..ac2bdcc 100644
--- a/libs/hwui/TreeInfo.h
+++ b/libs/hwui/TreeInfo.h
@@ -102,8 +102,6 @@
     // tree state changes
     TreeObserver* observer = nullptr;
 
-    // Frame number for use with synchronized surfaceview position updating
-    int64_t frameNumber = -1;
     int32_t windowInsetLeft = 0;
     int32_t windowInsetTop = 0;
     bool updateWindowPositions = false;
diff --git a/libs/hwui/VectorDrawable.h b/libs/hwui/VectorDrawable.h
index 691cfa0..1c6f48e 100644
--- a/libs/hwui/VectorDrawable.h
+++ b/libs/hwui/VectorDrawable.h
@@ -219,22 +219,24 @@
             int fillType = 0; /* non-zero or kWinding_FillType in Skia */
         };
         FullPathProperties(Node* mNode) : Properties(mNode), mTrimDirty(false) {}
+        ~FullPathProperties() {
+            SkSafeUnref(fillGradient);
+            SkSafeUnref(strokeGradient);
+        }
         void syncProperties(const FullPathProperties& prop) {
             mPrimitiveFields = prop.mPrimitiveFields;
             mTrimDirty = true;
-            fillGradient.reset(prop.fillGradient);
-            strokeGradient.reset(prop.strokeGradient);
+            UPDATE_SKPROP(fillGradient, prop.fillGradient);
+            UPDATE_SKPROP(strokeGradient, prop.strokeGradient);
             onPropertyChanged();
         }
         void setFillGradient(SkShader* gradient) {
-            if(fillGradient != gradient){
-                fillGradient.reset(gradient);
+            if(UPDATE_SKPROP(fillGradient, gradient)) {
                 onPropertyChanged();
             }
         }
         void setStrokeGradient(SkShader* gradient) {
-            if(strokeGradient != gradient){
-                strokeGradient.reset(gradient);
+            if(UPDATE_SKPROP(strokeGradient, gradient)) {
                 onPropertyChanged();
             }
         }
@@ -346,8 +348,8 @@
             count,
         };
         PrimitiveFields mPrimitiveFields;
-        SkAutoTUnref<SkShader> fillGradient;
-        SkAutoTUnref<SkShader> strokeGradient;
+        SkShader* fillGradient = nullptr;
+        SkShader* strokeGradient = nullptr;
     };
 
     // Called from UI thread
diff --git a/libs/hwui/hwui/Canvas.h b/libs/hwui/hwui/Canvas.h
index 5dbda43..55af33e 100644
--- a/libs/hwui/hwui/Canvas.h
+++ b/libs/hwui/hwui/Canvas.h
@@ -20,6 +20,7 @@
 #include <cutils/compiler.h>
 #include <utils/Functor.h>
 
+#include "GlFunctorLifecycleListener.h"
 #include "utils/NinePatch.h"
 
 #include <SkBitmap.h>
@@ -124,7 +125,8 @@
 
     virtual void drawLayer(uirenderer::DeferredLayerUpdater* layerHandle) = 0;
     virtual void drawRenderNode(uirenderer::RenderNode* renderNode) = 0;
-    virtual void callDrawGLFunction(Functor* functor) = 0;
+    virtual void callDrawGLFunction(Functor* functor,
+            uirenderer::GlFunctorLifecycleListener* listener) = 0;
 
 // ----------------------------------------------------------------------------
 // Canvas state operations
diff --git a/libs/hwui/renderthread/CanvasContext.cpp b/libs/hwui/renderthread/CanvasContext.cpp
index 890d4a1..e6399d4 100644
--- a/libs/hwui/renderthread/CanvasContext.cpp
+++ b/libs/hwui/renderthread/CanvasContext.cpp
@@ -108,6 +108,8 @@
         mEglSurface = mEglManager.createSurface(surface);
     }
 
+    mFrameNumber = -1;
+
     if (mEglSurface != EGL_NO_SURFACE) {
         const bool preserveBuffer = (mSwapBehavior != kSwap_discardBuffer);
         mBufferPreserved = mEglManager.setPreserveBuffer(mEglSurface, preserveBuffer);
@@ -214,10 +216,6 @@
     info.renderer = mCanvas;
 #endif
 
-    if (CC_LIKELY(mNativeSurface.get())) {
-        info.frameNumber = static_cast<int64_t>(mNativeSurface->getNextFrameNumber());
-    }
-
     mAnimationContext->startFrame(info.mode);
     for (const sp<RenderNode>& node : mRenderNodes) {
         // Only the primary target node will be drawn full - all other nodes would get drawn in
@@ -356,9 +354,13 @@
 
 #if HWUI_NEW_OPS
     auto& caches = Caches::getInstance();
-    FrameBuilder frameBuilder(mLayerUpdateQueue, dirty, frame.width(), frame.height(),
-            mRenderNodes, mLightGeometry, mContentDrawBounds, caches);
+    FrameBuilder frameBuilder(dirty, frame.width(), frame.height(), mLightGeometry, caches);
+
+    frameBuilder.deferLayers(mLayerUpdateQueue);
     mLayerUpdateQueue.clear();
+
+    frameBuilder.deferRenderNodeScene(mRenderNodes, mContentDrawBounds);
+
     BakedOpRenderer renderer(caches, mRenderThread.renderState(),
             mOpaque, mLightInfo);
     frameBuilder.replayBakedOps<BakedOpDispatcher>(renderer);
@@ -511,6 +513,7 @@
         swap.swapTime = systemTime(CLOCK_MONOTONIC);
         swap.vsyncTime = mRenderThread.timeLord().latestVsync();
         mHaveNewSurface = false;
+        mFrameNumber = -1;
     }
 
     // TODO: Use a fence for real completion?
@@ -623,8 +626,7 @@
 #if HWUI_NEW_OPS
     static const std::vector< sp<RenderNode> > emptyNodeList;
     auto& caches = Caches::getInstance();
-    FrameBuilder frameBuilder(mLayerUpdateQueue, SkRect::MakeWH(1, 1), 1, 1,
-            emptyNodeList, mLightGeometry, mContentDrawBounds, caches);
+    FrameBuilder frameBuilder(mLayerUpdateQueue, mLightGeometry, caches);
     mLayerUpdateQueue.clear();
     BakedOpRenderer renderer(caches, mRenderThread.renderState(),
             mOpaque, mLightInfo);
@@ -779,6 +781,14 @@
     mFrameWorkProcessor->add(task);
 }
 
+int64_t CanvasContext::getFrameNumber() {
+    // mFrameNumber is reset to -1 when the surface changes or we swap buffers
+    if (mFrameNumber == -1 && mNativeSurface.get()) {
+        mFrameNumber = static_cast<int64_t>(mNativeSurface->getNextFrameNumber());
+    }
+    return mFrameNumber;
+}
+
 } /* namespace renderthread */
 } /* namespace uirenderer */
 } /* namespace android */
diff --git a/libs/hwui/renderthread/CanvasContext.h b/libs/hwui/renderthread/CanvasContext.h
index 52df3abe..e739b29 100644
--- a/libs/hwui/renderthread/CanvasContext.h
+++ b/libs/hwui/renderthread/CanvasContext.h
@@ -166,6 +166,8 @@
     // Used to queue up work that needs to be completed before this frame completes
     ANDROID_API void enqueueFrameWork(std::function<void()>&& func);
 
+    ANDROID_API int64_t getFrameNumber();
+
 private:
     friend class RegisterFrameCallbackTask;
     // TODO: Replace with something better for layer & other GL object
@@ -195,6 +197,7 @@
     };
 
     RingBuffer<SwapHistory, 3> mSwapHistory;
+    int64_t mFrameNumber = -1;
 
     bool mOpaque;
 #if HWUI_NEW_OPS
diff --git a/libs/hwui/renderthread/DrawFrameTask.cpp b/libs/hwui/renderthread/DrawFrameTask.cpp
index ed472ac..c9c07b3 100644
--- a/libs/hwui/renderthread/DrawFrameTask.cpp
+++ b/libs/hwui/renderthread/DrawFrameTask.cpp
@@ -32,7 +32,7 @@
 DrawFrameTask::DrawFrameTask()
         : mRenderThread(nullptr)
         , mContext(nullptr)
-        , mSyncResult(kSync_OK) {
+        , mSyncResult(SyncResult::OK) {
 }
 
 DrawFrameTask::~DrawFrameTask() {
@@ -68,7 +68,7 @@
 int DrawFrameTask::drawFrame(TreeObserver* observer) {
     LOG_ALWAYS_FATAL_IF(!mContext, "Cannot drawFrame with no CanvasContext!");
 
-    mSyncResult = kSync_OK;
+    mSyncResult = SyncResult::OK;
     mSyncQueued = systemTime(CLOCK_MONOTONIC);
     mObserver = observer;
     postAndWait();
@@ -127,13 +127,18 @@
     // This is after the prepareTree so that any pending operations
     // (RenderNode tree state, prefetched layers, etc...) will be flushed.
     if (CC_UNLIKELY(!mContext->hasSurface() || !canDraw)) {
-        mSyncResult |= kSync_LostSurfaceRewardIfFound;
+        if (!mContext->hasSurface()) {
+            mSyncResult |= SyncResult::LostSurfaceRewardIfFound;
+        } else {
+            // If we have a surface but can't draw we must be stopped
+            mSyncResult |= SyncResult::ContextIsStopped;
+        }
         info.out.canDrawThisFrame = false;
     }
 
     if (info.out.hasAnimations) {
         if (info.out.requiresUiRedraw) {
-            mSyncResult |= kSync_UIRedrawRequired;
+            mSyncResult |= SyncResult::UIRedrawRequired;
         }
     }
     // If prepareTextures is false, we ran out of texture cache space
diff --git a/libs/hwui/renderthread/DrawFrameTask.h b/libs/hwui/renderthread/DrawFrameTask.h
index 9bba065..c02d376 100644
--- a/libs/hwui/renderthread/DrawFrameTask.h
+++ b/libs/hwui/renderthread/DrawFrameTask.h
@@ -40,11 +40,14 @@
 class CanvasContext;
 class RenderThread;
 
-enum SyncResult {
-    kSync_OK = 0,
-    kSync_UIRedrawRequired = 1 << 0,
-    kSync_LostSurfaceRewardIfFound = 1 << 1,
+namespace SyncResult {
+enum {
+    OK = 0,
+    UIRedrawRequired = 1 << 0,
+    LostSurfaceRewardIfFound = 1 << 1,
+    ContextIsStopped = 1 << 2,
 };
+}
 
 /*
  * This is a special Super Task. It is re-used multiple times by RenderProxy,
diff --git a/libs/hwui/tests/common/TestUtils.h b/libs/hwui/tests/common/TestUtils.h
index 5f4ebc0..dbaefa4 100644
--- a/libs/hwui/tests/common/TestUtils.h
+++ b/libs/hwui/tests/common/TestUtils.h
@@ -171,11 +171,9 @@
         syncHierarchyPropertiesAndDisplayListImpl(node.get());
     }
 
-    static std::vector<sp<RenderNode>> createSyncedNodeList(sp<RenderNode>& node) {
-        TestUtils::syncHierarchyPropertiesAndDisplayList(node);
-        std::vector<sp<RenderNode>> vec;
-        vec.emplace_back(node);
-        return vec;
+    static sp<RenderNode>& getSyncedNode(sp<RenderNode>& node) {
+        syncHierarchyPropertiesAndDisplayList(node);
+        return node;
     }
 
     typedef std::function<void(renderthread::RenderThread& thread)> RtCallback;
diff --git a/libs/hwui/tests/microbench/FrameBuilderBench.cpp b/libs/hwui/tests/microbench/FrameBuilderBench.cpp
index 0aef620..84ef9c2 100644
--- a/libs/hwui/tests/microbench/FrameBuilderBench.cpp
+++ b/libs/hwui/tests/microbench/FrameBuilderBench.cpp
@@ -35,11 +35,10 @@
 using namespace android::uirenderer::renderthread;
 using namespace android::uirenderer::test;
 
-const LayerUpdateQueue sEmptyLayerUpdateQueue;
 const FrameBuilder::LightGeometry sLightGeometry = { {100, 100, 100}, 50};
 const BakedOpRenderer::LightInfo sLightInfo = { 128, 128 };
 
-static std::vector<sp<RenderNode>> createTestNodeList() {
+static sp<RenderNode> createTestNode() {
     auto node = TestUtils::createNode(0, 0, 200, 200,
             [](RenderProperties& props, RecordingCanvas& canvas) {
         SkBitmap bitmap = TestUtils::createSkBitmap(10, 10);
@@ -56,31 +55,33 @@
         canvas.restore();
     });
     TestUtils::syncHierarchyPropertiesAndDisplayList(node);
-    std::vector<sp<RenderNode>> vec;
-    vec.emplace_back(node);
-    return vec;
+    return node;
 }
 
 void BM_FrameBuilder_defer(benchmark::State& state) {
-    auto nodes = createTestNodeList();
-    while (state.KeepRunning()) {
-        FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 200), 100, 200,
-                nodes, sLightGeometry, Caches::getInstance());
-        benchmark::DoNotOptimize(&frameBuilder);
-    }
+    TestUtils::runOnRenderThread([&state](RenderThread& thread) {
+        auto node = createTestNode();
+        while (state.KeepRunning()) {
+            FrameBuilder frameBuilder(SkRect::MakeWH(100, 200), 100, 200,
+                    sLightGeometry, Caches::getInstance());
+            frameBuilder.deferRenderNode(*node);
+            benchmark::DoNotOptimize(&frameBuilder);
+        }
+    });
 }
 BENCHMARK(BM_FrameBuilder_defer);
 
 void BM_FrameBuilder_deferAndRender(benchmark::State& state) {
     TestUtils::runOnRenderThread([&state](RenderThread& thread) {
-        auto nodes = createTestNodeList();
+        auto node = createTestNode();
 
         RenderState& renderState = thread.renderState();
         Caches& caches = Caches::getInstance();
 
         while (state.KeepRunning()) {
-            FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 200), 100, 200,
-                    nodes, sLightGeometry, Caches::getInstance());
+            FrameBuilder frameBuilder(SkRect::MakeWH(100, 200), 100, 200,
+                    sLightGeometry, caches);
+            frameBuilder.deferRenderNode(*node);
 
             BakedOpRenderer renderer(caches, renderState, true, sLightInfo);
             frameBuilder.replayBakedOps<BakedOpDispatcher>(renderer);
@@ -90,7 +91,7 @@
 }
 BENCHMARK(BM_FrameBuilder_deferAndRender);
 
-static std::vector<sp<RenderNode>> getSyncedSceneNodes(const char* sceneName) {
+static sp<RenderNode> getSyncedSceneNode(const char* sceneName) {
     gDisplay = getBuiltInDisplay(); // switch to real display if present
 
     TestContext testContext;
@@ -103,9 +104,7 @@
     });
 
     TestUtils::syncHierarchyPropertiesAndDisplayList(rootNode);
-    std::vector<sp<RenderNode>> nodes;
-    nodes.emplace_back(rootNode);
-    return nodes;
+    return rootNode;
 }
 
 static auto SCENES = {
@@ -116,11 +115,12 @@
     TestUtils::runOnRenderThread([&state](RenderThread& thread) {
         const char* sceneName = *(SCENES.begin() + state.range_x());
         state.SetLabel(sceneName);
-        auto nodes = getSyncedSceneNodes(sceneName);
+        auto node = getSyncedSceneNode(sceneName);
         while (state.KeepRunning()) {
-            FrameBuilder frameBuilder(sEmptyLayerUpdateQueue,
-                    SkRect::MakeWH(gDisplay.w, gDisplay.h), gDisplay.w, gDisplay.h,
-                    nodes, sLightGeometry, Caches::getInstance());
+            FrameBuilder frameBuilder(SkRect::MakeWH(gDisplay.w, gDisplay.h),
+                    gDisplay.w, gDisplay.h,
+                    sLightGeometry, Caches::getInstance());
+            frameBuilder.deferRenderNode(*node);
             benchmark::DoNotOptimize(&frameBuilder);
         }
     });
@@ -131,15 +131,16 @@
     TestUtils::runOnRenderThread([&state](RenderThread& thread) {
         const char* sceneName = *(SCENES.begin() + state.range_x());
         state.SetLabel(sceneName);
-        auto nodes = getSyncedSceneNodes(sceneName);
+        auto node = getSyncedSceneNode(sceneName);
 
         RenderState& renderState = thread.renderState();
         Caches& caches = Caches::getInstance();
 
         while (state.KeepRunning()) {
-            FrameBuilder frameBuilder(sEmptyLayerUpdateQueue,
-                    SkRect::MakeWH(gDisplay.w, gDisplay.h), gDisplay.w, gDisplay.h,
-                    nodes, sLightGeometry, Caches::getInstance());
+            FrameBuilder frameBuilder(SkRect::MakeWH(gDisplay.w, gDisplay.h),
+                    gDisplay.w, gDisplay.h,
+                    sLightGeometry, Caches::getInstance());
+            frameBuilder.deferRenderNode(*node);
 
             BakedOpRenderer renderer(caches, renderState, true, sLightInfo);
             frameBuilder.replayBakedOps<BakedOpDispatcher>(renderer);
diff --git a/libs/hwui/tests/unit/FontRendererTests.cpp b/libs/hwui/tests/unit/FontRendererTests.cpp
new file mode 100644
index 0000000..99080ac
--- /dev/null
+++ b/libs/hwui/tests/unit/FontRendererTests.cpp
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <gtest/gtest.h>
+
+#include "GammaFontRenderer.h"
+#include "tests/common/TestUtils.h"
+
+using namespace android::uirenderer;
+
+static bool isZero(uint8_t* data, int size) {
+    for (int i = 0; i < size; i++) {
+        if (data[i]) return false;
+    }
+    return true;
+}
+
+RENDERTHREAD_TEST(FontRenderer, renderDropShadow) {
+    SkPaint paint;
+    paint.setTextSize(10);
+    paint.setTextEncoding(SkPaint::kGlyphID_TextEncoding);
+    GammaFontRenderer gammaFontRenderer;
+    FontRenderer& fontRenderer = gammaFontRenderer.getFontRenderer();
+    fontRenderer.setFont(&paint, SkMatrix::I());
+
+    std::vector<glyph_t> glyphs;
+    std::vector<float> positions;
+    float totalAdvance;
+    Rect bounds;
+    TestUtils::layoutTextUnscaled(paint, "This is a test",
+            &glyphs, &positions, &totalAdvance, &bounds);
+
+    for (int radius : {28, 20, 2}) {
+        auto result = fontRenderer.renderDropShadow(&paint, glyphs.data(), glyphs.size(),
+                radius, positions.data());
+        ASSERT_NE(nullptr, result.image);
+        EXPECT_FALSE(isZero(result.image, result.width * result.height));
+        EXPECT_LE(bounds.getWidth() + radius * 2, (int) result.width);
+        EXPECT_LE(bounds.getHeight() + radius * 2, (int) result.height);
+        delete result.image;
+    }
+}
diff --git a/libs/hwui/tests/unit/FrameBuilderTests.cpp b/libs/hwui/tests/unit/FrameBuilderTests.cpp
index 209a104..0f16b15 100644
--- a/libs/hwui/tests/unit/FrameBuilderTests.cpp
+++ b/libs/hwui/tests/unit/FrameBuilderTests.cpp
@@ -29,11 +29,8 @@
 namespace android {
 namespace uirenderer {
 
-const LayerUpdateQueue sEmptyLayerUpdateQueue;
-const std::vector< sp<RenderNode> > sEmptyNodeList;
 const FrameBuilder::LightGeometry sLightGeometry = { {100, 100, 100}, 50};
 
-
 /**
  * Virtual class implemented by each test to redirect static operation / state transitions to
  * virtual methods.
@@ -136,8 +133,10 @@
         canvas.drawRect(0, 0, 100, 200, SkPaint());
         canvas.drawBitmap(bitmap, 10, 10, nullptr);
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 200), 100, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(100, 200), 100, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     SimpleTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(4, renderer.getIndex()); // 2 ops + start + end
@@ -162,8 +161,10 @@
         strokedPaint.setStrokeWidth(10);
         canvas.drawPoint(50, 50, strokedPaint);
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 200), 100, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(100, 200), 100, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     SimpleStrokeTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(1, renderer.getIndex());
@@ -177,8 +178,9 @@
         canvas.drawRect(0, 0, 400, 400, SkPaint());
         canvas.restore();
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
 
     FailRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
@@ -211,15 +213,111 @@
         }
         canvas.restore();
     });
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
     SimpleBatchingTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(2 * LOOPS, renderer.getIndex())
             << "Expect number of ops = 2 * loop count";
 }
 
+RENDERTHREAD_TEST(FrameBuilder, deferRenderNode_translateClip) {
+    class DeferRenderNodeTranslateClipTestRenderer : public TestRendererBase {
+    public:
+        void onRectOp(const RectOp& op, const BakedOpState& state) override {
+            EXPECT_EQ(0, mIndex++);
+            EXPECT_EQ(Rect(5, 10, 55, 60), state.computedState.clippedBounds);
+            EXPECT_EQ(OpClipSideFlags::Right | OpClipSideFlags::Bottom,
+                    state.computedState.clipSideFlags);
+        }
+    };
+
+    auto node = TestUtils::createNode(0, 0, 100, 100,
+            [](RenderProperties& props, RecordingCanvas& canvas) {
+        canvas.drawRect(0, 0, 100, 100, SkPaint());
+    });
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(100, 100), 100, 100,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(5, 10, Rect(50, 50), // translate + clip node
+            *TestUtils::getSyncedNode(node));
+
+    DeferRenderNodeTranslateClipTestRenderer renderer;
+    frameBuilder.replayBakedOps<TestDispatcher>(renderer);
+    EXPECT_EQ(1, renderer.getIndex());
+}
+
+RENDERTHREAD_TEST(FrameBuilder, deferRenderNodeScene) {
+    class DeferRenderNodeSceneTestRenderer : public TestRendererBase {
+    public:
+        void onRectOp(const RectOp& op, const BakedOpState& state) override {
+            const Rect& clippedBounds = state.computedState.clippedBounds;
+            Matrix4 expected;
+            switch (mIndex++) {
+            case 0:
+                // background - left side
+                EXPECT_EQ(Rect(600, 100, 700, 500), clippedBounds);
+                expected.loadTranslate(100, 100, 0);
+                break;
+            case 1:
+                // background - top side
+                EXPECT_EQ(Rect(100, 400, 600, 500), clippedBounds);
+                expected.loadTranslate(100, 100, 0);
+                break;
+            case 2:
+                // content
+                EXPECT_EQ(Rect(100, 100, 700, 500), clippedBounds);
+                expected.loadTranslate(-50, -50, 0);
+                break;
+            case 3:
+                // overlay
+                EXPECT_EQ(Rect(0, 0, 800, 200), clippedBounds);
+                break;
+            default:
+                ADD_FAILURE() << "Too many rects observed";
+            }
+            EXPECT_EQ(expected, state.computedState.transform);
+        }
+    };
+
+    std::vector<sp<RenderNode>> nodes;
+    SkPaint transparentPaint;
+    transparentPaint.setAlpha(128);
+
+    // backdrop
+    nodes.push_back(TestUtils::createNode(100, 100, 700, 500, // 600x400
+            [&transparentPaint](RenderProperties& props, RecordingCanvas& canvas) {
+        canvas.drawRect(0, 0, 600, 400, transparentPaint);
+    }));
+
+    // content
+    Rect contentDrawBounds(150, 150, 650, 450); // 500x300
+    nodes.push_back(TestUtils::createNode(0, 0, 800, 600,
+            [&transparentPaint](RenderProperties& props, RecordingCanvas& canvas) {
+        canvas.drawRect(0, 0, 800, 600, transparentPaint);
+    }));
+
+    // overlay
+    nodes.push_back(TestUtils::createNode(0, 0, 800, 600,
+            [&transparentPaint](RenderProperties& props, RecordingCanvas& canvas) {
+        canvas.drawRect(0, 0, 800, 200, transparentPaint);
+    }));
+
+    for (auto& node : nodes) {
+        TestUtils::syncHierarchyPropertiesAndDisplayList(node);
+    }
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(800, 600), 800, 600,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNodeScene(nodes, contentDrawBounds);
+
+    DeferRenderNodeSceneTestRenderer renderer;
+    frameBuilder.replayBakedOps<TestDispatcher>(renderer);
+    EXPECT_EQ(4, renderer.getIndex());
+}
+
 RENDERTHREAD_TEST(FrameBuilder, empty_noFbo0) {
     class EmptyNoFbo0TestRenderer : public TestRendererBase {
     public:
@@ -231,9 +329,9 @@
         }
     };
 
-    // Pass empty node list, so no work is enqueued for Fbo0
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            sEmptyNodeList, sLightGeometry, Caches::getInstance());
+    // Use layer update constructor, so no work is enqueued for Fbo0
+    LayerUpdateQueue emptyLayerUpdateQueue;
+    FrameBuilder frameBuilder(emptyLayerUpdateQueue, sLightGeometry, Caches::getInstance());
     EmptyNoFbo0TestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
 }
@@ -252,11 +350,12 @@
             [](RenderProperties& props, RecordingCanvas& canvas) {
         // no drawn content
     });
-    auto syncedNodeList = TestUtils::createSyncedNodeList(node);
 
-    // Draw, but pass empty node list, so no work is done for primary frame
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            syncedNodeList, sLightGeometry, Caches::getInstance());
+    // Draw, but pass node without draw content, so no work is done for primary frame
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     EmptyWithFbo0TestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(2, renderer.getIndex()) << "No drawing content produced,"
@@ -281,9 +380,9 @@
 
     // Damage (and therefore clip) is same as last draw, subset of renderable area.
     // This means last op occludes other contents, and they'll be rejected to avoid overdraw.
-    SkRect damageRect = SkRect::MakeLTRB(10, 10, 190, 190);
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, damageRect, 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeLTRB(10, 10, 190, 190), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
 
     EXPECT_EQ(3u, node->getDisplayList()->getOps().size())
             << "Recording must not have rejected ops, in order for this test to be valid";
@@ -324,9 +423,9 @@
         canvas.drawBitmap(opaqueBitmap, 0, 0, nullptr);
         canvas.drawBitmap(transpBitmap, 0, 0, nullptr);
     });
-
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(50, 50), 50, 50,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(50, 50), 50, 50,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
 
     EXPECT_EQ(5u, node->getDisplayList()->getOps().size())
             << "Recording must not have rejected ops, in order for this test to be valid";
@@ -369,8 +468,10 @@
         canvas.drawBitmap(bitmap, 40, 70, nullptr);
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 100), 100, 100,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(100, 100), 100, 100,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     ClippedMergingTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(4, renderer.getIndex());
@@ -397,8 +498,10 @@
         TestUtils::drawUtf8ToCanvas(&canvas, "Test string1", paint, 100, 0); // will be top clipped
         TestUtils::drawUtf8ToCanvas(&canvas, "Test string1", paint, 100, 100); // not clipped
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(400, 400), 400, 400,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(400, 400), 400, 400,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     TextMergingTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(2, renderer.getIndex()) << "Expect 2 ops";
@@ -428,8 +531,11 @@
             TestUtils::drawUtf8ToCanvas(&canvas, "test text", textPaint, 10, 100 * (i + 1));
         }
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 2000), 200, 2000,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 2000), 200, 2000,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     TextStrikethroughTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(2 * LOOPS, renderer.getIndex())
@@ -485,8 +591,9 @@
             TestUtils::drawUtf8ToCanvas(&canvas, "Test string1", paint, 100, 100);
         }
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(400, 400), 400, 400,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(400, 400), 400, 400,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
     TextStyleTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(3, renderer.getIndex()) << "Expect 3 ops";
@@ -516,8 +623,11 @@
         canvas.drawLayer(layerUpdater.get());
         canvas.restore();
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     TextureLayerClipLocalMatrixTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(1, renderer.getIndex());
@@ -546,8 +656,10 @@
         canvas.restore();
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     TextureLayerCombineMatricesTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(1, renderer.getIndex());
@@ -562,8 +674,11 @@
             [&layerUpdater](RenderProperties& props, RecordingCanvas& canvas) {
         canvas.drawLayer(layerUpdater.get());
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     FailRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
 }
@@ -581,12 +696,13 @@
     auto scrolledFunctorView = TestUtils::createNode(0, 0, 400, 1000000,
             [&noopFunctor](RenderProperties& props, RecordingCanvas& canvas) {
         canvas.translate(0, -800000);
-        canvas.callDrawGLFunction(&noopFunctor);
+        canvas.callDrawGLFunction(&noopFunctor, nullptr);
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(scrolledFunctorView),
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
             sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(scrolledFunctorView));
+
     FunctorTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(1, renderer.getIndex()) << "Functor should not be rejected";
@@ -608,9 +724,10 @@
         canvas.drawColor(SK_ColorWHITE, SkXfermode::Mode::kSrcOver_Mode);
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(unclippedColorView),
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
             sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(unclippedColorView));
+
     ColorTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(1, renderer.getIndex()) << "ColorOp should not be rejected";
@@ -654,8 +771,10 @@
         canvas.restore();
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(parent), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(parent));
+
     RenderNodeTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(2, renderer.getIndex());
@@ -678,9 +797,11 @@
         canvas.drawBitmap(bitmap, 0, 0, nullptr);
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue,
-            SkRect::MakeLTRB(10, 20, 30, 40), // clip to small area, should see in receiver
-            200, 200, TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    // clip to small area, should see in receiver
+    FrameBuilder frameBuilder(SkRect::MakeLTRB(10, 20, 30, 40), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     ClippedTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
 }
@@ -725,8 +846,11 @@
         canvas.drawRect(10, 10, 190, 190, SkPaint());
         canvas.restore();
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     SaveLayerSimpleTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(5, renderer.getIndex());
@@ -806,8 +930,10 @@
         canvas.restore();
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(800, 800), 800, 800,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(800, 800), 800, 800,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     SaveLayerNestedTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(12, renderer.getIndex());
@@ -826,8 +952,10 @@
         canvas.restore();
         canvas.restore();
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
 
     FailRenderer renderer;
     // should see no ops, even within the layer, since the layer should be rejected
@@ -869,8 +997,11 @@
         canvas.drawRect(0, 0, 200, 200, SkPaint());
         canvas.restore();
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     SaveLayerUnclippedSimpleTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(4, renderer.getIndex());
@@ -923,8 +1054,11 @@
         canvas.drawRect(0, 0, 100, 100, SkPaint());
         canvas.restoreToCount(restoreTo);
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     SaveLayerUnclippedMergedClearsTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(10, renderer.getIndex())
@@ -964,8 +1098,10 @@
     });
 
     // draw with partial screen dirty, and assert we see that rect later
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeLTRB(50, 50, 150, 150), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeLTRB(50, 50, 150, 150), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     SaveLayerUnclippedClearClipTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(4, renderer.getIndex());
@@ -981,8 +1117,10 @@
     });
 
     // draw with partial screen dirty that doesn't intersect with savelayer
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 100), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(100, 100), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     FailRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
 }
@@ -1046,8 +1184,11 @@
         canvas.restore();
         canvas.restore();
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(600, 600), 600, 600,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(600, 600), 600, 600,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     SaveLayerUnclippedComplexTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(13, renderer.getIndex());
@@ -1098,14 +1239,17 @@
     OffscreenBuffer layer(renderThread.renderState(), Caches::getInstance(), 100, 100);
     *layerHandle = &layer;
 
-    auto syncedNodeList = TestUtils::createSyncedNodeList(node);
+    auto syncedNode = TestUtils::getSyncedNode(node);
 
     // only enqueue partial damage
     LayerUpdateQueue layerUpdateQueue; // Note: enqueue damage post-sync, so bounds are valid
     layerUpdateQueue.enqueueLayerWithDamage(node.get(), Rect(25, 25, 75, 75));
 
-    FrameBuilder frameBuilder(layerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            syncedNodeList, sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferLayers(layerUpdateQueue);
+    frameBuilder.deferRenderNode(*syncedNode);
+
     HwLayerSimpleTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(6, renderer.getIndex());
@@ -1202,14 +1346,17 @@
     OffscreenBuffer parentLayer(renderThread.renderState(), Caches::getInstance(), 200, 200);
     *(parent->getLayerHandle()) = &parentLayer;
 
-    auto syncedList = TestUtils::createSyncedNodeList(parent);
+    auto syncedNode = TestUtils::getSyncedNode(parent);
 
     LayerUpdateQueue layerUpdateQueue; // Note: enqueue damage post-sync, so bounds are valid
     layerUpdateQueue.enqueueLayerWithDamage(child.get(), Rect(100, 100));
     layerUpdateQueue.enqueueLayerWithDamage(parent.get(), Rect(200, 200));
 
-    FrameBuilder frameBuilder(layerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            syncedList, sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferLayers(layerUpdateQueue);
+    frameBuilder.deferRenderNode(*syncedNode);
+
     HwLayerComplexTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(14, renderer.getIndex());
@@ -1260,15 +1407,14 @@
     OffscreenBuffer layer(renderThread.renderState(), Caches::getInstance(), 100, 100);
     *layerHandle = &layer;
 
-    auto syncedNodeList = TestUtils::createSyncedNodeList(node);
+    TestUtils::syncHierarchyPropertiesAndDisplayList(node);
 
     // only enqueue partial damage
     LayerUpdateQueue layerUpdateQueue; // Note: enqueue damage post-sync, so bounds are valid
     layerUpdateQueue.enqueueLayerWithDamage(node.get(), Rect(25, 25, 75, 75));
 
     // Draw, but pass empty node list, so no work is done for primary frame
-    FrameBuilder frameBuilder(layerUpdateQueue, SkRect::MakeWH(1, 1), 1, 1,
-            sEmptyNodeList, sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(layerUpdateQueue, sLightGeometry, Caches::getInstance());
     BuildLayerTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(3, renderer.getIndex());
@@ -1315,8 +1461,10 @@
         drawOrderedRect(&canvas, 8);
         drawOrderedNode(&canvas, 9, -10.0f); // in reorder=false at this point, so played inorder
     });
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 100), 100, 100,
-            TestUtils::createSyncedNodeList(parent), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(100, 100), 100, 100,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(parent));
+
     ZReorderTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(10, renderer.getIndex());
@@ -1406,8 +1554,10 @@
         canvas.restore();
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 100), 100, 100,
-            TestUtils::createSyncedNodeList(parent), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(100, 100), 100, 100,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(parent));
+
     ProjectionReorderTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(3, renderer.getIndex());
@@ -1486,11 +1636,16 @@
     layer.setWindowTransform(windowTransform);
     *layerHandle = &layer;
 
-    auto syncedList = TestUtils::createSyncedNodeList(parent);
+    auto syncedNode = TestUtils::getSyncedNode(parent);
+
     LayerUpdateQueue layerUpdateQueue; // Note: enqueue damage post-sync, so bounds are valid
     layerUpdateQueue.enqueueLayerWithDamage(child.get(), Rect(200, 200));
-    FrameBuilder frameBuilder(layerUpdateQueue, SkRect::MakeWH(400, 400), 400, 400,
-            syncedList, sLightGeometry, Caches::getInstance());
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(400, 400), 400, 400,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferLayers(layerUpdateQueue);
+    frameBuilder.deferRenderNode(*syncedNode);
+
     ProjectionHwLayerTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(6, renderer.getIndex());
@@ -1545,8 +1700,10 @@
         canvas.drawRenderNode(child.get());
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(400, 400), 400, 400,
-            TestUtils::createSyncedNodeList(parent), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(400, 400), 400, 400,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(parent));
+
     ProjectionChildScrollTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(2, renderer.getIndex());
@@ -1588,8 +1745,10 @@
         canvas.drawRenderNode(createWhiteRectShadowCaster(5.0f).get());
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(parent), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(parent));
+
     ShadowTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(2, renderer.getIndex());
@@ -1632,9 +1791,10 @@
         canvas.restoreToCount(count);
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(parent),
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
             (FrameBuilder::LightGeometry) {{ 100, 100, 100 }, 50}, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(parent));
+
     ShadowSaveLayerTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(6, renderer.getIndex());
@@ -1681,12 +1841,15 @@
     layer.setWindowTransform(windowTransform);
     *layerHandle = &layer;
 
-    auto syncedList = TestUtils::createSyncedNodeList(parent);
+    auto syncedNode = TestUtils::getSyncedNode(parent);
     LayerUpdateQueue layerUpdateQueue; // Note: enqueue damage post-sync, so bounds are valid
     layerUpdateQueue.enqueueLayerWithDamage(parent.get(), Rect(100, 100));
-    FrameBuilder frameBuilder(layerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            syncedList,
+
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
             (FrameBuilder::LightGeometry) {{ 100, 100, 100 }, 30}, Caches::getInstance());
+    frameBuilder.deferLayers(layerUpdateQueue);
+    frameBuilder.deferRenderNode(*syncedNode);
+
     ShadowHwLayerTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(5, renderer.getIndex());
@@ -1713,10 +1876,10 @@
         canvas.drawRenderNode(createWhiteRectShadowCaster(5.0f).get());
         canvas.drawRenderNode(createWhiteRectShadowCaster(5.0001f).get());
     });
-
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(parent),
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
             (FrameBuilder::LightGeometry) {{ 100, 100, 100 }, 50}, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(parent));
+
     ShadowLayeringTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(4, renderer.getIndex());
@@ -1743,9 +1906,10 @@
         canvas.drawRenderNode(createWhiteRectShadowCaster(5.0f).get());
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 100), 100, 100,
-            TestUtils::createSyncedNodeList(parent),
+    FrameBuilder frameBuilder(SkRect::MakeWH(100, 100), 100, 100,
             (FrameBuilder::LightGeometry) {{ 100, 100, 100 }, 50}, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(parent));
+
     ShadowClippingTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(2, renderer.getIndex());
@@ -1772,8 +1936,10 @@
         canvas.drawRect(0, 0, 100, 100, paint);
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 100), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(100, 100), 200, 200,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     PropertyTestRenderer renderer(opValidateCallback);
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(1, renderer.getIndex()) << "Should have seen one op";
@@ -1915,10 +2081,12 @@
         paint.setColor(SK_ColorWHITE);
         canvas.drawRect(0, 0, 10000, 10000, paint);
     });
-    auto nodes = TestUtils::createSyncedNodeList(node); // sync before querying height
+    auto syncedNode = TestUtils::getSyncedNode(node); // sync before querying height
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            nodes, sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+                sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*syncedNode);
+
     SaveLayerAlphaClipTestRenderer renderer(outObservedData);
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
 
@@ -1991,8 +2159,10 @@
         canvas.drawColor(SK_ColorWHITE, SkXfermode::Mode::kSrcOver_Mode);
     });
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeLTRB(10, 10, 40, 40), 50, 50,
-            TestUtils::createSyncedNodeList(node), sLightGeometry, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeLTRB(10, 10, 40, 40), 50, 50,
+            sLightGeometry, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
+
     ClipReplaceTestRenderer renderer;
     frameBuilder.replayBakedOps<TestDispatcher>(renderer);
     EXPECT_EQ(1, renderer.getIndex());
diff --git a/libs/hwui/tests/unit/LeakCheckTests.cpp b/libs/hwui/tests/unit/LeakCheckTests.cpp
index e2fc376..6148b33 100644
--- a/libs/hwui/tests/unit/LeakCheckTests.cpp
+++ b/libs/hwui/tests/unit/LeakCheckTests.cpp
@@ -26,7 +26,6 @@
 using namespace android;
 using namespace android::uirenderer;
 
-const LayerUpdateQueue sEmptyLayerUpdateQueue;
 const FrameBuilder::LightGeometry sLightGeometery = { {100, 100, 100}, 50};
 const BakedOpRenderer::LightInfo sLightInfo = { 128, 128 };
 
@@ -43,8 +42,9 @@
     RenderState& renderState = renderThread.renderState();
     Caches& caches = Caches::getInstance();
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(100, 100), 100, 100,
-            TestUtils::createSyncedNodeList(node), sLightGeometery, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(100, 100), 100, 100,
+            sLightGeometery, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
     BakedOpRenderer renderer(caches, renderState, true, sLightInfo);
     frameBuilder.replayBakedOps<BakedOpDispatcher>(renderer);
 }
@@ -59,8 +59,9 @@
     RenderState& renderState = renderThread.renderState();
     Caches& caches = Caches::getInstance();
 
-    FrameBuilder frameBuilder(sEmptyLayerUpdateQueue, SkRect::MakeWH(200, 200), 200, 200,
-            TestUtils::createSyncedNodeList(node), sLightGeometery, Caches::getInstance());
+    FrameBuilder frameBuilder(SkRect::MakeWH(200, 200), 200, 200,
+            sLightGeometery, Caches::getInstance());
+    frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node));
     BakedOpRenderer renderer(caches, renderState, true, sLightInfo);
     frameBuilder.replayBakedOps<BakedOpDispatcher>(renderer);
 }
diff --git a/libs/hwui/tests/unit/RenderNodeTests.cpp b/libs/hwui/tests/unit/RenderNodeTests.cpp
index 7c57a50..b2997df 100644
--- a/libs/hwui/tests/unit/RenderNodeTests.cpp
+++ b/libs/hwui/tests/unit/RenderNodeTests.cpp
@@ -51,3 +51,41 @@
     EXPECT_FALSE(child->hasParents()) << "Child should be removed";
     EXPECT_FALSE(parent->hasParents()) << "Root node shouldn't have any parents";
 }
+
+TEST(RenderNode, releasedCallback) {
+    class DecRefOnReleased : public GlFunctorLifecycleListener {
+    public:
+        DecRefOnReleased(int* refcnt) : mRefCnt(refcnt) {}
+        void onGlFunctorReleased(Functor* functor) override {
+            *mRefCnt -= 1;
+        }
+    private:
+        int* mRefCnt;
+    };
+
+    int refcnt = 0;
+    sp<DecRefOnReleased> listener(new DecRefOnReleased(&refcnt));
+    Functor noopFunctor;
+
+    auto node = TestUtils::createNode(0, 0, 200, 400,
+            [&](RenderProperties& props, TestCanvas& canvas) {
+        refcnt++;
+        canvas.callDrawGLFunction(&noopFunctor, listener.get());
+    });
+    TestUtils::syncHierarchyPropertiesAndDisplayList(node);
+    EXPECT_EQ(1, refcnt);
+
+    TestUtils::recordNode(*node, [&](TestCanvas& canvas) {
+        refcnt++;
+        canvas.callDrawGLFunction(&noopFunctor, listener.get());
+    });
+    EXPECT_EQ(2, refcnt);
+
+    TestUtils::syncHierarchyPropertiesAndDisplayList(node);
+    EXPECT_EQ(1, refcnt);
+
+    TestUtils::recordNode(*node, [](TestCanvas& canvas) {});
+    EXPECT_EQ(1, refcnt);
+    TestUtils::syncHierarchyPropertiesAndDisplayList(node);
+    EXPECT_EQ(0, refcnt);
+}
diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java
index 00eff91..23ae691 100644
--- a/media/java/android/media/AudioManager.java
+++ b/media/java/android/media/AudioManager.java
@@ -1502,11 +1502,16 @@
      */
     public boolean isBluetoothA2dpOn() {
         if (AudioSystem.getDeviceConnectionState(DEVICE_OUT_BLUETOOTH_A2DP,"")
-            == AudioSystem.DEVICE_STATE_UNAVAILABLE) {
-            return false;
-        } else {
+                == AudioSystem.DEVICE_STATE_AVAILABLE) {
+            return true;
+        } else if (AudioSystem.getDeviceConnectionState(DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES,"")
+                == AudioSystem.DEVICE_STATE_AVAILABLE) {
+            return true;
+        } else if (AudioSystem.getDeviceConnectionState(DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER,"")
+                == AudioSystem.DEVICE_STATE_AVAILABLE) {
             return true;
         }
+        return false;
     }
 
     /**
diff --git a/media/java/android/media/AudioTrack.java b/media/java/android/media/AudioTrack.java
index 9d360db..2fa3a72 100644
--- a/media/java/android/media/AudioTrack.java
+++ b/media/java/android/media/AudioTrack.java
@@ -28,7 +28,6 @@
 import android.annotation.IntDef;
 import android.annotation.NonNull;
 import android.app.ActivityThread;
-import android.app.AppOpsManager;
 import android.content.Context;
 import android.os.Handler;
 import android.os.IBinder;
@@ -41,7 +40,6 @@
 import android.util.Log;
 
 import com.android.internal.annotations.GuardedBy;
-import com.android.internal.app.IAppOpsService;
 
 /**
  * The AudioTrack class manages and plays a single audio resource for Java applications.
@@ -78,7 +76,8 @@
  *
  * AudioTrack is not final and thus permits subclasses, but such use is not recommended.
  */
-public class AudioTrack implements AudioRouting
+public class AudioTrack extends PlayerBase
+                        implements AudioRouting
 {
     //---------------------------------------------------------
     // Constants
@@ -271,7 +270,6 @@
      */
     private int mStreamType = AudioManager.STREAM_MUSIC;
 
-    private final AudioAttributes mAttributes;
     /**
      * The way audio is consumed by the audio sink, one of MODE_STATIC or MODE_STREAM.
      */
@@ -298,10 +296,6 @@
      */
     private int mSessionId = AudioManager.AUDIO_SESSION_ID_GENERATE;
     /**
-     * Reference to the app-ops service.
-     */
-    private final IAppOpsService mAppOps;
-    /**
      * HW_AV_SYNC track AV Sync Header
      */
     private ByteBuffer mAvSyncHeader = null;
@@ -448,11 +442,9 @@
     public AudioTrack(AudioAttributes attributes, AudioFormat format, int bufferSizeInBytes,
             int mode, int sessionId)
                     throws IllegalArgumentException {
+        super(attributes);
         // mState already == STATE_UNINITIALIZED
 
-        if (attributes == null) {
-            throw new IllegalArgumentException("Illegal null AudioAttributes");
-        }
         if (format == null) {
             throw new IllegalArgumentException("Illegal null AudioFormat");
         }
@@ -491,10 +483,6 @@
         audioBuffSizeCheck(bufferSizeInBytes);
 
         mInitializationLooper = looper;
-        IBinder b = ServiceManager.getService(Context.APP_OPS_SERVICE);
-        mAppOps = IAppOpsService.Stub.asInterface(b);
-
-        mAttributes = new AudioAttributes.Builder(attributes).build();
 
         if (sessionId < 0) {
             throw new IllegalArgumentException("Invalid audio session ID: "+sessionId);
@@ -534,9 +522,8 @@
      * OpenSLES interface is realized.
      */
     /*package*/ AudioTrack(long nativeTrackInJavaObj) {
+        super(new AudioAttributes.Builder().build());
         // "final"s
-        mAttributes = null;
-        mAppOps = null;
         mNativeTrackInJavaObj = 0;
         mJniData = 0;
 
@@ -961,12 +948,14 @@
         } catch(IllegalStateException ise) {
             // don't raise an exception, we're releasing the resources.
         }
+        baseRelease();
         native_release();
         mState = STATE_UNINITIALIZED;
     }
 
     @Override
     protected void finalize() {
+        baseRelease();
         native_finalize();
     }
 
@@ -1492,21 +1481,22 @@
      */
     @Deprecated
     public int setStereoVolume(float leftGain, float rightGain) {
-        if (isRestricted()) {
-            return SUCCESS;
-        }
         if (mState == STATE_UNINITIALIZED) {
             return ERROR_INVALID_OPERATION;
         }
 
-        leftGain = clampGainOrLevel(leftGain);
-        rightGain = clampGainOrLevel(rightGain);
-
-        native_setVolume(leftGain, rightGain);
-
+        baseSetVolume(leftGain, rightGain);
         return SUCCESS;
     }
 
+    @Override
+    void playerSetVolume(float leftVolume, float rightVolume) {
+        leftVolume = clampGainOrLevel(leftVolume);
+        rightVolume = clampGainOrLevel(rightVolume);
+
+        native_setVolume(leftVolume, rightVolume);
+    }
+
 
     /**
      * Sets the specified output gain value on all channels of this track.
@@ -1728,29 +1718,13 @@
         if (mState != STATE_INITIALIZED) {
             throw new IllegalStateException("play() called on uninitialized AudioTrack.");
         }
-        if (isRestricted()) {
-            setVolume(0);
-        }
+        baseStart();
         synchronized(mPlayStateLock) {
             native_start();
             mPlayState = PLAYSTATE_PLAYING;
         }
     }
 
-    private boolean isRestricted() {
-        if ((mAttributes.getAllFlags() & AudioAttributes.FLAG_BYPASS_INTERRUPTION_POLICY) != 0) {
-            return false;
-        }
-        try {
-            final int usage = AudioAttributes.usageForLegacyStreamType(mStreamType);
-            final int mode = mAppOps.checkAudioOperation(AppOpsManager.OP_PLAY_AUDIO, usage,
-                    Process.myUid(), ActivityThread.currentPackageName());
-            return mode != AppOpsManager.MODE_ALLOWED;
-        } catch (RemoteException e) {
-            return false;
-        }
-    }
-
     /**
      * Stops playing the audio data.
      * When used on an instance created in {@link #MODE_STREAM} mode, audio will stop playing
@@ -2375,12 +2349,14 @@
      *    {@link #ERROR_INVALID_OPERATION}, {@link #ERROR}
      */
     public int setAuxEffectSendLevel(float level) {
-        if (isRestricted()) {
-            return SUCCESS;
-        }
         if (mState == STATE_UNINITIALIZED) {
             return ERROR_INVALID_OPERATION;
         }
+        return baseSetAuxEffectSendLevel(level);
+    }
+
+    @Override
+    int playerSetAuxEffectSendLevel(float level) {
         level = clampGainOrLevel(level);
         int err = native_setAuxEffectSendLevel(level);
         return err == 0 ? SUCCESS : ERROR;
diff --git a/media/java/android/media/ExifInterface.java b/media/java/android/media/ExifInterface.java
index 72f5742..4848630b 100644
--- a/media/java/android/media/ExifInterface.java
+++ b/media/java/android/media/ExifInterface.java
@@ -24,20 +24,22 @@
 import android.system.Os;
 import android.system.OsConstants;
 import android.util.Log;
+import android.util.Pair;
 
 import java.io.BufferedInputStream;
 import java.io.ByteArrayInputStream;
 import java.io.DataInputStream;
-import java.io.DataOutputStream;
 import java.io.EOFException;
 import java.io.File;
 import java.io.FileDescriptor;
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
+import java.io.FilterOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
+import java.nio.ByteBuffer;
 import java.nio.ByteOrder;
 import java.nio.charset.Charset;
 import java.text.ParsePosition;
@@ -45,9 +47,11 @@
 import java.util.Arrays;
 import java.util.Date;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
 import java.util.TimeZone;
+import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
 import libcore.io.IoUtils;
@@ -188,7 +192,7 @@
     public static final String TAG_FOCAL_PLANE_X_RESOLUTION = "FocalPlaneXResolution";
     /** Type is rational. */
     public static final String TAG_FOCAL_PLANE_Y_RESOLUTION = "FocalPlaneYResolution";
-    /** Type is rational. */
+    /** Type is int. */
     public static final String TAG_GAIN_CONTROL = "GainControl";
     /** Type is int. */
     public static final String TAG_ISO_SPEED_RATINGS = "ISOSpeedRatings";
@@ -233,15 +237,23 @@
     public static final String TAG_SPATIAL_FREQUENCY_RESPONSE = "SpatialFrequencyResponse";
     /** Type is String. */
     public static final String TAG_SPECTRAL_SENSITIVITY = "SpectralSensitivity";
-    /** Type is int. */
+    /** Type is String. */
     public static final String TAG_SUBSEC_TIME = "SubSecTime";
-    /** Type is int. */
-    public static final String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized";
-    /** Type is int. */
+    /**
+     * Type is String.
+     *
+     * @deprecated use {@link #TAG_SUBSEC_TIME_DIGITIZED} instead
+     */
     public static final String TAG_SUBSEC_TIME_DIG = "SubSecTimeDigitized";
-    /** Type is int. */
+    /** Type is String. */
+    public static final String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized";
+    /**
+     * Type is String.
+     *
+     * @deprecated use {@link #TAG_SUBSEC_TIME_ORIGINAL} instead
+     */
     public static final String TAG_SUBSEC_TIME_ORIG = "SubSecTimeOriginal";
-    /** Type is int. */
+    /** Type is String. */
     public static final String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal";
     /** Type is int. */
     public static final String TAG_SUBJECT_AREA = "SubjectArea";
@@ -293,11 +305,11 @@
     public static final String TAG_GPS_IMG_DIRECTION = "GPSImgDirection";
     /** Type is String. */
     public static final String TAG_GPS_IMG_DIRECTION_REF = "GPSImgDirectionRef";
-    /** String. Format is "num1/denom1,num2/denom2,num3/denom3". */
+    /** Type is rational. Format is "num1/denom1,num2/denom2,num3/denom3". */
     public static final String TAG_GPS_LATITUDE = "GPSLatitude";
     /** Type is String. */
     public static final String TAG_GPS_LATITUDE_REF = "GPSLatitudeRef";
-    /** String. Format is "num1/denom1,num2/denom2,num3/denom3". */
+    /** Type is rational. Format is "num1/denom1,num2/denom2,num3/denom3". */
     public static final String TAG_GPS_LONGITUDE = "GPSLongitude";
     /** Type is String. */
     public static final String TAG_GPS_LONGITUDE_REF = "GPSLongitudeRef";
@@ -315,7 +327,7 @@
     public static final String TAG_GPS_SPEED_REF = "GPSSpeedRef";
     /** Type is String. */
     public static final String TAG_GPS_STATUS = "GPSStatus";
-    /** Type is String. */
+    /** Type is String. Format is "hh:mm:ss". */
     public static final String TAG_GPS_TIMESTAMP = "GPSTimeStamp";
     /** Type is rational. */
     public static final String TAG_GPS_TRACK = "GPSTrack";
@@ -336,10 +348,10 @@
     private static final String TAG_INTEROPERABILITY_IFD_POINTER = "InteroperabilityIFDPointer";
 
     // Private tags used for thumbnail information.
-    private static final String TAG_HAS_THUMBNAIL = "hasThumbnail";
-    private static final String TAG_THUMBNAIL_OFFSET = "thumbnailOffset";
-    private static final String TAG_THUMBNAIL_LENGTH = "thumbnailLength";
-    private static final String TAG_THUMBNAIL_DATA = "thumbnailData";
+    private static final String TAG_HAS_THUMBNAIL = "HasThumbnail";
+    private static final String TAG_THUMBNAIL_OFFSET = "ThumbnailOffset";
+    private static final String TAG_THUMBNAIL_LENGTH = "ThumbnailLength";
+    private static final String TAG_THUMBNAIL_DATA = "ThumbnailData";
 
     // Constants used for the Orientation Exif tag.
     public static final int ORIENTATION_UNDEFINED = 0;
@@ -385,6 +397,11 @@
     private static final int IFD_FORMAT_SRATIONAL = 10;
     private static final int IFD_FORMAT_SINGLE = 11;
     private static final int IFD_FORMAT_DOUBLE = 12;
+    // Names for the data formats for debugging purpose.
+    private static final String[] IFD_FORMAT_NAMES = new String[] {
+            "", "BYTE", "STRING", "USHORT", "ULONG", "URATIONAL", "SBYTE", "UNDEFINED", "SSHORT",
+            "SLONG", "SRATIONAL", "SINGLE", "DOUBLE"
+    };
     // Sizes of the components of each IFD value format
     private static final int[] IFD_FORMAT_BYTES_PER_FORMAT = new int[] {
             0, 1, 1, 2, 4, 8, 1, 1, 2, 4, 8, 4, 8
@@ -393,184 +410,579 @@
             0x41, 0x53, 0x43, 0x49, 0x49, 0x0, 0x0, 0x0
     };
 
+    // A class for indicating EXIF rational type.
+    private static class Rational {
+        public final long numerator;
+        public final long denominator;
+
+        private Rational(long numerator, long denominator) {
+            // Handle erroneous case
+            if (denominator == 0) {
+                this.numerator = 0;
+                this.denominator = 1;
+                return;
+            }
+            this.numerator = numerator;
+            this.denominator = denominator;
+        }
+
+        @Override
+        public String toString() {
+            return numerator + "/" + denominator;
+        }
+
+        public double calculate() {
+            return (double) numerator / denominator;
+        }
+    }
+
+    // A class for indicating EXIF attribute.
+    private static class ExifAttribute {
+        public final int format;
+        public final int numberOfComponents;
+        public final byte[] bytes;
+
+        private ExifAttribute(int format, int numberOfComponents, byte[] bytes) {
+            this.format = format;
+            this.numberOfComponents = numberOfComponents;
+            this.bytes = bytes;
+        }
+
+        public static ExifAttribute createUShort(int[] values, ByteOrder byteOrder) {
+            final ByteBuffer buffer = ByteBuffer.wrap(
+                    new byte[IFD_FORMAT_BYTES_PER_FORMAT[IFD_FORMAT_USHORT] * values.length]);
+            buffer.order(byteOrder);
+            for (int value : values) {
+                buffer.putShort((short) value);
+            }
+            return new ExifAttribute(IFD_FORMAT_USHORT, values.length, buffer.array());
+        }
+
+        public static ExifAttribute createUShort(int value, ByteOrder byteOrder) {
+            return createUShort(new int[] {value}, byteOrder);
+        }
+
+        public static ExifAttribute createULong(long[] values, ByteOrder byteOrder) {
+            final ByteBuffer buffer = ByteBuffer.wrap(
+                    new byte[IFD_FORMAT_BYTES_PER_FORMAT[IFD_FORMAT_ULONG] * values.length]);
+            buffer.order(byteOrder);
+            for (long value : values) {
+                buffer.putInt((int) value);
+            }
+            return new ExifAttribute(IFD_FORMAT_ULONG, values.length, buffer.array());
+        }
+
+        public static ExifAttribute createULong(long value, ByteOrder byteOrder) {
+            return createULong(new long[] {value}, byteOrder);
+        }
+
+        public static ExifAttribute createSLong(int[] values, ByteOrder byteOrder) {
+            final ByteBuffer buffer = ByteBuffer.wrap(
+                    new byte[IFD_FORMAT_BYTES_PER_FORMAT[IFD_FORMAT_SLONG] * values.length]);
+            buffer.order(byteOrder);
+            for (int value : values) {
+                buffer.putInt(value);
+            }
+            return new ExifAttribute(IFD_FORMAT_SLONG, values.length, buffer.array());
+        }
+
+        public static ExifAttribute createSLong(int value, ByteOrder byteOrder) {
+            return createSLong(new int[] {value}, byteOrder);
+        }
+
+        public static ExifAttribute createByte(String value) {
+            // Exception for GPSAltitudeRef tag
+            if (value.length() == 1 && value.charAt(0) >= '0' && value.charAt(0) <= '1') {
+                final byte[] bytes = new byte[] { (byte) (value.charAt(0) - '0') };
+                return new ExifAttribute(IFD_FORMAT_BYTE, bytes.length, bytes);
+            }
+            final byte[] ascii = value.getBytes(ASCII);
+            return new ExifAttribute(IFD_FORMAT_BYTE, ascii.length, ascii);
+        }
+
+        public static ExifAttribute createString(String value) {
+            final byte[] ascii = (value + '\0').getBytes(ASCII);
+            return new ExifAttribute(IFD_FORMAT_STRING, ascii.length, ascii);
+        }
+
+        public static ExifAttribute createURational(Rational[] values, ByteOrder byteOrder) {
+            final ByteBuffer buffer = ByteBuffer.wrap(
+                    new byte[IFD_FORMAT_BYTES_PER_FORMAT[IFD_FORMAT_URATIONAL] * values.length]);
+            buffer.order(byteOrder);
+            for (Rational value : values) {
+                buffer.putInt((int) value.numerator);
+                buffer.putInt((int) value.denominator);
+            }
+            return new ExifAttribute(IFD_FORMAT_URATIONAL, values.length, buffer.array());
+        }
+
+        public static ExifAttribute createURational(Rational value, ByteOrder byteOrder) {
+            return createURational(new Rational[] {value}, byteOrder);
+        }
+
+        public static ExifAttribute createSRational(Rational[] values, ByteOrder byteOrder) {
+            final ByteBuffer buffer = ByteBuffer.wrap(
+                    new byte[IFD_FORMAT_BYTES_PER_FORMAT[IFD_FORMAT_SRATIONAL] * values.length]);
+            buffer.order(byteOrder);
+            for (Rational value : values) {
+                buffer.putInt((int) value.numerator);
+                buffer.putInt((int) value.denominator);
+            }
+            return new ExifAttribute(IFD_FORMAT_SRATIONAL, values.length, buffer.array());
+        }
+
+        public static ExifAttribute createSRational(Rational value, ByteOrder byteOrder) {
+            return createSRational(new Rational[] {value}, byteOrder);
+        }
+
+        public static ExifAttribute createDouble(double[] values, ByteOrder byteOrder) {
+            final ByteBuffer buffer = ByteBuffer.wrap(
+                    new byte[IFD_FORMAT_BYTES_PER_FORMAT[IFD_FORMAT_DOUBLE] * values.length]);
+            buffer.order(byteOrder);
+            for (double value : values) {
+                buffer.putDouble(value);
+            }
+            return new ExifAttribute(IFD_FORMAT_DOUBLE, values.length, buffer.array());
+        }
+
+        public static ExifAttribute createDouble(double value, ByteOrder byteOrder) {
+            return createDouble(new double[] {value}, byteOrder);
+        }
+
+        @Override
+        public String toString() {
+            return "(" + IFD_FORMAT_NAMES[format] + ", data length:" + bytes.length + ")";
+        }
+
+        private Object getValue(ByteOrder byteOrder) {
+            try {
+                ByteOrderAwarenessDataInputStream inputStream =
+                        new ByteOrderAwarenessDataInputStream(bytes);
+                inputStream.setByteOrder(byteOrder);
+                switch (format) {
+                    case IFD_FORMAT_BYTE:
+                    case IFD_FORMAT_SBYTE: {
+                        // Exception for GPSAltitudeRef tag
+                        if (bytes.length == 1 && bytes[0] >= 0 && bytes[0] <= 1) {
+                            return new String(new char[] { (char) (bytes[0] + '0') });
+                        }
+                        return new String(bytes, ASCII);
+                    }
+                    case IFD_FORMAT_UNDEFINED:
+                    case IFD_FORMAT_STRING: {
+                        int index = 0;
+                        if (numberOfComponents >= EXIF_ASCII_PREFIX.length) {
+                            boolean same = true;
+                            for (int i = 0; i < EXIF_ASCII_PREFIX.length; ++i) {
+                                if (bytes[i] != EXIF_ASCII_PREFIX[i]) {
+                                    same = false;
+                                    break;
+                                }
+                            }
+                            if (same) {
+                                index = EXIF_ASCII_PREFIX.length;
+                            }
+                        }
+
+                        StringBuilder stringBuilder = new StringBuilder();
+                        while (index < numberOfComponents) {
+                            int ch = bytes[index];
+                            if (ch == 0) {
+                                break;
+                            }
+                            if (ch >= 32) {
+                                stringBuilder.append((char) ch);
+                            } else {
+                                stringBuilder.append('?');
+                            }
+                            ++index;
+                        }
+                        return stringBuilder.toString();
+                    }
+                    case IFD_FORMAT_USHORT: {
+                        final int[] values = new int[numberOfComponents];
+                        for (int i = 0; i < numberOfComponents; ++i) {
+                            values[i] = inputStream.readUnsignedShort();
+                        }
+                        return values;
+                    }
+                    case IFD_FORMAT_ULONG: {
+                        final long[] values = new long[numberOfComponents];
+                        for (int i = 0; i < numberOfComponents; ++i) {
+                            values[i] = inputStream.readUnsignedInt();
+                        }
+                        return values;
+                    }
+                    case IFD_FORMAT_URATIONAL: {
+                        final Rational[] values = new Rational[numberOfComponents];
+                        for (int i = 0; i < numberOfComponents; ++i) {
+                            final long numerator = inputStream.readUnsignedInt();
+                            final long denominator = inputStream.readUnsignedInt();
+                            values[i] = new Rational(numerator, denominator);
+                        }
+                        return values;
+                    }
+                    case IFD_FORMAT_SSHORT: {
+                        final int[] values = new int[numberOfComponents];
+                        for (int i = 0; i < numberOfComponents; ++i) {
+                            values[i] = inputStream.readShort();
+                        }
+                        return values;
+                    }
+                    case IFD_FORMAT_SLONG: {
+                        final int[] values = new int[numberOfComponents];
+                        for (int i = 0; i < numberOfComponents; ++i) {
+                            values[i] = inputStream.readInt();
+                        }
+                        return values;
+                    }
+                    case IFD_FORMAT_SRATIONAL: {
+                        final Rational[] values = new Rational[numberOfComponents];
+                        for (int i = 0; i < numberOfComponents; ++i) {
+                            final long numerator = inputStream.readInt();
+                            final long denominator = inputStream.readInt();
+                            values[i] = new Rational(numerator, denominator);
+                        }
+                        return values;
+                    }
+                    case IFD_FORMAT_SINGLE: {
+                        final double[] values = new double[numberOfComponents];
+                        for (int i = 0; i < numberOfComponents; ++i) {
+                            values[i] = inputStream.readFloat();
+                        }
+                        return values;
+                    }
+                    case IFD_FORMAT_DOUBLE: {
+                        final double[] values = new double[numberOfComponents];
+                        for (int i = 0; i < numberOfComponents; ++i) {
+                            values[i] = inputStream.readDouble();
+                        }
+                        return values;
+                    }
+                    default:
+                        return null;
+                }
+            } catch (IOException e) {
+                Log.w(TAG, "IOException occurred during reading a value", e);
+                return null;
+            }
+        }
+
+        public double getDoubleValue(ByteOrder byteOrder) {
+            Object value = getValue(byteOrder);
+            if (value == null) {
+                throw new NumberFormatException("NULL can't be converted to a double value");
+            }
+            if (value instanceof String) {
+                return Double.parseDouble((String) value);
+            }
+            if (value instanceof long[]) {
+                long[] array = (long[]) value;
+                if (array.length == 1) {
+                    return (double) array[0];
+                }
+                throw new NumberFormatException("There are more than one component");
+            }
+            if (value instanceof int[]) {
+                int[] array = (int[]) value;
+                if (array.length == 1) {
+                    return (double) array[0];
+                }
+                throw new NumberFormatException("There are more than one component");
+            }
+            if (value instanceof double[]) {
+                double[] array = (double[]) value;
+                if (array.length == 1) {
+                    return array[0];
+                }
+                throw new NumberFormatException("There are more than one component");
+            }
+            if (value instanceof Rational[]) {
+                Rational[] array = (Rational[]) value;
+                if (array.length == 1) {
+                    return array[0].calculate();
+                }
+                throw new NumberFormatException("There are more than one component");
+            }
+            throw new NumberFormatException("Couldn't find a double value");
+        }
+
+        public int getIntValue(ByteOrder byteOrder) {
+            Object value = getValue(byteOrder);
+            if (value == null) {
+                throw new NumberFormatException("NULL can't be converted to a integer value");
+            }
+            if (value instanceof String) {
+                return Integer.parseInt((String) value);
+            }
+            if (value instanceof long[]) {
+                long[] array = (long[]) value;
+                if (array.length == 1) {
+                    return (int) array[0];
+                }
+                throw new NumberFormatException("There are more than one component");
+            }
+            if (value instanceof int[]) {
+                int[] array = (int[]) value;
+                if (array.length == 1) {
+                    return array[0];
+                }
+                throw new NumberFormatException("There are more than one component");
+            }
+            throw new NumberFormatException("Couldn't find a integer value");
+        }
+
+        public String getStringValue(ByteOrder byteOrder) {
+            Object value = getValue(byteOrder);
+            if (value == null) {
+                return null;
+            }
+            if (value instanceof String) {
+                return (String) value;
+            }
+
+            final StringBuilder stringBuilder = new StringBuilder();
+            if (value instanceof long[]) {
+                long[] array = (long[]) value;
+                for (int i = 0; i < array.length; ++i) {
+                    stringBuilder.append(array[i]);
+                    if (i + 1 != array.length) {
+                        stringBuilder.append(",");
+                    }
+                }
+                return stringBuilder.toString();
+            }
+            if (value instanceof int[]) {
+                int[] array = (int[]) value;
+                for (int i = 0; i < array.length; ++i) {
+                    stringBuilder.append(array[i]);
+                    if (i + 1 != array.length) {
+                        stringBuilder.append(",");
+                    }
+                }
+                return stringBuilder.toString();
+            }
+            if (value instanceof double[]) {
+                double[] array = (double[]) value;
+                for (int i = 0; i < array.length; ++i) {
+                    stringBuilder.append(array[i]);
+                    if (i + 1 != array.length) {
+                        stringBuilder.append(",");
+                    }
+                }
+                return stringBuilder.toString();
+            }
+            if (value instanceof Rational[]) {
+                Rational[] array = (Rational[]) value;
+                for (int i = 0; i < array.length; ++i) {
+                    stringBuilder.append(array[i].numerator);
+                    stringBuilder.append('/');
+                    stringBuilder.append(array[i].denominator);
+                    if (i + 1 != array.length) {
+                        stringBuilder.append(",");
+                    }
+                }
+                return stringBuilder.toString();
+            }
+            return null;
+        }
+
+        public int size() {
+            return IFD_FORMAT_BYTES_PER_FORMAT[format] * numberOfComponents;
+        }
+    }
+
     // A class for indicating EXIF tag.
     private static class ExifTag {
         public final int number;
         public final String name;
+        public final int primaryFormat;
+        public final int secondaryFormat;
 
-        private ExifTag(String name, int number) {
+        private ExifTag(String name, int number, int format) {
             this.name = name;
             this.number = number;
+            this.primaryFormat = format;
+            this.secondaryFormat = -1;
+        }
+
+        private ExifTag(String name, int number, int primaryFormat, int secondaryFormat) {
+            this.name = name;
+            this.number = number;
+            this.primaryFormat = primaryFormat;
+            this.secondaryFormat = secondaryFormat;
         }
     }
 
     // Primary image IFD TIFF tags (See JEITA CP-3451 Table 14. page 54).
     private static final ExifTag[] IFD_TIFF_TAGS = new ExifTag[] {
-            new ExifTag(TAG_IMAGE_WIDTH, 256),
-            new ExifTag(TAG_IMAGE_LENGTH, 257),
-            new ExifTag(TAG_BITS_PER_SAMPLE, 258),
-            new ExifTag(TAG_COMPRESSION, 259),
-            new ExifTag(TAG_PHOTOMETRIC_INTERPRETATION, 262),
-            new ExifTag(TAG_IMAGE_DESCRIPTION, 270),
-            new ExifTag(TAG_MAKE, 271),
-            new ExifTag(TAG_MODEL, 272),
-            new ExifTag(TAG_STRIP_OFFSETS, 273),
-            new ExifTag(TAG_ORIENTATION, 274),
-            new ExifTag(TAG_SAMPLES_PER_PIXEL, 277),
-            new ExifTag(TAG_ROWS_PER_STRIP, 278),
-            new ExifTag(TAG_STRIP_BYTE_COUNTS, 279),
-            new ExifTag(TAG_X_RESOLUTION, 282),
-            new ExifTag(TAG_Y_RESOLUTION, 283),
-            new ExifTag(TAG_PLANAR_CONFIGURATION, 284),
-            new ExifTag(TAG_RESOLUTION_UNIT, 296),
-            new ExifTag(TAG_TRANSFER_FUNCTION, 301),
-            new ExifTag(TAG_SOFTWARE, 305),
-            new ExifTag(TAG_DATETIME, 306),
-            new ExifTag(TAG_ARTIST, 315),
-            new ExifTag(TAG_WHITE_POINT, 318),
-            new ExifTag(TAG_PRIMARY_CHROMATICITIES, 319),
-            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT, 513),
-            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT_LENGTH, 514),
-            new ExifTag(TAG_Y_CB_CR_COEFFICIENTS, 529),
-            new ExifTag(TAG_Y_CB_CR_SUB_SAMPLING, 530),
-            new ExifTag(TAG_Y_CB_CR_POSITIONING, 531),
-            new ExifTag(TAG_REFERENCE_BLACK_WHITE, 532),
-            new ExifTag(TAG_COPYRIGHT, 33432),
-            new ExifTag(TAG_EXIF_IFD_POINTER, 34665),
-            new ExifTag(TAG_GPS_INFO_IFD_POINTER, 34853),
+            new ExifTag(TAG_IMAGE_WIDTH, 256, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_IMAGE_LENGTH, 257, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_BITS_PER_SAMPLE, 258, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_COMPRESSION, 259, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_PHOTOMETRIC_INTERPRETATION, 262, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_IMAGE_DESCRIPTION, 270, IFD_FORMAT_STRING),
+            new ExifTag(TAG_MAKE, 271, IFD_FORMAT_STRING),
+            new ExifTag(TAG_MODEL, 272, IFD_FORMAT_STRING),
+            new ExifTag(TAG_STRIP_OFFSETS, 273, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_ORIENTATION, 274, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_SAMPLES_PER_PIXEL, 277, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_ROWS_PER_STRIP, 278, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_STRIP_BYTE_COUNTS, 279, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_X_RESOLUTION, 282, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_Y_RESOLUTION, 283, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_PLANAR_CONFIGURATION, 284, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_RESOLUTION_UNIT, 296, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_TRANSFER_FUNCTION, 301, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_SOFTWARE, 305, IFD_FORMAT_STRING),
+            new ExifTag(TAG_DATETIME, 306, IFD_FORMAT_STRING),
+            new ExifTag(TAG_ARTIST, 315, IFD_FORMAT_STRING),
+            new ExifTag(TAG_WHITE_POINT, 318, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_PRIMARY_CHROMATICITIES, 319, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT, 513, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT_LENGTH, 514, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_Y_CB_CR_COEFFICIENTS, 529, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_Y_CB_CR_SUB_SAMPLING, 530, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_Y_CB_CR_POSITIONING, 531, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_REFERENCE_BLACK_WHITE, 532, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_COPYRIGHT, 33432, IFD_FORMAT_STRING),
+            new ExifTag(TAG_EXIF_IFD_POINTER, 34665, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_GPS_INFO_IFD_POINTER, 34853, IFD_FORMAT_ULONG),
     };
+
     // Primary image IFD Exif Private tags (See JEITA CP-3451 Table 15. page 55).
     private static final ExifTag[] IFD_EXIF_TAGS = new ExifTag[] {
-            new ExifTag(TAG_EXPOSURE_TIME, 33434),
-            new ExifTag(TAG_F_NUMBER, 33437),
-            new ExifTag(TAG_EXPOSURE_PROGRAM, 34850),
-            new ExifTag(TAG_SPECTRAL_SENSITIVITY, 34852),
-            new ExifTag(TAG_ISO_SPEED_RATINGS, 34855),
-            new ExifTag(TAG_OECF, 34856),
-            new ExifTag(TAG_EXIF_VERSION, 36864),
-            new ExifTag(TAG_DATETIME_ORIGINAL, 36867),
-            new ExifTag(TAG_DATETIME_DIGITIZED, 36868),
-            new ExifTag(TAG_COMPONENTS_CONFIGURATION, 37121),
-            new ExifTag(TAG_COMPRESSED_BITS_PER_PIXEL, 37122),
-            new ExifTag(TAG_SHUTTER_SPEED_VALUE, 37377),
-            new ExifTag(TAG_APERTURE_VALUE, 37378),
-            new ExifTag(TAG_BRIGHTNESS_VALUE, 37379),
-            new ExifTag(TAG_EXPOSURE_BIAS_VALUE, 37380),
-            new ExifTag(TAG_MAX_APERTURE_VALUE, 37381),
-            new ExifTag(TAG_SUBJECT_DISTANCE, 37382),
-            new ExifTag(TAG_METERING_MODE, 37383),
-            new ExifTag(TAG_LIGHT_SOURCE, 37384),
-            new ExifTag(TAG_FLASH, 37385),
-            new ExifTag(TAG_FOCAL_LENGTH, 37386),
-            new ExifTag(TAG_SUBJECT_AREA, 37396),
-            new ExifTag(TAG_MAKER_NOTE, 37500),
-            new ExifTag(TAG_USER_COMMENT, 37510),
-            new ExifTag(TAG_SUBSEC_TIME, 37520),
-            new ExifTag(TAG_SUBSEC_TIME_ORIG, 37521),
-            new ExifTag(TAG_SUBSEC_TIME_DIG, 37522),
-            new ExifTag(TAG_FLASHPIX_VERSION, 40960),
-            new ExifTag(TAG_COLOR_SPACE, 40961),
-            new ExifTag(TAG_PIXEL_X_DIMENSION, 40962),
-            new ExifTag(TAG_PIXEL_Y_DIMENSION, 40963),
-            new ExifTag(TAG_RELATED_SOUND_FILE, 40964),
-            new ExifTag(TAG_INTEROPERABILITY_IFD_POINTER, 40965),
-            new ExifTag(TAG_FLASH_ENERGY, 41483),
-            new ExifTag(TAG_SPATIAL_FREQUENCY_RESPONSE, 41484),
-            new ExifTag(TAG_FOCAL_PLANE_X_RESOLUTION, 41486),
-            new ExifTag(TAG_FOCAL_PLANE_Y_RESOLUTION, 41487),
-            new ExifTag(TAG_FOCAL_PLANE_RESOLUTION_UNIT, 41488),
-            new ExifTag(TAG_SUBJECT_LOCATION, 41492),
-            new ExifTag(TAG_EXPOSURE_INDEX, 41493),
-            new ExifTag(TAG_SENSING_METHOD, 41495),
-            new ExifTag(TAG_FILE_SOURCE, 41728),
-            new ExifTag(TAG_SCENE_TYPE, 41729),
-            new ExifTag(TAG_CFA_PATTERN, 41730),
-            new ExifTag(TAG_CUSTOM_RENDERED, 41985),
-            new ExifTag(TAG_EXPOSURE_MODE, 41986),
-            new ExifTag(TAG_WHITE_BALANCE, 41987),
-            new ExifTag(TAG_DIGITAL_ZOOM_RATIO, 41988),
-            new ExifTag(TAG_FOCAL_LENGTH_IN_35MM_FILM, 41989),
-            new ExifTag(TAG_SCENE_CAPTURE_TYPE, 41990),
-            new ExifTag(TAG_GAIN_CONTROL, 41991),
-            new ExifTag(TAG_CONTRAST, 41992),
-            new ExifTag(TAG_SATURATION, 41993),
-            new ExifTag(TAG_SHARPNESS, 41994),
-            new ExifTag(TAG_DEVICE_SETTING_DESCRIPTION, 41995),
-            new ExifTag(TAG_SUBJECT_DISTANCE_RANGE, 41996),
-            new ExifTag(TAG_IMAGE_UNIQUE_ID, 42016),
+            new ExifTag(TAG_EXPOSURE_TIME, 33434, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_F_NUMBER, 33437, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_EXPOSURE_PROGRAM, 34850, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_SPECTRAL_SENSITIVITY, 34852, IFD_FORMAT_STRING),
+            new ExifTag(TAG_ISO_SPEED_RATINGS, 34855, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_OECF, 34856, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_EXIF_VERSION, 36864, IFD_FORMAT_STRING),
+            new ExifTag(TAG_DATETIME_ORIGINAL, 36867, IFD_FORMAT_STRING),
+            new ExifTag(TAG_DATETIME_DIGITIZED, 36868, IFD_FORMAT_STRING),
+            new ExifTag(TAG_COMPONENTS_CONFIGURATION, 37121, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_COMPRESSED_BITS_PER_PIXEL, 37122, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_SHUTTER_SPEED_VALUE, 37377, IFD_FORMAT_SRATIONAL),
+            new ExifTag(TAG_APERTURE_VALUE, 37378, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_BRIGHTNESS_VALUE, 37379, IFD_FORMAT_SRATIONAL),
+            new ExifTag(TAG_EXPOSURE_BIAS_VALUE, 37380, IFD_FORMAT_SRATIONAL),
+            new ExifTag(TAG_MAX_APERTURE_VALUE, 37381, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_SUBJECT_DISTANCE, 37382, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_METERING_MODE, 37383, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_LIGHT_SOURCE, 37384, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_FLASH, 37385, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_FOCAL_LENGTH, 37386, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_SUBJECT_AREA, 37396, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_MAKER_NOTE, 37500, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_USER_COMMENT, 37510, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_SUBSEC_TIME, 37520, IFD_FORMAT_STRING),
+            new ExifTag(TAG_SUBSEC_TIME_ORIG, 37521, IFD_FORMAT_STRING),
+            new ExifTag(TAG_SUBSEC_TIME_DIG, 37522, IFD_FORMAT_STRING),
+            new ExifTag(TAG_FLASHPIX_VERSION, 40960, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_COLOR_SPACE, 40961, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_PIXEL_X_DIMENSION, 40962, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_PIXEL_Y_DIMENSION, 40963, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_RELATED_SOUND_FILE, 40964, IFD_FORMAT_STRING),
+            new ExifTag(TAG_INTEROPERABILITY_IFD_POINTER, 40965, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_FLASH_ENERGY, 41483, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_SPATIAL_FREQUENCY_RESPONSE, 41484, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_FOCAL_PLANE_X_RESOLUTION, 41486, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_FOCAL_PLANE_Y_RESOLUTION, 41487, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_FOCAL_PLANE_RESOLUTION_UNIT, 41488, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_SUBJECT_LOCATION, 41492, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_EXPOSURE_INDEX, 41493, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_SENSING_METHOD, 41495, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_FILE_SOURCE, 41728, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_SCENE_TYPE, 41729, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_CFA_PATTERN, 41730, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_CUSTOM_RENDERED, 41985, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_EXPOSURE_MODE, 41986, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_WHITE_BALANCE, 41987, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_DIGITAL_ZOOM_RATIO, 41988, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_FOCAL_LENGTH_IN_35MM_FILM, 41989, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_SCENE_CAPTURE_TYPE, 41990, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_GAIN_CONTROL, 41991, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_CONTRAST, 41992, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_SATURATION, 41993, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_SHARPNESS, 41994, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_DEVICE_SETTING_DESCRIPTION, 41995, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_SUBJECT_DISTANCE_RANGE, 41996, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_IMAGE_UNIQUE_ID, 42016, IFD_FORMAT_STRING),
     };
+
     // Primary image IFD GPS Info tags (See JEITA CP-3451 Table 16. page 56).
     private static final ExifTag[] IFD_GPS_TAGS = new ExifTag[] {
-            new ExifTag(TAG_GPS_VERSION_ID, 0),
-            new ExifTag(TAG_GPS_LATITUDE_REF, 1),
-            new ExifTag(TAG_GPS_LATITUDE, 2),
-            new ExifTag(TAG_GPS_LONGITUDE_REF, 3),
-            new ExifTag(TAG_GPS_LONGITUDE, 4),
-            new ExifTag(TAG_GPS_ALTITUDE_REF, 5),
-            new ExifTag(TAG_GPS_ALTITUDE, 6),
-            new ExifTag(TAG_GPS_TIMESTAMP, 7),
-            new ExifTag(TAG_GPS_SATELLITES, 8),
-            new ExifTag(TAG_GPS_STATUS, 9),
-            new ExifTag(TAG_GPS_MEASURE_MODE, 10),
-            new ExifTag(TAG_GPS_DOP, 11),
-            new ExifTag(TAG_GPS_SPEED_REF, 12),
-            new ExifTag(TAG_GPS_SPEED, 13),
-            new ExifTag(TAG_GPS_TRACK_REF, 14),
-            new ExifTag(TAG_GPS_TRACK, 15),
-            new ExifTag(TAG_GPS_IMG_DIRECTION_REF, 16),
-            new ExifTag(TAG_GPS_IMG_DIRECTION, 17),
-            new ExifTag(TAG_GPS_MAP_DATUM, 18),
-            new ExifTag(TAG_GPS_DEST_LATITUDE_REF, 19),
-            new ExifTag(TAG_GPS_DEST_LATITUDE, 20),
-            new ExifTag(TAG_GPS_DEST_LONGITUDE_REF, 21),
-            new ExifTag(TAG_GPS_DEST_LONGITUDE, 22),
-            new ExifTag(TAG_GPS_DEST_BEARING_REF, 23),
-            new ExifTag(TAG_GPS_DEST_BEARING, 24),
-            new ExifTag(TAG_GPS_DEST_DISTANCE_REF, 25),
-            new ExifTag(TAG_GPS_DEST_DISTANCE, 26),
-            new ExifTag(TAG_GPS_PROCESSING_METHOD, 27),
-            new ExifTag(TAG_GPS_AREA_INFORMATION, 28),
-            new ExifTag(TAG_GPS_DATESTAMP, 29),
-            new ExifTag(TAG_GPS_DIFFERENTIAL, 30),
+            new ExifTag(TAG_GPS_VERSION_ID, 0, IFD_FORMAT_BYTE),
+            new ExifTag(TAG_GPS_LATITUDE_REF, 1, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_LATITUDE, 2, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_LONGITUDE_REF, 3, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_LONGITUDE, 4, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_ALTITUDE_REF, 5, IFD_FORMAT_BYTE),
+            new ExifTag(TAG_GPS_ALTITUDE, 6, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_TIMESTAMP, 7, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_SATELLITES, 8, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_STATUS, 9, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_MEASURE_MODE, 10, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_DOP, 11, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_SPEED_REF, 12, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_SPEED, 13, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_TRACK_REF, 14, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_TRACK, 15, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_IMG_DIRECTION_REF, 16, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_IMG_DIRECTION, 17, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_MAP_DATUM, 18, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_DEST_LATITUDE_REF, 19, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_DEST_LATITUDE, 20, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_DEST_LONGITUDE_REF, 21, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_DEST_LONGITUDE, 22, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_DEST_BEARING_REF, 23, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_DEST_BEARING, 24, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_DEST_DISTANCE_REF, 25, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_DEST_DISTANCE, 26, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_GPS_PROCESSING_METHOD, 27, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_GPS_AREA_INFORMATION, 28, IFD_FORMAT_UNDEFINED),
+            new ExifTag(TAG_GPS_DATESTAMP, 29, IFD_FORMAT_STRING),
+            new ExifTag(TAG_GPS_DIFFERENTIAL, 30, IFD_FORMAT_USHORT),
     };
     // Primary image IFD Interoperability tag (See JEITA CP-3451 Table 17. page 56).
     private static final ExifTag[] IFD_INTEROPERABILITY_TAGS = new ExifTag[] {
-            new ExifTag(TAG_INTEROPERABILITY_INDEX, 1),
+            new ExifTag(TAG_INTEROPERABILITY_INDEX, 1, IFD_FORMAT_STRING),
     };
     // IFD Thumbnail tags (See JEITA CP-3451 Table 18. page 57).
     private static final ExifTag[] IFD_THUMBNAIL_TAGS = new ExifTag[] {
-            new ExifTag(TAG_THUMBNAIL_IMAGE_WIDTH, 256),
-            new ExifTag(TAG_THUMBNAIL_IMAGE_LENGTH, 257),
-            new ExifTag(TAG_BITS_PER_SAMPLE, 258),
-            new ExifTag(TAG_COMPRESSION, 259),
-            new ExifTag(TAG_PHOTOMETRIC_INTERPRETATION, 262),
-            new ExifTag(TAG_IMAGE_DESCRIPTION, 270),
-            new ExifTag(TAG_MAKE, 271),
-            new ExifTag(TAG_MODEL, 272),
-            new ExifTag(TAG_STRIP_OFFSETS, 273),
-            new ExifTag(TAG_ORIENTATION, 274),
-            new ExifTag(TAG_SAMPLES_PER_PIXEL, 277),
-            new ExifTag(TAG_ROWS_PER_STRIP, 278),
-            new ExifTag(TAG_STRIP_BYTE_COUNTS, 279),
-            new ExifTag(TAG_X_RESOLUTION, 282),
-            new ExifTag(TAG_Y_RESOLUTION, 283),
-            new ExifTag(TAG_PLANAR_CONFIGURATION, 284),
-            new ExifTag(TAG_RESOLUTION_UNIT, 296),
-            new ExifTag(TAG_TRANSFER_FUNCTION, 301),
-            new ExifTag(TAG_SOFTWARE, 305),
-            new ExifTag(TAG_DATETIME, 306),
-            new ExifTag(TAG_ARTIST, 315),
-            new ExifTag(TAG_WHITE_POINT, 318),
-            new ExifTag(TAG_PRIMARY_CHROMATICITIES, 319),
-            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT, 513),
-            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT_LENGTH, 514),
-            new ExifTag(TAG_Y_CB_CR_COEFFICIENTS, 529),
-            new ExifTag(TAG_Y_CB_CR_SUB_SAMPLING, 530),
-            new ExifTag(TAG_Y_CB_CR_POSITIONING, 531),
-            new ExifTag(TAG_REFERENCE_BLACK_WHITE, 532),
-            new ExifTag(TAG_COPYRIGHT, 33432),
-            new ExifTag(TAG_EXIF_IFD_POINTER, 34665),
-            new ExifTag(TAG_GPS_INFO_IFD_POINTER, 34853),
+            new ExifTag(TAG_THUMBNAIL_IMAGE_WIDTH, 256, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_THUMBNAIL_IMAGE_LENGTH, 257, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_BITS_PER_SAMPLE, 258, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_COMPRESSION, 259, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_PHOTOMETRIC_INTERPRETATION, 262, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_IMAGE_DESCRIPTION, 270, IFD_FORMAT_STRING),
+            new ExifTag(TAG_MAKE, 271, IFD_FORMAT_STRING),
+            new ExifTag(TAG_MODEL, 272, IFD_FORMAT_STRING),
+            new ExifTag(TAG_STRIP_OFFSETS, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_ORIENTATION, 274, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_SAMPLES_PER_PIXEL, 277, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_ROWS_PER_STRIP, 278, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_STRIP_BYTE_COUNTS, 279, IFD_FORMAT_USHORT, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_X_RESOLUTION, 282, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_Y_RESOLUTION, 283, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_PLANAR_CONFIGURATION, 284, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_RESOLUTION_UNIT, 296, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_TRANSFER_FUNCTION, 301, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_SOFTWARE, 305, IFD_FORMAT_STRING),
+            new ExifTag(TAG_DATETIME, 306, IFD_FORMAT_STRING),
+            new ExifTag(TAG_ARTIST, 315, IFD_FORMAT_STRING),
+            new ExifTag(TAG_WHITE_POINT, 318, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_PRIMARY_CHROMATICITIES, 319, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT, 513, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT_LENGTH, 514, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_Y_CB_CR_COEFFICIENTS, 529, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_Y_CB_CR_SUB_SAMPLING, 530, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_Y_CB_CR_POSITIONING, 531, IFD_FORMAT_USHORT),
+            new ExifTag(TAG_REFERENCE_BLACK_WHITE, 532, IFD_FORMAT_URATIONAL),
+            new ExifTag(TAG_COPYRIGHT, 33432, IFD_FORMAT_STRING),
+            new ExifTag(TAG_EXIF_IFD_POINTER, 34665, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_GPS_INFO_IFD_POINTER, 34853, IFD_FORMAT_ULONG),
     };
 
     // See JEITA CP-3451 Figure 5. page 9.
@@ -589,9 +1001,9 @@
     };
     // List of tags for pointing to the other image file directory offset.
     private static final ExifTag[] IFD_POINTER_TAGS = new ExifTag[] {
-            new ExifTag(TAG_EXIF_IFD_POINTER, 34665),
-            new ExifTag(TAG_GPS_INFO_IFD_POINTER, 34853),
-            new ExifTag(TAG_INTEROPERABILITY_IFD_POINTER, 40965),
+            new ExifTag(TAG_EXIF_IFD_POINTER, 34665, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_GPS_INFO_IFD_POINTER, 34853, IFD_FORMAT_ULONG),
+            new ExifTag(TAG_INTEROPERABILITY_IFD_POINTER, 40965, IFD_FORMAT_ULONG),
     };
     // List of indices of the indicated tag groups according to the IFD_POINTER_TAGS
     private static final int[] IFD_POINTER_TAG_HINTS = new int[] {
@@ -599,23 +1011,26 @@
     };
     // Tags for indicating the thumbnail offset and length
     private static final ExifTag JPEG_INTERCHANGE_FORMAT_TAG =
-            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT, 513);
+            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT, 513, IFD_FORMAT_ULONG);
     private static final ExifTag JPEG_INTERCHANGE_FORMAT_LENGTH_TAG =
-            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT_LENGTH, 514);
+            new ExifTag(TAG_JPEG_INTERCHANGE_FORMAT_LENGTH, 514, IFD_FORMAT_ULONG);
 
     // Mappings from tag number to tag name and each item represents one IFD tag group.
     private static final HashMap[] sExifTagMapsForReading = new HashMap[EXIF_TAGS.length];
     // Mappings from tag name to tag number and each item represents one IFD tag group.
     private static final HashMap[] sExifTagMapsForWriting = new HashMap[EXIF_TAGS.length];
+    private static final HashSet<String> sTagSetForCompatibility = new HashSet<>(Arrays.asList(
+            TAG_F_NUMBER, TAG_DIGITAL_ZOOM_RATIO, TAG_EXPOSURE_TIME, TAG_SUBJECT_DISTANCE,
+            TAG_GPS_TIMESTAMP));
 
     // See JPEG File Interchange Format Version 1.02.
     // The following values are defined for handling JPEG streams. In this implementation, we are
     // not only getting information from EXIF but also from some JPEG special segments such as
     // MARKER_COM for user comment and MARKER_SOFx for image width and height.
 
+    private static final Charset ASCII = Charset.forName("US-ASCII");
     // Identifier for EXIF APP1 segment in JPEG
-    private static final byte[] IDENTIFIER_EXIF_APP1 =
-            "Exif\0\0".getBytes(Charset.forName("US-ASCII"));
+    private static final byte[] IDENTIFIER_EXIF_APP1 = "Exif\0\0".getBytes(ASCII);
     // JPEG segment markers, that each marker consumes two bytes beginning with 0xff and ending with
     // the indicator. There is no SOF4, SOF8, SOF16 markers in JPEG and SOFx markers indicates start
     // of frame(baseline DCT) and the image size info exists in its beginning part.
@@ -650,8 +1065,8 @@
             sExifTagMapsForReading[hint] = new HashMap();
             sExifTagMapsForWriting[hint] = new HashMap();
             for (ExifTag tag : EXIF_TAGS[hint]) {
-                sExifTagMapsForReading[hint].put(tag.number, tag.name);
-                sExifTagMapsForWriting[hint].put(tag.name, tag.number);
+                sExifTagMapsForReading[hint].put(tag.number, tag);
+                sExifTagMapsForWriting[hint].put(tag.name, tag);
             }
         }
     }
@@ -662,6 +1077,7 @@
     private final boolean mIsInputStream;
     private boolean mIsRaw;
     private final HashMap[] mAttributes = new HashMap[EXIF_TAGS.length];
+    private ByteOrder mExifByteOrder = ByteOrder.BIG_ENDIAN;
     private boolean mHasThumbnail;
     // The following values used for indicating a thumbnail position.
     private int mThumbnailOffset;
@@ -670,6 +1086,9 @@
 
     // Pattern to check non zero timestamp
     private static final Pattern sNonZeroTimePattern = Pattern.compile(".*[1-9].*");
+    // Pattern to check gps timestamp
+    private static final Pattern sGpsTimestampPattern =
+            Pattern.compile("^([0-9][0-9]):([0-9][0-9]):([0-9][0-9])$");
 
     /**
      * Reads Exif tags from the specified image file.
@@ -755,18 +1174,54 @@
     }
 
     /**
+     * Returns the EXIF attribute of the specified tag or {@code null} if there is no such tag in
+     * the image file.
+     *
+     * @param tag the name of the tag.
+     */
+    private ExifAttribute getExifAttribute(String tag) {
+        // Retrieves all tag groups. The value from primary image tag group has a higher priority
+        // than the value from the thumbnail tag group if there are more than one candidates.
+        for (int i = 0; i < EXIF_TAGS.length; ++i) {
+            Object value = mAttributes[i].get(tag);
+            if (value != null) {
+                return (ExifAttribute) value;
+            }
+        }
+        return null;
+    }
+
+    /**
      * Returns the value of the specified tag or {@code null} if there
      * is no such tag in the image file.
      *
      * @param tag the name of the tag.
      */
     public String getAttribute(String tag) {
-        // Retrieves all tag groups. The value from primary image tag group has a higher priority
-        // than the value from the thumbnail tag group if there are more than one candidates.
-        for (int i = 0; i < EXIF_TAGS.length; ++i) {
-            Object value = mAttributes[i].get(tag);
-            if (value != null) {
-                return (String) value;
+        ExifAttribute attribute = getExifAttribute(tag);
+        if (attribute != null) {
+            if (!sTagSetForCompatibility.contains(tag)) {
+                return attribute.getStringValue(mExifByteOrder);
+            }
+            if (tag.equals(TAG_GPS_TIMESTAMP)) {
+                // Convert the rational values to the custom formats for backwards compatibility.
+                if (attribute.format != IFD_FORMAT_URATIONAL
+                        && attribute.format != IFD_FORMAT_SRATIONAL) {
+                    return null;
+                }
+                Rational[] array = (Rational[]) attribute.getValue(mExifByteOrder);
+                if (array.length != 3) {
+                    return null;
+                }
+                return String.format("%02d:%02d:%02d",
+                        (int) ((float) array[0].numerator / array[0].denominator),
+                        (int) ((float) array[1].numerator / array[1].denominator),
+                        (int) ((float) array[2].numerator / array[2].denominator));
+            }
+            try {
+                return Double.toString(attribute.getDoubleValue(mExifByteOrder));
+            } catch (NumberFormatException e) {
+                return null;
             }
         }
         return null;
@@ -781,10 +1236,13 @@
      * @param defaultValue the value to return if the tag is not available.
      */
     public int getAttributeInt(String tag, int defaultValue) {
-        String value = getAttribute(tag);
-        if (value == null) return defaultValue;
+        ExifAttribute exifAttribute = getExifAttribute(tag);
+        if (exifAttribute == null) {
+            return defaultValue;
+        }
+
         try {
-            return Integer.valueOf(value);
+            return exifAttribute.getIntValue(mExifByteOrder);
         } catch (NumberFormatException e) {
             return defaultValue;
         }
@@ -799,15 +1257,13 @@
      * @param defaultValue the value to return if the tag is not available.
      */
     public double getAttributeDouble(String tag, double defaultValue) {
-        String value = getAttribute(tag);
-        if (value == null) return defaultValue;
+        ExifAttribute exifAttribute = getExifAttribute(tag);
+        if (exifAttribute == null) {
+            return defaultValue;
+        }
+
         try {
-            int index = value.indexOf("/");
-            if (index == -1) return Double.parseDouble(value);
-            double denom = Double.parseDouble(value.substring(index + 1));
-            if (denom == 0) return defaultValue;
-            double num = Double.parseDouble(value.substring(0, index));
-            return num / denom;
+            return exifAttribute.getDoubleValue(mExifByteOrder);
         } catch (NumberFormatException e) {
             return defaultValue;
         }
@@ -820,12 +1276,136 @@
      * @param value the value of the tag.
      */
     public void setAttribute(String tag, String value) {
+        // Convert the given value to rational values for backwards compatibility.
+        if (value != null && sTagSetForCompatibility.contains(tag)) {
+            if (tag.equals(TAG_GPS_TIMESTAMP)) {
+                Matcher m = sGpsTimestampPattern.matcher(value);
+                if (!m.find()) {
+                    Log.w(TAG, "Invalid value for " + tag + " : " + value);
+                    return;
+                }
+                value = Integer.parseInt(m.group(1)) + "/1," + Integer.parseInt(m.group(2)) + "/1,"
+                        + Integer.parseInt(m.group(3)) + "/1";
+            } else {
+                try {
+                    double doubleValue = Double.parseDouble(value);
+                    value = (long) (doubleValue * 10000L) + "/10000";
+                } catch (NumberFormatException e) {
+                    Log.w(TAG, "Invalid value for " + tag + " : " + value);
+                    return;
+                }
+            }
+        }
+
         for (int i = 0 ; i < EXIF_TAGS.length; ++i) {
             if (i == IFD_THUMBNAIL_HINT && !mHasThumbnail) {
                 continue;
             }
-            if (sExifTagMapsForWriting[i].containsKey(tag)) {
-                mAttributes[i].put(tag, value);
+            final Object obj = sExifTagMapsForWriting[i].get(tag);
+            if (obj != null) {
+                if (value == null) {
+                    mAttributes[i].remove(tag);
+                    continue;
+                }
+                final ExifTag exifTag = (ExifTag) obj;
+                Pair<Integer, Integer> guess = guessDataFormat(value);
+                int dataFormat;
+                if (exifTag.primaryFormat == guess.first || exifTag.primaryFormat == guess.second) {
+                    dataFormat = exifTag.primaryFormat;
+                } else if (exifTag.secondaryFormat != -1 && (exifTag.secondaryFormat == guess.first
+                        || exifTag.secondaryFormat == guess.second)) {
+                    dataFormat = exifTag.secondaryFormat;
+                } else if (exifTag.primaryFormat == IFD_FORMAT_BYTE
+                        || exifTag.primaryFormat == IFD_FORMAT_UNDEFINED
+                        || exifTag.primaryFormat == IFD_FORMAT_STRING) {
+                    dataFormat = exifTag.primaryFormat;
+                } else {
+                    Log.w(TAG, "Given tag (" + tag + ") value didn't match with one of expected "
+                            + "formats: " + IFD_FORMAT_NAMES[exifTag.primaryFormat]
+                            + (exifTag.secondaryFormat == -1 ? "" : ", "
+                            + IFD_FORMAT_NAMES[exifTag.secondaryFormat]) + " (guess: "
+                            + IFD_FORMAT_NAMES[guess.first] + (guess.second == -1 ? "" : ", "
+                            + IFD_FORMAT_NAMES[guess.second]) + ")");
+                    continue;
+                }
+                switch (dataFormat) {
+                    case IFD_FORMAT_BYTE: {
+                        mAttributes[i].put(tag, ExifAttribute.createByte(value));
+                        break;
+                    }
+                    case IFD_FORMAT_UNDEFINED:
+                    case IFD_FORMAT_STRING: {
+                        mAttributes[i].put(tag, ExifAttribute.createString(value));
+                        break;
+                    }
+                    case IFD_FORMAT_USHORT: {
+                        final String[] values = value.split(",");
+                        final int[] intArray = new int[values.length];
+                        for (int j = 0; j < values.length; ++j) {
+                            intArray[j] = Integer.parseInt(values[j]);
+                        }
+                        mAttributes[i].put(tag,
+                                ExifAttribute.createUShort(intArray, mExifByteOrder));
+                        break;
+                    }
+                    case IFD_FORMAT_SLONG: {
+                        final String[] values = value.split(",");
+                        final int[] intArray = new int[values.length];
+                        for (int j = 0; j < values.length; ++j) {
+                            intArray[j] = Integer.parseInt(values[j]);
+                        }
+                        mAttributes[i].put(tag,
+                                ExifAttribute.createSLong(intArray, mExifByteOrder));
+                        break;
+                    }
+                    case IFD_FORMAT_ULONG: {
+                        final String[] values = value.split(",");
+                        final long[] longArray = new long[values.length];
+                        for (int j = 0; j < values.length; ++j) {
+                            longArray[j] = Long.parseLong(values[j]);
+                        }
+                        mAttributes[i].put(tag,
+                                ExifAttribute.createULong(longArray, mExifByteOrder));
+                        break;
+                    }
+                    case IFD_FORMAT_URATIONAL: {
+                        final String[] values = value.split(",");
+                        final Rational[] rationalArray = new Rational[values.length];
+                        for (int j = 0; j < values.length; ++j) {
+                            final String[] numbers = values[j].split("/");
+                            rationalArray[j] = new Rational(Long.parseLong(numbers[0]),
+                                    Long.parseLong(numbers[1]));
+                        }
+                        mAttributes[i].put(tag,
+                                ExifAttribute.createURational(rationalArray, mExifByteOrder));
+                        break;
+                    }
+                    case IFD_FORMAT_SRATIONAL: {
+                        final String[] values = value.split(",");
+                        final Rational[] rationalArray = new Rational[values.length];
+                        for (int j = 0; j < values.length; ++j) {
+                            final String[] numbers = values[j].split("/");
+                            rationalArray[j] = new Rational(Long.parseLong(numbers[0]),
+                                    Long.parseLong(numbers[1]));
+                        }
+                        mAttributes[i].put(tag,
+                                ExifAttribute.createSRational(rationalArray, mExifByteOrder));
+                        break;
+                    }
+                    case IFD_FORMAT_DOUBLE: {
+                        final String[] values = value.split(",");
+                        final double[] doubleArray = new double[values.length];
+                        for (int j = 0; j < values.length; ++j) {
+                            doubleArray[j] = Double.parseDouble(values[j]);
+                        }
+                        mAttributes[i].put(tag,
+                                ExifAttribute.createDouble(doubleArray, mExifByteOrder));
+                        break;
+                    }
+                    default:
+                        Log.w(TAG, "Data format isn't one of expected formats: " + dataFormat);
+                        continue;
+                }
             }
         }
     }
@@ -834,10 +1414,10 @@
      * Update the values of the tags in the tag groups if any value for the tag already was stored.
      *
      * @param tag the name of the tag.
-     * @param value the value of the tag.
+     * @param value the value of the tag in a form of {@link ExifAttribute}.
      * @return Returns {@code true} if updating is placed.
      */
-    private boolean updateAttribute(String tag, String value) {
+    private boolean updateAttribute(String tag, ExifAttribute value) {
         boolean updated = false;
         for (int i = 0 ; i < EXIF_TAGS.length; ++i) {
             if (mAttributes[i].containsKey(tag)) {
@@ -899,6 +1479,8 @@
                     + "(ExifInterface supports JPEG and some RAW image formats only) "
                     + "or a corrupted JPEG file to ExifInterface.", e);
         } finally {
+            addDefaultValuesForCompatibility();
+
             if (DEBUG) {
                 printAttributes();
             }
@@ -957,7 +1539,9 @@
         for (int i = 0; i < mAttributes.length; ++i) {
             Log.d(TAG, "The size of tag group[" + i + "]: " + mAttributes[i].size());
             for (Map.Entry entry : (Set<Map.Entry>) mAttributes[i].entrySet()) {
-                Log.d(TAG, "tagName: " + entry.getKey() + ", tagValue: " + entry.getValue());
+                final ExifAttribute tagValue = (ExifAttribute) entry.getValue();
+                Log.d(TAG, "tagName: " + entry.getKey() + ", tagType: " + tagValue.toString()
+                        + ", tagValue: '" + tagValue.getStringValue(mExifByteOrder) + "'");
             }
         }
     }
@@ -1317,8 +1901,10 @@
                         throw new IOException("Invalid exif");
                     }
                     length = 0;
-                    mAttributes[IFD_EXIF_HINT].put(TAG_USER_COMMENT,
-                            new String(bytes, Charset.forName("US-ASCII")));
+                    if (getAttribute(TAG_USER_COMMENT) == null) {
+                        mAttributes[IFD_EXIF_HINT].put(TAG_USER_COMMENT, ExifAttribute.createString(
+                                new String(bytes, ASCII)));
+                    }
                     break;
                 }
 
@@ -1338,10 +1924,10 @@
                     if (dataInputStream.skipBytes(1) != 1) {
                         throw new IOException("Invalid SOFx");
                     }
-                    mAttributes[IFD_TIFF_HINT].put(TAG_IMAGE_LENGTH,
-                            String.valueOf(dataInputStream.readUnsignedShort()));
-                    mAttributes[IFD_TIFF_HINT].put(TAG_IMAGE_WIDTH,
-                            String.valueOf(dataInputStream.readUnsignedShort()));
+                    mAttributes[IFD_TIFF_HINT].put(TAG_IMAGE_LENGTH, ExifAttribute.createULong(
+                            dataInputStream.readUnsignedShort(), mExifByteOrder));
+                    mAttributes[IFD_TIFF_HINT].put(TAG_IMAGE_WIDTH, ExifAttribute.createULong(
+                            dataInputStream.readUnsignedShort(), mExifByteOrder));
                     length -= 5;
                     break;
                 }
@@ -1369,7 +1955,8 @@
                     + ", outputStream: " + outputStream + ")");
         }
         DataInputStream dataInputStream = new DataInputStream(inputStream);
-        ExifDataOutputStream dataOutputStream = new ExifDataOutputStream(outputStream);
+        ByteOrderAwarenessDataOutputStream dataOutputStream =
+                new ByteOrderAwarenessDataOutputStream(outputStream, ByteOrder.BIG_ENDIAN);
         if (dataInputStream.readByte() != MARKER) {
             throw new IOException("Invalid marker");
         }
@@ -1470,18 +2057,21 @@
                 if (DEBUG) {
                     Log.d(TAG, "readExifSegment: Byte Align II");
                 }
-                dataInputStream.setByteOrder(ByteOrder.LITTLE_ENDIAN);
+                mExifByteOrder = ByteOrder.LITTLE_ENDIAN;
                 break;
             case BYTE_ALIGN_MM:
                 if (DEBUG) {
                     Log.d(TAG, "readExifSegment: Byte Align MM");
                 }
-                dataInputStream.setByteOrder(ByteOrder.BIG_ENDIAN);
+                mExifByteOrder = ByteOrder.BIG_ENDIAN;
                 break;
             default:
                 throw new IOException("Invalid byte order: " + Integer.toHexString(byteOrder));
         }
 
+        // Set byte order.
+        dataInputStream.setByteOrder(mExifByteOrder);
+
         int startCode = dataInputStream.readUnsignedShort();
         if (startCode != 0x2a) {
             throw new IOException("Invalid exif start: " + Integer.toHexString(startCode));
@@ -1513,8 +2103,7 @@
                         .parseInt(jpegInterchangeFormatLengthString);
                 // The following code limits the size of thumbnail size not to overflow EXIF data area.
                 jpegInterchangeFormatLength = Math.min(jpegInterchangeFormat
-                        + jpegInterchangeFormatLength, exifOffsetFromBeginning + exifBytes.length)
-                        - jpegInterchangeFormat;
+                        + jpegInterchangeFormatLength, exifBytes.length) - jpegInterchangeFormat;
                 if (jpegInterchangeFormat > 0 && jpegInterchangeFormatLength > 0) {
                     mHasThumbnail = true;
                     mThumbnailOffset = exifOffsetFromBeginning + jpegInterchangeFormat;
@@ -1542,150 +2131,32 @@
                 // Ignored the corrupted image.
             }
         }
+    }
 
-        // For compatibility, keep data formats as follows.
-        convertToInt(TAG_IMAGE_WIDTH);
-        convertToInt(TAG_IMAGE_LENGTH);
-        convertToInt(TAG_ORIENTATION);
-        convertToInt(TAG_FLASH);
-        convertToRational(TAG_FOCAL_LENGTH);
-        convertToDouble(TAG_DIGITAL_ZOOM_RATIO);
-        convertToDouble(TAG_EXPOSURE_TIME);
-        convertToDouble(TAG_F_NUMBER);
-        convertToDouble(TAG_SUBJECT_DISTANCE);
-        convertToInt(TAG_ISO_SPEED_RATINGS);
-        convertToDouble(TAG_EXPOSURE_BIAS_VALUE);
-        convertToInt(TAG_WHITE_BALANCE);
-        convertToInt(TAG_LIGHT_SOURCE);
-        convertToInt(TAG_METERING_MODE);
-        convertToInt(TAG_EXPOSURE_PROGRAM);
-        convertToInt(TAG_EXPOSURE_MODE);
-        convertToRational(TAG_GPS_ALTITUDE);
-        convertToInt(TAG_GPS_ALTITUDE_REF);
-        convertToRational(TAG_GPS_LONGITUDE);
-        convertToRational(TAG_GPS_LATITUDE);
-        convertToTimestamp(TAG_GPS_TIMESTAMP);
-
+    private void addDefaultValuesForCompatibility() {
         // The value of DATETIME tag has the same value of DATETIME_ORIGINAL tag.
         String valueOfDateTimeOriginal = getAttribute(TAG_DATETIME_ORIGINAL);
         if (valueOfDateTimeOriginal != null) {
-            mAttributes[IFD_TIFF_HINT].put(TAG_DATETIME, valueOfDateTimeOriginal);
+            mAttributes[IFD_TIFF_HINT].put(TAG_DATETIME,
+                    ExifAttribute.createString(valueOfDateTimeOriginal));
         }
 
         // Add the default value.
         if (getAttribute(TAG_IMAGE_WIDTH) == null) {
-            mAttributes[IFD_TIFF_HINT].put(TAG_IMAGE_WIDTH, "0");
+            mAttributes[IFD_TIFF_HINT].put(TAG_IMAGE_WIDTH,
+                    ExifAttribute.createULong(0, mExifByteOrder));
         }
         if (getAttribute(TAG_IMAGE_LENGTH) == null) {
-            mAttributes[IFD_TIFF_HINT].put(TAG_IMAGE_LENGTH, "0");
+            mAttributes[IFD_TIFF_HINT].put(TAG_IMAGE_LENGTH,
+                    ExifAttribute.createULong(0, mExifByteOrder));
         }
         if (getAttribute(TAG_ORIENTATION) == null) {
-            mAttributes[IFD_TIFF_HINT].put(TAG_ORIENTATION, "0");
+            mAttributes[IFD_TIFF_HINT].put(TAG_ORIENTATION,
+                    ExifAttribute.createULong(0, mExifByteOrder));
         }
         if (getAttribute(TAG_LIGHT_SOURCE) == null) {
-            mAttributes[IFD_EXIF_HINT].put(TAG_LIGHT_SOURCE, "0");
-        }
-    }
-
-    // Converts the tag value to timestamp; Otherwise deletes the given tag.
-    private void convertToTimestamp(String tagName) {
-        String entryValue = getAttribute(tagName);
-        if (entryValue == null) return;
-        int dataFormat = getDataFormatOfExifEntryValue(entryValue);
-        String[] components = entryValue.split(",");
-        if (dataFormat == IFD_FORMAT_SRATIONAL && components.length == 3) {
-            StringBuilder stringBuilder = new StringBuilder();
-            for (String component : components) {
-                if (stringBuilder.length() > 0) {
-                    stringBuilder.append(":");
-                }
-                String[] rationalNumber = component.split("/");
-                int numerator = Integer.parseInt(rationalNumber[0]);
-                int denominator = Integer.parseInt(rationalNumber[1]);
-                if (denominator == 0) {
-                    numerator = 0;
-                    denominator = 1;
-                }
-                int value = numerator / denominator;
-                stringBuilder.append(String.format("%02d", value));
-            }
-            updateAttribute(tagName, stringBuilder.toString());
-        } else if (dataFormat != IFD_FORMAT_STRING) {
-            removeAttribute(tagName);
-        }
-    }
-
-    // Checks the tag value of a given tag formatted in double type; Otherwise try to convert it to
-    // double type or delete it.
-    private void convertToDouble(String tagName) {
-        String entryValue = getAttribute(tagName);
-        if (entryValue == null) return;
-        int dataFormat = getDataFormatOfExifEntryValue(entryValue);
-        switch (dataFormat) {
-            case IFD_FORMAT_SRATIONAL: {
-                StringBuilder stringBuilder = new StringBuilder();
-                String[] components = entryValue.split(",");
-                for (String component : components) {
-                    if (stringBuilder.length() > 0) {
-                        stringBuilder.append(",");
-                    }
-                    String[] rationalNumber = component.split("/");
-                    int numerator = Integer.parseInt(rationalNumber[0]);
-                    int denominator = Integer.parseInt(rationalNumber[1]);
-                    if (denominator == 0) {
-                        numerator = 0;
-                        denominator = 1;
-                    }
-                    stringBuilder.append((double) numerator / denominator);
-                }
-                updateAttribute(tagName, stringBuilder.toString());
-                break;
-            }
-            case IFD_FORMAT_DOUBLE:
-                // Keep it as is.
-                break;
-            default:
-                removeAttribute(tagName);
-                break;
-        }
-    }
-
-    // Checks the tag value of a given tag formatted in int type; Otherwise deletes the tag value.
-    private void convertToRational(String tagName) {
-        String entryValue = getAttribute(tagName);
-        if (entryValue == null) return;
-        int dataFormat = getDataFormatOfExifEntryValue(entryValue);
-        switch (dataFormat) {
-            case IFD_FORMAT_SLONG:
-            case IFD_FORMAT_DOUBLE: {
-                StringBuilder stringBuilder = new StringBuilder();
-                String[] components = entryValue.split(",");
-                for (String component : components) {
-                    if (stringBuilder.length() > 0) {
-                        stringBuilder.append(",");
-                    }
-                    double doubleValue = Double.parseDouble(component);
-                    stringBuilder.append((int) (doubleValue * 10000.0)).append("/").append(10000);
-                }
-                updateAttribute(tagName, stringBuilder.toString());
-                break;
-            }
-            case IFD_FORMAT_SRATIONAL:
-                // Keep it as is.
-                break;
-            default:
-                removeAttribute(tagName);
-                break;
-        }
-    }
-
-    // Checks the tag value of a given tag formatted in int type; Otherwise deletes the tag value.
-    private void convertToInt(String tagName) {
-        String entryValue = getAttribute(tagName);
-        if (entryValue == null) return;
-        int dataFormat = getDataFormatOfExifEntryValue(entryValue);
-        if (dataFormat != IFD_FORMAT_SLONG) {
-            removeAttribute(tagName);
+            mAttributes[IFD_EXIF_HINT].put(TAG_LIGHT_SOURCE,
+                    ExifAttribute.createULong(0, mExifByteOrder));
         }
     }
 
@@ -1714,18 +2185,18 @@
             long nextEntryOffset = dataInputStream.peek() + 4;  // next four bytes is for data
                                                                 // offset or value.
             // Look up a corresponding tag from tag number
-            String tagName = (String) sExifTagMapsForReading[hint].get(tagNumber);
+            final ExifTag tag = (ExifTag) sExifTagMapsForReading[hint].get(tagNumber);
 
             if (DEBUG) {
                 Log.d(TAG, String.format("hint: %d, tagNumber: %d, tagName: %s, dataFormat: %d, " +
-                        "numberOfComponents: %d", hint, tagNumber, tagName, dataFormat,
-                        numberOfComponents));
+                        "numberOfComponents: %d", hint, tagNumber, tag != null ? tag.name : null,
+                        dataFormat, numberOfComponents));
             }
 
-            if (tagName == null || dataFormat <= 0 ||
+            if (tag == null || dataFormat <= 0 ||
                     dataFormat >= IFD_FORMAT_BYTES_PER_FORMAT.length) {
                 // Skip if the parsed tag number is not defined or invalid data format.
-                if (tagName == null) {
+                if (tag == null) {
                     Log.w(TAG, "Skip the tag entry since tag number is not defined: " + tagNumber);
                 } else {
                     Log.w(TAG, "Skip the tag entry since data format is invalid: " + dataFormat);
@@ -1757,6 +2228,7 @@
             if (DEBUG) {
                 Log.d(TAG, "innerIfdHint: " + innerIfdHint + " byteCount: " + byteCount);
             }
+
             if (innerIfdHint >= 0) {
                 long offset = -1L;
                 // Get offset from data field
@@ -1783,7 +2255,7 @@
                     }
                 }
                 if (DEBUG) {
-                    Log.d(TAG, String.format("Offset: %d, tagName: %s", offset, tagName));
+                    Log.d(TAG, String.format("Offset: %d, tagName: %s", offset, tag.name));
                 }
                 if (offset > 0L && offset < dataInputStream.mLength) {
                     dataInputStream.seek(offset);
@@ -1796,25 +2268,10 @@
                 continue;
             }
 
-            if (numberOfComponents == 1 || dataFormat == IFD_FORMAT_STRING
-                    || dataFormat == IFD_FORMAT_UNDEFINED) {
-                String entryValue = readExifEntryValue(
-                        dataInputStream, dataFormat, numberOfComponents);
-                if (entryValue != null) {
-                    mAttributes[hint].put(tagName, entryValue);
-                }
-            } else {
-                StringBuilder entryValueBuilder = new StringBuilder();
-                for (int c = 0; c < numberOfComponents; ++c) {
-                    if (entryValueBuilder.length() > 0) {
-                        entryValueBuilder.append(",");
-                    }
-                    entryValueBuilder.append(readExifEntryValue(
-                            dataInputStream, dataFormat, numberOfComponents));
-                }
-                mAttributes[hint].put(tagName, entryValueBuilder.toString());
-            }
-
+            byte[] bytes = new byte[numberOfComponents * IFD_FORMAT_BYTES_PER_FORMAT[dataFormat]];
+            dataInputStream.readFully(bytes);
+            mAttributes[hint].put(
+                    tag.name, new ExifAttribute(dataFormat, numberOfComponents, bytes));
             if (dataInputStream.peek() != nextEntryOffset) {
                 dataInputStream.seek(nextEntryOffset);
             }
@@ -1834,82 +2291,6 @@
         }
     }
 
-    // Reads a value from where the entry value are stored.
-    private String readExifEntryValue(ByteOrderAwarenessDataInputStream dataInputStream,
-            int dataFormat, int numberOfComponents) throws IOException {
-        // See TIFF 6.0 spec Types. page 15.
-        switch (dataFormat) {
-            case IFD_FORMAT_BYTE: {
-                return String.valueOf(dataInputStream.readByte());
-            }
-            case IFD_FORMAT_SBYTE: {
-                return String.valueOf(dataInputStream.readByte() & 0xff);
-            }
-            case IFD_FORMAT_USHORT: {
-                return String.valueOf(dataInputStream.readUnsignedShort());
-            }
-            case IFD_FORMAT_SSHORT: {
-                return String.valueOf(dataInputStream.readUnsignedInt());
-            }
-            case IFD_FORMAT_ULONG: {
-                return String.valueOf(dataInputStream.readInt());
-            }
-            case IFD_FORMAT_SLONG: {
-                return String.valueOf(dataInputStream.readInt());
-            }
-            case IFD_FORMAT_URATIONAL:
-            case IFD_FORMAT_SRATIONAL: {
-                int numerator = dataInputStream.readInt();
-                int denominator = dataInputStream.readInt();
-                return numerator + "/" + denominator;
-            }
-            case IFD_FORMAT_SINGLE: {
-                return String.valueOf(dataInputStream.readFloat());
-            }
-            case IFD_FORMAT_DOUBLE: {
-                return String.valueOf(dataInputStream.readDouble());
-            }
-            case IFD_FORMAT_UNDEFINED:  // Usually UNDEFINED format is ASCII.
-            case IFD_FORMAT_STRING: {
-                byte[] bytes = new byte[numberOfComponents];
-                dataInputStream.readFully(bytes);
-                int index = 0;
-                if (numberOfComponents >= EXIF_ASCII_PREFIX.length) {
-                    boolean same = true;
-                    for (int i = 0; i < EXIF_ASCII_PREFIX.length; ++i) {
-                        if (bytes[i] != EXIF_ASCII_PREFIX[i]) {
-                            same = false;
-                            break;
-                        }
-                    }
-                    if (same) {
-                        index = EXIF_ASCII_PREFIX.length;
-                    }
-                }
-
-                StringBuilder stringBuilder = new StringBuilder();
-                while (index < numberOfComponents) {
-                    int ch = bytes[index];
-                    if (ch == 0) {
-                        break;
-                    }
-                    if (ch >= 32) {
-                        stringBuilder.append((char) ch);
-                    }
-                    else {
-                        stringBuilder.append('?');
-                    }
-                    ++index;
-                }
-                return stringBuilder.toString();
-            }
-            default: {
-                // Nothing to do
-                return null;
-            }
-        }
-    }
-
     // Gets the corresponding IFD group index of the given tag number for writing Exif Tags.
     private static int getIfdHintFromTagNumber(int tagNumber) {
         for (int i = 0; i < IFD_POINTER_TAG_HINTS.length; ++i) {
@@ -1921,8 +2302,8 @@
     }
 
     // Writes an Exif segment into the given output stream.
-    private int writeExifSegment(ExifDataOutputStream dataOutputStream, int exifOffsetFromBeginning)
-            throws IOException {
+    private int writeExifSegment(ByteOrderAwarenessDataOutputStream dataOutputStream,
+            int exifOffsetFromBeginning) throws IOException {
         // The following variables are for calculating each IFD tag group size in bytes.
         int[] ifdOffsets = new int[EXIF_TAGS.length];
         int[] ifdDataSizes = new int[EXIF_TAGS.length];
@@ -1938,7 +2319,7 @@
         // Remove null value tags.
         for (int hint = 0; hint < EXIF_TAGS.length; ++hint) {
             for (Object obj : mAttributes[hint].entrySet().toArray()) {
-                Map.Entry entry = (Map.Entry) obj;
+                final Map.Entry entry = (Map.Entry) obj;
                 if (entry.getValue() == null) {
                     mAttributes[hint].remove(entry.getKey());
                 }
@@ -1948,28 +2329,31 @@
         // Add IFD pointer tags. The next offset of primary image TIFF IFD will have thumbnail IFD
         // offset when there is one or more tags in the thumbnail IFD.
         if (!mAttributes[IFD_INTEROPERABILITY_HINT].isEmpty()) {
-            mAttributes[IFD_EXIF_HINT].put(IFD_POINTER_TAGS[2].name, "0");
+            mAttributes[IFD_EXIF_HINT].put(IFD_POINTER_TAGS[2].name,
+                    ExifAttribute.createULong(0, mExifByteOrder));
         }
         if (!mAttributes[IFD_EXIF_HINT].isEmpty()) {
-            mAttributes[IFD_TIFF_HINT].put(IFD_POINTER_TAGS[0].name, "0");
+            mAttributes[IFD_TIFF_HINT].put(IFD_POINTER_TAGS[0].name,
+                    ExifAttribute.createULong(0, mExifByteOrder));
         }
         if (!mAttributes[IFD_GPS_HINT].isEmpty()) {
-            mAttributes[IFD_TIFF_HINT].put(IFD_POINTER_TAGS[1].name, "0");
+            mAttributes[IFD_TIFF_HINT].put(IFD_POINTER_TAGS[1].name,
+                    ExifAttribute.createULong(0, mExifByteOrder));
         }
         if (mHasThumbnail) {
-            mAttributes[IFD_TIFF_HINT].put(JPEG_INTERCHANGE_FORMAT_TAG.name, "0");
+            mAttributes[IFD_TIFF_HINT].put(JPEG_INTERCHANGE_FORMAT_TAG.name,
+                    ExifAttribute.createULong(0, mExifByteOrder));
             mAttributes[IFD_TIFF_HINT].put(JPEG_INTERCHANGE_FORMAT_LENGTH_TAG.name,
-                    String.valueOf(mThumbnailLength));
+                    ExifAttribute.createULong(mThumbnailLength, mExifByteOrder));
         }
 
         // Calculate IFD group data area sizes. IFD group data area is assigned to save the entry
         // value which has a bigger size than 4 bytes.
-        for (int i = 0; i < 5; ++i) {
+        for (int i = 0; i < EXIF_TAGS.length; ++i) {
             int sum = 0;
             for (Map.Entry entry : (Set<Map.Entry>) mAttributes[i].entrySet()) {
-                String entryValue = (String) ((Map.Entry) entry).getValue();
-                int dataFormat = getDataFormatOfExifEntryValue(entryValue);
-                int size = getSizeOfExifEntryValue(dataFormat, entryValue);
+                final ExifAttribute exifAttribute = (ExifAttribute) ((Map.Entry) entry).getValue();
+                final int size = exifAttribute.size();
                 if (size > 4) {
                     sum += size;
                 }
@@ -1988,9 +2372,7 @@
         if (mHasThumbnail) {
             int thumbnailOffset = position;
             mAttributes[IFD_TIFF_HINT].put(JPEG_INTERCHANGE_FORMAT_TAG.name,
-                    String.valueOf(thumbnailOffset));
-            mAttributes[IFD_TIFF_HINT].put(JPEG_INTERCHANGE_FORMAT_LENGTH_TAG.name,
-                    String.valueOf(mThumbnailLength));
+                    ExifAttribute.createULong(thumbnailOffset, mExifByteOrder));
             mThumbnailOffset = exifOffsetFromBeginning + thumbnailOffset;
             position += mThumbnailLength;
         }
@@ -1999,7 +2381,7 @@
         int totalSize = position + 8;  // eight bytes is for header part.
         if (DEBUG) {
             Log.d(TAG, "totalSize length: " + totalSize);
-            for (int i = 0; i < 5; ++i) {
+            for (int i = 0; i < EXIF_TAGS.length; ++i) {
                 Log.d(TAG, String.format("index: %d, offsets: %d, tag count: %d, data sizes: %d",
                         i, ifdOffsets[i], mAttributes[i].size(), ifdDataSizes[i]));
             }
@@ -2008,21 +2390,23 @@
         // Update IFD pointer tags with the calculated offsets.
         if (!mAttributes[IFD_EXIF_HINT].isEmpty()) {
             mAttributes[IFD_TIFF_HINT].put(IFD_POINTER_TAGS[0].name,
-                    String.valueOf(ifdOffsets[IFD_EXIF_HINT]));
+                    ExifAttribute.createULong(ifdOffsets[IFD_EXIF_HINT], mExifByteOrder));
         }
         if (!mAttributes[IFD_GPS_HINT].isEmpty()) {
             mAttributes[IFD_TIFF_HINT].put(IFD_POINTER_TAGS[1].name,
-                    String.valueOf(ifdOffsets[IFD_GPS_HINT]));
+                    ExifAttribute.createULong(ifdOffsets[IFD_GPS_HINT], mExifByteOrder));
         }
         if (!mAttributes[IFD_INTEROPERABILITY_HINT].isEmpty()) {
-            mAttributes[IFD_EXIF_HINT].put(IFD_POINTER_TAGS[2].name,
-                    String.valueOf(ifdOffsets[IFD_INTEROPERABILITY_HINT]));
+            mAttributes[IFD_EXIF_HINT].put(IFD_POINTER_TAGS[2].name, ExifAttribute.createULong(
+                    ifdOffsets[IFD_INTEROPERABILITY_HINT], mExifByteOrder));
         }
 
         // Write TIFF Headers. See JEITA CP-3451C Table 1. page 10.
         dataOutputStream.writeUnsignedShort(totalSize);
         dataOutputStream.write(IDENTIFIER_EXIF_APP1);
-        dataOutputStream.writeShort(BYTE_ALIGN_MM);
+        dataOutputStream.writeShort(mExifByteOrder == ByteOrder.BIG_ENDIAN
+                ? BYTE_ALIGN_MM : BYTE_ALIGN_II);
+        dataOutputStream.setByteOrder(mExifByteOrder);
         dataOutputStream.writeUnsignedShort(0x2a);
         dataOutputStream.writeUnsignedInt(8);
 
@@ -2037,26 +2421,23 @@
                 int dataOffset = ifdOffsets[hint] + 2 + mAttributes[hint].size() * 12 + 4;
                 for (Map.Entry entry : (Set<Map.Entry>) mAttributes[hint].entrySet()) {
                     // Convert tag name to tag number.
-                    int tagNumber = (int) sExifTagMapsForWriting[hint].get(entry.getKey());
-                    String entryValue = (String) entry.getValue();
-
-                    int dataFormat = getDataFormatOfExifEntryValue(entryValue);
-                    int numberOfComponents = getNumberOfComponentsInExifEntryValue(dataFormat,
-                            entryValue);
-                    int byteCount = getSizeOfExifEntryValue(dataFormat, entryValue);
+                    final ExifTag tag = (ExifTag) sExifTagMapsForWriting[hint].get(entry.getKey());
+                    final int tagNumber = tag.number;
+                    final ExifAttribute attribute = (ExifAttribute) entry.getValue();
+                    final int size = attribute.size();
 
                     dataOutputStream.writeUnsignedShort(tagNumber);
-                    dataOutputStream.writeUnsignedShort(dataFormat);
-                    dataOutputStream.writeInt(numberOfComponents);
-                    if (byteCount > 4) {
+                    dataOutputStream.writeUnsignedShort(attribute.format);
+                    dataOutputStream.writeInt(attribute.numberOfComponents);
+                    if (size > 4) {
                         dataOutputStream.writeUnsignedInt(dataOffset);
-                        dataOffset += byteCount;
+                        dataOffset += size;
                     } else {
-                        int bytesWritten = writeExifEntryValue(dataOutputStream, entryValue);
+                        dataOutputStream.write(attribute.bytes);
                         // Fill zero up to 4 bytes
-                        if (bytesWritten < 4) {
-                            for (int i = bytesWritten; i < 4; ++i) {
-                                dataOutputStream.write(0);
+                        if (size < 4) {
+                            for (int i = size; i < 4; ++i) {
+                                dataOutputStream.writeByte(0);
                             }
                         }
                     }
@@ -2073,12 +2454,10 @@
 
                 // Write values of data field exceeding 4 bytes after the next offset.
                 for (Map.Entry entry : (Set<Map.Entry>) mAttributes[hint].entrySet()) {
-                    String entryValue = (String) entry.getValue();
+                    ExifAttribute attribute = (ExifAttribute) entry.getValue();
 
-                    int dataFormat = getDataFormatOfExifEntryValue(entryValue);
-                    int byteCount = getSizeOfExifEntryValue(dataFormat, entryValue);
-                    if (byteCount > 4) {
-                        writeExifEntryValue(dataOutputStream, entryValue);
+                    if (attribute.bytes.length > 4) {
+                        dataOutputStream.write(attribute.bytes, 0, attribute.bytes.length);
                     }
                 }
             }
@@ -2089,59 +2468,49 @@
             dataOutputStream.write(getThumbnail());
         }
 
+        // Reset the byte order to big endian in order to write remaining parts of the JPEG file.
+        dataOutputStream.setByteOrder(ByteOrder.BIG_ENDIAN);
+
         return totalSize;
     }
 
-    // Writes EXIF entry value and its entry value type will be automatically determined.
-    private static int writeExifEntryValue(ExifDataOutputStream dataOutputStream, String entryValue)
-            throws IOException {
-        int bytesWritten = 0;
-        int dataFormat = getDataFormatOfExifEntryValue(entryValue);
-
-        if (dataFormat == IFD_FORMAT_STRING) {
-            byte[] asciiArray = (entryValue + '\0').getBytes(Charset.forName("US-ASCII"));
-            dataOutputStream.write(asciiArray);
-            return asciiArray.length;
-        }
-
-        // Values can be composed of several components. Each component is separated by char ','.
-        String[] components = entryValue.split(",");
-        for (String component : components) {
-            switch (dataFormat) {
-                case IFD_FORMAT_SLONG:
-                    dataOutputStream.writeInt(Integer.parseInt(component));
-                    bytesWritten += 4;
-                    break;
-                case IFD_FORMAT_DOUBLE:
-                    dataOutputStream.writeDouble(Double.parseDouble(component));
-                    bytesWritten += 8;
-                    break;
-                case IFD_FORMAT_SRATIONAL:
-                    String[] rationalNumber = component.split("/");
-                    dataOutputStream.writeInt(Integer.parseInt(rationalNumber[0]));
-                    dataOutputStream.writeInt(Integer.parseInt(rationalNumber[1]));
-                    bytesWritten += 8;
-                    break;
-                default:
-                    throw new IllegalArgumentException();
-            }
-        }
-        return bytesWritten;
-    }
-
-    // Determines the data format of EXIF entry value.
-    private static int getDataFormatOfExifEntryValue(String entryValue) {
+    /**
+     * Determines the data format of EXIF entry value.
+     *
+     * @param entryValue The value to be determined.
+     * @return Returns two data formats gussed as a pair in integer. If there is no two candidate
+               data formats for the given entry value, returns {@code -1} in the second of the pair.
+     */
+    private static Pair<Integer, Integer> guessDataFormat(String entryValue) {
         // See TIFF 6.0 spec Types. page 15.
         // Take the first component if there are more than one component.
         if (entryValue.contains(",")) {
             String[] entryValues = entryValue.split(",");
-            int dataFormat = getDataFormatOfExifEntryValue(entryValues[0]);
-            if (dataFormat == IFD_FORMAT_STRING) {
-                return IFD_FORMAT_STRING;
+            Pair<Integer, Integer> dataFormat = guessDataFormat(entryValues[0]);
+            if (dataFormat.first == IFD_FORMAT_STRING) {
+                return dataFormat;
             }
             for (int i = 1; i < entryValues.length; ++i) {
-                if (getDataFormatOfExifEntryValue(entryValues[i]) != dataFormat) {
-                    return IFD_FORMAT_STRING;
+                final Pair<Integer, Integer> guessDataFormat = guessDataFormat(entryValues[i]);
+                int first = -1, second = -1;
+                if (guessDataFormat.first == dataFormat.first
+                        || guessDataFormat.second == dataFormat.first) {
+                    first = dataFormat.first;
+                }
+                if (dataFormat.second != -1 && (guessDataFormat.first == dataFormat.second
+                        || guessDataFormat.second == dataFormat.second)) {
+                    second = dataFormat.second;
+                }
+                if (first == -1 && second == -1) {
+                    return new Pair<>(IFD_FORMAT_STRING, -1);
+                }
+                if (first == -1) {
+                    dataFormat = new Pair<>(second, -1);
+                    continue;
+                }
+                if (second == -1) {
+                    dataFormat = new Pair<>(first, -1);
+                    continue;
                 }
             }
             return dataFormat;
@@ -2151,68 +2520,40 @@
             String[] rationalNumber = entryValue.split("/");
             if (rationalNumber.length == 2) {
                 try {
-                    Integer.parseInt(rationalNumber[0]);
-                    Integer.parseInt(rationalNumber[1]);
-                    return IFD_FORMAT_SRATIONAL;
+                    long numerator = Long.parseLong(rationalNumber[0]);
+                    long denominator = Long.parseLong(rationalNumber[1]);
+                    if (numerator < 0L || denominator < 0L) {
+                        return new Pair<>(IFD_FORMAT_SRATIONAL, - 1);
+                    }
+                    if (numerator > Integer.MAX_VALUE || denominator > Integer.MAX_VALUE) {
+                        return new Pair<>(IFD_FORMAT_URATIONAL, -1);
+                    }
+                    return new Pair<>(IFD_FORMAT_SRATIONAL, IFD_FORMAT_URATIONAL);
                 } catch (NumberFormatException e)  {
                     // Ignored
                 }
             }
-            return IFD_FORMAT_STRING;
+            return new Pair<>(IFD_FORMAT_STRING, -1);
         }
         try {
-            Integer.parseInt(entryValue);
-            return IFD_FORMAT_SLONG;
+            Long longValue = Long.parseLong(entryValue);
+            if (longValue >= 0 && longValue <= 65535) {
+                return new Pair<>(IFD_FORMAT_USHORT, IFD_FORMAT_ULONG);
+            }
+            if (longValue < 0) {
+                return new Pair<>(IFD_FORMAT_SLONG, -1);
+            }
+            return new Pair<>(IFD_FORMAT_ULONG, -1);
         } catch (NumberFormatException e) {
             // Ignored
         }
         try {
             Double.parseDouble(entryValue);
-            return IFD_FORMAT_DOUBLE;
+            return new Pair<>(IFD_FORMAT_DOUBLE, -1);
         } catch (NumberFormatException e) {
             // Ignored
         }
-        return IFD_FORMAT_STRING;
-    }
-
-    // Determines the size of EXIF entry value.
-    private static int getSizeOfExifEntryValue(int dataFormat, String entryValue) {
-        // See TIFF 6.0 spec Types page 15.
-        if (dataFormat == IFD_FORMAT_STRING) {
-            return (entryValue + '\0').getBytes(Charset.forName("US-ASCII")).length;
-        }
-        int bytesEstimated = 0;
-        String[] components = entryValue.split(",");
-        for (String component : components) {
-            switch (dataFormat) {
-                case IFD_FORMAT_SLONG:
-                    bytesEstimated += 4;
-                    break;
-                case IFD_FORMAT_DOUBLE:
-                    bytesEstimated += 8;
-                    break;
-                case IFD_FORMAT_SRATIONAL:
-                    bytesEstimated += 8;
-                    break;
-                default:
-                    throw new IllegalArgumentException();
-            }
-        }
-        return bytesEstimated;
-    }
-
-    // Determines the number of components of EXIF entry value.
-    private static int getNumberOfComponentsInExifEntryValue(int dataFormat, String entryValue) {
-        if (dataFormat == IFD_FORMAT_STRING) {
-            return (entryValue + '\0').getBytes(Charset.forName("US-ASCII")).length;
-        }
-        int count = 1;
-        for (int i = 0; i < entryValue.length(); ++i) {
-            if (entryValue.charAt(i) == ',') {
-                ++count;
-            }
-        }
-        return count;
+        return new Pair<>(IFD_FORMAT_STRING, -1);
     }
 
     // An input stream to parse EXIF data area, which can be written in either little or big endian
@@ -2373,10 +2714,56 @@
         }
     }
 
-    // An output stream to write EXIF data area, that will be written in big endian byte order.
-    private static class ExifDataOutputStream extends DataOutputStream {
-        public ExifDataOutputStream(OutputStream out) {
+    // An output stream to write EXIF data area, which can be written in either little or big endian
+    // order.
+    private static class ByteOrderAwarenessDataOutputStream extends FilterOutputStream {
+        private final OutputStream mOutputStream;
+        private ByteOrder mByteOrder;
+
+        public ByteOrderAwarenessDataOutputStream(OutputStream out, ByteOrder byteOrder) {
             super(out);
+            mOutputStream = out;
+            mByteOrder = byteOrder;
+        }
+
+        public void setByteOrder(ByteOrder byteOrder) {
+            mByteOrder = byteOrder;
+        }
+
+        public void write(byte[] bytes) throws IOException {
+            mOutputStream.write(bytes);
+        }
+
+        public void write(byte[] bytes, int offset, int length) throws IOException {
+            mOutputStream.write(bytes, offset, length);
+        }
+
+        public void writeByte(int val) throws IOException {
+            mOutputStream.write(val);
+        }
+
+        public void writeShort(short val) throws IOException {
+            if (mByteOrder == ByteOrder.LITTLE_ENDIAN) {
+                mOutputStream.write((val >>> 0) & 0xFF);
+                mOutputStream.write((val >>> 8) & 0xFF);
+            } else if (mByteOrder == ByteOrder.BIG_ENDIAN) {
+                mOutputStream.write((val >>> 8) & 0xFF);
+                mOutputStream.write((val >>> 0) & 0xFF);
+            }
+        }
+
+        public void writeInt(int val) throws IOException {
+            if (mByteOrder == ByteOrder.LITTLE_ENDIAN) {
+                mOutputStream.write((val >>> 0) & 0xFF);
+                mOutputStream.write((val >>> 8) & 0xFF);
+                mOutputStream.write((val >>> 16) & 0xFF);
+                mOutputStream.write((val >>> 24) & 0xFF);
+            } else if (mByteOrder == ByteOrder.BIG_ENDIAN) {
+                mOutputStream.write((val >>> 24) & 0xFF);
+                mOutputStream.write((val >>> 16) & 0xFF);
+                mOutputStream.write((val >>> 8) & 0xFF);
+                mOutputStream.write((val >>> 0) & 0xFF);
+            }
         }
 
         public void writeUnsignedShort(int val) throws IOException {
diff --git a/media/java/android/media/MediaPlayer.java b/media/java/android/media/MediaPlayer.java
index 55d5f42..cee7d60 100644
--- a/media/java/android/media/MediaPlayer.java
+++ b/media/java/android/media/MediaPlayer.java
@@ -20,7 +20,6 @@
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.app.ActivityThread;
-import android.app.AppOpsManager;
 import android.content.ContentResolver;
 import android.content.Context;
 import android.content.res.AssetFileDescriptor;
@@ -34,8 +33,6 @@
 import android.os.Parcelable;
 import android.os.Process;
 import android.os.PowerManager;
-import android.os.RemoteException;
-import android.os.ServiceManager;
 import android.os.SystemProperties;
 import android.provider.Settings;
 import android.system.ErrnoException;
@@ -56,7 +53,6 @@
 import android.media.SubtitleTrack.RenderingWidget;
 import android.media.SyncParams;
 
-import com.android.internal.app.IAppOpsService;
 import com.android.internal.util.Preconditions;
 
 import libcore.io.IoBridge;
@@ -66,7 +62,6 @@
 import java.io.File;
 import java.io.FileDescriptor;
 import java.io.FileInputStream;
-import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
 import java.lang.Runnable;
@@ -74,7 +69,6 @@
 import java.lang.annotation.RetentionPolicy;
 import java.net.InetSocketAddress;
 import java.util.BitSet;
-import java.util.HashSet;
 import java.util.Map;
 import java.util.Scanner;
 import java.util.Set;
@@ -561,7 +555,8 @@
  * thread by default has a Looper running).
  *
  */
-public class MediaPlayer implements SubtitleController.Listener
+public class MediaPlayer extends PlayerBase
+                         implements SubtitleController.Listener
 {
     /**
        Constant to retrieve only the new metadata since the last
@@ -615,7 +610,6 @@
     private PowerManager.WakeLock mWakeLock = null;
     private boolean mScreenOnWhilePlaying;
     private boolean mStayAwake;
-    private final IAppOpsService mAppOps;
     private int mStreamType = AudioManager.USE_DEFAULT_STREAM_TYPE;
     private int mUsage = -1;
     private boolean mBypassInterruptionPolicy;
@@ -628,6 +622,7 @@
      * result in an exception.</p>
      */
     public MediaPlayer() {
+        super(new AudioAttributes.Builder().build());
 
         Looper looper;
         if ((looper = Looper.myLooper()) != null) {
@@ -640,8 +635,6 @@
 
         mTimeProvider = new TimeProvider(this);
         mOpenSubtitleSources = new Vector<InputStream>();
-        IBinder b = ServiceManager.getService(Context.APP_OPS_SERVICE);
-        mAppOps = IAppOpsService.Stub.asInterface(b);
 
         /* Native setup requires a weak reference to our object.
          * It's easier to create it here than in C++.
@@ -1211,29 +1204,13 @@
      * @throws IllegalStateException if it is called in an invalid state
      */
     public void start() throws IllegalStateException {
-        if (isRestricted()) {
-            _setVolume(0, 0);
-        }
+        baseStart();
         stayAwake(true);
         _start();
     }
 
     private native void _start() throws IllegalStateException;
 
-    private boolean isRestricted() {
-        if (mBypassInterruptionPolicy) {
-            return false;
-        }
-        try {
-            final int usage = mUsage != -1 ? mUsage
-                    : AudioAttributes.usageForLegacyStreamType(getAudioStreamType());
-            final int mode = mAppOps.checkAudioOperation(AppOpsManager.OP_PLAY_AUDIO, usage,
-                    Process.myUid(), ActivityThread.currentPackageName());
-            return mode != AppOpsManager.MODE_ALLOWED;
-        } catch (RemoteException e) {
-            return false;
-        }
-    }
 
     private int getAudioStreamType() {
         if (mStreamType == AudioManager.USE_DEFAULT_STREAM_TYPE) {
@@ -1687,6 +1664,7 @@
      * at the same time.
      */
     public void release() {
+        baseRelease();
         stayAwake(false);
         updateSurfaceScreenOn();
         mOnPreparedListener = null;
@@ -1756,6 +1734,8 @@
      * @see android.media.AudioManager
      */
     public void setAudioStreamType(int streamtype) {
+        baseUpdateAudioAttributes(
+                new AudioAttributes.Builder().setInternalLegacyStreamType(streamtype).build());
         _setAudioStreamType(streamtype);
         mStreamType = streamtype;
     }
@@ -1785,6 +1765,7 @@
             final String msg = "Cannot set AudioAttributes to null";
             throw new IllegalArgumentException(msg);
         }
+        baseUpdateAudioAttributes(attributes);
         mUsage = attributes.getUsage();
         mBypassInterruptionPolicy = (attributes.getAllFlags()
                 & AudioAttributes.FLAG_BYPASS_INTERRUPTION_POLICY) != 0;
@@ -1826,9 +1807,11 @@
      * to be set independently.
      */
     public void setVolume(float leftVolume, float rightVolume) {
-        if (isRestricted()) {
-            return;
-        }
+        baseSetVolume(leftVolume, rightVolume);
+    }
+
+    @Override
+    void playerSetVolume(float leftVolume, float rightVolume) {
         _setVolume(leftVolume, rightVolume);
     }
 
@@ -1898,10 +1881,13 @@
      * @param level send level scalar
      */
     public void setAuxEffectSendLevel(float level) {
-        if (isRestricted()) {
-            return;
-        }
+        baseSetAuxEffectSendLevel(level);
+    }
+
+    @Override
+    int playerSetAuxEffectSendLevel(float level) {
         _setAuxEffectSendLevel(level);
+        return AudioSystem.SUCCESS;
     }
 
     private native void _setAuxEffectSendLevel(float level);
@@ -2795,7 +2781,10 @@
     private native final int native_setRetransmitEndpoint(String addrString, int port);
 
     @Override
-    protected void finalize() { native_finalize(); }
+    protected void finalize() {
+        baseRelease();
+        native_finalize();
+    }
 
     /* Do not change these values without updating their counterparts
      * in include/media/mediaplayer.h!
diff --git a/media/java/android/media/PlayerBase.java b/media/java/android/media/PlayerBase.java
new file mode 100644
index 0000000..0f7dc9a
--- /dev/null
+++ b/media/java/android/media/PlayerBase.java
@@ -0,0 +1,193 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.media;
+
+import java.lang.IllegalArgumentException;
+
+import android.annotation.NonNull;
+import android.app.ActivityThread;
+import android.app.AppOpsManager;
+import android.content.Context;
+import android.os.IBinder;
+import android.os.Process;
+import android.os.RemoteException;
+import android.os.ServiceManager;
+import android.util.Log;
+
+import com.android.internal.app.IAppOpsCallback;
+import com.android.internal.app.IAppOpsService;
+
+/**
+ * Class to encapsulate a number of common player operations:
+ *   - AppOps for OP_PLAY_AUDIO
+ *   - more to come (routing, transport control)
+ * @hide
+ */
+public abstract class PlayerBase {
+
+    // parameters of the player that affect AppOps
+    protected AudioAttributes mAttributes;
+    protected float mLeftVolume = 1.0f;
+    protected float mRightVolume = 1.0f;
+    protected float mAuxEffectSendLevel = 0.0f;
+
+    // for AppOps
+    private final IAppOpsService mAppOps;
+    private final IAppOpsCallback mAppOpsCallback;
+    private boolean mHasAppOpsPlayAudio = true;
+    private final Object mAppOpsLock = new Object();
+
+
+    /**
+     * Constructor. Must be given audio attributes, as they are required for AppOps.
+     * @param attr non-null audio attributes
+     */
+    PlayerBase(@NonNull AudioAttributes attr) {
+        if (attr == null) {
+            throw new IllegalArgumentException("Illegal null AudioAttributes");
+        }
+        mAttributes = attr;
+        IBinder b = ServiceManager.getService(Context.APP_OPS_SERVICE);
+        mAppOps = IAppOpsService.Stub.asInterface(b);
+        // initialize mHasAppOpsPlayAudio
+        updateAppOpsPlayAudio_sync();
+        // register a callback to monitor whether the OP_PLAY_AUDIO is still allowed
+        mAppOpsCallback = new IAppOpsCallback.Stub() {
+            public void opChanged(int op, int uid, String packageName) {
+                synchronized (mAppOpsLock) {
+                    if (op == AppOpsManager.OP_PLAY_AUDIO) {
+                        updateAppOpsPlayAudio_sync();
+                    }
+                }
+            }
+        };
+        try {
+            mAppOps.startWatchingMode(AppOpsManager.OP_PLAY_AUDIO,
+                    ActivityThread.currentPackageName(), mAppOpsCallback);
+        } catch (RemoteException e) {
+            mHasAppOpsPlayAudio = false;
+        }
+    }
+
+
+    /**
+     * To be called whenever the audio attributes of the player change
+     * @param attr non-null audio attributes
+     */
+    void baseUpdateAudioAttributes(@NonNull AudioAttributes attr) {
+        if (attr == null) {
+            throw new IllegalArgumentException("Illegal null AudioAttributes");
+        }
+        synchronized (mAppOpsLock) {
+            mAttributes = attr;
+            updateAppOpsPlayAudio_sync();
+        }
+    }
+
+    void baseStart() {
+        synchronized (mAppOpsLock) {
+            if (isRestricted_sync()) {
+                playerSetVolume(0, 0);
+            }
+        }
+    }
+
+    void baseSetVolume(float leftVolume, float rightVolume) {
+        synchronized (mAppOpsLock) {
+            mLeftVolume = leftVolume;
+            mRightVolume = rightVolume;
+            if (isRestricted_sync()) {
+                return;
+            }
+        }
+        playerSetVolume(leftVolume, rightVolume);
+    }
+
+    int baseSetAuxEffectSendLevel(float level) {
+        synchronized (mAppOpsLock) {
+            mAuxEffectSendLevel = level;
+            if (isRestricted_sync()) {
+                return AudioSystem.SUCCESS;
+            }
+        }
+        return playerSetAuxEffectSendLevel(level);
+    }
+
+    /**
+     * To be called from a subclass release or finalize method.
+     * Releases AppOps related resources.
+     */
+    void baseRelease() {
+        try {
+            mAppOps.stopWatchingMode(mAppOpsCallback);
+        } catch (RemoteException e) {
+            // nothing to do here, the object is supposed to be released anyway
+        }
+    }
+
+    /**
+     * To be called whenever a condition that might affect audibility of this player is updated.
+     * Must be called synchronized on mAppOpsLock.
+     */
+    void updateAppOpsPlayAudio_sync() {
+        boolean oldHasAppOpsPlayAudio = mHasAppOpsPlayAudio;
+        try {
+            final int mode = mAppOps.checkAudioOperation(AppOpsManager.OP_PLAY_AUDIO,
+                    mAttributes.getUsage(),
+                    Process.myUid(), ActivityThread.currentPackageName());
+            mHasAppOpsPlayAudio = (mode == AppOpsManager.MODE_ALLOWED);
+        } catch (RemoteException e) {
+            mHasAppOpsPlayAudio = false;
+        }
+
+        // AppsOps alters a player's volume; when the restriction changes, reflect it on the actual
+        // volume used by the player
+        try {
+            if (oldHasAppOpsPlayAudio != mHasAppOpsPlayAudio) {
+                if (mHasAppOpsPlayAudio) {
+                    playerSetVolume(mLeftVolume, mRightVolume);
+                    playerSetAuxEffectSendLevel(mAuxEffectSendLevel);
+                } else {
+                    playerSetVolume(0.0f, 0.0f);
+                    playerSetAuxEffectSendLevel(0.0f);
+                }
+            }
+        } catch (Exception e) {
+            // failing silently, player might not be in right state
+        }
+    }
+
+
+    /**
+     * To be called by the subclass whenever an operation is potentially restricted.
+     * As the media player-common behavior are incorporated into this class, the subclass's need
+     * to call this method should be removed, and this method could become private.
+     * FIXME can this method be private so subclasses don't have to worry about when to check
+     *    the restrictions.
+     * @return
+     */
+    boolean isRestricted_sync() {
+        if ((mAttributes.getAllFlags() & AudioAttributes.FLAG_BYPASS_INTERRUPTION_POLICY) != 0) {
+            return false;
+        }
+        return !mHasAppOpsPlayAudio;
+    }
+
+    // Abstract methods a subclass needs to implement
+    abstract void playerSetVolume(float leftVolume, float rightVolume);
+    abstract int playerSetAuxEffectSendLevel(float level);
+}
diff --git a/media/java/android/media/browse/MediaBrowser.java b/media/java/android/media/browse/MediaBrowser.java
index 7c6adad..baa6b0f 100644
--- a/media/java/android/media/browse/MediaBrowser.java
+++ b/media/java/android/media/browse/MediaBrowser.java
@@ -27,6 +27,7 @@
 import android.media.MediaDescription;
 import android.media.session.MediaController;
 import android.media.session.MediaSession;
+import android.os.Binder;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.IBinder;
@@ -134,7 +135,7 @@
         mContext = context;
         mServiceComponent = serviceComponent;
         mCallback = callback;
-        mRootHints = rootHints;
+        mRootHints = rootHints == null ? null : new Bundle(rootHints);
     }
 
     /**
@@ -443,7 +444,7 @@
             }
         };
         try {
-            mServiceBinder.getMediaItem(mediaId, receiver);
+            mServiceBinder.getMediaItem(mediaId, receiver, mServiceCallbacks);
         } catch (RemoteException e) {
             Log.i(TAG, "Remote error getting media item.");
             mHandler.post(new Runnable() {
@@ -475,14 +476,8 @@
         // the service will be told when we connect.
         if (mState == CONNECT_STATE_CONNECTED) {
             try {
-                // NOTE: Do not call addSubscriptionWithOptions when options are null. Otherwise,
-                // it will break the action of support library which expects addSubscription will
-                // be called when options are null.
-                if (options == null) {
-                    mServiceBinder.addSubscription(parentId, mServiceCallbacks);
-                } else {
-                    mServiceBinder.addSubscriptionWithOptions(parentId, options, mServiceCallbacks);
-                }
+                mServiceBinder.addSubscription(parentId, callback.mToken, options,
+                        mServiceCallbacks);
             } catch (RemoteException ex) {
                 // Process is crashing. We will disconnect, and upon reconnect we will
                 // automatically reregister. So nothing to do here.
@@ -497,34 +492,37 @@
             throw new IllegalArgumentException("parentId is empty.");
         }
 
-        // Remove from our list.
         Subscription sub = mSubscriptions.get(parentId);
-
+        if (sub == null) {
+            return;
+        }
         // Tell the service if necessary.
-        if (mState == CONNECT_STATE_CONNECTED && sub != null) {
-            try {
-                if (callback == null) {
-                    mServiceBinder.removeSubscription(parentId, mServiceCallbacks);
-                } else {
-                    final List<SubscriptionCallback> callbacks = sub.getCallbacks();
-                    final List<Bundle> optionsList = sub.getOptionsList();
-                    for (int i = callbacks.size() - 1; i >= 0; --i) {
-                        if (callbacks.get(i) == callback) {
-                            mServiceBinder.removeSubscriptionWithOptions(
-                                    parentId, optionsList.get(i), mServiceCallbacks);
-                            callbacks.remove(i);
-                            optionsList.remove(i);
+        try {
+            if (callback == null) {
+                if (mState == CONNECT_STATE_CONNECTED) {
+                    mServiceBinder.removeSubscription(parentId, null, mServiceCallbacks);
+                }
+            } else {
+                final List<SubscriptionCallback> callbacks = sub.getCallbacks();
+                final List<Bundle> optionsList = sub.getOptionsList();
+                for (int i = callbacks.size() - 1; i >= 0; --i) {
+                    if (callbacks.get(i) == callback) {
+                        if (mState == CONNECT_STATE_CONNECTED) {
+                            mServiceBinder.removeSubscription(
+                                    parentId, callback.mToken, mServiceCallbacks);
                         }
+                        callbacks.remove(i);
+                        optionsList.remove(i);
                     }
                 }
-            } catch (RemoteException ex) {
-                // Process is crashing. We will disconnect, and upon reconnect we will
-                // automatically reregister. So nothing to do here.
-                Log.d(TAG, "removeSubscription failed with RemoteException parentId=" + parentId);
             }
+        } catch (RemoteException ex) {
+            // Process is crashing. We will disconnect, and upon reconnect we will
+            // automatically reregister. So nothing to do here.
+            Log.d(TAG, "removeSubscription failed with RemoteException parentId=" + parentId);
         }
 
-        if (sub != null && (sub.isEmpty() || callback == null)) {
+        if (sub.isEmpty() || callback == null) {
             mSubscriptions.remove(parentId);
         }
     }
@@ -579,17 +577,12 @@
                 for (Entry<String, Subscription> subscriptionEntry : mSubscriptions.entrySet()) {
                     String id = subscriptionEntry.getKey();
                     Subscription sub = subscriptionEntry.getValue();
-                    for (Bundle options : sub.getOptionsList()) {
+                    List<SubscriptionCallback> callbackList = sub.getCallbacks();
+                    List<Bundle> optionsList = sub.getOptionsList();
+                    for (int i = 0; i < callbackList.size(); ++i) {
                         try {
-                            // NOTE: Do not call addSubscriptionWithOptions when options are null.
-                            // Otherwise, it will break the action of support library which expects
-                            // addSubscription will be called when options are null.
-                            if (options == null) {
-                                mServiceBinder.addSubscription(id, mServiceCallbacks);
-                            } else {
-                                mServiceBinder.addSubscriptionWithOptions(
-                                        id, options, mServiceCallbacks);
-                            }
+                            mServiceBinder.addSubscription(id, callbackList.get(i).mToken,
+                                    optionsList.get(i), mServiceCallbacks);
                         } catch (RemoteException ex) {
                             // Process is crashing. We will disconnect, and upon reconnect we will
                             // automatically reregister. So nothing to do here.
@@ -859,6 +852,12 @@
      * Callbacks for subscription related events.
      */
     public static abstract class SubscriptionCallback {
+        Binder mToken;
+
+        public SubscriptionCallback() {
+            mToken = new Binder();
+        }
+
         /**
          * Called when the list of children is loaded or updated.
          *
@@ -1071,12 +1070,7 @@
         }
 
         @Override
-        public void onLoadChildren(String parentId, ParceledListSlice list) {
-            onLoadChildrenWithOptions(parentId, list, null);
-        }
-
-        @Override
-        public void onLoadChildrenWithOptions(String parentId, ParceledListSlice list,
+        public void onLoadChildren(String parentId, ParceledListSlice list,
                 final Bundle options) {
             MediaBrowser mediaBrowser = mMediaBrowser.get();
             if (mediaBrowser != null) {
diff --git a/media/java/android/media/midi/MidiDevice.java b/media/java/android/media/midi/MidiDevice.java
index e4588fe..da44ca6 100644
--- a/media/java/android/media/midi/MidiDevice.java
+++ b/media/java/android/media/midi/MidiDevice.java
@@ -42,6 +42,7 @@
     private final IMidiManager mMidiManager;
     private final IBinder mClientToken;
     private final IBinder mDeviceToken;
+    private boolean mIsDeviceClosed;
 
     private final CloseGuard mGuard = CloseGuard.get();
 
@@ -123,6 +124,9 @@
      *         or null in case of failure.
      */
     public MidiInputPort openInputPort(int portNumber) {
+        if (mIsDeviceClosed) {
+            return null;
+        }
         try {
             IBinder token = new Binder();
             ParcelFileDescriptor pfd = mDeviceServer.openInputPort(token, portNumber);
@@ -146,6 +150,9 @@
      *         or null in case of failure.
      */
     public MidiOutputPort openOutputPort(int portNumber) {
+        if (mIsDeviceClosed) {
+            return null;
+        }
         try {
             IBinder token = new Binder();
             ParcelFileDescriptor pfd = mDeviceServer.openOutputPort(token, portNumber);
@@ -175,12 +182,15 @@
         if (outputPortNumber < 0 || outputPortNumber >= mDeviceInfo.getOutputPortCount()) {
             throw new IllegalArgumentException("outputPortNumber out of range");
         }
+        if (mIsDeviceClosed) {
+            return null;
+        }
 
         ParcelFileDescriptor pfd = inputPort.claimFileDescriptor();
         if (pfd == null) {
             return null;
         }
-         try {
+        try {
             IBinder token = new Binder();
             int calleePid = mDeviceServer.connectPorts(token, pfd, outputPortNumber);
             // If the service is a different Process then it will duplicate the pfd
@@ -202,11 +212,14 @@
     @Override
     public void close() throws IOException {
         synchronized (mGuard) {
-            mGuard.close();
-            try {
-                mMidiManager.closeDevice(mClientToken, mDeviceToken);
-            } catch (RemoteException e) {
-                Log.e(TAG, "RemoteException in closeDevice");
+            if (!mIsDeviceClosed) {
+                mGuard.close();
+                mIsDeviceClosed = true;
+                try {
+                    mMidiManager.closeDevice(mClientToken, mDeviceToken);
+                } catch (RemoteException e) {
+                    Log.e(TAG, "RemoteException in closeDevice");
+                }
             }
         }
     }
diff --git a/media/java/android/media/tv/ITvRemoteProvider.aidl b/media/java/android/media/tv/ITvRemoteProvider.aidl
new file mode 100644
index 0000000..3d9619b
--- /dev/null
+++ b/media/java/android/media/tv/ITvRemoteProvider.aidl
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.media.tv;
+
+import android.media.tv.ITvRemoteServiceInput;
+
+/**
+ * {@hide}
+ */
+oneway interface ITvRemoteProvider {
+    void setRemoteServiceInputSink(in ITvRemoteServiceInput tvServiceInput);
+    void onInputBridgeConnected(IBinder token);
+}
\ No newline at end of file
diff --git a/media/java/android/media/tv/ITvRemoteServiceInput.aidl b/media/java/android/media/tv/ITvRemoteServiceInput.aidl
new file mode 100644
index 0000000..df39299
--- /dev/null
+++ b/media/java/android/media/tv/ITvRemoteServiceInput.aidl
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.media.tv;
+
+/**
+ * {@hide}
+ */
+oneway interface ITvRemoteServiceInput {
+    // InputBridge related
+    void openInputBridge(IBinder token, String name, int width, int height, int maxPointers);
+    void closeInputBridge(IBinder token);
+    void clearInputBridge(IBinder token);
+    void sendTimestamp(IBinder token, long timestamp);
+    void sendKeyDown(IBinder token, int keyCode);
+    void sendKeyUp(IBinder token, int keyCode);
+    void sendPointerDown(IBinder token, int pointerId, int x, int y);
+    void sendPointerUp(IBinder token, int pointerId);
+    void sendPointerSync(IBinder token);
+}
\ No newline at end of file
diff --git a/media/java/android/media/tv/TvInputManager.java b/media/java/android/media/tv/TvInputManager.java
index 6f81343..1d894e1 100644
--- a/media/java/android/media/tv/TvInputManager.java
+++ b/media/java/android/media/tv/TvInputManager.java
@@ -191,7 +191,9 @@
     /**
      * Error for {@link TvInputService.RecordingSession#notifyError(int)} and
      * {@link TvRecordingClient.RecordingCallback#onError(int)}: The requested operation cannot be
-     * completed due to a problem that does not fit under any other error codes.
+     * completed due to a problem that does not fit under any other error codes, or the error code
+     * for the problem is defined on the higher version than application's
+     * <code>android:targetSdkVersion</code>.
      */
     public static final int RECORDING_ERROR_UNKNOWN = 0;
 
@@ -1181,14 +1183,23 @@
     }
 
     /**
-     * Updates information about an existing TV input.
+     * Updates the <code>TvInputInfo</code> for an existing TV input. A TV input service
+     * implementation may call this method to pass the application and system an up-to-date
+     * <code>TvInputInfo</code> object that describes itself.
      *
-     * <p>This is called internally only by {@link TvInputService}.
+     * <p>The system automatically creates a <code>TvInputInfo</code> object for each TV input,
+     * based on the information collected from the <code>AndroidManifest.xml</code>, thus it is not
+     * necessary to call this method unless such information has changed dynamically.
+     * Use {@link TvInputInfo.Builder} to build a new <code>TvInputInfo</code> object.
+     *
+     * <p>Attempting to change information about a TV input that the calling package does not own
+     * does nothing.
      *
      * @param inputInfo The <code>TvInputInfo</code> object that contains new information.
      * @throws IllegalArgumentException if the argument is {@code null}.
+     * @see TvInputCallback#onTvInputInfoUpdated(TvInputInfo)
      */
-    void updateTvInputInfo(@NonNull TvInputInfo inputInfo) {
+    public void updateTvInputInfo(@NonNull TvInputInfo inputInfo) {
         Preconditions.checkNotNull(inputInfo);
         try {
             mService.updateTvInputInfo(inputInfo, mUserId);
diff --git a/media/java/android/media/tv/TvInputService.java b/media/java/android/media/tv/TvInputService.java
index ae0ebe8..488b284 100644
--- a/media/java/android/media/tv/TvInputService.java
+++ b/media/java/android/media/tv/TvInputService.java
@@ -256,31 +256,6 @@
         return null;
     }
 
-    /**
-     * Updates the <code>TvInputInfo</code> for an existing TV input. A TV input service
-     * implementation may call this method to pass the application and system an up-to-date
-     * <code>TvInputInfo</code> object that describes itself.
-     *
-     * <p>The system automatically creates a <code>TvInputInfo</code> object for each TV input,
-     * based on the information collected from the <code>AndroidManifest.xml</code>, thus it is not
-     * necessary to call this method unless such information has changed dynamically.
-     * Use {@link TvInputInfo.Builder} to build a new <code>TvInputInfo</code> object.
-     *
-     * <p>Attempting to change information about a TV input that the calling package does not own
-     * does nothing.
-     *
-     * @param context The application context.
-     * @param inputInfo The <code>TvInputInfo</code> object that contains new information.
-     * @see TvInputManager.TvInputCallback#onTvInputInfoUpdated(TvInputInfo)
-     */
-    public static final void updateTvInputInfo(Context context, TvInputInfo inputInfo) {
-        TvInputManager manager = (TvInputManager) context.getSystemService(
-                Context.TV_INPUT_SERVICE);
-        if (manager != null) {
-            manager.updateTvInputInfo(inputInfo);
-        }
-    }
-
     private boolean isPassthroughInput(String inputId) {
         if (mTvInputManager == null) {
             mTvInputManager = (TvInputManager) getSystemService(Context.TV_INPUT_SERVICE);
@@ -839,9 +814,11 @@
         public abstract boolean onTune(Uri channelUri);
 
         /**
-         * Calls {@link #onTune(Uri)}. Override this method in order to handle domain-specific
+         * Tunes to a given channel. Override this method in order to handle domain-specific
          * features that are only known between certain TV inputs and their clients.
          *
+         * <p>The default implementation calls {@link #onTune(Uri)}.
+         *
          * @param channelUri The URI of the channel.
          * @param params Domain-specific data for this tune request. Keys <em>must</em> be a scoped
          *            name, i.e. prefixed with a package name you own, so that different developers
@@ -1693,11 +1670,12 @@
         public abstract void onTune(Uri channelUri);
 
         /**
-         * Calls {@link #onTune(Uri)}. Override this method in order to handle domain-specific
-         * features that are only known between certain TV inputs and their clients.
+         * Called when the application requests to tune to a given channel for TV program recording.
+         * Override this method in order to handle domain-specific features that are only known
+         * between certain TV inputs and their clients.
          *
          * <p>The application may call this method before starting or after stopping recording, but
-         * not during recording.
+         * not during recording. The default implementation calls {@link #onTune(Uri)}.
          *
          * <p>The session must call {@link #notifyTuned(Uri)} if the tune request was fulfilled, or
          * {@link #notifyError(int)} otherwise.
diff --git a/media/java/android/mtp/MtpConstants.java b/media/java/android/mtp/MtpConstants.java
index 0dcc718..5bbf2ec 100644
--- a/media/java/android/mtp/MtpConstants.java
+++ b/media/java/android/mtp/MtpConstants.java
@@ -583,41 +583,41 @@
      */
     public static final int ASSOCIATION_TYPE_GENERIC_FOLDER = 0x0001;
 
-    /** Event code for UNDEFINED event */
+    /** @removed */
     public static final int EVENT_UNDEFINED = 0x4000;
-    /** Event code for CANCEL_TRANSACTION event */
+    /** @removed */
     public static final int EVENT_CANCEL_TRANSACTION = 0x4001;
-    /** Event code for OBJECT_ADDED event */
+    /** @removed */
     public static final int EVENT_OBJECT_ADDED = 0x4002;
-    /** Event code for OBJECT_REMOVED event */
+    /** @removed */
     public static final int EVENT_OBJECT_REMOVED = 0x4003;
-    /** Event code for STORE_ADDED event */
+    /** @removed */
     public static final int EVENT_STORE_ADDED = 0x4004;
-    /** Event code for STORE_REMOVED event */
+    /** @removed */
     public static final int EVENT_STORE_REMOVED = 0x4005;
-    /** Event code for DEVICE_PROP_CHANGED event */
+    /** @removed */
     public static final int EVENT_DEVICE_PROP_CHANGED = 0x4006;
-    /** Event code for OBJECT_INFO_CHANGED event */
+    /** @removed */
     public static final int EVENT_OBJECT_INFO_CHANGED = 0x4007;
-    /** Event code for DEVICE_INFO_CHANGED event */
+    /** @removed */
     public static final int EVENT_DEVICE_INFO_CHANGED = 0x4008;
-    /** Event code for REQUEST_OBJECT_TRANSFER event */
+    /** @removed */
     public static final int EVENT_REQUEST_OBJECT_TRANSFER = 0x4009;
-    /** Event code for STORE_FULL event */
+    /** @removed */
     public static final int EVENT_STORE_FULL = 0x400A;
-    /** Event code for DEVICE_RESET event */
+    /** @removed */
     public static final int EVENT_DEVICE_RESET = 0x400B;
-    /** Event code for STORAGE_INFO_CHANGED event */
+    /** @removed */
     public static final int EVENT_STORAGE_INFO_CHANGED = 0x400C;
-    /** Event code for CAPTURE_COMPLETE event */
+    /** @removed */
     public static final int EVENT_CAPTURE_COMPLETE = 0x400D;
-    /** Event code for UNREPORTED_STATUS event */
+    /** @removed */
     public static final int EVENT_UNREPORTED_STATUS = 0x400E;
-    /** Event code for OBJECT_PROP_CHANGED event */
+    /** @removed */
     public static final int EVENT_OBJECT_PROP_CHANGED = 0xC801;
-    /** Event code for OBJECT_PROP_DESC_CHANGED event */
+    /** @removed */
     public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 0xC802;
-    /** Event code for OBJECT_REFERENCES_CHANGED event */
+    /** @removed */
     public static final int EVENT_OBJECT_REFERENCES_CHANGED = 0xC803;
 
     /** Operation code for GetDeviceInfo */
diff --git a/media/java/android/mtp/MtpDevice.java b/media/java/android/mtp/MtpDevice.java
index d0ef37c..4082778 100644
--- a/media/java/android/mtp/MtpDevice.java
+++ b/media/java/android/mtp/MtpDevice.java
@@ -16,6 +16,8 @@
 
 package android.mtp;
 
+import android.annotation.NonNull;
+import android.annotation.Nullable;
 import android.hardware.usb.UsbDevice;
 import android.hardware.usb.UsbDeviceConnection;
 import android.os.CancellationSignal;
@@ -169,8 +171,8 @@
      * @param objectHandle handle of the object to read
      * @param offset Start index of reading range. It must be a non-negative value at most
      *     0xffffffff.
-     * @param size Size of reading range. It must be a non-negative value at most 0xffffffff. If
-     *     0xffffffff is specified, the method obtains the full bytes of object.
+     * @param size Size of reading range. It must be a non-negative value at most Integer.MAX_VALUE
+     *     or 0xffffffff. If 0xffffffff is specified, the method obtains the full bytes of object.
      * @param buffer Array to write data.
      * @return Size of bytes that are actually read.
      */
@@ -190,7 +192,7 @@
      *
      * @param objectHandle handle of the object to read
      * @param offset Start index of reading range. It must be a non-negative value.
-     * @param size Size of reading range. It must be a non-negative value at most 0xffffffff.
+     * @param size Size of reading range. It must be a non-negative value at most Integer.MAX_VALUE.
      * @param buffer Array to write data.
      * @return Size of bytes that are actually read.
      * @see MtpConstants#OPERATION_GET_PARTIAL_OBJECT_64
@@ -317,7 +319,7 @@
      * The returned {@link MtpObjectInfo} has the new object handle field filled in.
      *
      * @param info metadata of the entry
-     * @return object info of the created entry
+     * @return object info of the created entry or null if the operation failed.
      */
     public MtpObjectInfo sendObjectInfo(MtpObjectInfo info) {
         return native_send_object_info(info);
@@ -329,13 +331,11 @@
      *
      * @param signal signal for cancellation
      * @return obtained event
+     * @throws IOException
      */
-    public MtpEvent readEvent(CancellationSignal signal) {
+    public @NonNull MtpEvent readEvent(@Nullable CancellationSignal signal) throws IOException {
         final int handle = native_submit_event_request();
-
-        if (handle < 0) {
-            throw new IllegalStateException("Other thread is reading an event.");
-        }
+        Preconditions.checkState(handle >= 0, "Other thread is reading an event.");
 
         if (signal != null) {
             signal.setOnCancelListener(new CancellationSignal.OnCancelListener() {
@@ -391,8 +391,8 @@
     private native boolean native_import_file(int objectHandle, int fd);
     private native boolean native_send_object(int objectHandle, long size, int fd);
     private native MtpObjectInfo native_send_object_info(MtpObjectInfo info);
-    private native int native_submit_event_request();
-    private native MtpEvent native_reap_event_request(int handle);
+    private native int native_submit_event_request() throws IOException;
+    private native MtpEvent native_reap_event_request(int handle) throws IOException;
     private native void native_discard_event_request(int handle);
     private native long native_get_object_size_long(int handle, int format) throws IOException;
 }
diff --git a/media/java/android/mtp/MtpDeviceInfo.java b/media/java/android/mtp/MtpDeviceInfo.java
index 2e4f451..86bd599 100644
--- a/media/java/android/mtp/MtpDeviceInfo.java
+++ b/media/java/android/mtp/MtpDeviceInfo.java
@@ -16,8 +16,6 @@
 
 package android.mtp;
 
-import android.annotation.Nullable;
-
 /**
  * This class encapsulates information about an MTP device.
  * This corresponds to the DeviceInfo Dataset described in
@@ -112,7 +110,7 @@
      * @see MtpConstants#OPERATION_SET_OBJECT_REFERENCES
      * @see MtpConstants#OPERATION_SKIP
      */
-    public final @Nullable int[] getOperationsSupported() {
+    public final int[] getOperationsSupported() {
         return mOperationsSupported;
     }
 
@@ -120,26 +118,57 @@
      * Returns event code supported by the device.
      *
      * @return supported event code. Can be null if device does not provide the property.
-     * @see MtpConstants#EVENT_UNDEFINED
-     * @see MtpConstants#EVENT_CANCEL_TRANSACTION
-     * @see MtpConstants#EVENT_OBJECT_ADDED
-     * @see MtpConstants#EVENT_OBJECT_REMOVED
-     * @see MtpConstants#EVENT_STORE_ADDED
-     * @see MtpConstants#EVENT_STORE_REMOVED
-     * @see MtpConstants#EVENT_DEVICE_PROP_CHANGED
-     * @see MtpConstants#EVENT_OBJECT_INFO_CHANGED
-     * @see MtpConstants#EVENT_DEVICE_INFO_CHANGED
-     * @see MtpConstants#EVENT_REQUEST_OBJECT_TRANSFER
-     * @see MtpConstants#EVENT_STORE_FULL
-     * @see MtpConstants#EVENT_DEVICE_RESET
-     * @see MtpConstants#EVENT_STORAGE_INFO_CHANGED
-     * @see MtpConstants#EVENT_CAPTURE_COMPLETE
-     * @see MtpConstants#EVENT_UNREPORTED_STATUS
-     * @see MtpConstants#EVENT_OBJECT_PROP_CHANGED
-     * @see MtpConstants#EVENT_OBJECT_PROP_DESC_CHANGED
-     * @see MtpConstants#EVENT_OBJECT_REFERENCES_CHANGED
+     * @see MtpEvent#EVENT_UNDEFINED
+     * @see MtpEvent#EVENT_CANCEL_TRANSACTION
+     * @see MtpEvent#EVENT_OBJECT_ADDED
+     * @see MtpEvent#EVENT_OBJECT_REMOVED
+     * @see MtpEvent#EVENT_STORE_ADDED
+     * @see MtpEvent#EVENT_STORE_REMOVED
+     * @see MtpEvent#EVENT_DEVICE_PROP_CHANGED
+     * @see MtpEvent#EVENT_OBJECT_INFO_CHANGED
+     * @see MtpEvent#EVENT_DEVICE_INFO_CHANGED
+     * @see MtpEvent#EVENT_REQUEST_OBJECT_TRANSFER
+     * @see MtpEvent#EVENT_STORE_FULL
+     * @see MtpEvent#EVENT_DEVICE_RESET
+     * @see MtpEvent#EVENT_STORAGE_INFO_CHANGED
+     * @see MtpEvent#EVENT_CAPTURE_COMPLETE
+     * @see MtpEvent#EVENT_UNREPORTED_STATUS
+     * @see MtpEvent#EVENT_OBJECT_PROP_CHANGED
+     * @see MtpEvent#EVENT_OBJECT_PROP_DESC_CHANGED
+     * @see MtpEvent#EVENT_OBJECT_REFERENCES_CHANGED
      */
-    public final @Nullable int[] getEventsSupported() {
+    public final int[] getEventsSupported() {
         return mEventsSupported;
     }
+
+    /**
+     * Returns if the given operation is supported by the device or not.
+     * @param code Operation code.
+     * @return If the given operation is supported by the device or not.
+     */
+    public boolean isOperationSupported(int code) {
+        return isSupported(mOperationsSupported, code);
+    }
+
+    /**
+     * Returns if the given event is supported by the device or not.
+     * @param code Event code.
+     * @return If the given event is supported by the device or not.
+     */
+    public boolean isEventSupported(int code) {
+        return isSupported(mEventsSupported, code);
+    }
+
+    /**
+     * Returns if the code set contains code.
+     * @hide
+     */
+    private static boolean isSupported(int[] set, int code) {
+        for (final int element : set) {
+            if (element == code) {
+                return true;
+            }
+        }
+        return false;
+    }
 }
diff --git a/media/java/android/mtp/MtpEvent.java b/media/java/android/mtp/MtpEvent.java
index dc89a56..9ca00e1 100644
--- a/media/java/android/mtp/MtpEvent.java
+++ b/media/java/android/mtp/MtpEvent.java
@@ -21,7 +21,44 @@
  * This corresponds to the events described in appendix G of the MTP specification.
  */
 public class MtpEvent {
-    private int mEventCode = MtpConstants.EVENT_UNDEFINED;
+    /** Event code for UNDEFINED event */
+    public static final int EVENT_UNDEFINED = 0x4000;
+    /** Event code for CANCEL_TRANSACTION event */
+    public static final int EVENT_CANCEL_TRANSACTION = 0x4001;
+    /** Event code for OBJECT_ADDED event */
+    public static final int EVENT_OBJECT_ADDED = 0x4002;
+    /** Event code for OBJECT_REMOVED event */
+    public static final int EVENT_OBJECT_REMOVED = 0x4003;
+    /** Event code for STORE_ADDED event */
+    public static final int EVENT_STORE_ADDED = 0x4004;
+    /** Event code for STORE_REMOVED event */
+    public static final int EVENT_STORE_REMOVED = 0x4005;
+    /** Event code for DEVICE_PROP_CHANGED event */
+    public static final int EVENT_DEVICE_PROP_CHANGED = 0x4006;
+    /** Event code for OBJECT_INFO_CHANGED event */
+    public static final int EVENT_OBJECT_INFO_CHANGED = 0x4007;
+    /** Event code for DEVICE_INFO_CHANGED event */
+    public static final int EVENT_DEVICE_INFO_CHANGED = 0x4008;
+    /** Event code for REQUEST_OBJECT_TRANSFER event */
+    public static final int EVENT_REQUEST_OBJECT_TRANSFER = 0x4009;
+    /** Event code for STORE_FULL event */
+    public static final int EVENT_STORE_FULL = 0x400A;
+    /** Event code for DEVICE_RESET event */
+    public static final int EVENT_DEVICE_RESET = 0x400B;
+    /** Event code for STORAGE_INFO_CHANGED event */
+    public static final int EVENT_STORAGE_INFO_CHANGED = 0x400C;
+    /** Event code for CAPTURE_COMPLETE event */
+    public static final int EVENT_CAPTURE_COMPLETE = 0x400D;
+    /** Event code for UNREPORTED_STATUS event */
+    public static final int EVENT_UNREPORTED_STATUS = 0x400E;
+    /** Event code for OBJECT_PROP_CHANGED event */
+    public static final int EVENT_OBJECT_PROP_CHANGED = 0xC801;
+    /** Event code for OBJECT_PROP_DESC_CHANGED event */
+    public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 0xC802;
+    /** Event code for OBJECT_REFERENCES_CHANGED event */
+    public static final int EVENT_OBJECT_REFERENCES_CHANGED = 0xC803;
+
+    private int mEventCode = EVENT_UNDEFINED;
 
     // Parameters for event. The interpretation of event parameters depends upon mEventCode.
     private int mParameter1;
@@ -29,6 +66,11 @@
     private int mParameter3;
 
     /**
+     * MtpEvent is instantiated by JNI.
+     */
+    private MtpEvent() {}
+
+    /**
      * Returns event code of MTP event.
      * See the USB-IF MTP specification for the details of event constants.
      * @return event code
@@ -53,26 +95,26 @@
     /**
      * Obtains objectHandle event parameter.
      *
-     * @see MtpConstants#EVENT_OBJECT_ADDED
-     * @see MtpConstants#EVENT_OBJECT_REMOVED
-     * @see MtpConstants#EVENT_OBJECT_INFO_CHANGED
-     * @see MtpConstants#EVENT_REQUEST_OBJECT_TRANSFER
-     * @see MtpConstants#EVENT_OBJECT_PROP_CHANGED
-     * @see MtpConstants#EVENT_OBJECT_REFERENCES_CHANGED
+     * @see #EVENT_OBJECT_ADDED
+     * @see #EVENT_OBJECT_REMOVED
+     * @see #EVENT_OBJECT_INFO_CHANGED
+     * @see #EVENT_REQUEST_OBJECT_TRANSFER
+     * @see #EVENT_OBJECT_PROP_CHANGED
+     * @see #EVENT_OBJECT_REFERENCES_CHANGED
      */
     public int getObjectHandle() {
         switch (mEventCode) {
-            case MtpConstants.EVENT_OBJECT_ADDED:
+            case EVENT_OBJECT_ADDED:
                 return mParameter1;
-            case MtpConstants.EVENT_OBJECT_REMOVED:
+            case EVENT_OBJECT_REMOVED:
                 return mParameter1;
-            case MtpConstants.EVENT_OBJECT_INFO_CHANGED:
+            case EVENT_OBJECT_INFO_CHANGED:
                 return mParameter1;
-            case MtpConstants.EVENT_REQUEST_OBJECT_TRANSFER:
+            case EVENT_REQUEST_OBJECT_TRANSFER:
                 return mParameter1;
-            case MtpConstants.EVENT_OBJECT_PROP_CHANGED:
+            case EVENT_OBJECT_PROP_CHANGED:
                 return mParameter1;
-            case MtpConstants.EVENT_OBJECT_REFERENCES_CHANGED:
+            case EVENT_OBJECT_REFERENCES_CHANGED:
                 return mParameter1;
             default:
                 throw new IllegalParameterAccess("objectHandle", mEventCode);
@@ -82,20 +124,20 @@
     /**
      * Obtains storageID event parameter.
      *
-     * @see MtpConstants#EVENT_STORE_ADDED
-     * @see MtpConstants#EVENT_STORE_REMOVED
-     * @see MtpConstants#EVENT_STORE_FULL
-     * @see MtpConstants#EVENT_STORAGE_INFO_CHANGED
+     * @see #EVENT_STORE_ADDED
+     * @see #EVENT_STORE_REMOVED
+     * @see #EVENT_STORE_FULL
+     * @see #EVENT_STORAGE_INFO_CHANGED
      */
     public int getStorageId() {
         switch (mEventCode) {
-            case MtpConstants.EVENT_STORE_ADDED:
+            case EVENT_STORE_ADDED:
                 return mParameter1;
-            case MtpConstants.EVENT_STORE_REMOVED:
+            case EVENT_STORE_REMOVED:
                 return mParameter1;
-            case MtpConstants.EVENT_STORE_FULL:
+            case EVENT_STORE_FULL:
                 return mParameter1;
-            case MtpConstants.EVENT_STORAGE_INFO_CHANGED:
+            case EVENT_STORAGE_INFO_CHANGED:
                 return mParameter1;
             default:
                 throw new IllegalParameterAccess("storageID", mEventCode);
@@ -105,11 +147,11 @@
     /**
      * Obtains devicePropCode event parameter.
      *
-     * @see MtpConstants#EVENT_DEVICE_PROP_CHANGED
+     * @see #EVENT_DEVICE_PROP_CHANGED
      */
     public int getDevicePropCode() {
         switch (mEventCode) {
-            case MtpConstants.EVENT_DEVICE_PROP_CHANGED:
+            case EVENT_DEVICE_PROP_CHANGED:
                 return mParameter1;
             default:
                 throw new IllegalParameterAccess("devicePropCode", mEventCode);
@@ -119,11 +161,11 @@
     /**
      * Obtains transactionID event parameter.
      *
-     * @see MtpConstants#EVENT_CAPTURE_COMPLETE
+     * @see #EVENT_CAPTURE_COMPLETE
      */
     public int getTransactionId() {
         switch (mEventCode) {
-            case MtpConstants.EVENT_CAPTURE_COMPLETE:
+            case EVENT_CAPTURE_COMPLETE:
                 return mParameter1;
             default:
                 throw new IllegalParameterAccess("transactionID", mEventCode);
@@ -133,14 +175,14 @@
     /**
      * Obtains objectPropCode event parameter.
      *
-     * @see MtpConstants#EVENT_OBJECT_PROP_CHANGED
-     * @see MtpConstants#EVENT_OBJECT_PROP_DESC_CHANGED
+     * @see #EVENT_OBJECT_PROP_CHANGED
+     * @see #EVENT_OBJECT_PROP_DESC_CHANGED
      */
     public int getObjectPropCode() {
         switch (mEventCode) {
-            case MtpConstants.EVENT_OBJECT_PROP_CHANGED:
+            case EVENT_OBJECT_PROP_CHANGED:
                 return mParameter2;
-            case MtpConstants.EVENT_OBJECT_PROP_DESC_CHANGED:
+            case EVENT_OBJECT_PROP_DESC_CHANGED:
                 return mParameter1;
             default:
                 throw new IllegalParameterAccess("objectPropCode", mEventCode);
@@ -150,11 +192,11 @@
     /**
      * Obtains objectFormatCode event parameter.
      *
-     * @see MtpConstants#EVENT_OBJECT_PROP_DESC_CHANGED
+     * @see #EVENT_OBJECT_PROP_DESC_CHANGED
      */
     public int getObjectFormatCode() {
         switch (mEventCode) {
-            case MtpConstants.EVENT_OBJECT_PROP_DESC_CHANGED:
+            case EVENT_OBJECT_PROP_DESC_CHANGED:
                 return mParameter2;
             default:
                 throw new IllegalParameterAccess("objectFormatCode", mEventCode);
diff --git a/media/java/android/service/media/IMediaBrowserService.aidl b/media/java/android/service/media/IMediaBrowserService.aidl
index 6ca5ac5..6b6a561 100644
--- a/media/java/android/service/media/IMediaBrowserService.aidl
+++ b/media/java/android/service/media/IMediaBrowserService.aidl
@@ -14,19 +14,11 @@
  * @hide
  */
 oneway interface IMediaBrowserService {
-
-    // Warning: DO NOT CHANGE the methods signature and order of methods.
-    // A change of the order or the method signatures could break the support library.
-
     void connect(String pkg, in Bundle rootHints, IMediaBrowserServiceCallbacks callbacks);
     void disconnect(IMediaBrowserServiceCallbacks callbacks);
 
-    void addSubscription(String uri, IMediaBrowserServiceCallbacks callbacks);
-    void removeSubscription(String uri, IMediaBrowserServiceCallbacks callbacks);
-    void getMediaItem(String uri, in ResultReceiver cb);
-
-    void addSubscriptionWithOptions(String uri, in Bundle options,
+    void addSubscription(String uri, in IBinder token, in Bundle options,
             IMediaBrowserServiceCallbacks callbacks);
-    void removeSubscriptionWithOptions(String uri, in Bundle options,
-            IMediaBrowserServiceCallbacks callbacks);
+    void removeSubscription(String uri, in IBinder token, IMediaBrowserServiceCallbacks callbacks);
+    void getMediaItem(String uri, in ResultReceiver cb, IMediaBrowserServiceCallbacks callbacks);
 }
diff --git a/media/java/android/service/media/IMediaBrowserServiceCallbacks.aidl b/media/java/android/service/media/IMediaBrowserServiceCallbacks.aidl
index e6b0e8c..dadb025 100644
--- a/media/java/android/service/media/IMediaBrowserServiceCallbacks.aidl
+++ b/media/java/android/service/media/IMediaBrowserServiceCallbacks.aidl
@@ -13,10 +13,6 @@
  * @hide
  */
 oneway interface IMediaBrowserServiceCallbacks {
-
-    // Warning: DO NOT CHANGE the methods signature and order of methods.
-    // A change of the order or the method signatures could break the support library.
-
     /**
      * Invoked when the connected has been established.
      * @param root The root media id for browsing.
@@ -26,6 +22,5 @@
      */
     void onConnect(String root, in MediaSession.Token session, in Bundle extras);
     void onConnectFailed();
-    void onLoadChildren(String mediaId, in ParceledListSlice list);
-    void onLoadChildrenWithOptions(String mediaId, in ParceledListSlice list, in Bundle options);
+    void onLoadChildren(String mediaId, in ParceledListSlice list, in Bundle options);
 }
diff --git a/media/java/android/service/media/MediaBrowserService.java b/media/java/android/service/media/MediaBrowserService.java
index 6954045..4b88926 100644
--- a/media/java/android/service/media/MediaBrowserService.java
+++ b/media/java/android/service/media/MediaBrowserService.java
@@ -39,6 +39,7 @@
 import android.text.TextUtils;
 import android.util.ArrayMap;
 import android.util.Log;
+import android.util.Pair;
 
 import java.io.FileDescriptor;
 import java.io.PrintWriter;
@@ -96,6 +97,7 @@
     private @interface ResultFlags { }
 
     private final ArrayMap<IBinder, ConnectionRecord> mConnections = new ArrayMap<>();
+    private ConnectionRecord mCurConnection;
     private final Handler mHandler = new Handler();
     private ServiceBinder mBinder;
     MediaSession.Token mSession;
@@ -108,7 +110,7 @@
         Bundle rootHints;
         IMediaBrowserServiceCallbacks callbacks;
         BrowserRoot root;
-        HashMap<String, List<Bundle>> subscriptions = new HashMap<>();
+        HashMap<String, List<Pair<IBinder, Bundle>>> subscriptions = new HashMap<>();
     }
 
     /**
@@ -247,13 +249,7 @@
         }
 
         @Override
-        public void addSubscription(final String id,
-                final IMediaBrowserServiceCallbacks callbacks) {
-            addSubscriptionWithOptions(id, null, callbacks);
-        }
-
-        @Override
-        public void addSubscriptionWithOptions(final String id, final Bundle options,
+        public void addSubscription(final String id, final IBinder token, final Bundle options,
                 final IMediaBrowserServiceCallbacks callbacks) {
             mHandler.post(new Runnable() {
                     @Override
@@ -268,19 +264,13 @@
                             return;
                         }
 
-                        MediaBrowserService.this.addSubscription(id, connection, options);
+                        MediaBrowserService.this.addSubscription(id, connection, token, options);
                     }
                 });
         }
 
         @Override
-        public void removeSubscription(final String id,
-                final IMediaBrowserServiceCallbacks callbacks) {
-            removeSubscriptionWithOptions(id, null, callbacks);
-        }
-
-        @Override
-        public void removeSubscriptionWithOptions(final String id, final Bundle options,
+        public void removeSubscription(final String id, final IBinder token,
                 final IMediaBrowserServiceCallbacks callbacks) {
             mHandler.post(new Runnable() {
                 @Override
@@ -293,7 +283,7 @@
                                 + id);
                         return;
                     }
-                    if (!MediaBrowserService.this.removeSubscription(id, connection, options)) {
+                    if (!MediaBrowserService.this.removeSubscription(id, connection, token)) {
                         Log.w(TAG, "removeSubscription called for " + id
                                 + " which is not subscribed");
                     }
@@ -302,7 +292,8 @@
         }
 
         @Override
-        public void getMediaItem(final String mediaId, final ResultReceiver receiver) {
+        public void getMediaItem(final String mediaId, final ResultReceiver receiver,
+                final IMediaBrowserServiceCallbacks callbacks) {
             if (TextUtils.isEmpty(mediaId) || receiver == null) {
                 return;
             }
@@ -310,7 +301,13 @@
             mHandler.post(new Runnable() {
                 @Override
                 public void run() {
-                    performLoadItem(mediaId, receiver);
+                    final IBinder b = callbacks.asBinder();
+                    ConnectionRecord connection = mConnections.get(b);
+                    if (connection == null) {
+                        Log.w(TAG, "getMediaItem for callback that isn't registered id=" + mediaId);
+                        return;
+                    }
+                    performLoadItem(mediaId, connection, receiver);
                 }
             });
         }
@@ -481,6 +478,20 @@
     }
 
     /**
+     * Gets the root hints sent from the currently connected {@link MediaBrowser}.
+     *
+     * @throws IllegalStateException If this method is called outside of {@link #onLoadChildren}
+     *             or {@link #onLoadItem}
+     */
+    public final Bundle getBrowserRootHints() {
+        if (mCurConnection == null) {
+            throw new IllegalStateException("This should be called inside of onLoadChildren or"
+                    + " onLoadItem methods");
+        }
+        return mCurConnection.rootHints == null ? null : new Bundle(mCurConnection.rootHints);
+    }
+
+    /**
      * Notifies all connected media browsers that the children of
      * the specified parent id have changed in some way.
      * This will cause browsers to fetch subscribed content again.
@@ -519,11 +530,12 @@
             public void run() {
                 for (IBinder binder : mConnections.keySet()) {
                     ConnectionRecord connection = mConnections.get(binder);
-                    List<Bundle> optionsList = connection.subscriptions.get(parentId);
-                    if (optionsList != null) {
-                        for (Bundle bundle : optionsList) {
-                            if (MediaBrowserUtils.hasDuplicatedItems(options, bundle)) {
-                                performLoadChildren(parentId, connection, bundle);
+                    List<Pair<IBinder, Bundle>> callbackList =
+                            connection.subscriptions.get(parentId);
+                    if (callbackList != null) {
+                        for (Pair<IBinder, Bundle> callback : callbackList) {
+                            if (MediaBrowserUtils.hasDuplicatedItems(options, callback.second)) {
+                                performLoadChildren(parentId, connection, callback.second);
                             }
                         }
                     }
@@ -553,19 +565,21 @@
     /**
      * Save the subscription and if it is a new subscription send the results.
      */
-    private void addSubscription(String id, ConnectionRecord connection, Bundle options) {
+    private void addSubscription(String id, ConnectionRecord connection, IBinder token,
+            Bundle options) {
         // Save the subscription
-        List<Bundle> optionsList = connection.subscriptions.get(id);
-        if (optionsList == null) {
-            optionsList = new ArrayList<>();
+        List<Pair<IBinder, Bundle>> callbackList = connection.subscriptions.get(id);
+        if (callbackList == null) {
+            callbackList = new ArrayList<>();
         }
-        for (Bundle bundle : optionsList) {
-            if (MediaBrowserUtils.areSameOptions(options, bundle)) {
+        for (Pair<IBinder, Bundle> callback : callbackList) {
+            if (token == callback.first
+                    && MediaBrowserUtils.areSameOptions(options, callback.second)) {
                 return;
             }
         }
-        optionsList.add(options);
-        connection.subscriptions.put(id, optionsList);
+        callbackList.add(new Pair<>(token, options));
+        connection.subscriptions.put(id, callbackList);
         // send the results
         performLoadChildren(id, connection, options);
     }
@@ -573,21 +587,20 @@
     /**
      * Remove the subscription.
      */
-    private boolean removeSubscription(String id, ConnectionRecord connection, Bundle options) {
-        if (options == null) {
+    private boolean removeSubscription(String id, ConnectionRecord connection, IBinder token) {
+        if (token == null) {
             return connection.subscriptions.remove(id) != null;
         }
         boolean removed = false;
-        List<Bundle> optionsList = connection.subscriptions.get(id);
-        if (optionsList != null) {
-            for (Bundle bundle : optionsList) {
-                if (MediaBrowserUtils.areSameOptions(options, bundle)) {
+        List<Pair<IBinder, Bundle>> callbackList = connection.subscriptions.get(id);
+        if (callbackList != null) {
+            for (Pair<IBinder, Bundle> callback : callbackList) {
+                if (token == callback.first) {
                     removed = true;
-                    optionsList.remove(bundle);
-                    break;
+                    callbackList.remove(callback);
                 }
             }
-            if (optionsList.size() == 0) {
+            if (callbackList.size() == 0) {
                 connection.subscriptions.remove(id);
             }
         }
@@ -619,14 +632,7 @@
                 final ParceledListSlice<MediaBrowser.MediaItem> pls =
                         filteredList == null ? null : new ParceledListSlice<>(filteredList);
                 try {
-                    // NOTE: Do not call onLoadChildrenWithOptions when options are null. Otherwise,
-                    // it will break the action of support library which expects onLoadChildren will
-                    // be called when options are null.
-                    if (options == null) {
-                        connection.callbacks.onLoadChildren(parentId, pls);
-                    } else {
-                        connection.callbacks.onLoadChildrenWithOptions(parentId, pls, options);
-                    }
+                    connection.callbacks.onLoadChildren(parentId, pls, options);
                 } catch (RemoteException ex) {
                     // The other side is in the process of crashing.
                     Log.w(TAG, "Calling onLoadChildren() failed for id=" + parentId
@@ -635,11 +641,13 @@
             }
         };
 
+        mCurConnection = connection;
         if (options == null) {
             onLoadChildren(parentId, result);
         } else {
             onLoadChildren(parentId, result, options);
         }
+        mCurConnection = null;
 
         if (!result.isDone()) {
             throw new IllegalStateException("onLoadChildren must call detach() or sendResult()"
@@ -668,7 +676,8 @@
         return list.subList(fromIndex, toIndex);
     }
 
-    private void performLoadItem(String itemId, final ResultReceiver receiver) {
+    private void performLoadItem(String itemId, final ConnectionRecord connection,
+            final ResultReceiver receiver) {
         final Result<MediaBrowser.MediaItem> result =
                 new Result<MediaBrowser.MediaItem>(itemId) {
             @Override
@@ -679,7 +688,9 @@
             }
         };
 
-        MediaBrowserService.this.onLoadItem(itemId, result);
+        mCurConnection = connection;
+        onLoadItem(itemId, result);
+        mCurConnection = null;
 
         if (!result.isDone()) {
             throw new IllegalStateException("onLoadItem must call detach() or sendResult()"
diff --git a/media/jni/android_media_ExifInterface.cpp b/media/jni/android_media_ExifInterface.cpp
index 418a3f2..731deae 100644
--- a/media/jni/android_media_ExifInterface.cpp
+++ b/media/jni/android_media_ExifInterface.cpp
@@ -136,12 +136,13 @@
 
     KeyedVector<String8, String8> map;
 
-    if (image_data.thumbnail.length > 0) {
-        map.add(String8("hasThumbnail"), String8("true"));
-        map.add(String8("thumbnailOffset"), String8::format("%d", image_data.thumbnail.offset));
-        map.add(String8("thumbnailLength"), String8::format("%d", image_data.thumbnail.length));
+    if (image_data.thumbnail.length > 0
+            && image_data.thumbnail.format == ::piex::Image::kJpegCompressed) {
+        map.add(String8("HasThumbnail"), String8("true"));
+        map.add(String8("ThumbnailOffset"), String8::format("%d", image_data.thumbnail.offset));
+        map.add(String8("ThumbnailLength"), String8::format("%d", image_data.thumbnail.length));
     } else {
-        map.add(String8("hasThumbnail"), String8("false"));
+        map.add(String8("HasThumbnail"), String8("false"));
     }
 
     map.add(
@@ -306,7 +307,7 @@
                 (uint8_t*)thumbnailData.get());
         env->SetByteArrayRegion(
                 jthumbnailByteArray, 0, image_data.thumbnail.length, thumbnailData.get());
-        jstring jkey = env->NewStringUTF(String8("thumbnailData"));
+        jstring jkey = env->NewStringUTF(String8("ThumbnailData"));
         env->CallObjectMethod(hashMap, gFields.hashMap.put, jkey, jthumbnailByteArray);
         env->DeleteLocalRef(jkey);
         env->DeleteLocalRef(jthumbnailByteArray);
diff --git a/media/jni/android_mtp_MtpDatabase.cpp b/media/jni/android_mtp_MtpDatabase.cpp
index 39f2a32..7217832 100644
--- a/media/jni/android_mtp_MtpDatabase.cpp
+++ b/media/jni/android_mtp_MtpDatabase.cpp
@@ -932,8 +932,9 @@
                     break;
                 }
 
-                if (image_data.thumbnail.length == 0) {
-                    // No thumbnail.
+                if (image_data.thumbnail.length == 0
+                        || image_data.thumbnail.format != ::piex::Image::kJpegCompressed) {
+                    // No thumbnail or non jpeg thumbnail.
                     break;
                 }
 
diff --git a/media/jni/android_mtp_MtpDevice.cpp b/media/jni/android_mtp_MtpDevice.cpp
index 6e434b2..1faa0c4 100644
--- a/media/jni/android_mtp_MtpDevice.cpp
+++ b/media/jni/android_mtp_MtpDevice.cpp
@@ -244,7 +244,8 @@
     if (deviceInfo->mSerial)
         env->SetObjectField(info, field_deviceInfo_serialNumber,
             env->NewStringUTF(deviceInfo->mSerial));
-    if (deviceInfo->mOperations) {
+    assert(deviceInfo->mOperations);
+    {
         const size_t size = deviceInfo->mOperations->size();
         ScopedLocalRef<jintArray> operations(env, static_cast<jintArray>(env->NewIntArray(size)));
         {
@@ -259,7 +260,8 @@
             env->SetObjectField(info, field_deviceInfo_operationsSupported, operations.get());
         }
     }
-    if (deviceInfo->mEvents) {
+    assert(deviceInfo->mEvents);
+    {
         const size_t size = deviceInfo->mEvents->size();
         ScopedLocalRef<jintArray> events(env, static_cast<jintArray>(env->NewIntArray(size)));
         {
diff --git a/media/lib/tvremote/Android.mk b/media/lib/tvremote/Android.mk
new file mode 100644
index 0000000..06838c2
--- /dev/null
+++ b/media/lib/tvremote/Android.mk
@@ -0,0 +1,48 @@
+#
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+LOCAL_PATH := $(call my-dir)
+
+# the tvremoteprovider library
+# ============================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE:= com.android.media.tv.remoteprovider
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := \
+            $(call all-java-files-under, java) \
+            $(call all-aidl-files-under, java)
+
+LOCAL_DEX_PREOPT := false
+
+include $(BUILD_JAVA_LIBRARY)
+
+
+# ====  com.android.media.tvremote.xml lib def  ========================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := com.android.media.tv.remoteprovider.xml
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_MODULE_CLASS := ETC
+
+# This will install the file in /system/etc/permissions
+#
+LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/permissions
+
+LOCAL_SRC_FILES := $(LOCAL_MODULE)
+
+include $(BUILD_PREBUILT)
\ No newline at end of file
diff --git a/media/lib/tvremote/README.txt b/media/lib/tvremote/README.txt
new file mode 100644
index 0000000..9375f02
--- /dev/null
+++ b/media/lib/tvremote/README.txt
@@ -0,0 +1,26 @@
+This library (com.android.media.tv.remoteprovider.jar) is a shared java library
+containing classes required by unbundled atv remote providers.
+
+--- Rules of this library ---
+o This library is effectively a System API for unbundled emote service provider
+  that may be distributed outside the system image. So it MUST BE API STABLE.
+  You can add but not remove. The rules are the same as for the
+  public platform SDK API.
+o This library can see and instantiate internal platform classes, but it must not
+  expose them in any public method (or by extending them via inheritance). This would
+  break clients of the library because they cannot see the internal platform classes.
+
+This library is distributed in the system image, and loaded as
+a shared library. So you can change the implementation, but not
+the interface. In this way it is like framework.jar.
+
+--- Why does this library exist? ---
+
+Unbundled atv remote providers (such as Emote app) cannot use internal
+platform classes.
+
+This library will eventually be replaced when the inputmanager
+infrastructure is ready with APIs allowing unbundled system apps to
+inject events into uhid.
+That API isn't ready yet so this library is a compromise to
+make new capabilities available to the system.
\ No newline at end of file
diff --git a/media/lib/tvremote/com.android.media.tv.remoteprovider.xml b/media/lib/tvremote/com.android.media.tv.remoteprovider.xml
new file mode 100644
index 0000000..dcf479a
--- /dev/null
+++ b/media/lib/tvremote/com.android.media.tv.remoteprovider.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<permissions>
+    <library name="com.android.media.tv.remoteprovider"
+        file="/system/framework/com.android.media.tv.remoteprovider.jar" />
+</permissions>
\ No newline at end of file
diff --git a/media/lib/tvremote/java/com/android/media/tv/remoteprovider/TvRemoteProvider.java b/media/lib/tvremote/java/com/android/media/tv/remoteprovider/TvRemoteProvider.java
new file mode 100644
index 0000000..35322ad
--- /dev/null
+++ b/media/lib/tvremote/java/com/android/media/tv/remoteprovider/TvRemoteProvider.java
@@ -0,0 +1,303 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.media.tv.remoteprovider;
+
+import android.content.Context;
+import android.media.tv.ITvRemoteProvider;
+import android.media.tv.ITvRemoteServiceInput;
+import android.os.Handler;
+import android.os.IBinder;
+import android.os.Looper;
+import android.os.Message;
+import android.os.RemoteException;
+import android.util.Log;
+
+/**
+ * Base class for emote providers implemented in unbundled service.
+ * <p/>
+ * This object is not thread safe.  It is only intended to be accessed on the
+ * {@link Context#getMainLooper main looper thread} of an application.
+ * </p><p>
+ * IMPORTANT: This class is effectively a system API for unbundled emote service, and
+ * must remain API stable. See README.txt in the root of this package for more information.
+ * </p>
+ */
+
+
+public abstract class TvRemoteProvider {
+
+    /**
+     * The {@link Intent} that must be declared as handled by the service.
+     * The service must also require the {@link android.Manifest.permission#BIND_TV_REMOTE_SERVICE}
+     * permission so that other applications cannot abuse it.
+     */
+    public static final String SERVICE_INTERFACE =
+            "com.android.media.tv.remoteprovider.TvRemoteProvider";
+
+    private static final String TAG = "TvRemoteProvider";
+    private static final boolean DEBUG_KEYS = false;
+    private static final int MSG_SET_SERVICE_INPUT = 1;
+    private static final int MSG_SEND_INPUTBRIDGE_CONNECTED = 2;
+    private final Context mContext;
+    private final ProviderStub mStub;
+    private final ProviderHandler mHandler;
+    private ITvRemoteServiceInput mRemoteServiceInput;
+
+    /**
+     * Creates a provider for an unbundled emote controller
+     * service allowing it to interface with the tv remote controller
+     * system service.
+     *
+     * @param context The application context for the remote provider.
+     */
+    public TvRemoteProvider(Context context) {
+        mContext = context.getApplicationContext();
+        mStub = new ProviderStub();
+        mHandler = new ProviderHandler(mContext.getMainLooper());
+    }
+
+    /**
+     * Gets the context of the remote service provider.
+     */
+    public final Context getContext() {
+        return mContext;
+    }
+
+
+    /**
+     * Gets the Binder associated with the provider.
+     * <p>
+     * This is intended to be used for the onBind() method of a service that implements
+     * a remote provider service.
+     * </p>
+     *
+     * @return The IBinder instance associated with the provider.
+     */
+    public IBinder getBinder() {
+        return mStub;
+    }
+
+    /**
+     * Information about the InputBridge connected status.
+     *
+     * @param token Identifier for the connection. Null, if failed.
+     */
+    public void onInputBridgeConnected(IBinder token) {
+    }
+
+    /**
+     * Set a sink for sending events to framework service.
+     *
+     * @param tvServiceInput sink defined in framework service
+     */
+    private void setRemoteServiceInputSink(ITvRemoteServiceInput tvServiceInput) {
+        mRemoteServiceInput = tvServiceInput;
+    }
+
+    /**
+     * openRemoteInputBridge : Open an input bridge for a particular device.
+     * Clients should pass in a token that can be used to match this request with a token that
+     * will be returned by {@link TvRemoteProvider#onInputBridgeConnected(IBinder token)}
+     * <p>
+     * The token should be used for subsequent calls.
+     * </p>
+     *
+     * @param name        Device name
+     * @param token       Identifier for this connection
+     * @param width       Width of the device's virtual touchpad
+     * @param height      Height of the device's virtual touchpad
+     * @param maxPointers Maximum supported pointers
+     * @throws RuntimeException
+     */
+    public void openRemoteInputBridge(IBinder token, String name, int width, int height,
+                                      int maxPointers) throws RuntimeException {
+        try {
+            mRemoteServiceInput.openInputBridge(token, name, width, height, maxPointers);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    /**
+     * closeInputBridge : Close input bridge for a device
+     *
+     * @param token identifier for this connection
+     * @throws RuntimeException
+     */
+    public void closeInputBridge(IBinder token) throws RuntimeException {
+        try {
+            mRemoteServiceInput.closeInputBridge(token);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    /**
+     * clearInputBridge : Clear out any existing key or pointer events in queue for this device by
+     *                    dropping them on the floor and sending an UP to all keys and pointer
+     *                    slots.
+     *
+     * @param token identifier for this connection
+     * @throws RuntimeException
+     */
+    public void clearInputBridge(IBinder token) throws RuntimeException {
+        if (DEBUG_KEYS) Log.d(TAG, "clearInputBridge() token " + token);
+        try {
+            mRemoteServiceInput.clearInputBridge(token);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    /**
+     * sendTimestamp : Send a timestamp for a set of pointer events
+     *
+     * @param token     identifier for the device
+     * @param timestamp Timestamp to be used in
+     *                  {@link android.os.SystemClock#uptimeMillis} time base
+     * @throws RuntimeException
+     */
+    public void sendTimestamp(IBinder token, long timestamp) throws RuntimeException {
+        if (DEBUG_KEYS) Log.d(TAG, "sendTimestamp() token: " + token +
+                ", timestamp: " + timestamp);
+        try {
+            mRemoteServiceInput.sendTimestamp(token, timestamp);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    /**
+     * sendKeyUp : Send key up event for a device
+     *
+     * @param token   identifier for this connection
+     * @param keyCode Key code to be sent
+     * @throws RuntimeException
+     */
+    public void sendKeyUp(IBinder token, int keyCode) throws RuntimeException {
+        if (DEBUG_KEYS) Log.d(TAG, "sendKeyUp() token: " + token + ", keyCode: " + keyCode);
+        try {
+            mRemoteServiceInput.sendKeyUp(token, keyCode);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    /**
+     * sendKeyDown : Send key down event for a device
+     *
+     * @param token   identifier for this connection
+     * @param keyCode Key code to be sent
+     * @throws RuntimeException
+     */
+    public void sendKeyDown(IBinder token, int keyCode) throws RuntimeException {
+        if (DEBUG_KEYS) Log.d(TAG, "sendKeyDown() token: " + token +
+                ", keyCode: " + keyCode);
+        try {
+            mRemoteServiceInput.sendKeyDown(token, keyCode);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    /**
+     * sendPointerUp : Send pointer up event for a device
+     *
+     * @param token     identifier for the device
+     * @param pointerId Pointer id to be used. Value may be from 0
+     *                  to {@link MotionEvent#getPointerCount()} -1
+     * @throws RuntimeException
+     */
+    public void sendPointerUp(IBinder token, int pointerId) throws RuntimeException {
+        if (DEBUG_KEYS) Log.d(TAG, "sendPointerUp() token: " + token +
+                ", pointerId: " + pointerId);
+        try {
+            mRemoteServiceInput.sendPointerUp(token, pointerId);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    /**
+     * sendPointerDown : Send pointer down event for a device
+     *
+     * @param token     identifier for the device
+     * @param pointerId Pointer id to be used. Value may be from 0
+     *                  to {@link MotionEvent#getPointerCount()} -1
+     * @param x         X co-ordinates in display pixels
+     * @param y         Y co-ordinates in display pixels
+     * @throws RuntimeException
+     */
+    public void sendPointerDown(IBinder token, int pointerId, int x, int y)
+            throws RuntimeException {
+        if (DEBUG_KEYS) Log.d(TAG, "sendPointerDown() token: " + token +
+                ", pointerId: " + pointerId);
+        try {
+            mRemoteServiceInput.sendPointerDown(token, pointerId, x, y);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    /**
+     * sendPointerSync : Send pointer sync event for a device
+     *
+     * @param token identifier for the device
+     * @throws RuntimeException
+     */
+    public void sendPointerSync(IBinder token) throws RuntimeException {
+        if (DEBUG_KEYS) Log.d(TAG, "sendPointerSync() token: " + token);
+        try {
+            mRemoteServiceInput.sendPointerSync(token);
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    private final class ProviderStub extends ITvRemoteProvider.Stub {
+        @Override
+        public void setRemoteServiceInputSink(ITvRemoteServiceInput tvServiceInput) {
+            mHandler.obtainMessage(MSG_SET_SERVICE_INPUT, tvServiceInput).sendToTarget();
+        }
+
+        @Override
+        public void onInputBridgeConnected(IBinder token) {
+            mHandler.obtainMessage(MSG_SEND_INPUTBRIDGE_CONNECTED, 0, 0,
+                    (IBinder) token).sendToTarget();
+        }
+    }
+
+    private final class ProviderHandler extends Handler {
+        public ProviderHandler(Looper looper) {
+            super(looper, null, true);
+        }
+
+        @Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_SET_SERVICE_INPUT: {
+                    setRemoteServiceInputSink((ITvRemoteServiceInput) msg.obj);
+                    break;
+                }
+                case MSG_SEND_INPUTBRIDGE_CONNECTED: {
+                    onInputBridgeConnected((IBinder) msg.obj);
+                    break;
+                }
+            }
+        }
+    }
+}
diff --git a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/integration/CameraBinderTest.java b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/integration/CameraBinderTest.java
index 9a0946e..bbc249f 100644
--- a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/integration/CameraBinderTest.java
+++ b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/integration/CameraBinderTest.java
@@ -254,6 +254,15 @@
             // TODO Auto-generated method stub
 
         }
+
+        /*
+         * (non-Javadoc)
+         * @see android.hardware.camera2.ICameraDeviceCallbacks#onRepeatingRequestError()
+         */
+        @Override
+        public void onRepeatingRequestError(long lastFrameNumber) {
+            // TODO Auto-generated method stub
+        }
     }
 
     @SmallTest
diff --git a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/integration/CameraDeviceBinderTest.java b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/integration/CameraDeviceBinderTest.java
index 5c1d8a7..6c879b9 100644
--- a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/integration/CameraDeviceBinderTest.java
+++ b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/integration/CameraDeviceBinderTest.java
@@ -145,6 +145,15 @@
             // TODO Auto-generated method stub
 
         }
+
+        /*
+         * (non-Javadoc)
+         * @see android.hardware.camera2.ICameraDeviceCallbacks#onRepeatingRequestError()
+         */
+        @Override
+        public void onRepeatingRequestError(long lastFrameNumber) {
+            // TODO Auto-generated method stub
+        }
     }
 
     class IsMetadataNotEmpty extends ArgumentMatcher<CameraMetadataNative> {
diff --git a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/stress/Camera2RecordingTest.java b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/stress/Camera2RecordingTest.java
index a9b6bfd..5566b4e 100644
--- a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/stress/Camera2RecordingTest.java
+++ b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/stress/Camera2RecordingTest.java
@@ -378,7 +378,7 @@
         Size maxPreviewSize = mOrderedPreviewSizes.get(0);
         List<Range<Integer> > fpsRanges = Arrays.asList(
                 mStaticInfo.getAeAvailableTargetFpsRangesChecked());
-        int cameraId = Integer.valueOf(mCamera.getId());
+        int cameraId = Integer.parseInt(mCamera.getId());
         int maxVideoFrameRate = -1;
         for (int profileId : camcorderProfileList) {
             if (!CamcorderProfile.hasProfile(cameraId, profileId) ||
@@ -539,7 +539,7 @@
         int kFrameDrop_Tolerence = FRAMEDROP_TOLERANCE;
 
         for (int profileId : mCamcorderProfileList) {
-            int cameraId = Integer.valueOf(mCamera.getId());
+            int cameraId = Integer.parseInt(mCamera.getId());
             if (!CamcorderProfile.hasProfile(cameraId, profileId) ||
                     allowedUnsupported(cameraId, profileId)) {
                 continue;
diff --git a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/ExifInterfaceTest.java b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/ExifInterfaceTest.java
index 312d9aa..db326ba 100644
--- a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/ExifInterfaceTest.java
+++ b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/ExifInterfaceTest.java
@@ -97,7 +97,7 @@
         // Values.
         public final String make;
         public final String model;
-        public final float aperture;
+        public final float fNumber;
         public final String datetime;
         public final float exposureTime;
         public final float flash;
@@ -140,7 +140,7 @@
             // Reads values.
             make = getString(typedArray, 7);
             model = getString(typedArray, 8);
-            aperture = typedArray.getFloat(9, 0f);
+            fNumber = typedArray.getFloat(9, 0f);
             datetime = getString(typedArray, 10);
             exposureTime = typedArray.getFloat(11, 0f);
             flash = typedArray.getFloat(12, 0f);
@@ -243,7 +243,7 @@
         assertEquals(expectedValue, intValue);
     }
 
-    private void assertFloatTag(ExifInterface exifInterface, String tag, float expectedValue) {
+    private void assertDoubleTag(ExifInterface exifInterface, String tag, float expectedValue) {
         double doubleValue = exifInterface.getAttributeDouble(tag, 0.0);
         assertEquals(expectedValue, doubleValue, DIFFERENCE_TOLERANCE);
     }
@@ -288,10 +288,10 @@
         // Checks values.
         assertStringTag(exifInterface, ExifInterface.TAG_MAKE, expectedValue.make);
         assertStringTag(exifInterface, ExifInterface.TAG_MODEL, expectedValue.model);
-        assertFloatTag(exifInterface, ExifInterface.TAG_F_NUMBER, expectedValue.aperture);
+        assertDoubleTag(exifInterface, ExifInterface.TAG_F_NUMBER, expectedValue.fNumber);
         assertStringTag(exifInterface, ExifInterface.TAG_DATETIME, expectedValue.datetime);
-        assertFloatTag(exifInterface, ExifInterface.TAG_EXPOSURE_TIME, expectedValue.exposureTime);
-        assertFloatTag(exifInterface, ExifInterface.TAG_FLASH, expectedValue.flash);
+        assertDoubleTag(exifInterface, ExifInterface.TAG_EXPOSURE_TIME, expectedValue.exposureTime);
+        assertDoubleTag(exifInterface, ExifInterface.TAG_FLASH, expectedValue.flash);
         assertStringTag(exifInterface, ExifInterface.TAG_FOCAL_LENGTH, expectedValue.focalLength);
         assertStringTag(exifInterface, ExifInterface.TAG_GPS_ALTITUDE, expectedValue.gpsAltitude);
         assertStringTag(exifInterface, ExifInterface.TAG_GPS_ALTITUDE_REF,
diff --git a/opengl/java/android/opengl/GLSurfaceView.java b/opengl/java/android/opengl/GLSurfaceView.java
index f37ec58..38ed932 100644
--- a/opengl/java/android/opengl/GLSurfaceView.java
+++ b/opengl/java/android/opengl/GLSurfaceView.java
@@ -547,7 +547,9 @@
      */
     @Override
     public void surfaceRedrawNeeded(SurfaceHolder holder) {
-        mGLThread.requestRenderAndWait();
+        if (mGLThread != null) {
+            mGLThread.requestRenderAndWait();
+        }
     }
 
 
diff --git a/packages/DocumentsUI/res/values-af/strings.xml b/packages/DocumentsUI/res/values-af/strings.xml
index 27c4bbc..c4a5eeab 100644
--- a/packages/DocumentsUI/res/values-af/strings.xml
+++ b/packages/DocumentsUI/res/values-af/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Maak toe"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Hierdie lêers is nie gekopieer nie: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Hierdie lêers is nie geskuif nie: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Hierdie lêers is nie uitgevee nie: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Hierdie lêers is na \'n ander formaat omgeskakel: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Het <xliff:g id="COUNT_1">%1$d</xliff:g> lêers na die knipbord gekopieer.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Vee <xliff:g id="COUNT_1">%1$d</xliff:g> items uit?</item>
       <item quantity="one">Vee <xliff:g id="COUNT_0">%1$d</xliff:g> item uit?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Jammer, jy kan net tot en met 1 000 items op \'n slag kies"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Kon net 1 000 items kies"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-am/strings.xml b/packages/DocumentsUI/res/values-am/strings.xml
index 0e1a34d..c3db723 100644
--- a/packages/DocumentsUI/res/values-am/strings.xml
+++ b/packages/DocumentsUI/res/values-am/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"ዝጋ"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"እነዚህ ፋይሎች አልተቀዱም፦ <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"እነዚህ ፋይሎች አልተወሰዱም፦ <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"እነዚህ ፋይሎች አልተሰረዙም፦ <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"እነዚህ ፋይሎች ወደ ሌላ ቅርጸት ተለውጠዋል፦ <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> ፋይሎች ወደ ቅንጥብ ሰሌዳ ቀድቷል።</item>
@@ -137,4 +138,6 @@
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> ንጥሎች ይሰረዙ?</item>
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> ንጥሎች ይሰረዙ?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"ይቅርታ፣ በአንድ ጊዜ 1000 ንጥሎችን ብቻ መምረጥ ይችላሉ"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"1000 ንጥሎችን ብቻ መመረጥ ይቻላል"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ar/strings.xml b/packages/DocumentsUI/res/values-ar/strings.xml
index 264a275..2b122a2 100644
--- a/packages/DocumentsUI/res/values-ar/strings.xml
+++ b/packages/DocumentsUI/res/values-ar/strings.xml
@@ -124,6 +124,7 @@
     <string name="close" msgid="3043722427445528732">"إغلاق"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"لم يتم نسخ هذه الملفات: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"لم يتم نقل هذه الملفات: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"لم يتم حذف هذه الملفات: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"تم تحويل هذه الملفات إلى تنسيق آخر: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="zero">لم يتم نسخ أي ملف (<xliff:g id="COUNT_1">%1$d</xliff:g>) إلى الحافظة.</item>
@@ -185,4 +186,6 @@
       <item quantity="other">هل تريد حذف <xliff:g id="COUNT_1">%1$d</xliff:g> عنصر؟</item>
       <item quantity="one">هل تريد حذف <xliff:g id="COUNT_0">%1$d</xliff:g> عنصر؟</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"عذرًا، لا يمكنك تحديد سوى ١٠٠٠ عنصر في المرة الواحدة"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"يمكن تحديد ١٠٠٠ عنصر فقط"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-az-rAZ/strings.xml b/packages/DocumentsUI/res/values-az-rAZ/strings.xml
index e1d6050..df54c89 100644
--- a/packages/DocumentsUI/res/values-az-rAZ/strings.xml
+++ b/packages/DocumentsUI/res/values-az-rAZ/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Bağla"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Bu fayllar kopyalanmadı: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Bu fayllar köçürülmədi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Bu fayllar silinmədi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Bu fayllar başqa formata konvertasiya edilib: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> fayl buferə kopyalandı.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> element silinsin?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> element silinsin?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Bağışlayın, eyni anda yalnız 1000 element seçə bilərsiniz"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Yalnız 1000 element seçilə bilər"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-b+sr+Latn/strings.xml b/packages/DocumentsUI/res/values-b+sr+Latn/strings.xml
index 83f2763..23e375d 100644
--- a/packages/DocumentsUI/res/values-b+sr+Latn/strings.xml
+++ b/packages/DocumentsUI/res/values-b+sr+Latn/strings.xml
@@ -106,6 +106,7 @@
     <string name="close" msgid="3043722427445528732">"Zatvori"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Sledeće datoteke nisu kopirane: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Sledeće datoteke nisu premeštene: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Sledeće datoteke nisu izbrisane: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Ove datoteke su konvertovane u drugi format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">Kopirali ste <xliff:g id="COUNT_1">%1$d</xliff:g> datoteku u privremenu memoriju.</item>
@@ -149,4 +150,6 @@
       <item quantity="few">Želite li da izbrišete <xliff:g id="COUNT_1">%1$d</xliff:g> stavke?</item>
       <item quantity="other">Želite li da izbrišete <xliff:g id="COUNT_1">%1$d</xliff:g> stavki?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Žao nam je, istovremeno možete da izaberete najviše 1000 stavki"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Možete da izaberete najviše 1000 stavki"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-be-rBY/strings.xml b/packages/DocumentsUI/res/values-be-rBY/strings.xml
index 1c06cd1..1a0f254 100644
--- a/packages/DocumentsUI/res/values-be-rBY/strings.xml
+++ b/packages/DocumentsUI/res/values-be-rBY/strings.xml
@@ -112,6 +112,7 @@
     <string name="close" msgid="3043722427445528732">"Закрыць"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Не былі скапіраваны наступныя файлы: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Не былі перамешчаны наступныя файлы: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Не былі выдалены наступныя файлы: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Гэтыя файлы былі сканвертаваныя ў іншы фармат: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">У буфер абмену скапіраваны <xliff:g id="COUNT_1">%1$d</xliff:g> файл.</item>
@@ -161,4 +162,6 @@
       <item quantity="many">Выдаліць <xliff:g id="COUNT_1">%1$d</xliff:g> элементаў?</item>
       <item quantity="other">Выдаліць <xliff:g id="COUNT_1">%1$d</xliff:g> элемента?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"На жаль, вы можаце выбраць не больш за 1000 элементаў адначасова"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Атрымалася выбраць толькі 1000 элементаў"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-bg/strings.xml b/packages/DocumentsUI/res/values-bg/strings.xml
index 16922c8..e068a10 100644
--- a/packages/DocumentsUI/res/values-bg/strings.xml
+++ b/packages/DocumentsUI/res/values-bg/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Затваряне"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Следните файлове не бяха копирани: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Следните файлове не бяха преместени: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Следните файлове не бяха изтрити: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Следните файлове бяха преобразувани в друг формат: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Копирахте <xliff:g id="COUNT_1">%1$d</xliff:g> файла в буферната памет.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Искате ли да изтриете <xliff:g id="COUNT_1">%1$d</xliff:g> елемента?</item>
       <item quantity="one">Искате ли да изтриете <xliff:g id="COUNT_0">%1$d</xliff:g> елемент?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"За съжаление, можете да изберете до 1000 елемента наведнъж"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Бяха избрани само 1000 елемента"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-bn-rBD/strings.xml b/packages/DocumentsUI/res/values-bn-rBD/strings.xml
index 4be7dc8..1bdc204 100644
--- a/packages/DocumentsUI/res/values-bn-rBD/strings.xml
+++ b/packages/DocumentsUI/res/values-bn-rBD/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"বন্ধ করুন"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"এই ফাইলগুলির প্রতিলিপি করা হয়নি: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"এই ফাইলগুলি সরানো হয়নি: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"এই ফাইলগুলি মোছা হয়নি: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"এই ফাইলগুলি অন্য ফরম্যাটে রূপান্তর করা হয়েছে: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"> <xliff:g id="COUNT_1">%1$d</xliff:g>টি ফাইল ক্লিপবোর্ডে প্রতিলিপি করা হয়েছে।</item>
@@ -137,4 +138,6 @@
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g>টি আইটেম মুছবেন?</item>
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g>টি আইটেম মুছবেন?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"দুঃখিত, আপনি একবারে শুধুমাত্র ১০০০টি আইটেম নির্বাচন করতে পারবেন"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"শুধুমাত্র ১০০০টি আইটেম নির্বাচন করা যাবে"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-bs-rBA/strings.xml b/packages/DocumentsUI/res/values-bs-rBA/strings.xml
index aae7986..eff2744 100644
--- a/packages/DocumentsUI/res/values-bs-rBA/strings.xml
+++ b/packages/DocumentsUI/res/values-bs-rBA/strings.xml
@@ -106,6 +106,7 @@
     <string name="close" msgid="3043722427445528732">"Zatvori"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Nisu kopirani sljedeći fajlovi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Nisu premješteni sljedeći fajlovi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Nisu izbrisani sljedeći fajlovi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Ove datoteke su pretvorene u drugi format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> fajl je kopiran u međuspremnik.</item>
@@ -149,4 +150,6 @@
       <item quantity="few">Želite li izbrisati <xliff:g id="COUNT_1">%1$d</xliff:g> stavke?</item>
       <item quantity="other">Želite li izbrisati <xliff:g id="COUNT_1">%1$d</xliff:g> stavki?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Žao nam je, možete izabrati samo do 1000 stavki istovremeno"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Možete izabrati samo 1000 stavki"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ca/strings.xml b/packages/DocumentsUI/res/values-ca/strings.xml
index 85b42076..3436ed4 100644
--- a/packages/DocumentsUI/res/values-ca/strings.xml
+++ b/packages/DocumentsUI/res/values-ca/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Tanca"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Aquests fitxers no s\'han copiat: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Aquests fitxers no s\'han mogut: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Aquests fitxers no s\'han suprimit: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Aquests fitxers s\'han convertit a un altre format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">S\'han copiat <xliff:g id="COUNT_1">%1$d</xliff:g> fitxers al porta-retalls.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Vols suprimir <xliff:g id="COUNT_1">%1$d</xliff:g> elements?</item>
       <item quantity="one">Vols suprimir <xliff:g id="COUNT_0">%1$d</xliff:g> element?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Només pots seleccionar un màxim de 1.000 elements a la vegada."</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Només s\'han pogut seleccionar 1.000 elements"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-cs/strings.xml b/packages/DocumentsUI/res/values-cs/strings.xml
index 5ab5a41..90d30bc 100644
--- a/packages/DocumentsUI/res/values-cs/strings.xml
+++ b/packages/DocumentsUI/res/values-cs/strings.xml
@@ -112,6 +112,7 @@
     <string name="close" msgid="3043722427445528732">"Zavřít"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Následující soubory nebyly zkopírovány: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Následující soubory nebyly přesunuty: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Následující soubory nebyly smazány: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Soubory byly převedeny do jiného formátu: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="few"><xliff:g id="COUNT_1">%1$d</xliff:g> soubory byly zkopírovány do schránky.</item>
@@ -161,4 +162,6 @@
       <item quantity="other">Smazat <xliff:g id="COUNT_1">%1$d</xliff:g> položek?</item>
       <item quantity="one">Smazat <xliff:g id="COUNT_0">%1$d</xliff:g> položku?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Je nám líto, najednou můžete vybrat nejvíce 1 000 položek."</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Bylo možné vybrat pouze 1 000 položek."</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-da/strings.xml b/packages/DocumentsUI/res/values-da/strings.xml
index 840dc00..4900cd0 100644
--- a/packages/DocumentsUI/res/values-da/strings.xml
+++ b/packages/DocumentsUI/res/values-da/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Luk"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Disse filer blev ikke kopieret: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Disse filer blev ikke flyttet: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Disse filer blev ikke slettet: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Disse filer er konverteret til et andet format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> filer blev kopieret til udklipsholder.</item>
@@ -137,4 +138,6 @@
       <item quantity="one">Vil du slette <xliff:g id="COUNT_1">%1$d</xliff:g> element?</item>
       <item quantity="other">Vil du slette <xliff:g id="COUNT_1">%1$d</xliff:g> elementer?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Du kan desværre kun vælge op til 1000 elementer ad gangen"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Der kunne kun vælges 1000 elementer"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-de/strings.xml b/packages/DocumentsUI/res/values-de/strings.xml
index eb81827..4cd2527 100644
--- a/packages/DocumentsUI/res/values-de/strings.xml
+++ b/packages/DocumentsUI/res/values-de/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Schließen"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Diese Dateien wurden nicht kopiert: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Diese Dateien wurden nicht verschoben: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Diese Dateien wurden nicht gelöscht: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Folgende Dateien wurden in ein anderes Format konvertiert: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> Dateien wurden in die Zwischenablage kopiert.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Möchtest du <xliff:g id="COUNT_1">%1$d</xliff:g> Elemente löschen?</item>
       <item quantity="one">Möchtest du <xliff:g id="COUNT_0">%1$d</xliff:g> Element löschen?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Du kannst nur maximal 1000 Elemente gleichzeitig auswählen"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Du kannst nur 1000 Elemente auswählen"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-el/strings.xml b/packages/DocumentsUI/res/values-el/strings.xml
index ad681bd..ddb3eb8 100644
--- a/packages/DocumentsUI/res/values-el/strings.xml
+++ b/packages/DocumentsUI/res/values-el/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Κλείσιμο"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Αυτά τα αρχεία δεν αντιγράφηκαν: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Αυτά τα αρχεία δεν μετακινήθηκαν: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Αυτά τα αρχεία δεν διαγράφηκαν: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Αυτά τα αρχεία μετατράπηκαν σε άλλη μορφή: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> αρχεία αντιγράφηκαν στο πρόχειρο.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Να διαγραφούν <xliff:g id="COUNT_1">%1$d</xliff:g> στοιχεία;</item>
       <item quantity="one">Να διαγραφεί <xliff:g id="COUNT_0">%1$d</xliff:g> στοιχείο;</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Μπορείτε να επιλέξετε μέχρι 1000 στοιχεία κάθε φορά"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Δεν είναι δυνατή η επιλογή περισσότερων από 1000 στοιχείων"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-en-rAU/strings.xml b/packages/DocumentsUI/res/values-en-rAU/strings.xml
index 406d2ec..e062d20 100644
--- a/packages/DocumentsUI/res/values-en-rAU/strings.xml
+++ b/packages/DocumentsUI/res/values-en-rAU/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Close"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"These files weren’t copied: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"These files weren’t moved: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"These files weren’t deleted: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"These files were converted to another format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Copied <xliff:g id="COUNT_1">%1$d</xliff:g> files to clipboard.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Delete <xliff:g id="COUNT_1">%1$d</xliff:g> items?</item>
       <item quantity="one">Delete <xliff:g id="COUNT_0">%1$d</xliff:g> item?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Sorry, you can only select up to 1000 items at a time"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Could only select 1000 items"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-en-rGB/strings.xml b/packages/DocumentsUI/res/values-en-rGB/strings.xml
index 406d2ec..e062d20 100644
--- a/packages/DocumentsUI/res/values-en-rGB/strings.xml
+++ b/packages/DocumentsUI/res/values-en-rGB/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Close"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"These files weren’t copied: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"These files weren’t moved: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"These files weren’t deleted: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"These files were converted to another format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Copied <xliff:g id="COUNT_1">%1$d</xliff:g> files to clipboard.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Delete <xliff:g id="COUNT_1">%1$d</xliff:g> items?</item>
       <item quantity="one">Delete <xliff:g id="COUNT_0">%1$d</xliff:g> item?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Sorry, you can only select up to 1000 items at a time"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Could only select 1000 items"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-en-rIN/strings.xml b/packages/DocumentsUI/res/values-en-rIN/strings.xml
index 406d2ec..e062d20 100644
--- a/packages/DocumentsUI/res/values-en-rIN/strings.xml
+++ b/packages/DocumentsUI/res/values-en-rIN/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Close"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"These files weren’t copied: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"These files weren’t moved: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"These files weren’t deleted: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"These files were converted to another format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Copied <xliff:g id="COUNT_1">%1$d</xliff:g> files to clipboard.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Delete <xliff:g id="COUNT_1">%1$d</xliff:g> items?</item>
       <item quantity="one">Delete <xliff:g id="COUNT_0">%1$d</xliff:g> item?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Sorry, you can only select up to 1000 items at a time"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Could only select 1000 items"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-es-rUS/strings.xml b/packages/DocumentsUI/res/values-es-rUS/strings.xml
index bb471f7..60f5f96 100644
--- a/packages/DocumentsUI/res/values-es-rUS/strings.xml
+++ b/packages/DocumentsUI/res/values-es-rUS/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Cerrar"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Los siguientes archivos no se pudieron copiar: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Los siguientes archivos no se trasladaron: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Los siguientes archivos no se pudieron borrar: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Estos archivos se convirtieron a otro formato: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Se copiaron <xliff:g id="COUNT_1">%1$d</xliff:g> archivos al portapapeles.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">¿Deseas borrar <xliff:g id="COUNT_1">%1$d</xliff:g> elementos?</item>
       <item quantity="one">¿Deseas borrar <xliff:g id="COUNT_0">%1$d</xliff:g> elemento?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Solo puedes seleccionar hasta mil elementos a la vez"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Solo se seleccionaron mil elementos"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-es/strings.xml b/packages/DocumentsUI/res/values-es/strings.xml
index 2373e60..22b3527 100644
--- a/packages/DocumentsUI/res/values-es/strings.xml
+++ b/packages/DocumentsUI/res/values-es/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Cerrar"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Archivos que no se han copiado: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Archivos que no se han movido: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Archivos que no se han eliminado: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Estos archivos se han convertido a otro formato: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Se han copiado <xliff:g id="COUNT_1">%1$d</xliff:g> archivos al portapapeles.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">¿Eliminar <xliff:g id="COUNT_1">%1$d</xliff:g> elementos?</item>
       <item quantity="one">¿Eliminar <xliff:g id="COUNT_0">%1$d</xliff:g> elemento?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Solo puedes seleccionar hasta 1000 elementos a la vez"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Solo se han podido seleccionar 1000 elementos"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-et-rEE/strings.xml b/packages/DocumentsUI/res/values-et-rEE/strings.xml
index 6bc3942..c40cd55 100644
--- a/packages/DocumentsUI/res/values-et-rEE/strings.xml
+++ b/packages/DocumentsUI/res/values-et-rEE/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Sule"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Neid faile ei kopeeritud: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Neid faile ei teisaldatud: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Neid faile ei kustutatud: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Need failid teisendati teise vormingusse: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> faili kopeeriti lõikelauale.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Kas kustutada <xliff:g id="COUNT_1">%1$d</xliff:g> üksust?</item>
       <item quantity="one">Kas kustutada <xliff:g id="COUNT_0">%1$d</xliff:g> üksus?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Kahjuks saate korraga valida ainult kuni 1000 üksust"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Valida sai ainult 1000 üksust"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-eu-rES/strings.xml b/packages/DocumentsUI/res/values-eu-rES/strings.xml
index da11c5c..28b8178 100644
--- a/packages/DocumentsUI/res/values-eu-rES/strings.xml
+++ b/packages/DocumentsUI/res/values-eu-rES/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Itxi"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Ez dira kopiatu fitxategi hauek: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Ez dira mugitu fitxategi hauek: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Ez dira ezabatu fitxategi hauek: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Fitxategi hauek beste formatu bateko fitxategi bihurtu dira: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> fitxategi kopiatu dira arbelean.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> elementu ezabatu nahi dituzu?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> elementu ezabatu nahi duzu?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Ezin dira hautatu 1.000 elementu baino gehiago"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Ezin dira hautatu 1.000 elementu baino gehiago"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-fa/strings.xml b/packages/DocumentsUI/res/values-fa/strings.xml
index fb4b487..b5158e2 100644
--- a/packages/DocumentsUI/res/values-fa/strings.xml
+++ b/packages/DocumentsUI/res/values-fa/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"بستن"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"این فایل‌ها کپی نشدند: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"این فایل‌ها منتقل نشدند: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"این فایل‌ها حذف نشدند: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"این فایل‌ها به قالب دیگری تبدیل شدند: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> فایل در بریده‌دان کپی شد.</item>
@@ -137,4 +138,6 @@
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> مورد حذف شود؟</item>
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> مورد حذف شود؟</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"متأسفیم، هر بار حداکثر می‌توانید ۱۰۰۰ مورد انتخاب کنید."</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"فقط می‌توان ۱۰۰۰ مورد انتخاب کرد"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-fi/strings.xml b/packages/DocumentsUI/res/values-fi/strings.xml
index 21c0ce2..2a27dde 100644
--- a/packages/DocumentsUI/res/values-fi/strings.xml
+++ b/packages/DocumentsUI/res/values-fi/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Sulje"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Näitä tiedostoja ei kopioitu: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Näitä tiedostoja ei siirretty: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Näitä tiedostoja ei poistettu: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Seuraavat tiedostot muunnettiin toiseen muotoon: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> tiedostoa kopioitiin leikepöydälle.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Poistetaanko <xliff:g id="COUNT_1">%1$d</xliff:g> kohdetta?</item>
       <item quantity="one">Poistetaanko <xliff:g id="COUNT_0">%1$d</xliff:g> kohde?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Voit valita vain 1 000 kohdetta kerrallaan."</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Vain 1 000 kohdetta valittiin"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-fr-rCA/strings.xml b/packages/DocumentsUI/res/values-fr-rCA/strings.xml
index a741e6b..916eed5 100644
--- a/packages/DocumentsUI/res/values-fr-rCA/strings.xml
+++ b/packages/DocumentsUI/res/values-fr-rCA/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Fermer"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Ces fichiers ne ont pas été copiés : <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Ces fichiers n\'ont pas été déplacés : <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Ces fichiers n\'ont pas été supprimés : <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Ces fichiers ont été convertis dans un autre format : <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> fichier a été copié dans le presse-papiers.</item>
@@ -137,4 +138,6 @@
       <item quantity="one">Supprimer <xliff:g id="COUNT_1">%1$d</xliff:g> élément?</item>
       <item quantity="other">Supprimer <xliff:g id="COUNT_1">%1$d</xliff:g> éléments?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Désolés, vous ne pouvez sélectionner qu\'un maximum de 1000 éléments à la fois"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Seuls les 1000 premiers éléments ont été sélectionnés"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-fr/strings.xml b/packages/DocumentsUI/res/values-fr/strings.xml
index d41137e..630a492 100644
--- a/packages/DocumentsUI/res/values-fr/strings.xml
+++ b/packages/DocumentsUI/res/values-fr/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Fermer"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Les fichiers suivants n\'ont pas été copiés : <xliff:g id="LIST">%1$s</xliff:g>."</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Les fichiers suivants n\'ont pas été déplacés : <xliff:g id="LIST">%1$s</xliff:g>."</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Les fichiers suivants n\'ont pas été supprimés : <xliff:g id="LIST">%1$s</xliff:g>."</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Ces fichiers ont été convertis dans un autre format : <xliff:g id="LIST">%1$s</xliff:g>."</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> fichier a bien été copié dans le Presse-papiers.</item>
@@ -137,4 +138,6 @@
       <item quantity="one">Supprimer <xliff:g id="COUNT_1">%1$d</xliff:g> élément ?</item>
       <item quantity="other">Supprimer <xliff:g id="COUNT_1">%1$d</xliff:g> éléments ?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Désolé, vous ne pouvez sélectionner qu\'un maximum de 1 000 éléments à la fois."</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Seuls 1 000 éléments ont pu être sélectionnés."</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-gl-rES/strings.xml b/packages/DocumentsUI/res/values-gl-rES/strings.xml
index 77cc59d..47fc1c7 100644
--- a/packages/DocumentsUI/res/values-gl-rES/strings.xml
+++ b/packages/DocumentsUI/res/values-gl-rES/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Pechar"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Non se copiaron estes ficheiros: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Non se moveron estes ficheiros: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Non se eliminaron estes ficheiros: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Estes ficheiros convertéronse a outro formato: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Copiáronse <xliff:g id="COUNT_1">%1$d</xliff:g> ficheiros no portapapeis.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Queres eliminar <xliff:g id="COUNT_1">%1$d</xliff:g> elementos?</item>
       <item quantity="one">Queres eliminar <xliff:g id="COUNT_0">%1$d</xliff:g> elemento?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Só se poden seleccionar 1000 elementos á vez"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Só se puideron seleccionar 1000 elementos"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-gu-rIN/strings.xml b/packages/DocumentsUI/res/values-gu-rIN/strings.xml
index e3cd4cf..d053123 100644
--- a/packages/DocumentsUI/res/values-gu-rIN/strings.xml
+++ b/packages/DocumentsUI/res/values-gu-rIN/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"બંધ કરો"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"આ ફાઇલો કૉપિ કરી નહોતી: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"આ ફાઇલો ખસેડી નહોતી: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"આ ફાઇલો કાઢી નાખી નહોતી: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"આ ફાઇલો બીજા ફોર્મેટમાં રૂપાંતરિત કરી હતી: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">ક્લિપબોર્ડ પર <xliff:g id="COUNT_1">%1$d</xliff:g> ફાઇલો કૉપિ કરી.</item>
@@ -137,4 +138,6 @@
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> આઇટમ કાઢી નાખીએ?</item>
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> આઇટમ કાઢી નાખીએ?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"માફ કરશો, તમે એકવારમાં માત્ર 1000 જેટલી આઇટમ પસંદ કરી શકો છો"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"માત્ર 1000 આઇટમ પસંદ કરી શક્યાં"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-hi/strings.xml b/packages/DocumentsUI/res/values-hi/strings.xml
index fa27dff..8420b02 100644
--- a/packages/DocumentsUI/res/values-hi/strings.xml
+++ b/packages/DocumentsUI/res/values-hi/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"बंद करें"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"इन फ़ाइलों की कॉपी नहीं बनाई गई: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"ये फ़ाइलें नहीं ले जाई गईं: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"इन फ़ाइलों को हटाया नहीं गया: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"ये फ़ाइलें किसी अन्‍य प्रारूप में रूपांतरित हो गई थीं: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">क्‍लिपबोर्ड पर <xliff:g id="COUNT_1">%1$d</xliff:g> फ़ाइलों की कॉपी बनाई गई.</item>
@@ -137,4 +138,6 @@
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> आइटम हटाएं?</item>
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> आइटम हटाएं?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"क्षमा करें, आप एक बार में केवल 1000 अाइटम तक चुन सकते हैं"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"केवल 1000 आइटम चुने जा सकते हैं"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-hr/strings.xml b/packages/DocumentsUI/res/values-hr/strings.xml
index 66a8329..8fe0a4d 100644
--- a/packages/DocumentsUI/res/values-hr/strings.xml
+++ b/packages/DocumentsUI/res/values-hr/strings.xml
@@ -106,6 +106,7 @@
     <string name="close" msgid="3043722427445528732">"Zatvori"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Ove datoteke nisu kopirane: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Ove datoteke nisu premještene: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Ove datoteke nisu izbrisane: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Ove su datoteke konvertirane u neki drugi format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> datoteka kopirana je u međuspremnik.</item>
@@ -149,4 +150,6 @@
       <item quantity="few">Želite li izbrisati <xliff:g id="COUNT_1">%1$d</xliff:g> stavke?</item>
       <item quantity="other">Želite li izbrisati <xliff:g id="COUNT_1">%1$d</xliff:g> stavki?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Možete odabrati samo 1000 stavki odjednom"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Može se odabrati samo 1000 stavki"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-hu/strings.xml b/packages/DocumentsUI/res/values-hu/strings.xml
index 962653c..d975ed5 100644
--- a/packages/DocumentsUI/res/values-hu/strings.xml
+++ b/packages/DocumentsUI/res/values-hu/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Bezárás"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"A következő fájlokat nem sikerült átmásolni: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"A következő fájlokat nem sikerült áthelyezni: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"A következő fájlokat nem sikerült törölni: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"A következő fájlokat a rendszer más formátumba konvertálta: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"> <xliff:g id="COUNT_1">%1$d</xliff:g> fájl vágólapra másolva.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Töröl <xliff:g id="COUNT_1">%1$d</xliff:g> elemet?</item>
       <item quantity="one">Töröl <xliff:g id="COUNT_0">%1$d</xliff:g> elemet?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Sajnáljuk, de egyszerre csak 1000 elem választható ki"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Csak 1000 elemet lehetett kiválasztani"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-hy-rAM/strings.xml b/packages/DocumentsUI/res/values-hy-rAM/strings.xml
index ab83358..e206598 100644
--- a/packages/DocumentsUI/res/values-hy-rAM/strings.xml
+++ b/packages/DocumentsUI/res/values-hy-rAM/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Փակել"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Հետևյալ ֆայլերը չեն պատճենվել՝ <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Հետևյալ ֆայլերը չեն տեղափոխվել՝ <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Հետևյալ ֆայլերը չեն ջնջվել՝ <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Այս ֆայլերը փոխարկվել են մեկ այլ ձևաչափի՝ <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> ֆայլ պատճենվեց սեղմատախտակին:</item>
@@ -137,4 +138,6 @@
       <item quantity="one">Ջնջե՞լ <xliff:g id="COUNT_1">%1$d</xliff:g> տարր:</item>
       <item quantity="other">Ջնջե՞լ <xliff:g id="COUNT_1">%1$d</xliff:g> տարր:</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Ներեցեք, միաժամանակ հնարավոր է ընտրել առավելագույնը 1000 տարր"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Հաջողվեց ընտրել միայն 1000 տարր"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-in/strings.xml b/packages/DocumentsUI/res/values-in/strings.xml
index 745bf45..81f9f49 100644
--- a/packages/DocumentsUI/res/values-in/strings.xml
+++ b/packages/DocumentsUI/res/values-in/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Tutup"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Semua file ini tidak disalin: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Semua file ini tidak dipindahkan: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Semua file ini tidak dihapus: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"File ini dikonversi ke format lain: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"> <xliff:g id="COUNT_1">%1$d</xliff:g> file disalin ke papan klip.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Hapus <xliff:g id="COUNT_1">%1$d</xliff:g> item?</item>
       <item quantity="one">Hapus <xliff:g id="COUNT_0">%1$d</xliff:g> item?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Maaf, Anda hanya dapat memilih maksimal 1000 item sekaligus"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Hanya dapat memilih 1000 item"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-is-rIS/strings.xml b/packages/DocumentsUI/res/values-is-rIS/strings.xml
index 47c3d35..6f86ad1 100644
--- a/packages/DocumentsUI/res/values-is-rIS/strings.xml
+++ b/packages/DocumentsUI/res/values-is-rIS/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Loka"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Þessar skrár voru ekki afritaðar: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Þessar skrár voru ekki færðar: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Þessum skrám var ekki eytt: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Þessum skrám var umbreytt yfir á annað snið: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> skrá afrituð á klippiborð.</item>
@@ -137,4 +138,6 @@
       <item quantity="one">Eyða <xliff:g id="COUNT_1">%1$d</xliff:g> atriði?</item>
       <item quantity="other">Eyða <xliff:g id="COUNT_1">%1$d</xliff:g> atriðum?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Aðeins er hægt að velja að hámarki 1000 atriði í einu"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Aðeins var hægt að velja 1000 atriði"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-it/strings.xml b/packages/DocumentsUI/res/values-it/strings.xml
index 0321fb1..db70559 100644
--- a/packages/DocumentsUI/res/values-it/strings.xml
+++ b/packages/DocumentsUI/res/values-it/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Chiudi"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"I seguenti file non sono stati copiati: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"I seguenti file non sono stati spostati: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"I seguenti file non sono stati eliminati: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"I file sono stati convertiti in un altro formato: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> file copiati negli appunti.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Eliminare <xliff:g id="COUNT_1">%1$d</xliff:g> elementi?</item>
       <item quantity="one">Eliminare <xliff:g id="COUNT_0">%1$d</xliff:g> elemento?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Spiacenti, puoi selezionare massimo 1000 elementi alla volta"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Sono stati selezionati solo 1000 elementi"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-iw/strings.xml b/packages/DocumentsUI/res/values-iw/strings.xml
index 4e69606..f5cc079 100644
--- a/packages/DocumentsUI/res/values-iw/strings.xml
+++ b/packages/DocumentsUI/res/values-iw/strings.xml
@@ -112,6 +112,7 @@
     <string name="close" msgid="3043722427445528732">"סגור"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"הקבצים הבאים לא הועתקו: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"הקבצים הבאים לא הועברו: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"הקבצים הבאים לא נמחקו: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"הקבצים האלה הומרו לפורמט אחר: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="two"><xliff:g id="COUNT_1">%1$d</xliff:g> קבצים הועתקו אל הלוח.</item>
@@ -161,4 +162,6 @@
       <item quantity="other">האם למחוק <xliff:g id="COUNT_1">%1$d</xliff:g> פריטים?</item>
       <item quantity="one">האם למחוק <xliff:g id="COUNT_0">%1$d</xliff:g> פריט?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"מצטערים, ניתן לבחור עד אלף פריטים בלבד בבת אחת"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"ניתן לבחור אלף פריטים בלבד"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ja/strings.xml b/packages/DocumentsUI/res/values-ja/strings.xml
index 027bc03..48f482a 100644
--- a/packages/DocumentsUI/res/values-ja/strings.xml
+++ b/packages/DocumentsUI/res/values-ja/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"閉じる"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"次のファイルをコピーできませんでした: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"次のファイルを移動できませんでした: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"次のファイルを削除できませんでした: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"次のファイルが別の形式に変換されました: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g>件のファイルをクリップボードにコピーしました。</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> 個の項目を削除しますか？</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> 個の項目を削除しますか？</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"一度に選択できるのは最大で 1,000 件までです"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"選択できるのは 1,000 件のみです"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ka-rGE/strings.xml b/packages/DocumentsUI/res/values-ka-rGE/strings.xml
index 4ac61f2..1be969c 100644
--- a/packages/DocumentsUI/res/values-ka-rGE/strings.xml
+++ b/packages/DocumentsUI/res/values-ka-rGE/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"დახურვა"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"შემდეგი ფაილები არ დაკოპირდა: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"შემდეგი ფაილები არ გადაადგილდა: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"შემდეგი ფაილები არ წაიშალა: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"შემდეგი ფაილები გარდაქმნილია სხვა ფორმატში: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">მოხდა <xliff:g id="COUNT_1">%1$d</xliff:g> ფაილის გაცვლის ბუფერში კოპირება.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">გსურთ <xliff:g id="COUNT_1">%1$d</xliff:g> ერთეულის წაშლა?</item>
       <item quantity="one">გსურთ <xliff:g id="COUNT_0">%1$d</xliff:g> ერთეულის წაშლა?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"უკაცრავად, ერთდროულად შესაძლებელია მხოლოდ 1000 ერთეულის არჩევა"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"შესაძლებელია მხოლოდ 1000 ერთეულის არჩევა"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-kk-rKZ/strings.xml b/packages/DocumentsUI/res/values-kk-rKZ/strings.xml
index 1babc72..d20b648f 100644
--- a/packages/DocumentsUI/res/values-kk-rKZ/strings.xml
+++ b/packages/DocumentsUI/res/values-kk-rKZ/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Жабу"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Мына файлдар көшірілген жоқ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Мына файлдар жылжытылған жоқ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Келесі файлдар жойылмады: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Мына файлдар басқа пішімге түрлендірілді: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Аралық сақтағышқа <xliff:g id="COUNT_1">%1$d</xliff:g> файл көшірілді.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> элементті жою керек пе?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> элементті жою керек пе?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Бір әрекетпен тек 1000 элемент таңдауға болады"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Тек 1000 элемент таңдалды"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-km-rKH/strings.xml b/packages/DocumentsUI/res/values-km-rKH/strings.xml
index 37eb3cb..af0e076 100644
--- a/packages/DocumentsUI/res/values-km-rKH/strings.xml
+++ b/packages/DocumentsUI/res/values-km-rKH/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"បិទ"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"ឯកសារទាំងនេះមិនត្រូវបានថតចម្លងទេ៖ <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"ឯកសារទាំងនេះមិនត្រូវបានផ្លាស់ទីទេ៖ <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"ឯកសារទាំងនេះមិនត្រូវបានលុបទេ៖ <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"ឯកសារទាំងនេះត្រូវបានបម្លែងទៅជាទម្រង់ផ្សេង៖ <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">បានចម្លងឯកសារ <xliff:g id="COUNT_1">%1$d</xliff:g> ទៅតម្បៀតខ្ទាស់។</item>
@@ -137,4 +138,6 @@
       <item quantity="other">លុបធាតុ <xliff:g id="COUNT_1">%1$d</xliff:g> ឬ?</item>
       <item quantity="one">លុបធាតុ <xliff:g id="COUNT_0">%1$d</xliff:g> ឬ?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"សូមអភ័យទោស អ្នកអាចជ្រើសបានតែ 1000 ធាតុតែប៉ុណ្ណោះក្នុងមួយលើក"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"អាចជ្រើសបានតែ 1000 ធាតុប៉ុណ្ណោះ"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-kn-rIN/strings.xml b/packages/DocumentsUI/res/values-kn-rIN/strings.xml
index ad287d4..c7d414f 100644
--- a/packages/DocumentsUI/res/values-kn-rIN/strings.xml
+++ b/packages/DocumentsUI/res/values-kn-rIN/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"ಮುಚ್ಚು"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"ಈ ಫೈಲ್‌ಗಳನ್ನು ನಕಲಿಸಲಾಗಿಲ್ಲ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"ಈ ಫೈಲ್‌ಗಳನ್ನು ಸರಿಸಲಾಗಿಲ್ಲ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"ಈ ಫೈಲ್‌ಗಳನ್ನು ಅಳಿಸಲಾಗಿಲ್ಲ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"ಈ ಫೈಲ್‌ಗಳನ್ನು ಮತ್ತೊಂದು ಫಾರ್ಮೆಟ್‌ಗೆ ಪರಿವರ್ತಿಸಲಾಗಿತ್ತು: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">ಕ್ಲಿಪ್‌ಬೋರ್ಡ್‌ಗೆ <xliff:g id="COUNT_1">%1$d</xliff:g> ಫೈಲ್‌ಗಳನ್ನು ನಕಲಿಸಲಾಗಿದೆ.</item>
@@ -137,4 +138,6 @@
       <item quantity="one"> <xliff:g id="COUNT_1">%1$d</xliff:g> ಐಟಂಗಳನ್ನು ಅಳಿಸುವುದೇ?</item>
       <item quantity="other"> <xliff:g id="COUNT_1">%1$d</xliff:g> ಐಟಂಗಳನ್ನು ಅಳಿಸುವುದೇ?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"ಕ್ಷಮಿಸಿ, ನೀವು ಒಂದೇ ಬಾರಿಗೆ 1000 ಐಟಂಗಳನ್ನು ಮಾತ್ರ ಆಯ್ಕೆ ಮಾಡಬಹುದು"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"1000 ಐಟಂಗಳನ್ನು ಮಾತ್ರ ಆಯ್ಕೆ ಮಾಡಬಹುದು"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ko/strings.xml b/packages/DocumentsUI/res/values-ko/strings.xml
index 9441a10..8f5cc9f 100644
--- a/packages/DocumentsUI/res/values-ko/strings.xml
+++ b/packages/DocumentsUI/res/values-ko/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"닫기"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"다음 파일이 복사되지 않았습니다. <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"다음 파일이 이동되지 않았습니다. <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"다음 파일이 삭제되지 않았습니다. <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"파일이 다음과 같이 다른 형식으로 변환되었습니다. <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">파일 <xliff:g id="COUNT_1">%1$d</xliff:g>개를 클립보드에 복사함</item>
@@ -137,4 +138,6 @@
       <item quantity="other">항목 <xliff:g id="COUNT_1">%1$d</xliff:g>개를 삭제하시겠습니까?</item>
       <item quantity="one">항목 <xliff:g id="COUNT_0">%1$d</xliff:g>개를 삭제하시겠습니까?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"한 번에 최대 1,000개의 항목까지 선택할 수 있습니다."</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"1,000개의 항목까지만 선택할 수 있습니다."</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ky-rKG/strings.xml b/packages/DocumentsUI/res/values-ky-rKG/strings.xml
index 1856eeb..ac06132 100644
--- a/packages/DocumentsUI/res/values-ky-rKG/strings.xml
+++ b/packages/DocumentsUI/res/values-ky-rKG/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Жабуу"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Төмөнкү файлдар көчүрүлгөн жок: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Төмөнкү файлдар жылдырылган жок: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Төмөнкү файлдар өчүрүлгөн жок: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Бул файлдар башка форматка айландырылды: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> файл буферге көчүрүлдү.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> нерсе жок кылынсынбы?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> нерсе жок кылынсынбы?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Кечиресиз, бир убакта 1000ге чейин эле нерсе тандоого болот"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Болгону 1000 нерсе тандалды"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-lo-rLA/strings.xml b/packages/DocumentsUI/res/values-lo-rLA/strings.xml
index 1923940..be9b18d 100644
--- a/packages/DocumentsUI/res/values-lo-rLA/strings.xml
+++ b/packages/DocumentsUI/res/values-lo-rLA/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"ປິດ"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"ໄຟລ໌ເຫຼົ່ານີ້ບໍ່ໄດ້ຖືກສຳເນົາ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"ໄຟລ໌ເຫຼົ່ານີ້ບໍ່ໄດ້ຖືກຍ້າຍ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"ໄຟລ໌ເຫຼົ່ານີ້ບໍ່ໄດ້ຖືກລຶບເທື່ອ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"ໄຟລ໌ເຫຼົ່ານີ້ໄດ້ຖືກປ່ຽນເປັນຮູບແບບອື່ນແລ້ວ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">ອັດ​ສຳ​ເນົາ <xliff:g id="COUNT_1">%1$d</xliff:g> ໄຟ​ລ໌​ໃສ່​ຄ​ລິບບອດ​ແລ້ວ.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">ລຶບ <xliff:g id="COUNT_1">%1$d</xliff:g> ລາຍການອອກບໍ?</item>
       <item quantity="one">ລຶບ <xliff:g id="COUNT_0">%1$d</xliff:g> ລາຍການອອກບໍ?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"ຂໍອະໄພ, ທ່ານສາມາດເລືອກໄດ້ສູງສຸດ 1000 ລາຍການຕໍ່ເທື່ອເທົ່ານັ້ນ"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"ສາມາດເລືອກໄດ້ 1000 ລາຍການເທົ່ານັ້ນ"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-lt/strings.xml b/packages/DocumentsUI/res/values-lt/strings.xml
index d7d6c69..6ee4fb8 100644
--- a/packages/DocumentsUI/res/values-lt/strings.xml
+++ b/packages/DocumentsUI/res/values-lt/strings.xml
@@ -112,6 +112,7 @@
     <string name="close" msgid="3043722427445528732">"Uždaryti"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Šie failai nebuvo nukopijuoti: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Šie failai nebuvo perkelti: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Šie failai nebuvo ištrinti: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Šie failai konvertuoti į kitą formatą: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">Nukopijuotas <xliff:g id="COUNT_1">%1$d</xliff:g> failas į iškarpinę.</item>
@@ -161,4 +162,6 @@
       <item quantity="many">Ištrinti <xliff:g id="COUNT_1">%1$d</xliff:g> elemento?</item>
       <item quantity="other">Ištrinti <xliff:g id="COUNT_1">%1$d</xliff:g> elementų?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Deja, vienu metu galite pasirinkti daugiausia 1 000 elementų"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Galima pasirinkti tik 1 000 elementų"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-lv/strings.xml b/packages/DocumentsUI/res/values-lv/strings.xml
index ef2e6e6..fa3a052 100644
--- a/packages/DocumentsUI/res/values-lv/strings.xml
+++ b/packages/DocumentsUI/res/values-lv/strings.xml
@@ -106,6 +106,7 @@
     <string name="close" msgid="3043722427445528732">"Aizvērt"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Netika nokopēti šādi faili: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Netika pārvietoti šādi faili: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Netika izdzēsti šādi faili: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Šie faili tika pārveidoti citā formātā: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="zero"><xliff:g id="COUNT_1">%1$d</xliff:g> faili tika kopēti starpliktuvē.</item>
@@ -149,4 +150,6 @@
       <item quantity="one">Vai izdzēst <xliff:g id="COUNT_1">%1$d</xliff:g> vienumu?</item>
       <item quantity="other">Vai izdzēst <xliff:g id="COUNT_1">%1$d</xliff:g> vienumus?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Vienlaikus var atlasīt ne vairāk kā 1000 vienumu"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Varēja atlasīt tikai 1000 vienumu"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-mk-rMK/strings.xml b/packages/DocumentsUI/res/values-mk-rMK/strings.xml
index c6f58c0..45232fb 100644
--- a/packages/DocumentsUI/res/values-mk-rMK/strings.xml
+++ b/packages/DocumentsUI/res/values-mk-rMK/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Затвори"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Датотекиве не се ископирани: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Датотекиве не се преместени: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Датотекиве не се избришани: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Овие датотеки беа конвертирани во друг формат: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">Копирана е <xliff:g id="COUNT_1">%1$d</xliff:g> датотека на таблата со исечоци.</item>
@@ -137,4 +138,6 @@
       <item quantity="one">Да се избрише <xliff:g id="COUNT_1">%1$d</xliff:g> ставка?</item>
       <item quantity="other">Да се избришат <xliff:g id="COUNT_1">%1$d</xliff:g> ставки?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"За жал, може да изберете само 1.000 ставки истовремено"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Може да се изберат само 1.000 ставки"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ml-rIN/strings.xml b/packages/DocumentsUI/res/values-ml-rIN/strings.xml
index 5bafacd..6f1bdfd 100644
--- a/packages/DocumentsUI/res/values-ml-rIN/strings.xml
+++ b/packages/DocumentsUI/res/values-ml-rIN/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"അടയ്‌ക്കുക"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"ഈ ഫയലുകൾ പകർത്തിയില്ല: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"ഈ ഫയലുകൾ നീക്കിയില്ല: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"ഈ ഫയലുകൾ ഇല്ലാതാക്കിയില്ല: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"ഈ ഫയലുകൾ മറ്റൊരു ഫോർമാറ്റിലേക്ക് പരിവർത്തനം ചെയ്യപ്പെട്ടു: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> ഫയലുകൾ ക്ലിപ്പ്‌ബോർഡിലേക്ക് പകർത്തി.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> ഇനങ്ങൾ ഇല്ലാതാക്കണോ?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> ഇനം ഇല്ലാതാക്കണോ?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"ക്ഷമിക്കണം, നിങ്ങൾക്ക് 1000 ഇനങ്ങൾ മാത്രമാണ് ഒരുസമയം തിരഞ്ഞെടുക്കാൻ കഴിയുക."</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"1000 ഇനങ്ങൾ മാത്രമാണ് തിരഞ്ഞെടുക്കാൻ കഴിഞ്ഞത്"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-mn-rMN/strings.xml b/packages/DocumentsUI/res/values-mn-rMN/strings.xml
index 2323d23..da55ab0 100644
--- a/packages/DocumentsUI/res/values-mn-rMN/strings.xml
+++ b/packages/DocumentsUI/res/values-mn-rMN/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Хаах"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Эдгээр файлыг хуулж чадсангүй: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Эдгээр файлыг зөөж чадсангүй: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Эдгээр файл устсангүй: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Эдгээр файлыг өөр хэлбэршилтэд хөрвүүлсэн байна: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"> <xliff:g id="COUNT_1">%1$d</xliff:g> материалыг түр санах ой руу хуулсан.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"> <xliff:g id="COUNT_1">%1$d</xliff:g> зүйлийг устгах уу?</item>
       <item quantity="one"> <xliff:g id="COUNT_0">%1$d</xliff:g> зүйлийг устгах уу?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Уучлаарай, та хамгийн ихдээ 1000 зүйл сонгох боломжтой"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Зөвхөн 1000 зүйлийг сонгох боломжтой"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-mr-rIN/strings.xml b/packages/DocumentsUI/res/values-mr-rIN/strings.xml
index eb7dab3..7453aa2 100644
--- a/packages/DocumentsUI/res/values-mr-rIN/strings.xml
+++ b/packages/DocumentsUI/res/values-mr-rIN/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"बंद करा"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"या फायलींची कॉपी झाली नाही: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"या फायली हलविल्या नाहीत: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"या फायली हटविल्या नाहीत: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"या फायली दुसऱ्या स्वरूपनात रूपांतरित केल्या होत्या: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">क्लिपबोर्डवर <xliff:g id="COUNT_1">%1$d</xliff:g> फाईल कॉपी केली.</item>
@@ -137,4 +138,6 @@
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> आयटम हटवायचा?</item>
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> आयटम हटवायचे?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"क्षमस्व, आपण एका वेळी केवळ 1000 आयटम निवडू शकता"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"फक्त 1000 आयटम निवडू शकता"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ms-rMY/strings.xml b/packages/DocumentsUI/res/values-ms-rMY/strings.xml
index 71118d8..7180bc2 100644
--- a/packages/DocumentsUI/res/values-ms-rMY/strings.xml
+++ b/packages/DocumentsUI/res/values-ms-rMY/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Tutup"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Fail ini tidak disalin: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Fail ini tidak dialihkan: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Fail ini tidak dipadamkan: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Fail ini telah ditukarkan kepada format lain: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> fail disalin ke papan keratan.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Padamkan <xliff:g id="COUNT_1">%1$d</xliff:g> item?</item>
       <item quantity="one">Padamkan <xliff:g id="COUNT_0">%1$d</xliff:g> item?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Maaf, anda hanya boleh memilih hingga 1000 item serentak"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Hanya boleh memilih 1000 item"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-my-rMM/strings.xml b/packages/DocumentsUI/res/values-my-rMM/strings.xml
index a0b1777..c288acd 100644
--- a/packages/DocumentsUI/res/values-my-rMM/strings.xml
+++ b/packages/DocumentsUI/res/values-my-rMM/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"ပိတ်ပါ"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"ဤဖိုင်များကို မကူးယူခဲ့ပါ − <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"ဤဖိုင်များကို မရွှေ့ခဲ့ပါ − <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"ဤဖိုင်များကို ဖျက်၍မရခဲ့ပါ − <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"ဤဖိုင်များကို အခြားပုံစံစနစ်တစ်ခုသို့ ပြောင်းလဲခဲ့သည် − <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"> ဖိုင် <xliff:g id="COUNT_1">%1$d</xliff:g> ဖိုင်ကိုအချက်အလက်သိမ်းတဲ့နေရာသို့ ကူးယူပါ။</item>
@@ -137,4 +138,6 @@
       <item quantity="other">အကြောင်းအရာ <xliff:g id="COUNT_1">%1$d</xliff:g> ခုကိုဖျက်မလား။</item>
       <item quantity="one">အကြောင်းအရာ <xliff:g id="COUNT_0">%1$d</xliff:g> ခုကိုဖျက်မလား။</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"ဝမ်းနည်းပါသည်။ တစ်ကြိမ်လျှင် အခု ၁၀၀၀ အထိသာ ရွေးချယ်နိုင်ပါသည်"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"အခု ၁၀၀၀ သာ ရွေးချယ်နိုင်သည်"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-nb/strings.xml b/packages/DocumentsUI/res/values-nb/strings.xml
index fd07c8d..bd5da81 100644
--- a/packages/DocumentsUI/res/values-nb/strings.xml
+++ b/packages/DocumentsUI/res/values-nb/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Lukk"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Disse filene er ikke kopiert: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Disse filene er ikke flyttet: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Disse filene ble ikke slettet: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Disse filene er konvertert til et annet format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Kopierte <xliff:g id="COUNT_1">%1$d</xliff:g> filer til utklippstavlen.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Vil du slette <xliff:g id="COUNT_1">%1$d</xliff:g> elementer?</item>
       <item quantity="one">Vil du slette <xliff:g id="COUNT_0">%1$d</xliff:g> element?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Beklager, du kan bare velge opptil 1000 elementer samtidig"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Du kan bare velge 1000 elementer"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ne-rNP/strings.xml b/packages/DocumentsUI/res/values-ne-rNP/strings.xml
index 31085d5..0ab0b78 100644
--- a/packages/DocumentsUI/res/values-ne-rNP/strings.xml
+++ b/packages/DocumentsUI/res/values-ne-rNP/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"बन्द गर्नुहोस्"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"यी फाइलहरू प्रतिलिपि गरिएको थिएनः <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"यी फाइलहरू सारिएको थिएन: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"यी फाइलहरूलाई मेटाइएको थिएन: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"यी फाइलहरू अर्को ढाँचामा परिणत गरिएका थिए: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"> क्लिपबोर्डमा <xliff:g id="COUNT_1">%1$d</xliff:g> फाइलहरू प्रतिलिपि बनाइए।</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> वस्तुहरूलाई मेट्ने हो?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> वस्तुलाई मेट्ने हो?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"माफ गर्नुहोस्, तपाईँ एक पटकमा १००० वस्तुहरूसम्म मात्र चयन गर्न सक्नुहुन्छ"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"१००० वस्तुहरूलाई मात्र चयन गर्न सकियो"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-nl/strings.xml b/packages/DocumentsUI/res/values-nl/strings.xml
index 7b0ce93..7ede6f5 100644
--- a/packages/DocumentsUI/res/values-nl/strings.xml
+++ b/packages/DocumentsUI/res/values-nl/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Sluiten"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Deze bestanden zijn niet gekopieerd: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Deze bestanden zijn niet verplaatst: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Deze bestanden zijn niet verwijderd: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Deze bestanden zijn geconverteerd vanuit een andere indeling: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> bestanden gekopieerd naar klembord.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> items verwijderen?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> item verwijderen?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Je kunt maximaal 1000 items tegelijk selecteren"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Kan maximaal 1000 items selecteren"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-pa-rIN/strings.xml b/packages/DocumentsUI/res/values-pa-rIN/strings.xml
index 25e4cd6..1b1f3c1 100644
--- a/packages/DocumentsUI/res/values-pa-rIN/strings.xml
+++ b/packages/DocumentsUI/res/values-pa-rIN/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"ਬੰਦ ਕਰੋ"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"ਇਹ ਫ਼ਾਈਲਾਂ ਕਾਪੀ ਨਹੀਂ ਹੋਈਆਂ ਸਨ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"ਇਹ ਫ਼ਾਈਲਾਂ ਤਬਦੀਲ ਨਹੀਂ ਹੋਈਆਂ ਸਨ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"ਇਹਨਾਂ ਫ਼ਾਈਲਾਂ ਨੂੰ ਮਿਟਾਇਆ ਨਹੀਂ ਗਿਆ ਸੀ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"ਇਹ ਫ਼ਾਈਲਾਂ ਕਿਸੇ ਹੋਰ ਫੌਰਮੈਟ ਵਿੱਚ ਤਬਦੀਲ ਕੀਤੀਆਂ ਗਈਆਂ ਸਨ: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">ਕਲਿੱਪਬੋਰਡ ਵਿੱਚ <xliff:g id="COUNT_1">%1$d</xliff:g> ਫ਼ਾਈਲਾਂ ਦੀ ਪ੍ਰਤੀਲਿਪੀ ਬਣਾਈ ਗਈ।</item>
@@ -137,4 +138,6 @@
       <item quantity="one">ਕੀ <xliff:g id="COUNT_1">%1$d</xliff:g> ਆਈਟਮਾਂ ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ?</item>
       <item quantity="other">ਕੀ <xliff:g id="COUNT_1">%1$d</xliff:g> ਆਈਟਮਾਂ ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"ਮਾਫ਼ ਕਰਨਾ, ਤੁਸੀਂ ਇੱਕ ਵਾਰ ਵਿੱਚ ਸਿਰਫ਼ 1000 ਆਈਟਮਾਂ ਤੱਕ ਚੁਣ ਸਕਦੇ ਹੋ"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"ਸਿਰਫ਼ 1000 ਆਈਟਮਾਂ ਨੂੰ ਹੀ ਚੁਣਿਆ ਜਾ ਸਕਿਆ"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-pl/strings.xml b/packages/DocumentsUI/res/values-pl/strings.xml
index 09ca839..2a66e59 100644
--- a/packages/DocumentsUI/res/values-pl/strings.xml
+++ b/packages/DocumentsUI/res/values-pl/strings.xml
@@ -112,6 +112,7 @@
     <string name="close" msgid="3043722427445528732">"Zamknij"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Te pliki nie zostały skopiowane: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Te pliki nie zostały przeniesione: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Te pliki nie zostały usunięte: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Te pliki zostały przekonwertowane na inny format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="few">Skopiowano <xliff:g id="COUNT_1">%1$d</xliff:g> pliki do schowka.</item>
@@ -161,4 +162,6 @@
       <item quantity="other">Usunąć <xliff:g id="COUNT_1">%1$d</xliff:g> elementu?</item>
       <item quantity="one">Usunąć <xliff:g id="COUNT_0">%1$d</xliff:g> element?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Możesz zaznaczyć maksymalnie 1000 elementów naraz"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Udało się zaznaczyć jedynie 1000 elementów"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-pt-rBR/strings.xml b/packages/DocumentsUI/res/values-pt-rBR/strings.xml
index 921be33..09b9d20 100644
--- a/packages/DocumentsUI/res/values-pt-rBR/strings.xml
+++ b/packages/DocumentsUI/res/values-pt-rBR/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Fechar"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Estes arquivos não foram copiados: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Estes arquivos não foram movidos: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Estes arquivos não foram excluídos: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Esses arquivos foram convertidos em outro formato: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> arquivos copiados para a área de transferência.</item>
@@ -137,4 +138,6 @@
       <item quantity="one">Excluir <xliff:g id="COUNT_1">%1$d</xliff:g> itens?</item>
       <item quantity="other">Excluir <xliff:g id="COUNT_1">%1$d</xliff:g> itens?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Só é possível selecionar até 1.000 itens por vez"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Só foi possível selecionar 1.000 itens"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-pt-rPT/strings.xml b/packages/DocumentsUI/res/values-pt-rPT/strings.xml
index c80bdd2..e15662f 100644
--- a/packages/DocumentsUI/res/values-pt-rPT/strings.xml
+++ b/packages/DocumentsUI/res/values-pt-rPT/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Fechar"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Os seguintes ficheiros não foram copiados: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Os seguintes ficheiros não foram movidos: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Estes ficheiros não foram eliminados: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Estes ficheiros foram convertidos para outro formato: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Copiou <xliff:g id="COUNT_1">%1$d</xliff:g> ficheiros para a área de transferência.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Pretende eliminar <xliff:g id="COUNT_1">%1$d</xliff:g> itens?</item>
       <item quantity="one">Pretende eliminar <xliff:g id="COUNT_0">%1$d</xliff:g> item?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Só é possível selecionar até 1000 itens de cada vez"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Só foi possível selecionar 1000 itens"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-pt/strings.xml b/packages/DocumentsUI/res/values-pt/strings.xml
index 921be33..09b9d20 100644
--- a/packages/DocumentsUI/res/values-pt/strings.xml
+++ b/packages/DocumentsUI/res/values-pt/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Fechar"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Estes arquivos não foram copiados: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Estes arquivos não foram movidos: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Estes arquivos não foram excluídos: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Esses arquivos foram convertidos em outro formato: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one"><xliff:g id="COUNT_1">%1$d</xliff:g> arquivos copiados para a área de transferência.</item>
@@ -137,4 +138,6 @@
       <item quantity="one">Excluir <xliff:g id="COUNT_1">%1$d</xliff:g> itens?</item>
       <item quantity="other">Excluir <xliff:g id="COUNT_1">%1$d</xliff:g> itens?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Só é possível selecionar até 1.000 itens por vez"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Só foi possível selecionar 1.000 itens"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ro/strings.xml b/packages/DocumentsUI/res/values-ro/strings.xml
index ced834c..78c7988 100644
--- a/packages/DocumentsUI/res/values-ro/strings.xml
+++ b/packages/DocumentsUI/res/values-ro/strings.xml
@@ -106,6 +106,7 @@
     <string name="close" msgid="3043722427445528732">"Închideți"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Aceste fișiere nu au fost copiate: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Aceste fișiere nu au fost mutate: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Aceste fișiere nu au fost șterse: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Aceste fișiere au fost convertite în alt format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="few">Au fost copiate <xliff:g id="COUNT_1">%1$d</xliff:g> fișiere în clipboard.</item>
@@ -149,4 +150,6 @@
       <item quantity="other">Ștergeți <xliff:g id="COUNT_1">%1$d</xliff:g> de elemente?</item>
       <item quantity="one">Ștergeți <xliff:g id="COUNT_0">%1$d</xliff:g> element?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Ne pare rău, puteți selecta cel mult 1000 de elemente odată"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"S-au putut selecta numai 1000 de elemente"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ru/strings.xml b/packages/DocumentsUI/res/values-ru/strings.xml
index 02077cf..2e0752e 100644
--- a/packages/DocumentsUI/res/values-ru/strings.xml
+++ b/packages/DocumentsUI/res/values-ru/strings.xml
@@ -112,6 +112,7 @@
     <string name="close" msgid="3043722427445528732">"Закрыть"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Не удалось скопировать следующие файлы: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Не удалось переместить следующие файлы: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Следующие файлы не были удалены: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Формат этих файлов изменен: <xliff:g id="LIST">%1$s</xliff:g>."</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">Скопирован <xliff:g id="COUNT_1">%1$d</xliff:g> файл</item>
@@ -161,4 +162,6 @@
       <item quantity="many">Удалить <xliff:g id="COUNT_1">%1$d</xliff:g> объектов?</item>
       <item quantity="other">Удалить <xliff:g id="COUNT_1">%1$d</xliff:g> объекта?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Можно выбрать не более 1000 объектов"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Можно выбрать не более 1000 объектов"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-si-rLK/strings.xml b/packages/DocumentsUI/res/values-si-rLK/strings.xml
index d39e853..bf94066 100644
--- a/packages/DocumentsUI/res/values-si-rLK/strings.xml
+++ b/packages/DocumentsUI/res/values-si-rLK/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"වසන්න"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"මෙම ගොනු පිටපත් නොකරන ලදී: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"මෙම ගොනු ගෙන නොයන ලදී: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"මෙම ගොනු නොමකන ලදී: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"මෙම ගොනු වෙනත් ආකෘතියකට පරිවර්තනය කරන ලදී: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">පසුරු පුවරුවට ගොනු <xliff:g id="COUNT_1">%1$d</xliff:g> ක් පිටපත් කරන ලදි.</item>
@@ -137,4 +138,6 @@
       <item quantity="one">අයිතම <xliff:g id="COUNT_1">%1$d</xliff:g> ක් මකන්නද?</item>
       <item quantity="other">අයිතම <xliff:g id="COUNT_1">%1$d</xliff:g> ක් මකන්නද?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"කනගාටුයි, ඔබට වරකට අයිතම 100ක් පමණක් තෝරා ගැනීමට හැකිය"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"අයිතම 100ක් පමණක් තෝරා ගැනීමට හැකි විය"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-sk/strings.xml b/packages/DocumentsUI/res/values-sk/strings.xml
index eb59a51..9a4ee90 100644
--- a/packages/DocumentsUI/res/values-sk/strings.xml
+++ b/packages/DocumentsUI/res/values-sk/strings.xml
@@ -112,6 +112,7 @@
     <string name="close" msgid="3043722427445528732">"Zavrieť"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Tieto súbory neboli skopírované: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Tieto súbory neboli presunuté: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Tieto súbory neboli odstránené: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Tieto súbory boli konvertované do iného formátu: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="few">Do schránky boli skopírované <xliff:g id="COUNT_1">%1$d</xliff:g> súbory.</item>
@@ -161,4 +162,6 @@
       <item quantity="other">Odstrániť <xliff:g id="COUNT_1">%1$d</xliff:g> položiek?</item>
       <item quantity="one">Odstrániť <xliff:g id="COUNT_0">%1$d</xliff:g> položku?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Ľutujeme, ale naraz môžete vybrať maximálne 1 000 položiek"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Podarilo sa vybrať iba 1 000 položiek"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-sl/strings.xml b/packages/DocumentsUI/res/values-sl/strings.xml
index d3daabb..0c7816c 100644
--- a/packages/DocumentsUI/res/values-sl/strings.xml
+++ b/packages/DocumentsUI/res/values-sl/strings.xml
@@ -112,6 +112,7 @@
     <string name="close" msgid="3043722427445528732">"Zapri"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Te datoteke niso bile kopirane: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Te datoteke niso bile premaknjene: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Te datoteke niso bile izbrisane: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Te datoteke so bile spremenjene v drugo obliko zapisa: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">V odložišče je bila kopirana <xliff:g id="COUNT_1">%1$d</xliff:g> datoteka.</item>
@@ -161,4 +162,6 @@
       <item quantity="few">Ali želite izbrisati <xliff:g id="COUNT_1">%1$d</xliff:g> elemente?</item>
       <item quantity="other">Ali želite izbrisati <xliff:g id="COUNT_1">%1$d</xliff:g> elementov?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Hkrati lahko izberete samo do 1000 elementov"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Izbrati je mogoče samo 1000 elementov"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-sq-rAL/strings.xml b/packages/DocumentsUI/res/values-sq-rAL/strings.xml
index fe93300..6cfe398 100644
--- a/packages/DocumentsUI/res/values-sq-rAL/strings.xml
+++ b/packages/DocumentsUI/res/values-sq-rAL/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Mbyll"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Këta skedarë nuk u kopjuan: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Këta skedarë nuk u zhvendosën: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Këta skedarë nuk u fshinë: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Këta skedarë janë konvertuar në format tjetër: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">U kopjuan <xliff:g id="COUNT_1">%1$d</xliff:g> skedarë në kujtesën e fragmenteve.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Të fshihen <xliff:g id="COUNT_1">%1$d</xliff:g> artikuj?</item>
       <item quantity="one">Të fshihet <xliff:g id="COUNT_0">%1$d</xliff:g> artikull?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Na vjen keq, mund të zgjedhësh vetëm deri në 1000 artikuj në të njëjtën kohë."</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Vetëm 1000 artikuj mund të zgjidheshin"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-sr/strings.xml b/packages/DocumentsUI/res/values-sr/strings.xml
index 95af81f..d44b89b 100644
--- a/packages/DocumentsUI/res/values-sr/strings.xml
+++ b/packages/DocumentsUI/res/values-sr/strings.xml
@@ -106,6 +106,7 @@
     <string name="close" msgid="3043722427445528732">"Затвори"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Следеће датотеке нису копиране: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Следеће датотеке нису премештене: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Следеће датотеке нису избрисане: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Ове датотеке су конвертоване у други формат: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">Копирали сте <xliff:g id="COUNT_1">%1$d</xliff:g> датотеку у привремену меморију.</item>
@@ -149,4 +150,6 @@
       <item quantity="few">Желите ли да избришете <xliff:g id="COUNT_1">%1$d</xliff:g> ставке?</item>
       <item quantity="other">Желите ли да избришете <xliff:g id="COUNT_1">%1$d</xliff:g> ставки?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Жао нам је, истовремено можете да изаберете највише 1000 ставки"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Можете да изаберете највише 1000 ставки"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-sv/strings.xml b/packages/DocumentsUI/res/values-sv/strings.xml
index 17dfffd..760a456 100644
--- a/packages/DocumentsUI/res/values-sv/strings.xml
+++ b/packages/DocumentsUI/res/values-sv/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Stäng"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Följande filer kopierades inte: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Följande filer flyttades inte: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Följande filer raderades inte: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Filerna konverterades till ett annat format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> filer har kopierats till Urklipp.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Vill du radera <xliff:g id="COUNT_1">%1$d</xliff:g> objekt?</item>
       <item quantity="one">Vill du radera <xliff:g id="COUNT_0">%1$d</xliff:g> objekt?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Du kan endast välja upp till 1 000 objekt i taget"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Det gick bara att välja 1 000 objekt"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-sw/strings.xml b/packages/DocumentsUI/res/values-sw/strings.xml
index cf9c8c7..a164026 100644
--- a/packages/DocumentsUI/res/values-sw/strings.xml
+++ b/packages/DocumentsUI/res/values-sw/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Funga"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Haikunakili faili zifuatazo: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Haikuhamisha faili zifuatazo: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Imeshindwa kufuta faili zifuatazo: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Faili hizi zimebadilishwa muundo. <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Alinakili faili <xliff:g id="COUNT_1">%1$d</xliff:g> kwenye ubao wa kunakili.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Ungependa kufuta vipengee <xliff:g id="COUNT_1">%1$d</xliff:g>?</item>
       <item quantity="one">Ungependa kufuta kipengee <xliff:g id="COUNT_0">%1$d</xliff:g>?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Samahani, unaweza kuchagua hadi vipengee 1000 pekee kwa wakati mmoja"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Imechagua hadi vipengee 1000 pekee."</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ta-rIN/strings.xml b/packages/DocumentsUI/res/values-ta-rIN/strings.xml
index d4c2f6a..1f54641 100644
--- a/packages/DocumentsUI/res/values-ta-rIN/strings.xml
+++ b/packages/DocumentsUI/res/values-ta-rIN/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"மூடு"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"பின்வரும் கோப்புகள் நகலெடுக்கப்படவில்லை: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"பின்வரும் கோப்புகள் நகர்த்தப்படவில்லை: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"பின்வரும் கோப்புகள் நீக்கப்படவில்லை: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"இந்தக் கோப்புகள் வேறொரு வடிவத்திற்கு மாற்றப்பட்டன: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">கிளிப்போர்டிற்கு <xliff:g id="COUNT_1">%1$d</xliff:g> கோப்புகள் நகலெடுக்கப்பட்டன.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> உருப்படிகளை நீக்கவா?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> உருப்படியை நீக்கவா?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"ஒரு சமயத்தில் 1000 உருப்படிகள் வரை மட்டுமே நீங்கள் தேர்ந்தெடுக்கலாம்"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"1000 உருப்படிகளை மட்டுமே தேர்ந்தெடுக்கலாம்"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-te-rIN/strings.xml b/packages/DocumentsUI/res/values-te-rIN/strings.xml
index 3a91252..7449913 100644
--- a/packages/DocumentsUI/res/values-te-rIN/strings.xml
+++ b/packages/DocumentsUI/res/values-te-rIN/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"మూసివేయి"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"ఈ ఫైల్‌లు కాపీ చేయబడలేదు: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"ఈ ఫైల్‌లు తరలించబడలేదు: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"ఈ ఫైల్‌లు తొలగించబడలేదు: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"ఈ ఫైల్‌లు మరొక ఆకృతికి మార్చబడ్డాయి: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">క్లిప్‌బోర్డ్‌కి <xliff:g id="COUNT_1">%1$d</xliff:g> ఫైల్‌లను కాపీ చేసారు.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> అంశాలను తొలగించాలా?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> అంశాన్ని తొలగించాలా?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"క్షమించండి, మీరు ఒకేసారి గరిష్టంగా 1000 అంశాలను మాత్రమే ఎంచుకోగలరు"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"కేవలం 1000 అంశాలను మాత్రమే ఎంచుకోగలరు"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-th/strings.xml b/packages/DocumentsUI/res/values-th/strings.xml
index f739eda..77cb9b1 100644
--- a/packages/DocumentsUI/res/values-th/strings.xml
+++ b/packages/DocumentsUI/res/values-th/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"ปิด"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"ไม่ได้คัดลอกไฟล์เหล่านี้: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"ไม่ได้ย้ายไฟล์เหล่านี้: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"ไม่ได้ลบไฟล์เหล่านี้: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"ไฟล์ต่อไปนี้แปลงเป็นอีกรูปแบบหนึ่งแล้ว: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">คัดลอก <xliff:g id="COUNT_1">%1$d</xliff:g> ไฟล์ไปยังคลิปบอร์ดแล้ว</item>
@@ -137,4 +138,6 @@
       <item quantity="other">ลบ <xliff:g id="COUNT_1">%1$d</xliff:g> รายการใช่ไหม</item>
       <item quantity="one">ลบ <xliff:g id="COUNT_0">%1$d</xliff:g> รายการใช่ไหม</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"ขออภัย คุณเลือกได้เพียงครั้งละไม่เกิน 1,000 รายการ"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"เลือกได้ 1,000 รายการเท่านั้น"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-tl/strings.xml b/packages/DocumentsUI/res/values-tl/strings.xml
index 3474be8..d2d85ad 100644
--- a/packages/DocumentsUI/res/values-tl/strings.xml
+++ b/packages/DocumentsUI/res/values-tl/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Isara"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Hindi nakopya ang mga file na ito: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Hindi nailipat ang mga file na ito: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Hindi na-delete ang mga file na ito: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Na-convert ang mga file na ito sa ibang format: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">Nakopya ang <xliff:g id="COUNT_1">%1$d</xliff:g> file sa clipboard.</item>
@@ -137,4 +138,6 @@
       <item quantity="one">Gusto mo bang i-delete ang <xliff:g id="COUNT_1">%1$d</xliff:g> item?</item>
       <item quantity="other">Gusto mo bang i-delete ang <xliff:g id="COUNT_1">%1$d</xliff:g> na item?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Paumanhin, maaari ka lang pumili ng hanggang 1000 item sa isang pagkakataon"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Maaari lang pumili ng 1000 item"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-tr/strings.xml b/packages/DocumentsUI/res/values-tr/strings.xml
index b685568..5814a0b 100644
--- a/packages/DocumentsUI/res/values-tr/strings.xml
+++ b/packages/DocumentsUI/res/values-tr/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Kapat"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Şu dosyalar kopyalanamadı: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Şu dosyalar taşınamadı: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Şu dosyalar silinemedi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Bu dosyalar başka bir biçime dönüştürüldü: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> dosya panoya kopyalandı.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> öğe silinsin mi?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> öğe silinsin mi?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Maalesef bir kerede en fazla 1000 öğe seçebilirsiniz"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Yalnızca 1000 öğe seçilebildi"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-uk/strings.xml b/packages/DocumentsUI/res/values-uk/strings.xml
index b255459..192042c 100644
--- a/packages/DocumentsUI/res/values-uk/strings.xml
+++ b/packages/DocumentsUI/res/values-uk/strings.xml
@@ -112,6 +112,7 @@
     <string name="close" msgid="3043722427445528732">"Закрити"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Ці файли не скопійовано: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Ці файли не переміщено: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Ці файли не видалено: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Ці файли конвертовано в інший формат: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">У буфер обміну скопійовано <xliff:g id="COUNT_1">%1$d</xliff:g> файл.</item>
@@ -161,4 +162,6 @@
       <item quantity="many">Видалити <xliff:g id="COUNT_1">%1$d</xliff:g> елементів?</item>
       <item quantity="other">Видалити <xliff:g id="COUNT_1">%1$d</xliff:g> елемента?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"На жаль, за раз можна вибрати не більше 1000 елементів"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Можна вибрати лише 1000 елементів"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-ur-rPK/strings.xml b/packages/DocumentsUI/res/values-ur-rPK/strings.xml
index 8d85a2b..bea7326 100644
--- a/packages/DocumentsUI/res/values-ur-rPK/strings.xml
+++ b/packages/DocumentsUI/res/values-ur-rPK/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"بند کریں"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"یہ فائلیں کاپی نہیں ہوئیں: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"یہ فائلیں منتقل نہیں ہوئیں: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"یہ فائلیں حذف نہیں ہوئیں: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"ان فائلوں کو ایک دوسرے فارمیٹ میں تبدیل کیا گیا تھا: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> فائلز کلپ بورڈ پر کاپی کی گئیں۔</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> آئٹمز حذف کریں؟</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> آئٹم حذف کریں؟</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"معذرت، آپ ایک وقت میں صرف 1000 آئٹمز تک منتخب کر سکتے ہیں"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"صرف 1000 آئٹمز منتخب ہو سکے"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-uz-rUZ/strings.xml b/packages/DocumentsUI/res/values-uz-rUZ/strings.xml
index 76e82da..5282329 100644
--- a/packages/DocumentsUI/res/values-uz-rUZ/strings.xml
+++ b/packages/DocumentsUI/res/values-uz-rUZ/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Yopish"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Quyidagi fayllardan nusxa olinmadi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Quyidagi fayllar ko‘chirilmadi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Quyidagi fayllar o‘chirib tashlanmadi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Ushbu fayllar boshqa formatga o‘girildi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> ta fayldan vaqtinchalik xotiraga nusxa olindi.</item>
@@ -137,4 +138,6 @@
       <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> ta element o‘chirib tashlansinmi?</item>
       <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> ta element o‘chirib tashlansinmi?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Faqat 1000 tagacha obyektni tanlash mumkin"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Faqat 1000 tagacha obyektni tanlash mumkin"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-vi/strings.xml b/packages/DocumentsUI/res/values-vi/strings.xml
index 9e69e0f..6f19037 100644
--- a/packages/DocumentsUI/res/values-vi/strings.xml
+++ b/packages/DocumentsUI/res/values-vi/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Đóng"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Những tệp này chưa được sao chép: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Những tệp này chưa được di chuyển: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Những tệp này chưa được xóa: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Các tệp này đã được chuyển đổi sang định dạng khác: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">Đã sao chép <xliff:g id="COUNT_1">%1$d</xliff:g> tệp vào khay nhớ tạm.</item>
@@ -137,4 +138,6 @@
       <item quantity="other">Xóa <xliff:g id="COUNT_1">%1$d</xliff:g> mục?</item>
       <item quantity="one">Xóa <xliff:g id="COUNT_0">%1$d</xliff:g> mục?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Rất tiếc, bạn chỉ có thể chọn 1000 mục một lần"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Chỉ có thể chọn 1000 mục"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-zh-rCN/strings.xml b/packages/DocumentsUI/res/values-zh-rCN/strings.xml
index 00e4c91..2dd2ae3 100644
--- a/packages/DocumentsUI/res/values-zh-rCN/strings.xml
+++ b/packages/DocumentsUI/res/values-zh-rCN/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"关闭"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"无法复制以下文件：<xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"无法移动以下文件：<xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"未能删除以下文件：<xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"下列文件已转换成其他格式：<xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">已将 <xliff:g id="COUNT_1">%1$d</xliff:g> 个文件复制到剪贴板。</item>
@@ -119,7 +120,10 @@
       <item quantity="other">已选择 <xliff:g id="COUNT_1">%1$d</xliff:g> 项</item>
       <item quantity="one">已选择 <xliff:g id="COUNT_0">%1$d</xliff:g> 项</item>
     </plurals>
-    <!-- no translation found for elements_dragged (3727204615215602228) -->
+    <plurals name="elements_dragged" formatted="false" msgid="3727204615215602228">
+      <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> 项</item>
+      <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> 项</item>
+    </plurals>
     <string name="delete_filename_confirmation_message" msgid="5312817725577537488">"要删除“<xliff:g id="NAME">%1$s</xliff:g>”吗？"</string>
     <string name="delete_foldername_confirmation_message" msgid="5885501832257285329">"要删除文件夹“<xliff:g id="NAME">%1$s</xliff:g>”及其中的内容吗？"</string>
     <plurals name="delete_files_confirmation_message" formatted="false" msgid="8417505791395471802">
@@ -134,4 +138,6 @@
       <item quantity="other">删除 <xliff:g id="COUNT_1">%1$d</xliff:g> 项？</item>
       <item quantity="one">删除 <xliff:g id="COUNT_0">%1$d</xliff:g> 项？</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"抱歉，您一次最多只能选择 1000 项"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"只能选择 1000 项"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-zh-rHK/strings.xml b/packages/DocumentsUI/res/values-zh-rHK/strings.xml
index 4b0f4e2..21cf755 100644
--- a/packages/DocumentsUI/res/values-zh-rHK/strings.xml
+++ b/packages/DocumentsUI/res/values-zh-rHK/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"關閉"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"以下檔案未能複製：<xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"以下檔案未能移動：<xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"無法刪除以下檔案：<xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"這些檔案已轉換成其他格式：<xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">已複製 <xliff:g id="COUNT_1">%1$d</xliff:g> 個檔案到剪貼簿。</item>
@@ -137,4 +138,6 @@
       <item quantity="other">要刪除 <xliff:g id="COUNT_1">%1$d</xliff:g> 個項目嗎？</item>
       <item quantity="one">要刪除 <xliff:g id="COUNT_0">%1$d</xliff:g> 個項目嗎？</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"很抱歉，您每次只可選擇最多 1000 個項目"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"只可選擇 1000 個項目"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-zh-rTW/strings.xml b/packages/DocumentsUI/res/values-zh-rTW/strings.xml
index 07c5c2a..6ee919e 100644
--- a/packages/DocumentsUI/res/values-zh-rTW/strings.xml
+++ b/packages/DocumentsUI/res/values-zh-rTW/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"關閉"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"未複製下列檔案：<xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"未移動下列檔案：<xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"未刪除下列檔案：<xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"下列檔案已轉換成其他格式：<xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="other">已將 <xliff:g id="COUNT_1">%1$d</xliff:g> 個檔案複製到剪貼簿。</item>
@@ -137,4 +138,6 @@
       <item quantity="other">要刪除 <xliff:g id="COUNT_1">%1$d</xliff:g> 個項目嗎？</item>
       <item quantity="one">要刪除 <xliff:g id="COUNT_0">%1$d</xliff:g> 個項目嗎？</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"很抱歉，您一次最多只能選取 1000 個項目"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"只能選取 1000 個項目"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values-zu/strings.xml b/packages/DocumentsUI/res/values-zu/strings.xml
index 095d275..925f989 100644
--- a/packages/DocumentsUI/res/values-zu/strings.xml
+++ b/packages/DocumentsUI/res/values-zu/strings.xml
@@ -100,6 +100,7 @@
     <string name="close" msgid="3043722427445528732">"Vala"</string>
     <string name="copy_failure_alert_content" msgid="4563147454522476183">"Lawo mafayela awakopishwanga: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="move_failure_alert_content" msgid="2635075788682922861">"Lawa mafayela awazange ahanjiswe: <xliff:g id="LIST">%1$s</xliff:g>"</string>
+    <string name="delete_failure_alert_content" msgid="892393767207938353">"Lawa mafayela awazange asuswe: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <string name="copy_converted_warning_content" msgid="5753861488218674361">"Lawo mafayela aguqulelwe kwenye ifomethi: <xliff:g id="LIST">%1$s</xliff:g>"</string>
     <plurals name="clipboard_files_clipped" formatted="false" msgid="855459017537058539">
       <item quantity="one">Kukopishwe amafayela angu-<xliff:g id="COUNT_1">%1$d</xliff:g> kubhodi lokunamathisela.</item>
@@ -137,4 +138,6 @@
       <item quantity="one">Susa izinto ezingu-<xliff:g id="COUNT_1">%1$d</xliff:g>?</item>
       <item quantity="other">Susa izinto ezingu-<xliff:g id="COUNT_1">%1$d</xliff:g>?</item>
     </plurals>
+    <string name="too_many_selected" msgid="6781456208116966753">"Uxolo, ungakhetha kuphela izinto ezingu-1000 ngesikhathi esisodwa"</string>
+    <string name="too_many_in_select_all" msgid="8281987479885307456">"Ingakwazi kuphela ukukhetha izinto ezingu-1000"</string>
 </resources>
diff --git a/packages/DocumentsUI/res/values/strings.xml b/packages/DocumentsUI/res/values/strings.xml
index eb99a0d..e67cc8a 100644
--- a/packages/DocumentsUI/res/values/strings.xml
+++ b/packages/DocumentsUI/res/values/strings.xml
@@ -180,6 +180,8 @@
     <string name="copy_failure_alert_content">These files weren\u2019t copied: <xliff:g id="list">%1$s</xliff:g></string>
     <!-- Contents of the moving failure alert dialog. [CHAR LIMIT=48] -->
     <string name="move_failure_alert_content">These files weren\u2019t moved: <xliff:g id="list">%1$s</xliff:g></string>
+    <!-- Message shown to users when an operation to delete one or more files has failed. Presented in a dialog. [CHAR LIMIT=48] -->
+    <string name="delete_failure_alert_content">These files weren\u2019t deleted: <xliff:g id="list">%1$s</xliff:g></string>
     <!-- Contents of the copying warning dialog due to converted files. [CHAR LIMIT=64] -->
     <string name="copy_converted_warning_content">These files were converted to another format: <xliff:g id="list" example="Document.pdf, Photo.jpg, Song.ogg">%1$s</xliff:g></string>
     <!-- Toast shown when a user copies files to clipboard. -->
@@ -245,4 +247,9 @@
         <item quantity="one">Delete <xliff:g id="count" example="1">%1$d</xliff:g> item?</item>
         <item quantity="other">Delete <xliff:g id="count" example="3">%1$d</xliff:g> items?</item>
     </plurals>
+    <!-- Snackbar shown to users who wanted to select more than 1000 items (files or directories). -->
+    <string name="too_many_selected">Sorry, you can only select up to 1000 items at a time</string>
+    <!-- Snackbar shown to users who wanted to select all, but there were too many items (files or directories).
+         Only the first 1000 items are selected in such case. -->
+    <string name="too_many_in_select_all">Could only select 1000 items</string>
 </resources>
diff --git a/packages/DocumentsUI/src/com/android/documentsui/BaseActivity.java b/packages/DocumentsUI/src/com/android/documentsui/BaseActivity.java
index 3b0be57..44d7136 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/BaseActivity.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/BaseActivity.java
@@ -793,7 +793,7 @@
 
     private static final class HandleRootsChangedTask
             extends PairedTask<BaseActivity, RootInfo, RootInfo> {
-        DocumentInfo mDownloadsDocument;
+        DocumentInfo mDefaultRootDocument;
 
         public HandleRootsChangedTask(BaseActivity activity) {
             super(activity);
@@ -805,28 +805,36 @@
 
             final RootInfo currentRoot = roots[0];
             final Collection<RootInfo> cachedRoots = mOwner.mRoots.getRootsBlocking();
-            RootInfo downloadsRoot = null;
             for (final RootInfo root : cachedRoots) {
-                if (root.isDownloads()) {
-                    downloadsRoot = root;
-                }
                 if (root.getUri().equals(currentRoot.getUri())) {
                     // We don't need to change the current root as the current root was not removed.
                     return null;
                 }
             }
-            assert(downloadsRoot != null);
-            mDownloadsDocument = mOwner.getRootDocumentBlocking(downloadsRoot);
-            return downloadsRoot;
+
+            // Choose the default root.
+            final RootInfo defaultRoot = mOwner.mRoots.getDefaultRootBlocking(mOwner.mState);
+            assert(defaultRoot != null);
+            if (!defaultRoot.isRecents()) {
+                mDefaultRootDocument = mOwner.getRootDocumentBlocking(defaultRoot);
+            }
+            return defaultRoot;
         }
 
         @Override
-        protected void finish(RootInfo downloadsRoot) {
-            if (downloadsRoot != null && mDownloadsDocument != null) {
-                // Clear entire backstack and start in new root
-                mOwner.mState.onRootChanged(downloadsRoot);
-                mOwner.mSearchManager.update(downloadsRoot);
-                mOwner.openContainerDocument(mDownloadsDocument);
+        protected void finish(RootInfo defaultRoot) {
+            if (defaultRoot == null) {
+                return;
+            }
+
+            // Clear entire backstack and start in new root.
+            mOwner.mState.onRootChanged(defaultRoot);
+            mOwner.mSearchManager.update(defaultRoot);
+
+            if (defaultRoot.isRecents()) {
+                mOwner.refreshCurrentRootAndDirectory(AnimationView.ANIM_NONE);
+            } else {
+                mOwner.openContainerDocument(mDefaultRootDocument);
             }
         }
     }
diff --git a/packages/DocumentsUI/src/com/android/documentsui/OpenExternalDirectoryActivity.java b/packages/DocumentsUI/src/com/android/documentsui/OpenExternalDirectoryActivity.java
index 854be0b..b0e5e4e 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/OpenExternalDirectoryActivity.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/OpenExternalDirectoryActivity.java
@@ -212,6 +212,12 @@
                 break;
             }
         }
+        if (internalRoot == null) {
+            // Should not happen on normal circumstances, unless app crafted an invalid volume
+            // using reflection or the list of mounted volumes changed.
+            Log.e(TAG, "Didn't find right volume for '" + storageVolume.dump() + "' on " + volumes);
+            return false;
+        }
 
         // Checks if the user has granted the permission already.
         final Intent intent = getIntentForExistingPermission(activity, isRoot, internalRoot, file);
diff --git a/packages/DocumentsUI/src/com/android/documentsui/OperationDialogFragment.java b/packages/DocumentsUI/src/com/android/documentsui/OperationDialogFragment.java
index 2cef8d3..9a3f7a8 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/OperationDialogFragment.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/OperationDialogFragment.java
@@ -95,6 +95,9 @@
                     case FileOperationService.OPERATION_COPY:
                         messageFormat = getString(R.string.copy_failure_alert_content);
                         break;
+                    case FileOperationService.OPERATION_DELETE:
+                        messageFormat = getString(R.string.delete_failure_alert_content);
+                        break;
                     case FileOperationService.OPERATION_MOVE:
                         messageFormat = getString(R.string.move_failure_alert_content);
                         break;
diff --git a/packages/DocumentsUI/src/com/android/documentsui/QuickViewIntentBuilder.java b/packages/DocumentsUI/src/com/android/documentsui/QuickViewIntentBuilder.java
index babde99..c78face 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/QuickViewIntentBuilder.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/QuickViewIntentBuilder.java
@@ -17,6 +17,7 @@
 package com.android.documentsui;
 
 import static com.android.documentsui.Shared.DEBUG;
+import static com.android.documentsui.Shared.MAX_DOCS_IN_INTENT;
 import static com.android.documentsui.model.DocumentInfo.getCursorString;
 
 import android.content.ClipData;
@@ -46,7 +47,6 @@
 final class QuickViewIntentBuilder {
 
     private static final String TAG = "QuickViewIntentBuilder";
-    private static final int MAX_CLIP_ITEMS = 1000;
 
     private final DocumentInfo mDocument;
     private final Model mModel;
@@ -165,11 +165,11 @@
         int firstSibling;
         int lastSibling;
         if (documentLocation < uris.size() / 2) {
-            firstSibling = Math.max(0, documentLocation - MAX_CLIP_ITEMS / 2);
-            lastSibling = Math.min(uris.size() - 1, firstSibling + MAX_CLIP_ITEMS - 1);
+            firstSibling = Math.max(0, documentLocation - MAX_DOCS_IN_INTENT / 2);
+            lastSibling = Math.min(uris.size() - 1, firstSibling + MAX_DOCS_IN_INTENT - 1);
         } else {
-            lastSibling = Math.min(uris.size() - 1, documentLocation + MAX_CLIP_ITEMS / 2);
-            firstSibling = Math.max(0, lastSibling - MAX_CLIP_ITEMS + 1);
+            lastSibling = Math.min(uris.size() - 1, documentLocation + MAX_DOCS_IN_INTENT / 2);
+            firstSibling = Math.max(0, lastSibling - MAX_DOCS_IN_INTENT + 1);
         }
 
         if (DEBUG) Log.d(TAG, "Copmuted siblings from index: " + firstSibling
diff --git a/packages/DocumentsUI/src/com/android/documentsui/RecentsCreateFragment.java b/packages/DocumentsUI/src/com/android/documentsui/RecentsCreateFragment.java
index 0e27622..2be93b8 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/RecentsCreateFragment.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/RecentsCreateFragment.java
@@ -17,6 +17,7 @@
 package com.android.documentsui;
 
 import static com.android.documentsui.Shared.TAG;
+import static com.android.documentsui.State.ACTION_CREATE;
 
 import android.app.Fragment;
 import android.app.FragmentManager;
@@ -107,8 +108,9 @@
                 mAdapter.update(data);
 
                 // When launched into empty recents, show drawer
-                if (mAdapter.isEmpty() && !state.hasLocationChanged() &&
-                        context instanceof DocumentsActivity) {
+                if (mAdapter.isEmpty() && !state.hasLocationChanged()
+                        && state.action != ACTION_CREATE
+                        && context instanceof DocumentsActivity) {
                     ((DocumentsActivity) context).setRootsDrawerOpen(true);
                 }
             }
diff --git a/packages/DocumentsUI/src/com/android/documentsui/RootsCache.java b/packages/DocumentsUI/src/com/android/documentsui/RootsCache.java
index 594e02f..559348e 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/RootsCache.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/RootsCache.java
@@ -110,6 +110,10 @@
 
         @Override
         public void onChange(boolean selfChange, Uri uri) {
+            if (uri == null) {
+                Log.w(TAG, "Received onChange event for null uri. Skipping.");
+                return;
+            }
             if (DEBUG) Log.d(TAG, "Updating roots due to change at " + uri);
             updateAuthorityAsync(uri.getAuthority());
         }
@@ -445,6 +449,18 @@
         mCacheUpdateListener = cacheUpdateListener;
     }
 
+    /**
+     * Returns the default root for the specified state.
+     */
+    public RootInfo getDefaultRootBlocking(State state) {
+        for (RootInfo root : getMatchingRoots(getRootsBlocking(), state)) {
+            if (root.isDownloads()) {
+                return root;
+            }
+        }
+        return mRecentsRoot;
+    }
+
     @VisibleForTesting
     static List<RootInfo> getMatchingRoots(Collection<RootInfo> roots, State state) {
         final List<RootInfo> matching = new ArrayList<>();
diff --git a/packages/DocumentsUI/src/com/android/documentsui/RootsFragment.java b/packages/DocumentsUI/src/com/android/documentsui/RootsFragment.java
index 8bbcc30..94edd83 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/RootsFragment.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/RootsFragment.java
@@ -228,10 +228,11 @@
         }
 
         public View getView(View convertView, ViewGroup parent) {
-            if (convertView == null) {
-                convertView = LayoutInflater.from(parent.getContext())
+            // Disable recycling views because 1) it's very unlikely a view can be recycled here;
+            // 2) there is no easy way for us to know with which layout id the convertView was
+            // inflated; and 3) simplicity is much appreciated at this time.
+            convertView = LayoutInflater.from(parent.getContext())
                         .inflate(mLayoutId, parent, false);
-            }
             bindView(convertView);
             return convertView;
         }
diff --git a/packages/DocumentsUI/src/com/android/documentsui/Shared.java b/packages/DocumentsUI/src/com/android/documentsui/Shared.java
index 1ba836a..07c3cdbc 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/Shared.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/Shared.java
@@ -104,6 +104,11 @@
      */
     public static final String EXTRA_BENCHMARK = "com.android.documentsui.benchmark";
 
+    /**
+     * Maximum number of items in a Binder transaction packet.
+     */
+    public static final int MAX_DOCS_IN_INTENT = 1000;
+
     private static final Collator sCollator;
 
     static {
diff --git a/packages/DocumentsUI/src/com/android/documentsui/dirlist/DirectoryFragment.java b/packages/DocumentsUI/src/com/android/documentsui/dirlist/DirectoryFragment.java
index ccb2886..b67f6a2 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/dirlist/DirectoryFragment.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/dirlist/DirectoryFragment.java
@@ -17,6 +17,7 @@
 package com.android.documentsui.dirlist;
 
 import static com.android.documentsui.Shared.DEBUG;
+import static com.android.documentsui.Shared.MAX_DOCS_IN_INTENT;
 import static com.android.documentsui.State.MODE_GRID;
 import static com.android.documentsui.State.MODE_LIST;
 import static com.android.documentsui.State.SORT_ORDER_UNKNOWN;
@@ -108,9 +109,11 @@
 import java.lang.annotation.RetentionPolicy;
 import java.util.ArrayList;
 import java.util.Collections;
+import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Objects;
+import java.util.Set;
 
 /**
  * Display the documents inside a single directory.
@@ -475,8 +478,18 @@
 
                 final String docMimeType = getCursorString(cursor, Document.COLUMN_MIME_TYPE);
                 final int docFlags = getCursorInt(cursor, Document.COLUMN_FLAGS);
+                if (!mTuner.canSelectType(docMimeType, docFlags)) {
+                    return false;
+                }
 
-                return mTuner.canSelectType(docMimeType, docFlags);
+                if (mSelected.size() >= MAX_DOCS_IN_INTENT) {
+                    Snackbars.makeSnackbar(
+                            getActivity(),
+                            R.string.too_many_selected,
+                            Snackbar.LENGTH_SHORT)
+                            .show();
+                    return false;
+                }
             }
             return true;
         }
@@ -497,8 +510,7 @@
             if ((docFlags & Document.FLAG_PARTIAL) != 0) {
                 mNoCopyCount += selected ? 1 : -1;
             }
-            if ((docFlags & Document.FLAG_SUPPORTS_DELETE) == 0
-                    && (docFlags & Document.FLAG_SUPPORTS_DELETE) == 0) {
+            if ((docFlags & Document.FLAG_SUPPORTS_DELETE) == 0) {
                 mNoDeleteCount += selected ? 1 : -1;
             }
             if ((docFlags & Document.FLAG_SUPPORTS_RENAME) != 0) {
@@ -1109,9 +1121,17 @@
     public void selectAllFiles() {
         Metrics.logUserAction(getContext(), Metrics.USER_ACTION_SELECT_ALL);
 
-        // Exclude disabled files
-        List<String> enabled = new ArrayList<String>();
-        for (String id : mAdapter.getModelIds()) {
+        // Exclude disabled files.
+        Set<String> enabled = new HashSet<String>();
+        List<String> modelIds = mAdapter.getModelIds();
+
+        // Get the current selection.
+        String[] alreadySelected = mSelectionManager.getSelection().getAll();
+        for (String id : alreadySelected) {
+           enabled.add(id);
+        }
+
+        for (String id : modelIds) {
             Cursor cursor = getModel().getItem(id);
             if (cursor == null) {
                 Log.w(TAG, "Skipping selection. Can't obtain cursor for modeId: " + id);
@@ -1119,7 +1139,15 @@
             }
             String docMimeType = getCursorString(cursor, Document.COLUMN_MIME_TYPE);
             int docFlags = getCursorInt(cursor, Document.COLUMN_FLAGS);
-            if (isDocumentEnabled(docMimeType, docFlags)) {
+            if (mTuner.canSelectType(docMimeType, docFlags)) {
+                if (enabled.size() >= MAX_DOCS_IN_INTENT) {
+                    Snackbars.makeSnackbar(
+                        getActivity(),
+                        R.string.too_many_in_select_all,
+                        Snackbar.LENGTH_SHORT)
+                        .show();
+                    break;
+                }
                 enabled.add(id);
             }
         }
@@ -1146,8 +1174,10 @@
             view.setOnDragListener(mOnDragListener);
         }
 
-        // Make all items draggable.
-        view.setOnLongClickListener(onLongClickListener);
+        if (mTuner.allowDragNDrop()) {
+            // Make all items draggable.
+            view.setOnLongClickListener(onLongClickListener);
+        }
     }
 
     private View.OnDragListener mOnDragListener = new View.OnDragListener() {
diff --git a/packages/DocumentsUI/src/com/android/documentsui/dirlist/FragmentTuner.java b/packages/DocumentsUI/src/com/android/documentsui/dirlist/FragmentTuner.java
index e6217b2..9e2b86a 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/dirlist/FragmentTuner.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/dirlist/FragmentTuner.java
@@ -70,11 +70,7 @@
     }
 
     public boolean isDocumentEnabled(String docMimeType, int docFlags) {
-        if (isDirectory(docMimeType)) {
-            return true;
-        }
-
-        return MimePredicate.mimeMatches(mState.acceptMimes, docMimeType);
+        return true;
     }
 
     abstract void onModelLoaded(Model model, @ResultType int resultType, boolean isSearch);
@@ -86,10 +82,19 @@
     abstract boolean enableManagedMode();
 
     /**
+     * Whether drag n' drop is allowed in this context
+     */
+    abstract boolean allowDragNDrop();
+
+    /**
      * Provides support for Platform specific specializations of DirectoryFragment.
      */
     private static final class DocumentsTuner extends FragmentTuner {
 
+        // We use this to keep track of whether a model has been previously loaded or not so we can
+        // open the drawer on empty directories on first launch
+        private boolean mModelPreviousLoaded;
+
         public DocumentsTuner(Context context, State state) {
             super(context, state);
         }
@@ -150,7 +155,8 @@
             MenuItem rename = menu.findItem(R.id.menu_rename);
             MenuItem selectAll = menu.findItem(R.id.menu_select_all);
 
-            open.setVisible(true);
+            open.setVisible(mState.action == ACTION_GET_CONTENT ||
+                    mState.action == ACTION_OPEN);
             share.setVisible(false);
             delete.setVisible(false);
             rename.setVisible(false);
@@ -178,16 +184,23 @@
                 showDrawer = true;
             }
 
-            if (showDrawer && !mState.hasInitialLocationChanged() && !isSearch) {
+            if (showDrawer && !mState.hasInitialLocationChanged() && !isSearch
+                    && !mModelPreviousLoaded) {
                 // This noops on layouts without drawer, so no need to guard.
                 ((BaseActivity) mContext).setRootsDrawerOpen(true);
             }
+            mModelPreviousLoaded = true;
         }
 
         @Override
         public boolean enableManagedMode() {
             return false;
         }
+
+        @Override
+        public boolean allowDragNDrop() {
+            return false;
+        }
     }
 
     /**
@@ -252,6 +265,11 @@
                     && mState.stack.root.isDownloads()
                     && mState.stack.size() == 1;
         }
+
+        @Override
+        public boolean allowDragNDrop() {
+            return true;
+        }
     }
 
     private static boolean isDirectory(String mimeType) {
diff --git a/packages/DocumentsUI/src/com/android/documentsui/dirlist/MultiSelectManager.java b/packages/DocumentsUI/src/com/android/documentsui/dirlist/MultiSelectManager.java
index 35d8988..8852985 100644
--- a/packages/DocumentsUI/src/com/android/documentsui/dirlist/MultiSelectManager.java
+++ b/packages/DocumentsUI/src/com/android/documentsui/dirlist/MultiSelectManager.java
@@ -154,6 +154,10 @@
                         // Update the selection to remove any disappeared IDs.
                         mSelection.cancelProvisionalSelection();
                         mSelection.intersect(mModelIds);
+
+                        if (mBandManager != null && mBandManager.isActive()) {
+                            mBandManager.endBandSelect();
+                        }
                     }
 
                     @Override
@@ -940,6 +944,10 @@
          * Layout items are excluded from the GridModel.
          */
         boolean isLayoutItem(int adapterPosition);
+        /**
+         * Items may be in the adapter, but without an attached view.
+         */
+        boolean hasView(int adapterPosition);
     }
 
     /** Recycler view facade implementation backed by good ol' RecyclerView. */
@@ -1061,6 +1069,11 @@
                     return true;
             }
         }
+
+        @Override
+        public boolean hasView(int pos) {
+            return mView.findViewHolderForAdapterPosition(pos) != null;
+        }
     }
 
     public interface Callback {
@@ -1473,10 +1486,14 @@
          *     y-value.
          */
         void startSelection(Point relativeOrigin) {
+            recordVisibleChildren();
+            if (isEmpty()) {
+                // The selection band logic works only if there is at least one visible child.
+                return;
+            }
+
             mIsActive = true;
             mPointer = mHelper.createAbsolutePoint(relativeOrigin);
-
-            recordVisibleChildren();
             mRelativeOrigin = new RelativePoint(mPointer);
             mRelativePointer = new RelativePoint(mPointer);
             computeCurrentSelection();
@@ -1530,7 +1547,11 @@
         private void recordVisibleChildren() {
             for (int i = 0; i < mHelper.getVisibleChildCount(); i++) {
                 int adapterPosition = mHelper.getAdapterPositionAt(i);
-                if (!mHelper.isLayoutItem(adapterPosition) &&
+                // Sometimes the view is not attached, as we notify the multi selection manager
+                // synchronously, while views are attached asynchronously. As a result items which
+                // are in the adapter may not actually have a corresponding view (yet).
+                if (mHelper.hasView(adapterPosition) &&
+                        !mHelper.isLayoutItem(adapterPosition) &&
                         !mKnownPositions.get(adapterPosition)) {
                     mKnownPositions.put(adapterPosition, true);
                     recordItemData(mHelper.getAbsoluteRectForChildViewAt(i), adapterPosition);
@@ -1539,6 +1560,13 @@
         }
 
         /**
+         * Checks if there are any recorded children.
+         */
+        private boolean isEmpty() {
+            return mColumnBounds.size() == 0 || mRowBounds.size() == 0;
+        }
+
+        /**
          * Updates the limits lists and column map with the given item metadata.
          * @param absoluteChildRect The absolute rectangle for the child view being processed.
          * @param adapterPosition The position of the child view being processed.
diff --git a/packages/DocumentsUI/tests/src/com/android/documentsui/dirlist/MultiSelectManager_GridModelTest.java b/packages/DocumentsUI/tests/src/com/android/documentsui/dirlist/MultiSelectManager_GridModelTest.java
index cc119fe..e401de1 100644
--- a/packages/DocumentsUI/tests/src/com/android/documentsui/dirlist/MultiSelectManager_GridModelTest.java
+++ b/packages/DocumentsUI/tests/src/com/android/documentsui/dirlist/MultiSelectManager_GridModelTest.java
@@ -448,6 +448,11 @@
             return false;
         }
 
+        @Override
+        public boolean hasView(int adapterPosition) {
+            return true;
+        }
+
         public static final class Item {
             public String name;
             public Rect rect;
diff --git a/packages/DocumentsUI/tests/src/com/android/documentsui/dirlist/TestSelectionEnvironment.java b/packages/DocumentsUI/tests/src/com/android/documentsui/dirlist/TestSelectionEnvironment.java
index 56e54a6..f564769 100644
--- a/packages/DocumentsUI/tests/src/com/android/documentsui/dirlist/TestSelectionEnvironment.java
+++ b/packages/DocumentsUI/tests/src/com/android/documentsui/dirlist/TestSelectionEnvironment.java
@@ -100,4 +100,9 @@
     public boolean isLayoutItem(int adapterPosition) {
         return false;
     }
+
+    @Override
+    public boolean hasView(int adapterPosition) {
+        return true;
+    }
 }
diff --git a/packages/Keyguard/res/values-af/strings.xml b/packages/Keyguard/res/values-af/strings.xml
index 8ad4c5e..568d82a 100644
--- a/packages/Keyguard/res/values-af/strings.xml
+++ b/packages/Keyguard/res/values-af/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Patroon word vereis wanneer jy profiele wissel"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN word vereis wanneer jy profiele wissel"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Wagwoord word vereis wanneer jy profiele wissel"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Toesteladministrateur het toestel gesluit"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Toestel is handmatig gesluit"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Toestel is <xliff:g id="NUMBER_1">%d</xliff:g> uur lank nie ontsluit nie. Bevestig patroon.</item>
       <item quantity="one">Toestel is <xliff:g id="NUMBER_0">%d</xliff:g> uur lank nie ontsluit nie. Bevestig patroon.</item>
diff --git a/packages/Keyguard/res/values-am/strings.xml b/packages/Keyguard/res/values-am/strings.xml
index 0425622..68e9ff3 100644
--- a/packages/Keyguard/res/values-am/strings.xml
+++ b/packages/Keyguard/res/values-am/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"መገለጫዎችን በሚቀያይሯቸው ጊዜ ሥርዓተ ጥለት ያስፈልጋል"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"መገለጫዎችን በሚቀያይሯቸው ፒን ያስፈልጋል"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"መገለጫዎችን በሚቀያይሯቸው ጊዜ የይለፍ ቃል ያስፈልጋል"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"የመሣሪያ አስተዳዳሪ መሣሪያውን ቆልፏል"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"መሣሪያ በእጅ ተቆልፏል"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">መሳሪያው ለ<xliff:g id="NUMBER_1">%d</xliff:g>ሰዓቶች አልተከፈተም ነበር። ስርዓተ ጥለት ያረጋግጡ።</item>
       <item quantity="other">መሳሪያው ለ<xliff:g id="NUMBER_1">%d</xliff:g>ሰዓቶች አልተከፈተም ነበር። ስርዓተ ጥለት ያረጋግጡ።</item>
diff --git a/packages/Keyguard/res/values-ar/strings.xml b/packages/Keyguard/res/values-ar/strings.xml
index 426d60f..09b78e4 100644
--- a/packages/Keyguard/res/values-ar/strings.xml
+++ b/packages/Keyguard/res/values-ar/strings.xml
@@ -127,6 +127,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"يجب رسم النقش عند تبديل الملفات الشخصية."</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"يجب إدخال رقم التعريف الشخصي عند تبديل الملفات الشخصية."</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"يجب إدخال كلمة المرور عند تبديل الملفات الشخصية."</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"تم حظر الجهاز بواسطة المسؤول"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"تم حظر الجهاز يدويًا"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="zero">لم يتم إلغاء تأمين الجهاز لمدة <xliff:g id="NUMBER_1">%d</xliff:g> من الساعات. تأكيد النقش.</item>
       <item quantity="two">لم يتم إلغاء تأمين الجهاز لمدة ساعتين (<xliff:g id="NUMBER_1">%d</xliff:g>). تأكيد النقش.</item>
diff --git a/packages/Keyguard/res/values-az-rAZ/strings.xml b/packages/Keyguard/res/values-az-rAZ/strings.xml
index 686024b..a7cea19 100644
--- a/packages/Keyguard/res/values-az-rAZ/strings.xml
+++ b/packages/Keyguard/res/values-az-rAZ/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Profillər arasında keçid edərkən qəlib kod tələb olunur"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Profillər arasında keçid edərkən PIN kod tələb olunur"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Profillər arasında keçid edərkən parol tələb olunur"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Cihaz administratoru cihazı kilidlədi"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Cihaz əl ilə kilidləndi"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Cihaz <xliff:g id="NUMBER_1">%d</xliff:g> saat kiliddən çıxarılmayıb. Nümunə kodu təsdiq edin.</item>
       <item quantity="one">Cihaz <xliff:g id="NUMBER_0">%d</xliff:g> saat kiliddən çıxarılmayıb. Nümunə kodu təsdiq edin.</item>
diff --git a/packages/Keyguard/res/values-b+sr+Latn/strings.xml b/packages/Keyguard/res/values-b+sr+Latn/strings.xml
index a0af289..22dc059 100644
--- a/packages/Keyguard/res/values-b+sr+Latn/strings.xml
+++ b/packages/Keyguard/res/values-b+sr+Latn/strings.xml
@@ -121,6 +121,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Treba da unesete šablon kada prelazite sa jednog profila na drugi"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Treba da unesete PIN kada prelazite sa jednog profila na drugi"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Treba da unesete lozinku kada prelazite sa jednog profila na drugi"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Administrator uređaja je zaključao uređaj"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Uređaj je ručno zaključan"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Niste otključali uređaj <xliff:g id="NUMBER_1">%d</xliff:g> sat. Potvrdite šablon.</item>
       <item quantity="few">Niste otključali uređaj <xliff:g id="NUMBER_1">%d</xliff:g> sata. Potvrdite šablon.</item>
diff --git a/packages/Keyguard/res/values-be-rBY/strings.xml b/packages/Keyguard/res/values-be-rBY/strings.xml
index 59464bd..8002f56 100644
--- a/packages/Keyguard/res/values-be-rBY/strings.xml
+++ b/packages/Keyguard/res/values-be-rBY/strings.xml
@@ -123,6 +123,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Пры пераключэнні профіляў патрабуецца ўзор"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Пры пераключэнні профіляў патрабуецца PIN-код"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Пры пераключэнні профіляў патрабуецца пароль"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Адміністратар прылады заблакіраваў прыладу"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Прылада была заблакіравана ўручную"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Прылада не была разблакіравана на працягу <xliff:g id="NUMBER_1">%d</xliff:g> гадзіны. Увядзіце ўзор.</item>
       <item quantity="few">Прылада не была разблакіравана на працягу <xliff:g id="NUMBER_1">%d</xliff:g> гадзін. Увядзіце ўзор.</item>
diff --git a/packages/Keyguard/res/values-bg/strings.xml b/packages/Keyguard/res/values-bg/strings.xml
index 9d4047a..7eb2dbd 100644
--- a/packages/Keyguard/res/values-bg/strings.xml
+++ b/packages/Keyguard/res/values-bg/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"При превключване между потребителските профили се изисква фигура"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"При превключване между потребителските профили се изисква ПИН код"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"При превключване между потребителските профили се изисква парола"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Устройството е заключено от администратора му"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Устройството бе заключено ръчно"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Устройството не е отключвано от <xliff:g id="NUMBER_1">%d</xliff:g> часа. Потвърдете фигурата.</item>
       <item quantity="one">Устройството не е отключвано от <xliff:g id="NUMBER_0">%d</xliff:g> час. Потвърдете фигурата.</item>
diff --git a/packages/Keyguard/res/values-bn-rBD/strings.xml b/packages/Keyguard/res/values-bn-rBD/strings.xml
index 8b62687..8d5dda0 100644
--- a/packages/Keyguard/res/values-bn-rBD/strings.xml
+++ b/packages/Keyguard/res/values-bn-rBD/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"যখন আপনি প্রোফাইলগুলি পাল্টাবেন তখন প্যাটার্নের প্রয়োজন হবে"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"যখন আপনি প্রোফাইলগুলি পাল্টাবেন তখন PIN এর প্রয়োজন হবে"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"যখন আপনি প্রোফাইলগুলি পাল্টাবেন তখন পাসওয়ার্ডের প্রয়োজন হবে"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"ডিভাইস প্রশাসক ডিভাইসটিকে লক করেছেন"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"ডিভাইসটিকে নিজের হাতে লক করা হয়েছে"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">ডিভাইস <xliff:g id="NUMBER_1">%d</xliff:g> ঘন্টার জন্য আনলক করা হয়নি। প্যাটার্ন নিশ্চিত করুন।</item>
       <item quantity="other">ডিভাইস <xliff:g id="NUMBER_1">%d</xliff:g> ঘন্টার জন্য আনলক করা হয়নি। প্যাটার্ন নিশ্চিত করুন।</item>
diff --git a/packages/Keyguard/res/values-bs-rBA/strings.xml b/packages/Keyguard/res/values-bs-rBA/strings.xml
index fdf795c..be73580 100644
--- a/packages/Keyguard/res/values-bs-rBA/strings.xml
+++ b/packages/Keyguard/res/values-bs-rBA/strings.xml
@@ -121,6 +121,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Potreban je uzorak nakon prelaska na drugi profil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Potreban je PIN nakon prelaska na drugi profil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Potrebna je lozinka nakon prelaska na drugi profil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Administrator je zaključao uređaj."</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Uređaj je ručno zaključan"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Uređaj nije bio otključan <xliff:g id="NUMBER_1">%d</xliff:g> sat. Potvrdite obrazac.</item>
       <item quantity="few">Uređaj nije bio otključan <xliff:g id="NUMBER_1">%d</xliff:g> sata. Potvrdite obrazac.</item>
diff --git a/packages/Keyguard/res/values-ca/strings.xml b/packages/Keyguard/res/values-ca/strings.xml
index dc8b178..b542866 100644
--- a/packages/Keyguard/res/values-ca/strings.xml
+++ b/packages/Keyguard/res/values-ca/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Cal introduir el patró en canviar de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Cal introduir el PIN en canviar de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Cal introduir la contrasenya en canviar de perfil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"L\'administrador ha bloquejat el dispositiu"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"El dispositiu s\'ha bloquejat manualment"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Fa <xliff:g id="NUMBER_1">%d</xliff:g> hores que no es desbloqueja el dispositiu. Confirma el patró.</item>
       <item quantity="one">Fa <xliff:g id="NUMBER_0">%d</xliff:g> hora que no es desbloqueja el dispositiu. Confirma el patró.</item>
diff --git a/packages/Keyguard/res/values-cs/strings.xml b/packages/Keyguard/res/values-cs/strings.xml
index cf1dd34..b310323 100644
--- a/packages/Keyguard/res/values-cs/strings.xml
+++ b/packages/Keyguard/res/values-cs/strings.xml
@@ -123,6 +123,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Po přepnutí profilů je vyžadováno gesto"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Po přepnutí profilů je vyžadován kód PIN"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Po přepnutí profilů je vyžadováno heslo"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Správce zařízení toto zařízení uzamkl"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Zařízení bylo ručně uzamčeno"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="few">Zařízení již <xliff:g id="NUMBER_1">%d</xliff:g> hodiny nebylo odemknuto. Potvrďte gesto.</item>
       <item quantity="many">Zařízení již <xliff:g id="NUMBER_1">%d</xliff:g> hodiny nebylo odemknuto. Potvrďte gesto.</item>
diff --git a/packages/Keyguard/res/values-da/strings.xml b/packages/Keyguard/res/values-da/strings.xml
index 0af41f5..b46b536 100644
--- a/packages/Keyguard/res/values-da/strings.xml
+++ b/packages/Keyguard/res/values-da/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Du skal indtaste et mønster, når du skifter profil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Du skal indtaste en pinkode, når du skifter profil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Du skal indtaste en adgangskode, når du skifter profil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Enhedsadministratoren har låst enheden"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Enheden blev låst manuelt"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Enheden blev sidst låst op for <xliff:g id="NUMBER_1">%d</xliff:g> timer siden. Bekræft mønsteret.</item>
       <item quantity="other">Enheden blev sidst låst op for <xliff:g id="NUMBER_1">%d</xliff:g> timer siden. Bekræft mønsteret.</item>
diff --git a/packages/Keyguard/res/values-de/strings.xml b/packages/Keyguard/res/values-de/strings.xml
index 269c5c0..ae731c3 100644
--- a/packages/Keyguard/res/values-de/strings.xml
+++ b/packages/Keyguard/res/values-de/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Beim Profilwechsel ist die Eingabe des Musters erforderlich."</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Beim Profilwechsel ist die Eingabe der PIN erforderlich."</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Beim Profilwechsel ist die Eingabe des Passworts erforderlich."</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Gerät von Geräteadministrator gesperrt"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Gerät manuell gesperrt"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Das Gerät wurde seit <xliff:g id="NUMBER_1">%d</xliff:g> Stunden nicht mehr entsperrt. Bestätige das Muster.</item>
       <item quantity="one">Das Gerät wurde seit <xliff:g id="NUMBER_0">%d</xliff:g> Stunde nicht mehr entsperrt. Bestätige das Muster.</item>
diff --git a/packages/Keyguard/res/values-el/strings.xml b/packages/Keyguard/res/values-el/strings.xml
index be3b349..c54a7fc 100644
--- a/packages/Keyguard/res/values-el/strings.xml
+++ b/packages/Keyguard/res/values-el/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Απαιτείται μοτίβο κατά την εναλλαγή προφίλ"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Απαιτείται PIN κατά την εναλλαγή προφίλ"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Απαιτείται κωδικός πρόσβασης κατά την εναλλαγή προφίλ"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Η συσκευή κλειδώθηκε από το διαχειριστή της"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Η συσκευή κλειδώθηκε με μη αυτόματο τρόπο"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Η συσκευή δεν έχει ξεκλειδωθεί για <xliff:g id="NUMBER_1">%d</xliff:g> ώρες. Επιβεβαιώστε το μοτίβο.</item>
       <item quantity="one">Η συσκευή δεν έχει ξεκλειδωθεί για <xliff:g id="NUMBER_0">%d</xliff:g> ώρα. Επιβεβαιώστε το μοτίβο.</item>
diff --git a/packages/Keyguard/res/values-en-rAU/strings.xml b/packages/Keyguard/res/values-en-rAU/strings.xml
index e2af2d6..e885166 100644
--- a/packages/Keyguard/res/values-en-rAU/strings.xml
+++ b/packages/Keyguard/res/values-en-rAU/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Pattern required when you switch profiles"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN required when you switch profiles"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Password required when you switch profiles"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Device administrator locked device"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Device was locked manually"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Device hasn\'t been unlocked for <xliff:g id="NUMBER_1">%d</xliff:g> hours. Confirm pattern.</item>
       <item quantity="one">Device hasn\'t been unlocked for <xliff:g id="NUMBER_0">%d</xliff:g> hour. Confirm pattern.</item>
diff --git a/packages/Keyguard/res/values-en-rGB/strings.xml b/packages/Keyguard/res/values-en-rGB/strings.xml
index e2af2d6..e885166 100644
--- a/packages/Keyguard/res/values-en-rGB/strings.xml
+++ b/packages/Keyguard/res/values-en-rGB/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Pattern required when you switch profiles"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN required when you switch profiles"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Password required when you switch profiles"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Device administrator locked device"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Device was locked manually"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Device hasn\'t been unlocked for <xliff:g id="NUMBER_1">%d</xliff:g> hours. Confirm pattern.</item>
       <item quantity="one">Device hasn\'t been unlocked for <xliff:g id="NUMBER_0">%d</xliff:g> hour. Confirm pattern.</item>
diff --git a/packages/Keyguard/res/values-en-rIN/strings.xml b/packages/Keyguard/res/values-en-rIN/strings.xml
index e2af2d6..e885166 100644
--- a/packages/Keyguard/res/values-en-rIN/strings.xml
+++ b/packages/Keyguard/res/values-en-rIN/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Pattern required when you switch profiles"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN required when you switch profiles"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Password required when you switch profiles"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Device administrator locked device"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Device was locked manually"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Device hasn\'t been unlocked for <xliff:g id="NUMBER_1">%d</xliff:g> hours. Confirm pattern.</item>
       <item quantity="one">Device hasn\'t been unlocked for <xliff:g id="NUMBER_0">%d</xliff:g> hour. Confirm pattern.</item>
diff --git a/packages/Keyguard/res/values-es-rUS/strings.xml b/packages/Keyguard/res/values-es-rUS/strings.xml
index 6a9b824..df0db2d 100644
--- a/packages/Keyguard/res/values-es-rUS/strings.xml
+++ b/packages/Keyguard/res/values-es-rUS/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Se requiere el patrón al cambiar de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Se requiere el PIN al cambiar de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Se requiere la contraseña al cambiar de perfil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"El administrador bloqueó el dispositivo"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"El dispositivo se bloqueó manualmente"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Hace <xliff:g id="NUMBER_1">%d</xliff:g> horas que no se desbloquea el dispositivo. Confirma el patrón.</item>
       <item quantity="one">Hace <xliff:g id="NUMBER_0">%d</xliff:g> hora que no se desbloquea el dispositivo. Confirma el patrón.</item>
diff --git a/packages/Keyguard/res/values-es/strings.xml b/packages/Keyguard/res/values-es/strings.xml
index 9861d26..dd79a54 100644
--- a/packages/Keyguard/res/values-es/strings.xml
+++ b/packages/Keyguard/res/values-es/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Debes introducir el patrón cuando cambies de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Debes introducir el PIN cuando cambies de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Debes introducir la contraseña cuando cambies de perfil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Un administrador ha bloqueado el dispositivo"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"El dispositivo se ha bloqueado manualmente"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">El dispositivo no se ha desbloqueado durante <xliff:g id="NUMBER_1">%d</xliff:g> horas. Confirma el patrón.</item>
       <item quantity="one">El dispositivo no se ha desbloqueado durante <xliff:g id="NUMBER_0">%d</xliff:g> hora. Confirma el patrón.</item>
diff --git a/packages/Keyguard/res/values-et-rEE/strings.xml b/packages/Keyguard/res/values-et-rEE/strings.xml
index 0a62009..78ae3ca 100644
--- a/packages/Keyguard/res/values-et-rEE/strings.xml
+++ b/packages/Keyguard/res/values-et-rEE/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Profiilide vahetamisel tuleb sisestada muster"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Profiilide vahetamisel tuleb sisestada PIN-kood"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Profiilide vahetamisel tuleb sisestada parool"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Seadme administraator lukustas seadme"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Seade lukustati käsitsi"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Seadet pole avatud <xliff:g id="NUMBER_1">%d</xliff:g> tundi. Kinnitage muster.</item>
       <item quantity="one">Seadet pole avatud <xliff:g id="NUMBER_0">%d</xliff:g> tund. Kinnitage muster.</item>
diff --git a/packages/Keyguard/res/values-eu-rES/strings.xml b/packages/Keyguard/res/values-eu-rES/strings.xml
index 351c05a..7855b16 100644
--- a/packages/Keyguard/res/values-eu-rES/strings.xml
+++ b/packages/Keyguard/res/values-eu-rES/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Eredua marraztu beharko duzu profilez aldatzen baduzu"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN kodea idatzi beharko duzu profilez aldatzen baduzu"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Pasahitza idatzi beharko duzu profilez aldatzen baduzu"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Gailua blokeatu du administratzaileak"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Gailua blokeatu da eskuz"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Gailua ez da desblokeatu <xliff:g id="NUMBER_1">%d</xliff:g> orduz. Berretsi eredua.</item>
       <item quantity="one">Gailua ez da desblokeatu <xliff:g id="NUMBER_0">%d</xliff:g> orduz. Berretsi eredua.</item>
diff --git a/packages/Keyguard/res/values-fa/strings.xml b/packages/Keyguard/res/values-fa/strings.xml
index b8a87a2..6240cef 100644
--- a/packages/Keyguard/res/values-fa/strings.xml
+++ b/packages/Keyguard/res/values-fa/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"بعد از تغییر نمایه‌ها باید الگو وارد شود"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"بعد از تغییر نمایه‌ها باید پین وارد شود"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"بعد از تغییر نمایه‌ها باید گذرواژه وارد شود"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"سرپرست دستگاه آن را قفل کرده است"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"دستگاه به‌صورت دستی قفل شده است"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">قفل دستگاه به مدت <xliff:g id="NUMBER_1">%d</xliff:g> ساعت باز نشده است. الگو را تأیید کنید.</item>
       <item quantity="other">قفل دستگاه به مدت <xliff:g id="NUMBER_1">%d</xliff:g> ساعت باز نشده است. الگو را تأیید کنید.</item>
diff --git a/packages/Keyguard/res/values-fi/strings.xml b/packages/Keyguard/res/values-fi/strings.xml
index a876351..7a0c00f 100644
--- a/packages/Keyguard/res/values-fi/strings.xml
+++ b/packages/Keyguard/res/values-fi/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Kuvio vaaditaan profiilia vaihdettaessa."</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN-koodi vaaditaan profiilia vaihdettaessa."</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Salasana vaaditaan profiilia vaihdettaessa."</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Laitteen järjestelmänvalvoja on lukinnut laitteen."</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Laite lukittiin manuaalisesti."</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Laitteen lukitusta ei ole avattu <xliff:g id="NUMBER_1">%d</xliff:g> tuntiin. Vahvista kuvio.</item>
       <item quantity="one">Laitteen lukitusta ei ole avattu <xliff:g id="NUMBER_0">%d</xliff:g> tuntiin. Vahvista kuvio.</item>
diff --git a/packages/Keyguard/res/values-fr-rCA/strings.xml b/packages/Keyguard/res/values-fr-rCA/strings.xml
index e0e06cf..7259bd3 100644
--- a/packages/Keyguard/res/values-fr-rCA/strings.xml
+++ b/packages/Keyguard/res/values-fr-rCA/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Le motif est exigé lorsque vous changez de profil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Le NIP est exigé lorsque vous changez de profil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Le mot de passe est exigé lorsque vous changez de profil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"L\'administrateur de l\'appareil l\'a verrouillé"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"L\'appareil a été verrouillé manuellement"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">L\'appareil n\'a pas été déverrouillé depuis <xliff:g id="NUMBER_1">%d</xliff:g> heure. Confirmez le motif.</item>
       <item quantity="other">L\'appareil n\'a pas été déverrouillé depuis <xliff:g id="NUMBER_1">%d</xliff:g> heures. Confirmez le motif.</item>
diff --git a/packages/Keyguard/res/values-fr/strings.xml b/packages/Keyguard/res/values-fr/strings.xml
index eff9e91..33424b6 100644
--- a/packages/Keyguard/res/values-fr/strings.xml
+++ b/packages/Keyguard/res/values-fr/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Veuillez saisir le schéma lorsque vous changez de profil."</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Veuillez saisir le code d\'accès lorsque vous changez de profil."</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Veuillez saisir le mot de passe lorsque vous changez de profil."</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Appareil verrouillé par l\'administrateur"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Appareil verrouillé manuellement"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">L\'appareil n\'a pas été déverrouillé depuis <xliff:g id="NUMBER_1">%d</xliff:g> heure. Confirmez le schéma.</item>
       <item quantity="other">L\'appareil n\'a pas été déverrouillé depuis <xliff:g id="NUMBER_1">%d</xliff:g> heures. Confirmez le schéma.</item>
diff --git a/packages/Keyguard/res/values-gl-rES/strings.xml b/packages/Keyguard/res/values-gl-rES/strings.xml
index b27cdad..a508d5c 100644
--- a/packages/Keyguard/res/values-gl-rES/strings.xml
+++ b/packages/Keyguard/res/values-gl-rES/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"É necesario o padrón para cambiar os perfís"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"É necesario o PIN para cambiar os perfís"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"É necesario o contrasinal para cambiar os perfís"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"O administrador do dispositivo bloqueouno"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"O dispositivo bloqueouse manualmente"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">O dispositivo non se desbloqueou durante <xliff:g id="NUMBER_1">%d</xliff:g> horas. Confirma o padrón.</item>
       <item quantity="one">O dispositivo non se desbloqueou durante <xliff:g id="NUMBER_0">%d</xliff:g> hora. Confirma o padrón.</item>
diff --git a/packages/Keyguard/res/values-gu-rIN/strings.xml b/packages/Keyguard/res/values-gu-rIN/strings.xml
index 169bf6e..eddd1a1 100644
--- a/packages/Keyguard/res/values-gu-rIN/strings.xml
+++ b/packages/Keyguard/res/values-gu-rIN/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"જ્યારે તમે પ્રોફાઇલ્સ સ્વિચ કરો ત્યારે પેટર્ન જરૂરી છે"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"જ્યારે તમે પ્રોફાઇલ્સ સ્વિચ કરો ત્યારે PIN જરૂરી છે"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"જ્યારે તમે પ્રોફાઇલ્સ સ્વિચ કરો ત્યારે પાસવર્ડ જરૂરી છે"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"ઉપકરણ વ્યવસ્થાપકે ઉપકરણ લૉક કર્યું"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"ઉપકરણ મેન્યુઅલી લૉક કર્યું હતું"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">ઉપકરણ <xliff:g id="NUMBER_1">%d</xliff:g> કલાક માટે અનલૉક કરવામાં આવ્યું નથી. પેટર્નની પુષ્ટિ કરો.</item>
       <item quantity="other">ઉપકરણ <xliff:g id="NUMBER_1">%d</xliff:g> કલાક માટે અનલૉક કરવામાં આવ્યું નથી. પેટર્નની પુષ્ટિ કરો.</item>
diff --git a/packages/Keyguard/res/values-hi/strings.xml b/packages/Keyguard/res/values-hi/strings.xml
index dd9123b..8069c5e 100644
--- a/packages/Keyguard/res/values-hi/strings.xml
+++ b/packages/Keyguard/res/values-hi/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"प्रोफ़ाइल में स्विच करते समय पैटर्न की आवश्यकता होती है"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"प्रोफ़ाइल में स्विच करते समय पिन की आवश्यकता होती है"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"प्रोफ़ाइल में स्विच करते समय पासवर्ड की आवश्यकता होती है"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"डिवाइस व्यवस्थापक ने डिवाइस को लॉक कर दिया है"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"डिवाइस को मैन्युअल रूप से लॉक किया गया था"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">डिवाइस <xliff:g id="NUMBER_1">%d</xliff:g> घंटे से अनलॉक नहीं किया गया है. पैटर्न की पुष्टि करें.</item>
       <item quantity="other">डिवाइस <xliff:g id="NUMBER_1">%d</xliff:g> घंटे से अनलॉक नहीं किया गया है. पैटर्न की पुष्टि करें.</item>
diff --git a/packages/Keyguard/res/values-hr/strings.xml b/packages/Keyguard/res/values-hr/strings.xml
index 0f3b1ca..044786d 100644
--- a/packages/Keyguard/res/values-hr/strings.xml
+++ b/packages/Keyguard/res/values-hr/strings.xml
@@ -121,6 +121,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Za promjenu profila morate unijeti uzorak"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Za promjenu profila morate unijeti PIN"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Za promjenu profila morate unijeti zaporku"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Administrator uređaja zaključao je uređaj"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Uređaj je ručno zaključan"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Uređaj nije bio otključan <xliff:g id="NUMBER_1">%d</xliff:g> sat. Potvrdite uzorak.</item>
       <item quantity="few">Uređaj nije bio otključan <xliff:g id="NUMBER_1">%d</xliff:g> sata. Potvrdite uzorak.</item>
diff --git a/packages/Keyguard/res/values-hu/strings.xml b/packages/Keyguard/res/values-hu/strings.xml
index 7901698..b4cf471 100644
--- a/packages/Keyguard/res/values-hu/strings.xml
+++ b/packages/Keyguard/res/values-hu/strings.xml
@@ -54,7 +54,7 @@
     <string name="keyguard_accessibility_pin_area" msgid="7903959476607833485">"PIN-kód területe"</string>
     <string name="keyguard_accessibility_sim_pin_area" msgid="3887780775111719336">"SIM PIN-kód területe"</string>
     <string name="keyguard_accessibility_sim_puk_area" msgid="1880823406954996207">"SIM PUK kód területe"</string>
-    <string name="keyguard_accessibility_next_alarm" msgid="7269583073750518672">"A következő riasztás beállított ideje: <xliff:g id="ALARM">%1$s</xliff:g>"</string>
+    <string name="keyguard_accessibility_next_alarm" msgid="7269583073750518672">"A következő ébresztés beállított ideje: <xliff:g id="ALARM">%1$s</xliff:g>"</string>
     <string name="keyboardview_keycode_delete" msgid="3337914833206635744">"Delete"</string>
     <string name="keyboardview_keycode_enter" msgid="2985864015076059467">"Enter"</string>
     <string name="kg_forgot_pattern_button_text" msgid="8852021467868220608">"Elfelejtett minta"</string>
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Ha vált a profilok között, meg kell adni a mintát"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Ha vált a profilok között, meg kell adni a PIN-kódot"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Ha vált a profilok között, meg kell adni a jelszót"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Az eszközadminisztrátor lezárta az eszközt"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Az eszközt manuálisan lezárták"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Az eszköz zárolása <xliff:g id="NUMBER_1">%d</xliff:g> órája nem lett feloldva. Erősítse meg a mintát.</item>
       <item quantity="one">Az eszköz zárolása <xliff:g id="NUMBER_0">%d</xliff:g> órája nem lett feloldva. Erősítse meg a mintát.</item>
diff --git a/packages/Keyguard/res/values-hy-rAM/strings.xml b/packages/Keyguard/res/values-hy-rAM/strings.xml
index e223cb9..aab94fe 100644
--- a/packages/Keyguard/res/values-hy-rAM/strings.xml
+++ b/packages/Keyguard/res/values-hy-rAM/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Պրոֆիլները փոխարկելիս անհրաժեշտ է մուտքագրել նախշը"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Պրոֆիլները փոխարկելիս անհրաժեշտ է մուտքագրել PIN կոդը"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Պրոֆիլները փոխարկելիս անհրաժեշտ է մուտքագրել գաղտնաբառը"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Սարքի ադմինիստրատորը կողպել է սարքը"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Սարքը կողպվել է ձեռքով"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Սարքը չի ապակողպվել <xliff:g id="NUMBER_1">%d</xliff:g> ժամվա ընթացքում: Հաստատեք նախշը:</item>
       <item quantity="other">Սարքը չի ապակողպվել <xliff:g id="NUMBER_1">%d</xliff:g> ժամվա ընթացքում: Հաստատեք նախշը:</item>
diff --git a/packages/Keyguard/res/values-in/strings.xml b/packages/Keyguard/res/values-in/strings.xml
index 7a5642e..6f8e7f1 100644
--- a/packages/Keyguard/res/values-in/strings.xml
+++ b/packages/Keyguard/res/values-in/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Pola diperlukan jika Anda beralih profil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN diperlukan jika Anda beralih profil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Sandi diperlukan jika Anda beralih profil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Perangkat dikunci oleh administrator"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Perangkat dikunci secara manual"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Perangkat belum dibuka kuncinya selama <xliff:g id="NUMBER_1">%d</xliff:g> jam. Konfirmasi pola.</item>
       <item quantity="one">Perangkat belum dibuka kuncinya selama <xliff:g id="NUMBER_0">%d</xliff:g> jam. Konfirmasi pola.</item>
diff --git a/packages/Keyguard/res/values-is-rIS/strings.xml b/packages/Keyguard/res/values-is-rIS/strings.xml
index cece780..279ffcf 100644
--- a/packages/Keyguard/res/values-is-rIS/strings.xml
+++ b/packages/Keyguard/res/values-is-rIS/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Mynsturs er krafist þegar þú skiptir um snið"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN-númers er krafist þegar þú skiptir um snið"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Aðgangsorðs er krafist þegar þú skiptir um snið"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Stjórnandi hefur læst tækinu"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Tækinu var læst handvirkt"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Tækið hefur ekki verið tekið úr lás í <xliff:g id="NUMBER_1">%d</xliff:g> klukkustund. Staðfestu mynstrið.</item>
       <item quantity="other">Tækið hefur ekki verið tekið úr lás í <xliff:g id="NUMBER_1">%d</xliff:g> klukkustundir. Staðfestu mynstrið.</item>
diff --git a/packages/Keyguard/res/values-it/strings.xml b/packages/Keyguard/res/values-it/strings.xml
index 3473863..728974d 100644
--- a/packages/Keyguard/res/values-it/strings.xml
+++ b/packages/Keyguard/res/values-it/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Sequenza obbligatoria dopo aver cambiato profilo"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN obbligatorio dopo aver cambiato profilo"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Password obbligatoria dopo aver cambiato profilo"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"L\'amministratore del dispositivo lo ha bloccato"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Il dispositivo è stato bloccato manualmente"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Il dispositivo non viene sbloccato da <xliff:g id="NUMBER_1">%d</xliff:g> ore. Conferma la sequenza.</item>
       <item quantity="one">Il dispositivo non viene sbloccato da <xliff:g id="NUMBER_0">%d</xliff:g> ora. Conferma la sequenza.</item>
diff --git a/packages/Keyguard/res/values-iw/strings.xml b/packages/Keyguard/res/values-iw/strings.xml
index 316fce7..47d0728 100644
--- a/packages/Keyguard/res/values-iw/strings.xml
+++ b/packages/Keyguard/res/values-iw/strings.xml
@@ -123,6 +123,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"יש להזין את קו ביטול הנעילה בעת החלפת פרופילים"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"‏יש להזין את ה-PIN בעת החלפת פרופילים"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"יש להזין את הסיסמה בעת החלפת פרופילים"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"מנהל המכשיר נעל אותו"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"המכשיר ננעל באופן ידני"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="two">נעילת המכשיר לא בוטלה במשך <xliff:g id="NUMBER_1">%d</xliff:g> שעות. אשר את קו ביטול הנעילה.</item>
       <item quantity="many">נעילת המכשיר לא בוטלה במשך <xliff:g id="NUMBER_1">%d</xliff:g> שעות. אשר את קו ביטול הנעילה.</item>
diff --git a/packages/Keyguard/res/values-ja/strings.xml b/packages/Keyguard/res/values-ja/strings.xml
index c44f2e1..28a6c9f 100644
--- a/packages/Keyguard/res/values-ja/strings.xml
+++ b/packages/Keyguard/res/values-ja/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"プロファイルを切り替えるにはパターンが必要です"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"プロファイルを切り替えるには PIN が必要です"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"プロファイルを切り替えるにはパスワードが必要です"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"端末管理アプリが端末をロックしました"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"端末は手動でロックされました"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">端末のロックが<xliff:g id="NUMBER_1">%d</xliff:g>時間、解除されていません。パターンを確認してください。</item>
       <item quantity="one">端末のロックが<xliff:g id="NUMBER_0">%d</xliff:g>時間、解除されていません。パターンを確認してください。</item>
diff --git a/packages/Keyguard/res/values-ka-rGE/strings.xml b/packages/Keyguard/res/values-ka-rGE/strings.xml
index 3ceb80a..a398e00 100644
--- a/packages/Keyguard/res/values-ka-rGE/strings.xml
+++ b/packages/Keyguard/res/values-ka-rGE/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"პროფილების გადართვისას საჭიროა ნიმუშის შეყვანა"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"პროფილების გადართვისას საჭიროა PIN-კოდის შეყვანა"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"პროფილების გადართვისას საჭიროა პაროლის შეყვანა"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"მოწყობილობა ადმინისტრატორის მიერ ჩაიკეტა"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"მოწყობილობა ხელით ჩაიკეტა"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">მოწყობილობა არ განბლოკილა <xliff:g id="NUMBER_1">%d</xliff:g> საათის განმავლობაში. დაადასტურეთ ნიმუში.</item>
       <item quantity="one">მოწყობილობა არ განბლოკილა <xliff:g id="NUMBER_0">%d</xliff:g> საათის განმავლობაში. დაადასტურეთ ნიმუში.</item>
diff --git a/packages/Keyguard/res/values-kk-rKZ/strings.xml b/packages/Keyguard/res/values-kk-rKZ/strings.xml
index 517f4e9..accef7a 100644
--- a/packages/Keyguard/res/values-kk-rKZ/strings.xml
+++ b/packages/Keyguard/res/values-kk-rKZ/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Профильдерді ауыстырғанда өрнекті енгізу қажет"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Профильдерді ауыстырғанда PIN кодты енгізу қажет"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Профильдерді ауыстырғанда кілтсөзді енгізу қажет"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Құрылғы әкімшісі құрылғыны құлыптады"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Құрылғы қолмен құлыпталды"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Құрылғы құлпы <xliff:g id="NUMBER_1">%d</xliff:g> сағат бойы ашылмады. Өрнекті растаңыз.</item>
       <item quantity="one">Құрылғы құлпы <xliff:g id="NUMBER_0">%d</xliff:g> сағат бойы ашылмады. Өрнекті растаңыз.</item>
diff --git a/packages/Keyguard/res/values-km-rKH/strings.xml b/packages/Keyguard/res/values-km-rKH/strings.xml
index 6afeadf..4d3f6e8 100644
--- a/packages/Keyguard/res/values-km-rKH/strings.xml
+++ b/packages/Keyguard/res/values-km-rKH/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"តម្រូវឲ្យប្រើលំនាំនៅពេលដែលអ្នកប្តូរប្រវត្តិរូប"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"តម្រូវឲ្យបញ្ចូលកូដ PIN នៅពេលដែលអ្នកប្តូរប្រវត្តិរូប"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"តម្រូវឲ្យបញ្ចូលពាក្យសម្ងាត់នៅពេលដែលអ្នកប្តូរប្រវត្តិរូប"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"អ្នកគ្រប់គ្រងឧបករណ៍បានចាក់សោឧបករណ៍"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"ឧបករណ៍ត្រូវបានចាក់សោដោយអ្នកប្រើផ្ទាល់"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">ឧបករណ៍មិនបានដោះសោអស់រយៈពេល <xliff:g id="NUMBER_1">%d</xliff:g> ម៉ោងហើយ។ បញ្ជាប់លំនាំ។</item>
       <item quantity="one">ឧបករណ៍មិនបានដោះសោអស់រយៈពេល <xliff:g id="NUMBER_0">%d</xliff:g> ម៉ោងហើយ។ បញ្ជាក់លំនាំ។</item>
diff --git a/packages/Keyguard/res/values-kn-rIN/strings.xml b/packages/Keyguard/res/values-kn-rIN/strings.xml
index 7724ef7..3e937fa 100644
--- a/packages/Keyguard/res/values-kn-rIN/strings.xml
+++ b/packages/Keyguard/res/values-kn-rIN/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"ನೀವು ಪ್ರೊಫೈಲ್‌ಗಳನ್ನು ಬದಲಾಯಿಸಿದಾಗ ಪ್ಯಾಟರ್ನ್ ಅಗತ್ಯವಿರುತ್ತದೆ"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"ನೀವು ಪ್ರೊಫೈಲ್‌ಗಳನ್ನು ಬದಲಾಯಿಸಿದಾಗ ಪಿನ್ ಅಗತ್ಯವಿರುತ್ತದೆ"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"ನೀವು ಪ್ರೊಫೈಲ್‌ಗಳನ್ನು ಬದಲಾಯಿಸಿದಾಗ ಪಾಸ್‌ವರ್ಡ್‌ ಅಗತ್ಯವಿರುತ್ತದೆ"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"ಸಾಧನ ನಿರ್ವಾಹಕರು ಸಾಧನವನ್ನು ಲಾಕ್‌ ಮಾಡಿದ್ದಾರೆ"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"ಸಾಧನವನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ಲಾಕ್‌ ಮಾಡಲಾಗಿದೆ"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">ಸಾಧನವನ್ನು <xliff:g id="NUMBER_1">%d</xliff:g> ಗಂಟೆಗಳ ಕಾಲ ಅನ್‌ಲಾಕ್‌ ಮಾಡಲಾಗಿಲ್ಲ. ನಮೂನೆಯನ್ನು ಖಚಿತಪಡಿಸಿ.</item>
       <item quantity="other">ಸಾಧನವನ್ನು <xliff:g id="NUMBER_1">%d</xliff:g> ಗಂಟೆಗಳ ಕಾಲ ಅನ್‌ಲಾಕ್‌ ಮಾಡಲಾಗಿಲ್ಲ. ನಮೂನೆಯನ್ನು ಖಚಿತಪಡಿಸಿ.</item>
diff --git a/packages/Keyguard/res/values-ko/strings.xml b/packages/Keyguard/res/values-ko/strings.xml
index a4860ce..2eeef2b 100644
--- a/packages/Keyguard/res/values-ko/strings.xml
+++ b/packages/Keyguard/res/values-ko/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"프로필을 전환하려면 패턴이 필요합니다."</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"프로필을 전환하려면 PIN이 필요합니다."</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"프로필을 전환하려면 비밀번호가 필요합니다."</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"기기 관리자가 기기를 잠금 설정함"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"기기가 수동으로 잠금 설정됨"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other"><xliff:g id="NUMBER_1">%d</xliff:g>시간 이상 기기가 잠금 해제되지 않았습니다. 패턴을 확인하세요.</item>
       <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g>시간 이상 기기가 잠금 해제되지 않았습니다. 패턴을 확인하세요.</item>
diff --git a/packages/Keyguard/res/values-ky-rKG/strings.xml b/packages/Keyguard/res/values-ky-rKG/strings.xml
index 098d5a2..a0075a9 100644
--- a/packages/Keyguard/res/values-ky-rKG/strings.xml
+++ b/packages/Keyguard/res/values-ky-rKG/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Профилдерди которуштурганда графикалык ачкыч талап кылынат"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Профилдерди которуштурганда PIN код талап кылынат"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Профилдерди которуштурганда сырсөз талап кылынат"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Түзмөктүн администратору түзмөктү кулпулап койду"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Түзмөк кол менен кулпуланды"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Түзмөктүн кулпусу <xliff:g id="NUMBER_1">%d</xliff:g> саат бою ачылган жок. Cүрөт үлгүсүн ырастаңыз.</item>
       <item quantity="one">Түзмөктүн кулпусу <xliff:g id="NUMBER_0">%d</xliff:g> саат бою ачылган жок. Cүрөт үлгүсүн ырастаңыз.</item>
diff --git a/packages/Keyguard/res/values-lo-rLA/strings.xml b/packages/Keyguard/res/values-lo-rLA/strings.xml
index 0c59008..8e7c813 100644
--- a/packages/Keyguard/res/values-lo-rLA/strings.xml
+++ b/packages/Keyguard/res/values-lo-rLA/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"ຈຳເປັນຕ້ອງມີແບບຮູບ ເມື່ອທ່ານປ່ຽນໂປຣໄຟລ໌"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"ຈຳເປັນຕ້ອງມີ PIN ເມື່ອທ່ານປ່ຽນໂປຣໄຟລ໌"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"ຈຳເປັນຕ້ອງມີລະຫັດຜ່ານ ເມື່ອທ່ານປ່ຽນໂປຣໄຟລ໌"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"ອຸປະກອນຖືກລັອກໂດຍຜູ້ເບິ່ງແຍງລະບົບ"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"ອຸປະກອນຖືກສັ່ງໃຫ້ລັອກ"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">ອຸປະກອນບໍ່ໄດ້ຖືກປົດລັອກເປັນເວລາ <xliff:g id="NUMBER_1">%d</xliff:g> ຊົ່ວໂມງ. ຢືນ​ຢັນ​​ແບບຮູບ​.</item>
       <item quantity="one">ອຸປະກອນບໍ່ໄດ້ຖືກປົດລັອກເປັນເວລາ <xliff:g id="NUMBER_0">%d</xliff:g> ຊົ່ວໂມງ. ຢືນຢັນແບບຮູບ.</item>
diff --git a/packages/Keyguard/res/values-lt/strings.xml b/packages/Keyguard/res/values-lt/strings.xml
index 109adfb..653c089 100644
--- a/packages/Keyguard/res/values-lt/strings.xml
+++ b/packages/Keyguard/res/values-lt/strings.xml
@@ -123,6 +123,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Perjungiant profilius būtinas atrakinimo piešinys"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Perjungiant profilius būtinas PIN kodas"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Perjungiant profilius būtinas slaptažodis"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Įrenginio administratorius užrakino įrenginį"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Įrenginys užrakintas neautomatiškai"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Įrenginys nebuvo atrakintas <xliff:g id="NUMBER_1">%d</xliff:g> valandą. Patvirtinkite atrakinimo piešinį.</item>
       <item quantity="few">Įrenginys nebuvo atrakintas <xliff:g id="NUMBER_1">%d</xliff:g> valandas. Patvirtinkite atrakinimo piešinį.</item>
diff --git a/packages/Keyguard/res/values-lv/strings.xml b/packages/Keyguard/res/values-lv/strings.xml
index bd349d7..449659e 100644
--- a/packages/Keyguard/res/values-lv/strings.xml
+++ b/packages/Keyguard/res/values-lv/strings.xml
@@ -121,6 +121,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Pārslēdzot profilus, ir jāievada atbloķēšanas kombinācija."</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Pārslēdzot profilus, ir jāievada PIN kods."</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Pārslēdzot profilus, ir jāievada parole."</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Ierīces administratora bloķēta ierīce"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Ierīce tika bloķēta manuāli"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="zero">Ierīce nav tikusi atbloķēta <xliff:g id="NUMBER_1">%d</xliff:g> stundas. Apstipriniet kombināciju.</item>
       <item quantity="one">Ierīce nav tikusi atbloķēta <xliff:g id="NUMBER_1">%d</xliff:g> stundu. Apstipriniet kombināciju.</item>
diff --git a/packages/Keyguard/res/values-mk-rMK/strings.xml b/packages/Keyguard/res/values-mk-rMK/strings.xml
index 8d110ee..5401d48 100644
--- a/packages/Keyguard/res/values-mk-rMK/strings.xml
+++ b/packages/Keyguard/res/values-mk-rMK/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Потребна е шема кога променувате профили"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Потребен е ПИН-код кога променувате профили"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Потребна е лозинка кога променувате профили"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Администраторот на уредот го заклучил уредот"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Уредот е заклучен рачно"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Уредот не е отклучен за <xliff:g id="NUMBER_1">%d</xliff:g> час. Потврдете ја шемата.</item>
       <item quantity="other">Уредот не е отклучен за <xliff:g id="NUMBER_1">%d</xliff:g> часа. Потврдете ја шемата.</item>
diff --git a/packages/Keyguard/res/values-ml-rIN/strings.xml b/packages/Keyguard/res/values-ml-rIN/strings.xml
index 3a0a1a9..5eaca2e 100644
--- a/packages/Keyguard/res/values-ml-rIN/strings.xml
+++ b/packages/Keyguard/res/values-ml-rIN/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"പ്രൊഫൈലുകൾ തമ്മിൽ മാറുമ്പോൾ പാറ്റേൺ ആവശ്യമാണ്"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"പ്രൊഫൈലുകൾ തമ്മിൽ മാറുമ്പോൾ പിൻ ആവശ്യമാണ്"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"പ്രൊഫൈലുകൾ തമ്മിൽ മാറുമ്പോൾ പാസ്‌വേഡ് ആവശ്യമാണ്"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"ഉപകരണത്തെ ഉപകരണ അഡ്മിനിസ്ട്രേറ്റർ ലോക്കുചെയ്തു"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"ഉപകരണം നേരിട്ട് ലോക്കുചെയ്തു"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">ഉപകരണം <xliff:g id="NUMBER_1">%d</xliff:g> മണിക്കൂറായി അൺലോക്ക് ചെയ്തിട്ടില്ല. പാറ്റേൺ സ്ഥിരീകരിക്കുക.</item>
       <item quantity="one">ഉപകരണം <xliff:g id="NUMBER_0">%d</xliff:g> മണിക്കൂറായി അൺലോക്ക് ചെയ്തിട്ടില്ല. പാറ്റേൺ സ്ഥിരീകരിക്കുക.</item>
diff --git a/packages/Keyguard/res/values-mn-rMN/strings.xml b/packages/Keyguard/res/values-mn-rMN/strings.xml
index a93164a..5a64df1 100644
--- a/packages/Keyguard/res/values-mn-rMN/strings.xml
+++ b/packages/Keyguard/res/values-mn-rMN/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Профайлыг солиход зурган түгжээ оруулах шаардлагатай"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Профайлыг солиход PIN оруулах шаардлагатай"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Профайлыг солиход нууц үг оруулах шаардлагатай"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Төхөөрөмжийн администратор төхөөрөмжийг түгжсэн"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Төхөөрөмжийг гараар түгжсэн"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Төхөөрөмжийн түгжээг <xliff:g id="NUMBER_1">%d</xliff:g> цагийн турш тайлаагүй байна. Зурган хээг баталгаажуулна уу.</item>
       <item quantity="one">Төхөөрөмжийн түгжээг <xliff:g id="NUMBER_0">%d</xliff:g> цагийн турш тайлаагүй байна. Зурган хээг баталгаажуулна уу.</item>
diff --git a/packages/Keyguard/res/values-mr-rIN/strings.xml b/packages/Keyguard/res/values-mr-rIN/strings.xml
index e15c4b9..859d99a 100644
--- a/packages/Keyguard/res/values-mr-rIN/strings.xml
+++ b/packages/Keyguard/res/values-mr-rIN/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"आपण प्रोफाईल स्विच करता तेव्‍हा नमुना आवश्‍यक आहे"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"आपण प्रोफाईल स्विच करता तेव्‍हा पिन आवश्‍यक आहे"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"आपण प्रोफाईल स्विच करता तेव्‍हा संकेतशब्द आवश्‍यक आहे"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"डिव्हाइस प्रशासकाने डिव्हाइस लॉक केले"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"डिव्हाइस व्यक्तिचलितरित्या लॉक केले होते"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">डिव्‍हाइस <xliff:g id="NUMBER_1">%d</xliff:g> तासासाठी अनलॉक केले गेले नाही. नमुन्याची पुष्टी करा.</item>
       <item quantity="other">डिव्‍हाइस <xliff:g id="NUMBER_1">%d</xliff:g> तासांसाठी अनलॉक केले गेले नाही. नमुन्याची पुष्टी करा.</item>
diff --git a/packages/Keyguard/res/values-ms-rMY/strings.xml b/packages/Keyguard/res/values-ms-rMY/strings.xml
index 42a11ff..803d40a 100644
--- a/packages/Keyguard/res/values-ms-rMY/strings.xml
+++ b/packages/Keyguard/res/values-ms-rMY/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Corak diperlukan apabila anda menukar profil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN diperlukan apabila anda menukar profil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Kata laluan diperlukan apabila anda menukar profil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Pentadbir peranti mengunci peranti"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Peranti telah dikunci secara manual"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Peranti tidak dibuka kuncinya selama <xliff:g id="NUMBER_1">%d</xliff:g> jam. Sahkan corak.</item>
       <item quantity="one">Peranti tidak dibuka kuncinya selama <xliff:g id="NUMBER_0">%d</xliff:g> jam. Sahkan corak.</item>
diff --git a/packages/Keyguard/res/values-my-rMM/strings.xml b/packages/Keyguard/res/values-my-rMM/strings.xml
index f384079..017a6b8 100644
--- a/packages/Keyguard/res/values-my-rMM/strings.xml
+++ b/packages/Keyguard/res/values-my-rMM/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"ပရိုဖိုင်များကို သင် ပြောင်းလျှင် ပုံစံ လိုအပါသည်"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"ပရိုဖိုင်များကို သင် ပြောင်းလျှင် PIN လိုအပါသည်"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"ပရိုဖိုင်များကို သင် ပြောင်းလျှင် စကားဝှက် လိုအပါသည်"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"စက်ပစ္စည်းစီမံခန့်ခွဲသူသည် စက်ပစ္စည်းကို လော့ခ်ချထားသည်"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"စက်ပစ္စည်းကို ကိုယ်တိုင်ကိုယ်ကျ လော့ခ်ချထားခဲ့သည်"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">စက်ကိရိယာအား <xliff:g id="NUMBER_1">%d</xliff:g> နာရီကြာ သော့ပိတ်ထား၏။ ပုံစံအား အတည်ပြုပါ။</item>
       <item quantity="one">စက်ကိရိယာအား <xliff:g id="NUMBER_0">%d</xliff:g> နာရီကြာ သော့ပိတ်ထား၏။ ပုံစံအား အတည်ပြုပါ။</item>
diff --git a/packages/Keyguard/res/values-nb/strings.xml b/packages/Keyguard/res/values-nb/strings.xml
index 210ad18..1bdf444 100644
--- a/packages/Keyguard/res/values-nb/strings.xml
+++ b/packages/Keyguard/res/values-nb/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Du må tegne mønsteret når du bytter profil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Du må skrive inn PIN-koden når du bytter profil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Du må skrive inn passordet når du bytter profil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Enhetsadministratoren har låst enheten"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Enheten ble låst manuelt"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Enheten er ikke blitt låst opp de siste <xliff:g id="NUMBER_1">%d</xliff:g> timene. Bekreft mønsteret.</item>
       <item quantity="one">Enheten er ikke blitt låst opp den siste <xliff:g id="NUMBER_0">%d</xliff:g> timen. Bekreft mønsteret.</item>
diff --git a/packages/Keyguard/res/values-ne-rNP/strings.xml b/packages/Keyguard/res/values-ne-rNP/strings.xml
index 99d4ff0..2cf863d 100644
--- a/packages/Keyguard/res/values-ne-rNP/strings.xml
+++ b/packages/Keyguard/res/values-ne-rNP/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"तपाईँले प्रोफाइलहरू स्विच गर्नुहुँदा ढाँचा आवश्यक"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"तपाईँले प्रोफाइलहरू स्विच गर्नुहुँदा PIN आवश्यक"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"तपाईँले प्रोफाइलहरू स्विच गर्नुहुँदा पासवर्ड आवश्यक"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"यन्त्रको प्रशासकले यन्त्रलाई लक गरेको छ"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"यन्त्रलाई म्यानुअल तरिकाले लक गरिएको थियो"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other"> यन्त्र <xliff:g id="NUMBER_1">%d</xliff:g> घन्टा देखि अनलक भएको छैन। ढाँचा पुष्टि गर्नुहोस्।</item>
       <item quantity="one"> यन्त्र <xliff:g id="NUMBER_0">%d</xliff:g> घन्टा देखि अनलक भएको छैन। ढाँचा पुष्टि गर्नुहोस्। </item>
diff --git a/packages/Keyguard/res/values-nl/strings.xml b/packages/Keyguard/res/values-nl/strings.xml
index 873a523..ab10444 100644
--- a/packages/Keyguard/res/values-nl/strings.xml
+++ b/packages/Keyguard/res/values-nl/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Patroon is vereist wanneer je schakelt tussen profielen"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Pincode is vereist wanneer je schakelt tussen profielen"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Wachtwoord is vereist wanneer je schakelt tussen profielen"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Apparaatbeheerder heeft apparaat vergrendeld"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Apparaat is handmatig vergrendeld"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Apparaat is al <xliff:g id="NUMBER_1">%d</xliff:g> uur niet ontgrendeld. Bevestig het patroon.</item>
       <item quantity="one">Apparaat is al <xliff:g id="NUMBER_0">%d</xliff:g> uur niet ontgrendeld. Bevestig het patroon.</item>
diff --git a/packages/Keyguard/res/values-pa-rIN/strings.xml b/packages/Keyguard/res/values-pa-rIN/strings.xml
index 54d1040..b5af2e1 100644
--- a/packages/Keyguard/res/values-pa-rIN/strings.xml
+++ b/packages/Keyguard/res/values-pa-rIN/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"ਪ੍ਰੋਫਾਈਲਾਂ ਬਦਲਣ ਦੌਰਾਨ ਪੈਟਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"ਪ੍ਰੋਫਾਈਲਾਂ ਬਦਲਣ ਦੌਰਾਨ PIN ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"ਪ੍ਰੋਫਾਈਲਾਂ ਬਦਲਣ ਦੌਰਾਨ ਪਾਸਵਰਡ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"ਡੀਵਾਈਸ ਪ੍ਰਸ਼ਾਸਕ ਨੇ ਡੀਵਾਈਸ ਨੂੰ ਲੌਕ ਕੀਤਾ"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"ਡੀਵਾਈਸ ਨੂੰ ਹੱਥੀਂ ਲੌਕ ਕੀਤਾ ਗਿਆ ਸੀ"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">ਡਿਵਾਈਸ <xliff:g id="NUMBER_1">%d</xliff:g> ਘੰਟਿਆਂ ਤੋਂ ਅਨਲੌਕ ਨਹੀਂ ਕੀਤੀ ਗਈ ਹੈ। ਪੈਟਰਨ ਦੀ ਪੁਸ਼ਟੀ ਕਰੋ।</item>
       <item quantity="other">ਡਿਵਾਈਸ <xliff:g id="NUMBER_1">%d</xliff:g> ਘੰਟਿਆਂ ਤੋਂ ਅਨਲੌਕ ਨਹੀਂ ਕੀਤੀ ਗਈ ਹੈ। ਪੈਟਰਨ ਦੀ ਪੁਸ਼ਟੀ ਕਰੋ।</item>
diff --git a/packages/Keyguard/res/values-pl/strings.xml b/packages/Keyguard/res/values-pl/strings.xml
index 6a2e81a..ee20850 100644
--- a/packages/Keyguard/res/values-pl/strings.xml
+++ b/packages/Keyguard/res/values-pl/strings.xml
@@ -123,6 +123,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Po przełączeniu profili wymagany jest wzór"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Po przełączeniu profili wymagany jest kod PIN"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Po przełączeniu profili wymagane jest hasło"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Urządzenie zostało zablokowane przez administratora"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Urządzenie zostało zablokowane ręcznie"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="few">Urządzenie nie zostało odblokowane od <xliff:g id="NUMBER_1">%d</xliff:g> godzin. Potwierdź wzór.</item>
       <item quantity="many">Urządzenie nie zostało odblokowane od <xliff:g id="NUMBER_1">%d</xliff:g> godzin. Potwierdź wzór.</item>
diff --git a/packages/Keyguard/res/values-pt-rBR/strings.xml b/packages/Keyguard/res/values-pt-rBR/strings.xml
index 2d1a703..d7215c1 100644
--- a/packages/Keyguard/res/values-pt-rBR/strings.xml
+++ b/packages/Keyguard/res/values-pt-rBR/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"O padrão é exigido quando você troca de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"O PIN é exigido quando você troca de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"A senha é exigida quando você troca de perfil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"O dispositivo foi bloqueado pelo administrador"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"O dispositivo foi bloqueado manualmente"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">O dispositivo não foi desbloqueado há <xliff:g id="NUMBER_1">%d</xliff:g> horas. Confirme o padrão.</item>
       <item quantity="other">O dispositivo não foi desbloqueado há <xliff:g id="NUMBER_1">%d</xliff:g> horas. Confirme o padrão.</item>
diff --git a/packages/Keyguard/res/values-pt-rPT/strings.xml b/packages/Keyguard/res/values-pt-rPT/strings.xml
index 5a4973b..f0b2bbc 100644
--- a/packages/Keyguard/res/values-pt-rPT/strings.xml
+++ b/packages/Keyguard/res/values-pt-rPT/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"É necessário um padrão quando muda de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"É necessário um PIN quando muda de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"É necessária uma palavra-passe quando muda de perfil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"O administrador do dispositivo bloqueou o dispositivo"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"O dispositivo foi bloqueado manualmente"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">O dispositivo não é desbloqueado há <xliff:g id="NUMBER_1">%d</xliff:g> horas. Confirme a sequência.</item>
       <item quantity="one">O dispositivo não é desbloqueado há <xliff:g id="NUMBER_0">%d</xliff:g> hora. Confirme a sequência.</item>
diff --git a/packages/Keyguard/res/values-pt/strings.xml b/packages/Keyguard/res/values-pt/strings.xml
index 2d1a703..d7215c1 100644
--- a/packages/Keyguard/res/values-pt/strings.xml
+++ b/packages/Keyguard/res/values-pt/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"O padrão é exigido quando você troca de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"O PIN é exigido quando você troca de perfil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"A senha é exigida quando você troca de perfil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"O dispositivo foi bloqueado pelo administrador"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"O dispositivo foi bloqueado manualmente"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">O dispositivo não foi desbloqueado há <xliff:g id="NUMBER_1">%d</xliff:g> horas. Confirme o padrão.</item>
       <item quantity="other">O dispositivo não foi desbloqueado há <xliff:g id="NUMBER_1">%d</xliff:g> horas. Confirme o padrão.</item>
diff --git a/packages/Keyguard/res/values-ro/strings.xml b/packages/Keyguard/res/values-ro/strings.xml
index 0a5d4fe..bd9139d 100644
--- a/packages/Keyguard/res/values-ro/strings.xml
+++ b/packages/Keyguard/res/values-ro/strings.xml
@@ -121,6 +121,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Modelul este necesar când comutați între profiluri"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Codul PIN este necesar când comutați între profiluri"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Parola este necesară când comutați între profiluri"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Administratorul dispozitivului a blocat dispozitivul"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Dispozitivul a fost blocat manual"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="few">Dispozitivul nu a fost deblocat de <xliff:g id="NUMBER_1">%d</xliff:g> ore. Confirmați modelul.</item>
       <item quantity="other">Dispozitivul nu a fost deblocat de <xliff:g id="NUMBER_1">%d</xliff:g> de ore. Confirmați modelul.</item>
diff --git a/packages/Keyguard/res/values-ru/strings.xml b/packages/Keyguard/res/values-ru/strings.xml
index d56263a..264e42c 100644
--- a/packages/Keyguard/res/values-ru/strings.xml
+++ b/packages/Keyguard/res/values-ru/strings.xml
@@ -123,6 +123,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"После смены профиля необходимо ввести графический ключ"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"После смены профиля необходимо ввести PIN-код"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"После смены профиля необходимо ввести пароль"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Администратор заблокировал устройство"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Устройство было заблокировано вручную"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Устройство не разблокировали <xliff:g id="NUMBER_1">%d</xliff:g> час. Введите графический ключ ещё раз.</item>
       <item quantity="few">Устройство не разблокировали <xliff:g id="NUMBER_1">%d</xliff:g> часа. Введите графический ключ ещё раз.</item>
diff --git a/packages/Keyguard/res/values-si-rLK/strings.xml b/packages/Keyguard/res/values-si-rLK/strings.xml
index a0170fb..6c40103 100644
--- a/packages/Keyguard/res/values-si-rLK/strings.xml
+++ b/packages/Keyguard/res/values-si-rLK/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"ඔබ පැතිකඩවල් මාරු කරන විට රටාව අවශ්‍යයි"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"ඔබ පැතිකඩවල් මාරු කරන විට PIN අංකය අවශ්‍යයි"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"ඔබ පැතිකඩවල් මාරු කරන විට මුරපදය අවශ්‍යයි"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"උපාංග පරිපාලක උපාංගය අගුලු දමන ලදී"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"උපාංගය හස්තීයව අගුලු දමන ලදී"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">උපාංගය පැය <xliff:g id="NUMBER_1">%d</xliff:g>කට අගුලු හැර නැත. රටාව තහවුරු කරන්න.</item>
       <item quantity="other">උපාංගය පැය <xliff:g id="NUMBER_1">%d</xliff:g>කට අගුලු හැර නැත. රටාව තහවුරු කරන්න.</item>
diff --git a/packages/Keyguard/res/values-sk/strings.xml b/packages/Keyguard/res/values-sk/strings.xml
index 008a7b0..4cbfd51 100644
--- a/packages/Keyguard/res/values-sk/strings.xml
+++ b/packages/Keyguard/res/values-sk/strings.xml
@@ -123,6 +123,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Po prepnutí profilov musíte zadať bezpečnostný vzor"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Po prepnutí profilov musíte zadať kód PIN"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Po prepnutí profilov musíte zadať heslo"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Zariadenie uzamkol správca"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Zariadenie bolo uzamknuté ručne"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="few">Zariadenie nebolo odomknuté <xliff:g id="NUMBER_1">%d</xliff:g> hodiny. Potvrďte vzor.</item>
       <item quantity="many">Zariadenie nebolo odomknuté <xliff:g id="NUMBER_1">%d</xliff:g> hodiny. Potvrďte vzor.</item>
diff --git a/packages/Keyguard/res/values-sl/strings.xml b/packages/Keyguard/res/values-sl/strings.xml
index a7cd7ab..91083f5 100644
--- a/packages/Keyguard/res/values-sl/strings.xml
+++ b/packages/Keyguard/res/values-sl/strings.xml
@@ -123,6 +123,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Po preklopu profilov je treba vnesti vzorec"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Po preklopu profilov je treba vnesti kodo PIN"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Po preklopu profilov je treba vnesti geslo"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Skrbnik naprave je zaklenil napravo"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Naprava je bila ročno zaklenjena"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Naprava ni bila odklenjena <xliff:g id="NUMBER_1">%d</xliff:g> uro. Potrdite vzorec.</item>
       <item quantity="two">Naprava ni bila odklenjena <xliff:g id="NUMBER_1">%d</xliff:g> uri. Potrdite vzorec.</item>
diff --git a/packages/Keyguard/res/values-sq-rAL/strings.xml b/packages/Keyguard/res/values-sq-rAL/strings.xml
index 870f3bf..7f4becb 100644
--- a/packages/Keyguard/res/values-sq-rAL/strings.xml
+++ b/packages/Keyguard/res/values-sq-rAL/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Kërkohet motivi kur ndryshon profilet"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Kërkohet kodi PIN kur ndryshon profilet"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Kërkohet fjalëkalimi kur ndryshon profilet"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Administratori i pajisjes e kyçi pajisjen"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Pajisja është kyçur manualisht"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Pajisja nuk është shkyçur për <xliff:g id="NUMBER_1">%d</xliff:g> orë. Konfirmo motivin.</item>
       <item quantity="one">Pajisja nuk është shkyçur për <xliff:g id="NUMBER_0">%d</xliff:g> orë. Konfirmo motivin.</item>
diff --git a/packages/Keyguard/res/values-sr/strings.xml b/packages/Keyguard/res/values-sr/strings.xml
index 20f098e..62614a6 100644
--- a/packages/Keyguard/res/values-sr/strings.xml
+++ b/packages/Keyguard/res/values-sr/strings.xml
@@ -121,6 +121,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Треба да унесете шаблон када прелазите са једног профила на други"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Треба да унесете PIN када прелазите са једног профила на други"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Треба да унесете лозинку када прелазите са једног профила на други"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Администратор уређаја је закључао уређај"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Уређај је ручно закључан"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Нисте откључали уређај <xliff:g id="NUMBER_1">%d</xliff:g> сат. Потврдите шаблон.</item>
       <item quantity="few">Нисте откључали уређај <xliff:g id="NUMBER_1">%d</xliff:g> сата. Потврдите шаблон.</item>
diff --git a/packages/Keyguard/res/values-sv/strings.xml b/packages/Keyguard/res/values-sv/strings.xml
index a77d79e..378f047 100644
--- a/packages/Keyguard/res/values-sv/strings.xml
+++ b/packages/Keyguard/res/values-sv/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Du måste ange grafiskt lösenord när du byter profil"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Du måste ange pinkod när du byter profil"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Du måste ange lösenord när du byter profil"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Enhetsadministratören har låst enheten"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Enheten har låsts manuellt"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Enheten har inte låsts upp på <xliff:g id="NUMBER_1">%d</xliff:g> timmar. Bekräfta det grafiska lösenordet.</item>
       <item quantity="one">Enheten har inte låsts upp på <xliff:g id="NUMBER_0">%d</xliff:g> timme. Bekräfta det grafiska lösenordet.</item>
diff --git a/packages/Keyguard/res/values-sw/strings.xml b/packages/Keyguard/res/values-sw/strings.xml
index 8413dad..b570e9f 100644
--- a/packages/Keyguard/res/values-sw/strings.xml
+++ b/packages/Keyguard/res/values-sw/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Mchoro unahitajika unapobadili wasifu"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"PIN inahitajika unapobadili wasifu"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Nenosiri linahitajika unapobadili wasifu"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Msimamizi wa kifaa amekifunga"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Umefunga kifaa mwenyewe"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Kifaa hakijafunguliwa kwa saa <xliff:g id="NUMBER_1">%d</xliff:g>. Thibitisha mchoro.</item>
       <item quantity="one">Kifaa hakijafunguliwa kwa saa <xliff:g id="NUMBER_0">%d</xliff:g>. Thibitisha mchoro.</item>
diff --git a/packages/Keyguard/res/values-ta-rIN/strings.xml b/packages/Keyguard/res/values-ta-rIN/strings.xml
index e43238f..2e3f588 100644
--- a/packages/Keyguard/res/values-ta-rIN/strings.xml
+++ b/packages/Keyguard/res/values-ta-rIN/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"சுயவிவரங்களுக்கு இடையே மாறும் போது, வடிவத்தை வரைய வேண்டும்"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"சுயவிவரங்களுக்கு இடையே மாறும் போது, பின்னை உள்ளிட வேண்டும்"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"சுயவிவரங்களுக்கு இடையே மாறும் போது, கடவுச்சொல்லை உள்ளிட வேண்டும்"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"சாதன நிர்வாகி சாதனத்தைப் பூட்டியுள்ளார்"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"பயனர் சாதனத்தைப் பூட்டியுள்ளார்"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other"><xliff:g id="NUMBER_1">%d</xliff:g> மணிநேரமாகச் சாதனம் திறக்கப்படவில்லை. வடிவத்தை உறுதிப்படுத்தவும்.</item>
       <item quantity="one"><xliff:g id="NUMBER_0">%d</xliff:g> மணிநேரமாகச் சாதனம் திறக்கப்படவில்லை. வடிவத்தை உறுதிப்படுத்தவும்.</item>
diff --git a/packages/Keyguard/res/values-te-rIN/strings.xml b/packages/Keyguard/res/values-te-rIN/strings.xml
index 7c9b37d..6c521aa 100644
--- a/packages/Keyguard/res/values-te-rIN/strings.xml
+++ b/packages/Keyguard/res/values-te-rIN/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"మీరు ప్రొఫైల్‌లు మారినప్పుడు నమూనా నమోదు చేయడం ఆవశ్యకం"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"మీరు ప్రొఫైల్‌లు మారినప్పుడు PIN నమోదు చేయడం ఆవశ్యకం"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"మీరు ప్రొఫైల్‌లు మారినప్పుడు పాస్‌వర్డ్ నమోదు చేయడం ఆవశ్యకం"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"పరికర నిర్వాహకులు పరికరాన్ని లాక్ చేసారు"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"పరికరం మాన్యువల్‌గా లాక్ చేయబడింది"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">పరికరం <xliff:g id="NUMBER_1">%d</xliff:g> గంటల పాటు అన్‌లాక్ చేయబడలేదు. నమూనాను నిర్ధారించండి.</item>
       <item quantity="one">పరికరం <xliff:g id="NUMBER_0">%d</xliff:g> గంట పాటు అన్‌లాక్ చేయబడలేదు. నమూనాను నిర్ధారించండి.</item>
diff --git a/packages/Keyguard/res/values-th/strings.xml b/packages/Keyguard/res/values-th/strings.xml
index 00c920c..415836f 100644
--- a/packages/Keyguard/res/values-th/strings.xml
+++ b/packages/Keyguard/res/values-th/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"ต้องใช้รูปแบบเมื่อคุณเปลี่ยนโปรไฟล์"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"ต้องระบุ PIN เมื่อคุณเปลี่ยนโปรไฟล์"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"ต้องป้อนรหัสผ่านเมื่อคุณเปลี่ยนโปรไฟล์"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"ผู้ดูแลอุปกรณ์ล็อกอุปกรณ์ไว้"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"มีผู้ล็อกอุปกรณ์ด้วยตัวเอง"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">ไม่มีการปลดล็อกอุปกรณ์เป็นเวลา <xliff:g id="NUMBER_1">%d</xliff:g> ชั่วโมง ยืนยันรูปแบบ</item>
       <item quantity="one">ไม่มีการปลดล็อกอุปกรณ์เป็นเวลา <xliff:g id="NUMBER_0">%d</xliff:g> ชั่วโมง ยืนยันรูปแบบ </item>
diff --git a/packages/Keyguard/res/values-tl/strings.xml b/packages/Keyguard/res/values-tl/strings.xml
index 2e428530..4554792 100644
--- a/packages/Keyguard/res/values-tl/strings.xml
+++ b/packages/Keyguard/res/values-tl/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Kinakailangan ang pattern kapag nagpalit ka ng profile"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Kinakailangan ang PIN kapag nagpalit ka ng profile"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Kinakailangan ang password kapag nagpalit ka ng profile"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Ang device ay na-lock na ng administrator ng device"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Manual na na-lock ang device"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Hindi na-unlock ang device sa loob ng <xliff:g id="NUMBER_1">%d</xliff:g> oras.. Kumpirmahin ang pattern.</item>
       <item quantity="other">Hindi na-unlock ang device sa loob ng <xliff:g id="NUMBER_1">%d</xliff:g> na oras. Kumpirmahin ang pattern.</item>
diff --git a/packages/Keyguard/res/values-tr/strings.xml b/packages/Keyguard/res/values-tr/strings.xml
index 484505a..ffcbd12 100644
--- a/packages/Keyguard/res/values-tr/strings.xml
+++ b/packages/Keyguard/res/values-tr/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Profil değiştirdiğinizde desen gerekir"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Profil değiştirdiğinizde PIN gerekir"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Profil değiştirdiğinizde şifre gerekir"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Cihaz yöneticisi cihazı kilitledi"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Cihazın manuel olarak kilitlendi"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Cihazın kilidi son <xliff:g id="NUMBER_1">%d</xliff:g> saattir açılmadı. Deseni doğrulayın.</item>
       <item quantity="one">Cihazın kilidi son <xliff:g id="NUMBER_0">%d</xliff:g> saattir açılmadı. Deseni doğrulayın.</item>
diff --git a/packages/Keyguard/res/values-uk/strings.xml b/packages/Keyguard/res/values-uk/strings.xml
index c137bf0..be19281 100644
--- a/packages/Keyguard/res/values-uk/strings.xml
+++ b/packages/Keyguard/res/values-uk/strings.xml
@@ -123,6 +123,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Під час переходу в інший профіль потрібно ввести ключ"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Під час переходу в інший профіль потрібно ввести PIN-код"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Під час переходу в інший профіль потрібно ввести пароль"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Адміністратор заблокував пристрій"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Пристрій заблоковано вручну"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Ви не розблоковували пристрій <xliff:g id="NUMBER_1">%d</xliff:g> годину. Підтвердьте ключ.</item>
       <item quantity="few">Ви не розблоковували пристрій <xliff:g id="NUMBER_1">%d</xliff:g> години. Підтвердьте ключ.</item>
diff --git a/packages/Keyguard/res/values-ur-rPK/strings.xml b/packages/Keyguard/res/values-ur-rPK/strings.xml
index d131c34..63f4e85 100644
--- a/packages/Keyguard/res/values-ur-rPK/strings.xml
+++ b/packages/Keyguard/res/values-ur-rPK/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"جب آپ پروفائل سوئچ کرتے ہیں تو پیٹرن درکار ہوتا ہے"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"‏جب آپ پروفائل سوئچ کرتے ہیں تو PIN درکار ہوتا ہے"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"جب آپ پروفائل سوئچ کرتے ہیں تو پاسورڈ درکار ہوتا ہے"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"آلہ کے منتظم نے آلہ مقفل کر دیا"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"آلہ کو دستی طور پر مقفل کیا گیا تھا"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">آلہ <xliff:g id="NUMBER_1">%d</xliff:g> گھنٹے سے غیر مقفل نہیں کیا گیا۔ پیٹرن کی تصدیق کریں۔</item>
       <item quantity="one">آلہ <xliff:g id="NUMBER_0">%d</xliff:g> گھنٹے سے غیر مقفل نہیں کیا گیا۔ پیٹرن کی تصدیق کریں۔</item>
diff --git a/packages/Keyguard/res/values-uz-rUZ/strings.xml b/packages/Keyguard/res/values-uz-rUZ/strings.xml
index d1e2941..b9a2b12 100644
--- a/packages/Keyguard/res/values-uz-rUZ/strings.xml
+++ b/packages/Keyguard/res/values-uz-rUZ/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Profilni amlashtirishda chizmali kalit talab qilinadi"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Profilni amlashtirishda PIN kod talab qilinadi"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Profilni amlashtirishda parol talab qilinadi"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Qurilma administrator tomonidan qulflangan"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Qurilma qo‘lda qulflangan"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Qurilma <xliff:g id="NUMBER_1">%d</xliff:g> soatdan beri qulfdan chiqarilgani yo‘q. Chizmali kalitni yana bir marta kiriting.</item>
       <item quantity="one">Qurilma <xliff:g id="NUMBER_0">%d</xliff:g> soatdan beri qulfdan chiqarilgani yo‘q. Chizmali kalitni yana bir marta kiriting.</item>
diff --git a/packages/Keyguard/res/values-vi/strings.xml b/packages/Keyguard/res/values-vi/strings.xml
index 4203c94..ad3da9f 100644
--- a/packages/Keyguard/res/values-vi/strings.xml
+++ b/packages/Keyguard/res/values-vi/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Yêu cầu hình mở khóa khi bạn chuyển đổi hồ sơ"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Yêu cầu mã PIN khi bạn chuyển đổi hồ sơ"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Yêu cầu mật khẩu khi bạn chuyển đổi hồ sơ"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Quản trị viên thiết bị đã khóa thiết bị"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Thiết bị đã bị khóa theo cách thủ công"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">Thiết bị đã không được mở khóa trong <xliff:g id="NUMBER_1">%d</xliff:g> giờ. Xác nhận hình.</item>
       <item quantity="one">Thiết bị đã không được mở khóa trong <xliff:g id="NUMBER_0">%d</xliff:g> giờ. Xác nhận hình.</item>
diff --git a/packages/Keyguard/res/values-zh-rCN/strings.xml b/packages/Keyguard/res/values-zh-rCN/strings.xml
index a73dcb6..274d9e6 100644
--- a/packages/Keyguard/res/values-zh-rCN/strings.xml
+++ b/packages/Keyguard/res/values-zh-rCN/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"切换资料后需要绘制解锁图案"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"切换资料后需要输入 PIN 码"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"切换资料后需要输入密码"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"设备管理员已锁定此设备"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"此设备已手动锁定"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">设备已保持锁定状态达 <xliff:g id="NUMBER_1">%d</xliff:g> 小时。请确认解锁图案。</item>
       <item quantity="one">设备已保持锁定状态达 <xliff:g id="NUMBER_0">%d</xliff:g> 小时。请确认解锁图案。</item>
diff --git a/packages/Keyguard/res/values-zh-rHK/strings.xml b/packages/Keyguard/res/values-zh-rHK/strings.xml
index e9d1208..daf814a 100644
--- a/packages/Keyguard/res/values-zh-rHK/strings.xml
+++ b/packages/Keyguard/res/values-zh-rHK/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"請先解除上鎖圖案，才能切換設定檔"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"請先輸入 PIN，才能切換設定檔"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"請先輸入密碼，才能切換設定檔"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"裝置管理員已鎖定裝置"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"已手動鎖定裝置"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">裝置在 <xliff:g id="NUMBER_1">%d</xliff:g> 小時後尚未解鎖，請確認圖案。</item>
       <item quantity="one">裝置在 <xliff:g id="NUMBER_0">%d</xliff:g> 小時後尚未解鎖，請確認圖案。</item>
diff --git a/packages/Keyguard/res/values-zh-rTW/strings.xml b/packages/Keyguard/res/values-zh-rTW/strings.xml
index 36cf9de..d00c69f 100644
--- a/packages/Keyguard/res/values-zh-rTW/strings.xml
+++ b/packages/Keyguard/res/values-zh-rTW/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"切換設定檔時需要畫出解鎖圖案"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"切換設定檔時需要輸入 PIN 碼"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"切換設定檔時需要輸入密碼"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"裝置管理員已鎖定裝置"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"裝置已手動鎖定"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="other">裝置已有 <xliff:g id="NUMBER_1">%d</xliff:g> 小時未解鎖。請確認圖案。</item>
       <item quantity="one">裝置已有 <xliff:g id="NUMBER_0">%d</xliff:g> 小時未解鎖。請確認圖案。</item>
diff --git a/packages/Keyguard/res/values-zu/strings.xml b/packages/Keyguard/res/values-zu/strings.xml
index 68086b2..c5f2a85 100644
--- a/packages/Keyguard/res/values-zu/strings.xml
+++ b/packages/Keyguard/res/values-zu/strings.xml
@@ -119,6 +119,8 @@
     <string name="kg_prompt_reason_switch_profiles_pattern" msgid="8476293962695171574">"Iphethini iyadingeka uma ushintsha amaphrofayela"</string>
     <string name="kg_prompt_reason_switch_profiles_pin" msgid="2343607138520460043">"Kudingeka iphinikhodi uma ushintsha amaphrofayela"</string>
     <string name="kg_prompt_reason_switch_profiles_password" msgid="1295960907951965927">"Iphasiwedi iyadingeka uma ushintsha amaphrofayela"</string>
+    <string name="kg_prompt_reason_device_admin" msgid="5838877342219587193">"Umlawuli wedivayisi ukhiye idivayisi"</string>
+    <string name="kg_prompt_reason_user_request" msgid="500999297306031595">"Idivayisi ikhiywe ngokwenza"</string>
     <plurals name="kg_prompt_reason_time_pattern" formatted="false" msgid="2697444392228541853">
       <item quantity="one">Idivayisi ayikavulwa ngamahora angu-<xliff:g id="NUMBER_1">%d</xliff:g>. Qinisekisa iphethini.</item>
       <item quantity="other">Idivayisi ayikavulwa ngamahora angu-<xliff:g id="NUMBER_1">%d</xliff:g>. Qinisekisa iphethini.</item>
diff --git a/packages/PrintServiceRecommendationService/Android.mk b/packages/PrintRecommendationService/Android.mk
similarity index 100%
rename from packages/PrintServiceRecommendationService/Android.mk
rename to packages/PrintRecommendationService/Android.mk
diff --git a/packages/PrintServiceRecommendationService/AndroidManifest.xml b/packages/PrintRecommendationService/AndroidManifest.xml
similarity index 100%
rename from packages/PrintServiceRecommendationService/AndroidManifest.xml
rename to packages/PrintRecommendationService/AndroidManifest.xml
diff --git a/packages/PrintRecommendationService/CleanSpec.mk b/packages/PrintRecommendationService/CleanSpec.mk
new file mode 100644
index 0000000..c087cb8
--- /dev/null
+++ b/packages/PrintRecommendationService/CleanSpec.mk
@@ -0,0 +1,49 @@
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# If you don't need to do a full clean build but would like to touch
+# a file or delete some intermediate files, add a clean step to the end
+# of the list.  These steps will only be run once, if they haven't been
+# run before.
+#
+# E.g.:
+#     $(call add-clean-step, touch -c external/sqlite/sqlite3.h)
+#     $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates)
+#
+# Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with
+# files that are missing or have been moved.
+#
+# Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory.
+# Use $(OUT_DIR) to refer to the "out" directory.
+#
+# If you need to re-do something that's already mentioned, just copy
+# the command and add it to the bottom of the list.  E.g., if a change
+# that you made last week required touching a file and a change you
+# made today requires touching the same file, just copy the old
+# touch step and add it to the end of the list.
+#
+# ************************************************
+# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
+# ************************************************
+
+# For example:
+#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates)
+#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
+#$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
+#$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)
+
+# ************************************************
+# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
+# ************************************************
diff --git a/packages/PrintServiceRecommendationService/MODULE_LICENSE_APACHE2 b/packages/PrintRecommendationService/MODULE_LICENSE_APACHE2
similarity index 100%
rename from packages/PrintServiceRecommendationService/MODULE_LICENSE_APACHE2
rename to packages/PrintRecommendationService/MODULE_LICENSE_APACHE2
diff --git a/packages/PrintServiceRecommendationService/NOTICE b/packages/PrintRecommendationService/NOTICE
similarity index 100%
rename from packages/PrintServiceRecommendationService/NOTICE
rename to packages/PrintRecommendationService/NOTICE
diff --git a/packages/PrintServiceRecommendationService/res/values/donottranslate.xml b/packages/PrintRecommendationService/res/values/donottranslate.xml
similarity index 100%
rename from packages/PrintServiceRecommendationService/res/values/donottranslate.xml
rename to packages/PrintRecommendationService/res/values/donottranslate.xml
diff --git a/packages/PrintServiceRecommendationService/res/values/strings.xml b/packages/PrintRecommendationService/res/values/strings.xml
similarity index 100%
rename from packages/PrintServiceRecommendationService/res/values/strings.xml
rename to packages/PrintRecommendationService/res/values/strings.xml
diff --git a/packages/PrintServiceRecommendationService/res/xml/vendorconfigs.xml b/packages/PrintRecommendationService/res/xml/vendorconfigs.xml
similarity index 100%
rename from packages/PrintServiceRecommendationService/res/xml/vendorconfigs.xml
rename to packages/PrintRecommendationService/res/xml/vendorconfigs.xml
diff --git a/packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/PrintServicePlugin.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/PrintServicePlugin.java
similarity index 100%
rename from packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/PrintServicePlugin.java
rename to packages/PrintRecommendationService/src/com/android/printservice/recommendation/PrintServicePlugin.java
diff --git a/packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/RecommendationServiceImpl.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/RecommendationServiceImpl.java
similarity index 100%
rename from packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/RecommendationServiceImpl.java
rename to packages/PrintRecommendationService/src/com/android/printservice/recommendation/RecommendationServiceImpl.java
diff --git a/packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/RemotePrintServicePlugin.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/RemotePrintServicePlugin.java
similarity index 100%
rename from packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/RemotePrintServicePlugin.java
rename to packages/PrintRecommendationService/src/com/android/printservice/recommendation/RemotePrintServicePlugin.java
diff --git a/packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/MDNSFilterPlugin.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/MDNSFilterPlugin.java
similarity index 100%
rename from packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/MDNSFilterPlugin.java
rename to packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/MDNSFilterPlugin.java
diff --git a/packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/VendorConfig.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/VendorConfig.java
similarity index 100%
rename from packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/VendorConfig.java
rename to packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/VendorConfig.java
diff --git a/packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/util/MDNSUtils.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/util/MDNSUtils.java
similarity index 100%
rename from packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/util/MDNSUtils.java
rename to packages/PrintRecommendationService/src/com/android/printservice/recommendation/util/MDNSUtils.java
diff --git a/packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/util/NsdResolveQueue.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/util/NsdResolveQueue.java
similarity index 100%
rename from packages/PrintServiceRecommendationService/src/com/android/printservice/recommendation/util/NsdResolveQueue.java
rename to packages/PrintRecommendationService/src/com/android/printservice/recommendation/util/NsdResolveQueue.java
diff --git a/packages/PrintSpooler/res/values-fa/strings.xml b/packages/PrintSpooler/res/values-fa/strings.xml
index 8a6c0dd..9d9c08a9 100644
--- a/packages/PrintSpooler/res/values-fa/strings.xml
+++ b/packages/PrintSpooler/res/values-fa/strings.xml
@@ -41,8 +41,8 @@
     <string name="current_page_template" msgid="1386638343571771292">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g> /<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string>
     <string name="page_description_template" msgid="6831239682256197161">"صفحه <xliff:g id="CURRENT_PAGE">%1$d</xliff:g> از <xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string>
     <string name="summary_template" msgid="8899734908625669193">"خلاصه، تعداد نسخه <xliff:g id="COPIES">%1$s</xliff:g>، اندازه کاغذ <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string>
-    <string name="expand_handle" msgid="7282974448109280522">"بزرگ کردن لیست گزینه‌ها"</string>
-    <string name="collapse_handle" msgid="6886637989442507451">"کوچک کردن لیست گزینه‌ها"</string>
+    <string name="expand_handle" msgid="7282974448109280522">"بزرگ کردن فهرست گزینه‌ها"</string>
+    <string name="collapse_handle" msgid="6886637989442507451">"کوچک کردن فهرست گزینه‌ها"</string>
     <string name="print_button" msgid="645164566271246268">"چاپ"</string>
     <string name="savetopdf_button" msgid="2976186791686924743">"‏ذخیره در PDF"</string>
     <string name="print_options_expanded" msgid="6944679157471691859">"گزینه‌های چاپ بزرگ شد"</string>
diff --git a/packages/PrintSpooler/src/com/android/printspooler/model/PrintSpoolerService.java b/packages/PrintSpooler/src/com/android/printspooler/model/PrintSpoolerService.java
index 9b1ab0e..ae4519e 100644
--- a/packages/PrintSpooler/src/com/android/printspooler/model/PrintSpoolerService.java
+++ b/packages/PrintSpooler/src/com/android/printspooler/model/PrintSpoolerService.java
@@ -497,6 +497,20 @@
         }
     }
 
+    /**
+     * Notify all interested parties that a print job has been updated.
+     *
+     * @param printJob The updated print job.
+     */
+    private void notifyPrintJobUpdated(PrintJobInfo printJob) {
+        Message message = mHandlerCaller.obtainMessageO(
+                HandlerCallerCallback.MSG_ON_PRINT_JOB_STATE_CHANGED,
+                printJob);
+        mHandlerCaller.executeOrSendMessage(message);
+
+        mNotificationController.onUpdateNotifications(mPrintJobs);
+    }
+
     public boolean setPrintJobState(PrintJobId printJobId, int state, String error) {
         boolean success = false;
 
@@ -549,12 +563,7 @@
                     notifyOnAllPrintJobsHandled();
                 }
 
-                Message message = mHandlerCaller.obtainMessageO(
-                        HandlerCallerCallback.MSG_ON_PRINT_JOB_STATE_CHANGED,
-                        printJob);
-                mHandlerCaller.executeOrSendMessage(message);
-
-                mNotificationController.onUpdateNotifications(mPrintJobs);
+                notifyPrintJobUpdated(printJob);
             }
         }
 
@@ -584,9 +593,12 @@
      */
     public void setStatus(@NonNull PrintJobId printJobId, @Nullable CharSequence status) {
         synchronized (mLock) {
-            getPrintJobInfo(printJobId, PrintManager.APP_ID_ANY).setStatus(status);
+            PrintJobInfo printJob = getPrintJobInfo(printJobId, PrintManager.APP_ID_ANY);
 
-            mNotificationController.onUpdateNotifications(mPrintJobs);
+            if (printJob != null) {
+                printJob.setStatus(status);
+                notifyPrintJobUpdated(printJob);
+            }
         }
     }
 
@@ -600,9 +612,12 @@
     public void setStatus(@NonNull PrintJobId printJobId, @StringRes int status,
             @Nullable CharSequence appPackageName) {
         synchronized (mLock) {
-            getPrintJobInfo(printJobId, PrintManager.APP_ID_ANY).setStatus(status, appPackageName);
+            PrintJobInfo printJob = getPrintJobInfo(printJobId, PrintManager.APP_ID_ANY);
 
-            mNotificationController.onUpdateNotifications(mPrintJobs);
+            if (printJob != null) {
+                printJob.setStatus(status, appPackageName);
+                notifyPrintJobUpdated(printJob);
+            }
         }
     }
 
diff --git a/packages/SettingsLib/Android.mk b/packages/SettingsLib/Android.mk
index 2189b55..1098a8e 100644
--- a/packages/SettingsLib/Android.mk
+++ b/packages/SettingsLib/Android.mk
@@ -1,24 +1,21 @@
 LOCAL_PATH := $(call my-dir)
 include $(CLEAR_VARS)
 
+LOCAL_USE_AAPT2 := true
+
 LOCAL_MODULE := SettingsLib
 
-LOCAL_STATIC_JAVA_LIBRARIES := \
+LOCAL_SHARED_ANDROID_LIBRARIES := \
     android-support-v4 \
     android-support-v7-recyclerview \
     android-support-v7-preference \
     android-support-v7-appcompat \
     android-support-v14-preference
 
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res \
-    frameworks/support/v7/preference/res \
-    frameworks/support/v14/preference/res \
-    frameworks/support/v7/appcompat/res \
-    frameworks/support/v7/recyclerview/res
+LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
+
+LOCAL_JAR_EXCLUDE_FILES := none
 
 LOCAL_SRC_FILES := $(call all-java-files-under, src)
 
-LOCAL_AAPT_FLAGS := --auto-add-overlay \
-    --extra-packages android.support.v7.preference:android.support.v14.preference:android.support.v17.preference:android.support.v7.appcompat:android.support.v7.recyclerview
-
 include $(BUILD_STATIC_JAVA_LIBRARY)
diff --git a/packages/SettingsLib/common.mk b/packages/SettingsLib/common.mk
index b017047..cf0ba6c 100644
--- a/packages/SettingsLib/common.mk
+++ b/packages/SettingsLib/common.mk
@@ -13,6 +13,16 @@
 #   include frameworks/base/packages/SettingsLib/common.mk
 #
 
+ifeq ($(LOCAL_USE_AAPT2),true)
+LOCAL_STATIC_ANDROID_LIBRARIES += \
+    android-support-annotations \
+    android-support-v4 \
+    SettingsLib
+else
 LOCAL_RESOURCE_DIR += $(call my-dir)/res
 LOCAL_AAPT_FLAGS += --auto-add-overlay --extra-packages com.android.settingslib
-LOCAL_STATIC_JAVA_LIBRARIES += SettingsLib
+LOCAL_STATIC_JAVA_LIBRARIES += \
+    android-support-annotations \
+    android-support-v4 \
+    SettingsLib
+endif
diff --git a/packages/SettingsLib/res/drawable/notification_auto_importance.xml b/packages/SettingsLib/res/drawable/notification_auto_importance.xml
new file mode 100644
index 0000000..a63e911b
--- /dev/null
+++ b/packages/SettingsLib/res/drawable/notification_auto_importance.xml
@@ -0,0 +1,27 @@
+<!--
+    Copyright (C) 2016 The Android Open Source Project
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0">
+    <path
+            android:fillColor="#FFFFFFFF"
+            android:pathData="M11.2,13.6l1.6,0l-0.8,-2.6z"/>
+    <path
+            android:fillColor="#FF000000"
+            android:pathData="M22.5,9.6L15,9l-3,-7L9,9L1.5,9.6l5.7,5L5.5,22l6.5,-3.9l6.5,3.9l-1.7,-7.4L22.5,9.6zM13.6,16l-0.5,-1.4h-2.3L10.4,16H9l2.3,-6.4h1.4L15,16H13.6z"/>
+</vector>
\ No newline at end of file
diff --git a/packages/SettingsLib/res/layout/drawer_category.xml b/packages/SettingsLib/res/layout/drawer_category.xml
index b7b50d0..582821b 100644
--- a/packages/SettingsLib/res/layout/drawer_category.xml
+++ b/packages/SettingsLib/res/layout/drawer_category.xml
@@ -28,7 +28,8 @@
     <TextView
         android:id="@android:id/title"
         android:layout_width="match_parent"
-        android:layout_height="48dp"
+        android:layout_height="wrap_content"
+        android:minHeight="48dp"
         android:paddingTop="16dp"
         android:paddingBottom="16dp"
         android:paddingStart="16dp"
diff --git a/packages/SettingsLib/res/layout/drawer_item.xml b/packages/SettingsLib/res/layout/drawer_item.xml
index 4b53049..e1f1ae5 100644
--- a/packages/SettingsLib/res/layout/drawer_item.xml
+++ b/packages/SettingsLib/res/layout/drawer_item.xml
@@ -17,7 +17,8 @@
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@+id/tile_item"
     android:layout_width="match_parent"
-    android:layout_height="48dp"
+    android:layout_height="wrap_content"
+    android:minHeight="48dp"
     android:orientation="horizontal" >
 
     <ImageView
diff --git a/packages/SettingsLib/res/layout/restricted_switch_preference.xml b/packages/SettingsLib/res/layout/restricted_switch_preference.xml
new file mode 100644
index 0000000..89dc10b
--- /dev/null
+++ b/packages/SettingsLib/res/layout/restricted_switch_preference.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:minHeight="?android:attr/listPreferredItemHeightSmall"
+    android:gravity="center_vertical"
+    android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+    android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+    android:background="?android:attr/activatedBackgroundIndicator"
+    android:clipToPadding="false">
+
+    <LinearLayout
+        android:id="@+id/icon_frame"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:minWidth="60dp"
+        android:gravity="start|center_vertical"
+        android:orientation="horizontal"
+        android:paddingEnd="12dp"
+        android:paddingTop="4dp"
+        android:paddingBottom="4dp">
+        <com.android.internal.widget.PreferenceImageView
+            android:id="@android:id/icon"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:maxWidth="48dp"
+            android:maxHeight="48dp" />
+    </LinearLayout>
+
+    <RelativeLayout
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_weight="1"
+        android:paddingTop="16dp"
+        android:paddingBottom="16dp">
+
+        <TextView android:id="@android:id/title"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:singleLine="true"
+            android:textAppearance="?android:attr/textAppearanceListItem"
+            android:ellipsize="marquee" />
+
+        <TextView android:id="@android:id/summary"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_below="@android:id/title"
+            android:layout_alignStart="@android:id/title"
+            android:textAppearance="?android:attr/textAppearanceListItemSecondary"
+            android:textColor="?android:attr/textColorSecondary"
+            android:maxLines="10" />
+
+        <TextView android:id="@+id/additional_summary"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_below="@android:id/summary"
+            android:layout_alignStart="@android:id/summary"
+            android:textAppearance="?android:attr/textAppearanceListItemSecondary"
+            android:textColor="?android:attr/textColorSecondary"
+            android:maxLines="10"
+            android:visibility="gone" />
+    </RelativeLayout>
+
+    <!-- Preference should place its actual preference widget here. -->
+    <LinearLayout android:id="@android:id/widget_frame"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:gravity="end|center_vertical"
+        android:paddingStart="16dp"
+        android:orientation="vertical" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/packages/SettingsLib/res/layout/restricted_switch_widget.xml b/packages/SettingsLib/res/layout/restricted_switch_widget.xml
index 6183812..b286df0 100644
--- a/packages/SettingsLib/res/layout/restricted_switch_widget.xml
+++ b/packages/SettingsLib/res/layout/restricted_switch_widget.xml
@@ -22,7 +22,7 @@
         android:gravity="end|center_vertical" />
     <!-- Based off frameworks/base/core/res/res/layout/preference_widget_switch.xml -->
     <Switch xmlns:android="http://schemas.android.com/apk/res/android"
-        android:id="@+android:id/switch_widget"
+        android:id="@android:id/switch_widget"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:focusable="false"
diff --git a/packages/SettingsLib/res/values-af/strings.xml b/packages/SettingsLib/res/values-af/strings.xml
index f32cd13..996c84c 100644
--- a/packages/SettingsLib/res/values-af/strings.xml
+++ b/packages/SettingsLib/res/values-af/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth-verbinding"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Verbinding"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"USB-verbinding en Wi-Fi-warmkol"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Werkprofiel"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Alle werkprogramme"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gas"</string>
     <string name="unknown" msgid="1592123443519355854">"Onbekend"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Gebruiker: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Lanseer enjin-instellings"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Voorkeur-enjin"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Algemeen"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Stel toonhoogte terug"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Stel die toonhoogte waarteen die teks uitgespeek word terug na verstek."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Baie stadig"</item>
     <item msgid="4795095314303559268">"Stadig"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Beheer deur administrateur"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Geaktiveer deur administrateur"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Gedeaktiveer deur administrateur"</string>
-    <string name="home" msgid="8263346537524314127">"Tuis"</string>
+    <string name="home" msgid="3256884684164448244">"Instellingstuisblad"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> gelede"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> oor"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Klein"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Groter"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Grootste"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Gepasmaak (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Hulp en terugvoer"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-am/strings.xml b/packages/SettingsLib/res/values-am/strings.xml
index 1bb27e2..8ea1d2a 100644
--- a/packages/SettingsLib/res/values-am/strings.xml
+++ b/packages/SettingsLib/res/values-am/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ብሉቱዝ ማያያዝ"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"መሰካት"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"ተጓጓዥ መዳረሻ ነጥብ እና ማገናኛ"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"የስራ መገለጫ"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"ሁሉም የሥራ መተግበሪያዎች"</string>
     <string name="user_guest" msgid="8475274842845401871">"እንግዳ"</string>
     <string name="unknown" msgid="1592123443519355854">"ያልታወቀ"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"ተጠቃሚ፦ <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"የፍርግም ቅንብሮችን ያስጀምሩ"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"የተመረጠ ፍርግም"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"አጠቃላይ"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"የንግግር ድምጽ ውፍረት ዳግም አስጀምር"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"ጽሑፉ የሚነገርበትን የድምጽ ውፍረት ወደ ነባሪ ዳግም አስጀምር።"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"በጣም ቀርፋፋ"</item>
     <item msgid="4795095314303559268">"ቀርፋፋ"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"በአስተዳዳሪ ቁጥጥር የተደረገበት"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"በአስተዳዳሪ የነቃ"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"በአስተዳዳሪ የተሰናከለ"</string>
-    <string name="home" msgid="8263346537524314127">"መነሻ"</string>
+    <string name="home" msgid="3256884684164448244">"የቅንብሮች መነሻ"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"ከ<xliff:g id="ID_1">%1$s</xliff:g> በፊት"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> ቀርቷል"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"ትንሽ"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"ተለቅ ያለ"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"በጣም ተለቅ ያለ"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"ብጁ (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"እገዛ እና ግብረመልስ"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ar/strings.xml b/packages/SettingsLib/res/values-ar/strings.xml
index 0f6b315..63f899c 100644
--- a/packages/SettingsLib/res/values-ar/strings.xml
+++ b/packages/SettingsLib/res/values-ar/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ربط البلوتوث"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"ربط"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"الربط ونقطة الاتصال المحمولة"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"الملف الشخصي للعمل"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"كل تطبيقات العمل"</string>
     <string name="user_guest" msgid="8475274842845401871">"مدعو"</string>
     <string name="unknown" msgid="1592123443519355854">"غير معروف"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"المستخدم: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"تشغيل إعدادات المحرك"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"المحرك المفضل"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"عامة"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"إعادة ضبط طبقة صوت الكلام"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"إعادة ضبط طبقة الصوت التي يتم نطق النص بها على الإعداد الافتراضي."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"بطيء جدًا"</item>
     <item msgid="4795095314303559268">"بطيء"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"إعدادات يتحكم فيها المشرف"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"تم التمكين بواسطة المشرف"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"تم التعطيل بواسطة المشرف"</string>
-    <string name="home" msgid="8263346537524314127">"الشاشة الرئيسية"</string>
+    <string name="home" msgid="3256884684164448244">"الشاشة الرئيسية للإعدادات"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"قبل <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"يتبقى <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"صغير"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"أكبر"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"أكبر مستوى"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"مخصص (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"المساعدة والتعليقات"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-az-rAZ/strings.xml b/packages/SettingsLib/res/values-az-rAZ/strings.xml
index 5b2214a..43b8f59 100644
--- a/packages/SettingsLib/res/values-az-rAZ/strings.xml
+++ b/packages/SettingsLib/res/values-az-rAZ/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth birləşmə"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Birləşmə"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Birləşmə və daşınan hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"İş profili"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Bütün iş tətbiqləri"</string>
     <string name="user_guest" msgid="8475274842845401871">"Qonaq"</string>
     <string name="unknown" msgid="1592123443519355854">"Naməlum"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"İstifadəçi: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Mühərrik parametrlərini başladın"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Tərcih olunmuş mühərrik"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Ümumi"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Nitq tembrini sıfırlayın"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Mətnin defolt səsləndirilmə tembrini sıfırlayın."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Çox yavaş"</item>
     <item msgid="4795095314303559268">"Yavaş"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Admin tərəfindən nəzarət olunur"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Administrator tərəfindən aktiv edildi"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Administrator tərəfindən deaktiv edildi"</string>
-    <string name="home" msgid="8263346537524314127">"Əsas səhifə"</string>
+    <string name="home" msgid="3256884684164448244">"Ayarların əsas səhifəsi"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> əvvəl"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> qalıb"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Kiçik"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Daha böyük"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Ən böyük"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Fərdi (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Yardım və rəy"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-b+sr+Latn/strings.xml b/packages/SettingsLib/res/values-b+sr+Latn/strings.xml
index e361efd..a5c9e39 100644
--- a/packages/SettingsLib/res/values-b+sr+Latn/strings.xml
+++ b/packages/SettingsLib/res/values-b+sr+Latn/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth privezivanje"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Povezivanje sa internetom"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Povezivanje i prenosni hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profil za posao"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Sve radne aplikacije"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gost"</string>
     <string name="unknown" msgid="1592123443519355854">"Nepoznato"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Korisnik: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Pokreni podešavanja mašine"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Željena mašina"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Opšte"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Resetujte visinu tona govora"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Resetujte visinu tona kojom se tekst izgovara na podrazumevanu."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Veoma sporo"</item>
     <item msgid="4795095314303559268">"Sporo"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Kontroliše administrator"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Omogućio je administrator"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Onemogućio je administrator"</string>
-    <string name="home" msgid="8263346537524314127">"Početni"</string>
+    <string name="home" msgid="3256884684164448244">"Početna za Podešavanja"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Pre <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Još <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Mali"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Veći"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Najveći"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Prilagođeni (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Pomoć i povratne informacije"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-be-rBY/strings.xml b/packages/SettingsLib/res/values-be-rBY/strings.xml
index 05c6d9af..75297d5 100644
--- a/packages/SettingsLib/res/values-be-rBY/strings.xml
+++ b/packages/SettingsLib/res/values-be-rBY/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth-мадэм"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Мадэм"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Мадэм і партатыўны хотспот"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Рабочы профіль"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Усе рабочыя праграмы"</string>
     <string name="user_guest" msgid="8475274842845401871">"Госць"</string>
     <string name="unknown" msgid="1592123443519355854">"Невядома"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Карыстальнiк: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Запуск налад модулю"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Выбраны модуль"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Агульныя"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Скід вышыні голасу падчас гаворкі"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Скінуць вышыню голасу, з якой прагаворваецца тэкст, да стандартнай."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Вельмі павольна"</item>
     <item msgid="4795095314303559268">"Павольна"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Кантралюецца адміністратарам"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Уключана адміністратарам"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Адключана адміністратарам"</string>
-    <string name="home" msgid="8263346537524314127">"Галоўная"</string>
+    <string name="home" msgid="3256884684164448244">"Галоўная старонка налад"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> таму назад"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Засталося <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Маленькі"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Большы"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Найвялікшы"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Карыстальніцкі (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Даведка і водгукі"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-bg/strings.xml b/packages/SettingsLib/res/values-bg/strings.xml
index f596b04..2af1c49 100644
--- a/packages/SettingsLib/res/values-bg/strings.xml
+++ b/packages/SettingsLib/res/values-bg/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Тетъринг през Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Тетъринг"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Тетъринг и пренос. точка за достъп"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Служебен потр. профил"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Вс. служебни приложения"</string>
     <string name="user_guest" msgid="8475274842845401871">"Гост"</string>
     <string name="unknown" msgid="1592123443519355854">"Неизвестно"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Потребител: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Стартиране на настройките на машината"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Предпочитана машина"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Общи"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Нулиране на височината на говора"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Възстановяване на стандартната височина, с която се изговаря текстът."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Много бавна"</item>
     <item msgid="4795095314303559268">"Бавна"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Контролира се от администратор"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Активирано от администратора"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Деактивирано от администратора"</string>
-    <string name="home" msgid="8263346537524314127">"Начало"</string>
+    <string name="home" msgid="3256884684164448244">"Начален екран на Настройки"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Преди <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Оставащо време: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Малко"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"По-голямо"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Най-голямо"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Персонализирано (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Помощ и отзиви"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-bn-rBD/strings.xml b/packages/SettingsLib/res/values-bn-rBD/strings.xml
index f691278..99308bb 100644
--- a/packages/SettingsLib/res/values-bn-rBD/strings.xml
+++ b/packages/SettingsLib/res/values-bn-rBD/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth টেদারিং"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"টেদারিং"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"টেদারিং ও পোর্টেবল হটস্পট"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"কর্মস্থলের প্রোফাইল"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"সমস্ত কাজের অ্যাপ্লিকেশান"</string>
     <string name="user_guest" msgid="8475274842845401871">"অতিথি"</string>
     <string name="unknown" msgid="1592123443519355854">"অজানা"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"ব্যবহারকারী: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"ইঞ্জিন সেটিংস লঞ্চ করুন"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"পছন্দের ইঞ্জিন"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"সাধারণ"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"ভাষ্য়ের শব্দ মাত্রাকে পুনরায় সেট করুন"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"ডিফল্ট হিসাবে যে মাত্রায় পাঠ্য উচ্চারিত হয়, সেই শব্দ মাত্রাকে পুনরায় সেট করুন৷"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"অত্যন্ত ধীরে"</item>
     <item msgid="4795095314303559268">"ধীর"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"প্রশাসকের দ্বারা নিয়ন্ত্রিত"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"প্রশাসক সক্ষম করেছেন"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"প্রশাসক অক্ষম করেছেন"</string>
-    <string name="home" msgid="8263346537524314127">"হোম"</string>
+    <string name="home" msgid="3256884684164448244">"সেটিংস হোম"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> আগে"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> বাকী আছে"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"ক্ষুদ্র"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"খুব বড়"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"বৃহত্তম"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"কাস্টম (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"সহায়তা ও মতামত"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-bs-rBA/strings.xml b/packages/SettingsLib/res/values-bs-rBA/strings.xml
index e4bd011..2841e2d 100644
--- a/packages/SettingsLib/res/values-bs-rBA/strings.xml
+++ b/packages/SettingsLib/res/values-bs-rBA/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Dijeljenje Bluetooth veze"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Dijeljenje veze"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Dijeljenje internetske veze i prijenosna pristupna tačka"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profil za Work"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Sve radne aplikacije"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gost"</string>
     <string name="unknown" msgid="1592123443519355854">"Nepoznato"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Korisnik: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Pokreni postavke programa"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Željeni program"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Opće"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Postavite visinu glasa"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Visinu glasa koji izgovara tekst postavite na podrazumjevanu."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Veoma sporo"</item>
     <item msgid="4795095314303559268">"Sporo"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Pod kontrolom administratora"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Omogućio administrator"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Onemogućio je administrator"</string>
-    <string name="home" msgid="8263346537524314127">"Početna stranica"</string>
+    <string name="home" msgid="3256884684164448244">"Postavke početne stranice"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"prije <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Još otprilike <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Malo"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Veće"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Najveće"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Prilagodi (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Pomoć i povratne informacije"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ca/strings.xml b/packages/SettingsLib/res/values-ca/strings.xml
index ba19e30..7beaa1b 100644
--- a/packages/SettingsLib/res/values-ca/strings.xml
+++ b/packages/SettingsLib/res/values-ca/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Ancoratge de Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Ancoratge a xarxa"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Ancoratge a la xarxa i zona Wi-Fi"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Perfil professional"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Totes les aplic. de feina"</string>
     <string name="user_guest" msgid="8475274842845401871">"Convidat"</string>
     <string name="unknown" msgid="1592123443519355854">"Desconegut"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Usuari: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Obre la configuració del motor"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Motor preferit"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"General"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Restableix el to de la veu"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Restableix el to predeterminat amb què es llegeix el text."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Molt lenta"</item>
     <item msgid="4795095314303559268">"Lenta"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Controlat per l\'administrador"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Opció activada per l\'administrador"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Opció desactivada per l\'administrador"</string>
-    <string name="home" msgid="8263346537524314127">"Inici"</string>
+    <string name="home" msgid="3256884684164448244">"Pàgina d\'inici de configuració"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Fa <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Temps restant: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Petit"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Més gran"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Màxim"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personalitzat (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Ajuda i suggeriments"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-cs/strings.xml b/packages/SettingsLib/res/values-cs/strings.xml
index 03208bf..3dedd63 100644
--- a/packages/SettingsLib/res/values-cs/strings.xml
+++ b/packages/SettingsLib/res/values-cs/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Připojení přes Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Sdílené připojení"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Sdílené připojení a přenosný hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Pracovní profil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Všechny pracovní aplikace"</string>
     <string name="user_guest" msgid="8475274842845401871">"Host"</string>
     <string name="unknown" msgid="1592123443519355854">"Neznámé"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Uživatel: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Spustit vyhledávač"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Preferovaný modul"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Obecné"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Obnovit výšku hlasu"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Obnoví výšku hlasu ke čtení textu na výchozí hodnotu."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Velmi pomalá"</item>
     <item msgid="4795095314303559268">"Pomalá"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Spravováno administrátorem"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Povoleno administrátorem"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Zakázáno administrátorem"</string>
-    <string name="home" msgid="8263346537524314127">"Plocha"</string>
+    <string name="home" msgid="3256884684164448244">"Domovská stránka Nastavení"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"před <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Zbývající čas: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Malé"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Větší"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Největší"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Vlastní (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Nápověda a zpětná vazba"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-da/strings.xml b/packages/SettingsLib/res/values-da/strings.xml
index d58fe62d..250b4cd 100644
--- a/packages/SettingsLib/res/values-da/strings.xml
+++ b/packages/SettingsLib/res/values-da/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Netdeling via Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Netdeling"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Netdeling og hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Arbejdsprofil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Alle arbejdsapps"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gæst"</string>
     <string name="unknown" msgid="1592123443519355854">"Ukendt"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Bruger: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Åbn indstillinger for maskinen"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Foretrukken maskine"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Generelt"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Nulstil tonelejet"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Nulstil oplæsningens toneleje til standardindstillingen."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Meget langsom"</item>
     <item msgid="4795095314303559268">"Langsom"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Kontrolleret af administratoren"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Aktiveret af administratoren"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Deaktiveret af administratoren"</string>
-    <string name="home" msgid="8263346537524314127">"Start"</string>
+    <string name="home" msgid="3256884684164448244">"Startside for Indstillinger"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> siden"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> tilbage"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Lille"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Større"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Størst"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Tilpasset (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Hjælp og feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-de/strings.xml b/packages/SettingsLib/res/values-de/strings.xml
index dc38dae..3a25160 100644
--- a/packages/SettingsLib/res/values-de/strings.xml
+++ b/packages/SettingsLib/res/values-de/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth-Tethering"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering &amp; mobiler Hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Arbeitsprofil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Alle Arbeitsprofil-Apps"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gast"</string>
     <string name="unknown" msgid="1592123443519355854">"Unbekannt"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Nutzer: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Einstellungen der Suchmaschine starten"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Bevorzugtes Modul"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Allgemein"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Stimmlage zurücksetzen"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Stimmlage, mit der der Text gesprochen wird, auf Standardeinstellung zurücksetzen."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Sehr langsam"</item>
     <item msgid="4795095314303559268">"Langsam"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Durch den Administrator verwaltet"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Vom Administrator aktiviert"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Vom Administrator deaktiviert"</string>
-    <string name="home" msgid="8263346537524314127">"Startseite"</string>
+    <string name="home" msgid="3256884684164448244">"Startseite \"Einstellungen\""</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Vor <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Noch <xliff:g id="ID_1">%1$s</xliff:g> verbleibend"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Klein"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Größer"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Am größten"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Benutzerdefiniert (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Hilfe &amp; Feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-el/strings.xml b/packages/SettingsLib/res/values-el/strings.xml
index 87d5a98..9d9b94e 100644
--- a/packages/SettingsLib/res/values-el/strings.xml
+++ b/packages/SettingsLib/res/values-el/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Πρόσδεση Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Πρόσδεση"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Πρόσ. και φορητό σημ. πρόσβ."</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Προφίλ εργασίας"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Όλες οι εφαρμ. εργασίας"</string>
     <string name="user_guest" msgid="8475274842845401871">"Επισκέπτης"</string>
     <string name="unknown" msgid="1592123443519355854">"Άγνωστο"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Χρήστης: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Εκκίνηση ρυθμίσεων μηχανής"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Προτεινόμενη μηχανή"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Γενικά"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Επαναφορά τόνου ομιλίας"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Επαναφέρετε τον τόνο στον οποίο εκφωνείται το κείμενο στον προεπιλεγμένο."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Πολύ αργή"</item>
     <item msgid="4795095314303559268">"Αργή"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Ελέγχονται από το διαχειριστή"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Ενεργοποιήθηκε από το διαχειριστή"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Απενεργοποιήθηκε από το διαχειριστή"</string>
-    <string name="home" msgid="8263346537524314127">"Αρχική οθόνη"</string>
+    <string name="home" msgid="3256884684164448244">"Αρχική σελίδα ρυθμίσεων"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Πριν από <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Απομένουν <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Μικρά"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Πιο μεγάλα"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Μεγαλύτερα"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Προσαρμοσμένη (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Βοήθεια και σχόλια"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-en-rAU/strings.xml b/packages/SettingsLib/res/values-en-rAU/strings.xml
index fe490a2..ccd487f 100644
--- a/packages/SettingsLib/res/values-en-rAU/strings.xml
+++ b/packages/SettingsLib/res/values-en-rAU/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth tethering"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering &amp; portable hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Work profile"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"All work apps"</string>
     <string name="user_guest" msgid="8475274842845401871">"Guest"</string>
     <string name="unknown" msgid="1592123443519355854">"Unknown"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"User: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Launch engine settings"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Preferred engine"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"General"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Reset speech pitch"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Reset the pitch at which the text is spoken to default."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Very slow"</item>
     <item msgid="4795095314303559268">"Slow"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Controlled by admin"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Enabled by administrator"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Disabled by administrator"</string>
-    <string name="home" msgid="8263346537524314127">"Home"</string>
+    <string name="home" msgid="3256884684164448244">"Settings Home"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> ago"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> left"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Small"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Larger"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Largest"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Custom (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Help &amp; feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-en-rGB/strings.xml b/packages/SettingsLib/res/values-en-rGB/strings.xml
index fe490a2..ccd487f 100644
--- a/packages/SettingsLib/res/values-en-rGB/strings.xml
+++ b/packages/SettingsLib/res/values-en-rGB/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth tethering"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering &amp; portable hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Work profile"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"All work apps"</string>
     <string name="user_guest" msgid="8475274842845401871">"Guest"</string>
     <string name="unknown" msgid="1592123443519355854">"Unknown"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"User: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Launch engine settings"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Preferred engine"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"General"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Reset speech pitch"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Reset the pitch at which the text is spoken to default."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Very slow"</item>
     <item msgid="4795095314303559268">"Slow"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Controlled by admin"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Enabled by administrator"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Disabled by administrator"</string>
-    <string name="home" msgid="8263346537524314127">"Home"</string>
+    <string name="home" msgid="3256884684164448244">"Settings Home"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> ago"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> left"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Small"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Larger"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Largest"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Custom (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Help &amp; feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-en-rIN/strings.xml b/packages/SettingsLib/res/values-en-rIN/strings.xml
index fe490a2..ccd487f 100644
--- a/packages/SettingsLib/res/values-en-rIN/strings.xml
+++ b/packages/SettingsLib/res/values-en-rIN/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth tethering"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering &amp; portable hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Work profile"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"All work apps"</string>
     <string name="user_guest" msgid="8475274842845401871">"Guest"</string>
     <string name="unknown" msgid="1592123443519355854">"Unknown"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"User: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Launch engine settings"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Preferred engine"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"General"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Reset speech pitch"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Reset the pitch at which the text is spoken to default."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Very slow"</item>
     <item msgid="4795095314303559268">"Slow"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Controlled by admin"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Enabled by administrator"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Disabled by administrator"</string>
-    <string name="home" msgid="8263346537524314127">"Home"</string>
+    <string name="home" msgid="3256884684164448244">"Settings Home"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> ago"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> left"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Small"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Larger"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Largest"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Custom (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Help &amp; feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-es-rUS/strings.xml b/packages/SettingsLib/res/values-es-rUS/strings.xml
index 03d9a95..2f2f6120 100644
--- a/packages/SettingsLib/res/values-es-rUS/strings.xml
+++ b/packages/SettingsLib/res/values-es-rUS/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Anclaje a red Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Anclaje a red"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Anclaje a red y zona portátil"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Perfil de trabajo"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Todas las apps de trabajo"</string>
     <string name="user_guest" msgid="8475274842845401871">"Invitado"</string>
     <string name="unknown" msgid="1592123443519355854">"Desconocido"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Usuario: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Iniciar configuración de motor"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Motor preferido"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"General"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Restablecer el tono de voz"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Restablecer a predeterminado el tono en el que se lee el texto."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Muy lenta"</item>
     <item msgid="4795095314303559268">"Lenta"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Controlada por el administrador"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Habilitada por el administrador"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Inhabilitada por el administrador"</string>
-    <string name="home" msgid="8263346537524314127">"Página principal"</string>
+    <string name="home" msgid="3256884684164448244">"Pantalla de configuración"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Hace <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Falta <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Pequeño"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Más grande"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Máximo"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personalizado (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Ayuda y comentarios"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-es/strings.xml b/packages/SettingsLib/res/values-es/strings.xml
index 4aaad05..1091c4a 100644
--- a/packages/SettingsLib/res/values-es/strings.xml
+++ b/packages/SettingsLib/res/values-es/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Compartir por Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Compartir Internet"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Compartir Internet y zona Wi-Fi"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Perfil de trabajo"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Todas las aplicaciones de trabajo"</string>
     <string name="user_guest" msgid="8475274842845401871">"Invitado"</string>
     <string name="unknown" msgid="1592123443519355854">"Desconocido"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Usuario: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Iniciar configuración de motor"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Motor preferido"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"General"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Restablecer el tono de voz"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Restablecer a predeterminado el tono en el que se lee el texto"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Muy lenta"</item>
     <item msgid="4795095314303559268">"Lenta"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Controlada por el administrador"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Habilitado por el administrador"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Inhabilitado por el administrador"</string>
-    <string name="home" msgid="8263346537524314127">"Inicio"</string>
+    <string name="home" msgid="3256884684164448244">"Página principal de ajustes"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Hace <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Tiempo restante: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Pequeño"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Más grande"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Lo más grande posible"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personalizado (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Ayuda y opiniones"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-et-rEE/strings.xml b/packages/SettingsLib/res/values-et-rEE/strings.xml
index 8526112..98c29b6 100644
--- a/packages/SettingsLib/res/values-et-rEE/strings.xml
+++ b/packages/SettingsLib/res/values-et-rEE/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetoothi jagamine"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Jagamine"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Jagam. ja kant. kuumkoht"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Tööprofiil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Kõik töörakendused"</string>
     <string name="user_guest" msgid="8475274842845401871">"Külaline"</string>
     <string name="unknown" msgid="1592123443519355854">"Tundmatu"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Kasutaja: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Käivita mootori seaded"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Eelistatud mootor"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Üldine"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Kõne helikõrguse lähtestamine"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Lähtestage helikõrgus, millega tekst vaikimisi esitatakse."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Väga aeglane"</item>
     <item msgid="4795095314303559268">"Aeglane"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Juhib administraator"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Administraator on lubanud"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Administraator on keelanud"</string>
-    <string name="home" msgid="8263346537524314127">"Avaekraan"</string>
+    <string name="home" msgid="3256884684164448244">"Seadete avaleht"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> tagasi"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> on jäänud"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Väike"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Suurem"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Suurim"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Kohandatud (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Abi ja tagasiside"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-eu-rES/strings.xml b/packages/SettingsLib/res/values-eu-rES/strings.xml
index 2cc73bb..4ac1d83 100644
--- a/packages/SettingsLib/res/values-eu-rES/strings.xml
+++ b/packages/SettingsLib/res/values-eu-rES/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Konexioa partekatzea (Bluetooth)"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Konexioa partekatzea"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Konexioa partekatzea eta sare publikoak"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Laneko profila"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Laneko aplikazio guztiak"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gonbidatua"</string>
     <string name="unknown" msgid="1592123443519355854">"Ezezaguna"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Erabiltzailea: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Abiarazi motorraren ezarpenak"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Motor hobetsia"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Orokorra"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Berrezarri ahots-tonua"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Berrezarri testua esateko ahots-tonua lehenetsira."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Oso motela"</item>
     <item msgid="4795095314303559268">"Motela"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Administratzaileak kontrolatzen du"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Administratzaileak gaitu du"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Administratzaileak desgaitu du"</string>
-    <string name="home" msgid="8263346537524314127">"Hasierako pantaila"</string>
+    <string name="home" msgid="3256884684164448244">"Ezarpenen orri nagusia"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Duela <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> guztiz kargatu arte"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Txikia"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Oso handia"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Handiena"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Pertsonalizatua (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Laguntza eta iritziak"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-fa/strings.xml b/packages/SettingsLib/res/values-fa/strings.xml
index 3fdb474..a38c516 100644
--- a/packages/SettingsLib/res/values-fa/strings.xml
+++ b/packages/SettingsLib/res/values-fa/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"اتصال اینترنت با تلفن همراه بلوتوث"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"اتصال به اینترنت با تلفن همراه"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"تترینگ و نقطه اتصال قابل حمل"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"نمایه کاری"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"همه برنامه‌های کاری"</string>
     <string name="user_guest" msgid="8475274842845401871">"مهمان"</string>
     <string name="unknown" msgid="1592123443519355854">"ناشناس"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"کاربر: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"راه‌اندازی تنظیمات موتور"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"موتور ترجیحی"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"کلی"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"بازنشانی زیروبمی گفتار"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"بازنشانی زیروبمی صدای گفته شدن نوشتار روی مقدار پیش‌فرض."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"بسیار آهسته"</item>
     <item msgid="4795095314303559268">"آهسته"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"توسط سرپرست سیستم کنترل می‌شود"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"سرپرست آن را فعال کرده است"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"سرپرست آن را غیرفعال کرده است"</string>
-    <string name="home" msgid="8263346537524314127">"صفحه اصلی"</string>
+    <string name="home" msgid="3256884684164448244">"صفحه اصلی تنظیمات"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> قبل"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> باقی مانده است"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"کوچک"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"بزرگ‌تر"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"بزرگ‌ترین"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"سفارشی (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"راهنما و بازخورد"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-fi/strings.xml b/packages/SettingsLib/res/values-fi/strings.xml
index b70d6a0..6f5cff8 100644
--- a/packages/SettingsLib/res/values-fi/strings.xml
+++ b/packages/SettingsLib/res/values-fi/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Jaettu Bluetooth-yhteys"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Jaettu yhteys"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Jaettu yhteys ja kannettava yhteyspiste"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Työprofiili"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Kaikki työsovellukset"</string>
     <string name="user_guest" msgid="8475274842845401871">"Vieras"</string>
     <string name="unknown" msgid="1592123443519355854">"Tuntematon"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Käyttäjä: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Käynnistä moottorin asetukset"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Ensisijainen kone"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Yleiset"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Palauta äänenkorkeus"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Palauta tekstin lukemisen oletusäänenkorkeus"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Hyvin hidas"</item>
     <item msgid="4795095314303559268">"Hidas"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Järjestelmänvalvoja hallinnoi tätä asetusta."</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Järjestelmänvalvojan käyttöön ottama"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Järjestelmänvalvojan käytöstä poistama"</string>
-    <string name="home" msgid="8263346537524314127">"Aloitusnäyttö"</string>
+    <string name="home" msgid="3256884684164448244">"Asetusten etusivu"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> sitten"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> jäljellä"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Pieni"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Suurempi"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Suurin"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Muokattu (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Ohje ja palaute"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-fr-rCA/strings.xml b/packages/SettingsLib/res/values-fr-rCA/strings.xml
index cc8e7f6..0b13dda 100644
--- a/packages/SettingsLib/res/values-fr-rCA/strings.xml
+++ b/packages/SettingsLib/res/values-fr-rCA/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Via Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Partage de connexion"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Partage de connexion et point d\'accès mobile"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profil professionnel"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Toutes les applis profess."</string>
     <string name="user_guest" msgid="8475274842845401871">"Invité"</string>
     <string name="unknown" msgid="1592123443519355854">"Inconnu"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Utilisateur : <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Lancer les paramètres du moteur"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Moteur préféré"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Général"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Réinitialiser la hauteur de la voix du texte"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Rétablir la hauteur normale à laquelle le texte est énoncé."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Très lente"</item>
     <item msgid="4795095314303559268">"Lente"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Contrôlé par l\'administrateur"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Activé par l\'administrateur"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Désactivé par l\'administrateur"</string>
-    <string name="home" msgid="8263346537524314127">"Accueil"</string>
+    <string name="home" msgid="3256884684164448244">"Accueil des paramètres"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Il y a <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Durée restante :<xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Petite"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Plus grande"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"La plus grande"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personnalisée (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Aide et commentaires"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-fr/strings.xml b/packages/SettingsLib/res/values-fr/strings.xml
index a1b85a0..3b5fcbe 100644
--- a/packages/SettingsLib/res/values-fr/strings.xml
+++ b/packages/SettingsLib/res/values-fr/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Partage connexion Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Partage de connexion"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Partage de connexion"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profil professionnel"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Toutes applis profession."</string>
     <string name="user_guest" msgid="8475274842845401871">"Invité"</string>
     <string name="unknown" msgid="1592123443519355854">"Inconnu"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Utilisateur : <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Lancer les paramètres du moteur"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Moteur préféré"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Paramètres généraux"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Réinitialiser le ton de la voix"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Rétablir le ton par défaut auquel le texte est énoncé."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Très lente"</item>
     <item msgid="4795095314303559268">"Lente"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Contrôlé par l\'administrateur"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Activé par l\'administrateur"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Désactivé par l\'administrateur"</string>
-    <string name="home" msgid="8263346537524314127">"Accueil"</string>
+    <string name="home" msgid="3256884684164448244">"Accueil des paramètres"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Il y a <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Il reste <xliff:g id="ID_1">%1$s</xliff:g>."</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Petit"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Plus grand"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Le plus grand"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personnalisé (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Aide et commentaires"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-gl-rES/strings.xml b/packages/SettingsLib/res/values-gl-rES/strings.xml
index 1bdddd9..5068ac8 100644
--- a/packages/SettingsLib/res/values-gl-rES/strings.xml
+++ b/packages/SettingsLib/res/values-gl-rES/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Ancoraxe de Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Ancoraxe á rede"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Ancoraxe á rede e zona wifi"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Perfil do traballo"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Aplicacións de traballo"</string>
     <string name="user_guest" msgid="8475274842845401871">"Convidado"</string>
     <string name="unknown" msgid="1592123443519355854">"Descoñecida"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Usuario: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Iniciar configuración do motor"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Motor preferido"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Xeral"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Restablecer ton da voz"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Restablece ao ritmo predeterminado o ton no que se di o texto."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Moi lento"</item>
     <item msgid="4795095314303559268">"Lento"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Opción controlada polo administrador"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Activado polo administrador"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Desactivado polo administrador"</string>
-    <string name="home" msgid="8263346537524314127">"Inicio"</string>
+    <string name="home" msgid="3256884684164448244">"Inicio da configuración"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Hai <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Tempo restante: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Pequeno"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Máis grande"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"O máis grande"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personalizado (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Axuda e suxestións"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-gu-rIN/strings.xml b/packages/SettingsLib/res/values-gu-rIN/strings.xml
index eafb8b1..54e5e90 100644
--- a/packages/SettingsLib/res/values-gu-rIN/strings.xml
+++ b/packages/SettingsLib/res/values-gu-rIN/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth ટિથરિંગ"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"ટિથરિંગ"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"ટિથરિંગ અને પોર્ટેબલ હોટસ્પોટ"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"કાર્ય પ્રોફાઇલ"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"તમામ કાર્ય અ‍ૅપ્લિકેશનો"</string>
     <string name="user_guest" msgid="8475274842845401871">"અતિથિ"</string>
     <string name="unknown" msgid="1592123443519355854">"અજાણ્યું"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"વપરાશકર્તા: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"એન્જિન સેટિંગ્સ લોંચ કરો"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"મનપસંદ એન્જિન"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"સામાન્ય"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"સ્પીચની પિચ ફરીથી સેટ કરો"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"ટેક્સ્ટ બોલાયેલ છે તે પિચને ડિફોલ્ટ પર ફરીથી સેટ કરો."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"ખૂબ જ ધીમી"</item>
     <item msgid="4795095314303559268">"ધીમી"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"વ્યવસ્થાપક દ્વારા નિયંત્રિત"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"વ્યવસ્થાપક દ્વારા સક્ષમ કરેલ"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"વ્યવસ્થાપક દ્વારા અક્ષમ કરેલ"</string>
-    <string name="home" msgid="8263346537524314127">"હોમ"</string>
+    <string name="home" msgid="3256884684164448244">"સેટિંગ્સ હોમ"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> પહેલાં"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> બાકી"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"નાનું"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"વધુ મોટું"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"સૌથી મોટું"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"કસ્ટમ (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"સહાય અને પ્રતિસાદ"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-hi/strings.xml b/packages/SettingsLib/res/values-hi/strings.xml
index b008e1f..9cdcf2c 100644
--- a/packages/SettingsLib/res/values-hi/strings.xml
+++ b/packages/SettingsLib/res/values-hi/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ब्लूटूथ टेदरिंग"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"टेदरिंग"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"टेदरिंग और पोर्टेबल हॉटस्‍पॉट"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"कार्य प्रोफ़ाइल"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"सभी कार्यस्थल ऐप्लिकेशन"</string>
     <string name="user_guest" msgid="8475274842845401871">"अतिथि"</string>
     <string name="unknown" msgid="1592123443519355854">"अज्ञात"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"उपयोगकर्ता: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"इंजन सेटिंग लॉन्‍च करें"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"पसंदीदा इंजन"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"सामान्य"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"बोलने की तीव्रता रीसेट करें"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"बोलने की तीव्रता रीसेट करें जिस पर लेख डिफ़ॉल्ट रूप से बोला जाता है."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"अत्‍यधिक धीमा"</item>
     <item msgid="4795095314303559268">"धीमा"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"व्यवस्थापक द्वारा नियंत्रित"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"व्यवस्थापक द्वारा सक्षम किया गया"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"व्यवस्थापक द्वारा अक्षम किया गया"</string>
-    <string name="home" msgid="8263346537524314127">"होम"</string>
+    <string name="home" msgid="3256884684164448244">"सेटिंग होम"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> पहले"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> शेष"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"छोटा"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"अधिक बड़ा"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"सबसे बड़ा"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"कस्टम (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"सहायता और फ़ीडबैक"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-hr/strings.xml b/packages/SettingsLib/res/values-hr/strings.xml
index 6ba366c..f8e030c 100644
--- a/packages/SettingsLib/res/values-hr/strings.xml
+++ b/packages/SettingsLib/res/values-hr/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Dijeljenje Bluetoothom veze"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Dijeljenje veze"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Dijeljenje veze i žarišna točka"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Radni profil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Sve radne aplikacije"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gost"</string>
     <string name="unknown" msgid="1592123443519355854">"Nepoznato"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Korisnik: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Postavke pokretanja alata"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Željeni alat"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Opće"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Vrati visinu glasa na zadano"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Visinu glasa kojom se izgovara tekst vraća na zadano."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Vrlo sporo"</item>
     <item msgid="4795095314303559268">"Sporo"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Kontrolira administrator"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Omogućio administrator"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Onemogućio administrator"</string>
-    <string name="home" msgid="8263346537524314127">"Početni zaslon"</string>
+    <string name="home" msgid="3256884684164448244">"Početni zaslon postavki"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Prije <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Još <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Malo"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Veće"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Najveće"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Prilagođeno (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Pomoć i povratne informacije"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-hu/strings.xml b/packages/SettingsLib/res/values-hu/strings.xml
index b10f5be..9ddbb95 100644
--- a/packages/SettingsLib/res/values-hu/strings.xml
+++ b/packages/SettingsLib/res/values-hu/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth megosztása"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Megosztás"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Megosztás és hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Munkaprofil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Összes munkaalkalmazás"</string>
     <string name="user_guest" msgid="8475274842845401871">"Vendég"</string>
     <string name="unknown" msgid="1592123443519355854">"Ismeretlen"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Felhasználó: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Keresőmotor beállításainak indítása"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Preferált motor"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Általános"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Beszéd hangmagasságának visszaállítása"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"A kimondott szöveg hangmagasságának visszaállítása az alapértelmezett értékre."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Nagyon lassú"</item>
     <item msgid="4795095314303559268">"Lassú"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Rendszergazda által irányítva"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Engedélyezve a rendszergazda által"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Letiltva a rendszergazda által"</string>
-    <string name="home" msgid="8263346537524314127">"Főoldal"</string>
+    <string name="home" msgid="3256884684164448244">"Kezdőlap beállítása"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Ennyi ideje: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> van hátra"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Kicsi"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Nagyobb"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Legnagyobb"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Egyéni (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Súgó és visszajelzés"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-hy-rAM/strings.xml b/packages/SettingsLib/res/values-hy-rAM/strings.xml
index 2021520..c9f34c0 100644
--- a/packages/SettingsLib/res/values-hy-rAM/strings.xml
+++ b/packages/SettingsLib/res/values-hy-rAM/strings.xml
@@ -91,14 +91,14 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth-ը կապվում է"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Միացում"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Միացում և շարժական թեժ կետ"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Աշխատանքային պրոֆիլ"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Բոլոր աշխատանքային հավելվածները"</string>
     <string name="user_guest" msgid="8475274842845401871">"Հյուր"</string>
     <string name="unknown" msgid="1592123443519355854">"Անհայտ"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Օգտվող՝ <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
     <string name="launch_defaults_some" msgid="313159469856372621">"Որոշ կանխադրված կարգավորումներ կան"</string>
     <string name="launch_defaults_none" msgid="4241129108140034876">"Կանխադրված կարգավորումներ չկան"</string>
     <string name="tts_settings" msgid="8186971894801348327">"Տեքստից-խոսք կարգավորումներ"</string>
-    <string name="tts_settings_title" msgid="1237820681016639683">"Գրվածքից խոսք ելք"</string>
+    <string name="tts_settings_title" msgid="1237820681016639683">"Տեքստի հնչեցում"</string>
     <string name="tts_default_rate_title" msgid="6030550998379310088">"Խոսքի գնահատական"</string>
     <string name="tts_default_rate_summary" msgid="4061815292287182801">"Տեքստի արտասանման արագությունը"</string>
     <string name="tts_default_pitch_title" msgid="6135942113172488671">"Բարձրություն"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Գործարկման շարժիչի կարգավորումներ"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Նախընտրած շարժիչը"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Ընդհանուր"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Վերակայել արտասանման ձայնի բարձրությունը"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Տեքստի արտասանման ձայնի բարձրությունը վերադարձնել կանխադրված արժեքի:"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Շատ դանդաղ"</item>
     <item msgid="4795095314303559268">"Դանդաղ"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Վերահսկվում է ադմինիստրատորի կողմից"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Միացված է ադմինիստրատորի կողմից"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Կասեցված է ադմինիստրատորի կողմից"</string>
-    <string name="home" msgid="8263346537524314127">"Գլխավոր էջ"</string>
+    <string name="home" msgid="3256884684164448244">"Կարգավորումների գլխավոր էջ"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> առաջ"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Մնացել է <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Փոքր"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Ավելի մեծ"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Ամենամեծ"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Հատուկ (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Օգնություն և հետադարձ կապ"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-in/strings.xml b/packages/SettingsLib/res/values-in/strings.xml
index c02e3fa..991a2e3 100644
--- a/packages/SettingsLib/res/values-in/strings.xml
+++ b/packages/SettingsLib/res/values-in/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Penambatan bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Menambatkan"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Menambatkan &amp; hotspot portabel"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profil kerja"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Semua aplikasi kerja"</string>
     <string name="user_guest" msgid="8475274842845401871">"Tamu"</string>
     <string name="unknown" msgid="1592123443519355854">"Tidak diketahui"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Pengguna: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Luncurkan setelan mesin"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Mesin yang dipilih"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Umum"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Setel ulang tinggi nada ucapan"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Setel ulang tinggi nada diucapkannya teks menjadi default."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Sangat lambat"</item>
     <item msgid="4795095314303559268">"Lambat"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Dikontrol oleh admin"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Diaktifkan oleh administrator"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Dinonaktifkan oleh administrator"</string>
-    <string name="home" msgid="8263346537524314127">"Layar Utama"</string>
+    <string name="home" msgid="3256884684164448244">"Layar Utama Setelan"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> lalu"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Tersisa <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Kecil"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Lebih besar"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Terbesar"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"(<xliff:g id="DENSITYDPI">%d</xliff:g>) khusus"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Bantuan &amp; masukan"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-is-rIS/strings.xml b/packages/SettingsLib/res/values-is-rIS/strings.xml
index bdf5a35..fb4a4d4 100644
--- a/packages/SettingsLib/res/values-is-rIS/strings.xml
+++ b/packages/SettingsLib/res/values-is-rIS/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth-tjóðrun"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tjóðrun"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tjóðrun og heitur reitur"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Vinnusnið"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Öll vinnuforrit"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gestur"</string>
     <string name="unknown" msgid="1592123443519355854">"Óþekkt"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Notandi: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Stillingar vélarræsingar"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Valin vél"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Almennt"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Endurstilla tónhæð raddar"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Stilla tónhæð á upplesnum texta aftur á sjálfgefna stillingu."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Mjög hægt"</item>
     <item msgid="4795095314303559268">"Hægt"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Stjórnað af kerfisstjóra"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Virkjað af stjórnanda"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Stjórnandi gerði óvirkt"</string>
-    <string name="home" msgid="8263346537524314127">"Heim"</string>
+    <string name="home" msgid="3256884684164448244">"Aðalsíða stillinga"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Fyrir <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> eftir"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Lítið"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Stærra"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Stærst"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Sérsniðið (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Hjálp og ábendingar"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-it/strings.xml b/packages/SettingsLib/res/values-it/strings.xml
index 43c41d7..fcdf31c 100644
--- a/packages/SettingsLib/res/values-it/strings.xml
+++ b/packages/SettingsLib/res/values-it/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Tethering Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering/hotspot portatile"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profilo di lavoro"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Tutte le app di lavoro"</string>
     <string name="user_guest" msgid="8475274842845401871">"Ospite"</string>
     <string name="unknown" msgid="1592123443519355854">"Sconosciuta"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Utente: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Avvia impostazioni del motore"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Motore preferito"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Generali"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Reimposta tono voce"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Reimposta il tono predefinito di pronuncia del testo."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Molto lenta"</item>
     <item msgid="4795095314303559268">"Lenta"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Gestita dall\'amministratore"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Attivata dall\'amministratore"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Disattivata dall\'amministratore"</string>
-    <string name="home" msgid="8263346537524314127">"Home page"</string>
+    <string name="home" msgid="3256884684164448244">"Home page Impostazioni"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> fa"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> rimanenti"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Piccolo"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Più grande"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Massimo"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personalizzato (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Guida e feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-iw/strings.xml b/packages/SettingsLib/res/values-iw/strings.xml
index e25d218..48e5b46 100644
--- a/packages/SettingsLib/res/values-iw/strings.xml
+++ b/packages/SettingsLib/res/values-iw/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"‏שיתוף אינטרנט דרך Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"שיתוף אינטרנט בין ניידים"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"נקודה לשיתוף אינטרנט"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"פרופיל עבודה"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"כל אפליקציות העבודה"</string>
     <string name="user_guest" msgid="8475274842845401871">"אורח"</string>
     <string name="unknown" msgid="1592123443519355854">"לא ידוע"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"משתמש: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"השק הגדרות מנוע"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"מנוע מועדף"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"כללי"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"אפס את גובה צליל הדיבור"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"אפס את גובה הצליל שבו מושמע הטקסט לברירת המחדל."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"איטי מאוד"</item>
     <item msgid="4795095314303559268">"איטי"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"נמצא בשליטת מנהל מערכת"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"הופעל על ידי מנהל המערכת"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"הושבת על ידי מנהל המערכת"</string>
-    <string name="home" msgid="8263346537524314127">"דף הבית"</string>
+    <string name="home" msgid="3256884684164448244">"דף הבית של ההגדרות"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"לפני <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"נשארו <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"קטן"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"יותר גדול"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"הכי גדול"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"מותאם אישית (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"עזרה ומשוב"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ja/strings.xml b/packages/SettingsLib/res/values-ja/strings.xml
index ac239fe..d9156b3 100644
--- a/packages/SettingsLib/res/values-ja/strings.xml
+++ b/packages/SettingsLib/res/values-ja/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetoothテザリング"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"テザリング"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"テザリングとポータブルアクセスポイント"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"仕事用プロファイル"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"すべての仕事用アプリ"</string>
     <string name="user_guest" msgid="8475274842845401871">"ゲスト"</string>
     <string name="unknown" msgid="1592123443519355854">"不明"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"ユーザー: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"エンジン設定を起動"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"優先するエンジン"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"全般"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"音声の高さをリセット"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"テキスト読み上げの音声の高さをデフォルトにリセットします。"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"非常に遅い"</item>
     <item msgid="4795095314303559268">"遅い"</item>
@@ -324,7 +326,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"管理者により管理されています"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"管理者によって有効にされています"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"管理者によって無効にされています"</string>
-    <string name="home" msgid="8263346537524314127">"ホーム"</string>
+    <string name="home" msgid="3256884684164448244">"設定のホーム"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g>前"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"あと <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"小"</string>
@@ -333,6 +335,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"特大"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"最大"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"カスタム（<xliff:g id="DENSITYDPI">%d</xliff:g>）"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"ヘルプとフィードバック"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ka-rGE/strings.xml b/packages/SettingsLib/res/values-ka-rGE/strings.xml
index 883d637..5048e4e 100644
--- a/packages/SettingsLib/res/values-ka-rGE/strings.xml
+++ b/packages/SettingsLib/res/values-ka-rGE/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth-მოდემი"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"მოდემის რეჟიმი"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"მოდემი და პორტატული უსადენო ქსელი"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"სამუშაო პროფილი"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"სამსახურის ყველა აპი"</string>
     <string name="user_guest" msgid="8475274842845401871">"სტუმარი"</string>
     <string name="unknown" msgid="1592123443519355854">"უცნობი"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"მომხმარებელი: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"ძრავის პარამეტრების გაშვება"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"რჩეული ძრავი"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"ზოგადი"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"მეტყველების ტონის გადაყენება"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"ტექსტის გახმოვანების ტონის ნაგულისხმევზე დაბრუნება."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"ძალიან ნელი"</item>
     <item msgid="4795095314303559268">"ნელი"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"იმართება ადმინისტრატორის მიერ"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"ჩართულია ადმინისტრატორის მიერ"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"გათიშულია ადმინისტრატორის მიერ"</string>
-    <string name="home" msgid="8263346537524314127">"მთავარი"</string>
+    <string name="home" msgid="3256884684164448244">"პარამეტრების მთავარი გვერდი"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"გავიდა <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"დარჩენილია <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"პატარა"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"უფრო დიდი"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"უდიდესი"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"მორგებული (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"დახმარება და გამოხმაურება"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-kk-rKZ/strings.xml b/packages/SettingsLib/res/values-kk-rKZ/strings.xml
index 3270170..e75efc8 100644
--- a/packages/SettingsLib/res/values-kk-rKZ/strings.xml
+++ b/packages/SettingsLib/res/values-kk-rKZ/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth модем"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Тетеринг"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Тетеринг және алынбалы хотспот"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Жұмыс профилі"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Барлық жұмыс қолданбалары"</string>
     <string name="user_guest" msgid="8475274842845401871">"Қонақ"</string>
     <string name="unknown" msgid="1592123443519355854">"Белгісіз"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Пайдаланушы: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Қозғалтқыш параметрлерін қосу"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Қалаулы қозғалтқыш"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Жалпы"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Дауыс тембрін бастапқы мәніне қайтару"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Мәтінді айту тембрін әдепкі мәніне қайтару."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Өте баяу"</item>
     <item msgid="4795095314303559268">"Баяу"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Әкімші басқарады"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Әкімші қосқан"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Әкімші өшірген"</string>
-    <string name="home" msgid="8263346537524314127">"Негізгі бет"</string>
+    <string name="home" msgid="3256884684164448244">"Параметрлер негізгі беті"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> бұрын"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> қалды"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Кішкентай"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Үлкенірек"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Ең үлкен"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Арнаулы (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Анықтама және пікір"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-km-rKH/strings.xml b/packages/SettingsLib/res/values-km-rKH/strings.xml
index 9d6d3475..b86d59f 100644
--- a/packages/SettingsLib/res/values-km-rKH/strings.xml
+++ b/packages/SettingsLib/res/values-km-rKH/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ការ​ភ្ជាប់ប៊្លូធូស"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"ការ​ភ្ជាប់"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"ការ​ភ្ជាប់ &amp; ហតស្ពត​ចល័ត"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"ប្រវត្តិរូប​ការងារ"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"កម្មវិធីការងារទាំងអស់"</string>
     <string name="user_guest" msgid="8475274842845401871">"ភ្ញៀវ"</string>
     <string name="unknown" msgid="1592123443519355854">"មិន​ស្គាល់"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"អ្នកប្រើ៖ <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"ចាប់ផ្ដើម​ការកំណត់​ម៉ាស៊ីន​ផ្សេង"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"ម៉ាស៊ីន​ដែល​ពេញ​ចិត្ត"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"ទូទៅ"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"កំណត់កម្រិតសំឡេងនៃការនិយាយ"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"កំណត់កម្រិតសំឡេងនៃការបន្លឺអត្ថបទទៅលំនាំដើមឡើងវិញ។"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"យឺតខ្លាំង"</item>
     <item msgid="4795095314303559268">"យឺត"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"គ្រប់គ្រងដោយអ្នកគ្រប់គ្រង"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"បានបើកដំណើរការដោយអ្នកគ្រប់គ្រង"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"បានបិទដំណើរការដោយអ្នកគ្រប់គ្រង"</string>
-    <string name="home" msgid="8263346537524314127">"ដើម"</string>
+    <string name="home" msgid="3256884684164448244">"ទំព័រដើមនៃការកំណត់"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> មុន"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"នៅសល់ <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"តូច"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"ធំជាង"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"ធំបំផុត"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"ផ្ទាល់ខ្លួន (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"ជំនួយ និងមតិស្ថាបនា"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-kn-rIN/strings.xml b/packages/SettingsLib/res/values-kn-rIN/strings.xml
index dc35604..16584db 100644
--- a/packages/SettingsLib/res/values-kn-rIN/strings.xml
+++ b/packages/SettingsLib/res/values-kn-rIN/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ಬ್ಲೂಟೂತ್‌‌ ಟೆಥರಿಂಗ್‌"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"ಟೆಥರಿಂಗ್‌"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"ಟೆಥರಿಂಗ್ &amp; ಪೋರ್ಟಬಲ್ ಹಾಟ್‌ಸ್ಪಾಟ್"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"ಕೆಲಸದ ಪ್ರೊಫೈಲ್"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"ಎಲ್ಲ ಕೆಲಸದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು"</string>
     <string name="user_guest" msgid="8475274842845401871">"ಅತಿಥಿ"</string>
     <string name="unknown" msgid="1592123443519355854">"ಅಜ್ಞಾತ"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"ಬಳಕೆದಾರ: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"ಎಂಜಿನ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಪ್ರಾರಂಭಿಸು"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"ಪ್ರಾಶಸ್ತ್ಯದ ಎಂಜಿನ್"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"ಸಾಮಾನ್ಯ"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"ಉಚ್ಛಾರಣೆ ಪಿಚ್‌ ಅನ್ನು ಮರುಹೊಂದಿಸಿ"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"ಡೀಫಾಲ್ಟ್‌ಗೆ ಪಠ್ಯವನ್ನು ಉಚ್ಛರಿಸುವ ರೀತಿಯಲ್ಲಿ ಪಿಚ್‌ ಅನ್ನು ಮರುಹೊಂದಿಸಿ."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"ತುಂಬಾ ನಿಧಾನ"</item>
     <item msgid="4795095314303559268">"ನಿಧಾನ"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"ನಿರ್ವಾಹಕರ ಮೂಲಕ ನಿಯಂತ್ರಿಸಲಾಗಿದೆ"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"ನಿರ್ವಾಹಕರಿಂದ ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"ನಿರ್ವಾಹಕರಿಂದ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string>
-    <string name="home" msgid="8263346537524314127">"ಮುಖಪುಟ"</string>
+    <string name="home" msgid="3256884684164448244">"ಸೆಟ್ಟಿಂಗ್‌ಗಳ ಮುಖಪುಟ"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> ಹಿಂದೆ"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> ಉಳಿದಿದೆ"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"ಸಣ್ಣದು"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"ಸ್ವಲ್ಪ ದೊಡ್ಡ"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"ದೊಡ್ಡ"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"ಕಸ್ಟಮ್ (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"ಸಹಾಯ &amp; amp; ಪ್ರತಿಕ್ರಿಯೆ"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ko/strings.xml b/packages/SettingsLib/res/values-ko/strings.xml
index fc8f478..a76282e 100644
--- a/packages/SettingsLib/res/values-ko/strings.xml
+++ b/packages/SettingsLib/res/values-ko/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"블루투스 테더링"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"테더링"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"테더링 및 휴대용 핫스팟"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"직장 프로필"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"모든 직장 앱"</string>
     <string name="user_guest" msgid="8475274842845401871">"손님"</string>
     <string name="unknown" msgid="1592123443519355854">"알 수 없음"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"사용자: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"엔진 설정 실행"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"기본 엔진"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"기본설정"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"말하는 속도 재설정"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"텍스트를 읽어주는 속도를 기본값으로 재설정합니다."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"매우 느리게"</item>
     <item msgid="4795095314303559268">"느리게"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"관리자가 제어"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"관리자가 사용 설정함"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"관리자가 사용 중지함"</string>
-    <string name="home" msgid="8263346537524314127">"홈"</string>
+    <string name="home" msgid="3256884684164448244">"설정 홈"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> 전"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> 남음"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"작게"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"더 크게"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"가장 크게"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"맞춤(<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"도움말 및 의견"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ky-rKG/strings.xml b/packages/SettingsLib/res/values-ky-rKG/strings.xml
index 8b0119e..48718f1 100644
--- a/packages/SettingsLib/res/values-ky-rKG/strings.xml
+++ b/packages/SettingsLib/res/values-ky-rKG/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth жалгаштыруу"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Жалгаштыруу"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Жалгаштыруу жана ташыма чекит"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Жумуш профили"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Жумуш профилинин колднмлр"</string>
     <string name="user_guest" msgid="8475274842845401871">"Конок"</string>
     <string name="unknown" msgid="1592123443519355854">"Белгисиз"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Колдонуучу: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Жарак тууралоолорун ачуу"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Тандалган жарак"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Жалпы"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Сүйлөө тонун баштапкы абалга келтирүү"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Текст айтылчу тонду демейки тоного коюңуз."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Өтө жай"</item>
     <item msgid="4795095314303559268">"Жай"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Администратор тарабынан көзөмөлдөнөт"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Администратор иштетип койгон"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Администратор өчүрүп койгон"</string>
-    <string name="home" msgid="8263346537524314127">"Башкы бет"</string>
+    <string name="home" msgid="3256884684164448244">"Жөндөөлөрдүн башкы бети"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> мурун"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> калды"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Кичине"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Чоңураак"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Эң чоң"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Ыңгайлаштырылган (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Жардам жана жооп пикир"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-lo-rLA/strings.xml b/packages/SettingsLib/res/values-lo-rLA/strings.xml
index 3532137..f8b1ba5f 100644
--- a/packages/SettingsLib/res/values-lo-rLA/strings.xml
+++ b/packages/SettingsLib/res/values-lo-rLA/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ປ່ອຍສັນຍານຜ່ານ Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"ການປ່ອຍສັນຍານ"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"ການປ່ອຍສັນຍານ &amp; ຮັອດສະປອດເຄື່ອນທີ່"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"​ໂປຣ​ໄຟລ໌​ບ່ອນ​ເຮັດ​ວຽກ"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"ແອັບເຮັດວຽກທັງໝົດ"</string>
     <string name="user_guest" msgid="8475274842845401871">"ແຂກ"</string>
     <string name="unknown" msgid="1592123443519355854">"ບໍ່ຮູ້ຈັກ"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"ຜູ່ໃຊ້: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"ເປີດການຕັ້ງຄ່າລະບົບສະເຄາະສຽງ"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"ລະບົບທີ່ຕ້ອງການ"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"ທົ່ວໄປ"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"ຣີເຊັດລະດັບສຽງການເວົ້າ"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"ຣີເຊັດລະດັບສຽງທີ່ເວົ້າຂໍ້ຄວາມອອກສຽງໃຫ້ເປັນຄ່າເລີ່ມຕົ້ນ."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"ຊ້າຫຼາຍ"</item>
     <item msgid="4795095314303559268">"ຊ້າ"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"ຄວບຄຸມໂດຍຜູ້ເບິ່ງແຍງ"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"ຖືກເປີດໃຊ້ໂດຍຜູ້ເບິ່ງແຍງລະບົບ"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"ຖືກປິດໄວ້ໂດຍຜູ້ເບິ່ງແຍງລະບົບ"</string>
-    <string name="home" msgid="8263346537524314127">"​ໜ້າຫຼັກ"</string>
+    <string name="home" msgid="3256884684164448244">"ໜ້າທຳອິດຂອງການຕັ້ງຄ່າ"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> ກ່ອນນີ້"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"ຍັງເຫຼືອ <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"ນ້ອຍ"</string>
diff --git a/packages/SettingsLib/res/values-lt/strings.xml b/packages/SettingsLib/res/values-lt/strings.xml
index 02739f3..0e3180d 100644
--- a/packages/SettingsLib/res/values-lt/strings.xml
+++ b/packages/SettingsLib/res/values-lt/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"„Bluetooth“ susiejimas"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Susiejimas"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Susiej. ir perk. vieš. int. pr. tašk."</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Darbo profilis"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Visos darbo programos"</string>
     <string name="user_guest" msgid="8475274842845401871">"Svečias"</string>
     <string name="unknown" msgid="1592123443519355854">"Nežinomas"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Naudotojas: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Paleisti variklio nustatymus"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Pageidaujamas variklis"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Bendra"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Iš naujo nustatyti kalbėjimo toną"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Iš naujo nustatyti toną, kuriuo sakomas tekstas, į numatytąjį."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Labai lėtas"</item>
     <item msgid="4795095314303559268">"Lėtas"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Valdo administratorius"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Įgalino administratorius"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Išjungė administratorius"</string>
-    <string name="home" msgid="8263346537524314127">"Pagrindinis ekranas"</string>
+    <string name="home" msgid="3256884684164448244">"Pagrindinis Nustatymų ekranas"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Prieš <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Liko <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Mažas"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Didesnis"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Didžiausias"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Tinkintas (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Pagalba ir atsiliepimai"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-lv/strings.xml b/packages/SettingsLib/res/values-lv/strings.xml
index 54c75ff..62d6808 100644
--- a/packages/SettingsLib/res/values-lv/strings.xml
+++ b/packages/SettingsLib/res/values-lv/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth saistīšana"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Saistīšana"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Piesaiste un pārn. tīklājs"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Darba profils"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Visas darba grupas"</string>
     <string name="user_guest" msgid="8475274842845401871">"Viesis"</string>
     <string name="unknown" msgid="1592123443519355854">"Nezināms"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Lietotājs: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Programmas iestatījumu palaišana"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Vēlamā programma"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Vispārīgi"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Atiestatīt runas skaņas augstumu"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Atiestatiet noklusējuma vērtību teksta izrunāšanas skaņas augstumam."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Ļoti lēni"</item>
     <item msgid="4795095314303559268">"Lēni"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Kontrolē administrators"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Iespējojis administrators"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Atspējojis administrators"</string>
-    <string name="home" msgid="8263346537524314127">"Sākums"</string>
+    <string name="home" msgid="3256884684164448244">"Iestatījumu sākumekrāns"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Pirms šāda laika: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Atlikušais laiks: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Mazs"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Lielāks"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Vislielākais"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Pielāgots (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Palīdzība un atsauksmes"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-mk-rMK/strings.xml b/packages/SettingsLib/res/values-mk-rMK/strings.xml
index 8f11118..c50013a 100644
--- a/packages/SettingsLib/res/values-mk-rMK/strings.xml
+++ b/packages/SettingsLib/res/values-mk-rMK/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Поврзување со Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Поврзување"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Поврзување и пренослива точка на пристап"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Работен профил"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Сите апликации за работа"</string>
     <string name="user_guest" msgid="8475274842845401871">"Гостин"</string>
     <string name="unknown" msgid="1592123443519355854">"Непознато"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Корисник: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Стартувај подесувања на софтвер"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Претпочитан софтвер"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Општо"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Ресетирајте ја висината на изговорот"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Ресетирајте ја висината на изговор на текстот на стандардна."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Многу бавно"</item>
     <item msgid="4795095314303559268">"Бавно"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Контролирано од администраторот"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Овозможено од администраторот"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Оневозможено од администраторот"</string>
-    <string name="home" msgid="8263346537524314127">"Почетна страница"</string>
+    <string name="home" msgid="3256884684164448244">"Почетна страница за поставки"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Пред <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Преостанаа <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Мал"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Поголем"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Најголем"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Приспособен (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Помош и повратни информации"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ml-rIN/strings.xml b/packages/SettingsLib/res/values-ml-rIN/strings.xml
index f39b109..6c62f9f 100644
--- a/packages/SettingsLib/res/values-ml-rIN/strings.xml
+++ b/packages/SettingsLib/res/values-ml-rIN/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ബ്ലൂടൂത്ത് ടെതറിംഗ്"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"ടെതറിംഗ്"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"ടെതറിംഗും പോർട്ടബിൾ ഹോട്ട്സ്‌പോട്ടും"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"ഔദ്യോഗിക പ്രൊഫൈൽ"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"എല്ലാ ഔദ്യോഗിക ആപ്‌സും"</string>
     <string name="user_guest" msgid="8475274842845401871">"അതിഥി"</string>
     <string name="unknown" msgid="1592123443519355854">"അജ്ഞാതം"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"ഉപയോക്താവ്: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"എഞ്ചിൻ ക്രമീകരണങ്ങൾ സമാരംഭിക്കുക"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"തിരഞ്ഞെടുത്ത എഞ്ചിൻ"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"പൊതുവായ കാര്യങ്ങൾ"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"സംസാരത്തിന്റെ ശബ്ദനില പുനഃക്രമീകരിക്കുക"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"ടെക്‌സ്റ്റ് സംസാരിക്കപ്പെടുന്ന ശബ്ദനില \'ഡിഫോൾട്ടി\'ലേക്ക് പുനഃക്രമീകരിക്കുക."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"വളരെ കുറഞ്ഞ വേഗത്തിൽ"</item>
     <item msgid="4795095314303559268">"കുറഞ്ഞ വേഗത്തിൽ"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"അഡ്‌മിൻ നിയന്ത്രിക്കുന്നത്"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"അഡ്‌മിനിസ്ട്രേറ്റർ പ്രവർത്തനക്ഷമമാക്കി"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"അഡ്‌മിനിസ്ട്രേറ്റർ പ്രവർത്തനരഹിതമാക്കി"</string>
-    <string name="home" msgid="8263346537524314127">"ഹോം"</string>
+    <string name="home" msgid="3256884684164448244">"ക്രമീകരണ ഹോം"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> മുമ്പ്"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> ശേഷിക്കുന്നു"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"ചെറുത്"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"കൂടുതൽ വലുത്"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"ഏറ്റവും വലുത്"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"ഇഷ്ടാനുസൃതം ( <xliff:g id="DENSITYDPI">%d</xliff:g> )"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"സഹായവും പ്രതികരണവും"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-mn-rMN/strings.xml b/packages/SettingsLib/res/values-mn-rMN/strings.xml
index 8b005d1..a4a030e 100644
--- a/packages/SettingsLib/res/values-mn-rMN/strings.xml
+++ b/packages/SettingsLib/res/values-mn-rMN/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Блютүүт модем болгох"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Модем болгох"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Модем болгох &amp; зөөврийн сүлжээний цэг"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Ажлын профайл"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Ажлын бүх апп"</string>
     <string name="user_guest" msgid="8475274842845401871">"Зочин"</string>
     <string name="unknown" msgid="1592123443519355854">"Тодорхойгүй"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Хэрэглэгч: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Үүсгүүрийн тохиргоог ажиллуулах"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Давуу үүсгүүр"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Ерөнхий"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Ярианы өнгийг дахин тохируулах"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Текст унших хоолойн өнгийг өгөгдмөл байдал руу нь дахин тохируулах."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Маш удаан"</item>
     <item msgid="4795095314303559268">"Удаан"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Админ удирдсан"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Админ идэвхтэй болгосон"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Админ идэвхгүй болгосон"</string>
-    <string name="home" msgid="8263346537524314127">"Нүүр"</string>
+    <string name="home" msgid="3256884684164448244">"Тохиргооны нүүр хуудас"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> өмнө"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> үлдсэн"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Жижиг"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Илүү том"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Хамгийн том"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Тогтмол утга (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Тусламж, санал хүсэлт"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-mr-rIN/strings.xml b/packages/SettingsLib/res/values-mr-rIN/strings.xml
index 9296a32..8e5c4dd 100644
--- a/packages/SettingsLib/res/values-mr-rIN/strings.xml
+++ b/packages/SettingsLib/res/values-mr-rIN/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ब्लूटुथ टेदरिंग"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"टिथरिंग"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"टेदरिंग आणि पोर्टेबल हॉटस्पॉट"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"कार्य प्रोफाईल"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"सर्व कार्य अॅप्स"</string>
     <string name="user_guest" msgid="8475274842845401871">"अतिथी"</string>
     <string name="unknown" msgid="1592123443519355854">"अज्ञात"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"वापरकर्ता: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"इंजिन सेटिंग्ज लाँच करा"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"प्राधान्यकृत इंजिन"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"सामान्य"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"उच्चार पिच रीसेट करा"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"डीफॉल्टवर मजकूर ज्या पिचवर बोलला जातो तो रीसेट करा."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"खूप धीमे"</item>
     <item msgid="4795095314303559268">"धीमे"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"प्रशासकाने नियंत्रित केलेले"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"प्रशासकाने सक्षम केलेले"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"प्रशासकाने अक्षम केलेले"</string>
-    <string name="home" msgid="8263346537524314127">"मुख्यपृष्ठ"</string>
+    <string name="home" msgid="3256884684164448244">"सेटिंग्ज मुख्यपृष्ठ"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> पूर्वी"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> शिल्लक"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"लहान"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"आणखी मोठा"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"सर्वात मोठा"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"सानुकूल करा (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"मदत आणि अभिप्राय"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ms-rMY/strings.xml b/packages/SettingsLib/res/values-ms-rMY/strings.xml
index 60a5298..d9227a1 100644
--- a/packages/SettingsLib/res/values-ms-rMY/strings.xml
+++ b/packages/SettingsLib/res/values-ms-rMY/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Penambatan Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Penambatan"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Liputan tambatan &amp; mudah alih"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profil kerja"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Semua apl kerja"</string>
     <string name="user_guest" msgid="8475274842845401871">"Tetamu"</string>
     <string name="unknown" msgid="1592123443519355854">"Tidak diketahui"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Pengguna: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Lancarkan tetapan enjin"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Enjin pilihan"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Umum"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Tetapkan semula nada pertuturan"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Tetapkan semula nada tuturan teks kepada lalai."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Sangat perlahan"</item>
     <item msgid="4795095314303559268">"Perlahan"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Dikawal oleh pentadbir"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Didayakan oleh pentadbir"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Dilumpuhkan oleh pentadbir"</string>
-    <string name="home" msgid="8263346537524314127">"Skrin Utama"</string>
+    <string name="home" msgid="3256884684164448244">"Laman Utama Tetapan"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> yang lalu"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> lagi"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Kecil"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Lebih besar"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Terbesar"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Tersuai (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Bantuan &amp; maklum balas"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-my-rMM/strings.xml b/packages/SettingsLib/res/values-my-rMM/strings.xml
index e512aac..d53cbcc 100644
--- a/packages/SettingsLib/res/values-my-rMM/strings.xml
+++ b/packages/SettingsLib/res/values-my-rMM/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ဘလူးတုသ်တဆင့်ပြန်ချိတ်ဆက်"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"တဆင့်ပြန်လည်ချိတ်ဆက်ခြင်း"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"တဆင့်ချိတ်ဆက်ခြင်း၊ ဟော့စပေါ့"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"အလုပ် ပရိုဖိုင်"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"အလုပ်သုံးအက်ပ်များအားလုံး"</string>
     <string name="user_guest" msgid="8475274842845401871">"ဧည့်သည်"</string>
     <string name="unknown" msgid="1592123443519355854">"အကြောင်းအရာ မသိရှိ"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"သုံးစွဲသူ၊ <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"အင်ဂျင်ဆက်တင်များကိုဖွင့်ခြင်း"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"ဦးစားပေးအင်ဂျင်"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"ယေဘုယျ"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"စကားပြော အသံအနေအထားကို ပြန်လည်သတ်မှတ်ပါ"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"စာသားကို မူလပြောသည့် အသံအနေအထားသို့ ပြန်လည်သတ်မှတ်ပါ။"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"အလွန်နှေး"</item>
     <item msgid="4795095314303559268">"နှေး"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"စီမံခန့်ခွဲသူမှ ထိန်းချုပ်ပါသည်"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"စီမံခန့်ခွဲသူမှ ဖွင့်ထားသည်"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"စီမံခန့်ခွဲသူမှ ပိတ်ထားသည်"</string>
-    <string name="home" msgid="8263346537524314127">"ပင်မ"</string>
+    <string name="home" msgid="3256884684164448244">"ဆက်တင် ပင်မစာမျက်နှာ"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"ပြီးခဲ့သည့် <xliff:g id="ID_1">%1$s</xliff:g> က"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> ကျန်ပါသည်"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"သေး"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"ပိုကြီး"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"အကြီးဆုံး"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"စိတ်ကြိုက် (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"အကူအညီ နှင့်တုံ့ပြန်ချက်"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-nb/strings.xml b/packages/SettingsLib/res/values-nb/strings.xml
index 3d01254..2ede01b 100644
--- a/packages/SettingsLib/res/values-nb/strings.xml
+++ b/packages/SettingsLib/res/values-nb/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth-internettdeling"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Internettdeling"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Nettdeling og trådløs sone"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Jobbprofil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Alle jobbapper"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gjest"</string>
     <string name="unknown" msgid="1592123443519355854">"Ukjent"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Bruker:<xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Innstillinger for kjøring av motor"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Foretrukket motor"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Generelt"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Tilbakestill talehastigheten"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Tilbakestill talehastigheten for tekst til standard."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Veldig langsom"</item>
     <item msgid="4795095314303559268">"Langsom"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Kontrollert av administratoren"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Slått på av administratoren"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Avslått av administratoren"</string>
-    <string name="home" msgid="8263346537524314127">"Startside"</string>
+    <string name="home" msgid="3256884684164448244">"Innstillinger for startsiden"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> siden"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> gjenstår"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Liten"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Større"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Størst"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Egendefinert (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Hjelp og tilbakemelding"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ne-rNP/strings.xml b/packages/SettingsLib/res/values-ne-rNP/strings.xml
index f2e6ea4..264673e 100644
--- a/packages/SettingsLib/res/values-ne-rNP/strings.xml
+++ b/packages/SettingsLib/res/values-ne-rNP/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ब्लुटुथ टेथर गर्दै"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"टेदर गर्दै"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"टेदर गर्ने र पोर्टेबल हटस्पट"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"कार्य प्रोफाइल"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"कार्य प्रोफाइलका सबै अनुप्रयोगहरू"</string>
     <string name="user_guest" msgid="8475274842845401871">"अतिथि"</string>
     <string name="unknown" msgid="1592123443519355854">"अज्ञात"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"प्रयोगकर्ता: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"इन्जिन सेटिङहरू सुरुवात गर्नुहोस्"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"रुचाइएको इन्जिन"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"सामान्य"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"बोलीको पिचलाई रिसेट गर्नुहोस्"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"पाठ बोलिने पिचलाई पूर्वनिर्धारितमा रिसेट गर्नुहोस्।"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"निकै बिस्तारै"</item>
     <item msgid="4795095314303559268">"ढिलो"</item>
@@ -296,9 +298,9 @@
     <string name="accessibility_display_daltonizer_preference_subtitle" msgid="3484969015295282911">"यो सुविधा प्रयोगात्मक छ र प्रदर्शनमा असर गर्न सक्छ।"</string>
     <string name="daltonizer_type_overridden" msgid="3116947244410245916">"<xliff:g id="TITLE">%1$s</xliff:g> द्वारा अधिरोहित"</string>
     <string name="power_remaining_duration_only" msgid="4400068916452346544">"लगभग <xliff:g id="TIME">%1$s</xliff:g> बाँकी छ"</string>
-    <string name="power_remaining_duration_only_short" msgid="5329694252258605547">"<xliff:g id="TIME">%1$s</xliff:g> बाँकी छ"</string>
+    <string name="power_remaining_duration_only_short" msgid="5329694252258605547">"बाँकी समय <xliff:g id="TIME">%1$s</xliff:g>"</string>
     <string name="power_discharging_duration" msgid="1605929174734600590">"<xliff:g id="LEVEL">%1$s</xliff:g> - लगभग। <xliff:g id="TIME">%2$s</xliff:g> बायाँ"</string>
-    <string name="power_discharging_duration_short" msgid="4192244429001842403">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="TIME">%2$s</xliff:g> बाँकी छ"</string>
+    <string name="power_discharging_duration_short" msgid="4192244429001842403">"बाँकी समय <xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="power_charging" msgid="1779532561355864267">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATE">%2$s</xliff:g>"</string>
     <string name="power_charging_duration" msgid="2853265177761520490">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="TIME">%2$s</xliff:g> पूर्ण नभए सम्म"</string>
     <string name="power_charging_duration_short" msgid="1098603958472207920">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="TIME">%2$s</xliff:g>"</string>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"प्रशासकद्वारा नियन्त्रित"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"प्रशासकद्वारा सक्षम गरिएको छ"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"प्रशासकद्वारा असक्षम गरिएको छ"</string>
-    <string name="home" msgid="8263346537524314127">"गृह"</string>
+    <string name="home" msgid="3256884684164448244">"सेटिङहरूको गृहपृष्ठ"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> पहिले"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> बाँकी"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"सानो"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"अझ ठूलो"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"सबैभन्दा ठूलो"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"अनुकूलन (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"मद्दत र प्रतिक्रिया"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-nl/strings.xml b/packages/SettingsLib/res/values-nl/strings.xml
index 4ae1fb0..1fae8b9 100644
--- a/packages/SettingsLib/res/values-nl/strings.xml
+++ b/packages/SettingsLib/res/values-nl/strings.xml
@@ -20,7 +20,7 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="wifi_fail_to_scan" msgid="1265540342578081461">"Kan niet scannen naar netwerken"</string>
+    <string name="wifi_fail_to_scan" msgid="1265540342578081461">"Kan niet zoeken naar netwerken"</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Geen"</string>
     <string name="wifi_remembered" msgid="4955746899347821096">"Opgeslagen"</string>
     <string name="wifi_disabled_generic" msgid="4259794910584943386">"Uitgeschakeld"</string>
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth-tethering"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering en draagbare hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Werkprofiel"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Alle werk-apps"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gast"</string>
     <string name="unknown" msgid="1592123443519355854">"Onbekend"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Gebruiker: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Engine-instellingen openen"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Voorkeursengine"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Algemeen"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Spreektoonhoogte resetten"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"De toonhoogte waarmee de tekst wordt uitgesproken, resetten naar standaardinstellingen."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Zeer langzaam"</item>
     <item msgid="4795095314303559268">"Langzaam"</item>
@@ -147,7 +149,7 @@
     <string name="enable_adb" msgid="7982306934419797485">"USB-foutopsporing"</string>
     <string name="enable_adb_summary" msgid="4881186971746056635">"Foutopsporingsmodus bij USB-verbinding"</string>
     <string name="clear_adb_keys" msgid="4038889221503122743">"Autorisatie USB-foutopsporing intrekken"</string>
-    <string name="bugreport_in_power" msgid="7923901846375587241">"Snelkoppeling naar foutenrapport"</string>
+    <string name="bugreport_in_power" msgid="7923901846375587241">"Snelle link naar foutenrapport"</string>
     <string name="bugreport_in_power_summary" msgid="1778455732762984579">"Een knop in het voedingsmenu weergeven om een foutenrapport te maken"</string>
     <string name="keep_screen_on" msgid="1146389631208760344">"Stand-by"</string>
     <string name="keep_screen_on_summary" msgid="2173114350754293009">"Scherm gaat nooit uit tijdens het opladen"</string>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Ingesteld door beheerder"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Ingeschakeld door beheerder"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Uitgeschakeld door beheerder"</string>
-    <string name="home" msgid="8263346537524314127">"Startpagina"</string>
+    <string name="home" msgid="3256884684164448244">"Startpagina voor instellingen"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> geleden"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> resterend"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Klein"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Groter"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Grootst"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Aangepast (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Help en feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-pa-rIN/strings.xml b/packages/SettingsLib/res/values-pa-rIN/strings.xml
index 5596cbc..cd08fda 100644
--- a/packages/SettingsLib/res/values-pa-rIN/strings.xml
+++ b/packages/SettingsLib/res/values-pa-rIN/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth ਟੀਥਰਿੰਗ"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"ਟੀਥਰਿੰਗ"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"ਟੀਥਰਿੰਗ &amp; ਪੋਰਟੇਬਲ ਹੌਟਸਪੌਟ"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"ਕੰਮ ਪ੍ਰੋਫਾਈਲ"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"ਸਾਰੀਆਂ ਕੰਮ ਐਪਾਂ"</string>
     <string name="user_guest" msgid="8475274842845401871">"ਮਹਿਮਾਨ"</string>
     <string name="unknown" msgid="1592123443519355854">"ਅਗਿਆਤ"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"ਉਪਭੋਗਤਾ: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"ਇੰਜਨ ਸੈਟਿੰਗਾਂ ਲੌਂਚ ਕਰੋ"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"ਤਰਜੀਹੀ ਇੰਜਣ"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"ਸਧਾਰਨ"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"ਬੋਲਣ ਦੀ ਪਿੱਚ ਨੂੰ ਦੁਬਾਰਾ ਮੁੜ-ਸੈੱਟ ਕਰੋ"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"ਉਸ ਪਿੱਚ \'ਤੇ ਮੁੜ-ਸੈੱਟ ਕਰੋ ਜਿਸ \'ਤੇ ਪੂਰਵ-ਨਿਰਧਾਰਤ ਤੌਰ \'ਤੇ ਲਿਖਤ ਨੂੰ ਬੋਲਿਆ ਜਾਂਦਾ ਹੈ।"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"ਬਹੁਤ ਹੌਲੀ"</item>
     <item msgid="4795095314303559268">"ਹੌਲੀ"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"ਪ੍ਰਸ਼ਾਸਕ ਵੱਲੋਂ ਕੰਟਰੋਲ ਕੀਤੀ ਗਈ"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"ਪ੍ਰਸ਼ਾਸਕ ਵੱਲੋਂ ਯੋਗ ਬਣਾਈ ਗਈ"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"ਪ੍ਰਸ਼ਾਸਕ ਵੱਲੋਂ ਅਯੋਗ ਬਣਾਈ ਗਈ"</string>
-    <string name="home" msgid="8263346537524314127">"ਮੁੱਖ ਸਕ੍ਰੀਨ"</string>
+    <string name="home" msgid="3256884684164448244">"ਸੈਟਿੰਗਾਂ ਮੁੱਖ ਪੰਨਾ"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> ਪਹਿਲਾਂ"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> ਬਾਕੀ"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"ਛੋਟਾ"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"ਥੋੜ੍ਹਾ ਵੱਡਾ"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"ਸਭ ਤੋਂ ਵੱਡਾ"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"ਵਿਸ਼ੇਸ਼-ਵਿਉਂਤਬੱਧ (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"ਮਦਦ ਅਤੇ ਪ੍ਰਤੀਕਰਮ"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-pl/strings.xml b/packages/SettingsLib/res/values-pl/strings.xml
index 81ebed8..f81b6b0 100644
--- a/packages/SettingsLib/res/values-pl/strings.xml
+++ b/packages/SettingsLib/res/values-pl/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Tethering przez Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering i punkt dostępu"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profil do pracy"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Wszystkie aplikacje do pracy"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gość"</string>
     <string name="unknown" msgid="1592123443519355854">"Nieznana"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Użytkownik: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Otwórz ustawienia mechanizmu"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Preferowany mechanizm"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Ogólne"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Zresetuj ton głosu"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Przywróć domyślny ton głosu czytającego tekst."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Bardzo wolno"</item>
     <item msgid="4795095314303559268">"Powoli"</item>
@@ -322,15 +324,14 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Kontrolowane przez administratora"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Włączone przez administratora"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Wyłączone przez administratora"</string>
-    <string name="home" msgid="8263346537524314127">"Ekran główny"</string>
+    <string name="home" msgid="3256884684164448244">"Ekran główny ustawień"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> temu"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Pozostało <xliff:g id="ID_1">%1$s</xliff:g>"</string>
-    <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Małe"</string>
-    <string name="screen_zoom_summary_default" msgid="2247006805614056507">"Domyślne"</string>
-    <string name="screen_zoom_summary_large" msgid="4835294730065424084">"Duże"</string>
-    <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Większe"</string>
-    <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Największe"</string>
+    <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Mały"</string>
+    <string name="screen_zoom_summary_default" msgid="2247006805614056507">"Domyślny"</string>
+    <string name="screen_zoom_summary_large" msgid="4835294730065424084">"Duży"</string>
+    <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Większy"</string>
+    <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Największy"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Niestandardowe (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Pomoc i opinie"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-pt-rBR/strings.xml b/packages/SettingsLib/res/values-pt-rBR/strings.xml
index 5bfbc2d..07e7602 100644
--- a/packages/SettingsLib/res/values-pt-rBR/strings.xml
+++ b/packages/SettingsLib/res/values-pt-rBR/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Tethering Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering e acesso portátil"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Perfil de trabalho"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Todos os apps de trabalho"</string>
     <string name="user_guest" msgid="8475274842845401871">"Convidado"</string>
     <string name="unknown" msgid="1592123443519355854">"Desconhecido"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Usuário: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Iniciar configurações do mecanismo"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Mecanismo preferencial"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Gerais"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Redefinir a frequência do som da fala"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Redefinir o tom no qual o texto é falado para o padrão."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Muito devagar"</item>
     <item msgid="4795095314303559268">"Devagar"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Controlada pelo admin"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Ativada pelo administrador"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Desativada pelo administrador"</string>
-    <string name="home" msgid="8263346537524314127">"Início"</string>
+    <string name="home" msgid="3256884684164448244">"Página inicial das configurações"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> atrás"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> restante(s)"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Pequena"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Muito grande"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Maior"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personalizada (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Ajuda e feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-pt-rPT/strings.xml b/packages/SettingsLib/res/values-pt-rPT/strings.xml
index 244e27d..4cd23fe 100644
--- a/packages/SettingsLib/res/values-pt-rPT/strings.xml
+++ b/packages/SettingsLib/res/values-pt-rPT/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Ligação Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Ligação ponto a ponto"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Partilha de Internet"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Perfil de trabalho"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Todas as apl. de trabalho"</string>
     <string name="user_guest" msgid="8475274842845401871">"Convidado"</string>
     <string name="unknown" msgid="1592123443519355854">"Desconhecido"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Utilizador: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Iniciar as definições do motor"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Motor preferido"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Geral"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Repor tom da voz"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Repor a predefinição do tom a que o texto é falado."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Muito lenta"</item>
     <item msgid="4795095314303559268">"Lenta"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Controlado pelo administrador"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Ativado pelo administrador"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Desativado pelo administrador"</string>
-    <string name="home" msgid="8263346537524314127">"Página inicial"</string>
+    <string name="home" msgid="3256884684164448244">"Página inicial de definições"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Há <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Resta(m) <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Pequeno"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Maior"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"O maior"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personalizado (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Ajuda e comentários"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-pt/strings.xml b/packages/SettingsLib/res/values-pt/strings.xml
index 5bfbc2d..07e7602 100644
--- a/packages/SettingsLib/res/values-pt/strings.xml
+++ b/packages/SettingsLib/res/values-pt/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Tethering Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering e acesso portátil"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Perfil de trabalho"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Todos os apps de trabalho"</string>
     <string name="user_guest" msgid="8475274842845401871">"Convidado"</string>
     <string name="unknown" msgid="1592123443519355854">"Desconhecido"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Usuário: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Iniciar configurações do mecanismo"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Mecanismo preferencial"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Gerais"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Redefinir a frequência do som da fala"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Redefinir o tom no qual o texto é falado para o padrão."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Muito devagar"</item>
     <item msgid="4795095314303559268">"Devagar"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Controlada pelo admin"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Ativada pelo administrador"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Desativada pelo administrador"</string>
-    <string name="home" msgid="8263346537524314127">"Início"</string>
+    <string name="home" msgid="3256884684164448244">"Página inicial das configurações"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> atrás"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> restante(s)"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Pequena"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Muito grande"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Maior"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personalizada (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Ajuda e feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ro/strings.xml b/packages/SettingsLib/res/values-ro/strings.xml
index 668d19c..dbc0d40 100644
--- a/packages/SettingsLib/res/values-ro/strings.xml
+++ b/packages/SettingsLib/res/values-ro/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Tethering prin Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering și hotspot portabil"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profil de serviciu"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Toate aplicațiile de serviciu"</string>
     <string name="user_guest" msgid="8475274842845401871">"Invitat"</string>
     <string name="unknown" msgid="1592123443519355854">"Necunoscut"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Utilizator: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Lansați setările motorului"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Motor preferat"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Preferințe generale"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Resetați tonalitatea vorbirii"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Resetați tonalitatea cu care se rostește textul în mod prestabilit."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Foarte încet"</item>
     <item msgid="4795095314303559268">"Încet"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Controlată de administrator"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Activată de administrator"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Dezactivată de administrator"</string>
-    <string name="home" msgid="8263346537524314127">"Ecranul principal"</string>
+    <string name="home" msgid="3256884684164448244">"Ecran principal Setări"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Acum <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Timp rămas: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Mic"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Mai mare"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Cel mai mare"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Personalizat (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Ajutor și feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ru/strings.xml b/packages/SettingsLib/res/values-ru/strings.xml
index a9d4abc..f87778f 100644
--- a/packages/SettingsLib/res/values-ru/strings.xml
+++ b/packages/SettingsLib/res/values-ru/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth-модем"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Режим модема"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Режим модема"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Рабочий профиль"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Корпоративные приложения"</string>
     <string name="user_guest" msgid="8475274842845401871">"Гость"</string>
     <string name="unknown" msgid="1592123443519355854">"Неизвестно"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Пользователь: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Настройки синтеза речи"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Система по умолчанию"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Общие"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Тон по умолчанию"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Установить стандартный тон при озвучивании текста."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Очень медленная"</item>
     <item msgid="4795095314303559268">"Медленная"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Контролируется администратором"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Включено администратором"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Отключено администратором"</string>
-    <string name="home" msgid="8263346537524314127">"Главная"</string>
+    <string name="home" msgid="3256884684164448244">"Настройки"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> назад"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Осталось <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Мелкий"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Очень крупный"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Максимальный"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Другой (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Справка/отзыв"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-si-rLK/strings.xml b/packages/SettingsLib/res/values-si-rLK/strings.xml
index 90b82f1..bd503d1 100644
--- a/packages/SettingsLib/res/values-si-rLK/strings.xml
+++ b/packages/SettingsLib/res/values-si-rLK/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"බ්ලූටූත් ටෙදරින්"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"ටෙදරින්"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"ටෙදරින් සහ සුවහනීය හොට්ස්පොට්"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"කාර්යාල පැතිකඩ"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"සියලු කාර්යාල යෙදුම්"</string>
     <string name="user_guest" msgid="8475274842845401871">"අමුත්තා"</string>
     <string name="unknown" msgid="1592123443519355854">"නොදනී"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"පරිශීලකයා: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"එන්ජිම් සැකසීම් දියත් කරන්න"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"වරණ එන්ජිම"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"සාමාන්‍ය"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"කථන තාරතාව යළි සකසන්න"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"පෙළ කථා කරන තාරතාව පෙරනිමි වෙත යළි සකසන්න."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"ඉතා මන්දගාමී"</item>
     <item msgid="4795095314303559268">"මන්දගාමී"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"පරිපාලක විසින් පාලනය කරන ලදී"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"පරිපාලක විසින් සබල කරන ලදී"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"පරිපාලක විසින් අබල කරන ලදී"</string>
-    <string name="home" msgid="8263346537524314127">"මුල් පිටුව"</string>
+    <string name="home" msgid="3256884684164448244">"සැකසීම් මුල් පිටුව"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g>කට පෙර"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g>ක් ඉතිරිය"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"කුඩා"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"වඩා විශාල"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"විශාලතම"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"අභිරුචි (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"උදව් සහ ප්‍රතිපෝෂණ"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-sk/strings.xml b/packages/SettingsLib/res/values-sk/strings.xml
index dbb4dde..25aa283 100644
--- a/packages/SettingsLib/res/values-sk/strings.xml
+++ b/packages/SettingsLib/res/values-sk/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Pripojenie cez Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Zdieľanie dát. pripojenia"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Zdieľané pripojenie a prenosný hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Pracovný profil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Všetky pracovné aplikácie"</string>
     <string name="user_guest" msgid="8475274842845401871">"Hosť"</string>
     <string name="unknown" msgid="1592123443519355854">"Neznáme"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Používateľ: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Spustiť nastavenia nástroja"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Preferovaný nástroj"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Všeobecné"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Obnoviť výšku hlasu"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Obnovte predvolenú výšku hlasu vyslovujúceho text"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Veľmi pomaly"</item>
     <item msgid="4795095314303559268">"Pomaly"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Ovládané správcom"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Povolené správcom"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Zakázané správcom"</string>
-    <string name="home" msgid="8263346537524314127">"Domov"</string>
+    <string name="home" msgid="3256884684164448244">"Domovská stránka nastavení"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"pred <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Zostáva <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Malé"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Väčšie"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Najväčšie"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Vlastné (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Pomocník a spätná väzba"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-sl/strings.xml b/packages/SettingsLib/res/values-sl/strings.xml
index 54e8636..19dbfed 100644
--- a/packages/SettingsLib/res/values-sl/strings.xml
+++ b/packages/SettingsLib/res/values-sl/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Internet prek Bluetootha"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Internet prek mob. napr."</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Modem/prenosna dost. točka"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Delovni profil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Vse delovne aplikacije"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gost"</string>
     <string name="unknown" msgid="1592123443519355854">"Neznano"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Uporabnik: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Zagon nastavitev mehanizma"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Prednostni mehanizem"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Splošno"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Ponastavitev višine govora"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Ponastavitev višine govorjenega besedila na privzete nastavitve."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Zelo počasi"</item>
     <item msgid="4795095314303559268">"Počasi"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Nadzira skrbnik"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Omogočil skrbnik"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Onemogočil skrbnik"</string>
-    <string name="home" msgid="8263346537524314127">"Začetni zaslon"</string>
+    <string name="home" msgid="3256884684164448244">"Začetna stran nastavitev"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Pred toliko časa: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Še <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Majhno"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Večje"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Največje"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Po meri (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Pomoč in povratne informacije"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-sq-rAL/strings.xml b/packages/SettingsLib/res/values-sq-rAL/strings.xml
index ecc10f4..4babf78 100644
--- a/packages/SettingsLib/res/values-sq-rAL/strings.xml
+++ b/packages/SettingsLib/res/values-sq-rAL/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Ndarje interneti përmes Bluetooth-it"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Ndarja e internetit"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Zonë qasjeje dhe ndarjeje interneti"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profili i punës"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Të gjitha aplikacionet e punës"</string>
     <string name="user_guest" msgid="8475274842845401871">"I ftuar"</string>
     <string name="unknown" msgid="1592123443519355854">"I panjohur"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Përdoruesi: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Hap cilësimet e motorit"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Motori i preferuar"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Të përgjithshme"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Rivendose tonin e të folurit."</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Rivendose te parazgjedhja tonin e të folurit për tekstin."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Shumë e ulët"</item>
     <item msgid="4795095314303559268">"E ngadaltë"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Kontrolluar nga administratori"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Aktivizuar nga administratori"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Çaktivizuar nga administratori"</string>
-    <string name="home" msgid="8263346537524314127">"Kreu"</string>
+    <string name="home" msgid="3256884684164448244">"Krey i cilësimeve"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> më parë"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> të mbetura"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"I vogël"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Më i madh"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Më i madhi"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"I personalizuar (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Ndihma dhe komentet"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-sr/strings.xml b/packages/SettingsLib/res/values-sr/strings.xml
index 5330893..6cd2b30 100644
--- a/packages/SettingsLib/res/values-sr/strings.xml
+++ b/packages/SettingsLib/res/values-sr/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth привезивање"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Повезивање са интернетом"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Повезивање и преносни хотспот"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Профил за посао"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Све радне апликације"</string>
     <string name="user_guest" msgid="8475274842845401871">"Гост"</string>
     <string name="unknown" msgid="1592123443519355854">"Непознато"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Корисник: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Покрени подешавања машине"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Жељена машина"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Опште"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Ресетујте висину тона говора"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Ресетујте висину тона којом се текст изговара на подразумевану."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Веома споро"</item>
     <item msgid="4795095314303559268">"Споро"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Контролише администратор"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Омогућио је администратор"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Онемогућио је администратор"</string>
-    <string name="home" msgid="8263346537524314127">"Почетни"</string>
+    <string name="home" msgid="3256884684164448244">"Почетна за Подешавања"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Пре <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Још <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Мали"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Већи"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Највећи"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Прилагођени (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Помоћ и повратне информације"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-sv/strings.xml b/packages/SettingsLib/res/values-sv/strings.xml
index 0a054578..ddb9a66 100644
--- a/packages/SettingsLib/res/values-sv/strings.xml
+++ b/packages/SettingsLib/res/values-sv/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Delning via Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Internetdelning"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Internetdelning och surfpunkt"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Arbetsprofil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Alla jobbappar"</string>
     <string name="user_guest" msgid="8475274842845401871">"Gäst"</string>
     <string name="unknown" msgid="1592123443519355854">"Okänd"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Användare: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Öppna inställningar för sökmotor"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Prioriterad sökmotor"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Allmänt"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Återställ tonhöjden för tal"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Återställ tonhöjden för talad text till standardinställningen."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Mycket långsamt"</item>
     <item msgid="4795095314303559268">"Långsamt"</item>
@@ -322,15 +324,14 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Strys av administratören"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Har aktiverats av administratören"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Har inaktiverats av administratören"</string>
-    <string name="home" msgid="8263346537524314127">"Startsida"</string>
+    <string name="home" msgid="3256884684164448244">"Startskärmen för inställningar"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"för <xliff:g id="ID_1">%1$s</xliff:g> sedan"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> kvar"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Små"</string>
     <string name="screen_zoom_summary_default" msgid="2247006805614056507">"Standardinställning"</string>
-    <string name="screen_zoom_summary_large" msgid="4835294730065424084">"Stora"</string>
+    <string name="screen_zoom_summary_large" msgid="4835294730065424084">"Stor"</string>
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Större"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Störst"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Anpassad (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Hjälp och feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-sw/strings.xml b/packages/SettingsLib/res/values-sw/strings.xml
index 20d3cc8..ae6ecf1 100644
--- a/packages/SettingsLib/res/values-sw/strings.xml
+++ b/packages/SettingsLib/res/values-sw/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Shiriki intaneti kwa Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Inazuia"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Kushiriki na kusambaza intaneti"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Wasifu wa kazi"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Programu zote za kazini"</string>
     <string name="user_guest" msgid="8475274842845401871">"Aliyealikwa"</string>
     <string name="unknown" msgid="1592123443519355854">"Haijulikani"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Mtumiaji: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Zindua mipangilio ya injini"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Injini inayofaa"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Kwa ujumla"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Weka upya mipangilio ya ubora wa matamshi"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Rejesha mipangilio ya ubora wa matamshi kuwa ya chaguo-msingi."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Polepole sana"</item>
     <item msgid="4795095314303559268">"Polepole"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Imedhibitiwa na msimamizi"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Msimamizi amewasha mapendeleo ya mipangilio"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Msimamizi amezima mapendeleo ya mipangilio"</string>
-    <string name="home" msgid="8263346537524314127">"Mwanzo"</string>
+    <string name="home" msgid="3256884684164448244">"Ukurasa wa Kwanza wa Mipangilio"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"Zimepita <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Zimesalia <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Ndogo"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Kubwa kiasi"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Kubwa zaidi"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Kiwango maalum (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Usaidizi na maoni"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ta-rIN/strings.xml b/packages/SettingsLib/res/values-ta-rIN/strings.xml
index 304680b..40b91a7 100644
--- a/packages/SettingsLib/res/values-ta-rIN/strings.xml
+++ b/packages/SettingsLib/res/values-ta-rIN/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"புளூடூத் டெதெரிங்"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"டெதெரிங்"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"டெதெரிங் &amp; போர்டபிள் ஹாட்ஸ்பாட்"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"பணி சுயவிவரம்"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"எல்லா பணிப் பயன்பாடுகளும்"</string>
     <string name="user_guest" msgid="8475274842845401871">"அழைக்கப்பட்டவர்"</string>
     <string name="unknown" msgid="1592123443519355854">"அறியப்படாத"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"பயனர்: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"இன்ஜின் அமைப்புகளைத் தொடங்கு"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"விருப்பத்தேர்வு"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"பொதுவானவை"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"பேச்சின் குரல் அழுத்தத்தை மீட்டமை"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"பேசப்படும் உரையின் குரல் அழுத்தத்தை இயல்பிற்கு மீட்டமை."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"மிகவும் மெதுவாக"</item>
     <item msgid="4795095314303559268">"மெதுவாக"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"நிர்வாகி கட்டுப்படுத்துகிறார்"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"நிர்வாகி இயக்கியுள்ளார்"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"நிர்வாகி முடக்கியுள்ளார்"</string>
-    <string name="home" msgid="8263346537524314127">"முகப்பு"</string>
+    <string name="home" msgid="3256884684164448244">"அமைப்புகள் முகப்பு"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> முன்"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> உள்ளது"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"சிறியது"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"கொஞ்சம் பெரியது"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"மிகப் பெரியது"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"தனிப்பயன் (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"உதவி &amp; கருத்து"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-te-rIN/strings.xml b/packages/SettingsLib/res/values-te-rIN/strings.xml
index b6457c7..bc9e847 100644
--- a/packages/SettingsLib/res/values-te-rIN/strings.xml
+++ b/packages/SettingsLib/res/values-te-rIN/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"బ్లూటూత్ టీథరింగ్"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"టీథరింగ్"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"టీథరింగ్ &amp; పోర్టబుల్ హాట్‌స్పాట్"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"కార్యాలయ ప్రొఫైల్‌"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"అన్ని కార్యాలయ అనువర్తనాలు"</string>
     <string name="user_guest" msgid="8475274842845401871">"అతిథి"</string>
     <string name="unknown" msgid="1592123443519355854">"తెలియదు"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"వినియోగదారు: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"ఇంజిన్ సెట్టింగ్‌లను ప్రారంభించండి"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"ప్రాధాన్య ఇంజిన్"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"సాధారణం"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"ప్రసంగ స్వర స్థాయిని రీసెట్ చేయండి"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"వచనాన్ని చదివి వినిపించే స్వర స్థాయిని డిఫాల్ట్‌కి రీసెట్ చేస్తుంది."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"చాలా నెమ్మది"</item>
     <item msgid="4795095314303559268">"నెమ్మది"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"నిర్వాహకుని ద్వారా నియంత్రించబడింది"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"నిర్వాహకులు ప్రారంభించారు"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"నిర్వాహకులు నిలిపివేసారు"</string>
-    <string name="home" msgid="8263346537524314127">"హోమ్"</string>
+    <string name="home" msgid="3256884684164448244">"సెట్టింగ్‌ల హోమ్"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> క్రితం"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> మిగిలి ఉంది"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"చిన్నగా"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"చాలా పెద్దగా"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"అతి పెద్దగా"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"అనుకూలం (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"సహాయం &amp; అభిప్రాయం"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-th/strings.xml b/packages/SettingsLib/res/values-th/strings.xml
index 345da0f..6ca61ed 100644
--- a/packages/SettingsLib/res/values-th/strings.xml
+++ b/packages/SettingsLib/res/values-th/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"ปล่อยสัญญาณบลูทูธ"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"การปล่อยสัญญาณ"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"การปล่อยสัญญาณและฮอตสปอต"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"โปรไฟล์งาน"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"แอปการทำงานทั้งหมด"</string>
     <string name="user_guest" msgid="8475274842845401871">"ผู้เข้าร่วม"</string>
     <string name="unknown" msgid="1592123443519355854">"ไม่ทราบ"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"ผู้ใช้: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"เปิดการตั้งค่าเครื่องมือ"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"เครื่องมือที่ต้องการ"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"ทั่วไป"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"รีเซ็ตความสูง-ต่ำของเสียงพูด"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"รีเซ็ตความสูง-ต่ำของเสียงในการพูดข้อความเป็นค่าเริ่มต้น"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"ช้ามาก"</item>
     <item msgid="4795095314303559268">"ช้า"</item>
@@ -296,7 +298,7 @@
     <string name="accessibility_display_daltonizer_preference_subtitle" msgid="3484969015295282911">"คุณลักษณะนี้เป็นแบบทดลองและอาจส่งผลต่อประสิทธิภาพการทำงาน"</string>
     <string name="daltonizer_type_overridden" msgid="3116947244410245916">"แทนที่โดย <xliff:g id="TITLE">%1$s</xliff:g>"</string>
     <string name="power_remaining_duration_only" msgid="4400068916452346544">"เหลืออีกประมาณ <xliff:g id="TIME">%1$s</xliff:g>"</string>
-    <string name="power_remaining_duration_only_short" msgid="5329694252258605547">"เหลือเวลา <xliff:g id="TIME">%1$s</xliff:g>"</string>
+    <string name="power_remaining_duration_only_short" msgid="5329694252258605547">"เหลืออีก <xliff:g id="TIME">%1$s</xliff:g>"</string>
     <string name="power_discharging_duration" msgid="1605929174734600590">"<xliff:g id="LEVEL">%1$s</xliff:g> - เหลือประมาณ <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="power_discharging_duration_short" msgid="4192244429001842403">"<xliff:g id="LEVEL">%1$s</xliff:g> - เหลืออีก <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="power_charging" msgid="1779532561355864267">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATE">%2$s</xliff:g>"</string>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"ผู้ดูแลระบบเป็นผู้ควบคุม"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"เปิดใช้โดยผู้ดูแลระบบ"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"ปิดใช้โดยผู้ดูแลระบบ"</string>
-    <string name="home" msgid="8263346537524314127">"หน้าแรก"</string>
+    <string name="home" msgid="3256884684164448244">"หน้าแรกของการตั้งค่า"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g>ที่ผ่านมา"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"เหลือ <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"เล็ก"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"ใหญ่ขึ้น"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"ใหญ่ที่สุด"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"กำหนดเอง (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"ความช่วยเหลือและความคิดเห็น"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-tl/strings.xml b/packages/SettingsLib/res/values-tl/strings.xml
index f820ab8..95976d2 100644
--- a/packages/SettingsLib/res/values-tl/strings.xml
+++ b/packages/SettingsLib/res/values-tl/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Pag-tether ng Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Nagte-tether"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Pag-tether at portable hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Profile sa trabaho"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Lahat ng app sa trabaho"</string>
     <string name="user_guest" msgid="8475274842845401871">"Bisita"</string>
     <string name="unknown" msgid="1592123443519355854">"Hindi Kilala"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"User: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Ilunsad ang mga setting ng engine"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Ginustong engine"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Pangkalahatan"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"I-reset ang pitch ng pagsasalita"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"I-reset ang pitch sa default na pagbigkas ng text."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Napakabagal"</item>
     <item msgid="4795095314303559268">"Mabagal"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Pinapamahalaan ng admin"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Na-enable ng administrator"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Na-disable ng administrator"</string>
-    <string name="home" msgid="8263346537524314127">"Home"</string>
+    <string name="home" msgid="3256884684164448244">"Home ng Mga Setting"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> na ang nakalipas"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> na lang"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Maliit"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Mas malaki"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Pinakamalaki"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Custom (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Tulong at feedback"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-tr/strings.xml b/packages/SettingsLib/res/values-tr/strings.xml
index 9766dea..f3087bc 100644
--- a/packages/SettingsLib/res/values-tr/strings.xml
+++ b/packages/SettingsLib/res/values-tr/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth tethering"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Tethering"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Tethering ve taşnblr hotspot"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"İş profili"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Tüm iş uygulamaları"</string>
     <string name="user_guest" msgid="8475274842845401871">"Misafir"</string>
     <string name="unknown" msgid="1592123443519355854">"Bilinmiyor"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Kullanıcı: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Motor ayarlarını başlat"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Tercih edilen motor"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Genel"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Ses tonunu sıfırla"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Metin sesli okuma tonunu varsayılan ayara sıfırlayın."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Çok yavaş"</item>
     <item msgid="4795095314303559268">"Yavaş"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Yönetici tarafından denetleniyor"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Yönetici tarafından etkinleştirildi"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Yönetici tarafından devre dışı bırakıldı"</string>
-    <string name="home" msgid="8263346537524314127">"Ana Ekran"</string>
+    <string name="home" msgid="3256884684164448244">"Ayarlar Ana Sayfası"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> önce"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> kaldı"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Küçük"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Daha büyük"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"En büyük"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Özel (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Yardım ve geri bildirim"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-uk/strings.xml b/packages/SettingsLib/res/values-uk/strings.xml
index 831484f..446c82d 100644
--- a/packages/SettingsLib/res/values-uk/strings.xml
+++ b/packages/SettingsLib/res/values-uk/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Прив\'язка Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Прив\'язка"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Режим модема"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Робочий профіль"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Усі робочі додатки"</string>
     <string name="user_guest" msgid="8475274842845401871">"Гість"</string>
     <string name="unknown" msgid="1592123443519355854">"Невідомо"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Користувач: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Запускати налаштування системи"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Бажана система"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Загальні"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Скинути рівень звуку мовлення"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Установлено рівень звуку за умовчанням для читання тексту."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Дуже повільно"</item>
     <item msgid="4795095314303559268">"Повільно"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Керується адміністратором"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Увімкнено адміністратором"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Вимкнено адміністратором"</string>
-    <string name="home" msgid="8263346537524314127">"Головний екран"</string>
+    <string name="home" msgid="3256884684164448244">"Головний екран налаштувань"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> тому"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Залишилося <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Малі елементи"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Більші елементи"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Найбільші елементи"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Спеціальний масштаб (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Довідка й відгуки"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-ur-rPK/strings.xml b/packages/SettingsLib/res/values-ur-rPK/strings.xml
index 15277ae..71e2aa6 100644
--- a/packages/SettingsLib/res/values-ur-rPK/strings.xml
+++ b/packages/SettingsLib/res/values-ur-rPK/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"بلوٹوتھ مربوط کرنا"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"مربوط کرنا"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"مربوط کرنا اور پورٹیبل ہاٹ اسپاٹ"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"دفتر کا پروفائل"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"تمام کام کی ایپس"</string>
     <string name="user_guest" msgid="8475274842845401871">"مہمان"</string>
     <string name="unknown" msgid="1592123443519355854">"نامعلوم"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"صارف: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"انجن کی ترتیبات شروع کریں"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"ترجیحی انجن"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"عمومی"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"اسپیچ کی پچ ری سیٹ کریں"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"متن بولنے کی پچ کو ڈیفالٹ پر سیٹ کریں"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"بہت سست"</item>
     <item msgid="4795095314303559268">"سست"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"کنٹرول کردہ بذریعہ منتظم"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"منتظم نے فعال کر دیا"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"منتظم نے غیر فعال کر دیا"</string>
-    <string name="home" msgid="8263346537524314127">"ہوم"</string>
+    <string name="home" msgid="3256884684164448244">"ترتیبات ہوم"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> قبل"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> باقی ہیں"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"چھوٹا"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"قدرے بڑا"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"سب سے بڑا"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"حسب ضرورت (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"مدد اور تاثرات"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-uz-rUZ/strings.xml b/packages/SettingsLib/res/values-uz-rUZ/strings.xml
index 374e7fc..f750744 100644
--- a/packages/SettingsLib/res/values-uz-rUZ/strings.xml
+++ b/packages/SettingsLib/res/values-uz-rUZ/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Bluetooth modem"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Modem"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Modem rejimi"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Ishchi profil"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Barcha ishchi ilovalar"</string>
     <string name="user_guest" msgid="8475274842845401871">"Mehmon"</string>
     <string name="unknown" msgid="1592123443519355854">"Noma‘lum"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Foydalanuvchi: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Mexanizm sozlamalarini ishga tushirish"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Standart tizim"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Umumiy"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Standart ohang"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Matnni o‘qish ohangini standart holatga qaytarish."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Juda sekin"</item>
     <item msgid="4795095314303559268">"Sekin"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Administrator tomonidan boshqariladi"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Administrator tomonidan yoqilgan"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Administrator tomonidan o‘chirilgan"</string>
-    <string name="home" msgid="8263346537524314127">"Bosh ekran"</string>
+    <string name="home" msgid="3256884684164448244">"Sozlamalar"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> oldin"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> qoldi"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Kichkina"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Kattaroq"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Eng katta"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Moslashtirilgan (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Yordam va fikr-mulohaza"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-vi/strings.xml b/packages/SettingsLib/res/values-vi/strings.xml
index 1c86175..5dba616 100644
--- a/packages/SettingsLib/res/values-vi/strings.xml
+++ b/packages/SettingsLib/res/values-vi/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Truy cập Internet qua Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Đang dùng làm điểm truy cập Internet"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"USB Internet &amp; điểm truy cập di động"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Hồ sơ công việc"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Tất cả ứng dụng làm việc"</string>
     <string name="user_guest" msgid="8475274842845401871">"Khách"</string>
     <string name="unknown" msgid="1592123443519355854">"Không xác định"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Người dùng: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Cài đặt chạy công cụ"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Công cụ ưu tiên"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Chung"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Đặt lại cao độ giọng nói"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Đặt lại cao độ đọc văn bản thành mặc định."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Rất chậm"</item>
     <item msgid="4795095314303559268">"Chậm"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Do quản trị viên kiểm soát"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Được bật bởi quản trị viên"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Bị tắt bởi quản trị viên"</string>
-    <string name="home" msgid="8263346537524314127">"Màn hình chính"</string>
+    <string name="home" msgid="3256884684164448244">"Trang chủ cài đặt"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> trước"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"Còn <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Nhỏ"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Lớn hơn"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Lớn nhất"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Tùy chỉnh (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Trợ giúp và phản hồi"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-zh-rCN/strings.xml b/packages/SettingsLib/res/values-zh-rCN/strings.xml
index d0dc925..be763ec 100644
--- a/packages/SettingsLib/res/values-zh-rCN/strings.xml
+++ b/packages/SettingsLib/res/values-zh-rCN/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"蓝牙网络共享"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"网络共享"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"网络共享与便携式热点"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"工作资料"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"所有工作应用"</string>
     <string name="user_guest" msgid="8475274842845401871">"访客"</string>
     <string name="unknown" msgid="1592123443519355854">"未知"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"用户：<xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"进行引擎设置"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"首选引擎"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"常规"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"重置语音音调"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"将文字的读出音调重置为默认值。"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"很慢"</item>
     <item msgid="4795095314303559268">"慢"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"由管理员控制"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"已被管理员启用"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"已被管理员禁用"</string>
-    <string name="home" msgid="8263346537524314127">"主屏幕"</string>
+    <string name="home" msgid="3256884684164448244">"设置首页"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g>前"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"还剩 <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"小"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"较大"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"最大"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"自定义 (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"帮助和反馈"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-zh-rHK/strings.xml b/packages/SettingsLib/res/values-zh-rHK/strings.xml
index 9bb0a4c..0eb926d 100644
--- a/packages/SettingsLib/res/values-zh-rHK/strings.xml
+++ b/packages/SettingsLib/res/values-zh-rHK/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"藍牙網絡共享"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"網絡共享"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"網絡共享和可攜式熱點"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"公司檔案"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"所有工作應用程式"</string>
     <string name="user_guest" msgid="8475274842845401871">"訪客"</string>
     <string name="unknown" msgid="1592123443519355854">"未知"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"使用者：<xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"啟動引擎設定"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"首選引擎"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"一般設定"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"重設語音音調"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"將文字轉語音的音調重設為預設。"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"非常慢"</item>
     <item msgid="4795095314303559268">"慢"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"已由管理員停用"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"已由管理員啟用"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"已由管理員停用"</string>
-    <string name="home" msgid="8263346537524314127">"主畫面"</string>
+    <string name="home" msgid="3256884684164448244">"主設定畫面"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g>前"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"尚餘 <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"小"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"較大"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"最大"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"自訂 (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"說明與意見反映"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-zh-rTW/strings.xml b/packages/SettingsLib/res/values-zh-rTW/strings.xml
index bf3880b..0d680b9 100644
--- a/packages/SettingsLib/res/values-zh-rTW/strings.xml
+++ b/packages/SettingsLib/res/values-zh-rTW/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"藍牙網路共用"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"網路共用"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"網路共用與可攜式無線基地台"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"工作設定檔"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"所有 Work 應用程式"</string>
     <string name="user_guest" msgid="8475274842845401871">"訪客"</string>
     <string name="unknown" msgid="1592123443519355854">"不明"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"使用者：<xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"啟動引擎設定"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"偏好的引擎"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"一般"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"重設語音音調"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"將文字轉語音的播放音調重設為預設值。"</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"很慢"</item>
     <item msgid="4795095314303559268">"慢"</item>
@@ -255,7 +257,7 @@
     <string name="enable_freeform_support_summary" msgid="8247310463288834487">"啟用實驗版自由形式視窗的支援功能。"</string>
     <string name="local_backup_password_title" msgid="3860471654439418822">"電腦備份密碼"</string>
     <string name="local_backup_password_summary_none" msgid="6951095485537767956">"電腦完整備份目前未受保護"</string>
-    <string name="local_backup_password_summary_change" msgid="5376206246809190364">"輕按即可變更或移除電腦完整備份的密碼"</string>
+    <string name="local_backup_password_summary_change" msgid="5376206246809190364">"輕觸即可變更或移除電腦完整備份的密碼"</string>
     <string name="local_backup_password_toast_success" msgid="582016086228434290">"已設定新備份密碼"</string>
     <string name="local_backup_password_toast_confirmation_mismatch" msgid="7805892532752708288">"新密碼與確認密碼不符。"</string>
     <string name="local_backup_password_toast_validation_failure" msgid="5646377234895626531">"無法設定備份密碼"</string>
@@ -270,8 +272,8 @@
     <item msgid="5363960654009010371">"針對數位內容最佳化的色彩"</item>
   </string-array>
     <string name="inactive_apps_title" msgid="1317817863508274533">"未啟用的應用程式"</string>
-    <string name="inactive_app_inactive_summary" msgid="5091363706699855725">"未啟用。輕按即可切換。"</string>
-    <string name="inactive_app_active_summary" msgid="4174921824958516106">"已啟用。輕按即可切換。"</string>
+    <string name="inactive_app_inactive_summary" msgid="5091363706699855725">"未啟用。輕觸即可切換。"</string>
+    <string name="inactive_app_active_summary" msgid="4174921824958516106">"已啟用。輕觸即可切換。"</string>
     <string name="runningservices_settings_title" msgid="8097287939865165213">"正在運作的服務"</string>
     <string name="runningservices_settings_summary" msgid="854608995821032748">"查看並管理目前正在執行的服務"</string>
     <string name="enable_webview_multiprocess" msgid="3405948012467585908">"啟用多重處理程序 WebView"</string>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"已由管理員停用"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"已由管理員啟用"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"已由管理員停用"</string>
-    <string name="home" msgid="8263346537524314127">"主畫面"</string>
+    <string name="home" msgid="3256884684164448244">"「設定」主畫面"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g>前"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"還剩 <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"小"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"較大"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"最大"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"自訂 (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"說明與意見回饋"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values-zu/strings.xml b/packages/SettingsLib/res/values-zu/strings.xml
index 7953372..1d68c77 100644
--- a/packages/SettingsLib/res/values-zu/strings.xml
+++ b/packages/SettingsLib/res/values-zu/strings.xml
@@ -91,7 +91,7 @@
     <string name="tether_settings_title_bluetooth" msgid="355855408317564420">"Imodemu nge-Bluetooth"</string>
     <string name="tether_settings_title_usb_bluetooth" msgid="5355828977109785001">"Ukusebenzisa njengemodemu"</string>
     <string name="tether_settings_title_all" msgid="8356136101061143841">"Ukusebenzisa njengemodemu &amp; i-hotspot ephathekayo"</string>
-    <string name="managed_user_title" msgid="8101244883654409696">"Iphrofayela yomsebenzi"</string>
+    <string name="managed_user_title" msgid="8109605045406748842">"Zonke izinhlelo zokusebenza zomsebenzi"</string>
     <string name="user_guest" msgid="8475274842845401871">"Isivakashi"</string>
     <string name="unknown" msgid="1592123443519355854">"Akwaziwa"</string>
     <string name="running_process_item_user_label" msgid="3129887865552025943">"Umsebenzisi: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
@@ -123,6 +123,8 @@
     <string name="tts_engine_settings_button" msgid="1030512042040722285">"Faka izilungiselelo zenjini"</string>
     <string name="tts_engine_preference_section_title" msgid="448294500990971413">"Injini eyintandokazi"</string>
     <string name="tts_general_section_title" msgid="4402572014604490502">"Okuvamile"</string>
+    <string name="tts_reset_speech_pitch_title" msgid="5789394019544785915">"Setha kabusha ukuphakama kwenkulumo"</string>
+    <string name="tts_reset_speech_pitch_summary" msgid="8700539616245004418">"Setha kabusha ukuphakama lapho umbhalo ukhulunywa khona ngokuzenzakalela."</string>
   <string-array name="tts_rate_entries">
     <item msgid="6695494874362656215">"Phansi kakhulu"</item>
     <item msgid="4795095314303559268">"Phansi"</item>
@@ -322,7 +324,7 @@
     <string name="disabled_by_admin_summary_text" msgid="6750513964908334617">"Kulawulwa umqondisi"</string>
     <string name="enabled_by_admin" msgid="2386503803463071894">"Kunikwe amandla umqondisi"</string>
     <string name="disabled_by_admin" msgid="3669999613095206948">"Ikhutshazwe umlawuli"</string>
-    <string name="home" msgid="8263346537524314127">"Ekhaya"</string>
+    <string name="home" msgid="3256884684164448244">"Ikhaya lezilungiselelo"</string>
     <string name="charge_length_format" msgid="8978516217024434156">"<xliff:g id="ID_1">%1$s</xliff:g> edlule"</string>
     <string name="remaining_length_format" msgid="7886337596669190587">"<xliff:g id="ID_1">%1$s</xliff:g> osele"</string>
     <string name="screen_zoom_summary_small" msgid="5867245310241621570">"Okuncane"</string>
@@ -331,6 +333,5 @@
     <string name="screen_zoom_summary_very_large" msgid="7108563375663670067">"Okukhulu kakhulu"</string>
     <string name="screen_zoom_summary_extremely_large" msgid="7427320168263276227">"Okukhulu kakhulu"</string>
     <string name="screen_zoom_summary_custom" msgid="5611979864124160447">"Ngokwezifiso (<xliff:g id="DENSITYDPI">%d</xliff:g>)"</string>
-    <!-- no translation found for help_feedback_label (6815040660801785649) -->
-    <skip />
+    <string name="help_feedback_label" msgid="6815040660801785649">"Usizo nempendulo"</string>
 </resources>
diff --git a/packages/SettingsLib/res/values/attrs.xml b/packages/SettingsLib/res/values/attrs.xml
index 4484613..f064e4e 100644
--- a/packages/SettingsLib/res/values/attrs.xml
+++ b/packages/SettingsLib/res/values/attrs.xml
@@ -15,10 +15,24 @@
 -->
 
 <resources>
+
     <declare-styleable name="RestrictedPreference">
+        <!-- The user restriction on which the preference disabled by admin state will be based on. -->
         <attr name="userRestriction" format="string" />
+        <!-- If true then we can use enabled/disabled by admin strings for summary (android.R.id.summary). -->
         <attr name="useAdminDisabledSummary" format="boolean" />
     </declare-styleable>
+
+    <declare-styleable name="RestrictedSwitchPreference">
+        <!-- If true, an additional summary will be added in addition to the existing summary and
+        this will be used for enabled/disabled by admin strings leaving android.R.id.summary untouched.
+        As such when this is true, useAdminDisabledSummary will be overwritten to false. -->
+        <attr name="useAdditionalSummary" format="boolean" />
+        <!-- This is used as summary for restricted switch preferences, default value is
+        @string/disabled_by_admin (Disabled by administrator). -->
+        <attr name="restrictedSwitchSummary" format="reference" />
+    </declare-styleable>
+
     <declare-styleable name="WifiEncryptionState">
         <attr name="state_encrypted" format="boolean" />
     </declare-styleable>
diff --git a/packages/SettingsLib/res/values/strings.xml b/packages/SettingsLib/res/values/strings.xml
index 985fe3c..74c98e4 100644
--- a/packages/SettingsLib/res/values/strings.xml
+++ b/packages/SettingsLib/res/values/strings.xml
@@ -215,7 +215,7 @@
     <string name="tether_settings_title_all">Tethering &amp; portable hotspot</string>
 
     <!-- Title for a work profile. [CHAR LIMIT=25] -->
-    <string name="managed_user_title">Work profile</string>
+    <string name="managed_user_title">All work apps</string>
 
     <!-- Title for Guest user [CHAR LIMIT=35] -->
     <string name="user_guest">Guest</string>
@@ -299,6 +299,11 @@
     <!-- [CHAR LIMIT=50] Title of the settings section that displays general preferences
          that are applicable to all engines, such as the speech rate -->
     <string name="tts_general_section_title">General</string>
+    <!-- On main TTS Settings screen, in default settings section,
+         reset speech pitch of synthesized voice to 1x speech pitch. [CHAR LIMIT=50] -->
+    <string name="tts_reset_speech_pitch_title">Reset speech pitch</string>
+    <!--On main TTS Settings screen, summary for reset speech pitch of synthesized voice [CHAR LIMIT=150] -->
+    <string name="tts_reset_speech_pitch_summary">Reset the pitch at which the text is spoken to default.</string>
 
     <!-- Default speech rate choices -->
     <string-array name="tts_rate_entries">
diff --git a/packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java b/packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java
index e69497a..b30de64 100644
--- a/packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java
+++ b/packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java
@@ -46,7 +46,8 @@
     }
 
     public RestrictedPreference(Context context, AttributeSet attrs) {
-        this(context, attrs, TypedArrayUtils.getAttr(context, R.attr.preferenceStyle,
+        this(context, attrs, TypedArrayUtils.getAttr(context,
+                android.support.v7.preference.R.attr.preferenceStyle,
                 android.R.attr.preferenceStyle));
     }
 
diff --git a/packages/SettingsLib/src/com/android/settingslib/RestrictedSwitchPreference.java b/packages/SettingsLib/src/com/android/settingslib/RestrictedSwitchPreference.java
index f381286..1ad710a 100644
--- a/packages/SettingsLib/src/com/android/settingslib/RestrictedSwitchPreference.java
+++ b/packages/SettingsLib/src/com/android/settingslib/RestrictedSwitchPreference.java
@@ -17,12 +17,14 @@
 package com.android.settingslib;
 
 import android.content.Context;
+import android.content.res.TypedArray;
 import android.os.UserHandle;
 import android.support.v4.content.res.TypedArrayUtils;
 import android.support.v7.preference.PreferenceManager;
 import android.support.v7.preference.PreferenceViewHolder;
 import android.support.v14.preference.SwitchPreference;
 import android.util.AttributeSet;
+import android.util.TypedValue;
 import android.view.View;
 import android.widget.TextView;
 
@@ -34,12 +36,45 @@
  */
 public class RestrictedSwitchPreference extends SwitchPreference {
     RestrictedPreferenceHelper mHelper;
+    boolean mUseAdditionalSummary = false;
+    String mRestrictedSwitchSummary = null;
 
     public RestrictedSwitchPreference(Context context, AttributeSet attrs,
             int defStyleAttr, int defStyleRes) {
         super(context, attrs, defStyleAttr, defStyleRes);
         setWidgetLayoutResource(R.layout.restricted_switch_widget);
         mHelper = new RestrictedPreferenceHelper(context, this, attrs);
+        if (attrs != null) {
+            final TypedArray attributes = context.obtainStyledAttributes(attrs,
+                    R.styleable.RestrictedSwitchPreference);
+            final TypedValue useAdditionalSummary = attributes.peekValue(
+                    R.styleable.RestrictedSwitchPreference_useAdditionalSummary);
+            if (useAdditionalSummary != null) {
+                mUseAdditionalSummary =
+                        (useAdditionalSummary.type == TypedValue.TYPE_INT_BOOLEAN
+                                && useAdditionalSummary.data != 0);
+            }
+
+            final TypedValue restrictedSwitchSummary = attributes.peekValue(
+                    R.styleable.RestrictedSwitchPreference_restrictedSwitchSummary);
+            CharSequence data = null;
+            if (restrictedSwitchSummary != null
+                    && restrictedSwitchSummary.type == TypedValue.TYPE_STRING) {
+                if (restrictedSwitchSummary.resourceId != 0) {
+                    data = context.getString(restrictedSwitchSummary.resourceId);
+                } else {
+                    data = restrictedSwitchSummary.string;
+                }
+            }
+            mRestrictedSwitchSummary = data == null ? null : data.toString();
+        }
+        if (mRestrictedSwitchSummary == null) {
+            mRestrictedSwitchSummary = context.getString(R.string.disabled_by_admin);
+        }
+        if (mUseAdditionalSummary) {
+            setLayoutResource(R.layout.restricted_switch_preference);
+            useAdminDisabledSummary(false);
+        }
     }
 
     public RestrictedSwitchPreference(Context context, AttributeSet attrs, int defStyleAttr) {
@@ -47,7 +82,8 @@
     }
 
     public RestrictedSwitchPreference(Context context, AttributeSet attrs) {
-        this(context, attrs, TypedArrayUtils.getAttr(context, R.attr.switchPreferenceStyle,
+        this(context, attrs, TypedArrayUtils.getAttr(context,
+                android.support.v7.preference.R.attr.switchPreferenceStyle,
                 android.R.attr.switchPreferenceStyle));
     }
 
@@ -67,11 +103,27 @@
         if (switchWidget != null) {
             switchWidget.setVisibility(isDisabledByAdmin() ? View.GONE : View.VISIBLE);
         }
-        final TextView summaryView = (TextView) holder.findViewById(android.R.id.summary);
-        if (summaryView != null && isDisabledByAdmin()) {
-            summaryView.setText(
-                    isChecked() ? R.string.enabled_by_admin : R.string.disabled_by_admin);
-            summaryView.setVisibility(View.VISIBLE);
+        if (mUseAdditionalSummary) {
+            final TextView additionalSummaryView = (TextView) holder.findViewById(
+                    R.id.additional_summary);
+            if (additionalSummaryView != null) {
+                if (isDisabledByAdmin()) {
+                    additionalSummaryView.setText(mRestrictedSwitchSummary);
+                    additionalSummaryView.setVisibility(View.VISIBLE);
+                } else {
+                    additionalSummaryView.setVisibility(View.GONE);
+                }
+            }
+        } else {
+            final TextView summaryView = (TextView) holder.findViewById(android.R.id.summary);
+            if (summaryView != null) {
+                if (isDisabledByAdmin()) {
+                    summaryView.setText(mRestrictedSwitchSummary);
+                    summaryView.setVisibility(View.VISIBLE);
+                }
+                // No need to change the visibility to GONE in the else case here since Preference
+                // class would have already changed it if there is no summary to display.
+            }
         }
     }
 
diff --git a/packages/SettingsLib/src/com/android/settingslib/Utils.java b/packages/SettingsLib/src/com/android/settingslib/Utils.java
index ca0b86a..d98f1a4 100644
--- a/packages/SettingsLib/src/com/android/settingslib/Utils.java
+++ b/packages/SettingsLib/src/com/android/settingslib/Utils.java
@@ -20,6 +20,10 @@
 import java.text.NumberFormat;
 
 public class Utils {
+    private static Signature[] sSystemSignature;
+    private static String sPermissionControllerPackageName;
+    private static String sServicesSystemSharedLibPackageName;
+    private static String sSharedSystemSharedLibPackageName;
 
     /**
      * Return string resource that best describes combination of tethering
@@ -161,15 +165,19 @@
         if (sPermissionControllerPackageName == null) {
             sPermissionControllerPackageName = pm.getPermissionControllerPackageName();
         }
+        if (sServicesSystemSharedLibPackageName == null) {
+            sServicesSystemSharedLibPackageName = pm.getServicesSystemSharedLibraryPackageName();
+        }
+        if (sSharedSystemSharedLibPackageName == null) {
+            sSharedSystemSharedLibPackageName = pm.getSharedSystemSharedLibraryPackageName();
+        }
         return (sSystemSignature[0] != null
                         && sSystemSignature[0].equals(getFirstSignature(pkg)))
-                || (sPermissionControllerPackageName != null
-                        && sPermissionControllerPackageName.equals(pkg.packageName));
+                || pkg.packageName.equals(sPermissionControllerPackageName)
+                || pkg.packageName.equals(sServicesSystemSharedLibPackageName)
+                || pkg.packageName.equals(sSharedSystemSharedLibPackageName);
     }
 
-    private static Signature[] sSystemSignature;
-    private static String sPermissionControllerPackageName;
-
     private static Signature getFirstSignature(PackageInfo pkg) {
         if (pkg != null && pkg.signatures != null && pkg.signatures.length > 0) {
             return pkg.signatures[0];
diff --git a/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java b/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java
index 8c2af45..9aaddaa 100644
--- a/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java
+++ b/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java
@@ -1213,44 +1213,55 @@
         }
     }
 
+    /**
+     * Compare by label, then package name, then uid.
+     */
     public static final Comparator<AppEntry> ALPHA_COMPARATOR = new Comparator<AppEntry>() {
         private final Collator sCollator = Collator.getInstance();
         @Override
         public int compare(AppEntry object1, AppEntry object2) {
-            return sCollator.compare(object1.label, object2.label);
+            int compareResult = sCollator.compare(object1.label, object2.label);
+            if (compareResult != 0) {
+                return compareResult;
+            }
+            if (object1.info != null && object2.info != null) {
+                compareResult =
+                    sCollator.compare(object1.info.packageName, object2.info.packageName);
+                if (compareResult != 0) {
+                    return compareResult;
+                }
+            }
+            return object1.info.uid - object2.info.uid;
         }
     };
 
     public static final Comparator<AppEntry> SIZE_COMPARATOR
             = new Comparator<AppEntry>() {
-        private final Collator sCollator = Collator.getInstance();
         @Override
         public int compare(AppEntry object1, AppEntry object2) {
             if (object1.size < object2.size) return 1;
             if (object1.size > object2.size) return -1;
-            return sCollator.compare(object1.label, object2.label);
+            return ALPHA_COMPARATOR.compare(object1, object2);
         }
     };
 
     public static final Comparator<AppEntry> INTERNAL_SIZE_COMPARATOR
             = new Comparator<AppEntry>() {
-        private final Collator sCollator = Collator.getInstance();
         @Override
         public int compare(AppEntry object1, AppEntry object2) {
             if (object1.internalSize < object2.internalSize) return 1;
             if (object1.internalSize > object2.internalSize) return -1;
-            return sCollator.compare(object1.label, object2.label);
+            return ALPHA_COMPARATOR.compare(object1, object2);
         }
     };
 
     public static final Comparator<AppEntry> EXTERNAL_SIZE_COMPARATOR
             = new Comparator<AppEntry>() {
-        private final Collator sCollator = Collator.getInstance();
         @Override
         public int compare(AppEntry object1, AppEntry object2) {
             if (object1.externalSize < object2.externalSize) return 1;
             if (object1.externalSize > object2.externalSize) return -1;
-            return sCollator.compare(object1.label, object2.label);
+            return ALPHA_COMPARATOR.compare(object1, object2);
         }
     };
 
@@ -1272,21 +1283,18 @@
         }
     };
 
-    public static final AppFilter FILTER_PERSONAL_WITHOUT_DISABLED_UNTIL_USED = new AppFilter() {
-        private int mCurrentUser;
-
+    public static final AppFilter FILTER_WITHOUT_DISABLED_UNTIL_USED = new AppFilter() {
         public void init() {
-            mCurrentUser = ActivityManager.getCurrentUser();
+            // do nothings
         }
 
         @Override
         public boolean filterApp(AppEntry entry) {
-            return UserHandle.getUserId(entry.info.uid) == mCurrentUser &&
-                    entry.info.enabledSetting != PackageManager.COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED;
+            return entry.info.enabledSetting
+                    != PackageManager.COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED;
         }
     };
 
-
     public static final AppFilter FILTER_WORK = new AppFilter() {
         private int mCurrentUser;
 
diff --git a/packages/SettingsLib/src/com/android/settingslib/wifi/WifiTracker.java b/packages/SettingsLib/src/com/android/settingslib/wifi/WifiTracker.java
index 2b1c66d..7d279eb 100644
--- a/packages/SettingsLib/src/com/android/settingslib/wifi/WifiTracker.java
+++ b/packages/SettingsLib/src/com/android/settingslib/wifi/WifiTracker.java
@@ -504,20 +504,7 @@
     }
 
     private void updateWifiState(int state) {
-        if (state == WifiManager.WIFI_STATE_ENABLED) {
-            if (mScanner != null) {
-                // We only need to resume if mScanner isn't null because
-                // that means we want to be scanning.
-                mScanner.resume();
-            }
-        } else {
-            mLastInfo = null;
-            mLastNetworkInfo = null;
-            if (mScanner != null) {
-                mScanner.pause();
-            }
-        }
-        mMainHandler.obtainMessage(MainHandler.MSG_WIFI_STATE_CHANGED, state, 0).sendToTarget();
+        mWorkHandler.obtainMessage(WorkHandler.MSG_UPDATE_WIFI_STATE, state, 0).sendToTarget();
     }
 
     public static List<AccessPoint> getCurrentAccessPoints(Context context, boolean includeSaved,
@@ -609,6 +596,7 @@
         private static final int MSG_UPDATE_ACCESS_POINTS = 0;
         private static final int MSG_UPDATE_NETWORK_INFO = 1;
         private static final int MSG_RESUME = 2;
+        private static final int MSG_UPDATE_WIFI_STATE = 3;
 
         public WorkHandler(Looper looper) {
             super(looper);
@@ -626,6 +614,23 @@
                 case MSG_RESUME:
                     handleResume();
                     break;
+                case MSG_UPDATE_WIFI_STATE:
+                    if (msg.arg1 == WifiManager.WIFI_STATE_ENABLED) {
+                        if (mScanner != null) {
+                            // We only need to resume if mScanner isn't null because
+                            // that means we want to be scanning.
+                            mScanner.resume();
+                        }
+                    } else {
+                        mLastInfo = null;
+                        mLastNetworkInfo = null;
+                        if (mScanner != null) {
+                            mScanner.pause();
+                        }
+                    }
+                    mMainHandler.obtainMessage(MainHandler.MSG_WIFI_STATE_CHANGED, msg.arg1, 0)
+                            .sendToTarget();
+                    break;
             }
         }
     }
diff --git a/packages/Shell/AndroidManifest.xml b/packages/Shell/AndroidManifest.xml
index b557dc4..4e9b59f 100644
--- a/packages/Shell/AndroidManifest.xml
+++ b/packages/Shell/AndroidManifest.xml
@@ -111,6 +111,8 @@
     <uses-permission android:name="android.permission.VIBRATE" />
     <uses-permission android:name="android.permission.MANAGE_ACTIVITY_STACKS" />
     <uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" />
+    <!-- Permission needed to rename bugreport notifications (so they're not shown as Shell) -->
+    <uses-permission android:name="android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME" />
 
     <application android:label="@string/app_label"
                  android:defaultToDeviceProtectedStorage="true"
diff --git a/packages/Shell/res/values-af/strings.xml b/packages/Shell/res/values-af/strings.xml
index 8dbe3cd..9b53599 100644
--- a/packages/Shell/res/values-af/strings.xml
+++ b/packages/Shell/res/values-af/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Tuisskerm"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Foutverslag <xliff:g id="ID">#%d</xliff:g> word tans geskep"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Foutverslag <xliff:g id="ID">#%d</xliff:g> is vasgevang"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Foutverslag <xliff:g id="ID">#%d</xliff:g> vasgevang, maar skermkiekie hangende"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Voeg tans besonderhede by die foutverslag"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Wag asseblief …"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Swiep na links om jou foutverslag te deel"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Tik om jou foutverslag te deel"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Tik om jou foutverslag sonder \'n skermkiekie te deel, of wag totdat die skermkiekie gereed is"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Tik om jou foutverslag sonder \'n skermkiekie te deel, of wag totdat die skermkiekie gereed is"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Foutverslae bevat data van die stelsel se verskillende loglêers af, insluitend persoonlike en private inligting. Deel foutverslae net met programme en mense wat jy vertrou."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Wys hierdie boodskap volgende keer"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Foutverslae bevat data van die stelsel se verskillende loglêers af, wat data kan insluit wat jy as sensitief beskou (soos programgebruik en liggingdata). Deel foutverslae net met programme en mense wat jy vertrou."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Moenie weer wys nie"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Foutverslae"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Foutverslaglêer kon nie gelees word nie"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"naamloos"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Besonderhede"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Skermkiekie"</string>
diff --git a/packages/Shell/res/values-am/strings.xml b/packages/Shell/res/values-am/strings.xml
index b0d3de0..9c56adb1 100644
--- a/packages/Shell/res/values-am/strings.xml
+++ b/packages/Shell/res/values-am/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"ቀፎ"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"የሳንካ ሪፖርት <xliff:g id="ID">#%d</xliff:g> እየተመነጨ ነው"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"የሳንካ ሪፖርት <xliff:g id="ID">#%d</xliff:g> ተወስዷል"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"የሳንካ ሪፖርት <xliff:g id="ID">#%d</xliff:g> ፎቶ ተነስቷል፣ ነገር ግን ቅጽበታዊ ገጽ ማያ በመጠባበቅ ላይ ነው"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"ዝርዝሮችን ወደ የሳንካ ሪፖርቱ በማከል ላይ"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"እባክዎ ይጠብቁ…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"የሳንካ ሪፖርትዎን ለማጋራት ወደ ግራ ያንሸራትቱ"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"የሳንካ ሪፖርትዎን ለማጋራት መታ ያድርጉ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"የእርስዎን የሳንካ ሪፖርት ያለ ቅጽበታዊ ማያ ገጽ ለማጋራት መታ ያድርጉ ወይም ቅጽበታዊ ማያ ገጹ እስኪጨርስ ይጠብቁ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"የእርስዎን የሳንካ ሪፖርት ያለ ቅጽበታዊ ማያ ገጽ ለማጋራት መታ ያድርጉ ወይም ቅጽበታዊ ማያ ገጹ እስኪጨርስ ይጠብቁ"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"የሳንካ ሪፖርቶች የግል መረጃን ጨምሮ ከበርካታ የስርዓቱ ምዝግብ ማስታወሻዎች የመጣ ውሂብን ይዟል። የሳንካ ሪፖርቶች ለሚያምኗቸው መተግበሪያዎችን እና ሰዎችን ብቻ ያጋሩ።"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"ይህን መልዕክት በሚቀጥለው ጊዜ አሳይ"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"የሳንካ ሪፖርቶች ከተለያዩ የስርዓቱ የምዝግብ ማስታወሻ ፋይሎች የመጣ ውሂብ ይዘዋል፣ እነዚህም እርስዎ ሚስጥራዊነት ያለው ብለው የሚቆጥሯቸው (እንደ የመተግበሪያ አጠቃቀም እና የአካባቢ ውሂብ ያለ) ሊያካትቱ ይችላሉ። የሳንካ ሪፖርቶች ለሚያምኗቸው ሰዎች እና መተግበሪያዎች ብቻ ያጋሩ።"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"ዳግም አታሳይ"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"የሳንካ ሪፖርቶች"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"የሳንካ ሪፖርት ፋይል ሊነበብ አልተቻለም"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"ያልተሰየመ"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"ዝርዝሮች"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"ቅጽበታዊ ገጽ እይታ"</string>
diff --git a/packages/Shell/res/values-ar/strings.xml b/packages/Shell/res/values-ar/strings.xml
index 818c368..c69eee1 100644
--- a/packages/Shell/res/values-ar/strings.xml
+++ b/packages/Shell/res/values-ar/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"جارٍ إنشاء تقرير الخطأ <xliff:g id="ID">#%d</xliff:g>."</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"تم تسجيل تقرير الخطأ <xliff:g id="ID">#%d</xliff:g>."</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"تم التقاط تقرير الأخطاء <xliff:g id="ID">#%d</xliff:g> ولكن في انتظار لقطة الشاشة"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"إضافة تفاصيل إلى تقرير الخطأ"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"الرجاء الانتظار…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"مرر بسرعة لليمين لمشاركة تقرير الخطأ"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"انقر لمشاركة تقرير الخطأ."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"انقر لمشاركة تقرير الأخطاء بدون لقطة شاشة أو انتظر حتى انتهاء لقطة الشاشة"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"انقر لمشاركة تقرير الأخطاء بدون لقطة شاشة أو انتظر حتى انتهاء لقطة الشاشة"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"تحتوي تقارير الأخطاء على بيانات من ملفات سجلات النظام المتنوعة، بما في ذلك معلومات شخصية وخاصة. لا تشارك تقارير الأخطاء إلا مع التطبيقات والأشخاص الموثوق بهم."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"إظهار هذه الرسالة في المرة القادمة"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"تحتوي تقارير الأخطاء على بيانات من عدة ملفات سجلات في النظام، بما في ذلك بيانات قد ترى أنها حساسة (مثل بيانات استخدام التطبيقات وبيانات الموقع). ولذلك احرص على عدم مشاركة تقارير الأخطاء إلا مع من تثق به من الأشخاص والتطبيقات."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"عدم الإظهار مرة أخرى"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"تقارير الأخطاء"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"تعذرت قراءة ملف تقرير الخطأ."</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"بدون اسم"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"التفاصيل"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"لقطة شاشة"</string>
diff --git a/packages/Shell/res/values-az-rAZ/strings.xml b/packages/Shell/res/values-az-rAZ/strings.xml
index 22791a6..90fd57f 100644
--- a/packages/Shell/res/values-az-rAZ/strings.xml
+++ b/packages/Shell/res/values-az-rAZ/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Baq hesabatı <xliff:g id="ID">#%d</xliff:g> yaradıldı"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Baq hesabatı <xliff:g id="ID">#%d</xliff:g> alındı"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"<xliff:g id="ID">#%d</xliff:g> baq hesabatı çəkildi, amma skrinşot hələ gözlənilir"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Detallar baq hesabatına əlavə olunur"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Lütfən, gözləyin..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Baq raportunu paylaşmaq üçün sola sürüşdürün"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Baq hesabatınızı paylaşmaq üçün tıklayın"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"baq hesabatınızı skrinşot olmadan paylaşmaq üçün tıklayın, skrinşotun tamamlanması üçün isə gözləyin"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"baq hesabatınızı skrinşot olmadan paylaşmaq üçün tıklayın, skrinşotun tamamlanması üçün isə gözləyin"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Baq raportları sistemin müxtəlif jurnal fayllarından data içərir ki, buna şəxsi və konfidensial məlumatlar da aiddir. Yalnız inandığınız adamlarla baq raportlarını paylaşın."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Bu mesajı növbəti dəfə göstər"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Baq raportları sistemin müxtəlif jurnal fayllarından həssas təyin etdiyiniz data (tətbiq istifadəsi və məkan datası kimi) içərir. Baq raportlarını yalnız inandığınız tətbiq və adamlarla paylaşın."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Daha göstərməyin"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Baq hesabatları"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Baq hesabat faylı oxunmur"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"adsız"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detallar"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"displey görüntüsü"</string>
diff --git a/packages/Shell/res/values-b+sr+Latn/strings.xml b/packages/Shell/res/values-b+sr+Latn/strings.xml
index bc5ce26..95be5d3 100644
--- a/packages/Shell/res/values-b+sr+Latn/strings.xml
+++ b/packages/Shell/res/values-b+sr+Latn/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Izveštaj o grešci <xliff:g id="ID">#%d</xliff:g> se generiše"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Izveštaj o grešci <xliff:g id="ID">#%d</xliff:g> je snimljen"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Izveštaj o grešci <xliff:g id="ID">#%d</xliff:g> snimljen; snimak ekrana se čeka"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Dodaju se detalji u izveštaj o grešci"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Sačekajte..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Prevucite ulevo da biste delili izveštaj o greškama"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Dodirnite da biste delili izveštaj o grešci"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Dodirnite za deljenje izveštaja o grešci bez snimka ekrana ili sačekajte da se napravi snimak ekrana"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Dodirnite za deljenje izveštaja o grešci bez snimka ekrana ili sačekajte da se napravi snimak ekrana"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Izveštaji o greškama sadrže podatke iz različitih sistemskih datoteka evidencije, uključujući lične i privatne podatke. Delite izveštaje o greškama samo sa aplikacijama i ljudima u koje imate poverenja."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Prikaži ovu poruku sledeći put"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Izveštaji o greškama sadrže podatke iz različitih sistemskih datoteka evidencije, koji obuhvataju lične i privatne podatke (poput korišćenja aplikacija i podataka o lokaciji). Delite izveštaje o greškama samo sa aplikacijama i ljudima u koje imate poverenja."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ne prikazuj ponovo"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Izveštaji o greškama"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Datoteka izveštaja o grešci ne može da se pročita"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"neimenovano"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalji"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Snimci ekrana"</string>
diff --git a/packages/Shell/res/values-be-rBY/strings.xml b/packages/Shell/res/values-be-rBY/strings.xml
index 5aaa80a..649785d 100644
--- a/packages/Shell/res/values-be-rBY/strings.xml
+++ b/packages/Shell/res/values-be-rBY/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Абалонка"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Справаздача <xliff:g id="ID">#%d</xliff:g> пра памылку генерыруецца"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Справаздача <xliff:g id="ID">#%d</xliff:g> пра памылку зафіксавана"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Справ. пра памылку <xliff:g id="ID">#%d</xliff:g> зафікс., але скрыншот чакаецца"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Дадаванне падрабязнасцей да справаздачы пра памылкі"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Калі ласка, пачакайце..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Правядзіце пальцам налева, каб абагуліць сваю справаздачу пра памылку"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Дакраніцеся, каб абагуліць сваю справаздачу пра памылку"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Краніце, каб абагуліць справаздачу пра памылку без здымка экрана, або чакайце атрымання здымка."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Краніце, каб абагуліць справаздачу пра памылку без здымка экрана, або чакайце атрымання здымка."</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Справаздача пра памылку ўтрымлівае дадзеныя з гiсторыi сістэмных файлаў, у тым ліку персанальную і прыватную інфармацыю. Дзялiцеся справаздачамi пра збоi толькi з праверанымi карыстальнiкамi i прыкладаннямi."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"У наступны раз паказваць гэта паведамленне"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Справаздачы пра памылкі ўтрымліваюць даныя з розных файлаў журналаў сістэмы, якія могуць уключаць даныя, што вы лічыце канфідэнцыяльнымі (напрыклад, пра выкарыстанне праграм і даныя аб месцазнаходжанні). Абагульвайце справаздачы пра памылкі толькі з тымі людзьмі і праграмамі, якім вы давяраеце."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Не паказваць зноў"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Справадзачы пра памылкі"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Немагчыма прачытаць файл справаздачы пра памылкі"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"без назвы"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Падрабязнасці"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Здымак экрана"</string>
diff --git a/packages/Shell/res/values-bg/strings.xml b/packages/Shell/res/values-bg/strings.xml
index 0f8676f..69c825d 100644
--- a/packages/Shell/res/values-bg/strings.xml
+++ b/packages/Shell/res/values-bg/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Команден ред"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Сигналът за програмна грешка „<xliff:g id="ID">#%d</xliff:g>“ се генерира"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Сигналът за програмна грешка „<xliff:g id="ID">#%d</xliff:g>“ е заснет"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Сигналът (<xliff:g id="ID">#%d</xliff:g>) е заснет, но екр. снимка не е готова"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Подробностите се добавят към сигнала за пр. грешка"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Моля, изчакайте…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Прекарайте пръст наляво, за да споделите сигнала си за програмна грешка"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Докоснете, за да споделите сигнала си за програмна грешка"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Докоснете, за да споделите сигнала за прогр. грешка без екранна снимка, или изчакайте завършването й"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Докоснете, за да споделите сигнала за прогр. грешка без екранна снимка, или изчакайте завършването й"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Отчетите за програмни грешки съдържат данни от различни регистрационни файлове на системата, включително лична и поверителна информация. Споделяйте ги само с приложения и хора, на които имате доверие."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Това съобщение да се показва следващия път"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Отчетите за програмни грешки съдържат данни от различни регистрационни файлове на системата, които може да включват информация, която смятате за поверителна (като например използване на приложенията и данни за местоположението). Споделяйте ги само с хора и приложения, на които имате доверие."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Да не се показва отново"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Отчети за прогр. грешки"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Файлът със сигнал за програмна грешка не можа да бъде прочетен"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"без име"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Подробности"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Екранна снимка"</string>
diff --git a/packages/Shell/res/values-bn-rBD/strings.xml b/packages/Shell/res/values-bn-rBD/strings.xml
index c632b10..3cf6d93 100644
--- a/packages/Shell/res/values-bn-rBD/strings.xml
+++ b/packages/Shell/res/values-bn-rBD/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"শেল"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"ত্রুটির প্রতিবেদন <xliff:g id="ID">#%d</xliff:g> তৈরি করা হচ্ছে"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"ত্রুটির প্রতিবেদন <xliff:g id="ID">#%d</xliff:g> ক্যাপচার করা হয়েছে"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"ত্রুটির প্রতিবেদন <xliff:g id="ID">#%d</xliff:g> ক্যাপচার করা হয়েছে কিন্তু স্ক্রীনশট নেওয়ার কাজ সম্পন্ন হয়নি"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"ত্রুটির প্রতিবেদনে বিশদ বিবরণ যোগ করা হচ্ছে"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"অনুগ্রহ করে অপেক্ষা করুন..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"আপনার বাগ রিপোর্ট শেয়ার করতে বামে সোয়াইপ করুন"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"আপনার ত্রুটির প্রতিবেদন শেয়ার করতে আলতো চাপ দিন"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"কোনো স্ক্রীনশট ছাড়াই ত্রুটির প্রতিবেদন শেয়ার করতে আলতো চাপ দিন বা সম্পন্ন করতে স্ক্রীনশটের জন্য অপেক্ষা করুন"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"কোনো স্ক্রীনশট ছাড়াই ত্রুটির প্রতিবেদন শেয়ার করতে আলতো চাপ দিন বা সম্পন্ন করতে স্ক্রীনশটের জন্য অপেক্ষা করুন"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"ত্রুটির প্রতিবেদনগুলিতে থাকা ডেটা, সিস্টেমের বিভিন্ন লগ ফাইলগুলি থেকে আসে, যাতে ব্যক্তিগত এবং গোপনীয় তথ্য অন্তর্ভুক্ত থাকে৷ আপনি বিশ্বাস করেন শুধুমাত্র এমন অ্যাপ্লিকেশান এবং ব্যক্তিদের সাথে ত্রুটির প্রতিবেদনগুলি ভাগ করুন৷"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"এই বার্তাটি পরের বার দেখান"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"ত্রুটির প্রতিবেদনগুলিতে থাকা ডেটা, সিস্টেমের বিভিন্ন লগ ফাইলগুলি থেকে আসে, যাতে আপনার বিবেচনা অনুযায়ী সংবেদনশীল ডেটা (যেমন, অ্যাপ্লিকেশানের ব্যবহার এবং অবস্থান ডেটা) থাকতে পারে৷ আপনি বিশ্বাস করেন শুধুমাত্র এমন অ্যাপ্লিকেশান এবং ব্যক্তিদের সাথেই ত্রুটির প্রতিবেদনগুলিকে শেয়ার করুন৷"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"আর দেখাবেন না"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"ত্রুটির প্রতিবেদনগুলি"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"ত্রুটির প্রতিবেদনের ফাইলটি পড়া যায়নি"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"নামবিহীন"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"বিশদ বিবরণ"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"স্ক্রীনশট"</string>
diff --git a/packages/Shell/res/values-bs-rBA/strings.xml b/packages/Shell/res/values-bs-rBA/strings.xml
index f4d71e9..f0889c7 100644
--- a/packages/Shell/res/values-bs-rBA/strings.xml
+++ b/packages/Shell/res/values-bs-rBA/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Ljuska"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Izvještaj o grešci <xliff:g id="ID">#%d</xliff:g> se generira"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Izvještaj o grešci <xliff:g id="ID">#%d</xliff:g> je snimljen"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Izvještaj o greškama <xliff:g id="ID">#%d</xliff:g> snimljen, čeka se snim. ekr."</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Dodavanje detalja u izvještaj o greškama"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Pričekajte..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Prevucite lijevo da podijelite izvještaj o greškama"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Dodirnite da biste podijelili izvještaj o grešci"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Dodirnite da podijelite izveštaj o greškama bez snimka ekrana ili sačekajte da snimak bude gotov"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Dodirnite da podijelite izveštaj o greškama bez snimka ekrana ili sačekajte da snimak bude gotov"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Izvještaji o greškama sadrže podatke iz raznih zapisnika sistema, uključujući lične i privatne informacije. Podijelite izvještaje o greškama samo sa aplikacijama i osobama kojima vjerujete."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Pokaži ovu poruku sljedeći put"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Izvještaji o greškama sadrže podatke iz raznih zapisnika sistema koji mogu sadržavati lične i privatne informacije koje smatrate osjetljivima (poput podataka o upotrebi aplikacije ili podataka o lokaciji). Izvještaje o greškama dijelite samo sa aplikacijama i osobama kojima vjerujete."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ne prikazuj opet"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Izvještaji o greškama"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Nije moguće pročitati izvještaj o grešci"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"neimenovano"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalji"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Snimak ekrana"</string>
diff --git a/packages/Shell/res/values-ca/strings.xml b/packages/Shell/res/values-ca/strings.xml
index 3efb53b..ba8d46e 100644
--- a/packages/Shell/res/values-ca/strings.xml
+++ b/packages/Shell/res/values-ca/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Protecció"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"S\'està generant l\'informe d\'errors <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"S\'ha capturat l\'informe d\'errors <xliff:g id="ID">#%d</xliff:g>"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"L\'informe d\'errors <xliff:g id="ID">#%d</xliff:g> s\'ha capturat (captura pendent)"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"S\'estan afegint detalls a l\'informe d\'errors"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Espera…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Llisca cap a l\'esquerra per compartir l\'informe d\'errors."</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Toca per compartir l\'informe d\'errors"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Toca per compartir l\'informe d\'errors sense captura de pantalla o espera que es creï la captura"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Toca per compartir l\'informe d\'errors sense captura de pantalla o espera que es creï la captura"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Els informes d\'error contenen dades dels diferents fitxers de registre del sistema, inclosa informació privada i personal. Comparteix els informes d\'error només amb les aplicacions i amb les persones en qui confies."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Mostra aquest missatge la propera vegada"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Els informes d\'errors contenen dades dels diferents fitxers de registre del sistema, inclosa informació que pot ser confidencial (com ara l\'ús d\'aplicacions i les dades d\'ubicació). Comparteix-los només amb aplicacions i persones de confiança."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"No ho tornis a mostrar"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Informes d\'error"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"No s\'ha pogut llegir el fitxer de l\'informe d\'errors"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"sense nom"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalls"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Captura de pantalla"</string>
diff --git a/packages/Shell/res/values-cs/strings.xml b/packages/Shell/res/values-cs/strings.xml
index afb6f9e..d75be32 100644
--- a/packages/Shell/res/values-cs/strings.xml
+++ b/packages/Shell/res/values-cs/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Zpráva o chybě <xliff:g id="ID">#%d</xliff:g> se vytváří"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Zpráva o chybě <xliff:g id="ID">#%d</xliff:g> byla vytvořena"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Zpráva o chybě <xliff:g id="ID">#%d</xliff:g> byla vytvořena, čeká se na snímek"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Přidávání podrobností do zprávy o chybě"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Čekejte prosím…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Chcete-li hlášení chyby sdílet, přejeďte doleva."</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Zprávu o chybě můžete sdílet klepnutím"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Klepnutím můžete zprávu o chybě sdílet bez snímku obrazovky, nebo vyčkejte, než se snímek připraví"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Klepnutím můžete zprávu o chybě sdílet bez snímku obrazovky, nebo vyčkejte, než se snímek připraví"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Chybová hlášení obsahují data z různých souborů protokolů systému včetně osobních a soukromých informací. Chybová hlášení sdílejte pouze s aplikacemi a uživateli, kterým důvěřujete."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Zobrazit tuto zprávu příště"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Zprávy o chybách obsahují data z různých souborů protokolů systému a mohou zahrnovat data, která považujete za citlivá (například informace o využití aplikací a údaje o poloze).Chybová hlášení sdílejte pouze s lidmi a aplikacemi, kterým důvěřujete."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Tuto zprávu příště nezobrazovat"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Zprávy o chybách"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Soubor chybové zprávy nelze načíst"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"bez názvu"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Podrobnosti"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Snímek obrazovky"</string>
diff --git a/packages/Shell/res/values-da/strings.xml b/packages/Shell/res/values-da/strings.xml
index 0f7b784..d94af5d 100644
--- a/packages/Shell/res/values-da/strings.xml
+++ b/packages/Shell/res/values-da/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Fejlrapporten <xliff:g id="ID">#%d</xliff:g> genereres"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Fejrapporten <xliff:g id="ID">#%d</xliff:g> blev gemt"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Fejlrapport <xliff:g id="ID">#%d</xliff:g> blev gemt, men skærmbilledet afventer"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Tilføjelse af oplysninger til fejlrapporten"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Vent et øjeblik…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Stryg til venstre for at dele din fejlrapport"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Tryk for at dele din fejlrapport"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Tryk for at dele din fejlrapport uden et skærmbillede, eller vent på, at skærmbilledet fuldføres"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Tryk for at dele din fejlrapport uden et skærmbillede, eller vent på, at skærmbilledet fuldføres"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Fejlrapporter indeholder data fra systemets forskellige logfiler, f.eks. personlige og private oplysninger. Del kun fejlrapporter med apps og personer, du har tillid til."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Vis denne underretning næste gang"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Fejlrapporter indeholder data fra systemets forskellige logfiler, som kan være data, du mener er følsomme, f.eks. appforbrug og placeringsdata. Del kun fejlrapporter med personer og apps, du har tillid til."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Vis ikke igen"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Fejlrapporter"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Fejlrapportfilen kunne ikke læses"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"ikke navngivet"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Oplysninger"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Skærmbillede"</string>
diff --git a/packages/Shell/res/values-de/strings.xml b/packages/Shell/res/values-de/strings.xml
index 8f87fed..77641d3 100644
--- a/packages/Shell/res/values-de/strings.xml
+++ b/packages/Shell/res/values-de/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Fehlerbericht <xliff:g id="ID">#%d</xliff:g> wird generiert"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Fehlerbericht <xliff:g id="ID">#%d</xliff:g> erfasst"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Fehlerbericht <xliff:g id="ID">#%d</xliff:g> erfasst, aber Screenshot ausstehend"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Informationen werden zum Fehlerbericht hinzugefügt"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Bitte warten…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Wische nach links, um deinen Fehlerbericht zu teilen."</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Zum Teilen des Fehlerberichts tippen"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Tippe, um den Fehlerbericht ohne Screenshot zu teilen, oder warte auf den Screenshot"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Tippe, um den Fehlerbericht ohne Screenshot zu teilen, oder warte auf den Screenshot"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Fehlerberichte enthalten Daten aus verschiedenen Protokolldateien des Systems, darunter auch personenbezogene und private Daten. Teile Fehlerberichte nur mit Apps und Personen, denen du vertraust."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Diese Nachricht nächstes Mal zeigen"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Fehlerberichte enthalten Daten aus verschiedenen Protokolldateien des Systems, darunter auch vertrauliche Informationen, wie Daten zur App-Nutzung und Standortdaten. Teile Fehlerberichte nur mit Personen und Apps, denen du vertraust."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Nicht mehr anzeigen"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Fehlerberichte"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Fehlerberichtdatei konnte nicht gelesen werden."</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"Unbenannt"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Details"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Screenshot"</string>
diff --git a/packages/Shell/res/values-el/strings.xml b/packages/Shell/res/values-el/strings.xml
index 517d83a..16f2f81 100644
--- a/packages/Shell/res/values-el/strings.xml
+++ b/packages/Shell/res/values-el/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Κέλυφος"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Δημιουργείται η αναφορά σφάλματος <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Έγινε λήψη της αναφοράς σφάλματος <xliff:g id="ID">#%d</xliff:g>"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Η αναφ. σφάλματος <xliff:g id="ID">#%d</xliff:g> ελήφθη, αλλά το στιγμ. εκκρεμεί"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Προσθήκη λεπτομερειών στην αναφορά σφάλματος"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Περιμένετε…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Σύρετε προς τα αριστερά για κοινή χρήση της αναφοράς σφαλμάτων"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Πατήστε για κοινή χρήση της αναφοράς σφάλματος"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Πατήστε για κοινοποίηση της αναφοράς σφάλματος χωρίς στιγμιότυπο οθόνης ή περιμένετε να ολοκληρωθεί"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Πατήστε για κοινοποίηση της αναφοράς σφάλματος χωρίς στιγμιότυπο οθόνης ή περιμένετε να ολοκληρωθεί"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Οι αναφορές σφαλμάτων περιέχουν δεδομένα από τα διάφορα αρχεία καταγραφής του συστήματος, συμπεριλαμβανομένων προσωπικών και ιδιωτικών πληροφοριών. Να μοιράζεστε αναφορές σφαλμάτων μόνο με εφαρμογές και άτομα που εμπιστεύεστε."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Εμφάνιση αυτού του μηνύματος την επόμενη φορά"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Οι αναφορές σφαλμάτων περιέχουν δεδομένα από διάφορα αρχεία καταγραφής του συστήματος, τα οποία μπορεί να περιλαμβάνουν δεδομένα που θεωρείτε ευαίσθητα (όπως δεδομένα χρήσης εφαρμογών και τοποθεσίας). Να μοιράζεστε αναφορές σφαλμάτων μόνο με άτομα και εφαρμογές που εμπιστεύεστε."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Να μην εμφανιστεί ξανά"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Αναφορές σφαλμάτων"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Δεν ήταν δυνατή η ανάγνωση του αρχείου της αναφοράς σφαλμάτων"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"ανώνυμη"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Λεπτομέρειες"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Στιγμιότυπο οθόνης"</string>
diff --git a/packages/Shell/res/values-en-rAU/strings.xml b/packages/Shell/res/values-en-rAU/strings.xml
index 2349ec5..15b587b 100644
--- a/packages/Shell/res/values-en-rAU/strings.xml
+++ b/packages/Shell/res/values-en-rAU/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Bug report <xliff:g id="ID">#%d</xliff:g> is being generated"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Bug report <xliff:g id="ID">#%d</xliff:g> captured"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Bug report <xliff:g id="ID">#%d</xliff:g> captured but screenshot pending"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Adding details to the bug report"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Please wait…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Swipe left to share your bug report"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Tap to share your bug report"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Tap to share your bug report without a screenshot or wait for the screenshot to finish"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Tap to share your bug report without a screenshot or wait for the screenshot to finish"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Bug reports contain data from the system\'s various log files, including personal and private information. Only share bug reports with apps and people that you trust."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Show this message next time"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Bug reports contain data from the system\'s various log files, which may include data that you consider sensitive (such as app-usage and location data). Only share bug reports with people and apps that you trust."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Don\'t show again"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Bug reports"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Bug report file could not be read"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"Couldn\'t add bug report details to zip file"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"unnamed"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Details"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Screenshot"</string>
diff --git a/packages/Shell/res/values-en-rGB/strings.xml b/packages/Shell/res/values-en-rGB/strings.xml
index 2349ec5..15b587b 100644
--- a/packages/Shell/res/values-en-rGB/strings.xml
+++ b/packages/Shell/res/values-en-rGB/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Bug report <xliff:g id="ID">#%d</xliff:g> is being generated"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Bug report <xliff:g id="ID">#%d</xliff:g> captured"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Bug report <xliff:g id="ID">#%d</xliff:g> captured but screenshot pending"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Adding details to the bug report"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Please wait…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Swipe left to share your bug report"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Tap to share your bug report"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Tap to share your bug report without a screenshot or wait for the screenshot to finish"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Tap to share your bug report without a screenshot or wait for the screenshot to finish"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Bug reports contain data from the system\'s various log files, including personal and private information. Only share bug reports with apps and people that you trust."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Show this message next time"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Bug reports contain data from the system\'s various log files, which may include data that you consider sensitive (such as app-usage and location data). Only share bug reports with people and apps that you trust."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Don\'t show again"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Bug reports"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Bug report file could not be read"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"Couldn\'t add bug report details to zip file"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"unnamed"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Details"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Screenshot"</string>
diff --git a/packages/Shell/res/values-en-rIN/strings.xml b/packages/Shell/res/values-en-rIN/strings.xml
index 2349ec5..15b587b 100644
--- a/packages/Shell/res/values-en-rIN/strings.xml
+++ b/packages/Shell/res/values-en-rIN/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Bug report <xliff:g id="ID">#%d</xliff:g> is being generated"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Bug report <xliff:g id="ID">#%d</xliff:g> captured"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Bug report <xliff:g id="ID">#%d</xliff:g> captured but screenshot pending"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Adding details to the bug report"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Please wait…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Swipe left to share your bug report"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Tap to share your bug report"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Tap to share your bug report without a screenshot or wait for the screenshot to finish"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Tap to share your bug report without a screenshot or wait for the screenshot to finish"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Bug reports contain data from the system\'s various log files, including personal and private information. Only share bug reports with apps and people that you trust."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Show this message next time"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Bug reports contain data from the system\'s various log files, which may include data that you consider sensitive (such as app-usage and location data). Only share bug reports with people and apps that you trust."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Don\'t show again"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Bug reports"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Bug report file could not be read"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"Couldn\'t add bug report details to zip file"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"unnamed"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Details"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Screenshot"</string>
diff --git a/packages/Shell/res/values-es-rUS/strings.xml b/packages/Shell/res/values-es-rUS/strings.xml
index 307548a..bc9683e 100644
--- a/packages/Shell/res/values-es-rUS/strings.xml
+++ b/packages/Shell/res/values-es-rUS/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Se está generando el informe de errores <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Se capturó el informe de errores <xliff:g id="ID">#%d</xliff:g>"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Informe de errores <xliff:g id="ID">#%d</xliff:g> capturado (captura pendiente)"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Agregando detalles al informe de errores"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Espera…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Desliza el dedo hacia la izquierda para compartir el informe de errores."</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Toca para compartir el informe de errores"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Toca para compartir tu informe de errores sin una captura de pantalla o espera a que finalice"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Toca para compartir tu informe de errores sin una captura de pantalla o espera a que finalice"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Los informes de errores contienen datos de los distintos archivos de registro del sistema, incluida la información personal y privada. Comparte los informes de errores únicamente con aplicaciones y personas en las que confíes."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Mostrar este mensaje la próxima vez"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Los informes de errores contienen datos de los distintos archivos de registro del sistema, que pueden incluir datos confidenciales (como el uso de apps y la ubicación). Solo comparte los informes de errores con apps y personas de confianza."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"No volver a mostrar"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Informes de errores"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"No se pudo leer el archivo de informe de errores"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"sin nombre"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalles"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Captura de pantalla"</string>
diff --git a/packages/Shell/res/values-es/strings.xml b/packages/Shell/res/values-es/strings.xml
index 730ae73..70f618c 100644
--- a/packages/Shell/res/values-es/strings.xml
+++ b/packages/Shell/res/values-es/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Se está generando el informe de errores <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Informe de errores <xliff:g id="ID">#%d</xliff:g> capturado"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Informe <xliff:g id="ID">#%d</xliff:g> registrado (captura pantalla pendiente)"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Añadiendo detalles al informe de errores"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Espera…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Desliza el dedo hacia la izquierda para compartir el informe de error"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Toca para compartir el informe de errores"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Toca para compartir el informe de errores sin captura de pantalla o espera a que se haga la captura."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Toca para compartir el informe de errores sin captura de pantalla o espera a que se haga la captura."</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Los informes de errores contienen datos de los distintos archivos de registro del sistema, incluida información personal y privada. Comparte los informes de errores únicamente con aplicaciones y usuarios en los que confíes."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Mostrar este mensaje la próxima vez"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Los informes de errores contienen datos de los distintos archivos de registro del sistema, que pueden incluir información confidencial (como los datos de uso de las aplicaciones o los de ubicación). Comparte los informes de errores únicamente con usuarios y aplicaciones en los que confíes."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"No volver a mostrar"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Informes de error"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"No se ha podido leer el archivo del informe de errores"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"sin nombre"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalles"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Captura de pantalla"</string>
diff --git a/packages/Shell/res/values-et-rEE/strings.xml b/packages/Shell/res/values-et-rEE/strings.xml
index 028e2bd..a68455a 100644
--- a/packages/Shell/res/values-et-rEE/strings.xml
+++ b/packages/Shell/res/values-et-rEE/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Kest"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Luuakse veaaruannet <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Jäädvustati veaaruanne <xliff:g id="ID">#%d</xliff:g>"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Jäädvustati veaaruanne <xliff:g id="ID">#%d</xliff:g>, kuid ekraanipilt on ootel"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Üksikasjade lisamine veaaruandesse"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Oodake …"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Veaaruande jagamiseks pühkige vasakule"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Veaaruande jagamiseks puudutage"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Puudutage, et veaaruannet ilma ekraanipildita jagada, või oodake, kuni ekraanipilt tehtud saab."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Puudutage, et veaaruannet ilma ekraanipildita jagada, või oodake, kuni ekraanipilt tehtud saab."</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Veaaruanded sisaldavad andmeid erinevatest süsteemi logifailidest, sh isiklikku ja privaatset teavet. Jagage veaaruandeid ainult usaldusväärsete rakenduste ja inimestega."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Kuva see sõnum järgmisel korral"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Veaaruanded sisaldavad andmeid süsteemi eri logifailidest. Need võivad sisaldada andmeid, mis on teie arvates tundliku loomuga (nt rakenduse kasutuse ja asukohaandmed). Jagage veaaruandeid ainult usaldusväärsete inimeste ja rakendustega."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ära kuva uuesti"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Veaaruanded"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Veaaruande faili ei õnnestunud lugeda"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"nimeta"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Üksikasjad"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Ekraanipilt"</string>
diff --git a/packages/Shell/res/values-eu-rES/strings.xml b/packages/Shell/res/values-eu-rES/strings.xml
index 7946f67..4173083 100644
--- a/packages/Shell/res/values-eu-rES/strings.xml
+++ b/packages/Shell/res/values-eu-rES/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell-interfazea"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Akatsen <xliff:g id="ID">#%d</xliff:g> txostena egiten ari gara"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Akatsen <xliff:g id="ID">#%d</xliff:g> txostena egin da"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Egin da <xliff:g id="ID">#%d</xliff:g> txostena. Pantaila-argazkia falta da."</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Akatsen txostenean xehetasunak gehitzen"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Itxaron, mesedez…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Programa-akatsen txostena partekatzeko, pasatu hatza ezkerrera"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Sakatu akatsen txostena partekatzeko"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Sakatu akatsen txostena argazkirik gabe partekatzeko edo itxaron pantaila-argazkia atera arte"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Sakatu akatsen txostena argazkirik gabe partekatzeko edo itxaron pantaila-argazkia atera arte"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Akatsen txostenek sistemaren erregistro-fitxategietako datuak dauzkate, informazio pertsonala eta pribatua barne. Akatsen txostenak partekatzen badituzu, partekatu soilik aplikazio eta pertsona fidagarriekin."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Erakutsi mezu hau hurrengoan"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Errore-txostenek sistemaren erregistro-fitxategietako datuak dauzkate eta, haietan, isilpekotzat jotzen duzun informazioa ager daiteke (adibidez, aplikazioen erabilera eta kokapen-datuak). Errore-txostenak partekatzen badituzu, partekatu soilik pertsona eta aplikazio fidagarriekin."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ez erakutsi berriro"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Akatsen txostenak"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Ezin izan da irakurri akatsen txostena"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"izengabea"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Xehetasunak"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Pantaila-argazkia"</string>
diff --git a/packages/Shell/res/values-fa/strings.xml b/packages/Shell/res/values-fa/strings.xml
index ecadf1a..180ece5 100644
--- a/packages/Shell/res/values-fa/strings.xml
+++ b/packages/Shell/res/values-fa/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"گزارش اشکال <xliff:g id="ID">#%d</xliff:g> در حال ایجاد شدن است"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"گزارش اشکال <xliff:g id="ID">#%d</xliff:g> ثبت شد"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"گزارش اشکال <xliff:g id="ID">#%d</xliff:g> گرفته شد اما عکس از صفحه‌نمایش هنوز نه"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"اضافه کردن جزئیات به گزارش اشکال"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"لطفاً منتظر بمانید..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"برای اشتراک‌گذاری گزارش اشکال، به تندی آن را به چپ بکشید"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"برای به اشتراک گذاشتن گزارش اشکال، ضربه بزنید"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"برای اشتراک‌گذاری گزارش مشکل بدون عکس صفحه‌نمایش، ضربه بزنید یا صبر کنید تا عکس صفحه‌نمایش گرفته شود."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"برای اشتراک‌گذاری گزارش مشکل بدون عکس صفحه‌نمایش، ضربه بزنید یا صبر کنید تا عکس صفحه‌نمایش گرفته شود."</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"گزارش‌های اشکال حاوی داده‌هایی از فایل‌های گزارش مختلف در سیستم هستند، شامل اطلاعات شخصی و خصوصی. گزارش‌های اشکال را فقط با افراد و برنامه‌های مورد اعتماد خود به اشتراک بگذارید."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"دفعه بعد این پیام نشان داده شود"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"گزارش‌های اشکال حاوی داده‌هایی از فایل‌های مختلف گزارش سیستم هستند، که ممکن است حاوی داده‌های حساس شما (از قبیل داده‌های استفاده از برنامه و مکان) باشند. گزارش‌های اشکال را فقط با افراد و برنامه‌هایی که به آنها اعتماد دارید به اشتراک بگذارید."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"دوباره نشان داده نشود"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"گزارش اشکال"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"فایل گزارش اشکال خوانده نشد"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"بی‌نام"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"جزئیات"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"عکس صفحه‌نمایش"</string>
diff --git a/packages/Shell/res/values-fi/strings.xml b/packages/Shell/res/values-fi/strings.xml
index b5ae006..6be0052 100644
--- a/packages/Shell/res/values-fi/strings.xml
+++ b/packages/Shell/res/values-fi/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Komentotulkki"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Luodaan virheraporttia <xliff:g id="ID">#%d</xliff:g>."</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Virheraportti <xliff:g id="ID">#%d</xliff:g> tallennettu"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Virheraportti <xliff:g id="ID">#%d</xliff:g> tallennettu, kuvakaappaus odottaa."</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Lisätään tietoja virheraporttiin"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Odota…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Jaa virheraportti pyyhkäisemällä vasemmalle"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Jaa virheraportti napauttamalla."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Jaa virheraportti ilman kuvakaappausta napauttamalla tai odota, että kuvakaappaus latautuu."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Jaa virheraportti ilman kuvakaappausta napauttamalla tai odota, että kuvakaappaus latautuu."</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Virheraportit sisältävät järjestelmän lokitietoja, ja niihin voi sisältyä henkilökohtaisia ja yksityisiä tietoja. Jaa virheraportteja vain luotettaville sovelluksille ja käyttäjille."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Näytä tämä viesti seuraavalla kerralla"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Virheraportit sisältävät järjestelmän lokitietoja, ja niihin voi sisältyä arkaluontoisia tietoja (esimerkiksi sijainnista ja sovellusten käytöstä). Jaa virheraportit vain luotettavien henkilöiden ja sovellusten kanssa."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Älä näytä uudelleen"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Virheraportit"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Virheraporttitiedostoa ei voi lukea."</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"nimetön"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Tietoja"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Kuvakaappaus"</string>
diff --git a/packages/Shell/res/values-fr-rCA/strings.xml b/packages/Shell/res/values-fr-rCA/strings.xml
index 6c40edd..32fd713 100644
--- a/packages/Shell/res/values-fr-rCA/strings.xml
+++ b/packages/Shell/res/values-fr-rCA/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Rapport de bogue <xliff:g id="ID">#%d</xliff:g> généré"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Rapport de bogue <xliff:g id="ID">#%d</xliff:g> enregistré"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Rap. bogue <xliff:g id="ID">#%d</xliff:g> enreg., mais attente de saisie d\'écran"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Ajout de détails au rapport de bogue"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Veuillez patienter…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Faites glisser le doigt vers la gauche pour partager votre rapport de bogue."</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Touchez ici pour partager votre rapport de bogue"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Touchez pour partager le rapport de bogue sans saisie d\'écran ou attendez que la saisie soit prête"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Touchez pour partager le rapport de bogue sans saisie d\'écran ou attendez que la saisie soit prête"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Les rapports de bogue contiennent des données des fichiers journaux du système, y compris des informations personnelles et privées. Ne partagez les rapports de bogue qu\'avec les applications et les personnes que vous estimez fiables."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Afficher ce message la prochaine fois"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Les rapports de bogue contiennent des données des fichiers journaux du système, y compris des données que vous considérez comme sensibles (comme des renseignements sur l\'utilisation des applications et des données de localisation). Ne partagez les rapports de bogue qu\'avec les applications et les personnes en qui vous avez confiance."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ne plus afficher"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Rapports de bogues"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Impossible de lire le fichier du rapport de bogue"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"sans nom"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Détails"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Saisie d\'écran"</string>
diff --git a/packages/Shell/res/values-fr/strings.xml b/packages/Shell/res/values-fr/strings.xml
index 54f0b98..460647f 100644
--- a/packages/Shell/res/values-fr/strings.xml
+++ b/packages/Shell/res/values-fr/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Le rapport de bug \"<xliff:g id="ID">#%d</xliff:g>\" est en cours de création"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Le rapport de bug \"<xliff:g id="ID">#%d</xliff:g>\" a bien été enregistré"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Rapport bug \"<xliff:g id="ID">#%d</xliff:g>\" enregistré, mais attente capt. écran"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Ajout d\'informations au rapport de bug"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Veuillez patienter…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Faites glisser le doigt vers la gauche pour partager votre rapport d\'erreur."</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Appuyer pour partager votre rapport de bug"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Appuyer pour partager rapport de bug sans capture d\'écran ou attendre finalisation capture d\'écran"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Appuyer pour partager rapport de bug sans capture d\'écran ou attendre finalisation capture d\'écran"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Les rapports de bug contiennent des données des fichiers journaux du système, y compris des informations personnelles et privées. Ne partagez les rapports de bug qu\'avec les applications et les personnes que vous estimez fiables."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Afficher ce message la prochaine fois"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Les rapports de bug contiennent des données des fichiers journaux du système, y compris des informations que vous considérez sensibles concernant, par exemple, la consommation par application et la localisation. Nous vous recommandons de ne partager ces rapports qu\'avec des personnes et des applications que vous estimez fiables."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ne plus afficher"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Rapports d\'erreur"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Impossible de lire le fichier de rapport de bug."</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"sans nom"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Détails"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Captures d\'écran"</string>
diff --git a/packages/Shell/res/values-gl-rES/strings.xml b/packages/Shell/res/values-gl-rES/strings.xml
index d4610977b..249da4c 100644
--- a/packages/Shell/res/values-gl-rES/strings.xml
+++ b/packages/Shell/res/values-gl-rES/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Estase xerando o informe de erros <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Rexistrouse o informe de erros <xliff:g id="ID">#%d</xliff:g>"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Inf. erros <xliff:g id="ID">#%d</xliff:g> rexistrado e captura pantalla pendente"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Engadindo detalles ao informe de erro"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Agarda..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Pasa o dedo á esquerda para compartir o teu informe de erros"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Toca para compartir o teu informe de erros"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Toca para compartir o informe de erros sen captura de pantalla ou agarda a que finalice a captura"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Toca para compartir o informe de erros sen captura de pantalla ou agarda a que finalice a captura"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Os informes de erros conteñen datos dos distintos ficheiros de rexistro do sistema, incluída información persoal e privada. Comparte os informes de erros unicamente con aplicacións e persoas de confianza."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Mostrar esta mensaxe a próxima vez"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Os informes de erros conteñen datos dos distintos ficheiros de rexistro do sistema, os cales poden incluír datos que consideres confidenciais (coma o uso de aplicacións e os datos de localización). Comparte os informes de erros só coas persoas e aplicacións nas que confíes."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Non mostrar outra vez"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Informes de erros"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Non se puido ler o ficheiro de informe de erros"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"sen nome"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalles"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Captura de pantalla"</string>
diff --git a/packages/Shell/res/values-gu-rIN/strings.xml b/packages/Shell/res/values-gu-rIN/strings.xml
index f99167d..27591d9 100644
--- a/packages/Shell/res/values-gu-rIN/strings.xml
+++ b/packages/Shell/res/values-gu-rIN/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"શેલ"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"બગ રિપોર્ટ <xliff:g id="ID">#%d</xliff:g> જનરેટ કરવામાં આવી રહી છે"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"બગ રિપોર્ટ <xliff:g id="ID">#%d</xliff:g> કૅપ્ચર કરી"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"બગ રિપોર્ટ <xliff:g id="ID">#%d</xliff:g> કૅપ્ચર કરી પરંતુ સ્ક્રીનશૉટ બાકી છે"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"બગ રિપોર્ટમાં વિગતો ઉમેરવી"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"કૃપા કરીને રાહ જુઓ…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"તમારી બગ રિપોર્ટ શેર કરવા માટે ડાબે સ્વાઇપ કરો"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"તમારી બગ રિપોર્ટ શેર કરવા ટૅપ કરો"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"સ્ક્રીનશૉટ વગર અથવા સ્ક્રીનશૉટ સમાપ્ત થવાની રાહ જોયા વગર તમારી બગ રિપોર્ટ શેર કરવા ટૅપ કરો"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"સ્ક્રીનશૉટ વગર અથવા સ્ક્રીનશૉટ સમાપ્ત થવાની રાહ જોયા વગર તમારી બગ રિપોર્ટ શેર કરવા ટૅપ કરો"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"બગ રિપોર્ટ્સ વ્યક્તિગત અને ખાનગી માહિતી સહિત, સિસ્ટમની વિભિન્ન લૉગ ફાઇલોનો ડેટા ધરાવે છે. બગ રિપોર્ટ્સ ફક્ત તમે વિશ્વાસ કરતા હો તે એપ્લિકેશનો અને લોકો સાથે જ શેર કરો."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"આગલી વખતે આ સંદેશ બતાવો"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"બગ રિપોર્ટ્સ સિસ્ટમની વિભિન્ન લૉગ ફાઇલોનો ડેટા ધરાવે છે, જેમાં તે ડેટા શામેલ હોઈ શકે છે જેને તમે સંવેદી ગણો છો (જેમ કે ઍપ્લિકેશન-વપરાશ અને સ્થાન ડેટા). બગ રિપોર્ટ્સ ફક્ત તમે વિશ્વાસ કરતા હો તે ઍપ્લિકેશનો અને લોકો સાથે જ શેર કરો."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"ફરી બતાવશો નહીં"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"બગ રિપોર્ટ્સ"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"બગ રીપોર્ટ ફાઇલ વાંચી શકાઇ નથી"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"અનામાંકિત"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"વિગતો"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"સ્ક્રીનશોટ"</string>
diff --git a/packages/Shell/res/values-hi/strings.xml b/packages/Shell/res/values-hi/strings.xml
index aedec04..eade7ed 100644
--- a/packages/Shell/res/values-hi/strings.xml
+++ b/packages/Shell/res/values-hi/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"शेल"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"बग रिपोर्ट <xliff:g id="ID">#%d</xliff:g> जेनरेट की जा रही है"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"बग रिपोर्ट <xliff:g id="ID">#%d</xliff:g> कैप्चर की गई"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"बग रिपोर्ट <xliff:g id="ID">#%d</xliff:g> कैप्चर की गई लेकिन स्क्रीनशॉट लंबित है"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"बग रिपोर्ट में विवरण जोड़े जा रहे हैं"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"कृपया प्रतीक्षा करें…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"अपनी बग रिपोर्ट साझा करने के लिए बाएं स्वाइप करें"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"अपनी बग रिपोर्ट साझा करने के लिए टैप करें"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"अपनी बग रिपोर्ट को बिना स्क्रीनशॉट साझा करने हेतु टैप करें या स्क्रीनशॉट पूरा होने की प्रतीक्षा करें"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"अपनी बग रिपोर्ट को बिना स्क्रीनशॉट साझा करने हेतु टैप करें या स्क्रीनशॉट पूरा होने की प्रतीक्षा करें"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"बग रिपोर्ट में व्यक्तिगत और निजी जानकारी सहित, सिस्टम की विभिन्न लॉग फ़ाइलों का डेटा होता है. बग रिपोर्ट केवल विश्वसनीय ऐप्स  और व्यक्तियों से ही साझा करें."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"यह संदेश अगली बार दिखाएं"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"बग रिपोर्ट में सिस्टम की विभिन्न लॉग फ़ाइलों का डेटा शामिल होता है, जिसमें ऐसा डेटा शामिल हो सकता है जिसे आप संवेदनशील मानते हैं (जैसे कि ऐप्लिकेशन का उपयोग और स्थान डेटा). बग रिपोर्ट केवल अपने विश्वसनीय लोगों और ऐप्लिकेशन से साझा करें."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"फिर से ना दिखाएं"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"बग रिपोर्ट"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"बग रिपोर्ट फ़ाइल नहीं पढ़ी जा सकी"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"अनामांकित"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"विवरण"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"स्क्रीनशॉट"</string>
diff --git a/packages/Shell/res/values-hr/strings.xml b/packages/Shell/res/values-hr/strings.xml
index 462eb2a1..72d08ba 100644
--- a/packages/Shell/res/values-hr/strings.xml
+++ b/packages/Shell/res/values-hr/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Ljuska"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Generira se izvješće o programskoj pogrešci <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Izvješće o programskoj pogrešci <xliff:g id="ID">#%d</xliff:g> snimljeno"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Izvješće o pogrešci <xliff:g id="ID">#%d</xliff:g> snimljeno, ali se čeka snimka"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Dodavanje pojedinosti u izvješće o progr. pogrešci"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Pričekajte..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Prijeđite prstom ulijevo da biste poslali izvješće o programskim pogreškama"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Dodirnite da biste podijelili izvješće o programskoj pogrešci"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Dodirnite za dijeljenje izvješća o pogrešci bez snimke zaslona ili pričekajte da se izradi snimka"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Dodirnite za dijeljenje izvješća o pogrešci bez snimke zaslona ili pričekajte da se izradi snimka"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Prijave programskih pogrešaka sadržavaju podatke iz različitih datoteka zapisnika sustava, uključujući osobne i privatne informacije. Prijave programskih pogrešaka dijelite samo s aplikacijama i osobama koje smatrate pouzdanima."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Prikaži tu poruku sljedeći put"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Izvješća o programskim pogreškama sadržavaju podatke iz različitih datoteka zapisnika sustava, što može uključivati podatke koje smatrate osjetljivima (na primjer podatke o upotrebi aplikacije i lokaciji). Izvješća o programskim pogreškama dijelite samo s osobama i aplikacijama koje smatrate pouzdanima."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ne prikazuj ponovo"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Izvj. o prog. pogreš."</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Izvješće o programskoj pogrešci nije pročitano"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"bez naziva"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Pojedinosti"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Snimka zaslona"</string>
diff --git a/packages/Shell/res/values-hu/strings.xml b/packages/Shell/res/values-hu/strings.xml
index 1f7f1fa..3587919 100644
--- a/packages/Shell/res/values-hu/strings.xml
+++ b/packages/Shell/res/values-hu/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Héj"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Hibajelentés (<xliff:g id="ID">#%d</xliff:g>) létrehozása folyamatban"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Hibajelentés (<xliff:g id="ID">#%d</xliff:g>) rögzítve"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Hibajelentés (<xliff:g id="ID">#%d</xliff:g>) rögzítve – képernyőkép függőben"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Információk hozzáadása a hibajelentéshez"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Kérjük, várjon..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Húzza ujját balra a hibajelentés megosztásához"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Koppintson a hibajelentés megosztásához"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Koppintson ide, ha képernyőkép nélkül osztaná meg a hibajelentést, vagy várjon a képernyőképre."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Koppintson ide, ha képernyőkép nélkül osztaná meg a hibajelentést, vagy várjon a képernyőképre."</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"A programhiba-jelentések a rendszer különféle naplófájljaiból származó adatokat tartalmaznak, köztük személyes és magánjellegű információkat is. Csak olyan alkalmazásokkal és személyekkel osszon meg programhiba-jelentéseket, amelyekben vagy akikben megbízik."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Üzenet mutatása legközelebb"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"A programhiba-jelentések a rendszer különböző naplófájljaiból származó adatokat tartalmaznak, köztük bizalmas információkat is (például alkalmazáshasználati információkat és helyadatokat). Csak olyan alkalmazásokkal és személyekkel osszon meg programhiba-jelentéseket, amelyekben vagy akikben megbízik."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ne jelenjen meg többé"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Hibajelentések"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"A hibajelentési fájlt nem sikerült beolvasni"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"névtelen"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Részletek"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Képernyőkép"</string>
diff --git a/packages/Shell/res/values-hy-rAM/strings.xml b/packages/Shell/res/values-hy-rAM/strings.xml
index c9351c2..9f4c31b 100644
--- a/packages/Shell/res/values-hy-rAM/strings.xml
+++ b/packages/Shell/res/values-hy-rAM/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Խեցի"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"<xliff:g id="ID">#%d</xliff:g> վրիպակի զեկույցը ստեղծվում է"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"<xliff:g id="ID">#%d</xliff:g> վրիպակի զեկույցը գրանցվեց"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"<xliff:g id="ID">#%d</xliff:g> վրիպակի զեկույցը ստեղծվել է, սակայն էկրանի պատկերը դեռ չի ստացվել"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Տվյալների ավելացում վրիպակի զեկույցում"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Խնդրում ենք սպասել…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Սահեցրեք ձախ՝ սխալի հաշվետվությունը համօգտագործելու համար"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Հպեք՝ վրիպակի զեկույցը տրամադրելու համար"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Հպեք՝ վրիպակի զեկույցն առանց էկրանի պատկերի ուղարկելու համար կամ սպասեք էկրանի պատկերի ստեղծմանը"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Հպեք՝ վրիպակի զեկույցն առանց էկրանի պատկերի ուղարկելու համար կամ սպասեք էկրանի պատկերի ստեղծմանը"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Վրիպակի զեկույցները պարունակում են տվյալներ համակարգի տարբեր մուտքի ֆայլերից, այդ թվում նաև անհատական ​​և գաղտնի տեղեկություններ: Վրիպակի զեկույցները կիսեք միայն այն հավելվածների և մարդկանց հետ, որոնց վստահում եք:"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Այս հաղորդագրությունը ցույց տալ հաջորդ անգամ"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Վրիպակի զեկույցները պարունակում են տվյալներ համակարգի տարբեր մատյանի ֆայլերից և կարող են ներառել տեղեկություններ, որոնք դուք գաղտնի եք համարում (օրինակ՝ հավելվածի օգտագործման կամ տեղադրության մասին): Վրիպակի զեկույցները տրամադրեք միայն վստահելի մարդկանց և հավելվածներին:"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Այլևս ցույց չտալ"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Վրիպակների հաշվետվություններ"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Հնարավոր չէ կարդալ վրիպակների զեկույցի ֆայլը"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"անանուն"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Մանրամասներ"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Էկրանի պատկեր"</string>
diff --git a/packages/Shell/res/values-in/strings.xml b/packages/Shell/res/values-in/strings.xml
index 4bca166..90700c7 100644
--- a/packages/Shell/res/values-in/strings.xml
+++ b/packages/Shell/res/values-in/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"Kerangka"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Laporan bug <xliff:g id="ID">#%d</xliff:g> sedang dibuat"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Laporan bug <xliff:g id="ID">#%d</xliff:g> dijepret"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Laporan bug <xliff:g id="ID">#%d</xliff:g> dijepret, tetapi tangkapan layar belum selesai"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Menambahkan detail ke laporan bug"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Harap tunggu..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Gesek ke kiri untuk membagikan laporan bug Anda"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Ketuk untuk membagikan laporan bug"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Ketuk untuk membagikan laporan bug tanpa tangkapan layar atau menunggu tangkapan layar selesai"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Ketuk untuk membagikan laporan bug tanpa tangkapan layar atau menunggu tangkapan layar selesai"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Laporan bug berisi data dari berbagai file log sistem, termasuk informasi pribadi dan rahasia. Hanya bagikan laporan bug dengan aplikasi dan orang yang Anda percaya."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Tampilkan pesan ini lain kali"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Laporan bug berisi data dari berbagai file log sistem, yang mungkin mencakup data yang dianggap sensitif (seperti data penggunaan aplikasi dan lokasi). Hanya bagikan laporan bug dengan aplikasi dan orang yang Anda percaya."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Jangan tampilkan lagi"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Laporan bug"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"File laporan bug tidak dapat dibaca"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"Tidak dapat menambahkan detail laporan bug ke file zip"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"tanpa nama"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detail"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Tangkapan layar"</string>
diff --git a/packages/Shell/res/values-is-rIS/strings.xml b/packages/Shell/res/values-is-rIS/strings.xml
index aedf3bc3..9e1f2ef 100644
--- a/packages/Shell/res/values-is-rIS/strings.xml
+++ b/packages/Shell/res/values-is-rIS/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Skipanalína"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Verið er að búa til villutilkynningu <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Villutilkynning <xliff:g id="ID">#%d</xliff:g> búin til"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Villuskýrsla <xliff:g id="ID">#%d</xliff:g> tilbúin en skjámynd í vinnslu"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Bætir upplýsingum við villutilkynningu"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Augnablik..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Strjúktu til vinstri til að deila villuskýrslunni"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Ýttu til að deila villutilkynningunni"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Ýttu til að deila villutilkynningunni án skjámyndar eða hinkraðu þangað til skjámyndin er tilbúin"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Ýttu til að deila villutilkynningunni án skjámyndar eða hinkraðu þangað til skjámyndin er tilbúin"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Villutilkynningar innihalda gögn úr hinum ýmsu annálsskrám kerfisins, þ. á m. persónuleg gögn og trúnaðarupplýsingar. Deildu villutilkynningum eingöngu með forritum og fólki sem þú treystir."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Sýna þessi skilaboð næst"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Villutilkynningar innihalda gögn úr ýmsum annálaskrám kerfisins, sem gætu innihaldið upplýsingar sem þú telur viðkvæmar (eins og um notkun forrita og staðsetningarupplýsingar). Deildu villutilkynningum bara með fólki og forritum sem þú treystir."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ekki sýna þetta aftur"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Villutilkynningar"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Ekki var hægt að lesa úr villuskýrslunni"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"án heitis"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Nánar"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Skjámynd"</string>
diff --git a/packages/Shell/res/values-it/strings.xml b/packages/Shell/res/values-it/strings.xml
index 5c4b8d3..132f735 100644
--- a/packages/Shell/res/values-it/strings.xml
+++ b/packages/Shell/res/values-it/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Generazione segnalazione di bug <xliff:g id="ID">#%d</xliff:g> in corso"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Segnalazione di bug <xliff:g id="ID">#%d</xliff:g> acquisita"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Segnalazione bug <xliff:g id="ID">#%d</xliff:g> acquisita, screenshot in attesa"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Aggiunta di dettagli alla segnalazione di bug"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Attendi..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Scorri verso sinistra per condividere il rapporto sui bug"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Tocca per condividere la segnalazione di bug"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Tocca per inviare la segnalazione del bug senza screenshot o attendi che lo screenshot sia completo"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Tocca per inviare la segnalazione del bug senza screenshot o attendi che lo screenshot sia completo"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Le segnalazioni di bug contengono dati da vari file di log del sistema, incluse informazioni personali e private. Condividi le segnalazioni di bug solo con app e persone attendibili."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Mostra questo messaggio la prossima volta"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Le segnalazioni di bug contengono dati recuperati da vari file di log del sistema e potrebbero includere dati considerati riservati (ad esempio dati relativi alla posizione e all\'utilizzo delle app). Condividi le segnalazioni di bug solo con persone e app attendibili."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Non mostrare più"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Rapporti sui bug"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Impossibile leggere il file relativo alla segnalazione di bug"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"senza nome"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Dettagli"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Screenshot"</string>
diff --git a/packages/Shell/res/values-iw/strings.xml b/packages/Shell/res/values-iw/strings.xml
index 6589c8b..7e533af 100644
--- a/packages/Shell/res/values-iw/strings.xml
+++ b/packages/Shell/res/values-iw/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"מעטפת"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"יצירת הדוח על הבאג <xliff:g id="ID">#%d</xliff:g> מתבצעת"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"הדוח על הבאג <xliff:g id="ID">#%d</xliff:g> צולם"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"הדוח על הבאג <xliff:g id="ID">#%d</xliff:g> נוצר, אך צילום המסך בהמתנה"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"מוסיף פרטים לדוח על הבאג"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"המתן…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"החלק שמאלה כדי לשתף את דוח הבאגים"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"הקש כדי לשתף את הדוח על הבאג"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"הקש כדי לשתף את הדוח על הבאג ללא צילום מסך, או המתן להשלמת צילום המסך"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"הקש כדי לשתף את הדוח על הבאג ללא צילום מסך, או המתן להשלמת צילום המסך"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"דוחות על באגים כוללים נתונים מקובצי היומן השונים במערכת, כולל מידע אישי ופרטי. שתף דוחות באגים רק עם אפליקציות ואנשים שאתה סומך עליהם."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"הצג את ההודעה הזו בפעם הבאה"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"דוחות על באגים כוללים נתונים מקובצי היומן השונים במערכת, שעשויים לכלול נתונים הנחשבים רגישים (כגון שימוש באפליקציות ונתוני מיקום). שתף דוחות על באגים רק עם אפליקציות ואנשים שאתה סומך עליהם."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"אל תציג שוב"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"דוחות באגים"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"לא ניתן היה לקרוא את קובץ הדוח על הבאג"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"ללא שם"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"פרטים"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"צילום מסך"</string>
diff --git a/packages/Shell/res/values-ja/strings.xml b/packages/Shell/res/values-ja/strings.xml
index a6ff33e..7904801 100644
--- a/packages/Shell/res/values-ja/strings.xml
+++ b/packages/Shell/res/values-ja/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"シェル"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"バグレポート <xliff:g id="ID">#%d</xliff:g> の生成中"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"バグレポート <xliff:g id="ID">#%d</xliff:g> の記録完了"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"バグレポート <xliff:g id="ID">#%d</xliff:g> 記録完了: スクリーンショット待ち"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"バグレポートに詳細情報を追加しています"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"お待ちください…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"バグレポートを共有するには左にスワイプ"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"バグレポートを共有するにはタップします"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"タップしてバグレポートをスクリーンショットなしで共有するか、スクリーンショット完成までお待ちください"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"タップしてバグレポートをスクリーンショットなしで共有するか、スクリーンショット完成までお待ちください"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"バグレポートには、個人の非公開情報など、システムのさまざまなログファイルのデータが含まれます。共有する場合は信頼するアプリとユーザーのみを選択してください。"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"このメッセージを次回も表示する"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"バグレポートには、システムのさまざまなログファイルのデータが含まれており、他人に知られたくないデータ（アプリの使用状況、位置情報など）が含まれている場合もあります。バグレポートの共有は、信頼できる人やアプリとのみ行ってください。"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"次回から表示しない"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"バグレポート"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"バグレポート ファイルを読み取ることができませんでした"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"名前なし"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"詳細"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"スクリーンショット"</string>
diff --git a/packages/Shell/res/values-ka-rGE/strings.xml b/packages/Shell/res/values-ka-rGE/strings.xml
index 119c360..793626e 100644
--- a/packages/Shell/res/values-ka-rGE/strings.xml
+++ b/packages/Shell/res/values-ka-rGE/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"გარეკანი"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"ხარვეზების შესახებ ანგარიში <xliff:g id="ID">#%d</xliff:g> გენერირდება"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"ხარვეზების შესახებ ანგარიში <xliff:g id="ID">#%d</xliff:g> აღბეჭდილია"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"ხარვეზის ანგარიში <xliff:g id="ID">#%d</xliff:g> მზადაა. იქმნება ეკრანის ანაბეჭდი"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"ხარვეზის შესახებ ანგარიშს დეტალები ემატება"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"გთხოვთ, მოითმინოთ..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"გაასრიალეთ მარცხნივ თქვენი ხარვეზის შეტყობინების გასაზიარებლად"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"შეეხეთ ხარვეზების შესახებ ანგარიშის გასაზიარებლად"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"შეეხეთ ხარვეზის შესახებ ანგარიშის ეკრანის ანაბეჭდის გარეშე გასაზიარებლად, ან დაელოდეთ მის შექმნას"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"შეეხეთ ხარვეზის შესახებ ანგარიშის ეკრანის ანაბეჭდის გარეშე გასაზიარებლად, ან დაელოდეთ მის შექმნას"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"ხარვეზის ანგარიშები მოიცავს მონაცემებს სხვადასხვა სისტემური ჟურნალის ფაილებიდან, მათ შორის პირად და კონფიდენციალურ ინფორმაციას."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"შემდგომში აჩვენე ეს შეტყობინება"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"ხარვეზების შესახებ ანგარიშები სისტემის სხვადასხვა ჟურნალიდან მიღებულ მონაცემებს შეიცავს, მათ შორის, ისეთ ინფორმაციას, რომელსაც შეიძლება სენსიტიურად მიიჩნდევდეთ (მაგალითად, მონაცემებს აპების გამოყენებისა და მდებარეობის შესახებ). გირჩევთ, ხარვეზების შესახებ ანგარიშები გაუზიაროთ მხოლოდ იმ ადამიანებსა და აპებს, რომლებსაც ენდობით."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"აღარ გამოჩნდეს"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"შეცდომების ანგარიშები"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"ხარვეზების შესახებ ანგარიშის წაკითხვა ვერ მოხერხდა"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"უსახელო"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"დეტალები"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"ეკრანის ანაბეჭდი"</string>
diff --git a/packages/Shell/res/values-kk-rKZ/strings.xml b/packages/Shell/res/values-kk-rKZ/strings.xml
index 90028ca..86f969b 100644
--- a/packages/Shell/res/values-kk-rKZ/strings.xml
+++ b/packages/Shell/res/values-kk-rKZ/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Қабыршық"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"<xliff:g id="ID">#%d</xliff:g> қате туралы есебі жасалуда"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"<xliff:g id="ID">#%d</xliff:g> қате туралы есебі жазып алынды"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"<xliff:g id="ID">#%d</xliff:g> қате туралы есебі жазып алынды, бірақ скриншот әлі сақталған жоқ"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Қате туралы есепке мәліметтер қосылуда"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Күте тұрыңыз…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Қате туралы есепті бөлісу үшін солға жанаңыз"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Қате туралы есепті бөлісу үшін түртіңіз"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Қате туралы есепті скриншотсыз бөлісу үшін түртіңіз немесе скриншот сақталып болғанша күтіңіз"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Қате туралы есепті скриншотсыз бөлісу үшін түртіңіз немесе скриншот сақталып болғанша күтіңіз"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Вирус туралы баянатта жүйеде тіркелген әртүрлі файлдар туралы деректер болады, оған жеке және құпия ақпарат та кіреді. Вирус баянаттарын сенімді қолданбалар және сенімді адамдармен ғана бөлісіңіз."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Бұл хабарды келесі жолы көрсетіңіз"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Қате туралы есептерде жүйенің әр түрлі журнал файлдарының деректері беріледі. Олар маңызды деректерді қамтуы мүмкін (мысалы, қолданбаны пайдалану және орналасқан жер деректері). Қате туралы есептерді тек сенімді адамдармен және қолданбалармен бөлісіңіз."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Қайтадан көрсетілмесін"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Қате туралы баяндамалар"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Қате туралы есеп файлын оқу мүмкін болмады"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"атаусыз"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Мәліметтер"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Скриншот"</string>
diff --git a/packages/Shell/res/values-km-rKH/strings.xml b/packages/Shell/res/values-km-rKH/strings.xml
index d5fc400..f593152 100644
--- a/packages/Shell/res/values-km-rKH/strings.xml
+++ b/packages/Shell/res/values-km-rKH/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"សែល"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"<xliff:g id="ID">#%d</xliff:g> របាយការណ៍កំហុសកំពុងត្រូវបានបង្កើត"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"<xliff:g id="ID">#%d</xliff:g> របាយការណ៍កំហុសត្រូវបានថត"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"<xliff:g id="ID">#%d</xliff:g> របាយការណ៍កំហុសត្រូវបានថត ប៉ុន្តែរូបថតអេក្រង់មិនទាន់បានថតនៅឡើយទេ"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"កំពុងបន្ថែមព័ត៌មានលម្អិតទៅរបាយការណ៍កំហុស"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"សូម​រង់ចាំ…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"អូស​ទៅ​ឆ្វេង​​ ដើម្បី​ចែក​រំលែក​របាយការណ៍​កំហុស​របស់​អ្នក"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"ប៉ះដើម្បីចែករំលែករបាយការណ៍កំហុសរបស់អ្នក"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"ប៉ះដើម្បីចែករំលែករបាយការណ៍កំហុសរបស់អ្នកដោយមិនចាំបាច់មានរូបថតអេក្រង់ ឬរង់ចាំការបញ្ចប់ការថតអេក្រង់"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"ប៉ះដើម្បីចែករំលែករបាយការណ៍កំហុសរបស់អ្នកដោយមិនចាំបាច់មានរូបថតអេក្រង់ ឬរង់ចាំការបញ្ចប់ការថតអេក្រង់"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"របាយការណ៍​កំហុស​រួមមាន​ឯកសារ​កំណត់​ហេតុ​ផ្សេងៗ​របស់​ប្រព័ន្ធ រួមមាន​ព័ត៌មាន​ផ្ទាល់ខ្លួន និង​ឯកជន។ ចែករំលែក​របាយការណ៍​កំហុស​ជា​មួយ​កម្មវិធី និង​មនុស្ស​ដែល​អ្នក​ទុក​ចិត្ត។"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"បង្ហាញ​សារ​នេះ​ពេល​ក្រោយ"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"របាយការណ៍ផ្ទុកទិន្នន័យពីឯកសារកំណត់ហេតុផ្សេងៗរបស់ប្រព័ន្ធ ដែលអាចមានផ្ទុកទិន្នន័យដែលអ្នកចាត់ទុកថាជាទិន្នន័យរសើប (ដូចជាការប្រើប្រាស់កម្មវិធី និងទិន្នន័យទីតាំង)។ ចែករំលែករបាយការណ៍កំហុសជាមួយមនុស្ស និងកម្មវិធីដែលអ្នកជឿជាក់ប៉ុណ្ណោះ។"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"កុំបង្ហាញម្ដងទៀត"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"រាយការណ៍ពីកំហុស"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"មិនអាចអានឯកសាររបាយកាណ៍កំហុសបានទេ"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"គ្មានឈ្មោះ"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"ព័ត៌មានលម្អិត"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"រូបថតអេក្រង់"</string>
diff --git a/packages/Shell/res/values-kn-rIN/strings.xml b/packages/Shell/res/values-kn-rIN/strings.xml
index 1331f7e..91d84d0 100644
--- a/packages/Shell/res/values-kn-rIN/strings.xml
+++ b/packages/Shell/res/values-kn-rIN/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"ಶೆಲ್"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"ದೋಷ ವರದಿಯ <xliff:g id="ID">#%d</xliff:g> ಅನ್ನು ರಚಿಸಲಾಗುತ್ತಿದೆ"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"ದೋಷ ವರದಿಯ <xliff:g id="ID">#%d</xliff:g> ಅನ್ನು ಕ್ಯಾಪ್ಚರ್ ಮಾಡಿಕೊಳ್ಳಲಾಗಿದೆ"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"ದೋಷ ವರದಿಯ <xliff:g id="ID">#%d</xliff:g> ಅನ್ನು ಕ್ಯಾಪ್ಚರ್ ಮಾಡಿಕೊಳ್ಳಲಾಗಿದೆ ಆದರೆ ಸ್ಕ್ರೀನ್‌ಶಾಟ್‌ ಬಾಕಿ ಉಳಿದಿದೆ"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"ಬಗ್ ವರದಿಗೆ ವಿವರಗಳನ್ನು ಸೇರಿಸಲಾಗುತ್ತಿದೆ"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"ದಯವಿಟ್ಟು ನಿರೀಕ್ಷಿಸಿ..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"ನಿಮ್ಮ ದೋಷ ವರದಿಯನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಎಡಕ್ಕೆ ಸ್ವೈಪ್‌ ಮಾಡಿ"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"ನಿಮ್ಮ ಬಗ್ ವರದಿಯನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"ಸ್ಕ್ರೀನ್‌ಶಾಟ್‌ ಇಲ್ಲದೇ ನಿಮ್ಮ ಬಗ್ ವರದಿಯನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಟ್ಯಾಪ್ ಮಾಡಿ ಅಥವಾ ಸ್ಕ್ರೀನ್‌ಶಾಟ್‌ ಪೂರ್ತಿಯಾಗುವವರೆಗೂ ನಿರೀಕ್ಷಿಸಿ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"ಸ್ಕ್ರೀನ್‌ಶಾಟ್‌ ಇಲ್ಲದೇ ನಿಮ್ಮ ಬಗ್ ವರದಿಯನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಟ್ಯಾಪ್ ಮಾಡಿ ಅಥವಾ ಸ್ಕ್ರೀನ್‌ಶಾಟ್‌ ಪೂರ್ತಿಯಾಗುವವರೆಗೂ ನಿರೀಕ್ಷಿಸಿ"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"ವೈಯಕ್ತಿಕ ಮತ್ತು ಖಾಸಗಿ ಮಾಹಿತಿಯು ಸೇರಿದಂತೆ, ಸಿಸ್ಟಂನ ಹಲವಾರು ಲಾಗ್ ಫೈಲ್‌ಗಳಿಂದ ಡೇಟಾವನ್ನು ದೋಷದ ವರದಿಗಳು ಒಳಗೊಂಡಿವೆ. ನೀವು ನಂಬುವಂತಹ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ಮತ್ತು ಜನರೊಂದಿಗೆ ಮಾತ್ರ ದೋಷದ ವರದಿಗಳನ್ನು ಹಂಚಿಕೊಳ್ಳಿ."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"ಈ ಸಂದೇಶವನ್ನು ಮುಂದಿನ ಬಾರಿ ತೋರಿಸಿ"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"ನೀವು ಸೂಕ್ಷ್ಮ ಎಂದು ಪರಿಗಣಿಸಿರುವ ಯಾವುದೇ ಡೇಟಾ ಒಳಗೊಂಡಿರುವ ಸಿಸ್ಟಂನ ಹಲವಾರು ಲಾಗ್ ಫೈಲ್‌ಗಳಿಂದ ಡೇಟಾವನ್ನು ದೋಷದ ವರದಿಗಳು ಒಳಗೊಂಡಿವೆ (ಉದಾಹರಣೆಗೆ ಅಪ್ಲಿಕೇಶನ್-ಬಳಕೆ ಮತ್ತು ಸ್ಥಳ ಮಾಹಿತಿ). ನೀವು ನಂಬಿಕೆ ಇರಿಸಿರುವ ಜನರು ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್‌ಗಳೊಂದಿಗೆ ಮಾತ್ರ ದೋಷದ ವರದಿಗಳನ್ನು ಹಂಚಿಕೊಳ್ಳಿ."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"ಮತ್ತೊಮ್ಮೆ ತೋರಿಸಬೇಡ"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"ದೋಷ ವರದಿಗಳು"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"ಬಗ್‌ ವರದಿ ಫೈಲ್‌‌ ಅನ್ನು ಓದಲು ಸಾಧ್ಯವಾಗುತ್ತಿಲ್ಲ"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"ಹೆಸರಿಸದಿರುವುದು"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"ವಿವರಗಳು"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"ಸ್ಕ್ರೀನ್‌ಶಾಟ್"</string>
diff --git a/packages/Shell/res/values-ko/strings.xml b/packages/Shell/res/values-ko/strings.xml
index 4c0a169..fc0119f 100644
--- a/packages/Shell/res/values-ko/strings.xml
+++ b/packages/Shell/res/values-ko/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"셸"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"버그 신고 <xliff:g id="ID">#%d</xliff:g> 생성 중"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"버그 신고 <xliff:g id="ID">#%d</xliff:g> 캡처됨"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"버그 신고 <xliff:g id="ID">#%d</xliff:g>이(가) 캡처되었으나 스크린샷 대기 중"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"세부정보를 버그 보고서에 추가"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"잠시 기다려 주세요..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"왼쪽으로 스와이프하여 버그 신고서를 공유하세요."</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"버그 신고를 공유하려면 탭하세요."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"스크린샷 없이 버그 신고서를 공유하려면 탭하고 그렇지 않으면 스크린샷이 완료될 때까지 기다려 주세요."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"스크린샷 없이 버그 신고서를 공유하려면 탭하고 그렇지 않으면 스크린샷이 완료될 때까지 기다려 주세요."</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"버그 신고서는 시스템의 다양한 로그 파일 데이터(예: 개인 및 비공개 정보)를 포함합니다. 신뢰할 수 있는 앱과 사용자에게만 버그 신고서를 공유하세요."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"다음에 이 메시지 표시"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"버그 신고서에는 시스템의 다양한 로그 파일 데이터가 포함되며 여기에는 사용자가 중요하다고 생각하는 데이터(예: 앱 사용 및 위치 데이터)가 포함되었을 수 있습니다. 신뢰할 수 있는 앱과 사용자에게만 버그 신고서를 공유하세요."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"다시 표시 안함"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"버그 신고"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"버그 신고 파일을 읽을 수 없습니다."</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"이름 없음"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"세부정보"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"스크린샷"</string>
diff --git a/packages/Shell/res/values-ky-rKG/strings.xml b/packages/Shell/res/values-ky-rKG/strings.xml
index 16a9549..e1021f5 100644
--- a/packages/Shell/res/values-ky-rKG/strings.xml
+++ b/packages/Shell/res/values-ky-rKG/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Командалык кабык"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Мүчүлүштүк тууралуу билдирүү <xliff:g id="ID">#%d</xliff:g> түзүлүүдө"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Мүчүлүштүк тууралуу билдирүү <xliff:g id="ID">#%d</xliff:g> жаздырылды"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Мүчүлүштүк тууралуу билдирүү <xliff:g id="ID">#%d</xliff:g> даяр, скриншот күтүлүүдө"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Мүчүлүштүк жөнүндө кабардын чоо-жайы кошулууда"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Күтө туруңуз…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Ката жөнүндө кабар менен бөлүшүү үчүн солго серпип коюңуз"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Мүчүлүштүк тууралуу билдирүүңүздү бөлүшүү үчүн таптап коюңуз"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Мүчүлүштүк тууралуу билдирүүңүздү скриншотсуз бөлүшүү үчүн таптап коюңуз же скриншот даяр болгуча күтө туруңуз"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Мүчүлүштүк тууралуу билдирүүңүздү скриншотсуз бөлүшүү үчүн таптап коюңуз же скриншот даяр болгуча күтө туруңуз"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Ката тууралуу билдирүүлөр системанын ар кандай лог файлдарынын берилиштерин камтыйт, аларга өздүк жана купуя маалыматтар дагы кирет. Ката тууралуу билдирүүлөрдү сиз ишенген колдонмолор жана адамдар менен гана бөлүшүңүз."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Бул билдирүү кийин көрсөтүлсүн"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Мүчүлүштүктөр тууралуу билдирүүлөрдө тутумдун ар кандай таржымалдарынан алынган дайындар, ошондой эле купуя маалымат камтылышы мүмкүн (мисалы, жайгашкан жер сыяктуу). Мындай билдирүүлөрдү бир гана ишеничтүү адамдар жана колдонмолор менен бөлүшүңүз."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Экинчи көрсөтүлбөсүн"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Мүчүлүштүктөрдү кабарлоолор"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Мүчүлүштүк тууралуу кабарлаган файл окулбай койду"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"аталышы жок"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Чоо-жайы"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Скриншот"</string>
diff --git a/packages/Shell/res/values-lo-rLA/strings.xml b/packages/Shell/res/values-lo-rLA/strings.xml
index 2804528..2cc1573 100644
--- a/packages/Shell/res/values-lo-rLA/strings.xml
+++ b/packages/Shell/res/values-lo-rLA/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"ກຳລັງສ້າງລາຍງານຂໍ້ຜິດພາດ <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"ບັນທຶກລາຍງານຂໍ້ຜິດພາດ <xliff:g id="ID">#%d</xliff:g> ແລ້ວ"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"ບັນທຶກລາຍງານຂໍ້ຜິດພາດ <xliff:g id="ID">#%d</xliff:g> ແລ້ວແຕ່ກຳລັງລໍຖ້າຮູບໜ້າຈໍຢູ່"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"ກຳລັງເພີ່ມລາຍລະອຽດໃສ່ລາຍງານຂໍ້ຜິດພາດ"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"ກະລຸນາລໍຖ້າ..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"​ປັດ​ໄປ​ຊ້າຍ​ເພື່ອ​ສົ່ງ​ລາຍ​ງານ​ຂໍ້​ຜິດ​ພາດ​ຂອງ​ທ່ານ"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"ແຕະເພື່ອແບ່ງປັນລາຍງານຂໍ້ຜິດພາດຂອງທ່ານ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"ແຕະເພື່ອແບ່ງປັນລາຍງານຂໍ້ຜິດພາດຂອງທ່ານໂດຍບໍ່ໃຊ້ຮູບໜ້າຈໍ ຫຼື ລໍຖ້າໃຫ້ຮູບໜ້າຈໍແລ້ວໆ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"ແຕະເພື່ອແບ່ງປັນລາຍງານຂໍ້ຜິດພາດຂອງທ່ານໂດຍບໍ່ໃຊ້ຮູບໜ້າຈໍ ຫຼື ລໍຖ້າໃຫ້ຮູບໜ້າຈໍແລ້ວໆ"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"ການລາຍງານຂໍ້ຜິດພາດປະກອບມີ ຂໍ້ມູນຈາກໄຟລ໌ບັນທຶກຂອງລະບົບຫຼາຍໄຟລ໌, ຮວມທັງຂໍ້ມູນສ່ວນໂຕນຳ. ທ່ານຕ້ອງແບ່ງປັນລາຍງານຂໍ້ຜິດພາດໃຫ້ແອັບຯ ແລະຄົນທີ່ທ່ານເຊື່ອຖືໄດ້ເທົ່ານັ້ນ."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"ສະແດງຂໍ້ຄວາມນີ້ອີກໃນເທື່ອຕໍ່ໄປ"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"ລາຍງານຂໍ້ຜິດພາດມີຂໍ້ມູນຈາກໄຟລ໌ບັນທຶກຕ່າງໆຂອງລະບົບ ເຊິ່ງອາດຮວມມີຂໍ້ມູນທີ່ທ່ານຖືວ່າເປັນຂໍ້ມູນລະອຽດອ່ອນນຳ (ເຊັ່ນ: ການນຳໃຊ້ແອັບ ແລະ ຂໍ້ມູນສະຖານທີ່). ທ່ານຄວນແບ່ງປັນລາຍງານນີ້ໃຫ້ກັບຄົນ ແລະ ແອັບທີ່ທ່ານເຊື່ອໃຈເທົ່ານັ້ນ."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"ບໍ່ຕ້ອງສະແດງອີກ"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"ລາຍ​ງານ​ບັນ​ຫາ"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"ບໍ່ສາມາດອ່ານໄຟລ໌ລາຍງານຂໍ້ຜິດພາດໄດ້"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"ບໍ່ສາມາດເພີ່ມລາຍລະອຽດການລາຍງານຂໍ້ຜິດພາດໃສ່ໄຟລ໌ zip ໄດ້"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"ບໍ່ມີຊື່"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"ລາຍລະອຽດ"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"ພາບໜ້າຈໍ"</string>
diff --git a/packages/Shell/res/values-lt/strings.xml b/packages/Shell/res/values-lt/strings.xml
index a8468cf..572623a 100644
--- a/packages/Shell/res/values-lt/strings.xml
+++ b/packages/Shell/res/values-lt/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Apvalkalas"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Pranešimas apie riktą (<xliff:g id="ID">#%d</xliff:g>) generuojamas"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Pranešimas apie riktą (<xliff:g id="ID">#%d</xliff:g>) užfiksuotas"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Pranešimas apie riktą (<xliff:g id="ID">#%d</xliff:g>) užfiksuotas, bet laukiama ekrano kopijos"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Pridedama informacijos prie pranešimo apie riktą"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Palaukite…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Perbraukite kairėn, kad bendrintumėte rikto ataskaitą"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Palieskite, kad bendrintumėte pranešimą apie riktą"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Palieskite ir bendrinkite pranešimą apie riktą be ekrano kopijos arba palaukite, kol ji bus sukurta"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Palieskite ir bendrinkite pranešimą apie riktą be ekrano kopijos arba palaukite, kol ji bus sukurta"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Riktų ataskaitose pateikiami duomenys iš įvairių sistemos žurnalo failų, įskaitant asmeninę ir privačią informaciją. Riktų ataskaitas bendrinkite tik su patikimomis programomis ir žmonėmis."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Rodyti šį pranešimą kitą kartą"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Pranešimuose apie riktą pateikiami duomenys iš įvairių sistemos žurnalo failų, kurie gali apimti informaciją, kuri, jūsų manymu, yra neskelbtina (pvz., programos naudojimo ir vietovės duomenis). Pranešimus apie riktą bendrinkite tik su patikimomis programomis ir žmonėmis."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Daugiau neberodyti"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Riktų ataskaitos"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Nepavyko sukurti pranešimo apie riktą failo"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"be pavadinimo"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Informacija"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Ekrano kopija"</string>
diff --git a/packages/Shell/res/values-lv/strings.xml b/packages/Shell/res/values-lv/strings.xml
index 08e25be..afa5b31 100644
--- a/packages/Shell/res/values-lv/strings.xml
+++ b/packages/Shell/res/values-lv/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Aizsargs"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Kļūdas pārskats <xliff:g id="ID">#%d</xliff:g> tiek ģenerēts"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Kļūdas pārskats <xliff:g id="ID">#%d</xliff:g> reģistrēts"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Kļūdas pārskats <xliff:g id="ID">#%d</xliff:g> izveidots; gaida ekrānuzņēmumu"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Informācijas pievienošana kļūdas pārskatam"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Lūdzu, uzgaidiet..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Velciet pa kreisi, lai kopīgotu savu kļūdu ziņojumu."</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Pieskarieties, lai kopīgotu kļūdas pārskatu."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Pieskarieties, lai kopīgotu kļūdas pārskatu bez ekrānuzņēmuma vai gaidiet ekrānuzņēmumu."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Pieskarieties, lai kopīgotu kļūdas pārskatu bez ekrānuzņēmuma vai gaidiet ekrānuzņēmumu."</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Kļūdu pārskatā ir iekļauti dati no dažādiem sistēmas žurnālfailiem, tostarp personas dati un privāta informācija. Kļūdu pārskatus ieteicams kopīgot tikai ar uzticamām lietotnēm un lietotājiem."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Rādīt šo ziņojumu nākamajā reizē"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Kļūdu pārskatos ir ietverti dati no dažādiem sistēmas žurnālfailiem, kas var ietvert datus, kurus uzskatāt par sensitīviem (piemēram, dati par lietotņu lietojumu vai atrašanās vietu). Kļūdu pārskatus ieteicams kopīgot tikai ar uzticamām lietotnēm un lietotājiem."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Vairs nerādīt"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Kļūdu ziņojumi"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Nevarēja nolasīt kļūdas pārskata failu."</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"bez nosaukuma"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalizēta informācija"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Ekrānuzņēmums"</string>
diff --git a/packages/Shell/res/values-mk-rMK/strings.xml b/packages/Shell/res/values-mk-rMK/strings.xml
index 3f879b7e..e9aa2b2 100644
--- a/packages/Shell/res/values-mk-rMK/strings.xml
+++ b/packages/Shell/res/values-mk-rMK/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Обвивка"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Се генерира извештајот за грешки <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Извештајот за грешки <xliff:g id="ID">#%d</xliff:g> е снимен"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Извештајот за грешка <xliff:g id="ID">#%d</xliff:g> е снимен. Се чека на сликата"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Се додаваат детали на извештајот за грешка"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Почекајте..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Повлечете налево за да споделите пријава за грешка"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Допрете за да го споделите извештајот за грешки"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Допрете за споделување извештај за грешки без слика од екранот или почекајте да се подготви сликата"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Допрете за споделување извештај за грешки без слика од екранот или почекајте да се подготви сликата"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Извештаите за грешка содржат податоци од разни датотеки за евиденција на системот, вклучувајќи лични и приватни информации. Извештаите за грешка споделувајте ги само со апликации и луѓе на коишто им верувате."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Прикажи ја поракава следниот пат"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Извештаите за грешка содржат податоци од разни датотеки за евиденција на системот, вклучувајќи и податоци што можеби ги сметате за чувствителни (како што се користење на апликациите и податоци за локацијата). Извештаите за грешки споделувајте ги само со апликации и луѓе во кои имате доверба."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Не покажувај повторно"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Извештаи за грешки"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Датотеката со извештај за грешка не можеше да се прочита"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"неименувани"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Детали"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Слика од екранот"</string>
diff --git a/packages/Shell/res/values-ml-rIN/strings.xml b/packages/Shell/res/values-ml-rIN/strings.xml
index 3bb715d8..5cbb3b3 100644
--- a/packages/Shell/res/values-ml-rIN/strings.xml
+++ b/packages/Shell/res/values-ml-rIN/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"ഷെൽ"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"ബഗ് റിപ്പോർട്ട് <xliff:g id="ID">#%d</xliff:g> സൃഷ്ടിക്കുന്നു"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"ബഗ് റിപ്പോർട്ട് <xliff:g id="ID">#%d</xliff:g> ക്യാപ്ചർ ചെയ്തു"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"ബഗ് റിപ്പോർട്ട് <xliff:g id="ID">#%d</xliff:g> ക്യാപ്ചർ ചെയ്തു, എന്നാൽ സ്ക്രീൻഷോട്ട് ശേഷിക്കുന്നു"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"ബഗ് റിപ്പോർട്ടിലേക്ക് വിശദാംശങ്ങൾ ചേർക്കുന്നു"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"കാത്തിരിക്കുക..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"നിങ്ങളുടെ ബഗ് റിപ്പോർട്ട് പങ്കിടുന്നതിന് ഇടത്തേയ്‌ക്ക് സ്വൈപ്പുചെയ്യുക"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"നിങ്ങളുടെ ബഗ് റിപ്പോർട്ട് പങ്കിടാൻ ടാപ്പുചെയ്യുക"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"സ്ക്രീൻഷോട്ട് കൂടാതെയോ സ്ക്രീൻഷോട്ട് പൂർത്തിയാകുന്നതിന് കാക്കാതെയോ നിങ്ങളുടെ ബഗ് റിപ്പോർട്ട് പങ്കിടാൻ ടാപ്പുചെയ്യുക"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"സ്ക്രീൻഷോട്ട് കൂടാതെയോ സ്ക്രീൻഷോട്ട് പൂർത്തിയാകുന്നതിന് കാക്കാതെയോ നിങ്ങളുടെ ബഗ് റിപ്പോർട്ട് പങ്കിടാൻ ടാപ്പുചെയ്യുക"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"വ്യക്തിഗതവും സ്വകാര്യവുമായ വിവരങ്ങൾ ഉൾപ്പെടെ, സിസ്റ്റത്തിന്റെ നിരവധി ലോഗ് ഫയലുകളിൽ നിന്നുള്ള ഡാറ്റ, ബഗ് റിപ്പോർട്ടുകളിൽ അടങ്ങിയിരിക്കുന്നു. നിങ്ങൾ വിശ്വസിക്കുന്ന അപ്ലിക്കേഷനുകൾക്കും ആളുകൾക്കും മാത്രം ബഗ് റിപ്പോർട്ടുകൾ പങ്കിടുക."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"ഈ സന്ദേശം അടുത്ത തവണ ദൃശ്യമാക്കുക"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"ബഗ് റിപ്പോർട്ടുകളിൽ സിസ്റ്റത്തിന്റെ നിരവധി ലോഗ് ഫയലുകളിൽ നിന്നുള്ള വിവരങ്ങൾ അടങ്ങിയിരിക്കുന്നു, ഇതിൽ നിങ്ങൾ രഹസ്വസ്വഭാവമുള്ളവയായി പരിഗണിക്കുന്ന വിവരങ്ങളും (ആപ്പ് ഉപയോഗ വിവരങ്ങൾ, ലൊക്കേഷൻ വിവരങ്ങൾ എന്നിവ പോലെ) ഉൾപ്പെടാം. നിങ്ങൾ വിശ്വസിക്കുന്ന ആപ്‌സിനും ആളുകൾക്കും മാത്രം ബഗ് റിപ്പോർട്ടുകൾ പങ്കിടുക."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"വീണ്ടും കാണിക്കരുത്"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"ബഗ് റിപ്പോർട്ടുകൾ"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"ബഗ് റിപ്പോർട്ട് ഫയൽ വായിക്കാനായില്ല"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"പേരില്ലാത്തവർ"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"വിശദാംശങ്ങൾ"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"സ്‌ക്രീൻഷോട്ട്"</string>
diff --git a/packages/Shell/res/values-mn-rMN/strings.xml b/packages/Shell/res/values-mn-rMN/strings.xml
index 296afab..591e542 100644
--- a/packages/Shell/res/values-mn-rMN/strings.xml
+++ b/packages/Shell/res/values-mn-rMN/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"Шел"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Програмд гарсан алдааны мэдээллийн <xliff:g id="ID">#%d</xliff:g> үүсгэгдэж байна"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Програмд гарсан алдааны мэдээллийн <xliff:g id="ID">#%d</xliff:g>-г бүртгэгдлээ"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Алдааны тайлан <xliff:g id="ID">#%d</xliff:g>-г илрүүлсэн хэдий ч дэлгэцээс авсан зураг хүлээгдэж байна"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Алдааны тайланд дэлгэрэнгүй мэдээлэл нэмж байна"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Түр хүлээнэ үү..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Өөрийн согог репортыг хуваалцахын тулд зүүн шудрана уу"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Програмд гарсан алдааны мэдээллээ хуваалцах бол дарна уу"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Алдааны тайлангаа дэлгэцээс авсан зураггүйгээр хуваалцах бол дарж, эсвэл дэлгэцээс авсан зургийг бэлэн болтол нь хүлээнэ үү"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Алдааны тайлангаа дэлгэцээс авсан зураггүйгээр хуваалцах бол дарж, эсвэл дэлгэцээс авсан зургийг бэлэн болтол нь хүлээнэ үү"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Алдааны репорт нь хувийн болон нууц мэдээлэл зэргийг агуулсан системийн төрөл бүрийн лог файлын датаг агуулна. Алдааны репортыг зөвхөн итгэлтэй апп болон хүмүүст хуваалцана уу."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Энэ мессежийг дараагийн удаа харуулах"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Алдааны тайланд системийн төрөл бүрийн лог файлын өгөгдөл агуулагдах бөгөөд үүнд таны хувийн өгөгдөл (апп-н хэрэглээ болон байршлын өгөгдөл гэх мэт) багтана. Та алдааны тайланг зөвхөн итгэдэг хүмүүс болон апп-тай хуваалцана уу."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Дахиж бүү харуул"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Гэмтлийн тухай тайлан"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Алдааны тайлангийн файлыг уншиж чадахгүй байна"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"Алдааны тайлангийн дэлгэрэнгүй мэдээллийг zip файлд нэмж чадсангүй"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"нэр байхгүй"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Дэлгэрэнгүй"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Дэлгэцийн зураг"</string>
diff --git a/packages/Shell/res/values-mr-rIN/strings.xml b/packages/Shell/res/values-mr-rIN/strings.xml
index 8eb5686..1bf7719 100644
--- a/packages/Shell/res/values-mr-rIN/strings.xml
+++ b/packages/Shell/res/values-mr-rIN/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"शेल"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"दोष अहवाल <xliff:g id="ID">#%d</xliff:g> तयार केला जात आहे"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"दोष अहवाल <xliff:g id="ID">#%d</xliff:g> कॅप्चर केला"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"दोष अहवाल <xliff:g id="ID">#%d</xliff:g> कॅप्चर केला परंतु स्क्रीनशॉट प्रलंबित आहे"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"दोष अहवालामध्‍ये तपशील जोडत आहे"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"कृपया प्रतीक्षा करा..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"आपला दोष अहवाल सामायिक करण्यासाठी डावीकडे स्वाइप करा"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"आपला दोष अहवाल सामायिक करण्यासाठी टॅप करा"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"स्क्रीनशॉट शिवाय आपला दोष अहवाल सामायिक करण्यासाठी टॅप करा किंवा समाप्त करण्यासाठी स्क्रीनशॉटची प्रतीक्षा करा"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"स्क्रीनशॉट शिवाय आपला दोष अहवाल सामायिक करण्यासाठी टॅप करा किंवा समाप्त करण्यासाठी स्क्रीनशॉटची प्रतीक्षा करा"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"दोष अहवालांमध्‍ये वैयक्तिक आणि खाजगी माहितीसह, सिस्‍टमच्‍या अनेक लॉग फायलींमधील डेटा असतो. केवळ आपला विश्वास असलेल्‍या अ‍ॅप्‍स आणि लोकांसह दोष अहवाल सामायिक करा."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"पुढील वेळी हा संदेश दर्शवा"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"दोष अहवालांमध्ये आपण संवेदनशील (अॅप-वापर आणि स्थान डेटा यासारखा) डेटा म्हणून विचार करता त्या डेटाच्या समावेशासह सिस्टीमच्या विविध लॉग फायलींमधील डेटा असतो. ज्या लोकांवर आणि अॅपवर आपला विश्वास आहे केवळ त्यांच्यासह हा दोष अहवाल सामायिक करा."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"पुन्हा दर्शवू नका"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"दोष अहवाल"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"दोष अहवाल फाईल वाचणे शक्य झाले नाही"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"अनामित"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"तपशील"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"स्क्रीनशॉट"</string>
diff --git a/packages/Shell/res/values-ms-rMY/strings.xml b/packages/Shell/res/values-ms-rMY/strings.xml
index 46bc1a9..a51f9d8 100644
--- a/packages/Shell/res/values-ms-rMY/strings.xml
+++ b/packages/Shell/res/values-ms-rMY/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Laporan pepijat <xliff:g id="ID">#%d</xliff:g> sedang dijana"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Laporan pepijat <xliff:g id="ID">#%d</xliff:g> telah ditangkap"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Laporan pepijat <xliff:g id="ID">#%d</xliff:g> ditangkap, menunggu tngkpn skrin"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Menambahkan butiran pada laporan pepijat"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Sila tunggu…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Leret ke kiri untuk berkongsi laporan pepijat anda"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Ketik untuk berkongsi laporan pepijat anda"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Ketik untuk berkongsi laporan pepijat anda tanpa tangkapan skrin atau tunggu tangkapan skrin selesai"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Ketik untuk berkongsi laporan pepijat anda tanpa tangkapan skrin atau tunggu tangkapan skrin selesai"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Laporan pepijat mengandungi data dari pelbagai fail log sistem, termasuk maklumat peribadi dan sulit. Kongsikan laporan pepijat hanya dengan apl dan orang yang anda percayai."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Tunjukkan mesej ini pada masa akan datang"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Laporan pepijat mengandungi data daripada pelbagai fail log sistem dan mungkin termasuk data yang anda anggap sensitif (seperti data penggunaan apl dan lokasi). Kongsi laporan pepijat dengan orang dan apl yang anda percayai sahaja."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Jangan tunjukkan lagi"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Laporan pepijat"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Fail laporan pepijat tidak dapat dibaca"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"tidak bernama"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Butiran"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Tangkapan skrin"</string>
diff --git a/packages/Shell/res/values-my-rMM/strings.xml b/packages/Shell/res/values-my-rMM/strings.xml
index 6f02e70..c9486c9 100644
--- a/packages/Shell/res/values-my-rMM/strings.xml
+++ b/packages/Shell/res/values-my-rMM/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"အခွံ"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"ချွတ်ယွင်းမှုအစီရင်ခံချက် <xliff:g id="ID">#%d</xliff:g> ကိုထုတ်နေပါသည်"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"ချွတ်ယွင်းမှုအစီရင်ခံချက် <xliff:g id="ID">#%d</xliff:g> ကိုရယူထားပြီးပါပြီ"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"ချွတ်ယွင်းချက် အစီရင်ခံစာ <xliff:g id="ID">#%d</xliff:g> ဖမ်းယူထားသည် သို့သော် ဖန်သားပြင်ဓာတ်ပုံမှတ်တမ်းတင်ခြင်း စောင့်ဆိုင်းနေသည်"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"ချွတ်ယွင်းချက်အစီရင်ခံချက်သို့ အသေးစိတ်များပေါင်းထည့်ရန်"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"ခေတ္တစောင့်ပါ..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"သင်၏ ဘာဂ် အစီရင်ခံစာကို မျှပေးရန် ဘယ်ဘက်သို့ ပွတ်ဆွဲရန်"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"သင့်ချွတ်ယွင်းမှုအစီရင်ခံချက်ကို မျှဝေရန် တို့ပါ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"ချွတ်ယွင်းချက်အစီရင်ခံစာကို ဖန်သားပြင်ဓာတ်ပုံမှတ်တမ်းမပါဘဲ မျှဝေရန် တို့ပါ သို့မဟုတ် ဖန်သားပြင်ဓာတ်ပုံမှတ်တမ်းတင်ခြင်း ပြီးဆုံးသည်အထိ စောင့်ပါ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"ချွတ်ယွင်းချက်အစီရင်ခံစာကို ဖန်သားပြင်ဓာတ်ပုံမှတ်တမ်းမပါဘဲ မျှဝေရန် တို့ပါ သို့မဟုတ် ဖန်သားပြင်ဓာတ်ပုံမှတ်တမ်းတင်ခြင်း ပြီးဆုံးသည်အထိ စောင့်ပါ"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"အမှားအယွင်း မှတ်တမ်းမှာ ပါရှိသော အချက်အလက်များမှာ ကိုယ်ရေးကိုယ်တာ နဲ့ လုံခြုံရေး အချက်အလက်များပါဝင်သော စနစ်မှ ပြုလုပ်မှု မှတ်တမ်းများ ဖြစ်ပါသည်၊ အမှားအယွင်း မှတ်တမ်းများကို ယုံကြည်ရသော အပလီကေးရှင်းများနဲ့ လူများကိုသာ ပေးဝေပြသမှု လုပ်ပါရန်။"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"ဤစာတန်းကို နောက်တစ်ခါတွင် ပြရန်"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"ချွတ်ယွင်းချက်အစီရင်ခံစာများတွင် သင့်အတွက် အရေးကြီးသည့် ဒေတာများ (အက်ပ်အသုံးပြုမှုနှင့် တည်နေရာအချက်အလက် ကဲ့သို့) ပါဝင်သည့် စနစ်၏မှတ်တမ်းဖိုင်မျိုးစုံပါဝင်ပါသည်။ ချွတ်ယွင်းချက်အစီရင်ခံစာများကို သင်ယုံကြည်စိတ်ချရသည့်လူများ၊ အက်ပ်များနှင့်သာ မျှဝေပါ။"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"နောက်ထပ်မပြပါနှင့်"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"ချို့ယွင်းမှု အစီရင်ခံစာများ"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"ချွတ်ယွင်းချက် အစီရင်ခံစာကို ဖတ်၍မရပါ"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"ဇစ်ဖိုင်သို့ ချွတ်ယွင်းချက် အစီရင်ခံစာအသေးစိတ် အချက်အလက်များကို ထည့်၍မရပါ"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"အမည်မဲ့"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"အသေးစိတ်များ"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"မျက်နှာပြင် လျှပ်တစ်ပြက်ပုံ"</string>
diff --git a/packages/Shell/res/values-nb/strings.xml b/packages/Shell/res/values-nb/strings.xml
index 0605e0e..aca68e0 100644
--- a/packages/Shell/res/values-nb/strings.xml
+++ b/packages/Shell/res/values-nb/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Kommandoliste"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Feilrapporten <xliff:g id="ID">#%d</xliff:g> blir generert"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Feilrapporten <xliff:g id="ID">#%d</xliff:g> er fullført"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Feilrapporten <xliff:g id="ID">#%d</xliff:g> er hentet. Venter på skjermdumpen"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Legger til detaljer i feilrapporten"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Vent litt"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Sveip til venstre for å dele feilrapporten din"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Trykk for å dele feilrapporten"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Trykk for å dele feilrapporten uten noen skjermdump, eller vent til skjermdumpen er klar"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Trykk for å dele feilrapporten uten noen skjermdump, eller vent til skjermdumpen er klar"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Feilrapporter inkluderer data fra systemets forskjellige loggfiler. Dette omfatter personlig og privat informasjon. Du bør bare dele feilrapporter med apper og folk du stoler på."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Vis denne meldingen neste gang"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Feilrapporter inneholder data fra systemets forskjellige loggfiler. Dette kan inkludere data du ser på som sensitiv (for eksempel appbruk og posisjonsdata). Du bør bare dele feilrapporter med folk og apper du stoler på."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ikke vis igjen"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Feilrapporter"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Feilrapportfilen kunne ikke leses"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"uten navn"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detaljer"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Skjermdump"</string>
diff --git a/packages/Shell/res/values-ne-rNP/strings.xml b/packages/Shell/res/values-ne-rNP/strings.xml
index 906d824..4ffa422 100644
--- a/packages/Shell/res/values-ne-rNP/strings.xml
+++ b/packages/Shell/res/values-ne-rNP/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"सेल"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"बग रिपोर्ट <xliff:g id="ID">#%d</xliff:g>लाई निकालिदैछ"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"बग रिपोर्ट <xliff:g id="ID">#%d</xliff:g>लाई कैद गरियो"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"बग रिपोर्ट <xliff:g id="ID">#%d</xliff:g> लाई क्याप्चर गरियो तर स्क्रिनसट बाँकी रहेको छ"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"बग रिपोर्टमा विवरणहरू थप्दै"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"कृपया प्रतीक्षा गर्नुहोला..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"तपाईँको बग रिपोर्ट साझेदारी गर्न बायाँ स्वाइप गर्नुहोस्"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"तपाईंको बग रिपोर्टलाई साझेदारी गर्न ट्याप गर्नुहोस्"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"तपाईँको बग रिपोर्टलाई स्क्रिनसट बिना साझेदारी गर्नका लागि ट्याप गर्नुहोस् वा स्क्रिनसट लिने प्रक्रिया पूरा हुन प्रतीक्षा गर्नुहोस्"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"तपाईँको बग रिपोर्टलाई स्क्रिनसट बिना साझेदारी गर्नका लागि ट्याप गर्नुहोस् वा स्क्रिनसट लिने प्रक्रिया पूरा हुन प्रतीक्षा गर्नुहोस्"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"बग रिपोर्टहरूमा प्रणालीका विभिन्न लग फाइलहरूबाट व्यक्तिगत तथा नीजि सूचनासहितको डेटा रहन्छ।  बग रिपोर्टहरू अनुप्रयोगहरू र तपाईँले विश्वास गरेका व्यक्तिहरूसँग मात्र साझेदारी गर्नुहोस्।"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"यो सन्देश अर्को पटक देखाउनुहोस्"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"बग रिपोर्टहरूमा प्रणालीका विभिन्न लग फाइलहरूको डेटा हुन्छ जसमा तपाईँले संवेदनशील मानेको डेटा समावेश हुन सक्छ (जस्तै अनुप्रयोगको प्रयोग र स्थान सम्बन्धी डेटा)। तपाईँले विश्वास गर्ने व्यक्ति र अनुप्रयोगहरूसँग मात्र बग रिपोर्टहरूलाई साझेदारी गर्नुहोस्।"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"फेरि नदेखाउनुहोस्"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"बग रिपोर्टहरू"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"बग रिपोर्ट फाइल पढ्न सकिएन"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"बग रिपोर्ट सम्बन्धी विवरणहरूलाई जिप फाइलमा थप्न सकिएन"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"(नामविहीन)"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"विवरण"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"स्क्रिनशट"</string>
diff --git a/packages/Shell/res/values-nl/strings.xml b/packages/Shell/res/values-nl/strings.xml
index 3022691..6461e58 100644
--- a/packages/Shell/res/values-nl/strings.xml
+++ b/packages/Shell/res/values-nl/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Bugrapport <xliff:g id="ID">#%d</xliff:g> wordt gegenereerd"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Bugrapport <xliff:g id="ID">#%d</xliff:g> is vastgelegd"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Bugrapport <xliff:g id="ID">#%d</xliff:g> vastgelegd, screenshot in behandeling"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Details toevoegen aan het bugrapport"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Even geduld…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Veeg naar links om je bugmelding te delen"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Tik om je bugrapport te delen"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Tik om je bugrapport te delen zonder screenshot of wacht tot het screenshot is voltooid"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Tik om je bugrapport te delen zonder screenshot of wacht tot het screenshot is voltooid"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Foutenrapporten bevatten gegevens uit de verschillende logbestanden van het systeem, waaronder persoonlijke en privégegevens. Deel foutenrapporten alleen met apps en mensen die u vertrouwt."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Dit bericht de volgende keer weergeven"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Bugrapporten bevatten gegevens uit de verschillende logbestanden van het systeem, die gegevens kunnen bevatten die je als gevoelig beschouwt (zoals gegevens met betrekking tot app-gebruik en locatie). Deel bugrapporten alleen met mensen en apps die je vertrouwt."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Niet opnieuw weergeven"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Foutenrapporten"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Bestand met bugrapport kan niet worden gelezen"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"naamloos"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Details"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Screenshot"</string>
diff --git a/packages/Shell/res/values-pa-rIN/strings.xml b/packages/Shell/res/values-pa-rIN/strings.xml
index d44daf7..3c93509 100644
--- a/packages/Shell/res/values-pa-rIN/strings.xml
+++ b/packages/Shell/res/values-pa-rIN/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"ਸ਼ੈਲ"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"ਬੱਗ ਰਿਪੋਰਟ <xliff:g id="ID">#%d</xliff:g> ਸਿਰਜੀ ਜਾ ਰਹੀ ਹੈ"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"ਬੱਗ ਰਿਪੋਰਟ <xliff:g id="ID">#%d</xliff:g> ਕੈਪਚਰ ਕੀਤੀ ਗਈ"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"ਬੱਗ ਰਿਪੋਰਟ <xliff:g id="ID">#%d</xliff:g> ਕੈਪਚਰ ਕੀਤੀ ਗਈ ਪਰ ਸਕ੍ਰੀਨਸ਼ਾਟ ਅਧੂਰਾ ਹੈ"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"ਬੱਗ ਰਿਪੋਰਟ ਵਿੱਚ ਵੇਰਵਿਆਂ ਨੂੰ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"ਕਿਰਪਾ ਕਰਕੇ ਉਡੀਕ ਕਰੋ..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"ਤੁਹਾਡੀ ਬਗ ਰਿਪੋਰਟ ਸ਼ੇਅਰ ਕਰਨ ਲਈ ਖੱਬੇ ਪਾਸੇ ਸਵਾਈਪ ਕਰੋ"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"ਆਪਣੀ ਬੱਗ ਰਿਪੋਰਟ ਸਾਂਝੀ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"ਸਕ੍ਰੀਨਸ਼ਾਟ ਦੇ ਬਿਨਾਂ ਆਪਣੀ ਬੱਗ ਰਿਪੋਰਟ ਨੂੰ ਸਾਂਝੀ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ ਜਾਂ ਸਕ੍ਰੀਨਸ਼ਾਟ ਦੇ ਪੂਰੇ ਹੋਣ ਦੀ ਉਡੀਕ ਕਰੋ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"ਸਕ੍ਰੀਨਸ਼ਾਟ ਦੇ ਬਿਨਾਂ ਆਪਣੀ ਬੱਗ ਰਿਪੋਰਟ ਨੂੰ ਸਾਂਝੀ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ ਜਾਂ ਸਕ੍ਰੀਨਸ਼ਾਟ ਦੇ ਪੂਰੇ ਹੋਣ ਦੀ ਉਡੀਕ ਕਰੋ"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"ਬਗ ਰਿਪੋਰਟਾਂ ਵਿੱਚ ਸਿਸਟਮ ਦੀਆਂ ਭਿੰਨ ਲੌਗ ਫਾਈਲਾਂ ਦਾ ਡਾਟਾ ਹੁੰਦਾ ਹੈ, ਨਿੱਜੀ ਅਤੇ ਪ੍ਰਾਈਵੇਟ ਜਾਣਕਾਰੀ ਸਮੇਤ। ਕੇਵਲ ਉਹਨਾਂ ਐਪਸ ਅਤੇ ਲੋਕਾਂ ਨਾਲ ਬਗ ਰਿਪੋਰਟਾਂ ਸ਼ੇਅਰ ਕਰੋ, ਜਿਹਨਾਂ ਤੇ ਤੁਸੀਂ ਭਰੋਸਾ ਕਰਦੇ ਹੋ।"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"ਅਗਲੀ ਵਾਰ ਇਹ ਸੁਨੇਹਾ ਦਿਖਾਓ"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"ਬੱਗ ਰਿਪੋਰਟਾਂ ਵਿੱਚ ਸਿਸਟਮ ਦੀਆਂ ਵੱਖ-ਵੱਖ ਲੌਗ ਫ਼ਾਈਲਾਂ ਦਾ ਡੈਟਾ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਉਹ ਡੈਟਾ ਸ਼ਾਮਲ ਹੋ ਸਕਦਾ ਹੈ ਜਿਸ ਨੂੰ ਤੁਸੀਂ ਸੰਵੇਦਨਸ਼ੀਲ ਮੰਨਦੇ ਹੋ (ਜਿਵੇਂ ਕਿ ਐਪ-ਵਰਤੋਂ ਅਤੇ ਟਿਕਾਣਾ ਡੈਟਾ)। ਬੱਗ ਰਿਪੋਰਟਾਂ ਨੂੰ ਸਿਰਫ਼ ਆਪਣੇ ਭਰੋਸੇਯੋਗ ਲੋਕਾਂ ਅਤੇ ਐਪਾਂ ਨਾਲ ਸਾਂਝਾ ਕਰੋ।"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"ਦੁਬਾਰਾ ਨਾ ਵਿਖਾਓ"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"ਬਗ ਰਿਪੋਰਟਾਂ"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"ਬਗ ਰਿਪੋਰਟ ਫ਼ਾਈਲ ਪੜ੍ਹੀ ਨਹੀਂ ਜਾ ਸਕੀ"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"ਬਿਨਾਂ-ਨਾਮ"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"ਵੇਰਵੇ"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"ਸਕ੍ਰੀਨਸ਼ਾਟ"</string>
diff --git a/packages/Shell/res/values-pl/strings.xml b/packages/Shell/res/values-pl/strings.xml
index b4977a4..4c62c9c 100644
--- a/packages/Shell/res/values-pl/strings.xml
+++ b/packages/Shell/res/values-pl/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Powłoka"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Generuję raport o błędzie <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Raport o błędzie <xliff:g id="ID">#%d</xliff:g> został zapisany"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Raport <xliff:g id="ID">#%d</xliff:g> zapisany. Zrzut nie jest jeszcze gotowy"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Dodaję szczegóły do raportu o błędzie"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Czekaj..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Przesuń palcem w lewo, by udostępnić swoje zgłoszenie błędu"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Kliknij, by udostępnić raport o błędzie"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Kliknij, by udostępnić raport o błędzie bez zrzutu ekranu, lub poczekaj, aż zostanie on wygenerowany"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Kliknij, by udostępnić raport o błędzie bez zrzutu ekranu, lub poczekaj, aż zostanie on wygenerowany"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Raporty o błędach zawierają dane z różnych plików dzienników systemu, w tym dane osobowe i prywatne. Udostępniaj je tylko aplikacjom i osobom, którym ufasz."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Pokaż ten komunikat następnym razem"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Raporty o błędach zawierają dane z różnych plików dzienników w systemie i mogą wśród nich być informacje poufne (np. o lokalizacji czy użytkowaniu aplikacji). Udostępniaj je tylko osobom i aplikacjom, którym ufasz."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Nie pokazuj ponownie"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Raporty o błędach"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Nie można odczytać raportu o błędzie"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"bez nazwy"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Szczegóły"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Zrzut ekranu"</string>
diff --git a/packages/Shell/res/values-pt-rBR/strings.xml b/packages/Shell/res/values-pt-rBR/strings.xml
index 2306c39..8d813a5 100644
--- a/packages/Shell/res/values-pt-rBR/strings.xml
+++ b/packages/Shell/res/values-pt-rBR/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"O relatório do bug <xliff:g id="ID">#%d</xliff:g> está sendo gerado"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Relatório do bug <xliff:g id="ID">#%d</xliff:g> capturado"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Relatório do bug <xliff:g id="ID">#%d</xliff:g> capturado, captura pendente"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Adicionando detalhes ao relatório do bug"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Aguarde…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Deslize para a esquerda para compartilhar seu relatório de bugs"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Toque para compartilhar seu relatório do bug"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Toque para compartilhar seu relatório de bug sem captura de tela ou aguarde a conclusão"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Toque para compartilhar seu relatório de bug sem captura de tela ou aguarde a conclusão"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Os relatórios de bugs contêm dados de diversos arquivos de registro do sistema, inclusive informações pessoais e particulares. Compartilhe relatórios de bugs somente com apps e pessoas nos quais você confia."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Mostrar esta mensagem da próxima vez"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Os relatórios de bugs contêm dados dos diversos arquivos de registros do sistema, que podem incluir dados que você considera confidenciais (como dados de uso de apps e de local). Compartilhe relatórios de bugs somente com pessoas e apps nos quais você confia."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Não mostrar novamente"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Relatórios de bugs"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Não foi possível ler o arquivo de relatório de bug"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"sem nome"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalhes"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Capturas de tela"</string>
diff --git a/packages/Shell/res/values-pt-rPT/strings.xml b/packages/Shell/res/values-pt-rPT/strings.xml
index 7daed8b..346ed3a 100644
--- a/packages/Shell/res/values-pt-rPT/strings.xml
+++ b/packages/Shell/res/values-pt-rPT/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"O relatório de erro <xliff:g id="ID">#%d</xliff:g> está a ser criado"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Relatório de erro <xliff:g id="ID">#%d</xliff:g> criado"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Rel. de erro <xliff:g id="ID">#%d</xliff:g> capturado, captura de ecrã pendente"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"A adicionar detalhes ao relatório de erro"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Aguarde..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Deslizar rapidamente para a esquerda para partilhar o seu relatório de erros"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Toque para partilhar o relatório de erro"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Toque para partilhar o relatório de erro sem uma captura de ecrã ou aguarde a conclusão da mesma"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Toque para partilhar o relatório de erro sem uma captura de ecrã ou aguarde a conclusão da mesma"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Os relatórios de erros incluem dados de vários ficheiros de registo do sistema, nomeadamente informações pessoais e privadas. Partilhe relatórios de erros apenas com aplicações e pessoas fidedignas."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Mostrar esta mensagem da próxima vez"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Os relatórios de erros contêm dados de vários ficheiros de registo do sistema, que podem incluir dados que considere confidenciais (tais como dados de utilização de aplicações e de localização). Partilhe os relatórios de erros apenas com aplicações fidedignas e pessoas em quem confia."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Não mostrar de novo"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Relatórios de erros"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Não foi possível ler o ficheiro de relatório de erro"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"sem nome"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalhes"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Captura de ecrã"</string>
diff --git a/packages/Shell/res/values-pt/strings.xml b/packages/Shell/res/values-pt/strings.xml
index 2306c39..8d813a5 100644
--- a/packages/Shell/res/values-pt/strings.xml
+++ b/packages/Shell/res/values-pt/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"O relatório do bug <xliff:g id="ID">#%d</xliff:g> está sendo gerado"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Relatório do bug <xliff:g id="ID">#%d</xliff:g> capturado"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Relatório do bug <xliff:g id="ID">#%d</xliff:g> capturado, captura pendente"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Adicionando detalhes ao relatório do bug"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Aguarde…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Deslize para a esquerda para compartilhar seu relatório de bugs"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Toque para compartilhar seu relatório do bug"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Toque para compartilhar seu relatório de bug sem captura de tela ou aguarde a conclusão"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Toque para compartilhar seu relatório de bug sem captura de tela ou aguarde a conclusão"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Os relatórios de bugs contêm dados de diversos arquivos de registro do sistema, inclusive informações pessoais e particulares. Compartilhe relatórios de bugs somente com apps e pessoas nos quais você confia."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Mostrar esta mensagem da próxima vez"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Os relatórios de bugs contêm dados dos diversos arquivos de registros do sistema, que podem incluir dados que você considera confidenciais (como dados de uso de apps e de local). Compartilhe relatórios de bugs somente com pessoas e apps nos quais você confia."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Não mostrar novamente"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Relatórios de bugs"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Não foi possível ler o arquivo de relatório de bug"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"sem nome"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalhes"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Capturas de tela"</string>
diff --git a/packages/Shell/res/values-ro/strings.xml b/packages/Shell/res/values-ro/strings.xml
index 9529ade..db39c60 100644
--- a/packages/Shell/res/values-ro/strings.xml
+++ b/packages/Shell/res/values-ro/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Raportul de eroare <xliff:g id="ID">#%d</xliff:g> se generează"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Raportul de eroare <xliff:g id="ID">#%d</xliff:g> a fost creat"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Raport eroare <xliff:g id="ID">#%d</xliff:g> creat, captură ecran în așteptare"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Se adaugă detaliile la raportul de eroare"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Așteptați…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Glisați la stânga pentru a trimite raportul de erori"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Atingeți pentru a trimite raportul de eroare"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Atingeți ca să trimiteți raportul de eroare fără captură de ecran sau așteptați finalizarea acesteia"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Atingeți ca să trimiteți raportul de eroare fără captură de ecran sau așteptați finalizarea acesteia"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Rapoartele despre erori conțin date din diferite fișiere de jurnal ale sistemului, inclusiv informații private și personale. Permiteți accesul la rapoartele despre erori numai aplicațiilor și persoanelor în care aveți încredere."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Afișați acest mesaj data viitoare"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Rapoartele despre erori conțin date din diferite fișiere de jurnal ale sistemului. Acestea pot include date pe care le puteți considera sensibile (cum ar fi utilizarea aplicației și date despre locație). Permiteți accesul la rapoartele despre erori numai aplicațiilor și persoanelor în care aveți încredere."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Nu mai afișa"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Rapoarte de erori"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Fișierul cu raportul de eroare nu a putut fi citit"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"fără nume"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detalii"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Captură de ecran"</string>
diff --git a/packages/Shell/res/values-ru/strings.xml b/packages/Shell/res/values-ru/strings.xml
index 4aafbba..3a6196f 100644
--- a/packages/Shell/res/values-ru/strings.xml
+++ b/packages/Shell/res/values-ru/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Оболочка"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Создание отчета об ошибке <xliff:g id="ID">#%d</xliff:g>…"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Отчет об ошибке <xliff:g id="ID">#%d</xliff:g> сохранен"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Отчет об ошибке (<xliff:g id="ID">#%d</xliff:g>) готов, ожидается скриншот"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Добавление данных в отчет об ошибке"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Подождите…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Проведите влево, чтобы отправить отчет"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Нажмите, чтобы отправить отчет об ошибке."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Нажмите, чтобы отправить отчет об ошибке сразу, или подождите, пока будет сохранен скриншот."</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Нажмите, чтобы отправить отчет об ошибке сразу, или подождите, пока будет сохранен скриншот."</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Отчеты об ошибках содержат данные различных системных журналов и могут включать личную информацию. Рекомендуем открывать к ним доступ только лицам и приложениям, заслуживающим доверие."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Показать это сообщение в следующий раз"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Отчеты об ошибках содержат данные различных системных журналов и могут включать конфиденциальную информацию (например, данные о местоположении). Открывайте к ним доступ только надежным пользователям и приложениям."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Больше не показывать"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Отчеты об ошибках"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Не удалось открыть отчет об ошибке"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"без названия"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Детали"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Скриншоты"</string>
diff --git a/packages/Shell/res/values-si-rLK/strings.xml b/packages/Shell/res/values-si-rLK/strings.xml
index 1ea7586..0b1d478 100644
--- a/packages/Shell/res/values-si-rLK/strings.xml
+++ b/packages/Shell/res/values-si-rLK/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"ෂෙල්"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"දෝෂ වාර්තා <xliff:g id="ID">#%d</xliff:g> ජනනය කරමින් පවතී"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"දෝෂ වාර්තා <xliff:g id="ID">#%d</xliff:g> ග්‍රහණය කර ගන්නා ලදී"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"දෝෂ වාර්තාව <xliff:g id="ID">#%d</xliff:g> ග්‍රහණය කළ නමුත් තිර රුව පොරොත්තුව ඇත"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"දෝෂ වාර්තාව වෙත විස්තර එක් කිරීම"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"කරුණාකර රැඳී සිටින්න..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"ඔබගේ දෝෂ වාර්තාව බෙදාගැනීමට වමට ස්වයිප් කරන්න"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"ඔබගේ දෝෂ වාර්තාව බෙදා ගැනීමට තට්ටු කරන්න"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"තිර රුවක් රහිතව ඔබගේ දෝෂ වාර්තාව බෙදා ගැනීමට තට්ටු කරන්න නැතහොත් තිර රුව ගැනීම අවසන් වන තෙක් රැඳෙන්න"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"තිර රුවක් රහිතව ඔබගේ දෝෂ වාර්තාව බෙදා ගැනීමට තට්ටු කරන්න නැතහොත් තිර රුව ගැනීම අවසන් වන තෙක් රැඳෙන්න"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"පුද්ගලික සහ පෞද්ගලික තොරතුරු ඇතුළත්ව පද්ධතියේ විවිධ ලොග් ගොනු වල දත්ත දෝෂ වාර්තාවේ අඩංගු වේ. ඔබට විශ්වාසවන්ත යෙදුම් සහ පුද්ගලයින් සමඟ පමණක් දෝෂ වාර්තා බෙදා ගන්න."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"ඊළඟ වෙලාවේ මෙම පණිවිඩය පෙන්වන්න"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"දෝෂ වාර්තාවල පද්ධතියේ විවිධ ලොග ගොනු වෙතින් වන දත්ත අඩංගු අතර, ඒවායෙහි ඔබ සංවේදී ලෙස සලකන දත්ත (යෙදුම් භාවිතය සහ ස්ථාන දත්ත වැනි) අඩංගු විය හැකිය. ඔබ විශ්වාස කරන පුද්ගලයන් සහ යෙදුම් සමග පමණක් දෝෂ වාර්තා බෙදා ගන්න."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"නැවත නොපෙන්වන්න"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"දෝෂ වාර්තා"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"දෝෂ වාර්තා ගොනුව කියවීමට නොහැකි විය"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"zip ගොනුව වෙත දෝෂ වාර්තා විස්තර එක් කිරීමට නොහැකි විය"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"නම් නොකළ"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"විස්තර"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"තිර රුව"</string>
diff --git a/packages/Shell/res/values-sk/strings.xml b/packages/Shell/res/values-sk/strings.xml
index 7a78c43..b8ecf77 100644
--- a/packages/Shell/res/values-sk/strings.xml
+++ b/packages/Shell/res/values-sk/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Prostredie"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Generuje sa hlásenie chyby <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Hlásenie chyby <xliff:g id="ID">#%d</xliff:g> bolo zaznamenané"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Chyba <xliff:g id="ID">#%d</xliff:g> bola zaznamenaná, čaká sa na snímku obrazovky"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Pridanie podrobností o hlásení chyby"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Čakajte prosím…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Ak chcete hlásenie o chybe zdieľať, prejdite prstom doľava."</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Hlásenie chyby môžete zdieľať klepnutím"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Klepnutím zdieľajte hlásenie chyby bez snímky obrazovky alebo počkajte na dokončenie snímky obrazovky"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Klepnutím zdieľajte hlásenie chyby bez snímky obrazovky alebo počkajte na dokončenie snímky obrazovky"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Správy o chybách obsahujú údaje z rôznych súborov denníkov systému vrátane osobných a súkromných informácií. Zdieľajte ich iba s dôveryhodnými aplikáciami a ľuďmi."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Zobraziť túto správu nabudúce"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Hlásenia chýb obsahujú údaje z rôznych súborov denníkov systému, ktoré môžu zahŕňať údaje považované za citlivé (napr. údaje o využití aplikácie a polohe). Zdieľajte ich preto iba s dôveryhodnými ľuďmi a aplikáciami."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Nabudúce nezobrazovať"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Hlásenia chýb"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Súbor s hlásením chyby sa nepodarilo prečítať"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"bez názvu"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Podrobnosti"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Snímka obrazovky"</string>
diff --git a/packages/Shell/res/values-sl/strings.xml b/packages/Shell/res/values-sl/strings.xml
index fdf3446..689752b 100644
--- a/packages/Shell/res/values-sl/strings.xml
+++ b/packages/Shell/res/values-sl/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Lupina"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Poročilo o napaki <xliff:g id="ID">#%d</xliff:g> je v izdelavi"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Poročilo o napaki <xliff:g id="ID">#%d</xliff:g> zajeto"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Poroč. o napakah <xliff:g id="ID">#%d</xliff:g> zajeto, posnetek zaslona nastaja"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Dodajanje podrobnosti v poročilo o napakah"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Počakajte ..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Povlecite v levo, če želite poslati sporočilo o napaki"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Dotaknite se, če želite poročilo o napaki dati v skupno rabo"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Dotaknite se za pošiljanje poročila o napakah brez posnetka zaslona ali počakajte, da se ta dokonča"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Dotaknite se za pošiljanje poročila o napakah brez posnetka zaslona ali počakajte, da se ta dokonča"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Poročila o napakah vsebujejo podatke iz različnih dnevniških datotek sistema, vključno z osebnimi in zasebnimi podatki. Poročila o napakah delite samo z aplikacijami in ljudmi, ki jim zaupate."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Pokaži to sporočilo naslednjič"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Poročila o napakah vsebujejo podatke iz različnih dnevniških datotek sistema in morda vključujejo podatke, ki so za vas občutljivi (na primer podatki o uporabi aplikacij in podatki o lokaciji). Poročila o napakah delite samo z ljudmi in aplikacijami, ki jim zaupate."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Tega ne prikaži več"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Poročila o napakah"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Datoteke s poročilom o napakah ni bilo mogoče prebrati"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"neimenovano"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Podrobnosti"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Posnetek zaslona"</string>
diff --git a/packages/Shell/res/values-sq-rAL/strings.xml b/packages/Shell/res/values-sq-rAL/strings.xml
index f43ce9f..ed09f53 100644
--- a/packages/Shell/res/values-sq-rAL/strings.xml
+++ b/packages/Shell/res/values-sq-rAL/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Guaska"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Raporti i defekteve në kod <xliff:g id="ID">#%d</xliff:g> po krijohet"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Raporti i defekteve në kod <xliff:g id="ID">#%d</xliff:g> u regjistrua"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Raporti i defekteve në kod <xliff:g id="ID">#%d</xliff:g> u regjistrua, por pamja e çastit është në pritje"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Po shtohen detajet te raporti i defekteve në kod"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Qëndro në pritje..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Rrëshqit majtas për të ndarë raportin e defektit në kod"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Trokit për të ndarë raportin e defekteve në kod"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Trokit për të ndarë raportin e defekteve në kod pa një pamje çasti ose prit që pamja e çastit të përfundojë"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Trokit për të ndarë raportin e defekteve në kod pa një pamje çasti ose prit që pamja e çastit të përfundojë"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Raportet e gabimeve përmbajnë të dhëna nga skedarë të ndryshëm ditarësh sistemi, përfshi informacione personale dhe private. Shpërndaji publikisht raportet e gabimeve vetëm me aplikacionet dhe personat që iu beson."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Tregoje këtë mesazh herën tjetër"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Raportet e gabimeve përmbajnë të dhëna nga skedarë të ndryshëm ditarësh sistemi, që mund të përfshijnë të dhëna që ti i konsideron delikate (të tilla si përdorimi i aplikacioneve dhe të dhënat e vendndodhjes). Ndaji raportet e gabimeve vetëm me aplikacionet dhe personat te të cilët ke besim."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Mos e shfaq përsëri"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Raportet e gabimeve"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Skedari i raportimit të defektit në kod nuk mund të lexohej."</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"e paemërtuar"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Detajet"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Pamja e ekranit"</string>
diff --git a/packages/Shell/res/values-sr/strings.xml b/packages/Shell/res/values-sr/strings.xml
index 3bea4f3..15ff5af 100644
--- a/packages/Shell/res/values-sr/strings.xml
+++ b/packages/Shell/res/values-sr/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Извештај о грешци <xliff:g id="ID">#%d</xliff:g> се генерише"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Извештај о грешци <xliff:g id="ID">#%d</xliff:g> је снимљен"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Извештај о грешци <xliff:g id="ID">#%d</xliff:g> снимљен; снимак екрана се чека"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Додају се детаљи у извештај о грешци"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Сачекајте..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Превуците улево да бисте делили извештај о грешкама"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Додирните да бисте делили извештај о грешци"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Додирните за дељење извештаја о грешци без снимка екрана или сачекајте да се направи снимак екрана"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Додирните за дељење извештаја о грешци без снимка екрана или сачекајте да се направи снимак екрана"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Извештаји о грешкама садрже податке из различитих системских датотека евиденције, укључујући личне и приватне податке. Делите извештаје о грешкама само са апликацијама и људима у које имате поверења."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Прикажи ову поруку следећи пут"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Извештаји о грешкама садрже податке из различитих системских датотека евиденције, који обухватају личне и приватне податке (попут коришћења апликацијa и података о локацији). Делите извештаје о грешкама само са апликацијама и људима у које имате поверења."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Не приказуј поново"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Извештаји о грешкама"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Датотека извештаја о грешци не може да се прочита"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"неименовано"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Детаљи"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Снимци екрана"</string>
diff --git a/packages/Shell/res/values-sv/strings.xml b/packages/Shell/res/values-sv/strings.xml
index a8cb64d..cfa3579 100644
--- a/packages/Shell/res/values-sv/strings.xml
+++ b/packages/Shell/res/values-sv/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Skal"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Felrapporten <xliff:g id="ID">#%d</xliff:g> genereras"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Felrapporten <xliff:g id="ID">#%d</xliff:g> har skapats"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Felrapporten <xliff:g id="ID">#%d</xliff:g> har skapats, väntar på skärmdumpen"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Lägger till information i felrapporten"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Vänta …"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Svep åt vänster om du vill dela felrapporten"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Tryck om du vill dela felrapporten"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Tryck om du vill dela felrapporten utan en skärmdump eller vänta tills skärmdumpen är klar"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Tryck om du vill dela felrapporten utan en skärmdump eller vänta tills skärmdumpen är klar"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Felrapporter innehåller data från systemets olika loggfiler, inklusive personliga och privata uppgifter. Dela bara felrapporter med personer du litar på."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Visa det här meddelandet nästa gång"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Felrapporter innehåller data från systemets olika loggfiler, vilka kan innehålla data som är känslig för dig (som appanvändning och platsdata). Dela bara felrapporter med personer du litar på."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Visa inte igen"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Felrapporter"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Det gick inte att läsa felrapporten"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"namnlös"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Information"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Skärmdump"</string>
diff --git a/packages/Shell/res/values-sw/strings.xml b/packages/Shell/res/values-sw/strings.xml
index 945bb60..32d8e66 100644
--- a/packages/Shell/res/values-sw/strings.xml
+++ b/packages/Shell/res/values-sw/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Ganda"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Ripoti ya hitilafu ya <xliff:g id="ID">#%d</xliff:g> inatayarishwa"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Ripoti ya hitilafu ya <xliff:g id="ID">#%d</xliff:g> imerekodiwa"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Ripoti ya hitilafu ya <xliff:g id="ID">#%d</xliff:g> imerekodiwa lakini picha ya skrini bado haijakamilishwa"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Inaongeza maelezo kwenye ripoti ya hitilafu"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Tafadhali subiri…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Telezesha kidole kushoto ili ushiriki ripoti yako ya hitilafu"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Gonga ili ushiriki ripoti yako ya hitilafu"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Gonga ili ushiriki ripoti yako ya hitilafu bila picha ya skrini au usubiri picha ya skrini itayarishwe"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Gonga ili ushiriki ripoti yako ya hitilafu bila picha ya skrini au usubiri picha ya skrini itayarishwe"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Ripoti ya hitilafu ina data kutoka kwenye faili za kumbukumbu mbalimbali za mfumo, pamoja na maelezo ya kibinafsi na faragha. Shiriki ripoti ya hitilafu na programu na watu unaowaamini pekee."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Onyesha ujumbe huu wakati mwingine"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Ripoti za hitilafu zinajumuisha data kutoka faili za kumbukumbu mbalimbali zilizo kwenye mfumo, ambazo huenda zinajumuisha data ambayo unachukulia kuwa nyeti (kama vile matumizi ya programu na maelezo kuhusu data ilipo). Shiriki ripoti za hitilafu na watu na programu unazoamini pekee."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Usionyeshe tena"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Ripoti za hitilafu"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Faili ya ripoti ya hitilafu haikusomwa"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"Isiyo na jina"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Maelezo"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Picha ya skrini"</string>
diff --git a/packages/Shell/res/values-ta-rIN/strings.xml b/packages/Shell/res/values-ta-rIN/strings.xml
index a501764..bc45e9e 100644
--- a/packages/Shell/res/values-ta-rIN/strings.xml
+++ b/packages/Shell/res/values-ta-rIN/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"ஷெல்"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"பிழை அறிக்கை <xliff:g id="ID">#%d</xliff:g> உருவாக்கப்படுகிறது"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"பிழை அறிக்கை <xliff:g id="ID">#%d</xliff:g> எடுக்கப்பட்டது"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"பிழை அறிக்கை <xliff:g id="ID">#%d</xliff:g> எடுக்கப்பட்டது ஆனால் ஸ்கிரீன்ஷாட் நிலுவையிலுள்ளது"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"பிழை அறிக்கையில் விவரங்களைச் சேர்க்கிறது"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"காத்திருக்கவும்…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"பிழை அறிக்கையைப் பகிர இடது புறமாகத் தேய்க்கவும்"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"பிழை அறிக்கையைப் பகிர, தட்டவும்"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"ஸ்கிரீன்ஷாட் இல்லாமல் பிழை அறிக்கையைப் பகிர, தட்டவும் அல்லது ஸ்கிரீன்ஷாட் முடியும்வரை காத்திருக்கவும்"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"ஸ்கிரீன்ஷாட் இல்லாமல் பிழை அறிக்கையைப் பகிர, தட்டவும் அல்லது ஸ்கிரீன்ஷாட் முடியும்வரை காத்திருக்கவும்"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"பிழை அறிக்கைகளில், சொந்த வாழ்க்கை மற்றும் தனிப்பட்ட தகவல் உள்பட கணினியின் பல்வேறு பதிவுகளில் உள்ள தரவு இருக்கும். நீங்கள் நம்பும் பயன்பாடுகள் மற்றும் நபர்களுடன் மட்டும் பிழை அறிக்கைகளைப் பகிரவும்."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"இந்தச் செய்தியை அடுத்த முறைக் காட்டு"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"பிழை அறிக்கைகளில் முறைமையின் பல்வேறு பதிவுக் கோப்புகளின் தரவு (இதில் முக்கியமானவை என நீங்கள் கருதும் பயன்பாடின் உபயோகம், இருப்பிடத் தரவு போன்றவை அடங்கும்) இருக்கும். நீங்கள் நம்பும் நபர்கள் மற்றும் பயன்பாடுகளுடன் மட்டும் பிழை அறிக்கைகளைப் பகிரவும்."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"மீண்டும் காட்டாதே"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"பிழை அறிக்கைகள்"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"பிழை அறிக்கையைப் படிக்க முடியவில்லை"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"பெயரிடப்படாதது"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"விவரங்கள்"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"ஸ்கிரீன் ஷாட்"</string>
diff --git a/packages/Shell/res/values-te-rIN/strings.xml b/packages/Shell/res/values-te-rIN/strings.xml
index f406869..39e39c7 100644
--- a/packages/Shell/res/values-te-rIN/strings.xml
+++ b/packages/Shell/res/values-te-rIN/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"షెల్"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"బగ్ నివేదిక <xliff:g id="ID">#%d</xliff:g> ఉత్పాదించబడుతోంది"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"బగ్ నివేదిక <xliff:g id="ID">#%d</xliff:g> సంగ్రహించబడింది"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"బగ్ నివే. <xliff:g id="ID">#%d</xliff:g> క్యాప్చ., కానీ స్క్రీన్‌షాట్ పెం. ఉంది"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"బగ్ నివేదికకు వివరాలను జోడిస్తోంది"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"దయచేసి వేచి ఉండండి..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"మీ బగ్ నివేదికను భాగస్వామ్యం చేయడానికి ఎడమవైపుకు స్వైప్ చేయండి"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"మీ బగ్ నివేదికను భాగస్వామ్యం చేయడానికి నొక్కండి"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"స్క్రీన్‌షాట్ లేకుండా మీ బగ్ నివే. భాగ. చేయడానికి నొక్కండి లేదా స్క్రీన్‌షాట్ ముగిసేదాకా వేచి ఉండండి"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"స్క్రీన్‌షాట్ లేకుండా మీ బగ్ నివే. భాగ. చేయడానికి నొక్కండి లేదా స్క్రీన్‌షాట్ ముగిసేదాకా వేచి ఉండండి"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"బగ్ నివేదికలు వ్యక్తిగతమైన మరియు రహస్యమైన సమాచారంతో సహా సిస్టమ్ యొక్క విభిన్న లాగ్ ఫైల్‌ల్లోని డేటాను కలిగి ఉంటాయి. కనుక బగ్ నివేదికలను మీరు విశ్వసించే అనువర్తనాలు మరియు వ్యక్తులతో మాత్రమే భాగస్వామ్యం చేయండి."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"తదుపరిసారి ఈ సందేశాన్ని చూపు"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"బగ్ నివేదికల్లో మీరు గోప్యమైనదిగా పరిగణించే (అనువర్తన వినియోగం మరియు స్థాన డేటా వంటి) డేటాతో సహా సిస్టమ్‌కు సంబంధించిన విభిన్న లాగ్ ఫైల్‌ల డేటా ఉంటుంది. బగ్ నివేదికలను మీరు విశ్వసించే అనువర్తనాలు మరియు వ్యక్తులతో మాత్రమే భాగస్వామ్యం చేయండి."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"మళ్లీ చూపవద్దు"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"బగ్ నివేదికలు"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"బగ్ నివేదిక ఫైల్‌ను చదవడం సాధ్యపడలేదు"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"పేరు లేనివి"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"వివరాలు"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"స్క్రీన్‌షాట్"</string>
diff --git a/packages/Shell/res/values-th/strings.xml b/packages/Shell/res/values-th/strings.xml
index db7f823..d76bf12 100644
--- a/packages/Shell/res/values-th/strings.xml
+++ b/packages/Shell/res/values-th/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"กำลังสร้างรายงานข้อบกพร่อง <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"บันทึกรายงานข้อบกพร่อง <xliff:g id="ID">#%d</xliff:g> แล้ว"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"จับภาพรายงานข้อบกพร่อง <xliff:g id="ID">#%d</xliff:g> แล้วแต่ภาพหน้าจอยังไม่เสร็จ"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"กำลังเพิ่มรายละเอียดในรายงานข้อบกพร่อง"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"โปรดรอสักครู่…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"กวาดไปทางซ้ายเพื่อแชร์รายงานข้อบกพร่อง"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"แตะเพื่อแชร์รายงานข้อบกพร่องของคุณ"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"แตะเพื่อแชร์รายงานข้อบกพร่องของคุณโดยไม่มีภาพหน้าจอ หรือรอให้ภาพหน้าจอเสร็จสมบูรณ์"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"แตะเพื่อแชร์รายงานข้อบกพร่องของคุณโดยไม่มีภาพหน้าจอ หรือรอให้ภาพหน้าจอเสร็จสมบูรณ์"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"รายงานข้อบกพร่องมีข้อมูลจากไฟล์บันทึกต่างๆ ของระบบ รวมถึงข้อมูลส่วนตัว แชร์รายงานข้อบกพร่องกับแอปและบุคคลที่คุณไว้ใจเท่านั้น"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"แสดงข้อความนี้ในครั้งต่อไป"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"รายงานข้อบกพร่องมีข้อมูลจากไฟล์บันทึกต่างๆ ของระบบ ซึ่งอาจรวมถึงข้อมูลที่คุณพิจารณาว่าละเอียดอ่อน (เช่น การใช้งานแอปและข้อมูลตำแหน่ง) โปรดแชร์รายงานข้อบกพร่องกับแอปและบุคคลที่คุณเชื่อถือเท่านั้น"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"ไม่ต้องแสดงอีก"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"รายงานข้อบกพร่อง"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"ไม่สามารถอ่านไฟล์รายงานข้อบกพร่อง"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"ไม่สามารถเพิ่มรายละเอียดรายงานข้อบกพร่องลงในไฟล์ ZIP"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"ไม่มีชื่อ"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"รายละเอียด"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"ภาพหน้าจอ"</string>
diff --git a/packages/Shell/res/values-tl/strings.xml b/packages/Shell/res/values-tl/strings.xml
index f99a1b8..08d724f 100644
--- a/packages/Shell/res/values-tl/strings.xml
+++ b/packages/Shell/res/values-tl/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Binubuo na ang ulat ng bug na <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Na-capture ang ulat ng bug na <xliff:g id="ID">#%d</xliff:g>"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Nakunan ang ulat ng bug <xliff:g id="ID">#%d</xliff:g>, nakabinbin ang screenshot"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Pagdaragdag ng mga detalye sa ulat ng bug"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Mangyaring maghintay..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Mag-swipe pakaliwa upang ibahagi ang iyong ulat ng bug"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Mag-tap upang ibahagi ang iyong ulat ng bug"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Mag-tap para ibahagi ang iyong ulat ng bug nang walang screenshot o hintaying matapos ang screenshot"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Mag-tap para ibahagi ang iyong ulat ng bug nang walang screenshot o hintaying matapos ang screenshot"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Naglalaman ang mga ulat ng bug ng data mula sa iba\'t ibang file ng log ng system, kabilang ang personal at pribadong impormasyon. Magbahagi lang ng mga ulat ng bug sa apps at mga tao na pinagkakatiwalaan mo."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Ipakita ang mensaheng ito sa susunod"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Ang mga ulat ng bug ay naglalaman ng data mula sa iba\'t ibang log file ng system, na maaaring maglaman ng data na itinuturing mong sensitibo (gaya ng paggamit ng app at data ng lokasyon). Ibahagi lang ang mga ulat ng bug sa mga tao at app na pinagkakatiwalaan mo."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Huwag nang ipakitang muli"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Mga ulat sa bug"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Hindi mabasa ang file ng pag-uulat ng bug"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"walang pangalan"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Mga Detalye"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Screenshot"</string>
diff --git a/packages/Shell/res/values-tr/strings.xml b/packages/Shell/res/values-tr/strings.xml
index be448af..cc8cf2b 100644
--- a/packages/Shell/res/values-tr/strings.xml
+++ b/packages/Shell/res/values-tr/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Kabuk"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Hata raporu (<xliff:g id="ID">#%d</xliff:g>) oluşturuluyor"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Hata raporu (<xliff:g id="ID">#%d</xliff:g>) yakalandı"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"<xliff:g id="ID">#%d</xliff:g> hata raporu yakalandı, ekran görüntüsü bekleniyor"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Hata raporuna ayrıntılar ekleniyor"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Lütfen bekleyin…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Hata raporunuzu paylaşmak için hızlıca sola kaydırın"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Hata raporunuzu paylaşmak için hafifçe dokunun"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Hata raporunu ekran görüntüsüz paylaşmak için dokunun veya bitirmek için ekran görüntüsünü bekleyin"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Hata raporunu ekran görüntüsüz paylaşmak için dokunun veya bitirmek için ekran görüntüsünü bekleyin"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Hata raporları, kişisel ve özel bilgiler dahil olmak üzere sistemin çeşitli günlük dosyalarından veriler içerir. Hata raporlarını sadece güvendiğiniz uygulamalar ve kişilerle paylaşın."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Bir dahaki sefere bu iletiyi göster"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Hata raporları, sistemin çeşitli günlük dosyalarından veriler içerir. Bu günlükler, hassas olarak kabul ettiğiniz verileri (uygulama kullanımı ve konum verileri gibi) içerebilir. Hata raporlarını yalnızca güvendiğiniz kişiler ve uygulamalarla paylaşın."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Bir daha gösterme"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Hata raporları"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Hata raporu dosyası okunamadı"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"adsız"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Ayrıntılar"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Ekran görüntüsü"</string>
diff --git a/packages/Shell/res/values-uk/strings.xml b/packages/Shell/res/values-uk/strings.xml
index c35c61c..2beb174 100644
--- a/packages/Shell/res/values-uk/strings.xml
+++ b/packages/Shell/res/values-uk/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Оболонка"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Генерується повідомлення про помилку <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Повідомлення про помилку <xliff:g id="ID">#%d</xliff:g> створено"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Повідомлення <xliff:g id="ID">#%d</xliff:g> створено. Очікується знімок екрана"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Додаються деталі до повідомлення про помилку"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Зачекайте…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Проведіть пальцем ліворуч, щоб надіслати звіт про помилки"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Торкніться, щоб надіслати повідомлення про помилку"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Торкніться, щоб надіслати повідомлення про помилку без знімка екрана або зачекайте на знімок"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Торкніться, щоб надіслати повідомлення про помилку без знімка екрана або зачекайте на знімок"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Звіти про помилки містять дані з різних файлів журналу системи, зокрема особисті та конфіденційні. Надсилайте звіт про помилки лише тим, кому довіряєте."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Показати це повідомлення наступного разу"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Звіти про помилки містять дані з різних файлів журналів системи, зокрема відомості, які ви вважаєте конфіденційними (як-от інформація про місцезнаходження та використання додатка). Діліться звітами про помилки лише з людьми та в додатках, яким довіряєте."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Більше не показувати"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Звіти про помилки"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Не вдалося прочитати звіт про помилки"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"без назви"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Деталі"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Знімок екрана"</string>
diff --git a/packages/Shell/res/values-ur-rPK/strings.xml b/packages/Shell/res/values-ur-rPK/strings.xml
index ef6801f..ee57ec1 100644
--- a/packages/Shell/res/values-ur-rPK/strings.xml
+++ b/packages/Shell/res/values-ur-rPK/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"شیل"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"بگ رپورٹ <xliff:g id="ID">#%d</xliff:g> تخلیق ہو رہی ہے"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"بگ رپورٹ <xliff:g id="ID">#%d</xliff:g> کیپچر ہو گئی"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"بگ رپورٹ <xliff:g id="ID">#%d</xliff:g> کیپچر ہو گیا مگر اسکرین شاٹ زیر التواء"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"بگ رپورٹ میں تفصیلات شامل کی جا رہی ہیں"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"براہ کرم انتظار کریں…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"اپنی بگ رپورٹ کا اشتراک کرنے کیلئے بائیں سوائپ کریں"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"اپنی بگ رپورٹ کا اشتراک کرنے کیلئے تھپتھپائیں"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"بغیر اسکرین شاٹ کے بگ رپورٹ کا اشتراک کرنے کیلئے تھپتھپائیں یا اسکرین شاٹ کے ختم ہونے کا انتظار کریں"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"بغیر اسکرین شاٹ کے بگ رپورٹ کا اشتراک کرنے کیلئے تھپتھپائیں یا اسکرین شاٹ کے ختم ہونے کا انتظار کریں"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"بَگ رپورٹس میں سسٹم کی مختلف لاگ فائلوں سے ڈیٹا شامل ہوتا ہے، بشمول ذاتی اور نجی معلومات۔ بَگ رپورٹس کا اشتراک صرف اپنے بھروسے مند ایپس اور لوگوں کے ساتھ کریں۔"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"یہ پیغام اگلی بار دکھائیں"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"بگ رپورٹس میں سسٹم کی مختلف لاگ فائلوں سے ڈیٹا شامل ہوتا ہے، جس میں وہ ڈیٹا بھی شامل ہو سکتا ہے جسے آپ حساس سمجھتے ہیں (جیسے ایپ کا استعمال اور مقام کا ڈیٹا)۔ بگ رپورٹس کا اشتراک صرف ان لوگوں اور ایپس سے کریں جن پر آپ بھروسہ کرتے ہیں۔"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"دوبارہ نہ دکھائیں"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"بگ رپورٹس"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"بگ رپورٹ فائل پڑھی نہیں جا سکی"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"بغیر نام"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"تفصیلات"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"اسکرین شاٹ"</string>
diff --git a/packages/Shell/res/values-uz-rUZ/strings.xml b/packages/Shell/res/values-uz-rUZ/strings.xml
index dd7f41b..cd016b5 100644
--- a/packages/Shell/res/values-uz-rUZ/strings.xml
+++ b/packages/Shell/res/values-uz-rUZ/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Terminal"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Xatoliklar hisoboti (<xliff:g id="ID">#%d</xliff:g>) tayyorlanmoqda"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Xatoliklar hisoboti (<xliff:g id="ID">#%d</xliff:g>) yozib olindi"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Xatoliklar hisoboti (<xliff:g id="ID">#%d</xliff:g>) tayyor, skrinshot kutilmoqda"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Xatoliklar hisobotiga tafsilotlar qo‘shilmoqda"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Iltimos, kuting…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Xatolik hisobotini yuborish uchun barmog‘ingiz bilan chapga suring"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Xatoliklar hisobotini ulashish uchun bosing"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Xatoliklar hisobotini darhol yuborish uchun shu yerga bosing yoki skrinshot saqlanguncha kuting"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Xatoliklar hisobotini darhol yuborish uchun shu yerga bosing yoki skrinshot saqlanguncha kuting"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Xatolik hisobotlari tizimdagi har xil jurnal fayllardagi ma’lumotlarni, shuningdek, shaxsiy hamda maxfiy ma’lumotlarni o‘z ichiga oladi. Xatolik hisobotlarini faqat ishonchli dasturlar va odamlar bilan bo‘lishing."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Ushbu xabar keyingi safar ko‘rsatilsin"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Xatoliklar hisoboti tizimdagi har xil jurnal fayllardagi ma’lumotlarni, jumladan, shaxsiy hamda maxfiy (ilovalardan foydalanish va joylashuv) ma’lumotlarni o‘z ichiga oladi. Xatoliklar hisobotini faqat ishonchli dasturlar va odamlarga yuboring."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Boshqa ko‘rsatilmasin"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Xatoliklar hisoboti"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Xatoliklar hisoboti faylini o‘qib bo‘lmadi"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"nomsiz"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Tafsilotlar"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Skrinshot"</string>
diff --git a/packages/Shell/res/values-vi/strings.xml b/packages/Shell/res/values-vi/strings.xml
index 2229991..5026b37 100644
--- a/packages/Shell/res/values-vi/strings.xml
+++ b/packages/Shell/res/values-vi/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Báo cáo lỗi <xliff:g id="ID">#%d</xliff:g> đang được tạo"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Đã chụp báo cáo lỗi <xliff:g id="ID">#%d</xliff:g>"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Đã chụp báo cáo lỗi <xliff:g id="ID">#%d</xliff:g>, đang chờ ảnh chụp màn hình"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Đang thêm thông tin chi tiết vào báo cáo lỗi"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Vui lòng đợi…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Vuốt sang trái để chia sẻ báo cáo lỗi của bạn"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Nhấn để chia sẻ báo cáo lỗi của bạn"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Bấm để chia sẻ báo cáo lỗi mà không cần ảnh chụp màn hình hoặc đợi hoàn tất ảnh chụp màn hình"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Bấm để chia sẻ báo cáo lỗi mà không cần ảnh chụp màn hình hoặc đợi hoàn tất ảnh chụp màn hình"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Các báo cáo lỗi chứa dữ liệu từ nhiều tệp nhật ký khác nhau của hệ thống, bao gồm cả thông tin cá nhân và riêng tư. Chỉ chia sẻ báo cáo lỗi với các ứng dụng và những người mà bạn tin tưởng."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Hiển thị thông báo này vào lần tới"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Các báo cáo lỗi chứa dữ liệu từ nhiều tệp nhật ký khác nhau của hệ thống, có thể bao gồm dữ liệu mà bạn coi là nhạy cảm (chẳng hạn như dữ liệu vị trí và dữ liệu sử dụng ứng dụng). Chỉ chia sẻ báo cáo lỗi với những người và ứng dụng mà bạn tin tưởng."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Không hiển thị lại"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Báo cáo lỗi"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Không thể đọc tệp báo cáo lỗi"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"chưa được đặt tên"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Chi tiết"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Ảnh chụp màn hình"</string>
diff --git a/packages/Shell/res/values-zh-rCN/strings.xml b/packages/Shell/res/values-zh-rCN/strings.xml
index b09a7d0..0e539cb 100644
--- a/packages/Shell/res/values-zh-rCN/strings.xml
+++ b/packages/Shell/res/values-zh-rCN/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"正在生成错误报告 <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"已捕获错误报告 <xliff:g id="ID">#%d</xliff:g>"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"已捕获错误报告 <xliff:g id="ID">#%d</xliff:g>，但仍在等待屏幕截图完成"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"正在向错误报告添加详细信息"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"请稍候…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"向左滑动即可分享错误报告"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"点按即可分享您的错误报告"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"点按即可分享不含屏幕截图的错误报告；您也可以等待屏幕截图完成"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"点按即可分享不含屏幕截图的错误报告；您也可以等待屏幕截图完成"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"错误报告包含的数据来自于系统的各个日志文件，其中包含个人信息和隐私信息。请务必只与您信任的应用和用户分享错误报告。"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"下次再显示这条讯息"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"错误报告包含的数据来自于系统的各种日志文件，其中可能包含您认为敏感的数据（例如应用使用情况信息和位置数据）。请务必只与您信任的人和应用分享错误报告。"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"不再显示"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"错误报告"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"无法读取错误报告文件"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"未命名"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"详细信息"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"屏幕截图"</string>
diff --git a/packages/Shell/res/values-zh-rHK/strings.xml b/packages/Shell/res/values-zh-rHK/strings.xml
index 384eee7..abe9b2a 100644
--- a/packages/Shell/res/values-zh-rHK/strings.xml
+++ b/packages/Shell/res/values-zh-rHK/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"命令介面"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"正在產生錯誤報告 <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"已擷取錯誤報告 <xliff:g id="ID">#%d</xliff:g>"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"已擷取錯誤報告 <xliff:g id="ID">#%d</xliff:g>，但螢幕畫面仍未擷取完成"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"正在新增錯誤報告詳細資訊"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"請稍候…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"向左滑動即可分享錯誤報告"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"輕按即可分享錯誤報告"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"輕按以分享錯誤報告 (不包含螢幕擷圖)，或等待螢幕畫面擷取完成"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"輕按以分享錯誤報告 (不包含螢幕擷圖)，或等待螢幕畫面擷取完成"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"錯誤報告中有來自系統各個記錄檔案的資料，包括個人和私人資料。請只與您信任的應用程式和使用者分享錯誤報告。"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"下次再顯示這則訊息"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"錯誤報告包含來自系統各個記錄檔案的資料，並可能涉及敏感資料 (例如應用程式使用情況和位置資料)。您只應與信任的人和應用程式分享錯誤報告。"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"不要再顯示"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"錯誤報告"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"無法讀取錯誤報告檔案"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"無法在 ZIP 檔案中加入錯誤報告"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"未命名"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"詳細資訊"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"螢幕擷取畫面"</string>
diff --git a/packages/Shell/res/values-zh-rTW/strings.xml b/packages/Shell/res/values-zh-rTW/strings.xml
index 2702bad..85dde84 100644
--- a/packages/Shell/res/values-zh-rTW/strings.xml
+++ b/packages/Shell/res/values-zh-rTW/strings.xml
@@ -19,17 +19,17 @@
     <string name="app_label" msgid="3701846017049540910">"殼層"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"正在產生錯誤報告 <xliff:g id="ID">#%d</xliff:g>"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"已擷取錯誤報告 <xliff:g id="ID">#%d</xliff:g>"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"錯誤報告 <xliff:g id="ID">#%d</xliff:g> 擷取成功，但螢幕畫面尚未擷取完畢"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"正在新增錯誤報告詳細資訊"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"請稍候…"</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"向左滑動即可分享錯誤報告"</string>
-    <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"輕按即可分享錯誤報告"</string>
+    <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"輕觸即可分享錯誤報告"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"輕觸即可分享無螢幕擷圖的錯誤報告；您也可以等候螢幕畫面擷取完畢"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"輕觸即可分享無螢幕擷圖的錯誤報告；您也可以等候螢幕畫面擷取完畢"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"錯誤報告的資料來自系統各個紀錄檔，包括個人和私密資訊。請務必只與您信任的應用程式和使用者分享錯誤報告。"</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"下次仍顯示這則訊息"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"錯誤報告的資料來自系統的各種紀錄檔，當中可能包含敏感資料 (例如應用程式使用情形和位置資料)。請務必只與您信任的使用者和應用程式分享錯誤報告。"</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"不要再顯示"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"錯誤報告"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"無法讀取錯誤報告檔案"</string>
+    <string name="bugreport_add_details_to_zip_failed" msgid="1302931926486712371">"無法在 ZIP 檔案中加入錯誤報告"</string>
     <string name="bugreport_unnamed" msgid="2800582406842092709">"未命名"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"詳細資料"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"螢幕擷取畫面"</string>
diff --git a/packages/Shell/res/values-zu/strings.xml b/packages/Shell/res/values-zu/strings.xml
index 561ac0a..e955f61 100644
--- a/packages/Shell/res/values-zu/strings.xml
+++ b/packages/Shell/res/values-zu/strings.xml
@@ -19,17 +19,18 @@
     <string name="app_label" msgid="3701846017049540910">"I-Shell"</string>
     <string name="bugreport_in_progress_title" msgid="4311705936714972757">"Umbiko wesiphazamisi ongu-<xliff:g id="ID">#%d</xliff:g> uyacutshungulwa"</string>
     <string name="bugreport_finished_title" msgid="4429132808670114081">"Umbiko wesiphazamisi ongu-<xliff:g id="ID">#%d</xliff:g> uthwetshuliwe"</string>
-    <string name="bugreport_finished_pending_screenshot_title" msgid="5460883450679439591">"Umbiko wesiphazamisi esingu-<xliff:g id="ID">#%d</xliff:g> uthwetshuliwe kodwa isithombe-skrini silindile"</string>
     <string name="bugreport_updating_title" msgid="4423539949559634214">"Ingeza imininingwane kumbiko wesiphazamisi"</string>
     <string name="bugreport_updating_wait" msgid="3322151947853929470">"Sicela ulinde..."</string>
     <string name="bugreport_finished_text" product="watch" msgid="8389172248433597683">"Swayiphela kwesokunxele ukuze wabelane umbiko wesiphazamiso sakho"</string>
     <string name="bugreport_finished_text" product="default" msgid="8353769438382138847">"Thepha ukuze wabelane ngombiko wakho wesiphazamisi"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="watch" msgid="1474435374470177193">"Thepha ukuze wabelane ngombiko wesiphazamisi ngaphandle kwesithombe-skrini noma ulinde isithombe-skrini ukuthi siqede"</string>
     <string name="bugreport_finished_pending_screenshot_text" product="default" msgid="1474435374470177193">"Thepha ukuze wabelane ngombiko wesiphazamisi ngaphandle kwesithombe-skrini noma ulinde isithombe-skrini ukuthi siqede"</string>
-    <string name="bugreport_confirm" msgid="5130698467795669780">"Imibiko yeziphazamisi iqukethe idatha yamafayela wokungena ahlukile wesistimu, afaka ulwazi lomuntu siqu noma lobumfihlo. Yabelana kuphela ngemibiko yeziphazamisi nezinhlelo zokusebenza nabantu obathembayo."</string>
-    <string name="bugreport_confirm_repeat" msgid="4926842460688645058">"Bonisa lo mlayezo ngesikhathi esilandelayo"</string>
+    <string name="bugreport_confirm" msgid="5917407234515812495">"Imibiko yeziphazamisi iqukethe idatha kusuka kumafayela elogo ahlukahlukene esistimu, angabandakanya idatha oyibheka njengezwelayo (njengokusetshenziswa kohlelo lokusebenza nedatha yendawo). Yabelana kuphela ngemibiko yesiphazamisi nabantu obethembayo nezinhlelo zokusebenza."</string>
+    <string name="bugreport_confirm_dont_repeat" msgid="6179945398364357318">"Ungabonisi futhi"</string>
     <string name="bugreport_storage_title" msgid="5332488144740527109">"Imibiko yeziphazamiso"</string>
     <string name="bugreport_unreadable_text" msgid="586517851044535486">"Ifayela lombiko wesiphazamso alikwazanga ukufundwa"</string>
+    <!-- no translation found for bugreport_add_details_to_zip_failed (1302931926486712371) -->
+    <skip />
     <string name="bugreport_unnamed" msgid="2800582406842092709">"awunikiwe igama"</string>
     <string name="bugreport_info_action" msgid="2158204228510576227">"Imininingwane"</string>
     <string name="bugreport_screenshot_action" msgid="8677781721940614995">"Isithombe-skrini"</string>
diff --git a/packages/Shell/res/values/strings.xml b/packages/Shell/res/values/strings.xml
index 95e36fd..3d6643d 100644
--- a/packages/Shell/res/values/strings.xml
+++ b/packages/Shell/res/values/strings.xml
@@ -44,6 +44,8 @@
 
     <!-- Toast message sent when the bugreport file could be read. -->
     <string name="bugreport_unreadable_text">Bug report file could not be read</string>
+    <!-- Toast message sent when the bugreport details could not be added to the zip file. -->
+    <string name="bugreport_add_details_to_zip_failed">Couldn\'t add bug report details to zip file</string>
 
     <!-- Title for bug reports received from dumpstate without a name. [CHAR LIMIT=30]-->
     <string name="bugreport_unnamed">unnamed</string>
diff --git a/packages/Shell/src/com/android/shell/BugreportProgressService.java b/packages/Shell/src/com/android/shell/BugreportProgressService.java
index 502eed1..474e3e6 100644
--- a/packages/Shell/src/com/android/shell/BugreportProgressService.java
+++ b/packages/Shell/src/com/android/shell/BugreportProgressService.java
@@ -62,6 +62,7 @@
 import android.content.res.Configuration;
 import android.net.Uri;
 import android.os.AsyncTask;
+import android.os.Bundle;
 import android.os.Handler;
 import android.os.HandlerThread;
 import android.os.IBinder;
@@ -197,6 +198,11 @@
     private File mScreenshotsDir;
 
     /**
+     * id of the notification used to set service on foreground.
+     */
+    private int mForegroundId = -1;
+
+    /**
      * Flag indicating whether a screenshot is being taken.
      * <p>
      * This is the only state that is shared between the 2 handlers and hence must have synchronized
@@ -204,6 +210,8 @@
      */
     private boolean mTakingScreenshot;
 
+    private static final Bundle sNotificationBundle = new Bundle();
+
     @Override
     public void onCreate() {
         mContext = getApplicationContext();
@@ -254,6 +262,7 @@
             writer.printf("No monitored processes");
             return;
         }
+        writer.printf("Foreground id: %d\n\n", mForegroundId);
         writer.printf("Monitored dumpstate processes\n");
         writer.printf("-----------------------------\n");
         for (int i = 0; i < size; i++) {
@@ -336,7 +345,7 @@
                     launchBugreportInfoDialog(id);
                     break;
                 case INTENT_BUGREPORT_SCREENSHOT:
-                    takeScreenshot(id, true);
+                    takeScreenshot(id);
                     break;
                 case INTENT_BUGREPORT_SHARE:
                     shareBugreport(id, (BugreportInfo) intent.getParcelableExtra(EXTRA_INFO));
@@ -417,8 +426,6 @@
             return true;
         }
         mProcesses.put(info.id, info);
-        // Take initial screenshot.
-        takeScreenshot(id, false);
         updateProgress(info);
         return true;
     }
@@ -478,10 +485,21 @@
             return;
         }
         if (DEBUG) {
-            Log.d(TAG, "Sending 'Progress' notification for id " + info.id + "(pid " + info.pid
+            Log.d(TAG, "Sending 'Progress' notification for id " + info.id + " (pid " + info.pid
                     + "): " + percentageText);
         }
-        NotificationManager.from(mContext).notify(TAG, info.id, notification);
+        sendForegroundabledNotification(info.id, notification);
+    }
+
+    private void sendForegroundabledNotification(int id, Notification notification) {
+        if (mForegroundId >= 0) {
+            if (DEBUG) Log.d(TAG, "Already running as foreground service");
+            NotificationManager.from(mContext).notify(id, notification);
+        } else {
+            mForegroundId = id;
+            Log.d(TAG, "Start running as foreground service on id " + mForegroundId);
+            startForeground(mForegroundId, notification);
+        }
     }
 
     /**
@@ -505,8 +523,10 @@
             Log.d(TAG, "Removing ID " + id);
             mProcesses.remove(id);
         }
-        Log.v(TAG, "stopProgress(" + id + "): cancel notification");
-        NotificationManager.from(mContext).cancel(TAG, id);
+        // Must stop foreground service first, otherwise notif.cancel() will fail below.
+        stopForegroundWhenDone(id);
+        Log.d(TAG, "stopProgress(" + id + "): cancel notification");
+        NotificationManager.from(mContext).cancel(id);
         stopSelfWhenDone();
     }
 
@@ -624,7 +644,7 @@
             Log.w(TAG, "launchBugreportInfoDialog(): canceling notification because id " + id
                     + " was not found");
             // TODO: add test case to make sure notification is canceled.
-            NotificationManager.from(mContext).cancel(TAG, id);
+            NotificationManager.from(mContext).cancel(id);
             return;
         }
 
@@ -635,19 +655,11 @@
     /**
      * Starting point for taking a screenshot.
      * <p>
-     * If {@code delayed} is set, it first display a toast message and waits
-     * {@link #SCREENSHOT_DELAY_SECONDS} seconds before taking it, otherwise it takes the screenshot
-     * right away.
-     * <p>
-     * Typical usage is delaying when taken from the notification action, and taking it right away
-     * upon receiving a {@link #INTENT_BUGREPORT_STARTED}.
+     * It first display a toast message and waits {@link #SCREENSHOT_DELAY_SECONDS} seconds before
+     * taking the screenshot.
      */
-    private void takeScreenshot(int id, boolean delayed) {
-        if (delayed) {
-            // Only logs screenshots requested from the notification action.
-            MetricsLogger.action(this,
-                    MetricsEvent.ACTION_BUGREPORT_NOTIFICATION_ACTION_SCREENSHOT);
-        }
+    private void takeScreenshot(int id) {
+        MetricsLogger.action(this, MetricsEvent.ACTION_BUGREPORT_NOTIFICATION_ACTION_SCREENSHOT);
         if (getInfo(id) == null) {
             // Most likely am killed Shell before user tapped the notification. Since system might
             // be too busy anwyays, it's better to ignore the notification and switch back to the
@@ -655,23 +667,19 @@
             Log.w(TAG, "takeScreenshot(): canceling notification because id " + id
                     + " was not found");
             // TODO: add test case to make sure notification is canceled.
-            NotificationManager.from(mContext).cancel(TAG, id);
+            NotificationManager.from(mContext).cancel(id);
             return;
         }
         setTakingScreenshot(true);
-        if (delayed) {
-            collapseNotificationBar();
-            final String msg = mContext.getResources()
-                    .getQuantityString(com.android.internal.R.plurals.bugreport_countdown,
-                            SCREENSHOT_DELAY_SECONDS, SCREENSHOT_DELAY_SECONDS);
-            Log.i(TAG, msg);
-            // Show a toast just once, otherwise it might be captured in the screenshot.
-            Toast.makeText(mContext, msg, Toast.LENGTH_SHORT).show();
+        collapseNotificationBar();
+        final String msg = mContext.getResources()
+                .getQuantityString(com.android.internal.R.plurals.bugreport_countdown,
+                        SCREENSHOT_DELAY_SECONDS, SCREENSHOT_DELAY_SECONDS);
+        Log.i(TAG, msg);
+        // Show a toast just once, otherwise it might be captured in the screenshot.
+        Toast.makeText(mContext, msg, Toast.LENGTH_SHORT).show();
 
-            takeScreenshot(id, SCREENSHOT_DELAY_SECONDS);
-        } else {
-            takeScreenshot(id, 0);
-        }
+        takeScreenshot(id, SCREENSHOT_DELAY_SECONDS);
     }
 
     /**
@@ -742,7 +750,7 @@
             if (info.finished) {
                 Log.d(TAG, "Screenshot finished after bugreport; updating share notification");
                 info.renameScreenshots(mScreenshotsDir);
-                sendBugreportNotification(mContext, info, mTakingScreenshot);
+                sendBugreportNotification(info, mTakingScreenshot);
             }
             msg = mContext.getString(R.string.bugreport_screenshot_taken);
         } else {
@@ -764,6 +772,33 @@
     }
 
     /**
+     * Stop running on foreground once there is no more active bugreports being watched.
+     */
+    private void stopForegroundWhenDone(int id) {
+        if (id != mForegroundId) {
+            Log.d(TAG, "stopForegroundWhenDone(" + id + "): ignoring since foreground id is "
+                    + mForegroundId);
+            return;
+        }
+
+        Log.d(TAG, "detaching foreground from id " + mForegroundId);
+        stopForeground(Service.STOP_FOREGROUND_DETACH);
+        mForegroundId = -1;
+
+        // Might need to restart foreground using a new notification id.
+        final int total = mProcesses.size();
+        if (total > 0) {
+            for (int i = 0; i < total; i++) {
+                final BugreportInfo info = mProcesses.valueAt(i);
+                if (!info.finished) {
+                    updateProgress(info);
+                    break;
+                }
+            }
+        }
+    }
+
+    /**
      * Finishes the service when it's not monitoring any more processes.
      */
     private void stopSelfWhenDone() {
@@ -808,6 +843,9 @@
         }
         info.finished = true;
 
+        // Stop running on foreground, otherwise share notification cannot be dismissed.
+        stopForegroundWhenDone(id);
+
         final Configuration conf = mContext.getResources().getConfiguration();
         if ((conf.uiMode & Configuration.UI_MODE_TYPE_MASK) != Configuration.UI_MODE_TYPE_WATCH) {
             triggerLocalNotification(mContext, info);
@@ -831,10 +869,10 @@
         boolean isPlainText = info.bugreportFile.getName().toLowerCase().endsWith(".txt");
         if (!isPlainText) {
             // Already zipped, send it right away.
-            sendBugreportNotification(context, info, mTakingScreenshot);
+            sendBugreportNotification(info, mTakingScreenshot);
         } else {
             // Asynchronously zip the file first, then send it.
-            sendZippedBugreportNotification(context, info, mTakingScreenshot);
+            sendZippedBugreportNotification(info, mTakingScreenshot);
         }
     }
 
@@ -916,7 +954,7 @@
             Log.v(TAG, "shareBugReport(): id " + id + " info = " + info);
         }
 
-        addDetailsToZipFile(mContext, info);
+        addDetailsToZipFile(info);
 
         final Intent sendIntent = buildSendIntent(mContext, info);
         if (sendIntent == null) {
@@ -945,36 +983,35 @@
     /**
      * Sends a notification indicating the bugreport has finished so use can share it.
      */
-    private static void sendBugreportNotification(Context context, BugreportInfo info,
-            boolean takingScreenshot) {
+    private void sendBugreportNotification(BugreportInfo info, boolean takingScreenshot) {
 
         // Since adding the details can take a while, do it before notifying user.
-        addDetailsToZipFile(context, info);
+        addDetailsToZipFile(info);
 
         final Intent shareIntent = new Intent(INTENT_BUGREPORT_SHARE);
-        shareIntent.setClass(context, BugreportProgressService.class);
+        shareIntent.setClass(mContext, BugreportProgressService.class);
         shareIntent.setAction(INTENT_BUGREPORT_SHARE);
         shareIntent.putExtra(EXTRA_ID, info.id);
         shareIntent.putExtra(EXTRA_INFO, info);
 
-        final String title = context.getString(R.string.bugreport_finished_title, info.id);
+        final String title = mContext.getString(R.string.bugreport_finished_title, info.id);
         final String content = takingScreenshot ?
-                context.getString(R.string.bugreport_finished_pending_screenshot_text)
-                : context.getString(R.string.bugreport_finished_text);
-        final Notification.Builder builder = newBaseNotification(context)
+                mContext.getString(R.string.bugreport_finished_pending_screenshot_text)
+                : mContext.getString(R.string.bugreport_finished_text);
+        final Notification.Builder builder = newBaseNotification(mContext)
                 .setContentTitle(title)
                 .setTicker(title)
                 .setContentText(content)
-                .setContentIntent(PendingIntent.getService(context, info.id, shareIntent,
+                .setContentIntent(PendingIntent.getService(mContext, info.id, shareIntent,
                         PendingIntent.FLAG_UPDATE_CURRENT))
-                .setDeleteIntent(newCancelIntent(context, info));
+                .setDeleteIntent(newCancelIntent(mContext, info));
 
         if (!TextUtils.isEmpty(info.name)) {
             builder.setSubText(info.name);
         }
 
         Log.v(TAG, "Sending 'Share' notification for ID " + info.id + ": " + title);
-        NotificationManager.from(context).notify(TAG, info.id, builder.build());
+        NotificationManager.from(mContext).notify(info.id, builder.build());
     }
 
     /**
@@ -982,18 +1019,24 @@
      * finishes - at this point there is nothing to be done other than waiting, hence it has no
      * pending action.
      */
-    private static void sendBugreportBeingUpdatedNotification(Context context, int id) {
+    private void sendBugreportBeingUpdatedNotification(Context context, int id) {
         final String title = context.getString(R.string.bugreport_updating_title);
         final Notification.Builder builder = newBaseNotification(context)
                 .setContentTitle(title)
                 .setTicker(title)
                 .setContentText(context.getString(R.string.bugreport_updating_wait));
         Log.v(TAG, "Sending 'Updating zip' notification for ID " + id + ": " + title);
-        NotificationManager.from(context).notify(TAG, id, builder.build());
+        sendForegroundabledNotification(id, builder.build());
     }
 
     private static Notification.Builder newBaseNotification(Context context) {
+        if (sNotificationBundle.isEmpty()) {
+            // Rename notifcations from "Shell" to "Android System"
+            sNotificationBundle.putString(Notification.EXTRA_SUBSTITUTE_APP_NAME,
+                    context.getString(com.android.internal.R.string.android_system_label));
+        }
         return new Notification.Builder(context)
+                .addExtras(sNotificationBundle)
                 .setCategory(Notification.CATEGORY_SYSTEM)
                 .setSmallIcon(com.android.internal.R.drawable.stat_sys_adb)
                 .setLocalOnly(true)
@@ -1004,13 +1047,13 @@
     /**
      * Sends a zipped bugreport notification.
      */
-    private static void sendZippedBugreportNotification(final Context context,
-            final BugreportInfo info, final boolean takingScreenshot) {
+    private void sendZippedBugreportNotification( final BugreportInfo info,
+            final boolean takingScreenshot) {
         new AsyncTask<Void, Void, Void>() {
             @Override
             protected Void doInBackground(Void... params) {
                 zipBugreport(info);
-                sendBugreportNotification(context, info, takingScreenshot);
+                sendBugreportNotification(info, takingScreenshot);
                 return null;
             }
         }.execute();
@@ -1048,7 +1091,7 @@
      * If user provided a title, it will be saved into a {@code title.txt} entry; similarly, the
      * description will be saved on {@code description.txt}.
      */
-    private static void addDetailsToZipFile(Context context, BugreportInfo info) {
+    private void addDetailsToZipFile(BugreportInfo info) {
         if (info.bugreportFile == null) {
             // One possible reason is a bug in the Parcelization code.
             Log.wtf(TAG, "addDetailsToZipFile(): no bugreportFile on " + info);
@@ -1066,7 +1109,8 @@
 
         // It's not possible to add a new entry into an existing file, so we need to create a new
         // zip, copy all entries, then rename it.
-        sendBugreportBeingUpdatedNotification(context, info.id); // ...and that takes time
+        sendBugreportBeingUpdatedNotification(mContext, info.id); // ...and that takes time
+
         final File dir = info.bugreportFile.getParentFile();
         final File tmpZip = new File(dir, "tmp-" + info.bugreportFile.getName());
         Log.d(TAG, "Writing temporary zip file (" + tmpZip + ") with title and/or description");
@@ -1089,16 +1133,20 @@
             addEntry(zos, "title.txt", info.title);
             addEntry(zos, "description.txt", info.description);
         } catch (IOException e) {
-            info.addingDetailsToZip = false;
             Log.e(TAG, "exception zipping file " + tmpZip, e);
+            Toast.makeText(mContext, R.string.bugreport_add_details_to_zip_failed,
+                    Toast.LENGTH_LONG).show();
             return;
+        } finally {
+            // Make sure it only tries to add details once, even it fails the first time.
+            info.addedDetailsToZip = true;
+            info.addingDetailsToZip = false;
+            stopForegroundWhenDone(info.id);
         }
 
         if (!tmpZip.renameTo(info.bugreportFile)) {
             Log.e(TAG, "Could not rename " + tmpZip + " to " + info.bugreportFile);
         }
-        info.addedDetailsToZip = true;
-        info.addingDetailsToZip = false;
     }
 
     private static void addEntry(ZipOutputStream zos, String entry, String text)
diff --git a/packages/Shell/tests/src/com/android/shell/ActionSendMultipleConsumerActivity.java b/packages/Shell/tests/src/com/android/shell/ActionSendMultipleConsumerActivity.java
index e3e99b0..e34f5c8 100644
--- a/packages/Shell/tests/src/com/android/shell/ActionSendMultipleConsumerActivity.java
+++ b/packages/Shell/tests/src/com/android/shell/ActionSendMultipleConsumerActivity.java
@@ -113,7 +113,9 @@
         Bundle getExtras() {
             Bundle bundle = null;
             try {
-                bundle = mQueue.poll(TIMEOUT, TimeUnit.SECONDS);
+                // UI operations can be slower the very first time the tests are run due
+                // because ActionSendMultipleConsumer is not the default activity chosen.
+                bundle = mQueue.poll(2 * TIMEOUT, TimeUnit.SECONDS);
             } catch (InterruptedException e) {
                 Thread.currentThread().interrupt();
             }
diff --git a/packages/Shell/tests/src/com/android/shell/BugreportReceiverTest.java b/packages/Shell/tests/src/com/android/shell/BugreportReceiverTest.java
index 537e4c5..07c1546 100644
--- a/packages/Shell/tests/src/com/android/shell/BugreportReceiverTest.java
+++ b/packages/Shell/tests/src/com/android/shell/BugreportReceiverTest.java
@@ -216,7 +216,7 @@
         Bundle extras =
                 sendBugreportFinishedAndGetSharedIntent(ID, mPlainTextPath, mScreenshotPath);
         assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, ZIP_FILE,
-                NAME, NO_TITLE, NO_DESCRIPTION, 1, RENAMED_SCREENSHOTS);
+                NAME, NO_TITLE, NO_DESCRIPTION, 0, RENAMED_SCREENSHOTS);
 
         assertServiceNotRunning();
     }
@@ -241,14 +241,6 @@
     }
 
     public void testProgress_takeExtraScreenshot() throws Exception {
-        takeExtraScreenshotTest(false);
-    }
-
-    public void testProgress_takeExtraScreenshotServiceDiesAfterScreenshotTaken() throws Exception {
-        takeExtraScreenshotTest(true);
-    }
-
-    private void takeExtraScreenshotTest(boolean serviceDies) throws Exception {
         resetProperties();
         sendBugreportStarted(1000);
 
@@ -259,40 +251,25 @@
 
         sendBugreportFinished(ID, mPlainTextPath, mScreenshotPath);
 
-        if (serviceDies) {
-            waitShareNotification(ID);
-            killService();
-        }
-
         Bundle extras = acceptBugreportAndGetSharedIntent(ID);
         assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, ZIP_FILE,
-                NAME, NO_TITLE, NO_DESCRIPTION, 2, RENAMED_SCREENSHOTS);
+                NAME, NO_TITLE, NO_DESCRIPTION, 1, RENAMED_SCREENSHOTS);
 
         assertServiceNotRunning();
     }
 
     public void testScreenshotFinishesAfterBugreport() throws Exception {
-        screenshotFinishesAfterBugreportTest(false);
-    }
-
-    public void testScreenshotFinishesAfterBugreportAndServiceDiesBeforeSharing() throws Exception {
-        screenshotFinishesAfterBugreportTest(true);
-    }
-
-    private void screenshotFinishesAfterBugreportTest(boolean serviceDies) throws Exception {
         resetProperties();
 
         sendBugreportStarted(1000);
+        waitForScreenshotButtonEnabled(true);
+        takeScreenshot();
         sendBugreportFinished(ID, mPlainTextPath, NO_SCREENSHOT);
         waitShareNotification(ID);
 
         // There's no indication in the UI about the screenshot finish, so just sleep like a baby...
         Thread.sleep(SAFE_SCREENSHOT_DELAY * DateUtils.SECOND_IN_MILLIS);
 
-        if (serviceDies) {
-            killService();
-        }
-
         Bundle extras = acceptBugreportAndGetSharedIntent(ID);
         assertActionSendMultiple(extras, BUGREPORT_CONTENT, NO_SCREENSHOT, ID, PID, ZIP_FILE,
                 NAME, NO_TITLE, NO_DESCRIPTION, 1, RENAMED_SCREENSHOTS);
@@ -340,7 +317,7 @@
         Bundle extras = sendBugreportFinishedAndGetSharedIntent(ID, mPlainTextPath,
                 mScreenshotPath);
         assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, TITLE,
-                NEW_NAME, TITLE, mDescription, 1, RENAMED_SCREENSHOTS);
+                NEW_NAME, TITLE, mDescription, 0, RENAMED_SCREENSHOTS);
 
         assertServiceNotRunning();
     }
@@ -377,7 +354,7 @@
         Bundle extras = sendBugreportFinishedAndGetSharedIntent(ID,
                 plainText? mPlainTextPath : mZipPath, mScreenshotPath);
         assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, TITLE,
-                NEW_NAME, TITLE, mDescription, 1, RENAMED_SCREENSHOTS);
+                NEW_NAME, TITLE, mDescription, 0, RENAMED_SCREENSHOTS);
 
         assertServiceNotRunning();
     }
@@ -404,7 +381,7 @@
 
         Bundle extras = sendBugreportFinishedAndGetSharedIntent(ID, mZipPath, mScreenshotPath);
         assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, ZIP_FILE,
-                NO_NAME, NO_TITLE, mDescription, 1, DIDNT_RENAME_SCREENSHOTS);
+                NO_NAME, NO_TITLE, mDescription, 0, DIDNT_RENAME_SCREENSHOTS);
 
         assertServiceNotRunning();
     }
@@ -449,7 +426,7 @@
         // title.txt and description.txt entries.
         extras = sendBugreportFinishedAndGetSharedIntent(ID2, mZipPath2, NO_SCREENSHOT);
         assertActionSendMultiple(extras, BUGREPORT_CONTENT, NO_SCREENSHOT, ID2, PID2, TITLE2,
-                NEW_NAME2, TITLE2, DESCRIPTION2, 1, RENAMED_SCREENSHOTS);
+                NEW_NAME2, TITLE2, DESCRIPTION2, 0, RENAMED_SCREENSHOTS);
 
         assertServiceNotRunning();
     }
@@ -500,7 +477,7 @@
         // Finally, share bugreport.
         Bundle extras = acceptBugreportAndGetSharedIntent(ID);
         assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, TITLE,
-                NAME, TITLE, mDescription, 1, RENAMED_SCREENSHOTS);
+                NAME, TITLE, mDescription, 0, RENAMED_SCREENSHOTS);
 
         assertServiceNotRunning();
     }
@@ -560,7 +537,7 @@
 
     public void testShareBugreportAfterServiceDies() throws Exception {
         sendBugreportFinished(NO_ID, mPlainTextPath, NO_SCREENSHOT);
-        killService();
+        waitForService(false);
         Bundle extras = acceptBugreportAndGetSharedIntent(NO_ID);
         assertActionSendMultiple(extras, BUGREPORT_CONTENT, NO_SCREENSHOT);
     }
@@ -839,15 +816,6 @@
         assertFalse("Service '" + service + "' is still running", isServiceRunning(service));
     }
 
-    private void killService() {
-        waitForService(true);
-        Log.v(TAG, "Stopping service");
-        boolean stopped = mContext.stopService(new Intent(mContext, BugreportProgressService.class));
-        Log.d(TAG, "stopService returned " + stopped);
-        waitForService(false);
-        assertServiceNotRunning();  // Sanity check.
-    }
-
     private boolean isServiceRunning(String name) {
         ActivityManager manager = (ActivityManager) mContext
                 .getSystemService(Context.ACTIVITY_SERVICE);
@@ -876,12 +844,6 @@
                 Thread.currentThread().interrupt();
             }
         }
-        if (!expectRunning) {
-            // Typically happens when service is waiting for a screenshot to finish.
-            Log.w(TAG, "Service didn't stop; try to kill it again");
-            killService();
-            return;
-        }
 
         fail("Service status didn't change to " + expectRunning);
     }
diff --git a/packages/Shell/tests/src/com/android/shell/UiBot.java b/packages/Shell/tests/src/com/android/shell/UiBot.java
index 5bfe1a0..30f1692 100644
--- a/packages/Shell/tests/src/com/android/shell/UiBot.java
+++ b/packages/Shell/tests/src/com/android/shell/UiBot.java
@@ -144,37 +144,44 @@
         String shareText = "Share with " + name;
         Log.v(TAG, "Waiting for ActivityChooser text: '" + shareText + "'");
         boolean gotIt = mDevice.wait(Until.hasObject(By.text(shareText)), mTimeout);
+        boolean justOnceHack = false;
 
         if (gotIt) {
             Log.v(TAG, "Found activity " + name + ", it's the default action");
-            // Clicks the "Just Once" button.
-            gotIt = mDevice
-                    .wait(Until.hasObject(By.res("android", "button_once")), mTimeout);
-            assertTrue("'Just Once' button not visible yet", gotIt);
-
-            UiObject justOnce = mDevice
-                    .findObject(new UiSelector().resourceId("android:id/button_once"));
-            assertTrue("'Just Once' button not found", justOnce.exists());
-
-            click(justOnce, "Just Once");
+            clickJustOnce();
         } else {
             // Since it's not, need to find it in the scrollable list...
             Log.v(TAG, "Activity " + name + " is not default action");
             UiScrollable activitiesList = new UiScrollable(new UiSelector().scrollable(true));
-
-            UiObject activity;
             try {
                 activitiesList.scrollForward();
-                activity = getVisibleObject(name);
             } catch (UiObjectNotFoundException e) {
-                throw new IllegalStateException("didn't find activity '" + name
-                        + "' on activities chooser", e);
+                // TODO: for some paranormal issue, the first time a test is run the scrollable
+                // activity list is displayed but calling scrollForwad() (or even isScrollable())
+                // throws a "UiObjectNotFoundException: UiSelector[SCROLLABLE=true]" exception
+                justOnceHack = true;
+                Log.d(TAG, "could not scroll forward", e);
             }
+            UiObject activity = getVisibleObject(name);
             // ... then select it.
             click(activity, name);
+            if (justOnceHack) {
+                clickJustOnce();
+            }
         }
     }
 
+    private void clickJustOnce() {
+        boolean gotIt = mDevice.wait(Until.hasObject(By.res("android", "button_once")), mTimeout);
+        assertTrue("'Just Once' button not visible yet", gotIt);
+
+        UiObject justOnce = mDevice
+                .findObject(new UiSelector().resourceId("android:id/button_once"));
+        assertTrue("'Just Once' button not found", justOnce.exists());
+
+        click(justOnce, "Just Once");
+    }
+
     public void pressBack() {
         mDevice.pressBack();
     }
diff --git a/packages/SystemUI/AndroidManifest.xml b/packages/SystemUI/AndroidManifest.xml
index c248adf..31058a9 100644
--- a/packages/SystemUI/AndroidManifest.xml
+++ b/packages/SystemUI/AndroidManifest.xml
@@ -162,6 +162,9 @@
     <!-- It's like, reality, but, you know, virtual -->
     <uses-permission android:name="android.permission.ACCESS_VR_MANAGER" />
 
+    <!-- the ability to rename notifications posted by other apps -->
+    <uses-permission android:name="android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME" />
+
     <application
         android:name=".SystemUIApplication"
         android:persistent="true"
@@ -508,6 +511,7 @@
         <receiver
             android:name=".statusbar.KeyboardShortcutsReceiver">
             <intent-filter>
+                <action android:name="android.intent.action.DISMISS_KEYBOARD_SHORTCUTS" />
                 <action android:name="android.intent.action.SHOW_KEYBOARD_SHORTCUTS" />
             </intent-filter>
         </receiver>
diff --git a/packages/SystemUI/res/anim/tv_pip_onboarding_background_enter_animation.xml b/packages/SystemUI/res/anim/tv_pip_onboarding_background_enter_animation.xml
new file mode 100644
index 0000000..9ab41d0
--- /dev/null
+++ b/packages/SystemUI/res/anim/tv_pip_onboarding_background_enter_animation.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <objectAnimator
+        android:propertyName="alpha"
+        android:valueFrom="0"
+        android:valueTo="0.9"
+        android:interpolator="@android:interpolator/linear"
+        android:duration="@integer/tv_pip_onboarding_anim_duration" />
+</set>
diff --git a/packages/SystemUI/res/drawable-hdpi/ic_dismiss_outline.png b/packages/SystemUI/res/drawable-hdpi/ic_dismiss_outline.png
new file mode 100755
index 0000000..9afd8fa
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/ic_dismiss_outline.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-mdpi/ic_dismiss_outline.png b/packages/SystemUI/res/drawable-mdpi/ic_dismiss_outline.png
new file mode 100755
index 0000000..35737aa
--- /dev/null
+++ b/packages/SystemUI/res/drawable-mdpi/ic_dismiss_outline.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-xhdpi/ic_dismiss_outline.png b/packages/SystemUI/res/drawable-xhdpi/ic_dismiss_outline.png
new file mode 100755
index 0000000..f1bfa89
--- /dev/null
+++ b/packages/SystemUI/res/drawable-xhdpi/ic_dismiss_outline.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable/recents_tv_card_thumbnail_background.xml b/packages/SystemUI/res/drawable/recents_tv_card_thumbnail_background.xml
new file mode 100644
index 0000000..dc8e629
--- /dev/null
+++ b/packages/SystemUI/res/drawable/recents_tv_card_thumbnail_background.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<shape
+        xmlns:android="http://schemas.android.com/apk/res/android"
+        android:shape="rectangle">
+
+    <solid
+            android:color="@color/recents_tv_card_background_color"/>
+    <corners
+            android:radius="@dimen/recents_tv_card_corner_radius" />
+</shape>
\ No newline at end of file
diff --git a/packages/SystemUI/res/drawable/recents_tv_dismiss_icon.xml b/packages/SystemUI/res/drawable/recents_tv_dismiss_icon.xml
new file mode 100644
index 0000000..7fb67a2
--- /dev/null
+++ b/packages/SystemUI/res/drawable/recents_tv_dismiss_icon.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<transition xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:drawable="@drawable/ic_dismiss_outline" />
+    <item android:drawable="@drawable/ic_cancel_white_24dp" />
+</transition>
\ No newline at end of file
diff --git a/packages/SystemUI/res/layout-television/recents_tv_card_dismiss.xml b/packages/SystemUI/res/layout-television/recents_tv_card_dismiss.xml
deleted file mode 100644
index 186a058..0000000
--- a/packages/SystemUI/res/layout-television/recents_tv_card_dismiss.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-<LinearLayout
-        xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:tools="http://schemas.android.com/tools"
-        android:id="@+id/card_dismiss"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:orientation="vertical"
-        android:layout_gravity="center_horizontal"
-        android:alpha="0.0"
-        tools:showIn="@layout/recents_tv_task_card_view">
-    <ImageView
-            android:id="@+id/card_dismiss_icon"
-            android:layout_width="@dimen/recents_tv_dismiss_icon_size"
-            android:layout_height="@dimen/recents_tv_dismiss_icon_size"
-            android:layout_gravity="center_horizontal"
-            android:layout_marginTop="@dimen/recents_tv_dismiss_icon_top_margin"
-            android:layout_marginBottom="@dimen/recents_tv_dismiss_icon_bottom_margin"
-            android:src="@drawable/ic_cancel_white_24dp"/>
-    <TextView
-            android:id="@+id/card_dismiss_text"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:textSize="@dimen/recents_tv_dismiss_text_size"
-            android:fontFamily="@string/font_roboto_light"
-            android:textColor="@color/recents_tv_dismiss_text_color"
-            android:text="@string/recents_tv_dismiss"
-            android:layout_gravity="center_horizontal"/>
-</LinearLayout>
\ No newline at end of file
diff --git a/packages/SystemUI/res/layout-television/recents_tv_task_card_view.xml b/packages/SystemUI/res/layout-television/recents_tv_task_card_view.xml
index 9b89aa0..201f47d 100644
--- a/packages/SystemUI/res/layout-television/recents_tv_task_card_view.xml
+++ b/packages/SystemUI/res/layout-television/recents_tv_task_card_view.xml
@@ -30,7 +30,7 @@
             android:layout_height="@dimen/recents_tv_screenshot_height"
             android:gravity="center"
             android:orientation="vertical"
-            android:background="@color/recents_tv_card_background_color"
+            android:background="@drawable/recents_tv_card_thumbnail_background"
             android:layout_centerHorizontal="true" >
 
         <ImageView
@@ -42,5 +42,23 @@
                 android:gravity="center" />
 
     </LinearLayout>
-    <include layout="@layout/recents_tv_card_dismiss"/>
+    <ImageView
+            android:id="@+id/dismiss_icon"
+            android:layout_width="@dimen/recents_tv_dismiss_icon_size"
+            android:layout_height="@dimen/recents_tv_dismiss_icon_size"
+            android:layout_gravity="center_horizontal"
+            android:layout_marginTop="@dimen/recents_tv_dismiss_icon_top_margin"
+            android:layout_marginBottom="@dimen/recents_tv_dismiss_icon_bottom_margin"
+            android:alpha="@integer/dismiss_unselected_alpha"
+            android:src="@drawable/recents_tv_dismiss_icon" />
+    <TextView
+            android:id="@+id/card_dismiss_text"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:textSize="@dimen/recents_tv_dismiss_text_size"
+            android:fontFamily="@string/font_roboto_light"
+            android:textColor="@color/recents_tv_dismiss_text_color"
+            android:text="@string/recents_tv_dismiss"
+            android:alpha="0.0"
+            android:layout_gravity="center_horizontal" />
 </com.android.systemui.recents.tv.views.TaskCardView>
\ No newline at end of file
diff --git a/packages/SystemUI/res/layout/brightness_mirror.xml b/packages/SystemUI/res/layout/brightness_mirror.xml
new file mode 100644
index 0000000..bbaff6a
--- /dev/null
+++ b/packages/SystemUI/res/layout/brightness_mirror.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/brightness_mirror"
+    android:layout_width="@dimen/notification_panel_width"
+    android:layout_height="wrap_content"
+    android:layout_gravity="@integer/notification_panel_layout_gravity"
+    android:visibility="invisible">
+    <FrameLayout
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:background="@drawable/brightness_mirror_background"
+        android:elevation="2dp">
+        <include layout="@layout/quick_settings_brightness_dialog"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"/>
+    </FrameLayout>
+</FrameLayout>
diff --git a/packages/SystemUI/res/layout/keyboard_shortcut_app_item.xml b/packages/SystemUI/res/layout/keyboard_shortcut_app_item.xml
index 63b759b..52cab72 100644
--- a/packages/SystemUI/res/layout/keyboard_shortcut_app_item.xml
+++ b/packages/SystemUI/res/layout/keyboard_shortcut_app_item.xml
@@ -26,7 +26,7 @@
             android:id="@+id/keyboard_shortcuts_icon"
             android:layout_width="24dp"
             android:layout_height="24dp"
-            android:layout_marginEnd="32dp"
+            android:layout_marginEnd="24dp"
             android:layout_gravity="center_vertical"
             android:visibility="gone"
             android:layout_alignParentStart="true"
diff --git a/packages/SystemUI/res/layout/keyboard_shortcuts_category_separator.xml b/packages/SystemUI/res/layout/keyboard_shortcuts_category_separator.xml
index 778ef8f..879505e 100644
--- a/packages/SystemUI/res/layout/keyboard_shortcuts_category_separator.xml
+++ b/packages/SystemUI/res/layout/keyboard_shortcuts_category_separator.xml
@@ -21,5 +21,5 @@
     android:layout_marginStart="24dp"
     android:layout_marginTop="8dp"
     android:layout_marginEnd="0dp"
-    android:layout_marginBottom="20dp"
+    android:layout_marginBottom="0dp"
     android:background="?android:attr/dividerHorizontal" />
diff --git a/packages/SystemUI/res/layout/keyboard_shortcuts_category_title.xml b/packages/SystemUI/res/layout/keyboard_shortcuts_category_title.xml
index 381fb16..8414223 100644
--- a/packages/SystemUI/res/layout/keyboard_shortcuts_category_title.xml
+++ b/packages/SystemUI/res/layout/keyboard_shortcuts_category_title.xml
@@ -19,7 +19,8 @@
           android:layout_width="wrap_content"
           android:layout_height="match_parent"
           android:textSize="14sp"
+          android:fontFamily="sans-serif-medium"
           android:paddingStart="24dp"
           android:paddingTop="20dp"
           android:paddingEnd="24dp"
-          android:paddingBottom="13dp"/>
+          android:paddingBottom="10dp"/>
diff --git a/packages/SystemUI/res/layout/notification_guts.xml b/packages/SystemUI/res/layout/notification_guts.xml
index 062ae35..f60a3b6 100644
--- a/packages/SystemUI/res/layout/notification_guts.xml
+++ b/packages/SystemUI/res/layout/notification_guts.xml
@@ -32,7 +32,7 @@
     <LinearLayout
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:paddingTop="14dp"
+            android:paddingTop="15dp"
             android:paddingEnd="8dp"
             android:id="@+id/notification_guts_header"
             android:orientation="horizontal"
@@ -63,6 +63,7 @@
             android:id="@+id/importance_buttons"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
+            android:layout_marginStart="-6dp"
             android:paddingTop="4dp"
             android:paddingEnd="8dp" >
         <RadioButton
@@ -99,6 +100,7 @@
             android:clickable="false"
             android:focusable="false"
             android:paddingEnd="8dp"
+            android:paddingTop="4dp"
             android:visibility="gone">
         <TextView
                 android:id="@+id/title"
@@ -123,21 +125,20 @@
 
         <FrameLayout
                 android:layout_width="match_parent"
-                android:layout_height="48dp"
+                android:layout_height="wrap_content"
                 android:paddingTop="8dp" >
 
             <ImageView
-                    android:id="@+id/low_importance"
-                    android:src="@*android:drawable/ic_notification_block"
+                    android:id="@+id/auto_importance"
+                    android:src="@drawable/notification_auto_importance"
                     android:layout_gravity="center_vertical|start"
-                    android:layout_width="24dp"
-                    android:layout_height="24dp"
-                    android:tint="@color/notification_guts_icon_tint"/>
+                    android:layout_width="48dp"
+                    android:layout_height="48dp" />
 
             <SeekBar
                     android:id="@+id/seekbar"
                     android:layout_marginStart="56dp"
-                    android:layout_marginEnd="56dp"
+                    android:layout_marginEnd="32dp"
                     android:layout_gravity="center_vertical"
                     android:layout_width="match_parent"
                     android:layout_height="48dp"
@@ -149,14 +150,6 @@
                     style="@android:style/Widget.Material.SeekBar.Discrete"
                     android:tickMarkTint="@android:color/black" />
 
-            <ImageView
-                    android:id="@+id/max_importance"
-                    android:src="@*android:drawable/ic_notification_alert"
-                    android:layout_gravity="center_vertical|end"
-                    android:layout_width="24dp"
-                    android:layout_height="24dp"
-                    android:tint="@color/notification_guts_icon_tint" />
-
         </FrameLayout>
     </LinearLayout>
     <!-- buttons -->
diff --git a/packages/SystemUI/res/layout/notification_settings_icon_row.xml b/packages/SystemUI/res/layout/notification_settings_icon_row.xml
index f47083a..da3461b90 100644
--- a/packages/SystemUI/res/layout/notification_settings_icon_row.xml
+++ b/packages/SystemUI/res/layout/notification_settings_icon_row.xml
@@ -24,12 +24,9 @@
 
     <com.android.systemui.statusbar.AlphaOptimizedImageView
         android:id="@+id/gear_icon"
-        android:layout_width="@dimen/notification_gear_width"
-        android:layout_height="@dimen/notification_gear_height"
-        android:paddingTop="@dimen/notification_gear_top_padding"
-        android:paddingStart="@dimen/notification_gear_padding"
-        android:paddingEnd="@dimen/notification_gear_padding"
-        android:paddingBottom="@dimen/notification_gear_padding"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:padding="@dimen/notification_gear_padding"
         android:src="@drawable/ic_settings"
         android:tint="@color/notification_gear_color"
         android:alpha="0"
diff --git a/packages/SystemUI/res/layout/power_notification_controls_settings.xml b/packages/SystemUI/res/layout/power_notification_controls_settings.xml
new file mode 100644
index 0000000..83c8a51
--- /dev/null
+++ b/packages/SystemUI/res/layout/power_notification_controls_settings.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical">
+
+    <include layout="@layout/switch_bar" />
+
+    <TextView
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:padding="16dp"
+            android:text="@string/power_notification_controls_description"/>
+
+</LinearLayout>
diff --git a/packages/SystemUI/res/layout/qs_detail.xml b/packages/SystemUI/res/layout/qs_detail.xml
index af2a285..32839d8 100644
--- a/packages/SystemUI/res/layout/qs_detail.xml
+++ b/packages/SystemUI/res/layout/qs_detail.xml
@@ -44,11 +44,15 @@
         android:layout_height="wrap_content"
         />
 
-    <FrameLayout
+    <ScrollView
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1">
+        <FrameLayout
             android:id="@android:id/content"
             android:layout_width="match_parent"
-            android:layout_height="0dp"
-            android:layout_weight="1" />
+            android:layout_height="wrap_content" />
+    </ScrollView>
 
     <include layout="@layout/qs_detail_buttons" />
 
diff --git a/packages/SystemUI/res/layout/qs_paged_tile_layout.xml b/packages/SystemUI/res/layout/qs_paged_tile_layout.xml
index 55d7fab..68129ce 100644
--- a/packages/SystemUI/res/layout/qs_paged_tile_layout.xml
+++ b/packages/SystemUI/res/layout/qs_paged_tile_layout.xml
@@ -45,7 +45,7 @@
             android:layout_gravity="end"
             android:minWidth="88dp"
             android:textAppearance="@style/TextAppearance.QS.DetailButton"
-            android:textColor="#4DFFFFFF"
+            android:textColor="#64FFFFFF"
             android:focusable="true"
             android:text="@string/qs_edit" />
 
diff --git a/packages/SystemUI/res/layout/qs_panel.xml b/packages/SystemUI/res/layout/qs_panel.xml
index ef15195..751f181 100644
--- a/packages/SystemUI/res/layout/qs_panel.xml
+++ b/packages/SystemUI/res/layout/qs_panel.xml
@@ -20,7 +20,8 @@
         android:layout_height="wrap_content"
         android:background="@drawable/qs_background_primary"
         android:clipToPadding="false"
-        android:clipChildren="false">
+        android:clipChildren="false"
+        android:elevation="4dp">
 
     <com.android.systemui.qs.QSPanel
             android:id="@+id/quick_settings_panel"
diff --git a/packages/SystemUI/res/layout/recents_incompatible_app_overlay.xml b/packages/SystemUI/res/layout/recents_incompatible_app_overlay.xml
index 2b49dd3..d2daa89 100644
--- a/packages/SystemUI/res/layout/recents_incompatible_app_overlay.xml
+++ b/packages/SystemUI/res/layout/recents_incompatible_app_overlay.xml
@@ -26,5 +26,6 @@
         android:layout_gravity="center"
         android:drawableTop="@drawable/recents_info_light"
         android:drawablePadding="8dp"
-        android:text="@string/recents_incompatible_app_message" />
+        android:text="@string/recents_incompatible_app_message"
+        android:textColor="@android:color/white" />
 </FrameLayout>
\ No newline at end of file
diff --git a/packages/SystemUI/res/layout/recents_stack_action_button.xml b/packages/SystemUI/res/layout/recents_stack_action_button.xml
index 625e9c1..43b3de1 100644
--- a/packages/SystemUI/res/layout/recents_stack_action_button.xml
+++ b/packages/SystemUI/res/layout/recents_stack_action_button.xml
@@ -32,4 +32,5 @@
     android:shadowRadius="5"
     android:fontFamily="sans-serif-medium"
     android:background="?android:selectableItemBackground"
-    android:visibility="invisible" />
+    android:visibility="invisible"
+    android:forceHasOverlappingRendering="false" />
diff --git a/packages/SystemUI/res/layout/recents_task_view_header.xml b/packages/SystemUI/res/layout/recents_task_view_header.xml
index 2df57bf..5ee242d 100644
--- a/packages/SystemUI/res/layout/recents_task_view_header.xml
+++ b/packages/SystemUI/res/layout/recents_task_view_header.xml
@@ -43,7 +43,8 @@
         android:singleLine="true"
         android:maxLines="1"
         android:ellipsize="marquee"
-        android:fadingEdge="horizontal" />
+        android:fadingEdge="horizontal"
+        android:forceHasOverlappingRendering="false" />
     <com.android.systemui.recents.views.FixedSizeImageView
         android:id="@+id/move_task"
         android:layout_width="wrap_content"
diff --git a/packages/SystemUI/res/layout/remote_input.xml b/packages/SystemUI/res/layout/remote_input.xml
index 7460201..2db97a6 100644
--- a/packages/SystemUI/res/layout/remote_input.xml
+++ b/packages/SystemUI/res/layout/remote_input.xml
@@ -22,8 +22,7 @@
         android:theme="@style/systemui_theme_remote_input"
         android:id="@+id/remote_input"
         android:layout_height="match_parent"
-        android:layout_width="match_parent"
-        android:paddingEnd="12dp">
+        android:layout_width="match_parent">
 
     <view class="com.android.systemui.statusbar.policy.RemoteInputView$RemoteEditText"
             android:id="@+id/remote_input_text"
@@ -48,19 +47,17 @@
 
     <FrameLayout
             android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center_vertical"
-            android:paddingTop="2dp"
-            android:paddingBottom="4dp">
+            android:layout_height="match_parent"
+            android:layout_gravity="center_vertical">
 
         <ImageButton
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
                 android:paddingStart="12dp"
-                android:paddingEnd="12dp"
-                android:paddingTop="12dp"
-                android:paddingBottom="12dp"
+                android:paddingEnd="24dp"
+                android:paddingTop="16dp"
+                android:paddingBottom="16dp"
                 android:id="@+id/remote_input_send"
                 android:src="@drawable/ic_send"
                 android:contentDescription="@*android:string/ime_action_send"
@@ -72,6 +69,7 @@
                 android:id="@+id/remote_input_progress"
                 android:layout_width="24dp"
                 android:layout_height="24dp"
+                android:layout_marginEnd="6dp"
                 android:layout_gravity="center"
                 android:visibility="invisible"
                 android:indeterminate="true"
diff --git a/packages/SystemUI/res/layout/signal_cluster_view.xml b/packages/SystemUI/res/layout/signal_cluster_view.xml
index 9df5dbf..d17601c 100644
--- a/packages/SystemUI/res/layout/signal_cluster_view.xml
+++ b/packages/SystemUI/res/layout/signal_cluster_view.xml
@@ -19,6 +19,7 @@
 <!-- extends LinearLayout -->
 <com.android.systemui.statusbar.SignalClusterView
     xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/signal_cluster"
     android:layout_height="match_parent"
     android:layout_width="wrap_content"
     android:gravity="center_vertical"
diff --git a/packages/SystemUI/res/layout/status_bar_expanded.xml b/packages/SystemUI/res/layout/status_bar_expanded.xml
index ccefb5f..658571e 100644
--- a/packages/SystemUI/res/layout/status_bar_expanded.xml
+++ b/packages/SystemUI/res/layout/status_bar_expanded.xml
@@ -39,8 +39,8 @@
         android:clipToPadding="false"
         android:clipChildren="false">
 
-        <com.android.systemui.DensityContainer
-            android:id="@+id/qs_density_container"
+        <com.android.systemui.AutoReinflateContainer
+            android:id="@+id/qs_auto_reinflate_container"
             android:layout="@layout/qs_panel"
             android:layout_width="@dimen/notification_panel_width"
             android:layout_height="match_parent"
diff --git a/packages/SystemUI/res/layout/super_status_bar.xml b/packages/SystemUI/res/layout/super_status_bar.xml
index 7c4ce15..285a8ec 100644
--- a/packages/SystemUI/res/layout/super_status_bar.xml
+++ b/packages/SystemUI/res/layout/super_status_bar.xml
@@ -62,21 +62,7 @@
         android:layout_width="match_parent"
         android:layout_height="@dimen/status_bar_height" />
 
-    <FrameLayout android:id="@+id/brightness_mirror"
-                 android:layout_width="@dimen/notification_panel_width"
-                 android:layout_height="wrap_content"
-                 android:layout_gravity="@integer/notification_panel_layout_gravity"
-                 android:visibility="invisible">
-        <FrameLayout
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:elevation="2dp"
-                android:background="@drawable/brightness_mirror_background">
-            <include layout="@layout/quick_settings_brightness_dialog"
-                     android:layout_width="match_parent"
-                     android:layout_height="wrap_content" />
-        </FrameLayout>
-    </FrameLayout>
+    <include layout="@layout/brightness_mirror" />
 
     <ViewStub android:id="@+id/fullscreen_user_switcher_stub"
               android:layout="@layout/car_fullscreen_user_switcher"
diff --git a/packages/SystemUI/res/layout/system_icons.xml b/packages/SystemUI/res/layout/system_icons.xml
index e9448db..3a33992 100644
--- a/packages/SystemUI/res/layout/system_icons.xml
+++ b/packages/SystemUI/res/layout/system_icons.xml
@@ -27,7 +27,6 @@
         android:orientation="horizontal"/>
 
     <include layout="@layout/signal_cluster_view"
-        android:id="@+id/signal_cluster"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_marginStart="@dimen/signal_cluster_margin_start"/>
diff --git a/packages/SystemUI/res/layout/tv_pip_control_button.xml b/packages/SystemUI/res/layout/tv_pip_control_button.xml
index 0beeda1..f18a5da 100644
--- a/packages/SystemUI/res/layout/tv_pip_control_button.xml
+++ b/packages/SystemUI/res/layout/tv_pip_control_button.xml
@@ -38,5 +38,6 @@
         android:alpha="0"
         android:fontFamily="sans-serif"
         android:textSize="12sp"
-        android:textColor="#EEEEEE" />
+        android:textColor="#EEEEEE"
+        android:importantForAccessibility="no" />
 </merge>
diff --git a/packages/SystemUI/res/layout/tv_pip_onboarding.xml b/packages/SystemUI/res/layout/tv_pip_onboarding.xml
index 288ad1e..fe80b94 100644
--- a/packages/SystemUI/res/layout/tv_pip_onboarding.xml
+++ b/packages/SystemUI/res/layout/tv_pip_onboarding.xml
@@ -21,8 +21,13 @@
     android:id="@+id/pip_onboarding"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:background="#B3000000"
     android:orientation="vertical">
+    <View
+        android:id="@+id/background"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:background="#000000"
+        android:alpha="0" />
 
     <ImageView
         android:id="@+id/remote"
diff --git a/packages/SystemUI/res/layout/tv_pip_recents_overlay.xml b/packages/SystemUI/res/layout/tv_pip_recents_overlay.xml
index 1e464d8..4a67000 100644
--- a/packages/SystemUI/res/layout/tv_pip_recents_overlay.xml
+++ b/packages/SystemUI/res/layout/tv_pip_recents_overlay.xml
@@ -23,7 +23,7 @@
     <com.android.systemui.tv.pip.PipRecentsControlsView
         android:id="@+id/pip_controls"
         android:layout_width="wrap_content"
-        android:layout_height="match_parent" />
+        android:layout_height="wrap_content" />
 
     <View
         android:id="@+id/recents"
diff --git a/packages/SystemUI/res/layout/volume_dialog.xml b/packages/SystemUI/res/layout/volume_dialog.xml
index baec8ef..d3f2a25 100644
--- a/packages/SystemUI/res/layout/volume_dialog.xml
+++ b/packages/SystemUI/res/layout/volume_dialog.xml
@@ -29,15 +29,10 @@
         android:layout_height="wrap_content"
         android:orientation="vertical"
         android:paddingBottom="8dp"
-        android:paddingStart="8dp">
+        android:paddingStart="8dp"
+        android:animateLayoutChanges="true" >
 
         <!-- volume rows added and removed here! :-) -->
-        <LinearLayout
-                android:id="@+id/volume_row_container"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_marginEnd="@dimen/volume_button_size"
-                android:orientation="vertical"/>
 
         <include layout="@layout/volume_zen_footer" />
 
diff --git a/packages/SystemUI/res/layout/volume_dialog_row.xml b/packages/SystemUI/res/layout/volume_dialog_row.xml
index 57bac41..f0ae1c9 100644
--- a/packages/SystemUI/res/layout/volume_dialog_row.xml
+++ b/packages/SystemUI/res/layout/volume_dialog_row.xml
@@ -18,7 +18,8 @@
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:clipChildren="false"
-    android:id="@+id/volume_dialog_row" >
+    android:id="@+id/volume_dialog_row"
+    android:paddingEnd="@dimen/volume_button_size" >
 
     <TextView
         android:id="@+id/volume_row_header"
diff --git a/packages/SystemUI/res/values-af/strings.xml b/packages/SystemUI/res/values-af/strings.xml
index 8dff1c7..25ef7be 100644
--- a/packages/SystemUI/res/values-af/strings.xml
+++ b/packages/SystemUI/res/values-af/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Datasein vol."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Gekoppel aan <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Gekoppel aan <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Geen WiMAX nie."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX een strepie."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX twee strepies."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Geen SIM nie."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Sellulêre data is af"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth-verbinding."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Vliegtuigmodus."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Geen SIM-kaart nie."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Diensverskaffernetwerk verander tans."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Battery <xliff:g id="NUMBER">%d</xliff:g> persent."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Battery laai tans, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> persent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Stelselinstellings"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Kennisgewings"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Verwyder kennisgewing"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Moenie steur nie aan, net prioriteit."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Moenie steur nie; volkome stilte."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\'Moenie steur nie\' is aan, net wekkers."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Moenie steur nie af."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Moenie steur nie is afgeskakel."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Moenie steur nie is aangeskakel."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth af."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth aan."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth koppel tans."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Skerm is nou in landskapsoriëntering gesluit."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Skerm is nou in portretoriëntering gesluit."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Nageregkas"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Sluimer"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Sluimerskerm"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Moenie steur nie"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Net prioriteit"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Geen saamgebinde toestelle beskikbaar nie"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Helderheid"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Outo-draai"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotasie is gesluit"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portret"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Landskap"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Nie gekoppel nie"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Geen netwerk nie"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi af"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Geen Wi-Fi-netwerke beskikbaar nie"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Saai uit"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Saai tans uit"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Kon nie <xliff:g id="APP">%s</xliff:g> begin nie."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> is in veiligmodus gedeaktiveer."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Vee alles uit"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Hierdie program steun nie veelvuldige vensters nie"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Program steun nie veelvuldige vensters nie"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Program steun nie verdeelde skerm nie."</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Trek hier om verdeelde skerm te gebruik"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Verdeel horisontaal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Verdeel vertikaal"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Verdeel gepasmaak"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> is die volumedialoog"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Raak om die oorspronklike terug te stel."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Jy gebruik tans jou werkprofiel"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Tik om te ontdemp."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Tik om op vibreer te stel. Toeganklikheidsdienste kan dalk gedemp wees."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Tik om te demp. Toeganklikheidsdienste kan dalk gedemp wees."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Stelsel-UI-ontvanger"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Wys persentasie van ingebedde battery"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Blokkeer alle kennisgewings"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Moenie stilmaak nie"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Moenie stilmaak of blokkeer nie"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Wys volledige belangrikheidinstellings"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Geblokkeer"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Onbelangrik"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Min belang"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normale belang"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Groot belang"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Dringende belang"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Moet nooit hierdie kennisgewings wys nie"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Wys sonder klank aan die onderkant van die kennisgewinglys"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Wys hierdie kennisgewings sonder klank"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Laat hierdie kennisgewing toe om geluide te maak"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Verskyn vlugtig op die skerm en laat klank toe"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Wys boaan die kennisgewingslys, verskyn vlugtig op die skerm en laat klank toe"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Kragkennisgewingkontroles"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Aan"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Af"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Met kragkennisgewingkontroles kan jy \'n belangrikheidvlak van 0 tot 5 vir \'n program se kennisgewings stel. \n\n"<b>"Vlak 5"</b>" \n- Wys aan die bokant van die kennisgewinglys \n- Laat volskermonderbreking toe \n- Wys altyd opspringkennisgewings \n\n"<b>"Vlak 4"</b>" \n- Verhoed volskermonderbreking \n- Wys altyd opspringkennisgewings \n\n"<b>"Vlak 3"</b>" \n- Verhoed volskermonderbreking \n- Verhoed opspringkennisgewings \n\n"<b>"Vlak 2"</b>" \n- Verhoed volskermonderbreking \n- Verhoed opspringkennisgewings \n- Moet nooit \'n klank maak of vibreer nie \n\n"<b>"Vlak 1"</b>" \n- Verhoed volskermonderbreking \n- Verhoed opspringkennisgewings \n- Moet nooit \'n klank maak of vibreer nie \n- Versteek van sluitskerm en statusbalk \n- Wys aan die onderkant van die kennisgewinglys \n\n"<b>"Vlak 0"</b>" \n- Blokkeer alle kennisgewings van die program af"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Belangrikheid: Outomaties"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Belangrikheid: Vlak 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Belangrikheid: Vlak 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Belangrikheid: Vlak 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Belangrikheid: Vlak 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Belangrikheid: Vlak 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Belangrikheid: Vlak 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Program bepaal hoe belangrik elke kennisgewing is."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Moet nooit kennisgewings van hierdie program af wys nie."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Geen volskermonderbreking, opspringkennisgewings, klank of vibrasie nie. Versteek van sluitskerm en statusbalk."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Geen volskermonderbreking, opspringkennisgewings, klank of vibrasie nie."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Geen volskermonderbreking of opspringkennisgewings nie."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Wys altyd opspringkennisgewings. Geen volskermonderbreking nie."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Wys opspringkennisgewings altyd en laat volskermonderbreking toe."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Meer instellings"</string>
     <string name="notification_done" msgid="5279426047273930175">"Klaar"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g>-kennisgewingkontroles"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Ander"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Skermverdeler"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Skuif af"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Skuif op"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Skuif links"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Skuif regs"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Volskerm links"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Links 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Links 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Links 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Volskerm regs"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Volskerm bo"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Bo 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Bo 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Bo 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Volskerm onder"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posisie <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Dubbeltik om te wysig."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Dubbeltik om by te voeg."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posisie <xliff:g id="POSITION">%1$d</xliff:g>. Dubbeltik om te kies."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> is verwyder"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> is na posisie <xliff:g id="POSITION">%2$d</xliff:g> geskuif"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Kitsinstellingswysiger."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Program sal dalk nie met verdeelde skerm werk nie."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Program steun nie verdeelde skerm nie."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Bladsy <xliff:g id="ID_1">%1$d</xliff:g> van <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-af/strings_tv.xml b/packages/SystemUI/res/values-af/strings_tv.xml
index 0ed4860..6509187 100644
--- a/packages/SystemUI/res/values-af/strings_tv.xml
+++ b/packages/SystemUI/res/values-af/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Speel"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Laat wag"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Hou "<b>"TUIS"</b>" om PIP te beheer"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Druk en hou die TUIS-knoppie om PIP te beheer"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Het dit"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Maak toe"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-am/strings.xml b/packages/SystemUI/res/values-am/strings.xml
index 7f6c6b2..9132656 100644
--- a/packages/SystemUI/res/values-am/strings.xml
+++ b/packages/SystemUI/res/values-am/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"የውሂብ አመልካች ሙሉ ነው።"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"ከ<xliff:g id="WIFI">%s</xliff:g> ጋር ተገናኝቷል።"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"ከ<xliff:g id="BLUETOOTH">%s</xliff:g> ጋር ተገናኝቷል።"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"ምንም WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX አንድ አሞሌ።"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX ሁለት አሞሌዎች።"</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"ምንም SIM የለም።"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"የተንቀሳቃሽ ስልክ ውሂብ ጠፍቷል"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ብሉቱዝ ማያያዝ።"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"የአውሮፕላን ሁነታ።"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"ምንም SIM ካርድ የለም።"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"የአገልግሎት አቅራቢ አውታረ መረብን በመቀየር ላይ።"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"የባትሪ <xliff:g id="NUMBER">%d</xliff:g> መቶኛ።"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"ባትሪ ኃይል በመሙላት ላይ፣ <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> በመቶ።"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"የስርዓት ቅንብሮች"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"ማሳወቂያዎች"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"ማሳወቂያ አጽዳ"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"አትረብሽ በርቷል፣ ቅድሚያ የሚሰጠው ብቻ።"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"አትረብሽ በርቷል፣ ሙሉ ለሙሉ ጸጥታ።"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"አትረብሽ በርቷል፣ ማንቂያዎች ብቻ።"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"አትረብሽ ጠፍቷል።"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"አትረብሽ ጠፍቷል።"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"አትረብሽ በርቷል።"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"ብሉቱዝ ጠፍቷል።"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"ብሉቱዝ በርቷል።"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"ብሉቱዝ በመገናኘት ላይ።"</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"ማያ ገጽ አሁን በወርድ አቀማመጠ-ገፅ ተቆልፏል።"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"ማያ ገጽ አሁን በቁም አቀማመጠ-ገፅ ተቆልፏል።"</string>
     <string name="dessert_case" msgid="1295161776223959221">"የማወራረጃ ምግቦች መያዣ"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"የቀን ህልም"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"የማያ ገጽ ማቆያ"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ኤተርኔት"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"አትረብሽ"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"ቅድሚያ የሚሰጠው ብቻ"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"ምንም የተጣመሩ መሣሪያዎች አይገኝም"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"ብሩህነት"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"በራስ ሰር አሽከርክር"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"አዙሪት ተቆልፏል"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"በቁመት"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"በወርድ"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"አልተገናኘም"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"ምንም አውታረ መረብ የለም"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi ጠፍቷል"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"ምንም የWi-Fi  አውታረ መረቦች የሉም"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"ውሰድ"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"በመውሰድ ላይ"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g>ን መጀመር አልተቻለም።"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> በጥንቃቄ ሁነታ ውስጥ ታግዷል።"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"ሁሉንም አጽዳ"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"ይህ መተግበሪያ ብዝሃ-መስኮትን አይደግፍም"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"መተግበሪያው ብዝሃ-መስኮትን አይደግፍም"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"መተግበሪያው የተከፈለ ማያ ገጽን አይደግፍም"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"የተከፈለ ማያ ገጽን ለመጠቀም እዚህ ላይ ይጎትቱ"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"አግድም ክፈል"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"ቁልቁል ክፈል"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"በብጁ ክፈል"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> የድምጽ መጠን መገናኛው ነው"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"የመጀመሪያውን ወደነበረበት ለመመለስ ይንኩ።"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"የስራ መገለጫዎን እየተጠቀሙ ነው"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s። ድምጸ-ከል ለማድረግ መታ ያድርጉ"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s። ወደ ንዝረት ለማቀናበር መታ ያድርጉ። የተደራሽነት አገልግሎቶች ድምጸ-ከል ሊደረግባቸው ይችላል።"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s። ድምጸ-ከል ለማድረግ መታ ያድርጉ። የተደራሽነት አገልግሎቶች ድምጸ-ከል ሊደረግባቸው ይችላል።"</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"የስርዓት በይነገጽ መቃኛ"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"የተቀላቀለ የባትሪ አጠቃቀም መቶኛ አሳይ"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"ሁሉንም ማሳወቂያዎች አግድ"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"ድምፅ አትዝጋ"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"ድምፅ አትዝጋ ወይም አታግድ"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"ሙሉ የአስፈላጊነት ቅንብሮችን አሳይ"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"የታገዱ"</string>
-    <string name="min_importance" msgid="1901894910809414782">"አነስተኛ አስፈላጊነት"</string>
-    <string name="low_importance" msgid="4109929986107147930">"ዝቅተኛ አስፈላጊነት"</string>
-    <string name="default_importance" msgid="8192107689995742653">"መደበኛ አስፈላጊነት"</string>
-    <string name="high_importance" msgid="1527066195614050263">"ከፍተኛ አስፈላጊነት"</string>
-    <string name="max_importance" msgid="5089005872719563894">"አስቸኳይ አስፈላጊነት"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"እነዚህን ማሳወቂያዎች በጭራሽ አታሳይ"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"በማሳወቂያ ዝርዝሩ ታችኛውን ክፍል ላይ በጸጥታ አሳይ"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"እነዚህን ማሳወቂያዎች በጸጥታ አሳይ"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"እነዚህ ማሳወቂያዎች ድምፆችን እንዲፈጥሩ ፍቀድ"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"ወደ ማያ ገጹ አስገባና ድምፅ ፍቀድ"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"በማሳወቂያዎች ዝርዝር አናት ላይ አሳይ፣ ወደ ማያ ገጹ አሳይና ድምፅ ፍቀድ"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"የኃይል ማሳወቂያ መቆጣጠሪያዎች"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"በርቷል"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"ጠፍቷል"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"በኃይል ማሳወቂያ መቆጣጠሪያዎች አማካኝነት የአንድ መተግበሪያ ማሳወቂያዎች የአስፈላጊነት ደረጃ ከ0 እስከ 5 ድረስ ማዘጋጀት ይችላሉ። \n\n"<b>"ደረጃ 5"</b>" \n- በማሳወቂያ ዝርዝሩ አናት ላይ አሳይ \n- የሙሉ ማያ ገጽ ማቋረጥን ፍቀድ \n- ሁልጊዜ አጮልቀው ይመልከቱ \n\n"<b>"ደረጃ 4"</b>" \n- የሙሉ ማያ ገጽ ማቋረጥን ከልክል \n- ሁልጊዜ አጮልቀው ይመልከቱ \n\n"<b>"ደረጃ 3"</b>" \n- የሙሉ ማያ ገጽ ማቋረጥን ከልክል \n- በፍጹም አጮልቀው አይምልከቱ \n\n"<b>"ደረጃ 2"</b>" \n- የሙሉ ማያ ገጽ ማቋረጥን ይከልክሉ \n- በፍጹም አጮልቀው አይመልከቱ \n- ድምፅ እና ንዝረትን በፍጹም አይኑር \n\n"<b>"ደረጃ 1"</b>" \n- የሙሉ ማያ ገጽ ማቋረጥን ይከልክሉ \n- በፍጹም አጮልቀው አይመልከቱ \n- ድምፅ ወይም ንዝረትን በፍጹም አያደርጉ \n- ከመቆለፊያ ገጽ እና የሁኔታ አሞሌ ይደብቁ \n- በማሳወቂያ ዝርዝር ግርጌ ላይ አሳይ \n\n"<b>"ደረጃ 0"</b>" \n- ሁሉንም የመተግበሪያው ማሳወቂያዎች ያግዱ"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"አስፈላጊነት፦ ራስ-ሰር"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"አስፈላጊነት፦ ደረጃ 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"አስፈላጊነት፦ ደረጃ 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"አስፈላጊነት፦ ደረጃ 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"አስፈላጊነት፦ ደረጃ 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"አስፈላጊነት፦ ደረጃ 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"አስፈላጊነት፦ ደረጃ 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"መተግበሪያው የእያንዳንዱ ማሳወቂያ አስፈላጊነት ይወስናል።"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"የዚህ መተግበሪያ ማሳወቂያዎችን በፍጹም አታሳይ።"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"ምንም የሙሉ ማያ ማቋረጥ፣ አጮልቆ ማየት፣ ድምፅ ወይም ንዝረት የለም። ከመቆለፍያ ገጽ እና የሁኔታ አሞሌ ይደብቁ።"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"ምንም የሙሉ ማያ ማቋረጥ፣ አጮልቆ ማየት፣ ድምፅ ወይም ንዝረት የለም።"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"ምንም የሙሉ ማያ ማቋረጥ ወይም አጮልቆ ማየት የለም።"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"ሁልጊዜ አጮልቀው ይመልከቱ። ምንም የሙሉ ማያ ማቋረጥ የለም።"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"ሁልጊዜ አጮልቀው ይመልከቱ፣ እና የሙሉ ማያ ገጽ ማቋረጥ ይፍቀዱ።"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"ተጨማሪ ቅንብሮች"</string>
     <string name="notification_done" msgid="5279426047273930175">"ተከናውኗል"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> ማሳወቂያ ቁጥጥሮች"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"ሌላ"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"የተከፈለ የማያ ገጽ ከፋይ"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"ወደ ታች ሂድ"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"ወደ ላይ ሂድ"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"ወደ ግራ ሂድ"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"ወደ ቀኝ ሂድ"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"የግራ ሙሉ ማያ ገጽ"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"ግራ 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"ግራ 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"ግራ 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"የቀኝ ሙሉ ማያ ገጽ"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"የላይ ሙሉ ማያ ገጽ"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"ከላይ 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"ከላይ 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"ከላይ 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"የታች ሙሉ ማያ ገጽ"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"ቦታ <xliff:g id="POSITION">%1$d</xliff:g>፣ <xliff:g id="TILE_NAME">%2$s</xliff:g>። ለማርትዕ ሁለቴ መታ ያድርጉ።"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>። ለማከል ሁለቴ መታ ያድርጉ።"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"ቦታ <xliff:g id="POSITION">%1$d</xliff:g>። ለመምረጥ ሁለቴ መታ ያድርጉ።"</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ተወግዷል"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ወደ ቦታ <xliff:g id="POSITION">%2$d</xliff:g> ተወስዷል"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"የፈጣን ቅንብሮች አርታዒ።"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"መተግበሪያ ከተከፈለ ማያ ገጽ ጋር ላይሠራ ይችላል"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"መተግበሪያው የተከፈለ ማያ ገጽን አይደግፍም።"</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"ገጽ <xliff:g id="ID_1">%1$d</xliff:g> ከ <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-am/strings_tv.xml b/packages/SystemUI/res/values-am/strings_tv.xml
index 9df1916..90c7c03 100644
--- a/packages/SystemUI/res/values-am/strings_tv.xml
+++ b/packages/SystemUI/res/values-am/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"አጫውት"</string>
     <string name="pip_pause" msgid="8412075640017218862">"ለአፍታ አቁም"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIPን ለመቆጣጠር "<b>"መነሻ"</b>"ን ይያዙ"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIPን ለመቆጣጠር የመነሻ አዝራሩን ተጭነው ይያዙ"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"ገባኝ"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"አሰናብት"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ar/strings.xml b/packages/SystemUI/res/values-ar/strings.xml
index 1b1d280..da7242a 100644
--- a/packages/SystemUI/res/values-ar/strings.xml
+++ b/packages/SystemUI/res/values-ar/strings.xml
@@ -122,6 +122,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"إشارة البيانات كاملة."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"متصل بـ <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"متصل بـ <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"‏ليس هناك WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"‏شريط WiMAX واحد."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"‏شريطا WiMAX."</string>
@@ -152,12 +154,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"‏ليست هناك شريحة SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"تم تعطيل بيانات شبكة الجوّال"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ربط البلوتوث."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"وضع الطائرة."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"‏ليس هناك شريحة SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"جارٍ تغيير شبكة مشغِّل شبكة الجوّال."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"مستوى البطارية <xliff:g id="NUMBER">%d</xliff:g> في المائة."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"جارٍ شحن البطارية، <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> بالمائة."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"إعدادات النظام."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"الإشعارات."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"محو الإشعار."</string>
@@ -195,9 +204,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"تم تشغيل الرجاء عدم الإزعاج، الأولوية فقط."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"تم تشغيل الرجاء عدم الإزعاج، كتم الصوت تمامًا."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"تم تشغيل الرجاء عدم الإزعاج، التنبيهات فقط."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"تم تعطيل \"الرجاء عدم الإزعاج\"."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"تم تعطيل \"الرجاء عدم الإزعاج\"."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"تم تشغيل \"الرجاء عدم الإزعاج\"."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"إيقاف البلوتوث."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"تشغيل البلوتوث."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"جارٍ توصيل البلوتوث."</string>
@@ -251,7 +264,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"تم قفل الشاشة الآن في الاتجاه الأفقي."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"تم قفل الشاشة الآن في الاتجاه الرأسي."</string>
     <string name="dessert_case" msgid="1295161776223959221">"حالة الحلويات"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"حلم اليقظة"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"شاشة التوقف"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"الرجاء عدم الإزعاج"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"الأولوية فقط"</string>
@@ -263,6 +276,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"لا يتوفر أي أجهزة مقترنة"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"السطوع"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"دوران تلقائي"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"تم قفل التدوير"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"عمودي"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"أفقي"</string>
@@ -281,6 +298,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"ليست متصلة"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"لا تتوفر شبكة"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"‏إيقاف Wi-Fi"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"‏لا تتوفر أية شبكة Wi-Fi"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"إرسال"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"جارٍ الإرسال"</string>
@@ -315,8 +334,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"تعذر بدء <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"تم تعطيل <xliff:g id="APP">%s</xliff:g> في الوضع الآمن."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"مسح الكل"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"لا يتيح هذا التطبيق النوافذ المتعددة."</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"لا يتيح التطبيق النوافذ المتعددة."</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"لا تتوفر في التطبيق إمكانية تقسيم الشاشة"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"اسحب هنا لاستخدام وضع تقسيم الشاشة"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"تقسيم أفقي"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"تقسيم رأسي"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"تقسيم مخصص"</string>
@@ -424,11 +443,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> هو مربع حوار مستوى الصوت"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"المس لاستعادة الإعداد الأصلي."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"أنت تستخدم ملفك الشخصي للعمل"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"‏%1$s. انقر لإلغاء التجاهل."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"‏%1$s. انقر للتعيين على الاهتزاز. قد يتم تجاهل خدمات إمكانية الوصول."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"‏%1$s. انقر للتجاهل. قد يتم تجاهل خدمات إمكانية الوصول."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"أداة ضبط واجهة مستخدم النظام"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"عرض نسبة البطارية المدمجة"</string>
@@ -474,19 +494,24 @@
     <string name="block" msgid="2734508760962682611">"حظر كل الإشعارات"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"عدم كتم التنبيه الصوتي"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"عدم كتم التنبيه الصوتي أو حظر الإشعار"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"عرض الإعدادات الكاملة لمدى الأهمية"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"تم الحظر"</string>
-    <string name="min_importance" msgid="1901894910809414782">"الأقل أهمية"</string>
-    <string name="low_importance" msgid="4109929986107147930">"أهمية منخفضة"</string>
-    <string name="default_importance" msgid="8192107689995742653">"أهمية عادية"</string>
-    <string name="high_importance" msgid="1527066195614050263">"أهمية عالية"</string>
-    <string name="max_importance" msgid="5089005872719563894">"أهمية ملحَّة"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"عدم عرض هذه الإشعارات"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"عرض الإشعار بأسفل قائمة الإشعارات بدون تنبيه صوتي"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"عرض هذه الإشعارات بدون تنبيه صوتي"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"السماح لهذه الإشعارات بإصدار تنبيهات صوتية"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"يتم عرض الإشعار بسرعة على الشاشة مع السماح بإصدار تنبيه صوتي"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"عرض هذا الإشعار بأعلى قائمة الإشعارات وعرضه بسرعة على الشاشة مع السماح بإصدار تنبيه صوتي"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"عناصر التحكم في إشعارات التشغيل"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"تشغيل"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"إيقاف"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"باستخدام عناصر التحكم في إشعار التشغيل، يمكنك تعيين مستوى الأهمية من 0 إلى 5 لإشعارات التطبيق. \n\n"<b>"المستوى 5"</b>" \n- العرض أعلى قائمة الإشعارات \n- يسمح بمقاطعة ملء الشاشة \n- الظهور الخاطف دائمًا \n\n"<b>"المستوى 4"</b>" \n- منع مقاطعة ملء الشاشة \n- الظهور الخاطف دائمًا \n\n"<b>"المستوى 3"</b>" \n- منع مقاطعة ملء الشاشة \n- عدم الظهور الخاطف أبدًا \n\n"<b>"المستوى 2"</b>" \n- منع مقاطعة ملء الشاشة \n- عدم الظهور الخاطف أبدًا \n- عدم إصدار أصوات واهتزاز \n\n"<b>"المستوى 1"</b>" \n- منع مقاطعة ملء الشاشة \n- عدم الظهور الخاطف أبدًا \n- عدم إصدار أصوات أو اهتزاز أبدًا \n- الإخفاء من شاشة التأمين وشريط الحالة \n- العرض أسفل قائمة الإشعارات \n\n"<b>"المستوى 0"</b>" \n- حظر جميع الإشعارات من التطبيق"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"الأهمية: تلقائي"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"الأهمية: المستوى 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"الأهمية: المستوى 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"الأهمية: المستوى 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"الأهمية: المستوى 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"الأهمية: المستوى 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"الأهمية: المستوى 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"يحدد التطبيق مدى أهمية كل إشعار."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"عدم عرض إشعارات من هذا التطبيق أبدًا."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"عدم المقاطعة بظهور خاطف أو بملء الشاشة أو بصوت أو اهتزاز. الإخفاء من شاشة التأمين وشريط الحالة."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"عدم المقاطعة بظهور خاطف أو بملء الشاشة أو بصوت أو اهتزاز."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"عدم المقاطعة بظهور خاطف أو بملء الشاشة."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"الظهور الخاطف دائمًا. عدم المقاطعة بملء الشاشة."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"الظهور الخاطف دائمًا، والسماح بمقاطعة ملء الشاشة."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"المزيد من الإعدادات"</string>
     <string name="notification_done" msgid="5279426047273930175">"تم"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"عناصر التحكم في إشعارات <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -601,10 +626,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"غير ذلك"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"أداة تقسيم الشاشة"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"نقل لأسفل"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"نقل لأعلى"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"نقل لليسار"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"نقل لليمين"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"عرض النافذة اليسرى بملء الشاشة"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"ضبط حجم النافذة اليسرى ليكون ٧٠%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"ضبط حجم النافذة اليسرى ليكون ٥٠%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"ضبط حجم النافذة اليسرى ليكون ٣٠%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"عرض النافذة اليمنى بملء الشاشة"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"عرض النافذة العلوية بملء الشاشة"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"ضبط حجم النافذة العلوية ليكون ٧٠%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"ضبط حجم النافذة العلوية ليكون ٥٠%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"ضبط حجم النافذة العلوية ليكون ٣٠%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"عرض النافذة السفلية بملء الشاشة"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"الموضع <xliff:g id="POSITION">%1$d</xliff:g>، <xliff:g id="TILE_NAME">%2$s</xliff:g>. انقر نقرًا مزدوجًا للتعديل."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. انقر نقرًا مزدوجًا للإضافة."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"الموضع <xliff:g id="POSITION">%1$d</xliff:g>. انقر نقرًا مزدوجًا للتحديد."</string>
@@ -614,6 +645,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"تمت إزالة <xliff:g id="TILE_NAME">%1$s</xliff:g>"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"تم نقل <xliff:g id="TILE_NAME">%1$s</xliff:g> إلى الموضع <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"برنامج تعديل الإعدادات السريعة."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"يمكن ألا يعمل التطبيق مع وضع تقسيم الشاشة."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"التطبيق لا يتيح تقسيم الشاشة."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"الصفحة <xliff:g id="ID_1">%1$d</xliff:g> من <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ar/strings_tv.xml b/packages/SystemUI/res/values-ar/strings_tv.xml
index e6fbffc..b1d633d 100644
--- a/packages/SystemUI/res/values-ar/strings_tv.xml
+++ b/packages/SystemUI/res/values-ar/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"تشغيل"</string>
     <string name="pip_pause" msgid="8412075640017218862">"إيقاف مؤقت"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"‏اضغط "<b>"الرئيسية"</b>" للتحكم في PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"‏اضغط مع الاستمرار على زر الشاشة الرئيسية للتحكم في PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"حسنًا"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"رفض"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-az-rAZ/strings.xml b/packages/SystemUI/res/values-az-rAZ/strings.xml
index 4fee4ec..18bfd67 100644
--- a/packages/SystemUI/res/values-az-rAZ/strings.xml
+++ b/packages/SystemUI/res/values-az-rAZ/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Data siqnalı tamdır."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> üzərindən qoşuldu."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> üzərindən qoşuldu."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX yoxdur."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX bir xətt."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX iki xətdir."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM yoxdur"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobil Data Deaktivdir"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth tezering."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Uçuş rejimi"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM kart yoxdur."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Carrier şəbəkə dəyişir."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Batareya <xliff:g id="NUMBER">%d</xliff:g> faizdir."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Batareya doldurulur, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> faiz."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Sistem parametrləri"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Bildirişlər."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Bildirişi təmizlə."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\"Narahat etməyin\" aktivdir, yalnız prioritet."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Tak sakitlik vaxtı narahat etməyin."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Narahat etməmək rejimi aktivdir, yalnız alarmlara icazə var."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\"Narahat etməyin\" qeyri-aktivdir."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\"Narahat etməyin\" qeyri-aktivdir."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\"Narahat etməyin\" aktivdir."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth deaktiv."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth aktiv."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth qoşulur."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Hazırda ekran landşaft orientasiyasında kilidlənib."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Hazırda ekran portret orientasiyasında kilidlənib."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Desert Qabı"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Xəyal"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Ekran qoruyucu"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Narahat etməyin"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Yalnız prioritet"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Heç bir cütlənmiş cihaz əlçatan deyil"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Parlaqlıq"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Avto-fırlanma"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Fırlanma kilidlidir"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portret"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Peyzaj"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Bağlantı yoxdur"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Şəbəkə yoxdur"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi sönülüdür"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Heç bir Wi-Fi şəbəkəsi əlçatan deyil"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Yayım"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Yayım"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> başlana bilmir."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> güvənli rejimdə deaktiv edildi."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Hamısını silin"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Bu tətbiq çoxsaylı pəncərəni dəstəkləmir"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Bu tətbiq çoxsaylı pəncərəni dəstəkləyir"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Tətbiq ekran bölünməsini dəstəkləmir"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Ekranı bölmək üçün bura sürüşdürün"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Üfüqi Böl"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Şaquli Böl"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Fərdi Böl"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> proqramı səs səviyyəsi dialoqudur"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Orijinalı bərpa etmək üçün toxun."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"İş profilinizi istifadə edirsiniz"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Səsli etmək üçün tıklayın."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Vibrasiyanı ayarlamaq üçün tıklayın. Əlçatımlılıq xidmətləri səssiz edilmiş ola bilər."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Səssiz etmək üçün tıklayın. Əlçatımlılıq xidmətləri səssiz edilmiş ola bilər."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Daxil batareya faizini göstərin"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Bütün bildirişləri blok edin"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Səssiz etməyin"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Səssiz və ya blok etməyin"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Tam əhəmiyyətlilik ayarlarını göstərin"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloklanmış"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Minimum əhəmiyyətli"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Az əhəmiyyətli"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normal əhəmiyyətli"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Çox əhəmiyyətli"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Təcili əhəmiyyətli"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Bu bildirişləri heç vaxt göstərməyin"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Bildirişlər siyahısının aşağısında səssiz göstərin"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Bu bildişləri səssiz göstərin"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Bu bildirişi səsli edin"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Ekranda nəzər salın və səsə icazə verin"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Bildirişlər siyahısında yuxarıda göstərin, ekrana nəzər salın və səsə icazə verin"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Enerji bildiriş nəzarəti"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Aktiv"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Deaktiv"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Enerji bildiriş nəzarəti ilə, tətbiq bildirişləri üçün əhəmiyyət səviyyəsini 0-dan 5-ə kimi ayarlaya bilərsiniz. \n\n"<b>"Səviyyə 5"</b>" \n- Bildiriş siyahısının yuxarı hissəsində göstərin \n- Tam ekran kəsintisinə icazə verin \n- Hər zaman izləyin \n\n"<b>"Səviyyə 4"</b>" \n- Tam ekran kəsintisinin qarşısını alın \n- Hər zaman izləyin \n\n"<b>"Level 3"</b>" \n- Tam ekran kəsintisinin qarşısını alın \n- Heç vaxt izləməyin \n\n"<b>"Level 2"</b>" \n- Tam ekran kəsintisinin qarşısını alın \n- Heç vaxt izləməyin \n- Heç vaxt səsliyə və ya vibrasiyaya qoymayın \n\n"<b>"Səviyyə 1"</b>" \n- Prevent full screen interruption \n- Heç vaxt izləməyin \n- Heç vaxt səsliyə və ya vibrasiyaya qoymayın \n- Ekran kilidi və ya status panelindən gizlədin \n- Bildiriş siyahısının yuxarı hissəsində göstərin \n\n"<b>"Səviyyə 0"</b>" \n- Bütün bildirişləri tətbiqdən blok edin"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Əhəmiyyət: Avtomatik"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Əhəmiyyət: Səviyyə 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Əhəmiyyət: Səviyyə 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Əhəmiyyət: Səviyyə 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Əhəmiyyət: Səviyyə 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Əhəmiyyət: Səviyyə 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Əhəmiyyət: Səviyyə 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Hər bir bildirişin əhəmiyyətinə tətbiq özü qərar verir."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Bu tətbiqdən olan bildirişləri heç vaxt göstərməyin."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Tam ekran kəsintisi, baxışı, səsi və ya vibrasiyası yoxdur. Ekran kilidi və status panelindən gizlədin."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Tam ekran kəsintisi, baxışı, səsi və ya vibrasiyası yoxdur."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Tam ekran kəsintisi və ya baxışı yoxdur."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Hər zaman baxın. Tam ekran kəsintisi yoxdur."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Hər zaman baxın və tam ekran kəsintisinə icazə verin."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Daha çox ayar"</string>
     <string name="notification_done" msgid="5279426047273930175">"Hazırdır"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> bildiriş nəzarəti"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Digər"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Bölünmüş ekran ayırıcısı"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Aşağıya keçin"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Yuxarıya keçin"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Sola köçürün"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Sağa köçürün"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Sol tam ekran"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Sol 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Sol 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Sol 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Sağ tam ekran"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Yuxarı tam ekran"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Yuxarı 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Yuxarı 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Yuxarı 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Aşağı tam ekran"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g> mövqeyi, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Redaktə etmək üçün iki dəfə tıklayın."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Əlavə etmək üçün iki dəfə tıklayın."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g> mövqeyi. Seçmək üçün iki dəfə tıklayın."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> silindi"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> <xliff:g id="POSITION">%2$d</xliff:g> mövqeyinə köçürüldü"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Sürətli ayarlar redaktoru."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Tətbiq bölünmüş ekran ilə işləməyə bilər."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Tətbiq ekran bölünməsini dəstəkləmir."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g> səhifədən <xliff:g id="ID_1">%1$d</xliff:g> səhifə"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-az-rAZ/strings_tv.xml b/packages/SystemUI/res/values-az-rAZ/strings_tv.xml
index 63fc9fd..a477e9d 100644
--- a/packages/SystemUI/res/values-az-rAZ/strings_tv.xml
+++ b/packages/SystemUI/res/values-az-rAZ/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Göstərin"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Fasilə verin"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP idarı etmək üçün "<b>"Əsas səhifəni"</b>" tutub saxlayın"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PİP nəzarət etmək üçün ƏSAS EKRAN düyməni basıb saxlayın"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Anladım"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Rədd edin"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-b+sr+Latn/strings.xml b/packages/SystemUI/res/values-b+sr+Latn/strings.xml
index 4d22d2e..9bddf52 100644
--- a/packages/SystemUI/res/values-b+sr+Latn/strings.xml
+++ b/packages/SystemUI/res/values-b+sr+Latn/strings.xml
@@ -119,6 +119,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Signal za podatke je najjači."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Povezani ste sa <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Povezani ste sa <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Nema WiMAX signala."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX signal ima jednu crtu."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX signal ima dve crte."</string>
@@ -149,12 +151,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Nema SIM kartice."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Podaci za mobilne uređaje su isključeni"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth privezivanje."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Režim rada u avionu."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Nema SIM kartice."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Promena mreže mobilnog operatera."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Baterija je na <xliff:g id="NUMBER">%d</xliff:g> posto."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Baterija se puni, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> procenata."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Sistemska podešavanja."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Obaveštenja."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Obriši obaveštenje."</string>
@@ -192,9 +201,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Podešavanje Ne uznemiravaj je uključeno, samo prioritetni prekidi."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Podešavanje Ne uznemiravaj je uključeno, potpuna tišina."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Podešavanje Ne uznemiravaj je uključeno, samo alarmi."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Podešavanje Ne uznemiravaj je isključeno."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Podešavanje Ne uznemiravaj je isključeno."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Podešavanje Ne uznemiravaj je uključeno."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth je isključen."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth je uključen."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth se povezuje."</string>
@@ -248,7 +261,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ekran je sada zaključan u vertikalnom položaju."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ekran je sada zaključan u horizontalnom položaju."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Vitrina sa poslasticama"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Sanjarenje"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Čuvar ekrana"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Eternet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Ne uznemiravaj"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Samo prioritetni prekidi"</string>
@@ -260,6 +273,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Nije dostupan nijedan upareni uređaj"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Osvetljenost"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automatska rotacija"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotacija je zaključana"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Vertikalni prikaz"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Horizontalni prikaz"</string>
@@ -278,6 +295,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Veza nije uspostavljena"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Nema mreže"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi je isključen"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nije dostupna nijedna Wi-Fi mreža"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Prebacivanje"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Prebacivanje"</string>
@@ -312,8 +331,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Pokretanje aplikacije <xliff:g id="APP">%s</xliff:g> nije uspelo."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Aplikacija <xliff:g id="APP">%s</xliff:g> je onemogućena u bezbednom režimu."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Obriši sve"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Ova aplikacija ne podržava režim sa više prozora"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplikacija ne podržava režim sa više prozora"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplikacija ne podržava podeljeni ekran"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Prevucite ovde da biste koristili razdeljeni ekran"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Podeli horizontalno"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Podeli vertikalno"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Prilagođeno deljenje"</string>
@@ -421,11 +440,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> je dijalog za jačinu zvuka"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Dodirnite da biste vratili original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Koristite profil za Work"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Dodirnite da biste uključili zvuk."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Dodirnite da biste podesili na vibraciju. Zvuk usluga pristupačnosti će možda biti isključen."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Dodirnite da biste isključili zvuk. Zvuk usluga pristupačnosti će možda biti isključen."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Tjuner za korisnički interfejs sistema"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Prikazuj ugrađeni procenat baterije"</string>
@@ -471,19 +491,24 @@
     <string name="block" msgid="2734508760962682611">"Blokiraj sva obaveštenja"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ne isključuj zvuk"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ne isključuju zvuk niti blokiraj"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Prikaži kompletna podešavanja važnosti"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blokirana"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Veoma mala važnost"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Mala važnost"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Uobičajena važnost"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Velika važnost"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Važnost: hitno"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Ova obaveštenja se nikada ne prikazuju"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Prikazuju se u dnu liste obaveštenja bez zvuka"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Ova obaveštenja se prikazuju bez zvuka"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Dozvolite da ova obaveštenja emituju zvuk"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Nakratko se prikazuju na ekranu i emituju zvuk"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Prikazuju se u vrhu liste obaveštenja, nakratko se prikazuju na ekranu i emituju zvuk"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Napredne kontrole za obaveštenja"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Uključeno"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Isključeno"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Pomoću naprednih kontrola za obaveštenja možete da podesite nivo važnosti od 0. do 5. za obaveštenja aplikacije. \n\n"<b>"5. nivo"</b>" \n– Prikazuju se u vrhu liste obaveštenja \n- Dozvoli prekid režima celog ekrana \n– Uvek zaviruj \n\n"<b>"4. nivo"</b>" \n– Spreči prekid režima celog ekrana \n– Uvek zaviruj \n\n"<b>"3. nivo"</b>" \n– Spreči prekid režima celog ekrana \n– Nikada ne zaviruj \n\n"<b>"2. nivo"</b>" \n– Spreči prekid režima celog ekrana \n– Nikada ne zaviruj \n– Nikada ne proizvodi zvuk ili vibraciju \n\n"<b>"1. nivo"</b>" \n– Spreči prekid režima celog ekrana \n– Nikada ne zaviruj \n– Nikada ne proizvodi zvuk ili vibraciju \n– Sakrij na zaključanom ekranu i statusnoj traci \n– Prikazuju se u dnu liste obaveštenja \n\n"<b>"0. nivo"</b>" \n– Blokiraj sva obaveštenja iz aplikacije"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Važnost: Automatski"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Važnost: 0. nivo"</string>
+    <string name="min_importance" msgid="560779348928574878">"Važnost: 1. nivo"</string>
+    <string name="low_importance" msgid="7571498511534140">"Važnost: 2. nivo"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Važnost: 3. nivo"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Važnost: 4. nivo"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Važnost: 5. nivo"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Aplikacija određuje važnost svakog obaveštenja."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nikada ne prikazuj obaveštenja iz ove aplikacije"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Bez prekida režima celog ekrana, zavirivanja, zvuka ili vibracije. Sakrij na zaključanom ekranu i statusnoj traci."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Bez prekida režima celog ekrana, zavirivanja, zvuka ili vibracije."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Bez prekida režima celog ekrana ili zavirivanja."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Uvek zaviruj. Bez prekida režima celog ekrana."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Uvek zaviruj i dozvoli prekid režima celog ekrana."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Još podešavanja"</string>
     <string name="notification_done" msgid="5279426047273930175">"Gotovo"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Kontrole obaveštenja za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -598,10 +623,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Drugo"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Razdelnik podeljenog ekrana"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Pomeri nadole"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Pomeri nagore"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Pomeri ulevo"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Pomeri udesno"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Režim celog ekrana za levi ekran"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Levi ekran 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Levi ekran 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Levi ekran 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Režim celog ekrana za donji ekran"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Režim celog ekrana za gornji ekran"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Gornji ekran 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Gornji ekran 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Gornji ekran 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Režim celog ekrana za donji ekran"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g>. pozicija, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Dvaput dodirnite da biste izmenili."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Dvaput dodirnite da biste dodali."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g>. pozicija. Dvaput dodirnite da biste izabrali."</string>
@@ -611,6 +642,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Pločica <xliff:g id="TILE_NAME">%1$s</xliff:g> je uklonjena"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Pločica <xliff:g id="TILE_NAME">%1$s</xliff:g> je premeštena na <xliff:g id="POSITION">%2$d</xliff:g>. poziciju"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Uređivač za Brza podešavanja."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Aplikacija možda neće funkcionisati sa podeljenim ekranom."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Aplikacija ne podržava podeljeni ekran."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_1">%1$d</xliff:g>. strana od <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-b+sr+Latn/strings_tv.xml b/packages/SystemUI/res/values-b+sr+Latn/strings_tv.xml
index d026d2c..1e00917 100644
--- a/packages/SystemUI/res/values-b+sr+Latn/strings_tv.xml
+++ b/packages/SystemUI/res/values-b+sr+Latn/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Pusti"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pauziraj"</string>
     <string name="pip_hold_home" msgid="340086535668778109"><b>"POČETNI EKRAN"</b>" kont. PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Pritisnite i zadržite dugme POČETNI EKRAN da biste kontrolisali PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Važi"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Odbaci"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-be-rBY/strings.xml b/packages/SystemUI/res/values-be-rBY/strings.xml
index 5f3aa55..474fb20 100644
--- a/packages/SystemUI/res/values-be-rBY/strings.xml
+++ b/packages/SystemUI/res/values-be-rBY/strings.xml
@@ -120,6 +120,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Поўны сігнал перадачы дадзеных."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Падключаны да <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Падлучаны да <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Няма сiгналу WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Адзiн слупок сiгналу WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Два слупкi сiгналу WiMAX."</string>
@@ -150,14 +152,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Няма SIM-карты."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Мабільная перадача даных адключана"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Сувязь па Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Рэжым палёту."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Няма SIM-карты."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Змяненне аператара сеткі."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <!-- String.format failed for translation -->
     <!-- no translation found for accessibility_battery_level (7451474187113371965) -->
     <skip />
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Зарадка акумулятара, працэнтаў: <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g>."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Сістэмныя налады."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Апавяшчэнні."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Выдаліць апавяшчэнне."</string>
@@ -172,7 +181,7 @@
     <string name="accessibility_recents_item_will_be_dismissed" msgid="395770242498031481">"Выдаліць <xliff:g id="APP">%s</xliff:g> са спіса апошніх."</string>
     <string name="accessibility_recents_item_dismissed" msgid="6803574935084867070">"<xliff:g id="APP">%s</xliff:g> выдалены."</string>
     <string name="accessibility_recents_all_items_dismissed" msgid="4464697366179168836">"Усе апошнія праграмы адхілены."</string>
-    <string name="accessibility_recents_item_open_app_info" msgid="5107479759905883540">"Адкрыць інфармацыю пра праграму <xliff:g id="APP">%s</xliff:g>."</string>
+    <string name="accessibility_recents_item_open_app_info" msgid="5107479759905883540">"Адкрыць інфармацыю пра праграму \"<xliff:g id="APP">%s</xliff:g>\"."</string>
     <string name="accessibility_recents_item_launched" msgid="7616039892382525203">"Запускаецца <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="accessibility_recents_task_header" msgid="1437183540924535457">"<xliff:g id="APP">%1$s</xliff:g> <xliff:g id="ACTIVITY_LABEL">%2$s</xliff:g>"</string>
     <string name="accessibility_notification_dismissed" msgid="854211387186306927">"Апавяшчэнне прапушчана."</string>
@@ -195,9 +204,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Рэжым «Не турбаваць» укл., толькі прыярытэтныя."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Рэжым «Не турбаваць» укл., поўная цішыня."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Рэжым «Не турбаваць» укл., толькі будзільнікі."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Рэжым «Не турбаваць» выкл."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Рэжым «Не турбаваць» выкл."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Рэжым «Не турбаваць» укл."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth выключаны."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth уключаны."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth падлучаецца."</string>
@@ -251,7 +264,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Цяпер экран заблакіраваны ў альбомнай арыентацыі."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Цяпер экран заблакiраваны ў кніжнай арыентацыі."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Вітрына з дэсертамі"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Мроi"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Экранная застаўка"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Не турбаваць"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Толькі прыярытэтныя"</string>
@@ -263,6 +276,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Няма даступных спалучаных прылад"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Яркасць"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Аўтапаварот"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Паварот заблакіраваны"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Кніжная арыентацыя"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Альбомная арыентацыя"</string>
@@ -281,6 +298,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Няма падключэння"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Няма сеткi"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi адключаны"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Няма даступнай сеткі Wi-Fi"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Трансляцыя"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Ідзе перадача"</string>
@@ -315,8 +334,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Не атрымалася запусціць <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> адключана ў бяспечным рэжыме."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Ачысціць усё"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Гэта праграма не падтрымлівае функцыю некалькіх вокнаў"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Праграма не падтрымлівае функцыю некалькіх вокнаў"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Праграма не падтрымлівае функцыю дзялення экрана"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Перацягніце сюды, каб перайсці ў рэжым падзеленага экрана"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Падзяліць гарызантальна"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Падзяліць вертыкальна"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Падзяліць іншым чынам"</string>
@@ -424,11 +443,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> з\'яўляецца дыялогам гучнасці"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Націсніце, каб аднавіць арыгінал."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Вы выкарыстоўваеце свой працоўны профіль"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Дакраніцеся, каб уключыць гук."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Дакраніцеся, каб уключыць вібрацыю. Можа быць адключаны гук службаў спецыяльных магчымасцей."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Дакраніцеся, каб адключыць гук. Можа быць адключаны гук службаў спецыяльных магчымасцей."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Наладка сістэмнага інтэрфейсу карыстальніка"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Паказваць працэнт зараду акумулятара"</string>
@@ -474,19 +494,24 @@
     <string name="block" msgid="2734508760962682611">"Блакіраваць усе апавяшчэнні"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Не адключаць гук"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Не адключаць гук і не блакіраваць"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Паказаць поўны спіс налад важнасці"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Заблакiравана"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Мінімальная важнасць"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Нізкая важнасць"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Звычайная важнасць"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Высокая важнасць"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Пільная важнасць"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Ніколі не паказваць гэтыя апавяшчэнні"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Бязгучна паказваць унізе спіса апавяшчэнняў"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Паказваць гэтыя апавяшчэнні бязгучна"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Дазволіць гэтым апавяшчэнням прайграваць гукі"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Хутка паказаць на экране і дазволіць прайграванне гуку"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Паказваць уверсе спіса апавяшчэнняў, хутка паказаць на экране і дазволіць прайграванне гуку"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Пашыранае кіраванне апавяшчэннямі"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Уключана"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Адключана"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"З дапамогай пашыранага кіравання апавяшчэннямі вы можаце задаваць узровень важнасці апавяшчэнняў праграмы ад 0 да 5. \n\n"<b>"Узровень 5"</b>" \n- Паказваць уверсе спіса апавяшчэнняў \n- Дазваляць перапыняць рэжым поўнага экрана \n- Заўсёды дазваляць кароткі паказ \n\n"<b>"Узровень 4"</b>" \n- Забараняць перапыняць рэжым поўнага экрана \n- Заўсёды дазваляць кароткі паказ \n\n"<b>"Узровень 3"</b>" \n- Забараняць перапыняць рэжым поўнага экрана \n- Ніколі не дазваляць кароткі паказ \n\n"<b>"Узровень 2"</b>" \n- Забараняць перапыняць рэжым поўнага экрана \n- Ніколі не дазваляць кароткі паказ \n- Ніколі не прайграваць гук і не вібрыраваць \n\n"<b>"Узровень 1"</b>" \n- Забараняць перапыняць рэжым поўнага экрана \n- Ніколі не дазваляць кароткі паказ \n- Ніколі не прайграваць гук і не вібрыраваць \n- Хаваць з экрана блакіроўкі і панэлі стану \n- Паказваць унізе спіса апавяшчэнняў \n\n"<b>"Узровень 0"</b>" \n- Блакіраваць усе апавяшчэнні ад праграмы"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Важнасць: аўтаматычна"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Важнасць: узровень 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Важнасць: узровень 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Важнасць: узровень 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Важнасць: узровень 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Важнасць: узровень 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Важнасць: узровень 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Праграма вызначае важнасць кожнага апавяшчэння."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Ніколі не паказваць апавяшчэнні ад гэтай праграмы."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Не перап. рэжым поўн. экр., не дазв. карот. паказ, гук або вібр. Хаваць з экр. блак. і панэлі стану."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Не перапыняць рэжым поўнага экрана, не дазваляць кароткі паказ, прайгранне гуку або вібрацыю."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Не перапыняць рэжым поўнага экрана і не дазваляць кароткі паказ."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Заўсёды дазваляць кароткі паказ. Не перапыняць рэжым поўнага экрана."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Заўсёды дазваляць кароткі паказ, дазваляць перапыняць рэжым поўнага экрана."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Дадатковыя налады"</string>
     <string name="notification_done" msgid="5279426047273930175">"Гатова"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Элементы кантролю апавяшчэнняў <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -601,10 +626,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Іншае"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Раздзяляльнік падзеленага экрана"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Перамясціць уніз"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Перамясціць уверх"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Перамясціць улева"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Перамясціць управа"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Левы экран – на ўвесь экран"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Левы экран – 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Левы экран – 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Левы экран – 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Правы экран – на ўвесь экран"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Верхні экран – на ўвесь экран"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Верхні экран – 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Верхні экран – 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Верхні экран – 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Ніжні экран – на ўвесь экран"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Месца: <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Краніце двойчы, каб рэдагаваць."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Краніце двойчы, каб дадаць."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Месца: <xliff:g id="POSITION">%1$d</xliff:g>. Краніце двойчы, каб выбраць."</string>
@@ -614,6 +645,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Плітка <xliff:g id="TILE_NAME">%1$s</xliff:g> выдалена"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> перамешчана ў наступнае месца: <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Рэдактар хуткіх налад."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Праграма можа не працаваць у рэжыме дзялення экрана."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Праграма не падтрымлівае функцыю дзялення экрана."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Старонка <xliff:g id="ID_1">%1$d</xliff:g> з <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-be-rBY/strings_tv.xml b/packages/SystemUI/res/values-be-rBY/strings_tv.xml
index 6138155..d604c79 100644
--- a/packages/SystemUI/res/values-be-rBY/strings_tv.xml
+++ b/packages/SystemUI/res/values-be-rBY/strings_tv.xml
@@ -20,14 +20,14 @@
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="pip_close" msgid="3480680679023423574">"Закрыць PIP"</string>
-    <!-- no translation found for pip_fullscreen (8604643018538487816) -->
-    <skip />
-    <!-- no translation found for pip_play (674145557658227044) -->
-    <skip />
-    <!-- no translation found for pip_pause (8412075640017218862) -->
-    <skip />
+    <string name="pip_fullscreen" msgid="8604643018538487816">"Ва ўвесь экран"</string>
+    <string name="pip_play" msgid="674145557658227044">"Прайграць"</string>
+    <string name="pip_pause" msgid="8412075640017218862">"Прыпыніць"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Утрым. "<b>"HOME"</b>" для кір. PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Націсніце і ўтрымлівайце кнопку HOME для кіравання PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Зразумела"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Адхіліць"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-bg/strings.xml b/packages/SystemUI/res/values-bg/strings.xml
index 7aa52fe..080ba93 100644
--- a/packages/SystemUI/res/values-bg/strings.xml
+++ b/packages/SystemUI/res/values-bg/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Сигналът за данни е пълен."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Има връзка с <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Има връзка с <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Няма WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX е с една чертичка."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX е с две чертички."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Няма SIM карта."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Мобилните данни са изключени"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Тетъринг през Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Самолетен режим."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Няма SIM карта."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Промяна на мрежата на оператора."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"<xliff:g id="NUMBER">%d</xliff:g> процента батерия."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Батерията се зарежда – <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> процента."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Системни настройки."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Известия."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Изчистване на известието."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Настройката „Не безпокойте“ е включена – само с приоритет."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Настройката „Не безпокойте“ е включена в режим за пълна тишина."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Настройката „Не безпокойте“ е включена в режим само с будилници."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Настройката „Не безпокойте“ е изключена."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Настройката „Не безпокойте“ е изключена."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Настройката „Не безпокойте“ е включена."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Функцията за Bluetooth е изключена."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Функцията за Bluetooth е включена."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Установява се връзка през Bluetooth."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Екранът е заключен в хоризонтална ориентация."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Екранът е заключен във вертикална ориентация."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Витрина с десерти"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Мечта"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Скрийнсейвър"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Не безпокойте"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Само с приоритет"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Няма налични сдвоени устройства"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Яркост"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Автоматична ориентация"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Ориентацията е заключена"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Вертикален режим"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Хоризонтален режим"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Няма връзка"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Няма мрежа"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi е изключен"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Няма налични Wi-Fi мрежи"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Предаване"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Предава се"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> не можа да стартира."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Приложението <xliff:g id="APP">%s</xliff:g> е деактивирано в безопасния режим."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Изчистване на всичко"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Това приложение не поддържа няколко прозореца"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Приложението не поддържа няколко прозореца"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Приложението не поддържа разделен екран"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Преместете тук с плъзгане, за да използвате режим за разделен екран"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Хоризонтално разделяне"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Вертикално разделяне"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Персонализирано разделяне"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> изпълнява ролята на диалоговия прозорец за силата на звука"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Докоснете, за да възстановите оригинала."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Използвате служебния си потребителски профил"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Докоснете, за да включите отново звука."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Докоснете, за да зададете вибриране. Възможно е звукът на услугите за достъпност да бъде заглушен."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Докоснете, за да заглушите звука. Възможно е звукът на услугите за достъпност да бъде заглушен."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Тунер на системния потребителски интерфейс"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Показване на процента на вградената батерия"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Блокиране на всички известия"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Без заглушаване на звуковите сигнали"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Без заглушаване на звуковите сигнали или блокиране"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Показване на пълните настройки за важността"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Блокирано"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Минимална важност"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Малка важност"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Нормална важност"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Голяма важност"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Неотложна важност"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Тези известия не се показват"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Показване без звуков сигнал най-долу в списъка с известия"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Показване на тези известия без звуков сигнал"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Разрешаване при тези известия да се издава звуков сигнал"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Показване на екрана и разрешаване на звуков сигнал"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Показване най-горе в списъка с известия, както и на екрана и разрешаване на звуков сигнал"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Контроли за известията"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Вкл."</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Изкл."</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"С помощта на контролите за известията можете да зададете ниво на важност от 0 до 5 за известията от дадено приложение. \n\n"<b>"Ниво 5"</b>" \n– Показване най-горе в списъка с известия. \n– Разрешаване на прекъсването на цял екран. \n– Известията винаги се показват мимолетно. \n\n"<b>"Ниво 4"</b>" \n– Предотвратяване на прекъсването на цял екран. \n– Известията винаги се показват мимолетно. \n\n"<b>"Ниво 3"</b>" \n– Предотвратяване на прекъсването на цял екран. \n– Известията никога не се показват мимолетно. \n\n"<b>"Ниво 2"</b>" \n– Предотвратяване на прекъсването на цял екран. \n– Известията никога не се показват мимолетно. \n– Без издаване на звуков сигнал и вибриране. \n\n"<b>"Ниво 1"</b>" \n– Предотвратяване на прекъсването на цял екран. \n– Известията никога не се показват мимолетно. \n– Без издаване на звуков сигнал и вибриране. \n– Скриване от заключения екран и лентата на състоянието. \n– Показване най-долу в списъка с известия. \n\n"<b>"Ниво 0"</b>" \n– Блокиране на всички известия от приложението."</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Важност: Автоматично"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Важност: Ниво 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Важност: Ниво 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Важност: Ниво 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Важност: Ниво 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Важност: Ниво 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Важност: Ниво 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Приложението определя важността на всяко известие."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Известията от това приложение никога не се показват."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Без прекъсв. на цял екран, мимол. показв., звук или вибр. Скриване от закл. екран и лентата на съст."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Без прекъсване на цял екран, мимолетно показване, звук или вибриране."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Без прекъсване на цял екран или мимолетно показване."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Приложенията винаги се показват мимолетно. Без прекъсване на цял екран."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Приложенията винаги се показват мимолетно и е разрешено прекъсването на цял екран."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Още настройки"</string>
     <string name="notification_done" msgid="5279426047273930175">"Готово"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Контроли за известията от <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Друго"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Разделител в режима за разделен екран"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Преместване надолу"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Преместване нагоре"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Преместване наляво"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Преместване надясно"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Ляв екран: Показване на цял екран"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Ляв екран: 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Ляв екран: 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Ляв екран: 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Десен екран: Показване на цял екран"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Горен екран: Показване на цял екран"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Горен екран: 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Горен екран: 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Горен екран: 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Долен екран: Показване на цял екран"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Позиция <xliff:g id="POSITION">%1$d</xliff:g>, „<xliff:g id="TILE_NAME">%2$s</xliff:g>“. Докоснете двукратно, за да редактирате."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"„<xliff:g id="TILE_NAME">%1$s</xliff:g>“. Докоснете двукратно, за да добавите."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Позиция <xliff:g id="POSITION">%1$d</xliff:g>. Докоснете двукратно, за да изберете."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Премахнахте „<xliff:g id="TILE_NAME">%1$s</xliff:g>“"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Преместихте „<xliff:g id="TILE_NAME">%1$s</xliff:g>“ на позиция <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Редактор за бързи настройки."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Приложението може да не работи в режим на разделен екран."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Приложението не поддържа разделен екран."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Страница <xliff:g id="ID_1">%1$d</xliff:g> от <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-bg/strings_tv.xml b/packages/SystemUI/res/values-bg/strings_tv.xml
index 38e251b..0e6b2c9 100644
--- a/packages/SystemUI/res/values-bg/strings_tv.xml
+++ b/packages/SystemUI/res/values-bg/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Пускане"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Пауза"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Контр. на PIP: Задр. "<b>"HOME"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"За контролиране на PIP натиснете и задръжте бутона „HOME“"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Разбрах"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Отхвърляне"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-bn-rBD/strings.xml b/packages/SystemUI/res/values-bn-rBD/strings.xml
index 6bf0cae..6a9795c 100644
--- a/packages/SystemUI/res/values-bn-rBD/strings.xml
+++ b/packages/SystemUI/res/values-bn-rBD/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"পূর্ণ ডেটার সংকেত রয়েছে৷"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> এর সাথে সংযুক্ত।"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g>এ সংযুক্ত হয়ে আছে।"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX অনুপলব্ধ৷"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX এ একটি দণ্ড৷"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX এ দুইটি দণ্ড৷"</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"কোনো সিম নেই৷"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"সেলুলার ডেটা বন্ধ আছে"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth টিথারিং৷"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"বিমান মোড৷"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"কোনো SIM কার্ড নেই।"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"পরিষেবা প্রদানকারীর নেটওয়ার্ক পরিবর্তিত হচ্ছে।"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"<xliff:g id="NUMBER">%d</xliff:g> শতাংশ ব্যাটারি রয়েছে৷"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"ব্যাটারি চার্জ হচ্ছে, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> শতাংশ৷"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"সিস্টেম সেটিংস৷"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"বিজ্ঞপ্তিগুলি৷"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"বিজ্ঞপ্তি সাফ করুন৷"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"“বিরক্ত করবেন না” চালু করবেন, শুধুমাত্র অগ্রাধিকার৷"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"“বিরক্ত করবেন না” চালু করবেন, একদম নিরব"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"“বিরক্ত করবেন না” চালু করবেন, শুধুমাত্র অ্যালার্মগুলি৷"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"“বিরক্ত করবেন না” বন্ধ৷"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"বিরক্ত করবেন না বন্ধ রয়েছে৷"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"বিরক্ত করবেন না চালু রয়েছে৷"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth বন্ধ আছে।"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth চালু আছে।"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth সংযুক্ত হচ্ছে।"</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"এখন ভূদৃশ্য সজ্জাতে স্ক্রীন লক হয়েছে।"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"এখন প্রতিকৃতি সজ্জাতে স্ক্রীন লক হয়েছে।"</string>
     <string name="dessert_case" msgid="1295161776223959221">"ডেজার্ট কেস"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"স্ক্রিনসেভার"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"স্ক্রীন সেভার"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ইথারনেট"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"বিরক্ত করবেন না"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"শুধুমাত্র অগ্রাধিকার"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"যুক্ত করা কোন ডিভাইস উপলব্ধ নয়"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"উজ্জ্বলতা"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"স্বতঃ ঘূর্ণায়মান"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"ঘূর্ণন লক করা হয়েছে"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"প্রতিকৃতি"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"ভূদৃশ্য"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"সংযুক্ত নয়"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"কোনো নেটওয়ার্ক নেই"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi বন্ধ"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"কোনো Wi-Fi নেটওয়ার্ক উপলব্ধ নেই"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"কাস্ট করুন"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"কাস্ট করা হচ্ছে"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> শুরু করা যায়নি৷"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"নিরাপদ মোডে <xliff:g id="APP">%s</xliff:g> অক্ষম করা হয়েছে৷"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"সবকিছু সাফ করুন"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"এই অ্যাপ্লিকেশানটি মাল্টি-উইন্ডো সমর্থন করে না"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"অ্যাপ্লিকেশানগুলি মাল্টি-উইন্ডো সমর্থন করে না"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"অ্যাপ্লিকেশান বিভক্ত-স্ক্রীন সমর্থন করে না"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"বিভক্ত স্ক্রীন ব্যবহার করতে এখানে টেনে আনুন"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"অনুভূমিক স্প্লিট"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"উল্লম্ব স্প্লিট"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"কাস্টম স্প্লিট করুন"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> হল ভলিউম ডায়লগ"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"আসলটি পুনঃস্থাপন করতে স্পর্শ করুন৷"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"আপনি আপনার কাজের প্রোফাইল ব্যবহার করছেন"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s। সশব্দ করতে আলতো চাপুন।"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s। কম্পন এ সেট করতে আলতো চাপুন। অ্যাক্সেসযোগ্যতার পরিষেবাগুলিকে নিঃশব্দ করা হতে পারে।"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s। নিঃশব্দ করতে আলতো চাপুন। অ্যাক্সেসযোগ্যতার পরিষেবাগুলিকে নিঃশব্দ করা হতে পারে।"</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"সিস্টেম UI টিউনার"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"এম্বেড করা ব্যাটারির শতকরা হার দেখায়"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"সমস্ত বিজ্ঞপ্তি অবরুদ্ধ করুন"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"নীরব করবেন না"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"নীরব বা অবরুদ্ধ করবেন না"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"সম্পূর্ণ গুরুত্বপূর্ণ সেটিংস দেখায়"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"অবরুদ্ধ"</string>
-    <string name="min_importance" msgid="1901894910809414782">"ন্যূনতম গুরুত্ব"</string>
-    <string name="low_importance" msgid="4109929986107147930">"কম গুরুত্ব"</string>
-    <string name="default_importance" msgid="8192107689995742653">"সাধারণ গুরুত্ব"</string>
-    <string name="high_importance" msgid="1527066195614050263">"বেশি গুরুত্ব"</string>
-    <string name="max_importance" msgid="5089005872719563894">"জরুরি গুরুত্ব"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"এই বিজ্ঞপ্তিগুলি কখনোই দেখানো হবে না"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"বিজ্ঞপ্তি তালিকার নীচের অংশে নিঃশব্দে দেখানো হয়"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"নিঃশব্দে এই বিজ্ঞপ্তিগুলি দেখানো হয়"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"এই বিজ্ঞপ্তিগুলিকে শব্দ করার মঞ্জুরি দেয়"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"স্ক্রীনের উপরে প্রদর্শিত এবং শব্দ করার মঞ্জুরি দেয়"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"বিজ্ঞপ্তি তালিকার শীর্ষে দেখানো হয় এবং স্ক্রীনের উপরে প্রদর্শিত এবং শব্দ করার মঞ্জুরি দেয়"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"পাওয়ার বিজ্ঞপ্তির নিয়ন্ত্রণগুলি"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"চালু আছে"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"বন্ধ আছে"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"পাওয়ার বিজ্ঞপ্তির নিয়ন্ত্রণগুলি ব্যহবার করে, আপনি কোনো অ্যাপ্লিকেশানের বিজ্ঞপ্তির জন্য ০ থেকে ৫ পর্যন্ত একটি গুরুত্বের লেভেলকে সেট করতে পারবেন৷ \n\n"<b>"লেভেল ৫"</b>" \n- বিজ্ঞপ্তি তালিকার শীর্ষে দেখায় \n- পূর্ণ স্ক্রীনের বাধাকে অনুমতি দেয় \n- সর্বদা স্ক্রীনে উপস্থিত হয় \n\n"<b>"লেভেল ৪"</b>" \n- পূর্ণ স্ক্রীনের বাধাকে আটকায় \n- সর্বদা স্ক্রীনে উপস্থিত হয় \n\n"<b>"লেভেল ৩"</b>" \n- পূর্ণ স্ক্রীনের বাধাকে আটকায় \n- কখনই স্ক্রীনে উপস্থিত হয় না \n\n"<b>"লেভেল ২"</b>" \n- পূর্ণ স্ক্রীনের বাধাকে আটকায় \n- কখনই স্ক্রীনে উপস্থিত হয় না \n- কখনই শব্দ এবং কম্পন করে না \n\n"<b>"লেভেল ১"</b>" \n- পূর্ণ স্ক্রীনের বাধাকে আটকায় \n- কখনই স্ক্রীনে উপস্থিত হয় না \n- কখনই শব্দ এবং কম্পন করে না \n- লক স্ক্রীন এবং স্থিতি দন্ড থেকে লুকায় \n- বিজ্ঞপ্তি তালিকার নীচের দিকে দেখায় \n\n"<b>"লেভেল ০"</b>" \n- অ্যাপ্লিকেশান থেকে সমস্ত বিজ্ঞপ্তিকে অবরূদ্ধ করে"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"গুরুত্ব: স্বয়ংক্রিয়"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"গুরুত্ব: লেভেল ০"</string>
+    <string name="min_importance" msgid="560779348928574878">"গুরুত্ব: লেভেল ১"</string>
+    <string name="low_importance" msgid="7571498511534140">"গুরুত্ব: লেভেল ২"</string>
+    <string name="default_importance" msgid="7609889614553354702">"গুরুত্ব: লেভেল ৩"</string>
+    <string name="high_importance" msgid="3441537905162782568">"গুরুত্ব: লেভেল ৪"</string>
+    <string name="max_importance" msgid="4880179829869865275">"গুরুত্ব: লেভেল ৫"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"অ্যাপ্লিকেশান প্রতিটি বিজ্ঞপ্তির গুরুত্ব নির্ধারণ করে৷"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"এই অ্যাপ্লিকেশান থেকে কখনোই বিজ্ঞপ্তিগুলিকে দেখাবে না।"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"পূর্ণ স্ক্রীনের কোনো বাধা নেই, স্ক্রীনে উপস্থিত হয় না, শব্দ বা কম্পন করে না৷ লক স্ক্রীন এবং স্থিতি দন্ড থেকে লুকায়৷"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"পূর্ণ স্ক্রীনের কোনো বাধা নেই, স্ক্রীনে উপস্থিত হয় না, শব্দ বা কম্পন করে না৷"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"পূর্ণ স্ক্রীনের কোনো বাধা নেই বা স্ক্রীনে উপস্থিত হবে না৷"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"সর্বদা স্ক্রীনে উপস্থিত হয়৷ পূর্ণ স্ক্রীনের কোনো বাধা নেই৷"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"সর্বদা স্ক্রীনে উপস্থিত হয়, এবং পূর্ণ স্ক্রীনের বাধাকে অনুমতি দেয়৷"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"আরো সেটিংস"</string>
     <string name="notification_done" msgid="5279426047273930175">"সম্পন্ন"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> বিজ্ঞপ্তির নিয়ন্ত্রণগুলি"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"অন্যান্য"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"বিভক্ত-স্ক্রীন বিভাজক"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"নীচে সরান"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"উপরে সরান"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"বাঁয়ে সরান"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"ডানে সরান"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"বাম দিকের অংশ নিয়ে পূর্ণ স্ক্রীন"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"৭০% বাকি আছে"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"৫০% বাকি আছে"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"৩০% বাকি আছে"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"ডান দিকের অংশ নিয়ে পূর্ণ স্ক্রীন"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"উপর দিকের অংশ নিয়ে পূর্ণ স্ক্রীন"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"শীর্ষ ৭০%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"শীর্ষ ৫০%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"শীর্ষ ৩০%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"নীচের অংশ নিয়ে পূর্ণ স্ক্রীন"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g> অবস্থান, <xliff:g id="TILE_NAME">%2$s</xliff:g>৷ সম্পাদনা করতে দুবার আলতো চাপুন৷"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>৷ যোগ করতে দুবার আলতো চাপুন৷"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g> অবস্থান৷ নির্বাচন করতে দুবার আলতো চাপুন৷"</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> মোছা হয়েছে"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> <xliff:g id="POSITION">%2$d</xliff:g> এ সরানো হয়েছে"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"দ্রুত সেটিংস সম্পাদক৷"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"অ্যাপ্লিকেশানটি বিভক্ত স্ক্রীনে কাজ নাও করতে পারে৷"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"অ্যাপ্লিকেশান বিভক্ত-স্ক্রীন সমর্থন করে না৷"</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g>টির মধ্যে <xliff:g id="ID_1">%1$d</xliff:g> নং পৃষ্ঠা"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-bn-rBD/strings_tv.xml b/packages/SystemUI/res/values-bn-rBD/strings_tv.xml
index 6fa2d5b..771a172 100644
--- a/packages/SystemUI/res/values-bn-rBD/strings_tv.xml
+++ b/packages/SystemUI/res/values-bn-rBD/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"চালান"</string>
     <string name="pip_pause" msgid="8412075640017218862">"বিরাম দিন"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP নিয়ন্ত্রণ করতে "<b>"হোম"</b>" কী ধরে রাখুন"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP নিয়ন্ত্রণ করতে HOME বোতামটিকে টিপুন ও ধরে থাকুন"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"বুঝেছি"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"খারিজ করুন"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-bs-rBA/strings.xml b/packages/SystemUI/res/values-bs-rBA/strings.xml
index 3b438d6..202cf7e 100644
--- a/packages/SystemUI/res/values-bs-rBA/strings.xml
+++ b/packages/SystemUI/res/values-bs-rBA/strings.xml
@@ -119,6 +119,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Signal za prijenos podataka pun."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Povezan na <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Povezan na <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Nema WiMAX signala."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX signal na jednoj crtici."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX signal na dvije crtice."</string>
@@ -149,12 +151,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Nema SIM kartice."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobilni podaci isključeni"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Dijeljenje Bluetooth veze."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Način rada u avionu."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Nema SIM kartice."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Promjena mreže operatera."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Baterija na <xliff:g id="NUMBER">%d</xliff:g> posto."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Punjenje baterije, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> procenata."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Postavke sistema."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Obavještenja."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Ukloniti obavještenje."</string>
@@ -192,9 +201,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Opcija Ne ometaj je uključena, čut će se samo prioritetna obavještenja."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Opcija Ne ometaj je uključena, potpuna tišina."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Opcija Ne ometaj je uključena, čut će se samo alarmi."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Opcija Ne ometaj je isključena."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Opcija Ne ometaj je isključena."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Opcija Ne ometaj je uključena."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth isključen."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth uključen."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth se povezuje."</string>
@@ -248,7 +261,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ekran je sada zaključan u vodoravnom položaju."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ekran je sada zaključan u uspravnom položaju."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Slika sa desertima"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Sanjarenje"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Čuvar ekrana"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Ne ometaj"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Samo prioritetni prekidi"</string>
@@ -260,6 +273,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Nema dostupnih uparenih uređaja"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Osvjetljenje"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automatsko rotiranje"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotiranje je zaključano"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Uspravno"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Vodoravno"</string>
@@ -278,6 +295,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Nije povezano"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Nema mreže"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi isključen"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nema dostupnih Wi-Fi mreža"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Prebacivanje"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Prebacivanje"</string>
@@ -312,8 +331,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Aplikacija <xliff:g id="APP">%s</xliff:g> nije pokrenuta."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> je onemogućena u sigurnom načinu rada."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Obriši sve"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Ova aplikacija ne podržava rad sa više prozora"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplikacija ne podržava rad sa više prozora"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplikacija ne podržava dijeljenje ekrana."</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Povucite ovdje za korištenje podijeljenog ekrana"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Podjela po horizontali"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Podjela po vertikali"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Prilagođena podjela"</string>
@@ -421,11 +440,14 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> je dijaloški okvir za jačinu zvuka"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Dodirnite da vratite original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Koristite svoj profil za posao"</string>
+    <!-- String.format failed for translation -->
     <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Dodirnite za postavljanje vibracije. Zvukovi usluga pristupačnosti mogu biti isključeni."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Dodirnite da isključite zvuk. Zvukovi usluga pristupačnosti mogu biti isključeni."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Podešavač za korisničko sučelje sistema"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Prikaži ugrađeni postotak baterije"</string>
@@ -471,19 +493,24 @@
     <string name="block" msgid="2734508760962682611">"Blokiraj sva obavještenja"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Nemoj utišati"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Nemoj utišati ili blokirati"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Prikaži kompletne postavke za određivanje značaja"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blokirano"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Minimalni značaj"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Mali značaj"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normalan značaj"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Visok značaj"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Hitan značaj"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Nikada ne prikazuj ova obavještenja"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Nečujno prikaži na dnu spiska obavještenja"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Nečujno prikaži ova obavještenja"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Dozvolite zvuk na ovim obavještenjima"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Kratko prikaži na ekranu i dozvoli zvuk"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Prikaži na vrhu liste obavještenja, kratko prikaži na ekranu i dozvoli zvuk"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Kontrole obavještenja o napajanju"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Uključeno"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Isključeno"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Uz kontrolu obavještenja o napajanju, možete postaviti nivo značaja obavještenja iz aplikacije, i to od nivoa 0 do 5. \n\n"<b>"Nivo 5"</b>" \n- Prikaži na vrhu liste obavještenja \n- Dopusti prekid prikaza cijelog ekrana \n- Uvijek izviruj \n\n"<b>"Nvio 4"</b>" \n- Spriječi prekid prikaza cijelog ekrana \n- Uvijek izviruj \n\n"<b>"Nivo 3"</b>" \n- Spriječi prekid prikaza cijelog ekrana \n- Nikad ne izviruj \n\n"<b>"Nivo 2"</b>" \n- Spriječi prekid prikaza cijelog ekrana \n- Nikad ne izviruj \n- Nikada ne puštaj zvuk ili vibraciju \n\n"<b>"Nivo 1"</b>" \n- Spriječi prekid prikaza cijelog ekrana \n- Nikada ne izviruj \n- Nikada ne puštaj zvuk ili vibraciju \n- Sakrij sa ekrana za zaključavanje i statusne trake \n- Prikaži na dnu liste obavještenja \n\n"<b>"Nivo 0"</b>" \n- Blokiraj sva obavještenja iz aplikacije"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Značaj: Automatski"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Značaj: Nivo 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Značaj: Nivo 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Značaj: Nivo 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Značaj: Nivo 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Značaj: Nivo 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Značaj: Nivo 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Aplikacija određuje važnost svakog obavještenja."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nikad ne prikazuj obavještenja iz ove aplikacije"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Bez prekidanja prikaza cijelog ekrana, izvirivanja, zvuka ili vibracije. Sakriti sa ekrana za zaključavanje i statusne trake."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Bez prekidanja prikaza cijelog ekrana, izvirivanja, zvuka ili vibracije."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Bez izvirivanja ili prekidanja prikaza cijelog ekrana."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Uvijek izviruj. Bez prekidanja prikaza cijelog ekrana."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Uvijek izviruj i dopusti prekid prikaza cijelog ekrana."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Više postavki"</string>
     <string name="notification_done" msgid="5279426047273930175">"Gotovo"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Kontrole <xliff:g id="APP_NAME">%1$s</xliff:g> obavještenja"</string>
@@ -598,10 +625,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Ostalo"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Razdjelnik ekrana"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Pomjeri dolje"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Pomjeri gore"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Pomjeri lijevo"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Pomjeri desno"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Lijevo cijeli ekran"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Lijevo 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Lijevo 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Lijevo 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Desno cijeli ekran"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Gore cijeli ekran"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Gore 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Gore 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Gore 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Dole cijeli ekran"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Pozicija <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Dvaput dodirnite za uređivanje."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g> Dvaput dodirnite za dodavanje."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Pozicija <xliff:g id="POSITION">%1$d</xliff:g>. Dvaput dodirnite za odabir."</string>
@@ -611,6 +644,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> je uklonjen"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> je premješten na poziciju <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Uređivanje brzih postavki"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Aplikacija možda neće raditi na podijeljenom ekranu"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Aplikacija ne podržava dijeljenje ekrana."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Stranica <xliff:g id="ID_1">%1$d</xliff:g> od <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-bs-rBA/strings_tv.xml b/packages/SystemUI/res/values-bs-rBA/strings_tv.xml
index 65c0982..867aa9d 100644
--- a/packages/SystemUI/res/values-bs-rBA/strings_tv.xml
+++ b/packages/SystemUI/res/values-bs-rBA/strings_tv.xml
@@ -20,14 +20,14 @@
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="pip_close" msgid="3480680679023423574">"Zatvori PIP"</string>
-    <!-- no translation found for pip_fullscreen (8604643018538487816) -->
-    <skip />
-    <!-- no translation found for pip_play (674145557658227044) -->
-    <skip />
-    <!-- no translation found for pip_pause (8412075640017218862) -->
-    <skip />
+    <string name="pip_fullscreen" msgid="8604643018538487816">"Cijeli ekran"</string>
+    <string name="pip_play" msgid="674145557658227044">"Pokreni"</string>
+    <string name="pip_pause" msgid="8412075640017218862">"Pauziraj"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Za kontr. PIP držite "<b>"HOME"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Za kontrolu PIP, pritisnite i držite dugme POČETAK"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Jasno mi je"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Odbaci"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ca/strings.xml b/packages/SystemUI/res/values-ca/strings.xml
index 99cc5a9..a794ff6 100644
--- a/packages/SystemUI/res/values-ca/strings.xml
+++ b/packages/SystemUI/res/values-ca/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Senyal de dades: complet."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"S\'ha connectat a <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"S\'ha connectat a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Sense WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Una barra de WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Dues barres de WiMAX."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Vora"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"No hi ha cap targeta SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Les dades mòbils estan desactivades"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Ancoratge de Bluetooth"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Mode d\'avió."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"No hi ha cap targeta SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"S\'està canviant la xarxa de l\'operador de telefonia mòbil."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"<xliff:g id="NUMBER">%d</xliff:g> per cent de bateria."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"La bateria s\'està carregant, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> per cent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Configuració del sistema."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notificacions."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Esborra la notificació."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"El mode No molesteu està activat (només amb prioritat)."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"El mode No molesteu està activat; silenci total."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"El mode No molesteu està activat (només alarmes)."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"El mode No molesteu està desactivat."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"S\'ha desactivat el mode No molesteu."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"S\'ha activat el mode No molesteu."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"El Bluetooth està desactivat."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"El Bluetooth està activat."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"S\'està connectant el Bluetooth."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ara la pantalla està bloquejada en orientació horitzontal."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ara la pantalla està bloquejada en orientació vertical."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Capsa de postres"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Estalvi de pantalla"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Estalvi de pantalla"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"No molesteu"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Només amb prioritat"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"No hi ha dispositius vinculats  disponibles."</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brillantor"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Gira automàticament"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotació bloquejada"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Vertical"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Horitzontal"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Desconnectat"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"No hi ha cap xarxa"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi desconnectada"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"No hi ha cap xarxa Wi-Fi disponible"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Emet"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"En emissió"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"No s\'ha pogut iniciar <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"En mode segur, l\'aplicació <xliff:g id="APP">%s</xliff:g> està desactivada."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Esborra-ho tot"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Aquesta aplicació no admet el mode multifinestra"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"L\'aplicació no admet el mode multifinestra"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"L\'aplicació no admet la pantalla dividida"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Arrossega-ho aquí per utilitzar la pantalla dividida"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Divisió horitzontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Divisió vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Divisió personalitzada"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> és el diàleg de volum"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Toca per restaurar l\'original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Estàs utilitzant el perfil professional"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Toca per activar el so."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Toca per activar la vibració. Pot ser que els serveis d\'accessibilitat se silenciïn."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Toca per silenciar el so. Pot ser que els serveis d\'accessibilitat se silenciïn."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Personalitzador d\'interfície d\'usuari"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Mostra el percentatge de la bateria inserit"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Bloqueja totes les notificacions"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"No silenciïs"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"No silenciïs ni bloquegis"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Mostra la configuració completa per a la importància"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloquejades"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importància mínima"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Importància baixa"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importància normal"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Importància alta"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Importància urgent"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"No mostris mai aquestes notificacions"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Les notificacions es mostren de manera silenciosa al capdavall de la llista"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Mostra aquestes notificacions de manera silenciosa"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Permet que aquestes notificacions emetin sons"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Les notificacions apareixen a la pantalla i poden emetre sons"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Les notificacions es mostren al capdamunt de la llista, apareixen a la pantalla i poden emetre sons"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Controls millorats per a notificacions"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Activat"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Desactivat"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Amb els controls de notificació millorats, pots establir un nivell d\'importància d\'entre 0 i 5 per a les notificacions d\'una aplicació. \n\n"<b>"Nivell 5"</b>" \n- Mostra les notificacions a la part superior de la llista \n- Permet la interrupció de la pantalla completa \n- Permet sempre la previsualització \n\n"<b>"Nivell 4"</b>" \n- No permet la interrupció de la pantalla completa \n- Permet sempre la previsualització \n\n"<b>"Nivell 3"</b>" \n- No permet la interrupció de la pantalla completa \n- No permet mai la previsualització \n\n"<b>"Nivell 2"</b>" \n- No permet la interrupció de la pantalla completa \n- No permet mai la previsualització \n- Les notificacions no poden emetre sons ni vibracions \n\n"<b>"Nivell 1"</b>" \n- No permet la interrupció de la pantalla completa \n- No permet mai la previsualització \n- No activa mai el so ni la vibració \n- Amaga les notificacions de la pantalla de bloqueig i de la barra d\'estat \n- Mostra les notificacions a la part inferior de la llista \n\n"<b>"Nivell 0"</b>" \n- Bloqueja totes les notificacions de l\'aplicació"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importància: automàtica"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importància: nivell 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importància: nivell 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importància: nivell 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importància: nivell 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importància: nivell 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importància: nivell 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"L\'aplicació determina la importància de cada notificació."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"No es mostra mai les notificacions d\'aquesta aplicació."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Sense interr. pant. completa, previsual., so ni vibr. No les mostra a pantalla bloq. ni barra d\'estat."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Sense interrupció de la pantalla completa, previsualització, so ni vibració."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Sense interrupció de la pantalla completa ni previsualització."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Permet sempre la previsualització. Sense interrupció de la pantalla completa."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Permet sempre la previsualització i la interrupció de la pantalla completa."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Més opcions"</string>
     <string name="notification_done" msgid="5279426047273930175">"Fet"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Controls de notificació de l\'aplicació <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Altres"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Divisor de pantalles"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Mou avall"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Mou amunt"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Mou a l\'esquerra"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Mou a la dreta"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Pantalla esquerra completa"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Pantalla esquerra al 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Pantalla esquerra al 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Pantalla esquerra al 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Pantalla dreta completa"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Pantalla superior completa"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Pantalla superior al 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Pantalla superior al 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Pantalla superior al 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Pantalla inferior completa"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posició <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Fes doble toc per editar-la."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Fes doble toc per afegir-ho."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posició <xliff:g id="POSITION">%1$d</xliff:g>. Fes doble toc per seleccionar-la."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> s\'ha suprimit"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> s\'ha mogut a la posició <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor de la configuració ràpida."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"És possible que l\'aplicació no funcioni amb la pantalla dividida."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"L\'aplicació no admet la pantalla dividida."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Pàgina <xliff:g id="ID_1">%1$d</xliff:g> (<xliff:g id="ID_2">%2$d</xliff:g> en total)"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ca/strings_tv.xml b/packages/SystemUI/res/values-ca/strings_tv.xml
index 8876664..f03a10f 100644
--- a/packages/SystemUI/res/values-ca/strings_tv.xml
+++ b/packages/SystemUI/res/values-ca/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Reprodueix"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Posa en pausa"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Prem "<b>"INICI"</b>" per controlar PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Mantén premut el botó INICI per controlar PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"D\'acord"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Ignora"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-cs/strings.xml b/packages/SystemUI/res/values-cs/strings.xml
index 3bc73f6..d1c5131 100644
--- a/packages/SystemUI/res/values-cs/strings.xml
+++ b/packages/SystemUI/res/values-cs/strings.xml
@@ -120,6 +120,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Plný signál datové sítě."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Připojeno k zařízení <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Připojeno k zařízení <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Žádný signál sítě WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Jedna čárka signálu sítě WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Dvě čárky signálu sítě WiMAX."</string>
@@ -150,12 +152,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Žádná SIM karta."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobilní data jsou vypnutá"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Sdílené připojení přes Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Režim Letadlo."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Není vložena SIM karta"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Probíhá změna sítě operátora."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Stav baterie: <xliff:g id="NUMBER">%d</xliff:g> procent."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Systémová nastavení."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Oznámení."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Vymazat oznámení."</string>
@@ -193,9 +204,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Stav Nerušit je zapnutý – pouze prioritní vyrušení."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Je zapnut režim Nerušit – úplné ticho."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Nerušit, pouze budíky"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Stav Nerušit je vypnutý."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Stav Nerušit je vypnutý"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Stav Nerušit je zapnutý."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Rozhraní Bluetooth je vypnuto."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Rozhraní Bluetooth je zapnuto."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Probíhá připojování rozhraní Bluetooth."</string>
@@ -249,7 +264,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Obrazovka je nyní uzamčena v orientaci na šířku."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Obrazovka je nyní uzamčena v orientaci na výšku."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Pult se sladkostmi"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Spořič obrazovky"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Spořič obrazovky"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Nerušit"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Pouze prioritní"</string>
@@ -261,6 +276,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Nejsou dostupná žádná spárovaná zařízení"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Jas"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automatické otáčení"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Otáčení je uzamčeno"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Na výšku"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Na šířku"</string>
@@ -279,6 +298,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Nepřipojeno"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Žádná síť"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi vypnuta"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Žádné sítě Wi-Fi nejsou k dispozici"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Odeslat"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Odesílání"</string>
@@ -313,8 +334,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Aplikaci <xliff:g id="APP">%s</xliff:g> nelze spustit."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Aplikace <xliff:g id="APP">%s</xliff:g> je v nouzovém režimu zakázána."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Vymazat vše"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Tato aplikace režim v několika oknech nepodporuje"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplikace režim v několika oknech nepodporuje"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplikace nepodporuje režim rozdělené obrazovky"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Rozdělenou obrazovku můžete použít přetažením zde"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Vodorovné rozdělení"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Vertikální rozdělení"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Vlastní rozdělení"</string>
@@ -422,11 +443,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> je dialog hlasitosti"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Klepnutím obnovíte originál."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Používáte pracovní profil"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Klepnutím zapnete zvuk."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Klepnutím aktivujete režim vibrací. Služby přístupnosti mohou být ztlumeny."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Klepnutím vypnete zvuk. Služby přístupnosti mohou být ztlumeny."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Nástroj na ladění uživatelského rozhraní systému"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Zobrazovat vložené procento nabití baterie"</string>
@@ -472,19 +494,24 @@
     <string name="block" msgid="2734508760962682611">"Blokovat všechna oznámení"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Bez ztlumení"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Bez ztlumení a blokování"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Zobrazit všechna nastavení důležitosti"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blokováno"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Minimální důležitost"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Nízká důležitost"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normální důležitost"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Vysoká důležitost"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Urgentní důležitost"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Tato oznámení nikdy nezobrazovat"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Tato oznámení zobrazovat na konci seznamu bez zvukového upozornění"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Tato oznámení zobrazovat bez zvukového upozornění"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Povolit těmto oznámením vydávat zvuky"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Tato oznámení zobrazovat přímo na obrazovce a upozornit na ně zvukem"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Tato oznámení zobrazovat na začátku seznamu, zobrazit přímo na obrazovce a upozornit na ně zvukem"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Rozšířené ovládací prvky oznámení"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Zapnuto"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Vypnuto"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Rozšířené ovládací prvky oznámení umožňují nastavit úroveň důležitosti oznámení aplikace od 0 do 5. \n\n"<b>"Úroveň 5"</b>" \n– Zobrazit na začátku seznamu oznámení \n– Povolit vyrušení na celou obrazovku \n– Vždy zobrazit náhled \n\n"<b>"Úroveň 4"</b>" \n– Zabránit vyrušení na celou obrazovku \n– Vždy zobrazit náhled \n\n"<b>"Úroveň 3"</b>" \n– Zabránit vyrušení na celou obrazovku \n– Nikdy nezobrazovat náhled \n\n"<b>"Úroveň 2"</b>" \n– Zabránit vyrušení na celou obrazovku \n– Nikdy nezobrazovat náhled \n– Nikdy nevydávat žádný zvukový signál ani nevibrovat \n\n"<b>"Úroveň 1"</b>" \n– Zabránit vyrušení na celou obrazovku \n– Nikdy nezobrazovat náhled \n– Nikdy nevydávat zvukový signál ani nevibrovat \n– Skrýt z obrazovky uzamčení a stavového řádku \n– Zobrazovat na konci seznamu oznámení \n\n"<b>";Úroveň 0"</b>" \n– Blokovat všechna oznámení z aplikace"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Důležitost: automatická"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Důležitost: úroveň 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Důležitost: úroveň 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Důležitost: úroveň 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Důležitost: úroveň 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Důležitost: úroveň 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Důležitost: úroveň 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Důležitost každého oznámení určuje aplikace."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Oznámení této aplikace nikdy nezobrazovat."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Žádné vyrušení na celou obrazovku, náhled, zvuk ani vibrace. Skrýt na obrazovce uzamčení a stavovém řádku."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Žádné vyrušení na celou obrazovku, náhled, zvuk ani vibrace."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Žádné vyrušení na celou obrazovku ani náhled."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Vždy zobrazit náhled. Žádné vyrušení na celou obrazovku."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Vždy zobrazit náhled a umožnit vyrušení na celou obrazovku."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Další nastavení"</string>
     <string name="notification_done" msgid="5279426047273930175">"Hotovo"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Nastavení oznámení aplikace <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -599,10 +626,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Jiné"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Čára rozdělující obrazovku"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Přesunout dolů"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Přesunout nahoru"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Přesunout vlevo"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Přesunout vpravo"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Levá část na celou obrazovku"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"70 % vlevo"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"50 % vlevo"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"30 % vlevo"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Pravá část na celou obrazovku"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Horní část na celou obrazovku"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"70 % nahoře"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"50 % nahoře"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"30 % nahoře"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Dolní část na celou obrazovku"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Pozice <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Dvojitým klepnutím ji upravíte."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Dlaždici přidáte dvojitým klepnutím."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Pozice <xliff:g id="POSITION">%1$d</xliff:g>. Dvojitým klepnutím ji vyberete."</string>
@@ -612,6 +645,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Dlaždice <xliff:g id="TILE_NAME">%1$s</xliff:g> byla odstraněna"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Dlaždice <xliff:g id="TILE_NAME">%1$s</xliff:g> byla přesunuta na pozici <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor rychlého nastavení"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Aplikace v režimu rozdělené obrazovky nemusí fungovat."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Aplikace nepodporuje režim rozdělené obrazovky."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Stránka <xliff:g id="ID_1">%1$d</xliff:g> z <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-cs/strings_tv.xml b/packages/SystemUI/res/values-cs/strings_tv.xml
index 3ee822a..f51afae 100644
--- a/packages/SystemUI/res/values-cs/strings_tv.xml
+++ b/packages/SystemUI/res/values-cs/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Přehrát"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pozastavit"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Funkci PIP lze ovládat podržením tlačítka "<b>"PLOCHA"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Funkci PIP lze ovládat podržením tlačítka PLOCHA"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Rozumím"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Zavřít"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-da/strings.xml b/packages/SystemUI/res/values-da/strings.xml
index 3b47e24..39687a1 100644
--- a/packages/SystemUI/res/values-da/strings.xml
+++ b/packages/SystemUI/res/values-da/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Datasignal fuldt."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Tilsluttet <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Tilsluttet <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Ingen WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX en bjælke."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX to bjælker."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Intet SIM-kort."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobildata er slået fra."</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth-netdeling."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Flytilstand."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Der er ikke noget SIM-kort."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Mobilnetværket skiftes."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Batteri <xliff:g id="NUMBER">%d</xliff:g> procent."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Batteriet oplades. <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> procent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Systemindstillinger."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Underretninger."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Ryd underretning."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\"Forstyr ikke\" er slået til, kun prioritet."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"\"Forstyr ikke\" er slået til, total stilhed."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\"Forstyr ikke\" er slået til, kun alarmer."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\"Forstyr ikke\" er slået fra."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\"Forstyr ikke\" er slået fra."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\"Forstyr ikke\" er slået til."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth er slået fra."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth er slået til."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Opretter forbindelse til Bluetooth."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Skærmen er nu låst i liggende tilstand."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Skærmen er nu låst i stående tilstand."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessertcase"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Dagdrøm"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Pauseskærm"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Forstyr ikke"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Kun prioritet"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Der er ingen tilgængelige parrede enheder"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Lysstyrke"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Roter automatisk"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotationen er låst"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Stående"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Liggende"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Ikke forbundet"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Intet netværk"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi slået fra"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Der er ingen tilgængelige Wi-Fi-netværk"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Cast"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Caster"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> kunne ikke startes."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> er deaktiveret i sikker tilstand."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Ryd alle"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Denne app understøtter ikke flere vinduer"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Appen understøtter ikke flere vinduer"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Appen understøtter ikke delt skærm"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Træk hertil for at bruge delt skærm"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Opdel vandret"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Opdel lodret"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Opdel brugerdefineret"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> er dialogboksen for lydstyrke"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Tryk for at gendanne originalen."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Du bruger din arbejdsprofil"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Tryk for at slå lyden til."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Tryk for at konfigurere til at vibrere. Tilgængelighedstjenester kan blive deaktiveret."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Tryk for at slå lyden fra. Lyden i tilgængelighedstjenester kan blive slået fra."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Vis procent for det indbyggede batteri"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Bloker alle underretninger"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Skal ikke sættes på lydløs"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Skal ikke sættes på lydløs eller blokeres"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Vis alle indstillinger for vigtighed"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blokeret"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Min vigtighed"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Lille vigtighed"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normal vigtighed"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Stor vigtighed"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Presserende vigtighed"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Vis aldrig disse underretninger"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Vis lydløst nederst på listen over underretninger"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Vis disse underretninger lydløst"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Giv disse underretninger tilladelse til at give lyd"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Vis på skærmen, og tillad lyd"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Vis øverst på listen over underretninger, vis på skærmen, og tillad lyd"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Kontrolelementer til underretning om strøm"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Til"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Fra"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Med kontrolelementer til underretninger om strøm kan du konfigurere et vigtighedsniveau fra 0 til 5 for en apps underretninger. \n\n"<b>"Niveau 5"</b>\n"- Vis øverst på listen over underretninger \n- Tillad afbrydelse af fuld skærm \n- Se altid smugkig \n\n"<b>"Niveau 4"</b>\n"- Ingen afbrydelse af fuld skærm \n- Se altid smugkig \n\n"<b>"Niveau 3"</b>\n"- Ingen afbrydelse af fuld skærm \n- Se aldrig smugkig \n\n"<b>"Niveau 2"</b>\n"- Ingen afbrydelse af fuld skærm \n Se aldrig smugkig \n- Ingen lyd og vibration \n\n"<b>"Niveau 1"</b>\n"- Ingen afbrydelse af fuld skærm \n- Se aldrig smugkig \n- Ingen lyd eller vibration \n- Skjul fra låseskærm og statusbjælke \n- Vis nederst på listen over underretninger \n\n"<b>"Niveau 0"</b>\n"- Bloker alle underretninger fra appen."</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Vigtighed: Automatisk"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Vigtighed: Niveau 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Vigtighed: Niveau 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Vigtighed: Niveau 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Vigtighed: Niveau 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Vigtighed: Niveau 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Vigtighed: Niveau 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"App bestemmer vigtigheden af hver underretning."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Vis aldrig underretninger fra denne app"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Ingen smugkig, lyd, vibration eller afbrydelse af fuld skærm. Skjul fra låseskærm og statusbjælke."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Ingen smugkig, lyd, vibration eller afbrydelse af fuld skærm."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Ingen smugkig eller afbrydelse af fuld skærm."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Se altid smugkig. Ingen afbrydelse af fuld skærm."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Se altid smugkig, og tillad afbrydelse af fuld skærm."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Flere indstillinger"</string>
     <string name="notification_done" msgid="5279426047273930175">"Færdig"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Kontrolelementer til underretninger for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Andet"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Adskiller til delt skærm"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Flyt ned"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Flyt op"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Flyt til venstre"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Flyt til højre"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Vis venstre del i fuld skærm"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Venstre 70 %"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Venstre 50 %"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Venstre 30 %"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Vis højre del i fuld skærm"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Vis øverste del i fuld skærm"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Øverste 70 %"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Øverste 50 %"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Øverste 30 %"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Vis nederste del i fuld skærm"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Position <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Tryk to gange for at redigere."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Tryk to gange for at tilføje."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Position <xliff:g id="POSITION">%1$d</xliff:g>. Tryk to gange for at vælge."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> fjernes"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> blev flyttet til position <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Redigeringsværktøj for Hurtige indstillinger."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Appen fungerer muligvis ikke i delt skærm."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Appen understøtter ikke delt skærm."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Side <xliff:g id="ID_1">%1$d</xliff:g> af <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-da/strings_tv.xml b/packages/SystemUI/res/values-da/strings_tv.xml
index 45bba75..b031deb 100644
--- a/packages/SystemUI/res/values-da/strings_tv.xml
+++ b/packages/SystemUI/res/values-da/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Afspil"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pause"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Hold "<b>"HOME"</b>" nede for at styre PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Tryk på HOME-knappen, og hold den nede for at styre PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Afvis"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-de/strings.xml b/packages/SystemUI/res/values-de/strings.xml
index 436e7c4..0cb0a5b 100644
--- a/packages/SystemUI/res/values-de/strings.xml
+++ b/packages/SystemUI/res/values-de/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Volle Datensignalstärke"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Mit <xliff:g id="WIFI">%s</xliff:g> verbunden"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Mit <xliff:g id="BLUETOOTH">%s</xliff:g> verbunden"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Kein WiMAX"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX - ein Balken"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX - zwei Balken"</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"WLAN"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Keine SIM-Karte"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobile Datennutzung deaktiviert"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth-Tethering"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Flugmodus"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Keine SIM-Karte"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Netzwerk des Mobilfunkanbieters wird gewechselt"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Akku bei <xliff:g id="NUMBER">%d</xliff:g> Prozent."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Systemeinstellungen"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Benachrichtigungen"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Benachrichtigung löschen"</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\"Nicht stören\" an, nur wichtige Unterbrechungen"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Nicht stören, lautlos"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\"Nicht stören\" an, nur Wecker"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\"Nicht stören\" aus"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\"Nicht stören\" deaktiviert"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\"Nicht stören\" aktiviert"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth deaktiviert"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth aktiviert"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Verbindung mit Bluetooth wird hergestellt."</string>
@@ -222,8 +237,8 @@
     <string name="accessibility_quick_settings_work_mode_on" msgid="7650588553988014341">"Arbeitsmodus an."</string>
     <string name="accessibility_quick_settings_work_mode_changed_off" msgid="5605534876107300711">"Arbeitsmodus deaktiviert."</string>
     <string name="accessibility_quick_settings_work_mode_changed_on" msgid="249840330756998612">"Arbeitsmodus aktiviert."</string>
-    <string name="accessibility_quick_settings_data_saver_changed_off" msgid="650231949881093289">"Datenkomprimierung ist deaktiviert."</string>
-    <string name="accessibility_quick_settings_data_saver_changed_on" msgid="4218725402373934151">"Datenkomprimierung ist aktiviert."</string>
+    <string name="accessibility_quick_settings_data_saver_changed_off" msgid="650231949881093289">"Der Datensparmodus ist deaktiviert."</string>
+    <string name="accessibility_quick_settings_data_saver_changed_on" msgid="4218725402373934151">"Der Datensparmodus ist aktiviert."</string>
     <string name="accessibility_brightness" msgid="8003681285547803095">"Helligkeit des Displays"</string>
     <string name="data_usage_disabled_dialog_3g_title" msgid="5281770593459841889">"2G-/3G-Daten pausiert"</string>
     <string name="data_usage_disabled_dialog_4g_title" msgid="1601769736881078016">"4G-Daten pausiert"</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Bildschirm bleibt jetzt im Querformat."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Bildschirm bleibt jetzt im Hochformat."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessertbehälter"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Bildschirmschoner"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Nicht stören"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Nur wichtige Unterbrechungen"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Keine Pairing-Geräte verfügbar"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Helligkeit"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automatisch drehen"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Drehung gesperrt"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Hochformat"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Querformat"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Nicht verbunden"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Kein Netz"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"WLAN aus"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Keine WLAN-Netzwerke verfügbar"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Übertragen"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Wird übertragen"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> konnte nicht gestartet werden."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> ist im abgesicherten Modus deaktiviert."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Alle löschen"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Diese App unterstützt den Mehrfenstermodus nicht"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"App unterstützt Mehrfenstermodus nicht"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Das Teilen des Bildschirms wird in dieser App nicht unterstützt"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Hierher ziehen, um den Bildschirm zu teilen"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Geteilte Schaltfläche – horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Geteilte Schaltfläche – vertikal"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Geteilte Schaltfläche – benutzerdefiniert"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> regelt die Lautstärke."</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Zum Wiederherstellen des Originals hier tippen"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Du verwendest dein Arbeitsprofil."</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Zum Aufheben der Stummschaltung tippen."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Tippen, um Vibrieren festzulegen. Bedienungshilfen werden unter Umständen stummgeschaltet."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Zum Stummschalten tippen. Bedienungshilfen werden unter Umständen stummgeschaltet."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Eingebettete Akku-Prozentzahl anzeigen"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Alle Benachrichtigungen blockieren"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Nicht stummschalten"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Nicht stummschalten oder blockieren"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Vollständige Wichtigkeitseinstellungen anzeigen"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blockiert"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Minimum-Wichtigkeit"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Geringe Wichtigkeit"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Reguläre Wichtigkeit"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Hohe Wichtigkeit"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Sehr hohe Wichtigkeit"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Diese Benachrichtigungen niemals anzeigen"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Ohne Ton am Ende der Benachrichtigungsliste anzeigen"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Diese Benachrichtigungen ohne Ton anzeigen"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Für diese Benachrichtigungen Ton zulassen"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Auf dem Display einblenden und Ton zulassen"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Ganz oben in der Benachrichtigungsliste anzeigen, auf dem Display einblenden und Ton zulassen"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Erweiterte Benachrichtigungseinstellungen"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"An"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Aus"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Mit den erweiterten Benachrichtigungseinstellungen kannst du für App-Benachrichtigungen eine Wichtigkeitsstufe von 0 bis 5 festlegen. \n\n"<b>"Stufe 5"</b>" \n- Auf der Benachrichtigungsleiste ganz oben anzeigen \n- Vollbildunterbrechung zulassen \n- Immer kurz einblenden \n\n"<b>"Stufe 4"</b>" \n- Keine Vollbildunterbrechung \n- Immer kurz einblenden \n\n"<b>"Stufe 3"</b>" \n- Keine Vollbildunterbrechung \n- Nie kurz einblenden \n\n"<b>"Stufe 2"</b>" \n- Keine Vollbildunterbrechung \n- Nie kurz einblenden \n- Weder Ton noch Vibration \n\n"<b>"Stufe 1"</b>" \n- Keine Vollbildunterbrechung \n- Nie kurz einblenden \n- Weder Ton noch Vibration \n- Auf Sperrbildschirm und Statusleiste verbergen \n- Auf der Benachrichtigungsleiste ganz unten anzeigen \n\n"<b>"Stufe 0"</b>" \n- Alle Benachrichtigungen der App sperren"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Wichtigkeit: automatisch"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Wichtigkeit: Stufe 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Wichtigkeit: Stufe 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Wichtigkeit: Stufe 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Wichtigkeit: Stufe 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Wichtigkeit: Stufe 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Wichtigkeit: Stufe 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Die Wichtigkeit jeder Benachrichtigung wird durch die App bestimmt."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nie Benachrichtigungen von dieser App zeigen."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Weder Vollbildunterbrechung noch kurzes Einblenden, Ton oder Vibration. Nicht auf Sperrbildschirm oder Statusleiste anzeigen."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Weder Vollbildunterbrechung noch kurzes Einblenden, Ton oder Vibration."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Weder Vollbildunterbrechung noch kurzes Einblenden."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Immer kurzes Einblenden. Keine Vollbildunterbrechung."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Immer kurzes Einblenden, Vollbildunterbrechung erlauben."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Weitere Einstellungen"</string>
     <string name="notification_done" msgid="5279426047273930175">"Fertig"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g>-Benachrichtigungseinstellungen"</string>
@@ -556,9 +583,9 @@
     <string name="headset" msgid="4534219457597457353">"Headset"</string>
     <string name="accessibility_status_bar_headphones" msgid="9156307120060559989">"Mit Kopfhörer verbunden"</string>
     <string name="accessibility_status_bar_headset" msgid="8666419213072449202">"Mit Headset verbunden"</string>
-    <string name="data_saver" msgid="5037565123367048522">"Datenkomprimierung"</string>
-    <string name="accessibility_data_saver_on" msgid="8454111686783887148">"Datenkomprimierung aktiviert"</string>
-    <string name="accessibility_data_saver_off" msgid="8841582529453005337">"Datenkomprimierung deaktiviert"</string>
+    <string name="data_saver" msgid="5037565123367048522">"Datenverbrauch reduzieren"</string>
+    <string name="accessibility_data_saver_on" msgid="8454111686783887148">"Datensparmodus aktiviert"</string>
+    <string name="accessibility_data_saver_off" msgid="8841582529453005337">"Datensparmodus deaktiviert"</string>
     <string name="switch_bar_on" msgid="1142437840752794229">"An"</string>
     <string name="switch_bar_off" msgid="8803270596930432874">"Aus"</string>
     <string name="nav_bar" msgid="1993221402773877607">"Navigationsleiste"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Sonstiges"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Bildschirmteiler"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Nach unten verschieben"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Nach oben verschieben"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Nach links verschieben"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Nach rechts verschieben"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Vollbild links"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"70 % links"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"50 % links"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"30 % links"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Vollbild rechts"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Vollbild oben"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"70 % oben"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"50 % oben"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"30 % oben"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Vollbild unten"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Position <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Zum Bearbeiten doppeltippen."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Zum Hinzufügen doppeltippen."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Position <xliff:g id="POSITION">%1$d</xliff:g>. Zum Auswählen doppeltippen."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> wurde entfernt"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> an Position <xliff:g id="POSITION">%2$d</xliff:g> verschoben"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor für Schnelleinstellungen."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Die App funktioniert unter Umständen bei geteiltem Bildschirm nicht."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Das Teilen des Bildschirms wird in dieser App nicht unterstützt."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Seite <xliff:g id="ID_1">%1$d</xliff:g> von <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-de/strings_tv.xml b/packages/SystemUI/res/values-de/strings_tv.xml
index 3d9c233..8830fa0 100644
--- a/packages/SystemUI/res/values-de/strings_tv.xml
+++ b/packages/SystemUI/res/values-de/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Wiedergeben"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pausieren"</string>
     <string name="pip_hold_home" msgid="340086535668778109"><b>"STARTBILDSCHIRMTASTE"</b>" drücken, um PIP zu steuern"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Halte die Taste für die Startseite gedrückt, um das Bild-in-Bild zu steuern"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Beenden"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-el/strings.xml b/packages/SystemUI/res/values-el/strings.xml
index 8809cdf..fdb0499 100644
--- a/packages/SystemUI/res/values-el/strings.xml
+++ b/packages/SystemUI/res/values-el/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Πλήρες σήμα δεδομένων."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Συνδέθηκε στο <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Συνδέθηκε στο <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Δεν υπάρχει σήμα WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Σήμα WiMAX μία γραμμή."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Σήμα WiMAX δύο γραμμές."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Δεν υπάρχει SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Τα δεδομένα κινητής τηλεφωνίας είναι απενεργοποιημένα"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Πρόσδεση Bluetooth"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Λειτουργία πτήσης."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Δεν υπάρχει κάρτα SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Αλλαγή δικτύου εταιρείας κινητής τηλεφωνίας."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Μπαταρία <xliff:g id="NUMBER">%d</xliff:g> τοις εκατό."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Φόρτιση μπαταρίας, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> τοις εκατό."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Ρυθμίσεις συστήματος."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Ειδοποιήσεις."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Εκκαθάριση ειδοποίησης."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Η λειτουργία \"Μην ενοχλείτε\" ενεργοποιήθηκε, μόνο προτεραιότητας."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Η λειτουργία \"Μην ενοχλείτε\" ενεργοποιήθηκε, πλήρης σίγαση."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Μην ενοχλείτε, μόνο ειδοποιήσεις."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Η λειτουργία \"Μην ενοχλείτε\" απενεργοποιήθηκε."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Η λειτουργία \"Μην ενοχλείτε\" απενεργοποιήθηκε."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Η λειτουργία \"Μην ενοχλείτε\" ενεργοποιήθηκε."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Ανενεργό Bluetooth."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Ενεργό Bluetooth."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Σύνδεση Bluetooth."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Η οθόνη έχει κλειδωθεί σε οριζόντιο προσανατολισμό."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Η οθόνη έχει κλειδωθεί σε κατακόρυφο προσανατολισμό."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Επιδόρπιο"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Προφύλαξη οθόνης"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Μην ενοχλείτε"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Μόνο προτεραιότητας"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Δεν υπάρχουν διαθέσιμες συσκευές σε σύζευξη"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Φωτεινότητα"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Αυτόματη περιστροφή"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Η περιστροφή είναι κλειδωμένη"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Κατακόρυφα"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Οριζόντια"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Μη συνδεδεμένο"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Κανένα δίκτυο"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi ανενεργό"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Δεν υπάρχουν διαθέσιμα δίκτυα Wi-Fi"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Μετάδοση"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Μετάδοση"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Δεν ήταν δυνατή η εκκίνηση της εφαρμογής <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Η εφαρμογή <xliff:g id="APP">%s</xliff:g> έχει απενεργοποιηθεί στην ασφαλή λειτουργία."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Διαγραφή όλων"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Η εφαρμογή αυτή δεν υποστηρίζει τη λειτουργία πολλαπλών παραθύρων"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Η εφαρμογή δεν υποστηρίζει τη λειτουργία πολλαπλών παραθύρων"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Η εφαρμογή δεν υποστηρίζει τον διαχωρισμό οθόνης"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Σύρετε εδώ για να χρησιμοποιήσετε τον διαχωρισμό οθόνης"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Οριζόντιος διαχωρισμός"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Κάθετος διαχωρισμός"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Προσαρμοσμένος διαχωρισμός"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"Η εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g> αποτελεί το παράθυρο διαλόγου ελέγχου έντασης"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Αγγίξτε για επαναφορά αρχικού."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Χρησιμοποιείτε το προφίλ εργασίας σας"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Πατήστε για κατάργηση σίγασης."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Πατήστε για ενεργοποιήσετε τη δόνηση. Οι υπηρεσίες προσβασιμότητας ενδέχεται να τεθούν σε σίγαση."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Πατήστε για σίγαση. Οι υπηρεσίες προσβασιμότητας ενδέχεται να τεθούν σε σίγαση."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Εμφάνιση ποσοστού ενσωματωμένης μπαταρίας"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Αποκλεισμός όλων των ειδοποιήσεων"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Χωρίς σίγαση"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Χωρίς σίγαση ή αποκλεισμό"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Εμφάνιση όλων των ρυθμίσεων βαρύτητας"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Αποκλεισμένες"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Ελάχιστη βαρύτητα"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Μικρής βαρύτητας"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Κανονικής βαρύτητας"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Μεγάλης βαρύτητας"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Επείγουσες"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Να μην εμφανίζονται ποτέ αυτές οι ειδοποιήσεις"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Να εμφανίζονται στο κάτω μέρος της λίστας ειδοποιήσεων χωρίς ήχο"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Να εμφανίζονται αυτές οι ειδοποιήσεις χωρίς ήχο"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Να επιτρέπονται οι ήχοι από αυτές τις ειδοποιήσεις"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Να προβάλλονται στην οθόνη και να επιτρέπεται ο ήχος"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Να εμφανίζονται στην κορυφή της λίστας ειδοποιήσεων, να προβάλλονται στην οθόνη και να επιτρέπεται ο ήχος"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Στοιχεία ελέγχου ειδοποίησης ισχύος"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Ενεργή"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Ανενεργή"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Με τα στοιχεία ελέγχου ειδοποίησης ισχύος, μπορείτε να ορίσετε ένα επίπεδο βαρύτητας από 0 έως 5 για τις ειδοποιήσεις μιας εφαρμογής. \n\n"<b>"Επίπεδο 5"</b>" \n- Εμφάνιση στην κορυφή της λίστας ειδοποιήσεων \n- Να επιτρέπεται η διακοπή πλήρους οθόνης \n- Να γίνεται πάντα σύντομη προβολή \n\n"<b>"Επίπεδο 4"</b>" \n- Αποτροπή διακοπής πλήρους οθόνης \n- Να γίνεται πάντα σύντομη προβολή \n\n"<b>"Επίπεδο 3"</b>" \n- Αποτροπή διακοπής πλήρους οθόνης \n- Να μην γίνεται ποτέ σύντομη προβολή \n\n"<b>"Επίπεδο 2"</b>" \n- Αποτροπή διακοπής πλήρους οθόνης \n- Να μην γίνεται ποτέ σύντομη προβολή \n- Να μην χρησιμοποιείται ποτέ ήχος και δόνηση \n\n"<b>"Επίπεδο 1"</b>" \n- Αποτροπή διακοπής πλήρους οθόνης \n- Να μην γίνεται ποτέ σύντομη προβολή \n- Να μην χρησιμοποιείται ποτέ ήχος και δόνηση \n- Απόκρυψη από την οθόνη κλειδώματος και τη γραμμή κατάστασης \n- Εμφάνιση στο κάτω μέρος της λίστας ειδοποιήσεων \n\n"<b>"Επίπεδο 0"</b>" \n- Αποκλεισμός όλων των ειδοποιήσεων από την εφαρμογή"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Βαρύτητα: Αυτόματη"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Βαρύτητα: Επίπεδο 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Βαρύτητα: Επίπεδο 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Βαρύτητα: Επίπεδο 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Βαρύτητα: Επίπεδο 30"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Βαρύτητα: Επίπεδο 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Βαρύτητα: Επίπεδο 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Η εφαρμογή αποφασίζει για τη βαρύτητα κάθε ειδοποίησης."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Να μην εμφανίζονται ποτέ ειδοποιήσεις από αυτήν την εφαρμογή."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Χωρίς λειτ. διακοπ., σύντ. προβ., ήχου ή δόν. σε πλ. οθόνη. Απόκρ. από οθ. κλειδ. και γραμμή κατάστ."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Να μην είναι διαθέσιμες οι λειτουργίες διακοπής, σύντομης προβολής, ήχου ή δόνησης σε πλήρη οθόνη."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Να μην γίνεται διακοπή ή σύντομη προβολή σε πλήρη οθόνη."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Να γίνεται πάντα σύντομη προβολή. Να μην γίνεται διακοπή σε πλήρη οθόνη."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Να γίνεται πάντα σύντομη προβολή και να επιτρέπεται η διακοπή σε πλήρη οθόνη."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Περισσότερες ρυθμίσεις"</string>
     <string name="notification_done" msgid="5279426047273930175">"Τέλος"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Στοιχεία ελέγχου κοινοποίησης <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Άλλο"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Διαχωριστικό οθόνης"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Μετακίνηση προς τα κάτω"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Μετακίνηση προς τα επάνω"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Μετακίνηση αριστερά"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Μετακίνηση δεξιά"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Αριστερή πλήρης οθόνη"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Αριστερή 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Αριστερή 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Αριστερή 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Δεξιά πλήρης οθόνη"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Πάνω πλήρης οθόνη"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Πάνω 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Πάνω 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Πάνω 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Κάτω πλήρης οθόνη"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Θέση <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Πατήστε δύο φορές για επεξεργασία."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Πατήστε δύο φορές για προσθήκη."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Θέση <xliff:g id="POSITION">%1$d</xliff:g>. Πατήστε δύο φορές για επιλογή."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Το <xliff:g id="TILE_NAME">%1$s</xliff:g> καταργείται"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Το <xliff:g id="TILE_NAME">%1$s</xliff:g> μετακινήθηκε στη θέση <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Επεξεργασία γρήγορων ρυθμίσεων."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Δεν είναι δυνατή η λειτουργία της εφαρμογής με διαχωρισμό οθόνης."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Η εφαρμογή δεν υποστηρίζει διαχωρισμό οθόνης."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Σελίδα <xliff:g id="ID_1">%1$d</xliff:g> από <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-el/strings_tv.xml b/packages/SystemUI/res/values-el/strings_tv.xml
index c54c7be..9f3595d 100644
--- a/packages/SystemUI/res/values-el/strings_tv.xml
+++ b/packages/SystemUI/res/values-el/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Αναπαραγωγή"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Παύση"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Κρατήστε το πλήκτρο "<b>"HOME"</b>" πατημένο για έλεγχο του PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Πιέστε παρατεταμένα το κουμπί HOME, για να ελέγξετε τη λειτουργία PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Κατάλαβα"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Παράβλεψη"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-en-rAU/strings.xml b/packages/SystemUI/res/values-en-rAU/strings.xml
index 218cbbd..b7f8c4d 100644
--- a/packages/SystemUI/res/values-en-rAU/strings.xml
+++ b/packages/SystemUI/res/values-en-rAU/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Data signal full."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Connected to <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Connected to <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"Connected to <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"No WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX one bar."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX two bars."</string>
@@ -148,12 +149,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"No SIM."</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"Mobile Data"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"Mobile Data On"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobile Data Off"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth tethering"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Aeroplane mode"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"No SIM card."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Carrier network changing."</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"Open battery details"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Battery <xliff:g id="NUMBER">%d</xliff:g> per cent."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Battery charging, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> percent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"System settings"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notifications."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Clear notification."</string>
@@ -191,9 +196,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\'Do not disturb\' on, priority only."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Do not disturb on, total silence."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Do not disturb on, alarms only."</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"Do not disturb"</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\'Do not disturb\' off."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\'Do not disturb\' turned off."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\'Do not disturb\' turned on."</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"Bluetooth"</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth off."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth on."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth connecting."</string>
@@ -247,7 +254,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Screen is now locked in landscape orientation."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Screen is now locked in portrait orientation."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Screen saver"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Do not disturb"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Priority only"</string>
@@ -259,6 +266,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"No paired devices available"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brightness"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Auto-rotate"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"Auto-rotate screen"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"Set to <xliff:g id="ID_1">%s</xliff:g>"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotation locked"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portrait"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Landscape"</string>
@@ -277,6 +286,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Not Connected"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"No Network"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi Off"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"Wi-Fi On"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"No Wi-Fi networks available"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Cast"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Casting"</string>
@@ -311,8 +321,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Could not start <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> is disabled in safe-mode."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Clear all"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"This app does not support multi-window"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"App does not support multi-window"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"App doesn\'t support split screen"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Drag here to use split screen"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Split Horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Split Vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Split Customised"</string>
@@ -420,12 +430,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> is the volume dialogue"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Touch to restore the original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"You\'re using your work profile"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Tap to unmute."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Tap to set to vibrate. Accessibility services may be muted."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Tap to mute. Accessibility services may be muted."</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"%s volume controls shown. Swipe up to dismiss."</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"Volume controls hidden"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Show embedded battery percentage"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"Show battery level percentage inside the status bar icon when not charging"</string>
@@ -470,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"Block all notifications"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Don\'t silence"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Don\'t silence or block"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Show full importance settings"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blocked"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Min importance"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Low importance"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normal importance"</string>
-    <string name="high_importance" msgid="1527066195614050263">"High importance"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Urgent importance"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Never show these notifications"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Silently show at the bottom of the notification list"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Silently show these notifications"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Allow these notifications to make sounds"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Peek on to the screen and allow sound"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Show at the top of the notifications list, peek on to the screen and allow sound"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Power notification controls"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"On"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Off"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"With power notification controls, you can set an importance level from 0 to 5 for an app\'s notifications. \n\n"<b>"Level 5"</b>" \n- Show at the top of the notification list \n- Allow full screen interruption \n- Always peek \n\n"<b>"Level 4"</b>" \n- Prevent full screen interruption \n- Always peek \n\n"<b>"Level 3"</b>" \n- Prevent full screen interruption \n- Never peek \n\n"<b>"Level 2"</b>" \n- Prevent full screen interruption \n- Never peek \n- Never make sound and vibration \n\n"<b>"Level 1"</b>" \n- Prevent full screen interruption \n- Never peek \n- Never make sound or vibrate \n- Hide from lock screen and status bar \n- Show at the bottom of the notification list \n\n"<b>"Level 0"</b>" \n- Block all notifications from the app"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importance: Automatic"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importance: Level 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importance: Level 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importance: Level 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importance: Level 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importance: Level 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importance: Level 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"App determines importance for each notification."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Never show notifications from this app."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"No full screen interruption, peeking, sound or vibration. Hide from lock screen and status bar."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"No full screen interruption, peeking, sound or vibration."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"No full screen interruption or peeking."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Always peek. No full screen interruption."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Always peek, and allow full screen interruption."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"More settings"</string>
     <string name="notification_done" msgid="5279426047273930175">"Finished"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> notification controls"</string>
@@ -597,10 +611,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Other"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Split screen divider"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Move down"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Move up"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Move to the left"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Move to the right"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Left full screen"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Left 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Left 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Left 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Right full screen"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Top full screen"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Top 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Top 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Top 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Bottom full screen"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Position <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Double tap to edit."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Double tap to add."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Position <xliff:g id="POSITION">%1$d</xliff:g>. Double tap to select."</string>
@@ -610,6 +630,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> is removed"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> moved to position <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Quick settings editor."</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"<xliff:g id="ID_1">%1$s</xliff:g> notification: <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"App may not work with split-screen."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"App does not support split-screen."</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"Open settings."</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"Open quick settings."</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"Close quick settings."</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"Alarm set."</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"Signed in as <xliff:g id="ID_1">%s</xliff:g>"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"No Internet."</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"Open details."</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"Open <xliff:g id="ID_1">%s</xliff:g> settings."</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"Edit order of settings."</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Page <xliff:g id="ID_1">%1$d</xliff:g> of <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-en-rAU/strings_tv.xml b/packages/SystemUI/res/values-en-rAU/strings_tv.xml
index 87255ae..730cf74 100644
--- a/packages/SystemUI/res/values-en-rAU/strings_tv.xml
+++ b/packages/SystemUI/res/values-en-rAU/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"Play"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pause"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Hold "<b>"HOME"</b>" to control PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Press and hold the HOME button to control PIP"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"Picture-in-picture"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"This keeps your video in view until you play another one. Press and hold "<b>"HOME"</b>" to control it."</string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Understood"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Dismiss"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-en-rGB/strings.xml b/packages/SystemUI/res/values-en-rGB/strings.xml
index 218cbbd..b7f8c4d 100644
--- a/packages/SystemUI/res/values-en-rGB/strings.xml
+++ b/packages/SystemUI/res/values-en-rGB/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Data signal full."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Connected to <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Connected to <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"Connected to <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"No WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX one bar."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX two bars."</string>
@@ -148,12 +149,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"No SIM."</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"Mobile Data"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"Mobile Data On"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobile Data Off"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth tethering"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Aeroplane mode"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"No SIM card."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Carrier network changing."</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"Open battery details"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Battery <xliff:g id="NUMBER">%d</xliff:g> per cent."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Battery charging, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> percent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"System settings"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notifications."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Clear notification."</string>
@@ -191,9 +196,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\'Do not disturb\' on, priority only."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Do not disturb on, total silence."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Do not disturb on, alarms only."</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"Do not disturb"</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\'Do not disturb\' off."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\'Do not disturb\' turned off."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\'Do not disturb\' turned on."</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"Bluetooth"</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth off."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth on."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth connecting."</string>
@@ -247,7 +254,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Screen is now locked in landscape orientation."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Screen is now locked in portrait orientation."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Screen saver"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Do not disturb"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Priority only"</string>
@@ -259,6 +266,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"No paired devices available"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brightness"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Auto-rotate"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"Auto-rotate screen"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"Set to <xliff:g id="ID_1">%s</xliff:g>"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotation locked"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portrait"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Landscape"</string>
@@ -277,6 +286,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Not Connected"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"No Network"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi Off"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"Wi-Fi On"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"No Wi-Fi networks available"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Cast"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Casting"</string>
@@ -311,8 +321,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Could not start <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> is disabled in safe-mode."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Clear all"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"This app does not support multi-window"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"App does not support multi-window"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"App doesn\'t support split screen"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Drag here to use split screen"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Split Horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Split Vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Split Customised"</string>
@@ -420,12 +430,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> is the volume dialogue"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Touch to restore the original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"You\'re using your work profile"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Tap to unmute."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Tap to set to vibrate. Accessibility services may be muted."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Tap to mute. Accessibility services may be muted."</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"%s volume controls shown. Swipe up to dismiss."</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"Volume controls hidden"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Show embedded battery percentage"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"Show battery level percentage inside the status bar icon when not charging"</string>
@@ -470,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"Block all notifications"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Don\'t silence"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Don\'t silence or block"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Show full importance settings"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blocked"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Min importance"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Low importance"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normal importance"</string>
-    <string name="high_importance" msgid="1527066195614050263">"High importance"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Urgent importance"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Never show these notifications"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Silently show at the bottom of the notification list"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Silently show these notifications"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Allow these notifications to make sounds"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Peek on to the screen and allow sound"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Show at the top of the notifications list, peek on to the screen and allow sound"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Power notification controls"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"On"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Off"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"With power notification controls, you can set an importance level from 0 to 5 for an app\'s notifications. \n\n"<b>"Level 5"</b>" \n- Show at the top of the notification list \n- Allow full screen interruption \n- Always peek \n\n"<b>"Level 4"</b>" \n- Prevent full screen interruption \n- Always peek \n\n"<b>"Level 3"</b>" \n- Prevent full screen interruption \n- Never peek \n\n"<b>"Level 2"</b>" \n- Prevent full screen interruption \n- Never peek \n- Never make sound and vibration \n\n"<b>"Level 1"</b>" \n- Prevent full screen interruption \n- Never peek \n- Never make sound or vibrate \n- Hide from lock screen and status bar \n- Show at the bottom of the notification list \n\n"<b>"Level 0"</b>" \n- Block all notifications from the app"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importance: Automatic"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importance: Level 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importance: Level 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importance: Level 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importance: Level 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importance: Level 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importance: Level 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"App determines importance for each notification."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Never show notifications from this app."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"No full screen interruption, peeking, sound or vibration. Hide from lock screen and status bar."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"No full screen interruption, peeking, sound or vibration."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"No full screen interruption or peeking."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Always peek. No full screen interruption."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Always peek, and allow full screen interruption."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"More settings"</string>
     <string name="notification_done" msgid="5279426047273930175">"Finished"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> notification controls"</string>
@@ -597,10 +611,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Other"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Split screen divider"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Move down"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Move up"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Move to the left"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Move to the right"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Left full screen"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Left 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Left 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Left 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Right full screen"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Top full screen"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Top 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Top 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Top 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Bottom full screen"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Position <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Double tap to edit."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Double tap to add."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Position <xliff:g id="POSITION">%1$d</xliff:g>. Double tap to select."</string>
@@ -610,6 +630,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> is removed"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> moved to position <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Quick settings editor."</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"<xliff:g id="ID_1">%1$s</xliff:g> notification: <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"App may not work with split-screen."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"App does not support split-screen."</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"Open settings."</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"Open quick settings."</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"Close quick settings."</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"Alarm set."</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"Signed in as <xliff:g id="ID_1">%s</xliff:g>"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"No Internet."</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"Open details."</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"Open <xliff:g id="ID_1">%s</xliff:g> settings."</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"Edit order of settings."</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Page <xliff:g id="ID_1">%1$d</xliff:g> of <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-en-rGB/strings_tv.xml b/packages/SystemUI/res/values-en-rGB/strings_tv.xml
index 87255ae..730cf74 100644
--- a/packages/SystemUI/res/values-en-rGB/strings_tv.xml
+++ b/packages/SystemUI/res/values-en-rGB/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"Play"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pause"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Hold "<b>"HOME"</b>" to control PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Press and hold the HOME button to control PIP"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"Picture-in-picture"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"This keeps your video in view until you play another one. Press and hold "<b>"HOME"</b>" to control it."</string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Understood"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Dismiss"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-en-rIN/strings.xml b/packages/SystemUI/res/values-en-rIN/strings.xml
index 218cbbd..b7f8c4d 100644
--- a/packages/SystemUI/res/values-en-rIN/strings.xml
+++ b/packages/SystemUI/res/values-en-rIN/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Data signal full."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Connected to <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Connected to <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"Connected to <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"No WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX one bar."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX two bars."</string>
@@ -148,12 +149,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"No SIM."</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"Mobile Data"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"Mobile Data On"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobile Data Off"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth tethering"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Aeroplane mode"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"No SIM card."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Carrier network changing."</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"Open battery details"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Battery <xliff:g id="NUMBER">%d</xliff:g> per cent."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Battery charging, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> percent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"System settings"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notifications."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Clear notification."</string>
@@ -191,9 +196,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\'Do not disturb\' on, priority only."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Do not disturb on, total silence."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Do not disturb on, alarms only."</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"Do not disturb"</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\'Do not disturb\' off."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\'Do not disturb\' turned off."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\'Do not disturb\' turned on."</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"Bluetooth"</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth off."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth on."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth connecting."</string>
@@ -247,7 +254,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Screen is now locked in landscape orientation."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Screen is now locked in portrait orientation."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Screen saver"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Do not disturb"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Priority only"</string>
@@ -259,6 +266,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"No paired devices available"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brightness"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Auto-rotate"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"Auto-rotate screen"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"Set to <xliff:g id="ID_1">%s</xliff:g>"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotation locked"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portrait"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Landscape"</string>
@@ -277,6 +286,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Not Connected"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"No Network"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi Off"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"Wi-Fi On"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"No Wi-Fi networks available"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Cast"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Casting"</string>
@@ -311,8 +321,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Could not start <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> is disabled in safe-mode."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Clear all"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"This app does not support multi-window"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"App does not support multi-window"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"App doesn\'t support split screen"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Drag here to use split screen"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Split Horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Split Vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Split Customised"</string>
@@ -420,12 +430,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> is the volume dialogue"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Touch to restore the original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"You\'re using your work profile"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Tap to unmute."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Tap to set to vibrate. Accessibility services may be muted."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Tap to mute. Accessibility services may be muted."</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"%s volume controls shown. Swipe up to dismiss."</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"Volume controls hidden"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Show embedded battery percentage"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"Show battery level percentage inside the status bar icon when not charging"</string>
@@ -470,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"Block all notifications"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Don\'t silence"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Don\'t silence or block"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Show full importance settings"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blocked"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Min importance"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Low importance"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normal importance"</string>
-    <string name="high_importance" msgid="1527066195614050263">"High importance"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Urgent importance"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Never show these notifications"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Silently show at the bottom of the notification list"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Silently show these notifications"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Allow these notifications to make sounds"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Peek on to the screen and allow sound"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Show at the top of the notifications list, peek on to the screen and allow sound"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Power notification controls"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"On"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Off"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"With power notification controls, you can set an importance level from 0 to 5 for an app\'s notifications. \n\n"<b>"Level 5"</b>" \n- Show at the top of the notification list \n- Allow full screen interruption \n- Always peek \n\n"<b>"Level 4"</b>" \n- Prevent full screen interruption \n- Always peek \n\n"<b>"Level 3"</b>" \n- Prevent full screen interruption \n- Never peek \n\n"<b>"Level 2"</b>" \n- Prevent full screen interruption \n- Never peek \n- Never make sound and vibration \n\n"<b>"Level 1"</b>" \n- Prevent full screen interruption \n- Never peek \n- Never make sound or vibrate \n- Hide from lock screen and status bar \n- Show at the bottom of the notification list \n\n"<b>"Level 0"</b>" \n- Block all notifications from the app"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importance: Automatic"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importance: Level 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importance: Level 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importance: Level 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importance: Level 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importance: Level 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importance: Level 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"App determines importance for each notification."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Never show notifications from this app."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"No full screen interruption, peeking, sound or vibration. Hide from lock screen and status bar."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"No full screen interruption, peeking, sound or vibration."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"No full screen interruption or peeking."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Always peek. No full screen interruption."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Always peek, and allow full screen interruption."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"More settings"</string>
     <string name="notification_done" msgid="5279426047273930175">"Finished"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> notification controls"</string>
@@ -597,10 +611,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Other"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Split screen divider"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Move down"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Move up"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Move to the left"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Move to the right"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Left full screen"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Left 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Left 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Left 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Right full screen"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Top full screen"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Top 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Top 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Top 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Bottom full screen"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Position <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Double tap to edit."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Double tap to add."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Position <xliff:g id="POSITION">%1$d</xliff:g>. Double tap to select."</string>
@@ -610,6 +630,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> is removed"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> moved to position <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Quick settings editor."</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"<xliff:g id="ID_1">%1$s</xliff:g> notification: <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"App may not work with split-screen."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"App does not support split-screen."</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"Open settings."</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"Open quick settings."</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"Close quick settings."</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"Alarm set."</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"Signed in as <xliff:g id="ID_1">%s</xliff:g>"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"No Internet."</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"Open details."</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"Open <xliff:g id="ID_1">%s</xliff:g> settings."</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"Edit order of settings."</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Page <xliff:g id="ID_1">%1$d</xliff:g> of <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-en-rIN/strings_tv.xml b/packages/SystemUI/res/values-en-rIN/strings_tv.xml
index 87255ae..730cf74 100644
--- a/packages/SystemUI/res/values-en-rIN/strings_tv.xml
+++ b/packages/SystemUI/res/values-en-rIN/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"Play"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pause"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Hold "<b>"HOME"</b>" to control PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Press and hold the HOME button to control PIP"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"Picture-in-picture"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"This keeps your video in view until you play another one. Press and hold "<b>"HOME"</b>" to control it."</string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Understood"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Dismiss"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-es-rUS/strings.xml b/packages/SystemUI/res/values-es-rUS/strings.xml
index c612431..8fa6e81 100644
--- a/packages/SystemUI/res/values-es-rUS/strings.xml
+++ b/packages/SystemUI/res/values-es-rUS/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Señal de datos completa"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Conectado a <xliff:g id="WIFI">%s</xliff:g>"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Sin conexión WiMAX"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Una barra de WiMAX"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Dos barras de WiMAX"</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Sin tarjeta SIM"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Los datos móviles están desactivados"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Conexión mediante Bluetooth"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Modo avión"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Sin tarjeta SIM"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Cambio de proveedor de red"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Batería <xliff:g id="NUMBER">%d</xliff:g> por ciento"</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Configuración del sistema"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notificaciones"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Eliminar notificación"</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"No molestar activado (solo prioridad)"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"No molestar activado, silencio total"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"No molestar activado (solo alarmas)"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"No molestar desactivado"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"No molestar desactivado"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"No molestar activado"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth desactivado"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth activado"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth conectándose"</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"La pantalla está bloqueada en orientación paisaje."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"La pantalla está bloqueada en orientación retrato."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Caja para postres"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Protector de pantalla"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Protector pantalla"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"No molestar"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Solo prioridad"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"No hay dispositivos sincronizados disponibles"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brillo"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotación automática"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotación bloqueada"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Vertical"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Horizontal"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Sin conexión"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Sin red"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi desactivada"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"No hay redes Wi-Fi disponibles"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Transmitir"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Transmitiendo"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"No se pudo iniciar <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> está inhabilitada en modo seguro."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Borrar todo"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Esta app no es compatible con el modo multiventana"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"La app no es compatible con el modo multiventana"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"La app no es compatible con la función de pantalla dividida"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Arrastra hasta aquí para usar la pantalla dividida"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"División horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"División vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"División personalizada"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> es el cuadro de diálogo de volumen."</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Toca para restaurar el original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Estás usando tu perfil de trabajo"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Presiona para dejar de silenciar."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Presiona para establecer el modo vibración. Es posible que los servicios de accesibilidad estén silenciados."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Presiona para silenciar. Es posible que los servicios de accesibilidad estén silenciados."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Sintonizador de IU del sistema"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Mostrar porcentaje de la batería integrada"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Bloquear todas las notificaciones"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"No silenciar"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"No silenciar ni bloquear"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Mostrar configuración de importancia"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloqueada"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importancia mínima"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Poca importancia"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importancia normal"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Importancia alta"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Urgente"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"No mostrar nunca estas notificaciones"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Mostrar en la parte inferior de la lista de notificaciones sin emitir sonido"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Mostrar estas notificaciones de manera silenciosa"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Permitir que estas notificaciones emitan sonidos"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Ver en la pantalla y permitir sonidos"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Mostrar en la parte superior de la lista de notificaciones, ver en la pantalla y permitir sonidos"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Controles de activación de notificaciones"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Activado"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Desactivado"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Con los controles de activación de notificaciones, puedes establecer un nivel de importancia para las notificaciones de una app. \n\n"<b>"Nivel 5"</b>" \n- Mostrar en la parte superior de la lista de notificaciones. \n- Permitir interrupción en la pantalla completa. \n- Mostrar siempre. \n\n"<b>"Nivel 4"</b>" \n- No permitir interrupción en la pantalla completa. \n- Mostrar siempre. \n\n"<b>"Nivel 3"</b>" \n- No permitir interrupción en la pantalla completa. \n- No mostrar. \n\n"<b>"Nivel 2"</b>" \n- No permitir interrupción en la pantalla completa. \n- No mostrar. \n- No sonar ni vibrar. \n\n"<b>"Nivel 1"</b>" \n- No permitir interrupción en la pantalla completa. \n- No mostrar. \n- No sonar ni vibrar. \n- Ocultar de la pantalla bloqueada y la barra de estado. \n- Mostrar al final de la lista de notificaciones. \n\n"<b>"Nivel 0"</b>" \n- Bloquear todas las notificaciones de la app."</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importancia: Automática"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importancia: Nivel 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importancia: Nivel 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importancia: Nivel 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importancia: Nivel 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importancia: Nivel 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importancia: Nivel 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"La app determina la importancia de cada notificación."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"No mostrar notificaciones de esta app"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"No interrumpir pantalla, mostrar, sonar ni vibrar. Ocultar de pantalla bloqueada y barra de estado."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"No interrumpir en la pantalla completa, mostrar, sonar ni vibrar"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"No mostrar ni interrumpir en la pantalla"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Mostrar siempre, pero no interrumpir en la pantalla completa"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Mostrar siempre y permitir interrupción en la pantalla completa"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Más opciones de configuración"</string>
     <string name="notification_done" msgid="5279426047273930175">"Listo"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Controles de notificaciones de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Otros"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Divisor de pantalla dividida"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Mover hacia abajo"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Mover hacia arriba"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Mover a la izquierda"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Mover a la derecha"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Pantalla izquierda completa"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Izquierda: 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Izquierda: 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Izquierda: 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Pantalla derecha completa"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Pantalla superior completa"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Superior: 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Superior: 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Superior: 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Pantalla inferior completa"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posición <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Presiona dos veces para editarla."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Presiona dos veces para agregarlo."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posición <xliff:g id="POSITION">%1$d</xliff:g>. Presiona dos veces para seleccionarla."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Se quitó <xliff:g id="TILE_NAME">%1$s</xliff:g>"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Se movió <xliff:g id="TILE_NAME">%1$s</xliff:g> a la posición <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor de Configuración rápida"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Es posible que la app no funcione en el modo de pantalla dividida."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"La app no es compatible con la función de pantalla dividida."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Página <xliff:g id="ID_1">%1$d</xliff:g> de <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-es-rUS/strings_tv.xml b/packages/SystemUI/res/values-es-rUS/strings_tv.xml
index 72ea127..b8f503d 100644
--- a/packages/SystemUI/res/values-es-rUS/strings_tv.xml
+++ b/packages/SystemUI/res/values-es-rUS/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Reproducir"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pausar"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Mantén presionado "<b>"INICIO"</b>" para controlar PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Mantén presionado el botón INICIO para controlar PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Entendido"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Descartar"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-es/strings.xml b/packages/SystemUI/res/values-es/strings.xml
index c6ef4cc..8888037 100644
--- a/packages/SystemUI/res/values-es/strings.xml
+++ b/packages/SystemUI/res/values-es/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Señal de datos al máximo"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Conectado a <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Sin conexión WiMAX"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Una barra de WiMAX"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Dos barras de WiMAX"</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Tipo Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Sin tarjeta SIM"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Datos móviles desactivados"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Compartir por Bluetooth"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Modo avión"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"No hay tarjeta SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Cambiando red de operador."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"<xliff:g id="NUMBER">%d</xliff:g> por ciento de batería"</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Ajustes del sistema"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notificaciones"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Borrar notificación"</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"No molestar activado (solo prioritarias)."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"No molestar activado, silencio total"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"No molestar activado, solo alarmas."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"No molestar desactivado."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"No molestar desactivado."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"No molestar activado."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth desactivado."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth activado."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Conectando Bluetooth."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ahora la pantalla está bloqueada en orientación horizontal."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ahora la pantalla está bloqueada en orientación vertical."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Caja para postres"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Salvapantallas"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Salvapantallas"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"No molestar"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Solo prioritarias"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"No hay dispositivos vinculados disponibles"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brillo"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Girar automáticamente"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotación bloqueada"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Vertical"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Horizontal"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"No conectado"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"No hay red."</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi desactivado"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"No hay ninguna red Wi-Fi disponible"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Enviar"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Enviando"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"No se ha podido iniciar <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"La aplicación <xliff:g id="APP">%s</xliff:g> se ha inhabilitado en modo seguro."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Borrar todo"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Esta aplicación no admite el modo multiventana."</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"La aplicación no admite el modo multiventana"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"La aplicación no admite la pantalla dividida"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Arrastra hasta aquí para utilizar la pantalla dividida"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"División horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"División vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"División personalizada"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> es el cuadro de diálogo de volumen"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Toca para restaurar la versión original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Estás usando tu perfil de trabajo"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Toca para activar el sonido."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Toca para poner el dispositivo en vibración. Los servicios de accesibilidad pueden silenciarse."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Toca para silenciar. Los servicios de accesibilidad pueden silenciarse."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Configurador de IU del sistema"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Mostrar porcentaje de batería insertado"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Bloquear todas las notificaciones"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"No silenciar"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"No silenciar ni bloquear"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Mostrar ajustes de importancia por completo"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloqueado"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importancia mínima"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Poco importante"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importancia normal"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Muy importante"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Urgente"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"No mostrar estas notificaciones"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Mostrar en la parte inferior de la lista de notificaciones de forma silenciosa"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Mostrar estas notificaciones de forma silenciosa"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Permitir que estas notificaciones reproduzcan sonidos"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Mostrar en la pantalla y permitir sonido"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Mostrar en la parte superior de la lista de notificaciones, mostrar en la pantalla y permitir sonido"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Controles de energía de las notificaciones"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Sí"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"No"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Los controles de energía de las notificaciones permiten establecer un nivel de importancia de 0 a 5 para las notificaciones de las aplicaciones. \n\n"<b>"Nivel 5"</b>" \n- Mostrar en la parte superior de la lista de notificaciones \n- Permitir interrumpir en el modo de pantalla completa \n- Mostrar siempre \n\n"<b>"Nivel 4"</b>" \n- Evitar interrumpir en el modo de pantalla completa \n- Mostrar siempre \n\n"<b>"Nivel 3"</b>" \n- Evitar interrumpir en el modo de pantalla completa \n- No mostrar nunca \n\n"<b>"Nivel 2"</b>" \n- Evitar interrumpir en el modo de pantalla completa\n- No mostrar nunca \n- No emitir sonido ni vibrar nunca \n\n"<b>"Nivel 1"</b>" \n- Evitar interrumpir en el modo de pantalla completa \n- No mostrar nunca \n- No emitir sonido ni vibrar nunca \n- Ocultar de la pantalla de bloqueo y de la barra de estado \n- Mostrar en la parte inferior de la lista de notificaciones \n\n"<b>"Nivel 0"</b>" \n- Bloquear todas las notificaciones de la aplicación"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importancia: Automático"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importancia: Nivel 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importancia: Nivel 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importancia: Nivel 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importancia: Nivel 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importancia: Nivel 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importancia: Nivel 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"La aplicación determina la importancia de cada notificación."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"No mostrar nunca notificaciones de esta aplicación."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"No interrumpir, mostrar, emitir sonido ni vibrar en el modo de pantalla completa. Ocultar de pantalla de bloqueo y barra de estado."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"No interrumpir, mostrar, emitir sonido ni vibrar en el modo de pantalla completa."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"No interrumpir ni mostrar en el modo de pantalla completa."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Mostrar siempre. No interrumpir en el modo de pantalla completa."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Mostrar siempre y permitir interrumpir en el modo de pantalla completa."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Más ajustes"</string>
     <string name="notification_done" msgid="5279426047273930175">"Listo"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Controles de notificaciones de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Otros"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Dividir la pantalla"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Bajar"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Subir"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Mover a la izquierda"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Mover a la derecha"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Pantalla izquierda completa"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Izquierda 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Izquierda 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Izquierda 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Pantalla derecha completa"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Pantalla superior completa"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Superior 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Superior 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Superior 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Pantalla inferior completa"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posición <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Toca dos veces para cambiarla."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Toca dos veces para añadirlo."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posición <xliff:g id="POSITION">%1$d</xliff:g>. Toca dos veces para seleccionarla."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> se ha quitado"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> se ha movido a la posición <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor de ajustes rápidos."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Es posible que la aplicación no funcione con la pantalla dividida."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"La aplicación no admite la pantalla dividida."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Página <xliff:g id="ID_1">%1$d</xliff:g> de <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-es/strings_tv.xml b/packages/SystemUI/res/values-es/strings_tv.xml
index c0b0afe..a5fb276 100644
--- a/packages/SystemUI/res/values-es/strings_tv.xml
+++ b/packages/SystemUI/res/values-es/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Reproducir"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pausar"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Mantén el botón "<b>"INICIO"</b>" pulsado para control de PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Mantén el botón de INICIO pulsado para controlar el modo PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Entendido"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Ignorar"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-et-rEE/strings.xml b/packages/SystemUI/res/values-et-rEE/strings.xml
index 664748b..a349136 100644
--- a/packages/SystemUI/res/values-et-rEE/strings.xml
+++ b/packages/SystemUI/res/values-et-rEE/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Andmesignaal on tugev."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Ühendatud: <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Ühendatud: <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX-i pole."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX-i on üks riba."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX-i on kaks riba."</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Serv"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"WiFi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM-kaarti pole."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobiilne andmeside on välja lülitatud"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetoothi jagamine."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Lennurežiim."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM-kaarti pole."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Operaatori võrku muudetakse."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Aku: <xliff:g id="NUMBER">%d</xliff:g> protsenti."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Süsteemiseaded"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Teatised"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Märguande eemaldamine."</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Funktsioon Mitte segada on sisse lülitatud (ainult prioriteetsed)."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Funktsioon Mitte segada on sisse lülitatud, täielik vaikus."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Funktsioon Mitte segada on sisse lülitatud (ainult alarmid)."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Funktsioon Mitte segada on välja lülitatud."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Funktsioon Mitte segada on välja lülitatud."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Funktsioon Mitte segada on sisse lülitatud."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth on väljas."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth on sees."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetoothi ühendatakse."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ekraanikuva on nüüd lukustatud horisontaalasendisse."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ekraanikuva on nüüd lukustatud vertikaalasendisse."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Maiustusekorv"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Unistus"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Ekraanisäästja"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Mitte segada"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Ainult prioriteetsed"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Ühtegi seotud seadet pole saadaval"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Heledus"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automaatne pööramine"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Pööramine on lukustatud"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Vertikaalpaigutus"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Horisontaalpaigutus"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Ühendus puudub"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Võrku pole"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"WiFi-ühendus on väljas"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"WiFi-võrke pole saadaval"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Ülekandmine"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Osatäitjad"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Rakendust <xliff:g id="APP">%s</xliff:g> ei saanud käivitada."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Rakendus <xliff:g id="APP">%s</xliff:g> on turvarežiimis keelatud."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Kustuta kõik"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"See rakendus ei toeta mitut akent"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Rakendus ei toeta mitut akent"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Rakendus ei toeta jagatud ekraani"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Jagatud ekraani kasutamiseks lohistage siia"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Horisontaalne poolitamine"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Vertikaalne poolitamine"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Kohandatud poolitamine"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> on helitugevuse dialoog"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Originaali taastamiseks puudutage."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Kasutate oma tööprofiili"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Puudutage vaigistuse tühistamiseks."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Puudutage värinarežiimi määramiseks. Juurdepääsetavuse teenused võidakse vaigistada."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Puudutage vaigistamiseks. Juurdepääsetavuse teenused võidakse vaigistada."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Süsteemi kasutajaliidese tuuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Kuva lisatud akutaseme protsent"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Blokeeri kõik märguanded"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ära vaigista"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ära vaigista ega blokeeri"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Kuva täieliku tähtsuse seaded"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blokeeritud"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Minimaalne tähtsus"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Madal tähtsuse tase"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Tavaline tähtsuse tase"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Kõrge tähtsuse tase"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Kiireloomuline tähtsuse tase"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Ära kunagi näita neid märguandeid"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Kuva märguannete loendi allosas vaikselt"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Kuva need märguanded vaikselt"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Luba nende märguannete puhul heli"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Kuva ekraani servas ja luba heli"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Kuva märguannete loendi ülaservas, kuva ekraani servas ja luba heli"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Toite märguannete juhtnupud"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Sees"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Väljas"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Toite märguannete juhtnuppudega saate määrata rakenduse märguannete tähtsuse taseme vahemikus 0–5. \n\n"<b>"5. tase"</b>" \n- Kuva märguannete loendi ülaosas\n- Luba täisekraanil häirimine \n- Kuva alati ekraani servas \n\n"<b>"4. tase"</b>" \n- Keela täisekraanil häirimine \n- Kuva alati ekraani servas \n\n"<b>"3. tase"</b>" \n- Keela täisekraanil häirimine \n- Ära kunagi kuva ekraani servas \n\n"<b>"2. tase"</b>" \n- Keela täisekraanil häirimine \n- Ära kunagi kuva ekraani servas \n- Ära kunagi helise ega vibreeri \n\n"<b>"1. tase"</b>" \n- Keela täisekraanil häirimine \n- Ära kunagi kuva ekraani servas \n- Ära kunagi helise ega vibreeri \n- Peida lukustuskuval ja olekuribal \n- Kuva märguannete loendi allosas \n\n"<b>"Tase 0"</b>" \n- Blokeeri kõik rakenduse märguanded"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Tähtsus: automaatne"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Tähtsus: tase 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Tähtsus: 1. tase"</string>
+    <string name="low_importance" msgid="7571498511534140">"Tähtsus: 2. tase"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Tähtsus: 3. tase"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Tähtsus: 4. tase"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Tähtsus: 5. tase"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Rakendus määrab iga märguande tähtsuse."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Ära kuva kunagi selle rakenduse märguandeid."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Täisekr. häirimine, servas kuvamine, hel. ega vibr. pole lubatud. Peida lukustuskuval ja olekuribal"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Täisekraanil häirimine, ekraani servas kuvamine, helisemine ega vibreerimine pole lubatud."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Täisekraanil häirimine ega ekraani servas kuvamine pole lubatud."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Kuva alati ekraani servas. Täisekraanil häirimine pole lubatud."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Kuva alati ekraani servas ja luba täisekraanil häirimine."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Rohkem seadeid"</string>
     <string name="notification_done" msgid="5279426047273930175">"Valmis"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Rakenduse <xliff:g id="APP_NAME">%1$s</xliff:g> märguannete juhtnupud"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Muu"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Ekraanijagaja"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Liigu alla"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Liigu üles"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Liigu vasakule"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Liigu paremale"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Vasak täisekraan"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Vasak: 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Vasak: 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Vasak: 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Parem täisekraan"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Ülemine täisekraan"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Ülemine: 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Ülemine: 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Ülemine: 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Alumine täisekraan"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Asend <xliff:g id="POSITION">%1$d</xliff:g>, paan <xliff:g id="TILE_NAME">%2$s</xliff:g>. Topeltpuudutage muutmiseks."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Topeltpuudutage lisamiseks."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Asend <xliff:g id="POSITION">%1$d</xliff:g>. Topeltpuudutage valimiseks."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Paan <xliff:g id="TILE_NAME">%1$s</xliff:g> eemaldati"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Paan <xliff:g id="TILE_NAME">%1$s</xliff:g> teisaldati asendisse <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Kiirseadete redigeerija."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Rakendus ei pruugi poolitatud ekraaniga töötada."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Rakendus ei toeta jagatud ekraani."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Leht <xliff:g id="ID_1">%1$d</xliff:g>/<xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-et-rEE/strings_tv.xml b/packages/SystemUI/res/values-et-rEE/strings_tv.xml
index f427b80..57fbdc5 100644
--- a/packages/SystemUI/res/values-et-rEE/strings_tv.xml
+++ b/packages/SystemUI/res/values-et-rEE/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Esita"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Peata"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP juht. hoidke all nuppu "<b>"AVAEKRAAN"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP juhtimiseks vajutage pikalt nuppu AVAEKRAAN"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Selge"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Loobu"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-eu-rES/strings.xml b/packages/SystemUI/res/values-eu-rES/strings.xml
index 287f73f..34a5a2b 100644
--- a/packages/SystemUI/res/values-eu-rES/strings.xml
+++ b/packages/SystemUI/res/values-eu-rES/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Datu-seinale osoa."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> sarera konektatuta."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> gailura konektatuta."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX gabe."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX sarearen barra bat."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX sarearen bi barra."</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi konexioa"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Ez dago SIM txartelik."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Desaktibatuta dago datu-konexioa"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Konexioa partekatzea (Bluetooth)"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Hegaldi-modua"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Ez dago SIM txartelik."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Operadorearen sarea aldatzea."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Bateriaren karga: <xliff:g id="NUMBER">%d</xliff:g>."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Sistemaren ezarpenak."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Jakinarazpenak."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Garbitu jakinarazpena."</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\"Ez molestatu\" aukera aktibatuta dago, lehentasunezkoak soilik."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"\"Ez molestatu\" aukera aktibatuta dago, isiltasun osoa."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\"Ez molestatu\" aukera aktibatuta dago, alarmak soilik."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\"Ez molestatu\" aukera desaktibatuta dago."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\"Ez molestatu\" aukera desaktibatuta dago."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\"Ez molestatu\" aukera aktibatuta dago."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth konexioa desaktibatuta dago."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth konexioa aktibatuta dago."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth bidez konektatzen ari da."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Pantaila horizontalki blokeatuta dago."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Pantaila bertikalki blokeatuta dago."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Postreen kutxa"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Pantaila-babeslea"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Pantaila-babeslea"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Ez molestatu"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Lehentasunezkoak soilik"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Ez dago parekatutako gailurik erabilgarri"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Distira"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Biratze automatikoa"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Biratzea blokeatuta"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Bertikala"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Horizontala"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Konektatu gabe"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Ez dago sarerik"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi konexioa desaktibatuta"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Ez dago Wi-Fi sarerik erabilgarri"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Igorpena"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Igortzen"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Ezin izan da hasi <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> desgaituta dago modu seguruan."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Garbitu guztiak"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Aplikazioak ez du onartzen leiho bat baino gehiago erabiltzea"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplikazioak ez du onartzen leiho bat baino gehiago erabiltzea"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplikazioak ez du onartzen pantaila zatitua"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Arrastatu hau pantaila banatzeko"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Zatitze horizontala"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Zatitze bertikala"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Zatitze pertsonalizatua"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> da bolumenaren leihoa"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Ukitu jatorrizkora leheneratzeko"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Work profila erabiltzen ari zara"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Sakatu audioa aktibatzeko."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Sakatu dardara ezartzeko. Baliteke erabilerraztasun-eginbideen audioa desaktibatzea."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Sakatu audioa desaktibatzeko. Baliteke erabilerraztasun-eginbideen audioa desaktibatzea."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Sistemako erabiltzaile-interfazearen konfiguratzailea"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Erakutsi txertatutako bateriaren ehunekoa"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Blokeatu jakinarazpen guztiak"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ez isilarazi"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ez isilarazi edo blokeatu"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Erakutsi garrantzi handiko jakinarazpenen ezarpenak"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blokeatuta"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Gutxieneko garrantzia"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Garrantzi txikia"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Garrantzi normala"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Garrantzi handia"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Premiazkoa"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Ez erakutsi jakinarazpen hauek inoiz"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Erakutsi jakinarazpen hauek zerrendaren behealdean, baina soinurik egin gabe"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Erakutsi jakinarazpen hauek, baina soinurik egin gabe"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Egin soinua jakinarazpen hauek jasotzean"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Agerrarazi jakinarazpen hauek pantailan eta egin soinua"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Erakutsi jakinarazpen hauek zerrendaren goialdean, agerrarazi pantailan eta egin soinua"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Bateria-mailaren arabera jakinarazpenak kontrolatzeko aukerak"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Aktibatuta"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Desaktibatuta"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Bateria-mailaren arabera jakinarazpenak kontrolatzeko aukerekin, 0 eta 5 bitarteko garrantzi-mailetan sailka ditzakezu aplikazioen jakinarazpenak. \n\n"<b>"5. maila"</b>" \n- Erakutsi jakinarazpenen zerrendaren goialdean. \n- Baimendu etetea pantaila osoko moduan zaudenean. \n- Agerrarazi beti jakinarazpenak. \n\n"<b>"4. maila"</b>" \n- Galarazi etetea pantaila osoko moduan zaudenean. \n- Agerrarazi beti jakinarazpenak. \n\n"<b>"3. maila"</b>" \n- Galarazi etetea pantaila osoko moduan zaudenean. \n- Ez agerrarazi jakinarazpenik inoiz. \n\n"<b>"2. maila"</b>" \n- Galarazi etetea pantaila osoko moduan zaudenean. \n- Ez agerrarazi jakinarazpenik inoiz. \n- Ez egin soinurik edo dardararik inoiz. \n\n"<b>"1. maila"</b>" \n- Galarazi etetea pantaila osoko moduan zaudenean. \n- Ez agerrarazi jakinarazpenik inoiz. \n- Ez egin soinurik edo dardararik inoiz. \n- Ezkutatu pantaila blokeatutik eta egoera-barratik. \n- Erakutsi jakinarazpenen zerrendaren behealdean. \n\n"<b>"0. maila"</b>" \n- Blokeatu aplikazioaren jakinarazpen guztiak."</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Garrantzia: automatikoa"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Garrantzia: 0. maila"</string>
+    <string name="min_importance" msgid="560779348928574878">"Garrantzia: 1. maila"</string>
+    <string name="low_importance" msgid="7571498511534140">"Garrantzia: 2. maila"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Garrantzia: 3. maila"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Garrantzia: 4. maila"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Garrantzia: 5. maila"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Aplikazioak zehazten du jakinarazpen bakoitzaren garrantzia."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Ez erakutsi inoiz aplikazio honen jakinarazpenak."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Ez eten, ez agerrarazi jakinarazpenik eta ez egin soinurik edo dardararik pantaila osoko modua aktibo dagoenean. Ezkutatu pantaila blokeatutik eta egoera-barratik."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Ez eten, ez agerrarazi jakinarazpenik eta ez egin soinurik edo dardararik pantaila osoko moduan."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Ez agerrarazi jakinarazpenik eta ez eten pantaila osoko modua aktibo dagoenean."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Agerrarazi beti jakinarazpenak. Ez eten pantaila osoko modua aktibo dagoenean."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Agerrarazi beti jakinarazpenak eta onartu etetea pantaila osoko modua aktibo dagoenean."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Ezarpen gehiago"</string>
     <string name="notification_done" msgid="5279426047273930175">"Eginda"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> aplikazioaren jakinarazpenak kontrolatzeko aukerak"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Beste bat"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Pantaila-zatitzailea"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Eraman behera"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Eraman gora"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Eraman ezkerrera"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Eraman eskuinera"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Ezkerreko pantaila osoa"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Ezkerreko % 70"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Ezkerreko % 50"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Ezkerreko % 30"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Eskuineko pantaila osoa"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Goiko pantaila osoa"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Goiko % 70"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Goiko % 50"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Goiko % 30"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Beheko pantaila osoa"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g>. posizioa, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Editatzeko, sakatu birritan."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Gehitzeko, sakatu birritan."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g>. posizioa. Hautatzeko, sakatu birritan."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Kendu da <xliff:g id="TILE_NAME">%1$s</xliff:g>"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> <xliff:g id="POSITION">%2$d</xliff:g>. posiziora eraman da"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Ezarpen bizkorren editorea."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Baliteke aplikazioak ez funtzionatzea pantaila zatituan."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Aplikazioak ez du onartzen pantaila zatitua"</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_1">%1$d</xliff:g>/<xliff:g id="ID_2">%2$d</xliff:g> orria"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-eu-rES/strings_tv.xml b/packages/SystemUI/res/values-eu-rES/strings_tv.xml
index b812143..a2878cd 100644
--- a/packages/SystemUI/res/values-eu-rES/strings_tv.xml
+++ b/packages/SystemUI/res/values-eu-rES/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Erreproduzitu"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pausatu"</string>
     <string name="pip_hold_home" msgid="340086535668778109"><b>"HASIERA"</b>" PIP kontrolatzeko"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Eduki sakatuta hasierako botoia pantaila txikia kontrolatzeko"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Ados"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Baztertu"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-fa/strings.xml b/packages/SystemUI/res/values-fa/strings.xml
index 5020bd8..c0ca8d4 100644
--- a/packages/SystemUI/res/values-fa/strings.xml
+++ b/packages/SystemUI/res/values-fa/strings.xml
@@ -21,7 +21,7 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="app_label" msgid="7164937344850004466">"رابط کاربر سیستم"</string>
     <string name="status_bar_clear_all_button" msgid="7774721344716731603">"پاک کردن"</string>
-    <string name="status_bar_recent_remove_item_title" msgid="6026395868129852968">"حذف از لیست"</string>
+    <string name="status_bar_recent_remove_item_title" msgid="6026395868129852968">"حذف از فهرست"</string>
     <string name="status_bar_recent_inspect_item_title" msgid="7793624864528818569">"اطلاعات برنامه"</string>
     <string name="status_bar_no_recent_apps" msgid="7374907845131203189">"صفحه‌های اخیر شما اینجا نمایان می‌شوند"</string>
     <string name="status_bar_accessibility_dismiss_recents" msgid="4576076075226540105">"رد کردن برنامه‌های اخیر"</string>
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"قدرت سیگنال داده کامل است."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"به <xliff:g id="WIFI">%s</xliff:g> متصل شد."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"به <xliff:g id="BLUETOOTH">%s</xliff:g> متصل شد."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"‏WiMAX وجود ندارد."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"‏WiMAX دارای یک نوار است."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"‏WiMAX دارای دو نوار است."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"بدون سیم کارت."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"داده تلفن همراه خاموش است"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"اتصال اینترنت با بلوتوث تلفن همراه."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"حالت هواپیما."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"سیم‌کارتی موجود نیست."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"تغییر شبکه شرکت مخابراتی."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"باتری <xliff:g id="NUMBER">%d</xliff:g> درصد."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"در حال شارژ باتری، <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> درصد"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"تنظیمات سیستم."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"اعلان‌ها."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"پاک کردن اعلان"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"«مزاحم نشوید» روشن است، فقط اولویت‌دار."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"حالت «مزاحم نشوید» روشن است، سکوت کامل."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"حالت «مزاحم نشوید» روشن است، فقط هشدارها."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"«مزاحم نشوید» خاموش است."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"«مزاحم نشوید» خاموش شد."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"«مزاحم نشوید» روشن شد."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"بلوتوث خاموش است."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"بلوتوث روشن است."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"بلوتوث در حال اتصال است."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"صفحه اکنون روی جهت افقی قفل شده است."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"صفحه اکنون روی جهت عمودی قفل شده است."</string>
     <string name="dessert_case" msgid="1295161776223959221">"ویترین دسر"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"رویاپردازی"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"محافظ صفحه"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"اترنت"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"مزاحم نشوید"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"فقط اولویت‌دار"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"هیچ دستگاه مرتبط شده‌ای موجود نیست"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"روشنایی"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"چرخش خودکار"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"چرخش قفل شد"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"عمودی"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"افقی"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"متصل نیست"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"شبکه‌ای موجود نیست"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"‏Wi-Fi خاموش است"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"‏هیچ شبکه Wi-Fi موجود نیست"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"فرستادن"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"در حال فرستادن"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> شروع نشد."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> در حالت ایمن غیرفعال است."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"پاک کردن همه"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"این برنامه از چندپنجره پشتیبانی نمی‌کند"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"برنامه از چندپنجره پشتیبانی نمی‌کند"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"برنامه از تقسیم صفحه پشتیبانی نمی‌کند"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"برای استفاده از تقسیم صفحه، به اینجا بکشید"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"تقسیم افقی"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"تقسیم عمودی"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"سفارشی کردن تقسیم"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> کنترل‌کننده صدا است"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"برای بازیابی کنترل‌کننده اصلی، لمس کنید."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"درحال استفاده از نمایه کاری‌تان هستید"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"‏%1$s. برای باصدا کردن ضربه بزنید."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"‏%1$s. برای تنظیم روی لرزش ضربه بزنید. ممکن است سرویس‌های دسترس‌پذیری بی‌صدا شوند."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"‏%1$s. برای بی‌صدا کردن ضربه بزنید. ممکن است سرویس‌های دسترس‌پذیری بی‌صدا شوند."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"تنظیم‌کننده واسط کاربری سیستم"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"نمایش درصد شارژ باتری جاسازی شده"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"مسدود کردن همه اعلان‌ها"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"ساکت نشود"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"ساکت یا مسدود نشود"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"نمایش تنظیمات کامل اهمیت"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"مسدود شده"</string>
-    <string name="min_importance" msgid="1901894910809414782">"کمترین اهمیت"</string>
-    <string name="low_importance" msgid="4109929986107147930">"اهمیت کم"</string>
-    <string name="default_importance" msgid="8192107689995742653">"اهمیت معمولی"</string>
-    <string name="high_importance" msgid="1527066195614050263">"اهمیت زیاد"</string>
-    <string name="max_importance" msgid="5089005872719563894">"اهمیت فوری"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"هرگز این اعلان‌ها نشان داده نشوند"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"بدون صدا در پایین فهرست اعلان نشان داده شود"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"این اعلان‌ها بی‌صدا نشان داده شوند"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"به این اعلان‌ها اجازه داده شود صدادار باشند"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"در صفحه نشان داده شوند و صدادار باشند"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"در بالای فهرست اعلان نشان داده شوند، در صفحه نشان داده شوند و صدادار باشند"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"کنترل‌های قدرتمند اعلان"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"روشن"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"خاموش"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"با کنترل‌های قدرتمند اعلان می‌توانید سطح اهمیت اعلان‌های هر برنامه را از ۰ تا ۵ تعیین کنید. \n\n"<b>"سطح ۵"</b>" \n- در صدر فهرست اعلان‌ها نشان داده می‌شود \n- وقفه برای نمایش تمام‌صفحه مجاز است \n- همیشه اجمالی نشان داده می‌شود \n\n"<b>"سطح ۴"</b>" \n- وقفه برای نمایش تمام‌صفحه مجاز نیست \n- همیشه اجمالی نشان داده می‌شود \n\n"<b>"سطح ۳"</b>" \n- وقفه برای نمایش تمام‌صفحه مجاز نیست \n- هیچ‌وقت اجمالی نشان داده نمی‌شود \n\n"<b>"سطح ۲"</b>" \n- وقفه برای نمایش تمام‌صفحه مجاز نیست \n- هیچ‌وقت اجمالی نشان داده نمی‌شود \n- هیچ‌وقت صدا و لرزش ایجاد نمی‌کند \n\n"<b>"سطح ۱"</b>" \n- نمایش تمام صفحه مجاز نیست \n- هیچ‌وقت اجمالی نشان داده نمی‌شود \n- هیچ‌وقت صدا یا لرزش ایجاد نمی‌کند \n- در صفحه درحالت قفل و نوار وضعیت پنهان است \n- در پایین فهرست اعلان‌ها نشان داده می‌شود \n\n"<b>"سطح ۰"</b>" \n- همه اعلان‌های این برنامه مسدود است"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"اهمیت: خودکار"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"اهمیت: سطح ۰"</string>
+    <string name="min_importance" msgid="560779348928574878">"اهمیت: سطح ۱"</string>
+    <string name="low_importance" msgid="7571498511534140">"اهمیت: سطح ۲"</string>
+    <string name="default_importance" msgid="7609889614553354702">"اهمیت: سطح ۳"</string>
+    <string name="high_importance" msgid="3441537905162782568">"اهمیت: سطح ۴"</string>
+    <string name="max_importance" msgid="4880179829869865275">"اهمیت: سطح ۵"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"برنامه اهمیت هر اعلان را تعیین می‌کند."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"اعلان‌های این برنامه هرگز نشان داده نمی‌شود."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"بدون وقفه نمایش تمام‌صفحه، نمایش اجمالی، صدا یا لرزش. عدم نمایش در صفحه قفل و نوار وضعیت."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"بدون وقفه نمایش تمام‌صفحه، نمایش اجمالی، صدا یا لرزش."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"بدون وقفه نمایش تمام‌صفحه یا نمایش اجمالی."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"همیشه نمایش اجمالی. بدون وقفه نمایش تمام‌صفحه."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"همیشه نمایش اجمالی، و مجاز بودن وقفه برای نمایش تمام‌صفحه."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"تنظیمات بیشتر"</string>
     <string name="notification_done" msgid="5279426047273930175">"تمام"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"کنترل‌های اعلان <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"موارد دیگر"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"تقسیم‌کننده صفحه"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"انتقال به پایین"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"انتقال به بالا"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"انتقال به چپ"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"انتقال به راست"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"تمام‌صفحه چپ"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"٪۷۰ چپ"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"٪۵۰ چپ"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"٪۳۰ چپ"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"تمام‌صفحه راست"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"تمام‌صفحه بالا"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"٪۷۰ بالا"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"٪۵۰ بالا"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"٪۳۰ بالا"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"تمام‌صفحه پایین"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"موقعیت <xliff:g id="POSITION">%1$d</xliff:g>، <xliff:g id="TILE_NAME">%2$s</xliff:g>. برای ویرایش دو ضربه سریع بزنید."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. برای افزودن دو ضربه سریع بزنید."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"موقعیت <xliff:g id="POSITION">%1$d</xliff:g>. برای انتخاب دو ضربه سریع بزنید."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> حذف می‌شود"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> به موقعیت <xliff:g id="POSITION">%2$d</xliff:g> منتقل شد"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"ویرایشگر تنظیمات سریع."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"ممکن است برنامه با تقسیم صفحه کار نکند."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"برنامه از تقسیم صفحه پشتیبانی نمی‌کند."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"صفحه <xliff:g id="ID_1">%1$d</xliff:g> از <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-fa/strings_tv.xml b/packages/SystemUI/res/values-fa/strings_tv.xml
index 0d028d8..bd9008f 100644
--- a/packages/SystemUI/res/values-fa/strings_tv.xml
+++ b/packages/SystemUI/res/values-fa/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"پخش"</string>
     <string name="pip_pause" msgid="8412075640017218862">"مکث"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"‏کنترل PIP ‏با نگه‌داشتن "<b>"HOME"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"‏برای کنترل PIP دکمه صفحه اصلی را فشار داده و نگه‌دارید"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"متوجه شدم"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"رد کردن"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-fi/strings.xml b/packages/SystemUI/res/values-fi/strings.xml
index dca5b12..47bb7f2 100644
--- a/packages/SystemUI/res/values-fi/strings.xml
+++ b/packages/SystemUI/res/values-fi/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Vahva kuuluvuus."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Yhteys: <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Yhteys: <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Ei WiMAX-yhteyttä."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX: yksi palkki."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX: kaksi palkkia."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Ei SIM-korttia."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobiilidata pois päältä"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Internetin jakaminen Bluetoothin kautta."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Lentokonetila."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Ei SIM-korttia."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Operaattorin verkko muuttuu."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Akun virta <xliff:g id="NUMBER">%d</xliff:g> prosenttia."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Akku latautuu: <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> prosenttia"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Järjestelmän asetukset"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Ilmoitukset"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Tyhjennä ilmoitus"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Älä häiritse -tila on päällä, vain tärkeät."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Älä häiritse -tila on päällä, täydellinen hiljaisuus."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Älä häiritse -tila on päällä, vain herätykset toistetaan."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Älä häiritse -tila on pois päältä."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Älä häiritse -tila on pois päältä."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Älä häiritse -tila on päällä."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth on pois päältä."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth on päällä."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetoothia yhdistetään."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ruutu on nyt lukittu vaakasuuntaan."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ruutu on nyt lukittu pystysuuntaan."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Jälkiruokavitriini"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Lepotila"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Näytönsäästäjä"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Älä häiritse"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Vain tärkeät"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Laitepareja ei ole käytettävissä"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Kirkkaus"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automaattinen kääntö"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Kääntö lukittu"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Pysty"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Vaaka"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Ei yhteyttä"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Ei verkkoa"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi-yhteys pois käytöstä"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Ei Wi-Fi-verkkoja käytettävissä"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Suoratoisto"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Lähetetään"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Sovelluksen <xliff:g id="APP">%s</xliff:g> käynnistäminen epäonnistui."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> on poistettu käytöstä vikasietotilassa."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Tyhjennä kaikki"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Tämä sovellus ei tue usean ikkunan tilaa."</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Sovellus ei tue usean ikkunan tilaa."</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Sovellus ei tue jaetun näytön tilaa."</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Jaa näyttö vetämällä tähän."</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Vaakasuuntainen jako"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Pystysuuntainen jako"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Muokattu jako"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> on äänenvoimakkuusvalinta."</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Palauta alkuperäinen koskettamalla."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Käytät työprofiilia."</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Poista mykistys koskettamalla."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Siirry värinätilaan koskettamalla. Myös esteettömyyspalvelut saattavat mykistyä."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Mykistä koskettamalla. Myös esteettömyyspalvelut saattavat mykistyä."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Näytä akun varaus kuvakkeessa"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Estä kaikki ilmoitukset"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Älä hiljennä"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Älä hiljennä tai estä"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Näytä kaikki tärkeysasetukset"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Estetyt"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Pienin tärkeys"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Ei kovin tärkeä"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Tärkeä"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Hyvin tärkeä"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Kiireellinen"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Älä koskaan näytä näitä ilmoituksia"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Hiljennä ilmoitukset ja näytä ne ilmoitusluettelon alaosassa."</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Näytä nämä ilmoitukset hiljennettyinä."</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Salli näiden ilmoitusten äänet."</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Näytä ilmoitukset näytöllä ja salli niiden äänet."</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Näytä ilmoitukset näytöllä ja ilmoitusluettelon yläosassa ja salli niiden äänet."</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Ilmoitusten tehohallinta"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Käytössä"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Pois käytöstä"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Ilmoitusten tehohallinnan avulla voit määrittää sovelluksen ilmoituksille tärkeystason väliltä 0–5. \n\n"<b>"Taso 5"</b>" \n– Ilmoitukset näytetään ilmoitusluettelon yläosassa \n– Näkyminen koko näytön tilassa sallitaan \n– Ilmoitukset kurkistavat aina näytölle\n\n"<b>"Taso 4"</b>" \n– Näkyminen koko näytön tilassa estetään \n– Ilmoitukset kurkistavat aina näytölle \n\n"<b>"Taso 3"</b>" \n– Näkyminen koko näytön tilassa estetään \n– Ei kurkistamista \n\n"<b>"Taso 2"</b>" \n– Näkyminen koko näytön tilassa estetään \n– Ei kurkistamista \n– Ei ääniä eikä värinää \n\n"<b>"Taso 1"</b>" \n– Näkyminen koko näytön tilassa estetään \n– Ei kurkistamista \n– Ei ääniä eikä värinää \n– Ilmoitukset piilotetaan lukitusnäytöltä ja tilapalkista \n– Ilmoitukset näytetään ilmoitusluettelon alaosassa \n\n"<b>"Taso 0"</b>" \n– Kaikki sovelluksen ilmoitukset estetään"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Tärkeys: automaattinen"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Tärkeys: taso 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Tärkeys: taso 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Tärkeys: taso 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Tärkeys: taso 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Tärkeys: taso 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Tärkeys: taso 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Sovellus määrittää kunkin ilmoituksen tärkeyden"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Älä koskaan näytä ilmoituksia tästä sovelluksesta"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Estä kurkistaminen, ääni, värinä ja näkyminen koko näytön tilassa, lukitusnäytöllä ja tilapalkissa"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Ei kurkistamista, ääntä, värinää eikä näkymistä koko näytön tilassa"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Ilmoitukset eivät saa kurkistaa näytölle tai näkyä koko näytön tilassa"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Ilmoitukset saavat aina kurkistaa näytölle, mutteivät näkyä koko näytön tilassa"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Ilmoitukset saavat aina kurkistaa näytölle ja näkyä koko näytön tilassa"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Lisäasetukset"</string>
     <string name="notification_done" msgid="5279426047273930175">"Valmis"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g>-ilmoitusten hallinta"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Muu"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Näytön jakaja"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Siirrä alaspäin"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Siirrä ylöspäin"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Siirrä vasemmalle"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Siirrä oikealle"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Vasen koko näytölle"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Vasen 70 %"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Vasen 50 %"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Vasen 30 %"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Oikea koko näytölle"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Yläosa koko näytölle"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Yläosa 70 %"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Yläosa 50 %"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Yläosa 30 %"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Alaosa koko näytölle"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Paikka <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Muokkaa kaksoisnapauttamalla."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Lisää kaksoisnapauttamalla."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Paikka <xliff:g id="POSITION">%1$d</xliff:g>. Valitse kaksoisnapauttamalla."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> poistettiin."</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> siirrettiin paikkaan <xliff:g id="POSITION">%2$d</xliff:g>."</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Pika-asetusten muokkausnäkymä"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Sovellus ei ehkä toimi jaetulla näytöllä."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Sovellus ei tue jaetun näytön tilaa."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Sivu <xliff:g id="ID_1">%1$d</xliff:g>/<xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-fi/strings_tv.xml b/packages/SystemUI/res/values-fi/strings_tv.xml
index 9124f67..24aadf4 100644
--- a/packages/SystemUI/res/values-fi/strings_tv.xml
+++ b/packages/SystemUI/res/values-fi/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Toista"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Keskeytä"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP: paina pitkään "<b>"aloituspain"</b>"."</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Hallinnoi PIP-tilaa painamalla ALOITUSNÄYTTÖ-painiketta pitkään."</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Selvä"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Hylkää"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-fr-rCA/strings.xml b/packages/SystemUI/res/values-fr-rCA/strings.xml
index 76a3438..cb1ca92 100644
--- a/packages/SystemUI/res/values-fr-rCA/strings.xml
+++ b/packages/SystemUI/res/values-fr-rCA/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Signal excellent"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Connecté à : <xliff:g id="WIFI">%s</xliff:g>"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Connecté à : <xliff:g id="BLUETOOTH">%s</xliff:g>"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Aucun signal WiMAX"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Signal WiMAX : faible"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Signal WiMAX : moyen"</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Aucune carte SIM"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Données cellulaires déésactivées"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Partage de connexion Bluetooth"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Mode Avion"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Aucune carte SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Modification du réseau du fournisseur de services"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Pile : <xliff:g id="NUMBER">%d</xliff:g> pour cent"</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Paramètres système"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notifications"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Supprimer la notification"</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Mode « Ne pas déranger » activé, interruptions prioritaires uniquement."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Mode « Ne pas déranger » activé, aucune interruption"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Mode « Ne pas déranger » activé, alarmes uniquement."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Mode « Ne pas déranger » désactivé."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Le mode « Ne pas déranger » a bien été désactivé."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Le mode « Ne pas déranger » a bien été activé."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth désactivé."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth activé."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Connexion Bluetooth en cours..."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"L\'écran est maintenant verrouillé en mode paysage."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"L\'écran est maintenant verrouillé en mode portrait."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Vitrine des desserts"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Écran de veille"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Écran de veille"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Ne pas déranger"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Priorités seulement"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Aucun des appareils associés n\'est disponible"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Luminosité"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotation automatique"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotation verrouillée"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portrait"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Paysage"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Non connecté"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Aucun réseau"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi désactivé"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Aucun réseau Wi-Fi à proximité"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Diffuser"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Diffusion"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Impossible de lancer <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> est désactivée en mode sécurisé."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Effacer tout"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Cette application ne prend pas en charge le mode multifenêtre"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"L\'application ne prend pas en charge le mode multifenêtre"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"L\'application n\'est pas compatible avec l\'écran partagé"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Glissez l\'élément ici pour utiliser l\'écran partagé"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Séparation horizontale"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Séparation verticale"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Séparation personnalisée"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> correspond à la boîte de dialogue du volume"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Touchez pour restaurer l\'original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Vous utilisez votre profil professionnel."</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Touchez pour réactiver le son."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Touchez pour activer les vibrations. Il est possible de couper le son des services d\'accessibilité."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Touchez pour couper le son. Il est possible de couper le son des services d\'accessibilité."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Afficher le pourcentage intégré de charge"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Bloquer toutes les notifications"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ne pas activer le mode silencieux"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ne pas activer le mode silencieux ni bloquer"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Afficher les paramètres d\'importance complets"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloquée"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importance minimale"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Importance faible"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importance normale"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Importance élevée"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Importance urgente"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Ne jamais afficher ces notifications"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Afficher en mode silencieux au bas de la liste de notifications"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Afficher ces notifications en mode silencieux"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Autoriser ces notifications à émettre des sons"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Afficher sur l\'écran et émettre un son"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Afficher en haut de la liste des notifications, afficher sur l\'écran et émettre un son"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Réglages avancés des notifications"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Activé"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Désactivé"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Avec les réglages avancés des notifications, vous pouvez définir un degré d\'importance de 0 à 5 pour les notifications d\'une application. \n\n"<b>"Niveau 5"</b>" \n- Afficher dans le haut de la liste des notifications \n- Autoriser les interruptions en mode plein écran \n- Toujours afficher les aperçus \n\n"<b>"Niveau 4"</b>" \n- Empêcher les interruptions en mode plein écran \n- Toujours afficher les aperçus \n\n"<b>"Niveau 3"</b>" \n- Empêcher les interruptions en mode plein écran \n- Ne jamais afficher les aperçus \n\n"<b>"Niveau 2"</b>" \n- Empêcher les interruptions en mode plein écran \n- Ne jamais afficher les aperçus \n- Ne pas autoriser les sons et les vibrations \n\n"<b>"Niveau 1"</b>" \n- Empêcher les interruptions en mode plein écran \n- Ne jamais afficher les aperçus \n- Ne pas autoriser les sons et les vibrations \n- Masquer de l\'écran de verrouillage et de la barre d\'état status bar \n- Afficher dans le bas de la liste des notifications \n\n"<b>"Level 0"</b>" \n- Bloquer toutes les notifications de l\'application"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importance : automatique"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importance : niveau 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importance : niveau 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importance : niveau 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importance : niveau 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importance : niveau 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importance : niveau 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"L\'application détermine l\'importance de chaque notification."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Ne jamais afficher les notifications de cette application."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Pas d\'interruptions, d\'aperçus, de sons ou de vibrations en mode plein écran. Masquer de l\'écran de verrouillage et de la barre d\'état."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Pas d\'interruptions, d\'aperçus, de sons ou de vibrations en mode plein écran."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Pas d\'interruptions et d\'aperçus en mode plein écran."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Toujours afficher les aperçus, mais pas d\'interruptions en mode plein écran."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Toujours afficher les aperçus et autoriser les interruptions en mode plein écran."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Plus de paramètres"</string>
     <string name="notification_done" msgid="5279426047273930175">"Terminé"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Commandes de notification pour <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Autre"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Séparateur d\'écran partagé"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Déplacer vers le bas"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Déplacer vers le haut"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Déplacer vers la gauche"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Déplacer vers la droite"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Plein écran à la gauche"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"70 % à la gauche"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"50 % à la gauche"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"30 % à la gauche"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Plein écran à la droite"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Plein écran dans le haut"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"70 % dans le haut"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"50 % dans le haut"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"30 % dans le haut"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Plein écran dans le bas"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Position <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Touchez deux fois pour modifier."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Touchez deux fois pour ajouter."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Position : <xliff:g id="POSITION">%1$d</xliff:g>. Touchez deux fois pour sélectionner."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> a été supprimé"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> a été déplacé à la position <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Éditeur de paramètres rapides."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Il est possible que l\'application ne fonctionne pas en mode Écran partagé."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"L\'application n\'est pas compatible avec l\'écran partagé."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Page <xliff:g id="ID_1">%1$d</xliff:g> sur <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-fr-rCA/strings_tv.xml b/packages/SystemUI/res/values-fr-rCA/strings_tv.xml
index 597a588..b54dc59 100644
--- a/packages/SystemUI/res/values-fr-rCA/strings_tv.xml
+++ b/packages/SystemUI/res/values-fr-rCA/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Lecture"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Interrompre"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Maint. enf. "<b>"ACC."</b>" pr gér. mode IDI"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Maintenez enfoncé le bouton ACCUEIL pour gérer le mode IDI."</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Fermer"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-fr/strings.xml b/packages/SystemUI/res/values-fr/strings.xml
index d1ba9e3..f501780 100644
--- a/packages/SystemUI/res/values-fr/strings.xml
+++ b/packages/SystemUI/res/values-fr/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Signal excellent"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Connecté à : <xliff:g id="WIFI">%s</xliff:g>"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Connecté à : <xliff:g id="BLUETOOTH">%s</xliff:g>"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Aucun signal WiMAX"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Signal WiMAX : faible"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Signal WiMAX : moyen"</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Aucune carte SIM"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Données mobiles désactivées"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Partage de connexion Bluetooth"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Mode Avion"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Aucune carte SIM"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Modification du réseau de l\'opérateur"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Batterie : <xliff:g id="NUMBER">%d</xliff:g> pour cent"</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Paramètres système"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notifications"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Supprimer la notification"</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Mode \"Ne pas déranger\" activé, interruptions prioritaires uniquement"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Mode Ne pas déranger activé, aucune interruption"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Mode \"Ne pas déranger\" activé, alarmes uniquement"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Mode \"Ne pas déranger\" désactivé"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Le mode \"Ne pas déranger\" a bien été désactivé."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Le mode \"Ne pas déranger\" a bien été activé."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth désactivé."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth activé."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Connexion Bluetooth en cours..."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"L\'écran est désormais verrouillé en format paysage."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"L\'écran est maintenant verrouillé en format portrait."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Vitrine des desserts"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Écran de veille interactif"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Économiseur d\'écran"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Ne pas déranger"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Prioritaires uniquement"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Aucun appareil associé disponible."</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Luminosité"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotation automatique"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotation verrouillée"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portrait"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Paysage"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Non connecté"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Aucun réseau"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi désactivé"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Aucun réseau Wi-Fi disponible"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Diffuser"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Diffusion"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Impossible de lancer <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"L\'application <xliff:g id="APP">%s</xliff:g> est désactivée en mode sécurisé."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Tout effacer"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Application incompatible avec le mode multifenêtre."</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Application incompatible avec le mode multifenêtre"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Application incompatible avec l\'écran partagé"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Faire glisser ici pour utiliser l\'écran partagé"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Séparation horizontale"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Séparation verticale"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Séparation personnalisée"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> correspond à la boîte de dialogue du volume"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Appuyez pour restaurer l\'interface d\'origine."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Vous utilisez votre profil professionnel."</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Appuyez pour ne plus ignorer."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Appuyez pour mettre en mode vibreur. Vous pouvez ignorer les services d\'accessibilité."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Appuyez pour ignorer. Vous pouvez ignorer les services d\'accessibilité."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Afficher le pourcentage intégré de la batterie"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Bloquer toutes les notifications"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ne pas activer le mode silencieux"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ne pas activer le mode silencieux ni bloquer"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Afficher les paramètres d\'importance complets"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloquées"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importance minimale"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Importance faible"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importance normale"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Importance élevée"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Urgent"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Ne jamais afficher ces notifications"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Afficher au bas de la liste des notifications en mode silencieux"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Afficher ces notifications en mode silencieux"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Autoriser ces notifications à émettre des sons"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Afficher sur l\'écran et émettre un son"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Afficher en haut de la liste des notifications, afficher sur l\'écran et émettre un son"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Commandes de gestion des notifications"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Activé"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Désactivé"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Grâce aux commandes de gestion des notifications, vous pouvez définir le niveau d\'importance (compris entre 0 et 5) des notifications d\'une application. \n\n"<b>"Niveau 5"</b>" \n- Afficher en haut de la liste des notifications \n- Autoriser l\'interruption en plein écran \n- Toujours en aperçu \n\n"<b>"Niveau 4"</b>" \n- Empêcher l\'interruption en plein écran \n- Toujours en aperçu \n\n"<b>"Niveau 3"</b>" \n- Empêcher l\'interruption en plein écran \n- Jamais en aperçu \n\n"<b>"Niveau 2"</b>" \n- Empêcher l\'interruption en plein écran \n- Jamais en aperçu \n- Ne jamais émettre de signal sonore ni déclencher le vibreur \n\n"<b>"Niveau 1"</b>" \n- Empêcher l\'interruption en plein écran \n- Jamais en aperçu \n- Ne jamais émettre de signal sonore ni déclencher le vibreur \n- Masquer les notifications dans l\'écran de verrouillage et la barre d\'état \n- Afficher au bas de la liste des notifications \n\n"<b>"Niveau 0"</b>" \n- Bloquer toutes les notifications de l\'application"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importance : automatique"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importance : niveau 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importance : niveau 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importance : niveau 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importance : niveau 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importance : niveau 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importance : niveau 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"L\'application détermine l\'importance de chaque notification."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Ne jamais afficher les notifications de cette application."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Pas d\'interruption plein écran, ni aperçu, son, vibration. Masquer dans écran verr. et barre d\'état."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Pas d\'interruption en plein écran, d\'aperçu, de signal sonore ou de vibration."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Pas d\'interruption en plein écran ni d\'aperçu."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Toujours en aperçu. Pas d\'interruption en plein écran."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Toujours en aperçu et autoriser l\'interruption en plein écran."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Plus de paramètres"</string>
     <string name="notification_done" msgid="5279426047273930175">"Terminé"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Commandes de notification de l\'application <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Autre"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Séparateur d\'écran partagé"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Déplacer vers le bas"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Déplacer vers le haut"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Déplacer vers la gauche"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Déplacer vers la droite"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Écran de gauche en plein écran"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Écran de gauche à 70 %"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Écran de gauche à 50 %"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Écran de gauche à 30 %"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Écran de droite en plein écran"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Écran du haut en plein écran"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Écran du haut à 70 %"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Écran du haut à 50 %"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Écran du haut à 30 %"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Écran du bas en plein écran"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Position <xliff:g id="POSITION">%1$d</xliff:g>, \"<xliff:g id="TILE_NAME">%2$s</xliff:g>\". Appuyer deux fois pour modifier."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Appuyer deux fois pour ajouter."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Position <xliff:g id="POSITION">%1$d</xliff:g>. Appuyer deux fois pour sélectionner."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Le bloc \"<xliff:g id="TILE_NAME">%1$s</xliff:g>\" a bien été supprimé."</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Le bloc \"<xliff:g id="TILE_NAME">%1$s</xliff:g>\" a bien été déplacé à la position <xliff:g id="POSITION">%2$d</xliff:g>."</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Éditeur de configuration rapide."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Il est possible que l\'application ne fonctionne pas en mode Écran partagé."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Application incompatible avec l\'écran partagé."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Page <xliff:g id="ID_1">%1$d</xliff:g> sur <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-fr/strings_tv.xml b/packages/SystemUI/res/values-fr/strings_tv.xml
index 0478eea..a20bb79 100644
--- a/packages/SystemUI/res/values-fr/strings_tv.xml
+++ b/packages/SystemUI/res/values-fr/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Lire"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Suspendre"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Appui long "<b>"ACCUEIL"</b>" pour contrôler PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Appuyez de manière prolongée sur le bouton ACCUEIL pour contrôler le mode PIP."</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Ignorer"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-gl-rES/strings.xml b/packages/SystemUI/res/values-gl-rES/strings.xml
index 0f6bedc..e3fb6ee 100644
--- a/packages/SystemUI/res/values-gl-rES/strings.xml
+++ b/packages/SystemUI/res/values-gl-rES/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Sinal de datos: completo"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Conectado a <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Non hai WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Unha barra de WiMAX"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Dúas barras de WiMAX"</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Sen SIM"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Os datos móbiles están desactivados"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Ancoraxe de Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Modo avión"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Non hai tarxeta SIM"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Cambio de rede do operador."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Carga da batería: <xliff:g id="NUMBER">%d</xliff:g> por cento."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Configuración do sistema"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notificacións"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Eliminar notificación."</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Non molestar activado, só prioridade."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Non molestar activado, silencio total."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Non molestar activado, só alarmas."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"A opción Non molestar está desactivada."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Desactivouse a opción Non molestar."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Activouse a opción Non molestar."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth desactivado."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth activado."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth conectando."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Agora a pantalla está bloqueada en orientación horizontal."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Agora a pantalla está bloqueada en orientación vertical."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Caixa de sobremesa"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Protector pantalla"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Protector pantalla"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Non molestar"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Só prioridade"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Non hai dispositivos sincronizados dispoñibles"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brillo"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotación automática"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotación bloqueada"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Vertical"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Horizontal"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Non conectada"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Non hai rede"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wifi desactivada"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Non hai redes wifi dispoñibles"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Emisión"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Emitindo"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Non foi posible iniciar <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"A aplicación <xliff:g id="APP">%s</xliff:g> está desactivada no modo seguro"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Borrar todo"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Esta aplicación non é compatible con varias ventás"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"A aplicación non é compatible con varias ventás"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"A aplicación non é compatible coa pantalla dividida"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Arrastrar aquí para usar a pantalla dividida"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Dividir en horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Dividir en vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Dividir de xeito personalizado"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> é o cadro de diálogo de volume"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Toca para restaurar o orixinal."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Estás usando o perfil de traballo"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Toca para activar o son."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Toca para establecer a vibración. Pódense silenciar os servizos de accesibilidade."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Toca para silenciar. Pódense silenciar os servizos de accesibilidade."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Configurador da IU do sistema"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Mostrar porcentaxe de batería inserida"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Bloquear todas as notificacións"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Non silenciar"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Non silenciar nin bloquear"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Mostrar a configuración completa da importancia"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloqueada"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importancia mínima"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Importancia baixa"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importancia normal"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Importancia alta"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Importancia urxente"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Non mostrar nunca estas notificacións"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Mostrar de forma silenciosa na parte inferior da lista de notificacións"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Mostrar estas notificacións de forma silenciosa"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Permitir que esta notificación emita son"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Mostrar na pantalla e permitir que emita son"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Mostrar na parte superior da lista de notificacións, amosar na pantalla e permitir que emita son"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Controis de notificacións mellorados"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Activar"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Desactivar"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Cos controis de notificacións mellorados, podes asignarlles un nivel de importancia comprendido entre 0 e 5 ás notificacións dunha aplicación determinada. \n\n"<b>"Nivel 5"</b>" \n- Mostrar na parte superior da lista de notificacións. \n- Permitir interrupcións no modo de pantalla completa. \n- Mostrar sempre. \n\n"<b>"Nivel 4"</b>" \n- Impedir interrupcións no modo de pantalla completa. \n- Mostrar sempre. \n\n"<b>"Nivel 3"</b>" \n- Impedir interrupcións no modo de pantalla completa. \n- Non mostrar nunca. \n\n"<b>"Nivel 2"</b>" \n- Impedir interrupcións no modo de pantalla completa. \n- Non mostrar nunca. \n- Non soar nin vibrar nunca. \n\n"<b>"Nivel 1"</b>" \n- Impedir interrupcións no modo de pantalla completa. \n- Non mostrar nunca. \n- Non soar nin vibrar nunca. \n- Ocultar na pantalla de bloqueo e na barra de estado. \n- Mostrar na parte inferior da lista de notificacións. \n\n"<b>"Nivel 0"</b>" \n- Bloquear todas as notificacións da aplicación."</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importancia: automática"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importancia: nivel 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importancia: nivel 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importancia: nivel 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importancia: nivel 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importancia: nivel 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importancia: nivel 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"A aplicación determina a importancia de cada notificación."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Non mostrar nunca as notificacións desta aplicación."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Sen notif. e sen son, vibrac. ou inter. en pant. completa. Ocultar na pant. bloqueo e barra estado."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Sen mostrar notificacións e sen son, vibración ou interrupcións no modo de pantalla completa."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Sen mostrar notificacións e sen interrupcións no modo de pantalla completa."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Mostrar notificacións sempre. Sen interrupcións no modo de pantalla completa."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Mostrar notificacións sempre e permitir interrupcións no modo de pantalla completa."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Máis opcións"</string>
     <string name="notification_done" msgid="5279426047273930175">"Feito"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Controis de notificacións de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Outros"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Divisor de pantalla dividida"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Baixar"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Subir"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Mover á esquerda"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Mover á dereita"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Pantalla completa á esquerda"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"70 % á esquerda"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"50 % á esquerda"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"30 % á esquerda"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Pantalla completa á dereita"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Pantalla completa arriba"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"70 % arriba"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"50 % arriba"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"30 % arriba"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Pantalla completa abaixo"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posición <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Toca dúas veces o elemento para editalo."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Toca dúas veces o elemento para engadilo"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posición <xliff:g id="POSITION">%1$d</xliff:g>. Toca dúas veces o elemento para seleccionalo."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Eliminouse <xliff:g id="TILE_NAME">%1$s</xliff:g>"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> moveuse á posición <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor de configuración rápida."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Pode que a aplicación non funcione coa pantalla dividida."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"A aplicación non é compatible coa función de pantalla dividida."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Páxina <xliff:g id="ID_1">%1$d</xliff:g> de <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-gl-rES/strings_tv.xml b/packages/SystemUI/res/values-gl-rES/strings_tv.xml
index d43d8cc..63c423f 100644
--- a/packages/SystemUI/res/values-gl-rES/strings_tv.xml
+++ b/packages/SystemUI/res/values-gl-rES/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Reproducir"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pausar"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Manter premido "<b>"INICIO"</b>" para controlar PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Mantén premido o botón de INICIO para controlar PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"De acordo"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Ignorar"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-gu-rIN/strings.xml b/packages/SystemUI/res/values-gu-rIN/strings.xml
index f937362..077724c 100644
--- a/packages/SystemUI/res/values-gu-rIN/strings.xml
+++ b/packages/SystemUI/res/values-gu-rIN/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"ડેટા સિગ્નલ પૂર્ણ."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> થી કનેક્ટ થયેલું છે."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> થી કનેક્ટ થયાં."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"કોઈ WiMAX નથી."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX એક બાર."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX બે બાર."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM નથી."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"સેલ્યુલર ડેટા બંધ છે"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth ટિથરિંગ."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"એરપ્લેન મોડ."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"કોઇ SIM કાર્ડ નથી."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"કેરીઅર નેટવર્કમાં ફેરફાર થઈ રહ્યો છે."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"બૅટરી <xliff:g id="NUMBER">%d</xliff:g> ટકા."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"બૅટરી ચાર્જ થઈ રહી છે, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> ટકા."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"સિસ્ટમ સેટિંગ્સ."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"સૂચનાઓ."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"સૂચના સાફ કરો."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"ખલેલ પાડશો નહીં ચાલુ, ફક્ત પ્રાધાન્યતા."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"ખલેલ પાડશો નહીં ચાલુ, સાવ શાંતિ."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"ખલેલ પાડશો નહીં ચાલુ, ફક્ત એલાર્મ્સ."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"ખલેલ પાડશો નહીં બંધ."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"ખલેલ પાડશો નહીં બંધ કર્યું."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"ખલેલ પાડશો નહીં ચાલુ કર્યું."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth બંધ."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth ચાલુ."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth કનેક્ટ કરી રહ્યું છે."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"સ્ક્રીન હવે લેન્ડસ્કેપ ઓરિએન્ટેશનમાં લૉક કરેલ છે."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"સ્ક્રીન હવે પોટ્રેટ ઓરિએન્ટેશનમાં લૉક કરેલ છે."</string>
     <string name="dessert_case" msgid="1295161776223959221">"ડેઝર્ટ કેસ"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"ડેડ્રીમ"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"સ્ક્રીન સેવર"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ઇથરનેટ"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"ખલેલ પાડશો નહીં"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"ફક્ત પ્રાધાન્યતા"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"કોઈ જોડી કરેલ ઉપકરણો ઉપલબ્ધ નથી"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"તેજ"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"સ્વતઃ-ફેરવો"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"પરિભ્રમણ લૉક થયું"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"પોર્ટ્રેટ"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"લેન્ડસ્કેપ"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"કનેક્ટ થયેલ નથી"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"કોઈ નેટવર્ક નથી"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi બંધ"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"કોઈ Wi-Fi નેટવર્ક્સ ઉપલબ્ધ નથી"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"કાસ્ટ કરો"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"કાસ્ટ કરી રહ્યાં છે"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> પ્રારંભ કરી શકાયું નથી."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"સુરક્ષિત મોડમાં <xliff:g id="APP">%s</xliff:g> અક્ષમ કરેલ છે."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"બધું સાફ કરો"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"આ ઍપ્લિકેશન મલ્ટિ-વિંડોનું સમર્થન કરતી નથી"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"ઍપ્લિકેશન મલ્ટિ-વિંડોનું સમર્થન કરતી નથી"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"ઍપ્લિકેશન સ્ક્રીન વિભાજનનું સમર્થન કરતી નથી"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"વિભાજિત સ્ક્રીનનો ઉપયોગ કરવા માટે અહીં ખેંચો"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"આડું વિભક્ત કરો"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"ઊભું વિભક્ત કરો"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"કસ્ટમ વિભક્ત કરો"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> એ વૉલ્યૂમ સંવાદ છે"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"મૂળને પુનઃસ્થાપિત કરવા માટે ટચ કરો."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"તમે તમારી કાર્ય પ્રોફાઇલનો ઉપયોગ કરી રહ્યાં છો"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. અનમ્યૂટ કરવા માટે ટૅપ કરો."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. વાઇબ્રેટ પર સેટ કરવા માટે ટૅપ કરો. ઍક્સેસિબિલિટી સેવાઓ મ્યૂટ કરવામાં આવી શકે છે."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. મ્યૂટ કરવા માટે ટૅપ કરો. ઍક્સેસિબિલિટી સેવાઓ મ્યૂટ કરવામાં આવી શકે છે."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"સિસ્ટમ UI ટ્યૂનર"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"એમ્બેડ કરેલ બૅટરી ટકા બતાવો"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"તમામ સૂચનાઓને અવરોધિત કરો"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"ચુપ કરશો નહીં"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"ચુપ કે અવરોધિત કરશો નહીં"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"પૂર્ણ મહત્વ સેટિંગ્સ બતાવો"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"અવરોધિત"</string>
-    <string name="min_importance" msgid="1901894910809414782">"ન્યૂનતમ મહત્વ"</string>
-    <string name="low_importance" msgid="4109929986107147930">"નિમ્ન મહત્વની"</string>
-    <string name="default_importance" msgid="8192107689995742653">"સામાન્ય મહત્વની"</string>
-    <string name="high_importance" msgid="1527066195614050263">"ઉચ્ચ મહત્વની"</string>
-    <string name="max_importance" msgid="5089005872719563894">"તાત્કાલિક મહત્વની"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"આ સૂચનાઓ ક્યારેય બતાવશો નહીં"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"સૂચનાની સૂચિની નીચે ચુપચાપ બતાવો"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"આ સૂચનાઓ ચુપચાપ બતાવો"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"આ સૂચનાને અવાજ કરવાની મંજૂરી આપો"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"સ્ક્રીન પર ત્વરિત દ્રષ્ટિ કરો અને અવાજને મંજૂરી આપો"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"સૂચનાઓની સૂચિની ટોચ પર બતાવો, સ્ક્રીન પર ત્વરિત દ્રષ્ટિ કરો અને અવાજને મંજૂરી આપો"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"પાવર સૂચના નિયંત્રણો"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"ચાલુ"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"બંધ"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"પાવર સૂચના નિયંત્રણો સાથે, તમે ઍપ્લિકેશનની સૂચનાઓ માટે 0 થી 5 સુધીના મહત્વના સ્તરને સેટ કરી શકો છો. \n\n"<b>"સ્તર 5"</b>" \n- સૂચના સૂચિની ટોચ પર બતાવો \n- પૂર્ણ સ્ક્રીન અવરોધની મંજૂરી આપો \n- હંમેશાં ત્વરિત દૃષ્ટિ કરો \n\n"<b>"સ્તર 4"</b>" \n- પૂર્ણ સ્ક્રીન અવરોધ અટકાવો \n- હંમેશાં ત્વરિત દૃષ્ટિ કરો \n\n"<b>"સ્તર 3"</b>" \n- પૂર્ણ સ્ક્રીન અવરોધ અટકાવો \n- ક્યારેય ત્વરિત દૃષ્ટિ કરશો નહીં \n\n"<b>"સ્તર 2"</b>" \n- પૂર્ણ સ્ક્રીન અવરોધ અટકાવો \n- ક્યારેય ત્વરિત દૃષ્ટિ કરશો નહીં \n- ક્યારેય અવાજ અને વાઇબ્રેશન કરશો નહીં \n\n"<b>"સ્તર 1"</b>" \n- પૂર્ણ સ્ક્રીન અવરોધ અટકાવો \n- ક્યારેય ત્વરિત દૃષ્ટિ કરશો નહીં \n- ક્યારેય અવાજ અથવા વાઇબ્રેટ કરશો નહીં \n- લૉક સ્ક્રીન અને સ્થિતિ બારથી છુપાવો \n- સૂચના સૂચિના તળિયા પર બતાવો \n\n"<b>"સ્તર 0"</b>" \n- ઍપ્લિકેશનની તમામ સૂચનાઓને અવરોધિત કરો"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"મહત્વ: સ્વચલિત"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"મહત્વ: સ્તર 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"મહત્વ: સ્તર 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"મહત્વ: સ્તર 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"મહત્વ: સ્તર 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"મહત્વ: સ્તર 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"મહત્વ: સ્તર 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"દરેક સૂચના માટે મહત્વને ઍપ્લિકેશન નિર્ધારિત કરે છે."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"આ ઍપ્લિકેશનમાંથી ક્યારેય સૂચનાઓ બતાવશો નહીં."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"કોઈ પૂર્ણ સ્ક્રીન અવરોધ, ત્વરિત દૃષ્ટિ, અવાજ અથવા વાઇબ્રેશન નહીં. લૉક સ્ક્રીન અને સ્થિતિ બારથી છુપાવો."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"કોઈ પૂર્ણ સ્ક્રીન અવરોધ, ત્વરિત દૃષ્ટિ, અવાજ અથવા વાઇબ્રેશન નહીં."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"કોઈ પૂર્ણ સ્ક્રીન અવરોધ અથવા ત્વરિત દૃષ્ટિ નહીં."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"હંમેશાં ત્વરિત દૃષ્ટિ કરો. કોઈ પૂર્ણ સ્ક્રીન અવરોધ નહીં."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"હંમેશાં ત્વરિત દૃષ્ટિ કરો અને પૂર્ણ સ્ક્રીન અવરોધને મંજૂરી આપો."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"વધુ સેટિંગ્સ"</string>
     <string name="notification_done" msgid="5279426047273930175">"થઈ ગયું"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> સૂચના નિયંત્રણો"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"અન્ય"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"સ્પ્લિટ-સ્ક્રીન વિભાજક"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"નીચે ખસેડો"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"ઉપર ખસેડો"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"ડાબે ખસેડો"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"જમણે ખસેડો"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"ડાબી પૂર્ણ સ્ક્રીન"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"ડાબે 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"ડાબે 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"ડાબે 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"જમણી સ્ક્રીન સ્ક્રીન"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"શીર્ષ પૂર્ણ સ્ક્રીન"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"શીર્ષ 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"શીર્ષ 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"શીર્ષ 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"તળિયાની પૂર્ણ સ્ક્રીન"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"સ્થિતિ <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. સંપાદિત કરવા માટે બે વાર ટૅપ કરો."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. ઉમેરવા માટે બે વાર ટૅપ કરો."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"સ્થિતિ <xliff:g id="POSITION">%1$d</xliff:g>. પસંદ કરવા માટે બે વાર ટૅપ કરો."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> દૂર કરવામાં આવ્યું છે"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ને <xliff:g id="POSITION">%2$d</xliff:g> સ્થિતિ પર ખસેડ્યું"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"ઝડપી સેટિંગ્સ સંપાદક."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"વિભાજિત-સ્ક્રીન સાથે ઍપ્લિકેશન કદાચ કામ ન કરે."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"ઍપ્લિકેશન સ્ક્રીન-વિભાજનનું સમર્થન કરતી નથી."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g> માંથી <xliff:g id="ID_1">%1$d</xliff:g> પૃષ્ઠ"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-gu-rIN/strings_tv.xml b/packages/SystemUI/res/values-gu-rIN/strings_tv.xml
index 878e91f..5b430b6 100644
--- a/packages/SystemUI/res/values-gu-rIN/strings_tv.xml
+++ b/packages/SystemUI/res/values-gu-rIN/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"ચલાવો"</string>
     <string name="pip_pause" msgid="8412075640017218862">"થોભાવો"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP નિયંત્રિત કરવા માટે "<b>"હોમ"</b>" પકડી રાખો"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP નિયંત્રિત કરવા માટે હોમ બટન દબાવો અને પકડી રાખો"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"સમજાઈ ગયું"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"છોડી દો"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-hi/strings.xml b/packages/SystemUI/res/values-hi/strings.xml
index b30d7a6..9a2f98e 100644
--- a/packages/SystemUI/res/values-hi/strings.xml
+++ b/packages/SystemUI/res/values-hi/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"पूर्ण डेटा सि‍ग्‍नल."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> से कनेक्ट किया गया."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> से कनेक्ट किया गया."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX नहीं."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX एक बार."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX दो बार."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"किनारा"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"वाई-फ़ाई"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"कोई सिम नहीं."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"सेल्‍युलर डेटा बंद है"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ब्लूटूथ टेदरिंग."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"हवाई जहाज मोड."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"कोई सिम कार्ड नहीं है."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"वाहक नेटवर्क बदलना."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"<xliff:g id="NUMBER">%d</xliff:g> प्रति‍शत बैटरी."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"बैटरी चार्ज हो रही है, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> प्रतिशत."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"सिस्टम सेटिंग."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"सूचनाएं."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"नोटिफिकेशन साफ़ करें"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"परेशान ना करें चालू, केवल प्राथमिकता."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"परेशान ना करें चालू है, पूरी तरह शांत."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"परेशान ना करें चालू, केवल अलार्म."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"परेशान ना करें बंद."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"परेशान ना करें बंद किया गया."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"परेशान ना करें चालू किया गया."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"ब्लूटूथ बंद है."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"ब्लूटूथ चालू है."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"ब्लूटूथ कनेक्‍ट हो रहा है."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"स्‍क्रीन को अब भू-दृश्य अभिविन्यास में लॉक कर दिया गया है."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"स्‍क्रीन को अब पोर्ट्रेट अभिविन्‍यास में लॉक की दिया गया है."</string>
     <string name="dessert_case" msgid="1295161776223959221">"मिठाई का डिब्बा"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"स्क्रीनसेवर"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"स्क्रीन सेवर"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ईथरनेट"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"परेशान ना करें"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"केवल प्राथमिकता"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"कोई भी युग्मित डिवाइस उपलब्ध नहीं"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"स्क्रीन की रोशनी"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"स्वत: घुमाएं"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"घुमाना लॉक किया गया"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"पोर्ट्रेट"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"लैंडस्केप"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"कनेक्ट नहीं है"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"कोई नेटवर्क नहीं"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"वाई-फ़ाई  बंद"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"कोई भी वाई-फ़ाई नेटवर्क उपलब्‍ध नहीं है"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"कास्ट करें"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"कास्टिंग"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> प्रारंभ नहीं किया जा सका."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> को सुरक्षित-मोड में अक्षम किया गया."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Clear all"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"यह ऐप्लिकेशन एकाधिक विंडो का समर्थन नहीं करता है"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"ऐप्लिकेशन एकाधिक विंडो का समर्थन नहीं करता है"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"ऐप्लिकेशन विभाजित स्क्रीन का समर्थन नहीं करता है"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"विभाजित स्क्रीन का उपयोग करने के लिए यहां खींचें"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"क्षैतिज रूप से विभाजित करें"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"लम्बवत रूप से विभाजित करें"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"कस्‍टम रूप से विभाजित करें"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> वॉल्यूम संवाद है"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"मूल वॉल्यूम को फिर से लाने के लिए स्पर्श करें."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"आप अपनी कार्य प्रोफ़ाइल का उपयोग कर रहे हैं"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. अनम्यूट करने के लिए टैप करें."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. कंपन पर सेट करने के लिए टैप करें. एक्सेस-योग्यता सेवाएं म्यूट हो सकती हैं."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. म्यूट करने के लिए टैप करें. एक्सेस-योग्यता सेवाएं म्यूट हो सकती हैं."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"सिस्टम UI ट्यूनर"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"एम्बेड किया गया बैटरी प्रतिशत दिखाएं"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"सभी नोटिफिकेशन अवरुद्ध करें"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"मौन ना करें"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"मौन या अवरुद्ध ना करें"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"पूर्ण महत्व वाली सेटिंग दिखाएं"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"अवरोधित"</string>
-    <string name="min_importance" msgid="1901894910809414782">"न्यूनतम महत्व"</string>
-    <string name="low_importance" msgid="4109929986107147930">"निम्न महत्व"</string>
-    <string name="default_importance" msgid="8192107689995742653">"सामान्य महत्व"</string>
-    <string name="high_importance" msgid="1527066195614050263">"उच्च महत्व"</string>
-    <string name="max_importance" msgid="5089005872719563894">"तत्काल महत्व"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"ये नोटिफिकेशन कभी ना दिखाएं"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"नोटिफिकेशन सूची में सबसे नीचे मौन रूप से दिखाएं"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"ये नोटिफिकेशन मौन रूप से दिखाएं"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"इन नोटिफिकेशन को ध्वनि करने दें"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"स्क्रीन पर झलक दिखाएं और ध्वनि करें"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"नोटिफिकेशन सूची के शीर्ष पर दिखाएं, स्क्रीन पर झलक दिखाएं और ध्वनि करें"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"पावर नोटिफ़िकेशन नियंत्रण"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"चालू"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"बंद"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"पावर नोटिफ़िकेशन नियंत्रण के द्वारा, आप किसी ऐप्लिकेशन के नोटिफ़िकेशन के लिए 0 से 5 तक महत्व का लेवल सेट कर सकते हैं. \n\n"<b>"लेवल 5"</b>" \n- नोटिफ़िकेशन सूची के शीर्ष पर दिखाएं \n- पूर्ण स्क्रीन बाधा की अनुमति दें \n- हमेशा तांक-झांक करें \n\n"<b>"लेवल 4"</b>" \n- पूर्ण स्क्रीन बाधा को रोकें \n- हमेशा तांक-झांक करें \n\n"<b>"लेवल 3"</b>" \n- पूर्ण स्क्रीन बाधा को रोकें \n- कभी भी तांक-झांक ना करें \n\n"<b>"लेवल 2"</b>" \n- पूर्ण स्क्रीन बाधा को रोकें \n- कभी भी तांक-झांक ना करें \n- कभी भी ध्वनि या कंपन ना करें \n\n"<b>"लेवल 1"</b>" \n- पूर्ण स्क्रीन बाधा को रोकें \n- कभी भी तांक-झांक ना करें \n- कभी भी ध्वनि या कंपन ना करें \n- लॉक स्क्रीन और स्थिति बार से छिपाएं \n- नोटिफ़िकेशन सूची के नीचे दिखाएं \n\n"<b>"लेवल 0"</b>" \n- ऐप्लिकेशन के सभी नोटिफ़िकेशन अवरुद्ध कर दें"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"महत्व: स्वचालित"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"महत्व: लेवल 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"महत्व: लेवल 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"महत्व: लेवल 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"महत्व: लेवल 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"महत्व: लेवल 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"महत्व: लेवल 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"ऐप्लिकेशन प्रत्येक नोटिफ़िकेशन का महत्व निर्धारित करता है."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"इस ऐप्लिकेशन के नोटिफ़िकेशन कभी ना दिखाएं."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"कोई पूर्ण स्क्रीन बाधा, तांक-झांक, ध्वनि या कंपन नहीं है. लॉक स्क्रीन और स्थिति बार से छिपाएं."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"कोई पूर्ण स्क्रीन बाधा, तांक-झांक, ध्वनि या कंपन नहीं है."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"कोई पूर्ण स्क्रीन बाधा या तांक-झांक नहीं है."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"हमेशा तांक-झांक. कोई पूर्ण स्क्रीन बाधा नहीं है."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"हमेशा तांक-झांक और पूर्ण स्क्रीन बाधा की अनुमति दें."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"और सेटिंग"</string>
     <string name="notification_done" msgid="5279426047273930175">"हो गया"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> नोटिफ़िकेशन नियंत्रण"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"अन्य"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"विभाजित स्क्रीन विभाजक"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"नीचे ले जाएं"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"ऊपर ले जाएं"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"बाएं ले जाएं"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"दाएं ले जाएं"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"बाईं स्क्रीन को पूर्ण स्क्रीन बनाएं"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"बाईं स्क्रीन को 70% बनाएं"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"बाईं स्क्रीन को 50% बनाएं"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"बाईं स्क्रीन को 30% बनाएं"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"दाईं स्क्रीन को पूर्ण स्क्रीन बनाएं"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"ऊपर की स्क्रीन को पूर्ण स्क्रीन बनाएं"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"ऊपर की स्क्रीन को 70% बनाएं"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"ऊपर की स्क्रीन को 50% बनाएं"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"ऊपर की स्क्रीन को 30% बनाएं"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"नीचे की स्क्रीन को पूर्ण स्क्रीन बनाएं"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"स्थिति <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. संपादित करने के लिए डबल टैप करें."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. जोड़ने के लिए डबल टैप करें."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"स्थिति <xliff:g id="POSITION">%1$d</xliff:g>. चुनने के लिए डबल टैप करें."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> निकाल दिया गया है"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> को <xliff:g id="POSITION">%2$d</xliff:g> स्थिति में ले जाया गया"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"त्वरित सेटिंग संपादक."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"हो सकता है कि ऐप्लिकेशन विभाजित स्क्रीन के साथ काम ना करे."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"ऐप विभाजित स्‍क्रीन का समर्थन नहीं करता है."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"पृष्ठ <xliff:g id="ID_2">%2$d</xliff:g> में से <xliff:g id="ID_1">%1$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-hi/strings_tv.xml b/packages/SystemUI/res/values-hi/strings_tv.xml
index 0b4f3e5..5f1ab48 100644
--- a/packages/SystemUI/res/values-hi/strings_tv.xml
+++ b/packages/SystemUI/res/values-hi/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"चलाएं"</string>
     <string name="pip_pause" msgid="8412075640017218862">"रोकें"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP नियंत्रण हेतु "<b>"HOME"</b>" होल्ड करें"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP नियंत्रण के लिए HOME बटन को दबाए रखें"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"समझ लिया"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"ख़ारिज करें"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-hr/strings.xml b/packages/SystemUI/res/values-hr/strings.xml
index 24e8f8d..829fc1a 100644
--- a/packages/SystemUI/res/values-hr/strings.xml
+++ b/packages/SystemUI/res/values-hr/strings.xml
@@ -119,6 +119,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Podatkovni signal pun."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Spojen na <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Spojen na <xliff:g id="BLUETOOTH">%s</xliff:g> ."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Nema signala WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX s jednim stupcem."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX s dva stupca."</string>
@@ -149,12 +151,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Nema SIM kartice."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobilni podaci isključeni"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Posredno povezivanje Bluetootha."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Način rada u zrakoplovu"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Nema SIM kartice."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Promjena mreže operatera."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Baterija <xliff:g id="NUMBER">%d</xliff:g> posto."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Baterija se puni, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> posto."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Postavke sustava."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Obavijesti."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Brisanje obavijesti"</string>
@@ -192,9 +201,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\"Ne ometaj\" uključeno, samo prioritetno."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"\"Ne ometaj\" uključeno, potpuna tišina."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\"Ne ometaj\" uključeno, samo za alarme."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\"Ne ometaj\" isključeno."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\"Ne ometaj\" isključeno."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\"Ne ometaj\" uključeno."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth isključen."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth uključen."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth se povezuje."</string>
@@ -248,7 +261,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Zaslon je sada zaključan u vodoravnom usmjerenju."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Zaslona je sada zaključan u okomitom usmjerenju."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Izlog za slastice"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Sanjarenje"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Čuvar zaslona"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Ne ometaj"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Samo prioritetno"</string>
@@ -260,6 +273,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Upareni uređaji nisu dostupni"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Svjetlina"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automatsko izmjenjivanje"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Izmjenjivanje je zaključano"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Okomito"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Vodoravno"</string>
@@ -278,6 +295,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Nije povezano"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Nema mreže"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi isključen"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nije dostupna nijedna Wi-Fi mreža"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Emitiranje"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Emitiranje"</string>
@@ -312,8 +331,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Aplikacija <xliff:g id="APP">%s</xliff:g> nije pokrenuta."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Aplikacija <xliff:g id="APP">%s</xliff:g> onemogućena je u sigurnom načinu."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Izbriši sve"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Ta aplikacija ne podržava više prozora"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplikacija ne podržava više prozora"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplikacija ne podržava podijeljeni zaslon"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Povucite ovdje da biste upotrebljavali podijeljeni zaslon"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Podijeli vodoravno"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Podijeli okomito"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Podijeli prilagođeno"</string>
@@ -421,11 +440,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> predstavlja dijaloški okvir za upravljanje glasnoćom"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Dodirnite da biste vratili izvorno."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Upotrebljavate radni profil"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Dodirnite da biste uključili zvuk."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Dodirnite da biste postavili na vibraciju. Usluge pristupačnosti možda neće imati zvuk."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Dodirnite da biste isključili zvuk. Usluge pristupačnosti možda neće imati zvuk."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Ugađanje korisničkog sučelja sustava"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Prikaži ugrađeni postotak baterije"</string>
@@ -471,19 +491,24 @@
     <string name="block" msgid="2734508760962682611">"Blokiraj sve obavijesti"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ne utišavaj"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ne utišavaj i ne blokiraj"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Prikaži potpune postavke važnosti"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blokirano"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Najmanja važnost"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Mala važnost"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Uobičajena važnost"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Velika važnost"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Hitno"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Nikad ne prikazuj te obavijesti"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Prikaži tiho pri dnu popisa obavijesti"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Prikaži te obavijesti tiho"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Dopusti obavijestima da emitiraju zvučne signale"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Prikaži na zaslonu i dopusti zvuk"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Prikaži pri vrhu popisa obavijesti, prikaži na zaslonu i dopusti zvuk"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Napredne kontrole obavijesti"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Uključeno"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Isključeno"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Napredne kontrole obavijesti omogućuju vam da postavite razinu važnosti za obavijesti aplikacije od 0 do 5. \n\n"<b>"Razina 5"</b>" \n– prikaži na vrhu popisa obavijesti \n– dopusti prekide prikaza na cijelom zaslonu \n– uvijek dopusti brzi pregled \n\n"<b>"Razina 4"</b>" \n– onemogući prekid prikaza na cijelom zaslonu \n– uvijek dopusti brzi pregled \n\n"<b>"Razina 3"</b>" \n– onemogući prekid prikaza na cijelom zaslonu \n– nikad ne dopusti brzi pregled\n\n"<b>"Razina 2"</b>" \n– onemogući prekid prikaza na cijelom zaslonu \n– nikad ne dopusti brzi pregled \n– nikad ne emitiraj zvuk ni vibraciju \n\n"<b>"Razina 1"</b>" \n– onemogući prekid prikaza na cijelom zaslonu \n– nikad ne dopusti brzi pregled \n– nikad ne emitiraj zvuk ni vibraciju \n– ne prikazuj na zaključanom zaslonu i traci statusa \n– prikaži na dnu popisa obavijesti \n\n"<b>"Razina 0"</b>" \n– blokiraj sve obavijesti aplikacije"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Važnost: automatski"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Važnost: razina 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Važnost: razina 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Važnost: razina 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Važnost: razina 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Važnost: razina 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Važnost: razina 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Aplikacija određuje važnost za svaku obavijest."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nikad ne prikazuj obavijesti te aplikacije."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Bez prekida prikaza na cijelom zaslonu, brzog pregleda, zvuka ili vibracije. Ne prikazuj na zaključanom zaslonu i traci statusa."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Bez prekida prikaza na cijelom zaslonu, bez brzog pregleda, zvuka i vibracije."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Bez prekida prikaza na cijelom zaslonu i bez brzog pregleda."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Uvijek dopusti brzi pregled. Bez prekida prikaza na cijelom zaslonu."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Uvijek dopusti brzi pregled i prekid prikaza na cijelom zaslonu."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Više postavki"</string>
     <string name="notification_done" msgid="5279426047273930175">"Gotovo"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Kontrole obavijesti za aplikaciju <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -598,10 +623,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Ostalo"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Razdjelnik podijeljenog zaslona"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Pomakni prema dolje"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Pomakni prema gore"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Pomakni ulijevo"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Pomakni udesno"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Lijevo na cijelom zaslonu"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Lijevo 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Lijevo 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Lijevo 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Desno na cijelom zaslonu"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Vrh na cijelom zaslonu"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Vrh 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Vrh 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Vrh 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Dno na cijelom zaslonu"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Položaj <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Dodirnite dvaput da biste uredili."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Dodirnite dvaput da biste dodali."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Položaj <xliff:g id="POSITION">%1$d</xliff:g>. Dodirnite dvaput da biste odabrali."</string>
@@ -611,6 +642,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Pločica <xliff:g id="TILE_NAME">%1$s</xliff:g> uklonjena"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Pločica <xliff:g id="TILE_NAME">%1$s</xliff:g> premještena je na položaj <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Uređivač brzih postavki."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Aplikacija možda neće funkcionirati s podijeljenim zaslonom."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Aplikacija ne podržava podijeljeni zaslon."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Stranica <xliff:g id="ID_1">%1$d</xliff:g> od <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-hr/strings_tv.xml b/packages/SystemUI/res/values-hr/strings_tv.xml
index 340a613..eb5be40 100644
--- a/packages/SystemUI/res/values-hr/strings_tv.xml
+++ b/packages/SystemUI/res/values-hr/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Reproduciraj"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pauziraj"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Držite "<b>"POČETNI"</b>" za PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Pritisnite i zadržite tipku POČETNI ZASLON da biste upravljali slikom u slici"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Shvaćam"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Odbaci"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-hu/strings.xml b/packages/SystemUI/res/values-hu/strings.xml
index cf69932..7bcb5de 100644
--- a/packages/SystemUI/res/values-hu/strings.xml
+++ b/packages/SystemUI/res/values-hu/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Adatjel teljes."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Csatlakoztatva a következőhöz: <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Csatlakoztatva a következőhöz: <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Nincs WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX-jel: egy sáv."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX-jel: két sáv."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Nincs SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobiladat-kapcsolat kikapcsolva"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth megosztása."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Repülőgép üzemmód."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Nincs SIM kártya."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Szolgáltatói hálózat váltása."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Akkumulátor <xliff:g id="NUMBER">%d</xliff:g> százalék."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Akkumulátor töltése folyamatban, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> százalék."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Rendszerbeállítások"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Értesítések"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Értesítés törlése"</string>
@@ -190,10 +199,14 @@
     <string name="accessibility_quick_settings_airplane_changed_on" msgid="8983005603505087728">"Repülős üzemmód bekapcsolva."</string>
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"A „Ne zavarjanak” mód bekapcsolva. Csak prioritásos."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"„Ne zavarjanak” mód bekapcsolva; teljes némítás."</string>
-    <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"A „Ne zavarjanak” mód bekapcsolva. Csak riasztások."</string>
+    <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"A „Ne zavarjanak” mód bekapcsolva. Csak ébresztések."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"A „Ne zavarjanak” mód kikapcsolva."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"A „Ne zavarjanak” mód kikapcsolva."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"A „Ne zavarjanak” mód bekapcsolva."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth kikapcsolva."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth bekapcsolva."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth csatlakoztatása folyamatban."</string>
@@ -247,11 +260,11 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"A képernyő zárolva van fekvő tájolásban."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"A képernyő zárolva van álló tájolásban."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Álmodozás"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Képernyővédő"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Ne zavarjanak"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Csak prioritásos"</string>
-    <string name="quick_settings_dnd_alarms_label" msgid="2559229444312445858">"Csak riasztások"</string>
+    <string name="quick_settings_dnd_alarms_label" msgid="2559229444312445858">"Csak ébresztések"</string>
     <string name="quick_settings_dnd_none_label" msgid="5025477807123029478">"Teljes némítás"</string>
     <string name="quick_settings_bluetooth_label" msgid="6304190285170721401">"Bluetooth"</string>
     <string name="quick_settings_bluetooth_multiple_devices_label" msgid="3912245565613684735">"Bluetooth (<xliff:g id="NUMBER">%d</xliff:g> eszköz)"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Nem áll rendelkezésre párosított eszköz"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Fényerő"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automatikus elforgatás"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Elforgatás zárolva"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Álló"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Fekvő"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Nincs kapcsolat"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Nincs hálózat"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi kikapcsolva"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nincs elérhető Wi-Fi-hálózat"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Tartalomátküldés"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Átküldés"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Nem lehet elindítani a következőt: <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"A(z) <xliff:g id="APP">%s</xliff:g> csökkentett módban ki van kapcsolva."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Összes törlése"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Ez az alkalmazás nem támogatja a többablakos nézetet"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Az alkalmazás nem támogatja a többablakos nézetet"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Az alkalmazás nem támogatja az osztott képernyős nézetet"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Húzza ide az osztott képernyő használatához"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Osztott vízszintes"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Osztott függőleges"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Osztott egyéni"</string>
@@ -338,7 +357,7 @@
     <string name="interruption_level_none_with_warning" msgid="5114872171614161084">"Teljes csend. Ezzel a képernyőolvasók is elnémulnak."</string>
     <string name="interruption_level_none" msgid="6000083681244492992">"Teljes némítás"</string>
     <string name="interruption_level_priority" msgid="6426766465363855505">"Csak prioritásos"</string>
-    <string name="interruption_level_alarms" msgid="5226306993448328896">"Csak riasztások"</string>
+    <string name="interruption_level_alarms" msgid="5226306993448328896">"Csak ébresztések"</string>
     <string name="interruption_level_none_twoline" msgid="3957581548190765889">"Teljes\nnémítás"</string>
     <string name="interruption_level_priority_twoline" msgid="1564715335217164124">"Csak\nprioritás"</string>
     <string name="interruption_level_alarms_twoline" msgid="3266909566410106146">"Csak\nriasztások"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"A(z) <xliff:g id="APP_NAME">%1$s</xliff:g> alkalmazás kezeli a hangerőt"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Érintse meg az eredeti érték visszaállításához."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"A munkaprofilt használja"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Koppintson a némítás megszüntetéséhez."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Koppintson a rezgés beállításához. Előfordulhat, hogy a kisegítő lehetőségek szolgáltatásai le vannak némítva."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Koppintson a némításhoz. Előfordulhat, hogy a kisegítő lehetőségek szolgáltatásai le vannak némítva."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Kezelőfelület-hangoló"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"A beépített akkumulátor töltöttségi szintjének megjelenítése"</string>
@@ -436,7 +456,7 @@
     <string name="enable_demo_mode" msgid="4844205668718636518">"Demó mód engedélyezése"</string>
     <string name="show_demo_mode" msgid="2018336697782464029">"Demó mód megjelenítése"</string>
     <string name="status_bar_ethernet" msgid="5044290963549500128">"Ethernet"</string>
-    <string name="status_bar_alarm" msgid="8536256753575881818">"Riasztás"</string>
+    <string name="status_bar_alarm" msgid="8536256753575881818">"Ébresztés"</string>
     <string name="status_bar_work" msgid="6022553324802866373">"Munkahelyi profil"</string>
     <string name="status_bar_airplane" msgid="7057575501472249002">"Repülős üzemmód"</string>
     <string name="add_tile" msgid="2995389510240786221">"Mozaik hozzáadása"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Minden értesítés letiltása"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Nincs némítás"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Nincs némítás vagy letiltás"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"A teljes fontossági beállítások megjelenítése"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Letiltva"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Minimális fontosságú"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Kevésbé fontos"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normál"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Fontos"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Sürgős"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Soha nem jelennek meg ezek az értesítések"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Hangjelzés nélkül jelennek meg az értesítési lista alján"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Ezek az értesítések hangjelzés nélkül jelennek meg"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Hangjelzés engedélyezése ezeknél az értesítéseknél"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Az értesítések felugranak a képernyőn hangjelzéssel"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Az értesítési lista tetején jelennek meg, illetve felugranak a képernyőn hangjelzéssel"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Teljes körű értesítésvezérlők"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Bekapcsolva"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Kikapcsolva"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Az értesítési beállítások révén 0-tól 5-ig állíthatja be a fontossági szintet az alkalmazás értesítéseinél. \n\n"<b>"5. szint"</b>" \n– Megjelenítés az értesítési lista tetején \n– Teljes képernyő megszakításának engedélyezése \n– Mindig felugrik \n\n"<b>"4. szint"</b>" \n– Teljes képernyő megszakításának megakadályozása \n– Mindig felugrik \n\n"<b>"3. szint"</b>" \n– Teljes képernyő megszakításának megakadályozása \n– Soha nem ugrik fel \n\n"<b>"2. szint"</b>" \n– Teljes képernyő megszakításának megakadályozása \n– Soha nem ugrik fel \n– Soha nincs hangjelzés és rezgés \n\n"<b>"1. szint"</b>" \n– Teljes képernyő megszakításának megakadályozása \n– Soha nem ugrik fel \n– Soha nincs hangjelzés vagy rezgés \n– Elrejtés a lezárási képernyőről és az állapotsávról \n– Megjelenítés az értesítési lista alján \n\n"<b>"0. szint"</b>" \n– Az alkalmazás összes értesítésének letiltása"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Fontosság: Automatikus"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Fontosság: 0. szint"</string>
+    <string name="min_importance" msgid="560779348928574878">"Fontosság: 1. szint"</string>
+    <string name="low_importance" msgid="7571498511534140">"Fontosság: 2. szint"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Fontosság: 3. szint"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Fontosság: 4. szint"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Fontosság: 5. szint"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Az alkalmazás határozza meg az egyes értesítések fontosságát."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Soha ne jelenjenek meg az alkalmazás értesítései."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Nem szakítja meg a teljes képernyőt, nem ugrik fel, illetve nincs hang vagy rezgés. Elrejtés a lezárási képernyőről és az állapotsávról."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Nem szakítja meg a teljes képernyőt, nem ugrik fel, illetve nincs hang vagy rezgés."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Nem szakítja meg a teljes képernyőt, és nem ugrik fel."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Mindig felugrik az értesítés. Nem szakítja meg a teljes képernyőt."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Mindig felugrik az értesítés, valamint megszakíthatja a teljes képernyőt."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"További beállítások"</string>
     <string name="notification_done" msgid="5279426047273930175">"Kész"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g>-értesítések vezérlői"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Egyéb"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Elválasztó az osztott nézetben"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Mozgatás lefelé"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Mozgatás felfelé"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Mozgatás balra"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Mozgatás jobbra"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Bal oldali teljes képernyőre"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Bal oldali 70%-ra"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Bal oldali 50%-ra"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Bal oldali 30%-ra"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Jobb oldali teljes képernyőre"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Felső teljes képernyőre"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Felső 70%-ra"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Felső 50%-ra"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Felső 30%-ra"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Alsó teljes képernyőre"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g>. pozíció: <xliff:g id="TILE_NAME">%2$s</xliff:g>. Koppintson duplán a szerkesztéshez."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Koppintson duplán a hozzáadáshoz."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g>. pozíció. Koppintson duplán a kiválasztáshoz."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"A(z) <xliff:g id="TILE_NAME">%1$s</xliff:g> eltávolítva"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"A(z) <xliff:g id="TILE_NAME">%1$s</xliff:g> áthelyezve a(z) <xliff:g id="POSITION">%2$d</xliff:g>. pozícióba"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Gyorsbeállítások szerkesztője"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Lehet, hogy az alkalmazás nem működik osztott képernyős nézetben."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Az alkalmazás nem támogatja az osztott képernyős nézetet."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_1">%1$d</xliff:g>. oldal, összesen: <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-hu/strings_tv.xml b/packages/SystemUI/res/values-hu/strings_tv.xml
index 97d6cdd..f7eae94 100644
--- a/packages/SystemUI/res/values-hu/strings_tv.xml
+++ b/packages/SystemUI/res/values-hu/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Lejátszás"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Szüneteltetés"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP vezérlése a "<b>"HOME"</b>"-mal"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"A PIP vezérléséhez tartsa nyomva a HOME gombot"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Rendben"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Elvetés"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-hy-rAM/strings.xml b/packages/SystemUI/res/values-hy-rAM/strings.xml
index d58b63e..658f3a9 100644
--- a/packages/SystemUI/res/values-hy-rAM/strings.xml
+++ b/packages/SystemUI/res/values-hy-rAM/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Տվյալների ազդանշանը լրիվ է:"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Միացված է <xliff:g id="WIFI">%s</xliff:g>-ին:"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Կապակցված է <xliff:g id="BLUETOOTH">%s</xliff:g>-ին:"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX չկա:"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX-ի մեկ գիծ:"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX-ի երկու գիծ:"</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM չկա:"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Բջջային ցանցով տվյալների փոխանցումն անջատված է"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth-ը կապվում է:"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Ինքնաթիռային ռեժիմ"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM քարտ չկա:"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Օպերատորի ցանցի փոփոխում:"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Մարտկոցը <xliff:g id="NUMBER">%d</xliff:g> տոկոս է:"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Մարտկոցը լիցքավորվում է: Լիցքը <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> տոկոս է:"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Համակարգի կարգավորումներ:"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Ծանուցումներ:"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Մաքրել ծանուցումը:"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Չխանգարելու ընտրանքը միացված է: Ընդհատել միայն կարևոր ծանուցումների դեպքում:"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Չանհանգստացնել՝ ընդհանուր լուռ վիճակը:"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Չանհանգստացնել՝ միայն զարթուցիչ"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Չխանգարելու ընտրանքն անջատված է:"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Չխանգարելու ընտրանքն անջատվեց:"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Չխանգարելու ընտրանքը միացվեց:"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth-ն անջատված է:"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth-ը միացված է:"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth-ը միանում է:"</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Էկրանն այժմ կողպված է հորիզոնական դիրքում:"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Էկրանն այժմ կողպված է ուղղահայաց դիրքում:"</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Ցերեկային ռեժիմ"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Էկրանի խնայարար"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Չխանգարել"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Միայն կարևոր ծանուցումների դեպքում"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Հասանելի զուգավորված սարքեր չկան"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Պայծառություն"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Ինքնապտտում"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Պտտումը կողպված է"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Դիմանկար"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Լանդշաֆտ"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Միացված չէ"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Ցանց չկա"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi-ը անջատված է"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Հասանելի Wi-Fi ցանցեր չկան"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Հեռարձակում"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Հեռարձակում"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Հնարավոր չէ գործարկել <xliff:g id="APP">%s</xliff:g>-ը:"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> հավելվածը անվտանգ ռեժիմում անջատված է:"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Մաքրել բոլորը"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Այս հավելվածը չի աջակցում բազմապատուհան ռեժիմը"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Հավելվածը չի աջակցում բազմապատուհան ռեժիմը"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Հավելվածը չի աջակցում էկրանի տրոհումը"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Քաշեք այստեղ՝ էկրանի տրոհումն օգտագործելու համար"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Հորիզոնական տրոհում"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Ուղղահայաց տրոհում"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Հատուկ տրոհում"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g>-ը ձայնի ուժգնության երկխոսության հավելված է"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Դիպչեք՝ սկզբնօրինակը վերականգնելու համար:"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Դուք օգտագործում եք ձեր աշխատանքային պրոֆիլը"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s: Հպեք՝ ձայնը միացնելու համար:"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s: Հպեք՝ թրթռումը միացնելու համար: Մատչելիության ծառայությունների ձայնը կարող է անջատվել:"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s: Հպեք՝ ձայնն անջատելու համար: Մատչելիության ծառայությունների ձայնը կարող է անջատվել:"</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Համակարգի ՕՄ-ի կարգավորիչ"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Ցուցադրել ներկառուցված մարտկոցի տոկոսայնությունը"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Արգելափակել բոլոր ծանուցումները"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ձայնը չանջատել"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ձայնը չանջատել և չարգելափակել"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Ցույց տալ կարևորության բոլոր կարգավորումները"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Արգելափակված"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Նվազագույն կարևորություն"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Ցածր կարևորություն"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Սովորական կարևորություն"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Բարձր կարևորություն"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Հրատապ կարևորություն"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Երբեք չցուցադրել այս ծանուցումները"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Ցուցադրել ծանուցումների ցանկի ներքևում առանց ձայնային ազդանշանի"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Ցուցադրել այս ծանուցումներն առանց ձայնային ազդանշանի"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Թույլ տալ այս ծանուցումներին ձայնային ազդանշան հնչեցնել"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Թռուցիկ ցուցադրել էկրանին և թույլատրել ձայնային ազդանշանը"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Ցույց տալ ծանուցումների ցանկի վերևում, թռուցիկ ցուցադրել էկրանին և թույլատրել ձայնային ազդանշանը"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Ծանուցումների ընդլայնված կառավարում"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Միացնել"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Անջատել"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Ծանուցումների ընդլայնված կառավարման օգնությամբ կարող եք յուրաքանչյուր հավելվածի ծանուցումների համար նշանակել կարևորության աստիճան՝ 0-5 սահմաններում: \n\n"<b>"5-րդ աստիճան"</b>" \n- Ցուցադրել ծանուցումների ցանկի վերևում \n- Թույլատրել լիաէկրան ընդհատումները \n- Միշտ ցուցադրել կարճ ծանուցումները \n\n"<b>"4-րդ աստիճան"</b>" \n- Արգելել լիաէկրան ընդհատումները \n- Միշտ ցուցադրել կարճ ծանուցումները \n\n"<b>"3-րդ աստիճան"</b>" \n- Արգելել լիաէկրան ընդհատումները \n- Արգելել կարճ ծանուցումների ցուցադրումը \n\n"<b>"2-րդ աստիճան"</b>" \n- Արգելել լիաէկրան ընդհատումները \n- Արգելել կարճ ծանուցումների ցուցադրումը \n- Անջատել ձայնը և թրթռումը \n\n"<b>"1-ին աստիճան"</b>" \n- Արգելել լիաէկրան ընդհատումները \n- Արգելել կարճ ծանուցումների ցուցադրումը \n- Անջատել ձայնը և թրթռումը \n- Չցուցադրել կողպէկրանում և կարգավիճակի գոտում \n- Ցուցադրել ծանուցումների ցանկի ներքևում \n\n"<b>"0-րդ աստիճան"</b>\n"- Արգելափակել հավելվածի բոլոր ծանուցումները"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Կարևորությունը՝ ավտոմատ"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Կարևորությունը՝ 0-րդ աստիճան"</string>
+    <string name="min_importance" msgid="560779348928574878">"Կարևորությունը՝ 1-ին աստիճան"</string>
+    <string name="low_importance" msgid="7571498511534140">"Կարևորությունը՝ 2-րդ աստիճան"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Կարևորությունը՝ 3-րդ աստիճան"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Կարևորությունը՝ 4-րդ աստիճան"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Կարևորությունը՝ 5-րդ աստիճան"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Յուրաքանչյուր ծանուցման կարևորությունը որոշում է հավելվածը:"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Երբեք ցույց չտալ ծանուցումներ այս հավելվածից:"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Արգելել լիաէկրան ընդհատումները, կարճ ծանուցումները, ձայնը կամ թրթռումը: Չցուցադրել կողպէկրանում և կարգավիճակի գոտում:"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Արգելել լիաէկրան ընդհատումները, կարճ ծանուցումները, ձայնը կամ թրթռումը:"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Արգելել լիաէկրան ընդհատումները կամ կարճ ծանուցումները:"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Միշտ ցուցադրել կարճ ծանուցումները: Արգելել լիաէկրան ընդհատումները:"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Միշտ ցուցադրել կարճ ծանուցումները և թույլատրել լիաէկրան ընդհատումները:"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Այլ կարգավորումներ"</string>
     <string name="notification_done" msgid="5279426047273930175">"Պատրաստ է"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածի ծանուցումների կառավարներ"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Այլ"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Տրոհված էկրանի բաժանիչ"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Տեղափոխել ներքև"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Տեղափոխել վերև"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Տեղափոխել ձախ"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Տեղափոխել աջ"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Ձախ էկրանը՝ լիաէկրան"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Ձախ էկրանը՝ 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Ձախ էկրանը՝ 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Ձախ էկրանը՝ 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Աջ էկրանը՝ լիաէկրան"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Վերևի էկրանը՝ լիաէկրան"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Վերևի էկրանը՝ 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Վերևի էկրանը՝ 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Վերևի էկրանը՝ 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Ներքևի էկրանը՝ լիաէկրան"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Դիրք <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>: Կրկնակի հպեք՝ փոխելու համար:"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>: Կրկնակի հպեք՝ ավելացնելու համար:"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Դիրք <xliff:g id="POSITION">%1$d</xliff:g>: Կրկնակի հպեք՝ ընտրելու համար:"</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> սալիկը հեռացվել է"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> սալիկը տեղափոխվել է դեպի <xliff:g id="POSITION">%2$d</xliff:g> դիրք"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Արագ կարգավորումների խմբագրիչ:"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Հավելվածը չի կարող աշխատել տրոհված էկրանի ռեժիմում:"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Հավելվածը չի աջակցում էկրանի տրոհումը:"</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Էջ <xliff:g id="ID_1">%1$d</xliff:g> / <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-hy-rAM/strings_tv.xml b/packages/SystemUI/res/values-hy-rAM/strings_tv.xml
index 5f9c127..e501677 100644
--- a/packages/SystemUI/res/values-hy-rAM/strings_tv.xml
+++ b/packages/SystemUI/res/values-hy-rAM/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Նվագարկել"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Դադարեցնել"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP-ն կառավարելու համար սեղմած պահեք "<b>"HOME"</b>" կոճակը"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP-ն կառավարելու համար սեղմեք և պահեք HOME կոճակը"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Պարզ է"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Փակել"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-in/strings.xml b/packages/SystemUI/res/values-in/strings.xml
index cab43c1..187de06 100644
--- a/packages/SystemUI/res/values-in/strings.xml
+++ b/packages/SystemUI/res/values-in/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Sinyal data penuh."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Tersambung ke <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Tersambung ke <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"Terhubung ke <xliff:g id="CAST">%s</xliff:g>."</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Tidak ada WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX satu batang."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX dua batang."</string>
@@ -148,12 +149,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Tidak ada SIM."</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"Data Seluler"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"Data Seluler Aktif"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Data Seluler Nonaktif"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Penambatan bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Mode pesawat."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Tidak ada kartu SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Jaringan operator berubah."</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"Membuka detail baterai"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Baterai <xliff:g id="NUMBER">%d</xliff:g> persen."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Mengisi daya baterai, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> persen."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Setelan sistem."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notifikasi."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Menghapus pemberitahuan."</string>
@@ -191,9 +196,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Status \"Jangan ganggu\" aktif, hanya untuk prioritas."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Fitur jangan ganggu aktif, senyap total."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Jangan ganggu aktif, hanya alarm."</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"Jangan ganggu."</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Status \"Jangan ganggu\" nonaktif."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Status \"Jangan ganggu\" dinonaktifkan."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Status \"Jangan ganggu\" diaktifkan."</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"Bluetooth."</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth nonaktif."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth aktif."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth menyambung."</string>
@@ -247,7 +254,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Sekarang layar dikunci dalam orientasi lanskap."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Sekarang layar dikunci dalam orientasi potret."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Etalase Hidangan Penutup"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Lamunan"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Screen saver"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Jangan ganggu"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Hanya untuk prioritas"</string>
@@ -259,6 +266,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Perangkat yang disandingkan tak tersedia"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Kecerahan"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotasi otomatis"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"Putar layar otomatis"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"Setel menjadi <xliff:g id="ID_1">%s</xliff:g>"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotasi terkunci"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Potret"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Lanskap"</string>
@@ -277,6 +286,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Tidak Tersambung"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Tidak Ada Jaringan"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi Mati"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"Wi-Fi Aktif"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Tidak ada jaringan Wi-Fi yang tersedia"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Transmisi"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Melakukan transmisi"</string>
@@ -311,8 +321,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Tidak dapat memulai <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> dinonaktifkan dalam mode aman."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Hapus semua"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Aplikasi ini tidak mendukung multijendela"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplikasi tidak mendukung multijendela"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplikasi tidak mendukung layar terpisah"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Seret ke sini untuk menggunakan layar terpisah"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Pisahkan Horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Pisahkan Vertikal"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Pisahkan Khusus"</string>
@@ -420,12 +430,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> adalah dialog volume"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Sentuh untuk memulihkan aslinya."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Anda menggunakan profil kerja"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Ketuk untuk menyuarakan."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Ketuk untuk menyetel agar bergetar. Layanan aksesibilitas mungkin dibisukan."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Ketuk untuk membisukan. Layanan aksesibilitas mungkin dibisukan."</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"Kontrol volume %s ditampilkan. Gesek ke atas untuk menutup."</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"Kontrol volume disembunyikan"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"Penyetel Antarmuka Pengguna Sistem"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Tampilkan persentase baterai yang tersemat"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"Tampilkan persentase tingkat baterai dalam ikon bilah status saat tidak mengisi daya"</string>
@@ -470,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"Blokir semua notifikasi"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Jangan bisukan"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Jangan bisukan atau blokir"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Tampilkan setelan lengkap nilai penting"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Diblokir"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Nilai penting min"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Tingkat kepentingan: rendah"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Tingkat kepentingan: normal"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Tingkat kepentingan: tinggi"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Tingkat kepentingan: darurat"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Jangan pernah tunjukkan notifikasi ini"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Tampilkan di bagian bawah daftar notifikasi tanpa suara"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Tampilkan notifikasi ini tanpa suara"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Izinkan notifikasi ini bersuara"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Muncul di layar dan izinkan suara"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Tampilkan di bagian atas daftar notifikasi, muncul di layar, dan izinkan suara"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Kontrol notifikasi daya"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Aktif"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Nonaktif"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Dengan kontrol notifikasi daya, Anda dapt menyetel level kepentingan notifikasi aplikasi dari 0 sampai 5. \n\n"<b>"Level 5"</b>" \n- Muncul di atas daftar notifikasi \n- Izinkan interupsi layar penuh \n- Selalu intip pesan \n\n"<b>"Level 4"</b>" \n- Jangan interupsi layar penuh \n- Selalu intip pesan \n\n"<b>"Level 3"</b>" \n- Jangan interupsi layar penuh \n- Tak pernah intip pesan \n\n"<b>"Level 2"</b>" \n- Jangan interupsi layar penuh \n- Tak pernah intip pesan \n- Tanpa suara dan getaran \n\n"<b>"Level 1"</b>" \n- Jangan interupsi layar penuh \n- Tak pernah intip pesan \n- Tanpa suara atau getaran \n- Sembunyikan dari layar kunci dan bilah status \n- Muncul di bawah daftar notifikasi \n\n"<b>"Level 0"</b>" \n- Blokir semua notifikasi dari aplikasi"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Level kepentingan: Otomatis"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Level kepentingan: Level 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Level kepentingan: Level 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Level kepentingan: Level 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Level kepentingan: Level 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Level kepentingan: Level 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Level kepentingan: Level 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Aplikasi menentukan level kepentingan setiap notifikasi."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Jangan pernah tampilkan notifikasi dari aplikasi ini."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Tak ada interupsi layar, intip pesan, suara, atau getar. Sembunyikan dari layar kunci &amp; bilah status."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Tidak ada interupsi layar penuh, intip pesan, suara, atau getar."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Tidak ada interupsi layar penuh atau intip pesan."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Selalu intip pesan. Tidak ada interupsi layar penuh."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Selalu intip pesan, dan izinkan interupsi layar penuh."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Setelan lainnya"</string>
     <string name="notification_done" msgid="5279426047273930175">"Selesai"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Kontrol notifikasi <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +611,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Lainnya"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Pembagi layar terpisah"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Turunkan"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Naikkan"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Pindahkan ke kiri"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Pindahkan ke kanan"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Layar penuh di kiri"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Kiri 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Kiri 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Kiri 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Layar penuh di kanan"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Layar penuh di atas"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Atas 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Atas 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Atas 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Layar penuh di bawah"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posisi <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Ketuk dua kali untuk mengedit."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Ketuk dua kali untuk menambahkan."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posisi <xliff:g id="POSITION">%1$d</xliff:g>. Ketuk dua kali untuk memilih."</string>
@@ -610,6 +630,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> dihapus"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> dpindahkan ke posisi <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor setelan cepat."</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"Notifikasi <xliff:g id="ID_1">%1$s</xliff:g>: <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Aplikasi mungkin tidak berfungsi dengan layar terpisah."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"App tidak mendukung layar terpisah."</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"Buka setelan."</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"Buka setelan cepat."</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"Tutup setelan cepat."</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"Alarm disetel."</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"Masuk sebagai <xliff:g id="ID_1">%s</xliff:g>"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"Tidak ada internet."</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"Buka detail."</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"Buka setelan <xliff:g id="ID_1">%s</xliff:g>."</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"Edit urutan setelan."</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Halaman <xliff:g id="ID_1">%1$d</xliff:g> dari <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-in/strings_tv.xml b/packages/SystemUI/res/values-in/strings_tv.xml
index 7de1a78..52ff144 100644
--- a/packages/SystemUI/res/values-in/strings_tv.xml
+++ b/packages/SystemUI/res/values-in/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"Putar"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Jeda"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Tahan "<b>"LAYAR UTAMA"</b>" untuk mengontrol PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Tekan dan tahan tombol LAYAR UTAMA untuk mengontrol PIP"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"Gambar-dalam-gambar"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"Tindakan ini terus menampilkan video hingga Anda memutar yang lain. Tekan dan tahan "<b>"HOME"</b>" untuk mengontrolnya."</string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Mengerti"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Tutup"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-is-rIS/strings.xml b/packages/SystemUI/res/values-is-rIS/strings.xml
index f67f4c1..636a2d9 100644
--- a/packages/SystemUI/res/values-is-rIS/strings.xml
+++ b/packages/SystemUI/res/values-is-rIS/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Fullur sendistyrkur gagnatengingar."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Tengt við <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Tengt við <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Engin WiMAX-tenging."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX: Eitt strik."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX: Tvö strik."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Ekkert SIM-kort."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Slökkt á farsímagögnum"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Tjóðrun með Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Flugstilling"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Ekkert SIM-kort."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Skipt um farsímakerfi."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"<xliff:g id="NUMBER">%d</xliff:g> prósent á rafhlöðu."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Rafhlaða í hleðslu, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> prósent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Kerfisstillingar."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Tilkynningar."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Hreinsa tilkynningu."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Kveikt á „Ónáðið ekki“, aðeins forgangur."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Kveikt á „Ónáðið ekki“, algjör þögn."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Kveikt á „Ónáðið ekki“, aðeins vekjarar."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Slökkt á „Ónáðið ekki“."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Slökkt á „Ónáðið ekki“."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Kveikt á „Ónáðið ekki“."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Slökkt á Bluetooth."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Kveikt á Bluetooth."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth tengist."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Skjárinn er nú læstur á langsniði."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Skjárinn er nú læstur á skammsniði."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Eftirréttaborð"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Skjávari"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Skjávari"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Ónáðið ekki"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Aðeins forgangur"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Engin pöruð tæki til staðar"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Birtustig"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Sjálfvirkur snúningur"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Snúningur læstur"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Skammsnið"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Langsnið"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Engin tenging"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Ekkert net"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Slökkt á Wi-Fi"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Engin Wi-Fi net í boði"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Útsending"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Sendir út"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Ekki var hægt að ræsa <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Slökkt er á <xliff:g id="APP">%s</xliff:g> í öruggri stillingu."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Hreinsa allt"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Þetta forrit styður ekki marga glugga"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Forritið styður ekki marga glugga"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Forritið styður ekki skjáskiptingu"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Dragðu hingað til að skipta skjánum"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Lárétt skipting"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Lóðrétt skipting"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Sérsniðin skipting"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> er hljóðstyrksvalmyndin"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Snertu til að færa í upprunalegt horf."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Þú ert að nota vinnusniðið"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Ýttu til að hætta að þagga."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Ýttu til að stilla á titring. Hugsanlega verður slökkt á hljóði aðgengisþjónustu."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Ýttu til að þagga. Hugsanlega verður slökkt á hljóði aðgengisþjónustu."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Fínstillingar kerfisviðmóts"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Sýna innfellda rafhlöðustöðu"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Loka á allar tilkynningar"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ekki þagga"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Hvorki þagga né útiloka"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Sýna stillingar fyrir mikilvægi"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Útilokuð"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Lítill forgangur"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Ekki svo mikilvægt"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Venjulegt mikilvægi"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Mjög mikilvægt"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Afar áríðandi"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Aldrei sýna þessar tilkynningar"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Sýna neðst á tilkynningalistanum án hljóðs"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Sýna þessar tilkynningar án hljóðs"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Leyfa þessum tilkynningum að spila hljóð"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Birta á skjánum og leyfa hljóð"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Sýna efst á tilkynningalistanum, birta á skjánum og leyfa hljóð"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Orkustillingar tilkynninga"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Kveikt"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Slökkt"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Með orkutilkynningastýringum geturðu stillt mikilvægi frá 0 upp í 5 fyrir tilkynningar forrita. \n\n"<b>"Stig 5"</b>" \n- Sýna efst á tilkynningalista \n- Leyfa truflun þegar birt er á öllum skjánum \n- Kíkja alltaf \n\n"<b>"Stig 4"</b>" \n- Hindra truflun við birtingu á öllum skjánum \n- Kíkja alltaf \n\n"<b>"Stig 3"</b>" \n- Hindra truflun við birtingu á öllum skjánum \n- Kíkja aldrei \n\n"<b>"Stig 2"</b>" \n- Hindra truflun við birtingu á öllum skjánum \n- Kíkja aldrei \n- Slökkva á hljóði og titringi \n\n"<b>"Stig 1"</b>" \n- Hindra truflun við birtingu á öllum skjánum \n- Kíkja aldrei \n- Slökkva á hljóði og titringi \n- Fela á lásskjá og stöðustiku \n- Sýna neðst á tilkynningalista \n\n"<b>"Stig 0"</b>" \n- Setja allar tilkynningar frá forriti á bannlista"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Mikilvægi: Sjálfvirkt"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Mikilvægi: Stig 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Mikilvægi: Stig 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Mikilvægi: Stig 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Mikilvægi: Stig 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Mikilvægi: Stig 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Mikilvægi: Stig 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Forrit ákvarðar mikilvægi hverrar tilkynningar fyrir sig."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Birta aldrei tilkynningar úr þessu forriti."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Ekki trufla, kíkja, spila hljóð eða nota titring. Fela á lásskjá og stöðustikunni."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Ekki trufla, kíkja, spila hljóð eða nota titring við birtingu á öllum skjánum."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Ekki trufla eða kíkja í birtingu á öllum skjánum."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Kíkja alltaf. Engar truflanir við birtingu á öllum skjánum."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Kíkja alltaf og leyfa truflanir við birtingu á öllum skjánum."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Fleiri stillingar"</string>
     <string name="notification_done" msgid="5279426047273930175">"Lokið"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Tilkynningastýringar <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Annað"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Skjáskipting"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Færa niður"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Færa upp"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Færa til vinstri"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Færa til hægri"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Vinstri á öllum skjánum"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Vinstri 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Vinstri 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Vinstri 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Hægri á öllum skjánum"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Efri á öllum skjánum"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Efri 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Efri 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Efri 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Neðri á öllum skjánum"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Staða <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Ýttu tvisvar til að breyta."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Ýttu tvisvar til að bæta við."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Staða <xliff:g id="POSITION">%1$d</xliff:g>. Ýttu tvisvar til að velja."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> var fjarlægð"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> færð í stöðu <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Flýtistillingaritill."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Hugsanlega virkar forritið ekki ef skjánum er skipt upp."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Forritið styður ekki að skjánum sé skipt."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Blaðsíða <xliff:g id="ID_1">%1$d</xliff:g> af <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-is-rIS/strings_tv.xml b/packages/SystemUI/res/values-is-rIS/strings_tv.xml
index 09c67ec..385a2bf 100644
--- a/packages/SystemUI/res/values-is-rIS/strings_tv.xml
+++ b/packages/SystemUI/res/values-is-rIS/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Spila"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Hlé"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Haltu "<b>"HOME"</b>"-hnappinum inni til að stjórna innfelldri mynd"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Haltu „Home“-hnappinum inni til að stjórna innfelldri mynd"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Ég skil"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Hunsa"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-it/strings.xml b/packages/SystemUI/res/values-it/strings.xml
index ea1bb00..58f79a9 100644
--- a/packages/SystemUI/res/values-it/strings.xml
+++ b/packages/SystemUI/res/values-it/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Massimo segnale dati."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Connesso a <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Connesso a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Nessun segnale WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX: una barra."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX: due barre."</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Nessuna SIM presente."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Rete dati disattivata"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Tethering Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Modalità aereo."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Nessuna SIM presente."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Cambio rete operatore."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Batteria: <xliff:g id="NUMBER">%d</xliff:g> percento."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Impostazioni di sistema."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notifiche."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Cancella notifica."</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\"Non disturbare\" attivo, solo con priorità."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Opzione \"Non disturbare\" attiva, silenzio totale."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\"Non disturbare\" attivo, solo sveglie."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\"Non disturbare\" non attivo."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\"Non disturbare\" non attivo."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\"Non disturbare\" attivo."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth non attivo."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth attivo."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Collegamento Bluetooth."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ora lo schermo è bloccato nell\'orientamento orizzontale."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ora lo schermo è bloccato nell\'orientamento verticale."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Vetrina di dolci"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Screensaver"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Non disturbare"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Solo con priorità"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Nessun dispositivo accoppiato disponibile"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Luminosità"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotazione automatica"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotazione bloccata"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Verticale"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Orizzontale"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Non connesso"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Nessuna rete"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi disattivato"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nessuna rete Wi-Fi disponibile"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Trasmetti"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"In trasmissione"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Impossibile avviare <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"L\'app <xliff:g id="APP">%s</xliff:g> è stata disattivata in modalità provvisoria."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Cancella tutto"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Questa app non supporta la modalità multi-finestra"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"L\'app non supporta la modalità multi-finestra"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"L\'app non supporta la modalità Schermo diviso"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Trascina qui per utilizzare la modalità Schermo diviso"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Divisione in orizzontale"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Divisione in verticale"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Divisione personalizzata"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> rappresenta la finestra di dialogo relativa al volume"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Tocca per ripristinare l\'originale."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Stai utilizzando il profilo di lavoro"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Tocca per riattivare l\'audio."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Tocca per attivare la vibrazione. L\'audio dei servizi di accessibilità può essere disattivato."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Tocca per disattivare l\'audio. L\'audio dei servizi di accessibilità può essere disattivato."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Sintetizzatore interfaccia utente di sistema"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Mostra percentuale batteria incorporata"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Blocca tutte le notifiche"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Non silenziare"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Non silenziare e non bloccare"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Mostra impostazioni di importanza complete"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloccata"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importanza minima"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Importanza scarsa"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importanza normale"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Importanza elevata"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Importanza urgente"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Non mostrare mai queste notifiche"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Mostra silenziosamente in fondo all\'elenco delle notifiche"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Mostra queste notifiche silenziosamente"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Attiva l\'audio per queste notifiche"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Visualizza sullo schermo e attiva l\'audio"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Mostra in cima all\'elenco delle notifiche, visualizza sullo schermo e attiva l\'audio"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Controlli di gestione delle notifiche"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"On"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Off"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"I controlli di gestione delle notifiche ti consentono di impostare un livello di importanza compreso tra 0 e 5 per le notifiche di un\'app. \n\n"<b>"Livello 5"</b>" \n- Mostra in cima all\'elenco di notifiche \n- Consenti l\'interruzione a schermo intero \n- Visualizza sempre \n\n"<b>"Livello 4"</b>" \n- Impedisci l\'interruzione a schermo intero \n- Visualizza sempre \n\n"<b>"Livello 3"</b>" \n- Impedisci l\'interruzione a schermo intero \n- Non visualizzare mai \n\n"<b>"Livello 2"</b>" \n- Impedisci l\'interruzione a schermo intero \n- Non visualizzare mai \n- Non emettere mai suoni e vibrazioni \n\n"<b>"Livello 1"</b>" \n- Impedisci l\'interruzione a schermo intero \n- Non visualizzare mai \n- Non emettere mai suoni e vibrazioni \n- Nascondi da schermata di blocco e barra di stato \n- Mostra in fondo all\'elenco di notifiche \n\n"<b>"Livello 0"</b>" \n- Blocca tutte le notifiche dell\'app"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importanza: automatica"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importanza: livello 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importanza: livello 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importanza: livello 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importanza: livello 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importanza: livello 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importanza: livello 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"L\'app stabilisce l\'importanza di ogni notifica."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Non mostrare mai le notifiche di questa app."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"No suoni, vibraz., visualizz. o interr. schermo intero. Nascondi da schermata blocco e barra stato."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Nessun suono, vibrazione, visualizzazione o interruzione a schermo intero."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Nessuna visualizzazione o interruzione a schermo intero."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Visualizza sempre. Nessuna interruzione a schermo intero."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Visualizza sempre e consenti l\'interruzione a schermo intero."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Altre impostazioni"</string>
     <string name="notification_done" msgid="5279426047273930175">"Fine"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Controlli di notifica per <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Altro"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Strumento per schermo diviso"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Sposta giù"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Sposta su"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Sposta a sinistra"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Sposta a destra"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Schermata sinistra a schermo intero"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Schermata sinistra al 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Schermata sinistra al 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Schermata sinistra al 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Schermata destra a schermo intero"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Schermata superiore a schermo intero"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Schermata superiore al 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Schermata superiore al 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Schermata superiore al 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Schermata inferiore a schermo intero"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posizione <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Tocca due volte per modificare."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Tocca due volte per aggiungere."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posizione <xliff:g id="POSITION">%1$d</xliff:g>. Tocca due volte per selezionare."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Il riquadro <xliff:g id="TILE_NAME">%1$s</xliff:g> è stato rimosso"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Il riquadro <xliff:g id="TILE_NAME">%1$s</xliff:g> è stato spostato nella posizione <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor di impostazioni rapide."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"L\'app potrebbe non funzionare con lo schermo diviso."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"L\'app non supporta la modalità Schermo diviso."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Pagina <xliff:g id="ID_1">%1$d</xliff:g> di <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-it/strings_tv.xml b/packages/SystemUI/res/values-it/strings_tv.xml
index 4ea019b..954d4ff 100644
--- a/packages/SystemUI/res/values-it/strings_tv.xml
+++ b/packages/SystemUI/res/values-it/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Riproduci"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pausa"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Tieni premuto "<b>"HOME"</b>" per controllare PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Tieni premuto il pulsante HOME per controllare PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Ignora"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-iw/strings.xml b/packages/SystemUI/res/values-iw/strings.xml
index 88bfafc..0e8b4c0 100644
--- a/packages/SystemUI/res/values-iw/strings.xml
+++ b/packages/SystemUI/res/values-iw/strings.xml
@@ -57,7 +57,7 @@
     <string name="usb_accessory_permission_prompt" msgid="5171775411178865750">"‏לאפשר לאפליקציה <xliff:g id="APPLICATION">%1$s</xliff:g> גישה לאביזר ה-USB?"</string>
     <string name="usb_device_confirm_prompt" msgid="5161205258635253206">"‏האם לפתוח את <xliff:g id="ACTIVITY">%1$s</xliff:g> כאשר מכשיר USB זה מחובר?"</string>
     <string name="usb_accessory_confirm_prompt" msgid="3808984931830229888">"‏האם לפתוח את <xliff:g id="ACTIVITY">%1$s</xliff:g> כאשר אביזר USB זה מחובר?"</string>
-    <string name="usb_accessory_uri_prompt" msgid="513450621413733343">"‏אין אפליקציות מותקנות הפועלות עם אביזר ה-USB. למידע נוסף על אביזר זה בקר בכתובת <xliff:g id="URL">%1$s</xliff:g>"</string>
+    <string name="usb_accessory_uri_prompt" msgid="513450621413733343">"‏אין אפליקציות מותקנות הפועלות עם אביזר ה-USB. למידע נוסף על אביזר זה היכנס לכתובת <xliff:g id="URL">%1$s</xliff:g>"</string>
     <string name="title_usb_accessory" msgid="4966265263465181372">"‏אביזר USB"</string>
     <string name="label_view" msgid="6304565553218192990">"הצג"</string>
     <string name="always_use_device" msgid="1450287437017315906">"‏השתמש כברירת מחדל עבור מכשיר USB זה"</string>
@@ -120,6 +120,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"אות הנתונים מלא."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"מחובר אל <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"מחובר אל <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"‏ללא WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"‏פס אחד של WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"‏שני פסים של WiMAX."</string>
@@ -150,12 +152,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"קצה"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"‏אין כרטיס SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"הנתונים הסלולריים כבויים"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"‏שיתוף אינטרנט דרך Bluetooth"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"מצב טיסה"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"‏אין כרטיס SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"רשת ספק משתנה."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"<xliff:g id="NUMBER">%d</xliff:g> אחוזים של סוללה."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"טעינת סוללה, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> אחוז."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"הגדרות מערכת"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"התראות"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"נקה התראה"</string>
@@ -193,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\'נא לא להפריע\' פועל. הודעות בעדיפות בלבד."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"\'נא לא להפריע\' פועל. שקט מוחלט."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\'נא לא להפריע\' הופעל. התראות בלבד."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\'נא לא להפריע\' כבוי."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\'נא לא להפריע\' כבוי."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\'נא לא להפריע\' פועל."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"‏Bluetooth כבוי."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"‏Bluetooth מופעל."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"‏Bluetooth מתחבר."</string>
@@ -249,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"המסך נעול כעת לרוחב."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"המסך נעול כעת לאורך."</string>
     <string name="dessert_case" msgid="1295161776223959221">"מזנון קינוחים"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"חלום בהקיץ"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"שומר מסך"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"נא לא להפריע"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"עדיפות בלבד"</string>
@@ -261,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"אין מכשירים מותאמים זמינים"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"בהירות"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"סיבוב אוטומטי"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"סיבוב נעול"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"לאורך"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"לרוחב"</string>
@@ -279,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"לא מחובר"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"אין רשת"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"‏Wi-Fi כבוי"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"‏אין רשתות Wi-Fi זמינות"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Cast"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"מעביר"</string>
@@ -313,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"לא ניתן היה להפעיל את <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> מושבת במצב בטוח."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"נקה הכל"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"אפליקציה זו אינה תומכת בריבוי חלונות"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"האפליקציה אינה תומכת בריבוי חלונות"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"האפליקציה אינה תומכת במסך מפוצל"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"גרור לכאן כדי להשתמש במסך מפוצל"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"פיצול אופקי"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"פיצול אנכי"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"פיצול מותאם אישית"</string>
@@ -422,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> הוא תיבת הדו-שיח של עוצמת הקול"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"גע כדי לשחזר את עוצמת הקול המקורית."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"אתה משתמש בפרופיל העבודה שלך"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"‏%1$s. הקש כדי לבטל את ההשתקה."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"‏%1$s. הקש כדי להגדיר רטט. ייתכן ששירותי הנגישות מושתקים."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"‏%1$s. הקש כדי להשתיק. ייתכן ששירותי הנגישות מושתקים."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"הצג בשורת הסטטוס את אחוז עוצמת הסוללה"</string>
@@ -472,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"חסום את כל ההודעות"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"לא להשתיק"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"לא להשתיק או לחסום"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"הצג את הגדרות החשיבות במלואן"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"חסום"</string>
-    <string name="min_importance" msgid="1901894910809414782">"חשיבות מינימלית"</string>
-    <string name="low_importance" msgid="4109929986107147930">"חשיבות נמוכה"</string>
-    <string name="default_importance" msgid="8192107689995742653">"חשיבות רגילה"</string>
-    <string name="high_importance" msgid="1527066195614050263">"חשיבות גבוהה"</string>
-    <string name="max_importance" msgid="5089005872719563894">"חשיבות דחופה"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"לעולם אל תציג את ההודעות האלה"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"הצג בסוף רשימת ההודעות בלי להשמיע צליל"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"הצג את ההודעות האלה בלי להשמיע צליל"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"אשר להודעות אלה להשמיע צליל"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"הצג לרגע על גבי המסך ואשר השמעת צליל"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"הצג בראש רשימת ההודעות, הצג לרגע על גבי המסך ואשר השמעת צליל"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"פקדים של הודעות הפעלה"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"פועל"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"כבוי"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"בעזרת פקדים של הודעות הפעלה, תוכל להגדיר רמת חשיבות מ-0 עד 5 להודעות אפליקציה. \n\n"<b>"רמה 5"</b>" \n- הצג בראש רשימת ההודעות \n- אפשר הפרעה במסך מלא \n- תמיד אפשר הצצה \n\n"<b>"רמה 4"</b>" \n- מנע הפרעה במסך מלא \n- תמיד אפשר הצצה \n\n"<b>"רמה 3"</b>" \n- מנע הפרעה במסך מלא \n- אף פעם אל תאפשר הצצה \n\n"<b>"רמה 2"</b>" \n- מנע הפרעה במסך מלא \n- אף פעם אל תאפשר הצצה \n- אף פעם אל תאפשר קול ורטט \n\n"<b>"רמה 1"</b>" \n- מנע הפרעה במסך מלא \n- אף פעם אל תאפשר הצצה \n- אף פעם אל תאפשר קול ורטט \n- הסתר ממסך הנעילה ומשורת הסטטוס \n- הצג בתחתית רשימת ההודעות \n\n"<b>"רמה 0"</b>" \n- חסום את כל ההודעות מהאפליקציה"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"חשיבות: אוטומטית"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"חשיבות: רמה 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"חשיבות: רמה 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"חשיבות: רמה 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"חשיבות: רמה 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"חשיבות: רמה 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"חשיבות: רמה 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"האפליקציה קובעת חשיבות לכל הודעה."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"לעולם אל תציג הודעות מהאפליקציה הזו."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"ללא הפרעה, הצצה, קול או רטט במסך מלא. הסתר ממסך הנעילה ומשורת הסטטוס."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"ללא הפרעה, הצצה, קול או רטט במסך מלא."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"ללא הפרעה או הצצה במסך מלא."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"תמיד אפשר הצצה. ללא הפרעה במסך מלא."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"תמיד אפשר הצצה, ואפשר הפרעה במסך מלא."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"הגדרות נוספות"</string>
     <string name="notification_done" msgid="5279426047273930175">"סיום"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> פקדי הודעות"</string>
@@ -599,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"אחר"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"מחלק מסך מפוצל"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"הזז למטה"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"הזז למעלה"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"הזז שמאלה"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"הזז ימינה"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"מסך שמאלי מלא"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"שמאלה 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"שמאלה 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"שמאלה 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"מסך ימני מלא"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"מסך עליון מלא"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"עליון 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"עליון 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"עליון 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"מסך תחתון מלא"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"מיקום <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. הקש פעמיים כדי לערוך."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. הקש פעמיים כדי להוסיף."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"מיקום <xliff:g id="POSITION">%1$d</xliff:g>. הקש פעמיים כדי לבחור."</string>
@@ -612,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> הוסר"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> הועבר למיקום <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"עורך הגדרות מהירות."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"ייתכן שהיישום לא יפעל עם מסך מפוצל."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"האפליקציה אינה תומכת במסך מפוצל."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"דף <xliff:g id="ID_1">%1$d</xliff:g> מתוך <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-iw/strings_tv.xml b/packages/SystemUI/res/values-iw/strings_tv.xml
index 9130d53..738bd4d 100644
--- a/packages/SystemUI/res/values-iw/strings_tv.xml
+++ b/packages/SystemUI/res/values-iw/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"הפעל"</string>
     <string name="pip_pause" msgid="8412075640017218862">"השהה"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"‏לחץ לחיצה ארוכה על "<b>"דף הבית"</b>" כדי לשלוט ב-PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"‏לחץ לחיצה ממושכת על לחצן דף הבית כדי לשלוט ב-PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"הבנתי"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"דחה"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ja/strings.xml b/packages/SystemUI/res/values-ja/strings.xml
index 04a392c..7a25aed 100644
--- a/packages/SystemUI/res/values-ja/strings.xml
+++ b/packages/SystemUI/res/values-ja/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"データ信号:フル"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g>に接続しました。"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g>に接続しました。"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX電波状態:圏外"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX電波状態:レベル1"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX電波状態:レベル2"</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIMがありません。"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"モバイルデータ OFF"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetoothテザリング。"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"機内モード。"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIMカードが挿入されていません。"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"携帯通信会社のネットワークを変更します。"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"電池残量: <xliff:g id="NUMBER">%d</xliff:g>パーセント"</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"システム設定。"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"通知。"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"通知を消去。"</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"[通知を非表示]はONで、優先する通知のみです。"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"[通知を非表示]はONで、サイレントです。"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"[通知を非表示]はONで、アラームのみです。"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"[通知を非表示]はOFFです。"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"[通知を非表示]をOFFにしました。"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"[通知を非表示]をONにしました。"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"BluetoothがOFFです。"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"BluetoothがONです。"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetoothに接続しています。"</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"画面を横向きにロックしました。"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"画面を縦向きにロックしました。"</string>
     <string name="dessert_case" msgid="1295161776223959221">"デザートケース"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"スクリーンセーバー"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"スクリーン セーバー"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"イーサネット"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"通知を非表示"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"優先する通知のみ"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"ペア設定されたデバイスがありません"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"画面の明るさ"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"自動回転"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"画面の向きをロック"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"縦向き"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"横向き"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"接続されていません"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"ネットワークなし"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi OFF"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Wi-Fiネットワークを利用できません"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"キャスト"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"キャストしています"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g>を開始できません。"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"「<xliff:g id="APP">%s</xliff:g>」はセーフモードでは無効になります。"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"すべて消去"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"このアプリはマルチウィンドウに対応していません"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"アプリはマルチウィンドウに対応していません"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"アプリで分割画面がサポートされていません"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"分割画面を使用するにはここにドラッグします"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"横に分割"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"縦に分割"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"分割（カスタム）"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g>を音量ダイアログとして使用"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"タップすると元の音量ダイアログが復元されます。"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"仕事用プロファイルを使用しています"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s。タップしてミュートを解除します。"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s。タップしてバイブレーションに設定します。ユーザー補助機能サービスがミュートされる場合があります。"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s。タップしてミュートします。ユーザー補助機能サービスがミュートされる場合があります。"</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"システムUI調整ツール"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"内蔵電池の残量の割合を表示する"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"通知をすべてブロックする"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"音声で知らせる"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"音声で知らせる / ブロックしない"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"重要度の設定をすべて表示"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"ブロック中"</string>
-    <string name="min_importance" msgid="1901894910809414782">"重要度: 最低"</string>
-    <string name="low_importance" msgid="4109929986107147930">"重要度: 低"</string>
-    <string name="default_importance" msgid="8192107689995742653">"重要度: 中"</string>
-    <string name="high_importance" msgid="1527066195614050263">"重要度: 高"</string>
-    <string name="max_importance" msgid="5089005872719563894">"重要度: 緊急"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"今後はこの通知を表示しない"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"通知リストの末尾にマナーモードで表示する"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"この通知をマナーモードで表示する"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"通知を音声で知らせる"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"画面に数秒間表示し、音声でも知らせる"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"通知リストの先頭に表示し、画面に数秒間表示し、音声でも知らせる"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"電源通知管理"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"ON"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"OFF"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"電源通知管理では、アプリの通知の重要度をレベル 0～5 で設定できます。\n\n"<b>"レベル 5"</b>" \n- 通知リストの一番上に表示する \n- 全画面表示を許可する \n- 常にポップアップする \n\n"<b>"レベル 4"</b>" \n- 全画面表示しない \n- 常にポップアップする \n\n"<b>"レベル 3"</b>" \n- 全画面表示しない \n- ポップアップしない \n\n"<b>"レベル 2"</b>" \n- 全画面表示しない \n- ポップアップしない \n- 音やバイブレーションを使用しない \n\n"<b>"レベル 1"</b>" \n- 全画面表示しない \n- ポップアップしない \n- 音やバイブレーションを使用しない \n- ロック画面やステータスバーに表示しない \n- 通知リストの一番下に表示する \n\n"<b>"レベル 0"</b>" \n- アプリからのすべての通知をブロックする"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"重要度: 自動"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"重要度: レベル 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"重要度: レベル 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"重要度: レベル 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"重要度: レベル 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"重要度: レベル 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"重要度: レベル 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"アプリが通知ごとに重要度を識別する"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"このアプリからの通知を表示しない"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"全画面表示、ポップアップ、音、バイブレーションを使用しない。ロック画面やステータスバーにも表示しない"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"全画面表示、ポップアップ、音、バイブレーションを使用しない"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"全画面表示やポップアップを使用しない"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"常にポップアップし、全画面表示はしない"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"常にポップアップし、全画面表示も許可する"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"詳細設定"</string>
     <string name="notification_done" msgid="5279426047273930175">"完了"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」の通知の管理"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"その他"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"分割画面の分割線"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"下に移動"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"上に移動"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"左に移動"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"右に移動"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"左全画面"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"左 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"左 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"左 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"右全画面"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"上部全画面"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"上 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"上 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"上 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"下部全画面"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"ポジション <xliff:g id="POSITION">%1$d</xliff:g> の <xliff:g id="TILE_NAME">%2$s</xliff:g> を編集するにはダブルタップします。"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g> を追加するにはダブルタップします。"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"ポジション <xliff:g id="POSITION">%1$d</xliff:g> に配置します。選択するにはダブルタップします。"</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> を削除しました"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> をポジション <xliff:g id="POSITION">%2$d</xliff:g> に移動しました"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"クイック設定エディタ"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"アプリは分割画面では動作しないことがあります。"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"アプリで分割画面がサポートされていません。"</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"ページ <xliff:g id="ID_1">%1$d</xliff:g>/<xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ja/strings_tv.xml b/packages/SystemUI/res/values-ja/strings_tv.xml
index 0f0032f..210c15d 100644
--- a/packages/SystemUI/res/values-ja/strings_tv.xml
+++ b/packages/SystemUI/res/values-ja/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"再生"</string>
     <string name="pip_pause" msgid="8412075640017218862">"一時停止"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP を管理するには ["<b>"ホーム"</b>"] を押し続けます"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP を管理するには [ホーム] ボタンを押し続けます"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"閉じる"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"閉じる"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ka-rGE/strings.xml b/packages/SystemUI/res/values-ka-rGE/strings.xml
index fbd97f0..eb96b10 100644
--- a/packages/SystemUI/res/values-ka-rGE/strings.xml
+++ b/packages/SystemUI/res/values-ka-rGE/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"მონაცემთა გადაცემის საიმედო სიგნალი."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"დაკავშირებულია <xliff:g id="WIFI">%s</xliff:g>-თან."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"დაკავშირებულია <xliff:g id="BLUETOOTH">%s</xliff:g>-თან."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX არ არის."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX ერთი სვეტი."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX-ის ორი ზოლი."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM არ არის."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"მობილური ინტერნეტი გამორთულია"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth-ის ჩართვა"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"თვითმფრინავის რეჟიმი"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM ბარათი არ არის."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"ოპერატორის ქსელის შეცვლა"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"ბატარეა: <xliff:g id="NUMBER">%d</xliff:g> პროცენტი."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"ბატარეა იტენება, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> პროცენტი."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"სისტემის პარამეტრები."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"შეტყობინებები"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"შეტყობინებების გასუფთავება."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"ჩართულია რეჟიმი „არ შემაწუხოთ\", მხოლოდ პრიორიტეტები."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"„ნუ შემაწუხებთ“ ჩართულია, სრული სიჩუმე."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"„ნუ შემაწუხებთ“ ჩართულია, მხოლოდ გაფრთხილებები."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"„არ შემაწუხოთ“ გამორთულია"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"„არ შემაწუხოთ\" რეჟიმი გამორთულია."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"„არ შემაწუხოთ\" რეჟიმი ჩართულია."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth გამორთულია."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth ჩართულია."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"მიმდინარეობს Bluetooth-თან დაკავშირება."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"ეკრანი ამჟამად ჩაკეტილია ლანდშაფტის ორიენტაციაზე."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"ეკრანი ამჟამად ჩაკეტილია პორტრეტის ორიენტაციაზე."</string>
     <string name="dessert_case" msgid="1295161776223959221">"სადესერტო ყუთი"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"ეკრანმზოგი"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ეთერნეტი"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"არ შემაწუხოთ"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"მხოლოდ პრიორიტეტული"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"დაწყვილებული მოწყობილობები მიუწვდომელია"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"სიკაშკაშე"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"ავტოროტაცია"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"როტაცია ჩაკეტილია"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"პორტრეტი"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"პეიზაჟის რეჟიმი"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"არ არის დაკავშირებული."</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"ქსელი არ არის"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi გამორთულია"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Wi-Fi ქსელები მიუწვდომელია"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"ტრანსლირება"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"გადაიცემა"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g>-ის გამოძახება ვერ მოხერხდა."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> გათიშულია უსაფრთხო რეჟიმში."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"ყველას გასუფთავება"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"მრავალი ფანჯრის რეჟიმი არ არის მხარდაჭერილი ამ აპის მიერ"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"მრავალი ფანჯრის რეჟიმი არ არის მხარდაჭერილი აპის მიერ"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"ეკრანის გაყოფა არ არის მხარდაჭერილი აპის მიერ"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"ეკრანის გასაყოფად, ჩავლებით გადმოიტანეთ აქ"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"ჰორიზონტალური გაყოფა"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"ვერტიკალური გაყოფა"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"ინდივიდუალური გაყობა"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> ხმოვან დიალოგშია"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"ორიგინალის აღდგენისათვის, შეეხეთ."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"თქვენ სამსახურის პროფილს იყენებთ"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. შეეხეთ დადუმების გასაუქმებლად."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. შეეხეთ ვიბრაციაზე დასაყენებლად. შეიძლება დადუმდეს მარტივი წვდომის სერვისებიც."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. შეეხეთ დასადუმებლად. შეიძლება დადუმდეს მარტივი წვდომის სერვისებიც."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"სისტემის UI ტუნერი"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"ჩამაგრებული ბატარეის პროცენტის ჩვენება"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"ყველა შეტყობინების დაბლოკვა"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"არ გაჩუმდეს"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"არ გაჩუმდეს ან დაიბლოკოს"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"მნიშვნელობის დონის სრული პარამეტრების ჩვენება"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"დაბლოკილი"</string>
-    <string name="min_importance" msgid="1901894910809414782">"მინიმალური"</string>
-    <string name="low_importance" msgid="4109929986107147930">"დაბალი პრიორიტეტი"</string>
-    <string name="default_importance" msgid="8192107689995742653">"ჩვეულებრივი პრიორიტეტი"</string>
-    <string name="high_importance" msgid="1527066195614050263">"მაღალი პრიორიტეტი"</string>
-    <string name="max_importance" msgid="5089005872719563894">"გადაუდებელი"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"ამ შეტყობინებების ჩვენების შეწყვეტა"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"შეტყობინებების სიის ბოლოში, უხმოდ ჩვენება"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"ამ შეტყობინებების უხმოდ ჩვენება"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"ამ შეტყობინებებისთვის ხმის გამოცემის დაშვება"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"შეტყობინებების პირდაპირ ეკრანზე ჩვენება და ხმის დაშვება"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"შეტყობინებების სიის თავში ჩვენება, პირდაპირ ეკრანზე გამოჩენა და ხმის დაშვება"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"შეტყობინებების მართვის საშუალებები"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"ჩართული"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"გამორთული"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"შეტყობინებების მართვის საშუალებების მეშვეობით, შეგიძლიათ განსაზღვროთ აპის შეტყობინებების მნიშვნელობის დონე 0-დან 5-მდე დიაპაზონში. \n\n"<b>"დონე 5"</b>" \n— შეტყობინებათა სიის თავში ჩვენება \n— სრულეკრანიანი რეჟიმის შეფერხების დაშვება \n— ეკრანზე ყოველთვის გამოჩენა \n\n"<b>"დონე 4"</b>" \n— სრულეკრანიანი რეჟიმის შეფერხების აღკვეთა \n— ეკრანზე ყოველთვის გამოჩენა \n\n"<b>"დონე 3"</b>" \n— სრულეკრანიანი რეჟიმის შეფერხების აღკვეთა \n— ეკრანზე გამოჩენის აღკვეთა \n\n"<b>"დონე 2"</b>" \n— სრულეკრანიანი რეჟიმის შეფერხების აღკვეთა \n— ეკრანზე გამოჩენის აღკვეთა \n— ხმისა და ვიბრაციის აღკვეთა \n\n"<b>"დონე 1"</b>" \n— სრულეკრანიანი რეჟიმის შეფერხების აღკვეთა \n— ეკრანზე გამოჩენის აღკვეთა \n— ხმისა და ვიბრაციის აღკვეთა \n— ჩაკეტილი ეკრანიდან და სტატუსის ზოლიდან დამალვა \n— შეტყობინებათა სიის ბოლოში ჩვენება \n\n"<b>"დონე 0"</b>" \n— აპის ყველა შეტყობინების დაბლოკვა"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"მნიშვნელოვნობა: ავტომატური"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"მნიშვნელოვნობა: დონე 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"მნიშვნელოვნობა: დონე 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"მნიშვნელოვნობა: დონე 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"მნიშვნელოვნობა: დონე 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"მნიშვნელოვნობა: დონე 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"მნიშვნელოვნობა: დონე 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"თითოეული შეტყობინების მნიშვნელობის დონე აპის მიერ განისაზღვრება."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"ამ აპისთვის შეტყობინებების ჩვენების აღკვეთა."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"სრულეკრანიანი რეჟიმის შეფერხების, ეკრანზე გამოჩენის, ხმისა და ვიბრაციის გარეშე. ჩაკეტილი ეკრანიდან და სტატუსის ზოლიდან დამალვა."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"სრულეკრანიანი რეჟიმის შეფერხების, ეკრანზე გამოჩენის, ხმისა და ვიბრაციის გარეშე."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"სრულეკრანიანი რეჟიმის შეფერხებისა და ეკრანზე გამოჩენის გარეშე."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"ეკრანზე ყოველთვის გამოჩენა, სრულეკრანიანი რეჟიმის შეფერხების გარეშე."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"ეკრანზე ყოველთვის გამოჩენა, სრულეკრანიანი რეჟიმის შეფერხების დაშვებით."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"დამატებითი პარამეტრები"</string>
     <string name="notification_done" msgid="5279426047273930175">"მზადაა"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> შეტყობინებების მართვის საშუალებები"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"სხვა"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"გაყოფილი ეკრანის რეჟიმის გამყოფი"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"ქვემოთ გადატანა"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"ზემოთ გადატანა"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"მარცხნივ გადატანა"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"მარჯვნივ გადატანა"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"მარცხენა ნაწილის სრულ ეკრანზე გაშლა"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"მარცხენა ეკრანი — 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"მარცხენა ეკრანი — 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"მარცხენა ეკრანი — 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"მარჯვენა ნაწილის სრულ ეკრანზე გაშლა"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"ზედა ნაწილის სრულ ეკრანზე გაშლა"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"ზედა ეკრანი — 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"ზედა ეკრანი — 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"ზედა ეკრანი — 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"ქვედა ნაწილის სრულ ეკრანზე გაშლა"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"პოზიცია <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. რედაქტირებისთვის, შეეხეთ ორმაგად."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. დასამატებლად, შეეხეთ ორმაგად."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"პოზიცია <xliff:g id="POSITION">%1$d</xliff:g>. ასარჩევად, შეეხეთ ორმაგად."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ამოიშალა"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> გადატანილია პოზიციაზე <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"სწრაფი პარამეტრების რედაქტორი."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"აპმა შეიძლება არ იმუშაოს გაყოფილი ეკრანის რეჟიმში."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"ეკრანის გაყოფა არ არის მხარდაჭერილი აპის მიერ."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"გვერდი <xliff:g id="ID_1">%1$d</xliff:g> / <xliff:g id="ID_2">%2$d</xliff:g>-დან"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ka-rGE/strings_tv.xml b/packages/SystemUI/res/values-ka-rGE/strings_tv.xml
index 7d615ba..752cf37 100644
--- a/packages/SystemUI/res/values-ka-rGE/strings_tv.xml
+++ b/packages/SystemUI/res/values-ka-rGE/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"დაკვრა"</string>
     <string name="pip_pause" msgid="8412075640017218862">"პაუზა"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP-ის სამართავად, გეჭიროთ "<b>"მთავარ ღილაკზე"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP-ის სამართავად, ხანგრძლივად დააჭირეთ მთავარ ღილაკს"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"გასაგებია"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"დახურვა"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-kk-rKZ/strings.xml b/packages/SystemUI/res/values-kk-rKZ/strings.xml
index 4bc585a..bb1ea16 100644
--- a/packages/SystemUI/res/values-kk-rKZ/strings.xml
+++ b/packages/SystemUI/res/values-kk-rKZ/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Дерекқор сигналы толы."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> қосылған."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> қосылған."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX сигналы жоқ."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX бір жолақ."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX екі жолақ."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE (ұялы байланыстар жүйесіне арналған жетілдірілген деректер шамалары)"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM жоқ."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Ұялы дерек өшірулі"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth тетеринг."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Ұшақ режимі."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM картасы жоқ."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Оператор желісі өзгертілуде."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Батарея <xliff:g id="NUMBER">%d</xliff:g> пайыз."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Батарея зарядталуда, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> пайыз."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Жүйе параметрлері."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Хабарлар."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Хабарларды өшіру."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Мазаламау режимі қосулы, тек басымдық"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Мазаламау режимі қосулы, толық тыныштық."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Кедергі жасамаңыз, тек дабылдар."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Мазаламау режимі өшірулі"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Мазаламау режимі өшірілді."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Мазаламау режимі қосылды."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth өшірулі."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth қосулы."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth қосылуда."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Экран енді альбомдық бағдарда бекітілді."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Экран енді портреттік бағдарда бекітілді."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Десерт жағдайы"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Қалғу"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Экран қорғағыш"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Этернет"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Мазаламау"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Маңыздылары ғана"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Жұптасқан құрылғылар жоқ"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Жарықтығы"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Автоматты түрде бұру"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Бұру бекітілген"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Портрет"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Пейзаж"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Жалғанбаған"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Желі жоқ"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi өшірулі"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Қолжетімді Wi-Fi желілері жоқ"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Трансляциялау"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Трансляциялануда"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> іске қосу мүмкін болмады."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> қауіпсіз режимде өшіріледі."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Барлығын тазалау"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Бұл қолданба көп терезені қолдамайды"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Қолданба көп терезені қолдамайды"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Қолданба бөлінген экранды қолдамайды"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Бөлінген экранды пайдалану үшін осында сүйреңіз"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Бөлінген көлденең"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Бөлінген тік"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Бөлінген теңшелетін"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> — көлем диалогтық терезесі"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Түпнұсқаны қалпына келтіру үшін түртіңіз."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Сіз жұмыс профиліңізді пайдаланып жатырсыз"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Дыбысын қосу үшін түртіңіз."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Діріл режимін орнату үшін түртіңіз. Арнайы мүмкіндік қызметтерінің дыбысы өшуі мүмкін."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Дыбысын өшіру үшін түртіңіз. Арнайы мүмкіндік қызметтерінің дыбысы өшуі мүмкін."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Жүйелік пайдаланушылық интерфейс тюнері"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Ендірілген батарея пайыздық шамасын көрсету"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Барлық хабарландыруларды бұғаттау"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Үнін өшірмеу"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Үнін өшірмеу немесе бұғаттамау"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Толық маңыздылық параметрлерін көрсету"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Бөгелген"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Ең аз маңыздылық"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Төмен маңыздылық"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Қалыпты маңыздылық"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Жоғары маңыздылық"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Шұғыл маңыздылық"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Осы хабарландыруларды ешқашан көрсетпеу"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Хабарландырулар тізімнің төменгі жағында үнсіз көрсету"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Осы хабарландыруларды үнсіз көрсету"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Осы хабарландыруға дыбыстар шығаруға рұқсат ету"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Экранда көрсету және дыбыс шығаруға рұқсат ету"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Хабарландырулар тізімінің жоғарғы жағында көрсету, экранда көрсету және дыбысқа рұқсат ету"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Қуат хабарландыруының басқару элементтері"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Қосулы"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Өшірулі"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Қуат хабарландыруының басқару элементтерімен қолданбаның хабарландырулары үшін 0-ден бастап 5-ке дейін маңыздылық деңгейін орнатуға болады. \n\n"<b>"5-деңгей"</b>" \n- Хабарландыру тізімінің ең басында көрсету \n- Толық экранға ашылуын рұқсат ету \n- Әрдайым қалқымалы хабарландыру түрінде көрсету \n\n"<b>"4-деңгей"</b>" \n- Толық экранға шығармау \n- Әрдайым қалқымалы хабарландыру түрінде көрсету \n\n"<b>"3-деңгей"</b>" \n- Толық экранға шығармау \n- Ешқашан қалқымалы хабарландыру түрінде көрсетпеу \n\n"<b>"2-деңгей"</b>" \n- Толық экранға шығармау \n- Ешқашан қалқымалы хабарландыру түрінде көрсетпеу \n- Ешқашан дыбыс және діріл шығармау \n\n"<b>"1-деңгей"</b>" \n- Толық экранға шығармау \n- Ешқашан қалқымалы хабарландыру түрінде көрсетпеу \n- Ешқашан дыбыс немесе діріл шығармау \n- Құлыпталған экраннан және күйін көрсету жолағынан жасыру \n- Хабарландыру тізімінің ең астында көрсету \n\n"<b>"0-деңгей"</b>" \n- Қолданбадағы барлық хабарландыруларға тыйым салу"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Маңыздылығы: Автоматты"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Маңыздылығы: 0-деңгей"</string>
+    <string name="min_importance" msgid="560779348928574878">"Маңыздылығы: 1-деңгей"</string>
+    <string name="low_importance" msgid="7571498511534140">"Маңыздылығы: 2-деңгей"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Маңыздылығы: 3-деңгей"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Маңыздылығы: 4-деңгей"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Маңыздылығы: 5-деңгей"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Қолданба әрбір хабарландырудың маңыздылығын анықтайды."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Осы қолданбадан келген хабарландыруларды ешқашан көрсетпеу"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Экранды толық алатын, қалқымалы хабарландыруларды көрсетпеу, дыбыс және діріл шығармау. Құлыпталған экраннан және күйін көрсету жолағынан жасыру."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Экранды толық алатын, қалқымалы хабарландыруларды көрсетпеу, дыбыс және діріл шығармау."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Экранды толық алатын немесе қалқымалы хабарландыруларды көрсетпеу."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Әрдайым қалқымалы хабарландыруларды көрсету, бірақ толық экранға шығармау."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Әрдайым қалқымалы және экранды толық алатын хабарландыруларға рұқсат ету."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Қосымша параметрлер"</string>
     <string name="notification_done" msgid="5279426047273930175">"Дайын"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> хабарландыруларды басқару элементтері"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Басқа"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Бөлінген экран бөлгіші"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Төмен қарай жылжыту"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Жоғары қарай жылжыту"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Солға жылжыту"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Оңға жылжыту"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Сол жағын толық экранға шығару"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"70% сол жақта"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"50% сол жақта"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"30% сол жақта"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Оң жағын толық экранға шығару"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Жоғарғы жағын толық экранға шығару"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"70% жоғарғы жақта"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"50% жоғарғы жақта"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"30% жоғарғы жақта"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Төменгісін толық экранға шығару"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g> орны, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Өңдеу үшін екі рет түртіңіз."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Қосу үшін екі рет түртіңіз."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g> орны. Таңдау үшін екі рет түртіңіз."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> жойылды"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> <xliff:g id="POSITION">%2$d</xliff:g> орнына жылжытылды"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Жылдам параметрлер өңдегіші."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Қолданба бөлінген экранда жұмыс істемеуі мүмкін."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Қодланба бөлінген экранды қолдамайды."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g> ішінен <xliff:g id="ID_1">%1$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-kk-rKZ/strings_tv.xml b/packages/SystemUI/res/values-kk-rKZ/strings_tv.xml
index 06c84a8..a3a6e97 100644
--- a/packages/SystemUI/res/values-kk-rKZ/strings_tv.xml
+++ b/packages/SystemUI/res/values-kk-rKZ/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Ойнату"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Кідірту"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP басқару үшін "<b>"HOME"</b>" басып тұрыңыз"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP функциясын басқару үшін HOME түймесін басып тұрыңыз"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Түсіндім"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Жабу"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-km-rKH/strings.xml b/packages/SystemUI/res/values-km-rKH/strings.xml
index 9f66f3b..f2dc4e5 100644
--- a/packages/SystemUI/res/values-km-rKH/strings.xml
+++ b/packages/SystemUI/res/values-km-rKH/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"សញ្ញា​ទិន្នន័យ​ពេញ។"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"បាន​ភ្ជាប់​ទៅ <xliff:g id="WIFI">%s</xliff:g> ។"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"បាន​ភ្ជាប់​ទៅ <xliff:g id="BLUETOOTH">%s</xliff:g> ។"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"គ្មាន WiMAX ។"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX មួយ​កាំ។"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX ពីរ​កាំ។"</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"វ៉ាយហ្វាយ"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"គ្មាន​ស៊ីម​កាត។"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"ទិន្នន័យចល័តបានបិទ"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ការ​ភ្ជាប់​ប៊្លូធូស។"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"របៀប​​ពេលជិះ​យន្តហោះ"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"គ្មានស៊ីមកាតទេ។"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"ការប្តូរបណ្តាញក្រុមហ៊ុនផ្តល់សេវា។"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"ថ្ម <xliff:g id="NUMBER">%d</xliff:g> ភាគរយ។"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"កំពុងសាកថ្ម <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> ភាគរយ"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"ការ​កំណត់​ប្រព័ន្ធ​។"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"ការ​ជូន​ដំណឹង។"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"សម្អាត​ការ​ជូន​ដំណឹង។"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"បានបើកមុខងារកុំរំខាន (អាទិភាពប៉ុណ្ណោះ)។"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"មុខងារកុំរំខានបានបើក ស្ងៀមស្ងាត់ទាំងស្រុង។"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"មុខងារកុំរំខានបានបើក សម្លេងរោទិ៍ប៉ុណ្ណោះ។"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"បានបិទមុខងារកុំរំខាន។"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"បានបិទមុខងារកុំរំខាន។"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"បានបើកមុខងារកុំរំខាន។"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"បិទ​ប៊្លូធូស។"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"បើក​ប៊្លូធូស។"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"ការ​​​ភ្ជាប់​ប៊្លូធូស។"</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"ឥឡូវ​អេក្រង់​​ជាប់​សោ​ក្នុង​ទិស​ផ្ដេក។"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"ឥឡូវ​អេក្រង់​​ជាប់​សោ​ក្នុង​ទិស​បញ្ឈរ។"</string>
     <string name="dessert_case" msgid="1295161776223959221">"ករណី Dessert"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"ធាតុ​រក្សា​អេក្រង់"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"ធាតុរក្សាអេក្រង់"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"អ៊ីសឺរណិត"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"កុំរំខាន"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"អាទិភាពប៉ុណ្ណោះ"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"មិន​មាន​ឧបករណ៍​ផ្គូផ្គង​ដែល​អាច​ប្រើ​បាន"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"ពន្លឺ"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"បង្វិល​ស្វ័យ​ប្រវត្តិ"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"បាន​ចាក់សោ​ការ​បង្វិល"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"បញ្ឈរ"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"ទេសភាព"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"មិន​បាន​តភ្ជាប់"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"គ្មាន​បណ្ដាញ"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"វ៉ាយហ្វាយ​បានបិទ"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"គ្មានបណ្តាញ Wi-Fi ទេ"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"ខាស"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"ការ​ចាត់​ថ្នាក់"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"មិន​អាច​ចាប់ផ្ដើម <xliff:g id="APP">%s</xliff:g> ទេ។"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> ត្រូវបានបិទដំណើរការក្នុងរបៀបសុវត្ថិភាព"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"ជម្រះទាំងអស់"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"កម្មវិធីនេះមិនគាំទ្រផ្ទាំងវិដូច្រើនទេ"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"កម្មវិធីមិនគាំទ្រផ្ទាំងវិដូច្រើនទេ"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"កម្មវិធីមិនគាំទ្រអេក្រង់បំបែកជាពីរទេ"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"អូសនៅទីនេះដើម្បីប្រើអេក្រង់បំបែក"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"បំបែកផ្តេក"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"បំបែកបញ្ឈរ"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"បំបែកផ្ទាល់ខ្លួន"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> គឺជាប្រអប់សម្លេង"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"ប៉ះដើម្បីស្តារច្បាប់ដើម។"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"អ្នកកំពុងប្រើប្រវត្តិរូបការងាររបស់អ្នក"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s។ ប៉ះដើម្បីបើកសំឡេង។"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s។ ប៉ះដើម្បីកំណត់ឲ្យញ័រ។ សេវាកម្មលទ្ធភាពប្រើប្រាស់អាចនឹងត្រូវបានបិទសំឡេង។"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s។ ប៉ះដើម្បីបិទសំឡេង។ សេវាកម្មលទ្ធភាពប្រើប្រាស់អាចនឹងត្រូវបានបិទសំឡេង។"</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"កម្មវិធីសម្រួល UI ប្រព័ន្ធ"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"បង្ហាញភាគរយថាមពលថ្មដែលបានបង្កប់"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"រារាំងការជូនដំណឹងទាំងអស់"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"កុំបិទសំឡេង"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"កុំបិទសំឡេង ឬរារាំង"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"បង្ហាញការកំណត់កម្រិតភាពសំខាន់ពេញលេញ"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"បានរារាំង"</string>
-    <string name="min_importance" msgid="1901894910809414782">"កម្រិតសំខាន់អប្បបរមា"</string>
-    <string name="low_importance" msgid="4109929986107147930">"មិនសូវសំខាន់"</string>
-    <string name="default_importance" msgid="8192107689995742653">"សំខាន់មធ្យម"</string>
-    <string name="high_importance" msgid="1527066195614050263">"សំខាន់ខ្លាំង"</string>
-    <string name="max_importance" msgid="5089005872719563894">"សំខាន់ជាបន្ទាន់"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"កុំបង្ហាញការជូនដំណឹងទាំងនេះ"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"បង្ហាញស្ងាត់ៗនៅផ្នែកខាងក្រោមបញ្ជីនៃការជូនដំណឹង"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"បង្ហាញការជូនដំណឹងទាំងនេះស្ងាត់ៗ"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"អនុញ្ញាតឲ្យការជូនដំណឹងទាំងនេះបន្លឺសំឡេង"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"លោតបង្ហាញនៅលើអេក្រង់ និងអនុញ្ញាតឲ្យបន្លឺសំឡេង"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"បង្ហាញនៅផ្នែកខាងលើបញ្ជីនៃការជូនដំណឹង លោតបង្ហាញនៅលើអេក្រង់ និងអនុញ្ញាតឲ្យបន្លឺសំឡេង"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"អង្គគ្រប់គ្រងការជូនដំណឹងថាមពល"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"បើក"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"បិទ"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"ជាមួយអង្គគ្រប់គ្រងការជូនដំណឹងថាមពល អ្នកអាចកំណត់កម្រិតសំខាន់ពី 0 ទៅ 5 សម្រាប់ការជូនដំណឹងរបស់កម្មវិធី។ \n\n"<b>"កម្រិត 5"</b>" \n- បង្ហាញនៅផ្នែកខាងលើបញ្ជីជូនដំណឹង \n- អនុញ្ញាតការរំខានលើអេក្រង់ពេញ \n- លោតឡើងជានិច្ច \n\n"<b>"កម្រិត 4"</b>" \n- រារាំងការរំខានលើអេក្រង់ពេញ \n- លោតឡើងជានិច្ច \n\n"<b>"កម្រិត 3"</b>" \n- រារាំងការរំខានលើអេក្រង់ពេញ \n- លោតឡើងជានិច្ច \n\n"<b>"កម្រិត 2"</b>" \n- រារាំងការរំខានលើអេក្រង់ពេញ \n- លោតឡើងជានិច្ច \n- មិនបន្លឺសំឡេង ឬញ័រ \n\n"<b>"កម្រិត 1"</b>" \n- រារាំងការរំខានលើអេក្រង់ពេញ \n- លោតឡើងជានិច្ច \n- មិនបន្លឺសំឡេង ឬញ័រ \n- លាក់ពីអេក្រង់ចាក់សោ និងរបារស្ថានភាព \n- បង្ហាញនៅផ្នែកខាងក្រោមបញ្ជីជូនដំណឹង \n\n"<b>"កម្រិត 0"</b>" \n- រារាំងការជូនដំណឹងទាំងអស់ពីកម្មវិធី"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"សារៈសំខាន់៖ ស្វ័យប្រវត្តិ"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"សារៈសំខាន់៖ កម្រិត 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"សារៈសំខាន់៖ កម្រិត 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"សារៈសំខាន់៖ កម្រិត 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"សារៈសំខាន់៖ កម្រិត 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"សារៈសំខាន់៖ កម្រិត 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"សារៈសំខាន់៖ កម្រិត 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"កម្មវិធីកំណត់កម្រិតសំខាន់សម្រាប់ការជូនដំណឹងនីមួយៗ។"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"កុំបង្ហាញការជូនដំណឹងសម្រាប់កម្មវិធីនេះ"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"គ្មានការរំខានលើអេក្រង់ពេញ ការលោតឡើង សំឡេង ឬញ័រទេ។ លាក់ពីអេក្រង់ចាក់សោ និងរបារស្ថានភាព។"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"គ្មានការរំខានលើអេក្រង់ពេញ ការលោតឡើង សំឡេង ឬញ័រទេ។"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"គ្មានការរំខាន ឬការលោតឡើងលើអេក្រង់ពេញទេ។"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"លោតឡើងជានិច្ច។ គ្មានការរំខានលើអេក្រង់ពេញទេ។"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"លោតឡើងជានិច្ច និងអនុញ្ញាតការរំខានលើអេក្រង់ពេញ។"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"ការកំណត់ច្រើនទៀត"</string>
     <string name="notification_done" msgid="5279426047273930175">"រួចរាល់"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"អង្គគ្រប់គ្រងការជូនដំណឹង <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"ផ្សេងៗ"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"កម្មវិធីចែកអេក្រង់បំបែក"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"ផ្លាស់ទីចុះក្រោម"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"ផ្លាស់ទីឡើងលើ"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"ផ្លាស់ទីទៅឆ្វេង"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"ផ្លាស់ទីទៅស្តាំ"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"អេក្រង់ពេញខាងឆ្វេង"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"ឆ្វេង 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"ឆ្វេង 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"ឆ្វេង 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"អេក្រង់ពេញខាងស្តាំ"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"អេក្រង់ពេញខាងលើ"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"ខាងលើ 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"ខាងលើ 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"ខាងលើ 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"អេក្រង់ពេញខាងក្រោម"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"ទីតាំង <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>, ប៉ះពីរដងដើម្បីកែ"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>, ប៉ះពីរដងដើម្បីបន្ថែម"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"ទីតាំង <xliff:g id="POSITION">%1$d</xliff:g>, ប៉ះពីរដងដើម្បីជ្រើស"</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ត្រូវបានយកចេញ"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> បានផ្លាស់ទីទៅទីតាំង <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"កម្មវិធីកែការកំណត់រហ័ស"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"កម្មវិធីអាចនឹងមិនដំណើរការនៅលើអេក្រង់បំបែកទេ"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"កម្មវិធីមិនគាំទ្រអេក្រង់បំបែកជាពីរទេ"</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"ទំព័រ <xliff:g id="ID_1">%1$d</xliff:g> នៃ <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-km-rKH/strings_tv.xml b/packages/SystemUI/res/values-km-rKH/strings_tv.xml
index 123cb76..74959dd 100644
--- a/packages/SystemUI/res/values-km-rKH/strings_tv.xml
+++ b/packages/SystemUI/res/values-km-rKH/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"ចាក់"</string>
     <string name="pip_pause" msgid="8412075640017218862">"ផ្អាក"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"សង្កត់ប៊ូតុង "<b>"ដើម"</b>" ដើម្បីគ្រប់គ្រង PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"ចុច និងសង្កត់ប៊ូតុង ដើម ដើម្បីគ្រប់គ្រង PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"យល់ហើយ"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"បដិសេធ"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-kn-rIN/strings.xml b/packages/SystemUI/res/values-kn-rIN/strings.xml
index 41537a3..9ae4a0a 100644
--- a/packages/SystemUI/res/values-kn-rIN/strings.xml
+++ b/packages/SystemUI/res/values-kn-rIN/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"ಡೇಟಾ ಸಂಕೇತ ತುಂಬಿದೆ."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> ಗೆ ಸಂಪರ್ಕಪಡಿಸಲಾಗಿದೆ."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> ಗೆ ಸಂಪರ್ಕಪಡಿಸಲಾಗಿದೆ."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX ಸಂಕೇತವಿಲ್ಲ."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX ಒಂದು ಪಟ್ಟಿ."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX ಎರಡು ಪಟ್ಟಿಗಳು."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"ಎಡ್ಜ್‌"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"ಯಾವುದೇ ಸಿಮ್‌ ಇಲ್ಲ."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"ಸೆಲ್ಯುಲಾರ್ ಡೇಟಾ ಆಫ್ ಆಗಿದೆ"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ಬ್ಲೂಟೂತ್‌‌ ಟೆಥರಿಂಗ್."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"ಏರೋಪ್ಲೇನ್‌ ಮೋಡ್‌"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"ಯಾವುದೇ ಸಿಮ್‌ ಇಲ್ಲ."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"ವಾಹಕ ನೆಟ್‌ವರ್ಕ್ ಬದಲಾಯಿಸುವಿಕೆ."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"ಬ್ಯಾಟರಿ <xliff:g id="NUMBER">%d</xliff:g> ಪ್ರತಿಶತ."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"ಬ್ಯಾಟರಿ ಚಾರ್ಜ್ ಆಗುತ್ತಿದೆ, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> ಪ್ರತಿಶತ."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"ಸಿಸ್ಟಂ ಸೆಟ್ಟಿಂಗ್‌ಗಳು."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"ಅಧಿಸೂಚನೆಗಳು."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"ಅಧಿಸೂಚನೆ ತೆರವುಗೊಳಿಸು."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ಆನ್, ಆದ್ಯತೆ ಮಾತ್ರ."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ಆನ್ ಆಗಿದೆ, ಒಟ್ಟು ನಿಶ್ಯಬ್ಧ."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"ಅಲಾರಮ್‌‌ಗಳಿಗೆ ಮಾತ್ರ ಅಡಚಣೆ ಮಾಡಬೇಡಿ."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ಆಫ್ ಆಗಿದೆ."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"ತೊಂದರೆ ಮಾಡಬೇಡಿ ಆಫ್ ಮಾಡಲಾಗಿದೆ."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ಆನ್ ಮಾಡಲಾಗಿದೆ."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"ಬ್ಲೂಟೂತ್ ಆಫ್ ಆಗಿದೆ."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"ಬ್ಲೂಟೂತ್ ಆನ್ ಆಗಿದೆ."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"ಬ್ಲೂಟೂತ್ ಸಂಪರ್ಕಪಡಿಸಲಾಗುತ್ತಿದೆ."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"ಪರದೆಯು ಇದೀಗ ಲ್ಯಾಂಡ್‌ಸ್ಕೇಪ್ ಒರಿಯಂಟೇಶನ್‌ನಲ್ಲಿ ಲಾಕ್ ಆಗಿದೆ."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"ಪರದೆಯು ಇದೀಗ ಪೋಟ್ರೇಟ್ ಒರಿಯಂಟೇಶನ್‌ನಲ್ಲಿ ಲಾಕ್ ಆಗಿದೆ."</string>
     <string name="dessert_case" msgid="1295161776223959221">"ಡೆಸರ್ಟ್ ಕೇಸ್"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"ಡೇಡ್ರೀಮ್"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"ಸ್ಕ್ರೀನ್ ಸೇವರ್"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ಇಥರ್ನೆಟ್"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"ಆದ್ಯತೆ ಮಾತ್ರ"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"ಯಾವುದೇ ಜೋಡಿಸಲಾದ ಸಾಧನಗಳು ಲಭ್ಯವಿಲ್ಲ"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"ಪ್ರಕಾಶಮಾನ"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"ಸ್ವಯಂ-ತಿರುಗುವಿಕೆ"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"ತಿರುಗುವಿಕೆ ಲಾಕ್ ಆಗಿದೆ"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"ಪೋಟ್ರೇಟ್"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"ಲ್ಯಾಂಡ್‌ಸ್ಕೇಪ್"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"ಸಂಪರ್ಕಗೊಂಡಿಲ್ಲ"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"ನೆಟ್‌ವರ್ಕ್ ಇಲ್ಲ"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi ಆಫ್"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"ಯಾವುದೇ ವೈ-ಫೈ ನೆಟ್‌ವರ್ಕ್‌ಗಳು ಲಭ್ಯವಿಲ್ಲ"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"ಬಿತ್ತರಿಸುವಿಕೆ"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"ಬಿತ್ತರಿಸಲಾಗುತ್ತಿದೆ"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> ಪ್ರಾರಂಭಿಸಲು ಸಾದ್ಯವಿಲ್ಲ."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> ಅನ್ನು ಸುರಕ್ಷಿತ ಮೋಡ್‌ನಲ್ಲಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"ಎಲ್ಲವನ್ನೂ ತೆರವುಗೊಳಿಸು"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"ಈ ಅಪ್ಲಿಕೇಶನ್ ಬಹು-ವಿಂಡೊಗಳನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"ಅಪ್ಲಿಕೇಶನ್ ಬಹು-ವಿಂಡೊಗಳನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"ವಿಭಜಿತ ಪರದೆಯನ್ನು ಅಪ್ಲಿಕೇಶನ್ ಬೆಂಬಲಿಸುವುದಿಲ್ಲ"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"ವಿಭಜಿತ ಪರದೆಯನ್ನು ಬಳಸಲು ಇಲ್ಲಿ ಡ್ರ್ಯಾಗ್‌ ಮಾಡಿ"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"ಅಡ್ಡಲಾಗಿ ವಿಭಜಿಸಿದ"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"ಲಂಬವಾಗಿ ವಿಭಜಿಸಿದ"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"ಕಸ್ಟಮ್ ವಿಭಜಿಸಿದ"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> ವಾಲ್ಯೂಮ್ ಸಂವಾದವಾಗಿದೆ"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"ಮೂಲ ಮರುಸ್ಥಾಪಿಸಲು ಸ್ಪರ್ಶಿಸಿ."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"ನಿಮ್ಮ ಕೆಲಸದ ಪ್ರೊಫೈಲ್‌ ಅನ್ನು ನೀವು ಬಳಸುತ್ತಿರುವಿರಿ"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. ಅನ್‌ಮ್ಯೂಟ್‌ ಮಾಡಲು ಟ್ಯಾಪ್ ಮಾಡಿ."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. ಕಂಪನಕ್ಕೆ ಹೊಂದಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ. ಪ್ರವೇಶಿಸುವಿಕೆ ಸೇವೆಗಳನ್ನು ಮ್ಯೂಟ್‌ ಮಾಡಬಹುದು."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. ಮ್ಯೂಟ್ ಮಾಡಲು ಟ್ಯಾಪ್ ಮಾಡಿ. ಪ್ರವೇಶಿಸುವಿಕೆ ಸೇವೆಗಳನ್ನು ಮ್ಯೂಟ್‌ ಮಾಡಬಹುದು."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"ಸಿಸ್ಟಮ್ UI ಟ್ಯೂನರ್"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"ಎಂಬೆಡ್ ಮಾಡಲಾದ ಬ್ಯಾಟರಿ ಶೇಕಡಾ ತೋರಿಸಿ"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"ಎಲ್ಲಾ ಅಧಿಸೂಚನೆಗಳನ್ನು ನಿರ್ಬಂಧಿಸಿ"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"ಮೌನವಾಗಿಸಬೇಡಿ"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"ಸ್ಥಬ್ದ ಅಥವಾ ನಿರ್ಬಂಧಿಸಬೇಡಿ"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"ಪೂರ್ಣ ಪ್ರಾಮುಖ್ಯತೆ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ತೋರಿಸಿ"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ"</string>
-    <string name="min_importance" msgid="1901894910809414782">"ಕನಿಷ್ಟ ಪ್ರಾಮುಖ್ಯತೆ"</string>
-    <string name="low_importance" msgid="4109929986107147930">"ಕಡಿಮೆ ಪ್ರಾಮುಖ್ಯತೆ"</string>
-    <string name="default_importance" msgid="8192107689995742653">"ಸಾಮಾನ್ಯ ಪ್ರಾಮುಖ್ಯತೆ"</string>
-    <string name="high_importance" msgid="1527066195614050263">"ಉನ್ನತ ಪ್ರಾಮುಖ್ಯತೆ"</string>
-    <string name="max_importance" msgid="5089005872719563894">"ತುರ್ತು ಪ್ರಾಮುಖ್ಯತೆ"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"ಈ ಅಧಿಸೂಚನೆಗಳನ್ನು ಎಂದಿಗೂ ತೋರಿಸಬೇಡ"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"ಅಧಿಸೂಚನೆ ಪಟ್ಟಿಯ ಕೆಳಭಾಗದಲ್ಲಿ ಸ್ಥಬ್ಧವಾಗಿ ತೋರಿಸು"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"ಈ ಅಧಿಸೂಚನೆಗಳನ್ನು ಸ್ಥಬ್ಧವಾಗಿ ತೋರಿಸು"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"ಈ ಅಧಿಸೂಚನೆಯು ಧ್ವನಿಗಳನ್ನು ಮಾಡಲು ಅನುಮತಿಸಿ"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"ಪರದೆಯನ್ನು ವೀಕ್ಷಿಸಿ ಮತ್ತು ಧ್ವನಿ ಅನುಮತಿಸಿ ಮತ್ತು ಧ್ವನಿ ಅನುಮತಿಸಿ"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"ಅಧಿಸೂಚನೆಗಳ ಪಟ್ಟಿಯ ಮೇಲ್ಭಾಗದಲ್ಲಿ ತೋರಿಸು, ಪರದೆಯನ್ನು ವೀಕ್ಷಿಸಿ ಮತ್ತು ಧ್ವನಿ ಅನುಮತಿಸಿ"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"ಪವರ್ ಅಧಿಸೂಚನೆ ನಿಯಂತ್ರಣಗಳು"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"ಆನ್"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"ಆಫ್"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"ಪವರ್ ಅಧಿಸೂಚನೆ ನಿಯಂತ್ರಣಗಳ ಮೂಲಕ, ನೀವು ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಅಧಿಸೂಚನೆಗಳನ್ನು 0 ರಿಂದ 5 ರವರೆಗಿನ ಹಂತಗಳ ಪ್ರಾಮುಖ್ಯತೆಯನ್ನು ಹೊಂದಿಸಬಹುದು. \n\n"<b>"ಹಂತ 5"</b>" \n- ಮೇಲಿನ ಅಧಿಸೂಚನೆ ಪಟ್ಟಿಯನ್ನು ತೋರಿಸಿ \n- ಪೂರ್ಣ ಪರದೆ ಅಡಚಣೆಯನ್ನು ಅನುಮತಿಸಿ \n- ಯಾವಾಗಲು ಇಣುಕು ನೋಟ \n\n"<b>"ಹಂತ 4"</b>" \n- ಪೂರ್ಣ ಪರದೆ ಅಡಚಣೆಯನ್ನು ತಡೆಯಿರಿ \n- ಯಾವಾಗಲು ಇಣುಕು ನೋಟ\n\n"<b>"ಹಂತ 3"</b>" \n- ಪೂರ್ಣ ಪರದೆ ಅಡಚಣೆಯನ್ನು ತಡೆಯಿರಿ \n- ಎಂದಿಗೂ ಇಣುಕು ನೋಟ ಬೇಡ \n\n"<b>"ಹಂತ 2"</b>" \n- ಪೂರ್ಣ ಪರದೆ ಅಡಚಣೆಯನ್ನು ತಡೆಯಿರಿ \n- ಎಂದಿಗೂ ಇಣುಕು ನೋಟ ಬೇಡ \n- ಶಬ್ದ ಮತ್ತು ವೈಬ್ರೇಷನ್ ಎಂದಿಗೂ ಮಾಡಬೇಡಿ \n\n"<b>"ಹಂತ 1"</b>" \n- ಪೂರ್ಣ ಪರದೆ ಅಡಚಣೆಯನ್ನು ತಡೆಯಿರಿ \n- ಎಂದಿಗೂ ಇಣುಕು ನೋಟ ಬೇಡ \n- ಶಬ್ದ ಮತ್ತು ವೈಬ್ರೇಷನ್ ಎಂದಿಗೂ ಮಾಡಬೇಡಿ \n- ಸ್ಥಿತಿ ಪಟ್ಟಿ ಮತ್ತು ಲಾಕ್ ಪರದೆಯಿಂದ ಮರೆಮಾಡಿ \n- ಕೆಳಗಿನ ಅಧಿಸೂಚನೆ ಪಟ್ಟಿಯನ್ನು ತೋರಿಸಿ \n\n"<b>"ಹಂತ 0"</b>" \n- ಅಪ್ಲಿಕೇಶನ್‌ನಿಂದ ಎಲ್ಲಾ ಅಧಿಸೂಚನೆಗಳನ್ನು ನಿರ್ಬಂಧಿಸಿ"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"ಪ್ರಾಮುಖ್ಯತೆ: ಸ್ವಯಂಚಾಲಿತ"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"ಪ್ರಾಮುಖ್ಯತೆ: ಹಂತ 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"ಪ್ರಾಮುಖ್ಯತೆ: ಹಂತ 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"ಪ್ರಾಮುಖ್ಯತೆ: ಹಂತ 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"ಪ್ರಾಮುಖ್ಯತೆ: ಹಂತ 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"ಪ್ರಾಮುಖ್ಯತೆ: ಹಂತ 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"ಪ್ರಾಮುಖ್ಯತೆ: ಹಂತ 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"ಪ್ರತಿ ಅಧಿಸೂಚನೆಯ ಪ್ರಾಮುಖ್ಯತೆಯನ್ನು ಅಪ್ಲಿಕೇಶನ್ ನಿರ್ಧರಿಸುತ್ತದೆ."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"ಈ ಅಪ್ಲಿಕೇಶನ್‌ನಿಂದ ಅಧಿಸೂಚನೆಗಳನ್ನು ಎಂದಿಗೂ ತೋರಿಸಬೇಡ."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"ಪೂರ್ಣ ಪರದೆ ಅಡಚಣೆ, ಇಣುಕು ನೋಟ, ಶಬ್ದ, ಅಥವಾ ವೈಬ್ರೇಷನ್ ಇಲ್ಲ. ಲಾಕ್ ಪರದೆ ಮತ್ತು ಸ್ಥಿತಿ ಪಟ್ಟಿಯಿಂದ ಮರೆಮಾಡಿ."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"ಪೂರ್ಣ ಪರದೆ ಅಡಚಣೆ, ಇಣುಕು ನೋಟ, ಐಶಬ್ದ ಅಥವಾ ವೈಬ್ರೇಷನ್ ಇಲ್ಲ."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"ಯಾವುದೇ ಪೂರ್ಣ ಪರದೆ ಅಡಚಣೆ ಇಲ್ಲ ಅಥವಾ ಇಣುಕು ನೋಟವಿಲ್ಲ."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"ಯಾವಾಗಲು ಇಣುಕು ನೋಟ. ಪೂರ್ಣ ಪರದೆ ಅಡಚಣೆ ಇಲ್ಲ."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"ಯಾವಾಗಲು ಇಣುಕು ನೋಟ ಮತ್ತು ಪೂರ್ಣ ಪರದೆ ಅಡಚಣೆ ಅನುಮತಿಸಿ."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"ಹೆಚ್ಚಿನ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
     <string name="notification_done" msgid="5279426047273930175">"ಮುಗಿದಿದೆ"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಅಧಿಸೂಚನೆ ನಿಯಂತ್ರಣಗಳು"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"ಇತರ"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"ಸ್ಪ್ಲಿಟ್-ಪರದೆ ಡಿವೈಡರ್"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"ಕೆಳಗೆ ಸರಿಸಿ"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"ಮೇಲೆ ಸರಿಸಿ"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"ಎಡಕ್ಕೆ ಸರಿಸಿ"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"ಬಲಕ್ಕೆ ಸರಿಸಿ"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"ಎಡ ಪೂರ್ಣ ಪರದೆ"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"70% ಎಡಕ್ಕೆ"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"50% ಎಡಕ್ಕೆ"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"30% ಎಡಕ್ಕೆ"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"ಬಲ ಪೂರ್ಣ ಪರದೆ"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"ಮೇಲಿನ ಪೂರ್ಣ ಪರದೆ"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"70% ಮೇಲಕ್ಕೆ"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"50% ಮೇಲಕ್ಕೆ"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"30% ಮೇಲಕ್ಕೆ"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"ಕೆಳಗಿನ ಪೂರ್ಣ ಪರದೆ"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"ಸ್ಥಾನ <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. ಸಂಪಾದಿಸಲು ಡಬಲ್ ಟ್ಯಾಪ್ ಮಾಡಿ."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. ಸೇರಿಸಲು ಡಬಲ್ ಟ್ಯಾಪ್ ಮಾಡಿ."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"ಸ್ಥಾನ <xliff:g id="POSITION">%1$d</xliff:g>. ಆಯ್ಕೆಮಾಡಲು ಡಬಲ್ ಟ್ಯಾಪ್ ಮಾಡಿ."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ತೆಗೆದುಹಾಕಲಾಗಿದೆ"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="POSITION">%2$d</xliff:g> ಸ್ಥಾನಕ್ಕೆ <xliff:g id="TILE_NAME">%1$s</xliff:g> ಸೇರಿಸಲಾಗಿದೆ"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"ತ್ವರಿತ ಸೆಟ್ಟಿಂಗ್‍ಗಳ ಸಂಪಾದಕ."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"ವಿಭಜಿಸಿದ ಪರದೆಯಲ್ಲಿ ಅಪ್ಲಿಕೇಶನ್ ಕೆಲಸ ಮಾಡದೇ ಇರಬಹುದು."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"ಅಪ್ಲಿಕೇಶನ್ ಸ್ಪ್ಲಿಟ್ ಸ್ಕ್ರೀನ್ ಅನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g> ರಲ್ಲಿ <xliff:g id="ID_1">%1$d</xliff:g> ಪುಟ"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-kn-rIN/strings_tv.xml b/packages/SystemUI/res/values-kn-rIN/strings_tv.xml
index 6491587..86ee97b 100644
--- a/packages/SystemUI/res/values-kn-rIN/strings_tv.xml
+++ b/packages/SystemUI/res/values-kn-rIN/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"ಪ್ಲೇ"</string>
     <string name="pip_pause" msgid="8412075640017218862">"ವಿರಾಮ"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP ನಿಯಂತ್ರಿಸಲು "<b>"HOME"</b>" ಕೀಯನ್ನು ಹಿಡಿದುಕೊಳ್ಳಿ"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP ನಿಯಂತ್ರಿಸಲು HOME ಬಟನ್ ಒತ್ತಿರಿ ಮತ್ತು ಹಿಡಿದುಕೊಳ್ಳಿ"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"ಅರ್ಥವಾಯಿತು"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"ವಜಾಗೊಳಿಸಿ"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ko/strings.xml b/packages/SystemUI/res/values-ko/strings.xml
index 702c489..7b3ac18 100644
--- a/packages/SystemUI/res/values-ko/strings.xml
+++ b/packages/SystemUI/res/values-ko/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"데이터 신호가 강합니다."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g>에 연결되었습니다."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g>에 연결되었습니다."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX가 없습니다."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX 신호 막대가 하나입니다."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX 신호 막대가 두 개입니다."</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM이 없습니다."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"모바일 데이터가 사용 중지됨"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"블루투스 테더링입니다."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"비행기 모드입니다."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM 카드가 없습니다."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"이동통신사 네트워크가 변경됩니다."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"배터리 <xliff:g id="NUMBER">%d</xliff:g>퍼센트"</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"시스템 설정"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"알림"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"알림 지우기"</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"알림 일시중지 사용, 중요 알림만 수신"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"알림 일시중지 사용, 모두 차단"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"알림 일시중지 사용, 알람만 수신"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"알림 일시중지 사용 중지"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"알림 일시중지가 사용 중지되었습니다."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"알림 일시중지를 사용합니다."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"블루투스: 사용 안함"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"블루투스: 사용"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"블루투스에 연결 중입니다."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"화면이 가로 방향으로 잠깁니다."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"화면이 세로 방향으로 잠깁니다."</string>
     <string name="dessert_case" msgid="1295161776223959221">"디저트 케이스"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"화면 보호기"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"화면 보호기"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"이더넷"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"알림 일시중지"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"중요 알림만"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"페어링된 기기가 없습니다."</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"밝기"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"자동 회전"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"방향 고정"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"세로"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"가로"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"연결되어 있지 않음"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"네트워크가 연결되지 않음"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi 꺼짐"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"사용 가능한 Wi-Fi 네트워크 없음"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"전송"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"전송 중"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g>을(를) 시작할 수 없습니다."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g>은(는) 안전 모드에서 사용 중지됩니다."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"모두 지우기"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"이 앱은 다중 창을 지원하지 않습니다."</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"앱이 다중 창을 지원하지 않습니다."</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"앱이 화면 분할을 지원하지 않습니다."</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"여기를 드래그하여 분할 화면 사용하기"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"수평 분할"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"수직 분할"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"맞춤 분할"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g>은(는) 볼륨 대화입니다."</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"원본을 복원하려면 터치하세요."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"직장 프로필을 사용하고 있습니다."</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. 탭하여 음소거를 해제하세요."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. 탭하여 진동으로 설정하세요. 접근성 서비스가 음소거될 수 있습니다."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. 탭하여 음소거로 설정하세요. 접근성 서비스가 음소거될 수 있습니다."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"시스템 UI 튜너"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"내장형 배터리 잔량 비율 표시"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"모든 알림 차단"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"무음 모드 사용 안함"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"무음 모드 또는 차단 사용 안함"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"전체 중요도 설정 표시"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"차단됨"</string>
-    <string name="min_importance" msgid="1901894910809414782">"중요도 최소"</string>
-    <string name="low_importance" msgid="4109929986107147930">"중요도 낮음"</string>
-    <string name="default_importance" msgid="8192107689995742653">"중요도 보통"</string>
-    <string name="high_importance" msgid="1527066195614050263">"중요도 높음"</string>
-    <string name="max_importance" msgid="5089005872719563894">"중요도 긴급"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"알림 다시 표시 안함"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"알림 목록 맨 아래에 무음으로 표시"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"무음으로 알림 표시"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"알림을 소리로 알리도록 허용"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"화면에 표시하고 소리로 알림"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"알림 목록 맨 위에 표시, 화면에 표시하고 소리로 알림"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"전원 알림 컨트롤"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"사용"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"사용 안함"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"전원 알림 컨트롤을 사용하면 앱 알림 관련 중요도를 0부터 5까지로 설정할 수 있습니다. \n\n"<b>"레벨 5"</b>" \n- 알림 목록 상단에 표시 \n- 전체 화면일 경우 알림 표시 허용 \n- 항상 엿보기 표시 \n\n"<b>"레벨 4"</b>" \n- 전체 화면에 알림 표시 금지 \n- 항상 엿보기 표시 \n\n"<b>"레벨 3"</b>" \n- 전체 화면에 알림 표시 금지 \n- 엿보기 표시 안함 \n\n"<b>"레벨 2"</b>" \n- 전체 화면에 알림 표시 금지 \n- 엿보기 표시 안함 \n- 소리나 진동으로 알리지 않음 \n\n"<b>"레벨 1"</b>" \n- 전체 화면에 알림 표시 금지 \n- 엿보기 표시 안함 \n- 소리나 진동으로 알리지 않음 \n- 잠금 화면 및 상태 표시줄에서 숨김 \n- 알림 목록 하단에 표시 \n\n"<b>"레벨 0"</b>" \n- 앱의 모든 알림 차단"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"중요도: 자동"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"중요: 레벨 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"중요: 레벨 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"중요: 레벨 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"중요: 레벨 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"중요: 레벨 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"중요: 레벨 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"앱에서 각 알림의 중요도를 결정합니다."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"이 앱의 알림 표시 안함"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"전체 화면일 때 알림, 엿보기, 소리, 진동을 금지합니다. 잠금 화면 및 상태 표시줄에서 숨깁니다."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"전체 화면일 때 알림, 엿보기, 소리, 진동을 금지합니다."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"전체 화면일 때 알림 표시 및 엿보기를 금지합니다."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"항상 엿보기를 표시하고 전체 화면일 때 알림을 차단합니다."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"항상 엿보기를 표시하고 전체 화면일 때 알림을 표시합니다."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"설정 더보기"</string>
     <string name="notification_done" msgid="5279426047273930175">"완료"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> 알림 관리"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"기타"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"화면 분할기"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"아래로 이동"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"위로 이동"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"왼쪽으로 이동"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"오른쪽으로 이동"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"왼쪽 화면 전체화면"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"왼쪽 화면 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"왼쪽 화면 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"왼쪽 화면 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"오른쪽 화면 전체화면"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"위쪽 화면 전체화면"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"위쪽 화면 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"위쪽 화면 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"위쪽 화면 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"아래쪽 화면 전체화면"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"위치 <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. 수정하려면 두 번 탭하세요."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. 추가하려면 두 번 탭하세요."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"위치 <xliff:g id="POSITION">%1$d</xliff:g>. 선택하려면 두 번 탭하세요."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> 타일이 삭제되었습니다."</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> 타일을 위치 <xliff:g id="POSITION">%2$d</xliff:g>(으)로 이동함"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"빠른 설정 편집기"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"앱이 분할 화면에서 작동하지 않을 수 있습니다."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"앱이 화면 분할을 지원하지 않습니다."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g>페이지 중 <xliff:g id="ID_1">%1$d</xliff:g>페이지"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ko/strings_tv.xml b/packages/SystemUI/res/values-ko/strings_tv.xml
index da3ab9e..c82888e 100644
--- a/packages/SystemUI/res/values-ko/strings_tv.xml
+++ b/packages/SystemUI/res/values-ko/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"재생"</string>
     <string name="pip_pause" msgid="8412075640017218862">"일시중지"</string>
     <string name="pip_hold_home" msgid="340086535668778109"><b>"HOME"</b>"을 눌러 PIP 제어"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"홈 버튼을 길게 눌러 PIP 제어"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"확인"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"닫기"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ky-rKG/strings.xml b/packages/SystemUI/res/values-ky-rKG/strings.xml
index 23349eb..5e91a8c 100644
--- a/packages/SystemUI/res/values-ky-rKG/strings.xml
+++ b/packages/SystemUI/res/values-ky-rKG/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Мобилдик интернеттин сигналы толук."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> менен туташкан."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> менен туташкан."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX туташуусу жок."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX бир таякча."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX эки таякча."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM карта жок."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Мобилдик дайындарды өткөрүү өчүрүлгөн"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth аркылуу интернет бөлүшүү."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Учак тартиби."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM-карта жок"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Оператор тармагы өзгөртүлүүдө."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Батарея <xliff:g id="NUMBER">%d</xliff:g> пайыз."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Батарея кубатталууда, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> пайыз."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Система тууралоолору."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Эскертмелер."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Эскертмелерди тазалоо."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Тынчымды алба деген күйүк, артыкчылыктуулар гана."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Тынчымды албагыла, жымжырт болсун."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Тынчымды алба деген күйүк, ойготкучтар гана."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Тынчымды алба деген өчүк."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Тынчымды алба деген өчүрүлдү."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Тынчымды алба деген күйгүзүлдү."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth өчүк."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth күйүк."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth туташууда."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Экран азыр туурасынан кулпуланган."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Экран азыр тигинен кулпуланган."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Десерт себети"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Кыялдануу"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Экран сактагыч"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Тынчымды алба"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Артыкчылык гана"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Жупташкан түзмөктөр жок"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Жарыктыгы"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Автоматтык бурулуу"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Буруу аракети кулпуланган"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Тигинен"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Туурасынан"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Байланыш жок"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Желе жок"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi өчүк"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Бир дагы жеткиликтүү Wi-Fi тармагы жок"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Тышкы экранга чыгаруу"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Тышкы экранга чыгарылууда"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> баштай алган жок."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> коопсуз режиминде өчүрүлдү."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Баарын тазалоо"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Бул колдонмодо бир нече терезе режими колдоого алынбайт"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Колдонмодо бир нече терезе режими колдоого алынбайт"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Колдонмодо экран бөлүнбөйт"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Экранды бөлүү үчүн бул жерге сүйрөңүз"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Туурасынан бөлүү"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Тигинен бөлүү"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Ыңгайлаштырылган бөлүү"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> үндү катуулатуу диалогу"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Түпнусканы калыбына келтирүү үчүн тийип коюңуз."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Жумуш профилиңизди колдонуп жатасыз"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Үнүн чыгаруу үчүн таптап коюңуз."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Дирилдөөгө коюу үчүн таптап коюңуз. Атайын мүмкүнчүлүктөр кызматынын үнүн өчүрүп койсо болот."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Үнүн өчүрүү үчүн таптап коюңуз. Атайын мүмкүнчүлүктөр кызматынын үнүн өчүрүп койсо болот."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Батарянын кубатнын деңгээли пайыз менен көрсөтлсүн"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Бардык эскертмелерди бөгөттөө"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Үнү менен көрсөтүлсүн"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Үнү менен көрсөтүлүп бөгөттөлбөсүн"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Маанилүүлүк жөндөөлөрү толук көрсөтүлсүн"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Бөгөттөлгөн"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Маанилүүлүгү эң төмөн"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Маанилүүлүгү төмөн"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Маанилүүлүгү орточо"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Маанилүүлүгү жогору"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Маанилүүлүгү шашылыш"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Бул эскертмелер эч качан көрсөтүлбөсүн"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Эскертмелер тизмесинин соңунда үнсүз көрсөтүлсүн"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Бул эскертмелер үнсүз көрсөтүлсүн"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Бул эскертмелер үнү менен көрсөтүлсүн"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Үн менен коштолуп, экранга чыгарылсын"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Эскертмелер тизмесинин эң башында көрсөтүлүп, үн менен коштолуп, экранга чыгарылсын"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Эскертмелерди башкаруу каражаттары"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Күйүк"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Өчүк"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Бул функциянын жардамы менен ар бир колдонмо үчүн эскертменин маанилүүлүк деңгээлин 0дон 5ке чейин койсоңуз болот. \n\n"<b>"5-деңгээл"</b>" \n- Эскертмелер тизмесинин башында көрсөтүлсүн \n- Эскертмелер толук экранда көрсөтүлсүн \n- Калкып чыгуучу эскертмелерге уруксат берилсин \n\n"<b>"4-деңгээл"</b>" \n- Эскертмелер толук экранда көрсөтүлбөсүн \n- Калкып чыгуучу эскертмелерге уруксат берилсин \n\n"<b>"3-деңгээл"</b>" \n- Эскертмелер толук экранда көрсөтүлбөсүн \n- Калкып чыгуучу эскертмелерге тыюу салынсын \n\n"<b>"2-деңгээл"</b>" \n- Эскертмелер толук экранда көрсөтүлбөсүн \n- Калкып чыгуучу эскертмелерге тыюу салынсын \n- Эч качан добуш чыгып же дирилдебесин \n\n"<b>"1-деңгээл"</b>" \n- Эскертмелер толук экранда көрсөтүлбөсүн \n- Калкып чыгуучу эскертмелерге тыюу салынсын \n- Эч качан добуш чыгып же дирилдебесин \n- Кулпуланган экрандан жана абал тилкесинен жашырылсын \n- Эскертмелер тизмесинин аягында көрсөтүлсүн \n\n"<b>"0-деңгээл"</b>" \n- Колдонмодон алынган бардык эскертмелер бөгөттөлсүн"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Маанилүүлүгү: Автоматтык түрдө"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Маанилүүлүгү: 0-деңгээл"</string>
+    <string name="min_importance" msgid="560779348928574878">"Маанилүүлүгү: 1-деңгээл"</string>
+    <string name="low_importance" msgid="7571498511534140">"Маанилүүлүгү: 2-деңгээл"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Маанилүүлүгү: 3-деңгээл"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Маанилүүлүгү: 4-деңгээл"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Маанилүүлүгү: 5-деңгээл"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Колдонмо ар бир эскертменин маанилүүлүгүн белгилейт."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Бул колдонмодон эскертмелер эч качан көрсөтүлбөсүн."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Үнсүз жана дирилдебесин. Калкып чыгуучу жана толук экранда көрсөтүлүүчү эскертмелер бөгөттөлсүн. Кулпуланган экрандан жана абал тилкесинен жашырылсын."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Үнсүз жана дирилдебесин. Калкып чыгуучу жана толук экранда көрсөтүлүүчү эскертмелер бөгөттөлсүн."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Калкып чыгуучу же толук экранда көрсөтүлүүчү эскертмелер бөгөттөлсүн."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Калкып чыкма эскертме көрсөтүлүп, толук экранда көрсөтүлбөсүн."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Калкып чыгуучу жана толук экранда көрсөтүлүүчү эскертмелерге уруксат берилсин."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Дагы жөндөөлөр"</string>
     <string name="notification_done" msgid="5279426047273930175">"Аткарылды"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> эскертмесин башкаруу каражаттары"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Башка"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Экранды бөлгүч"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Төмөн жылдыруу"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Жогору жылдыруу"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Солго жылдыруу"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Оңго жылдыруу"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Сол жактагы экранды толук экран режимине өткөрүү"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Сол жактагы экранды 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Сол жактагы экранды 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Сол жактагы экранды 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Оң жактагы экранды толук экран режимине өткөрүү"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Үстүнкү экранды толук экран режимине өткөрүү"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Үстүнкү экранды 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Үстүнкү экранды 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Үстүнкү экранды 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Астынкы экранды толук экран режимине өткөрүү"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Орду - <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Түзөтүү үчүн эки жолу таптаңыз."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Кошуу үчүн эки жолу таптаңыз."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Орду - <xliff:g id="POSITION">%1$d</xliff:g>. Тандоо үчүн эки жолу таптаңыз."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> алынып салынды"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> деген <xliff:g id="POSITION">%2$d</xliff:g>-орунга жылдырылды"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Ыкчам жөндөөлөр түзөткүчү."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Колдонмодо экран бөлүнбөшү мүмкүн."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Колдонмодо экран бөлүнбөйт."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g> ичинен <xliff:g id="ID_1">%1$d</xliff:g>-бет"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ky-rKG/strings_tv.xml b/packages/SystemUI/res/values-ky-rKG/strings_tv.xml
index b030542..3fadaba 100644
--- a/packages/SystemUI/res/values-ky-rKG/strings_tv.xml
+++ b/packages/SystemUI/res/values-ky-rKG/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Ойнотуу"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Тындыруу"</string>
     <string name="pip_hold_home" msgid="340086535668778109"><b>"БАШКЫ БЕТ"</b>" басып туруп PIP\'ти башкарыңыз"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP башкаруу үчүн БАШКЫ БЕТ баскычын басып, кармап туруңуз"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Түшүндүм"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Көз жаздымда калтыруу"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-lo-rLA/strings.xml b/packages/SystemUI/res/values-lo-rLA/strings.xml
index 22acd02..74c07c2 100644
--- a/packages/SystemUI/res/values-lo-rLA/strings.xml
+++ b/packages/SystemUI/res/values-lo-rLA/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"ສັນ​ຍານຂໍ້ມູນ​ເຕັມ."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"ເຊື່ອມ​ຕໍ່​ຫາ <xliff:g id="WIFI">%s</xliff:g> ແລ້ວ."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"ເຊື່ອມ​ຕໍ່​ຫາ <xliff:g id="BLUETOOTH">%s</xliff:g> ແລ້ວ."</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"ເຊື່ອມຕໍ່ຫາ <xliff:g id="CAST">%s</xliff:g> ແລ້ວ."</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"ບໍ່ມີ WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX ນຶ່ງຂີດ."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX ສອງຂີດ."</string>
@@ -148,12 +149,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"ບໍ່ມີຊິມ."</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"ຂໍ້ມູນເຄືອຂ່າຍມືຖື"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"ຂໍ້ມູນເຄືອຂ່າຍມືຖືເປີດ"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"ຂໍ້ມູນເຄືອຂ່າຍມືຖືປິດຢູ່"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ການປ່ອຍສັນຍານ Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"ໂໝດໃນຍົນ."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"ບໍ່ມີແຜ່ນ SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"ການ​ປ່ຽນ​ແປງ​ເຄືອ​ຂ່າຍ​ບໍ​ລ​ິ​ສັດ​ເຄືອ​ຂ່າຍ​ມື​ຖື."</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"ເປີດລາຍລະອຽດແບັດເຕີຣີ"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"ແບັດເຕີຣີ <xliff:g id="NUMBER">%d</xliff:g> ເປີເຊັນ."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"ກຳລັງສາກແບັດເຕີຣີ, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> ເປີເຊັນ."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"ການຕັ້ງຄ່າລະບົບ."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"ການແຈ້ງເຕືອນ."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"ລຶບລ້າງການແຈ້ງເຕືອນ."</string>
@@ -191,9 +196,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"ຫ້າມ​ລະ​ກວນ​ເປີດ​ຢູ່, ບຸ​ລິ​ມະ​ສິດ​ເທົ່າ​ນັ້ນ."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"ຫ້າມ​ລົບ​ກວນ​ເປີດ​ຢູ່, ຄວາມ​ງຽບ​ທັງ​ໝົດ."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"ຫ້າມ​ລົບ​ກວນ​ເປີດ​ຢູ່, ໂມງ​ປຸກ​ເທົ່າ​ນັ້ນ."</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"ຫ້າມລົບກວນ."</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"ຫ້າມ​ລົບ​ກວນປິດຢູ່."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"ຢ່າ​ລົບ​ກວນ​ປິດ​ແລ້ວ."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"ຢ່າ​ລົບ​ກວນ​ເປີດ​ແລ້ວ."</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"Bluetooth."</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth ປິດ."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth ເປີດ."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"ກຳ​ລັງ​ເຊື່ອມ​ຕໍ່ Bluetooth."</string>
@@ -247,7 +254,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"ໜ້າ​ຈໍ​ຕອນ​ນີ້​ຖືກ​ລັອກ​ໄວ້​ໃນ​ລວງ​ນອນ."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"ໜ້າ​ຈໍ​ຕອນ​ນີ້​ຖືກ​ລັອກ​ໄວ້​ໃນ​ລວງ​ຕັ້ງ."</string>
     <string name="dessert_case" msgid="1295161776223959221">"ກ່ອງຂອງຫວານ"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"ພາບພັກໜ້າຈໍ"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"ຫ້າມ​ລົບ​ກວນ"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"ບຸ​ລິ​ມະ​ສິດເທົ່າ​ນັ້ນ"</string>
@@ -259,6 +266,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"ບໍ່​ມີ​ອຸ​ປະ​ກອນ​ທີ່​ສາ​ມາດ​ຈັບ​ຄູ່​ໄດ້"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"ຄວາມສະຫວ່າງ"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"ໝຸນ​ອັດ​ຕະ​ໂນ​ມັດ"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"ໝຸນໜ້າຈໍອັດຕະໂນມັດ"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"ຕັ້ງເປັນ <xliff:g id="ID_1">%s</xliff:g>"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"​ລັອກ​ການ​ໝຸນ​ຈ​ໍ​ແລ້ວ"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"ລວງຕັ້ງ"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"ລວງນອນ"</string>
@@ -277,6 +286,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"ບໍ່ໄດ້ເຊື່ອມຕໍ່"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"ບໍ່ມີເຄືອຂ່າຍ"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi​-Fi ປິດ"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"Wi-Fi ເປີດ"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"ບໍ່​ມີ​ເຄືອ​ຂ່າຍ Wi-Fi ຢູ່"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"ການສົ່ງສັນຍານ"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"​ກຳ​ລັງ​ສົ່ງ​ສັນ​ຍານ"</string>
@@ -311,8 +321,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"ບໍ່​ສາ​ມາດ​ເລີ່ມ <xliff:g id="APP">%s</xliff:g> ໄດ້."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> ຖືກປິດໃຊ້ໃນໂໝດຄວາມມປອດໄພ."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"ລຶບລ້າງທັງໝົດ"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"ແອັບນີ້ບໍ່ຮອງຮັບຫຼາຍໜ້າຈໍ"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"ແອັບບໍ່ຮອງຮັບຫຼາຍໜ້າຈໍ"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"ແອັບບໍ່ຮອງຮັບການແຍກໜ້າຈໍ"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"ລາກມາບ່ອນນີ້ເພື່ອໃຊ້ການແບ່ງໜ້າຈໍ"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"ການ​ແຍກ​ລວງ​ຂວາງ"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"ການ​ແຍກ​ລວງ​ຕັ້ງ"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"ການ​ແຍກ​ກຳ​ນົດ​ເອງ"</string>
@@ -420,12 +430,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> ແມ່ນ​ໜ້າ​ຕ່າງ​ລະ​ດັບ​ສຽງ"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"ສໍາ​ຜັດ​ເພື່ອກູ້​ຄືນ​ຕົ້ນ​ສະ​ບັບ​."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"ທ່ານກຳລັງໃຊ້ໂປຣໄຟລ໌ບ່ອນເຮັດວຽກຂອງທ່ານ"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. ແຕະເພື່ອເຊົາປິດສຽງ."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. ແຕະເພື່ອຕັ້ງເປັນສັ່ນ. ບໍລິການຊ່ວຍເຂົ້າເຖິງອາດຖືກປິດສຽງໄວ້."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. ແຕະເພື່ອປິດສຽງ. ບໍລິການຊ່ວຍເຂົ້າເຖິງອາດຖືກປິດສຽງໄວ້."</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"ສະແດງສ່ວນຄວບຄຸມສຽງ %s ແລ້ວ. ປັດອອກຂ້າງເພື່ອປິດໄວ້."</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"ເຊື່ອງສ່ວນຄວບຄຸມສຽງແລ້ວ"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"ສະ​ແດງ​ເປີ​ເຊັນ​ແບັດ​ເຕີ​ຣີ​ທີ່​ຕິດ​ມາ"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"ສະ​ແດງ​ເປີ​ເຊັນ​ລະ​ດັບ​ແບັດ​ເຕີ​ຣີ​ຢູ່​ດ້ານ​ໃນ​ໄອ​ຄອນ​ແຖບ​ສະ​ຖາ​ນະ ເມື່ອ​ບໍ່​ສາກ​ຢູ່"</string>
@@ -470,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"ບລັອກການແຈ້ງເຕືອນທັງໝົດ"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"ຢ່າງຽບ"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"ຢ່າງຽບ ຫຼື ບລັອກ"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"ສະແດງການຕັ້ງຄ່າຄວາມສຳຄັນແບບເຕັມ"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"ບລັອກໄວ້​ແລ້ວ"</string>
-    <string name="min_importance" msgid="1901894910809414782">"ຄວາມສຳຄັນໜ້ອຍສຸດ"</string>
-    <string name="low_importance" msgid="4109929986107147930">"ຄວາມ​ສໍາ​ຄັນ​ຕໍ່າ"</string>
-    <string name="default_importance" msgid="8192107689995742653">"ຄວາມສຳຄັນປົກກະຕິ"</string>
-    <string name="high_importance" msgid="1527066195614050263">"ຄວາມ​ສໍາ​ຄັນ​ສູງ"</string>
-    <string name="max_importance" msgid="5089005872719563894">"ຄວາມ​ສໍາ​ຄັນ​ຮີບ​ດ່ວນ"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"ຢ່າ​ສະ​ແດງ​ການ​ແຈ້ງ​ເຕືອນ​ເຫຼົ່າ​ນີ້"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"ສະແດງຢູ່ລຸ່ມສຸດຂອງລາຍການແຈ້ງເຕືອນແບບມີບໍ່ສຽງ"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"ສະແດງການແຈ້ງເຕືອນເຫຼົ່ານີ້ແບບບໍ່ມີສຽງ"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"ອະນຸຍາດໃຫ້ການແຈ້ງເຕືອນເຫຼົ່ານີ້ໃຊ້ສຽງໄດ້"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"ແຈ້ງໄປໜ້າຈໍ ແລະ ອະນຸຍາດໃຫ້ໃຊ້ສຽງໄດ້"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"ສະແດງຢູ່ເທິງສຸດຂອງລາຍການແຈ້ງເຕືອນ, ແຈ້ງໄປໜ້າຈໍ ແລະ ອະນຸຍາດໃຫ້ໃຊ້ສຽງໄດ້"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"ການຄວບຄຸມການແຈ້ງເຕືອນ"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"ເປີດ"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"ປິດ"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"ດ້ວຍການຄວບຄຸມການແຈ້ງເຕືອນ, ທ່ານສາມາດຕັ້ງລະດັບຄວາມສຳຄັນຈາກ 0 ຮອດ 5 ໃຫ້ກັບການແຈ້ງເຕືອນແອັບໃດໜຶ່ງໄດ້. \n\n"<b>"ລະດັບ 5"</b>" \n- ສະແດງຢູ່ເທິງສຸດຂອງລາຍການແຈ້ງເຕືອນ \n- ອະນຸຍາດໃຫ້ຂັດຈັງຫວະຕອນເປີດເຕັມຈໍ \n- ແນມເບິ່ງທຸກເທື່ອ \n\n"<b>"ລະດັບ 4"</b>" \n- ກັນບໍ່ໃຫ້ຂັດຈັງຫວະຕອນເປີດເຕັມຈໍ \n- ແນມເບິ່ງທຸກເທື່ອ \n\n"<b>"ລະດັບ 3"</b>" \n- ກັນບໍ່ໃຫ້ຂັດຈັງຫວະຕອນເປີດເຕັມຈໍ \n- ບໍ່ແນມເບິ່ງ \n\n"<b>"ລະດັບ 2"</b>" \n- ກັນບໍ່ໃຫ້ຂັດຈັງຫວະຕອນເປີດເຕັມຈໍ \n- ບໍ່ແນມເບິ່ງ \n- ບໍ່ມີສຽງ ແລະ ບໍ່ມີການສັ່ນເຕືອນ \n\n"<b>"ລະດັບ 1"</b>" \n- ກັນບໍ່ໃຫ້ຂັດຈັງຫວະຕອນເປີດເຕັມຈໍ \n- ບໍ່ແນມເບິ່ງ \n- ບໍ່ມີສຽງ ແລະ ບໍ່ມີການສັ່ນເຕືອນ \n- ເຊື່ອງຈາກໜ້າຈໍລັອກ ແລະ ແຖບສະຖານະ \n- ສະແດງຢູ່ລຸ່ມສຸດຂອງລາຍການແຈ້ງເຕືອນ \n\n"<b>"ລະດັບ 0"</b>" \n- ປິດກັ້ນການແຈ້ງເຕືອນທັງໝົດຈາກແອັບ"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"ຄວາມສຳຄັນ: ອັດຕະໂນມັດ"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"ຄວາມສຳຄັນ: ລະດັບ 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"ຄວາມສຳຄັນ: ລະດັບ 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"ຄວາມສຳຄັນ: ລະດັບ 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"ຄວາມສຳຄັນ: ລະດັບ 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"ຄວາມສຳຄັນ: ລະດັບ 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"ຄວາມສຳຄັນ: ລະດັບ 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"ແອັບຈະກຳນົດຄວາມສຳຄັນຂອງການແຈ້ງເຕືອນແຕ່ລະອັນ."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"ບໍ່ຕ້ອງສະແດງການແຈ້ງເຕືອນຈາກແອັບນີ້."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"ບໍ່ມີການຂັດຈັງຫວະຕອນເປີດເຕັມໜ້າຈໍ, ບໍ່ມີການແນມເບິ່ງ, ສຽງ ຫຼື ການສັ່ນ. ເຊື່ອງຈາກໜ້າຈໍລັອກ ແລະ ແຖບສະຖານະ."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"ບໍ່ມີການຂັດຈັງຫວະຕອນເປີດເຕັມໜ້າຈໍ, ບໍ່ມີການແນມເບິ່ງ, ສຽງ ຫຼື ການສັ່ງ."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"ບໍ່ມີການຂັດຈັງຫວະຕອນເປີດເຕັມໜ້າຈໍ ຫຼື ແນມເບິ່ງ."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"ແນມເບິ່ງທຸກເທື່ອ. ບໍ່ມີການຂັດຈັງຫວະຕອນເປີດເຕັມໜ້າຈໍ."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"ແນມເບິ່ງທຸກເທື່ອ ແລະ ອະນຸຍາດໃຫ້ຂັດຈັງຫວະຕອນເປີດເຕັມໜ້າຈໍໄດ້."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"​ການ​ຕັ້ງ​ຄ່າ​ເພີ່ມ​ເຕີມ"</string>
     <string name="notification_done" msgid="5279426047273930175">"ສຳເລັດແລ້ວ"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"ການຄວບຄຸມການແຈ້ງເຕືອນ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +611,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"ອື່ນໆ"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"ຕົວຂັ້ນການແບ່ງໜ້າຈໍ"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"ເລື່ອນລົງ"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"ເລື່ອນຂຶ້ນ"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"ເລື່ອນຊ້າຍ"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"ເລື່ອນຂວາ"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"ເຕັມໜ້າຈໍຊ້າຍ"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"ຊ້າຍ 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"ຊ້າຍ 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"ຊ້າຍ 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"ເຕັມໜ້າຈໍຂວາ"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"ເຕັມໜ້າຈໍເທິງສຸດ"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"ເທິງສຸດ 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"ເທິງສຸດ 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"ເທິງສຸດ 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"ເຕັມໜ້າຈໍລຸ່ມສຸດ"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"ຕຳແໜ່ງ <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. ແຕະສອງເທື່ອເພື່ອແກ້ໄຂ."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. ແຕະສອງເທື່ອເພື່ອເພີ່ມ."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"ຕຳແໜ່ງ <xliff:g id="POSITION">%1$d</xliff:g>. ແຕະສອງເທື່ອເພື່ອເລືອກ."</string>
@@ -610,6 +630,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"ລຶບ <xliff:g id="TILE_NAME">%1$s</xliff:g> ອອກແລ້ວ"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ຍ້າຍໄປຕຳແໜ່ງ <xliff:g id="POSITION">%2$d</xliff:g> ແລ້ວ"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"ຕົວແກ້ໄຂການຕັ້ງຄ່າດ່ວນ"</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"ການແຈ້ງເຕືອນ <xliff:g id="ID_1">%1$s</xliff:g>: <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"ແອັບອາດໃຊ້ບໍ່ໄດ້ກັບການແບ່ງໜ້າຈໍ."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"ແອັບບໍ່ຮອງຮັບໜ້າຈໍແບບແຍກກັນ."</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"ເປີດການຕັ້ງຄ່າ."</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"ເປີດການຕັ້ງຄ່າດ່ວນ."</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"ປິດການຕັ້ງຄ່າດ່ວນ."</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"ຕັ້ງໂມງປຸກແລ້ວ."</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"ເຂົ້າສູ່ລະບົບເປັນ <xliff:g id="ID_1">%s</xliff:g> ແລ້ວ"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"ບໍ່ມີອິນເຕີເນັດ."</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"ເປີດລາຍລະອຽດ."</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"ເປີດການຕັ້ງຄ່າ <xliff:g id="ID_1">%s</xliff:g>."</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"ແກ້ໄຂລຳດັບການຕັ້ງຄ່າ."</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_1">%1$d</xliff:g> ຈາກທັງໝົດ <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-lo-rLA/strings_tv.xml b/packages/SystemUI/res/values-lo-rLA/strings_tv.xml
index 6e36d3f..ba32597 100644
--- a/packages/SystemUI/res/values-lo-rLA/strings_tv.xml
+++ b/packages/SystemUI/res/values-lo-rLA/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"ຫຼິ້ນ"</string>
     <string name="pip_pause" msgid="8412075640017218862">"ຢຸດຊົ່ວຄາວ"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"ກົດ "<b>"HOME"</b>" ຄ້າງໄວ້ເພື່ອຄວບຄຸມ PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"ແຕະປຸ່ມ HOME ຄ້າງໄວ້ເພື່ອຄວບຄຸມຮູບນ້ອຍ"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"ສະແດງຜົນຫຼາຍຢ່າງພ້ອມກັນ"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"ນີ້ຈະເປັນການເຮັດໃຫ້ວິດີໂອຂອງທ່ານຢູ່ໃນມຸມມອງຈົນກວ່າທ່ານຈະຫຼິ້ນວິດີໂອອື່ນ. ໃຫ້ກົດປຸ່ມ "<b>"HOME"</b>" ຄ້າງໄວ້ເພື່ອຄວບຄຸມມັນ."</string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"ເຂົ້າໃຈແລ້ວ"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"ປິດໄວ້"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-lt/strings.xml b/packages/SystemUI/res/values-lt/strings.xml
index ac32b30..e86528a 100644
--- a/packages/SystemUI/res/values-lt/strings.xml
+++ b/packages/SystemUI/res/values-lt/strings.xml
@@ -120,6 +120,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Stiprus duomenų signalas."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Prisijungta prie „<xliff:g id="WIFI">%s</xliff:g>“."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Prisijungta prie „<xliff:g id="BLUETOOTH">%s</xliff:g>“."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Nėra „WiMAX“ signalo."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Viena „WiMAX“ signalo juosta."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Dvi „WiMAX“ signalo juostos."</string>
@@ -150,12 +152,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Kraštas"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Nėra SIM kortelės."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobiliojo ryšio duomenys išjungti"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"„Bluetooth“ įrenginio kaip modemo naudojimas."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Lėktuvo režimas."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Nėra SIM kortelės."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Keičiamas operatoriaus tinklas."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Akumuliatorius: <xliff:g id="NUMBER">%d</xliff:g> proc."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Įkraunamas akumuliatorius, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> proc."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Sistemos nustatymai"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Pranešimai."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Išvalyti pranešimą."</string>
@@ -193,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Funkcija „Netrukdyti“ įjungta. Tik prioritetiniai įvykiai."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Įjungta funkcija „Netrukdyti“, visiška tyla."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Funkcija „Netrukdyti“ įjungta. Leidžiami tik signalai."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Funkcija „Netrukdyti“ išjungta."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Funkcija „Netrukdyti“ išjungta."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Funkcija „Netrukdyti“ įjungta."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"„Bluetooth“ išjungtas."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"„Bluetooth“ įjungtas."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Prijungiamas „Bluetooth“."</string>
@@ -249,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Dabar ekranas užrakintas nustačius gulsčią orientaciją."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Dabar ekranas užrakintas nustačius stačią orientaciją."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Desertų dėklas"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Svajonė"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Ekrano užsklanda"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Eternetas"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Netrukdyti"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Tik prioritetiniai įvykiai"</string>
@@ -261,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Nėra pasiekiamų susietų įrenginių"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Šviesumas"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automatinis kaitaliojimas"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Kaitaliojimas užrakintas"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Stačias"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Gulsčias"</string>
@@ -279,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Neprisijungta"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Tinklo nėra"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"„Wi-Fi“ išjungta"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nėra jokių pasiekiamų „Wi-Fi“ tinklų"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Perdavimas"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Perduodama"</string>
@@ -313,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Nepavyko paleisti <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Programa „<xliff:g id="APP">%s</xliff:g>“ išjungta saugos režimu."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Išvalyti viską"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Ši programa nepalaiko kelių langų režimo"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Programa nepalaiko kelių langų režimo"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Programoje nepalaikomas skaidytas ekranas"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Vilkite čia, kad naudotumėte skaidytą ekraną"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Horizontalus skaidymas"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Vertikalus skaidymas"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Tinkintas skaidymas"</string>
@@ -422,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"„<xliff:g id="APP_NAME">%1$s</xliff:g>“ yra garsumo valdymo dialogo langas"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Palieskite, kad atkurtumėte originalą."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Naudojate darbo profilį"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Palieskite, kad įjungtumėte garsą."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Palieskite, kad nustatytumėte vibravimą. Gali būti nutildytos pritaikymo neįgaliesiems paslaugos."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Palieskite, kad nutildytumėte. Gali būti nutildytos pritaikymo neįgaliesiems paslaugos."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Sistemos naudotojo sąsajos derinimo priemonė"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Rodyti įterptą akumuliat. įkrovos procentinę vertę"</string>
@@ -472,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Blokuoti visus pranešimus"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Netylėti"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Netylėti arba blokuoti"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Rodyti visos svarbos nustatymus"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Užblokuota"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Min. svarba"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Maža svarba"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Įprasta svarba"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Didelė svarba"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Skubi svarba"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Niekada nerodyti šių pranešimų"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Tyliai rodyti pranešimų sąrašo apačioje"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Tyliai rodyti šiuos pranešimus"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Leisti šiems pranešimams skambėti"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Rodyti ekrane ir leisti skambėti"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Rodyti pranešimų sąrašo viršuje, rodyti ekrane ir leisti skambėti"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Galingi pranešimų valdikliai"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Įjungta"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Išjungta"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Naudodami pranešimų valdiklius galite nustatyti programos pranešimų svarbos lygį nuo 0 iki 5. \n\n"<b>"5 lygis"</b>" \n– Rodyti pranešimų sąrašo viršuje \n– Leisti pertraukti, kai veikia viso ekrano režimas \n– Visada rodyti pranešimus \n\n"<b>"4 lygis"</b>" \n– Neleisti pertraukti viso ekrano režimo \n– Visada rodyti pranešimus \n\n"<b>"3 lygis"</b>" \n– Neleisti pertraukti viso ekrano režimo \n– Niekada nerodyti pranešimų \n\n"<b>"2 lygis"</b>" \n– Neleisti pertraukti viso ekrano režimo \n– Niekada nerodyti pranešimų \n– Niekada neleisti garso ir nevibruoti \n\n"<b>"1 lygis"</b>" \n– Neleisti pertraukti viso ekrano režimo \n– Niekada nerodyti pranešimų \n– Niekada neleisti garso ir nevibruoti \n– Slėpti užrakinimo ekrane ir būsenos juostoje \n– Rodyti pranešimų sąrašo apačioje \n\n"<b>"0 lygis"</b>" \n– Blokuoti visus programos pranešimus"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Svarba: automatinė"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Svarba: 0 lygis"</string>
+    <string name="min_importance" msgid="560779348928574878">"Svarba: 1 lygis"</string>
+    <string name="low_importance" msgid="7571498511534140">"Svarba: 2 lygis"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Svarba: 3 lygis"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Svarba: 4 lygis"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Svarba: 5 lygis"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Programa nustato kiekvieno pranešimo svarbą."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Niekada nerodyti iš šios programos gautų pranešimų."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Viso ekrano režimas nepertraukiamas, nerodomi jokie pranešimai, neleidžiami garsai ir nevibruojama. Slėpti nuo užrakinimo ekrano ir būsenos juostos."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Viso ekrano režimas nepertraukiamas, nerodomi jokie pranešimai, neleidžiami garsai ir nevibruojama."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Viso ekrano režimas nepertraukiamas ir jam veikiant nerodomi jokie pranešimai."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Visada rodyti pranešimus. Viso ekrano režimas nepertraukiamas."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Visada rodyti pranešimus ir leisti pertraukti viso ekrano režimą."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Daugiau nustatymų"</string>
     <string name="notification_done" msgid="5279426047273930175">"Atlikta"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"„<xliff:g id="APP_NAME">%1$s</xliff:g>“ pranešimų valdikliai"</string>
@@ -599,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Kita"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Skaidyto ekrano daliklis"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Perkelti žemyn"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Perkelti aukštyn"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Perkelti kairėn"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Perkelti dešinėn"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Kairysis ekranas viso ekrano režimu"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Kairysis ekranas 70 %"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Kairysis ekranas 50 %"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Kairysis ekranas 30 %"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Dešinysis ekranas viso ekrano režimu"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Viršutinis ekranas viso ekrano režimu"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Viršutinis ekranas 70 %"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Viršutinis ekranas 50 %"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Viršutinis ekranas 30 %"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Apatinis ekranas viso ekrano režimu"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g> padėtis, išklotinės elementas „<xliff:g id="TILE_NAME">%2$s</xliff:g>“. Dukart palieskite, kad redaguotumėte."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"Išklotinės elementas „<xliff:g id="TILE_NAME">%1$s</xliff:g>“. Dukart palieskite, kad pridėtumėte."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g> padėtis. Dukart palieskite, kad pasirinktumėte."</string>
@@ -612,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Išklotinės elementas „<xliff:g id="TILE_NAME">%1$s</xliff:g>“ pašalintas"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Išklotinės elementas „<xliff:g id="TILE_NAME">%1$s</xliff:g>“ perkeltas į <xliff:g id="POSITION">%2$d</xliff:g> padėtį"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Sparčiųjų nustatymų redagavimo priemonė."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Programa gali neveikti naudojant skaidytą ekraną."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Programoje nepalaikomas skaidytas ekranas."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_1">%1$d</xliff:g> psl. iš <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-lt/strings_tv.xml b/packages/SystemUI/res/values-lt/strings_tv.xml
index c8fce8a..ab66b77 100644
--- a/packages/SystemUI/res/values-lt/strings_tv.xml
+++ b/packages/SystemUI/res/values-lt/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Leisti"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pristabdyti"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Kad vald. PIP, pal. pasp. m. "<b>"PAGRINDINIS"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Jei norite valdyti PIP, paspauskite ir palaikykite pagrindinio puslapio mygtuką"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Supratau"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Atsisakyti"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-lv/strings.xml b/packages/SystemUI/res/values-lv/strings.xml
index 218178a..e5fcf58 100644
--- a/packages/SystemUI/res/values-lv/strings.xml
+++ b/packages/SystemUI/res/values-lv/strings.xml
@@ -119,6 +119,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Pilna piekļuve datu signālam."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Ir izveidots savienojums ar <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Ir izveidots savienojum ar <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Bez WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX viena josla."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX divas joslas."</string>
@@ -149,12 +151,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Nav SIM kartes."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobilie dati ir atslēgti"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth piesaiste."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Lidmašīnas režīms."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Nav SIM kartes."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Mobilo sakaru operatora tīkla mainīšana."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Akumulators: <xliff:g id="NUMBER">%d</xliff:g> procenti"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Notiek akumulatora uzlāde, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> procenti."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Sistēmas iestatījumi"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Paziņojumi"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Notīrīt paziņojumu"</string>
@@ -192,9 +201,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Statuss Netraucēt ir ieslēgts, izvēlēts iestatījums Tikai prioritārie."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Ieslēgts režīms “Netraucēt”, pilnīgs klusums."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Ieslēgts režīms “Netraucēt”, atļauti tikai signāli."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Statuss Netraucēt ir izslēgts."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Statuss Netraucēt tika izslēgts."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Statuss Netraucēt tika ieslēgts."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth savienojums ir izslēgts."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth savienojums ir ieslēgts."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Notiek Bluetooth savienojuma izveide."</string>
@@ -248,7 +261,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ekrāns tagad ir bloķēts ainavas orientācijā."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ekrāns tagad ir bloķēts portreta orientācijā."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Saldo ēdienu stends"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Ekrānsaudzētājs"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Ekrānsaudzētājs"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Tīkls Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Netraucēt"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Tikai prioritārie"</string>
@@ -260,6 +273,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Nav pieejama neviena pārī savienota ierīce."</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Spilgtums"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automātiska pagriešana"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Pagriešana bloķēta"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portrets"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Ainava"</string>
@@ -278,6 +295,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Nav izveidots savienojums"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Nav tīkla"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi ir izslēgts"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nav pieejams neviens Wi-Fi tīkls."</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Apraide"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Notiek apraide…"</string>
@@ -312,8 +331,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Nevarēja palaist lietotni <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Lietotne <xliff:g id="APP">%s</xliff:g> ir atspējota drošajā režīmā."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Notīrīt visu"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Šajā lietotnē netiek atbalstīts vairāku logu režīms."</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Lietotnē netiek atbalstīts vairāku logu režīms"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Lietotnē netiek atbalstīta ekrāna sadalīšana."</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Velciet šeit, lai izmantotu ekrāna sadalīšanu"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Horizontāls dalījums"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Vertikāls dalījums"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Pielāgots dalījums"</string>
@@ -421,11 +440,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> ir skaļuma dialoglodziņš"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Pieskarieties, lai atjaunotu sākotnējo."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Jūs izmantojat darba profilu."</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Pieskarieties, lai ieslēgtu skaņu."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Pieskarieties, lai iestatītu uz vibrozvanu. Var tikt izslēgti pieejamības pakalpojumu signāli."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Pieskarieties, lai izslēgtu skaņu. Var tikt izslēgti pieejamības pakalpojumu signāli."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Sistēmas saskarnes regulators"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Rādīt akumulatora uzlādes līmeni procentos"</string>
@@ -471,19 +491,24 @@
     <string name="block" msgid="2734508760962682611">"Bloķēt visus paziņojumus"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Neizslēgt skaņu"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Neizslēgt skaņu vai nebloķēt"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Rādīt ļoti svarīgu paziņojumu iestatījumus"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloķēts"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Minimāls svarīguma līmenis"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Nav svarīgs"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Parasts"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Ļoti svarīgs"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Steidzams"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Nekad nerādīt šos paziņojumus"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Rādīt paziņojumu saraksta apakšdaļā bez skaņas signāla"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Rādīt šos paziņojumus bez skaņas signāla"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Atļaut skaņas signālu šiem paziņojumiem"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Rādīt ekrānā un atļaut skaņas signālu"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Rādīt paziņojumu saraksta augšdaļā, rādīt ekrānā ar skaņas signālu"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Barošanas paziņojumu vadīklas"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Ieslēgts"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Izslēgts"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Izmantojot barošanas paziņojumu vadīklas, varat lietotnes paziņojumiem iestatīt svarīguma līmeni (no 0 līdz 5). \n\n"<b>"5. līmenis"</b>" \n- Tiek rādīts paziņojumu saraksta augšdaļā \n- Tiek atļauta pilnekrāna režīma pārtraukšana \n- Ieskats vienmēr atļauts \n\n"<b>"4. līmenis"</b>" \n- Tiek novērsta pilnekrāna režīma pārtraukšana \n- Ieskats vienmēr atļauts \n\n"<b>"3. līmenis"</b>" \n- Tiek novērsta pilnekrāna režīma pārtraukšana \n- Ieskats nav atļauts \n\n"<b>"2. līmenis"</b>" \n- Tiek novērsta pilnekrāna režīma pārtraukšana \n- Ieskats nav atļauts \n- Nav atļautas skaņas un vibrosignāls \n\n"<b>"1. līmenis"</b>" \n- Tiek novērsta pilnekrāna režīma pārtraukšana \n- Ieskats nav atļauts \n- Nav atļautas skaņas un vibrosignāls \n- Paziņojumi tiek paslēpti bloķēšanas ekrānā un statusa joslā \n- Paziņojumi tiek rādīti paziņojumu saraksta apakšdaļā \n\n"<b>"0. līmenis"</b>" \n- Visi lietotnes paziņojumi tiek bloķēti"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Svarīgums: automātisks"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Svarīguma līmenis: 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Svarīguma līmenis: 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Svarīguma līmenis: 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Svarīguma līmenis: 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Svarīguma līmenis: 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Svarīguma līmenis: 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Lietotne nosaka katra paziņojuma svarīgumu."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nekad nerādīt paziņojumus no šīs lietotnes."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Bez pilnekrāna pārtraukšanas, ieskata, skaņas, vibrācijas. Paslēpt bloķēšanas ekrānā, statusa joslā."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Nav pieejama pilnekrāna režīma pārtraukšana, ieskats, skaņa vai vibrosignāls."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Nav pieejama pilnekrāna režīma pārtraukšana vai ieskats."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Vienmēr atļaut ieskatu. Nav pieejama pilnekrāna režīma pārtraukšana."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Vienmēr atļaut ieskatu un atļaut pilnekrāna režīma pārtraukšanu."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Citi iestatījumi"</string>
     <string name="notification_done" msgid="5279426047273930175">"Gatavs"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> paziņojumu vadīklas"</string>
@@ -598,10 +623,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Citi"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Ekrāna sadalītājs"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Pārvietot uz leju"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Pārvietot uz augšu"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Pārvietot pa kreisi"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Pārvietot pa labi"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Kreisā daļa pa visu ekrānu"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Pa kreisi 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Pa kreisi 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Pa kreisi 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Labā daļa pa visu ekrānu"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Augšdaļa pa visu ekrānu"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Augšdaļa 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Augšdaļa 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Augšdaļa 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Apakšdaļu pa visu ekrānu"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g>. pozīcija, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Lai rediģētu, veiciet dubultskārienu."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Lai pievienotu, veiciet dubultskārienu."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g>. pozīcija. Lai atlasītu, veiciet dubultskārienu."</string>
@@ -611,6 +642,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Elements <xliff:g id="TILE_NAME">%1$s</xliff:g> ir noņemts"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Elements <xliff:g id="TILE_NAME">%1$s</xliff:g> ir pārvietots uz <xliff:g id="POSITION">%2$d</xliff:g>. pozīciju"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Ātro iestatījumu redaktors."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Iespējams, lietotnē nedarbosies ekrāna sadalīšana."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Lietotnē netiek atbalstīta ekrāna sadalīšana."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_1">%1$d</xliff:g>. lpp. no <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-lv/strings_tv.xml b/packages/SystemUI/res/values-lv/strings_tv.xml
index 9e4b236..ad5e035 100644
--- a/packages/SystemUI/res/values-lv/strings_tv.xml
+++ b/packages/SystemUI/res/values-lv/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Atskaņot"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Apturēt"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Turiet taustiņu "<b>"SĀKUMS"</b>", lai kontrolētu PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Nospiediet un turiet pogu SĀKUMS, lai kontrolētu PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Labi"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Nerādīt"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-mk-rMK/strings.xml b/packages/SystemUI/res/values-mk-rMK/strings.xml
index 8d25796..145e986 100644
--- a/packages/SystemUI/res/values-mk-rMK/strings.xml
+++ b/packages/SystemUI/res/values-mk-rMK/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Сигналот за податоци е исполнет."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Поврзано со <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Поврзано со <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Нема WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX една цртичка."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX две цртички."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Нема СИМ картичка."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Мобилните податоци се исклучени"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Се поврзува со Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Режим на работа во авион."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Нема СИМ-картичка"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Променување на мрежата на операторот."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Батерија <xliff:g id="NUMBER">%d</xliff:g> проценти."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Полнење на батеријата, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> проценти."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Поставки на систем."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Известувања"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Избриши известување."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"„Не вознемирувај“ е вклучено, само приоритетни."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"„Не вознемирувај“ е вклучено, целосна тишина."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"„Не вознемирувај“ е вклучено, само аларми."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"„Не вознемирувај“ е исклучено."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"„Не вознемирувај“ е исклучено."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"„Не вознемирувај“ е вклучено."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth е исклучен."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth е вклучен."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth се поврзува."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Сега екранот е заклучен во хоризонтална ориентација."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Сега екранот е заклучен во вертикална ориентација."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Заштитник на екран"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Етернет"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Не вознемирувај"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Само приоритетно"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Нема достапни спарени уреди"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Осветленост"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Автоматско ротирање"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Ротацијата е заклучена"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Портрет"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Пејзаж"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Не е поврзано"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Нема мрежа"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi е исклучено"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Нема достапни Wi-Fi мрежи"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Емитувај"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Емитување"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> не може да се вклучи."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> е оневозможен во безбеден режим."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Исчисти ги сите"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Апликацијава не поддржува повеќе прозорци"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Апликацијата не поддржува повеќе прозорци"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Апликацијата не поддржува поделен екран"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Повлечете тука за да користите поделен екран"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Раздели хоризонтално"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Раздели вертикално"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Раздели прилагодено"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> е дијалог за јачина на звук"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Допрете за да го вратите оригиналот."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Го користите работниот профил"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Допрете за да вклучите звук."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Допрете за да поставите на вибрации. Можеби ќе се исклучи звукот на услугите за достапност."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Допрете за да исклучите звук. Можеби ќе се исклучи звукот на услугите за достапност."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Адаптер на УИ на системот"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Прикажи вграден процент на батеријата"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Блокирај ги сите известувања"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Не стишувај"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Не стишувај или блокирај"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Прикажи ги поставките со целосна важност"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Блокирано"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Минимална важност"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Мала важност"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Нормална важност"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Голема важност"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Итна важност"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Никогаш не ги прикажувај известувањава"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Тивко прикажувај ги на дното на списокот со известувања"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Тивко прикажувај ги известувањава"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Овозможи им на известувањава да прават звуци"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Ѕиркање на екранот и овозможен звук и овозможен звук"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Прикажувај ги на врвот на списокот со известувања, ѕиркање на екранот и овозможи звук"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Контроли за известувањата за напојување"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Вклучено"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Исклучено"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Со контролите за известувањата за напојување, може да поставите ниво на важност од 0 до 5 за известувањата на која било апликација. \n\n"<b>"Ниво 5"</b>" \n- Прикажувај на врвот на списокот со известувања \n- Дозволи прекин во цел екран \n- Секогаш користи појавување \n\n"<b>"Ниво 4"</b>" \n- Спречи прекин во цел екран \n- Секогаш користи појавување \n\n"<b>"Ниво 3"</b>" \n- Спречи прекин во цел екран \n- Без појавување \n\n"<b>"Ниво 2"</b>" \n- Спречи прекин во цел екран \n- Без појавување \n- Без звук и вибрации \n\n"<b>"Ниво 1"</b>" \n- Спречи прекин во цел екран \n- Без појавување \n- Без звук и вибрации \n- Сокриј од заклучен екран и статусна лента \n- Прикажувај на дното на списокот со известувања \n\n"<b>"Ниво 0"</b>" \n- Блокирај ги сите известувања од апликацијата"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Важност: автоматски"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Важност: ниво 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Важност: ниво 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Важност: ниво 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Важност: ниво 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Важност: ниво 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Важност: ниво 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Апликацијата ја одредува важноста за секое известување."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Никогаш не прикажувај известувања од оваа апликација."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Без прекин, појавување, звук или вибрации во цел екран. Сокриј од заклучен екран и статусна лента."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Без прекин, појавување, звук или вибрации во цел екран."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Без прекини и појавувања во цел екран."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Секогаш користи појавување. Без прекини во цел екран."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Секогаш користи појавување и дозволи прекин во цел екран."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Повеќе поставки"</string>
     <string name="notification_done" msgid="5279426047273930175">"Готово"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Контроли за известувања на <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Друго"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Разделник на поделен екран"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Преместете надолу"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Преместете нагоре"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Преместете налево"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Преместете надесно"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Левиот на цел екран"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Левиот 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Левиот 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Левиот 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Десниот на цел екран"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Горниот на цел екран"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Горниот 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Горниот 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Горниот 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Долниот на цел екран"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Место <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Допрете двапати за уредување."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Допрете двапати за додавање."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Место <xliff:g id="POSITION">%1$d</xliff:g>. Допрете двапати за избирање."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> е отстранета"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> е преместена на место <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Уредник за брзи поставки."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Апликацијата можеби нема да работи во поделен екран."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Апликацијата не поддржува поделен екран."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Страница <xliff:g id="ID_1">%1$d</xliff:g> од <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-mk-rMK/strings_tv.xml b/packages/SystemUI/res/values-mk-rMK/strings_tv.xml
index 2d6da0c..671788c 100644
--- a/packages/SystemUI/res/values-mk-rMK/strings_tv.xml
+++ b/packages/SystemUI/res/values-mk-rMK/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Пушти"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Пауза"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Задржете "<b>"ДОМА"</b>" за кон. PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Притиснете и задржете го копчето ДОМА за контролирање PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Разбрав"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Отфрли"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ml-rIN/strings.xml b/packages/SystemUI/res/values-ml-rIN/strings.xml
index e44642d..a2421be 100644
--- a/packages/SystemUI/res/values-ml-rIN/strings.xml
+++ b/packages/SystemUI/res/values-ml-rIN/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"ഡാറ്റ സിഗ്‌നൽ പൂർണ്ണമാണ്."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> എന്നതിലേക്ക് കണക്‌റ്റുചെയ്‌തു."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> എന്നതിലേക്ക് കണക്‌റ്റുചെയ്‌തു."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX ഇല്ല."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX ഒരു ബാർ."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX രണ്ട് ബാറുകൾ."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"വൈഫൈ"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"സിം ഇല്ല."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"സെല്ലുലാർ ഡാറ്റ ഓഫാണ്"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ബ്ലൂടൂത്ത് ടെതറിംഗ്."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"ഫ്ലൈറ്റ് മോഡ്."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM കാർഡൊന്നുമില്ല."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"കാരിയർ നെറ്റ്‌വർക്ക് മാറ്റൽ."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"ബാറ്ററി <xliff:g id="NUMBER">%d</xliff:g> ശതമാനം."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"ബാറ്ററി ചാർജുചെയ്യുന്നു, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> ശതമാനം."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"സിസ്‌റ്റം ക്രമീകരണങ്ങൾ."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"അറിയിപ്പുകൾ."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"വിവരം മായ്‌ക്കുക."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"ശല്യപ്പെടുത്തരുത് എന്നത് ഓണാണ്, മുൻഗണന മാത്രം."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"\'ശല്യപ്പെടുത്തരുത്\' ഓണാണ്, പൂർണ്ണ നിശബ്‌ദത."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\'ശല്യപ്പെടുത്തരുത്\' ഓണാണ്, അലാറം മാത്രം."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"ശല്ല്യപ്പെടുത്തരുത് എന്നത് ഓഫാണ്."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"ശല്യപ്പെടുത്തരുത് എന്നത് ഓഫാക്കി."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"ശല്യപ്പെടുത്തരുത് എന്നത് ഓണാക്കി."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"ബ്ലൂടൂത്ത് ഓഫാണ്."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"ബ്ലൂടൂത്ത് ഓണാണ്."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"ബ്ലൂടൂത്ത് കണക്‌റ്റുചെയ്യുന്നു."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"ലാൻഡ്‌സ്‌കേപ്പ് ഓറിയന്റേഷനിൽ ഇപ്പോൾ സ്ക്രീൻ ലോക്കുചെയ്‌തു."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"പോർട്രെയ്‌റ്റ് ഓറിയന്റേഷനിൽ ഇപ്പോൾ സ്ക്രീൻ ലോക്കുചെയ്‌തു."</string>
     <string name="dessert_case" msgid="1295161776223959221">"ഡെസേർട്ട് കെയ്സ്"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"ഡേഡ്രീം"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"സ്ക്രീൻ സേവർ"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ഇതർനെറ്റ്"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"ശല്ല്യപ്പെടുത്തരുത്"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"മുൻഗണന മാത്രം"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"ജോടിയാക്കിയ ഉപകരണങ്ങളൊന്നും ലഭ്യമല്ല"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"തെളിച്ചം"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"ആവശ്യാനുസരണം തിരിയുക"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"റൊട്ടേഷൻ ലോക്കുചെയ്‌തു"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"പോർട്രെയ്‌റ്റ്"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"ലാൻഡ്‌സ്‌കേപ്പ്"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"കണ‌ക്റ്റുചെയ്‌തിട്ടില്ല"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"നെറ്റ്‌വർക്ക് ഒന്നുമില്ല"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"വൈഫൈ ഓഫുചെയ്യുക"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"വൈഫൈ നെറ്റ്‌വർക്കുകളൊന്നും ലഭ്യമല്ല"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"കാസ്‌റ്റുചെയ്യുക"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"കാസ്റ്റുചെയ്യുന്നു"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> ആരംഭിക്കാനായില്ല."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"സുരക്ഷിത മോഡിൽ <xliff:g id="APP">%s</xliff:g> പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നു."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"എല്ലാം മായ്‌ക്കുക"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"ഒന്നിലധികം വിൻഡോകളെ ഈ ആപ്പ് പിന്തുണയ്ക്കുന്നില്ല"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"ഒന്നിലധികം വിൻഡോകളെ ആപ്പ് പിന്തുണയ്ക്കുന്നില്ല"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"സ്പ്ലിറ്റ് സ്ക്രീനിനെ ആപ്പ് പിന്തുണയ്ക്കുന്നില്ല"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"സ്പ്ലിറ്റ് സ്ക്രീൻ ഉപയോഗിക്കുന്നതിന് ഇവിടെ വലിച്ചിടുക"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"തിരശ്ചീനമായി വേർതിരിക്കുക"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"ലംബമായി വേർതിരിക്കുക"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"ഇഷ്‌ടാനുസൃതമായി വേർതിരിക്കുക"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g>, വോളിയം ഡയലോഗാണ്"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"ആദ്യത്തേത് പുനഃസ്ഥാപിക്കാൻ സ്‌പർശിക്കുക."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"നിങ്ങൾ ഉപയോഗിക്കുന്നത് ഔദ്യോഗിക പ്രൊഫൈലാണ്"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. അൺമ്യൂട്ടുചെയ്യുന്നതിന് ടാപ്പുചെയ്യുക."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. വൈബ്രേറ്റിലേക്ക് സജ്ജമാക്കുന്നതിന് ടാപ്പുചെയ്യുക. പ്രവേശനക്ഷമതാ സേവനങ്ങൾ മ്യൂട്ടുചെയ്യപ്പെട്ടേക്കാം."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. മ്യൂട്ടുചെയ്യുന്നതിന് ടാപ്പുചെയ്യുക. പ്രവേശനക്ഷമതാ സേവനങ്ങൾ മ്യൂട്ടുചെയ്യപ്പെട്ടേക്കാം."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"സിസ്റ്റം UI ട്യൂണർ"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"എംബഡ് ചെയ്‌ത ബാറ്ററി ശതമാനം കാണിക്കുക"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"എല്ലാ അറിയിപ്പുകളും ബ്ലോക്കുചെയ്യുക"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"നിശബ്ദമാക്കരുത്"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"നിശബ്ദമാക്കുകയോ ബ്ലോക്കുചെയ്യുകയോ അരുത്"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"പൂർണ്ണ പ്രാധാന്യ ക്രമീകരണം കാണിക്കുക"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"ബ്ലോക്കുചെയ്തു"</string>
-    <string name="min_importance" msgid="1901894910809414782">"കുറഞ്ഞ പ്രാധാന്യം"</string>
-    <string name="low_importance" msgid="4109929986107147930">"താഴ്ന്ന പ്രാധാന്യം"</string>
-    <string name="default_importance" msgid="8192107689995742653">"സാധാരണ പ്രാധാന്യം"</string>
-    <string name="high_importance" msgid="1527066195614050263">"ഉയർന്ന പ്രാധാന്യം"</string>
-    <string name="max_importance" msgid="5089005872719563894">"അടിയന്തര പ്രാധാന്യം"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"ഈ അറിയിപ്പുകൾ ഒരിക്കലും കാണിക്കരുത്"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"അറിയിപ്പ് ലിസ്റ്റിന്റെ താഴെ ശബ്ദമുണ്ടാക്കാതെ കാണിക്കുക"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"ഈ അറിയിപ്പുകൾ നിശബ്ദമായി കാണിക്കുക"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"ശബ്ദമുണ്ടാക്കാൻ ഈ അറിയിപ്പുകളെ അനുവദിക്കുക"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"സ്ക്രീനിൽ ദൃശ്യമാക്കുക, ശബ്ദമുണ്ടാക്കുക"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"അറിയിപ്പ് ലിസ്റ്റിന്റെ ഏറ്റവും മുകളിൽ കാണിക്കുക, ശബ്ദമുണ്ടാക്കുക"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"പവർ അറിയിപ്പ് നിയന്ത്രണങ്ങൾ"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"ഓൺ"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"ഓഫ്"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"പവർ അറിയിപ്പ് നിയന്ത്രണം ഉപയോഗിച്ച്, ഒരു ആപ്പിനായുള്ള അറിയിപ്പുകൾക്ക് 0 മുതൽ 5 വരെയുള്ള പ്രാധാന്യ ലെവലുകളിലൊന്ന് നിങ്ങൾക്ക് സജ്ജമാക്കാവുന്നതാണ്. \n\n"<b>"ലെവൽ 5"</b>" \n- അറിയിപ്പ് ലിസ്റ്റിന്റെ മുകളിൽ കാണിക്കുക \n- മുഴുവൻ സ്ക്രീൻ തടസ്സം അനുവദിക്കുക \n- എല്ലായ്പ്പോഴും ദൃശ്യമാക്കുക \n\n"<b>"ലെവൽ 4"</b>" \n- മുഴുവൻ സ്ക്രീൻ തടസ്സം തടയുക \n- എല്ലായ്പ്പോഴും ദൃശ്യമാക്കുക \n\n"<b>"ലെവൽ 3"</b>" \n- മുഴുവൻ സ്ക്രീൻ തടസ്സം തടയുക \n- ഒരിക്കലും സൃശ്യമാക്കരുത് \n\n"<b>"ലെവൽ 2"</b>" \n- മുഴുവൻ സ്ക്രീൻ തടസ്സം തടയുക \n- ഒരിക്കലും ദൃശ്യമാക്കരുത് \n- ഒരിക്കലും ശബ്ദവും വൈബ്രേഷനും ഉണ്ടാക്കരുത് \n\n"<b>"ലെവൽ 1"</b>" \n- മുഴുവൻ സ്ക്രീൻ തടസ്സം തടയുക \n- ഒരിക്കലും ദൃശ്യമാക്കരുത് \n- ഒരിക്കലും ശബ്ദവും വൈബ്രേഷനും ഉണ്ടാക്കരുത് \n- ലോക്ക് സ്ക്രീനിൽ നിന്നും സ്റ്റാറ്റസ് ബാറിൽ നിന്നും മറയ്ക്കുക \n- അറിയിപ്പ് ലിസ്റ്റിന്റെ അടിയിൽ കാണിക്കുക \n\n"<b>"ലെവൽ 0"</b>" \n- ആപ്പിൽ നിന്നുള്ള എല്ലാ അറിയിപ്പുകളും ബ്ലോക്കുചെയ്യുക"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"പ്രാധാന്യം: സ്വയമേവയുള്ളത്"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"പ്രാധാന്യം: ലെവൽ 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"പ്രാധാന്യം: ലെവൽ 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"പ്രാധാന്യം: ലെവൽ 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"പ്രാധാന്യം: ലെവൽ 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"പ്രാധാന്യം: ലെവൽ 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"പ്രാധാന്യം: ലെവൽ 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"ഓരോ അറിയിപ്പിനുമുള്ള പ്രാധാന്യം നിർണ്ണയിക്കുന്നത് ആപ്പാണ്."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"ഈ ആപ്പിൽ നിന്നുള്ള അറിയിപ്പ് കാണിക്കരുത്."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"എല്ലായ്പ്പോഴും ദൃശ്യമാക്കുക, മുഴുവൻ സ്ക്രീൻ തടസ്സം അനുവദിക്കുക. ലോക്ക് സ്ക്രീനിൽ നിന്നും സ്റ്റാറ്റസ് ബാറിൽ നിന്നും മറയ്ക്കുക."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"മുഴുവൻ സ്ക്രീൻ തടസ്സമോ ദൃശ്യമാക്കലോ ശബ്ദമോ വൈബ്രേഷനോ ഇല്ല."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"മുഴുവൻ സ്ക്രീൻ തടസ്സമോ ദൃശ്യമാകലോ ഇല്ല."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"എല്ലായ്പ്പോഴും ദൃശ്യമാക്കുക. മുഴുവൻ സ്ക്രീൻ തടസ്സമില്ല."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"എല്ലായ്പ്പോഴും ദൃശ്യമാക്കുക, മുഴുവൻ സ്ക്രീൻ തടസ്സം അനുവദിക്കുക."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"കൂടുതൽ ക്രമീകരണം"</string>
     <string name="notification_done" msgid="5279426047273930175">"പൂർത്തിയായി"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> അറിയിപ്പ് നിയന്ത്രണങ്ങൾ"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"മറ്റുള്ളവ"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"സ്പ്ലിറ്റ്-സ്ക്രീൻ ഡിവൈഡർ"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"താഴേക്ക് നീക്കുക"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"മുകളിലേക്ക് നീക്കുക"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"ഇടത്തേക്ക് നീക്കുക"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"വലത്തേക്ക് നീക്കുക"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"ഇടത് പൂർണ്ണ സ്ക്രീൻ"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"ഇടത് 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"ഇടത് 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"ഇടത് 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"വലത് പൂർണ്ണ സ്ക്രീൻ"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"മുകളിൽ പൂർണ്ണ സ്ക്രീൻ"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"മുകളിൽ 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"മുകളിൽ 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"മുകളിൽ 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"താഴെ പൂർണ്ണ സ്ക്രീൻ"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"സ്ഥാനം <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. എഡിറ്റുചെയ്യുന്നതിന് രണ്ടുതവണ ടാപ്പുചെയ്യുക."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. ചേർക്കാൻ രണ്ടുതവണ ടാപ്പുചെയ്യുക."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"സ്ഥാനം <xliff:g id="POSITION">%1$d</xliff:g>. തിരഞ്ഞെടുക്കാൻ രണ്ടുതവണ ടാപ്പുചെയ്യുക."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> നീക്കംചെയ്യുന്നു"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"സ്ഥാനം <xliff:g id="POSITION">%2$d</xliff:g>-ലേക്ക് <xliff:g id="TILE_NAME">%1$s</xliff:g> നീക്കി"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"ദ്രുത ക്രമീകരണ എഡിറ്റർ."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"സ്പ്ലിറ്റ്-സ്ക്രീനിനൊപ്പം ആപ്പ് പ്രവർത്തിച്ചേക്കില്ല."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"സ്പ്ലിറ്റ്-സ്ക്രീനിനെ ആപ്പ് പിന്തുണയ്ക്കുന്നില്ല."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"പേജ് <xliff:g id="ID_1">%1$d</xliff:g> / <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ml-rIN/strings_tv.xml b/packages/SystemUI/res/values-ml-rIN/strings_tv.xml
index 09fe4ce..843603c 100644
--- a/packages/SystemUI/res/values-ml-rIN/strings_tv.xml
+++ b/packages/SystemUI/res/values-ml-rIN/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"പ്ലേ ചെയ്യുക"</string>
     <string name="pip_pause" msgid="8412075640017218862">"തൽക്കാലം നിർത്തൂ"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP നിയന്ത്രിക്കാൻ "<b>"ഹോം"</b>" പിടിക്കുക"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP നിയന്ത്രിക്കാൻ ഹോം ബട്ടൺ അമർത്തിപ്പിടിക്കുക"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"മനസ്സിലായി"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"ഡിസ്മിസ് ചെയ്യുക"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-mn-rMN/strings.xml b/packages/SystemUI/res/values-mn-rMN/strings.xml
index e3fd349..2575cdc 100644
--- a/packages/SystemUI/res/values-mn-rMN/strings.xml
+++ b/packages/SystemUI/res/values-mn-rMN/strings.xml
@@ -116,6 +116,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Дата дохио дүүрэн."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g>-тай холбогдсон."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g>-тай холбогдсон."</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"<xliff:g id="CAST">%s</xliff:g>-д холбогдсон."</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX байхгүй."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX нэг багана."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX хоёр баганатай."</string>
@@ -146,12 +147,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM байхгүй."</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"Мобайл дата"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"Мобайл дата асаалттай"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Мобайл датаг унтраасан байна"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Блютүүт модем болж байна."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Нислэгийн горим"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM карт байхгүй."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Дамжуулагч сүлжээг өөрчилж байна."</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"Тэжээлийн дэлгэрэнгүй мэдээллийг нээх"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Батерей <xliff:g id="NUMBER">%d</xliff:g> хувьтай."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Тэжээлийг цэнэглэж байна, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> хувь."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Системийн тохиргоо."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Мэдэгдэл."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Мэдэгдлийг цэвэрлэх."</string>
@@ -189,9 +194,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Бүү саад болно уу.Зөвхөн чухал зүйлст."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Дуугүй байх. Бүү саад бол."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Бүү саад бол, зөвхөн сэрүүлгийг асаа."</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"Бүү саад бол."</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Бүү саад бол."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Идэвхгүй болгох үйлдэлд бүү саад бол."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Идэвхжүүлэх үйлдэлд бүү саад бол."</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"Bluetooth."</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Блютүүт идэвхгүй."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Блютүүт идэвхтэй."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Блютүүтийг холбож байна."</string>
@@ -245,7 +252,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Дэлгэц хэвтээ чиглэлд түгжигдсэн."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Дэлгэц босоо чиглэлд түгжигдсэн."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Амттаны хайрцаг"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Дэлгэц амраагч"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Этернет"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Бүү саад бол"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Зөвхөн чухал зүйлс"</string>
@@ -257,6 +264,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Хослуулсан төхөөрөмж байхгүй"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Тодрол"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Автоматаар эргэх"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"Дэлгэцийг автоматаар эргүүлэх"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"<xliff:g id="ID_1">%s</xliff:g> гэж тохируулсан"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Эргэлтийг түгжсэн"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Босоо"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Хэвтээ"</string>
@@ -275,6 +284,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Холбогдоогүй"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Сүлжээгүй"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi унтарсан"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"Wi-Fi асаалттай"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Wi-Fi сүлжээ байхгүй байна"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Дамжуулах"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Дамжуулж байна"</string>
@@ -309,8 +319,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g>-г эхлүүлж чадсангүй."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g>-г аюулгүй горимд идэвхгүй болгосон."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Бүгдийг арилгах"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Энэ апп олон цонхыг дэмждэггүй"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Апп олон цонхыг дэмждэггүй"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Апп дэлгэц хуваах тохиргоог дэмждэггүй"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Хуваагдсан дэлгэцийг ашиглахын тулд энд чирэх"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Хэвтээ чиглэлд хуваах"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Босоо чиглэлд хуваах"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Хүссэн хэлбэрээр хуваах"</string>
@@ -418,12 +428,13 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> нь дууны диалог юм."</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Анхны хувилбарыг эргүүлэн хадгалахыг хүсвэл хүрнэ үү."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Та өөрийн ажлын профайлыг ашиглаж байна"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Дууг нь нээхийн тулд товшино уу."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Чичиргээнд тохируулахын тулд товшино уу. Хүртээмжийн үйлчилгээний дууг хаасан."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Дууг нь хаахын тулд товшино уу. Хүртээмжийн үйлчилгээний дууг хаасан."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"Түвшний удирдлагыг нуусан"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"Системийн UI Тохируулагч"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Залгаатай тэжээлийн хувийг харуулах"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"Тэжээлийн хувийг цэнэглээгүй байх үед статусын хэсэгт харуулна уу"</string>
@@ -468,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"Бүх мэдэгдлийг блоклох"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Дуугүй болгох хэрэггүй"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Дууг нь хаах эсвэл блоклох хэрэггүй"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Бүрэн ач холбогдлын тохиргоог харуулах"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Блоклосон"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Хамгийн бага ач холбогдол"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Бага ач холбогдолтой"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Энгийн ач холбогдолтой"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Өндөр ач холбогдолтой"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Яаралтай ач холбогдолтой"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Эдгээр мэдэгдлийг хэзээ ч харуулахгүй"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Мэдэгдлийг жагсаалтын доод хэсэгт дуугүй харуулах"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Эдгээр мэдэгдлийг дуугүй харуулах"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Эдгээр мэдэгдлийг дуу гаргахыг зөвшөөрөх"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Дэлгэцэд яаралтайгаар дуутай гаргах"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Мэдэгдлийг жагсаалтын эхэнд яаралтай дуутай харуулах"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Тэжээлийн мэдэгдлийн удирдлага"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Идэвхтэй"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Идэвхгүй"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Тэжээлийн мэдэгдлийн удирдлагын тусламжтайгаар та апп-н мэдэгдэлд 0-5 хүртэлх ач холбогдлын төвшин тогтоох боломжтой. \n\n"<b>"5-р төвшин"</b>" \n- Мэдэгдлийн жагсаалтын хамгийн дээр харуулна \n- Бүтэн дэлгэцэд саад болно \n- Дэлгэцэд тогтмол гарч ирнэ \n\n"<b>"4-р төвшин"</b>" \n- Бүтэн дэлгэцэд саад болохоос сэргийлнэ \n- Дэлгэцэд тогтмол гарч ирнэ \n\n"<b>"3-р төвшин"</b>" \n- Бүтэн дэлгэцэд саад болохоос сэргийлнэ \n- Дэлгэцэд хэзээ ч гарч ирэхгүй \n\n"<b>"2-р төвшин"</b>" \n- Бүтэн дэлгэцэд саад болохоос сэргийлнэ \n- Дэлгэцэд хэзээ ч гарч ирэхгүй \n- Дуу болон чичиргээ хэзээ ч гаргахгүй \n\n"<b>"1-р төвшин"</b>" \n- Бүтэн дэлгэцэд саад болохоос сэргийлнэ \n- Дэлгэцэд хэзээ ч гарч ирэхгүй \n- Дуу болон чичиргээ хэзээ ч гаргахгүй \n- Түгжигдсэн дэлгэц болон статусын самбараас нууна \n- Мэдэгдлийн жагсаалтын доор харуулна \n\n"<b>"0-р төвшин"</b>" \n- Энэ апп-н бүх мэдэгдлийг блоклоно"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Ач холбогдол: Автомат"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Ач холбогдол: 0-р төвшин"</string>
+    <string name="min_importance" msgid="560779348928574878">"Ач холбогдол: 1-р төвшин"</string>
+    <string name="low_importance" msgid="7571498511534140">"Ач холбогдол: 2-р төвшин"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Ач холбогдол: 3-р төвшин"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Ач холбогдол: 4-р төвшин"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Ач холбогдол: 5-р төвшин"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Апп нь мэдэгдэл бүрийн ач холбогдлыг тодорхойлдог."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Энэ апп-н мэдэгдлийг хэзээ ч бүү харуул."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Бүтэн дэлгэцэд саадгүй, гарч ирэхгүй, дуугүй, чичиргээгүй. Түгжигдсэн дэлгэц, статусын хэсгээс нуух."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Бүтэн дэлгэцэд саад болохгүй, дэлгэцэд гарч ирэхгүй, дуугүй болон чичиргээгүй."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Бүтэн дэлгэцэд саад болохгүй бөгөөд дэлгэцэд гарч ирэхгүй."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Дэлгэцэд тогтмол гарч ирнэ. Бүтэн дэлгэцэд саад болохгүй."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Дэлгэцэд тогтмол гарч ирэх бөгөөд бүтэн дэлгэцэд саад болно."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Бусад тохиргоо"</string>
     <string name="notification_done" msgid="5279426047273930175">"Дууссан"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> мэдэгдлийн хяналт"</string>
@@ -595,10 +611,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Бусад"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"\"Дэлгэц хуваах\" хуваагч"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Доош зөөх"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Дээш зөөх"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Зүүн тийш зөөх"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Баруун тийш зөөх"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Зүүн талын бүтэн дэлгэц"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Зүүн 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Зүүн 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Зүүн 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Баруун талын бүтэн дэлгэц"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Дээд талын бүтэн дэлгэц"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Дээд 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Дээд 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Дээд 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Доод бүтэн дэлгэц"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Байршил <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Засахын тулд 2 удаа дарна уу."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Нэмэхийн тулд 2 удаа дарна уу."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Албан тушаал <xliff:g id="POSITION">%1$d</xliff:g>. Сонгохын тулд 2 удаа дарна уу."</string>
@@ -608,6 +630,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g>-г устгасан"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g>-г <xliff:g id="POSITION">%2$d</xliff:g> байршилд зөөсөн"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Түргэн тохиргоо засварлагч."</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"<xliff:g id="ID_1">%1$s</xliff:g> мэдэгдэл: <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Апп хуваагдсан дэлгэцэд ажиллахгүй."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Энэ апп нь дэлгэц хуваах тохиргоог дэмждэггүй."</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"Тохиргоог нээнэ үү."</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"Хурдан тохиргоог нээнэ үү."</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"Хурдан тохиргоог хаана уу."</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"Сэрүүлэг тавьсан."</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"<xliff:g id="ID_1">%s</xliff:g>-р нэвтэрсэн"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"Интернет байхгүй."</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"Дэлгэрэнгүй мэдээллийг нээнэ үү."</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"<xliff:g id="ID_1">%s</xliff:g> тохиргоог нээнэ үү."</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"Тохиргооны дарааллыг өөрчилнө үү."</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g>-н <xliff:g id="ID_1">%1$d</xliff:g>-р хуудас"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-mn-rMN/strings_tv.xml b/packages/SystemUI/res/values-mn-rMN/strings_tv.xml
index ca522d3..8c6ffbb 100644
--- a/packages/SystemUI/res/values-mn-rMN/strings_tv.xml
+++ b/packages/SystemUI/res/values-mn-rMN/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"Тоглуулах"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Түр зогсоох"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP-г удирдахын тулд "<b>"HOME"</b>" товчлуурыг дарна уу"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP-г удирдахын тулд НҮҮР ХУУДАС товчлуурыг дараад хүлээнэ үү"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"Зураг доторх зураг"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"Таныг өөр видео тоглуулах хүртэл таны видеог гаргасаар байх болно. Үүнийг удирдахын тулд "<b>"НҮҮР ХУУДАС"</b>" товчлуурыг дараад, хүлээнэ үү."</string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Ойлголоо"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Хаах"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-mr-rIN/strings.xml b/packages/SystemUI/res/values-mr-rIN/strings.xml
index 2cd5ed8..17c6a04 100644
--- a/packages/SystemUI/res/values-mr-rIN/strings.xml
+++ b/packages/SystemUI/res/values-mr-rIN/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"डेटा सिग्नल पूर्ण."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> शी कनेक्‍ट केले."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> शी कनेक्‍ट केले."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX नाही."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX एक बार."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX दोन बार."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"वाय-फाय"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"सिम नाही."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"मोबाइल डेटा बंद"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ब्लूटुथ टिथरिंग."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"विमान मोड."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"सिम कार्ड नाही."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"वाहक नेटवर्क बदलणे."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"बॅटरी <xliff:g id="NUMBER">%d</xliff:g> टक्के."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"बॅटरी चार्ज होत आहे, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> टक्के."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"सिस्‍टम सेटिंग्‍ज."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"सूचना."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"सूचना साफ करा."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"व्यत्यय आणू नका चालू, केवळ प्राधान्य."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"व्यत्यय आणू नका चालू, संपूर्ण शांतता."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"व्यत्यय आणू नका चालू, केवळ अलार्म."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"व्यत्यय आणू नका बंद."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"व्यत्यय आणू नका बंद करा"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"व्यत्यय आणू नका चालू करा"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"ब्लूटुथ बंद."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"ब्लूटुथ चालू."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"ब्लूटुथ कनेक्ट करत आहे."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"स्‍क्रीन आता भूदृश्य अभिमुखतेत लॉक केली आहे."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"स्क्रीन आता पोर्ट्रेट अभिमुखतेत लॉक केली आहे."</string>
     <string name="dessert_case" msgid="1295161776223959221">"मिष्ठान्न प्रकरण"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"डेड्रीम"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"स्क्रीन सेव्हर"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"इथरनेट"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"व्यत्यय आणू नका"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"केवळ प्राधान्य"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"कोणतेही जोडलेले डिव्हाइसेस उपलब्ध नाहीत"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"चमक"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"स्वयं-फिरवा"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"फिरविणे लॉक केले"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"पोर्ट्रेट"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"भूदृश्य"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"कनेक्ट केले नाही"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"नेटवर्क नाही"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"वाय-फाय बंद"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Wi-Fi नेटवर्क उपलब्‍ध नाहीत"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"कास्‍ट करा"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"कास्ट करत आहे"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> प्रारंभ करणे शक्य झाले नाही."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> सुरक्षित-मोडमध्ये अक्षम केला आहे."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"सर्व साफ करा"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"हा अॅप एकाधिक-विंडोला समर्थन देत नाही"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"अॅप एकाधिक-विंडोला समर्थन देत नाही"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"अॅप विभाजित स्क्रीनला समर्थन देत नाही"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"विभाजित स्क्रीन वापर करण्यासाठी येथे ड्रॅग करा"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"क्षैतिज विभाजित करा"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"अनुलंब विभाजित करा"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"सानुकूल विभाजित करा"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> हा व्हॉल्यूम संवाद आहे"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"मूळ पुनर्संचयित करण्यासाठी स्पर्श करा."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"आपण आपले कार्य प्रोफाईल वापरत आहात"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. सशब्द करण्यासाठी टॅप करा."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. कंपन सेट करण्यासाठी टॅप करा. प्रवेशयोग्यता सेवा नि:शब्द केल्या जाऊ शकतात."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. नि:शब्द करण्यासाठी टॅप करा. प्रवेशक्षमता सेवा नि:शब्द केल्या जाऊ शकतात."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"सिस्टीम UI ट्यूनर"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"एम्बेडेड बॅटरी टक्केवारी दर्शवा"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"सर्व सूचना अवरोधित करा"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"शांत करू नका"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"शांत किंवा अवरोधित करू नका"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"पूर्ण महत्त्व सेटिंग्ज दर्शवा"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"अवरोधित केले"</string>
-    <string name="min_importance" msgid="1901894910809414782">"किमान महत्त्व"</string>
-    <string name="low_importance" msgid="4109929986107147930">"कमी महत्त्व"</string>
-    <string name="default_importance" msgid="8192107689995742653">"सामान्य महत्त्व"</string>
-    <string name="high_importance" msgid="1527066195614050263">"सर्वाधिक महत्व"</string>
-    <string name="max_importance" msgid="5089005872719563894">"त्वरित महत्त्व"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"या सूचना कधीही दर्शवू नका"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"सूचना सूचीच्या तळाशी शांतपणे दर्शवा"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"या सूचना शांतपणे दर्शवा"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"या सूचनांना ध्वनी चालू करण्याची अनुमती द्या"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"स्क्रीनवर पहा आणि ध्वनीस अनुमती द्या ध्वनीस अनुमती द्या"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"सूचनांच्या शीर्षस्थानी दर्शवा, स्क्रीनवर पहा आणि ध्वनीस अनुमती द्या"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"उर्जा सूचना नियंत्रणे"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"चालू"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"बंद"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"उर्जा सूचना नियंत्रणांसह, आपण अॅपच्या सूचनांसाठी महत्त्व स्तर 0 ते 5 पर्यंत सेट करू शकता. \n\n"<b>"स्तर 5"</b>" \n- सूचना सूचीच्या शीर्षस्थानी दर्शवा \n- पूर्ण स्क्रीन व्यत्ययास अनुमती द्या \n- नेहमी डोकावून पहा \n\n"<b>"स्तर 4"</b>" \n- पूर्ण स्क्रीन व्यत्ययास प्रतिबंधित करा \n- नेहमी डोकावून पहा \n\n"<b>"स्तर 3"</b>" \n- पूर्ण स्क्रीन व्यत्ययास प्रतिबंधित करा \n- कधीही डोकावून पाहू नका \n\n"<b>"स्तर 2"</b>" \n- पूर्ण स्क्रीन व्यत्ययास प्रतिबंधित करा \n- कधीही डोकावून पाहू नका \n- कधीही ध्वनी किंवा कंपन करू नका \n\n"<b>"स्तर 1"</b>" \n- पूर्ण स्क्रीन व्यत्ययास प्रतिबंधित करा \n- कधीही डोकावून पाहू नका \n- कधीही ध्वनी किंवा कंपन करू नका \n- लॉक स्क्रीन आणि स्टेटस बार मधून लपवा \n- सूचना सूचीच्या तळाशी दर्शवा \n\n"<b>"स्तर 0"</b>" \n- अॅपमधील सर्व सूचना अवरोधित करा"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"महत्त्व: स्वयंचलित"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"महत्त्व: स्तर 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"महत्त्व: स्तर 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"महत्त्व: स्तर 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"महत्त्व: स्तर 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"महत्त्व: स्तर 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"महत्त्व: स्तर 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"अॅप प्रत्येक सूचनेसाठी महत्त्व निर्धारित करतो."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"या अॅपमधील सूचना कधीही दर्शवू नका."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"पूर्ण स्क्रीन व्यत्यय, डोकावून पाहणे, ध्वनी किंवा कंपन नाही. लॉक स्क्रीन आणि स्टेटस बार मधून लपवा."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"पूर्ण स्क्रीन व्यत्यय, डोकावून पाहणे, ध्वनी किंवा कंपन नाही."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"पूर्ण स्क्रीन व्यत्यय किंवा डोकावणे नाही."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"नेहमी डोकावून पहा. पूर्ण स्क्रीन व्यत्यय नाही."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"नेहमी डोकावून पहा आणि पूर्ण स्क्रीन व्यत्ययास परवानगी द्या."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"अधिक सेटिंग्ज"</string>
     <string name="notification_done" msgid="5279426047273930175">"पूर्ण झाले"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> सूचना नियंत्रणे"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"अन्य"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"विभाजित-स्क्रीन विभाजक"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"खाली हलवा"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"वर हलवा"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"डावीकडे हलवा"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"उजवीकडे हलवा"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"डावी पूर्ण स्क्रीन"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"डावी 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"डावी 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"डावी 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"उजवी पूर्ण स्क्रीन"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"शीर्ष पूर्ण स्क्रीन"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"शीर्ष 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"शीर्ष 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"शीर्ष 10"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"तळाशी पूर्ण स्क्रीन"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"स्थिती <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. संपादित करण्यासाठी दोनदा टॅप करा."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g> . जोडण्यासाठी दोनदा टॅप करा."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"स्थिती <xliff:g id="POSITION">%1$d</xliff:g>. निवडण्यासाठी दोनदा टॅप करा."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ला काढले आहे"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ला <xliff:g id="POSITION">%2$d</xliff:g> स्थितीवर हलविले"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"द्रुत सेटिंग्ज संपादक."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"अॅप कदाचित विभाजित-स्क्रीनसह कार्य करू शकत नाही."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"अॅप स्क्रीन-विभाजनास समर्थन देत नाही."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"पृष्ठ <xliff:g id="ID_2">%2$d</xliff:g> पैकी <xliff:g id="ID_1">%1$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-mr-rIN/strings_tv.xml b/packages/SystemUI/res/values-mr-rIN/strings_tv.xml
index 318e3e9..19c9405 100644
--- a/packages/SystemUI/res/values-mr-rIN/strings_tv.xml
+++ b/packages/SystemUI/res/values-mr-rIN/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"प्ले करा"</string>
     <string name="pip_pause" msgid="8412075640017218862">"विराम द्या"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP नियंत्रित करण्यासाठी "<b>"मुख्यपृष्ठ"</b>" धरून ठेवा"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP नियंत्रित करण्यासाठी मुख्यपृष्ठ बटण दाबा आणि धरून ठेवा"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"समजले"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"डिसमिस करा"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ms-rMY/strings.xml b/packages/SystemUI/res/values-ms-rMY/strings.xml
index e11f7ff..a426442 100644
--- a/packages/SystemUI/res/values-ms-rMY/strings.xml
+++ b/packages/SystemUI/res/values-ms-rMY/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Isyarat data penuh."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Disambungkan kepada <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Disambungkan kepada <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Tiada WiMAX"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX satu bar."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX dua bar."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Tiada SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Data Selular Dimatikan"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Penambatan Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Mod pesawat"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Tiada kad SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Perubahan rangkaian pembawa."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Bateri <xliff:g id="NUMBER">%d</xliff:g> peratus."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Bateri mengecas, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> peratus."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Tetapan sistem."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Pemberitahuan."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Padamkan pemberitahuan."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Jangan ganggu dihidupkan, perkara penting sahaja."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Jangan ganggu dihidupkan, senyap sepenuhnya."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Jangan ganggu dihidupkan, penggera sahaja."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Jangan ganggu dimatikan."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Jangan ganggu dimatikan."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Jangan ganggu dihidupkan."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth dimatikan."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth dihidupkan."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth menyambung."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Skrin kini dikunci dalam orientasi landskap."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Skrin kini dikunci dalam orientasi potret."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Bekas Pencuci Mulut"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Lamun"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Penyelamat skrin"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Jangan ganggu"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Keutamaan sahaja"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Tiada peranti berpasangan tersedia"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Kecerahan"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Autoputar"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Putaran dikunci"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Potret"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Landskap"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Tidak Disambungkan"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Tiada Rangkaian"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi Dimatikan"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Tiada rangkaian Wi-Fi tersedia"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Hantar"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Menghantar"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Tidak dapat memulakan <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> dilumpuhkan dalam mod selamat."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Kosongkan semua"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Apl ini tidak menyokong berbilang tetingkap"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Apl tidak menyokong berbilang tetingkap"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Apl tidak menyokong skrin pisah"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Seret ke sini untuk menggunakan skrin pisah"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Mendatar Terpisah"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Menegak Terpisah"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Tersuai Terpisah"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> ialah dialog kelantangan"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Sentuh untuk memulihkan yang asal."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Anda sedang menggunakan profil kerja"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Ketik untuk menyahredam."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Ketik untuk menetapkan pada getar. Perkhidmatan kebolehaksesan mungkin diredamkan."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Ketik untuk meredam. Perkhidmatan kebolehaksesan mungkin diredamkan."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Penala UI Sistem"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Tunjukkan peratusan bateri terbenam"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Sekat semua pemberitahuan"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Jangan senyapkan"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Jangan senyapkan atau sekat"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Tunjukkan tetapan kepentingan penuh"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Disekat"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Kurang penting"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Kepentingan rendah"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Kepentingan biasa"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Kepentingan tinggi"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Kepentingan segera"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Jangan sekali-kali tunjukkan pemberitahuan ini"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Tunjukkan pada bahagian bawah senarai pemberitahuan secara senyap"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Tunjukkan pemberitahuan ini secara senyap"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Benarkan pemberitahuan ini berbunyi"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Intai pada skrin dan benarkan bunyi"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Tunjukkan pada bahagian atas senarai pemberitahuan, intai pada skrin dan benarkan bunyi"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Kawalan pemberitahuan berkuasa"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Hidup"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Mati"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Dengan kawalan pemberitahuan berkuasa, anda boleh menetapkan tahap kepentingan dari 0 hingga 5 untuk pemberitahuan apl. \n\n"<b>"Tahap 5"</b>" \n- Tunjukkan pada bahagian atas senarai pemberitahuan \n- Benarkan gangguan skrin penuh \n- Sentiasa intai \n\n"<b>"Tahap 4"</b>" \n- Halang gangguan skrin penuh \n- Sentiasa intai \n\n"<b>"Tahap 3"</b>" \n- Halang gangguan skrin penuh \n- Jangan intai \n\n"<b>"Tahap 2"</b>" \n- Halang gangguan skrin penuh \n- Jangan intai \n- Jangan berbunyi dan bergetar \n\n"<b>"Tahap 1"</b>" \n- Halang gangguan skrin penuh \n- Jangan intai \n- Jangan berbunyi atau bergetar \n- Sembunyikan daripada skrin kunci dan bar status \n- Tunjukkan di bahagian bawah senarai pemberitahuan \n\n"<b>"Tahap 0"</b>" \n- Sekat semua pemberitahuan daripada apl"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Kepentingan: Automatik"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Kepentingan: Tahap 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Kepentingan: Tahap 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Kepentingan: Tahap 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Kepentingan: Tahap 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Kepentingan: Tahap 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Kepentingan: Tahap 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Apl menentukan kepentingan setiap pemberitahuan."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Jangan sekali-kali tunjukkan pemberitahuan daripada apl ini."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Tiada gangguan skrin penuh, intaian, bunyi, getaran. Sembunyikan daripada skrin kunci &amp; bar status."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Tiada gangguan skrin penuh, intaian, bunyi atau getaran."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Tiada gangguan skrin penuh atau intaian."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Sentiasa intai. Tiada gangguan skrin penuh."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Sentiasa intai dan benarkan gangguan skrin penuh."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Lagi tetapan"</string>
     <string name="notification_done" msgid="5279426047273930175">"Selesai"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Kawalan pemberitahuan <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Lain-lain"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Pembahagi skrin pisah"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Alih ke bawah"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Alih ke atas"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Alih ke kiri"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Alih ke kanan"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Skrin penuh kiri"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Kiri 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Kiri 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Kiri 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Skrin penuh kanan"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Skrin penuh atas"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Atas 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Atas 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Atas 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Skrin penuh bawah"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Kedudukan <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Dwiketik untuk mengedit."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Dwiketik untuk menambah."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Kedudukan <xliff:g id="POSITION">%1$d</xliff:g>. Dwiketik untuk memilih."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> dialih keluar"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> dialihkan ke kedudukan <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor tetapan pantas."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Apl mungkin tidak berfungsi dengan skrin pisah."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Apl tidak menyokong skrin pisah."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Halaman <xliff:g id="ID_1">%1$d</xliff:g> daripada <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ms-rMY/strings_tv.xml b/packages/SystemUI/res/values-ms-rMY/strings_tv.xml
index eb5af9e3..6cb4113 100644
--- a/packages/SystemUI/res/values-ms-rMY/strings_tv.xml
+++ b/packages/SystemUI/res/values-ms-rMY/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Main"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Jeda"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Thn "<b>"SKRN UTMA"</b>" utk kwl PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Tekan dan tahan butang SKRIN UTAMA untuk mengawal PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Ketepikan"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-my-rMM/strings.xml b/packages/SystemUI/res/values-my-rMM/strings.xml
index 67ce1fc..023bb3a0 100644
--- a/packages/SystemUI/res/values-my-rMM/strings.xml
+++ b/packages/SystemUI/res/values-my-rMM/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"ဒေတာထုတ်လွှင့်မှုအပြည့်ဖမ်းမိခြင်း"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g>သို့ ချိတ်ဆက်ထား။"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g>သို့ ချိတ်ဆက်ထား"</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"<xliff:g id="CAST">%s</xliff:g> သို့ချိတ်ဆက်ထားပါသည်။"</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"ဝိုက်မက်စ် မရှိပါ"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"ဝိုက်မက်စ် ၁ ဘား"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"ဝိုင်မက်စ် ၂ ဘားရှိ"</string>
@@ -148,12 +149,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"ဝိုင်ဖိုင်"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"ဆင်းကဒ်မရှိပါ။"</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"ဆဲလ်လူလာ ဒေတာ"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"ဆဲလ်လူလာ ဒေတာ ဖွင့်ထားသည်"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"ဆဲလ်လူလာဒေတာပိတ်ထားသည်"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ဘလူးတုသ်မှတဆင့်ပြန်လည်ချိတ်ဆက်ခြင်း"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"လေယာဥ်ပျံပေါ်အသုံးပြုသောစနစ်။"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM ကဒ် မရှိပါ"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"ဝန်ဆောင်မှုဌာန ကွန်ယက် ပြောင်းလဲနေစဉ်။"</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"ဘက်ထရီ အသေးစိတ် အချက်အလက်များကို ဖွင့်ပါ"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"ဘတ္တရီ <xliff:g id="NUMBER">%d</xliff:g> ရာခိုင်နှုန်း။"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"ဘက်ထရီအားသွင်းနေသည်၊ <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> ရာခိုင်နှုန်း။"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"စနစ်အပြင်အဆင်များ"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"အကြောင်းကြားချက်များ။"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"သတိပေးချက်အား ဖယ်ရှားခြင်း။"</string>
@@ -191,9 +196,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"မနှောင့်ယှက်ပါနှင့် ဖွင့်ထားသည်၊ ဦးစားပေးများသာ။"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"လုံးဝ တိတ်ဆိတ်နေစဉ်၊ မနှောင့်ယှက်ပါနှင့်။"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"အနှောင့်ယှက်ရ ဖွင့်ထားသည်။ နှိုးစက်များသာ။"</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"မနှောက်ယှက်ရ။"</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"မနှောင့်ယှက်ပါနှင့် ကိုပိတ်ထားသည်။"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"မနှောင့်ယှက်ပါနှင့် ကိုပိတ်ထားသည်။"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"မနှောင့်ယှက်ပါနှင့်ကို ဖွင့်ထားသည်။"</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"ဘလူးတုသ်။"</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"ဘလူးတုသ် ပိတ်ထား."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"ဘလူးတုသ် ဖွင့်ထား။"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"ဘလူးတုသ် ချိတ်ဆက်နေ။"</string>
@@ -247,7 +254,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"မျက်နှာပြင် အနေအထားကို ဘေးတိုက် အဖြစ် သော့ချထားသည်။"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"မျက်နှာပြင် အနေအထားကို ဒေါင်လိုက် အဖြစ် သော့ချထားသည်။"</string>
     <string name="dessert_case" msgid="1295161776223959221">"မုန့်ထည့်သော ပုံး"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"ဒေးဒရင်းမ်"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"ဖန်သားပြင်အသုံးပြုမှု ချွေတာမှုစနစ်"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"အီသာနက်"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"မနှောက်ယှက်ပါနှင့်"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"ဦးစားပေးများသာ"</string>
@@ -259,6 +266,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"ချိတ်တွဲထားသည့် ကိရိယာများ မရှိ"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"အလင်းတောက်ပမှု"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"အော်တို-လည်"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"မျက်နှာပြင်အား အလိုအလျောက်လှည့်ခြင်း"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"<xliff:g id="ID_1">%s</xliff:g> သို့သတ်မှတ်ပါ"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"လည်မှု သော့ပိတ်ထား"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"ဒေါင်လိုက်"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"ဘေးတိုက်"</string>
@@ -277,6 +286,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"ချိတ်ဆက်မထားပါ"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"ကွန်ရက်မရှိပါ"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"ဝိုင်ဖိုင်ပိတ်ရန်"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"Wi-Fi ကိုဖွင့်ပါ"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"ဝိုင်ဖိုင်ကွန်ရက် မရနိုင်ပါ"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Cast"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"ကာစ်တင်"</string>
@@ -311,8 +321,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> ကို မစနိုင်ပါ။"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> ကို ဘေးကင်းလုံခြုံသည့်မုဒ်တွင် ပိတ်ထားပါသည်။"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"အားလုံး ရှင်းလင်းပါ"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"ဤအက်ပ်သည် ဝင်းဒိုးများစွာဖွင့်ခြင်းကို ပံ့ပိုးမထားပါ"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"အက်ပ်သည် ဝင်းဒိုးများစွာဖွင့်ခြင်းကို ပံ့ပိုးမထားပါ"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"အက်ပ်သည် မျက်နှာပြင်ခွဲ၍ ပြသခြင်းကို ပံ့ပိုးမထားပါ"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"မျက်နှာပြင် ခွဲခြမ်းပြသခြင်းကို အသုံးပြုရန် ဤနေရာသို့ ပွတ်၍ဆွဲထည့်ပါ"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"ရေပြင်ညီ ပိုင်းမည်"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"ဒေါင်လိုက်ပိုင်းမည်"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"စိတ်ကြိုက် ပိုင်းမည်"</string>
@@ -420,12 +430,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> သည် အသံဒိုင်ယာလော့ခ်ဖြစ်သည်"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"မူရင်းအားပြန်လည်သိမ်းဆည်းရန် ထိပါ။"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"သင်သည် အလုပ်ပရိုဖိုင်းအား သုံးနေသည်"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s။ အသံပြန်ဖွင့်ရန် တို့ပါ။"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s။ တုန်ခါမှုကို သတ်မှတ်ရန် တို့ပါ။ အများသုံးစွဲနိုင်မှု ဝန်ဆောင်မှုများကို အသံပိတ်ထားနိုင်ပါသည်။"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s။ အသံပိတ်ရန် တို့ပါ။ အများသုံးစွဲနိုင်မှု ဝန်ဆောင်မှုများကို အသံပိတ်ထားနိုင်ပါသည်။"</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"အသံအတိုးအလျှော့ခလုတ် %s ပြသထားပါသည်။ ပယ်ဖျက်ရန် ပွတ်ဆွဲပါ။"</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"အသံအတိုးအလျှော့ခလုတ်များကို ဝှက်ထားပါသည်"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"စနစ် UI ဖမ်းစက်"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"မြုတ်ထားသည့် ဘတ်ထရီ ရာခိုင်နှုန်းကို ပြပါ"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"အားမသွင်းနေစဉ်တွင် ဘတ်ထရီအဆင့် ရာခိုင်နှုန်းကို အခြေနေပြဘား အိုင်ကွန်တွင် ပြပါ"</string>
@@ -470,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"သတိပေးချက်များအားလုံးကို ပိတ်ဆို့ပါ"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"အသံ မတိတ်ပါနှင့်"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"အသံ မတိတ်ပါနှင့် သို့မဟုတ် မပိတ်ဆို့ပါနှင့်"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"အပြည့်အဝအရေးပါသည့် ဆက်တင်များကိုပြပါ"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"ပိတ်ဆို့ထားသည်"</string>
-    <string name="min_importance" msgid="1901894910809414782">"အနည်းဆုံး အရေးပါမှု"</string>
-    <string name="low_importance" msgid="4109929986107147930">"အနည်းငယ်သာ အရေးပါသည်"</string>
-    <string name="default_importance" msgid="8192107689995742653">"သာမန်သာ အရေးပါသည်"</string>
-    <string name="high_importance" msgid="1527066195614050263">"အလွန်အရေးပါသည်"</string>
-    <string name="max_importance" msgid="5089005872719563894">"အရေးတကြီး အရေးပါသည်"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"ဤသတိပေးချက်များကို ဘယ်တော့မှမပြပါနှင့်"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"သတိပေးချက်စာရင်း၏ အောက်ဆုံးတွင် တိတ်ဆိတ်စွာပြပါ"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"ဤသတိပေးချက်များကို တိတ်ဆိတ်စွာပြပါ"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"ဤသတိပေးချက်များကို အသံထွက်ခွင့်ပြုပါ"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"ဖန်သားပြင်ပေါ်တွင် ပေါ်စေပြီး အသံထွက်ခွင့်ပြုပါ"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"သတိပေးချက်စာရင်း၏ ထိပ်ဆုံးတွင်ပြပြီး ဖန်သားပြင်ပေါ်တွင် ပေါ်စေကာ အသံထွက်ခွင့်ပြုပါ"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"ပါဝါအကြောင်းကြားချက် ထိန်းချုပ်မှုများ"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"ဖွင့်ပါ"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"ပိတ်ပါ"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"ပါဝါအကြောင်းကြားချက် ထိန်းချုပ်မှုများကိုအသုံးပြုပြီး အက်ပ်တစ်ခု၏ အကြောင်းကြားချက် အရေးပါမှု ၀ မှ ၅ အထိသတ်မှတ်ပေးနိုင်သည်။ \n\n"<b>"အဆင့် ၅"</b>" \n- အကြောင်းကြားချက်စာရင်း၏ ထိပ်ဆုံးတွင် ပြသည် \n- မျက်နှာပြင်အပြည့် ကြားဖြတ်ဖော်ပြခြင်းကို ခွင့်ပြုသည် \n- အမြဲတမ်း ခေတ္တပြပါမည် \n\n"<b>"အဆင့် ၄"</b>" \n- မျက်နှာပြင်အပြည့် ကြားဖြတ်ဖော်ပြခြင်း မရှိစေရန် ကာကွယ်ပေးသည် \n- အမြဲတမ်း ခေတ္တပြပါမည် \n\n"<b>"အဆင့် ၃"</b>" \n- မျက်နှာပြင်အပြည့် ကြားဖြတ်ဖော်ပြခြင်း မရှိစေရန် ကာကွယ်ပေးသည် \n- ဘယ်တော့မှ ခေတ္တပြခြင်း မရှိပါ \n\n"<b>"အဆင့် ၂"</b>" \n- မျက်နှာပြင်အပြည့် ကြားဖြတ်ဖော်ပြခြင်း မရှိစေရန် ကာကွယ်ပေးသည် \n- ဘယ်တော့မှ ခေတ္တပြခြင်း မရှိပါ \n- အသံမြည်ခြင်းနှင့် တုန်ခါခြင်းများ ဘယ်တော့မှ မပြုလုပ်ပါ \n\n"<b>"အဆင့် ၁"</b>" \n- မျက်နှာပြင်အပြည့် ကြားဖြတ်ဖော်ပြခြင်း မရှိစေရန် ကာကွယ်ပေးသည် \n- ဘယ်တော့မှ ခေတ္တပြခြင်း မရှိပါ \n- အသံမြည်ခြင်းနှင့် တုန်ခါခြင်းများ ဘယ်တော့မှ မပြုလုပ်ပါ \n- လော့ခ်ချထားသည့် မျက်နှာပြင်နှင့် အခြေအနေဘားတန်းတို့တွင် မပြပါ \n- အကြောင်းကြားချက်စာရင်း အောက်ဆုံးတွင်ပြသည် \n\n"<b>"အဆင့် ၀"</b>" \n- အက်ပ်မှ အကြောင်းကြားချက်များ အားလုံးကို ပိတ်ဆို့သည်"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"အရေးပါမှု − အလိုအလျောက်"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"အရေးပါမှု − အဆင့် ၀"</string>
+    <string name="min_importance" msgid="560779348928574878">"အရေးပါမှု − အဆင့် ၁"</string>
+    <string name="low_importance" msgid="7571498511534140">"အရေးပါမှု − အဆင့် ၂"</string>
+    <string name="default_importance" msgid="7609889614553354702">"အရေးပါမှု − အဆင့် ၃"</string>
+    <string name="high_importance" msgid="3441537905162782568">"အရေးပါမှု − အဆင့် ၄"</string>
+    <string name="max_importance" msgid="4880179829869865275">"အရေးပါမှု − အဆင့် ၅"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"အကြောင်းကြားချက်တစ်ခုစီ၏ အရေးပါမှုကို အက်ပ်မှ ဆုံးဖြတ်သည်။"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"ဤအက်ပ်မှ အကြောင်းကြားချက်များကို ဘယ်တော့မှ မပြပါနှင့်။"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"မျက်နှာပြင်အပြည့် ကြားဖြတ်ဖော်ပြခြင်း၊ ခေတ္တပြခြင်း၊ အသံမြည်ခြင်း သို့မဟုတ် တုန်ခါခြင်းတို့ မရှိပါ။ လော့ခ်ချထားသည့် မျက်နှာပြင်နှင့် အခြေအနေဘားတန်းတို့တွင် မပြပါ။"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"မျက်နှာပြင်အပြည့် ကြားဖြတ်ဖော်ပြခြင်း၊ ခေတ္တပြခြင်း၊ အသံမြည်ခြင်း သို့မဟုတ် တုန်ခါခြင်းတို့ မရှိပါ။"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"မျက်နှာပြင်အပြည့် ကြားဖြတ်ဖော်ပြခြင်း သို့မဟုတ် ခေတ္တပြခြင်းတို့ မရှိပါ။"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"အမြဲတမ်း ခေတ္တပြပါမည်။ မျက်နှာပြင်အပြည့် ကြားဖြတ်ဖော်ပြခြင်း မရှိပါ။"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"အမြဲတမ်း ခေတ္တပြပြီး မျက်နှာပြင်အပြည့် ကြားဖြတ်ဖော်ပြခြင်းကို ခွင့်ပြုပါသည်။"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"နောက်ထပ် ဆက်တင်များ"</string>
     <string name="notification_done" msgid="5279426047273930175">"ပြီးပါပြီ"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> အကြောင်းကြားချက် ထိန်းချုပ်မှုများ"</string>
@@ -597,10 +611,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"အခြား"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"မျက်နှာပြင်ခွဲခြမ်း ပိုင်းခြားပေးသည့်စနစ်"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"အောက်သို့ရွှေ့ပါ"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"အပေါ်သို့ရွှေ့ပါ"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"ဘယ်ဘက်သို့ရွှေ့ပါ"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"ညာဘက်သို့ရွှေ့ပါ"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"ဘယ်ဘက် မျက်နှာပြင်အပြည့်"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"ဘယ်ဘက်မျက်နှာပြင် ၇၀%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"ဘယ်ဘက် မျက်နှာပြင် ၅၀%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"ဘယ်ဘက် မျက်နှာပြင် ၃၀%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"ညာဘက် မျက်နှာပြင်အပြည့်"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"အပေါ်ဘက် မျက်နှာပြင်အပြည့်"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"အပေါ်ဘက် မျက်နှာပြင် ၇၀%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"အပေါ်ဘက် မျက်နှာပြင် ၅၀%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"အပေါ်ဘက် မျက်နှာပြင် ၃၀%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"အောက်ခြေ မျက်နှာပြင်အပြည့်"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g>၊ <xliff:g id="TILE_NAME">%2$s</xliff:g> နေရာ။ တည်းဖြတ်ရန် နှစ်ချက်တို့ပါ။"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>။ ပေါင်းထည့်ရန် နှစ်ချက်တို့ပါ။"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g> နေရာ။ ရွေးချယ်ရန် နှစ်ချက်တို့ပါ။"</string>
@@ -610,6 +630,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ကိုဖယ်ရှားလိုက်ပါပြီ"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ကို <xliff:g id="POSITION">%2$d</xliff:g> နေရာသို့ ရွှေ့လိုက်ပါပြီ"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"မြန်ဆန်သည့် ဆက်တင်တည်းဖြတ်စနစ်"</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"<xliff:g id="ID_1">%1$s</xliff:g> အကြောင်းကြားချက် − <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"မျက်နှာပြင် ခွဲခြမ်းပြသမှုဖြင့် အက်ပ်သည် အလုပ်လုပ်မည် မဟုတ်ပါ။"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"အက်ပ်သည် မျက်နှာပြင်ခွဲပြရန် ပံ့ပိုးထားခြင်းမရှိပါ။"</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"ဆက်တင်များကို ဖွင့်ပါ။"</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"အမြန်ဆက်တင်များကို ဖွင့်ပါ။"</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"အမြန်ဆက်တင်များကို ပိတ်ပါ။"</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"နိုးစက် သတ်မှတ်ပြီးပါပြီ။"</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"<xliff:g id="ID_1">%s</xliff:g> အဖြစ် လက်မှတ်ထိုးဝင်ထားသည်။"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"အင်တာနက် မရှိပါ။"</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"အသေးစိတ်များကို ဖွင့်ပါ။"</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"<xliff:g id="ID_1">%s</xliff:g> ဆက်တင်များကို ဖွင့်ပါ။"</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"ဆက်တင်များ၏ အစီအစဉ်ကို တည်းဖြတ်ပါ။"</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"စာမျက်နှာ <xliff:g id="ID_2">%2$d</xliff:g> အနက်မှ စာမျက်နှာ <xliff:g id="ID_1">%1$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-my-rMM/strings_tv.xml b/packages/SystemUI/res/values-my-rMM/strings_tv.xml
index ffb0d90..f661d6e 100644
--- a/packages/SystemUI/res/values-my-rMM/strings_tv.xml
+++ b/packages/SystemUI/res/values-my-rMM/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"ဖွင့်ပါ"</string>
     <string name="pip_pause" msgid="8412075640017218862">"ဆိုင်းငံ့ပါ"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP ကိုထိန်းချုပ်ရန် "<b>"ပင်မ"</b>" ခလုတ်ကို ဖိထားပါ"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP ကိုထိန်းချုပ်ရန် ပင်မခလုတ်ကို နှိပ်ပြီးဖိထားပါ"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"ပုံထဲမှပုံ"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"အခြားတစ်ခုမဖွင့်မချင်း ၎င်းသည် သင့်ဗီဒီယိုကို ပြသထားပါမည်။ ၎င်းကိုထိန်းချုပ်ရန် "<b>"ပင်မ"</b>" ခလုတ်ကို နှိပ်ပြီးဖိထားပါ။"</string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"ရပါပြီ"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"ပယ်ပါ"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-nb/strings.xml b/packages/SystemUI/res/values-nb/strings.xml
index 6d68342..b572111 100644
--- a/packages/SystemUI/res/values-nb/strings.xml
+++ b/packages/SystemUI/res/values-nb/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Datasignal er fullt."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Koblet til <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Koblet til <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Ingen WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX – én stolpe."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX – to stolper."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Uten SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobildata er av"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth-internettdeling."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Flymodus."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Mangler SIM-kort."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Bytting av operatørnettverk."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Batteri – <xliff:g id="NUMBER">%d</xliff:g> prosent."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Batteriet lades – <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> prosent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Systeminnstillinger."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Varsler."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Fjern varsling"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"«Ikke forstyrr» er på – bare prioritert."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Ikke forstyrr er slått på, full stillhet."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Ikke forstyrr er på – bare alarmer."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"«Ikke forstyrr» er av."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"«Ikke forstyrr» er slått av."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"«Ikke forstyrr» er slått på."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth er av."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth er på."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth kobler til."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Skjermen er nå låst i liggende retning."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Skjermen er nå låst i stående retning."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessertmonter"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Dagdrøm"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Skjermsparer"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"«Ikke forstyrr»"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Bare prioritet"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Ingen sammenkoblede enheter er tilgjengelige"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Lysstyrke"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotér automatisk"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotasjonen er låst"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portrett"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Landskap"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Ikke tilkoblet"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Ingen nettverk"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi er av"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Ingen Wi-Fi-nettverk er tilgjengelige"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Cast"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Casting"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Kunne ikke starte <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> er slått av i sikker modus."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Tøm alt"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Denne appen har ikke støtte for flervindusmodus"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Appen har ikke støtte for flervindusmodus"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Appen støtter ikke delt skjerm"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Dra hit for å bruke delt skjerm"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Del horisontalt"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Del vertikalt"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Del tilpasset"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> er volumdialogen"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Trykk for å gå tilbake til den opprinnelige volumdialogen."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Du bruker jobbprofilen din"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Trykk for å slå på lyden."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Trykk for å angi vibrasjon. Lyden kan bli slått av for tilgjengelighetstjenestene."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Trykk for å slå av lyden. Lyden kan bli slått av for tilgjengelighetstjenestene."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Vis prosent for det innebygde batteriet"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Blokkér alle varsler"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ikke slå av lyden"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ikke slå av lyden eller blokkér anrop"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Vis alle viktighetsinnstillingene"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blokkert"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Laveste prioritet"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Lav viktighet"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Vanlig viktighet"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Høy viktighet"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Svært høy viktighet"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Aldri vis disse varslene"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Vis nederst på varsellisten uten lyd"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Vis disse varslene uten lyd"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Tillat at disse varslene vises med lyd"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Vis fort på skjermen og tillat lyd"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Vis øverst på varsellisten, vis fort på skjermen og tillat lyd"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Effektive varselinnstillinger"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"På"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Av"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Med effektive varselinnstillinger kan du angi viktighetsnivåer fra 0 til 5 for appvarsler. \n\n"<b>"Nivå 5"</b>" \n– Vis øverst på varsellisten \n– Tillat forstyrrelser ved fullskjermmodus \n– Vis alltid raskt \n\n"<b>"Nivå 4"</b>" \n– Forhindre forstyrrelser ved fullskjermmodus \n– Vis alltid raskt \n\n"<b>"Nivå 3"</b>" \n– Forhindre forstyrrelser ved fullskjermmodus \n– Vis aldri raskt \n\n"<b>"Nivå 2"</b>" \n– Forhindre forstyrrelser ved fullskjermmodus \n– Vis aldri fort \n– Tillat aldri lyder eller vibrering \n\n"<b>"Nivå 1"</b>" \n– Forhindre forstyrrelser ved fullskjermmodus \n– Vis aldri raskt \n– Tillat aldri lyder eller vibrering \n– Skjul fra låseskjermen og statusfeltet \n– Vis nederst på varsellisten \n\n"<b>"Nivå 0"</b>" \n– Blokkér alle varsler fra appen"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Viktighet: automatisk"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Viktighet: nivå 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Viktighet: nivå 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Viktighet: nivå 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Viktighet: nivå 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Viktighet: nivå 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Viktighet: nivå 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Appen fastslår viktigheten for hvert varsel."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Vis aldri varsler fra denne appen."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Ingen forstyrrelser ved fullskjerm, rask visning, lyder eller vibrering. Skjul fra låseskjermen og statusfeltet."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Ingen forstyrrelser ved fullskjermmodus, rask visning, lyder eller vibrering."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Ingen forstyrrelser ved fullskjermmodus eller rask visning."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Vis alltid raskt. Ingen forstyrrelser ved fullskjermmodus."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Alltid vis raskt, og tillat forstyrrelser ved fullskjermmodus."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Flere innstillinger"</string>
     <string name="notification_done" msgid="5279426047273930175">"Ferdig"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Varselinnstillinger for <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Annet"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Skilleelement for delt skjerm"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Flytt ned"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Flytt opp"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Flytt mot venstre"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Flytt mot høyre"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Utvid den venstre delen av skjermen til hele skjermen"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Sett størrelsen på den venstre delen av skjermen til 70 %"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Sett størrelsen på den venstre delen av skjermen til 50 %"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Sett størrelsen på den venstre delen av skjermen til 30 %"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Utvid den høyre delen av skjermen til hele skjermen"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Utvid den øverste delen av skjermen til hele skjermen"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Sett størrelsen på den øverste delen av skjermen til 70 %"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Sett størrelsen på den øverste delen av skjermen til 50 %"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Sett størrelsen på den øverste delen av skjermen til 30 %"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Utvid den nederste delen av skjermen til hele skjermen"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Plassering <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Dobbelttrykk for å endre."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Dobbelttrykk for å legge til."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Plassering <xliff:g id="POSITION">%1$d</xliff:g>. Dobbelttrykk for å velge."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> er fjernet"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> er flyttet til plassering <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Redigeringsvindu for hurtiginnstillinger."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Det kan hende at appen ikke fungerer med delt skjerm."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Appen støtter ikke delt skjerm."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Side <xliff:g id="ID_1">%1$d</xliff:g> av <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-nb/strings_tv.xml b/packages/SystemUI/res/values-nb/strings_tv.xml
index 33bd1aa..4c474c5 100644
--- a/packages/SystemUI/res/values-nb/strings_tv.xml
+++ b/packages/SystemUI/res/values-nb/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Spill av"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Sett på pause"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Hold inne "<b>"STARTSIDE"</b>" for å kontrollere PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Trykk og hold inne STARTSIDE-knappen for å kontrollere PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Greit"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Avvis"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ne-rNP/strings.xml b/packages/SystemUI/res/values-ne-rNP/strings.xml
index 231a28a..b12b621 100644
--- a/packages/SystemUI/res/values-ne-rNP/strings.xml
+++ b/packages/SystemUI/res/values-ne-rNP/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"डेटा संकेत पूर्ण।"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> मा जडित।"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> मा जडित।"</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"<xliff:g id="CAST">%s</xliff:g> मा जडान गरियो।"</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"वाइम्यास छैन।"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX एउटा पट्टि।"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"वाइम्याक्स दुईवटा बारहरू।"</string>
@@ -148,12 +149,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"वाइफाइ"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM छैन।"</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"सेलुलर डेटा"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"सेलुलर डेटा सक्रिय छ"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"सेलुलर डेटा अफ छ"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"ब्लुटुथ टेदर गर्दै।"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"हवाइजहाज मोड।"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM कार्ड छैन।"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"वाहक नेटवर्क परिवर्तन हुँदै।"</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"ब्याट्री सम्बन्धी विवरणहरूलाई खोल्नुहोस्"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"ब्याट्रि <xliff:g id="NUMBER">%d</xliff:g> प्रतिशत"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"ब्याट्री चार्ज हुँदैछ, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> प्रतिशत।"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"प्रणाली सेटिङहरू"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"सूचनाहरू।"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"सूचना खाली गर्नुहोस्।"</string>
@@ -191,9 +196,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"प्राथमिकतालाई मात्र बाधा नपुर्‍याउनुहोस्।"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"बाधा नपुर्‍यानुहोस्, पुरै शान्त"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"बाधा नगर्नुहोस्, अलार्महरू मात्र।"</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"बाधा नपुर्याउनुहोस्।"</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"निष्क्रियलाई बाधा नपुर्‍याउनुहोस्"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"निष्क्रिय गरिएकालाई अवरोध नपुर्‍याउनुहोस्।"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"सक्रिय रहेकोलाई अवरोध नपुर्‍याउनुहोस्।"</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"ब्लुटुथ।"</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"ब्लुटुथ बन्द छ।"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"ब्लुटुथ खुला छ।"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"ब्लुटुथ जोडीदै।"</string>
@@ -247,7 +254,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"स्क्रिन अहिले परिदृश्य रूपरेखामा बन्द छ।"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"स्क्रिन अहिले पोट्रेट रूपरेखामा बन्द छ।"</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"दिवासपना"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"स्क्रिन सेभर"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"बाधा नपुर्याउँनुहोस्"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"प्राथमिकता मात्र"</string>
@@ -259,6 +266,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"जोडी उपकरणहरू उपलब्ध छैन"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"चमक"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"स्वतःघुम्ने"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"स्क्रिन स्वतःघुम्ने"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"<xliff:g id="ID_1">%s</xliff:g> मा सेट गरियो"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"परिक्रमण लक गरिएको छ"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"पोट्रेट"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"परिदृश्य"</string>
@@ -277,6 +286,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"जोडिएको छैन"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"नेटवर्क छैन"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"वाइफाइ बन्द"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"Wi-Fi सक्रिय छ"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Wi-Fi नेटवर्क अनुपलब्ध"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Cast"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"प्रसारण गर्दै"</string>
@@ -311,8 +321,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"सुरु गर्न सकिएन <xliff:g id="APP">%s</xliff:g>।"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> लाई सुरक्षित-मोडमा असक्षम गरिएको छ।"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"सबै हटाउनुहोस्"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"यस अनुप्रयोगले बहु-विन्डोलाई समर्थन गर्दैन"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"अनुप्रयोगले बहु-विन्डोलाई समर्थन गर्दैन"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"अनुप्रयोगले विभाजित-स्क्रिनलाई समर्थन गर्दैन"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"विभाजित स्क्रिनको प्रयोग गर्नका लागि यहाँ तान्नुहोस्"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"तेर्सो रूपमा विभाजन गर्नुहोस्"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"ठाडो रूपमा विभाजन गर्नुहोस्"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"अनुकूलन विभाजन गर्नुहोस्"</string>
@@ -420,12 +430,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> भोल्यूम संवाद हो"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"मूल पुनर्स्थापना गर्न छुनुहोस्।"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"तपाईँले कार्य प्रोफाइल प्रयोग गर्दै हुनुहुन्छ"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s। अनम्यूट गर्नका लागि ट्याप गर्नुहोस्।"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s। कम्पनमा सेट गर्नका लागि ट्याप गर्नुहोस्। पहुँच सम्बन्धी सेवाहरू म्यूट हुन सक्छन्।"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s। म्यूट गर्नका लागि ट्याप गर्नुहोस्। पहुँच सम्बन्धी सेवाहरू म्यूट हुन सक्छन्।"</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"%s का भोल्युम सम्बन्धी नियन्त्रणहरूलाई देखाइएको छ। खारेज गर्नका लागि स्वाइप गर्नुहोस्।"</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"भोल्युम सम्बन्धी नियन्त्रणहरूलाई लुकाइयो"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"प्रणाली UI ट्युनर"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"इम्बेड गरिएको ब्याट्री प्रतिशत देखाउनुहोस्"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"चार्ज नगरेको बेला वस्तुस्थिति पट्टी आइकन भित्र ब्याट्री प्रतिशत स्तर देखाउनुहोस्"</string>
@@ -470,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"सबै सूचनाहरूलाई रोक्नुहोस्"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"मौन नगर्नुहोस्"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"मौन नगर्नुहोस् वा नरोक्नुहोस्"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"पूर्ण महत्त्व सेटिङहरू देखाउने"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"रोकियो"</string>
-    <string name="min_importance" msgid="1901894910809414782">"न्यूनतम महत्त्व"</string>
-    <string name="low_importance" msgid="4109929986107147930">"न्यून महत्त्व"</string>
-    <string name="default_importance" msgid="8192107689995742653">"सामान्य महत्त्व"</string>
-    <string name="high_importance" msgid="1527066195614050263">"उच्च महत्त्व"</string>
-    <string name="max_importance" msgid="5089005872719563894">"जरूरी महत्त्व"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"यी सूचनाहरू कहिल्यै नदेखाउनुहोस्"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"सूचना सूचीको फेदमा बिना आवाज देखाउने"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"यी सूचनाहरूलाई बिना आवाज देखाउने"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"यी सूचनाहरूलाई ध्वनि निकाल्न अनुमति दिने"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"स्क्रिनमा चियाउने र ध्वनि निकाल्न अनुमति दिने"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"सूचना सूचीको शीर्षमा देखाउने, स्क्रिनमा चियाउने र ध्वनि निकाल्न अनुमति दिने"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"सशक्त सूचना नियन्त्रण"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"सक्रिय"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"निष्क्रिय"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"सशक्त सूचना नियन्त्रणहरू मार्फत तपाईँ अनुप्रयाेगका सूचनाहरूका लागि ० देखि ५ सम्मको महत्व सम्बन्धी स्तर सेट गर्न सक्नुहुन्छ। \n\n"<b>"स्तर ५"</b>" \n- सूचनाको सूचीको माथिल्लो भागमा देखाउने \n- पूर्ण स्क्रिनमा अवरोधका लागि अनुमति दिने \n- सधैँ चियाउने \n\n"<b>"स्तर ४"</b>" \n- पूर्ण स्क्रिनमा अवरोधलाई रोक्ने \n- सधैँ चियाउने \n\n"<b>"स्तर ३"</b>" \n- पूर्ण स्क्रिनमा अवरोधलाई रोक्ने \n- कहिल्यै नचियाउने \n\n"<b>"स्तर २"</b>" \n- पूर्ण स्क्रिनमा अवरोधलाई रोक्ने \n- कहिल्यै नचियाउने \n- कहिल्यै पनि आवाज ननिकाल्ने र कम्पन नगर्ने \n\n"<b>"स्तर १"</b>" \n- पूर्ण स्क्रिनमा अवरोध रोक्ने \n- कहिल्यै नचियाउने \n- कहिल्यै पनि आवाज ननिकाल्ने वा कम्पन नगर्ने \n- लक स्क्रिन र वस्तुस्थिति पट्टीबाट लुकाउने \n- सूचनाको सूचीको तल्लो भागमा देखाउने \n\n"<b>"स्तर ०"</b>" \n- अनुप्रयोगका सबै सूचनाहरूलाई रोक्ने"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"महत्व: स्वचालित"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"महत्व: स्तर ०"</string>
+    <string name="min_importance" msgid="560779348928574878">"महत्व: स्तर १"</string>
+    <string name="low_importance" msgid="7571498511534140">"महत्व: स्तर २"</string>
+    <string name="default_importance" msgid="7609889614553354702">"महत्व: स्तर ३"</string>
+    <string name="high_importance" msgid="3441537905162782568">"महत्व: स्तर ४"</string>
+    <string name="max_importance" msgid="4880179829869865275">"महत्व: स्तर ५"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"अनुप्रयोगले प्रत्येक सूचनाका लागि महत्व निर्धारण गर्छ।"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"यस अनुप्रयोगका सूचनाहरूलाई कहिल्यै नदेखाउनुहोस्।"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"पूर्ण स्क्रिनमा अवरोध नपुर्याउने वा नचियाउने, आवाज ननिकाल्ने वा कम्पन नगर्ने। लक स्क्रिन र वस्तुस्थिति पट्टीबाट लुकाउने।"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"पूर्ण स्क्रिनमा अवरोध नपुर्याउने, नचियाउने, आवाज ननिकाल्ने वा कम्पन नगर्ने।"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"पूर्ण स्क्रिनमा अवरोध नपुर्याउने वा नचियाउने।"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"सधैँ चियाउने। पूर्ण स्क्रिनमा अवरोध नपुर्याउने।"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"सधैँ चियाउने र पूर्ण स्क्रिनमा अवरोधलाई अनुमति दिने।"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"थप सेटिङहरू"</string>
     <string name="notification_done" msgid="5279426047273930175">"सम्पन्‍न भयो"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> का सूचनाका लागि नियन्त्रणहरू"</string>
@@ -597,10 +611,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"अन्य"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"विभाजित-स्क्रिन छुट्याउने"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"तल सार्नुहोस्"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"माथि सार्नुहोस्"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"बाँया सार्नुहोस्"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"दायाँ सार्नुहोस्"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"बायाँ भाग पूर्ण स्क्रिन"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"बायाँ भाग ७०%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"बायाँ भाग ५०%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"बायाँ भाग ३०%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"दायाँ भाग पूर्ण स्क्रिन"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"माथिल्लो भाग पूर्ण स्क्रिन"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"माथिल्लो भाग ७०%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"माथिल्लो भाग ५०%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"माथिल्लो भाग ३०%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"तल्लो भाग पूर्ण स्क्रिन"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"स्थिति <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>। सम्पादन गर्नका लागि डबल ट्याप गर्नुहोस्।"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>। थप्नका लागि डबल ट्याप गर्नुहोस्।"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"स्थिति <xliff:g id="POSITION">%1$d</xliff:g>। चयन गर्नका लागि डबल ट्याप गर्नुहोस्।"</string>
@@ -610,6 +630,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> लाई हटाइयो"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> लाई स्थिति <xliff:g id="POSITION">%2$d</xliff:g> मा सारियो"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"द्रुत सेटिङ सम्पादक।"</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"<xliff:g id="ID_1">%1$s</xliff:g> को सूचना: <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"अनुप्रयोगले विभाजित-स्क्रिनमा काम नगर्न सक्छ।"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"अनुप्रयोगले विभाजित-स्क्रिनलाई समर्थन गर्दैन।"</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"सेटिङहरूलाई खोल्नुहोस्।"</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"द्रुत सेटिङहरूलाई खोल्नुहोस्।"</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"द्रुत सेटिङहरूलाई बन्द गर्नुहोस्।"</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"अलार्म सेट गरियो।"</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"<xliff:g id="ID_1">%s</xliff:g> को रूपमा साइन इन गरियो"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"इन्टरनेट छैन।"</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"विवरणहरूलाई खोल्नुहोस्।"</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"<xliff:g id="ID_1">%s</xliff:g> सम्बन्धी सेटिङहरूलाई खोल्नुहोस्।"</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"सेटिङहरूको क्रमलाई सम्पादन गर्नुहोस्।"</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g> मध्ये पृष्ठ <xliff:g id="ID_1">%1$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ne-rNP/strings_tv.xml b/packages/SystemUI/res/values-ne-rNP/strings_tv.xml
index d9245d2..61a1669 100644
--- a/packages/SystemUI/res/values-ne-rNP/strings_tv.xml
+++ b/packages/SystemUI/res/values-ne-rNP/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"प्ले गर्नुहोस्"</string>
     <string name="pip_pause" msgid="8412075640017218862">"रोक्नुहोस्"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP लाई नियन्त्रण गर्न "<b>"गृह"</b>" कुञ्जीलाई थिचिरहनुहोस्"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"IP लाई नियन्त्रण गर्न गृह बटनलाई थिची होल्ड गर्नुहोस्"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"तस्बिरमा तस्बिर"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"तपाईँले अर्को भिडियोलाई प्ले नगरेसम्म यसले तपाईँको भिडियोलाई दृश्यमा राख्दछ। यसलाई नियन्त्रण गर्नका लागि "<b>"HOME"</b>" लाई थिचिरहनुहोस्।"</string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"बुझेँ"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"खारेज गर्नुहोस्"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-nl/strings.xml b/packages/SystemUI/res/values-nl/strings.xml
index 700fd88..558a1d2 100644
--- a/packages/SystemUI/res/values-nl/strings.xml
+++ b/packages/SystemUI/res/values-nl/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Gegevenssignaal is op volle sterkte."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Verbonden met <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Verbonden met <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Geen WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX: één streepje."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX: twee streepjes."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wifi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Geen simkaart."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobiele data uit"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth-tethering."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Vliegtuigmodus."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Geen simkaart."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Netwerk van provider wordt gewijzigd."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Accu: <xliff:g id="NUMBER">%d</xliff:g> procent."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Accu wordt opgeladen, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> procent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Systeeminstellingen."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Meldingen."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Melding wissen"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Niet storen aan, alleen prioriteit."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Niet storen aan, totale stilte."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Niet storen aan, alleen alarmen."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Niet storen uit."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Niet storen uitgeschakeld."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Niet storen ingeschakeld."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth uit."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth aan."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth-verbinding wordt gemaakt."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Het scherm is nu vergrendeld in liggende stand."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Het scherm is nu vergrendeld in staande stand."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessertshowcase"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Dagdroom"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Schermbeveiliging"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Niet storen"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Alleen prioriteit"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Geen gekoppelde apparaten beschikbaar"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Helderheid"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automatische rotatie"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotatie vergrendeld"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portret"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Landschap"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Niet verbonden"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Geen netwerk"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wifi uit"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Geen wifi-netwerken beschikbaar"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Casten"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Casten"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Kan <xliff:g id="APP">%s</xliff:g> niet starten."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> is uitgeschakeld in de veilige modus"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Alles wissen"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Deze app ondersteunt de modus voor meerdere vensters niet"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"App ondersteunt meerdere vensters niet"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"App biedt geen ondersteuning voor gesplitst scherm"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Sleep hier naartoe om het scherm te splitsen"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Horizontaal splitsen"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Verticaal splitsen"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Aangepast splitsen"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> is het volumedialoogvenster"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Tik hierop om het origineel te herstellen."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"U gebruikt je werkprofiel"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Tik om dempen op te heffen."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Tik om in te stellen op trillen. Toegankelijkheidsservices kunnen zijn gedempt."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Tik om te dempen. Toegankelijkheidsservices kunnen zijn gedempt."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Systeem-UI-tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Percentage ingebouwde accu weergeven"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Alle meldingen blokkeren"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Niet zonder geluid weergeven"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Niet zonder geluid weergeven of blokkeren"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Volledige instellingen voor belang weergeven"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Geblokkeerd"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Minimaal belang"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Klein belang"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normaal belang"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Groot belang"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Urgent belang"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Deze meldingen nooit weergeven"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Onder aan de lijst met meldingen weergeven zonder geluid"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Deze meldingen zonder geluid weergeven"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Toestaan dat deze meldingen geluid laten horen"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Op het scherm weergeven en geluid toestaan"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Boven aan de lijst met meldingen weergeven, op het scherm weergeven en geluid toestaan"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Beheeropties voor meldingen met betrekking tot stroomverbruik"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Aan"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Uit"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Met beheeropties voor meldingen met betrekking tot stroomverbruik kun je een belangrijkheidsniveau van 0 tot 5 instellen voor de meldingen van een app. \n\n"<b>"Niveau 5"</b>" \n- Boven aan de lijst met meldingen weergeven \n- Onderbreking op volledig scherm toestaan \n- Altijd korte weergave \n\n"<b>"Niveau 4"</b>" \n- Geen onderbreking op volledig scherm \n- Altijd korte weergave \n\n"<b>"Niveau 3"</b>" \n- Geen onderbreking op volledig scherm \n- Nooit korte weergave \n\n"<b>"Niveau 2"</b>" \n- Geen onderbreking op volledig scherm \n- Nooit korte weergave \n- Nooit geluid laten horen of trillen \n\n"<b>"Niveau 1"</b>" \n- Geen onderbreking op volledig scherm \n- Nooit korte weergave \n- Nooit geluid laten horen of trillen \n- Verbergen op vergrendelingsscherm en statusbalk \n- Onder aan de lijst met meldingen weergeven \n\n"<b>"Niveau 0"</b>" \n- Alle meldingen van de app blokkeren"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Belang: automatisch"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Belang: niveau 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Belang: niveau 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Belang: niveau 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Belang: niveau 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Belang: niveau 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Belang: niveau 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"De app bepaalt het belang van elke melding."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nooit meldingen van deze app weergeven."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Geen onderbreking op volledig scherm, korte weergave, geluid of trilling. Verbergen op vergrendelingsscherm en statusbalk."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Geen onderbreking op volledig scherm, korte weergave, geluid of trilling."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Geen onderbreking op volledig scherm of korte weergave."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Altijd korte weergave. Geen onderbreking op volledig scherm."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Altijd korte weergave en onderbreking op volledig scherm toestaan."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Meer instellingen"</string>
     <string name="notification_done" msgid="5279426047273930175">"Gereed"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Beheeropties voor <xliff:g id="APP_NAME">%1$s</xliff:g>-meldingen"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Overig"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Scheiding voor gesplitst scherm"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Omlaag"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Omhoog"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Naar links"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Naar rechts"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Linkerscherm op volledig scherm"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Linkerscherm 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Linkerscherm 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Linkerscherm 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Rechterscherm op volledig scherm"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Bovenste scherm op volledig scherm"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Bovenste scherm 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Bovenste scherm 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Bovenste scherm 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Onderste scherm op volledig scherm"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Positie <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Dubbeltik om te bewerken."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Dubbeltik om toe te voegen."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Positie <xliff:g id="POSITION">%1$d</xliff:g>. Dubbeltik om te selecteren."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> is verwijderd"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> is verplaatst naar positie <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor voor \'Snelle instellingen\'."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"App werkt mogelijk niet met gesplitst scherm."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"App biedt geen ondersteuning voor gesplitst scherm."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Pagina <xliff:g id="ID_1">%1$d</xliff:g> van <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-nl/strings_tv.xml b/packages/SystemUI/res/values-nl/strings_tv.xml
index 62c364e..b5c4a29 100644
--- a/packages/SystemUI/res/values-nl/strings_tv.xml
+++ b/packages/SystemUI/res/values-nl/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Afspelen"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Onderbreken"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Bedien PIP met "<b>"HOME"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Houd HOME ingedrukt om PIP te bedienen"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Sluiten"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-pa-rIN/strings.xml b/packages/SystemUI/res/values-pa-rIN/strings.xml
index d2166a4a..6c1c550 100644
--- a/packages/SystemUI/res/values-pa-rIN/strings.xml
+++ b/packages/SystemUI/res/values-pa-rIN/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"ਡਾਟਾ ਸਿਗਨਲ ਪੂਰਾ।"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ।"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ।"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"ਕੋਈ WiMAX ਨਹੀਂ।"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX ਇੱਕ ਬਾਰ।"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX ਦੋ ਬਾਰਸ।"</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"ਕਿਨਾਰਾ"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"ਕੋਈ SIM ਨਹੀਂ।"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"ਸੈਲਿਊਲਰ ਡੈਟਾ ਬੰਦ ਹੈ"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth ਟੀਥਰਿੰਗ।"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"ਏਅਰਪਲੇਨ ਮੋਡ।"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"ਕੋਈ SIM ਕਾਰਡ ਨਹੀਂ।"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"ਕੈਰੀਅਰ ਨੈੱਟਵਰਕ ਪਰਿਵਰਤਨ।"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"ਬੈਟਰੀ <xliff:g id="NUMBER">%d</xliff:g> ਪ੍ਰਤੀਸ਼ਤ ਹੈ।"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"ਬੈਟਰੀ ਚਾਰਜ ਹੋ ਰਹੀ ਹੈ, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> ਪ੍ਰਤੀਸ਼ਤ।"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"ਸਿਸਟਮ ਸੈਟਿੰਗਾਂ।"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"ਸੂਚਨਾਵਾਂ।"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"ਸੂਚਨਾ ਹਟਾਓ।"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ ਚਾਲੂ, ਕੇਵਲ ਤਰਜੀਹੀ।"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ ਚਾਲੂ ਕਰੋ, ਕੁਲ ਚੁੱਪੀ।"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ ਚਾਲੂ, ਕੇਵਲ ਅਲਾਰਮ।"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ ਬੰਦ।"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ ਬੰਦ ਕੀਤਾ।"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ ਚਾਲੂ ਕੀਤਾ।"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth ਬੰਦ।"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth ਚਾਲੂ।"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth ਕਨੈਕਟ ਕਰ ਰਿਹਾ ਹੈ।"</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"ਸਕ੍ਰੀਨ ਹੁਣ ਲੈਂਡਸਕੇਪ ਅਨੁਕੂਲਨ ਵਿੱਚ ਲੌਕ ਕੀਤੀ ਗਈ ਹੈ।"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"ਸਕ੍ਰੀਨ ਹੁਣ ਤਸਵੀਰ ਅਨੁਕੂਲਨ ਵਿੱਚ ਲੌਕ ਕੀਤੀ ਗਈ ਹੈ।"</string>
     <string name="dessert_case" msgid="1295161776223959221">"ਡੈਜ਼ਰਟ ਕੇਸ"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"ਡੇਡਰੀਮ"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"ਸਕ੍ਰੀਨ ਸੇਵਰ"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ਈਥਰਨੈਟ"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"ਮੈਨੂੰ ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"ਕੇਵਲ ਤਰਜੀਹੀ"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"ਕੋਈ ਪੇਅਰ ਕੀਤੀਆਂ ਡਿਵਾਈਸਾਂ ਉਪਲਬਧ ਨਹੀਂ"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"ਚਮਕ"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"ਆਟੋ-ਰੋਟੇਟ"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"ਰੋਟੇਸ਼ਨ ਲੌਕ ਕੀਤੀ"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"ਤਸਵੀਰ"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"ਲੈਂਡਸਕੇਪ"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"ਕੋਈ ਨੈਟਵਰਕ ਨਹੀਂ"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi ਬੰਦ"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"ਕੋਈ Wi-Fi ਨੈਟਵਰਕ ਉਪਲਬਧ ਨਹੀਂ"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"ਜੋੜੋ"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"ਕਾਸਟਿੰਗ"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> ਨੂੰ ਚਾਲੂ ਨਹੀਂ ਕਰ ਸਕਿਆ।"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> ਨੂੰ ਸੁਰੱਖਿਅਤ-ਮੋਡ ਵਿੱਚ ਅਯੋਗ ਬਣਾਇਆ ਗਿਆ ਹੈ।"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"ਸਭ ਸਾਫ਼ ਕਰੋ"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"ਇਹ ਐਪ ਮਲਟੀ-ਵਿੰਡੋ ਨੂੰ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੀ"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"ਐਪ ਮਲਟੀ-ਵਿੰਡੋ ਨੂੰ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੀ"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"ਐਪ ਸਪਲਿਟ-ਸਕ੍ਰੀਨ ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੀ ਹੈ"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"ਸਪਲਿਟ ਸਕ੍ਰੀਨ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਇੱਥੇ ਘਸੀਟੋ"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"ਹੌਰੀਜ਼ੌਂਟਲ ਸਪਲਿਟ"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"ਵਰਟੀਕਲ ਸਪਲਿਟ"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"ਕਸਟਮ ਸਪਲਿਟ"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> ਵੋਲਯੂਮ ਡਾਇਲੌਗ ਹੈ"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"ਅਸਲੀ ਨੂੰ ਰੀਸਟੋਰ ਕਰਨ ਲਈ ਛੋਹਵੋ।"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"ਤੁਸੀਂ ਆਪਣੀ ਕੰਮ ਪ੍ਰੋਫਾਈਲ ਵਰਤ ਰਹੇ ਹੋ"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s। ਅਣਮਿਊਟ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ।"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s। ਥਰਥਰਾਹਟ ਸੈੱਟ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ। ਪਹੁੰਚਯੋਗਤਾ ਸੇਵਾਵਾਂ ਮਿਊਟ ਹੋ ਸਕਦੀਆਂ ਹਨ।"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s। ਮਿਊਟ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ। ਪਹੁੰਚਯੋਗਤਾ ਸੇਵਾਵਾਂ ਮਿਊਟ ਹੋ ਸਕਦੀਆਂ ਹਨ।"</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI ਟਿਊਨਰ"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"ਜੋਡ਼ੀ ਗਈ ਬੈਟਰੀ ਪ੍ਰਤਿਸ਼ਤਤਾ ਦਿਖਾਓ"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"ਸਾਰੀਆਂ ਸੂਚਨਾਵਾਂ ਨੂੰ ਬਲੌਕ ਕਰੋ"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"ਚੁੱਪ ਨਾ ਕਰਵਾਓ"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"ਚੁੱਪ ਨਾ ਕਰਵਾਓ ਜਾਂ ਬਲੌਕ ਨਾ ਕਰੋ"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"ਪੂਰੀ ਮਹੱਤਤਾ ਵਾਲੀਆਂ ਸੈਟਿੰਗਾਂ ਨੂੰ ਵਿਖਾਓ"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"ਬਲੌਕ ਕੀਤਾ"</string>
-    <string name="min_importance" msgid="1901894910809414782">"ਨਿਊਨਤਮ ਮਹੱਤਤਾ"</string>
-    <string name="low_importance" msgid="4109929986107147930">"ਘੱਟ ਮਹੱਤਤਾ"</string>
-    <string name="default_importance" msgid="8192107689995742653">"ਸਧਾਰਨ ਮਹੱਤਤਾ"</string>
-    <string name="high_importance" msgid="1527066195614050263">"ਵੱਧ ਮਹੱਤਤਾ"</string>
-    <string name="max_importance" msgid="5089005872719563894">"ਜ਼ਰੂਰੀ ਮਹੱਤਤਾ"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"ਇਹਨਾਂ ਸੂਚਨਾਵਾਂ ਨੂੰ ਕਦੇ ਨਾ ਵਿਖਾਓ"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"ਸੂਚਨਾ ਸੂਚੀ ਦੇ ਹੇਠਾਂ ਚੁੱਪਚਾਪ ਢੰਗ ਨਾਲ ਵਿਖਾਓ"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"ਇਹਨਾਂ ਸੂਚਨਾਵਾਂ ਨੂੰ ਚੁੱਪਚਾਪ ਢੰਗ ਨਾਲ ਵਿਖਾਓ"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"ਇਹਨਾਂ ਸੂਚਨਾਵਾਂ ਨੂੰ ਧੁਨੀ ਪੈਦਾ ਕਰਨ ਦੀ ਮਨਜ਼ੂਰੀ ਦਿਓ"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"ਸਕ੍ਰੀਨ \'ਤੇ ਝਲਕ ਵਿਖਾਉਣ ਅਤੇ ਧੁਨੀ ਦੀ ਮਨਜ਼ੂਰੀ ਦਿਓ"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"ਸੂਚਨਾਵਾਂ ਸੂਚੀ ਦੇ ਸਿਖਰ \'ਤੇ ਵਿਖਾਓ, ਸਕ੍ਰੀਨ \'ਤੇ ਝਲਕ ਵਿਖਾਉਣ ਅਤੇ ਧੁਨੀ ਦੀ ਮਨਜ਼ੂਰੀ ਦਿਓ"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"ਪਾਵਰ ਸੂਚਨਾ ਕੰਟਰੋਲ"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"ਚਾਲੂ"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"ਬੰਦ"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"ਪਾਵਰ ਸੂਚਨਾ ਕੰਟਰੋਲਾਂ ਨਾਲ, ਤੁਸੀਂ ਕਿਸੇ ਐਪ ਦੀਆਂ ਸੂਚਨਾਵਾਂ ਲਈ ਮਹੱਤਤਾ ਪੱਧਰ ਨੂੰ 0 ਤੋਂ 5 ਤੱਕ ਸੈੱਟ ਕਰ ਸਕਦੇ ਹੋ। \n\n"<b>"ਪੱਧਰ 5"</b>" \n- ਸੂਚਨਾ ਸੂਚੀ ਦੇ ਸਿਖਰ \'ਤੇ ਵਿਖਾਓ \n- ਪੂਰੀ ਸਕ੍ਰੀਨ ਰੁਕਾਵਟ ਦੀ ਆਗਿਆ ਦਿਓ \n- ਹਮੇਸ਼ਾਂ ਝਲਕ ਵਿਖਾਓ \n\n"<b>"ਪੱਧਰ 4"</b>" \n- ਪੂਰੀ ਸਕ੍ਰੀਨ ਰੁਕਾਵਟ ਨੂੰ ਰੋਕੋ \n- ਹਮੇਸ਼ਾਂ ਝਲਕ ਵਿਖਾਓ \n\n"<b>"ਪੱਧਰ 3"</b>" \n- ਪੂਰੀ ਸਕ੍ਰੀਨ ਰੁਕਾਵਟ ਨੂੰ ਰੋਕੋ \n- ਕਦੇ ਝਲਕ ਨਾ ਵਿਖਾਓ \n\n"<b>"ਪੱਧਰ 2"</b>" \n- ਪੂਰੀ ਸਕ੍ਰੀਨ ਰੁਕਾਵਟ ਰੋਕੋ \n- ਕਦੇ ਝਲਕ ਨਾ ਵਿਖਾਓ \n- ਕਦੇ ਵੀ ਧੁਨੀ ਜਾਂ ਥਰਥਰਾਹਟ ਨਾ ਕਰੋ \n\n"<b>"ਪੱੱਧਰ 1"</b>" \n- ਪੂਰੀ ਸਕ੍ਰੀਨ ਰੁਕਾਵਟ ਨੂੰ ਰੋਕੋ \n- ਕਦੇ ਝਲਕ ਨਾ ਵਿਖਾਓ \n- ਕਦੇ ਧੁਨੀ ਜਾਂ ਥਰਥਰਾਹਟ ਨਾ ਕਰੋ \n- ਲੌਕ ਸਕ੍ਰੀਨ ਅਤੇ ਸਥਿਤੀ ਪੱਟੀ ਤੋਂ ਲੁਕਾਓ \n- ਸੂਚਨਾ ਸੂਚੀ ਦੇ ਹੇਠਾਂ ਵਿਖਾਓ \n\n"<b>"ਪੱਧਰ 0"</b>" \n- ਐਪ ਤੋਂ ਸਾਰੀਆਂ ਸੂਚਨਾਵਾਂ ਨੂੰ ਬਲੌਕ ਕਰੋ"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"ਮਹੱਤਤਾ: ਸਵੈਚਾਲਿਤ"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"ਮਹੱਤਤਾ: ਪੱਧਰ 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"ਮਹੱਤਤਾ: ਪੱਧਰ 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"ਮਹੱਤਤਾ: ਪੱਧਰ 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"ਮਹੱਤਤਾ: ਪੱਧਰ 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"ਮਹੱਤਤਾ: ਪੱਧਰ 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"ਮਹੱਤਤਾ: ਪੱਧਰ 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"ਐਪ ਹਰੇਕ ਸੂਚਨਾ ਦੀ ਮਹੱਤਤਾ ਦਾ ਪਤਾ ਲਗਾਉਂਦੀ ਹੈ।"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"ਇਸ ਐਪ ਤੋਂ ਸੂਚਨਾਵਾਂ ਕਦੇ ਨਾ ਵਿਖਾਓ।"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"ਕੋਈ ਪੂਰੀ ਸਕ੍ਰੀਨ ਰੁਕਾਵਟ, ਝਲਕ, ਧੁਨੀ, ਜਾਂ ਥਰਥਰਾਹਟ ਨਹੀਂ। ਲੌਕ ਸਕ੍ਰੀਨ ਅਤੇ ਸਥਿਤੀ ਪੱਟੀ ਤੋਂ ਲੁਕਾਓ।"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"ਕੋਈ ਪੂਰੀ ਸਕ੍ਰੀਨ ਰੁਕਾਵਟ, ਝਲਕ, ਧੁਨੀ ਜਾਂ ਥਰਥਰਾਹਟ ਨਹੀਂ।"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"ਕੋਈ ਪੂਰੀ ਸਕ੍ਰੀਨ ਰੁਕਾਵਟ ਜਾਂ ਝਲਕ ਨਹੀਂ।"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"ਹਮੇਸ਼ਾਂ ਝਲਕ ਵਿਖਾਓ। ਕੋਈ ਪੂਰੀ ਸਕ੍ਰੀਨ ਰੁਕਾਵਟ ਨਹੀਂ।"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"ਹਮੇਸ਼ਾਂ ਝਲਕ ਵਿਖਾਓ, ਅਤੇ ਪੂਰੀ ਸਕ੍ਰੀਨ ਰੁਕਾਵਟ ਦੀ ਆਗਿਆ ਦਿਓ।"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"ਹੋਰ ਸੈਟਿੰਗਾਂ"</string>
     <string name="notification_done" msgid="5279426047273930175">"ਹੋ ਗਿਆ"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> ਸੂਚਨਾ ਕੰਟਰੋਲ"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"ਹੋਰ"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"ਸਪਲਿਟ-ਸਕ੍ਰੀਨ ਡਿਵਾਈਡਰ"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"ਹੇਠਾਂ ਲੈ ਜਾਓ"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"ਉੱਪਰ ਲੈ ਜਾਓ"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"ਖੱਬੇ ਲੈ ਜਾਓ"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"ਸੱਜੇ ਲੈ ਜਾਓ"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"ਖੱਬੇ ਪੂਰੀ ਸਕ੍ਰੀਨ"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"ਖੱਬੇ 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"ਖੱਬੇ 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"ਖੱਬੇ 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"ਸੱਜੇ ਪੂਰੀ ਸਕ੍ਰੀਨ"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"ਉੱਪਰ ਪੂਰੀ ਸਕ੍ਰੀਨ"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"ਉੱਪਰ 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"ਉੱਪਰ 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"ਉੱਪਰ 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"ਹੇਠਾਂ ਪੂਰੀ ਸਕ੍ਰੀਨ"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"ਸਥਿਤੀ <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>। ਸੰਪਾਦਨ ਲਈ ਦੋ ਵਾਰ ਟੈਪ ਕਰੋ।"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>। ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਦੋ ਵਾਰ ਟੈਪ ਕਰੋ।"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"ਸਥਿਤੀ <xliff:g id="POSITION">%1$d</xliff:g>। ਚੁਣਨ ਲਈ ਦੋ ਵਾਰ ਟੈਪ ਕਰੋ।"</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ਨੂੰ ਹਟਾਇਆ ਗਿਆ"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ਨੂੰ <xliff:g id="POSITION">%2$d</xliff:g> ਸਥਿਤੀ \'ਤੇ ਤਬਦੀਲ ਕੀਤਾ ਗਿਆ"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"ਤਤਕਾਲ ਸੈਟਿੰਗਾਂ ਸੰਪਾਦਕ।"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਐਪ ਸਪਲਿਟ-ਸਕ੍ਰੀਨ ਨਾਲ ਕੰਮ ਨਾ ਕਰੇ।"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"ਐਪ ਸਪਲਿਟ-ਸਕ੍ਰੀਨ ਨੂੰ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੀ।"</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g> ਦਾ <xliff:g id="ID_1">%1$d</xliff:g> ਪੰਨਾ"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-pa-rIN/strings_tv.xml b/packages/SystemUI/res/values-pa-rIN/strings_tv.xml
index 7cbda258..adbb00c 100644
--- a/packages/SystemUI/res/values-pa-rIN/strings_tv.xml
+++ b/packages/SystemUI/res/values-pa-rIN/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"ਚਲਾਓ"</string>
     <string name="pip_pause" msgid="8412075640017218862">"ਰੋਕੋ"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP ਕੰਟਰੋਲ ਕਰਨ ਲਈ "<b>"ਹੋਮ"</b>" ਦਬਾਈ ਰੱਖੋ"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਲਈ ਹੋਮ ਬਟਨ ਨੂੰ ਦੱਬੋ ਅਤੇ ਦਬਾਈ ਰੱਖੋ"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"ਸਮਝ ਲਿਆ"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"ਖ਼ਾਰਜ ਕਰੋ"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-pl/strings.xml b/packages/SystemUI/res/values-pl/strings.xml
index 2f1f889..43b6aa5 100644
--- a/packages/SystemUI/res/values-pl/strings.xml
+++ b/packages/SystemUI/res/values-pl/strings.xml
@@ -120,6 +120,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Dane: pełna moc sygnału."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Połączono z <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Połączono z <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX: brak"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX: jeden pasek"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX: dwa paski"</string>
@@ -150,12 +152,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Brak karty SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Komórkowa transmisja danych jest wyłączona"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Powiązanie Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Tryb samolotowy."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Brak karty SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Zmiana sieci operatora."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Bateria: <xliff:g id="NUMBER">%d</xliff:g> procent."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Ładuję baterię, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> procent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Ustawienia systemu."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Powiadomienia."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Usuń powiadomienie."</string>
@@ -193,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Nie przeszkadzać (włączone, tylko priorytetowe)."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Nie przeszkadzać (włączone, całkowita cisza)."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Nie przeszkadzać (włączone, tylko alarmy)."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Nie przeszkadzać (wyłączone)."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Nieprzeszkadzanie wyłączone."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Nieprzeszkadzanie włączone."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth wyłączony."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth włączony."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Nawiązywanie połączenia Bluetooth."</string>
@@ -249,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ekran jest teraz zablokowany w orientacji poziomej."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ekran jest teraz zablokowany w orientacji pionowej."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Półka ze słodkościami"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Wygaszacz ekranu"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Wygaszacz ekranu"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Nie przeszkadzać"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Tylko priorytetowe"</string>
@@ -261,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Brak dostępnych sparowanych urządzeń"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Jasność"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Autoobracanie"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Obracanie zablokowane"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Pionowo"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Poziomo"</string>
@@ -279,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Brak połączenia"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Brak sieci"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi wyłączone"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Brak dostępnych sieci Wi-Fi"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Przesyłanie"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Przesyłam"</string>
@@ -313,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Nie udało się uruchomić aplikacji <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Aplikacja <xliff:g id="APP">%s</xliff:g> została wyłączona w trybie bezpiecznym."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Wyczyść wszystko"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Ta aplikacja nie obsługuje trybu wielu okien"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplikacja nie obsługuje trybu wielu okien"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplikacja nie obsługuje dzielonego ekranu"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Przeciągnij tutaj, by podzielić ekran"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Podziel poziomo"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Podziel pionowo"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Podziel niestandardowo"</string>
@@ -422,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> steruje głośnością"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Dotknij, by przywrócić pierwotną."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Używasz profilu do pracy"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Kliknij, by wyłączyć wyciszenie."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Kliknij, by włączyć wibracje. Ułatwienia dostępu mogą być wyciszone."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Kliknij, by wyciszyć. Ułatwienia dostępu mogą być wyciszone."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Kalibrator System UI"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Pokaż procent naładowania baterii"</string>
@@ -472,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Blokuj wszystkie powiadomienia"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Nie ignoruj"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Nie ignoruj ani nie blokuj"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Pokaż pełne ustawienia ważności"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Zablokowane"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Najmniejsza ważność"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Mało ważne"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Ważne"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Bardzo ważne"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Pilne"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Nigdy nie pokazuj tych powiadomień"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Pokazuj na końcu listy powiadomień bez sygnału dźwiękowego"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Pokazuj te powiadomienia bez sygnału dźwiękowego"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Zezwól na sygnalizowanie tych powiadomień dźwiękiem"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Wyświetlaj na ekranie i sygnalizuj dźwiękiem"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Pokazuj na początku listy powiadomień, wyświetlaj na ekranie i sygnalizuj dźwiękiem"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Zaawansowane ustawienia powiadomień"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Wł."</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Wył."</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Dzięki zaawansowanym ustawieniom możesz określić poziom ważności powiadomień z aplikacji w skali od 0 do 5. \n\n"<b>"Poziom 5"</b>" \n– Pokazuj u góry listy powiadomień \n– Zezwalaj na powiadomienia na pełnym ekranie \n– Zawsze pokazuj podgląd \n\n"<b>"Poziom 4"</b>" \n– Wyłącz powiadomienia na pełnym ekranie \n– Zawsze pokazuj podgląd \n\n"<b>"Poziom 3"</b>" \n– Wyłącz powiadomienia na pełnym ekranie \n– Nigdy nie pokazuj podglądu \n\n"<b>"Poziom 2"</b>" \n– Wyłącz powiadomienia na pełnym ekranie \n– Nigdy nie pokazuj podglądu \n– NIgdy nie powiadamiaj dźwiękiem ani wibracjami \n\n"<b>"Poziom 1"</b>" \n– Wyłącz powiadomienia na pełnym ekranie \n– Nigdy nie pokazuj podglądu \n– NIgdy nie powiadamiaj dźwiękiem ani wibracjami \n– Ukrywaj na ekranie blokady i pasku stanu \n– Pokazuj u dołu listy powiadomień \n\n"<b>"Poziom 0"</b>" \n– Blokuj wszystkie powiadomienia aplikacji"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Ważność: automatycznie"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Ważność: poziom 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Ważność: poziom 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Ważność: poziom 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Ważność: poziom 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Ważność: poziom 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Ważność: poziom 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Aplikacja określa ważność każdego powiadomienia."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nigdy nie pokazuj powiadomień z tej aplikacji."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Nie pokazuj powiadomień na pełnym ekranie (ani ich podglądu) i nie sygnalizuj ich dźwiękiem ani wibracjami. Ukrywaj je na ekranie blokady i pasku stanu."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Nie pokazuj powiadomień na pełnym ekranie (ani ich podglądu) i nie sygnalizuj ich dźwiękiem ani wibracjami."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Nie pokazuj powiadomień na pełnym ekranie ani ich podglądu."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Zawsze wyświetlaj podgląd. Nie pokazuj powiadomień na pełnym ekranie."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Zawsze pokazuj podgląd powiadomień i wyświetlaj je na pełnym ekranie."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Więcej ustawień"</string>
     <string name="notification_done" msgid="5279426047273930175">"Gotowe"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> – ustawienia powiadomień"</string>
@@ -599,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Inne"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Linia dzielenia ekranu"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Przesuń w dół"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Przesuń w górę"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Przesuń w lewo"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Przesuń w prawo"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Lewa część ekranu na pełnym ekranie"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"70% lewej części ekranu"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"50% lewej części ekranu"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"30% lewej części ekranu"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Prawa część ekranu na pełnym ekranie"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Górna część ekranu na pełnym ekranie"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"70% górnej części ekranu"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"50% górnej części ekranu"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"30% górnej części ekranu"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Dolna część ekranu na pełnym ekranie"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Położenie <xliff:g id="POSITION">%1$d</xliff:g>, kafelek <xliff:g id="TILE_NAME">%2$s</xliff:g>. Kliknij dwukrotnie, by edytować."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"Kafelek <xliff:g id="TILE_NAME">%1$s</xliff:g>. Kliknij dwukrotnie, by dodać."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Położenie <xliff:g id="POSITION">%1$d</xliff:g>. Kliknij dwukrotnie, by wybrać."</string>
@@ -612,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Kafelek <xliff:g id="TILE_NAME">%1$s</xliff:g> został usunięty"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Kafelek <xliff:g id="TILE_NAME">%1$s</xliff:g> przeniesiony w położenie <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Edytor szybkich ustawień."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Aplikacja może nie działać przy podzielonym ekranie."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Aplikacja nie obsługuje dzielonego ekranu."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Strona <xliff:g id="ID_1">%1$d</xliff:g> z <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-pl/strings_tv.xml b/packages/SystemUI/res/values-pl/strings_tv.xml
index 70be3d9..b9c083c 100644
--- a/packages/SystemUI/res/values-pl/strings_tv.xml
+++ b/packages/SystemUI/res/values-pl/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Odtwórz"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Wstrzymaj"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Przytrzymaj "<b>"EKRAN GŁÓWNY"</b>", by sterować PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Przytrzymaj przycisk EKRAN GŁÓWNY, by sterować PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Zamknij"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-pt-rBR/strings.xml b/packages/SystemUI/res/values-pt-rBR/strings.xml
index 9b778cc..81c1cb5 100644
--- a/packages/SystemUI/res/values-pt-rBR/strings.xml
+++ b/packages/SystemUI/res/values-pt-rBR/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Sinal de dados cheio."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Conectado a <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Sem WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Uma barra do WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Duas barras do WiMAX."</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Sem SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Dados da rede celular desativados"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Tethering Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Modo avião."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Sem cartão SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Alteração de rede de operadora."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Bateria em <xliff:g id="NUMBER">%d</xliff:g> por cento."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Configurações do sistema"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notificações."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Limpar notificação."</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\"Não perturbe\" ativado, somente prioridade."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"\"Não perturbe\" ativado, silêncio total."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\"Não perturbe\" ativado, somente alarmes."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\"Não perturbe\" desativado."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\"Não perturbe\" desativado."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\"Não perturbe\" ativado."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth desativado."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth ativado."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Conectando Bluetooth."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"A tela está bloqueada na orientação cenário."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"A tela está bloqueada na orientação retrato."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Mostruário de sobremesas"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Protetor de tela"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Não perturbe"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Só prioridade"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Não há dispositivos pareados disponíveis"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brilho"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotação automática"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotação bloqueada"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Retrato"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Paisagem"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Não conectado"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Sem rede"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi desligado"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nenhuma rede Wi-Fi disponível"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Transmitir"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Transmitindo"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Não foi possível iniciar <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"O app <xliff:g id="APP">%s</xliff:g> está desativado no modo de segurança."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Limpar tudo"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Este app não é compatível com o modo de várias janelas"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"O app não é compatível com o modo de várias janelas"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"O app não é compatível com a divisão de tela"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Arraste aqui para usar a tela dividida"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Divisão horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Divisão vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Divisão personalizada"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> é a caixa de diálogo referente ao volume"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Toque para restaurar o original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Você está usando seu perfil de trabalho"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Toque para ativar o som."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Toque para configurar para vibrar. É possível que os serviços de acessibilidade sejam silenciados."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Toque para silenciar. É possível que os serviços de acessibilidade sejam silenciados."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Sintonizador System UI"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Mostrar porcentagem de bateria incorporada"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Bloquear todas as notificações"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Não silenciar"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Não silenciar ou bloquear"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Mostrar todas as configurações de importância"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloqueadas"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importância mínima"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Importância baixa"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importância normal"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Importância elevada"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Importância urgente"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Nunca mostrar essas notificações"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Mostrar na parte inferior da lista de notificações de forma silenciosa"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Mostrar essas notificações de forma silenciosa"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Permitir que essas notificações emitam sons"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Mostrar parcialmente na tela e permitir som"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Mostrar na parte superior da lista de notificações, mostrar parcialmente na tela e permitir sons"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Controles de ativação/desativação de notificações"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Ativado"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Desativado"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Com controles de ativação de notificações, é possível definir o nível de importância de 0 a 5 para as notificações de um app. \n\n"<b>"Nível 5"</b>" \n- Exibir na parte superior da lista de notificações \n- Permitir interrupção em tela cheia \n- Sempre exibir \n\n"<b>"Nível 4"</b>" \n- Impedir interrupções em tela cheia \n- Sempre exibir \n\n"<b>"Nível 3"</b>" \n- Impedir interrupções em tela cheia \n- Nunca exibir \n\n"<b>"Nível 2"</b>" \n- Impedir interrupções em tela cheia \n- Nunca exibir \n- Nunca emitir som ou vibrar \n\n"<b>"Nível 1"</b>" \n- Impedir interrupções em tela cheia \n- Nunca exibir \n- Nunca emitir som ou vibrar \n- Ocultar da tela de bloqueio e barra de status \n- Exibir na parte inferior da lista de notificações \n\n"<b>"Nível 0"</b>" \n- Bloquear todas as notificações do app"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importância: automática"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importância: nível 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importância: nível 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importância: nível 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importância: nível 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importância: nível 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importância: nível 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"O app determina a importância de cada notificação."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nunca mostrar notificações deste app."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Sem interrupção, exibição, som ou vibração em tela cheia. Ocultar da tela de bloqueio e barra de status."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Nenhuma interrupção, exibição, som ou vibração em tela cheia."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Nenhuma exibição ou interrupção em tela cheia."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Sempre exibir. Nenhuma interrupção em tela cheia."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Sempre exibir e permitir interrupções em tela cheia."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Mais configurações"</string>
     <string name="notification_done" msgid="5279426047273930175">"Concluído"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Controles de notificação do <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Outros"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Divisor de tela"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Mover para baixo"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Mover para cima"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Mover para a esquerda"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Mover para a direita"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Lado esquerdo em tela cheia"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Esquerda a 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Esquerda a 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Esquerda a 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Lado direito em tela cheia"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Parte superior em tela cheia"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Parte superior a 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Parte superior a 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Parte superior a 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Parte inferior em tela cheia"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posição <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Toque duas vezes para editar."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Toque duas vezes para adicionar."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posição <xliff:g id="POSITION">%1$d</xliff:g>. Toque duas vezes para selecionar."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> é removido"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> movido para a posição <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor de configurações rápidas."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"É possível que o app não funcione com o recurso de divisão de tela."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"O app não é compatível com a divisão de tela."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Página <xliff:g id="ID_1">%1$d</xliff:g> de <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-pt-rBR/strings_tv.xml b/packages/SystemUI/res/values-pt-rBR/strings_tv.xml
index 0827f9c7..705c01c 100644
--- a/packages/SystemUI/res/values-pt-rBR/strings_tv.xml
+++ b/packages/SystemUI/res/values-pt-rBR/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Reproduzir"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pausar"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Mantenha "<b>"INÍCIO"</b>" pressionado para controlar o PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Mantenha a tecla \"HOME\" pressionada para controlar o PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Entendi"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Dispensar"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-pt-rPT/strings.xml b/packages/SystemUI/res/values-pt-rPT/strings.xml
index 69a4dad..bf977f8 100644
--- a/packages/SystemUI/res/values-pt-rPT/strings.xml
+++ b/packages/SystemUI/res/values-pt-rPT/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Sinal de dados completo."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Ligado a <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Ligado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Sem WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Uma barra de WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Duas barras de WiMAX."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Sem SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Dados móveis desativados"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Ligação Bluetooth via telemóvel."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Modo de avião"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Nenhum cartão SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Rede do operador em mudança."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Bateria a <xliff:g id="NUMBER">%d</xliff:g> por cento."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"A bateria está a carregar, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> por cento."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Definições do sistema"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notificações."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Limpar notificações"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Não incomodar ligado, apenas prioridade."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Não incomodar ativado, silêncio total."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Não incomodar ligado, apenas alarmes."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Não incomodar desligado."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Não incomodar desligado."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Não incomodar ligado."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth desligado."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth ligado."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"A ligar o Bluetooth."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"O ecrã está agora bloqueado na orientação de paisagem."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"O ecrã está agora bloqueado na orientação de retrato."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Vitrina de sobremesas"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Proteção de ecrã"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Não incomodar"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Apenas prioridade"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Sem dispositivos sincronizados disponíveis"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brilho"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotação automática"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotação bloqueada"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Retrato"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Paisagem"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Não Ligado"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Sem Rede"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi Desligado"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Não estão disponíveis redes Wi-Fi"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Transmitir"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Transmissão"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Não foi possível iniciar o <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"O <xliff:g id="APP">%s</xliff:g> está desativado no modo de segurança."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Limpar tudo"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Esta aplicação não é compatível com várias janelas"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"A aplicação não é compatível com várias janelas"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"A aplicação não é compatível com o ecrã dividido"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Arraste aqui para utilizar o ecrã dividido"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Divisão horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Divisão vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Divisão personalizada"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> é a caixa de diálogo do volume"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Toque para restaurar o original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Está a utilizar o seu perfil de trabalho"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Toque para reativar o som."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Toque para ativar a vibração. Os serviços de acessibilidade podem ser silenciados."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Toque para desativar o som. Os serviços de acessibilidade podem ser silenciados."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Sintonizador da interface do sistema"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Mostrar percentagem da bateria incorporada"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Bloquear todas as notificações"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Não silenciar"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Não silenciar nem bloquear"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Mostrar definições de importância completas"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloqueado"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importância mín."</string>
-    <string name="low_importance" msgid="4109929986107147930">"Importância baixa"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importância normal"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Importância alta"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Urgente"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Nunca mostrar estas notificações"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Mostrar na parte inferior da lista de notificações sem som"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Mostrar estas notificações sem som"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Permitir que estas notificações emitam sons"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Mostrar no ecrã e permitir som"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Mostrar na parte superior da lista de notificações, mostrar no ecrã e permitir som"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Controlos de notificações do consumo de energia"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Ativado"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Desativado"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Com os controlos de notificações do consumo de energia, pode definir um nível de importância de 0 a 5 para as notificações de aplicações. \n\n"<b>"Nível 5"</b>" \n- Mostrar no início da lista de notificações \n- Permitir a interrupção do ecrã inteiro \n- Aparecer rapidamente sempre \n\n"<b>"Nível 4"</b>" \n- Impedir a interrupção do ecrã inteiro \n- Aparecer rapidamente sempre\n\n"<b>"Nível 3"</b>" \n- Impedir a interrupção do ecrã inteiro \n- Nunca aparecer rapidamente \n\n"<b>"Nível 2"</b>" \n- Impedir a interrupção do ecrã inteiro \n- Nunca aparecer rapidamente \n- Nunca tocar nem vibrar \n\n"<b>"Nível 1"</b>" \n- Impedir a interrupção do ecrã inteiro \n- Nunca aparecer rapidamente \n- Nunca tocar nem vibrar \n- Ocultar do ecrã de bloqueio e da barra de estado \n- Mostrar no fim da lista de notificações \n\n"<b>"Nível 0"</b>" \n- Bloquear todas as notificações da aplicação"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importância: automático"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importância: nível 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importância: nível 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importância: nível 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importância: nível 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importância: nível 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importância: nível 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"A aplicação determina a importância de cada notificação."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nunca mostrar notificações desta aplicação."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"S/ interrup. do ecrã int., apresent. ráp., som ou vibr. Ocultar do ecrã bloq. e da barra de estado."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Sem interrupção do ecrã inteiro, apresentação rápida, som ou vibração."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Sem interrupção do ecrã inteiro nem apresentação rápida."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Aparecer rapidamente sempre. Sem interrupção do ecrã inteiro."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Aparecer rapidamente sempre e permitir a interrupção do ecrã inteiro."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Mais definições"</string>
     <string name="notification_done" msgid="5279426047273930175">"Concluído"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Controlos de notificações do <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Outro"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Divisor do ecrã dividido"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Mover para baixo"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Mover para cima"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Mover para a esquerda"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Mover para a direita"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Ecrã esquerdo inteiro"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"70% no ecrã esquerdo"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"50% no ecrã esquerdo"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"30% no ecrã esquerdo"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Ecrã direito inteiro"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Ecrã superior inteiro"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"70% no ecrã superior"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"50% no ecrã superior"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"30% no ecrã superior"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Ecrã inferior inteiro"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posição <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Toque duas vezes para editar."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Toque duas vezes para adicionar."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posição <xliff:g id="POSITION">%1$d</xliff:g>. Toque duas vezes para selecionar."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> removido"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> movido para a posição <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor de definições rápidas."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"A aplicação pode não funcionar com o ecrã dividido."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"A aplicação não é compatível com o ecrã dividido."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Página <xliff:g id="ID_1">%1$d</xliff:g> de <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-pt-rPT/strings_tv.xml b/packages/SystemUI/res/values-pt-rPT/strings_tv.xml
index 2f465d2..8026613 100644
--- a/packages/SystemUI/res/values-pt-rPT/strings_tv.xml
+++ b/packages/SystemUI/res/values-pt-rPT/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Reproduzir"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Interromper"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Prima sem soltar o botão "<b>"HOME"</b>" para controlar o PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Prima sem soltar o botão HOME para controlar o PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Compreendi"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Ignorar"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-pt/strings.xml b/packages/SystemUI/res/values-pt/strings.xml
index 9b778cc..81c1cb5 100644
--- a/packages/SystemUI/res/values-pt/strings.xml
+++ b/packages/SystemUI/res/values-pt/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Sinal de dados cheio."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Conectado a <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Conectado a <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Sem WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Uma barra do WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Duas barras do WiMAX."</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Sem SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Dados da rede celular desativados"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Tethering Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Modo avião."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Sem cartão SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Alteração de rede de operadora."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Bateria em <xliff:g id="NUMBER">%d</xliff:g> por cento."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Configurações do sistema"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notificações."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Limpar notificação."</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\"Não perturbe\" ativado, somente prioridade."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"\"Não perturbe\" ativado, silêncio total."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\"Não perturbe\" ativado, somente alarmes."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\"Não perturbe\" desativado."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\"Não perturbe\" desativado."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\"Não perturbe\" ativado."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth desativado."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth ativado."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Conectando Bluetooth."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"A tela está bloqueada na orientação cenário."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"A tela está bloqueada na orientação retrato."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Mostruário de sobremesas"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Protetor de tela"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Não perturbe"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Só prioridade"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Não há dispositivos pareados disponíveis"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brilho"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotação automática"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotação bloqueada"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Retrato"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Paisagem"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Não conectado"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Sem rede"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi desligado"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nenhuma rede Wi-Fi disponível"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Transmitir"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Transmitindo"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Não foi possível iniciar <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"O app <xliff:g id="APP">%s</xliff:g> está desativado no modo de segurança."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Limpar tudo"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Este app não é compatível com o modo de várias janelas"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"O app não é compatível com o modo de várias janelas"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"O app não é compatível com a divisão de tela"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Arraste aqui para usar a tela dividida"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Divisão horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Divisão vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Divisão personalizada"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> é a caixa de diálogo referente ao volume"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Toque para restaurar o original."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Você está usando seu perfil de trabalho"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Toque para ativar o som."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Toque para configurar para vibrar. É possível que os serviços de acessibilidade sejam silenciados."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Toque para silenciar. É possível que os serviços de acessibilidade sejam silenciados."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Sintonizador System UI"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Mostrar porcentagem de bateria incorporada"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Bloquear todas as notificações"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Não silenciar"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Não silenciar ou bloquear"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Mostrar todas as configurações de importância"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloqueadas"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importância mínima"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Importância baixa"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importância normal"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Importância elevada"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Importância urgente"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Nunca mostrar essas notificações"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Mostrar na parte inferior da lista de notificações de forma silenciosa"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Mostrar essas notificações de forma silenciosa"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Permitir que essas notificações emitam sons"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Mostrar parcialmente na tela e permitir som"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Mostrar na parte superior da lista de notificações, mostrar parcialmente na tela e permitir sons"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Controles de ativação/desativação de notificações"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Ativado"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Desativado"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Com controles de ativação de notificações, é possível definir o nível de importância de 0 a 5 para as notificações de um app. \n\n"<b>"Nível 5"</b>" \n- Exibir na parte superior da lista de notificações \n- Permitir interrupção em tela cheia \n- Sempre exibir \n\n"<b>"Nível 4"</b>" \n- Impedir interrupções em tela cheia \n- Sempre exibir \n\n"<b>"Nível 3"</b>" \n- Impedir interrupções em tela cheia \n- Nunca exibir \n\n"<b>"Nível 2"</b>" \n- Impedir interrupções em tela cheia \n- Nunca exibir \n- Nunca emitir som ou vibrar \n\n"<b>"Nível 1"</b>" \n- Impedir interrupções em tela cheia \n- Nunca exibir \n- Nunca emitir som ou vibrar \n- Ocultar da tela de bloqueio e barra de status \n- Exibir na parte inferior da lista de notificações \n\n"<b>"Nível 0"</b>" \n- Bloquear todas as notificações do app"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importância: automática"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importância: nível 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importância: nível 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importância: nível 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importância: nível 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importância: nível 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importância: nível 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"O app determina a importância de cada notificação."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nunca mostrar notificações deste app."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Sem interrupção, exibição, som ou vibração em tela cheia. Ocultar da tela de bloqueio e barra de status."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Nenhuma interrupção, exibição, som ou vibração em tela cheia."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Nenhuma exibição ou interrupção em tela cheia."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Sempre exibir. Nenhuma interrupção em tela cheia."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Sempre exibir e permitir interrupções em tela cheia."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Mais configurações"</string>
     <string name="notification_done" msgid="5279426047273930175">"Concluído"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Controles de notificação do <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Outros"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Divisor de tela"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Mover para baixo"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Mover para cima"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Mover para a esquerda"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Mover para a direita"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Lado esquerdo em tela cheia"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Esquerda a 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Esquerda a 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Esquerda a 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Lado direito em tela cheia"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Parte superior em tela cheia"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Parte superior a 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Parte superior a 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Parte superior a 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Parte inferior em tela cheia"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posição <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Toque duas vezes para editar."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Toque duas vezes para adicionar."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posição <xliff:g id="POSITION">%1$d</xliff:g>. Toque duas vezes para selecionar."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> é removido"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> movido para a posição <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor de configurações rápidas."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"É possível que o app não funcione com o recurso de divisão de tela."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"O app não é compatível com a divisão de tela."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Página <xliff:g id="ID_1">%1$d</xliff:g> de <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-pt/strings_tv.xml b/packages/SystemUI/res/values-pt/strings_tv.xml
index 0827f9c7..705c01c 100644
--- a/packages/SystemUI/res/values-pt/strings_tv.xml
+++ b/packages/SystemUI/res/values-pt/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Reproduzir"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pausar"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Mantenha "<b>"INÍCIO"</b>" pressionado para controlar o PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Mantenha a tecla \"HOME\" pressionada para controlar o PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Entendi"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Dispensar"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ro/strings.xml b/packages/SystemUI/res/values-ro/strings.xml
index 50289f3..d40b3ec 100644
--- a/packages/SystemUI/res/values-ro/strings.xml
+++ b/packages/SystemUI/res/values-ro/strings.xml
@@ -119,6 +119,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Semnal pentru date: complet."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Conectat la <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Conectat la <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Fără WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX o bară."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX două bare."</string>
@@ -149,12 +151,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Niciun card SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Datele mobile sunt dezactivate"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Conectarea ca modem prin Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Mod Avion."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Niciun card SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Se schimbă rețeaua operatorului."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Baterie: <xliff:g id="NUMBER">%d</xliff:g> la sută."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Setări de sistem."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Notificări."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Ștergeți notificarea."</string>
@@ -192,9 +203,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Setarea „Nu deranja” este activată – numai prioritare."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Setarea „Nu deranja” este activată – niciun sunet."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Setarea „Nu deranja” este activată – numai alarme."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Setarea „Nu deranja” este dezactivată."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Setarea „Nu deranja” a fost dezactivată."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Setarea „Nu deranja” a fost activată."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Conexiunea prin Bluetooth este dezactivată."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Conexiunea prin Bluetooth este activată."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Se conectează prin Bluetooth."</string>
@@ -248,7 +263,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ecranul este acum blocat în orientarea de tip peisaj."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ecranul este acum blocat în orientarea de tip portret."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Vitrina cu dulciuri"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Economizor de ecran"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Nu deranja"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Numai cu prioritate"</string>
@@ -260,6 +275,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Niciun dispozitiv conectat disponibil"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Luminozitate"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotire automată"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotire blocată"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portret"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Peisaj"</string>
@@ -278,6 +297,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Neconectat"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Nicio rețea"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi deconectat"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nicio rețea Wi-Fi disponibilă"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Proiectați"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Se proiectează"</string>
@@ -312,8 +333,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> nu a putut porni."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Aplicația <xliff:g id="APP">%s</xliff:g> este dezactivată în modul sigur."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Ștergeți-le pe toate"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Această aplicație nu acceptă ferestre multiple"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplicația nu acceptă ferestre multiple"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplicația nu acceptă ecranul împărțit"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Trageți aici pentru a folosi ecranul împărțit"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Divizare pe orizontală"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Divizare pe verticală"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Divizare personalizată"</string>
@@ -421,11 +442,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> afișează caseta de dialog pentru volum"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Atingeți pentru a reveni la setarea inițială."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Acum folosiți profilul de serviciu"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Atingeți pentru a activa sunetul."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Atingeți pentru a seta vibrarea. Sunetul se poate dezactiva pentru serviciile de accesibilitate."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Atingeți pentru a dezactiva sunetul. Sunetul se poate dezactiva pentru serviciile de accesibilitate."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Afișați procentajul bateriei încorporat"</string>
@@ -471,19 +493,24 @@
     <string name="block" msgid="2734508760962682611">"Blocați toate notificările"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Nu dezactivați sunetul"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Nu dezactivați sunetul și nu blocați"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Afișați toate setările privind importanța"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blocate"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Importanță minimă"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Importanță redusă"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Importanță normală"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Importanță ridicată"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Importanță: urgente"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Aceste notificări nu se afișează niciodată"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Se afișează în partea de jos a listei cu notificări fără a se emite un sunet"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Aceste notificări se afișează fără a se emite un sunet"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Permiteți acestor notificări să emită sunete"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Se afișează pentru o scurtă durată pe ecran și se permite un sunet"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Apar în partea de sus a listei cu notificări, se afișează pentru scurt timp pe ecran și se permite un sunet"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Comenzi de gestionare a notificărilor"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Activate"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Dezactivate"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Folosind comenzile de gestionare a notificărilor, puteți să setați un nivel de importanță de la 0 la 5 pentru notificările unei aplicații. \n\n"<b>"Nivelul 5"</b>" \n– Se afișează la începutul listei de notificări \n– Se permite întreruperea pe ecranul complet \n– Se afișează întotdeauna scurt \n\n"<b>"Nivelul 4"</b>" \n– Se împiedică întreruperea pe ecranul complet \n– Se afișează întotdeauna scurt \n\n"<b>"Nivelul 3"</b>" \n– Se împiedică întreruperea pe ecranul complet \n– Nu se afișează niciodată scurt \n\n"<b>"Nivelul 2"</b>" \n– Se împiedică întreruperea pe ecranul complet \n– Nu se afișează niciodată scurt \n– Nu se emit sunete și nu vibrează niciodată \n\n"<b>"Nivelul 1"</b>" \n– Se împiedică întreruperea pe ecranul complet \n– Nu se afișează niciodată scurt \n– Nu se emit sunete și nu vibrează niciodată \n– Se ascunde în ecranul de blocare și în bara de stare \n– Se afișează la finalul listei de notificări \n\n"<b>"Nivelul 0"</b>" \n– Se blochează toate notificările din aplicație"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Importanță: automat"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Importanță: nivelul 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Importanță: nivelul 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Importanță: nivelul 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Importanță: nivelul 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Importanță: nivelul 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Importanță: nivelul 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Aplicația stabilește importanța fiecărei notificări."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nu se afișează niciodată notificări de la această aplicație."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Fără întrerupere pe ecran complet/afișare scurtă/sunet/vibrare. Se ascunde în ecran blocare/bară stare."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Fără întrerupere pe ecranul complet, afișare scurtă, sunet sau vibrare."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Fără întrerupere pe ecranul complet și fără afișare scurtă."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Se afișează întotdeauna scurt. Fără întrerupere pe ecranul complet."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Se afișează întotdeauna scurt și se permite întreruperea pe ecranul complet."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Mai multe setări"</string>
     <string name="notification_done" msgid="5279426047273930175">"Terminat"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Opțiuni privind notificările pentru <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -598,10 +625,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Altele"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Separator pentru ecranul împărțit"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Mutați în jos"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Mutați în sus"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Mutați spre stânga"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Mutați spre dreapta"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Partea stângă pe ecran complet"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Partea stângă: 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Partea stângă: 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Partea stângă: 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Partea dreaptă pe ecran complet"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Partea de sus pe ecran complet"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Partea de sus: 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Partea de sus: 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Partea de sus: 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Partea de jos pe ecran complet"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Poziția <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Atingeți de două ori pentru a edita."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Atingeți de două ori pentru a adăuga."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Poziția <xliff:g id="POSITION">%1$d</xliff:g>. Atingeți de două ori pentru a selecta."</string>
@@ -611,6 +644,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Caseta <xliff:g id="TILE_NAME">%1$s</xliff:g> este eliminată"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Caseta <xliff:g id="TILE_NAME">%1$s</xliff:g> a fost mutată pe poziția <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editorul pentru setări rapide."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Este posibil ca aplicația să nu funcționeze cu ecranul împărțit."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Aplicația nu acceptă ecranul împărțit."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Pagina <xliff:g id="ID_1">%1$d</xliff:g> din <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ro/strings_tv.xml b/packages/SystemUI/res/values-ro/strings_tv.xml
index 9ef90dd..5bc63f8 100644
--- a/packages/SystemUI/res/values-ro/strings_tv.xml
+++ b/packages/SystemUI/res/values-ro/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Redați"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Întrerupeți"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Apăsați lung "<b>"ACASĂ"</b>" pentru a controla PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Apăsați lung butonul ECRAN DE PORNIRE pentru a controla PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Am înțeles"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Închideți"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ru/strings.xml b/packages/SystemUI/res/values-ru/strings.xml
index 0347b03..d6720eb 100644
--- a/packages/SystemUI/res/values-ru/strings.xml
+++ b/packages/SystemUI/res/values-ru/strings.xml
@@ -120,6 +120,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Надежный сигнал передачи данных."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g>: подключено."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g>: подключено."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Нет сигнала WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Сигнал WiMAX: одно деление."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Сигнал WiMAX: два деления."</string>
@@ -150,12 +152,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM-карта отсутствует."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Передача мобильных данных отключена"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth-модем"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Режим полета."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Нет SIM-карты."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Сменить сеть"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Заряд батареи в процентах: <xliff:g id="NUMBER">%d</xliff:g>."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Настройки"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Уведомления"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Удалить уведомление"</string>
@@ -193,9 +204,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Режим \"Не беспокоить\" включен. Будут показаны только важные оповещения."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Не беспокоить, полная тишина."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Не беспокоить – только будильник."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Режим \"Не беспокоить\" выключен."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Режим \"Не беспокоить\" выключен."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Режим \"Не беспокоить\" включен."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Модуль Bluetooth отключен."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Модуль Bluetooth включен."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth-соединение устанавливается."</string>
@@ -249,7 +264,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Экран зафиксирован в горизонтальном положении."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Экран зафиксирован в вертикальном положении."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Коробка со сладостями"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Заставка"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Заставка"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Не беспокоить"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Только важные"</string>
@@ -261,6 +276,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Нет доступных подключенных устройств"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Яркость"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Автоповорот"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Автоповорот отключен"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Вертикальная ориентация"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Горизонтальная ориентация"</string>
@@ -279,6 +298,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Нет соединения"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Нет сети"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi выкл."</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Не удалось найти доступные сети Wi-Fi"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Трансляция"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Передача изображения"</string>
@@ -313,8 +334,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Не удалось запустить приложение \"<xliff:g id="APP">%s</xliff:g>\""</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Приложение \"<xliff:g id="APP">%s</xliff:g>\" отключено в безопасном режиме."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Очистить все"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Приложение не поддерживает многооконный режим"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Приложение не поддерживает многооконный режим"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Приложение не поддерживает разделение экрана"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Перетащите сюда, чтобы разделить экран"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Разделить по горизонтали"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Разделить по вертикали"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Разделить по-другому"</string>
@@ -422,11 +443,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"Приложение <xliff:g id="APP_NAME">%1$s</xliff:g> назначено регулятором громкости"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Нажмите, чтобы восстановить приложение по умолчанию."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Вы перешли в рабочий профиль"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Нажмите, чтобы включить звук."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Нажмите, чтобы включить вибрацию. Специальные возможности могут прекратить работу."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Нажмите, чтобы выключить звук. Специальные возможности могут прекратить работу."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Показывать уровень заряда батареи в процентах"</string>
@@ -472,19 +494,24 @@
     <string name="block" msgid="2734508760962682611">"Блокировать все уведомления"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Показывать со звуком"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Не блокировать, показывать со звуком"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Показывать все настройки важности"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Блокировка"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Наименьшая важность"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Низкая важность"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Средняя важность"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Высокая важность"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Крайняя важность"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Не показывать эти уведомления."</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Показывать без звука в конце списка уведомлений"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Показывать без звука"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Показывать со звуком"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Показывать со звуком поверх всех окон"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Показывать со звуком в начале списка уведомлений и поверх всех окон"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Расширенное управление уведомлениями"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Включено"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Отключено"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"С помощью этой функции вы можете устанавливать уровень важности уведомлений от 0 до 5 для каждого приложения.\n\n"<b>"Уровень 5"</b>\n"‒ Помещать уведомления в начало списка.\n‒ Показывать полноэкранные уведомления.\n‒ Показывать всплывающие уведомления.\nУровень 4\n"<b></b>\n"‒ Не показывать полноэкранные уведомления.\n‒ Показывать всплывающие уведомления.\nУровень 3\n"<b></b>\n"‒ Не показывать полноэкранные уведомления.\n‒ Не показывать всплывающие уведомления.\nУровень 2\n"<b></b>\n"‒ Не показывать полноэкранные уведомления.\n‒ Не показывать всплывающие уведомления.\n‒ Не использовать звук и вибрацию.\nУровень 1\n"<b></b>\n"‒ Не показывать полноэкранные уведомления.\n‒ Не показывать всплывающие уведомления.\n‒ Не использовать звук и вибрацию.\n‒ Не показывать на экране блокировки и в строке состояния.\n‒ Помещать уведомления в конец списка.\nУровень 0\n"<b></b>\n"‒ Блокировать все уведомления приложения."</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Важность: автоматически"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Важность: уровень 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Важность: уровень 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Важность: уровень 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Важность: уровень 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Важность: уровень 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Важность: уровень 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Приложение само устанавливает уровень важности уведомлений."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Не показывать уведомления этого приложения."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Не показывать уведомления. Не использовать звук и вибрацию. Не показывать на экране блокировки и в строке состояния."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Не показывать всплывающие и полноэкранные уведомления. Не использовать звук и вибрацию."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Не показывать всплывающие и полноэкранные уведомления."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Показывать всплывающие, но не полноэкранные уведомления."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Показывать всплывающие и полноэкранные уведомления."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Другие настройки"</string>
     <string name="notification_done" msgid="5279426047273930175">"Готово"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Управление уведомлениями (<xliff:g id="APP_NAME">%1$s</xliff:g>)"</string>
@@ -599,10 +626,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Другое"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Разделитель экрана"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Опустить"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Поднять"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Сдвинуть влево"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Сдвинуть вправо"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Левый во весь экран"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Левый на 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Левый на 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Левый на 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Правый во весь экран"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Верхний во весь экран"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Верхний на 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Верхний на 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Верхний на 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Нижний во весь экран"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Позиция <xliff:g id="POSITION">%1$d</xliff:g>, кнопка \"<xliff:g id="TILE_NAME">%2$s</xliff:g>\". Чтобы изменить, нажмите дважды."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"Кнопка \"<xliff:g id="TILE_NAME">%1$s</xliff:g>\". Чтобы добавить, нажмите дважды."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Позиция <xliff:g id="POSITION">%1$d</xliff:g>. Чтобы выбрать, нажмите дважды."</string>
@@ -612,6 +645,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Кнопка \"<xliff:g id="TILE_NAME">%1$s</xliff:g>\" удалена"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Кнопка \"<xliff:g id="TILE_NAME">%1$s</xliff:g>\" теперь занимает позицию <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Редактор быстрых настроек."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Приложение не поддерживает разделение экрана."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Приложение не поддерживает разделение экрана."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Страница <xliff:g id="ID_1">%1$d</xliff:g> из <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ru/strings_tv.xml b/packages/SystemUI/res/values-ru/strings_tv.xml
index 027cb1f..d5b66a6 100644
--- a/packages/SystemUI/res/values-ru/strings_tv.xml
+++ b/packages/SystemUI/res/values-ru/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Воспроизвести"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Приостановить"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Управляйте кадром в кадре, удерживая кнопку "<b>"ГЛАВНАЯ"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Управляйте режимом \"Кадр в кадре\", удерживая кнопку ГЛАВНАЯ"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"ОК"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Закрыть"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-si-rLK/strings.xml b/packages/SystemUI/res/values-si-rLK/strings.xml
index d92b0e8..06d3edc 100644
--- a/packages/SystemUI/res/values-si-rLK/strings.xml
+++ b/packages/SystemUI/res/values-si-rLK/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"දත්ත සංඥාව පිරී ඇත."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> වෙත සම්බන්ධ කරන ලදි."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> වෙත සම්බන්ධ කරන ලදි."</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"<xliff:g id="CAST">%s</xliff:g> වෙත සම්බන්ධ විය."</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX නැත."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX තීරු එකයි."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX තීරු දෙකයි."</string>
@@ -148,12 +149,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM නැත."</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"සෙලියුලර් දත්ත"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"සෙලියුලර් දත්ත ක්‍රියාත්මකයි"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"සෙලියුලර් දත්ත ක්‍රියාවිරහිතයි"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"බ්ලූටූත් ටෙදරින්."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"අහස්යානා ආකාරය."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM කාඩ්පත නැත."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"වාහක ජාලය වෙනස් වේ."</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"බැටරි විස්තර විවෘත කරන්න"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"බැටරි ප්‍රතිශතය <xliff:g id="NUMBER">%d</xliff:g>"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"බැටරිය ආරෝපණය කරමින්, සියයට <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g>."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"පද්ධති සැකසීම්."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"දැනුම්දීම්."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"දැනුම්දීම හිස් කරන්න."</string>
@@ -191,9 +196,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"බාධා නොකරන්න ක්‍රියාත්මකයි, ප්‍රමුඛතා පමණි."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"සම්පූර්ණ නිහඬතාවය, බාධා නොකරන්න."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"බාධා නොකරන්න ක්‍රියාත්මකයි, ප්‍රමුඛතා පමණි."</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"බාධා නොකරන්න."</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"බාධා නොකරන්න ක්‍රියා විරහිතයි."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"බාධා නොකරන්න ක්‍රියා විරහිත කරන ලදි."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"බාධා නොකරන්න ක්‍රියාත්මක කරන ලදි"</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"බ්ලූටූත්."</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"බ්ලූටූත් අක්‍රියයි."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"බ්ලූටූත් සක්‍රියයි."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"බ්ලූටූත් සම්බන්ධවෙමින්."</string>
@@ -247,7 +254,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"තිරය දැන් තිරස් දිශානතිය අගුළු දමා ඇත."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"තිරය සිරස් දිශානතිය තුළ අගුළු වැටී ඇත."</string>
     <string name="dessert_case" msgid="1295161776223959221">"අතුරුපස අවස්තාව"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"දවල් හීනය"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"තිර සුරැකුම"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ඊතර නෙට්"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"බාධා නොකරන්න"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"ප්‍රමුඛතාව පමණයි"</string>
@@ -259,6 +266,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"යුගල කළ උපාංග නොතිබේ"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"දීප්තිය"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"ස්වයංක්‍රීය කරකැවීම"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"ස්වයංක්‍රීයව-භ්‍රමණය වන තිරය"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"<xliff:g id="ID_1">%s</xliff:g> වෙත සකසන ලදී"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"භ්‍රමණය අගුළු දමා ඇත"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"ප්‍රතිමුර්ති"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"තිරස් දර්ශනය"</string>
@@ -277,6 +286,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"සම්බන්ධ වී නොමැත"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"ජාලයක් නැත"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi අක්‍රියයි"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"Wi-Fi ක්‍රියාත්මකයි"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Wi-Fi ජාල ලබා ගත නොහැකිය"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Cast"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"කාස්ට් කිරීම"</string>
@@ -311,8 +321,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> ආරම්භ කළ නොහැක."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> ආරක්ෂිත ප්‍රකාරය තුළ අබලයි."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"සියල්ල හිස් කරන්න"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"මෙම යෙදුම බහු-කවුළුව සඳහා සහාය නොදක්වයි"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"යෙදුම බහු-කවුළුව සඳහා සහාය නොදක්වයි"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"යෙදුම බෙදුණු-තිරය සඳහා සහාය නොදක්වයි"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"බෙදුම් තිරය භාවිත කිරීමට මෙතැනට අදින්න"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"තිරස්ව වෙන් කරන්න"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"සිරස්ව වෙන් කරන්න"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"අභිමත ලෙස වෙන් කරන්න"</string>
@@ -420,12 +430,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> ධාරිතා සංවාදයයි"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"මුල් තත්ත්වය නැවත ප්‍රතිසාධනය කිරීමට ස්පර්ශ කරන්න."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"ඔබ ඔබේ කාර්යාල පැතිකඩ භාවිත කරමින් සිටී"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. නිහඬ කිරීම ඉවත් කිරීමට තට්ටු කරන්න."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. කම්පනය කිරීමට තට්ටු කරන්න. ප්‍රවේශ්‍යතා සේවා නිහඬ කළ හැකිය."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. නිහඬ කිරීමට තට්ටු කරන්න. ප්‍රවේශ්‍යතා සේවා නිහඬ කළ හැකිය."</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"%s හඬ පරිමා පාලන පෙන්වයි. ඉවත දැමීමට ස්වයිප් කරන්න."</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"හඩ පරිමා පාලන සඟවා ඇත"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"පද්ධති UI සුසරකය"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"කාවද්දන ලද බැටරි ප්‍රතිශතය පෙන්වන්න"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"ආරෝපණය නොවන විට තත්ත්ව තීරු නිරූපකය ඇතුළත බැටරි මට්ටම් ප්‍රතිශතය පෙන්වන්න"</string>
@@ -470,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"සියලු දැනුම්දීම් අවහිර කරන්න"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"නිශ්ශබ්ද නොකරන්න"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"නිශ්ශබ්ද හෝ අවහිර නොකරන්න"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"පූර්ණ වැදගත්කම් සැකසීම් පෙන්වන්න"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"අවහිර කරන ලදි"</string>
-    <string name="min_importance" msgid="1901894910809414782">"අවම වැදගත්කම"</string>
-    <string name="low_importance" msgid="4109929986107147930">"අඩු වැදගත්කම"</string>
-    <string name="default_importance" msgid="8192107689995742653">"සාමාන්‍ය වැදගත්කම"</string>
-    <string name="high_importance" msgid="1527066195614050263">"වැඩි වැදගත්කම"</string>
-    <string name="max_importance" msgid="5089005872719563894">"හදිසි වැදගත්කම"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"මෙම දැනුම්දීම් කිසිදා නොපෙන්වන්න"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"දැනුම්දීම් ලැයිස්තුවෙහි පහළින්ම නිශ්ශබ්දව පෙන්වන්න"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"නිශ්ශබ්දව මෙම දැනුම්දීම් පෙන්වන්න"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"මෙම දැනුම්දීම්වලට ශබ්ද නැගීමට ඉඩ දෙන්න"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"තිරයට එබිකම් කර ශබ්දයට ඉඩ දෙන්න සහ ශබ්දයට ඉඩ දෙන්න"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"දැනුම්දීම් ලැයිස්තුවෙහි ඉහළින්ම පෙන්වන්න, තිරයට එබිකම් කර ශබ්දයට ඉඩ දෙන්න"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"බල දැනුම්දීම් පාලන"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"ක්‍රියාත්මකයි"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"ක්‍රියාවිරහිතයි"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"බල දැනුම්දීම් පාලන සමගින්, ඔබට යෙදුමක දැනුම්දීම් සඳහා වැදගත්කම 0 සිට 5 දක්වා සැකසිය හැකිය. \n\n"<b>"5 මට්ටම"</b>" \n- දැනුම්දීම් ලැයිස්තුවේ ඉහළින්ම පෙන්වන්න \n- පූර්ණ තිර බාධාවට ඉඩ දෙන්න \n- සැම විට එබී බලන්න \n\n"<b>"4 මට්ටම"</b>" \n- පූර්ණ තිර බාධාව වළක්වන්න \n- සැම විට එබී බලන්න \n\n"<b>"3 මට්ටම"</b>" \n- පූර්ණ තිර බාධාව වළක්වන්න \n- කිසි විටක එබී නොබලන්න \n\n"<b>"2 මට්ටම"</b>" \n- පූර්ණ තිර බාධාව වළක්වන්න \n- කිසි විටක එබී නොබලන්න \n- කිසි විටක හඬ සහ කම්පනය සිදු නොකරන්න \n\n"<b>"1 මට්ටම"</b>" \n- පූර්ණ තිර බාධාව වළක්වන්න \n- කිසි විටක එබී නොබලන්න \n- කිසි විටක හඬ සහ කම්පනය සිදු නොකරන්න \n- අගුලු තිරය සහ තත්ත්ව තීරුව වෙතින් සඟවන්න \n- දැනුම්දීම් ලැයිස්තුවේ පහළින්ම පෙන්වන්න \n\n"<b>"0 මට්ටම"</b>" \n- යෙදුම වෙතින් වන සියලු දැනුම් දීම් සඟවන්න."</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"වැදගත්කම: ස්වයංක්‍රිය"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"වැදගත්කම: 0 මට්ටම"</string>
+    <string name="min_importance" msgid="560779348928574878">"වැදගත්කම: 1 මට්ටම"</string>
+    <string name="low_importance" msgid="7571498511534140">"වැදගත්කම: 2 මට්ටම"</string>
+    <string name="default_importance" msgid="7609889614553354702">"වැදගත්කම: 3 මට්ටම"</string>
+    <string name="high_importance" msgid="3441537905162782568">"වැදගත්කම: 4 මට්ටම"</string>
+    <string name="max_importance" msgid="4880179829869865275">"වැදගත්කම: 5 මට්ටම"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"යෙදුම එක් එක් දැනුම්දීම සඳහා වැදගත්කම තීරණය කරයි."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"මෙම යෙදුම වෙතින් දැනුම්දීම් කිසි විටක නොපෙන්වන්න."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"පූර්ණ තිර බාධාව, එබී බැලීම, හඬ, හෝ කම්පනය නැත. අගුලු තිරය සහ තත්ත්ව තීරුව වෙතින් සඟවන්න."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"පූර්ණ තිර බාධාව, එබී බැලීම, හඬ, හෝ කම්පනය නැත."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"පූර්ණ තිර බාධාව හෝ එබී බැලීම නැත."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"සැම විට එබී බලන්න. පූර්ණ තිර බාධාව නැත."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"සැම විට එබී බලන්න, සහ පූර්ණ තිර බාධාවට ඉඩ දෙන්න."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"තව සැකසීම්"</string>
     <string name="notification_done" msgid="5279426047273930175">"නිමයි"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> දැනුම්දීම් පාලන"</string>
@@ -597,10 +611,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"වෙනත්"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"බෙදුම්-තිර වෙන්කරණය"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"පහළට ගෙන යන්න"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"ඉහළට ගෙන යන්න"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"වමට ගෙන යන්න"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"දකුණට ගෙන යන්න"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"වම් පූර්ණ තිරය"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"වම් 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"වම් 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"වම් 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"දකුණු පූර්ණ තිරය"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"ඉහළම පූර්ණ තිරය"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"ඉහළම 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"ඉහළම 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"ඉහළම 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"පහළ පූර්ණ තිරය"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"ස්ථානය <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. වෙනස් කිරීමට දෙවරක් තට්ටු කරන්න."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. එක් කිරීමට දෙවරක් තට්ටු කරන්න."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"ස්ථානය <xliff:g id="POSITION">%1$d</xliff:g>. තෝරා ගැනීමට දෙවරක් තට්ටු කරන්න."</string>
@@ -610,6 +630,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ඉවත් කරන ලදි"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> <xliff:g id="POSITION">%2$d</xliff:g> වන ස්ථානයට ගෙන යන ලදි"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"ඉක්මන් සැකසුම් සංස්කාරකය."</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"<xliff:g id="ID_1">%1$s</xliff:g> දැනුම්දීම: <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"යෙදුම බෙදුම්-තිරය සමග ක්‍රියා නොකළ හැකිය."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"යෙදුම බෙදුණු-තිරය සඳහා සහාය නොදක්වයි."</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"සැකසීම් විවෘත කරන්න."</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"ඉක්මන් සැකසීම් විවෘත කරන්න."</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"ඉක්මන් සැකසීම් වසන්න."</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"එලාමය සකසන ලදී."</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"<xliff:g id="ID_1">%s</xliff:g> ලෙස පුරන්න"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"අන්තර්ජාලය නැත."</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"විස්තර විවෘත කරන්න."</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"<xliff:g id="ID_1">%s</xliff:g> සැකසීම් විවෘත කරන්න."</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"සැකසීම්වල අනුපිළිවෙළ සංංස්කරණය කරන්න."</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g> න් <xliff:g id="ID_1">%1$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-si-rLK/strings_tv.xml b/packages/SystemUI/res/values-si-rLK/strings_tv.xml
index 3380754..7c3d4fc 100644
--- a/packages/SystemUI/res/values-si-rLK/strings_tv.xml
+++ b/packages/SystemUI/res/values-si-rLK/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"ධාවනය කරන්න"</string>
     <string name="pip_pause" msgid="8412075640017218862">"විරාමය"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP පාලනයට "<b>"HOME"</b>" අල්ලාගන්න"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP පාලනය කිරීමට HOME බොත්තම ඔබා අල්ලාගෙන සිටින්න"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"පින්තූරය-තුළ-පින්තූරය"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"මෙය ඔබේ වීඩියෝව ඔබ වෙනත් එකක් ධාවනය කරන තෙක් දසුනෙහි තබා ගනියි. එය පාලනය කිරීමට "<b>"මුල් පිටුව"</b>" ඔබා අල්ලාගෙන සිටින්න."</string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"හරි, තේරුණා"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"අස් කරන්න"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sk/strings.xml b/packages/SystemUI/res/values-sk/strings.xml
index b606d01..3065307 100644
--- a/packages/SystemUI/res/values-sk/strings.xml
+++ b/packages/SystemUI/res/values-sk/strings.xml
@@ -120,6 +120,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Plný signál dátovej siete."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Pripojené k zariadeniu <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Pripojené k zariadeniu <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Žiadna sieť WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Jeden stĺpec signálu siete WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Dva stĺpce signálu siete WiMAX."</string>
@@ -150,12 +152,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Žiadna SIM karta."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobilné dáta sú vypnuté"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Pripojenie cez Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Režim v lietadle."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Žiadna SIM karta."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Zmena siete operátora"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Batéria <xliff:g id="NUMBER">%d</xliff:g> percent."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Nastavenia systému."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Upozornenia."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Vymazať upozornenie."</string>
@@ -193,9 +204,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Stav Nerušiť je zapnutý, iba prioritné."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Stav Nerušiť je zapnutý, úplné ticho."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Stav Nerušiť je zapnutý, iba budíky."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Stav Nerušiť je vypnutý."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Stav Nerušiť je vypnutý."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Stav Nerušiť je zapnutý."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Rozhranie Bluetooth je vypnuté."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Rozhranie Bluetooth je zapnuté."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Rozhranie Bluetooth sa pripája."</string>
@@ -249,7 +264,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Obrazovka je teraz uzamknutá v orientácii na šírku."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Obrazovka je teraz uzamknutá v orientácii na výšku."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Pult s dezertami"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Šetrič obrazovky"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Šetrič obrazovky"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Nerušiť"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Iba prioritné"</string>
@@ -261,6 +276,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Nie sú k dispozícii žiadne spárované zariadenia"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Jas"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Automatické otáčanie"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Otáčanie je uzamknuté"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Na výšku"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Na šírku"</string>
@@ -279,6 +298,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Nepripojené"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Žiadna sieť"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Sieť Wi-Fi je vypnutá"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"K dispozícii nie sú žiadne siete Wi-Fi"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Prenos"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Prenáša sa"</string>
@@ -313,8 +334,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Aplikáciu <xliff:g id="APP">%s</xliff:g> sa nepodarilo spustiť"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Aplikácia <xliff:g id="APP">%s</xliff:g> je v núdzovom režime zakázaná."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Vymazať všetko"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Táto aplikácia nepodporuje režim viacerých okien"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplikácia nepodporuje režim viacerých okien"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplikácia nepodporuje rozdelenú obrazovku"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Presuňte okno sem a použite tak rozdelenú obrazovku"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Rozdeliť vodorovné"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Rozdeliť zvislé"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Rozdeliť vlastné"</string>
@@ -422,11 +443,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> je dialóg hlasitosti"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Klepnutím obnovíte originál."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Používate svoj pracovný profil."</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Klepnutím zapnite zvuk."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Klepnutím aktivujte režim vibrovania. Služby dostupnosti je možné stlmiť."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Klepnutím vypnite zvuk. Služby dostupnosti je možné stlmiť."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Tuner používateľského rozhrania systému"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Zobraziť percentá vloženej batérie"</string>
@@ -472,19 +494,24 @@
     <string name="block" msgid="2734508760962682611">"Blokovať všetky upozornenia"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Nestíšiť"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Nestíšiť ani neblokovať"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Zobraziť nastavenia vysokej dôležitosti"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Zablokované"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Minimálna dôležitosť"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Nízka dôležitosť"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Normálna dôležitosť"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Vysoká dôležitosť"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Neodkladná dôležitosť"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Tieto upozornenia nikdy nezobrazovať"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Zobrazovať v dolnej časti zoznamu upozornení bez zvukového signálu"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Tieto upozornenia zobrazovať bez zvukového signálu"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Umožniť týmto upozorneniam vydávať zvukové signály"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Zobrazovať cez obrazovku a povoliť zvukový signál"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Zobrazovať v hornej časti zoznamu upozornení, zobrazovať cez obrazovku a povoliť zvukový signál"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Ovládacie prvky zobrazovania upozornení"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Zapnuté"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Vypnuté"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Pomocou ovládacích prvkov zobrazovania upozornení môžete nastaviť pre upozornenia aplikácie úroveň dôležitosti od 0 do 5. \n\n"<b>"Úroveň 5"</b>" \n– Zobrazovať v hornej časti zoznamu upozornení. \n– Povoliť prerušenia na celú obrazovku. \n– Vždy zobrazovať čiastočne. \n\n"<b>"Úroveň 4"</b>" \n– Zabrániť prerušeniam na celú obrazovku. \n– Vždy zobrazovať čiastočne. \n\n"<b>"Úroveň 3"</b>" \n– Zabrániť prerušeniam na celú obrazovku. \n– Nikdy nezobrazovať čiastočne. \n\n"<b>"Úroveň 2"</b>" \n– Zabrániť prerušeniam na celú obrazovku. \n– Nikdy nezobrazovať čiastočne. \n– Nikdy nespúšťať zvuk ani vibrácie. \n\n"<b>"Úroveň 1"</b>" \n– Zabrániť prerušeniam na celú obrazovku. \n– Nikdy nezobrazovať čiastočne. \n– Nikdy nespúšťať zvuk ani vibrácie. \n– Skryť na uzamknutej obrazovke a v stavovom riadku. \n– Zobraziť v dolnej časti zoznamu upozornení. \n\n"<b>"Úroveň 0"</b>" \n– Blokovať všetky upozornenia z aplikácie."</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Dôležitosť: Automatická"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Dôležitosť: Úroveň 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Dôležitosť: Úroveň 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Dôležitosť: Úroveň 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Dôležitosť: Úroveň 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Dôležitosť: Úroveň 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Dôležitosť: Úroveň 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Aplikácia určuje dôležitosť každého upozornenia."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nikdy nezobrazovať upozornenia z tejto aplikácie."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Žiadne prerušenia na celú obrazovku, čiastočne sa zobrazujúce prerušenia, zvuky ani vibrácie. Skryť na uzamknutej obrazovke a v stavovom riadku."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Žiadne prerušenia na celú obrazovku, čiastočne sa zobrazujúce prerušenia, zvuky ani vibrácie."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Žiadne prerušenie na celú obrazovku alebo čiastočne sa zobrazujúce prerušenie."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Zobrazovať čiastočne. Žiadne prerušenia na celú obrazovku."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Zobrazovať čiastočne a povoliť prerušenia na celú obrazovku."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Ďalšie nastavenia"</string>
     <string name="notification_done" msgid="5279426047273930175">"Hotovo"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Ovládacie prvky pre upozornenia z aplikácie <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -599,10 +626,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Ďalšie"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Rozdeľovač obrazovky"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Posunúť nadol"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Posunúť nahor"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Posunúť doľava"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Posunúť doprava"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Ľavá – na celú obrazovku"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Ľavá – 70 %"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Ľavá – 50 %"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Ľavá – 30 %"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Pravá– na celú obrazovku"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Horná – na celú obrazovku"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Horná – 70 %"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Horná – 50 %"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Horná – 30 %"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Dolná – na celú obrazovku"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Pozícia <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Upravíte ju dvojitým klepnutím."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Pridáte ju dvojitým klepnutím."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Pozícia <xliff:g id="POSITION">%1$d</xliff:g>. Vyberiete ju dvojitým klepnutím."</string>
@@ -612,6 +645,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Dlaždica <xliff:g id="TILE_NAME">%1$s</xliff:g> bola odstránená"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Dlaždica <xliff:g id="TILE_NAME">%1$s</xliff:g> bola presunutá na pozíciu <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor rýchlych nastavení"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Aplikácia nemusí fungovať so zapnutou rozdelenou obrazovkou."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Aplikácia nepodporuje rozdelenú obrazovku."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Strana <xliff:g id="ID_1">%1$d</xliff:g> z <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sk/strings_tv.xml b/packages/SystemUI/res/values-sk/strings_tv.xml
index cc48e07..fb09d6e 100644
--- a/packages/SystemUI/res/values-sk/strings_tv.xml
+++ b/packages/SystemUI/res/values-sk/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Prehrať"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pozastaviť"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Režim PIP ovládajte pomocou tlačidla "<b>"PLOCHA"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Režim PIP ovládajte stlačením a podržaním tlačidla PLOCHA"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Dobre"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Odmietnuť"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sl/strings.xml b/packages/SystemUI/res/values-sl/strings.xml
index 3c71c09..a1547ba 100644
--- a/packages/SystemUI/res/values-sl/strings.xml
+++ b/packages/SystemUI/res/values-sl/strings.xml
@@ -120,6 +120,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Podatkovni signal poln."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Povezava vzpostavljena z: <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Povezava vzpostavljena z: <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Ni signala WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Signal WiMAX: ena črtica."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Signal WiMAX: dve črtici."</string>
@@ -150,12 +152,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Ni kartice SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Prenos podatkov v mobilnih omrežjih je izklopljen"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Internet prek Bluetootha."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Način za letalo."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Ni kartice SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Spreminjanje omrežja operaterja."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Baterija <xliff:g id="NUMBER">%d</xliff:g> odstotkov."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Sistemske nastavitve."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Obvestila."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Izbriši obvestilo."</string>
@@ -193,9 +204,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Način »ne moti« je vklopljen, samo prednostno."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Način »ne moti« je vklopljen, popolna tišina."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Način »ne moti« je vklopljen, samo alarmi."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Način »ne moti« je izklopljen."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Način »ne moti« je izklopljen."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Način »ne moti« je vklopljen."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth je izklopljen."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth je vklopljen."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Povezava Bluetooth se vzpostavlja."</string>
@@ -249,7 +264,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Zaslon je zaklenjen v ležeči usmerjenosti."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Zaslon je zaklenjen v pokončni usmerjenosti."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Vitrina za sladice"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Sanjarjenje"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Ohranjeval. zaslona"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Ne moti"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Samo prednostno"</string>
@@ -261,6 +276,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Na voljo ni nobene seznanjene naprave"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Svetlost"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Samodejno sukanje"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Sukanje je zaklenjeno"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Pokončno"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Ležeče"</string>
@@ -279,6 +298,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Povezava ni vzpostavljena"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Ni omrežja"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi izklopljen"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Na voljo ni nobeno omrežje Wi-Fi"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Predvajanje"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Predvajanje"</string>
@@ -313,8 +334,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Aplikacije <xliff:g id="APP">%s</xliff:g> ni bilo mogoče zagnati."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Aplikacija <xliff:g id="APP">%s</xliff:g> je v varnem načinu onemogočena."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Izbriši vse"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Ta aplikacija ne podpira načina z več okni"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplikacija ne podpira načina z več okni"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplikacija ne podpira načina razdeljenega zaslona"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Povlecite sem za razdeljeni zaslon"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Razdeli vodoravno"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Razdeli navpično"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Razdeli po meri"</string>
@@ -422,11 +443,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> je pogovorno okno glede prostornine"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Dotaknite se, če želite obnoviti izvirnik."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Uporabljate delovni profil"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Dotaknite se, če želite vklopiti zvok."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Dotaknite se, če želite nastaviti vibriranje. V storitvah za ljudi s posebnimi potrebami bo morda izklopljen zvok."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Dotaknite se, če želite izklopiti zvok. V storitvah za ljudi s posebnimi potrebami bo morda izklopljen zvok."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Uglaševalnik uporabniškega vmesnika sistema"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Prikaži odstotek napolnjenosti vgraj. akumulatorja"</string>
@@ -472,19 +494,24 @@
     <string name="block" msgid="2734508760962682611">"Blokiraj vsa obvestila"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ne utišaj"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ne utišaj ali blokiraj"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Prikaz celotnih nastavitev za pomembnost"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blokirano"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Najmanjša pomembnost"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Nizka pomembnost"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Običajna pomembnost"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Visoka pomembnost"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Nujna pomembnost"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Nikoli ne prikaži teh obvestil"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Prikaži na dnu seznama obvestil brez zvoka"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Prikaži ta obvestila brez zvoka"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Dovoli zvoke za ta obvestila"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Za hip pokaži predogled na zaslonu in dovoli zvok"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Prikaži na vrhu seznama obvestil, za hip pokaži predogled na zaslonu in dovoli zvok"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Kontrolniki za pomembnost obvestil"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Vklopljeno"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Izklopljeno"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"S kontrolniki za pomebnost obvestila je mogoče za obvestila aplikacije nastaviti stopnjo pomembnosti od 0 do 5. \n\n"<b>"Stopnja 5"</b>" \n– Prikaz na vrhu seznama obvestil \n– Omogočanje prekinitev v celozaslonskem načinu \n– Vedno prikaži hitre predoglede \n\n"<b>"Stopnja 4"</b>" \n– Preprečevanje prekinitev v celozaslonskem načinu \n– Vedno prikaži hitre predoglede \n\n"<b>"Stopnja 3"</b>" \n– Preprečevanje prekinitev v celozaslonskem načinu \n– Nikoli ne prikaži hitrih predogledov \n\n"<b>"Stopnja 2"</b>" \n– Preprečevanje prekinitev v celozaslonskem načinu \n– Nikoli ne prikaži hitrih predogledov \n– Nikoli ne uporabi zvoka in vibriranja \n\n"<b>"Stopnja 1"</b>" \n– Preprečevanje prekinitev v celozaslonskem načinu \n– Nikoli ne prikaži hitrih predogledov \n– Nikoli ne uporabi zvoka in vibriranja \n– Skrivanje na zaklenjenem zaslonu in v vrstici stanja \n– Prikaz na dnu seznama obvestil \n\n"<b>"Stopnja 0"</b>" \n– Blokiranje vseh obvestil aplikacije"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Pomembnost: Samodejno"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Pomembnost: stopnja 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Pomembnost: stopnja 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Pomembnost: stopnja 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Pomembnost: stopnja 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Pomembnost: stopnja 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Pomembnost: stopnja 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Aplikacija določi pomembnost za posamezno obvestilo."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Nikoli ne pokaži obvestil za to aplikacijo."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Brez prekinitev, predog., zvoka ali vibrir. v celoz. načinu. Skrij na zakl. zasl. in v vrst. stanja."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Brez prekinitev, hitrih predogledov, zvoka ali vibriranja v celozaslonskem načinu."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Brez prekinitev ali hitrih predogledov v celozaslonskem načinu."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Vedno prikaži hitri predogled. Brez prekinitev v celozaslonskem načinu."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Vedno prikaži hitri predogled in dovoli prekinitve v celozaslonskem načinu."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Več nastavitev"</string>
     <string name="notification_done" msgid="5279426047273930175">"Dokončano"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Kontrolniki obvestil za aplikacijo <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -599,10 +626,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Drugo"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Razdelilnik zaslonov"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Premakni navzdol"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Premakni navzgor"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Premakni levo"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Premakni desno"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Levi v celozaslonski način"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Levi 70 %"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Levi 50 %"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Levi 30 %"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Desni v celozaslonski način"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Zgornji v celozaslonski način"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Zgornji 70 %"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Zgornji 50 %"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Zgornji 30 %"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Spodnji v celozaslonski način"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Položaj <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Če želite urediti, se dvakrat dotaknite."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Če želite dodati, se dvakrat dotaknite."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Položaj: <xliff:g id="POSITION">%1$d</xliff:g>. Če želite izbrati, se dvakrat dotaknite."</string>
@@ -612,6 +645,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> je odstranjeno"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> premaknjeno na položaj <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Urejevalnik hitrih nastavitev."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Aplikacija morda ne deluje v načinu razdeljenega zaslona."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Aplikacija ne podpira načina razdeljenega zaslona."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_1">%1$d</xliff:g>. stran od <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sl/strings_tv.xml b/packages/SystemUI/res/values-sl/strings_tv.xml
index 38f9e8e..4336415 100644
--- a/packages/SystemUI/res/values-sl/strings_tv.xml
+++ b/packages/SystemUI/res/values-sl/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Predvajanje"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Zaustavitev"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Pridr. "<b>"HOME"</b>" za up. n. PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Pridržite gumb HOME za upravljanje načina PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Razumem"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Opusti"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sq-rAL/strings.xml b/packages/SystemUI/res/values-sq-rAL/strings.xml
index fe79425..1f50ef0 100644
--- a/packages/SystemUI/res/values-sq-rAL/strings.xml
+++ b/packages/SystemUI/res/values-sq-rAL/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Sinjali i të dhënave është i plotë."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Lidhur me <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Lidhur me <xliff:g id="BLUETOOTH">%s</xliff:g>"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Nuk ka WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX ka një vijë"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX ka dy vija."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Nuk ka kartë SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Të dhënat celulare joaktive"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Po lidhet me \"bluetooth\"."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"modaliteti i aeroplanit"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Nuk ka kartë SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Rrjeti i operatorit celular po ndryshohet."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Bateria ka edhe <xliff:g id="NUMBER">%d</xliff:g> për qind."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Bateria po ngarkohet, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> për qind."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Cilësimet e sistemit."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Njoftimet."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Pastro njoftimin."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"\"Mos shqetëso\" është i aktivizuar, vetëm me prioritet."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"\"Mos shqetëso\" është aktiv, heshtje e plotë."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"\"Mos shqetëso\" është i aktivizuar, vetëm alarmet."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\"Mos shqetëso\" është i çaktivizuar."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\"Mos shqetëso\" është i çaktivizuar."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\"Mos shqetëso\" është i aktivizuar."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"\"Bluetooth-i\" është i çaktivizuar."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"\"Bluetooth-i\" është i aktivizuar."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"\"Bluetooth-i\" po lidhet."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Tani ekrani është i kyçur në orientimin horizontal."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ekrani tani është i kyçur në orientimin vertikal."</string>
     <string name="dessert_case" msgid="1295161776223959221">"\"Kutia e ëmbëlsirës\""</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Mbrojtësi atraktiv i ekranit"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Mbrojtësi i ekranit"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Eternet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Mos shqetëso"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Vetëm me prioritet"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Nuk ofrohet për përdorim asnjë pajisje e çiftuar"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Ndriçimi"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rrotullim automatik"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"rrotullimi është i kyçur"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Vertikalisht"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Horizontalisht"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Nuk është i lidhur"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Nuk ka rrjet"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi është i çaktivizuar"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Nuk ka rrjete Wi-Fi të disponueshme"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Transmeto"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Po transmeton"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> nuk mundi të nisej."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> është i çaktivizuar në modalitetin e sigurt."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Pastroji të gjitha"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Ky aplikacion nuk e mbështet modalitetin me shumë dritare"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Aplikacioni nuk e mbështet modalitetin me shumë dritare"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Aplikacioni nuk e mbështet ekranin e ndarë"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Zvarrit këtu për të përdorur ekranin e ndarë"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Ndaje horizontalisht"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Ndaj vertikalisht"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Ndaj të personalizuarën"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> është dialogu i volumit"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Prek për të restauruar origjinalin."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Po përdor profilin tënd të punës"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Trokit për të aktivizuar."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Trokit për ta caktuar te dridhja. Shërbimet e qasshmërisë mund të çaktivizohen."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Trokit për të çaktivizuar. Shërbimet e qasshmërisë mund të çaktivizohen."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Sintonizuesi i Sistemit të Ndërfaqes së Përdoruesit"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Shfaq përqindjen e baterisë së integruar"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Blloko të gjitha njoftimet"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Mos e vendos në heshtje"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Mos e vendos në heshtje ose mos e blloko"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Shfaq cilësimet e plota të rëndësisë"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"I bllokuar"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Rëndësi minimale"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Rëndësi e ulët"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Rëndësi normale"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Rëndësi e lartë"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Rëndësi urgjente"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Mos i shfaq asnjëherë këto njoftime"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Shfaqi në heshtje në fund të listës së njoftimeve"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Shfaqi këto njoftime në heshtje"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Lejoji këto njoftime të nxjerrin tinguj"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Shfaq një vështrim të shpejtë në ekran dhe lësho një tingull"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Shfaqi në krye të listës së njoftimeve, shfaq vështrim të shpejtë në ekran dhe lësho një tingull"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Kontrollet e njoftimit të energjisë"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Aktiv"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Joaktiv"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Me kontrollet e njoftimit të energjisë, mund të caktosh një nivel rëndësie nga 0 në 5 për njoftimet e një aplikacioni. \n\n"<b>"Niveli 5"</b>" \n- Shfaq në krye të listës së njoftimeve \n- Lejo ndërprerjen e ekranit të plotë \n- Gjithmonë shfaq shpejt \n\n"<b>"Niveli 4"</b>" \n- Parandalo ndërprerjen e ekranit të plotë \n- Gijthmonë shfaq shpejt \n\n"<b>"Niveli 3"</b>" \n- Parandalo ndërprerjen e ekranit të plotë \n- Asnjëherë mos shfaq shpejt \n\n"<b>"Niveli 2"</b>" \n- Parandalo ndërprerjen e ekranit të plotë \n- Asnjëherë mos shfaq shpejt \n- Asnjëherë mos lësho tingull dhe dridhje \n\n"<b>"Niveli 1"</b>" \n- Parandalo ndërprerjen e ekranit të plotë \n- Asnjëherë mos shfaq shpejt \n- Asnjëherë mos lësho tingull ose dridhje \n- Fshih nga ekrani i kyçjes dhe shiriti i statusit \n- Shfaq në fund të listës së njoftimeve \n\n"<b>"Niveli 0"</b>" \n- Blloko të gjitha njoftimet nga aplikacioni"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Rëndësia: Automatike"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Rëndësia: Niveli 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Rëndësia: Niveli 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Rëndësia: Niveli 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Rëndësia: Niveli 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Rëndësia: Niveli 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Rëndësia: Niveli 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Aplikacioni përcakton rëndësinë për çdo njoftim."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Mos trego asnjëherë njoftime nga ky aplikacion."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Nuk ka ndërprerje të plotë të ekranit, shfaqje të shpejtë, tingull apo dridhje. Fshihe nga ekrani i kyçjes dhe shiriti i statusit."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Nuk ka ndërprerje të plotë të ekranit, shfaqje të shpejtë, tingull apo dridhje."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Nuk ka ndërprerje të plotë të ekranit apo shfaqje të shpejtë."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Gjithmonë shfaq shpejt. Nuk ka ndërprerje të plotë të ekranit."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Gjithmonë shfaq shpejt dhe lejo ndërprerje të plotë të ekranit."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Cilësime të tjera"</string>
     <string name="notification_done" msgid="5279426047273930175">"U krye"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Kontrollet e njoftimeve të <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Të tjera"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Ndarësi i ekranit të ndarë"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Lëviz poshtë"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Lëviz lart"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Lëviz majtas"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Lëviz djathtas"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Ekrani i plotë majtas"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Majtas 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Majtas 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Majtas 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Ekrani i plotë djathtas"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Ekrani i plotë lart"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Lart 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Lart 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Lart 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Ekrani i plotë poshtë"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Pozicioni <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Trokit dy herë për ta redaktuar."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Trokit dy herë për ta shtuar."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Pozicioni <xliff:g id="POSITION">%1$d</xliff:g>. Trokit dy herë për ta zgjedhur."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> u hoq"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> u zhvendos te pozicioni <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Redaktori i cilësimeve të shpejta."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Aplikacioni mund të mos funksionojë me ekranin e ndarë."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Aplikacioni nuk mbështet ekranin e ndarë."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Faqja <xliff:g id="ID_1">%1$d</xliff:g> nga <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sq-rAL/strings_tv.xml b/packages/SystemUI/res/values-sq-rAL/strings_tv.xml
index 672a119..64259d1 100644
--- a/packages/SystemUI/res/values-sq-rAL/strings_tv.xml
+++ b/packages/SystemUI/res/values-sq-rAL/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Luaj"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pauzë"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Mbaj shtypur "<b>"HOME"</b>" për të kontrolluar PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Shtyp dhe mbaj shtypur butonin HOME për të kontrolluar PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"E kuptova"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Hiqe"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sr/strings.xml b/packages/SystemUI/res/values-sr/strings.xml
index 772aca4..d6fc1a1 100644
--- a/packages/SystemUI/res/values-sr/strings.xml
+++ b/packages/SystemUI/res/values-sr/strings.xml
@@ -119,6 +119,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Сигнал за податке је најјачи."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Повезани сте са <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Повезани сте са <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Нема WiMAX сигнала."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX сигнал има једну црту."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX сигнал има две црте."</string>
@@ -149,12 +151,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Нема SIM картице."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Подаци за мобилне уређаје су искључени"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth привезивање."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Режим рада у авиону."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Нема SIM картице."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Промена мреже мобилног оператера."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Батерија је на <xliff:g id="NUMBER">%d</xliff:g> посто."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Батерија се пуни, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> процената."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Системска подешавања."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Обавештења."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Обриши обавештење."</string>
@@ -192,9 +201,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Подешавање Не узнемиравај је укључено, само приоритетни прекиди."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Подешавање Не узнемиравај је укључено, потпуна тишина."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Подешавање Не узнемиравај је укључено, само аларми."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Подешавање Не узнемиравај је искључено."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Подешавање Не узнемиравај је искључено."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Подешавање Не узнемиравај је укључено."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth је искључен."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth је укључен."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth се повезује."</string>
@@ -248,7 +261,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Екран је сада закључан у вертикалном положају."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Екран је сада закључан у хоризонталном положају."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Витрина са посластицама"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Сањарење"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Чувар екрана"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Етернет"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Не узнемиравај"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Само приоритетни прекиди"</string>
@@ -260,6 +273,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Није доступан ниједан упарени уређај"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Осветљеност"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Аутоматска ротација"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Ротација је закључана"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Вертикални приказ"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Хоризонтални приказ"</string>
@@ -278,6 +295,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Веза није успостављена"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Нема мреже"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi је искључен"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Није доступна ниједна Wi-Fi мрежа"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Пребацивање"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Пребацивање"</string>
@@ -312,8 +331,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Покретање апликације <xliff:g id="APP">%s</xliff:g> није успело."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Апликација <xliff:g id="APP">%s</xliff:g> је онемогућена у безбедном режиму."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Обриши све"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Ова апликација не подржава режим са више прозора"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Апликација не подржава режим са више прозора"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Апликација не подржава подељени екран"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Превуците овде да бисте користили раздељени екран"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Подели хоризонтално"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Подели вертикално"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Прилагођено дељење"</string>
@@ -421,11 +440,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> је дијалог за јачину звука"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Додирните да бисте вратили оригинал."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Користите профил за Work"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Додирните да бисте укључили звук."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Додирните да бисте подесили на вибрацију. Звук услуга приступачности ће можда бити искључен."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Додирните да бисте искључили звук. Звук услуга приступачности ће можда бити искључен."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Тјунер за кориснички интерфејс система"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Приказуј уграђени проценат батерије"</string>
@@ -471,19 +491,24 @@
     <string name="block" msgid="2734508760962682611">"Блокирај сва обавештења"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Не искључуј звук"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Не искључују звук нити блокирај"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Прикажи комплетна подешавања важности"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Блокирана"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Веома мала важност"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Мала важност"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Уобичајена важност"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Велика важност"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Важност: хитно"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Ова обавештења се никада не приказују"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Приказују се у дну листе обавештења без звука"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Ова обавештења се приказују без звука"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Дозволите да ова обавештења емитују звук"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Накратко се приказују на екрану и емитују звук"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Приказују се у врху листе обавештења, накратко се приказују на екрану и емитују звук"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Напредне контроле за обавештења"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Укључено"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Искључено"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Помоћу напредних контрола за обавештења можете да подесите ниво важности од 0. до 5. за обавештења апликације. \n\n"<b>"5. ниво"</b>" \n– Приказују се у врху листе обавештења \n- Дозволи прекид режима целог екрана \n– Увек завируј \n\n"<b>"4. ниво"</b>" \n– Спречи прекид режима целог екрана \n– Увек завируј \n\n"<b>"3. ниво"</b>" \n– Спречи прекид режима целог екрана \n– Никада не завируј \n\n"<b>"2. ниво"</b>" \n– Спречи прекид режима целог екрана \n– Никада не завируј \n– Никада не производи звук или вибрацију \n\n"<b>"1. ниво"</b>" \n– Спречи прекид режима целог екрана \n– Никада не завируј \n– Никада не производи звук или вибрацију \n– Сакриј на закључаном екрану и статусној траци \n– Приказују се у дну листе обавештења \n\n"<b>"0. ниво"</b>" \n– Блокирај сва обавештења из апликације"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Важност: Аутоматски"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Важност: 0. ниво"</string>
+    <string name="min_importance" msgid="560779348928574878">"Важност: 1. ниво"</string>
+    <string name="low_importance" msgid="7571498511534140">"Важност: 2. ниво"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Важност: 3. ниво"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Важност: 4. ниво"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Важност: 5. ниво"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Апликација одређује важност сваког обавештења."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Никада не приказуј обавештења из ове апликације"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Без прекида режима целог екрана, завиривања, звука или вибрације. Сакриј на закључаном екрану и статусној траци."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Без прекида режима целог екрана, завиривања, звука или вибрације."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Без прекида режима целог екрана или завиривања."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Увек завируј. Без прекида режима целог екрана."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Увек завируј и дозволи прекид режима целог екрана."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Још подешавања"</string>
     <string name="notification_done" msgid="5279426047273930175">"Готово"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Контроле обавештења за апликацију <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -598,10 +623,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Друго"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Разделник подељеног екрана"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Помери надоле"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Помери нагоре"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Помери улево"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Помери удесно"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Режим целог екрана за леви екран"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Леви екран 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Леви екран 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Леви екран 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Режим целог екрана за доњи екран"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Режим целог екрана за горњи екран"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Горњи екран 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Горњи екран 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Горњи екран 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Режим целог екрана за доњи екран"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g>. позиција, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Двапут додирните да бисте изменили."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Двапут додирните да бисте додали."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g>. позиција. Двапут додирните да бисте изабрали."</string>
@@ -611,6 +642,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Плочица <xliff:g id="TILE_NAME">%1$s</xliff:g> је уклоњена"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Плочица <xliff:g id="TILE_NAME">%1$s</xliff:g> је премештена на <xliff:g id="POSITION">%2$d</xliff:g>. позицију"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Уређивач за Брза подешавања."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Апликација можда неће функционисати са подељеним екраном."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Апликација не подржава подељени екран."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_1">%1$d</xliff:g>. страна од <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sr/strings_tv.xml b/packages/SystemUI/res/values-sr/strings_tv.xml
index d822e4e..10f2aaf 100644
--- a/packages/SystemUI/res/values-sr/strings_tv.xml
+++ b/packages/SystemUI/res/values-sr/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Пусти"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Паузирај"</string>
     <string name="pip_hold_home" msgid="340086535668778109"><b>"ПОЧЕТНИ ЕКРАН"</b>" конт. PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Притисните и задржите дугме ПОЧЕТНИ ЕКРАН да бисте контролисали PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Важи"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Одбаци"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sv/strings.xml b/packages/SystemUI/res/values-sv/strings.xml
index 5acbc61..7897610 100644
--- a/packages/SystemUI/res/values-sv/strings.xml
+++ b/packages/SystemUI/res/values-sv/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Datasignalen är full."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Ansluten till <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Ansluten till <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Ingen WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX: en stapel."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX: två staplar."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Inget SIM-kort."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobildata inaktiverat"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Internetdelning via Bluetooth"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Flygplansläge"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Inget SIM-kort."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Byter leverantörsnätverk."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Batteri <xliff:g id="NUMBER">%d</xliff:g> procent."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Batteriet laddas, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> procent."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Systeminställningar."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Meddelanden."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Ta bort meddelandet."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Stör ej har aktiverats. Endast prioriterade."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Stör ej är aktiverat. Helt tyst."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Stör ej är aktiverat, endast alarm."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Stör ej av."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Stör ej har inaktiverats."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Stör ej har aktiverats."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth av."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth på."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Ansluter Bluetooth."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Bildskärmens riktning är nu låst i liggande format."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Bildskärmens riktning är nu låst i stående format."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessertdisken"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Dagdröm"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Skärmsläckare"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Stör ej"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Endast prioriterade"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Det finns inga kopplade enheter tillgängliga"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Ljusstyrka"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Rotera automatiskt"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Rotationen har låsts"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Stående"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Liggande"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Ej ansluten"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Inget nätverk"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi av"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Det finns inga tillgängliga Wi-Fi-nätverk"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Casta"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Castar"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Det gick inte att starta appen <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> är inaktiverad i säkert läge."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Rensa alla"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Den här appen har inte stöd för flera fönster"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Appen har inte stöd för flera fönster"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Appen har inte stöd för delad skärm."</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Dra här om du vill dela upp skärmen"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Dela horisontellt"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Dela vertikalt"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Dela anpassad"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> används som volymkontroll"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Tryck här om du vill återställa den ursprungliga appen."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Du använder din jobbprofil"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Tryck här om du vill slå på ljudet."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Tryck här om du vill sätta på vibrationen. Tillgänglighetstjänster kanske inaktiveras."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Tryck här om du vill stänga av ljudet. Tillgänglighetstjänsterna kanske inaktiveras."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Inställningar för systemgränssnitt"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Visa inbäddad batteriprocent"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Blockera alla aviseringar"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Stäng inte av ljudet"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Stäng inte av ljudet och blockera inte"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Visa alla relevansinställningarna"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Blockerad"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Oviktig avisering"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Oviktig avisering"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Vanlig avisering"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Viktig avisering"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Brådskande avisering"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Visa aldrig de här aviseringarna"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Visa längst ned i listan, utan ljud"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Visa aviseringarna utan ljud"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Tillåt ljud för de här aviseringarna"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Visa med snabbtitt på skärmen och tillåt ljud"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Visa högst upp i aviseringslistan och med snabbtitt på skärmen samt tillåt ljud"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Prioritetsinställningar för aviseringar"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Av"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"På"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Med aviseringsinställningarna kan du ange prioritetsnivå från 0 till 5 för aviseringar från en app. \n\n"<b>"Nivå 5"</b>" \n– Visa högst upp i aviseringslistan\n– Tillåt avbrott i helskärmsläge \n– Snabbvisa alltid \n\n"<b>"Nivå 4"</b>" \n– Tillåt inte avbrott i helskärmsläge \n– Snabbvisa alltid \n\n"<b>"Nivå 3"</b>" \n- Tillåt inte avbrott i helskärmsläge \n– Snabbvisa aldrig \n\n"<b>"Nivå 2"</b>" \n– Tillåt inte avbrott i helskärmsläge \n– Snabbvisa aldrig \n– Aldrig med ljud eller vibration \n\n"<b>"Nivå 1"</b>" \n– Tillåt inte avbrott i helskärmsläge \n– Snabbvisa aldrig \n– Aldrig med ljud eller vibration \n– Visa inte på låsskärmen och i statusfältet \n– Visa längst ned i aviseringslistan \n\n"<b>"Nivå 0"</b>" \n– Blockera alla aviseringar från appen"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Prioritet: automatisk"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Prioritet: nivå 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Prioritet: nivå 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Prioritet: nivå 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Prioritet: nivå 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Prioritet: nivå 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Prioritet: nivå 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Appen fastställer prioritet för varje avisering."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Visa aldrig aviseringar från appen."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Inga avbrott, snabbvisningar, ljud eller vibrationer i helskärm. Dölj från låsskärm och statusfält."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Inga avbrott, snabbvisningar, ljud eller vibrationer i helskärmsläge."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Avbryt eller snabbvisa inte i helskärmsläge."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Snabbvisa alltid. Avbryt inte i helskärmsläge."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Snabbvisa alltid och tillåt avbrott i helskärmsläge."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Fler inställningar"</string>
     <string name="notification_done" msgid="5279426047273930175">"Klar"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Inställningar för <xliff:g id="APP_NAME">%1$s</xliff:g>-aviseringar"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Annat"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Avdelare för delad skärm"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Flytta nedåt"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Flytta uppåt"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Flytta åt vänster"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Flytta åt höger"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Helskärm på vänster skärm"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Vänster 70 %"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Vänster 50 %"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Vänster 30 %"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Helskärm på höger skärm"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Helskärm på övre skärm"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Övre 70 %"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Övre 50 %"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Övre 30 %"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Helskärm på nedre skärm"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Position <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Tryck snabbt två gånger om du vill redigera positionen."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Lägg till genom att trycka snabbt två gånger."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Position <xliff:g id="POSITION">%1$d</xliff:g>. Välj den genom att trycka snabbt två gånger."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> har tagits bort"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> har flyttats till position <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Redigerare för snabbinställningar."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Appen kanske inte fungerar med delad skärm."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Appen har inte stöd för delad skärm."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Sida <xliff:g id="ID_1">%1$d</xliff:g> av <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sv/strings_tv.xml b/packages/SystemUI/res/values-sv/strings_tv.xml
index 0c0afc3..d95ccf3 100644
--- a/packages/SystemUI/res/values-sv/strings_tv.xml
+++ b/packages/SystemUI/res/values-sv/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Spela upp"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pausa"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Styr PIP med "<b>"startknappen"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Styr bild-i-bild genom att hålla ned startsideknappen"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Ignorera"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sw/strings.xml b/packages/SystemUI/res/values-sw/strings.xml
index d4d278d..ddba112 100644
--- a/packages/SystemUI/res/values-sw/strings.xml
+++ b/packages/SystemUI/res/values-sw/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Ishara ya data imejaa."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Imeunganishwa kwenye <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Imeunganishwa kwenye <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Hakuna WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Pau moja ya WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Pau mbili za WiMAX."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Ukingo"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Hakuna SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Data ya simu za mkononi Imezimwa"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Shiriki intaneti kwa Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Hali ya ndege."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Hakuna SIM kadi."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Mabadiliko ya mtandao wa mtoa huduma."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Asilimia <xliff:g id="NUMBER">%d</xliff:g> ya betri"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Betri inachaji, asilimia <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g>."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Mipangilio ya mfumo."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Arifa."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Futa arifa"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Kipengee cha usinisumbue kimewashwa, kipaumbele pekee."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Usinisumbue, kimya kabisa."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Kipengee cha usinisumbue kimewashwa, kengele pekee."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Kipengee cha usinisumbue kimezimwa."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Kipengee cha usinisumbue kimezimwa."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Kipengee cha usinisumbue kimewashwa."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth imezimwa."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth imewashwa."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth inaunganishwa."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Skrini sasa imefungwa katika mkao wa ulalo."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Skrini sasa imefungwa katika mkao wa wima."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Sanduku la Vitindamlo"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Hali Tulivu"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Taswira ya skrini"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Usinisumbue"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Kipaumbele tu"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Hakuna vifaa vilivyooanishwa vinavyopatikana"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Ung\'avu"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Zungusha kiotomatiki"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Mzunguko umefungwa"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Wima"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Mlalo"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Haijaunganishwa"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Hakuna Mtandao"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi Imezimwa"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Hakuna mitandao ya Wi-Fi inayopatikana"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Tuma"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Inatuma"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Haikuweza kuanzisha <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> imezimwa katika hali salama."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Futa zote"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Programu hii haitumiki katika hali ya madirisha mengi"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Programu haitumiki katika hali ya madirisha mengi"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Programu haiwezi kutumia skrini iliyogawanywa"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Buruta hapa ili utumie skrini iliyogawanywa"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Gawanya Mlalo"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Gawanya Wima"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Maalum Iliyogawanywa"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> ni mazungumzo ya sauti"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Gusa ili urejeshe ya awali."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Unatumia wasifu wako wa kazini"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Gonga ili urejeshe."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Gonga ili uweke mtetemo. Huenda ikakomesha huduma za zana za walio na matatizo ya kuona au kusikia."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Gonga ili ukomeshe. Huenda ikakomesha huduma za zana za walio na matatizo ya kuona au kusikia."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Kipokea Ishara cha SystemUI"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Onyesha asilimia ya betri iliyopachikwa"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Zuia arifa zote"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Usinyamazishe"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Usinyamazishe wala kuzuia"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Onyesha mipangilio kamili ya umuhimu"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Amezuiwa"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Umuhimu wa kiwango cha chini"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Umuhimu kiwango cha chini"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Umuhimu wa kiwango cha kawaida"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Umuhimu wa kiwango cha juu"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Umuhimu wa hali ya dharura"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Usionyeshe arifa hizi kamwe"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Onyesha katika sehemu ya chini ya orodha ya arifa bila sauti"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Onyesha arifa hizi bila sauti"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Ruhusu arifa hizi zitoe sauti"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Chungulia kwenye skrini na uruhusu sauti"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Onyesha katika sehemu ya juu ya orodha ya arifa, chungulia kwenye skrini na uruhusu sauti"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Udhibiti wa arifa"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Imewashwa"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Imezimwa"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Ukiwa na udhibiti wa arifa, unaweza kuweka kiwango cha umuhimu wa arifa za programu kuanzia 0 hadi 5. \n\n"<b>"Kiwango cha 5"</b>" \n- Onyesha katika sehemu ya juu ya orodha ya arifa \n- Ruhusu ukatizaji wa skrini nzima \n- Ruhusu arifa za kuchungulia kila wakati\n\n"<b>"Kiwango cha 4"</b>" \n- Zuia ukatizaji wa skrini nzima\n- Ruhusu arifa za kuchungulia kila wakati \n\n"<b>"Kiwango cha 3"</b>" \n- Zuia ukatizaji wa skrini nzima\n- Usiruhusu kamwe arifa za kuchungulia\n\n"<b>"Kiwango cha 2"</b>" \n- Zuia ukatizaji wa skrini nzima\n- Usiruhusu kamwe arifa za kuchungulia \n- Usiruhusu kamwe sauti au mtetemo \n\n"<b>"Kiwango cha 1"</b>" \n- Zuia ukatizaji wa skrini nzima \n- Usiruhusu kamwe arifa za kuchungulia \n- Usiruhusu kamwe sauti na mtetemo \n- Usionyeshe skrini iliyofungwa na sehemu ya arifa \n- Onyesha katika sehemu ya chini ya orodha ya arifa \n\n"<b>"Kiwango cha 0"</b>" \n- Zuia arifa zote kutoka programu"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Umuhimu wa Arifa: Kiotomatiki"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Umuhimu wa Arifa: Kiwango cha 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Umuhimu wa Arifa: Kiwango cha 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Umuhimu wa Arifa: Kiwango cha 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Umuhimu wa Arifa: Kiwango cha 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Umuhimu wa Arifa: Kiwango cha 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Umuhimu wa Arifa: Kiwango cha 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Programu hubaini umuhimu wa kila arifa."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Usionyeshe kamwe arifa kutoka programu hii."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Usiruhusu ukatizaji wa skrini nzima, arifa za kuchungulia, sauti au mtetemo. Usionyeshe katika skrini iliyofungwa na sehemu ya kuonyesha hali."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Usiruhusu ukatizaji wa skrini nzima, arifa za kuchungulia, sauti au mtetemo."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Usiruhusu arifa za kuchungulia au ukatizaji wa skrini nzima."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Ruhusu arifa za kuchungulia kila wakati. Usiruhusu ukatizaji wa skrini nzima."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Ruhusu arifa za kuchungulia na ukatizaji wa skrini nzima."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Mipangilio zaidi"</string>
     <string name="notification_done" msgid="5279426047273930175">"Nimemaliza"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Vidhibiti vya arifa za <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Nyingine"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Kitenganishi cha skrini inayogawanywa"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Sogeza chini"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Sogeza juu"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Sogeza kushoto"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Sogeza kulia"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Skrini nzima ya kushoto"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Kushoto 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Kushoto 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Kushoto 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Skrini nzima ya kulia"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Skrini nzima ya juu"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Juu 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Juu 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Juu 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Skrini nzima ya chini"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Nafasi ya <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Gonga mara mbili ili ubadilishe."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Gonga mara mbili ili uongeze."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Nafasi ya <xliff:g id="POSITION">%1$d</xliff:g>. Gonga mara mbili ili uchague."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> imeondolewa"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> imehamishiwa kwenye nafasi ya <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Kihariri cha Mipangilio ya haraka."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Huenda programu isifanye kazi kwenye skrini inayogawanywa."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Programu haiwezi kutumia skrini iliyogawanywa."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Ukurasa wa <xliff:g id="ID_1">%1$d</xliff:g> kati ya <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sw/strings_tv.xml b/packages/SystemUI/res/values-sw/strings_tv.xml
index 4875f73..585ffe2 100644
--- a/packages/SystemUI/res/values-sw/strings_tv.xml
+++ b/packages/SystemUI/res/values-sw/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Cheza"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Sitisha"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Shikilia kitufe cha "<b>"HOME"</b>" ili udhibiti PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Bonyeza na ushikilie kitufe cha HOME ili kudhibiti PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Nimeelewa"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Ondoa"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-sw410dp/config.xml b/packages/SystemUI/res/values-sw410dp/config.xml
index 08b2f88..049a535 100644
--- a/packages/SystemUI/res/values-sw410dp/config.xml
+++ b/packages/SystemUI/res/values-sw410dp/config.xml
@@ -21,4 +21,6 @@
      for different hardware and product builds. -->
 <resources>
     <integer name="quick_settings_num_rows">2</integer>
+
+    <bool name="quick_settings_show_date">true</bool>
 </resources>
diff --git a/packages/SystemUI/res/values-sw600dp/config.xml b/packages/SystemUI/res/values-sw600dp/config.xml
index 1f6bbd3..fd147cd 100644
--- a/packages/SystemUI/res/values-sw600dp/config.xml
+++ b/packages/SystemUI/res/values-sw600dp/config.xml
@@ -36,4 +36,7 @@
     <!-- Nav bar button default ordering/layout -->
     <string name="config_navBarLayout" translatable="false">space;back,home,recent;menu_ime</string>
 
+    <!-- Animation duration when using long press on recents to dock -->
+    <integer name="long_press_dock_anim_duration">290</integer>
+
 </resources>
diff --git a/packages/SystemUI/res/values-sw600dp/dimens.xml b/packages/SystemUI/res/values-sw600dp/dimens.xml
index a2010be..6c5a313 100644
--- a/packages/SystemUI/res/values-sw600dp/dimens.xml
+++ b/packages/SystemUI/res/values-sw600dp/dimens.xml
@@ -98,4 +98,7 @@
 
     <!-- Keyboard shortcuts helper -->
     <dimen name="ksh_layout_width">488dp</dimen>
+
+    <!-- The offsets the tasks animate from when recents is launched while docking -->
+    <dimen name="recents_task_stack_animation_launched_while_docking_offset">192dp</dimen>
 </resources>
diff --git a/packages/SystemUI/res/values-ta-rIN/strings.xml b/packages/SystemUI/res/values-ta-rIN/strings.xml
index 3714c06..e0b7f18 100644
--- a/packages/SystemUI/res/values-ta-rIN/strings.xml
+++ b/packages/SystemUI/res/values-ta-rIN/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"தரவு சிக்னல் முழுமையாக உள்ளது."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g>க்கு இணைக்கப்பட்டது."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g>க்கு இணைக்கப்பட்டது."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX இல்லை."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX ஒரு கோடு."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX இரண்டு கோடுகள்."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"வைஃபை"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"சிம் இல்லை."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"செல்லுலார் தரவு முடக்கப்பட்டது"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"புளூடூத் டெதெரிங்."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"விமானப் பயன்முறை."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"சிம் கார்டு இல்லை."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"மொபைல் நிறுவன மாற்றம்."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"பேட்டரி சக்தி <xliff:g id="NUMBER">%d</xliff:g> சதவிகிதம் உள்ளது."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"பேட்டரி சார்ஜ் செய்யப்படுகிறது, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> சதவீதம்."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"கணினி அமைப்பு."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"அறிவிப்புகள்."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"அறிவிப்பை அழி."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"தொந்தரவு செய்ய வேண்டாம் என்பது இயக்கப்பட்டது, முதன்மை மட்டும்."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"தொந்தரவு செய்ய வேண்டாம் என்பது இயக்கப்பட்டது, அறிவிப்புகள் வேண்டாம்."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"தொந்தரவு செய்ய வேண்டாம் என்பது இயக்கப்பட்டது, அலாரங்கள் மட்டும்."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"தொந்தரவு செய்ய வேண்டாம் என்பது முடக்கப்பட்டது."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"தொந்தரவு செய்ய வேண்டாம் என்பது முடக்கப்பட்டது."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"தொந்தரவு செய்ய வேண்டாம் என்பது இயக்கப்பட்டது."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"புளூடூத் முடக்கத்தில்."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"புளூடூத் இயக்கத்தில்."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"புளூடூத் இணைக்கப்படுகிறது."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"தற்போது திரை அகலவாக்குத் திசையமைப்பில் பூட்டப்பட்டுள்ளது."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"தற்போது திரை நீளவாக்குத் திசையமைப்பில் பூட்டப்பட்டுள்ளது."</string>
     <string name="dessert_case" msgid="1295161776223959221">"இனிப்பு வடிவங்கள்"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"பகல்கனா"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"ஸ்கிரீன் சேவர்"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ஈதர்நெட்"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"தொந்தரவு செய்ய வேண்டாம்"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"முதன்மை மட்டும்"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"இணைக்கப்பட்ட சாதனங்கள் இல்லை"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"ஒளிர்வு"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"தானாகச் சுழற்று"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"சுழற்சி பூட்டப்பட்டது"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"நீளமாக"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"அகலமாக"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"இணைக்கப்படவில்லை"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"நெட்வொர்க் இல்லை"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"வைஃபையை முடக்கு"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"வைஃபை நெட்வொர்க்குகள் இல்லை"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"அனுப்பு"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"அனுப்புகிறது"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g>ஐத் தொடங்க முடியவில்லை."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"பாதுகாப்புப் பயன்முறையில் <xliff:g id="APP">%s</xliff:g> முடக்கப்பட்டது."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"அனைத்தையும் அழி"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"இந்தப் பயன்பாடு பல சாளர அம்சத்தை ஆதரிக்கவில்லை"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"பயன்பாடு பல சாளர அம்சத்தை ஆதரிக்காது"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"திரைப் பிரிப்பைப் பயன்பாடு ஆதரிக்கவில்லை"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"திரைப் பிரிப்பைப் பயன்படுத்த, இங்கே இழுக்கவும்"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"கிடைமட்டமாகப் பிரி"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"செங்குத்தாகப் பிரி"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"தனிவிருப்பத்தில் பிரி"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"ஒலியளவு செய்தி: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"அசலை மீட்டமைக்கத் தொடவும்."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"பணி சுயவிவரத்தைப் பயன்படுத்துகிறீர்கள்"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. ஒலி இயக்க, தட்டவும்."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. அதிர்விற்கு அமைக்க, தட்டவும். அணுகல்தன்மை சேவைகள் ஒலியடக்கப்படக்கூடும்."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. ஒலியடக்க, தட்டவும். அணுகல்தன்மை சேவைகள் ஒலியடக்கப்படக்கூடும்."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"உள்ளிணைந்த பேட்டரி சதவீதத்தைக் காட்டு"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"எல்லா அறிவிப்புகளையும் தடு"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"ஒலியை அனுமதி"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"ஒலி அல்லது அறிவிப்பைத் தடுக்காதே"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"முக்கியத்துவ அமைப்புகள் முழுவதையும் காட்டு"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"தடுக்கப்பட்டது"</string>
-    <string name="min_importance" msgid="1901894910809414782">"குறைந்தபட்ச முக்கியத்துவம்"</string>
-    <string name="low_importance" msgid="4109929986107147930">"முக்கியத்துவம் (குறைவு)"</string>
-    <string name="default_importance" msgid="8192107689995742653">"முக்கியத்துவம் (இயல்பு)"</string>
-    <string name="high_importance" msgid="1527066195614050263">"முக்கியத்துவம் (அதிகம்)"</string>
-    <string name="max_importance" msgid="5089005872719563894">"முக்கியத்துவம் (அவசரம்)"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"இந்த அறிவிப்புகளை ஒருபோதும் காட்டாதே"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"ஒலியின்றி அறிவிப்புப் பட்டியலின் கீழே காட்டு"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"ஒலியின்றி இந்த அறிவிப்புகளைக் காட்டு"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"இந்த அறிவிப்புகளுக்கு ஒலியை அனுமதி"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"சில வினாடிகளுக்கு ஒலியுடன் திரையில் காட்டு"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"அறிவிப்புகள் பட்டியலின் மேற்பகுதியில், சில வினாடிகளுக்கு ஒலியுடன் திரையில் காட்டு"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"ஆற்றல்மிக்க அறிவிப்புக் கட்டுப்பாடுகள்"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"இயக்கத்தில்"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"முடக்கத்தில்"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"ஆற்றல்மிக்க அறிவிப்புக் கட்டுப்பாடுகள் மூலம், பயன்பாட்டின் அறிவிப்புகளுக்கு முக்கியத்துவ நிலையை (0-5) அமைக்கலாம். \n\n"<b>"நிலை 5"</b>" \n- அறிவிப்புப் பட்டியலின் மேலே காட்டும் \n- முழுத் திரைக் குறுக்கீட்டை அனுமதிக்கும் \n- எப்போதும் நடப்புத் திரையின் மேல் பகுதியில் அறிவிப்புகளைக் காட்டும் \n\n"<b>"நிலை 4"</b>" \n- முழுத் திரைக் குறுக்கீட்டைத் தடுக்கும் \n- எப்போதும் நடப்புத் திரையின் மேல் பகுதியில் அறிவிப்புகளைக் காட்டும் \n\n"<b>"நிலை 3"</b>" \n- முழுத் திரைக் குறுக்கீட்டைத் தடுக்கும் \n- ஒருபோதும் நடப்புத் திரையின் மேல் பகுதியில் அறிவிப்புகளைக் காட்டாது \n\n"<b>"நிலை 2"</b>" \n- முழுத் திரைக் குறுக்கீட்டைத் தடுக்கும் \n- ஒருபோதும் நடப்புத் திரையின் மேல் பகுதியில் அறிவிப்புகளைக் காட்டாது \n- ஒருபோதும் ஒலி எழுப்பாது, அதிர்வுறாது \n\n"<b>"நிலை 1"</b>" \n- முழுத் திரைக் குறுக்கீட்டைத் தடுக்கும் \n- ஒருபோதும் நடப்புத் திரையின் மேல் பகுதியில் அறிவிப்புகளைக் காட்டாது \n- ஒருபோதும் ஒலி எழுப்பாது அல்லது அதிர்வுறாது \n- பூட்டுத்திரை மற்றும் நிலைப்பட்டியிலிருந்து மறைக்கும் \n- அறிவிப்புகள் பட்டியலின் கீழே காட்டும் \n\n"<b>"நிலை 0"</b>" \n- பயன்பாட்டின் எல்லா அறிவிப்புகளையும் தடுக்கும்"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"முக்கியத்துவம்: தானியங்கு"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"முக்கியத்துவம்: நிலை 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"முக்கியத்துவம்: நிலை 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"முக்கியத்துவம்: நிலை 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"முக்கியத்துவம்: நிலை 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"முக்கியத்துவம்: நிலை 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"முக்கியத்துவம்: நிலை 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"பயன்பாடானது ஒவ்வொரு அறிவிப்பிற்கும் முக்கியத்துவத்தைத் தீர்மானிக்கும்."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"இந்தப் பயன்பாட்டிலிருந்து ஒருபோதும் அறிவிப்புகளைக் காட்டாதே."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"திரை குறுக்கீடு, அறிவிப்புகள், ஒலி (அ) அதிர்வு வேண்டாம். பூட்டுத் திரை, நிலைப் பட்டியிலிருந்து மறை."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"முழுத் திரைக் குறுக்கீடு, திரையில் அறிவிப்பு காட்டுவது, ஒலி எழுப்புவது (அ) அதிர்வுறுவது வேண்டாம்."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"முழுத் திரைக் குறுக்கீடு வேண்டாம் (அ) நடப்புத் திரையின் மேல் பகுதியில் அறிவிப்பைக் காட்ட வேண்டாம்."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"அறிவிப்புகளை எப்போதும் நடப்புத் திரையின் மேல் பகுதியில் காட்டு. முழுத் திரைக் குறுக்கீடு வேண்டாம்."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"அறிவிப்புகளை எப்போதும் நடப்புத் திரையின் மேல் பகுதியில் காட்டு, முழுத் திரைக் குறுக்கீடுகளை அனுமதி."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"மேலும் அமைப்புகள்"</string>
     <string name="notification_done" msgid="5279426047273930175">"முடிந்தது"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> அறிவிப்புக் கட்டுப்பாடுகள்"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"மற்றவை"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"திரையைப் பிரிக்கும் பிரிப்பான்"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"கீழே நகர்த்து"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"மேலே நகர்த்து"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"இடப்புறம் நகர்த்து"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"வலப்புறம் நகர்த்து"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"இடது புறம் முழுத் திரை"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"இடது புறம் 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"இடது புறம் 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"இடது புறம் 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"வலது புறம் முழுத் திரை"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"மேற்புறம் முழுத் திரை"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"மேலே 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"மேலே 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"மேலே 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"கீழ்ப்புறம் முழுத் திரை"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"நிலை <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. திருத்த, இருமுறை தட்டவும்."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. சேர்க்க, இருமுறை தட்டவும்."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"நிலை <xliff:g id="POSITION">%1$d</xliff:g>. தேர்ந்தெடுக்க, இருமுறை தட்டவும்."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> அகற்றப்பட்டது"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> நிலை <xliff:g id="POSITION">%2$d</xliff:g>க்கு நகர்த்தப்பட்டது"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"விரைவு அமைப்புகள் திருத்தி."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"திரைப் பிரிப்பில் பயன்பாடு வேலைசெய்யாமல் போகக்கூடும்."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"திரையைப் பிரிப்பதைப் பயன்பாடு ஆதரிக்கவில்லை."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"பக்கம் <xliff:g id="ID_1">%1$d</xliff:g> / <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ta-rIN/strings_tv.xml b/packages/SystemUI/res/values-ta-rIN/strings_tv.xml
index 7412e27..6868b1e 100644
--- a/packages/SystemUI/res/values-ta-rIN/strings_tv.xml
+++ b/packages/SystemUI/res/values-ta-rIN/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"இயக்கு"</string>
     <string name="pip_pause" msgid="8412075640017218862">"இடைநிறுத்து"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIPஐக் கட்டுப்படுத்த, "<b>"முகப்பைப்"</b>" பிடித்திருக்கவும்"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIPஐக் கட்டுப்படுத்த, முகப்புப் பொத்தானை அழுத்திப் பிடிக்கவும்"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"சரி"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"நிராகரி"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-te-rIN/strings.xml b/packages/SystemUI/res/values-te-rIN/strings.xml
index 1dd7254..271f80e 100644
--- a/packages/SystemUI/res/values-te-rIN/strings.xml
+++ b/packages/SystemUI/res/values-te-rIN/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"డేటా సిగ్నల్ సంపూర్ణంగా ఉంది."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g>కి కనెక్ట్ చేయబడింది."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g>కి కనెక్ట్ చేయబడింది."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX లేదు."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX ఒక బార్ కలిగి ఉంది."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX రెండు బార్‌లు కలిగి ఉంది."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"ఎడ్జ్"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"సిమ్ లేదు."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"సెల్యులార్ డేటా ఆఫ్‌లో ఉంది"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"బ్లూటూత్ టెథెరింగ్."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"ఎయిర్‌ప్లేన్ మోడ్."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM కార్డ్ లేదు."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"క్యారియర్ నెట్‌వర్క్ మారుస్తుంది."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"బ్యాటరీ <xliff:g id="NUMBER">%d</xliff:g> శాతం."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"బ్యాటరీ ఛార్జ్ అవుతోంది, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> శాతం."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"సిస్టమ్ సెట్టింగ్‌లు."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"నోటిఫికేషన్‌లు."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"నోటిఫికేషన్‌ను క్లియర్ చేయండి."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"అంతరాయం కలిగించవద్దు ఆన్‌లో ఉంది, ప్రాధాన్యత మాత్రమే."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"అంతరాయం కలిగించవద్దు ఆన్‌లో ఉంది, మొత్తం నిశ్శబ్దం."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"అంతరాయం కలిగించవద్దు ఆన్‌లో ఉంది, అలారాలు మాత్రమే."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"అంతరాయం కలిగించవద్దు ఆఫ్‌లో ఉంది."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"అంతరాయం కలిగించవద్దు ఆఫ్ చేయబడింది."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"అంతరాయం కలిగించవద్దు ఆన్ చేయబడింది."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"బ్లూటూత్ ఆఫ్‌లో ఉంది."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"బ్లూటూత్ ఆన్‌లో ఉంది."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"బ్లూటూత్ కనెక్ట్ అవుతోంది."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"స్క్రీన్ ఇప్పుడు ల్యాండ్‌స్కేప్ దృగ్విన్యాసంలో లాక్ చేయబడింది."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"స్క్రీన్ ఇప్పుడు పోర్ట్రెయిట్ దృగ్విన్యాసంలో లాక్ చేయబడింది."</string>
     <string name="dessert_case" msgid="1295161776223959221">"డెజర్ట్ కేస్"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"డేడ్రీమ్"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"స్క్రీన్ సేవర్"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ఈథర్‌నెట్"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"అంతరాయం కలిగించవద్దు"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"ప్రాధాన్యత మాత్రమే"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"జత చేసిన పరికరాలు ఏవీ అందుబాటులో లేవు"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"ప్రకాశం"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"స్వయంచాలకంగా తిప్పడం"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"తిప్పడం లాక్ చేయబడింది"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"పోర్ట్రెయిట్"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"ల్యాండ్‌స్కేప్"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"కనెక్ట్ చేయబడలేదు"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"నెట్‌వర్క్ లేదు"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi ఆఫ్‌లో ఉంది"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Wi-Fi నెట్‌వర్క్‌లు ఏవీ అందుబాటులో లేవు"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"ప్రసారం చేయండి"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"ప్రసారం చేస్తోంది"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g>ని ప్రారంభించడం సాధ్యపడలేదు."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> సురక్షిత-మోడ్‌లో నిలిపివేయబడింది."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"అన్నీ తీసివేయి"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"ఈ అనువర్తనం బహుళ విండోలకు మద్దతు ఇవ్వదు"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"అనువర్తనం బహుళ విండోలకు మద్దతు ఇవ్వదు"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"అనువర్తనం విభజన స్క్రీన్‌కు మద్దతు ఇవ్వదు"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"విభజన స్క్రీన్‌ను ఉపయోగించడానికి ఇక్కడ లాగండి"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"సమతలంగా విభజించు"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"లంబంగా విభజించు"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"అనుకూలంగా విభజించు"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> అనేది వాల్యూమ్ డైలాగ్"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"అసలుదాన్ని పునరుద్ధరించడానికి తాకండి."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"మీరు మీ కార్యాలయ ప్రొఫైల్‌ను ఉపయోగిస్తున్నారు"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. అన్‌మ్యూట్ చేయడానికి నొక్కండి."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. వైబ్రేషన్‌కు సెట్ చేయడానికి నొక్కండి. ప్రాప్యత సేవలు మ్యూట్ చేయబడవచ్చు."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. మ్యూట్ చేయడానికి నొక్కండి. ప్రాప్యత సేవలు మ్యూట్ చేయబడవచ్చు."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"సిస్టమ్ UI ట్యూనర్"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"పొందుపరిచిన బ్యాటరీ శాతం చూపు"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"అన్ని నోటిఫికేషన్‌లను బ్లాక్ చేయి"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"నిశ్శబ్దం చేయవద్దు"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"నిశ్శబ్దం చేయవద్దు లేదా బ్లాక్ చేయవద్దు"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"పూర్తి ప్రాముఖ్యత సెట్టింగ్‌లను చూపండి"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"బ్లాక్ చేయబడింది"</string>
-    <string name="min_importance" msgid="1901894910809414782">"కని. ప్రాముఖ్యత"</string>
-    <string name="low_importance" msgid="4109929986107147930">"తక్కువ ప్రాముఖ్యత"</string>
-    <string name="default_importance" msgid="8192107689995742653">"సాధారణ ప్రాముఖ్యత"</string>
-    <string name="high_importance" msgid="1527066195614050263">"అధిక ప్రాముఖ్యత"</string>
-    <string name="max_importance" msgid="5089005872719563894">"అత్యవసర ప్రాముఖ్యత"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"ఈ నోటిఫికేషన్‌లను ఎప్పుడూ చూపదు"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"నోటిఫికేషన్‌ల జాబితా దిగువ భాగంలో శబ్దం లేకుండా చూపుతుంది"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"ఈ నోటిఫికేషన్‌లను శబ్దం లేకుండా చూపుతుంది"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"ఈ నోటిఫికేషన్‌లను శబ్దంతో చూపేలా అనుమతిస్తుంది"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"స్క్రీన్‌పై శీఘ్రంగా శబ్దంతో చూపుతుంది"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"నోటిఫికేషన్‌ల జాబితా అగ్ర భాగాన, స్క్రీన్‌పై శీఘ్రంగా శబ్దంతో చూపుతుంది"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"పవర్ నోటిఫికేషన్ నియంత్రణలు"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"ఆన్‌లో ఉన్నాయి"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"ఆఫ్‌లో ఉన్నాయి"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"పవర్ నోటిఫికేషన్ నియంత్రణలతో, మీరు అనువర్తన నోటిఫికేషన్‌ల కోసం ప్రాముఖ్యత స్థాయిని 0 నుండి 5 వరకు సెట్ చేయవచ్చు. \n\n"<b>"స్థాయి 5"</b>" \n- నోటిఫికేషన్ జాబితా పైభాగంలో చూపబడతాయి \n- పూర్తి స్క్రీన్ అంతరాయం అనుమతించబడుతుంది \n- ఎల్లప్పుడూ త్వరిత వీక్షణ అందించబడుతుంది \n\n"<b>"స్థాయి 4"</b>" \n- పూర్తి స్క్రీన్ అంతరాయం నిరోధించబడుతుంది \n- ఎల్లప్పుడూ త్వరిత వీక్షణ అందించబడుతుంది \n\n"<b>"స్థాయి 3"</b>" \n- పూర్తి స్క్రీన్ అంతరాయం నిరోధించబడుతుంది \n- ఎప్పుడూ త్వరిత వీక్షణ అందించబడదు \n\n"<b>"స్థాయి 2"</b>" \n- పూర్తి స్క్రీన్ అంతరాయం నిరోధించబడుతుంది \n- ఎప్పుడూ త్వరిత వీక్షణ అందించబడదు \n- ఎప్పుడూ శబ్దం మరియు వైబ్రేషన్ చేయవు \n\n"<b>"స్థాయి 1"</b>" \n- పూర్తి స్క్రీన్ అంతరాయం నిరోధించబడుతుంది \n- ఎప్పుడూ త్వరిత వీక్షణ అందించబడదు \n- ఎప్పుడూ శబ్దం లేదా వైబ్రేట్ చేయవు \n- లాక్ స్క్రీన్ మరియు స్థితి పట్టీ నుండి దాచబడతాయి \n- నోటిఫికేషన్ జాబితా దిగువ భాగంలో చూపబడతాయి \n\n"<b>"స్థాయి 0"</b>" \n- అనువర్తనం నుండి అన్ని నోటిఫికేషన్‌లు బ్లాక్ చేయబడతాయి"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"ప్రాముఖ్యత: స్వయంచాలకం"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"ప్రాముఖ్యత: స్థాయి 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"ప్రాముఖ్యత: స్థాయి 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"ప్రాముఖ్యత: స్థాయి 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"ప్రాముఖ్యత: స్థాయి 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"ప్రాముఖ్యత: స్థాయి 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"ప్రాముఖ్యత: స్థాయి 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"అనువర్తనం ప్రతీ నోటిఫికేషన్‌ ప్రాముఖ్యతను నిశ్చయిస్తుంది."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"ఈ అనువర్తనం నుండి నోటిఫికేషన్‌లను ఎప్పుడూ చూపదు."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"పూర్తిస్క్రీన్ అంతరాయం,త్వరితవీక్షణ,శబ్దం,వైబ్రేషన్ఉండవు. లాక్ స్క్రీన్,స్థితిపట్టీ నుండి దాచబడతాయి."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"పూర్తి స్క్రీన్ అంతరాయం, త్వరిత వీక్షణ, శబ్దం లేదా వైబ్రేషన్ ఉండవు."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"పూర్తి స్క్రీన్ అంతరాయం లేదా త్వరిత వీక్షణ ఉండదు."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"ఎల్లప్పుడూ త్వరిత వీక్షణ అందించబడుతుంది. పూర్తి స్క్రీన్ అంతరాయం ఉండదు."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"ఎల్లప్పుడూ త్వరిత వీక్షణ మరియు పూర్తి స్క్రీన్ అంతరాయం అనుమతించబడతాయి."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"మరిన్ని సెట్టింగ్‌లు"</string>
     <string name="notification_done" msgid="5279426047273930175">"పూర్తయింది"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> నోటిఫికేషన్ నియంత్రణలు"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"ఇతరం"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"విభజన స్క్రీన్ విభాగిని"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"క్రిందికి తరలించు"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"పైకి తరలించు"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"ఎడమవైపుకు తరలించు"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"కుడివైపుకు తరలించు"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"ఎడమవైపు పూర్తి స్క్రీన్"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"ఎడమవైపు 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"ఎడమవైపు 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"ఎడమవైపు 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"కుడివైపు పూర్తి స్క్రీన్"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"ఎగువ పూర్తి స్క్రీన్"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"ఎగువ 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"ఎగువ 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"ఎగువ 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"దిగువ పూర్తి స్క్రీన్"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"స్థానం <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. సవరించడానికి రెండుసార్లు నొక్కండి."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. జోడించడానికి రెండుసార్లు నొక్కండి."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"స్థానం <xliff:g id="POSITION">%1$d</xliff:g>. ఎంచుకోవడానికి రెండుసార్లు నొక్కండి."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> తీసివేయబడింది"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> <xliff:g id="POSITION">%2$d</xliff:g>వ స్థానానికి తరలించబడింది"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"శీఘ్ర సెట్టింగ్‌ల ఎడిటర్."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"స్క్రీన్ విభజనతో అనువర్తనం పని చేయకపోవచ్చు."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"అనువర్తనంలో స్క్రీన్ విభజనకు మద్దతు లేదు."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_2">%2$d</xliff:g>లో <xliff:g id="ID_1">%1$d</xliff:g>వ పేజీ"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-te-rIN/strings_tv.xml b/packages/SystemUI/res/values-te-rIN/strings_tv.xml
index 32820c3..fe1e472 100644
--- a/packages/SystemUI/res/values-te-rIN/strings_tv.xml
+++ b/packages/SystemUI/res/values-te-rIN/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"ప్లే చేయి"</string>
     <string name="pip_pause" msgid="8412075640017218862">"పాజ్ చేయి"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP నియం. "<b>"HOME"</b>"నొక్కిఉంచండి"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIPని నియంత్రించడానికి హోమ్ బటన్‌ను నొక్కి పట్టుకోండి"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"అర్థమైంది"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"తీసివేస్తుంది"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-th/strings.xml b/packages/SystemUI/res/values-th/strings.xml
index 59b420d..3038c54 100644
--- a/packages/SystemUI/res/values-th/strings.xml
+++ b/packages/SystemUI/res/values-th/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"สัญญาณข้อมูลเต็ม"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"เชื่อมต่อ <xliff:g id="WIFI">%s</xliff:g> แล้ว"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"เชื่อมต่อกับ <xliff:g id="BLUETOOTH">%s</xliff:g> แล้ว"</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"เชื่อมต่อกับ <xliff:g id="CAST">%s</xliff:g>"</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"ไม่มีสัญญาณ WiMAX"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"สัญญาณ WiMAX หนึ่งขีด"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"สัญญาณ WiMAX สองขีด"</string>
@@ -148,12 +149,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"WiFi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"ไม่มีซิมการ์ด"</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"ข้อมูลเครือข่ายมือถือ"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"ข้อมูลเครือข่ายมือถือเปิดอยู่"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"ปิดข้อมูลเครือข่ายมือถือแล้ว"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"การปล่อยสัญญาณบลูทูธ"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"โหมดใช้งานบนเครื่องบิน"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"ไม่มีซิมการ์ด"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"การเปลี่ยนเครือข่ายผู้ให้บริการ"</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"เปิดรายละเอียดแบตเตอรี่"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"แบตเตอรี่ <xliff:g id="NUMBER">%d</xliff:g> เปอร์เซ็นต์"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"กำลังชาร์จแบตเตอรี่ <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> เปอร์เซ็นต์"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"การตั้งค่าระบบ"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"การแจ้งเตือน"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"ล้างการแจ้งเตือน"</string>
@@ -191,9 +196,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"การห้ามรบกวนเปิดอยู่ เฉพาะเรื่องสำคัญเท่านั้น"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"เปิดการห้ามรบกวนอยู่ ปิดเสียงทั้งหมด"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"เปิดการห้ามรบกวนอยู่ ปลุกได้เท่านั้น"</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"ห้ามรบกวน"</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"การห้ามรบกวนปิดอยู่"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"ปิดการห้ามรบกวนแล้ว"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"เปิดการห้ามรบกวนแล้ว"</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"บลูทูธ"</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"บลูทูธปิดอยู่"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"บลูทูธเปิดอยู่"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"กำลังเชื่อมต่อบลูทูธ"</string>
@@ -247,7 +254,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"ขณะนี้หน้าจอล็อกอยู่ในแนวนอน"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"ขณะนี้หน้าจอล็อกอยู่ในแนวตั้ง"</string>
     <string name="dessert_case" msgid="1295161776223959221">"ชั้นแสดงของหวาน"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"เดย์ดรีม"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"โปรแกรมรักษาหน้าจอ"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"อีเทอร์เน็ต"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"ห้ามรบกวน"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"เฉพาะเรื่องสำคัญ"</string>
@@ -259,6 +266,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"ไม่มีอุปกรณ์ที่จับคู่ที่สามารถใช้ได้"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"ความสว่าง"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"หมุนอัตโนมัติ"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"หมุนหน้าจออัตโนมัติ"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"ตั้งค่าเป็น <xliff:g id="ID_1">%s</xliff:g>"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"ล็อกการหมุน"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"แนวตั้ง"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"แนวนอน"</string>
@@ -277,6 +286,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"ไม่ได้เชื่อมต่อ"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"ไม่มีเครือข่าย"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"ปิด WiFi"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"Wi-Fi เปิดอยู่"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"ไม่มีเครือข่าย Wi-Fi พร้อมใช้งาน"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"แคสต์"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"กำลังส่ง"</string>
@@ -311,8 +321,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"ไม่สามารถเริ่มใช้ <xliff:g id="APP">%s</xliff:g>"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> ปิดใช้ในโหมดปลอดภัย"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"ล้างทั้งหมด"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"แอปนี้ไม่สนับสนุนหลายหน้าต่าง"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"แอปไม่สนับสนุนหลายหน้าต่าง"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"แอปไม่สนับสนุนการแยกหน้าจอ"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"ลากมาที่นี่เพื่อใช้การแยกหน้าจอ"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"แยกในแนวนอน"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"แยกในแนวตั้ง"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"แยกแบบกำหนดเอง"</string>
@@ -420,12 +430,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> เป็นช่องโต้ตอบระดับเสียง"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"แตะเพื่อคืนค่าดั้งเดิม"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"คุณกำลังใช้โปรไฟล์งานของคุณ"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s แตะเพื่อเปิดเสียง"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s แตะเพื่อตั้งค่าให้สั่น อาจมีการปิดเสียงบริการการเข้าถึง"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s แตะเพื่อปิดเสียง อาจมีการปิดเสียงบริการการเข้าถึง"</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"%s ตัวควบคุมระดับเสียงแสดงอยู่ เลื่อนขึ้นเพื่อปิด"</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"ตัวควบคุมระดับเสียงซ่อนอยู่"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"ตัวรับสัญญาณ UI ระบบ"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"แสดงเปอร์เซ็นต์ของแบตเตอรี่ในตัว"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"แสดงเปอร์เซ็นต์ของระดับแบตเตอรี่ภายในไอคอนแถบสถานะเมื่อไม่มีการชาร์จ"</string>
@@ -470,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"บล็อกการแจ้งเตือนทั้งหมด"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"ไม่ปิดเสียง"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"ไม่ปิดเสียงหรือบล็อก"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"แสดงการตั้งค่าความสำคัญแบบเต็ม"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"บล็อกแล้ว"</string>
-    <string name="min_importance" msgid="1901894910809414782">"ความสำคัญน้อย"</string>
-    <string name="low_importance" msgid="4109929986107147930">"ความสำคัญต่ำ"</string>
-    <string name="default_importance" msgid="8192107689995742653">"ความสำคัญปกติ"</string>
-    <string name="high_importance" msgid="1527066195614050263">"ความสำคัญสูง"</string>
-    <string name="max_importance" msgid="5089005872719563894">"ความสำคัญเร่งด่วน"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"ไม่ต้องแสดงการแจ้งเตือนเหล่านี้"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"แสดงที่ด้านล่างของรายการแจ้งเตือนโดยไม่ส่งเสียง"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"แสดงการแจ้งเตือนเหล่านี้โดยไม่ส่งเสียง"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"ให้การแจ้งเตือนเหล่านี้ส่งเสียงได้"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"แสดงบนหน้าจอและให้ส่งเสียงได้"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"แสดงที่ด้านบนของรายการการแจ้งเตือน แสดงบนหน้าจอและให้ส่งเสียงได้"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"ส่วนควบคุมการแจ้งเตือนแบบเปิด/ปิด"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"เปิด"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"ปิด"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"ส่วนควบคุมการแจ้งเตือนแบบเปิด/ปิดช่วยให้คุณตั้งค่าระดับความสำคัญสำหรับการแจ้งเตือนของแอปได้ตั้งแต่ระดับ 0-5 \n\n"<b>"ระดับ 5"</b>" \n- แสดงที่ด้านบนของรายการแจ้งเตือน \n- อนุญาตให้รบกวนแบบเต็มหน้าจอ \n- อนุญาตให้แสดงชั่วครู่ \n\n"<b>"ระดับ 4"</b>" \n- ป้องกันการรบกวนแบบเต็มหน้าจอ \n- แสดงชั่วครู่เสมอ \n\n"<b>"ระดับ 3"</b>" \n- ป้องกันการรบกวนแบบเต็มหน้าจอ \n- ไม่แสดงชั่วครู่เลย \n\n"<b>"ระดับ 2"</b>" \n- ป้องกันการรบกวนแบบเต็มหน้าจอ \n- ไม่แสดงชั่วครู่เลย \n- ไม่ส่งเสียงหรือสั่นเลย \n\n"<b>"ระดับ 1"</b>" \n- ป้องกันการรบกวนแบบเต็มหน้าจอ \n- ไม่แสดงชั่วครู่เลย \n- ไม่ส่งเสียงหรือสั่นเลย \n- ซ่อนจากหน้าจอล็อกและแถบสถานะ \n- แสดงที่ด้านล่างของรายการแจ้งเตือน \n\n"<b>"ระดับ 0"</b>" \n- บล็อกการแจ้งเตือนทั้งหมดจากแอป"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"ความสำคัญ: อัตโนมัติ"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"ความสำคัญ: ระดับ 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"ความสำคัญ: ระดับ 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"ความสำคัญ: ระดับ 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"ความสำคัญ: ระดับ 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"ความสำคัญ: ระดับ 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"ความสำคัญ: ระดับ 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"แอปกำหนดความสำคัญของการแจ้งเตือนแต่ละรายการ"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"ไม่ต้องแสดงการแจ้งเตือนจากแอปนี้"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"ไม่มีการรบกวนแบบเต็มหน้าจอ แสดงชั่วครู่ มีเสียง หรือสั่น ซ่อนจากหน้าจอล็อกและแถบสถานะ"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"ไม่มีการรบกวนแบบเต็มหน้าจอ แสดงชั่วครู่ มีเสียง หรือสั่น"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"ไม่มีการรบกวนแบบเต็มหน้าจอหรือการแสดงชั่วครู่"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"แสดงชั่วครู่เสมอ ไม่มีการรบกวนแบบเต็มหน้าจอ"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"แสดงชั่วครู่เสมอ และรบกวนแบบเต็มหน้าจอได้"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"การตั้งค่าเพิ่มเติม"</string>
     <string name="notification_done" msgid="5279426047273930175">"เสร็จสิ้น"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"ส่วนควบคุมการแจ้งเตือนของ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +611,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"อื่นๆ"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"เส้นแบ่งหน้าจอ"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"เลื่อนลง"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"เลื่อนขึ้น"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"เลื่อนไปทางซ้าย"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"เลื่อนไปทางขวา"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"เต็มหน้าจอทางซ้าย"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"ซ้าย 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"ซ้าย 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"ซ้าย 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"เต็มหน้าจอทางขวา"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"เต็มหน้าจอด้านบน"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"ด้านบน 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"ด้านบน 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"ด้านบน 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"เต็มหน้าจอด้านล่าง"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"ตำแหน่ง <xliff:g id="POSITION">%1$d</xliff:g> <xliff:g id="TILE_NAME">%2$s</xliff:g> แตะ 2 ครั้งเพื่อแก้ไข"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g> แตะ 2 ครั้งเพื่อเพิ่ม"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"ตำแหน่ง <xliff:g id="POSITION">%1$d</xliff:g> แตะ 2 ครั้งเพื่อเลือก"</string>
@@ -610,6 +630,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"นำ <xliff:g id="TILE_NAME">%1$s</xliff:g> ออกแล้ว"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"ย้าย <xliff:g id="TILE_NAME">%1$s</xliff:g> ไปยังตำแหน่ง <xliff:g id="POSITION">%2$d</xliff:g> แล้ว"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"ตัวแก้ไขการตั้งค่าด่วน"</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"<xliff:g id="ID_1">%1$s</xliff:g> การแจ้งเตือน: <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"แอปอาจใช้ไม่ได้กับโหมดแยกหน้าจอ"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"แอปไม่สนับสนุนการแยกหน้าจอ"</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"เปิดการตั้งค่า"</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"เปิดการตั้งค่าด่วน"</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"ปิดการตั้งค่าด่วน"</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"ตั้งปลุกแล้ว"</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"ลงชื่อเข้าใช้เป็น <xliff:g id="ID_1">%s</xliff:g>"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"ไม่มีอินเทอร์เน็ต"</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"เปิดรายละเอียด"</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"เปิดการตั้งค่า <xliff:g id="ID_1">%s</xliff:g>"</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"แก้ไขลำดับการตั้งค่า"</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"หน้า <xliff:g id="ID_1">%1$d</xliff:g> จาก <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-th/strings_tv.xml b/packages/SystemUI/res/values-th/strings_tv.xml
index d7b26687..7ac4807 100644
--- a/packages/SystemUI/res/values-th/strings_tv.xml
+++ b/packages/SystemUI/res/values-th/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"เล่น"</string>
     <string name="pip_pause" msgid="8412075640017218862">"หยุดชั่วคราว"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"กด "<b>"HOME"</b>" ค้างไว้เพื่อควบคุม PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"กดปุ่ม HOME ค้างไว้เพื่อควบคุม PIP"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"การแสดงผลหลายแหล่งพร้อมกัน"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"การตั้งค่านี้จะทำให้คุณมองเห็นวิดีโอนี้จนกว่าคุณจะเล่นวิดีโออีกรายการหนึ่ง กดปุ่ม"<b>"หน้าแรก"</b>"ค้างไว้เพื่อควบคุม"</string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"รับทราบ"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"ปิด"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-tl/strings.xml b/packages/SystemUI/res/values-tl/strings.xml
index 629963d..ffee6ab 100644
--- a/packages/SystemUI/res/values-tl/strings.xml
+++ b/packages/SystemUI/res/values-tl/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Puno ang signal ng data."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Nakakonekta sa <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Nakakonekta sa <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Walang WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX na isang bar."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX na dalawang bar."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Walang SIM."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Naka-off ang Cellular Data"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Pag-tether ng Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Mode na eroplano."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Walang SIM card."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Nagpapalit ng carrier network."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Baterya <xliff:g id="NUMBER">%d</xliff:g> (na) porsyento."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Nagcha-charge ang baterya, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> (na) porsyento."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Mga setting ng system."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Mga Notification."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"I-clear ang notification."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Naka-on ang huwag istorbohin, priyoridad lang."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Naka-on ang huwag gambalain, ganap na katahimikan."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Naka-on ang huwag istorbohin, mga alarm lang."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Naka-off ang huwag istorbohin."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Na-off na ang huwag istorbohin"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Na-on na ang huwag istorbohin."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Naka-off ang Bluetooth."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Naka-on ang Bluetooth."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Kumokonekta ang Bluetooth."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Naka-lock na ngayon ang screen sa landscape na oryentasyon."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Naka-lock na ngayon ang screen sa portrait na oryentasyon."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Screen saver"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Huwag istorbohin"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Priyoridad lang"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Walang available na mga magkapares na device"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Brightness"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Awtomatikong i-rotate"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Naka-lock ang pag-ikot"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Portrait"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Landscape"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Hindi Nakakonekta"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Walang Network"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Naka-off ang Wi-Fi"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Walang available na mga Wi-Fi network"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"I-cast"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Nagka-cast"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Hindi masimulan <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Naka-disable ang <xliff:g id="APP">%s</xliff:g> sa safe-mode."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"I-clear lahat"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Hindi sinusuportahan ng app na ito ang multi-window"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Hindi sinusuportahan ng app na ito ang multi-window"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Hindi sinusuportahan ng app ang split screen"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"I-drag dito upang magamit ang split screen"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Split Horizontal"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Split Vertical"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Split Custom"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"Ang <xliff:g id="APP_NAME">%1$s</xliff:g> ang volume dialog"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Pindutin upang ibalik ang orihinal."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Ginagamit mo ang iyong profile sa trabaho"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. I-tap upang i-unmute."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. I-tap upang itakda na mag-vibrate. Maaaring i-mute ang mga serbisyo sa Accessibility."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. I-tap upang i-mute. Maaaring i-mute ang mga serbisyo sa Accessibility."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Tuner ng System UI"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Ipakita ang naka-embed na porsyento ng baterya"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"I-block ang lahat ng notification"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Huwag i-silent"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Huwag i-silent o i-block"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Ipakita ang kumpletong mga setting ng kahalagahan"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Na-block"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Hindi masyadong mahalaga"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Hindi masyadong mahalaga"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Mahalaga"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Napakahalaga"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Mahalagang-mahalaga"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Huwag kailanman ipakita ang mga notification na ito"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Tahimik na ipakita sa ibaba ng listahan ng notification"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Tahimik na ipakita ang mga notification na ito"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Payagan ang mga notification na ito na tumunog"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Palitawin sa screen at payagang tumunog"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Ipakita sa itaas ng listahan ng mga notification, palitawin sa screen at payagang tumunog"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Mga kontrol sa notification ng power"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Naka-on"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Naka-off"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Sa pamamagitan ng mga kontrol sa notification ng power, magagawa mong itakda ang antas ng kahalagahan ng mga notification ng isang app mula 0 hanggang 5. \n\n"<b>"Antas 5"</b>" \n- Ipakita sa itaas ng listahan ng notification \n- Payagan ang pag-istorbo kapag full screen \n- Palaging sumilip \n\n"<b>"Antas 4"</b>" \n- Pigilan ang pag-istorbo kapag full screen \n- Palaging sumilip \n\n"<b>"Antas 3"</b>" \n- Pigilan ang pag-istorbo kapag full screen \n- Huwag kailanman sumilip \n\n"<b>"Antas 2"</b>" \n- Pigilan ang pag-istorbo kapag full screen \n- Huwag kailanman sumilip \n- Huwag kailanman tumunog o mag-vibrate \n\n"<b>"Antas 1"</b>" \n- Pigilan ang pag-istorbo kapag full screen \n- Huwag kailanman sumilip \n- Huwag kailanman tumunog o mag-vibrate \n- Itago sa lock screen at status bar \n- Ipakita sa ibaba ng listahan ng notification \n\n"<b>"Antas 0"</b>" \n- I-block ang lahat ng notification mula sa app"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Kahalagahan: Awtomatiko"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Kahalagahan: Antas 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Kahalagahan: Antas 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Kahalagahan: Antas 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Kahalagahan: Antas 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Kahalagahan: Antas 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Kahalagahan: Antas 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Tinutukoy ng app ang kahalagahan ng bawat notification."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Huwag kailanman magpakita ng mga notification mula sa app na ito."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Walang pag-istorbo, pagsilip, pagtunog o pag-vibrate kapag full screen. Itago sa lock screen at status bar."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Walang pag-istorbo, pagsilip, pagtunog o pag-vibrate kapag full screen."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Walang pag-istorbo o pagsilip kapag full screen."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Palaging sumilip. Walang pag-istorbo kapag full screen."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Palaging sumilip at payagan ang pag-antala sa full screen."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Higit pang mga setting"</string>
     <string name="notification_done" msgid="5279426047273930175">"Tapos Na"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Mga kontrol sa notification ng <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Iba pa"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Divider ng split-screen"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Ilipat pababa"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Ilipat pataas"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Ilipat pakaliwa"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Ilipat pakanan"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"I-full screen ang nasa kaliwa"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Gawing 70% ang nasa kaliwa"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Gawing 50% ang nasa kaliwa"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Gawing 30% ang nasa kaliwa"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"I-full screen ang nasa kanan"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"I-full screen ang nasa itaas"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Gawing 70% ang nasa itaas"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Gawing 50% ang nasa itaas"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Gawing 30% ang nasa itaas"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"I-full screen ang nasa ibaba"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Posisyon <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. I-double tap upang i-edit."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. I-double tap upang idagdag."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Posisyon <xliff:g id="POSITION">%1$d</xliff:g>. I-double tap upang piliin."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"Inalis ang <xliff:g id="TILE_NAME">%1$s</xliff:g>"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"Inilipat ang <xliff:g id="TILE_NAME">%1$s</xliff:g> sa posisyon <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Editor ng Mga mabilisang setting."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Maaaring hindi gumana ang app sa split-screen."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Hindi sinusuportahan ng app ang split-screen."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Page <xliff:g id="ID_1">%1$d</xliff:g> ng <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-tl/strings_tv.xml b/packages/SystemUI/res/values-tl/strings_tv.xml
index 74fe314..5591328 100644
--- a/packages/SystemUI/res/values-tl/strings_tv.xml
+++ b/packages/SystemUI/res/values-tl/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"I-play"</string>
     <string name="pip_pause" msgid="8412075640017218862">"I-pause"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"I-hold ang "<b>"HOME"</b>" para makontrol ang PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Pindutin nang matagal ang button ng HOME upang makontrol ang PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"I-dismiss"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-tr/strings.xml b/packages/SystemUI/res/values-tr/strings.xml
index 02c0d59..afd1414 100644
--- a/packages/SystemUI/res/values-tr/strings.xml
+++ b/packages/SystemUI/res/values-tr/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Veri sinyali tam."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> ile bağlı."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> ile bağlı."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX yok."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX tek çubuk."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX iki çubuk."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Kablosuz"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM kart yok."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Hücresel Veri Kapalı"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth tethering"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Uçak modu."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"SIM kart yok."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Operatör şebekesi değişiyor."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Pil yüzdesi: <xliff:g id="NUMBER">%d</xliff:g>"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Pil şarj oluyor, yüzde <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g>."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Sistem ayarları."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Bildirimler."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Bildirimi temizle."</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Rahatsız etmeyin ayarı açık, yalnızca öncelikliler."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Rahatsız etmeyin ayarı açık, tamamen sessiz."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Rahatsız etmeyin ayarı açık, yalnızca alarmlar."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"\"Rahatsız etmeyin\" ayarı kapalı."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"\"Rahatsız etmeyin\" ayarı kapalı."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"\"Rahatsız etmeyin\" ayarı açık."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth kapalı."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth açık."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth bağlanıyor."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ekran yatay yönde kilitlendi"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ekran dikey yönde kilitlendi"</string>
     <string name="dessert_case" msgid="1295161776223959221">"Tatlı Kutusu"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Hafif uyku"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Ekran koruyucu"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Rahatsız etmeyin"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Yalnızca öncelikliler"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Kullanılabilir eşlenmiş cihaz yok"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Parlaklık"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Otomatik döndür"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Döndürme kilitlendi"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Dikey"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Yatay"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Bağlı Değil"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Ağ yok"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Kablosuz Kapalı"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Kullanılabilir kablosuz ağ yok"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Yayınlama"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Yayınlanıyor"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> başlatılamadı."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g>, güvenli modda devre dışıdır."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Tümünü temizle"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Bu uygulama, çoklu pencere kullanımını desteklemiyor"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Uygulama, çoklu pencere kullanımını desteklemiyor"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Uygulama, bölünmüş ekranı desteklemiyor"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Ekranı bölünmüş olarak kullanmak için burayı sürükleyin"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Yatay Ayırma"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Dikey Ayırma"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Özel Ayırma"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> ses denetimi iletişim kutusu olarak ayarlandı"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Orijinali geri yüklemek için dokunun."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"İş profilinizi kullanıyorsunuz"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Sesi açmak için hafifçe dokunun."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Titreşime ayarlamak için hafifçe dokunun. Erişilebilirlik hizmetlerinin sesi kapatılabilir."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Sesi kapatmak için hafifçe dokunun. Erişilebilirlik hizmetlerinin sesi kapatılabilir."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Sistem Arayüzü Ayarlayıcısı"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Yerleşik pil yüzdesini göster"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Tüm bildirimleri engelle"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Sessiz moda alma"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Sessiz moda alma veya engelleme"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Tüm önem ayarlarını göster"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Engellendi"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Önemi en düşük"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Önem düzeyi düşük"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Önem düzeyi normal"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Önem düzeyi yüksek"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Önem düzeyi acil"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Bu bildirimleri hiçbir zaman gösterme"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Bildirim listesinin en altında sessizce göster"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Bu bildirimleri sessizce göster"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Bu bildirimlerin ses çıkarmasına izin ver"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Ekrana getir ve sesli bildirime izin ver"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Bildirim listesinin üstünde göster, ekrana getir ve sesli bildirime izin ver"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Güç bildirim kontrolleri"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Açık"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Kapalı"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Güç bildirim kontrolleriyle, bir uygulamanın bildirimleri için 0 ile 5 arasında bir önem düzeyi ayarlayabilirsiniz. \n\n"<b>"5. Düzey"</b>" \n- Bildirim listesinin en üstünde gösterilsin \n- Tam ekran kesintisine izin verilsin \n- Ekranda her zaman kısaca belirsin \n\n"<b>"4. Düzey"</b>" \n- Tam ekran kesintisi engellensin \n- Ekranda her zaman kısaca belirsin \n\n"<b>"3. Düzey"</b>" \n- Tam ekran kesintisi engellensin \n- Ekranda hiçbir zaman kısaca belirmesin \n\n"<b>"2. Düzey"</b>" \n- Tam ekran kesintisi engellensin \n- Ekranda hiçbir zaman belirmesin \n- Hiçbir zaman ses çıkarmasın ve titreştirmesin \n\n"<b>"1. Düzey"</b>" \n- Tam ekran kesintisi engellensin \n- Ekranda hiçbir zaman kısaca belirmesin \n- Hiçbir zaman ses çıkarmasın veya titreştirmesin \n- Kilit ekranından ve durum çubuğundan gizlensin \n- Bildirim listesinin en altında gösterilsin \n\n"<b>"0. Düzey"</b>" \n- Uygulamadan gelen tüm bildirimler engellensin"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Önem düzeyi: Otomatik"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Önem düzeyi: 0. Düzey"</string>
+    <string name="min_importance" msgid="560779348928574878">"Önem düzeyi: 1. Düzey"</string>
+    <string name="low_importance" msgid="7571498511534140">"Önem düzeyi: 2. Düzey"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Önem düzeyi: 3. Düzey"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Önem düzeyi: 4. Düzey"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Önem düzeyi: 5. Düzey"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Her bir bildirimin önem düzeyini uygulama belirler."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Bu uygulamadan gelen bildirimleri asla gösterme."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Tam ekran kesintisi, ekranda kısaca belirme, ses veya titreşim yok. Kilit ekranından ve durum çubuğundan gizlensin."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Tam ekran kesintisi, ekranda kısaca belirme, ses veya titreşim yok."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Tam ekran kesintisi veya ekranda kısaca belirme yok."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Ekranda her zaman kısaca belirsin. Tam ekran kesintisi yok."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Ekranda her zaman kısaca belirsin ve tam ekran kesintisine izin verilsin."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Diğer ayarlar"</string>
     <string name="notification_done" msgid="5279426047273930175">"Bitti"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> bildirim denetimleri"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Diğer"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Bölünmüş ekran ayırıcı"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Aşağı taşı"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Yukarı taşı"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Sola taşı"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Sağa taşı"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Solda tam ekran"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Solda %70"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Solda %50"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Solda %30"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Sağda tam ekran"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Üstte tam ekran"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Üstte %70"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Üstte %50"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Üstte %30"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Altta tam ekran"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g>. konum, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Düzenlemek için iki kez hafifçe dokunun."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Eklemek için iki kez hafifçe dokunun."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"<xliff:g id="POSITION">%1$d</xliff:g>. konum. Seçmek için iki kez hafifçe dokunun."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> kaldırıldı"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> <xliff:g id="POSITION">%2$d</xliff:g>. konumuna taşındı"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Hızlı ayar düzenleyicisi."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Uygulama bölünmüş ekranda çalışmayabilir."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Uygulama bölünmüş ekranı desteklemiyor."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Sayfa <xliff:g id="ID_1">%1$d</xliff:g> / <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-tr/strings_tv.xml b/packages/SystemUI/res/values-tr/strings_tv.xml
index 57da7fb..5b77a99 100644
--- a/packages/SystemUI/res/values-tr/strings_tv.xml
+++ b/packages/SystemUI/res/values-tr/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Oynat"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Duraklat"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"PIP\'yi kontrol etmek için "<b>"ANA EKRAN"</b>"\'ı basılı tutun"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"PIP\'yi kontrol etmek için ANA EKRAN düğmesini basılı tutun"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Anladım"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Kapat"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-uk/strings.xml b/packages/SystemUI/res/values-uk/strings.xml
index a1b2ee1..9ff1bf1 100644
--- a/packages/SystemUI/res/values-uk/strings.xml
+++ b/packages/SystemUI/res/values-uk/strings.xml
@@ -120,6 +120,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Максимальний сигнал даних."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Підключено до <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Підключено до <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Немає сигналу WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Одна смужка сигналу WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Дві смужки сигналу WiMAX."</string>
@@ -150,12 +152,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Немає SIM-карти."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Мобільний трафік вимкнено"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Прив’язка Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Режим польоту."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Немає SIM-карти."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Змінення мережі оператора."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Заряд акумулятора у відсотках: <xliff:g id="NUMBER">%d</xliff:g>."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Налаштування системи."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Сповіщення."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Очистити сповіщення."</string>
@@ -193,9 +204,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Режим \"Не турбувати\" ввімкнено, лише пріоритетні."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Увімкнено режим \"Не турбувати\", сигнали вимкнено."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Увімкнено режим \"Не турбувати\", дозволено лише сигнали."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Режим \"Не турбувати\" вимкнено."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Режим \"Не турбувати\" вимкнено."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Режим \"Не турбувати\" ввімкнено."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth вимк."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth увімк."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Під’єднання Bluetooth."</string>
@@ -249,7 +264,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Екран заблоковано в альбомній орієнтації."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Екран заблоковано в книжковій орієнтації."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Вітрина десертів"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Заставка"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Заставка"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Не турбувати"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Лише пріоритетні"</string>
@@ -261,6 +276,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Немає спарених пристроїв"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Яскравість"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Автоматичне обертання"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Обертання заблоковано"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Книжкова орієнтація"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Альбомна орієнтація"</string>
@@ -279,6 +298,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Не під’єднано."</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Немає мережі"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi вимкнено"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Немає доступних мереж Wi-Fi"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Трансляція"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Трансляція"</string>
@@ -313,8 +334,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Не вдалося запустити <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Додаток <xliff:g id="APP">%s</xliff:g> вимкнено в безпечному режимі."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Очистити все"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Цей додаток не підтримує багатоекранний режим"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Додаток не підтримує багатоекранний режим"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Додаток не підтримує розділення екрана"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Перетягніть сюди, щоб увімкнути режим розділеного екрана"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Розділити горизонтально"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Розділити вертикально"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Розділити (власний варіант)"</string>
@@ -422,11 +443,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> призначено регулятором гучності"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Торкніться, щоб відновити оригінал."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Ви в робочому профілі"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Торкніться, щоб увімкнути звук."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Торкніться, щоб налаштувати вібросигнал. Спеціальні можливості може бути вимкнено."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Торкніться, щоб вимкнути звук. Спеціальні можливості може бути вимкнено."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"System UI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Показувати заряд акумулятора у відсотках"</string>
@@ -472,19 +494,24 @@
     <string name="block" msgid="2734508760962682611">"Блокувати всі сповіщення"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Не вимикати звуковий сигнал"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Не вимикати звуковий сигнал і не блокувати"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Показати налаштування пріоритетності"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Заблоковано"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Низький пріоритет"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Низький пріоритет"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Стандартний пріоритет"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Високий пріоритет"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Терміново"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Ніколи не показувати ці сповіщення"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Показувати сповіщення внизу списку без звукового сигналу"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Показувати ці сповіщення без звукового сигналу"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Увімкнути звуковий сигнал для цих сповіщень"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Показувати сповіщення на екрані зі звуковим сигналом"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Показувати сповіщення вгорі списку, на екрані та зі звуковим сигналом"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Елементи керування сповіщеннями"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Увімк."</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Вимк."</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"За допомогою елементів керування сповіщеннями ви можете налаштувати пріоритет сповіщень додатка – від 0 до 5 рівня. \n\n"<b>"Рівень 5"</b>\n"- Показувати сповіщення вгорі списку \n- Виводити на весь екран \n- Завжди показувати короткі сповіщення \n\n"<b>"Рівень 4"</b>\n"- Не виводити на весь екран \n- Завжди показувати короткі сповіщення \n\n"<b>"Рівень 3"</b>\n"- Не виводити на весь екран \n- Не показувати короткі сповіщення \n\n"<b>"Рівень 2"</b>\n"- Не виводити на весь екран \n- Не показувати короткі сповіщення \n- Вимкнути звук і вібросигнал \n\n"<b>"Рівень 1"</b>\n"- Не виводити на весь екран \n- Не показувати короткі сповіщення \n- Вимкнути звук і вібросигнал \n- Не показувати на заблокованому екрані та в рядку стану \n- Показувати сповіщення внизу списку \n\n"<b>"Рівень 0"</b>\n"- Блокувати всі сповіщення з додатка"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Пріоритет: автоматично"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Пріоритет: рівень 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Пріоритет: рівень 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Пріоритет: рівень 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Пріоритет: рівень 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Пріоритет: рівень 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Пріоритет: рівень 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Додаток визначає пріоритет кожного сповіщення."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Не показувати сповіщення з цього додатка."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Не виводити на весь екран. Вимкнути короткі сповіщення, звук і вібросигнал. Не показувати на заблокованому екрані та в рядку стану."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Не виводити на весь екран. Вимкнути короткі сповіщення, звук і вібросигнал."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Не виводити на весь екран. Вимкнути короткі сповіщення."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Завжди показувати короткі сповіщення. Не виводити на весь екран."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Завжди показувати короткі сповіщення. Виводити на весь екран."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Більше налаштувань"</string>
     <string name="notification_done" msgid="5279426047273930175">"Готово"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Елементи керування сповіщеннями додатка <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -599,10 +626,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Інше"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Розділювач екрана"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Перемістити вниз"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Перемістити вгору"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Перемістити ліворуч"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Перемістити праворуч"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Ліве вікно на весь екран"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Ліве вікно на 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Ліве вікно на 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Ліве вікно на 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Праве вікно на весь екран"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Верхнє вікно на весь екран"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Верхнє вікно на 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Верхнє вікно на 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Верхнє вікно на 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Нижнє вікно на весь екран"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Позиція <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Двічі торкніться, щоб змінити."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Двічі торкніться, щоб додати."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Позиція <xliff:g id="POSITION">%1$d</xliff:g>. Двічі торкніться, щоб вибрати."</string>
@@ -612,6 +645,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> видалено"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> переміщено на позицію <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Редактор швидких налаштувань."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Додаток може не працювати в режимі розділеного екрана."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Додаток не підтримує розділення екрана."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Сторінка <xliff:g id="ID_1">%1$d</xliff:g> з <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-uk/strings_tv.xml b/packages/SystemUI/res/values-uk/strings_tv.xml
index 1091547..aa72aff 100644
--- a/packages/SystemUI/res/values-uk/strings_tv.xml
+++ b/packages/SystemUI/res/values-uk/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Відтворити"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Призупинити"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Щоб керувати PIP, утримуйте кнопку "<b>"ГОЛОВНИЙ ЕКРАН"</b></string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Щоб керувати PIP, утримуйте кнопку \"ГОЛОВНИЙ ЕКРАН\""</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Закрити"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ur-rPK/strings.xml b/packages/SystemUI/res/values-ur-rPK/strings.xml
index 5c4ae9a..688fc45 100644
--- a/packages/SystemUI/res/values-ur-rPK/strings.xml
+++ b/packages/SystemUI/res/values-ur-rPK/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"ڈیٹا سگنل بھرا ہوا ہے۔"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"<xliff:g id="WIFI">%s</xliff:g> سے منسلک ہیں۔"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"<xliff:g id="BLUETOOTH">%s</xliff:g> سے منسلک ہیں۔"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"‏کوئی WiMAX نہیں ہے۔"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"‏WiMAX ایک بار۔"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"‏WiMAX دو بارز۔"</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"‏کوئی SIM نہیں ہے۔"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"سیلولر ڈیٹا آف ہے"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"بلوٹوتھ مربوط کرنا۔"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"ہوائی جہاز وضع۔"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"‏کوئی SIM کارڈ نہیں ہے۔"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"کیریئر نیٹ ورک تبدیل ہو رہا ہے۔"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"بیٹری <xliff:g id="NUMBER">%d</xliff:g> فیصد۔"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"بیٹری چارجنگ، <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> فیصد۔"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"سسٹم کی ترتیبات۔"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"اطلاعات۔"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"اطلاع صاف کریں۔"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"ڈسٹرب نہ کریں آن ہے، صرف ترجیحی۔"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"مداخلت نہ کریں آن ہے، مکمل خاموشی۔"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"ڈسٹرب نہ کریں آن ہے، صرف الارمز۔"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"ڈسٹرب نہ کریں آف ہے۔"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"ڈسٹرب نہ کریں کو آف کر دیا گیا۔"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"ڈسٹرب نہ کریں کو آن کر دیا گیا۔"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"بلوٹوتھ آف ہے۔"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"بلوٹوتھ آن ہے۔"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"بلوٹوتھ منسلک ہو رہا ہے۔"</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"اسکرین اب لینڈ اسکیپ سمت بندی میں مقفل ہے۔"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"اسکرین اب پورٹریٹ سمت بندی میں مقفل ہے۔"</string>
     <string name="dessert_case" msgid="1295161776223959221">"ڈیزرٹ کیس"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"اسکرین سیور"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"ایتھرنیٹ"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"ڈسٹرب نہ کریں"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"صرف ترجیحی"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"کوئی جوڑا بنائے ہوئے آلات دستیاب نہیں ہیں"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"چمکیلا پن"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"خود کار طور پر گھمائیں"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"گردش مقفل ہے"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"پورٹریٹ"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"لینڈ اسکیپ"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"مربوط نہیں ہے"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"کوئی نیٹ ورک نہیں ہے"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"‏Wi-Fi آف ہے"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"‏کوئی WI-FI نیٹ ورک دستیاب نہیں"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"کاسٹ کریں"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"کاسٹنگ"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"<xliff:g id="APP">%s</xliff:g> کو شروع نہیں کیا جا سکا۔"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"محفوظ موڈ میں <xliff:g id="APP">%s</xliff:g> غیر فعال ہوتی ہے۔"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"سبھی کو صاف کریں"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"یہ ایپ ملٹی ونڈو کی معاونت نہیں کرتی"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"ایپ ملٹی ونڈز کی معاونت نہیں کرتی"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"ایپ سپلٹ اسکرین کو سپورٹ نہیں کرتی"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"اسپلٹ اسکرین استعمال کرنے کیلئے یہاں گھسیٹیں"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"بلحاظ افقی الگ کریں"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"بلحاظ عمودی الگ کریں"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"بلحاظ حسب ضرورت الگ کریں"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> والیوم ڈائلاگ ہے"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"اصل کو بحال کرنے کیلئے ٹچ کریں۔"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"آپ اپنا دفتری پروفائل استعمال کر رہے ہیں۔"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"‏‎%1$s۔ آواز چالو کرنے کیلئے تھپتھپائیں۔"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"‏‎%1$s۔ ارتعاش پر سیٹ کرنے کیلئے تھپتھپائیں۔ Accessibility سروسز شاید خاموش ہوں۔"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"‏‎%1$s۔ خاموش کرنے کیلئے تھپتھپائیں۔ Accessibility سروسز شاید خاموش ہوں۔"</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"‏سسٹم UI ٹیونر"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"سرایت کردہ بیٹری کی فیصد دکھائیں"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"تمام اطلاعات کو مسدود کریں"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"خاموش نہ کریں"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"خاموش یا مسدود نہ کریں"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"اہمیت کی پوری ترتیبات دکھائیں"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"مسدود کردہ"</string>
-    <string name="min_importance" msgid="1901894910809414782">"کم سے کم اہمیت"</string>
-    <string name="low_importance" msgid="4109929986107147930">"کم اہمیت"</string>
-    <string name="default_importance" msgid="8192107689995742653">"عمومی اہمیت"</string>
-    <string name="high_importance" msgid="1527066195614050263">"زیادہ اہمیت"</string>
-    <string name="max_importance" msgid="5089005872719563894">"فوری اہمیت"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"یہ اطلاعات کبھی مت دکھائیں"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"اطلاعات کی فہرست کے سب سے نیچے خاموشی سے دکھائیں"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"خاموشی سے یہ اطلاعات دکھائیں"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"ان اطلاعات کو آواز نکالنے کی اجازت دیں"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"اسکرین پر دکھائیں اور آواز کی اجازت دیں"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"اطلاعات کی فہرست پر سب سے اوپر دکھائیں، اسکرین پر دکھائیں اور آواز کی اجازت دیں"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"پاور اطلاع کے کنٹرولز"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"آن"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"آف"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"پاور اطلاع کنٹرولز کے ساتھ آپ کسی ایپ کی اطلاعات کیلئے 0 سے 5 تک اہمیت کی سطح سیٹ کر سکتے ہیں۔ \n\n"<b>"سطح 5"</b>\n"- اطلاعات کی فہرست کے اوپر دکھائیں \n- پوری اسکرین کی مداخلت کی اجازت دیں \n- ہمیشہ جھانکنا\n\n"<b>"سطح 4"</b>\n"- پوری اسکرین کی مداخلت کو روکیں \n- ہمیشہ جھانکنا\n\n"<b>"سطح 3"</b>\n"- پوری اسکرین کی مداخلت کو روکیں \n- کبھی نہ جھانکنا \n\n"<b>"سطح 2"</b>\n"- پوری اسکرین کی مداخلت کو روکیں \n- کبھی نہ جھانکنا \n- کبھی آواز اور ارتعاش پیدا نہ کرنا \n\n"<b>" سطح 1"</b>\n"- پوری اسکرین کی مداخلت کو روکنا \n- کبھی نہ جھانکنا \n- کبھی بھی آواز یا ارتعاش پیدا نہ کرنا\n- مقفل اسکرین اور اسٹیٹس بار سے چھپانا \n - اطلاع کی فہرست کی نیچے دکھانا \n\n"<b>"سطح 0"</b>\n"- ایپ سے تمام اطلاعات مسدود کریں"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"اہمیت: خود کار"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"اہمیت: سطح 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"اہمیت: سطح 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"اہمیت: سطح 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"اہمیت: سطح 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"اہمیت: سطح 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"اہمیت: سطح 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"ایپ ہر اطلاع کی اہمیت کا تعین کرتی ہے۔"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"اس ایپ سے کبھی بھی اطلاعات نہ دکھائیں۔"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"کوئی پوری اسکرین مداخلت، جھانکنا، آواز یا ارتعاش نہیں۔ اسکرین قفل اور اسٹیٹس بار سے چھپائیں۔"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"کوئی پوری اسکرین کی مداخلت، جھانکنا، آواز یا ارتعاش نہیں۔"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"پوری اسکرین پر کوئی مداخلت یا جھانکنا نہیں۔"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"ہمیشہ جھانک۔ کوئی پوری اسکرین مداخلت نہیں۔"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"ہمیشہ جھانکنا اور پوری اسکرین مداخلت کی اجازت دیں۔"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"مزید ترتیبات"</string>
     <string name="notification_done" msgid="5279426047273930175">"ہوگیا"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> کے نوٹیفکیشن کنٹرولز"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"دیگر"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"سپلٹ اسکرین تقسیم کار"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"نیچے منتقل کریں"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"اوپر منتقل کریں"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"بائیں منتقل کریں"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"دائیں منتقل کریں"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"بائیں فل اسکرین"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"بائیں %70"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"بائیں %50"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"بائیں %30"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"دائیں فل اسکرین"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"بالائی فل اسکرین"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"اوپر %70"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"اوپر %50"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"اوپر %30"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"نچلی فل اسکرین"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"پوزیشن <xliff:g id="POSITION">%1$d</xliff:g>، <xliff:g id="TILE_NAME">%2$s</xliff:g>۔ ترمیم کرنے کیلئے دو بار تھپتھپائیں۔"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>۔ شامل کرنے کیلئے دو بار تھپتھپائیں۔"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"پوزیشن <xliff:g id="POSITION">%1$d</xliff:g>۔ منتخب کرنے کیلئے دو بار تھپتھپائیں۔"</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> ہٹا دیا گیا"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="POSITION">%2$d</xliff:g> پوزیشن پر <xliff:g id="TILE_NAME">%1$s</xliff:g> منتقل ہو گیا ہے"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"فوری ترتیبات کا ایڈیٹر۔"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"ممکن ہے کہ ایپ سپلٹ اسکرین کے ساتھ کام نہ کرے۔"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"ایپ سپلٹ اسکرین کو سپورٹ نہیں کرتی۔"</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"صفحہ <xliff:g id="ID_1">%1$d</xliff:g> از <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ur-rPK/strings_tv.xml b/packages/SystemUI/res/values-ur-rPK/strings_tv.xml
index 78de898..8b0aa19 100644
--- a/packages/SystemUI/res/values-ur-rPK/strings_tv.xml
+++ b/packages/SystemUI/res/values-ur-rPK/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"چلائیں"</string>
     <string name="pip_pause" msgid="8412075640017218862">"موقوف کریں"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"‏PIP کنٹرول کرنے کیلئے "<b>"ہوم"</b>" پکڑے رکھیں"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"‏PIP کنٹرول کرنے کیلئے ہوم بٹن دبائیں اور پکڑے رکھیں"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"سمجھ آ گئی"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"برخاست کریں"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-uz-rUZ/strings.xml b/packages/SystemUI/res/values-uz-rUZ/strings.xml
index 27039d6..0782edb 100644
--- a/packages/SystemUI/res/values-uz-rUZ/strings.xml
+++ b/packages/SystemUI/res/values-uz-rUZ/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Ma’lumot uzatish signali to‘liq."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Ulangan: <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Ulangan: <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"WiMAX tarmog‘i yo‘q."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Bitta ustunli WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Ikkita ustunli WiMAX."</string>
@@ -148,12 +150,21 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"SIM karta yo‘q."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Mobil internet o‘chiq"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Bluetooth modem"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Parvoz rejimi"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Hech qanday SIM karta yo‘q."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Mobil tarmoqni o‘zgartirish"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Batareya <xliff:g id="NUMBER">%d</xliff:g> foiz."</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"Tizim sozlamalari."</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Eslatmalar."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Eslatmalarni tozalash."</string>
@@ -191,9 +202,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"“Bezovta qilinmasin” funksiyasi yoqilgan, faqat muhim bildirishnomalar ko‘rsatiladi."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Bezovta qilinmasin, tinchlik saqlansin"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Bezovta qilinmasin, faqat signallar"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"“Bezovta qilinmasin” funksiyasi o‘chirilgan."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"“Bezovta qilinmasin” funksiyasi o‘chirildi."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"“Bezovta qilinmasin” funksiyasi yoqildi."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth o‘chirilgan."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth yoqilgan."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Bluetooth ulanmoqda."</string>
@@ -247,7 +262,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Ekran yotiq holatda aylanmaydigan qilindi."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Ekran tik holatda aylanmaydigan qilindi."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Ekran lavhasi"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Ekran lavhasi"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Bezovta qilinmasin"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Faqat muhimlari"</string>
@@ -259,6 +274,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Ulangan qurilmalar topilmadi"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Yorqinlik"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Avtomatik burish"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Aylanmaydigan qilingan"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Bo‘yiga"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Eniga"</string>
@@ -277,6 +296,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Ulanmagan"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Tarmoq mavjud emas"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi o‘chiq"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Hech qanday Wi-Fi tarmog‘i mavjud emas"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Wi-Fi monitor"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Translatsiya qilinmoqda"</string>
@@ -311,8 +332,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"“<xliff:g id="APP">%s</xliff:g>” ilovasini ishga tushirib bo‘lmadi."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"Xavfsiz rejimda <xliff:g id="APP">%s</xliff:g> ilovasi o‘chirib qo‘yildi."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Hammasini tozalash"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Bu ilova ko‘p oynali rejimni qo‘llab-quvvatlamaydi"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Bu ilova ko‘p oynali rejimni qo‘llab-quvvatlamaydi"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Bu ilova ekranni bo‘lish xususiyatini qo‘llab-quvvatlamaydi"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Ekranni bo‘lish xususiyatidan foydalanish uchun uchun bu yerga torting"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Gorizontal yo‘nalishda bo‘lish"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Vertikal yo‘nalishda bo‘lish"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Boshqa usulda bo‘lish"</string>
@@ -420,11 +441,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> ovoz balandligini boshqaradi"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Aslini tiklash uchun bosing."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Siz ishchi profildan foydalanmoqdasiz"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Ovozini yoqish uchun ustiga bosing."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Tebranishni yoqish uchun ustiga bosing. Maxsus imkoniyatlar ishlamasligi mumkin."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Ovozini o‘chirish uchun ustiga bosing. Maxsus imkoniyatlar ishlamasligi mumkin."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"SystemUI Tuner"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Batareya foizi ko‘rsatilsin"</string>
@@ -470,19 +492,24 @@
     <string name="block" msgid="2734508760962682611">"Barcha bildirishnomalar bloklansin"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ovozi o‘chirilmasin"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ovozi o‘chirilmasin yoki bloklanmasin"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Barcha muhimlik sozlamalarini ko‘rsatish"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bloklangan"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Kamroq muhim"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Kamroq muhim"</string>
-    <string name="default_importance" msgid="8192107689995742653">"O‘rtacha muhim"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Juda muhim"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Favqulodda muhim"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Bu bildirishnomalar boshqa ko‘rsatilmasin"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Bildirishnomalar ro‘yxatining oxirida ovozsiz ko‘rsatilsin"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Bu bildirishnomalar ovozsiz ko‘rsatilsin"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Bu bildirishnomalar ovoz bilan ko‘rsatilsin"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Barcha oynalar ustida ovoz bilan ko‘rsatilsin"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Bildirishnomalar ro‘yxatining boshida va barcha oynalar ustida ovoz bilan ko‘rsatilsin"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Bildirishnomalar uchun kengaytirilgan boshqaruv"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Yoniq"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"O‘chiq"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Bildirishnomalar uchun kengaytirilgan boshqaruv yordamida ilova bildirishnomalarining muhimlik darajasini (0-5) sozlash mumkin. \n\n"<b>"5-daraja"</b>" \n- Bildirishnomani ro‘yxatning boshida ko‘rsatish \n- To‘liq ekranli bildirishnomalarni ko‘rsatish \n- Qalqib chiquvchi bildirishnomalarni ko‘rsatish \n\n"<b>"4-daraja"</b>" \n- To‘liq ekranli bildirishnomalarni ko‘rsatmaslik \n- Qalqib chiquvchi bildirishnomalarni ko‘rsatish \n\n"<b>"3-daraja"</b>" \n- To‘liq ekranli bildirishnomalarni ko‘rsatmaslik \n- Qalqib chiquvchi bildirishnomalarni ko‘rsatmaslik \n\n"<b>"2-daraja"</b>" \n- To‘liq ekranli bildirishnomalarni ko‘rsatmaslik \n- Qalqib chiquvchi bildirishnomalarni ko‘rsatmaslik \n- Ovoz va tebranishdan foydalanmaslik \n\n"<b>"1-daraja"</b>" \n- To‘liq ekranli bildirishnomalarni ko‘rsatmaslik \n- Qalqib chiquvchi bildirishnomalarni ko‘rsatmaslik \n- Ovoz va tebranishdan foydalanmaslik \n- Ekran qulfi va holat qatorida ko‘rsatmaslik \n- Bildirishnomani ro‘yxatning oxirida ko‘rsatish \n\n"<b>"0-daraja"</b>" \n- Ilovadan keladigan barcha bildirishnomalarni bloklash"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Muhimligi: avtomatik"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Muhimligi: 0-daraja"</string>
+    <string name="min_importance" msgid="560779348928574878">"Muhimligi: 1-daraja"</string>
+    <string name="low_importance" msgid="7571498511534140">"Muhimligi: 2-daraja"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Muhimligi: 3-daraja"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Muhimligi: 4-daraja"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Muhimligi: 5-daraja"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Ilova har bir bildirishnomaning muhimligini o‘zi aniqlaydi."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Bu ilovadan keladigan bildirishnomalarni hech qachon ko‘rsatilmaslik."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Qalqib chiquvchi va to‘liq ekranli bildirishnomalarni ko‘rsatilmaslik. Ovoz va tebranishdan foydalanmaslik. Ekran qulfi va holat qatorida ko‘rsatmaslik."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Qalqib chiquvchi va to‘liq ekranli bildirishnomalar ko‘rsatmaslik. Ovoz va tebranishdan foydalanmaslik."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Qalqib chiquvchi va to‘liq ekranli bildirishnomalarni ko‘rsatmaslik."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Qalqib chiquvchi bildirishnomalarni ko‘rsatish, to‘liq ekranli bildirishnomalarni esa ko‘rsatmaslik."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Qalqib chiquvchi va to‘liq ekranli bildirishnomalarni ko‘rsatish."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Boshqa sozlamalar"</string>
     <string name="notification_done" msgid="5279426047273930175">"Tayyor"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> bildirishnomalarini boshqarish"</string>
@@ -597,10 +624,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Boshqa"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Ekranni ikkiga bo‘lish chizig‘i"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Pastga siljitish"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Tepaga siljitish"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Chapga siljitish"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"O‘ngga siljitish"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Chapda to‘liq ekran"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Chapda 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Chapda 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Chapda 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"O‘ngda to‘liq ekran"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Tepada to‘liq ekran"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Tepada 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Tepada 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Tepada 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Pastda to‘liq ekran"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"<xliff:g id="POSITION">%1$d</xliff:g>-joy, “<xliff:g id="TILE_NAME">%2$s</xliff:g>” tugmasi. Tahrirlash uchun ustiga ikki marta bosing."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"“<xliff:g id="TILE_NAME">%1$s</xliff:g>” tugmasi. Qo‘shish uchun ustiga ikki marta bosing."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Joylashuv: <xliff:g id="POSITION">%1$d</xliff:g>. Belgilash uchun ustiga ikki marta bosing."</string>
@@ -610,6 +643,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"“<xliff:g id="TILE_NAME">%1$s</xliff:g>” tugmasi o‘chirildi"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"“<xliff:g id="TILE_NAME">%1$s</xliff:g>” tugmasi endi <xliff:g id="POSITION">%2$d</xliff:g>-joyni egallanmoqda"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Tezkor sozlamalar muharriri"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Ilova ekranni ikkiga bo‘lish rejimini qo‘llab-quvvatlamaydi."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Bu ilova ekranni bo‘lish xususiyatini qo‘llab-quvvatlamaydi."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"<xliff:g id="ID_1">%1$d</xliff:g>-sahifa, jami: <xliff:g id="ID_2">%2$d</xliff:g> ta sahifa"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-uz-rUZ/strings_tv.xml b/packages/SystemUI/res/values-uz-rUZ/strings_tv.xml
index 9300aaa..1dda1c4 100644
--- a/packages/SystemUI/res/values-uz-rUZ/strings_tv.xml
+++ b/packages/SystemUI/res/values-uz-rUZ/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Ijro"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Pauza"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"“Kadr ichida kadr” rejimini boshqarish uchun "<b>"BOSHI"</b>" tugmasini bosib turing"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"“Kadr ichida kadr” rejimini boshqarish uchun BOSHIGA tugmasini bosib turing"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Yopish"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-vi/strings.xml b/packages/SystemUI/res/values-vi/strings.xml
index ef87f01..e743c40 100644
--- a/packages/SystemUI/res/values-vi/strings.xml
+++ b/packages/SystemUI/res/values-vi/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Tín hiệu dữ liệu đầy đủ."</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Đã kết nối với <xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Đã kết nối với <xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Không có WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX một vạch."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX hai vạch."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Cạnh"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Không có SIM nào."</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Dữ liệu di động bị tắt"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Truy cập Internet qua Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Chế độ trên máy bay."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Không có thẻ SIM nào."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Thay đổi mạng của nhà cung cấp dịch vụ."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"<xliff:g id="NUMBER">%d</xliff:g> phần trăm pin."</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Đang sạc pin, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> phần trăm."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Cài đặt hệ thống"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Thông báo."</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Xóa thông báo"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Bật tính năng không làm phiền, chỉ ưu tiên."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Bật tính năng không làm phiền, hoàn toàn tắt tiếng."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Bật tính năng không làm phiền, chỉ báo thức."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Tắt tính năng không làm phiền."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Đã tắt tính năng không làm phiền."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Đã bật tính năng không làm phiền."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"Bluetooth tắt."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"Bluetooth bật."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"Đang kết nối Bluetooth."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Màn hình hiện bị khóa theo hướng ngang."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Màn hình hiện bị khóa theo hướng dọc."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Tủ trưng bày bánh ngọt"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Chế độ ngủ"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Trình bảo vệ m.hình"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Không làm phiền"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Chỉ ưu tiên"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Không có thiết bị nào được ghép nối"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Độ sáng"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Tự động xoay"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Khóa xoay"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Dọc"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Ngang"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Chưa được kết nối"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Không có mạng nào"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Tắt Wi-Fi"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Không có mạng Wi-Fi"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Truyền"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Đang truyền"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Không thể khởi động <xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g> bị tắt ở chế độ an toàn."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Xóa tất cả"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Ứng dụng này không hỗ trợ chế độ nhiều cửa sổ"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Ứng dụng không hỗ trợ chế độ nhiều cửa sổ"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Ứng dụng không hỗ trợ chia đôi màn hình"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Kéo vào đây để sử dụng chế độ chia đôi màn hình"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Phân tách ngang"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Phân tách dọc"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Tùy chỉnh phân tách"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"<xliff:g id="APP_NAME">%1$s</xliff:g> là hộp thoại khối lượng"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Chạm để khôi phục bản gốc."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Bạn đang sử dụng hồ sơ công việc của mình"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Nhấn để bật tiếng."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Nhấn để đặt chế độ rung. Bạn có thể tắt tiếng dịch vụ trợ năng."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Nhấn để tắt tiếng. Bạn có thể tắt tiếng dịch vụ trợ năng."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Bộ điều hướng giao diện người dùng hệ thống"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Hiển thị tỷ lệ phần trăm pin được nhúng"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Chặn tất cả thông báo"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Không im lặng"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Không im lặng hoặc chặn"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Hiển thị cài đặt tầm quan trọng đầy đủ"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Bị chặn"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Tầm quan trọng thấp nhất"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Tầm quan trọng thấp"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Tầm quan trọng bình thường"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Tầm quan trọng cao"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Tầm quan trọng khẩn cấp"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Không bao giờ hiển thị các thông báo này"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Hiển thị im lặng ở cuối danh sách thông báo"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Hiển thị im lặng các thông báo này"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Cho phép các thông báo này phát ra âm thanh"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Hiển thị trên màn hình và phát ra âm thanh"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Hiển thị ở đầu danh sách thông báo, hiển thị trên màn hình và phát ra âm thanh"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Điều khiển thông báo nguồn"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Bật"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Tắt"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Với các kiểm soát thông báo nguồn, bạn có thể đặt cấp độ quan trọng từ 0 đến 5 cho các thông báo của ứng dụng. \n\n"<b>"Cấp 5"</b>" \n- Hiển thị ở đầu danh sách thông báo \n- Cho phép gián đoạn ở chế độ toàn màn hình \n- Luôn xem nhanh \n\n"<b>"Cấp 4"</b>" \n- Ngăn gián đoạn ở chế độ toàn màn hình \n- Luôn xem nhanh \n\n"<b>"Cấp 3"</b>" \n- Ngăn gián đoạn ở chế độ toàn màn hình \n- Không bao giờ xem nhanh \n\n"<b>"Cấp 2"</b>" \n- Ngăn gián đoạn ở chế độ toàn màn hình \n- Không bao giờ xem nhanh \n- Không bao giờ có âm báo và rung \n\n"<b>"Cấp 1"</b>" \n- Ngăn gián đoạn ở chế độ toàn màn hình \n- Không bao giờ xem nhanh \n- Không bao giờ có âm báo và rung \n- Ẩn khỏi màn hình khóa và thanh trạng thái \n- Hiển thị ở cuối danh sách thông báo \n\n"<b>"Cấp 0"</b>" \n- Chặn tất cả các thông báo từ ứng dụng"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Tầm quan trọng: Tự động"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Tầm quan trọng: Cấp 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Tầm quan trọng: Cấp 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Tầm quan trọng: Cấp 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Tầm quan trọng: Cấp 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Tầm quan trọng: Cấp 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Tầm quan trọng: Cấp 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Ứng dụng xác định tầm quan trọng cho từng thông báo."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Không bao giờ hiển thị thông báo từ ứng dụng này."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Ko có rung, âm báo, xem nhanh, gián đoạn ở toàn màn hình. Ẩn khỏi màn hình khóa và thanh trạng thái."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Không có rung, âm báo, xem nhanh hoặc gián đoạn ở chế độ toàn màn hình."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Không có xem nhanh hoặc gián đoạn ở chế độ toàn màn hình."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Luôn xem nhanh. Không có gián đoạn ở chế độ toàn màn hình."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Luôn xem nhanh và cho phép gián đoạn ở chế độ toàn màn hình."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Cài đặt khác"</string>
     <string name="notification_done" msgid="5279426047273930175">"Xong"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"Điều khiển thông báo <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Khác"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Bộ chia chia đôi màn hình"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Chuyển xuống"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Chuyển lên"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Di chuyển sang trái"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Di chuyển sang phải"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Toàn màn hình bên trái"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Trái 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Trái 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Trái 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Toàn màn hình bên phải"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Toàn màn hình phía trên"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Trên 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Trên 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Trên 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Toàn màn hình phía dưới"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Vị trí <xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Nhấn đúp để chỉnh sửa."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Nhấn đúp để thêm."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Vị trí <xliff:g id="POSITION">%1$d</xliff:g>. Nhấn đúp để chọn."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> được di chuyển"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> được di chuyển sang vị trí <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Trình chỉnh sửa cài đặt nhanh."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Ứng dụng có thể không hoạt động với tính năng chia đôi màn hình."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Ứng dụng không hỗ trợ chia đôi màn hình."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Trang <xliff:g id="ID_1">%1$d</xliff:g> / <xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-vi/strings_tv.xml b/packages/SystemUI/res/values-vi/strings_tv.xml
index b781503..3ac8574 100644
--- a/packages/SystemUI/res/values-vi/strings_tv.xml
+++ b/packages/SystemUI/res/values-vi/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Phát"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Tạm dừng"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Giữ "<b>"HOME"</b>" để đ.khiển PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Bấm và giữ nút HOME để điều khiển PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"OK"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Loại bỏ"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-zh-rCN/strings.xml b/packages/SystemUI/res/values-zh-rCN/strings.xml
index 85c8bf6..82ee690 100644
--- a/packages/SystemUI/res/values-zh-rCN/strings.xml
+++ b/packages/SystemUI/res/values-zh-rCN/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"数据信号满格。"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"已连接到<xliff:g id="WIFI">%s</xliff:g>。"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"已连接到<xliff:g id="BLUETOOTH">%s</xliff:g>。"</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"无 WiMAX 信号。"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX 信号强度为一格。"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX 信号强度为两格。"</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"EDGE"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"WLAN"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"无 SIM 卡。"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"移动数据网络已关闭"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"蓝牙网络共享。"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"飞行模式。"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"没有 SIM 卡。"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"运营商网络正在更改。"</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"电池电量为百分之 <xliff:g id="NUMBER">%d</xliff:g>。"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"正在充电，已完成百分之<xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g>。"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"系统设置。"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"通知。"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"清除通知。"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"勿扰模式已开启，仅限优先打扰。"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"勿扰模式已开启，完全静音。"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"勿扰模式已开启，仅限闹钟。"</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"勿扰模式关闭。"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"已关闭勿扰模式。"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"已开启勿扰模式。"</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"蓝牙关闭。"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"蓝牙开启。"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"蓝牙连接中。"</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"屏幕现已锁定为横向模式。"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"屏幕现已锁定为纵向模式。"</string>
     <string name="dessert_case" msgid="1295161776223959221">"甜品盒"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"互动屏保"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"屏保"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"有线网络"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"勿扰"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"仅限优先打扰"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"没有可用的配对设备"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"亮度"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"自动旋转"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"屏幕方向：锁定"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"纵向"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"横向"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"未连接"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"无网络"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"WLAN：关闭"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"没有 WLAN 网络"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"投射"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"正在投射"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"无法启动<xliff:g id="APP">%s</xliff:g>。"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"<xliff:g id="APP">%s</xliff:g>已在安全模式下停用。"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"全部清除"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"此应用不支持多窗口模式"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"应用不支持多窗口模式"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"该应用不支持分屏"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"在此处拖动即可使用分屏功能"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"水平分割"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"垂直分割"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"自定义分割"</string>
@@ -420,13 +439,14 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"“<xliff:g id="APP_NAME">%1$s</xliff:g>”已用作音量控制对话框"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"触摸即可恢复原始设置。"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"您当前正在使用工作资料"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s。点按即可取消静音。"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s。点按即可设为振动，但可能会同时将无障碍服务设为静音。"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s。点按即可设为静音，但可能会同时将无障碍服务设为静音。"</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
-    <string name="system_ui_tuner" msgid="708224127392452018">"系统界面调谐器"</string>
+    <string name="system_ui_tuner" msgid="708224127392452018">"系统界面调节工具"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"嵌入式显示电池电量百分比 显示嵌入的电池电量百分比"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"未充电时在状态栏图标内显示电池电量百分比"</string>
     <string name="quick_settings" msgid="10042998191725428">"快捷设置"</string>
@@ -448,13 +468,13 @@
     <string name="accessibility_quick_settings_detail" msgid="2579369091672902101">"快捷设置，<xliff:g id="TITLE">%s</xliff:g>。"</string>
     <string name="accessibility_status_bar_hotspot" msgid="4099381329956402865">"热点"</string>
     <string name="accessibility_managed_profile" msgid="6613641363112584120">"工作资料"</string>
-    <string name="tuner_warning_title" msgid="7094689930793031682">"是否有趣完全取决于个人感觉"</string>
-    <string name="tuner_warning" msgid="8730648121973575701">"系统界面调谐器可让您通过其他方式调整及自定义 Android 用户界面。在日后推出的版本中，这些实验性功能可能会变更、损坏或消失。操作时请务必谨慎。"</string>
-    <string name="tuner_persistent_warning" msgid="8597333795565621795">"在日后推出的版本中，这些实验性功能可能会变更、损坏或消失。操作时请务必谨慎。"</string>
+    <string name="tuner_warning_title" msgid="7094689930793031682">"并不适合所有用户"</string>
+    <string name="tuner_warning" msgid="8730648121973575701">"系统界面调节工具可让您以更多方式调整及定制 Android 界面。在日后推出的版本中，这些实验性功能可能会变更、失效或消失。操作时请务必谨慎。"</string>
+    <string name="tuner_persistent_warning" msgid="8597333795565621795">"在日后推出的版本中，这些实验性功能可能会变更、失效或消失。操作时请务必谨慎。"</string>
     <string name="got_it" msgid="2239653834387972602">"知道了"</string>
-    <string name="tuner_toast" msgid="603429811084428439">"恭喜！系统界面调谐器已添加到“设置”中"</string>
+    <string name="tuner_toast" msgid="603429811084428439">"恭喜！系统界面调节工具已添加到“设置”中"</string>
     <string name="remove_from_settings" msgid="8389591916603406378">"从“设置”中移除"</string>
-    <string name="remove_from_settings_prompt" msgid="6069085993355887748">"要将系统界面调谐器从“设置”中移除，并停止使用所有相关功能吗？"</string>
+    <string name="remove_from_settings_prompt" msgid="6069085993355887748">"要从“设置”中移除系统界面调节工具，并停止使用所有相关功能吗？"</string>
     <string name="activity_not_found" msgid="348423244327799974">"您的设备中未安装此应用"</string>
     <string name="clock_seconds" msgid="7689554147579179507">"显示时钟的秒数"</string>
     <string name="clock_seconds_desc" msgid="6282693067130470675">"在状态栏中显示时钟的秒数。这可能会影响电池的续航时间。"</string>
@@ -470,25 +490,30 @@
     <string name="block" msgid="2734508760962682611">"屏蔽所有通知"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"不静音"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"不静音也不屏蔽"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"显示完整的重要性设置"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"屏蔽"</string>
-    <string name="min_importance" msgid="1901894910809414782">"重要性最低"</string>
-    <string name="low_importance" msgid="4109929986107147930">"重要性：低"</string>
-    <string name="default_importance" msgid="8192107689995742653">"重要性：一般"</string>
-    <string name="high_importance" msgid="1527066195614050263">"重要性：高"</string>
-    <string name="max_importance" msgid="5089005872719563894">"重要性：紧急"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"一律不显示这些通知"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"在通知列表底部显示，但不发出提示音"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"显示这些通知，但不发出提示音"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"允许这些通知发出提示音"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"在屏幕上短暂显示，并允许发出提示音"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"在通知列表顶部显示，同时在屏幕上短暂显示，并允许发出提示音"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"高级通知设置"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"开启"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"关闭"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"利用高级通知设置，您可以为应用通知设置从 0 级到 5 级的重要程度等级。\n\n"<b>"5 级"</b>" \n- 在通知列表顶部显示 \n- 允许全屏打扰 \n- 一律短暂显示通知 \n\n"<b>"4 级"</b>" \n- 禁止全屏打扰 \n- 一律短暂显示通知 \n\n"<b>"3 级"</b>" \n- 禁止全屏打扰 \n- 一律不短暂显示通知 \n\n"<b>"2 级"</b>" \n- 禁止全屏打扰 \n- 一律不短暂显示通知 \n- 一律不发出声音或振动 \n\n"<b>"1 级"</b>" \n- 禁止全屏打扰 \n- 一律不短暂显示通知 \n- 一律不发出声音或振动 \n- 不在锁定屏幕和状态栏中显示 \n- 在通知列表底部显示 \n\n"<b>"0 级"</b>" \n- 屏蔽应用的所有通知"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"重要程度：自动"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"重要程度：0 级"</string>
+    <string name="min_importance" msgid="560779348928574878">"重要程度：1 级"</string>
+    <string name="low_importance" msgid="7571498511534140">"重要程度：2 级"</string>
+    <string name="default_importance" msgid="7609889614553354702">"重要程度：3 级"</string>
+    <string name="high_importance" msgid="3441537905162782568">"重要程度：4 级"</string>
+    <string name="max_importance" msgid="4880179829869865275">"重要程度：5 级"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"应用会自行确定每条通知的重要程度。"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"一律不显示来自此应用的通知。"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"禁止全屏打扰、禁止短暂显示通知、禁止发出声音或振动；不在锁定屏幕和状态栏中显示。"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"禁止全屏打扰、禁止短暂显示通知、禁止发出声音或振动。"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"禁止全屏打扰或短暂显示通知。"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"一律允许短暂显示通知。禁止全屏打扰。"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"一律允许短暂显示通知，并允许全屏打扰。"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"更多设置"</string>
     <string name="notification_done" msgid="5279426047273930175">"完成"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g>通知设置"</string>
     <string name="color_and_appearance" msgid="1254323855964993144">"颜色和外观"</string>
     <string name="night_mode" msgid="3540405868248625488">"夜间模式"</string>
-    <string name="calibrate_display" msgid="5974642573432039217">"校准显示画面"</string>
+    <string name="calibrate_display" msgid="5974642573432039217">"校准显示屏"</string>
     <string name="night_mode_on" msgid="5597545513026541108">"开启"</string>
     <string name="night_mode_off" msgid="8035605276956057508">"关闭"</string>
     <string name="turn_on_automatically" msgid="4167565356762016083">"自动开启"</string>
@@ -548,9 +573,9 @@
     <string name="keyboard_shortcut_group_applications_youtube" msgid="6555453761294723317">"YouTube"</string>
     <string name="keyboard_shortcut_group_applications_calendar" msgid="9043614299194991263">"日历"</string>
     <string name="tuner_full_zen_title" msgid="4540823317772234308">"与音量控件一起显示"</string>
-    <string name="volume_and_do_not_disturb" msgid="3373784330208603030">"请勿打扰"</string>
+    <string name="volume_and_do_not_disturb" msgid="3373784330208603030">"勿扰"</string>
     <string name="volume_dnd_silent" msgid="4363882330723050727">"音量按钮快捷键"</string>
-    <string name="volume_up_silent" msgid="7141255269783588286">"按音量调高键时退出“请勿打扰”模式"</string>
+    <string name="volume_up_silent" msgid="7141255269783588286">"按音量调高键时退出勿扰模式"</string>
     <string name="battery" msgid="7498329822413202973">"电池"</string>
     <string name="clock" msgid="7416090374234785905">"时钟"</string>
     <string name="headset" msgid="4534219457597457353">"耳机"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"其他"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"分屏分隔线"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"下移"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"上移"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"左移"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"右移"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"左侧全屏"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"左侧 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"左侧 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"左侧 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"右侧全屏"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"顶部全屏"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"顶部 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"顶部 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"顶部 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"底部全屏"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"位置 <xliff:g id="POSITION">%1$d</xliff:g>，<xliff:g id="TILE_NAME">%2$s</xliff:g>。点按两次即可修改。"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>。点按两次即可添加。"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"位置 <xliff:g id="POSITION">%1$d</xliff:g>。点按两次即可选择。"</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"已移除<xliff:g id="TILE_NAME">%1$s</xliff:g>"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"已将<xliff:g id="TILE_NAME">%1$s</xliff:g>移至位置 <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"快捷设置编辑器。"</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"应用可能无法在分屏模式下正常运行。"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"应用不支持分屏。"</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"第 <xliff:g id="ID_1">%1$d</xliff:g> 页，共 <xliff:g id="ID_2">%2$d</xliff:g> 页"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-zh-rCN/strings_tv.xml b/packages/SystemUI/res/values-zh-rCN/strings_tv.xml
index 77d3bff..ac4991d 100644
--- a/packages/SystemUI/res/values-zh-rCN/strings_tv.xml
+++ b/packages/SystemUI/res/values-zh-rCN/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"播放"</string>
     <string name="pip_pause" msgid="8412075640017218862">"暂停"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"按住"<b>"主屏幕"</b>"按钮即可控制画中画功能"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"按住主屏幕按钮即可控制画中画功能"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"知道了"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"关闭"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-zh-rHK/strings.xml b/packages/SystemUI/res/values-zh-rHK/strings.xml
index 4d5e495..120956c 100644
--- a/packages/SystemUI/res/values-zh-rHK/strings.xml
+++ b/packages/SystemUI/res/values-zh-rHK/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"數據網絡訊號滿格。"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"已連線至<xliff:g id="WIFI">%s</xliff:g>。"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"已連線至<xliff:g id="BLUETOOTH">%s</xliff:g>。"</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"已連線至 <xliff:g id="CAST">%s</xliff:g>。"</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"沒有 WiMAX 訊號。"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX 訊號強度一格。"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX 訊號強度兩格。"</string>
@@ -148,12 +149,18 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"無 SIM 卡。"</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"行動數據"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"已啟用行動數據連線"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"流動數據已關閉"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"藍牙網絡共享。"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"飛航模式。"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"沒有 SIM 卡。"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"流動網絡供應商網絡正在變更。"</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"開啟電量詳細資料"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"電池電量為百分之 <xliff:g id="NUMBER">%d</xliff:g>。"</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for accessibility_battery_level_charging (1147587904439319646) -->
+    <skip />
     <string name="accessibility_settings_button" msgid="799583911231893380">"系統設定"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"通知。"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"清除通知。"</string>
@@ -191,9 +198,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"開啟「請勿騷擾」，僅限優先。"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"開啟「請勿騷擾」，完全靜音。"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"開啟「請勿騷擾」，僅限鬧鐘。"</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"零打擾。"</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"「請勿騷擾」關閉"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"已關閉「請勿騷擾」。"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"已開啟「請勿騷擾」。"</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"藍牙。"</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"藍牙已關閉。"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"藍牙已開啟。"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"正在建立藍牙連線。"</string>
@@ -247,7 +256,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"螢幕現已鎖定為橫向模式"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"螢幕現已鎖定為縱向模式。"</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Daydream"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"螢幕保護程式"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"以太網"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"請勿騷擾"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"僅限優先"</string>
@@ -259,6 +268,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"找不到配對的裝置"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"亮度"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"自動旋轉"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"自動旋轉螢幕"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"設為<xliff:g id="ID_1">%s</xliff:g>"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"輪流展示鎖定"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"直向"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"橫向"</string>
@@ -277,6 +288,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"未連線"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"沒有網絡"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi 關閉"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"已開啟 Wi-Fi"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"沒有可用的 Wi-Fi 網絡"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"投放"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"正在放送"</string>
@@ -311,8 +323,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"無法啟動「<xliff:g id="APP">%s</xliff:g>」。"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"「<xliff:g id="APP">%s</xliff:g>」已在安全模式中停用。"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"全部清除"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"此應用程式不支援多視窗模式"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"應用程式不支援多視窗模式"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"應用程式不支援分割畫面"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"在這裡拖曳即可分割螢幕"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"水平分割"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"垂直分割"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"自訂分割"</string>
@@ -420,12 +432,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」為音量對話框"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"輕觸即可復原。"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"您正在使用工作設定檔"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s。輕按即可取消靜音。"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s。輕按即可設為震動。無障礙功能服務可能已經設為靜音。"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s。輕按即可設為靜音。無障礙功能服務可能已經設為靜音。"</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"已顯示 %s 個音量控制項。向上滑動即可關閉。"</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"已隱藏音量控制項"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"系統使用者介面調諧器"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"顯示嵌入的電池百分比"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"非充電時，在狀態列圖示顯示電量百分比"</string>
@@ -470,19 +481,24 @@
     <string name="block" msgid="2734508760962682611">"封鎖所有通知"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"不設為靜音"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"不設為靜音或封鎖"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"顯示所有重要性設定"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"已封鎖"</string>
-    <string name="min_importance" msgid="1901894910809414782">"最低重要性"</string>
-    <string name="low_importance" msgid="4109929986107147930">"低重要性"</string>
-    <string name="default_importance" msgid="8192107689995742653">"一般重要性"</string>
-    <string name="high_importance" msgid="1527066195614050263">"高重要性"</string>
-    <string name="max_importance" msgid="5089005872719563894">"緊急重要性"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"永不顯示這些通知"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"在通知清單底部顯示但不發出音效"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"顯示這些通知但不發出音效"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"允許這些通知發出音效"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"不時於螢幕出現並發出音效"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"在通知清單頂部顯示，並不時於螢幕出現及發出音效"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"通知控制項"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"開啟"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"關閉"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"通知控制項讓您設定應用程式通知的重要性 (0 至 5 級)。\n\n"<b>"第 5 級"</b>" \n- 在通知清單頂部顯示 \n- 允許全螢幕騷擾 \n- 一律顯示通知 \n\n"<b>"第 4 級"</b>" \n- 阻止全螢幕騷擾 \n- 一律顯示通知 \n\n"<b>"第 3 級"</b>" \n- 阻止全螢幕騷擾 \n- 永不顯示通知 \n\n"<b>"第 2 級"</b>" \n- 阻止全螢幕騷擾 \n- 永不顯示通知 \n- 永不發出聲響和震動 \n\n"<b>"第 1 級"</b>" \n- 阻止全螢幕騷擾 \n- 永不顯示通知 \n- 永不發出聲響和震動 \n- 從上鎖畫面和狀態列中隱藏 \n- 在通知清單底部顯示 \n\n"<b>"第 0 級"</b>" \n- 封鎖所有應用程式通知"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"重要性：自動"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"重要性：第 0 級"</string>
+    <string name="min_importance" msgid="560779348928574878">"重要性：第 1 級"</string>
+    <string name="low_importance" msgid="7571498511534140">"重要性：第 2 級"</string>
+    <string name="default_importance" msgid="7609889614553354702">"重要性：第 3 級"</string>
+    <string name="high_importance" msgid="3441537905162782568">"重要性：第 4 級"</string>
+    <string name="max_importance" msgid="4880179829869865275">"重要性：第 5 級"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"由應用程式決定每個通知的重要性。"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"永不顯示此應用程式的通知。"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"不允許全螢幕騷擾、顯示通知、發出聲響或震動。從上鎖畫面及狀態列中隱藏。"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"不允許全螢幕騷擾、顯示通知、發出聲響或震動。"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"不允許全螢幕騷擾或顯示通知。"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"一律顯示通知。不允許全螢幕騷擾。"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"一律顯示通知，並允許全螢幕騷擾。"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"更多設定"</string>
     <string name="notification_done" msgid="5279426047273930175">"完成"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」通知控制項"</string>
@@ -597,10 +613,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"其他"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"分割畫面分隔線"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"向下移"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"向上移"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"向左移"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"向右移"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"左邊全螢幕"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"左邊 70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"左邊 50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"左邊 30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"右邊全螢幕"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"頂部全螢幕"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"頂部 70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"頂部 50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"頂部 30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"底部全螢幕"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"位置 <xliff:g id="POSITION">%1$d</xliff:g>，<xliff:g id="TILE_NAME">%2$s</xliff:g>。輕按兩下即可編輯。"</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>。輕按兩下即可新增。"</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"位置 <xliff:g id="POSITION">%1$d</xliff:g>。輕按兩下即可選取。"</string>
@@ -610,6 +632,17 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"<xliff:g id="TILE_NAME">%1$s</xliff:g> 已移除"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"<xliff:g id="TILE_NAME">%1$s</xliff:g> 已移至位置 <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"快速設定編輯工具。"</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"<xliff:g id="ID_1">%1$s</xliff:g> 通知：<xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"應用程式可能無法在分割畫面中運作。"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"應用程式不支援分割畫面。"</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"開啟設定。"</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"開啟快速設定。"</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"關閉快速設定。"</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"已設定鬧鐘。"</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"以「<xliff:g id="ID_1">%s</xliff:g>」的身分登入"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"沒有網際網路連線。"</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"開啟詳細資料。"</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"開啟「<xliff:g id="ID_1">%s</xliff:g>」設定。"</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"編輯設定順序。"</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"第 <xliff:g id="ID_1">%1$d</xliff:g> 頁 (共 <xliff:g id="ID_2">%2$d</xliff:g> 頁)"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-zh-rHK/strings_tv.xml b/packages/SystemUI/res/values-zh-rHK/strings_tv.xml
index 10c3141..6021766 100644
--- a/packages/SystemUI/res/values-zh-rHK/strings_tv.xml
+++ b/packages/SystemUI/res/values-zh-rHK/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"播放"</string>
     <string name="pip_pause" msgid="8412075640017218862">"暫停"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"按住"<b>"主按鈕"</b>"即可控制 PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"按住主按鈕即可控制 PIP"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"子母畫面"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"您的影片會一直顯示在畫面中，直到您播放其他影片為止。按住 [HOME] (主畫面) 按鈕即可控制子母畫面。"<b></b></string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"知道了"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"關閉"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-zh-rTW/strings.xml b/packages/SystemUI/res/values-zh-rTW/strings.xml
index 6d15234..87b4bd8 100644
--- a/packages/SystemUI/res/values-zh-rTW/strings.xml
+++ b/packages/SystemUI/res/values-zh-rTW/strings.xml
@@ -118,6 +118,7 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"數據網路訊號滿格。"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"已連線至<xliff:g id="WIFI">%s</xliff:g>。"</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"已連線至<xliff:g id="BLUETOOTH">%s</xliff:g>。"</string>
+    <string name="accessibility_cast_name" msgid="4026393061247081201">"已連線至 <xliff:g id="CAST">%s</xliff:g>。"</string>
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"沒有 WiMAX 訊號。"</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"WiMAX 訊號一格。"</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"WiMAX 訊號兩格。"</string>
@@ -148,12 +149,16 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Edge"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"沒有 SIM 卡。"</string>
+    <string name="accessibility_cell_data" msgid="7080312242791850520">"行動數據"</string>
+    <string name="accessibility_cell_data_on" msgid="4310018593519761767">"已啟用行動數據連線"</string>
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"行動數據連線已關閉"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"藍牙網路共用"</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"飛行模式。"</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"沒有 SIM 卡。"</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"行動通訊業者網路正在變更。"</string>
+    <string name="accessibility_battery_details" msgid="7645516654955025422">"開啟電量詳細資料"</string>
     <string name="accessibility_battery_level" msgid="7451474187113371965">"電池電量為百分之 <xliff:g id="NUMBER">%d</xliff:g>。"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"充電中，已完成百分之 <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g>。"</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"系統設定"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"通知。"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"清除通知。"</string>
@@ -191,9 +196,11 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"「零打擾」設定為開啟，只會顯示優先通知。"</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"「零打擾」設定為開啟，完全靜音。"</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"「零打擾」設定為開啟，只會顯示鬧鐘。"</string>
+    <string name="accessibility_quick_settings_dnd" msgid="6607873236717185815">"零打擾。"</string>
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"「零打擾」設定為關閉。"</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"已停用「零打擾」設定。"</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"已啟用「零打擾」設定。"</string>
+    <string name="accessibility_quick_settings_bluetooth" msgid="6341675755803320038">"藍牙。"</string>
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"藍牙已關閉。"</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"藍牙已開啟。"</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"正在建立藍牙連線。"</string>
@@ -247,7 +254,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"螢幕現已鎖定為橫向模式。"</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"螢幕現已鎖定為縱向模式。"</string>
     <string name="dessert_case" msgid="1295161776223959221">"Dessert Case"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"休眠模式"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"螢幕保護程式"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"乙太網路"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"零打擾"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"僅限優先通知"</string>
@@ -259,6 +266,8 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"找不到配對的裝置"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"亮度"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"自動旋轉"</string>
+    <string name="accessibility_quick_settings_rotation" msgid="4231661040698488779">"自動旋轉螢幕"</string>
+    <string name="accessibility_quick_settings_rotation_value" msgid="1428962304214992318">"設為<xliff:g id="ID_1">%s</xliff:g>"</string>
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"已鎖定旋轉"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"縱向"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"橫向"</string>
@@ -277,6 +286,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"未連線"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"沒有網路"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi 已關閉"</string>
+    <string name="quick_settings_wifi_on_label" msgid="7607810331387031235">"已開啟 Wi-Fi"</string>
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"沒有 Wi-Fi 網路"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"投放"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"投放"</string>
@@ -311,8 +321,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"無法啟動「<xliff:g id="APP">%s</xliff:g>」。"</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"「<xliff:g id="APP">%s</xliff:g>」在安全模式中為停用狀態。"</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"全部清除"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"這個應用程式不支援多視窗模式"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"應用程式不支援多視窗模式"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"這個應用程式不支援分割畫面"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"拖曳到這裡即可使用分割畫面"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"水平分割"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"垂直分割"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"自訂分割"</string>
@@ -420,12 +430,11 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」現在是預設的音量控制對話方塊。"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"輕觸這裡即可恢復原始設定。"</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"您正在使用 Work 設定檔"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
-    <skip />
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s。輕觸即可取消靜音。"</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s。輕觸即可設為震動，但系統可能會將無障礙服務一併設為靜音。"</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s。輕觸即可設為靜音，但系統可能會將無障礙服務一併設為靜音。"</string>
+    <string name="volume_dialog_accessibility_shown_message" msgid="1834631467074259998">"已顯示 %s 個音量控制項。向上滑動即可關閉。"</string>
+    <string name="volume_dialog_accessibility_dismissed_message" msgid="51543526013711399">"已隱藏音量控制項"</string>
     <string name="system_ui_tuner" msgid="708224127392452018">"系統使用者介面調整精靈"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"顯示嵌入式電池百分比"</string>
     <string name="show_battery_percentage_summary" msgid="3215025775576786037">"未充電時在狀態列圖示中顯示電量百分比"</string>
@@ -470,19 +479,24 @@
     <string name="block" msgid="2734508760962682611">"封鎖所有通知"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"不設定靜音"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"不設定靜音或封鎖"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"顯示完整的重要性設定"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"封鎖"</string>
-    <string name="min_importance" msgid="1901894910809414782">"最低重要性"</string>
-    <string name="low_importance" msgid="4109929986107147930">"低重要性"</string>
-    <string name="default_importance" msgid="8192107689995742653">"一般重要性"</string>
-    <string name="high_importance" msgid="1527066195614050263">"高重要性"</string>
-    <string name="max_importance" msgid="5089005872719563894">"緊急重要性"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"一律不顯示這些通知"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"顯示在通知清單底端，但不發出任何音效"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"顯示這些通知，但不發出任何音效"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"允許這些通知發出音效"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"短暫顯示在畫面上並發出音效"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"顯示在通知清單頂端，同時短暫顯示在畫面上並發出音效"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"電源通知控制項"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"開啟"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"關閉"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"只要使用電源通知控制項，您就能為應用程式通知設定從 0 到 5 的重要性等級。\n\n"<b>"等級 5"</b>" \n- 顯示在通知清單頂端 \n- 允許全螢幕通知 \n- 一律允許短暫顯示通知 \n\n"<b>"等級 4"</b>" \n- 禁止全螢幕通知 \n- 一律允許短暫顯示通知 \n\n"<b>"等級 3"</b>" \n- 禁止全螢幕通知 \n- 一律不允許短暫顯示通知 \n\n"<b>"等級 2"</b>" \n- 禁止全螢幕通知 \n- 一律不允許短暫顯示通知 \n- 一律不發出音效或震動 \n\n"<b>"等級 1"</b>" \n- 禁止全螢幕通知 \n- 一律不允許短暫顯示通知 \n- 一律不發出音效或震動 \n- 在鎖定畫面和狀態列中隱藏 \n- 顯示在通知清單底端 \n\n"<b>"等級 0"</b>" \n- 封鎖應用程式的所有通知"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"重要性：自動"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"重要性：等級 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"重要性：等級 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"重要性：等級 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"重要性：等級 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"重要性：等級 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"重要性：等級 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"應用程式會判定每則通知的重要性。"</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"一律不顯示這個應用程式的通知。"</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"禁止全螢幕通知、短暫顯示通知、音效或震動。不在鎖定畫面和狀態列中顯示。"</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"禁止全螢幕通知、短暫顯示通知、音效或震動。"</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"禁止全螢幕通知或短暫顯示通知。"</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"一律允許短暫顯示通知，禁止全螢幕通知。"</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"一律允許短暫顯示通知，同時允許全螢幕通知。"</string>
     <string name="notification_more_settings" msgid="816306283396553571">"更多設定"</string>
     <string name="notification_done" msgid="5279426047273930175">"完成"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」通知控制項"</string>
@@ -597,19 +611,36 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"其他"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"分割畫面分隔線"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"向下移"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"向上移"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"向左移"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"向右移"</string>
-    <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"位置 <xliff:g id="POSITION">%1$d</xliff:g>，<xliff:g id="TILE_NAME">%2$s</xliff:g>。輕按兩下即可編輯。"</string>
-    <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>。輕按兩下即可新增。"</string>
-    <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"位置 <xliff:g id="POSITION">%1$d</xliff:g>。輕按兩下即可選取。"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"以全螢幕顯示左側畫面"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"以 70% 的螢幕空間顯示左側畫面"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"以 50% 的螢幕空間顯示左側畫面"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"以 30% 的螢幕空間顯示左側畫面"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"以全螢幕顯示右側畫面"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"以全螢幕顯示頂端畫面"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"以 70% 的螢幕空間顯示頂端畫面"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"以 50% 的螢幕空間顯示頂端畫面"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"以 30% 的螢幕空間顯示頂端畫面"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"以全螢幕顯示底部畫面"</string>
+    <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"位置 <xliff:g id="POSITION">%1$d</xliff:g>，<xliff:g id="TILE_NAME">%2$s</xliff:g>。輕觸兩下即可編輯。"</string>
+    <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>。輕觸兩下即可新增。"</string>
+    <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"位置 <xliff:g id="POSITION">%1$d</xliff:g>。輕觸兩下即可選取。"</string>
     <string name="accessibility_qs_edit_move_tile" msgid="2461819993780159542">"移動 <xliff:g id="TILE_NAME">%1$s</xliff:g>"</string>
     <string name="accessibility_qs_edit_remove_tile" msgid="7484493384665907197">"移除 <xliff:g id="TILE_NAME">%1$s</xliff:g>"</string>
     <string name="accessibility_qs_edit_tile_added" msgid="8050200862063548309">"已將 <xliff:g id="TILE_NAME">%1$s</xliff:g> 新增到位置 <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"已移除 <xliff:g id="TILE_NAME">%1$s</xliff:g>"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"已將 <xliff:g id="TILE_NAME">%1$s</xliff:g> 移到位置 <xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"快速設定編輯器。"</string>
+    <string name="accessibility_desc_notification_icon" msgid="8352414185263916335">"<xliff:g id="ID_1">%1$s</xliff:g> 通知：<xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="dock_forced_resizable" msgid="5914261505436217520">"應用程式可能無法在分割畫面中運作。"</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"這個應用程式不支援分割畫面。"</string>
+    <string name="accessibility_quick_settings_settings" msgid="6132460890024942157">"開啟設定。"</string>
+    <string name="accessibility_quick_settings_expand" msgid="2375165227880477530">"開啟快速設定。"</string>
+    <string name="accessibility_quick_settings_collapse" msgid="1792625797142648105">"關閉快速設定。"</string>
+    <string name="accessibility_quick_settings_alarm_set" msgid="1863000242431528676">"已設定鬧鐘。"</string>
+    <string name="accessibility_quick_settings_user" msgid="1567445362870421770">"以「<xliff:g id="ID_1">%s</xliff:g>」的身分登入"</string>
+    <string name="accessibility_quick_settings_no_internet" msgid="31890692343084075">"沒有網際網路連線。"</string>
+    <string name="accessibility_quick_settings_open_details" msgid="4230931801728005194">"開啟詳細資料。"</string>
+    <string name="accessibility_quick_settings_open_settings" msgid="7806613775728380737">"開啟「<xliff:g id="ID_1">%s</xliff:g>」設定。"</string>
+    <string name="accessibility_quick_settings_edit" msgid="7839992848995240393">"編輯設定順序。"</string>
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"第 <xliff:g id="ID_1">%1$d</xliff:g> 頁，共 <xliff:g id="ID_2">%2$d</xliff:g> 頁"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-zh-rTW/strings_tv.xml b/packages/SystemUI/res/values-zh-rTW/strings_tv.xml
index 4420d87..583a6ed 100644
--- a/packages/SystemUI/res/values-zh-rTW/strings_tv.xml
+++ b/packages/SystemUI/res/values-zh-rTW/strings_tv.xml
@@ -24,7 +24,8 @@
     <string name="pip_play" msgid="674145557658227044">"播放"</string>
     <string name="pip_pause" msgid="8412075640017218862">"暫停"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"按住「主畫面」"<b></b>"按鈕即可控制子母畫面"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"按住「主畫面」按鈕即可控制子母畫面"</string>
+    <string name="pip_onboarding_title" msgid="7850436557670253991">"子母畫面"</string>
+    <string name="pip_onboarding_description" msgid="4028124563309465267">"您的影片會一直顯示在畫面中，直到您播放其他影片為止。按住 [HOME] (主畫面) 按鈕即可控制子母畫面。"<b></b></string>
     <string name="pip_onboarding_button" msgid="3957426748484904611">"我知道了"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"關閉"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-zu/strings.xml b/packages/SystemUI/res/values-zu/strings.xml
index 4d63511..24677e4 100644
--- a/packages/SystemUI/res/values-zu/strings.xml
+++ b/packages/SystemUI/res/values-zu/strings.xml
@@ -118,6 +118,8 @@
     <string name="accessibility_data_signal_full" msgid="2708384608124519369">"Igcwele i-signal yedatha"</string>
     <string name="accessibility_wifi_name" msgid="7202151365171148501">"Xhuma ku-<xliff:g id="WIFI">%s</xliff:g>."</string>
     <string name="accessibility_bluetooth_name" msgid="8441517146585531676">"Xhuma ku-<xliff:g id="BLUETOOTH">%s</xliff:g>."</string>
+    <!-- no translation found for accessibility_cast_name (4026393061247081201) -->
+    <skip />
     <string name="accessibility_no_wimax" msgid="4329180129727630368">"Ayikho i-WiMAX."</string>
     <string name="accessibility_wimax_one_bar" msgid="4170994299011863648">"Ibha eyodwa ye-WiMAX."</string>
     <string name="accessibility_wimax_two_bars" msgid="9176236858336502288">"Amabha amabili we-WiMAX."</string>
@@ -148,12 +150,19 @@
     <string name="accessibility_data_connection_edge" msgid="4477457051631979278">"Ekucupheleni"</string>
     <string name="accessibility_data_connection_wifi" msgid="2324496756590645221">"I-Wi-Fi"</string>
     <string name="accessibility_no_sim" msgid="8274017118472455155">"Ayikho i-SIM"</string>
+    <!-- no translation found for accessibility_cell_data (7080312242791850520) -->
+    <skip />
+    <!-- no translation found for accessibility_cell_data_on (4310018593519761767) -->
+    <skip />
     <string name="accessibility_cell_data_off" msgid="8000803571751407635">"Idatha yeselula ivaliwe"</string>
     <string name="accessibility_bluetooth_tether" msgid="4102784498140271969">"Imodemu nge-Bluetooth."</string>
     <string name="accessibility_airplane_mode" msgid="834748999790763092">"Imodi yendiza."</string>
     <string name="accessibility_no_sims" msgid="3957997018324995781">"Alikho ikhadi le-SIM."</string>
     <string name="accessibility_carrier_network_change_mode" msgid="4017301580441304305">"Iguqula inethiwekhi yenkampani yenethiwekhi."</string>
+    <!-- no translation found for accessibility_battery_details (7645516654955025422) -->
+    <skip />
     <string name="accessibility_battery_level" msgid="7451474187113371965">"Iphesenti <xliff:g id="NUMBER">%d</xliff:g> lebhetri"</string>
+    <string name="accessibility_battery_level_charging" msgid="1147587904439319646">"Ibhethri liyashaja, <xliff:g id="BATTERY_PERCENTAGE">%d</xliff:g> iphesenti."</string>
     <string name="accessibility_settings_button" msgid="799583911231893380">"Izilungiselelo zesistimu"</string>
     <string name="accessibility_notifications_button" msgid="4498000369779421892">"Izaziso"</string>
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"Sula isaziso"</string>
@@ -191,9 +200,13 @@
     <string name="accessibility_quick_settings_dnd_priority_on" msgid="1448402297221249355">"Ukungaphazamisi kuvuliwe, okubalulekile kuphela."</string>
     <string name="accessibility_quick_settings_dnd_none_on" msgid="6882582132662613537">"Ungaphazamisi, ukuthula okuphelele."</string>
     <string name="accessibility_quick_settings_dnd_alarms_on" msgid="9152834845587554157">"Ukungaphazamisi kuvuliwe, ama-alamu kuphela."</string>
+    <!-- no translation found for accessibility_quick_settings_dnd (6607873236717185815) -->
+    <skip />
     <string name="accessibility_quick_settings_dnd_off" msgid="2371832603753738581">"Ukungaphazamisi kuvaliwe."</string>
     <string name="accessibility_quick_settings_dnd_changed_off" msgid="898107593453022935">"Ukungaphazamisi kuvaliwe."</string>
     <string name="accessibility_quick_settings_dnd_changed_on" msgid="4483780856613561039">"Ukungaphazamisi kuvuliwe."</string>
+    <!-- no translation found for accessibility_quick_settings_bluetooth (6341675755803320038) -->
+    <skip />
     <string name="accessibility_quick_settings_bluetooth_off" msgid="2133631372372064339">"I-Bluetooth ivaliwe."</string>
     <string name="accessibility_quick_settings_bluetooth_on" msgid="7681999166216621838">"I-Bluetooth ivuliwe."</string>
     <string name="accessibility_quick_settings_bluetooth_connecting" msgid="6953242966685343855">"I-Bluetooth iyaxhuma."</string>
@@ -247,7 +260,7 @@
     <string name="accessibility_rotation_lock_on_landscape_changed" msgid="3135965553707519743">"Isikrini okwamanje sivaliwe ekujikelezeni okumile."</string>
     <string name="accessibility_rotation_lock_on_portrait_changed" msgid="8922481981834012126">"Isikrini manje sikhiyelwe kumumo wokuma ngobude."</string>
     <string name="dessert_case" msgid="1295161776223959221">"Isikhwama soswidi"</string>
-    <string name="start_dreams" msgid="7219575858348719790">"Ukuphupha emini"</string>
+    <string name="start_dreams" msgid="5640361424498338327">"Isigcini sihenqo"</string>
     <string name="ethernet_label" msgid="7967563676324087464">"I-Ethernet"</string>
     <string name="quick_settings_dnd_label" msgid="8735855737575028208">"Ungaphazamisi"</string>
     <string name="quick_settings_dnd_priority_label" msgid="483232950670692036">"Okubalulekile kuphela"</string>
@@ -259,6 +272,10 @@
     <string name="quick_settings_bluetooth_detail_empty_text" msgid="4910015762433302860">"Awekho amadivayisi abhanqiwe atholakalayo"</string>
     <string name="quick_settings_brightness_label" msgid="6968372297018755815">"Ukugqama"</string>
     <string name="quick_settings_rotation_unlocked_label" msgid="7305323031808150099">"Ukuphenduka okuzenzakalelayo"</string>
+    <!-- no translation found for accessibility_quick_settings_rotation (4231661040698488779) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_rotation_value (1428962304214992318) -->
+    <skip />
     <string name="quick_settings_rotation_locked_label" msgid="6359205706154282377">"Ukuphenduka kukhiyiwe"</string>
     <string name="quick_settings_rotation_locked_portrait_label" msgid="5102691921442135053">"Ukuma ngobude"</string>
     <string name="quick_settings_rotation_locked_landscape_label" msgid="8553157770061178719">"Ndlaleka okubanzi"</string>
@@ -277,6 +294,8 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Akuxhunyiwe"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Ayikho inethiwekhi"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"I-Wi-Fi icimile"</string>
+    <!-- no translation found for quick_settings_wifi_on_label (7607810331387031235) -->
+    <skip />
     <string name="quick_settings_wifi_detail_empty_text" msgid="269990350383909226">"Awekho amanethiwekhi we-Wi-Fi atholakalayo"</string>
     <string name="quick_settings_cast_title" msgid="7709016546426454729">"Abalingisi"</string>
     <string name="quick_settings_casting" msgid="6601710681033353316">"Ukusakaza"</string>
@@ -311,8 +330,8 @@
     <string name="recents_launch_error_message" msgid="2969287838120550506">"Ayikwazanga ukuqala i-<xliff:g id="APP">%s</xliff:g>."</string>
     <string name="recents_launch_disabled_message" msgid="1624523193008871793">"I-<xliff:g id="APP">%s</xliff:g> ikhutshaziwe kumodi yokuphepha."</string>
     <string name="recents_stack_action_button_label" msgid="6593727103310426253">"Sula konke"</string>
-    <string name="recents_drag_non_dockable_task_message" msgid="2935843902795166158">"Lolu hlelo lokusebenza alusekeli amawindi amaningi"</string>
-    <string name="recents_launch_non_dockable_task_label" msgid="7862379814938391888">"Uhlelo lokusebenza alusekeli amawindi amaningi"</string>
+    <string name="recents_incompatible_app_message" msgid="5075812958564082451">"Uhlelo lokusebenza alisekeli ukwehlukanisa kwezikrini"</string>
+    <string name="recents_drag_hint_message" msgid="2649739267073203985">"Hudulela lapha ukuze usebenzise ukuhlukanisa kwesikrini"</string>
     <string name="recents_multistack_add_stack_dialog_split_horizontal" msgid="8848514474543427332">"Hlukanisa okuvundlile"</string>
     <string name="recents_multistack_add_stack_dialog_split_vertical" msgid="9075292233696180813">"Hlukanisa okumile"</string>
     <string name="recents_multistack_add_stack_dialog_split_custom" msgid="4177837597513701943">"Hlukanisa kwezifiso"</string>
@@ -420,11 +439,12 @@
     <string name="volumeui_notification_title" msgid="4906770126345910955">"I-<xliff:g id="APP_NAME">%1$s</xliff:g> yingxoxo yevolumu"</string>
     <string name="volumeui_notification_text" msgid="1826889705095768656">"Thinta ukuze ubuyisele kokwangempela."</string>
     <string name="managed_profile_foreground_toast" msgid="5421487114739245972">"Usebenzisa iphrofayela yakho yomsebenzi"</string>
-    <!-- no translation found for volume_stream_content_description_unmute (4436631538779230857) -->
+    <string name="volume_stream_content_description_unmute" msgid="4436631538779230857">"%1$s. Thepha ukuze ususe ukuthula."</string>
+    <string name="volume_stream_content_description_vibrate" msgid="1187944970457807498">"%1$s. Thepha ukuze usethe ukudlidliza. Amasevisi okufinyelela angathuliswa."</string>
+    <string name="volume_stream_content_description_mute" msgid="3625049841390467354">"%1$s. Thepha ukuze uthulise. Amasevisi okufinyelela angathuliswa."</string>
+    <!-- no translation found for volume_dialog_accessibility_shown_message (1834631467074259998) -->
     <skip />
-    <!-- no translation found for volume_stream_content_description_vibrate (1187944970457807498) -->
-    <skip />
-    <!-- no translation found for volume_stream_content_description_mute (3625049841390467354) -->
+    <!-- no translation found for volume_dialog_accessibility_dismissed_message (51543526013711399) -->
     <skip />
     <string name="system_ui_tuner" msgid="708224127392452018">"Isishuni se-UI yesistimu"</string>
     <string name="show_battery_percentage" msgid="5444136600512968798">"Bonisa amaphesenti ebhethri elinamathiselwe"</string>
@@ -470,19 +490,24 @@
     <string name="block" msgid="2734508760962682611">"Vimbela zonke izaziso"</string>
     <string name="do_not_silence" msgid="6878060322594892441">"Ungathulisi"</string>
     <string name="do_not_silence_block" msgid="4070647971382232311">"Ungathulisi noma uvimbele"</string>
-    <string name="tuner_full_importance_settings" msgid="8103289238676424226">"Bonisa izilungiselelo ezibalulekile ezigcwele"</string>
-    <string name="blocked_importance" msgid="5198578988978234161">"Kuvinjelwe"</string>
-    <string name="min_importance" msgid="1901894910809414782">"Okubaluleke kancane"</string>
-    <string name="low_importance" msgid="4109929986107147930">"Ukubaluleka okuphansi"</string>
-    <string name="default_importance" msgid="8192107689995742653">"Ukubaluleka okujwayelekile"</string>
-    <string name="high_importance" msgid="1527066195614050263">"Ukubaluleka okuphezulu"</string>
-    <string name="max_importance" msgid="5089005872719563894">"Ukubaluleka okusheshayo"</string>
-    <string name="notification_importance_blocked" msgid="2397192642657872872">"Ungalokothi ubonise lezi zaziso"</string>
-    <string name="notification_importance_min" msgid="1938190340516905748">"Bonisa ngokuthulile ngaphansi kohlu lwesaziso"</string>
-    <string name="notification_importance_low" msgid="3657252049508213048">"Bonisa ngokuthulile lezi zaziso"</string>
-    <string name="notification_importance_default" msgid="4466466472622442175">"Vumela lezi zaziso ukwenza umsindo"</string>
-    <string name="notification_importance_high" msgid="2135428926525093825">"Beka kusikrini futhi uvumele umsindo"</string>
-    <string name="notification_importance_max" msgid="5806278962376556491">"Bonisa phezulu kohlu lwezaziso, beka phezu kwesikrini futhi uvumele umsindo"</string>
+    <string name="tuner_full_importance_settings" msgid="3207312268609236827">"Izilawuli zesaziso zamandla"</string>
+    <string name="tuner_full_importance_settings_on" msgid="7545060756610299966">"Vuliwe"</string>
+    <string name="tuner_full_importance_settings_off" msgid="8208165412614935229">"Valiwe"</string>
+    <string name="power_notification_controls_description" msgid="4372459941671353358">"Ngezilawuli zesaziso zamandla, ungasetha ileveli ebalulekile kusuka ku-0 kuya ku-5 kusuka kuzaziso zohlelo lokusebenza. \n\n"<b>"Ileveli 5"</b>" \n- Ibonisa phezulu kuhlu lwesaziso \n- Vumela ukuphazamiseka kwesikrini esigcwele \n- Ukuhlola njalo \n\n"<b>"Ileveli 4"</b>" \n- Gwema ukuphazamiseka kwesikrini esigcwele \n- Ukuhlola njalo \n\n"<b>"Ileveli 3"</b>" \n- Gwema ukuphazamiseka kwesikrini esigcwele \n- Ukungahloli \n\n"<b>"Ileveli 2"</b>" \n- Gwema ukuphazamiseka kwesikrini esigcwele \n- Ukungahloli \n- Ungenzi umsindo nokudlidliza \n\n"<b>"Ileveli 1"</b>" \n- Gwema ukuphazamiseka kwesikrini esigcwele \n- Ukungahloli \n- Ungenzi umsindo noma ukudlidliza \n- Fihla kusuka kusikrini sokukhiya nebha yesimo \n- Bonisa phansi kohlu lwesaziso \n\n"<b>"Ileveli 0"</b>" \n- Vimbela zonke izaziso kusuka kuhlelo lokusebenza"</string>
+    <string name="user_unspecified_importance" msgid="361613856933432117">"Okubalulekile: Ukuzenzakalela"</string>
+    <string name="blocked_importance" msgid="5035073235408414397">"Okubalulekile: Ileveli 0"</string>
+    <string name="min_importance" msgid="560779348928574878">"Okubalulekile: Ileveli 1"</string>
+    <string name="low_importance" msgid="7571498511534140">"Okubalulekile: Ileveli 2"</string>
+    <string name="default_importance" msgid="7609889614553354702">"Okubalulekile: Ileveli 3"</string>
+    <string name="high_importance" msgid="3441537905162782568">"Okubalulekile: Ileveli 4"</string>
+    <string name="max_importance" msgid="4880179829869865275">"Okubalulekile: Ileveli 5"</string>
+    <string name="notification_importance_user_unspecified" msgid="2868359605125272874">"Uhlelo lokusebenza linquma ukubaluleka kwesaziso ngasinye."</string>
+    <string name="notification_importance_blocked" msgid="4237497046867398057">"Ungalokothi ubonise izaziso kusuka kulolu hlelo lokusebenza."</string>
+    <string name="notification_importance_min" msgid="7844224511187027155">"Akukho ukuphazamisa kwesikrini esigcwele, ukuhlola, umsindo, noma ukudlidliza. Fihla kusuka esikrinini sokukhiya nebha yesimo."</string>
+    <string name="notification_importance_low" msgid="7950291702044409847">"Akukho ukuphazamiseka kwesikrini esigcwele, ukuhlola umsindo, noma ukudlidliza."</string>
+    <string name="notification_importance_default" msgid="5924405820269074915">"Akukho ukuphazamiseka kwesikrini esigcwele noma ukuvimbela."</string>
+    <string name="notification_importance_high" msgid="1729480727023990427">"Njalo hlola. Akukho ukuphazamisa kwesikrini esigcwele."</string>
+    <string name="notification_importance_max" msgid="2508384624461849111">"Njalo hlola, futhi vumela ukuphazamisa kwesikrini esigcwele."</string>
     <string name="notification_more_settings" msgid="816306283396553571">"Izilungiselelo eziningi"</string>
     <string name="notification_done" msgid="5279426047273930175">"Kwenziwe"</string>
     <string name="notification_gear_accessibility" msgid="94429150213089611">"<xliff:g id="APP_NAME">%1$s</xliff:g> izilawuli zasaziso"</string>
@@ -597,10 +622,16 @@
   </string-array>
     <string name="other" msgid="4060683095962566764">"Okunye"</string>
     <string name="accessibility_divider" msgid="5903423481953635044">"Isihlukanisi sokuhlukanisa isikrini"</string>
-    <string name="accessibility_action_divider_move_down" msgid="704893304141890042">"Iya phansi"</string>
-    <string name="accessibility_action_divider_move_up" msgid="4580103171609248006">"Iya phezulu"</string>
-    <string name="accessibility_action_divider_move_left" msgid="9218189832115847253">"Iya kwesokunxele"</string>
-    <string name="accessibility_action_divider_move_right" msgid="4671522715182567972">"Iya kwesokudla"</string>
+    <string name="accessibility_action_divider_left_full" msgid="2801570521881574972">"Isikrini esigcwele esingakwesokunxele"</string>
+    <string name="accessibility_action_divider_left_70" msgid="3612060638991687254">"Kwesokunxele ngo-70%"</string>
+    <string name="accessibility_action_divider_left_50" msgid="1248083470322193075">"Kwesokunxele ngo-50%"</string>
+    <string name="accessibility_action_divider_left_30" msgid="543324403127069386">"Kwesokunxele ngo-30%"</string>
+    <string name="accessibility_action_divider_right_full" msgid="4639381073802030463">"Isikrini esigcwele esingakwesokudla"</string>
+    <string name="accessibility_action_divider_top_full" msgid="5357010904067731654">"Isikrini esigcwele esiphezulu"</string>
+    <string name="accessibility_action_divider_top_70" msgid="5090779195650364522">"Okuphezulu okungu-70%"</string>
+    <string name="accessibility_action_divider_top_50" msgid="6385859741925078668">"Okuphezulu okungu-50%"</string>
+    <string name="accessibility_action_divider_top_30" msgid="6201455163864841205">"Okuphezulu okungu-30%"</string>
+    <string name="accessibility_action_divider_bottom_full" msgid="301433196679548001">"Ngaphansi kwesikrini esigcwele"</string>
     <string name="accessibility_qs_edit_tile_label" msgid="8374924053307764245">"Isimo esingu-<xliff:g id="POSITION">%1$d</xliff:g>, <xliff:g id="TILE_NAME">%2$s</xliff:g>. Thepha kabili ukuze uhlele."</string>
     <string name="accessibility_qs_edit_add_tile_label" msgid="8133209638023882667">"<xliff:g id="TILE_NAME">%1$s</xliff:g>. Thepha kabili ukuze ungeze."</string>
     <string name="accessibility_qs_edit_position_label" msgid="5055306305919289819">"Isimo esingu-<xliff:g id="POSITION">%1$d</xliff:g>. Thepha kabili ukuze ukhethe."</string>
@@ -610,6 +641,27 @@
     <string name="accessibility_qs_edit_tile_removed" msgid="8584304916627913440">"I-<xliff:g id="TILE_NAME">%1$s</xliff:g> isusiwe"</string>
     <string name="accessibility_qs_edit_tile_moved" msgid="4343693412689365038">"I-<xliff:g id="TILE_NAME">%1$s</xliff:g> ihanjiswe kusimo esingu-<xliff:g id="POSITION">%2$d</xliff:g>"</string>
     <string name="accessibility_desc_quick_settings_edit" msgid="8073587401747016103">"Isihleli sezilungiselelo ezisheshayo."</string>
+    <!-- no translation found for accessibility_desc_notification_icon (8352414185263916335) -->
+    <skip />
     <string name="dock_forced_resizable" msgid="5914261505436217520">"Izinhlelo zokusebenza kungenzeka zingasebenzi ngesikrini esihlukanisiwe."</string>
     <string name="dock_non_resizeble_failed_to_dock_text" msgid="3871617304250207291">"Uhlelo lokusebenza alusekeli isikrini esihlukanisiwe."</string>
+    <!-- no translation found for accessibility_quick_settings_settings (6132460890024942157) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_expand (2375165227880477530) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_collapse (1792625797142648105) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_alarm_set (1863000242431528676) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_user (1567445362870421770) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_no_internet (31890692343084075) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_details (4230931801728005194) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_open_settings (7806613775728380737) -->
+    <skip />
+    <!-- no translation found for accessibility_quick_settings_edit (7839992848995240393) -->
+    <skip />
+    <string name="accessibility_quick_settings_page" msgid="5032979051755200721">"Ikhasi <xliff:g id="ID_1">%1$d</xliff:g> kwangu-<xliff:g id="ID_2">%2$d</xliff:g>"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-zu/strings_tv.xml b/packages/SystemUI/res/values-zu/strings_tv.xml
index 1904237..4fe3f1c 100644
--- a/packages/SystemUI/res/values-zu/strings_tv.xml
+++ b/packages/SystemUI/res/values-zu/strings_tv.xml
@@ -24,7 +24,10 @@
     <string name="pip_play" msgid="674145557658227044">"Dlala"</string>
     <string name="pip_pause" msgid="8412075640017218862">"Misa isikhashana"</string>
     <string name="pip_hold_home" msgid="340086535668778109">"Bamba "<b>"IKHAYA"</b>" ukuze ulawule i-PIP"</string>
-    <string name="pip_onboarding_description" msgid="2882896641362814195">"Cindezela futhi ubambe inkinobho EKHAYA ukuze ulawule i-PIP"</string>
+    <!-- no translation found for pip_onboarding_title (7850436557670253991) -->
+    <skip />
+    <!-- no translation found for pip_onboarding_description (4028124563309465267) -->
+    <skip />
     <string name="pip_onboarding_button" msgid="3957426748484904611">"Ngiyezwa"</string>
     <string name="recents_tv_dismiss" msgid="3555093879593377731">"Cashisa"</string>
 </resources>
diff --git a/packages/SystemUI/res/values/attrs.xml b/packages/SystemUI/res/values/attrs.xml
index 1543360..4306fcc 100644
--- a/packages/SystemUI/res/values/attrs.xml
+++ b/packages/SystemUI/res/values/attrs.xml
@@ -98,7 +98,7 @@
         <attr name="metricsAction" format="integer" />
     </declare-styleable>
 
-    <declare-styleable name="DensityContainer">
+    <declare-styleable name="AutoReinflateContainer">
         <attr name="android:layout" />
     </declare-styleable>
 
diff --git a/packages/SystemUI/res/values/colors.xml b/packages/SystemUI/res/values/colors.xml
index d26fb06..c75741c 100644
--- a/packages/SystemUI/res/values/colors.xml
+++ b/packages/SystemUI/res/values/colors.xml
@@ -108,6 +108,7 @@
     <!-- The "inside" of a notification, reached via longpress -->
     <color name="notification_guts_bg_color">#eeeeee</color>
     <color name="notification_guts_slider_color">@*android:color/material_deep_teal_500</color>
+    <color name="notification_guts_disabled_slider_color">@*android:color/material_grey_300</color>
     <color name="notification_guts_secondary_slider_color">#858383</color>
     <color name="notification_guts_icon_tint">#8a000000</color>
     <color name="notification_guts_disabled_icon_tint">#4d000000</color>
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
index 42798a4..e98309e 100644
--- a/packages/SystemUI/res/values/config.xml
+++ b/packages/SystemUI/res/values/config.xml
@@ -144,12 +144,6 @@
     <!-- The min animation duration for animating the nav bar scrim in. -->
     <integer name="recents_nav_bar_scrim_enter_duration">400</integer>
 
-    <!-- The animation duration for animating the removal of a task view. -->
-    <integer name="recents_animate_task_view_remove_duration">175</integer>
-
-    <!-- The base animation duration for animating the removal of all task views. -->
-    <integer name="recents_animate_task_views_remove_all_duration">300</integer>
-
     <!-- The animation duration for scrolling the stack to a particular item. -->
     <integer name="recents_animate_task_stack_scroll_duration">200</integer>
 
@@ -169,6 +163,9 @@
          the smallest position when being launched. -->
     <bool name="recents_grow_in_multiwindow">true</bool>
 
+    <!-- Animation duration when using long press on recents to dock -->
+    <integer name="long_press_dock_anim_duration">250</integer>
+
     <!-- Recents: The relative range of visible tasks from the current scroll position
          while the stack is focused. -->
     <item name="recents_layout_focused_range_min" format="float" type="integer">-3</item>
@@ -265,5 +262,7 @@
     <!-- Nav bar button default ordering/layout -->
     <string name="config_navBarLayout" translatable="false">space,back;home;recent,menu_ime</string>
 
+    <bool name="quick_settings_show_date">false</bool>
+
 </resources>
 
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
index 03b9837..b8f576b 100644
--- a/packages/SystemUI/res/values/dimens.xml
+++ b/packages/SystemUI/res/values/dimens.xml
@@ -81,13 +81,7 @@
     <!-- Width of the space containing the gear icon behind a notification -->
     <dimen name="notification_gear_width">64dp</dimen>
 
-    <!-- Height of the space containing the gear icon behind a notification -->
-    <dimen name="notification_gear_height">74dp</dimen>
-
-    <!-- The space above the gear icon displayed behind a notification -->
-    <dimen name="notification_gear_top_padding">30dp</dimen>
-
-    <!-- The space on either side and below the gear icon displayed behind a notification  -->
+    <!-- The space around the gear icon displayed behind a notification  -->
     <dimen name="notification_gear_padding">20dp</dimen>
 
     <!-- size at which Notification icons will be drawn in the status bar -->
@@ -640,6 +634,9 @@
     <!-- The amount of overscroll allowed when flinging to the end of the stack. -->
     <dimen name="recents_fling_overscroll_distance">24dp</dimen>
 
+    <!-- The size of the drag hint text. -->
+    <dimen name="recents_drag_hint_text_size">14sp</dimen>
+
     <!-- The min alpha to apply to a task affiliation group color. -->
     <item name="recents_task_affiliation_color_min_alpha_percentage" format="float" type="dimen">0.6</item>
 
diff --git a/packages/SystemUI/res/values/dimens_tv.xml b/packages/SystemUI/res/values/dimens_tv.xml
index 367dd1d..5fa802b 100644
--- a/packages/SystemUI/res/values/dimens_tv.xml
+++ b/packages/SystemUI/res/values/dimens_tv.xml
@@ -29,6 +29,7 @@
     <dimen name="recents_tv_icon_padding_bottom">8dip</dimen>
     <dimen name="recents_tv_text_padding_start">12dip</dimen>
     <dimen name="recents_tv_text_padding_bottom">12dip</dimen>
+    <dimen name="recents_tv_card_corner_radius">2dip</dimen>
 
     <!-- Padding for grid view in recents view on tv -->
     <dimen name="recents_tv_gird_row_top_margin">215dip</dimen>
@@ -46,7 +47,7 @@
     <!-- Values for card dismiss state -->
     <dimen name="recents_tv_dismiss_shift_down">48dip</dimen>
     <dimen name="recents_tv_dismiss_top_margin">356dip</dimen>
-    <dimen name="recents_tv_dismiss_icon_size">24dip</dimen>
+    <dimen name="recents_tv_dismiss_icon_size">19dip</dimen>
     <dimen name="recents_tv_dismiss_icon_top_margin">38dip</dimen>
     <dimen name="recents_tv_dismiss_icon_bottom_margin">1dip</dimen>
     <dimen name="recents_tv_dismiss_text_size">12sp</dimen>
diff --git a/packages/SystemUI/res/values/ids.xml b/packages/SystemUI/res/values/ids.xml
index 9697ea6..94d79f2 100644
--- a/packages/SystemUI/res/values/ids.xml
+++ b/packages/SystemUI/res/values/ids.xml
@@ -63,9 +63,10 @@
     <item type="id" name="is_clicked_heads_up_tag" />
 
     <!-- Accessibility actions for the docked stack divider -->
-    <item type="id" name="action_move_left" />
-    <item type="id" name="action_move_right" />
-    <item type="id" name="action_move_up" />
-    <item type="id" name="action_move_down" />
+    <item type="id" name="action_move_tl_full" />
+    <item type="id" name="action_move_tl_70" />
+    <item type="id" name="action_move_tl_50" />
+    <item type="id" name="action_move_tl_30" />
+    <item type="id" name="action_move_rb_full" />
 </resources>
 
diff --git a/packages/SystemUI/res/values/integers_tv.xml b/packages/SystemUI/res/values/integers_tv.xml
index ebfd8ab..3b62938 100644
--- a/packages/SystemUI/res/values/integers_tv.xml
+++ b/packages/SystemUI/res/values/integers_tv.xml
@@ -25,6 +25,8 @@
     <!-- Delay between the start of slide in animation for each card. -->
     <integer name="recents_home_delay">40</integer>
 
+    <!-- Delay of the onboarding animation start after it launches -->
+    <integer name="tv_pip_onboarding_anim_start_delay">1000</integer>
     <!-- Duration of the onboarding animation duration -->
     <integer name="tv_pip_onboarding_anim_duration">1000</integer>
 </resources>
diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml
index a4d7a18..2758551 100644
--- a/packages/SystemUI/res/values/strings.xml
+++ b/packages/SystemUI/res/values/strings.xml
@@ -182,7 +182,7 @@
     <!-- Notification title displayed when a screenshot is saved to the Gallery. [CHAR LIMIT=50] -->
     <string name="screenshot_saved_title">Screenshot captured.</string>
     <!-- Notification text displayed when a screenshot is saved to the Gallery. [CHAR LIMIT=100] -->
-    <string name="screenshot_saved_text">Touch to view your screenshot.</string>
+    <string name="screenshot_saved_text">Tap to view your screenshot.</string>
     <!-- Notification title displayed when we fail to take a screenshot. [CHAR LIMIT=50] -->
     <string name="screenshot_failed_title">Couldn\'t capture screenshot.</string>
     <!-- Notification text displayed when we fail to save a screenshot for unknown reasons. [CHAR LIMIT=100] -->
@@ -286,6 +286,9 @@
     <!-- Content description of the bluetooth label showing what we are connected to. [CHAR LIMIT=NONE] -->
     <string name="accessibility_bluetooth_name">Connected to <xliff:g id="bluetooth" example="Car Audio">%s</xliff:g>.</string>
 
+    <!-- Content description of the cast label showing what we are connected to. [CHAR LIMIT=NONE] -->
+    <string name="accessibility_cast_name">Connected to <xliff:g id="cast" example="TV">%s</xliff:g>.</string>
+
 
     <!-- Content description of the WiMAX signal when no signal for accessibility (not shown on the screen). [CHAR LIMIT=NONE] -->
     <string name="accessibility_no_wimax">No WiMAX.</string>
@@ -363,6 +366,12 @@
     <!-- Content description of the data connection with no SIM for accessibility (not shown on the screen). [CHAR LIMIT=NONE] -->
     <string name="accessibility_no_sim">No SIM.</string>
 
+    <!-- Content description of the cell data. [CHAR LIMIT=NONE] -->
+    <string name="accessibility_cell_data">Cellular Data</string>
+
+    <!-- Content description of the cell data being enabled. [CHAR LIMIT=NONE] -->
+    <string name="accessibility_cell_data_on">Cellular Data On</string>
+
     <!-- Content description of the cell data being disabled. [CHAR LIMIT=NONE] -->
     <string name="accessibility_cell_data_off">Cellular Data Off</string>
 
@@ -378,9 +387,15 @@
     <!-- Content description of the carrier network changing icon for accessibility (not shown on the screen). [CHAR LIMIT=NONE] -->
     <string name="accessibility_carrier_network_change_mode">Carrier network changing.</string>
 
+    <!-- Content description of button to open battery details icon for accessibility (not shown on the screen). [CHAR LIMIT=NONE] -->
+    <string name="accessibility_battery_details">Open battery details</string>
+
     <!-- Content description of the battery level icon for accessibility (not shown on the screen). [CHAR LIMIT=NONE] -->
     <string name="accessibility_battery_level">Battery <xliff:g id="number">%d</xliff:g> percent.</string>
 
+    <!-- Content description of the battery level icon for accessibility while the device is charging (not shown on the screen). [CHAR LIMIT=NONE] -->
+    <string name="accessibility_battery_level_charging">Battery charging, <xliff:g id="battery_percentage">%d</xliff:g> percent.</string>
+
     <!-- Content description of the button for showing a settings panel in the notification panel for accessibility (not shown on the screen). [CHAR LIMIT=NONE] -->
     <string name="accessibility_settings_button">System settings.</string>
 
@@ -465,12 +480,16 @@
     <string name="accessibility_quick_settings_dnd_none_on">Do not disturb on, total silence.</string>
     <!-- Content description of the do not disturb tile in quick settings when on in alarms only (not shown on the screen). [CHAR LIMIT=NONE] -->
     <string name="accessibility_quick_settings_dnd_alarms_on">Do not disturb on, alarms only.</string>
+     <!-- Content description of the do not disturb tile in quick settings (not shown on the screen). [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_dnd">Do not disturb.</string>
      <!-- Content description of the do not disturb tile in quick settings when off (not shown on the screen). [CHAR LIMIT=NONE] -->
     <string name="accessibility_quick_settings_dnd_off">Do not disturb off.</string>
     <!-- Announcement made when do not disturb changes to off (not shown on the screen). [CHAR LIMIT=NONE] -->
     <string name="accessibility_quick_settings_dnd_changed_off">Do not disturb turned off.</string>
     <!-- Announcement made when do not disturb changes to on (not shown on the screen). [CHAR LIMIT=NONE] -->
     <string name="accessibility_quick_settings_dnd_changed_on">Do not disturb turned on.</string>
+    <!-- Content description of the bluetooth tile in quick settings (not shown on the screen). [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_bluetooth">Bluetooth.</string>
     <!-- Content description of the bluetooth tile in quick settings when off (not shown on the screen). [CHAR LIMIT=NONE] -->
     <string name="accessibility_quick_settings_bluetooth_off">Bluetooth off.</string>
     <!-- Content description of the bluetooth tile in quick settings when on (not shown on the screen). [CHAR LIMIT=NONE] -->
@@ -605,7 +624,7 @@
     <string name="dessert_case">Dessert Case</string>
 
     <!-- Name of the launcher shortcut icon that allows dreams to be started immediately [CHAR LIMIT=20] -->
-    <string name="start_dreams">Daydream</string>
+    <string name="start_dreams">Screen saver</string>
 
     <!-- Textual description of Ethernet connections -->
     <string name="ethernet_label">Ethernet</string>
@@ -630,6 +649,10 @@
     <string name="quick_settings_brightness_label">Brightness</string>
     <!-- QuickSettings: Rotation Unlocked [CHAR LIMIT=NONE] -->
     <string name="quick_settings_rotation_unlocked_label">Auto-rotate</string>
+    <!-- Accessibility label for Auto-ratate QuickSettings tile [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_rotation">Auto-rotate screen</string>
+    <!-- Accessibility label for value of Auto-ratate QuickSettings tile [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_rotation_value">Set to <xliff:g name="rotation" example="Portrait">%s</xliff:g></string>
     <!-- QuickSettings: Rotation Locked [CHAR LIMIT=NONE] -->
     <string name="quick_settings_rotation_locked_label">Rotation locked</string>
     <!-- QuickSettings: Locked to Portrait [CHAR LIMIT=NONE] -->
@@ -666,6 +689,8 @@
     <string name="quick_settings_wifi_no_network">No Network</string>
     <!-- QuickSettings: Wifi (Off) [CHAR LIMIT=NONE] -->
     <string name="quick_settings_wifi_off_label">Wi-Fi Off</string>
+    <!-- QuickSettings: Wifi (On) [CHAR LIMIT=NONE] -->
+    <string name="quick_settings_wifi_on_label">Wi-Fi On</string>
     <!-- QuickSettings: Wifi detail panel, text when there are no items [CHAR LIMIT=NONE] -->
     <string name="quick_settings_wifi_detail_empty_text">No Wi-Fi networks available</string>
     <!-- QuickSettings: Cast title [CHAR LIMIT=NONE] -->
@@ -737,6 +762,8 @@
     <string name="recents_stack_action_button_label">Clear all</string>
     <!-- Recents: Incompatible task message. [CHAR LIMIT=NONE] -->
     <string name="recents_incompatible_app_message">App doesn\'t support split screen</string>
+    <!-- Recents: Hint text that shows on the drop targets to start multiwindow. [CHAR LIMIT=NONE] -->
+    <string name="recents_drag_hint_message">Drag here to use split screen</string>
 
     <!-- Recents: MultiStack add stack split horizontal radio button. [CHAR LIMIT=NONE] -->
     <string name="recents_multistack_add_stack_dialog_split_horizontal">Split Horizontal</string>
@@ -792,7 +819,7 @@
     <string name="speed_bump_explanation">Less urgent notifications below</string>
 
     <!-- Shows to explain the double tap interaction with notifications: After tapping a notification on Keyguard, this will explain users to tap again to launch a notification. [CHAR LIMIT=60] -->
-    <string name="notification_tap_again">Touch again to open</string>
+    <string name="notification_tap_again">Tap again to open</string>
 
     <!-- Shows when people have pressed the unlock icon to explain how to unlock. [CHAR LIMIT=60] -->
     <string name="keyguard_unlock">Swipe up to unlock</string>
@@ -1027,7 +1054,7 @@
     <!-- Screen pinning dialog title. -->
     <string name="screen_pinning_title">Screen is pinned</string>
     <!-- Screen pinning dialog description. -->
-    <string name="screen_pinning_description">This keeps it in view until you unpin. Touch and hold Back to unpin.</string>
+    <string name="screen_pinning_description">This keeps it in view until you unpin. Touch &amp; hold Back to unpin.</string>
     <!-- Screen pinning positive response. -->
     <string name="screen_pinning_positive">Got it</string>
     <!-- Screen pinning negative response. -->
@@ -1055,7 +1082,7 @@
     <string name="volumeui_notification_title"><xliff:g id="app_name" example="Volume Prototype 1">%1$s</xliff:g> is the volume dialog</string>
 
     <!-- VolumeUI restoration notification: text -->
-    <string name="volumeui_notification_text">Touch to restore the original.</string>
+    <string name="volumeui_notification_text">Tap to restore the original.</string>
 
     <!-- Toast shown when user unlocks screen and managed profile activity is in the foreground -->
     <string name="managed_profile_foreground_toast">You\'re using your work profile</string>
@@ -1084,6 +1111,9 @@
     <string name="volume_stream_content_description_vibrate">%1$s. Tap to set to vibrate. Accessibility services may be muted.</string>
     <string name="volume_stream_content_description_mute">%1$s. Tap to mute. Accessibility services may be muted.</string>
 
+    <string name="volume_dialog_accessibility_shown_message">%s volume controls shown. Swipe up to dismiss.</string>
+    <string name="volume_dialog_accessibility_dismissed_message">Volume controls hidden</string>
+
     <!-- Name of special SystemUI debug settings -->
     <string name="system_ui_tuner">System UI Tuner</string>
 
@@ -1225,38 +1255,69 @@
     <string name="do_not_silence_block">Don\'t silence or block</string>
 
     <!-- [CHAR LIMIT=NONE] Importance Tuner setting title -->
-    <string name="tuner_full_importance_settings">Show full importance settings</string>
+    <string name="tuner_full_importance_settings">Power notification controls</string>
+    <string name="tuner_full_importance_settings_on">On</string>
+    <string name="tuner_full_importance_settings_off">Off</string>
+    <string name="power_notification_controls_description">With power notification controls, you can set an importance level from 0 to 5 for an app\'s notifications.
+        \n\n<b>Level 5</b>
+        \n- Show at the top of the notification list
+        \n- Allow full screen interruption
+        \n- Always peek
+        \n\n<b>Level 4</b>
+        \n- Prevent full screen interruption
+        \n- Always peek
+        \n\n<b>Level 3</b>
+        \n- Prevent full screen interruption
+        \n- Never peek
+        \n\n<b>Level 2</b>
+        \n- Prevent full screen interruption
+        \n- Never peek
+        \n- Never make sound and vibration
+        \n\n<b>Level 1</b>
+        \n- Prevent full screen interruption
+        \n- Never peek
+        \n- Never make sound or vibrate
+        \n- Hide from lock screen and status bar
+        \n- Show at the bottom of the notification list
+        \n\n<b>Level 0</b>
+        \n- Block all notifications from the app
+    </string>
 
+    <!-- Notification importance title, user unspecified status-->
+    <string name="user_unspecified_importance">Importance: Automatic</string>
     <!-- Notification importance title, blocked status-->
-    <string name="blocked_importance">Blocked</string>
+    <string name="blocked_importance">Importance: Level 0</string>
     <!-- Notification importance title, min status-->
-    <string name="min_importance">Min importance</string>
+    <string name="min_importance">Importance: Level 1</string>
     <!-- Notification importance title, low status-->
-    <string name="low_importance">Low importance</string>
+    <string name="low_importance">Importance: Level 2</string>
     <!-- Notification importance title, normal status-->
-    <string name="default_importance">Normal importance</string>
+    <string name="default_importance">Importance: Level 3</string>
     <!-- Notification importance title, high status-->
-    <string name="high_importance">High importance</string>
+    <string name="high_importance">Importance: Level 4</string>
     <!-- Notification importance title, max status-->
-    <string name="max_importance">Urgent importance</string>
+    <string name="max_importance">Importance: Level 5</string>
 
     <!-- [CHAR LIMIT=100] Notification Importance slider: blocked importance level description -->
-    <string name="notification_importance_blocked">Never show these notifications</string>
+    <string name="notification_importance_user_unspecified">App determines importance for each notification.</string>
+
+    <!-- [CHAR LIMIT=100] Notification Importance slider: blocked importance level description -->
+    <string name="notification_importance_blocked">Never show notifications from this app.</string>
 
     <!-- [CHAR LIMIT=100] Notification Importance slider: min importance level description -->
-    <string name="notification_importance_min">Silently show at the bottom of the notification list</string>
+    <string name="notification_importance_min">No full screen interruption, peeking, sound, or vibration. Hide from lock screen and status bar.</string>
 
     <!-- [CHAR LIMIT=100] Notification Importance slider: low importance level description -->
-    <string name="notification_importance_low">Silently show these notifications</string>
+    <string name="notification_importance_low">No full screen interruption, peeking, sound, or vibration.</string>
 
     <!-- [CHAR LIMIT=100] Notification Importance slider: normal importance level description -->
-    <string name="notification_importance_default">Allow these notification to make sounds</string>
+    <string name="notification_importance_default">No full screen interruption or peeking.</string>
 
     <!-- [CHAR LIMIT=100] Notification Importance slider: high importance level description -->
-    <string name="notification_importance_high">Peek onto the screen and allow sound and allow sound</string>
+    <string name="notification_importance_high">Always peek. No full screen interruption.</string>
 
     <!-- [CHAR LIMIT=100] Notification Importance slider: max importance level description -->
-    <string name="notification_importance_max">Show at the top of the notifications list, peek onto the screen and allow sound</string>
+    <string name="notification_importance_max">Always peek, and allow full screen interruption.</string>
 
     <!-- Notification: Control panel: Label for button that launches notification settings. [CHAR LIMIT=NONE] -->
     <string name="notification_more_settings">More settings</string>
@@ -1547,17 +1608,27 @@
     <!-- Accessibility label for the divider that separates the windows in split-screen mode [CHAR LIMIT=NONE] -->
     <string name="accessibility_divider">Split-screen divider</string>
 
-    <!-- Accessibility action for moving down the docked stack divider [CHAR LIMIT=NONE] -->
-    <string name="accessibility_action_divider_move_down">Move down</string>
+    <!-- Accessibility action for moving docked stack divider to make the left screen full screen [CHAR LIMIT=NONE] -->
+    <string name="accessibility_action_divider_left_full">Left full screen</string>
+    <!-- Accessibility action for moving docked stack divider to make the left screen 70% [CHAR LIMIT=NONE] -->
+    <string name="accessibility_action_divider_left_70">Left 70%</string>
+    <!-- Accessibility action for moving docked stack divider to make the left screen 50% [CHAR LIMIT=NONE] -->
+    <string name="accessibility_action_divider_left_50">Left 50%</string>
+    <!-- Accessibility action for moving docked stack divider to make the left screen 30% [CHAR LIMIT=NONE] -->
+    <string name="accessibility_action_divider_left_30">Left 30%</string>
+    <!-- Accessibility action for moving docked stack divider to make the right screen full screen [CHAR LIMIT=NONE] -->
+    <string name="accessibility_action_divider_right_full">Right full screen</string>
 
-    <!-- Accessibility action for moving down the docked stack divider [CHAR LIMIT=NONE] -->
-    <string name="accessibility_action_divider_move_up">Move up</string>
-
-    <!-- Accessibility action for moving down the docked stack divider [CHAR LIMIT=NONE] -->
-    <string name="accessibility_action_divider_move_left">Move left</string>
-
-    <!-- Accessibility action for moving down the docked stack divider [CHAR LIMIT=NONE] -->
-    <string name="accessibility_action_divider_move_right">Move right</string>
+    <!-- Accessibility action for moving docked stack divider to make the top screen full screen [CHAR LIMIT=NONE] -->
+    <string name="accessibility_action_divider_top_full">Top full screen</string>
+    <!-- Accessibility action for moving docked stack divider to make the top screen 70% [CHAR LIMIT=NONE] -->
+    <string name="accessibility_action_divider_top_70">Top 70%</string>
+    <!-- Accessibility action for moving docked stack divider to make the top screen 50% [CHAR LIMIT=NONE] -->
+    <string name="accessibility_action_divider_top_50">Top 50%</string>
+    <!-- Accessibility action for moving docked stack divider to make the top screen 30% [CHAR LIMIT=NONE] -->
+    <string name="accessibility_action_divider_top_30">Top 30%</string>
+    <!-- Accessibility action for moving docked stack divider to make the bottom screen full screen [CHAR LIMIT=NONE] -->
+    <string name="accessibility_action_divider_bottom_full">Bottom full screen</string>
 
     <!-- Accessibility description of a QS tile while editing positions [CHAR LIMIT=NONE] -->
     <string name="accessibility_qs_edit_tile_label">Position <xliff:g id="position" example="2">%1$d</xliff:g>, <xliff:g id="tile_name" example="Wi-Fi">%2$s</xliff:g>. Double tap to edit.</string>
@@ -1586,14 +1657,41 @@
     <!-- Accessibility label for window when QS editing is happening [CHAR LIMIT=NONE] -->
     <string name="accessibility_desc_quick_settings_edit">Quick settings editor.</string>
 
+    <!-- Accessibility label for the notification icons in the collapsed status bar. Not shown on screen [CHAR LIMIT=NONE] -->
+    <string name="accessibility_desc_notification_icon"><xliff:g name="app_name" example="Gmail">%1$s</xliff:g> notification: <xliff:g name="notification_text" example="5 new messages">%2$s</xliff:g></string>
+
     <!-- Multi-Window strings -->
     <!-- Text that gets shown on top of current activity to inform the user that the system force-resized the current activity and that things might crash/not work properly [CHAR LIMIT=NONE] -->
     <string name="dock_forced_resizable">App may not work with split-screen.</string>
     <!-- Warning message when we try to dock a non-resizeble tasks and launch it in fullscreen instead. -->
     <string name="dock_non_resizeble_failed_to_dock_text">App does not support split-screen.</string>
 
+    <!-- accessibility label for button to open settings [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_settings">Open settings.</string>
+
     <!-- accessibility label for button to expand quick settings [CHAR LIMIT=NONE] -->
-    <string name="accessibility_quick_settings_expand">Expand quick settings.</string>
+    <string name="accessibility_quick_settings_expand">Open quick settings.</string>
+
+    <!-- accessibility label for button to collapse quick settings [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_collapse">Close quick settings.</string>
+
+    <!-- accessibility label for alarm icon [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_alarm_set">Alarm set.</string>
+
+    <!-- accessibility label for button to select user [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_user">Signed in as <xliff:g name="user" example="John">%s</xliff:g></string>
+
+    <!-- accessibility label for no internet [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_no_internet">No internet.</string>
+
+    <!-- accessibility label for quick settings items that open a details page [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_open_details">Open details.</string>
+
+    <!-- accessibility label for quick settings items that open a details page [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_open_settings">Open <xliff:g name="page" example="Bluetooth">%s</xliff:g> settings.</string>
+
+    <!-- accessibility label for button to edit quick settings [CHAR LIMIT=NONE] -->
+    <string name="accessibility_quick_settings_edit">Edit order of settings.</string>
 
     <!-- accessibility label for paging indicator in quick settings [CHAR LIMITi=NONE] -->
     <string name="accessibility_quick_settings_page">Page <xliff:g name="current_page" example="1">%1$d</xliff:g> of <xliff:g name="num_pages" example="2">%2$d</xliff:g></string>
diff --git a/packages/SystemUI/res/values/strings_tv.xml b/packages/SystemUI/res/values/strings_tv.xml
index dcd1654..b1d23d8 100644
--- a/packages/SystemUI/res/values/strings_tv.xml
+++ b/packages/SystemUI/res/values/strings_tv.xml
@@ -32,9 +32,9 @@
     <!-- Picture-in-Picture (PIP) onboarding screen -->
     <eat-comment />
     <!-- Title for picture-in-picture (PIP) onboarding screen to indicate that an user is in PIP mode. [CHAR LIMIT=NONE] -->
-    <string name="pip_onboarding_title">PIP mode</string>
+    <string name="pip_onboarding_title">Picture-in-picture</string>
     <!-- Description for picture-in-picture (PIP) onboarding screen to indicate that longpress HOME key to control PIP. [CHAR LIMIT=NONE] -->
-    <string name="pip_onboarding_description">To control PIP press and hold the <b>HOME</b> button on the remote</string>
+    <string name="pip_onboarding_description">This keeps your video in view until you play another one. Press and hold <b>HOME</b> to control it.</string>
     <!-- Button to close picture-in-picture (PIP) onboarding screen. -->
     <string name="pip_onboarding_button">Got it</string>
     <!-- Dismiss icon description -->
diff --git a/packages/SystemUI/res/values/styles.xml b/packages/SystemUI/res/values/styles.xml
index 0730083..5e8162e 100644
--- a/packages/SystemUI/res/values/styles.xml
+++ b/packages/SystemUI/res/values/styles.xml
@@ -33,6 +33,7 @@
         <item name="android:windowBackground">@color/transparent</item>
         <item name="android:colorBackgroundCacheHint">@null</item>
         <item name="android:windowShowWallpaper">true</item>
+        <item name="android:windowDisablePreview">true</item>
     </style>
 
     <!-- Performance optimized Recents theme (no wallpaper) -->
@@ -349,7 +350,7 @@
     </style>
 
     <style name="TextAppearance.NotificationGuts.Radio">
-        <item name="android:alpha">.87</item>
+        <item name="android:alpha">.54</item>
     </style>
 
     <style name="TextAppearance.NotificationGuts.Button">
diff --git a/packages/SystemUI/res/values/values_tv.xml b/packages/SystemUI/res/values/values_tv.xml
index bd72c51..dc0483f 100644
--- a/packages/SystemUI/res/values/values_tv.xml
+++ b/packages/SystemUI/res/values/values_tv.xml
@@ -16,4 +16,5 @@
 <resources xmlns:android="http://schemas.android.com/apk/res/android">
     <item format="float" type="integer" name="unselected_scale">1.0</item>
     <item format="float" type="integer" name="selected_scale">1.259</item>
+    <item format="float" type="integer" name="dismiss_unselected_alpha">0.1</item>
 </resources>
diff --git a/packages/SystemUI/res/xml/other_settings.xml b/packages/SystemUI/res/xml/other_settings.xml
new file mode 100644
index 0000000..3c872fa
--- /dev/null
+++ b/packages/SystemUI/res/xml/other_settings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
+                  xmlns:sysui="http://schemas.android.com/apk/res-auto"
+                  android:title="@string/other">
+
+    <com.android.systemui.tuner.TunerSwitch
+            android:key="overview_nav_bar_gesture"
+            android:title="@string/overview_nav_bar_gesture"
+            android:summary="@string/overview_nav_bar_gesture_desc" />
+
+    <!-- importance -->
+    <Preference
+            android:key="power_notification_controls"
+            android:title="@string/tuner_full_importance_settings"
+            android:fragment="com.android.systemui.tuner.PowerNotificationControlsFragment"/>
+
+</PreferenceScreen>
\ No newline at end of file
diff --git a/packages/SystemUI/res/xml/tuner_prefs.xml b/packages/SystemUI/res/xml/tuner_prefs.xml
index 1af9075..116bc69 100644
--- a/packages/SystemUI/res/xml/tuner_prefs.xml
+++ b/packages/SystemUI/res/xml/tuner_prefs.xml
@@ -135,21 +135,10 @@
         android:fragment="com.android.systemui.tuner.NavBarTuner" />
     -->
 
-    <PreferenceScreen
-        android:key="other"
-        android:title="@string/other" >
-
-        <com.android.systemui.tuner.TunerSwitch
-            android:key="overview_nav_bar_gesture"
-            android:title="@string/overview_nav_bar_gesture"
-            android:summary="@string/overview_nav_bar_gesture_desc" />
-
-        <!-- importance -->
-        <com.android.systemui.tuner.TunerSwitch
-                android:key="show_importance_slider"
-                android:title="@string/tuner_full_importance_settings" />
-
-    </PreferenceScreen>
+    <Preference
+            android:key="other"
+            android:title="@string/other"
+            android:fragment="com.android.systemui.tuner.OtherPrefs" />
 
     <!-- Warning, this goes last. -->
     <Preference
diff --git a/packages/SystemUI/src/com/android/systemui/AutoReinflateContainer.java b/packages/SystemUI/src/com/android/systemui/AutoReinflateContainer.java
new file mode 100644
index 0000000..0afab88
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/AutoReinflateContainer.java
@@ -0,0 +1,95 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+package com.android.systemui;
+
+import android.annotation.Nullable;
+import android.content.Context;
+import android.content.res.Configuration;
+import android.content.res.TypedArray;
+import android.util.AttributeSet;
+import android.util.LocaleList;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.FrameLayout;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Custom {@link FrameLayout} that re-inflates when changes to {@link Configuration} happen.
+ * Currently supports changes to density and locale.
+ */
+public class AutoReinflateContainer extends FrameLayout {
+
+    private final List<InflateListener> mInflateListeners = new ArrayList<>();
+    private final int mLayout;
+    private int mDensity;
+    private LocaleList mLocaleList;
+
+    public AutoReinflateContainer(Context context, @Nullable AttributeSet attrs) {
+        super(context, attrs);
+
+        mDensity = context.getResources().getConfiguration().densityDpi;
+        mLocaleList = context.getResources().getConfiguration().getLocales();
+
+        TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.AutoReinflateContainer);
+        if (!a.hasValue(R.styleable.AutoReinflateContainer_android_layout)) {
+            throw new IllegalArgumentException("AutoReinflateContainer must contain a layout");
+        }
+        mLayout = a.getResourceId(R.styleable.AutoReinflateContainer_android_layout, 0);
+        inflateLayout();
+    }
+
+    @Override
+    protected void onConfigurationChanged(Configuration newConfig) {
+        super.onConfigurationChanged(newConfig);
+        boolean shouldInflateLayout = false;
+        final int density = newConfig.densityDpi;
+        if (density != mDensity) {
+            mDensity = density;
+            shouldInflateLayout = true;
+        }
+        final LocaleList localeList = newConfig.getLocales();
+        if (localeList != mLocaleList) {
+            mLocaleList = localeList;
+            shouldInflateLayout = true;
+        }
+
+        if (shouldInflateLayout) {
+            inflateLayout();
+        }
+    }
+
+    private void inflateLayout() {
+        removeAllViews();
+        LayoutInflater.from(getContext()).inflate(mLayout, this);
+        final int N = mInflateListeners.size();
+        for (int i = 0; i < N; i++) {
+            mInflateListeners.get(i).onInflated(getChildAt(0));
+        }
+    }
+
+    public void addInflateListener(InflateListener listener) {
+        mInflateListeners.add(listener);
+        listener.onInflated(getChildAt(0));
+    }
+
+    public interface InflateListener {
+        /**
+         * Called whenever a new view is inflated.
+         */
+        void onInflated(View v);
+    }
+}
diff --git a/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java b/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java
index 0bf81e9..d8b95cc 100644
--- a/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java
+++ b/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java
@@ -89,7 +89,8 @@
     @Override
     public void onBatteryLevelChanged(int level, boolean pluggedIn, boolean charging) {
         setContentDescription(
-                getContext().getString(R.string.accessibility_battery_level, level));
+                getContext().getString(charging ? R.string.accessibility_battery_level_charging
+                        : R.string.accessibility_battery_level, level));
     }
 
     @Override
diff --git a/packages/SystemUI/src/com/android/systemui/DensityContainer.java b/packages/SystemUI/src/com/android/systemui/DensityContainer.java
deleted file mode 100644
index 2e3cb49..0000000
--- a/packages/SystemUI/src/com/android/systemui/DensityContainer.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the
- * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-
-package com.android.systemui;
-
-import android.annotation.Nullable;
-import android.content.Context;
-import android.content.res.Configuration;
-import android.content.res.TypedArray;
-import android.util.AttributeSet;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.FrameLayout;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class DensityContainer extends FrameLayout {
-
-    private final List<InflateListener> mInflateListeners = new ArrayList<>();
-    private final int mLayout;
-    private int mDensity;
-
-    public DensityContainer(Context context, @Nullable AttributeSet attrs) {
-        super(context, attrs);
-
-        mDensity = context.getResources().getConfiguration().densityDpi;
-
-        TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.DensityContainer);
-        if (!a.hasValue(R.styleable.DensityContainer_android_layout)) {
-            throw new IllegalArgumentException("DensityContainer must contain a layout");
-        }
-        mLayout = a.getResourceId(R.styleable.DensityContainer_android_layout, 0);
-        inflateLayout();
-    }
-
-    @Override
-    protected void onConfigurationChanged(Configuration newConfig) {
-        super.onConfigurationChanged(newConfig);
-        int density = newConfig.densityDpi;
-        if (density != mDensity) {
-            mDensity = density;
-            inflateLayout();
-        }
-    }
-
-    private void inflateLayout() {
-        removeAllViews();
-        LayoutInflater.from(getContext()).inflate(mLayout, this);
-        final int N = mInflateListeners.size();
-        for (int i = 0; i < N; i++) {
-            mInflateListeners.get(i).onInflated(getChildAt(0));
-        }
-    }
-
-    public void addInflateListener(InflateListener listener) {
-        mInflateListeners.add(listener);
-        listener.onInflated(getChildAt(0));
-    }
-
-    public interface InflateListener {
-        /**
-         * Called whenever a new view is inflated.
-         */
-        void onInflated(View v);
-    }
-}
diff --git a/packages/SystemUI/src/com/android/systemui/ExpandHelper.java b/packages/SystemUI/src/com/android/systemui/ExpandHelper.java
index d12ab29..cecbfcb 100644
--- a/packages/SystemUI/src/com/android/systemui/ExpandHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/ExpandHelper.java
@@ -317,8 +317,8 @@
                     mResizedView = null;
                     mWatchingForPull = false;
                 }
-                mInitialTouchY = ev.getY();
-                mInitialTouchX = ev.getX();
+                mInitialTouchY = ev.getRawY();
+                mInitialTouchX = ev.getRawX();
                 break;
 
             case MotionEvent.ACTION_CANCEL:
@@ -412,8 +412,8 @@
                 mWatchingForPull = mScrollAdapter != null &&
                         isInside(mScrollAdapter.getHostView(), x, y);
                 mResizedView = findView(x, y);
-                mInitialTouchX = ev.getX();
-                mInitialTouchY = ev.getY();
+                mInitialTouchX = ev.getRawX();
+                mInitialTouchY = ev.getRawY();
                 break;
             case MotionEvent.ACTION_MOVE: {
                 if (mWatchingForPull) {
diff --git a/packages/SystemUI/src/com/android/systemui/ImageWallpaper.java b/packages/SystemUI/src/com/android/systemui/ImageWallpaper.java
index 1306284..c72f5d2 100644
--- a/packages/SystemUI/src/com/android/systemui/ImageWallpaper.java
+++ b/packages/SystemUI/src/com/android/systemui/ImageWallpaper.java
@@ -29,6 +29,7 @@
 import android.graphics.RectF;
 import android.graphics.Region.Op;
 import android.opengl.GLUtils;
+import android.os.AsyncTask;
 import android.os.SystemProperties;
 import android.renderscript.Matrix4f;
 import android.service.wallpaper.WallpaperService;
@@ -155,6 +156,8 @@
 
         private int mLastRequestedWidth = -1;
         private int mLastRequestedHeight = -1;
+        private AsyncTask<Void, Void, Bitmap> mLoader;
+        private boolean mNeedsDrawAfterLoadingWallpaper;
 
         public DrawableEngine() {
             super();
@@ -184,10 +187,9 @@
             super.onCreate(surfaceHolder);
 
             mDefaultDisplay = getSystemService(WindowManager.class).getDefaultDisplay();
-
-            updateSurfaceSize(surfaceHolder, getDefaultDisplayInfo());
-
             setOffsetNotificationsEnabled(false);
+
+            updateSurfaceSize(surfaceHolder, getDefaultDisplayInfo(), false /* forDraw */);
         }
 
         @Override
@@ -197,17 +199,19 @@
             mWallpaperManager.forgetLoadedWallpaper();
         }
 
-        void updateSurfaceSize(SurfaceHolder surfaceHolder, DisplayInfo displayInfo) {
+        boolean updateSurfaceSize(SurfaceHolder surfaceHolder, DisplayInfo displayInfo,
+                boolean forDraw) {
+            boolean hasWallpaper = true;
+
             // Load background image dimensions, if we haven't saved them yet
             if (mBackgroundWidth <= 0 || mBackgroundHeight <= 0) {
                 // Need to load the image to get dimensions
                 mWallpaperManager.forgetLoadedWallpaper();
-                updateWallpaperLocked();
-                if (mBackgroundWidth <= 0 || mBackgroundHeight <= 0) {
-                    // Default to the display size if we can't find the dimensions
-                    mBackgroundWidth = displayInfo.logicalWidth;
-                    mBackgroundHeight = displayInfo.logicalHeight;
+                loadWallpaper(forDraw);
+                if (DEBUG) {
+                    Log.d(TAG, "Reloading, redoing updateSurfaceSize later.");
                 }
+                hasWallpaper = false;
             }
 
             // Force the wallpaper to cover the screen in both dimensions
@@ -224,6 +228,7 @@
             } else {
                 surfaceHolder.setSizeFromLayout();
             }
+            return hasWallpaper;
         }
 
         @Override
@@ -299,6 +304,7 @@
             }
             super.onSurfaceRedrawNeeded(holder);
 
+            mLastSurfaceHeight = mLastSurfaceWidth = -1;
             drawFrame();
         }
 
@@ -317,7 +323,9 @@
                 // should change
                 if (newRotation != mLastRotation) {
                     // Update surface size (if necessary)
-                    updateSurfaceSize(getSurfaceHolder(), displayInfo);
+                    if (!updateSurfaceSize(getSurfaceHolder(), displayInfo, true /* forDraw */)) {
+                        return; // had to reload wallpaper, will retry later
+                    }
                     mRotationAtLastSurfaceSizeUpdate = newRotation;
                     mDisplayWidthAtLastSurfaceSizeUpdate = displayInfo.logicalWidth;
                     mDisplayHeightAtLastSurfaceSizeUpdate = displayInfo.logicalHeight;
@@ -339,8 +347,8 @@
                 }
                 mLastRotation = newRotation;
 
-                // Load bitmap if it is not yet loaded or if it was loaded at a different size
-                if (mBackground == null || surfaceDimensionsChanged) {
+                // Load bitmap if it is not yet loaded
+                if (mBackground == null) {
                     if (DEBUG) {
                         Log.d(TAG, "Reloading bitmap: mBackground, bgw, bgh, dw, dh = " +
                                 mBackground + ", " +
@@ -349,20 +357,11 @@
                                 dw + ", " + dh);
                     }
                     mWallpaperManager.forgetLoadedWallpaper();
-                    updateWallpaperLocked();
-                    if (mBackground == null) {
-                        if (DEBUG) {
-                            Log.d(TAG, "Unable to load bitmap");
-                        }
-                        return;
-                    }
+                    loadWallpaper(true /* needDraw */);
                     if (DEBUG) {
-                        if (dw != mBackground.getWidth() || dh != mBackground.getHeight()) {
-                            Log.d(TAG, "Surface != bitmap dimensions: surface w/h, bitmap w/h: " +
-                                    dw + ", " + dh + ", " + mBackground.getWidth() + ", " +
-                                    mBackground.getHeight());
-                        }
+                        Log.d(TAG, "Reloading, resuming draw later");
                     }
+                    return;
                 }
 
                 // Center the scaled image
@@ -422,36 +421,77 @@
             }
         }
 
-        private void updateWallpaperLocked() {
-            Throwable exception = null;
-            try {
-                mBackground = null;
-                mBackgroundWidth = -1;
-                mBackgroundHeight = -1;
-                mBackground = mWallpaperManager.getBitmap();
-                mBackgroundWidth = mBackground.getWidth();
-                mBackgroundHeight = mBackground.getHeight();
-            } catch (RuntimeException e) {
-                exception = e;
-            } catch (OutOfMemoryError e) {
-                exception = e;
-            }
-
-            if (exception != null) {
-                mBackground = null;
-                mBackgroundWidth = -1;
-                mBackgroundHeight = -1;
-                // Note that if we do fail at this, and the default wallpaper can't
-                // be loaded, we will go into a cycle.  Don't do a build where the
-                // default wallpaper can't be loaded.
-                Log.w(TAG, "Unable to load wallpaper!", exception);
-                try {
-                    mWallpaperManager.clear();
-                } catch (IOException ex) {
-                    // now we're really screwed.
-                    Log.w(TAG, "Unable reset to default wallpaper!", ex);
+        /**
+         * Loads the wallpaper on background thread and schedules updating the surface frame,
+         * and if {@param needsDraw} is set also draws a frame.
+         *
+         * If loading is already in-flight, subsequent loads are ignored (but needDraw is or-ed to
+         * the active request).
+         */
+        private void loadWallpaper(boolean needsDraw) {
+            mNeedsDrawAfterLoadingWallpaper |= needsDraw;
+            if (mLoader != null) {
+                if (DEBUG) {
+                    Log.d(TAG, "Skipping loadWallpaper, already in flight ");
                 }
+                return;
             }
+            mLoader = new AsyncTask<Void, Void, Bitmap>() {
+                @Override
+                protected Bitmap doInBackground(Void... params) {
+                    Throwable exception;
+                    try {
+                        return mWallpaperManager.getBitmap();
+                    } catch (RuntimeException | OutOfMemoryError e) {
+                        exception = e;
+                    }
+
+                    if (exception != null) {
+                        // Note that if we do fail at this, and the default wallpaper can't
+                        // be loaded, we will go into a cycle.  Don't do a build where the
+                        // default wallpaper can't be loaded.
+                        Log.w(TAG, "Unable to load wallpaper!", exception);
+                        try {
+                            mWallpaperManager.clear();
+                        } catch (IOException ex) {
+                            // now we're really screwed.
+                            Log.w(TAG, "Unable reset to default wallpaper!", ex);
+                        }
+
+                        try {
+                            return mWallpaperManager.getBitmap();
+                        } catch (RuntimeException | OutOfMemoryError e) {
+                            Log.w(TAG, "Unable to load default wallpaper!", e);
+                        }
+                    }
+                    return null;
+                }
+
+                @Override
+                protected void onPostExecute(Bitmap b) {
+                    mBackground = null;
+                    mBackgroundWidth = -1;
+                    mBackgroundHeight = -1;
+
+                    if (b != null) {
+                        mBackground = b;
+                        mBackgroundWidth = mBackground.getWidth();
+                        mBackgroundHeight = mBackground.getHeight();
+                    }
+
+                    if (DEBUG) {
+                        Log.d(TAG, "Wallpaper loaded: " + mBackground);
+                    }
+                    updateSurfaceSize(getSurfaceHolder(), getDefaultDisplayInfo(),
+                            false /* forDraw */);
+                    if (mNeedsDrawAfterLoadingWallpaper) {
+                        drawFrame();
+                    }
+
+                    mLoader = null;
+                    mNeedsDrawAfterLoadingWallpaper = false;
+                }
+            }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
         }
 
         @Override
diff --git a/packages/SystemUI/src/com/android/systemui/RecentsComponent.java b/packages/SystemUI/src/com/android/systemui/RecentsComponent.java
index 73b9d02..94b2fdb 100644
--- a/packages/SystemUI/src/com/android/systemui/RecentsComponent.java
+++ b/packages/SystemUI/src/com/android/systemui/RecentsComponent.java
@@ -21,9 +21,9 @@
 import android.view.View;
 
 public interface RecentsComponent {
-    void showRecents(boolean triggeredFromAltTab, View statusBarView);
+    void showRecents(boolean triggeredFromAltTab, boolean fromHome);
     void hideRecents(boolean triggeredFromAltTab, boolean triggeredFromHomeKey);
-    void toggleRecents(Display display, int layoutDirection, View statusBarView);
+    void toggleRecents(Display display);
     void preloadRecents();
     void cancelPreloadingRecents();
     void showNextAffiliatedTask();
diff --git a/packages/SystemUI/src/com/android/systemui/SwipeHelper.java b/packages/SystemUI/src/com/android/systemui/SwipeHelper.java
index e838191..5c50b5c 100644
--- a/packages/SystemUI/src/com/android/systemui/SwipeHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/SwipeHelper.java
@@ -51,11 +51,9 @@
     private float SWIPE_ESCAPE_VELOCITY = 100f; // dp/sec
     private int DEFAULT_ESCAPE_ANIMATION_DURATION = 200; // ms
     private int MAX_ESCAPE_ANIMATION_DURATION = 400; // ms
-    private int MAX_DISMISS_VELOCITY = 2000; // dp/sec
+    private int MAX_DISMISS_VELOCITY = 4000; // dp/sec
     private static final int SNAP_ANIM_LEN = SLOW_ANIMATIONS ? 1000 : 150; // ms
 
-    public static float SWIPE_PROGRESS_FADE_START = 0f; // fraction of thumbnail width
-                                                 // where fade starts
     static final float SWIPE_PROGRESS_FADE_END = 0.5f; // fraction of thumbnail width
                                               // beyond which swipe progress->0
     private float mMinSwipeProgress = 0f;
@@ -102,8 +100,7 @@
         mFalsingThreshold = context.getResources().getDimensionPixelSize(
                 R.dimen.swipe_helper_falsing_threshold);
         mFalsingManager = FalsingManager.getInstance(context);
-        mFlingAnimationUtils = new FlingAnimationUtils(context,
-                MAX_ESCAPE_ANIMATION_DURATION / 1000f /* maxLengthSeconds */);
+        mFlingAnimationUtils = new FlingAnimationUtils(context, getMaxEscapeAnimDuration() / 1000f);
     }
 
     public void setLongPressListener(LongPressListener listener) {
@@ -183,21 +180,23 @@
         mMaxSwipeProgress = maxSwipeProgress;
     }
 
-    private float getSwipeProgressForOffset(View view) {
+    private float getSwipeProgressForOffset(View view, float translation) {
         float viewSize = getSize(view);
-        final float fadeSize = SWIPE_PROGRESS_FADE_END * viewSize;
-        float result = 1.0f;
-        float pos = getTranslation(view);
-        if (pos >= viewSize * SWIPE_PROGRESS_FADE_START) {
-            result = 1.0f - (pos - viewSize * SWIPE_PROGRESS_FADE_START) / fadeSize;
-        } else if (pos < viewSize * (1.0f - SWIPE_PROGRESS_FADE_START)) {
-            result = 1.0f + (viewSize * SWIPE_PROGRESS_FADE_START + pos) / fadeSize;
-        }
+        float result = Math.abs(translation / viewSize);
         return Math.min(Math.max(mMinSwipeProgress, result), mMaxSwipeProgress);
     }
 
+    private float getSwipeAlpha(float progress) {
+        return Math.min(0, Math.max(1, progress / SWIPE_PROGRESS_FADE_END));
+    }
+
     private void updateSwipeProgressFromOffset(View animView, boolean dismissable) {
-        float swipeProgress = getSwipeProgressForOffset(animView);
+        updateSwipeProgressFromOffset(animView, dismissable, getTranslation(animView));
+    }
+
+    private void updateSwipeProgressFromOffset(View animView, boolean dismissable,
+            float translation) {
+        float swipeProgress = getSwipeProgressForOffset(animView, translation);
         if (!mCallback.updateSwipeProgress(animView, dismissable, swipeProgress)) {
             if (FADE_OUT_DURING_SWIPE && dismissable) {
                 float alpha = swipeProgress;
@@ -208,7 +207,7 @@
                         animView.setLayerType(View.LAYER_TYPE_NONE, null);
                     }
                 }
-                animView.setAlpha(getSwipeProgressForOffset(animView));
+                animView.setAlpha(getSwipeAlpha(swipeProgress));
             }
         }
         invalidateGlobalRegion(animView);
@@ -485,7 +484,7 @@
      * view is being animated to dismiss or snap.
      */
     public void onTranslationUpdate(View animView, float value, boolean canBeDismissed) {
-        updateSwipeProgressFromOffset(animView, canBeDismissed);
+        updateSwipeProgressFromOffset(animView, canBeDismissed, value);
     }
 
     private void snapChildInstantly(final View view) {
@@ -494,7 +493,15 @@
         updateSwipeProgressFromOffset(view, canAnimViewBeDismissed);
     }
 
-    public void snapChildIfNeeded(final View view, boolean animate) {
+    /**
+     * Called when a view is updated to be non-dismissable, if the view was being dismissed before
+     * the update this will handle snapping it back into place.
+     *
+     * @param view the view to snap if necessary.
+     * @param animate whether to animate the snap or not.
+     * @param targetLeft the target to snap to.
+     */
+    public void snapChildIfNeeded(final View view, boolean animate, float targetLeft) {
         if ((mDragging && mCurrView == view) || mSnappingChild) {
             return;
         }
@@ -508,7 +515,7 @@
         }
         if (needToSnap) {
             if (animate) {
-                snapChild(view, 0 /* targetLeft */, 0.0f /* velocity */);
+                snapChild(view, targetLeft, 0.0f /* velocity */);
             } else {
                 snapChildInstantly(view);
             }
@@ -600,7 +607,15 @@
     }
 
     protected float getEscapeVelocity() {
-        return SWIPE_ESCAPE_VELOCITY * mDensityScale;
+        return getUnscaledEscapeVelocity() * mDensityScale;
+    }
+
+    protected float getUnscaledEscapeVelocity() {
+        return SWIPE_ESCAPE_VELOCITY;
+    }
+
+    protected long getMaxEscapeAnimDuration() {
+        return MAX_ESCAPE_ANIMATION_DURATION;
     }
 
     protected boolean swipedFarEnough() {
diff --git a/packages/SystemUI/src/com/android/systemui/SystemUISecondaryUserService.java b/packages/SystemUI/src/com/android/systemui/SystemUISecondaryUserService.java
index f619bfb..c8a2e17 100644
--- a/packages/SystemUI/src/com/android/systemui/SystemUISecondaryUserService.java
+++ b/packages/SystemUI/src/com/android/systemui/SystemUISecondaryUserService.java
@@ -16,11 +16,9 @@
 
 package com.android.systemui;
 
-import android.app.ActivityManager;
 import android.app.Service;
 import android.content.Intent;
 import android.os.IBinder;
-import android.os.Process;
 
 import java.io.FileDescriptor;
 import java.io.PrintWriter;
@@ -43,15 +41,19 @@
         SystemUI[] services = ((SystemUIApplication) getApplication()).getServices();
         if (args == null || args.length == 0) {
             for (SystemUI ui: services) {
-                pw.println("dumping service: " + ui.getClass().getName());
-                ui.dump(fd, pw, args);
+                if (ui != null) {
+                    pw.println("dumping service: " + ui.getClass().getName());
+                    ui.dump(fd, pw, args);
+                }
             }
         } else {
             String svc = args[0];
             for (SystemUI ui: services) {
-                String name = ui.getClass().getName();
-                if (name.endsWith(svc)) {
-                    ui.dump(fd, pw, args);
+                if (ui != null) {
+                    String name = ui.getClass().getName();
+                    if (name.endsWith(svc)) {
+                        ui.dump(fd, pw, args);
+                    }
                 }
             }
         }
diff --git a/packages/SystemUI/src/com/android/systemui/assist/AssistManager.java b/packages/SystemUI/src/com/android/systemui/assist/AssistManager.java
index 6f26222..a0aeb2f 100644
--- a/packages/SystemUI/src/com/android/systemui/assist/AssistManager.java
+++ b/packages/SystemUI/src/com/android/systemui/assist/AssistManager.java
@@ -247,8 +247,8 @@
                     }
                 }
             } catch (PackageManager.NameNotFoundException e) {
-                Log.w(TAG, "Failed to swap drawable; "
-                        + component.flattenToShortString() + " not found", e);
+                Log.v(TAG, "Assistant component "
+                        + component.flattenToShortString() + " not found");
             } catch (Resources.NotFoundException nfe) {
                 Log.w(TAG, "Failed to swap drawable from "
                         + component.flattenToShortString(), nfe);
diff --git a/packages/SystemUI/src/com/android/systemui/classifier/FalsingManager.java b/packages/SystemUI/src/com/android/systemui/classifier/FalsingManager.java
index 0798590..1ac5992 100644
--- a/packages/SystemUI/src/com/android/systemui/classifier/FalsingManager.java
+++ b/packages/SystemUI/src/com/android/systemui/classifier/FalsingManager.java
@@ -27,6 +27,7 @@
 import android.os.UserHandle;
 import android.provider.Settings;
 import android.view.MotionEvent;
+import android.view.accessibility.AccessibilityManager;
 
 import com.android.systemui.analytics.DataCollector;
 import com.android.systemui.statusbar.StatusBarState;
@@ -60,6 +61,7 @@
     private final SensorManager mSensorManager;
     private final DataCollector mDataCollector;
     private final HumanInteractionClassifier mHumanInteractionClassifier;
+    private final AccessibilityManager mAccessibilityManager;
 
     private static FalsingManager sInstance = null;
 
@@ -78,7 +80,8 @@
 
     private FalsingManager(Context context) {
         mContext = context;
-        mSensorManager = (SensorManager) mContext.getSystemService(Context.SENSOR_SERVICE);
+        mSensorManager = mContext.getSystemService(SensorManager.class);
+        mAccessibilityManager = context.getSystemService(AccessibilityManager.class);
         mDataCollector = DataCollector.getInstance(mContext);
         mHumanInteractionClassifier = HumanInteractionClassifier.getInstance(mContext);
         mScreenOn = context.getSystemService(PowerManager.class).isInteractive();
@@ -177,6 +180,11 @@
                         .toString());
             }
         }
+        if (mAccessibilityManager.isTouchExplorationEnabled()) {
+            // Touch exploration triggers false positives in the classifier and
+            // already sufficiently prevents false unlocks.
+            return false;
+        }
         return mHumanInteractionClassifier.isFalseTouch();
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/classifier/HumanInteractionClassifier.java b/packages/SystemUI/src/com/android/systemui/classifier/HumanInteractionClassifier.java
index 5e35d76..851ab77 100644
--- a/packages/SystemUI/src/com/android/systemui/classifier/HumanInteractionClassifier.java
+++ b/packages/SystemUI/src/com/android/systemui/classifier/HumanInteractionClassifier.java
@@ -67,7 +67,7 @@
         // If the phone is rotated to landscape, the calculations would be wrong if xdpi and ydpi
         // were to be used separately. Due negligible differences in xdpi and ydpi we can just
         // take the average.
-        // TODO: make this respect DPI changes.
+        // Note that xdpi and ydpi are the physical pixels per inch and are not affected by scaling.
         mDpi = (displayMetrics.xdpi + displayMetrics.ydpi) / 2.0f;
         mClassifierData = new ClassifierData(mDpi);
         mHistoryEvaluator = new HistoryEvaluator();
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
index 1abd073..4d8e33d 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
@@ -1215,7 +1215,6 @@
 
     private void lockProfile(int userId) {
         mTrustManager.setDeviceLockedForUser(userId, true);
-        notifyLockedProfile(userId);
     }
 
     private boolean shouldWaitForProvisioning() {
@@ -1546,13 +1545,6 @@
         }
     }
 
-    private void notifyLockedProfile(@UserIdInt int userId) {
-        try {
-            ActivityManagerNative.getDefault().notifyLockedProfile(userId);
-        } catch (RemoteException e) {
-        }
-    }
-
     /**
      * Handle message sent by {@link #showLocked}.
      * @see #SHOW
diff --git a/packages/SystemUI/src/com/android/systemui/qs/PageIndicator.java b/packages/SystemUI/src/com/android/systemui/qs/PageIndicator.java
index e050b0d..26da551 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/PageIndicator.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/PageIndicator.java
@@ -120,8 +120,8 @@
         }
         ImageView first = (ImageView) getChildAt(firstIndex);
         ImageView second = (ImageView) getChildAt(secondIndex);
-        if (second == null) {
-            // Weird state where number of pages must not have propagated yet.
+        if (first == null || second == null) {
+            // may happen during reInflation or other weird cases
             return;
         }
         // Lay the two views on top of each other.
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java b/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java
index 1149c59..74f1b80 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java
@@ -70,6 +70,7 @@
 
     private QSCustomizer mCustomizePanel;
     private Record mDetailRecord;
+    private boolean mTriggeredExpand;
 
     public QSPanel(Context context) {
         this(context, null);
@@ -384,8 +385,16 @@
     }
 
     protected void handleShowDetail(Record r, boolean show) {
-        if (show && !mExpanded) {
-            mHost.animateExpandQS();
+        if (show) {
+            if (!mExpanded) {
+                mTriggeredExpand = true;
+                mHost.animateToggleQSExpansion();
+            } else {
+                mTriggeredExpand = false;
+            }
+        } else if (mTriggeredExpand) {
+            mHost.animateToggleQSExpansion();
+            mTriggeredExpand = false;
         }
         if (r instanceof TileRecord) {
             handleShowDetailTile((TileRecord) r, show);
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSTile.java b/packages/SystemUI/src/com/android/systemui/qs/QSTile.java
index 3e32905..7692598 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/QSTile.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/QSTile.java
@@ -389,7 +389,7 @@
         void startRunnableDismissingKeyguard(Runnable runnable);
         void warn(String message, Throwable t);
         void collapsePanels();
-        void animateExpandQS();
+        void animateToggleQSExpansion();
         void openPanels();
         Looper getLooper();
         Context getContext();
diff --git a/packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java b/packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java
index 8925d45..41b49d8 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java
@@ -86,7 +86,6 @@
         mContext = context;
         mAccessibilityManager = context.getSystemService(AccessibilityManager.class);
         mItemTouchHelper = new ItemTouchHelper(mCallbacks);
-        setHasStableIds(true);
     }
 
     @Override
@@ -250,7 +249,7 @@
         }
         holder.mTileView.onStateChanged(info.state);
         holder.mTileView.setAppLabel(info.appLabel);
-        holder.mTileView.setShowAppLabel(position > mTileDividerIndex);
+        holder.mTileView.setShowAppLabel(mTileDividerIndex > -1 && position > mTileDividerIndex);
 
         if (mAccessibilityManager.isTouchExplorationEnabled()) {
             final boolean selectable = !mAccessibilityMoving || position < mEditIndex;
@@ -280,10 +279,12 @@
 
     private void selectPosition(int position, View v) {
         // Remove the placeholder.
+        notifyItemRemoved(mEditIndex);
         mTiles.remove(mEditIndex--);
         mAccessibilityMoving = false;
         move(mAccessibilityFromIndex, position, v);
-        notifyDataSetChanged();
+        notifyItemChanged(mAccessibilityFromIndex);
+        notifyItemMoved(mAccessibilityFromIndex, position);
     }
 
     private void showAccessibilityDialog(final int position, final View v) {
@@ -315,7 +316,7 @@
         mAccessibilityFromIndex = position;
         // Add placeholder for last slot.
         mTiles.add(mEditIndex++, null);
-        notifyDataSetChanged();
+        notifyItemInserted(mEditIndex - 1);
     }
 
     public SpanSizeLookup getSizeLookup() {
@@ -323,7 +324,7 @@
     }
 
     private boolean move(int from, int to, View v) {
-        if (to >= mEditIndex) {
+        if (to > mEditIndex) {
             if (from >= mEditIndex) {
                 return false;
             }
@@ -335,6 +336,7 @@
                 }
             } else {
                 if (mTileDividerIndex == mTiles.size()) {
+                    notifyItemInserted(mTiles.size());
                     mTiles.add(null);
                 }
                 if (to <= mTileDividerIndex) {
@@ -344,7 +346,8 @@
         }
         CharSequence fromLabel = mTiles.get(from).state.label;
         move(from, to, mTiles);
-        notifyDataSetChanged();
+        notifyItemChanged(from);
+        notifyItemMoved(from, to);
         updateDividerLocations();
         CharSequence announcement;
         if (to >= mEditIndex) {
@@ -389,6 +392,7 @@
         }
         if (mTiles.size() - 1 == mTileDividerIndex) {
             mTiles.remove(mTiles.size() - 1);
+            notifyItemRemoved(mTiles.size() - 1);
         }
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/qs/customize/TileQueryHelper.java b/packages/SystemUI/src/com/android/systemui/qs/customize/TileQueryHelper.java
index d04a2fc..fb76918 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/customize/TileQueryHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/customize/TileQueryHelper.java
@@ -54,7 +54,7 @@
         // TODO: Live?
     }
 
-    private void addSystemTiles(QSTileHost host) {
+    private void addSystemTiles(final QSTileHost host) {
         String possible = mContext.getString(R.string.quick_settings_tiles_default)
                 + ",hotspot,inversion,saver,work,cast,night";
         String[] possibleTiles = possible.split(",");
@@ -93,7 +93,7 @@
                 mainHandler.post(new Runnable() {
                     @Override
                     public void run() {
-                        new QueryTilesTask().execute();
+                        new QueryTilesTask().execute(host.getTiles());
                     }
                 });
             }
@@ -133,9 +133,10 @@
         public boolean isSystem;
     }
 
-    private class QueryTilesTask extends AsyncTask<Void, Void, Collection<TileInfo>> {
+    private class QueryTilesTask extends
+            AsyncTask<Collection<QSTile<?>>, Void, Collection<TileInfo>> {
         @Override
-        protected Collection<TileInfo> doInBackground(Void... params) {
+        protected Collection<TileInfo> doInBackground(Collection<QSTile<?>>... params) {
             List<TileInfo> tiles = new ArrayList<>();
             PackageManager pm = mContext.getPackageManager();
             List<ResolveInfo> services = pm.queryIntentServicesAsUser(
@@ -143,22 +144,42 @@
             for (ResolveInfo info : services) {
                 String packageName = info.serviceInfo.packageName;
                 ComponentName componentName = new ComponentName(packageName, info.serviceInfo.name);
+                final CharSequence appLabel = info.serviceInfo.applicationInfo.loadLabel(pm);
                 String spec = CustomTile.toSpec(componentName);
+                State state = getState(params[0], spec);
+                if (state != null) {
+                    addTile(spec, appLabel, state, false);
+                    continue;
+                }
+                if (info.serviceInfo.icon == 0) {
+                    continue;
+                }
                 Drawable icon = info.serviceInfo.loadIcon(pm);
                 if (!permission.BIND_QUICK_SETTINGS_TILE.equals(info.serviceInfo.permission)) {
                     continue;
                 }
-                if (icon != null) {
-                    icon.mutate();
-                    icon.setTint(mContext.getColor(android.R.color.white));
+                if (icon == null) {
+                    continue;
                 }
+                icon.mutate();
+                icon.setTint(mContext.getColor(android.R.color.white));
                 CharSequence label = info.serviceInfo.loadLabel(pm);
-                final CharSequence appLabel = info.serviceInfo.applicationInfo.loadLabel(pm);
                 addTile(spec, icon, label != null ? label.toString() : "null", appLabel, mContext);
             }
             return tiles;
         }
 
+        private State getState(Collection<QSTile<?>> tiles, String spec) {
+            for (QSTile<?> tile : tiles) {
+                if (spec.equals(tile.getTileSpec())) {
+                    final QSTile.State state = tile.newTileState();
+                    tile.getState().copyTo(state);
+                    return state;
+                }
+            }
+            return null;
+        }
+
         @Override
         protected void onPostExecute(Collection<TileInfo> result) {
             mTiles.addAll(result);
diff --git a/packages/SystemUI/src/com/android/systemui/qs/external/CustomTile.java b/packages/SystemUI/src/com/android/systemui/qs/external/CustomTile.java
index 6b20681..54dd015 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/external/CustomTile.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/external/CustomTile.java
@@ -36,7 +36,6 @@
 import android.view.IWindowManager;
 import android.view.WindowManager;
 import android.view.WindowManagerGlobal;
-
 import com.android.internal.logging.MetricsLogger;
 import com.android.internal.logging.MetricsProto.MetricsEvent;
 import com.android.systemui.R;
@@ -59,6 +58,7 @@
     private final IQSTileService mService;
     private final TileServiceManager mServiceManager;
     private final int mUser;
+    private final android.graphics.drawable.Icon mDefaultIcon;
 
     private boolean mListening;
     private boolean mBound;
@@ -73,15 +73,19 @@
         mService = mServiceManager.getTileService();
         mTile = new Tile(mComponent);
         mUser = ActivityManager.getCurrentUser();
+        android.graphics.drawable.Icon defaultIcon;
         try {
             PackageManager pm = mContext.getPackageManager();
             ServiceInfo info = pm.getServiceInfo(mComponent,
                     PackageManager.MATCH_ENCRYPTION_AWARE_AND_UNAWARE);
-            mTile.setIcon(android.graphics.drawable.Icon
-                    .createWithResource(mComponent.getPackageName(), info.icon));
+            defaultIcon = info.icon != 0 ? android.graphics.drawable.Icon
+                    .createWithResource(mComponent.getPackageName(), info.icon) : null;
+            mTile.setIcon(defaultIcon);
             mTile.setLabel(info.loadLabel(pm));
         } catch (Exception e) {
+            defaultIcon = null;
         }
+        mDefaultIcon = defaultIcon;
         try {
             mService.setQSTile(mTile);
         } catch (RemoteException e) {
@@ -91,13 +95,7 @@
 
     @Override
     public boolean isAvailable() {
-        try {
-            ServiceInfo info = mContext.getPackageManager().getServiceInfo(mComponent,
-                    PackageManager.MATCH_ENCRYPTION_AWARE_AND_UNAWARE);
-            return true;
-        } catch (Exception e) {
-            return false;
-        }
+        return mDefaultIcon != null;
     }
 
     public int getUser() {
@@ -227,11 +225,18 @@
 
     @Override
     protected void handleUpdateState(State state, Object arg) {
-        Drawable drawable = mTile.getIcon().loadDrawable(mContext);
         int tileState = mTile.getState();
         if (mServiceManager.hasPendingBind()) {
             tileState = Tile.STATE_UNAVAILABLE;
         }
+        Drawable drawable;
+        try {
+            drawable = mTile.getIcon().loadDrawable(mContext);
+        } catch (Exception e) {
+            Log.w(TAG, "Invalid icon, forcing into unavailable state");
+            tileState = Tile.STATE_UNAVAILABLE;
+            drawable = mDefaultIcon.loadDrawable(mContext);
+        }
         int color = mContext.getColor(getColor(tileState));
         drawable.setTint(color);
         state.icon = new DrawableIcon(drawable);
diff --git a/packages/SystemUI/src/com/android/systemui/qs/external/TileLifecycleManager.java b/packages/SystemUI/src/com/android/systemui/qs/external/TileLifecycleManager.java
index 5a26a4a..5903218 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/external/TileLifecycleManager.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/external/TileLifecycleManager.java
@@ -148,13 +148,20 @@
         if (DEBUG) Log.d(TAG, "onServiceConnected " + name);
         // Got a connection, set the binding count to 0.
         mBindTryCount = 0;
-        mWrapper = new QSTileServiceWrapper(Stub.asInterface(service));
+        final QSTileServiceWrapper wrapper = new QSTileServiceWrapper(Stub.asInterface(service));
         try {
             service.linkToDeath(this, 0);
         } catch (RemoteException e) {
         }
-        setQSService(mService);
-        setQSTile(mTile);
+        if (!wrapper.setQSService(mService)) {
+            handleDeath();
+            return;
+        }
+        if (!wrapper.setQSTile(mTile)) {
+            handleDeath();
+            return;
+        }
+        mWrapper = wrapper;
         handlePendingMessages();
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java
index bf5b22c..25a3eff 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java
@@ -43,6 +43,11 @@
     }
 
     @Override
+    public boolean isAvailable() {
+        return mController.isHotspotSupported();
+    }
+
+    @Override
     protected void handleDestroy() {
         super.handleDestroy();
     }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/IRecentsNonSystemUserCallbacks.aidl b/packages/SystemUI/src/com/android/systemui/recents/IRecentsNonSystemUserCallbacks.aidl
index 37085c7..9403664 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/IRecentsNonSystemUserCallbacks.aidl
+++ b/packages/SystemUI/src/com/android/systemui/recents/IRecentsNonSystemUserCallbacks.aidl
@@ -27,9 +27,9 @@
     void preloadRecents();
     void cancelPreloadingRecents();
     void showRecents(boolean triggeredFromAltTab, boolean draggingInRecents, boolean animate,
-            boolean reloadTasks);
+            boolean reloadTasks, boolean fromHome, int recentsGrowTarget);
     void hideRecents(boolean triggeredFromAltTab, boolean triggeredFromHomeKey);
-    void toggleRecents();
+    void toggleRecents(int recentsGrowTarget);
     void onConfigurationChanged();
     void dockTopTask(int topTaskId, int dragMode, int stackCreateMode,
             in Rect initialBounds);
diff --git a/packages/SystemUI/src/com/android/systemui/recents/IRecentsSystemUserCallbacks.aidl b/packages/SystemUI/src/com/android/systemui/recents/IRecentsSystemUserCallbacks.aidl
index 9a00d95..1240e05 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/IRecentsSystemUserCallbacks.aidl
+++ b/packages/SystemUI/src/com/android/systemui/recents/IRecentsSystemUserCallbacks.aidl
@@ -27,7 +27,7 @@
     void registerNonSystemUserCallbacks(IBinder nonSystemUserCallbacks, int userId);
 
     void updateRecentsVisibility(boolean visible);
-    void startScreenPinning();
+    void startScreenPinning(int taskId);
     void sendRecentsDrawnEvent();
     void sendDockingTopTaskEvent(int dragMode, in Rect initialRect);
     void sendLaunchRecentsEvent();
diff --git a/packages/SystemUI/src/com/android/systemui/recents/Recents.java b/packages/SystemUI/src/com/android/systemui/recents/Recents.java
index b2d7b48..e117bfe 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/Recents.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/Recents.java
@@ -37,9 +37,7 @@
 import android.provider.Settings;
 import android.util.EventLog;
 import android.util.Log;
-import android.util.MutableBoolean;
 import android.view.Display;
-import android.view.View;
 import android.widget.Toast;
 
 import com.android.internal.logging.MetricsLogger;
@@ -59,6 +57,7 @@
 import com.android.systemui.recents.misc.SystemServicesProxy;
 import com.android.systemui.recents.model.RecentsTaskLoader;
 import com.android.systemui.recents.tv.RecentsTvImpl;
+import com.android.systemui.stackdivider.Divider;
 
 import java.util.ArrayList;
 
@@ -75,6 +74,7 @@
 
     public final static int EVENT_BUS_PRIORITY = 1;
     public final static int BIND_TO_SYSTEM_USER_RETRY_DELAY = 5000;
+    public final static int RECENTS_GROW_TARGET_INVALID = -1;
 
     // Purely for experimentation
     private final static String RECENTS_OVERRIDE_SYSPROP_KEY = "persist.recents_override_pkg";
@@ -238,7 +238,7 @@
      * Shows the Recents.
      */
     @Override
-    public void showRecents(boolean triggeredFromAltTab, View statusBarView) {
+    public void showRecents(boolean triggeredFromAltTab, boolean fromHome) {
         // Ensure the device has been provisioned before allowing the user to interact with
         // recents
         if (!isUserSetup()) {
@@ -249,10 +249,12 @@
             return;
         }
 
+        int recentsGrowTarget = getComponent(Divider.class).getView().growsRecents();
+
         int currentUser = sSystemServicesProxy.getCurrentUser();
         if (sSystemServicesProxy.isSystemUser(currentUser)) {
             mImpl.showRecents(triggeredFromAltTab, false /* draggingInRecents */,
-                    true /* animate */, false /* reloadTasks */);
+                    true /* animate */, false /* reloadTasks */, fromHome, recentsGrowTarget);
         } else {
             if (mSystemToUserCallbacks != null) {
                 IRecentsNonSystemUserCallbacks callbacks =
@@ -260,7 +262,8 @@
                 if (callbacks != null) {
                     try {
                         callbacks.showRecents(triggeredFromAltTab, false /* draggingInRecents */,
-                                true /* animate */, false /* reloadTasks */);
+                                true /* animate */, false /* reloadTasks */, fromHome,
+                                recentsGrowTarget);
                     } catch (RemoteException e) {
                         Log.e(TAG, "Callback failed", e);
                     }
@@ -310,7 +313,7 @@
      * Toggles the Recents activity.
      */
     @Override
-    public void toggleRecents(Display display, int layoutDirection, View statusBarView) {
+    public void toggleRecents(Display display) {
         // Ensure the device has been provisioned before allowing the user to interact with
         // recents
         if (!isUserSetup()) {
@@ -321,16 +324,18 @@
             return;
         }
 
+        int growTarget = getComponent(Divider.class).getView().growsRecents();
+
         int currentUser = sSystemServicesProxy.getCurrentUser();
         if (sSystemServicesProxy.isSystemUser(currentUser)) {
-            mImpl.toggleRecents();
+            mImpl.toggleRecents(growTarget);
         } else {
             if (mSystemToUserCallbacks != null) {
                 IRecentsNonSystemUserCallbacks callbacks =
                         mSystemToUserCallbacks.getNonSystemUserRecentsForUser(currentUser);
                 if (callbacks != null) {
                     try {
-                        callbacks.toggleRecents();
+                        callbacks.toggleRecents(growTarget);
                     } catch (RemoteException e) {
                         Log.e(TAG, "Callback failed", e);
                     }
@@ -418,25 +423,26 @@
 
         int currentUser = sSystemServicesProxy.getCurrentUser();
         SystemServicesProxy ssp = Recents.getSystemServices();
-        ActivityManager.RunningTaskInfo topTask = ssp.getTopMostTask();
+        ActivityManager.RunningTaskInfo runningTask = ssp.getRunningTask();
         boolean screenPinningActive = ssp.isScreenPinningActive();
-        boolean isTopTaskHome = topTask != null && SystemServicesProxy.isHomeStack(topTask.stackId);
-        if (topTask != null && !isTopTaskHome && !screenPinningActive) {
-            logDockAttempt(mContext, topTask.topActivity, topTask.resizeMode);
-            if (topTask.isDockable) {
+        boolean isRunningTaskInHomeStack = runningTask != null &&
+                SystemServicesProxy.isHomeStack(runningTask.stackId);
+        if (runningTask != null && !isRunningTaskInHomeStack && !screenPinningActive) {
+            logDockAttempt(mContext, runningTask.topActivity, runningTask.resizeMode);
+            if (runningTask.isDockable) {
                 if (metricsDockAction != -1) {
                     MetricsLogger.action(mContext, metricsDockAction,
-                            topTask.topActivity.flattenToShortString());
+                            runningTask.topActivity.flattenToShortString());
                 }
                 if (sSystemServicesProxy.isSystemUser(currentUser)) {
-                    mImpl.dockTopTask(topTask.id, dragMode, stackCreateMode, initialBounds);
+                    mImpl.dockTopTask(runningTask.id, dragMode, stackCreateMode, initialBounds);
                 } else {
                     if (mSystemToUserCallbacks != null) {
                         IRecentsNonSystemUserCallbacks callbacks =
                                 mSystemToUserCallbacks.getNonSystemUserRecentsForUser(currentUser);
                         if (callbacks != null) {
                             try {
-                                callbacks.dockTopTask(topTask.id, dragMode, stackCreateMode,
+                                callbacks.dockTopTask(runningTask.id, dragMode, stackCreateMode,
                                         initialBounds);
                             } catch (RemoteException e) {
                                 Log.e(TAG, "Callback failed", e);
@@ -598,13 +604,13 @@
     public final void onBusEvent(final ScreenPinningRequestEvent event) {
         int processUser = sSystemServicesProxy.getProcessUser();
         if (sSystemServicesProxy.isSystemUser(processUser)) {
-            mImpl.onStartScreenPinning(event.applicationContext);
+            mImpl.onStartScreenPinning(event.applicationContext, event.taskId);
         } else {
             postToSystemUser(new Runnable() {
                 @Override
                 public void run() {
                     try {
-                        mUserToSystemCallbacks.startScreenPinning();
+                        mUserToSystemCallbacks.startScreenPinning(event.taskId);
                     } catch (RemoteException e) {
                         Log.e(TAG, "Callback failed", e);
                     }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/RecentsActivity.java b/packages/SystemUI/src/com/android/systemui/recents/RecentsActivity.java
index 4d69280..54713d0 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/RecentsActivity.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/RecentsActivity.java
@@ -26,6 +26,7 @@
 import android.content.res.Configuration;
 import android.net.Uri;
 import android.os.Bundle;
+import android.os.Handler;
 import android.os.SystemClock;
 import android.os.UserHandle;
 import android.provider.Settings;
@@ -97,8 +98,10 @@
     public final static int INCOMPATIBLE_APP_ALPHA_DURATION = 150;
 
     private RecentsPackageMonitor mPackageMonitor;
+    private Handler mHandler = new Handler();
     private long mLastTabKeyEventTime;
     private int mLastDeviceOrientation = Configuration.ORIENTATION_UNDEFINED;
+    private int mLastDisplayDensity;
     private boolean mFinishedOnStartup;
     private boolean mIgnoreAltTabRelease;
     private boolean mIsVisible;
@@ -137,12 +140,14 @@
         @Override
         public void run() {
             try {
-                ActivityOptions opts = mOpts;
-                if (opts == null) {
-                    opts = ActivityOptions.makeCustomAnimation(RecentsActivity.this,
-                            R.anim.recents_to_launcher_enter, R.anim.recents_to_launcher_exit);
-                }
-                startActivityAsUser(mLaunchIntent, opts.toBundle(), UserHandle.CURRENT);
+                mHandler.post(() -> {
+                    ActivityOptions opts = mOpts;
+                    if (opts == null) {
+                        opts = ActivityOptions.makeCustomAnimation(RecentsActivity.this,
+                                R.anim.recents_to_launcher_enter, R.anim.recents_to_launcher_exit);
+                    }
+                    startActivityAsUser(mLaunchIntent, opts.toBundle(), UserHandle.CURRENT);
+                });
             } catch (Exception e) {
                 Log.e(TAG, getString(R.string.recents_launch_error_message, "Home"), e);
             }
@@ -168,7 +173,7 @@
      */
     boolean dismissRecentsToFocusedTask(int logCategory) {
         SystemServicesProxy ssp = Recents.getSystemServices();
-        if (ssp.isRecentsTopMost(ssp.getTopMostTask(), null)) {
+        if (ssp.isRecentsActivityVisible()) {
             // If we have a focused Task, launch that Task now
             if (mRecentsView.launchFocusedTask(logCategory)) return true;
         }
@@ -180,7 +185,7 @@
      */
     boolean dismissRecentsToLaunchTargetTaskOrHome() {
         SystemServicesProxy ssp = Recents.getSystemServices();
-        if (ssp.isRecentsTopMost(ssp.getTopMostTask(), null)) {
+        if (ssp.isRecentsActivityVisible()) {
             // If we have a focused Task, launch that Task now
             if (mRecentsView.launchPreviousTask()) return true;
             // If none of the other cases apply, then just go Home
@@ -194,7 +199,7 @@
      */
     boolean dismissRecentsToFocusedTaskOrHome() {
         SystemServicesProxy ssp = Recents.getSystemServices();
-        if (ssp.isRecentsTopMost(ssp.getTopMostTask(), null)) {
+        if (ssp.isRecentsActivityVisible()) {
             // If we have a focused Task, launch that Task now
             if (mRecentsView.launchFocusedTask(0 /* logCategory */)) return true;
             // If none of the other cases apply, then just go Home
@@ -222,20 +227,15 @@
                 new DismissRecentsToHomeAnimationStarted(animateTaskViews);
         dismissEvent.addPostAnimationCallback(new LaunchHomeRunnable(mHomeIntent,
                 overrideAnimation));
-        dismissEvent.addPostAnimationCallback(new Runnable() {
-            @Override
-            public void run() {
-                Recents.getSystemServices().sendCloseSystemWindows(
-                        BaseStatusBar.SYSTEM_DIALOG_REASON_HOME_KEY);
-            }
-        });
+        Recents.getSystemServices().sendCloseSystemWindows(
+                BaseStatusBar.SYSTEM_DIALOG_REASON_HOME_KEY);
         EventBus.getDefault().send(dismissEvent);
     }
 
     /** Dismisses Recents directly to Home if we currently aren't transitioning. */
     boolean dismissRecentsToHomeIfVisible(boolean animated) {
         SystemServicesProxy ssp = Recents.getSystemServices();
-        if (ssp.isRecentsTopMost(ssp.getTopMostTask(), null)) {
+        if (ssp.isRecentsActivityVisible()) {
             // Return to Home
             dismissRecentsToHome(animated);
             return true;
@@ -276,7 +276,9 @@
         getWindow().getAttributes().privateFlags |=
                 WindowManager.LayoutParams.PRIVATE_FLAG_FORCE_DECOR_VIEW_VISIBILITY;
 
-        mLastDeviceOrientation = Utilities.getAppConfiguration(this).orientation;
+        Configuration appConfiguration = Utilities.getAppConfiguration(this);
+        mLastDeviceOrientation = appConfiguration.orientation;
+        mLastDisplayDensity = appConfiguration.densityDpi;
         mFocusTimerDuration = getResources().getInteger(R.integer.recents_auto_advance_duration);
         mIterateTrigger = new DozeTrigger(mFocusTimerDuration, new Runnable() {
             @Override
@@ -349,7 +351,7 @@
         loader.loadTasks(this, loadPlan, loadOpts);
         TaskStack stack = loadPlan.getTaskStack();
         mRecentsView.onReload(mIsVisible, stack.getTaskCount() == 0);
-        mRecentsView.updateStack(stack);
+        mRecentsView.updateStack(stack, true /* setStackViewTasks */);
 
         // Update the nav bar scrim, but defer the animation until the enter-window event
         boolean animateNavBarScrim = !launchState.launchedViaDockGesture;
@@ -427,11 +429,13 @@
         super.onConfigurationChanged(newConfig);
 
         // Notify of the config change
-        int newDeviceOrientation = Utilities.getAppConfiguration(this).orientation;
+        Configuration newDeviceConfiguration = Utilities.getAppConfiguration(this);
         int numStackTasks = mRecentsView.getStack().getStackTaskCount();
         EventBus.getDefault().send(new ConfigurationChangedEvent(false /* fromMultiWindow */,
-                (mLastDeviceOrientation != newDeviceOrientation), numStackTasks > 0));
-        mLastDeviceOrientation = newDeviceOrientation;
+                mLastDeviceOrientation != newDeviceConfiguration.orientation,
+                mLastDisplayDensity != newDeviceConfiguration.densityDpi, numStackTasks > 0));
+        mLastDeviceOrientation = newDeviceConfiguration.orientation;
+        mLastDisplayDensity = newDeviceConfiguration.densityDpi;
     }
 
     @Override
@@ -443,7 +447,7 @@
         RecentsActivityLaunchState launchState = config.getLaunchState();
         RecentsTaskLoader loader = Recents.getTaskLoader();
         RecentsTaskLoadPlan loadPlan = loader.createLoadPlan(this);
-        loader.preloadTasks(loadPlan, -1 /* topTaskId */, false /* isTopTaskHome */);
+        loader.preloadTasks(loadPlan, -1 /* runningTaskId */, false /* isHomeStackVisible */);
 
         RecentsTaskLoadPlan.Options loadOpts = new RecentsTaskLoadPlan.Options();
         loadOpts.numVisibleTasks = launchState.launchedNumVisibleTasks;
@@ -454,14 +458,9 @@
         int numStackTasks = stack.getStackTaskCount();
 
         EventBus.getDefault().send(new ConfigurationChangedEvent(true /* fromMultiWindow */,
-                false /* fromDeviceOrientationChange */, numStackTasks > 0));
-
-        if (mRecentsView != null) {
-            mRecentsView.updateStack(stack);
-        }
-
-        EventBus.getDefault().send(new MultiWindowStateChangedEvent(isInMultiWindowMode,
+                false /* fromDeviceOrientationChange */, false /* fromDisplayDensityChange */,
                 numStackTasks > 0));
+        EventBus.getDefault().send(new MultiWindowStateChangedEvent(isInMultiWindowMode, stack));
     }
 
     @Override
@@ -777,6 +776,7 @@
     public void dump(String prefix, FileDescriptor fd, PrintWriter writer, String[] args) {
         super.dump(prefix, fd, writer, args);
         EventBus.getDefault().dump(prefix, writer);
+        Recents.getTaskLoader().dump(prefix, writer);
 
         String id = Integer.toHexString(System.identityHashCode(this));
 
diff --git a/packages/SystemUI/src/com/android/systemui/recents/RecentsImpl.java b/packages/SystemUI/src/com/android/systemui/recents/RecentsImpl.java
index c230cd8..cf18c41 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/RecentsImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/RecentsImpl.java
@@ -38,8 +38,10 @@
 import android.view.AppTransitionAnimationSpec;
 import android.view.LayoutInflater;
 import android.view.ViewConfiguration;
+import android.view.WindowManager;
 
 import com.android.internal.logging.MetricsLogger;
+import com.android.internal.policy.DockedDividerUtils;
 import com.android.systemui.R;
 import com.android.systemui.SystemUIApplication;
 import com.android.systemui.recents.events.EventBus;
@@ -68,6 +70,7 @@
 import com.android.systemui.recents.views.TaskStackViewScroller;
 import com.android.systemui.recents.views.TaskViewHeader;
 import com.android.systemui.recents.views.TaskViewTransform;
+import com.android.systemui.stackdivider.DividerView;
 import com.android.systemui.statusbar.BaseStatusBar;
 import com.android.systemui.statusbar.phone.NavigationBarGestureHelper;
 import com.android.systemui.statusbar.phone.PhoneStatusBar;
@@ -105,11 +108,11 @@
             if (config.svelteLevel == RecentsConfiguration.SVELTE_NONE) {
                 RecentsTaskLoader loader = Recents.getTaskLoader();
                 SystemServicesProxy ssp = Recents.getSystemServices();
-                ActivityManager.RunningTaskInfo runningTaskInfo = ssp.getTopMostTask();
+                ActivityManager.RunningTaskInfo runningTaskInfo = ssp.getRunningTask();
 
                 // Load the next task only if we aren't svelte
                 RecentsTaskLoadPlan plan = loader.createLoadPlan(mContext);
-                loader.preloadTasks(plan, -1, true /* isTopTaskHome */);
+                loader.preloadTasks(plan, -1, true /* isHomeStackVisible */);
                 RecentsTaskLoadPlan.Options launchOpts = new RecentsTaskLoadPlan.Options();
                 // This callback is made when a new activity is launched and the old one is paused
                 // so ignore the current activity and try and preload the thumbnail for the
@@ -156,7 +159,8 @@
             // When this fires, then the user has not released alt-tab for at least
             // FAST_ALT_TAB_DELAY_MS milliseconds
             showRecents(mTriggeredFromAltTab, false /* draggingInRecents */, true /* animate */,
-                    false /* reloadTasks */);
+                    false /* reloadTasks */, false /* fromHome */,
+                    DividerView.INVALID_RECENTS_GROW_TARGET);
         }
     });
 
@@ -185,7 +189,7 @@
         // We can use a new plan since the caches will be the same.
         RecentsTaskLoader loader = Recents.getTaskLoader();
         RecentsTaskLoadPlan plan = loader.createLoadPlan(mContext);
-        loader.preloadTasks(plan, -1, true /* isTopTaskHome */);
+        loader.preloadTasks(plan, -1, true /* isHomeStackVisible */);
         RecentsTaskLoadPlan.Options launchOpts = new RecentsTaskLoadPlan.Options();
         launchOpts.numVisibleTasks = loader.getIconCacheSize();
         launchOpts.numVisibleTaskThumbnails = loader.getThumbnailCacheSize();
@@ -221,16 +225,17 @@
      * visibility change events through to the system user via
      * {@link Recents#onBusEvent(ScreenPinningRequestEvent)}.
      */
-    public void onStartScreenPinning(Context context) {
+    public void onStartScreenPinning(Context context, int taskId) {
         SystemUIApplication app = (SystemUIApplication) context;
         PhoneStatusBar statusBar = app.getComponent(PhoneStatusBar.class);
         if (statusBar != null) {
-            statusBar.showScreenPinningRequest(false);
+            statusBar.showScreenPinningRequest(taskId, false);
         }
     }
 
     public void showRecents(boolean triggeredFromAltTab, boolean draggingInRecents,
-            boolean animate, boolean launchedWhileDockingTask) {
+            boolean animate, boolean launchedWhileDockingTask, boolean fromHome,
+            int growTarget) {
         mTriggeredFromAltTab = triggeredFromAltTab;
         mDraggingInRecents = draggingInRecents;
         mLaunchedWhileDocking = launchedWhileDockingTask;
@@ -257,10 +262,11 @@
         try {
             // Check if the top task is in the home stack, and start the recents activity
             SystemServicesProxy ssp = Recents.getSystemServices();
-            ActivityManager.RunningTaskInfo topTask = ssp.getTopMostTask();
-            MutableBoolean isTopTaskHome = new MutableBoolean(true);
-            if (topTask == null || !ssp.isRecentsTopMost(topTask, isTopTaskHome)) {
-                startRecentsActivity(topTask, isTopTaskHome.value, animate);
+            MutableBoolean isHomeStackVisible = new MutableBoolean(false);
+            if (!ssp.isRecentsActivityVisible(isHomeStackVisible)) {
+                ActivityManager.RunningTaskInfo runningTask = ssp.getRunningTask();
+                startRecentsActivity(runningTask, isHomeStackVisible.value || fromHome, animate,
+                        growTarget);
             }
         } catch (ActivityNotFoundException e) {
             Log.e(TAG, "Failed to launch RecentsActivity", e);
@@ -284,7 +290,7 @@
                 triggeredFromHomeKey));
     }
 
-    public void toggleRecents() {
+    public void toggleRecents(int growTarget) {
         // Skip this toggle if we are already waiting to trigger recents via alt-tab
         if (mFastAltTabTrigger.isDozing()) {
             return;
@@ -296,11 +302,10 @@
 
         try {
             SystemServicesProxy ssp = Recents.getSystemServices();
-            ActivityManager.RunningTaskInfo topTask = ssp.getTopMostTask();
-            MutableBoolean isTopTaskHome = new MutableBoolean(true);
+            MutableBoolean isHomeStackVisible = new MutableBoolean(true);
             long elapsedTime = SystemClock.elapsedRealtime() - mLastToggleTime;
 
-            if (topTask != null && ssp.isRecentsTopMost(topTask, isTopTaskHome)) {
+            if (ssp.isRecentsActivityVisible(isHomeStackVisible)) {
                 RecentsDebugFlags debugFlags = Recents.getDebugFlags();
                 RecentsConfiguration config = Recents.getConfiguration();
                 RecentsActivityLaunchState launchState = config.getLaunchState();
@@ -338,7 +343,9 @@
                 }
 
                 // Otherwise, start the recents activity
-                startRecentsActivity(topTask, isTopTaskHome.value, true /* animate */);
+                ActivityManager.RunningTaskInfo runningTask = ssp.getRunningTask();
+                startRecentsActivity(runningTask, isHomeStackVisible.value, true /* animate */,
+                        growTarget);
 
                 // Only close the other system windows if we are actually showing recents
                 ssp.sendCloseSystemWindows(BaseStatusBar.SYSTEM_DIALOG_REASON_RECENT_APPS);
@@ -353,23 +360,23 @@
         // Preload only the raw task list into a new load plan (which will be consumed by the
         // RecentsActivity) only if there is a task to animate to.
         SystemServicesProxy ssp = Recents.getSystemServices();
-        ActivityManager.RunningTaskInfo topTask = ssp.getTopMostTask();
-        MutableBoolean topTaskHome = new MutableBoolean(true);
-        if (topTask != null && !ssp.isRecentsTopMost(topTask, topTaskHome)) {
+        MutableBoolean isHomeStackVisible = new MutableBoolean(true);
+        if (!ssp.isRecentsActivityVisible(isHomeStackVisible)) {
+            ActivityManager.RunningTaskInfo runningTask = ssp.getRunningTask();
             RecentsTaskLoader loader = Recents.getTaskLoader();
             sInstanceLoadPlan = loader.createLoadPlan(mContext);
-            sInstanceLoadPlan.preloadRawTasks(topTaskHome.value);
-            loader.preloadTasks(sInstanceLoadPlan, topTask.id, topTaskHome.value);
+            sInstanceLoadPlan.preloadRawTasks(isHomeStackVisible.value);
+            loader.preloadTasks(sInstanceLoadPlan, runningTask.id, isHomeStackVisible.value);
             TaskStack stack = sInstanceLoadPlan.getTaskStack();
             if (stack.getTaskCount() > 0) {
                 // Only preload the icon (but not the thumbnail since it may not have been taken for
                 // the pausing activity)
-                preloadIcon(topTask);
+                preloadIcon(runningTask);
 
                 // At this point, we don't know anything about the stack state.  So only calculate
                 // the dimensions of the thumbnail that we need for the transition into Recents, but
                 // do not draw it until we construct the activity options when we start Recents
-                updateHeaderBarLayout(stack);
+                updateHeaderBarLayout(stack, null /* window rect override*/);
             }
         }
     }
@@ -393,25 +400,25 @@
         SystemServicesProxy ssp = Recents.getSystemServices();
         RecentsTaskLoader loader = Recents.getTaskLoader();
         RecentsTaskLoadPlan plan = loader.createLoadPlan(mContext);
-        loader.preloadTasks(plan, -1, true /* isTopTaskHome */);
+        loader.preloadTasks(plan, -1, true /* isHomeStackVisible */);
         TaskStack focusedStack = plan.getTaskStack();
 
         // Return early if there are no tasks in the focused stack
         if (focusedStack == null || focusedStack.getTaskCount() == 0) return;
 
-        ActivityManager.RunningTaskInfo runningTask = ssp.getTopMostTask();
         // Return early if there is no running task
+        ActivityManager.RunningTaskInfo runningTask = ssp.getRunningTask();
         if (runningTask == null) return;
 
         // Find the task in the recents list
-        boolean isTopTaskHome = SystemServicesProxy.isHomeStack(runningTask.stackId);
+        boolean isRunningTaskInHomeStack = SystemServicesProxy.isHomeStack(runningTask.stackId);
         ArrayList<Task> tasks = focusedStack.getStackTasks();
         Task toTask = null;
         ActivityOptions launchOpts = null;
         int taskCount = tasks.size();
         for (int i = taskCount - 1; i >= 1; i--) {
             Task task = tasks.get(i);
-            if (isTopTaskHome) {
+            if (isRunningTaskInHomeStack) {
                 toTask = tasks.get(i - 1);
                 launchOpts = ActivityOptions.makeCustomAnimation(mContext,
                         R.anim.recents_launch_next_affiliated_task_target,
@@ -445,14 +452,14 @@
         SystemServicesProxy ssp = Recents.getSystemServices();
         RecentsTaskLoader loader = Recents.getTaskLoader();
         RecentsTaskLoadPlan plan = loader.createLoadPlan(mContext);
-        loader.preloadTasks(plan, -1, true /* isTopTaskHome */);
+        loader.preloadTasks(plan, -1, true /* isHomeStackVisible */);
         TaskStack focusedStack = plan.getTaskStack();
 
         // Return early if there are no tasks in the focused stack
         if (focusedStack == null || focusedStack.getTaskCount() == 0) return;
 
-        ActivityManager.RunningTaskInfo runningTask = ssp.getTopMostTask();
         // Return early if there is no running task (can't determine affiliated tasks in this case)
+        ActivityManager.RunningTaskInfo runningTask = ssp.getRunningTask();
         if (runningTask == null) return;
         // Return early if the running task is in the home stack (optimization)
         if (SystemServicesProxy.isHomeStack(runningTask.stackId)) return;
@@ -534,7 +541,9 @@
                     false /* triggeredFromAltTab */,
                     dragMode == NavigationBarGestureHelper.DRAG_MODE_RECENTS,
                     false /* animate */,
-                    true /* launchedWhileDockingTask*/);
+                    true /* launchedWhileDockingTask*/,
+                    false /* fromHome */,
+                    DividerView.INVALID_RECENTS_GROW_TARGET);
         }
     }
 
@@ -559,7 +568,7 @@
                 com.android.internal.R.dimen.navigation_bar_height);
         mNavBarWidth = res.getDimensionPixelSize(
                 com.android.internal.R.dimen.navigation_bar_width);
-        mTaskBarHeight = TaskStackLayoutAlgorithm.getDimensionForDevice(res,
+        mTaskBarHeight = TaskStackLayoutAlgorithm.getDimensionForDevice(mContext,
                 R.dimen.recents_task_view_header_height,
                 R.dimen.recents_task_view_header_height,
                 R.dimen.recents_task_view_header_height,
@@ -573,12 +582,18 @@
      * since the last call, it will attempt to re-measure and layout the header bar to the new size.
      *
      * @param stack the stack to initialize the stack layout with
+     * @param windowRectOverride the rectangle to use when calculating the stack state which can
+     *                           be different from the current window rect if recents is resizing
+     *                           while being launched
      */
-    private void updateHeaderBarLayout(TaskStack stack) {
+    private void updateHeaderBarLayout(TaskStack stack, Rect windowRectOverride) {
         SystemServicesProxy ssp = Recents.getSystemServices();
+        Rect displayRect = ssp.getDisplayRect();
         Rect systemInsets = new Rect();
         ssp.getStableInsets(systemInsets);
-        Rect windowRect = ssp.getWindowRect();
+        Rect windowRect = windowRectOverride != null
+                ? new Rect(windowRectOverride)
+                : ssp.getWindowRect();
         // When docked, the nav bar insets are consumed and the activity is measured without insets.
         // However, the window bounds include the insets, so we need to subtract them here to make
         // them identical.
@@ -594,10 +609,10 @@
         // Rebind the header bar and draw it for the transition
         stackLayout.setSystemInsets(systemInsets);
         if (stack != null) {
-            stackLayout.getTaskStackBounds(windowRect, systemInsets.top, systemInsets.right,
-                    mTaskStackBounds);
+            stackLayout.getTaskStackBounds(displayRect, windowRect, systemInsets.top,
+                    systemInsets.right, mTaskStackBounds);
             stackLayout.reset();
-            stackLayout.initialize(windowRect, mTaskStackBounds,
+            stackLayout.initialize(displayRect, windowRect, mTaskStackBounds,
                     TaskStackLayoutAlgorithm.StackState.getStackStateForStack(stack));
             mDummyStackView.setTasks(stack, false /* allowNotifyStackChanges */);
 
@@ -681,8 +696,9 @@
      * Creates the activity options for an app->recents transition.
      */
     private ActivityOptions getThumbnailTransitionActivityOptions(
-            ActivityManager.RunningTaskInfo topTask, TaskStackView stackView) {
-        if (topTask.stackId == FREEFORM_WORKSPACE_STACK_ID) {
+            ActivityManager.RunningTaskInfo runningTask, TaskStackView stackView,
+                    Rect windowOverrideRect) {
+        if (runningTask.stackId == FREEFORM_WORKSPACE_STACK_ID) {
             ArrayList<AppTransitionAnimationSpec> specs = new ArrayList<>();
             ArrayList<Task> tasks = stackView.getStack().getStackTasks();
             TaskStackLayoutAlgorithm stackLayout = stackView.getStackAlgorithm();
@@ -695,7 +711,8 @@
                 Task task = tasks.get(i);
                 if (task.isFreeformTask()) {
                     mTmpTransform = stackLayout.getStackTransformScreenCoordinates(task,
-                                    stackScroller.getStackScroll(), mTmpTransform, null);
+                            stackScroller.getStackScroll(), mTmpTransform, null,
+                            windowOverrideRect);
                     Bitmap thumbnail = drawThumbnailTransitionBitmap(task, mTmpTransform,
                             mThumbTransitionBitmapCache);
                     Rect toTaskRect = new Rect();
@@ -710,7 +727,8 @@
         } else {
             // Update the destination rect
             Task toTask = new Task();
-            TaskViewTransform toTransform = getThumbnailTransitionTransform(stackView, toTask);
+            TaskViewTransform toTransform = getThumbnailTransitionTransform(stackView, toTask,
+                    windowOverrideRect);
             Bitmap thumbnail = drawThumbnailTransitionBitmap(toTask, toTransform,
                     mThumbTransitionBitmapCache);
             if (thumbnail != null) {
@@ -728,7 +746,7 @@
      * Returns the transition rect for the given task id.
      */
     private TaskViewTransform getThumbnailTransitionTransform(TaskStackView stackView,
-            Task runningTaskOut) {
+            Task runningTaskOut, Rect windowOverrideRect) {
         // Find the running task in the TaskStack
         TaskStack stack = stackView.getStack();
         Task launchTask = stack.getLaunchTarget();
@@ -744,7 +762,7 @@
         stackView.updateLayoutAlgorithm(true /* boundScroll */);
         stackView.updateToInitialState();
         stackView.getStackAlgorithm().getStackTransformScreenCoordinates(launchTask,
-                stackView.getScroller().getStackScroll(), mTmpTransform, null);
+                stackView.getScroller().getStackScroll(), mTmpTransform, null, windowOverrideRect);
         return mTmpTransform;
     }
 
@@ -770,8 +788,9 @@
                     if (icon != null) {
                         icon.setCallback(null);
                     }
-                    mHeaderBar.rebindToTask(toTask, false /* touchExplorationEnabled */,
+                    mHeaderBar.bindToTask(toTask, false /* touchExplorationEnabled */,
                             disabledInSafeMode);
+                    mHeaderBar.onTaskDataLoaded();
                     mHeaderBar.setDimAlpha(toTransform.dimAlpha);
                     mHeaderBar.draw(c);
                     c.setBitmap(null);
@@ -785,8 +804,8 @@
     /**
      * Shows the recents activity
      */
-    protected void startRecentsActivity(ActivityManager.RunningTaskInfo topTask,
-            boolean isTopTaskHome, boolean animate) {
+    protected void startRecentsActivity(ActivityManager.RunningTaskInfo runningTask,
+            boolean isHomeStackVisible, boolean animate, int growTarget) {
         RecentsTaskLoader loader = Recents.getTaskLoader();
         RecentsActivityLaunchState launchState = Recents.getConfiguration().getLaunchState();
 
@@ -798,27 +817,28 @@
             sInstanceLoadPlan = loader.createLoadPlan(mContext);
         }
         if (mLaunchedWhileDocking || mTriggeredFromAltTab || !sInstanceLoadPlan.hasTasks()) {
-            loader.preloadTasks(sInstanceLoadPlan, topTask.id, isTopTaskHome);
+            loader.preloadTasks(sInstanceLoadPlan, runningTask.id, isHomeStackVisible);
         }
 
         TaskStack stack = sInstanceLoadPlan.getTaskStack();
         boolean hasRecentTasks = stack.getTaskCount() > 0;
-        boolean useThumbnailTransition = (topTask != null) && !isTopTaskHome && hasRecentTasks;
+        boolean useThumbnailTransition = (runningTask != null) && !isHomeStackVisible && hasRecentTasks;
 
         // Update the launch state that we need in updateHeaderBarLayout()
         launchState.launchedFromHome = !useThumbnailTransition;
         launchState.launchedFromApp = useThumbnailTransition || mLaunchedWhileDocking;
         launchState.launchedViaDockGesture = mLaunchedWhileDocking;
         launchState.launchedViaDragGesture = mDraggingInRecents;
-        launchState.launchedToTaskId = (topTask != null) ? topTask.id : -1;
+        launchState.launchedToTaskId = (runningTask != null) ? runningTask.id : -1;
         launchState.launchedWithAltTab = mTriggeredFromAltTab;
 
         // Preload the icon (this will be a null-op if we have preloaded the icon already in
         // preloadRecents())
-        preloadIcon(topTask);
+        preloadIcon(runningTask);
 
         // Update the header bar if necessary
-        updateHeaderBarLayout(stack);
+        Rect windowOverrideRect = getWindowRectOverride(growTarget);
+        updateHeaderBarLayout(stack, windowOverrideRect);
 
         // Prepare the dummy stack for the transition
         TaskStackLayoutAlgorithm.VisibilityReport stackVr =
@@ -836,7 +856,8 @@
         ActivityOptions opts;
         if (useThumbnailTransition) {
             // Try starting with a thumbnail transition
-            opts = getThumbnailTransitionActivityOptions(topTask, mDummyStackView);
+            opts = getThumbnailTransitionActivityOptions(runningTask, mDummyStackView,
+                    windowOverrideRect);
         } else {
             // If there is no thumbnail transition, but is launching from home into recents, then
             // use a quick home transition
@@ -848,6 +869,18 @@
         mLastToggleTime = SystemClock.elapsedRealtime();
     }
 
+    private Rect getWindowRectOverride(int growTarget) {
+        if (growTarget == DividerView.INVALID_RECENTS_GROW_TARGET) {
+            return null;
+        }
+        Rect result = new Rect();
+        Rect displayRect = Recents.getSystemServices().getDisplayRect();
+        DockedDividerUtils.calculateBoundsForPosition(growTarget, WindowManager.DOCKED_BOTTOM,
+                result, displayRect.width(), displayRect.height(),
+                Recents.getSystemServices().getDockedDividerSize(mContext));
+        return result;
+    }
+
     /**
      * Starts the recents activity.
      */
diff --git a/packages/SystemUI/src/com/android/systemui/recents/RecentsImplProxy.java b/packages/SystemUI/src/com/android/systemui/recents/RecentsImplProxy.java
index 86ec98a..defc6ed 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/RecentsImplProxy.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/RecentsImplProxy.java
@@ -57,12 +57,15 @@
 
     @Override
     public void showRecents(boolean triggeredFromAltTab, boolean draggingInRecents, boolean animate,
-            boolean reloadTasks) throws RemoteException {
+            boolean reloadTasks, boolean fromHome, int growTarget)
+            throws RemoteException {
         SomeArgs args = SomeArgs.obtain();
         args.argi1 = triggeredFromAltTab ? 1 : 0;
         args.argi2 = draggingInRecents ? 1 : 0;
         args.argi3 = animate ? 1 : 0;
         args.argi4 = reloadTasks ? 1 : 0;
+        args.argi5 = fromHome ? 1 : 0;
+        args.argi6 = growTarget;
         mHandler.sendMessage(mHandler.obtainMessage(MSG_SHOW_RECENTS, args));
     }
 
@@ -74,8 +77,8 @@
     }
 
     @Override
-    public void toggleRecents() throws RemoteException {
-        mHandler.sendEmptyMessage(MSG_TOGGLE_RECENTS);
+    public void toggleRecents(int growTarget) throws RemoteException {
+        mHandler.sendMessage(mHandler.obtainMessage(MSG_TOGGLE_RECENTS, growTarget));
     }
 
     @Override
@@ -118,13 +121,13 @@
                 case MSG_SHOW_RECENTS:
                     SomeArgs args = (SomeArgs) msg.obj;
                     mImpl.showRecents(args.argi1 != 0, args.argi2 != 0, args.argi3 != 0,
-                            args.argi4 != 0);
+                            args.argi4 != 0, args.argi5 != 0, args.argi6);
                     break;
                 case MSG_HIDE_RECENTS:
                     mImpl.hideRecents(msg.arg1 != 0, msg.arg2 != 0);
                     break;
                 case MSG_TOGGLE_RECENTS:
-                    mImpl.toggleRecents();
+                    mImpl.toggleRecents(msg.arg1);
                     break;
                 case MSG_ON_CONFIGURATION_CHANGED:
                     mImpl.onConfigurationChanged();
diff --git a/packages/SystemUI/src/com/android/systemui/recents/RecentsSystemUser.java b/packages/SystemUI/src/com/android/systemui/recents/RecentsSystemUser.java
index ffeb4a1..913da18 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/RecentsSystemUser.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/RecentsSystemUser.java
@@ -82,8 +82,8 @@
     }
 
     @Override
-    public void startScreenPinning() {
-        mImpl.onStartScreenPinning(mContext);
+    public void startScreenPinning(int taskId) {
+        mImpl.onStartScreenPinning(mContext, taskId);
     }
 
     @Override
diff --git a/packages/SystemUI/src/com/android/systemui/recents/ScreenPinningRequest.java b/packages/SystemUI/src/com/android/systemui/recents/ScreenPinningRequest.java
index 13d4acb..992b13f 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/ScreenPinningRequest.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/ScreenPinningRequest.java
@@ -26,6 +26,7 @@
 import android.content.IntentFilter;
 import android.content.res.Configuration;
 import android.graphics.PixelFormat;
+import android.graphics.Rect;
 import android.graphics.drawable.ColorDrawable;
 import android.os.RemoteException;
 import android.util.DisplayMetrics;
@@ -52,6 +53,9 @@
 
     private RequestWindowView mRequestWindow;
 
+    // Id of task to be pinned or locked.
+    private int taskId;
+
     public ScreenPinningRequest(Context context) {
         mContext = context;
         mAccessibilityService = (AccessibilityManager)
@@ -67,9 +71,11 @@
         }
     }
 
-    public void showPrompt(boolean allowCancel) {
+    public void showPrompt(int taskId, boolean allowCancel) {
         clearPrompt();
 
+        this.taskId = taskId;
+
         mRequestWindow = new RequestWindowView(mContext, allowCancel);
 
         mRequestWindow.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
@@ -106,7 +112,7 @@
     public void onClick(View v) {
         if (v.getId() == R.id.screen_pinning_ok_button || mRequestWindow == v) {
             try {
-                ActivityManagerNative.getDefault().startLockTaskModeOnCurrent();
+                ActivityManagerNative.getDefault().startSystemLockTaskMode(taskId);
             } catch (RemoteException e) {}
         }
         clearPrompt();
@@ -199,11 +205,15 @@
             // Status bar is always on the right.
             mLayout.setLayoutDirection(View.LAYOUT_DIRECTION_LTR);
             // Buttons and text do switch sides though.
-            View buttons = mLayout.findViewById(R.id.screen_pinning_buttons);
-            buttons.setLayoutDirection(View.LAYOUT_DIRECTION_LOCALE);
             mLayout.findViewById(R.id.screen_pinning_text_area)
                     .setLayoutDirection(View.LAYOUT_DIRECTION_LOCALE);
-            swapChildrenIfRtlAndVertical(buttons);
+            View buttons = mLayout.findViewById(R.id.screen_pinning_buttons);
+            if (Recents.getSystemServices().hasSoftNavigationBar()) {
+                buttons.setLayoutDirection(View.LAYOUT_DIRECTION_LOCALE);
+                swapChildrenIfRtlAndVertical(buttons);
+            } else {
+                buttons.setVisibility(View.GONE);
+            }
 
             ((Button) mLayout.findViewById(R.id.screen_pinning_ok_button))
                     .setOnClickListener(ScreenPinningRequest.this);
diff --git a/packages/SystemUI/src/com/android/systemui/recents/events/activity/ConfigurationChangedEvent.java b/packages/SystemUI/src/com/android/systemui/recents/events/activity/ConfigurationChangedEvent.java
index 53b67cf..294c1e7 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/events/activity/ConfigurationChangedEvent.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/events/activity/ConfigurationChangedEvent.java
@@ -25,12 +25,14 @@
 
     public final boolean fromMultiWindow;
     public final boolean fromDeviceOrientationChange;
+    public final boolean fromDisplayDensityChange;
     public final boolean hasStackTasks;
 
     public ConfigurationChangedEvent(boolean fromMultiWindow, boolean fromDeviceOrientationChange,
-            boolean hasStackTasks) {
+            boolean fromDisplayDensityChange, boolean hasStackTasks) {
         this.fromMultiWindow = fromMultiWindow;
         this.fromDeviceOrientationChange = fromDeviceOrientationChange;
+        this.fromDisplayDensityChange = fromDisplayDensityChange;
         this.hasStackTasks = hasStackTasks;
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/events/activity/MultiWindowStateChangedEvent.java b/packages/SystemUI/src/com/android/systemui/recents/events/activity/MultiWindowStateChangedEvent.java
index cf2a68e..11649fb 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/events/activity/MultiWindowStateChangedEvent.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/events/activity/MultiWindowStateChangedEvent.java
@@ -17,17 +17,18 @@
 package com.android.systemui.recents.events.activity;
 
 import com.android.systemui.recents.events.EventBus;
+import com.android.systemui.recents.model.TaskStack;
 
 /**
  * This is sent by the activity whenever the multi-window state has changed.
  */
-public class MultiWindowStateChangedEvent extends EventBus.Event {
+public class MultiWindowStateChangedEvent extends EventBus.AnimatedEvent {
 
     public final boolean inMultiWindow;
-    public final boolean hasStackTasks;
+    public final TaskStack stack;
 
-    public MultiWindowStateChangedEvent(boolean inMultiWindow, boolean hasStackTasks) {
+    public MultiWindowStateChangedEvent(boolean inMultiWindow, TaskStack stack) {
         this.inMultiWindow = inMultiWindow;
-        this.hasStackTasks = hasStackTasks;
+        this.stack = stack;
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/events/component/ScreenPinningRequestEvent.java b/packages/SystemUI/src/com/android/systemui/recents/events/component/ScreenPinningRequestEvent.java
index 75e459a..d460917 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/events/component/ScreenPinningRequestEvent.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/events/component/ScreenPinningRequestEvent.java
@@ -26,8 +26,10 @@
 public class ScreenPinningRequestEvent extends EventBus.Event {
 
     public final Context applicationContext;
+    public final int taskId;
 
-    public ScreenPinningRequestEvent(Context context) {
+    public ScreenPinningRequestEvent(Context context, int taskId) {
         this.applicationContext = context.getApplicationContext();
+        this.taskId = taskId;
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/events/ui/RecentsGrowingEvent.java b/packages/SystemUI/src/com/android/systemui/recents/events/ui/RecentsGrowingEvent.java
new file mode 100644
index 0000000..d9b0027
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/recents/events/ui/RecentsGrowingEvent.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.systemui.recents.events.ui;
+
+import com.android.systemui.recents.events.EventBus;
+
+/**
+ * Sent when recents is about to grow in multi-window mode when entering recents.
+ */
+public class RecentsGrowingEvent extends EventBus.Event {
+
+}
diff --git a/packages/SystemUI/src/com/android/systemui/recents/misc/SystemServicesProxy.java b/packages/SystemUI/src/com/android/systemui/recents/misc/SystemServicesProxy.java
index 2d5addb..be06ad0 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/misc/SystemServicesProxy.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/misc/SystemServicesProxy.java
@@ -38,7 +38,6 @@
 import android.content.pm.IPackageManager;
 import android.content.pm.PackageManager;
 import android.content.pm.ResolveInfo;
-import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
@@ -99,6 +98,7 @@
     static {
         sBitmapOptions = new BitmapFactory.Options();
         sBitmapOptions.inMutable = true;
+        sBitmapOptions.inPreferredConfig = Bitmap.Config.RGB_565;
     }
 
     final static List<String> sRecentsBlacklist;
@@ -250,9 +250,14 @@
         return sSystemServicesProxy;
     }
 
-    /** Returns a list of the recents tasks */
+    /**
+     * Returns a list of the recents tasks.
+     *
+     * @param isHomeStackVisible whether or not the home stack is currently visible.  If it is
+     *                           visible, then we ignore all excluded tasks (even the first one).
+     */
     public List<ActivityManager.RecentTaskInfo> getRecentTasks(int numLatestTasks, int userId,
-            boolean isTopTaskHome, ArraySet<Integer> quietProfileIds) {
+            boolean isHomeStackVisible, ArraySet<Integer> quietProfileIds) {
         if (mAm == null) return null;
 
         // If we are mocking, then create some recent tasks
@@ -319,7 +324,7 @@
             boolean isBlackListed = sRecentsBlacklist.contains(t.realActivity.getClassName());
             // Filter out recent tasks from managed profiles which are in quiet mode.
             isExcluded |= quietProfileIds.contains(t.userId);
-            if (isBlackListed || (isExcluded && (isTopTaskHome || !isFirstValidTask))) {
+            if (isBlackListed || (isExcluded && (isHomeStackVisible || !isFirstValidTask))) {
                 iter.remove();
                 continue;
             }
@@ -329,15 +334,11 @@
         return tasks.subList(0, Math.min(tasks.size(), numLatestTasks));
     }
 
-    /** Returns a list of the running tasks */
-    private List<ActivityManager.RunningTaskInfo> getRunningTasks(int numTasks) {
-        if (mAm == null) return null;
-        return mAm.getRunningTasks(numTasks);
-    }
-
-    /** Returns the top task. */
-    public ActivityManager.RunningTaskInfo getTopMostTask() {
-        List<ActivityManager.RunningTaskInfo> tasks = getRunningTasks(1);
+    /**
+     * Returns the top running task.
+     */
+    public ActivityManager.RunningTaskInfo getRunningTask() {
+        List<ActivityManager.RunningTaskInfo> tasks = mAm.getRunningTasks(1);
         if (tasks != null && !tasks.isEmpty()) {
             return tasks.get(0);
         }
@@ -345,6 +346,39 @@
     }
 
     /**
+     * Returns whether the recents activity is currently visible.
+     */
+    public boolean isRecentsActivityVisible() {
+        return isRecentsActivityVisible(null);
+    }
+
+    /**
+     * Returns whether the recents activity is currently visible.
+     *
+     * @param isHomeStackVisible if provided, will return whether the home stack is visible
+     *                           regardless of the recents visibility
+     */
+    public boolean isRecentsActivityVisible(MutableBoolean isHomeStackVisible) {
+        if (mIam == null) return false;
+
+        try {
+            ActivityManager.StackInfo stackInfo = mIam.getStackInfo(
+                    ActivityManager.StackId.HOME_STACK_ID);
+            ComponentName topActivity = stackInfo.topActivity;
+            if (isHomeStackVisible != null) {
+                isHomeStackVisible.value = stackInfo.visible;
+            }
+            return (stackInfo.visible && topActivity != null
+                    && topActivity.getPackageName().equals(RecentsImpl.RECENTS_PACKAGE)
+                    && (topActivity.getClassName().equals(RecentsImpl.RECENTS_ACTIVITY)
+                        || topActivity.getClassName().equals(RecentsTvImpl.RECENTS_TV_ACTIVITY)));
+        } catch (RemoteException e) {
+            e.printStackTrace();
+        }
+        return false;
+    }
+
+    /**
      * Returns whether this device has freeform workspaces.
      */
     public boolean hasFreeformWorkspaceSupport() {
@@ -358,56 +392,6 @@
         return mIsSafeMode;
     }
 
-    /** Returns whether the recents is currently running */
-    public boolean isRecentsTopMost(ActivityManager.RunningTaskInfo topTask,
-            MutableBoolean isHomeTopMost) {
-        if (topTask != null) {
-            ComponentName topActivity = topTask.topActivity;
-
-            // Check if the front most activity is recents
-            if ((topActivity.getPackageName().equals(RecentsImpl.RECENTS_PACKAGE) &&
-                    (topActivity.getClassName().equals(RecentsImpl.RECENTS_ACTIVITY) ||
-                    topActivity.getClassName().equals(RecentsTvImpl.RECENTS_TV_ACTIVITY)))) {
-                if (isHomeTopMost != null) {
-                    isHomeTopMost.value = false;
-                }
-                return true;
-            }
-
-            // Note, this is only valid because we currently only allow the recents and home
-            // activities in the home stack
-            if (isHomeTopMost != null) {
-                isHomeTopMost.value = SystemServicesProxy.isHomeStack(topTask.stackId);
-            }
-        }
-        return false;
-    }
-
-    /** Get the bounds of a task. */
-    public Rect getTaskBounds(int taskId) {
-        if (mIam == null) return null;
-
-        try {
-            return mIam.getTaskBounds(taskId);
-        } catch (RemoteException e) {
-            e.printStackTrace();
-        }
-        return null;
-    }
-
-    /**
-     * Resizes the given task to the new bounds.
-     */
-    public void resizeTask(int taskId, Rect bounds) {
-        if (mIam == null) return;
-
-        try {
-            mIam.resizeTask(taskId, bounds, ActivityManager.RESIZE_MODE_FORCED);
-        } catch (RemoteException e) {
-            e.printStackTrace();
-        }
-    }
-
     /** Docks a task to the side of the screen and starts it. */
     public void startTaskInDockedMode(int taskId, int createMode) {
         if (mIam == null) return;
@@ -438,18 +422,6 @@
         return false;
     }
 
-    /** Returns the focused stack id. */
-    public int getFocusedStack() {
-        if (mIam == null) return -1;
-
-        try {
-            return mIam.getFocusedStackId();
-        } catch (RemoteException e) {
-            e.printStackTrace();
-            return -1;
-        }
-    }
-
     /**
      * Returns whether the given stack id is the home stack id.
      */
@@ -503,6 +475,28 @@
     }
 
     /**
+     * Returns whether there is a soft nav bar.
+     */
+    public boolean hasSoftNavigationBar() {
+        try {
+            return WindowManagerGlobal.getWindowManagerService().hasNavigationBar();
+        } catch (RemoteException e) {
+            e.printStackTrace();
+        }
+        return false;
+    }
+
+    /**
+     * Returns whether the device has a transposed nav bar (on the right of the screen) in the
+     * current display orientation.
+     */
+    public boolean hasTransposedNavigationBar() {
+        Rect insets = new Rect();
+        getStableInsets(insets);
+        return insets.right > 0;
+    }
+
+    /**
      * Cancels the current window transtion to/from Recents for the given task id.
      */
     public void cancelWindowTransition(int taskId) {
@@ -600,19 +594,6 @@
         }
     }
 
-    /** Moves a task to the front with the specified activity options. */
-    public void moveTaskToFront(int taskId, ActivityOptions opts) {
-        if (mAm == null) return;
-        if (RecentsDebugFlags.Static.EnableMockTasks) return;
-
-        if (opts != null) {
-            mAm.moveTaskToFront(taskId, ActivityManager.MOVE_TASK_WITH_HOME,
-                    opts.toBundle());
-        } else {
-            mAm.moveTaskToFront(taskId, ActivityManager.MOVE_TASK_WITH_HOME);
-        }
-    }
-
     /** Removes the task */
     public void removeTask(final int taskId) {
         if (mAm == null) return;
@@ -938,18 +919,6 @@
     }
 
     /**
-     * Returns the current display orientation.
-     */
-    public int getDisplayOrientation() {
-        // Because of multi-window, the configuration orientation does not necessarily reflect the
-        // orientation of the display, instead we just use the display's real-size.
-        Rect displayRect = getDisplayRect();
-        return displayRect.width() > displayRect.height()
-                ? Configuration.ORIENTATION_LANDSCAPE
-                : Configuration.ORIENTATION_PORTRAIT;
-    }
-
-    /**
      * Returns the window rect for the RecentsActivity, based on the dimensions of the home stack.
      */
     public Rect getWindowRect() {
@@ -1081,16 +1050,6 @@
         }
     }
 
-    /**
-     * Returns whether the device has a transposed nav bar (on the right of the screen) in the
-     * current display orientation.
-     */
-    public boolean hasTransposedNavBar() {
-        Rect insets = new Rect();
-        getStableInsets(insets);
-        return insets.right > 0;
-    }
-
     private final class H extends Handler {
         private static final int ON_TASK_STACK_CHANGED = 1;
         private static final int ON_ACTIVITY_PINNED = 2;
diff --git a/packages/SystemUI/src/com/android/systemui/recents/model/RecentsTaskLoadPlan.java b/packages/SystemUI/src/com/android/systemui/recents/model/RecentsTaskLoadPlan.java
index af1628b..3979095 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/model/RecentsTaskLoadPlan.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/model/RecentsTaskLoadPlan.java
@@ -100,12 +100,12 @@
      * An optimization to preload the raw list of tasks. The raw tasks are saved in least-recent
      * to most-recent order.
      */
-    public synchronized void preloadRawTasks(boolean isTopTaskHome) {
+    public synchronized void preloadRawTasks(boolean isHomeStackVisible) {
         int currentUserId = UserHandle.USER_CURRENT;
         updateCurrentQuietProfilesCache(currentUserId);
         SystemServicesProxy ssp = Recents.getSystemServices();
         mRawTasks = ssp.getRecentTasks(ActivityManager.getMaxRecentTasksStatic(),
-                currentUserId, isTopTaskHome, mCurrentQuietProfiles);
+                currentUserId, isHomeStackVisible, mCurrentQuietProfiles);
 
         // Since the raw tasks are given in most-recent to least-recent order, we need to reverse it
         Collections.reverse(mRawTasks);
@@ -120,12 +120,12 @@
      * - least-recent to most-recent stack tasks
      * - least-recent to most-recent freeform tasks
      */
-    public synchronized void preloadPlan(RecentsTaskLoader loader, int topTaskId,
-            boolean isTopTaskHome) {
+    public synchronized void preloadPlan(RecentsTaskLoader loader, int runningTaskId,
+            boolean isHomeStackVisible) {
         Resources res = mContext.getResources();
         ArrayList<Task> allTasks = new ArrayList<>();
         if (mRawTasks == null) {
-            preloadRawTasks(isTopTaskHome);
+            preloadRawTasks(isHomeStackVisible);
         }
 
         SparseArray<Task.TaskKey> affiliatedTasks = new SparseArray<>();
@@ -182,7 +182,7 @@
             boolean isFreeformTask = SystemServicesProxy.isFreeformStack(t.stackId);
             boolean isStackTask = isFreeformTask || (!isHistoricalTask(t) ||
                     (t.lastActiveTime >= lastStackActiveTime && i >= (taskCount - MIN_NUM_TASKS)));
-            boolean isLaunchTarget = taskKey.id == topTaskId;
+            boolean isLaunchTarget = taskKey.id == runningTaskId;
             if (isStackTask && newLastStackActiveTime < 0) {
                 newLastStackActiveTime = t.lastActiveTime;
             }
@@ -196,7 +196,7 @@
             Drawable icon = isStackTask
                     ? loader.getAndUpdateActivityIcon(taskKey, t.taskDescription, res, false)
                     : null;
-            Bitmap thumbnail = loader.getAndUpdateThumbnail(taskKey, false);
+            Bitmap thumbnail = loader.getAndUpdateThumbnail(taskKey, false /* loadIfNotCached */);
             int activityColor = loader.getActivityPrimaryColor(t.taskDescription);
             int backgroundColor = loader.getActivityBackgroundColor(t.taskDescription);
             boolean isSystemApp = (info != null) &&
@@ -256,7 +256,8 @@
             if (opts.loadThumbnails && (isRunningTask || isVisibleThumbnail)) {
                 if (task.thumbnail == null || isRunningTask) {
                     if (config.svelteLevel <= RecentsConfiguration.SVELTE_LIMIT_CACHE) {
-                        task.thumbnail = loader.getAndUpdateThumbnail(taskKey, true);
+                        task.thumbnail = loader.getAndUpdateThumbnail(taskKey,
+                                true /* loadIfNotCached */);
                     } else if (config.svelteLevel == RecentsConfiguration.SVELTE_DISABLE_CACHE) {
                         loadQueue.addTask(task);
                     }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/model/RecentsTaskLoader.java b/packages/SystemUI/src/com/android/systemui/recents/model/RecentsTaskLoader.java
index 82c81ae..9460b64 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/model/RecentsTaskLoader.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/model/RecentsTaskLoader.java
@@ -36,7 +36,9 @@
 import com.android.systemui.recents.RecentsDebugFlags;
 import com.android.systemui.recents.events.activity.PackagesChangedEvent;
 import com.android.systemui.recents.misc.SystemServicesProxy;
+import com.android.systemui.recents.misc.Utilities;
 
+import java.io.PrintWriter;
 import java.util.Map;
 import java.util.concurrent.ConcurrentLinkedQueue;
 
@@ -331,8 +333,9 @@
     }
 
     /** Preloads recents tasks using the specified plan to store the output. */
-    public void preloadTasks(RecentsTaskLoadPlan plan, int topTaskId, boolean isTopTaskHome) {
-        plan.preloadPlan(this, topTaskId, isTopTaskHome);
+    public void preloadTasks(RecentsTaskLoadPlan plan, int runningTaskId,
+            boolean isHomeStackVisible) {
+        plan.preloadPlan(this, runningTaskId, isHomeStackVisible);
     }
 
     /** Begins loading the heavy task data according to the specified options. */
@@ -353,23 +356,15 @@
 
     /**
      * Acquires the task resource data directly from the cache, loading if necessary.
-     *
-     * @param fetchAndInvalidateThumbnails If set, will try loading thumbnails, invalidating them
-     *                                     in the cache and loading if necessary. Otherwise, do not
-     *                                     load the thumbnail unless the icon also has to be loaded.
      */
-    public void loadTaskData(Task t, boolean fetchAndInvalidateThumbnails) {
+    public void loadTaskData(Task t) {
         Drawable icon = mIconCache.getAndInvalidateIfModified(t.key);
         Bitmap thumbnail = null;
         ActivityManager.TaskThumbnailInfo thumbnailInfo = null;
-        if (fetchAndInvalidateThumbnails) {
-            ThumbnailData thumbnailData = mThumbnailCache.getAndInvalidateIfModified(t.key);
-            if (thumbnailData != null) {
-                thumbnail = thumbnailData.thumbnail;
-                thumbnailInfo = thumbnailData.thumbnailInfo;
-            }
-        } else {
-            thumbnail = mDefaultThumbnail;
+        ThumbnailData thumbnailData = mThumbnailCache.getAndInvalidateIfModified(t.key);
+        if (thumbnailData != null) {
+            thumbnail = thumbnailData.thumbnail;
+            thumbnailInfo = thumbnailData.thumbnailInfo;
         }
 
         // Grab the thumbnail/icon from the cache, if either don't exist, then trigger a reload and
@@ -632,4 +627,14 @@
             }
         }
     }
+
+    public void dump(String prefix, PrintWriter writer) {
+        String innerPrefix = prefix + "  ";
+
+        writer.print(prefix); writer.println(TAG);
+        writer.print(prefix); writer.println("Icon Cache");
+        mIconCache.dump(innerPrefix, writer);
+        writer.print(prefix); writer.println("Thumbnail Cache");
+        mThumbnailCache.dump(innerPrefix, writer);
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/model/Task.java b/packages/SystemUI/src/com/android/systemui/recents/model/Task.java
index 68c46a9..c6528a1 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/model/Task.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/model/Task.java
@@ -338,9 +338,18 @@
 
     public void dump(String prefix, PrintWriter writer) {
         writer.print(prefix); writer.print(key);
-        if (affiliationTaskId != key.id) {
+        if (isAffiliatedTask()) {
             writer.print(" "); writer.print("affTaskId=" + affiliationTaskId);
         }
+        if (!isDockable) {
+            writer.print(" dockable=N");
+        }
+        if (isLaunchTarget) {
+            writer.print(" launchTarget=Y");
+        }
+        if (isFreeformTask()) {
+            writer.print(" freeform=Y");
+        }
         writer.print(" "); writer.print(title);
         writer.println();
     }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/model/TaskKeyLruCache.java b/packages/SystemUI/src/com/android/systemui/recents/model/TaskKeyLruCache.java
index 748d8ed..c63a494 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/model/TaskKeyLruCache.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/model/TaskKeyLruCache.java
@@ -20,6 +20,9 @@
 import android.util.LruCache;
 import android.util.SparseArray;
 
+import java.io.PrintWriter;
+import java.util.ArrayList;
+
 /**
  * A mapping of {@link Task.TaskKey} to value, with additional LRU functionality where the least
  * recently referenced key/values will be evicted as more values than the given cache size are
@@ -112,4 +115,16 @@
     final void trimToSize(int cacheSize) {
         mCache.trimToSize(cacheSize);
     }
+
+    public void dump(String prefix, PrintWriter writer) {
+        String innerPrefix = prefix + "  ";
+
+        writer.print(prefix); writer.print(TAG);
+        writer.print(" numEntries="); writer.print(mKeys.size());
+        writer.println();
+        int keyCount = mKeys.size();
+        for (int i = 0; i < keyCount; i++) {
+            writer.print(innerPrefix); writer.println(mKeys.get(mKeys.keyAt(i)));
+        }
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/model/TaskStack.java b/packages/SystemUI/src/com/android/systemui/recents/model/TaskStack.java
index 95e276f..f42eea3 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/model/TaskStack.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/model/TaskStack.java
@@ -30,21 +30,26 @@
 import android.animation.AnimatorSet;
 import android.animation.ObjectAnimator;
 import android.animation.PropertyValuesHolder;
-import android.animation.RectEvaluator;
+import android.annotation.IntDef;
 import android.content.ComponentName;
 import android.content.Context;
 import android.content.res.Configuration;
 import android.content.res.Resources;
+import android.graphics.Canvas;
 import android.graphics.Color;
+import android.graphics.Paint;
+import android.graphics.Point;
 import android.graphics.Rect;
 import android.graphics.RectF;
 import android.graphics.drawable.ColorDrawable;
 import android.util.ArrayMap;
 import android.util.ArraySet;
+import android.util.IntProperty;
 import android.util.SparseArray;
 import android.view.animation.Interpolator;
 
 import com.android.internal.policy.DockedDividerUtils;
+import com.android.systemui.Interpolators;
 import com.android.systemui.R;
 import com.android.systemui.recents.Recents;
 import com.android.systemui.recents.RecentsDebugFlags;
@@ -56,6 +61,8 @@
 import com.android.systemui.recents.views.TaskStackLayoutAlgorithm;
 
 import java.io.PrintWriter;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
@@ -240,22 +247,30 @@
      */
     public static class DockState implements DropTarget {
 
-        private static final int DOCK_AREA_ALPHA = 192;
-        public static final DockState NONE = new DockState(DOCKED_INVALID, -1, 80, null, null, null);
+        // The rotation to apply to the hint text
+        @Retention(RetentionPolicy.SOURCE)
+        @IntDef({HORIZONTAL, VERTICAL})
+        public @interface TextOrientation {}
+        private static final int HORIZONTAL = 0;
+        private static final int VERTICAL = 1;
+
+        private static final int DOCK_AREA_ALPHA = 80;
+        public static final DockState NONE = new DockState(DOCKED_INVALID, -1, 80, 255, HORIZONTAL,
+                null, null, null);
         public static final DockState LEFT = new DockState(DOCKED_LEFT,
-                DOCKED_STACK_CREATE_MODE_TOP_OR_LEFT, DOCK_AREA_ALPHA,
+                DOCKED_STACK_CREATE_MODE_TOP_OR_LEFT, DOCK_AREA_ALPHA, 0, VERTICAL,
                 new RectF(0, 0, 0.125f, 1), new RectF(0, 0, 0.125f, 1),
                 new RectF(0, 0, 0.5f, 1));
         public static final DockState TOP = new DockState(DOCKED_TOP,
-                DOCKED_STACK_CREATE_MODE_TOP_OR_LEFT, DOCK_AREA_ALPHA,
+                DOCKED_STACK_CREATE_MODE_TOP_OR_LEFT, DOCK_AREA_ALPHA, 0, HORIZONTAL,
                 new RectF(0, 0, 1, 0.125f), new RectF(0, 0, 1, 0.125f),
                 new RectF(0, 0, 1, 0.5f));
         public static final DockState RIGHT = new DockState(DOCKED_RIGHT,
-                DOCKED_STACK_CREATE_MODE_BOTTOM_OR_RIGHT, DOCK_AREA_ALPHA,
+                DOCKED_STACK_CREATE_MODE_BOTTOM_OR_RIGHT, DOCK_AREA_ALPHA, 0, VERTICAL,
                 new RectF(0.875f, 0, 1, 1), new RectF(0.875f, 0, 1, 1),
                 new RectF(0.5f, 0, 1, 1));
         public static final DockState BOTTOM = new DockState(DOCKED_BOTTOM,
-                DOCKED_STACK_CREATE_MODE_BOTTOM_OR_RIGHT, DOCK_AREA_ALPHA,
+                DOCKED_STACK_CREATE_MODE_BOTTOM_OR_RIGHT, DOCK_AREA_ALPHA, 0, HORIZONTAL,
                 new RectF(0, 0.875f, 1, 1), new RectF(0, 0.875f, 1, 1),
                 new RectF(0, 0.5f, 1, 1));
 
@@ -267,51 +282,137 @@
         }
 
         // Represents the view state of this dock state
-        public class ViewState {
+        public static class ViewState {
+            private static final IntProperty<ViewState> HINT_ALPHA =
+                    new IntProperty<ViewState>("drawableAlpha") {
+                        @Override
+                        public void setValue(ViewState object, int alpha) {
+                            object.mHintTextAlpha = alpha;
+                            object.dockAreaOverlay.invalidateSelf();
+                        }
+
+                        @Override
+                        public Integer get(ViewState object) {
+                            return object.mHintTextAlpha;
+                        }
+                    };
+
             public final int dockAreaAlpha;
             public final ColorDrawable dockAreaOverlay;
-            private AnimatorSet dockAreaOverlayAnimator;
+            public final int hintTextAlpha;
+            public final int hintTextOrientation;
 
-            private ViewState(int alpha) {
-                dockAreaAlpha = alpha;
+            private final int mHintTextResId;
+            private String mHintText;
+            private Paint mHintTextPaint;
+            private Point mHintTextBounds = new Point();
+            private int mHintTextAlpha = 255;
+            private AnimatorSet mDockAreaOverlayAnimator;
+            private Rect mTmpRect = new Rect();
+
+            private ViewState(int areaAlpha, int hintAlpha, @TextOrientation int hintOrientation,
+                    int hintTextResId) {
+                dockAreaAlpha = areaAlpha;
                 dockAreaOverlay = new ColorDrawable(0xFFffffff);
                 dockAreaOverlay.setAlpha(0);
+                hintTextAlpha = hintAlpha;
+                hintTextOrientation = hintOrientation;
+                mHintTextResId = hintTextResId;
+                mHintTextPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
+                mHintTextPaint.setColor(Color.WHITE);
+            }
+
+            /**
+             * Updates the view state with the given context.
+             */
+            public void update(Context context) {
+                Resources res = context.getResources();
+                mHintText = context.getString(mHintTextResId);
+                mHintTextPaint.setTextSize(res.getDimensionPixelSize(
+                        R.dimen.recents_drag_hint_text_size));
+                mHintTextPaint.getTextBounds(mHintText, 0, mHintText.length(), mTmpRect);
+                mHintTextBounds.set((int) mHintTextPaint.measureText(mHintText), mTmpRect.height());
+            }
+
+            /**
+             * Draws the current view state.
+             */
+            public void draw(Canvas canvas) {
+                // Draw the overlay background
+                if (dockAreaOverlay.getAlpha() > 0) {
+                    dockAreaOverlay.draw(canvas);
+                }
+
+                // Draw the hint text
+                if (mHintTextAlpha > 0) {
+                    Rect bounds = dockAreaOverlay.getBounds();
+                    int x = bounds.left + (bounds.width() - mHintTextBounds.x) / 2;
+                    int y = bounds.top + (bounds.height() + mHintTextBounds.y) / 2;
+                    mHintTextPaint.setAlpha(mHintTextAlpha);
+                    if (hintTextOrientation == VERTICAL) {
+                        canvas.save();
+                        canvas.rotate(-90f, bounds.centerX(), bounds.centerY());
+                    }
+                    canvas.drawText(mHintText, x, y, mHintTextPaint);
+                    if (hintTextOrientation == VERTICAL) {
+                        canvas.restore();
+                    }
+                }
             }
 
             /**
              * Creates a new bounds and alpha animation.
              */
-            public void startAnimation(Rect bounds, int alpha, int duration,
+            public void startAnimation(Rect bounds, int areaAlpha, int hintAlpha, int duration,
                     Interpolator interpolator, boolean animateAlpha, boolean animateBounds) {
-                if (dockAreaOverlayAnimator != null) {
-                    dockAreaOverlayAnimator.cancel();
+                if (mDockAreaOverlayAnimator != null) {
+                    mDockAreaOverlayAnimator.cancel();
                 }
 
+                ObjectAnimator anim;
                 ArrayList<Animator> animators = new ArrayList<>();
-                if (dockAreaOverlay.getAlpha() != alpha) {
+                if (dockAreaOverlay.getAlpha() != areaAlpha) {
                     if (animateAlpha) {
-                        animators.add(ObjectAnimator.ofInt(dockAreaOverlay,
-                                Utilities.DRAWABLE_ALPHA, dockAreaOverlay.getAlpha(), alpha));
+                        anim = ObjectAnimator.ofInt(dockAreaOverlay,
+                                Utilities.DRAWABLE_ALPHA, dockAreaOverlay.getAlpha(), areaAlpha);
+                        anim.setDuration(duration);
+                        anim.setInterpolator(interpolator);
+                        animators.add(anim);
                     } else {
-                        dockAreaOverlay.setAlpha(alpha);
+                        dockAreaOverlay.setAlpha(areaAlpha);
+                    }
+                }
+                if (mHintTextAlpha != hintAlpha) {
+                    if (animateAlpha) {
+                        anim = ObjectAnimator.ofInt(this, HINT_ALPHA, mHintTextAlpha,
+                                hintAlpha);
+                        anim.setDuration(150);
+                        anim.setInterpolator(hintAlpha > mHintTextAlpha
+                                ? Interpolators.ALPHA_IN
+                                : Interpolators.ALPHA_OUT);
+                        animators.add(anim);
+                    } else {
+                        mHintTextAlpha = hintAlpha;
+                        dockAreaOverlay.invalidateSelf();
                     }
                 }
                 if (bounds != null && !dockAreaOverlay.getBounds().equals(bounds)) {
                     if (animateBounds) {
                         PropertyValuesHolder prop = PropertyValuesHolder.ofObject(
                                 Utilities.DRAWABLE_RECT, Utilities.RECT_EVALUATOR,
-                                dockAreaOverlay.getBounds(), bounds);
-                        animators.add(ObjectAnimator.ofPropertyValuesHolder(dockAreaOverlay, prop));
+                                new Rect(dockAreaOverlay.getBounds()), bounds);
+                        anim = ObjectAnimator.ofPropertyValuesHolder(dockAreaOverlay, prop);
+                        anim.setDuration(duration);
+                        anim.setInterpolator(interpolator);
+                        animators.add(anim);
                     } else {
                         dockAreaOverlay.setBounds(bounds);
                     }
                 }
                 if (!animators.isEmpty()) {
-                    dockAreaOverlayAnimator = new AnimatorSet();
-                    dockAreaOverlayAnimator.playTogether(animators);
-                    dockAreaOverlayAnimator.setDuration(duration);
-                    dockAreaOverlayAnimator.setInterpolator(interpolator);
-                    dockAreaOverlayAnimator.start();
+                    mDockAreaOverlayAnimator = new AnimatorSet();
+                    mDockAreaOverlayAnimator.playTogether(animators);
+                    mDockAreaOverlayAnimator.start();
                 }
             }
         }
@@ -331,17 +432,26 @@
          *                              the initial touch area.  This is also the new dock area to
          *                              draw.
          */
-        DockState(int dockSide, int createMode, int dockAreaAlpha, RectF touchArea, RectF dockArea,
+        DockState(int dockSide, int createMode, int dockAreaAlpha, int hintTextAlpha,
+                  @TextOrientation int hintTextOrientation, RectF touchArea, RectF dockArea,
                   RectF expandedTouchDockArea) {
             this.dockSide = dockSide;
             this.createMode = createMode;
-            this.viewState = new ViewState(dockAreaAlpha);
+            this.viewState = new ViewState(dockAreaAlpha, hintTextAlpha, hintTextOrientation,
+                    R.string.recents_drag_hint_message);
             this.dockArea = dockArea;
             this.touchArea = touchArea;
             this.expandedTouchDockArea = expandedTouchDockArea;
         }
 
         /**
+         * Updates the dock state with the given context.
+         */
+        public void update(Context context) {
+            viewState.update(context);
+        }
+
+        /**
          * Returns whether {@param x} and {@param y} are contained in the area scaled to the
          * given {@param width} and {@param height}.
          */
@@ -382,8 +492,9 @@
          * Returns the task stack bounds with the given {@param width} and
          * {@param height}.
          */
-        public Rect getDockedTaskStackBounds(int width, int height, int dividerSize, Rect insets,
-                TaskStackLayoutAlgorithm layoutAlgorithm, Resources res, Rect windowRectOut) {
+        public Rect getDockedTaskStackBounds(Rect displayRect, int width, int height,
+                int dividerSize, Rect insets, TaskStackLayoutAlgorithm layoutAlgorithm,
+                Resources res, Rect windowRectOut) {
             // Calculate the inverse docked task bounds
             boolean isHorizontalDivision =
                     res.getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT;
@@ -400,7 +511,8 @@
             int top = dockArea.bottom < 1f
                     ? 0
                     : insets.top;
-            layoutAlgorithm.getTaskStackBounds(windowRectOut, top, insets.right, taskStackBounds);
+            layoutAlgorithm.getTaskStackBounds(displayRect, windowRectOut, top, insets.right,
+                    taskStackBounds);
             return taskStackBounds;
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvActivity.java b/packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvActivity.java
index 7378102..9dc9c4c 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvActivity.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvActivity.java
@@ -26,6 +26,7 @@
 import android.view.View;
 import android.view.ViewTreeObserver.OnPreDrawListener;
 import android.view.WindowManager;
+import android.view.accessibility.AccessibilityEvent;
 import android.widget.FrameLayout.LayoutParams;
 
 import com.android.systemui.R;
@@ -131,6 +132,7 @@
                 @Override
                 public void onRecentsFocused() {
                     mRecentsView.requestFocus();
+                    mRecentsView.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED);
                 }
             };
     private final View.OnFocusChangeListener mPipViewFocusChangeListener =
@@ -215,7 +217,7 @@
 
     boolean dismissRecentsToLaunchTargetTaskOrHome(boolean animate) {
         SystemServicesProxy ssp = Recents.getSystemServices();
-        if (ssp.isRecentsTopMost(ssp.getTopMostTask(), null)) {
+        if (ssp.isRecentsActivityVisible()) {
             // If we have a focused Task, launch that Task now
             if (mRecentsView.launchPreviousTask(animate)) {
               return true;
@@ -228,7 +230,7 @@
 
     boolean dismissRecentsToFocusedTaskOrHome() {
         SystemServicesProxy ssp = Recents.getSystemServices();
-        if (ssp.isRecentsTopMost(ssp.getTopMostTask(), null)) {
+        if (ssp.isRecentsActivityVisible()) {
             // If we have a focused Task, launch that Task now
             if (mRecentsView.launchFocusedTask()) return true;
             // If none of the other cases apply, then just go Home
@@ -261,7 +263,7 @@
 
     boolean dismissRecentsToHomeIfVisible(boolean animated) {
         SystemServicesProxy ssp = Recents.getSystemServices();
-        if (ssp.isRecentsTopMost(ssp.getTopMostTask(), null)) {
+        if (ssp.isRecentsActivityVisible()) {
             // Return to Home
             dismissRecentsToHome(animated);
             return true;
diff --git a/packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvImpl.java b/packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvImpl.java
index dc0d1f1..59ea358 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvImpl.java
@@ -48,8 +48,8 @@
     }
 
     @Override
-    protected void startRecentsActivity(ActivityManager.RunningTaskInfo topTask,
-            boolean isTopTaskHome, boolean animate) {
+    protected void startRecentsActivity(ActivityManager.RunningTaskInfo runningTask,
+            boolean isHomeStackVisible, boolean animate, int growTarget) {
         RecentsTaskLoader loader = Recents.getTaskLoader();
 
         // In the case where alt-tab is triggered, we never get a preloadRecents() call, so we
@@ -60,25 +60,25 @@
             sInstanceLoadPlan = loader.createLoadPlan(mContext);
         }
         if (mTriggeredFromAltTab || !sInstanceLoadPlan.hasTasks()) {
-            loader.preloadTasks(sInstanceLoadPlan, topTask.id, isTopTaskHome);
+            loader.preloadTasks(sInstanceLoadPlan, runningTask.id, isHomeStackVisible);
         }
         TaskStack stack = sInstanceLoadPlan.getTaskStack();
 
         if (!animate) {
             ActivityOptions opts = ActivityOptions.makeCustomAnimation(mContext, -1, -1);
-            startRecentsActivity(topTask, opts, false /* fromHome */, false /* fromThumbnail*/);
+            startRecentsActivity(runningTask, opts, false /* fromHome */, false /* fromThumbnail*/);
             return;
         }
 
         boolean hasRecentTasks = stack.getTaskCount() > 0;
-        boolean useThumbnailTransition = (topTask != null) && !isTopTaskHome && hasRecentTasks;
+        boolean useThumbnailTransition = (runningTask != null) && !isHomeStackVisible && hasRecentTasks;
 
         if (useThumbnailTransition) {
             // Try starting with a thumbnail transition
-            ActivityOptions opts = getThumbnailTransitionActivityOptionsForTV(topTask,
+            ActivityOptions opts = getThumbnailTransitionActivityOptionsForTV(runningTask,
                     stack.getTaskCount());
             if (opts != null) {
-                startRecentsActivity(topTask, opts, false /* fromHome */, true /* fromThumbnail */);
+                startRecentsActivity(runningTask, opts, false /* fromHome */, true /* fromThumbnail */);
             } else {
                 // Fall through below to the non-thumbnail transition
                 useThumbnailTransition = false;
@@ -86,19 +86,19 @@
         }
 
         if (!useThumbnailTransition) {
-            startRecentsActivity(topTask, null, true /* fromHome */, false /* fromThumbnail */);
+            startRecentsActivity(runningTask, null, true /* fromHome */, false /* fromThumbnail */);
         }
         mLastToggleTime = SystemClock.elapsedRealtime();
     }
 
-    protected void startRecentsActivity(ActivityManager.RunningTaskInfo topTask,
+    protected void startRecentsActivity(ActivityManager.RunningTaskInfo runningTask,
             ActivityOptions opts, boolean fromHome, boolean fromThumbnail) {
         // Update the configuration based on the launch options
         RecentsConfiguration config = Recents.getConfiguration();
         RecentsActivityLaunchState launchState = config.getLaunchState();
         launchState.launchedFromHome = fromHome;
         launchState.launchedFromApp = fromThumbnail;
-        launchState.launchedToTaskId = (topTask != null) ? topTask.id : -1;
+        launchState.launchedToTaskId = (runningTask != null) ? runningTask.id : -1;
         launchState.launchedWithAltTab = mTriggeredFromAltTab;
 
         Intent intent = new Intent();
@@ -119,10 +119,10 @@
      * Creates the activity options for an app->recents transition on TV.
      */
     private ActivityOptions getThumbnailTransitionActivityOptionsForTV(
-            ActivityManager.RunningTaskInfo topTask, int numTasks) {
+            ActivityManager.RunningTaskInfo runningTask, int numTasks) {
         Rect rect = TaskCardView.getStartingCardThumbnailRect(mContext, numTasks);
         SystemServicesProxy ssp = Recents.getSystemServices();
-        ThumbnailData thumbnailData = ssp.getTaskThumbnail(topTask.id);
+        ThumbnailData thumbnailData = ssp.getTaskThumbnail(runningTask.id);
         if (thumbnailData.thumbnail != null) {
             Bitmap thumbnail = Bitmap.createScaledBitmap(thumbnailData.thumbnail, rect.width(),
                     rect.height(), false);
diff --git a/packages/SystemUI/src/com/android/systemui/recents/tv/animations/DismissAnimationsHolder.java b/packages/SystemUI/src/com/android/systemui/recents/tv/animations/DismissAnimationsHolder.java
index 66d8576..084fc87 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/tv/animations/DismissAnimationsHolder.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/tv/animations/DismissAnimationsHolder.java
@@ -15,38 +15,64 @@
  */
 package com.android.systemui.recents.tv.animations;
 
-
-import android.animation.Animator;
+import android.animation.Animator.AnimatorListener;
 import android.content.res.Resources;
+import android.graphics.drawable.TransitionDrawable;
+import android.util.TypedValue;
 import android.view.View;
+import android.widget.ImageView;
 import android.widget.LinearLayout;
+import android.widget.TextView;
 import com.android.systemui.Interpolators;
 import com.android.systemui.recents.tv.views.TaskCardView;
 
 import com.android.systemui.R;
 
 public class DismissAnimationsHolder {
-    private LinearLayout mDismissArea;
     private LinearLayout mInfoField;
     private View mThumbnailView;
+
     private int mDismissEnterYDelta;
     private int mDismissStartYDelta;
+
+    private ImageView mCardDismissIcon;
+    private TransitionDrawable mDismissDrawable;
+    private TextView mDismissText;
+
+    private float mDismissUnselectedAlpha;
     private long mShortDuration;
     private long mLongDuration;
 
     public DismissAnimationsHolder(TaskCardView taskCardView) {
+
         mInfoField = (LinearLayout) taskCardView.findViewById(R.id.card_info_field);
-        mDismissArea = (LinearLayout) taskCardView.findViewById(R.id.card_dismiss);
         mThumbnailView = taskCardView.findViewById(R.id.card_view_thumbnail);
+        mCardDismissIcon = (ImageView) taskCardView.findViewById(R.id.dismiss_icon);
+        mDismissDrawable = (TransitionDrawable) mCardDismissIcon.getDrawable();
+        mDismissDrawable.setCrossFadeEnabled(true);
+        mDismissText = (TextView) taskCardView.findViewById(R.id.card_dismiss_text);
+
         Resources res = taskCardView.getResources();
         mDismissEnterYDelta = res.getDimensionPixelOffset(R.dimen.recents_tv_dismiss_shift_down);
         mDismissStartYDelta = mDismissEnterYDelta * 2;
         mShortDuration =  res.getInteger(R.integer.dismiss_short_duration);
         mLongDuration =  res.getInteger(R.integer.dismiss_long_duration);
+        mDismissUnselectedAlpha = res.getFloat(R.integer.dismiss_unselected_alpha);
     }
 
     public void startEnterAnimation() {
-        mDismissArea.animate()
+        mCardDismissIcon.animate()
+                .setDuration(mShortDuration)
+                .setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
+                .alpha(1.0f)
+                .withStartAction(new Runnable() {
+                    @Override
+                    public void run() {
+                        mDismissDrawable.startTransition(0);
+                    }
+                });
+
+        mDismissText.animate()
                 .setDuration(mShortDuration)
                 .setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
                 .alpha(1.0f);
@@ -65,7 +91,18 @@
     }
 
     public void startExitAnimation() {
-        mDismissArea.animate()
+        mCardDismissIcon.animate()
+                .setDuration(mShortDuration)
+                .setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
+                .alpha(mDismissUnselectedAlpha)
+                .withEndAction(new Runnable() {
+                    @Override
+                    public void run() {
+                        mDismissDrawable.reverseTransition(0);
+                    }
+                });
+
+        mDismissText.animate()
                 .setDuration(mShortDuration)
                 .setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
                 .alpha(0.0f);
@@ -83,8 +120,19 @@
                 .alpha(1.0f);
     }
 
-    public void startDismissAnimation(Animator.AnimatorListener listener) {
-        mDismissArea.animate()
+    public void startDismissAnimation(AnimatorListener listener) {
+        mCardDismissIcon.animate()
+                .setDuration(mShortDuration)
+                .setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
+                .alpha(0.0f)
+                .withEndAction(new Runnable() {
+                    @Override
+                    public void run() {
+                        mDismissDrawable.reverseTransition(0);
+                    }
+                });
+
+        mDismissText.animate()
                 .setDuration(mShortDuration)
                 .setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
                 .alpha(0.0f);
@@ -109,5 +157,7 @@
         mInfoField.animate().setListener(null);
         mThumbnailView.setAlpha(1.0f);
         mThumbnailView.setTranslationY(0);
+        mCardDismissIcon.setAlpha(mDismissUnselectedAlpha);
+        mDismissText.setAlpha(0.0f);
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/tv/animations/ViewFocusAnimator.java b/packages/SystemUI/src/com/android/systemui/recents/tv/animations/ViewFocusAnimator.java
index 9edd5af..c3efe64 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/tv/animations/ViewFocusAnimator.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/tv/animations/ViewFocusAnimator.java
@@ -36,15 +36,16 @@
     private final float mSelectedZDelta;
     private final float mUnselectedSpacing;
     private final float mSelectedSpacingDelta;
+    private final float mDismissIconAlpha;
     private final int mAnimDuration;
     private final Interpolator mFocusInterpolator;
 
-    protected View mTargetView;
+    protected TaskCardView mTargetView;
     private float mFocusProgress;
 
     ObjectAnimator mFocusAnimation;
 
-    public ViewFocusAnimator(View view) {
+    public ViewFocusAnimator(TaskCardView view) {
         mTargetView = view;
         final Resources res = view.getResources();
 
@@ -71,6 +72,8 @@
         mFocusAnimation.setDuration(mAnimDuration);
         mFocusAnimation.setInterpolator(mFocusInterpolator);
 
+        mDismissIconAlpha = res.getFloat(R.integer.dismiss_unselected_alpha);
+
         setFocusProgress(0.0f);
 
         mFocusAnimation.addListener(new AnimatorListenerAdapter() {
@@ -99,9 +102,8 @@
         mTargetView.setPadding((int) spacing, mTargetView.getPaddingTop(),
                 (int) spacing, mTargetView.getPaddingBottom());
 
-        if (mTargetView instanceof TaskCardView) {
-            ((TaskCardView) mTargetView).getThumbnailView().setZ(z);
-        }
+        mTargetView.getDismissIconView().setAlpha(mDismissIconAlpha * level);
+        mTargetView.getThumbnailView().setZ(z);
     }
 
     public float getFocusProgress() {
diff --git a/packages/SystemUI/src/com/android/systemui/recents/tv/views/TaskCardView.java b/packages/SystemUI/src/com/android/systemui/recents/tv/views/TaskCardView.java
index a72a7e6..ef8a54b7 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/tv/views/TaskCardView.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/tv/views/TaskCardView.java
@@ -21,6 +21,7 @@
 import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.graphics.Bitmap;
+import android.graphics.Outline;
 import android.graphics.Point;
 import android.graphics.Rect;
 import android.graphics.drawable.Drawable;
@@ -30,6 +31,7 @@
 import android.view.Display;
 import android.view.KeyEvent;
 import android.view.View;
+import android.view.ViewOutlineProvider;
 import android.view.WindowManager;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
@@ -45,10 +47,12 @@
 
     private static final String TAG = "TaskCardView";
     private View mThumbnailView;
+    private View mDismissIconView;
     private TextView mTitleTextView;
     private ImageView mBadgeView;
     private Task mTask;
     private boolean mDismissState;
+    private int mCornerRadius;
 
     private ViewFocusAnimator mViewFocusAnimator;
     private DismissAnimationsHolder mDismissAnimationsHolder;
@@ -75,8 +79,11 @@
         mThumbnailView = findViewById(R.id.card_view_thumbnail);
         mTitleTextView = (TextView) findViewById(R.id.card_title_text);
         mBadgeView = (ImageView) findViewById(R.id.card_extra_badge);
+        mDismissIconView = findViewById(R.id.dismiss_icon);
         mDismissAnimationsHolder = new DismissAnimationsHolder(this);
         View title = findViewById(R.id.card_info_field);
+        mCornerRadius = getResources().getDimensionPixelSize(
+                R.dimen.recents_task_view_rounded_corners_radius);
         mRecentsRowFocusAnimationHolder = new RecentsRowFocusAnimationHolder(this, title);
         mViewFocusAnimator = new ViewFocusAnimator(this);
     }
@@ -272,13 +279,18 @@
 
     private void setAsScreenShotView(Bitmap screenshot, ImageView screenshotView) {
         LayoutParams lp = (LayoutParams) screenshotView.getLayoutParams();
-        lp.width = getResources()
-                .getDimensionPixelSize(R.dimen.recents_tv_card_width);
-        lp.height = getResources()
-                .getDimensionPixelSize(R.dimen.recents_tv_screenshot_height);
+        lp.width = LayoutParams.MATCH_PARENT;
+        lp.height = LayoutParams.MATCH_PARENT;
 
         screenshotView.setLayoutParams(lp);
         screenshotView.setImageBitmap(screenshot);
+        screenshotView.setClipToOutline(true);
+        screenshotView.setOutlineProvider(new ViewOutlineProvider() {
+            @Override
+            public void getOutline(View view, Outline outline) {
+                outline.setRoundRect(0, 0, view.getWidth(), view.getHeight(), mCornerRadius);
+            }
+        });
     }
 
     private void setAsBannerView(Drawable banner, ImageView bannerView) {
@@ -306,4 +318,8 @@
     public View getThumbnailView() {
         return mThumbnailView;
     }
+
+    public View getDismissIconView() {
+        return mDismissIconView;
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/AnimationProps.java b/packages/SystemUI/src/com/android/systemui/recents/views/AnimationProps.java
index 48e1370..5e87e2a 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/AnimationProps.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/AnimationProps.java
@@ -18,6 +18,7 @@
 
 import android.animation.Animator;
 import android.animation.AnimatorSet;
+import android.animation.ValueAnimator;
 import android.annotation.IntDef;
 import android.util.SparseArray;
 import android.util.SparseLongArray;
@@ -53,6 +54,7 @@
     public static final int FOCUS_STATE = 8;
 
     private SparseLongArray mPropStartDelay;
+    private SparseLongArray mPropInitialPlayTime;
     private SparseLongArray mPropDuration;
     private SparseArray<Interpolator> mPropInterpolators;
     private Animator.AnimatorListener mListener;
@@ -116,10 +118,14 @@
      * Applies the specific start delay, duration and interpolator to the given {@param animator}
      * for the specified {@param propertyType}.
      */
-    public <T extends Animator> T apply(@PropType int propertyType, T animator) {
+    public <T extends ValueAnimator> T apply(@PropType int propertyType, T animator) {
         animator.setStartDelay(getStartDelay(propertyType));
         animator.setDuration(getDuration(propertyType));
         animator.setInterpolator(getInterpolator(propertyType));
+        long initialPlayTime = getInitialPlayTime(propertyType);
+        if (initialPlayTime != 0) {
+            animator.setCurrentPlayTime(initialPlayTime);
+        }
         return animator;
     }
 
@@ -135,6 +141,17 @@
     }
 
     /**
+     * Sets a initial play time for a specific property.
+     */
+    public AnimationProps setInitialPlayTime(@PropType int propertyType, int initialPlayTime) {
+        if (mPropInitialPlayTime == null) {
+            mPropInitialPlayTime = new SparseLongArray();
+        }
+        mPropInitialPlayTime.append(propertyType, initialPlayTime);
+        return this;
+    }
+
+    /**
      * Returns the start delay for a specific property.
      */
     public long getStartDelay(@PropType int propertyType) {
@@ -200,6 +217,20 @@
     }
 
     /**
+     * Returns the initial play time for a specific property, falling back to the general initial
+     * play time if there is no specific property interpolator.
+     */
+    public long getInitialPlayTime(@PropType int propertyType) {
+        if (mPropInitialPlayTime != null) {
+            if (mPropInitialPlayTime.indexOfKey(propertyType) != -1) {
+                return mPropInitialPlayTime.get(propertyType);
+            }
+            return mPropInitialPlayTime.get(ALL, 0);
+        }
+        return 0;
+    }
+
+    /**
      * Sets an animator listener for this animation.
      */
     public AnimationProps setListener(Animator.AnimatorListener listener) {
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsTransitionHelper.java b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsTransitionHelper.java
index fd8df99..e3c3af0 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsTransitionHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsTransitionHelper.java
@@ -51,6 +51,7 @@
 import com.android.systemui.recents.misc.SystemServicesProxy;
 import com.android.systemui.recents.model.Task;
 import com.android.systemui.recents.model.TaskStack;
+import com.android.systemui.statusbar.BaseStatusBar;
 
 import java.util.ArrayList;
 import java.util.Collections;
@@ -77,12 +78,17 @@
     private Handler mHandler;
     private TaskViewTransform mTmpTransform = new TaskViewTransform();
 
-    private Runnable mStartScreenPinningRunnable = new Runnable() {
+    private class StartScreenPinningRunnableRunnable implements Runnable {
+
+        private int taskId = -1;
+
         @Override
         public void run() {
-            EventBus.getDefault().send(new ScreenPinningRequestEvent(mContext));
+            EventBus.getDefault().send(new ScreenPinningRequestEvent(mContext, taskId));
         }
-    };
+    }
+    private StartScreenPinningRunnableRunnable mStartScreenPinningRunnable
+            = new StartScreenPinningRunnableRunnable();
 
     public RecentsTransitionHelper(Context context) {
         mContext = context;
@@ -120,6 +126,7 @@
 
                     if (screenPinningRequested) {
                         // Request screen pinning after the animation runs
+                        mStartScreenPinningRunnable.taskId = task.key.id;
                         mHandler.postDelayed(mStartScreenPinningRunnable, 350);
                     }
                 }
@@ -161,6 +168,8 @@
                         animStartedListener);
             }
         }
+        Recents.getSystemServices().sendCloseSystemWindows(
+                BaseStatusBar.SYSTEM_DIALOG_REASON_HOME_KEY);
     }
 
     public IRemoteCallback wrapStartedListener(final OnAnimationStartedListener listener) {
@@ -278,12 +287,10 @@
         }
 
         // Calculate the offscreen task rect (for tasks that are not backed by views)
-        float stackScroll = stackView.getScroller().getStackScroll();
         TaskView taskView = stackView.getChildViewForTask(task);
-        TaskStackLayoutAlgorithm layoutAlgorithm = stackView.getStackAlgorithm();
-        Rect offscreenTaskRect = new Rect(layoutAlgorithm.mTaskRect);
-        offscreenTaskRect.offsetTo(offscreenTaskRect.left,
-                layoutAlgorithm.mStackRect.bottom);
+        TaskStackLayoutAlgorithm stackLayout = stackView.getStackAlgorithm();
+        Rect offscreenTaskRect = new Rect();
+        stackLayout.getFrontOfStackTransform().rect.round(offscreenTaskRect);
 
         // If this is a full screen stack, the transition will be towards the single, full screen
         // task. We only need the transition spec for this task.
@@ -296,8 +303,9 @@
             if (taskView == null) {
                 specs.add(composeOffscreenAnimationSpec(task, offscreenTaskRect));
             } else {
-                layoutAlgorithm.getStackTransformScreenCoordinates(task, stackScroll, mTmpTransform,
-                        null);
+                mTmpTransform.fillIn(taskView);
+                stackLayout.transformToScreenCoordinates(mTmpTransform,
+                        null /* windowOverrideRect */);
                 specs.add(composeAnimationSpec(stackView, taskView, mTmpTransform,
                         true /* addHeaderBitmap */));
             }
@@ -318,8 +326,9 @@
                     //       never happen)
                     specs.add(composeOffscreenAnimationSpec(t, offscreenTaskRect));
                 } else {
-                    layoutAlgorithm.getStackTransformScreenCoordinates(t, stackScroll,
-                            mTmpTransform, null);
+                    mTmpTransform.fillIn(taskView);
+                    stackLayout.transformToScreenCoordinates(mTmpTransform,
+                            null /* windowOverrideRect */);
                     specs.add(composeAnimationSpec(stackView, tv, mTmpTransform,
                             true /* addHeaderBitmap */));
                 }
@@ -397,7 +406,7 @@
         transform.rect.round(taskRect);
         if (stackView.getStack().getStackFrontMostTask(false /* includeFreeformTasks */) !=
                 taskView.getTask()) {
-            taskRect.bottom = 2 * Recents.getSystemServices().getDisplayRect().height();
+            taskRect.bottom = taskRect.top + stackView.getMeasuredHeight();
         }
         return new AppTransitionAnimationSpec(taskView.getTask().key.id, b, taskRect);
     }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java
index d55c7d8..fd27b4f 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsView.java
@@ -57,6 +57,7 @@
 import com.android.systemui.recents.events.activity.EnterRecentsWindowAnimationCompletedEvent;
 import com.android.systemui.recents.events.activity.HideStackActionButtonEvent;
 import com.android.systemui.recents.events.activity.LaunchTaskEvent;
+import com.android.systemui.recents.events.activity.MultiWindowStateChangedEvent;
 import com.android.systemui.recents.events.activity.ShowStackActionButtonEvent;
 import com.android.systemui.recents.events.ui.AllTaskViewsDismissedEvent;
 import com.android.systemui.recents.events.ui.DismissAllTaskViewsEvent;
@@ -87,11 +88,10 @@
 
     private static final String TAG = "RecentsView";
 
-    private static final int DOCK_AREA_OVERLAY_TRANSITION_DURATION = 135;
     private static final int DEFAULT_UPDATE_SCRIM_DURATION = 200;
     private static final float DEFAULT_SCRIM_ALPHA = 0.33f;
 
-    private static final int SHOW_STACK_ACTION_BUTTON_DURATION = 150;
+    private static final int SHOW_STACK_ACTION_BUTTON_DURATION = 134;
     private static final int HIDE_STACK_ACTION_BUTTON_DURATION = 100;
 
     private TaskStack mStack;
@@ -143,7 +143,6 @@
                     R.dimen.recents_task_view_rounded_corners_radius);
             mStackActionButton = (TextView) inflater.inflate(R.layout.recents_stack_action_button,
                     this, false);
-            mStackActionButton.forceHasOverlappingRendering(false);
             mStackActionButton.setOnClickListener(new View.OnClickListener() {
                 @Override
                 public void onClick(View v) {
@@ -203,9 +202,11 @@
     /**
      * Called from RecentsActivity when the task stack is updated.
      */
-    public void updateStack(TaskStack stack) {
+    public void updateStack(TaskStack stack, boolean setStackViewTasks) {
         mStack = stack;
-        mTaskStackView.setTasks(stack, true /* allowNotifyStackChanges */);
+        if (setStackViewTasks) {
+            mTaskStackView.setTasks(stack, true /* allowNotifyStackChanges */);
+        }
 
         // Update the top level view's visibilities
         if (stack.getTaskCount() > 0) {
@@ -424,10 +425,7 @@
 
         ArrayList<TaskStack.DockState> visDockStates = mTouchHandler.getVisibleDockStates();
         for (int i = visDockStates.size() - 1; i >= 0; i--) {
-            Drawable d = visDockStates.get(i).viewState.dockAreaOverlay;
-            if (d.getAlpha() > 0) {
-                d.draw(canvas);
-            }
+            visDockStates.get(i).viewState.draw(canvas);
         }
     }
 
@@ -463,18 +461,29 @@
     public final void onBusEvent(DragStartEvent event) {
         updateVisibleDockRegions(mTouchHandler.getDockStatesForCurrentOrientation(),
                 true /* isDefaultDockState */, TaskStack.DockState.NONE.viewState.dockAreaAlpha,
+                TaskStack.DockState.NONE.viewState.hintTextAlpha,
                 true /* animateAlpha */, false /* animateBounds */);
+
+        // Temporarily hide the stack action button without changing visibility
+        if (mStackActionButton != null) {
+            mStackActionButton.animate()
+                    .alpha(0f)
+                    .setDuration(HIDE_STACK_ACTION_BUTTON_DURATION)
+                    .setInterpolator(Interpolators.ALPHA_OUT)
+                    .start();
+        }
     }
 
     public final void onBusEvent(DragDropTargetChangedEvent event) {
         if (event.dropTarget == null || !(event.dropTarget instanceof TaskStack.DockState)) {
             updateVisibleDockRegions(mTouchHandler.getDockStatesForCurrentOrientation(),
                     true /* isDefaultDockState */, TaskStack.DockState.NONE.viewState.dockAreaAlpha,
+                    TaskStack.DockState.NONE.viewState.hintTextAlpha,
                     true /* animateAlpha */, true /* animateBounds */);
         } else {
             final TaskStack.DockState dockState = (TaskStack.DockState) event.dropTarget;
             updateVisibleDockRegions(new TaskStack.DockState[] {dockState},
-                    false /* isDefaultDockState */, -1, true /* animateAlpha */,
+                    false /* isDefaultDockState */, -1, -1, true /* animateAlpha */,
                     true /* animateBounds */);
         }
         if (mStackActionButton != null) {
@@ -496,13 +505,9 @@
             final TaskStack.DockState dockState = (TaskStack.DockState) event.dropTarget;
 
             // Hide the dock region
-            updateVisibleDockRegions(null, false /* isDefaultDockState */, -1,
+            updateVisibleDockRegions(null, false /* isDefaultDockState */, -1, -1,
                     false /* animateAlpha */, false /* animateBounds */);
 
-            TaskStackLayoutAlgorithm stackLayout = mTaskStackView.getStackAlgorithm();
-            TaskStackViewScroller stackScroller = mTaskStackView.getScroller();
-            TaskViewTransform tmpTransform = new TaskViewTransform();
-
             // We translated the view but we need to animate it back from the current layout-space
             // rect to its final layout-space rect
             int x = (int) event.taskView.getTranslationX();
@@ -546,9 +551,18 @@
                     event.task.getTopComponent().flattenToShortString());
         } else {
             // Animate the overlay alpha back to 0
-            updateVisibleDockRegions(null, true /* isDefaultDockState */, -1,
+            updateVisibleDockRegions(null, true /* isDefaultDockState */, -1, -1,
                     true /* animateAlpha */, false /* animateBounds */);
         }
+
+        // Show the stack action button again without changing visibility
+        if (mStackActionButton != null) {
+            mStackActionButton.animate()
+                    .alpha(1f)
+                    .setDuration(SHOW_STACK_ACTION_BUTTON_DURATION)
+                    .setInterpolator(Interpolators.ALPHA_IN)
+                    .start();
+        }
     }
 
     private Rect getTaskRect(TaskView taskView) {
@@ -622,6 +636,10 @@
         hideStackActionButton(HIDE_STACK_ACTION_BUTTON_DURATION, true /* translate */);
     }
 
+    public final void onBusEvent(MultiWindowStateChangedEvent event) {
+        updateStack(event.stack, false /* setStackViewTasks */);
+    }
+
     /**
      * Shows the stack action button.
      */
@@ -704,8 +722,8 @@
      * Updates the dock region to match the specified dock state.
      */
     private void updateVisibleDockRegions(TaskStack.DockState[] newDockStates,
-            boolean isDefaultDockState, int overrideAlpha, boolean animateAlpha,
-            boolean animateBounds) {
+            boolean isDefaultDockState, int overrideAreaAlpha, int overrideHintAlpha,
+            boolean animateAlpha, boolean animateBounds) {
         ArraySet<TaskStack.DockState> newDockStatesSet = Utilities.arrayToSet(newDockStates,
                 new ArraySet<TaskStack.DockState>());
         ArrayList<TaskStack.DockState> visDockStates = mTouchHandler.getVisibleDockStates();
@@ -714,11 +732,16 @@
             TaskStack.DockState.ViewState viewState = dockState.viewState;
             if (newDockStates == null || !newDockStatesSet.contains(dockState)) {
                 // This is no longer visible, so hide it
-                viewState.startAnimation(null, 0, DOCK_AREA_OVERLAY_TRANSITION_DURATION,
-                        Interpolators.ALPHA_OUT, animateAlpha, animateBounds);
+                viewState.startAnimation(null, 0, 0, TaskStackView.SLOW_SYNC_STACK_DURATION,
+                        Interpolators.FAST_OUT_SLOW_IN, animateAlpha, animateBounds);
             } else {
                 // This state is now visible, update the bounds and show it
-                int alpha = (overrideAlpha != -1 ? overrideAlpha : viewState.dockAreaAlpha);
+                int areaAlpha = overrideAreaAlpha != -1
+                        ? overrideAreaAlpha
+                        : viewState.dockAreaAlpha;
+                int hintAlpha = overrideHintAlpha != -1
+                        ? overrideHintAlpha
+                        : viewState.hintTextAlpha;
                 Rect bounds = isDefaultDockState
                         ? dockState.getPreDockedBounds(getMeasuredWidth(), getMeasuredHeight())
                         : dockState.getDockedBounds(getMeasuredWidth(), getMeasuredHeight(),
@@ -727,8 +750,9 @@
                     viewState.dockAreaOverlay.setCallback(this);
                     viewState.dockAreaOverlay.setBounds(bounds);
                 }
-                viewState.startAnimation(bounds, alpha, DOCK_AREA_OVERLAY_TRANSITION_DURATION,
-                        Interpolators.ALPHA_IN, animateAlpha, animateBounds);
+                viewState.startAnimation(bounds, areaAlpha, hintAlpha,
+                        TaskStackView.SLOW_SYNC_STACK_DURATION, Interpolators.FAST_OUT_SLOW_IN,
+                        animateAlpha, animateBounds);
             }
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsViewTouchHandler.java b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsViewTouchHandler.java
index 70c4dbd..2ec180d 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/RecentsViewTouchHandler.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/RecentsViewTouchHandler.java
@@ -171,6 +171,7 @@
                 TaskStack.DockState[] dockStates = getDockStatesForCurrentOrientation();
                 for (TaskStack.DockState dockState : dockStates) {
                     registerDropTargetForCurrentDrag(dockState);
+                    dockState.update(mRv.getContext());
                     mVisibleDockStates.add(dockState);
                 }
             }
@@ -192,15 +193,17 @@
     }
 
     public final void onBusEvent(ConfigurationChangedEvent event) {
-        updateSnapAlgorithm();
+        if (event.fromDisplayDensityChange) {
+            updateSnapAlgorithm();
+        }
     }
 
     /**
      * Handles dragging touch events
      */
     private void handleTouchEvent(MotionEvent ev) {
-        int action = ev.getAction();
-        switch (action & MotionEvent.ACTION_MASK) {
+        int action = ev.getActionMasked();
+        switch (action) {
             case MotionEvent.ACTION_DOWN:
                 mDownPos.set((int) ev.getX(), (int) ev.getY());
                 break;
@@ -255,7 +258,7 @@
             case MotionEvent.ACTION_CANCEL: {
                 if (mDragRequested) {
                     EventBus.getDefault().send(new DragEndEvent(mDragTask, mTaskView,
-                            mLastDropTarget));
+                            action == MotionEvent.ACTION_UP ? mLastDropTarget : null));
                     break;
                 }
             }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/SystemBarScrimViews.java b/packages/SystemUI/src/com/android/systemui/recents/views/SystemBarScrimViews.java
index dce2353..995f9f7 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/SystemBarScrimViews.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/SystemBarScrimViews.java
@@ -28,7 +28,6 @@
 import com.android.systemui.recents.events.activity.EnterRecentsWindowAnimationCompletedEvent;
 import com.android.systemui.recents.events.ui.DismissAllTaskViewsEvent;
 import com.android.systemui.recents.events.activity.MultiWindowStateChangedEvent;
-import com.android.systemui.recents.misc.SystemServicesProxy;
 
 /** Manages the scrims for the various system bars. */
 public class SystemBarScrimViews {
@@ -41,7 +40,8 @@
 
     private boolean mHasNavBarScrim;
     private boolean mShouldAnimateNavBarScrim;
-
+    private boolean mHasTransposedNavBar;
+    private boolean mHasDockedTasks;
     private int mNavBarScrimEnterDuration;
 
     public SystemBarScrimViews(RecentsActivity activity) {
@@ -50,6 +50,8 @@
         mNavBarScrimView.forceHasOverlappingRendering(false);
         mNavBarScrimEnterDuration = activity.getResources().getInteger(
                 R.integer.recents_nav_bar_scrim_enter_duration);
+        mHasNavBarScrim = Recents.getSystemServices().hasTransposedNavigationBar();
+        mHasDockedTasks = Recents.getSystemServices().hasDockedTask();
     }
 
     /**
@@ -101,8 +103,7 @@
      * @return Whether to show the nav bar scrim.
      */
     private boolean isNavBarScrimRequired(boolean hasStackTasks) {
-        SystemServicesProxy ssp = Recents.getSystemServices();
-        return hasStackTasks && !ssp.hasTransposedNavBar() && !ssp.hasDockedTask();
+        return hasStackTasks && !mHasTransposedNavBar && !mHasDockedTasks;
     }
 
     /**** EventBus events ****/
@@ -142,11 +143,15 @@
     }
 
     public final void onBusEvent(ConfigurationChangedEvent event) {
+        if (event.fromDeviceOrientationChange) {
+            mHasNavBarScrim = Recents.getSystemServices().hasTransposedNavigationBar();
+        }
         animateScrimToCurrentNavBarState(event.hasStackTasks);
     }
 
     public final void onBusEvent(MultiWindowStateChangedEvent event) {
-        animateScrimToCurrentNavBarState(event.hasStackTasks);
+        mHasDockedTasks = event.inMultiWindow;
+        animateScrimToCurrentNavBarState(event.stack.getStackTaskCount() > 0);
     }
 
     /**
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackAnimationHelper.java b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackAnimationHelper.java
index 76aab59d..b422cca 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackAnimationHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackAnimationHelper.java
@@ -18,6 +18,7 @@
 
 import android.animation.Animator;
 import android.animation.AnimatorListenerAdapter;
+import android.animation.TimeInterpolator;
 import android.content.Context;
 import android.content.res.Configuration;
 import android.content.res.Resources;
@@ -32,7 +33,6 @@
 import com.android.systemui.recents.RecentsActivityLaunchState;
 import com.android.systemui.recents.RecentsConfiguration;
 import com.android.systemui.recents.misc.ReferenceCountedTrigger;
-import com.android.systemui.recents.misc.Utilities;
 import com.android.systemui.recents.model.Task;
 import com.android.systemui.recents.model.TaskStack;
 
@@ -74,33 +74,35 @@
         void onStartFrontTaskEnterAnimation(boolean screenPinningEnabled);
     }
 
+    private static final int DOUBLE_FRAME_OFFSET_MS = 33;
     private static final int FRAME_OFFSET_MS = 16;
 
-    public static final int ENTER_FROM_HOME_ALPHA_DURATION = 100;
-    public static final int ENTER_FROM_HOME_TRANSLATION_DURATION = 333;
-    public static final int ENTER_WHILE_DOCKING_DURATION = 250;
+    private static final int ENTER_EXIT_NUM_ANIMATING_TASKS = 5;
 
-    private static final PathInterpolator ENTER_FROM_HOME_TRANSLATION_INTERPOLATOR =
-            new PathInterpolator(0, 0, 0, 1f);
-    private static final PathInterpolator ENTER_FROM_HOME_ALPHA_INTERPOLATOR =
-            new PathInterpolator(0, 0, 0.2f, 1f);
+    private static final int ENTER_FROM_HOME_ALPHA_DURATION = 100;
+    public static final int ENTER_FROM_HOME_TRANSLATION_DURATION = 300;
+    private static final Interpolator ENTER_FROM_HOME_TRANSLATION_INTERPOLATOR =
+            Interpolators.LINEAR_OUT_SLOW_IN;
+    private static final Interpolator ENTER_FROM_HOME_ALPHA_INTERPOLATOR = Interpolators.LINEAR;
 
-    public static final int EXIT_TO_HOME_ALPHA_DURATION = 100;
-    public static final int EXIT_TO_HOME_TRANSLATION_DURATION = 150;
-    private static final PathInterpolator EXIT_TO_HOME_TRANSLATION_INTERPOLATOR =
-            new PathInterpolator(0.8f, 0, 0.6f, 1f);
-    private static final PathInterpolator EXIT_TO_HOME_ALPHA_INTERPOLATOR =
+    public static final int EXIT_TO_HOME_TRANSLATION_DURATION = 200;
+    private static final Interpolator EXIT_TO_HOME_TRANSLATION_INTERPOLATOR =
+            new PathInterpolator(0.4f, 0, 0.6f, 1f);
+
+    private static final int DISMISS_TASK_DURATION = 175;
+    private static final int DISMISS_ALL_TASKS_DURATION = 200;
+    private static final Interpolator DISMISS_ALL_TRANSLATION_INTERPOLATOR =
             new PathInterpolator(0.4f, 0, 1f, 1f);
 
-    private static final PathInterpolator FOCUS_NEXT_TASK_INTERPOLATOR =
+    private static final Interpolator FOCUS_NEXT_TASK_INTERPOLATOR =
             new PathInterpolator(0.4f, 0, 0, 1f);
-    private static final PathInterpolator FOCUS_IN_FRONT_NEXT_TASK_INTERPOLATOR =
+    private static final Interpolator FOCUS_IN_FRONT_NEXT_TASK_INTERPOLATOR =
             new PathInterpolator(0, 0, 0, 1f);
-    private static final PathInterpolator FOCUS_BEHIND_NEXT_TASK_INTERPOLATOR =
-            new PathInterpolator(0.4f, 0, 0.2f, 1f);
+    private static final Interpolator FOCUS_BEHIND_NEXT_TASK_INTERPOLATOR =
+            Interpolators.LINEAR_OUT_SLOW_IN;
 
-    private static final PathInterpolator ENTER_WHILE_DOCKING_INTERPOLATOR =
-            new PathInterpolator(0, 0, 0.2f, 1f);
+    private static final Interpolator ENTER_WHILE_DOCKING_INTERPOLATOR =
+            Interpolators.LINEAR_OUT_SLOW_IN;
 
     private TaskStackView mStackView;
 
@@ -120,6 +122,7 @@
         RecentsConfiguration config = Recents.getConfiguration();
         RecentsActivityLaunchState launchState = config.getLaunchState();
         Resources res = mStackView.getResources();
+        Resources appResources = mStackView.getContext().getApplicationContext().getResources();
 
         TaskStackLayoutAlgorithm stackLayout = mStackView.getStackAlgorithm();
         TaskStackViewScroller stackScroller = mStackView.getScroller();
@@ -136,8 +139,8 @@
                 R.dimen.recents_task_stack_animation_affiliate_enter_offset);
         int launchedWhileDockingOffset = res.getDimensionPixelSize(
                 R.dimen.recents_task_stack_animation_launched_while_docking_offset);
-        boolean isLandscape = mStackView.getContext().getApplicationContext().getResources()
-                .getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE;
+        boolean isLandscape = appResources.getConfiguration().orientation
+                == Configuration.ORIENTATION_LANDSCAPE;
 
         // Prepare each of the task views for their enter animation from front to back
         List<TaskView> taskViews = mStackView.getTaskViews();
@@ -190,6 +193,7 @@
         RecentsConfiguration config = Recents.getConfiguration();
         RecentsActivityLaunchState launchState = config.getLaunchState();
         Resources res = mStackView.getResources();
+        Resources appRes = mStackView.getContext().getApplicationContext().getResources();
 
         TaskStackLayoutAlgorithm stackLayout = mStackView.getStackAlgorithm();
         TaskStackViewScroller stackScroller = mStackView.getScroller();
@@ -205,6 +209,8 @@
                 R.integer.recents_task_enter_from_app_duration);
         int taskViewEnterFromAffiliatedAppDuration = res.getInteger(
                 R.integer.recents_task_enter_from_affiliated_app_duration);
+        int dockGestureAnimDuration = appRes.getInteger(
+                R.integer.long_press_dock_anim_duration);
 
         // Create enter animations for each of the views from front to back
         List<TaskView> taskViews = mStackView.getTaskViews();
@@ -248,16 +254,20 @@
                 }
 
             } else if (launchState.launchedFromHome) {
-                // Animate the tasks up
+                // Animate the tasks up, but offset the animations to be relative to the front-most
+                // task animation
                 AnimationProps taskAnimation = new AnimationProps()
-                        .setStartDelay(AnimationProps.ALPHA, taskIndexFromFront * FRAME_OFFSET_MS)
+                        .setInitialPlayTime(AnimationProps.BOUNDS,
+                                Math.min(ENTER_EXIT_NUM_ANIMATING_TASKS, taskIndexFromFront) *
+                                        DOUBLE_FRAME_OFFSET_MS)
+                        .setStartDelay(AnimationProps.ALPHA,
+                                Math.min(ENTER_EXIT_NUM_ANIMATING_TASKS, taskIndexFromFront) *
+                                        FRAME_OFFSET_MS)
+                        .setDuration(AnimationProps.BOUNDS, ENTER_FROM_HOME_TRANSLATION_DURATION)
                         .setDuration(AnimationProps.ALPHA, ENTER_FROM_HOME_ALPHA_DURATION)
-                        .setDuration(AnimationProps.BOUNDS, ENTER_FROM_HOME_TRANSLATION_DURATION -
-                                (taskIndexFromFront * FRAME_OFFSET_MS))
                         .setInterpolator(AnimationProps.BOUNDS,
                                 ENTER_FROM_HOME_TRANSLATION_INTERPOLATOR)
-                        .setInterpolator(AnimationProps.ALPHA,
-                                ENTER_FROM_HOME_ALPHA_INTERPOLATOR)
+                        .setInterpolator(AnimationProps.ALPHA, ENTER_FROM_HOME_ALPHA_INTERPOLATOR)
                         .setListener(postAnimationTrigger.decrementOnAnimationEnd());
                 postAnimationTrigger.increment();
                 mStackView.updateTaskViewToTransform(tv, mTmpTransform, taskAnimation);
@@ -267,8 +277,8 @@
             } else if (launchState.launchedViaDockGesture) {
                 // Animate the tasks up
                 AnimationProps taskAnimation = new AnimationProps()
-                        .setDuration(AnimationProps.BOUNDS, (int) (ENTER_WHILE_DOCKING_DURATION +
-                                                        (taskIndexFromBack * 2f * FRAME_OFFSET_MS)))
+                        .setDuration(AnimationProps.BOUNDS, dockGestureAnimDuration +
+                                (taskIndexFromBack * DOUBLE_FRAME_OFFSET_MS))
                         .setInterpolator(AnimationProps.BOUNDS,
                                 ENTER_WHILE_DOCKING_INTERPOLATOR)
                         .setListener(postAnimationTrigger.decrementOnAnimationEnd());
@@ -299,20 +309,17 @@
         for (int i = 0; i < taskViewCount; i++) {
             int taskIndexFromFront = taskViewCount - i - 1;
             TaskView tv = taskViews.get(i);
-            Task task = tv.getTask();
 
             // Animate the tasks down
             AnimationProps taskAnimation;
             if (animated) {
+                int delay = Math.min(ENTER_EXIT_NUM_ANIMATING_TASKS , taskIndexFromFront) *
+                        DOUBLE_FRAME_OFFSET_MS;
                 taskAnimation = new AnimationProps()
-                        .setStartDelay(AnimationProps.ALPHA, i * FRAME_OFFSET_MS)
-                        .setDuration(AnimationProps.ALPHA, EXIT_TO_HOME_ALPHA_DURATION)
-                        .setDuration(AnimationProps.BOUNDS, EXIT_TO_HOME_TRANSLATION_DURATION +
-                                (taskIndexFromFront * FRAME_OFFSET_MS))
+                        .setStartDelay(AnimationProps.BOUNDS, delay)
+                        .setDuration(AnimationProps.BOUNDS, EXIT_TO_HOME_TRANSLATION_DURATION)
                         .setInterpolator(AnimationProps.BOUNDS,
                                 EXIT_TO_HOME_TRANSLATION_INTERPOLATOR)
-                        .setInterpolator(AnimationProps.ALPHA,
-                                EXIT_TO_HOME_ALPHA_INTERPOLATOR)
                         .setListener(postAnimationTrigger.decrementOnAnimationEnd());
                 postAnimationTrigger.increment();
             } else {
@@ -320,7 +327,6 @@
             }
 
             mTmpTransform.fillIn(tv);
-            mTmpTransform.alpha = 0f;
             mTmpTransform.rect.offset(0, offscreenYOffset);
             mStackView.updateTaskViewToTransform(tv, mTmpTransform, taskAnimation);
         }
@@ -381,8 +387,6 @@
         Resources res = mStackView.getResources();
         TaskStackLayoutAlgorithm stackLayout = mStackView.getStackAlgorithm();
 
-        int taskViewRemoveAnimDuration = res.getInteger(
-                R.integer.recents_animate_task_view_remove_duration);
         int offscreenXOffset = mStackView.getMeasuredWidth() - stackLayout.mTaskRect.left;
 
         // Disabling clipping with the stack while the view is animating away, this will get
@@ -390,7 +394,7 @@
         deleteTaskView.setClipViewInStack(false);
 
         // Compose the new animation and transform and star the animation
-        AnimationProps taskAnimation = new AnimationProps(taskViewRemoveAnimDuration,
+        AnimationProps taskAnimation = new AnimationProps(DISMISS_TASK_DURATION,
                 Interpolators.ALPHA_OUT, new AnimatorListenerAdapter() {
             @Override
             public void onAnimationEnd(Animator animation) {
@@ -410,29 +414,23 @@
      */
     public void startDeleteAllTasksAnimation(final List<TaskView> taskViews,
                                              final ReferenceCountedTrigger postAnimationTrigger) {
-        Resources res = mStackView.getResources();
         TaskStackLayoutAlgorithm stackLayout = mStackView.getStackAlgorithm();
 
-        int taskViewRemoveAnimDuration = res.getInteger(
-                R.integer.recents_animate_task_views_remove_all_duration);
         int offscreenXOffset = mStackView.getMeasuredWidth() - stackLayout.mTaskRect.left;
 
         int taskViewCount = taskViews.size();
-        int startDelayMax = 125;
 
         for (int i = taskViewCount - 1; i >= 0; i--) {
             TaskView tv = taskViews.get(i);
-            int indexFromFront = taskViewCount - i - 1;
-            float x = Interpolators.ACCELERATE.getInterpolation((float) indexFromFront /
-                    taskViewCount);
-            int startDelay = (int) Utilities.mapRange(x, 0, startDelayMax);
+            int taskIndexFromFront = taskViewCount - i - 1;
+            int startDelay = taskIndexFromFront * DOUBLE_FRAME_OFFSET_MS;
 
             // Disabling clipping with the stack while the view is animating away
             tv.setClipViewInStack(false);
 
             // Compose the new animation and transform and star the animation
             AnimationProps taskAnimation = new AnimationProps(startDelay,
-                    taskViewRemoveAnimDuration, Interpolators.FAST_OUT_LINEAR_IN,
+                    DISMISS_ALL_TASKS_DURATION, DISMISS_ALL_TRANSLATION_INTERPOLATOR,
                     new AnimatorListenerAdapter() {
                 @Override
                 public void onAnimationEnd(Animator animation) {
@@ -482,7 +480,7 @@
 
         // Get the final set of task transforms
         mStackView.getLayoutTaskTransforms(newScroll, stackLayout.getFocusState(), stackTasks,
-                mTmpFinalTaskTransforms);
+                true /* ignoreTaskOverrides */, mTmpFinalTaskTransforms);
 
         // Focus the task view
         TaskView newFocusedTaskView = mStackView.getChildViewForTask(newFocusedTask);
@@ -526,7 +524,7 @@
             int duration;
             Interpolator interpolator;
             if (willScrollToFront) {
-                duration = Math.max(100, 100 + ((i - 1) * 50));
+                duration = calculateStaggeredAnimDuration(i);
                 interpolator = FOCUS_BEHIND_NEXT_TASK_INTERPOLATOR;
             } else {
                 if (i < newFocusTaskViewIndex) {
@@ -550,4 +548,100 @@
         }
         return willScroll;
     }
+
+    /**
+     * Starts the animation to go to the initial stack layout with a task focused.  In addition, the
+     * previous task will be animated in after the scroll completes.
+     */
+    public void startNewStackScrollAnimation(TaskStack newStack,
+            ReferenceCountedTrigger animationTrigger) {
+        TaskStackLayoutAlgorithm stackLayout = mStackView.getStackAlgorithm();
+        TaskStackViewScroller stackScroller = mStackView.getScroller();
+
+        // Get the current set of task transforms
+        ArrayList<Task> stackTasks = newStack.getStackTasks();
+        mStackView.getCurrentTaskTransforms(stackTasks, mTmpCurrentTaskTransforms);
+
+        // Update the stack
+        mStackView.setTasks(newStack, false /* allowNotifyStackChanges */);
+        mStackView.updateLayoutAlgorithm(false /* boundScroll */);
+
+        // Pick up the newly visible views after the scroll
+        final float newScroll = stackLayout.mInitialScrollP;
+        mStackView.bindVisibleTaskViews(newScroll);
+
+        // Update the internal state
+        stackLayout.setFocusState(TaskStackLayoutAlgorithm.STATE_UNFOCUSED);
+        stackLayout.setTaskOverridesForInitialState(newStack, true /* ignoreScrollToFront */);
+        stackScroller.setStackScroll(newScroll);
+        mStackView.cancelDeferredTaskViewLayoutAnimation();
+
+        // Get the final set of task transforms
+        mStackView.getLayoutTaskTransforms(newScroll, stackLayout.getFocusState(), stackTasks,
+                false /* ignoreTaskOverrides */, mTmpFinalTaskTransforms);
+
+        // Hide the front most task view until the scroll is complete
+        Task frontMostTask = newStack.getStackFrontMostTask(false /* includeFreeform */);
+        final TaskView frontMostTaskView = mStackView.getChildViewForTask(frontMostTask);
+        final TaskViewTransform frontMostTransform = mTmpFinalTaskTransforms.get(
+                stackTasks.indexOf(frontMostTask));
+        if (frontMostTaskView != null) {
+            mStackView.updateTaskViewToTransform(frontMostTaskView,
+                    stackLayout.getFrontOfStackTransform(), AnimationProps.IMMEDIATE);
+        }
+
+        // Setup the end listener to return all the hidden views to the view pool after the
+        // focus animation
+        animationTrigger.addLastDecrementRunnable(new Runnable() {
+            @Override
+            public void run() {
+                mStackView.bindVisibleTaskViews(newScroll);
+
+                // Now, animate in the front-most task
+                if (frontMostTaskView != null) {
+                    mStackView.updateTaskViewToTransform(frontMostTaskView, frontMostTransform,
+                            new AnimationProps(75, 250, FOCUS_BEHIND_NEXT_TASK_INTERPOLATOR));
+                }
+            }
+        });
+
+        List<TaskView> taskViews = mStackView.getTaskViews();
+        int taskViewCount = taskViews.size();
+        for (int i = 0; i < taskViewCount; i++) {
+            TaskView tv = taskViews.get(i);
+            Task task = tv.getTask();
+
+            if (mStackView.isIgnoredTask(task)) {
+                continue;
+            }
+            if (task == frontMostTask && frontMostTaskView != null) {
+                continue;
+            }
+
+            int taskIndex = stackTasks.indexOf(task);
+            TaskViewTransform fromTransform = mTmpCurrentTaskTransforms.get(taskIndex);
+            TaskViewTransform toTransform = mTmpFinalTaskTransforms.get(taskIndex);
+
+            // Update the task to the initial state (for the newly picked up tasks)
+            mStackView.updateTaskViewToTransform(tv, fromTransform, AnimationProps.IMMEDIATE);
+
+            int duration = calculateStaggeredAnimDuration(i);
+            Interpolator interpolator = FOCUS_BEHIND_NEXT_TASK_INTERPOLATOR;
+
+            AnimationProps anim = new AnimationProps()
+                    .setDuration(AnimationProps.BOUNDS, duration)
+                    .setInterpolator(AnimationProps.BOUNDS, interpolator)
+                    .setListener(animationTrigger.decrementOnAnimationEnd());
+            animationTrigger.increment();
+            mStackView.updateTaskViewToTransform(tv, toTransform, anim);
+        }
+    }
+
+    /**
+     * Caclulates a staggered duration for {@link #startScrollToFocusedTaskAnimation} and
+     * {@link #startNewStackScrollAnimation}.
+     */
+    private int calculateStaggeredAnimDuration(int i) {
+        return Math.max(100, 100 + ((i - 1) * 50));
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
index 34d6bce..270d981 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
@@ -345,11 +345,11 @@
         mCb = cb;
         mFreeformLayoutAlgorithm = new FreeformWorkspaceLayoutAlgorithm(context);
         mMinMargin = res.getDimensionPixelSize(R.dimen.recents_layout_min_margin);
-        mBaseTopMargin = getDimensionForDevice(res,
+        mBaseTopMargin = getDimensionForDevice(context,
                 R.dimen.recents_layout_top_margin_phone,
                 R.dimen.recents_layout_top_margin_tablet,
                 R.dimen.recents_layout_top_margin_tablet_xlarge);
-        mBaseSideMargin = getDimensionForDevice(res,
+        mBaseSideMargin = getDimensionForDevice(context,
                 R.dimen.recents_layout_side_margin_phone,
                 R.dimen.recents_layout_side_margin_tablet,
                 R.dimen.recents_layout_side_margin_tablet_xlarge);
@@ -375,14 +375,14 @@
                 res.getDimensionPixelSize(R.dimen.recents_layout_bottom_peek_size);
         mMinTranslationZ = res.getDimensionPixelSize(R.dimen.recents_layout_z_min);
         mMaxTranslationZ = res.getDimensionPixelSize(R.dimen.recents_layout_z_max);
-        mBaseInitialTopOffset = getDimensionForDevice(res,
+        mBaseInitialTopOffset = getDimensionForDevice(context,
                 R.dimen.recents_layout_initial_top_offset_phone_port,
                 R.dimen.recents_layout_initial_top_offset_phone_land,
                 R.dimen.recents_layout_initial_top_offset_tablet,
                 R.dimen.recents_layout_initial_top_offset_tablet,
                 R.dimen.recents_layout_initial_top_offset_tablet,
                 R.dimen.recents_layout_initial_top_offset_tablet);
-        mBaseInitialBottomOffset = getDimensionForDevice(res,
+        mBaseInitialBottomOffset = getDimensionForDevice(context,
                 R.dimen.recents_layout_initial_bottom_offset_phone_port,
                 R.dimen.recents_layout_initial_bottom_offset_phone_land,
                 R.dimen.recents_layout_initial_bottom_offset_tablet,
@@ -432,10 +432,9 @@
      * Computes the stack and task rects.  The given task stack bounds already has the top/right
      * insets and left/right padding already applied.
      */
-    public void initialize(Rect windowRect, Rect taskStackBounds, StackState state) {
-        SystemServicesProxy ssp = Recents.getSystemServices();
+    public void initialize(Rect displayRect, Rect windowRect, Rect taskStackBounds,
+            StackState state) {
         Rect lastStackRect = new Rect(mStackRect);
-        Rect displayRect = ssp.getDisplayRect();
 
         int topMargin = getScaleForExtent(windowRect, displayRect, mBaseTopMargin, mMinMargin, HEIGHT);
         int bottomMargin = getScaleForExtent(windowRect, displayRect, mBaseBottomMargin, mMinMargin,
@@ -454,11 +453,8 @@
         mStackActionButtonRect.set(mStackRect.left, mStackRect.top - topMargin,
                 mStackRect.right, mStackRect.top + mFocusedTopPeekHeight);
 
-        // Anchor the task rect top aligned to the non-freeform stack rect
-        float aspect = (float) (windowRect.width() - (mSystemInsets.left + mSystemInsets.right)) /
-                (windowRect.height() - (mSystemInsets.top + mSystemInsets.bottom));
-        int minHeight = mStackRect.height() - mInitialTopOffset - mStackBottomOffset;
-        int height = (int) Math.min(mStackRect.width() / aspect, minHeight);
+        // Anchor the task rect top aligned to the stack rect
+        int height = mStackRect.height() - mInitialTopOffset - mStackBottomOffset;
         mTaskRect.set(mStackRect.left, mStackRect.top, mStackRect.right, mStackRect.top + height);
 
         // Short circuit here if the stack rects haven't changed so we don't do all the work below
@@ -577,7 +573,7 @@
     /**
      * Creates task overrides to ensure the initial stack layout if necessary.
      */
-    public void setTaskOverridesForInitialState(TaskStack stack) {
+    public void setTaskOverridesForInitialState(TaskStack stack, boolean ignoreScrollToFront) {
         RecentsActivityLaunchState launchState = Recents.getConfiguration().getLaunchState();
 
         mTaskIndexOverrideMap.clear();
@@ -585,7 +581,7 @@
         boolean scrollToFront = launchState.launchedFromHome ||
                 launchState.launchedViaDockGesture;
         if (getInitialFocusState() == STATE_UNFOCUSED && mNumStackTasks > 1) {
-            if (!launchState.launchedWithAltTab && !scrollToFront) {
+            if (ignoreScrollToFront || (!launchState.launchedWithAltTab && !scrollToFront)) {
                 // Set the initial scroll to the predefined state (which differs from the stack)
                 float [] initialNormX = new float[] {
                         getNormalizedXFromUnfocusedY(mSystemInsets.bottom + mInitialBottomOffset,
@@ -833,13 +829,25 @@
      * Like {@link #getStackTransform}, but in screen coordinates
      */
     public TaskViewTransform getStackTransformScreenCoordinates(Task task, float stackScroll,
-            TaskViewTransform transformOut, TaskViewTransform frontTransform) {
-        Rect windowRect = Recents.getSystemServices().getWindowRect();
+            TaskViewTransform transformOut, TaskViewTransform frontTransform,
+            Rect windowOverrideRect) {
         TaskViewTransform transform = getStackTransform(task, stackScroll, mFocusState,
                 transformOut, frontTransform, true /* forceUpdate */,
                 false /* ignoreTaskOverrides */);
-        transform.rect.offset(windowRect.left, windowRect.top);
-        return transform;
+        return transformToScreenCoordinates(transform, windowOverrideRect);
+    }
+
+    /**
+     * Transforms the given {@param transformOut} to the screen coordinates, overriding the current
+     * window rectangle with {@param windowOverrideRect} if non-null.
+     */
+    public TaskViewTransform transformToScreenCoordinates(TaskViewTransform transformOut,
+            Rect windowOverrideRect) {
+        Rect windowRect = windowOverrideRect != null
+                ? windowOverrideRect
+                : Recents.getSystemServices().getWindowRect();
+        transformOut.rect.offset(windowRect.left, windowRect.top);
+        return transformOut;
     }
 
     /**
@@ -938,7 +946,11 @@
      * stack.
      */
     float getStackScrollForTask(Task t) {
-        return mTaskIndexOverrideMap.get(t.key.id, (float) mTaskIndexMap.get(t.key.id, 0));
+        Float overrideP = mTaskIndexOverrideMap.get(t.key.id, null);
+        if (overrideP == null) {
+            return (float) mTaskIndexMap.get(t.key.id, 0);
+        }
+        return overrideP;
     }
 
     /**
@@ -986,18 +998,17 @@
      * top and right system insets (but not the bottom inset) and left/right paddings, but _not_
      * the top/bottom padding or insets.
      */
-    public void getTaskStackBounds(Rect windowRect, int topInset, int rightInset,
+    public void getTaskStackBounds(Rect displayRect, Rect windowRect, int topInset, int rightInset,
             Rect taskStackBounds) {
         taskStackBounds.set(windowRect.left, windowRect.top + topInset,
                 windowRect.right - rightInset, windowRect.bottom);
 
         // Ensure that the new width is at most the smaller display edge size
-        SystemServicesProxy ssp = Recents.getSystemServices();
-        Rect displayRect = ssp.getDisplayRect();
         int sideMargin = getScaleForExtent(windowRect, displayRect, mBaseSideMargin, mMinMargin,
                 WIDTH);
         int targetStackWidth = taskStackBounds.width() - 2 * sideMargin;
-        if (ssp.getDisplayOrientation() == Configuration.ORIENTATION_LANDSCAPE) {
+        if (Utilities.getAppConfiguration(mContext).orientation
+                == Configuration.ORIENTATION_LANDSCAPE) {
             // If we are in landscape, calculate the width of the stack in portrait and ensure that
             // we are not larger than that size
             Rect portraitDisplayRect = new Rect(0, 0,
@@ -1014,20 +1025,21 @@
     /**
      * Retrieves resources that are constant regardless of the current configuration of the device.
      */
-    public static int getDimensionForDevice(Resources res, int phoneResId,
+    public static int getDimensionForDevice(Context ctx, int phoneResId,
             int tabletResId, int xlargeTabletResId) {
-        return getDimensionForDevice(res, phoneResId, phoneResId, tabletResId, tabletResId,
+        return getDimensionForDevice(ctx, phoneResId, phoneResId, tabletResId, tabletResId,
                 xlargeTabletResId, xlargeTabletResId);
     }
 
     /**
      * Retrieves resources that are constant regardless of the current configuration of the device.
      */
-    public static int getDimensionForDevice(Resources res, int phonePortResId, int phoneLandResId,
+    public static int getDimensionForDevice(Context ctx, int phonePortResId, int phoneLandResId,
             int tabletPortResId, int tabletLandResId, int xlargeTabletPortResId,
             int xlargeTabletLandResId) {
         RecentsConfiguration config = Recents.getConfiguration();
-        boolean isLandscape = Recents.getSystemServices().getDisplayOrientation() ==
+        Resources res = ctx.getResources();
+        boolean isLandscape = Utilities.getAppConfiguration(ctx).orientation ==
                 Configuration.ORIENTATION_LANDSCAPE;
         if (config.isXLargeScreen) {
             return res.getDimensionPixelSize(isLandscape
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java
index a75d1e1..a158482 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java
@@ -25,6 +25,7 @@
 import android.annotation.IntDef;
 import android.content.ComponentName;
 import android.content.Context;
+import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.graphics.Canvas;
 import android.graphics.Rect;
@@ -72,6 +73,7 @@
 import com.android.systemui.recents.events.ui.DeleteTaskDataEvent;
 import com.android.systemui.recents.events.ui.DismissAllTaskViewsEvent;
 import com.android.systemui.recents.events.ui.DismissTaskViewEvent;
+import com.android.systemui.recents.events.ui.RecentsGrowingEvent;
 import com.android.systemui.recents.events.ui.TaskViewDismissedEvent;
 import com.android.systemui.recents.events.ui.UpdateFreeformTaskViewVisibilityEvent;
 import com.android.systemui.recents.events.ui.UserInteractionEvent;
@@ -108,6 +110,7 @@
     private static final float HIDE_STACK_ACTION_BUTTON_SCROLL_THRESHOLD = 0.3f;
 
     public static final int DEFAULT_SYNC_STACK_DURATION = 200;
+    public static final int SLOW_SYNC_STACK_DURATION = 250;
     private static final int DRAG_SCALE_DURATION = 175;
     static final float DRAG_SCALE_FACTOR = 1.05f;
 
@@ -125,48 +128,48 @@
     /** Update only the layout to the initial state. */
     private static final int INITIAL_STATE_UPDATE_LAYOUT_ONLY = 2;
 
-    LayoutInflater mInflater;
-    TaskStack mStack = new TaskStack();
+    private LayoutInflater mInflater;
+    private TaskStack mStack = new TaskStack();
     @ViewDebug.ExportedProperty(deepExport=true, prefix="layout_")
     TaskStackLayoutAlgorithm mLayoutAlgorithm;
     // The stable layout algorithm is only used to calculate the task rect with the stable bounds
-    TaskStackLayoutAlgorithm mStableLayoutAlgorithm;
+    private TaskStackLayoutAlgorithm mStableLayoutAlgorithm;
     @ViewDebug.ExportedProperty(deepExport=true, prefix="scroller_")
-    TaskStackViewScroller mStackScroller;
+    private TaskStackViewScroller mStackScroller;
     @ViewDebug.ExportedProperty(deepExport=true, prefix="touch_")
-    TaskStackViewTouchHandler mTouchHandler;
-    TaskStackAnimationHelper mAnimationHelper;
-    GradientDrawable mFreeformWorkspaceBackground;
-    ObjectAnimator mFreeformWorkspaceBackgroundAnimator;
-    ViewPool<TaskView, Task> mViewPool;
+    private TaskStackViewTouchHandler mTouchHandler;
+    private TaskStackAnimationHelper mAnimationHelper;
+    private GradientDrawable mFreeformWorkspaceBackground;
+    private ObjectAnimator mFreeformWorkspaceBackgroundAnimator;
+    private ViewPool<TaskView, Task> mViewPool;
 
-    ArrayList<TaskView> mTaskViews = new ArrayList<>();
-    ArrayList<TaskViewTransform> mCurrentTaskTransforms = new ArrayList<>();
-    ArraySet<Task.TaskKey> mIgnoreTasks = new ArraySet<>();
-    AnimationProps mDeferredTaskViewLayoutAnimation = null;
+    private ArrayList<TaskView> mTaskViews = new ArrayList<>();
+    private ArrayList<TaskViewTransform> mCurrentTaskTransforms = new ArrayList<>();
+    private ArraySet<Task.TaskKey> mIgnoreTasks = new ArraySet<>();
+    private AnimationProps mDeferredTaskViewLayoutAnimation = null;
 
     @ViewDebug.ExportedProperty(deepExport=true, prefix="doze_")
-    DozeTrigger mUIDozeTrigger;
+    private DozeTrigger mUIDozeTrigger;
     @ViewDebug.ExportedProperty(deepExport=true, prefix="focused_task_")
-    Task mFocusedTask;
+    private Task mFocusedTask;
 
-    int mTaskCornerRadiusPx;
+    private int mTaskCornerRadiusPx;
     private int mDividerSize;
     private int mStartTimerIndicatorDuration;
 
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mTaskViewsClipDirty = true;
+    private boolean mTaskViewsClipDirty = true;
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mAwaitingFirstLayout = true;
+    private boolean mAwaitingFirstLayout = true;
     @ViewDebug.ExportedProperty(category="recents")
     @InitialStateAction
-    int mInitialState = INITIAL_STATE_UPDATE_ALL;
+    private int mInitialState = INITIAL_STATE_UPDATE_ALL;
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mInMeasureLayout = false;
+    private boolean mInMeasureLayout = false;
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mEnterAnimationComplete = false;
+    private boolean mEnterAnimationComplete = false;
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mTouchExplorationEnabled;
+    private boolean mTouchExplorationEnabled;
     @ViewDebug.ExportedProperty(category="recents")
     boolean mScreenPinningEnabled;
 
@@ -182,13 +185,21 @@
     // The current window bounds are dynamic and may change as the user drags and drops
     @ViewDebug.ExportedProperty(category="recents")
     private Rect mWindowRect = new Rect();
+    // The current display bounds
+    @ViewDebug.ExportedProperty(category="recents")
+    private Rect mDisplayRect = new Rect();
+    // The current display orientation
+    @ViewDebug.ExportedProperty(category="recents")
+    private int mDisplayOrientation = Configuration.ORIENTATION_UNDEFINED;
 
     private Rect mTmpRect = new Rect();
     private ArrayMap<Task.TaskKey, TaskView> mTmpTaskViewMap = new ArrayMap<>();
     private List<TaskView> mTmpTaskViews = new ArrayList<>();
     private TaskViewTransform mTmpTransform = new TaskViewTransform();
-    private ArrayList<TaskViewTransform> mTmpTaskTransforms = new ArrayList<>();
     private int[] mTmpIntPair = new int[2];
+    private boolean mResetToInitialStateWhenResized;
+    private int mLastWidth;
+    private int mLastHeight;
 
     // A convenience update listener to request updating clipping of tasks
     private ValueAnimator.AnimatorUpdateListener mRequestUpdateClippingListener =
@@ -244,6 +255,8 @@
         mTaskCornerRadiusPx = res.getDimensionPixelSize(
                 R.dimen.recents_task_view_rounded_corners_radius);
         mDividerSize = ssp.getDockedDividerSize(context);
+        mDisplayOrientation = Utilities.getAppConfiguration(mContext).orientation;
+        mDisplayRect = ssp.getDisplayRect();
 
         int taskBarDismissDozeDelaySeconds = getResources().getInteger(
                 R.integer.recents_task_bar_dismiss_delay_seconds);
@@ -328,6 +341,7 @@
      */
     public void setTasks(TaskStack stack, boolean allowNotifyStackChanges) {
         boolean isInitialized = mLayoutAlgorithm.isInitialized();
+
         // Only notify if we are already initialized, otherwise, everything will pick up all the
         // new and old tasks when we next layout
         mStack.setTasks(getContext(), stack.computeAllTasksList(),
@@ -344,7 +358,7 @@
      */
     public void updateToInitialState() {
         mStackScroller.setStackScrollToInitialState();
-        mLayoutAlgorithm.setTaskOverridesForInitialState(mStack);
+        mLayoutAlgorithm.setTaskOverridesForInitialState(mStack, false /* ignoreScrollToFront */);
     }
 
     /** Updates the list of task views */
@@ -508,11 +522,7 @@
      * Binds the visible {@link TaskView}s at the given target scroll.
      */
     void bindVisibleTaskViews(float targetStackScroll) {
-        bindVisibleTaskViews(targetStackScroll, mIgnoreTasks, false /* ignoreTaskOverrides */);
-    }
-
-    void bindVisibleTaskViews(float targetStackScroll, boolean ignoreTaskOverrides) {
-        bindVisibleTaskViews(targetStackScroll, mIgnoreTasks, ignoreTaskOverrides);
+        bindVisibleTaskViews(targetStackScroll, false /* ignoreTaskOverrides */);
     }
 
     /**
@@ -525,17 +535,14 @@
      * @param targetStackScroll If provided, will ensure that the set of visible {@link TaskView}s
      *                          includes those visible at the current stack scroll, and all at the
      *                          target stack scroll.
-     * @param ignoreTasksSet The set of tasks to ignore in this rebinding of the visible
-     *                       {@link TaskView}s
      * @param ignoreTaskOverrides If set, the visible task computation will get the transforms for
      *                            tasks at their non-overridden task progress
      */
-    void bindVisibleTaskViews(float targetStackScroll, ArraySet<Task.TaskKey> ignoreTasksSet,
-            boolean ignoreTaskOverrides) {
+    void bindVisibleTaskViews(float targetStackScroll, boolean ignoreTaskOverrides) {
         // Get all the task transforms
         ArrayList<Task> tasks = mStack.getStackTasks();
         int[] visibleTaskRange = computeVisibleTaskTransforms(mCurrentTaskTransforms, tasks,
-                mStackScroller.getStackScroll(), targetStackScroll, ignoreTasksSet,
+                mStackScroller.getStackScroll(), targetStackScroll, mIgnoreTasks,
                 ignoreTaskOverrides);
 
         // Return all the invisible children to the pool
@@ -548,7 +555,7 @@
             Task task = tv.getTask();
 
             // Skip ignored tasks
-            if (ignoreTasksSet.contains(task.key)) {
+            if (mIgnoreTasks.contains(task.key)) {
                 continue;
             }
 
@@ -578,7 +585,7 @@
             TaskViewTransform transform = mCurrentTaskTransforms.get(i);
 
             // Skip ignored tasks
-            if (ignoreTasksSet.contains(task.key)) {
+            if (mIgnoreTasks.contains(task.key)) {
                 continue;
             }
 
@@ -626,10 +633,10 @@
     }
 
     /**
-     * @see #relayoutTaskViews(AnimationProps, ArraySet<Task.TaskKey>, boolean)
+     * @see #relayoutTaskViews(AnimationProps, boolean)
      */
     public void relayoutTaskViews(AnimationProps animation) {
-        relayoutTaskViews(animation, mIgnoreTasks, false /* ignoreTaskOverrides */);
+        relayoutTaskViews(animation, false /* ignoreTaskOverrides */);
     }
 
     /**
@@ -637,16 +644,13 @@
      * {@link TaskStackLayoutAlgorithm} with the given {@param animation}. This call cancels any
      * animations that are current running on those task views, and will ensure that the children
      * {@link TaskView}s will match the set of visible tasks in the stack.
-     *
-     * @param ignoreTasksSet the set of tasks to ignore in the relayout
      */
-    private void relayoutTaskViews(AnimationProps animation, ArraySet<Task.TaskKey> ignoreTasksSet,
-            boolean ignoreTaskOverrides) {
+    private void relayoutTaskViews(AnimationProps animation, boolean ignoreTaskOverrides) {
         // If we had a deferred animation, cancel that
-        mDeferredTaskViewLayoutAnimation = null;
+        cancelDeferredTaskViewLayoutAnimation();
 
         // Synchronize the current set of TaskViews
-        bindVisibleTaskViews(mStackScroller.getStackScroll(), ignoreTasksSet,
+        bindVisibleTaskViews(mStackScroller.getStackScroll(),
                 ignoreTaskOverrides /* ignoreTaskOverrides */);
 
         // Animate them to their final transforms with the given animation
@@ -657,7 +661,7 @@
             int taskIndex = mStack.indexOfStackTask(tv.getTask());
             TaskViewTransform transform = mCurrentTaskTransforms.get(taskIndex);
 
-            if (ignoreTasksSet.contains(tv.getTask().key)) {
+            if (mIgnoreTasks.contains(tv.getTask().key)) {
                 continue;
             }
 
@@ -715,13 +719,13 @@
      * {@param stackScroll} and {@param focusState}.
      */
     public void getLayoutTaskTransforms(float stackScroll, int focusState, ArrayList<Task> tasks,
-            ArrayList<TaskViewTransform> transformsOut) {
+            boolean ignoreTaskOverrides, ArrayList<TaskViewTransform> transformsOut) {
         Utilities.matchTaskListSize(tasks, transformsOut);
         for (int i = tasks.size() - 1; i >= 0; i--) {
             Task task = tasks.get(i);
             TaskViewTransform transform = transformsOut.get(i);
             mLayoutAlgorithm.getStackTransform(task, stackScroll, focusState, transform, null,
-                    true /* forceUpdate */, true /* ignoreTaskOverrides */);
+                    true /* forceUpdate */, ignoreTaskOverrides);
             transform.visible = true;
         }
     }
@@ -735,23 +739,12 @@
 
     /**
      * Cancels all {@link TaskView} animations.
-     *
-     * @see #cancelAllTaskViewAnimations(ArraySet<Task.TaskKey>)
      */
     void cancelAllTaskViewAnimations() {
-        cancelAllTaskViewAnimations(mIgnoreTasks);
-    }
-
-    /**
-     * Cancels all {@link TaskView} animations.
-     *
-     * @param ignoreTasksSet The set of tasks to continue running their animations.
-     */
-    void cancelAllTaskViewAnimations(ArraySet<Task.TaskKey> ignoreTasksSet) {
         List<TaskView> taskViews = getTaskViews();
         for (int i = taskViews.size() - 1; i >= 0; i--) {
             final TaskView tv = taskViews.get(i);
-            if (!ignoreTasksSet.contains(tv.getTask().key)) {
+            if (!mIgnoreTasks.contains(tv.getTask().key)) {
                 tv.cancelTransformAnimation();
             }
         }
@@ -812,22 +805,10 @@
 
     /**
      * Updates the layout algorithm min and max virtual scroll bounds.
-     *
-     * @see #updateLayoutAlgorithm(boolean, ArraySet<Task.TaskKey>)
      */
    public void updateLayoutAlgorithm(boolean boundScrollToNewMinMax) {
-        updateLayoutAlgorithm(boundScrollToNewMinMax, mIgnoreTasks);
-    }
-
-    /**
-     * Updates the min and max virtual scroll bounds.
-     *
-     * @param ignoreTasksSet the set of tasks to ignore in the relayout
-     */
-    private void updateLayoutAlgorithm(boolean boundScrollToNewMinMax,
-            ArraySet<Task.TaskKey> ignoreTasksSet) {
         // Compute the min and max scroll values
-        mLayoutAlgorithm.update(mStack, ignoreTasksSet);
+        mLayoutAlgorithm.update(mStack, mIgnoreTasks);
 
         // Update the freeform workspace background
         SystemServicesProxy ssp = Recents.getSystemServices();
@@ -1167,7 +1148,7 @@
         // Update the stable stack bounds, but only update the current stack bounds if the stable
         // bounds have changed.  This is because we may get spurious measures while dragging where
         // our current stack bounds reflect the target drop region.
-        mLayoutAlgorithm.getTaskStackBounds(new Rect(0, 0, width, height),
+        mLayoutAlgorithm.getTaskStackBounds(mDisplayRect, new Rect(0, 0, width, height),
                 mLayoutAlgorithm.mSystemInsets.top, mLayoutAlgorithm.mSystemInsets.right, mTmpRect);
         if (!mTmpRect.equals(mStableStackBounds)) {
             mStableStackBounds.set(mTmpRect);
@@ -1177,17 +1158,21 @@
         }
 
         // Compute the rects in the stack algorithm
-        mStableLayoutAlgorithm.initialize(mStableWindowRect, mStableStackBounds,
+        mStableLayoutAlgorithm.initialize(mDisplayRect, mStableWindowRect, mStableStackBounds,
                 TaskStackLayoutAlgorithm.StackState.getStackStateForStack(mStack));
-        mLayoutAlgorithm.initialize(mWindowRect, mStackBounds,
+        mLayoutAlgorithm.initialize(mDisplayRect, mWindowRect, mStackBounds,
                 TaskStackLayoutAlgorithm.StackState.getStackStateForStack(mStack));
         updateLayoutAlgorithm(false /* boundScroll */);
 
         // If this is the first layout, then scroll to the front of the stack, then update the
         // TaskViews with the stack so that we can lay them out
-        if (mAwaitingFirstLayout || mInitialState != INITIAL_STATE_UPDATE_NONE) {
-            if (mInitialState != INITIAL_STATE_UPDATE_LAYOUT_ONLY) {
+        boolean resetToInitialState = (width != mLastWidth || height != mLastHeight)
+                && mResetToInitialStateWhenResized;
+        if (mAwaitingFirstLayout || mInitialState != INITIAL_STATE_UPDATE_NONE
+                || resetToInitialState) {
+            if (mInitialState != INITIAL_STATE_UPDATE_LAYOUT_ONLY || resetToInitialState) {
                 updateToInitialState();
+                mResetToInitialStateWhenResized = false;
             }
             if (!mAwaitingFirstLayout) {
                 mInitialState = INITIAL_STATE_UPDATE_NONE;
@@ -1195,8 +1180,7 @@
         }
 
         // Rebind all the views, including the ignore ones
-        bindVisibleTaskViews(mStackScroller.getStackScroll(), mIgnoreTasks,
-                false /* ignoreTaskOverrides */);
+        bindVisibleTaskViews(mStackScroller.getStackScroll(), false /* ignoreTaskOverrides */);
 
         // Measure each of the TaskViews
         mTmpTaskViews.clear();
@@ -1208,6 +1192,8 @@
         }
 
         setMeasuredDimension(width, height);
+        mLastWidth = width;
+        mLastHeight = height;
         mInMeasureLayout = false;
     }
 
@@ -1550,10 +1536,10 @@
 
     private void bindTaskView(TaskView tv, Task task) {
         // Rebind the task and request that this task's data be filled into the TaskView
-        tv.onTaskBound(task);
+        tv.onTaskBound(task, mTouchExplorationEnabled, mDisplayOrientation, mDisplayRect);
 
         // Load the task data
-        Recents.getTaskLoader().loadTaskData(task, true /* fetchAndInvalidateThumbnails */);
+        Recents.getTaskLoader().loadTaskData(task);
     }
 
     private void unbindTaskView(TaskView tv, Task task) {
@@ -1640,7 +1626,6 @@
         }
         if (launchTaskIndex != -1) {
             // Stop all animations
-            mUIDozeTrigger.stopDozing();
             cancelAllTaskViewAnimations();
 
             final Task launchTask = mStack.getStackTasks().get(launchTaskIndex);
@@ -1679,8 +1664,10 @@
 
     public final void onBusEvent(DismissRecentsToHomeAnimationStarted event) {
         // Stop any scrolling
+        mTouchHandler.finishAnimations();
         mStackScroller.stopScroller();
         mStackScroller.stopBoundScrollAnimation();
+        cancelDeferredTaskViewLayoutAnimation();
 
         // Start the task animations
         mAnimationHelper.startExitToHomeAnimation(event.animated, event.getAnimationTrigger());
@@ -1788,6 +1775,7 @@
                 mTmpTransform, null);
         mTmpTransform.scale = finalScale;
         mTmpTransform.translationZ = mLayoutAlgorithm.mMaxTranslationZ + 1;
+        mTmpTransform.dimAlpha = 0f;
         updateTaskViewToTransform(event.taskView, mTmpTransform,
                 new AnimationProps(DRAG_SCALE_DURATION, Interpolators.FAST_OUT_SLOW_IN));
     }
@@ -1801,7 +1789,8 @@
     }
 
     public final void onBusEvent(DragDropTargetChangedEvent event) {
-        AnimationProps animation = new AnimationProps(250, Interpolators.FAST_OUT_SLOW_IN);
+        AnimationProps animation = new AnimationProps(SLOW_SYNC_STACK_DURATION,
+                Interpolators.FAST_OUT_SLOW_IN);
         boolean ignoreTaskOverrides = false;
         if (event.dropTarget instanceof TaskStack.DockState) {
             // Calculate the new task stack bounds that matches the window size that Recents will
@@ -1814,11 +1803,11 @@
             int height = getMeasuredHeight();
             height -= systemInsets.bottom;
             systemInsets.bottom = 0;
-            mStackBounds.set(dockState.getDockedTaskStackBounds(getMeasuredWidth(),
+            mStackBounds.set(dockState.getDockedTaskStackBounds(mDisplayRect, getMeasuredWidth(),
                     height, mDividerSize, systemInsets,
                     mLayoutAlgorithm, getResources(), mWindowRect));
             mLayoutAlgorithm.setSystemInsets(systemInsets);
-            mLayoutAlgorithm.initialize(mWindowRect, mStackBounds,
+            mLayoutAlgorithm.initialize(mDisplayRect, mWindowRect, mStackBounds,
                     TaskStackLayoutAlgorithm.StackState.getStackStateForStack(mStack));
             updateLayoutAlgorithm(true /* boundScroll */);
             ignoreTaskOverrides = true;
@@ -1829,12 +1818,12 @@
             mStackBounds.set(mStableStackBounds);
             removeIgnoreTask(event.task);
             mLayoutAlgorithm.setSystemInsets(mStableLayoutAlgorithm.mSystemInsets);
-            mLayoutAlgorithm.initialize(mWindowRect, mStackBounds,
+            mLayoutAlgorithm.initialize(mDisplayRect, mWindowRect, mStackBounds,
                     TaskStackLayoutAlgorithm.StackState.getStackStateForStack(mStack));
             updateLayoutAlgorithm(true /* boundScroll */);
             addIgnoreTask(event.task);
         }
-        relayoutTaskViews(animation, mIgnoreTasks, ignoreTaskOverrides);
+        relayoutTaskViews(animation, ignoreTaskOverrides);
     }
 
     public final void onBusEvent(final DragEndEvent event) {
@@ -1948,32 +1937,34 @@
         }
     }
 
-    public final void onBusEvent(MultiWindowStateChangedEvent event) {
-        if (!event.inMultiWindow) {
+    public final void onBusEvent(final MultiWindowStateChangedEvent event) {
+        if (event.inMultiWindow) {
+            setTasks(event.stack, true /* allowNotifyStackChanges */);
+        } else {
+            // Reset the launch state before handling the multiwindow change
+            RecentsActivityLaunchState launchState = Recents.getConfiguration().getLaunchState();
+            launchState.reset();
+
             // Defer until the next frame to ensure that we have received all the system insets, and
             // initial layout updates
+            event.getAnimationTrigger().increment();
             post(new Runnable() {
                 @Override
                 public void run() {
                     // Scroll the stack to the front to see the undocked task
-                    mStackScroller.animateScroll(mLayoutAlgorithm.mMaxScrollP, new Runnable() {
-                        @Override
-                        public void run() {
-                            List<TaskView> taskViews = getTaskViews();
-                            int taskViewCount = taskViews.size();
-                            for (int i = 0; i < taskViewCount; i++) {
-                                TaskView tv = taskViews.get(i);
-                                tv.getHeaderView().rebindToTask(tv.getTask(),
-                                        tv.mTouchExplorationEnabled, tv.mIsDisabledInSafeMode);
-                            }
-                        }
-                    });
+                    mAnimationHelper.startNewStackScrollAnimation(event.stack,
+                            event.getAnimationTrigger());
+                    event.getAnimationTrigger().decrement();
                 }
             });
         }
     }
 
     public final void onBusEvent(ConfigurationChangedEvent event) {
+        if (event.fromDeviceOrientationChange) {
+            mDisplayOrientation = Utilities.getAppConfiguration(mContext).orientation;
+            mDisplayRect = Recents.getSystemServices().getDisplayRect();
+        }
         reloadOnConfigurationChange();
 
         // Notify the task views of the configuration change so they can reload their resources
@@ -1997,6 +1988,10 @@
         }
     }
 
+    public final void onBusEvent(RecentsGrowingEvent event) {
+        mResetToInitialStateWhenResized = true;
+    }
+
     public void reloadOnConfigurationChange() {
         mStableLayoutAlgorithm.reloadOnConfigurationChange(getContext());
         mLayoutAlgorithm.reloadOnConfigurationChange(getContext());
@@ -2082,6 +2077,8 @@
         writer.print(" stackBounds="); writer.print(Utilities.dumpRect(mStackBounds));
         writer.print(" stableWindow="); writer.print(Utilities.dumpRect(mStableWindowRect));
         writer.print(" window="); writer.print(Utilities.dumpRect(mWindowRect));
+        writer.print(" display="); writer.print(Utilities.dumpRect(mDisplayRect));
+        writer.print(" orientation="); writer.print(mDisplayOrientation);
         writer.print(" [0x"); writer.print(id); writer.print("]");
         writer.println();
 
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackViewTouchHandler.java b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackViewTouchHandler.java
index 3cdb1fb..81242fd 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackViewTouchHandler.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackViewTouchHandler.java
@@ -60,8 +60,7 @@
 class TaskStackViewTouchHandler implements SwipeHelper.Callback {
 
     private static final int INACTIVE_POINTER_ID = -1;
-    private static final Interpolator STACK_TRANSFORM_INTERPOLATOR =
-            new PathInterpolator(0.73f, 0.33f, 0.42f, 0.85f);
+    private static final float CHALLENGING_SWIPE_ESCAPE_VELOCITY = 800f; // dp/sec
     // The min overscroll is the amount of task progress overscroll we want / the max overscroll
     // curve value below
     private static final float MAX_OVERSCROLL = 0.7f / 0.3f;
@@ -125,7 +124,7 @@
         mSwipeHelper = new SwipeHelper(SwipeHelper.X, this, context) {
             @Override
             protected float getSize(View v) {
-                return mSv.getWidth();
+                return getScaledDismissSize();
             }
 
             @Override
@@ -138,6 +137,16 @@
                 anim.setInterpolator(Interpolators.FAST_OUT_SLOW_IN);
                 mSwipeHelperAnimations.put(v, anim);
             }
+
+            @Override
+            protected float getUnscaledEscapeVelocity() {
+                return CHALLENGING_SWIPE_ESCAPE_VELOCITY;
+            }
+
+            @Override
+            protected long getMaxEscapeAnimDuration() {
+                return 700;
+            }
         };
         mSwipeHelper.setDisableHardwareLayers(true);
     }
@@ -179,6 +188,18 @@
         return true;
     }
 
+    /**
+     * Finishes all scroll-fling and swipe animations currently running.
+     */
+    public void finishAnimations() {
+        Utilities.cancelAnimationWithoutCallbacks(mScrollFlingAnimator);
+        ArrayMap<View, Animator> existingAnimators = new ArrayMap<>(mSwipeHelperAnimations);
+        for (int i = 0; i < existingAnimators.size(); i++) {
+            existingAnimators.get(existingAnimators.keyAt(i)).end();
+        }
+        mSwipeHelperAnimations.clear();
+    }
+
     private boolean handleTouchEvent(MotionEvent ev) {
         // Short circuit if we have no children
         if (mSv.getTaskViews().size() == 0) {
@@ -198,19 +219,11 @@
                 mActiveTaskView = findViewAtPoint(mDownX, mDownY);
 
                 // Stop the current scroll if it is still flinging
+                mSv.cancelDeferredTaskViewLayoutAnimation();
                 mScroller.stopScroller();
                 mScroller.stopBoundScrollAnimation();
                 mScroller.resetDeltaScroll();
-                Utilities.cancelAnimationWithoutCallbacks(mScrollFlingAnimator);
-
-                // Finish any existing task animations from the delete
-                mSv.cancelAllTaskViewAnimations();
-                // Finish any of the swipe helper animations
-                ArrayMap<View, Animator> existingAnimators = new ArrayMap<>(mSwipeHelperAnimations);
-                for (int i = 0; i < existingAnimators.size(); i++) {
-                    existingAnimators.get(existingAnimators.keyAt(i)).end();
-                }
-                mSwipeHelperAnimations.clear();
+                finishAnimations();
 
                 // Initialize the velocity tracker
                 initOrResetVelocityTracker();
@@ -483,7 +496,7 @@
 
             // Get the final set of task transforms (with task removed)
             mSv.getLayoutTaskTransforms(newStackScroll, TaskStackLayoutAlgorithm.STATE_UNFOCUSED,
-                    mCurrentTasks, mFinalTaskTransforms);
+                    mCurrentTasks, true /* ignoreTaskOverrides */, mFinalTaskTransforms);
 
             // Set the target to scroll towards upon dismissal
             mTargetStackScroll = newStackScroll;
@@ -500,7 +513,7 @@
 
     @Override
     public boolean updateSwipeProgress(View v, boolean dismissable, float swipeProgress) {
-        updateTaskViewTransforms(getDismissFraction(v));
+        updateTaskViewTransforms(Interpolators.FAST_OUT_SLOW_IN.getInterpolation(swipeProgress));
         return true;
     }
 
@@ -616,13 +629,9 @@
     }
 
     /**
-     * Returns the fraction which we should interpolate the other task views based on the dismissal
-     * of this given task.
-     *
-     * TODO: We can interpolate this to adjust when the other tasks should respond to the dismissal
+     * Returns the scaled size used to calculate the dismiss fraction.
      */
-    private float getDismissFraction(View v) {
-        float fraction = Math.min(1f, Math.abs(v.getTranslationX() / mSv.getWidth()));
-        return STACK_TRANSFORM_INTERPOLATOR.getInterpolation(fraction);
+    private float getScaledDismissSize() {
+        return 1.5f * Math.max(mSv.getWidth(), mSv.getHeight());
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/TaskView.java b/packages/SystemUI/src/com/android/systemui/recents/views/TaskView.java
index 37f5a9f..1d476c6 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/TaskView.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/TaskView.java
@@ -24,13 +24,9 @@
 import android.animation.ValueAnimator;
 import android.app.ActivityManager;
 import android.content.Context;
-import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.graphics.Outline;
-import android.graphics.Paint;
 import android.graphics.Point;
-import android.graphics.PorterDuff;
-import android.graphics.PorterDuffColorFilter;
 import android.graphics.Rect;
 import android.util.AttributeSet;
 import android.util.FloatProperty;
@@ -130,21 +126,21 @@
             };
 
     @ViewDebug.ExportedProperty(category="recents")
-    float mDimAlpha;
-    float mActionButtonTranslationZ;
+    private float mDimAlpha;
+    private float mActionButtonTranslationZ;
 
     @ViewDebug.ExportedProperty(deepExport=true, prefix="task_")
-    Task mTask;
+    private Task mTask;
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mTaskDataLoaded;
+    private boolean mTaskDataLoaded;
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mClipViewInStack = true;
+    private boolean mClipViewInStack = true;
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mTouchExplorationEnabled;
+    private boolean mTouchExplorationEnabled;
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mIsDisabledInSafeMode;
+    private boolean mIsDisabledInSafeMode;
     @ViewDebug.ExportedProperty(deepExport=true, prefix="view_bounds_")
-    AnimateableViewBounds mViewBounds;
+    private AnimateableViewBounds mViewBounds;
 
     private AnimatorSet mTransformAnimation;
     private ObjectAnimator mDimAnimator;
@@ -156,12 +152,12 @@
     TaskViewThumbnail mThumbnailView;
     @ViewDebug.ExportedProperty(deepExport=true, prefix="header_")
     TaskViewHeader mHeaderView;
-    View mActionButtonView;
-    View mIncompatibleAppToastView;
-    TaskViewCallbacks mCb;
+    private View mActionButtonView;
+    private View mIncompatibleAppToastView;
+    private TaskViewCallbacks mCb;
 
     @ViewDebug.ExportedProperty(category="recents")
-    Point mDownTouchPos = new Point();
+    private Point mDownTouchPos = new Point();
 
     private Toast mDisabledAppToast;
 
@@ -200,7 +196,6 @@
      */
     void onReload(boolean isResumingFromVisible) {
         resetNoUserInteractionState();
-        readSystemFlags();
         if (!isResumingFromVisible) {
             resetViewProperties();
         }
@@ -217,12 +212,6 @@
     }
 
     @Override
-    protected void onAttachedToWindow() {
-        super.onAttachedToWindow();
-        readSystemFlags();
-    }
-
-    @Override
     protected void onFinishInflate() {
         // Bind the views
         mHeaderView = (TaskViewHeader) findViewById(R.id.task_view_bar);
@@ -602,11 +591,15 @@
 
     /**** TaskCallbacks Implementation ****/
 
-    public void onTaskBound(Task t) {
+    public void onTaskBound(Task t, boolean touchExplorationEnabled, int displayOrientation,
+            Rect displayRect) {
         SystemServicesProxy ssp = Recents.getSystemServices();
+        mTouchExplorationEnabled = touchExplorationEnabled;
         mTask = t;
         mTask.addCallback(this);
         mIsDisabledInSafeMode = !mTask.isSystemApp && ssp.isInSafeMode();
+        mThumbnailView.bindToTask(mTask, mIsDisabledInSafeMode, displayOrientation, displayRect);
+        mHeaderView.bindToTask(mTask, mTouchExplorationEnabled, mIsDisabledInSafeMode);
 
         if (!t.isDockable && ssp.hasDockedTask()) {
             if (mIncompatibleAppToastView == null) {
@@ -623,15 +616,15 @@
 
     @Override
     public void onTaskDataLoaded(Task task, ActivityManager.TaskThumbnailInfo thumbnailInfo) {
-        // Bind each of the views to the new task data
-        mThumbnailView.rebindToTask(mTask, thumbnailInfo, mIsDisabledInSafeMode);
-        mHeaderView.rebindToTask(mTask, mTouchExplorationEnabled, mIsDisabledInSafeMode);
+        // Update each of the views to the new task data
+        mThumbnailView.onTaskDataLoaded(thumbnailInfo);
+        mHeaderView.onTaskDataLoaded();
         mTaskDataLoaded = true;
     }
 
     @Override
     public void onTaskDataUnloaded() {
-        // Unbind each of the views from the task data and remove the task callback
+        // Unbind each of the views from the task and remove the task callback
         mTask.removeCallback(this);
         mThumbnailView.unbindFromTask();
         mHeaderView.unbindFromTask(mTouchExplorationEnabled);
@@ -640,7 +633,9 @@
 
     @Override
     public void onTaskStackIdChanged() {
-        mHeaderView.rebindToTask(mTask, mTouchExplorationEnabled, mIsDisabledInSafeMode);
+        // Force rebind the header, the thumbnail does not change due to stack changes
+        mHeaderView.bindToTask(mTask, mTouchExplorationEnabled, mIsDisabledInSafeMode);
+        mHeaderView.onTaskDataLoaded();
     }
 
     /**** View.OnClickListener Implementation ****/
@@ -709,12 +704,4 @@
         }
         EventBus.getDefault().unregister(this);
     }
-
-    /**
-     * Reads current system flags related to accessibility and screen pinning.
-     */
-    private void readSystemFlags() {
-        SystemServicesProxy ssp = Recents.getSystemServices();
-        mTouchExplorationEnabled = ssp.isTouchExplorationEnabled();
-    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/TaskViewHeader.java b/packages/SystemUI/src/com/android/systemui/recents/views/TaskViewHeader.java
index fb0fc30..e2f2198 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/TaskViewHeader.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/TaskViewHeader.java
@@ -284,14 +284,14 @@
         // Update the dimensions of everything in the header. We do this because we need to use
         // resources for the display, and not the current configuration.
         Resources res = getResources();
-        int headerBarHeight = TaskStackLayoutAlgorithm.getDimensionForDevice(res,
+        int headerBarHeight = TaskStackLayoutAlgorithm.getDimensionForDevice(getContext(),
                 R.dimen.recents_task_view_header_height,
                 R.dimen.recents_task_view_header_height,
                 R.dimen.recents_task_view_header_height,
                 R.dimen.recents_task_view_header_height_tablet_land,
                 R.dimen.recents_task_view_header_height,
                 R.dimen.recents_task_view_header_height_tablet_land);
-        int headerButtonPadding = TaskStackLayoutAlgorithm.getDimensionForDevice(res,
+        int headerButtonPadding = TaskStackLayoutAlgorithm.getDimensionForDevice(getContext(),
                 R.dimen.recents_task_view_header_button_padding,
                 R.dimen.recents_task_view_header_button_padding,
                 R.dimen.recents_task_view_header_button_padding,
@@ -438,21 +438,18 @@
         }
     }
 
-    /** Binds the bar view to the task */
-    public void rebindToTask(Task t, boolean touchExplorationEnabled, boolean disabledInSafeMode) {
+    /**
+     * Binds the bar view to the task.
+     */
+    public void bindToTask(Task t, boolean touchExplorationEnabled, boolean disabledInSafeMode) {
         mTask = t;
 
-        // If an activity icon is defined, then we use that as the primary icon to show in the bar,
-        // otherwise, we fall back to the application icon
         int primaryColor = disabledInSafeMode
                 ? mDisabledTaskBarBackgroundColor
                 : t.colorPrimary;
         if (mBackground.getColor() != primaryColor) {
             updateBackgroundColor(primaryColor, mDimAlpha);
         }
-        if (t.icon != null) {
-            mIconView.setImageDrawable(t.icon);
-        }
         if (!mTitleView.getText().toString().equals(t.title)) {
             mTitleView.setText(t.title);
         }
@@ -497,6 +494,16 @@
         }
     }
 
+    /**
+     * Called when the bound task's data has loaded and this view should update to reflect the
+     * changes.
+     */
+    public void onTaskDataLoaded() {
+        if (mTask.icon != null) {
+            mIconView.setImageDrawable(mTask.icon);
+        }
+    }
+
     /** Unbinds the bar view from the task */
     void unbindFromTask(boolean touchExplorationEnabled) {
         mTask = null;
diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/TaskViewThumbnail.java b/packages/SystemUI/src/com/android/systemui/recents/views/TaskViewThumbnail.java
index 4de7713..3193759 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/views/TaskViewThumbnail.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/views/TaskViewThumbnail.java
@@ -29,15 +29,12 @@
 import android.graphics.Matrix;
 import android.graphics.Paint;
 import android.graphics.Rect;
-import android.graphics.Region;
 import android.graphics.Shader;
 import android.util.AttributeSet;
 import android.view.View;
 import android.view.ViewDebug;
 
 import com.android.systemui.R;
-import com.android.systemui.recents.Recents;
-import com.android.systemui.recents.misc.SystemServicesProxy;
 import com.android.systemui.recents.model.Task;
 
 
@@ -52,41 +49,38 @@
 
     private Task mTask;
 
+    private int mDisplayOrientation = Configuration.ORIENTATION_UNDEFINED;
     private Rect mDisplayRect = new Rect();
-    private int mOrientation = Configuration.ORIENTATION_UNDEFINED;
 
     // Drawing
     @ViewDebug.ExportedProperty(category="recents")
-    Rect mTaskViewRect = new Rect();
+    private Rect mTaskViewRect = new Rect();
     @ViewDebug.ExportedProperty(category="recents")
-    Rect mThumbnailRect = new Rect();
+    private Rect mThumbnailRect = new Rect();
     @ViewDebug.ExportedProperty(category="recents")
-    float mThumbnailScale;
-    float mFullscreenThumbnailScale;
-    ActivityManager.TaskThumbnailInfo mThumbnailInfo;
+    private float mThumbnailScale;
+    private float mFullscreenThumbnailScale;
+    private ActivityManager.TaskThumbnailInfo mThumbnailInfo;
 
-    int mCornerRadius;
+    private int mCornerRadius;
     @ViewDebug.ExportedProperty(category="recents")
-    float mDimAlpha;
-    Matrix mScaleMatrix = new Matrix();
-    Paint mDrawPaint = new Paint();
-    Paint mBgFillPaint = new Paint();
-    BitmapShader mBitmapShader;
-    LightingColorFilter mLightingColorFilter = new LightingColorFilter(0xffffffff, 0);
+    private float mDimAlpha;
+    private Matrix mScaleMatrix = new Matrix();
+    private Paint mDrawPaint = new Paint();
+    private Paint mBgFillPaint = new Paint();
+    private BitmapShader mBitmapShader;
+    private LightingColorFilter mLightingColorFilter = new LightingColorFilter(0xffffffff, 0);
 
-    // Task bar clipping, the top of this thumbnail can be clipped against the opaque header
-    // bar that overlaps this thumbnail
-    View mTaskBar;
-    @ViewDebug.ExportedProperty(category="recents")
-    Rect mClipRect = new Rect();
+    // Clip the top of the thumbnail against the opaque header bar that overlaps this view
+    private View mTaskBar;
 
     // Visibility optimization, if the thumbnail height is less than the height of the header
     // bar for the task view, then just mark this thumbnail view as invisible
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mInvisible;
+    private boolean mInvisible;
 
     @ViewDebug.ExportedProperty(category="recents")
-    boolean mDisabledInSafeMode;
+    private boolean mDisabledInSafeMode;
 
     public TaskViewThumbnail(Context context) {
         this(context, null);
@@ -128,15 +122,6 @@
     }
 
     @Override
-    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
-        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
-
-        SystemServicesProxy ssp = Recents.getSystemServices();
-        mOrientation = ssp.getDisplayOrientation();
-        mDisplayRect = ssp.getDisplayRect();
-    }
-
-    @Override
     protected void onDraw(Canvas canvas) {
         if (mInvisible) {
             return;
@@ -246,7 +231,7 @@
                 mThumbnailScale = 0f;
             } else if (isStackTask) {
                 float invThumbnailScale = 1f / mFullscreenThumbnailScale;
-                if (mOrientation == Configuration.ORIENTATION_PORTRAIT) {
+                if (mDisplayOrientation == Configuration.ORIENTATION_PORTRAIT) {
                     if (mThumbnailInfo.screenOrientation == Configuration.ORIENTATION_PORTRAIT) {
                         // If we are in the same orientation as the screenshot, just scale it to the
                         // width of the task view
@@ -302,21 +287,31 @@
         updateThumbnailPaintFilter();
     }
 
-    /** Binds the thumbnail view to the task */
-    void rebindToTask(Task t, ActivityManager.TaskThumbnailInfo thumbnailInfo,
-            boolean disabledInSafeMode) {
+    /**
+     * Binds the thumbnail view to the task.
+     */
+    void bindToTask(Task t, boolean disabledInSafeMode, int displayOrientation, Rect displayRect) {
         mTask = t;
         mDisabledInSafeMode = disabledInSafeMode;
-        if (t.thumbnail != null) {
-            setThumbnail(t.thumbnail, thumbnailInfo);
-        } else {
-            setThumbnail(null, null);
-        }
+        mDisplayOrientation = displayOrientation;
+        mDisplayRect.set(displayRect);
         if (t.colorBackground != 0) {
             mBgFillPaint.setColor(t.colorBackground);
         }
     }
 
+    /**
+     * Called when the bound task's data has loaded and this view should update to reflect the
+     * changes.
+     */
+    void onTaskDataLoaded(ActivityManager.TaskThumbnailInfo thumbnailInfo) {
+        if (mTask.thumbnail != null) {
+            setThumbnail(mTask.thumbnail, thumbnailInfo);
+        } else {
+            setThumbnail(null, null);
+        }
+    }
+
     /** Unbinds the thumbnail view from the task */
     void unbindFromTask() {
         mTask = null;
diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/GlobalScreenshot.java b/packages/SystemUI/src/com/android/systemui/screenshot/GlobalScreenshot.java
index eb08947..e6cbbea 100644
--- a/packages/SystemUI/src/com/android/systemui/screenshot/GlobalScreenshot.java
+++ b/packages/SystemUI/src/com/android/systemui/screenshot/GlobalScreenshot.java
@@ -43,6 +43,7 @@
 import android.media.MediaActionSound;
 import android.net.Uri;
 import android.os.AsyncTask;
+import android.os.Bundle;
 import android.os.Environment;
 import android.os.Process;
 import android.provider.MediaStore;
@@ -164,6 +165,11 @@
         c.drawColor(overlayColor);
         c.setBitmap(null);
 
+        // swap "System UI" out for "Android System"
+        final Bundle extras = new Bundle();
+        extras.putString(Notification.EXTRA_SUBSTITUTE_APP_NAME,
+                context.getString(com.android.internal.R.string.android_system_label));
+
         // Show the intermediate notification
         mTickerAddSpace = !mTickerAddSpace;
         mNotificationManager = nManager;
@@ -180,6 +186,8 @@
                 .setSmallIcon(R.drawable.stat_notify_image)
                 .setCategory(Notification.CATEGORY_PROGRESS)
                 .setWhen(now)
+                .setShowWhen(true)
+                .addExtras(extras)
                 .setColor(r.getColor(
                         com.android.internal.R.color.system_notification_accent_color));
 
@@ -190,6 +198,8 @@
             .setContentText(r.getString(R.string.screenshot_saving_text))
             .setSmallIcon(R.drawable.stat_notify_image)
             .setWhen(now)
+            .setShowWhen(true)
+            .addExtras(extras)
             .setColor(r.getColor(com.android.internal.R.color.system_notification_accent_color))
             .setStyle(mNotificationStyle)
             .setPublicVersion(mPublicNotificationBuilder.build());
diff --git a/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java b/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
index 2bf0b40..5d1a61d 100644
--- a/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
+++ b/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
@@ -39,6 +39,7 @@
     private DockDividerVisibilityListener mDockDividerVisibilityListener;
     private boolean mVisible = false;
     private boolean mMinimized = false;
+    private boolean mAdjustedForIme = false;
     private ForcedResizableInfoActivityController mForcedResizableController;
 
     @Override
@@ -84,7 +85,7 @@
         addDivider(configuration);
         if (mMinimized) {
             mView.setMinimizedDockStack(true);
-            mWindowManager.setTouchable(false);
+            updateTouchable();
         }
     }
 
@@ -109,7 +110,7 @@
             public void run() {
                 if (mMinimized != minimized) {
                     mMinimized = minimized;
-                    mWindowManager.setTouchable(!minimized);
+                    updateTouchable();
                     if (animDuration > 0) {
                         mView.setMinimizedDockStack(minimized, animDuration);
                     } else {
@@ -129,6 +130,10 @@
         });
     }
 
+    private void updateTouchable() {
+        mWindowManager.setTouchable(!mMinimized && !mAdjustedForIme);
+    }
+
     class DockDividerVisibilityListener extends IDockedStackListener.Stub {
 
         @Override
@@ -148,6 +153,22 @@
         }
 
         @Override
+        public void onAdjustedForImeChanged(boolean adjustedForIme, long animDuration)
+                throws RemoteException {
+            mView.post(() -> {
+                if (mAdjustedForIme != adjustedForIme) {
+                    mAdjustedForIme = adjustedForIme;
+                    updateTouchable();
+                    if (animDuration > 0) {
+                        mView.setAdjustedForIme(adjustedForIme, animDuration);
+                    } else {
+                        mView.setAdjustedForIme(adjustedForIme);
+                    }
+                }
+            });
+        }
+
+        @Override
         public void onDockSideChanged(final int newDockSide) throws RemoteException {
             mView.post(() -> mView.notifyDockSideChanged(newDockSide));
         }
diff --git a/packages/SystemUI/src/com/android/systemui/stackdivider/DividerView.java b/packages/SystemUI/src/com/android/systemui/stackdivider/DividerView.java
index 66a413c..7379706 100644
--- a/packages/SystemUI/src/com/android/systemui/stackdivider/DividerView.java
+++ b/packages/SystemUI/src/com/android/systemui/stackdivider/DividerView.java
@@ -31,7 +31,6 @@
 import android.graphics.Region.Op;
 import android.hardware.display.DisplayManager;
 import android.os.Bundle;
-import android.os.Vibrator;
 import android.util.AttributeSet;
 import android.view.Display;
 import android.view.DisplayInfo;
@@ -61,13 +60,13 @@
 import com.android.internal.policy.DockedDividerUtils;
 import com.android.systemui.Interpolators;
 import com.android.systemui.R;
-import com.android.systemui.recents.Constants.Metrics;
 import com.android.systemui.recents.Recents;
 import com.android.systemui.recents.events.EventBus;
 import com.android.systemui.recents.events.activity.DockedTopTaskEvent;
 import com.android.systemui.recents.events.activity.RecentsActivityStartingEvent;
 import com.android.systemui.recents.events.activity.UndockingTaskEvent;
 import com.android.systemui.recents.events.ui.RecentsDrawnEvent;
+import com.android.systemui.recents.events.ui.RecentsGrowingEvent;
 import com.android.systemui.recents.misc.SystemServicesProxy;
 import com.android.systemui.stackdivider.events.StartedDragingEvent;
 import com.android.systemui.stackdivider.events.StoppedDragingEvent;
@@ -83,6 +82,8 @@
     static final long TOUCH_ANIMATION_DURATION = 150;
     static final long TOUCH_RELEASE_ANIMATION_DURATION = 200;
 
+    public static final int INVALID_RECENTS_GROW_TARGET = -1;
+
     private static final int LOG_VALUE_RESIZE_50_50 = 0;
     private static final int LOG_VALUE_RESIZE_DOCKED_SMALLER = 1;
     private static final int LOG_VALUE_RESIZE_DOCKED_LARGER = 2;
@@ -90,7 +91,6 @@
     private static final int LOG_VALUE_UNDOCK_MAX_DOCKED = 0;
     private static final int LOG_VALUE_UNDOCK_MAX_OTHER = 1;
 
-
     private static final int TASK_POSITION_SAME = Integer.MAX_VALUE;
     private static final boolean SWAPPING_ENABLED = false;
 
@@ -98,11 +98,14 @@
      * How much the background gets scaled when we are in the minimized dock state.
      */
     private static final float MINIMIZE_DOCK_SCALE = 0f;
+    private static final float ADJUSTED_FOR_IME_SCALE = 0.5f;
 
     private static final PathInterpolator SLOWDOWN_INTERPOLATOR =
             new PathInterpolator(0.5f, 1f, 0.5f, 1f);
     private static final PathInterpolator DIM_INTERPOLATOR =
             new PathInterpolator(.23f, .87f, .52f, -0.11f);
+    private static final Interpolator IME_ADJUST_INTERPOLATOR =
+            new PathInterpolator(0.2f, 0f, 0.1f, 1f);
 
     private DividerHandleView mHandle;
     private View mBackground;
@@ -122,6 +125,7 @@
     private int mDividerWindowWidth;
     private int mDividerSize;
     private int mTouchElevation;
+    private int mLongPressEntraceAnimDuration;
 
     private final Rect mDockedRect = new Rect();
     private final Rect mDockedTaskRect = new Rect();
@@ -147,37 +151,69 @@
     private int mExitStartPosition;
     private GestureDetector mGestureDetector;
     private boolean mDockedStackMinimized;
+    private boolean mAdjustedForIme;
 
     private final AccessibilityDelegate mHandleDelegate = new AccessibilityDelegate() {
         @Override
         public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) {
             super.onInitializeAccessibilityNodeInfo(host, info);
             if (isHorizontalDivision()) {
-                info.addAction(new AccessibilityAction(R.id.action_move_up,
-                        mContext.getString(R.string.accessibility_action_divider_move_up)));
-                info.addAction(new AccessibilityAction(R.id.action_move_down,
-                        mContext.getString(R.string.accessibility_action_divider_move_down)));
+                info.addAction(new AccessibilityAction(R.id.action_move_tl_full,
+                        mContext.getString(R.string.accessibility_action_divider_top_full)));
+                if (mSnapAlgorithm.isFirstSplitTargetAvailable()) {
+                    info.addAction(new AccessibilityAction(R.id.action_move_tl_70,
+                            mContext.getString(R.string.accessibility_action_divider_top_70)));
+                }
+                info.addAction(new AccessibilityAction(R.id.action_move_tl_50,
+                        mContext.getString(R.string.accessibility_action_divider_top_50)));
+                if (mSnapAlgorithm.isLastSplitTargetAvailable()) {
+                    info.addAction(new AccessibilityAction(R.id.action_move_tl_30,
+                            mContext.getString(R.string.accessibility_action_divider_top_30)));
+                }
+                info.addAction(new AccessibilityAction(R.id.action_move_rb_full,
+                        mContext.getString(R.string.accessibility_action_divider_bottom_full)));
             } else {
-                info.addAction(new AccessibilityAction(R.id.action_move_left,
-                        mContext.getString(R.string.accessibility_action_divider_move_left)));
-                info.addAction(new AccessibilityAction(R.id.action_move_right,
-                        mContext.getString(R.string.accessibility_action_divider_move_right)));
+                info.addAction(new AccessibilityAction(R.id.action_move_tl_full,
+                        mContext.getString(R.string.accessibility_action_divider_left_full)));
+                if (mSnapAlgorithm.isFirstSplitTargetAvailable()) {
+                    info.addAction(new AccessibilityAction(R.id.action_move_tl_70,
+                            mContext.getString(R.string.accessibility_action_divider_left_70)));
+                }
+                info.addAction(new AccessibilityAction(R.id.action_move_tl_50,
+                        mContext.getString(R.string.accessibility_action_divider_left_50)));
+                if (mSnapAlgorithm.isLastSplitTargetAvailable()) {
+                    info.addAction(new AccessibilityAction(R.id.action_move_tl_30,
+                            mContext.getString(R.string.accessibility_action_divider_left_30)));
+                }
+                info.addAction(new AccessibilityAction(R.id.action_move_rb_full,
+                        mContext.getString(R.string.accessibility_action_divider_right_full)));
             }
         }
 
         @Override
         public boolean performAccessibilityAction(View host, int action, Bundle args) {
-            if (action == R.id.action_move_up || action == R.id.action_move_down
-                    || action == R.id.action_move_left || action == R.id.action_move_right) {
-                int position = getCurrentPosition();
-                SnapTarget currentTarget = mSnapAlgorithm.calculateSnapTarget(
-                        position, 0 /* velocity */);
-                SnapTarget nextTarget =
-                        action == R.id.action_move_up || action == R.id.action_move_left
-                                ? mSnapAlgorithm.getPreviousTarget(currentTarget)
-                                : mSnapAlgorithm.getNextTarget(currentTarget);
+            int currentPosition = getCurrentPosition();
+            SnapTarget nextTarget = null;
+            switch (action) {
+                case R.id.action_move_tl_full:
+                    nextTarget = mSnapAlgorithm.getDismissEndTarget();
+                    break;
+                case R.id.action_move_tl_70:
+                    nextTarget = mSnapAlgorithm.getLastSplitTarget();
+                    break;
+                case R.id.action_move_tl_50:
+                    nextTarget = mSnapAlgorithm.getMiddleTarget();
+                    break;
+                case R.id.action_move_tl_30:
+                    nextTarget = mSnapAlgorithm.getFirstSplitTarget();
+                    break;
+                case R.id.action_move_rb_full:
+                    nextTarget = mSnapAlgorithm.getDismissStartTarget();
+                    break;
+            }
+            if (nextTarget != null) {
                 startDragging(true /* animate */, false /* touching */);
-                stopDragging(getCurrentPosition(), nextTarget, 250, Interpolators.FAST_OUT_SLOW_IN);
+                stopDragging(currentPosition, nextTarget, 250, Interpolators.FAST_OUT_SLOW_IN);
                 return true;
             }
             return super.performAccessibilityAction(host, action, args);
@@ -222,6 +258,8 @@
         mDividerSize = mDividerWindowWidth - 2 * mDividerInsets;
         mTouchElevation = getResources().getDimensionPixelSize(
                 R.dimen.docked_stack_divider_lift_elevation);
+        mLongPressEntraceAnimDuration = getResources().getInteger(
+                R.integer.long_press_dock_anim_duration);
         mGrowRecents = getResources().getBoolean(R.bool.recents_grow_in_multiwindow);
         mTouchSlop = ViewConfiguration.get(mContext).getScaledTouchSlop();
         mFlingAnimationUtils = new FlingAnimationUtils(getContext(), 0.3f);
@@ -239,7 +277,7 @@
                     updateDockSide();
                     SystemServicesProxy ssp = Recents.getSystemServices();
                     if (mDockSide != WindowManager.DOCKED_INVALID
-                            && !ssp.isRecentsTopMost(ssp.getTopMostTask(), null /* isTopHome */)) {
+                            && !ssp.isRecentsActivityVisible()) {
                         mWindowManagerProxy.swapTasks();
                         return true;
                     }
@@ -657,6 +695,40 @@
         mDockedStackMinimized = minimized;
     }
 
+    public void setAdjustedForIme(boolean adjustedForIme) {
+        updateDockSide();
+        mHandle.setAlpha(adjustedForIme ? 0f : 1f);
+        if (!adjustedForIme) {
+            resetBackground();
+        } else if (mDockSide == WindowManager.DOCKED_TOP) {
+            mBackground.setPivotY(0);
+            mBackground.setScaleY(ADJUSTED_FOR_IME_SCALE);
+        }
+        mAdjustedForIme = adjustedForIme;
+    }
+
+    public void setAdjustedForIme(boolean adjustedForIme, long animDuration) {
+        updateDockSide();
+        mHandle.animate()
+                .setInterpolator(IME_ADJUST_INTERPOLATOR)
+                .setDuration(animDuration)
+                .alpha(adjustedForIme ? 0f : 1f)
+                .start();
+        if (mDockSide == WindowManager.DOCKED_TOP) {
+            mBackground.setPivotY(0);
+            mBackground.animate()
+                    .scaleY(adjustedForIme ? ADJUSTED_FOR_IME_SCALE : 1f);
+        }
+        if (!adjustedForIme) {
+            mBackground.animate().withEndAction(mResetBackgroundRunnable);
+        }
+        mBackground.animate()
+                .setInterpolator(IME_ADJUST_INTERPOLATOR)
+                .setDuration(animDuration)
+                .start();
+        mAdjustedForIme = adjustedForIme;
+    }
+
     private void resetBackground() {
         mBackground.setPivotX(mBackground.getWidth() / 2);
         mBackground.setPivotY(mBackground.getHeight() / 2);
@@ -728,7 +800,7 @@
     public void resizeStack(int position, int taskPosition, SnapTarget taskSnapTarget) {
         calculateBoundsForPosition(position, mDockSide, mDockedRect);
 
-        if (mDockedRect.equals(mLastResizeRect)) {
+        if (mDockedRect.equals(mLastResizeRect) && !mEntranceAnimationRunning) {
             return;
         }
 
@@ -960,6 +1032,24 @@
                 mBackground.getRight(), mBackground.getBottom(), Op.UNION);
     }
 
+    /**
+     * Checks whether recents will grow when invoked. This happens in multi-window when recents is
+     * very small. When invoking recents, we shrink the docked stack so recents has more space.
+     *
+     * @return the position of the divider when recents grows, or
+     *         {@link #INVALID_RECENTS_GROW_TARGET} if recents won't grow
+     */
+    public int growsRecents() {
+        boolean result = mGrowRecents
+                && mWindowManagerProxy.getDockSide() == WindowManager.DOCKED_TOP
+                && getCurrentPosition() == getSnapAlgorithm().getLastSplitTarget().position;
+        if (result) {
+            return getSnapAlgorithm().getMiddleTarget().position;
+        } else {
+            return INVALID_RECENTS_GROW_TARGET;
+        }
+    }
+
     public final void onBusEvent(RecentsActivityStartingEvent recentsActivityStartingEvent) {
         if (mGrowRecents && getWindowManagerProxy().getDockSide() == WindowManager.DOCKED_TOP
                 && getCurrentPosition() == getSnapAlgorithm().getLastSplitTarget().position) {
@@ -993,12 +1083,14 @@
             // Delay switching resizing mode because this might cause jank in recents animation
             // that's long than this animation.
             stopDragging(getCurrentPosition(), mSnapAlgorithm.getMiddleTarget(),
-                    250 /* startDelay */, Interpolators.FAST_OUT_SLOW_IN, 200 /* endDelay */);
+                    mLongPressEntraceAnimDuration, Interpolators.FAST_OUT_SLOW_IN,
+                    200 /* endDelay */);
         }
         if (mGrowAfterRecentsDrawn) {
             mGrowAfterRecentsDrawn = false;
             updateDockSide();
-            stopDragging(getCurrentPosition(), mSnapAlgorithm.getMiddleTarget(), 250,
+            EventBus.getDefault().send(new RecentsGrowingEvent());
+            stopDragging(getCurrentPosition(), mSnapAlgorithm.getMiddleTarget(), 336,
                     Interpolators.FAST_OUT_SLOW_IN);
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/stackdivider/ForcedResizableInfoActivity.java b/packages/SystemUI/src/com/android/systemui/stackdivider/ForcedResizableInfoActivity.java
index 177296b..18834ed 100644
--- a/packages/SystemUI/src/com/android/systemui/stackdivider/ForcedResizableInfoActivity.java
+++ b/packages/SystemUI/src/com/android/systemui/stackdivider/ForcedResizableInfoActivity.java
@@ -18,6 +18,7 @@
 
 import android.annotation.Nullable;
 import android.app.Activity;
+import android.app.ActivityManager;
 import android.os.Bundle;
 import android.view.KeyEvent;
 import android.view.MotionEvent;
@@ -75,4 +76,9 @@
         finish();
         return true;
     }
+
+    @Override
+    public void setTaskDescription(ActivityManager.TaskDescription taskDescription) {
+        // Do nothing
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java
index 237ca5e..be68344 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java
@@ -143,6 +143,7 @@
     protected static final int MSG_SHOW_NEXT_AFFILIATED_TASK = 1024;
     protected static final int MSG_SHOW_PREV_AFFILIATED_TASK = 1025;
     protected static final int MSG_TOGGLE_KEYBOARD_SHORTCUTS_MENU = 1026;
+    protected static final int MSG_DISMISS_KEYBOARD_SHORTCUTS_MENU = 1027;
 
     protected static final boolean ENABLE_HEADS_UP = true;
     protected static final String SETTING_HEADS_UP_TICKER = "ticker_gets_heads_up";
@@ -537,8 +538,7 @@
                     );
                 }
             } else if (WORK_CHALLENGE_UNLOCKED_NOTIFICATION_ACTION.equals(action)) {
-                final IntentSender intentSender = (IntentSender) intent
-                        .getParcelableExtra(Intent.EXTRA_INTENT);
+                final IntentSender intentSender = intent.getParcelableExtra(Intent.EXTRA_INTENT);
                 final String notificationKey = intent.getStringExtra(Intent.EXTRA_INDEX);
                 try {
                     mContext.startIntentSender(intentSender, null, 0, 0, 0);
@@ -910,7 +910,7 @@
         final float fontScale = newConfig.fontScale;
         final int density = newConfig.densityDpi;
         if (density != mDensity || mFontScale != fontScale) {
-            reInflateViews();
+            onDensityOrFontScaleChanged();
             mDensity = density;
             mFontScale = fontScale;
         }
@@ -926,7 +926,7 @@
         }
     }
 
-    protected void reInflateViews() {
+    protected void onDensityOrFontScaleChanged() {
         ArrayList<Entry> activeNotifications = mNotificationData.getActiveNotifications();
         for (int i = 0; i < activeNotifications.size(); i++) {
             Entry entry = activeNotifications.get(i);
@@ -1209,10 +1209,10 @@
     }
 
     @Override
-    public void showRecentApps(boolean triggeredFromAltTab) {
+    public void showRecentApps(boolean triggeredFromAltTab, boolean fromHome) {
         int msg = MSG_SHOW_RECENT_APPS;
         mHandler.removeMessages(msg);
-        mHandler.obtainMessage(msg, triggeredFromAltTab ? 1 : 0, 0).sendToTarget();
+        mHandler.obtainMessage(msg, triggeredFromAltTab ? 1 : 0, fromHome ? 1 : 0).sendToTarget();
     }
 
     @Override
@@ -1248,6 +1248,13 @@
     }
 
     @Override
+    public void dismissKeyboardShortcutsMenu() {
+        int msg = MSG_DISMISS_KEYBOARD_SHORTCUTS_MENU;
+        mHandler.removeMessages(msg);
+        mHandler.sendEmptyMessage(msg);
+    }
+
+    @Override
     public void toggleKeyboardShortcutsMenu(int deviceId) {
         int msg = MSG_TOGGLE_KEYBOARD_SHORTCUTS_MENU;
         mHandler.removeMessages(msg);
@@ -1315,10 +1322,10 @@
 
     /** Proxy for RecentsComponent */
 
-    protected void showRecents(boolean triggeredFromAltTab) {
+    protected void showRecents(boolean triggeredFromAltTab, boolean fromHome) {
         if (mRecents != null) {
             sendCloseSystemWindows(SYSTEM_DIALOG_REASON_RECENT_APPS);
-            mRecents.showRecents(triggeredFromAltTab, getStatusBarView());
+            mRecents.showRecents(triggeredFromAltTab, fromHome);
         }
     }
 
@@ -1330,7 +1337,7 @@
 
     protected void toggleRecents() {
         if (mRecents != null) {
-            mRecents.toggleRecents(mDisplay, mLayoutDirection, getStatusBarView());
+            mRecents.toggleRecents(mDisplay);
         }
     }
 
@@ -1344,6 +1351,10 @@
         KeyboardShortcuts.toggle(mContext, deviceId);
     }
 
+    protected void dismissKeyboardShortcuts() {
+        KeyboardShortcuts.dismiss();
+    }
+
     protected void cancelPreloadingRecents() {
         if (mRecents != null) {
             mRecents.cancelPreloadingRecents();
@@ -1495,7 +1506,7 @@
         public void handleMessage(Message m) {
             switch (m.what) {
              case MSG_SHOW_RECENT_APPS:
-                 showRecents(m.arg1 > 0);
+                 showRecents(m.arg1 > 0, m.arg2 != 0);
                  break;
              case MSG_HIDE_RECENT_APPS:
                  hideRecents(m.arg1 > 0, m.arg2 > 0);
@@ -1518,6 +1529,9 @@
              case MSG_TOGGLE_KEYBOARD_SHORTCUTS_MENU:
                   toggleKeyboardShortcuts(m.arg1);
                   break;
+             case MSG_DISMISS_KEYBOARD_SHORTCUTS_MENU:
+                  dismissKeyboardShortcuts();
+                  break;
             }
         }
     }
@@ -1924,11 +1938,23 @@
             callBackIntent.putExtra(Intent.EXTRA_INDEX, notificationKey);
             callBackIntent.setPackage(mContext.getPackageName());
 
-            newIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
-                    | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS | Intent.FLAG_ACTIVITY_CLEAR_TASK);
-            newIntent.putExtra(Intent.EXTRA_INTENT, PendingIntent
-                    .getBroadcast(mContext, 0, callBackIntent, 0).getIntentSender());
-            mContext.startActivity(newIntent);
+            PendingIntent callBackPendingIntent = PendingIntent.getBroadcast(
+                    mContext,
+                    0,
+                    callBackIntent,
+                    PendingIntent.FLAG_CANCEL_CURRENT |
+                            PendingIntent.FLAG_ONE_SHOT |
+                            PendingIntent.FLAG_IMMUTABLE
+            );
+            newIntent.putExtra(
+                    Intent.EXTRA_INTENT,
+                    callBackPendingIntent.getIntentSender()
+            );
+            try {
+                ActivityManagerNative.getDefault().startConfirmDeviceCredentialIntent(newIntent);
+            } catch (RemoteException ex) {
+                // ignore
+            }
             return true;
         }
 
@@ -2088,7 +2114,7 @@
                 smallIcon,
                 n.iconLevel,
                 n.number,
-                n.tickerText);
+                StatusBarIconView.contentDescForNotification(mContext, n));
         if (!iconView.set(ic)) {
             handleNotificationError(sbn, "Couldn't create icon: " + ic);
             return null;
@@ -2257,7 +2283,7 @@
                             n.getSmallIcon(),
                             n.iconLevel,
                             n.number,
-                            n.tickerText);
+                            StatusBarIconView.contentDescForNotification(mContext, n));
                     entry.icon.setNotification(n);
                     if (!entry.icon.set(ic)) {
                         handleNotificationError(notification, "Couldn't update icon: " + ic);
@@ -2281,7 +2307,7 @@
                     n.getSmallIcon(),
                     n.iconLevel,
                     n.number,
-                    n.tickerText);
+                    StatusBarIconView.contentDescForNotification(mContext, n));
             entry.icon.setNotification(n);
             entry.icon.set(ic);
             inflateViews(entry, mStackScroller);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java b/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java
index 99b6397..1bc2ebc 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java
@@ -74,6 +74,7 @@
     private static final int MSG_CLICK_QS_TILE                 = 29 << MSG_SHIFT;
     private static final int MSG_TOGGLE_APP_SPLIT_SCREEN       = 30 << MSG_SHIFT;
     private static final int MSG_APP_TRANSITION_FINISHED       = 31 << MSG_SHIFT;
+    private static final int MSG_DISMISS_KEYBOARD_SHORTCUTS    = 32 << MSG_SHIFT;
 
     public static final int FLAG_EXCLUDE_NONE = 0;
     public static final int FLAG_EXCLUDE_SEARCH_PANEL = 1 << 0;
@@ -103,18 +104,19 @@
         void topAppWindowChanged(boolean visible);
         void setImeWindowStatus(IBinder token, int vis, int backDisposition,
                 boolean showImeSwitcher);
-        void showRecentApps(boolean triggeredFromAltTab);
+        void showRecentApps(boolean triggeredFromAltTab, boolean fromHome);
         void hideRecentApps(boolean triggeredFromAltTab, boolean triggeredFromHomeKey);
         void toggleRecentApps();
         void toggleSplitScreen();
         void preloadRecentApps();
+        void dismissKeyboardShortcutsMenu();
         void toggleKeyboardShortcutsMenu(int deviceId);
         void cancelPreloadRecentApps();
         void setWindowState(int window, int state);
         void buzzBeepBlinked();
         void notificationLightOff();
         void notificationLightPulse(int argb, int onMillis, int offMillis);
-        void showScreenPinningRequest();
+        void showScreenPinningRequest(int taskId);
         void appTransitionPending();
         void appTransitionCancelled();
         void appTransitionStarting(long startTime, long duration);
@@ -210,11 +212,11 @@
         }
     }
 
-    public void showRecentApps(boolean triggeredFromAltTab) {
+    public void showRecentApps(boolean triggeredFromAltTab, boolean fromHome) {
         synchronized (mLock) {
             mHandler.removeMessages(MSG_SHOW_RECENT_APPS);
             mHandler.obtainMessage(MSG_SHOW_RECENT_APPS,
-                    triggeredFromAltTab ? 1 : 0, 0, null).sendToTarget();
+                    triggeredFromAltTab ? 1 : 0, fromHome ? 1 : 0, null).sendToTarget();
         }
     }
 
@@ -256,6 +258,14 @@
     }
 
     @Override
+    public void dismissKeyboardShortcutsMenu() {
+        synchronized (mLock) {
+            mHandler.removeMessages(MSG_DISMISS_KEYBOARD_SHORTCUTS);
+            mHandler.obtainMessage(MSG_DISMISS_KEYBOARD_SHORTCUTS).sendToTarget();
+        }
+    }
+
+    @Override
     public void toggleKeyboardShortcutsMenu(int deviceId) {
         synchronized (mLock) {
             mHandler.removeMessages(MSG_TOGGLE_KEYBOARD_SHORTCUTS);
@@ -298,9 +308,10 @@
         }
     }
 
-    public void showScreenPinningRequest() {
+    public void showScreenPinningRequest(int taskId) {
         synchronized (mLock) {
-            mHandler.sendEmptyMessage(MSG_SHOW_SCREEN_PIN_REQUEST);
+            mHandler.obtainMessage(MSG_SHOW_SCREEN_PIN_REQUEST, taskId, 0, null)
+                    .sendToTarget();
         }
     }
 
@@ -420,7 +431,7 @@
                             msg.getData().getBoolean(SHOW_IME_SWITCHER_KEY, false));
                     break;
                 case MSG_SHOW_RECENT_APPS:
-                    mCallbacks.showRecentApps(msg.arg1 != 0);
+                    mCallbacks.showRecentApps(msg.arg1 != 0, msg.arg2 != 0);
                     break;
                 case MSG_HIDE_RECENT_APPS:
                     mCallbacks.hideRecentApps(msg.arg1 != 0, msg.arg2 != 0);
@@ -434,6 +445,9 @@
                 case MSG_CANCEL_PRELOAD_RECENT_APPS:
                     mCallbacks.cancelPreloadRecentApps();
                     break;
+                case MSG_DISMISS_KEYBOARD_SHORTCUTS:
+                    mCallbacks.dismissKeyboardShortcutsMenu();
+                    break;
                 case MSG_TOGGLE_KEYBOARD_SHORTCUTS:
                     mCallbacks.toggleKeyboardShortcutsMenu(msg.arg1);
                     break;
@@ -450,7 +464,7 @@
                     mCallbacks.notificationLightPulse((Integer) msg.obj, msg.arg1, msg.arg2);
                     break;
                 case MSG_SHOW_SCREEN_PIN_REQUEST:
-                    mCallbacks.showScreenPinningRequest();
+                    mCallbacks.showScreenPinningRequest(msg.arg1);
                     break;
                 case MSG_APP_TRANSITION_PENDING:
                     mCallbacks.appTransitionPending();
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableNotificationRow.java b/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableNotificationRow.java
index e25f9de..caa1585 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableNotificationRow.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableNotificationRow.java
@@ -41,6 +41,7 @@
 import android.widget.ImageView;
 import android.widget.RemoteViews;
 
+import com.android.internal.util.NotificationColorUtil;
 import com.android.systemui.R;
 import com.android.systemui.classifier.FalsingManager;
 import com.android.systemui.statusbar.notification.HybridNotificationView;
@@ -103,6 +104,7 @@
     private int mMaxExpandHeight;
     private int mHeadsUpHeight;
     private View mVetoButton;
+    private int mNotificationColor;
     private boolean mClearable;
     private ExpansionLogger mLogger;
     private String mLoggingKey;
@@ -226,6 +228,7 @@
         mPrivateLayout.onNotificationUpdated(entry);
         mPublicLayout.onNotificationUpdated(entry);
         mShowingPublicInitialized = false;
+        updateNotificationColor();
         updateClearability();
         if (mIsSummaryWithChildren) {
             recreateNotificationHeader();
@@ -260,6 +263,9 @@
         int headsUpheight = headsUpCustom && beforeN ? mMaxHeadsUpHeightLegacy
                 : mMaxHeadsUpHeight;
         layout.setHeights(minHeight, headsUpheight, mNotificationMaxHeight);
+        if (mSettingsIconRow != null) {
+            mSettingsIconRow.updateVerticalLocation();
+        }
     }
 
     public StatusBarNotification getStatusBarNotification() {
@@ -603,11 +609,12 @@
     }
 
     public int getNotificationColor() {
-        int color = getStatusBarNotification().getNotification().color;
-        if (color == Notification.COLOR_DEFAULT) {
-            return mContext.getColor(com.android.internal.R.color.notification_icon_default_color);
-        }
-        return color;
+        return mNotificationColor;
+    }
+
+    private void updateNotificationColor() {
+        mNotificationColor = NotificationColorUtil.resolveContrastColor(mContext,
+                getStatusBarNotification().getNotification().color);
     }
 
     public HybridNotificationView getSingleLineView() {
@@ -1342,7 +1349,7 @@
             expandButton.setVisibility(VISIBLE);
             mNotificationHeader.setOnClickListener(mExpandClickListener);
             mNotificationHeaderWrapper = NotificationViewWrapper.wrap(getContext(),
-                    mNotificationHeader);
+                    mNotificationHeader, this);
             addView(mNotificationHeader, indexOfChild(mChildrenContainer) + 1);
             mTranslateableViews.add(mNotificationHeader);
         } else {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/KeyboardShortcutsReceiver.java b/packages/SystemUI/src/com/android/systemui/statusbar/KeyboardShortcutsReceiver.java
index 5f4ebd8..8a5bece 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/KeyboardShortcutsReceiver.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/KeyboardShortcutsReceiver.java
@@ -27,6 +27,8 @@
     public void onReceive(Context context, Intent intent) {
         if (Intent.ACTION_SHOW_KEYBOARD_SHORTCUTS.equals(intent.getAction())) {
             KeyboardShortcuts.show(context, -1 /* deviceId unknown */);
+        } else if (Intent.ACTION_DISMISS_KEYBOARD_SHORTCUTS.equals(intent.getAction())) {
+            KeyboardShortcuts.dismiss();
         }
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationContentView.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationContentView.java
index 491ffde..7be50c4 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationContentView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationContentView.java
@@ -177,6 +177,13 @@
             if (updateContractedHeaderWidth()) {
                 mContractedChild.measure(widthMeasureSpec, heightSpec);
             }
+            if (mExpandedChild != null
+                    && mContractedChild.getMeasuredHeight() > mExpandedChild.getMeasuredHeight()) {
+                // the Expanded child is smaller then the collapsed. Let's remeasure it.
+                heightSpec = MeasureSpec.makeMeasureSpec(mContractedChild.getMeasuredHeight(),
+                        MeasureSpec.EXACTLY);
+                mExpandedChild.measure(widthMeasureSpec, heightSpec);
+            }
         }
         if (mHeadsUpChild != null) {
             int size = Math.min(maxSize, mHeadsUpHeight);
@@ -307,7 +314,8 @@
         addView(child);
         mContractedChild = child;
         mContractedChild.addOnLayoutChangeListener(mLayoutUpdater);
-        mContractedWrapper = NotificationViewWrapper.wrap(getContext(), child);
+        mContractedWrapper = NotificationViewWrapper.wrap(getContext(), child,
+                mContainingNotification);
         selectLayout(false /* animate */, true /* force */);
         mContractedWrapper.setDark(mDark, false /* animate */, 0 /* delay */);
     }
@@ -321,7 +329,8 @@
         addView(child);
         mExpandedChild = child;
         mExpandedChild.addOnLayoutChangeListener(mLayoutUpdater);
-        mExpandedWrapper = NotificationViewWrapper.wrap(getContext(), child);
+        mExpandedWrapper = NotificationViewWrapper.wrap(getContext(), child,
+                mContainingNotification);
         selectLayout(false /* animate */, true /* force */);
     }
 
@@ -334,7 +343,8 @@
         addView(child);
         mHeadsUpChild = child;
         mHeadsUpChild.addOnLayoutChangeListener(mLayoutUpdater);
-        mHeadsUpWrapper = NotificationViewWrapper.wrap(getContext(), child);
+        mHeadsUpWrapper = NotificationViewWrapper.wrap(getContext(), child,
+                mContainingNotification);
         selectLayout(false /* animate */, true /* force */);
     }
 
@@ -834,10 +844,14 @@
     public void updateExpandButtons(boolean expandable) {
         mExpandable = expandable;
         // if the expanded child has the same height as the collapsed one we hide it.
-        if (mExpandedChild != null && mExpandedChild.getHeight() != 0 &&
-                ((mIsHeadsUp && mExpandedChild.getHeight() == mHeadsUpChild.getHeight()) ||
-                (!mIsHeadsUp && mExpandedChild.getHeight() == mContractedChild.getHeight()))) {
-            expandable = false;
+        if (mExpandedChild != null && mExpandedChild.getHeight() != 0) {
+            if ((!mIsHeadsUp || mHeadsUpChild == null)) {
+                if (mExpandedChild.getHeight() == mContractedChild.getHeight()) {
+                    expandable = false;
+                }
+            } else if (mExpandedChild.getHeight() == mHeadsUpChild.getHeight()) {
+                expandable = false;
+            }
         }
         if (mExpandedChild != null) {
             mExpandedWrapper.updateExpandability(expandable, mExpandClickListener);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGuts.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGuts.java
index 3c464d5..057b020 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGuts.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGuts.java
@@ -22,12 +22,14 @@
 import android.content.Context;
 import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
+import android.content.res.ColorStateList;
 import android.graphics.Canvas;
 import android.graphics.drawable.Drawable;
 import android.os.Handler;
 import android.os.RemoteException;
 import android.os.ServiceManager;
 import android.service.notification.NotificationListenerService;
+import android.service.notification.NotificationListenerService.Ranking;
 import android.service.notification.StatusBarNotification;
 import android.util.AttributeSet;
 import android.view.View;
@@ -60,10 +62,18 @@
     private int mActualHeight;
     private boolean mExposed;
     private INotificationManager mINotificationManager;
-    private int mStartingImportance;
+    private int mStartingUserImportance;
+    private int mNotificationImportance;
     private boolean mShowSlider;
 
     private SeekBar mSeekBar;
+    private ImageView mAutoButton;
+    private ColorStateList mActiveSliderTint;
+    private ColorStateList mInactiveSliderTint;
+    private TextView mImportanceSummary;
+    private TextView mImportanceTitle;
+    private boolean mAuto;
+
     private RadioButton mBlock;
     private RadioButton mSilent;
     private RadioButton mReset;
@@ -145,9 +155,14 @@
 
     void bindImportance(final PackageManager pm, final StatusBarNotification sbn,
             final ExpandableNotificationRow row, final int importance) {
-        mStartingImportance = importance;
         mINotificationManager = INotificationManager.Stub.asInterface(
                 ServiceManager.getService(Context.NOTIFICATION_SERVICE));
+        mStartingUserImportance = NotificationListenerService.Ranking.IMPORTANCE_UNSPECIFIED;
+        try {
+            mStartingUserImportance =
+                    mINotificationManager.getImportance(sbn.getPackageName(), sbn.getUid());
+        } catch (RemoteException e) {}
+        mNotificationImportance = importance;
         boolean systemApp = false;
         try {
             final PackageInfo info =
@@ -160,29 +175,25 @@
         final View importanceSlider = row.findViewById(R.id.importance_slider);
         final View importanceButtons = row.findViewById(R.id.importance_buttons);
         if (mShowSlider) {
-            bindSlider(importanceSlider, sbn, systemApp);
+            bindSlider(importanceSlider, systemApp);
             importanceSlider.setVisibility(View.VISIBLE);
             importanceButtons.setVisibility(View.GONE);
         } else {
-            mStartingImportance = NotificationListenerService.Ranking.IMPORTANCE_UNSPECIFIED;
-            try {
-                mStartingImportance =
-                        mINotificationManager.getImportance(sbn.getPackageName(), sbn.getUid());
-            } catch (RemoteException e) {}
-            bindToggles(importanceButtons, mStartingImportance, systemApp);
+
+            bindToggles(importanceButtons, mStartingUserImportance, systemApp);
             importanceButtons.setVisibility(View.VISIBLE);
             importanceSlider.setVisibility(View.GONE);
         }
     }
 
     public boolean hasImportanceChanged() {
-        return mStartingImportance != getSelectedImportance();
+        return mStartingUserImportance != getSelectedImportance();
     }
 
     void saveImportance(final StatusBarNotification sbn) {
         int progress = getSelectedImportance();
         MetricsLogger.action(mContext, MetricsEvent.ACTION_SAVE_IMPORTANCE,
-                progress - mStartingImportance);
+                progress - mStartingUserImportance);
         try {
             mINotificationManager.setImportance(sbn.getPackageName(), sbn.getUid(), progress);
         } catch (RemoteException e) {
@@ -192,14 +203,18 @@
 
     private int getSelectedImportance() {
         if (mSeekBar!= null && mSeekBar.isShown()) {
-            return mSeekBar.getProgress();
+            if (mSeekBar.isEnabled()) {
+                return mSeekBar.getProgress();
+            } else {
+                return Ranking.IMPORTANCE_UNSPECIFIED;
+            }
         } else {
             if (mBlock.isChecked()) {
-                return NotificationListenerService.Ranking.IMPORTANCE_NONE;
+                return Ranking.IMPORTANCE_NONE;
             } else if (mSilent.isChecked()) {
-                return NotificationListenerService.Ranking.IMPORTANCE_LOW;
+                return Ranking.IMPORTANCE_LOW;
             } else {
-                return NotificationListenerService.Ranking.IMPORTANCE_UNSPECIFIED;
+                return Ranking.IMPORTANCE_UNSPECIFIED;
             }
         }
     }
@@ -229,16 +244,14 @@
         }
     }
 
-    private void bindSlider(final View importanceSlider, final StatusBarNotification sbn,
-            final boolean systemApp) {
-        final TextView importanceSummary = ((TextView) importanceSlider.findViewById(R.id.summary));
-        final TextView importanceTitle = ((TextView) importanceSlider.findViewById(R.id.title));
+    private void bindSlider(final View importanceSlider, final boolean systemApp) {
+        mActiveSliderTint = loadColorStateList(R.color.notification_guts_slider_color);
+        mInactiveSliderTint = loadColorStateList(R.color.notification_guts_disabled_slider_color);
+
+        mImportanceSummary = ((TextView) importanceSlider.findViewById(R.id.summary));
+        mImportanceTitle = ((TextView) importanceSlider.findViewById(R.id.title));
         mSeekBar = (SeekBar) importanceSlider.findViewById(R.id.seekbar);
 
-        if (systemApp) {
-            ((ImageView) importanceSlider.findViewById(R.id.low_importance)).getDrawable().setTint(
-                    mContext.getColor(R.color.notification_guts_disabled_icon_tint));
-        }
         final int minProgress = systemApp ?
                 NotificationListenerService.Ranking.IMPORTANCE_MIN
                 : NotificationListenerService.Ranking.IMPORTANCE_NONE;
@@ -267,42 +280,80 @@
                 // no-op
             }
 
-            private void updateTitleAndSummary(int progress) {
-                switch (progress) {
-                    case NotificationListenerService.Ranking.IMPORTANCE_NONE:
-                        importanceSummary.setText(mContext.getString(
-                                R.string.notification_importance_blocked));
-                        importanceTitle.setText(mContext.getString(R.string.blocked_importance));
-                        break;
-                    case NotificationListenerService.Ranking.IMPORTANCE_MIN:
-                        importanceSummary.setText(mContext.getString(
-                                R.string.notification_importance_min));
-                        importanceTitle.setText(mContext.getString(R.string.min_importance));
-                        break;
-                    case NotificationListenerService.Ranking.IMPORTANCE_LOW:
-                        importanceSummary.setText(mContext.getString(
-                                R.string.notification_importance_low));
-                        importanceTitle.setText(mContext.getString(R.string.low_importance));
-                        break;
-                    case NotificationListenerService.Ranking.IMPORTANCE_DEFAULT:
-                        importanceSummary.setText(mContext.getString(
-                                R.string.notification_importance_default));
-                        importanceTitle.setText(mContext.getString(R.string.default_importance));
-                        break;
-                    case NotificationListenerService.Ranking.IMPORTANCE_HIGH:
-                        importanceSummary.setText(mContext.getString(
-                                R.string.notification_importance_high));
-                        importanceTitle.setText(mContext.getString(R.string.high_importance));
-                        break;
-                    case NotificationListenerService.Ranking.IMPORTANCE_MAX:
-                        importanceSummary.setText(mContext.getString(
-                                R.string.notification_importance_max));
-                        importanceTitle.setText(mContext.getString(R.string.max_importance));
-                        break;
-                }
+
+        });
+        mSeekBar.setProgress(mNotificationImportance);
+
+        mAutoButton = (ImageView) importanceSlider.findViewById(R.id.auto_importance);
+        mAutoButton.setOnClickListener(new OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                mAuto = !mAuto;
+                applyAuto();
             }
         });
-        mSeekBar.setProgress(mStartingImportance);
+        mAuto = mStartingUserImportance == Ranking.IMPORTANCE_UNSPECIFIED;
+        applyAuto();
+    }
+
+    private void applyAuto() {
+        mSeekBar.setEnabled(!mAuto);
+
+        final ColorStateList tint = mAuto ? mInactiveSliderTint : mActiveSliderTint;
+        Drawable icon = mAutoButton.getDrawable().mutate();
+        icon.setTintList(tint);
+        mAutoButton.setImageDrawable(icon);
+        mSeekBar.setProgressTintList(tint);
+        mSeekBar.setThumbTintList(tint);
+
+        if (mAuto) {
+            mSeekBar.setProgress(mNotificationImportance);
+            mImportanceSummary.setText(mContext.getString(
+                    R.string.notification_importance_user_unspecified));
+            mImportanceTitle.setText(mContext.getString(
+                    R.string.user_unspecified_importance));
+        } else {
+            updateTitleAndSummary(mSeekBar.getProgress());
+        }
+    }
+
+    private void updateTitleAndSummary(int progress) {
+        switch (progress) {
+            case Ranking.IMPORTANCE_NONE:
+                mImportanceSummary.setText(mContext.getString(
+                        R.string.notification_importance_blocked));
+                mImportanceTitle.setText(mContext.getString(R.string.blocked_importance));
+                break;
+            case Ranking.IMPORTANCE_MIN:
+                mImportanceSummary.setText(mContext.getString(
+                        R.string.notification_importance_min));
+                mImportanceTitle.setText(mContext.getString(R.string.min_importance));
+                break;
+            case Ranking.IMPORTANCE_LOW:
+                mImportanceSummary.setText(mContext.getString(
+                        R.string.notification_importance_low));
+                mImportanceTitle.setText(mContext.getString(R.string.low_importance));
+                break;
+            case Ranking.IMPORTANCE_DEFAULT:
+                mImportanceSummary.setText(mContext.getString(
+                        R.string.notification_importance_default));
+                mImportanceTitle.setText(mContext.getString(R.string.default_importance));
+                break;
+            case Ranking.IMPORTANCE_HIGH:
+                mImportanceSummary.setText(mContext.getString(
+                        R.string.notification_importance_high));
+                mImportanceTitle.setText(mContext.getString(R.string.high_importance));
+                break;
+            case Ranking.IMPORTANCE_MAX:
+                mImportanceSummary.setText(mContext.getString(
+                        R.string.notification_importance_max));
+                mImportanceTitle.setText(mContext.getString(R.string.max_importance));
+                break;
+        }
+    }
+
+    private ColorStateList loadColorStateList(int colorResId) {
+        return ColorStateList.valueOf(mContext.getColor(colorResId));
     }
 
     public void closeControls(int x, int y, boolean notify) {
@@ -353,7 +404,6 @@
 
     @Override
     public boolean hasOverlappingRendering() {
-
         // Prevents this view from creating a layer when alpha is animating.
         return false;
     }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationHeaderUtil.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationHeaderUtil.java
index 06d79a7..3363993 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationHeaderUtil.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationHeaderUtil.java
@@ -65,12 +65,7 @@
             ImageView expand = (ImageView) view.findViewById(
                     com.android.internal.R.id.expand_button);
             applyToChild(icon, apply, header.getOriginalIconColor());
-            int color = header.getOriginalNotificationColor();
-            if (color == Notification.COLOR_DEFAULT) {
-                color = view.getContext().getColor(
-                        com.android.internal.R.color.notification_icon_default_color);
-            }
-            applyToChild(expand, apply, color);
+            applyToChild(expand, apply, header.getOriginalNotificationColor());
         }
 
         private void applyToChild(View view, boolean shouldApply, int originalColor) {
@@ -116,7 +111,7 @@
                     @Override
                     public boolean compare(View parent, View child, Object parentData,
                             Object childData) {
-                        return parent.getVisibility() == View.VISIBLE;
+                        return parent.getVisibility() != View.GONE;
                     }
 
                     @Override
@@ -161,11 +156,11 @@
                 mComparators.get(compI).apply(row);
             }
             // We need to sanitize the dividers since they might be off-balance now
-            sanitizeDividers(row);
+            sanitizeHeaderViews(row);
         }
     }
 
-    private void sanitizeDividers(ExpandableNotificationRow row) {
+    private void sanitizeHeaderViews(ExpandableNotificationRow row) {
         if (row.isSummaryWithChildren()) {
             sanitizeHeader(row.getNotificationHeader());
             return;
@@ -188,9 +183,26 @@
         if (rowHeader == null) {
             return;
         }
+        final int childCount = rowHeader.getChildCount();
+        View time = rowHeader.findViewById(com.android.internal.R.id.time);
+        boolean hasVisibleText = false;
+        for (int i = 1; i < childCount - 1 ; i++) {
+            View child = rowHeader.getChildAt(i);
+            if (child instanceof TextView
+                    && child.getVisibility() != View.GONE
+                    && !mDividers.contains(Integer.valueOf(child.getId()))
+                    && child != time) {
+                hasVisibleText = true;
+                break;
+            }
+        }
+        // in case no view is visible we make sure the time is visible
+        int timeVisibility = !hasVisibleText
+                || mRow.getStatusBarNotification().getNotification().showsTimeOrChronometer()
+                ? View.VISIBLE : View.GONE;
+        time.setVisibility(timeVisibility);
         View left = null;
         View right;
-        final int childCount = rowHeader.getChildCount();
         for (int i = 1; i < childCount - 1 ; i++) {
             View child = rowHeader.getChildAt(i);
             if (mDividers.contains(Integer.valueOf(child.getId()))) {
@@ -202,14 +214,14 @@
                         // A divider was found, this needs to be hidden
                         i--;
                         break;
-                    } else if (right.getVisibility() == View.VISIBLE) {
+                    } else if (right.getVisibility() != View.GONE && right instanceof TextView) {
                         visible = left != null;
                         left = right;
                         break;
                     }
                 }
                 child.setVisibility(visible ? View.VISIBLE : View.GONE);
-            } else if (child.getVisibility() == View.VISIBLE) {
+            } else if (child.getVisibility() != View.GONE && child instanceof TextView) {
                 left = child;
             }
         }
@@ -219,7 +231,7 @@
         for (int compI = 0; compI < mComparators.size(); compI++) {
             mComparators.get(compI).apply(row, true /* reset */);
         }
-        sanitizeDividers(row);
+        sanitizeHeaderViews(row);
     }
 
     private static class HeaderProcessor {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationSettingsIconRow.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationSettingsIconRow.java
index 9ed5022..060d8f4 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationSettingsIconRow.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationSettingsIconRow.java
@@ -55,8 +55,11 @@
     private boolean mOnLeft = true;
     private boolean mDismissing = false;
     private boolean mSnapping = false;
+    private boolean mIconPlaced = false;
+
     private int[] mGearLocation = new int[2];
     private int[] mParentLocation = new int[2];
+    private int mVertSpaceForGear;
 
     public NotificationSettingsIconRow(Context context) {
         this(context, null);
@@ -83,16 +86,18 @@
         setOnClickListener(this);
         mHorizSpaceForGear =
                 getResources().getDimensionPixelOffset(R.dimen.notification_gear_width);
+        mVertSpaceForGear = getResources().getDimensionPixelOffset(R.dimen.notification_min_height);
         resetState();
     }
 
     public void resetState() {
         setGearAlpha(0f);
+        mIconPlaced = false;
         mSettingsFadedIn = false;
         mAnimating = false;
         mSnapping = false;
         mDismissing = false;
-        setIconLocation(true /* on left */, true /* force */);
+        setIconLocation(true /* on left */);
         if (mListener != null) {
             mListener.onSettingsIconRowReset(mParent);
         }
@@ -104,7 +109,7 @@
 
     public void setNotificationRowParent(ExpandableNotificationRow parent) {
         mParent = parent;
-        setIconLocation(mOnLeft, true /* force */);
+        setIconLocation(mOnLeft);
     }
 
     public void setAppName(String appName) {
@@ -184,7 +189,7 @@
         if (isIconLocationChange(transX)) {
             setGearAlpha(0f);
         }
-        setIconLocation(transX > 0 /* fromLeft */, false /* force */);
+        setIconLocation(transX > 0 /* fromLeft */);
         mFadeAnimator = ValueAnimator.ofFloat(mGearIcon.getAlpha(), 1);
         mFadeAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
             @Override
@@ -221,22 +226,39 @@
         mFadeAnimator.start();
     }
 
-    @Override
-    public void onRtlPropertiesChanged(int layoutDirection) {
-        setIconLocation(mOnLeft, true /* force */);
+    public void updateVerticalLocation() {
+        if (mParent == null) {
+            return;
+        }
+        int parentHeight = mParent.getCollapsedHeight();
+        if (parentHeight < mVertSpaceForGear) {
+            mGearIcon.setTranslationY((parentHeight / 2) - (mGearIcon.getHeight() / 2));
+        } else {
+            mGearIcon.setTranslationY((mVertSpaceForGear - mGearIcon.getHeight()) / 2);
+        }
     }
 
-    public void setIconLocation(boolean onLeft, boolean force) {
-        if ((!force && onLeft == mOnLeft) || mSnapping || mParent == null) {
+    @Override
+    public void onRtlPropertiesChanged(int layoutDirection) {
+        setIconLocation(mOnLeft);
+    }
+
+    public void setIconLocation(boolean onLeft) {
+        updateVerticalLocation();
+        if ((mIconPlaced && onLeft == mOnLeft) || mSnapping || mParent == null
+                || mGearIcon.getWidth() == 0) {
             // Do nothing
             return;
         }
         final boolean isRtl = mParent.isLayoutRtl();
+
         // TODO No need to cast to float here once b/28050538 is fixed.
         final float left = (float) (isRtl ? -(mParent.getWidth() - mHorizSpaceForGear) : 0);
         final float right = (float) (isRtl ? 0 : (mParent.getWidth() - mHorizSpaceForGear));
-        setTranslationX(onLeft ? left : right);
+        final float centerX = ((mHorizSpaceForGear - mGearIcon.getWidth()) / 2);
+        setTranslationX(onLeft ? left + centerX : right + centerX);
         mOnLeft = onLeft;
+        mIconPlaced = true;
     }
 
     public boolean isIconLocationChange(float translation) {
@@ -264,9 +286,8 @@
                 mParent.getLocationOnScreen(mParentLocation);
 
                 final int centerX = (int) (mHorizSpaceForGear / 2);
-                // Top / bottom padding are not equal, need to subtract them to get center of gear.
-                final int centerY = (int) (mGearIcon.getHeight() - mGearIcon.getPaddingTop()
-                        - mGearIcon.getPaddingBottom()) / 2 + mGearIcon.getPaddingTop();
+                final int centerY =
+                        (int) (mGearIcon.getTranslationY() * 2 + mGearIcon.getHeight())/ 2;
                 final int x = mGearLocation[0] - mParentLocation[0] + centerX;
                 final int y = mGearLocation[1] - mParentLocation[1] + centerY;
                 mListener.onGearTouched(mParent, x, y);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/SignalClusterView.java b/packages/SystemUI/src/com/android/systemui/statusbar/SignalClusterView.java
index 988d537..2b59c68 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/SignalClusterView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/SignalClusterView.java
@@ -295,6 +295,14 @@
             return;
         }
         // Clear out all old subIds.
+        for (PhoneState state : mPhoneStates) {
+            if (state.mMobile != null) {
+                state.maybeStopAnimatableDrawable(state.mMobile);
+            }
+            if (state.mMobileDark != null) {
+                state.maybeStopAnimatableDrawable(state.mMobileDark);
+            }
+        }
         mPhoneStates.clear();
         if (mMobileSignalGroup != null) {
             mMobileSignalGroup.removeAllViews();
@@ -391,6 +399,11 @@
                 state.mMobile.setImageDrawable(null);
                 state.mLastMobileStrengthId = -1;
             }
+            if (state.mMobileDark != null) {
+                state.maybeStopAnimatableDrawable(state.mMobileDark);
+                state.mMobileDark.setImageDrawable(null);
+                state.mLastMobileStrengthId = -1;
+            }
             if (state.mMobileType != null) {
                 state.mMobileType.setImageDrawable(null);
                 state.mLastMobileTypeId = -1;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java b/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java
index e4accf5..6d76763e 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java
@@ -18,6 +18,7 @@
 
 import android.app.Notification;
 import android.content.Context;
+import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.graphics.Canvas;
 import android.graphics.Paint;
@@ -39,6 +40,7 @@
 
 public class StatusBarIconView extends AnimatedImageView {
     private static final String TAG = "StatusBarIconView";
+    private boolean mAlwaysScaleIcon;
 
     private StatusBarIcon mIcon;
     @ViewDebug.ExportedProperty private String mSlot;
@@ -49,6 +51,7 @@
     private String mNumberText;
     private Notification mNotification;
     private final boolean mBlocked;
+    private int mDensity;
 
     public StatusBarIconView(Context context, String slot, Notification notification) {
         this(context, slot, notification, false);
@@ -57,7 +60,6 @@
     public StatusBarIconView(Context context, String slot, Notification notification,
             boolean blocked) {
         super(context);
-        final Resources res = context.getResources();
         mBlocked = blocked;
         mSlot = slot;
         mNumberPain = new Paint();
@@ -65,18 +67,37 @@
         mNumberPain.setColor(context.getColor(R.drawable.notification_number_text_color));
         mNumberPain.setAntiAlias(true);
         setNotification(notification);
+        maybeUpdateIconScale();
+        setScaleType(ScaleType.CENTER);
+        mDensity = context.getResources().getDisplayMetrics().densityDpi;
+    }
 
+    private void maybeUpdateIconScale() {
         // We do not resize and scale system icons (on the right), only notification icons (on the
         // left).
-        if (notification != null) {
-            final int outerBounds = res.getDimensionPixelSize(R.dimen.status_bar_icon_size);
-            final int imageBounds = res.getDimensionPixelSize(R.dimen.status_bar_icon_drawing_size);
-            final float scale = (float)imageBounds / (float)outerBounds;
-            setScaleX(scale);
-            setScaleY(scale);
+        if (mNotification != null || mAlwaysScaleIcon) {
+            updateIconScale();
         }
+    }
 
-        setScaleType(ScaleType.CENTER);
+    private void updateIconScale() {
+        Resources res = mContext.getResources();
+        final int outerBounds = res.getDimensionPixelSize(R.dimen.status_bar_icon_size);
+        final int imageBounds = res.getDimensionPixelSize(R.dimen.status_bar_icon_drawing_size);
+        final float scale = (float)imageBounds / (float)outerBounds;
+        setScaleX(scale);
+        setScaleY(scale);
+    }
+
+    @Override
+    protected void onConfigurationChanged(Configuration newConfig) {
+        super.onConfigurationChanged(newConfig);
+        int density = newConfig.densityDpi;
+        if (density != mDensity) {
+            mDensity = density;
+            maybeUpdateIconScale();
+            updateDrawable();
+        }
     }
 
     public void setNotification(Notification notification) {
@@ -87,12 +108,9 @@
     public StatusBarIconView(Context context, AttributeSet attrs) {
         super(context, attrs);
         mBlocked = false;
-        final Resources res = context.getResources();
-        final int outerBounds = res.getDimensionPixelSize(R.dimen.status_bar_icon_size);
-        final int imageBounds = res.getDimensionPixelSize(R.dimen.status_bar_icon_drawing_size);
-        final float scale = (float)imageBounds / (float)outerBounds;
-        setScaleX(scale);
-        setScaleY(scale);
+        mAlwaysScaleIcon = true;
+        updateIconScale();
+        mDensity = context.getResources().getDisplayMetrics().densityDpi;
     }
 
     private static boolean streq(String a, String b) {
@@ -289,9 +307,9 @@
 
     private void setContentDescription(Notification notification) {
         if (notification != null) {
-            CharSequence tickerText = notification.tickerText;
-            if (!TextUtils.isEmpty(tickerText)) {
-                setContentDescription(tickerText);
+            String d = contentDescForNotification(mContext, notification);
+            if (!TextUtils.isEmpty(d)) {
+                setContentDescription(d);
             }
         }
     }
@@ -304,4 +322,12 @@
     public String getSlot() {
         return mSlot;
     }
+
+
+    public static String contentDescForNotification(Context c, Notification n) {
+        Notification.Builder builder = Notification.Builder.recoverBuilder(c, n);
+        String appName = builder.loadHeaderAppName();
+        CharSequence ticker = n.tickerText;
+        return c.getString(R.string.accessibility_desc_notification_icon, appName, ticker);
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java
index 811687c..d1fc780 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java
@@ -178,7 +178,7 @@
         @Override
         public void onTaskStackChanged() {
             SystemServicesProxy ssp = Recents.getSystemServices();
-            ActivityManager.RunningTaskInfo runningTaskInfo = ssp.getTopMostTask();
+            ActivityManager.RunningTaskInfo runningTaskInfo = ssp.getRunningTask();
             mController.taskChanged(runningTaskInfo.baseActivity.getPackageName());
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/car/UserGridView.java b/packages/SystemUI/src/com/android/systemui/statusbar/car/UserGridView.java
index 2294931..d90a21d 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/car/UserGridView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/car/UserGridView.java
@@ -109,7 +109,7 @@
 
     private void showOfflineAuthUi() {
         // TODO: Show keyguard UI in-place.
-        mStatusBar.executeRunnableDismissingKeyguard(null, null, true, true);
+        mStatusBar.executeRunnableDismissingKeyguard(null, null, true, true, true);
     }
 
     @Override
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/FakeShadowView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/FakeShadowView.java
index 32c26ba..0c1891e1 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/FakeShadowView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/FakeShadowView.java
@@ -25,6 +25,7 @@
 import android.view.ViewOutlineProvider;
 import android.widget.LinearLayout;
 
+import com.android.systemui.R;
 import com.android.systemui.statusbar.AlphaOptimizedFrameLayout;
 
 /**
@@ -32,6 +33,7 @@
  */
 public class FakeShadowView extends AlphaOptimizedFrameLayout {
     public static final float SHADOW_SIBLING_TRESHOLD = 0.1f;
+    private final int mShadowMinHeight;
 
     private View mFakeShadow;
     private float mOutlineAlpha;
@@ -64,6 +66,8 @@
             }
         });
         addView(mFakeShadow);
+        mShadowMinHeight = Math.max(1, context.getResources()
+                .getDimensionPixelSize(R.dimen.notification_divider_height));
     }
 
     public void setFakeShadowTranslationZ(float fakeShadowTranslationZ, float outlineAlpha,
@@ -72,6 +76,7 @@
             mFakeShadow.setVisibility(INVISIBLE);
         } else {
             mFakeShadow.setVisibility(VISIBLE);
+            fakeShadowTranslationZ = Math.max(mShadowMinHeight, fakeShadowTranslationZ);
             mFakeShadow.setTranslationZ(fakeShadowTranslationZ);
             mFakeShadow.setTranslationX(outlineTranslation);
             mFakeShadow.setTranslationY(shadowYEnd - mFakeShadow.getHeight());
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationBigPictureTemplateViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationBigPictureTemplateViewWrapper.java
index c561601..6084770 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationBigPictureTemplateViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationBigPictureTemplateViewWrapper.java
@@ -23,13 +23,16 @@
 import android.service.notification.StatusBarNotification;
 import android.view.View;
 
+import com.android.systemui.statusbar.ExpandableNotificationRow;
+
 /**
  * Wraps a notification containing a big picture template
  */
 public class NotificationBigPictureTemplateViewWrapper extends NotificationTemplateViewWrapper {
 
-    protected NotificationBigPictureTemplateViewWrapper(Context ctx, View view) {
-        super(ctx, view);
+    protected NotificationBigPictureTemplateViewWrapper(Context ctx, View view,
+            ExpandableNotificationRow row) {
+        super(ctx, view, row);
     }
 
     @Override
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationBigTextTemplateViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationBigTextTemplateViewWrapper.java
index 487a7a0..3f49125 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationBigTextTemplateViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationBigTextTemplateViewWrapper.java
@@ -21,6 +21,7 @@
 import android.view.View;
 
 import com.android.internal.widget.ImageFloatingTextView;
+import com.android.systemui.statusbar.ExpandableNotificationRow;
 import com.android.systemui.statusbar.TransformableView;
 
 /**
@@ -30,8 +31,9 @@
 
     private ImageFloatingTextView mBigtext;
 
-    protected NotificationBigTextTemplateViewWrapper(Context ctx, View view) {
-        super(ctx, view);
+    protected NotificationBigTextTemplateViewWrapper(Context ctx, View view,
+            ExpandableNotificationRow row) {
+        super(ctx, view, row);
     }
 
     private void resolveViews(StatusBarNotification notification) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationCustomViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationCustomViewWrapper.java
index 49e4ba8..61df44a 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationCustomViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationCustomViewWrapper.java
@@ -30,6 +30,7 @@
 
 import com.android.systemui.R;
 import com.android.systemui.ViewInvertHelper;
+import com.android.systemui.statusbar.ExpandableNotificationRow;
 import com.android.systemui.statusbar.phone.NotificationPanelView;
 
 /**
@@ -44,8 +45,8 @@
     private boolean mShouldInvertDark;
     private boolean mShowingLegacyBackground;
 
-    protected NotificationCustomViewWrapper(View view) {
-        super(view);
+    protected NotificationCustomViewWrapper(View view, ExpandableNotificationRow row) {
+        super(view, row);
         mInvertHelper = new ViewInvertHelper(view, NotificationPanelView.DOZE_ANIMATION_DURATION);
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationHeaderViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationHeaderViewWrapper.java
index b201d8f..1bfbaa2 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationHeaderViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationHeaderViewWrapper.java
@@ -36,6 +36,7 @@
 import com.android.systemui.Interpolators;
 import com.android.systemui.R;
 import com.android.systemui.ViewInvertHelper;
+import com.android.systemui.statusbar.ExpandableNotificationRow;
 import com.android.systemui.statusbar.TransformableView;
 import com.android.systemui.statusbar.ViewTransformationHelper;
 import com.android.systemui.statusbar.phone.NotificationPanelView;
@@ -61,8 +62,8 @@
     private ImageView mExpandButton;
     private NotificationHeaderView mNotificationHeader;
 
-    protected NotificationHeaderViewWrapper(Context ctx, View view) {
-        super(view);
+    protected NotificationHeaderViewWrapper(Context ctx, View view, ExpandableNotificationRow row) {
+        super(view, row);
         mIconDarkAlpha = ctx.getResources().getInteger(R.integer.doze_small_icon_alpha);
         mInvertHelper = new ViewInvertHelper(ctx, NotificationPanelView.DOZE_ANIMATION_DURATION);
         mTransformationHelper = new ViewTransformationHelper();
@@ -156,7 +157,9 @@
         } else {
             mInvertHelper.update(dark);
         }
-        if (mIcon != null) {
+        if (mIcon != null && !mRow.isChildInGroup()) {
+            // We don't update the color for children views / their icon is invisible anyway.
+            // It also may lead to bugs where the icon isn't correctly greyed out.
             boolean hadColorFilter = mNotificationHeader.getOriginalIconColor()
                     != NotificationHeaderView.NO_COLOR;
             if (fade) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationMediaTemplateViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationMediaTemplateViewWrapper.java
index 30698e1..3c95a78 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationMediaTemplateViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationMediaTemplateViewWrapper.java
@@ -20,6 +20,7 @@
 import android.service.notification.StatusBarNotification;
 import android.view.View;
 
+import com.android.systemui.statusbar.ExpandableNotificationRow;
 import com.android.systemui.statusbar.TransformableView;
 
 /**
@@ -27,8 +28,9 @@
  */
 public class NotificationMediaTemplateViewWrapper extends NotificationTemplateViewWrapper {
 
-    protected NotificationMediaTemplateViewWrapper(Context ctx, View view) {
-        super(ctx, view);
+    protected NotificationMediaTemplateViewWrapper(Context ctx, View view,
+            ExpandableNotificationRow row) {
+        super(ctx, view, row);
     }
 
     View mActions;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationTemplateViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationTemplateViewWrapper.java
index 78e23fc..889bd5c 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationTemplateViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationTemplateViewWrapper.java
@@ -25,11 +25,10 @@
 import android.widget.ProgressBar;
 import android.widget.TextView;
 
-import com.android.systemui.Interpolators;
 import com.android.systemui.statusbar.CrossFadeHelper;
+import com.android.systemui.statusbar.ExpandableNotificationRow;
 import com.android.systemui.statusbar.TransformableView;
 import com.android.systemui.statusbar.ViewTransformationHelper;
-import com.android.systemui.statusbar.stack.StackStateAnimator;
 
 /**
  * Wraps a notification view inflated from a template.
@@ -43,8 +42,8 @@
     private TextView mTitle;
     private TextView mText;
 
-    protected NotificationTemplateViewWrapper(Context ctx, View view) {
-        super(ctx, view);
+    protected NotificationTemplateViewWrapper(Context ctx, View view, ExpandableNotificationRow row) {
+        super(ctx, view, row);
         mTransformationHelper.setCustomTransformation(
                 new ViewTransformationHelper.CustomTransformation() {
                     @Override
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationViewWrapper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationViewWrapper.java
index ebff69d..7a0df1f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationViewWrapper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationViewWrapper.java
@@ -26,7 +26,7 @@
 
 import com.android.systemui.Interpolators;
 import com.android.systemui.statusbar.CrossFadeHelper;
-import com.android.systemui.statusbar.NotificationContentView;
+import com.android.systemui.statusbar.ExpandableNotificationRow;
 import com.android.systemui.statusbar.TransformableView;
 import com.android.systemui.statusbar.phone.NotificationPanelView;
 
@@ -38,28 +38,30 @@
 
     protected final ColorMatrix mGrayscaleColorMatrix = new ColorMatrix();
     protected final View mView;
+    protected final ExpandableNotificationRow mRow;
     protected boolean mDark;
     protected boolean mDarkInitialized = false;
 
-    public static NotificationViewWrapper wrap(Context ctx, View v) {
+    public static NotificationViewWrapper wrap(Context ctx, View v, ExpandableNotificationRow row) {
         if (v.getId() == com.android.internal.R.id.status_bar_latest_event_content) {
             if ("bigPicture".equals(v.getTag())) {
-                return new NotificationBigPictureTemplateViewWrapper(ctx, v);
+                return new NotificationBigPictureTemplateViewWrapper(ctx, v, row);
             } else if ("bigText".equals(v.getTag())) {
-                return new NotificationBigTextTemplateViewWrapper(ctx, v);
+                return new NotificationBigTextTemplateViewWrapper(ctx, v, row);
             } else if ("media".equals(v.getTag()) || "bigMediaNarrow".equals(v.getTag())) {
-                return new NotificationMediaTemplateViewWrapper(ctx, v);
+                return new NotificationMediaTemplateViewWrapper(ctx, v, row);
             }
-            return new NotificationTemplateViewWrapper(ctx, v);
+            return new NotificationTemplateViewWrapper(ctx, v, row);
         } else if (v instanceof NotificationHeaderView) {
-            return new NotificationHeaderViewWrapper(ctx, v);
+            return new NotificationHeaderViewWrapper(ctx, v, row);
         } else {
-            return new NotificationCustomViewWrapper(v);
+            return new NotificationCustomViewWrapper(v, row);
         }
     }
 
-    protected NotificationViewWrapper(View view) {
+    protected NotificationViewWrapper(View view, ExpandableNotificationRow row) {
         mView = view;
+        mRow = row;
     }
 
     /**
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/IconMerger.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/IconMerger.java
index 225751a..f86badb 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/IconMerger.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/IconMerger.java
@@ -17,6 +17,7 @@
 package com.android.systemui.statusbar.phone;
 
 import android.content.Context;
+import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.util.AttributeSet;
 import android.view.View;
@@ -28,23 +29,31 @@
     private static final String TAG = "IconMerger";
     private static final boolean DEBUG = false;
 
-    private final int mIconSize;
-    private final int mIconHPadding;
+    private int mIconSize;
+    private int mIconHPadding;
 
     private View mMoreView;
 
     public IconMerger(Context context, AttributeSet attrs) {
         super(context, attrs);
-
-        Resources res = context.getResources();
-        mIconSize = res.getDimensionPixelSize(R.dimen.status_bar_icon_size);
-        mIconHPadding = res.getDimensionPixelSize(R.dimen.status_bar_icon_padding);
-
+        reloadDimens();
         if (DEBUG) {
             setBackgroundColor(0x800099FF);
         }
     }
 
+    private void reloadDimens() {
+        Resources res = mContext.getResources();
+        mIconSize = res.getDimensionPixelSize(R.dimen.status_bar_icon_size);
+        mIconHPadding = res.getDimensionPixelSize(R.dimen.status_bar_icon_padding);
+    }
+
+    @Override
+    protected void onConfigurationChanged(Configuration newConfig) {
+        super.onConfigurationChanged(newConfig);
+        reloadDimens();
+    }
+
     public void setOverflowIndicator(View v) {
         mMoreView = v;
     }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardAffordanceHelper.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardAffordanceHelper.java
index 915b565..1a9a40b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardAffordanceHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardAffordanceHelper.java
@@ -43,9 +43,9 @@
     private static final int HINT_CIRCLE_OPEN_DURATION = 500;
 
     private final Context mContext;
+    private final Callback mCallback;
 
     private FlingAnimationUtils mFlingAnimationUtils;
-    private Callback mCallback;
     private VelocityTracker mVelocityTracker;
     private boolean mSwipingInProgress;
     private float mInitialTouchX;
@@ -318,12 +318,11 @@
         float vel = getCurrentVelocity(lastX, lastY);
 
         // We snap back if the current translation is not far enough
-        boolean snapBack;
-        if (mFalsingManager.isFalseTouch()) {
-            snapBack = mFalsingManager.isFalseTouch();
-        } else {
-            snapBack = isBelowFalsingThreshold();
+        boolean snapBack = false;
+        if (mCallback.needsAntiFalsing()) {
+            snapBack = snapBack || mFalsingManager.isFalseTouch();
         }
+        snapBack = snapBack || isBelowFalsingThreshold();
 
         // or if the velocity is in the opposite direction.
         boolean velIsInWrongDirection = vel * mTranslation < 0;
@@ -582,5 +581,7 @@
          * @return The factor the minimum swipe amount should be multiplied with.
          */
         float getAffordanceFalsingFactor();
+
+        boolean needsAntiFalsing();
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java
index 83a15ad..8d74536 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java
@@ -490,7 +490,7 @@
             AsyncTask.execute(runnable);
         } else {
             mPhoneStatusBar.executeRunnableDismissingKeyguard(runnable, null /* cancelAction */,
-                    false /* dismissShade */, false /* afterKeyguardGone */);
+                    false /* dismissShade */, false /* afterKeyguardGone */, true /* deferred */);
         }
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockscreenWallpaper.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockscreenWallpaper.java
index 3812429..ef19d95 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockscreenWallpaper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockscreenWallpaper.java
@@ -16,14 +16,20 @@
 
 package com.android.systemui.statusbar.phone;
 
+import android.annotation.Nullable;
 import android.app.ActivityManager;
 import android.app.IWallpaperManager;
 import android.app.IWallpaperManagerCallback;
 import android.app.WallpaperManager;
 import android.content.Context;
+import android.content.res.Resources;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
-import android.os.Bundle;
+import android.graphics.Rect;
+import android.graphics.drawable.BitmapDrawable;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.DrawableWrapper;
+import android.os.AsyncTask;
 import android.os.Handler;
 import android.os.ParcelFileDescriptor;
 import android.os.RemoteException;
@@ -42,9 +48,7 @@
 
     private static final String TAG = "LockscreenWallpaper";
 
-    private final Context mContext;
     private final PhoneStatusBar mBar;
-    private final IWallpaperManager mService;
     private final WallpaperManager mWallpaperManager;
     private final Handler mH;
 
@@ -54,69 +58,75 @@
     // The user selected in the UI, or null if no user is selected or UI doesn't support selecting
     // users.
     private UserHandle mSelectedUser;
+    private AsyncTask<Void, Void, LoaderResult> mLoader;
 
     public LockscreenWallpaper(Context ctx, PhoneStatusBar bar, Handler h) {
-        mContext = ctx;
         mBar = bar;
         mH = h;
-        mService = IWallpaperManager.Stub.asInterface(
-                ServiceManager.getService(Context.WALLPAPER_SERVICE));
         mWallpaperManager = (WallpaperManager) ctx.getSystemService(Context.WALLPAPER_SERVICE);
         mCurrentUserId = ActivityManager.getCurrentUser();
 
+        IWallpaperManager service = IWallpaperManager.Stub.asInterface(
+                ServiceManager.getService(Context.WALLPAPER_SERVICE));
         try {
-            mService.setLockWallpaperCallback(this);
+            service.setLockWallpaperCallback(this);
         } catch (RemoteException e) {
             Log.e(TAG, "System dead?" + e);
         }
     }
 
     public Bitmap getBitmap() {
-        try {
-            if (mCached) {
-                return mCache;
-            }
-            if (!mService.isWallpaperSupported(mContext.getOpPackageName())) {
-                mCached = true;
-                mCache = null;
-                return null;
-            }
-            // Prefer the selected user (when specified) over the current user for the FLAG_SET_LOCK
-            // wallpaper.
-            final int lockWallpaperUserId =
-                    mSelectedUser != null ? mSelectedUser.getIdentifier() : mCurrentUserId;
-            ParcelFileDescriptor fd = mService.getWallpaper(null, WallpaperManager.FLAG_LOCK,
-                    new Bundle(), lockWallpaperUserId);
-            if (fd != null) {
-                try {
-                    BitmapFactory.Options options = new BitmapFactory.Options();
-                    mCache = BitmapFactory.decodeFileDescriptor(
-                            fd.getFileDescriptor(), null, options);
-                    mCached = true;
-                    return mCache;
-                } catch (OutOfMemoryError e) {
-                    Log.w(TAG, "Can't decode file", e);
-                    return null;
-                } finally {
-                    IoUtils.closeQuietly(fd);
-                }
-            } else {
-                mCached = true;
-                if (mSelectedUser != null && mSelectedUser.getIdentifier() != mCurrentUserId) {
-                    // When selected user is different from the current user, show the selected
-                    // user's static wallpaper.
-                    mCache = mWallpaperManager.getBitmapAsUser(mSelectedUser.getIdentifier());
-                } else {
-                    // When there is no selected user, or it's same as the current user, show the
-                    // system (possibly dynamic) wallpaper for the selected user.
-                    mCache = null;
-                }
-                return mCache;
-            }
-        } catch (RemoteException e) {
-            Log.e(TAG, "System dead?" + e);
+        if (mCached) {
+            return mCache;
+        }
+        if (!mWallpaperManager.isWallpaperSupported()) {
+            mCached = true;
+            mCache = null;
             return null;
         }
+
+        LoaderResult result = loadBitmap(mCurrentUserId, mSelectedUser);
+        if (result.success) {
+            mCached = true;
+            mCache = result.bitmap;
+        }
+        return mCache;
+    }
+
+    public LoaderResult loadBitmap(int currentUserId, UserHandle selectedUser) {
+        // May be called on any thread - only use thread safe operations.
+
+        // Prefer the selected user (when specified) over the current user for the FLAG_SET_LOCK
+        // wallpaper.
+        final int lockWallpaperUserId =
+                selectedUser != null ? selectedUser.getIdentifier() : currentUserId;
+        ParcelFileDescriptor fd = mWallpaperManager.getWallpaperFile(
+                WallpaperManager.FLAG_LOCK, lockWallpaperUserId);
+
+        if (fd != null) {
+            try {
+                BitmapFactory.Options options = new BitmapFactory.Options();
+                return LoaderResult.success(BitmapFactory.decodeFileDescriptor(
+                        fd.getFileDescriptor(), null, options));
+            } catch (OutOfMemoryError e) {
+                Log.w(TAG, "Can't decode file", e);
+                return LoaderResult.fail();
+            } finally {
+                IoUtils.closeQuietly(fd);
+            }
+        } else {
+            if (selectedUser != null && selectedUser.getIdentifier() != currentUserId) {
+                // When selected user is different from the current user, show the selected
+                // user's static wallpaper.
+                return LoaderResult.success(
+                        mWallpaperManager.getBitmapAsUser(selectedUser.getIdentifier()));
+
+            } else {
+                // When there is no selected user, or it's same as the current user, show the
+                // system (possibly dynamic) wallpaper for the selected user.
+                return LoaderResult.success(null);
+            }
+        }
     }
 
     public void setCurrentUser(int user) {
@@ -131,14 +141,16 @@
             return;
         }
         mSelectedUser = selectedUser;
-
-        mH.removeCallbacks(this);
-        mH.post(this);
+        postUpdateWallpaper();
     }
 
     @Override
     public void onWallpaperChanged() {
         // Called on Binder thread.
+        postUpdateWallpaper();
+    }
+
+    private void postUpdateWallpaper() {
         mH.removeCallbacks(this);
         mH.post(this);
     }
@@ -146,9 +158,138 @@
     @Override
     public void run() {
         // Called in response to onWallpaperChanged on the main thread.
-        mCached = false;
-        mCache = null;
-        getBitmap();
-        mBar.updateMediaMetaData(true /* metaDataChanged */, true /* allowEnterAnimation */);
+
+        if (mLoader != null) {
+            mLoader.cancel(false /* interrupt */);
+        }
+
+        final int currentUser = mCurrentUserId;
+        final UserHandle selectedUser = mSelectedUser;
+        mLoader = new AsyncTask<Void, Void, LoaderResult>() {
+            @Override
+            protected LoaderResult doInBackground(Void... params) {
+                return loadBitmap(currentUser, selectedUser);
+            }
+
+            @Override
+            protected void onPostExecute(LoaderResult result) {
+                super.onPostExecute(result);
+                if (isCancelled()) {
+                    return;
+                }
+                if (result.success) {
+                    mCached = true;
+                    mCache = result.bitmap;
+                    mBar.updateMediaMetaData(
+                            true /* metaDataChanged */, true /* allowEnterAnimation */);
+                }
+                mLoader = null;
+            }
+        }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
+    }
+
+    private static class LoaderResult {
+        public final boolean success;
+        public final Bitmap bitmap;
+
+        LoaderResult(boolean success, Bitmap bitmap) {
+            this.success = success;
+            this.bitmap = bitmap;
+        }
+
+        static LoaderResult success(Bitmap b) {
+            return new LoaderResult(true, b);
+        }
+
+        static LoaderResult fail() {
+            return new LoaderResult(false, null);
+        }
+    }
+
+    /**
+     * Drawable that aligns left horizontally and center vertically (like ImageWallpaper).
+     */
+    public static class WallpaperDrawable extends DrawableWrapper {
+
+        private final ConstantState mState;
+        private final Rect mTmpRect = new Rect();
+
+        public WallpaperDrawable(Resources r, Bitmap b) {
+            this(r, new ConstantState(b));
+        }
+
+        private WallpaperDrawable(Resources r, ConstantState state) {
+            super(new BitmapDrawable(r, state.mBackground));
+            mState = state;
+        }
+
+        @Override
+        public int getIntrinsicWidth() {
+            return -1;
+        }
+
+        @Override
+        public int getIntrinsicHeight() {
+            return -1;
+        }
+
+        @Override
+        protected void onBoundsChange(Rect bounds) {
+            int vwidth = getBounds().width();
+            int vheight = getBounds().height();
+            int dwidth = mState.mBackground.getWidth();
+            int dheight = mState.mBackground.getHeight();
+            float scale;
+            float dx = 0, dy = 0;
+
+            if (dwidth * vheight > vwidth * dheight) {
+                scale = (float) vheight / (float) dheight;
+            } else {
+                scale = (float) vwidth / (float) dwidth;
+            }
+
+            if (scale <= 1f) {
+                scale = 1f;
+            }
+            dy = (vheight - dheight * scale) * 0.5f;
+
+            mTmpRect.set(
+                    bounds.left,
+                    bounds.top + Math.round(dy),
+                    bounds.left + Math.round(dwidth * scale),
+                    bounds.top + Math.round(dheight * scale + dy));
+
+            super.onBoundsChange(mTmpRect);
+        }
+
+        @Override
+        public ConstantState getConstantState() {
+            return mState;
+        }
+
+        static class ConstantState extends Drawable.ConstantState {
+
+            private final Bitmap mBackground;
+
+            ConstantState(Bitmap background) {
+                mBackground = background;
+            }
+
+            @Override
+            public Drawable newDrawable() {
+                return newDrawable(null);
+            }
+
+            @Override
+            public Drawable newDrawable(@Nullable Resources res) {
+                return new WallpaperDrawable(res, this);
+            }
+
+            @Override
+            public int getChangingConfigurations() {
+                // DrawableWrapper already handles this for us.
+                return 0;
+            }
+        }
     }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ManagedProfileController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ManagedProfileController.java
index 41eed56..951b096 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ManagedProfileController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ManagedProfileController.java
@@ -15,6 +15,7 @@
 package com.android.systemui.statusbar.phone;
 
 import android.app.ActivityManager;
+import android.app.StatusBarManager;
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
@@ -57,10 +58,18 @@
         }
     }
 
-    public void setWorkModeEnabled(boolean enabled) {
+    public void setWorkModeEnabled(boolean enableWorkMode) {
         synchronized (mProfiles) {
             for (UserInfo ui : mProfiles) {
-                mUserManager.setQuietModeEnabled(ui.id, !enabled);
+                if (enableWorkMode) {
+                    if (!mUserManager.trySetQuietModeDisabled(ui.id, null)) {
+                        StatusBarManager statusBarManager = (StatusBarManager) mContext
+                                .getSystemService(android.app.Service.STATUS_BAR_SERVICE);
+                        statusBarManager.collapsePanels();
+                    }
+                } else {
+                    mUserManager.setQuietModeEnabled(ui.id, true);
+                }
             }
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
index 581b611..4b7d56b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
@@ -372,7 +372,10 @@
         mDisabledFlags = disabledFlags;
 
         final boolean disableHome = ((disabledFlags & View.STATUS_BAR_DISABLE_HOME) != 0);
-        boolean disableRecent = ((disabledFlags & View.STATUS_BAR_DISABLE_RECENT) != 0);
+
+        // Disable recents always in car mode.
+        boolean disableRecent = (
+                mCarMode || (disabledFlags & View.STATUS_BAR_DISABLE_RECENT) != 0);
         final boolean disableBack = ((disabledFlags & View.STATUS_BAR_DISABLE_BACK) != 0)
                 && ((mNavigationIconHints & StatusBarManager.NAVIGATION_HINT_BACK_ALT) == 0);
         final boolean disableSearch = ((disabledFlags & View.STATUS_BAR_DISABLE_SEARCH) != 0);
@@ -528,6 +531,11 @@
                 }
 
                 @Override
+                public void onAdjustedForImeChanged(boolean adjustedForIme, long animDuration)
+                        throws RemoteException {
+                }
+
+                @Override
                 public void onDockSideChanged(int newDockSide) throws RemoteException {
                 }
             });
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconAreaController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconAreaController.java
index c4917a1..cbaab14 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconAreaController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconAreaController.java
@@ -5,6 +5,7 @@
 import android.content.res.Resources;
 import android.graphics.Color;
 import android.graphics.Rect;
+import android.support.annotation.NonNull;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.widget.ImageView;
@@ -17,7 +18,6 @@
 import com.android.systemui.statusbar.notification.NotificationUtils;
 
 import java.util.ArrayList;
-import java.util.List;
 
 /**
  * A controller for the space in the status bar to the left of the system icons. This area is
@@ -51,9 +51,7 @@
      * Initializes the views that will represent the notification area.
      */
     protected void initializeNotificationAreaViews(Context context) {
-        Resources res = context.getResources();
-        mIconSize = res.getDimensionPixelSize(com.android.internal.R.dimen.status_bar_icon_size);
-        mIconHPadding = res.getDimensionPixelSize(R.dimen.status_bar_icon_padding);
+        reloadDimens(context);
 
         LayoutInflater layoutInflater = LayoutInflater.from(context);
         mNotificationIconArea = inflateIconArea(layoutInflater);
@@ -68,6 +66,27 @@
         }
     }
 
+    public void onDensityOrFontScaleChanged(Context context) {
+        reloadDimens(context);
+        final LinearLayout.LayoutParams params = generateIconLayoutParams();
+        for (int i = 0; i < mNotificationIcons.getChildCount(); i++) {
+            View child = mNotificationIcons.getChildAt(i);
+            child.setLayoutParams(params);
+        }
+    }
+
+    @NonNull
+    private LinearLayout.LayoutParams generateIconLayoutParams() {
+        return new LinearLayout.LayoutParams(
+                mIconSize + 2 * mIconHPadding, getHeight());
+    }
+
+    private void reloadDimens(Context context) {
+        Resources res = context.getResources();
+        mIconSize = res.getDimensionPixelSize(com.android.internal.R.dimen.status_bar_icon_size);
+        mIconHPadding = res.getDimensionPixelSize(R.dimen.status_bar_icon_padding);
+    }
+
     /**
      * Returns the view that represents the notification area.
      */
@@ -125,8 +144,7 @@
      * Updates the notifications with the given list of notifications to display.
      */
     public void updateNotificationIcons(NotificationData notificationData) {
-        final LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
-                mIconSize + 2 * mIconHPadding, getHeight());
+        final LinearLayout.LayoutParams params = generateIconLayoutParams();
 
         ArrayList<NotificationData.Entry> activeNotifications =
                 notificationData.getActiveNotifications();
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java
index 62c0fa9..7e2fa2d 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java
@@ -41,9 +41,9 @@
 import android.widget.TextView;
 import com.android.internal.logging.MetricsLogger;
 import com.android.keyguard.KeyguardStatusView;
+import com.android.systemui.AutoReinflateContainer;
+import com.android.systemui.AutoReinflateContainer.InflateListener;
 import com.android.systemui.DejankUtils;
-import com.android.systemui.DensityContainer;
-import com.android.systemui.DensityContainer.InflateListener;
 import com.android.systemui.EventLogConstants;
 import com.android.systemui.EventLogTags;
 import com.android.systemui.Interpolators;
@@ -92,7 +92,7 @@
     private KeyguardUserSwitcher mKeyguardUserSwitcher;
     private KeyguardStatusBarView mKeyguardStatusBar;
     protected QSContainer mQsContainer;
-    private DensityContainer mQsDensityContainer;
+    private AutoReinflateContainer mQsAutoReinflateContainer;
     private KeyguardStatusView mKeyguardStatusView;
     private TextView mClockView;
     private View mReserveNotificationSpace;
@@ -219,8 +219,9 @@
         super.onFinishInflate();
         mKeyguardStatusBar = (KeyguardStatusBarView) findViewById(R.id.keyguard_header);
         mKeyguardStatusView = (KeyguardStatusView) findViewById(R.id.keyguard_status_view);
-        mQsDensityContainer = (DensityContainer) findViewById(R.id.qs_density_container);
-        mQsDensityContainer.addInflateListener(new InflateListener() {
+        mQsAutoReinflateContainer =
+                (AutoReinflateContainer) findViewById(R.id.qs_auto_reinflate_container);
+        mQsAutoReinflateContainer.addInflateListener(new InflateListener() {
             @Override
             public void onInflated(View v) {
                 mQsContainer = (QSContainer) v.findViewById(R.id.quick_settings_container);
@@ -280,11 +281,11 @@
         int panelWidth = getResources().getDimensionPixelSize(R.dimen.notification_panel_width);
         int panelGravity = getResources().getInteger(R.integer.notification_panel_layout_gravity);
         FrameLayout.LayoutParams lp =
-                (FrameLayout.LayoutParams) mQsDensityContainer.getLayoutParams();
+                (FrameLayout.LayoutParams) mQsAutoReinflateContainer.getLayoutParams();
         if (lp.width != panelWidth) {
             lp.width = panelWidth;
             lp.gravity = panelGravity;
-            mQsDensityContainer.setLayoutParams(lp);
+            mQsAutoReinflateContainer.setLayoutParams(lp);
             mQsContainer.post(mUpdateHeader);
         }
 
@@ -701,7 +702,7 @@
     }
 
     private boolean isFalseTouch() {
-        if (mStatusBarState != StatusBarState.KEYGUARD) {
+        if (!needsAntiFalsing()) {
             return false;
         }
         if (mFalsingManager.isClassiferEnabled()) {
@@ -790,8 +791,8 @@
     }
 
     private boolean isInQsArea(float x, float y) {
-        return (x >= mQsDensityContainer.getX()
-                && x <= mQsDensityContainer.getX() + mQsDensityContainer.getWidth())
+        return (x >= mQsAutoReinflateContainer.getX()
+                && x <= mQsAutoReinflateContainer.getX() + mQsAutoReinflateContainer.getWidth())
                 && (y <= mNotificationStackScroller.getBottomMostNotificationBottom()
                 || y <= mQsContainer.getY() + mQsContainer.getHeight());
     }
@@ -1198,7 +1199,7 @@
         }
         if (mQsFullyExpanded && mFalsingManager.shouldEnforceBouncer()) {
             mStatusBar.executeRunnableDismissingKeyguard(null, null /* cancelAction */,
-                    false /* dismissShade */, true /* afterKeyguardGone */);
+                    false /* dismissShade */, true /* afterKeyguardGone */, false /* deferred */);
         }
         if (DEBUG) {
             invalidate();
@@ -1339,8 +1340,8 @@
             return false;
         }
         View header = mKeyguardShowing ? mKeyguardStatusBar : mQsContainer.getHeader();
-        boolean onHeader = x >= mQsDensityContainer.getX()
-                && x <= mQsDensityContainer.getX() + mQsDensityContainer.getWidth()
+        boolean onHeader = x >= mQsAutoReinflateContainer.getX()
+                && x <= mQsAutoReinflateContainer.getX() + mQsAutoReinflateContainer.getWidth()
                 && y >= header.getTop() && y <= header.getBottom();
         if (mQsExpanded) {
             return onHeader || (yDiff < 0 && isInQsArea(x, y));
@@ -1793,7 +1794,8 @@
                     public void run() {
                         mKeyguardBottomArea.launchLeftAffordance();
                     }
-                }, null, true /* dismissShade */, false /* afterKeyguardGone */);
+                }, null, true /* dismissShade */, false /* afterKeyguardGone */,
+                        true /* deferred */);
             }
             else {
                 mKeyguardBottomArea.launchLeftAffordance();
@@ -1812,7 +1814,8 @@
                     public void run() {
                         mKeyguardBottomArea.launchCamera(mLastCameraLaunchSource);
                     }
-                }, null, true /* dismissShade */, false /* afterKeyguardGone */);
+                }, null, true /* dismissShade */, false /* afterKeyguardGone */,
+                    true /* deferred */);
             }
             else {
                 mKeyguardBottomArea.launchCamera(mLastCameraLaunchSource);
@@ -1941,6 +1944,11 @@
     }
 
     @Override
+    public boolean needsAntiFalsing() {
+        return mStatusBarState == StatusBarState.KEYGUARD;
+    }
+
+    @Override
     protected float getPeekHeight() {
         if (mNotificationStackScroller.getNotGoneChildCount() > 0) {
             return mNotificationStackScroller.getPeekHeight();
@@ -2222,7 +2230,7 @@
 
     protected void setVerticalPanelTranslation(float translation) {
         mNotificationStackScroller.setTranslationX(translation);
-        mQsDensityContainer.setTranslationX(translation);
+        mQsAutoReinflateContainer.setTranslationX(translation);
     }
 
     protected void updateStackHeight(float stackHeight) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationsQuickSettingsContainer.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationsQuickSettingsContainer.java
index 35fb2a5..36e59db 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationsQuickSettingsContainer.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationsQuickSettingsContainer.java
@@ -24,7 +24,7 @@
 import android.view.ViewStub;
 import android.view.WindowInsets;
 import android.widget.FrameLayout;
-import com.android.systemui.DensityContainer;
+import com.android.systemui.AutoReinflateContainer;
 import com.android.systemui.R;
 import com.android.systemui.qs.QSContainer;
 import com.android.systemui.qs.customize.QSCustomizer;
@@ -33,10 +33,10 @@
  * The container with notification stack scroller and quick settings inside.
  */
 public class NotificationsQuickSettingsContainer extends FrameLayout
-        implements ViewStub.OnInflateListener, DensityContainer.InflateListener {
+        implements ViewStub.OnInflateListener, AutoReinflateContainer.InflateListener {
 
 
-    private DensityContainer mQsContainer;
+    private AutoReinflateContainer mQsContainer;
     private View mUserSwitcher;
     private View mStackScroller;
     private View mKeyguardStatusBar;
@@ -54,7 +54,7 @@
     @Override
     protected void onFinishInflate() {
         super.onFinishInflate();
-        mQsContainer = (DensityContainer) findViewById(R.id.qs_density_container);
+        mQsContainer = (AutoReinflateContainer) findViewById(R.id.qs_auto_reinflate_container);
         mQsContainer.addInflateListener(this);
         mStackScroller = findViewById(R.id.notification_stack_scroller);
         mStackScrollerMargin = ((LayoutParams) mStackScroller.getLayoutParams()).bottomMargin;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
index 3ca0a6d..436dc9d 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
@@ -34,6 +34,7 @@
 import android.content.IntentFilter;
 import android.content.pm.IPackageManager;
 import android.content.pm.PackageManager;
+import android.content.pm.UserInfo;
 import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.database.ContentObserver;
@@ -46,6 +47,7 @@
 import android.graphics.PorterDuff;
 import android.graphics.PorterDuffXfermode;
 import android.graphics.Rect;
+import android.graphics.drawable.BitmapDrawable;
 import android.graphics.drawable.ColorDrawable;
 import android.graphics.drawable.Drawable;
 import android.inputmethodservice.InputMethodService;
@@ -85,6 +87,7 @@
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.ViewGroup.LayoutParams;
+import android.view.ViewParent;
 import android.view.ViewStub;
 import android.view.WindowManager;
 import android.view.WindowManagerGlobal;
@@ -100,10 +103,10 @@
 import com.android.keyguard.KeyguardUpdateMonitor;
 import com.android.keyguard.KeyguardUpdateMonitorCallback;
 import com.android.keyguard.ViewMediatorCallback;
+import com.android.systemui.AutoReinflateContainer;
+import com.android.systemui.AutoReinflateContainer.InflateListener;
 import com.android.systemui.BatteryMeterView;
 import com.android.systemui.DemoMode;
-import com.android.systemui.DensityContainer;
-import com.android.systemui.DensityContainer.InflateListener;
 import com.android.systemui.EventLogConstants;
 import com.android.systemui.EventLogTags;
 import com.android.systemui.Interpolators;
@@ -761,14 +764,7 @@
         mStackScroller.setHeadsUpManager(mHeadsUpManager);
         mGroupManager.setOnGroupChangeListener(mStackScroller);
 
-        mKeyguardIconOverflowContainer =
-                (NotificationOverflowContainer) LayoutInflater.from(mContext).inflate(
-                        R.layout.status_bar_notification_keyguard_overflow, mStackScroller, false);
-        mKeyguardIconOverflowContainer.setOnActivatedListener(this);
-        mKeyguardIconOverflowContainer.setOnClickListener(mOverflowClickListener);
-        mStackScroller.setOverflowContainer(mKeyguardIconOverflowContainer);
-
-
+        inflateOverflowContainer();
         inflateEmptyShadeView();
         inflateDismissView();
         mExpandedContents = mStackScroller;
@@ -875,8 +871,8 @@
         }
 
         // Set up the quick settings tile panel
-        DensityContainer container = (DensityContainer) mStatusBarWindow.findViewById(
-                R.id.qs_density_container);
+        AutoReinflateContainer container = (AutoReinflateContainer) mStatusBarWindow.findViewById(
+                R.id.qs_auto_reinflate_container);
         if (container != null) {
             final QSTileHost qsh = SystemUIFactory.getInstance().createQSTileHost(mContext, this,
                     mBluetoothController, mLocationController, mRotationLockController,
@@ -949,13 +945,62 @@
         return new BatteryControllerImpl(mContext);
     }
 
+    private void inflateOverflowContainer() {
+        mKeyguardIconOverflowContainer =
+                (NotificationOverflowContainer) LayoutInflater.from(mContext).inflate(
+                        R.layout.status_bar_notification_keyguard_overflow, mStackScroller, false);
+        mKeyguardIconOverflowContainer.setOnActivatedListener(this);
+        mKeyguardIconOverflowContainer.setOnClickListener(mOverflowClickListener);
+        mStackScroller.setOverflowContainer(mKeyguardIconOverflowContainer);
+    }
+
     @Override
-    protected void reInflateViews() {
-        super.reInflateViews();
+    protected void onDensityOrFontScaleChanged() {
+        super.onDensityOrFontScaleChanged();
+        mScrimController.onDensityOrFontScaleChanged();
+        mStatusBarView.onDensityOrFontScaleChanged();
+        mBrightnessMirrorController.onDensityOrFontScaleChanged();
+        inflateSignalClusters();
+        mIconController.onDensityOrFontScaleChanged();
         inflateDismissView();
         updateClearAll();
         inflateEmptyShadeView();
         updateEmptyShadeView();
+        inflateOverflowContainer();
+    }
+
+    private void inflateSignalClusters() {
+        SignalClusterView signalClusterView = reinflateSignalCluster(mStatusBarView);
+        mIconController.setSignalCluster(signalClusterView);
+        reinflateSignalCluster(mKeyguardStatusView);
+    }
+
+    private SignalClusterView reinflateSignalCluster(View view) {
+        SignalClusterView signalCluster =
+                (SignalClusterView) view.findViewById(R.id.signal_cluster);
+        if (signalCluster != null) {
+            ViewParent parent = signalCluster.getParent();
+            if (parent instanceof ViewGroup) {
+                ViewGroup viewParent = (ViewGroup) parent;
+                int index = viewParent.indexOfChild(signalCluster);
+                viewParent.removeView(signalCluster);
+                SignalClusterView newCluster = (SignalClusterView) LayoutInflater.from(mContext)
+                        .inflate(R.layout.signal_cluster_view, viewParent, false);
+                ViewGroup.MarginLayoutParams layoutParams =
+                        (ViewGroup.MarginLayoutParams) viewParent.getLayoutParams();
+                layoutParams.setMarginsRelative(
+                        mContext.getResources().getDimensionPixelSize(
+                                R.dimen.signal_cluster_margin_start),
+                        0, 0, 0);
+                newCluster.setLayoutParams(layoutParams);
+                newCluster.setSecurityController(mSecurityController);
+                newCluster.setNetworkController(mNetworkController);
+                viewParent.addView(newCluster, index);
+                return newCluster;
+            }
+            return signalCluster;
+        }
+        return null;
     }
 
     private void inflateEmptyShadeView() {
@@ -1928,19 +1973,27 @@
                     + " state=" + mState);
         }
 
-        Bitmap artworkBitmap = null;
+        Drawable artworkDrawable = null;
         if (mMediaMetadata != null) {
+            Bitmap artworkBitmap = null;
             artworkBitmap = mMediaMetadata.getBitmap(MediaMetadata.METADATA_KEY_ART);
             if (artworkBitmap == null) {
                 artworkBitmap = mMediaMetadata.getBitmap(MediaMetadata.METADATA_KEY_ALBUM_ART);
                 // might still be null
             }
+            if (artworkBitmap != null) {
+                artworkDrawable = new BitmapDrawable(mBackdropBack.getResources(), artworkBitmap);
+            }
         }
-        if (ENABLE_LOCKSCREEN_WALLPAPER && artworkBitmap == null) {
-            artworkBitmap = mLockscreenWallpaper.getBitmap();
+        if (ENABLE_LOCKSCREEN_WALLPAPER && artworkDrawable == null) {
+            Bitmap lockWallpaper = mLockscreenWallpaper.getBitmap();
+            if (lockWallpaper != null) {
+                artworkDrawable = new LockscreenWallpaper.WallpaperDrawable(
+                        mBackdropBack.getResources(), lockWallpaper);
+            }
         }
 
-        final boolean hasArtwork = artworkBitmap != null;
+        final boolean hasArtwork = artworkDrawable != null;
 
         if ((hasArtwork || DEBUG_MEDIA_FAKE_ARTWORK) && mState != StatusBarState.SHADE
                 && mFingerprintUnlockController.getMode()
@@ -1968,7 +2021,8 @@
             if (metaDataChanged) {
                 if (mBackdropBack.getDrawable() != null) {
                     Drawable drawable =
-                            mBackdropBack.getDrawable().getConstantState().newDrawable().mutate();
+                            mBackdropBack.getDrawable().getConstantState()
+                                    .newDrawable(mBackdropFront.getResources()).mutate();
                     mBackdropFront.setImageDrawable(drawable);
                     if (mScrimSrcModeEnabled) {
                         mBackdropFront.getDrawable().mutate().setXfermode(mSrcOverXferMode);
@@ -1985,7 +2039,7 @@
                     mBackdropBack.setBackgroundColor(0xFFFFFFFF);
                     mBackdropBack.setImageDrawable(new ColorDrawable(c));
                 } else {
-                    mBackdropBack.setImageBitmap(artworkBitmap);
+                    mBackdropBack.setImageDrawable(artworkDrawable);
                 }
                 if (mScrimSrcModeEnabled) {
                     mBackdropBack.getDrawable().mutate().setXfermode(mSrcXferMode);
@@ -3123,13 +3177,14 @@
             }
         };
         executeRunnableDismissingKeyguard(runnable, cancelRunnable, dismissShade,
-                afterKeyguardGone);
+                afterKeyguardGone, true /* deferred */);
     }
 
     public void executeRunnableDismissingKeyguard(final Runnable runnable,
             final Runnable cancelAction,
             final boolean dismissShade,
-            final boolean afterKeyguardGone) {
+            final boolean afterKeyguardGone,
+            final boolean deferred) {
         final boolean keyguardShowing = mStatusBarKeyguardViewManager.isShowing();
         dismissKeyguardThenExecute(new OnDismissAction() {
             @Override
@@ -3152,7 +3207,7 @@
                     animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL, true /* force */,
                             true /* delayed*/);
                 }
-                return true;
+                return deferred;
             }
         }, cancelAction, afterKeyguardGone);
     }
@@ -3241,17 +3296,17 @@
     // SystemUIService notifies SystemBars of configuration changes, which then calls down here
     @Override
     protected void onConfigurationChanged(Configuration newConfig) {
+        updateResources();
+        updateDisplaySize(); // populates mDisplayMetrics
         super.onConfigurationChanged(newConfig); // calls refreshLayout
 
         if (DEBUG) {
             Log.v(TAG, "configuration changed: " + mContext.getResources().getConfiguration());
         }
-        updateDisplaySize(); // populates mDisplayMetrics
 
-        updateResources();
         repositionNavigationBar();
         updateRowStates();
-        mIconController.updateResources();
+        mIconController.defineSlots();
         mScreenPinningRequest.onConfigurationChanged();
         mNetworkController.onConfigurationChanged();
     }
@@ -3322,7 +3377,7 @@
         mMaxAllowedKeyguardNotifications = res.getInteger(
                 R.integer.keyguard_max_notification_count);
 
-        if (DEBUG) Log.v(TAG, "updateResources");
+        if (DEBUG) Log.v(TAG, "defineSlots");
     }
 
     // Visibility reporting
@@ -3471,7 +3526,7 @@
             @Override
             public void run() {
                 mLeaveOpenOnKeyguardHide = true;
-                executeRunnableDismissingKeyguard(runnable, null, false, false);
+                executeRunnableDismissingKeyguard(runnable, null, false, false, false);
             }
         });
     }
@@ -3898,9 +3953,17 @@
     }
 
     private void updatePublicMode() {
-        setLockscreenPublicMode(
-                mStatusBarKeyguardViewManager.isShowing() && mStatusBarKeyguardViewManager
-                        .isSecure(mCurrentUserId));
+        boolean isPublic = false;
+        if (mStatusBarKeyguardViewManager.isShowing()) {
+            for (int i = mCurrentProfiles.size() - 1; i >= 0; i--) {
+                UserInfo userInfo = mCurrentProfiles.valueAt(i);
+                if (mStatusBarKeyguardViewManager.isSecure(userInfo.id)) {
+                    isPublic = true;
+                    break;
+                }
+            }
+        }
+        setLockscreenPublicMode(isPublic);
     }
 
     protected void updateKeyguardState(boolean goingToFullShade, boolean fromShadeLocked) {
@@ -4314,7 +4377,7 @@
         try {
             IActivityManager activityManager = ActivityManagerNative.getDefault();
             if (activityManager.isInLockTaskMode()) {
-                activityManager.stopLockTaskModeOnCurrent();
+                activityManager.stopSystemLockTaskMode();
 
                 // When exiting refresh disabled flags.
                 mNavigationBarView.setDisabledFlags(mDisabled1, true);
@@ -4337,17 +4400,17 @@
     }
 
     @Override
-    public void showScreenPinningRequest() {
+    public void showScreenPinningRequest(int taskId) {
         if (mKeyguardMonitor.isShowing()) {
             // Don't allow apps to trigger this from keyguard.
             return;
         }
         // Show screen pinning request, since this comes from an app, show 'no thanks', button.
-        showScreenPinningRequest(true);
+        showScreenPinningRequest(taskId, true);
     }
 
-    public void showScreenPinningRequest(boolean allowCancel) {
-        mScreenPinningRequest.showPrompt(allowCancel);
+    public void showScreenPinningRequest(int taskId, boolean allowCancel) {
+        mScreenPinningRequest.showPrompt(taskId, allowCancel);
     }
 
     public boolean hasActiveNotifications() {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java
index cc3b4bd..c80b3ad 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java
@@ -21,10 +21,12 @@
 import android.util.EventLog;
 import android.view.MotionEvent;
 import android.view.View;
+import android.view.ViewGroup;
 import android.view.accessibility.AccessibilityEvent;
 
 import com.android.systemui.DejankUtils;
 import com.android.systemui.EventLogTags;
+import com.android.systemui.R;
 
 public class PhoneStatusBarView extends PanelBar {
     private static final String TAG = "PhoneStatusBarView";
@@ -185,4 +187,11 @@
         float scrimFraction = Math.max(mPanelFraction, mMinFraction);
         mScrimController.setPanelExpansion(scrimFraction);
     }
+
+    public void onDensityOrFontScaleChanged() {
+        ViewGroup.LayoutParams layoutParams = getLayoutParams();
+        layoutParams.height = getResources().getDimensionPixelSize(
+                R.dimen.status_bar_height);
+        setLayoutParams(layoutParams);
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/QSTileHost.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/QSTileHost.java
index 82496ac..493b23f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/QSTileHost.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/QSTileHost.java
@@ -209,7 +209,7 @@
         // already logged
     }
 
-    public void animateExpandQS() {
+    public void animateToggleQSExpansion() {
         // TODO: Better path to animated panel expansion.
         mHeader.performClick();
     }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickStatusBarHeader.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickStatusBarHeader.java
index 2b03dfb..b8e069d 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickStatusBarHeader.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickStatusBarHeader.java
@@ -106,6 +106,8 @@
         mDateTimeGroup = (ViewGroup) findViewById(R.id.date_time_group);
         mDateTimeGroup.setPivotX(0);
         mDateTimeGroup.setPivotY(0);
+        boolean showDate = getResources().getBoolean(R.bool.quick_settings_show_date);
+        findViewById(R.id.date).setVisibility(showDate ? View.VISIBLE : View.GONE);
 
         mExpandIndicator = (ExpandableIndicator) findViewById(R.id.expand_indicator);
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
index 3eda320..cf5277f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
@@ -24,6 +24,7 @@
 import android.graphics.Color;
 import android.graphics.Rect;
 import android.view.View;
+import android.view.ViewGroup;
 import android.view.ViewTreeObserver;
 import android.view.animation.DecelerateInterpolator;
 import android.view.animation.Interpolator;
@@ -519,4 +520,11 @@
     public void setScrimBehindChangeRunnable(Runnable changeRunnable) {
         mScrimBehind.setChangeRunnable(changeRunnable);
     }
+
+    public void onDensityOrFontScaleChanged() {
+        ViewGroup.LayoutParams layoutParams = mHeadsUpScrim.getLayoutParams();
+        layoutParams.height = mHeadsUpScrim.getResources().getDimensionPixelSize(
+                R.dimen.heads_up_scrim_height);
+        mHeadsUpScrim.setLayoutParams(layoutParams);
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconController.java
index a40aa83..f415ae5 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconController.java
@@ -76,6 +76,7 @@
     private View mNotificationIconAreaInner;
 
     private BatteryMeterView mBatteryMeterView;
+    private BatteryMeterView mBatteryMeterViewKeyguard;
     private TextView mClock;
 
     private int mIconSize;
@@ -129,39 +130,43 @@
         mStatusIconsKeyguard = (LinearLayout) keyguardStatusBar.findViewById(R.id.statusIcons);
 
         mBatteryMeterView = (BatteryMeterView) statusBar.findViewById(R.id.battery);
-        maybeScaleBatteryMeterView(context);
+        mBatteryMeterViewKeyguard = (BatteryMeterView) keyguardStatusBar.findViewById(R.id.battery);
+        scaleBatteryMeterViews(context);
 
         mClock = (TextView) statusBar.findViewById(R.id.clock);
         mDarkModeIconColorSingleTone = context.getColor(R.color.dark_mode_icon_color_single_tone);
         mLightModeIconColorSingleTone = context.getColor(R.color.light_mode_icon_color_single_tone);
         mHandler = new Handler();
-        updateResources();
+        defineSlots();
+        loadDimens();
 
         TunerService.get(mContext).addTunable(this, ICON_BLACKLIST);
     }
 
+    public void setSignalCluster(SignalClusterView signalCluster) {
+        mSignalCluster = signalCluster;
+    }
+
     /**
-     * Looks up the scale factor for status bar icons and scales the battery view by that amount
-     * if appropriate.
+     * Looks up the scale factor for status bar icons and scales the battery view by that amount.
      */
-    private void maybeScaleBatteryMeterView(Context context) {
+    private void scaleBatteryMeterViews(Context context) {
         Resources res = context.getResources();
         TypedValue typedValue = new TypedValue();
 
         res.getValue(R.dimen.status_bar_icon_scale_factor, typedValue, true);
         float iconScaleFactor = typedValue.getFloat();
 
-        if (iconScaleFactor == 1.f) {
-            return;
-        }
-
-        float batteryHeight = res.getDimension(R.dimen.status_bar_battery_icon_height);
-        float batteryWidth = res.getDimension(R.dimen.status_bar_battery_icon_width);
+        int batteryHeight = res.getDimensionPixelSize(R.dimen.status_bar_battery_icon_height);
+        int batteryWidth = res.getDimensionPixelSize(R.dimen.status_bar_battery_icon_width);
+        int marginBottom = res.getDimensionPixelSize(R.dimen.battery_margin_bottom);
 
         LinearLayout.LayoutParams scaledLayoutParams = new LinearLayout.LayoutParams(
                 (int) (batteryWidth * iconScaleFactor), (int) (batteryHeight * iconScaleFactor));
+        scaledLayoutParams.setMarginsRelative(0, 0, 0, marginBottom);
 
         mBatteryMeterView.setLayoutParams(scaledLayoutParams);
+        mBatteryMeterViewKeyguard.setLayoutParams(scaledLayoutParams);
     }
 
     @Override
@@ -185,15 +190,16 @@
             setIcon(views.get(i).getSlot(), views.get(i).getStatusBarIcon());
         }
     }
-
-    public void updateResources() {
+    private void loadDimens() {
         mIconSize = mContext.getResources().getDimensionPixelSize(
                 com.android.internal.R.dimen.status_bar_icon_size);
         mIconHPadding = mContext.getResources().getDimensionPixelSize(
                 R.dimen.status_bar_icon_padding);
+    }
+
+    public void defineSlots() {
         defineSlots(mContext.getResources().getStringArray(
                 com.android.internal.R.array.config_statusBarIcons));
-        FontSizeUtils.updateFontSize(mClock, R.dimen.status_bar_clock_size);
     }
 
     private void addSystemIcon(int index, StatusBarIcon icon) {
@@ -571,4 +577,35 @@
         }
         return ret;
     }
+
+    public void onDensityOrFontScaleChanged() {
+        loadDimens();
+        mNotificationIconAreaController.onDensityOrFontScaleChanged(mContext);
+        updateClock();
+        for (int i = 0; i < mStatusIcons.getChildCount(); i++) {
+            View child = mStatusIcons.getChildAt(i);
+            LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
+                    ViewGroup.LayoutParams.WRAP_CONTENT, mIconSize);
+            lp.setMargins(mIconHPadding, 0, mIconHPadding, 0);
+            child.setLayoutParams(lp);
+        }
+        for (int i = 0; i < mStatusIconsKeyguard.getChildCount(); i++) {
+            View child = mStatusIconsKeyguard.getChildAt(i);
+            LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
+                    ViewGroup.LayoutParams.WRAP_CONTENT, mIconSize);
+            child.setLayoutParams(lp);
+        }
+        scaleBatteryMeterViews(mContext);
+    }
+
+    private void updateClock() {
+        FontSizeUtils.updateFontSize(mClock, R.dimen.status_bar_clock_size);
+        mClock.setPaddingRelative(
+                mContext.getResources().getDimensionPixelSize(
+                        R.dimen.status_bar_clock_starting_padding),
+                0,
+                mContext.getResources().getDimensionPixelSize(
+                        R.dimen.status_bar_clock_end_padding),
+                0);
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconList.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconList.java
index 62d6b76..97b31f2 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconList.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconList.java
@@ -26,10 +26,13 @@
     private ArrayList<StatusBarIcon> mIcons = new ArrayList<>();
 
     public void defineSlots(String[] slots) {
+        mSlots.clear();
         final int N = slots.length;
         for (int i=0; i < N; i++) {
             mSlots.add(slots[i]);
-            mIcons.add(null);
+            if (mIcons.size() < mSlots.size()) {
+                mIcons.add(null);
+            }
         }
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/BrightnessMirrorController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/BrightnessMirrorController.java
index ab34768..7a6d080 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/BrightnessMirrorController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/BrightnessMirrorController.java
@@ -16,6 +16,7 @@
 
 package com.android.systemui.statusbar.policy;
 
+import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewPropertyAnimator;
 import android.widget.FrameLayout;
@@ -33,12 +34,14 @@
     public long TRANSITION_DURATION_OUT = 150;
     public long TRANSITION_DURATION_IN = 200;
 
+    private final StatusBarWindowView mStatusBarWindow;
     private final ScrimView mScrimBehind;
-    private final View mBrightnessMirror;
     private final View mNotificationPanel;
     private final int[] mInt2Cache = new int[2];
+    private View mBrightnessMirror;
 
     public BrightnessMirrorController(StatusBarWindowView statusBarWindow) {
+        mStatusBarWindow = statusBarWindow;
         mScrimBehind = (ScrimView) statusBarWindow.findViewById(R.id.scrim_behind);
         mBrightnessMirror = statusBarWindow.findViewById(R.id.brightness_mirror);
         mNotificationPanel = statusBarWindow.findViewById(R.id.notification_panel);
@@ -56,11 +59,11 @@
         inAnimation(mNotificationPanel.animate())
                 .withLayer()
                 .withEndAction(new Runnable() {
-            @Override
-            public void run() {
-                mBrightnessMirror.setVisibility(View.INVISIBLE);
-            }
-        });
+                    @Override
+                    public void run() {
+                        mBrightnessMirror.setVisibility(View.INVISIBLE);
+                    }
+                });
     }
 
     private ViewPropertyAnimator outAnimation(ViewPropertyAnimator a) {
@@ -104,4 +107,12 @@
                 R.integer.notification_panel_layout_gravity);
         mBrightnessMirror.setLayoutParams(lp);
     }
+
+    public void onDensityOrFontScaleChanged() {
+        int index = mStatusBarWindow.indexOfChild(mBrightnessMirror);
+        mStatusBarWindow.removeView(mBrightnessMirror);
+        mBrightnessMirror = LayoutInflater.from(mBrightnessMirror.getContext()).inflate(
+                R.layout.brightness_mirror, mStatusBarWindow, false);
+        mStatusBarWindow.addView(mBrightnessMirror, index);
+    }
 }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/Clock.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/Clock.java
index 3293964..66152fc 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/Clock.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/Clock.java
@@ -61,6 +61,7 @@
     private Calendar mCalendar;
     private String mClockFormatString;
     private SimpleDateFormat mClockFormat;
+    private SimpleDateFormat mContentDescriptionFormat;
     private Locale mLocale;
 
     private static final int AM_PM_STYLE_NORMAL  = 0;
@@ -158,6 +159,7 @@
         if (mDemoMode) return;
         mCalendar.setTimeInMillis(System.currentTimeMillis());
         setText(getSmallTime());
+        setContentDescription(mContentDescriptionFormat.format(mCalendar.getTime()));
     }
 
     @Override
@@ -207,6 +209,7 @@
                 ? is24 ? d.timeFormat_Hms : d.timeFormat_hms
                 : is24 ? d.timeFormat_Hm : d.timeFormat_hm;
         if (!format.equals(mClockFormatString)) {
+            mContentDescriptionFormat = new SimpleDateFormat(format);
             /*
              * Search for an unquoted "a" in the format string, so we can
              * add dummy characters around it to let us find it again after
@@ -295,6 +298,7 @@
                 mCalendar.set(Calendar.MINUTE, mm);
             }
             setText(getSmallTime());
+            setContentDescription(mContentDescriptionFormat.format(mCalendar.getTime()));
         }
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/DataSaverController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/DataSaverController.java
index c4c64e7..e6e189f 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/DataSaverController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/DataSaverController.java
@@ -89,6 +89,10 @@
                 }
             });
         }
+
+        @Override
+        public void onRestrictBackgroundWhitelistChanged(int uid, boolean whitelisted) {
+        }
     };
 
     public interface Listener {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotController.java
index 047f14d..4622ea4 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotController.java
@@ -21,6 +21,7 @@
     void removeCallback(Callback callback);
     boolean isHotspotEnabled();
     void setHotspotEnabled(boolean enabled);
+    boolean isHotspotSupported();
 
     public interface Callback {
         void onHotspotChanged(boolean enabled);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java
index c6b1cdf..9041341 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java
@@ -46,6 +46,12 @@
                 Context.CONNECTIVITY_SERVICE);
     }
 
+    @Override
+    public boolean isHotspotSupported() {
+        return mConnectivityManager.isTetheringSupported()
+                && mConnectivityManager.getTetherableWifiRegexs().length != 0;
+    }
+
     public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
         pw.println("HotspotController state:");
         pw.print("  mHotspotEnabled="); pw.println(stateToString(mHotspotState));
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java
index 40eb71d..40dacd3 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java
@@ -791,7 +791,7 @@
 
     private SubscriptionInfo addSignalController(int id, int simSlotIndex) {
         SubscriptionInfo info = new SubscriptionInfo(id, "", simSlotIndex, "", "", 0, 0, "", 0,
-                null, 0, 0, "");
+                null, 0, 0, "", SubscriptionManager.SIM_PROVISIONED);
         mMobileSignalControllers.put(id, new MobileSignalController(mContext,
                 mConfig, mHasMobileDataFeature, mPhone, mCallbackHandler, this, info,
                 mSubDefaults, mReceiverHandler.getLooper()));
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputView.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputView.java
index 557f166..ecd1772 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputView.java
@@ -105,7 +105,6 @@
                 return false;
             }
         });
-        mEditText.setOnClickListener(this);
         mEditText.addTextChangedListener(this);
         mEditText.setInnerFocusable(false);
         mEditText.mRemoteInputView = this;
@@ -148,15 +147,19 @@
 
     @Override
     public void onClick(View v) {
-        if (v == mEditText) {
-            if (!mEditText.isFocusable()) {
-                focus();
-            }
-        } else if (v == mSendButton) {
+        if (v == mSendButton) {
             sendRemoteInput();
         }
     }
 
+    @Override
+    public boolean onTouchEvent(MotionEvent event) {
+        super.onTouchEvent(event);
+
+        // We never want for a touch to escape to an outer view or one we covered.
+        return true;
+    }
+
     public void onDefocus() {
         mController.removeRemoteInput(mEntry);
         mEntry.remoteInputText = mEditText.getText();
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationChildrenContainer.java b/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationChildrenContainer.java
index ee483e5..be98d7a 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationChildrenContainer.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationChildrenContainer.java
@@ -663,6 +663,11 @@
             addView(divider, index);
             mDividers.set(i, divider);
         }
+        removeView(mOverflowNumber);
+        mOverflowNumber = null;
+        mOverflowInvertHelper = null;
+        mGroupOverFlowState = null;
+        updateGroupOverflow();
     }
 
     public void setUserLocked(boolean userLocked) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java
index 8b52bf6..3e0f930 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java
@@ -701,7 +701,7 @@
         mFalsingManager.onNotificationDismissed();
         if (mFalsingManager.shouldEnforceBouncer()) {
             mPhoneStatusBar.executeRunnableDismissingKeyguard(null, null /* cancelAction */,
-                    false /* dismissShade */, true /* afterKeyguardGone */);
+                    false /* dismissShade */, true /* afterKeyguardGone */, false /* deferred */);
         }
     }
 
@@ -747,7 +747,7 @@
     public boolean updateSwipeProgress(View animView, boolean dismissable, float swipeProgress) {
         if (!mIsExpanded && isPinnedHeadsUp(animView) && canChildBeDismissed(animView)) {
             mScrimController.setTopHeadsUpDragAmount(animView,
-                    Math.min(Math.abs(swipeProgress - 1.0f), 1.0f));
+                    Math.min(Math.abs(swipeProgress / 2f - 1.0f), 1.0f));
         }
         return true; // Don't fade out the notification
     }
@@ -990,9 +990,11 @@
                 true /* isDismissAll */);
     }
 
-    public void snapViewIfNeeded(View child) {
+    public void snapViewIfNeeded(ExpandableNotificationRow child) {
         boolean animate = mIsExpanded || isPinnedHeadsUp(child);
-        mSwipeHelper.snapChildIfNeeded(child, animate);
+        // If the child is showing the gear to go to settings, snap to that
+        float targetLeft = child.getSettingsRow().isVisible() ? child.getTranslation() : 0;
+        mSwipeHelper.snapChildIfNeeded(child, animate, targetLeft);
     }
 
     @Override
@@ -3116,8 +3118,13 @@
     }
 
     public void setOverflowContainer(NotificationOverflowContainer overFlowContainer) {
+        int index = -1;
+        if (mOverflowContainer != null) {
+            index = indexOfChild(mOverflowContainer);
+            removeView(mOverflowContainer);
+        }
         mOverflowContainer = overFlowContainer;
-        addView(mOverflowContainer);
+        addView(mOverflowContainer, index);
     }
 
     public void updateOverflowContainerVisibility(boolean visible) {
@@ -3519,8 +3526,7 @@
                     } else {
                         // Check scheduled, reset alpha and update location; check will fade it in
                         mCurrIconRow.setGearAlpha(0f);
-                        mCurrIconRow.setIconLocation(translation > 0 /* onLeft */,
-                                false /* force */);
+                        mCurrIconRow.setIconLocation(translation > 0 /* onLeft */);
                     }
                 }
             }
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/tv/TvStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/tv/TvStatusBar.java
index acef81b..f9202c4 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/tv/TvStatusBar.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/tv/TvStatusBar.java
@@ -165,7 +165,7 @@
     }
 
     @Override
-    public void showScreenPinningRequest() {
+    public void showScreenPinningRequest(int taskId) {
     }
 
     @Override
diff --git a/packages/SystemUI/src/com/android/systemui/tuner/OtherPrefs.java b/packages/SystemUI/src/com/android/systemui/tuner/OtherPrefs.java
new file mode 100644
index 0000000..205db32
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/tuner/OtherPrefs.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+package com.android.systemui.tuner;
+
+import android.os.Bundle;
+import android.support.v14.preference.PreferenceFragment;
+import com.android.systemui.R;
+
+public class OtherPrefs extends PreferenceFragment {
+    @Override
+    public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
+        addPreferencesFromResource(R.xml.other_settings);
+    }
+}
\ No newline at end of file
diff --git a/packages/SystemUI/src/com/android/systemui/tuner/PowerNotificationControlsFragment.java b/packages/SystemUI/src/com/android/systemui/tuner/PowerNotificationControlsFragment.java
new file mode 100644
index 0000000..14fccf2
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/tuner/PowerNotificationControlsFragment.java
@@ -0,0 +1,93 @@
+/**
+ * Copyright (c) 2016, The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.systemui.tuner;
+
+import com.android.internal.logging.MetricsLogger;
+import com.android.internal.logging.MetricsProto.MetricsEvent;
+import com.android.systemui.R;
+
+import android.annotation.Nullable;
+import android.app.Fragment;
+import android.os.Bundle;
+import android.provider.Settings;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.Switch;
+import android.widget.TextView;
+
+public class PowerNotificationControlsFragment extends Fragment {
+
+    private static final String KEY_SHOW_PNC = "show_importance_slider";
+
+    @Override
+    public void onCreate(@Nullable Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+    }
+
+    @Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        return inflater.inflate(R.layout.power_notification_controls_settings, container, false);
+    }
+
+    @Override
+    public void onViewCreated(View view, Bundle savedInstanceState) {
+        super.onViewCreated(view, savedInstanceState);
+        final View switchBar = view.findViewById(R.id.switch_bar);
+        final Switch switchWidget = (Switch) switchBar.findViewById(android.R.id.switch_widget);
+        final TextView switchText = (TextView) switchBar.findViewById(R.id.switch_text);
+        switchWidget.setChecked(isEnabled());
+        switchText.setText(isEnabled()
+                ? getString(R.string.switch_bar_on)
+                : getString(R.string.switch_bar_off));
+
+        switchWidget.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                boolean newState = !isEnabled();
+                MetricsLogger.action(getContext(),
+                        MetricsEvent.ACTION_TUNER_POWER_NOTIFICATION_CONTROLS, newState);
+                Settings.Secure.putInt(getContext().getContentResolver(),
+                        KEY_SHOW_PNC, newState ? 1 : 0);
+                switchWidget.setChecked(newState);
+                switchText.setText(newState
+                        ? getString(R.string.switch_bar_on)
+                        : getString(R.string.switch_bar_off));
+            }
+        });
+    }
+
+    @Override
+    public void onResume() {
+        super.onResume();
+        MetricsLogger.visibility(
+                getContext(), MetricsEvent.TUNER_POWER_NOTIFICATION_CONTROLS, true);
+    }
+
+    @Override
+    public void onPause() {
+        super.onPause();
+        MetricsLogger.visibility(
+                getContext(), MetricsEvent.TUNER_POWER_NOTIFICATION_CONTROLS, false);
+    }
+
+    private boolean isEnabled() {
+        int setting = Settings.Secure.getInt(getContext().getContentResolver(), KEY_SHOW_PNC, 0);
+        return setting == 1;
+    }
+
+}
diff --git a/packages/SystemUI/src/com/android/systemui/tv/pip/PipControlButtonView.java b/packages/SystemUI/src/com/android/systemui/tv/pip/PipControlButtonView.java
index c65415e..bcf2f67 100644
--- a/packages/SystemUI/src/com/android/systemui/tv/pip/PipControlButtonView.java
+++ b/packages/SystemUI/src/com/android/systemui/tv/pip/PipControlButtonView.java
@@ -92,8 +92,8 @@
         TypedArray typedArray =
             context.obtainStyledAttributes(attrs, values, defStyleAttr, defStyleRes);
 
-        mButtonImageView.setImageDrawable(typedArray.getDrawable(0));
-        mDescriptionTextView.setText(typedArray.getText(1));
+        setImageResource(typedArray.getResourceId(0, 0));
+        setText(typedArray.getResourceId(1, 0));
 
         typedArray.recycle();
     }
@@ -132,6 +132,7 @@
      * Sets the text for description the with the given resource id.
      */
     public void setText(int resId) {
+        mButtonImageView.setContentDescription(getContext().getString(resId));
         mDescriptionTextView.setText(resId);
     }
 
diff --git a/packages/SystemUI/src/com/android/systemui/tv/pip/PipManager.java b/packages/SystemUI/src/com/android/systemui/tv/pip/PipManager.java
index a445e77..d7efca7 100644
--- a/packages/SystemUI/src/com/android/systemui/tv/pip/PipManager.java
+++ b/packages/SystemUI/src/com/android/systemui/tv/pip/PipManager.java
@@ -35,6 +35,7 @@
 import android.os.Handler;
 import android.os.RemoteException;
 import android.os.SystemProperties;
+import android.text.TextUtils;
 import android.util.Log;
 import android.util.Pair;
 
@@ -144,6 +145,7 @@
     private ComponentName mPipComponentName;
     private MediaController mPipMediaController;
     private boolean mOnboardingShown;
+    private String[] mLastPackagesResourceGranted;
 
     private final Runnable mResizePinnedStackRunnable = new Runnable() {
         @Override
@@ -166,7 +168,7 @@
                 String[] packageNames = intent.getStringArrayExtra(Intent.EXTRA_PACKAGES);
                 int resourceType = intent.getIntExtra(Intent.EXTRA_MEDIA_RESOURCE_TYPE,
                         INVALID_RESOURCE_TYPE);
-                if (mState != STATE_NO_PIP && packageNames != null && packageNames.length > 0
+                if (packageNames != null && packageNames.length > 0
                         && resourceType == Intent.EXTRA_MEDIA_RESOURCE_TYPE_VIDEO_CODEC) {
                     handleMediaResourceGranted(packageNames);
                 }
@@ -274,9 +276,6 @@
     void movePipToFullscreen() {
         mState = STATE_NO_PIP;
         mPipTaskId = TASK_ID_NO_PIP;
-        for (int i = mListeners.size() - 1; i >= 0; --i) {
-            mListeners.get(i).onMoveToFullscreen();
-        }
         resizePinnedStack(mState);
     }
 
@@ -446,41 +445,24 @@
     }
 
     private void handleMediaResourceGranted(String[] packageNames) {
-        StackInfo fullscreenStack = null;
-        try {
-            fullscreenStack = mActivityManager.getStackInfo(FULLSCREEN_WORKSPACE_STACK_ID);
-        } catch (RemoteException e) {
-            Log.e(TAG, "getStackInfo failed", e);
-        }
-        if (fullscreenStack == null) {
-            return;
-        }
-        int fullscreenTopTaskId = fullscreenStack.taskIds[fullscreenStack.taskIds.length - 1];
-        List<RunningTaskInfo> tasks = null;
-        try {
-            tasks = mActivityManager.getTasks(MAX_RUNNING_TASKS_COUNT, 0);
-        } catch (RemoteException e) {
-            Log.e(TAG, "getTasks failed", e);
-        }
-        if (tasks == null) {
-            return;
-        }
-        boolean wasGrantedInFullscreen = false;
-        boolean wasGrantedInPip = false;
-        for (int i = tasks.size() - 1; i >= 0; --i) {
-            RunningTaskInfo task = tasks.get(i);
-            for (int j = packageNames.length - 1; j >= 0; --j) {
-                if (task.topActivity.getPackageName().equals(packageNames[j])) {
-                    if (task.id == fullscreenTopTaskId) {
-                        wasGrantedInFullscreen = true;
-                    } else if (task.id == mPipTaskId) {
-                        wasGrantedInPip= true;
+        if (mState == STATE_NO_PIP) {
+            mLastPackagesResourceGranted = packageNames;
+        } else {
+            boolean requestedFromLastPackages = false;
+            if (mLastPackagesResourceGranted != null) {
+                for (String packageName : mLastPackagesResourceGranted) {
+                    for (String newPackageName : packageNames) {
+                        if (TextUtils.equals(newPackageName, packageName)) {
+                            requestedFromLastPackages = true;
+                            break;
+                        }
                     }
                 }
             }
-        }
-        if (wasGrantedInFullscreen && !wasGrantedInPip) {
-            closePip();
+            mLastPackagesResourceGranted = packageNames;
+            if (!requestedFromLastPackages) {
+                closePip();
+            }
         }
     }
 
@@ -653,6 +635,11 @@
         public void onPinnedStackAnimationEnded() {
             if (DEBUG) Log.d(TAG, "onPinnedStackAnimationEnded()");
             switch (mState) {
+                case STATE_NO_PIP:
+                    for (int i = mListeners.size() - 1; i >= 0; --i) {
+                        mListeners.get(i).onMoveToFullscreen();
+                    }
+                    break;
                 case STATE_PIP_OVERLAY:
                     if (!mPipRecentsOverlayManager.isRecentsShown()) {
                         showPipOverlay();
diff --git a/packages/SystemUI/src/com/android/systemui/tv/pip/PipOnboardingActivity.java b/packages/SystemUI/src/com/android/systemui/tv/pip/PipOnboardingActivity.java
index 398572a..9a87cfc 100644
--- a/packages/SystemUI/src/com/android/systemui/tv/pip/PipOnboardingActivity.java
+++ b/packages/SystemUI/src/com/android/systemui/tv/pip/PipOnboardingActivity.java
@@ -24,6 +24,7 @@
 import android.graphics.drawable.AnimationDrawable;
 import android.os.Bundle;
 import android.view.View;
+import android.view.KeyEvent;
 import android.widget.ImageView;
 
 import com.android.systemui.R;
@@ -33,6 +34,7 @@
  */
 public class PipOnboardingActivity extends Activity implements PipManager.Listener {
     private final PipManager mPipManager = PipManager.getInstance();
+    private AnimatorSet mEnterAnimator;
 
     @Override
     protected void onCreate(Bundle bundle) {
@@ -51,22 +53,25 @@
     @Override
     public void onResume() {
         super.onResume();
-        AnimatorSet enterAnimator = new AnimatorSet();
-        enterAnimator.playTogether(
+        mEnterAnimator = new AnimatorSet();
+        mEnterAnimator.playTogether(
+                loadAnimator(R.id.background, R.anim.tv_pip_onboarding_background_enter_animation),
                 loadAnimator(R.id.remote, R.anim.tv_pip_onboarding_image_enter_animation),
                 loadAnimator(R.id.remote_button, R.anim.tv_pip_onboarding_image_enter_animation),
                 loadAnimator(R.id.title, R.anim.tv_pip_onboarding_title_enter_animation),
                 loadAnimator(R.id.description,
                         R.anim.tv_pip_onboarding_description_enter_animation),
                 loadAnimator(R.id.button, R.anim.tv_pip_onboarding_button_enter_animation));
-        enterAnimator.addListener(new AnimatorListenerAdapter() {
+        mEnterAnimator.addListener(new AnimatorListenerAdapter() {
             @Override
             public void onAnimationStart(Animator animation) {
                 ImageView button = (ImageView) findViewById(R.id.remote_button);
                 ((AnimationDrawable) button.getDrawable()).start();
             }
         });
-        enterAnimator.start();
+        int delay = getResources().getInteger(R.integer.tv_pip_onboarding_anim_start_delay);
+        mEnterAnimator.setStartDelay(delay);
+        mEnterAnimator.start();
     }
 
     private Animator loadAnimator(int viewResId, int animResId) {
@@ -76,6 +81,22 @@
     }
 
     @Override
+    public boolean onKeyUp(int keyCode, KeyEvent event) {
+        if (mEnterAnimator.isStarted()) {
+            return true;
+        }
+        return super.onKeyUp(keyCode, event);
+    }
+
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        if (mEnterAnimator.isStarted()) {
+            return true;
+        }
+        return super.onKeyDown(keyCode, event);
+    }
+
+    @Override
     public void onPause() {
         super.onPause();
         finish();
diff --git a/packages/SystemUI/src/com/android/systemui/tv/pip/PipRecentsOverlayManager.java b/packages/SystemUI/src/com/android/systemui/tv/pip/PipRecentsOverlayManager.java
index d75561b..dd12360 100644
--- a/packages/SystemUI/src/com/android/systemui/tv/pip/PipRecentsOverlayManager.java
+++ b/packages/SystemUI/src/com/android/systemui/tv/pip/PipRecentsOverlayManager.java
@@ -21,6 +21,7 @@
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
+import android.view.accessibility.AccessibilityEvent;
 import android.view.WindowManager.LayoutParams;
 import android.view.WindowManager;
 
@@ -133,7 +134,7 @@
      */
     public void requestFocus(boolean allowRecentsFocusable) {
         mRecentsView.setVisibility(allowRecentsFocusable ? View.VISIBLE : View.GONE);
-        if (!mIsRecentsShown || mIsPipFocusedInRecent) {
+        if (!mIsPipRecentsOverlayShown || !mIsRecentsShown || mIsPipFocusedInRecent) {
             return;
         }
         mIsPipFocusedInRecent = true;
@@ -141,6 +142,7 @@
 
         mWindowManager.updateViewLayout(mOverlayView, mPipRecentsControlsViewFocusedLayoutParams);
         mPipControlsView.requestFocus();
+        mPipControlsView.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED);
         mPipControlsView.startFocusGainAnimation();
     }
 
@@ -151,7 +153,7 @@
      * This should be called only by {@link com.android.systemui.recents.tv.RecentsTvActivity}.
      */
     public void clearFocus() {
-        if (!mIsRecentsShown || !mIsPipFocusedInRecent) {
+        if (!mIsPipRecentsOverlayShown || !mIsRecentsShown || !mIsPipFocusedInRecent) {
             return;
         }
         if (!mRecentsView.hasFocus()) {
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialog.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialog.java
index 91a8493..65b93c7 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialog.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialog.java
@@ -18,7 +18,9 @@
 
 import android.accessibilityservice.AccessibilityServiceInfo;
 import android.animation.LayoutTransition;
+import android.animation.ObjectAnimator;
 import android.animation.ValueAnimator;
+import android.annotation.NonNull;
 import android.annotation.SuppressLint;
 import android.app.Dialog;
 import android.app.KeyguardManager;
@@ -59,6 +61,7 @@
 import android.view.accessibility.AccessibilityEvent;
 import android.view.accessibility.AccessibilityManager;
 import android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener;
+import android.view.animation.DecelerateInterpolator;
 import android.widget.ImageButton;
 import android.widget.LinearLayout;
 import android.widget.SeekBar;
@@ -92,6 +95,7 @@
     public static final String SHOW_FULL_ZEN = "sysui_show_full_zen";
 
     private static final long USER_ATTEMPT_GRACE_PERIOD = 1000;
+    private static final int UPDATE_ANIMATION_DURATION = 80;
 
     private final Context mContext;
     private final H mHandler = new H();
@@ -100,13 +104,13 @@
     private CustomDialog mDialog;
     private ViewGroup mDialogView;
     private ViewGroup mDialogContentView;
-    private ViewGroup mVolumeRowContainer;
     private ImageButton mExpandButton;
     private final List<VolumeRow> mRows = new ArrayList<>();
     private final SpTexts mSpTexts;
     private final SparseBooleanArray mDynamic = new SparseBooleanArray();
     private final KeyguardManager mKeyguard;
     private final AudioManager mAudioManager;
+    private final AccessibilityManager mAccessibilityMgr;
     private int mExpandButtonAnimationDuration;
     private ZenFooter mZenFooter;
     private final LayoutTransition mLayoutTransition;
@@ -148,6 +152,7 @@
         mSpTexts = new SpTexts(mContext);
         mKeyguard = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE);
         mAudioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
+        mAccessibilityMgr = (AccessibilityManager) mContext.getSystemService(Context.ACCESSIBILITY_SERVICE);
         mActiveSliderTint = loadColorStateList(R.color.system_accent_color);
         mInactiveSliderTint = loadColorStateList(R.color.volume_slider_inactive);
         mLayoutTransition = new LayoutTransition();
@@ -207,8 +212,6 @@
             }
         });
         mDialogContentView = (ViewGroup) mDialog.findViewById(R.id.volume_dialog_content);
-        mVolumeRowContainer =
-                (ViewGroup) mDialogContentView.findViewById(R.id.volume_row_container);
         mExpanded = false;
         mExpandButton = (ImageButton) mDialogView.findViewById(R.id.volume_expand_button);
         mExpandButton.setOnClickListener(mClickExpand);
@@ -309,7 +312,7 @@
         if (!mRows.isEmpty()) {
             addSpacer(row);
         }
-        mVolumeRowContainer.addView(row.view);
+        mDialogContentView.addView(row.view, mDialogContentView.getChildCount() - 2);
         mRows.add(row);
     }
 
@@ -321,7 +324,7 @@
             if (i > 0) {
                 addSpacer(row);
             }
-            mVolumeRowContainer.addView(row.view);
+            mDialogContentView.addView(row.view, mDialogContentView.getChildCount() - 2);
         }
     }
 
@@ -332,7 +335,7 @@
                 .getDimensionPixelSize(R.dimen.volume_slider_interspacing);
         final LinearLayout.LayoutParams lp =
                 new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, h);
-        mVolumeRowContainer.addView(v, lp);
+        mDialogContentView.addView(v, mDialogContentView.getChildCount() - 2, lp);
         row.space = v;
     }
 
@@ -372,6 +375,14 @@
         writer.println(mAccessibility.mFeedbackEnabled);
     }
 
+    private static int getImpliedLevel(SeekBar seekBar, int progress) {
+        final int m = seekBar.getMax();
+        final int n = m / 100 - 1;
+        final int level = progress == 0 ? 0
+                : progress == m ? (m / 100) : (1 + (int)((progress / (float) m) * n));
+        return level;
+    }
+
     @SuppressLint("InflateParams")
     private void initRow(final VolumeRow row, final int stream, int iconRes, int iconMuteRes,
             boolean important) {
@@ -499,6 +510,15 @@
                 setExpandedH(false);
             }
         });
+        if (mAccessibilityMgr.isEnabled()) {
+            AccessibilityEvent event =
+                    AccessibilityEvent.obtain(AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED);
+            event.setPackageName(mContext.getPackageName());
+            event.setClassName(CustomDialog.class.getSuperclass().getName());
+            event.getText().add(mContext.getString(
+                    R.string.volume_dialog_accessibility_dismissed_message));
+            mAccessibilityMgr.sendAccessibilityEvent(event);
+        }
         Events.writeEvent(mContext, Events.EVENT_DISMISS_DIALOG, reason);
         mController.notifyVisible(false);
         synchronized (mSafetyWarningLock) {
@@ -613,8 +633,8 @@
             if (row.ss == null || !row.ss.dynamic) continue;
             if (!mDynamic.get(row.stream)) {
                 mRows.remove(i);
-                mVolumeRowContainer.removeView(row.view);
-                mVolumeRowContainer.removeView(row.space);
+                mDialogContentView.removeView(row.view);
+                mDialogContentView.removeView(row.space);
             }
         }
     }
@@ -710,7 +730,7 @@
                 : false;
 
         // update slider max
-        final int max = ss.levelMax;
+        final int max = ss.levelMax * 100;
         if (max != row.slider.getMax()) {
             row.slider.setMax(max);
         }
@@ -827,7 +847,8 @@
         if (row.tracking) {
             return;  // don't update if user is sliding
         }
-        final int level = row.slider.getProgress();
+        final int progress = row.slider.getProgress();
+        final int level = getImpliedLevel(row.slider, progress);
         final boolean rowVisible = row.view.getVisibility() == View.VISIBLE;
         final boolean inGracePeriod = (SystemClock.uptimeMillis() - row.userAttempt)
                 < USER_ATTEMPT_GRACE_PERIOD;
@@ -843,7 +864,33 @@
                 return;  // don't clamp if visible
             }
         }
-        row.slider.setProgress(vlevel, true);
+        final int newProgress = vlevel * 100;
+        if (progress != newProgress) {
+            if (mShowing && rowVisible) {
+                // animate!
+                if (row.anim != null && row.anim.isRunning()
+                        && row.animTargetProgress == newProgress) {
+                    return;  // already animating to the target progress
+                }
+                // start/update animation
+                if (row.anim == null) {
+                    row.anim = ObjectAnimator.ofInt(row.slider, "progress", progress, newProgress);
+                    row.anim.setInterpolator(new DecelerateInterpolator());
+                } else {
+                    row.anim.cancel();
+                    row.anim.setIntValues(progress, newProgress);
+                }
+                row.animTargetProgress = newProgress;
+                row.anim.setDuration(UPDATE_ANIMATION_DURATION);
+                row.anim.start();
+            } else {
+                // update slider directly to clamped value
+                if (row.anim != null) {
+                    row.anim.cancel();
+                }
+                row.slider.setProgress(newProgress);
+            }
+        }
     }
 
     private void recheckH(VolumeRow row) {
@@ -1047,6 +1094,27 @@
             }
             return false;
         }
+
+        @Override
+        public boolean dispatchPopulateAccessibilityEvent(@NonNull AccessibilityEvent event) {
+            event.setClassName(getClass().getSuperclass().getName());
+            event.setPackageName(mContext.getPackageName());
+
+            ViewGroup.LayoutParams params = getWindow().getAttributes();
+            boolean isFullScreen = (params.width == ViewGroup.LayoutParams.MATCH_PARENT) &&
+                    (params.height == ViewGroup.LayoutParams.MATCH_PARENT);
+            event.setFullScreen(isFullScreen);
+
+            if (event.getEventType() == AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED) {
+                if (mShowing) {
+                    event.getText().add(mContext.getString(
+                            R.string.volume_dialog_accessibility_shown_message,
+                            getActiveRow().ss.name));
+                    return true;
+                }
+            }
+            return false;
+        }
     }
 
     private final class VolumeSeekBarChangeListener implements OnSeekBarChangeListener {
@@ -1063,19 +1131,20 @@
                     + " onProgressChanged " + progress + " fromUser=" + fromUser);
             if (!fromUser) return;
             if (mRow.ss.levelMin > 0) {
-                final int minProgress = mRow.ss.levelMin;
+                final int minProgress = mRow.ss.levelMin * 100;
                 if (progress < minProgress) {
                     seekBar.setProgress(minProgress);
                     progress = minProgress;
                 }
             }
-            if (mRow.ss.level != progress || mRow.ss.muted && progress > 0) {
+            final int userLevel = getImpliedLevel(seekBar, progress);
+            if (mRow.ss.level != userLevel || mRow.ss.muted && userLevel > 0) {
                 mRow.userAttempt = SystemClock.uptimeMillis();
-                if (mRow.requestedLevel != progress) {
-                    mController.setStreamVolume(mRow.stream, progress);
-                    mRow.requestedLevel = progress;
+                if (mRow.requestedLevel != userLevel) {
+                    mController.setStreamVolume(mRow.stream, userLevel);
+                    mRow.requestedLevel = userLevel;
                     Events.writeEvent(mContext, Events.EVENT_TOUCH_LEVEL_CHANGED, mRow.stream,
-                            progress);
+                            userLevel);
                 }
             }
         }
@@ -1092,7 +1161,7 @@
             if (D.BUG) Log.d(TAG, "onStopTrackingTouch"+ " " + mRow.stream);
             mRow.tracking = false;
             mRow.userAttempt = SystemClock.uptimeMillis();
-            final int userLevel = seekBar.getProgress();
+            final int userLevel = getImpliedLevel(seekBar, seekBar.getProgress());
             Events.writeEvent(mContext, Events.EVENT_TOUCH_LEVEL_DONE, mRow.stream, userLevel);
             if (mRow.ss.level != userLevel) {
                 mHandler.sendMessageDelayed(mHandler.obtainMessage(H.RECHECK, mRow),
@@ -1102,16 +1171,13 @@
     }
 
     private final class Accessibility extends AccessibilityDelegate {
-        private AccessibilityManager mMgr;
         private boolean mFeedbackEnabled;
 
         public void init() {
-            mMgr = (AccessibilityManager) mContext.getSystemService(Context.ACCESSIBILITY_SERVICE);
             mDialogView.addOnAttachStateChangeListener(new OnAttachStateChangeListener() {
                 @Override
                 public void onViewDetachedFromWindow(View v) {
                     if (D.BUG) Log.d(TAG, "onViewDetachedFromWindow");
-                    // noop
                 }
 
                 @Override
@@ -1121,12 +1187,13 @@
                 }
             });
             mDialogView.setAccessibilityDelegate(this);
-            mMgr.addAccessibilityStateChangeListener(new AccessibilityStateChangeListener() {
-                @Override
-                public void onAccessibilityStateChanged(boolean enabled) {
-                    updateFeedbackEnabled();
-                }
-            });
+            mAccessibilityMgr.addAccessibilityStateChangeListener(
+                    new AccessibilityStateChangeListener() {
+                        @Override
+                        public void onAccessibilityStateChanged(boolean enabled) {
+                            updateFeedbackEnabled();
+                        }
+                    });
             updateFeedbackEnabled();
         }
 
@@ -1144,7 +1211,7 @@
         private boolean computeFeedbackEnabled() {
             // are there any enabled non-generic a11y services?
             final List<AccessibilityServiceInfo> services =
-                    mMgr.getEnabledAccessibilityServiceList(FEEDBACK_ALL_MASK);
+                    mAccessibilityMgr.getEnabledAccessibilityServiceList(FEEDBACK_ALL_MASK);
             for (AccessibilityServiceInfo asi : services) {
                 if (asi.feedbackType != 0 && asi.feedbackType != FEEDBACK_GENERIC) {
                     return true;
@@ -1172,6 +1239,8 @@
         private ColorStateList cachedSliderTint;
         private int iconState;  // from Events
         private boolean cachedShowHeaders = VolumePrefs.DEFAULT_SHOW_HEADERS;
+        private ObjectAnimator anim;  // slider progress animation for non-touch-related updates
+        private int animTargetProgress;
         private int lastAudibleLevel = 1;
     }
 
diff --git a/packages/WallpaperBackup/Android.mk b/packages/WallpaperBackup/Android.mk
new file mode 100644
index 0000000..cf04249
--- /dev/null
+++ b/packages/WallpaperBackup/Android.mk
@@ -0,0 +1,34 @@
+#
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src)
+
+LOCAL_PROGUARD_FLAG_FILES := proguard.flags
+
+LOCAL_PACKAGE_NAME := WallpaperBackup
+LOCAL_CERTIFICATE := platform
+LOCAL_PRIVILEGED_MODULE := false
+
+include $(BUILD_PACKAGE)
+
+########################
+include $(call all-makefiles-under,$(LOCAL_PATH))
+
diff --git a/packages/WallpaperBackup/AndroidManifest.xml b/packages/WallpaperBackup/AndroidManifest.xml
new file mode 100644
index 0000000..b8cea20
--- /dev/null
+++ b/packages/WallpaperBackup/AndroidManifest.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+ * Copyright (c) 2016 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.wallpaperbackup"
+    android:sharedUserId="android.uid.system" >
+
+    <application android:allowClearUserData="false"
+                 android:process="system"
+                 android:killAfterRestore="false"
+                 android:allowBackup="true"
+                 android:backupAgent=".WallpaperBackupAgent"
+                 android:fullBackupOnly="true" >
+    </application>
+</manifest>
diff --git a/packages/WallpaperBackup/proguard.flags b/packages/WallpaperBackup/proguard.flags
new file mode 100644
index 0000000..247e6ef
--- /dev/null
+++ b/packages/WallpaperBackup/proguard.flags
@@ -0,0 +1 @@
+-keep class com.android.wallpaperbackup.WallpaperBackupAgent
diff --git a/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperBackupAgent.java b/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperBackupAgent.java
new file mode 100644
index 0000000..2f79079
--- /dev/null
+++ b/packages/WallpaperBackup/src/com/android/wallpaperbackup/WallpaperBackupAgent.java
@@ -0,0 +1,164 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.wallpaperbackup;
+
+import android.app.WallpaperManager;
+import android.app.backup.BackupAgent;
+import android.app.backup.BackupDataInput;
+import android.app.backup.BackupDataOutput;
+import android.app.backup.FullBackupDataOutput;
+import android.content.Context;
+import android.os.Environment;
+import android.os.ParcelFileDescriptor;
+import android.os.UserHandle;
+import android.system.Os;
+import android.util.Slog;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+
+public class WallpaperBackupAgent extends BackupAgent {
+    private static final String TAG = "WallpaperBackup";
+    private static final boolean DEBUG = false;
+
+    // NB: must be kept in sync with WallpaperManagerService but has no
+    // compile-time visiblity.
+
+    // Target filenames within the system's wallpaper directory
+    static final String WALLPAPER = "wallpaper_orig";
+    static final String WALLPAPER_INFO = "wallpaper_info.xml";
+
+    // Names of our local-data stage files/links
+    static final String IMAGE_STAGE = "wallpaper-stage";
+    static final String INFO_STAGE = "wallpaper-info-stage";
+    static final String EMPTY_SENTINEL = "empty";
+
+    private File mWallpaperInfo;    // wallpaper metadata file
+    private File mWallpaperFile;    // primary wallpaper image file
+
+    private WallpaperManager mWm;
+
+    @Override
+    public void onCreate() {
+        if (DEBUG) {
+            Slog.v(TAG, "onCreate()");
+        }
+
+        File wallpaperDir = Environment.getUserSystemDirectory(UserHandle.USER_SYSTEM);
+        mWallpaperInfo = new File(wallpaperDir, WALLPAPER_INFO);
+        mWallpaperFile = new File(wallpaperDir, WALLPAPER);
+        mWm = (WallpaperManager) getSystemService(Context.WALLPAPER_SERVICE);
+    }
+
+    @Override
+    public void onFullBackup(FullBackupDataOutput data) throws IOException {
+        // To avoid data duplication and disk churn, use links as the stage.
+        final File filesDir = getFilesDir();
+        final File infoStage = new File(filesDir, INFO_STAGE);
+        final File imageStage = new File (filesDir, IMAGE_STAGE);
+        final File empty = new File (filesDir, EMPTY_SENTINEL);
+
+        try {
+            // We always back up this 'empty' file to ensure that the absence of
+            // storable wallpaper imagery still produces a non-empty backup data
+            // stream, otherwise it'd simply be ignored in preflight.
+            FileOutputStream touch = new FileOutputStream(empty);
+            touch.close();
+            fullBackupFile(empty, data);
+
+            // only back up the wallpaper if we've been told it's allowed
+            if (mWm.isWallpaperBackupEligible()) {
+                if (DEBUG) {
+                    Slog.v(TAG, "Wallpaper is backup-eligible; linking & writing");
+                }
+                Os.link(mWallpaperInfo.getCanonicalPath(), infoStage.getCanonicalPath());
+                fullBackupFile(infoStage, data);
+                Os.link(mWallpaperFile.getCanonicalPath(), imageStage.getCanonicalPath());
+                fullBackupFile(imageStage, data);
+            } else {
+                if (DEBUG) {
+                    Slog.v(TAG, "Wallpaper not backup-eligible; writing no data");
+                }
+            }
+        } catch (Exception e) {
+            Slog.e(TAG, "Unable to back up wallpaper: " + e.getMessage());
+        } finally {
+            if (DEBUG) {
+                Slog.v(TAG, "Removing backup stage links");
+            }
+            infoStage.delete();
+            imageStage.delete();
+        }
+    }
+
+    // We use the default onRestoreFile() implementation that will recreate our stage files,
+    // then postprocess in onRestoreFinished() to move them on top of the live data.
+    //
+    // NOTE: this relies on our local files dir being on the same filesystem as the live
+    // system wallpaper data.  If this is not the case then an actual copy operation will
+    // be needed.
+    @Override
+    public void onRestoreFinished() {
+        if (DEBUG) {
+            Slog.v(TAG, "onRestoreFinished()");
+        }
+        final File infoStage = new File(getFilesDir(), INFO_STAGE);
+        final File imageStage = new File (getFilesDir(), IMAGE_STAGE);
+
+        try {
+            // It is valid for the imagery to be absent; it means that we were not permitted
+            // to back up the original image on the source device.
+            if (imageStage.exists()) {
+                if (DEBUG) {
+                    Slog.v(TAG, "Got restored wallpaper; renaming into place");
+                }
+                // Rename the image file into place last because that is the trigger for
+                // the wallpaper observer to generate a new crop/scale
+                Os.rename(infoStage.getCanonicalPath(), mWallpaperInfo.getCanonicalPath());
+                Os.rename(imageStage.getCanonicalPath(), mWallpaperFile.getCanonicalPath());
+            }
+        } catch (Exception e) {
+            Slog.e(TAG, "Unable to restore wallpaper: " + e.getMessage());
+            mWm.clearWallpaper(WallpaperManager.FLAG_SYSTEM, UserHandle.USER_SYSTEM);
+        } finally {
+            // These "should" not exist because of the renames, but make sure
+            // in case of errors/exceptions/etc.
+            if (DEBUG) {
+                Slog.v(TAG, "Removing restore stage files");
+            }
+            infoStage.delete();
+            imageStage.delete();
+        }
+    }
+
+    //
+    // Key/value API: abstract, so required, but not used
+    //
+
+    @Override
+    public void onBackup(ParcelFileDescriptor oldState, BackupDataOutput data,
+            ParcelFileDescriptor newState) throws IOException {
+        // Intentionally blank
+    }
+
+    @Override
+    public void onRestore(BackupDataInput data, int appVersionCode, ParcelFileDescriptor newState)
+            throws IOException {
+        // Intentionally blank
+    }
+}
\ No newline at end of file
diff --git a/preloaded-classes b/preloaded-classes
index d854769..32b692a 100644
--- a/preloaded-classes
+++ b/preloaded-classes
@@ -1613,6 +1613,7 @@
 android.os.AsyncTask$WorkerRunnable
 android.os.BadParcelableException
 android.os.BaseBundle
+android.os.BaseBundle$NoImagePreloadHolder
 android.os.BatteryManager
 android.os.Binder
 android.os.BinderProxy
diff --git a/proto/src/metrics_constants.proto b/proto/src/metrics_constants.proto
index afea7f3..7b3fd66 100644
--- a/proto/src/metrics_constants.proto
+++ b/proto/src/metrics_constants.proto
@@ -2152,6 +2152,23 @@
     // User tried to dock an unresizable app.
     ACTION_WINDOW_DOCK_UNRESIZABLE = 391;
 
+    // System UI Tuner > Other > Power notification controls
+    TUNER_POWER_NOTIFICATION_CONTROLS = 392;
+
+    // System UI Tuner > Other > Power notification controls > Toggle on/off
+    ACTION_TUNER_POWER_NOTIFICATION_CONTROLS = 393;
+
+    // Action: user enable / disabled data saver using Settings. Arguments:
+    // 0: Data Saver mode is disabled.
+    // 1: Data Saver mode is enabled.
+    ACTION_DATA_SAVER_MODE = 394;
+
+    // User whitelisted an app for Data Saver mode; action pass package name of app.
+    ACTION_DATA_SAVER_WHITELIST = 395;
+
+    // User blacklisted an app for Data Saver mode; action pass package name of app.
+    ACTION_DATA_SAVER_BLACKLIST = 396;
+
     // Add new aosp constants above this line.
     // END OF AOSP CONSTANTS
   }
diff --git a/rs/java/android/renderscript/Allocation.java b/rs/java/android/renderscript/Allocation.java
index 04ea8e5..c0ea132 100644
--- a/rs/java/android/renderscript/Allocation.java
+++ b/rs/java/android/renderscript/Allocation.java
@@ -392,8 +392,6 @@
 
     protected void finalize() throws Throwable {
         RenderScript.registerNativeFree.invoke(RenderScript.sRuntime, mSize);
-        // Set mType null to avoid double-destroying it in case its finalizer races ahead
-        mType = null;
         super.finalize();
     }
 
@@ -2615,7 +2613,6 @@
 
         if (mType != null && mOwningType) {
             mType.destroy();
-            mType = null;
         }
 
         super.destroy();
diff --git a/rs/java/android/renderscript/Element.java b/rs/java/android/renderscript/Element.java
index 50226ac..9d2f750 100644
--- a/rs/java/android/renderscript/Element.java
+++ b/rs/java/android/renderscript/Element.java
@@ -311,8 +311,12 @@
      * @return Element
      */
     public static Element BOOLEAN(RenderScript rs) {
-        if(rs.mElement_BOOLEAN == null) {
-            rs.mElement_BOOLEAN = createUser(rs, DataType.BOOLEAN);
+        if (rs.mElement_BOOLEAN == null) {
+            synchronized (rs) {
+                if (rs.mElement_BOOLEAN == null) {
+                    rs.mElement_BOOLEAN = createUser(rs, DataType.BOOLEAN);
+                }
+            }
         }
         return rs.mElement_BOOLEAN;
     }
@@ -325,8 +329,12 @@
      * @return Element
      */
     public static Element U8(RenderScript rs) {
-        if(rs.mElement_U8 == null) {
-            rs.mElement_U8 = createUser(rs, DataType.UNSIGNED_8);
+        if (rs.mElement_U8 == null) {
+            synchronized (rs) {
+                if (rs.mElement_U8 == null) {
+                    rs.mElement_U8 = createUser(rs, DataType.UNSIGNED_8);
+                }
+            }
         }
         return rs.mElement_U8;
     }
@@ -339,436 +347,683 @@
      * @return Element
      */
     public static Element I8(RenderScript rs) {
-        if(rs.mElement_I8 == null) {
-            rs.mElement_I8 = createUser(rs, DataType.SIGNED_8);
+        if (rs.mElement_I8 == null) {
+            synchronized (rs) {
+                if (rs.mElement_I8 == null) {
+                    rs.mElement_I8 = createUser(rs, DataType.SIGNED_8);
+                }
+            }
         }
         return rs.mElement_I8;
     }
 
     public static Element U16(RenderScript rs) {
-        if(rs.mElement_U16 == null) {
-            rs.mElement_U16 = createUser(rs, DataType.UNSIGNED_16);
+        if (rs.mElement_U16 == null) {
+            synchronized (rs) {
+                if (rs.mElement_U16 == null) {
+                    rs.mElement_U16 = createUser(rs, DataType.UNSIGNED_16);
+                }
+            }
         }
         return rs.mElement_U16;
     }
 
     public static Element I16(RenderScript rs) {
-        if(rs.mElement_I16 == null) {
-            rs.mElement_I16 = createUser(rs, DataType.SIGNED_16);
+        if (rs.mElement_I16 == null) {
+            synchronized (rs) {
+                if (rs.mElement_I16 == null) {
+                    rs.mElement_I16 = createUser(rs, DataType.SIGNED_16);
+                }
+            }
         }
         return rs.mElement_I16;
     }
 
     public static Element U32(RenderScript rs) {
-        if(rs.mElement_U32 == null) {
-            rs.mElement_U32 = createUser(rs, DataType.UNSIGNED_32);
+        if (rs.mElement_U32 == null) {
+            synchronized (rs) {
+                if (rs.mElement_U32 == null) {
+                    rs.mElement_U32 = createUser(rs, DataType.UNSIGNED_32);
+                }
+            }
         }
         return rs.mElement_U32;
     }
 
     public static Element I32(RenderScript rs) {
-        if(rs.mElement_I32 == null) {
-            rs.mElement_I32 = createUser(rs, DataType.SIGNED_32);
+        if (rs.mElement_I32 == null) {
+            synchronized (rs) {
+                if (rs.mElement_I32 == null) {
+                    rs.mElement_I32 = createUser(rs, DataType.SIGNED_32);
+                }
+            }
         }
         return rs.mElement_I32;
     }
 
     public static Element U64(RenderScript rs) {
-        if(rs.mElement_U64 == null) {
-            rs.mElement_U64 = createUser(rs, DataType.UNSIGNED_64);
+        if (rs.mElement_U64 == null) {
+            synchronized (rs) {
+                if (rs.mElement_U64 == null) {
+                    rs.mElement_U64 = createUser(rs, DataType.UNSIGNED_64);
+                }
+            }
         }
         return rs.mElement_U64;
     }
 
     public static Element I64(RenderScript rs) {
-        if(rs.mElement_I64 == null) {
-            rs.mElement_I64 = createUser(rs, DataType.SIGNED_64);
+        if (rs.mElement_I64 == null) {
+            synchronized (rs) {
+                if (rs.mElement_I64 == null) {
+                    rs.mElement_I64 = createUser(rs, DataType.SIGNED_64);
+                }
+            }
         }
         return rs.mElement_I64;
     }
 
     public static Element F16(RenderScript rs) {
-        if(rs.mElement_F16 == null) {
-            rs.mElement_F16 = createUser(rs, DataType.FLOAT_16);
+        if (rs.mElement_F16 == null) {
+            synchronized (rs) {
+                if (rs.mElement_F16 == null) {
+                    rs.mElement_F16 = createUser(rs, DataType.FLOAT_16);
+                }
+            }
         }
         return rs.mElement_F16;
     }
 
     public static Element F32(RenderScript rs) {
-        if(rs.mElement_F32 == null) {
-            rs.mElement_F32 = createUser(rs, DataType.FLOAT_32);
+        if (rs.mElement_F32 == null) {
+            synchronized (rs) {
+                if (rs.mElement_F32 == null) {
+                    rs.mElement_F32 = createUser(rs, DataType.FLOAT_32);
+                }
+            }
         }
         return rs.mElement_F32;
     }
 
     public static Element F64(RenderScript rs) {
-        if(rs.mElement_F64 == null) {
-            rs.mElement_F64 = createUser(rs, DataType.FLOAT_64);
+        if (rs.mElement_F64 == null) {
+            synchronized (rs) {
+                if (rs.mElement_F64 == null) {
+                    rs.mElement_F64 = createUser(rs, DataType.FLOAT_64);
+                }
+            }
         }
         return rs.mElement_F64;
     }
 
     public static Element ELEMENT(RenderScript rs) {
-        if(rs.mElement_ELEMENT == null) {
-            rs.mElement_ELEMENT = createUser(rs, DataType.RS_ELEMENT);
+        if (rs.mElement_ELEMENT == null) {
+            synchronized (rs) {
+                if (rs.mElement_ELEMENT == null) {
+                    rs.mElement_ELEMENT = createUser(rs, DataType.RS_ELEMENT);
+                }
+            }
         }
         return rs.mElement_ELEMENT;
     }
 
     public static Element TYPE(RenderScript rs) {
-        if(rs.mElement_TYPE == null) {
-            rs.mElement_TYPE = createUser(rs, DataType.RS_TYPE);
+        if (rs.mElement_TYPE == null) {
+            synchronized (rs) {
+                if (rs.mElement_TYPE == null) {
+                    rs.mElement_TYPE = createUser(rs, DataType.RS_TYPE);
+                }
+            }
         }
         return rs.mElement_TYPE;
     }
 
     public static Element ALLOCATION(RenderScript rs) {
-        if(rs.mElement_ALLOCATION == null) {
-            rs.mElement_ALLOCATION = createUser(rs, DataType.RS_ALLOCATION);
+        if (rs.mElement_ALLOCATION == null) {
+            synchronized (rs) {
+                if (rs.mElement_ALLOCATION == null) {
+                    rs.mElement_ALLOCATION = createUser(rs, DataType.RS_ALLOCATION);
+                }
+            }
         }
         return rs.mElement_ALLOCATION;
     }
 
     public static Element SAMPLER(RenderScript rs) {
-        if(rs.mElement_SAMPLER == null) {
-            rs.mElement_SAMPLER = createUser(rs, DataType.RS_SAMPLER);
+        if (rs.mElement_SAMPLER == null) {
+            synchronized (rs) {
+                if (rs.mElement_SAMPLER == null) {
+                    rs.mElement_SAMPLER = createUser(rs, DataType.RS_SAMPLER);
+                }
+            }
         }
         return rs.mElement_SAMPLER;
     }
 
     public static Element SCRIPT(RenderScript rs) {
-        if(rs.mElement_SCRIPT == null) {
-            rs.mElement_SCRIPT = createUser(rs, DataType.RS_SCRIPT);
+        if (rs.mElement_SCRIPT == null) {
+            synchronized (rs) {
+                if (rs.mElement_SCRIPT == null) {
+                    rs.mElement_SCRIPT = createUser(rs, DataType.RS_SCRIPT);
+                }
+            }
         }
         return rs.mElement_SCRIPT;
     }
 
     public static Element MESH(RenderScript rs) {
-        if(rs.mElement_MESH == null) {
-            rs.mElement_MESH = createUser(rs, DataType.RS_MESH);
+        if (rs.mElement_MESH == null) {
+            synchronized (rs) {
+                if (rs.mElement_MESH == null) {
+                    rs.mElement_MESH = createUser(rs, DataType.RS_MESH);
+                }
+            }
         }
         return rs.mElement_MESH;
     }
 
     public static Element PROGRAM_FRAGMENT(RenderScript rs) {
-        if(rs.mElement_PROGRAM_FRAGMENT == null) {
-            rs.mElement_PROGRAM_FRAGMENT = createUser(rs, DataType.RS_PROGRAM_FRAGMENT);
+        if (rs.mElement_PROGRAM_FRAGMENT == null) {
+            synchronized (rs) {
+                if (rs.mElement_PROGRAM_FRAGMENT == null) {
+                    rs.mElement_PROGRAM_FRAGMENT = createUser(rs, DataType.RS_PROGRAM_FRAGMENT);
+                }
+            }
         }
         return rs.mElement_PROGRAM_FRAGMENT;
     }
 
     public static Element PROGRAM_VERTEX(RenderScript rs) {
-        if(rs.mElement_PROGRAM_VERTEX == null) {
-            rs.mElement_PROGRAM_VERTEX = createUser(rs, DataType.RS_PROGRAM_VERTEX);
+        if (rs.mElement_PROGRAM_VERTEX == null) {
+            synchronized (rs) {
+                if (rs.mElement_PROGRAM_VERTEX == null) {
+                    rs.mElement_PROGRAM_VERTEX = createUser(rs, DataType.RS_PROGRAM_VERTEX);
+                }
+            }
         }
         return rs.mElement_PROGRAM_VERTEX;
     }
 
     public static Element PROGRAM_RASTER(RenderScript rs) {
-        if(rs.mElement_PROGRAM_RASTER == null) {
-            rs.mElement_PROGRAM_RASTER = createUser(rs, DataType.RS_PROGRAM_RASTER);
+        if (rs.mElement_PROGRAM_RASTER == null) {
+            synchronized (rs) {
+                if (rs.mElement_PROGRAM_RASTER == null) {
+                    rs.mElement_PROGRAM_RASTER = createUser(rs, DataType.RS_PROGRAM_RASTER);
+                }
+            }
         }
         return rs.mElement_PROGRAM_RASTER;
     }
 
     public static Element PROGRAM_STORE(RenderScript rs) {
-        if(rs.mElement_PROGRAM_STORE == null) {
-            rs.mElement_PROGRAM_STORE = createUser(rs, DataType.RS_PROGRAM_STORE);
+        if (rs.mElement_PROGRAM_STORE == null) {
+            synchronized (rs) {
+                if (rs.mElement_PROGRAM_STORE == null) {
+                    rs.mElement_PROGRAM_STORE = createUser(rs, DataType.RS_PROGRAM_STORE);
+                }
+            }
         }
         return rs.mElement_PROGRAM_STORE;
     }
 
     public static Element FONT(RenderScript rs) {
-        if(rs.mElement_FONT == null) {
-            rs.mElement_FONT = createUser(rs, DataType.RS_FONT);
+        if (rs.mElement_FONT == null) {
+            synchronized (rs) {
+                if (rs.mElement_FONT == null) {
+                    rs.mElement_FONT = createUser(rs, DataType.RS_FONT);
+                }
+            }
         }
         return rs.mElement_FONT;
     }
 
-
     public static Element A_8(RenderScript rs) {
-        if(rs.mElement_A_8 == null) {
-            rs.mElement_A_8 = createPixel(rs, DataType.UNSIGNED_8, DataKind.PIXEL_A);
+        if (rs.mElement_A_8 == null) {
+            synchronized (rs) {
+                if (rs.mElement_A_8 == null) {
+                    rs.mElement_A_8 = createPixel(rs, DataType.UNSIGNED_8, DataKind.PIXEL_A);
+                }
+            }
         }
         return rs.mElement_A_8;
     }
 
     public static Element RGB_565(RenderScript rs) {
-        if(rs.mElement_RGB_565 == null) {
-            rs.mElement_RGB_565 = createPixel(rs, DataType.UNSIGNED_5_6_5, DataKind.PIXEL_RGB);
+        if (rs.mElement_RGB_565 == null) {
+            synchronized (rs) {
+                if (rs.mElement_RGB_565 == null) {
+                    rs.mElement_RGB_565 = createPixel(rs, DataType.UNSIGNED_5_6_5, DataKind.PIXEL_RGB);
+                }
+            }
         }
         return rs.mElement_RGB_565;
     }
 
     public static Element RGB_888(RenderScript rs) {
-        if(rs.mElement_RGB_888 == null) {
-            rs.mElement_RGB_888 = createPixel(rs, DataType.UNSIGNED_8, DataKind.PIXEL_RGB);
+        if (rs.mElement_RGB_888 == null) {
+            synchronized (rs) {
+                if (rs.mElement_RGB_888 == null) {
+                    rs.mElement_RGB_888 = createPixel(rs, DataType.UNSIGNED_8, DataKind.PIXEL_RGB);
+                }
+            }
         }
         return rs.mElement_RGB_888;
     }
 
     public static Element RGBA_5551(RenderScript rs) {
-        if(rs.mElement_RGBA_5551 == null) {
-            rs.mElement_RGBA_5551 = createPixel(rs, DataType.UNSIGNED_5_5_5_1, DataKind.PIXEL_RGBA);
+        if (rs.mElement_RGBA_5551 == null) {
+            synchronized (rs) {
+                if (rs.mElement_RGBA_5551 == null) {
+                    rs.mElement_RGBA_5551 = createPixel(rs, DataType.UNSIGNED_5_5_5_1, DataKind.PIXEL_RGBA);
+                }
+            }
         }
         return rs.mElement_RGBA_5551;
     }
 
     public static Element RGBA_4444(RenderScript rs) {
-        if(rs.mElement_RGBA_4444 == null) {
-            rs.mElement_RGBA_4444 = createPixel(rs, DataType.UNSIGNED_4_4_4_4, DataKind.PIXEL_RGBA);
+        if (rs.mElement_RGBA_4444 == null) {
+            synchronized (rs) {
+                if (rs.mElement_RGBA_4444 == null) {
+                    rs.mElement_RGBA_4444 = createPixel(rs, DataType.UNSIGNED_4_4_4_4, DataKind.PIXEL_RGBA);
+                }
+            }
         }
         return rs.mElement_RGBA_4444;
     }
 
     public static Element RGBA_8888(RenderScript rs) {
-        if(rs.mElement_RGBA_8888 == null) {
-            rs.mElement_RGBA_8888 = createPixel(rs, DataType.UNSIGNED_8, DataKind.PIXEL_RGBA);
+        if (rs.mElement_RGBA_8888 == null) {
+            synchronized (rs) {
+                if (rs.mElement_RGBA_8888 == null) {
+                    rs.mElement_RGBA_8888 = createPixel(rs, DataType.UNSIGNED_8, DataKind.PIXEL_RGBA);
+                }
+            }
         }
         return rs.mElement_RGBA_8888;
     }
 
     public static Element F16_2(RenderScript rs) {
-        if(rs.mElement_HALF_2 == null) {
-            rs.mElement_HALF_2 = createVector(rs, DataType.FLOAT_16, 2);
+        if (rs.mElement_HALF_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_HALF_2 == null) {
+                    rs.mElement_HALF_2 = createVector(rs, DataType.FLOAT_16, 2);
+                }
+            }
         }
         return rs.mElement_HALF_2;
     }
 
     public static Element F16_3(RenderScript rs) {
-        if(rs.mElement_HALF_3 == null) {
-            rs.mElement_HALF_3 = createVector(rs, DataType.FLOAT_16, 3);
+        if (rs.mElement_HALF_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_HALF_3 == null) {
+                    rs.mElement_HALF_3 = createVector(rs, DataType.FLOAT_16, 3);
+                }
+            }
         }
         return rs.mElement_HALF_3;
     }
 
     public static Element F16_4(RenderScript rs) {
-        if(rs.mElement_HALF_4 == null) {
-            rs.mElement_HALF_4 = createVector(rs, DataType.FLOAT_16, 4);
+        if (rs.mElement_HALF_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_HALF_4 == null) {
+                    rs.mElement_HALF_4 = createVector(rs, DataType.FLOAT_16, 4);
+                }
+            }
         }
         return rs.mElement_HALF_4;
     }
 
     public static Element F32_2(RenderScript rs) {
-        if(rs.mElement_FLOAT_2 == null) {
-            rs.mElement_FLOAT_2 = createVector(rs, DataType.FLOAT_32, 2);
+        if (rs.mElement_FLOAT_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_FLOAT_2 == null) {
+                    rs.mElement_FLOAT_2 = createVector(rs, DataType.FLOAT_32, 2);
+                }
+            }
         }
         return rs.mElement_FLOAT_2;
     }
 
     public static Element F32_3(RenderScript rs) {
-        if(rs.mElement_FLOAT_3 == null) {
-            rs.mElement_FLOAT_3 = createVector(rs, DataType.FLOAT_32, 3);
+        if (rs.mElement_FLOAT_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_FLOAT_3 == null) {
+                    rs.mElement_FLOAT_3 = createVector(rs, DataType.FLOAT_32, 3);
+                }
+            }
         }
         return rs.mElement_FLOAT_3;
     }
 
     public static Element F32_4(RenderScript rs) {
-        if(rs.mElement_FLOAT_4 == null) {
-            rs.mElement_FLOAT_4 = createVector(rs, DataType.FLOAT_32, 4);
+        if (rs.mElement_FLOAT_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_FLOAT_4 == null) {
+                    rs.mElement_FLOAT_4 = createVector(rs, DataType.FLOAT_32, 4);
+                }
+            }
         }
         return rs.mElement_FLOAT_4;
     }
 
     public static Element F64_2(RenderScript rs) {
-        if(rs.mElement_DOUBLE_2 == null) {
-            rs.mElement_DOUBLE_2 = createVector(rs, DataType.FLOAT_64, 2);
+        if (rs.mElement_DOUBLE_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_DOUBLE_2 == null) {
+                    rs.mElement_DOUBLE_2 = createVector(rs, DataType.FLOAT_64, 2);
+                }
+            }
         }
         return rs.mElement_DOUBLE_2;
     }
 
     public static Element F64_3(RenderScript rs) {
-        if(rs.mElement_DOUBLE_3 == null) {
-            rs.mElement_DOUBLE_3 = createVector(rs, DataType.FLOAT_64, 3);
+        if (rs.mElement_DOUBLE_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_DOUBLE_3 == null) {
+                    rs.mElement_DOUBLE_3 = createVector(rs, DataType.FLOAT_64, 3);
+                }
+            }
         }
         return rs.mElement_DOUBLE_3;
     }
 
     public static Element F64_4(RenderScript rs) {
-        if(rs.mElement_DOUBLE_4 == null) {
-            rs.mElement_DOUBLE_4 = createVector(rs, DataType.FLOAT_64, 4);
+        if (rs.mElement_DOUBLE_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_DOUBLE_4 == null) {
+                    rs.mElement_DOUBLE_4 = createVector(rs, DataType.FLOAT_64, 4);
+                }
+            }
         }
         return rs.mElement_DOUBLE_4;
     }
 
     public static Element U8_2(RenderScript rs) {
-        if(rs.mElement_UCHAR_2 == null) {
-            rs.mElement_UCHAR_2 = createVector(rs, DataType.UNSIGNED_8, 2);
+        if (rs.mElement_UCHAR_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_UCHAR_2 == null) {
+                    rs.mElement_UCHAR_2 = createVector(rs, DataType.UNSIGNED_8, 2);
+                }
+            }
         }
         return rs.mElement_UCHAR_2;
     }
 
     public static Element U8_3(RenderScript rs) {
-        if(rs.mElement_UCHAR_3 == null) {
-            rs.mElement_UCHAR_3 = createVector(rs, DataType.UNSIGNED_8, 3);
+        if (rs.mElement_UCHAR_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_UCHAR_3 == null) {
+                    rs.mElement_UCHAR_3 = createVector(rs, DataType.UNSIGNED_8, 3);
+                }
+            }
         }
         return rs.mElement_UCHAR_3;
     }
 
     public static Element U8_4(RenderScript rs) {
-        if(rs.mElement_UCHAR_4 == null) {
-            rs.mElement_UCHAR_4 = createVector(rs, DataType.UNSIGNED_8, 4);
+        if (rs.mElement_UCHAR_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_UCHAR_4 == null) {
+                    rs.mElement_UCHAR_4 = createVector(rs, DataType.UNSIGNED_8, 4);
+                }
+            }
         }
         return rs.mElement_UCHAR_4;
     }
 
     public static Element I8_2(RenderScript rs) {
-        if(rs.mElement_CHAR_2 == null) {
-            rs.mElement_CHAR_2 = createVector(rs, DataType.SIGNED_8, 2);
+        if (rs.mElement_CHAR_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_CHAR_2 == null) {
+                    rs.mElement_CHAR_2 = createVector(rs, DataType.SIGNED_8, 2);
+                }
+            }
         }
         return rs.mElement_CHAR_2;
     }
 
     public static Element I8_3(RenderScript rs) {
-        if(rs.mElement_CHAR_3 == null) {
-            rs.mElement_CHAR_3 = createVector(rs, DataType.SIGNED_8, 3);
+        if (rs.mElement_CHAR_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_CHAR_3 == null) {
+                    rs.mElement_CHAR_3 = createVector(rs, DataType.SIGNED_8, 3);
+                }
+            }
         }
         return rs.mElement_CHAR_3;
     }
 
     public static Element I8_4(RenderScript rs) {
-        if(rs.mElement_CHAR_4 == null) {
-            rs.mElement_CHAR_4 = createVector(rs, DataType.SIGNED_8, 4);
+        if (rs.mElement_CHAR_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_CHAR_4 == null) {
+                    rs.mElement_CHAR_4 = createVector(rs, DataType.SIGNED_8, 4);
+                }
+            }
         }
         return rs.mElement_CHAR_4;
     }
 
     public static Element U16_2(RenderScript rs) {
-        if(rs.mElement_USHORT_2 == null) {
-            rs.mElement_USHORT_2 = createVector(rs, DataType.UNSIGNED_16, 2);
+        if (rs.mElement_USHORT_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_USHORT_2 == null) {
+                    rs.mElement_USHORT_2 = createVector(rs, DataType.UNSIGNED_16, 2);
+                }
+            }
         }
         return rs.mElement_USHORT_2;
     }
 
     public static Element U16_3(RenderScript rs) {
-        if(rs.mElement_USHORT_3 == null) {
-            rs.mElement_USHORT_3 = createVector(rs, DataType.UNSIGNED_16, 3);
+        if (rs.mElement_USHORT_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_USHORT_3 == null) {
+                    rs.mElement_USHORT_3 = createVector(rs, DataType.UNSIGNED_16, 3);
+                }
+            }
         }
         return rs.mElement_USHORT_3;
     }
 
     public static Element U16_4(RenderScript rs) {
-        if(rs.mElement_USHORT_4 == null) {
-            rs.mElement_USHORT_4 = createVector(rs, DataType.UNSIGNED_16, 4);
+        if (rs.mElement_USHORT_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_USHORT_4 == null) {
+                    rs.mElement_USHORT_4 = createVector(rs, DataType.UNSIGNED_16, 4);
+                }
+            }
         }
         return rs.mElement_USHORT_4;
     }
 
     public static Element I16_2(RenderScript rs) {
-        if(rs.mElement_SHORT_2 == null) {
-            rs.mElement_SHORT_2 = createVector(rs, DataType.SIGNED_16, 2);
+        if (rs.mElement_SHORT_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_SHORT_2 == null) {
+                    rs.mElement_SHORT_2 = createVector(rs, DataType.SIGNED_16, 2);
+                }
+            }
         }
         return rs.mElement_SHORT_2;
     }
 
     public static Element I16_3(RenderScript rs) {
-        if(rs.mElement_SHORT_3 == null) {
-            rs.mElement_SHORT_3 = createVector(rs, DataType.SIGNED_16, 3);
+        if (rs.mElement_SHORT_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_SHORT_3 == null) {
+                    rs.mElement_SHORT_3 = createVector(rs, DataType.SIGNED_16, 3);
+                }
+            }
         }
         return rs.mElement_SHORT_3;
     }
 
     public static Element I16_4(RenderScript rs) {
-        if(rs.mElement_SHORT_4 == null) {
-            rs.mElement_SHORT_4 = createVector(rs, DataType.SIGNED_16, 4);
+        if (rs.mElement_SHORT_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_SHORT_4 == null) {
+                    rs.mElement_SHORT_4 = createVector(rs, DataType.SIGNED_16, 4);
+                }
+            }
         }
         return rs.mElement_SHORT_4;
     }
 
     public static Element U32_2(RenderScript rs) {
-        if(rs.mElement_UINT_2 == null) {
-            rs.mElement_UINT_2 = createVector(rs, DataType.UNSIGNED_32, 2);
+        if (rs.mElement_UINT_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_UINT_2 == null) {
+                    rs.mElement_UINT_2 = createVector(rs, DataType.UNSIGNED_32, 2);
+                }
+            }
         }
         return rs.mElement_UINT_2;
     }
 
     public static Element U32_3(RenderScript rs) {
-        if(rs.mElement_UINT_3 == null) {
-            rs.mElement_UINT_3 = createVector(rs, DataType.UNSIGNED_32, 3);
+        if (rs.mElement_UINT_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_UINT_3 == null) {
+                    rs.mElement_UINT_3 = createVector(rs, DataType.UNSIGNED_32, 3);
+                }
+            }
         }
         return rs.mElement_UINT_3;
     }
 
     public static Element U32_4(RenderScript rs) {
-        if(rs.mElement_UINT_4 == null) {
-            rs.mElement_UINT_4 = createVector(rs, DataType.UNSIGNED_32, 4);
+        if (rs.mElement_UINT_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_UINT_4 == null) {
+                    rs.mElement_UINT_4 = createVector(rs, DataType.UNSIGNED_32, 4);
+                }
+            }
         }
         return rs.mElement_UINT_4;
     }
 
     public static Element I32_2(RenderScript rs) {
-        if(rs.mElement_INT_2 == null) {
-            rs.mElement_INT_2 = createVector(rs, DataType.SIGNED_32, 2);
+        if (rs.mElement_INT_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_INT_2 == null) {
+                    rs.mElement_INT_2 = createVector(rs, DataType.SIGNED_32, 2);
+                }
+            }
         }
         return rs.mElement_INT_2;
     }
 
     public static Element I32_3(RenderScript rs) {
-        if(rs.mElement_INT_3 == null) {
-            rs.mElement_INT_3 = createVector(rs, DataType.SIGNED_32, 3);
+        if (rs.mElement_INT_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_INT_3 == null) {
+                    rs.mElement_INT_3 = createVector(rs, DataType.SIGNED_32, 3);
+                }
+            }
         }
         return rs.mElement_INT_3;
     }
 
     public static Element I32_4(RenderScript rs) {
-        if(rs.mElement_INT_4 == null) {
-            rs.mElement_INT_4 = createVector(rs, DataType.SIGNED_32, 4);
+        if (rs.mElement_INT_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_INT_4 == null) {
+                    rs.mElement_INT_4 = createVector(rs, DataType.SIGNED_32, 4);
+                }
+            }
         }
         return rs.mElement_INT_4;
     }
 
     public static Element U64_2(RenderScript rs) {
-        if(rs.mElement_ULONG_2 == null) {
-            rs.mElement_ULONG_2 = createVector(rs, DataType.UNSIGNED_64, 2);
+        if (rs.mElement_ULONG_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_ULONG_2 == null) {
+                    rs.mElement_ULONG_2 = createVector(rs, DataType.UNSIGNED_64, 2);
+                }
+            }
         }
         return rs.mElement_ULONG_2;
     }
 
     public static Element U64_3(RenderScript rs) {
-        if(rs.mElement_ULONG_3 == null) {
-            rs.mElement_ULONG_3 = createVector(rs, DataType.UNSIGNED_64, 3);
+        if (rs.mElement_ULONG_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_ULONG_3 == null) {
+                    rs.mElement_ULONG_3 = createVector(rs, DataType.UNSIGNED_64, 3);
+                }
+            }
         }
         return rs.mElement_ULONG_3;
     }
 
     public static Element U64_4(RenderScript rs) {
-        if(rs.mElement_ULONG_4 == null) {
-            rs.mElement_ULONG_4 = createVector(rs, DataType.UNSIGNED_64, 4);
+        if (rs.mElement_ULONG_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_ULONG_4 == null) {
+                    rs.mElement_ULONG_4 = createVector(rs, DataType.UNSIGNED_64, 4);
+                }
+            }
         }
         return rs.mElement_ULONG_4;
     }
 
     public static Element I64_2(RenderScript rs) {
-        if(rs.mElement_LONG_2 == null) {
-            rs.mElement_LONG_2 = createVector(rs, DataType.SIGNED_64, 2);
+        if (rs.mElement_LONG_2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_LONG_2 == null) {
+                    rs.mElement_LONG_2 = createVector(rs, DataType.SIGNED_64, 2);
+                }
+            }
         }
         return rs.mElement_LONG_2;
     }
 
     public static Element I64_3(RenderScript rs) {
-        if(rs.mElement_LONG_3 == null) {
-            rs.mElement_LONG_3 = createVector(rs, DataType.SIGNED_64, 3);
+        if (rs.mElement_LONG_3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_LONG_3 == null) {
+                    rs.mElement_LONG_3 = createVector(rs, DataType.SIGNED_64, 3);
+                }
+            }
         }
         return rs.mElement_LONG_3;
     }
 
     public static Element I64_4(RenderScript rs) {
-        if(rs.mElement_LONG_4 == null) {
-            rs.mElement_LONG_4 = createVector(rs, DataType.SIGNED_64, 4);
+        if (rs.mElement_LONG_4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_LONG_4 == null) {
+                    rs.mElement_LONG_4 = createVector(rs, DataType.SIGNED_64, 4);
+                }
+            }
         }
         return rs.mElement_LONG_4;
     }
 
     public static Element YUV(RenderScript rs) {
         if (rs.mElement_YUV == null) {
-            rs.mElement_YUV = createPixel(rs, DataType.UNSIGNED_8, DataKind.PIXEL_YUV);
+            synchronized (rs) {
+                if (rs.mElement_YUV == null) {
+                    rs.mElement_YUV = createPixel(rs, DataType.UNSIGNED_8, DataKind.PIXEL_YUV);
+                }
+            }
         }
         return rs.mElement_YUV;
     }
 
     public static Element MATRIX_4X4(RenderScript rs) {
-        if(rs.mElement_MATRIX_4X4 == null) {
-            rs.mElement_MATRIX_4X4 = createUser(rs, DataType.MATRIX_4X4);
+        if (rs.mElement_MATRIX_4X4 == null) {
+            synchronized (rs) {
+                if (rs.mElement_MATRIX_4X4 == null) {
+                    rs.mElement_MATRIX_4X4 = createUser(rs, DataType.MATRIX_4X4);
+                }
+            }
         }
         return rs.mElement_MATRIX_4X4;
     }
@@ -780,15 +1035,23 @@
     }
 
     public static Element MATRIX_3X3(RenderScript rs) {
-        if(rs.mElement_MATRIX_3X3 == null) {
-            rs.mElement_MATRIX_3X3 = createUser(rs, DataType.MATRIX_3X3);
+        if (rs.mElement_MATRIX_3X3 == null) {
+            synchronized (rs) {
+                if (rs.mElement_MATRIX_3X3 == null) {
+                    rs.mElement_MATRIX_3X3 = createUser(rs, DataType.MATRIX_3X3);
+                }
+            }
         }
         return rs.mElement_MATRIX_3X3;
     }
 
     public static Element MATRIX_2X2(RenderScript rs) {
-        if(rs.mElement_MATRIX_2X2 == null) {
-            rs.mElement_MATRIX_2X2 = createUser(rs, DataType.MATRIX_2X2);
+        if (rs.mElement_MATRIX_2X2 == null) {
+            synchronized (rs) {
+                if (rs.mElement_MATRIX_2X2 == null) {
+                    rs.mElement_MATRIX_2X2 = createUser(rs, DataType.MATRIX_2X2);
+                }
+            }
         }
         return rs.mElement_MATRIX_2X2;
     }
diff --git a/rs/java/android/renderscript/RenderScript.java b/rs/java/android/renderscript/RenderScript.java
index 2650e5a..3d1370a 100644
--- a/rs/java/android/renderscript/RenderScript.java
+++ b/rs/java/android/renderscript/RenderScript.java
@@ -1037,97 +1037,97 @@
     @SuppressWarnings({"FieldCanBeLocal"})
     MessageThread mMessageThread;
 
-    Element mElement_U8;
-    Element mElement_I8;
-    Element mElement_U16;
-    Element mElement_I16;
-    Element mElement_U32;
-    Element mElement_I32;
-    Element mElement_U64;
-    Element mElement_I64;
-    Element mElement_F16;
-    Element mElement_F32;
-    Element mElement_F64;
-    Element mElement_BOOLEAN;
+    volatile Element mElement_U8;
+    volatile Element mElement_I8;
+    volatile Element mElement_U16;
+    volatile Element mElement_I16;
+    volatile Element mElement_U32;
+    volatile Element mElement_I32;
+    volatile Element mElement_U64;
+    volatile Element mElement_I64;
+    volatile Element mElement_F16;
+    volatile Element mElement_F32;
+    volatile Element mElement_F64;
+    volatile Element mElement_BOOLEAN;
 
-    Element mElement_ELEMENT;
-    Element mElement_TYPE;
-    Element mElement_ALLOCATION;
-    Element mElement_SAMPLER;
-    Element mElement_SCRIPT;
-    Element mElement_MESH;
-    Element mElement_PROGRAM_FRAGMENT;
-    Element mElement_PROGRAM_VERTEX;
-    Element mElement_PROGRAM_RASTER;
-    Element mElement_PROGRAM_STORE;
-    Element mElement_FONT;
+    volatile Element mElement_ELEMENT;
+    volatile Element mElement_TYPE;
+    volatile Element mElement_ALLOCATION;
+    volatile Element mElement_SAMPLER;
+    volatile Element mElement_SCRIPT;
+    volatile Element mElement_MESH;
+    volatile Element mElement_PROGRAM_FRAGMENT;
+    volatile Element mElement_PROGRAM_VERTEX;
+    volatile Element mElement_PROGRAM_RASTER;
+    volatile Element mElement_PROGRAM_STORE;
+    volatile Element mElement_FONT;
 
-    Element mElement_A_8;
-    Element mElement_RGB_565;
-    Element mElement_RGB_888;
-    Element mElement_RGBA_5551;
-    Element mElement_RGBA_4444;
-    Element mElement_RGBA_8888;
+    volatile Element mElement_A_8;
+    volatile Element mElement_RGB_565;
+    volatile Element mElement_RGB_888;
+    volatile Element mElement_RGBA_5551;
+    volatile Element mElement_RGBA_4444;
+    volatile Element mElement_RGBA_8888;
 
-    Element mElement_HALF_2;
-    Element mElement_HALF_3;
-    Element mElement_HALF_4;
+    volatile Element mElement_HALF_2;
+    volatile Element mElement_HALF_3;
+    volatile Element mElement_HALF_4;
 
-    Element mElement_FLOAT_2;
-    Element mElement_FLOAT_3;
-    Element mElement_FLOAT_4;
+    volatile Element mElement_FLOAT_2;
+    volatile Element mElement_FLOAT_3;
+    volatile Element mElement_FLOAT_4;
 
-    Element mElement_DOUBLE_2;
-    Element mElement_DOUBLE_3;
-    Element mElement_DOUBLE_4;
+    volatile Element mElement_DOUBLE_2;
+    volatile Element mElement_DOUBLE_3;
+    volatile Element mElement_DOUBLE_4;
 
-    Element mElement_UCHAR_2;
-    Element mElement_UCHAR_3;
-    Element mElement_UCHAR_4;
+    volatile Element mElement_UCHAR_2;
+    volatile Element mElement_UCHAR_3;
+    volatile Element mElement_UCHAR_4;
 
-    Element mElement_CHAR_2;
-    Element mElement_CHAR_3;
-    Element mElement_CHAR_4;
+    volatile Element mElement_CHAR_2;
+    volatile Element mElement_CHAR_3;
+    volatile Element mElement_CHAR_4;
 
-    Element mElement_USHORT_2;
-    Element mElement_USHORT_3;
-    Element mElement_USHORT_4;
+    volatile Element mElement_USHORT_2;
+    volatile Element mElement_USHORT_3;
+    volatile Element mElement_USHORT_4;
 
-    Element mElement_SHORT_2;
-    Element mElement_SHORT_3;
-    Element mElement_SHORT_4;
+    volatile Element mElement_SHORT_2;
+    volatile Element mElement_SHORT_3;
+    volatile Element mElement_SHORT_4;
 
-    Element mElement_UINT_2;
-    Element mElement_UINT_3;
-    Element mElement_UINT_4;
+    volatile Element mElement_UINT_2;
+    volatile Element mElement_UINT_3;
+    volatile Element mElement_UINT_4;
 
-    Element mElement_INT_2;
-    Element mElement_INT_3;
-    Element mElement_INT_4;
+    volatile Element mElement_INT_2;
+    volatile Element mElement_INT_3;
+    volatile Element mElement_INT_4;
 
-    Element mElement_ULONG_2;
-    Element mElement_ULONG_3;
-    Element mElement_ULONG_4;
+    volatile Element mElement_ULONG_2;
+    volatile Element mElement_ULONG_3;
+    volatile Element mElement_ULONG_4;
 
-    Element mElement_LONG_2;
-    Element mElement_LONG_3;
-    Element mElement_LONG_4;
+    volatile Element mElement_LONG_2;
+    volatile Element mElement_LONG_3;
+    volatile Element mElement_LONG_4;
 
-    Element mElement_YUV;
+    volatile Element mElement_YUV;
 
-    Element mElement_MATRIX_4X4;
-    Element mElement_MATRIX_3X3;
-    Element mElement_MATRIX_2X2;
+    volatile Element mElement_MATRIX_4X4;
+    volatile Element mElement_MATRIX_3X3;
+    volatile Element mElement_MATRIX_2X2;
 
-    Sampler mSampler_CLAMP_NEAREST;
-    Sampler mSampler_CLAMP_LINEAR;
-    Sampler mSampler_CLAMP_LINEAR_MIP_LINEAR;
-    Sampler mSampler_WRAP_NEAREST;
-    Sampler mSampler_WRAP_LINEAR;
-    Sampler mSampler_WRAP_LINEAR_MIP_LINEAR;
-    Sampler mSampler_MIRRORED_REPEAT_NEAREST;
-    Sampler mSampler_MIRRORED_REPEAT_LINEAR;
-    Sampler mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR;
+    volatile Sampler mSampler_CLAMP_NEAREST;
+    volatile Sampler mSampler_CLAMP_LINEAR;
+    volatile Sampler mSampler_CLAMP_LINEAR_MIP_LINEAR;
+    volatile Sampler mSampler_WRAP_NEAREST;
+    volatile Sampler mSampler_WRAP_LINEAR;
+    volatile Sampler mSampler_WRAP_LINEAR_MIP_LINEAR;
+    volatile Sampler mSampler_MIRRORED_REPEAT_NEAREST;
+    volatile Sampler mSampler_MIRRORED_REPEAT_LINEAR;
+    volatile Sampler mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR;
 
     ProgramStore mProgramStore_BLEND_NONE_DEPTH_TEST;
     ProgramStore mProgramStore_BLEND_NONE_DEPTH_NO_DEPTH;
diff --git a/rs/java/android/renderscript/Sampler.java b/rs/java/android/renderscript/Sampler.java
index 5c4bae9..70e88bc 100644
--- a/rs/java/android/renderscript/Sampler.java
+++ b/rs/java/android/renderscript/Sampler.java
@@ -98,13 +98,17 @@
      * @return Sampler
      */
     public static Sampler CLAMP_NEAREST(RenderScript rs) {
-        if(rs.mSampler_CLAMP_NEAREST == null) {
-            Builder b = new Builder(rs);
-            b.setMinification(Value.NEAREST);
-            b.setMagnification(Value.NEAREST);
-            b.setWrapS(Value.CLAMP);
-            b.setWrapT(Value.CLAMP);
-            rs.mSampler_CLAMP_NEAREST = b.create();
+        if (rs.mSampler_CLAMP_NEAREST == null) {
+            synchronized (rs) {
+                if (rs.mSampler_CLAMP_NEAREST == null) {
+                    Builder b = new Builder(rs);
+                    b.setMinification(Value.NEAREST);
+                    b.setMagnification(Value.NEAREST);
+                    b.setWrapS(Value.CLAMP);
+                    b.setWrapT(Value.CLAMP);
+                    rs.mSampler_CLAMP_NEAREST = b.create();
+                }
+            }
         }
         return rs.mSampler_CLAMP_NEAREST;
     }
@@ -118,13 +122,17 @@
      * @return Sampler
      */
     public static Sampler CLAMP_LINEAR(RenderScript rs) {
-        if(rs.mSampler_CLAMP_LINEAR == null) {
-            Builder b = new Builder(rs);
-            b.setMinification(Value.LINEAR);
-            b.setMagnification(Value.LINEAR);
-            b.setWrapS(Value.CLAMP);
-            b.setWrapT(Value.CLAMP);
-            rs.mSampler_CLAMP_LINEAR = b.create();
+        if (rs.mSampler_CLAMP_LINEAR == null) {
+            synchronized (rs) {
+                if (rs.mSampler_CLAMP_LINEAR == null) {
+                    Builder b = new Builder(rs);
+                    b.setMinification(Value.LINEAR);
+                    b.setMagnification(Value.LINEAR);
+                    b.setWrapS(Value.CLAMP);
+                    b.setWrapT(Value.CLAMP);
+                    rs.mSampler_CLAMP_LINEAR = b.create();
+                }
+            }
         }
         return rs.mSampler_CLAMP_LINEAR;
     }
@@ -138,13 +146,17 @@
      * @return Sampler
      */
     public static Sampler CLAMP_LINEAR_MIP_LINEAR(RenderScript rs) {
-        if(rs.mSampler_CLAMP_LINEAR_MIP_LINEAR == null) {
-            Builder b = new Builder(rs);
-            b.setMinification(Value.LINEAR_MIP_LINEAR);
-            b.setMagnification(Value.LINEAR);
-            b.setWrapS(Value.CLAMP);
-            b.setWrapT(Value.CLAMP);
-            rs.mSampler_CLAMP_LINEAR_MIP_LINEAR = b.create();
+        if (rs.mSampler_CLAMP_LINEAR_MIP_LINEAR == null) {
+            synchronized (rs) {
+                if (rs.mSampler_CLAMP_LINEAR_MIP_LINEAR == null) {
+                    Builder b = new Builder(rs);
+                    b.setMinification(Value.LINEAR_MIP_LINEAR);
+                    b.setMagnification(Value.LINEAR);
+                    b.setWrapS(Value.CLAMP);
+                    b.setWrapT(Value.CLAMP);
+                    rs.mSampler_CLAMP_LINEAR_MIP_LINEAR = b.create();
+                }
+            }
         }
         return rs.mSampler_CLAMP_LINEAR_MIP_LINEAR;
     }
@@ -158,13 +170,17 @@
      * @return Sampler
      */
     public static Sampler WRAP_NEAREST(RenderScript rs) {
-        if(rs.mSampler_WRAP_NEAREST == null) {
-            Builder b = new Builder(rs);
-            b.setMinification(Value.NEAREST);
-            b.setMagnification(Value.NEAREST);
-            b.setWrapS(Value.WRAP);
-            b.setWrapT(Value.WRAP);
-            rs.mSampler_WRAP_NEAREST = b.create();
+        if (rs.mSampler_WRAP_NEAREST == null) {
+            synchronized (rs) {
+                if (rs.mSampler_WRAP_NEAREST == null) {
+                    Builder b = new Builder(rs);
+                    b.setMinification(Value.NEAREST);
+                    b.setMagnification(Value.NEAREST);
+                    b.setWrapS(Value.WRAP);
+                    b.setWrapT(Value.WRAP);
+                    rs.mSampler_WRAP_NEAREST = b.create();
+                }
+            }
         }
         return rs.mSampler_WRAP_NEAREST;
     }
@@ -178,13 +194,17 @@
      * @return Sampler
      */
     public static Sampler WRAP_LINEAR(RenderScript rs) {
-        if(rs.mSampler_WRAP_LINEAR == null) {
-            Builder b = new Builder(rs);
-            b.setMinification(Value.LINEAR);
-            b.setMagnification(Value.LINEAR);
-            b.setWrapS(Value.WRAP);
-            b.setWrapT(Value.WRAP);
-            rs.mSampler_WRAP_LINEAR = b.create();
+        if (rs.mSampler_WRAP_LINEAR == null) {
+            synchronized (rs) {
+                if (rs.mSampler_WRAP_LINEAR == null) {
+                    Builder b = new Builder(rs);
+                    b.setMinification(Value.LINEAR);
+                    b.setMagnification(Value.LINEAR);
+                    b.setWrapS(Value.WRAP);
+                    b.setWrapT(Value.WRAP);
+                    rs.mSampler_WRAP_LINEAR = b.create();
+                }
+            }
         }
         return rs.mSampler_WRAP_LINEAR;
     }
@@ -198,13 +218,17 @@
      * @return Sampler
      */
     public static Sampler WRAP_LINEAR_MIP_LINEAR(RenderScript rs) {
-        if(rs.mSampler_WRAP_LINEAR_MIP_LINEAR == null) {
-            Builder b = new Builder(rs);
-            b.setMinification(Value.LINEAR_MIP_LINEAR);
-            b.setMagnification(Value.LINEAR);
-            b.setWrapS(Value.WRAP);
-            b.setWrapT(Value.WRAP);
-            rs.mSampler_WRAP_LINEAR_MIP_LINEAR = b.create();
+        if (rs.mSampler_WRAP_LINEAR_MIP_LINEAR == null) {
+            synchronized (rs) {
+                if (rs.mSampler_WRAP_LINEAR_MIP_LINEAR == null) {
+                    Builder b = new Builder(rs);
+                    b.setMinification(Value.LINEAR_MIP_LINEAR);
+                    b.setMagnification(Value.LINEAR);
+                    b.setWrapS(Value.WRAP);
+                    b.setWrapT(Value.WRAP);
+                    rs.mSampler_WRAP_LINEAR_MIP_LINEAR = b.create();
+                }
+            }
         }
         return rs.mSampler_WRAP_LINEAR_MIP_LINEAR;
     }
@@ -218,13 +242,17 @@
      * @return Sampler
      */
     public static Sampler MIRRORED_REPEAT_NEAREST(RenderScript rs) {
-        if(rs.mSampler_MIRRORED_REPEAT_NEAREST == null) {
-            Builder b = new Builder(rs);
-            b.setMinification(Value.NEAREST);
-            b.setMagnification(Value.NEAREST);
-            b.setWrapS(Value.MIRRORED_REPEAT);
-            b.setWrapT(Value.MIRRORED_REPEAT);
-            rs.mSampler_MIRRORED_REPEAT_NEAREST = b.create();
+        if (rs.mSampler_MIRRORED_REPEAT_NEAREST == null) {
+            synchronized (rs) {
+                if (rs.mSampler_MIRRORED_REPEAT_NEAREST == null) {
+                    Builder b = new Builder(rs);
+                    b.setMinification(Value.NEAREST);
+                    b.setMagnification(Value.NEAREST);
+                    b.setWrapS(Value.MIRRORED_REPEAT);
+                    b.setWrapT(Value.MIRRORED_REPEAT);
+                    rs.mSampler_MIRRORED_REPEAT_NEAREST = b.create();
+                }
+            }
         }
         return rs.mSampler_MIRRORED_REPEAT_NEAREST;
     }
@@ -238,13 +266,17 @@
      * @return Sampler
      */
     public static Sampler MIRRORED_REPEAT_LINEAR(RenderScript rs) {
-        if(rs.mSampler_MIRRORED_REPEAT_LINEAR == null) {
-            Builder b = new Builder(rs);
-            b.setMinification(Value.LINEAR);
-            b.setMagnification(Value.LINEAR);
-            b.setWrapS(Value.MIRRORED_REPEAT);
-            b.setWrapT(Value.MIRRORED_REPEAT);
-            rs.mSampler_MIRRORED_REPEAT_LINEAR = b.create();
+        if (rs.mSampler_MIRRORED_REPEAT_LINEAR == null) {
+            synchronized (rs) {
+                if (rs.mSampler_MIRRORED_REPEAT_LINEAR == null) {
+                    Builder b = new Builder(rs);
+                    b.setMinification(Value.LINEAR);
+                    b.setMagnification(Value.LINEAR);
+                    b.setWrapS(Value.MIRRORED_REPEAT);
+                    b.setWrapT(Value.MIRRORED_REPEAT);
+                    rs.mSampler_MIRRORED_REPEAT_LINEAR = b.create();
+                }
+            }
         }
         return rs.mSampler_MIRRORED_REPEAT_LINEAR;
     }
@@ -258,13 +290,17 @@
      * @return Sampler
      */
     public static Sampler MIRRORED_REPEAT_LINEAR_MIP_LINEAR(RenderScript rs) {
-        if(rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR == null) {
-            Builder b = new Builder(rs);
-            b.setMinification(Value.LINEAR_MIP_LINEAR);
-            b.setMagnification(Value.LINEAR);
-            b.setWrapS(Value.MIRRORED_REPEAT);
-            b.setWrapT(Value.MIRRORED_REPEAT);
-            rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR = b.create();
+        if (rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR == null) {
+            synchronized (rs) {
+                if (rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR == null) {
+                    Builder b = new Builder(rs);
+                    b.setMinification(Value.LINEAR_MIP_LINEAR);
+                    b.setMagnification(Value.LINEAR);
+                    b.setWrapS(Value.MIRRORED_REPEAT);
+                    b.setWrapT(Value.MIRRORED_REPEAT);
+                    rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR = b.create();
+                }
+            }
         }
         return rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR;
     }
diff --git a/rs/java/android/renderscript/ScriptGroup.java b/rs/java/android/renderscript/ScriptGroup.java
index 35ae8b4..e0bdbfc 100644
--- a/rs/java/android/renderscript/ScriptGroup.java
+++ b/rs/java/android/renderscript/ScriptGroup.java
@@ -1066,15 +1066,12 @@
      */
     public void destroy() {
         super.destroy();
-        for(Closure c : mClosures) {
-            c.destroy();
+        // ScriptGroup created using the old Builder class does not
+        // initialize the field mClosures
+        if (mClosures != null) {
+            for (Closure c : mClosures) {
+                c.destroy();
+            }
         }
     }
-
-    protected void finalize() throws Throwable {
-        // Clear out the list mClosures to avoid double-destroying the closures,
-        // in case their finalizers race ahead.
-        mClosures.clear();
-        super.finalize();
-    }
 }
diff --git a/services/accessibility/java/com/android/server/accessibility/AccessibilityInputFilter.java b/services/accessibility/java/com/android/server/accessibility/AccessibilityInputFilter.java
index 4d7f82d..2a7d945 100644
--- a/services/accessibility/java/com/android/server/accessibility/AccessibilityInputFilter.java
+++ b/services/accessibility/java/com/android/server/accessibility/AccessibilityInputFilter.java
@@ -20,6 +20,7 @@
 import android.os.PowerManager;
 import android.util.Pools.SimplePool;
 import android.util.Slog;
+import android.util.SparseBooleanArray;
 import android.view.Choreographer;
 import android.view.InputDevice;
 import android.view.InputEvent;
@@ -637,10 +638,10 @@
     }
 
     /**
-     * Keeps state of stream of events from a keyboard device.
+     * Keeps state of streams of events from all keyboard devices.
      */
     private static class KeyboardEventStreamState extends EventStreamState {
-        private boolean mEventSequenceStarted;
+        private SparseBooleanArray mEventSequenceStartedMap = new SparseBooleanArray();
 
         public KeyboardEventStreamState() {
             reset();
@@ -649,17 +650,35 @@
         @Override
         final public void reset() {
             super.reset();
-            mEventSequenceStarted = false;
+            mEventSequenceStartedMap.clear();
         }
 
+        /*
+         * Key events from different devices may be interleaved. For example, the volume up and
+         * down keys can come from different device IDs.
+         */
+        @Override
+        public boolean updateDeviceId(int deviceId) {
+            return false;
+        }
+
+        // We manage all device ids simultaneously; there is no concept of validity.
+        @Override
+        public boolean deviceIdValid() {
+            return true;
+        }
+
+
         @Override
         final public boolean shouldProcessKeyEvent(KeyEvent event) {
-            // Wait for a down key event to start processing.
-            if (mEventSequenceStarted) {
+            // For each keyboard device, wait for a down event from a device to start processing
+            int deviceId = event.getDeviceId();
+            if (mEventSequenceStartedMap.get(deviceId, false)) {
                 return true;
             }
-            mEventSequenceStarted = event.getAction() == KeyEvent.ACTION_DOWN;
-            return mEventSequenceStarted;
+            boolean shouldProcess = event.getAction() == KeyEvent.ACTION_DOWN;
+            mEventSequenceStartedMap.put(deviceId, shouldProcess);
+            return shouldProcess;
         }
     }
 }
diff --git a/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java b/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
index d900b37..1b85016 100644
--- a/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
+++ b/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
@@ -60,7 +60,6 @@
 import android.os.Process;
 import android.os.RemoteCallbackList;
 import android.os.RemoteException;
-import android.os.ServiceManager;
 import android.os.SystemClock;
 import android.os.UserHandle;
 import android.os.UserManager;
@@ -92,7 +91,6 @@
 import com.android.internal.R;
 import com.android.internal.content.PackageMonitor;
 import com.android.internal.os.SomeArgs;
-import com.android.internal.statusbar.IStatusBarService;
 import com.android.server.LocalServices;
 
 import com.android.server.statusbar.StatusBarManagerInternal;
@@ -2298,11 +2296,16 @@
         public boolean bindLocked() {
             UserState userState = getUserStateLocked(mUserId);
             if (!mIsAutomation) {
-                if (mService == null && mContext.bindServiceAsUser(
-                        mIntent, this,
-                        Context.BIND_AUTO_CREATE | Context.BIND_FOREGROUND_SERVICE_WHILE_AWAKE,
-                        new UserHandle(mUserId))) {
-                    userState.mBindingServices.add(mComponentName);
+                final long identity = Binder.clearCallingIdentity();
+                try {
+                    if (mService == null && mContext.bindServiceAsUser(
+                            mIntent, this,
+                            Context.BIND_AUTO_CREATE | Context.BIND_FOREGROUND_SERVICE_WHILE_AWAKE,
+                            new UserHandle(mUserId))) {
+                        userState.mBindingServices.add(mComponentName);
+                    }
+                } finally {
+                    Binder.restoreCallingIdentity(identity);
                 }
             } else {
                 userState.mBindingServices.add(mComponentName);
@@ -3315,13 +3318,9 @@
         private void openRecents() {
             final long token = Binder.clearCallingIdentity();
 
-            IStatusBarService statusBarService = IStatusBarService.Stub.asInterface(
-                    ServiceManager.getService("statusbar"));
-            try {
-                statusBarService.toggleRecentApps();
-            } catch (RemoteException e) {
-                Slog.e(LOG_TAG, "Error toggling recent apps.");
-            }
+            StatusBarManagerInternal statusBarService = LocalServices.getService(
+                    StatusBarManagerInternal.class);
+            statusBarService.toggleRecentApps();
 
             Binder.restoreCallingIdentity(token);
         }
diff --git a/services/accessibility/java/com/android/server/accessibility/MagnificationController.java b/services/accessibility/java/com/android/server/accessibility/MagnificationController.java
index b2196bf..f1b3722 100644
--- a/services/accessibility/java/com/android/server/accessibility/MagnificationController.java
+++ b/services/accessibility/java/com/android/server/accessibility/MagnificationController.java
@@ -144,27 +144,35 @@
      * @param updateSpec {@code true} to update the scale and center based on
      *                   the region bounds, {@code false} to leave them as-is
      */
-    public void setMagnifiedRegion(Region magnified, Region available, boolean updateSpec) {
+    private void setMagnifiedRegion(Region magnified, Region available, boolean updateSpec) {
         synchronized (mLock) {
-            mMagnifiedRegion.set(magnified);
-            mMagnifiedRegion.getBounds(mMagnifiedBounds);
+            boolean magnificationChanged = false;
+            boolean boundsChanged = false;
+
+            if (!mMagnifiedRegion.equals(magnified)) {
+                mMagnifiedRegion.set(magnified);
+                mMagnifiedRegion.getBounds(mMagnifiedBounds);
+                boundsChanged = true;
+            }
             mAvailableRegion.set(available);
-
-            final MagnificationSpec sentSpec = mSpecAnimationBridge.mSentMagnificationSpec;
-            final float scale = sentSpec.scale;
-            final float offsetX = sentSpec.offsetX;
-            final float offsetY = sentSpec.offsetY;
-
-            // Compute the new center and update spec as needed.
-            final float centerX = (mMagnifiedBounds.width() / 2.0f
-                    + mMagnifiedBounds.left - offsetX) / scale;
-            final float centerY = (mMagnifiedBounds.height() / 2.0f
-                    + mMagnifiedBounds.top - offsetY) / scale;
             if (updateSpec) {
-                setScaleAndCenter(scale, centerX, centerY, false);
-            } else {
-                mAms.onMagnificationStateChanged();
-                mAms.notifyMagnificationChanged(mMagnifiedRegion, scale, centerX, centerY);
+                final MagnificationSpec sentSpec = mSpecAnimationBridge.mSentMagnificationSpec;
+                final float scale = sentSpec.scale;
+                final float offsetX = sentSpec.offsetX;
+                final float offsetY = sentSpec.offsetY;
+
+                // Compute the new center and update spec as needed.
+                final float centerX = (mMagnifiedBounds.width() / 2.0f
+                        + mMagnifiedBounds.left - offsetX) / scale;
+                final float centerY = (mMagnifiedBounds.height() / 2.0f
+                        + mMagnifiedBounds.top - offsetY) / scale;
+                magnificationChanged = setScaleAndCenterLocked(
+                        scale, centerX, centerY, false);
+            }
+
+            // If magnification changed we already notified for the change.
+            if (boundsChanged && updateSpec && !magnificationChanged) {
+                onMagnificationChangedLocked();
             }
         }
     }
@@ -327,21 +335,17 @@
      */
     public boolean reset(boolean animate) {
         synchronized (mLock) {
-            return resetLocked(animate);
+            final MagnificationSpec spec = mCurrentMagnificationSpec;
+            final boolean changed = !spec.isNop();
+            if (changed) {
+                spec.clear();
+                onMagnificationChangedLocked();
+            }
+            mSpecAnimationBridge.updateSentSpec(spec, animate);
+            return changed;
         }
     }
 
-    private boolean resetLocked(boolean animate) {
-        final MagnificationSpec spec = mCurrentMagnificationSpec;
-        final boolean changed = !spec.isNop();
-        if (changed) {
-            spec.clear();
-        }
-
-        mSpecAnimationBridge.updateSentSpec(spec, animate);
-        return changed;
-    }
-
     /**
      * Scales the magnified region around the specified pivot point,
      * optionally animating the transition. If animation is disabled, the
@@ -416,8 +420,8 @@
         }
     }
 
-    private boolean setScaleAndCenterLocked(
-            float scale, float centerX, float centerY, boolean animate) {
+    private boolean setScaleAndCenterLocked(float scale, float centerX, float centerY,
+            boolean animate) {
         final boolean changed = updateMagnificationSpecLocked(scale, centerX, centerY);
         mSpecAnimationBridge.updateSentSpec(mCurrentMagnificationSpec, animate);
         return changed;
@@ -440,6 +444,12 @@
         }
     }
 
+    private void onMagnificationChangedLocked() {
+        mAms.onMagnificationStateChanged();
+        mAms.notifyMagnificationChanged(mMagnifiedRegion,
+                getScale(), getCenterX(), getCenterY());
+    }
+
     /**
      * Persists the current magnification scale to the current user's settings.
      */
@@ -524,6 +534,10 @@
             changed = true;
         }
 
+        if (changed) {
+            onMagnificationChangedLocked();
+        }
+
         return changed;
     }
 
diff --git a/services/core/Android.mk b/services/core/Android.mk
index 99c5dd6..860f60a 100644
--- a/services/core/Android.mk
+++ b/services/core/Android.mk
@@ -4,11 +4,17 @@
 
 LOCAL_MODULE := services.core
 
+LOCAL_AIDL_INCLUDES := system/netd/server/binder
+
 LOCAL_SRC_FILES += \
     $(call all-java-files-under,java) \
     java/com/android/server/EventLogTags.logtags \
     java/com/android/server/am/EventLogTags.logtags \
-    ../../../../system/netd/server/binder/android/net/INetd.aidl
+    ../../../../system/netd/server/binder/android/net/INetd.aidl \
+    ../../../../system/netd/server/binder/android/net/metrics/IDnsEventListener.aidl \
+
+LOCAL_AIDL_INCLUDES += \
+    system/netd/server/binder
 
 LOCAL_JAVA_LIBRARIES := services.net telephony-common
 LOCAL_STATIC_JAVA_LIBRARIES := tzdata_update
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java
index e5fe03a..f06583b 100644
--- a/services/core/java/com/android/server/ConnectivityService.java
+++ b/services/core/java/com/android/server/ConnectivityService.java
@@ -71,7 +71,8 @@
 import android.net.RouteInfo;
 import android.net.UidRange;
 import android.net.Uri;
-import android.net.metrics.ConnectivityServiceChangeEvent;
+import android.net.metrics.DefaultNetworkEvent;
+import android.net.metrics.NetworkEvent;
 import android.os.Binder;
 import android.os.Build;
 import android.os.Bundle;
@@ -820,37 +821,25 @@
     }
 
     private NetworkState getFilteredNetworkState(int networkType, int uid) {
-        NetworkInfo info = null;
-        LinkProperties lp = null;
-        NetworkCapabilities nc = null;
-        Network network = null;
-        String subscriberId = null;
-
         if (mLegacyTypeTracker.isTypeSupported(networkType)) {
-            NetworkAgentInfo nai = mLegacyTypeTracker.getNetworkForType(networkType);
+            final NetworkAgentInfo nai = mLegacyTypeTracker.getNetworkForType(networkType);
+            final NetworkState state;
             if (nai != null) {
-                synchronized (nai) {
-                    info = new NetworkInfo(nai.networkInfo);
-                    lp = new LinkProperties(nai.linkProperties);
-                    nc = new NetworkCapabilities(nai.networkCapabilities);
-                    // Network objects are outwardly immutable so there is no point to duplicating.
-                    // Duplicating also precludes sharing socket factories and connection pools.
-                    network = nai.network;
-                    subscriberId = (nai.networkMisc != null) ? nai.networkMisc.subscriberId : null;
-                }
-                info.setType(networkType);
+                state = nai.getNetworkState();
+                state.networkInfo.setType(networkType);
             } else {
-                info = new NetworkInfo(networkType, 0, getNetworkTypeName(networkType), "");
+                final NetworkInfo info = new NetworkInfo(networkType, 0,
+                        getNetworkTypeName(networkType), "");
                 info.setDetailedState(NetworkInfo.DetailedState.DISCONNECTED, null, null);
                 info.setIsAvailable(true);
-                lp = new LinkProperties();
-                nc = new NetworkCapabilities();
-                network = null;
+                state = new NetworkState(info, new LinkProperties(), new NetworkCapabilities(),
+                        null, null, null);
             }
-            info = getFilteredNetworkInfo(info, lp, uid);
+            filterNetworkStateForUid(state, uid);
+            return state;
+        } else {
+            return NetworkState.EMPTY;
         }
-
-        return new NetworkState(info, lp, nc, network, subscriberId, null);
     }
 
     private NetworkAgentInfo getNetworkAgentInfoForNetwork(Network network) {
@@ -860,7 +849,7 @@
         synchronized (mNetworkForNetId) {
             return mNetworkForNetId.get(network.netId);
         }
-    };
+    }
 
     private Network[] getVpnUnderlyingNetworks(int uid) {
         if (!mLockdownEnabled) {
@@ -876,12 +865,6 @@
     }
 
     private NetworkState getUnfilteredActiveNetworkState(int uid) {
-        NetworkInfo info = null;
-        LinkProperties lp = null;
-        NetworkCapabilities nc = null;
-        Network network = null;
-        String subscriberId = null;
-
         NetworkAgentInfo nai = getDefaultNetwork();
 
         final Network[] networks = getVpnUnderlyingNetworks(uid);
@@ -899,18 +882,10 @@
         }
 
         if (nai != null) {
-            synchronized (nai) {
-                info = new NetworkInfo(nai.networkInfo);
-                lp = new LinkProperties(nai.linkProperties);
-                nc = new NetworkCapabilities(nai.networkCapabilities);
-                // Network objects are outwardly immutable so there is no point to duplicating.
-                // Duplicating also precludes sharing socket factories and connection pools.
-                network = nai.network;
-                subscriberId = (nai.networkMisc != null) ? nai.networkMisc.subscriberId : null;
-            }
+            return nai.getNetworkState();
+        } else {
+            return NetworkState.EMPTY;
         }
-
-        return new NetworkState(info, lp, nc, network, subscriberId, null);
     }
 
     /**
@@ -951,21 +926,29 @@
     }
 
     /**
-     * Return a filtered {@link NetworkInfo}, potentially marked
-     * {@link DetailedState#BLOCKED} based on
-     * {@link #isNetworkWithLinkPropertiesBlocked}.
+     * Apply any relevant filters to {@link NetworkState} for the given UID. For
+     * example, this may mark the network as {@link DetailedState#BLOCKED} based
+     * on {@link #isNetworkWithLinkPropertiesBlocked}, or
+     * {@link NetworkInfo#isMetered()} based on network policies.
      */
-    private NetworkInfo getFilteredNetworkInfo(NetworkInfo info, LinkProperties lp, int uid) {
-        if (info != null && isNetworkWithLinkPropertiesBlocked(lp, uid)) {
-            // network is blocked; clone and override state
-            info = new NetworkInfo(info);
-            info.setDetailedState(DetailedState.BLOCKED, null, null);
+    private void filterNetworkStateForUid(NetworkState state, int uid) {
+        if (state == null || state.networkInfo == null || state.linkProperties == null) return;
+
+        if (isNetworkWithLinkPropertiesBlocked(state.linkProperties, uid)) {
+            state.networkInfo.setDetailedState(DetailedState.BLOCKED, null, null);
         }
-        if (info != null && mLockdownTracker != null) {
-            info = mLockdownTracker.augmentNetworkInfo(info);
-            if (VDBG) log("returning Locked NetworkInfo");
+        if (mLockdownTracker != null) {
+            mLockdownTracker.augmentNetworkInfo(state.networkInfo);
         }
-        return info;
+
+        // TODO: apply metered state closer to NetworkAgentInfo
+        final long token = Binder.clearCallingIdentity();
+        try {
+            state.networkInfo.setMetered(mPolicyManager.isNetworkMetered(state));
+        } catch (RemoteException e) {
+        } finally {
+            Binder.restoreCallingIdentity(token);
+        }
     }
 
     /**
@@ -979,10 +962,10 @@
     public NetworkInfo getActiveNetworkInfo() {
         enforceAccessPermission();
         final int uid = Binder.getCallingUid();
-        NetworkState state = getUnfilteredActiveNetworkState(uid);
-        NetworkInfo ni = getFilteredNetworkInfo(state.networkInfo, state.linkProperties, uid);
-        maybeLogBlockedNetworkInfo(ni, uid);
-        return ni;
+        final NetworkState state = getUnfilteredActiveNetworkState(uid);
+        filterNetworkStateForUid(state, uid);
+        maybeLogBlockedNetworkInfo(state.networkInfo, uid);
+        return state.networkInfo;
     }
 
     @Override
@@ -1026,8 +1009,9 @@
     @Override
     public NetworkInfo getActiveNetworkInfoForUid(int uid) {
         enforceConnectivityInternalPermission();
-        NetworkState state = getUnfilteredActiveNetworkState(uid);
-        return getFilteredNetworkInfo(state.networkInfo, state.linkProperties, uid);
+        final NetworkState state = getUnfilteredActiveNetworkState(uid);
+        filterNetworkStateForUid(state, uid);
+        return state.networkInfo;
     }
 
     @Override
@@ -1038,12 +1022,13 @@
             // A VPN is active, so we may need to return one of its underlying networks. This
             // information is not available in LegacyTypeTracker, so we have to get it from
             // getUnfilteredActiveNetworkState.
-            NetworkState state = getUnfilteredActiveNetworkState(uid);
+            final NetworkState state = getUnfilteredActiveNetworkState(uid);
             if (state.networkInfo != null && state.networkInfo.getType() == networkType) {
-                return getFilteredNetworkInfo(state.networkInfo, state.linkProperties, uid);
+                filterNetworkStateForUid(state, uid);
+                return state.networkInfo;
             }
         }
-        NetworkState state = getFilteredNetworkState(networkType, uid);
+        final NetworkState state = getFilteredNetworkState(networkType, uid);
         return state.networkInfo;
     }
 
@@ -1051,15 +1036,14 @@
     public NetworkInfo getNetworkInfoForNetwork(Network network) {
         enforceAccessPermission();
         final int uid = Binder.getCallingUid();
-        NetworkInfo info = null;
-        NetworkAgentInfo nai = getNetworkAgentInfoForNetwork(network);
+        final NetworkAgentInfo nai = getNetworkAgentInfoForNetwork(network);
         if (nai != null) {
-            synchronized (nai) {
-                info = new NetworkInfo(nai.networkInfo);
-                info = getFilteredNetworkInfo(info, nai.linkProperties, uid);
-            }
+            final NetworkState state = nai.getNetworkState();
+            filterNetworkStateForUid(state, uid);
+            return state.networkInfo;
+        } else {
+            return null;
         }
-        return info;
     }
 
     @Override
@@ -1221,12 +1205,7 @@
         for (Network network : getAllNetworks()) {
             final NetworkAgentInfo nai = getNetworkAgentInfoForNetwork(network);
             if (nai != null) {
-                synchronized (nai) {
-                    final String subscriberId = (nai.networkMisc != null)
-                            ? nai.networkMisc.subscriberId : null;
-                    result.add(new NetworkState(nai.networkInfo, nai.linkProperties,
-                            nai.networkCapabilities, network, subscriberId, null));
-                }
+                result.add(nai.getNetworkState());
             }
         }
         return result.toArray(new NetworkState[result.size()]);
@@ -1254,24 +1233,9 @@
     @Override
     public boolean isActiveNetworkMetered() {
         enforceAccessPermission();
-        final int uid = Binder.getCallingUid();
-        final long token = Binder.clearCallingIdentity();
-        try {
-            return isActiveNetworkMeteredUnchecked(uid);
-        } finally {
-            Binder.restoreCallingIdentity(token);
-        }
-    }
 
-    private boolean isActiveNetworkMeteredUnchecked(int uid) {
-        final NetworkState state = getUnfilteredActiveNetworkState(uid);
-        if (state.networkInfo != null) {
-            try {
-                return mPolicyManager.isNetworkMetered(state);
-            } catch (RemoteException e) {
-            }
-        }
-        return false;
+        final NetworkInfo info = getActiveNetworkInfo();
+        return (info != null) ? info.isMetered() : false;
     }
 
     private INetworkManagementEventObserver mDataActivityObserver = new BaseNetworkObserver() {
@@ -1419,6 +1383,15 @@
                 log("onRestrictBackgroundChanged(restrictBackground=" + restrictBackground + ")");
             }
         }
+
+        @Override
+        public void onRestrictBackgroundWhitelistChanged(int uid, boolean whitelisted) {
+            if (LOGD_RULES) {
+                // caller is NPMS, since we only register with them
+                log("onRestrictBackgroundWhitelistChanged(uid=" + uid + ", whitelisted="
+                        + whitelisted + ")");
+            }
+        }
     };
 
     /**
@@ -1480,7 +1453,8 @@
 
     private Intent makeGeneralIntent(NetworkInfo info, String bcastType) {
         if (mLockdownTracker != null) {
-            info = mLockdownTracker.augmentNetworkInfo(info);
+            info = new NetworkInfo(info);
+            mLockdownTracker.augmentNetworkInfo(info);
         }
 
         Intent intent = new Intent(bcastType);
@@ -1747,7 +1721,7 @@
         if(restoreDefaultNetworkDelayStr != null &&
                 restoreDefaultNetworkDelayStr.length() != 0) {
             try {
-                return Integer.valueOf(restoreDefaultNetworkDelayStr);
+                return Integer.parseInt(restoreDefaultNetworkDelayStr);
             } catch (NumberFormatException e) {
             }
         }
@@ -2100,6 +2074,7 @@
 
     private void linger(NetworkAgentInfo nai) {
         nai.lingering = true;
+        NetworkEvent.logEvent(nai.network.netId, NetworkEvent.NETWORK_LINGER);
         nai.networkMonitor.sendMessage(NetworkMonitor.CMD_NETWORK_LINGER);
         notifyNetworkCallbacks(nai, ConnectivityManager.CALLBACK_LOSING);
     }
@@ -2113,6 +2088,7 @@
         nai.networkLingered.clear();
         if (!nai.lingering) return;
         nai.lingering = false;
+        NetworkEvent.logEvent(nai.network.netId, NetworkEvent.NETWORK_UNLINGER);
         if (VDBG) log("Canceling linger of " + nai.name());
         nai.networkMonitor.sendMessage(NetworkMonitor.CMD_NETWORK_CONNECTED);
     }
@@ -2208,7 +2184,7 @@
             rematchAllNetworksAndRequests(null, 0);
             if (wasDefault && getDefaultNetwork() == null) {
                 // Log that we lost the default network and there is no replacement.
-                logConnectivityServiceChangeEvent(null, nai);
+                logDefaultNetworkEvent(null, nai);
             }
             if (nai.created) {
                 // Tell netd to clean up the configuration for this network
@@ -2321,6 +2297,18 @@
             if (VDBG || (DBG && nri.isRequest())) log("releasing NetworkRequest " + request);
             nri.unlinkDeathRecipient();
             mNetworkRequests.remove(request);
+            synchronized (mUidToNetworkRequestCount) {
+                int requests = mUidToNetworkRequestCount.get(nri.mUid, 0);
+                if (requests < 1) {
+                    Slog.wtf(TAG, "BUG: too small request count " + requests + " for UID " +
+                            nri.mUid);
+                } else if (requests == 1) {
+                    mUidToNetworkRequestCount.removeAt(
+                            mUidToNetworkRequestCount.indexOfKey(nri.mUid));
+                } else {
+                    mUidToNetworkRequestCount.put(nri.mUid, requests - 1);
+                }
+            }
             mNetworkRequestInfoLogs.log("RELEASE " + nri);
             if (nri.isRequest()) {
                 // Find all networks that are satisfying this request and remove the request
@@ -3668,6 +3656,11 @@
     private final HashMap<NetworkRequest, NetworkRequestInfo> mNetworkRequests =
             new HashMap<NetworkRequest, NetworkRequestInfo>();
 
+    private static final int MAX_NETWORK_REQUESTS_PER_UID = 100;
+    // Map from UID to number of NetworkRequests that UID has filed.
+    @GuardedBy("mUidToNetworkRequestCount")
+    private final SparseIntArray mUidToNetworkRequestCount = new SparseIntArray();
+
     private static class NetworkFactoryInfo {
         public final String name;
         public final Messenger messenger;
@@ -3728,6 +3721,7 @@
             mPid = getCallingPid();
             mUid = getCallingUid();
             mType = type;
+            enforceRequestCountLimit();
         }
 
         NetworkRequestInfo(Messenger m, NetworkRequest r, IBinder binder, NetworkRequestType type) {
@@ -3739,6 +3733,7 @@
             mUid = getCallingUid();
             mType = type;
             mPendingIntent = null;
+            enforceRequestCountLimit();
 
             try {
                 mBinder.linkToDeath(this, 0);
@@ -3747,6 +3742,16 @@
             }
         }
 
+        private void enforceRequestCountLimit() {
+            synchronized (mUidToNetworkRequestCount) {
+                int networkRequests = mUidToNetworkRequestCount.get(mUid, 0) + 1;
+                if (networkRequests >= MAX_NETWORK_REQUESTS_PER_UID) {
+                    throw new IllegalArgumentException("Too many NetworkRequests filed");
+                }
+                mUidToNetworkRequestCount.put(mUid, networkRequests);
+            }
+        }
+
         private String typeString() {
             switch (mType) {
                 case LISTEN: return "Listen";
@@ -4443,8 +4448,7 @@
         handleApplyDefaultProxy(newNetwork.linkProperties.getHttpProxy());
         updateTcpBufferSizes(newNetwork);
         setDefaultDnsSystemProperties(newNetwork.linkProperties.getDnsServers());
-
-        logConnectivityServiceChangeEvent(newNetwork, prevNetwork);
+        logDefaultNetworkEvent(newNetwork, prevNetwork);
     }
 
     // Handles a network appearing or improving its score.
@@ -5066,21 +5070,24 @@
         return new NetworkMonitor(context, handler, nai, defaultRequest);
     }
 
-    private static void logConnectivityServiceChangeEvent(
-            NetworkAgentInfo next, NetworkAgentInfo prev) {
-        final int newNetId = (next == null) ? NETID_UNSET : next.network.netId;
-        final int[] newTransportTypes = (next == null)
-                ? new int[0]
-                : next.networkCapabilities.getTransportTypes();
+    private static void logDefaultNetworkEvent(NetworkAgentInfo newNai, NetworkAgentInfo prevNai) {
+        int newNetid = NETID_UNSET;
+        int prevNetid = NETID_UNSET;
+        int[] transports = new int[0];
+        boolean hadIPv4 = false;
+        boolean hadIPv6 = false;
 
-        final int oldNetId = (prev == null) ? NETID_UNSET : prev.network.netId;
-        final boolean hadIPv4 = (prev != null) &&
-                prev.linkProperties.hasIPv4Address() &&
-                prev.linkProperties.hasIPv4DefaultRoute();
-        final boolean hadIPv6 = (prev != null) &&
-                prev.linkProperties.hasGlobalIPv6Address() &&
-                prev.linkProperties.hasIPv6DefaultRoute();
-        ConnectivityServiceChangeEvent.logEvent(newNetId, newTransportTypes,
-                oldNetId, hadIPv4, hadIPv6);
+        if (newNai != null) {
+            newNetid = newNai.network.netId;
+            transports = newNai.networkCapabilities.getTransportTypes();
+        }
+        if (prevNai != null) {
+            prevNetid = prevNai.network.netId;
+            final LinkProperties lp = prevNai.linkProperties;
+            hadIPv4 = lp.hasIPv4Address() && lp.hasIPv4DefaultRoute();
+            hadIPv6 = lp.hasGlobalIPv6Address() && lp.hasIPv6DefaultRoute();
+        }
+
+        DefaultNetworkEvent.logEvent(newNetid, transports, prevNetid, hadIPv4, hadIPv6);
     }
 }
diff --git a/services/core/java/com/android/server/DockObserver.java b/services/core/java/com/android/server/DockObserver.java
index 5388f10..07aa5656 100644
--- a/services/core/java/com/android/server/DockObserver.java
+++ b/services/core/java/com/android/server/DockObserver.java
@@ -106,7 +106,7 @@
                 FileReader file = new FileReader(DOCK_STATE_PATH);
                 try {
                     int len = file.read(buffer, 0, 1024);
-                    setActualDockStateLocked(Integer.valueOf((new String(buffer, 0, len)).trim()));
+                    setActualDockStateLocked(Integer.parseInt((new String(buffer, 0, len)).trim()));
                     mPreviousDockState = mActualDockState;
                 } finally {
                     file.close();
diff --git a/services/core/java/com/android/server/EventLogTags.logtags b/services/core/java/com/android/server/EventLogTags.logtags
index c59ecec..74ff41c 100644
--- a/services/core/java/com/android/server/EventLogTags.logtags
+++ b/services/core/java/com/android/server/EventLogTags.logtags
@@ -80,6 +80,10 @@
 27531 notification_visibility (key|3),(visibile|1),(lifespan|1),(freshness|1),(exposure|1),(rank|1)
 # a notification emited noise, vibration, or light
 27532 notification_alert (key|3),(buzz|1),(beep|1),(blink|1)
+# a notification was added to a autogroup
+27533 notification_autogrouped (key|3)
+# notification was removed from an autogroup
+275534 notification_unautogrouped (key|3)
 
 # ---------------------------
 # Watchdog.java
diff --git a/services/core/java/com/android/server/InputMethodManagerService.java b/services/core/java/com/android/server/InputMethodManagerService.java
index 544e645..79d16da 100644
--- a/services/core/java/com/android/server/InputMethodManagerService.java
+++ b/services/core/java/com/android/server/InputMethodManagerService.java
@@ -2473,7 +2473,7 @@
             int subtypeId = NOT_A_SUBTYPE_ID;
             if (lastIme != null && lastImi != null) {
                 final boolean imiIdIsSame = lastImi.getId().equals(mCurMethodId);
-                final int lastSubtypeHash = Integer.valueOf(lastIme.second);
+                final int lastSubtypeHash = Integer.parseInt(lastIme.second);
                 final int currentSubtypeHash = mCurrentSubtype == null ? NOT_A_SUBTYPE_ID
                         : mCurrentSubtype.hashCode();
                 // If the last IME is the same as the current IME and the last subtype is not
@@ -2587,7 +2587,7 @@
             final InputMethodInfo lastImi = mMethodMap.get(lastIme.first);
             if (lastImi == null) return null;
             try {
-                final int lastSubtypeHash = Integer.valueOf(lastIme.second);
+                final int lastSubtypeHash = Integer.parseInt(lastIme.second);
                 final int lastSubtypeId =
                         InputMethodUtils.getSubtypeIdFromHashCode(lastImi, lastSubtypeHash);
                 if (lastSubtypeId < 0 || lastSubtypeId >= lastImi.getSubtypeCount()) {
@@ -3437,7 +3437,7 @@
             if (subtypeHashCode != null) {
                 try {
                     lastSubtypeId = InputMethodUtils.getSubtypeIdFromHashCode(
-                            imi, Integer.valueOf(subtypeHashCode));
+                            imi, Integer.parseInt(subtypeHashCode));
                 } catch (NumberFormatException e) {
                     Slog.w(TAG, "HashCode for subtype looks broken: " + subtypeHashCode, e);
                 }
@@ -3798,9 +3798,9 @@
                             Slog.w(TAG, "IME uninstalled or not valid.: " + currentImiId);
                             continue;
                         }
-                        final int icon = Integer.valueOf(
+                        final int icon = Integer.parseInt(
                                 parser.getAttributeValue(null, ATTR_ICON));
-                        final int label = Integer.valueOf(
+                        final int label = Integer.parseInt(
                                 parser.getAttributeValue(null, ATTR_LABEL));
                         final String imeSubtypeLocale =
                                 parser.getAttributeValue(null, ATTR_IME_SUBTYPE_LOCALE);
@@ -3826,7 +3826,7 @@
                         final String subtypeIdString =
                                 parser.getAttributeValue(null, ATTR_IME_SUBTYPE_ID);
                         if (subtypeIdString != null) {
-                            builder.setSubtypeId(Integer.valueOf(subtypeIdString));
+                            builder.setSubtypeId(Integer.parseInt(subtypeIdString));
                         }
                         tempSubtypesArray.add(builder.build());
                     }
diff --git a/services/core/java/com/android/server/LockSettingsService.java b/services/core/java/com/android/server/LockSettingsService.java
index f2b4e52..a3ef6b6 100644
--- a/services/core/java/com/android/server/LockSettingsService.java
+++ b/services/core/java/com/android/server/LockSettingsService.java
@@ -261,7 +261,9 @@
                     showEncryptionNotification(userHandle);
                 } else {
                     UserInfo parent = mUserManager.getProfileParent(user.id);
-                    if (parent != null && mUserManager.isUserUnlocked(parent.getUserHandle())) {
+                    if (parent != null &&
+                            mUserManager.isUserUnlocked(parent.getUserHandle()) &&
+                            !mUserManager.isQuietModeEnabled(userHandle)) {
                         // Only show notifications for managed profiles once their parent
                         // user is unlocked.
                         showEncryptionNotificationForProfile(userHandle);
@@ -348,7 +350,8 @@
             UserInfo profile = profiles.get(i);
             if (profile.isManagedProfile()) {
                 UserHandle userHandle = profile.getUserHandle();
-                if (!mUserManager.isUserUnlocked(userHandle)) {
+                if (!mUserManager.isUserUnlocked(userHandle) &&
+                        !mUserManager.isQuietModeEnabled(userHandle)) {
                     showEncryptionNotificationForProfile(userHandle);
                 }
             }
@@ -687,21 +690,27 @@
         final IProgressListener listener = new IProgressListener.Stub() {
             @Override
             public void onStarted(int id, Bundle extras) throws RemoteException {
-                // Ignored
+                Log.d(TAG, "unlockUser started");
             }
 
             @Override
             public void onProgress(int id, int progress, Bundle extras) throws RemoteException {
-                // Ignored
+                Log.d(TAG, "unlockUser progress " + progress);
             }
 
             @Override
             public void onFinished(int id, Bundle extras) throws RemoteException {
-                Log.d(TAG, "unlockUser finished!");
+                Log.d(TAG, "unlockUser finished");
                 latch.countDown();
             }
         };
 
+        // Turn off quite mode if it's enabled, only managed profile can return true for now, it
+        // will return false if it is not a managed profile.
+        if (mUserManager.isQuietModeEnabled(new UserHandle(userId))) {
+            mUserManager.setQuietModeEnabled(userId, false);
+        }
+
         try {
             ActivityManagerNative.getDefault().unlockUser(userId, token, secret, listener);
         } catch (RemoteException e) {
@@ -720,6 +729,7 @@
                     // Unlock managed profile with unified lock
                     if (pi.isManagedProfile()
                             && !mLockPatternUtils.isSeparateProfileChallengeEnabled(pi.id)
+                            && !pi.isQuietModeEnabled()
                             && mStorage.hasChildProfileLock(pi.id)) {
                         unlockChildProfile(pi.id);
                     }
@@ -805,6 +815,7 @@
     @Override
     public void setLockPattern(String pattern, String savedCredential, int userId)
             throws RemoteException {
+        checkWritePermission(userId);
         synchronized (mSeparateChallengeLock) {
             setLockPatternInternal(pattern, savedCredential, userId);
             setSeparateProfileChallengeEnabled(userId, true, null);
@@ -862,6 +873,7 @@
     @Override
     public void setLockPassword(String password, String savedCredential, int userId)
             throws RemoteException {
+        checkWritePermission(userId);
         synchronized (mSeparateChallengeLock) {
             setLockPasswordInternal(password, savedCredential, userId);
             setSeparateProfileChallengeEnabled(userId, true, null);
@@ -1037,7 +1049,13 @@
     private void changeUserKey(int userId, byte[] token, byte[] secret)
             throws RemoteException {
         final UserInfo userInfo = UserManager.get(mContext).getUserInfo(userId);
-        getMountService().changeUserKey(userId, userInfo.serialNumber, token, null, secret);
+        final IMountService mountService = getMountService();
+        final long callingId = Binder.clearCallingIdentity();
+        try {
+            mountService.changeUserKey(userId, userInfo.serialNumber, token, null, secret);
+        } finally {
+            Binder.restoreCallingIdentity(callingId);
+        }
     }
 
     @Override
diff --git a/services/core/java/com/android/server/MountService.java b/services/core/java/com/android/server/MountService.java
index 229a3f4..ec05dae 100644
--- a/services/core/java/com/android/server/MountService.java
+++ b/services/core/java/com/android/server/MountService.java
@@ -2875,6 +2875,19 @@
     }
 
     @Override
+    public void destroyUserStorage(String volumeUuid, int userId, int flags) {
+        enforcePermission(android.Manifest.permission.STORAGE_INTERNAL);
+        waitForReady();
+
+        try {
+            mCryptConnector.execute("cryptfs", "destroy_user_storage", escapeNull(volumeUuid),
+                    userId, flags);
+        } catch (NativeDaemonConnectorException e) {
+            throw e.rethrowAsParcelableException();
+        }
+    }
+
+    @Override
     public ParcelFileDescriptor mountAppFuse(final String name) throws RemoteException {
         try {
             final int uid = Binder.getCallingUid();
diff --git a/services/core/java/com/android/server/NativeDaemonConnector.java b/services/core/java/com/android/server/NativeDaemonConnector.java
index 6009984..f5f7732 100644
--- a/services/core/java/com/android/server/NativeDaemonConnector.java
+++ b/services/core/java/com/android/server/NativeDaemonConnector.java
@@ -41,6 +41,7 @@
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.concurrent.ArrayBlockingQueue;
 import java.util.concurrent.BlockingQueue;
+import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
 import java.util.LinkedList;
 
@@ -344,6 +345,30 @@
     }
 
     /**
+     * Method that waits until all asychronous notifications sent by the native daemon have
+     * been processed. This method must not be called on the notification thread or an
+     * exception will be thrown.
+     */
+    public void waitForCallbacks() {
+        if (Thread.currentThread() == mLooper.getThread()) {
+            throw new IllegalStateException("Must not call this method on callback thread");
+        }
+
+        final CountDownLatch latch = new CountDownLatch(1);
+        mCallbackHandler.post(new Runnable() {
+            @Override
+            public void run() {
+                latch.countDown();
+            }
+        });
+        try {
+            latch.await();
+        } catch (InterruptedException e) {
+            Slog.wtf(TAG, "Interrupted while waiting for unsolicited response handling", e);
+        }
+    }
+
+    /**
      * Issue the given command to the native daemon and return a single expected
      * response.
      *
diff --git a/services/core/java/com/android/server/NetworkManagementService.java b/services/core/java/com/android/server/NetworkManagementService.java
index fffd850..7458898 100644
--- a/services/core/java/com/android/server/NetworkManagementService.java
+++ b/services/core/java/com/android/server/NetworkManagementService.java
@@ -1507,6 +1507,11 @@
         } catch (NativeDaemonConnectorException e) {
             throw e.rethrowAsParcelableException();
         }
+
+        // Ensure that before we return from this command, any asynchronous
+        // notifications generated before the command completed have been
+        // processed by all NetworkManagementEventObservers.
+        mConnector.waitForCallbacks();
     }
 
     @Override
diff --git a/services/core/java/com/android/server/TelephonyRegistry.java b/services/core/java/com/android/server/TelephonyRegistry.java
index 820551d..9602bf6 100644
--- a/services/core/java/com/android/server/TelephonyRegistry.java
+++ b/services/core/java/com/android/server/TelephonyRegistry.java
@@ -714,20 +714,24 @@
             }
             handleRemoveListLocked();
         }
+
+        // Called only by Telecomm to communicate call state across different phone accounts. So
+        // there is no need to add a valid subId or slotId.
         broadcastCallStateChanged(state, incomingNumber,
+                SubscriptionManager.INVALID_PHONE_INDEX,
                 SubscriptionManager.INVALID_SUBSCRIPTION_ID);
     }
 
-    public void notifyCallStateForSubscriber(int subId, int state, String incomingNumber) {
+    public void notifyCallStateForPhoneId(int phoneId, int subId, int state,
+                String incomingNumber) {
         if (!checkNotifyPermission("notifyCallState()")) {
             return;
         }
         if (VDBG) {
-            log("notifyCallStateForSubscriber: subId=" + subId
+            log("notifyCallStateForPhoneId: subId=" + subId
                 + " state=" + state + " incomingNumber=" + incomingNumber);
         }
         synchronized (mRecords) {
-            int phoneId = SubscriptionManager.getPhoneId(subId);
             if (validatePhoneId(phoneId)) {
                 mCallState[phoneId] = state;
                 mCallIncomingNumber[phoneId] = incomingNumber;
@@ -746,7 +750,7 @@
             }
             handleRemoveListLocked();
         }
-        broadcastCallStateChanged(state, incomingNumber, subId);
+        broadcastCallStateChanged(state, incomingNumber, phoneId, subId);
     }
 
     public void notifyServiceStateForPhoneId(int phoneId, int subId, ServiceState state) {
@@ -788,31 +792,27 @@
             }
             handleRemoveListLocked();
         }
-        broadcastServiceStateChanged(state, subId);
+        broadcastServiceStateChanged(state, phoneId, subId);
     }
 
-    public void notifySignalStrength(SignalStrength signalStrength) {
-        notifySignalStrengthForSubscriber(SubscriptionManager.DEFAULT_SUBSCRIPTION_ID,
-                signalStrength);
-    }
-
-    public void notifySignalStrengthForSubscriber(int subId, SignalStrength signalStrength) {
+    public void notifySignalStrengthForPhoneId(int phoneId, int subId,
+                SignalStrength signalStrength) {
         if (!checkNotifyPermission("notifySignalStrength()")) {
             return;
         }
         if (VDBG) {
-            log("notifySignalStrengthForSubscriber: subId=" + subId
-                + " signalStrength=" + signalStrength);
-            toStringLogSSC("notifySignalStrengthForSubscriber");
+            log("notifySignalStrengthForPhoneId: subId=" + subId
+                +" phoneId=" + phoneId + " signalStrength=" + signalStrength);
+            toStringLogSSC("notifySignalStrengthForPhoneId");
         }
+
         synchronized (mRecords) {
-            int phoneId = SubscriptionManager.getPhoneId(subId);
             if (validatePhoneId(phoneId)) {
-                if (VDBG) log("notifySignalStrengthForSubscriber: valid phoneId=" + phoneId);
+                if (VDBG) log("notifySignalStrengthForPhoneId: valid phoneId=" + phoneId);
                 mSignalStrength[phoneId] = signalStrength;
                 for (Record r : mRecords) {
                     if (VDBG) {
-                        log("notifySignalStrengthForSubscriber: r=" + r + " subId=" + subId
+                        log("notifySignalStrengthForPhoneId: r=" + r + " subId=" + subId
                                 + " phoneId=" + phoneId + " ss=" + signalStrength);
                     }
                     if (r.matchPhoneStateListenerEvent(
@@ -820,7 +820,7 @@
                             idMatch(r.subId, subId, phoneId)) {
                         try {
                             if (DBG) {
-                                log("notifySignalStrengthForSubscriber: callback.onSsS r=" + r
+                                log("notifySignalStrengthForPhoneId: callback.onSsS r=" + r
                                         + " subId=" + subId + " phoneId=" + phoneId
                                         + " ss=" + signalStrength);
                             }
@@ -835,7 +835,7 @@
                             int gsmSignalStrength = signalStrength.getGsmSignalStrength();
                             int ss = (gsmSignalStrength == 99 ? -1 : gsmSignalStrength);
                             if (DBG) {
-                                log("notifySignalStrengthForSubscriber: callback.onSS r=" + r
+                                log("notifySignalStrengthForPhoneId: callback.onSS r=" + r
                                         + " subId=" + subId + " phoneId=" + phoneId
                                         + " gsmSS=" + gsmSignalStrength + " ss=" + ss);
                             }
@@ -846,11 +846,11 @@
                     }
                 }
             } else {
-                log("notifySignalStrengthForSubscriber: invalid phoneId=" + phoneId);
+                log("notifySignalStrengthForPhoneId: invalid phoneId=" + phoneId);
             }
             handleRemoveListLocked();
         }
-        broadcastSignalStrengthChanged(signalStrength, subId);
+        broadcastSignalStrengthChanged(signalStrength, phoneId, subId);
     }
 
     @Override
@@ -1347,7 +1347,7 @@
     // the legacy intent broadcasting
     //
 
-    private void broadcastServiceStateChanged(ServiceState state, int subId) {
+    private void broadcastServiceStateChanged(ServiceState state, int phoneId, int subId) {
         long ident = Binder.clearCallingIdentity();
         try {
             mBatteryStats.notePhoneState(state.getState());
@@ -1363,10 +1363,12 @@
         intent.putExtras(data);
         // Pass the subscription along with the intent.
         intent.putExtra(PhoneConstants.SUBSCRIPTION_KEY, subId);
+        intent.putExtra(PhoneConstants.SLOT_KEY, phoneId);
         mContext.sendStickyBroadcastAsUser(intent, UserHandle.ALL);
     }
 
-    private void broadcastSignalStrengthChanged(SignalStrength signalStrength, int subId) {
+    private void broadcastSignalStrengthChanged(SignalStrength signalStrength, int phoneId,
+            int subId) {
         long ident = Binder.clearCallingIdentity();
         try {
             mBatteryStats.notePhoneSignalStrength(signalStrength);
@@ -1382,6 +1384,7 @@
         signalStrength.fillInNotifierBundle(data);
         intent.putExtras(data);
         intent.putExtra(PhoneConstants.SUBSCRIPTION_KEY, subId);
+        intent.putExtra(PhoneConstants.SLOT_KEY, phoneId);
         mContext.sendStickyBroadcastAsUser(intent, UserHandle.ALL);
     }
 
@@ -1391,7 +1394,8 @@
      * can be {@code SubscriptionManager.INVALID_SUBSCRIPTION_ID}, in which case we send
      * a global state change broadcast ({@code TelephonyManager.ACTION_PHONE_STATE_CHANGED}).
      */
-    private void broadcastCallStateChanged(int state, String incomingNumber, int subId) {
+    private void broadcastCallStateChanged(int state, String incomingNumber, int phoneId,
+                int subId) {
         long ident = Binder.clearCallingIdentity();
         try {
             if (state == TelephonyManager.CALL_STATE_IDLE) {
@@ -1418,6 +1422,10 @@
             intent.setAction(PhoneConstants.ACTION_SUBSCRIPTION_PHONE_STATE_CHANGED);
             intent.putExtra(PhoneConstants.SUBSCRIPTION_KEY, subId);
         }
+        // If the phoneId is invalid, the broadcast is for overall call state.
+        if (phoneId != SubscriptionManager.INVALID_PHONE_INDEX) {
+            intent.putExtra(PhoneConstants.SLOT_KEY, phoneId);
+        }
 
         // Send broadcast twice, once for apps that have PRIVILEGED permission and once for those
         // that have the runtime one
diff --git a/services/core/java/com/android/server/TextServicesManagerService.java b/services/core/java/com/android/server/TextServicesManagerService.java
index 801d6e0..a628747 100644
--- a/services/core/java/com/android/server/TextServicesManagerService.java
+++ b/services/core/java/com/android/server/TextServicesManagerService.java
@@ -1110,7 +1110,7 @@
         private int getInt(final String key, final int defaultValue) {
             if (mCopyOnWrite && mCopyOnWriteDataStore.containsKey(key)) {
                 final String result = mCopyOnWriteDataStore.get(key);
-                return result != null ? Integer.valueOf(result) : 0;
+                return result != null ? Integer.parseInt(result) : 0;
             }
             return Settings.Secure.getIntForUser(mResolver, key, defaultValue, mCurrentUserId);
         }
diff --git a/services/core/java/com/android/server/WiredAccessoryManager.java b/services/core/java/com/android/server/WiredAccessoryManager.java
index e0e6070..fcda83d 100644
--- a/services/core/java/com/android/server/WiredAccessoryManager.java
+++ b/services/core/java/com/android/server/WiredAccessoryManager.java
@@ -330,7 +330,7 @@
                         FileReader file = new FileReader(uei.getSwitchStatePath());
                         int len = file.read(buffer, 0, 1024);
                         file.close();
-                        curState = Integer.valueOf((new String(buffer, 0, len)).trim());
+                        curState = Integer.parseInt((new String(buffer, 0, len)).trim());
 
                         if (curState > 0) {
                             updateStateLocked(uei.getDevPath(), uei.getDevName(), curState);
diff --git a/services/core/java/com/android/server/accounts/AccountManagerService.java b/services/core/java/com/android/server/accounts/AccountManagerService.java
index 4791818..480da72 100644
--- a/services/core/java/com/android/server/accounts/AccountManagerService.java
+++ b/services/core/java/com/android/server/accounts/AccountManagerService.java
@@ -828,6 +828,10 @@
                     account.type);
             throw new SecurityException(msg);
         }
+        if (!isUserUnlocked(userId)) {
+            Log.w(TAG, "User " + userId + " data is locked. callingUid " + callingUid);
+            return null;
+        }
         long identityToken = clearCallingIdentity();
         try {
             UserAccounts accounts = getUserAccounts(userId);
@@ -1788,6 +1792,11 @@
                     account.type);
             throw new SecurityException(msg);
         }
+        if (!isUserUnlocked(userId)) {
+            Log.w(TAG, "Authtoken not available - user " + userId + " data is locked. callingUid "
+                    + callingUid);
+            return null;
+        }
         long identityToken = clearCallingIdentity();
         try {
             UserAccounts accounts = getUserAccounts(userId);
@@ -2589,7 +2598,7 @@
         // Check to see if the Password should be included to the caller.
         String callerPkg = optionsIn.getString(AccountManager.KEY_ANDROID_PACKAGE_NAME);
         boolean isPasswordForwardingAllowed = isPermitted(
-                callerPkg, uid, Manifest.permission.GET_PASSWORD_PRIVILEGED);
+                callerPkg, uid, Manifest.permission.GET_PASSWORD);
 
         int usrId = UserHandle.getCallingUserId();
         long identityToken = clearCallingIdentity();
@@ -3008,7 +3017,7 @@
         // Check to see if the Password should be included to the caller.
         String callerPkg = loginOptions.getString(AccountManager.KEY_ANDROID_PACKAGE_NAME);
         boolean isPasswordForwardingAllowed = isPermitted(
-                callerPkg, uid, Manifest.permission.GET_PASSWORD_PRIVILEGED);
+                callerPkg, uid, Manifest.permission.GET_PASSWORD);
 
         long identityToken = clearCallingIdentity();
         try {
@@ -4696,26 +4705,20 @@
             ceHelper.getWritableDatabase();
             ceHelper.close();
             if (removeOldDb) {
-                // TODO STOPSHIP - backup file during testing. Remove file before the release
-                Log.i(TAG, "Migration complete - creating backup of old db " + preNDatabaseFile);
-                renameToBakFile(preNDatabaseFile);
+                Slog.i(TAG, "Migration complete - removing pre-N db " + preNDatabaseFile);
+                if (!SQLiteDatabase.deleteDatabase(preNDatabaseFile)) {
+                    Slog.e(TAG, "Cannot remove pre-N db " + preNDatabaseFile);
+                }
             }
             return ceHelper;
         }
 
-        private static void renameToBakFile(File file) {
-            File bakFile = new File(file.getPath() + ".bak");
-            if (!file.renameTo(bakFile)) {
-                Log.e(TAG, "Cannot move file to " + bakFile);
-            }
-        }
-
         private static boolean migratePreNDbToCe(File oldDbFile, File ceDbFile) {
-            Log.i(TAG, "Moving pre-N DB " + oldDbFile + " to CE " + ceDbFile);
+            Slog.i(TAG, "Moving pre-N DB " + oldDbFile + " to CE " + ceDbFile);
             try {
                 FileUtils.copyFileOrThrow(oldDbFile, ceDbFile);
             } catch (IOException e) {
-                Log.e(TAG, "Cannot copy file to " + ceDbFile + " from " + oldDbFile, e);
+                Slog.e(TAG, "Cannot copy file to " + ceDbFile + " from " + oldDbFile, e);
                 // Try to remove potentially damaged file if I/O error occurred
                 deleteDbFileWarnIfFailed(ceDbFile);
                 return false;
diff --git a/services/core/java/com/android/server/am/ActiveServices.java b/services/core/java/com/android/server/am/ActiveServices.java
index 5d1cb8a..b075279 100755
--- a/services/core/java/com/android/server/am/ActiveServices.java
+++ b/services/core/java/com/android/server/am/ActiveServices.java
@@ -689,7 +689,7 @@
     }
 
     public void setServiceForegroundLocked(ComponentName className, IBinder token,
-            int id, Notification notification, boolean removeNotification) {
+            int id, Notification notification, int flags) {
         final int userId = UserHandle.getCallingUserId();
         final long origId = Binder.clearCallingIdentity();
         try {
@@ -711,6 +711,8 @@
                         updateServiceForegroundLocked(r.app, true);
                     }
                     getServiceMap(r.userId).ensureNotStartingBackground(r);
+                    mAm.notifyPackageUse(r.serviceInfo.packageName,
+                                         PackageManager.NOTIFY_PACKAGE_USE_FOREGROUND_SERVICE);
                 } else {
                     if (r.isForeground) {
                         r.isForeground = false;
@@ -719,12 +721,16 @@
                             updateServiceForegroundLocked(r.app, true);
                         }
                     }
-                    if (removeNotification) {
+                    if ((flags & Service.STOP_FOREGROUND_REMOVE) != 0) {
                         r.cancelNotification();
                         r.foregroundId = 0;
                         r.foregroundNoti = null;
                     } else if (r.appInfo.targetSdkVersion >= Build.VERSION_CODES.LOLLIPOP) {
                         r.stripForegroundServiceFlagFromNotification();
+                        if ((flags & Service.STOP_FOREGROUND_DETACH) != 0) {
+                            r.foregroundId = 0;
+                            r.foregroundNoti = null;
+                        }
                     }
                 }
             }
@@ -1752,7 +1758,8 @@
             synchronized (r.stats.getBatteryStats()) {
                 r.stats.startLaunchedLocked();
             }
-            mAm.notifyPackageUse(r.serviceInfo.packageName);
+            mAm.notifyPackageUse(r.serviceInfo.packageName,
+                                 PackageManager.NOTIFY_PACKAGE_USE_SERVICE);
             app.forceProcessStateUpTo(ActivityManager.PROCESS_STATE_SERVICE);
             app.thread.scheduleCreateService(r, r.serviceInfo,
                     mAm.compatibilityInfoForPackageLocked(r.serviceInfo.applicationInfo),
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index 9703d13..9d7ddc7 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -97,6 +97,7 @@
 import android.app.IUidObserver;
 import android.app.IUserSwitchObserver;
 import android.app.Instrumentation;
+import android.app.KeyguardManager;
 import android.app.Notification;
 import android.app.NotificationManager;
 import android.app.PendingIntent;
@@ -340,7 +341,9 @@
 import static com.android.server.am.ActivityManagerDebugConfig.POSTFIX_VISIBLE_BEHIND;
 import static com.android.server.am.ActivityManagerDebugConfig.TAG_AM;
 import static com.android.server.am.ActivityManagerDebugConfig.TAG_WITH_CLASS_NAME;
+import static com.android.server.am.ActivityRecord.RECENTS_ACTIVITY_TYPE;
 import static com.android.server.am.ActivityStackSupervisor.ActivityContainer.FORCE_NEW_TASK_FLAGS;
+import static com.android.server.am.ActivityStackSupervisor.DEFER_RESUME;
 import static com.android.server.am.ActivityStackSupervisor.FORCE_FOCUS;
 import static com.android.server.am.ActivityStackSupervisor.ON_TOP;
 import static com.android.server.am.ActivityStackSupervisor.PRESERVE_WINDOWS;
@@ -1471,6 +1474,7 @@
     static final int NOTIFY_PINNED_STACK_ANIMATION_ENDED_LISTENERS_MSG = 66;
     static final int NOTIFY_FORCED_RESIZABLE_MSG = 67;
     static final int NOTIFY_ACTIVITY_DISMISSING_DOCKED_STACK_MSG = 68;
+    static final int VR_MODE_APPLY_IF_NEEDED_MSG = 69;
 
     static final int FIRST_ACTIVITY_STACK_MSG = 100;
     static final int FIRST_BROADCAST_QUEUE_MSG = 200;
@@ -1942,6 +1946,9 @@
                     startPersistentApps(PackageManager.MATCH_DIRECT_BOOT_UNAWARE);
                 }
                 installEncryptionUnawareProviders(userId);
+                if (msg.obj instanceof ProgressReporter) {
+                    ((ProgressReporter) msg.obj).finish();
+                }
                 break;
             }
             case SYSTEM_USER_CURRENT_MSG: {
@@ -2241,6 +2248,17 @@
                 }
                 vrService.setVrMode(vrMode, requestedPackage, userId, callingPackage);
             } break;
+            case VR_MODE_APPLY_IF_NEEDED_MSG: {
+                final ActivityRecord r = (ActivityRecord) msg.obj;
+                final boolean needsVrMode = r != null && r.requestedVrComponent != null;
+                if (needsVrMode) {
+                    VrManagerInternal vrService =
+                            LocalServices.getService(VrManagerInternal.class);
+                    boolean enable = msg.arg1 == 1;
+                    vrService.setVrMode(enable, r.requestedVrComponent, r.userId,
+                            r.info.getComponentName());
+                }
+            } break;
             }
         }
     };
@@ -3021,6 +3039,11 @@
                 mHandler.obtainMessage(VR_MODE_CHANGE_MSG, 0, 0, r));
     }
 
+    private void applyVrModeIfNeededLocked(ActivityRecord r, boolean enable) {
+        mHandler.sendMessage(
+                mHandler.obtainMessage(VR_MODE_APPLY_IF_NEEDED_MSG, enable ? 1 : 0, 0, r));
+    }
+
     final void showAskCompatModeDialogLocked(ActivityRecord r) {
         Message msg = Message.obtain();
         msg.what = SHOW_COMPAT_MODE_DIALOG_UI_MSG;
@@ -3328,10 +3351,10 @@
         return proc;
     }
 
-    void notifyPackageUse(String packageName) {
+    void notifyPackageUse(String packageName, int reason) {
         IPackageManager pm = AppGlobals.getPackageManager();
         try {
-            pm.notifyPackageUse(packageName);
+            pm.notifyPackageUse(packageName, reason);
         } catch (RemoteException e) {
         }
     }
@@ -3665,29 +3688,27 @@
                 Watchdog.getInstance().processStarted(app.processName, startResult.pid);
             }
 
-            if (DEBUG_PROCESSES) {
-                checkTime(startTime, "startProcess: building log message");
-                StringBuilder buf = mStringBuilder;
-                buf.setLength(0);
-                buf.append("Start proc ");
-                buf.append(startResult.pid);
-                buf.append(':');
-                buf.append(app.processName);
-                buf.append('/');
-                UserHandle.formatUid(buf, uid);
-                if (!isActivityProcess) {
-                    buf.append(" [");
-                    buf.append(entryPoint);
-                    buf.append("]");
-                }
-                buf.append(" for ");
-                buf.append(hostingType);
-                if (hostingNameStr != null) {
-                    buf.append(" ");
-                    buf.append(hostingNameStr);
-                }
-                Slog.i(TAG, buf.toString());
+            checkTime(startTime, "startProcess: building log message");
+            StringBuilder buf = mStringBuilder;
+            buf.setLength(0);
+            buf.append("Start proc ");
+            buf.append(startResult.pid);
+            buf.append(':');
+            buf.append(app.processName);
+            buf.append('/');
+            UserHandle.formatUid(buf, uid);
+            if (!isActivityProcess) {
+                buf.append(" [");
+                buf.append(entryPoint);
+                buf.append("]");
             }
+            buf.append(" for ");
+            buf.append(hostingType);
+            if (hostingNameStr != null) {
+                buf.append(" ");
+                buf.append(hostingNameStr);
+            }
+            Slog.i(TAG, buf.toString());
             app.setPid(startResult.pid);
             app.usingWrapper = startResult.usingWrapper;
             app.removed = false;
@@ -6341,11 +6362,9 @@
                                 || (mBackupTarget.backupMode == BackupRecord.BACKUP_FULL));
             }
 
-            notifyPackageUse(app.instrumentationInfo != null
-                    ? app.instrumentationInfo.packageName
-                    : app.info.packageName);
             if (app.instrumentationClass != null) {
-                notifyPackageUse(app.instrumentationClass.getPackageName());
+                notifyPackageUse(app.instrumentationClass.getPackageName(),
+                                 PackageManager.NOTIFY_PACKAGE_USE_INSTRUMENTATION);
             }
             if (DEBUG_CONFIGURATION) Slog.v(TAG_CONFIGURATION, "Binding proc "
                     + processName + " with config " + mConfiguration);
@@ -6425,7 +6444,8 @@
         if (!badApp && mBackupTarget != null && mBackupTarget.appInfo.uid == app.uid) {
             if (DEBUG_BACKUP) Slog.v(TAG_BACKUP,
                     "New app is backup target, launching agent for " + app);
-            notifyPackageUse(mBackupTarget.appInfo.packageName);
+            notifyPackageUse(mBackupTarget.appInfo.packageName,
+                             PackageManager.NOTIFY_PACKAGE_USE_BACKUP);
             try {
                 thread.scheduleCreateBackupAgent(mBackupTarget.appInfo,
                         compatibilityInfoForPackageLocked(mBackupTarget.appInfo),
@@ -6537,6 +6557,7 @@
 
                     // Some stack visibility might change (e.g. docked stack)
                     mStackSupervisor.ensureActivitiesVisibleLocked(null, 0, !PRESERVE_WINDOWS);
+                    applyVrModeIfNeededLocked(mFocusedActivity, true);
                 }
             }
         } finally {
@@ -9590,8 +9611,13 @@
                     mWindowManager.setDockedStackCreateState(DOCKED_STACK_CREATE_MODE_TOP_OR_LEFT,
                             null /* initialBounds */);
                 }
-                mStackSupervisor.moveTaskToStackLocked(taskId, stackId, toTop, !FORCE_FOCUS,
-                        "moveTaskToStack", ANIMATE);
+                boolean result = mStackSupervisor.moveTaskToStackLocked(taskId, stackId, toTop,
+                        !FORCE_FOCUS, "moveTaskToStack", ANIMATE);
+                if (result && stackId == DOCKED_STACK_ID) {
+                    // If task moved to docked stack - show recents if needed.
+                    mStackSupervisor.moveHomeStackTaskToTop(RECENTS_ACTIVITY_TYPE,
+                            "moveTaskToDockedStack");
+                }
             } finally {
                 Binder.restoreCallingIdentity(ident);
             }
@@ -9724,7 +9750,7 @@
                 } else {
                     mStackSupervisor.resizeStackLocked(stackId, bounds, null /* tempTaskBounds */,
                             null /* tempTaskInsetBounds */, preserveWindows,
-                            allowResizeInDockedMode);
+                            allowResizeInDockedMode, !DEFER_RESUME);
                 }
             }
         } finally {
@@ -9873,7 +9899,6 @@
         boolean isSystemInitiated = callingUid == Process.SYSTEM_UID;
         long ident = Binder.clearCallingIdentity();
         try {
-            final ActivityStack stack = mStackSupervisor.getFocusedStack();
             if (!isSystemInitiated) {
                 task.mLockTaskUid = callingUid;
                 if (task.mLockTaskAuth == LOCK_TASK_AUTH_PINNABLE) {
@@ -9882,11 +9907,12 @@
                     StatusBarManagerInternal statusBarManager =
                             LocalServices.getService(StatusBarManagerInternal.class);
                     if (statusBarManager != null) {
-                        statusBarManager.showScreenPinningRequest();
+                        statusBarManager.showScreenPinningRequest(task.taskId);
                     }
                     return;
                 }
 
+                final ActivityStack stack = mStackSupervisor.getFocusedStack();
                 if (stack == null || task != stack.topTask()) {
                     throw new IllegalArgumentException("Invalid task, not in foreground");
                 }
@@ -9927,15 +9953,13 @@
     }
 
     @Override
-    public void startLockTaskModeOnCurrent() throws RemoteException {
-        enforceCallingPermission(MANAGE_ACTIVITY_STACKS, "startLockTaskModeOnCurrent");
+    public void startSystemLockTaskMode(int taskId) throws RemoteException {
+        enforceCallingPermission(MANAGE_ACTIVITY_STACKS, "startSystemLockTaskMode");
+        // This makes inner call to look as if it was initiated by system.
         long ident = Binder.clearCallingIdentity();
         try {
             synchronized (this) {
-                ActivityRecord r = mStackSupervisor.topRunningActivityLocked();
-                if (r != null) {
-                    startLockTaskModeLocked(r.task);
-                }
+                startLockTaskMode(taskId);
             }
         } finally {
             Binder.restoreCallingIdentity(ident);
@@ -9952,19 +9976,25 @@
 
         final int callingUid = Binder.getCallingUid();
         final int lockTaskUid = lockTask.mLockTaskUid;
-        // Ensure the same caller for startLockTaskMode and stopLockTaskMode.
-        // It is possible lockTaskMode was started by the system process because
-        // android:lockTaskMode is set to a locking value in the application manifest instead of
-        // the app calling startLockTaskMode. In this case {@link TaskRecord.mLockTaskUid} will
-        // be 0, so we compare the callingUid to the {@link TaskRecord.effectiveUid} instead.
-        if (getLockTaskModeState() == ActivityManager.LOCK_TASK_MODE_LOCKED &&
-                callingUid != lockTaskUid
-                && (lockTaskUid != 0
-                    || (lockTaskUid == 0 && callingUid != lockTask.effectiveUid))) {
-            throw new SecurityException("Invalid uid, expected " + lockTaskUid
-                    + " callingUid=" + callingUid + " effectiveUid=" + lockTask.effectiveUid);
+        final int lockTaskModeState = mStackSupervisor.getLockTaskModeState();
+        if (lockTaskModeState == ActivityManager.LOCK_TASK_MODE_NONE) {
+            // Done.
+            return;
+        } else {
+            // Ensure the same caller for startLockTaskMode and stopLockTaskMode.
+            // It is possible lockTaskMode was started by the system process because
+            // android:lockTaskMode is set to a locking value in the application manifest
+            // instead of the app calling startLockTaskMode. In this case
+            // {@link TaskRecord.mLockTaskUid} will be 0, so we compare the callingUid to the
+            // {@link TaskRecord.effectiveUid} instead. Also caller with
+            // {@link MANAGE_ACTIVITY_STACKS} can stop any lock task.
+            if (checkCallingPermission(MANAGE_ACTIVITY_STACKS) != PERMISSION_GRANTED
+                    && callingUid != lockTaskUid
+                    && (lockTaskUid != 0 || callingUid != lockTask.effectiveUid)) {
+                throw new SecurityException("Invalid uid, expected " + lockTaskUid
+                        + " callingUid=" + callingUid + " effectiveUid=" + lockTask.effectiveUid);
+            }
         }
-
         long ident = Binder.clearCallingIdentity();
         try {
             Log.d(TAG, "stopLockTaskMode");
@@ -9978,14 +10008,16 @@
         }
     }
 
+    /**
+     * This API should be called by SystemUI only when user perform certain action to dismiss
+     * lock task mode. We should only dismiss pinned lock task mode in this case.
+     */
     @Override
-    public void stopLockTaskModeOnCurrent() throws RemoteException {
-        enforceCallingPermission(MANAGE_ACTIVITY_STACKS, "stopLockTaskModeOnCurrent");
-        long ident = Binder.clearCallingIdentity();
-        try {
+    public void stopSystemLockTaskMode() throws RemoteException {
+        if (mStackSupervisor.getLockTaskModeState() == ActivityManager.LOCK_TASK_MODE_PINNED) {
             stopLockTaskMode();
-        } finally {
-            Binder.restoreCallingIdentity(ident);
+        } else {
+            mStackSupervisor.showLockTaskToast();
         }
     }
 
@@ -10065,7 +10097,8 @@
                     app.addPackage(cpi.applicationInfo.packageName, cpi.applicationInfo.versionCode,
                             mProcessStats);
                 }
-                notifyPackageUse(cpi.applicationInfo.packageName);
+                notifyPackageUse(cpi.applicationInfo.packageName,
+                                 PackageManager.NOTIFY_PACKAGE_USE_CONTENT_PROVIDER);
             }
         }
         return providers;
@@ -11454,20 +11487,13 @@
         }
 
         synchronized (this) {
-            if (mStackSupervisor.isFocusedUserLockedProfile()) {
+            if (mStackSupervisor.isUserLockedProfile(userId)) {
                 final long ident = Binder.clearCallingIdentity();
                 try {
                     final int currentUserId = mUserController.getCurrentUserIdLocked();
-                    // Get the focused task before launching launcher.
-
                     if (mUserController.isLockScreenDisabled(currentUserId)) {
-
                         // If there is no device lock, we will show the profile's credential page.
-                        // startActivityFromRecentsInner is intercepted and will forward user to it.
-                        if (mFocusedActivity != null) {
-                            mStackSupervisor.startActivityFromRecentsInner(
-                                    mFocusedActivity.task.taskId, null);
-                        }
+                        mActivityStarter.showConfirmDeviceCredential(userId);
                     } else {
                         // Showing launcher to avoid user entering credential twice.
                         startHomeActivityLocked(currentUserId, "notifyLockedProfile");
@@ -11480,6 +11506,19 @@
     }
 
     @Override
+    public void startConfirmDeviceCredentialIntent(Intent intent) {
+        enforceCallingPermission(MANAGE_ACTIVITY_STACKS, "startConfirmDeviceCredentialIntent");
+        synchronized (this) {
+            final long ident = Binder.clearCallingIdentity();
+            try {
+                mActivityStarter.startConfirmCredentialIntent(intent);
+            } finally {
+                Binder.restoreCallingIdentity(ident);
+            }
+        }
+    }
+
+    @Override
     public void stopAppSwitches() {
         if (checkCallingPermission(android.Manifest.permission.STOP_APP_SWITCHES)
                 != PackageManager.PERMISSION_GRANTED) {
@@ -11944,8 +11983,12 @@
         }
         if (receiver != null) {
             // Caller wants result sent back to them.
+            Bundle sendBundle = new Bundle();
+            // At least return the receiver extras
+            sendBundle.putBundle(VoiceInteractionSession.KEY_RECEIVER_EXTRAS,
+                    pae.receiverExtras);
             try {
-                pae.receiver.send(0, null);
+                pae.receiver.send(0, sendBundle);
             } catch (RemoteException e) {
             }
         }
@@ -14261,8 +14304,8 @@
                         + " mNumServiceProcs=" + mNumServiceProcs
                         + " mNewNumServiceProcs=" + mNewNumServiceProcs);
                 pw.println("  mAllowLowerMemLevel=" + mAllowLowerMemLevel
-                        + " mLastMemoryLevel" + mLastMemoryLevel
-                        + " mLastNumProcesses" + mLastNumProcesses);
+                        + " mLastMemoryLevel=" + mLastMemoryLevel
+                        + " mLastNumProcesses=" + mLastNumProcesses);
                 long now = SystemClock.uptimeMillis();
                 pw.print("  mLastIdleTime=");
                         TimeUtils.formatDuration(now, mLastIdleTime, pw);
@@ -16451,10 +16494,9 @@
 
     @Override
     public void setServiceForeground(ComponentName className, IBinder token,
-            int id, Notification notification, boolean removeNotification) {
+            int id, Notification notification, int flags) {
         synchronized(this) {
-            mServices.setServiceForegroundLocked(className, token, id, notification,
-                    removeNotification);
+            mServices.setServiceForegroundLocked(className, token, id, notification, flags);
         }
     }
 
@@ -17135,9 +17177,9 @@
         if (isCallerSystem) {
             if (isProtectedBroadcast
                     || Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(action)
+                    || Intent.ACTION_DISMISS_KEYBOARD_SHORTCUTS.equals(action)
                     || Intent.ACTION_MEDIA_SCANNER_SCAN_FILE.equals(action)
-                    || Intent.ACTION_GET_PERMISSIONS_COUNT.equals(action)
-                    || Intent.ACTION_GET_PERMISSIONS_PACKAGES.equals(action)
+                    || Intent.ACTION_SHOW_KEYBOARD_SHORTCUTS.equals(action)
                     || AppWidgetManager.ACTION_APPWIDGET_CONFIGURE.equals(action)
                     || AppWidgetManager.ACTION_APPWIDGET_UPDATE.equals(action)
                     || LocationManager.HIGH_POWER_REQUEST_CHANGE_ACTION.equals(action)) {
@@ -17949,46 +17991,11 @@
         }
         synchronized (this) {
             final long origId = Binder.clearCallingIdentity();
-            final ActivityStack stack = mStackSupervisor.getStack(fromStackId);
-            if (stack != null) {
-                mWindowManager.deferSurfaceLayout();
-                try {
-                    if (fromStackId == DOCKED_STACK_ID) {
-
-                        // We are moving all tasks from the docked stack to the fullscreen stack,
-                        // which is dismissing the docked stack, so resize all other stacks to
-                        // fullscreen here already so we don't end up with resize trashing.
-                        for (int i = FIRST_STATIC_STACK_ID; i <= LAST_STATIC_STACK_ID; i++) {
-                            if (StackId.isResizeableByDockedStack(i)) {
-                                ActivityStack otherStack = mStackSupervisor.getStack(i);
-                                if (otherStack != null) {
-                                    mStackSupervisor.resizeStackLocked(i,
-                                            null, null, null, PRESERVE_WINDOWS,
-                                            true /* allowResizeInDockedMode */);
-                                }
-                            }
-                        }
-                    }
-                    final ArrayList<TaskRecord> tasks = stack.getAllTasks();
-                    final int size = tasks.size();
-                    if (onTop) {
-                        for (int i = 0; i < size; i++) {
-                            mStackSupervisor.moveTaskToStackLocked(tasks.get(i).taskId,
-                                    FULLSCREEN_WORKSPACE_STACK_ID, onTop, !FORCE_FOCUS,
-                                    "moveTasksToFullscreenStack", ANIMATE);
-                        }
-                    } else {
-                        for (int i = size - 1; i >= 0; i--) {
-                            mStackSupervisor.positionTaskInStackLocked(tasks.get(i).taskId,
-                                    FULLSCREEN_WORKSPACE_STACK_ID, 0);
-                        }
-                    }
-                } finally {
-                    mWindowManager.continueSurfaceLayout();
-                }
-
+            try {
+                mStackSupervisor.moveTasksToFullscreenStackLocked(fromStackId, onTop);
+            } finally {
+                Binder.restoreCallingIdentity(origId);
             }
-            Binder.restoreCallingIdentity(origId);
         }
     }
 
@@ -18210,7 +18217,7 @@
                     for (int stackId : resizedStacks) {
                         final Rect newBounds = mWindowManager.getBoundsForNewConfiguration(stackId);
                         mStackSupervisor.resizeStackLocked(
-                                stackId, newBounds, null, null, false, false);
+                                stackId, newBounds, null, null, false, false, !DEFER_RESUME);
                     }
                 }
             }
@@ -20054,7 +20061,7 @@
                         } else {
                             numEmpty++;
                             if (numEmpty > emptyProcessLimit) {
-                                app.kill("empty #" + numEmpty, DEBUG_PROCESSES);
+                                app.kill("empty #" + numEmpty, true);
                             }
                         }
                         break;
@@ -20120,6 +20127,9 @@
                 if (DEBUG_OOM_ADJ) Slog.d(TAG_OOM_ADJ, "Keeping last mem factor!");
             }
         }
+        if (memFactor != mLastMemoryLevel) {
+            EventLogTags.writeAmMemFactor(memFactor, mLastMemoryLevel);
+        }
         mLastMemoryLevel = memFactor;
         mLastNumProcesses = mLruProcesses.size();
         boolean allChanged = mProcessStats.setMemFactorLocked(memFactor, !isSleeping(), now);
@@ -20692,7 +20702,7 @@
 
     @Override
     public boolean unlockUser(int userId, byte[] token, byte[] secret, IProgressListener listener) {
-        return mUserController.unlockUser(userId, token, secret, new ProgressReporter(0, listener));
+        return mUserController.unlockUser(userId, token, secret, listener);
     }
 
     @Override
@@ -20926,6 +20936,7 @@
                 SleepTokenImpl token = new SleepTokenImpl(tag);
                 mSleepTokens.add(token);
                 updateSleepIfNeededLocked();
+                applyVrModeIfNeededLocked(mFocusedActivity, false);
                 return token;
             }
         }
@@ -20988,6 +20999,43 @@
                 return mStackSupervisor.getTopVisibleActivities();
             }
         }
+
+        @Override
+        public void notifyDockedStackMinimizedChanged(boolean minimized) {
+            synchronized (ActivityManagerService.this) {
+                mStackSupervisor.setDockedStackMinimized(minimized);
+            }
+        }
+
+        @Override
+        public void killForegroundAppsForUser(int userHandle) {
+            synchronized (ActivityManagerService.this) {
+                final ArrayList<ProcessRecord> procs = new ArrayList<>();
+                final int NP = mProcessNames.getMap().size();
+                for (int ip = 0; ip < NP; ip++) {
+                    final SparseArray<ProcessRecord> apps = mProcessNames.getMap().valueAt(ip);
+                    final int NA = apps.size();
+                    for (int ia = 0; ia < NA; ia++) {
+                        final ProcessRecord app = apps.valueAt(ia);
+                        if (app.persistent) {
+                            // We don't kill persistent processes.
+                            continue;
+                        }
+                        if (app.removed) {
+                            procs.add(app);
+                        } else if (app.userId == userHandle && app.foregroundActivities) {
+                            app.removed = true;
+                            procs.add(app);
+                        }
+                    }
+                }
+
+                final int N = procs.size();
+                for (int i = 0; i < N; i++) {
+                    removeProcessLocked(procs.get(i), false, true, "kill all fg");
+                }
+            }
+        }
     }
 
     private final class SleepTokenImpl extends SleepToken {
diff --git a/services/core/java/com/android/server/am/ActivityMetricsLogger.java b/services/core/java/com/android/server/am/ActivityMetricsLogger.java
index 43e1bdf..0331470 100644
--- a/services/core/java/com/android/server/am/ActivityMetricsLogger.java
+++ b/services/core/java/com/android/server/am/ActivityMetricsLogger.java
@@ -98,13 +98,16 @@
      *                   launch
      * @param componentName the component name of the activity being launched
      * @param processRunning whether the process that will contains the activity is already running
+     * @param processSwitch whether the process that will contain the activity didn't have any
+     *                      activity that was stopped, i.e. the started activity is "switching"
+     *                      processes
      */
     void notifyActivityLaunched(int resultCode, @Nullable String componentName,
-            boolean processRunning) {
+            boolean processRunning, boolean processSwitch) {
 
-        if (resultCode < 0 || componentName == null) {
+        if (resultCode < 0 || componentName == null || !processSwitch) {
 
-            // Failed to launch, don't track anything.
+            // Failed to launch or it was not a process switch, so we don't care about the timing.
             reset();
             return;
         }
diff --git a/services/core/java/com/android/server/am/ActivityRecord.java b/services/core/java/com/android/server/am/ActivityRecord.java
index 48f87b6..a7f4314 100755
--- a/services/core/java/com/android/server/am/ActivityRecord.java
+++ b/services/core/java/com/android/server/am/ActivityRecord.java
@@ -1123,6 +1123,13 @@
 
     public void reportFullyDrawnLocked() {
         final long curTime = SystemClock.uptimeMillis();
+        // Normally launch time counts from the point when the activity is resumed, to when the
+        // first window is drawn. However the activity could become visible before it is resumed,
+        // due to some other activity in the same task being launched. In this case we still need
+        // to report launch time to unblock ActivityStarter.startActivityMayWait().
+        if (displayStartTime == 0 && task != null && task.isLaunching) {
+            displayStartTime = curTime;
+        }
         if (displayStartTime != 0) {
             reportLaunchTimeLocked(curTime);
         }
@@ -1188,13 +1195,22 @@
             //service.mUsageStatsService.noteLaunchTime(realActivity, (int)totalTime);
         }
         displayStartTime = 0;
+        task.isLaunching = false;
         stack.mLaunchStartTime = 0;
     }
 
     void windowsDrawnLocked() {
         mStackSupervisor.mActivityMetricsLogger.notifyWindowsDrawn();
+        final long curTime = SystemClock.uptimeMillis();
+        // Normally launch time counts from the point when the activity is resumed, to when the
+        // first window is drawn. However the activity could become visible before it is resumed,
+        // due to some other activity in the same task being launched. In this case we still need
+        // to report launch time to unblock ActivityStarter.startActivityMayWait().
+        if (displayStartTime == 0 && task != null && task.isLaunching) {
+            displayStartTime = curTime;
+        }
         if (displayStartTime != 0) {
-            reportLaunchTimeLocked(SystemClock.uptimeMillis());
+            reportLaunchTimeLocked(curTime);
         }
         mStackSupervisor.sendWaitingVisibleReportLocked(this);
         startTime = 0;
@@ -1396,7 +1412,7 @@
             if (ATTR_ID.equals(attrName)) {
                 createTime = Long.valueOf(attrValue);
             } else if (ATTR_LAUNCHEDFROMUID.equals(attrName)) {
-                launchedFromUid = Integer.valueOf(attrValue);
+                launchedFromUid = Integer.parseInt(attrValue);
             } else if (ATTR_LAUNCHEDFROMPACKAGE.equals(attrName)) {
                 launchedFromPackage = attrValue;
             } else if (ATTR_RESOLVEDTYPE.equals(attrName)) {
@@ -1404,7 +1420,7 @@
             } else if (ATTR_COMPONENTSPECIFIED.equals(attrName)) {
                 componentSpecified = Boolean.valueOf(attrValue);
             } else if (ATTR_USERID.equals(attrName)) {
-                userId = Integer.valueOf(attrValue);
+                userId = Integer.parseInt(attrValue);
             } else if (attrName.startsWith(TaskDescription.ATTR_TASKDESCRIPTION_PREFIX)) {
                 taskDescription.restoreFromXml(attrName, attrValue);
             } else {
diff --git a/services/core/java/com/android/server/am/ActivityStack.java b/services/core/java/com/android/server/am/ActivityStack.java
index 837a1c1..5249131 100644
--- a/services/core/java/com/android/server/am/ActivityStack.java
+++ b/services/core/java/com/android/server/am/ActivityStack.java
@@ -116,6 +116,7 @@
 import android.service.voice.IVoiceInteractionSession;
 import android.util.ArraySet;
 import android.util.EventLog;
+import android.util.Log;
 import android.util.Slog;
 import android.view.Display;
 
@@ -911,6 +912,9 @@
     void setLaunchTime(ActivityRecord r) {
         if (r.displayStartTime == 0) {
             r.fullyDrawnStartTime = r.displayStartTime = SystemClock.uptimeMillis();
+            if (r.task != null) {
+                r.task.isLaunching = true;
+            }
             if (mLaunchStartTime == 0) {
                 startLaunchTraces(r.packageName);
                 mLaunchStartTime = mFullyDrawnStartTime = r.displayStartTime;
@@ -925,6 +929,9 @@
         // Make sure that there is no activity waiting for this to launch.
         if (mStackSupervisor.mWaitingActivityLaunched.isEmpty()) {
             r.displayStartTime = r.fullyDrawnStartTime = 0;
+            if (r.task != null) {
+                r.task.isLaunching = false;
+            }
         } else {
             mStackSupervisor.removeTimeoutsForActivityLocked(r);
             mStackSupervisor.scheduleIdleTimeoutLocked(r);
@@ -3431,8 +3438,10 @@
                 mWindowManager.prepareAppTransition(transit, false);
                 mWindowManager.setAppVisibility(r.appToken, false);
                 mWindowManager.executeAppTransition();
+                mStackSupervisor.mWaitingVisibleActivities.add(r);
             }
-            return finishCurrentActivityLocked(r, FINISH_AFTER_PAUSE, oomAdj) == null;
+            return finishCurrentActivityLocked(r, (r.visible || r.nowVisible) ?
+                    FINISH_AFTER_VISIBLE : FINISH_AFTER_PAUSE, oomAdj) == null;
         } else {
             if (DEBUG_PAUSE) Slog.v(TAG_PAUSE, "Finish waiting for pause of: " + r);
         }
@@ -4362,12 +4371,12 @@
         if (DEBUG_SWITCH || DEBUG_CONFIGURATION) Slog.v(TAG_CONFIGURATION,
                 "Ensuring correct configuration: " + r);
 
-        // Short circuit: if the two configurations are the exact same
-        // object (the common case), then there is nothing to do.
+        // Short circuit: if the two configurations are equal (the common case), then there is
+        // nothing to do.
         final Configuration newConfig = mService.mConfiguration;
         final Configuration taskConfig = r.task.mOverrideConfig;
-        if (r.configuration == newConfig
-                && r.taskConfigOverride == taskConfig
+        if (r.configuration.equals(newConfig)
+                && r.taskConfigOverride.equals(taskConfig)
                 && !r.forceNewConfig) {
             if (DEBUG_SWITCH || DEBUG_CONFIGURATION) Slog.v(TAG_CONFIGURATION,
                     "Configuration unchanged in " + r);
@@ -4396,7 +4405,7 @@
                     "Configuration no differences in " + r);
             // There are no significant differences, so we won't relaunch but should still deliver
             // the new configuration to the client process.
-            r.scheduleConfigurationChanged(taskConfig, false);
+            r.scheduleConfigurationChanged(taskConfig, true);
             return true;
         }
 
@@ -5023,10 +5032,20 @@
     }
 
     void positionTask(final TaskRecord task, int position) {
+        final ActivityRecord topRunningActivity = task.topRunningActivityLocked();
+        final boolean wasResumed = topRunningActivity == task.stack.mResumedActivity;
         final ActivityStack prevStack = preAddTask(task, "positionTask");
         task.stack = this;
         insertTaskAtPosition(task, position);
         postAddTask(task, prevStack);
+        if (wasResumed) {
+            if (mResumedActivity != null) {
+                Log.wtf(TAG, "mResumedActivity was already set when moving mResumedActivity from"
+                        + " other stack to this stack mResumedActivity=" + mResumedActivity
+                        + " other mResumedActivity=" + topRunningActivity);
+            }
+            mResumedActivity = topRunningActivity;
+        }
     }
 
     private ActivityStack preAddTask(TaskRecord task, String reason) {
diff --git a/services/core/java/com/android/server/am/ActivityStackSupervisor.java b/services/core/java/com/android/server/am/ActivityStackSupervisor.java
index ab3a0b3..f281683 100644
--- a/services/core/java/com/android/server/am/ActivityStackSupervisor.java
+++ b/services/core/java/com/android/server/am/ActivityStackSupervisor.java
@@ -17,6 +17,7 @@
 package com.android.server.am;
 
 import android.Manifest;
+import android.annotation.UserIdInt;
 import android.app.Activity;
 import android.app.ActivityManager;
 import android.app.ActivityManager.RunningTaskInfo;
@@ -166,6 +167,8 @@
 import static com.android.server.am.ActivityStack.ActivityState.RESUMED;
 import static com.android.server.am.ActivityStack.ActivityState.STOPPED;
 import static com.android.server.am.ActivityStack.ActivityState.STOPPING;
+import static com.android.server.am.ActivityStack.STACK_INVISIBLE;
+import static com.android.server.am.ActivityStack.STACK_VISIBLE;
 import static com.android.server.am.TaskRecord.LOCK_TASK_AUTH_DONT_LOCK;
 import static com.android.server.am.TaskRecord.LOCK_TASK_AUTH_LAUNCHABLE;
 import static com.android.server.am.TaskRecord.LOCK_TASK_AUTH_LAUNCHABLE_PRIV;
@@ -238,6 +241,9 @@
     // Restore task from the saved recents if it can't be found in any live stack.
     static final boolean RESTORE_FROM_RECENTS = true;
 
+    // Don't execute any calls to resume.
+    static final boolean DEFER_RESUME = true;
+
     // Activity actions an app cannot start if it uses a permission which is not granted.
     private static final ArrayMap<String, String> ACTION_TO_RUNTIME_PERMISSION =
             new ArrayMap<>();
@@ -342,9 +348,6 @@
     /** Used on user changes */
     final ArrayList<UserState> mStartingUsers = new ArrayList<>();
 
-    /** Used to queue up any background users being started */
-    final ArrayList<UserState> mStartingBackgroundUsers = new ArrayList<>();
-
     /** Set to indicate whether to issue an onUserLeaving callback when a newly launched activity
      * is being brought in front of us. */
     boolean mUserLeaving = false;
@@ -432,6 +435,20 @@
      */
     private final ArraySet<Integer> mResizingTasksDuringAnimation = new ArraySet<>();
 
+
+    /**
+     * If set to {@code false} all calls to resize the docked stack {@link #resizeDockedStackLocked}
+     * will be ignored. Useful for the case where the caller is handling resizing of other stack and
+     * moving tasks around and doesn't want dock stack to be resized due to an automatic trigger
+     * like the docked stack going empty.
+     */
+    private boolean mAllowDockedStackResize = true;
+
+    /**
+     * Is dock currently minimized.
+     */
+    boolean mIsDockMinimized;
+
     /**
      * Description of a request to start a new activity, which has been held
      * due to app switches being disabled.
@@ -615,7 +632,7 @@
     /** Returns true if the focus activity was adjusted to the home stack top activity. */
     boolean moveHomeStackTaskToTop(int homeStackTaskType, String reason) {
         if (homeStackTaskType == RECENTS_ACTIVITY_TYPE) {
-            mWindowManager.showRecentApps();
+            mWindowManager.showRecentApps(false /* fromHome */);
             return false;
         }
 
@@ -636,7 +653,7 @@
         }
 
         if (homeStackTaskType == RECENTS_ACTIVITY_TYPE) {
-            mWindowManager.showRecentApps();
+            mWindowManager.showRecentApps(false /* fromHome */);
             return false;
         }
 
@@ -716,10 +733,44 @@
         return null;
     }
 
-    boolean isFocusedUserLockedProfile() {
-        final int userId = mFocusedStack.topRunningActivityLocked().userId;
-        return userId != UserHandle.myUserId()
-                && mService.mUserController.shouldConfirmCredentials(userId);
+    /**
+     * TODO: Handle freefom mode.
+     * @return true when credential confirmation is needed for the user and there is any
+     *         activity started by the user in any visible stack.
+     */
+    boolean isUserLockedProfile(@UserIdInt int userId) {
+        if (!mService.mUserController.shouldConfirmCredentials(userId)) {
+            return false;
+        }
+        final ActivityStack fullScreenStack = getStack(FULLSCREEN_WORKSPACE_STACK_ID);
+        final ActivityStack dockedStack = getStack(DOCKED_STACK_ID);
+        final ActivityStack[] activityStacks = new ActivityStack[] {fullScreenStack, dockedStack};
+        for (final ActivityStack activityStack : activityStacks) {
+            if (activityStack == null) {
+                continue;
+            }
+            if (activityStack.topRunningActivityLocked() == null) {
+                continue;
+            }
+            if (activityStack.getStackVisibilityLocked(null) == STACK_INVISIBLE) {
+                continue;
+            }
+            if (activityStack.isDockedStack() && mIsDockMinimized) {
+                continue;
+            }
+            final TaskRecord topTask = activityStack.topTask();
+            if (topTask == null) {
+                continue;
+            }
+            // To handle the case that work app is in the task but just is not the top one.
+            for (int i = topTask.mActivities.size() - 1; i >= 0; i--) {
+                final ActivityRecord activityRecord = topTask.mActivities.get(i);
+                if (activityRecord.userId == userId) {
+                    return true;
+                }
+            }
+        }
+        return false;
     }
 
     void setNextTaskIdForUserLocked(int taskId, int userId) {
@@ -1162,7 +1213,8 @@
                 // Home process is the root process of the task.
                 mService.mHomeProcess = task.mActivities.get(0).app;
             }
-            mService.notifyPackageUse(r.intent.getComponent().getPackageName());
+            mService.notifyPackageUse(r.intent.getComponent().getPackageName(),
+                                      PackageManager.NOTIFY_PACKAGE_USE_ACTIVITY);
             r.sleeping = false;
             r.forceNewConfig = false;
             mService.showAskCompatModeDialogLocked(r);
@@ -1794,7 +1846,7 @@
                 if (StackId.resizeStackWithLaunchBounds(stackId)) {
                     resizeStackLocked(stackId, bounds,
                             null /* tempTaskBounds */, null /* tempTaskInsetBounds */,
-                            !PRESERVE_WINDOWS, true /* allowResizeInDockedMode */);
+                            !PRESERVE_WINDOWS, true /* allowResizeInDockedMode */, !DEFER_RESUME);
                 } else {
                     // WM resizeTask must be done after the task is moved to the correct stack,
                     // because Task's setBounds() also updates dim layer's bounds, but that has
@@ -1921,7 +1973,7 @@
     }
 
     void resizeStackLocked(int stackId, Rect bounds, Rect tempTaskBounds, Rect tempTaskInsetBounds,
-            boolean preserveWindows, boolean allowResizeInDockedMode) {
+            boolean preserveWindows, boolean allowResizeInDockedMode, boolean deferResume) {
         if (stackId == DOCKED_STACK_ID) {
             resizeDockedStackLocked(bounds, tempTaskBounds, tempTaskInsetBounds, null, null,
                     preserveWindows);
@@ -1943,7 +1995,10 @@
         mWindowManager.deferSurfaceLayout();
         try {
             resizeStackUncheckedLocked(stack, bounds, tempTaskBounds, tempTaskInsetBounds);
-            ensureConfigurationAndResume(stack, stack.topRunningActivityLocked(), preserveWindows);
+            if (!deferResume) {
+                ensureConfigurationAndResume(
+                        stack, stack.topRunningActivityLocked(), preserveWindows);
+            }
         } finally {
             mWindowManager.continueSurfaceLayout();
             Trace.traceEnd(TRACE_TAG_ACTIVITY_MANAGER);
@@ -2030,9 +2085,64 @@
         }
     }
 
+    void moveTasksToFullscreenStackLocked(int fromStackId, boolean onTop) {
+        final ActivityStack stack = getStack(fromStackId);
+        if (stack == null) {
+            return;
+        }
+
+        mWindowManager.deferSurfaceLayout();
+        try {
+            if (fromStackId == DOCKED_STACK_ID) {
+
+                // We are moving all tasks from the docked stack to the fullscreen stack,
+                // which is dismissing the docked stack, so resize all other stacks to
+                // fullscreen here already so we don't end up with resize trashing.
+                for (int i = FIRST_STATIC_STACK_ID; i <= LAST_STATIC_STACK_ID; i++) {
+                    if (StackId.isResizeableByDockedStack(i)) {
+                        ActivityStack otherStack = getStack(i);
+                        if (otherStack != null) {
+                            resizeStackLocked(i, null, null, null, PRESERVE_WINDOWS,
+                                    true /* allowResizeInDockedMode */, DEFER_RESUME);
+                        }
+                    }
+                }
+
+                // Also disable docked stack resizing since we have manually adjusted the
+                // size of other stacks above and we don't want to trigger a docked stack
+                // resize when we remove task from it below and it is detached from the
+                // display because it no longer contains any tasks.
+                mAllowDockedStackResize = false;
+            }
+            final ArrayList<TaskRecord> tasks = stack.getAllTasks();
+            final int size = tasks.size();
+            if (onTop) {
+                for (int i = 0; i < size; i++) {
+                    moveTaskToStackLocked(tasks.get(i).taskId,
+                            FULLSCREEN_WORKSPACE_STACK_ID, onTop, onTop /*forceFocus*/,
+                            "moveTasksToFullscreenStack", ANIMATE);
+                }
+            } else {
+                for (int i = size - 1; i >= 0; i--) {
+                    positionTaskInStackLocked(tasks.get(i).taskId,
+                            FULLSCREEN_WORKSPACE_STACK_ID, 0);
+                }
+            }
+        } finally {
+            mAllowDockedStackResize = true;
+            mWindowManager.continueSurfaceLayout();
+        }
+    }
+
     void resizeDockedStackLocked(Rect dockedBounds, Rect tempDockedTaskBounds,
             Rect tempDockedTaskInsetBounds,
             Rect tempOtherTaskBounds, Rect tempOtherTaskInsetBounds, boolean preserveWindows) {
+
+        if (!mAllowDockedStackResize) {
+            // Docked stack resize currently disabled.
+            return;
+        }
+
         final ActivityStack stack = getStack(DOCKED_STACK_ID);
         if (stack == null) {
             Slog.w(TAG, "resizeDockedStackLocked: docked stack not found");
@@ -2042,6 +2152,8 @@
         Trace.traceBegin(TRACE_TAG_ACTIVITY_MANAGER, "am.resizeDockedStack");
         mWindowManager.deferSurfaceLayout();
         try {
+            // Don't allow re-entry while resizing. E.g. due to docked stack detaching.
+            mAllowDockedStackResize = false;
             ActivityRecord r = stack.topRunningActivityLocked();
             resizeStackUncheckedLocked(stack, dockedBounds, tempDockedTaskBounds,
                     tempDockedTaskInsetBounds);
@@ -2052,20 +2164,7 @@
                 // The dock stack either was dismissed or went fullscreen, which is kinda the same.
                 // In this case we make all other static stacks fullscreen and move all
                 // docked stack tasks to the fullscreen stack.
-                for (int i = FIRST_STATIC_STACK_ID; i <= LAST_STATIC_STACK_ID; i++) {
-                    if (StackId.isResizeableByDockedStack(i) && getStack(i) != null) {
-                        resizeStackLocked(i, null, null, null, preserveWindows,
-                                true /* allowResizeInDockedMode */);
-                    }
-                }
-
-                ArrayList<TaskRecord> tasks = stack.getAllTasks();
-                final int count = tasks.size();
-                for (int i = 0; i < count; i++) {
-                    moveTaskToStackLocked(tasks.get(i).taskId,
-                            FULLSCREEN_WORKSPACE_STACK_ID, ON_TOP, FORCE_FOCUS, "resizeStack",
-                            false /* animate */);
-                }
+                moveTasksToFullscreenStackLocked(DOCKED_STACK_ID, ON_TOP);
 
                 // stack shouldn't contain anymore activities, so nothing to resume.
                 r = null;
@@ -2080,12 +2179,13 @@
                     if (StackId.isResizeableByDockedStack(i) && getStack(i) != null) {
                         resizeStackLocked(i, tempRect, tempOtherTaskBounds,
                                 tempOtherTaskInsetBounds, preserveWindows,
-                                true /* allowResizeInDockedMode */);
+                                true /* allowResizeInDockedMode */, !DEFER_RESUME);
                     }
                 }
             }
             ensureConfigurationAndResume(stack, r, preserveWindows);
         } finally {
+            mAllowDockedStackResize = true;
             mWindowManager.continueSurfaceLayout();
             Trace.traceEnd(TRACE_TAG_ACTIVITY_MANAGER);
         }
@@ -2270,7 +2370,7 @@
         final ActivityRecord r = task.getTopActivity();
         final ActivityStack prevStack = task.stack;
         final boolean wasFocused = isFocusedStack(prevStack) && (topRunningActivityLocked() == r);
-        final boolean wasResumed = wasFocused && (prevStack.mResumedActivity == r);
+        final boolean wasResumed = prevStack.mResumedActivity == r;
         // In some cases the focused stack isn't the front stack. E.g. pinned stack.
         // Whenever we are moving the top activity from the front stack we want to make sure to move
         // the stack to the front.
@@ -2430,6 +2530,12 @@
         try {
             final TaskRecord task = r.task;
 
+            if (r == task.stack.getVisibleBehindActivity()) {
+                // An activity can't be pinned and visible behind at the same time. Go ahead and
+                // release it from been visible behind before pinning.
+                requestVisibleBehindLocked(r, false);
+            }
+
             // Need to make sure the pinned stack exist so we can resize it below...
             final ActivityStack stack = getStack(PINNED_STACK_ID, CREATE_IF_NEEDED, ON_TOP);
 
@@ -2438,7 +2544,7 @@
             // animation bounds for the pinned stack to the desired bounds the caller wants.
             resizeStackLocked(PINNED_STACK_ID, task.mBounds, null /* tempTaskBounds */,
                     null /* tempTaskInsetBounds */, !PRESERVE_WINDOWS,
-                    true /* allowResizeInDockedMode */);
+                    true /* allowResizeInDockedMode */, !DEFER_RESUME);
 
             if (task.mActivities.size() == 1) {
                 // There is only one activity in the task. So, we can just move the task over to
@@ -2481,8 +2587,6 @@
         stack.positionTask(task, position);
         // The task might have already been running and its visibility needs to be synchronized with
         // the visibility of the stack / windows.
-        stack.ensureActivityConfigurationLocked(task.topRunningActivityLocked(), 0,
-                !PRESERVE_WINDOWS);
         stack.ensureActivitiesVisibleLocked(null, 0, !PRESERVE_WINDOWS);
         resumeFocusedStackTopActivityLocked();
     }
@@ -2689,6 +2793,14 @@
                     "requestVisibleBehind: r=" + r + " visible=" + visible + " stack is null");
             return false;
         }
+
+        if (visible && !StackId.activitiesCanRequestVisibleBehind(stack.mStackId)) {
+            if (DEBUG_VISIBLE_BEHIND) Slog.d(TAG_VISIBLE_BEHIND, "requestVisibleBehind: r=" + r
+                    + " visible=" + visible + " stackId=" + stack.mStackId
+                    + " can't contain visible behind activities");
+            return false;
+        }
+
         final boolean isVisible = stack.hasVisibleBehindActivity();
         if (DEBUG_VISIBLE_BEHIND) Slog.d(TAG_VISIBLE_BEHIND,
                 "requestVisibleBehind r=" + r + " visible=" + visible + " isVisible=" + isVisible);
@@ -3286,6 +3398,7 @@
         info.displayId = Display.DEFAULT_DISPLAY;
         info.stackId = stack.mStackId;
         info.userId = stack.mCurrentUser;
+        info.visible = stack.getStackVisibilityLocked(null) == STACK_VISIBLE;
 
         ArrayList<TaskRecord> tasks = stack.getAllTasks();
         final int numTasks = tasks.size();
@@ -3308,6 +3421,9 @@
         info.taskNames = taskNames;
         info.taskBounds = taskBounds;
         info.taskUserIds = taskUserIds;
+
+        final ActivityRecord top = stack.topRunningActivityLocked();
+        info.topActivity = top != null ? top.intent.getComponent() : null;
         return info;
     }
 
@@ -3576,6 +3692,22 @@
         }
     }
 
+    void setDockedStackMinimized(boolean minimized) {
+        mIsDockMinimized = minimized;
+        if (minimized) {
+            // Docked stack is not visible, no need to confirm credentials for its top activity.
+            return;
+        }
+        final ActivityStack dockedStack = getStack(StackId.DOCKED_STACK_ID);
+        if (dockedStack == null) {
+            return;
+        }
+        final ActivityRecord top = dockedStack.topRunningActivityLocked();
+        if (top != null && mService.mUserController.shouldConfirmCredentials(top.userId)) {
+            mService.mActivityStarter.showConfirmDeviceCredential(top.userId);
+        }
+    }
+
     private final class ActivityStackSupervisorHandler extends Handler {
 
         public ActivityStackSupervisorHandler(Looper looper) {
@@ -4227,28 +4359,31 @@
                 ? new ActivityOptions(bOptions) : null;
         final int launchStackId = (activityOptions != null)
                 ? activityOptions.getLaunchStackId() : INVALID_STACK_ID;
-
         if (launchStackId == HOME_STACK_ID) {
             throw new IllegalArgumentException("startActivityFromRecentsInner: Task "
                     + taskId + " can't be launch in the home stack.");
         }
+
+        if (launchStackId == DOCKED_STACK_ID) {
+            mWindowManager.setDockedStackCreateState(
+                    activityOptions.getDockCreateMode(), null /* initialBounds */);
+
+            // Defer updating the stack in which recents is until the app transition is done, to
+            // not run into issues where we still need to draw the task in recents but the
+            // docked stack is already created.
+            deferUpdateBounds(HOME_STACK_ID);
+            mWindowManager.prepareAppTransition(TRANSIT_DOCK_TASK_FROM_RECENTS, false);
+        }
+
         task = anyTaskForIdLocked(taskId, RESTORE_FROM_RECENTS, launchStackId);
         if (task == null) {
+            continueUpdateBounds(HOME_STACK_ID);
+            mWindowManager.executeAppTransition();
             throw new IllegalArgumentException(
                     "startActivityFromRecentsInner: Task " + taskId + " not found.");
         }
 
         if (launchStackId != INVALID_STACK_ID) {
-            if (launchStackId == DOCKED_STACK_ID) {
-                mWindowManager.setDockedStackCreateState(
-                        activityOptions.getDockCreateMode(), null /* initialBounds */);
-
-                // Defer updating the stack in which recents is until the app transition is done, to
-                // not run into issues where we still need to draw the task in recents but the
-                // docked stack is already created.
-                deferUpdateBounds(HOME_STACK_ID);
-                mWindowManager.prepareAppTransition(TRANSIT_DOCK_TASK_FROM_RECENTS, false);
-            }
             if (task.stack.mStackId != launchStackId) {
                 moveTaskToStackLocked(
                         taskId, launchStackId, ON_TOP, FORCE_FOCUS, "startActivityFromRecents",
@@ -4276,12 +4411,12 @@
         intent = task.intent;
         intent.addFlags(Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY);
         userId = task.userId;
-            int result = mService.startActivityInPackage(callingUid, callingPackage, intent, null,
-                    null, null, 0, 0, bOptions, userId, null, task);
-            if (launchStackId == DOCKED_STACK_ID) {
-                setResizingDuringAnimation(task.taskId);
-            }
-            return result;
+        int result = mService.startActivityInPackage(callingUid, callingPackage, intent, null,
+                null, null, 0, 0, bOptions, userId, null, task);
+        if (launchStackId == DOCKED_STACK_ID) {
+            setResizingDuringAnimation(task.taskId);
+        }
+        return result;
     }
 
     /**
diff --git a/services/core/java/com/android/server/am/ActivityStartInterceptor.java b/services/core/java/com/android/server/am/ActivityStartInterceptor.java
index 785dd47..566d8d9 100644
--- a/services/core/java/com/android/server/am/ActivityStartInterceptor.java
+++ b/services/core/java/com/android/server/am/ActivityStartInterceptor.java
@@ -29,6 +29,7 @@
 import static android.content.Intent.FLAG_ACTIVITY_TASK_ON_HOME;
 import static android.content.pm.ApplicationInfo.FLAG_SUSPENDED;
 
+import android.app.ActivityOptions;
 import android.app.KeyguardManager;
 import android.app.admin.DevicePolicyManagerInternal;
 import android.content.IIntentSender;
@@ -76,6 +77,7 @@
     ActivityInfo mAInfo;
     String mResolvedType;
     TaskRecord mInTask;
+    ActivityOptions mActivityOptions;
 
     ActivityStartInterceptor(ActivityManagerService service, ActivityStackSupervisor supervisor) {
         mService = service;
@@ -92,7 +94,7 @@
     }
 
     void intercept(Intent intent, ResolveInfo rInfo, ActivityInfo aInfo, String resolvedType,
-            TaskRecord inTask, int callingPid, int callingUid) {
+            TaskRecord inTask, int callingPid, int callingUid, ActivityOptions activityOptions) {
         mUserManager = UserManager.get(mService.mContext);
         mIntent = intent;
         mCallingPid = callingPid;
@@ -101,6 +103,7 @@
         mAInfo = aInfo;
         mResolvedType = resolvedType;
         mInTask = inTask;
+        mActivityOptions = activityOptions;
         if (interceptSuspendPackageIfNeed()) {
             // Skip the rest of interceptions as the package is suspended by device admin so
             // no user action can undo this.
@@ -177,6 +180,12 @@
             mIntent.putExtra(EXTRA_TASK_ID, mInTask.taskId);
             mInTask = null;
         }
+        if (mActivityOptions == null) {
+            mActivityOptions = ActivityOptions.makeBasic();
+        }
+        // Showing credential confirmation activity in home task to avoid stopping multi-windowed
+        // mode after showing the full-screen credential confirmation activity.
+        mActivityOptions.setLaunchTaskId(mSupervisor.getHomeActivity().task.taskId);
 
         final UserInfo parent = mUserManager.getProfileParent(mUserId);
         mRInfo = mSupervisor.resolveIntent(mIntent, mResolvedType, parent.id);
diff --git a/services/core/java/com/android/server/am/ActivityStarter.java b/services/core/java/com/android/server/am/ActivityStarter.java
index 6fba8c8..6622b34 100644
--- a/services/core/java/com/android/server/am/ActivityStarter.java
+++ b/services/core/java/com/android/server/am/ActivityStarter.java
@@ -33,6 +33,7 @@
 import static android.app.ActivityManager.StackId.PINNED_STACK_ID;
 import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TASK;
 import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TOP;
+import static android.content.Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS;
 import static android.content.Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT;
 import static android.content.Intent.FLAG_ACTIVITY_MULTIPLE_TASK;
 import static android.content.Intent.FLAG_ACTIVITY_NEW_DOCUMENT;
@@ -82,9 +83,11 @@
 import android.app.IActivityContainer;
 import android.app.IActivityManager;
 import android.app.IApplicationThread;
+import android.app.KeyguardManager;
 import android.app.PendingIntent;
 import android.app.ProfilerInfo;
 import android.content.ComponentName;
+import android.content.Context;
 import android.content.IIntentSender;
 import android.content.Intent;
 import android.content.IntentSender;
@@ -137,6 +140,7 @@
 
     // Share state variable among methods when starting an activity.
     private ActivityRecord mStartActivity;
+    private ActivityRecord mReusedActivity;
     private Intent mIntent;
     private int mCallingUid;
     private ActivityOptions mOptions;
@@ -379,7 +383,8 @@
         }
 
         mInterceptor.setStates(userId, realCallingPid, realCallingUid, startFlags, callingPackage);
-        mInterceptor.intercept(intent, rInfo, aInfo, resolvedType, inTask, callingPid, callingUid);
+        mInterceptor.intercept(intent, rInfo, aInfo, resolvedType, inTask, callingPid, callingUid,
+                options);
         intent = mInterceptor.mIntent;
         rInfo = mInterceptor.mRInfo;
         aInfo = mInterceptor.mAInfo;
@@ -387,7 +392,7 @@
         inTask = mInterceptor.mInTask;
         callingPid = mInterceptor.mCallingPid;
         callingUid = mInterceptor.mCallingUid;
-
+        options = mInterceptor.mActivityOptions;
         if (abort) {
             if (resultRecord != null) {
                 resultStack.sendActivityResultLocked(-1, resultRecord, resultWho, requestCode,
@@ -522,8 +527,13 @@
 
         doPendingActivityLaunchesLocked(false);
 
-        err = startActivityUnchecked(
-                r, sourceRecord, voiceSession, voiceInteractor, startFlags, true, options, inTask);
+        try {
+            mService.mWindowManager.deferSurfaceLayout();
+            err = startActivityUnchecked(r, sourceRecord, voiceSession, voiceInteractor, startFlags,
+                    true, options, inTask);
+        } finally {
+            mService.mWindowManager.continueSurfaceLayout();
+        }
         postStartActivityUncheckedProcessing(r, err, stack.mStackId);
         return err;
     }
@@ -556,7 +566,7 @@
                 // recents into docked stack. We don't want the launched activity to be alone in a
                 // docked stack, so we want to immediately launch recents too.
                 if (DEBUG_RECENTS) Slog.d(TAG, "Scheduling recents launch.");
-                mWindowManager.showRecentApps();
+                mWindowManager.showRecentApps(true /* fromHome */);
                 return;
             }
         }
@@ -578,7 +588,7 @@
                 null /*voiceInteractor*/, null /*resultTo*/, null /*resultWho*/,
                 0 /*requestCode*/, 0 /*callingPid*/, 0 /*callingUid*/, null /*callingPackage*/,
                 0 /*realCallingPid*/, 0 /*realCallingUid*/, 0 /*startFlags*/, null /*options*/,
-                false /*ignoreTargetSecurity*/, false /*componentSpecified*/,  null /*outActivity*/,
+                false /*ignoreTargetSecurity*/, false /*componentSpecified*/, null /*outActivity*/,
                 null /*container*/, null /*inTask*/);
         if (mSupervisor.inResumeTopActivity) {
             // If we are in resume section already, home activity will be initialized, but not
@@ -588,6 +598,56 @@
         }
     }
 
+    void showConfirmDeviceCredential(int userId) {
+        // First, retrieve the stack that we want to resume after credential is confirmed.
+        ActivityStack targetStack;
+        ActivityStack fullscreenStack =
+                mSupervisor.getStack(FULLSCREEN_WORKSPACE_STACK_ID);
+        if (fullscreenStack != null &&
+                fullscreenStack.getStackVisibilityLocked(null) != ActivityStack.STACK_INVISIBLE) {
+            // Single window case and the case that the docked stack is shown with fullscreen stack.
+            targetStack = fullscreenStack;
+        } else {
+            // The case that the docked stack is shown with recent.
+            targetStack = mSupervisor.getStack(HOME_STACK_ID);
+        }
+        if (targetStack == null) {
+            return;
+        }
+        final KeyguardManager km = (KeyguardManager) mService.mContext
+                .getSystemService(Context.KEYGUARD_SERVICE);
+        final Intent credential =
+                km.createConfirmDeviceCredentialIntent(null, null, userId);
+        final ActivityRecord activityRecord = targetStack.topRunningActivityLocked();
+        if (activityRecord != null) {
+            final IIntentSender target = mService.getIntentSenderLocked(
+                    ActivityManager.INTENT_SENDER_ACTIVITY,
+                    activityRecord.launchedFromPackage,
+                    activityRecord.launchedFromUid,
+                    activityRecord.userId,
+                    null, null, 0,
+                    new Intent[] { activityRecord.intent },
+                    new String[] { activityRecord.resolvedType },
+                    PendingIntent.FLAG_CANCEL_CURRENT |
+                            PendingIntent.FLAG_ONE_SHOT |
+                            PendingIntent.FLAG_IMMUTABLE,
+                    null);
+            credential.putExtra(Intent.EXTRA_INTENT, new IntentSender(target));
+            // Show confirm credentials activity.
+            startConfirmCredentialIntent(credential);
+        }
+    }
+
+    void startConfirmCredentialIntent(Intent intent) {
+        intent.addFlags(FLAG_ACTIVITY_NEW_TASK |
+                FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS |
+                FLAG_ACTIVITY_TASK_ON_HOME);
+        final ActivityOptions options = ActivityOptions.makeBasic();
+        options.setLaunchTaskId(mSupervisor.getHomeActivity().task.taskId);
+        mService.mContext.startActivityAsUser(intent, options.toBundle(),
+                UserHandle.CURRENT);
+    }
+
     final int startActivityMayWait(IApplicationThread caller, int callingUid,
             String callingPackage, Intent intent, String resolvedType,
             IVoiceInteractionSession voiceSession, IVoiceInteractor voiceInteractor,
@@ -785,15 +845,40 @@
 
             final String componentName = outRecord[0] != null ? outRecord[0].shortComponentName
                     : null;
-            final boolean processRunning = outRecord[0] != null &&
-                    mService.mProcessNames.get(outRecord[0].processName,
-                            outRecord[0].appInfo.uid) != null;
+            final ActivityRecord launchedActivity = mReusedActivity != null
+                    ? mReusedActivity : outRecord[0];
+            final ProcessRecord processRecord = launchedActivity != null
+                    ? mService.mProcessNames.get(launchedActivity.processName,
+                            launchedActivity.appInfo.uid)
+                    : null;
+            final boolean processRunning = processRecord != null;
+
+            // We consider this a "process switch" if the process of the activity that gets launched
+            // didn't have an activity that was in started state. In this case, we assume that lot
+            // of caches might be purged so the time until it produces the first frame is very
+            // interesting.
+            final boolean processSwitch = processRecord == null
+                    || !hasStartedActivity(processRecord, launchedActivity);
             mSupervisor.mActivityMetricsLogger.notifyActivityLaunched(res, componentName,
-                    processRunning);
+                    processRunning, processSwitch);
             return res;
         }
     }
 
+    final boolean hasStartedActivity(ProcessRecord record, ActivityRecord launchedActivity) {
+        final ArrayList<ActivityRecord> activities = record.activities;
+        for (int i = activities.size() - 1; i >= 0; i--) {
+            final ActivityRecord activity = activities.get(i);
+            if (launchedActivity == activity) {
+                continue;
+            }
+            if (!activity.stopped) {
+                return true;
+            }
+        }
+        return false;
+    }
+
     final int startActivities(IApplicationThread caller, int callingUid, String callingPackage,
             Intent[] intents, String[] resolvedTypes, IBinder resultTo,
             Bundle bOptions, int userId) {
@@ -883,16 +968,16 @@
 
         mIntent.setFlags(mLaunchFlags);
 
-        ActivityRecord intentActivity = getReusableIntentActivity();
+        mReusedActivity = getReusableIntentActivity();
 
         final int preferredLaunchStackId =
                 (mOptions != null) ? mOptions.getLaunchStackId() : INVALID_STACK_ID;
 
-        if (intentActivity != null) {
+        if (mReusedActivity != null) {
             // When the flags NEW_TASK and CLEAR_TASK are set, then the task gets reused but
             // still needs to be a lock task mode violation since the task gets cleared out and
             // the device would otherwise leave the locked task.
-            if (mSupervisor.isLockTaskModeViolation(intentActivity.task,
+            if (mSupervisor.isLockTaskModeViolation(mReusedActivity.task,
                     (mLaunchFlags & (FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_CLEAR_TASK))
                             == (FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_CLEAR_TASK))) {
                 mSupervisor.showLockTaskToast();
@@ -901,12 +986,12 @@
             }
 
             if (mStartActivity.task == null) {
-                mStartActivity.task = intentActivity.task;
+                mStartActivity.task = mReusedActivity.task;
             }
-            if (intentActivity.task.intent == null) {
+            if (mReusedActivity.task.intent == null) {
                 // This task was started because of movement of the activity based on affinity...
                 // Now that we are actually launching it, we can assign the base intent.
-                intentActivity.task.setIntent(mStartActivity);
+                mReusedActivity.task.setIntent(mStartActivity);
             }
 
             // This code path leads to delivering a new intent, we want to make sure we schedule it
@@ -917,7 +1002,7 @@
                 // In this situation we want to remove all activities from the task up to the one
                 // being started. In most cases this means we are resetting the task to its initial
                 // state.
-                final ActivityRecord top = intentActivity.task.performClearTaskForReuseLocked(
+                final ActivityRecord top = mReusedActivity.task.performClearTaskForReuseLocked(
                         mStartActivity, mLaunchFlags);
                 if (top != null) {
                     if (top.frontOfTask) {
@@ -931,7 +1016,7 @@
                 }
             }
 
-            intentActivity = setTargetStackAndMoveToFrontIfNeeded(intentActivity);
+            mReusedActivity = setTargetStackAndMoveToFrontIfNeeded(mReusedActivity);
 
             if ((mStartFlags & START_FLAG_ONLY_IF_NEEDED) != 0) {
                 // We don't need to start a new activity, and the client said not to do anything
@@ -941,7 +1026,7 @@
                 return START_RETURN_INTENT_TO_CALLER;
             }
 
-            setTaskFromIntentActivity(intentActivity);
+            setTaskFromIntentActivity(mReusedActivity);
 
             if (!mAddingToTask && mReuseTask == null) {
                 // We didn't do anything...  but it was needed (a.k.a., client don't use that
@@ -1356,7 +1441,7 @@
                             == (FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_CLEAR_TASK);
                 if (!willClearTask) {
                     final ActivityStack launchStack = getLaunchStack(
-                            mStartActivity, mLaunchFlags, mStartActivity.task, mOptions, true);
+                            mStartActivity, mLaunchFlags, mStartActivity.task, mOptions);
                     if (launchStack == null || launchStack == mTargetStack) {
                         // We only want to move to the front, if we aren't going to launch on a
                         // different stack. If we launch on a different stack, we will put the
@@ -1530,8 +1615,11 @@
         // We only want to allow changing stack if the target task is not the top one,
         // otherwise we would move the launching task to the other side, rather than show
         // two side by side.
-        final boolean launchToSideAllowed = sourceTask.stack.topTask() != sourceTask;
-        mTargetStack = getLaunchStack(mStartActivity, mLaunchFlags, mStartActivity.task, mOptions, launchToSideAllowed);
+        final boolean moveStackAllowed = sourceTask.stack.topTask() != sourceTask;
+        if (moveStackAllowed) {
+            mTargetStack = getLaunchStack(mStartActivity, mLaunchFlags, mStartActivity.task,
+                    mOptions);
+        }
 
         if (mTargetStack == null) {
             mTargetStack = sourceTask.stack;
@@ -1704,7 +1792,7 @@
             return mSupervisor.mHomeStack;
         }
 
-        ActivityStack stack = getLaunchStack(r, launchFlags, task, aOptions, true);
+        ActivityStack stack = getLaunchStack(r, launchFlags, task, aOptions);
         if (stack != null) {
             return stack;
         }
@@ -1769,7 +1857,13 @@
     }
 
     private ActivityStack getLaunchStack(ActivityRecord r, int launchFlags, TaskRecord task,
-            ActivityOptions aOptions, boolean launchToSideAllowed) {
+            ActivityOptions aOptions) {
+
+        // We are reusing a task, keep the stack!
+        if (mReuseTask != null) {
+            return mReuseTask.stack;
+        }
+
         final int launchStackId =
                 (aOptions != null) ? aOptions.getLaunchStackId() : INVALID_STACK_ID;
 
@@ -1781,7 +1875,7 @@
             return mSupervisor.getStack(FULLSCREEN_WORKSPACE_STACK_ID, CREATE_IF_NEEDED, ON_TOP);
         }
 
-        if (!launchToSideAllowed || (launchFlags & FLAG_ACTIVITY_LAUNCH_ADJACENT) == 0) {
+        if ((launchFlags & FLAG_ACTIVITY_LAUNCH_ADJACENT) == 0) {
             return null;
         }
         // Otherwise handle adjacent launch.
diff --git a/services/core/java/com/android/server/am/AppErrors.java b/services/core/java/com/android/server/am/AppErrors.java
index 68bd2fd..e9ed34b 100644
--- a/services/core/java/com/android/server/am/AppErrors.java
+++ b/services/core/java/com/android/server/am/AppErrors.java
@@ -293,19 +293,7 @@
             return;
         }
 
-        if (proc.thread != null) {
-            if (proc.pid == Process.myPid()) {
-                Log.w(TAG, "crashApplication: trying to crash self!");
-                return;
-            }
-            long ident = Binder.clearCallingIdentity();
-            try {
-                proc.thread.scheduleCrash(message);
-            } catch (RemoteException e) {
-            } finally {
-                Binder.restoreCallingIdentity(ident);
-            }
-        }
+        proc.scheduleCrash(message);
     }
 
     /**
diff --git a/services/core/java/com/android/server/am/BatteryStatsService.java b/services/core/java/com/android/server/am/BatteryStatsService.java
index 3d42047..2516f5d 100644
--- a/services/core/java/com/android/server/am/BatteryStatsService.java
+++ b/services/core/java/com/android/server/am/BatteryStatsService.java
@@ -16,6 +16,7 @@
 
 package com.android.server.am;
 
+import android.annotation.Nullable;
 import android.bluetooth.BluetoothActivityEnergyInfo;
 import android.bluetooth.BluetoothAdapter;
 import android.content.Context;
@@ -32,11 +33,12 @@
 import android.os.Parcel;
 import android.os.ParcelFileDescriptor;
 import android.os.ParcelFormatException;
-import android.os.PowerManager;
+import android.os.Parcelable;
 import android.os.PowerManagerInternal;
 import android.os.Process;
 import android.os.RemoteException;
 import android.os.ServiceManager;
+import android.os.SynchronousResultReceiver;
 import android.os.SystemClock;
 import android.os.UserHandle;
 import android.os.WorkSource;
@@ -56,9 +58,8 @@
 import com.android.internal.os.BatteryStatsHelper;
 import com.android.internal.os.BatteryStatsImpl;
 import com.android.internal.os.PowerProfile;
-import com.android.internal.telephony.ITelephony;
-import com.android.server.FgThread;
 import com.android.server.LocalServices;
+import com.android.server.ServiceThread;
 
 import java.io.File;
 import java.io.FileDescriptor;
@@ -71,7 +72,7 @@
 import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
 import java.util.List;
-import java.util.Map;
+import java.util.concurrent.TimeoutException;
 
 /**
  * All information we are collecting about things that can happen that impact
@@ -81,15 +82,32 @@
         implements PowerManagerInternal.LowPowerModeListener {
     static final String TAG = "BatteryStatsService";
 
-    static IBatteryStats sService;
+    /**
+     * How long to wait on an individual subsystem to return its stats.
+     */
+    private static final long EXTERNAL_STATS_SYNC_TIMEOUT_MILLIS = 2000;
+
+    private static IBatteryStats sService;
+
     final BatteryStatsImpl mStats;
-    final BatteryStatsHandler mHandler;
-    Context mContext;
-    PowerManagerInternal mPowerManagerInternal;
+    private final BatteryStatsHandler mHandler;
+    private Context mContext;
+    private IWifiManager mWifiManager;
+    private TelephonyManager mTelephony;
+
+    // Lock acquired when extracting data from external sources.
+    private final Object mExternalStatsLock = new Object();
+
+    // WiFi keeps an accumulated total of stats, unlike Bluetooth.
+    // Keep the last WiFi stats so we can compute a delta.
+    @GuardedBy("mExternalStatsLock")
+    private WifiActivityEnergyInfo mLastInfo =
+            new WifiActivityEnergyInfo(0, 0, 0, new long[]{0}, 0, 0, 0);
 
     class BatteryStatsHandler extends Handler implements BatteryStatsImpl.ExternalStatsSync {
         public static final int MSG_SYNC_EXTERNAL_STATS = 1;
         public static final int MSG_WRITE_TO_DISK = 2;
+
         private int mUpdateFlags = 0;
         private IntArray mUidsToRemove = new IntArray();
 
@@ -107,7 +125,7 @@
                         updateFlags = mUpdateFlags;
                         mUpdateFlags = 0;
                     }
-                    updateExternalStats((String)msg.obj, updateFlags);
+                    updateExternalStatsSync((String)msg.obj, updateFlags);
 
                     // other parts of the system could be calling into us
                     // from mStats in order to report of changes. We must grab the mStats
@@ -124,7 +142,7 @@
                     break;
 
                 case MSG_WRITE_TO_DISK:
-                    updateExternalStats("write", UPDATE_ALL);
+                    updateExternalStatsSync("write", UPDATE_ALL);
                     synchronized (mStats) {
                         mStats.writeAsyncLocked();
                     }
@@ -158,7 +176,10 @@
     BatteryStatsService(File systemDir, Handler handler) {
         // Our handler here will be accessing the disk, use a different thread than
         // what the ActivityManagerService gave us (no I/O on that one!).
-        mHandler = new BatteryStatsHandler(FgThread.getHandler().getLooper());
+        final ServiceThread thread = new ServiceThread("batterystats-sync",
+                Process.THREAD_PRIORITY_DEFAULT, true);
+        thread.start();
+        mHandler = new BatteryStatsHandler(thread.getLooper());
 
         // BatteryStatsImpl expects the ActivityManagerService handler, so pass that one through.
         mStats = new BatteryStatsImpl(systemDir, handler, mHandler);
@@ -178,19 +199,22 @@
      * initialized.  So we initialize the low power observer later.
      */
     public void initPowerManagement() {
-        mPowerManagerInternal = LocalServices.getService(PowerManagerInternal.class);
-        mPowerManagerInternal.registerLowPowerModeObserver(this);
-        mStats.notePowerSaveMode(mPowerManagerInternal.getLowPowerModeEnabled());
+        final PowerManagerInternal powerMgr = LocalServices.getService(PowerManagerInternal.class);
+        powerMgr.registerLowPowerModeObserver(this);
+        mStats.notePowerSaveMode(powerMgr.getLowPowerModeEnabled());
         (new WakeupReasonThread()).start();
     }
 
     public void shutdown() {
         Slog.w("BatteryStats", "Writing battery stats before shutdown...");
 
-        updateExternalStats("shutdown", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
+        updateExternalStatsSync("shutdown", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
         synchronized (mStats) {
             mStats.shutdownLocked();
         }
+
+        // Shutdown the thread we made.
+        mHandler.getLooper().quit();
     }
     
     public static IBatteryStats getService() {
@@ -287,7 +311,7 @@
         //Slog.i("foo", "SENDING BATTERY INFO:");
         //mStats.dumpLocked(new LogPrinter(Log.INFO, "foo", Log.LOG_ID_SYSTEM));
         Parcel out = Parcel.obtain();
-        updateExternalStats("get-stats", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
+        updateExternalStatsSync("get-stats", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
         synchronized (mStats) {
             mStats.writeToParcel(out, 0);
         }
@@ -302,7 +326,7 @@
         //Slog.i("foo", "SENDING BATTERY INFO:");
         //mStats.dumpLocked(new LogPrinter(Log.INFO, "foo", Log.LOG_ID_SYSTEM));
         Parcel out = Parcel.obtain();
-        updateExternalStats("get-stats", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
+        updateExternalStatsSync("get-stats", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
         synchronized (mStats) {
             mStats.writeToParcel(out, 0);
         }
@@ -875,6 +899,47 @@
         }
     }
 
+    @Override
+    public void noteWifiControllerActivity(WifiActivityEnergyInfo info) {
+        enforceCallingPermission();
+
+        if (info == null || !info.isValid()) {
+            Slog.e(TAG, "invalid wifi data given: " + info);
+            return;
+        }
+
+        synchronized (mStats) {
+            mStats.updateWifiStateLocked(info);
+        }
+    }
+
+    @Override
+    public void noteBluetoothControllerActivity(BluetoothActivityEnergyInfo info) {
+        enforceCallingPermission();
+        if (info == null || !info.isValid()) {
+            Slog.e(TAG, "invalid bluetooth data given: " + info);
+            return;
+        }
+
+        synchronized (mStats) {
+            mStats.updateBluetoothStateLocked(info);
+        }
+    }
+
+    @Override
+    public void noteModemControllerActivity(ModemActivityInfo info) {
+        enforceCallingPermission();
+
+        if (info == null || !info.isValid()) {
+            Slog.e(TAG, "invalid modem data given: " + info);
+            return;
+        }
+
+        synchronized (mStats) {
+            mStats.updateMobileRadioStateLocked(SystemClock.elapsedRealtime(), info);
+        }
+    }
+
     public boolean isOnBattery() {
         return mStats.isOnBattery();
     }
@@ -901,7 +966,7 @@
 
                 // Sync external stats first as the battery has changed states. If we don't sync
                 // immediately here, we may not collect the relevant data later.
-                updateExternalStats("battery-state", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
+                updateExternalStatsSync("battery-state", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
                 synchronized (mStats) {
                     mStats.setBatteryStateLocked(status, health, plugType, level, temp, volt);
                 }
@@ -1088,9 +1153,9 @@
                         pw.println("Battery stats reset.");
                         noOutput = true;
                     }
-                    updateExternalStats("dump", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
+                    updateExternalStatsSync("dump", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
                 } else if ("--write".equals(arg)) {
-                    updateExternalStats("dump", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
+                    updateExternalStatsSync("dump", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
                     synchronized (mStats) {
                         mStats.writeSyncLocked();
                         pw.println("Battery stats written.");
@@ -1154,7 +1219,7 @@
                 flags |= BatteryStats.DUMP_DEVICE_WIFI_ONLY;
             }
             // Fetch data from external sources and update the BatteryStatsImpl object with them.
-            updateExternalStats("dump", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
+            updateExternalStatsSync("dump", BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
         } finally {
             Binder.restoreCallingIdentity(ident);
         }
@@ -1215,145 +1280,96 @@
         }
     }
 
-    // Objects for extracting data from external sources.
-    private final Object mExternalStatsLock = new Object();
+    private WifiActivityEnergyInfo extractDelta(WifiActivityEnergyInfo latest) {
+        final long timePeriodMs = latest.mTimestamp - mLastInfo.mTimestamp;
+        final long lastIdleMs = mLastInfo.mControllerIdleTimeMs;
+        final long lastTxMs = mLastInfo.mControllerTxTimeMs;
+        final long lastRxMs = mLastInfo.mControllerRxTimeMs;
+        final long lastEnergy = mLastInfo.mControllerEnergyUsed;
 
-    @GuardedBy("mExternalStatsLock")
-    private IWifiManager mWifiManager;
+        // We will modify the last info object to be the delta, and store the new
+        // WifiActivityEnergyInfo object as our last one.
+        final WifiActivityEnergyInfo delta = mLastInfo;
+        delta.mTimestamp = latest.getTimeStamp();
+        delta.mStackState = latest.getStackState();
 
-    // WiFi keeps an accumulated total of stats, unlike Bluetooth.
-    // Keep the last WiFi stats so we can compute a delta.
-    @GuardedBy("mExternalStatsLock")
-    private WifiActivityEnergyInfo mLastInfo =
-            new WifiActivityEnergyInfo(0, 0, 0, new long[]{0}, 0, 0, 0);
+        // These times seem to be the most reliable.
+        delta.mControllerTxTimeMs = latest.mControllerTxTimeMs - lastTxMs;
+        delta.mControllerRxTimeMs = latest.mControllerRxTimeMs - lastRxMs;
 
-    @GuardedBy("mExternalStatsLock")
-    private WifiActivityEnergyInfo pullWifiEnergyInfoLocked() {
-        if (mWifiManager == null) {
-            mWifiManager = IWifiManager.Stub.asInterface(
-                    ServiceManager.getService(Context.WIFI_SERVICE));
-            if (mWifiManager == null) {
-                return null;
-            }
+        // WiFi calculates the idle time as a difference from the on time and the various
+        // Rx + Tx times. There seems to be some missing time there because this sometimes
+        // becomes negative. Just cap it at 0 and move on.
+        // b/21613534
+        delta.mControllerIdleTimeMs = Math.max(0, latest.mControllerIdleTimeMs - lastIdleMs);
+        delta.mControllerEnergyUsed = Math.max(0, latest.mControllerEnergyUsed - lastEnergy);
+
+        if (delta.mControllerTxTimeMs < 0 || delta.mControllerRxTimeMs < 0) {
+            // The stats were reset by the WiFi system (which is why our delta is negative).
+            // Returns the unaltered stats.
+            delta.mControllerEnergyUsed = latest.mControllerEnergyUsed;
+            delta.mControllerRxTimeMs = latest.mControllerRxTimeMs;
+            delta.mControllerTxTimeMs = latest.mControllerTxTimeMs;
+            delta.mControllerIdleTimeMs = latest.mControllerIdleTimeMs;
+
+            Slog.v(TAG, "WiFi energy data was reset, new WiFi energy data is " + delta);
         }
 
-        try {
-            // We read the data even if we are not on battery. This is so that we keep the
-            // correct delta from when we should start reading (aka when we are on battery).
-            WifiActivityEnergyInfo info = mWifiManager.reportActivityInfo();
-            if (info != null && info.isValid()) {
-                if (info.mControllerEnergyUsed < 0 || info.mControllerIdleTimeMs < 0 ||
-                        info.mControllerRxTimeMs < 0 || info.mControllerTxTimeMs < 0) {
-                    Slog.wtf(TAG, "Reported WiFi energy data is invalid: " + info);
-                    return null;
-                }
-
-                final long timePeriodMs = info.mTimestamp - mLastInfo.mTimestamp;
-                final long lastIdleMs = mLastInfo.mControllerIdleTimeMs;
-                final long lastTxMs = mLastInfo.mControllerTxTimeMs;
-                final long lastRxMs = mLastInfo.mControllerRxTimeMs;
-                final long lastEnergy = mLastInfo.mControllerEnergyUsed;
-
-                // We will modify the last info object to be the delta, and store the new
-                // WifiActivityEnergyInfo object as our last one.
-                final WifiActivityEnergyInfo result = mLastInfo;
-                result.mTimestamp = info.getTimeStamp();
-                result.mStackState = info.getStackState();
-
-                // These times seem to be the most reliable.
-                result.mControllerTxTimeMs = info.mControllerTxTimeMs - lastTxMs;
-                result.mControllerRxTimeMs = info.mControllerRxTimeMs - lastRxMs;
-
-                // WiFi calculates the idle time as a difference from the on time and the various
-                // Rx + Tx times. There seems to be some missing time there because this sometimes
-                // becomes negative. Just cap it at 0 and move on.
-                // b/21613534
-                result.mControllerIdleTimeMs = Math.max(0, info.mControllerIdleTimeMs - lastIdleMs);
-                result.mControllerEnergyUsed =
-                        Math.max(0, info.mControllerEnergyUsed - lastEnergy);
-
-                if (result.mControllerTxTimeMs < 0 ||
-                        result.mControllerRxTimeMs < 0) {
-                    // The stats were reset by the WiFi system (which is why our delta is negative).
-                    // Returns the unaltered stats.
-                    result.mControllerEnergyUsed = info.mControllerEnergyUsed;
-                    result.mControllerRxTimeMs = info.mControllerRxTimeMs;
-                    result.mControllerTxTimeMs = info.mControllerTxTimeMs;
-                    result.mControllerIdleTimeMs = info.mControllerIdleTimeMs;
-
-                    Slog.v(TAG, "WiFi energy data was reset, new WiFi energy data is " + result);
-                }
-
-                // There is some accuracy error in reports so allow some slop in the results.
-                final long SAMPLE_ERROR_MILLIS = 750;
-                final long totalTimeMs = result.mControllerIdleTimeMs + result.mControllerRxTimeMs +
-                        result.mControllerTxTimeMs;
-                if (totalTimeMs > timePeriodMs + SAMPLE_ERROR_MILLIS) {
-                    StringBuilder sb = new StringBuilder();
-                    sb.append("Total time ");
-                    TimeUtils.formatDuration(totalTimeMs, sb);
-                    sb.append(" is longer than sample period ");
-                    TimeUtils.formatDuration(timePeriodMs, sb);
-                    sb.append(".\n");
-                    sb.append("Previous WiFi snapshot: ").append("idle=");
-                    TimeUtils.formatDuration(lastIdleMs, sb);
-                    sb.append(" rx=");
-                    TimeUtils.formatDuration(lastRxMs, sb);
-                    sb.append(" tx=");
-                    TimeUtils.formatDuration(lastTxMs, sb);
-                    sb.append(" e=").append(lastEnergy);
-                    sb.append("\n");
-                    sb.append("Current WiFi snapshot: ").append("idle=");
-                    TimeUtils.formatDuration(info.mControllerIdleTimeMs, sb);
-                    sb.append(" rx=");
-                    TimeUtils.formatDuration(info.mControllerRxTimeMs, sb);
-                    sb.append(" tx=");
-                    TimeUtils.formatDuration(info.mControllerTxTimeMs, sb);
-                    sb.append(" e=").append(info.mControllerEnergyUsed);
-                    Slog.wtf(TAG, sb.toString());
-                }
-
-                mLastInfo = info;
-                return result;
-            }
-        } catch (RemoteException e) {
-            // Nothing to report, WiFi is dead.
+        // There is some accuracy error in reports so allow some slop in the results.
+        final long SAMPLE_ERROR_MILLIS = 750;
+        final long totalTimeMs = delta.mControllerIdleTimeMs + delta.mControllerRxTimeMs +
+                delta.mControllerTxTimeMs;
+        if (totalTimeMs > timePeriodMs + SAMPLE_ERROR_MILLIS) {
+            StringBuilder sb = new StringBuilder();
+            sb.append("Total time ");
+            TimeUtils.formatDuration(totalTimeMs, sb);
+            sb.append(" is longer than sample period ");
+            TimeUtils.formatDuration(timePeriodMs, sb);
+            sb.append(".\n");
+            sb.append("Previous WiFi snapshot: ").append("idle=");
+            TimeUtils.formatDuration(lastIdleMs, sb);
+            sb.append(" rx=");
+            TimeUtils.formatDuration(lastRxMs, sb);
+            sb.append(" tx=");
+            TimeUtils.formatDuration(lastTxMs, sb);
+            sb.append(" e=").append(lastEnergy);
+            sb.append("\n");
+            sb.append("Current WiFi snapshot: ").append("idle=");
+            TimeUtils.formatDuration(latest.mControllerIdleTimeMs, sb);
+            sb.append(" rx=");
+            TimeUtils.formatDuration(latest.mControllerRxTimeMs, sb);
+            sb.append(" tx=");
+            TimeUtils.formatDuration(latest.mControllerTxTimeMs, sb);
+            sb.append(" e=").append(latest.mControllerEnergyUsed);
+            Slog.wtf(TAG, sb.toString());
         }
-        return null;
+
+        mLastInfo = latest;
+        return delta;
     }
 
-    @GuardedBy("mExternalStatsLock")
-    private BluetoothActivityEnergyInfo pullBluetoothEnergyInfoLocked() {
-        BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
-        if (adapter != null) {
-            BluetoothActivityEnergyInfo info = adapter.getControllerActivityEnergyInfo(
-                    BluetoothAdapter.ACTIVITY_ENERGY_INFO_REFRESHED);
-            if (info != null && info.isValid()) {
-                if (info.getControllerEnergyUsed() < 0 || info.getControllerIdleTimeMillis() < 0 ||
-                        info.getControllerRxTimeMillis() < 0 || info.getControllerTxTimeMillis() < 0) {
-                    Slog.wtf(TAG, "Bluetooth energy data is invalid: " + info);
-                }
-                return info;
-            }
+    /**
+     * Helper method to extract the Parcelable controller info from a
+     * SynchronousResultReceiver.
+     */
+    private static <T extends Parcelable> T awaitControllerInfo(
+            @Nullable SynchronousResultReceiver receiver) throws TimeoutException {
+        if (receiver == null) {
+            return null;
         }
-        return null;
-    }
 
-    @GuardedBy("mExternalStatsLock")
-    private ModemActivityInfo pullModemActivityInfoLocked() {
-        ITelephony tm = ITelephony.Stub.asInterface(ServiceManager.getService(
-                Context.TELEPHONY_SERVICE));
-        try {
-            if (tm != null) {
-                ModemActivityInfo info = tm.getModemActivityInfo();
-                if (info == null || info.isValid()) {
-                    return info;
-                }
-                Slog.wtf(TAG, "Modem activity info is invalid: " + info);
+        final SynchronousResultReceiver.Result result =
+                receiver.awaitResult(EXTERNAL_STATS_SYNC_TIMEOUT_MILLIS);
+        if (result.bundle != null) {
+            // This is the final destination for the Bundle.
+            result.bundle.setDefusable(true);
+
+            final T data = result.bundle.getParcelable(BatteryStats.RESULT_RECEIVER_CONTROLLER_KEY);
+            if (data != null) {
+                return data;
             }
-        } catch (RemoteException e) {
-            // Nothing to do.
         }
+        Slog.e(TAG, "no controller energy info supplied");
         return null;
     }
 
@@ -1371,58 +1387,108 @@
      *                    {@link BatteryStatsImpl.ExternalStatsSync#UPDATE_WIFI},
      *                    and {@link BatteryStatsImpl.ExternalStatsSync#UPDATE_BT}.
      */
-    void updateExternalStats(final String reason, final int updateFlags) {
+    void updateExternalStatsSync(final String reason, int updateFlags) {
+        SynchronousResultReceiver wifiReceiver = null;
+        SynchronousResultReceiver bluetoothReceiver = null;
+        SynchronousResultReceiver modemReceiver = null;
+
         synchronized (mExternalStatsLock) {
             if (mContext == null) {
-                // We haven't started yet (which means the BatteryStatsImpl object has
-                // no power profile. Don't consume data we can't compute yet.
+                // Don't do any work yet.
                 return;
             }
 
-            if (BatteryStatsImpl.DEBUG_ENERGY) {
-                Slog.d(TAG, "Updating external stats: reason=" + reason);
-            }
-
-            WifiActivityEnergyInfo wifiEnergyInfo = null;
             if ((updateFlags & BatteryStatsImpl.ExternalStatsSync.UPDATE_WIFI) != 0) {
-                wifiEnergyInfo = pullWifiEnergyInfoLocked();
+                if (mWifiManager == null) {
+                    mWifiManager = IWifiManager.Stub.asInterface(
+                            ServiceManager.getService(Context.WIFI_SERVICE));
+                }
+
+                if (mWifiManager != null) {
+                    try {
+                        wifiReceiver = new SynchronousResultReceiver();
+                        mWifiManager.requestActivityInfo(wifiReceiver);
+                    } catch (RemoteException e) {
+                        // Oh well.
+                    }
+                }
             }
 
-            ModemActivityInfo modemActivityInfo = null;
-            if ((updateFlags & BatteryStatsImpl.ExternalStatsSync.UPDATE_RADIO) != 0) {
-                modemActivityInfo = pullModemActivityInfoLocked();
-            }
-
-            BluetoothActivityEnergyInfo bluetoothEnergyInfo = null;
             if ((updateFlags & BatteryStatsImpl.ExternalStatsSync.UPDATE_BT) != 0) {
-                // We only pull bluetooth stats when we have to, as we are not distributing its
-                // use amongst apps and the sampling frequency does not matter.
-                bluetoothEnergyInfo = pullBluetoothEnergyInfoLocked();
+                final BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
+                if (adapter != null) {
+                    bluetoothReceiver = new SynchronousResultReceiver();
+                    adapter.requestControllerActivityEnergyInfo(
+                            BluetoothAdapter.ACTIVITY_ENERGY_INFO_REFRESHED,
+                            bluetoothReceiver);
+                }
+            }
+
+            if ((updateFlags & BatteryStatsImpl.ExternalStatsSync.UPDATE_RADIO) != 0) {
+                if (mTelephony == null) {
+                    mTelephony = TelephonyManager.from(mContext);
+                }
+
+                if (mTelephony != null) {
+                    modemReceiver = new SynchronousResultReceiver();
+                    mTelephony.requestModemActivityInfo(modemReceiver);
+                }
+            }
+
+            WifiActivityEnergyInfo wifiInfo = null;
+            BluetoothActivityEnergyInfo bluetoothInfo = null;
+            ModemActivityInfo modemInfo = null;
+            try {
+                wifiInfo = awaitControllerInfo(wifiReceiver);
+            } catch (TimeoutException e) {
+                Slog.w(TAG, "Timeout reading wifi stats");
+            }
+
+            try {
+                bluetoothInfo = awaitControllerInfo(bluetoothReceiver);
+            } catch (TimeoutException e) {
+                Slog.w(TAG, "Timeout reading bt stats");
+            }
+
+            try {
+                modemInfo = awaitControllerInfo(modemReceiver);
+            } catch (TimeoutException e) {
+                Slog.w(TAG, "Timeout reading modem stats");
             }
 
             synchronized (mStats) {
-                final long elapsedRealtime = SystemClock.elapsedRealtime();
-                final long uptime = SystemClock.uptimeMillis();
-                if (mStats.mRecordAllHistory) {
-                    mStats.addHistoryEventLocked(elapsedRealtime, uptime,
-                            BatteryStats.HistoryItem.EVENT_COLLECT_EXTERNAL_STATS, reason, 0);
+                mStats.addHistoryEventLocked(
+                        SystemClock.elapsedRealtime(),
+                        SystemClock.uptimeMillis(),
+                        BatteryStats.HistoryItem.EVENT_COLLECT_EXTERNAL_STATS,
+                        reason, 0);
+
+                mStats.updateCpuTimeLocked();
+                mStats.updateKernelWakelocksLocked();
+
+                if (wifiInfo != null) {
+                    if (wifiInfo.isValid()) {
+                        mStats.updateWifiStateLocked(extractDelta(wifiInfo));
+                    } else {
+                        Slog.e(TAG, "wifi info is invalid: " + wifiInfo);
+                    }
                 }
 
-                if ((updateFlags & BatteryStatsImpl.ExternalStatsSync.UPDATE_CPU) != 0) {
-                    mStats.updateCpuTimeLocked();
-                    mStats.updateKernelWakelocksLocked();
+                if (bluetoothInfo != null) {
+                    if (bluetoothInfo.isValid()) {
+                        mStats.updateBluetoothStateLocked(bluetoothInfo);
+                    } else {
+                        Slog.e(TAG, "bluetooth info is invalid: " + bluetoothInfo);
+                    }
                 }
 
-                if ((updateFlags & BatteryStatsImpl.ExternalStatsSync.UPDATE_RADIO) != 0) {
-                    mStats.updateMobileRadioStateLocked(elapsedRealtime, modemActivityInfo);
-                }
-
-                if ((updateFlags & BatteryStatsImpl.ExternalStatsSync.UPDATE_WIFI) != 0) {
-                    mStats.updateWifiStateLocked(wifiEnergyInfo);
-                }
-
-                if ((updateFlags & BatteryStatsImpl.ExternalStatsSync.UPDATE_BT) != 0) {
-                    mStats.updateBluetoothStateLocked(bluetoothEnergyInfo);
+                if (modemInfo != null) {
+                    if (modemInfo.isValid()) {
+                        mStats.updateMobileRadioStateLocked(SystemClock.elapsedRealtime(),
+                                modemInfo);
+                    } else {
+                        Slog.e(TAG, "modem info is invalid: " + modemInfo);
+                    }
                 }
             }
         }
@@ -1439,7 +1505,7 @@
         }
         long ident = Binder.clearCallingIdentity();
         try {
-            updateExternalStats("get-health-stats-for-uid",
+            updateExternalStatsSync("get-health-stats-for-uid",
                     BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
             synchronized (mStats) {
                 return getHealthStatsForUidLocked(requestUid);
@@ -1464,7 +1530,7 @@
         long ident = Binder.clearCallingIdentity();
         int i=-1;
         try {
-            updateExternalStats("get-health-stats-for-uids",
+            updateExternalStatsSync("get-health-stats-for-uids",
                     BatteryStatsImpl.ExternalStatsSync.UPDATE_ALL);
             synchronized (mStats) {
                 final int N = requestUids.length;
@@ -1499,7 +1565,7 @@
 
     /**
      * Gets a HealthStatsParceler for the given uid. You should probably call
-     * updateExternalStats first.
+     * updateExternalStatsSync first.
      */
     HealthStatsParceler getHealthStatsForUidLocked(int requestUid) {
         final HealthStatsBatteryStatsWriter writer = new HealthStatsBatteryStatsWriter();
diff --git a/services/core/java/com/android/server/am/BroadcastQueue.java b/services/core/java/com/android/server/am/BroadcastQueue.java
index 37c7765..1222f54 100644
--- a/services/core/java/com/android/server/am/BroadcastQueue.java
+++ b/services/core/java/com/android/server/am/BroadcastQueue.java
@@ -38,6 +38,7 @@
 import android.content.pm.ResolveInfo;
 import android.os.Build;
 import android.os.Bundle;
+import android.os.DeadObjectException;
 import android.os.Handler;
 import android.os.IBinder;
 import android.os.Looper;
@@ -273,7 +274,8 @@
             if (DEBUG_BROADCAST_LIGHT) Slog.v(TAG_BROADCAST,
                     "Delivering to component " + r.curComponent
                     + ": " + r);
-            mService.notifyPackageUse(r.intent.getComponent().getPackageName());
+            mService.notifyPackageUse(r.intent.getComponent().getPackageName(),
+                                      PackageManager.NOTIFY_PACKAGE_USE_BROADCAST_RECEIVER);
             app.thread.scheduleReceiver(new Intent(r.intent), r.curReceiver,
                     mService.compatibilityInfoForPackageLocked(r.curReceiver.applicationInfo),
                     r.resultCode, r.resultData, r.resultExtras, r.ordered, r.userId,
@@ -446,7 +448,7 @@
         }
     }
 
-    private static void performReceiveLocked(ProcessRecord app, IIntentReceiver receiver,
+    private void performReceiveLocked(ProcessRecord app, IIntentReceiver receiver,
             Intent intent, int resultCode, String data, Bundle extras,
             boolean ordered, boolean sticky, int sendingUser) throws RemoteException {
         // Send the intent to the receiver asynchronously using one-way binder calls.
@@ -454,8 +456,23 @@
             if (app.thread != null) {
                 // If we have an app thread, do the call through that so it is
                 // correctly ordered with other one-way calls.
-                app.thread.scheduleRegisteredReceiver(receiver, intent, resultCode,
-                        data, extras, ordered, sticky, sendingUser, app.repProcState);
+                try {
+                    app.thread.scheduleRegisteredReceiver(receiver, intent, resultCode,
+                            data, extras, ordered, sticky, sendingUser, app.repProcState);
+                // TODO: Uncomment this when (b/28322359) is fixed and we aren't getting
+                // DeadObjectException when the process isn't actually dead.
+                //} catch (DeadObjectException ex) {
+                // Failed to call into the process.  It's dying so just let it die and move on.
+                //    throw ex;
+                } catch (RemoteException ex) {
+                    // Failed to call into the process. It's either dying or wedged. Kill it gently.
+                    synchronized (mService) {
+                        Slog.w(TAG, "Can't deliver broadcast to " + app.processName
+                                + " (pid " + app.pid + "). Crashing it.");
+                        app.scheduleCrash("can't deliver broadcast");
+                    }
+                    throw ex;
+                }
             } else {
                 // Application has died. Receiver doesn't exist.
                 throw new RemoteException("app.thread must not be null");
@@ -853,6 +870,7 @@
                             Slog.w(TAG, "Failure ["
                                     + mQueueName + "] sending broadcast result of "
                                     + r.intent, e);
+
                         }
                     }
 
diff --git a/services/core/java/com/android/server/am/EventLogTags.logtags b/services/core/java/com/android/server/am/EventLogTags.logtags
index 2329b2f..2762df6 100644
--- a/services/core/java/com/android/server/am/EventLogTags.logtags
+++ b/services/core/java/com/android/server/am/EventLogTags.logtags
@@ -108,3 +108,7 @@
 30048 am_stop_activity (User|1|5),(Token|1|5),(Component Name|3)
 # The activity's onStop has been called.
 30049 am_on_stop_called (User|1|5),(Component Name|3),(Reason|3)
+
+# Report changing memory conditions (Values are ProcessStats.ADJ_MEM_FACTOR* constants)
+30050 am_mem_factor (Current|1|5),(Previous|1|5)
+
diff --git a/services/core/java/com/android/server/am/HealthStatsBatteryStatsWriter.java b/services/core/java/com/android/server/am/HealthStatsBatteryStatsWriter.java
index 9fb51c1..4a87941 100644
--- a/services/core/java/com/android/server/am/HealthStatsBatteryStatsWriter.java
+++ b/services/core/java/com/android/server/am/HealthStatsBatteryStatsWriter.java
@@ -35,12 +35,12 @@
 
 public class HealthStatsBatteryStatsWriter {
 
-    private final long mNowRealtime;
-    private final long mNowUptime;
+    private final long mNowRealtimeMs;
+    private final long mNowUptimeMs;
 
     public HealthStatsBatteryStatsWriter() {
-        mNowRealtime = SystemClock.elapsedRealtime();
-        mNowUptime = SystemClock.uptimeMillis();
+        mNowRealtimeMs = SystemClock.elapsedRealtime();
+        mNowUptimeMs = SystemClock.uptimeMillis();
     }
 
     /**
@@ -62,19 +62,20 @@
 
         // MEASUREMENT_REALTIME_BATTERY_MS
         uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_REALTIME_BATTERY_MS,
-                bs.computeBatteryRealtime(mNowRealtime*1000, STATS_SINCE_UNPLUGGED)/1000);
+                bs.computeBatteryRealtime(mNowRealtimeMs*1000, STATS_SINCE_UNPLUGGED)/1000);
 
         // MEASUREMENT_UPTIME_BATTERY_MS
         uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_UPTIME_BATTERY_MS,
-                bs.computeBatteryUptime(mNowUptime*1000, STATS_SINCE_UNPLUGGED)/1000);
+                bs.computeBatteryUptime(mNowUptimeMs*1000, STATS_SINCE_UNPLUGGED)/1000);
 
         // MEASUREMENT_REALTIME_SCREEN_OFF_BATTERY_MS
         uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_REALTIME_SCREEN_OFF_BATTERY_MS,
-                bs.computeBatteryScreenOffRealtime(mNowRealtime*1000, STATS_SINCE_UNPLUGGED)/1000);
+                bs.computeBatteryScreenOffRealtime(
+                    mNowRealtimeMs*1000, STATS_SINCE_UNPLUGGED)/1000);
 
         // MEASUREMENT_UPTIME_SCREEN_OFF_BATTERY_MS
         uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_UPTIME_SCREEN_OFF_BATTERY_MS,
-                bs.computeBatteryScreenOffUptime(mNowUptime*1000, STATS_SINCE_UNPLUGGED)/1000);
+                bs.computeBatteryScreenOffUptime(mNowUptimeMs*1000, STATS_SINCE_UNPLUGGED)/1000);
 
         //
         // Now on to the real per-uid stats...
@@ -214,20 +215,20 @@
 
         // MEASUREMENT_WIFI_RUNNING_MS
         uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_WIFI_RUNNING_MS,
-                uid.getWifiRunningTime(mNowRealtime, STATS_SINCE_UNPLUGGED));
+                uid.getWifiRunningTime(mNowRealtimeMs*1000, STATS_SINCE_UNPLUGGED)/1000);
 
         // MEASUREMENT_WIFI_FULL_LOCK_MS
         uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_WIFI_FULL_LOCK_MS,
-                uid.getFullWifiLockTime(mNowRealtime, STATS_SINCE_UNPLUGGED));
+                uid.getFullWifiLockTime(mNowRealtimeMs*1000, STATS_SINCE_UNPLUGGED)/1000);
 
         // TIMER_WIFI_SCAN
         uidWriter.addTimer(UidHealthStats.TIMER_WIFI_SCAN,
                 uid.getWifiScanCount(STATS_SINCE_UNPLUGGED),
-                uid.getWifiScanTime(mNowRealtime, STATS_SINCE_UNPLUGGED));
+                uid.getWifiScanTime(mNowRealtimeMs*1000, STATS_SINCE_UNPLUGGED)/1000);
 
         // MEASUREMENT_WIFI_MULTICAST_MS
         uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_WIFI_MULTICAST_MS,
-                uid.getWifiMulticastTime(mNowRealtime, STATS_SINCE_UNPLUGGED));
+                uid.getWifiMulticastTime(mNowRealtimeMs*1000, STATS_SINCE_UNPLUGGED)/1000);
 
         // TIMER_AUDIO
         addTimer(uidWriter, UidHealthStats.TIMER_AUDIO, uid.getAudioTurnedOnTimer());
@@ -355,17 +356,17 @@
                 uid.getMobileRadioActiveCount(STATS_SINCE_UNPLUGGED),
                 uid.getMobileRadioActiveTime(STATS_SINCE_UNPLUGGED));
 
-        // MEASUREMENT_USER_CPU_TIME_US
-        uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_USER_CPU_TIME_US,
-                uid.getUserCpuTimeUs(STATS_SINCE_UNPLUGGED));
+        // MEASUREMENT_USER_CPU_TIME_MS
+        uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_USER_CPU_TIME_MS,
+                uid.getUserCpuTimeUs(STATS_SINCE_UNPLUGGED)/1000);
 
-        // MEASUREMENT_SYSTEM_CPU_TIME_US
-        uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_SYSTEM_CPU_TIME_US,
-                uid.getSystemCpuTimeUs(STATS_SINCE_UNPLUGGED));
+        // MEASUREMENT_SYSTEM_CPU_TIME_MS
+        uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_SYSTEM_CPU_TIME_MS,
+                uid.getSystemCpuTimeUs(STATS_SINCE_UNPLUGGED)/1000);
 
-        // MEASUREMENT_CPU_POWER_MAUS
-        uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_CPU_POWER_MAUS,
-                uid.getCpuPowerMaUs(STATS_SINCE_UNPLUGGED));
+        // MEASUREMENT_CPU_POWER_MAMS
+        uidWriter.addMeasurement(UidHealthStats.MEASUREMENT_CPU_POWER_MAMS,
+                uid.getCpuPowerMaUs(STATS_SINCE_UNPLUGGED)/1000);
     }
 
     /**
@@ -457,7 +458,7 @@
     private void addTimer(HealthStatsWriter writer, int key, BatteryStats.Timer timer) {
         if (timer != null) {
             writer.addTimer(key, timer.getCountLocked(STATS_SINCE_UNPLUGGED),
-                    timer.getTotalTimeLocked(mNowRealtime, STATS_SINCE_UNPLUGGED));
+                    timer.getTotalTimeLocked(mNowRealtimeMs*1000, STATS_SINCE_UNPLUGGED) / 1000);
         }
     }
 
@@ -468,7 +469,7 @@
             BatteryStats.Timer timer) {
         if (timer != null) {
             writer.addTimers(key, name, new TimerStat(timer.getCountLocked(STATS_SINCE_UNPLUGGED),
-                    timer.getTotalTimeLocked(mNowRealtime, STATS_SINCE_UNPLUGGED)));
+                    timer.getTotalTimeLocked(mNowRealtimeMs*1000, STATS_SINCE_UNPLUGGED) / 1000));
         }
     }
 }
diff --git a/services/core/java/com/android/server/am/NativeCrashListener.java b/services/core/java/com/android/server/am/NativeCrashListener.java
index d0973d5..e2870d8 100644
--- a/services/core/java/com/android/server/am/NativeCrashListener.java
+++ b/services/core/java/com/android/server/am/NativeCrashListener.java
@@ -49,8 +49,8 @@
     static final String DEBUGGERD_SOCKET_PATH = "/data/system/ndebugsocket";
 
     // Use a short timeout on socket operations and abandon the connection
-    // on hard errors
-    static final long SOCKET_TIMEOUT_MILLIS = 2000;  // 2 seconds
+    // on hard errors, just in case debuggerd goes out to lunch.
+    static final long SOCKET_TIMEOUT_MILLIS = 10000;  // 10 seconds
 
     final ActivityManagerService mAm;
 
diff --git a/services/core/java/com/android/server/am/PreBootBroadcaster.java b/services/core/java/com/android/server/am/PreBootBroadcaster.java
index 0e192ea..1f3ccf5 100644
--- a/services/core/java/com/android/server/am/PreBootBroadcaster.java
+++ b/services/core/java/com/android/server/am/PreBootBroadcaster.java
@@ -78,9 +78,12 @@
         final ResolveInfo ri = mTargets.get(mIndex++);
         final ComponentName componentName = ri.activityInfo.getComponentName();
 
-        final CharSequence label = ri.activityInfo.loadLabel(mService.mContext.getPackageManager());
-        mProgress.setProgress(mIndex, mTargets.size(),
-                mService.mContext.getString(R.string.android_preparing_apk, label));
+        if (mProgress != null) {
+            final CharSequence label = ri.activityInfo
+                    .loadLabel(mService.mContext.getPackageManager());
+            mProgress.setProgress(mIndex, mTargets.size(),
+                    mService.mContext.getString(R.string.android_preparing_apk, label));
+        }
 
         Slog.i(TAG, "Pre-boot of " + componentName.toShortString() + " for user " + mUserId);
         EventLogTags.writeAmPreBoot(mUserId, componentName.getPackageName());
diff --git a/services/core/java/com/android/server/am/ProcessRecord.java b/services/core/java/com/android/server/am/ProcessRecord.java
index 93d4060..059acbd 100644
--- a/services/core/java/com/android/server/am/ProcessRecord.java
+++ b/services/core/java/com/android/server/am/ProcessRecord.java
@@ -37,9 +37,11 @@
 import android.content.Context;
 import android.content.pm.ApplicationInfo;
 import android.content.res.CompatibilityInfo;
+import android.os.Binder;
 import android.os.Bundle;
 import android.os.IBinder;
 import android.os.Process;
+import android.os.RemoteException;
 import android.os.SystemClock;
 import android.os.Trace;
 import android.os.UserHandle;
@@ -552,6 +554,29 @@
         return adj;
     }
 
+    void scheduleCrash(String message) {
+        // Checking killedbyAm should keep it from showing the crash dialog if the process
+        // was already dead for a good / normal reason.
+        if (!killedByAm) {
+            if (thread != null) {
+                if (pid == Process.myPid()) {
+                    Slog.w(TAG, "scheduleCrash: trying to crash system process!");
+                    return;
+                }
+                long ident = Binder.clearCallingIdentity();
+                try {
+                    thread.scheduleCrash(message);
+                } catch (RemoteException e) {
+                    // If it's already dead our work is done. If it's wedged just kill it.
+                    // We won't get the crash dialog or the error reporting.
+                    kill("scheduleCrash for '" + message + "' failed", true);
+                } finally {
+                    Binder.restoreCallingIdentity(ident);
+                }
+            }
+        }
+    }
+
     void kill(String reason, boolean noisy) {
         if (!killedByAm) {
             Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "kill");
diff --git a/services/core/java/com/android/server/am/RecentTasks.java b/services/core/java/com/android/server/am/RecentTasks.java
index fb1cda7..88faee7 100644
--- a/services/core/java/com/android/server/am/RecentTasks.java
+++ b/services/core/java/com/android/server/am/RecentTasks.java
@@ -16,6 +16,9 @@
 
 package com.android.server.am;
 
+import static android.content.Intent.FLAG_ACTIVITY_MULTIPLE_TASK;
+import static android.content.Intent.FLAG_ACTIVITY_NEW_DOCUMENT;
+import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK;
 import static com.android.server.am.ActivityManagerDebugConfig.DEBUG_RECENTS;
 import static com.android.server.am.ActivityManagerDebugConfig.DEBUG_TASKS;
 import static com.android.server.am.ActivityManagerDebugConfig.POSTFIX_RECENTS;
@@ -624,10 +627,16 @@
                 final Intent trIntent = tr.intent;
                 final boolean sameAffinity =
                         task.affinity != null && task.affinity.equals(tr.affinity);
-                final boolean sameIntent = (intent != null && intent.filterEquals(trIntent));
+                final boolean sameIntentFilter = intent != null && intent.filterEquals(trIntent);
+                boolean multiTasksAllowed = false;
+                final int flags = intent.getFlags();
+                if ((flags & (FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_NEW_DOCUMENT)) != 0
+                        && (flags & FLAG_ACTIVITY_MULTIPLE_TASK) != 0) {
+                    multiTasksAllowed = true;
+                }
                 final boolean trIsDocument = trIntent != null && trIntent.isDocument();
                 final boolean bothDocuments = document && trIsDocument;
-                if (!sameAffinity && !sameIntent && !bothDocuments) {
+                if (!sameAffinity && !sameIntentFilter && !bothDocuments) {
                     continue;
                 }
 
@@ -638,7 +647,7 @@
                             && task.realActivity.equals(tr.realActivity);
                     // If the document is open in another app or is not the same
                     // document, we don't need to trim it.
-                    if (!sameActivity || !sameIntent) {
+                    if (!sameActivity || !sameIntentFilter || multiTasksAllowed) {
                         continue;
                     // Otherwise only trim if we are over our max recents for this task
                     } else if (maxRecents > 0 && !doTrim) {
diff --git a/services/core/java/com/android/server/am/ServiceRecord.java b/services/core/java/com/android/server/am/ServiceRecord.java
index 5075c3a..bc297de 100644
--- a/services/core/java/com/android/server/am/ServiceRecord.java
+++ b/services/core/java/com/android/server/am/ServiceRecord.java
@@ -516,7 +516,7 @@
                         // If it gave us a garbage notification, it doesn't
                         // get to be foreground.
                         ams.setServiceForeground(name, ServiceRecord.this,
-                                0, null, true);
+                                0, null, 0);
                         ams.crashApplication(appUid, appPid, localPackageName,
                                 "Bad notification for startForeground: " + e);
                     }
diff --git a/services/core/java/com/android/server/am/TaskPersister.java b/services/core/java/com/android/server/am/TaskPersister.java
index ceb7db6..48fecd5 100644
--- a/services/core/java/com/android/server/am/TaskPersister.java
+++ b/services/core/java/com/android/server/am/TaskPersister.java
@@ -17,8 +17,6 @@
 package com.android.server.am;
 
 import android.annotation.NonNull;
-import android.annotation.Nullable;
-import android.app.ActivityManager;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
 import android.os.Debug;
@@ -519,7 +517,7 @@
         if (DEBUG) Slog.d(TAG, "removeObsoleteFiles: persistentTaskIds=" + persistentTaskIds +
                 " files=" + files);
         if (files == null) {
-            Slog.e(TAG, "File error accessing recents directory (too many files open?).");
+            Slog.e(TAG, "File error accessing recents directory (directory doesn't exist?).");
             return;
         }
         for (int fileNdx = 0; fileNdx < files.length; ++fileNdx) {
@@ -529,7 +527,7 @@
             if (taskIdEnd > 0) {
                 final int taskId;
                 try {
-                    taskId = Integer.valueOf(filename.substring(0, taskIdEnd));
+                    taskId = Integer.parseInt(filename.substring(0, taskIdEnd));
                     if (DEBUG) Slog.d(TAG, "removeObsoleteFiles: Found taskId=" + taskId);
                 } catch (Exception e) {
                     Slog.wtf(TAG, "removeObsoleteFiles: Can't parse file=" + file.getName());
@@ -597,15 +595,12 @@
     }
 
     static File getUserImagesDir(int userId) {
-        File userImagesDir = new File(Environment.getDataSystemCeDirectory(userId), IMAGES_DIRNAME);
+        return new File(Environment.getDataSystemCeDirectory(userId), IMAGES_DIRNAME);
+    }
 
-        if (!userImagesDir.exists()) {
-            if (!userImagesDir.mkdir()) {
-                Slog.e(TAG, "Failure creating images directory for user " + userId + ": "
-                        + userImagesDir);
-            }
-        }
-        return userImagesDir;
+    private static boolean createParentDirectory(String filePath) {
+        File parentDir = new File(filePath).getParentFile();
+        return parentDir.exists() || parentDir.mkdirs();
     }
 
     private class LazyTaskWriterThread extends Thread {
@@ -693,6 +688,10 @@
                 if (item instanceof ImageWriteQueueItem) {
                     ImageWriteQueueItem imageWriteQueueItem = (ImageWriteQueueItem) item;
                     final String filePath = imageWriteQueueItem.mFilePath;
+                    if (!createParentDirectory(filePath)) {
+                        Slog.e(TAG, "Error while creating images directory for file: " + filePath);
+                        continue;
+                    }
                     final Bitmap bitmap = imageWriteQueueItem.mImage;
                     if (DEBUG) Slog.d(TAG, "writing bitmap: filename=" + filePath);
                     FileOutputStream imageFile = null;
diff --git a/services/core/java/com/android/server/am/TaskRecord.java b/services/core/java/com/android/server/am/TaskRecord.java
index e69c662..0165fdf 100644
--- a/services/core/java/com/android/server/am/TaskRecord.java
+++ b/services/core/java/com/android/server/am/TaskRecord.java
@@ -151,6 +151,7 @@
     long lastActiveTime;    // Last time this task was active, including sleep.
     boolean inRecents;      // Actually in the recents list?
     boolean isAvailable;    // Is the activity available to be launched?
+    boolean isLaunching;    // Is an activity in this task launching?
     boolean rootWasReset;   // True if the intent at the root of the task had
                             // the FLAG_ACTIVITY_RESET_TASK_IF_NEEDED flag.
     boolean autoRemoveRecents;  // If true, we should automatically remove the task from
@@ -1227,7 +1228,7 @@
             if (TaskPersister.DEBUG) Slog.d(TaskPersister.TAG, "TaskRecord: attribute name=" +
                     attrName + " value=" + attrValue);
             if (ATTR_TASKID.equals(attrName)) {
-                if (taskId == INVALID_TASK_ID) taskId = Integer.valueOf(attrValue);
+                if (taskId == INVALID_TASK_ID) taskId = Integer.parseInt(attrValue);
             } else if (ATTR_REALACTIVITY.equals(attrName)) {
                 realActivity = ComponentName.unflattenFromString(attrValue);
             } else if (ATTR_REALACTIVITY_SUSPENDED.equals(attrName)) {
@@ -1246,13 +1247,13 @@
             } else if (ATTR_ASKEDCOMPATMODE.equals(attrName)) {
                 askedCompatMode = Boolean.valueOf(attrValue);
             } else if (ATTR_USERID.equals(attrName)) {
-                userId = Integer.valueOf(attrValue);
+                userId = Integer.parseInt(attrValue);
             } else if (ATTR_USER_SETUP_COMPLETE.equals(attrName)) {
                 userSetupComplete = Boolean.valueOf(attrValue);
             } else if (ATTR_EFFECTIVE_UID.equals(attrName)) {
-                effectiveUid = Integer.valueOf(attrValue);
+                effectiveUid = Integer.parseInt(attrValue);
             } else if (ATTR_TASKTYPE.equals(attrName)) {
-                taskType = Integer.valueOf(attrValue);
+                taskType = Integer.parseInt(attrValue);
             } else if (ATTR_FIRSTACTIVETIME.equals(attrName)) {
                 firstActiveTime = Long.valueOf(attrValue);
             } else if (ATTR_LASTACTIVETIME.equals(attrName)) {
@@ -1268,19 +1269,19 @@
             } else if (attrName.startsWith(TaskDescription.ATTR_TASKDESCRIPTION_PREFIX)) {
                 taskDescription.restoreFromXml(attrName, attrValue);
             } else if (ATTR_TASK_AFFILIATION.equals(attrName)) {
-                taskAffiliation = Integer.valueOf(attrValue);
+                taskAffiliation = Integer.parseInt(attrValue);
             } else if (ATTR_PREV_AFFILIATION.equals(attrName)) {
-                prevTaskId = Integer.valueOf(attrValue);
+                prevTaskId = Integer.parseInt(attrValue);
             } else if (ATTR_NEXT_AFFILIATION.equals(attrName)) {
-                nextTaskId = Integer.valueOf(attrValue);
+                nextTaskId = Integer.parseInt(attrValue);
             } else if (ATTR_TASK_AFFILIATION_COLOR.equals(attrName)) {
-                taskAffiliationColor = Integer.valueOf(attrValue);
+                taskAffiliationColor = Integer.parseInt(attrValue);
             } else if (ATTR_CALLING_UID.equals(attrName)) {
-                callingUid = Integer.valueOf(attrValue);
+                callingUid = Integer.parseInt(attrValue);
             } else if (ATTR_CALLING_PACKAGE.equals(attrName)) {
                 callingPackage = attrValue;
             } else if (ATTR_RESIZE_MODE.equals(attrName)) {
-                resizeMode = Integer.valueOf(attrValue);
+                resizeMode = Integer.parseInt(attrValue);
                 resizeMode = (resizeMode == RESIZE_MODE_CROP_WINDOWS)
                         ? RESIZE_MODE_FORCE_RESIZEABLE : resizeMode;
             } else if (ATTR_PRIVILEGED.equals(attrName)) {
@@ -1288,9 +1289,9 @@
             } else if (ATTR_NON_FULLSCREEN_BOUNDS.equals(attrName)) {
                 bounds = Rect.unflattenFromString(attrValue);
             } else if (ATTR_MINIMAL_WIDTH.equals(attrName)) {
-                minimalWidth = Integer.valueOf(attrValue);
+                minimalWidth = Integer.parseInt(attrValue);
             } else if (ATTR_MINIMAL_HEIGHT.equals(attrName)) {
-                minimalHeight = Integer.valueOf(attrValue);
+                minimalHeight = Integer.parseInt(attrValue);
             } else {
                 Slog.w(TAG, "TaskRecord: Unknown attribute=" + attrName);
             }
@@ -1501,22 +1502,22 @@
                 Math.min((int)(mTmpStableBounds.width() / density), serviceConfig.screenWidthDp);
         config.screenHeightDp =
                 Math.min((int)(mTmpStableBounds.height() / density), serviceConfig.screenHeightDp);
-        config.smallestScreenWidthDp = Math.min(config.screenWidthDp, config.screenHeightDp);
 
         // TODO: Orientation?
         config.orientation = (config.screenWidthDp <= config.screenHeightDp)
                 ? Configuration.ORIENTATION_PORTRAIT
                 : Configuration.ORIENTATION_LANDSCAPE;
 
-        // For calculating screen layout, we need to use the non-decor inset screen area for the
-        // calculation for compatibility reasons, i.e. screen area without system bars that could
-        // never go away in Honeycomb.
+        // For calculating screen layout and smallest screen width, we need to use the non-decor
+        // inset screen area for the calculation for compatibility reasons, i.e. screen area without
+        // system bars that could never go away in Honeycomb.
         final int compatScreenWidthDp = (int)(mTmpNonDecorBounds.width() / density);
         final int compatScreenHeightDp = (int)(mTmpNonDecorBounds.height() / density);
         final int sl = Configuration.resetScreenLayout(serviceConfig.screenLayout);
         final int longSize = Math.max(compatScreenHeightDp, compatScreenWidthDp);
-        final int shortSize = Math.min(compatScreenHeightDp, compatScreenWidthDp);
-        config.screenLayout = Configuration.reduceScreenLayout(sl, longSize, shortSize);
+        config.smallestScreenWidthDp = Math.min(compatScreenHeightDp, compatScreenWidthDp);
+        config.screenLayout = Configuration.reduceScreenLayout(sl, longSize,
+                config.smallestScreenWidthDp);
         return config;
     }
 
diff --git a/services/core/java/com/android/server/am/UserController.java b/services/core/java/com/android/server/am/UserController.java
index 5ebb9a7..75d49c3 100644
--- a/services/core/java/com/android/server/am/UserController.java
+++ b/services/core/java/com/android/server/am/UserController.java
@@ -63,6 +63,7 @@
 import android.os.Debug;
 import android.os.Handler;
 import android.os.IBinder;
+import android.os.IProgressListener;
 import android.os.IRemoteCallback;
 import android.os.IUserManager;
 import android.os.Process;
@@ -83,7 +84,6 @@
 import com.android.internal.R;
 import com.android.internal.annotations.GuardedBy;
 import com.android.internal.util.ArrayUtils;
-import com.android.internal.util.ProgressReporter;
 import com.android.internal.widget.LockPatternUtils;
 import com.android.server.LocalServices;
 import com.android.server.pm.UserManagerService;
@@ -101,6 +101,7 @@
  */
 final class UserController {
     private static final String TAG = TAG_WITH_CLASS_NAME ? "UserController" : TAG_AM;
+
     // Maximum number of users we allow to be running at a time.
     static final int MAX_RUNNING_USERS = 3;
 
@@ -260,7 +261,7 @@
      * Step from {@link UserState#STATE_RUNNING_LOCKED} to
      * {@link UserState#STATE_RUNNING_UNLOCKING}.
      */
-    void finishUserUnlocking(final UserState uss, final ProgressReporter progress) {
+    private void finishUserUnlocking(final UserState uss) {
         final int userId = uss.mHandle.getIdentifier();
         synchronized (mService) {
             // Bail if we ended up with a stale user
@@ -270,13 +271,17 @@
             if (!isUserKeyUnlocked(userId)) return;
 
             if (uss.setState(STATE_RUNNING_LOCKED, STATE_RUNNING_UNLOCKING)) {
+                uss.mUnlockProgress.start();
+
                 // Prepare app storage before we go any further
-                progress.setProgress(5, mService.mContext.getString(R.string.android_start_title));
+                uss.mUnlockProgress.setProgress(5,
+                        mService.mContext.getString(R.string.android_start_title));
                 mUserManager.onBeforeUnlockUser(userId);
-                progress.setProgress(20);
+                uss.mUnlockProgress.setProgress(20);
 
                 // Dispatch unlocked to system services
-                mHandler.sendMessage(mHandler.obtainMessage(SYSTEM_USER_UNLOCK_MSG, userId, 0));
+                mHandler.obtainMessage(SYSTEM_USER_UNLOCK_MSG, userId, 0, uss.mUnlockProgress)
+                        .sendToTarget();
 
                 // Dispatch unlocked to external apps
                 final Intent unlockedIntent = new Intent(Intent.ACTION_USER_UNLOCKED);
@@ -306,15 +311,14 @@
                 // Send PRE_BOOT broadcasts if fingerprint changed
                 final UserInfo info = getUserInfo(userId);
                 if (!Objects.equals(info.lastLoggedInFingerprint, Build.FINGERPRINT)) {
-                    progress.startSegment(80);
-                    new PreBootBroadcaster(mService, userId, progress) {
+                    new PreBootBroadcaster(mService, userId, null) {
                         @Override
                         public void onFinished() {
-                            finishUserUnlocked(uss, progress);
+                            finishUserUnlocked(uss);
                         }
                     }.sendNext();
                 } else {
-                    finishUserUnlocked(uss, progress);
+                    finishUserUnlocked(uss);
                 }
             }
         }
@@ -324,15 +328,7 @@
      * Step from {@link UserState#STATE_RUNNING_UNLOCKING} to
      * {@link UserState#STATE_RUNNING_UNLOCKED}.
      */
-    void finishUserUnlocked(UserState uss, ProgressReporter progress) {
-        try {
-            finishUserUnlockedInternal(uss);
-        } finally {
-            progress.finish();
-        }
-    }
-
-    void finishUserUnlockedInternal(UserState uss) {
+    private void finishUserUnlocked(UserState uss) {
         final int userId = uss.mHandle.getIdentifier();
         synchronized (mService) {
             // Bail if we ended up with a stale user
@@ -860,7 +856,7 @@
         return result;
     }
 
-    boolean unlockUser(final int userId, byte[] token, byte[] secret, ProgressReporter progress) {
+    boolean unlockUser(final int userId, byte[] token, byte[] secret, IProgressListener listener) {
         if (mService.checkCallingPermission(INTERACT_ACROSS_USERS_FULL)
                 != PackageManager.PERMISSION_GRANTED) {
             String msg = "Permission Denial: unlockUser() from pid="
@@ -873,7 +869,7 @@
 
         final long binderToken = Binder.clearCallingIdentity();
         try {
-            return unlockUserCleared(userId, token, secret, progress);
+            return unlockUserCleared(userId, token, secret, listener);
         } finally {
             Binder.restoreCallingIdentity(binderToken);
         }
@@ -887,20 +883,29 @@
      */
     boolean maybeUnlockUser(final int userId) {
         // Try unlocking storage using empty token
-        return unlockUserCleared(userId, null, null, ProgressReporter.NO_OP);
+        return unlockUserCleared(userId, null, null, null);
+    }
+
+    private static void notifyFinished(int userId, IProgressListener listener) {
+        if (listener == null) return;
+        try {
+            listener.onFinished(userId, null);
+        } catch (RemoteException ignored) {
+        }
     }
 
     boolean unlockUserCleared(final int userId, byte[] token, byte[] secret,
-            ProgressReporter progress) {
+            IProgressListener listener) {
+        final UserState uss;
         synchronized (mService) {
-            // Bail if already running unlocked, or if not running at all
-            final UserState uss = mStartedUsers.get(userId);
-            if (uss == null) return false;
-            switch (uss.state) {
-                case STATE_RUNNING_UNLOCKING:
-                case STATE_RUNNING_UNLOCKED:
-                    progress.finish();
-                    return true;
+            // Bail if user isn't actually running, otherwise register the given
+            // listener to watch for unlock progress
+            uss = mStartedUsers.get(userId);
+            if (uss == null) {
+                notifyFinished(userId, listener);
+                return false;
+            } else {
+                uss.mUnlockProgress.addListener(listener);
             }
         }
 
@@ -911,14 +916,13 @@
                 mountService.unlockUserKey(userId, userInfo.serialNumber, token, secret);
             } catch (RemoteException | RuntimeException e) {
                 Slog.w(TAG, "Failed to unlock: " + e.getMessage());
-                progress.finish();
+                notifyFinished(userId, listener);
                 return false;
             }
         }
 
         synchronized (mService) {
-            final UserState uss = mStartedUsers.get(userId);
-            finishUserUnlocking(uss, progress);
+            finishUserUnlocking(uss);
 
             // We just unlocked a user, so let's now attempt to unlock any
             // managed profiles under that user.
diff --git a/services/core/java/com/android/server/am/UserState.java b/services/core/java/com/android/server/am/UserState.java
index 6e2342b..56abd95 100644
--- a/services/core/java/com/android/server/am/UserState.java
+++ b/services/core/java/com/android/server/am/UserState.java
@@ -16,9 +16,6 @@
 
 package com.android.server.am;
 
-import java.io.PrintWriter;
-import java.util.ArrayList;
-
 import static com.android.server.am.ActivityManagerDebugConfig.DEBUG_MU;
 import static com.android.server.am.ActivityManagerDebugConfig.TAG_AM;
 import static com.android.server.am.ActivityManagerDebugConfig.TAG_WITH_CLASS_NAME;
@@ -28,6 +25,11 @@
 import android.util.ArrayMap;
 import android.util.Slog;
 
+import com.android.internal.util.ProgressReporter;
+
+import java.io.PrintWriter;
+import java.util.ArrayList;
+
 public final class UserState {
     private static final String TAG = TAG_WITH_CLASS_NAME ? "UserState" : TAG_AM;
 
@@ -47,6 +49,7 @@
     public final UserHandle mHandle;
     public final ArrayList<IStopUserCallback> mStopCallbacks
             = new ArrayList<IStopUserCallback>();
+    public final ProgressReporter mUnlockProgress;
 
     public int state = STATE_BOOTING;
     public int lastState = STATE_BOOTING;
@@ -61,6 +64,7 @@
 
     public UserState(UserHandle handle) {
         mHandle = handle;
+        mUnlockProgress = new ProgressReporter(handle.getIdentifier());
     }
 
     public boolean setState(int oldState, int newState) {
diff --git a/services/core/java/com/android/server/connectivity/DnsEventListenerService.java b/services/core/java/com/android/server/connectivity/DnsEventListenerService.java
new file mode 100644
index 0000000..d3f8af0
--- /dev/null
+++ b/services/core/java/com/android/server/connectivity/DnsEventListenerService.java
@@ -0,0 +1,156 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.connectivity;
+
+import android.content.Context;
+import android.net.metrics.DnsEvent;
+import android.net.ConnectivityManager;
+import android.net.ConnectivityManager.NetworkCallback;
+import android.net.Network;
+import android.net.NetworkRequest;
+import android.net.metrics.IDnsEventListener;
+import android.util.Log;
+
+import com.android.internal.annotations.GuardedBy;
+import com.android.internal.util.IndentingPrintWriter;
+
+import java.io.PrintWriter;
+import java.util.Arrays;
+import java.util.SortedMap;
+import java.util.TreeMap;
+
+
+/**
+ * Implementation of the IDnsEventListener interface.
+ */
+public class DnsEventListenerService extends IDnsEventListener.Stub {
+
+    public static final String SERVICE_NAME = "dns_listener";
+
+    private static final String TAG = DnsEventListenerService.class.getSimpleName();
+    private static final boolean DBG = true;
+    private static final boolean VDBG = false;
+
+    private static final int MAX_LOOKUPS_PER_DNS_EVENT = 100;
+
+    // Stores the results of a number of consecutive DNS lookups on the same network.
+    // This class is not thread-safe and it is the responsibility of the service to call its methods
+    // on one thread at a time.
+    private static class DnsEventBatch {
+        private final int mNetId;
+
+        private final byte[] mEventTypes = new byte[MAX_LOOKUPS_PER_DNS_EVENT];
+        private final byte[] mReturnCodes = new byte[MAX_LOOKUPS_PER_DNS_EVENT];
+        private final int[] mLatenciesMs = new int[MAX_LOOKUPS_PER_DNS_EVENT];
+        private int mEventCount;
+
+        public DnsEventBatch(int netId) {
+            mNetId = netId;
+        }
+
+        public void addResult(byte eventType, byte returnCode, int latencyMs) {
+            mEventTypes[mEventCount] = eventType;
+            mReturnCodes[mEventCount] = returnCode;
+            mLatenciesMs[mEventCount] = latencyMs;
+            mEventCount++;
+            if (mEventCount == MAX_LOOKUPS_PER_DNS_EVENT) {
+                logAndClear();
+            }
+        }
+
+        public void logAndClear() {
+            // Did we lose a race with addResult?
+            if (mEventCount == 0) {
+                return;
+            }
+
+            byte[] returnCodes = Arrays.copyOf(mReturnCodes, mEventCount);
+            int[] latenciesMs = Arrays.copyOf(mLatenciesMs, mEventCount);
+            DnsEvent.logEvent(mNetId, mEventTypes, mReturnCodes, mLatenciesMs);
+            maybeLog(String.format("Logging %d results for netId %d", mEventCount, mNetId));
+            mEventCount = 0;
+        }
+
+        // For debugging and unit tests only.
+        public String toString() {
+            return String.format("%s %d %d", getClass().getSimpleName(), mNetId, mEventCount);
+        }
+    }
+
+    // Only sorted for ease of debugging. Because we only typically have a handful of networks up
+    // at any given time, performance is not a concern.
+    @GuardedBy("this")
+    private SortedMap<Integer, DnsEventBatch> mEventBatches = new TreeMap<>();
+
+    // We register a NetworkCallback to ensure that when a network disconnects, we flush the DNS
+    // queries we've logged on that network. Because we do not do this periodically, we might lose
+    // up to MAX_LOOKUPS_PER_DNS_EVENT lookup stats on each network when the system is shutting
+    // down. We believe this to be sufficient for now.
+    private final ConnectivityManager mCm;
+    private final NetworkCallback mNetworkCallback = new NetworkCallback() {
+        @Override
+        public void onLost(Network network) {
+            synchronized (DnsEventListenerService.this) {
+                DnsEventBatch batch = mEventBatches.remove(network.netId);
+                if (batch != null) {
+                    batch.logAndClear();
+                }
+            }
+        }
+    };
+
+    public DnsEventListenerService(Context context) {
+        // We are started when boot is complete, so ConnectivityService should already be running.
+        final NetworkRequest request = new NetworkRequest.Builder()
+            .clearCapabilities()
+            .build();
+        mCm = context.getSystemService(ConnectivityManager.class);
+        mCm.registerNetworkCallback(request, mNetworkCallback);
+    }
+
+    @Override
+    // Called concurrently by multiple binder threads.
+    public synchronized void onDnsEvent(int netId, int eventType, int returnCode, int latencyMs) {
+        maybeVerboseLog(String.format("onDnsEvent(%d, %d, %d, %d)",
+                netId, eventType, returnCode, latencyMs));
+
+        DnsEventBatch batch = mEventBatches.get(netId);
+        if (batch == null) {
+            batch = new DnsEventBatch(netId);
+            mEventBatches.put(netId, batch);
+        }
+        batch.addResult((byte) eventType, (byte) returnCode, latencyMs);
+    }
+
+    public synchronized void dump(PrintWriter writer) {
+        IndentingPrintWriter pw = new IndentingPrintWriter(writer, "  ");
+        pw.println(TAG + ":");
+        pw.increaseIndent();
+        for (DnsEventBatch batch : mEventBatches.values()) {
+            pw.println(batch.toString());
+        }
+        pw.decreaseIndent();
+    }
+
+    private static void maybeLog(String s) {
+        if (DBG) Log.d(TAG, s);
+    }
+
+    private static void maybeVerboseLog(String s) {
+        if (VDBG) Log.d(TAG, s);
+    }
+}
diff --git a/services/core/java/com/android/server/connectivity/MetricsLoggerService.java b/services/core/java/com/android/server/connectivity/MetricsLoggerService.java
index f91db78..ac5c4ae 100644
--- a/services/core/java/com/android/server/connectivity/MetricsLoggerService.java
+++ b/services/core/java/com/android/server/connectivity/MetricsLoggerService.java
@@ -55,6 +55,8 @@
             if (DBG) Log.d(TAG, "onBootPhase: PHASE_SYSTEM_SERVICES_READY");
             publishBinderService(ConnectivityMetricsLogger.CONNECTIVITY_METRICS_LOGGER_SERVICE,
                     mBinder);
+            mDnsListener = new DnsEventListenerService(getContext());
+            publishBinderService(mDnsListener.SERVICE_NAME, mDnsListener);
         }
     }
 
@@ -89,6 +91,8 @@
 
     private final ArrayDeque<ConnectivityMetricsEvent> mEvents = new ArrayDeque<>();
 
+    private DnsEventListenerService mDnsListener;
+
     private void enforceConnectivityInternalPermission() {
         getContext().enforceCallingOrSelfPermission(
                 android.Manifest.permission.CONNECTIVITY_INTERNAL,
@@ -159,10 +163,12 @@
 
             synchronized (mEvents) {
                 pw.println("Number of events: " + mEvents.size());
-                pw.println("Time span: " +
-                        DateUtils.formatElapsedTime(
-                                (System.currentTimeMillis() - mEvents.peekFirst().timestamp)
-                                        / 1000));
+                if (mEvents.size() > 0) {
+                    pw.println("Time span: " +
+                            DateUtils.formatElapsedTime(
+                                    (System.currentTimeMillis() - mEvents.peekFirst().timestamp)
+                                            / 1000));
+                }
 
                 if (dumpSerializedSize) {
                     long dataSize = 0;
@@ -193,6 +199,9 @@
                     pw.println(pi.toString());
                 }
             }
+
+            pw.println();
+            mDnsListener.dump(pw);
         }
 
         public long logEvent(ConnectivityMetricsEvent event) {
@@ -291,14 +300,14 @@
          */
         public ConnectivityMetricsEvent[] getEvents(ConnectivityMetricsEvent.Reference reference) {
             enforceDumpPermission();
-            long ref = reference.value;
+            long ref = reference.getValue();
             if (VDBG) Log.v(TAG, "getEvents(" + ref + ")");
 
             ConnectivityMetricsEvent[] result;
             synchronized (mEvents) {
                 if (ref > mLastEventReference) {
                     Log.e(TAG, "Invalid reference");
-                    reference.value = mLastEventReference;
+                    reference.setValue(mLastEventReference);
                     return null;
                 }
                 if (ref < mLastEventReference - mEvents.size()) {
@@ -320,7 +329,7 @@
                 }
             }
 
-            reference.value = mLastEventReference;
+            reference.setValue(mLastEventReference);
 
             return result;
         }
diff --git a/services/core/java/com/android/server/connectivity/NetworkAgentInfo.java b/services/core/java/com/android/server/connectivity/NetworkAgentInfo.java
index c5d38cb..3201060 100644
--- a/services/core/java/com/android/server/connectivity/NetworkAgentInfo.java
+++ b/services/core/java/com/android/server/connectivity/NetworkAgentInfo.java
@@ -25,6 +25,7 @@
 import android.net.NetworkInfo;
 import android.net.NetworkMisc;
 import android.net.NetworkRequest;
+import android.net.NetworkState;
 import android.os.Handler;
 import android.os.Messenger;
 import android.util.SparseArray;
@@ -247,6 +248,17 @@
         currentScore = newScore;
     }
 
+    public NetworkState getNetworkState() {
+        synchronized (this) {
+            // Network objects are outwardly immutable so there is no point to duplicating.
+            // Duplicating also precludes sharing socket factories and connection pools.
+            final String subscriberId = (networkMisc != null) ? networkMisc.subscriberId : null;
+            return new NetworkState(new NetworkInfo(networkInfo),
+                    new LinkProperties(linkProperties),
+                    new NetworkCapabilities(networkCapabilities), network, subscriberId, null);
+        }
+    }
+
     public String toString() {
         return "NetworkAgentInfo{ ni{" + networkInfo + "}  " +
                 "network{" + network + "}  nethandle{" + network.getNetworkHandle() + "}  " +
diff --git a/services/core/java/com/android/server/connectivity/NetworkDiagnostics.java b/services/core/java/com/android/server/connectivity/NetworkDiagnostics.java
index dc62609..5f9efe7 100644
--- a/services/core/java/com/android/server/connectivity/NetworkDiagnostics.java
+++ b/services/core/java/com/android/server/connectivity/NetworkDiagnostics.java
@@ -548,8 +548,7 @@
             mMeasurement.description += " src{" + getSocketAddressString() + "}";
 
             // This needs to be fixed length so it can be dropped into the pre-canned packet.
-            final String sixRandomDigits =
-                    Integer.valueOf(mRandom.nextInt(900000) + 100000).toString();
+            final String sixRandomDigits = String.valueOf(mRandom.nextInt(900000) + 100000);
             mMeasurement.description += " qtype{" + mQueryType + "}"
                     + " qname{" + sixRandomDigits + "-android-ds.metric.gstatic.com}";
 
diff --git a/services/core/java/com/android/server/connectivity/NetworkMonitor.java b/services/core/java/com/android/server/connectivity/NetworkMonitor.java
index d330756..f7784ac 100644
--- a/services/core/java/com/android/server/connectivity/NetworkMonitor.java
+++ b/services/core/java/com/android/server/connectivity/NetworkMonitor.java
@@ -34,10 +34,11 @@
 import android.net.ProxyInfo;
 import android.net.TrafficStats;
 import android.net.Uri;
-import android.net.metrics.CaptivePortalCheckResultEvent;
-import android.net.metrics.CaptivePortalStateChangeEvent;
+import android.net.metrics.ValidationProbeEvent;
+import android.net.metrics.NetworkEvent;
 import android.net.wifi.WifiInfo;
 import android.net.wifi.WifiManager;
+import android.net.util.Stopwatch;
 import android.os.Handler;
 import android.os.Message;
 import android.os.Process;
@@ -79,7 +80,7 @@
  */
 public class NetworkMonitor extends StateMachine {
     private static final boolean DBG = false;
-    private static final String TAG = "NetworkMonitor";
+    private static final String TAG = NetworkMonitor.class.getSimpleName();
     private static final String DEFAULT_SERVER = "connectivitycheck.gstatic.com";
     private static final int SOCKET_TIMEOUT_MS = 10000;
     public static final String ACTION_NETWORK_CONDITIONS_MEASURED =
@@ -221,6 +222,7 @@
     private final Context mContext;
     private final Handler mConnectivityServiceHandler;
     private final NetworkAgentInfo mNetworkAgentInfo;
+    private final int mNetId;
     private final TelephonyManager mTelephonyManager;
     private final WifiManager mWifiManager;
     private final AlarmManager mAlarmManager;
@@ -246,6 +248,8 @@
 
     private final LocalLog validationLogs = new LocalLog(20); // 20 lines
 
+    private final Stopwatch mEvaluationTimer = new Stopwatch();
+
     public NetworkMonitor(Context context, Handler handler, NetworkAgentInfo networkAgentInfo,
             NetworkRequest defaultRequest) {
         // Add suffix indicating which NetworkMonitor we're talking about.
@@ -254,6 +258,7 @@
         mContext = context;
         mConnectivityServiceHandler = handler;
         mNetworkAgentInfo = networkAgentInfo;
+        mNetId = mNetworkAgentInfo.network.netId;
         mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
         mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
         mAlarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
@@ -300,13 +305,11 @@
                     transitionTo(mLingeringState);
                     return HANDLED;
                 case CMD_NETWORK_CONNECTED:
-                    CaptivePortalStateChangeEvent.logEvent(
-                            CaptivePortalStateChangeEvent.NETWORK_MONITOR_CONNECTED);
+                    NetworkEvent.logEvent(mNetId, NetworkEvent.NETWORK_CONNECTED);
                     transitionTo(mEvaluatingState);
                     return HANDLED;
                 case CMD_NETWORK_DISCONNECTED:
-                    CaptivePortalStateChangeEvent.logEvent(
-                            CaptivePortalStateChangeEvent.NETWORK_MONITOR_DISCONNECTED);
+                    NetworkEvent.logEvent(mNetId, NetworkEvent.NETWORK_DISCONNECTED);
                     if (mLaunchCaptivePortalAppBroadcastReceiver != null) {
                         mContext.unregisterReceiver(mLaunchCaptivePortalAppBroadcastReceiver);
                         mLaunchCaptivePortalAppBroadcastReceiver = null;
@@ -336,7 +339,7 @@
                             mUserDoesNotWant = true;
                             mConnectivityServiceHandler.sendMessage(obtainMessage(
                                     EVENT_NETWORK_TESTED, NETWORK_TEST_RESULT_INVALID,
-                                    mNetworkAgentInfo.network.netId, null));
+                                    mNetId, null));
                             // TODO: Should teardown network.
                             mUidResponsibleForReeval = 0;
                             transitionTo(mEvaluatingState);
@@ -356,8 +359,10 @@
     private class ValidatedState extends State {
         @Override
         public void enter() {
-            CaptivePortalStateChangeEvent.logEvent(
-                   CaptivePortalStateChangeEvent.NETWORK_MONITOR_VALIDATED);
+            if (mEvaluationTimer.isRunning()) {
+                NetworkEvent.logValidated(mNetId, mEvaluationTimer.stop());
+                mEvaluationTimer.reset();
+            }
             mConnectivityServiceHandler.sendMessage(obtainMessage(EVENT_NETWORK_TESTED,
                     NETWORK_TEST_RESULT_VALID, mNetworkAgentInfo.network.netId, null));
         }
@@ -436,6 +441,12 @@
 
         @Override
         public void enter() {
+            // If we have already started to track time spent in EvaluatingState
+            // don't reset the timer due simply to, say, commands or events that
+            // cause us to exit and re-enter EvaluatingState.
+            if (!mEvaluationTimer.isStarted()) {
+                mEvaluationTimer.start();
+            }
             sendMessage(CMD_REEVALUATE, ++mReevaluateToken, 0);
             if (mUidResponsibleForReeval != INVALID_UID) {
                 TrafficStats.setThreadStatsUid(mUidResponsibleForReeval);
@@ -481,22 +492,20 @@
                     // will be unresponsive. isCaptivePortal() could be executed on another Thread
                     // if this is found to cause problems.
                     CaptivePortalProbeResult probeResult = isCaptivePortal();
-                    CaptivePortalCheckResultEvent.logEvent(mNetworkAgentInfo.network.netId,
-                            probeResult.mHttpResponseCode);
                     if (probeResult.mHttpResponseCode == 204) {
                         transitionTo(mValidatedState);
                     } else if (probeResult.mHttpResponseCode >= 200 &&
                             probeResult.mHttpResponseCode <= 399) {
                         mConnectivityServiceHandler.sendMessage(obtainMessage(EVENT_NETWORK_TESTED,
-                                NETWORK_TEST_RESULT_INVALID, mNetworkAgentInfo.network.netId,
-                                probeResult.mRedirectUrl));
+                                NETWORK_TEST_RESULT_INVALID, mNetId, probeResult.mRedirectUrl));
                         transitionTo(mCaptivePortalState);
                     } else {
                         final Message msg = obtainMessage(CMD_REEVALUATE, ++mReevaluateToken, 0);
                         sendMessageDelayed(msg, mReevaluateDelayMs);
+                        NetworkEvent.logEvent(mNetId, NetworkEvent.NETWORK_VALIDATION_FAILED);
                         mConnectivityServiceHandler.sendMessage(obtainMessage(
-                                EVENT_NETWORK_TESTED, NETWORK_TEST_RESULT_INVALID,
-                                mNetworkAgentInfo.network.netId, probeResult.mRedirectUrl));
+                                EVENT_NETWORK_TESTED, NETWORK_TEST_RESULT_INVALID, mNetId,
+                                probeResult.mRedirectUrl));
                         if (mAttempts >= BLAME_FOR_EVALUATION_ATTEMPTS) {
                             // Don't continue to blame UID forever.
                             TrafficStats.clearThreadStatsUid();
@@ -511,7 +520,7 @@
                     // Before IGNORE_REEVALUATE_ATTEMPTS attempts are made,
                     // ignore any re-evaluation requests. After, restart the
                     // evaluation process via EvaluatingState#enter.
-                    return mAttempts < IGNORE_REEVALUATE_ATTEMPTS ? HANDLED : NOT_HANDLED;
+                    return (mAttempts < IGNORE_REEVALUATE_ATTEMPTS) ? HANDLED : NOT_HANDLED;
                 default:
                     return NOT_HANDLED;
             }
@@ -553,6 +562,10 @@
 
         @Override
         public void enter() {
+            if (mEvaluationTimer.isRunning()) {
+                NetworkEvent.logCaptivePortalFound(mNetId, mEvaluationTimer.stop());
+                mEvaluationTimer.reset();
+            }
             // Don't annoy user with sign-in notifications.
             if (mDontDisplaySigninNotification) return;
             // Create a CustomIntentReceiver that sends us a
@@ -593,7 +606,8 @@
 
         @Override
         public void enter() {
-            final String cmdName = ACTION_LINGER_EXPIRED + "." + mNetworkAgentInfo.network.netId;
+            mEvaluationTimer.reset();
+            final String cmdName = ACTION_LINGER_EXPIRED + "." + mNetId;
             mWakeupMessage = makeWakeupMessage(mContext, getHandler(), cmdName, CMD_LINGER_EXPIRED);
             long wakeupTime = SystemClock.elapsedRealtime() + mLingerDelayMs;
             mWakeupMessage.schedule(wakeupTime);
@@ -663,6 +677,7 @@
         HttpURLConnection urlConnection = null;
         int httpResponseCode = 599;
         String redirectUrl = null;
+        final Stopwatch probeTimer = new Stopwatch().start();
         try {
             URL url = new URL(getCaptivePortalServerUrl(mContext));
             // On networks with a PAC instead of fetching a URL that should result in a 204
@@ -759,6 +774,8 @@
                 urlConnection.disconnect();
             }
         }
+        final int probeType = ValidationProbeEvent.PROBE_HTTP;
+        ValidationProbeEvent.logEvent(mNetId, probeTimer.stop(), probeType, httpResponseCode);
         return new CaptivePortalProbeResult(httpResponseCode, redirectUrl);
     }
 
diff --git a/services/core/java/com/android/server/connectivity/Tethering.java b/services/core/java/com/android/server/connectivity/Tethering.java
index 79b5978..c2022d5 100644
--- a/services/core/java/com/android/server/connectivity/Tethering.java
+++ b/services/core/java/com/android/server/connectivity/Tethering.java
@@ -273,9 +273,6 @@
                     // ignore usb0 down after enabling RNDIS
                     // we will handle disconnect in interfaceRemoved instead
                     if (VDBG) Log.d(TAG, "ignore interface down for " + iface);
-                } else if (isWifi(iface)) {
-                    // handle disconnect in interfaceRemoved
-                    if (VDBG) Log.d(TAG, "ignore interface down for " + iface);
                 } else if (sm != null) {
                     sm.sendMessage(TetherInterfaceSM.CMD_INTERFACE_DOWN);
                     mIfaces.remove(iface);
diff --git a/services/core/java/com/android/server/display/AutomaticBrightnessController.java b/services/core/java/com/android/server/display/AutomaticBrightnessController.java
index 5c80d04..c16dac2 100644
--- a/services/core/java/com/android/server/display/AutomaticBrightnessController.java
+++ b/services/core/java/com/android/server/display/AutomaticBrightnessController.java
@@ -147,6 +147,9 @@
     // A ring buffer containing all of the recent ambient light sensor readings.
     private AmbientLightRingBuffer mAmbientLightRingBuffer;
 
+    // A ring buffer containing the light sensor readings for the initial horizon period.
+    private AmbientLightRingBuffer mInitialHorizonAmbientLightRingBuffer;
+
     // The handler
     private AutomaticBrightnessHandler mHandler;
 
@@ -204,7 +207,10 @@
         mScreenAutoBrightnessAdjustmentMaxGamma = autoBrightnessAdjustmentMaxGamma;
 
         mHandler = new AutomaticBrightnessHandler(looper);
-        mAmbientLightRingBuffer = new AmbientLightRingBuffer(mLightSensorRate, mAmbientLightHorizon);
+        mAmbientLightRingBuffer =
+            new AmbientLightRingBuffer(mLightSensorRate, mAmbientLightHorizon);
+        mInitialHorizonAmbientLightRingBuffer =
+            new AmbientLightRingBuffer(mLightSensorRate, mAmbientLightHorizon);
 
         if (!DEBUG_PRETEND_LIGHT_SENSOR_ABSENT) {
             mLightSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);
@@ -273,6 +279,8 @@
         pw.println("  mLastObservedLuxTime=" + TimeUtils.formatUptime(mLastObservedLuxTime));
         pw.println("  mRecentLightSamples=" + mRecentLightSamples);
         pw.println("  mAmbientLightRingBuffer=" + mAmbientLightRingBuffer);
+        pw.println("  mInitialHorizonAmbientLightRingBuffer=" +
+                mInitialHorizonAmbientLightRingBuffer);
         pw.println("  mScreenAutoBrightness=" + mScreenAutoBrightness);
         pw.println("  mScreenAutoBrightnessAdjustment=" + mScreenAutoBrightnessAdjustment);
         pw.println("  mScreenAutoBrightnessAdjustmentMaxGamma=" + mScreenAutoBrightnessAdjustmentMaxGamma);
@@ -295,6 +303,7 @@
                 mAmbientLuxValid = !mResetAmbientLuxAfterWarmUpConfig;
                 mRecentLightSamples = 0;
                 mAmbientLightRingBuffer.clear();
+                mInitialHorizonAmbientLightRingBuffer.clear();
                 mHandler.removeMessages(MSG_UPDATE_AMBIENT_LUX);
                 mSensorManager.unregisterListener(mLightSensorListener);
             }
@@ -311,6 +320,11 @@
 
     private void applyLightSensorMeasurement(long time, float lux) {
         mRecentLightSamples++;
+        // Store all of the light measurements for the intial horizon period. This is to help
+        // diagnose dim wake ups and slow responses in b/27951906.
+        if (time <= mLightSensorEnableTime + mAmbientLightHorizon) {
+            mInitialHorizonAmbientLightRingBuffer.push(time, lux);
+        }
         mAmbientLightRingBuffer.prune(time - mAmbientLightHorizon);
         mAmbientLightRingBuffer.push(time, lux);
 
@@ -617,7 +631,7 @@
         void updateBrightness();
     }
 
-    private static final class AmbientLightRingBuffer{
+    private static final class AmbientLightRingBuffer {
         // Proportional extra capacity of the buffer beyond the expected number of light samples
         // in the horizon
         private static final float BUFFER_SLACK = 1.5f;
diff --git a/services/core/java/com/android/server/fingerprint/AuthenticationClient.java b/services/core/java/com/android/server/fingerprint/AuthenticationClient.java
new file mode 100644
index 0000000..10284bb
--- /dev/null
+++ b/services/core/java/com/android/server/fingerprint/AuthenticationClient.java
@@ -0,0 +1,156 @@
+/**
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.fingerprint;
+
+import com.android.internal.logging.MetricsLogger;
+import com.android.internal.logging.MetricsProto.MetricsEvent;
+
+import android.content.Context;
+import android.hardware.fingerprint.Fingerprint;
+import android.hardware.fingerprint.FingerprintManager;
+import android.hardware.fingerprint.IFingerprintDaemon;
+import android.hardware.fingerprint.IFingerprintServiceReceiver;
+import android.os.IBinder;
+import android.os.RemoteException;
+import android.system.ErrnoException;
+import android.util.Slog;
+
+/**
+ * A class to keep track of the authentication state for a given client.
+ */
+public abstract class AuthenticationClient extends ClientMonitor {
+    private long mOpId;
+
+    public abstract boolean handleFailedAttempt();
+    public abstract void resetFailedAttempts();
+
+    public AuthenticationClient(Context context, long halDeviceId, IBinder token,
+            IFingerprintServiceReceiver receiver, int callingUserId, int groupId, long opId,
+            boolean restricted, String owner) {
+        super(context, halDeviceId, token, receiver, callingUserId, groupId, restricted, owner);
+        mOpId = opId;
+    }
+
+    @Override
+    public boolean onAuthenticated(int fingerId, int groupId) {
+        boolean result = false;
+        boolean authenticated = fingerId != 0;
+
+        IFingerprintServiceReceiver receiver = getReceiver();
+        if (receiver != null) {
+            try {
+                MetricsLogger.action(getContext(), MetricsEvent.ACTION_FINGERPRINT_AUTH,
+                        authenticated);
+                if (!authenticated) {
+                    receiver.onAuthenticationFailed(getHalDeviceId());
+                } else {
+                    if (DEBUG) {
+                        Slog.v(TAG, "onAuthenticated(owner=" + getOwnerString()
+                                + ", id=" + fingerId + ", gp=" + groupId + ")");
+                    }
+                    Fingerprint fp = !getIsRestricted()
+                            ? new Fingerprint("" /* TODO */, groupId, fingerId, getHalDeviceId())
+                            : null;
+                    receiver.onAuthenticationSucceeded(getHalDeviceId(), fp);
+                }
+            } catch (RemoteException e) {
+                Slog.w(TAG, "Failed to notify Authenticated:", e);
+                result = true; // client failed
+            }
+        } else {
+            result = true; // client not listening
+        }
+        if (fingerId == 0) {
+            if (receiver != null) {
+                FingerprintUtils.vibrateFingerprintError(getContext());
+            }
+            // allow system-defined limit of number of attempts before giving up
+            result |= handleFailedAttempt();
+        } else {
+            if (receiver != null) {
+                FingerprintUtils.vibrateFingerprintSuccess(getContext());
+            }
+            result |= true; // we have a valid fingerprint, done
+            resetFailedAttempts();
+        }
+        return result;
+    }
+
+    /**
+     * Start authentication
+     */
+    @Override
+    public int start() {
+        IFingerprintDaemon daemon = getFingerprintDaemon();
+        if (daemon == null) {
+            Slog.w(TAG, "start authentication: no fingeprintd!");
+            return ERROR_ESRCH;
+        }
+        try {
+            final int result = daemon.authenticate(mOpId, getGroupId());
+            if (result != 0) {
+                Slog.w(TAG, "startAuthentication failed, result=" + result);
+                onError(FingerprintManager.FINGERPRINT_ERROR_HW_UNAVAILABLE);
+                return result;
+            }
+            if (DEBUG) Slog.w(TAG, "client " + getOwnerString() + " is authenticating...");
+        } catch (RemoteException e) {
+            Slog.e(TAG, "startAuthentication failed", e);
+            return ERROR_ESRCH;
+        }
+        return 0; // success
+    }
+
+    @Override
+    public int stop(boolean initiatedByClient) {
+        IFingerprintDaemon daemon = getFingerprintDaemon();
+        if (daemon == null) {
+            Slog.w(TAG, "stopAuthentication: no fingeprintd!");
+            return ERROR_ESRCH;
+        }
+        try {
+            final int result = daemon.cancelAuthentication();
+            if (result != 0) {
+                Slog.w(TAG, "stopAuthentication failed, result=" + result);
+                return result;
+            }
+            if (DEBUG) Slog.w(TAG, "client " + getOwnerString() + " is no longer authenticating");
+        } catch (RemoteException e) {
+            Slog.e(TAG, "stopAuthentication failed", e);
+            return ERROR_ESRCH;
+        }
+        return 0; // success
+    }
+
+    @Override
+    public boolean onEnrollResult(int fingerId, int groupId, int rem) {
+        if (DEBUG) Slog.w(TAG, "onEnrollResult() called for authenticate!");
+        return true; // Invalid for Authenticate
+    }
+
+    @Override
+    public boolean onRemoved(int fingerId, int groupId) {
+        if (DEBUG) Slog.w(TAG, "onRemoved() called for authenticate!");
+        return true; // Invalid for Authenticate
+    }
+
+    @Override
+    public boolean onEnumerationResult(int fingerId, int groupId) {
+        if (DEBUG) Slog.w(TAG, "onEnumerationResult() called for authenticate!");
+        return true; // Invalid for Authenticate
+    }
+}
diff --git a/services/core/java/com/android/server/fingerprint/ClientMonitor.java b/services/core/java/com/android/server/fingerprint/ClientMonitor.java
new file mode 100644
index 0000000..8163b79
--- /dev/null
+++ b/services/core/java/com/android/server/fingerprint/ClientMonitor.java
@@ -0,0 +1,211 @@
+/**
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.fingerprint;
+
+import android.Manifest;
+import android.content.Context;
+import android.hardware.fingerprint.FingerprintManager;
+import android.hardware.fingerprint.IFingerprintDaemon;
+import android.hardware.fingerprint.IFingerprintServiceReceiver;
+import android.os.IBinder;
+import android.os.RemoteException;
+import android.util.Slog;
+
+import java.util.NoSuchElementException;
+
+/**
+ * Abstract base class for keeping track and dispatching events from fingerprintd to the
+ * the current client.  Subclasses are responsible for coordinating the interaction with
+ * fingerprintd for the specific action (e.g. authenticate, enroll, enumerate, etc.).
+ */
+public abstract class ClientMonitor implements IBinder.DeathRecipient {
+    protected static final String TAG = FingerprintService.TAG; // TODO: get specific name
+    protected static final int ERROR_ESRCH = 3; // Likely fingerprintd is dead. See errno.h.
+    protected static final boolean DEBUG = FingerprintService.DEBUG;
+    private IBinder mToken;
+    private IFingerprintServiceReceiver mReceiver;
+    private int mTargetUserId;
+    private int mGroupId;
+    private boolean mIsRestricted; // True if client does not have MANAGE_FINGERPRINT permission
+    private String mOwner;
+    private Context mContext;
+    private long mHalDeviceId;
+
+    /**
+     * @param context context of FingerprintService
+     * @param halDeviceId the HAL device ID of the associated fingerprint hardware
+     * @param token a unique token for the client
+     * @param receiver recipient of related events (e.g. authentication)
+     * @param userId target user id for operation
+     * @param groupId groupId for the fingerprint set
+     * @param restricted whether or not client has the {@link Manifest#MANAGE_FINGERPRINT}
+     * permission
+     * @param owner name of the client that owns this
+     */
+    public ClientMonitor(Context context, long halDeviceId, IBinder token,
+            IFingerprintServiceReceiver receiver, int userId, int groupId,boolean restricted,
+            String owner) {
+        mContext = context;
+        mHalDeviceId = halDeviceId;
+        mToken = token;
+        mReceiver = receiver;
+        mTargetUserId = userId;
+        mGroupId = groupId;
+        mIsRestricted = restricted;
+        mOwner = owner;
+        try {
+            token.linkToDeath(this, 0);
+        } catch (RemoteException e) {
+            Slog.w(TAG, "caught remote exception in linkToDeath: ", e);
+        }
+    }
+
+    /**
+     * Contacts fingerprintd to start the client.
+     * @return 0 on succes, errno from driver on failure
+     */
+    public abstract int start();
+
+    /**
+     * Contacts fingerprintd to stop the client.
+     * @param initiatedByClient whether the operation is at the request of a client
+     */
+    public abstract int stop(boolean initiatedByClient);
+
+    /**
+     * Method to explicitly poke powermanager on events
+     */
+    public abstract void notifyUserActivity();
+
+    /**
+     * Gets the fingerprint daemon from the cached state in the container class.
+     */
+    public abstract IFingerprintDaemon getFingerprintDaemon();
+
+    // Event callbacks from driver. Inappropriate calls is flagged/logged by the
+    // respective client (e.g. enrolling shouldn't get authenticate events).
+    // All of these return 'true' if the operation is completed and it's ok to move
+    // to the next client (e.g. authentication accepts or rejects a fingerprint).
+    public abstract boolean onEnrollResult(int fingerId, int groupId, int rem);
+    public abstract boolean onAuthenticated(int fingerId, int groupId);
+    public abstract boolean onRemoved(int fingerId, int groupId);
+    public abstract boolean onEnumerationResult(int fingerId, int groupId);
+
+    /**
+     * Called when we get notification from fingerprintd that an image has been acquired.
+     * Common to authenticate and enroll.
+     * @param acquiredInfo info about the current image acquisition
+     * @return true if client should be removed
+     */
+    public boolean onAcquired(int acquiredInfo) {
+        if (mReceiver == null)
+            return true; // client not connected
+        try {
+            mReceiver.onAcquired(getHalDeviceId(), acquiredInfo);
+            return false; // acquisition continues...
+        } catch (RemoteException e) {
+            Slog.w(TAG, "Failed to invoke sendAcquired:", e);
+            return true; // client failed
+        } finally {
+            // Good scans will keep the device awake
+            if (acquiredInfo == FingerprintManager.FINGERPRINT_ACQUIRED_GOOD) {
+                notifyUserActivity();
+            }
+        }
+    }
+
+    /**
+     * Called when we get notification from fingerprintd that an error has occurred with the
+     * current operation. Common to authenticate, enroll, enumerate and remove.
+     * @param error
+     * @return true if client should be removed
+     */
+    public boolean onError(int error) {
+        if (mReceiver != null) {
+            try {
+                mReceiver.onError(getHalDeviceId(), error);
+            } catch (RemoteException e) {
+                Slog.w(TAG, "Failed to invoke sendError:", e);
+            }
+        }
+        return true; // errors always remove current client
+    }
+
+    public void destroy() {
+        if (mToken != null) {
+            try {
+                mToken.unlinkToDeath(this, 0);
+            } catch (NoSuchElementException e) {
+                // TODO: remove when duplicate call bug is found
+                Slog.e(TAG, "destroy(): " + this + ":", new Exception("here"));
+            }
+            mToken = null;
+        }
+        mReceiver = null;
+    }
+
+    @Override
+    public void binderDied() {
+        mToken = null;
+        mReceiver = null;
+        onError(FingerprintManager.FINGERPRINT_ERROR_HW_UNAVAILABLE);
+    }
+
+    @Override
+    protected void finalize() throws Throwable {
+        try {
+            if (mToken != null) {
+                if (DEBUG) Slog.w(TAG, "removing leaked reference: " + mToken);
+                onError(FingerprintManager.FINGERPRINT_ERROR_HW_UNAVAILABLE);
+            }
+        } finally {
+            super.finalize();
+        }
+    }
+
+    public final Context getContext() {
+        return mContext;
+    }
+
+    public final long getHalDeviceId() {
+        return mHalDeviceId;
+    }
+
+    public final String getOwnerString() {
+        return mOwner;
+    }
+
+    public final IFingerprintServiceReceiver getReceiver() {
+        return mReceiver;
+    }
+
+    public final boolean getIsRestricted() {
+        return mIsRestricted;
+    }
+
+    public final int getTargetUserId() {
+        return mTargetUserId;
+    }
+
+    public final int getGroupId() {
+        return mGroupId;
+    }
+
+    public final IBinder getToken() {
+        return mToken;
+    }
+}
diff --git a/services/core/java/com/android/server/fingerprint/EnrollClient.java b/services/core/java/com/android/server/fingerprint/EnrollClient.java
new file mode 100644
index 0000000..b636ce5
--- /dev/null
+++ b/services/core/java/com/android/server/fingerprint/EnrollClient.java
@@ -0,0 +1,139 @@
+/**
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.fingerprint;
+
+import android.content.Context;
+import android.hardware.fingerprint.FingerprintManager;
+import android.hardware.fingerprint.IFingerprintDaemon;
+import android.hardware.fingerprint.IFingerprintServiceReceiver;
+import android.os.IBinder;
+import android.os.RemoteException;
+import android.util.Slog;
+
+import com.android.internal.logging.MetricsLogger;
+import com.android.internal.logging.MetricsProto.MetricsEvent;
+
+import java.util.Arrays;
+
+/**
+ * A class to keep track of the enrollment state for a given client.
+ */
+public abstract class EnrollClient extends ClientMonitor {
+    private static final long MS_PER_SEC = 1000;
+    private static final int ENROLLMENT_TIMEOUT_MS = 60 * 1000; // 1 minute
+    private byte[] mCryptoToken;
+
+    public EnrollClient(Context context, long halDeviceId, IBinder token,
+            IFingerprintServiceReceiver receiver, int userId, int groupId, byte [] cryptoToken,
+            boolean restricted, String owner) {
+        super(context, halDeviceId, token, receiver, userId, groupId, restricted, owner);
+        mCryptoToken = Arrays.copyOf(cryptoToken, cryptoToken.length);
+    }
+
+    @Override
+    public boolean onEnrollResult(int fingerId, int groupId, int remaining) {
+        if (groupId != getGroupId()) {
+            Slog.w(TAG, "groupId != getGroupId(), groupId: " + groupId +
+                    " getGroupId():" + getGroupId());
+        }
+        if (remaining == 0) {
+            FingerprintUtils.getInstance().addFingerprintForUser(getContext(), fingerId, groupId);
+        }
+        return sendEnrollResult(fingerId, groupId, remaining);
+    }
+
+    /*
+     * @return true if we're done.
+     */
+    private boolean sendEnrollResult(int fpId, int groupId, int remaining) {
+        IFingerprintServiceReceiver receiver = getReceiver();
+        if (receiver == null)
+            return true; // client not listening
+
+        FingerprintUtils.vibrateFingerprintSuccess(getContext());
+        MetricsLogger.action(getContext(), MetricsEvent.ACTION_FINGERPRINT_ENROLL);
+        try {
+            receiver.onEnrollResult(getHalDeviceId(), fpId, groupId, remaining);
+            return remaining == 0;
+        } catch (RemoteException e) {
+            Slog.w(TAG, "Failed to notify EnrollResult:", e);
+            return true;
+        }
+    }
+
+    @Override
+    public int start() {
+        IFingerprintDaemon daemon = getFingerprintDaemon();
+        if (daemon == null) {
+            Slog.w(TAG, "enroll: no fingeprintd!");
+            return ERROR_ESRCH;
+        }
+        final int timeout = (int) (ENROLLMENT_TIMEOUT_MS / MS_PER_SEC);
+        try {
+            final int result = daemon.enroll(mCryptoToken, getGroupId(), timeout);
+            if (result != 0) {
+                Slog.w(TAG, "startEnroll failed, result=" + result);
+                onError(FingerprintManager.FINGERPRINT_ERROR_HW_UNAVAILABLE);
+                return result;
+            }
+        } catch (RemoteException e) {
+            Slog.e(TAG, "startEnroll failed", e);
+        }
+        return 0; // success
+    }
+
+    @Override
+    public int stop(boolean initiatedByClient) {
+        IFingerprintDaemon daemon = getFingerprintDaemon();
+        if (daemon == null) {
+            Slog.w(TAG, "stopEnrollment: no fingeprintd!");
+            return ERROR_ESRCH;
+        }
+        try {
+            final int result = daemon.cancelEnrollment();
+            if (result != 0) {
+                Slog.w(TAG, "startEnrollCancel failed, result = " + result);
+                return result;
+            }
+        } catch (RemoteException e) {
+            Slog.e(TAG, "stopEnrollment failed", e);
+        }
+        if (initiatedByClient) {
+            onError(FingerprintManager.FINGERPRINT_ERROR_CANCELED);
+        }
+        return 0;
+    }
+
+    @Override
+    public boolean onRemoved(int fingerId, int groupId) {
+        if (DEBUG) Slog.w(TAG, "onRemoved() called for enroll!");
+        return true; // Invalid for EnrollClient
+    }
+
+    @Override
+    public boolean onEnumerationResult(int fingerId, int groupId) {
+        if (DEBUG) Slog.w(TAG, "onEnumerationResult() called for enroll!");
+        return true; // Invalid for EnrollClient
+    }
+
+    @Override
+    public boolean onAuthenticated(int fingerId, int groupId) {
+        if (DEBUG) Slog.w(TAG, "onAuthenticated() called for enroll!");
+        return true; // Invalid for EnrollClient
+    }
+
+}
diff --git a/services/core/java/com/android/server/fingerprint/EnumerateClient.java b/services/core/java/com/android/server/fingerprint/EnumerateClient.java
new file mode 100644
index 0000000..52dbd5d
--- /dev/null
+++ b/services/core/java/com/android/server/fingerprint/EnumerateClient.java
@@ -0,0 +1,92 @@
+/**
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.fingerprint;
+
+import android.content.Context;
+import android.hardware.fingerprint.FingerprintManager;
+import android.hardware.fingerprint.IFingerprintDaemon;
+import android.hardware.fingerprint.IFingerprintServiceReceiver;
+import android.os.IBinder;
+import android.os.RemoteException;
+import android.util.Slog;
+
+/**
+ * A class to keep track of the enumeration state for a given client.
+ */
+public abstract class EnumerateClient extends ClientMonitor {
+    public EnumerateClient(Context context, long halDeviceId, IBinder token,
+            IFingerprintServiceReceiver receiver, int userId, int groupId,
+            boolean restricted, String owner) {
+        super(context, halDeviceId, token, receiver, userId, groupId, restricted, owner);
+    }
+
+    @Override
+    public int start() {
+        IFingerprintDaemon daemon = getFingerprintDaemon();
+        // The fingerprint template ids will be removed when we get confirmation from the HAL
+        try {
+            final int result = daemon.enumerate();
+            if (result != 0) {
+                Slog.w(TAG, "start enumerate for user " + getTargetUserId()
+                    + " failed, result=" + result);
+                onError(FingerprintManager.FINGERPRINT_ERROR_HW_UNAVAILABLE);
+                return result;
+            }
+        } catch (RemoteException e) {
+            Slog.e(TAG, "startRemove failed", e);
+        }
+        return 0;
+    }
+
+    @Override
+    public int stop(boolean initiatedByClient) {
+        IFingerprintDaemon daemon = getFingerprintDaemon();
+        if (daemon == null) {
+            Slog.w(TAG, "stopAuthentication: no fingeprintd!");
+            return ERROR_ESRCH;
+        }
+        try {
+            final int result = daemon.cancelEnumeration();
+            if (result != 0) {
+                Slog.w(TAG, "stop enumeration failed, result=" + result);
+                return result;
+            }
+        } catch (RemoteException e) {
+            Slog.e(TAG, "stop enumeration failed", e);
+            return ERROR_ESRCH;
+        }
+        // We don't actually stop enumerate, but inform the client that the cancel operation
+        // succeeded so we can start the next operation.
+        if (initiatedByClient) {
+            onError(FingerprintManager.FINGERPRINT_ERROR_CANCELED);
+        }
+        return 0; // success
+    }
+
+    @Override
+    public boolean onEnumerationResult(int fingerId, int groupId) {
+        IFingerprintServiceReceiver receiver = getReceiver();
+        if (receiver == null)
+            return true; // client not listening
+        try {
+            receiver.onRemoved(getHalDeviceId(), fingerId, groupId);
+        } catch (RemoteException e) {
+            Slog.w(TAG, "Failed to notify enumerated:", e);
+        }
+        return fingerId == 0; // done when id hits 0
+    }
+}
diff --git a/services/core/java/com/android/server/fingerprint/FingerprintService.java b/services/core/java/com/android/server/fingerprint/FingerprintService.java
index e3f3849..9a2db8e 100644
--- a/services/core/java/com/android/server/fingerprint/FingerprintService.java
+++ b/services/core/java/com/android/server/fingerprint/FingerprintService.java
@@ -19,7 +19,6 @@
 import android.Manifest;
 import android.app.ActivityManager;
 import android.app.ActivityManager.RunningAppProcessInfo;
-import android.app.trust.TrustManager;
 import android.app.ActivityManagerNative;
 import android.app.AlarmManager;
 import android.app.AppOpsManager;
@@ -48,7 +47,6 @@
 import android.util.Slog;
 
 import com.android.internal.logging.MetricsLogger;
-import com.android.internal.logging.MetricsProto.MetricsEvent;
 import com.android.server.SystemService;
 
 import org.json.JSONArray;
@@ -75,7 +73,6 @@
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
-import java.util.NoSuchElementException;
 
 /**
  * A service to manage multiple clients that want to access the fingerprint HAL API.
@@ -85,31 +82,36 @@
  * @hide
  */
 public class FingerprintService extends SystemService implements IBinder.DeathRecipient {
-    private static final String TAG = "FingerprintService";
-    private static final boolean DEBUG = true;
+    static final String TAG = "FingerprintService";
+    static final boolean DEBUG = true;
     private static final String FP_DATA_DIR = "fpdata";
     private static final String FINGERPRINTD = "android.hardware.fingerprint.IFingerprintDaemon";
     private static final int MSG_USER_SWITCHING = 10;
-    private static final int ENROLLMENT_TIMEOUT_MS = 60 * 1000; // 1 minute
     private static final String ACTION_LOCKOUT_RESET =
             "com.android.server.fingerprint.ACTION_LOCKOUT_RESET";
 
-    private ClientMonitor mAuthClient = null;
-    private ClientMonitor mEnrollClient = null;
-    private ClientMonitor mRemoveClient = null;
     private final ArrayList<FingerprintServiceLockoutResetMonitor> mLockoutMonitors =
             new ArrayList<>();
     private final AppOpsManager mAppOps;
 
-    private static final long MS_PER_SEC = 1000;
     private static final long FAIL_LOCKOUT_TIMEOUT_MS = 30*1000;
     private static final int MAX_FAILED_ATTEMPTS = 5;
-    private static final int FINGERPRINT_ACQUIRED_GOOD = 0;
+    private static final long CANCEL_TIMEOUT_LIMIT = 300; // max wait for onCancel() from HAL,in ms
     private final String mKeyguardPackage;
     private int mCurrentUserId = UserHandle.USER_CURRENT;
-    private int mUserIdForRemove = UserHandle.USER_NULL;
+    private final FingerprintUtils mFingerprintUtils = FingerprintUtils.getInstance();
+    private Context mContext;
+    private long mHalDeviceId;
+    private int mFailedAttempts;
+    private IFingerprintDaemon mDaemon;
+    private final PowerManager mPowerManager;
+    private final AlarmManager mAlarmManager;
+    private final UserManager mUserManager;
+    private ClientMonitor mCurrentClient;
+    private ClientMonitor mPendingClient;
+    private long mCurrentAuthenticatorId;
 
-    Handler mHandler = new Handler() {
+    private Handler mHandler = new Handler() {
         @Override
         public void handleMessage(android.os.Message msg) {
             switch (msg.what) {
@@ -123,15 +125,6 @@
         }
     };
 
-    private final FingerprintUtils mFingerprintUtils = FingerprintUtils.getInstance();
-    private Context mContext;
-    private long mHalDeviceId;
-    private int mFailedAttempts;
-    private IFingerprintDaemon mDaemon;
-    private final PowerManager mPowerManager;
-    private final AlarmManager mAlarmManager;
-    private final UserManager mUserManager;
-
     private final BroadcastReceiver mLockoutReceiver = new BroadcastReceiver() {
         @Override
         public void onReceive(Context context, Intent intent) {
@@ -148,6 +141,26 @@
         }
     };
 
+    private final Runnable mResetClientState = new Runnable() {
+        @Override
+        public void run() {
+            // Warning: if we get here, the driver never confirmed our call to cancel the current
+            // operation (authenticate, enroll, remove, enumerate, etc), which is
+            // really bad.  The result will be a 3-second delay in starting each new client.
+            // If you see this on a device, make certain the driver notifies with
+            // {@link FingerprintManager#FINGERPRINT_ERROR_CANCEL} in response to cancel()
+            // once it has successfully switched to the IDLE state in the fingerprint HAL.
+            // Additionally,{@link FingerprintManager#FINGERPRINT_ERROR_CANCEL} should only be sent
+            // in response to an actual cancel() call.
+            Slog.w(TAG, "Client "
+                    + (mCurrentClient != null ? mCurrentClient.getOwnerString() : "null")
+                    + " failed to respond to cancel, starting client "
+                    + (mPendingClient != null ? mPendingClient.getOwnerString() : "null"));
+            mCurrentClient = null;
+            startClient(mPendingClient, false);
+        }
+    };
+
     public FingerprintService(Context context) {
         super(context);
         mContext = context;
@@ -203,64 +216,49 @@
         // TODO: update fingerprint/name pairs
     }
 
-    protected void handleRemoved(long deviceId, int fingerId, int groupId) {
-        final ClientMonitor client = mRemoveClient;
-        if (fingerId != 0) {
-            removeTemplateForUser(mUserIdForRemove, fingerId);
-        } else {
-            mUserIdForRemove = UserHandle.USER_NULL;
+    protected void handleError(long deviceId, int error) {
+        ClientMonitor client = mCurrentClient;
+        if (client != null && client.onError(error)) {
+            removeClient(client);
         }
-        if (client != null && client.sendRemoved(fingerId, groupId)) {
+        if (DEBUG) Slog.v(TAG, "handleError(client="
+                + (client != null ? client.getOwnerString() : "null") + ", error = " + error + ")");
+        // This is the magic code that starts the next client when the old client finishes.
+        if (error == FingerprintManager.FINGERPRINT_ERROR_CANCELED) {
+            mHandler.removeCallbacks(mResetClientState);
+            if (mPendingClient != null) {
+                if (DEBUG) Slog.v(TAG, "start pending client " + mPendingClient.getOwnerString());
+                startClient(mPendingClient, false);
+                mPendingClient = null;
+            }
+        }
+    }
+
+    protected void handleRemoved(long deviceId, int fingerId, int groupId) {
+        ClientMonitor client = mCurrentClient;
+        if (client != null && client.onRemoved(fingerId, groupId)) {
             removeClient(client);
         }
     }
 
-    protected void handleError(long deviceId, int error) {
-        if (mEnrollClient != null) {
-            final IBinder token = mEnrollClient.token;
-            if (mEnrollClient.sendError(error)) {
-                stopEnrollment(token, false);
-            }
-        } else if (mAuthClient != null) {
-            final IBinder token = mAuthClient.token;
-            if (mAuthClient.sendError(error)) {
-                stopAuthentication(token, false);
-            }
-        } else if (mRemoveClient != null) {
-            if (mRemoveClient.sendError(error)) removeClient(mRemoveClient);
-        }
-    }
-
     protected void handleAuthenticated(long deviceId, int fingerId, int groupId) {
-        if (mAuthClient != null) {
-            final IBinder token = mAuthClient.token;
-            if (mAuthClient.sendAuthenticated(fingerId, groupId)) {
-                stopAuthentication(token, false);
-                removeClient(mAuthClient);
-            }
+        ClientMonitor client = mCurrentClient;
+        if (client != null && client.onAuthenticated(fingerId, groupId)) {
+            removeClient(client);
         }
     }
 
     protected void handleAcquired(long deviceId, int acquiredInfo) {
-        if (mEnrollClient != null) {
-            if (mEnrollClient.sendAcquired(acquiredInfo)) {
-                removeClient(mEnrollClient);
-            }
-        } else if (mAuthClient != null) {
-            if (mAuthClient.sendAcquired(acquiredInfo)) {
-                removeClient(mAuthClient);
-            }
+        ClientMonitor client = mCurrentClient;
+        if (client != null && client.onAcquired(acquiredInfo)) {
+            removeClient(client);
         }
     }
 
     protected void handleEnrollResult(long deviceId, int fingerId, int groupId, int remaining) {
-        if (mEnrollClient != null) {
-            if (mEnrollClient.sendEnrollResult(fingerId, groupId, remaining)) {
-                if (remaining == 0) {
-                    addTemplateForUser(mEnrollClient, fingerId);
-                    removeClient(mEnrollClient);
-                }
-            }
+        ClientMonitor client = mCurrentClient;
+        if (client != null && client.onEnrollResult(fingerId, groupId, remaining)) {
+            removeClient(client);
         }
     }
 
@@ -274,14 +272,16 @@
     }
 
     private void removeClient(ClientMonitor client) {
-        if (client == null) return;
-        client.destroy();
-        if (client == mAuthClient) {
-            mAuthClient = null;
-        } else if (client == mEnrollClient) {
-            mEnrollClient = null;
-        } else if (client == mRemoveClient) {
-            mRemoveClient = null;
+        if (client != null) {
+            client.destroy();
+            if (client != mCurrentClient && mCurrentClient != null) {
+                Slog.w(TAG, "Unexpected client: " + client.getOwnerString() + "expected: "
+                        + mCurrentClient != null ? mCurrentClient.getOwnerString() : "null");
+            }
+        }
+        if (mCurrentClient != null) {
+            if (DEBUG) Slog.v(TAG, "Done with client: " + client.getOwnerString());
+            mCurrentClient = null;
         }
     }
 
@@ -303,60 +303,6 @@
                 new Intent(ACTION_LOCKOUT_RESET), PendingIntent.FLAG_UPDATE_CURRENT);
     }
 
-    private void resetFailedAttempts() {
-        if (DEBUG && inLockoutMode()) {
-            Slog.v(TAG, "Reset fingerprint lockout");
-        }
-        mFailedAttempts = 0;
-        // If we're asked to reset failed attempts externally (i.e. from Keyguard), the alarm might
-        // still be pending; remove it.
-        cancelLockoutReset();
-        notifyLockoutResetMonitors();
-    }
-
-    private boolean handleFailedAttempt(ClientMonitor clientMonitor) {
-        mFailedAttempts++;
-        if (inLockoutMode()) {
-            // Failing multiple times will continue to push out the lockout time.
-            scheduleLockoutReset();
-            if (clientMonitor != null
-                    && !clientMonitor.sendError(FingerprintManager.FINGERPRINT_ERROR_LOCKOUT)) {
-                Slog.w(TAG, "Cannot send lockout message to client");
-            }
-            return true;
-        }
-        return false;
-    }
-
-    private void removeTemplateForUser(int userId, int fingerId) {
-        mFingerprintUtils.removeFingerprintIdForUser(mContext, fingerId, userId);
-    }
-
-    private void addTemplateForUser(ClientMonitor clientMonitor, int fingerId) {
-        mFingerprintUtils.addFingerprintForUser(mContext, fingerId, clientMonitor.userId);
-    }
-
-    void startEnrollment(IBinder token, byte[] cryptoToken, int groupId,
-            IFingerprintServiceReceiver receiver, int flags, boolean restricted) {
-        IFingerprintDaemon daemon = getFingerprintDaemon();
-        if (daemon == null) {
-            Slog.w(TAG, "enroll: no fingeprintd!");
-            return;
-        }
-        stopPendingOperations(true);
-        mEnrollClient = new ClientMonitor(token, receiver, groupId, restricted, token.toString());
-        final int timeout = (int) (ENROLLMENT_TIMEOUT_MS / MS_PER_SEC);
-        try {
-            final int result = daemon.enroll(cryptoToken, groupId, timeout);
-            if (result != 0) {
-                Slog.w(TAG, "startEnroll failed, result=" + result);
-                handleError(mHalDeviceId, FingerprintManager.FINGERPRINT_ERROR_HW_UNAVAILABLE);
-            }
-        } catch (RemoteException e) {
-            Slog.e(TAG, "startEnroll failed", e);
-        }
-    }
-
     public long startPreEnroll(IBinder token) {
         IFingerprintDaemon daemon = getFingerprintDaemon();
         if (daemon == null) {
@@ -385,123 +331,51 @@
         return 0;
     }
 
-    private void stopPendingOperations(boolean initiatedByClient) {
-        if (mEnrollClient != null) {
-            stopEnrollment(mEnrollClient.token, initiatedByClient);
-        }
-        if (mAuthClient != null) {
-            stopAuthentication(mAuthClient.token, initiatedByClient);
-        }
-        // mRemoveClient is allowed to continue
-    }
-
     /**
-     * Stop enrollment in progress and inform client if they initiated it.
-     *
-     * @param token token for client
-     * @param initiatedByClient if this call is the result of client action (e.g. calling cancel)
+     * Calls fingerprintd to switch states to the new task. If there's already a current task,
+     * it calls cancel() and sets mPendingClient to begin when the current task finishes
+     * ({@link FingerprintManager#FINGERPRINT_ERROR_CANCELED}).
+     * @param newClient the new client that wants to connect
+     * @param initiatedByClient true for authenticate, remove and enroll
      */
-    void stopEnrollment(IBinder token, boolean initiatedByClient) {
-        IFingerprintDaemon daemon = getFingerprintDaemon();
-        if (daemon == null) {
-            Slog.w(TAG, "stopEnrollment: no fingeprintd!");
-            return;
-        }
-        final ClientMonitor client = mEnrollClient;
-        if (client == null || client.token != token) return;
-        if (initiatedByClient) {
-            try {
-                int result = daemon.cancelEnrollment();
-                if (result != 0) {
-                    Slog.w(TAG, "startEnrollCancel failed, result = " + result);
-                }
-            } catch (RemoteException e) {
-                Slog.e(TAG, "stopEnrollment failed", e);
-            }
-            client.sendError(FingerprintManager.FINGERPRINT_ERROR_CANCELED);
-        }
-        removeClient(mEnrollClient);
-    }
-
-    void startAuthentication(IBinder token, long opId, int realUserId, int groupId,
-            IFingerprintServiceReceiver receiver, int flags, boolean restricted,
-            String opPackageName) {
-        IFingerprintDaemon daemon = getFingerprintDaemon();
-        if (daemon == null) {
-            Slog.w(TAG, "startAuthentication: no fingeprintd!");
-            return;
-        }
-        stopPendingOperations(true);
-        updateActiveGroup(groupId, opPackageName);
-        mAuthClient = new ClientMonitor(token, receiver, groupId, restricted, opPackageName);
-        if (inLockoutMode()) {
-            Slog.v(TAG, "In lockout mode; disallowing authentication");
-            if (!mAuthClient.sendError(FingerprintManager.FINGERPRINT_ERROR_LOCKOUT)) {
-                Slog.w(TAG, "Cannot send timeout message to client");
-            }
-            mAuthClient = null;
-            return;
-        }
-        try {
-            final int result = daemon.authenticate(opId, groupId);
-            if (result != 0) {
-                Slog.w(TAG, "startAuthentication failed, result=" + result);
-                handleError(mHalDeviceId, FingerprintManager.FINGERPRINT_ERROR_HW_UNAVAILABLE);
-            }
-        } catch (RemoteException e) {
-            Slog.e(TAG, "startAuthentication failed", e);
+    private void startClient(ClientMonitor newClient, boolean initiatedByClient) {
+        ClientMonitor currentClient = mCurrentClient;
+        if (currentClient != null) {
+            if (DEBUG) Slog.v(TAG, "request stop current client " + currentClient.getOwnerString());
+            currentClient.stop(initiatedByClient);
+            mPendingClient = newClient;
+            mHandler.removeCallbacks(mResetClientState);
+            mHandler.postDelayed(mResetClientState, CANCEL_TIMEOUT_LIMIT);
+        } else if (newClient != null) {
+            mCurrentClient = newClient;
+            if (DEBUG) Slog.v(TAG, "starting client "
+                    + newClient.getClass().getSuperclass().getSimpleName()
+                    + "(" + newClient.getOwnerString() + ")"
+                    + ", initiatedByClient = " + initiatedByClient + ")");
+            newClient.start();
         }
     }
 
-    /**
-     * Stop authentication in progress and inform client if they initiated it.
-     *
-     * @param token token for client
-     * @param initiatedByClient if this call is the result of client action (e.g. calling cancel)
-     */
-    void stopAuthentication(IBinder token, boolean initiatedByClient) {
-        IFingerprintDaemon daemon = getFingerprintDaemon();
-        if (daemon == null) {
-            Slog.w(TAG, "stopAuthentication: no fingeprintd!");
-            return;
-        }
-        final ClientMonitor client = mAuthClient;
-        if (client == null || client.token != token) return;
-        if (initiatedByClient) {
-            try {
-                int result = daemon.cancelAuthentication();
-                if (result != 0) {
-                    Slog.w(TAG, "stopAuthentication failed, result=" + result);
-                }
-            } catch (RemoteException e) {
-                Slog.e(TAG, "stopAuthentication failed", e);
-            }
-            client.sendError(FingerprintManager.FINGERPRINT_ERROR_CANCELED);
-        }
-        removeClient(mAuthClient);
-    }
-
-    void startRemove(IBinder token, int fingerId, int userId,
+    void startRemove(IBinder token, int fingerId, int groupId, int userId,
             IFingerprintServiceReceiver receiver, boolean restricted) {
         IFingerprintDaemon daemon = getFingerprintDaemon();
         if (daemon == null) {
             Slog.w(TAG, "startRemove: no fingeprintd!");
             return;
         }
-
-        stopPendingOperations(true);
-        mRemoveClient = new ClientMonitor(token, receiver, userId, restricted, token.toString());
-        mUserIdForRemove = mCurrentUserId;
-        // The fingerprint template ids will be removed when we get confirmation from the HAL
-        try {
-            final int result = daemon.remove(fingerId, userId);
-            if (result != 0) {
-                Slog.w(TAG, "startRemove with id = " + fingerId + " failed, result=" + result);
-                handleError(mHalDeviceId, FingerprintManager.FINGERPRINT_ERROR_HW_UNAVAILABLE);
+        RemovalClient client = new RemovalClient(getContext(), mHalDeviceId, token,
+                receiver, fingerId, groupId, userId, restricted, token.toString()) {
+            @Override
+            public void notifyUserActivity() {
+                FingerprintService.this.userActivity();
             }
-        } catch (RemoteException e) {
-            Slog.e(TAG, "startRemove failed", e);
-        }
+
+            @Override
+            public IFingerprintDaemon getFingerprintDaemon() {
+                return FingerprintService.this.getFingerprintDaemon();
+            }
+        };
+        startClient(client, true);
     }
 
     public List<Fingerprint> getEnrolledFingerprints(int userId) {
@@ -572,10 +446,9 @@
      * @param foregroundOnly only allow this call while app is in the foreground
      * @return true if caller can use fingerprint API
      */
-    private boolean canUseFingerprint(String opPackageName, boolean foregroundOnly) {
+    private boolean canUseFingerprint(String opPackageName, boolean foregroundOnly, int uid,
+            int pid) {
         checkPermission(USE_FINGERPRINT);
-        final int uid = Binder.getCallingUid();
-        final int pid = Binder.getCallingPid();
         if (isKeyguard(opPackageName)) {
             return true; // Keyguard is always allowed
         }
@@ -620,165 +493,83 @@
         }
     }
 
-    private class ClientMonitor implements IBinder.DeathRecipient {
-        IBinder token;
-        IFingerprintServiceReceiver receiver;
-        int userId;
-        boolean restricted; // True if client does not have MANAGE_FINGERPRINT permission
-        String owner;
+    private void startAuthentication(IBinder token, long opId, int callingUserId, int groupId,
+                IFingerprintServiceReceiver receiver, int flags, boolean restricted,
+                String opPackageName) {
+        updateActiveGroup(groupId, opPackageName);
 
-        public ClientMonitor(IBinder token, IFingerprintServiceReceiver receiver, int userId,
-                boolean restricted, String owner) {
-            this.token = token;
-            this.receiver = receiver;
-            this.userId = userId;
-            this.restricted = restricted;
-            this.owner = owner; // name of the client that owns this - for debugging
-            try {
-                token.linkToDeath(this, 0);
-            } catch (RemoteException e) {
-                Slog.w(TAG, "caught remote exception in linkToDeath: ", e);
-            }
-        }
+        if (DEBUG) Slog.v(TAG, "startAuthentication(" + opPackageName + ")");
 
-        public void destroy() {
-            if (token != null) {
-                try {
-                    token.unlinkToDeath(this, 0);
-                } catch (NoSuchElementException e) {
-                    // TODO: remove when duplicate call bug is found
-                    Slog.e(TAG, "destroy(): " + this + ":", new Exception("here"));
+        AuthenticationClient client = new AuthenticationClient(getContext(), mHalDeviceId, token,
+                receiver, callingUserId, groupId, opId, restricted, opPackageName) {
+            @Override
+            public boolean handleFailedAttempt() {
+                mFailedAttempts++;
+                if (inLockoutMode()) {
+                    // Failing multiple times will continue to push out the lockout time.
+                    scheduleLockoutReset();
+                    return true;
                 }
-                token = null;
+                return false;
             }
-            receiver = null;
-        }
 
-        @Override
-        public void binderDied() {
-            token = null;
-            removeClient(this);
-            receiver = null;
-        }
+            @Override
+            public void resetFailedAttempts() {
+                FingerprintService.this.resetFailedAttempts();
+            }
 
-        @Override
-        protected void finalize() throws Throwable {
-            try {
-                if (token != null) {
-                    if (DEBUG) Slog.w(TAG, "removing leaked reference: " + token);
-                    removeClient(this);
-                }
-            } finally {
-                super.finalize();
+            @Override
+            public void notifyUserActivity() {
+                FingerprintService.this.userActivity();
             }
-        }
 
-        /*
-         * @return true if we're done.
-         */
-        private boolean sendRemoved(int fingerId, int groupId) {
-            if (receiver == null) return true; // client not listening
-            try {
-                receiver.onRemoved(mHalDeviceId, fingerId, groupId);
-                return fingerId == 0;
-            } catch (RemoteException e) {
-                Slog.w(TAG, "Failed to notify Removed:", e);
+            @Override
+            public IFingerprintDaemon getFingerprintDaemon() {
+                return FingerprintService.this.getFingerprintDaemon();
             }
-            return false;
-        }
+        };
 
-        /*
-         * @return true if we're done.
-         */
-        private boolean sendEnrollResult(int fpId, int groupId, int remaining) {
-            if (receiver == null) return true; // client not listening
-            FingerprintUtils.vibrateFingerprintSuccess(getContext());
-            MetricsLogger.action(mContext, MetricsEvent.ACTION_FINGERPRINT_ENROLL);
-            try {
-                receiver.onEnrollResult(mHalDeviceId, fpId, groupId, remaining);
-                return remaining == 0;
-            } catch (RemoteException e) {
-                Slog.w(TAG, "Failed to notify EnrollResult:", e);
-                return true;
+        if (inLockoutMode()) {
+            Slog.v(TAG, "In lockout mode; disallowing authentication");
+            // Don't bother starting the client. Just send the error message.
+            if (!client.onError(FingerprintManager.FINGERPRINT_ERROR_LOCKOUT)) {
+                Slog.w(TAG, "Cannot send timeout message to client");
             }
+            return;
         }
+        startClient(client, true /* initiatedByClient */);
+    }
 
-        /*
-         * @return true if we're done.
-         */
-        private boolean sendAuthenticated(int fpId, int groupId) {
-            boolean result = false;
-            boolean authenticated = fpId != 0;
-            if (receiver != null) {
-                try {
-                    MetricsLogger.action(mContext, MetricsEvent.ACTION_FINGERPRINT_AUTH,
-                            authenticated);
-                    if (!authenticated) {
-                        receiver.onAuthenticationFailed(mHalDeviceId);
-                    } else {
-                        if (DEBUG) {
-                            Slog.v(TAG, "onAuthenticated(owner=" + mAuthClient.owner
-                                    + ", id=" + fpId + ", gp=" + groupId + ")");
-                        }
-                        Fingerprint fp = !restricted ?
-                                new Fingerprint("" /* TODO */, groupId, fpId, mHalDeviceId) : null;
-                        receiver.onAuthenticationSucceeded(mHalDeviceId, fp);
-                    }
-                } catch (RemoteException e) {
-                    Slog.w(TAG, "Failed to notify Authenticated:", e);
-                    result = true; // client failed
-                }
-            } else {
-                result = true; // client not listening
-	    }
-	    if (fpId == 0) {
-                if (receiver != null) {
-                    FingerprintUtils.vibrateFingerprintError(getContext());
-                }
-                result |= handleFailedAttempt(this);
-            } else {
-                if (receiver != null) {
-                    FingerprintUtils.vibrateFingerprintSuccess(getContext());
-                }
-                result |= true; // we have a valid fingerprint
-                resetFailedAttempts();
-            }
-            return result;
-        }
+    private void startEnrollment(IBinder token, byte [] cryptoToken, int callingUserId, int groupId,
+            IFingerprintServiceReceiver receiver, int flags, boolean restricted,
+            String opPackageName) {
+        updateActiveGroup(groupId, opPackageName);
 
-        /*
-         * @return true if we're done.
-         */
-        private boolean sendAcquired(int acquiredInfo) {
-            if (receiver == null) return true; // client not listening
-            try {
-                receiver.onAcquired(mHalDeviceId, acquiredInfo);
-                return false; // acquisition continues...
-            } catch (RemoteException e) {
-                Slog.w(TAG, "Failed to invoke sendAcquired:", e);
-                return true; // client failed
-            }
-            finally {
-                // Good scans will keep the device awake
-                if (acquiredInfo == FINGERPRINT_ACQUIRED_GOOD) {
-                    userActivity();
-                }
-            }
-        }
+        EnrollClient client = new EnrollClient(getContext(), mHalDeviceId, token, receiver,
+                callingUserId, groupId, cryptoToken, restricted, opPackageName) {
 
-        /*
-         * @return true if we're done.
-         */
-        private boolean sendError(int error) {
-            if (receiver != null) {
-                try {
-                    receiver.onError(mHalDeviceId, error);
-                } catch (RemoteException e) {
-                    Slog.w(TAG, "Failed to invoke sendError:", e);
-                }
+            @Override
+            public IFingerprintDaemon getFingerprintDaemon() {
+                return FingerprintService.this.getFingerprintDaemon();
             }
-            return true; // errors always terminate progress
+
+            @Override
+            public void notifyUserActivity() {
+                FingerprintService.this.userActivity();
+            }
+        };
+        startClient(client, true /* initiatedByClient */);
+    }
+
+    protected void resetFailedAttempts() {
+        if (DEBUG && inLockoutMode()) {
+            Slog.v(TAG, "Reset fingerprint lockout");
         }
+        mFailedAttempts = 0;
+        // If we're asked to reset failed attempts externally (i.e. from Keyguard),
+        // the alarm might still be pending; remove it.
+        cancelLockoutReset();
+        notifyLockoutResetMonitors();
     }
 
     private class FingerprintServiceLockoutResetMonitor {
@@ -876,8 +667,6 @@
     };
 
     private final class FingerprintServiceWrapper extends IFingerprintService.Stub {
-        private static final String KEYGUARD_PACKAGE = "com.android.systemui";
-
         @Override // Binder call
         public long preEnroll(IBinder token) {
             checkPermission(MANAGE_FINGERPRINT);
@@ -892,18 +681,18 @@
 
         @Override // Binder call
         public void enroll(final IBinder token, final byte[] cryptoToken, final int groupId,
-                final IFingerprintServiceReceiver receiver, final int flags) {
+                final IFingerprintServiceReceiver receiver, final int flags,
+                final String opPackageName) {
             checkPermission(MANAGE_FINGERPRINT);
             final int limit =  mContext.getResources().getInteger(
                     com.android.internal.R.integer.config_fingerprintMaxTemplatesPerUser);
-            final int callingUid = Binder.getCallingUid();
-            final int userId = UserHandle.getUserId(callingUid);
-            final int enrolled = FingerprintService.this.getEnrolledFingerprints(userId).size();
+            final int callingUserId = UserHandle.getCallingUserId();
+            final int enrolled = FingerprintService.this.
+                    getEnrolledFingerprints(callingUserId).size();
             if (enrolled >= limit) {
                 Slog.w(TAG, "Too many fingerprints registered");
                 return;
             }
-            final byte [] cryptoClone = Arrays.copyOf(cryptoToken, cryptoToken.length);
 
             // Group ID is arbitrarily set to parent profile user ID. It just represents
             // the default fingerprints for the user.
@@ -915,7 +704,8 @@
             mHandler.post(new Runnable() {
                 @Override
                 public void run() {
-                    startEnrollment(token, cryptoClone, groupId, receiver, flags, restricted);
+                    startEnrollment(token, cryptoToken, callingUserId, groupId, receiver, flags,
+                            restricted, opPackageName);
                 }
             });
         }
@@ -932,7 +722,10 @@
             mHandler.post(new Runnable() {
                 @Override
                 public void run() {
-                    stopEnrollment(token, true);
+                    ClientMonitor client = mCurrentClient;
+                    if (client instanceof EnrollClient && client.getToken() == token) {
+                        client.stop(client.getToken() == token);
+                    }
                 }
             });
         }
@@ -941,32 +734,49 @@
         public void authenticate(final IBinder token, final long opId, final int groupId,
                 final IFingerprintServiceReceiver receiver, final int flags,
                 final String opPackageName) {
-            if (!canUseFingerprint(opPackageName, true /* foregroundOnly */)) {
-                if (DEBUG) Slog.v(TAG, "authenticate(): reject " + opPackageName);
-                return;
-            }
-            final int realUserId = Binder.getCallingUid();
-
+            final int callingUid = Binder.getCallingUid();
+            final int callingUserId = UserHandle.getCallingUserId();
+            final int pid = Binder.getCallingPid();
             final boolean restricted = isRestricted();
             mHandler.post(new Runnable() {
                 @Override
                 public void run() {
                     MetricsLogger.histogram(mContext, "fingerprint_token", opId != 0L ? 1 : 0);
-                    startAuthentication(token, opId, realUserId, groupId, receiver,
+                    if (!canUseFingerprint(opPackageName, true /* foregroundOnly */,
+                            callingUid, pid)) {
+                        if (DEBUG) Slog.v(TAG, "authenticate(): reject " + opPackageName);
+                        return;
+                    }
+                    startAuthentication(token, opId, callingUserId, groupId, receiver,
                             flags, restricted, opPackageName);
                 }
             });
         }
 
         @Override // Binder call
-        public void cancelAuthentication(final IBinder token, String opPackageName) {
-            if (!canUseFingerprint(opPackageName, false /* foregroundOnly */)) {
-                return;
-            }
+        public void cancelAuthentication(final IBinder token, final String opPackageName) {
+            final int uid = Binder.getCallingUid();
+            final int pid = Binder.getCallingPid();
             mHandler.post(new Runnable() {
                 @Override
                 public void run() {
-                    stopAuthentication(token, true);
+                    if (!canUseFingerprint(opPackageName, true /* foregroundOnly */, uid, pid)) {
+                        if (DEBUG) Slog.v(TAG, "cancelAuthentication(): reject " + opPackageName);
+                    } else {
+                        ClientMonitor client = mCurrentClient;
+                        if (client instanceof AuthenticationClient) {
+                            if (client.getToken() == token) {
+                                if (DEBUG) Slog.v(TAG, "stop client " + client.getOwnerString());
+                                client.stop(client.getToken() == token);
+                            } else {
+                                if (DEBUG) Slog.v(TAG, "can't stop client "
+                                        + client.getOwnerString() + " since tokens don't match");
+                            }
+                        } else if (client != null) {
+                            if (DEBUG) Slog.v(TAG, "can't cancel non-authenticating client "
+                                    + client.getOwnerString());
+                        }
+                    }
                 }
             });
         }
@@ -984,13 +794,13 @@
 
         @Override // Binder call
         public void remove(final IBinder token, final int fingerId, final int groupId,
-                final IFingerprintServiceReceiver receiver) {
+                final int userId, final IFingerprintServiceReceiver receiver) {
             checkPermission(MANAGE_FINGERPRINT); // TODO: Maybe have another permission
             final boolean restricted = isRestricted();
             mHandler.post(new Runnable() {
                 @Override
                 public void run() {
-                    startRemove(token, fingerId, groupId, receiver, restricted);
+                    startRemove(token, fingerId, groupId, userId, receiver, restricted);
                 }
             });
 
@@ -998,7 +808,8 @@
 
         @Override // Binder call
         public boolean isHardwareDetected(long deviceId, String opPackageName) {
-            if (!canUseFingerprint(opPackageName, false /* foregroundOnly */)) {
+            if (!canUseFingerprint(opPackageName, false /* foregroundOnly */,
+                    Binder.getCallingUid(), Binder.getCallingPid())) {
                 return false;
             }
             return mHalDeviceId != 0;
@@ -1021,7 +832,8 @@
 
         @Override // Binder call
         public List<Fingerprint> getEnrolledFingerprints(int userId, String opPackageName) {
-            if (!canUseFingerprint(opPackageName, false /* foregroundOnly */)) {
+            if (!canUseFingerprint(opPackageName, false /* foregroundOnly */,
+                    Binder.getCallingUid(), Binder.getCallingPid())) {
                 return Collections.emptyList();
             }
             if (!isCurrentUserOrProfile(userId)) {
@@ -1033,7 +845,8 @@
 
         @Override // Binder call
         public boolean hasEnrolledFingerprints(int userId, String opPackageName) {
-            if (!canUseFingerprint(opPackageName, false /* foregroundOnly */)) {
+            if (!canUseFingerprint(opPackageName, false /* foregroundOnly */,
+                    Binder.getCallingUid(), Binder.getCallingPid())) {
                 return false;
             }
 
@@ -1061,7 +874,7 @@
             // The permission check should be restored once Android Keystore no longer invokes this
             // method from inside app processes.
 
-            return FingerprintService.this.getAuthenticatorId();
+            return FingerprintService.this.getAuthenticatorId(opPackageName);
         }
 
         @Override // Binder call
@@ -1154,6 +967,7 @@
                     }
                     daemon.setActiveGroup(userId, fpDir.getAbsolutePath().getBytes());
                     mCurrentUserId = userId;
+                    mCurrentAuthenticatorId = daemon.getAuthenticatorId();
                 }
             } catch (RemoteException e) {
                 Slog.e(TAG, "Failed to setActiveGroup():", e);
@@ -1204,14 +1018,12 @@
         }
     }
 
-    public long getAuthenticatorId() {
-        IFingerprintDaemon daemon = getFingerprintDaemon();
-        if (daemon != null) {
-            try {
-                return daemon.getAuthenticatorId();
-            } catch (RemoteException e) {
-                Slog.e(TAG, "getAuthenticatorId failed", e);
-            }
+    public long getAuthenticatorId(String opPackageName) {
+        if (canUseFingerprint(opPackageName, false /* foregroundOnly */,
+                Binder.getCallingUid(), Binder.getCallingPid())) {
+            return mCurrentAuthenticatorId;
+        } else {
+            Slog.w(TAG, "Client isn't current, returning authenticator_id=0");
         }
         return 0;
     }
diff --git a/services/core/java/com/android/server/fingerprint/RemovalClient.java b/services/core/java/com/android/server/fingerprint/RemovalClient.java
new file mode 100644
index 0000000..bcf2264
--- /dev/null
+++ b/services/core/java/com/android/server/fingerprint/RemovalClient.java
@@ -0,0 +1,111 @@
+/**
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.fingerprint;
+
+import android.content.Context;
+import android.hardware.fingerprint.FingerprintManager;
+import android.hardware.fingerprint.IFingerprintDaemon;
+import android.hardware.fingerprint.IFingerprintServiceReceiver;
+import android.os.IBinder;
+import android.os.RemoteException;
+import android.os.UserHandle;
+import android.util.Slog;
+
+/**
+ * A class to keep track of the remove state for a given client.
+ */
+public abstract class RemovalClient extends ClientMonitor {
+    private int mFingerId;
+
+    public RemovalClient(Context context, long halDeviceId, IBinder token,
+            IFingerprintServiceReceiver receiver, int fingerId, int groupId, int userId,
+            boolean restricted, String owner) {
+        super(context, halDeviceId, token, receiver, userId, groupId, restricted, owner);
+        mFingerId = fingerId;
+    }
+
+    @Override
+    public int start() {
+        IFingerprintDaemon daemon = getFingerprintDaemon();
+        // The fingerprint template ids will be removed when we get confirmation from the HAL
+        try {
+            final int result = daemon.remove(mFingerId, getGroupId());
+            if (result != 0) {
+                Slog.w(TAG, "startRemove with id = " + mFingerId + " failed, result=" + result);
+                onError(FingerprintManager.FINGERPRINT_ERROR_HW_UNAVAILABLE);
+                return result;
+            }
+        } catch (RemoteException e) {
+            Slog.e(TAG, "startRemove failed", e);
+        }
+        return 0;
+    }
+
+    @Override
+    public int stop(boolean initiatedByClient) {
+        // We don't actually stop remove, but inform the client that the cancel operation succeeded
+        // so we can start the next operation.
+        if (initiatedByClient) {
+            onError(FingerprintManager.FINGERPRINT_ERROR_CANCELED);
+        }
+        return 0;
+    }
+
+    /*
+     * @return true if we're done.
+     */
+    private boolean sendRemoved(int fingerId, int groupId) {
+        IFingerprintServiceReceiver receiver = getReceiver();
+        try {
+            if (receiver != null) {
+                receiver.onRemoved(getHalDeviceId(), fingerId, groupId);
+            }
+        } catch (RemoteException e) {
+            Slog.w(TAG, "Failed to notify Removed:", e);
+        }
+        return fingerId == 0;
+    }
+
+    @Override
+    public boolean onRemoved(int fingerId, int groupId) {
+        if (fingerId != 0) {
+            FingerprintUtils.getInstance().removeFingerprintIdForUser(getContext(), fingerId,
+                    getTargetUserId());
+        }
+        return sendRemoved(fingerId, getGroupId());
+    }
+
+    @Override
+    public boolean onEnrollResult(int fingerId, int groupId, int rem) {
+        if (DEBUG) Slog.w(TAG, "onEnrollResult() called for remove!");
+        return true; // Invalid for Remove
+    }
+
+    @Override
+    public boolean onAuthenticated(int fingerId, int groupId) {
+        if (DEBUG) Slog.w(TAG, "onAuthenticated() called for remove!");
+        return true; // Invalid for Remove.
+    }
+
+    @Override
+    public boolean onEnumerationResult(int fingerId, int groupId) {
+        if (DEBUG) Slog.w(TAG, "onEnumerationResult() called for remove!");
+        return false; // Invalid for Remove.
+    }
+
+
+}
diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java
index fed7e4b..e07d72f 100644
--- a/services/core/java/com/android/server/hdmi/HdmiControlService.java
+++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java
@@ -1189,7 +1189,9 @@
         @Override
         public void binderDied() {
             synchronized (mLock) {
-                mRecordListenerRecord = null;
+                if (mRecordListenerRecord == this) {
+                    mRecordListenerRecord = null;
+                }
             }
         }
     }
@@ -1813,7 +1815,9 @@
         @Override
         public void binderDied() {
             synchronized (mLock) {
-                mInputChangeListenerRecord = null;
+                if (mInputChangeListenerRecord == this) {
+                    mInputChangeListenerRecord = null;
+                }
             }
         }
     }
diff --git a/services/core/java/com/android/server/input/InputManagerService.java b/services/core/java/com/android/server/input/InputManagerService.java
index c7c765bb..c649012 100644
--- a/services/core/java/com/android/server/input/InputManagerService.java
+++ b/services/core/java/com/android/server/input/InputManagerService.java
@@ -1349,8 +1349,8 @@
         if (keyboardLayoutDescriptor == null) {
             throw new IllegalArgumentException("keyboardLayoutDescriptor must not be null");
         }
-        if (imeInfo == null || imeSubtype == null) {
-            throw new IllegalArgumentException("imeInfo and imeSubtype must not be null");
+        if (imeInfo == null) {
+            throw new IllegalArgumentException("imeInfo must not be null");
         }
         InputMethodSubtypeHandle handle = new InputMethodSubtypeHandle(imeInfo, imeSubtype);
         setKeyboardLayoutForInputDeviceInner(identifier, handle, keyboardLayoutDescriptor);
diff --git a/services/core/java/com/android/server/input/PersistentDataStore.java b/services/core/java/com/android/server/input/PersistentDataStore.java
index e97aca8..f67e0fd 100644
--- a/services/core/java/com/android/server/input/PersistentDataStore.java
+++ b/services/core/java/com/android/server/input/PersistentDataStore.java
@@ -25,6 +25,7 @@
 import org.xmlpull.v1.XmlPullParserException;
 import org.xmlpull.v1.XmlSerializer;
 
+import android.annotation.Nullable;
 import android.view.Surface;
 import android.hardware.input.TouchCalibration;
 import android.text.TextUtils;
@@ -342,6 +343,7 @@
                 "x_ymix", "x_offset", "y_xmix", "y_scale", "y_offset" };
 
         private TouchCalibration[] mTouchCalibration = new TouchCalibration[4];
+        @Nullable
         private String mCurrentKeyboardLayout;
         private List<String> mUnassociatedKeyboardLayouts = new ArrayList<>();
         private ArrayMap<InputMethodSubtypeHandle, String> mKeyboardLayouts = new ArrayMap<>();
@@ -368,6 +370,7 @@
             }
         }
 
+        @Nullable
         public String getCurrentKeyboardLayout() {
             return mCurrentKeyboardLayout;
         }
@@ -443,7 +446,7 @@
 
         public boolean switchKeyboardLayout(InputMethodSubtypeHandle imeHandle) {
             final String layout = mKeyboardLayouts.get(imeHandle);
-            if (layout != null && !TextUtils.equals(mCurrentKeyboardLayout, layout)) {
+            if (!TextUtils.equals(mCurrentKeyboardLayout, layout)) {
                 mCurrentKeyboardLayout = layout;
                 return true;
             }
diff --git a/services/core/java/com/android/server/job/JobSchedulerService.java b/services/core/java/com/android/server/job/JobSchedulerService.java
index 7df8ffd..075a88f 100644
--- a/services/core/java/com/android/server/job/JobSchedulerService.java
+++ b/services/core/java/com/android/server/job/JobSchedulerService.java
@@ -40,6 +40,7 @@
 import android.content.pm.IPackageManager;
 import android.content.pm.PackageManager;
 import android.content.pm.ServiceInfo;
+import android.content.pm.PackageManager.NameNotFoundException;
 import android.os.BatteryStats;
 import android.os.Binder;
 import android.os.Handler;
@@ -336,6 +337,19 @@
         }
     }
 
+    public JobInfo getPendingJob(int uid, int jobId) {
+        synchronized (mLock) {
+            List<JobStatus> jobs = mJobs.getJobsByUid(uid);
+            for (int i = jobs.size() - 1; i >= 0; i--) {
+                JobStatus job = jobs.get(i);
+                if (job.getJobId() == jobId) {
+                    return job.getJob();
+                }
+            }
+            return null;
+        }
+    }
+
     void cancelJobsForUser(int userHandle) {
         List<JobStatus> jobsForUser;
         synchronized (mLock) {
@@ -912,7 +926,8 @@
                     if (job.hasIdleConstraint()) {
                         idleCount++;
                     }
-                    if (job.hasConnectivityConstraint() || job.hasUnmeteredConstraint()) {
+                    if (job.hasConnectivityConstraint() || job.hasUnmeteredConstraint()
+                            || job.hasNotRoamingConstraint()) {
                         connectivityCount++;
                     }
                     if (job.hasChargingConstraint()) {
@@ -1346,6 +1361,18 @@
         }
 
         @Override
+        public JobInfo getPendingJob(int jobId) throws RemoteException {
+            final int uid = Binder.getCallingUid();
+
+            long ident = Binder.clearCallingIdentity();
+            try {
+                return JobSchedulerService.this.getPendingJob(uid, jobId);
+            } finally {
+                Binder.restoreCallingIdentity(ident);
+            }
+        }
+
+        @Override
         public void cancelAll() throws RemoteException {
             final int uid = Binder.getCallingUid();
 
@@ -1378,7 +1405,7 @@
 
             long identityToken = Binder.clearCallingIdentity();
             try {
-                JobSchedulerService.this.dumpInternal(pw);
+                JobSchedulerService.this.dumpInternal(pw, args);
             } finally {
                 Binder.restoreCallingIdentity(identityToken);
             }
@@ -1450,7 +1477,17 @@
         return s.toString();
     }
 
-    void dumpInternal(final PrintWriter pw) {
+    void dumpInternal(final PrintWriter pw, String[] args) {
+        int filterUid = -1;
+        if (!ArrayUtils.isEmpty(args)) {
+            try {
+                filterUid = getContext().getPackageManager().getPackageUid(args[0],
+                        PackageManager.MATCH_UNINSTALLED_PACKAGES);
+            } catch (NameNotFoundException ignored) {
+            }
+        }
+
+        final int filterUidFinal = filterUid;
         final long now = SystemClock.elapsedRealtime();
         synchronized (mLock) {
             pw.println("Started users: " + Arrays.toString(mStartedUsers));
@@ -1463,6 +1500,13 @@
                     public void process(JobStatus job) {
                         pw.print("  Job #"); pw.print(index++); pw.print(": ");
                         pw.println(job.toShortString());
+
+                        // Skip printing details if the caller requested a filter
+                        if (filterUidFinal != -1 && job.getUid() != filterUidFinal
+                                && job.getSourceUid() != filterUidFinal) {
+                            return;
+                        }
+
                         job.dump(pw, "    ", true);
                         pw.print("    Ready: ");
                         pw.print(mHandler.isReadyToBeExecutedLocked(job));
diff --git a/services/core/java/com/android/server/job/JobStore.java b/services/core/java/com/android/server/job/JobStore.java
index 55f37b8..5ad988a 100644
--- a/services/core/java/com/android/server/job/JobStore.java
+++ b/services/core/java/com/android/server/job/JobStore.java
@@ -365,11 +365,14 @@
          */
         private void writeConstraintsToXml(XmlSerializer out, JobStatus jobStatus) throws IOException {
             out.startTag(null, XML_TAG_PARAMS_CONSTRAINTS);
+            if (jobStatus.hasConnectivityConstraint()) {
+                out.attribute(null, "connectivity", Boolean.toString(true));
+            }
             if (jobStatus.hasUnmeteredConstraint()) {
                 out.attribute(null, "unmetered", Boolean.toString(true));
             }
-            if (jobStatus.hasConnectivityConstraint()) {
-                out.attribute(null, "connectivity", Boolean.toString(true));
+            if (jobStatus.hasNotRoamingConstraint()) {
+                out.attribute(null, "not-roaming", Boolean.toString(true));
             }
             if (jobStatus.hasIdleConstraint()) {
                 out.attribute(null, "idle", Boolean.toString(true));
@@ -486,7 +489,7 @@
                 final List<JobStatus> jobs = new ArrayList<JobStatus>();
                 // Read in version info.
                 try {
-                    int version = Integer.valueOf(parser.getAttributeValue(null, "version"));
+                    int version = Integer.parseInt(parser.getAttributeValue(null, "version"));
                     if (version != JOBS_FILE_VERSION) {
                         Slog.d(TAG, "Invalid version number, aborting jobs file read.");
                         return null;
@@ -534,14 +537,14 @@
             try {
                 jobBuilder = buildBuilderFromXml(parser);
                 jobBuilder.setPersisted(true);
-                uid = Integer.valueOf(parser.getAttributeValue(null, "uid"));
+                uid = Integer.parseInt(parser.getAttributeValue(null, "uid"));
 
                 String val = parser.getAttributeValue(null, "priority");
                 if (val != null) {
-                    jobBuilder.setPriority(Integer.valueOf(val));
+                    jobBuilder.setPriority(Integer.parseInt(val));
                 }
                 val = parser.getAttributeValue(null, "sourceUserId");
-                sourceUserId = val == null ? -1 : Integer.valueOf(val);
+                sourceUserId = val == null ? -1 : Integer.parseInt(val);
             } catch (NumberFormatException e) {
                 Slog.e(TAG, "Error parsing job's required fields, skipping");
                 return null;
@@ -684,7 +687,7 @@
 
         private JobInfo.Builder buildBuilderFromXml(XmlPullParser parser) throws NumberFormatException {
             // Pull out required fields from <job> attributes.
-            int jobId = Integer.valueOf(parser.getAttributeValue(null, "jobid"));
+            int jobId = Integer.parseInt(parser.getAttributeValue(null, "jobid"));
             String packageName = parser.getAttributeValue(null, "package");
             String className = parser.getAttributeValue(null, "class");
             ComponentName cname = new ComponentName(packageName, className);
@@ -693,13 +696,17 @@
         }
 
         private void buildConstraintsFromXml(JobInfo.Builder jobBuilder, XmlPullParser parser) {
-            String val = parser.getAttributeValue(null, "unmetered");
+            String val = parser.getAttributeValue(null, "connectivity");
+            if (val != null) {
+                jobBuilder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY);
+            }
+            val = parser.getAttributeValue(null, "unmetered");
             if (val != null) {
                 jobBuilder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_UNMETERED);
             }
-            val = parser.getAttributeValue(null, "connectivity");
+            val = parser.getAttributeValue(null, "not-roaming");
             if (val != null) {
-                jobBuilder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY);
+                jobBuilder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_NOT_ROAMING);
             }
             val = parser.getAttributeValue(null, "idle");
             if (val != null) {
@@ -720,7 +727,7 @@
             if (val != null) {
                 long initialBackoff = Long.valueOf(val);
                 val = parser.getAttributeValue(null, "backoff-policy");
-                int backoffPolicy = Integer.valueOf(val);  // Will throw NFE which we catch higher up.
+                int backoffPolicy = Integer.parseInt(val);  // Will throw NFE which we catch higher up.
                 jobBuilder.setBackoffCriteria(initialBackoff, backoffPolicy);
             }
         }
diff --git a/services/core/java/com/android/server/job/controllers/ConnectivityController.java b/services/core/java/com/android/server/job/controllers/ConnectivityController.java
index be9d800..88cf322 100644
--- a/services/core/java/com/android/server/job/controllers/ConnectivityController.java
+++ b/services/core/java/com/android/server/job/controllers/ConnectivityController.java
@@ -16,44 +16,44 @@
 
 package com.android.server.job.controllers;
 
-
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.net.ConnectivityManager;
+import android.net.INetworkPolicyListener;
 import android.net.NetworkInfo;
-import android.os.ServiceManager;
+import android.net.NetworkPolicyManager;
 import android.os.UserHandle;
 import android.util.Slog;
 
-import com.android.server.ConnectivityService;
+import com.android.internal.annotations.GuardedBy;
 import com.android.server.job.JobSchedulerService;
 import com.android.server.job.StateChangedListener;
 
 import java.io.PrintWriter;
-import java.util.LinkedList;
-import java.util.List;
+import java.util.ArrayList;
 
 /**
  * Handles changes in connectivity.
- * We are only interested in metered vs. unmetered networks, and we're interested in them on a
- * per-user basis.
+ * <p>
+ * Each app can have a different default networks or different connectivity
+ * status due to user-requested network policies, so we need to check
+ * constraints on a per-UID basis.
  */
 public class ConnectivityController extends StateController implements
         ConnectivityManager.OnNetworkActiveListener {
     private static final String TAG = "JobScheduler.Conn";
 
-    private final List<JobStatus> mTrackedJobs = new LinkedList<JobStatus>();
-    private final BroadcastReceiver mConnectivityChangedReceiver =
-            new ConnectivityChangedReceiver();
+    private final ConnectivityManager mConnManager;
+    private final NetworkPolicyManager mNetPolicyManager;
+
+    @GuardedBy("mLock")
+    private final ArrayList<JobStatus> mTrackedJobs = new ArrayList<JobStatus>();
+
     /** Singleton. */
     private static ConnectivityController mSingleton;
     private static Object sCreationLock = new Object();
-    /** Track whether the latest active network is metered. */
-    private boolean mNetworkUnmetered;
-    /** Track whether the latest active network is connected. */
-    private boolean mNetworkConnected;
 
     public static ConnectivityController get(JobSchedulerService jms) {
         synchronized (sCreationLock) {
@@ -67,51 +67,62 @@
     private ConnectivityController(StateChangedListener stateChangedListener, Context context,
             Object lock) {
         super(stateChangedListener, context, lock);
-        // Register connectivity changed BR.
-        IntentFilter intentFilter = new IntentFilter();
-        intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
+
+        mConnManager = mContext.getSystemService(ConnectivityManager.class);
+        mNetPolicyManager = mContext.getSystemService(NetworkPolicyManager.class);
+
+        final IntentFilter intentFilter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);
         mContext.registerReceiverAsUser(
-                mConnectivityChangedReceiver, UserHandle.ALL, intentFilter, null, null);
-        ConnectivityService cs =
-                (ConnectivityService)ServiceManager.getService(Context.CONNECTIVITY_SERVICE);
-        if (cs != null) {
-            if (cs.getActiveNetworkInfo() != null) {
-                mNetworkConnected = cs.getActiveNetworkInfo().isConnected();
-                mNetworkUnmetered = mNetworkConnected && !cs.isActiveNetworkMetered();
-            } else {
-                mNetworkConnected = mNetworkUnmetered = false;
-            }
-        }
+                mConnectivityReceiver, UserHandle.SYSTEM, intentFilter, null, null);
+
+        mNetPolicyManager.registerListener(mNetPolicyListener);
     }
 
     @Override
     public void maybeStartTrackingJobLocked(JobStatus jobStatus, JobStatus lastJob) {
-        if (jobStatus.hasConnectivityConstraint() || jobStatus.hasUnmeteredConstraint()) {
-            jobStatus.setConnectivityConstraintSatisfied(mNetworkConnected);
-            jobStatus.setUnmeteredConstraintSatisfied(mNetworkUnmetered);
+        if (jobStatus.hasConnectivityConstraint() || jobStatus.hasUnmeteredConstraint()
+                || jobStatus.hasNotRoamingConstraint()) {
+            updateConstraintsSatisfied(jobStatus);
             mTrackedJobs.add(jobStatus);
         }
     }
 
     @Override
-    public void maybeStopTrackingJobLocked(JobStatus jobStatus, JobStatus incomingJob, boolean forUpdate) {
-        if (jobStatus.hasConnectivityConstraint() || jobStatus.hasUnmeteredConstraint()) {
+    public void maybeStopTrackingJobLocked(JobStatus jobStatus, JobStatus incomingJob,
+            boolean forUpdate) {
+        if (jobStatus.hasConnectivityConstraint() || jobStatus.hasUnmeteredConstraint()
+                || jobStatus.hasNotRoamingConstraint()) {
             mTrackedJobs.remove(jobStatus);
         }
     }
 
+    private boolean updateConstraintsSatisfied(JobStatus jobStatus) {
+        final NetworkInfo info = mConnManager.getActiveNetworkInfoForUid(jobStatus.getSourceUid());
+        final boolean connected = (info != null) && info.isConnected();
+        final boolean unmetered = connected && !info.isMetered();
+        final boolean notRoaming = connected && !info.isRoaming();
+
+        boolean changed = false;
+        changed |= jobStatus.setConnectivityConstraintSatisfied(connected);
+        changed |= jobStatus.setUnmeteredConstraintSatisfied(unmetered);
+        changed |= jobStatus.setNotRoamingConstraintSatisfied(notRoaming);
+        return changed;
+    }
+
     /**
-     * @param userId Id of the user for whom we are updating the connectivity state.
+     * Update all jobs tracked by this controller.
+     *
+     * @param uid only update jobs belonging to this UID, or {@code -1} to
+     *            update all tracked jobs.
      */
-    private void updateTrackedJobs(int userId) {
+    private void updateTrackedJobs(int uid) {
         synchronized (mLock) {
             boolean changed = false;
-            for (JobStatus js : mTrackedJobs) {
-                if (js.getUserId() != userId) {
-                    continue;
+            for (int i = 0; i < mTrackedJobs.size(); i++) {
+                final JobStatus js = mTrackedJobs.get(i);
+                if (uid == -1 || uid == js.getSourceUid()) {
+                    changed |= updateConstraintsSatisfied(js);
                 }
-                changed |= js.setConnectivityConstraintSatisfied(mNetworkConnected);
-                changed |= js.setUnmeteredConstraintSatisfied(mNetworkUnmetered);
             }
             if (changed) {
                 mStateChangedListener.onControllerStateChanged();
@@ -122,9 +133,11 @@
     /**
      * We know the network has just come up. We want to run any jobs that are ready.
      */
+    @Override
     public synchronized void onNetworkActive() {
         synchronized (mLock) {
-            for (JobStatus js : mTrackedJobs) {
+            for (int i = 0; i < mTrackedJobs.size(); i++) {
+                final JobStatus js = mTrackedJobs.get(i);
                 if (js.isReady()) {
                     if (DEBUG) {
                         Slog.d(TAG, "Running " + js + " due to network activity.");
@@ -135,61 +148,44 @@
         }
     }
 
-    class ConnectivityChangedReceiver extends BroadcastReceiver {
-        /**
-         * We'll receive connectivity changes for each user here, which we process independently.
-         * We are only interested in the active network here. We're only interested in the active
-         * network, b/c the end result of this will be for apps to try to hit the network.
-         * @param context The Context in which the receiver is running.
-         * @param intent The Intent being received.
-         */
-        // TODO: Test whether this will be called twice for each user.
+    private BroadcastReceiver mConnectivityReceiver = new BroadcastReceiver() {
         @Override
         public void onReceive(Context context, Intent intent) {
-            if (DEBUG) {
-                Slog.d(TAG, "Received connectivity event: " + intent.getAction() + " u"
-                        + context.getUserId());
-            }
-            final String action = intent.getAction();
-            if (action.equals(ConnectivityManager.CONNECTIVITY_ACTION)) {
-                final int networkType =
-                        intent.getIntExtra(ConnectivityManager.EXTRA_NETWORK_TYPE,
-                                ConnectivityManager.TYPE_NONE);
-                // Connectivity manager for THIS context - important!
-                final ConnectivityManager connManager = (ConnectivityManager)
-                        context.getSystemService(Context.CONNECTIVITY_SERVICE);
-                final NetworkInfo activeNetwork = connManager.getActiveNetworkInfo();
-                final int userid = context.getUserId();
-                // This broadcast gets sent a lot, only update if the active network has changed.
-                if (activeNetwork == null) {
-                    mNetworkUnmetered = false;
-                    mNetworkConnected = false;
-                    updateTrackedJobs(userid);
-                } else if (activeNetwork.getType() == networkType) {
-                    mNetworkUnmetered = false;
-                    mNetworkConnected = !intent.getBooleanExtra(
-                            ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
-                    if (mNetworkConnected) {  // No point making the call if we know there's no conn.
-                        mNetworkUnmetered = !connManager.isActiveNetworkMetered();
-                    }
-                    updateTrackedJobs(userid);
-                }
-            } else {
-                if (DEBUG) {
-                    Slog.d(TAG, "Unrecognised action in intent: " + action);
-                }
-            }
+            updateTrackedJobs(-1);
+        }
+    };
+
+    private INetworkPolicyListener mNetPolicyListener = new INetworkPolicyListener.Stub() {
+        @Override
+        public void onUidRulesChanged(int uid, int uidRules) {
+            updateTrackedJobs(uid);
+        }
+
+        @Override
+        public void onMeteredIfacesChanged(String[] meteredIfaces) {
+            updateTrackedJobs(-1);
+        }
+
+        @Override
+        public void onRestrictBackgroundChanged(boolean restrictBackground) {
+            updateTrackedJobs(-1);
+        }
+
+        @Override
+        public void onRestrictBackgroundWhitelistChanged(int uid, boolean whitelisted) {
+            updateTrackedJobs(uid);
         }
     };
 
     @Override
     public void dumpControllerStateLocked(PrintWriter pw) {
         pw.println("Conn.");
-        pw.println("connected: " + mNetworkConnected + " unmetered: " + mNetworkUnmetered);
-        for (JobStatus js: mTrackedJobs) {
+        for (int i = 0; i < mTrackedJobs.size(); i++) {
+            final JobStatus js = mTrackedJobs.get(i);
             pw.println(String.valueOf(js.getJobId() + "," + js.getUid())
                     + ": C=" + js.hasConnectivityConstraint()
-                    + ", UM=" + js.hasUnmeteredConstraint());
+                    + ", UM=" + js.hasUnmeteredConstraint()
+                    + ", NR=" + js.hasNotRoamingConstraint());
         }
     }
 }
diff --git a/services/core/java/com/android/server/job/controllers/JobStatus.java b/services/core/java/com/android/server/job/controllers/JobStatus.java
index dd70758..9ab4386 100644
--- a/services/core/java/com/android/server/job/controllers/JobStatus.java
+++ b/services/core/java/com/android/server/job/controllers/JobStatus.java
@@ -29,7 +29,6 @@
 import android.util.TimeUtils;
 
 import java.io.PrintWriter;
-import java.util.concurrent.atomic.AtomicBoolean;
 
 /**
  * Uniquely identifies a job internally.
@@ -55,6 +54,7 @@
     static final int CONSTRAINT_APP_NOT_IDLE = 1<<6;
     static final int CONSTRAINT_CONTENT_TRIGGER = 1<<7;
     static final int CONSTRAINT_DEVICE_NOT_DOZING = 1<<8;
+    static final int CONSTRAINT_NOT_ROAMING = 1<<9;
 
     // Soft override: ignore constraints like time that don't affect API availability
     public static final int OVERRIDE_SOFT = 1;
@@ -176,6 +176,9 @@
         if (job.getNetworkType() == JobInfo.NETWORK_TYPE_UNMETERED) {
             requiredConstraints |= CONSTRAINT_UNMETERED;
         }
+        if (job.getNetworkType() == JobInfo.NETWORK_TYPE_NOT_ROAMING) {
+            requiredConstraints |= CONSTRAINT_NOT_ROAMING;
+        }
         if (job.isRequireCharging()) {
             requiredConstraints |= CONSTRAINT_CHARGING;
         }
@@ -312,6 +315,10 @@
         return (requiredConstraints&CONSTRAINT_UNMETERED) != 0;
     }
 
+    public boolean hasNotRoamingConstraint() {
+        return (requiredConstraints&CONSTRAINT_NOT_ROAMING) != 0;
+    }
+
     public boolean hasChargingConstraint() {
         return (requiredConstraints&CONSTRAINT_CHARGING) != 0;
     }
@@ -376,12 +383,16 @@
         return setConstraintSatisfied(CONSTRAINT_IDLE, state);
     }
 
+    boolean setConnectivityConstraintSatisfied(boolean state) {
+        return setConstraintSatisfied(CONSTRAINT_CONNECTIVITY, state);
+    }
+
     boolean setUnmeteredConstraintSatisfied(boolean state) {
         return setConstraintSatisfied(CONSTRAINT_UNMETERED, state);
     }
 
-    boolean setConnectivityConstraintSatisfied(boolean state) {
-        return setConstraintSatisfied(CONSTRAINT_CONNECTIVITY, state);
+    boolean setNotRoamingConstraintSatisfied(boolean state) {
+        return setConstraintSatisfied(CONSTRAINT_NOT_ROAMING, state);
     }
 
     boolean setAppNotIdleConstraintSatisfied(boolean state) {
@@ -425,7 +436,7 @@
 
     static final int CONSTRAINTS_OF_INTEREST =
             CONSTRAINT_CHARGING | CONSTRAINT_TIMING_DELAY |
-            CONSTRAINT_CONNECTIVITY | CONSTRAINT_UNMETERED |
+            CONSTRAINT_CONNECTIVITY | CONSTRAINT_UNMETERED | CONSTRAINT_NOT_ROAMING |
             CONSTRAINT_IDLE | CONSTRAINT_CONTENT_TRIGGER;
 
     // Soft override covers all non-"functional" constraints
@@ -517,11 +528,14 @@
         if ((constraints&CONSTRAINT_IDLE) != 0) {
             pw.print(" IDLE");
         }
+        if ((constraints&CONSTRAINT_CONNECTIVITY) != 0) {
+            pw.print(" CONNECTIVITY");
+        }
         if ((constraints&CONSTRAINT_UNMETERED) != 0) {
             pw.print(" UNMETERED");
         }
-        if ((constraints&CONSTRAINT_CONNECTIVITY) != 0) {
-            pw.print(" CONNECTIVITY");
+        if ((constraints&CONSTRAINT_NOT_ROAMING) != 0) {
+            pw.print(" NOT_ROAMING");
         }
         if ((constraints&CONSTRAINT_APP_NOT_IDLE) != 0) {
             pw.print(" APP_NOT_IDLE");
diff --git a/services/core/java/com/android/server/lights/LightsService.java b/services/core/java/com/android/server/lights/LightsService.java
index 5953dde..07048a4 100644
--- a/services/core/java/com/android/server/lights/LightsService.java
+++ b/services/core/java/com/android/server/lights/LightsService.java
@@ -17,16 +17,16 @@
 package com.android.server.lights;
 
 import com.android.server.SystemService;
-import com.android.server.vr.VrManagerInternal;
 import com.android.server.vr.VrManagerService;
-import com.android.server.vr.VrStateListener;
 
+import android.app.ActivityManager;
 import android.content.Context;
 import android.os.Handler;
-import android.os.IBinder;
 import android.os.Message;
 import android.os.RemoteException;
 import android.os.Trace;
+import android.os.UserHandle;
+import android.provider.Settings;
 import android.service.vr.IVrManager;
 import android.service.vr.IVrStateCallbacks;
 import android.util.Slog;
@@ -36,6 +36,7 @@
     static final boolean DEBUG = false;
 
     final LightImpl mLights[] = new LightImpl[LightsManager.LIGHT_ID_COUNT];
+    private boolean mVrModeEnabled;
 
     private final class LightImpl extends Light {
 
@@ -179,17 +180,34 @@
         }
     }
 
+    private int getVrDisplayMode() {
+        int currentUser = ActivityManager.getCurrentUser();
+        return Settings.Secure.getIntForUser(getContext().getContentResolver(),
+                Settings.Secure.VR_DISPLAY_MODE,
+                /*default*/Settings.Secure.VR_DISPLAY_MODE_LOW_PERSISTENCE,
+                currentUser);
+    }
+
     private final IVrStateCallbacks mVrStateCallbacks = new IVrStateCallbacks.Stub() {
         @Override
         public void onVrStateChanged(boolean enabled) throws RemoteException {
             LightImpl l = mLights[LightsManager.LIGHT_ID_BACKLIGHT];
-            if (enabled) {
-                if (DEBUG) Slog.v(TAG, "VR mode enabled, setting brightness to low persistence");
-                l.enableLowPersistence();
+            int vrDisplayMode = getVrDisplayMode();
 
+            // User leaves VR mode before altering display settings.
+            if (enabled && vrDisplayMode == Settings.Secure.VR_DISPLAY_MODE_LOW_PERSISTENCE) {
+                if (!mVrModeEnabled) {
+                    if (DEBUG)
+                        Slog.v(TAG, "VR mode enabled, setting brightness to low persistence");
+                    l.enableLowPersistence();
+                    mVrModeEnabled = true;
+                }
             } else {
-                if (DEBUG) Slog.v(TAG, "VR mode disabled, resetting brightnes");
-                l.disableLowPersistence();
+                if (mVrModeEnabled) {
+                    if (DEBUG) Slog.v(TAG, "VR mode disabled, resetting brightnes");
+                    l.disableLowPersistence();
+                    mVrModeEnabled = false;
+                }
             }
         }
     };
diff --git a/services/core/java/com/android/server/net/LockdownVpnTracker.java b/services/core/java/com/android/server/net/LockdownVpnTracker.java
index fc412e3..4a8539a 100644
--- a/services/core/java/com/android/server/net/LockdownVpnTracker.java
+++ b/services/core/java/com/android/server/net/LockdownVpnTracker.java
@@ -209,7 +209,9 @@
                 throw new RuntimeException("Problem setting firewall rules", e);
             }
 
-            mConnService.sendConnectedBroadcast(augmentNetworkInfo(egressInfo));
+            final NetworkInfo clone = new NetworkInfo(egressInfo);
+            augmentNetworkInfo(clone);
+            mConnService.sendConnectedBroadcast(clone);
         }
     }
 
@@ -320,13 +322,11 @@
         }
     }
 
-    public NetworkInfo augmentNetworkInfo(NetworkInfo info) {
+    public void augmentNetworkInfo(NetworkInfo info) {
         if (info.isConnected()) {
             final NetworkInfo vpnInfo = mVpn.getNetworkInfo();
-            info = new NetworkInfo(info);
             info.setDetailedState(vpnInfo.getDetailedState(), vpnInfo.getReason(), null);
         }
-        return info;
     }
 
     private void showNotification(int titleRes, int iconRes) {
diff --git a/services/core/java/com/android/server/net/NetworkPolicyManagerService.java b/services/core/java/com/android/server/net/NetworkPolicyManagerService.java
index c248608..43f47fa 100644
--- a/services/core/java/com/android/server/net/NetworkPolicyManagerService.java
+++ b/services/core/java/com/android/server/net/NetworkPolicyManagerService.java
@@ -260,6 +260,8 @@
     private static final int MSG_ADVISE_PERSIST_THRESHOLD = 7;
     private static final int MSG_SCREEN_ON_CHANGED = 8;
     private static final int MSG_RESTRICT_BACKGROUND_WHITELIST_CHANGED = 9;
+    private static final int MSG_UPDATE_INTERFACE_QUOTA = 10;
+    private static final int MSG_REMOVE_INTERFACE_QUOTA = 11;
 
     private final Context mContext;
     private final IActivityManager mActivityManager;
@@ -1275,8 +1277,10 @@
                 }
 
                 for (String iface : ifaces) {
-                    removeInterfaceQuota(iface);
-                    setInterfaceQuota(iface, quotaBytes);
+                    // long quotaBytes split up into two ints to fit in message
+                    mHandler.obtainMessage(MSG_UPDATE_INTERFACE_QUOTA,
+                            (int) (quotaBytes >> 32), (int) (quotaBytes & 0xFFFFFFFF), iface)
+                            .sendToTarget();
                     newMeteredIfaces.add(iface);
                 }
             }
@@ -1292,8 +1296,10 @@
 
         for (int i = connIfaces.size()-1; i >= 0; i--) {
             String iface = connIfaces.valueAt(i);
-            removeInterfaceQuota(iface);
-            setInterfaceQuota(iface, Long.MAX_VALUE);
+            // long quotaBytes split up into two ints to fit in message
+            mHandler.obtainMessage(MSG_UPDATE_INTERFACE_QUOTA,
+                    (int) (Long.MAX_VALUE >> 32), (int) (Long.MAX_VALUE & 0xFFFFFFFF), iface)
+                    .sendToTarget();
             newMeteredIfaces.add(iface);
         }
 
@@ -1303,7 +1309,8 @@
         for (int i = mMeteredIfaces.size() - 1; i >= 0; i--) {
             final String iface = mMeteredIfaces.valueAt(i);
             if (!newMeteredIfaces.contains(iface)) {
-                removeInterfaceQuota(iface);
+                mHandler.obtainMessage(MSG_REMOVE_INTERFACE_QUOTA, iface)
+                        .sendToTarget();
             }
         }
         mMeteredIfaces = newMeteredIfaces;
@@ -1671,7 +1678,7 @@
         // Checks if app was added or removed to the blacklist.
         if ((oldPolicy == POLICY_NONE && policy == POLICY_REJECT_METERED_BACKGROUND)
                 || (oldPolicy == POLICY_REJECT_METERED_BACKGROUND && policy == POLICY_NONE)) {
-            mHandler.obtainMessage(MSG_RESTRICT_BACKGROUND_WHITELIST_CHANGED, uid, 0)
+            mHandler.obtainMessage(MSG_RESTRICT_BACKGROUND_WHITELIST_CHANGED, uid, 1, null)
                     .sendToTarget();
         }
     }
@@ -1963,10 +1970,9 @@
             // ...but always persists the whitelist request.
             writePolicyLocked();
         }
-        if (mRestrictBackground && !oldStatus && needFirewallRules) {
-            mHandler.obtainMessage(MSG_RESTRICT_BACKGROUND_WHITELIST_CHANGED, uid, 0)
-                    .sendToTarget();
-        }
+        int changed = (mRestrictBackground && !oldStatus && needFirewallRules) ? 1 : 0;
+        mHandler.obtainMessage(MSG_RESTRICT_BACKGROUND_WHITELIST_CHANGED, uid, changed,
+                Boolean.TRUE).sendToTarget();
     }
 
     @Override
@@ -1976,10 +1982,8 @@
         synchronized (mRulesLock) {
             changed = removeRestrictBackgroundWhitelistedUidLocked(uid, false, true);
         }
-        if (changed) {
-            mHandler.obtainMessage(MSG_RESTRICT_BACKGROUND_WHITELIST_CHANGED, uid, 0)
-                    .sendToTarget();
-        }
+        mHandler.obtainMessage(MSG_RESTRICT_BACKGROUND_WHITELIST_CHANGED, uid, changed ? 1 : 0,
+                Boolean.FALSE).sendToTarget();
     }
 
     /**
@@ -2144,6 +2148,10 @@
 
     @Override
     public boolean isNetworkMetered(NetworkState state) {
+        if (state.networkInfo == null) {
+            return false;
+        }
+
         final NetworkIdentity ident = NetworkIdentity.buildNetworkIdentity(mContext, state);
 
         // roaming networks are always considered metered
@@ -2159,10 +2167,6 @@
         if (policy != null) {
             return policy.metered;
         } else {
-            if (state.networkInfo == null) {
-                return false;
-            }
-
             final int type = state.networkInfo.getType();
             if (isNetworkTypeMobile(type) || type == TYPE_WIMAX) {
                 return true;
@@ -2917,10 +2921,40 @@
                     return true;
                 }
                 case MSG_RESTRICT_BACKGROUND_WHITELIST_CHANGED: {
+                    // MSG_RESTRICT_BACKGROUND_WHITELIST_CHANGED can be called in 2 occasions:
+                    // - when an app is whitelisted
+                    // - when an app is blacklisted
+                    //
+                    // Whether the internal listeners (INetworkPolicyListener implementations) or
+                    // app broadcast receivers are notified depend on the following rules:
+                    //
+                    // - App receivers are only notified when the app status changed (msg.arg2 = 1)
+                    // - Listeners are only notified when app was whitelisted (msg.obj is not null),
+                    //   since blacklist notifications are handled through MSG_RULES_CHANGED).
                     final int uid = msg.arg1;
+                    final boolean changed = msg.arg2 == 1;
+                    final Boolean whitelisted = (Boolean) msg.obj;
+
+                    if (whitelisted != null) {
+                        final int length = mListeners.beginBroadcast();
+                        for (int i = 0; i < length; i++) {
+                            // First notify internal listeners...
+                            final INetworkPolicyListener listener = mListeners.getBroadcastItem(i);
+                            if (listener != null) {
+                                try {
+                                    listener.onRestrictBackgroundWhitelistChanged(uid,
+                                            whitelisted.booleanValue());
+                                } catch (RemoteException e) {
+                                }
+                            }
+                        }
+                        mListeners.finishBroadcast();
+                    }
+
                     final PackageManager pm = mContext.getPackageManager();
                     final String[] packages = pm.getPackagesForUid(uid);
-                    if (packages != null) {
+                    if (changed && packages != null) {
+                        // ...then notify apps listening to ACTION_RESTRICT_BACKGROUND_CHANGED
                         final int userId = UserHandle.getUserId(uid);
                         for (String packageName : packages) {
                             final Intent intent = new Intent(
@@ -2929,8 +2963,6 @@
                             intent.setFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY);
                             mContext.sendBroadcastAsUser(intent, UserHandle.of(userId));
                         }
-                    } else {
-                        Slog.w(TAG, "no packages for uid " + uid);
                     }
                     return true;
                 }
@@ -2950,6 +2982,17 @@
                     updateScreenOn();
                     return true;
                 }
+                case MSG_UPDATE_INTERFACE_QUOTA: {
+                    removeInterfaceQuota((String) msg.obj);
+                    // int params need to be stitched back into a long
+                    setInterfaceQuota((String) msg.obj,
+                            ((long) msg.arg1 << 32) | (msg.arg2 & 0xFFFFFFFFL));
+                    return true;
+                }
+                case MSG_REMOVE_INTERFACE_QUOTA: {
+                    removeInterfaceQuota((String) msg.obj);
+                    return true;
+                }
                 default: {
                     return false;
                 }
diff --git a/services/core/java/com/android/server/notification/CalendarTracker.java b/services/core/java/com/android/server/notification/CalendarTracker.java
index 783b16f..5d50f3b 100644
--- a/services/core/java/com/android/server/notification/CalendarTracker.java
+++ b/services/core/java/com/android/server/notification/CalendarTracker.java
@@ -43,14 +43,15 @@
     private static final int EVENT_CHECK_LOOKAHEAD = 24 * 60 * 60 * 1000;
 
     private static final String[] INSTANCE_PROJECTION = {
-        Instances.BEGIN,
-        Instances.END,
-        Instances.TITLE,
-        Instances.VISIBLE,
-        Instances.EVENT_ID,
-        Instances.OWNER_ACCOUNT,
-        Instances.CALENDAR_ID,
-        Instances.AVAILABILITY,
+            Instances.BEGIN,
+            Instances.END,
+            Instances.TITLE,
+            Instances.VISIBLE,
+            Instances.EVENT_ID,
+            Instances.CALENDAR_DISPLAY_NAME,
+            Instances.OWNER_ACCOUNT,
+            Instances.CALENDAR_ID,
+            Instances.AVAILABILITY,
     };
 
     private static final String INSTANCE_ORDER_BY = Instances.BEGIN + " ASC";
@@ -87,49 +88,6 @@
         pw.print(prefix); pw.print("u="); pw.println(mUserContext.getUserId());
     }
 
-    public void dumpContent(Uri uri) {
-        Log.d(TAG, "dumpContent: " + uri);
-        final Cursor cursor = mUserContext.getContentResolver().query(uri, null, null, null, null);
-        try {
-            int r = 0;
-            while (cursor.moveToNext()) {
-                Log.d(TAG, "Row " + (++r) + ": id="
-                        + cursor.getInt(cursor.getColumnIndex(BaseColumns._ID)));
-                for (int i = 0; i < cursor.getColumnCount(); i++) {
-                    final String name = cursor.getColumnName(i);
-                    final int type = cursor.getType(i);
-                    Object o = null;
-                    String typeName = null;
-                    switch (type) {
-                        case Cursor.FIELD_TYPE_INTEGER:
-                            o = cursor.getLong(i);
-                            typeName = "INTEGER";
-                            break;
-                        case Cursor.FIELD_TYPE_STRING:
-                            o = cursor.getString(i);
-                            typeName = "STRING";
-                            break;
-                        case Cursor.FIELD_TYPE_NULL:
-                            o = null;
-                            typeName = "NULL";
-                            break;
-                        default:
-                            throw new UnsupportedOperationException("type: " + type);
-                    }
-                    if (name.equals(BaseColumns._ID)
-                            || name.toLowerCase().contains("sync")
-                            || o == null) {
-                        continue;
-                    }
-                    Log.d(TAG, "  " + name + "(" + typeName + ")=" + o);
-                }
-            }
-            Log.d(TAG, "  " + uri + " " + r + " rows");
-        } finally {
-            cursor.close();
-        }
-    }
-
     private ArraySet<Long> getPrimaryCalendars() {
         final long start = System.currentTimeMillis();
         final ArraySet<Long> rt = new ArraySet<>();
@@ -170,18 +128,21 @@
                 final String title = cursor.getString(2);
                 final boolean calendarVisible = cursor.getInt(3) == 1;
                 final int eventId = cursor.getInt(4);
-                final String owner = cursor.getString(5);
-                final long calendarId = cursor.getLong(6);
-                final int availability = cursor.getInt(7);
+                final String name = cursor.getString(5);
+                final String owner = cursor.getString(6);
+                final long calendarId = cursor.getLong(7);
+                final int availability = cursor.getInt(8);
                 final boolean calendarPrimary = primaryCalendars.contains(calendarId);
-                if (DEBUG) Log.d(TAG, String.format("%s %s-%s v=%s a=%s eid=%s o=%s cid=%s p=%s",
+                if (DEBUG) Log.d(TAG, String.format(
+                        "%s %s-%s v=%s a=%s eid=%s n=%s o=%s cid=%s p=%s",
                         title,
                         new Date(begin), new Date(end), calendarVisible,
-                        availabilityToString(availability), eventId, owner, calendarId,
+                        availabilityToString(availability), eventId, name, owner, calendarId,
                         calendarPrimary));
                 final boolean meetsTime = time >= begin && time < end;
                 final boolean meetsCalendar = calendarVisible && calendarPrimary
-                        && (filter.calendar == null || Objects.equals(filter.calendar, owner));
+                        && (filter.calendar == null || Objects.equals(filter.calendar, owner)
+                        || Objects.equals(filter.calendar, name));
                 final boolean meetsAvailability = availability != Instances.AVAILABILITY_FREE;
                 if (meetsCalendar && meetsAvailability) {
                     if (DEBUG) Log.d(TAG, "  MEETS CALENDAR & AVAILABILITY");
diff --git a/services/core/java/com/android/server/notification/NotificationManagerService.java b/services/core/java/com/android/server/notification/NotificationManagerService.java
index cabdced..e411579 100644
--- a/services/core/java/com/android/server/notification/NotificationManagerService.java
+++ b/services/core/java/com/android/server/notification/NotificationManagerService.java
@@ -2179,8 +2179,14 @@
         }
         if (adjustment.getSignals() != null) {
             Bundle.setDefusable(adjustment.getSignals(), true);
-            n.sbn.setOverrideGroupKey(adjustment.getSignals().getString(
-                    Adjustment.GROUP_KEY_OVERRIDE_KEY, null));
+            final String autoGroupKey = adjustment.getSignals().getString(
+                    Adjustment.GROUP_KEY_OVERRIDE_KEY, null);
+            if (autoGroupKey == null) {
+                EventLogTags.writeNotificationUnautogrouped(adjustment.getKey());
+            } else {
+                EventLogTags.writeNotificationAutogrouped(adjustment.getKey());
+            }
+            n.sbn.setOverrideGroupKey(autoGroupKey);
         }
     }
 
@@ -2233,6 +2239,13 @@
                                         .setFlag(Notification.FLAG_GROUP_SUMMARY, true)
                                         .build();
                         summaryNotification.extras.putAll(extras);
+                        Intent appIntent = getContext().getPackageManager()
+                                .getLaunchIntentForPackage(adjustment.getPackage());
+                        if (appIntent != null) {
+                            summaryNotification.contentIntent = PendingIntent.getActivityAsUser(
+                                    getContext(), 0, appIntent, 0, null,
+                                    UserHandle.of(adjustedSbn.getUserId()));
+                        }
                         final StatusBarNotification summarySbn =
                                 new StatusBarNotification(adjustedSbn.getPackageName(),
                                         adjustedSbn.getOpPkg(),
diff --git a/services/core/java/com/android/server/notification/RankingHelper.java b/services/core/java/com/android/server/notification/RankingHelper.java
index 4a41705..78b3f41 100644
--- a/services/core/java/com/android/server/notification/RankingHelper.java
+++ b/services/core/java/com/android/server/notification/RankingHelper.java
@@ -303,7 +303,7 @@
     private static int tryParseInt(String value, int defValue) {
         if (TextUtils.isEmpty(value)) return defValue;
         try {
-            return Integer.valueOf(value);
+            return Integer.parseInt(value);
         } catch (NumberFormatException e) {
             return defValue;
         }
diff --git a/services/core/java/com/android/server/notification/ZenModeConditions.java b/services/core/java/com/android/server/notification/ZenModeConditions.java
index 0945065..86ca97d 100644
--- a/services/core/java/com/android/server/notification/ZenModeConditions.java
+++ b/services/core/java/com/android/server/notification/ZenModeConditions.java
@@ -99,9 +99,7 @@
     @Override
     public void onServiceAdded(ComponentName component) {
         if (DEBUG) Log.d(TAG, "onServiceAdded " + component);
-        if (isAutomaticActive(component)) {
-            mHelper.setConfigAsync(mHelper.getConfig(), "zmc.onServiceAdded");
-        }
+        mHelper.setConfigAsync(mHelper.getConfig(), "zmc.onServiceAdded");
     }
 
     @Override
diff --git a/services/core/java/com/android/server/notification/ZenModeHelper.java b/services/core/java/com/android/server/notification/ZenModeHelper.java
index eb49e9f..60e00a9 100644
--- a/services/core/java/com/android/server/notification/ZenModeHelper.java
+++ b/services/core/java/com/android/server/notification/ZenModeHelper.java
@@ -643,18 +643,22 @@
                 dispatchOnPolicyChanged();
             }
             mConfig = config;
-            final String val = Integer.toString(config.hashCode());
-            Global.putString(mContext.getContentResolver(), Global.ZEN_MODE_CONFIG_ETAG, val);
-            if (!evaluateZenMode(reason, setRingerMode)) {
-                applyRestrictions();  // evaluateZenMode will also apply restrictions if changed
-            }
-            mConditions.evaluateConfig(config, true /*processSubscriptions*/);
+            mHandler.postApplyConfig(config, reason, setRingerMode);
             return true;
         } finally {
             Binder.restoreCallingIdentity(identity);
         }
     }
 
+    private void applyConfig(ZenModeConfig config, String reason, boolean setRingerMode) {
+        final String val = Integer.toString(config.hashCode());
+        Global.putString(mContext.getContentResolver(), Global.ZEN_MODE_CONFIG_ETAG, val);
+        if (!evaluateZenMode(reason, setRingerMode)) {
+            applyRestrictions();  // evaluateZenMode will also apply restrictions if changed
+        }
+        mConditions.evaluateConfig(config, true /*processSubscriptions*/);
+    }
+
     private int getZenModeSetting() {
         return Global.getInt(mContext.getContentResolver(), Global.ZEN_MODE, Global.ZEN_MODE_OFF);
     }
@@ -1071,14 +1075,23 @@
         private static final int MSG_DISPATCH = 1;
         private static final int MSG_METRICS = 2;
         private static final int MSG_SET_CONFIG = 3;
+        private static final int MSG_APPLY_CONFIG = 4;
 
         private final class ConfigMessageData {
             public final ZenModeConfig config;
             public final String reason;
+            public final boolean setRingerMode;
 
             ConfigMessageData(ZenModeConfig config, String reason) {
                 this.config = config;
                 this.reason = reason;
+                this.setRingerMode = false;
+            }
+
+            ConfigMessageData(ZenModeConfig config, String reason, boolean setRingerMode) {
+                this.config = config;
+                this.reason = reason;
+                this.setRingerMode = setRingerMode;
             }
         }
 
@@ -1102,6 +1115,11 @@
             sendMessage(obtainMessage(MSG_SET_CONFIG, new ConfigMessageData(config, reason)));
         }
 
+        private void postApplyConfig(ZenModeConfig config, String reason, boolean setRingerMode) {
+            sendMessage(obtainMessage(MSG_APPLY_CONFIG,
+                    new ConfigMessageData(config, reason, setRingerMode)));
+        }
+
         @Override
         public void handleMessage(Message msg) {
             switch (msg.what) {
@@ -1112,11 +1130,15 @@
                     mMetrics.emit();
                     break;
                 case MSG_SET_CONFIG:
-                    ConfigMessageData configData = (ConfigMessageData)msg.obj;
+                    ConfigMessageData configData = (ConfigMessageData) msg.obj;
                     synchronized (mConfig) {
                         setConfigLocked(configData.config, configData.reason);
                     }
                     break;
+                case MSG_APPLY_CONFIG:
+                    ConfigMessageData applyConfigData = (ConfigMessageData) msg.obj;
+                    applyConfig(applyConfigData.config, applyConfigData.reason,
+                            applyConfigData.setRingerMode);
             }
         }
     }
diff --git a/services/core/java/com/android/server/pm/Installer.java b/services/core/java/com/android/server/pm/Installer.java
index a11ee74..66c1a53 100644
--- a/services/core/java/com/android/server/pm/Installer.java
+++ b/services/core/java/com/android/server/pm/Installer.java
@@ -174,12 +174,13 @@
         mInstaller.execute("destroy_app_profiles", pkgName);
     }
 
-    public void createUserConfig(int userid) throws InstallerException {
-        mInstaller.execute("mkuserconfig", userid);
+    public void createUserData(String uuid, int userId, int userSerial, int flags)
+            throws InstallerException {
+        mInstaller.execute("create_user_data", uuid, userId, userSerial, flags);
     }
 
-    public void removeUserDataDirs(String uuid, int userid) throws InstallerException {
-        mInstaller.execute("rmuser", uuid, userid);
+    public void destroyUserData(String uuid, int userId, int flags) throws InstallerException {
+        mInstaller.execute("destroy_user_data", uuid, userId, flags);
     }
 
     public void markBootComplete(String instructionSet) throws InstallerException {
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 1fb260d..f21966d 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -109,7 +109,6 @@
 import android.app.admin.IDevicePolicyManager;
 import android.app.admin.SecurityLog;
 import android.app.backup.IBackupManager;
-import android.app.usage.UsageStatsManager;
 import android.content.BroadcastReceiver;
 import android.content.ComponentName;
 import android.content.Context;
@@ -217,6 +216,7 @@
 import android.util.SparseBooleanArray;
 import android.util.SparseIntArray;
 import android.util.Xml;
+import android.util.jar.StrictJarFile;
 import android.view.Display;
 
 import com.android.internal.R;
@@ -1104,6 +1104,7 @@
     final @NonNull String mRequiredInstallerPackage;
     final @Nullable String mSetupWizardPackage;
     final @NonNull String mServicesSystemSharedLibraryPackageName;
+    final @NonNull String mSharedSystemSharedLibraryPackageName;
 
     private final PackageUsage mPackageUsage = new PackageUsage();
 
@@ -1152,16 +1153,24 @@
                     try {
                         f = file.startWrite();
                         BufferedOutputStream out = new BufferedOutputStream(f);
-                        FileUtils.setPermissions(file.getBaseFile().getPath(), 0640, SYSTEM_UID, PACKAGE_INFO_GID);
+                        FileUtils.setPermissions(file.getBaseFile().getPath(),
+                                0640, SYSTEM_UID, PACKAGE_INFO_GID);
                         StringBuilder sb = new StringBuilder();
+
+                        sb.append(USAGE_FILE_MAGIC_VERSION_1);
+                        sb.append('\n');
+                        out.write(sb.toString().getBytes(StandardCharsets.US_ASCII));
+
                         for (PackageParser.Package pkg : mPackages.values()) {
-                            if (pkg.mLastPackageUsageTimeInMills == 0) {
+                            if (pkg.getLatestPackageUseTimeInMills() == 0L) {
                                 continue;
                             }
                             sb.setLength(0);
                             sb.append(pkg.packageName);
-                            sb.append(' ');
-                            sb.append((long)pkg.mLastPackageUsageTimeInMills);
+                            for (long usageTimeInMillis : pkg.mLastPackageUsageTimeInMills) {
+                                sb.append(' ');
+                                sb.append(usageTimeInMillis);
+                            }
                             sb.append('\n');
                             out.write(sb.toString().getBytes(StandardCharsets.US_ASCII));
                         }
@@ -1185,28 +1194,12 @@
                 try {
                     in = new BufferedInputStream(file.openRead());
                     StringBuffer sb = new StringBuffer();
-                    while (true) {
-                        String packageName = readToken(in, sb, ' ');
-                        if (packageName == null) {
-                            break;
-                        }
-                        String timeInMillisString = readToken(in, sb, '\n');
-                        if (timeInMillisString == null) {
-                            throw new IOException("Failed to find last usage time for package "
-                                                  + packageName);
-                        }
-                        PackageParser.Package pkg = mPackages.get(packageName);
-                        if (pkg == null) {
-                            continue;
-                        }
-                        long timeInMillis;
-                        try {
-                            timeInMillis = Long.parseLong(timeInMillisString);
-                        } catch (NumberFormatException e) {
-                            throw new IOException("Failed to parse " + timeInMillisString
-                                                  + " as a long.", e);
-                        }
-                        pkg.mLastPackageUsageTimeInMills = timeInMillis;
+
+                    String firstLine = readLine(in, sb);
+                    if (firstLine.equals(USAGE_FILE_MAGIC_VERSION_1)) {
+                        readVersion1LP(in, sb);
+                    } else {
+                        readVersion0LP(in, sb, firstLine);
                     }
                 } catch (FileNotFoundException expected) {
                     mIsHistoricalPackageUsageAvailable = false;
@@ -1219,6 +1212,76 @@
             mLastWritten.set(SystemClock.elapsedRealtime());
         }
 
+        private void readVersion0LP(InputStream in, StringBuffer sb, String firstLine)
+                throws IOException {
+            // Initial version of the file had no version number and stored one
+            // package-timestamp pair per line.
+            // Note that the first line has already been read from the InputStream.
+            String line = firstLine;
+            while (true) {
+                if (line == null) {
+                    break;
+                }
+
+                String[] tokens = line.split(" ");
+                if (tokens.length != 2) {
+                    throw new IOException("Failed to parse " + line +
+                            " as package-timestamp pair.");
+                }
+
+                String packageName = tokens[0];
+                PackageParser.Package pkg = mPackages.get(packageName);
+                if (pkg == null) {
+                    continue;
+                }
+
+                long timestamp = parseAsLong(tokens[1]);
+                for (int reason = 0;
+                        reason < PackageManager.NOTIFY_PACKAGE_USE_REASONS_COUNT;
+                        reason++) {
+                    pkg.mLastPackageUsageTimeInMills[reason] = timestamp;
+                }
+
+                line = readLine(in, sb);
+            }
+        }
+
+        private void readVersion1LP(InputStream in, StringBuffer sb) throws IOException {
+            // Version 1 of the file started with the corresponding version
+            // number and then stored a package name and eight timestamps per line.
+            String line;
+            while ((line = readLine(in, sb)) != null) {
+                String[] tokens = line.split(" ");
+                if (tokens.length != PackageManager.NOTIFY_PACKAGE_USE_REASONS_COUNT + 1) {
+                    throw new IOException("Failed to parse " + line + " as a timestamp array.");
+                }
+
+                String packageName = tokens[0];
+                PackageParser.Package pkg = mPackages.get(packageName);
+                if (pkg == null) {
+                    continue;
+                }
+
+                for (int reason = 0;
+                        reason < PackageManager.NOTIFY_PACKAGE_USE_REASONS_COUNT;
+                        reason++) {
+                    pkg.mLastPackageUsageTimeInMills[reason] = parseAsLong(tokens[reason + 1]);
+                }
+            }
+        }
+
+        private long parseAsLong(String token) throws IOException {
+            try {
+                return Long.parseLong(token);
+            } catch (NumberFormatException e) {
+                throw new IOException("Failed to parse " + token + " as a long.", e);
+            }
+        }
+
+        private String readLine(InputStream in, StringBuffer sb) throws IOException {
+            return readToken(in, sb, '\n');
+        }
+
         private String readToken(InputStream in, StringBuffer sb, char endOfToken)
                 throws IOException {
             sb.setLength(0);
@@ -1243,6 +1306,9 @@
             File fname = new File(systemDir, "package-usage.list");
             return new AtomicFile(fname);
         }
+
+        private static final String USAGE_FILE_MAGIC = "PACKAGE_USAGE__VERSION_";
+        private static final String USAGE_FILE_MAGIC_VERSION_1 = USAGE_FILE_MAGIC + "1";
     }
 
     class PackageHandler extends Handler {
@@ -2315,24 +2381,29 @@
             // For security and version matching reason, only consider
             // overlay packages if they reside in VENDOR_OVERLAY_DIR.
             File vendorOverlayDir = new File(VENDOR_OVERLAY_DIR);
-            scanDirTracedLI(vendorOverlayDir, PackageParser.PARSE_IS_SYSTEM
-                    | PackageParser.PARSE_IS_SYSTEM_DIR, scanFlags | SCAN_TRUSTED_OVERLAY, 0);
+            scanDirTracedLI(vendorOverlayDir, mDefParseFlags
+                    | PackageParser.PARSE_IS_SYSTEM
+                    | PackageParser.PARSE_IS_SYSTEM_DIR
+                    | PackageParser.PARSE_TRUSTED_OVERLAY, scanFlags | SCAN_TRUSTED_OVERLAY, 0);
 
             // Find base frameworks (resource packages without code).
-            scanDirTracedLI(frameworkDir, PackageParser.PARSE_IS_SYSTEM
+            scanDirTracedLI(frameworkDir, mDefParseFlags
+                    | PackageParser.PARSE_IS_SYSTEM
                     | PackageParser.PARSE_IS_SYSTEM_DIR
                     | PackageParser.PARSE_IS_PRIVILEGED,
                     scanFlags | SCAN_NO_DEX, 0);
 
             // Collected privileged system packages.
             final File privilegedAppDir = new File(Environment.getRootDirectory(), "priv-app");
-            scanDirTracedLI(privilegedAppDir, PackageParser.PARSE_IS_SYSTEM
+            scanDirTracedLI(privilegedAppDir, mDefParseFlags
+                    | PackageParser.PARSE_IS_SYSTEM
                     | PackageParser.PARSE_IS_SYSTEM_DIR
                     | PackageParser.PARSE_IS_PRIVILEGED, scanFlags, 0);
 
             // Collect ordinary system packages.
             final File systemAppDir = new File(Environment.getRootDirectory(), "app");
-            scanDirTracedLI(systemAppDir, PackageParser.PARSE_IS_SYSTEM
+            scanDirTracedLI(systemAppDir, mDefParseFlags
+                    | PackageParser.PARSE_IS_SYSTEM
                     | PackageParser.PARSE_IS_SYSTEM_DIR, scanFlags, 0);
 
             // Collect all vendor packages.
@@ -2342,12 +2413,14 @@
             } catch (IOException e) {
                 // failed to look up canonical path, continue with original one
             }
-            scanDirTracedLI(vendorAppDir, PackageParser.PARSE_IS_SYSTEM
+            scanDirTracedLI(vendorAppDir, mDefParseFlags
+                    | PackageParser.PARSE_IS_SYSTEM
                     | PackageParser.PARSE_IS_SYSTEM_DIR, scanFlags, 0);
 
             // Collect all OEM packages.
             final File oemAppDir = new File(Environment.getOemDirectory(), "app");
-            scanDirTracedLI(oemAppDir, PackageParser.PARSE_IS_SYSTEM
+            scanDirTracedLI(oemAppDir, mDefParseFlags
+                    | PackageParser.PARSE_IS_SYSTEM
                     | PackageParser.PARSE_IS_SYSTEM_DIR, scanFlags, 0);
 
             // Prune any system packages that no longer exist.
@@ -2428,10 +2501,12 @@
                         SystemClock.uptimeMillis());
                 scanDirTracedLI(mAppInstallDir, 0, scanFlags | SCAN_REQUIRE_KNOWN, 0);
 
-                scanDirTracedLI(mDrmAppPrivateInstallDir, PackageParser.PARSE_FORWARD_LOCK,
+                scanDirTracedLI(mDrmAppPrivateInstallDir, mDefParseFlags
+                        | PackageParser.PARSE_FORWARD_LOCK,
                         scanFlags | SCAN_REQUIRE_KNOWN, 0);
 
-                scanDirLI(mEphemeralInstallDir, PackageParser.PARSE_IS_EPHEMERAL,
+                scanDirLI(mEphemeralInstallDir, mDefParseFlags
+                        | PackageParser.PARSE_IS_EPHEMERAL,
                         scanFlags | SCAN_REQUIRE_KNOWN, 0);
 
                 /**
@@ -2476,7 +2551,7 @@
                         logCriticalInfo(Log.WARN, "Expected better " + packageName
                                 + " but never showed up; reverting to system");
 
-                        final int reparseFlags;
+                        int reparseFlags = mDefParseFlags;
                         if (FileUtils.contains(privilegedAppDir, scanFile)) {
                             reparseFlags = PackageParser.PARSE_IS_SYSTEM
                                     | PackageParser.PARSE_IS_SYSTEM_DIR
@@ -2638,7 +2713,7 @@
                         mIntentFilterVerifierComponent);
                 mServicesSystemSharedLibraryPackageName = getRequiredSharedLibraryLPr(
                         PackageManager.SYSTEM_SHARED_LIBRARY_SERVICES);
-                getRequiredSharedLibraryLPr(
+                mSharedSystemSharedLibraryPackageName = getRequiredSharedLibraryLPr(
                         PackageManager.SYSTEM_SHARED_LIBRARY_SHARED);
             } else {
                 mRequiredVerifierPackage = null;
@@ -2646,6 +2721,7 @@
                 mIntentFilterVerifierComponent = null;
                 mIntentFilterVerifier = null;
                 mServicesSystemSharedLibraryPackageName = null;
+                mSharedSystemSharedLibraryPackageName = null;
             }
 
             mInstallerService = new PackageInstallerService(context, this);
@@ -3621,6 +3697,13 @@
     }
 
     @Override
+    public @NonNull String getSharedSystemSharedLibraryPackageName() {
+        synchronized (mPackages) {
+            return mSharedSystemSharedLibraryPackageName;
+        }
+    }
+
+    @Override
     public @NonNull ParceledListSlice<FeatureInfo> getSystemAvailableFeatures() {
         synchronized (mPackages) {
             final ArrayList<FeatureInfo> res = new ArrayList<>(mAvailableFeatures.values());
@@ -6501,7 +6584,7 @@
         return true;
     }
 
-    private void scanDirTracedLI(File dir, int parseFlags, int scanFlags, long currentTime) {
+    private void scanDirTracedLI(File dir, final int parseFlags, int scanFlags, long currentTime) {
         Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "scanDir");
         try {
             scanDirLI(dir, parseFlags, scanFlags, currentTime);
@@ -6510,7 +6593,7 @@
         }
     }
 
-    private void scanDirLI(File dir, int parseFlags, int scanFlags, long currentTime) {
+    private void scanDirLI(File dir, final int parseFlags, int scanFlags, long currentTime) {
         final File[] files = dir.listFiles();
         if (ArrayUtils.isEmpty(files)) {
             Log.d(TAG, "No files in app dir " + dir);
@@ -6576,7 +6659,7 @@
     }
 
     private void collectCertificatesLI(PackageSetting ps, PackageParser.Package pkg, File srcFile,
-            int parseFlags) throws PackageManagerException {
+            final int policyFlags) throws PackageManagerException {
         if (ps != null
                 && ps.codePath.equals(srcFile)
                 && ps.timeStamp == srcFile.lastModified()
@@ -6605,7 +6688,7 @@
         }
 
         try {
-            PackageParser.collectCertificates(pkg, parseFlags);
+            PackageParser.collectCertificates(pkg, policyFlags);
         } catch (PackageParserException e) {
             throw PackageManagerException.from(e);
         }
@@ -6615,8 +6698,8 @@
      *  Traces a package scan.
      *  @see #scanPackageLI(File, int, int, long, UserHandle)
      */
-    private PackageParser.Package scanPackageTracedLI(File scanFile, int parseFlags, int scanFlags,
-            long currentTime, UserHandle user) throws PackageManagerException {
+    private PackageParser.Package scanPackageTracedLI(File scanFile, final int parseFlags,
+            int scanFlags, long currentTime, UserHandle user) throws PackageManagerException {
         Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "scanPackage");
         try {
             return scanPackageLI(scanFile, parseFlags, scanFlags, currentTime, user);
@@ -6632,7 +6715,6 @@
     private PackageParser.Package scanPackageLI(File scanFile, int parseFlags, int scanFlags,
             long currentTime, UserHandle user) throws PackageManagerException {
         if (DEBUG_INSTALL) Slog.d(TAG, "Parsing: " + scanFile);
-        parseFlags |= mDefParseFlags;
         PackageParser pp = new PackageParser();
         pp.setSeparateProcesses(mSeparateProcesses);
         pp.setOnlyCoreApps(mOnlyCore);
@@ -6642,11 +6724,14 @@
             parseFlags |= PackageParser.PARSE_TRUSTED_OVERLAY;
         }
 
+        Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "parsePackage");
         final PackageParser.Package pkg;
         try {
             pkg = pp.parsePackage(scanFile, parseFlags);
         } catch (PackageParserException e) {
             throw PackageManagerException.from(e);
+        } finally {
+            Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER);
         }
 
         return scanPackageLI(pkg, scanFile, parseFlags, scanFlags, currentTime, user);
@@ -6657,7 +6742,7 @@
      *  @throws PackageManagerException on a parse error.
      */
     private PackageParser.Package scanPackageLI(PackageParser.Package pkg, File scanFile,
-            int parseFlags, int scanFlags, long currentTime, UserHandle user)
+            final int policyFlags, int scanFlags, long currentTime, UserHandle user)
             throws PackageManagerException {
         // If the package has children and this is the first dive in the function
         // we scan the package with the SCAN_CHECK_ONLY flag set to see whether all
@@ -6673,20 +6758,20 @@
         }
 
         // Scan the parent
-        PackageParser.Package scannedPkg = scanPackageInternalLI(pkg, scanFile, parseFlags,
+        PackageParser.Package scannedPkg = scanPackageInternalLI(pkg, scanFile, policyFlags,
                 scanFlags, currentTime, user);
 
         // Scan the children
         final int childCount = (pkg.childPackages != null) ? pkg.childPackages.size() : 0;
         for (int i = 0; i < childCount; i++) {
             PackageParser.Package childPackage = pkg.childPackages.get(i);
-            scanPackageInternalLI(childPackage, scanFile, parseFlags, scanFlags,
+            scanPackageInternalLI(childPackage, scanFile, policyFlags, scanFlags,
                     currentTime, user);
         }
 
 
         if ((scanFlags & SCAN_CHECK_ONLY) != 0) {
-            return scanPackageLI(pkg, scanFile, parseFlags, scanFlags, currentTime, user);
+            return scanPackageLI(pkg, scanFile, policyFlags, scanFlags, currentTime, user);
         }
 
         return scannedPkg;
@@ -6697,7 +6782,7 @@
      *  @throws PackageManagerException on a parse error.
      */
     private PackageParser.Package scanPackageInternalLI(PackageParser.Package pkg, File scanFile,
-            int parseFlags, int scanFlags, long currentTime, UserHandle user)
+            int policyFlags, int scanFlags, long currentTime, UserHandle user)
             throws PackageManagerException {
         PackageSetting ps = null;
         PackageSetting updatedPkg;
@@ -6724,7 +6809,7 @@
             // may need to remove disabled child packages on the system partition
             // or may need to not add child packages if the parent apk is updated
             // on the data partition and no longer defines this child package.
-            if ((parseFlags & PackageParser.PARSE_IS_SYSTEM) != 0) {
+            if ((policyFlags & PackageParser.PARSE_IS_SYSTEM) != 0) {
                 // If this is a parent package for an updated system app and this system
                 // app got an OTA update which no longer defines some of the child packages
                 // we have to prune them from the disabled system packages.
@@ -6754,7 +6839,7 @@
 
         boolean updatedPkgBetter = false;
         // First check if this is a system package that may involve an update
-        if (updatedPkg != null && (parseFlags & PackageParser.PARSE_IS_SYSTEM) != 0) {
+        if (updatedPkg != null && (policyFlags & PackageParser.PARSE_IS_SYSTEM) != 0) {
             // If new package is not located in "/system/priv-app" (e.g. due to an OTA),
             // it needs to drop FLAG_PRIVILEGED.
             if (locationIsPrivileged(scanFile)) {
@@ -6836,17 +6921,17 @@
         if (updatedPkg != null) {
             // An updated system app will not have the PARSE_IS_SYSTEM flag set
             // initially
-            parseFlags |= PackageParser.PARSE_IS_SYSTEM;
+            policyFlags |= PackageParser.PARSE_IS_SYSTEM;
 
             // An updated privileged app will not have the PARSE_IS_PRIVILEGED
             // flag set initially
             if ((updatedPkg.pkgPrivateFlags & ApplicationInfo.PRIVATE_FLAG_PRIVILEGED) != 0) {
-                parseFlags |= PackageParser.PARSE_IS_PRIVILEGED;
+                policyFlags |= PackageParser.PARSE_IS_PRIVILEGED;
             }
         }
 
         // Verify certificates against what was last scanned
-        collectCertificatesLI(ps, pkg, scanFile, parseFlags);
+        collectCertificatesLI(ps, pkg, scanFile, policyFlags);
 
         /*
          * A new system app appeared, but we already had a non-system one of the
@@ -6854,7 +6939,7 @@
          */
         boolean shouldHideSystemApp = false;
         if (updatedPkg == null && ps != null
-                && (parseFlags & PackageParser.PARSE_IS_SYSTEM_DIR) != 0 && !isSystemApp(ps)) {
+                && (policyFlags & PackageParser.PARSE_IS_SYSTEM_DIR) != 0 && !isSystemApp(ps)) {
             /*
              * Check to make sure the signatures match first. If they don't,
              * wipe the installed application and its data.
@@ -6902,16 +6987,16 @@
         // are kept in different files. (except for app in either system or
         // vendor path).
         // TODO grab this value from PackageSettings
-        if ((parseFlags & PackageParser.PARSE_IS_SYSTEM_DIR) == 0) {
+        if ((policyFlags & PackageParser.PARSE_IS_SYSTEM_DIR) == 0) {
             if (ps != null && !ps.codePath.equals(ps.resourcePath)) {
-                parseFlags |= PackageParser.PARSE_FORWARD_LOCK;
+                policyFlags |= PackageParser.PARSE_FORWARD_LOCK;
             }
         }
 
         // TODO: extend to support forward-locked splits
         String resourcePath = null;
         String baseResourcePath = null;
-        if ((parseFlags & PackageParser.PARSE_FORWARD_LOCK) != 0 && !updatedPkgBetter) {
+        if ((policyFlags & PackageParser.PARSE_FORWARD_LOCK) != 0 && !updatedPkgBetter) {
             if (ps != null && ps.resourcePathString != null) {
                 resourcePath = ps.resourcePathString;
                 baseResourcePath = ps.resourcePathString;
@@ -6934,7 +7019,7 @@
         pkg.setApplicationInfoSplitResourcePaths(pkg.splitCodePaths);
 
         // Note that we invoke the following method only if we are about to unpack an application
-        PackageParser.Package scannedPkg = scanPackageLI(pkg, parseFlags, scanFlags
+        PackageParser.Package scannedPkg = scanPackageLI(pkg, policyFlags, scanFlags
                 | SCAN_UPDATE_SIGNATURE, currentTime, user);
 
         /*
@@ -7119,13 +7204,13 @@
     }
 
     @Override
-    public void notifyPackageUse(String packageName) {
+    public void notifyPackageUse(String packageName, int reason) {
         synchronized (mPackages) {
             PackageParser.Package p = mPackages.get(packageName);
             if (p == null) {
                 return;
             }
-            p.mLastPackageUsageTimeInMills = System.currentTimeMillis();
+            p.mLastPackageUsageTimeInMills[reason] = System.currentTimeMillis();
         }
     }
 
@@ -7576,8 +7661,9 @@
         return cpuAbiOverride;
     }
 
-    private PackageParser.Package scanPackageTracedLI(PackageParser.Package pkg, int parseFlags,
-            int scanFlags, long currentTime, UserHandle user) throws PackageManagerException {
+    private PackageParser.Package scanPackageTracedLI(PackageParser.Package pkg,
+            final int policyFlags, int scanFlags, long currentTime, UserHandle user)
+                    throws PackageManagerException {
         Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "scanPackage");
         // If the package has children and this is the first dive in the function
         // we recursively scan the package with the SCAN_CHECK_ONLY flag set to see
@@ -7595,12 +7681,12 @@
         final PackageParser.Package scannedPkg;
         try {
             // Scan the parent
-            scannedPkg = scanPackageLI(pkg, parseFlags, scanFlags, currentTime, user);
+            scannedPkg = scanPackageLI(pkg, policyFlags, scanFlags, currentTime, user);
             // Scan the children
             final int childCount = (pkg.childPackages != null) ? pkg.childPackages.size() : 0;
             for (int i = 0; i < childCount; i++) {
                 PackageParser.Package childPkg = pkg.childPackages.get(i);
-                scanPackageLI(childPkg, parseFlags,
+                scanPackageLI(childPkg, policyFlags,
                         scanFlags, currentTime, user);
             }
         } finally {
@@ -7608,17 +7694,17 @@
         }
 
         if ((scanFlags & SCAN_CHECK_ONLY) != 0) {
-            return scanPackageTracedLI(pkg, parseFlags, scanFlags, currentTime, user);
+            return scanPackageTracedLI(pkg, policyFlags, scanFlags, currentTime, user);
         }
 
         return scannedPkg;
     }
 
-    private PackageParser.Package scanPackageLI(PackageParser.Package pkg, int parseFlags,
+    private PackageParser.Package scanPackageLI(PackageParser.Package pkg, final int policyFlags,
             int scanFlags, long currentTime, UserHandle user) throws PackageManagerException {
         boolean success = false;
         try {
-            final PackageParser.Package res = scanPackageDirtyLI(pkg, parseFlags, scanFlags,
+            final PackageParser.Package res = scanPackageDirtyLI(pkg, policyFlags, scanFlags,
                     currentTime, user);
             success = true;
             return res;
@@ -7632,8 +7718,54 @@
         }
     }
 
-    private PackageParser.Package scanPackageDirtyLI(PackageParser.Package pkg, int parseFlags,
-            int scanFlags, long currentTime, UserHandle user)
+    /**
+     * Returns {@code true} if the given file contains code. Otherwise {@code false}.
+     */
+    private static boolean apkHasCode(String fileName) {
+        StrictJarFile jarFile = null;
+        try {
+            jarFile = new StrictJarFile(fileName,
+                    false /*verify*/, false /*signatureSchemeRollbackProtectionsEnforced*/);
+            return jarFile.findEntry("classes.dex") != null;
+        } catch (IOException ignore) {
+        } finally {
+            try {
+                jarFile.close();
+            } catch (IOException ignore) {}
+        }
+        return false;
+    }
+
+    /**
+     * Enforces code policy for the package. This ensures that if an APK has
+     * declared hasCode="true" in its manifest that the APK actually contains
+     * code.
+     *
+     * @throws PackageManagerException If bytecode could not be found when it should exist
+     */
+    private static void enforceCodePolicy(PackageParser.Package pkg)
+            throws PackageManagerException {
+        final boolean shouldHaveCode =
+                (pkg.applicationInfo.flags & ApplicationInfo.FLAG_HAS_CODE) != 0;
+        if (shouldHaveCode && !apkHasCode(pkg.baseCodePath)) {
+            throw new PackageManagerException(INSTALL_FAILED_INVALID_APK,
+                    "Package " + pkg.baseCodePath + " code is missing");
+        }
+
+        if (!ArrayUtils.isEmpty(pkg.splitCodePaths)) {
+            for (int i = 0; i < pkg.splitCodePaths.length; i++) {
+                final boolean splitShouldHaveCode =
+                        (pkg.splitFlags[i] & ApplicationInfo.FLAG_HAS_CODE) != 0;
+                if (splitShouldHaveCode && !apkHasCode(pkg.splitCodePaths[i])) {
+                    throw new PackageManagerException(INSTALL_FAILED_INVALID_APK,
+                            "Package " + pkg.splitCodePaths[i] + " code is missing");
+                }
+            }
+        }
+    }
+
+    private PackageParser.Package scanPackageDirtyLI(PackageParser.Package pkg,
+            final int policyFlags, final int scanFlags, long currentTime, UserHandle user)
             throws PackageManagerException {
         final File scanFile = new File(pkg.codePath);
         if (pkg.applicationInfo.getCodePath() == null ||
@@ -7643,15 +7775,41 @@
                     "Code and resource paths haven't been set correctly");
         }
 
-        if ((parseFlags&PackageParser.PARSE_IS_SYSTEM) != 0) {
+        // Apply policy
+        if ((policyFlags&PackageParser.PARSE_IS_SYSTEM) != 0) {
             pkg.applicationInfo.flags |= ApplicationInfo.FLAG_SYSTEM;
+            if (pkg.applicationInfo.isDirectBootAware()) {
+                // we're direct boot aware; set for all components
+                for (PackageParser.Service s : pkg.services) {
+                    s.info.encryptionAware = s.info.directBootAware = true;
+                }
+                for (PackageParser.Provider p : pkg.providers) {
+                    p.info.encryptionAware = p.info.directBootAware = true;
+                }
+                for (PackageParser.Activity a : pkg.activities) {
+                    a.info.encryptionAware = a.info.directBootAware = true;
+                }
+                for (PackageParser.Activity r : pkg.receivers) {
+                    r.info.encryptionAware = r.info.directBootAware = true;
+                }
+            }
         } else {
             // Only allow system apps to be flagged as core apps.
             pkg.coreApp = false;
+            // clear flags not applicable to regular apps
+            pkg.applicationInfo.privateFlags &=
+                    ~ApplicationInfo.PRIVATE_FLAG_DEFAULT_TO_DEVICE_PROTECTED_STORAGE;
+            pkg.applicationInfo.privateFlags &=
+                    ~ApplicationInfo.PRIVATE_FLAG_DIRECT_BOOT_AWARE;
+        }
+        pkg.mTrustedOverlay = (policyFlags&PackageParser.PARSE_TRUSTED_OVERLAY) != 0;
+
+        if ((policyFlags&PackageParser.PARSE_IS_PRIVILEGED) != 0) {
+            pkg.applicationInfo.privateFlags |= ApplicationInfo.PRIVATE_FLAG_PRIVILEGED;
         }
 
-        if ((parseFlags&PackageParser.PARSE_IS_PRIVILEGED) != 0) {
-            pkg.applicationInfo.privateFlags |= ApplicationInfo.PRIVATE_FLAG_PRIVILEGED;
+        if ((policyFlags & PackageParser.PARSE_ENFORCE_CODE) != 0) {
+            enforceCodePolicy(pkg);
         }
 
         if (mCustomResolverComponentName != null &&
@@ -7699,7 +7857,7 @@
         }
 
         if (DEBUG_PACKAGE_SCANNING) {
-            if ((parseFlags & PackageParser.PARSE_CHATTY) != 0)
+            if ((policyFlags & PackageParser.PARSE_CHATTY) != 0)
                 Log.d(TAG, "Scanning package " + pkg.packageName);
         }
 
@@ -7774,7 +7932,7 @@
                             + " for shared user failed");
                 }
                 if (DEBUG_PACKAGE_SCANNING) {
-                    if ((parseFlags & PackageParser.PARSE_CHATTY) != 0)
+                    if ((policyFlags & PackageParser.PARSE_CHATTY) != 0)
                         Log.d(TAG, "Shared UserID " + pkg.mSharedUserId + " (uid=" + suid.userId
                                 + "): packages=" + suid.packages);
                 }
@@ -7820,6 +7978,7 @@
                                     origPackage = null;
                                     continue;
                                 }
+                                // TODO: Add case when shared user id is added [b/28144775]
                             } else {
                                 if (DEBUG_UPGRADE) Log.v(TAG, "Renaming new package "
                                         + pkg.packageName + " to old name " + origPackage.name);
@@ -7886,7 +8045,7 @@
                 pkg.applicationInfo.flags |= ApplicationInfo.FLAG_UPDATED_SYSTEM_APP;
             }
 
-            if ((parseFlags&PackageParser.PARSE_IS_SYSTEM_DIR) == 0) {
+            if ((policyFlags&PackageParser.PARSE_IS_SYSTEM_DIR) == 0) {
                 // Check all shared libraries and map to their actual file path.
                 // We only do this here for apps not on a system dir, because those
                 // are the only ones that can fail an install due to this.  We
@@ -7907,7 +8066,7 @@
                     // over the latest parsed certs.
                     pkgSetting.signatures.mSignatures = pkg.mSignatures;
                 } else {
-                    if ((parseFlags & PackageParser.PARSE_IS_SYSTEM_DIR) == 0) {
+                    if ((policyFlags & PackageParser.PARSE_IS_SYSTEM_DIR) == 0) {
                         throw new PackageManagerException(INSTALL_FAILED_UPDATE_INCOMPATIBLE,
                                 "Package " + pkg.packageName + " upgrade keys do not match the "
                                 + "previously installed version");
@@ -7925,7 +8084,7 @@
                     // over the latest parsed certs.
                     pkgSetting.signatures.mSignatures = pkg.mSignatures;
                 } catch (PackageManagerException e) {
-                    if ((parseFlags & PackageParser.PARSE_IS_SYSTEM_DIR) == 0) {
+                    if ((policyFlags & PackageParser.PARSE_IS_SYSTEM_DIR) == 0) {
                         throw e;
                     }
                     // The signature has changed, but this package is in the system
@@ -8114,7 +8273,7 @@
 
         // Only privileged apps and updated privileged apps can add child packages.
         if (pkg.childPackages != null && !pkg.childPackages.isEmpty()) {
-            if ((parseFlags & PARSE_IS_PRIVILEGED) == 0) {
+            if ((policyFlags & PARSE_IS_PRIVILEGED) == 0) {
                 throw new PackageManagerException("Only privileged apps and updated "
                         + "privileged apps can add child packages. Ignoring package "
                         + pkg.packageName);
@@ -8240,7 +8399,7 @@
             } else if (pkgSetting.firstInstallTime == 0) {
                 // We need *something*.  Take time time stamp of the file.
                 pkgSetting.firstInstallTime = pkgSetting.lastUpdateTime = scanFileTime;
-            } else if ((parseFlags&PackageParser.PARSE_IS_SYSTEM_DIR) != 0) {
+            } else if ((policyFlags&PackageParser.PARSE_IS_SYSTEM_DIR) != 0) {
                 if (scanFileTime != pkgSetting.timeStamp) {
                     // A package on the system image has changed; consider this
                     // to be an update.
@@ -8283,7 +8442,7 @@
                                 p.info.authority = p.info.authority + ";" + names[j];
                             }
                             if (DEBUG_PACKAGE_SCANNING) {
-                                if ((parseFlags & PackageParser.PARSE_CHATTY) != 0)
+                                if ((policyFlags & PackageParser.PARSE_CHATTY) != 0)
                                     Log.d(TAG, "Registered content provider: " + names[j]
                                             + ", className = " + p.info.name + ", isSyncable = "
                                             + p.info.isSyncable);
@@ -8298,7 +8457,7 @@
                         }
                     }
                 }
-                if ((parseFlags&PackageParser.PARSE_CHATTY) != 0) {
+                if ((policyFlags&PackageParser.PARSE_CHATTY) != 0) {
                     if (r == null) {
                         r = new StringBuilder(256);
                     } else {
@@ -8318,7 +8477,7 @@
                 s.info.processName = fixProcessName(pkg.applicationInfo.processName,
                         s.info.processName, pkg.applicationInfo.uid);
                 mServices.addService(s);
-                if ((parseFlags&PackageParser.PARSE_CHATTY) != 0) {
+                if ((policyFlags&PackageParser.PARSE_CHATTY) != 0) {
                     if (r == null) {
                         r = new StringBuilder(256);
                     } else {
@@ -8338,7 +8497,7 @@
                 a.info.processName = fixProcessName(pkg.applicationInfo.processName,
                         a.info.processName, pkg.applicationInfo.uid);
                 mReceivers.addActivity(a, "receiver");
-                if ((parseFlags&PackageParser.PARSE_CHATTY) != 0) {
+                if ((policyFlags&PackageParser.PARSE_CHATTY) != 0) {
                     if (r == null) {
                         r = new StringBuilder(256);
                     } else {
@@ -8358,7 +8517,7 @@
                 a.info.processName = fixProcessName(pkg.applicationInfo.processName,
                         a.info.processName, pkg.applicationInfo.uid);
                 mActivities.addActivity(a, "activity");
-                if ((parseFlags&PackageParser.PARSE_CHATTY) != 0) {
+                if ((policyFlags&PackageParser.PARSE_CHATTY) != 0) {
                     if (r == null) {
                         r = new StringBuilder(256);
                     } else {
@@ -8378,7 +8537,7 @@
                 PackageParser.PermissionGroup cur = mPermissionGroups.get(pg.info.name);
                 if (cur == null) {
                     mPermissionGroups.put(pg.info.name, pg);
-                    if ((parseFlags&PackageParser.PARSE_CHATTY) != 0) {
+                    if ((policyFlags&PackageParser.PARSE_CHATTY) != 0) {
                         if (r == null) {
                             r = new StringBuilder(256);
                         } else {
@@ -8390,7 +8549,7 @@
                     Slog.w(TAG, "Permission group " + pg.info.name + " from package "
                             + pg.info.packageName + " ignored: original from "
                             + cur.info.packageName);
-                    if ((parseFlags&PackageParser.PARSE_CHATTY) != 0) {
+                    if ((policyFlags&PackageParser.PARSE_CHATTY) != 0) {
                         if (r == null) {
                             r = new StringBuilder(256);
                         } else {
@@ -8469,7 +8628,7 @@
                             bp.uid = pkg.applicationInfo.uid;
                             bp.sourcePackage = p.info.packageName;
                             p.info.flags |= PermissionInfo.FLAG_INSTALLED;
-                            if ((parseFlags&PackageParser.PARSE_CHATTY) != 0) {
+                            if ((policyFlags&PackageParser.PARSE_CHATTY) != 0) {
                                 if (r == null) {
                                     r = new StringBuilder(256);
                                 } else {
@@ -8488,7 +8647,7 @@
                                 + p.info.packageName + " ignored: original from "
                                 + bp.sourcePackage);
                     }
-                } else if ((parseFlags&PackageParser.PARSE_CHATTY) != 0) {
+                } else if ((policyFlags&PackageParser.PARSE_CHATTY) != 0) {
                     if (r == null) {
                         r = new StringBuilder(256);
                     } else {
@@ -8523,7 +8682,7 @@
                 // need other information about the application, like the ABI and what not ?
                 a.info.nativeLibraryDir = pkg.applicationInfo.nativeLibraryDir;
                 mInstrumentation.put(a.getComponentName(), a);
-                if ((parseFlags&PackageParser.PARSE_CHATTY) != 0) {
+                if ((policyFlags&PackageParser.PARSE_CHATTY) != 0) {
                     if (r == null) {
                         r = new StringBuilder(256);
                     } else {
@@ -13385,14 +13544,17 @@
             final File codeFile = new File(Environment.getDataAppDirectory(volumeUuid),
                     move.dataAppName);
             Slog.d(TAG, "Cleaning up " + move.packageName + " on " + volumeUuid);
+            final int[] userIds = sUserManager.getUserIds();
             synchronized (mInstallLock) {
                 // Clean up both app data and code
                 // All package moves are frozen until finished
-                try {
-                    mInstaller.destroyAppData(volumeUuid, move.packageName, UserHandle.USER_ALL,
-                            StorageManager.FLAG_STORAGE_DE | StorageManager.FLAG_STORAGE_CE, 0);
-                } catch (InstallerException e) {
-                    Slog.w(TAG, String.valueOf(e));
+                for (int userId : userIds) {
+                    try {
+                        mInstaller.destroyAppData(volumeUuid, move.packageName, userId,
+                                StorageManager.FLAG_STORAGE_DE | StorageManager.FLAG_STORAGE_CE, 0);
+                    } catch (InstallerException e) {
+                        Slog.w(TAG, String.valueOf(e));
+                    }
                 }
                 removeCodePathLI(codeFile);
             }
@@ -13538,8 +13700,8 @@
     /*
      * Install a non-existing package.
      */
-    private void installNewPackageLIF(PackageParser.Package pkg, int parseFlags, int scanFlags,
-            UserHandle user, String installerPackageName, String volumeUuid,
+    private void installNewPackageLIF(PackageParser.Package pkg, final int policyFlags,
+            int scanFlags, UserHandle user, String installerPackageName, String volumeUuid,
             PackageInstalledInfo res) {
         Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "installNewPackage");
 
@@ -13568,7 +13730,7 @@
         }
 
         try {
-            PackageParser.Package newPackage = scanPackageTracedLI(pkg, parseFlags, scanFlags,
+            PackageParser.Package newPackage = scanPackageTracedLI(pkg, policyFlags, scanFlags,
                     System.currentTimeMillis(), user);
 
             updateSettingsLI(newPackage, installerPackageName, null, res, user);
@@ -13625,9 +13787,9 @@
         return false;
     }
 
-    private void replacePackageLIF(PackageParser.Package pkg, int parseFlags, int scanFlags,
+    private void replacePackageLIF(PackageParser.Package pkg, final int policyFlags, int scanFlags,
             UserHandle user, String installerPackageName, PackageInstalledInfo res) {
-        final boolean isEphemeral = (parseFlags & PackageParser.PARSE_IS_EPHEMERAL) != 0;
+        final boolean isEphemeral = (policyFlags & PackageParser.PARSE_IS_EPHEMERAL) != 0;
 
         final PackageParser.Package oldPackage;
         final String pkgName = pkg.packageName;
@@ -13715,10 +13877,18 @@
 
         boolean sysPkg = (isSystemApp(oldPackage));
         if (sysPkg) {
-            replaceSystemPackageLIF(oldPackage, pkg, parseFlags, scanFlags,
+            // Set the system/privileged flags as needed
+            final boolean privileged =
+                    (oldPackage.applicationInfo.privateFlags
+                            & ApplicationInfo.PRIVATE_FLAG_PRIVILEGED) != 0;
+            final int systemPolicyFlags = policyFlags
+                    | PackageParser.PARSE_IS_SYSTEM
+                    | (privileged ? PackageParser.PARSE_IS_PRIVILEGED : 0);
+
+            replaceSystemPackageLIF(oldPackage, pkg, systemPolicyFlags, scanFlags,
                     user, allUsers, installerPackageName, res);
         } else {
-            replaceNonSystemPackageLIF(oldPackage, pkg, parseFlags, scanFlags,
+            replaceNonSystemPackageLIF(oldPackage, pkg, policyFlags, scanFlags,
                     user, allUsers, installerPackageName, res);
         }
     }
@@ -13733,7 +13903,7 @@
     }
 
     private void replaceNonSystemPackageLIF(PackageParser.Package deletedPackage,
-            PackageParser.Package pkg, int parseFlags, int scanFlags, UserHandle user,
+            PackageParser.Package pkg, final int policyFlags, int scanFlags, UserHandle user,
             int[] allUsers, String installerPackageName, PackageInstalledInfo res) {
         if (DEBUG_INSTALL) Slog.d(TAG, "replaceNonSystemPackageLI: new=" + pkg + ", old="
                 + deletedPackage);
@@ -13775,7 +13945,7 @@
             clearAppProfilesLIF(pkg);
 
             try {
-                final PackageParser.Package newPackage = scanPackageTracedLI(pkg, parseFlags,
+                final PackageParser.Package newPackage = scanPackageTracedLI(pkg, policyFlags,
                         scanFlags | SCAN_UPDATE_TIME, System.currentTimeMillis(), user);
                 updateSettingsLI(newPackage, installerPackageName, allUsers, res, user);
 
@@ -13872,20 +14042,13 @@
     }
 
     private void replaceSystemPackageLIF(PackageParser.Package deletedPackage,
-            PackageParser.Package pkg, int parseFlags, int scanFlags, UserHandle user,
+            PackageParser.Package pkg, final int policyFlags, int scanFlags, UserHandle user,
             int[] allUsers, String installerPackageName, PackageInstalledInfo res) {
         if (DEBUG_INSTALL) Slog.d(TAG, "replaceSystemPackageLI: new=" + pkg
                 + ", old=" + deletedPackage);
 
         final boolean disabledSystem;
 
-        // Set the system/privileged flags as needed
-        parseFlags |= PackageParser.PARSE_IS_SYSTEM;
-        if ((deletedPackage.applicationInfo.privateFlags & ApplicationInfo.PRIVATE_FLAG_PRIVILEGED)
-                != 0) {
-            parseFlags |= PackageParser.PARSE_IS_PRIVILEGED;
-        }
-
         // Remove existing system package
         removePackageLI(deletedPackage, true);
 
@@ -13914,7 +14077,7 @@
         PackageParser.Package newPackage = null;
         try {
             // Add the package to the internal data structures
-            newPackage = scanPackageTracedLI(pkg, parseFlags, scanFlags, 0, user);
+            newPackage = scanPackageTracedLI(pkg, policyFlags, scanFlags, 0, user);
 
             // Set the update and install times
             PackageSetting deletedPkgSetting = (PackageSetting) deletedPackage.mExtras;
@@ -13967,7 +14130,7 @@
             }
             // Add back the old system package
             try {
-                scanPackageTracedLI(deletedPackage, parseFlags, SCAN_UPDATE_SIGNATURE, 0, user);
+                scanPackageTracedLI(deletedPackage, policyFlags, SCAN_UPDATE_SIGNATURE, 0, user);
             } catch (PackageManagerException e) {
                 Slog.e(TAG, "Failed to restore original package: " + e.getMessage());
             }
@@ -15296,7 +15459,10 @@
 
         // Install the system package
         if (DEBUG_REMOVE) Slog.d(TAG, "Re-installing system package: " + disabledPs);
-        int parseFlags = PackageParser.PARSE_MUST_BE_APK | PackageParser.PARSE_IS_SYSTEM;
+        int parseFlags = mDefParseFlags
+                | PackageParser.PARSE_MUST_BE_APK
+                | PackageParser.PARSE_IS_SYSTEM
+                | PackageParser.PARSE_IS_SYSTEM_DIR;
         if (locationIsPrivileged(disabledPs.codePath)) {
             parseFlags |= PackageParser.PARSE_IS_PRIVILEGED;
         }
@@ -17382,6 +17548,10 @@
                 return true;
             }
         });
+
+        // Now that we're mostly running, clean up stale users and apps
+        reconcileUsers(StorageManager.UUID_PRIVATE_INTERNAL);
+        reconcileApps(StorageManager.UUID_PRIVATE_INTERNAL);
     }
 
     @Override
@@ -18614,14 +18784,100 @@
     }
 
     /**
+     * Prepare storage areas for given user on all mounted devices.
+     */
+    void prepareUserData(int userId, int userSerial, int flags) {
+        synchronized (mInstallLock) {
+            final StorageManager storage = mContext.getSystemService(StorageManager.class);
+            for (VolumeInfo vol : storage.getWritablePrivateVolumes()) {
+                final String volumeUuid = vol.getFsUuid();
+                prepareUserDataLI(volumeUuid, userId, userSerial, flags, true);
+            }
+        }
+    }
+
+    private void prepareUserDataLI(String volumeUuid, int userId, int userSerial, int flags,
+            boolean allowRecover) {
+        // Prepare storage and verify that serial numbers are consistent; if
+        // there's a mismatch we need to destroy to avoid leaking data
+        final StorageManager storage = mContext.getSystemService(StorageManager.class);
+        try {
+            storage.prepareUserStorage(volumeUuid, userId, userSerial, flags);
+
+            if ((flags & StorageManager.FLAG_STORAGE_DE) != 0 && !mOnlyCore) {
+                UserManagerService.enforceSerialNumber(
+                        Environment.getDataUserDeDirectory(volumeUuid, userId), userSerial);
+            }
+            if ((flags & StorageManager.FLAG_STORAGE_CE) != 0 && !mOnlyCore) {
+                UserManagerService.enforceSerialNumber(
+                        Environment.getDataUserCeDirectory(volumeUuid, userId), userSerial);
+            }
+
+            synchronized (mInstallLock) {
+                mInstaller.createUserData(volumeUuid, userId, userSerial, flags);
+            }
+        } catch (Exception e) {
+            logCriticalInfo(Log.WARN, "Destroying user " + userId + " on volume " + volumeUuid
+                    + " because we failed to prepare: " + e);
+            destroyUserDataLI(volumeUuid, userId, flags);
+
+            if (allowRecover) {
+                // Try one last time; if we fail again we're really in trouble
+                prepareUserDataLI(volumeUuid, userId, userSerial, flags, false);
+            }
+        }
+    }
+
+    /**
+     * Destroy storage areas for given user on all mounted devices.
+     */
+    void destroyUserData(int userId, int flags) {
+        synchronized (mInstallLock) {
+            final StorageManager storage = mContext.getSystemService(StorageManager.class);
+            for (VolumeInfo vol : storage.getWritablePrivateVolumes()) {
+                final String volumeUuid = vol.getFsUuid();
+                destroyUserDataLI(volumeUuid, userId, flags);
+            }
+        }
+    }
+
+    private void destroyUserDataLI(String volumeUuid, int userId, int flags) {
+        final StorageManager storage = mContext.getSystemService(StorageManager.class);
+        try {
+            // Clean up app data, profile data, and media data
+            mInstaller.destroyUserData(volumeUuid, userId, flags);
+
+            // Clean up system data
+            if (Objects.equals(volumeUuid, StorageManager.UUID_PRIVATE_INTERNAL)) {
+                if ((flags & StorageManager.FLAG_STORAGE_DE) != 0) {
+                    FileUtils.deleteContentsAndDir(Environment.getUserSystemDirectory(userId));
+                    FileUtils.deleteContentsAndDir(Environment.getDataSystemDeDirectory(userId));
+                }
+                if ((flags & StorageManager.FLAG_STORAGE_CE) != 0) {
+                    FileUtils.deleteContentsAndDir(Environment.getDataSystemCeDirectory(userId));
+                }
+            }
+
+            // Data with special labels is now gone, so finish the job
+            storage.destroyUserStorage(volumeUuid, userId, flags);
+
+        } catch (Exception e) {
+            logCriticalInfo(Log.WARN,
+                    "Failed to destroy user " + userId + " on volume " + volumeUuid + ": " + e);
+        }
+    }
+
+    /**
      * Examine all users present on given mounted volume, and destroy data
      * belonging to users that are no longer valid, or whose user ID has been
      * recycled.
      */
     private void reconcileUsers(String volumeUuid) {
-        // TODO: also reconcile DE directories
-        final File[] files = FileUtils
-                .listFilesOrEmpty(Environment.getDataUserCeDirectory(volumeUuid));
+        final List<File> files = new ArrayList<>();
+        Collections.addAll(files, FileUtils
+                .listFilesOrEmpty(Environment.getDataUserDeDirectory(volumeUuid)));
+        Collections.addAll(files, FileUtils
+                .listFilesOrEmpty(Environment.getDataUserCeDirectory(volumeUuid)));
         for (File file : files) {
             if (!file.isDirectory()) continue;
 
@@ -18640,7 +18896,7 @@
                 logCriticalInfo(Log.WARN, "Destroying user directory " + file
                         + " because no matching user was found");
                 destroyUser = true;
-            } else {
+            } else if (!mOnlyCore) {
                 try {
                     UserManagerService.enforceSerialNumber(file, info.serialNumber);
                 } catch (IOException e) {
@@ -18652,11 +18908,8 @@
 
             if (destroyUser) {
                 synchronized (mInstallLock) {
-                    try {
-                        mInstaller.removeUserDataDirs(volumeUuid, userId);
-                    } catch (InstallerException e) {
-                        Slog.w(TAG, "Failed to clean up user dirs", e);
-                    }
+                    destroyUserDataLI(volumeUuid, userId,
+                            StorageManager.FLAG_STORAGE_DE | StorageManager.FLAG_STORAGE_CE);
                 }
             }
         }
@@ -19451,21 +19704,7 @@
             mSettings.removeUserLPw(userHandle);
             mPendingBroadcasts.remove(userHandle);
             mEphemeralApplicationRegistry.onUserRemovedLPw(userHandle);
-        }
-        synchronized (mInstallLock) {
-            final StorageManager storage = mContext.getSystemService(StorageManager.class);
-            for (VolumeInfo vol : storage.getWritablePrivateVolumes()) {
-                final String volumeUuid = vol.getFsUuid();
-                if (DEBUG_INSTALL) Slog.d(TAG, "Removing user data on volume " + volumeUuid);
-                try {
-                    mInstaller.removeUserDataDirs(volumeUuid, userHandle);
-                } catch (InstallerException e) {
-                    Slog.w(TAG, "Failed to remove user data", e);
-                }
-            }
-            synchronized (mPackages) {
-                removeUnusedPackagesLILPw(userManager, userHandle);
-            }
+            removeUnusedPackagesLPw(userManager, userHandle);
         }
     }
 
@@ -19474,7 +19713,7 @@
      * that are no longer in use by any other user.
      * @param userHandle the user being removed
      */
-    private void removeUnusedPackagesLILPw(UserManagerService userManager, final int userHandle) {
+    private void removeUnusedPackagesLPw(UserManagerService userManager, final int userHandle) {
         final boolean DEBUG_CLEAN_APKS = false;
         int [] users = userManager.getUserIds();
         Iterator<PackageSetting> psit = mSettings.mPackages.values().iterator();
@@ -19524,11 +19763,6 @@
     /** Called by UserManagerService */
     void createNewUser(int userHandle) {
         synchronized (mInstallLock) {
-            try {
-                mInstaller.createUserConfig(userHandle);
-            } catch (InstallerException e) {
-                Slog.w(TAG, "Failed to create user config", e);
-            }
             mSettings.createNewUserLI(this, mInstaller, userHandle);
         }
         synchronized (mPackages) {
diff --git a/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java b/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java
index f79d6ee..3c065ae 100644
--- a/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java
+++ b/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java
@@ -69,7 +69,7 @@
         long now = System.currentTimeMillis();
         for (Iterator<PackageParser.Package> i = pkgs.iterator(); i.hasNext();) {
             PackageParser.Package pkg = i.next();
-            long then = pkg.mLastPackageUsageTimeInMills;
+            long then = pkg.getLatestPackageUseTimeInMills();
             if (then + dexOptLRUThresholdInMills < now) {
                 if (DEBUG_DEXOPT) {
                     Log.i(TAG, "Skipping dexopt of " + pkg.packageName + " last resumed: " +
diff --git a/services/core/java/com/android/server/pm/ShortcutPackage.java b/services/core/java/com/android/server/pm/ShortcutPackage.java
index b9b65eb..8e96a58 100644
--- a/services/core/java/com/android/server/pm/ShortcutPackage.java
+++ b/services/core/java/com/android/server/pm/ShortcutPackage.java
@@ -40,6 +40,7 @@
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
+import java.util.Set;
 import java.util.function.Predicate;
 
 /**
@@ -493,7 +494,7 @@
         }
 
         {
-            final List<String> cat = si.getCategories();
+            final Set<String> cat = si.getCategories();
             if (cat != null && cat.size() > 0) {
                 out.startTag(null, TAG_CATEGORIES);
                 XmlUtils.writeStringArrayXml(cat.toArray(new String[cat.size()]),
@@ -567,7 +568,7 @@
         int flags;
         int iconRes;
         String bitmapPath;
-        String[] categories = null;
+        ArraySet<String> categories = null;
 
         id = ShortcutService.parseStringAttribute(parser, ATTR_ID);
         activityComponent = ShortcutService.parseComponentNameAttribute(parser,
@@ -607,15 +608,21 @@
                 case TAG_STRING_ARRAY_XMLUTILS:
                     if (NAME_CATEGORIES.equals(ShortcutService.parseStringAttribute(parser,
                             ATTR_NAME_XMLUTILS))) {
-                        categories = XmlUtils.readThisStringArrayXml(parser, TAG_STRING_ARRAY_XMLUTILS, null);
+                        final String[] ar = XmlUtils.readThisStringArrayXml(
+                                parser, TAG_STRING_ARRAY_XMLUTILS, null);
+                        categories = new ArraySet<>(ar.length);
+                        for (int i = 0; i < ar.length; i++) {
+                            categories.add(ar[i]);
+                        }
                     }
                     continue;
             }
             throw ShortcutService.throwForInvalidTag(depth, tag);
         }
+
         return new ShortcutInfo(
                 userId, id, packageName, activityComponent, /* icon =*/ null, title, text,
-                (categories == null ? null : Arrays.asList(categories)), intent,
+                categories, intent,
                 intentPersistableExtras, weight, extras, lastChangedTimestamp, flags,
                 iconRes, bitmapPath);
     }
diff --git a/services/core/java/com/android/server/pm/ShortcutService.java b/services/core/java/com/android/server/pm/ShortcutService.java
index ac6510a..0ac5c1f 100644
--- a/services/core/java/com/android/server/pm/ShortcutService.java
+++ b/services/core/java/com/android/server/pm/ShortcutService.java
@@ -907,6 +907,16 @@
         }
     }
 
+    public void cleanupBitmapsForPackage(@UserIdInt int userId, String packageName) {
+        final File packagePath = new File(getUserBitmapFilePath(userId), packageName);
+        if (!packagePath.isDirectory()) {
+            return;
+        }
+        if (!(FileUtils.deleteContents(packagePath) && packagePath.delete())) {
+            Slog.w(TAG, "Unable to remove directory " + packagePath);
+        }
+    }
+
     @VisibleForTesting
     static class FileOutputStreamWithPath extends FileOutputStream {
         private final File mFile;
@@ -1572,7 +1582,7 @@
 
         // First, remove the package from the package list (if the package is a publisher).
         if (packageUserId == owningUserId) {
-            if (mUser.removePackage(packageName) != null) {
+            if (mUser.removePackage(this, packageName) != null) {
                 doNotify = true;
             }
         }
@@ -2084,11 +2094,11 @@
             pw.println(mIconPersistFormat);
             pw.print("    Icon quality: ");
             pw.println(mIconPersistQuality);
-            pw.print("    saveDelayMillis:");
+            pw.print("    saveDelayMillis: ");
             pw.println(mSaveDelayMillis);
-            pw.print("    resetInterval:");
+            pw.print("    resetInterval: ");
             pw.println(mResetInterval);
-            pw.print("    maxUpdatesPerInterval:");
+            pw.print("    maxUpdatesPerInterval: ");
             pw.println(mMaxUpdatesPerInterval);
             pw.print("    maxDynamicShortcuts:");
             pw.println(mMaxDynamicShortcuts);
@@ -2416,7 +2426,6 @@
         return mPackageManagerInternal;
     }
 
-    @VisibleForTesting
     File getUserBitmapFilePath(@UserIdInt int userId) {
         return new File(injectUserDataPath(userId), DIRECTORY_BITMAPS);
     }
diff --git a/services/core/java/com/android/server/pm/ShortcutUser.java b/services/core/java/com/android/server/pm/ShortcutUser.java
index 593f607..0b8c3a2 100644
--- a/services/core/java/com/android/server/pm/ShortcutUser.java
+++ b/services/core/java/com/android/server/pm/ShortcutUser.java
@@ -18,6 +18,7 @@
 import android.annotation.NonNull;
 import android.annotation.UserIdInt;
 import android.content.ComponentName;
+import android.text.format.Formatter;
 import android.util.ArrayMap;
 import android.util.Slog;
 
@@ -29,6 +30,7 @@
 import org.xmlpull.v1.XmlPullParserException;
 import org.xmlpull.v1.XmlSerializer;
 
+import java.io.File;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.function.Consumer;
@@ -103,8 +105,12 @@
         return mPackages;
     }
 
-    public ShortcutPackage removePackage(@NonNull String packageName) {
-        return mPackages.remove(packageName);
+    public ShortcutPackage removePackage(@NonNull ShortcutService s, @NonNull String packageName) {
+        final ShortcutPackage removed = mPackages.remove(packageName);
+
+        s.cleanupBitmapsForPackage(mUserId, packageName);
+
+        return removed;
     }
 
     public ArrayMap<PackageWithUser, ShortcutLauncher> getAllLaunchers() {
@@ -279,18 +285,51 @@
         pw.print(mUserId);
         pw.println();
 
+        prefix += prefix + "  ";
+
         pw.print(prefix);
-        pw.print("  ");
         pw.print("Default launcher: ");
         pw.print(mLauncherComponent);
         pw.println();
 
         for (int i = 0; i < mLaunchers.size(); i++) {
-            mLaunchers.valueAt(i).dump(s, pw, prefix + "  ");
+            mLaunchers.valueAt(i).dump(s, pw, prefix);
         }
 
         for (int i = 0; i < mPackages.size(); i++) {
-            mPackages.valueAt(i).dump(s, pw, prefix + "  ");
+            mPackages.valueAt(i).dump(s, pw, prefix);
         }
+
+        pw.println();
+        pw.print(prefix);
+        pw.println("Bitmap directories: ");
+        dumpDirectorySize(s, pw, prefix + "  ", s.getUserBitmapFilePath(mUserId));
+    }
+
+    private void dumpDirectorySize(@NonNull ShortcutService s, @NonNull PrintWriter pw,
+            @NonNull String prefix, File path) {
+        int numFiles = 0;
+        long size = 0;
+        final File[] children = path.listFiles();
+        if (children != null) {
+            for (File child : path.listFiles()) {
+                if (child.isFile()) {
+                    numFiles++;
+                    size += child.length();
+                } else if (child.isDirectory()) {
+                    dumpDirectorySize(s, pw, prefix + "  ", child);
+                }
+            }
+        }
+        pw.print(prefix);
+        pw.print("Path: ");
+        pw.print(path.getName());
+        pw.print("/ has ");
+        pw.print(numFiles);
+        pw.print(" files, size=");
+        pw.print(size);
+        pw.print(" (");
+        pw.print(Formatter.formatFileSize(s.mContext, size));
+        pw.println(")");
     }
 }
diff --git a/services/core/java/com/android/server/pm/UserManagerService.java b/services/core/java/com/android/server/pm/UserManagerService.java
index 60ea254..a085370 100644
--- a/services/core/java/com/android/server/pm/UserManagerService.java
+++ b/services/core/java/com/android/server/pm/UserManagerService.java
@@ -17,6 +17,9 @@
 
 package com.android.server.pm;
 
+import static android.content.Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS;
+import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK;
+
 import android.Manifest;
 import android.annotation.NonNull;
 import android.annotation.Nullable;
@@ -27,10 +30,12 @@
 import android.app.ActivityManagerNative;
 import android.app.IActivityManager;
 import android.app.IStopUserCallback;
+import android.app.KeyguardManager;
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
+import android.content.IntentSender;
 import android.content.pm.PackageManager;
 import android.content.pm.PackageManager.NameNotFoundException;
 import android.content.pm.UserInfo;
@@ -60,7 +65,6 @@
 import android.os.UserManagerInternal;
 import android.os.UserManagerInternal.UserRestrictionsListener;
 import android.os.storage.StorageManager;
-import android.os.storage.VolumeInfo;
 import android.system.ErrnoException;
 import android.system.Os;
 import android.system.OsConstants;
@@ -628,15 +632,6 @@
         intent.putExtra(Intent.EXTRA_USER_HANDLE, profileHandle.getIdentifier());
         intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY);
         mContext.sendBroadcastAsUser(intent, parentHandle);
-
-        //TODO: remove once Launcher3 is updated.
-        Intent oldIntent = new Intent(Intent.ACTION_MANAGED_PROFILE_AVAILABILITY_CHANGED);
-        oldIntent.putExtra(Intent.EXTRA_QUIET_MODE, inQuietMode);
-        oldIntent.putExtra(Intent.EXTRA_USER, profileHandle);
-        oldIntent.putExtra(Intent.EXTRA_USER_HANDLE, profileHandle.getIdentifier());
-        oldIntent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY);
-        mContext.sendBroadcastAsUser(oldIntent, parentHandle);
-
     }
 
     @Override
@@ -663,6 +658,8 @@
             long identity = Binder.clearCallingIdentity();
             try {
                 if (enableQuietMode) {
+                    LocalServices.getService(ActivityManagerInternal.class)
+                            .killForegroundAppsForUser(userHandle);
                     ActivityManagerNative.getDefault().stopUser(userHandle, /* force */true, null);
                 } else {
                     ActivityManagerNative.getDefault().startUserInBackground(userHandle);
@@ -693,6 +690,40 @@
     }
 
     @Override
+    public boolean trySetQuietModeDisabled(int userHandle, IntentSender target) {
+        final int credentialOwnerUserId = getCredentialOwnerProfile(userHandle);
+        if (mContext.getSystemService(StorageManager.class).isUserKeyUnlocked(userHandle)
+                || !mLockPatternUtils.isSecure(credentialOwnerUserId)) {
+            // if the user is already unlocked, no need to show a profile challenge
+            setQuietModeEnabled(userHandle, false);
+            return true;
+        }
+
+        long identity = Binder.clearCallingIdentity();
+        try {
+            // otherwise, we show a profile challenge to trigger decryption of the user
+            final KeyguardManager km = (KeyguardManager) mContext.getSystemService(
+                    Context.KEYGUARD_SERVICE);
+            // We should use userHandle not credentialOwnerUserId here, as even if it is unified
+            // lock, confirm screenlock page will know and show personal challenge, and unlock
+            // work profile when personal challenge is correct
+            final Intent unlockIntent = km.createConfirmDeviceCredentialIntent(null, null,
+                    userHandle);
+            if (unlockIntent == null) {
+                return false;
+            }
+            if (target != null) {
+                unlockIntent.putExtra(Intent.EXTRA_INTENT, target);
+            }
+            unlockIntent.setFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
+            mContext.startActivity(unlockIntent);
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+        return false;
+    }
+
+    @Override
     public void setUserEnabled(int userId) {
         checkManageUsersPermission("enable user");
         synchronized (mPackagesLock) {
@@ -2024,7 +2055,7 @@
             }
             final StorageManager storage = mContext.getSystemService(StorageManager.class);
             storage.createUserKey(userId, userInfo.serialNumber, userInfo.isEphemeral());
-            prepareUserStorage(userId, userInfo.serialNumber,
+            mPm.prepareUserData(userId, userInfo.serialNumber,
                     StorageManager.FLAG_STORAGE_DE | StorageManager.FLAG_STORAGE_CE);
             mPm.createNewUser(userId);
             userInfo.partial = false;
@@ -2264,9 +2295,9 @@
             Slog.i(LOG_TAG,
                 "Destroying key for user " + userHandle + " failed, continuing anyway", e);
         }
+
         // Cleanup package manager settings
         mPm.cleanUpUser(this, userHandle);
-
         // Remove this user from the list
         synchronized (mUsersLock) {
             mUsers.remove(userHandle);
@@ -2286,24 +2317,12 @@
         AtomicFile userFile = new AtomicFile(new File(mUsersDir, userHandle + XML_SUFFIX));
         userFile.delete();
         updateUserIds();
-        File userDir = Environment.getUserSystemDirectory(userHandle);
-        File renamedUserDir = Environment.getUserSystemDirectory(UserHandle.USER_NULL - userHandle);
-        if (userDir.renameTo(renamedUserDir)) {
-            removeDirectoryRecursive(renamedUserDir);
-        } else {
-            removeDirectoryRecursive(userDir);
-        }
-    }
 
-    private void removeDirectoryRecursive(File parent) {
-        if (parent.isDirectory()) {
-            String[] files = parent.list();
-            for (String filename : files) {
-                File child = new File(parent, filename);
-                removeDirectoryRecursive(child);
-            }
-        }
-        parent.delete();
+        // Now that we've purged all the metadata above, destroy the actual data
+        // on disk; if we battery pull in here we'll finish cleaning up when
+        // reconciling after reboot.
+        mPm.destroyUserData(userHandle,
+                StorageManager.FLAG_STORAGE_DE | StorageManager.FLAG_STORAGE_CE);
     }
 
     private void sendProfileRemovedBroadcast(int parentUserId, int removedUserId) {
@@ -2336,11 +2355,13 @@
     public void setApplicationRestrictions(String packageName, Bundle restrictions,
             int userId) {
         checkSystemOrRoot("set application restrictions");
+        if (restrictions != null) {
+            restrictions.setDefusable(true);
+        }
         synchronized (mPackagesLock) {
             if (restrictions == null || restrictions.isEmpty()) {
                 cleanAppRestrictionsForPackage(packageName, userId);
             } else {
-                restrictions.setDefusable(true);
                 // Write the restrictions to XML
                 writeApplicationRestrictionsLP(packageName, restrictions, userId);
             }
@@ -2598,23 +2619,12 @@
     }
 
     /**
-     * Prepare storage areas for given user on all mounted devices.
-     */
-    private void prepareUserStorage(int userId, int userSerial, int flags) {
-        final StorageManager storage = mContext.getSystemService(StorageManager.class);
-        for (VolumeInfo vol : storage.getWritablePrivateVolumes()) {
-            final String volumeUuid = vol.getFsUuid();
-            storage.prepareUserStorage(volumeUuid, userId, userSerial, flags);
-        }
-    }
-
-    /**
      * Called right before a user is started. This gives us a chance to prepare
      * app storage and apply any user restrictions.
      */
     public void onBeforeStartUser(int userId) {
         final int userSerial = getUserSerialNumber(userId);
-        prepareUserStorage(userId, userSerial, StorageManager.FLAG_STORAGE_DE);
+        mPm.prepareUserData(userId, userSerial, StorageManager.FLAG_STORAGE_DE);
         mPm.reconcileAppsData(userId, StorageManager.FLAG_STORAGE_DE);
 
         if (userId != UserHandle.USER_SYSTEM) {
@@ -2630,7 +2640,7 @@
      */
     public void onBeforeUnlockUser(@UserIdInt int userId) {
         final int userSerial = getUserSerialNumber(userId);
-        prepareUserStorage(userId, userSerial, StorageManager.FLAG_STORAGE_CE);
+        mPm.prepareUserData(userId, userSerial, StorageManager.FLAG_STORAGE_CE);
         mPm.reconcileAppsData(userId, StorageManager.FLAG_STORAGE_CE);
     }
 
diff --git a/services/core/java/com/android/server/policy/BarController.java b/services/core/java/com/android/server/policy/BarController.java
index 0c80ffa..5878709 100644
--- a/services/core/java/com/android/server/policy/BarController.java
+++ b/services/core/java/com/android/server/policy/BarController.java
@@ -18,15 +18,14 @@
 
 import android.app.StatusBarManager;
 import android.os.Handler;
-import android.os.RemoteException;
-import android.os.ServiceManager;
 import android.os.SystemClock;
 import android.util.Slog;
 import android.view.View;
 import android.view.WindowManager;
 import android.view.WindowManagerPolicy.WindowState;
 
-import com.android.internal.statusbar.IStatusBarService;
+import com.android.server.LocalServices;
+import com.android.server.statusbar.StatusBarManagerInternal;
 
 import java.io.PrintWriter;
 
@@ -52,7 +51,7 @@
     private final int mTranslucentWmFlag;
     protected final Handler mHandler;
     private final Object mServiceAquireLock = new Object();
-    protected IStatusBarService mStatusBarService;
+    protected StatusBarManagerInternal mStatusBarInternal;
 
     private WindowState mWin;
     private int mState = StatusBarManager.WINDOW_STATE_SHOWING;
@@ -182,15 +181,9 @@
             mHandler.post(new Runnable() {
                 @Override
                 public void run() {
-                    try {
-                        IStatusBarService statusbar = getStatusBarService();
-                        if (statusbar != null) {
-                            statusbar.setWindowState(mStatusBarManagerId, state);
-                        }
-                    } catch (RemoteException e) {
-                        if (DEBUG) Slog.w(mTag, "Error posting window state", e);
-                        // re-acquire status bar service next time it is needed.
-                        mStatusBarService = null;
+                    StatusBarManagerInternal statusbar = getStatusBarInternal();
+                    if (statusbar != null) {
+                        statusbar.setWindowState(mStatusBarManagerId, state);
                     }
                 }
             });
@@ -276,13 +269,12 @@
         }
     }
 
-    protected IStatusBarService getStatusBarService() {
+    protected StatusBarManagerInternal getStatusBarInternal() {
         synchronized (mServiceAquireLock) {
-            if (mStatusBarService == null) {
-                mStatusBarService = IStatusBarService.Stub.asInterface(
-                        ServiceManager.getService("statusbar"));
+            if (mStatusBarInternal == null) {
+                mStatusBarInternal = LocalServices.getService(StatusBarManagerInternal.class);
             }
-            return mStatusBarService;
+            return mStatusBarInternal;
         }
     }
 
diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java
index f6f401a..9f31f4f 100644
--- a/services/core/java/com/android/server/policy/PhoneWindowManager.java
+++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java
@@ -22,6 +22,7 @@
 import static android.content.pm.PackageManager.FEATURE_PICTURE_IN_PICTURE;
 import static android.content.pm.PackageManager.FEATURE_TELEVISION;
 import static android.content.pm.PackageManager.FEATURE_WATCH;
+import static android.content.res.Configuration.EMPTY;
 import static android.content.res.Configuration.UI_MODE_TYPE_CAR;
 import static android.content.res.Configuration.UI_MODE_TYPE_MASK;
 import static android.view.WindowManager.DOCKED_TOP;
@@ -63,6 +64,7 @@
 import android.content.res.CompatibilityInfo;
 import android.content.res.Configuration;
 import android.content.res.Resources;
+import android.content.res.TypedArray;
 import android.database.ContentObserver;
 import android.graphics.PixelFormat;
 import android.graphics.Rect;
@@ -733,7 +735,7 @@
                     dispatchMediaKeyRepeatWithWakeLock((KeyEvent)msg.obj);
                     break;
                 case MSG_DISPATCH_SHOW_RECENTS:
-                    showRecentApps(false);
+                    showRecentApps(false, msg.arg1 != 0);
                     break;
                 case MSG_DISPATCH_SHOW_GLOBAL_ACTIONS:
                     showGlobalActionsInternal();
@@ -1465,14 +1467,12 @@
 
     private void requestTvPictureInPictureInternal() {
         try {
-            IStatusBarService statusbar = getStatusBarService();
+            StatusBarManagerInternal statusbar = getStatusBarManagerInternal();
             if (statusbar != null) {
                 statusbar.requestTvPictureInPicture();
             }
-        } catch (RemoteException|IllegalArgumentException e) {
+        } catch (IllegalArgumentException e) {
             Slog.e(TAG, "Cannot handle picture-in-picture key", e);
-            // re-acquire status bar service next time it is needed.
-            mStatusBarService = null;
         }
     }
 
@@ -2535,7 +2535,7 @@
     @Override
     public View addStartingWindow(IBinder appToken, String packageName, int theme,
             CompatibilityInfo compatInfo, CharSequence nonLocalizedLabel, int labelRes,
-            int icon, int logo, int windowFlags) {
+            int icon, int logo, int windowFlags, Configuration overrideConfig) {
         if (!SHOW_STARTING_ANIMATIONS) {
             return null;
         }
@@ -2560,10 +2560,28 @@
                 }
             }
 
-            PhoneWindow win = new PhoneWindow(context);
+            if (overrideConfig != null && overrideConfig != EMPTY) {
+                if (DEBUG_STARTING_WINDOW) Slog.d(TAG, "addStartingWindow: creating context based"
+                        + " on overrideConfig" + overrideConfig + " for starting window");
+                final Context overrideContext = context.createConfigurationContext(overrideConfig);
+                overrideContext.setTheme(theme);
+                final TypedArray typedArray = overrideContext.obtainStyledAttributes(
+                        com.android.internal.R.styleable.Window);
+                final int resId = typedArray.getResourceId(R.styleable.Window_windowBackground, 0);
+                if (resId != 0 && overrideContext.getDrawable(resId) != null) {
+                    // We want to use the windowBackground for the override context if it is
+                    // available, otherwise we use the default one to make sure a themed starting
+                    // window is displayed for the app.
+                    if (DEBUG_STARTING_WINDOW) Slog.d(TAG, "addStartingWindow: apply overrideConfig"
+                            + overrideConfig + " to starting window resId=" + resId);
+                    context = overrideContext;
+                }
+            }
+
+            final PhoneWindow win = new PhoneWindow(context);
             win.setIsStartingWindow(true);
 
-            Resources r = context.getResources();
+            final Resources r = context.getResources();
             win.setTitle(r.getText(labelRes, nonLocalizedLabel));
 
             win.setType(
@@ -2616,10 +2634,8 @@
             wm = (WindowManager)context.getSystemService(Context.WINDOW_SERVICE);
             view = win.getDecorView();
 
-            if (DEBUG_STARTING_WINDOW) Slog.d(
-                TAG, "Adding starting window for " + packageName
-                + " / " + appToken + ": "
-                + (view.getParent() != null ? view : null));
+            if (DEBUG_STARTING_WINDOW) Slog.d(TAG, "Adding starting window for "
+                + packageName + " / " + appToken + ": " + (view.getParent() != null ? view : null));
 
             wm.addView(view, params);
 
@@ -3285,6 +3301,7 @@
                         shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                         try {
                             startActivityAsUser(shortcutIntent, UserHandle.CURRENT);
+                            dismissKeyboardShortcutsMenu();
                         } catch (ActivityNotFoundException ex) {
                             Slog.w(TAG, "Dropping shortcut key combination because "
                                     + "the activity to which it is registered was not found: "
@@ -3311,6 +3328,7 @@
                     shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                     try {
                         startActivityAsUser(shortcutIntent, UserHandle.CURRENT);
+                        dismissKeyboardShortcutsMenu();
                     } catch (ActivityNotFoundException ex) {
                         Slog.w(TAG, "Dropping shortcut key combination because "
                                 + "the activity to which it is registered was not found: "
@@ -3329,6 +3347,7 @@
                 intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                 try {
                     startActivityAsUser(intent, UserHandle.CURRENT);
+                    dismissKeyboardShortcutsMenu();
                 } catch (ActivityNotFoundException ex) {
                     Slog.w(TAG, "Dropping application launch key because "
                             + "the activity to which it is registered was not found: "
@@ -3544,21 +3563,15 @@
             ((SearchManager) mContext.getSystemService(Context.SEARCH_SERVICE))
                     .launchLegacyAssist(hint, UserHandle.myUserId(), args);
         } else {
-            try {
-                if (hint != null) {
-                    if (args == null) {
-                        args = new Bundle();
-                    }
-                    args.putBoolean(hint, true);
+            if (hint != null) {
+                if (args == null) {
+                    args = new Bundle();
                 }
-                IStatusBarService statusbar = getStatusBarService();
-                if (statusbar != null) {
-                    statusbar.startAssist(args);
-                }
-            } catch (RemoteException e) {
-                Slog.e(TAG, "RemoteException when starting assist", e);
-                // re-acquire status bar service next time it is needed.
-                mStatusBarService = null;
+                args.putBoolean(hint, true);
+            }
+            StatusBarManagerInternal statusbar = getStatusBarManagerInternal();
+            if (statusbar != null) {
+                statusbar.startAssist(args);
             }
         }
     }
@@ -3580,90 +3593,63 @@
 
     private void preloadRecentApps() {
         mPreloadedRecentApps = true;
-        try {
-            IStatusBarService statusbar = getStatusBarService();
-            if (statusbar != null) {
-                statusbar.preloadRecentApps();
-            }
-        } catch (RemoteException e) {
-            Slog.e(TAG, "RemoteException when preloading recent apps", e);
-            // re-acquire status bar service next time it is needed.
-            mStatusBarService = null;
+        StatusBarManagerInternal statusbar = getStatusBarManagerInternal();
+        if (statusbar != null) {
+            statusbar.preloadRecentApps();
         }
     }
 
     private void cancelPreloadRecentApps() {
         if (mPreloadedRecentApps) {
             mPreloadedRecentApps = false;
-            try {
-                IStatusBarService statusbar = getStatusBarService();
-                if (statusbar != null) {
-                    statusbar.cancelPreloadRecentApps();
-                }
-            } catch (RemoteException e) {
-                Slog.e(TAG, "RemoteException when cancelling recent apps preload", e);
-                // re-acquire status bar service next time it is needed.
-                mStatusBarService = null;
+            StatusBarManagerInternal statusbar = getStatusBarManagerInternal();
+            if (statusbar != null) {
+                statusbar.cancelPreloadRecentApps();
             }
         }
     }
 
     private void toggleRecentApps() {
         mPreloadedRecentApps = false; // preloading no longer needs to be canceled
-        try {
-            IStatusBarService statusbar = getStatusBarService();
-            if (statusbar != null) {
-                statusbar.toggleRecentApps();
-            }
-        } catch (RemoteException e) {
-            Slog.e(TAG, "RemoteException when toggling recent apps", e);
-            // re-acquire status bar service next time it is needed.
-            mStatusBarService = null;
+        StatusBarManagerInternal statusbar = getStatusBarManagerInternal();
+        if (statusbar != null) {
+            statusbar.toggleRecentApps();
         }
     }
 
     @Override
-    public void showRecentApps() {
+    public void showRecentApps(boolean fromHome) {
         mHandler.removeMessages(MSG_DISPATCH_SHOW_RECENTS);
-        mHandler.sendEmptyMessage(MSG_DISPATCH_SHOW_RECENTS);
+        mHandler.obtainMessage(MSG_DISPATCH_SHOW_RECENTS, fromHome ? 1 : 0, 0).sendToTarget();
     }
 
-    private void showRecentApps(boolean triggeredFromAltTab) {
+    private void showRecentApps(boolean triggeredFromAltTab, boolean fromHome) {
         mPreloadedRecentApps = false; // preloading no longer needs to be canceled
-        try {
-            IStatusBarService statusbar = getStatusBarService();
-            if (statusbar != null) {
-                statusbar.showRecentApps(triggeredFromAltTab);
-            }
-        } catch (RemoteException e) {
-            Slog.e(TAG, "RemoteException when showing recent apps", e);
-            // re-acquire status bar service next time it is needed.
-            mStatusBarService = null;
+        StatusBarManagerInternal statusbar = getStatusBarManagerInternal();
+        if (statusbar != null) {
+            statusbar.showRecentApps(triggeredFromAltTab, fromHome);
         }
     }
 
     private void toggleKeyboardShortcutsMenu(int deviceId) {
-        try {
-            IStatusBarService statusbar = getStatusBarService();
-            if (statusbar != null) {
-                statusbar.toggleKeyboardShortcutsMenu(deviceId);
-            }
-        } catch (RemoteException e) {
-            Slog.e(TAG, "RemoteException when showing keyboard shortcuts menu", e);
+        StatusBarManagerInternal statusbar = getStatusBarManagerInternal();
+        if (statusbar != null) {
+            statusbar.toggleKeyboardShortcutsMenu(deviceId);
+        }
+    }
+
+    private void dismissKeyboardShortcutsMenu() {
+        StatusBarManagerInternal statusbar = getStatusBarManagerInternal();
+        if (statusbar != null) {
+            statusbar.dismissKeyboardShortcutsMenu();
         }
     }
 
     private void hideRecentApps(boolean triggeredFromAltTab, boolean triggeredFromHome) {
         mPreloadedRecentApps = false; // preloading no longer needs to be canceled
-        try {
-            IStatusBarService statusbar = getStatusBarService();
-            if (statusbar != null) {
-                statusbar.hideRecentApps(triggeredFromAltTab, triggeredFromHome);
-            }
-        } catch (RemoteException e) {
-            Slog.e(TAG, "RemoteException when closing recent apps", e);
-            // re-acquire status bar service next time it is needed.
-            mStatusBarService = null;
+        StatusBarManagerInternal statusbar = getStatusBarManagerInternal();
+        if (statusbar != null) {
+            statusbar.hideRecentApps(triggeredFromAltTab, triggeredFromHome);
         }
     }
 
@@ -4754,7 +4740,7 @@
         // Dock windows carve out the bottom of the screen, so normal windows
         // can't appear underneath them.
         if (attrs.type == TYPE_INPUT_METHOD && win.isVisibleOrBehindKeyguardLw()
-                && !win.getGivenInsetsPendingLw()) {
+                && win.isDisplayedLw() && !win.getGivenInsetsPendingLw()) {
             setLastInputMethodWindowLw(null, null);
             offsetInputMethodWindowLw(win);
         }
@@ -7190,10 +7176,6 @@
             tmpVisibility &= ~PolicyControl.adjustClearableFlags(win, View.SYSTEM_UI_CLEARABLE_FLAGS);
         }
 
-        if (mUiMode == Configuration.UI_MODE_TYPE_CAR) {
-            tmpVisibility |= StatusBarManager.DISABLE_RECENT;
-        }
-
         final int fullscreenVisibility = updateLightStatusBarLw(0 /* vis */,
                 mTopFullscreenOpaqueWindowState, mTopFullscreenOpaqueOrDimmingWindowState);
         final int dockedVisibility = updateLightStatusBarLw(0 /* vis */,
@@ -7469,12 +7451,9 @@
         if (mKeyguardDelegate != null) {
             mKeyguardDelegate.setCurrentUser(newUserId);
         }
-        if (mStatusBarService != null) {
-            try {
-                mStatusBarService.setCurrentUser(newUserId);
-            } catch (RemoteException e) {
-                // oh well
-            }
+        StatusBarManagerInternal statusBar = getStatusBarManagerInternal();
+        if (statusBar != null) {
+            statusBar.setCurrentUser(newUserId);
         }
         setLastInputMethodWindowLw(null, null);
     }
diff --git a/services/core/java/com/android/server/policy/StatusBarController.java b/services/core/java/com/android/server/policy/StatusBarController.java
index 86d0468..245518c 100644
--- a/services/core/java/com/android/server/policy/StatusBarController.java
+++ b/services/core/java/com/android/server/policy/StatusBarController.java
@@ -18,9 +18,7 @@
 
 import android.app.StatusBarManager;
 import android.os.IBinder;
-import android.os.RemoteException;
 import android.os.SystemClock;
-import android.util.Slog;
 import android.view.View;
 import android.view.WindowManager;
 import android.view.animation.Animation;
@@ -28,7 +26,6 @@
 import android.view.animation.Interpolator;
 import android.view.animation.TranslateAnimation;
 
-import com.android.internal.statusbar.IStatusBarService;
 import com.android.server.LocalServices;
 import com.android.server.statusbar.StatusBarManagerInternal;
 
@@ -49,15 +46,9 @@
             mHandler.post(new Runnable() {
                 @Override
                 public void run() {
-                    try {
-                        IStatusBarService statusbar = getStatusBarService();
-                        if (statusbar != null) {
-                            statusbar.appTransitionPending();
-                        }
-                    } catch (RemoteException e) {
-                        Slog.e(mTag, "RemoteException when app transition is pending", e);
-                        // re-acquire status bar service next time it is needed.
-                        mStatusBarService = null;
+                    StatusBarManagerInternal statusbar = getStatusBarInternal();
+                    if (statusbar != null) {
+                        statusbar.appTransitionPending();
                     }
                 }
             });
@@ -69,19 +60,13 @@
             mHandler.post(new Runnable() {
                 @Override
                 public void run() {
-                    try {
-                        IStatusBarService statusbar = getStatusBarService();
-                        if (statusbar != null) {
-                            long startTime = calculateStatusBarTransitionStartTime(openAnimation,
-                                    closeAnimation);
-                            long duration = closeAnimation != null || openAnimation != null
-                                    ? TRANSITION_DURATION : 0;
-                            statusbar.appTransitionStarting(startTime, duration);
-                        }
-                    } catch (RemoteException e) {
-                        Slog.e(mTag, "RemoteException when app transition is starting", e);
-                        // re-acquire status bar service next time it is needed.
-                        mStatusBarService = null;
+                    StatusBarManagerInternal statusbar = getStatusBarInternal();
+                    if (statusbar != null) {
+                        long startTime = calculateStatusBarTransitionStartTime(openAnimation,
+                                closeAnimation);
+                        long duration = closeAnimation != null || openAnimation != null
+                                ? TRANSITION_DURATION : 0;
+                        statusbar.appTransitionStarting(startTime, duration);
                     }
                 }
             });
@@ -92,15 +77,9 @@
             mHandler.post(new Runnable() {
                 @Override
                 public void run() {
-                    try {
-                        IStatusBarService statusbar = getStatusBarService();
-                        if (statusbar != null) {
-                            statusbar.appTransitionCancelled();
-                        }
-                    } catch (RemoteException e) {
-                        Slog.e(mTag, "RemoteException when app transition is cancelled", e);
-                        // re-acquire status bar service next time it is needed.
-                        mStatusBarService = null;
+                    StatusBarManagerInternal statusbar = getStatusBarInternal();
+                    if (statusbar != null) {
+                        statusbar.appTransitionCancelled();
                     }
                 }
             });
diff --git a/services/core/java/com/android/server/power/PowerManagerService.java b/services/core/java/com/android/server/power/PowerManagerService.java
index 8cd536d..12a2d2e 100644
--- a/services/core/java/com/android/server/power/PowerManagerService.java
+++ b/services/core/java/com/android/server/power/PowerManagerService.java
@@ -143,7 +143,6 @@
     private static final int WAKE_LOCK_STAY_AWAKE = 1 << 5; // only set if already awake
     private static final int WAKE_LOCK_DOZE = 1 << 6;
     private static final int WAKE_LOCK_DRAW = 1 << 7;
-    private static final int WAKE_LOCK_SUSTAINED_PERFORMANCE = 1 << 8;
 
     // Summarizes the user activity state.
     private static final int USER_ACTIVITY_SCREEN_BRIGHT = 1 << 0;
@@ -162,7 +161,6 @@
 
     // Power hints defined in hardware/libhardware/include/hardware/power.h.
     private static final int POWER_HINT_LOW_POWER = 5;
-    private static final int POWER_HINT_SUSTAINED_PERFORMANCE = 6;
     private static final int POWER_HINT_VR_MODE = 7;
 
     // Power features defined in hardware/libhardware/include/hardware/power.h.
@@ -470,9 +468,6 @@
     // True if we are currently in light device idle mode.
     private boolean mLightDeviceIdleMode;
 
-    // True if we are currently in sustained performance mode.
-    private boolean mSustainedPerformanceMode;
-
     // Set of app ids that we will always respect the wake locks for.
     int[] mDeviceIdleWhitelist = new int[0];
 
@@ -481,8 +476,6 @@
 
     private final SparseIntArray mUidState = new SparseIntArray();
 
-    private final SparseIntArray mSustainedPerformanceUid = new SparseIntArray();
-
     // True if theater mode is enabled
     private boolean mTheaterModeEnabled;
 
@@ -879,12 +872,6 @@
                     throw new IllegalArgumentException("Wake lock is already dead.");
                 }
                 mWakeLocks.add(wakeLock);
-
-                if ((flags & PowerManager.WAKE_LOCK_LEVEL_MASK)
-                        == PowerManager.SUSTAINED_PERFORMANCE_WAKE_LOCK) {
-                    int numberWakelock = mSustainedPerformanceUid.get(uid);
-                    mSustainedPerformanceUid.put(uid, numberWakelock + 1);
-                }
                 setWakeLockDisabledStateLocked(wakeLock);
                 notifyAcquire = true;
             }
@@ -953,17 +940,6 @@
                 mRequestWaitForNegativeProximity = true;
             }
 
-
-            if ((wakeLock.mFlags & PowerManager.WAKE_LOCK_LEVEL_MASK)
-                    == PowerManager.SUSTAINED_PERFORMANCE_WAKE_LOCK) {
-                int numberWakelock = mSustainedPerformanceUid.get(wakeLock.mOwnerUid);
-                if (numberWakelock == 1) {
-                    mSustainedPerformanceUid.delete(wakeLock.mOwnerUid);
-                } else {
-                    mSustainedPerformanceUid.put(wakeLock.mOwnerUid, numberWakelock - 1);
-                }
-            }
-
             wakeLock.mLock.unlinkToDeath(wakeLock, 0);
             removeWakeLockLocked(wakeLock, index);
         }
@@ -1586,10 +1562,6 @@
                         break;
                     case PowerManager.DRAW_WAKE_LOCK:
                         mWakeLockSummary |= WAKE_LOCK_DRAW;
-                    case PowerManager.SUSTAINED_PERFORMANCE_WAKE_LOCK:
-                        if (!wakeLock.mDisabled) {
-                            mWakeLockSummary |= WAKE_LOCK_SUSTAINED_PERFORMANCE;
-                        }
                         break;
                 }
             }
@@ -2288,14 +2260,6 @@
         if (autoSuspend && mDecoupleHalAutoSuspendModeFromDisplayConfig) {
             setHalAutoSuspendModeLocked(true);
         }
-
-        if (mSustainedPerformanceMode
-                && (mWakeLockSummary & WAKE_LOCK_SUSTAINED_PERFORMANCE) == 0) {
-            setSustainedPerformanceModeLocked(false);
-        } else if (!mSustainedPerformanceMode
-                && (mWakeLockSummary & WAKE_LOCK_SUSTAINED_PERFORMANCE) != 0) {
-            setSustainedPerformanceModeLocked(true);
-        }
     }
 
     /**
@@ -2394,12 +2358,6 @@
         }
     }
 
-    private void setSustainedPerformanceModeLocked(boolean mode) {
-            mSustainedPerformanceMode = mode;
-            powerHintInternal(POWER_HINT_SUSTAINED_PERFORMANCE,
-                              mSustainedPerformanceMode ? 1 : 0);
-    }
-
     boolean isDeviceIdleModeInternal() {
         synchronized (mLock) {
             return mDeviceIdleMode;
@@ -2531,7 +2489,7 @@
     void updateUidProcStateInternal(int uid, int procState) {
         synchronized (mLock) {
             mUidState.put(uid, procState);
-            if (mDeviceIdleMode || mSustainedPerformanceUid.get(uid) != 0) {
+            if (mDeviceIdleMode) {
                 updateWakeLockDisabledStatesLocked();
             }
         }
@@ -2552,9 +2510,7 @@
         for (int i = 0; i < numWakeLocks; i++) {
             final WakeLock wakeLock = mWakeLocks.get(i);
             if ((wakeLock.mFlags & PowerManager.WAKE_LOCK_LEVEL_MASK)
-                    == PowerManager.PARTIAL_WAKE_LOCK
-                    || (wakeLock.mFlags & PowerManager.WAKE_LOCK_LEVEL_MASK)
-                    == PowerManager.SUSTAINED_PERFORMANCE_WAKE_LOCK) {
+                    == PowerManager.PARTIAL_WAKE_LOCK) {
                 if (setWakeLockDisabledStateLocked(wakeLock)) {
                     changed = true;
                     if (wakeLock.mDisabled) {
@@ -2573,9 +2529,9 @@
     }
 
     private boolean setWakeLockDisabledStateLocked(WakeLock wakeLock) {
-        boolean disabled = false;
         if ((wakeLock.mFlags & PowerManager.WAKE_LOCK_LEVEL_MASK)
                 == PowerManager.PARTIAL_WAKE_LOCK) {
+            boolean disabled = false;
             if (mDeviceIdleMode) {
                 final int appid = UserHandle.getAppId(wakeLock.mOwnerUid);
                 // If we are in idle mode, we will ignore all partial wake locks that are
@@ -2589,16 +2545,10 @@
                     disabled = true;
                 }
             }
-        } else if ((wakeLock.mFlags & PowerManager.WAKE_LOCK_LEVEL_MASK)
-                == PowerManager.SUSTAINED_PERFORMANCE_WAKE_LOCK
-                && mUidState.get(wakeLock.mOwnerUid,
-                                 ActivityManager.PROCESS_STATE_CACHED_EMPTY)
-                > ActivityManager.PROCESS_STATE_TOP) {
-            disabled = true;
-        }
-        if (wakeLock.mDisabled != disabled) {
-            wakeLock.mDisabled = disabled;
-            return true;
+            if (wakeLock.mDisabled != disabled) {
+                wakeLock.mDisabled = disabled;
+                return true;
+            }
         }
         return false;
     }
@@ -2806,7 +2756,6 @@
             pw.println("  mBatteryLevelLow=" + mBatteryLevelLow);
             pw.println("  mLightDeviceIdleMode=" + mLightDeviceIdleMode);
             pw.println("  mDeviceIdleMode=" + mDeviceIdleMode);
-            pw.println("  mSustainedPerformanceMode=" + mSustainedPerformanceMode);
             pw.println("  mDeviceIdleWhitelist=" + Arrays.toString(mDeviceIdleWhitelist));
             pw.println("  mDeviceIdleTempWhitelist=" + Arrays.toString(mDeviceIdleTempWhitelist));
             pw.println("  mLastWakeTime=" + TimeUtils.formatUptime(mLastWakeTime));
@@ -2921,14 +2870,6 @@
             pw.println();
             pw.println("Display Power: " + mDisplayPowerCallbacks);
 
-            pw.println();
-            pw.println("Sustained Performance UIDs:");
-            for (int i=0; i<mSustainedPerformanceUid.size(); i++) {
-                pw.print("  UID "); UserHandle.formatUid(pw, mSustainedPerformanceUid.keyAt(i));
-                pw.print(": "); pw.println(mSustainedPerformanceUid.valueAt(i));
-            }
-
-
             wcd = mWirelessChargerDetector;
         }
 
diff --git a/services/core/java/com/android/server/statusbar/StatusBarManagerInternal.java b/services/core/java/com/android/server/statusbar/StatusBarManagerInternal.java
index 9614417..52b2439 100644
--- a/services/core/java/com/android/server/statusbar/StatusBarManagerInternal.java
+++ b/services/core/java/com/android/server/statusbar/StatusBarManagerInternal.java
@@ -26,8 +26,53 @@
     void buzzBeepBlinked();
     void notificationLightPulse(int argb, int onMillis, int offMillis);
     void notificationLightOff();
-    void showScreenPinningRequest();
+    void showScreenPinningRequest(int taskId);
     void showAssistDisclosure();
+
+    void preloadRecentApps();
+
+    void cancelPreloadRecentApps();
+
+    void showRecentApps(boolean triggeredFromAltTab, boolean fromHome);
+
+    void hideRecentApps(boolean triggeredFromAltTab, boolean triggeredFromHomeKey);
+
+    void dismissKeyboardShortcutsMenu();
+    void toggleKeyboardShortcutsMenu(int deviceId);
+
+    /**
+     * Request picture-in-picture.
+     *
+     * <p>
+     * This is called when an user presses picture-in-picture key or equivalent.
+     * TV device may start picture-in-picture from foreground activity if there's none.
+     * Picture-in-picture overlay menu will be shown instead otherwise.
+     */
+    void requestTvPictureInPicture();
+
+    void setWindowState(int window, int state);
+
+    /**
+     * Notifies the status bar that an app transition is pending to delay applying some flags with
+     * visual impact until {@link #appTransitionReady} is called.
+     */
+    void appTransitionPending();
+
+    /**
+     * Notifies the status bar that a pending app transition has been cancelled.
+     */
+    void appTransitionCancelled();
+
+    /**
+     * Notifies the status bar that an app transition is now being executed.
+     *
+     * @param statusBarAnimationsStartTime the desired start time for all visual animations in the
+     *        status bar caused by this app transition in uptime millis
+     * @param statusBarAnimationsDuration the duration for all visual animations in the status
+     *        bar caused by this app transition in millis
+     */
+    void appTransitionStarting(long statusBarAnimationsStartTime, long statusBarAnimationsDuration);
+
     void startAssist(Bundle args);
     void onCameraLaunchGestureDetected(int source);
     void topAppWindowChanged(boolean menuVisible);
@@ -35,4 +80,8 @@
             Rect fullscreenBounds, Rect dockedBounds, String cause);
     void toggleSplitScreen();
     void appTransitionFinished();
+
+    void toggleRecentApps();
+
+    void setCurrentUser(int newUserId);
 }
diff --git a/services/core/java/com/android/server/statusbar/StatusBarManagerService.java b/services/core/java/com/android/server/statusbar/StatusBarManagerService.java
index dbbaa5e..c630d4a 100644
--- a/services/core/java/com/android/server/statusbar/StatusBarManagerService.java
+++ b/services/core/java/com/android/server/statusbar/StatusBarManagerService.java
@@ -68,7 +68,7 @@
     private int mDisabled1 = 0;
     private int mDisabled2 = 0;
 
-    private Object mLock = new Object();
+    private final Object mLock = new Object();
     // encompasses lights-out mode and other flags defined on View
     private int mSystemUiVisibility = 0;
     private int mFullscreenStackSysUiVisibility;
@@ -153,10 +153,10 @@
         }
 
         @Override
-        public void showScreenPinningRequest() {
+        public void showScreenPinningRequest(int taskId) {
             if (mBar != null) {
                 try {
-                    mBar.showScreenPinningRequest();
+                    mBar.showScreenPinningRequest(taskId);
                 } catch (RemoteException e) {
                 }
             }
@@ -223,6 +223,123 @@
                 } catch (RemoteException ex) {}
             }
         }
+
+        @Override
+        public void toggleRecentApps() {
+            if (mBar != null) {
+                try {
+                    mBar.toggleRecentApps();
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void setCurrentUser(int newUserId) {
+            if (SPEW) Slog.d(TAG, "Setting current user to user " + newUserId);
+            mCurrentUserId = newUserId;
+        }
+
+
+        @Override
+        public void preloadRecentApps() {
+            if (mBar != null) {
+                try {
+                    mBar.preloadRecentApps();
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void cancelPreloadRecentApps() {
+            if (mBar != null) {
+                try {
+                    mBar.cancelPreloadRecentApps();
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void showRecentApps(boolean triggeredFromAltTab, boolean fromHome) {
+            if (mBar != null) {
+                try {
+                    mBar.showRecentApps(triggeredFromAltTab, fromHome);
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void hideRecentApps(boolean triggeredFromAltTab, boolean triggeredFromHomeKey) {
+            if (mBar != null) {
+                try {
+                    mBar.hideRecentApps(triggeredFromAltTab, triggeredFromHomeKey);
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void dismissKeyboardShortcutsMenu() {
+            if (mBar != null) {
+                try {
+                    mBar.dismissKeyboardShortcutsMenu();
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void toggleKeyboardShortcutsMenu(int deviceId) {
+            if (mBar != null) {
+                try {
+                    mBar.toggleKeyboardShortcutsMenu(deviceId);
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void requestTvPictureInPicture() {
+            if (mBar != null) {
+                try {
+                    mBar.requestTvPictureInPicture();
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void setWindowState(int window, int state) {
+            if (mBar != null) {
+                try {
+                    mBar.setWindowState(window, state);
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void appTransitionPending() {
+            if (mBar != null) {
+                try {
+                    mBar.appTransitionPending();
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void appTransitionCancelled() {
+            if (mBar != null) {
+                try {
+                    mBar.appTransitionCancelled();
+                } catch (RemoteException ex) {}
+            }
+        }
+
+        @Override
+        public void appTransitionStarting(long statusBarAnimationsStartTime,
+                long statusBarAnimationsDuration) {
+            if (mBar != null) {
+                try {
+                    mBar.appTransitionStarting(
+                            statusBarAnimationsStartTime, statusBarAnimationsDuration);
+                } catch (RemoteException ex) {}
+            }
+        }
     };
 
     // ================================================================================
@@ -527,122 +644,6 @@
         }
     }
 
-    @Override
-    public void toggleRecentApps() {
-        if (mBar != null) {
-            try {
-                mBar.toggleRecentApps();
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void preloadRecentApps() {
-        if (mBar != null) {
-            try {
-                mBar.preloadRecentApps();
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void cancelPreloadRecentApps() {
-        if (mBar != null) {
-            try {
-                mBar.cancelPreloadRecentApps();
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void showRecentApps(boolean triggeredFromAltTab) {
-        if (mBar != null) {
-            try {
-                mBar.showRecentApps(triggeredFromAltTab);
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void hideRecentApps(boolean triggeredFromAltTab, boolean triggeredFromHomeKey) {
-        if (mBar != null) {
-            try {
-                mBar.hideRecentApps(triggeredFromAltTab, triggeredFromHomeKey);
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void toggleKeyboardShortcutsMenu(int deviceId) {
-        if (mBar != null) {
-            try {
-                mBar.toggleKeyboardShortcutsMenu(deviceId);
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void requestTvPictureInPicture() {
-        if (mBar != null) {
-            try {
-                mBar.requestTvPictureInPicture();
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void setCurrentUser(int newUserId) {
-        if (SPEW) Slog.d(TAG, "Setting current user to user " + newUserId);
-        mCurrentUserId = newUserId;
-    }
-
-    @Override
-    public void setWindowState(int window, int state) {
-        if (mBar != null) {
-            try {
-                mBar.setWindowState(window, state);
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void appTransitionPending() {
-        if (mBar != null) {
-            try {
-                mBar.appTransitionPending();
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void appTransitionCancelled() {
-        if (mBar != null) {
-            try {
-                mBar.appTransitionCancelled();
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void appTransitionStarting(long statusBarAnimationsStartTime,
-            long statusBarAnimationsDuration) {
-        if (mBar != null) {
-            try {
-                mBar.appTransitionStarting(
-                        statusBarAnimationsStartTime, statusBarAnimationsDuration);
-            } catch (RemoteException ex) {}
-        }
-    }
-
-    @Override
-    public void startAssist(Bundle args) {
-        if (mBar != null) {
-            try {
-                mBar.startAssist(args);
-            } catch (RemoteException ex) {}
-        }
-    }
-
     private void enforceStatusBarOrShell() {
         if (Binder.getCallingUid() == Process.SHELL_UID) {
             return;
@@ -926,6 +927,7 @@
                                 + " pkg=" + tok.pkg
                                 + " token=" + tok.token);
             }
+            pw.println("  mCurrentUserId=" + mCurrentUserId);
         }
     }
 }
diff --git a/services/core/java/com/android/server/trust/TrustManagerService.java b/services/core/java/com/android/server/trust/TrustManagerService.java
index 3c84fc2..728e244 100644
--- a/services/core/java/com/android/server/trust/TrustManagerService.java
+++ b/services/core/java/com/android/server/trust/TrustManagerService.java
@@ -26,6 +26,7 @@
 
 import android.Manifest;
 import android.app.ActivityManager;
+import android.app.ActivityManagerNative;
 import android.app.admin.DevicePolicyManager;
 import android.app.trust.ITrustListener;
 import android.app.trust.ITrustManager;
@@ -318,6 +319,12 @@
             synchronized (mDeviceLockedForUser) {
                 mDeviceLockedForUser.put(userId, locked);
             }
+            if (locked) {
+                try {
+                    ActivityManagerNative.getDefault().notifyLockedProfile(userId);
+                } catch (RemoteException e) {
+                }
+            }
         }
     }
 
diff --git a/services/core/java/com/android/server/tv/TvInputManagerService.java b/services/core/java/com/android/server/tv/TvInputManagerService.java
index 00bd4de..b389cf5 100644
--- a/services/core/java/com/android/server/tv/TvInputManagerService.java
+++ b/services/core/java/com/android/server/tv/TvInputManagerService.java
@@ -161,8 +161,10 @@
         PackageMonitor monitor = new PackageMonitor() {
             private void buildTvInputList(String[] packages) {
                 synchronized (mLock) {
-                    buildTvInputListLocked(getChangingUserId(), packages);
-                    buildTvContentRatingSystemListLocked(getChangingUserId());
+                    if (mCurrentUserId == getChangingUserId()) {
+                        buildTvInputListLocked(mCurrentUserId, packages);
+                        buildTvContentRatingSystemListLocked(mCurrentUserId);
+                    }
                 }
             }
 
diff --git a/services/core/java/com/android/server/tv/TvRemoteProviderProxy.java b/services/core/java/com/android/server/tv/TvRemoteProviderProxy.java
new file mode 100644
index 0000000..557e9c8
--- /dev/null
+++ b/services/core/java/com/android/server/tv/TvRemoteProviderProxy.java
@@ -0,0 +1,647 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.tv;
+
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.ServiceConnection;
+import android.media.tv.ITvRemoteProvider;
+import android.media.tv.ITvRemoteServiceInput;
+import android.os.Binder;
+import android.os.Handler;
+import android.os.IBinder;
+import android.os.RemoteException;
+import android.os.UserHandle;
+import android.util.Log;
+import android.util.Slog;
+
+import java.io.PrintWriter;
+import java.lang.ref.WeakReference;
+
+/**
+ * Maintains a connection to a tv remote provider service.
+ */
+final class TvRemoteProviderProxy implements ServiceConnection {
+    private static final String TAG = "TvRemoteProvProxy";  // max. 23 chars
+    private static final boolean DEBUG = Log.isLoggable(TAG, Log.VERBOSE);
+    private static final boolean DEBUG_KEY = false;
+
+
+    // This should match TvRemoteProvider.ACTION_TV_REMOTE_PROVIDER
+    protected static final String SERVICE_INTERFACE =
+            "com.android.media.tv.remoteprovider.TvRemoteProvider";
+    private final Context mContext;
+    private final ComponentName mComponentName;
+    private final int mUserId;
+    private final int mUid;
+    private final Handler mHandler;
+
+    /**
+     * State guarded by mLock.
+     *  This is the first lock in sequence for an incoming call.
+     *  The second lock is always {@link TvRemoteService#mLock}
+     *
+     *  There are currently no methods that break this sequence.
+     */
+    private final Object mLock = new Object();
+
+    private ProviderMethods mProviderMethods;
+    // Connection state
+    private boolean mRunning;
+    private boolean mBound;
+    private Connection mActiveConnection;
+    private boolean mConnectionReady;
+
+    public TvRemoteProviderProxy(Context context, ComponentName componentName, int userId,
+                                 int uid) {
+        mContext = context;
+        mComponentName = componentName;
+        mUserId = userId;
+        mUid = uid;
+        mHandler = new Handler();
+    }
+
+    public void dump(PrintWriter pw, String prefix) {
+        pw.println(prefix + "Proxy");
+        pw.println(prefix + "  mUserId=" + mUserId);
+        pw.println(prefix + "  mRunning=" + mRunning);
+        pw.println(prefix + "  mBound=" + mBound);
+        pw.println(prefix + "  mActiveConnection=" + mActiveConnection);
+        pw.println(prefix + "  mConnectionReady=" + mConnectionReady);
+    }
+
+    public void setProviderSink(ProviderMethods provider) {
+        mProviderMethods = provider;
+    }
+
+    public boolean hasComponentName(String packageName, String className) {
+        return mComponentName.getPackageName().equals(packageName)
+                && mComponentName.getClassName().equals(className);
+    }
+
+    public void start() {
+        if (!mRunning) {
+            if (DEBUG) {
+                Slog.d(TAG, this + ": Starting");
+            }
+
+            mRunning = true;
+            updateBinding();
+        }
+    }
+
+    public void stop() {
+        if (mRunning) {
+            if (DEBUG) {
+                Slog.d(TAG, this + ": Stopping");
+            }
+
+            mRunning = false;
+            updateBinding();
+        }
+    }
+
+    public void rebindIfDisconnected() {
+        synchronized (mLock) {
+            if (mActiveConnection == null && shouldBind()) {
+                unbind();
+                bind();
+            }
+        }
+    }
+
+    private void updateBinding() {
+        if (shouldBind()) {
+            bind();
+        } else {
+            unbind();
+        }
+    }
+
+    private boolean shouldBind() {
+        return mRunning;
+    }
+
+    private void bind() {
+        if (!mBound) {
+            if (DEBUG) {
+                Slog.d(TAG, this + ": Binding");
+            }
+
+            Intent service = new Intent(SERVICE_INTERFACE);
+            service.setComponent(mComponentName);
+            try {
+                mBound = mContext.bindServiceAsUser(service, this,
+                        Context.BIND_AUTO_CREATE | Context.BIND_FOREGROUND_SERVICE,
+                        new UserHandle(mUserId));
+                if (!mBound && DEBUG) {
+                    Slog.d(TAG, this + ": Bind failed");
+                }
+            } catch (SecurityException ex) {
+                if (DEBUG) {
+                    Slog.d(TAG, this + ": Bind failed", ex);
+                }
+            }
+        }
+    }
+
+    private void unbind() {
+        if (mBound) {
+            if (DEBUG) {
+                Slog.d(TAG, this + ": Unbinding");
+            }
+
+            mBound = false;
+            disconnect();
+            mContext.unbindService(this);
+        }
+    }
+
+    @Override
+    public void onServiceConnected(ComponentName name, IBinder service) {
+        if (DEBUG) {
+            Slog.d(TAG, this + ": onServiceConnected()");
+        }
+
+        if (mBound) {
+            disconnect();
+
+            ITvRemoteProvider provider = ITvRemoteProvider.Stub.asInterface(service);
+            if (provider != null) {
+                Connection connection = new Connection(provider);
+                if (connection.register()) {
+                    synchronized (mLock) {
+                        mActiveConnection = connection;
+                    }
+                    if (DEBUG) {
+                        Slog.d(TAG, this + ": Connected successfully.");
+                    }
+                } else {
+                    if (DEBUG) {
+                        Slog.d(TAG, this + ": Registration failed");
+                    }
+                }
+            } else {
+                Slog.e(TAG, this + ": Service returned invalid remote-control provider binder");
+            }
+        }
+    }
+
+    @Override
+    public void onServiceDisconnected(ComponentName name) {
+        if (DEBUG) Slog.d(TAG, this + ": Service disconnected");
+        disconnect();
+    }
+
+
+    private void onConnectionReady(Connection connection) {
+        synchronized (mLock) {
+            if (DEBUG) Slog.d(TAG, "onConnectionReady");
+            if (mActiveConnection == connection) {
+                if (DEBUG) Slog.d(TAG, "mConnectionReady = true");
+                mConnectionReady = true;
+            }
+        }
+    }
+
+    private void onConnectionDied(Connection connection) {
+        if (mActiveConnection == connection) {
+            if (DEBUG) Slog.d(TAG, this + ": Service connection died");
+            disconnect();
+        }
+    }
+
+    private void disconnect() {
+        synchronized (mLock) {
+            if (mActiveConnection != null) {
+                mConnectionReady = false;
+                mActiveConnection.dispose();
+                mActiveConnection = null;
+            }
+        }
+    }
+
+    // Provider helpers
+    public void inputBridgeConnected(IBinder token) {
+        synchronized (mLock) {
+            if (DEBUG) Slog.d(TAG, this + ": inputBridgeConnected token: " + token);
+            if (mConnectionReady) {
+                mActiveConnection.onInputBridgeConnected(token);
+            }
+        }
+    }
+
+    public interface ProviderMethods {
+        // InputBridge
+        void openInputBridge(TvRemoteProviderProxy provider, IBinder token, String name,
+                             int width, int height, int maxPointers);
+
+        void closeInputBridge(TvRemoteProviderProxy provider, IBinder token);
+
+        void clearInputBridge(TvRemoteProviderProxy provider, IBinder token);
+
+        void sendTimeStamp(TvRemoteProviderProxy provider, IBinder token, long timestamp);
+
+        void sendKeyDown(TvRemoteProviderProxy provider, IBinder token, int keyCode);
+
+        void sendKeyUp(TvRemoteProviderProxy provider, IBinder token, int keyCode);
+
+        void sendPointerDown(TvRemoteProviderProxy provider, IBinder token, int pointerId, int x,
+                             int y);
+
+        void sendPointerUp(TvRemoteProviderProxy provider, IBinder token, int pointerId);
+
+        void sendPointerSync(TvRemoteProviderProxy provider, IBinder token);
+    }
+
+    private final class Connection implements IBinder.DeathRecipient {
+        private final ITvRemoteProvider mTvRemoteProvider;
+        private final RemoteServiceInputProvider mServiceInputProvider;
+
+        public Connection(ITvRemoteProvider provider) {
+            mTvRemoteProvider = provider;
+            mServiceInputProvider = new RemoteServiceInputProvider(this);
+        }
+
+        public boolean register() {
+            if (DEBUG) Slog.d(TAG, "Connection::register()");
+            try {
+                mTvRemoteProvider.asBinder().linkToDeath(this, 0);
+                mTvRemoteProvider.setRemoteServiceInputSink(mServiceInputProvider);
+                mHandler.post(new Runnable() {
+                    @Override
+                    public void run() {
+                        onConnectionReady(Connection.this);
+                    }
+                });
+                return true;
+            } catch (RemoteException ex) {
+                binderDied();
+            }
+            return false;
+        }
+
+        public void dispose() {
+            if (DEBUG) Slog.d(TAG, "Connection::dispose()");
+            mTvRemoteProvider.asBinder().unlinkToDeath(this, 0);
+            mServiceInputProvider.dispose();
+        }
+
+
+        public void onInputBridgeConnected(IBinder token) {
+            if (DEBUG) Slog.d(TAG, this + ": onInputBridgeConnected");
+            try {
+                mTvRemoteProvider.onInputBridgeConnected(token);
+            } catch (RemoteException ex) {
+                Slog.e(TAG, "Failed to deliver onInputBridgeConnected. ", ex);
+            }
+        }
+
+        @Override
+        public void binderDied() {
+            mHandler.post(new Runnable() {
+                @Override
+                public void run() {
+                    onConnectionDied(Connection.this);
+                }
+            });
+        }
+
+        void openInputBridge(final IBinder token, final String name, final int width,
+                             final int height, final int maxPointers) {
+            synchronized (mLock) {
+                if (mActiveConnection == this && Binder.getCallingUid() == mUid) {
+                    if (DEBUG) {
+                        Slog.d(TAG, this + ": openInputBridge," +
+                                " token=" + token + ", name=" + name);
+                    }
+                    final long idToken = Binder.clearCallingIdentity();
+                    try {
+                        if (mProviderMethods != null) {
+                            mProviderMethods.openInputBridge(TvRemoteProviderProxy.this, token,
+                                    name, width, height, maxPointers);
+                        }
+                    } finally {
+                        Binder.restoreCallingIdentity(idToken);
+                    }
+                } else {
+                    if (DEBUG) {
+                        Slog.w(TAG,
+                                "openInputBridge, Invalid connection or incorrect uid: " + Binder
+                                        .getCallingUid());
+                    }
+                }
+            }
+        }
+
+        void closeInputBridge(final IBinder token) {
+            synchronized (mLock) {
+                if (mActiveConnection == this && Binder.getCallingUid() == mUid) {
+                    if (DEBUG) {
+                        Slog.d(TAG, this + ": closeInputBridge," +
+                                " token=" + token);
+                    }
+                    final long idToken = Binder.clearCallingIdentity();
+                    try {
+                        if (mProviderMethods != null) {
+                            mProviderMethods.closeInputBridge(TvRemoteProviderProxy.this, token);
+                        }
+                    } finally {
+                        Binder.restoreCallingIdentity(idToken);
+                    }
+                } else {
+                    if (DEBUG) {
+                        Slog.w(TAG,
+                                "closeInputBridge, Invalid connection or incorrect uid: " +
+                                        Binder.getCallingUid());
+                    }
+                }
+            }
+        }
+
+        void clearInputBridge(final IBinder token) {
+            synchronized (mLock) {
+                if (mActiveConnection == this && Binder.getCallingUid() == mUid) {
+                    if (DEBUG) {
+                        Slog.d(TAG, this + ": clearInputBridge," +
+                                " token=" + token);
+                    }
+                    final long idToken = Binder.clearCallingIdentity();
+                    try {
+                        if (mProviderMethods != null) {
+                            mProviderMethods.clearInputBridge(TvRemoteProviderProxy.this, token);
+                        }
+                    } finally {
+                        Binder.restoreCallingIdentity(idToken);
+                    }
+                } else {
+                    if (DEBUG) {
+                        Slog.w(TAG,
+                                "clearInputBridge, Invalid connection or incorrect uid: " +
+                                        Binder.getCallingUid());
+                    }
+                }
+            }
+        }
+
+        void sendTimestamp(final IBinder token, final long timestamp) {
+            synchronized (mLock) {
+                if (mActiveConnection == this && Binder.getCallingUid() == mUid) {
+                    final long idToken = Binder.clearCallingIdentity();
+                    try {
+                        if (mProviderMethods != null) {
+                            mProviderMethods.sendTimeStamp(TvRemoteProviderProxy.this, token,
+                                    timestamp);
+                        }
+                    } finally {
+                        Binder.restoreCallingIdentity(idToken);
+                    }
+                } else {
+                    if (DEBUG) {
+                        Slog.w(TAG,
+                                "sendTimeStamp, Invalid connection or incorrect uid: " + Binder
+                                        .getCallingUid());
+                    }
+                }
+            }
+        }
+
+        void sendKeyDown(final IBinder token, final int keyCode) {
+            synchronized (mLock) {
+                if (mActiveConnection == this && Binder.getCallingUid() == mUid) {
+                    if (DEBUG_KEY) {
+                        Slog.d(TAG, this + ": sendKeyDown," +
+                                " token=" + token + ", keyCode=" + keyCode);
+                    }
+                    final long idToken = Binder.clearCallingIdentity();
+                    try {
+                        if (mProviderMethods != null) {
+                            mProviderMethods.sendKeyDown(TvRemoteProviderProxy.this, token,
+                                    keyCode);
+                        }
+                    } finally {
+                        Binder.restoreCallingIdentity(idToken);
+                    }
+                } else {
+                    if (DEBUG) {
+                        Slog.w(TAG,
+                                "sendKeyDown, Invalid connection or incorrect uid: " + Binder
+                                        .getCallingUid());
+                    }
+                }
+            }
+        }
+
+        void sendKeyUp(final IBinder token, final int keyCode) {
+            synchronized (mLock) {
+                if (mActiveConnection == this && Binder.getCallingUid() == mUid) {
+                    if (DEBUG_KEY) {
+                        Slog.d(TAG, this + ": sendKeyUp," +
+                                " token=" + token + ", keyCode=" + keyCode);
+                    }
+                    final long idToken = Binder.clearCallingIdentity();
+                    try {
+                        if (mProviderMethods != null) {
+                            mProviderMethods.sendKeyUp(TvRemoteProviderProxy.this, token, keyCode);
+                        }
+                    } finally {
+                        Binder.restoreCallingIdentity(idToken);
+                    }
+                } else {
+                    if (DEBUG) {
+                        Slog.w(TAG,
+                                "sendKeyUp, Invalid connection or incorrect uid: " + Binder
+                                        .getCallingUid());
+                    }
+                }
+            }
+        }
+
+        void sendPointerDown(final IBinder token, final int pointerId, final int x, final int y) {
+            synchronized (mLock) {
+                if (mActiveConnection == this && Binder.getCallingUid() == mUid) {
+                    if (DEBUG_KEY) {
+                        Slog.d(TAG, this + ": sendPointerDown," +
+                                " token=" + token + ", pointerId=" + pointerId);
+                    }
+                    final long idToken = Binder.clearCallingIdentity();
+                    try {
+                        if (mProviderMethods != null) {
+                            mProviderMethods.sendPointerDown(TvRemoteProviderProxy.this, token,
+                                    pointerId, x, y);
+                        }
+                    } finally {
+                        Binder.restoreCallingIdentity(idToken);
+                    }
+                } else {
+                    if (DEBUG) {
+                        Slog.w(TAG,
+                                "sendPointerDown, Invalid connection or incorrect uid: " + Binder
+                                        .getCallingUid());
+                    }
+                }
+            }
+        }
+
+        void sendPointerUp(final IBinder token, final int pointerId) {
+            synchronized (mLock) {
+                if (mActiveConnection == this && Binder.getCallingUid() == mUid) {
+                    if (DEBUG_KEY) {
+                        Slog.d(TAG, this + ": sendPointerUp," +
+                                " token=" + token + ", pointerId=" + pointerId);
+                    }
+                    final long idToken = Binder.clearCallingIdentity();
+                    try {
+                        if (mProviderMethods != null) {
+                            mProviderMethods.sendPointerUp(TvRemoteProviderProxy.this, token,
+                                    pointerId);
+                        }
+                    } finally {
+                        Binder.restoreCallingIdentity(idToken);
+                    }
+                } else {
+                    if (DEBUG) {
+                        Slog.w(TAG,
+                                "sendPointerUp, Invalid connection or incorrect uid: " + Binder
+                                        .getCallingUid());
+                    }
+                }
+            }
+        }
+
+        void sendPointerSync(final IBinder token) {
+            synchronized (mLock) {
+                if (mActiveConnection == this && Binder.getCallingUid() == mUid) {
+                    if (DEBUG_KEY) {
+                        Slog.d(TAG, this + ": sendPointerSync," +
+                                " token=" + token);
+                    }
+                    final long idToken = Binder.clearCallingIdentity();
+                    try {
+                        if (mProviderMethods != null) {
+                            mProviderMethods.sendPointerSync(TvRemoteProviderProxy.this, token);
+                        }
+                    } finally {
+                        Binder.restoreCallingIdentity(idToken);
+                    }
+                } else {
+                    if (DEBUG) {
+                        Slog.w(TAG,
+                                "sendPointerSync, Invalid connection or incorrect uid: " + Binder
+                                        .getCallingUid());
+                    }
+                }
+            }
+        }
+    }
+
+    /**
+     * Receives events from the connected provider.
+     * <p>
+     * This inner class is static and only retains a weak reference to the connection
+     * to prevent the client from being leaked in case the service is holding an
+     * active reference to the client's callback.
+     * </p>
+     */
+    private static final class RemoteServiceInputProvider extends ITvRemoteServiceInput.Stub {
+        private final WeakReference<Connection> mConnectionRef;
+
+        public RemoteServiceInputProvider(Connection connection) {
+            mConnectionRef = new WeakReference<Connection>(connection);
+        }
+
+        public void dispose() {
+            // Terminate the connection.
+            mConnectionRef.clear();
+        }
+
+        @Override
+        public void openInputBridge(IBinder token, String name, int width,
+                                    int height, int maxPointers) throws RemoteException {
+            Connection connection = mConnectionRef.get();
+            if (connection != null) {
+                connection.openInputBridge(token, name, width, height, maxPointers);
+            }
+        }
+
+        @Override
+        public void closeInputBridge(IBinder token) throws RemoteException {
+            Connection connection = mConnectionRef.get();
+            if (connection != null) {
+                connection.closeInputBridge(token);
+            }
+        }
+
+        @Override
+        public void clearInputBridge(IBinder token) throws RemoteException {
+            Connection connection = mConnectionRef.get();
+            if (connection != null) {
+                connection.clearInputBridge(token);
+            }
+        }
+
+        @Override
+        public void sendTimestamp(IBinder token, long timestamp) throws RemoteException {
+            Connection connection = mConnectionRef.get();
+            if (connection != null) {
+                connection.sendTimestamp(token, timestamp);
+            }
+        }
+
+        @Override
+        public void sendKeyDown(IBinder token, int keyCode) throws RemoteException {
+            Connection connection = mConnectionRef.get();
+            if (connection != null) {
+                connection.sendKeyDown(token, keyCode);
+            }
+        }
+
+        @Override
+        public void sendKeyUp(IBinder token, int keyCode) throws RemoteException {
+            Connection connection = mConnectionRef.get();
+            if (connection != null) {
+                connection.sendKeyUp(token, keyCode);
+            }
+        }
+
+        @Override
+        public void sendPointerDown(IBinder token, int pointerId, int x, int y)
+                throws RemoteException {
+            Connection connection = mConnectionRef.get();
+            if (connection != null) {
+                connection.sendPointerDown(token, pointerId, x, y);
+            }
+        }
+
+        @Override
+        public void sendPointerUp(IBinder token, int pointerId) throws RemoteException {
+            Connection connection = mConnectionRef.get();
+            if (connection != null) {
+                connection.sendPointerUp(token, pointerId);
+            }
+        }
+
+        @Override
+        public void sendPointerSync(IBinder token) throws RemoteException {
+            Connection connection = mConnectionRef.get();
+            if (connection != null) {
+                connection.sendPointerSync(token);
+            }
+        }
+    }
+}
diff --git a/services/core/java/com/android/server/tv/TvRemoteProviderWatcher.java b/services/core/java/com/android/server/tv/TvRemoteProviderWatcher.java
new file mode 100644
index 0000000..d27970f
--- /dev/null
+++ b/services/core/java/com/android/server/tv/TvRemoteProviderWatcher.java
@@ -0,0 +1,221 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.tv;
+
+import android.Manifest;
+import android.content.BroadcastReceiver;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.content.pm.PackageManager;
+import android.content.pm.ResolveInfo;
+import android.content.pm.ServiceInfo;
+import android.os.Handler;
+import android.os.UserHandle;
+import android.util.Log;
+import android.util.Slog;
+
+import java.util.ArrayList;
+import java.util.Collections;
+
+/**
+ * Watches for emote provider services to be installed.
+ * Adds a provider for each registered service.
+ *
+ * @see TvRemoteProviderProxy
+ */
+final class TvRemoteProviderWatcher {
+
+    private static final String TAG = "TvRemoteProvWatcher";  // max. 23 chars
+    private static final boolean DEBUG = Log.isLoggable(TAG, Log.VERBOSE);
+
+    private final Context mContext;
+    private final ProviderMethods mProvider;
+    private final Handler mHandler;
+    private final PackageManager mPackageManager;
+    private final ArrayList<TvRemoteProviderProxy> mProviderProxies = new ArrayList<>();
+    private final int mUserId;
+    private final String mUnbundledServicePackage;
+
+    private boolean mRunning;
+
+    public TvRemoteProviderWatcher(Context context, ProviderMethods provider, Handler handler) {
+        mContext = context;
+        mProvider = provider;
+        mHandler = handler;
+        mUserId = UserHandle.myUserId();
+        mPackageManager = context.getPackageManager();
+        mUnbundledServicePackage = context.getString(
+                com.android.internal.R.string.config_tvRemoteServicePackage);
+    }
+
+    public void start() {
+        if (DEBUG) Slog.d(TAG, "start()");
+        if (!mRunning) {
+            mRunning = true;
+
+            IntentFilter filter = new IntentFilter();
+            filter.addAction(Intent.ACTION_PACKAGE_ADDED);
+            filter.addAction(Intent.ACTION_PACKAGE_REMOVED);
+            filter.addAction(Intent.ACTION_PACKAGE_CHANGED);
+            filter.addAction(Intent.ACTION_PACKAGE_REPLACED);
+            filter.addAction(Intent.ACTION_PACKAGE_RESTARTED);
+            filter.addDataScheme("package");
+            mContext.registerReceiverAsUser(mScanPackagesReceiver,
+                    new UserHandle(mUserId), filter, null, mHandler);
+
+            // Scan packages.
+            // Also has the side-effect of restarting providers if needed.
+            mHandler.post(mScanPackagesRunnable);
+        }
+    }
+
+    public void stop() {
+        if (mRunning) {
+            mRunning = false;
+
+            mContext.unregisterReceiver(mScanPackagesReceiver);
+            mHandler.removeCallbacks(mScanPackagesRunnable);
+
+            // Stop all providers.
+            for (int i = mProviderProxies.size() - 1; i >= 0; i--) {
+                mProviderProxies.get(i).stop();
+            }
+        }
+    }
+
+    private void scanPackages() {
+        if (!mRunning) {
+            return;
+        }
+
+        if (DEBUG) Log.d(TAG, "scanPackages()");
+        // Add providers for all new services.
+        // Reorder the list so that providers left at the end will be the ones to remove.
+        int targetIndex = 0;
+        Intent intent = new Intent(TvRemoteProviderProxy.SERVICE_INTERFACE);
+        for (ResolveInfo resolveInfo : mPackageManager.queryIntentServicesAsUser(
+                intent, 0, mUserId)) {
+            ServiceInfo serviceInfo = resolveInfo.serviceInfo;
+            if (serviceInfo != null && verifyServiceTrusted(serviceInfo)) {
+                int sourceIndex = findProvider(serviceInfo.packageName, serviceInfo.name);
+                if (sourceIndex < 0) {
+                    TvRemoteProviderProxy providerProxy =
+                            new TvRemoteProviderProxy(mContext,
+                                    new ComponentName(serviceInfo.packageName, serviceInfo.name),
+                                    mUserId, serviceInfo.applicationInfo.uid);
+                    providerProxy.start();
+                    mProviderProxies.add(targetIndex++, providerProxy);
+                    mProvider.addProvider(providerProxy);
+                } else if (sourceIndex >= targetIndex) {
+                    TvRemoteProviderProxy provider = mProviderProxies.get(sourceIndex);
+                    provider.start(); // restart the provider if needed
+                    provider.rebindIfDisconnected();
+                    Collections.swap(mProviderProxies, sourceIndex, targetIndex++);
+                }
+            }
+        }
+        if (DEBUG) Log.d(TAG, "scanPackages() targetIndex " + targetIndex);
+        // Remove providers for missing services.
+        if (targetIndex < mProviderProxies.size()) {
+            for (int i = mProviderProxies.size() - 1; i >= targetIndex; i--) {
+                TvRemoteProviderProxy providerProxy = mProviderProxies.get(i);
+                mProvider.removeProvider(providerProxy);
+                mProviderProxies.remove(providerProxy);
+                providerProxy.stop();
+            }
+        }
+    }
+
+    private boolean verifyServiceTrusted(ServiceInfo serviceInfo) {
+        if (serviceInfo.permission == null || !serviceInfo.permission.equals(
+                Manifest.permission.BIND_TV_REMOTE_SERVICE)) {
+            // If the service does not require this permission then any app could
+            // potentially bind to it and cause the atv remote provider service to
+            // misbehave.  So we only want to trust providers that require the
+            // correct permissions.
+            Slog.w(TAG, "Ignoring atv remote provider service because it did not "
+                    + "require the BIND_TV_REMOTE_SERVICE permission in its manifest: "
+                    + serviceInfo.packageName + "/" + serviceInfo.name);
+            return false;
+        }
+
+        // Check if package name is white-listed here.
+        if (!serviceInfo.packageName.equals(mUnbundledServicePackage)) {
+            Slog.w(TAG, "Ignoring atv remote provider service because the package has not "
+                    + "been set and/or whitelisted: "
+                    + serviceInfo.packageName + "/" + serviceInfo.name);
+            return false;
+        }
+
+        if (!hasNecessaryPermissions(serviceInfo.packageName)) {
+            // If the service does not have permission to be
+            // a virtual tv remote controller, do not trust it.
+            Slog.w(TAG, "Ignoring atv remote provider service because its package does not "
+                    + "have TV_VIRTUAL_REMOTE_CONTROLLER permission: " + serviceInfo.packageName);
+            return false;
+        }
+
+        // Looks good.
+        return true;
+    }
+
+    // Returns true only if these permissions are present in calling package.
+    // Manifest.permission.TV_VIRTUAL_REMOTE_CONTROLLER : virtual remote controller on TV
+    private boolean hasNecessaryPermissions(String packageName) {
+        if ((mPackageManager.checkPermission(Manifest.permission.TV_VIRTUAL_REMOTE_CONTROLLER,
+                        packageName) == PackageManager.PERMISSION_GRANTED)) {
+            return true;
+        }
+        return false;
+    }
+
+    private int findProvider(String packageName, String className) {
+        int count = mProviderProxies.size();
+        for (int i = 0; i < count; i++) {
+            TvRemoteProviderProxy provider = mProviderProxies.get(i);
+            if (provider.hasComponentName(packageName, className)) {
+                return i;
+            }
+        }
+        return -1;
+    }
+
+    private final BroadcastReceiver mScanPackagesReceiver = new BroadcastReceiver() {
+        @Override
+        public void onReceive(Context context, Intent intent) {
+            if (DEBUG) {
+                Slog.d(TAG, "Received package manager broadcast: " + intent);
+            }
+            mHandler.post(mScanPackagesRunnable);
+        }
+    };
+
+    private final Runnable mScanPackagesRunnable = new Runnable() {
+        @Override
+        public void run() {
+            scanPackages();
+        }
+    };
+
+    public interface ProviderMethods {
+        void addProvider(TvRemoteProviderProxy providerProxy);
+
+        void removeProvider(TvRemoteProviderProxy providerProxy);
+    }
+}
diff --git a/services/core/java/com/android/server/tv/TvRemoteService.java b/services/core/java/com/android/server/tv/TvRemoteService.java
new file mode 100644
index 0000000..961c992
--- /dev/null
+++ b/services/core/java/com/android/server/tv/TvRemoteService.java
@@ -0,0 +1,388 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.tv;
+
+import android.content.Context;
+import android.os.Handler;
+import android.os.IBinder;
+import android.os.Looper;
+import android.os.Message;
+import android.util.ArrayMap;
+import android.util.Slog;
+
+import com.android.server.SystemService;
+import com.android.server.Watchdog;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Map;
+
+/**
+ * TvRemoteService represents a system service that allows a connected
+ * remote control (emote) service to inject white-listed input events
+ * and call other specified methods for functioning as an emote service.
+ * <p/>
+ * This service is intended for use only by white-listed packages.
+ */
+public class TvRemoteService extends SystemService implements Watchdog.Monitor {
+    private static final String TAG = "TvRemoteService";
+    private static final boolean DEBUG = false;
+    private static final boolean DEBUG_KEYS = false;
+
+    private Map<IBinder, UinputBridge> mBridgeMap = new ArrayMap();
+    private Map<IBinder, TvRemoteProviderProxy> mProviderMap = new ArrayMap();
+    private ArrayList<TvRemoteProviderProxy> mProviderList = new ArrayList<>();
+
+    /**
+     * State guarded by mLock.
+     *  This is the second lock in sequence for an incoming call.
+     *  The first lock is always {@link TvRemoteProviderProxy#mLock}
+     *
+     *  There are currently no methods that break this sequence.
+     *  Special note:
+     *  Outgoing call informInputBridgeConnected(), which is called from
+     *  openInputBridgeInternalLocked() uses a handler thereby relinquishing held locks.
+     */
+    private final Object mLock = new Object();
+
+    public final UserHandler mHandler;
+
+    public TvRemoteService(Context context) {
+        super(context);
+        mHandler = new UserHandler(new UserProvider(TvRemoteService.this), context);
+        Watchdog.getInstance().addMonitor(this);
+    }
+
+    @Override
+    public void onStart() {
+        if (DEBUG) Slog.d(TAG, "onStart()");
+    }
+
+    @Override
+    public void monitor() {
+        synchronized (mLock) { /* check for deadlock */ }
+    }
+
+    @Override
+    public void onBootPhase(int phase) {
+        if (phase == SystemService.PHASE_THIRD_PARTY_APPS_CAN_START) {
+            if (DEBUG) Slog.d(TAG, "PHASE_THIRD_PARTY_APPS_CAN_START");
+            mHandler.sendEmptyMessage(UserHandler.MSG_START);
+        }
+    }
+
+    //Outgoing calls.
+    private void informInputBridgeConnected(IBinder token) {
+        mHandler.obtainMessage(UserHandler.MSG_INPUT_BRIDGE_CONNECTED, 0, 0, token).sendToTarget();
+    }
+
+    // Incoming calls.
+    private void openInputBridgeInternalLocked(TvRemoteProviderProxy provider, IBinder token,
+                                               String name, int width, int height,
+                                               int maxPointers) {
+        if (DEBUG) {
+            Slog.d(TAG, "openInputBridgeInternalLocked(), token: " + token + ", name: " + name +
+                    ", width: " + width + ", height: " + height + ", maxPointers: " + maxPointers);
+        }
+
+        try {
+            //Create a new bridge, if one does not exist already
+            if (mBridgeMap.containsKey(token)) {
+                if (DEBUG) Slog.d(TAG, "RemoteBridge already exists");
+                // Respond back with success.
+                informInputBridgeConnected(token);
+                return;
+            }
+
+            UinputBridge inputBridge = new UinputBridge(token, name, width, height, maxPointers);
+
+            mBridgeMap.put(token, inputBridge);
+            mProviderMap.put(token, provider);
+
+            // Respond back with success.
+            informInputBridgeConnected(token);
+
+        } catch (IOException ioe) {
+            Slog.e(TAG, "Cannot create device for " + name);
+        }
+    }
+
+    private void closeInputBridgeInternalLocked(IBinder token) {
+        if (DEBUG) {
+            Slog.d(TAG, "closeInputBridgeInternalLocked(), token: " + token);
+        }
+
+        // Close an existing RemoteBridge
+        UinputBridge inputBridge = mBridgeMap.get(token);
+        if (inputBridge != null) {
+            inputBridge.close(token);
+        }
+
+        mBridgeMap.remove(token);
+    }
+
+
+    private void clearInputBridgeInternalLocked(IBinder token) {
+        if (DEBUG) {
+            Slog.d(TAG, "clearInputBridgeInternalLocked(), token: " + token);
+        }
+
+        UinputBridge inputBridge = mBridgeMap.get(token);
+        if (inputBridge != null) {
+            inputBridge.clear(token);
+        }
+    }
+
+    private void sendTimeStampInternalLocked(IBinder token, long timestamp) {
+        UinputBridge inputBridge = mBridgeMap.get(token);
+        if (inputBridge != null) {
+            inputBridge.sendTimestamp(token, timestamp);
+        }
+    }
+
+    private void sendKeyDownInternalLocked(IBinder token, int keyCode) {
+        if (DEBUG_KEYS) {
+            Slog.d(TAG, "sendKeyDownInternalLocked(), token: " + token + ", keyCode: " + keyCode);
+        }
+
+        UinputBridge inputBridge = mBridgeMap.get(token);
+        if (inputBridge != null) {
+            inputBridge.sendKeyDown(token, keyCode);
+        }
+    }
+
+    private void sendKeyUpInternalLocked(IBinder token, int keyCode) {
+        if (DEBUG_KEYS) {
+            Slog.d(TAG, "sendKeyUpInternalLocked(), token: " + token + ", keyCode: " + keyCode);
+        }
+
+        UinputBridge inputBridge = mBridgeMap.get(token);
+        if (inputBridge != null) {
+            inputBridge.sendKeyUp(token, keyCode);
+        }
+    }
+
+    private void sendPointerDownInternalLocked(IBinder token, int pointerId, int x, int y) {
+        if (DEBUG_KEYS) {
+            Slog.d(TAG, "sendPointerDownInternalLocked(), token: " + token + ", pointerId: " +
+                    pointerId + ", x: " + x + ", y: " + y);
+        }
+
+        UinputBridge inputBridge = mBridgeMap.get(token);
+        if (inputBridge != null) {
+            inputBridge.sendPointerDown(token, pointerId, x, y);
+        }
+    }
+
+    private void sendPointerUpInternalLocked(IBinder token, int pointerId) {
+        if (DEBUG_KEYS) {
+            Slog.d(TAG, "sendPointerUpInternalLocked(), token: " + token + ", pointerId: " +
+                    pointerId);
+        }
+
+        UinputBridge inputBridge = mBridgeMap.get(token);
+        if (inputBridge != null) {
+            inputBridge.sendPointerUp(token, pointerId);
+        }
+    }
+
+    private void sendPointerSyncInternalLocked(IBinder token) {
+        if (DEBUG_KEYS) {
+            Slog.d(TAG, "sendPointerSyncInternalLocked(), token: " + token);
+        }
+
+        UinputBridge inputBridge = mBridgeMap.get(token);
+        if (inputBridge != null) {
+            inputBridge.sendPointerSync(token);
+        }
+    }
+
+    private final class UserHandler extends Handler {
+
+        public static final int MSG_START = 1;
+        public static final int MSG_INPUT_BRIDGE_CONNECTED = 2;
+
+        private final TvRemoteProviderWatcher mWatcher;
+        private boolean mRunning;
+
+        public UserHandler(UserProvider provider, Context context) {
+            super(Looper.getMainLooper(), null, true);
+            mWatcher = new TvRemoteProviderWatcher(context, provider, this);
+        }
+
+        @Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_START: {
+                    start();
+                    break;
+                }
+                case MSG_INPUT_BRIDGE_CONNECTED: {
+                    IBinder token = (IBinder) msg.obj;
+                    TvRemoteProviderProxy provider = mProviderMap.get(token);
+                    if (provider != null) {
+                        provider.inputBridgeConnected(token);
+                    }
+                    break;
+                }
+            }
+        }
+
+        private void start() {
+            if (!mRunning) {
+                mRunning = true;
+                mWatcher.start(); // also starts all providers
+            }
+        }
+    }
+
+    private final class UserProvider implements TvRemoteProviderWatcher.ProviderMethods,
+            TvRemoteProviderProxy.ProviderMethods {
+
+        private final TvRemoteService mService;
+
+        public UserProvider(TvRemoteService service) {
+            mService = service;
+        }
+
+        @Override
+        public void openInputBridge(TvRemoteProviderProxy provider, IBinder token, String name,
+                                    int width, int height, int maxPointers) {
+            if (DEBUG) {
+                Slog.d(TAG, "openInputBridge(), token: " + token +
+                        ", name: " + name + ", width: " + width +
+                        ", height: " + height + ", maxPointers: " + maxPointers);
+            }
+
+            synchronized (mLock) {
+                if (mProviderList.contains(provider)) {
+                    mService.openInputBridgeInternalLocked(provider, token, name, width, height,
+                            maxPointers);
+                }
+            }
+        }
+
+        @Override
+        public void closeInputBridge(TvRemoteProviderProxy provider, IBinder token) {
+            if (DEBUG) Slog.d(TAG, "closeInputBridge(), token: " + token);
+            synchronized (mLock) {
+                if (mProviderList.contains(provider)) {
+                    mService.closeInputBridgeInternalLocked(token);
+                    mProviderMap.remove(token);
+                }
+            }
+        }
+
+        @Override
+        public void clearInputBridge(TvRemoteProviderProxy provider, IBinder token) {
+            if (DEBUG) Slog.d(TAG, "clearInputBridge(), token: " + token);
+            synchronized (mLock) {
+                if (mProviderList.contains(provider)) {
+                    mService.clearInputBridgeInternalLocked(token);
+                }
+            }
+        }
+
+        @Override
+        public void sendTimeStamp(TvRemoteProviderProxy provider, IBinder token, long timestamp) {
+            synchronized (mLock) {
+                if (mProviderList.contains(provider)) {
+                    mService.sendTimeStampInternalLocked(token, timestamp);
+                }
+            }
+        }
+
+        @Override
+        public void sendKeyDown(TvRemoteProviderProxy provider, IBinder token, int keyCode) {
+            if (DEBUG_KEYS) {
+                Slog.d(TAG, "sendKeyDown(), token: " + token + ", keyCode: " + keyCode);
+            }
+            synchronized (mLock) {
+                if (mProviderList.contains(provider)) {
+                    mService.sendKeyDownInternalLocked(token, keyCode);
+                }
+            }
+        }
+
+        @Override
+        public void sendKeyUp(TvRemoteProviderProxy provider, IBinder token, int keyCode) {
+            if (DEBUG_KEYS) {
+                Slog.d(TAG, "sendKeyUp(), token: " + token + ", keyCode: " + keyCode);
+            }
+            synchronized (mLock) {
+                if (mProviderList.contains(provider)) {
+                    mService.sendKeyUpInternalLocked(token, keyCode);
+                }
+            }
+        }
+
+        @Override
+        public void sendPointerDown(TvRemoteProviderProxy provider, IBinder token, int pointerId,
+                                    int x, int y) {
+            if (DEBUG_KEYS) {
+                Slog.d(TAG, "sendPointerDown(), token: " + token + ", pointerId: " + pointerId);
+            }
+            synchronized (mLock) {
+                if (mProviderList.contains(provider)) {
+                    mService.sendPointerDownInternalLocked(token, pointerId, x, y);
+                }
+            }
+        }
+
+        @Override
+        public void sendPointerUp(TvRemoteProviderProxy provider, IBinder token, int pointerId) {
+            if (DEBUG_KEYS) {
+                Slog.d(TAG, "sendPointerUp(), token: " + token + ", pointerId: " + pointerId);
+            }
+            synchronized (mLock) {
+                if (mProviderList.contains(provider)) {
+                    mService.sendPointerUpInternalLocked(token, pointerId);
+                }
+            }
+        }
+
+        @Override
+        public void sendPointerSync(TvRemoteProviderProxy provider, IBinder token) {
+            if (DEBUG_KEYS) Slog.d(TAG, "sendPointerSync(), token: " + token);
+            synchronized (mLock) {
+                if (mProviderList.contains(provider)) {
+                    mService.sendPointerSyncInternalLocked(token);
+                }
+            }
+        }
+
+        @Override
+        public void addProvider(TvRemoteProviderProxy provider) {
+            if (DEBUG) Slog.d(TAG, "addProvider " + provider);
+            synchronized (mLock) {
+                provider.setProviderSink(this);
+                mProviderList.add(provider);
+                Slog.d(TAG, "provider: " + provider.toString());
+            }
+        }
+
+        @Override
+        public void removeProvider(TvRemoteProviderProxy provider) {
+            if (DEBUG) Slog.d(TAG, "removeProvider " + provider);
+            synchronized (mLock) {
+                if (mProviderList.remove(provider) == false) {
+                    Slog.e(TAG, "Unknown provider " + provider);
+                }
+            }
+        }
+    }
+}
diff --git a/services/core/java/com/android/server/tv/UinputBridge.java b/services/core/java/com/android/server/tv/UinputBridge.java
new file mode 100644
index 0000000..f910332
--- /dev/null
+++ b/services/core/java/com/android/server/tv/UinputBridge.java
@@ -0,0 +1,139 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.tv;
+
+import android.os.Binder;
+import android.os.IBinder;
+
+import java.io.IOException;
+
+import dalvik.system.CloseGuard;
+
+/**
+ * Sends the input event to the linux driver.
+ */
+public final class UinputBridge {
+    private final CloseGuard mCloseGuard = CloseGuard.get();
+    private long mPtr;
+    private IBinder mToken = null;
+
+    private static native long nativeOpen(String name, String uniqueId, int width, int height,
+                                          int maxPointers);
+    private static native void nativeClose(long ptr);
+    private static native void nativeClear(long ptr);
+    private static native void nativeSendTimestamp(long ptr, long timestamp);
+    private static native void nativeSendKey(long ptr, int keyCode, boolean down);
+    private static native void nativeSendPointerDown(long ptr, int pointerId, int x, int y);
+    private static native void nativeSendPointerUp(long ptr, int pointerId);
+    private static native void nativeSendPointerSync(long ptr);
+
+    public UinputBridge(IBinder token, String name, int width, int height, int maxPointers)
+                        throws IOException {
+        if (width < 1 || height < 1) {
+            throw new IllegalArgumentException("Touchpad must be at least 1x1.");
+        }
+        if (maxPointers < 1 || maxPointers > 32) {
+            throw new IllegalArgumentException("Touchpad must support between 1 and 32 pointers.");
+        }
+        if (token == null) {
+            throw new IllegalArgumentException("Token cannot be null");
+        }
+        mPtr = nativeOpen(name, token.toString(), width, height, maxPointers);
+        if (mPtr == 0) {
+            throw new IOException("Could not open uinput device " + name);
+        }
+        mToken = token;
+        mCloseGuard.open("close");
+    }
+
+    @Override
+    protected void finalize() throws Throwable {
+        try {
+            if (mPtr != 0) {
+                mCloseGuard.warnIfOpen();
+            }
+            close(mToken);
+        } finally {
+            mToken = null;
+            super.finalize();
+        }
+    }
+
+    public void close(IBinder token) {
+        if (isTokenValid(token)) {
+            if (mPtr != 0) {
+                clear(token);
+                nativeClose(mPtr);
+
+                mPtr = 0;
+                mCloseGuard.close();
+            }
+        }
+    }
+
+    public IBinder getToken() {
+        return mToken;
+    }
+
+    protected boolean isTokenValid(IBinder token) {
+        return mToken.equals(token);
+    }
+
+    public void sendTimestamp(IBinder token, long timestamp) {
+        if (isTokenValid(token)) {
+            nativeSendTimestamp(mPtr, timestamp);
+        }
+    }
+
+    public void sendKeyDown(IBinder token, int keyCode) {
+        if (isTokenValid(token)) {
+            nativeSendKey(mPtr, keyCode, true /*down*/);
+        }
+    }
+
+    public void sendKeyUp(IBinder token, int keyCode) {
+        if (isTokenValid(token)) {
+            nativeSendKey(mPtr, keyCode, false /*down*/);
+        }
+    }
+
+    public void sendPointerDown(IBinder token, int pointerId, int x, int y) {
+        if (isTokenValid(token)) {
+            nativeSendPointerDown(mPtr, pointerId, x, y);
+        }
+    }
+
+    public void sendPointerUp(IBinder token, int pointerId) {
+        if (isTokenValid(token)) {
+            nativeSendPointerUp(mPtr, pointerId);
+        }
+    }
+
+    public void sendPointerSync(IBinder token) {
+        if (isTokenValid(token)) {
+            nativeSendPointerSync(mPtr);
+        }
+
+    }
+
+    public void clear(IBinder token) {
+        if (isTokenValid(token)) {
+            nativeClear(mPtr);
+        }
+    }
+
+}
diff --git a/services/core/java/com/android/server/vr/EnabledComponentsObserver.java b/services/core/java/com/android/server/vr/EnabledComponentsObserver.java
index 30194bf..249a076 100644
--- a/services/core/java/com/android/server/vr/EnabledComponentsObserver.java
+++ b/services/core/java/com/android/server/vr/EnabledComponentsObserver.java
@@ -212,7 +212,7 @@
         if (userManager == null) {
             return null;
         }
-        return userManager.getProfileIdsWithDisabled(ActivityManager.getCurrentUser());
+        return userManager.getEnabledProfileIds(ActivityManager.getCurrentUser());
     }
 
     public static ArraySet<ComponentName> loadComponentNames(PackageManager pm, int userId,
diff --git a/services/core/java/com/android/server/vr/SettingsObserver.java b/services/core/java/com/android/server/vr/SettingsObserver.java
index ce76863..3d1227d 100644
--- a/services/core/java/com/android/server/vr/SettingsObserver.java
+++ b/services/core/java/com/android/server/vr/SettingsObserver.java
@@ -38,7 +38,7 @@
 public class SettingsObserver {
 
     private final String mSecureSettingName;
-    private final BroadcastReceiver mSettingRestorReceiver;
+    private final BroadcastReceiver mSettingRestoreReceiver;
     private final ContentObserver mContentObserver;
     private final Set<SettingChangeListener> mSettingsListeners = new ArraySet<>();
 
@@ -67,7 +67,7 @@
             @NonNull final Uri settingUri, @NonNull final String secureSettingName) {
 
         mSecureSettingName = secureSettingName;
-        mSettingRestorReceiver = new BroadcastReceiver() {
+        mSettingRestoreReceiver = new BroadcastReceiver() {
             @Override
             public void onReceive(Context context, Intent intent) {
                 if (Intent.ACTION_SETTING_RESTORED.equals(intent.getAction())) {
@@ -117,7 +117,6 @@
      */
     public void addListener(@NonNull SettingChangeListener listener) {
         mSettingsListeners.add(listener);
-
     }
 
     /**
diff --git a/services/core/java/com/android/server/vr/VrManagerService.java b/services/core/java/com/android/server/vr/VrManagerService.java
index 49ff385..a9553a5 100644
--- a/services/core/java/com/android/server/vr/VrManagerService.java
+++ b/services/core/java/com/android/server/vr/VrManagerService.java
@@ -19,10 +19,15 @@
 import android.app.AppOpsManager;
 import android.app.NotificationManager;
 import android.annotation.NonNull;
+import android.content.BroadcastReceiver;
 import android.content.ComponentName;
 import android.content.ContentResolver;
 import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
 import android.content.pm.ApplicationInfo;
+import android.content.pm.FeatureInfo;
+import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
 import android.content.pm.PackageManager.NameNotFoundException;
 import android.os.Binder;
@@ -44,6 +49,7 @@
 import android.util.Slog;
 
 import com.android.internal.R;
+import com.android.server.SystemConfig;
 import com.android.server.SystemService;
 import com.android.server.utils.ManagedApplicationService.PendingEvent;
 import com.android.server.vr.EnabledComponentsObserver.EnabledComponentChangeListener;
@@ -56,6 +62,7 @@
 import java.lang.ref.WeakReference;
 import java.util.ArrayList;
 import java.util.Collection;
+import java.util.List;
 import java.util.Objects;
 import java.util.Set;
 
@@ -85,6 +92,8 @@
 
     public static final String VR_MANAGER_BINDER_SERVICE = "vrmanager";
 
+    private static final int PENDING_STATE_DELAY_MS = 300;
+
     private static native void initializeNative();
     private static native void setVrModeNative(boolean enabled);
 
@@ -107,8 +116,10 @@
     private String mPreviousNotificationPolicyAccessPackage;
     private String mPreviousCoarseLocationPackage;
     private String mPreviousManageOverlayPackage;
+    private VrState mPendingState;
 
     private static final int MSG_VR_STATE_CHANGE = 0;
+    private static final int MSG_PENDING_VR_STATE_CHANGE = 1;
 
     private final Handler mHandler = new Handler() {
         @Override
@@ -127,12 +138,32 @@
                     }
                     mRemoteCallbacks.finishBroadcast();
                 } break;
+                case MSG_PENDING_VR_STATE_CHANGE : {
+                    synchronized(mLock) {
+                        VrManagerService.this.consumeAndApplyPendingStateLocked();
+                    }
+                } break;
                 default :
                     throw new IllegalStateException("Unknown message type: " + msg.what);
             }
         }
     };
 
+    private static class VrState {
+        final boolean enabled;
+        final int userId;
+        final ComponentName targetPackageName;
+        final ComponentName callingPackage;
+
+        VrState(boolean enabled, ComponentName targetPackageName, int userId,
+                ComponentName callingPackage) {
+            this.enabled = enabled;
+            this.userId = userId;
+            this.targetPackageName = targetPackageName;
+            this.callingPackage = callingPackage;
+        }
+    };
+
     private static final BinderChecker sBinderChecker = new BinderChecker() {
         @Override
         public IInterface asInterface(IBinder binder) {
@@ -156,6 +187,13 @@
                 return; // No active services
             }
 
+            // If there is a pending state change, we'd better deal with that first
+            consumeAndApplyPendingStateLocked();
+
+            if (mCurrentVrService == null) {
+                return; // No active services
+            }
+
             // There is an active service, update it if needed
             updateCurrentVrServiceLocked(mVrModeEnabled, mCurrentVrService.getComponent(),
                     mCurrentVrService.getUserId(), null);
@@ -258,6 +296,107 @@
 
         publishLocalService(VrManagerInternal.class, new LocalService());
         publishBinderService(VR_MANAGER_BINDER_SERVICE, mVrManager.asBinder());
+
+        // If there are no VR packages installed on the device, then disable VR
+        // components, otherwise, enable them.
+        setEnabledStatusOfVrComponents();
+    }
+
+    private void setEnabledStatusOfVrComponents() {
+        ArraySet<ComponentName> vrComponents = SystemConfig.getInstance().getDefaultVrComponents();
+        if (vrComponents == null) {
+           return;
+        }
+
+        // We only want to enable VR components if there is a VR package installed on the device.
+        // The VR components themselves do not quality as a VR package, so exclude them.
+        ArraySet<String> vrComponentPackageNames = new ArraySet<>();
+        for (ComponentName componentName : vrComponents) {
+            vrComponentPackageNames.add(componentName.getPackageName());
+        }
+
+        // Check to see if there are any packages on the device, other than the VR component
+        // packages.
+        PackageManager pm = mContext.getPackageManager();
+        List<PackageInfo> packageInfos = pm.getInstalledPackages(
+                PackageManager.GET_CONFIGURATIONS);
+        boolean vrModeIsUsed = false;
+        for (PackageInfo packageInfo : packageInfos) {
+            if (packageInfo != null && packageInfo.packageName != null &&
+                    pm.getApplicationEnabledSetting(packageInfo.packageName) ==
+                            PackageManager.COMPONENT_ENABLED_STATE_DEFAULT) {
+                vrModeIsUsed = enableVrComponentsIfVrModeUsed(pm, packageInfo,
+                        vrComponentPackageNames, vrComponents);
+                if (vrModeIsUsed) {
+                    break;
+                }
+            }
+        }
+
+        if (!vrModeIsUsed) {
+            Slog.i(TAG, "No VR packages found, disabling VR components");
+            setVrComponentsEnabledOrDisabled(vrComponents, false);
+
+            // Register to receive an intent when a new package is installed, in case that package
+            // requires VR components.
+            IntentFilter intentFilter = new IntentFilter();
+            intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED);
+            intentFilter.addDataScheme("package");
+            mContext.registerReceiver(new BroadcastReceiver() {
+                @Override
+                public void onReceive(Context context, Intent intent) {
+                    PackageManager pm = context.getPackageManager();
+                    final String packageName = intent.getData().getSchemeSpecificPart();
+                    if (packageName != null) {
+                        try {
+                            PackageInfo packageInfo = pm.getPackageInfo(packageName,
+                                    PackageManager.GET_CONFIGURATIONS);
+                            enableVrComponentsIfVrModeUsed(pm, packageInfo,
+                                    vrComponentPackageNames, vrComponents);
+                        } catch (NameNotFoundException e) {
+                        }
+                    }
+                };
+            }, intentFilter);
+        }
+    }
+
+    private void setVrComponentsEnabledOrDisabled(ArraySet<ComponentName> vrComponents,
+            boolean enabled) {
+        int state = enabled ?
+                PackageManager.COMPONENT_ENABLED_STATE_ENABLED :
+                PackageManager.COMPONENT_ENABLED_STATE_DISABLED;
+        PackageManager pm = mContext.getPackageManager();
+        for (ComponentName componentName : vrComponents) {
+            try {
+                // Note that we must first check for the existance of the package before trying
+                // to set its enabled state.  This is to prevent PackageManager from throwing
+                // an excepton if the package is not found (not just a NameNotFoundException
+                // exception).
+                PackageInfo packageInfo = pm.getPackageInfo(componentName.getPackageName(),
+                        PackageManager.GET_CONFIGURATIONS);
+                pm.setApplicationEnabledSetting(componentName.getPackageName(), state , 0);
+            } catch (NameNotFoundException e) {
+            }
+        }
+    }
+
+    private boolean enableVrComponentsIfVrModeUsed(PackageManager pm, PackageInfo packageInfo,
+            ArraySet<String> vrComponentPackageNames, ArraySet<ComponentName> vrComponents) {
+        boolean isVrComponent = vrComponents != null &&
+                vrComponentPackageNames.contains(packageInfo.packageName);
+        if (packageInfo != null && packageInfo.reqFeatures != null && !isVrComponent) {
+            for (FeatureInfo featureInfo : packageInfo.reqFeatures) {
+                if (featureInfo.name != null &&
+                    (featureInfo.name.equals(PackageManager.FEATURE_VR_MODE) ||
+                     featureInfo.name.equals(PackageManager.FEATURE_VR_MODE_HIGH_PERFORMANCE))) {
+                    Slog.i(TAG, "VR package found, enabling VR components");
+                    setVrComponentsEnabledOrDisabled(vrComponents, true);
+                    return true;
+                }
+            }
+        }
+        return false;
     }
 
     @Override
@@ -679,14 +818,40 @@
                 sBinderChecker);
     }
 
+    private void consumeAndApplyPendingStateLocked() {
+        if (mPendingState != null) {
+            updateCurrentVrServiceLocked(mPendingState.enabled,
+                    mPendingState.targetPackageName, mPendingState.userId,
+                    mPendingState.callingPackage);
+            mPendingState = null;
+        }
+    }
+
     /*
      * Implementation of VrManagerInternal calls.  These are callable from system services.
      */
 
-    private boolean setVrMode(boolean enabled, @NonNull ComponentName targetPackageName,
+    private void setVrMode(boolean enabled, @NonNull ComponentName targetPackageName,
             int userId, @NonNull ComponentName callingPackage) {
+
         synchronized (mLock) {
-            return updateCurrentVrServiceLocked(enabled, targetPackageName, userId, callingPackage);
+
+            if (!enabled && mCurrentVrService != null) {
+                // If we're transitioning out of VR mode, delay briefly to avoid expensive HAL calls
+                // and service bind/unbind in case we are immediately switching to another VR app.
+                if (mPendingState == null) {
+                    mHandler.sendEmptyMessageDelayed(MSG_PENDING_VR_STATE_CHANGE,
+                            PENDING_STATE_DELAY_MS);
+                }
+
+                mPendingState = new VrState(enabled, targetPackageName, userId, callingPackage);
+                return;
+            } else {
+                mHandler.removeMessages(MSG_PENDING_VR_STATE_CHANGE);
+                mPendingState = null;
+            }
+
+            updateCurrentVrServiceLocked(enabled, targetPackageName, userId, callingPackage);
         }
     }
 
diff --git a/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java b/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java
index 10e30ed..d6ace91 100644
--- a/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java
+++ b/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java
@@ -34,7 +34,6 @@
 import android.app.WallpaperInfo;
 import android.app.WallpaperManager;
 import android.app.admin.DevicePolicyManager;
-import android.app.backup.BackupManager;
 import android.app.backup.WallpaperBackupHelper;
 import android.content.BroadcastReceiver;
 import android.content.ComponentName;
@@ -61,6 +60,7 @@
 import android.os.FileUtils;
 import android.os.IBinder;
 import android.os.IRemoteCallback;
+import android.os.Process;
 import android.os.ParcelFileDescriptor;
 import android.os.RemoteCallbackList;
 import android.os.RemoteException;
@@ -205,7 +205,8 @@
             if (path == null) {
                 return;
             }
-            final boolean written = (event == CLOSE_WRITE || event == MOVED_TO);
+            final boolean moved = (event == MOVED_TO);
+            final boolean written = (event == CLOSE_WRITE || moved);
             final File changedFile = new File(mWallpaperDir, path);
 
             // System and system+lock changes happen on the system wallpaper input file;
@@ -224,13 +225,6 @@
                         + " written=" + written);
             }
             synchronized (mLock) {
-                if (sysWallpaperChanged || mWallpaperInfoFile.equals(changedFile)) {
-                    // changing the wallpaper means we'll need to back up the new one
-                    long origId = Binder.clearCallingIdentity();
-                    BackupManager bm = new BackupManager(mContext);
-                    bm.dataChanged();
-                    Binder.restoreCallingIdentity(origId);
-                }
                 if (sysWallpaperChanged || lockWallpaperChanged) {
                     notifyCallbacksLocked(wallpaper);
                     if (wallpaper.wallpaperComponent == null
@@ -244,6 +238,14 @@
                             if (DEBUG) {
                                 Slog.v(TAG, "Wallpaper written; generating crop");
                             }
+                            if (moved) {
+                                // This is a restore, so generate the crop using any just-restored new
+                                // crop guidelines, making sure to preserve our local dimension hints.
+                                if (DEBUG) {
+                                    Slog.v(TAG, "moved-to, therefore restore; reloading metadata");
+                                }
+                                loadSettingsLocked(wallpaper.userId, true);
+                            }
                             generateCrop(wallpaper);
                             if (DEBUG) {
                                 Slog.v(TAG, "Crop done; invoking completion callback");
@@ -491,6 +493,11 @@
         IWallpaperManagerCallback setComplete;
 
         /**
+         * Is the OS allowed to back up this wallpaper imagery?
+         */
+        boolean allowBackup;
+
+        /**
          * Resource name if using a picture from the wallpaper gallery
          */
         String name = "";
@@ -811,7 +818,7 @@
         mMonitor = new MyPackageMonitor();
         mMonitor.register(context, null, UserHandle.ALL, true);
         getWallpaperDir(UserHandle.USER_SYSTEM).mkdirs();
-        loadSettingsLocked(UserHandle.USER_SYSTEM);
+        loadSettingsLocked(UserHandle.USER_SYSTEM, false);
     }
 
     private static File getWallpaperDir(int userId) {
@@ -982,6 +989,7 @@
                     wallpaper.wallpaperComponent = wallpaper.nextWallpaperComponent;
                     final WallpaperData fallback = new WallpaperData(wallpaper.userId,
                             WALLPAPER_LOCK_ORIG, WALLPAPER_LOCK_CROP);
+                    ensureSaneWallpaperData(fallback);
                     bindWallpaperComponentLocked(mImageWallpaper, true, false, fallback, reply);
                     mWaitingForUnlock = true;
                 }
@@ -1023,7 +1031,7 @@
             wallpaper = mWallpaperMap.get(userId);
             if (wallpaper == null) {
                 // Might need to bring it in the first time to establish our rewrite
-                loadSettingsLocked(userId);
+                loadSettingsLocked(userId, false);
                 wallpaper = mWallpaperMap.get(userId);
             }
         }
@@ -1101,7 +1109,7 @@
                 WallpaperData wd = mWallpaperMap.get(user.id);
                 if (wd == null) {
                     // User hasn't started yet, so load her settings to peek at the wallpaper
-                    loadSettingsLocked(user.id);
+                    loadSettingsLocked(user.id, false);
                     wd = mWallpaperMap.get(user.id);
                 }
                 if (wd != null && name.equals(wd.name)) {
@@ -1234,7 +1242,7 @@
             if (wallpaper == null) {
                 // common case, this is the first lookup post-boot of the system or
                 // unified lock, so we bring up the saved state lazily now and recheck.
-                loadSettingsLocked(wallpaperUserId);
+                loadSettingsLocked(wallpaperUserId, false);
                 wallpaper = whichSet.get(wallpaperUserId);
                 if (wallpaper == null) {
                     return null;
@@ -1303,7 +1311,8 @@
 
     @Override
     public ParcelFileDescriptor setWallpaper(String name, String callingPackage,
-            Rect cropHint, Bundle extras, int which, IWallpaperManagerCallback completion) {
+            Rect cropHint, boolean allowBackup, Bundle extras, int which,
+            IWallpaperManagerCallback completion) {
         checkPermission(android.Manifest.permission.SET_WALLPAPER);
 
         if ((which & (FLAG_LOCK|FLAG_SYSTEM)) == 0) {
@@ -1341,6 +1350,9 @@
                     wallpaper.whichPending = which;
                     wallpaper.setComplete = completion;
                     wallpaper.cropHint.set(cropHint);
+                    if ((which & FLAG_SYSTEM) != 0) {
+                        wallpaper.allowBackup = allowBackup;
+                    }
                 }
                 return pfd;
             } finally {
@@ -1650,6 +1662,16 @@
         return !um.hasUserRestriction(UserManager.DISALLOW_SET_WALLPAPER);
     }
 
+    @Override
+    public boolean isWallpaperBackupEligible(int userId) {
+        if (Binder.getCallingUid() != Process.SYSTEM_UID) {
+            throw new SecurityException("Only the system may call isWallpaperBackupEligible");
+        }
+
+        WallpaperData wallpaper = getWallpaperSafeLocked(userId, FLAG_SYSTEM);
+        return (wallpaper != null) ? wallpaper.allowBackup : false;
+    }
+
     private static JournaledFile makeJournaledFile(int userId) {
         final String base = new File(getWallpaperDir(userId), WALLPAPER_INFO).getAbsolutePath();
         return new JournaledFile(new File(base), new File(base + ".tmp"));
@@ -1720,6 +1742,11 @@
             out.attribute(null, "component",
                     wallpaper.wallpaperComponent.flattenToShortString());
         }
+
+        if (wallpaper.allowBackup) {
+            out.attribute(null, "backup", "true");
+        }
+
         out.endTag(null, tag);
     }
 
@@ -1763,7 +1790,7 @@
         if (wallpaper == null) {
             // common case, this is the first lookup post-boot of the system or
             // unified lock, so we bring up the saved state lazily now and recheck.
-            loadSettingsLocked(userId);
+            loadSettingsLocked(userId, false);
             wallpaper = whichSet.get(userId);
             // if it's still null here, this is a lock-only operation and there is not
             // yet a lock-only wallpaper set for this user, so we need to establish
@@ -1773,19 +1800,21 @@
                     wallpaper = new WallpaperData(userId,
                             WALLPAPER_LOCK_ORIG, WALLPAPER_LOCK_CROP);
                     mLockWallpaperMap.put(userId, wallpaper);
+                    ensureSaneWallpaperData(wallpaper);
                 } else {
                     // sanity fallback: we're in bad shape, but establishing a known
                     // valid system+lock WallpaperData will keep us from dying.
                     Slog.wtf(TAG, "Didn't find wallpaper in non-lock case!");
                     wallpaper = new WallpaperData(userId, WALLPAPER, WALLPAPER_CROP);
                     mWallpaperMap.put(userId, wallpaper);
+                    ensureSaneWallpaperData(wallpaper);
                 }
             }
         }
         return wallpaper;
     }
 
-    private void loadSettingsLocked(int userId) {
+    private void loadSettingsLocked(int userId, boolean keepDimensionHints) {
         if (DEBUG) Slog.v(TAG, "loadSettingsLocked");
 
         JournaledFile journal = makeJournaledFile(userId);
@@ -1798,6 +1827,7 @@
         WallpaperData wallpaper = mWallpaperMap.get(userId);
         if (wallpaper == null) {
             wallpaper = new WallpaperData(userId, WALLPAPER, WALLPAPER_CROP);
+            wallpaper.allowBackup = true;
             mWallpaperMap.put(userId, wallpaper);
             if (!wallpaper.cropExists()) {
                 generateCrop(wallpaper);
@@ -1816,7 +1846,7 @@
                     String tag = parser.getName();
                     if ("wp".equals(tag)) {
                         // Common to system + lock wallpapers
-                        parseWallpaperAttributes(parser, wallpaper);
+                        parseWallpaperAttributes(parser, wallpaper, keepDimensionHints);
 
                         // A system wallpaper might also be a live wallpaper
                         String comp = parser.getAttributeValue(null, "component");
@@ -1845,7 +1875,7 @@
                                     WALLPAPER_LOCK_ORIG, WALLPAPER_LOCK_CROP);
                             mLockWallpaperMap.put(userId, lockWallpaper);
                         }
-                        parseWallpaperAttributes(parser, lockWallpaper);
+                        parseWallpaperAttributes(parser, lockWallpaper, false);
                     }
                 }
             } while (type != XmlPullParser.END_DOCUMENT);
@@ -1871,6 +1901,8 @@
             wallpaper.cropHint.set(0, 0, 0, 0);
             wallpaper.padding.set(0, 0, 0, 0);
             wallpaper.name = "";
+
+            mLockWallpaperMap.remove(userId);
         } else {
             if (wallpaper.wallpaperId <= 0) {
                 wallpaper.wallpaperId = makeWallpaperIdLocked();
@@ -1881,6 +1913,14 @@
             }
         }
 
+        ensureSaneWallpaperData(wallpaper);
+        WallpaperData lockWallpaper = mLockWallpaperMap.get(userId);
+        if (lockWallpaper != null) {
+            ensureSaneWallpaperData(lockWallpaper);
+        }
+    }
+
+    private void ensureSaneWallpaperData(WallpaperData wallpaper) {
         // We always want to have some reasonable width hint.
         int baseSize = getMaximumSizeDimension();
         if (wallpaper.width < baseSize) {
@@ -1896,7 +1936,8 @@
         }
     }
 
-    private void parseWallpaperAttributes(XmlPullParser parser, WallpaperData wallpaper) {
+    private void parseWallpaperAttributes(XmlPullParser parser, WallpaperData wallpaper,
+            boolean keepDimensionHints) {
         final String idString = parser.getAttributeValue(null, "id");
         if (idString != null) {
             final int id = wallpaper.wallpaperId = Integer.parseInt(idString);
@@ -1907,9 +1948,11 @@
             wallpaper.wallpaperId = makeWallpaperIdLocked();
         }
 
-        wallpaper.width = Integer.parseInt(parser.getAttributeValue(null, "width"));
-        wallpaper.height = Integer.parseInt(parser
-                .getAttributeValue(null, "height"));
+        if (!keepDimensionHints) {
+            wallpaper.width = Integer.parseInt(parser.getAttributeValue(null, "width"));
+            wallpaper.height = Integer.parseInt(parser
+                    .getAttributeValue(null, "height"));
+        }
         wallpaper.cropHint.left = getAttributeInt(parser, "cropLeft", 0);
         wallpaper.cropHint.top = getAttributeInt(parser, "cropTop", 0);
         wallpaper.cropHint.right = getAttributeInt(parser, "cropRight", 0);
@@ -1919,6 +1962,7 @@
         wallpaper.padding.right = getAttributeInt(parser, "paddingRight", 0);
         wallpaper.padding.bottom = getAttributeInt(parser, "paddingBottom", 0);
         wallpaper.name = parser.getAttributeValue(null, "name");
+        wallpaper.allowBackup = "true".equals(parser.getAttributeValue(null, "backup"));
     }
 
     private int getMaximumSizeDimension() {
@@ -1939,9 +1983,10 @@
         WallpaperData wallpaper = null;
         boolean success = false;
         synchronized (mLock) {
-            loadSettingsLocked(UserHandle.USER_SYSTEM);
+            loadSettingsLocked(UserHandle.USER_SYSTEM, false);
             wallpaper = mWallpaperMap.get(UserHandle.USER_SYSTEM);
             wallpaper.wallpaperId = makeWallpaperIdLocked();    // always bump id at restore
+            wallpaper.allowBackup = true;   // by definition if it was restored
             if (wallpaper.nextWallpaperComponent != null
                     && !wallpaper.nextWallpaperComponent.equals(mImageWallpaper)) {
                 if (!bindWallpaperComponentLocked(wallpaper.nextWallpaperComponent, false, false,
@@ -2072,11 +2117,11 @@
         }
 
         synchronized (mLock) {
-            pw.println("Current Wallpaper Service state:");
+            pw.println("System wallpaper state:");
             for (int i = 0; i < mWallpaperMap.size(); i++) {
                 WallpaperData wallpaper = mWallpaperMap.valueAt(i);
                 pw.print(" User "); pw.print(wallpaper.userId);
-                pw.print(": id="); pw.println(wallpaper.wallpaperId);
+                    pw.print(": id="); pw.println(wallpaper.wallpaperId);
                 pw.print("  mWidth=");
                     pw.print(wallpaper.width);
                     pw.print(" mHeight=");
@@ -2104,6 +2149,18 @@
                     pw.println(wallpaper.lastDiedTime - SystemClock.uptimeMillis());
                 }
             }
+            pw.println("Lock wallpaper state:");
+            for (int i = 0; i < mLockWallpaperMap.size(); i++) {
+                WallpaperData wallpaper = mLockWallpaperMap.valueAt(i);
+                pw.print(" User "); pw.print(wallpaper.userId);
+                    pw.print(": id="); pw.println(wallpaper.wallpaperId);
+                pw.print("  mWidth="); pw.print(wallpaper.width);
+                    pw.print(" mHeight="); pw.println(wallpaper.height);
+                pw.print("  mCropHint="); pw.println(wallpaper.cropHint);
+                pw.print("  mPadding="); pw.println(wallpaper.padding);
+                pw.print("  mName=");  pw.println(wallpaper.name);
+            }
+
         }
     }
 }
diff --git a/services/core/java/com/android/server/wm/AppTransition.java b/services/core/java/com/android/server/wm/AppTransition.java
index 11b01cc..9199d10 100644
--- a/services/core/java/com/android/server/wm/AppTransition.java
+++ b/services/core/java/com/android/server/wm/AppTransition.java
@@ -1914,6 +1914,14 @@
                 setAppTransition(transit);
             }
         }
+        if (transit != TRANSIT_DOCK_TASK_FROM_RECENTS
+                && mNextAppTransition == TRANSIT_DOCK_TASK_FROM_RECENTS) {
+
+            // Somebody is trying to start another transition while we are waiting for the docking
+            // window to be drawn. Because TRANSIT_DOCK_TASK_FROM_RECENTS starts prolonged
+            // animations, we need to override it or our prolonged animations will never be ended.
+            setAppTransition(transit);
+        }
         boolean prepared = prepare();
         if (isTransitionSet()) {
             mService.mH.removeMessages(H.APP_TRANSITION_TIMEOUT);
diff --git a/services/core/java/com/android/server/wm/AppWindowAnimator.java b/services/core/java/com/android/server/wm/AppWindowAnimator.java
index aae52e8..abb1bb1 100644
--- a/services/core/java/com/android/server/wm/AppWindowAnimator.java
+++ b/services/core/java/com/android/server/wm/AppWindowAnimator.java
@@ -433,7 +433,7 @@
             WindowStateAnimator winAnimator = mAllAppWinAnimators.get(i);
             if (DEBUG_VISIBILITY) Slog.v(TAG, "performing show on: " + winAnimator);
             winAnimator.performShowLocked();
-            isAnimating |= winAnimator.isAnimating();
+            isAnimating |= winAnimator.isAnimationSet();
         }
         return isAnimating;
     }
diff --git a/services/core/java/com/android/server/wm/AppWindowToken.java b/services/core/java/com/android/server/wm/AppWindowToken.java
index 4ec297e..9f54b53 100644
--- a/services/core/java/com/android/server/wm/AppWindowToken.java
+++ b/services/core/java/com/android/server/wm/AppWindowToken.java
@@ -204,7 +204,7 @@
             if (DEBUG_VISIBILITY) {
                 Slog.v(TAG, "Win " + win + ": isDrawn="
                         + win.isDrawnLw()
-                        + ", isAnimating=" + win.mWinAnimator.isAnimating());
+                        + ", isAnimationSet=" + win.mWinAnimator.isAnimationSet());
                 if (!win.isDrawnLw()) {
                     Slog.v(TAG, "Not displayed: s=" +
                             win.mWinAnimator.mSurfaceController
@@ -220,11 +220,11 @@
             numInteresting++;
             if (win.isDrawnLw()) {
                 numDrawn++;
-                if (!win.mWinAnimator.isAnimating()) {
+                if (!win.mWinAnimator.isAnimationSet()) {
                     numVisible++;
                 }
                 nowGone = false;
-            } else if (win.mWinAnimator.isAnimating()) {
+            } else if (win.mWinAnimator.isAnimationSet()) {
                 nowGone = false;
             }
         }
@@ -297,7 +297,7 @@
             // Return true so that the alpha doesn't get cleared.
             if (!win.mAppFreezing
                     && (win.mViewVisibility == View.VISIBLE || mAnimatingWithSavedSurface
-                            || (win.mWinAnimator.isAnimating()
+                            || (win.mWinAnimator.isAnimationSet()
                                     && !service.mAppTransition.isTransitionSet()))
                     && !win.mDestroying
                     && win.isDrawnLw()) {
@@ -499,7 +499,7 @@
                 + " with replacing child windows.");
         for (int i = allAppWindows.size() - 1; i >= 0; i--) {
             final WindowState w = allAppWindows.get(i);
-            if (w.isChildWindow()) {
+            if (w.shouldBeReplacedWithChildren()) {
                 w.setReplacing(false /* animate */);
             }
         }
@@ -539,8 +539,9 @@
         for (int i = allAppWindows.size() - 1; i >= 0; i--) {
             WindowState candidate = allAppWindows.get(i);
             if (candidate.mWillReplaceWindow && candidate.mReplacingWindow == null &&
-                    candidate.getWindowTag().equals(w.getWindowTag().toString())) {
+                    candidate.getWindowTag().toString().equals(w.getWindowTag().toString())) {
                 candidate.mReplacingWindow = w;
+                w.mSkipEnterAnimationForSeamlessReplacement = !candidate.mAnimateReplacingWindow;
 
                 // if we got a replacement window, reset the timeout to give drawing more time
                 service.mH.removeMessages(H.WINDOW_REPLACEMENT_TIMEOUT);
@@ -575,6 +576,9 @@
                 continue;
             }
             candidate.mWillReplaceWindow = false;
+            if (candidate.mReplacingWindow != null) {
+                candidate.mReplacingWindow.mSkipEnterAnimationForSeamlessReplacement = false;
+            }
             // Since the window already timed out, remove it immediately now.
             // Use removeWindowInnerLocked() instead of removeWindowLocked(), as the latter
             // delays removal on certain conditions, which will leave the stale window in the
diff --git a/services/core/java/com/android/server/wm/BoundsAnimationController.java b/services/core/java/com/android/server/wm/BoundsAnimationController.java
index b7d6062..1f44b29 100644
--- a/services/core/java/com/android/server/wm/BoundsAnimationController.java
+++ b/services/core/java/com/android/server/wm/BoundsAnimationController.java
@@ -129,24 +129,35 @@
         public void onAnimationStart(Animator animation) {
             if (DEBUG) Slog.d(TAG, "onAnimationStart: mTarget=" + mTarget
                     + " mReplacement=" + mReplacement);
-            if (animatingToLargerSize()) {
-                mTarget.setPinnedStackSize(mFrom, mTo);
-            }
-
+            // Ensure that we have prepared the target for animation before
+            // we trigger any size changes, so it can swap surfaces
+            // in to appropriate modes, or do as it wishes otherwise.
             if (!mReplacement) {
                 mTarget.onAnimationStart();
             }
+
+            // Immediately update the task bounds if they have to become larger, but preserve
+            // the starting position so we don't jump at the beginning of the animation.
+            if (animatingToLargerSize()) {
+                mTmpRect.set(mFrom.left, mFrom.top,
+                        mFrom.left + mFrozenTaskWidth, mFrom.top + mFrozenTaskHeight);
+                mTarget.setPinnedStackSize(mFrom, mTmpRect);
+            }
         }
 
         @Override
         public void onAnimationEnd(Animator animation) {
             if (DEBUG) Slog.d(TAG, "onAnimationEnd: mTarget=" + mTarget
                     + " mMoveToFullScreen=" + mMoveToFullScreen + " mWillReplace=" + mWillReplace);
-
-            finishAnimation();
             if (mMoveToFullScreen && !mWillReplace) {
                 mTarget.moveToFullscreen();
             }
+
+            // If we finish the animation before we move the target to fullscreen,
+            // recents may close itself and we may try and resume the previous
+            // fullscreen app leading to churn and flicker after we then move
+            // our target to fullscreen.
+            finishAnimation();
         }
 
         @Override
diff --git a/services/core/java/com/android/server/wm/DimLayerController.java b/services/core/java/com/android/server/wm/DimLayerController.java
index 3ec02b9..52146c2 100644
--- a/services/core/java/com/android/server/wm/DimLayerController.java
+++ b/services/core/java/com/android/server/wm/DimLayerController.java
@@ -149,8 +149,10 @@
             if (state.animator.mWin.mAppToken == null && !dimLayerUser.isFullscreen()) {
                 // Dim should cover the entire screen for system windows.
                 mDisplayContent.getLogicalDisplayRect(mTmpBounds);
-                state.dimLayer.setBounds(mTmpBounds);
+            } else {
+                dimLayerUser.getDimBounds(mTmpBounds);
             }
+            state.dimLayer.setBounds(mTmpBounds);
         }
     }
 
@@ -169,6 +171,10 @@
                 + " dimLayerUser=" + dimLayerUser.toShortString()
                 + " state.continueDimming=" + state.continueDimming
                 + " state.dimLayer.isDimming=" + state.dimLayer.isDimming());
+        if (state.animator != null && state.animator.mWin.mWillReplaceWindow) {
+            return;
+        }
+
         if (!state.continueDimming && state.dimLayer.isDimming()) {
             state.animator = null;
             dimLayerUser.getDimBounds(mTmpBounds);
@@ -303,7 +309,7 @@
         applyDim(dimLayerUser, animator, true /* aboveApp */);
     }
 
-    private void applyDim(
+    void applyDim(
             DimLayer.DimLayerUser dimLayerUser, WindowStateAnimator animator, boolean aboveApp) {
         if (dimLayerUser == null) {
             Slog.e(TAG, "Trying to apply dim layer for: " + this
diff --git a/services/core/java/com/android/server/wm/DockedStackDividerController.java b/services/core/java/com/android/server/wm/DockedStackDividerController.java
index ff537be..8174c13 100644
--- a/services/core/java/com/android/server/wm/DockedStackDividerController.java
+++ b/services/core/java/com/android/server/wm/DockedStackDividerController.java
@@ -24,8 +24,10 @@
 import static android.view.WindowManager.DOCKED_TOP;
 import static com.android.server.wm.AppTransition.DEFAULT_APP_TRANSITION_DURATION;
 import static com.android.server.wm.AppTransition.TOUCH_RESPONSE_INTERPOLATOR;
+import static com.android.server.wm.DragResizeMode.DRAG_RESIZE_MODE_DOCKED_DIVIDER;
 import static com.android.server.wm.WindowManagerDebugConfig.TAG_WITH_CLASS_NAME;
 import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
+import static com.android.server.wm.WindowManagerService.H.NOTIFY_DOCKED_STACK_MINIMIZED_CHANGED;
 
 import android.content.Context;
 import android.graphics.Rect;
@@ -38,8 +40,10 @@
 import android.view.SurfaceControl;
 import android.view.animation.AnimationUtils;
 import android.view.animation.Interpolator;
+import android.view.animation.PathInterpolator;
 
 import com.android.server.wm.DimLayer.DimLayerUser;
+import com.android.server.wm.WindowManagerService.H;
 
 import java.util.ArrayList;
 
@@ -74,9 +78,19 @@
      */
     private static final float CLIP_REVEAL_MEET_FRACTION_MAX = 0.8f;
 
+    private static final Interpolator IME_ADJUST_ENTRY_INTERPOLATOR =
+            new PathInterpolator(0.2f, 0f, 0.1f, 1f);
+
+    private static final long IME_ADJUST_ANIM_DURATION = 280;
+
+    private static final long IME_ADJUST_DRAWN_TIMEOUT = 200;
+
+    private static final int DIVIDER_WIDTH_INACTIVE_DP = 4;
+
     private final WindowManagerService mService;
     private final DisplayContent mDisplayContent;
     private int mDividerWindowWidth;
+    private int mDividerWindowWidthInactive;
     private int mDividerInsets;
     private boolean mResizing;
     private WindowState mWindow;
@@ -95,11 +109,18 @@
     private float mAnimationStart;
     private float mAnimationTarget;
     private long mAnimationDuration;
+    private boolean mAnimationStartDelayed;
     private final Interpolator mMinimizedDockInterpolator;
     private float mMaximizeMeetFraction;
     private final Rect mTouchRegion = new Rect();
     private boolean mAnimatingForIme;
     private boolean mAdjustedForIme;
+    private WindowState mDelayedImeWin;
+    private boolean mAdjustedForDivider;
+    private float mDividerAnimationStart;
+    private float mDividerAnimationTarget;
+    private float mLastAnimationProgress;
+    private float mLastDividerProgress;
 
     DockedStackDividerController(WindowManagerService service, DisplayContent displayContent) {
         mService = service;
@@ -118,6 +139,8 @@
                 com.android.internal.R.dimen.docked_stack_divider_thickness);
         mDividerInsets = context.getResources().getDimensionPixelSize(
                 com.android.internal.R.dimen.docked_stack_divider_insets);
+        mDividerWindowWidthInactive = WindowManagerService.dipToPixel(
+                DIVIDER_WIDTH_INACTIVE_DP, mDisplayContent.getDisplayMetrics());
     }
 
     void onConfigurationChanged() {
@@ -136,6 +159,10 @@
         return mDividerInsets;
     }
 
+    int getContentWidthInactive() {
+        return mDividerWindowWidthInactive;
+    }
+
     void setResizing(boolean resizing) {
         if (mResizing != resizing) {
             mResizing = resizing;
@@ -186,10 +213,18 @@
         return mLastVisibility;
     }
 
-    void setAdjustedForIme(boolean adjusted, boolean animate) {
-        if (mAdjustedForIme != adjusted) {
-            mAnimatingForIme = animate;
-            mAdjustedForIme = adjusted;
+    void setAdjustedForIme(
+            boolean adjustedForIme, boolean adjustedForDivider,
+            boolean animate, WindowState imeWin) {
+        if (mAdjustedForIme != adjustedForIme || mAdjustedForDivider != adjustedForDivider) {
+            if (animate) {
+                startImeAdjustAnimation(adjustedForIme, adjustedForDivider, imeWin);
+            } else {
+                // Animation might be delayed, so only notify if we don't run an animation.
+                notifyAdjustedForImeChanged(adjustedForIme || adjustedForDivider, 0 /* duration */);
+            }
+            mAdjustedForIme = adjustedForIme;
+            mAdjustedForDivider = adjustedForDivider;
         }
     }
 
@@ -258,6 +293,9 @@
     }
 
     void notifyDockedStackMinimizedChanged(boolean minimizedDock, long animDuration) {
+        mService.mH.removeMessages(NOTIFY_DOCKED_STACK_MINIMIZED_CHANGED);
+        mService.mH.obtainMessage(NOTIFY_DOCKED_STACK_MINIMIZED_CHANGED,
+                minimizedDock ? 1 : 0, 0).sendToTarget();
         final int size = mDockedStackListeners.beginBroadcast();
         for (int i = 0; i < size; ++i) {
             final IDockedStackListener listener = mDockedStackListeners.getBroadcastItem(i);
@@ -283,12 +321,27 @@
         mDockedStackListeners.finishBroadcast();
     }
 
+    void notifyAdjustedForImeChanged(boolean adjustedForIme, long animDuration) {
+        final int size = mDockedStackListeners.beginBroadcast();
+        for (int i = 0; i < size; ++i) {
+            final IDockedStackListener listener = mDockedStackListeners.getBroadcastItem(i);
+            try {
+                listener.onAdjustedForImeChanged(adjustedForIme, animDuration);
+            } catch (RemoteException e) {
+                Slog.e(TAG_WM, "Error delivering adjusted for ime changed event.", e);
+            }
+        }
+        mDockedStackListeners.finishBroadcast();
+    }
+
     void registerDockedStackListener(IDockedStackListener listener) {
         mDockedStackListeners.register(listener);
         notifyDockedDividerVisibilityChanged(wasVisible());
         notifyDockedStackExistsChanged(
                 mDisplayContent.mService.mStackIdToStack.get(DOCKED_STACK_ID) != null);
         notifyDockedStackMinimizedChanged(mMinimizedDock, 0 /* animDuration */);
+        notifyAdjustedForImeChanged(mAdjustedForIme, 0 /* animDuration */);
+
     }
 
     void setResizeDimLayer(boolean visible, int targetStackId, float alpha) {
@@ -300,7 +353,7 @@
             stack.getDimBounds(mTmpRect);
             if (mTmpRect.height() > 0 && mTmpRect.width() > 0) {
                 mDimLayer.setBounds(mTmpRect);
-                mDimLayer.show(mDisplayContent.mService.mLayersController.getResizeDimLayer(),
+                mDimLayer.show(mService.mLayersController.getResizeDimLayer(),
                         alpha, 0 /* duration */);
             } else {
                 visibleAndValid = false;
@@ -322,6 +375,12 @@
             return;
         }
 
+        // If the app that having visibility change is not the top visible one in the task,
+        // it does not affect whether the docked stack is minimized, ignore it.
+        if (task.getTopVisibleAppToken() == null || task.getTopVisibleAppToken() != wtoken) {
+            return;
+        }
+
         // If the stack is completely offscreen, this might just be an intermediate state when
         // docking a task/launching recents at the same time, but home doesn't actually get
         // visible after the state settles in.
@@ -371,7 +430,7 @@
             return;
         }
 
-        mAnimatingForIme = false;
+        clearImeAdjustAnimation();
         if (minimizedDock) {
             if (animate) {
                 startAdjustAnimation(0f, 1f);
@@ -387,6 +446,17 @@
         }
     }
 
+    private void clearImeAdjustAnimation() {
+        final ArrayList<TaskStack> stacks = mDisplayContent.getStacks();
+        for (int i = stacks.size() - 1; i >= 0; --i) {
+            final TaskStack stack = stacks.get(i);
+            if (stack != null && stack.isAdjustedForIme()) {
+                stack.resetAdjustedForIme(true /* adjustBoundsNow */);
+            }
+        }
+        mAnimatingForIme = false;
+    }
+
     private void startAdjustAnimation(float from, float to) {
         mAnimatingForMinimizedDockedStack = true;
         mAnimationStarted = false;
@@ -394,6 +464,64 @@
         mAnimationTarget = to;
     }
 
+    private void startImeAdjustAnimation(
+            boolean adjustedForIme, boolean adjustedForDivider, WindowState imeWin) {
+        mAnimatingForIme = true;
+        mAnimationStarted = false;
+
+        // If we're not in an animation, the starting point depends on whether we're adjusted
+        // or not. If we're already in an animation, we start from where the current animation
+        // left off, so that the motion doesn't look discontinuous.
+        if (!mAnimatingForIme) {
+            mAnimationStart = mAdjustedForIme ? 1 : 0;
+            mDividerAnimationStart = mAdjustedForDivider ? 1 : 0;
+            mLastAnimationProgress = mAnimationStart;
+            mLastDividerProgress = mDividerAnimationStart;
+        } else {
+            mAnimationStart = mLastAnimationProgress;
+            mDividerAnimationStart = mLastDividerProgress;
+        }
+        mAnimationTarget = adjustedForIme ? 1 : 0;
+        mDividerAnimationTarget = adjustedForDivider ? 1 : 0;
+
+        final ArrayList<TaskStack> stacks = mDisplayContent.getStacks();
+        for (int i = stacks.size() - 1; i >= 0; --i) {
+            final TaskStack stack = stacks.get(i);
+            if (stack.isVisibleLocked() && stack.isAdjustedForIme()) {
+                stack.beginImeAdjustAnimation();
+            }
+        }
+
+        // We put all tasks into drag resizing mode - wait until all of them have completed the
+        // drag resizing switch.
+        if (!mService.mWaitingForDrawn.isEmpty()) {
+            mService.mH.removeMessages(H.WAITING_FOR_DRAWN_TIMEOUT);
+            mService.mH.sendEmptyMessageDelayed(H.WAITING_FOR_DRAWN_TIMEOUT,
+                    IME_ADJUST_DRAWN_TIMEOUT);
+            mAnimationStartDelayed = true;
+            if (imeWin != null) {
+
+                // There might be an old window delaying the animation start - clear it.
+                if (mDelayedImeWin != null) {
+                    mDelayedImeWin.mWinAnimator.endDelayingAnimationStart();
+                }
+                mDelayedImeWin = imeWin;
+                imeWin.mWinAnimator.startDelayingAnimationStart();
+            }
+            mService.mWaitingForDrawnCallback = () -> {
+                mAnimationStartDelayed = false;
+                if (mDelayedImeWin != null) {
+                    mDelayedImeWin.mWinAnimator.endDelayingAnimationStart();
+                }
+                notifyAdjustedForImeChanged(
+                        adjustedForIme || adjustedForDivider, IME_ADJUST_ANIM_DURATION);
+            };
+        } else {
+            notifyAdjustedForImeChanged(
+                    adjustedForIme || adjustedForDivider, IME_ADJUST_ANIM_DURATION);
+        }
+    }
+
     private void setMinimizedDockedStack(boolean minimized) {
         final TaskStack stack = mDisplayContent.getDockedStackVisibleForUserLocked();
         notifyDockedStackMinimizedChanged(minimized, 0);
@@ -410,42 +538,63 @@
     }
 
     public boolean animate(long now) {
+        if (mWindow == null) {
+            return false;
+        }
         if (mAnimatingForMinimizedDockedStack) {
             return animateForMinimizedDockedStack(now);
         } else if (mAnimatingForIme) {
-            return animateForIme();
+            return animateForIme(now);
         } else {
+            if (mDimLayer != null && mDimLayer.isDimming()) {
+                mDimLayer.setLayer(mService.mLayersController.getResizeDimLayer());
+            }
             return false;
         }
     }
 
-    private boolean animateForIme() {
-        boolean updated = false;
-        boolean animating = false;
-
+    private boolean animateForIme(long now) {
+        if (!mAnimationStarted || mAnimationStartDelayed) {
+            mAnimationStarted = true;
+            mAnimationStartTime = now;
+            mAnimationDuration = (long)
+                    (IME_ADJUST_ANIM_DURATION * mService.getWindowAnimationScaleLocked());
+        }
+        float t = Math.min(1f, (float) (now - mAnimationStartTime) / mAnimationDuration);
+        t = (mAnimationTarget == 1f ? IME_ADJUST_ENTRY_INTERPOLATOR : TOUCH_RESPONSE_INTERPOLATOR)
+                .getInterpolation(t);
         final ArrayList<TaskStack> stacks = mDisplayContent.getStacks();
+        boolean updated = false;
         for (int i = stacks.size() - 1; i >= 0; --i) {
             final TaskStack stack = stacks.get(i);
             if (stack != null && stack.isAdjustedForIme()) {
-                updated |= stack.updateAdjustForIme();
-                animating |= stack.isAnimatingForIme();
-            }
-        }
-
-        if (updated) {
-            mService.mWindowPlacerLocked.performSurfacePlacement();
-        }
-
-        if (!animating) {
-            mAnimatingForIme = false;
-            for (int i = stacks.size() - 1; i >= 0; --i) {
-                final TaskStack stack = stacks.get(i);
-                if (stack != null) {
-                    stack.clearImeGoingAway();
+                if (t >= 1f && mAnimationTarget == 0f && mDividerAnimationTarget == 0f) {
+                    stack.resetAdjustedForIme(true /* adjustBoundsNow */);
+                    updated = true;
+                } else {
+                    mLastAnimationProgress = getInterpolatedAnimationValue(t);
+                    mLastDividerProgress = getInterpolatedDividerValue(t);
+                    updated |= stack.updateAdjustForIme(
+                            mLastAnimationProgress,
+                            mLastDividerProgress,
+                            false /* force */);
+                }
+                if (t >= 1f) {
+                    stack.endImeAdjustAnimation();
                 }
             }
         }
-        return animating;
+        if (updated) {
+            mService.mWindowPlacerLocked.performSurfacePlacement();
+        }
+        if (t >= 1.0f) {
+            mLastAnimationProgress = mAnimationTarget;
+            mLastDividerProgress = mDividerAnimationTarget;
+            mAnimatingForIme = false;
+            return false;
+        } else {
+            return true;
+        }
     }
 
     private boolean animateForMinimizedDockedStack(long now) {
@@ -478,11 +627,19 @@
         }
     }
 
+    private float getInterpolatedAnimationValue(float t) {
+        return t * mAnimationTarget + (1 - t) * mAnimationStart;
+    }
+
+    private float getInterpolatedDividerValue(float t) {
+        return t * mDividerAnimationTarget + (1 - t) * mDividerAnimationStart;
+    }
+
     /**
      * Gets the amount how much to minimize a stack depending on the interpolated fraction t.
      */
     private float getMinimizeAmount(TaskStack stack, float t) {
-        final float naturalAmount = t * mAnimationTarget + (1 - t) * mAnimationStart;
+        final float naturalAmount = getInterpolatedAnimationValue(t);
         if (isAnimationMaximizing()) {
             return adjustMaximizeAmount(stack, t, naturalAmount);
         } else {
@@ -545,4 +702,8 @@
     public String toShortString() {
         return TAG;
     }
+
+    WindowState getWindow() {
+        return mWindow;
+    }
 }
diff --git a/services/core/java/com/android/server/wm/DragAndDropPermissionsHandler.java b/services/core/java/com/android/server/wm/DragAndDropPermissionsHandler.java
new file mode 100644
index 0000000..1831ff9
--- /dev/null
+++ b/services/core/java/com/android/server/wm/DragAndDropPermissionsHandler.java
@@ -0,0 +1,130 @@
+/*
+** Copyright 2015, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+
+package com.android.server.wm;
+
+import android.app.ActivityManagerNative;
+import android.content.ClipData;
+import android.net.Uri;
+import android.os.Binder;
+import android.os.IBinder;
+import android.os.RemoteException;
+
+import com.android.internal.view.IDragAndDropPermissions;
+
+import java.util.ArrayList;
+
+class DragAndDropPermissionsHandler extends IDragAndDropPermissions.Stub
+        implements IBinder.DeathRecipient {
+
+    private final int mSourceUid;
+    private final String mTargetPackage;
+    private final int mMode;
+    private final int mSourceUserId;
+    private final int mTargetUserId;
+
+    private final ArrayList<Uri> mUris = new ArrayList<Uri>();
+
+    private IBinder mActivityToken = null;
+    private IBinder mPermissionOwnerToken = null;
+
+    DragAndDropPermissionsHandler(ClipData clipData, int sourceUid, String targetPackage, int mode,
+                                  int sourceUserId, int targetUserId) {
+        mSourceUid = sourceUid;
+        mTargetPackage = targetPackage;
+        mMode = mode;
+        mSourceUserId = sourceUserId;
+        mTargetUserId = targetUserId;
+
+        clipData.collectUris(mUris);
+    }
+
+    @Override
+    public void take(IBinder activityToken) throws RemoteException {
+        if (mActivityToken != null || mPermissionOwnerToken != null) {
+            return;
+        }
+        mActivityToken = activityToken;
+
+        // Will throw if Activity is not found.
+        IBinder permissionOwner = ActivityManagerNative.getDefault().
+                getUriPermissionOwnerForActivity(mActivityToken);
+
+        doTake(permissionOwner);
+    }
+
+    private void doTake(IBinder permissionOwner) throws RemoteException {
+        long origId = Binder.clearCallingIdentity();
+        try {
+            for (int i = 0; i < mUris.size(); i++) {
+                ActivityManagerNative.getDefault().grantUriPermissionFromOwner(
+                        permissionOwner, mSourceUid, mTargetPackage, mUris.get(i), mMode,
+                        mSourceUserId, mTargetUserId);
+            }
+        } finally {
+            Binder.restoreCallingIdentity(origId);
+        }
+    }
+
+    @Override
+    public void takeTransient(IBinder permissionOwnerToken) throws RemoteException {
+        if (mActivityToken != null || mPermissionOwnerToken != null) {
+            return;
+        }
+        mPermissionOwnerToken = permissionOwnerToken;
+        mPermissionOwnerToken.linkToDeath(this, 0);
+
+        doTake(mPermissionOwnerToken);
+    }
+
+    @Override
+    public void release() throws RemoteException {
+        if (mActivityToken == null && mPermissionOwnerToken == null) {
+            return;
+        }
+
+        IBinder permissionOwner = null;
+        if (mActivityToken != null) {
+            try {
+                permissionOwner = ActivityManagerNative.getDefault().
+                        getUriPermissionOwnerForActivity(mActivityToken);
+            } catch (Exception e) {
+                // Activity is destroyed, permissions already revoked.
+                return;
+            } finally {
+                mActivityToken = null;
+            }
+        } else {
+            permissionOwner = mPermissionOwnerToken;
+            mPermissionOwnerToken.unlinkToDeath(this, 0);
+            mPermissionOwnerToken = null;
+        }
+
+        for (int i = 0; i < mUris.size(); ++i) {
+            ActivityManagerNative.getDefault().revokeUriPermissionFromOwner(
+                    permissionOwner, mUris.get(i), mMode, mSourceUserId);
+        }
+    }
+
+    @Override
+    public void binderDied() {
+        try {
+            release();
+        } catch (RemoteException e) {
+            // Cannot happen, local call.
+        }
+    }
+}
diff --git a/services/core/java/com/android/server/wm/DragState.java b/services/core/java/com/android/server/wm/DragState.java
index aace5e7..0539b05 100644
--- a/services/core/java/com/android/server/wm/DragState.java
+++ b/services/core/java/com/android/server/wm/DragState.java
@@ -59,7 +59,7 @@
 import com.android.server.wm.WindowManagerService.DragInputEventReceiver;
 import com.android.server.wm.WindowManagerService.H;
 
-import com.android.internal.view.IDropPermissions;
+import com.android.internal.view.IDragAndDropPermissions;
 
 import java.util.ArrayList;
 
@@ -420,12 +420,7 @@
     void notifyLocationLw(float x, float y) {
         // Tell the affected window
         WindowState touchedWin = mDisplayContent.getTouchableWinAtPointLocked(x, y);
-        if (touchedWin == null) {
-            if (DEBUG_DRAG) Slog.d(TAG_WM, "No touched win at x=" + x + " y=" + y);
-            return;
-        }
-
-        if (!isWindowNotified(touchedWin)) {
+        if (touchedWin != null && !isWindowNotified(touchedWin)) {
             // The drag point is over a window which was not notified about a drag start.
             // Pretend it's over empty space.
             touchedWin = null;
@@ -489,10 +484,10 @@
 
         final int targetUserId = UserHandle.getUserId(touchedWin.getOwningUid());
 
-        DropPermissionsHandler dropPermissions = null;
+        DragAndDropPermissionsHandler dragAndDropPermissions = null;
         if ((mFlags & View.DRAG_FLAG_GLOBAL) != 0 &&
                 (mFlags & DRAG_FLAGS_URI_ACCESS) != 0) {
-            dropPermissions = new DropPermissionsHandler(
+            dragAndDropPermissions = new DragAndDropPermissionsHandler(
                     mData,
                     mUid,
                     touchedWin.getOwningPackage(),
@@ -506,7 +501,7 @@
         final int myPid = Process.myPid();
         final IBinder token = touchedWin.mClient.asBinder();
         DragEvent evt = obtainDragEvent(touchedWin, DragEvent.ACTION_DROP, x, y,
-                null, null, mData, dropPermissions, false);
+                null, null, mData, dragAndDropPermissions, false);
         try {
             touchedWin.mClient.dispatchDragEvent(evt);
 
@@ -529,12 +524,12 @@
     private static DragEvent obtainDragEvent(WindowState win, int action,
             float x, float y, Object localState,
             ClipDescription description, ClipData data,
-            IDropPermissions dropPermissions,
+            IDragAndDropPermissions dragAndDropPermissions,
             boolean result) {
         final float winX = win.translateToWindowX(x);
         final float winY = win.translateToWindowY(y);
         return DragEvent.obtain(action, winX, winY, localState, description, data,
-                dropPermissions, result);
+                dragAndDropPermissions, result);
     }
 
     boolean stepAnimationLocked(long currentTimeMs) {
diff --git a/services/core/java/com/android/server/wm/DropPermissionsHandler.java b/services/core/java/com/android/server/wm/DropPermissionsHandler.java
deleted file mode 100644
index 5889fb8..0000000
--- a/services/core/java/com/android/server/wm/DropPermissionsHandler.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
-** Copyright 2015, The Android Open Source Project
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-**     http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
-
-package com.android.server.wm;
-
-import android.app.ActivityManagerNative;
-import android.content.ClipData;
-import android.net.Uri;
-import android.os.Binder;
-import android.os.IBinder;
-import android.os.RemoteException;
-
-import com.android.internal.view.IDropPermissions;
-
-import java.util.ArrayList;
-
-class DropPermissionsHandler extends IDropPermissions.Stub implements IBinder.DeathRecipient {
-
-    private final int mSourceUid;
-    private final String mTargetPackage;
-    private final int mMode;
-    private final int mSourceUserId;
-    private final int mTargetUserId;
-
-    private final ArrayList<Uri> mUris = new ArrayList<Uri>();
-
-    private IBinder mActivityToken = null;
-    private IBinder mPermissionOwnerToken = null;
-
-    DropPermissionsHandler(ClipData clipData, int sourceUid, String targetPackage, int mode,
-            int sourceUserId, int targetUserId) {
-        mSourceUid = sourceUid;
-        mTargetPackage = targetPackage;
-        mMode = mode;
-        mSourceUserId = sourceUserId;
-        mTargetUserId = targetUserId;
-
-        clipData.collectUris(mUris);
-    }
-
-    @Override
-    public void take(IBinder activityToken) throws RemoteException {
-        if (mActivityToken != null || mPermissionOwnerToken != null) {
-            return;
-        }
-        mActivityToken = activityToken;
-
-        // Will throw if Activity is not found.
-        IBinder permissionOwner = ActivityManagerNative.getDefault().
-                getUriPermissionOwnerForActivity(mActivityToken);
-
-        doTake(permissionOwner);
-    }
-
-    private void doTake(IBinder permissionOwner) throws RemoteException {
-        long origId = Binder.clearCallingIdentity();
-        try {
-            for (int i = 0; i < mUris.size(); i++) {
-                ActivityManagerNative.getDefault().grantUriPermissionFromOwner(
-                        permissionOwner, mSourceUid, mTargetPackage, mUris.get(i), mMode,
-                        mSourceUserId, mTargetUserId);
-            }
-        } finally {
-            Binder.restoreCallingIdentity(origId);
-        }
-    }
-
-    @Override
-    public void takeTransient(IBinder permissionOwnerToken) throws RemoteException {
-        if (mActivityToken != null || mPermissionOwnerToken != null) {
-            return;
-        }
-        mPermissionOwnerToken = permissionOwnerToken;
-        mPermissionOwnerToken.linkToDeath(this, 0);
-
-        doTake(mPermissionOwnerToken);
-    }
-
-    @Override
-    public void release() throws RemoteException {
-        if (mActivityToken == null && mPermissionOwnerToken == null) {
-            return;
-        }
-
-        IBinder permissionOwner = null;
-        if (mActivityToken != null) {
-            try {
-                permissionOwner = ActivityManagerNative.getDefault().
-                        getUriPermissionOwnerForActivity(mActivityToken);
-            } catch (Exception e) {
-                // Activity is destroyed, permissions already revoked.
-                return;
-            } finally {
-                mActivityToken = null;
-            }
-        } else {
-            permissionOwner = mPermissionOwnerToken;
-            mPermissionOwnerToken.unlinkToDeath(this, 0);
-            mPermissionOwnerToken = null;
-        }
-
-        for (int i = 0; i < mUris.size(); ++i) {
-            ActivityManagerNative.getDefault().revokeUriPermissionFromOwner(
-                    permissionOwner, mUris.get(i), mMode, mSourceUserId);
-        }
-    }
-
-    @Override
-    public void binderDied() {
-        try {
-            release();
-        } catch (RemoteException e) {
-            // Cannot happen, local call.
-        }
-    }
-}
diff --git a/services/core/java/com/android/server/wm/Task.java b/services/core/java/com/android/server/wm/Task.java
index 7b16dbe..6925fa5 100644
--- a/services/core/java/com/android/server/wm/Task.java
+++ b/services/core/java/com/android/server/wm/Task.java
@@ -27,6 +27,7 @@
 import static com.android.server.wm.WindowManagerDebugConfig.TAG_WITH_CLASS_NAME;
 import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
 import static com.android.server.wm.WindowManagerService.H.RESIZE_TASK;
+import static android.view.WindowManager.LayoutParams.TYPE_BASE_APPLICATION;
 
 import android.app.ActivityManager.StackId;
 import android.content.pm.ActivityInfo;
@@ -456,6 +457,11 @@
     /** Bounds of the task to be used for dimming, as well as touch related tests. */
     @Override
     public void getDimBounds(Rect out) {
+        final DisplayContent displayContent = mStack.getDisplayContent();
+        // It doesn't matter if we in particular are part of the resize, since we couldn't have
+        // a DimLayer anyway if we weren't visible.
+        final boolean dockedResizing = displayContent != null ?
+                displayContent.mDividerControllerLocked.isResizing() : false;
         if (useCurrentBounds()) {
             if (inFreeformWorkspace() && getMaxVisibleBounds(out)) {
                 return;
@@ -464,8 +470,16 @@
             if (!mFullscreen) {
                 // When minimizing the docked stack when going home, we don't adjust the task bounds
                 // so we need to intersect the task bounds with the stack bounds here.
-                mStack.getBounds(mTmpRect);
-                mTmpRect.intersect(mBounds);
+                //
+                // If we are Docked Resizing with snap points, the task bounds could be smaller than the stack
+                // bounds and so we don't even want to use them. Even if the app should not be resized the Dim
+                // should keep up with the divider.
+                if (dockedResizing) {
+                    mStack.getBounds(out);
+                } else {
+                    mStack.getBounds(mTmpRect);
+                    mTmpRect.intersect(mBounds);
+                }
                 out.set(mTmpRect);
             } else {
                 out.set(mBounds);
@@ -476,7 +490,7 @@
         // The bounds has been adjusted to accommodate for a docked stack, but the docked stack
         // is not currently visible. Go ahead a represent it as fullscreen to the rest of the
         // system.
-        mStack.getDisplayContent().getLogicalDisplayRect(out);
+        displayContent.getLogicalDisplayRect(out);
     }
 
     void setDragResizing(boolean dragResizing, int dragResizeMode) {
@@ -509,6 +523,22 @@
         return mDragResizeMode;
     }
 
+    /**
+     * Adds all of the tasks windows to {@link WindowManagerService#mWaitingForDrawn} if drag
+     * resizing state of the window has been changed.
+     */
+    void addWindowsWaitingForDrawnIfResizingChanged() {
+        for (int activityNdx = mAppTokens.size() - 1; activityNdx >= 0; --activityNdx) {
+            final ArrayList<WindowState> windows = mAppTokens.get(activityNdx).allAppWindows;
+            for (int winNdx = windows.size() - 1; winNdx >= 0; --winNdx) {
+                final WindowState win = windows.get(winNdx);
+                if (win.isDragResizeChanged()) {
+                    mService.mWaitingForDrawn.add(win);
+                }
+            }
+        }
+    }
+
     void updateDisplayInfo(final DisplayContent displayContent) {
         if (displayContent == null) {
             return;
@@ -561,7 +591,17 @@
 
                     // If we are not drag resizing, force recreating of a new surface so updating
                     // the content and positioning that surface will be in sync.
-                    if (!win.computeDragResizing()) {
+                    //
+                    // As we use this flag as a hint to freeze surface boundary updates,
+                    // we'd like to only apply this to TYPE_BASE_APPLICATION,
+                    // windows of TYPE_APPLICATION like dialogs, could appear
+                    // to not be drag resizing while they resize, but we'd
+                    // still like to manipulate their frame to update crop, etc...
+                    //
+                    // Anyway we don't need to synchronize position and content updates for these
+                    // windows since they aren't at the base layer and could be moved around anyway.
+                    if (!win.computeDragResizing() && win.mAttrs.type == TYPE_BASE_APPLICATION &&
+                            !mStack.getBoundsAnimating() && !win.isGoneForLayoutLw()) {
                         win.mResizedWhileNotDragResizing = true;
                     }
                 }
@@ -619,6 +659,16 @@
         return false;
     }
 
+    boolean isVisible() {
+        for (int i = mAppTokens.size() - 1; i >= 0; i--) {
+            final AppWindowToken appToken = mAppTokens.get(i);
+            if (appToken.isVisible()) {
+                return true;
+            }
+        }
+        return false;
+    }
+
     boolean inHomeStack() {
         return mStack != null && mStack.mStackId == HOME_STACK_ID;
     }
diff --git a/services/core/java/com/android/server/wm/TaskStack.java b/services/core/java/com/android/server/wm/TaskStack.java
index 7074a83..037f316 100644
--- a/services/core/java/com/android/server/wm/TaskStack.java
+++ b/services/core/java/com/android/server/wm/TaskStack.java
@@ -26,6 +26,7 @@
 import static android.view.WindowManager.DOCKED_LEFT;
 import static android.view.WindowManager.DOCKED_RIGHT;
 import static android.view.WindowManager.DOCKED_TOP;
+import static com.android.server.wm.DragResizeMode.DRAG_RESIZE_MODE_DOCKED_DIVIDER;
 import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_TASK_MOVEMENT;
 import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
 import static com.android.server.wm.WindowManagerService.H.RESIZE_STACK;
@@ -40,6 +41,7 @@
 import android.util.SparseArray;
 import android.view.DisplayInfo;
 import android.view.Surface;
+import android.view.SurfaceControl;
 
 import com.android.internal.policy.DividerSnapAlgorithm;
 import com.android.internal.policy.DividerSnapAlgorithm.SnapTarget;
@@ -51,14 +53,12 @@
 
 public class TaskStack implements DimLayer.DimLayerUser,
         BoundsAnimationController.AnimateBoundsUser {
+    /** Minimum size of an adjusted stack bounds relative to original stack bounds. Used to
+     * restrict IME adjustment so that a min portion of top stack remains visible.*/
+    private static final float ADJUSTED_STACK_FRACTION_MIN = 0.3f;
 
-    // If the stack should be resized to fullscreen.
-    private static final boolean FULLSCREEN = true;
-
-    // When we have a top-bottom split screen, we shift the bottom stack up to accommodate
-    // the IME window. The static flag below controls whether to run animation when the
-    // IME window goes away.
-    private static final boolean ANIMATE_IME_GOING_AWAY = false;
+    /** Dimming amount for non-focused stack when stacks are IME-adjusted. */
+    private static final float IME_ADJUST_DIM_AMOUNT = 0.25f;
 
     /** Unique identifier */
     final int mStackId;
@@ -83,6 +83,12 @@
     /** Stack bounds adjusted to screen content area (taking into account IM windows, etc.) */
     private final Rect mAdjustedBounds = new Rect();
 
+    /**
+     * Fully adjusted IME bounds. These are different from {@link #mAdjustedBounds} because they
+     * represent the state when the animation has ended.
+     */
+    private final Rect mFullyAdjustedImeBounds = new Rect();
+
     /** Whether mBounds is fullscreen */
     private boolean mFullscreen = true;
 
@@ -112,18 +118,21 @@
     // Whether the stack and all its tasks is currently being drag-resized
     private boolean mDragResizing;
 
-    private final Rect mLastContentBounds = new Rect();
     private final Rect mTmpAdjustedBounds = new Rect();
     private boolean mAdjustedForIme;
     private boolean mImeGoingAway;
     private WindowState mImeWin;
     private float mMinimizeAmount;
+    private float mAdjustImeAmount;
+    private float mAdjustDividerAmount;
     private final int mDockedStackMinimizeThickness;
 
-    // If this is true, the task will be down or upscaled
-    // to perfectly fit the region it would have been cropped
-    // to.
-    private boolean mForceScaleToCrop = false;
+    // If this is true, we are in the bounds animating mode.
+    // The task will be down or upscaled to perfectly fit the
+    // region it would have been cropped to. We may also avoid
+    // certain logic we would otherwise apply while resizing,
+    // while resizing in the bounds animating mode.
+    private boolean mBoundsAnimating = false;
     // By default, movement animations are applied to all
     // window movement. If this is true, animations will not
     // be applied within this stack. This is useful for example
@@ -211,21 +220,26 @@
      * the normal task bounds.
      *
      * @param bounds The adjusted bounds.
-     * @param keepInsets Whether to keep the insets from the original bounds or to calculate new
-     *                   ones depending on the adjusted bounds.
-     * @return true if the adjusted bounds has changed.
      */
-    private boolean setAdjustedBounds(Rect bounds, boolean keepInsets) {
-        if (mAdjustedBounds.equals(bounds)) {
-            return false;
+    private void setAdjustedBounds(Rect bounds) {
+        if (mAdjustedBounds.equals(bounds) && !isAnimatingForIme()) {
+            return;
         }
 
         mAdjustedBounds.set(bounds);
         final boolean adjusted = !mAdjustedBounds.isEmpty();
-        alignTasksToAdjustedBounds(adjusted ? mAdjustedBounds : mBounds,
-                adjusted && keepInsets ? mBounds : null);
+        Rect insetBounds = null;
+        if (adjusted && isAdjustedForMinimizedDock()) {
+            insetBounds = mBounds;
+        } else if (adjusted && isAdjustedForIme()) {
+            if (mImeGoingAway) {
+                insetBounds = mBounds;
+            } else {
+                insetBounds = mFullyAdjustedImeBounds;
+            }
+        }
+        alignTasksToAdjustedBounds(adjusted ? mAdjustedBounds : mBounds, insetBounds);
         mDisplayContent.layoutNeeded = true;
-        return true;
     }
 
     private void alignTasksToAdjustedBounds(Rect adjustedBounds, Rect tempInsetBounds) {
@@ -243,7 +257,12 @@
                 task.scrollLocked(mTmpRect2);
             } else if (task.isResizeable() && task.mOverrideConfig != Configuration.EMPTY) {
                 task.getBounds(mTmpRect2);
-                mTmpRect2.offsetTo(adjustedBounds.left, adjustedBounds.top);
+                if (mAdjustedForIme && getDockSide() == DOCKED_TOP) {
+                    int offsetY = adjustedBounds.bottom - mTmpRect2.bottom;
+                    mTmpRect2.offset(0, offsetY);
+                } else {
+                    mTmpRect2.offsetTo(adjustedBounds.left, adjustedBounds.top);
+                }
                 task.setTempInsetBounds(tempInsetBounds);
                 task.resizeLocked(mTmpRect2, task.mOverrideConfig, false /* forced */);
             }
@@ -482,7 +501,7 @@
                 final ArrayList<WindowState> windows = activities.get(activityNdx).allAppWindows;
                 for (int winNdx = windows.size() - 1; winNdx >= 0; --winNdx) {
                     final WindowStateAnimator winAnimator = windows.get(winNdx).mWinAnimator;
-                    if (winAnimator.isAnimating() || winAnimator.mWin.mAnimatingExit) {
+                    if (winAnimator.isAnimationSet() || winAnimator.mWin.mAnimatingExit) {
                         return true;
                     }
                 }
@@ -535,6 +554,15 @@
         if (toTop) {
             mDisplayContent.moveStack(this, true);
         }
+
+        if (StackId.windowsAreScaleable(mStackId)) {
+            // We force windows out of SCALING_MODE_FREEZE
+            // so that we can continue to animate them
+            // while a resize is pending.
+            forceWindowsScaleable(task, true);
+        } else {
+            forceWindowsScaleable(task, false);
+        }
         EventLog.writeEvent(EventLogTags.WM_TASK_MOVED, task.mTaskId, toTop ? 1 : 0, position);
     }
 
@@ -625,9 +653,12 @@
         Rect bounds = null;
         final TaskStack dockedStack = mService.mStackIdToStack.get(DOCKED_STACK_ID);
         if (mStackId == DOCKED_STACK_ID
-                || (dockedStack != null && StackId.isResizeableByDockedStack(mStackId))) {
+                || (dockedStack != null && StackId.isResizeableByDockedStack(mStackId)
+                        && !dockedStack.isFullscreen())) {
             // The existence of a docked stack affects the size of other static stack created since
-            // the docked stack occupies a dedicated region on screen.
+            // the docked stack occupies a dedicated region on screen, but only if the dock stack is
+            // not fullscreen. If it's fullscreen, it means that we are in the transition of
+            // dismissing it, so we must not resize this stack.
             bounds = new Rect();
             displayContent.getLogicalDisplayRect(mTmpRect);
             mTmpRect2.setEmpty();
@@ -828,17 +859,19 @@
      * @param imeWin The IME window.
      */
     void setAdjustedForIme(WindowState imeWin) {
-        mAdjustedForIme = true;
         mImeWin = imeWin;
         mImeGoingAway = false;
+        if (!mAdjustedForIme) {
+            mAdjustedForIme = true;
+            mAdjustImeAmount = 0f;
+            mAdjustDividerAmount = 0f;
+            updateAdjustForIme(0f, 0f, true /* force */);
+        }
     }
 
     boolean isAdjustedForIme() {
         return mAdjustedForIme || mImeGoingAway;
     }
-    void clearImeGoingAway() {
-        mImeGoingAway = false;
-    }
 
     boolean isAnimatingForIme() {
         return mImeWin != null && mImeWin.isAnimatingLw();
@@ -852,16 +885,16 @@
      *
      * @return true if a traversal should be performed after the adjustment.
      */
-    boolean updateAdjustForIme() {
-        boolean stopped = false;
-        if (mImeGoingAway && (!ANIMATE_IME_GOING_AWAY || !isAnimatingForIme())) {
-            mImeWin = null;
-            mAdjustedForIme = false;
-            stopped = true;
+    boolean updateAdjustForIme(float adjustAmount, float adjustDividerAmount, boolean force) {
+        if (adjustAmount != mAdjustImeAmount
+                || adjustDividerAmount != mAdjustDividerAmount || force) {
+            mAdjustImeAmount = adjustAmount;
+            mAdjustDividerAmount = adjustDividerAmount;
+            updateAdjustedBounds();
+            return isVisibleForUserLocked();
+        } else {
+            return false;
         }
-        // Make sure to run a traversal when the animation stops so that the stack
-        // is moved to its final position.
-        return updateAdjustedBounds() || stopped;
     }
 
     /**
@@ -875,7 +908,10 @@
             mImeWin = null;
             mAdjustedForIme = false;
             mImeGoingAway = false;
+            mAdjustImeAmount = 0f;
+            mAdjustDividerAmount = 0f;
             updateAdjustedBounds();
+            mService.setResizeDimLayer(false, mStackId, 1.0f);
         } else {
             mImeGoingAway |= mAdjustedForIme;
         }
@@ -901,10 +937,37 @@
         return mMinimizeAmount != 0f;
     }
 
+    /**
+     * Puts all visible tasks that are adjusted for IME into resizing mode and adds the windows
+     * to the list of to be drawn windows the service is waiting for.
+     */
+    void beginImeAdjustAnimation() {
+        for (int j = mTasks.size() - 1; j >= 0; j--) {
+            final Task task = mTasks.get(j);
+            if (task.isVisibleForUser()) {
+                task.setDragResizing(true, DRAG_RESIZE_MODE_DOCKED_DIVIDER);
+                task.addWindowsWaitingForDrawnIfResizingChanged();
+            }
+        }
+    }
+
+    /**
+     * Resets the resizing state of all windows.
+     */
+    void endImeAdjustAnimation() {
+        for (int j = mTasks.size() - 1; j >= 0; j--) {
+            mTasks.get(j).setDragResizing(false, DRAG_RESIZE_MODE_DOCKED_DIVIDER);
+        }
+    }
+
+    int getMinTopStackBottom(final Rect displayContentRect, int originalStackBottom) {
+        return displayContentRect.top + (int)
+                ((originalStackBottom - displayContentRect.top) * ADJUSTED_STACK_FRACTION_MIN);
+    }
+
     private boolean adjustForIME(final WindowState imeWin) {
         final int dockedSide = getDockSide();
         final boolean dockedTopOrBottom = dockedSide == DOCKED_TOP || dockedSide == DOCKED_BOTTOM;
-        final Rect adjustedBounds = mTmpAdjustedBounds;
         if (imeWin == null || !dockedTopOrBottom) {
             return false;
         }
@@ -917,41 +980,56 @@
         contentBounds.set(displayContentRect);
         int imeTop = Math.max(imeWin.getFrameLw().top, contentBounds.top);
 
-        // if IME window is animating, get its actual vertical shown position (but no smaller than
-        // the final target vertical position)
-        if (imeWin.isAnimatingLw()) {
-            imeTop = Math.max(imeTop, imeWin.getShownPositionLw().y);
-        }
         imeTop += imeWin.getGivenContentInsetsLw().top;
         if (contentBounds.bottom > imeTop) {
             contentBounds.bottom = imeTop;
         }
 
-        // If content bounds not changing, nothing to do.
-        if (mLastContentBounds.equals(contentBounds)) {
-            return true;
-        }
-
-        // Content bounds changed, need to apply adjustments depending on dock sides.
-        mLastContentBounds.set(contentBounds);
-        adjustedBounds.set(mBounds);
         final int yOffset = displayContentRect.bottom - contentBounds.bottom;
 
+        final int dividerWidth =
+                getDisplayContent().mDividerControllerLocked.getContentWidth();
+        final int dividerWidthInactive =
+                getDisplayContent().mDividerControllerLocked.getContentWidthInactive();
+
         if (dockedSide == DOCKED_TOP) {
             // If this stack is docked on top, we make it smaller so the bottom stack is not
-            // occluded by IME. We shift its bottom up by the height of the IME (capped by
-            // the display content rect). Note that we don't change the task bounds.
-            adjustedBounds.bottom = Math.max(
-                    adjustedBounds.bottom - yOffset, displayContentRect.top);
+            // occluded by IME. We shift its bottom up by the height of the IME, but
+            // leaves at least 30% of the top stack visible.
+            final int minTopStackBottom =
+                    getMinTopStackBottom(displayContentRect, mBounds.bottom);
+            final int bottom = Math.max(
+                    mBounds.bottom - yOffset + dividerWidth - dividerWidthInactive,
+                    minTopStackBottom);
+            mTmpAdjustedBounds.set(mBounds);
+            mTmpAdjustedBounds.bottom =
+                    (int) (mAdjustImeAmount * bottom + (1 - mAdjustImeAmount) * mBounds.bottom);
+            mFullyAdjustedImeBounds.set(mBounds);
         } else {
-            // If this stack is docked on bottom, we shift it up so that it's not occluded by
-            // IME. We try to move it up by the height of the IME window (although the best
-            // we could do is to make the top stack fully collapsed).
-            final int dividerWidth = getDisplayContent().mDividerControllerLocked
-                    .getContentWidth();
-            adjustedBounds.top = Math.max(
-                    adjustedBounds.top - yOffset, displayContentRect.top + dividerWidth);
-            adjustedBounds.bottom = adjustedBounds.top + mBounds.height();
+            // When the stack is on bottom and has no focus, it's only adjusted for divider width.
+            final int dividerWidthDelta = dividerWidthInactive - dividerWidth;
+
+            // When the stack is on bottom and has focus, it needs to be moved up so as to
+            // not occluded by IME, and at the same time adjusted for divider width.
+            // We try to move it up by the height of the IME window, but only to the extent
+            // that leaves at least 30% of the top stack visible.
+            // 'top' is where the top of bottom stack will move to in this case.
+            final int topBeforeImeAdjust = mBounds.top - dividerWidth + dividerWidthInactive;
+            final int minTopStackBottom =
+                    getMinTopStackBottom(displayContentRect, mBounds.top - dividerWidth);
+            final int top = Math.max(
+                    mBounds.top - yOffset, minTopStackBottom + dividerWidthInactive);
+
+            mTmpAdjustedBounds.set(mBounds);
+            // Account for the adjustment for IME and divider width separately.
+            // (top - topBeforeImeAdjust) is the amount of movement due to IME only,
+            // and dividerWidthDelta is due to divider width change only.
+            mTmpAdjustedBounds.top = mBounds.top +
+                    (int) (mAdjustImeAmount * (top - topBeforeImeAdjust) +
+                            mAdjustDividerAmount * dividerWidthDelta);
+            mFullyAdjustedImeBounds.set(mBounds);
+            mFullyAdjustedImeBounds.top = top;
+            mFullyAdjustedImeBounds.bottom = top + mBounds.height();
         }
         return true;
     }
@@ -1007,7 +1085,7 @@
     /**
      * Updates the adjustment depending on it's current state.
      */
-    boolean updateAdjustedBounds() {
+    void updateAdjustedBounds() {
         boolean adjust = false;
         if (mMinimizeAmount != 0f) {
             adjust = adjustForMinimizedDockedStack(mMinimizeAmount);
@@ -1016,9 +1094,15 @@
         }
         if (!adjust) {
             mTmpAdjustedBounds.setEmpty();
-            mLastContentBounds.setEmpty();
         }
-        return setAdjustedBounds(mTmpAdjustedBounds, isAdjustedForMinimizedDockedStack());
+        setAdjustedBounds(mTmpAdjustedBounds);
+
+        final boolean isImeTarget = (mService.getImeTargetStackLocked() == this);
+        if (mAdjustedForIme && adjust && !isImeTarget) {
+            final float alpha = Math.max(mAdjustImeAmount, mAdjustDividerAmount)
+                    * IME_ADJUST_DIM_AMOUNT;
+            mService.setResizeDimLayer(true, mStackId, alpha);
+        }
     }
 
     boolean isAdjustedForMinimizedDockedStack() {
@@ -1030,6 +1114,9 @@
         pw.println(prefix + "mDeferDetach=" + mDeferDetach);
         pw.println(prefix + "mFullscreen=" + mFullscreen);
         pw.println(prefix + "mBounds=" + mBounds.toShortString());
+        if (!mAdjustedBounds.isEmpty()) {
+            pw.println(prefix + "mAdjustedBounds=" + mAdjustedBounds.toShortString());
+        }
         for (int taskNdx = mTasks.size() - 1; taskNdx >= 0; taskNdx--) {
             mTasks.get(taskNdx).dump(prefix + "  ", pw);
         }
@@ -1158,7 +1245,7 @@
         return mDragResizing;
     }
 
-    private void setDragResizingLocked(boolean resizing) {
+    void setDragResizingLocked(boolean resizing) {
         if (mDragResizing == resizing) {
             return;
         }
@@ -1201,11 +1288,30 @@
         return true;
     }
 
+    void forceWindowsScaleable(Task task, boolean force) {
+        SurfaceControl.openTransaction();
+        try {
+            final ArrayList<AppWindowToken> activities = task.mAppTokens;
+            for (int activityNdx = activities.size() - 1; activityNdx >= 0; --activityNdx) {
+                final ArrayList<WindowState> windows = activities.get(activityNdx).allAppWindows;
+                for (int winNdx = windows.size() - 1; winNdx >= 0; --winNdx) {
+                    final WindowStateAnimator winAnimator = windows.get(winNdx).mWinAnimator;
+                    if (winAnimator == null || !winAnimator.hasSurface()) {
+                        continue;
+                    }
+                    winAnimator.mSurfaceController.forceScaleableInTransaction(force);
+                }
+            }
+        } finally {
+            SurfaceControl.closeTransaction();
+        }
+    }
+
     @Override  // AnimatesBounds
     public void onAnimationStart() {
         synchronized (mService.mWindowMap) {
             mFreezeMovementAnimations = true;
-            mForceScaleToCrop = true;
+            mBoundsAnimating = true;
         }
     }
 
@@ -1213,7 +1319,7 @@
     public void onAnimationEnd() {
         synchronized (mService.mWindowMap) {
             mFreezeMovementAnimations = false;
-            mForceScaleToCrop = false;
+            mBoundsAnimating = false;
             mService.requestTraversal();
         }
         if (mStackId == PINNED_STACK_ID) {
@@ -1244,6 +1350,10 @@
     }
 
     public boolean getForceScaleToCrop() {
-        return mForceScaleToCrop;
+        return mBoundsAnimating;
+    }
+
+    public boolean getBoundsAnimating() {
+        return mBoundsAnimating;
     }
 }
diff --git a/services/core/java/com/android/server/wm/WallpaperController.java b/services/core/java/com/android/server/wm/WallpaperController.java
index e44b0f3..88028be 100644
--- a/services/core/java/com/android/server/wm/WallpaperController.java
+++ b/services/core/java/com/android/server/wm/WallpaperController.java
@@ -146,7 +146,7 @@
     }
 
     boolean isWallpaperTargetAnimating() {
-        return mWallpaperTarget != null && mWallpaperTarget.mWinAnimator.isAnimating()
+        return mWallpaperTarget != null && mWallpaperTarget.mWinAnimator.isAnimationSet()
                 && !mWallpaperTarget.mWinAnimator.isDummyAnimation();
     }
 
@@ -516,7 +516,7 @@
             if (hasWallpaper && w.isOnScreen() && (mWallpaperTarget == w || w.isDrawFinishedLw())) {
                 if (DEBUG_WALLPAPER) Slog.v(TAG, "Found wallpaper target: #" + i + "=" + w);
                 result.setWallpaperTarget(w, i);
-                if (w == mWallpaperTarget && w.mWinAnimator.isAnimating()) {
+                if (w == mWallpaperTarget && w.mWinAnimator.isAnimationSet()) {
                     // The current wallpaper target is animating, so we'll look behind it for
                     // another possible target and figure out what is going on later.
                     if (DEBUG_WALLPAPER) Slog.v(TAG,
diff --git a/services/core/java/com/android/server/wm/WindowAnimator.java b/services/core/java/com/android/server/wm/WindowAnimator.java
index 6bc633f..eae7838 100644
--- a/services/core/java/com/android/server/wm/WindowAnimator.java
+++ b/services/core/java/com/android/server/wm/WindowAnimator.java
@@ -670,6 +670,7 @@
         if (SHOW_TRANSACTIONS) Slog.i(
                 TAG, ">>> OPEN TRANSACTION animateLocked");
         SurfaceControl.openTransaction();
+        SurfaceControl.setAnimationTransaction();
         try {
             final int numDisplays = mDisplayContentsAnimators.size();
             for (int i = 0; i < numDisplays; i++) {
diff --git a/services/core/java/com/android/server/wm/WindowLayersController.java b/services/core/java/com/android/server/wm/WindowLayersController.java
index 6bdcd42..072e10f 100644
--- a/services/core/java/com/android/server/wm/WindowLayersController.java
+++ b/services/core/java/com/android/server/wm/WindowLayersController.java
@@ -27,6 +27,7 @@
 import static android.view.WindowManager.LayoutParams.TYPE_DOCK_DIVIDER;
 import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_LAYERS;
 import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
+import static com.android.server.wm.WindowManagerService.LAYER_OFFSET_DIM;
 import static com.android.server.wm.WindowManagerService.WINDOW_LAYER_MULTIPLIER;
 
 /**
@@ -59,6 +60,7 @@
     private int mHighestApplicationLayer = 0;
     private ArrayDeque<WindowState> mPinnedWindows = new ArrayDeque<>();
     private ArrayDeque<WindowState> mDockedWindows = new ArrayDeque<>();
+    private ArrayDeque<WindowState> mInputMethodWindows = new ArrayDeque<>();
     private WindowState mDockDivider = null;
     private ArrayDeque<WindowState> mReplacingWindows = new ArrayDeque<>();
 
@@ -149,7 +151,7 @@
      *         above all application surfaces.
      */
     int getResizeDimLayer() {
-        return mDockDivider.mLayer - 1;
+        return (mDockDivider != null) ? mDockDivider.mLayer - 1 : LAYER_OFFSET_DIM;
     }
 
     private void logDebugLayers(WindowList windows) {
@@ -166,6 +168,7 @@
     private void clear() {
         mHighestApplicationLayer = 0;
         mPinnedWindows.clear();
+        mInputMethodWindows.clear();
         mDockedWindows.clear();
         mReplacingWindows.clear();
         mDockDivider = null;
@@ -179,6 +182,10 @@
         if (w.mWillReplaceWindow) {
             mReplacingWindows.add(w);
         }
+        if (w.mIsImWindow) {
+            mInputMethodWindows.add(w);
+            return;
+        }
         final TaskStack stack = w.getStack();
         if (stack == null) {
             return;
@@ -200,9 +207,14 @@
 
         layer = assignAndIncreaseLayerIfNeeded(mDockDivider, layer);
 
-        if (mDockDivider != null && mDockDivider.isVisibleLw()
-                && mService.mInputMethodWindow != null) {
-            layer = assignAndIncreaseLayerIfNeeded(mService.mInputMethodWindow, layer);
+        if (mDockDivider != null && mDockDivider.isVisibleLw()) {
+            while (!mInputMethodWindows.isEmpty()) {
+                final WindowState w = mInputMethodWindows.remove();
+                // Only ever move IME windows up, else we brake IME for windows above the divider.
+                if (layer > w.mLayer) {
+                    layer = assignAndIncreaseLayerIfNeeded(w, layer);
+                }
+            }
         }
 
         // We know that we will be animating a relaunching window in the near future, which will
@@ -218,7 +230,7 @@
     }
 
     private int assignAndIncreaseLayerIfNeeded(WindowState win, int layer) {
-        if (win != null && layer > win.mLayer) {
+        if (win != null) {
             assignAnimLayer(win, layer);
             // Make sure we leave space inbetween normal windows for dims and such.
             layer += WINDOW_LAYER_MULTIPLIER;
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java
index 57dc97a..0b66959 100644
--- a/services/core/java/com/android/server/wm/WindowManagerService.java
+++ b/services/core/java/com/android/server/wm/WindowManagerService.java
@@ -120,7 +120,6 @@
 import android.view.WindowManagerPolicy.PointerEventListener;
 import android.view.animation.Animation;
 import android.view.inputmethod.InputMethodManagerInternal;
-import android.widget.Toast;
 
 import com.android.internal.R;
 import com.android.internal.app.IAssistScreenshotReceiver;
@@ -174,6 +173,7 @@
 import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED;
 import static android.view.WindowManager.DOCKED_BOTTOM;
 import static android.view.WindowManager.DOCKED_INVALID;
+import static android.view.WindowManager.DOCKED_TOP;
 import static android.view.WindowManager.LayoutParams.FIRST_APPLICATION_WINDOW;
 import static android.view.WindowManager.LayoutParams.FIRST_SUB_WINDOW;
 import static android.view.WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM;
@@ -646,17 +646,24 @@
 
         @Override
         public void onChange(boolean selfChange, Uri uri) {
+            if (uri == null) {
+                return;
+            }
+
             if (mDisplayInversionEnabledUri.equals(uri)) {
                 updateCircularDisplayMaskIfNeeded();
             } else {
                 @UpdateAnimationScaleMode
                 final int mode;
-                if (uri.equals(mWindowAnimationScaleUri)) {
+                if (mWindowAnimationScaleUri.equals(uri)) {
                     mode = WINDOW_ANIMATION_SCALE;
-                } else if (uri.equals(mTransitionAnimationScaleUri)) {
+                } else if (mTransitionAnimationScaleUri.equals(uri)) {
                     mode = TRANSITION_ANIMATION_SCALE;
-                } else { // uri.equals(mAnimationDurationScaleUri)
+                } else if (mAnimationDurationScaleUri.equals(uri)) {
                     mode = ANIMATION_DURATION_SCALE;
+                } else {
+                    // Ignoring unrecognized content changes
+                    return;
                 }
                 Message m = mH.obtainMessage(H.UPDATE_ANIMATION_SCALE, mode, 0);
                 mH.sendMessage(m);
@@ -839,6 +846,13 @@
     // since they won't be notified through the app window animator.
     final List<IBinder> mNoAnimationNotifyOnTransitionFinished = new ArrayList<>();
 
+    // List of displays to reconfigure after configuration changes.
+    // Some of the information reported for a display is dependent on resources to do the right
+    // calculations. For example, {@link DisplayInfo#smallestNominalAppWidth} and company are
+    // dependent on the height and width of the status and nav bar which change depending on the
+    // current configuration.
+    private final DisplayContentList mReconfigureOnConfigurationChanged = new DisplayContentList();
+
     /** Listener to notify activity manager about app transitions. */
     private final WindowManagerInternal.AppTransitionListener mActivityManagerAppTransitionNotifier
             = new WindowManagerInternal.AppTransitionListener() {
@@ -1518,7 +1532,7 @@
 
                 if (highestTarget != null) {
                     if (DEBUG_INPUT_METHOD) Slog.v(TAG_WM, mAppTransition + " " + highestTarget
-                            + " animating=" + highestTarget.mWinAnimator.isAnimating()
+                            + " animating=" + highestTarget.mWinAnimator.isAnimationSet()
                             + " layer=" + highestTarget.mWinAnimator.mAnimLayer
                             + " new layer=" + w.mWinAnimator.mAnimLayer);
 
@@ -1528,7 +1542,7 @@
                         mInputMethodTargetWaitingAnim = true;
                         mInputMethodTarget = highestTarget;
                         return highestPos + 1;
-                    } else if (highestTarget.mWinAnimator.isAnimating() &&
+                    } else if (highestTarget.mWinAnimator.isAnimationSet() &&
                             highestTarget.mWinAnimator.mAnimLayer > w.mWinAnimator.mAnimLayer) {
                         // If the window we are currently targeting is involved
                         // with an animation, and it is on top of the next target
@@ -1556,6 +1570,18 @@
                     mLayersController.setInputMethodAnimLayerAdjustment(0);
                 }
             }
+
+            // If the docked divider is visible, we still need to go through this whole
+            // excercise to find the appropriate input method target (used for animations
+            // and dialog adjustments), but for purposes of Z ordering we simply wish to
+            // place it above the docked divider. Unless it is already above the divider.
+            WindowState dockedDivider = w.mDisplayContent.mDividerControllerLocked.getWindow();
+            if (dockedDivider != null && dockedDivider.isVisibleLw()) {
+                int dividerIndex = windows.indexOf(dockedDivider);
+                if (dividerIndex > 0 && dividerIndex > i) {
+                    return dividerIndex + 1;
+                }
+            }
             return i+1;
         }
         if (willMove) {
@@ -1788,6 +1814,16 @@
         return true;
     }
 
+    private static boolean excludeWindowTypeFromTapOutTask(int windowType) {
+        switch (windowType) {
+            case TYPE_STATUS_BAR:
+            case TYPE_NAVIGATION_BAR:
+            case TYPE_INPUT_METHOD_DIALOG:
+                return true;
+        }
+        return false;
+    }
+
     public int addWindow(Session session, IWindow client, int seq,
             WindowManager.LayoutParams attrs, int viewVisibility, int displayId,
             Rect outContentInsets, Rect outStableInsets, Rect outOutsets,
@@ -1986,7 +2022,7 @@
 
             res = WindowManagerGlobal.ADD_OKAY;
 
-            if (type == TYPE_STATUS_BAR || type == TYPE_NAVIGATION_BAR) {
+            if (excludeWindowTypeFromTapOutTask(type)) {
                 displayContent.mTapExcludedWindows.add(win);
             }
 
@@ -2248,7 +2284,7 @@
                 + " mRemoveOnExit=" + win.mRemoveOnExit
                 + " mHasSurface=" + win.mHasSurface
                 + " surfaceShowing=" + win.mWinAnimator.getShown()
-                + " isAnimating=" + win.mWinAnimator.isAnimating()
+                + " isAnimationSet=" + win.mWinAnimator.isAnimationSet()
                 + " app-animation="
                 + (win.mAppToken != null ? win.mAppToken.mAppAnimator.animation : null)
                 + " mWillReplaceWindow=" + win.mWillReplaceWindow
@@ -2312,7 +2348,7 @@
                 }
             }
             final boolean isAnimating =
-                    winAnimator.isAnimating() && !winAnimator.isDummyAnimation();
+                    winAnimator.isAnimationSet() && !winAnimator.isDummyAnimation();
             final boolean lastWindowIsStartingWindow = startingWindow && appToken != null
                     && appToken.allAppWindows.size() == 1;
             // We delay the removal of a window if it has a showing surface that can be used to run
@@ -2378,7 +2414,7 @@
         }
 
         final int type = win.mAttrs.type;
-        if (type == TYPE_STATUS_BAR || type == TYPE_NAVIGATION_BAR) {
+        if (excludeWindowTypeFromTapOutTask(type)) {
             final DisplayContent displaycontent = win.getDisplayContent();
             displaycontent.mTapExcludedWindows.remove(win);
         }
@@ -2595,7 +2631,7 @@
 
     void repositionChild(Session session, IWindow client,
             int left, int top, int right, int bottom,
-            long deferTransactionUntilFrame, Rect outFrame) {
+            long frameNumber, Rect outFrame) {
         Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "repositionChild");
         long origId = Binder.clearCallingIdentity();
 
@@ -2631,10 +2667,8 @@
 
                         win.mWinAnimator.setSurfaceBoundariesLocked(false);
 
-                        if (deferTransactionUntilFrame > 0) {
-                            win.mWinAnimator.mSurfaceController.deferTransactionUntil(
-                                    win.mAttachedWindow.mWinAnimator.mSurfaceController.getHandle(),
-                                    deferTransactionUntilFrame);
+                        if (frameNumber > 0) {
+                            win.mWinAnimator.deferTransactionUntilParentFrame(frameNumber);
                         }
 
                     } finally {
@@ -2899,7 +2933,7 @@
             focusMayChange = isDefaultDisplay;
             win.mAnimatingExit = true;
             win.mWinAnimator.mAnimating = true;
-        } else if (win.mWinAnimator.isAnimating()) {
+        } else if (win.mWinAnimator.isAnimationSet()) {
             // Currently in a hide animation... turn this into
             // an exit.
             win.mAnimatingExit = true;
@@ -3256,7 +3290,7 @@
                         WindowState win = wtoken.windows.get(i);
                         displayContent = win.getDisplayContent();
 
-                        if (win.mWinAnimator.isAnimating()) {
+                        if (win.mWinAnimator.isAnimationSet()) {
                             delayed = true;
                         }
 
@@ -3669,7 +3703,19 @@
 
     private int[] onConfigurationChanged() {
         mPolicy.onConfigurationChanged();
-        getDefaultDisplayContentLocked().getDockedDividerController().onConfigurationChanged();
+
+        final DisplayContent defaultDisplayContent = getDefaultDisplayContentLocked();
+        if (!mReconfigureOnConfigurationChanged.contains(defaultDisplayContent)) {
+            // The default display size information is heavily dependent on the resources in the
+            // current configuration, so we need to reconfigure it everytime the configuration
+            // changes. See {@link PhoneWindowManager#setInitialDisplaySize}...sigh...
+            mReconfigureOnConfigurationChanged.add(defaultDisplayContent);
+        }
+        for (int i = mReconfigureOnConfigurationChanged.size() - 1; i >= 0; i--) {
+            reconfigureDisplayLocked(mReconfigureOnConfigurationChanged.remove(i));
+        }
+
+        defaultDisplayContent.getDockedDividerController().onConfigurationChanged();
         mChangedStackList.clear();
         for (int stackNdx = mStackIdToStack.size() - 1; stackNdx >= 0; stackNdx--) {
             final TaskStack stack = mStackIdToStack.valueAt(stackNdx);
@@ -4233,7 +4279,6 @@
                                     WindowManagerPolicy.TRANSIT_EXIT);
                         }
                     }
-                    win.mAnimatingExit = true;
                     changed = true;
                     win.setDisplayLayoutNeeded();
                 }
@@ -4273,7 +4318,7 @@
         }
 
         for (int i = wtoken.allAppWindows.size() - 1; i >= 0 && !delayed; i--) {
-            if (wtoken.allAppWindows.get(i).mWinAnimator.isWindowAnimating()) {
+            if (wtoken.allAppWindows.get(i).mWinAnimator.isWindowAnimationSet()) {
                 delayed = true;
             }
         }
@@ -5998,7 +6043,7 @@
             @Override
             public void run() {
                 Bitmap bm = screenshotApplicationsInner(null, Display.DEFAULT_DISPLAY, -1, -1,
-                        true, 1f);
+                        true, 1f, Bitmap.Config.ARGB_8888);
                 try {
                     receiver.send(bm);
                 } catch (RemoteException e) {
@@ -6011,8 +6056,7 @@
 
     /**
      * Takes a snapshot of the screen.  In landscape mode this grabs the whole screen.
-     * In portrait mode, it grabs the upper region of the screen based on the vertical dimension
-     * of the target image.
+     * In portrait mode, it grabs the full screenshot.
      *
      * @param displayId the Display to take a screenshot of.
      * @param width the width of the target bitmap
@@ -6029,14 +6073,14 @@
         try {
             Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "screenshotApplications");
             return screenshotApplicationsInner(appToken, displayId, width, height, false,
-                    frameScale);
+                    frameScale, Bitmap.Config.RGB_565);
         } finally {
             Trace.traceEnd(Trace.TRACE_TAG_WINDOW_MANAGER);
         }
     }
 
     Bitmap screenshotApplicationsInner(IBinder appToken, int displayId, int width, int height,
-            boolean includeFullDisplay, float frameScale) {
+            boolean includeFullDisplay, float frameScale, Bitmap.Config config) {
         final DisplayContent displayContent;
         synchronized(mWindowMap) {
             displayContent = getDisplayContentLocked(displayId);
@@ -6275,7 +6319,7 @@
 
         // Create a copy of the screenshot that is immutable and backed in ashmem.
         // This greatly reduces the overhead of passing the bitmap between processes.
-        Bitmap ret = bm.createAshmemBitmap();
+        Bitmap ret = bm.createAshmemBitmap(config);
         bm.recycle();
         return ret;
     }
@@ -7439,30 +7483,43 @@
         }
     }
 
-    private void adjustForImeIfNeeded(final DisplayContent displayContent) {
+    void adjustForImeIfNeeded(final DisplayContent displayContent) {
         final WindowState imeWin = mInputMethodWindow;
-        final TaskStack focusedStack =
-                mCurrentFocus != null ? mCurrentFocus.getStack() : null;
+        final boolean imeVisible = imeWin != null && imeWin.isVisibleLw() && imeWin.isDisplayedLw();
         final boolean dockVisible = isStackVisibleLocked(DOCKED_STACK_ID);
-        if (imeWin != null && imeWin.isVisibleLw() && imeWin.isDisplayedLw()
-                && dockVisible
-                && focusedStack != null
-                && focusedStack.getDockSide() == DOCKED_BOTTOM){
+        final TaskStack imeTargetStack = getImeTargetStackLocked();
+        final int imeDockSide = (dockVisible && imeTargetStack != null) ?
+                imeTargetStack.getDockSide() : DOCKED_INVALID;
+        final boolean imeOnTop = (imeDockSide == DOCKED_TOP);
+        final boolean imeOnBottom = (imeDockSide == DOCKED_BOTTOM);
+
+        // The divider could be adjusted for IME position, or be thinner than usual,
+        // or both. There are three possible cases:
+        // - If IME is visible, and focus is on top, divider is not moved for IME but thinner.
+        // - If IME is visible, and focus is on bottom, divider is moved for IME and thinner.
+        // - If IME is not visible, divider is not moved and is normal width.
+
+        if (imeVisible && dockVisible && (imeOnTop || imeOnBottom)) {
             final ArrayList<TaskStack> stacks = displayContent.getStacks();
             for (int i = stacks.size() - 1; i >= 0; --i) {
                 final TaskStack stack = stacks.get(i);
-                if (stack.isVisibleLocked()) {
+                final boolean isDockedOnBottom = stack.getDockSide() == DOCKED_BOTTOM;
+                if (stack.isVisibleLocked() && (imeOnBottom || isDockedOnBottom)) {
                     stack.setAdjustedForIme(imeWin);
+                } else {
+                    stack.resetAdjustedForIme(false);
                 }
             }
-            displayContent.mDividerControllerLocked.setAdjustedForIme(true, true);
+            displayContent.mDividerControllerLocked.setAdjustedForIme(
+                    imeOnBottom /*ime*/, true /*divider*/, true /*animate*/, imeWin);
         } else {
             final ArrayList<TaskStack> stacks = displayContent.getStacks();
             for (int i = stacks.size() - 1; i >= 0; --i) {
                 final TaskStack stack = stacks.get(i);
                 stack.resetAdjustedForIme(!dockVisible);
             }
-            displayContent.mDividerControllerLocked.setAdjustedForIme(false, dockVisible);
+            displayContent.mDividerControllerLocked.setAdjustedForIme(
+                    false /*ime*/, false /*divider*/, dockVisible /*animate*/, imeWin);
         }
     }
 
@@ -7595,6 +7652,12 @@
         return mCurrentFocus;
     }
 
+    TaskStack getImeTargetStackLocked() {
+        // Don't use WindowState.getStack() because it returns home stack for system windows.
+        Task imeTask = mInputMethodTarget != null ? mInputMethodTarget.getTask() : null;
+        return imeTask != null ? imeTask.mStack : null;
+    }
+
     private void showAuditSafeModeNotification() {
         PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0,
                 new Intent(Intent.ACTION_VIEW,
@@ -7796,6 +7859,8 @@
         public static final int UPDATE_ANIMATION_SCALE = 51;
         public static final int WINDOW_REMOVE_TIMEOUT = 52;
 
+        public static final int NOTIFY_DOCKED_STACK_MINIMIZED_CHANGED = 53;
+
         /**
          * Used to denote that an integer field in a message will not be used.
          */
@@ -7893,9 +7958,11 @@
 
                     View view = null;
                     try {
-                        view = mPolicy.addStartingWindow(
-                            wtoken.token, sd.pkg, sd.theme, sd.compatInfo,
-                            sd.nonLocalizedLabel, sd.labelRes, sd.icon, sd.logo, sd.windowFlags);
+                        final Configuration overrideConfig = wtoken != null && wtoken.mTask != null
+                                ? wtoken.mTask.mOverrideConfig : null;
+                        view = mPolicy.addStartingWindow(wtoken.token, sd.pkg, sd.theme,
+                            sd.compatInfo, sd.nonLocalizedLabel, sd.labelRes, sd.icon, sd.logo,
+                            sd.windowFlags, overrideConfig);
                     } catch (Exception e) {
                         Slog.w(TAG_WM, "Exception when adding starting window", e);
                     }
@@ -8419,6 +8486,10 @@
                     }
                 }
                 break;
+                case NOTIFY_DOCKED_STACK_MINIMIZED_CHANGED: {
+                    mAmInternal.notifyDockedStackMinimizedChanged(msg.arg1 == 1);
+                }
+                break;
             }
             if (DEBUG_WINDOW_TRACE) {
                 Slog.v(TAG_WM, "handleMessage: exit");
@@ -8802,6 +8873,9 @@
             mWaitingForConfig = true;
             startFreezingDisplayLocked(false, 0, 0);
             mH.sendEmptyMessage(H.SEND_NEW_CONFIGURATION);
+            if (!mReconfigureOnConfigurationChanged.contains(displayContent)) {
+                mReconfigureOnConfigurationChanged.add(displayContent);
+            }
         }
 
         mWindowPlacerLocked.performSurfacePlacement();
@@ -9054,7 +9128,7 @@
 
     void updateResizingWindows(final WindowState w) {
         final WindowStateAnimator winAnimator = w.mWinAnimator;
-        if (w.mHasSurface && w.mLayoutSeq == mLayoutSeq) {
+        if (w.mHasSurface && w.mLayoutSeq == mLayoutSeq && !w.isGoneForLayoutLw()) {
             w.setInsetsChanged();
             boolean configChanged = w.isConfigChanged();
             if (DEBUG_CONFIGURATION && configChanged) {
@@ -9087,7 +9161,8 @@
                             + " " + w.mOutsets.toShortString()
                             + " surfaceResized=" + winAnimator.mSurfaceResized
                             + " configChanged=" + configChanged
-                            + " dragResizingChanged=" + dragResizingChanged);
+                            + " dragResizingChanged=" + dragResizingChanged
+                            + " resizedWhileNotDragResizing=" + w.mResizedWhileNotDragResizing);
                 }
 
                 // If it's a dead window left on screen, and the configuration changed,
@@ -9379,6 +9454,8 @@
                 mInputMonitor.setInputFocusLw(mCurrentFocus, updateInputWindows);
             }
 
+            adjustForImeIfNeeded(displayContent);
+
             Trace.traceEnd(Trace.TRACE_TAG_WINDOW_MANAGER);
             return true;
         }
@@ -9815,8 +9892,8 @@
         mPolicy.lockNow(options);
     }
 
-    public void showRecentApps() {
-        mPolicy.showRecentApps();
+    public void showRecentApps(boolean fromHome) {
+        mPolicy.showRecentApps(fromHome);
     }
 
     @Override
diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java
index 8371cfe..ae20ae3 100644
--- a/services/core/java/com/android/server/wm/WindowState.java
+++ b/services/core/java/com/android/server/wm/WindowState.java
@@ -68,6 +68,7 @@
 import static android.view.WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON;
 import static android.view.WindowManager.LayoutParams.FLAG_DIM_BEHIND;
 import static android.view.WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD;
+import static android.view.WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS;
 import static android.view.WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
 import static android.view.WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL;
 import static android.view.WindowManager.LayoutParams.FLAG_SCALED;
@@ -82,6 +83,7 @@
 import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_WILL_NOT_REPLACE_ON_RELAUNCH;
 import static android.view.WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE;
 import static android.view.WindowManager.LayoutParams.SOFT_INPUT_MASK_ADJUST;
+import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION;
 import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_STARTING;
 import static android.view.WindowManager.LayoutParams.TYPE_BASE_APPLICATION;
 import static android.view.WindowManager.LayoutParams.TYPE_DOCK_DIVIDER;
@@ -444,6 +446,11 @@
     // If not null, the window that will be used to replace the old one. This is being set when
     // the window is added and unset when this window reports its first draw.
     WindowState mReplacingWindow = null;
+    // For the new window in the replacement transition, if we have
+    // requested to replace without animation, then we should
+    // make sure we also don't apply an enter animation for
+    // the new window.
+    boolean mSkipEnterAnimationForSeamlessReplacement = false;
     // Whether this window is being moved via the resize API
     boolean mMovedByResize;
 
@@ -1552,7 +1559,7 @@
             // If app died visible, apply a dim over the window to indicate that it's inactive
             mDisplayContent.mDimLayerController.applyDimAbove(getDimLayerUser(), mWinAnimator);
         } else if ((mAttrs.flags & FLAG_DIM_BEHIND) != 0
-                && mDisplayContent != null && !mAnimatingExit && isDisplayedLw()) {
+                && mDisplayContent != null && !mAnimatingExit && isVisibleUnchecked()) {
             mDisplayContent.mDimLayerController.applyDimBehind(getDimLayerUser(), mWinAnimator);
         }
     }
@@ -1571,12 +1578,16 @@
         }
         for (int i = mAppToken.allAppWindows.size() - 1; i >= 0; i--) {
             final WindowState win = mAppToken.allAppWindows.get(i);
-            if (win.mWillReplaceWindow && win.mReplacingWindow == this) {
+            if (win.mWillReplaceWindow && win.mReplacingWindow == this && hasDrawnLw()) {
                 if (DEBUG_ADD_REMOVE) Slog.d(TAG, "Removing replaced window: " + win);
+                if (win.isDimming()) {
+                    win.transferDimToReplacement();
+                }
                 win.mWillReplaceWindow = false;
                 win.mAnimateReplacingWindow = false;
                 win.mReplacingRemoveRequested = false;
                 win.mReplacingWindow = null;
+                mSkipEnterAnimationForSeamlessReplacement = false;
                 if (win.mAnimatingExit) {
                     mService.removeWindowInnerLocked(win);
                 }
@@ -2056,16 +2067,14 @@
         }
         if (win.mAttrs.type < WindowManager.LayoutParams.FIRST_SYSTEM_WINDOW
                 && win.mAppToken != null && win.mAppToken.showForAllUsers) {
-            // Save some cycles by not calling getDisplayInfo unless it is an application
-            // window intended for all users.
-            final DisplayContent displayContent = win.getDisplayContent();
-            if (displayContent == null) {
-                return true;
-            }
-            final DisplayInfo displayInfo = displayContent.getDisplayInfo();
-            if (win.mFrame.left <= 0 && win.mFrame.top <= 0
-                    && win.mFrame.right >= displayInfo.appWidth
-                    && win.mFrame.bottom >= displayInfo.appHeight) {
+
+            // All window frames that are fullscreen extend above status bar, but some don't extend
+            // below navigation bar. Thus, check for display frame for top/left and stable frame for
+            // bottom right.
+            if (win.mFrame.left <= win.mDisplayFrame.left
+                    && win.mFrame.top <= win.mDisplayFrame.top
+                    && win.mFrame.right >= win.mStableFrame.right
+                    && win.mFrame.bottom >= win.mStableFrame.bottom) {
                 // Is a fullscreen window, like the clock alarm. Show to everyone.
                 return false;
             }
@@ -2256,9 +2265,11 @@
     private void dispatchResized(Rect frame, Rect overscanInsets, Rect contentInsets,
             Rect visibleInsets, Rect stableInsets, Rect outsets, boolean reportDraw,
             Configuration newConfig) throws RemoteException {
+        final boolean forceRelayout = isDragResizeChanged() || mResizedWhileNotDragResizing;
+
         mClient.resized(frame, overscanInsets, contentInsets, visibleInsets, stableInsets, outsets,
                 reportDraw, newConfig, getBackdropFrame(frame),
-                isDragResizeChanged() /* forceRelayout */, mPolicy.isNavBarForcedShownLw(this));
+                forceRelayout, mPolicy.isNavBarForcedShownLw(this));
         mDragResizingChangeReported = true;
     }
 
@@ -2372,6 +2383,9 @@
                 if (stack != null) {
                     pw.print(" stackId="); pw.print(stack.mStackId);
                 }
+                if (mNotOnAppsDisplay) {
+                    pw.print(" mNotOnAppsDisplay="); pw.print(mNotOnAppsDisplay);
+                }
                 pw.print(" mSession="); pw.print(mSession);
                 pw.print(" mClient="); pw.println(mClient.asBinder());
         pw.print(prefix); pw.print("mOwnerUid="); pw.print(mOwnerUid);
@@ -2598,7 +2612,17 @@
         final int ph = containingFrame.height();
         final Task task = getTask();
         final boolean nonFullscreenTask = isInMultiWindowMode();
-        final boolean fitToDisplay = task != null && !nonFullscreenTask && !layoutInParentFrame();
+        final boolean noLimits = (mAttrs.flags & FLAG_LAYOUT_NO_LIMITS) != 0;
+
+        // We need to fit it to the display if either
+        // a) The task is fullscreen, or we don't have a task (we assume fullscreen for the taskless
+        // windows)
+        // b) If it's a child window, we also need to fit it to the display unless
+        // FLAG_LAYOUT_NO_LIMITS is set. This is so we place Popup and similar windows on screen,
+        // but SurfaceViews want to be always at a specific location so we don't fit it to the
+        // display.
+        final boolean fitToDisplay = (task == null || !nonFullscreenTask)
+                || (isChildWindow() && !noLimits);
         float x, y;
         int w,h;
 
@@ -2710,4 +2734,25 @@
         }
         return winY;
     }
+
+    void transferDimToReplacement() {
+        final DimLayer.DimLayerUser dimLayerUser = getDimLayerUser();
+        if (dimLayerUser != null && mDisplayContent != null) {
+            mDisplayContent.mDimLayerController.applyDim(dimLayerUser,
+                    mReplacingWindow.mWinAnimator,
+                    (mAttrs.flags & FLAG_DIM_BEHIND) != 0 ? true : false);
+        }
+    }
+
+    // During activity relaunch due to resize, we sometimes use window replacement
+    // for only child windows (as the main window is handled by window preservation)
+    // and the big surface.
+    //
+    // Though windows of TYPE_APPLICATION (as opposed to TYPE_BASE_APPLICATION)
+    // are not children in the sense of an attached window, we also want to replace
+    // them at such phases, as they won't be covered by window preservation,
+    // and in general we expect them to return following relaunch.
+    boolean shouldBeReplacedWithChildren() {
+        return isChildWindow() || mAttrs.type == TYPE_APPLICATION;
+    }
 }
diff --git a/services/core/java/com/android/server/wm/WindowStateAnimator.java b/services/core/java/com/android/server/wm/WindowStateAnimator.java
index 0245513..1493bc7 100644
--- a/services/core/java/com/android/server/wm/WindowStateAnimator.java
+++ b/services/core/java/com/android/server/wm/WindowStateAnimator.java
@@ -17,11 +17,13 @@
 package com.android.server.wm;
 
 import static android.app.ActivityManager.StackId;
+import static android.app.ActivityManager.StackId.PINNED_STACK_ID;
 import static android.view.Display.DEFAULT_DISPLAY;
 import static android.view.WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED;
 import static android.view.WindowManager.LayoutParams.FLAG_SCALED;
 import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_STARTING;
-import static com.android.server.wm.DragResizeMode.DRAG_RESIZE_MODE_DOCKED_DIVIDER;
+import static android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD;
+import static com.android.server.wm.AppWindowAnimator.sDummyAnimation;
 import static com.android.server.wm.DragResizeMode.DRAG_RESIZE_MODE_FREEFORM;
 import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_ADD_REMOVE;
 import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_ANIM;
@@ -182,6 +184,8 @@
      * window is first added or shown, cleared when the callback has been made. */
     boolean mEnteringAnimation;
 
+    private boolean mAnimationStartDelayed;
+
     boolean mKeyguardGoingAwayAnimation;
     boolean mKeyguardGoingAwayWithWallpaper;
 
@@ -220,6 +224,10 @@
 
     int mAttrType;
 
+    static final long PENDING_TRANSACTION_FINISH_WAIT_TIME = 100;
+    long mDeferTransactionUntilFrame = -1;
+    long mDeferTransactionTime = -1;
+
     private final Rect mTmpSize = new Rect();
 
     WindowStateAnimator(final WindowState win) {
@@ -284,21 +292,33 @@
         }
     }
 
-    /** Is the window or its container currently animating? */
-    boolean isAnimating() {
+    /**
+     * Is the window or its container currently set to animate or currently animating?
+     */
+    boolean isAnimationSet() {
         return mAnimation != null
                 || (mAttachedWinAnimator != null && mAttachedWinAnimator.mAnimation != null)
                 || (mAppAnimator != null && mAppAnimator.isAnimating());
     }
 
+    /**
+     * @return whether an animation is about to start, i.e. the animation is set already but we
+     *         haven't processed the first frame yet.
+     */
+    boolean isAnimationStarting() {
+        return isAnimationSet() && !mAnimating;
+    }
+
     /** Is the window animating the DummyAnimation? */
     boolean isDummyAnimation() {
         return mAppAnimator != null
-                && mAppAnimator.animation == AppWindowAnimator.sDummyAnimation;
+                && mAppAnimator.animation == sDummyAnimation;
     }
 
-    /** Is this window currently set to animate or currently animating? */
-    boolean isWindowAnimating() {
+    /**
+     * Is this window currently set to animate or currently animating?
+     */
+    boolean isWindowAnimationSet() {
         return mAnimation != null;
     }
 
@@ -318,8 +338,12 @@
         if ((mAnimation == null) || !mLocalAnimating) {
             return false;
         }
+        currentTime = getAnimationFrameTime(mAnimation, currentTime);
         mTransformation.clear();
         final boolean more = mAnimation.getTransformation(currentTime, mTransformation);
+        if (mAnimationStartDelayed && mAnimationIsEntrance) {
+            mTransformation.setAlpha(0f);
+        }
         if (false && DEBUG_ANIM) Slog.v(TAG, "Stepped animation in " + this + ": more=" + more
                 + ", xform=" + mTransformation);
         return more;
@@ -329,7 +353,7 @@
     // there is more animation to run.
     boolean stepAnimationLocked(long currentTime) {
         // Save the animation state as it was before this step so WindowManagerService can tell if
-        // we just started or just stopped animating by comparing mWasAnimating with isAnimating().
+        // we just started or just stopped animating by comparing mWasAnimating with isAnimationSet().
         mWasAnimating = mAnimating;
         final DisplayContent displayContent = mWin.getDisplayContent();
         if (displayContent != null && mService.okToDisplay()) {
@@ -391,7 +415,7 @@
                 // Little trick to get through the path below to act like
                 // we have finished an animation.
                 mAnimating = true;
-            } else if (isAnimating()) {
+            } else if (isAnimationSet()) {
                 mAnimating = true;
             }
         } else if (mAnimation != null) {
@@ -465,7 +489,7 @@
                 TAG, "finishExit in " + this
                 + ": exiting=" + mWin.mAnimatingExit
                 + " remove=" + mWin.mRemoveOnExit
-                + " windowAnimating=" + isWindowAnimating());
+                + " windowAnimating=" + isWindowAnimationSet());
 
         if (!mWin.mChildWindows.isEmpty()) {
             // Copying to a different list as multiple children can be removed.
@@ -488,7 +512,7 @@
             }
         }
 
-        if (!isWindowAnimating()) {
+        if (!isWindowAnimationSet()) {
             //TODO (multidisplay): Accessibility is supported only for the default display.
             if (mService.mAccessibilityController != null
                     && mWin.getDisplayId() == DEFAULT_DISPLAY) {
@@ -500,7 +524,7 @@
             return;
         }
 
-        if (isWindowAnimating()) {
+        if (isWindowAnimationSet()) {
             return;
         }
 
@@ -551,6 +575,7 @@
             Slog.v(TAG, "Finishing drawing window " + mWin + ": mDrawState="
                     + drawStateToString());
         }
+
         if (mWin.mAppToken != null && mWin.mAppToken.mAnimatingWithSavedSurface) {
             // App has drawn something to its windows, we're no longer animating with
             // the saved surfaces. If the user exits now, we only want to save again
@@ -1279,6 +1304,17 @@
     }
     private void adjustCropToStackBounds(WindowState w, Rect clipRect, Rect finalClipRect,
             boolean isFreeformResizing) {
+
+        final DisplayContent displayContent = w.getDisplayContent();
+        if (displayContent != null && !displayContent.isDefaultDisplay) {
+            // There are some windows that live on other displays while their app and main window
+            // live on the default display (e.g. casting...). We don't want to crop this windows
+            // to the stack bounds which is only currently supported on the default display.
+            // TODO(multi-display): Need to support cropping to stack bounds on other displays
+            // when we have stacks on other displays.
+            return;
+        }
+
         final Task task = w.getTask();
         if (task == null || !task.cropWindowsToStackBounds()) {
             return;
@@ -1287,7 +1323,7 @@
         final int stackClip = resolveStackClip();
 
         // It's animating and we don't want to clip it to stack bounds during animation - abort.
-        if (isAnimating() && stackClip == STACK_CLIP_NONE) {
+        if (isAnimationSet() && stackClip == STACK_CLIP_NONE) {
             return;
         }
 
@@ -1309,7 +1345,7 @@
 
         // If we are animating, we either apply the clip before applying all the animation
         // transformation or after all the transformation.
-        final boolean useFinalClipRect = isAnimating() && stackClip == STACK_CLIP_AFTER_ANIM;
+        final boolean useFinalClipRect = isAnimationSet() && stackClip == STACK_CLIP_AFTER_ANIM;
 
         // We need to do some acrobatics with surface position, because their clip region is
         // relative to the inside of the surface, but the stack bounds aren't.
@@ -1341,7 +1377,7 @@
         final Task task = w.getTask();
 
         // We got resized, so block all updates until we got the new surface.
-        if (w.mResizedWhileNotDragResizing) {
+        if (w.mResizedWhileNotDragResizing && !w.isGoneForLayoutLw()) {
             return;
         }
 
@@ -1484,7 +1520,7 @@
                 w.mToken.hasVisible = true;
             }
         } else {
-            if (DEBUG_ANIM && isAnimating()) {
+            if (DEBUG_ANIM && isAnimationSet()) {
                 Slog.v(TAG, "prepareSurface: No changes in animation for " + this);
             }
             displayed = true;
@@ -1660,6 +1696,11 @@
      * @return Returns true if the surface was successfully shown.
      */
     private boolean showSurfaceRobustlyLocked() {
+        final Task task = mWin.getTask();
+        if (task != null && StackId.windowsAreScaleable(task.mStack.mStackId)) {
+            mSurfaceController.forceScaleableInTransaction(true);
+        }
+
         boolean shown = mSurfaceController.showRobustlyInTransaction();
         if (!shown)
             return false;
@@ -1673,6 +1714,12 @@
     }
 
     void applyEnterAnimationLocked() {
+        // If we are the new part of a window replacement transition and we have requested
+        // not to animate, we instead want to make it seamless, so we don't want to apply
+        // an enter transition.
+        if (mWin.mSkipEnterAnimationForSeamlessReplacement) {
+            return;
+        }
         final int transit;
         if (mEnterAnimationPending) {
             mEnterAnimationPending = false;
@@ -1755,7 +1802,13 @@
         } else {
             clearAnimation();
         }
-
+        if (mWin.mAttrs.type == TYPE_INPUT_METHOD) {
+            mService.adjustForImeIfNeeded(mWin.mDisplayContent);
+            if (isEntrance) {
+                mWin.setDisplayLayoutNeeded();
+                mService.mWindowPlacerLocked.requestTraversal();
+            }
+        }
         return mAnimation != null;
     }
 
@@ -1834,6 +1887,9 @@
                     pw.print(" mDsDy="); pw.print(mDsDy);
                     pw.print(" mDtDy="); pw.println(mDtDy);
         }
+        if (mAnimationStartDelayed) {
+            pw.print(prefix); pw.print("mAnimationStartDelayed="); pw.print(mAnimationStartDelayed);
+        }
     }
 
     @Override
@@ -1880,4 +1936,57 @@
         mAnimDy = mWin.mLastFrame.top - top;
         mAnimateMove = true;
     }
+
+    void deferTransactionUntilParentFrame(long frameNumber) {
+        if (!mWin.isChildWindow()) {
+            return;
+        }
+        mDeferTransactionUntilFrame = frameNumber;
+        mDeferTransactionTime = System.currentTimeMillis();
+        mSurfaceController.deferTransactionUntil(
+                mWin.mAttachedWindow.mWinAnimator.mSurfaceController.getHandle(),
+                frameNumber);
+    }
+
+    // Defer the current transaction to the frame number of the last saved transaction.
+    // We do this to avoid shooting through an unsynchronized transaction while something is
+    // pending. This is generally fine, as either we will get in on the synchronization,
+    // or SurfaceFlinger will see that the frame has already occured. The only
+    // potential problem is in frame number resets so we reset things with a timeout
+    // every so often to be careful.
+    void deferToPendingTransaction() {
+        if (mDeferTransactionUntilFrame < 0) {
+            return;
+        }
+        long time = System.currentTimeMillis();
+        if (time > mDeferTransactionTime + PENDING_TRANSACTION_FINISH_WAIT_TIME) {
+            mDeferTransactionTime = -1;
+            mDeferTransactionUntilFrame = -1;
+        } else {
+            mSurfaceController.deferTransactionUntil(
+                    mWin.mAttachedWindow.mWinAnimator.mSurfaceController.getHandle(),
+                    mDeferTransactionUntilFrame);
+        }
+    }
+
+    /**
+     * Sometimes we need to synchronize the first frame of animation with some external event.
+     * To achieve this, we prolong the start of the animation and keep producing the first frame of
+     * the animation.
+     */
+    private long getAnimationFrameTime(Animation animation, long currentTime) {
+        if (mAnimationStartDelayed) {
+            animation.setStartTime(currentTime);
+            return currentTime + 1;
+        }
+        return currentTime;
+    }
+
+    void startDelayingAnimationStart() {
+        mAnimationStartDelayed = true;
+    }
+
+    void endDelayingAnimationStart() {
+        mAnimationStartDelayed = false;
+    }
 }
diff --git a/services/core/java/com/android/server/wm/WindowSurfaceController.java b/services/core/java/com/android/server/wm/WindowSurfaceController.java
index 8799c61..af47369 100644
--- a/services/core/java/com/android/server/wm/WindowSurfaceController.java
+++ b/services/core/java/com/android/server/wm/WindowSurfaceController.java
@@ -23,6 +23,8 @@
 import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_VISIBILITY;
 import static com.android.server.wm.WindowManagerDebugConfig.TAG_WITH_CLASS_NAME;
 import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
+import static android.view.Surface.SCALING_MODE_FREEZE;
+import static android.view.Surface.SCALING_MODE_SCALE_TO_WINDOW;
 
 import android.graphics.Point;
 import android.graphics.PointF;
@@ -98,6 +100,8 @@
     void hideInTransaction(String reason) {
         if (SHOW_TRANSACTIONS) logSurface("HIDE ( " + reason + " )", null);
         mHiddenForOtherReasons = true;
+
+        mAnimator.destroyPreservedSurfaceLocked();
         updateVisibility();
     }
 
@@ -178,6 +182,7 @@
                 updateVisibility();
             } else {
                 mHiddenForCrop = true;
+                mAnimator.destroyPreservedSurfaceLocked();
                 updateVisibility();
             }
         } catch (RuntimeException e) {
@@ -392,6 +397,13 @@
         mSurfaceControl.deferTransactionUntil(handle, frame);
     }
 
+    void forceScaleableInTransaction(boolean force) {
+        // -1 means we don't override the default or client specified
+        // scaling mode.
+        int scalingMode = force ? SCALING_MODE_SCALE_TO_WINDOW : -1;
+        mSurfaceControl.setOverrideScalingMode(scalingMode);
+    }
+
     boolean clearWindowContentFrameStats() {
         if (mSurfaceControl == null) {
             return false;
diff --git a/services/core/java/com/android/server/wm/WindowSurfacePlacer.java b/services/core/java/com/android/server/wm/WindowSurfacePlacer.java
index 04aa735..8937f09 100644
--- a/services/core/java/com/android/server/wm/WindowSurfacePlacer.java
+++ b/services/core/java/com/android/server/wm/WindowSurfacePlacer.java
@@ -8,8 +8,8 @@
 import static android.view.WindowManager.LayoutParams.FLAG_SHOW_WALLPAPER;
 import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_KEYGUARD;
 import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_NO_MOVE_ANIMATION;
+import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE;
 import static android.view.WindowManager.LayoutParams.TYPE_BASE_APPLICATION;
-import static android.view.WindowManager.LayoutParams.TYPE_DOCK_DIVIDER;
 import static android.view.WindowManager.LayoutParams.TYPE_DREAM;
 import static android.view.WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG;
 import static android.view.WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG;
@@ -128,6 +128,9 @@
     private boolean mTraversalScheduled;
     private int mDeferDepth = 0;
 
+    private boolean mSustainedPerformanceModeEnabled = false;
+    private boolean mSustainedPerformanceModeCurrent = false;
+
     private static final class LayerAndToken {
         public int layer;
         public AppWindowToken token;
@@ -288,7 +291,7 @@
         mButtonBrightness = -1;
         mUserActivityTimeout = -1;
         mObscureApplicationContentOnSecondaryDisplays = false;
-
+        mSustainedPerformanceModeCurrent = false;
         mService.mTransactionSequence++;
 
         final DisplayContent defaultDisplay = mService.getDefaultDisplayContentLocked();
@@ -487,6 +490,13 @@
                     mUserActivityTimeout);
         }
 
+        if (mSustainedPerformanceModeCurrent != mSustainedPerformanceModeEnabled) {
+            mSustainedPerformanceModeEnabled = mSustainedPerformanceModeCurrent;
+            mService.mPowerManagerInternal.powerHint(
+                    mService.mPowerManagerInternal.POWER_HINT_SUSTAINED_PERFORMANCE_MODE,
+                    (mSustainedPerformanceModeEnabled ? 1 : 0));
+        }
+
         if (mService.mTurnOnScreen) {
             if (mService.mAllowTheaterModeWakeFromLayout
                     || Settings.Global.getInt(mService.mContext.getContentResolver(),
@@ -721,6 +731,10 @@
 
                 // Moved from updateWindowsAndWallpaperLocked().
                 if (w.mHasSurface) {
+                    // If we have recently synchronized a previous transaction for this
+                    // window ensure we don't push through an unsynchronized one now.
+                    winAnimator.deferToPendingTransaction();
+
                     // Take care of the window being ready to display.
                     final boolean committed = winAnimator.commitFinishDrawingLocked();
                     if (isDefaultDisplay && committed) {
@@ -747,13 +761,15 @@
                             }
                         }
                     }
-                    if (!winAnimator.isAnimating()) {
+                    if (!winAnimator.isAnimationStarting()) {
                         // Updates the shown frame before we set up the surface. This is needed
                         // because the resizing could change the top-left position (in addition to
                         // size) of the window. setSurfaceBoundariesLocked uses mShownPosition to
-                        // position the surface. We only apply it to windows that aren't animating,
-                        // because we depend on the animation to calculate the correct shown frame
-                        // on the next animation step.
+                        // position the surface.
+                        //
+                        // If an animation is being started, we can't call this method because the
+                        // animation hasn't processed its initial transformation yet, but in general
+                        // we do want to update the position if the window is animating.
                         winAnimator.computeShownFrameLocked();
                     }
                     winAnimator.setSurfaceBoundariesLocked(recoveringMemory);
@@ -777,7 +793,7 @@
                         if (DEBUG_VISIBILITY || DEBUG_ORIENTATION) {
                             Slog.v(TAG, "Eval win " + w + ": isDrawn="
                                     + w.isDrawnLw()
-                                    + ", isAnimating=" + winAnimator.isAnimating());
+                                    + ", isAnimationSet=" + winAnimator.isAnimationSet());
                             if (!w.isDrawnLw()) {
                                 Slog.v(TAG, "Not displayed: s="
                                         + winAnimator.mSurfaceController
@@ -928,7 +944,8 @@
             // windows, since that means "perform layout as normal,
             // just don't display").
             if (!gone || !win.mHaveFrame || win.mLayoutNeeded
-                    || ((win.isConfigChanged() || win.setInsetsChanged()) &&
+                    || ((win.isConfigChanged() || win.setInsetsChanged())
+                            && !win.isGoneForLayoutLw() &&
                             ((win.mAttrs.privateFlags & PRIVATE_FLAG_KEYGUARD) != 0 ||
                             (win.mHasSurface && win.mAppToken != null &&
                             win.mAppToken.layoutConfigChanges)))) {
@@ -1405,6 +1422,7 @@
         final LayoutParams attrs = w.mAttrs;
         final int attrFlags = attrs.flags;
         final boolean canBeSeen = w.isDisplayedLw();
+        final int privateflags = attrs.privateFlags;
 
         if (canBeSeen && w.isObscuringFullscreen(dispInfo)) {
             // This window completely covers everything behind it,
@@ -1465,6 +1483,9 @@
                         && w.mAttrs.preferredDisplayModeId != 0) {
                     mPreferredModeId = w.mAttrs.preferredDisplayModeId;
                 }
+                if ((privateflags & PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE) != 0) {
+                    mSustainedPerformanceModeCurrent = true;
+                }
             }
         }
     }
diff --git a/services/core/jni/Android.mk b/services/core/jni/Android.mk
index 5e5c6d9..a502c3a 100644
--- a/services/core/jni/Android.mk
+++ b/services/core/jni/Android.mk
@@ -28,6 +28,7 @@
     $(LOCAL_REL_DIR)/com_android_server_power_PowerManagerService.cpp \
     $(LOCAL_REL_DIR)/com_android_server_SerialService.cpp \
     $(LOCAL_REL_DIR)/com_android_server_SystemServer.cpp \
+    $(LOCAL_REL_DIR)/com_android_server_tv_TvUinputBridge.cpp \
     $(LOCAL_REL_DIR)/com_android_server_tv_TvInputHal.cpp \
     $(LOCAL_REL_DIR)/com_android_server_vr_VrManagerService.cpp \
     $(LOCAL_REL_DIR)/com_android_server_UsbDeviceManager.cpp \
diff --git a/services/core/jni/com_android_server_location_FlpHardwareProvider.cpp b/services/core/jni/com_android_server_location_FlpHardwareProvider.cpp
index 774577d..8ea9bfc 100644
--- a/services/core/jni/com_android_server_location_FlpHardwareProvider.cpp
+++ b/services/core/jni/com_android_server_location_FlpHardwareProvider.cpp
@@ -661,6 +661,16 @@
     TranslateToObject(lastLocation, locationObject);
   }
 
+  // sCallbacksObject is created when FlpHardwareProvider on Java side is
+  // initialized. Sometimes the hardware may call this function before the Java
+  // side is ready. In order to prevent the system crash, check whether
+  // sCallbacksObj has been created. If not, simply ignore this event from
+  // hardware.
+  if (sCallbacksObj == NULL) {
+    ALOGE("FlpHardwareProvider hasn't been initialized.");
+    return;
+  }
+
   sCallbackEnv->CallVoidMethod(
       sCallbacksObj,
       sOnGeofenceMonitorStatus,
diff --git a/services/core/jni/com_android_server_location_GnssLocationProvider.cpp b/services/core/jni/com_android_server_location_GnssLocationProvider.cpp
index 058b631..c5c90e0 100644
--- a/services/core/jni/com_android_server_location_GnssLocationProvider.cpp
+++ b/services/core/jni/com_android_server_location_GnssLocationProvider.cpp
@@ -1194,7 +1194,7 @@
     JavaObject object(env, "android/location/GnssMeasurement");
     GpsMeasurementFlags flags = measurement->flags;
     SET(Svid, static_cast<int32_t>(measurement->prn));
-    if (measurement->prn >= 1 || measurement->prn <= 32) {
+    if (measurement->prn >= 1 && measurement->prn <= 32) {
         SET(ConstellationType, static_cast<int32_t>(GNSS_CONSTELLATION_GPS));
     } else {
         ALOGD("Unknown constellation type with Svid = %d.", measurement->prn);
diff --git a/services/core/jni/com_android_server_tv_TvKeys.h b/services/core/jni/com_android_server_tv_TvKeys.h
new file mode 100644
index 0000000..4895f34
--- /dev/null
+++ b/services/core/jni/com_android_server_tv_TvKeys.h
@@ -0,0 +1,113 @@
+#ifndef ANDROIDTVREMOTE_SERVICE_JNI_KEYS_H_
+#define ANDROIDTVREMOTE_SERVICE_JNI_KEYS_H_
+
+#include <android/keycodes.h>
+#include <linux/input.h>
+
+namespace android {
+
+// Map the keys specified in virtual-remote.kl.
+// Only specify the keys actually used in the layout here.
+struct Key {
+    int linuxKeyCode;
+    int32_t androidKeyCode;
+};
+
+// List of all of the keycodes that the emote is capable of sending.
+static Key KEYS[] = {
+    // Volume Control
+    { KEY_VOLUMEDOWN, AKEYCODE_VOLUME_DOWN },
+    { KEY_VOLUMEUP, AKEYCODE_VOLUME_UP },
+    { KEY_MUTE, AKEYCODE_VOLUME_MUTE },
+    { KEY_MUTE, AKEYCODE_MUTE },
+
+    { KEY_POWER, AKEYCODE_POWER },
+    { KEY_HOMEPAGE, AKEYCODE_HOME },
+    { KEY_BACK, AKEYCODE_BACK },
+
+    // Media Control
+    { KEY_PLAYPAUSE, AKEYCODE_MEDIA_PLAY_PAUSE },
+    { KEY_PLAY, AKEYCODE_MEDIA_PLAY },
+    { KEY_PAUSECD, AKEYCODE_MEDIA_PAUSE },
+    { KEY_NEXTSONG, AKEYCODE_MEDIA_NEXT },
+    { KEY_PREVIOUSSONG, AKEYCODE_MEDIA_PREVIOUS },
+    { KEY_STOPCD, AKEYCODE_MEDIA_STOP },
+    { KEY_RECORD, AKEYCODE_MEDIA_RECORD },
+    { KEY_REWIND, AKEYCODE_MEDIA_REWIND },
+    { KEY_FASTFORWARD, AKEYCODE_MEDIA_FAST_FORWARD },
+
+    // TV Control
+    { KEY_0, AKEYCODE_0 },
+    { KEY_1, AKEYCODE_1 },
+    { KEY_2, AKEYCODE_2 },
+    { KEY_3, AKEYCODE_3 },
+    { KEY_4, AKEYCODE_4 },
+    { KEY_5, AKEYCODE_5 },
+    { KEY_6, AKEYCODE_6 },
+    { KEY_7, AKEYCODE_7 },
+    { KEY_8, AKEYCODE_8 },
+    { KEY_9, AKEYCODE_9 },
+    { KEY_BACKSPACE, AKEYCODE_DEL },
+    { KEY_ENTER, AKEYCODE_ENTER},
+    { KEY_CHANNELUP, AKEYCODE_CHANNEL_UP },
+    { KEY_CHANNELDOWN, AKEYCODE_CHANNEL_DOWN },
+
+    // Old School TV Controls
+    { KEY_F1, AKEYCODE_F1 },
+    { KEY_F2, AKEYCODE_F2 },
+    { KEY_F3, AKEYCODE_F3 },
+    { KEY_F4, AKEYCODE_F4 },
+    { KEY_F5, AKEYCODE_F5 },
+    { KEY_F6, AKEYCODE_F6 },
+    { KEY_F7, AKEYCODE_F7 },
+    { KEY_F8, AKEYCODE_F8 },
+    { KEY_F9, AKEYCODE_F9 },
+    { KEY_F10, AKEYCODE_F10 },
+    { KEY_F11, AKEYCODE_F11 },
+    { KEY_F12, AKEYCODE_F12 },
+    { KEY_FN_F1, AKEYCODE_F1 },
+    { KEY_FN_F2, AKEYCODE_F2 },
+    { KEY_FN_F3, AKEYCODE_F3 },
+    { KEY_FN_F4, AKEYCODE_F4 },
+    { KEY_FN_F5, AKEYCODE_F5 },
+    { KEY_FN_F6, AKEYCODE_F6 },
+    { KEY_FN_F7, AKEYCODE_F7 },
+    { KEY_FN_F8, AKEYCODE_F8 },
+    { KEY_FN_F9, AKEYCODE_F9 },
+    { KEY_FN_F10, AKEYCODE_F10 },
+    { KEY_FN_F11, AKEYCODE_F11 },
+    { KEY_FN_F12, AKEYCODE_F12 },
+    { KEY_TV, AKEYCODE_TV },
+    { KEY_RED, AKEYCODE_PROG_RED },
+    { KEY_GREEN, AKEYCODE_PROG_GREEN },
+    { KEY_YELLOW, AKEYCODE_PROG_YELLOW },
+    { KEY_BLUE, AKEYCODE_PROG_BLUE },
+
+    { KEY_FAVORITES, AKEYCODE_BUTTON_MODE},
+    { KEY_WWW, AKEYCODE_EXPLORER },
+    { KEY_MENU, AKEYCODE_MENU },
+    { KEY_INFO, AKEYCODE_INFO },
+    { KEY_EPG, AKEYCODE_GUIDE },
+    { KEY_TEXT, AKEYCODE_TV_TELETEXT },
+    { KEY_SUBTITLE, AKEYCODE_CAPTIONS },
+    { KEY_PVR, AKEYCODE_DVR},
+    { KEY_AUDIO, AKEYCODE_MEDIA_AUDIO_TRACK},
+    { KEY_OPTION, AKEYCODE_SETTINGS},
+
+    // Gamepad buttons
+    { KEY_UP, AKEYCODE_DPAD_UP },
+    { KEY_DOWN, AKEYCODE_DPAD_DOWN },
+    { KEY_LEFT, AKEYCODE_DPAD_LEFT },
+    { KEY_RIGHT, AKEYCODE_DPAD_RIGHT },
+    { KEY_SELECT, AKEYCODE_DPAD_CENTER },
+    { BTN_A, AKEYCODE_BUTTON_A },
+    { BTN_B, AKEYCODE_BUTTON_B },
+    { BTN_X, AKEYCODE_BUTTON_X },
+    { BTN_Y, AKEYCODE_BUTTON_Y },
+
+    { KEY_SEARCH, AKEYCODE_SEARCH },
+};
+
+} // namespace android
+
+#endif // SERVICE_JNI_KEYS_H_
diff --git a/services/core/jni/com_android_server_tv_TvUinputBridge.cpp b/services/core/jni/com_android_server_tv_TvUinputBridge.cpp
new file mode 100644
index 0000000..de115c8
--- /dev/null
+++ b/services/core/jni/com_android_server_tv_TvUinputBridge.cpp
@@ -0,0 +1,308 @@
+/*
+ * Copyright 2016, The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#define LOG_TAG "TvRemote-native-uiBridge"
+
+#include "com_android_server_tv_TvKeys.h"
+
+#include "jni.h"
+#include <android_runtime/AndroidRuntime.h>
+#include <ScopedUtfChars.h>
+#include <android/keycodes.h>
+
+#include <utils/BitSet.h>
+#include <utils/Errors.h>
+#include <utils/misc.h>
+#include <utils/Log.h>
+#include <utils/String8.h>
+
+#include <ctype.h>
+#include <linux/input.h>
+#include <unistd.h>
+#include <sys/time.h>
+#include <time.h>
+#include <stdint.h>
+#include <map>
+#include <fcntl.h>
+#include <linux/uinput.h>
+#include <signal.h>
+#include <sys/inotify.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+
+// Refer to EventHub.h
+#define MSC_ANDROID_TIME_SEC 0x6
+#define MSC_ANDROID_TIME_USEC 0x7
+
+#define SLOT_UNKNOWN -1
+
+namespace android {
+
+static std::map<int32_t,int> keysMap;
+static std::map<int32_t,int32_t> slotsMap;
+static BitSet32 mtSlots;
+
+static void initKeysMap() {
+    if (keysMap.empty()) {
+        for (size_t i = 0; i < NELEM(KEYS); i++) {
+            keysMap[KEYS[i].androidKeyCode] = KEYS[i].linuxKeyCode;
+        }
+    }
+}
+
+static int32_t getLinuxKeyCode(int32_t androidKeyCode) {
+    std::map<int,int>::iterator it = keysMap.find(androidKeyCode);
+    if (it != keysMap.end()) {
+        return it->second;
+    }
+    return KEY_UNKNOWN;
+}
+
+static int findSlot(int32_t pointerId) {
+    std::map<int,int>::iterator it = slotsMap.find(pointerId);
+    if (it != slotsMap.end()) {
+        return it->second;
+    }
+    return SLOT_UNKNOWN;
+}
+
+static int assignSlot(int32_t pointerId) {
+    if (!mtSlots.isFull()) {
+        uint32_t slot = mtSlots.markFirstUnmarkedBit();
+        slotsMap[pointerId] = slot;
+        return slot;
+    }
+    return SLOT_UNKNOWN;
+}
+
+static void unassignSlot(int32_t pointerId) {
+    int slot = findSlot(pointerId);
+    if (slot != SLOT_UNKNOWN) {
+        mtSlots.clearBit(slot);
+        slotsMap.erase(pointerId);
+    }
+}
+
+class NativeConnection {
+public:
+    ~NativeConnection();
+
+    static NativeConnection* open(const char* name, const char* uniqueId,
+            int32_t width, int32_t height, int32_t maxPointerId);
+
+    void sendEvent(int32_t type, int32_t code, int32_t value);
+
+    int32_t getMaxPointers() const { return mMaxPointers; }
+
+private:
+    NativeConnection(int fd, int32_t maxPointers);
+
+    const int mFd;
+    const int32_t mMaxPointers;
+};
+
+NativeConnection::NativeConnection(int fd, int32_t maxPointers) :
+        mFd(fd), mMaxPointers(maxPointers) {
+}
+
+NativeConnection::~NativeConnection() {
+    ALOGI("Un-Registering uinput device %d.", mFd);
+    ioctl(mFd, UI_DEV_DESTROY);
+    close(mFd);
+}
+
+NativeConnection* NativeConnection::open(const char* name, const char* uniqueId,
+        int32_t width, int32_t height, int32_t maxPointers) {
+    ALOGI("Registering uinput device %s: touch pad size %dx%d, "
+            "max pointers %d.", name, width, height, maxPointers);
+
+    int fd = ::open("/dev/uinput", O_WRONLY | O_NDELAY);
+    if (fd < 0) {
+        ALOGE("Cannot open /dev/uinput: %s.", strerror(errno));
+        return nullptr;
+    }
+
+    struct uinput_user_dev uinp;
+    memset(&uinp, 0, sizeof(struct uinput_user_dev));
+    strlcpy(uinp.name, name, UINPUT_MAX_NAME_SIZE);
+    uinp.id.version = 1;
+    uinp.id.bustype = BUS_VIRTUAL;
+
+    // initialize keymap
+    initKeysMap();
+
+    // write device unique id to the phys property
+    ioctl(fd, UI_SET_PHYS, uniqueId);
+
+    // set the keys mapped
+    ioctl(fd, UI_SET_EVBIT, EV_KEY);
+    for (size_t i = 0; i < NELEM(KEYS); i++) {
+        ioctl(fd, UI_SET_KEYBIT, KEYS[i].linuxKeyCode);
+    }
+
+    // set the misc events maps
+    ioctl(fd, UI_SET_EVBIT, EV_MSC);
+    ioctl(fd, UI_SET_MSCBIT, MSC_ANDROID_TIME_SEC);
+    ioctl(fd, UI_SET_MSCBIT, MSC_ANDROID_TIME_USEC);
+
+    // register the input device
+    if (write(fd, &uinp, sizeof(uinp)) != sizeof(uinp)) {
+        ALOGE("Cannot write uinput_user_dev to fd %d: %s.", fd, strerror(errno));
+        close(fd);
+        return NULL;
+    }
+    if (ioctl(fd, UI_DEV_CREATE) != 0) {
+        ALOGE("Unable to create uinput device: %s.", strerror(errno));
+        close(fd);
+        return nullptr;
+    }
+
+    ALOGV("Created uinput device, fd=%d.", fd);
+    return new NativeConnection(fd, maxPointers);
+}
+
+void NativeConnection::sendEvent(int32_t type, int32_t code, int32_t value) {
+    struct input_event iev;
+    memset(&iev, 0, sizeof(iev));
+    iev.type = type;
+    iev.code = code;
+    iev.value = value;
+    write(mFd, &iev, sizeof(iev));
+}
+
+
+static jlong nativeOpen(JNIEnv* env, jclass clazz,
+        jstring nameStr, jstring uniqueIdStr,
+        jint width, jint height, jint maxPointers) {
+    ScopedUtfChars name(env, nameStr);
+    ScopedUtfChars uniqueId(env, uniqueIdStr);
+
+    NativeConnection* connection = NativeConnection::open(name.c_str(), uniqueId.c_str(),
+            width, height, maxPointers);
+    return reinterpret_cast<jlong>(connection);
+}
+
+static void nativeClose(JNIEnv* env, jclass clazz, jlong ptr) {
+    NativeConnection* connection = reinterpret_cast<NativeConnection*>(ptr);
+    delete connection;
+}
+
+static void nativeSendTimestamp(JNIEnv* env, jclass clazz, jlong ptr, jlong timestamp) {
+    NativeConnection* connection = reinterpret_cast<NativeConnection*>(ptr);
+
+    connection->sendEvent(EV_MSC, MSC_ANDROID_TIME_SEC, timestamp / 1000L);
+    connection->sendEvent(EV_MSC, MSC_ANDROID_TIME_USEC, (timestamp % 1000L) * 1000L);
+}
+
+static void nativeSendKey(JNIEnv* env, jclass clazz, jlong ptr, jint keyCode, jboolean down) {
+    int32_t code = getLinuxKeyCode(keyCode);
+    NativeConnection* connection = reinterpret_cast<NativeConnection*>(ptr);
+    if (code != KEY_UNKNOWN) {
+        connection->sendEvent(EV_KEY, code, down ? 1 : 0);
+    } else {
+        ALOGE("Received an unknown keycode of %d.", keyCode);
+    }
+}
+
+static void nativeSendPointerDown(JNIEnv* env, jclass clazz, jlong ptr,
+        jint pointerId, jint x, jint y) {
+    NativeConnection* connection = reinterpret_cast<NativeConnection*>(ptr);
+
+    int32_t slot = findSlot(pointerId);
+    if (slot == SLOT_UNKNOWN) {
+        slot = assignSlot(pointerId);
+    }
+    if (slot != SLOT_UNKNOWN) {
+        connection->sendEvent(EV_ABS, ABS_MT_SLOT, slot);
+        connection->sendEvent(EV_ABS, ABS_MT_TRACKING_ID, pointerId);
+        connection->sendEvent(EV_ABS, ABS_MT_POSITION_X, x);
+        connection->sendEvent(EV_ABS, ABS_MT_POSITION_Y, y);
+    }
+}
+
+static void nativeSendPointerUp(JNIEnv* env, jclass clazz, jlong ptr,
+        jint pointerId) {
+    NativeConnection* connection = reinterpret_cast<NativeConnection*>(ptr);
+
+    int32_t slot = findSlot(pointerId);
+    if (slot != SLOT_UNKNOWN) {
+        connection->sendEvent(EV_ABS, ABS_MT_SLOT, slot);
+        connection->sendEvent(EV_ABS, ABS_MT_TRACKING_ID, -1);
+        unassignSlot(pointerId);
+    }
+}
+
+static void nativeSendPointerSync(JNIEnv* env, jclass clazz, jlong ptr) {
+    NativeConnection* connection = reinterpret_cast<NativeConnection*>(ptr);
+    connection->sendEvent(EV_SYN, SYN_REPORT, 0);
+}
+
+static void nativeClear(JNIEnv* env, jclass clazz, jlong ptr) {
+    NativeConnection* connection = reinterpret_cast<NativeConnection*>(ptr);
+
+    // Clear keys.
+    for (size_t i = 0; i < NELEM(KEYS); i++) {
+        connection->sendEvent(EV_KEY, KEYS[i].linuxKeyCode, 0);
+    }
+
+    // Clear pointers.
+    int32_t slot = SLOT_UNKNOWN;
+    for (int32_t i = 0; i < connection->getMaxPointers(); i++) {
+        slot = findSlot(i);
+        if (slot != SLOT_UNKNOWN) {
+            connection->sendEvent(EV_ABS, ABS_MT_SLOT, slot);
+            connection->sendEvent(EV_ABS, ABS_MT_TRACKING_ID, -1);
+        }
+    }
+
+    // Sync pointer events
+    connection->sendEvent(EV_SYN, SYN_REPORT, 0);
+}
+
+/*
+ * JNI registration
+ */
+
+static JNINativeMethod gUinputBridgeMethods[] = {
+    { "nativeOpen", "(Ljava/lang/String;Ljava/lang/String;III)J",
+        (void*)nativeOpen },
+    { "nativeClose", "(J)V",
+        (void*)nativeClose },
+    { "nativeSendTimestamp", "(JJ)V",
+        (void*)nativeSendTimestamp },
+    { "nativeSendKey", "(JIZ)V",
+        (void*)nativeSendKey },
+    { "nativeSendPointerDown", "(JIII)V",
+        (void*)nativeSendPointerDown },
+    { "nativeSendPointerUp", "(JI)V",
+        (void*)nativeSendPointerUp },
+    { "nativeClear", "(J)V",
+        (void*)nativeClear },
+    { "nativeSendPointerSync", "(J)V",
+        (void*)nativeSendPointerSync },
+};
+
+int register_android_server_tv_TvUinputBridge(JNIEnv* env) {
+    int res = jniRegisterNativeMethods(env, "com/android/server/tv/UinputBridge",
+              gUinputBridgeMethods, NELEM(gUinputBridgeMethods));
+
+    LOG_FATAL_IF(res < 0, "Unable to register native methods.");
+    (void)res; // Don't complain about unused variable in the LOG_NDEBUG case
+
+    return 0;
+}
+
+} // namespace android
diff --git a/services/core/jni/onload.cpp b/services/core/jni/onload.cpp
index be99673..d3341e5 100644
--- a/services/core/jni/onload.cpp
+++ b/services/core/jni/onload.cpp
@@ -41,6 +41,7 @@
 int register_android_server_location_FlpHardwareProvider(JNIEnv* env);
 int register_android_server_connectivity_Vpn(JNIEnv* env);
 int register_android_server_hdmi_HdmiCecController(JNIEnv* env);
+int register_android_server_tv_TvUinputBridge(JNIEnv* env);
 int register_android_server_tv_TvInputHal(JNIEnv* env);
 int register_android_server_PersistentDataBlockService(JNIEnv* env);
 int register_android_server_Watchdog(JNIEnv* env);
@@ -81,6 +82,7 @@
     register_android_server_ConsumerIrService(env);
     register_android_server_BatteryStatsService(env);
     register_android_server_hdmi_HdmiCecController(env);
+    register_android_server_tv_TvUinputBridge(env);
     register_android_server_tv_TvInputHal(env);
     register_android_server_PersistentDataBlockService(env);
     register_android_server_Watchdog(env);
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
index d3d05f3..56e2001 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
@@ -2909,6 +2909,54 @@
         }
     }
 
+    public void forceRemoveActiveAdmin(ComponentName adminReceiver, int userHandle) {
+        if (!mHasFeature) {
+            return;
+        }
+        Preconditions.checkNotNull(adminReceiver, "ComponentName is null");
+        enforceShell("forceRemoveActiveAdmin");
+        long ident = mInjector.binderClearCallingIdentity();
+        try {
+            final ApplicationInfo ai;
+            try {
+                ai = mIPackageManager.getApplicationInfo(adminReceiver.getPackageName(),
+                        0, userHandle);
+            } catch (RemoteException e) {
+                throw new IllegalStateException(e);
+            }
+            if (ai == null) {
+                throw new IllegalStateException("Couldn't find package to remove admin "
+                        + adminReceiver.getPackageName() + " " + userHandle);
+            }
+            if ((ai.flags & ApplicationInfo.FLAG_TEST_ONLY) == 0) {
+                throw new SecurityException("Attempt to remove non-test admin " + adminReceiver
+                        + adminReceiver + " " + userHandle);
+            }
+            // If admin is a device or profile owner tidy that up first.
+            synchronized (this)  {
+                if (isDeviceOwner(adminReceiver, userHandle)) {
+                    clearDeviceOwnerLocked(getDeviceOwnerAdminLocked(), userHandle);
+                }
+                if (isProfileOwner(adminReceiver, userHandle)) {
+                    final ActiveAdmin admin = getActiveAdminUncheckedLocked(adminReceiver,
+                            userHandle, /* parent */ false);
+                    clearProfileOwnerLocked(admin, userHandle);
+                }
+            }
+            // Remove the admin skipping sending the broadcast.
+            removeAdminArtifacts(adminReceiver, userHandle);
+        } finally {
+            mInjector.binderRestoreCallingIdentity(ident);
+        }
+    }
+
+    private void enforceShell(String method) {
+        final int callingUid = Binder.getCallingUid();
+        if (callingUid != Process.SHELL_UID && callingUid != Process.ROOT_UID) {
+            throw new SecurityException("Non-shell user attempted to call " + method);
+        }
+    }
+
     @Override
     public void removeActiveAdmin(ComponentName adminReceiver, int userHandle) {
         if (!mHasFeature) {
@@ -4170,6 +4218,23 @@
         }
     }
 
+    private void removeCaApprovalsIfNeeded(int userId) {
+        for (UserInfo userInfo : mUserManager.getProfiles(userId)) {
+            boolean isSecure = mLockPatternUtils.isSecure(userInfo.id);
+            if (userInfo.isManagedProfile()){
+                isSecure |= mLockPatternUtils.isSecure(getProfileParentId(userInfo.id));
+            }
+            if (!isSecure) {
+                synchronized (this) {
+                    getUserData(userInfo.id).mAcceptedCaCertificates.clear();
+                    saveSettingsLocked(userInfo.id);
+                }
+
+                new MonitoringCertNotificationTask().execute(userInfo.id);
+            }
+        }
+    }
+
     @Override
     public boolean installCaCert(ComponentName admin, byte[] certBuffer) throws RemoteException {
         enforceCanManageCaCerts(admin);
@@ -4596,6 +4661,7 @@
                         DeviceAdminReceiver.ACTION_PASSWORD_CHANGED,
                         DeviceAdminInfo.USES_POLICY_LIMIT_PASSWORD, userHandle);
             }
+            removeCaApprovalsIfNeeded(userHandle);
         } finally {
             mInjector.binderRestoreCallingIdentity(ident);
         }
@@ -5732,32 +5798,37 @@
             enforceUserUnlocked(deviceOwnerUserId);
 
             final ActiveAdmin admin = getDeviceOwnerAdminLocked();
-            if (admin != null) {
-                admin.disableCamera = false;
-                admin.userRestrictions = null;
-                admin.forceEphemeralUsers = false;
-                mUserManagerInternal.setForceEphemeralUsers(admin.forceEphemeralUsers);
-            }
-            clearUserPoliciesLocked(deviceOwnerUserId);
-
-            mOwners.clearDeviceOwner();
-            mOwners.writeDeviceOwner();
-            updateDeviceOwnerLocked();
-            disableSecurityLoggingIfNotCompliant();
-            // Reactivate backup service.
             long ident = mInjector.binderClearCallingIdentity();
             try {
-                mInjector.getIBackupManager().setBackupServiceActive(UserHandle.USER_SYSTEM, true);
-
+                clearDeviceOwnerLocked(admin, deviceOwnerUserId);
                 removeActiveAdminLocked(deviceOwnerComponent, deviceOwnerUserId);
-            } catch (RemoteException e) {
-                throw new IllegalStateException("Failed reactivating backup service.", e);
             } finally {
                 mInjector.binderRestoreCallingIdentity(ident);
             }
         }
     }
 
+    private void clearDeviceOwnerLocked(ActiveAdmin admin, int userId) {
+        if (admin != null) {
+            admin.disableCamera = false;
+            admin.userRestrictions = null;
+            admin.forceEphemeralUsers = false;
+            mUserManagerInternal.setForceEphemeralUsers(admin.forceEphemeralUsers);
+        }
+        clearUserPoliciesLocked(userId);
+
+        mOwners.clearDeviceOwner();
+        mOwners.writeDeviceOwner();
+        updateDeviceOwnerLocked();
+        disableSecurityLoggingIfNotCompliant();
+        try {
+            // Reactivate backup service.
+            mInjector.getIBackupManager().setBackupServiceActive(UserHandle.USER_SYSTEM, true);
+        } catch (RemoteException e) {
+            throw new IllegalStateException("Failed reactivating backup service.", e);
+        }
+    }
+
     @Override
     public boolean setProfileOwner(ComponentName who, String ownerName, int userHandle) {
         if (!mHasFeature) {
@@ -5794,14 +5865,9 @@
         final ActiveAdmin admin =
                 getActiveAdminForCallerLocked(who, DeviceAdminInfo.USES_POLICY_PROFILE_OWNER);
         synchronized (this) {
-            admin.disableCamera = false;
-            admin.userRestrictions = null;
-            clearUserPoliciesLocked(userId);
-            mOwners.removeProfileOwner(userId);
-            mOwners.writeProfileOwner(userId);
-
             final long ident = mInjector.binderClearCallingIdentity();
             try {
+                clearProfileOwnerLocked(admin, userId);
                 removeActiveAdminLocked(who, userId);
             } finally {
                 mInjector.binderRestoreCallingIdentity(ident);
@@ -5809,6 +5875,16 @@
         }
     }
 
+    public void clearProfileOwnerLocked(ActiveAdmin admin, int userId) {
+        if (admin != null) {
+            admin.disableCamera = false;
+            admin.userRestrictions = null;
+        }
+        clearUserPoliciesLocked(userId);
+        mOwners.removeProfileOwner(userId);
+        mOwners.writeProfileOwner(userId);
+    }
+
     @Override
     public void setDeviceOwnerLockScreenInfo(ComponentName who, CharSequence info) {
         Preconditions.checkNotNull(who, "ComponentName is null");
@@ -5842,15 +5918,13 @@
         policy.mUserProvisioningState = DevicePolicyManager.STATE_USER_UNMANAGED;
         saveSettingsLocked(userId);
 
-        final long ident = mInjector.binderClearCallingIdentity();
         try {
             mIPackageManager.updatePermissionFlagsForAllApps(
                     PackageManager.FLAG_PERMISSION_POLICY_FIXED,
                     0  /* flagValues */, userId);
             pushUserRestrictions(userId);
         } catch (RemoteException re) {
-        } finally {
-            mInjector.binderRestoreCallingIdentity(ident);
+            // Shouldn't happen.
         }
     }
 
diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java
index 8c2f559..00b83841 100644
--- a/services/java/com/android/server/SystemServer.java
+++ b/services/java/com/android/server/SystemServer.java
@@ -90,6 +90,7 @@
 import com.android.server.storage.DeviceStorageMonitorService;
 import com.android.server.telecom.TelecomLoaderService;
 import com.android.server.trust.TrustManagerService;
+import com.android.server.tv.TvRemoteService;
 import com.android.server.tv.TvInputManagerService;
 import com.android.server.twilight.TwilightService;
 import com.android.server.usage.UsageStatsService;
@@ -165,6 +166,10 @@
     private static final String UNCRYPT_PACKAGE_FILE = "/cache/recovery/uncrypt_file";
     private static final String BLOCK_MAP_FILE = "/cache/recovery/block.map";
 
+    // maximum number of binder threads used for system_server
+    // will be higher than the system default
+    private static final int sMaxBinderThreads = 31;
+
     /**
      * Default theme used by the system context. This is used to style
      * system-provided dialogs, such as the Power Off dialog, and other
@@ -285,6 +290,9 @@
             // Ensure binder calls into the system always run at foreground priority.
             BinderInternal.disableBackgroundScheduling(true);
 
+            // Increase the number of binder threads in system_server
+            BinderInternal.setMaxThreads(sMaxBinderThreads);
+
             // Prepare the main looper thread (this thread).
             android.os.Process.setThreadPriority(
                 android.os.Process.THREAD_PRIORITY_FOREGROUND);
@@ -1104,6 +1112,10 @@
                 mSystemServiceManager.startService(MediaResourceMonitorService.class);
             }
 
+            if (mPackageManager.hasSystemFeature(PackageManager.FEATURE_LEANBACK)) {
+                mSystemServiceManager.startService(TvRemoteService.class);
+            }
+
             if (!disableNonCoreServices) {
                 traceBeginAndSlog("StartMediaRouterService");
                 try {
diff --git a/services/midi/java/com/android/server/midi/MidiService.java b/services/midi/java/com/android/server/midi/MidiService.java
index c6d5a7e..723be24 100644
--- a/services/midi/java/com/android/server/midi/MidiService.java
+++ b/services/midi/java/com/android/server/midi/MidiService.java
@@ -126,8 +126,8 @@
         // This client's PID
         private final int mPid;
         // List of all receivers for this client
-        private final ArrayList<IMidiDeviceListener> mListeners
-                = new ArrayList<IMidiDeviceListener>();
+        private final HashMap<IBinder, IMidiDeviceListener> mListeners
+                = new HashMap<IBinder, IMidiDeviceListener>();
         // List of all device connections for this client
         private final HashMap<IBinder, DeviceConnection> mDeviceConnections
                 = new HashMap<IBinder, DeviceConnection>();
@@ -143,11 +143,13 @@
         }
 
         public void addListener(IMidiDeviceListener listener) {
-            mListeners.add(listener);
+            // Use asBinder() so that we can match it in removeListener().
+            // The listener proxy objects themselves do not match.
+            mListeners.put(listener.asBinder(), listener);
         }
 
         public void removeListener(IMidiDeviceListener listener) {
-            mListeners.remove(listener);
+            mListeners.remove(listener.asBinder());
             if (mListeners.size() == 0 && mDeviceConnections.size() == 0) {
                 close();
             }
@@ -184,7 +186,7 @@
 
             MidiDeviceInfo deviceInfo = device.getDeviceInfo();
             try {
-                for (IMidiDeviceListener listener : mListeners) {
+                for (IMidiDeviceListener listener : mListeners.values()) {
                     listener.onDeviceAdded(deviceInfo);
                 }
             } catch (RemoteException e) {
@@ -198,7 +200,7 @@
 
             MidiDeviceInfo deviceInfo = device.getDeviceInfo();
             try {
-                for (IMidiDeviceListener listener : mListeners) {
+                for (IMidiDeviceListener listener : mListeners.values()) {
                     listener.onDeviceRemoved(deviceInfo);
                 }
             } catch (RemoteException e) {
@@ -211,7 +213,7 @@
             if (!device.isUidAllowed(mUid)) return;
 
             try {
-                for (IMidiDeviceListener listener : mListeners) {
+                for (IMidiDeviceListener listener : mListeners.values()) {
                     listener.onDeviceStatusChanged(status);
                 }
             } catch (RemoteException e) {
diff --git a/services/net/java/android/net/apf/ApfFilter.java b/services/net/java/android/net/apf/ApfFilter.java
index 6722332..5a10275 100644
--- a/services/net/java/android/net/apf/ApfFilter.java
+++ b/services/net/java/android/net/apf/ApfFilter.java
@@ -107,6 +107,7 @@
     private static final boolean VDBG = false;
 
     private static final int ETH_HEADER_LEN = 14;
+    private static final int ETH_DEST_ADDR_OFFSET = 0;
     private static final int ETH_ETHERTYPE_OFFSET = 12;
     private static final byte[] ETH_BROADCAST_MAC_ADDRESS = new byte[]{
             (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff };
@@ -582,7 +583,6 @@
      * DROP_LABEL or PASS_LABEL and does not fall off the end.
      * Preconditions:
      *  - Packet being filtered is IPv4
-     *  - R1 is initialized to 0
      */
     @GuardedBy("this")
     private void generateIPv4FilterLocked(ApfGenerator gen) throws IllegalInstructionException {
@@ -605,9 +605,8 @@
 
         // Drop all broadcasts besides DHCP addressed to us
         // If not a broadcast packet, pass
-        // NOTE: Relies on R1 being initialized to 0 which is the offset of the ethernet
-        //       destination MAC address
-        gen.addJumpIfBytesNotEqual(Register.R1, ETH_BROADCAST_MAC_ADDRESS, gen.PASS_LABEL);
+        gen.addLoadImmediate(Register.R0, ETH_DEST_ADDR_OFFSET);
+        gen.addJumpIfBytesNotEqual(Register.R0, ETH_BROADCAST_MAC_ADDRESS, gen.PASS_LABEL);
         // If not UDP, drop
         gen.addLoad8(Register.R0, IPV4_PROTOCOL_OFFSET);
         gen.addJumpIfR0NotEquals(IPPROTO_UDP, gen.DROP_LABEL);
diff --git a/services/net/java/android/net/apf/ApfGenerator.java b/services/net/java/android/net/apf/ApfGenerator.java
index 96c2ba5..d41fbce 100644
--- a/services/net/java/android/net/apf/ApfGenerator.java
+++ b/services/net/java/android/net/apf/ApfGenerator.java
@@ -734,7 +734,11 @@
      * Add an instruction to the end of the program to jump to {@code target} if the bytes of the
      * packet at, an offset specified by {@code register}, match {@code bytes}.
      */
-    public ApfGenerator addJumpIfBytesNotEqual(Register register, byte[] bytes, String target) {
+    public ApfGenerator addJumpIfBytesNotEqual(Register register, byte[] bytes, String target)
+            throws IllegalInstructionException {
+        if (register == Register.R1) {
+            throw new IllegalInstructionException("JNEBS fails with R1");
+        }
         Instruction instruction = new Instruction(Opcodes.JNEBS, register);
         instruction.setUnsignedImm(bytes.length);
         instruction.setTargetLabel(target);
diff --git a/services/net/java/android/net/dhcp/DhcpClient.java b/services/net/java/android/net/dhcp/DhcpClient.java
index 804fa03..6d0808f 100644
--- a/services/net/java/android/net/dhcp/DhcpClient.java
+++ b/services/net/java/android/net/dhcp/DhcpClient.java
@@ -30,8 +30,8 @@
 import android.net.InterfaceConfiguration;
 import android.net.LinkAddress;
 import android.net.NetworkUtils;
-import android.net.metrics.IpConnectivityEvent;
 import android.net.metrics.DhcpClientEvent;
+import android.net.metrics.DhcpErrorEvent;
 import android.os.IBinder;
 import android.os.INetworkManagementService;
 import android.os.Message;
@@ -264,8 +264,8 @@
             mInterfaceBroadcastAddr = new PacketSocketAddress(mIface.getIndex(),
                     DhcpPacket.ETHER_BROADCAST);
             return true;
-        } catch(SocketException e) {
-            Log.wtf(TAG, "Can't determine ifindex or MAC address for " + mIfaceName);
+        } catch(SocketException | NullPointerException e) {
+            Log.e(TAG, "Can't determine ifindex or MAC address for " + mIfaceName, e);
             return false;
         }
     }
@@ -358,15 +358,13 @@
                     if (!mStopped) {
                         Log.e(TAG, "Read error", e);
                     }
-                    DhcpClientEvent.logEvent(IpConnectivityEvent.IPCE_DHCP_RECV_ERROR,
-                            mIfaceName, e.getMessage());
+                    DhcpErrorEvent.logReceiveError(mIfaceName);
                 } catch (DhcpPacket.ParseException e) {
                     Log.e(TAG, "Can't parse packet: " + e.getMessage());
                     if (PACKET_DBG) {
                         Log.d(TAG, HexDump.dumpHexString(mPacket, 0, length));
                     }
-                    DhcpClientEvent.logEvent(IpConnectivityEvent.IPCE_DHCP_PARSE_ERROR, mIfaceName,
-                            e.getMessage());
+                    DhcpErrorEvent.logParseError(mIfaceName, e.errorCode);
                 }
             }
             if (DBG) Log.d(TAG, "Receive thread stopped");
@@ -463,9 +461,8 @@
 
     abstract class LoggingState extends State {
         public void enter() {
-            String msg = "Entering state " + getName();
-            if (STATE_DBG) Log.d(TAG, msg);
-            DhcpClientEvent.logEvent(IpConnectivityEvent.IPCE_DHCP_STATE_CHANGE, mIfaceName, msg);
+            if (STATE_DBG) Log.d(TAG, "Entering state " + getName());
+            DhcpClientEvent.logStateEvent(mIfaceName, getName());
         }
 
         private String messageName(int what) {
diff --git a/services/net/java/android/net/dhcp/DhcpPacket.java b/services/net/java/android/net/dhcp/DhcpPacket.java
index b184fe5..9aa66fe 100644
--- a/services/net/java/android/net/dhcp/DhcpPacket.java
+++ b/services/net/java/android/net/dhcp/DhcpPacket.java
@@ -709,8 +709,10 @@
     }
 
     public static class ParseException extends Exception {
-        public ParseException(String msg, Object... args) {
+        public final int errorCode;
+        public ParseException(int errorCode, String msg, Object... args) {
             super(String.format(msg, args));
+            this.errorCode = errorCode;
         }
     }
 
@@ -766,9 +768,8 @@
         // check to see if we need to parse L2, IP, and UDP encaps
         if (pktType == ENCAP_L2) {
             if (packet.remaining() < MIN_PACKET_LENGTH_L2) {
-                DhcpErrorEvent.logEvent(DhcpErrorEvent.L2_TOO_SHORT);
-                throw new ParseException("L2 packet too short, %d < %d",
-                        packet.remaining(), MIN_PACKET_LENGTH_L2);
+                throw new ParseException(DhcpErrorEvent.L2_TOO_SHORT,
+                        "L2 packet too short, %d < %d", packet.remaining(), MIN_PACKET_LENGTH_L2);
             }
 
             byte[] l2dst = new byte[6];
@@ -780,24 +781,22 @@
             short l2type = packet.getShort();
 
             if (l2type != OsConstants.ETH_P_IP) {
-                DhcpErrorEvent.logEvent(DhcpErrorEvent.L2_WRONG_ETH_TYPE);
-                throw new ParseException("Unexpected L2 type 0x%04x, expected 0x%04x",
-                        l2type, OsConstants.ETH_P_IP);
+                throw new ParseException(DhcpErrorEvent.L2_WRONG_ETH_TYPE,
+                        "Unexpected L2 type 0x%04x, expected 0x%04x", l2type, OsConstants.ETH_P_IP);
             }
         }
 
         if (pktType <= ENCAP_L3) {
             if (packet.remaining() < MIN_PACKET_LENGTH_L3) {
-                DhcpErrorEvent.logEvent(DhcpErrorEvent.L3_TOO_SHORT);
-                throw new ParseException("L3 packet too short, %d < %d",
-                        packet.remaining(), MIN_PACKET_LENGTH_L3);
+                throw new ParseException(DhcpErrorEvent.L3_TOO_SHORT,
+                        "L3 packet too short, %d < %d", packet.remaining(), MIN_PACKET_LENGTH_L3);
             }
 
             byte ipTypeAndLength = packet.get();
             int ipVersion = (ipTypeAndLength & 0xf0) >> 4;
             if (ipVersion != 4) {
-                DhcpErrorEvent.logEvent(DhcpErrorEvent.L3_NOT_IPV4);
-                throw new ParseException("Invalid IP version %d", ipVersion);
+                throw new ParseException(
+                        DhcpErrorEvent.L3_NOT_IPV4, "Invalid IP version %d", ipVersion);
             }
 
             // System.out.println("ipType is " + ipType);
@@ -814,8 +813,8 @@
             ipDst = readIpAddress(packet);
 
             if (ipProto != IP_TYPE_UDP) {
-                DhcpErrorEvent.logEvent(DhcpErrorEvent.L4_NOT_UDP);
-                throw new ParseException("Protocol not UDP: %d", ipProto);
+                throw new ParseException(
+                        DhcpErrorEvent.L4_NOT_UDP, "Protocol not UDP: %d", ipProto);
             }
 
             // Skip options. This cannot cause us to read beyond the end of the buffer because the
@@ -841,15 +840,15 @@
                 // socket to drop packets that don't have the right source ports. However, it's
                 // possible that a packet arrives between when the socket is bound and when the
                 // filter is set. http://b/26696823 .
-                DhcpErrorEvent.logEvent(DhcpErrorEvent.L4_WRONG_PORT);
-                throw new ParseException("Unexpected UDP ports %d->%d", udpSrcPort, udpDstPort);
+                throw new ParseException(DhcpErrorEvent.L4_WRONG_PORT,
+                        "Unexpected UDP ports %d->%d", udpSrcPort, udpDstPort);
             }
         }
 
         // We need to check the length even for ENCAP_L3 because the IPv4 header is variable-length.
         if (pktType > ENCAP_BOOTP || packet.remaining() < MIN_PACKET_LENGTH_BOOTP) {
-            DhcpErrorEvent.logEvent(DhcpErrorEvent.BOOTP_TOO_SHORT);
-            throw new ParseException("Invalid type or BOOTP packet too short, %d < %d",
+            throw new ParseException(DhcpErrorEvent.BOOTP_TOO_SHORT,
+                        "Invalid type or BOOTP packet too short, %d < %d",
                         packet.remaining(), MIN_PACKET_LENGTH_BOOTP);
         }
 
@@ -873,8 +872,8 @@
             packet.get(ipv4addr);
             relayIp = (Inet4Address) Inet4Address.getByAddress(ipv4addr);
         } catch (UnknownHostException ex) {
-            DhcpErrorEvent.logEvent(DhcpErrorEvent.L3_INVALID_IP);
-            throw new ParseException("Invalid IPv4 address: %s", Arrays.toString(ipv4addr));
+            throw new ParseException(DhcpErrorEvent.L3_INVALID_IP,
+                    "Invalid IPv4 address: %s", Arrays.toString(ipv4addr));
         }
 
         // Some DHCP servers have been known to announce invalid client hardware address values such
@@ -898,9 +897,9 @@
         int dhcpMagicCookie = packet.getInt();
 
         if (dhcpMagicCookie != DHCP_MAGIC_COOKIE) {
-            DhcpErrorEvent.logEvent(DhcpErrorEvent.DHCP_BAD_MAGIC_COOKIE);
-            throw new ParseException("Bad magic cookie 0x%08x, should be 0x%08x", dhcpMagicCookie,
-                    DHCP_MAGIC_COOKIE);
+            throw new ParseException(DhcpErrorEvent.DHCP_BAD_MAGIC_COOKIE,
+                    "Bad magic cookie 0x%08x, should be 0x%08x",
+                    dhcpMagicCookie, DHCP_MAGIC_COOKIE);
         }
 
         // parse options
@@ -1009,15 +1008,17 @@
                     }
 
                     if (expectedLen != optionLen) {
-                        DhcpErrorEvent.logEvent(
+                        final int errorCode = DhcpErrorEvent.errorCodeWithOption(
                                 DhcpErrorEvent.DHCP_INVALID_OPTION_LENGTH, optionType);
-                        throw new ParseException("Invalid length %d for option %d, expected %d",
+                        throw new ParseException(errorCode,
+                                "Invalid length %d for option %d, expected %d",
                                 optionLen, optionType, expectedLen);
                     }
                 }
             } catch (BufferUnderflowException e) {
-                DhcpErrorEvent.logEvent(DhcpErrorEvent.BUFFER_UNDERFLOW, optionType);
-                throw new ParseException("BufferUnderflowException");
+                final int errorCode = DhcpErrorEvent.errorCodeWithOption(
+                        DhcpErrorEvent.BUFFER_UNDERFLOW, optionType);
+                throw new ParseException(errorCode, "BufferUnderflowException");
             }
         }
 
@@ -1025,8 +1026,8 @@
 
         switch(dhcpType) {
             case (byte) 0xFF:
-                DhcpErrorEvent.logEvent(DhcpErrorEvent.DHCP_NO_MSG_TYPE);
-                throw new ParseException("No DHCP message type option");
+                throw new ParseException(DhcpErrorEvent.DHCP_NO_MSG_TYPE,
+                        "No DHCP message type option");
             case DHCP_MESSAGE_TYPE_DISCOVER:
                 newPacket = new DhcpDiscoverPacket(
                     transactionId, secs, clientMac, broadcast);
@@ -1059,8 +1060,8 @@
                     clientMac);
                 break;
             default:
-                DhcpErrorEvent.logEvent(DhcpErrorEvent.DHCP_UNKNOWN_MSG_TYPE);
-                throw new ParseException("Unimplemented DHCP type %d", dhcpType);
+                throw new ParseException(DhcpErrorEvent.DHCP_UNKNOWN_MSG_TYPE,
+                        "Unimplemented DHCP type %d", dhcpType);
         }
 
         newPacket.mBroadcastAddress = bcAddr;
diff --git a/services/net/java/android/net/ip/IpManager.java b/services/net/java/android/net/ip/IpManager.java
index 59ebf1b..2683673 100644
--- a/services/net/java/android/net/ip/IpManager.java
+++ b/services/net/java/android/net/ip/IpManager.java
@@ -37,6 +37,7 @@
 import android.os.ServiceManager;
 import android.os.SystemClock;
 import android.text.TextUtils;
+import android.util.LocalLog;
 import android.util.Log;
 import android.util.SparseArray;
 
@@ -157,6 +158,92 @@
         }
     }
 
+    // Use a wrapper class to log in order to ensure complete and detailed
+    // logging. This method is lighter weight than annotations/reflection
+    // and has the following benefits:
+    //
+    //     - No invoked method can be forgotten.
+    //       Any new method added to IpManager.Callback must be overridden
+    //       here or it will never be called.
+    //
+    //     - No invoking call site can be forgotten.
+    //       Centralized logging in this way means call sites don't need to
+    //       remember to log, and therefore no call site can be forgotten.
+    //
+    //     - No variation in log format among call sites.
+    //       Encourages logging of any available arguments, and all call sites
+    //       are necessarily logged identically.
+    //
+    // TODO: Find an lighter weight approach.
+    private class LoggingCallbackWrapper extends Callback {
+        private static final String PREFIX = "INVOKE ";
+        private Callback mCallback;
+
+        public LoggingCallbackWrapper(Callback callback) {
+            mCallback = callback;
+        }
+
+        private void log(String msg) {
+            mLocalLog.log(PREFIX + msg);
+        }
+
+        @Override
+        public void onPreDhcpAction() {
+            mCallback.onPreDhcpAction();
+            log("onPreDhcpAction()");
+        }
+        @Override
+        public void onPostDhcpAction() {
+            mCallback.onPostDhcpAction();
+            log("onPostDhcpAction()");
+        }
+        @Override
+        public void onNewDhcpResults(DhcpResults dhcpResults) {
+            mCallback.onNewDhcpResults(dhcpResults);
+            log("onNewDhcpResults({" + dhcpResults + "})");
+        }
+        @Override
+        public void onProvisioningSuccess(LinkProperties newLp) {
+            mCallback.onProvisioningSuccess(newLp);
+            log("onProvisioningSuccess({" + newLp + "})");
+        }
+        @Override
+        public void onProvisioningFailure(LinkProperties newLp) {
+            mCallback.onProvisioningFailure(newLp);
+            log("onProvisioningFailure({" + newLp + "})");
+        }
+        @Override
+        public void onLinkPropertiesChange(LinkProperties newLp) {
+            mCallback.onLinkPropertiesChange(newLp);
+            log("onLinkPropertiesChange({" + newLp + "})");
+        }
+        @Override
+        public void onReachabilityLost(String logMsg) {
+            mCallback.onReachabilityLost(logMsg);
+            log("onReachabilityLost(" + logMsg + ")");
+        }
+        @Override
+        public void onQuit() {
+            mCallback.onQuit();
+            log("onQuit()");
+        }
+        @Override
+        public void installPacketFilter(byte[] filter) {
+            mCallback.installPacketFilter(filter);
+            log("installPacketFilter(byte[" + filter.length + "])");
+        }
+        @Override
+        public void setFallbackMulticastFilter(boolean enabled) {
+            mCallback.setFallbackMulticastFilter(enabled);
+            log("setFallbackMulticastFilter(" + enabled + ")");
+        }
+        @Override
+        public void setNeighborDiscoveryOffload(boolean enable) {
+            mCallback.setNeighborDiscoveryOffload(enable);
+            log("setNeighborDiscoveryOffload(" + enable + ")");
+        }
+    }
+
     /**
      * This class encapsulates parameters to be passed to
      * IpManager#startProvisioning(). A defensive copy is made by IpManager
@@ -234,7 +321,7 @@
     private static final int CMD_UPDATE_HTTP_PROXY = 7;
     private static final int CMD_SET_MULTICAST_FILTER = 8;
 
-    private static final int MAX_LOG_RECORDS = 1000;
+    private static final int MAX_LOG_RECORDS = 500;
 
     private static final boolean NO_CALLBACKS = false;
     private static final boolean SEND_CALLBACKS = true;
@@ -256,6 +343,7 @@
     protected final Callback mCallback;
     private final INetworkManagementService mNwService;
     private final NetlinkTracker mNetlinkTracker;
+    private final LocalLog mLocalLog;
 
     private NetworkInterface mNetworkInterface;
 
@@ -296,7 +384,7 @@
         mContext = context;
         mInterfaceName = ifName;
         mClatInterfaceName = CLAT_PREFIX + ifName;
-        mCallback = callback;
+        mCallback = new LoggingCallbackWrapper(callback);
         mNwService = nwService;
 
         mNetlinkTracker = new NetlinkTracker(
@@ -341,7 +429,7 @@
         addState(mStoppingState);
 
         setInitialState(mStoppedState);
-        setLogRecSize(MAX_LOG_RECORDS);
+        mLocalLog = new LocalLog(MAX_LOG_RECORDS);
         super.start();
     }
 
@@ -436,6 +524,12 @@
             pw.println("No apf support");
         }
         pw.decreaseIndent();
+
+        pw.println();
+        pw.println("StateMachine dump:");
+        pw.increaseIndent();
+        mLocalLog.readOnlyLocalLog().dump(fd, pw, args);
+        pw.decreaseIndent();
     }
 
 
@@ -451,15 +545,27 @@
     @Override
     protected String getLogRecString(Message msg) {
         final String logLine = String.format(
-                "iface{%s/%d} arg1{%d} arg2{%d} obj{%s}",
+                "%s/%d %d %d %s",
                 mInterfaceName, mNetworkInterface == null ? -1 : mNetworkInterface.getIndex(),
                 msg.arg1, msg.arg2, Objects.toString(msg.obj));
+
+        final String richerLogLine = getWhatToString(msg.what) + " " + logLine;
+        mLocalLog.log(richerLogLine);
         if (VDBG) {
-            Log.d(mTag, getWhatToString(msg.what) + " " + logLine);
+            Log.d(mTag, richerLogLine);
         }
+
         return logLine;
     }
 
+    @Override
+    protected boolean recordLogRec(Message msg) {
+        // Don't log EVENT_NETLINK_LINKPROPERTIES_CHANGED. They can be noisy,
+        // and we already log any LinkProperties change that results in an
+        // invocation of IpManager.Callback#onLinkPropertiesChange().
+        return (msg.what != EVENT_NETLINK_LINKPROPERTIES_CHANGED);
+    }
+
     private void getNetworkInterface() {
         try {
             mNetworkInterface = NetworkInterface.getByName(mInterfaceName);
@@ -690,7 +796,7 @@
             final InterfaceConfiguration ifcg = new InterfaceConfiguration();
             ifcg.setLinkAddress(new LinkAddress("0.0.0.0/0"));
             mNwService.setInterfaceConfig(mInterfaceName, ifcg);
-        } catch (RemoteException e) {
+        } catch (IllegalStateException | RemoteException e) {
             Log.e(mTag, "ALERT: Failed to clear IPv4 address on interface " + mInterfaceName, e);
         }
     }
diff --git a/services/net/java/android/net/ip/IpReachabilityMonitor.java b/services/net/java/android/net/ip/IpReachabilityMonitor.java
index c8dbe02..27600a7 100644
--- a/services/net/java/android/net/ip/IpReachabilityMonitor.java
+++ b/services/net/java/android/net/ip/IpReachabilityMonitor.java
@@ -24,9 +24,7 @@
 import android.net.LinkProperties.ProvisioningChange;
 import android.net.ProxyInfo;
 import android.net.RouteInfo;
-import android.net.metrics.IpReachabilityMonitorMessageEvent;
-import android.net.metrics.IpReachabilityMonitorProbeEvent;
-import android.net.metrics.IpReachabilityMonitorLostEvent;
+import android.net.metrics.IpReachabilityEvent;
 import android.net.netlink.NetlinkConstants;
 import android.net.netlink.NetlinkErrorMessage;
 import android.net.netlink.NetlinkMessage;
@@ -168,47 +166,54 @@
      * Make the kernel perform neighbor reachability detection (IPv4 ARP or IPv6 ND)
      * for the given IP address on the specified interface index.
      *
-     * @return true, if the request was successfully passed to the kernel; false otherwise.
+     * @return 0 if the request was successfully passed to the kernel; otherwise return
+     *         a non-zero error code.
      */
-    public static boolean probeNeighbor(int ifIndex, InetAddress ip) {
-        final long IO_TIMEOUT = 300L;
+    private static int probeNeighbor(int ifIndex, InetAddress ip) {
         final String msgSnippet = "probing ip=" + ip.getHostAddress() + "%" + ifIndex;
         if (DBG) { Log.d(TAG, msgSnippet); }
 
         final byte[] msg = RtNetlinkNeighborMessage.newNewNeighborMessage(
                 1, ip, StructNdMsg.NUD_PROBE, ifIndex, null);
-        boolean returnValue = false;
 
+        int errno = -OsConstants.EPROTO;
         try (NetlinkSocket nlSocket = new NetlinkSocket(OsConstants.NETLINK_ROUTE)) {
+            final long IO_TIMEOUT = 300L;
             nlSocket.connectToKernel();
             nlSocket.sendMessage(msg, 0, msg.length, IO_TIMEOUT);
             final ByteBuffer bytes = nlSocket.recvMessage(IO_TIMEOUT);
+            // recvMessage() guaranteed to not return null if it did not throw.
             final NetlinkMessage response = NetlinkMessage.parse(bytes);
             if (response != null && response instanceof NetlinkErrorMessage &&
-                    (((NetlinkErrorMessage) response).getNlMsgError() != null) &&
-                    (((NetlinkErrorMessage) response).getNlMsgError().error == 0)) {
-                returnValue = true;
-            } else {
-                String errmsg;
-                if (bytes == null) {
-                    errmsg = "null recvMessage";
-                } else if (response == null) {
-                    bytes.position(0);
-                    errmsg = "raw bytes: " + NetlinkConstants.hexify(bytes);
-                } else {
+                    (((NetlinkErrorMessage) response).getNlMsgError() != null)) {
+                errno = ((NetlinkErrorMessage) response).getNlMsgError().error;
+                if (errno != 0) {
                     // TODO: consider ignoring EINVAL (-22), which appears to be
                     // normal when probing a neighbor for which the kernel does
                     // not already have / no longer has a link layer address.
+                    Log.e(TAG, "Error " + msgSnippet + ", errmsg=" + response.toString());
+                }
+            } else {
+                String errmsg;
+                if (response == null) {
+                    bytes.position(0);
+                    errmsg = "raw bytes: " + NetlinkConstants.hexify(bytes);
+                } else {
                     errmsg = response.toString();
                 }
                 Log.e(TAG, "Error " + msgSnippet + ", errmsg=" + errmsg);
             }
-        } catch (ErrnoException | InterruptedIOException | SocketException e) {
-            Log.d(TAG, "Error " + msgSnippet, e);
+        } catch (ErrnoException e) {
+            Log.e(TAG, "Error " + msgSnippet, e);
+            errno = -e.errno;
+        } catch (InterruptedIOException e) {
+            Log.e(TAG, "Error " + msgSnippet, e);
+            errno = -OsConstants.ETIMEDOUT;
+        } catch (SocketException e) {
+            Log.e(TAG, "Error " + msgSnippet, e);
+            errno = -OsConstants.EIO;
         }
-        IpReachabilityMonitorProbeEvent.logEvent("ifindex-" + ifIndex, ip.getHostAddress(),
-                returnValue);
-        return returnValue;
+        return errno;
     }
 
     public IpReachabilityMonitor(Context context, String ifName, Callback callback)
@@ -354,7 +359,7 @@
         }
 
         if (delta == ProvisioningChange.LOST_PROVISIONING) {
-            IpReachabilityMonitorLostEvent.logEvent(mInterfaceName);
+            IpReachabilityEvent.logProvisioningLost(mInterfaceName);
             final String logMsg = "FAILURE: LOST_PROVISIONING, " + msg;
             Log.w(TAG, logMsg);
             if (mCallback != null) {
@@ -362,6 +367,8 @@
                 // an InetAddress argument.
                 mCallback.notifyLost(ip, logMsg);
             }
+        } else {
+            IpReachabilityEvent.logNudFailed(mInterfaceName);
         }
     }
 
@@ -385,7 +392,8 @@
             if (!stillRunning()) {
                 break;
             }
-            probeNeighbor(mInterfaceIndex, target);
+            final int returnValue = probeNeighbor(mInterfaceIndex, target);
+            IpReachabilityEvent.logProbeEvent(mInterfaceName, returnValue);
         }
     }
 
@@ -523,8 +531,6 @@
 
             final short msgType = neighMsg.getHeader().nlmsg_type;
             final short nudState = ndMsg.ndm_state;
-            IpReachabilityMonitorMessageEvent.logEvent(mInterfaceName,
-                    destination.getHostAddress(), msgType, nudState);
             final String eventMsg = "NeighborEvent{"
                     + "elapsedMs=" + whenMs + ", "
                     + destination.getHostAddress() + ", "
diff --git a/services/net/java/android/net/util/Stopwatch.java b/services/net/java/android/net/util/Stopwatch.java
new file mode 100644
index 0000000..cb15ee5
--- /dev/null
+++ b/services/net/java/android/net/util/Stopwatch.java
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.net.util;
+
+import android.os.SystemClock;
+
+
+/**
+ * @hide
+ */
+public class Stopwatch {
+    private long mStartTimeMs;
+    private long mStopTimeMs;
+
+    public boolean isStarted() {
+        return (mStartTimeMs > 0);
+    }
+
+    public boolean isStopped() {
+        return (mStopTimeMs > 0);
+    }
+
+    public boolean isRunning() {
+        return (isStarted() && !isStopped());
+    }
+
+    // Returning |this| makes possible the following usage pattern:
+    //
+    //     Stopwatch s = new Stopwatch().start();
+    public Stopwatch start() {
+        if (!isStarted()) {
+            mStartTimeMs = SystemClock.elapsedRealtime();
+        }
+        return this;
+    }
+
+    // Returns the total time recorded, in milliseconds, or 0 if not started.
+    public long stop() {
+        if (isRunning()) {
+            mStopTimeMs = SystemClock.elapsedRealtime();
+        }
+        // Return either the delta after having stopped, or 0.
+        return (mStopTimeMs - mStartTimeMs);
+    }
+
+    // Returns the total time recorded to date, in milliseconds.
+    // If the Stopwatch is not running, returns the same value as stop(),
+    // i.e. either the total time recorded before stopping or 0.
+    public long lap() {
+        if (isRunning()) {
+            return (SystemClock.elapsedRealtime() - mStartTimeMs);
+        } else {
+            return stop();
+        }
+    }
+
+    public void reset() {
+        mStartTimeMs = 0;
+        mStopTimeMs = 0;
+    }
+}
diff --git a/services/print/java/com/android/server/print/UserState.java b/services/print/java/com/android/server/print/UserState.java
index 026942e..7182161 100644
--- a/services/print/java/com/android/server/print/UserState.java
+++ b/services/print/java/com/android/server/print/UserState.java
@@ -593,7 +593,11 @@
                     new ListenerRecord<IPrintServicesChangeListener>(listener) {
                         @Override
                         public void onBinderDied() {
-                            mPrintServicesChangeListenerRecords.remove(this);
+                            synchronized (mLock) {
+                                if (mPrintServicesChangeListenerRecords != null) {
+                                    mPrintServicesChangeListenerRecords.remove(this);
+                                }
+                            }
                         }
                     });
         }
diff --git a/services/tests/servicestests/Android.mk b/services/tests/servicestests/Android.mk
index 7ffdb35..59c6970 100644
--- a/services/tests/servicestests/Android.mk
+++ b/services/tests/servicestests/Android.mk
@@ -28,10 +28,22 @@
 
 LOCAL_CERTIFICATE := platform
 
-LOCAL_JNI_SHARED_LIBRARIES := \
-    libapfjni \
+# These are not normally accessible from apps so they must be explicitly included.
+LOCAL_JNI_SHARED_LIBRARIES := libservicestestsjni \
+    libbacktrace \
+    libbase \
+    libbinder \
     libc++ \
-    libnativehelper
+    libcutils \
+    liblog \
+    liblzma \
+    libnativehelper \
+    libnetdaidl \
+    libui \
+    libunwind \
+    libutils
+
+LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
 
 include $(BUILD_PACKAGE)
 
@@ -45,22 +57,24 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_CFLAGS := -Wall -Werror
+LOCAL_CFLAGS := -Wall -Wextra -Werror
 
 LOCAL_C_INCLUDES := \
   libpcap \
   hardware/google/apf
 
-LOCAL_SRC_FILES := apf_jni.cpp
+LOCAL_SRC_FILES := $(call all-cpp-files-under)
 
 LOCAL_SHARED_LIBRARIES := \
+  libbinder \
+  libcutils \
   libnativehelper \
-  liblog
+  libnetdaidl
 
 LOCAL_STATIC_LIBRARIES := \
   libpcap \
   libapf
 
-LOCAL_MODULE := libapfjni
+LOCAL_MODULE := libservicestestsjni
 
 include $(BUILD_SHARED_LIBRARY)
diff --git a/services/tests/servicestests/AndroidManifest.xml b/services/tests/servicestests/AndroidManifest.xml
index 23f186c..7017d81 100644
--- a/services/tests/servicestests/AndroidManifest.xml
+++ b/services/tests/servicestests/AndroidManifest.xml
@@ -42,6 +42,7 @@
     <uses-permission android:name="android.permission.INTERNET" />
     <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
     <uses-permission android:name="android.permission.PACKET_KEEPALIVE_OFFLOAD" />
+    <uses-permission android:name="android.permission.GET_INTENT_SENDER_INTENT" />
 
     <application>
         <uses-library android:name="android.test.runner" />
diff --git a/services/tests/servicestests/jni/UidRangeTest.cpp b/services/tests/servicestests/jni/UidRangeTest.cpp
new file mode 100644
index 0000000..7941731
--- /dev/null
+++ b/services/tests/servicestests/jni/UidRangeTest.cpp
@@ -0,0 +1,79 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <memory>
+
+#include <binder/Parcel.h>
+
+#include "UidRangeTest.h"
+
+using android::net::UidRange;
+
+extern "C"
+JNIEXPORT jbyteArray Java_android_net_UidRangeTest_readAndWriteNative(JNIEnv* env, jclass,
+        jbyteArray inParcel) {
+    const UidRange range = unmarshall(env, inParcel);
+    return marshall(env, range);
+}
+
+extern "C"
+JNIEXPORT jint Java_android_net_UidRangeTest_getStart(JNIEnv* env, jclass, jbyteArray inParcel) {
+    const UidRange range = unmarshall(env, inParcel);
+    return range.getStart();
+}
+
+extern "C"
+JNIEXPORT jint Java_android_net_UidRangeTest_getStop(JNIEnv* env, jclass, jbyteArray inParcel) {
+    const UidRange range = unmarshall(env, inParcel);
+    return range.getStop();
+}
+
+
+/**
+ * Reads exactly one UidRange from 'parcelData' assuming that it is a Parcel. Any bytes afterward
+ * are ignored.
+ */
+UidRange unmarshall(JNIEnv* env, jbyteArray parcelData) {
+    const int length = env->GetArrayLength(parcelData);
+
+    std::unique_ptr<uint8_t> bytes(new uint8_t[length]);
+    env->GetByteArrayRegion(parcelData, 0, length, reinterpret_cast<jbyte*>(bytes.get()));
+
+    android::Parcel p;
+    p.setData(bytes.get(), length);
+
+    UidRange range;
+    range.readFromParcel(&p);
+    return range;
+}
+
+/**
+ * Creates a Java byte[] array and writes the contents of 'range' to it as a Parcel containing
+ * exactly one object.
+ *
+ * Every UidRange maps to a unique parcel object, so both 'marshall(e, unmarshall(e, x))' and
+ * 'unmarshall(e, marshall(e, x))' should be fixed points.
+ */
+jbyteArray marshall(JNIEnv* env, const UidRange& range) {
+    android::Parcel p;
+    range.writeToParcel(&p);
+    const int length = p.dataSize();
+
+    jbyteArray parcelData = env->NewByteArray(length);
+    env->SetByteArrayRegion(parcelData, 0, length, reinterpret_cast<const jbyte*>(p.data()));
+
+    return parcelData;
+}
diff --git a/services/tests/servicestests/jni/UidRangeTest.h b/services/tests/servicestests/jni/UidRangeTest.h
new file mode 100644
index 0000000..b7e7453
--- /dev/null
+++ b/services/tests/servicestests/jni/UidRangeTest.h
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef _ANDROID_NET_UIDRANGETEST_H_
+#define _ANDROID_NET_UIDRANGETEST_H_
+
+#include <jni.h>
+
+#include "android/net/UidRange.h"
+
+android::net::UidRange unmarshall(JNIEnv* env, jbyteArray parcelData);
+
+jbyteArray marshall(JNIEnv* env, const android::net::UidRange& range);
+
+extern "C"
+JNIEXPORT jbyteArray Java_android_net_UidRangeTest_readAndWriteNative(JNIEnv* env, jclass,
+        jbyteArray inParcel);
+
+extern "C"
+JNIEXPORT jint Java_android_net_UidRangeTest_getStart(JNIEnv* env, jclass, jbyteArray inParcel);
+
+extern "C"
+JNIEXPORT jint Java_android_net_UidRangeTest_getStop(JNIEnv* env, jclass, jbyteArray inParcel);
+
+#endif  //  _ANDROID_NET_UIDRANGETEST_H_
diff --git a/services/tests/servicestests/src/android/net/UidRangeTest.java b/services/tests/servicestests/src/android/net/UidRangeTest.java
new file mode 100644
index 0000000..221fe0f
--- /dev/null
+++ b/services/tests/servicestests/src/android/net/UidRangeTest.java
@@ -0,0 +1,112 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.net;
+
+import android.os.Parcel;
+import android.test.suitebuilder.annotation.SmallTest;
+
+import junit.framework.TestCase;
+
+import static org.junit.Assert.assertArrayEquals;
+
+public class UidRangeTest extends TestCase {
+
+    static {
+        System.loadLibrary("servicestestsjni");
+    }
+
+    private static native byte[] readAndWriteNative(byte[] inParcel);
+    private static native int getStart(byte[] inParcel);
+    private static native int getStop(byte[] inParcel);
+
+    @SmallTest
+    public void testNativeParcelUnparcel() {
+        UidRange original = new UidRange(1234, Integer.MAX_VALUE);
+
+        byte[] inParcel = marshall(original);
+        byte[] outParcel = readAndWriteNative(inParcel);
+        UidRange roundTrip = unmarshall(outParcel);
+
+        assertEquals(original, roundTrip);
+        assertArrayEquals(inParcel, outParcel);
+    }
+
+    @SmallTest
+    public void testIndividualNativeFields() {
+        UidRange original = new UidRange(0x11115678, 0x22224321);
+        byte[] originalBytes = marshall(original);
+
+        assertEquals(original.start, getStart(originalBytes));
+        assertEquals(original.stop, getStop(originalBytes));
+    }
+
+    @SmallTest
+    public void testSingleItemUidRangeAllowed() {
+        new UidRange(123, 123);
+        new UidRange(0, 0);
+        new UidRange(Integer.MAX_VALUE, Integer.MAX_VALUE);
+    }
+
+    @SmallTest
+    public void testNegativeUidsDisallowed() {
+        try {
+            new UidRange(-2, 100);
+            fail("Exception not thrown for negative start UID");
+        } catch (IllegalArgumentException expected) {
+        }
+
+        try {
+            new UidRange(-200, -100);
+            fail("Exception not thrown for negative stop UID");
+        } catch (IllegalArgumentException expected) {
+        }
+    }
+
+    @SmallTest
+    public void testStopLessThanStartDisallowed() {
+        final int x = 4195000;
+        try {
+            new UidRange(x, x - 1);
+            fail("Exception not thrown for negative-length UID range");
+        } catch (IllegalArgumentException expected) {
+        }
+    }
+
+    /**
+     * Write a {@link UidRange} into an empty parcel and return the underlying data.
+     *
+     * @see unmarshall(byte[])
+     */
+    private static byte[] marshall(UidRange range) {
+        Parcel p = Parcel.obtain();
+        range.writeToParcel(p, /* flags */ 0);
+        p.setDataPosition(0);
+        return p.marshall();
+    }
+
+    /**
+     * Read raw bytes into a parcel, and read a {@link UidRange} back out of them.
+     *
+     * @see marshall(UidRange)
+     */
+    private static UidRange unmarshall(byte[] data) {
+        Parcel p = Parcel.obtain();
+        p.unmarshall(data, 0, data.length);
+        p.setDataPosition(0);
+        return UidRange.CREATOR.createFromParcel(p);
+    }
+}
diff --git a/services/tests/servicestests/src/com/android/server/ApfTest.java b/services/tests/servicestests/src/com/android/server/ApfTest.java
index 640a6c9..9ba27cb 100644
--- a/services/tests/servicestests/src/com/android/server/ApfTest.java
+++ b/services/tests/servicestests/src/com/android/server/ApfTest.java
@@ -43,7 +43,7 @@
     public void setUp() throws Exception {
         super.setUp();
         // Load up native shared library containing APF interpreter exposed via JNI.
-        System.loadLibrary("apfjni");
+        System.loadLibrary("servicestestsjni");
     }
 
     // Expected return codes from APF interpreter.
diff --git a/services/tests/servicestests/src/com/android/server/ConnectivityServiceTest.java b/services/tests/servicestests/src/com/android/server/ConnectivityServiceTest.java
index 26eed24..4fae4a7 100644
--- a/services/tests/servicestests/src/com/android/server/ConnectivityServiceTest.java
+++ b/services/tests/servicestests/src/com/android/server/ConnectivityServiceTest.java
@@ -74,6 +74,7 @@
 import com.android.server.net.NetworkPinner;
 
 import java.net.InetAddress;
+import java.util.ArrayList;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.LinkedBlockingQueue;
 import java.util.concurrent.TimeUnit;
@@ -1788,4 +1789,96 @@
         waitFor(cv);
         assertPinnedToWifiWithCellDefault();
     }
+
+    @SmallTest
+    public void testNetworkRequestMaximum() {
+        final int MAX_REQUESTS = 100;
+        // Test that the limit is enforced when MAX_REQUESTS simultaneous requests are added.
+        NetworkRequest networkRequest = new NetworkRequest.Builder().build();
+        ArrayList<NetworkCallback> networkCallbacks = new ArrayList<NetworkCallback>();
+        try {
+            for (int i = 0; i < MAX_REQUESTS; i++) {
+                NetworkCallback networkCallback = new NetworkCallback();
+                mCm.requestNetwork(networkRequest, networkCallback);
+                networkCallbacks.add(networkCallback);
+            }
+            fail("Registering " + MAX_REQUESTS + " NetworkRequests did not throw exception");
+        } catch (IllegalArgumentException expected) {}
+        for (NetworkCallback networkCallback : networkCallbacks) {
+            mCm.unregisterNetworkCallback(networkCallback);
+        }
+        networkCallbacks.clear();
+
+        try {
+            for (int i = 0; i < MAX_REQUESTS; i++) {
+                NetworkCallback networkCallback = new NetworkCallback();
+                mCm.registerNetworkCallback(networkRequest, networkCallback);
+                networkCallbacks.add(networkCallback);
+            }
+            fail("Registering " + MAX_REQUESTS + " NetworkCallbacks did not throw exception");
+        } catch (IllegalArgumentException expected) {}
+        for (NetworkCallback networkCallback : networkCallbacks) {
+            mCm.unregisterNetworkCallback(networkCallback);
+        }
+        networkCallbacks.clear();
+
+        ArrayList<PendingIntent> pendingIntents = new ArrayList<PendingIntent>();
+        try {
+            for (int i = 0; i < MAX_REQUESTS + 1; i++) {
+                PendingIntent pendingIntent =
+                        PendingIntent.getBroadcast(mContext, 0, new Intent("a" + i), 0);
+                mCm.requestNetwork(networkRequest, pendingIntent);
+                pendingIntents.add(pendingIntent);
+            }
+            fail("Registering " + MAX_REQUESTS +
+                    " PendingIntent NetworkRequests did not throw exception");
+        } catch (IllegalArgumentException expected) {}
+        for (PendingIntent pendingIntent : pendingIntents) {
+            mCm.unregisterNetworkCallback(pendingIntent);
+        }
+        pendingIntents.clear();
+
+        try {
+            for (int i = 0; i < MAX_REQUESTS + 1; i++) {
+                PendingIntent pendingIntent =
+                        PendingIntent.getBroadcast(mContext, 0, new Intent("a" + i), 0);
+                mCm.registerNetworkCallback(networkRequest, pendingIntent);
+                pendingIntents.add(pendingIntent);
+            }
+            fail("Registering " + MAX_REQUESTS +
+                    " PendingIntent NetworkCallbacks did not throw exception");
+        } catch (IllegalArgumentException expected) {}
+        for (PendingIntent pendingIntent : pendingIntents) {
+            mCm.unregisterNetworkCallback(pendingIntent);
+        }
+        pendingIntents.clear();
+        mService.waitForIdle(5000);
+
+        // Test that the limit is not hit when MAX_REQUESTS requests are added and removed.
+        for (int i = 0; i < MAX_REQUESTS; i++) {
+            NetworkCallback networkCallback = new NetworkCallback();
+            mCm.requestNetwork(networkRequest, networkCallback);
+            mCm.unregisterNetworkCallback(networkCallback);
+        }
+        mService.waitForIdle();
+        for (int i = 0; i < MAX_REQUESTS; i++) {
+            NetworkCallback networkCallback = new NetworkCallback();
+            mCm.registerNetworkCallback(networkRequest, networkCallback);
+            mCm.unregisterNetworkCallback(networkCallback);
+        }
+        mService.waitForIdle();
+        for (int i = 0; i < MAX_REQUESTS; i++) {
+            PendingIntent pendingIntent =
+                    PendingIntent.getBroadcast(mContext, 0, new Intent("b" + i), 0);
+            mCm.requestNetwork(networkRequest, pendingIntent);
+            mCm.unregisterNetworkCallback(pendingIntent);
+        }
+        mService.waitForIdle();
+        for (int i = 0; i < MAX_REQUESTS; i++) {
+            PendingIntent pendingIntent =
+                    PendingIntent.getBroadcast(mContext, 0, new Intent("c" + i), 0);
+            mCm.registerNetworkCallback(networkRequest, pendingIntent);
+            mCm.unregisterNetworkCallback(pendingIntent);
+        }
+    }
 }
diff --git a/services/tests/servicestests/src/com/android/server/accounts/AccountManagerServiceTest.java b/services/tests/servicestests/src/com/android/server/accounts/AccountManagerServiceTest.java
index 4468857..ef9739d 100644
--- a/services/tests/servicestests/src/com/android/server/accounts/AccountManagerServiceTest.java
+++ b/services/tests/servicestests/src/com/android/server/accounts/AccountManagerServiceTest.java
@@ -32,6 +32,7 @@
 import android.content.pm.RegisteredServicesCache.ServiceInfo;
 import android.content.pm.RegisteredServicesCacheListener;
 import android.content.pm.UserInfo;
+import android.database.Cursor;
 import android.database.DatabaseErrorHandler;
 import android.database.sqlite.SQLiteDatabase;
 import android.os.Bundle;
@@ -64,15 +65,14 @@
         Context realTestContext = getContext();
         Context mockContext = new MyMockContext(realTestContext);
         setContext(mockContext);
-        mAms = new MyAccountManagerService(getContext(),
-                new MyMockPackageManager(), new MockAccountAuthenticatorCache(), realTestContext);
+        mAms = createAccountManagerService(mockContext, realTestContext);
     }
 
     @Override
     protected void tearDown() throws Exception {
-        new File(mAms.getCeDatabaseName(UserHandle.USER_SYSTEM)).delete();
-        new File(mAms.getDeDatabaseName(UserHandle.USER_SYSTEM)).delete();
-        new File(mAms.getPreNDatabaseName(UserHandle.USER_SYSTEM)).delete();
+        SQLiteDatabase.deleteDatabase(new File(mAms.getCeDatabaseName(UserHandle.USER_SYSTEM)));
+        SQLiteDatabase.deleteDatabase(new File(mAms.getDeDatabaseName(UserHandle.USER_SYSTEM)));
+        SQLiteDatabase.deleteDatabase(new File(mAms.getPreNDatabaseName(UserHandle.USER_SYSTEM)));
         super.tearDown();
     }
 
@@ -88,7 +88,7 @@
     }
 
     public void testCheckAddAccount() throws Exception {
-        unlockUser(UserHandle.USER_SYSTEM);
+        unlockSystemUser();
         Account a11 = new Account("account1", "type1");
         Account a21 = new Account("account2", "type1");
         Account a31 = new Account("account3", "type1");
@@ -129,7 +129,7 @@
     }
 
     public void testPasswords() throws Exception {
-        unlockUser(UserHandle.USER_SYSTEM);
+        unlockSystemUser();
         Account a11 = new Account("account1", "type1");
         Account a12 = new Account("account1", "type2");
         mAms.addAccountExplicitly(a11, "p11", null);
@@ -145,7 +145,7 @@
     }
 
     public void testUserdata() throws Exception {
-        unlockUser(UserHandle.USER_SYSTEM);
+        unlockSystemUser();
         Account a11 = new Account("account1", "type1");
         Bundle u11 = new Bundle();
         u11.putString("a", "a_a11");
@@ -178,7 +178,7 @@
     }
 
     public void testAuthtokens() throws Exception {
-        unlockUser(UserHandle.USER_SYSTEM);
+        unlockSystemUser();
         Account a11 = new Account("account1", "type1");
         Account a12 = new Account("account1", "type2");
         mAms.addAccountExplicitly(a11, "p11", null);
@@ -211,10 +211,89 @@
         assertNull(mAms.peekAuthToken(a12, "att2"));
     }
 
-    private void unlockUser(int userId) {
+    public void testRemovedAccountSync() throws Exception {
+        unlockSystemUser();
+        Account a1 = new Account("account1", "type1");
+        Account a2 = new Account("account2", "type2");
+        mAms.addAccountExplicitly(a1, "p1", null);
+        mAms.addAccountExplicitly(a2, "p2", null);
+
+        Context originalContext = ((MyMockContext)getContext()).mTestContext;
+        // create a separate instance of AMS. It initially assumes that user0 is locked
+        AccountManagerService ams2 = createAccountManagerService(getContext(), originalContext);
+
+        // Verify that account can be removed when user is locked
+        ams2.removeAccountInternal(a1);
+        Account[] accounts = ams2.getAccounts(UserHandle.USER_SYSTEM, mContext.getOpPackageName());
+        assertEquals(1, accounts.length);
+        assertEquals("Only a2 should be returned", a2, accounts[0]);
+
+        // Verify that CE db file is unchanged and still has 2 accounts
+        String ceDatabaseName = mAms.getCeDatabaseName(UserHandle.USER_SYSTEM);
+        int accountsNumber = readNumberOfAccountsFromDbFile(originalContext, ceDatabaseName);
+        assertEquals("CE database should still have 2 accounts", 2, accountsNumber);
+
+        // Unlock the user and verify that db has been updated
+        ams2.onUserUnlocked(newIntentForUser(UserHandle.USER_SYSTEM));
+        accountsNumber = readNumberOfAccountsFromDbFile(originalContext, ceDatabaseName);
+        assertEquals("CE database should now have 1 account", 2, accountsNumber);
+        accounts = ams2.getAccounts(UserHandle.USER_SYSTEM, mContext.getOpPackageName());
+        assertEquals(1, accounts.length);
+        assertEquals("Only a2 should be returned", a2, accounts[0]);
+    }
+
+    public void testPreNDatabaseMigration() throws Exception {
+        String preNDatabaseName = mAms.getPreNDatabaseName(UserHandle.USER_SYSTEM);
+        Context originalContext = ((MyMockContext) getContext()).mTestContext;
+        PreNTestDatabaseHelper.createV4Database(originalContext, preNDatabaseName);
+        // Assert that database was created with 1 account
+        int n = readNumberOfAccountsFromDbFile(originalContext, preNDatabaseName);
+        assertEquals("pre-N database should have 1 account", 1, n);
+
+        // Start testing
+        unlockSystemUser();
+        Account[] accounts = mAms.getAccounts(null, mContext.getOpPackageName());
+        assertEquals("1 account should be migrated", 1, accounts.length);
+        assertEquals(PreNTestDatabaseHelper.ACCOUNT_NAME, accounts[0].name);
+        assertEquals(PreNTestDatabaseHelper.ACCOUNT_PASSWORD, mAms.getPassword(accounts[0]));
+        assertEquals("Authtoken should be migrated",
+                PreNTestDatabaseHelper.TOKEN_STRING,
+                mAms.peekAuthToken(accounts[0], PreNTestDatabaseHelper.TOKEN_TYPE));
+
+        assertFalse("pre-N database file should be removed but was found at " + preNDatabaseName,
+                new File(preNDatabaseName).exists());
+
+        // Verify that ce/de files are present
+        String deDatabaseName = mAms.getDeDatabaseName(UserHandle.USER_SYSTEM);
+        String ceDatabaseName = mAms.getCeDatabaseName(UserHandle.USER_SYSTEM);
+        assertTrue("DE database file should be created at " + deDatabaseName,
+                new File(deDatabaseName).exists());
+        assertTrue("CE database file should be created at " + ceDatabaseName,
+                new File(ceDatabaseName).exists());
+    }
+
+    private int readNumberOfAccountsFromDbFile(Context context, String dbName) {
+        SQLiteDatabase ceDb = context.openOrCreateDatabase(dbName, 0, null);
+        try (Cursor cursor = ceDb.rawQuery("SELECT count(*) FROM accounts", null)) {
+            assertTrue(cursor.moveToNext());
+            return cursor.getInt(0);
+        }
+    }
+
+    private AccountManagerService createAccountManagerService(Context mockContext,
+            Context realContext) {
+        return new MyAccountManagerService(mockContext,
+                new MyMockPackageManager(), new MockAccountAuthenticatorCache(), realContext);
+    }
+
+    private void unlockSystemUser() {
+        mAms.onUserUnlocked(newIntentForUser(UserHandle.USER_SYSTEM));
+    }
+
+    private static Intent newIntentForUser(int userId) {
         Intent intent = new Intent();
         intent.putExtra(Intent.EXTRA_USER_HANDLE, userId);
-        mAms.onUserUnlocked(intent);
+        return intent;
     }
 
     static public class MockAccountAuthenticatorCache implements IAccountAuthenticatorCache {
@@ -264,11 +343,13 @@
         private Context mTestContext;
         private AppOpsManager mAppOpsManager;
         private UserManager mUserManager;
+        private PackageManager mPackageManager;
 
         public MyMockContext(Context testContext) {
             this.mTestContext = testContext;
             this.mAppOpsManager = mock(AppOpsManager.class);
             this.mUserManager = mock(UserManager.class);
+            this.mPackageManager = mock(PackageManager.class);
             final UserInfo ui = new UserInfo(UserHandle.USER_SYSTEM, "user0", 0);
             when(mUserManager.getUserInfo(eq(ui.id))).thenReturn(ui);
         }
@@ -279,6 +360,11 @@
         }
 
         @Override
+        public PackageManager getPackageManager() {
+            return mPackageManager;
+        }
+
+        @Override
         public Object getSystemService(String name) {
             if (Context.APP_OPS_SERVICE.equals(name)) {
                 return mAppOpsManager;
diff --git a/services/tests/servicestests/src/com/android/server/accounts/PreNTestDatabaseHelper.java b/services/tests/servicestests/src/com/android/server/accounts/PreNTestDatabaseHelper.java
new file mode 100644
index 0000000..97adbe6
--- /dev/null
+++ b/services/tests/servicestests/src/com/android/server/accounts/PreNTestDatabaseHelper.java
@@ -0,0 +1,98 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.server.accounts;
+
+import android.content.Context;
+import android.database.sqlite.SQLiteDatabase;
+import android.database.sqlite.SQLiteOpenHelper;
+
+/**
+ * Helper class for emulating pre-N database
+ */
+class PreNTestDatabaseHelper extends SQLiteOpenHelper {
+
+    public static final String TOKEN_STRING = "token-string-123";
+    public static final String ACCOUNT_TYPE = "type1";
+    public static final String ACCOUNT_NAME = "account@" + ACCOUNT_TYPE;
+    public static final String ACCOUNT_PASSWORD = "Password";
+    public static final String TOKEN_TYPE = "SID";
+
+    public PreNTestDatabaseHelper(Context context, String name) {
+        super(context, name, null, 4);
+    }
+
+    @Override
+    public void onCreate(SQLiteDatabase db) {
+        db.execSQL("CREATE TABLE accounts ( "
+                + "_id INTEGER PRIMARY KEY AUTOINCREMENT, "
+                + "name TEXT NOT NULL, "
+                + "type TEXT NOT NULL, "
+                + "password TEXT, "
+                + "UNIQUE(name, type))");
+        db.execSQL("INSERT INTO accounts (name, type, password) VALUES "
+                + "('" + ACCOUNT_NAME + "', '" + ACCOUNT_TYPE + "', '" + ACCOUNT_PASSWORD + "')");
+
+        db.execSQL("CREATE TABLE authtokens (  "
+                + "_id INTEGER PRIMARY KEY AUTOINCREMENT,  "
+                + "accounts_id INTEGER NOT NULL, "
+                + "type TEXT NOT NULL,  "
+                + "authtoken TEXT, "
+                + "UNIQUE (accounts_id, type ))");
+        db.execSQL("INSERT INTO authtokens (accounts_id, type, authtoken) VALUES "
+                + "(1, '" + TOKEN_TYPE + "', '" + TOKEN_STRING + "')");
+
+        db.execSQL("CREATE TABLE grants (  "
+                + "accounts_id INTEGER NOT NULL, "
+                + "auth_token_type STRING NOT NULL,  "
+                + "uid INTEGER NOT NULL,  "
+                + "UNIQUE (accounts_id,auth_token_type,uid))");
+
+        db.execSQL("CREATE TABLE extras ( "
+                + "_id INTEGER PRIMARY KEY AUTOINCREMENT, "
+                + "accounts_id INTEGER, "
+                + "key TEXT NOT NULL, "
+                + "value TEXT, "
+                + "UNIQUE(accounts_id , key))");
+
+        db.execSQL("CREATE TABLE meta ( "
+                + "key TEXT PRIMARY KEY NOT NULL, "
+                + "value TEXT)");
+
+        db.execSQL(""
+                + " CREATE TRIGGER accountsDelete DELETE ON accounts "
+                + " BEGIN"
+                + "   DELETE FROM authtokens"
+                + "     WHERE accounts_id=OLD._id;"
+                + "   DELETE FROM extras"
+                + "     WHERE accounts_id=OLD._id;"
+                + "   DELETE FROM grants"
+                + "     WHERE accounts_id=OLD._id;"
+                + " END");
+    }
+
+    @Override
+    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
+        throw new UnsupportedOperationException("Upgrade of test database is not supported");
+    }
+
+    public static void createV4Database(Context context, String name) {
+        PreNTestDatabaseHelper helper = new PreNTestDatabaseHelper(context, name);
+        helper.getWritableDatabase();
+        helper.close();
+    }
+
+}
diff --git a/services/tests/servicestests/src/com/android/server/pm/ShortcutManagerTest.java b/services/tests/servicestests/src/com/android/server/pm/ShortcutManagerTest.java
index ce02a79..5387f31 100644
--- a/services/tests/servicestests/src/com/android/server/pm/ShortcutManagerTest.java
+++ b/services/tests/servicestests/src/com/android/server/pm/ShortcutManagerTest.java
@@ -15,9 +15,36 @@
  */
 package com.android.server.pm;
 
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllDynamic;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllDynamicOrPinned;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllHaveIcon;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllHaveIconFile;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllHaveIconResId;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllHaveIntents;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllHaveTitle;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllKeyFieldsOnly;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllNotHaveIntents;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllNotHaveTitle;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllNotKeyFieldsOnly;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllPinned;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertAllUnique;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertBitmapSize;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertBundleEmpty;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertCallbackNotReceived;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertCallbackReceived;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertDynamicAndPinned;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertDynamicOnly;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertExpectException;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.assertShortcutIds;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.hashSet;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.list;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.makeBundle;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.pfdToBitmap;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.resetAll;
+import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.set;
+
 import static org.mockito.Matchers.any;
 import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.anyList;
 import static org.mockito.Matchers.anyString;
 import static org.mockito.Matchers.eq;
 import static org.mockito.Mockito.doAnswer;
@@ -27,7 +54,6 @@
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
-import static com.android.server.pm.shortcutmanagertest.ShortcutManagerTestUtils.*;
 
 import android.annotation.NonNull;
 import android.annotation.Nullable;
@@ -57,13 +83,11 @@
 import android.graphics.BitmapFactory;
 import android.graphics.drawable.Icon;
 import android.net.Uri;
-import android.os.BaseBundle;
 import android.os.Bundle;
 import android.os.FileUtils;
 import android.os.Handler;
 import android.os.Looper;
 import android.os.Parcel;
-import android.os.ParcelFileDescriptor;
 import android.os.PersistableBundle;
 import android.os.Process;
 import android.os.UserHandle;
@@ -71,7 +95,6 @@
 import android.test.InstrumentationTestCase;
 import android.test.mock.MockContext;
 import android.test.suitebuilder.annotation.SmallTest;
-import android.util.ArraySet;
 import android.util.Log;
 import android.util.Pair;
 import android.util.SparseArray;
@@ -84,9 +107,6 @@
 import com.android.server.pm.ShortcutService.ConfigConstants;
 import com.android.server.pm.ShortcutService.FileOutputStreamWithPath;
 import com.android.server.pm.ShortcutUser.PackageWithUser;
-import com.android.server.testutis.TestUtils;
-
-import libcore.io.IoUtils;
 
 import org.junit.Assert;
 import org.mockito.ArgumentCaptor;
@@ -98,8 +118,6 @@
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
@@ -4018,24 +4036,33 @@
         checkCanRestoreTo(false, spi2, 11, "x", "sig2x", "sig1", "y");
     }
 
+    private boolean bitmapDirectoryExists(String packageName, int userId) {
+        final File path = new File(mService.getUserBitmapFilePath(userId), packageName);
+        return path.isDirectory();
+    }
+
     public void testHandlePackageDelete() {
+        final Icon bmp32x32 = Icon.createWithBitmap(BitmapFactory.decodeResource(
+                getTestContext().getResources(), R.drawable.black_32x32));
         setCaller(CALLING_PACKAGE_1, USER_0);
-        assertTrue(mManager.addDynamicShortcuts(list(makeShortcut("s1"))));
+        assertTrue(mManager.addDynamicShortcuts(list(
+                makeShortcutWithIcon("s1", bmp32x32), makeShortcutWithIcon("s2", bmp32x32)
+        )));
 
         setCaller(CALLING_PACKAGE_2, USER_0);
-        assertTrue(mManager.addDynamicShortcuts(list(makeShortcut("s1"))));
+        assertTrue(mManager.addDynamicShortcuts(list(makeShortcutWithIcon("s1", bmp32x32))));
 
         setCaller(CALLING_PACKAGE_3, USER_0);
-        assertTrue(mManager.addDynamicShortcuts(list(makeShortcut("s1"))));
+        assertTrue(mManager.addDynamicShortcuts(list(makeShortcutWithIcon("s1", bmp32x32))));
 
         setCaller(CALLING_PACKAGE_1, USER_10);
-        assertTrue(mManager.addDynamicShortcuts(list(makeShortcut("s1"))));
+        assertTrue(mManager.addDynamicShortcuts(list(makeShortcutWithIcon("s1", bmp32x32))));
 
         setCaller(CALLING_PACKAGE_2, USER_10);
-        assertTrue(mManager.addDynamicShortcuts(list(makeShortcut("s1"))));
+        assertTrue(mManager.addDynamicShortcuts(list(makeShortcutWithIcon("s1", bmp32x32))));
 
         setCaller(CALLING_PACKAGE_3, USER_10);
-        assertTrue(mManager.addDynamicShortcuts(list(makeShortcut("s1"))));
+        assertTrue(mManager.addDynamicShortcuts(list(makeShortcutWithIcon("s1", bmp32x32))));
 
         assertNotNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_1, "s1", USER_0));
         assertNotNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_2, "s1", USER_0));
@@ -4044,6 +4071,13 @@
         assertNotNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_2, "s1", USER_10));
         assertNotNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_3, "s1", USER_10));
 
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_1, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_2, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_1, USER_10));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_2, USER_10));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_10));
+
         uninstallPackage(USER_0, CALLING_PACKAGE_1);
         mService.mPackageMonitor.onReceive(getTestContext(),
                 genPackageDeleteIntent(CALLING_PACKAGE_1, USER_0));
@@ -4055,6 +4089,13 @@
         assertNotNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_2, "s1", USER_10));
         assertNotNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_3, "s1", USER_10));
 
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_1, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_2, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_1, USER_10));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_2, USER_10));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_10));
+
         uninstallPackage(USER_10, CALLING_PACKAGE_2);
         mService.mPackageMonitor.onReceive(getTestContext(),
                 genPackageDeleteIntent(CALLING_PACKAGE_2, USER_10));
@@ -4066,6 +4107,13 @@
         assertNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_2, "s1", USER_10));
         assertNotNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_3, "s1", USER_10));
 
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_1, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_2, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_1, USER_10));
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_2, USER_10));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_10));
+
         mInjectedPackages.remove(CALLING_PACKAGE_1);
         mInjectedPackages.remove(CALLING_PACKAGE_3);
 
@@ -4078,6 +4126,13 @@
         assertNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_2, "s1", USER_10));
         assertNotNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_3, "s1", USER_10));
 
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_1, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_2, USER_0));
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_1, USER_10));
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_2, USER_10));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_10));
+
         mService.handleUnlockUser(USER_10);
 
         assertNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_1, "s1", USER_0));
@@ -4086,6 +4141,13 @@
         assertNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_1, "s1", USER_10));
         assertNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_2, "s1", USER_10));
         assertNull(mService.getPackageShortcutForTest(CALLING_PACKAGE_3, "s1", USER_10));
+
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_1, USER_0));
+        assertTrue(bitmapDirectoryExists(CALLING_PACKAGE_2, USER_0));
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_0));
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_1, USER_10));
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_2, USER_10));
+        assertFalse(bitmapDirectoryExists(CALLING_PACKAGE_3, USER_10));
     }
 
     private void backupAndRestore() {
@@ -4991,7 +5053,7 @@
                 .setTitle("title")
                 .setText("text")
                 .setIntent(makeIntent("action", ShortcutActivity.class, "key", "val"))
-                .setCategories(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"))
+                .setCategories(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"))
                 .setWeight(123)
                 .setExtras(pb)
                 .build();
@@ -5007,7 +5069,7 @@
         assertEquals("content://a.b.c/", si.getIcon().getUriString());
         assertEquals("title", si.getTitle());
         assertEquals("text", si.getText());
-        assertEquals(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
+        assertEquals(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
         assertEquals("action", si.getIntent().getAction());
         assertEquals("val", si.getIntent().getStringExtra("key"));
         assertEquals(123, si.getWeight());
@@ -5029,7 +5091,7 @@
                 .setIcon(Icon.createWithContentUri("content://a.b.c/"))
                 .setTitle("title")
                 .setText("text")
-                .setCategories(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"))
+                .setCategories(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"))
                 .setIntent(makeIntent("action", ShortcutActivity.class, "key", "val"))
                 .setWeight(123)
                 .setExtras(pb)
@@ -5048,7 +5110,7 @@
         assertEquals("content://a.b.c/", si.getIcon().getUriString());
         assertEquals("title", si.getTitle());
         assertEquals("text", si.getText());
-        assertEquals(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
+        assertEquals(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
         assertEquals("action", si.getIntent().getAction());
         assertEquals("val", si.getIntent().getStringExtra("key"));
         assertEquals(123, si.getWeight());
@@ -5066,7 +5128,7 @@
         assertEquals(null, si.getIcon());
         assertEquals("title", si.getTitle());
         assertEquals("text", si.getText());
-        assertEquals(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
+        assertEquals(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
         assertEquals("action", si.getIntent().getAction());
         assertEquals("val", si.getIntent().getStringExtra("key"));
         assertEquals(123, si.getWeight());
@@ -5085,7 +5147,7 @@
         assertEquals(null, si.getIcon());
         assertEquals("title", si.getTitle());
         assertEquals("text", si.getText());
-        assertEquals(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
+        assertEquals(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
         assertEquals(null, si.getIntent());
         assertEquals(123, si.getWeight());
         assertEquals(1, si.getExtras().getInt("k"));
@@ -5164,7 +5226,7 @@
                 .setIcon(Icon.createWithContentUri("content://a.b.c/"))
                 .setTitle("title")
                 .setText("text")
-                .setCategories(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"))
+                .setCategories(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"))
                 .setIntent(makeIntent("action", ShortcutActivity.class, "key", "val"))
                 .setWeight(123)
                 .setExtras(pb)
@@ -5201,15 +5263,15 @@
 
         si = sorig.clone(/* flags=*/ 0);
         si.copyNonNullFieldsFrom(new ShortcutInfo.Builder(getTestContext()).setId("id")
-                .setCategories(list()).build());
+                .setCategories(set()).build());
         assertEquals("text", si.getText());
-        assertEquals(list(), si.getCategories());
+        assertEquals(set(), si.getCategories());
 
         si = sorig.clone(/* flags=*/ 0);
         si.copyNonNullFieldsFrom(new ShortcutInfo.Builder(getTestContext()).setId("id")
-                .setCategories(list("x")).build());
+                .setCategories(set("x")).build());
         assertEquals("text", si.getText());
-        assertEquals(list("x"), si.getCategories());
+        assertEquals(set("x"), si.getCategories());
 
         si = sorig.clone(/* flags=*/ 0);
         si.copyNonNullFieldsFrom(new ShortcutInfo.Builder(getTestContext()).setId("id")
@@ -5266,7 +5328,7 @@
                 .setIcon(bmp32x32)
                 .setTitle("title")
                 .setText("text")
-                .setCategories(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"))
+                .setCategories(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"))
                 .setIntent(makeIntent("action", ShortcutActivity.class, "key", "val"))
                 .setWeight(123)
                 .setExtras(pb)
@@ -5293,7 +5355,7 @@
         assertEquals(null, si.getIcon());
         assertEquals("title", si.getTitle());
         assertEquals("text", si.getText());
-        assertEquals(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
+        assertEquals(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
         assertEquals("action", si.getIntent().getAction());
         assertEquals("val", si.getIntent().getStringExtra("key"));
         assertEquals(123, si.getWeight());
@@ -5319,7 +5381,7 @@
                 .setIcon(bmp32x32)
                 .setTitle("title")
                 .setText("text")
-                .setCategories(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"))
+                .setCategories(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"))
                 .setIntent(makeIntent("action", ShortcutActivity.class, "key", "val"))
                 .setWeight(123)
                 .setExtras(pb)
@@ -5345,7 +5407,7 @@
         assertEquals(null, si.getIcon());
         assertEquals("title", si.getTitle());
         assertEquals("text", si.getText());
-        assertEquals(list(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
+        assertEquals(set(ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, "xyz"), si.getCategories());
         assertEquals("action", si.getIntent().getAction());
         assertEquals("val", si.getIntent().getStringExtra("key"));
         assertEquals(123, si.getWeight());
diff --git a/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java b/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java
index 53377f9..612e5e8 100644
--- a/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java
+++ b/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java
@@ -188,13 +188,13 @@
             }
 
             // Process existing model first.
-            if (model != null && model.getModelId() != soundModel.uuid) {
+            if (model != null && !model.getModelId().equals(soundModel.uuid)) {
                 // The existing model has a different UUID, should be replaced.
                 int status = cleanUpExistingKeyphraseModel(model);
-                removeKeyphraseModelLocked(keyphraseId);
                 if (status != STATUS_OK) {
                     return status;
                 }
+                removeKeyphraseModelLocked(keyphraseId);
                 model = null;
             }
 
@@ -478,8 +478,6 @@
             } else {
                 // Clear the ModelData state if successful.
                 modelData.clearState();
-                modelData.clearCallback();
-                modelData.setRecognitionConfig(null);
             }
         }
         return status;
@@ -498,15 +496,12 @@
             // Stop all recognition models.
             for (ModelData model : mModelDataMap.values()) {
                 if (model.isModelStarted()) {
-                    model.setRequested(false);
                     int status = stopRecognitionLocked(model,
                             false /* do not notify for synchronous calls */);
                     if (status != STATUS_OK) {
                         Slog.w(TAG, "Error stopping keyphrase model: " + model.getHandle());
                     }
                     model.clearState();
-                    model.clearCallback();
-                    model.setRecognitionConfig(null);
                 }
             }
             internalClearGlobalStateLocked();
@@ -849,7 +844,6 @@
     private void internalClearModelStateLocked() {
         for (ModelData modelData : mModelDataMap.values()) {
             modelData.clearState();
-            modelData.clearCallback();
         }
     }
 
@@ -1194,6 +1188,9 @@
         synchronized void clearState() {
             mModelState = MODEL_NOTLOADED;
             mModelHandle = INVALID_VALUE;
+            mRecognitionConfig = null;
+            mRequested = false;
+            mCallback = null;
         }
 
         synchronized void clearCallback() {
diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/DatabaseHelper.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/DatabaseHelper.java
index 9c15f2b..0f68cca 100644
--- a/services/voiceinteraction/java/com/android/server/voiceinteraction/DatabaseHelper.java
+++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/DatabaseHelper.java
@@ -252,7 +252,7 @@
         String[] usersStr = text.split(",");
         int[] users = new int[usersStr.length];
         for (int i = 0; i < usersStr.length; i++) {
-            users[i] = Integer.valueOf(usersStr[i]);
+            users[i] = Integer.parseInt(usersStr[i]);
         }
         return users;
     }
diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java
index 837b4a4..386c3aa 100644
--- a/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java
+++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java
@@ -128,6 +128,12 @@
     }
 
     @Override
+    public void onUnlockUser(int userHandle) {
+        mServiceStub.initForUser(userHandle);
+        mServiceStub.switchImplementationIfNeeded(false);
+    }
+
+    @Override
     public void onSwitchUser(int userHandle) {
         mServiceStub.switchUser(userHandle);
     }
@@ -362,6 +368,12 @@
             }
         }
 
+        void switchImplementationIfNeeded(boolean force) {
+            synchronized (this) {
+                switchImplementationIfNeededLocked(force);
+            }
+        }
+
         void switchImplementationIfNeededLocked(boolean force) {
             if (!mSafeMode) {
                 String curService = Settings.Secure.getStringForUser(
diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerServiceImpl.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerServiceImpl.java
index 1e9db18..3f9da4c 100644
--- a/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerServiceImpl.java
+++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerServiceImpl.java
@@ -183,11 +183,11 @@
         try {
             if (mActiveSession == null || token != mActiveSession.mToken) {
                 Slog.w(TAG, "startVoiceActivity does not match active session");
-                return ActivityManager.START_CANCELED;
+                return ActivityManager.START_VOICE_NOT_ACTIVE_SESSION;
             }
             if (!mActiveSession.mShown) {
                 Slog.w(TAG, "startVoiceActivity not allowed on hidden session");
-                return ActivityManager.START_CANCELED;
+                return ActivityManager.START_VOICE_HIDDEN_SESSION;
             }
             intent = new Intent(intent);
             intent.addCategory(Intent.CATEGORY_VOICE);
diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionSessionConnection.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionSessionConnection.java
index 0922a12..27351e4 100644
--- a/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionSessionConnection.java
+++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionSessionConnection.java
@@ -370,20 +370,28 @@
         }
         if (mHaveAssistData) {
             AssistDataForActivity assistData;
-            while (!mAssistData.isEmpty()) {
-                if (mPendingAssistDataCount <= 0) {
-                    Slog.e(TAG, "mPendingAssistDataCount is " + mPendingAssistDataCount);
+            if (mAssistData.isEmpty()) {
+                // We're not actually going to get any data, deliver some nothing
+                try {
+                    mSession.handleAssist(null, null, null, 0, 0);
+                } catch (RemoteException e) {
                 }
-                mPendingAssistDataCount--;
-                assistData = mAssistData.remove(0);
-                if (assistData.data == null) {
-                    try {
-                        mSession.handleAssist(null, null, null, assistData.activityIndex,
-                                assistData.activityCount);
-                    } catch (RemoteException e) {
+            } else {
+                while (!mAssistData.isEmpty()) {
+                    if (mPendingAssistDataCount <= 0) {
+                        Slog.e(TAG, "mPendingAssistDataCount is " + mPendingAssistDataCount);
                     }
-                } else {
-                    deliverSessionDataLocked(assistData);
+                    mPendingAssistDataCount--;
+                    assistData = mAssistData.remove(0);
+                    if (assistData.data == null) {
+                        try {
+                            mSession.handleAssist(null, null, null, assistData.activityIndex,
+                                    assistData.activityCount);
+                        } catch (RemoteException e) {
+                        }
+                    } else {
+                        deliverSessionDataLocked(assistData);
+                    }
                 }
             }
             if (mPendingAssistDataCount <= 0) {
diff --git a/telecomm/java/android/telecom/Call.java b/telecomm/java/android/telecom/Call.java
index b4c6e6a..39a1207 100644
--- a/telecomm/java/android/telecom/Call.java
+++ b/telecomm/java/android/telecom/Call.java
@@ -104,6 +104,7 @@
      * An {@link InCallService} will only see this state if it has the
      * {@link TelecomManager#METADATA_INCLUDE_EXTERNAL_CALLS} metadata set to {@code true} in its
      * manifest.
+     * @hide
      */
     public static final int STATE_PULLING_CALL = 11;
 
@@ -251,6 +252,7 @@
          * <p>
          * See {@link Connection#CAPABILITY_CAN_PULL_CALL} and
          * {@link Connection#PROPERTY_IS_EXTERNAL_CALL}.
+         * @hide
          */
         public static final int CAPABILITY_CAN_PULL_CALL = 0x00800000;
 
@@ -303,6 +305,7 @@
          * in its manifest.
          * <p>
          * See {@link Connection#PROPERTY_IS_EXTERNAL_CALL}.
+         * @hide
          */
         public static final int PROPERTY_IS_EXTERNAL_CALL = 0x00000040;
 
@@ -783,6 +786,7 @@
          * @param call The {@code Call} receiving the event.
          * @param event The event.
          * @param extras Extras associated with the connection event.
+         * @hide
          */
         public void onConnectionEvent(Call call, String event, Bundle extras) {}
     }
@@ -961,6 +965,7 @@
      * An {@link InCallService} will only see calls which support this method if it has the
      * {@link TelecomManager#METADATA_INCLUDE_EXTERNAL_CALLS} metadata set to {@code true}
      * in its manifest.
+     * @hide
      */
     public void pullExternalCall() {
         // If this isn't an external call, ignore the request.
@@ -983,6 +988,7 @@
      *
      * @param event The connection event.
      * @param extras Bundle containing extra information associated with the event.
+     * @hide
      */
     public void sendCallEvent(String event, Bundle extras) {
         mInCallAdapter.sendCallEvent(mTelecomCallId, event, extras);
@@ -996,6 +1002,7 @@
      * extras.  Keys should be fully qualified (e.g., com.example.MY_EXTRA) to avoid conflicts.
      *
      * @param extras The extras to add.
+     * @hide
      */
     public final void putExtras(Bundle extras) {
         if (extras == null) {
@@ -1058,6 +1065,7 @@
      * Removes extras from this {@code Connection}.
      *
      * @param keys The keys of the extras to remove.
+     * @hide
      */
     public final void removeExtras(List<String> keys) {
         if (mExtras != null) {
diff --git a/telecomm/java/android/telecom/Conference.java b/telecomm/java/android/telecom/Conference.java
index 1ce4ade..9fcbfe3 100644
--- a/telecomm/java/android/telecom/Conference.java
+++ b/telecomm/java/android/telecom/Conference.java
@@ -163,6 +163,7 @@
      * {@link Connection} for valid values.
      *
      * @return A bitmask of the properties of the conference call.
+     * @hide
      */
     public final int getConnectionProperties() {
         return mConnectionProperties;
@@ -394,6 +395,7 @@
      * {@link Connection} for valid values.
      *
      * @param connectionProperties A bitmask of the {@code Properties} of the conference call.
+     * @hide
      */
     public final void setConnectionProperties(int connectionProperties) {
         if (connectionProperties != mConnectionProperties) {
@@ -682,8 +684,6 @@
      * Keys should be fully qualified (e.g., com.example.MY_EXTRA) to avoid conflicts.
      *
      * @param extras The extras associated with this {@code Conference}.
-     * @deprecated Use {@link #putExtras(Bundle)} to add extras.  Use {@link #removeExtras(List)}
-     * to remove extras.
      */
     public final void setExtras(@Nullable Bundle extras) {
         // Add/replace any new or changed extras values.
@@ -723,6 +723,7 @@
      * Keys should be fully qualified (e.g., com.example.MY_EXTRA) to avoid conflicts.
      *
      * @param extras The extras to add.
+     * @hide
      */
     public final void putExtras(@NonNull Bundle extras) {
         if (extras == null) {
@@ -782,6 +783,7 @@
      * Removes an extra from this {@link Conference}.
      *
      * @param keys The key of the extra key to remove.
+     * @hide
      */
     public final void removeExtras(List<String> keys) {
         if (keys == null || keys.isEmpty()) {
@@ -804,15 +806,6 @@
 
     /**
      * Returns the extras associated with this conference.
-     * <p>
-     * Extras should be updated using {@link #putExtras(Bundle)} and {@link #removeExtras(List)}.
-     * <p>
-     * Telecom or an {@link InCallService} can also update the extras via
-     * {@link android.telecom.Call#putExtras(Bundle)}, and
-     * {@link Call#removeExtras(List)}.
-     * <p>
-     * The conference is notified of changes to the extras made by Telecom or an
-     * {@link InCallService} by {@link #onExtrasChanged(Bundle)}.
      *
      * @return The extras associated with this connection.
      */
@@ -829,6 +822,7 @@
      * {@link Call#removeExtras(List)}.
      *
      * @param extras The new extras bundle.
+     * @hide
      */
     public void onExtrasChanged(Bundle extras) {}
 
diff --git a/telecomm/java/android/telecom/Connection.java b/telecomm/java/android/telecom/Connection.java
index d83cdb8..ef314f3 100644
--- a/telecomm/java/android/telecom/Connection.java
+++ b/telecomm/java/android/telecom/Connection.java
@@ -100,6 +100,7 @@
      * <p>
      * A connection can only be in this state if the {@link #PROPERTY_IS_EXTERNAL_CALL} property and
      * {@link #CAPABILITY_CAN_PULL_CALL} capability bits are set on the connection.
+     * @hide
      */
     public static final int STATE_PULLING_CALL = 7;
 
@@ -283,6 +284,7 @@
      * <p>
      * Should only be set on a {@code Connection} where {@link #PROPERTY_IS_EXTERNAL_CALL}
      * is set.
+     * @hide
      */
     public static final int CAPABILITY_CAN_PULL_CALL = 0x01000000;
 
@@ -330,6 +332,7 @@
      * external connections.  Only those {@link InCallService}s which have the
      * {@link TelecomManager#METADATA_INCLUDE_EXTERNAL_CALLS} metadata set to {@code true} in its
      * manifest will see external connections.
+     * @hide
      */
     public static final int PROPERTY_IS_EXTERNAL_CALL = 1<<4;
 
@@ -388,6 +391,7 @@
      * {@link Call.Details#PROPERTY_IS_EXTERNAL_CALL} and
      * {@link Call.Details#CAPABILITY_CAN_PULL_CALL}, but the {@link ConnectionService} could not
      * pull the external call due to an error condition.
+     * @hide
      */
     public static final String EVENT_CALL_PULL_FAILED = "android.telecom.event.CALL_PULL_FAILED";
 
@@ -506,6 +510,13 @@
         return builder.toString();
     }
 
+    /**
+     * Builds a string representation of a properties bit-mask.
+     *
+     * @param properties The properties bit-mask.
+     * @return String representation.
+     * @hide
+     */
     public static String propertiesToString(int properties) {
         StringBuilder builder = new StringBuilder();
         builder.append("[Properties:");
@@ -1373,15 +1384,6 @@
 
     /**
      * Returns the extras associated with this connection.
-     * <p>
-     * Extras should be updated using {@link #putExtras(Bundle)}.
-     * <p>
-     * Telecom or an {@link InCallService} can also update the extras via
-     * {@link android.telecom.Call#putExtras(Bundle)}, and
-     * {@link Call#removeExtras(List)}.
-     * <p>
-     * The connection is notified of changes to the extras made by Telecom or an
-     * {@link InCallService} by {@link #onExtrasChanged(Bundle)}.
      *
      * @return The extras associated with this connection.
      */
@@ -1484,6 +1486,7 @@
 
     /**
      * Returns the connection's properties, as a bit mask of the {@code PROPERTY_*} constants.
+     * @hide
      */
     public final int getConnectionProperties() {
         return mConnectionProperties;
@@ -1689,6 +1692,7 @@
      * Sets the connection's properties as a bit mask of the {@code PROPERTY_*} constants.
      *
      * @param connectionProperties The new connection properties.
+     * @hide
      */
     public final void setConnectionProperties(int connectionProperties) {
         checkImmutable();
@@ -1873,8 +1877,6 @@
      * Keys should be fully qualified (e.g., com.example.MY_EXTRA) to avoid conflicts.
      *
      * @param extras The extras associated with this {@code Connection}.
-     * @deprecated Use {@link #putExtras(Bundle)} to add extras.  Use {@link #removeExtras(List)}
-     * to remove extras.
      */
     public final void setExtras(@Nullable Bundle extras) {
         checkImmutable();
@@ -1915,6 +1917,7 @@
      * Keys should be fully qualified (e.g., com.example.MY_EXTRA) to avoid conflicts.
      *
      * @param extras The extras to add.
+     * @hide
      */
     public final void putExtras(@NonNull Bundle extras) {
         checkImmutable();
@@ -1975,6 +1978,7 @@
      * Removes an extra from this {@code Connection}.
      *
      * @param keys The key of the extra key to remove.
+     * @hide
      */
     public final void removeExtras(List<String> keys) {
         if (mExtras != null) {
@@ -2114,6 +2118,7 @@
      * capability and {@link Connection#PROPERTY_IS_EXTERNAL_CALL} property bits must be set.
      * <p>
      * For more information on external calls, see {@link Connection#PROPERTY_IS_EXTERNAL_CALL}.
+     * @hide
      */
     public void onPullExternalCall() {}
 
@@ -2126,6 +2131,7 @@
      *
      * @param event The call event.
      * @param extras Extras associated with the call event.
+     * @hide
      */
     public void onCallEvent(String event, Bundle extras) {}
 
@@ -2138,6 +2144,7 @@
      * {@link Call#removeExtras(List)}.
      *
      * @param extras The new extras bundle.
+     * @hide
      */
     public void onExtrasChanged(Bundle extras) {}
 
@@ -2316,6 +2323,7 @@
      *
      * @param event The connection event.
      * @param extras Bundle containing extra information associated with the event.
+     * @hide
      */
     public void sendConnectionEvent(String event, Bundle extras) {
         for (Listener l : mListeners) {
diff --git a/telecomm/java/android/telecom/DisconnectCause.java b/telecomm/java/android/telecom/DisconnectCause.java
index cf73d4f..65437d9 100644
--- a/telecomm/java/android/telecom/DisconnectCause.java
+++ b/telecomm/java/android/telecom/DisconnectCause.java
@@ -67,11 +67,13 @@
     /**
      * Disconnected because the user did not locally answer the incoming call, but it was answered
      * on another device where the call was ringing.
+     * @hide
      */
     public static final int ANSWERED_ELSEWHERE = 11;
 
     /**
      * Disconnected because the call was pulled from the current device to another device.
+     * @hide
      */
     public static final int CALL_PULLED = 12;
 
diff --git a/telecomm/java/android/telecom/InCallService.java b/telecomm/java/android/telecom/InCallService.java
index df6715d..e2399ff 100644
--- a/telecomm/java/android/telecom/InCallService.java
+++ b/telecomm/java/android/telecom/InCallService.java
@@ -457,6 +457,7 @@
      * @param call The call the event is associated with.
      * @param event The event.
      * @param extras Any associated extras.
+     * @hide
      */
     public void onConnectionEvent(Call call, String event, Bundle extras) {
     }
diff --git a/telecomm/java/android/telecom/RemoteConference.java b/telecomm/java/android/telecom/RemoteConference.java
index 943da6d..bf6038a 100644
--- a/telecomm/java/android/telecom/RemoteConference.java
+++ b/telecomm/java/android/telecom/RemoteConference.java
@@ -97,6 +97,7 @@
          *
          * @param conference The {@code RemoteConference} invoking this method.
          * @param connectionProperties The new properties of the {@code RemoteConference}.
+         * @hide
          */
         public void onConnectionPropertiesChanged(
                 RemoteConference conference,
diff --git a/telecomm/java/android/telecom/RemoteConnection.java b/telecomm/java/android/telecom/RemoteConnection.java
index dc8eaf6..8e06659db 100644
--- a/telecomm/java/android/telecom/RemoteConnection.java
+++ b/telecomm/java/android/telecom/RemoteConnection.java
@@ -95,6 +95,7 @@
          *
          * @param connection The {@code RemoteConnection} invoking this method.
          * @param connectionProperties The new properties of the {@code RemoteConnection}.
+         * @hide
          */
         public void onConnectionPropertiesChanged(
                 RemoteConnection connection,
@@ -229,6 +230,7 @@
          * @param connection The {@code RemoteConnection} invoking this method.
          * @param event The connection event.
          * @param extras Extras associated with the event.
+         * @hide
          */
         public void onConnectionEvent(RemoteConnection connection, String event, Bundle extras) {}
     }
@@ -736,6 +738,7 @@
      *
      * @return A bitmask of the properties of the {@code RemoteConnection}, as defined in the
      *         {@code PROPERTY_*} constants in class {@link Connection}.
+     * @hide
      */
     public int getConnectionProperties() {
         return mConnectionProperties;
@@ -990,6 +993,7 @@
      * Instructs this {@link RemoteConnection} to pull itself to the local device.
      * <p>
      * See {@link Call#pullExternalCall()} for more information.
+     * @hide
      */
     public void pullExternalCall() {
         try {
diff --git a/telecomm/java/android/telecom/TelecomManager.java b/telecomm/java/android/telecom/TelecomManager.java
index 6eafb90..da0d048 100644
--- a/telecomm/java/android/telecom/TelecomManager.java
+++ b/telecomm/java/android/telecom/TelecomManager.java
@@ -225,6 +225,30 @@
             "android.telecom.extra.UNKNOWN_CALL_HANDLE";
 
     /**
+     * Optional extra for incoming and outgoing calls containing a long which specifies the time the
+     * call was created. This value is in milliseconds since boot.
+     * @hide
+     */
+    public static final String EXTRA_CALL_CREATED_TIME_MILLIS =
+            "android.telecom.extra.CALL_CREATED_TIME_MILLIS";
+
+    /**
+     * Optional extra for incoming and outgoing calls containing a long which specifies the time
+     * telecom began routing the call. This value is in milliseconds since boot.
+     * @hide
+     */
+    public static final String EXTRA_CALL_TELECOM_ROUTING_START_TIME_MILLIS =
+            "android.telecom.extra.CALL_TELECOM_ROUTING_START_TIME_MILLIS";
+
+    /**
+     * Optional extra for incoming and outgoing calls containing a long which specifies the time
+     * telecom finished routing the call. This value is in milliseconds since boot.
+     * @hide
+     */
+    public static final String EXTRA_CALL_TELECOM_ROUTING_END_TIME_MILLIS =
+            "android.telecom.extra.CALL_TELECOM_ROUTING_END_TIME_MILLIS";
+
+    /**
      * Optional extra for {@link android.telephony.TelephonyManager#ACTION_PHONE_STATE_CHANGED}
      * containing the disconnect code.
      */
@@ -324,6 +348,7 @@
      * informed of external calls should set this meta-data to {@code true} in the manifest
      * registration of their {@link InCallService}.  By default, the {@link InCallService} will NOT
      * be informed of external calls.
+     * @hide
      */
     public static final String METADATA_INCLUDE_EXTERNAL_CALLS =
             "android.telecom.INCLUDE_EXTERNAL_CALLS";
diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java
index 26730de..e8df24e 100644
--- a/telephony/java/android/telephony/CarrierConfigManager.java
+++ b/telephony/java/android/telephony/CarrierConfigManager.java
@@ -16,8 +16,6 @@
 
 package android.telephony;
 
-import com.android.internal.telephony.ICarrierConfigLoader;
-
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.annotation.SystemApi;
@@ -26,6 +24,8 @@
 import android.os.RemoteException;
 import android.os.ServiceManager;
 
+import com.android.internal.telephony.ICarrierConfigLoader;
+
 /**
  * Provides access to telephony configuration values that are carrier-specific.
  * <p>
@@ -454,12 +454,12 @@
     /**
      * Whether cellular data is required to access visual voicemail.
      */
-    public static final String KEY_VVM_CELLULAR_DATA_REQUIRED_BOOLEAN = "vvm_cellular_data_required";
+    public static final String KEY_VVM_CELLULAR_DATA_REQUIRED_BOOL = "vvm_cellular_data_required";
 
     /**
      * Whether to prefetch audio data on new voicemail arrival, defaulted to true.
      */
-    public static final String KEY_VVM_PREFETCH_BOOLEAN = "vvm_prefetch";
+    public static final String KEY_VVM_PREFETCH_BOOL = "vvm_prefetch";
 
     /**
      * The package name of the carrier's visual voicemail app to ensure that dialer visual voicemail
@@ -547,6 +547,13 @@
      */
     public static final String KEY_EDITABLE_WFC_MODE_BOOL = "editable_wfc_mode_bool";
 
+     /**
+      * Flag to indicate if Wi-Fi needs to be disabled in ECBM
+      * @hide
+      **/
+     public static final String
+              KEY_CONFIG_WIFI_DISABLE_IN_ECBM = "config_wifi_disable_in_ecbm";
+
     /**
      * List operator-specific error codes and indices of corresponding error strings in
      * wfcOperatorErrorAlertMessages and wfcOperatorErrorNotificationMessages.
@@ -623,6 +630,20 @@
     public static final String KEY_MMS_USER_AGENT_STRING = "userAgent";
 
     /**
+     * If carriers require differentiate un-provisioned status: cold sim or out of credit sim
+     * a package name and activity name can be provided to launch a supported carrier application
+     * that check the sim provisioning status
+     * The first element is the package name and the second element is the activity name
+     * of the provisioning app
+     * example:
+     * <item>com.google.android.carrierPackageName</item>
+     * <item>com.google.android.carrierPackageName.CarrierActivityName</item>
+     * @hide
+     */
+     public static final String KEY_SIM_PROVISIONING_STATUS_DETECTION_CARRIER_APP_STRING_ARRAY =
+            "sim_state_detection_carrier_app_string_array";
+
+    /**
      * Determines whether the carrier supports making non-emergency phone calls while the phone is
      * in emergency callback mode.  Default value is {@code true}, meaning that non-emergency calls
      * are allowed in emergency callback mode.
@@ -714,8 +735,8 @@
         sDefaults.putString(KEY_VVM_DESTINATION_NUMBER_STRING, "");
         sDefaults.putInt(KEY_VVM_PORT_NUMBER_INT, 0);
         sDefaults.putString(KEY_VVM_TYPE_STRING, "");
-        sDefaults.putBoolean(KEY_VVM_CELLULAR_DATA_REQUIRED_BOOLEAN, false);
-        sDefaults.putBoolean(KEY_VVM_PREFETCH_BOOLEAN, true);
+        sDefaults.putBoolean(KEY_VVM_CELLULAR_DATA_REQUIRED_BOOL, false);
+        sDefaults.putBoolean(KEY_VVM_PREFETCH_BOOL, true);
         sDefaults.putString(KEY_CARRIER_VVM_PACKAGE_NAME_STRING, "");
         sDefaults.putBoolean(KEY_SHOW_ICCID_IN_SIM_STATUS_BOOL, false);
         sDefaults.putBoolean(KEY_CI_ACTION_ON_SYS_UPDATE_BOOL, false);
@@ -755,6 +776,7 @@
         sDefaults.putStringArray(KEY_WFC_OPERATOR_ERROR_CODES_STRING_ARRAY, null);
         sDefaults.putInt(KEY_WFC_SPN_FORMAT_IDX_INT, 0);
         sDefaults.putInt(KEY_WFC_DATA_SPN_FORMAT_IDX_INT, 0);
+        sDefaults.putBoolean(KEY_CONFIG_WIFI_DISABLE_IN_ECBM, false);
 
         // MMS defaults
         sDefaults.putBoolean(KEY_MMS_ALIAS_ENABLED_BOOL, false);
@@ -790,6 +812,10 @@
         sDefaults.putString(KEY_MMS_USER_AGENT_STRING, "");
         sDefaults.putBoolean(KEY_ALLOW_NON_EMERGENCY_CALLS_IN_ECM_BOOL, true);
         sDefaults.putBoolean(KEY_USE_RCS_PRESENCE_BOOL, false);
+
+        // Used for Sim card State detection app
+        sDefaults.putStringArray(KEY_SIM_PROVISIONING_STATUS_DETECTION_CARRIER_APP_STRING_ARRAY,
+                null);
     }
 
     /**
diff --git a/telephony/java/android/telephony/ModemActivityInfo.java b/telephony/java/android/telephony/ModemActivityInfo.java
index 84883d8..03ce2d8 100644
--- a/telephony/java/android/telephony/ModemActivityInfo.java
+++ b/telephony/java/android/telephony/ModemActivityInfo.java
@@ -151,12 +151,24 @@
      * @return if the record is valid
      */
     public boolean isValid() {
-        int totalTxTimeMs = 0;
-        int txTime [] = getTxTimeMillis();
-        for (int i = 0; i < TX_POWER_LEVELS; i++) {
-            totalTxTimeMs += txTime[i];
+        for (int txVal : getTxTimeMillis()) {
+            if(txVal < 0) {
+                return false;
+            }
         }
-        return ((getIdleTimeMillis() >= 0) && (totalTxTimeMs >= 0)
-                && (getSleepTimeMillis() >= 0) && (getIdleTimeMillis() >= 0));
+
+        return ((getIdleTimeMillis() >= 0) && (getSleepTimeMillis() >= 0)
+                && (getRxTimeMillis() >= 0) && (getEnergyUsed() >= 0) && !isEmpty());
+    }
+
+    private boolean isEmpty() {
+        for (int txVal : getTxTimeMillis()) {
+            if(txVal != 0) {
+                return false;
+            }
+        }
+
+        return ((getIdleTimeMillis() == 0) && (getSleepTimeMillis() == 0)
+                && (getRxTimeMillis() == 0) && (getEnergyUsed() == 0));
     }
 }
diff --git a/telephony/java/android/telephony/NeighboringCellInfo.java b/telephony/java/android/telephony/NeighboringCellInfo.java
index 0f9a3b9..25851e3 100644
--- a/telephony/java/android/telephony/NeighboringCellInfo.java
+++ b/telephony/java/android/telephony/NeighboringCellInfo.java
@@ -135,8 +135,8 @@
                 mNetworkType = radioType;
                 // check if 0xFFFFFFFF for UNKNOWN_CID
                 if (!location.equalsIgnoreCase("FFFFFFFF")) {
-                    mCid = Integer.valueOf(location.substring(4), 16);
-                    mLac = Integer.valueOf(location.substring(0, 4), 16);
+                    mCid = Integer.parseInt(location.substring(4), 16);
+                    mLac = Integer.parseInt(location.substring(0, 4), 16);
                 }
                 break;
             case NETWORK_TYPE_UMTS:
@@ -144,7 +144,7 @@
             case NETWORK_TYPE_HSUPA:
             case NETWORK_TYPE_HSPA:
                 mNetworkType = radioType;
-                mPsc = Integer.valueOf(location, 16);
+                mPsc = Integer.parseInt(location, 16);
                 break;
             }
         } catch (NumberFormatException e) {
diff --git a/telephony/java/android/telephony/SubscriptionInfo.java b/telephony/java/android/telephony/SubscriptionInfo.java
index 6229ed9..b5cf212 100644
--- a/telephony/java/android/telephony/SubscriptionInfo.java
+++ b/telephony/java/android/telephony/SubscriptionInfo.java
@@ -90,6 +90,14 @@
     private int mDataRoaming;
 
     /**
+     * Sim Provisioning Status:
+     * {@See SubscriptionManager#SIM_PROVISIONED}
+     * {@See SubscriptionManager#SIM_UNPROVISIONED_COLD}
+     * {@See SubscriptionManager#SIM_UNPROVISIONED_OUT_OF_CREDIT}
+     */
+    private int mSimProvisioningStatus;
+
+    /**
      * SIM Icon bitmap
      */
     private Bitmap mIconBitmap;
@@ -114,7 +122,7 @@
      */
     public SubscriptionInfo(int id, String iccId, int simSlotIndex, CharSequence displayName,
             CharSequence carrierName, int nameSource, int iconTint, String number, int roaming,
-            Bitmap icon, int mcc, int mnc, String countryIso) {
+            Bitmap icon, int mcc, int mnc, String countryIso, int simProvisioningStatus) {
         this.mId = id;
         this.mIccId = iccId;
         this.mSimSlotIndex = simSlotIndex;
@@ -128,6 +136,7 @@
         this.mMcc = mcc;
         this.mMnc = mnc;
         this.mCountryIso = countryIso;
+        this.mSimProvisioningStatus = simProvisioningStatus;
     }
 
     /**
@@ -264,6 +273,17 @@
     }
 
     /**
+     * @return Sim Provisioning Status
+     * {@See SubscriptionManager#SIM_PROVISIONED}
+     * {@See SubscriptionManager#SIM_UNPROVISIONED_COLD}
+     * {@See SubscriptionManager#SIM_UNPROVISIONED_OUT_OF_CREDIT}
+     * @hide
+     */
+    public int getSimProvisioningStatus() {
+        return this.mSimProvisioningStatus;
+    }
+
+    /**
      * @return the MCC.
      */
     public int getMcc() {
@@ -299,10 +319,12 @@
             int mcc = source.readInt();
             int mnc = source.readInt();
             String countryIso = source.readString();
+            int simProvisioningStatus = source.readInt();
             Bitmap iconBitmap = Bitmap.CREATOR.createFromParcel(source);
 
             return new SubscriptionInfo(id, iccId, simSlotIndex, displayName, carrierName,
-                    nameSource, iconTint, number, dataRoaming, iconBitmap, mcc, mnc, countryIso);
+                    nameSource, iconTint, number, dataRoaming, iconBitmap, mcc, mnc, countryIso,
+                    simProvisioningStatus);
         }
 
         @Override
@@ -325,6 +347,7 @@
         dest.writeInt(mMcc);
         dest.writeInt(mMnc);
         dest.writeString(mCountryIso);
+        dest.writeInt(mSimProvisioningStatus);
         mIconBitmap.writeToParcel(dest, flags);
     }
 
@@ -355,6 +378,6 @@
                 + " displayName=" + mDisplayName + " carrierName=" + mCarrierName
                 + " nameSource=" + mNameSource + " iconTint=" + mIconTint
                 + " dataRoaming=" + mDataRoaming + " iconBitmap=" + mIconBitmap + " mcc " + mMcc
-                + " mnc " + mMnc + "}";
+                + " mnc " + mMnc + " SimProvisioningStatus " + mSimProvisioningStatus +"}";
     }
 }
diff --git a/telephony/java/android/telephony/SubscriptionManager.java b/telephony/java/android/telephony/SubscriptionManager.java
index ff8c71c..c49966a 100644
--- a/telephony/java/android/telephony/SubscriptionManager.java
+++ b/telephony/java/android/telephony/SubscriptionManager.java
@@ -232,6 +232,22 @@
     /** Indicates that data roaming is disabled for a subscription */
     public static final int DATA_ROAMING_DISABLE = 0;
 
+    /** Sim provisioning status: provisioned */
+    /** @hide */
+    public static final int SIM_PROVISIONED = 0;
+
+    /** Sim provisioning status: un-provisioned due to cold sim */
+    /** @hide */
+    public static final int SIM_UNPROVISIONED_COLD = 1;
+
+    /** Sim provisioning status: un-provisioned due to out of credit */
+    /** @hide */
+    public static final int SIM_UNPROVISIONED_OUT_OF_CREDIT = 2;
+
+    /** Maximum possible sim provisioning status */
+    /** @hide */
+    public static final int MAX_SIM_PROVISIONING_STATUS = SIM_UNPROVISIONED_OUT_OF_CREDIT;
+
     /** @hide */
     public static final int DATA_ROAMING_DEFAULT = DATA_ROAMING_DISABLE;
 
@@ -250,6 +266,13 @@
     public static final String MNC = "mnc";
 
     /**
+     * TelephonyProvider column name for the sim provisioning status associated with a SIM.
+     * <P>Type: INTEGER (int)</P>
+     * @hide
+     */
+    public static final String SIM_PROVISIONING_STATUS = "sim_provisioning_status";
+
+    /**
      *  TelephonyProvider column name for extreme threat in CB settings
      * @hide
      */
@@ -820,6 +843,40 @@
     }
 
     /**
+     * Set Sim Provisioning Status by subscription ID
+     * @param simProvisioningStatus with the subscription
+     * {@See SubscriptionManager#SIM_PROVISIONED}
+     * {@See SubscriptionManager#SIM_UNPROVISIONED_COLD}
+     * {@See SubscriptionManager#SIM_UNPROVISIONED_OUT_OF_CREDIT}
+     * @param subId the unique SubInfoRecord index in database
+     * @return the number of records updated
+     * Permissions android.Manifest.permission.MODIFY_PHONE_STATE is required
+     * @hide
+     */
+    public int setSimProvisioningStatus(int simProvisioningStatus, int subId) {
+        if (VDBG) {
+            logd("[setSimProvisioningStatus]+ status:" + simProvisioningStatus + " subId:" + subId);
+        }
+        if (simProvisioningStatus < 0 || simProvisioningStatus > MAX_SIM_PROVISIONING_STATUS ||
+                !isValidSubscriptionId(subId)) {
+            logd("[setSimProvisioningStatus]- fail");
+            return -1;
+        }
+
+        int result = 0;
+
+        try {
+            ISub iSub = ISub.Stub.asInterface(ServiceManager.getService("isub"));
+            if (iSub != null) {
+                result = iSub.setSimProvisioningStatus(simProvisioningStatus, subId);
+            }
+        } catch (RemoteException ex) {
+            // ignore it
+        }
+        return result;
+    }
+
+    /**
      * Get slotId associated with the subscription.
      * @return slotId as a positive integer or a negative value if an error either
      * SIM_NOT_INSERTED or < 0 if an invalid slot index
@@ -1347,6 +1404,7 @@
         if (subInfo != null) {
             newConfig.mcc = subInfo.getMcc();
             newConfig.mnc = subInfo.getMnc();
+            if (newConfig.mnc == 0) newConfig.mnc = Configuration.MNC_ZERO;
         }
         DisplayMetrics metrics = context.getResources().getDisplayMetrics();
         DisplayMetrics newMetrics = new DisplayMetrics();
diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java
index 0bca628..343b110 100644
--- a/telephony/java/android/telephony/TelephonyManager.java
+++ b/telephony/java/android/telephony/TelephonyManager.java
@@ -25,6 +25,8 @@
 import android.content.Context;
 import android.content.Intent;
 import android.net.Uri;
+import android.os.BatteryStats;
+import android.os.ResultReceiver;
 import android.provider.Settings;
 import android.provider.Settings.SettingNotFoundException;
 import android.os.Bundle;
@@ -73,6 +75,14 @@
 public class TelephonyManager {
     private static final String TAG = "TelephonyManager";
 
+    /**
+     * The key to use when placing the result of {@link #requestModemActivityInfo(ResultReceiver)}
+     * into the ResultReceiver Bundle.
+     * @hide
+     */
+    public static final String MODEM_ACTIVITY_RESULT_KEY =
+            BatteryStats.RESULT_RECEIVER_CONTROLLER_KEY;
+
     private static ITelephonyRegistry sRegistry;
 
     /**
@@ -2859,27 +2869,40 @@
 
     /**
      * Returns all observed cell information from all radios on the
-     * device including the primary and neighboring cells. This does
-     * not cause or change the rate of PhoneStateListener#onCellInfoChanged.
-     *<p>
-     * The list can include one or more of {@link android.telephony.CellInfoGsm CellInfoGsm},
-     * {@link android.telephony.CellInfoCdma CellInfoCdma},
-     * {@link android.telephony.CellInfoLte CellInfoLte} and
-     * {@link android.telephony.CellInfoWcdma CellInfoWcdma} in any combination.
-     * Specifically on devices with multiple radios it is typical to see instances of
-     * one or more of any these in the list. In addition 0, 1 or more CellInfo
-     * objects may return isRegistered() true.
-     *<p>
-     * This is preferred over using getCellLocation although for older
-     * devices this may return null in which case getCellLocation should
-     * be called.
-     *<p>
-     * This API will return valid data for registered cells on devices with
-     * {@link android.content.pm.PackageManager#FEATURE_TELEPHONY}
-     *<p>
-     * @return List of CellInfo or null if info unavailable.
+     * device including the primary and neighboring cells. Calling this method does
+     * not trigger a call to {@link android.telephony.PhoneStateListener#onCellInfoChanged
+     * onCellInfoChanged()}, or change the rate at which
+     * {@link android.telephony.PhoneStateListener#onCellInfoChanged
+     * onCellInfoChanged()} is called.
      *
-     * <p>Requires Permission: {@link android.Manifest.permission#ACCESS_COARSE_LOCATION}
+     *<p>
+     * The list can include one or more {@link android.telephony.CellInfoGsm CellInfoGsm},
+     * {@link android.telephony.CellInfoCdma CellInfoCdma},
+     * {@link android.telephony.CellInfoLte CellInfoLte}, and
+     * {@link android.telephony.CellInfoWcdma CellInfoWcdma} objects, in any combination.
+     * On devices with multiple radios it is typical to see instances of
+     * one or more of any these in the list. In addition, zero, one, or more
+     * of the returned objects may be considered registered; that is, their
+     * {@link android.telephony.CellInfo#isRegistered CellInfo.isRegistered()}
+     * methods may return true.
+     *
+     * <p>This method returns valid data for registered cells on devices with
+     * {@link android.content.pm.PackageManager#FEATURE_TELEPHONY}.
+     *
+     *<p>
+     * This method is preferred over using {@link
+     * android.telephony.TelephonyManager#getCellLocation getCellLocation()}.
+     * However, for older devices, <code>getAllCellInfo()</code> may return
+     * null. In these cases, you should call {@link
+     * android.telephony.TelephonyManager#getCellLocation getCellLocation()}
+     * instead.
+     *
+     * <p>Requires permission:
+     * {@link android.Manifest.permission#ACCESS_COARSE_LOCATION}
+     *
+     * @return List of {@link android.telephony.CellInfo}; null if cell
+     * information is unavailable.
+     *
      */
     public List<CellInfo> getAllCellInfo() {
         try {
@@ -3582,14 +3605,21 @@
     }
 
     // ICC SIM Application Types
+    /** UICC application type is SIM */
     public static final int APPTYPE_SIM = PhoneConstants.APPTYPE_SIM;
+    /** UICC application type is USIM */
     public static final int APPTYPE_USIM = PhoneConstants.APPTYPE_USIM;
+    /** UICC application type is RUIM */
     public static final int APPTYPE_RUIM = PhoneConstants.APPTYPE_RUIM;
+    /** UICC application type is CSIM */
     public static final int APPTYPE_CSIM = PhoneConstants.APPTYPE_CSIM;
+    /** UICC application type is ISIM */
     public static final int APPTYPE_ISIM = PhoneConstants.APPTYPE_ISIM;
-    // authContext (parameter P2) when doing SIM challenge,
+    // authContext (parameter P2) when doing UICC challenge,
     // per 3GPP TS 31.102 (Section 7.1.2)
+    /** Authentication type for UICC challenge is EAP SIM. See RFC 4186 for details. */
     public static final int AUTHTYPE_EAP_SIM = PhoneConstants.AUTH_CONTEXT_EAP_SIM;
+    /** Authentication type for UICC challenge is EAP AKA. See RFC 4187 for details. */
     public static final int AUTHTYPE_EAP_AKA = PhoneConstants.AUTH_CONTEXT_EAP_AKA;
 
     /**
@@ -5051,19 +5081,23 @@
     }
 
     /**
-     * Returns the modem activity info.
+     * Requests the modem activity info. The recipient will place the result
+     * in `result`.
+     * @param result The object on which the recipient will send the resulting
+     * {@link android.telephony.ModemActivityInfo} object.
      * @hide
      */
-    public ModemActivityInfo getModemActivityInfo() {
+    public void requestModemActivityInfo(ResultReceiver result) {
         try {
             ITelephony service = getITelephony();
             if (service != null) {
-                return service.getModemActivityInfo();
+                service.requestModemActivityInfo(result);
+                return;
             }
         } catch (RemoteException e) {
             Log.e(TAG, "Error calling ITelephony#getModemActivityInfo", e);
         }
-        return null;
+        result.send(0, null);
     }
 
     /**
diff --git a/telephony/java/com/android/ims/ImsCallProfile.java b/telephony/java/com/android/ims/ImsCallProfile.java
index 303746c..92b70e8 100644
--- a/telephony/java/com/android/ims/ImsCallProfile.java
+++ b/telephony/java/com/android/ims/ImsCallProfile.java
@@ -336,12 +336,27 @@
      * Converts from the call types defined in {@link com.android.ims.ImsCallProfile} to the
      * video state values defined in {@link VideoProfile}.
      *
-     * @param callType The call type.
+     * @param callProfile The call profile.
      * @return The video state.
      */
     public static int getVideoStateFromImsCallProfile(ImsCallProfile callProfile) {
+        int videostate = getVideoStateFromCallType(callProfile.mCallType);
+        if (callProfile.isVideoPaused() && !VideoProfile.isAudioOnly(videostate)) {
+            videostate |= VideoProfile.STATE_PAUSED;
+        } else {
+            videostate &= ~VideoProfile.STATE_PAUSED;
+        }
+        return videostate;
+    }
+
+    /**
+     * Translates a {@link ImsCallProfile} {@code CALL_TYPE_*} constant into a video state.
+     * @param callType The call type.
+     * @return The video state.
+     */
+    public static int getVideoStateFromCallType(int callType) {
         int videostate = VideoProfile.STATE_AUDIO_ONLY;
-        switch (callProfile.mCallType) {
+        switch (callType) {
             case CALL_TYPE_VT_TX:
                 videostate = VideoProfile.STATE_TX_ENABLED;
                 break;
@@ -358,11 +373,6 @@
                 videostate = VideoProfile.STATE_AUDIO_ONLY;
                 break;
         }
-        if (callProfile.isVideoPaused() && !VideoProfile.isAudioOnly(videostate)) {
-            videostate |= VideoProfile.STATE_PAUSED;
-        } else {
-            videostate &= ~VideoProfile.STATE_PAUSED;
-        }
         return videostate;
     }
 
diff --git a/telephony/java/com/android/ims/ImsReasonInfo.java b/telephony/java/com/android/ims/ImsReasonInfo.java
index f06d154..9369b20 100644
--- a/telephony/java/com/android/ims/ImsReasonInfo.java
+++ b/telephony/java/com/android/ims/ImsReasonInfo.java
@@ -217,6 +217,11 @@
     public static final int CODE_ECBM_NOT_SUPPORTED = 901;
 
     /**
+     * Fail code used to indicate that Multi-endpoint is not supported by the Ims framework.
+     */
+    public static final int CODE_MULTIENDPOINT_NOT_SUPPORTED = 902;
+
+    /**
      * Ims Registration error code
      */
     public static final int CODE_REGISTRATION_ERROR = 1000;
diff --git a/telephony/java/com/android/internal/telephony/DctConstants.java b/telephony/java/com/android/internal/telephony/DctConstants.java
index ccabace..e4981ce 100644
--- a/telephony/java/com/android/internal/telephony/DctConstants.java
+++ b/telephony/java/com/android/internal/telephony/DctConstants.java
@@ -103,6 +103,7 @@
     public static final int EVENT_DATA_RAT_CHANGED = BASE + 41;
     public static final int CMD_CLEAR_PROVISIONING_SPINNER = BASE + 42;
     public static final int EVENT_DEVICE_PROVISIONED_CHANGE = BASE + 43;
+    public static final int EVENT_REDIRECTION_DETECTED = BASE + 44;
 
     /***** Constants *****/
 
diff --git a/telephony/java/com/android/internal/telephony/ISub.aidl b/telephony/java/com/android/internal/telephony/ISub.aidl
index f6aef08..c61ed2a 100755
--- a/telephony/java/com/android/internal/telephony/ISub.aidl
+++ b/telephony/java/com/android/internal/telephony/ISub.aidl
@@ -118,6 +118,17 @@
     int setDisplayName(String displayName, int subId);
 
     /**
+     * Set Sim Provisioning Status by subscription ID
+     * @param simProvisionStatus with the subscription:
+     * {@See SubscriptionManager#SIM_PROVISIONED}
+     * {@See SubscriptionManager#SIM_UNPROVISIONED_COLD}
+     * {@See SubscriptionManager#SIM_UNPROVISIONED_OUT_OF_CREDIT}
+     * @param subId the unique SubInfoRecord index in database
+     * @return the number of records updated
+     */
+    int setSimProvisioningStatus(int simProvisioningStatus, int subId);
+
+    /**
      * Set display name by simInfo index with name source
      * @param displayName the display name of SIM card
      * @param subId the unique SubscriptionInfo index in database
diff --git a/telephony/java/com/android/internal/telephony/ITelephony.aidl b/telephony/java/com/android/internal/telephony/ITelephony.aidl
index b41d361..bb8aaad5 100644
--- a/telephony/java/com/android/internal/telephony/ITelephony.aidl
+++ b/telephony/java/com/android/internal/telephony/ITelephony.aidl
@@ -18,6 +18,7 @@
 
 import android.content.Intent;
 import android.os.Bundle;
+import android.os.ResultReceiver;
 import android.net.Uri;
 import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
@@ -1027,9 +1028,13 @@
     String getLocaleFromDefaultSim();
 
     /**
-     * Return the modem activity info.
+     * Requests the modem activity info asynchronously.
+     * The implementor is expected to reply with the
+     * {@link android.telephony.ModemActivityInfo} object placed into the Bundle with the key
+     * {@link android.telephony.TelephonyManager#MODEM_ACTIVITY_RESULT_KEY}.
+     * The result code is ignored.
      */
-    ModemActivityInfo getModemActivityInfo();
+    oneway void requestModemActivityInfo(in ResultReceiver result);
 
     /**
      * Get the service state on specified subscription
diff --git a/telephony/java/com/android/internal/telephony/ITelephonyRegistry.aidl b/telephony/java/com/android/internal/telephony/ITelephonyRegistry.aidl
index 907d76e..2c6be62 100644
--- a/telephony/java/com/android/internal/telephony/ITelephonyRegistry.aidl
+++ b/telephony/java/com/android/internal/telephony/ITelephonyRegistry.aidl
@@ -37,10 +37,10 @@
     void listenForSubscriber(in int subId, String pkg, IPhoneStateListener callback, int events,
             boolean notifyNow);
     void notifyCallState(int state, String incomingNumber);
-    void notifyCallStateForSubscriber(in int subId, int state, String incomingNumber);
+    void notifyCallStateForPhoneId(in int phoneId, in int subId, int state, String incomingNumber);
     void notifyServiceStateForPhoneId(in int phoneId, in int subId, in ServiceState state);
-    void notifySignalStrength(in SignalStrength signalStrength);
-    void notifySignalStrengthForSubscriber(in int subId, in SignalStrength signalStrength);
+    void notifySignalStrengthForPhoneId(in int phoneId, in int subId,
+            in SignalStrength signalStrength);
     void notifyMessageWaitingChangedForPhoneId(in int phoneId, in int subId, in boolean mwi);
     void notifyCallForwardingChanged(boolean cfi);
     void notifyCallForwardingChangedForSubscriber(in int subId, boolean cfi);
diff --git a/telephony/java/com/android/internal/telephony/RILConstants.java b/telephony/java/com/android/internal/telephony/RILConstants.java
index 8aa0e34..cfc5305 100644
--- a/telephony/java/com/android/internal/telephony/RILConstants.java
+++ b/telephony/java/com/android/internal/telephony/RILConstants.java
@@ -33,8 +33,6 @@
     // From the top of ril.cpp
     int RIL_ERRNO_INVALID_RESPONSE = -1;
 
-    int MAX_INT = 0x7FFFFFFF;
-
     // from RIL_Errno
     int SUCCESS = 0;
     int RADIO_NOT_AVAILABLE = 1;              /* If radio did not start or is resetting */
diff --git a/telephony/java/com/android/internal/telephony/TelephonyIntents.java b/telephony/java/com/android/internal/telephony/TelephonyIntents.java
index c70f8cf..eafb3d4 100644
--- a/telephony/java/com/android/internal/telephony/TelephonyIntents.java
+++ b/telephony/java/com/android/internal/telephony/TelephonyIntents.java
@@ -395,4 +395,32 @@
      */
     public static final String ACTION_SET_RADIO_CAPABILITY_FAILED =
             "android.intent.action.ACTION_SET_RADIO_CAPABILITY_FAILED";
+
+    /**
+     * <p>Broadcast Action: when data connections get redirected with validation failure.
+     * intended for sim/account status checks and only sent to the specified carrier app
+     * feedback is via carrier/system APIs to report cold-sim, out-of-credit-sim, etc
+     * The intent will have the following extra values:</p>
+     * <ul>
+     *   <li>redirectUrl</li><dd>A string with the redirection url info.</dd>
+     *   <li>subId</li><dd>Sub Id which associated the data redirection.</dd>
+     * </ul>
+     * <p class="note">This is a protected intent that can only be sent by the system.</p>
+     */
+    public static final String ACTION_DATA_CONNECTION_REDIRECTED =
+            "android.intent.action.REDIRECTION_DETECTED";
+    /**
+     * <p>Broadcast Action: when data connections setup fails.
+     * intended for sim/account status checks and only sent to the specified carrier app
+     * feedback is via carrier/system APIs to report cold-sim, out-of-credit-sim, etc
+     * The intent will have the following extra values:</p>
+     * <ul>
+     *   <li>apnType</li><dd>A string with the apn type.</dd>
+     *   <li>errorCode</li><dd>A integer with dataFailCause.</dd>
+     *   <li>subId</dt><li>Sub Id which associated the data redirection.</dd>
+     * </ul>
+     * <p class="note">This is a protected intent that can only be sent by the system. </p>
+     */
+    public static final String ACTION_REQUEST_NETWORK_FAILED =
+            "android.intent.action.REQUEST_NETWORK_FAILED";
 }
diff --git a/test-runner/src/android/test/mock/MockPackageManager.java b/test-runner/src/android/test/mock/MockPackageManager.java
index 2e5ed3f..330dbab 100644
--- a/test-runner/src/android/test/mock/MockPackageManager.java
+++ b/test-runner/src/android/test/mock/MockPackageManager.java
@@ -822,7 +822,13 @@
 
     /** @hide */
     @Override
-    public @Nullable String getServicesSystemSharedLibraryPackageName() {
+    public @NonNull String getServicesSystemSharedLibraryPackageName() {
+        throw new UnsupportedOperationException();
+    }
+
+    /** @hide */
+    @Override
+    public @NonNull String getSharedSystemSharedLibraryPackageName() {
         throw new UnsupportedOperationException();
     }
 
diff --git a/tests/CoreTests/android/core/TestWebServer.java b/tests/CoreTests/android/core/TestWebServer.java
index f73e6ff..2a016cf 100644
--- a/tests/CoreTests/android/core/TestWebServer.java
+++ b/tests/CoreTests/android/core/TestWebServer.java
@@ -781,7 +781,7 @@
 
 
             if (testID.startsWith("test")) {
-                testNum = Integer.valueOf(testID.substring(4))-1;
+                testNum = Integer.parseInt(testID.substring(4))-1;
             }
 
             if ((testNum < 0) || (testNum > TestWebData.tests.length - 1)) {
diff --git a/tools/aapt2/link/ManifestFixer.cpp b/tools/aapt2/link/ManifestFixer.cpp
index 3779638..953e87e 100644
--- a/tools/aapt2/link/ManifestFixer.cpp
+++ b/tools/aapt2/link/ManifestFixer.cpp
@@ -136,6 +136,9 @@
         return true;
     });
 
+    // Meta tags.
+    manifestAction[u"eat-comment"];
+
     // Uses-sdk actions.
     manifestAction[u"uses-sdk"].action([&](xml::Element* el) -> bool {
         if (mOptions.minSdkVersionDefault &&
@@ -168,7 +171,7 @@
         return true;
     });
 
-    manifestAction[u"eat-comment"];
+    manifestAction[u"original-package"];
     manifestAction[u"protected-broadcast"];
     manifestAction[u"uses-permission"];
     manifestAction[u"permission"];
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
index e0d8249..3ac1889 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
@@ -192,7 +192,9 @@
 
     @Override
     public void setElapsedFrameTimeNanos(long nanos) {
-        mSession.setElapsedFrameTimeNanos(nanos);
+        if (mSession != null) {
+            mSession.setElapsedFrameTimeNanos(nanos);
+        }
     }
 
     @Override
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
index 0a64b63..b3ed9e1 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
@@ -49,6 +49,7 @@
 import android.graphics.drawable.Drawable;
 import android.net.Uri;
 import android.os.Handler;
+import android.os.RemoteException;
 import android.os.UserHandle;
 import android.os.storage.VolumeInfo;
 import java.util.List;
@@ -311,6 +312,11 @@
     }
 
     @Override
+    public @NonNull String getSharedSystemSharedLibraryPackageName() {
+        return null;
+    }
+
+    @Override
     public FeatureInfo[] getSystemAvailableFeatures() {
         return new FeatureInfo[0];
     }
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
index 3ef568c..834ad74 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
@@ -134,6 +134,7 @@
     private List<ViewInfo> mViewInfoList;
     private List<ViewInfo> mSystemViewInfoList;
     private Layout.Builder mLayoutBuilder;
+    private boolean mNewRenderSize;
 
     private static final class PostInflateException extends Exception {
         private static final long serialVersionUID = 1L;
@@ -200,6 +201,88 @@
     }
 
     /**
+     * Measures the the current layout if needed (see {@link #invalidateRenderingSize}).
+     */
+    private void measure(@NonNull SessionParams params) {
+        // only do the screen measure when needed.
+        if (mMeasuredScreenWidth != -1) {
+            return;
+        }
+
+        RenderingMode renderingMode = params.getRenderingMode();
+        HardwareConfig hardwareConfig = params.getHardwareConfig();
+
+        mNewRenderSize = true;
+        mMeasuredScreenWidth = hardwareConfig.getScreenWidth();
+        mMeasuredScreenHeight = hardwareConfig.getScreenHeight();
+
+        if (renderingMode != RenderingMode.NORMAL) {
+            int widthMeasureSpecMode = renderingMode.isHorizExpand() ?
+                    MeasureSpec.UNSPECIFIED // this lets us know the actual needed size
+                    : MeasureSpec.EXACTLY;
+            int heightMeasureSpecMode = renderingMode.isVertExpand() ?
+                    MeasureSpec.UNSPECIFIED // this lets us know the actual needed size
+                    : MeasureSpec.EXACTLY;
+
+            // We used to compare the measured size of the content to the screen size but
+            // this does not work anymore due to the 2 following issues:
+            // - If the content is in a decor (system bar, title/action bar), the root view
+            //   will not resize even with the UNSPECIFIED because of the embedded layout.
+            // - If there is no decor, but a dialog frame, then the dialog padding prevents
+            //   comparing the size of the content to the screen frame (as it would not
+            //   take into account the dialog padding).
+
+            // The solution is to first get the content size in a normal rendering, inside
+            // the decor or the dialog padding.
+            // Then measure only the content with UNSPECIFIED to see the size difference
+            // and apply this to the screen size.
+
+            // first measure the full layout, with EXACTLY to get the size of the
+            // content as it is inside the decor/dialog
+            @SuppressWarnings("deprecation")
+            Pair<Integer, Integer> exactMeasure = measureView(
+                    mViewRoot, mContentRoot.getChildAt(0),
+                    mMeasuredScreenWidth, MeasureSpec.EXACTLY,
+                    mMeasuredScreenHeight, MeasureSpec.EXACTLY);
+
+            // now measure the content only using UNSPECIFIED (where applicable, based on
+            // the rendering mode). This will give us the size the content needs.
+            @SuppressWarnings("deprecation")
+            Pair<Integer, Integer> result = measureView(
+                    mContentRoot, mContentRoot.getChildAt(0),
+                    mMeasuredScreenWidth, widthMeasureSpecMode,
+                    mMeasuredScreenHeight, heightMeasureSpecMode);
+
+            // now look at the difference and add what is needed.
+            if (renderingMode.isHorizExpand()) {
+                int measuredWidth = exactMeasure.getFirst();
+                int neededWidth = result.getFirst();
+                if (neededWidth > measuredWidth) {
+                    mMeasuredScreenWidth += neededWidth - measuredWidth;
+                }
+                if (mMeasuredScreenWidth < measuredWidth) {
+                    // If the screen width is less than the exact measured width,
+                    // expand to match.
+                    mMeasuredScreenWidth = measuredWidth;
+                }
+            }
+
+            if (renderingMode.isVertExpand()) {
+                int measuredHeight = exactMeasure.getSecond();
+                int neededHeight = result.getSecond();
+                if (neededHeight > measuredHeight) {
+                    mMeasuredScreenHeight += neededHeight - measuredHeight;
+                }
+                if (mMeasuredScreenHeight < measuredHeight) {
+                    // If the screen height is less than the exact measured height,
+                    // expand to match.
+                    mMeasuredScreenHeight = measuredHeight;
+                }
+            }
+        }
+    }
+
+    /**
      * Inflates the layout.
      * <p>
      * {@link #acquire(long)} must have been called before this.
@@ -245,6 +328,14 @@
 
             setActiveToolbar(view, context, params);
 
+            measure(params);
+            measureView(mViewRoot, null /*measuredView*/,
+                    mMeasuredScreenWidth, MeasureSpec.EXACTLY,
+                    mMeasuredScreenHeight, MeasureSpec.EXACTLY);
+            mViewRoot.layout(0, 0, mMeasuredScreenWidth, mMeasuredScreenHeight);
+            mSystemViewInfoList = visitAllChildren(mViewRoot, 0, params.getExtendedViewInfoMode(),
+                    false);
+
             return SUCCESS.createResult();
         } catch (PostInflateException e) {
             return ERROR_INFLATION.createResult(e.getMessage(), e);
@@ -320,82 +411,9 @@
                 return ERROR_NOT_INFLATED.createResult();
             }
 
-            RenderingMode renderingMode = params.getRenderingMode();
+            measure(params);
+
             HardwareConfig hardwareConfig = params.getHardwareConfig();
-
-            // only do the screen measure when needed.
-            boolean newRenderSize = false;
-            if (mMeasuredScreenWidth == -1) {
-                newRenderSize = true;
-                mMeasuredScreenWidth = hardwareConfig.getScreenWidth();
-                mMeasuredScreenHeight = hardwareConfig.getScreenHeight();
-
-                if (renderingMode != RenderingMode.NORMAL) {
-                    int widthMeasureSpecMode = renderingMode.isHorizExpand() ?
-                            MeasureSpec.UNSPECIFIED // this lets us know the actual needed size
-                            : MeasureSpec.EXACTLY;
-                    int heightMeasureSpecMode = renderingMode.isVertExpand() ?
-                            MeasureSpec.UNSPECIFIED // this lets us know the actual needed size
-                            : MeasureSpec.EXACTLY;
-
-                    // We used to compare the measured size of the content to the screen size but
-                    // this does not work anymore due to the 2 following issues:
-                    // - If the content is in a decor (system bar, title/action bar), the root view
-                    //   will not resize even with the UNSPECIFIED because of the embedded layout.
-                    // - If there is no decor, but a dialog frame, then the dialog padding prevents
-                    //   comparing the size of the content to the screen frame (as it would not
-                    //   take into account the dialog padding).
-
-                    // The solution is to first get the content size in a normal rendering, inside
-                    // the decor or the dialog padding.
-                    // Then measure only the content with UNSPECIFIED to see the size difference
-                    // and apply this to the screen size.
-
-                    // first measure the full layout, with EXACTLY to get the size of the
-                    // content as it is inside the decor/dialog
-                    @SuppressWarnings("deprecation")
-                    Pair<Integer, Integer> exactMeasure = measureView(
-                            mViewRoot, mContentRoot.getChildAt(0),
-                            mMeasuredScreenWidth, MeasureSpec.EXACTLY,
-                            mMeasuredScreenHeight, MeasureSpec.EXACTLY);
-
-                    // now measure the content only using UNSPECIFIED (where applicable, based on
-                    // the rendering mode). This will give us the size the content needs.
-                    @SuppressWarnings("deprecation")
-                    Pair<Integer, Integer> result = measureView(
-                            mContentRoot, mContentRoot.getChildAt(0),
-                            mMeasuredScreenWidth, widthMeasureSpecMode,
-                            mMeasuredScreenHeight, heightMeasureSpecMode);
-
-                    // now look at the difference and add what is needed.
-                    if (renderingMode.isHorizExpand()) {
-                        int measuredWidth = exactMeasure.getFirst();
-                        int neededWidth = result.getFirst();
-                        if (neededWidth > measuredWidth) {
-                            mMeasuredScreenWidth += neededWidth - measuredWidth;
-                        }
-                        if (mMeasuredScreenWidth < measuredWidth) {
-                            // If the screen width is less than the exact measured width,
-                            // expand to match.
-                            mMeasuredScreenWidth = measuredWidth;
-                        }
-                    }
-
-                    if (renderingMode.isVertExpand()) {
-                        int measuredHeight = exactMeasure.getSecond();
-                        int neededHeight = result.getSecond();
-                        if (neededHeight > measuredHeight) {
-                            mMeasuredScreenHeight += neededHeight - measuredHeight;
-                        }
-                        if (mMeasuredScreenHeight < measuredHeight) {
-                            // If the screen height is less than the exact measured height,
-                            // expand to match.
-                            mMeasuredScreenHeight = measuredHeight;
-                        }
-                    }
-                }
-            }
-
             Result renderResult = SUCCESS.createResult();
             if (params.isLayoutOnly()) {
                 // delete the canvas and image to reset them on the next full rendering
@@ -412,7 +430,8 @@
                 // it doesn't get cached.
                 boolean disableBitmapCaching = Boolean.TRUE.equals(params.getFlag(
                     RenderParamsFlags.FLAG_KEY_DISABLE_BITMAP_CACHING));
-                if (newRenderSize || mCanvas == null || disableBitmapCaching) {
+                if (mNewRenderSize || mCanvas == null || disableBitmapCaching) {
+                    mNewRenderSize = false;
                     if (params.getImageFactory() != null) {
                         mImage = params.getImageFactory().getImage(
                                 mMeasuredScreenWidth,
diff --git a/wifi/java/android/net/wifi/IWifiManager.aidl b/wifi/java/android/net/wifi/IWifiManager.aidl
index be5b8fc..9268a2b 100644
--- a/wifi/java/android/net/wifi/IWifiManager.aidl
+++ b/wifi/java/android/net/wifi/IWifiManager.aidl
@@ -27,8 +27,8 @@
 
 import android.net.DhcpInfo;
 
-
 import android.os.Messenger;
+import android.os.ResultReceiver;
 import android.os.WorkSource;
 
 /**
@@ -42,6 +42,14 @@
 
     WifiActivityEnergyInfo reportActivityInfo();
 
+    /**
+     * Requests the controller activity info asynchronously.
+     * The implementor is expected to reply with the
+     * {@link android.net.wifi.WifiActivityEnergyInfo} object placed into the Bundle with the key
+     * {@link android.os.BatteryStats#RESULT_RECEIVER_CONTROLLER_KEY}. The result code is ignored.
+     */
+    oneway void requestActivityInfo(in ResultReceiver result);
+
     List<WifiConfiguration> getConfiguredNetworks();
 
     List<WifiConfiguration> getPrivilegedConfiguredNetworks();
diff --git a/wifi/java/android/net/wifi/RttManager.java b/wifi/java/android/net/wifi/RttManager.java
index 87fc7fa..a404a90 100644
--- a/wifi/java/android/net/wifi/RttManager.java
+++ b/wifi/java/android/net/wifi/RttManager.java
@@ -5,7 +5,6 @@
 import android.content.Context;
 import android.os.Bundle;
 import android.os.Handler;
-import android.os.HandlerThread;
 import android.os.Looper;
 import android.os.Message;
 import android.os.Messenger;
@@ -19,8 +18,6 @@
 import com.android.internal.util.AsyncChannel;
 import com.android.internal.util.Protocol;
 
-import java.util.concurrent.CountDownLatch;
-
 /** @hide */
 @SystemApi
 public class RttManager {
@@ -199,6 +196,12 @@
         // Whether STA responder role is supported.
         public boolean responderSupported;
 
+        /** Whether the secure RTT protocol is supported. */
+        public boolean secureRttSupported;
+
+        /** Draft 11mc version supported, including major and minor version. e.g, draft 4.3 is 43 */
+        public int mcVersion;
+
         @Override
         public String toString() {
             StringBuffer sb = new StringBuffer();
@@ -223,7 +226,7 @@
                 sb.append("VHT ");
             }
 
-            sb.append("is supported. \n");
+            sb.append("is supported. ");
 
             if ((bwSupported & RTT_BW_5_SUPPORT) != 0) {
                 sb.append("5 MHz ");
@@ -252,7 +255,10 @@
             sb.append("is supported.");
 
             sb.append(" STA responder role is ")
-                .append(responderSupported ? "supported" : "not supported.");
+                    .append(responderSupported ? "supported" : "not supported");
+            sb.append(" Secure RTT protocol is ")
+                    .append(secureRttSupported ? "supported" : "not supported");
+            sb.append(" 11mc version is " + mcVersion);
 
             return sb.toString();
         }
@@ -272,6 +278,8 @@
             dest.writeInt(preambleSupported);
             dest.writeInt(bwSupported);
             dest.writeInt(responderSupported ? 1 : 0);
+            dest.writeInt(secureRttSupported ? 1 : 0);
+            dest.writeInt(mcVersion);
         }
 
         /** Implement the Parcelable interface {@hide} */
@@ -279,16 +287,18 @@
             new Creator<RttCapabilities>() {
             @Override
             public RttCapabilities createFromParcel(Parcel in) {
-                    RttCapabilities capabilities = new RttCapabilities();
-                    capabilities.oneSidedRttSupported = (in.readInt() == 1);
-                        capabilities.twoSided11McRttSupported = (in.readInt() == 1);
-                        capabilities.lciSupported = (in.readInt() == 1);
-                        capabilities.lcrSupported = (in.readInt() == 1);
-                        capabilities.preambleSupported = in.readInt();
-                        capabilities.bwSupported = in.readInt();
-                        capabilities.responderSupported = (in.readInt() == 1);
-                        return capabilities;
-                    }
+                RttCapabilities capabilities = new RttCapabilities();
+                capabilities.oneSidedRttSupported = (in.readInt() == 1);
+                capabilities.twoSided11McRttSupported = (in.readInt() == 1);
+                capabilities.lciSupported = (in.readInt() == 1);
+                capabilities.lcrSupported = (in.readInt() == 1);
+                capabilities.preambleSupported = in.readInt();
+                capabilities.bwSupported = in.readInt();
+                capabilities.responderSupported = (in.readInt() == 1);
+                capabilities.secureRttSupported = (in.readInt() == 1);
+                capabilities.mcVersion = in.readInt();
+                return capabilities;
+            }
                 /** Implement the Parcelable interface {@hide} */
                 @Override
                 public RttCapabilities[] newArray(int size) {
@@ -298,7 +308,7 @@
     }
 
     public RttCapabilities getRttCapabilities() {
-        synchronized (sCapabilitiesLock) {
+        synchronized (mCapabilitiesLock) {
             if (mRttCapabilities == null) {
                 try {
                     mRttCapabilities = mService.getRttCapabilities();
@@ -919,13 +929,13 @@
         validateChannel();
         ParcelableRttParams parcelableParams = new ParcelableRttParams(params);
         Log.i(TAG, "Send RTT request to RTT Service");
-        sAsyncChannel.sendMessage(CMD_OP_START_RANGING,
+        mAsyncChannel.sendMessage(CMD_OP_START_RANGING,
                 0, putListener(listener), parcelableParams);
     }
 
     public void stopRanging(RttListener listener) {
         validateChannel();
-        sAsyncChannel.sendMessage(CMD_OP_STOP_RANGING, 0, removeListener(listener));
+        mAsyncChannel.sendMessage(CMD_OP_STOP_RANGING, 0, removeListener(listener));
     }
 
     /**
@@ -962,7 +972,7 @@
         }
         validateChannel();
         int key = putListenerIfAbsent(callback);
-        sAsyncChannel.sendMessage(CMD_OP_ENABLE_RESPONDER, 0, key);
+        mAsyncChannel.sendMessage(CMD_OP_ENABLE_RESPONDER, 0, key);
     }
 
     /**
@@ -985,7 +995,7 @@
             Log.e(TAG, "responder not enabled yet");
             return;
         }
-        sAsyncChannel.sendMessage(CMD_OP_DISABLE_RESPONDER, 0, key);
+        mAsyncChannel.sendMessage(CMD_OP_DISABLE_RESPONDER, 0, key);
     }
 
     /**
@@ -1097,23 +1107,17 @@
     public static final int
             CMD_OP_ENALBE_RESPONDER_FAILED              = BASE + 8;
 
-    private Context mContext;
-    private IRttManager mService;
-    private RttCapabilities mRttCapabilities;
-
     private static final int INVALID_KEY = 0;
-    private static int sListenerKey = 1;
 
-    private static final SparseArray sListenerMap = new SparseArray();
-    private static final Object sListenerMapLock = new Object();
-    private static final Object sCapabilitiesLock = new Object();
+    private final Context mContext;
+    private final IRttManager mService;
+    private final SparseArray mListenerMap = new SparseArray();
+    private final Object mListenerMapLock = new Object();
+    private final Object mCapabilitiesLock = new Object();
 
-    private static AsyncChannel sAsyncChannel;
-    private static CountDownLatch sConnected;
-
-    private static final Object sThreadRefLock = new Object();
-    private static int sThreadRefCount;
-    private static HandlerThread sHandlerThread;
+    private RttCapabilities mRttCapabilities;
+    private int mListenerKey = 1;
+    private AsyncChannel mAsyncChannel;
 
     /**
      * Create a new WifiScanner instance.
@@ -1122,122 +1126,107 @@
      * the standard {@link android.content.Context#WIFI_RTT_SERVICE Context.WIFI_RTT_SERVICE}.
      * @param context the application context
      * @param service the Binder interface
+     * @param looper Looper for running the callbacks.
+     *
      * @hide
      */
-
-    public RttManager(Context context, IRttManager service) {
+    public RttManager(Context context, IRttManager service, Looper looper) {
         mContext = context;
         mService = service;
-        init();
-    }
-
-    private void init() {
-        synchronized (sThreadRefLock) {
-            if (++sThreadRefCount == 1) {
-                Messenger messenger = null;
-                try {
-                    Log.d(TAG, "Get the messenger from " + mService);
-                    messenger = mService.getMessenger();
-                } catch (RemoteException e) {
-                    throw e.rethrowFromSystemServer();
-                } catch (SecurityException e) {
-                    /* do nothing */
-                }
-
-                if (messenger == null) {
-                    sAsyncChannel = null;
-                    return;
-                }
-
-                sHandlerThread = new HandlerThread("RttManager");
-                sAsyncChannel = new AsyncChannel();
-                sConnected = new CountDownLatch(1);
-
-                sHandlerThread.start();
-                Handler handler = new ServiceHandler(sHandlerThread.getLooper());
-                sAsyncChannel.connect(mContext, handler, messenger);
-                try {
-                    sConnected.await();
-                } catch (InterruptedException e) {
-                    Log.e(TAG, "interrupted wait at init");
-                }
-            }
+        Messenger messenger = null;
+        try {
+            Log.d(TAG, "Get the messenger from " + mService);
+            messenger = mService.getMessenger();
+        } catch (RemoteException e) {
+            throw e.rethrowFromSystemServer();
         }
+
+        if (messenger == null) {
+            throw new IllegalStateException("getMessenger() returned null!  This is invalid.");
+        }
+
+        mAsyncChannel = new AsyncChannel();
+
+        Handler handler = new ServiceHandler(looper);
+        mAsyncChannel.connectSync(mContext, handler, messenger);
+        // We cannot use fullyConnectSync because it sends the FULL_CONNECTION message
+        // synchronously, which causes RttService to receive the wrong replyTo value.
+        mAsyncChannel.sendMessage(AsyncChannel.CMD_CHANNEL_FULL_CONNECTION);
     }
 
     private void validateChannel() {
-        if (sAsyncChannel == null) throw new IllegalStateException(
+        if (mAsyncChannel == null) throw new IllegalStateException(
                 "No permission to access and change wifi or a bad initialization");
     }
 
-    private static int putListener(Object listener) {
+    private int putListener(Object listener) {
         if (listener == null) return INVALID_KEY;
         int key;
-        synchronized (sListenerMapLock) {
+        synchronized (mListenerMapLock) {
             do {
-                key = sListenerKey++;
+                key = mListenerKey++;
             } while (key == INVALID_KEY);
-            sListenerMap.put(key, listener);
+            mListenerMap.put(key, listener);
         }
         return key;
     }
 
-    // Insert a listener if it doesn't exist in sListenerMap. Returns the key of the listener.
-    private static int putListenerIfAbsent(Object listener) {
+    // Insert a listener if it doesn't exist in mListenerMap. Returns the key of the listener.
+    private int putListenerIfAbsent(Object listener) {
         if (listener == null) return INVALID_KEY;
-        synchronized (sListenerMapLock) {
+        synchronized (mListenerMapLock) {
             int key = getListenerKey(listener);
             if (key != INVALID_KEY) {
                 return key;
             }
             do {
-                key = sListenerKey++;
+                key = mListenerKey++;
             } while (key == INVALID_KEY);
-            sListenerMap.put(key, listener);
+            mListenerMap.put(key, listener);
             return key;
         }
 
     }
 
-    private static Object getListener(int key) {
+    private Object getListener(int key) {
         if (key == INVALID_KEY) return null;
-        synchronized (sListenerMapLock) {
-            Object listener = sListenerMap.get(key);
+        synchronized (mListenerMapLock) {
+            Object listener = mListenerMap.get(key);
             return listener;
         }
     }
 
-    private static int getListenerKey(Object listener) {
+    private int getListenerKey(Object listener) {
         if (listener == null) return INVALID_KEY;
-        synchronized (sListenerMapLock) {
-            int index = sListenerMap.indexOfValue(listener);
+        synchronized (mListenerMapLock) {
+            int index = mListenerMap.indexOfValue(listener);
             if (index == -1) {
                 return INVALID_KEY;
             } else {
-                return sListenerMap.keyAt(index);
+                return mListenerMap.keyAt(index);
             }
         }
     }
 
-    private static Object removeListener(int key) {
+    private Object removeListener(int key) {
         if (key == INVALID_KEY) return null;
-        synchronized (sListenerMapLock) {
-            Object listener = sListenerMap.get(key);
-            sListenerMap.remove(key);
+        synchronized (mListenerMapLock) {
+            Object listener = mListenerMap.get(key);
+            mListenerMap.remove(key);
             return listener;
         }
     }
 
-    private static int removeListener(Object listener) {
+    private int removeListener(Object listener) {
         int key = getListenerKey(listener);
         if (key == INVALID_KEY) return key;
-        synchronized (sListenerMapLock) {
-            sListenerMap.remove(key);
+        synchronized (mListenerMapLock) {
+            mListenerMap.remove(key);
             return key;
         }
     }
 
-    private static class ServiceHandler extends Handler {
+    private class ServiceHandler extends Handler {
         ServiceHandler(Looper looper) {
             super(looper);
         }
@@ -1245,24 +1234,13 @@
         public void handleMessage(Message msg) {
             Log.i(TAG, "RTT manager get message: " + msg.what);
             switch (msg.what) {
-                case AsyncChannel.CMD_CHANNEL_HALF_CONNECTED:
-                    if (msg.arg1 == AsyncChannel.STATUS_SUCCESSFUL) {
-                        sAsyncChannel.sendMessage(AsyncChannel.CMD_CHANNEL_FULL_CONNECTION);
-                    } else {
-                        Log.e(TAG, "Failed to set up channel connection");
-                        // This will cause all further async API calls on the WifiManager
-                        // to fail and throw an exception
-                        sAsyncChannel = null;
-                    }
-                    return;
                 case AsyncChannel.CMD_CHANNEL_FULLY_CONNECTED:
-                    sConnected.countDown();
                     return;
                 case AsyncChannel.CMD_CHANNEL_DISCONNECTED:
                     Log.e(TAG, "Channel connection lost");
                     // This will cause all further async API calls on the WifiManager
                     // to fail and throw an exception
-                    sAsyncChannel = null;
+                    mAsyncChannel = null;
                     getLooper().quit();
                     return;
             }
diff --git a/wifi/java/android/net/wifi/WifiActivityEnergyInfo.java b/wifi/java/android/net/wifi/WifiActivityEnergyInfo.java
index 4c38c9b..29bf02c 100644
--- a/wifi/java/android/net/wifi/WifiActivityEnergyInfo.java
+++ b/wifi/java/android/net/wifi/WifiActivityEnergyInfo.java
@@ -181,8 +181,8 @@
      * @return if the record is valid
      */
     public boolean isValid() {
-        return ((mControllerTxTimeMs !=0) ||
-                (mControllerRxTimeMs !=0) ||
-                (mControllerIdleTimeMs !=0));
+        return ((mControllerTxTimeMs >=0) &&
+                (mControllerRxTimeMs >=0) &&
+                (mControllerIdleTimeMs >=0));
     }
 }
diff --git a/wifi/java/android/net/wifi/WifiConfiguration.java b/wifi/java/android/net/wifi/WifiConfiguration.java
index b8ef150..9d0c20c 100644
--- a/wifi/java/android/net/wifi/WifiConfiguration.java
+++ b/wifi/java/android/net/wifi/WifiConfiguration.java
@@ -691,6 +691,16 @@
 
     /**
      * @hide
+     * Setting this value will force scan results associated with this configuration to
+     * be included in the bucket of networks that are externally scored.
+     * If not set, associated scan results will be treated as legacy saved networks and
+     * will take precedence over networks in the scored category.
+     */
+    @SystemApi
+    public boolean useExternalScores;
+
+    /**
+     * @hide
      * Number of time the scorer overrode a the priority based choice, when comparing two
      * WifiConfigurations, note that since comparing WifiConfiguration happens very often
      * potentially at every scan, this number might become very large, even on an idle
@@ -1333,6 +1343,7 @@
         didSelfAdd = false;
         ephemeral = false;
         meteredHint = false;
+        useExternalScores = false;
         validatedInternetAccess = false;
         mIpConfiguration = new IpConfiguration();
         lastUpdateUid = -1;
@@ -1433,8 +1444,9 @@
         if (this.validatedInternetAccess) sbuf.append(" validatedInternetAccess");
         if (this.ephemeral) sbuf.append(" ephemeral");
         if (this.meteredHint) sbuf.append(" meteredHint");
+        if (this.useExternalScores) sbuf.append(" useExternalScores");
         if (this.didSelfAdd || this.selfAdded || this.validatedInternetAccess
-            || this.ephemeral || this.meteredHint) {
+            || this.ephemeral || this.meteredHint || this.useExternalScores) {
             sbuf.append("\n");
         }
         sbuf.append(" KeyMgmt:");
@@ -1859,6 +1871,7 @@
             validatedInternetAccess = source.validatedInternetAccess;
             ephemeral = source.ephemeral;
             meteredHint = source.meteredHint;
+            useExternalScores = source.useExternalScores;
             if (source.visibility != null) {
                 visibility = new Visibility(source.visibility);
             }
@@ -1939,6 +1952,7 @@
         dest.writeInt(validatedInternetAccess ? 1 : 0);
         dest.writeInt(ephemeral ? 1 : 0);
         dest.writeInt(meteredHint ? 1 : 0);
+        dest.writeInt(useExternalScores ? 1 : 0);
         dest.writeInt(creatorUid);
         dest.writeInt(lastConnectUid);
         dest.writeInt(lastUpdateUid);
@@ -2009,6 +2023,7 @@
                 config.validatedInternetAccess = in.readInt() != 0;
                 config.ephemeral = in.readInt() != 0;
                 config.meteredHint = in.readInt() != 0;
+                config.useExternalScores = in.readInt() != 0;
                 config.creatorUid = in.readInt();
                 config.lastConnectUid = in.readInt();
                 config.lastUpdateUid = in.readInt();
diff --git a/wifi/java/android/net/wifi/WifiScanner.java b/wifi/java/android/net/wifi/WifiScanner.java
index 1a8197c..2ee1aef 100644
--- a/wifi/java/android/net/wifi/WifiScanner.java
+++ b/wifi/java/android/net/wifi/WifiScanner.java
@@ -20,7 +20,6 @@
 import android.content.Context;
 import android.os.Bundle;
 import android.os.Handler;
-import android.os.HandlerThread;
 import android.os.Looper;
 import android.os.Message;
 import android.os.Messenger;
@@ -31,13 +30,11 @@
 import android.util.Log;
 import android.util.SparseArray;
 
-import com.android.internal.annotations.VisibleForTesting;
 import com.android.internal.util.AsyncChannel;
 import com.android.internal.util.Preconditions;
 import com.android.internal.util.Protocol;
 
 import java.util.List;
-import java.util.concurrent.CountDownLatch;
 
 
 /**
@@ -1143,7 +1140,6 @@
     private final Object mListenerMapLock = new Object();
 
     private AsyncChannel mAsyncChannel;
-    private final CountDownLatch mConnected;
     private final Handler mInternalHandler;
 
     /**
@@ -1157,22 +1153,6 @@
      * @hide
      */
     public WifiScanner(Context context, IWifiScanner service, Looper looper) {
-        this(context, service, looper, true);
-    }
-
-    /**
-     * Create a new WifiScanner instance.
-     *
-     * @param context The application context.
-     * @param service The IWifiScanner Binder interface
-     * @param looper the Looper used to deliver callbacks
-     * @param waitForConnection If true, this will not return until a connection to Wifi Scanner
-     *          service is established.
-     * @hide
-     */
-    @VisibleForTesting
-    public WifiScanner(Context context, IWifiScanner service, Looper looper,
-            boolean waitForConnection) {
         mContext = context;
         mService = service;
 
@@ -1188,17 +1168,12 @@
         }
 
         mAsyncChannel = new AsyncChannel();
-        mConnected = new CountDownLatch(1);
 
         mInternalHandler = new ServiceHandler(looper);
-        mAsyncChannel.connect(mContext, mInternalHandler, messenger);
-        if (waitForConnection) {
-            try {
-                mConnected.await();
-            } catch (InterruptedException e) {
-                Log.e(TAG, "interrupted wait at init");
-            }
-        }
+        mAsyncChannel.connectSync(mContext, mInternalHandler, messenger);
+        // We cannot use fullyConnectSync because it sends the FULL_CONNECTION message
+        // synchronously, which causes WifiScanningService to receive the wrong replyTo value.
+        mAsyncChannel.sendMessage(AsyncChannel.CMD_CHANNEL_FULL_CONNECTION);
     }
 
     private void validateChannel() {
@@ -1326,17 +1301,6 @@
         @Override
         public void handleMessage(Message msg) {
             switch (msg.what) {
-                case AsyncChannel.CMD_CHANNEL_HALF_CONNECTED:
-                    if (msg.arg1 == AsyncChannel.STATUS_SUCCESSFUL) {
-                        mAsyncChannel.sendMessage(AsyncChannel.CMD_CHANNEL_FULL_CONNECTION);
-                    } else {
-                        Log.e(TAG, "Failed to set up channel connection");
-                        // This will cause all further async API calls on the WifiManager
-                        // to fail and throw an exception
-                        mAsyncChannel = null;
-                    }
-                    mConnected.countDown();
-                    return;
                 case AsyncChannel.CMD_CHANNEL_FULLY_CONNECTED:
                     return;
                 case AsyncChannel.CMD_CHANNEL_DISCONNECTED:
